ZGlmZiAtLWdpdCBhL0FCSS1idWdzLnR4dCBiL0FCSS1idWdzLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTFkYTlmMC4uMDAwMDAwMAotLS0gYS9BQkktYnVncy50eHQKKysrIC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi1LTk9XTiBBQkkgQlVHUwotLS0tLS0tLS0tLS0tLS0KLQotICB0aW1lX3QgaXMgMzItYml0LiBodHRwOi8vYi81ODE5NzM3Ci0KLSAgb2ZmX3QgaXMgMzItYml0LiBUaGVyZSBpcyBvZmY2NF90LCBidXQgbm8gX0ZJTEVfT0ZGU0VUX0JJVFMgc3VwcG9ydC4KLQotICBzaWdzZXRfdCBpcyB0b28gc21hbGwgb24gQVJNIGFuZCB4ODYgKGJ1dCBjb3JyZWN0IG9uIE1JUFMpLCBzbyBzdXBwb3J0Ci0gIGZvciByZWFsLXRpbWUgc2lnbmFscyBpcyBicm9rZW4uIGh0dHA6Ly9iLzU4Mjg4OTkKLQotICBhdGV4aXQoMykgaGFuZGxlcnMgcmVnaXN0ZXJlZCBieSBhIHNoYXJlZCBsaWJyYXJ5IGFyZW4ndCBjYWxsZWQgb24KLSAgZGxjbG9zZSgzKTsgdGhpcyBvbmx5IGFmZmVjdHMgQVJNLiBodHRwOi8vYi80OTk4MzE1CmRpZmYgLS1naXQgYS9DUFBMSU5ULmNmZyBiL0NQUExJTlQuY2ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU2MGQ3OTEKLS0tIC9kZXYvbnVsbAorKysgYi9DUFBMSU5ULmNmZwpAQCAtMCwwICsxLDIgQEAKK3NldCBub3BhcmVudAorZmlsdGVyPS1idWlsZC9oZWFkZXJfZ3VhcmQsLXJ1bnRpbWUvaW50LC1yZWFkYWJpbGl0eS9mdW5jdGlvbgpkaWZmIC0tZ2l0IGEvSEFDS0lORy50eHQgYi9IQUNLSU5HLnR4dApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjdlMTM2OC4uMDAwMDAwMAotLS0gYS9IQUNLSU5HLnR4dAorKysgL2Rldi9udWxsCkBAIC0xLDE2MiArMCwwIEBACi1Xb3JraW5nIG9uIGJpb25pYwotPT09PT09PT09PT09PT09PT0KLQotV2hhdCBhcmUgdGhlIGJpZyBwaWVjZXMgb2YgYmlvbmljPwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1saWJjLyAtLS0gbGliYy5zbywgbGliYy5hCi0gIFRoZSBDIGxpYnJhcnkuIFN0dWZmIGxpa2UgZm9wZW4oMykgYW5kIGtpbGwoMikuCi1saWJtLyAtLS0gbGlibS5zbywgbGlibS5hCi0gIFRoZSBtYXRoIGxpYnJhcnkuIFRyYWRpdGlvbmFsbHkgVW5peCBzeXN0ZW1zIGtlcHQgc3R1ZmYgbGlrZSBzaW4oMykgYW5kCi0gIGNvcygzKSBpbiBhIHNlcGFyYXRlIGxpYnJhcnkgdG8gc2F2ZSBzcGFjZSBpbiB0aGUgZGF5cyBiZWZvcmUgc2hhcmVkCi0gIGxpYnJhcmllcy4KLWxpYmRsLyAtLS0gbGliZGwuc28KLSAgVGhlIGR5bmFtaWMgbGlua2VyIGludGVyZmFjZSBsaWJyYXJ5LiBUaGlzIGlzIGFjdHVhbGx5IGp1c3QgYSBidW5jaCBvZgotICBzdHVicyB0aGF0IHRoZSBkeW5hbWljIGxpbmtlciByZXBsYWNlcyB3aXRoIHBvaW50ZXJzIHRvIGl0cyBvd24KLSAgaW1wbGVtZW50YXRpb24gYXQgcnVudGltZS4gVGhpcyBpcyB3aGVyZSBzdHVmZiBsaWtlIGRsb3BlbigzKSBsaXZlcy4KLWxpYnN0ZGMrKy8gLS0tIGxpYnN0ZGMrKy5zbwotICBUaGUgQysrIEFCSSBzdXBwb3J0IGZ1bmN0aW9ucy4gVGhlIEMrKyBjb21waWxlciBkb2Vzbid0IGtub3cgaG93IHRvCi0gIGltcGxlbWVudCB0aHJlYWQtc2FmZSBzdGF0aWMgaW5pdGlhbGl6YXRpb24gYW5kIHRoZSBsaWtlLCBzbyBpdCBqdXN0IGNhbGxzCi0gIGZ1bmN0aW9ucyB0aGF0IGFyZSBzdXBwbGllZCBieSB0aGUgc3lzdGVtLiBTdHVmZiBsaWtlIF9fY3hhX2d1YXJkX2FjcXVpcmUKLSAgYW5kIF9fY3hhX3B1cmVfdmlydHVhbCBsaXZlIGhlcmUuCi0KLWxpbmtlci8gLS0tIC9zeXN0ZW0vYmluL2xpbmtlciBhbmQgL3N5c3RlbS9iaW4vbGlua2VyNjQKLSAgVGhlIGR5bmFtaWMgbGlua2VyLiBXaGVuIHlvdSBydW4gYSBkeW5hbWljYWxseS1saW5rZWQgZXhlY3V0YWJsZSwgaXRzIEVMRgotICBmaWxlIGhhcyBhIERUX0lOVEVSUCBlbnRyeSB0aGF0IHNheXMgInVzZSB0aGUgZm9sbG93aW5nIHByb2dyYW0gdG8gc3RhcnQgbWUiLgotICBPbiBBbmRyb2lkLCB0aGF0J3MgZWl0aGVyIGxpbmtlciBvciBsaW5rZXI2NCAoZGVwZW5kaW5nIG9uIHdoZXRoZXIgaXQncyBhCi0gIDMyLWJpdCBvciA2NC1iaXQgZXhlY3V0YWJsZSkuIEl0J3MgcmVzcG9uc2libGUgZm9yIGxvYWRpbmcgdGhlIEVMRiBleGVjdXRhYmxlCi0gIGludG8gbWVtb3J5IGFuZCByZXNvbHZpbmcgcmVmZXJlbmNlcyB0byBzeW1ib2xzIChzbyB0aGF0IHdoZW4geW91ciBjb2RlIHRyaWVzCi0gIHRvIGp1bXAgdG8gZm9wZW4oMyksIHNheSwgaXQgbGFuZHMgaW4gdGhlIHJpZ2h0IHBsYWNlKS4KLQotdGVzdHMvIC0tLSB1bml0IHRlc3RzCi0gIFRoZSB0ZXN0cy8gZGlyZWN0b3J5IGNvbnRhaW5zIHVuaXQgdGVzdHMuIFJvdWdobHkgYXJyYW5nZWQgYXMgb25lIGZpbGUgcGVyCi0gIHB1YmxpY2x5LWV4cG9ydGVkIGhlYWRlciBmaWxlLgotYmVuY2htYXJrcy8gLS0tIGJlbmNobWFya3MKLSAgVGhlIGJlbmNobWFya3MvIGRpcmVjdG9yeSBjb250YWlucyBiZW5jaG1hcmtzLgotCi0KLVdoYXQncyBpbiBsaWJjLz8KLS0tLS0tLS0tLS0tLS0tLS0KLQotbGliYy8KLSAgYXJjaC1hcm0vCi0gIGFyY2gtYXJtNjQvCi0gIGFyY2gtY29tbW9uLwotICBhcmNoLW1pcHMvCi0gIGFyY2gtbWlwczY0LwotICBhcmNoLXg4Ni8KLSAgYXJjaC14ODZfNjQvCi0gICAgIyBFYWNoIGFyY2hpdGVjdHVyZSBoYXMgaXRzIG93biBzdWJkaXJlY3RvcnkgZm9yIHN0dWZmIHRoYXQgaXNuJ3Qgc2hhcmVkCi0gICAgIyBiZWNhdXNlIGl0J3MgYXJjaGl0ZWN0dXJlLXNwZWNpZmljLiBUaGVyZSB3aWxsIGJlIGEgLm1rIGZpbGUgaW4gaGVyZSB0aGF0Ci0gICAgIyBkcmFncyBpbiBhbGwgdGhlIGFyY2hpdGVjdHVyZS1zcGVjaWZpYyBmaWxlcy4KLSAgICBiaW9uaWMvCi0gICAgICAjIEV2ZXJ5IGFyY2hpdGVjdHVyZSBuZWVkcyBhIGhhbmRmdWwgb2YgbWFjaGluZS1zcGVjaWZpYyBhc3NlbWJsZXIgZmlsZXMuCi0gICAgICAjIFRoZXkgbGl2ZSBoZXJlLgotICAgIGluY2x1ZGUvCi0gICAgICBtYWNoaW5lLwotICAgICAgICAjIFRoZSBtYWpvcml0eSBvZiBoZWFkZXIgZmlsZXMgYXJlIGFjdHVhbGx5IGluIGxpYmMvaW5jbHVkZS8sIGJ1dCBtYW55Ci0gICAgICAgICMgb2YgdGhlbSBwdWxsIGluIGEgPG1hY2hpbmUvc29tZXRoaW5nLmg+IGZvciB0aGluZ3MgbGlrZSBsaW1pdHMsCi0gICAgICAgICMgZW5kaWFubmVzcywgYW5kIGhvdyBmbG9hdGluZyBwb2ludCBudW1iZXJzIGFyZSByZXByZXNlbnRlZC4gVGhvc2UKLSAgICAgICAgIyBoZWFkZXJzIGxpdmUgaGVyZS4KLSAgICBzdHJpbmcvCi0gICAgICAjIE1vc3QgYXJjaGl0ZWN0dXJlcyBoYXZlIGEgaGFuZGZ1bCBvZiBvcHRpb25hbCBhc3NlbWJsZXIgZmlsZXMKLSAgICAgICMgaW1wbGVtZW50aW5nIG9wdGltaXplZCB2ZXJzaW9ucyBvZiB2YXJpb3VzIHJvdXRpbmVzLiBUaGUgPHN0cmluZy5oPgotICAgICAgIyBmdW5jdGlvbnMgYXJlIHBhcnRpY3VsYXIgZmF2b3JpdGVzLgotICAgIHN5c2NhbGxzLwotICAgICAgIyBUaGUgc3lzY2FsbHMgZGlyZWN0b3JpZXMgY29udGFpbiBzY3JpcHQtZ2VuZXJhdGVkIGFzc2VtYmxlciBmaWxlcy4KLSAgICAgICMgU2VlICdBZGRpbmcgc3lzdGVtIGNhbGxzJyBsYXRlci4KLQotICBpbmNsdWRlLwotICAgICMgVGhlIHB1YmxpYyBoZWFkZXIgZmlsZXMgb24gZXZlcnlvbmUncyBpbmNsdWRlIHBhdGguIFRoZXNlIGFyZSBhIG1peHR1cmUgb2YKLSAgICAjIGZpbGVzIHdyaXR0ZW4gYnkgdXMgYW5kIGZpbGVzIHRha2VuIGZyb20gQlNELgotCi0gIGtlcm5lbC8KLSAgICAjIFRoZSBrZXJuZWwgdWFwaSBoZWFkZXIgZmlsZXMuIFRoZXNlIGFyZSBzY3J1YmJlZCBjb3BpZXMgb2YgdGhlIG9yaWdpbmFscwotICAgICMgaW4gZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvLiBUaGVzZSBmaWxlcyBtdXN0IG5vdCBiZSBlZGl0ZWQgZGlyZWN0bHkuIFRoZQotICAgICMgZ2VuZXJhdGVfdWFwaV9oZWFkZXJzLnNoIHNjcmlwdCBzaG91bGQgYmUgdXNlZCB0byBnbyBmcm9tIGEga2VybmVsIHRyZWUgdG8KLSAgICAjIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzLyAtLS0gdGhpcyB0YWtlcyBjYXJlIG9mIHRoZSBhcmNoaXRlY3R1cmUtc3BlY2lmaWMKLSAgICAjIGRldGFpbHMuIFRoZSB1cGRhdGVfYWxsLnB5IHNjcmlwdCBzaG91bGQgYmUgdXNlZCB0byByZWdlbmVyYXRlIGJpb25pYydzCi0gICAgIyBzY3J1YmJlZCBoZWFkZXJzIGZyb20gZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvLgotCi0gIHByaXZhdGUvCi0gICAgIyBUaGVzZSBhcmUgcHJpdmF0ZSBoZWFkZXIgZmlsZXMgbWVhbnQgZm9yIHVzZSB3aXRoaW4gYmlvbmljIGl0c2VsZi4KLQotICBkbnMvCi0gICAgIyBDb250YWlucyB0aGUgRE5TIHJlc29sdmVyIChvcmlnaW5hdGVzIGZyb20gTmV0QlNEIGNvZGUpLgotCi0gIHVwc3RyZWFtLWRsbWFsbG9jLwotICB1cHN0cmVhbS1mcmVlYnNkLwotICB1cHN0cmVhbS1uZXRic2QvCi0gIHVwc3RyZWFtLW9wZW5ic2QvCi0gICAgIyBUaGVzZSBkaXJlY3RvcmllcyBjb250YWluIHVubW9sZXN0ZWQgdXBzdHJlYW0gc291cmNlLiBBbnkgdGltZSB3ZSBjYW4KLSAgICAjIGp1c3QgdXNlIGEgQlNEIGltcGxlbWVudGF0aW9uIG9mIHNvbWV0aGluZyB1bm1vZGlmaWVkLCB3ZSBzaG91bGQuCi0gICAgIyBUaGUgc3RydWN0dXJlIHVuZGVyIHRoZXNlIGRpcmVjdG9yaWVzIG1pbWljcyB0aGUgdXBzdHJlYW0gdHJlZSwKLSAgICAjIGJ1dCB0aGVyZSdzIGFsc28uLi4KLSAgICBhbmRyb2lkLwotICAgICAgaW5jbHVkZS8KLSAgICAgICAgIyBUaGlzIGlzIHdoZXJlIHdlIGtlZXAgdGhlIGhhY2tzIG5lY2Vzc2FyeSB0byBidWlsZCBCU0Qgc291cmNlCi0gICAgICAgICMgaW4gb3VyIHdvcmxkLiBUaGUgKi1jb21wYXQuaCBmaWxlcyBhcmUgYXV0b21hdGljYWxseSBpbmNsdWRlZAotICAgICAgICAjIHVzaW5nIC1pbmNsdWRlLCBidXQgd2UgYWxzbyBwcm92aWRlIGVxdWl2YWxlbnRzIGZvciBtaXNzaW5nCi0gICAgICAgICMgaGVhZGVyL3NvdXJjZSBmaWxlcyBuZWVkZWQgYnkgdGhlIEJTRCBpbXBsZW1lbnRhdGlvbi4KLQotICBiaW9uaWMvCi0gICAgIyBUaGlzIGlzIHRoZSBiaWdnZXN0IG1lc3MuIFRoZSBDKysgZmlsZXMgYXJlIGZpbGVzIHdlIG93biwgdHlwaWNhbGx5Ci0gICAgIyBiZWNhdXNlIHRoZSBMaW51eCBrZXJuZWwgaW50ZXJmYWNlIGlzIHN1ZmZpY2llbnRseSBkaWZmZXJlbnQgdGhhdCB3ZQotICAgICMgY2FuJ3QgdXNlIGFueSBvZiB0aGUgQlNEIGltcGxlbWVudGF0aW9ucy4gVGhlIEMgZmlsZXMgYXJlIHVzdWFsbHkKLSAgICAjIGxlZ2FjeSBtZXNzIHRoYXQgbmVlZHMgdG8gYmUgc29ydGVkIG91dCwgZWl0aGVyIGJ5IHJlcGxhY2luZyBpdCB3aXRoCi0gICAgIyBjdXJyZW50IHVwc3RyZWFtIHNvdXJjZSBpbiBvbmUgb2YgdGhlIHVwc3RyZWFtIGRpcmVjdG9yaWVzIG9yIGJ5Ci0gICAgIyBzd2l0Y2hpbmcgdGhlIGZpbGUgdG8gQysrIGFuZCBjbGVhbmluZyBpdCB1cC4KLQotICBzdGRpby8KLSAgICAjIFRoZXNlIGFyZSBsZWdhY3kgZmlsZXMgb2YgZHViaW91cyBwcm92ZW5hbmNlLiBXZSdyZSB3b3JraW5nIHRvIGNsZWFuCi0gICAgIyB0aGlzIG1lc3MgdXAsIGFuZCB0aGlzIGRpcmVjdG9yeSBzaG91bGQgZGlzYXBwZWFyLgotCi0gIHRvb2xzLwotICAgICMgVmFyaW91cyB0b29scyB1c2VkIHRvIG1haW50YWluIGJpb25pYy4KLQotICB0emNvZGUvCi0gICAgIyBBIG1vZGlmaWVkIHN1cGVyc2V0IG9mIHRoZSBJQU5BIHR6Y29kZS4gTW9zdCBvZiB0aGUgbW9kaWZpY2F0aW9ucyByZWxhdGUKLSAgICAjIHRvIEFuZHJvaWQncyB1c2Ugb2YgYSBzaW5nbGUgZmlsZSAod2l0aCBjb3JyZXNwb25kaW5nIGluZGV4KSB0byBjb250YWluCi0gICAgIyB0aW1lIHpvbmUgZGF0YS4KLSAgem9uZWluZm8vCi0gICAgIyBBbmRyb2lkLWZvcm1hdCB0aW1lIHpvbmUgZGF0YS4KLSAgICAjIFNlZSAnVXBkYXRpbmcgdHpkYXRhJyBsYXRlci4KLQotCi1BZGRpbmcgc3lzdGVtIGNhbGxzCi0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLUFkZGluZyBhIHN5c3RlbSBjYWxsIHVzdWFsbHkgaW52b2x2ZXM6Ci0KLSAgMS4gQWRkIGVudHJpZXMgdG8gU1lTQ0FMTFMuVFhULgotICAgICBTZWUgU1lTQ0FMTFMuVFhUIGl0c2VsZiBmb3IgZG9jdW1lbnRhdGlvbiBvbiB0aGUgZm9ybWF0LgotICAyLiBSdW4gdGhlIGdlbnN5c2NhbGxzLnB5IHNjcmlwdC4KLSAgMy4gQWRkIGNvbnN0YW50cyAoYW5kIHBlcmhhcHMgdHlwZXMpIHRvIHRoZSBhcHByb3ByaWF0ZSBoZWFkZXIgZmlsZS4KLSAgICAgTm90ZSB0aGF0IHlvdSBzaG91bGQgY2hlY2sgdG8gc2VlIHdoZXRoZXIgdGhlIGNvbnN0YW50cyBhcmUgYWxyZWFkeSBpbgotICAgICBrZXJuZWwgdWFwaSBoZWFkZXIgZmlsZXMsIGluIHdoaWNoIGNhc2UgeW91IGp1c3QgbmVlZCB0byBtYWtlIHN1cmUgdGhhdAotICAgICB0aGUgYXBwcm9wcmlhdGUgUE9TSVggaGVhZGVyIGZpbGUgaW4gbGliYy9pbmNsdWRlLyBpbmNsdWRlcyB0aGUKLSAgICAgcmVsZXZhbnQgZmlsZSBvciBmaWxlcy4KLSAgNC4gQWRkIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyB0byB0aGUgYXBwcm9wcmlhdGUgaGVhZGVyIGZpbGUuCi0gIDUuIEFkZCBhdCBsZWFzdCBiYXNpYyB0ZXN0cy4gRXZlbiBhIHRlc3QgdGhhdCBkZWxpYmVyYXRlbHkgc3VwcGxpZXMKLSAgICAgYW4gaW52YWxpZCBhcmd1bWVudCBoZWxwcyBjaGVjayB0aGF0IHdlJ3JlIGdlbmVyYXRpbmcgdGhlIHJpZ2h0IHN5bWJvbAotICAgICBhbmQgaGF2ZSB0aGUgcmlnaHQgZGVjbGFyYXRpb24gaW4gdGhlIGhlYWRlciBmaWxlLiAoQW5kIHN0cmFjZSgxKSBjYW4KLSAgICAgY29uZmlybSB0aGF0IHRoZSBjb3JyZWN0IHN5c3RlbSBjYWxsIGlzIGJlaW5nIG1hZGUuKQotCi0KLVVwZGF0aW5nIGtlcm5lbCBoZWFkZXIgZmlsZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotQXMgbWVudGlvbmVkIGFib3ZlLCB0aGlzIGlzIGN1cnJlbnRseSBhIHR3by1zdGVwIHByb2Nlc3M6Ci0KLSAgMS4gVXNlIGdlbmVyYXRlX3VhcGlfaGVhZGVycy5zaCB0byBnbyBmcm9tIGEgTGludXggc291cmNlIHRyZWUgdG8gYXBwcm9wcmlhdGUKLSAgICAgY29udGVudHMgZm9yIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzLy4KLSAgMi4gUnVuIHVwZGF0ZV9hbGwucHkgdG8gc2NydWIgdGhvc2UgaGVhZGVycyBhbmQgaW1wb3J0IHRoZW0gaW50byBiaW9uaWMuCi0KLQotVXBkYXRpbmcgdHpkYXRhCi0tLS0tLS0tLS0tLS0tLS0KLQotVGhpcyBpcyBmdWxseSBhdXRvbWF0ZWQ6Ci0KLSAgMS4gUnVuIHVwZGF0ZS10emRhdGEucHkuCi0KZGlmZiAtLWdpdCBhL1JFQURNRS5tZCBiL1JFQURNRS5tZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OWJiNzJhCi0tLSAvZGV2L251bGwKKysrIGIvUkVBRE1FLm1kCkBAIC0wLDAgKzEsMjczIEBACitXb3JraW5nIG9uIGJpb25pYworPT09PT09PT09PT09PT09PT0KKworV2hhdCBhcmUgdGhlIGJpZyBwaWVjZXMgb2YgYmlvbmljPworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisjIyMjIGxpYmMvIC0tLSBsaWJjLnNvLCBsaWJjLmEKKworVGhlIEMgbGlicmFyeS4gU3R1ZmYgbGlrZSBgZm9wZW4oMylgIGFuZCBga2lsbCgyKWAuCisKKyMjIyMgbGlibS8gLS0tIGxpYm0uc28sIGxpYm0uYQorCitUaGUgbWF0aCBsaWJyYXJ5LiBUcmFkaXRpb25hbGx5IFVuaXggc3lzdGVtcyBrZXB0IHN0dWZmIGxpa2UgYHNpbigzKWAgYW5kCitgY29zKDMpYCBpbiBhIHNlcGFyYXRlIGxpYnJhcnkgdG8gc2F2ZSBzcGFjZSBpbiB0aGUgZGF5cyBiZWZvcmUgc2hhcmVkCitsaWJyYXJpZXMuCisKKyMjIyMgbGliZGwvIC0tLSBsaWJkbC5zbworCitUaGUgZHluYW1pYyBsaW5rZXIgaW50ZXJmYWNlIGxpYnJhcnkuIFRoaXMgaXMgYWN0dWFsbHkganVzdCBhIGJ1bmNoIG9mIHN0dWJzCit0aGF0IHRoZSBkeW5hbWljIGxpbmtlciByZXBsYWNlcyB3aXRoIHBvaW50ZXJzIHRvIGl0cyBvd24gaW1wbGVtZW50YXRpb24gYXQKK3J1bnRpbWUuIFRoaXMgaXMgd2hlcmUgc3R1ZmYgbGlrZSBgZGxvcGVuKDMpYCBsaXZlcy4KKworIyMjIyBsaWJzdGRjKysvIC0tLSBsaWJzdGRjKysuc28KKworVGhlIEMrKyBBQkkgc3VwcG9ydCBmdW5jdGlvbnMuIFRoZSBDKysgY29tcGlsZXIgZG9lc24ndCBrbm93IGhvdyB0byBpbXBsZW1lbnQKK3RocmVhZC1zYWZlIHN0YXRpYyBpbml0aWFsaXphdGlvbiBhbmQgdGhlIGxpa2UsIHNvIGl0IGp1c3QgY2FsbHMgZnVuY3Rpb25zIHRoYXQKK2FyZSBzdXBwbGllZCBieSB0aGUgc3lzdGVtLiBTdHVmZiBsaWtlIGBfX2N4YV9ndWFyZF9hY3F1aXJlYCBhbmQKK2BfX2N4YV9wdXJlX3ZpcnR1YWxgIGxpdmUgaGVyZS4KKworIyMjIyBsaW5rZXIvIC0tLSAvc3lzdGVtL2Jpbi9saW5rZXIgYW5kIC9zeXN0ZW0vYmluL2xpbmtlcjY0CisKK1RoZSBkeW5hbWljIGxpbmtlci4gV2hlbiB5b3UgcnVuIGEgZHluYW1pY2FsbHktbGlua2VkIGV4ZWN1dGFibGUsIGl0cyBFTEYgZmlsZQoraGFzIGEgYERUX0lOVEVSUGAgZW50cnkgdGhhdCBzYXlzICJ1c2UgdGhlIGZvbGxvd2luZyBwcm9ncmFtIHRvIHN0YXJ0IG1lIi4gIE9uCitBbmRyb2lkLCB0aGF0J3MgZWl0aGVyIGBsaW5rZXJgIG9yIGBsaW5rZXI2NGAgKGRlcGVuZGluZyBvbiB3aGV0aGVyIGl0J3MgYQorMzItYml0IG9yIDY0LWJpdCBleGVjdXRhYmxlKS4gSXQncyByZXNwb25zaWJsZSBmb3IgbG9hZGluZyB0aGUgRUxGIGV4ZWN1dGFibGUKK2ludG8gbWVtb3J5IGFuZCByZXNvbHZpbmcgcmVmZXJlbmNlcyB0byBzeW1ib2xzIChzbyB0aGF0IHdoZW4geW91ciBjb2RlIHRyaWVzIHRvCitqdW1wIHRvIGBmb3BlbigzKWAsIHNheSwgaXQgbGFuZHMgaW4gdGhlIHJpZ2h0IHBsYWNlKS4KKworIyMjIyB0ZXN0cy8gLS0tIHVuaXQgdGVzdHMKKworVGhlIGB0ZXN0cy9gIGRpcmVjdG9yeSBjb250YWlucyB1bml0IHRlc3RzLiBSb3VnaGx5IGFycmFuZ2VkIGFzIG9uZSBmaWxlIHBlcgorcHVibGljbHktZXhwb3J0ZWQgaGVhZGVyIGZpbGUuCisKKyMjIyMgYmVuY2htYXJrcy8gLS0tIGJlbmNobWFya3MKKworVGhlIGBiZW5jaG1hcmtzL2AgZGlyZWN0b3J5IGNvbnRhaW5zIGJlbmNobWFya3MuCisKKworV2hhdCdzIGluIGxpYmMvPworLS0tLS0tLS0tLS0tLS0tLQorCis8cHJlPgorbGliYy8KKyAgYXJjaC1hcm0vCisgIGFyY2gtYXJtNjQvCisgIGFyY2gtY29tbW9uLworICBhcmNoLW1pcHMvCisgIGFyY2gtbWlwczY0LworICBhcmNoLXg4Ni8KKyAgYXJjaC14ODZfNjQvCisgICAgIyBFYWNoIGFyY2hpdGVjdHVyZSBoYXMgaXRzIG93biBzdWJkaXJlY3RvcnkgZm9yIHN0dWZmIHRoYXQgaXNuJ3Qgc2hhcmVkCisgICAgIyBiZWNhdXNlIGl0J3MgYXJjaGl0ZWN0dXJlLXNwZWNpZmljLiBUaGVyZSB3aWxsIGJlIGEgLm1rIGZpbGUgaW4gaGVyZSB0aGF0CisgICAgIyBkcmFncyBpbiBhbGwgdGhlIGFyY2hpdGVjdHVyZS1zcGVjaWZpYyBmaWxlcy4KKyAgICBiaW9uaWMvCisgICAgICAjIEV2ZXJ5IGFyY2hpdGVjdHVyZSBuZWVkcyBhIGhhbmRmdWwgb2YgbWFjaGluZS1zcGVjaWZpYyBhc3NlbWJsZXIgZmlsZXMuCisgICAgICAjIFRoZXkgbGl2ZSBoZXJlLgorICAgIGluY2x1ZGUvCisgICAgICBtYWNoaW5lLworICAgICAgICAjIFRoZSBtYWpvcml0eSBvZiBoZWFkZXIgZmlsZXMgYXJlIGFjdHVhbGx5IGluIGxpYmMvaW5jbHVkZS8sIGJ1dCBtYW55CisgICAgICAgICMgb2YgdGhlbSBwdWxsIGluIGEgPG1hY2hpbmUvc29tZXRoaW5nLmg+IGZvciB0aGluZ3MgbGlrZSBsaW1pdHMsCisgICAgICAgICMgZW5kaWFubmVzcywgYW5kIGhvdyBmbG9hdGluZyBwb2ludCBudW1iZXJzIGFyZSByZXByZXNlbnRlZC4gVGhvc2UKKyAgICAgICAgIyBoZWFkZXJzIGxpdmUgaGVyZS4KKyAgICBzdHJpbmcvCisgICAgICAjIE1vc3QgYXJjaGl0ZWN0dXJlcyBoYXZlIGEgaGFuZGZ1bCBvZiBvcHRpb25hbCBhc3NlbWJsZXIgZmlsZXMKKyAgICAgICMgaW1wbGVtZW50aW5nIG9wdGltaXplZCB2ZXJzaW9ucyBvZiB2YXJpb3VzIHJvdXRpbmVzLiBUaGUgPHN0cmluZy5oPgorICAgICAgIyBmdW5jdGlvbnMgYXJlIHBhcnRpY3VsYXIgZmF2b3JpdGVzLgorICAgIHN5c2NhbGxzLworICAgICAgIyBUaGUgc3lzY2FsbHMgZGlyZWN0b3JpZXMgY29udGFpbiBzY3JpcHQtZ2VuZXJhdGVkIGFzc2VtYmxlciBmaWxlcy4KKyAgICAgICMgU2VlICdBZGRpbmcgc3lzdGVtIGNhbGxzJyBsYXRlci4KKworICBpbmNsdWRlLworICAgICMgVGhlIHB1YmxpYyBoZWFkZXIgZmlsZXMgb24gZXZlcnlvbmUncyBpbmNsdWRlIHBhdGguIFRoZXNlIGFyZSBhIG1peHR1cmUgb2YKKyAgICAjIGZpbGVzIHdyaXR0ZW4gYnkgdXMgYW5kIGZpbGVzIHRha2VuIGZyb20gQlNELgorCisgIGtlcm5lbC8KKyAgICAjIFRoZSBrZXJuZWwgdWFwaSBoZWFkZXIgZmlsZXMuIFRoZXNlIGFyZSBzY3J1YmJlZCBjb3BpZXMgb2YgdGhlIG9yaWdpbmFscworICAgICMgaW4gZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvLiBUaGVzZSBmaWxlcyBtdXN0IG5vdCBiZSBlZGl0ZWQgZGlyZWN0bHkuIFRoZQorICAgICMgZ2VuZXJhdGVfdWFwaV9oZWFkZXJzLnNoIHNjcmlwdCBzaG91bGQgYmUgdXNlZCB0byBnbyBmcm9tIGEga2VybmVsIHRyZWUgdG8KKyAgICAjIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzLyAtLS0gdGhpcyB0YWtlcyBjYXJlIG9mIHRoZSBhcmNoaXRlY3R1cmUtc3BlY2lmaWMKKyAgICAjIGRldGFpbHMuIFRoZSB1cGRhdGVfYWxsLnB5IHNjcmlwdCBzaG91bGQgYmUgdXNlZCB0byByZWdlbmVyYXRlIGJpb25pYydzCisgICAgIyBzY3J1YmJlZCBoZWFkZXJzIGZyb20gZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvLgorCisgIHByaXZhdGUvCisgICAgIyBUaGVzZSBhcmUgcHJpdmF0ZSBoZWFkZXIgZmlsZXMgbWVhbnQgZm9yIHVzZSB3aXRoaW4gYmlvbmljIGl0c2VsZi4KKworICBkbnMvCisgICAgIyBDb250YWlucyB0aGUgRE5TIHJlc29sdmVyIChvcmlnaW5hdGVzIGZyb20gTmV0QlNEIGNvZGUpLgorCisgIHVwc3RyZWFtLWRsbWFsbG9jLworICB1cHN0cmVhbS1mcmVlYnNkLworICB1cHN0cmVhbS1uZXRic2QvCisgIHVwc3RyZWFtLW9wZW5ic2QvCisgICAgIyBUaGVzZSBkaXJlY3RvcmllcyBjb250YWluIHVubW9sZXN0ZWQgdXBzdHJlYW0gc291cmNlLiBBbnkgdGltZSB3ZSBjYW4KKyAgICAjIGp1c3QgdXNlIGEgQlNEIGltcGxlbWVudGF0aW9uIG9mIHNvbWV0aGluZyB1bm1vZGlmaWVkLCB3ZSBzaG91bGQuCisgICAgIyBUaGUgc3RydWN0dXJlIHVuZGVyIHRoZXNlIGRpcmVjdG9yaWVzIG1pbWljcyB0aGUgdXBzdHJlYW0gdHJlZSwKKyAgICAjIGJ1dCB0aGVyZSdzIGFsc28uLi4KKyAgICBhbmRyb2lkLworICAgICAgaW5jbHVkZS8KKyAgICAgICAgIyBUaGlzIGlzIHdoZXJlIHdlIGtlZXAgdGhlIGhhY2tzIG5lY2Vzc2FyeSB0byBidWlsZCBCU0Qgc291cmNlCisgICAgICAgICMgaW4gb3VyIHdvcmxkLiBUaGUgKi1jb21wYXQuaCBmaWxlcyBhcmUgYXV0b21hdGljYWxseSBpbmNsdWRlZAorICAgICAgICAjIHVzaW5nIC1pbmNsdWRlLCBidXQgd2UgYWxzbyBwcm92aWRlIGVxdWl2YWxlbnRzIGZvciBtaXNzaW5nCisgICAgICAgICMgaGVhZGVyL3NvdXJjZSBmaWxlcyBuZWVkZWQgYnkgdGhlIEJTRCBpbXBsZW1lbnRhdGlvbi4KKworICBiaW9uaWMvCisgICAgIyBUaGlzIGlzIHRoZSBiaWdnZXN0IG1lc3MuIFRoZSBDKysgZmlsZXMgYXJlIGZpbGVzIHdlIG93biwgdHlwaWNhbGx5CisgICAgIyBiZWNhdXNlIHRoZSBMaW51eCBrZXJuZWwgaW50ZXJmYWNlIGlzIHN1ZmZpY2llbnRseSBkaWZmZXJlbnQgdGhhdCB3ZQorICAgICMgY2FuJ3QgdXNlIGFueSBvZiB0aGUgQlNEIGltcGxlbWVudGF0aW9ucy4gVGhlIEMgZmlsZXMgYXJlIHVzdWFsbHkKKyAgICAjIGxlZ2FjeSBtZXNzIHRoYXQgbmVlZHMgdG8gYmUgc29ydGVkIG91dCwgZWl0aGVyIGJ5IHJlcGxhY2luZyBpdCB3aXRoCisgICAgIyBjdXJyZW50IHVwc3RyZWFtIHNvdXJjZSBpbiBvbmUgb2YgdGhlIHVwc3RyZWFtIGRpcmVjdG9yaWVzIG9yIGJ5CisgICAgIyBzd2l0Y2hpbmcgdGhlIGZpbGUgdG8gQysrIGFuZCBjbGVhbmluZyBpdCB1cC4KKworICBzdGRpby8KKyAgICAjIFRoZXNlIGFyZSBsZWdhY3kgZmlsZXMgb2YgZHViaW91cyBwcm92ZW5hbmNlLiBXZSdyZSB3b3JraW5nIHRvIGNsZWFuCisgICAgIyB0aGlzIG1lc3MgdXAsIGFuZCB0aGlzIGRpcmVjdG9yeSBzaG91bGQgZGlzYXBwZWFyLgorCisgIHRvb2xzLworICAgICMgVmFyaW91cyB0b29scyB1c2VkIHRvIG1haW50YWluIGJpb25pYy4KKworICB0emNvZGUvCisgICAgIyBBIG1vZGlmaWVkIHN1cGVyc2V0IG9mIHRoZSBJQU5BIHR6Y29kZS4gTW9zdCBvZiB0aGUgbW9kaWZpY2F0aW9ucyByZWxhdGUKKyAgICAjIHRvIEFuZHJvaWQncyB1c2Ugb2YgYSBzaW5nbGUgZmlsZSAod2l0aCBjb3JyZXNwb25kaW5nIGluZGV4KSB0byBjb250YWluCisgICAgIyB0aW1lIHpvbmUgZGF0YS4KKyAgem9uZWluZm8vCisgICAgIyBBbmRyb2lkLWZvcm1hdCB0aW1lIHpvbmUgZGF0YS4KKyAgICAjIFNlZSAnVXBkYXRpbmcgdHpkYXRhJyBsYXRlci4KKzwvcHJlPgorCisKK0FkZGluZyBzeXN0ZW0gY2FsbHMKKy0tLS0tLS0tLS0tLS0tLS0tLS0KKworQWRkaW5nIGEgc3lzdGVtIGNhbGwgdXN1YWxseSBpbnZvbHZlczoKKworICAxLiBBZGQgZW50cmllcyB0byBTWVNDQUxMUy5UWFQuCisgICAgIFNlZSBTWVNDQUxMUy5UWFQgaXRzZWxmIGZvciBkb2N1bWVudGF0aW9uIG9uIHRoZSBmb3JtYXQuCisgIDIuIFJ1biB0aGUgZ2Vuc3lzY2FsbHMucHkgc2NyaXB0LgorICAzLiBBZGQgY29uc3RhbnRzIChhbmQgcGVyaGFwcyB0eXBlcykgdG8gdGhlIGFwcHJvcHJpYXRlIGhlYWRlciBmaWxlLgorICAgICBOb3RlIHRoYXQgeW91IHNob3VsZCBjaGVjayB0byBzZWUgd2hldGhlciB0aGUgY29uc3RhbnRzIGFyZSBhbHJlYWR5IGluCisgICAgIGtlcm5lbCB1YXBpIGhlYWRlciBmaWxlcywgaW4gd2hpY2ggY2FzZSB5b3UganVzdCBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0CisgICAgIHRoZSBhcHByb3ByaWF0ZSBQT1NJWCBoZWFkZXIgZmlsZSBpbiBsaWJjL2luY2x1ZGUvIGluY2x1ZGVzIHRoZQorICAgICByZWxldmFudCBmaWxlIG9yIGZpbGVzLgorICA0LiBBZGQgZnVuY3Rpb24gZGVjbGFyYXRpb25zIHRvIHRoZSBhcHByb3ByaWF0ZSBoZWFkZXIgZmlsZS4KKyAgNS4gQWRkIGF0IGxlYXN0IGJhc2ljIHRlc3RzLiBFdmVuIGEgdGVzdCB0aGF0IGRlbGliZXJhdGVseSBzdXBwbGllcworICAgICBhbiBpbnZhbGlkIGFyZ3VtZW50IGhlbHBzIGNoZWNrIHRoYXQgd2UncmUgZ2VuZXJhdGluZyB0aGUgcmlnaHQgc3ltYm9sCisgICAgIGFuZCBoYXZlIHRoZSByaWdodCBkZWNsYXJhdGlvbiBpbiB0aGUgaGVhZGVyIGZpbGUuIChBbmQgc3RyYWNlKDEpIGNhbgorICAgICBjb25maXJtIHRoYXQgdGhlIGNvcnJlY3Qgc3lzdGVtIGNhbGwgaXMgYmVpbmcgbWFkZS4pCisKKworVXBkYXRpbmcga2VybmVsIGhlYWRlciBmaWxlcworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitBcyBtZW50aW9uZWQgYWJvdmUsIHRoaXMgaXMgY3VycmVudGx5IGEgdHdvLXN0ZXAgcHJvY2VzczoKKworICAxLiBVc2UgZ2VuZXJhdGVfdWFwaV9oZWFkZXJzLnNoIHRvIGdvIGZyb20gYSBMaW51eCBzb3VyY2UgdHJlZSB0byBhcHByb3ByaWF0ZQorICAgICBjb250ZW50cyBmb3IgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvLgorICAyLiBSdW4gdXBkYXRlX2FsbC5weSB0byBzY3J1YiB0aG9zZSBoZWFkZXJzIGFuZCBpbXBvcnQgdGhlbSBpbnRvIGJpb25pYy4KKworCitVcGRhdGluZyB0emRhdGEKKy0tLS0tLS0tLS0tLS0tLQorCitUaGlzIGlzIGZ1bGx5IGF1dG9tYXRlZDoKKworICAxLiBSdW4gdXBkYXRlLXR6ZGF0YS5weS4KKworCitWZXJpZnlpbmcgY2hhbmdlcworLS0tLS0tLS0tLS0tLS0tLS0KKworSWYgeW91IG1ha2UgYSBjaGFuZ2UgdGhhdCBpcyBsaWtlbHkgdG8gaGF2ZSBhIHdpZGUgZWZmZWN0IG9uIHRoZSB0cmVlIChzdWNoIGFzIGEKK2xpYmMgaGVhZGVyIGNoYW5nZSksIHlvdSBzaG91bGQgcnVuIGBtYWtlIGNoZWNrYnVpbGRgLiBBIHJlZ3VsYXIgYG1ha2VgIHdpbGwKK19ub3RfIGJ1aWxkIHRoZSBlbnRpcmUgdHJlZTsganVzdCB0aGUgbWluaW11bSBudW1iZXIgb2YgcHJvamVjdHMgdGhhdCBhcmUKK3JlcXVpcmVkIGZvciB0aGUgZGV2aWNlLiBUZXN0cywgYWRkaXRpb25hbCBkZXZlbG9wZXIgdG9vbHMsIGFuZCB2YXJpb3VzIG90aGVyCittb2R1bGVzIHdpbGwgbm90IGJlIGJ1aWx0LiBOb3RlIHRoYXQgYG1ha2UgY2hlY2tidWlsZGAgd2lsbCBub3QgYmUgY29tcGxldGUKK2VpdGhlciwgYXMgYG1ha2UgdGVzdHNgIGNvdmVycyBhIGZldyBhZGRpdGlvbmFsIG1vZHVsZXMsIGJ1dCBnZW5lcmFsbHkgc3BlYWtpbmcKK2BtYWtlIGNoZWNrYnVpbGRgIGlzIGVub3VnaC4KKworCitSdW5uaW5nIHRoZSB0ZXN0cworLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIHRlc3RzIGFyZSBhbGwgYnVpbHQgZnJvbSB0aGUgdGVzdHMvIGRpcmVjdG9yeS4KKworIyMjIERldmljZSB0ZXN0cworCisgICAgJCBtbWEKKyAgICAkIGFkYiBzeW5jCisgICAgJCBhZGIgc2hlbGwgL2RhdGEvbmF0aXZldGVzdC9iaW9uaWMtdW5pdC10ZXN0cy9iaW9uaWMtdW5pdC10ZXN0czMyCisgICAgJCBhZGIgc2hlbGwgXAorICAgICAgICAvZGF0YS9uYXRpdmV0ZXN0L2Jpb25pYy11bml0LXRlc3RzLXN0YXRpYy9iaW9uaWMtdW5pdC10ZXN0cy1zdGF0aWMzMgorICAgICMgT25seSBmb3IgNjQtYml0IHRhcmdldHMKKyAgICAkIGFkYiBzaGVsbCAvZGF0YS9uYXRpdmV0ZXN0L2Jpb25pYy11bml0LXRlc3RzL2Jpb25pYy11bml0LXRlc3RzNjQKKyAgICAkIGFkYiBzaGVsbCBcCisgICAgICAgIC9kYXRhL25hdGl2ZXRlc3QvYmlvbmljLXVuaXQtdGVzdHMtc3RhdGljL2Jpb25pYy11bml0LXRlc3RzLXN0YXRpYzY0CisKKyMjIyBIb3N0IHRlc3RzCisKK1RoZSBob3N0IHRlc3RzIHJlcXVpcmUgdGhhdCB5b3UgaGF2ZSBgbHVuY2hgZWQgZWl0aGVyIGFuIHg4NiBvciB4ODZfNjQgdGFyZ2V0LgorCisgICAgJCBtbWEKKyAgICAkIG1tIGJpb25pYy11bml0LXRlc3RzLXJ1bi1vbi1ob3N0MzIKKyAgICAkIG1tIGJpb25pYy11bml0LXRlc3RzLXJ1bi1vbi1ob3N0NjQgICMgRm9yIDY0LWJpdCAqdGFyZ2V0cyogb25seS4KKworIyMjIEFnYWluc3QgZ2xpYmMKKworQXMgYSB3YXkgdG8gY2hlY2sgdGhhdCBvdXIgdGVzdHMgZG8gaW4gZmFjdCB0ZXN0IHRoZSBjb3JyZWN0IGJlaGF2aW9yIChhbmQgbm90CitqdXN0IHRoZSBiZWhhdmlvciB3ZSB0aGluayBpcyBjb3JyZWN0KSwgaXQgaXMgcG9zc2libGUgdG8gcnVuIHRoZSB0ZXN0cyBhZ2FpbnN0Cit0aGUgaG9zdCdzIGdsaWJjLiBUaGUgZXhlY3V0YWJsZXMgYXJlIGFscmVhZHkgaW4geW91ciBwYXRoLgorCisgICAgJCBtbWEKKyAgICAkIGJpb25pYy11bml0LXRlc3RzLWdsaWJjMzIKKyAgICAkIGJpb25pYy11bml0LXRlc3RzLWdsaWJjNjQKKworCitHYXRoZXJpbmcgdGVzdCBjb3ZlcmFnZQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworRm9yIGVpdGhlciBob3N0IG9yIHRhcmdldCBjb3ZlcmFnZSwgeW91IG11c3QgZmlyc3Q6CisKKyAqIGAkIGV4cG9ydCBOQVRJVkVfQ09WRVJBR0U9dHJ1ZWAKKyAgICAgKiBOb3RlIHRoYXQgdGhlIGJ1aWxkIHN5c3RlbSBpcyBpZ25vcmFudCB0byB0aGlzIGZsYWcgYmVpbmcgdG9nZ2xlZCwgaS5lLiBpZgorICAgICAgIHlvdSBjaGFuZ2UgdGhpcyBmbGFnLCB5b3Ugd2lsbCBoYXZlIHRvIG1hbnVhbGx5IHJlYnVpbGQgYmlvbmljLgorICogU2V0IGBiaW9uaWNfY292ZXJhZ2U9dHJ1ZWAgaW4gYGxpYmMvQW5kcm9pZC5ta2AgYW5kIGBsaWJtL0FuZHJvaWQubWtgLgorCisjIyMgQ292ZXJhZ2UgZnJvbSBkZXZpY2UgdGVzdHMKKworICAgICQgbW1hCisgICAgJCBhZGIgc3luYworICAgICQgYWRiIHNoZWxsIFwKKyAgICAgICAgR0NPVl9QUkVGSVg9L2RhdGEvbG9jYWwvdG1wL2djb3YgXAorICAgICAgICBHQ09WX1BSRUZJWF9TVFJJUD1gZWNobyAkQU5EUk9JRF9CVUlMRF9UT1AgfCBncmVwIC1vIC8gfCB3YyAtbGAgXAorICAgICAgICAvZGF0YS9uYXRpdmV0ZXN0L2Jpb25pYy11bml0LXRlc3RzL2Jpb25pYy11bml0LXRlc3RzMzIKKyAgICAkIGFjb3YKKworYGFjb3ZgIHdpbGwgcHVsbCBhbGwgY292ZXJhZ2UgaW5mb3JtYXRpb24gZnJvbSB0aGUgZGV2aWNlLCBwdXNoIGl0IHRvIHRoZSByaWdodAorZGlyZWN0b3JpZXMsIHJ1biBgbGNvdmAsIGFuZCBvcGVuIHRoZSBjb3ZlcmFnZSByZXBvcnQgaW4geW91ciBicm93c2VyLgorCisjIyMgQ292ZXJhZ2UgZnJvbSBob3N0IHRlc3RzCisKK0ZpcnN0LCBidWlsZCBhbmQgcnVuIHRoZSBob3N0IHRlc3RzIGFzIHVzdWFsIChzZWUgYWJvdmUpLgorCisgICAgJCBjcm9vdAorICAgICQgbGNvdiAtYyAtZCAkQU5EUk9JRF9QUk9EVUNUX09VVCAtbyBjb3ZlcmFnZS5pbmZvCisgICAgJCBnZW5odG1sIC1vIGNvdnJlcG9ydCBjb3ZlcmFnZS5pbmZvICMgb3IgbGNvdiAtLWxpc3QgY292ZXJhZ2UuaW5mbworCitUaGUgY292ZXJhZ2UgcmVwb3J0IGlzIG5vdyBhdmFpbGFibGUgYXQgYGNvdnJlcG9ydC9pbmRleC5odG1sYC4KKworCitMUDMyIEFCSSBidWdzCistLS0tLS0tLS0tLS0tCisKK1RoaXMgcHJvYmFibHkgYmVsb25ncyBpbiB0aGUgTkRLIGRvY3VtZW50YXRpb24gcmF0aGVyIHRoYW4gaGVyZSwgYnV0IHRoZXNlCithcmUgdGhlIGtub3duIEFCSSBidWdzIGluIExQMzI6CisKKyAqIGB0aW1lX3RgIGlzIDMyLWJpdC4gPGh0dHA6Ly9iLzU4MTk3Mzc+CisKKyAqIGBvZmZfdGAgaXMgMzItYml0LiBUaGVyZSBpcyBgb2ZmNjRfdGAsIGJ1dCBubyBgX0ZJTEVfT0ZGU0VUX0JJVFNgIHN1cHBvcnQuCisgICBNYW55IG9mIHRoZSBgb2ZmNjRfdGAgZnVuY3Rpb25zIGFyZSBtaXNzaW5nIGluIG9sZGVyIHJlbGVhc2VzLCBhbmQKKyAgIHN0ZGlvIHVzZXMgMzItYml0IG9mZnNldHMsIHNvIHRoZXJlJ3Mgbm8gd2F5IHRvIGZ1bGx5IGltcGxlbWVudAorICAgYF9GSUxFX09GRlNFVF9CSVRTYC4KKworICogYHNpZ3NldF90YCBpcyB0b28gc21hbGwgb24gQVJNIGFuZCB4ODYgKGJ1dCBjb3JyZWN0IG9uIE1JUFMpLCBzbyBzdXBwb3J0CisgICBmb3IgcmVhbC10aW1lIHNpZ25hbHMgaXMgYnJva2VuLiA8aHR0cDovL2IvNTgyODg5OT4KZGlmZiAtLWdpdCBhL2JlbmNobWFya3MvQW5kcm9pZC5tayBiL2JlbmNobWFya3MvQW5kcm9pZC5tawppbmRleCA0ZDdhZDk2Li5lMTU4MGZlIDEwMDY0NAotLS0gYS9iZW5jaG1hcmtzL0FuZHJvaWQubWsKKysrIGIvYmVuY2htYXJrcy9BbmRyb2lkLm1rCkBAIC0xNCwyMyArMTQsNTYgQEAKICMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCiAjCiAKLWlmbmVxICgkKEJVSUxEX1RJTllfQU5EUk9JRCksIHRydWUpCi0KIExPQ0FMX1BBVEggOj0gJChjYWxsIG15LWRpcikKIAogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBCZW5jaG1hcmtzIGxpYnJhcnksIHVzYWJsZSBieSBwcm9qZWN0cyBvdXRzaWRlIHRoaXMgZGlyZWN0b3J5LgorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitiZW5jaG1hcmtfY2ZsYWdzIDo9IFwKKyAgICAtTzIgXAorICAgIC1mbm8tYnVpbHRpbiBcCisgICAgLVdhbGwgXAorICAgIC1XZXh0cmEgXAorICAgIC1XZXJyb3IgXAorICAgIC1XdW51c2VkIFwKKworYmVuY2htYXJrX2NwcGZsYWdzIDo9IFwKKyAgICAtc3RkPWdudSsrMTEgXAorCitiZW5jaG1hcmtsaWJfc3JjX2ZpbGVzIDo9IFwKKyAgICBCZW5jaG1hcmsuY3BwIFwKKyAgICB1dGlscy5jcHAgXAorICAgIG1haW4uY3BwIFwKKworaW5jbHVkZSAkKENMRUFSX1ZBUlMpCitMT0NBTF9NT0RVTEUgOj0gbGliYmVuY2htYXJrCitMT0NBTF9DRkxBR1MgOj0gJChiZW5jaG1hcmtfY2ZsYWdzKQorTE9DQUxfQ1BQRkxBR1MgOj0gJChiZW5jaG1hcmtfY3BwZmxhZ3MpCitMT0NBTF9TUkNfRklMRVMgOj0gJChiZW5jaG1hcmtsaWJfc3JjX2ZpbGVzKQorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGJlbmNobWFya19jX2luY2x1ZGVzKQorTE9DQUxfU1RBVElDX0xJQlJBUklFUyA6PSBsaWJiYXNlCitpbmNsdWRlICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCisKKyMgT25seSBzdXBwb3J0ZWQgb24gbGludXggc3lzdGVtcy4KK2lmZXEgKCQoSE9TVF9PUyksbGludXgpCisKK2luY2x1ZGUgJChDTEVBUl9WQVJTKQorTE9DQUxfTU9EVUxFIDo9IGxpYmJlbmNobWFyaworTE9DQUxfQ0ZMQUdTIDo9ICQoYmVuY2htYXJrX2NmbGFncykKK0xPQ0FMX0NQUEZMQUdTIDo9ICQoYmVuY2htYXJrX2NwcGZsYWdzKQorTE9DQUxfU1JDX0ZJTEVTIDo9ICQoYmVuY2htYXJrbGliX3NyY19maWxlcykKK0xPQ0FMX0NfSU5DTFVERVMgOj0gJChiZW5jaG1hcmtfY19pbmNsdWRlcykKK0xPQ0FMX01VTFRJTElCIDo9IGJvdGgKK0xPQ0FMX1NUQVRJQ19MSUJSQVJJRVMgOj0gbGliYmFzZQoraW5jbHVkZSAkKEJVSUxEX0hPU1RfU1RBVElDX0xJQlJBUlkpCisKK2VuZGlmCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICMgQmVuY2htYXJrcy4KICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotYmVuY2htYXJrX2NfZmxhZ3MgPSBcCi0gICAgLU8yIFwKLSAgICAtV2FsbCAtV2V4dHJhIC1XdW51c2VkIFwKLSAgICAtV2Vycm9yIFwKLSAgICAtZm5vLWJ1aWx0aW4gXAotICAgIC1zdGQ9Z251KysxMSBcCi0KLWJlbmNobWFya19zcmNfZmlsZXMgPSBcCi0gICAgYmVuY2htYXJrX21haW4uY3BwIFwKK2JlbmNobWFya19zcmNfZmlsZXMgOj0gXAogICAgIG1hdGhfYmVuY2htYXJrLmNwcCBcCiAgICAgcHJvcGVydHlfYmVuY2htYXJrLmNwcCBcCiAgICAgcHRocmVhZF9iZW5jaG1hcmsuY3BwIFwKQEAgLTQxLDQwICs3NCw1OCBAQAogICAgIHVuaXN0ZF9iZW5jaG1hcmsuY3BwIFwKIAogIyBCdWlsZCBiZW5jaG1hcmtzIGZvciB0aGUgZGV2aWNlICh3aXRoIGJpb25pYydzIC5zbykuIFJ1biB3aXRoOgotIyAgIGFkYiBzaGVsbCBiaW9uaWMtYmVuY2htYXJrcworIyAgIGFkYiBzaGVsbCBiaW9uaWMtYmVuY2htYXJrczMyCisjICAgYWRiIHNoZWxsIGJpb25pYy1iZW5jaG1hcmtzNjQKIGluY2x1ZGUgJChDTEVBUl9WQVJTKQogTE9DQUxfTU9EVUxFIDo9IGJpb25pYy1iZW5jaG1hcmtzCiBMT0NBTF9NT0RVTEVfU1RFTV8zMiA6PSBiaW9uaWMtYmVuY2htYXJrczMyCiBMT0NBTF9NT0RVTEVfU1RFTV82NCA6PSBiaW9uaWMtYmVuY2htYXJrczY0CiBMT0NBTF9NVUxUSUxJQiA6PSBib3RoCi1MT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQubWsKLUxPQ0FMX0NGTEFHUyArPSAkKGJlbmNobWFya19jX2ZsYWdzKQotTE9DQUxfQ19JTkNMVURFUyArPSBleHRlcm5hbC9zdGxwb3J0L3N0bHBvcnQgYmlvbmljLyBiaW9uaWMvbGlic3RkYysrL2luY2x1ZGUKLUxPQ0FMX1NIQVJFRF9MSUJSQVJJRVMgKz0gbGlic3RscG9ydAorTE9DQUxfQ0ZMQUdTIDo9ICQoYmVuY2htYXJrX2NmbGFncykKK0xPQ0FMX0NQUEZMQUdTIDo9ICQoYmVuY2htYXJrX2NwcGZsYWdzKQogTE9DQUxfU1JDX0ZJTEVTIDo9ICQoYmVuY2htYXJrX3NyY19maWxlcykKK0xPQ0FMX1NUQVRJQ19MSUJSQVJJRVMgOj0gbGliYmVuY2htYXJrIGxpYmJhc2UKIGluY2x1ZGUgJChCVUlMRF9FWEVDVVRBQkxFKQogCi1pZmVxICgkKEhPU1RfT1MpLSQoSE9TVF9BUkNIKSwkKGZpbHRlciAkKEhPU1RfT1MpLSQoSE9TVF9BUkNIKSxsaW51eC14ODYgbGludXgteDg2XzY0KSkKLWlmZXEgKCQoVEFSR0VUX0FSQ0gpLHg4NikKLUxJTktFUiA9IGxpbmtlcgotTkFUSVZFX1NVRkZJWD0zMgotZWxzZQotTElOS0VSID0gbGlua2VyNjQKLU5BVElWRV9TVUZGSVg9NjQKKyMgV2UgZG9uJ3QgYnVpbGQgYSBzdGF0aWMgYmVuY2htYXJrIGV4ZWN1dGFibGUgYmVjYXVzZSBpdCdzIG5vdCB1c3VhbGx5CisjIHVzZWZ1bC4gSWYgeW91J3JlIHRyeWluZyB0byBydW4gdGhlIGN1cnJlbnQgYmVuY2htYXJrcyBvbiBhbiBvbGRlcgorIyByZWxlYXNlLCBpdCdzIChzbyBmYXIgYXQgbGVhc3QpIGFsd2F5cyBiZWNhdXNlIHlvdSB3YW50IHRvIG1lYXN1cmUgdGhlCisjIHBlcmZvcm1hbmNlIG9mIHRoZSBvbGQgcmVsZWFzZSdzIGxpYmMsIGFuZCBhIHN0YXRpYyBiZW5jaG1hcmsgaXNuJ3QKKyMgZ29pbmcgdG8gbGV0IHlvdSBkbyB0aGF0LgorCisjIE9ubHkgc3VwcG9ydGVkIG9uIGxpbnV4IHN5c3RlbXMuCitpZmVxICgkKEhPU1RfT1MpLGxpbnV4KQorCisjIEJ1aWxkIGJlbmNobWFya3MgZm9yIHRoZSBob3N0IChhZ2FpbnN0IGdsaWJjISkuIFJ1biB3aXRoOgoraW5jbHVkZSAkKENMRUFSX1ZBUlMpCitMT0NBTF9NT0RVTEUgOj0gYmlvbmljLWJlbmNobWFya3MtZ2xpYmMKK0xPQ0FMX01PRFVMRV9TVEVNXzMyIDo9IGJpb25pYy1iZW5jaG1hcmtzLWdsaWJjMzIKK0xPQ0FMX01PRFVMRV9TVEVNXzY0IDo9IGJpb25pYy1iZW5jaG1hcmtzLWdsaWJjNjQKK0xPQ0FMX01VTFRJTElCIDo9IGJvdGgKK0xPQ0FMX0NGTEFHUyA6PSAkKGJlbmNobWFya19jZmxhZ3MpCitMT0NBTF9DUFBGTEFHUyA6PSAkKGJlbmNobWFya19jcHBmbGFncykKK0xPQ0FMX0xERkxBR1MgOj0gLWxydAorTE9DQUxfU1JDX0ZJTEVTIDo9ICQoYmVuY2htYXJrX3NyY19maWxlcykKK0xPQ0FMX1NUQVRJQ19MSUJSQVJJRVMgOj0gbGliYmVuY2htYXJrIGxpYmJhc2UKK2luY2x1ZGUgJChCVUlMRF9IT1NUX0VYRUNVVEFCTEUpCisKIGVuZGlmCiAKLWJpb25pYy1iZW5jaG1hcmtzLXJ1bi1vbi1ob3N0OiBiaW9uaWMtYmVuY2htYXJrcyAkKFRBUkdFVF9PVVRfRVhFQ1VUQUJMRVMpLyQoTElOS0VSKSAkKFRBUkdFVF9PVVRfRVhFQ1VUQUJMRVMpL3NoCi0JaWYgWyAhIC1kIC9zeXN0ZW0gLW8gISAtZCAvc3lzdGVtL2JpbiBdOyB0aGVuIFwKLQkgIGVjaG8gIkF0dGVtcHRpbmcgdG8gY3JlYXRlIC9zeXN0ZW0vYmluIjsgXAotCSAgc3VkbyBta2RpciAtcCAtbSAwNzc3IC9zeXN0ZW0vYmluOyBcCi0JZmkKLQlta2RpciAtcCAkKFRBUkdFVF9PVVRfREFUQSkvbG9jYWwvdG1wCi0JY3AgJChUQVJHRVRfT1VUX0VYRUNVVEFCTEVTKS8kKExJTktFUikgL3N5c3RlbS9iaW4KLQljcCAkKFRBUkdFVF9PVVRfRVhFQ1VUQUJMRVMpL3NoIC9zeXN0ZW0vYmluCitpZmVxICgkKEhPU1RfT1MpLSQoSE9TVF9BUkNIKSwkKGZpbHRlciAkKEhPU1RfT1MpLSQoSE9TVF9BUkNIKSxsaW51eC14ODYgbGludXgteDg2XzY0KSkKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS8uLi9idWlsZC9ydW4tb24taG9zdC5taworCitpZmVxICgkKFRBUkdFVF9BUkNIKSwkKGZpbHRlciAkKFRBUkdFVF9BUkNIKSx4ODYgeDg2XzY0KSkKK2Jpb25pYy1iZW5jaG1hcmtzLXJ1bi1vbi1ob3N0MzI6IGJpb25pYy1iZW5jaG1hcmtzIGJpb25pYy1wcmVwYXJlLXJ1bi1vbi1ob3N0CiAJQU5EUk9JRF9EQVRBPSQoVEFSR0VUX09VVF9EQVRBKSBcCiAJQU5EUk9JRF9ST09UPSQoVEFSR0VUX09VVCkgXAotCUxEX0xJQlJBUllfUEFUSD0kKFRBUkdFVF9PVVRfU0hBUkVEX0xJQlJBUklFUykgXAotCQkkKFRBUkdFVF9PVVRfRVhFQ1VUQUJMRVMpL2Jpb25pYy1iZW5jaG1hcmtzJChOQVRJVkVfU1VGRklYKSAkKEJJT05JQ19CRU5DSE1BUktTX0ZMQUdTKQotZW5kaWYgIyBsaW51eC14ODYKKwkJJChUQVJHRVRfT1VUX0VYRUNVVEFCTEVTKS9iaW9uaWMtYmVuY2htYXJrczMyICQoQklPTklDX0JFTkNITUFSS1NfRkxBR1MpCitlbmRpZgogCi1lbmRpZiAjICFCVUlMRF9USU5ZX0FORFJPSUQKK2lmZXEgKCQoVEFSR0VUX0lTXzY0X0JJVCksdHJ1ZSkKK2Jpb25pYy1iZW5jaG1hcmtzLXJ1bi1vbi1ob3N0NjQ6IGJpb25pYy1iZW5jaG1hcmtzIGJpb25pYy1wcmVwYXJlLXJ1bi1vbi1ob3N0CisJQU5EUk9JRF9EQVRBPSQoVEFSR0VUX09VVF9EQVRBKSBcCisJQU5EUk9JRF9ST09UPSQoVEFSR0VUX09VVCkgXAorCQkkKFRBUkdFVF9PVVRfRVhFQ1VUQUJMRVMpL2Jpb25pYy1iZW5jaG1hcmtzNjQgJChCSU9OSUNfQkVOQ0hNQVJLU19GTEFHUykKK2VuZGlmCisKK2VuZGlmCmRpZmYgLS1naXQgYS9iZW5jaG1hcmtzL0JlbmNobWFyay5jcHAgYi9iZW5jaG1hcmtzL0JlbmNobWFyay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWE2MDAwZgotLS0gL2Rldi9udWxsCisrKyBiL2JlbmNobWFya3MvQmVuY2htYXJrLmNwcApAQCAtMCwwICsxLDE1OSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxpbnR0eXBlcy5oPgorI2luY2x1ZGUgPHJlZ2V4Lmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDx0aW1lLmg+CisKKyNpbmNsdWRlIDxzdHJpbmc+CisjaW5jbHVkZSA8dmVjdG9yPgorCisjaW5jbHVkZSA8YmFzZS9zdHJpbmdwcmludGYuaD4KKworI2luY2x1ZGUgPGJlbmNobWFyay9CZW5jaG1hcmsuaD4KKworI2luY2x1ZGUgInV0aWxzLmgiCisKK25hbWVzcGFjZSB0ZXN0aW5nIHsKKworc3RhdGljIHVpbnQ2NF90IE5hbm9UaW1lKCkgeworICBzdHJ1Y3QgdGltZXNwZWMgdDsKKyAgdC50dl9zZWMgPSB0LnR2X25zZWMgPSAwOworICBjbG9ja19nZXR0aW1lKENMT0NLX01PTk9UT05JQywgJnQpOworICByZXR1cm4gc3RhdGljX2Nhc3Q8dWludDY0X3Q+KHQudHZfc2VjKSAqIDEwMDAwMDAwMDBMTCArIHQudHZfbnNlYzsKK30KKworYm9vbCBCZW5jaG1hcms6OmhlYWRlcl9wcmludGVkXzsKKworc3RkOjp2ZWN0b3I8QmVuY2htYXJrKj4mIEJlbmNobWFyazo6TGlzdCgpIHsKKyAgc3RhdGljIHN0ZDo6dmVjdG9yPEJlbmNobWFyayo+IGxpc3Q7CisgIHJldHVybiBsaXN0OworfQorCitpbnQgQmVuY2htYXJrOjpNYXhOYW1lQ29sdW1uV2lkdGgoKSB7CisgIHNpemVfdCBtYXggPSAyMDsKKyAgZm9yIChhdXRvJiBiZW5jaG1hcmsgOiBMaXN0KCkpIHsKKyAgICBtYXggPSBzdGQ6Om1heChtYXgsIGJlbmNobWFyay0+TmFtZUNvbHVtbldpZHRoKCkpOworICB9CisgIHJldHVybiBzdGF0aWNfY2FzdDxpbnQ+KG1heCk7Cit9CisKK3NpemVfdCBCZW5jaG1hcms6OlJ1bkFsbChzdGQ6OnZlY3RvcjxyZWdleF90Kj4mIHJlZ3MpIHsKKyAgc2l6ZV90IGJlbmNobWFya3NfcnVuID0gMDsKKyAgaGVhZGVyX3ByaW50ZWRfID0gZmFsc2U7CisgIGZvciAoYXV0byYgYmVuY2htYXJrIDogTGlzdCgpKSB7CisgICAgYmVuY2htYXJrc19ydW4gKz0gYmVuY2htYXJrLT5SdW5BbGxBcmdzKHJlZ3MpOworICB9CisgIHJldHVybiBiZW5jaG1hcmtzX3J1bjsKK30KKwordm9pZCBCZW5jaG1hcms6OlByaW50SGVhZGVyKCkgeworICBpZiAoIWhlYWRlcl9wcmludGVkXykgeworICAgIHByaW50ZigiJS0qcyAlMTBzICUxMHNcbiIsIE1heE5hbWVDb2x1bW5XaWR0aCgpLCAiIiwgIml0ZXJhdGlvbnMiLCAibnMvb3AiKTsKKyAgICBoZWFkZXJfcHJpbnRlZF8gPSB0cnVlOworICB9Cit9CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBUPgorYm9vbCBCZW5jaG1hcmtUPFQ+OjpTaG91bGRSdW4oc3RkOjp2ZWN0b3I8cmVnZXhfdCo+JiByZWdzLCBUIGFyZykgeworICBpZiAocmVncy5lbXB0eSgpKSB7CisgICAgcmV0dXJuIHRydWU7CisgIH0KKworICBmb3IgKGNvbnN0IGF1dG8mIHJlIDogcmVncykgeworICAgIGlmIChyZWdleGVjKHJlLCBHZXROYW1lU3RyKGFyZykuY19zdHIoKSwgMCwgTlVMTCwgMCkgIT0gUkVHX05PTUFUQ0gpIHsKKyAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgfQorICByZXR1cm4gZmFsc2U7Cit9CisKK3ZvaWQgQmVuY2htYXJrOjpTdG9wQmVuY2htYXJrVGltaW5nKCkgeworICBpZiAoc3RhcnRfdGltZV9uc18gIT0gMCkgeworICAgIHRvdGFsX3RpbWVfbnNfICs9IE5hbm9UaW1lKCkgLSBzdGFydF90aW1lX25zXzsKKyAgfQorICBzdGFydF90aW1lX25zXyA9IDA7Cit9CisKK3ZvaWQgQmVuY2htYXJrOjpTdGFydEJlbmNobWFya1RpbWluZygpIHsKKyAgaWYgKHN0YXJ0X3RpbWVfbnNfID09IDApIHsKKyAgICBzdGFydF90aW1lX25zXyA9IE5hbm9UaW1lKCk7CisgIH0KK30KKworc3RkOjpzdHJpbmcgQmVuY2htYXJrV2l0aG91dEFyZzo6R2V0TmFtZVN0cih2b2lkKikgeworICByZXR1cm4gTmFtZSgpOworfQorCit0ZW1wbGF0ZSA8Pgorc3RkOjpzdHJpbmcgQmVuY2htYXJrV2l0aEFyZzxpbnQ+OjpHZXROYW1lU3RyKGludCBhcmcpIHsKKyAgcmV0dXJuIE5hbWUoKSArICIvIiArIFByZXR0eUludChhcmcsIDIpOworfQorCit0ZW1wbGF0ZSA8Pgorc3RkOjpzdHJpbmcgQmVuY2htYXJrV2l0aEFyZzxkb3VibGU+OjpHZXROYW1lU3RyKGRvdWJsZSBhcmcpIHsKKyAgcmV0dXJuIE5hbWUoKSArICIvIiArIGFuZHJvaWQ6OmJhc2U6OlN0cmluZ1ByaW50ZigiJTAuNmYiLCBhcmcpOworfQorCit0ZW1wbGF0ZTx0eXBlbmFtZSBUPgordm9pZCBCZW5jaG1hcmtUPFQ+OjpSdW5XaXRoQXJnKFQgYXJnKSB7CisgIGludCBuZXdfaXRlcmF0aW9ucyA9IDE7CisgIGludCBpdGVyYXRpb25zOworICB3aGlsZSAobmV3X2l0ZXJhdGlvbnMgPCAxZTgpIHsKKyAgICBieXRlc19wcm9jZXNzZWRfID0gMDsKKyAgICB0b3RhbF90aW1lX25zXyA9IDA7CisgICAgc3RhcnRfdGltZV9uc18gPSAwOworCisgICAgaXRlcmF0aW9ucyA9IG5ld19pdGVyYXRpb25zOworICAgIFJ1bkl0ZXJhdGlvbnMoaXRlcmF0aW9ucywgYXJnKTsKKyAgICBpZiAodG90YWxfdGltZV9uc18gPj0gMWU5KSB7CisgICAgICBicmVhazsKKyAgICB9CisKKyAgICBpZiAodG90YWxfdGltZV9uc18vaXRlcmF0aW9ucyA9PSAwKSB7CisgICAgICBuZXdfaXRlcmF0aW9ucyA9IDFlOTsKKyAgICB9IGVsc2UgeworICAgICAgbmV3X2l0ZXJhdGlvbnMgPSAxZTkvICh0b3RhbF90aW1lX25zXy9pdGVyYXRpb25zKTsKKyAgICB9CisgICAgbmV3X2l0ZXJhdGlvbnMgPSBzdGQ6Om1heChpdGVyYXRpb25zICsgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjptaW4obmV3X2l0ZXJhdGlvbnMgKyBuZXdfaXRlcmF0aW9ucy8yLCAxMDAqaXRlcmF0aW9ucykpOworCisgICAgbmV3X2l0ZXJhdGlvbnMgPSBSb3VuZChuZXdfaXRlcmF0aW9ucyk7CisgIH0KKworICBwcmludGYoIiUtKnMgJTEwcyAlMTAiIFBSSWQ2NCwgTWF4TmFtZUNvbHVtbldpZHRoKCksIEdldE5hbWVTdHIoYXJnKS5jX3N0cigpLAorICAgICAgICAgUHJldHR5SW50KGl0ZXJhdGlvbnMsIDEwKS5jX3N0cigpLCB0b3RhbF90aW1lX25zXy9pdGVyYXRpb25zKTsKKworICBpZiAodG90YWxfdGltZV9uc18gPiAwICYmIGJ5dGVzX3Byb2Nlc3NlZF8gPiAwKSB7CisgICAgZG91YmxlIGdpYl9wcm9jZXNzZWQgPSBzdGF0aWNfY2FzdDxkb3VibGU+KGJ5dGVzX3Byb2Nlc3NlZF8pLzFlOTsKKyAgICBkb3VibGUgc2Vjb25kcyA9IHN0YXRpY19jYXN0PGRvdWJsZT4odG90YWxfdGltZV9uc18pLzFlOTsKKyAgICBwcmludGYoIiAlOC4zZiBHaUIvcyIsIGdpYl9wcm9jZXNzZWQvc2Vjb25kcyk7CisgIH0KKyAgcHJpbnRmKCJcbiIpOworICBmZmx1c2goc3Rkb3V0KTsKK30KKwordGVtcGxhdGUgY2xhc3MgQmVuY2htYXJrVDxpbnQ+OwordGVtcGxhdGUgY2xhc3MgQmVuY2htYXJrVDxkb3VibGU+OwordGVtcGxhdGUgY2xhc3MgQmVuY2htYXJrVDx2b2lkKj47CisKK3RlbXBsYXRlIGNsYXNzIEJlbmNobWFya1dpdGhBcmc8aW50PjsKK3RlbXBsYXRlIGNsYXNzIEJlbmNobWFya1dpdGhBcmc8ZG91YmxlPjsKKworfSAgLy8gbmFtZXNwYWNlIHRlc3RpbmcKZGlmZiAtLWdpdCBhL2JlbmNobWFya3MvYmVuY2htYXJrLmggYi9iZW5jaG1hcmtzL2JlbmNobWFyay5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkN2FmNTBmLi4wMDAwMDAwCi0tLSBhL2JlbmNobWFya3MvYmVuY2htYXJrLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEyIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLQotI2luY2x1ZGUgPHN0ZGludC5oPgotCi0jaW5jbHVkZSA8dmVjdG9yPgotCi1uYW1lc3BhY2UgdGVzdGluZyB7Ci0KLWNsYXNzIEJlbmNobWFyayB7Ci0gcHVibGljOgotICBCZW5jaG1hcmsoY29uc3QgY2hhciogbmFtZSwgdm9pZCAoKmZuKShpbnQpKSB7Ci0gICAgUmVnaXN0ZXIobmFtZSwgZm4sIE5VTEwpOwotICB9Ci0KLSAgQmVuY2htYXJrKGNvbnN0IGNoYXIqIG5hbWUsIHZvaWQgKCpmbl9yYW5nZSkoaW50LCBpbnQpKSB7Ci0gICAgUmVnaXN0ZXIobmFtZSwgTlVMTCwgZm5fcmFuZ2UpOwotICB9Ci0KLSAgQmVuY2htYXJrKiBBcmcoaW50IHgpOwotCi0gIGNvbnN0IGNoYXIqIE5hbWUoKTsKLQotICBib29sIFNob3VsZFJ1bihpbnQgYXJnYywgY2hhciogYXJndltdKTsKLSAgdm9pZCBSdW4oKTsKLQotIHByaXZhdGU6Ci0gIGNvbnN0IGNoYXIqIG5hbWVfOwotCi0gIHZvaWQgKCpmbl8pKGludCk7Ci0gIHZvaWQgKCpmbl9yYW5nZV8pKGludCwgaW50KTsKLQotICBzdGQ6OnZlY3RvcjxpbnQ+IGFyZ3NfOwotCi0gIHZvaWQgUmVnaXN0ZXIoY29uc3QgY2hhciogbmFtZSwgdm9pZCAoKmZuKShpbnQpLCB2b2lkICgqZm5fcmFuZ2UpKGludCwgaW50KSk7Ci0gIHZvaWQgUnVuUmVwZWF0ZWRseVdpdGhBcmcoaW50IGl0ZXJhdGlvbnMsIGludCBhcmcpOwotICB2b2lkIFJ1bldpdGhBcmcoaW50IGFyZyk7Ci19OwotCi19ICAvLyBuYW1lc3BhY2UgdGVzdGluZwotCi12b2lkIFNldEJlbmNobWFya0J5dGVzUHJvY2Vzc2VkKGludDY0X3QpOwotdm9pZCBTdG9wQmVuY2htYXJrVGltaW5nKCk7Ci12b2lkIFN0YXJ0QmVuY2htYXJrVGltaW5nKCk7Ci0KLSNkZWZpbmUgQkVOQ0hNQVJLKGYpIFwKLSAgICBzdGF0aWMgOjp0ZXN0aW5nOjpCZW5jaG1hcmsqIF9iZW5jaG1hcmtfIyNmIF9fYXR0cmlidXRlX18oKHVudXNlZCkpID0gXAotICAgICAgICAobmV3IDo6dGVzdGluZzo6QmVuY2htYXJrKCNmLCBmKSkKZGlmZiAtLWdpdCBhL2JlbmNobWFya3MvYmVuY2htYXJrL0JlbmNobWFyay5oIGIvYmVuY2htYXJrcy9iZW5jaG1hcmsvQmVuY2htYXJrLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWU1YzFhMgotLS0gL2Rldi9udWxsCisrKyBiL2JlbmNobWFya3MvYmVuY2htYXJrL0JlbmNobWFyay5oCkBAIC0wLDAgKzEsMTY5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2lmbmRlZiBCRU5DSE1BUktTX0JFTkNITUFSS19IXworI2RlZmluZSBCRU5DSE1BUktTX0JFTkNITUFSS19IXworCisjaW5jbHVkZSA8cmVnZXguaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKworI2luY2x1ZGUgPHN0cmluZz4KKyNpbmNsdWRlIDx2ZWN0b3I+CisKK25hbWVzcGFjZSB0ZXN0aW5nIHsKKworY2xhc3MgQmVuY2htYXJrIHsKK3B1YmxpYzoKKyAgQmVuY2htYXJrKCkgeworICAgIExpc3QoKS5wdXNoX2JhY2sodGhpcyk7CisgIH0KKyAgdmlydHVhbCB+QmVuY2htYXJrKCkge30KKworICB2aXJ0dWFsIHN0ZDo6c3RyaW5nIE5hbWUoKSA9IDA7CisKKyAgdmlydHVhbCBzaXplX3QgUnVuQWxsQXJncyhzdGQ6OnZlY3RvcjxyZWdleF90Kj4mKSA9IDA7CisKKyAgdm9pZCBTZXRCZW5jaG1hcmtCeXRlc1Byb2Nlc3NlZCh1aW50NjRfdCBieXRlcykgeyBieXRlc19wcm9jZXNzZWRfICs9IGJ5dGVzOyB9CisgIHZvaWQgU3RvcEJlbmNobWFya1RpbWluZygpOworICB2b2lkIFN0YXJ0QmVuY2htYXJrVGltaW5nKCk7CisKKyAgLy8gUnVuIGFsbCBvZiB0aGUgYmVuY2htYXJrcyB0aGF0IGhhdmUgcmVnaXN0ZXJlZC4KKyAgc3RhdGljIHNpemVfdCBSdW5BbGwoc3RkOjp2ZWN0b3I8cmVnZXhfdCo+Jik7CisKKyAgc3RhdGljIHN0ZDo6dmVjdG9yPEJlbmNobWFyayo+JiBMaXN0KCk7CisKKyAgc3RhdGljIGludCBNYXhOYW1lQ29sdW1uV2lkdGgoKTsKKworcHJvdGVjdGVkOgorICB2aXJ0dWFsIHNpemVfdCBOYW1lQ29sdW1uV2lkdGgoKSA9IDA7CisKKyAgdWludDY0X3QgYnl0ZXNfcHJvY2Vzc2VkXzsKKyAgdWludDY0X3QgdG90YWxfdGltZV9uc187CisgIHVpbnQ2NF90IHN0YXJ0X3RpbWVfbnNfOworCisgIHN0YXRpYyBib29sIGhlYWRlcl9wcmludGVkXzsKKworICBzdGF0aWMgdm9pZCBQcmludEhlYWRlcigpOworfTsKKwordGVtcGxhdGUgPHR5cGVuYW1lIFQ+CitjbGFzcyBCZW5jaG1hcmtUIDogcHVibGljIEJlbmNobWFyayB7CitwdWJsaWM6CisgIEJlbmNobWFya1QoKSB7fQorICB2aXJ0dWFsIH5CZW5jaG1hcmtUKCkge30KKworcHJvdGVjdGVkOgorICBib29sIFNob3VsZFJ1bihzdGQ6OnZlY3RvcjxyZWdleF90Kj4mLCBUIGFyZyk7CisgIHZvaWQgUnVuV2l0aEFyZyhUIGFyZyk7CisgIHZpcnR1YWwgdm9pZCBSdW5JdGVyYXRpb25zKGludCwgVCkgPSAwOworICB2aXJ0dWFsIHN0ZDo6c3RyaW5nIEdldE5hbWVTdHIoVCkgPSAwOworfTsKKworY2xhc3MgQmVuY2htYXJrV2l0aG91dEFyZyA6IHB1YmxpYyBCZW5jaG1hcmtUPHZvaWQqPiB7CitwdWJsaWM6CisgIEJlbmNobWFya1dpdGhvdXRBcmcoKSB7fQorICB2aXJ0dWFsIH5CZW5jaG1hcmtXaXRob3V0QXJnKCkge30KKworcHJvdGVjdGVkOgorICB2aXJ0dWFsIHNpemVfdCBSdW5BbGxBcmdzKHN0ZDo6dmVjdG9yPHJlZ2V4X3QqPiYgcmVncykgb3ZlcnJpZGUgeworICAgIHNpemVfdCBiZW5jaG1hcmtzX3J1biA9IDA7CisgICAgaWYgKEJlbmNobWFya1Q8dm9pZCo+OjpTaG91bGRSdW4ocmVncywgbnVsbHB0cikpIHsKKyAgICAgIFByaW50SGVhZGVyKCk7CisgICAgICBSdW5XaXRoQXJnKG51bGxwdHIpOworICAgICAgYmVuY2htYXJrc19ydW4rKzsKKyAgICB9CisgICAgcmV0dXJuIGJlbmNobWFya3NfcnVuOworICB9CisKKyAgdmlydHVhbCB2b2lkIFJ1bkl0ZXJhdGlvbnMoaW50IGl0ZXJzLCB2b2lkKikgb3ZlcnJpZGUgeworICAgIFJ1bihpdGVycyk7CisgIH0KKworICB2aXJ0dWFsIHZvaWQgUnVuKGludCkgPSAwOworCisgIHZpcnR1YWwgc2l6ZV90IE5hbWVDb2x1bW5XaWR0aCgpIG92ZXJyaWRlIHsKKyAgICByZXR1cm4gTmFtZSgpLnNpemUoKTsKKyAgfQorCisgIHZpcnR1YWwgc3RkOjpzdHJpbmcgR2V0TmFtZVN0cih2b2lkICopIG92ZXJyaWRlOworfTsKKwordGVtcGxhdGU8dHlwZW5hbWUgVD4KK2NsYXNzIEJlbmNobWFya1dpdGhBcmcgOiBwdWJsaWMgQmVuY2htYXJrVDxUPiB7CitwdWJsaWM6CisgIEJlbmNobWFya1dpdGhBcmcoKSB7fQorICB2aXJ0dWFsIH5CZW5jaG1hcmtXaXRoQXJnKCkge30KKworICBCZW5jaG1hcmtXaXRoQXJnKiBBcmcoVCBhcmcpIHsKKyAgICBhcmdzXy5wdXNoX2JhY2soYXJnKTsKKyAgICByZXR1cm4gdGhpczsKKyAgfQorCitwcm90ZWN0ZWQ6CisgIHZpcnR1YWwgc2l6ZV90IE5hbWVDb2x1bW5XaWR0aCgpIG92ZXJyaWRlIHsKKyAgICBzaXplX3QgbWF4ID0gMDsKKyAgICBmb3IgKGNvbnN0IGF1dG8mIGFyZyA6IGFyZ3NfKSB7CisgICAgICBtYXggPSBzdGQ6Om1heChtYXgsIEdldE5hbWVTdHIoYXJnKS5zaXplKCkpOworICAgIH0KKyAgICByZXR1cm4gbWF4OworICB9CisKKyAgc3RkOjpzdHJpbmcgR2V0TmFtZVN0cihUIGFyZykgb3ZlcnJpZGU7CisKKyAgdmlydHVhbCBzaXplX3QgUnVuQWxsQXJncyhzdGQ6OnZlY3RvcjxyZWdleF90Kj4mIHJlZ3MpIG92ZXJyaWRlIHsKKyAgICBzaXplX3QgYmVuY2htYXJrc19ydW4gPSAwOworICAgIGZvciAoVCYgYXJnIDogYXJnc18pIHsKKyAgICAgIGlmIChCZW5jaG1hcmtUPFQ+OjpTaG91bGRSdW4ocmVncywgYXJnKSkgeworICAgICAgICBCZW5jaG1hcms6OlByaW50SGVhZGVyKCk7CisgICAgICAgIEJlbmNobWFya1Q8VD46OlJ1bldpdGhBcmcoYXJnKTsKKyAgICAgICAgYmVuY2htYXJrc19ydW4rKzsKKyAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIGJlbmNobWFya3NfcnVuOworICB9CisKKyAgdmlydHVhbCB2b2lkIFJ1bkl0ZXJhdGlvbnMoaW50IGl0ZXJzLCBUIGFyZykgb3ZlcnJpZGUgeworICAgIFJ1bihpdGVycywgYXJnKTsKKyAgfQorCisgIHZpcnR1YWwgdm9pZCBSdW4oaW50IGl0ZXJzLCBUIGFyZykgPSAwOworCitwcml2YXRlOgorICBzdGQ6OnZlY3RvcjxUPiBhcmdzXzsKK307CisKK30gIC8vIG5hbWVzcGFjZSB0ZXN0aW5nCisKKyNkZWZpbmUgQkVOQ0hNQVJLX1NUQVJUKGYsIHN1cGVyX2NsYXNzKSBcCisgIGNsYXNzIGYgOiBwdWJsaWMgc3VwZXJfY2xhc3MgeyBcCisgIHB1YmxpYzogXAorICAgIGYoKSB7fSBcCisgICAgdmlydHVhbCB+ZigpIHt9IFwKKyAgICB2aXJ0dWFsIHN0ZDo6c3RyaW5nIE5hbWUoKSBvdmVycmlkZSB7IHJldHVybiAjZjsgfSBcCisKKyNkZWZpbmUgQkVOQ0hNQVJLX05PX0FSRyhmKSBcCisgIEJFTkNITUFSS19TVEFSVChmLCA6OnRlc3Rpbmc6OkJlbmNobWFya1dpdGhvdXRBcmcpIFwKKyAgICB2aXJ0dWFsIHZvaWQgUnVuKGludCkgb3ZlcnJpZGU7IFwKKyAgfTsgXAorICBzdGF0aWMgOjp0ZXN0aW5nOjpCZW5jaG1hcmsqIF9fYmVuY2htYXJrXyMjZiA9IG5ldyBmKCkKKworI2RlZmluZSBCRU5DSE1BUktfV0lUSF9BUkcoZiwgYXJnX3R5cGUpIFwKKyAgQkVOQ0hNQVJLX1NUQVJUKGYsIDo6dGVzdGluZzo6QmVuY2htYXJrV2l0aEFyZzxhcmdfdHlwZT4pIFwKKyAgICB2aXJ0dWFsIHZvaWQgUnVuKGludCwgYXJnX3R5cGUpIG92ZXJyaWRlOyBcCisgIH07IFwKKyAgc3RhdGljIDo6dGVzdGluZzo6QmVuY2htYXJrV2l0aEFyZzxhcmdfdHlwZT4qIF9fYmVuY2htYXJrXyMjZiA9IChuZXcgZigpKQorCisjZW5kaWYgIC8vIEJFTkNITUFSS1NfQkVOQ0hNQVJLX0hfCmRpZmYgLS1naXQgYS9iZW5jaG1hcmtzL2JlbmNobWFya19tYWluLmNwcCBiL2JlbmNobWFya3MvYmVuY2htYXJrX21haW4uY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkNjA2NzBiLi4wMDAwMDAwCi0tLSBhL2JlbmNobWFya3MvYmVuY2htYXJrX21haW4uY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMjI2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICoKLSAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOwotICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgotICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0Ci0gKgotICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKLSAqCi0gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCi0gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAotICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCi0gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCi0gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KLSAqLwotCi0jaW5jbHVkZSAiYmVuY2htYXJrLmgiCi0KLSNpbmNsdWRlIDxyZWdleC5oPgotI2luY2x1ZGUgPHN0ZGlvLmg+Ci0jaW5jbHVkZSA8c3RkbGliLmg+Ci0KLSNpbmNsdWRlIDxzdHJpbmc+Ci0jaW5jbHVkZSA8bWFwPgotCi0jaW5jbHVkZSA8aW50dHlwZXMuaD4KLQotc3RhdGljIGludDY0X3QgZ19ieXRlc19wcm9jZXNzZWQ7Ci1zdGF0aWMgaW50NjRfdCBnX2JlbmNobWFya190b3RhbF90aW1lX25zOwotc3RhdGljIGludDY0X3QgZ19iZW5jaG1hcmtfc3RhcnRfdGltZV9uczsKLQotdHlwZWRlZiBzdGQ6Om1hcDxzdGQ6OnN0cmluZywgOjp0ZXN0aW5nOjpCZW5jaG1hcmsqPiBCZW5jaG1hcmtNYXA7Ci10eXBlZGVmIEJlbmNobWFya01hcDo6aXRlcmF0b3IgQmVuY2htYXJrTWFwSXQ7Ci1zdGF0aWMgQmVuY2htYXJrTWFwIGdfYmVuY2htYXJrczsKLXN0YXRpYyBpbnQgZ19uYW1lX2NvbHVtbl93aWR0aCA9IDIwOwotCi1zdGF0aWMgaW50IFJvdW5kKGludCBuKSB7Ci0gIGludCBiYXNlID0gMTsKLSAgd2hpbGUgKGJhc2UqMTAgPCBuKSB7Ci0gICAgYmFzZSAqPSAxMDsKLSAgfQotICBpZiAobiA8IDIqYmFzZSkgewotICAgIHJldHVybiAyKmJhc2U7Ci0gIH0KLSAgaWYgKG4gPCA1KmJhc2UpIHsKLSAgICByZXR1cm4gNSpiYXNlOwotICB9Ci0gIHJldHVybiAxMCpiYXNlOwotfQotCi1zdGF0aWMgaW50NjRfdCBOYW5vVGltZSgpIHsKLSAgc3RydWN0IHRpbWVzcGVjIHQ7Ci0gIHQudHZfc2VjID0gdC50dl9uc2VjID0gMDsKLSAgY2xvY2tfZ2V0dGltZShDTE9DS19NT05PVE9OSUMsICZ0KTsKLSAgcmV0dXJuIHN0YXRpY19jYXN0PGludDY0X3Q+KHQudHZfc2VjKSAqIDEwMDAwMDAwMDBMTCArIHQudHZfbnNlYzsKLX0KLQotbmFtZXNwYWNlIHRlc3RpbmcgewotCi1CZW5jaG1hcmsqIEJlbmNobWFyazo6QXJnKGludCBhcmcpIHsKLSAgYXJnc18ucHVzaF9iYWNrKGFyZyk7Ci0gIHJldHVybiB0aGlzOwotfQotCi1jb25zdCBjaGFyKiBCZW5jaG1hcms6Ok5hbWUoKSB7Ci0gIHJldHVybiBuYW1lXzsKLX0KLQotYm9vbCBCZW5jaG1hcms6OlNob3VsZFJ1bihpbnQgYXJnYywgY2hhciogYXJndltdKSB7Ci0gIGlmIChhcmdjID09IDEpIHsKLSAgICByZXR1cm4gdHJ1ZTsgIC8vIFdpdGggbm8gYXJndW1lbnRzLCB3ZSBydW4gYWxsIGJlbmNobWFya3MuCi0gIH0KLSAgLy8gT3RoZXJ3aXNlLCB3ZSBpbnRlcnByZXQgZWFjaCBhcmd1bWVudCBhcyBhIHJlZ3VsYXIgZXhwcmVzc2lvbiBhbmQKLSAgLy8gc2VlIGlmIGFueSBvZiBvdXIgYmVuY2htYXJrcyBtYXRjaC4KLSAgZm9yIChpbnQgaSA9IDE7IGkgPCBhcmdjOyBpKyspIHsKLSAgICByZWdleF90IHJlOwotICAgIGlmIChyZWdjb21wKCZyZSwgYXJndltpXSwgMCkgIT0gMCkgewotICAgICAgZnByaW50ZihzdGRlcnIsICJjb3VsZG4ndCBjb21waWxlIFwiJXNcIiBhcyBhIHJlZ3VsYXIgZXhwcmVzc2lvbiFcbiIsIGFyZ3ZbaV0pOwotICAgICAgZXhpdChFWElUX0ZBSUxVUkUpOwotICAgIH0KLSAgICBpbnQgbWF0Y2ggPSByZWdleGVjKCZyZSwgbmFtZV8sIDAsIE5VTEwsIDApOwotICAgIHJlZ2ZyZWUoJnJlKTsKLSAgICBpZiAobWF0Y2ggIT0gUkVHX05PTUFUQ0gpIHsKLSAgICAgIHJldHVybiB0cnVlOwotICAgIH0KLSAgfQotICByZXR1cm4gZmFsc2U7Ci19Ci0KLXZvaWQgQmVuY2htYXJrOjpSZWdpc3Rlcihjb25zdCBjaGFyKiBuYW1lLCB2b2lkICgqZm4pKGludCksIHZvaWQgKCpmbl9yYW5nZSkoaW50LCBpbnQpKSB7Ci0gIG5hbWVfID0gbmFtZTsKLSAgZm5fID0gZm47Ci0gIGZuX3JhbmdlXyA9IGZuX3JhbmdlOwotCi0gIGlmIChmbl8gPT0gTlVMTCAmJiBmbl9yYW5nZV8gPT0gTlVMTCkgewotICAgIGZwcmludGYoc3RkZXJyLCAiJXM6IG1pc3NpbmcgZnVuY3Rpb25cbiIsIG5hbWVfKTsKLSAgICBleGl0KEVYSVRfRkFJTFVSRSk7Ci0gIH0KLQotICBnX2JlbmNobWFya3MuaW5zZXJ0KHN0ZDo6bWFrZV9wYWlyKG5hbWUsIHRoaXMpKTsKLX0KLQotdm9pZCBCZW5jaG1hcms6OlJ1bigpIHsKLSAgaWYgKGZuXyAhPSBOVUxMKSB7Ci0gICAgUnVuV2l0aEFyZygwKTsKLSAgfSBlbHNlIHsKLSAgICBpZiAoYXJnc18uZW1wdHkoKSkgewotICAgICAgZnByaW50ZihzdGRlcnIsICIlczogbm8gYXJncyFcbiIsIG5hbWVfKTsKLSAgICAgIGV4aXQoRVhJVF9GQUlMVVJFKTsKLSAgICB9Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBhcmdzXy5zaXplKCk7ICsraSkgewotICAgICAgUnVuV2l0aEFyZyhhcmdzX1tpXSk7Ci0gICAgfQotICB9Ci19Ci0KLXZvaWQgQmVuY2htYXJrOjpSdW5SZXBlYXRlZGx5V2l0aEFyZyhpbnQgaXRlcmF0aW9ucywgaW50IGFyZykgewotICBnX2J5dGVzX3Byb2Nlc3NlZCA9IDA7Ci0gIGdfYmVuY2htYXJrX3RvdGFsX3RpbWVfbnMgPSAwOwotICBnX2JlbmNobWFya19zdGFydF90aW1lX25zID0gTmFub1RpbWUoKTsKLSAgaWYgKGZuXyAhPSBOVUxMKSB7Ci0gICAgZm5fKGl0ZXJhdGlvbnMpOwotICB9IGVsc2UgewotICAgIGZuX3JhbmdlXyhpdGVyYXRpb25zLCBhcmcpOwotICB9Ci0gIGlmIChnX2JlbmNobWFya19zdGFydF90aW1lX25zICE9IDApIHsKLSAgICBnX2JlbmNobWFya190b3RhbF90aW1lX25zICs9IE5hbm9UaW1lKCkgLSBnX2JlbmNobWFya19zdGFydF90aW1lX25zOwotICB9Ci19Ci0KLXZvaWQgQmVuY2htYXJrOjpSdW5XaXRoQXJnKGludCBhcmcpIHsKLSAgLy8gcnVuIG9uY2UgaW4gY2FzZSBpdCdzIGV4cGVuc2l2ZQotICBpbnQgaXRlcmF0aW9ucyA9IDE7Ci0gIFJ1blJlcGVhdGVkbHlXaXRoQXJnKGl0ZXJhdGlvbnMsIGFyZyk7Ci0gIHdoaWxlIChnX2JlbmNobWFya190b3RhbF90aW1lX25zIDwgMWU5ICYmIGl0ZXJhdGlvbnMgPCAxZTkpIHsKLSAgICBpbnQgbGFzdCA9IGl0ZXJhdGlvbnM7Ci0gICAgaWYgKGdfYmVuY2htYXJrX3RvdGFsX3RpbWVfbnMvaXRlcmF0aW9ucyA9PSAwKSB7Ci0gICAgICBpdGVyYXRpb25zID0gMWU5OwotICAgIH0gZWxzZSB7Ci0gICAgICBpdGVyYXRpb25zID0gMWU5IC8gKGdfYmVuY2htYXJrX3RvdGFsX3RpbWVfbnMvaXRlcmF0aW9ucyk7Ci0gICAgfQotICAgIGl0ZXJhdGlvbnMgPSBzdGQ6Om1heChsYXN0ICsgMSwgc3RkOjptaW4oaXRlcmF0aW9ucyArIGl0ZXJhdGlvbnMvMiwgMTAwKmxhc3QpKTsKLSAgICBpdGVyYXRpb25zID0gUm91bmQoaXRlcmF0aW9ucyk7Ci0gICAgUnVuUmVwZWF0ZWRseVdpdGhBcmcoaXRlcmF0aW9ucywgYXJnKTsKLSAgfQotCi0gIGNoYXIgdGhyb3VnaHB1dFsxMDBdOwotICB0aHJvdWdocHV0WzBdID0gJ1wwJzsKLSAgaWYgKGdfYmVuY2htYXJrX3RvdGFsX3RpbWVfbnMgPiAwICYmIGdfYnl0ZXNfcHJvY2Vzc2VkID4gMCkgewotICAgIGRvdWJsZSBtaWJfcHJvY2Vzc2VkID0gc3RhdGljX2Nhc3Q8ZG91YmxlPihnX2J5dGVzX3Byb2Nlc3NlZCkvMWU2OwotICAgIGRvdWJsZSBzZWNvbmRzID0gc3RhdGljX2Nhc3Q8ZG91YmxlPihnX2JlbmNobWFya190b3RhbF90aW1lX25zKS8xZTk7Ci0gICAgc25wcmludGYodGhyb3VnaHB1dCwgc2l6ZW9mKHRocm91Z2hwdXQpLCAiICU4LjJmIE1pQi9zIiwgbWliX3Byb2Nlc3NlZC9zZWNvbmRzKTsKLSAgfQotCi0gIGNoYXIgZnVsbF9uYW1lWzEwMF07Ci0gIGlmIChmbl9yYW5nZV8gIT0gTlVMTCkgewotICAgIGlmIChhcmcgPj0gKDE8PDIwKSkgewotICAgICAgc25wcmludGYoZnVsbF9uYW1lLCBzaXplb2YoZnVsbF9uYW1lKSwgIiVzLyVkTSIsIG5hbWVfLCBhcmcvKDE8PDIwKSk7Ci0gICAgfSBlbHNlIGlmIChhcmcgPj0gKDE8PDEwKSkgewotICAgICAgc25wcmludGYoZnVsbF9uYW1lLCBzaXplb2YoZnVsbF9uYW1lKSwgIiVzLyVkSyIsIG5hbWVfLCBhcmcvKDE8PDEwKSk7Ci0gICAgfSBlbHNlIHsKLSAgICAgIHNucHJpbnRmKGZ1bGxfbmFtZSwgc2l6ZW9mKGZ1bGxfbmFtZSksICIlcy8lZCIsIG5hbWVfLCBhcmcpOwotICAgIH0KLSAgfSBlbHNlIHsKLSAgICBzbnByaW50ZihmdWxsX25hbWUsIHNpemVvZihmdWxsX25hbWUpLCAiJXMiLCBuYW1lXyk7Ci0gIH0KLQotICBwcmludGYoIiUtKnMgJTEwZCAlMTAiIFBSSWQ2NCAiJXNcbiIsIGdfbmFtZV9jb2x1bW5fd2lkdGgsIGZ1bGxfbmFtZSwKLSAgICAgICAgIGl0ZXJhdGlvbnMsIGdfYmVuY2htYXJrX3RvdGFsX3RpbWVfbnMvaXRlcmF0aW9ucywgdGhyb3VnaHB1dCk7Ci0gIGZmbHVzaChzdGRvdXQpOwotfQotCi19ICAvLyBuYW1lc3BhY2UgdGVzdGluZwotCi12b2lkIFNldEJlbmNobWFya0J5dGVzUHJvY2Vzc2VkKGludDY0X3QgeCkgewotICBnX2J5dGVzX3Byb2Nlc3NlZCA9IHg7Ci19Ci0KLXZvaWQgU3RvcEJlbmNobWFya1RpbWluZygpIHsKLSAgaWYgKGdfYmVuY2htYXJrX3N0YXJ0X3RpbWVfbnMgIT0gMCkgewotICAgIGdfYmVuY2htYXJrX3RvdGFsX3RpbWVfbnMgKz0gTmFub1RpbWUoKSAtIGdfYmVuY2htYXJrX3N0YXJ0X3RpbWVfbnM7Ci0gIH0KLSAgZ19iZW5jaG1hcmtfc3RhcnRfdGltZV9ucyA9IDA7Ci19Ci0KLXZvaWQgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKSB7Ci0gIGlmIChnX2JlbmNobWFya19zdGFydF90aW1lX25zID09IDApIHsKLSAgICBnX2JlbmNobWFya19zdGFydF90aW1lX25zID0gTmFub1RpbWUoKTsKLSAgfQotfQotCi1pbnQgbWFpbihpbnQgYXJnYywgY2hhciogYXJndltdKSB7Ci0gIGlmIChnX2JlbmNobWFya3MuZW1wdHkoKSkgewotICAgIGZwcmludGYoc3RkZXJyLCAiTm8gYmVuY2htYXJrcyByZWdpc3RlcmVkIVxuIik7Ci0gICAgZXhpdChFWElUX0ZBSUxVUkUpOwotICB9Ci0KLSAgZm9yIChCZW5jaG1hcmtNYXBJdCBpdCA9IGdfYmVuY2htYXJrcy5iZWdpbigpOyBpdCAhPSBnX2JlbmNobWFya3MuZW5kKCk7ICsraXQpIHsKLSAgICBpbnQgbmFtZV93aWR0aCA9IHN0YXRpY19jYXN0PGludD4oc3RybGVuKGl0LT5zZWNvbmQtPk5hbWUoKSkpOwotICAgIGdfbmFtZV9jb2x1bW5fd2lkdGggPSBzdGQ6Om1heChnX25hbWVfY29sdW1uX3dpZHRoLCBuYW1lX3dpZHRoKTsKLSAgfQotCi0gIGJvb2wgbmVlZF9oZWFkZXIgPSB0cnVlOwotICBmb3IgKEJlbmNobWFya01hcEl0IGl0ID0gZ19iZW5jaG1hcmtzLmJlZ2luKCk7IGl0ICE9IGdfYmVuY2htYXJrcy5lbmQoKTsgKytpdCkgewotICAgIDo6dGVzdGluZzo6QmVuY2htYXJrKiBiID0gaXQtPnNlY29uZDsKLSAgICBpZiAoYi0+U2hvdWxkUnVuKGFyZ2MsIGFyZ3YpKSB7Ci0gICAgICBpZiAobmVlZF9oZWFkZXIpIHsKLSAgICAgICAgcHJpbnRmKCIlLSpzICUxMHMgJTEwc1xuIiwgZ19uYW1lX2NvbHVtbl93aWR0aCwgIiIsICJpdGVyYXRpb25zIiwgIm5zL29wIik7Ci0gICAgICAgIGZmbHVzaChzdGRvdXQpOwotICAgICAgICBuZWVkX2hlYWRlciA9IGZhbHNlOwotICAgICAgfQotICAgICAgYi0+UnVuKCk7Ci0gICAgfQotICB9Ci0KLSAgaWYgKG5lZWRfaGVhZGVyKSB7Ci0gICAgZnByaW50ZihzdGRlcnIsICJObyBtYXRjaGluZyBiZW5jaG1hcmtzIVxuIik7Ci0gICAgZnByaW50ZihzdGRlcnIsICJBdmFpbGFibGUgYmVuY2htYXJrczpcbiIpOwotICAgIGZvciAoQmVuY2htYXJrTWFwSXQgaXQgPSBnX2JlbmNobWFya3MuYmVnaW4oKTsgaXQgIT0gZ19iZW5jaG1hcmtzLmVuZCgpOyArK2l0KSB7Ci0gICAgICBmcHJpbnRmKHN0ZGVyciwgIiAgJXNcbiIsIGl0LT5zZWNvbmQtPk5hbWUoKSk7Ci0gICAgfQotICAgIGV4aXQoRVhJVF9GQUlMVVJFKTsKLSAgfQotCi0gIHJldHVybiAwOwotfQpkaWZmIC0tZ2l0IGEvYmVuY2htYXJrcy9tYWluLmNwcCBiL2JlbmNobWFya3MvbWFpbi5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWJjZTQ3OQotLS0gL2Rldi9udWxsCisrKyBiL2JlbmNobWFya3MvbWFpbi5jcHAKQEAgLTAsMCArMSw2MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMiBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKworI2luY2x1ZGUgPHJlZ2V4Lmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworI2luY2x1ZGUgPHZlY3Rvcj4KKworI2luY2x1ZGUgPGJlbmNobWFyay9CZW5jaG1hcmsuaD4KKworaW50IG1haW4oaW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSkgeworICBpZiAoOjp0ZXN0aW5nOjpCZW5jaG1hcms6Okxpc3QoKS5lbXB0eSgpKSB7CisgICAgZnByaW50ZihzdGRlcnIsICJObyBiZW5jaG1hcmtzIHJlZ2lzdGVyZWQhXG4iKTsKKyAgICBleGl0KEVYSVRfRkFJTFVSRSk7CisgIH0KKworICBzdGQ6OnZlY3RvcjxyZWdleF90Kj4gcmVnczsKKyAgZm9yIChpbnQgaSA9IDE7IGkgPCBhcmdjOyBpKyspIHsKKyAgICByZWdleF90KiByZSA9IG5ldyByZWdleF90OworICAgIGludCBlcnJjb2RlID0gcmVnY29tcChyZSwgYXJndltpXSwgMCk7CisgICAgaWYgKGVycmNvZGUgIT0gMCkgeworICAgICAgc2l6ZV90IGVycmJ1Zl9zaXplID0gcmVnZXJyb3IoZXJyY29kZSwgcmUsIE5VTEwsIDApOworICAgICAgaWYgKGVycmJ1Zl9zaXplID4gMCkgeworICAgICAgICBjaGFyKiBlcnJidWYgPSBuZXcgY2hhcltlcnJidWZfc2l6ZV07CisgICAgICAgIHJlZ2Vycm9yKGVycmNvZGUsIHJlLCBlcnJidWYsIGVycmJ1Zl9zaXplKTsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICJDb3VsZG4ndCBjb21waWxlIFwiJXNcIiBhcyBhIHJlZ3VsYXIgZXhwcmVzc2lvbjogJXNcbiIsCisgICAgICAgICAgICAgICAgYXJndltpXSwgZXJyYnVmKTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiVW5rbm93biBjb21waWxlIGVycm9yIGZvciBcIiVzXCIgYXMgYSByZWd1bGFyIGV4cHJlc3Npb24hXG4iLCBhcmd2W2ldKTsKKyAgICAgIH0KKyAgICAgIGV4aXQoRVhJVF9GQUlMVVJFKTsKKyAgICB9CisgICAgcmVncy5wdXNoX2JhY2socmUpOworICB9CisKKyAgaWYgKDo6dGVzdGluZzo6QmVuY2htYXJrOjpSdW5BbGwocmVncykgPT0gMCkgeworICAgIGZwcmludGYoc3RkZXJyLCAiTm8gbWF0Y2hpbmcgYmVuY2htYXJrcyFcbiIpOworICAgIGZwcmludGYoc3RkZXJyLCAiQXZhaWxhYmxlIGJlbmNobWFya3M6XG4iKTsKKyAgICBmb3IgKGNvbnN0IGF1dG8mIGJlbmNobWFyayA6IDo6dGVzdGluZzo6QmVuY2htYXJrOjpMaXN0KCkpIHsKKyAgICAgIGZwcmludGYoc3RkZXJyLCAiICAlc1xuIiwgYmVuY2htYXJrLT5OYW1lKCkuY19zdHIoKSk7CisgICAgfQorICAgIGV4aXQoRVhJVF9GQUlMVVJFKTsKKyAgfQorCisgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvYmVuY2htYXJrcy9tYXRoX2JlbmNobWFyay5jcHAgYi9iZW5jaG1hcmtzL21hdGhfYmVuY2htYXJrLmNwcAppbmRleCBhOTc0OGNkLi40ZGUyOGQxIDEwMDY0NAotLS0gYS9iZW5jaG1hcmtzL21hdGhfYmVuY2htYXJrLmNwcAorKysgYi9iZW5jaG1hcmtzL21hdGhfYmVuY2htYXJrLmNwcApAQCAtMTQsMTYgKzE0LDIwIEBACiAgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KICAqLwogCi0jaW5jbHVkZSAiYmVuY2htYXJrLmgiCi0KICNpbmNsdWRlIDxmZW52Lmg+CiAjaW5jbHVkZSA8bWF0aC5oPgogCi0vLyBBdm9pZCBvcHRpbWl6YXRpb24uCi1kb3VibGUgZDsKLWRvdWJsZSB2OworI2luY2x1ZGUgPGJlbmNobWFyay9CZW5jaG1hcmsuaD4KIAotc3RhdGljIHZvaWQgQk1fbWF0aF9zcXJ0KGludCBpdGVycykgeworI2RlZmluZSBBVF9DT01NT05fVkFMUyBcCisgICAgQXJnKDEyMzQuMCktPkFyZyhuYW4oIiIpKS0+QXJnKEhVR0VfVkFMKS0+QXJnKDAuMCkKKworLy8gQXZvaWQgb3B0aW1pemF0aW9uLgordm9sYXRpbGUgZG91YmxlIGQ7Cit2b2xhdGlsZSBkb3VibGUgdjsKKworQkVOQ0hNQVJLX05PX0FSRyhCTV9tYXRoX3NxcnQpOwordm9pZCBCTV9tYXRoX3NxcnQ6OlJ1bihpbnQgaXRlcnMpIHsKICAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKIAogICBkID0gMC4wOwpAQCAtMzQsOSArMzgsOSBAQAogCiAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKIH0KLUJFTkNITUFSSyhCTV9tYXRoX3NxcnQpOwogCi1zdGF0aWMgdm9pZCBCTV9tYXRoX2xvZzEwKGludCBpdGVycykgeworQkVOQ0hNQVJLX05PX0FSRyhCTV9tYXRoX2xvZzEwKTsKK3ZvaWQgQk1fbWF0aF9sb2cxMDo6UnVuKGludCBpdGVycykgewogICBTdGFydEJlbmNobWFya1RpbWluZygpOwogCiAgIGQgPSAwLjA7CkBAIC00Nyw5ICs1MSw5IEBACiAKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwogfQotQkVOQ0hNQVJLKEJNX21hdGhfbG9nMTApOwogCi1zdGF0aWMgdm9pZCBCTV9tYXRoX2xvZ2IoaW50IGl0ZXJzKSB7CitCRU5DSE1BUktfTk9fQVJHKEJNX21hdGhfbG9nYik7Cit2b2lkIEJNX21hdGhfbG9nYjo6UnVuKGludCBpdGVycykgewogICBTdGFydEJlbmNobWFya1RpbWluZygpOwogCiAgIGQgPSAwLjA7CkBAIC02MCw2MSArNjQsMjIgQEAKIAogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CiB9Ci1CRU5DSE1BUksoQk1fbWF0aF9sb2diKTsKIAotc3RhdGljIHZvaWQgQk1fbWF0aF9pc2luZl9OT1JNQUwoaW50IGl0ZXJzKSB7CitCRU5DSE1BUktfV0lUSF9BUkcoQk1fbWF0aF9pc2luZiwgZG91YmxlKS0+QVRfQ09NTU9OX1ZBTFM7Cit2b2lkIEJNX21hdGhfaXNpbmY6OlJ1bihpbnQgaXRlcnMsIGRvdWJsZSB2YWx1ZSkgewogICBTdGFydEJlbmNobWFya1RpbWluZygpOwogCiAgIGQgPSAwLjA7Ci0gIHYgPSAxMjM0LjA7IC8vIEZQX05PUk1BTAorICB2ID0gdmFsdWU7CiAgIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7ICsraSkgewogICAgIGQgKz0gKGlzaW5mKSh2KTsKICAgfQogCiAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKIH0KLUJFTkNITUFSSyhCTV9tYXRoX2lzaW5mX05PUk1BTCk7CiAKLXN0YXRpYyB2b2lkIEJNX21hdGhfaXNpbmZfTkFOKGludCBpdGVycykgewotICBTdGFydEJlbmNobWFya1RpbWluZygpOwotCi0gIGQgPSAwLjA7Ci0gIHYgPSBuYW4oIiIpOyAvLyBGUF9OQU4KLSAgZm9yIChpbnQgaSA9IDA7IGkgPCBpdGVyczsgKytpKSB7Ci0gICAgZCArPSAoaXNpbmYpKHYpOwotICB9Ci0KLSAgU3RvcEJlbmNobWFya1RpbWluZygpOwotfQotQkVOQ0hNQVJLKEJNX21hdGhfaXNpbmZfTkFOKTsKLQotc3RhdGljIHZvaWQgQk1fbWF0aF9pc2luZl9JTkZJTklURShpbnQgaXRlcnMpIHsKLSAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKLQotICBkID0gMC4wOwotICB2ID0gSFVHRV9WQUw7IC8vIEZQX0lORklOSVRFCi0gIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7ICsraSkgewotICAgIGQgKz0gKGlzaW5mKSh2KTsKLSAgfQotCi0gIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKLX0KLUJFTkNITUFSSyhCTV9tYXRoX2lzaW5mX0lORklOSVRFKTsKLQotc3RhdGljIHZvaWQgQk1fbWF0aF9pc2luZl9aRVJPKGludCBpdGVycykgewotICBTdGFydEJlbmNobWFya1RpbWluZygpOwotCi0gIGQgPSAwLjA7Ci0gIHYgPSAwLjA7IC8vIEZQX1pFUk8KLSAgZm9yIChpbnQgaSA9IDA7IGkgPCBpdGVyczsgKytpKSB7Ci0gICAgZCArPSAoaXNpbmYpKHYpOwotICB9Ci0KLSAgU3RvcEJlbmNobWFya1RpbWluZygpOwotfQotQkVOQ0hNQVJLKEJNX21hdGhfaXNpbmZfWkVSTyk7Ci0KLXN0YXRpYyB2b2lkIEJNX21hdGhfc2luX2Zhc3QoaW50IGl0ZXJzKSB7CitCRU5DSE1BUktfTk9fQVJHKEJNX21hdGhfc2luX2Zhc3QpOwordm9pZCBCTV9tYXRoX3Npbl9mYXN0OjpSdW4oaW50IGl0ZXJzKSB7CiAgIFN0YXJ0QmVuY2htYXJrVGltaW5nKCk7CiAKICAgZCA9IDEuMDsKQEAgLTEyNCw5ICs4OSw5IEBACiAKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwogfQotQkVOQ0hNQVJLKEJNX21hdGhfc2luX2Zhc3QpOwogCi1zdGF0aWMgdm9pZCBCTV9tYXRoX3Npbl9mZXVwZGF0ZWVudihpbnQgaXRlcnMpIHsKK0JFTkNITUFSS19OT19BUkcoQk1fbWF0aF9zaW5fZmV1cGRhdGVlbnYpOwordm9pZCBCTV9tYXRoX3Npbl9mZXVwZGF0ZWVudjo6UnVuKGludCBpdGVycykgewogICBTdGFydEJlbmNobWFya1RpbWluZygpOwogCiAgIGQgPSAxLjA7CkBAIC0xNDAsOSArMTA1LDkgQEAKIAogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CiB9Ci1CRU5DSE1BUksoQk1fbWF0aF9zaW5fZmV1cGRhdGVlbnYpOwogCi1zdGF0aWMgdm9pZCBCTV9tYXRoX3Npbl9mZXNldGVudihpbnQgaXRlcnMpIHsKK0JFTkNITUFSS19OT19BUkcoQk1fbWF0aF9zaW5fZmVzZXRlbnYpOwordm9pZCBCTV9tYXRoX3Npbl9mZXNldGVudjo6UnVuKGludCBpdGVycykgewogICBTdGFydEJlbmNobWFya1RpbWluZygpOwogCiAgIGQgPSAxLjA7CkBAIC0xNTYsNTYgKzEyMSwxNiBAQAogCiAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKIH0KLUJFTkNITUFSSyhCTV9tYXRoX3Npbl9mZXNldGVudik7CiAKLXN0YXRpYyB2b2lkIEJNX21hdGhfZnBjbGFzc2lmeV9OT1JNQUwoaW50IGl0ZXJzKSB7CitCRU5DSE1BUktfV0lUSF9BUkcoQk1fbWF0aF9mcGNsYXNzaWZ5LCBkb3VibGUpLT5BVF9DT01NT05fVkFMUzsKK3ZvaWQgQk1fbWF0aF9mcGNsYXNzaWZ5OjpSdW4oaW50IGl0ZXJzLCBkb3VibGUgdmFsdWUpIHsKICAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKIAogICBkID0gMC4wOwotICB2ID0gMTIzNC4wOyAvLyBGUF9OT1JNQUwKKyAgdiA9IHZhbHVlOwogICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKICAgICBkICs9IGZwY2xhc3NpZnkodik7CiAgIH0KIAogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CiB9Ci1CRU5DSE1BUksoQk1fbWF0aF9mcGNsYXNzaWZ5X05PUk1BTCk7Ci0KLXN0YXRpYyB2b2lkIEJNX21hdGhfZnBjbGFzc2lmeV9OQU4oaW50IGl0ZXJzKSB7Ci0gIFN0YXJ0QmVuY2htYXJrVGltaW5nKCk7Ci0KLSAgZCA9IDAuMDsKLSAgdiA9IG5hbigiIik7IC8vIEZQX05BTgotICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKLSAgICBkICs9IGZwY2xhc3NpZnkodik7Ci0gIH0KLQotICBTdG9wQmVuY2htYXJrVGltaW5nKCk7Ci19Ci1CRU5DSE1BUksoQk1fbWF0aF9mcGNsYXNzaWZ5X05BTik7Ci0KLXN0YXRpYyB2b2lkIEJNX21hdGhfZnBjbGFzc2lmeV9JTkZJTklURShpbnQgaXRlcnMpIHsKLSAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKLQotICBkID0gMC4wOwotICB2ID0gSFVHRV9WQUw7IC8vIEZQX0lORklOSVRFCi0gIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7ICsraSkgewotICAgIGQgKz0gZnBjbGFzc2lmeSh2KTsKLSAgfQotCi0gIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKLX0KLUJFTkNITUFSSyhCTV9tYXRoX2ZwY2xhc3NpZnlfSU5GSU5JVEUpOwotCi1zdGF0aWMgdm9pZCBCTV9tYXRoX2ZwY2xhc3NpZnlfWkVSTyhpbnQgaXRlcnMpIHsKLSAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKLQotICBkID0gMC4wOwotICB2ID0gMC4wOyAvLyBGUF9aRVJPCi0gIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7ICsraSkgewotICAgIGQgKz0gZnBjbGFzc2lmeSh2KTsKLSAgfQotCi0gIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKLX0KLUJFTkNITUFSSyhCTV9tYXRoX2ZwY2xhc3NpZnlfWkVSTyk7CmRpZmYgLS1naXQgYS9iZW5jaG1hcmtzL3Byb3BlcnR5X2JlbmNobWFyay5jcHAgYi9iZW5jaG1hcmtzL3Byb3BlcnR5X2JlbmNobWFyay5jcHAKaW5kZXggMDgwMmI0Yy4uOTQ0Y2Q2OCAxMDA2NDQKLS0tIGEvYmVuY2htYXJrcy9wcm9wZXJ0eV9iZW5jaG1hcmsuY3BwCisrKyBiL2JlbmNobWFya3MvcHJvcGVydHlfYmVuY2htYXJrLmNwcApAQCAtMTQsMTkgKzE0LDIxIEBACiAgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KICAqLwogCi0jaW5jbHVkZSAiYmVuY2htYXJrLmgiCiAjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHN0ZGxpYi5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCisjaW5jbHVkZSA8c3RyaW5nPgorCisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorCiAjZGVmaW5lIF9SRUFMTFlfSU5DTFVERV9TWVNfX1NZU1RFTV9QUk9QRVJUSUVTX0hfCiAjaW5jbHVkZSA8c3lzL19zeXN0ZW1fcHJvcGVydGllcy5oPgogCi0jaW5jbHVkZSA8dmVjdG9yPgotI2luY2x1ZGUgPHN0cmluZz4KKyNpbmNsdWRlIDxiZW5jaG1hcmsvQmVuY2htYXJrLmg+CiAKLWV4dGVybiB2b2lkICpfX3N5c3RlbV9wcm9wZXJ0eV9hcmVhX187CitleHRlcm4gdm9pZCogX19zeXN0ZW1fcHJvcGVydHlfYXJlYV9fOwogCiAvLyBEbyBub3QgZXhjZWVkIDUxMiwgdGhhdCBpcyBhYm91dCB0aGUgbGFyZ2VzdCBudW1iZXIgb2YgcHJvcGVydGllcwogLy8gdGhhdCBjYW4gYmUgY3JlYXRlZCB3aXRoIHRoZSBjdXJyZW50IHByb3BlcnR5IGFyZWEgc2l6ZS4KQEAgLTM0LDIwMCArMzYsMTk4IEBACiAgICAgQXJnKDEpLT5BcmcoNCktPkFyZygxNiktPkFyZyg2NCktPkFyZygxMjgpLT5BcmcoMjU2KS0+QXJnKDUxMikKIAogc3RydWN0IExvY2FsUHJvcGVydHlUZXN0U3RhdGUgewotICAgIExvY2FsUHJvcGVydHlUZXN0U3RhdGUoaW50IG5wcm9wcykgOiBucHJvcHMobnByb3BzKSwgdmFsaWQoZmFsc2UpIHsKLSAgICAgICAgc3RhdGljIGNvbnN0IGNoYXIgcHJvcF9uYW1lX2NoYXJzW10gPSAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi1fLiI7CisgIExvY2FsUHJvcGVydHlUZXN0U3RhdGUoaW50IG5wcm9wcykgOiBucHJvcHMobnByb3BzKSwgdmFsaWQoZmFsc2UpIHsKKyAgICBzdGF0aWMgY29uc3QgY2hhciBwcm9wX25hbWVfY2hhcnNbXSA9ICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLV8uIjsKIAotICAgICAgICBjb25zdCBjaGFyKiBhbmRyb2lkX2RhdGEgPSBnZXRlbnYoIkFORFJPSURfREFUQSIpOwotICAgICAgICBpZiAoYW5kcm9pZF9kYXRhID09IE5VTEwpIHsKLSAgICAgICAgICBwcmludGYoIkFORFJPSURfREFUQSBlbnZpcm9ubWVudCB2YXJpYWJsZSBub3Qgc2V0XG4iKTsKLSAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KLSAgICAgICAgY2hhciBkaXJfdGVtcGxhdGVbUEFUSF9NQVhdOwotICAgICAgICBzbnByaW50ZihkaXJfdGVtcGxhdGUsIHNpemVvZihkaXJfdGVtcGxhdGUpLCAiJXMvbG9jYWwvdG1wL3Byb3AtWFhYWFhYIiwgYW5kcm9pZF9kYXRhKTsKLSAgICAgICAgY2hhciAqZGlybmFtZSA9IG1rZHRlbXAoZGlyX3RlbXBsYXRlKTsKLSAgICAgICAgaWYgKCFkaXJuYW1lKSB7Ci0gICAgICAgICAgICBwcmludGYoIm1ha2luZyB0ZW1wIGZpbGUgZm9yIHRlc3Qgc3RhdGUgZmFpbGVkIChpcyAlcy9sb2NhbC90bXAgd3JpdGFibGU/KTogJXNcbiIsCi0gICAgICAgICAgICAgICAgICAgYW5kcm9pZF9kYXRhLCBzdHJlcnJvcihlcnJubykpOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9Ci0KLSAgICAgICAgb2xkX3BhID0gX19zeXN0ZW1fcHJvcGVydHlfYXJlYV9fOwotICAgICAgICBfX3N5c3RlbV9wcm9wZXJ0eV9hcmVhX18gPSBOVUxMOwotCi0gICAgICAgIHBhX2Rpcm5hbWUgPSBkaXJuYW1lOwotICAgICAgICBwYV9maWxlbmFtZSA9IHBhX2Rpcm5hbWUgKyAiL19fcHJvcGVydGllc19fIjsKLQotICAgICAgICBfX3N5c3RlbV9wcm9wZXJ0eV9zZXRfZmlsZW5hbWUocGFfZmlsZW5hbWUuY19zdHIoKSk7Ci0gICAgICAgIF9fc3lzdGVtX3Byb3BlcnR5X2FyZWFfaW5pdCgpOwotCi0gICAgICAgIG5hbWVzID0gbmV3IGNoYXIqIFtucHJvcHNdOwotICAgICAgICBuYW1lX2xlbnMgPSBuZXcgaW50W25wcm9wc107Ci0gICAgICAgIHZhbHVlcyA9IG5ldyBjaGFyKiBbbnByb3BzXTsKLSAgICAgICAgdmFsdWVfbGVucyA9IG5ldyBpbnRbbnByb3BzXTsKLQotICAgICAgICBzcmFuZG9tKG5wcm9wcyk7Ci0KLSAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBucHJvcHM7IGkrKykgewotICAgICAgICAgICAgLy8gTWFrZSBzdXJlIHRoZSBuYW1lIGhhcyBhdCBsZWFzdCAxMCBjaGFyYWN0ZXJzIHRvIG1ha2UKLSAgICAgICAgICAgIC8vIGl0IHZlcnkgdW5saWtlbHkgdG8gZ2VuZXJhdGUgdGhlIHNhbWUgcmFuZG9tIG5hbWUuCi0gICAgICAgICAgICBuYW1lX2xlbnNbaV0gPSAocmFuZG9tKCkgJSAoUFJPUF9OQU1FX01BWCAtIDEwKSkgKyAxMDsKLSAgICAgICAgICAgIG5hbWVzW2ldID0gbmV3IGNoYXJbUFJPUF9OQU1FX01BWCArIDFdOwotICAgICAgICAgICAgc2l6ZV90IHByb3BfbmFtZV9sZW4gPSBzaXplb2YocHJvcF9uYW1lX2NoYXJzKSAtIDE7Ci0gICAgICAgICAgICBmb3IgKGludCBqID0gMDsgaiA8IG5hbWVfbGVuc1tpXTsgaisrKSB7Ci0gICAgICAgICAgICAgICAgaWYgKGogPT0gMCB8fCBuYW1lc1tpXVtqLTFdID09ICcuJyB8fCBqID09IG5hbWVfbGVuc1tpXSAtIDEpIHsKLSAgICAgICAgICAgICAgICAgICAgLy8gQ2VydGFpbiB2YWx1ZXMgYXJlIG5vdCBhbGxvd2VkOgotICAgICAgICAgICAgICAgICAgICAvLyAtIERvbid0IHN0YXJ0IG5hbWUgd2l0aCAnLicKLSAgICAgICAgICAgICAgICAgICAgLy8gLSBEb24ndCBhbGxvdyAnLicgdG8gYXBwZWFyIHR3aWNlIGluIGEgcm93Ci0gICAgICAgICAgICAgICAgICAgIC8vIC0gRG9uJ3QgYWxsb3cgdGhlIG5hbWUgdG8gZW5kIHdpdGggJy4nCi0gICAgICAgICAgICAgICAgICAgIC8vIFRoaXMgYXNzdW1lcyB0aGF0ICcuJyBpcyB0aGUgbGFzdCBjaGFyYWN0ZXIgaW4gdGhlCi0gICAgICAgICAgICAgICAgICAgIC8vIGFycmF5IHNvIHRoYXQgZGVjcmVtZW50aW5nIHRoZSBsZW5ndGggYnkgb25lIHJlbW92ZXMKLSAgICAgICAgICAgICAgICAgICAgLy8gdGhlIHZhbHVlIGZyb20gdGhlIHBvc3NpYmxlIHZhbHVlcy4KLSAgICAgICAgICAgICAgICAgICAgcHJvcF9uYW1lX2xlbi0tOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBuYW1lc1tpXVtqXSA9IHByb3BfbmFtZV9jaGFyc1tyYW5kb20oKSAlIHByb3BfbmFtZV9sZW5dOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgbmFtZXNbaV1bbmFtZV9sZW5zW2ldXSA9IDA7Ci0KLSAgICAgICAgICAgIC8vIE1ha2Ugc3VyZSB0aGUgdmFsdWUgY29udGFpbnMgYXQgbGVhc3QgMSBjaGFyYWN0ZXIuCi0gICAgICAgICAgICB2YWx1ZV9sZW5zW2ldID0gKHJhbmRvbSgpICUgKFBST1BfVkFMVUVfTUFYIC0gMSkpICsgMTsKLSAgICAgICAgICAgIHZhbHVlc1tpXSA9IG5ldyBjaGFyW1BST1BfVkFMVUVfTUFYXTsKLSAgICAgICAgICAgIGZvciAoaW50IGogPSAwOyBqIDwgdmFsdWVfbGVuc1tpXTsgaisrKSB7Ci0gICAgICAgICAgICAgICAgdmFsdWVzW2ldW2pdID0gcHJvcF9uYW1lX2NoYXJzW3JhbmRvbSgpICUgKHNpemVvZihwcm9wX25hbWVfY2hhcnMpIC0gMSldOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBpZiAoX19zeXN0ZW1fcHJvcGVydHlfYWRkKG5hbWVzW2ldLCBuYW1lX2xlbnNbaV0sIHZhbHVlc1tpXSwgdmFsdWVfbGVuc1tpXSkgPCAwKSB7Ci0gICAgICAgICAgICAgICAgcHJpbnRmKCJGYWlsZWQgdG8gYWRkIGEgcHJvcGVydHksIHRlcm1pbmF0aW5nLi4uXG4iKTsKLSAgICAgICAgICAgICAgICBwcmludGYoIiVzID0gJS4qc1xuIiwgbmFtZXNbaV0sIHZhbHVlX2xlbnNbaV0sIHZhbHVlc1tpXSk7Ci0gICAgICAgICAgICAgICAgZXhpdCgxKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotCi0gICAgICAgIHZhbGlkID0gdHJ1ZTsKKyAgICBjb25zdCBjaGFyKiBhbmRyb2lkX2RhdGEgPSBnZXRlbnYoIkFORFJPSURfREFUQSIpOworICAgIGlmIChhbmRyb2lkX2RhdGEgPT0gTlVMTCkgeworICAgICAgcHJpbnRmKCJBTkRST0lEX0RBVEEgZW52aXJvbm1lbnQgdmFyaWFibGUgbm90IHNldFxuIik7CisgICAgICByZXR1cm47CisgICAgfQorICAgIGNoYXIgZGlyX3RlbXBsYXRlW1BBVEhfTUFYXTsKKyAgICBzbnByaW50ZihkaXJfdGVtcGxhdGUsIHNpemVvZihkaXJfdGVtcGxhdGUpLCAiJXMvbG9jYWwvdG1wL3Byb3AtWFhYWFhYIiwgYW5kcm9pZF9kYXRhKTsKKyAgICBjaGFyKiBkaXJuYW1lID0gbWtkdGVtcChkaXJfdGVtcGxhdGUpOworICAgIGlmICghZGlybmFtZSkgeworICAgICAgcHJpbnRmKCJtYWtpbmcgdGVtcCBmaWxlIGZvciB0ZXN0IHN0YXRlIGZhaWxlZCAoaXMgJXMvbG9jYWwvdG1wIHdyaXRhYmxlPyk6ICVzXG4iLAorICAgICAgICAgICAgIGFuZHJvaWRfZGF0YSwgc3RyZXJyb3IoZXJybm8pKTsKKyAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICB+TG9jYWxQcm9wZXJ0eVRlc3RTdGF0ZSgpIHsKLSAgICAgICAgaWYgKCF2YWxpZCkKLSAgICAgICAgICAgIHJldHVybjsKKyAgICBvbGRfcGEgPSBfX3N5c3RlbV9wcm9wZXJ0eV9hcmVhX187CisgICAgX19zeXN0ZW1fcHJvcGVydHlfYXJlYV9fID0gTlVMTDsKIAotICAgICAgICBfX3N5c3RlbV9wcm9wZXJ0eV9hcmVhX18gPSBvbGRfcGE7CisgICAgcGFfZGlybmFtZSA9IGRpcm5hbWU7CisgICAgcGFfZmlsZW5hbWUgPSBwYV9kaXJuYW1lICsgIi9fX3Byb3BlcnRpZXNfXyI7CiAKLSAgICAgICAgX19zeXN0ZW1fcHJvcGVydHlfc2V0X2ZpbGVuYW1lKFBST1BfRklMRU5BTUUpOwotICAgICAgICB1bmxpbmsocGFfZmlsZW5hbWUuY19zdHIoKSk7Ci0gICAgICAgIHJtZGlyKHBhX2Rpcm5hbWUuY19zdHIoKSk7CisgICAgX19zeXN0ZW1fcHJvcGVydHlfc2V0X2ZpbGVuYW1lKHBhX2ZpbGVuYW1lLmNfc3RyKCkpOworICAgIF9fc3lzdGVtX3Byb3BlcnR5X2FyZWFfaW5pdCgpOwogCi0gICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbnByb3BzOyBpKyspIHsKLSAgICAgICAgICAgIGRlbGV0ZSBuYW1lc1tpXTsKLSAgICAgICAgICAgIGRlbGV0ZSB2YWx1ZXNbaV07CisgICAgbmFtZXMgPSBuZXcgY2hhciogW25wcm9wc107CisgICAgbmFtZV9sZW5zID0gbmV3IGludFtucHJvcHNdOworICAgIHZhbHVlcyA9IG5ldyBjaGFyKiBbbnByb3BzXTsKKyAgICB2YWx1ZV9sZW5zID0gbmV3IGludFtucHJvcHNdOworCisgICAgc3JhbmRvbShucHJvcHMpOworCisgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBucHJvcHM7IGkrKykgeworICAgICAgLy8gTWFrZSBzdXJlIHRoZSBuYW1lIGhhcyBhdCBsZWFzdCAxMCBjaGFyYWN0ZXJzIHRvIG1ha2UKKyAgICAgIC8vIGl0IHZlcnkgdW5saWtlbHkgdG8gZ2VuZXJhdGUgdGhlIHNhbWUgcmFuZG9tIG5hbWUuCisgICAgICBuYW1lX2xlbnNbaV0gPSAocmFuZG9tKCkgJSAoUFJPUF9OQU1FX01BWCAtIDEwKSkgKyAxMDsKKyAgICAgIG5hbWVzW2ldID0gbmV3IGNoYXJbUFJPUF9OQU1FX01BWCArIDFdOworICAgICAgc2l6ZV90IHByb3BfbmFtZV9sZW4gPSBzaXplb2YocHJvcF9uYW1lX2NoYXJzKSAtIDE7CisgICAgICBmb3IgKGludCBqID0gMDsgaiA8IG5hbWVfbGVuc1tpXTsgaisrKSB7CisgICAgICAgIGlmIChqID09IDAgfHwgbmFtZXNbaV1bai0xXSA9PSAnLicgfHwgaiA9PSBuYW1lX2xlbnNbaV0gLSAxKSB7CisgICAgICAgICAgLy8gQ2VydGFpbiB2YWx1ZXMgYXJlIG5vdCBhbGxvd2VkOgorICAgICAgICAgIC8vIC0gRG9uJ3Qgc3RhcnQgbmFtZSB3aXRoICcuJworICAgICAgICAgIC8vIC0gRG9uJ3QgYWxsb3cgJy4nIHRvIGFwcGVhciB0d2ljZSBpbiBhIHJvdworICAgICAgICAgIC8vIC0gRG9uJ3QgYWxsb3cgdGhlIG5hbWUgdG8gZW5kIHdpdGggJy4nCisgICAgICAgICAgLy8gVGhpcyBhc3N1bWVzIHRoYXQgJy4nIGlzIHRoZSBsYXN0IGNoYXJhY3RlciBpbiB0aGUKKyAgICAgICAgICAvLyBhcnJheSBzbyB0aGF0IGRlY3JlbWVudGluZyB0aGUgbGVuZ3RoIGJ5IG9uZSByZW1vdmVzCisgICAgICAgICAgLy8gdGhlIHZhbHVlIGZyb20gdGhlIHBvc3NpYmxlIHZhbHVlcy4KKyAgICAgICAgICBwcm9wX25hbWVfbGVuLS07CiAgICAgICAgIH0KLSAgICAgICAgZGVsZXRlW10gbmFtZXM7Ci0gICAgICAgIGRlbGV0ZVtdIG5hbWVfbGVuczsKLSAgICAgICAgZGVsZXRlW10gdmFsdWVzOwotICAgICAgICBkZWxldGVbXSB2YWx1ZV9sZW5zOworICAgICAgICBuYW1lc1tpXVtqXSA9IHByb3BfbmFtZV9jaGFyc1tyYW5kb20oKSAlIHByb3BfbmFtZV9sZW5dOworICAgICAgfQorICAgICAgbmFtZXNbaV1bbmFtZV9sZW5zW2ldXSA9IDA7CisKKyAgICAgIC8vIE1ha2Ugc3VyZSB0aGUgdmFsdWUgY29udGFpbnMgYXQgbGVhc3QgMSBjaGFyYWN0ZXIuCisgICAgICB2YWx1ZV9sZW5zW2ldID0gKHJhbmRvbSgpICUgKFBST1BfVkFMVUVfTUFYIC0gMSkpICsgMTsKKyAgICAgIHZhbHVlc1tpXSA9IG5ldyBjaGFyW1BST1BfVkFMVUVfTUFYXTsKKyAgICAgIGZvciAoaW50IGogPSAwOyBqIDwgdmFsdWVfbGVuc1tpXTsgaisrKSB7CisgICAgICAgIHZhbHVlc1tpXVtqXSA9IHByb3BfbmFtZV9jaGFyc1tyYW5kb20oKSAlIChzaXplb2YocHJvcF9uYW1lX2NoYXJzKSAtIDEpXTsKKyAgICAgIH0KKworICAgICAgaWYgKF9fc3lzdGVtX3Byb3BlcnR5X2FkZChuYW1lc1tpXSwgbmFtZV9sZW5zW2ldLCB2YWx1ZXNbaV0sIHZhbHVlX2xlbnNbaV0pIDwgMCkgeworICAgICAgICBwcmludGYoIkZhaWxlZCB0byBhZGQgYSBwcm9wZXJ0eSwgdGVybWluYXRpbmcuLi5cbiIpOworICAgICAgICBwcmludGYoIiVzID0gJS4qc1xuIiwgbmFtZXNbaV0sIHZhbHVlX2xlbnNbaV0sIHZhbHVlc1tpXSk7CisgICAgICAgIGV4aXQoMSk7CisgICAgICB9CiAgICAgfQorCisgICAgdmFsaWQgPSB0cnVlOworICB9CisKKyAgfkxvY2FsUHJvcGVydHlUZXN0U3RhdGUoKSB7CisgICAgaWYgKCF2YWxpZCkKKyAgICAgIHJldHVybjsKKworICAgIF9fc3lzdGVtX3Byb3BlcnR5X2FyZWFfXyA9IG9sZF9wYTsKKworICAgIF9fc3lzdGVtX3Byb3BlcnR5X3NldF9maWxlbmFtZShQUk9QX0ZJTEVOQU1FKTsKKyAgICB1bmxpbmsocGFfZmlsZW5hbWUuY19zdHIoKSk7CisgICAgcm1kaXIocGFfZGlybmFtZS5jX3N0cigpKTsKKworICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbnByb3BzOyBpKyspIHsKKyAgICAgIGRlbGV0ZSBuYW1lc1tpXTsKKyAgICAgIGRlbGV0ZSB2YWx1ZXNbaV07CisgICAgfQorICAgIGRlbGV0ZVtdIG5hbWVzOworICAgIGRlbGV0ZVtdIG5hbWVfbGVuczsKKyAgICBkZWxldGVbXSB2YWx1ZXM7CisgICAgZGVsZXRlW10gdmFsdWVfbGVuczsKKyAgfQogcHVibGljOgotICAgIGNvbnN0IGludCBucHJvcHM7Ci0gICAgY2hhciAqKm5hbWVzOwotICAgIGludCAqbmFtZV9sZW5zOwotICAgIGNoYXIgKip2YWx1ZXM7Ci0gICAgaW50ICp2YWx1ZV9sZW5zOwotICAgIGJvb2wgdmFsaWQ7CisgIGNvbnN0IGludCBucHJvcHM7CisgIGNoYXIqKiBuYW1lczsKKyAgaW50KiBuYW1lX2xlbnM7CisgIGNoYXIqKiB2YWx1ZXM7CisgIGludCogdmFsdWVfbGVuczsKKyAgYm9vbCB2YWxpZDsKIAogcHJpdmF0ZToKLSAgICBzdGQ6OnN0cmluZyBwYV9kaXJuYW1lOwotICAgIHN0ZDo6c3RyaW5nIHBhX2ZpbGVuYW1lOwotICAgIHZvaWQgKm9sZF9wYTsKKyAgc3RkOjpzdHJpbmcgcGFfZGlybmFtZTsKKyAgc3RkOjpzdHJpbmcgcGFfZmlsZW5hbWU7CisgIHZvaWQqIG9sZF9wYTsKIH07CiAKLXN0YXRpYyB2b2lkIEJNX3Byb3BlcnR5X2dldChpbnQgaXRlcnMsIGludCBucHJvcHMpCi17Ci0gICAgU3RvcEJlbmNobWFya1RpbWluZygpOworQkVOQ0hNQVJLX1dJVEhfQVJHKEJNX3Byb3BlcnR5X2dldCwgaW50KS0+VEVTVF9OVU1fUFJPUFM7Cit2b2lkIEJNX3Byb3BlcnR5X2dldDo6UnVuKGludCBpdGVycywgaW50IG5wcm9wcykgeworICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CiAKLSAgICBMb2NhbFByb3BlcnR5VGVzdFN0YXRlIHBhKG5wcm9wcyk7Ci0gICAgY2hhciB2YWx1ZVtQUk9QX1ZBTFVFX01BWF07CisgIExvY2FsUHJvcGVydHlUZXN0U3RhdGUgcGEobnByb3BzKTsKKyAgY2hhciB2YWx1ZVtQUk9QX1ZBTFVFX01BWF07CiAKLSAgICBpZiAoIXBhLnZhbGlkKQotICAgICAgICByZXR1cm47CisgIGlmICghcGEudmFsaWQpCisgICAgcmV0dXJuOwogCi0gICAgc3JhbmRvbShpdGVycyAqIG5wcm9wcyk7CisgIHNyYW5kb20oaXRlcnMgKiBucHJvcHMpOwogCi0gICAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKKyAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKIAotICAgIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7IGkrKykgewotICAgICAgICBfX3N5c3RlbV9wcm9wZXJ0eV9nZXQocGEubmFtZXNbcmFuZG9tKCkgJSBucHJvcHNdLCB2YWx1ZSk7Ci0gICAgfQotICAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKKyAgZm9yIChpbnQgaSA9IDA7IGkgPCBpdGVyczsgaSsrKSB7CisgICAgX19zeXN0ZW1fcHJvcGVydHlfZ2V0KHBhLm5hbWVzW3JhbmRvbSgpICUgbnByb3BzXSwgdmFsdWUpOworICB9CisgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKIH0KLUJFTkNITUFSSyhCTV9wcm9wZXJ0eV9nZXQpLT5URVNUX05VTV9QUk9QUzsKIAotc3RhdGljIHZvaWQgQk1fcHJvcGVydHlfZmluZChpbnQgaXRlcnMsIGludCBucHJvcHMpCi17Ci0gICAgU3RvcEJlbmNobWFya1RpbWluZygpOworQkVOQ0hNQVJLX1dJVEhfQVJHKEJNX3Byb3BlcnR5X2ZpbmQsIGludCktPlRFU1RfTlVNX1BST1BTOwordm9pZCBCTV9wcm9wZXJ0eV9maW5kOjpSdW4oaW50IGl0ZXJzLCBpbnQgbnByb3BzKSB7CisgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKIAotICAgIExvY2FsUHJvcGVydHlUZXN0U3RhdGUgcGEobnByb3BzKTsKKyAgTG9jYWxQcm9wZXJ0eVRlc3RTdGF0ZSBwYShucHJvcHMpOwogCi0gICAgaWYgKCFwYS52YWxpZCkKLSAgICAgICAgcmV0dXJuOworICBpZiAoIXBhLnZhbGlkKQorICAgIHJldHVybjsKIAotICAgIHNyYW5kb20oaXRlcnMgKiBucHJvcHMpOworICBzcmFuZG9tKGl0ZXJzICogbnByb3BzKTsKIAotICAgIFN0YXJ0QmVuY2htYXJrVGltaW5nKCk7CisgIFN0YXJ0QmVuY2htYXJrVGltaW5nKCk7CiAKLSAgICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyBpKyspIHsKLSAgICAgICAgX19zeXN0ZW1fcHJvcGVydHlfZmluZChwYS5uYW1lc1tyYW5kb20oKSAlIG5wcm9wc10pOwotICAgIH0KLSAgICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CisgIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7IGkrKykgeworICAgIF9fc3lzdGVtX3Byb3BlcnR5X2ZpbmQocGEubmFtZXNbcmFuZG9tKCkgJSBucHJvcHNdKTsKKyAgfQorICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CiB9Ci1CRU5DSE1BUksoQk1fcHJvcGVydHlfZmluZCktPlRFU1RfTlVNX1BST1BTOwogCi1zdGF0aWMgdm9pZCBCTV9wcm9wZXJ0eV9yZWFkKGludCBpdGVycywgaW50IG5wcm9wcykKLXsKLSAgICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CitCRU5DSE1BUktfV0lUSF9BUkcoQk1fcHJvcGVydHlfcmVhZCwgaW50KS0+VEVTVF9OVU1fUFJPUFM7Cit2b2lkIEJNX3Byb3BlcnR5X3JlYWQ6OlJ1bihpbnQgaXRlcnMsIGludCBucHJvcHMpIHsKKyAgU3RvcEJlbmNobWFya1RpbWluZygpOwogCi0gICAgTG9jYWxQcm9wZXJ0eVRlc3RTdGF0ZSBwYShucHJvcHMpOworICBMb2NhbFByb3BlcnR5VGVzdFN0YXRlIHBhKG5wcm9wcyk7CiAKLSAgICBpZiAoIXBhLnZhbGlkKQotICAgICAgICByZXR1cm47CisgIGlmICghcGEudmFsaWQpCisgICAgcmV0dXJuOwogCi0gICAgc3JhbmRvbShpdGVycyAqIG5wcm9wcyk7Ci0gICAgY29uc3QgcHJvcF9pbmZvKiogcGluZm8gPSBuZXcgY29uc3QgcHJvcF9pbmZvKltpdGVyc107Ci0gICAgY2hhciBwcm9wdmFsdWVbUFJPUF9WQUxVRV9NQVhdOworICBzcmFuZG9tKGl0ZXJzICogbnByb3BzKTsKKyAgY29uc3QgcHJvcF9pbmZvKiogcGluZm8gPSBuZXcgY29uc3QgcHJvcF9pbmZvKltpdGVyc107CisgIGNoYXIgcHJvcHZhbHVlW1BST1BfVkFMVUVfTUFYXTsKIAotICAgIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7IGkrKykgewotICAgICAgICBwaW5mb1tpXSA9IF9fc3lzdGVtX3Byb3BlcnR5X2ZpbmQocGEubmFtZXNbcmFuZG9tKCkgJSBucHJvcHNdKTsKLSAgICB9CisgIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7IGkrKykgeworICAgIHBpbmZvW2ldID0gX19zeXN0ZW1fcHJvcGVydHlfZmluZChwYS5uYW1lc1tyYW5kb20oKSAlIG5wcm9wc10pOworICB9CiAKLSAgICBTdGFydEJlbmNobWFya1RpbWluZygpOwotICAgIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7IGkrKykgewotICAgICAgICBfX3N5c3RlbV9wcm9wZXJ0eV9yZWFkKHBpbmZvW2ldLCAwLCBwcm9wdmFsdWUpOwotICAgIH0KLSAgICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CisgIFN0YXJ0QmVuY2htYXJrVGltaW5nKCk7CisgIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7IGkrKykgeworICAgIF9fc3lzdGVtX3Byb3BlcnR5X3JlYWQocGluZm9baV0sIDAsIHByb3B2YWx1ZSk7CisgIH0KKyAgU3RvcEJlbmNobWFya1RpbWluZygpOwogCi0gICAgZGVsZXRlW10gcGluZm87CisgIGRlbGV0ZVtdIHBpbmZvOwogfQotQkVOQ0hNQVJLKEJNX3Byb3BlcnR5X3JlYWQpLT5URVNUX05VTV9QUk9QUzsKIAotc3RhdGljIHZvaWQgQk1fcHJvcGVydHlfc2VyaWFsKGludCBpdGVycywgaW50IG5wcm9wcykKLXsKLSAgICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CitCRU5DSE1BUktfV0lUSF9BUkcoQk1fcHJvcGVydHlfc2VyaWFsLCBpbnQpLT5URVNUX05VTV9QUk9QUzsKK3ZvaWQgQk1fcHJvcGVydHlfc2VyaWFsOjpSdW4oaW50IGl0ZXJzLCBpbnQgbnByb3BzKSB7CisgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKIAotICAgIExvY2FsUHJvcGVydHlUZXN0U3RhdGUgcGEobnByb3BzKTsKKyAgTG9jYWxQcm9wZXJ0eVRlc3RTdGF0ZSBwYShucHJvcHMpOwogCi0gICAgaWYgKCFwYS52YWxpZCkKLSAgICAgICAgcmV0dXJuOworICBpZiAoIXBhLnZhbGlkKQorICAgIHJldHVybjsKIAotICAgIHNyYW5kb20oaXRlcnMgKiBucHJvcHMpOwotICAgIGNvbnN0IHByb3BfaW5mbyoqIHBpbmZvID0gbmV3IGNvbnN0IHByb3BfaW5mbypbaXRlcnNdOworICBzcmFuZG9tKGl0ZXJzICogbnByb3BzKTsKKyAgY29uc3QgcHJvcF9pbmZvKiogcGluZm8gPSBuZXcgY29uc3QgcHJvcF9pbmZvKltpdGVyc107CiAKLSAgICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyBpKyspIHsKLSAgICAgICAgcGluZm9baV0gPSBfX3N5c3RlbV9wcm9wZXJ0eV9maW5kKHBhLm5hbWVzW3JhbmRvbSgpICUgbnByb3BzXSk7Ci0gICAgfQorICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyBpKyspIHsKKyAgICBwaW5mb1tpXSA9IF9fc3lzdGVtX3Byb3BlcnR5X2ZpbmQocGEubmFtZXNbcmFuZG9tKCkgJSBucHJvcHNdKTsKKyAgfQogCi0gICAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKLSAgICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyBpKyspIHsKLSAgICAgICAgX19zeXN0ZW1fcHJvcGVydHlfc2VyaWFsKHBpbmZvW2ldKTsKLSAgICB9Ci0gICAgU3RvcEJlbmNobWFya1RpbWluZygpOworICBTdGFydEJlbmNobWFya1RpbWluZygpOworICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyBpKyspIHsKKyAgICBfX3N5c3RlbV9wcm9wZXJ0eV9zZXJpYWwocGluZm9baV0pOworICB9CisgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKIAotICAgIGRlbGV0ZVtdIHBpbmZvOworICBkZWxldGVbXSBwaW5mbzsKIH0KLUJFTkNITUFSSyhCTV9wcm9wZXJ0eV9zZXJpYWwpLT5URVNUX05VTV9QUk9QUzsKKworI2VuZGlmICAvLyBfX0JJT05JQ19fCmRpZmYgLS1naXQgYS9iZW5jaG1hcmtzL3B0aHJlYWRfYmVuY2htYXJrLmNwcCBiL2JlbmNobWFya3MvcHRocmVhZF9iZW5jaG1hcmsuY3BwCmluZGV4IGMwMTBkZDIuLmFkMzFlN2UgMTAwNjQ0Ci0tLSBhL2JlbmNobWFya3MvcHRocmVhZF9iZW5jaG1hcmsuY3BwCisrKyBiL2JlbmNobWFya3MvcHRocmVhZF9iZW5jaG1hcmsuY3BwCkBAIC0xNCwxNCArMTQsMTUgQEAKICAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgogICovCiAKLSNpbmNsdWRlICJiZW5jaG1hcmsuaCIKLQogI2luY2x1ZGUgPHB0aHJlYWQuaD4KIAorI2luY2x1ZGUgPGJlbmNobWFyay9CZW5jaG1hcmsuaD4KKwogLy8gU3RvcCBHQ0Mgb3B0aW1pemluZyBvdXQgb3VyIHB1cmUgZnVuY3Rpb24uCiAvKiBNdXN0IG5vdCBiZSBzdGF0aWMhICovIHB0aHJlYWRfdCAoKnB0aHJlYWRfc2VsZl9mcCkoKSA9IHB0aHJlYWRfc2VsZjsKIAotc3RhdGljIHZvaWQgQk1fcHRocmVhZF9zZWxmKGludCBpdGVycykgeworQkVOQ0hNQVJLX05PX0FSRyhCTV9wdGhyZWFkX3NlbGYpOwordm9pZCBCTV9wdGhyZWFkX3NlbGY6OlJ1bihpbnQgaXRlcnMpIHsKICAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKIAogICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKQEAgLTMwLDkgKzMxLDkgQEAKIAogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CiB9Ci1CRU5DSE1BUksoQk1fcHRocmVhZF9zZWxmKTsKIAotc3RhdGljIHZvaWQgQk1fcHRocmVhZF9nZXRzcGVjaWZpYyhpbnQgaXRlcnMpIHsKK0JFTkNITUFSS19OT19BUkcoQk1fcHRocmVhZF9nZXRzcGVjaWZpYyk7Cit2b2lkIEJNX3B0aHJlYWRfZ2V0c3BlY2lmaWM6OlJ1bihpbnQgaXRlcnMpIHsKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwogICBwdGhyZWFkX2tleV90IGtleTsKICAgcHRocmVhZF9rZXlfY3JlYXRlKCZrZXksIE5VTEwpOwpAQCAtNDUsMTIgKzQ2LDI3IEBACiAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKICAgcHRocmVhZF9rZXlfZGVsZXRlKGtleSk7CiB9Ci1CRU5DSE1BUksoQk1fcHRocmVhZF9nZXRzcGVjaWZpYyk7CisKK0JFTkNITUFSS19OT19BUkcoQk1fcHRocmVhZF9zZXRzcGVjaWZpYyk7Cit2b2lkIEJNX3B0aHJlYWRfc2V0c3BlY2lmaWM6OlJ1bihpbnQgaXRlcnMpIHsKKyAgU3RvcEJlbmNobWFya1RpbWluZygpOworICBwdGhyZWFkX2tleV90IGtleTsKKyAgcHRocmVhZF9rZXlfY3JlYXRlKCZrZXksIE5VTEwpOworICBTdGFydEJlbmNobWFya1RpbWluZygpOworCisgIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7ICsraSkgeworICAgIHB0aHJlYWRfc2V0c3BlY2lmaWMoa2V5LCBOVUxMKTsKKyAgfQorCisgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKKyAgcHRocmVhZF9rZXlfZGVsZXRlKGtleSk7Cit9CiAKIHN0YXRpYyB2b2lkIER1bW15UHRocmVhZE9uY2VJbml0RnVuY3Rpb24oKSB7CiB9CiAKLXN0YXRpYyB2b2lkIEJNX3B0aHJlYWRfb25jZShpbnQgaXRlcnMpIHsKK0JFTkNITUFSS19OT19BUkcoQk1fcHRocmVhZF9vbmNlKTsKK3ZvaWQgQk1fcHRocmVhZF9vbmNlOjpSdW4oaW50IGl0ZXJzKSB7CiAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKICAgcHRocmVhZF9vbmNlX3Qgb25jZSA9IFBUSFJFQURfT05DRV9JTklUOwogICBwdGhyZWFkX29uY2UoJm9uY2UsIER1bW15UHRocmVhZE9uY2VJbml0RnVuY3Rpb24pOwpAQCAtNjIsOSArNzgsOSBAQAogCiAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKIH0KLUJFTkNITUFSSyhCTV9wdGhyZWFkX29uY2UpOwogCi1zdGF0aWMgdm9pZCBCTV9wdGhyZWFkX211dGV4X2xvY2soaW50IGl0ZXJzKSB7CitCRU5DSE1BUktfTk9fQVJHKEJNX3B0aHJlYWRfbXV0ZXhfbG9jayk7Cit2b2lkIEJNX3B0aHJlYWRfbXV0ZXhfbG9jazo6UnVuKGludCBpdGVycykgewogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CiAgIHB0aHJlYWRfbXV0ZXhfdCBtdXRleCA9IFBUSFJFQURfTVVURVhfSU5JVElBTElaRVI7CiAgIFN0YXJ0QmVuY2htYXJrVGltaW5nKCk7CkBAIC03NiwxMSArOTIsMTEgQEAKIAogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CiB9Ci1CRU5DSE1BUksoQk1fcHRocmVhZF9tdXRleF9sb2NrKTsKIAotc3RhdGljIHZvaWQgQk1fcHRocmVhZF9tdXRleF9sb2NrX0VSUk9SQ0hFQ0soaW50IGl0ZXJzKSB7CitCRU5DSE1BUktfTk9fQVJHKEJNX3B0aHJlYWRfbXV0ZXhfbG9ja19FUlJPUkNIRUNLKTsKK3ZvaWQgQk1fcHRocmVhZF9tdXRleF9sb2NrX0VSUk9SQ0hFQ0s6OlJ1bihpbnQgaXRlcnMpIHsKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwotICBwdGhyZWFkX211dGV4X3QgbXV0ZXggPSBQVEhSRUFEX0VSUk9SQ0hFQ0tfTVVURVhfSU5JVElBTElaRVI7CisgIHB0aHJlYWRfbXV0ZXhfdCBtdXRleCA9IFBUSFJFQURfRVJST1JDSEVDS19NVVRFWF9JTklUSUFMSVpFUl9OUDsKICAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKIAogICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKQEAgLTkwLDExICsxMDYsMTEgQEAKIAogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CiB9Ci1CRU5DSE1BUksoQk1fcHRocmVhZF9tdXRleF9sb2NrX0VSUk9SQ0hFQ0spOwogCi1zdGF0aWMgdm9pZCBCTV9wdGhyZWFkX211dGV4X2xvY2tfUkVDVVJTSVZFKGludCBpdGVycykgeworQkVOQ0hNQVJLX05PX0FSRyhCTV9wdGhyZWFkX211dGV4X2xvY2tfUkVDVVJTSVZFKTsKK3ZvaWQgQk1fcHRocmVhZF9tdXRleF9sb2NrX1JFQ1VSU0lWRTo6UnVuKGludCBpdGVycykgewogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7Ci0gIHB0aHJlYWRfbXV0ZXhfdCBtdXRleCA9IFBUSFJFQURfUkVDVVJTSVZFX01VVEVYX0lOSVRJQUxJWkVSOworICBwdGhyZWFkX211dGV4X3QgbXV0ZXggPSBQVEhSRUFEX1JFQ1VSU0lWRV9NVVRFWF9JTklUSUFMSVpFUl9OUDsKICAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKIAogICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKQEAgLTEwNCw0ICsxMjAsMTE0IEBACiAKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwogfQotQkVOQ0hNQVJLKEJNX3B0aHJlYWRfbXV0ZXhfbG9ja19SRUNVUlNJVkUpOworCitCRU5DSE1BUktfTk9fQVJHKEJNX3B0aHJlYWRfcndsb2NrX3JlYWQpOwordm9pZCBCTV9wdGhyZWFkX3J3bG9ja19yZWFkOjpSdW4oaW50IGl0ZXJzKSB7CisgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKKyAgcHRocmVhZF9yd2xvY2tfdCBsb2NrOworICBwdGhyZWFkX3J3bG9ja19pbml0KCZsb2NrLCBOVUxMKTsKKyAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKKworICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKKyAgICBwdGhyZWFkX3J3bG9ja19yZGxvY2soJmxvY2spOworICAgIHB0aHJlYWRfcndsb2NrX3VubG9jaygmbG9jayk7CisgIH0KKworICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CisgIHB0aHJlYWRfcndsb2NrX2Rlc3Ryb3koJmxvY2spOworfQorCitCRU5DSE1BUktfTk9fQVJHKEJNX3B0aHJlYWRfcndsb2NrX3dyaXRlKTsKK3ZvaWQgQk1fcHRocmVhZF9yd2xvY2tfd3JpdGU6OlJ1bihpbnQgaXRlcnMpIHsKKyAgU3RvcEJlbmNobWFya1RpbWluZygpOworICBwdGhyZWFkX3J3bG9ja190IGxvY2s7CisgIHB0aHJlYWRfcndsb2NrX2luaXQoJmxvY2ssIE5VTEwpOworICBTdGFydEJlbmNobWFya1RpbWluZygpOworCisgIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7ICsraSkgeworICAgIHB0aHJlYWRfcndsb2NrX3dybG9jaygmbG9jayk7CisgICAgcHRocmVhZF9yd2xvY2tfdW5sb2NrKCZsb2NrKTsKKyAgfQorCisgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKKyAgcHRocmVhZF9yd2xvY2tfZGVzdHJveSgmbG9jayk7Cit9CisKK3N0YXRpYyB2b2lkKiBJZGxlVGhyZWFkKHZvaWQqKSB7CisgIHJldHVybiBOVUxMOworfQorCitCRU5DSE1BUktfTk9fQVJHKEJNX3B0aHJlYWRfY3JlYXRlKTsKK3ZvaWQgQk1fcHRocmVhZF9jcmVhdGU6OlJ1bihpbnQgaXRlcnMpIHsKKyAgU3RvcEJlbmNobWFya1RpbWluZygpOworICBwdGhyZWFkX3QgdGhyZWFkOworCisgIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7ICsraSkgeworICAgIFN0YXJ0QmVuY2htYXJrVGltaW5nKCk7CisgICAgcHRocmVhZF9jcmVhdGUoJnRocmVhZCwgTlVMTCwgSWRsZVRocmVhZCwgTlVMTCk7CisgICAgU3RvcEJlbmNobWFya1RpbWluZygpOworICAgIHB0aHJlYWRfam9pbih0aHJlYWQsIE5VTEwpOworICB9Cit9CisKK3N0YXRpYyB2b2lkKiBSdW5UaHJlYWQodm9pZCogYXJnKSB7CisgIDo6dGVzdGluZzo6QmVuY2htYXJrKiBiZW5jaG1hcmsgPSByZWludGVycHJldF9jYXN0PDo6dGVzdGluZzo6QmVuY2htYXJrKj4oYXJnKTsKKyAgYmVuY2htYXJrLT5TdG9wQmVuY2htYXJrVGltaW5nKCk7CisgIHJldHVybiBOVUxMOworfQorCitCRU5DSE1BUktfTk9fQVJHKEJNX3B0aHJlYWRfY3JlYXRlX2FuZF9ydW4pOwordm9pZCBCTV9wdGhyZWFkX2NyZWF0ZV9hbmRfcnVuOjpSdW4oaW50IGl0ZXJzKSB7CisgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKKyAgcHRocmVhZF90IHRocmVhZDsKKworICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKKyAgICBTdGFydEJlbmNobWFya1RpbWluZygpOworICAgIHB0aHJlYWRfY3JlYXRlKCZ0aHJlYWQsIE5VTEwsIFJ1blRocmVhZCwgdGhpcyk7CisgICAgcHRocmVhZF9qb2luKHRocmVhZCwgTlVMTCk7CisgIH0KK30KKworc3RhdGljIHZvaWQqIEV4aXRUaHJlYWQodm9pZCogYXJnKSB7CisgIDo6dGVzdGluZzo6QmVuY2htYXJrKiBiZW5jaG1hcmsgPSByZWludGVycHJldF9jYXN0PDo6dGVzdGluZzo6QmVuY2htYXJrKj4oYXJnKTsKKyAgYmVuY2htYXJrLT5TdGFydEJlbmNobWFya1RpbWluZygpOworICBwdGhyZWFkX2V4aXQoTlVMTCk7Cit9CisKK0JFTkNITUFSS19OT19BUkcoQk1fcHRocmVhZF9leGl0X2FuZF9qb2luKTsKK3ZvaWQgQk1fcHRocmVhZF9leGl0X2FuZF9qb2luOjpSdW4oaW50IGl0ZXJzKSB7CisgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKKyAgcHRocmVhZF90IHRocmVhZDsKKworICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKKyAgICBwdGhyZWFkX2NyZWF0ZSgmdGhyZWFkLCBOVUxMLCBFeGl0VGhyZWFkLCB0aGlzKTsKKyAgICBwdGhyZWFkX2pvaW4odGhyZWFkLCBOVUxMKTsKKyAgICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CisgIH0KK30KKworQkVOQ0hNQVJLX05PX0FSRyhCTV9wdGhyZWFkX2tleV9jcmVhdGUpOwordm9pZCBCTV9wdGhyZWFkX2tleV9jcmVhdGU6OlJ1bihpbnQgaXRlcnMpIHsKKyAgU3RvcEJlbmNobWFya1RpbWluZygpOworICBwdGhyZWFkX2tleV90IGtleTsKKworICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKKyAgICBTdGFydEJlbmNobWFya1RpbWluZygpOworICAgIHB0aHJlYWRfa2V5X2NyZWF0ZSgma2V5LCBOVUxMKTsKKyAgICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CisgICAgcHRocmVhZF9rZXlfZGVsZXRlKGtleSk7CisgIH0KK30KKworQkVOQ0hNQVJLX05PX0FSRyhCTV9wdGhyZWFkX2tleV9kZWxldGUpOwordm9pZCBCTV9wdGhyZWFkX2tleV9kZWxldGU6OlJ1bihpbnQgaXRlcnMpIHsKKyAgU3RvcEJlbmNobWFya1RpbWluZygpOworICBwdGhyZWFkX2tleV90IGtleTsKKworICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKKyAgICBwdGhyZWFkX2tleV9jcmVhdGUoJmtleSwgTlVMTCk7CisgICAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKKyAgICBwdGhyZWFkX2tleV9kZWxldGUoa2V5KTsKKyAgICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CisgIH0KK30KZGlmZiAtLWdpdCBhL2JlbmNobWFya3Mvc2VtYXBob3JlX2JlbmNobWFyay5jcHAgYi9iZW5jaG1hcmtzL3NlbWFwaG9yZV9iZW5jaG1hcmsuY3BwCmluZGV4IGExMWZjYzEuLjhkZDU2ODQgMTAwNjQ0Ci0tLSBhL2JlbmNobWFya3Mvc2VtYXBob3JlX2JlbmNobWFyay5jcHAKKysrIGIvYmVuY2htYXJrcy9zZW1hcGhvcmVfYmVuY2htYXJrLmNwcApAQCAtMTQsMTEgKzE0LDE1IEBACiAgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KICAqLwogCi0jaW5jbHVkZSAiYmVuY2htYXJrLmgiCi0KKyNpbmNsdWRlIDxwdGhyZWFkLmg+CiAjaW5jbHVkZSA8c2VtYXBob3JlLmg+CisjaW5jbHVkZSA8c3RkYXRvbWljLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KIAotc3RhdGljIHZvaWQgQk1fc2VtYXBob3JlX3NlbV9nZXR2YWx1ZShpbnQgaXRlcnMpIHsKKyNpbmNsdWRlIDxiZW5jaG1hcmsvQmVuY2htYXJrLmg+CisKK0JFTkNITUFSS19OT19BUkcoQk1fc2VtYXBob3JlX3NlbV9nZXR2YWx1ZSk7Cit2b2lkIEJNX3NlbWFwaG9yZV9zZW1fZ2V0dmFsdWU6OlJ1bihpbnQgaXRlcnMpIHsKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwogICBzZW1fdCBzZW1hcGhvcmU7CiAgIHNlbV9pbml0KCZzZW1hcGhvcmUsIDEsIDEpOwpAQCAtMzEsOSArMzUsOSBAQAogCiAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKIH0KLUJFTkNITUFSSyhCTV9zZW1hcGhvcmVfc2VtX2dldHZhbHVlKTsKIAotc3RhdGljIHZvaWQgQk1fc2VtYXBob3JlX3NlbV93YWl0X3NlbV9wb3N0KGludCBpdGVycykgeworQkVOQ0hNQVJLX05PX0FSRyhCTV9zZW1hcGhvcmVfc2VtX3dhaXRfc2VtX3Bvc3QpOwordm9pZCBCTV9zZW1hcGhvcmVfc2VtX3dhaXRfc2VtX3Bvc3Q6OlJ1bihpbnQgaXRlcnMpIHsKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwogICBzZW1fdCBzZW1hcGhvcmU7CiAgIHNlbV9pbml0KCZzZW1hcGhvcmUsIDEsIDEpOwpAQCAtNDYsNCArNTAsOTQgQEAKIAogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CiB9Ci1CRU5DSE1BUksoQk1fc2VtYXBob3JlX3NlbV93YWl0X3NlbV9wb3N0KTsKKworLyoKKyAqICAgIFRoaXMgdGVzdCByZXBvcnRzIHRoZSBvdmVyaGVhZCBvZiB0aGUgdW5kZXJseWluZyBmdXRleCB3YWtlIHN5c2NhbGwgb24KKyAqIHRoZSBwcm9kdWNlci4gSXQgZG9lcyBub3QgcmVwb3J0IHRoZSBvdmVyaGVhZCBmcm9tIGlzc3VpbmcgdGhlIHdha2UgdG8gdGhlCisgKiBwb2ludCB3aGVyZSB0aGUgcG9zdGVkIGNvbnN1bWVyIHRocmVhZCB3YWtlcyB1cC4gSXQgc3VmZmVycyBmcm9tCisgKiBjbG9ja19nZXR0aW1lIHN5c2NhbGwgb3ZlcmhlYWQuIExvY2sgdGhlIENQVSBzcGVlZCBmb3IgY29uc2lzdGVudCByZXN1bHRzCisgKiBhcyB3ZSBtYXkgbm90IHJlYWNoID41MCUgY3B1IHV0aWxpemF0aW9uLgorICoKKyAqICAgIFdlIHdpbGwgcnVuIGEgYmFja2dyb3VuZCB0aHJlYWQgdGhhdCBjYXRjaGVzIHRoZSBzZW1fcG9zdCB3YWtldXAgYW5kCisgKiBsb29wcyBpbW1lZGlhdGVseSByZXR1cm5pbmcgYmFjayB0byBzbGVlcCBpbiBzZW1fd2FpdCBmb3IgdGhlIG5leHQgb25lLiBUaGlzCisgKiB0aHJlYWQgaXMgcnVuIHdpdGggcG9saWN5IFNDSEVEX09USEVSIChub3JtYWwgcG9saWN5KSwgYSBtaWRkbGUgcG9saWN5LgorICoKKyAqICAgIFRoZSBwcmltYXJ5IHRocmVhZCB3aWxsIHJ1biBhdCBTQ0hFRF9JRExFIChsb3dlc3QgcHJpb3JpdHkgcG9saWN5KSB3aGVuCisgKiBtb25pdG9yaW5nIHRoZSBiYWNrZ3JvdW5kIHRocmVhZCB0byBkZXRlY3Qgd2hlbiBpdCBoaXRzIHNlbV93YWl0IHNsZWVwLiBJdAorICogd2lsbCBkbyBzbyB3aXRoIG5vIGNsb2NrIHJ1bm5pbmcuIE9uY2Ugd2UgYXJlIHJlYWR5LCB3ZSB3aWxsIHN3aXRjaCB0bworICogU0NIRURfRklGTyAoaGlnaGVzdCBwcmlvcml0eSBwb2xpY3kpIHRvIHRpbWUgdGhlIGFjdCBvZiBydW5uaW5nIHNlbV9wb3N0CisgKiB3aXRoIHRoZSBiZW5jaG1hcmsgY2xvY2sgcnVubmluZy4gVGhpcyBlbnN1cmVzIG5vdGhpbmcgZWxzZSBpbiB0aGUgc3lzdGVtCisgKiBjYW4gcHJlZW1wdCBvdXIgdGltZWQgYWN0aXZpdHksIGluY2x1ZGluZyB0aGUgYmFja2dyb3VuZCB0aHJlYWQuIFdlIGFyZQorICogYWxzbyBwcm90ZWN0ZWQgd2l0aCB0aGUgc2NoZWR1bGluZyBwb2xpY3kgb2YgbGV0dGluZyBhIHByb2Nlc3MgaGl0IGEKKyAqIHJlc291cmNlIGxpbWl0IHJhdGhlciB0aGFuIGdldCBoaXQgd2l0aCBhIGNvbnRleHQgc3dpdGNoLgorICoKKyAqICAgIFRoZSBiYWNrZ3JvdW5kIHRocmVhZCB3aWxsIHN0YXJ0IGV4ZWN1dGluZyBlaXRoZXIgb24gYW5vdGhlciBDUFUsIG9yCisgKiBhZnRlciB3ZSBiYWNrIGRvd24gZnJvbSBTQ0hFRF9GSUZPLCBidXQgY2VydGFpbmx5IG5vdCBpbiB0aGUgY29udGV4dCBvZgorICogdGhlIHRpbWluZyBvZiB0aGUgc2VtX3Bvc3QuCisgKi8KK3N0YXRpYyBhdG9taWNfaW50IEJNX3NlbWFwaG9yZV9zZW1fcG9zdF9ydW5uaW5nOworCitzdGF0aWMgdm9pZCAqQk1fc2VtYXBob3JlX3NlbV9wb3N0X3N0YXJ0X3RocmVhZCh2b2lkICpvYmopIHsKKyAgICBzZW1fdCAqc2VtYXBob3JlID0gcmVpbnRlcnByZXRfY2FzdDxzZW1fdCAqPihvYmopOworCisgICAgd2hpbGUgKChCTV9zZW1hcGhvcmVfc2VtX3Bvc3RfcnVubmluZyA+IDApICYmICFzZW1fd2FpdChzZW1hcGhvcmUpKSB7CisgICAgICAgIDsKKyAgICB9CisgICAgQk1fc2VtYXBob3JlX3NlbV9wb3N0X3J1bm5pbmcgPSAtMTsKKyAgICByZXR1cm4gTlVMTDsKK30KKworQkVOQ0hNQVJLX05PX0FSRyhCTV9zZW1hcGhvcmVfc2VtX3Bvc3QpOwordm9pZCBCTV9zZW1hcGhvcmVfc2VtX3Bvc3Q6OlJ1bihpbnQgaXRlcnMpIHsKKyAgU3RvcEJlbmNobWFya1RpbWluZygpOworCisgIHNlbV90IHNlbWFwaG9yZTsKKyAgc2VtX2luaXQoJnNlbWFwaG9yZSwgMCwgMCk7CisKKyAgcHRocmVhZF9hdHRyX3QgYXR0cjsKKyAgcHRocmVhZF9hdHRyX2luaXQoJmF0dHIpOworICBCTV9zZW1hcGhvcmVfc2VtX3Bvc3RfcnVubmluZyA9IDE7CisgIHN0cnVjdCBzY2hlZF9wYXJhbSBwYXJhbSA9IHsgMCwgfTsKKyAgcHRocmVhZF9hdHRyX3NldHNjaGVkcGFyYW0oJmF0dHIsICZwYXJhbSk7CisgIHB0aHJlYWRfYXR0cl9zZXRzY2hlZHBvbGljeSgmYXR0ciwgU0NIRURfT1RIRVIpOworICBwdGhyZWFkX2F0dHJfc2V0ZGV0YWNoc3RhdGUoJmF0dHIsIFBUSFJFQURfQ1JFQVRFX0RFVEFDSEVEKTsKKyAgcHRocmVhZF90IHB0aHJlYWQ7CisgIHB0aHJlYWRfY3JlYXRlKCZwdGhyZWFkLCAmYXR0ciwgQk1fc2VtYXBob3JlX3NlbV9wb3N0X3N0YXJ0X3RocmVhZCwgJnNlbWFwaG9yZSk7CisgIHB0aHJlYWRfYXR0cl9kZXN0cm95KCZhdHRyKTsKKworICBzY2hlZF9zZXRzY2hlZHVsZXIoKHBpZF90KTAsIFNDSEVEX0lETEUsICZwYXJhbSk7CisgIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7ICsraSkgeworICAgIGludCB0cnlzID0gMywgZHVtbXkgPSAwOworICAgIGRvIHsKKyAgICAgIGlmIChCTV9zZW1hcGhvcmVfc2VtX3Bvc3RfcnVubmluZyA8IDApIHsKKyAgICAgICAgc2NoZWRfc2V0c2NoZWR1bGVyKChwaWRfdCkwLCBTQ0hFRF9PVEhFUiwgJnBhcmFtKTsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICJCTV9zZW1hcGhvcmVfc2VtX3Bvc3Q6IHN0YXJ0X3RocmVhZCBkaWVkIHVuZXhwZWN0ZWRseVxuIik7CisgICAgICAgIHJldHVybjsKKyAgICAgIH0KKyAgICAgIHNjaGVkX3lpZWxkKCk7CisgICAgICBzZW1fZ2V0dmFsdWUoJnNlbWFwaG9yZSwgJmR1bW15KTsKKyAgICAgIGlmIChkdW1teSA8IDApIHsgIC8vIFBPU0lYLjEtMjAwMSBwb3NzaWJpbGl0eSAxCisgICAgICAgIGJyZWFrOworICAgICAgfQorICAgICAgaWYgKGR1bW15ID09IDApIHsgLy8gUE9TSVguMS0yMDAxIHBvc3NpYmlsaXR5IDIKKyAgICAgICAgLS10cnlzOworICAgICAgfQorICAgIH0gd2hpbGUgKHRyeXMpOworICAgIHBhcmFtLnNjaGVkX3ByaW9yaXR5ID0gMTsKKyAgICBzY2hlZF9zZXRzY2hlZHVsZXIoKHBpZF90KTAsIFNDSEVEX0ZJRk8sICZwYXJhbSk7CisgICAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKKyAgICBzZW1fcG9zdCgmc2VtYXBob3JlKTsKKyAgICBTdG9wQmVuY2htYXJrVGltaW5nKCk7IC8vIFJlbWVtYmVyIHRvIHN1YnRyYWN0IGNsb2NrIHN5c2NhbGwgb3ZlcmhlYWQKKyAgICBwYXJhbS5zY2hlZF9wcmlvcml0eSA9IDA7CisgICAgc2NoZWRfc2V0c2NoZWR1bGVyKChwaWRfdCkwLCBTQ0hFRF9JRExFLCAmcGFyYW0pOworICB9CisgIHNjaGVkX3NldHNjaGVkdWxlcigocGlkX3QpMCwgU0NIRURfT1RIRVIsICZwYXJhbSk7CisKKyAgaWYgKEJNX3NlbWFwaG9yZV9zZW1fcG9zdF9ydW5uaW5nID4gMCkgeworICAgIEJNX3NlbWFwaG9yZV9zZW1fcG9zdF9ydW5uaW5nID0gMDsKKyAgfQorICBkbyB7CisgICAgc2VtX3Bvc3QoJnNlbWFwaG9yZSk7CisgICAgc2NoZWRfeWllbGQoKTsKKyAgfSB3aGlsZSAoIUJNX3NlbWFwaG9yZV9zZW1fcG9zdF9ydW5uaW5nKTsKK30KZGlmZiAtLWdpdCBhL2JlbmNobWFya3Mvc3RkaW9fYmVuY2htYXJrLmNwcCBiL2JlbmNobWFya3Mvc3RkaW9fYmVuY2htYXJrLmNwcAppbmRleCBlODk5ZGY3Li4zNDJlNTYxIDEwMDY0NAotLS0gYS9iZW5jaG1hcmtzL3N0ZGlvX2JlbmNobWFyay5jcHAKKysrIGIvYmVuY2htYXJrcy9zdGRpb19iZW5jaG1hcmsuY3BwCkBAIC0xNCw5ICsxNCwxMCBAQAogICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCiAgKi8KIAotI2luY2x1ZGUgImJlbmNobWFyay5oIgotCiAjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRpb19leHQuaD4KKworI2luY2x1ZGUgPGJlbmNobWFyay9CZW5jaG1hcmsuaD4KIAogI2RlZmluZSBLQiAxMDI0CiAjZGVmaW5lIE1CIDEwMjQqS0IKQEAgLTI1LDM3ICsyNiw2OCBAQAogICAgIEFyZygxKS0+QXJnKDIpLT5BcmcoMyktPkFyZyg0KS0+QXJnKDgpLT5BcmcoMTYpLT5BcmcoMzIpLT5BcmcoNjQpLT5BcmcoNTEyKS0+IFwKICAgICBBcmcoMSpLQiktPkFyZyg0KktCKS0+QXJnKDgqS0IpLT5BcmcoMTYqS0IpLT5BcmcoNjQqS0IpCiAKLXN0YXRpYyB2b2lkIEJNX3N0ZGlvX2ZyZWFkKGludCBpdGVycywgaW50IGNodW5rX3NpemUpIHsKLSAgU3RvcEJlbmNobWFya1RpbWluZygpOwordGVtcGxhdGUgPHR5cGVuYW1lIEZuPgordm9pZCBSZWFkV3JpdGVUZXN0KDo6dGVzdGluZzo6QmVuY2htYXJrKiBiZW5jaG1hcmssIGludCBpdGVycywgaW50IGNodW5rX3NpemUsIEZuIGYsIGJvb2wgYnVmZmVyZWQpIHsKKyAgYmVuY2htYXJrLT5TdG9wQmVuY2htYXJrVGltaW5nKCk7CiAgIEZJTEUqIGZwID0gZm9wZW4oIi9kZXYvemVybyIsICJydyIpOworICBfX2ZzZXRsb2NraW5nKGZwLCBGU0VUTE9DS0lOR19CWUNBTExFUik7CiAgIGNoYXIqIGJ1ZiA9IG5ldyBjaGFyW2NodW5rX3NpemVdOwotICBTdGFydEJlbmNobWFya1RpbWluZygpOworICBiZW5jaG1hcmstPlN0YXJ0QmVuY2htYXJrVGltaW5nKCk7CiAKLSAgZm9yIChpbnQgaSA9IDA7IGkgPCBpdGVyczsgKytpKSB7Ci0gICAgZnJlYWQoYnVmLCBjaHVua19zaXplLCAxLCBmcCk7CisgIGlmICghYnVmZmVyZWQpIHsKKyAgICBzZXR2YnVmKGZwLCAwLCBfSU9OQkYsIDApOwogICB9CiAKLSAgU3RvcEJlbmNobWFya1RpbWluZygpOwotICBTZXRCZW5jaG1hcmtCeXRlc1Byb2Nlc3NlZChpbnQ2NF90KGl0ZXJzKSAqIGludDY0X3QoY2h1bmtfc2l6ZSkpOworICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKKyAgICBmKGJ1ZiwgY2h1bmtfc2l6ZSwgMSwgZnApOworICB9CisKKyAgYmVuY2htYXJrLT5TdG9wQmVuY2htYXJrVGltaW5nKCk7CisgIGJlbmNobWFyay0+U2V0QmVuY2htYXJrQnl0ZXNQcm9jZXNzZWQoaW50NjRfdChpdGVycykgKiBpbnQ2NF90KGNodW5rX3NpemUpKTsKICAgZGVsZXRlW10gYnVmOwogICBmY2xvc2UoZnApOwogfQotQkVOQ0hNQVJLKEJNX3N0ZGlvX2ZyZWFkKS0+QVRfQ09NTU9OX1NJWkVTOwogCi0KLXN0YXRpYyB2b2lkIEJNX3N0ZGlvX2Z3cml0ZShpbnQgaXRlcnMsIGludCBjaHVua19zaXplKSB7Ci0gIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKLSAgRklMRSogZnAgPSBmb3BlbigiL2Rldi96ZXJvIiwgInJ3Iik7Ci0gIGNoYXIqIGJ1ZiA9IG5ldyBjaGFyW2NodW5rX3NpemVdOwotICBTdGFydEJlbmNobWFya1RpbWluZygpOwotCi0gIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7ICsraSkgewotICAgICAgZndyaXRlKGJ1ZiwgY2h1bmtfc2l6ZSwgMSwgZnApOwotICB9Ci0KLSAgU3RvcEJlbmNobWFya1RpbWluZygpOwotICBTZXRCZW5jaG1hcmtCeXRlc1Byb2Nlc3NlZChpbnQ2NF90KGl0ZXJzKSAqIGludDY0X3QoY2h1bmtfc2l6ZSkpOwotICBkZWxldGVbXSBidWY7Ci0gIGZjbG9zZShmcCk7CitCRU5DSE1BUktfV0lUSF9BUkcoQk1fc3RkaW9fZnJlYWQsIGludCktPkFUX0NPTU1PTl9TSVpFUzsKK3ZvaWQgQk1fc3RkaW9fZnJlYWQ6OlJ1bihpbnQgaXRlcnMsIGludCBjaHVua19zaXplKSB7CisgIFJlYWRXcml0ZVRlc3QodGhpcywgaXRlcnMsIGNodW5rX3NpemUsIGZyZWFkLCB0cnVlKTsKIH0KLUJFTkNITUFSSyhCTV9zdGRpb19md3JpdGUpLT5BVF9DT01NT05fU0laRVM7CisKK0JFTkNITUFSS19XSVRIX0FSRyhCTV9zdGRpb19md3JpdGUsIGludCktPkFUX0NPTU1PTl9TSVpFUzsKK3ZvaWQgQk1fc3RkaW9fZndyaXRlOjpSdW4oaW50IGl0ZXJzLCBpbnQgY2h1bmtfc2l6ZSkgeworICBSZWFkV3JpdGVUZXN0KHRoaXMsIGl0ZXJzLCBjaHVua19zaXplLCBmd3JpdGUsIHRydWUpOworfQorCitCRU5DSE1BUktfV0lUSF9BUkcoQk1fc3RkaW9fZnJlYWRfdW5idWZmZXJlZCwgaW50KS0+QVRfQ09NTU9OX1NJWkVTOwordm9pZCBCTV9zdGRpb19mcmVhZF91bmJ1ZmZlcmVkOjpSdW4oaW50IGl0ZXJzLCBpbnQgY2h1bmtfc2l6ZSkgeworICBSZWFkV3JpdGVUZXN0KHRoaXMsIGl0ZXJzLCBjaHVua19zaXplLCBmcmVhZCwgZmFsc2UpOworfQorCitCRU5DSE1BUktfV0lUSF9BUkcoQk1fc3RkaW9fZndyaXRlX3VuYnVmZmVyZWQsIGludCktPkFUX0NPTU1PTl9TSVpFUzsKK3ZvaWQgQk1fc3RkaW9fZndyaXRlX3VuYnVmZmVyZWQ6OlJ1bihpbnQgaXRlcnMsIGludCBjaHVua19zaXplKSB7CisgIFJlYWRXcml0ZVRlc3QodGhpcywgaXRlcnMsIGNodW5rX3NpemUsIGZ3cml0ZSwgZmFsc2UpOworfQorCitzdGF0aWMgdm9pZCBGb3BlbkZnZXRzRmNsb3NlKGludCBpdGVycywgYm9vbCBub19sb2NraW5nKSB7CisgIGNoYXIgYnVmWzEwMjRdOworICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKKyAgICBGSUxFKiBmcCA9IGZvcGVuKCIvcHJvYy92ZXJzaW9uIiwgInJlIik7CisgICAgaWYgKG5vX2xvY2tpbmcpIF9fZnNldGxvY2tpbmcoZnAsIEZTRVRMT0NLSU5HX0JZQ0FMTEVSKTsKKyAgICBmZ2V0cyhidWYsIHNpemVvZihidWYpLCBmcCk7CisgICAgZmNsb3NlKGZwKTsKKyAgfQorfQorCitCRU5DSE1BUktfTk9fQVJHKEJNX3N0ZGlvX2ZvcGVuX2ZnZXRzX2ZjbG9zZV9sb2NraW5nKTsKK3ZvaWQgQk1fc3RkaW9fZm9wZW5fZmdldHNfZmNsb3NlX2xvY2tpbmc6OlJ1bihpbnQgaXRlcnMpIHsKKyAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKKyAgRm9wZW5GZ2V0c0ZjbG9zZShpdGVycywgZmFsc2UpOworICBTdG9wQmVuY2htYXJrVGltaW5nKCk7Cit9CisKK0JFTkNITUFSS19OT19BUkcoQk1fc3RkaW9fZm9wZW5fZmdldHNfZmNsb3NlX25vX2xvY2tpbmcpOwordm9pZCBCTV9zdGRpb19mb3Blbl9mZ2V0c19mY2xvc2Vfbm9fbG9ja2luZzo6UnVuKGludCBpdGVycykgeworICBTdGFydEJlbmNobWFya1RpbWluZygpOworICBGb3BlbkZnZXRzRmNsb3NlKGl0ZXJzLCB0cnVlKTsKKyAgU3RvcEJlbmNobWFya1RpbWluZygpOworfQpkaWZmIC0tZ2l0IGEvYmVuY2htYXJrcy9zdHJpbmdfYmVuY2htYXJrLmNwcCBiL2JlbmNobWFya3Mvc3RyaW5nX2JlbmNobWFyay5jcHAKaW5kZXggNTM2ZTI1My4uODY2YWEwMCAxMDA2NDQKLS0tIGEvYmVuY2htYXJrcy9zdHJpbmdfYmVuY2htYXJrLmNwcAorKysgYi9iZW5jaG1hcmtzL3N0cmluZ19iZW5jaG1hcmsuY3BwCkBAIC0xNCwxMCArMTQsMTEgQEAKICAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgogICovCiAKLSNpbmNsdWRlICJiZW5jaG1hcmsuaCIKLQorI2luY2x1ZGUgPHN0ZGludC5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgogCisjaW5jbHVkZSA8YmVuY2htYXJrL0JlbmNobWFyay5oPgorCiAjZGVmaW5lIEtCIDEwMjQKICNkZWZpbmUgTUIgMTAyNCpLQgogCkBAIC0yNiw3ICsyNyw4IEBACiAKIC8vIFRPRE86IHRlc3QgdW5hbGlnbmVkIG9wZXJhdGlvbiB0b28/IChjdXJyZW50bHkgZXZlcnl0aGluZyB3aWxsIGJlIDgtYnl0ZSBhbGlnbmVkIGJ5IG1hbGxvYy4pCiAKLXN0YXRpYyB2b2lkIEJNX3N0cmluZ19tZW1jbXAoaW50IGl0ZXJzLCBpbnQgbmJ5dGVzKSB7CitCRU5DSE1BUktfV0lUSF9BUkcoQk1fc3RyaW5nX21lbWNtcCwgaW50KS0+QVRfQ09NTU9OX1NJWkVTOwordm9pZCBCTV9zdHJpbmdfbWVtY21wOjpSdW4oaW50IGl0ZXJzLCBpbnQgbmJ5dGVzKSB7CiAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKICAgY2hhciogc3JjID0gbmV3IGNoYXJbbmJ5dGVzXTsgY2hhciogZHN0ID0gbmV3IGNoYXJbbmJ5dGVzXTsKICAgbWVtc2V0KHNyYywgJ3gnLCBuYnl0ZXMpOwpAQCAtMzksMTMgKzQxLDEzIEBACiAgIH0KIAogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7Ci0gIFNldEJlbmNobWFya0J5dGVzUHJvY2Vzc2VkKGludDY0X3QoaXRlcnMpICogaW50NjRfdChuYnl0ZXMpKTsKKyAgU2V0QmVuY2htYXJrQnl0ZXNQcm9jZXNzZWQodWludDY0X3QoaXRlcnMpICogdWludDY0X3QobmJ5dGVzKSk7CiAgIGRlbGV0ZVtdIHNyYzsKICAgZGVsZXRlW10gZHN0OwogfQotQkVOQ0hNQVJLKEJNX3N0cmluZ19tZW1jbXApLT5BVF9DT01NT05fU0laRVM7CiAKLXN0YXRpYyB2b2lkIEJNX3N0cmluZ19tZW1jcHkoaW50IGl0ZXJzLCBpbnQgbmJ5dGVzKSB7CitCRU5DSE1BUktfV0lUSF9BUkcoQk1fc3RyaW5nX21lbWNweSwgaW50KS0+QVRfQ09NTU9OX1NJWkVTOwordm9pZCBCTV9zdHJpbmdfbWVtY3B5OjpSdW4oaW50IGl0ZXJzLCBpbnQgbmJ5dGVzKSB7CiAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKICAgY2hhciogc3JjID0gbmV3IGNoYXJbbmJ5dGVzXTsgY2hhciogZHN0ID0gbmV3IGNoYXJbbmJ5dGVzXTsKICAgbWVtc2V0KHNyYywgJ3gnLCBuYnl0ZXMpOwpAQCAtNTYsMTMgKzU4LDEzIEBACiAgIH0KIAogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7Ci0gIFNldEJlbmNobWFya0J5dGVzUHJvY2Vzc2VkKGludDY0X3QoaXRlcnMpICogaW50NjRfdChuYnl0ZXMpKTsKKyAgU2V0QmVuY2htYXJrQnl0ZXNQcm9jZXNzZWQodWludDY0X3QoaXRlcnMpICogdWludDY0X3QobmJ5dGVzKSk7CiAgIGRlbGV0ZVtdIHNyYzsKICAgZGVsZXRlW10gZHN0OwogfQotQkVOQ0hNQVJLKEJNX3N0cmluZ19tZW1jcHkpLT5BVF9DT01NT05fU0laRVM7CiAKLXN0YXRpYyB2b2lkIEJNX3N0cmluZ19tZW1tb3ZlKGludCBpdGVycywgaW50IG5ieXRlcykgeworQkVOQ0hNQVJLX1dJVEhfQVJHKEJNX3N0cmluZ19tZW1tb3ZlLCBpbnQpLT5BVF9DT01NT05fU0laRVM7Cit2b2lkIEJNX3N0cmluZ19tZW1tb3ZlOjpSdW4oaW50IGl0ZXJzLCBpbnQgbmJ5dGVzKSB7CiAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKICAgY2hhciogYnVmID0gbmV3IGNoYXJbbmJ5dGVzICsgNjRdOwogICBtZW1zZXQoYnVmLCAneCcsIG5ieXRlcyArIDY0KTsKQEAgLTczLDEyICs3NSwxMiBAQAogICB9CiAKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwotICBTZXRCZW5jaG1hcmtCeXRlc1Byb2Nlc3NlZChpbnQ2NF90KGl0ZXJzKSAqIGludDY0X3QobmJ5dGVzKSk7CisgIFNldEJlbmNobWFya0J5dGVzUHJvY2Vzc2VkKHVpbnQ2NF90KGl0ZXJzKSAqIHVpbnQ2NF90KG5ieXRlcykpOwogICBkZWxldGVbXSBidWY7CiB9Ci1CRU5DSE1BUksoQk1fc3RyaW5nX21lbW1vdmUpLT5BVF9DT01NT05fU0laRVM7CiAKLXN0YXRpYyB2b2lkIEJNX3N0cmluZ19tZW1zZXQoaW50IGl0ZXJzLCBpbnQgbmJ5dGVzKSB7CitCRU5DSE1BUktfV0lUSF9BUkcoQk1fc3RyaW5nX21lbXNldCwgaW50KS0+QVRfQ09NTU9OX1NJWkVTOwordm9pZCBCTV9zdHJpbmdfbWVtc2V0OjpSdW4oaW50IGl0ZXJzLCBpbnQgbmJ5dGVzKSB7CiAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKICAgY2hhciogZHN0ID0gbmV3IGNoYXJbbmJ5dGVzXTsKICAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKQEAgLTg4LDEyICs5MCwxMiBAQAogICB9CiAKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwotICBTZXRCZW5jaG1hcmtCeXRlc1Byb2Nlc3NlZChpbnQ2NF90KGl0ZXJzKSAqIGludDY0X3QobmJ5dGVzKSk7CisgIFNldEJlbmNobWFya0J5dGVzUHJvY2Vzc2VkKHVpbnQ2NF90KGl0ZXJzKSAqIHVpbnQ2NF90KG5ieXRlcykpOwogICBkZWxldGVbXSBkc3Q7CiB9Ci1CRU5DSE1BUksoQk1fc3RyaW5nX21lbXNldCktPkFUX0NPTU1PTl9TSVpFUzsKIAotc3RhdGljIHZvaWQgQk1fc3RyaW5nX3N0cmxlbihpbnQgaXRlcnMsIGludCBuYnl0ZXMpIHsKK0JFTkNITUFSS19XSVRIX0FSRyhCTV9zdHJpbmdfc3RybGVuLCBpbnQpLT5BVF9DT01NT05fU0laRVM7Cit2b2lkIEJNX3N0cmluZ19zdHJsZW46OlJ1bihpbnQgaXRlcnMsIGludCBuYnl0ZXMpIHsKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwogICBjaGFyKiBzID0gbmV3IGNoYXJbbmJ5dGVzXTsKICAgbWVtc2V0KHMsICd4JywgbmJ5dGVzKTsKQEAgLTEwNiw3ICsxMDgsNiBAQAogICB9CiAKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwotICBTZXRCZW5jaG1hcmtCeXRlc1Byb2Nlc3NlZChpbnQ2NF90KGl0ZXJzKSAqIGludDY0X3QobmJ5dGVzKSk7CisgIFNldEJlbmNobWFya0J5dGVzUHJvY2Vzc2VkKHVpbnQ2NF90KGl0ZXJzKSAqIHVpbnQ2NF90KG5ieXRlcykpOwogICBkZWxldGVbXSBzOwogfQotQkVOQ0hNQVJLKEJNX3N0cmluZ19zdHJsZW4pLT5BVF9DT01NT05fU0laRVM7CmRpZmYgLS1naXQgYS9iZW5jaG1hcmtzL3RpbWVfYmVuY2htYXJrLmNwcCBiL2JlbmNobWFya3MvdGltZV9iZW5jaG1hcmsuY3BwCmluZGV4IDIyZjZlOGUuLjY2ODhiYmMgMTAwNjQ0Ci0tLSBhL2JlbmNobWFya3MvdGltZV9iZW5jaG1hcmsuY3BwCisrKyBiL2JlbmNobWFya3MvdGltZV9iZW5jaG1hcmsuY3BwCkBAIC0xNCwxMiArMTQsMTQgQEAKICAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgogICovCiAKLSNpbmNsdWRlICJiZW5jaG1hcmsuaCIKLQogI2luY2x1ZGUgPHN5cy9zeXNjYWxsLmg+CisjaW5jbHVkZSA8c3lzL3RpbWUuaD4KICNpbmNsdWRlIDx0aW1lLmg+CiAKLXN0YXRpYyB2b2lkIEJNX3RpbWVfY2xvY2tfZ2V0dGltZShpbnQgaXRlcnMpIHsKKyNpbmNsdWRlIDxiZW5jaG1hcmsvQmVuY2htYXJrLmg+CisKK0JFTkNITUFSS19OT19BUkcoQk1fdGltZV9jbG9ja19nZXR0aW1lKTsKK3ZvaWQgQk1fdGltZV9jbG9ja19nZXR0aW1lOjpSdW4oaW50IGl0ZXJzKSB7CiAgIFN0YXJ0QmVuY2htYXJrVGltaW5nKCk7CiAKICAgdGltZXNwZWMgdDsKQEAgLTI5LDkgKzMxLDkgQEAKIAogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CiB9Ci1CRU5DSE1BUksoQk1fdGltZV9jbG9ja19nZXR0aW1lKTsKIAotc3RhdGljIHZvaWQgQk1fdGltZV9jbG9ja19nZXR0aW1lX3N5c2NhbGwoaW50IGl0ZXJzKSB7CitCRU5DSE1BUktfTk9fQVJHKEJNX3RpbWVfY2xvY2tfZ2V0dGltZV9zeXNjYWxsKTsKK3ZvaWQgQk1fdGltZV9jbG9ja19nZXR0aW1lX3N5c2NhbGw6OlJ1bihpbnQgaXRlcnMpIHsKICAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKIAogICB0aW1lc3BlYyB0OwpAQCAtNDEsOSArNDMsOSBAQAogCiAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKIH0KLUJFTkNITUFSSyhCTV90aW1lX2Nsb2NrX2dldHRpbWVfc3lzY2FsbCk7CiAKLXN0YXRpYyB2b2lkIEJNX3RpbWVfZ2V0dGltZW9mZGF5KGludCBpdGVycykgeworQkVOQ0hNQVJLX05PX0FSRyhCTV90aW1lX2dldHRpbWVvZmRheSk7Cit2b2lkIEJNX3RpbWVfZ2V0dGltZW9mZGF5OjpSdW4oaW50IGl0ZXJzKSB7CiAgIFN0YXJ0QmVuY2htYXJrVGltaW5nKCk7CiAKICAgdGltZXZhbCB0djsKQEAgLTUzLDkgKzU1LDkgQEAKIAogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CiB9Ci1CRU5DSE1BUksoQk1fdGltZV9nZXR0aW1lb2ZkYXkpOwogCi1zdGF0aWMgdm9pZCBCTV90aW1lX2dldHRpbWVvZmRheV9zeXNjYWxsKGludCBpdGVycykgeworQkVOQ0hNQVJLX05PX0FSRyhCTV90aW1lX2dldHRpbWVvZmRheV9zeXNjYWxsKTsKK3ZvaWQgQk1fdGltZV9nZXR0aW1lb2ZkYXlfc3lzY2FsbDo6UnVuKGludCBpdGVycykgewogICBTdGFydEJlbmNobWFya1RpbWluZygpOwogCiAgIHRpbWV2YWwgdHY7CkBAIC02NSw5ICs2Nyw5IEBACiAKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwogfQotQkVOQ0hNQVJLKEJNX3RpbWVfZ2V0dGltZW9mZGF5X3N5c2NhbGwpOwogCi1zdGF0aWMgdm9pZCBCTV90aW1lX3RpbWUoaW50IGl0ZXJzKSB7CitCRU5DSE1BUktfTk9fQVJHKEJNX3RpbWVfdGltZSk7Cit2b2lkIEJNX3RpbWVfdGltZTo6UnVuKGludCBpdGVycykgewogICBTdGFydEJlbmNobWFya1RpbWluZygpOwogCiAgIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7ICsraSkgewpAQCAtNzYsNCArNzgsMyBAQAogCiAgIFN0b3BCZW5jaG1hcmtUaW1pbmcoKTsKIH0KLUJFTkNITUFSSyhCTV90aW1lX3RpbWUpOwpkaWZmIC0tZ2l0IGEvYmVuY2htYXJrcy91bmlzdGRfYmVuY2htYXJrLmNwcCBiL2JlbmNobWFya3MvdW5pc3RkX2JlbmNobWFyay5jcHAKaW5kZXggN2UyYWMzMC4uMDljYTBlNiAxMDA2NDQKLS0tIGEvYmVuY2htYXJrcy91bmlzdGRfYmVuY2htYXJrLmNwcAorKysgYi9iZW5jaG1hcmtzL3VuaXN0ZF9iZW5jaG1hcmsuY3BwCkBAIC0xNCwxMiArMTQsMTMgQEAKICAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgogICovCiAKLSNpbmNsdWRlICJiZW5jaG1hcmsuaCIKLQogI2luY2x1ZGUgPHN5cy9zeXNjYWxsLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKLXN0YXRpYyB2b2lkIEJNX3VuaXN0ZF9nZXRwaWQoaW50IGl0ZXJzKSB7CisjaW5jbHVkZSA8YmVuY2htYXJrL0JlbmNobWFyay5oPgorCitCRU5DSE1BUktfTk9fQVJHKEJNX3VuaXN0ZF9nZXRwaWQpOwordm9pZCBCTV91bmlzdGRfZ2V0cGlkOjpSdW4oaW50IGl0ZXJzKSB7CiAgIFN0YXJ0QmVuY2htYXJrVGltaW5nKCk7CiAKICAgZm9yIChpbnQgaSA9IDA7IGkgPCBpdGVyczsgKytpKSB7CkBAIC0yOCw5ICsyOSw5IEBACiAKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwogfQotQkVOQ0hNQVJLKEJNX3VuaXN0ZF9nZXRwaWQpOwogCi1zdGF0aWMgdm9pZCBCTV91bmlzdGRfZ2V0cGlkX3N5c2NhbGwoaW50IGl0ZXJzKSB7CitCRU5DSE1BUktfTk9fQVJHKEJNX3VuaXN0ZF9nZXRwaWRfc3lzY2FsbCk7Cit2b2lkIEJNX3VuaXN0ZF9nZXRwaWRfc3lzY2FsbDo6UnVuKGludCBpdGVycykgewogICBTdGFydEJlbmNobWFya1RpbWluZygpOwogCiAgIGZvciAoaW50IGkgPSAwOyBpIDwgaXRlcnM7ICsraSkgewpAQCAtMzksMTIgKzQwLDE0IEBACiAKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwogfQotQkVOQ0hNQVJLKEJNX3VuaXN0ZF9nZXRwaWRfc3lzY2FsbCk7CisKKyNpZiBkZWZpbmVkKF9fQklPTklDX18pCiAKIC8vIFN0b3AgR0NDIG9wdGltaXppbmcgb3V0IG91ciBwdXJlIGZ1bmN0aW9uLgogLyogTXVzdCBub3QgYmUgc3RhdGljISAqLyBwaWRfdCAoKmdldHRpZF9mcCkoKSA9IGdldHRpZDsKIAotc3RhdGljIHZvaWQgQk1fdW5pc3RkX2dldHRpZChpbnQgaXRlcnMpIHsKK0JFTkNITUFSS19OT19BUkcoQk1fdW5pc3RkX2dldHRpZCk7Cit2b2lkIEJNX3VuaXN0ZF9nZXR0aWQ6OlJ1bihpbnQgaXRlcnMpIHsKICAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKIAogICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKQEAgLTUzLDkgKzU2LDExIEBACiAKICAgU3RvcEJlbmNobWFya1RpbWluZygpOwogfQotQkVOQ0hNQVJLKEJNX3VuaXN0ZF9nZXR0aWQpOwogCi1zdGF0aWMgdm9pZCBCTV91bmlzdGRfZ2V0dGlkX3N5c2NhbGwoaW50IGl0ZXJzKSB7CisjZW5kaWYKKworQkVOQ0hNQVJLX05PX0FSRyhCTV91bmlzdGRfZ2V0dGlkX3N5c2NhbGwpOwordm9pZCBCTV91bmlzdGRfZ2V0dGlkX3N5c2NhbGw6OlJ1bihpbnQgaXRlcnMpIHsKICAgU3RhcnRCZW5jaG1hcmtUaW1pbmcoKTsKIAogICBmb3IgKGludCBpID0gMDsgaSA8IGl0ZXJzOyArK2kpIHsKQEAgLTY0LDQgKzY5LDMgQEAKIAogICBTdG9wQmVuY2htYXJrVGltaW5nKCk7CiB9Ci1CRU5DSE1BUksoQk1fdW5pc3RkX2dldHRpZF9zeXNjYWxsKTsKZGlmZiAtLWdpdCBhL2JlbmNobWFya3MvdXRpbHMuY3BwIGIvYmVuY2htYXJrcy91dGlscy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODYzYjlkYgotLS0gL2Rldi9udWxsCisrKyBiL2JlbmNobWFya3MvdXRpbHMuY3BwCkBAIC0wLDAgKzEsODEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8aW50dHlwZXMuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorCisjaW5jbHVkZSA8c3RyaW5nPgorCisjaW5jbHVkZSAidXRpbHMuaCIKKworaW50IFJvdW5kKGludCBuKSB7CisgIGludCBiYXNlID0gMTsKKyAgd2hpbGUgKGJhc2UqMTAgPCBuKSB7CisgICAgYmFzZSAqPSAxMDsKKyAgfQorICBpZiAobiA8IDIqYmFzZSkgeworICAgIHJldHVybiAyKmJhc2U7CisgIH0KKyAgaWYgKG4gPCA1KmJhc2UpIHsKKyAgICByZXR1cm4gNSpiYXNlOworICB9CisgIHJldHVybiAxMCpiYXNlOworfQorCisvLyBTaW1pbGFyIHRvIHRoZSBjb2RlIGluIGFydCwgYnV0IHN1cHBvcnRpbmcgYm90aCBiaW5hcnkgYW5kIGRlY2ltYWwgcHJlZml4ZXMuCitzdGQ6OnN0cmluZyBQcmV0dHlJbnQobG9uZyB2YWx1ZSwgc2l6ZV90IGJhc2UpIHsKKyAgaWYgKGJhc2UgIT0gMiAmJiBiYXNlICE9IDEwKSBhYm9ydCgpOworCisgIHVpbnQ2NF90IGNvdW50ID0gc3RhdGljX2Nhc3Q8dWludDY0X3Q+KHZhbHVlKTsKKyAgYm9vbCBuZWdhdGl2ZV9udW1iZXIgPSBmYWxzZTsKKyAgaWYgKHZhbHVlIDwgMCkgeworICAgIG5lZ2F0aXZlX251bWJlciA9IHRydWU7CisgICAgY291bnQgPSBzdGF0aWNfY2FzdDx1aW50NjRfdD4oLXZhbHVlKTsKKyAgfQorCisgIC8vIFRoZSBieXRlIHRocmVzaG9sZHMgYXQgd2hpY2ggd2UgZGlzcGxheSBhbW91bnRzLiBBIGNvdW50IGlzIGRpc3BsYXllZAorICAvLyBpbiB1bml0IFUgd2hlbiBrVW5pdFRocmVzaG9sZHNbVV0gPD0gYnl0ZXMgPCBrVW5pdFRocmVzaG9sZHNbVSsxXS4KKyAgc3RhdGljIGNvbnN0IHVpbnQ2NF90IGtVbml0VGhyZXNob2xkczJbXSA9IHsKKyAgICAxMDI0KjEwMjQqMTAyNCAvKiBHaSAqLywgMioxMDI0KjEwMjQgLyogTWkgKi8sIDMqMTAyNCAvKiBLaSAqLywgMCwKKyAgfTsKKyAgc3RhdGljIGNvbnN0IHVpbnQ2NF90IGtVbml0VGhyZXNob2xkczEwW10gPSB7CisgICAgMTAwMCoxMDAwKjEwMDAgLyogRyAqLywgMioxMDAwKjEwMDAgLyogTSAqLywgMyoxMDAwIC8qIGsgKi8sIDAsCisgIH07CisgIHN0YXRpYyBjb25zdCB1aW50NjRfdCBrQW1vdW50UGVyVW5pdDJbXSA9IHsgMTAyNCoxMDI0KjEwMjQsIDEwMjQqMTAyNCwgMTAyNCwgMSB9OworICBzdGF0aWMgY29uc3QgdWludDY0X3Qga0Ftb3VudFBlclVuaXQxMFtdID0geyAxMDAwKjEwMDAqMTAwMCwgMTAwMCoxMDAwLCAxMDAwLCAxIH07CisgIHN0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBrVW5pdFN0cmluZ3MyW10gPSB7ICJHaSIsICJNaSIsICJLaSIsICIiIH07CisgIHN0YXRpYyBjb25zdCBjaGFyKiBjb25zdCBrVW5pdFN0cmluZ3MxMFtdID0geyAiRyIsICJNIiwgImsiLCAiIiB9OworCisgIC8vIFdoaWNoIHNldCBhcmUgd2UgdXNpbmc/CisgIGNvbnN0IHVpbnQ2NF90KiBrVW5pdFRocmVzaG9sZHMgPSAoKGJhc2UgPT0gMikgPyBrVW5pdFRocmVzaG9sZHMyIDoga1VuaXRUaHJlc2hvbGRzMTApOworICBjb25zdCB1aW50NjRfdCoga0Ftb3VudFBlclVuaXQgPSAoKGJhc2UgPT0gMikgPyBrQW1vdW50UGVyVW5pdDIgOiBrQW1vdW50UGVyVW5pdDEwKTsKKyAgY29uc3QgY2hhciogY29uc3QqIGtVbml0U3RyaW5ncyA9ICgoYmFzZSA9PSAyKSA/IGtVbml0U3RyaW5nczIgOiBrVW5pdFN0cmluZ3MxMCk7CisKKyAgc2l6ZV90IGkgPSAwOworICBmb3IgKDsga1VuaXRUaHJlc2hvbGRzW2ldICE9IDA7ICsraSkgeworICAgIGlmIChjb3VudCA+PSBrVW5pdFRocmVzaG9sZHNbaV0pIHsKKyAgICAgIGJyZWFrOworICAgIH0KKyAgfQorICBjaGFyKiBzID0gTlVMTDsKKyAgYXNwcmludGYoJnMsICIlcyUiIFBSSWQ2NCAiJXMiLCAobmVnYXRpdmVfbnVtYmVyID8gIi0iIDogIiIpLAorICAgICAgICAgICBjb3VudCAvIGtBbW91bnRQZXJVbml0W2ldLCBrVW5pdFN0cmluZ3NbaV0pOworICBzdGQ6OnN0cmluZyByZXN1bHQocyk7CisgIGZyZWUocyk7CisgIHJldHVybiByZXN1bHQ7Cit9CmRpZmYgLS1naXQgYS9iZW5jaG1hcmtzL3V0aWxzLmggYi9iZW5jaG1hcmtzL3V0aWxzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzNjNjRiYQotLS0gL2Rldi9udWxsCisrKyBiL2JlbmNobWFya3MvdXRpbHMuaApAQCAtMCwwICsxLDI2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2lmbmRlZiBCRU5DSE1BUktTX1VUSUxTX0gKKyNkZWZpbmUgQkVOQ0hNQVJLU19VVElMU19ICisKKyNpbmNsdWRlIDxzdGRkZWYuaD4KKyNpbmNsdWRlIDxzdHJpbmc+CisKK2ludCBSb3VuZChpbnQgbik7CitzdGQ6OnN0cmluZyBQcmV0dHlJbnQobG9uZyB2YWx1ZSwgc2l6ZV90IGJhc2UpOworCisjZW5kaWYgIC8vIEJFTkNITUFSS1NfVVRJTFNfSApkaWZmIC0tZ2l0IGEvYnVpbGQvcnVuLW9uLWhvc3QubWsgYi9idWlsZC9ydW4tb24taG9zdC5tawpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYzdlNWQ1Ci0tLSAvZGV2L251bGwKKysrIGIvYnVpbGQvcnVuLW9uLWhvc3QubWsKQEAgLTAsMCArMSw0NCBAQAorIworIyBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMKKyMgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyMKKyMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorIyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorIyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyMKKworIyBJbmNsdWRlIG9uY2UKK2lmbmVxICgkKGJpb25pY19ydW5fb25faG9zdF9ta19pbmNsdWRlZCksdHJ1ZSkKK2Jpb25pY19ydW5fb25faG9zdF9ta19pbmNsdWRlZDo9dHJ1ZQorCitpZm5lcSAoJChUQVJHRVRfQVJDSCksJChmaWx0ZXIgJChUQVJHRVRfQVJDSCksYXJtIG1pcHMgeDg2KSkKK0xJTktFUiA9IGxpbmtlcjY0CitlbHNlCitMSU5LRVIgPSBsaW5rZXIKK2VuZGlmCisKK2lmZXEgKCQoVEFSR0VUX0FSQ0gpLCQoZmlsdGVyICQoVEFSR0VUX0FSQ0gpLHg4NiB4ODZfNjQpKQorIyBndGVzdCBuZWVkcyBBTkRST0lEX0RBVEEvbG9jYWwvdG1wIGZvciBkZWF0aCB0ZXN0IG91dHB1dC4KKyMgTWFrZSBzdXJlIHRvIGNyZWF0ZSBBTkRST0lEX0RBVEEvbG9jYWwvdG1wIGlmIGRvZXNuJ3QgZXhpc3QuCisjIGJpb25pYyBpdHNlbGYgc2hvdWxkIGFsd2F5cyB3b3JrIHJlbGF0aXZlIHRvIEFORFJPSURfREFUQSBvciBBTkRST0lEX1JPT1QuCitiaW9uaWMtcHJlcGFyZS1ydW4tb24taG9zdDogJChUQVJHRVRfT1VUX0VYRUNVVEFCTEVTKS8kKExJTktFUikgJChUQVJHRVRfT1VUKS9ldGMvaG9zdHMgJChUQVJHRVRfT1VUX0VYRUNVVEFCTEVTKS9zaAorCWlmIFsgISAtZCAvc3lzdGVtIF07IHRoZW4gXAorCSAgZWNobyAiQXR0ZW1wdGluZyB0byBjcmVhdGUgL3N5c3RlbSI7IFwKKwkgIHN1ZG8gbWtkaXIgLXAgLW0gMDc3NyAvc3lzdGVtOyBcCisJZmkKKwlta2RpciAtcCAkKFRBUkdFVF9PVVRfREFUQSkvbG9jYWwvdG1wCisJbG4gLWZzIGByZWFscGF0aCAkKFRBUkdFVF9PVVQpL2JpbmAgL3N5c3RlbS8KKwlsbiAtZnMgYHJlYWxwYXRoICQoVEFSR0VUX09VVCkvZXRjYCAvc3lzdGVtLworCWxuIC1mcyBgcmVhbHBhdGggJChUQVJHRVRfT1VUKS9saWJgIC9zeXN0ZW0vCisJaWYgWyAtZCAiJChUQVJHRVRfT1VUKS9saWI2NCIgXTsgdGhlbiBcCisJICBsbiAtZnMgYHJlYWxwYXRoICQoVEFSR0VUX09VVCkvbGliNjRgIC9zeXN0ZW0vOyBcCisJZmkKK2VuZGlmCitlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9BbmRyb2lkLm1rIGIvbGliYy9BbmRyb2lkLm1rCmluZGV4IDMwMDUwOTIuLmQ0MWY4YWYgMTAwNjQ0Ci0tLSBhL2xpYmMvQW5kcm9pZC5taworKysgYi9saWJjL0FuZHJvaWQubWsKQEAgLTEsNSArMSw3IEBACiBMT0NBTF9QQVRIIDo9ICQoY2FsbCBteS1kaXIpCiAKK2Jpb25pY19jb3ZlcmFnZSA6PSBmYWxzZQorCiAjIE1ha2UgZXZlcnl0aGluZyBkZXBlbmQgb24gYW55IGNoYW5nZXMgdG8gaW5jbHVkZWQgbWFrZWZpbGVzLgogbGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMgOj0gJChMT0NBTF9QQVRIKS9BbmRyb2lkLm1rCiAKQEAgLTM4LDEyICs0MCw5IEBACiAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogbGliY19jb21tb25fc3JjX2ZpbGVzIDo9IFwKICAgICBiaW9uaWMvYmluZHJlc3Zwb3J0LmMgXAotICAgIGJpb25pYy9kYWVtb24uYyBcCi0gICAgYmlvbmljL2Vyci5jIFwKICAgICBiaW9uaWMvZXRoZXJfYXRvbi5jIFwKICAgICBiaW9uaWMvZXRoZXJfbnRvYS5jIFwKICAgICBiaW9uaWMvZnRzLmMgXAotICAgIGJpb25pYy9nZXRob3N0bmFtZS5jIFwKICAgICBiaW9uaWMvZ2V0cHJpb3JpdHkuYyBcCiAgICAgYmlvbmljL2lmX2luZGV4dG9uYW1lLmMgXAogICAgIGJpb25pYy9pZl9uYW1ldG9pbmRleC5jIFwKQEAgLTUxLDExICs1MCw5IEBACiAgICAgYmlvbmljL2lvY3RsLmMgXAogICAgIGJpb25pYy9pc2F0dHkuYyBcCiAgICAgYmlvbmljL21lbW1lbS5jIFwKLSAgICBiaW9uaWMvcGF0aGNvbmYuYyBcCiAgICAgYmlvbmljL3B1dHV0bGluZS5jIFwKICAgICBiaW9uaWMvc2NoZWRfY3B1YWxsb2MuYyBcCiAgICAgYmlvbmljL3NjaGVkX2NwdWNvdW50LmMgXAotICAgIGJpb25pYy9zZW1hcGhvcmUuYyBcCiAgICAgYmlvbmljL3NpZ2Jsb2NrLmMgXAogICAgIGJpb25pYy9zaWdpbnRlcnJ1cHQuYyBcCiAgICAgYmlvbmljL3NpZ3NldG1hc2suYyBcCkBAIC02NCwxMyArNjEsMjQgQEAKICAgICBzdGRpby9mcmVhZC5jIFwKICAgICBzdGRpby9zbnByaW50Zi5jXAogICAgIHN0ZGlvL3NwcmludGYuYyBcCisgICAgc3RkaW8vc3RkaW8uYyBcCisgICAgc3RkaW8vc3RkaW9fZXh0LmNwcCBcCisgICAgc3RkbGliL2F0ZXhpdC5jIFwKKyAgICBzdGRsaWIvZXhpdC5jIFwKIAogIyBGb3J0aWZ5IGltcGxlbWVudGF0aW9ucyBvZiBsaWJjIGZ1bmN0aW9ucy4KIGxpYmNfY29tbW9uX3NyY19maWxlcyArPSBcCiAgICAgYmlvbmljL19fRkRfY2hrLmNwcCBcCiAgICAgYmlvbmljL19fZmdldHNfY2hrLmNwcCBcCisgICAgYmlvbmljL19fbWVtY2hyX2Noay5jcHAgXAogICAgIGJpb25pYy9fX21lbW1vdmVfY2hrLmNwcCBcCisgICAgYmlvbmljL19fbWVtcmNocl9jaGsuY3BwIFwKKyAgICBiaW9uaWMvX19wb2xsX2Noay5jcHAgXAorICAgIGJpb25pYy9fX3ByZWFkNjRfY2hrLmNwcCBcCisgICAgYmlvbmljL19fcHJlYWRfY2hrLmNwcCBcCiAgICAgYmlvbmljL19fcmVhZF9jaGsuY3BwIFwKKyAgICBiaW9uaWMvX19yZWFkbGlua19jaGsuY3BwIFwKKyAgICBiaW9uaWMvX19yZWFkbGlua2F0X2Noay5jcHAgXAogICAgIGJpb25pYy9fX3JlY3Zmcm9tX2Noay5jcHAgXAogICAgIGJpb25pYy9fX3N0cGNweV9jaGsuY3BwIFwKICAgICBiaW9uaWMvX19zdHBuY3B5X2Noay5jcHAgXApAQCAtODUsMTMgKzkzLDE0IEBACiAgICAgYmlvbmljL19fdnNucHJpbnRmX2Noay5jcHAgXAogICAgIGJpb25pYy9fX3ZzcHJpbnRmX2Noay5jcHAgXAogCi1saWJjX2Jpb25pY19zcmNfZmlsZXMgOj0gXAorbGliY19iaW9uaWNfbmRrX3NyY19maWxlcyA6PSBcCiAgICAgYmlvbmljL2Fib3J0LmNwcCBcCiAgICAgYmlvbmljL2FjY2VwdC5jcHAgXAogICAgIGJpb25pYy9hY2NlcHQ0LmNwcCBcCiAgICAgYmlvbmljL2FjY2Vzcy5jcHAgXAogICAgIGJpb25pYy9hc3NlcnQuY3BwIFwKICAgICBiaW9uaWMvYXRvZi5jcHAgXAorICAgIGJpb25pYy9iaW9uaWNfc3lzdHJhY2UuY3BwIFwKICAgICBiaW9uaWMvYmlvbmljX3RpbWVfY29udmVyc2lvbnMuY3BwIFwKICAgICBiaW9uaWMvYnJrLmNwcCBcCiAgICAgYmlvbmljL2MxNnJ0b21iLmNwcCBcCkBAIC0xMDAsNyArMTA5LDEwIEBACiAgICAgYmlvbmljL2Nob3duLmNwcCBcCiAgICAgYmlvbmljL2NsZWFyZW52LmNwcCBcCiAgICAgYmlvbmljL2Nsb2NrLmNwcCBcCisgICAgYmlvbmljL2Nsb2NrX2dldGNwdWNsb2NraWQuY3BwIFwKKyAgICBiaW9uaWMvY2xvY2tfbmFub3NsZWVwLmNwcCBcCiAgICAgYmlvbmljL2Nsb25lLmNwcCBcCisgICAgYmlvbmljL2Nsb3NlLmNwcCBcCiAgICAgYmlvbmljL19fY21zZ19ueHRoZHIuY3BwIFwKICAgICBiaW9uaWMvY29ubmVjdC5jcHAgXAogICAgIGJpb25pYy9jdHlwZS5jcHAgXApAQCAtMTEwLDE5ICsxMjIsMjIgQEAKICAgICBiaW9uaWMvZXBvbGxfcHdhaXQuY3BwIFwKICAgICBiaW9uaWMvZXBvbGxfd2FpdC5jcHAgXAogICAgIGJpb25pYy9fX2Vycm5vLmNwcCBcCisgICAgYmlvbmljL2Vycm9yLmNwcCBcCiAgICAgYmlvbmljL2V2ZW50ZmRfcmVhZC5jcHAgXAogICAgIGJpb25pYy9ldmVudGZkX3dyaXRlLmNwcCBcCisgICAgYmlvbmljL2ZhY2Nlc3NhdC5jcHAgXAorICAgIGJpb25pYy9mY2htb2QuY3BwIFwKKyAgICBiaW9uaWMvZmNobW9kYXQuY3BwIFwKICAgICBiaW9uaWMvZmZzLmNwcCBcCiAgICAgYmlvbmljL2Zsb2NrZmlsZS5jcHAgXAotICAgIGJpb25pYy9mb3JrLmNwcCBcCiAgICAgYmlvbmljL2ZwY2xhc3NpZnkuY3BwIFwKICAgICBiaW9uaWMvZnV0aW1lbnMuY3BwIFwKLSAgICBiaW9uaWMvZ2V0YXV4dmFsLmNwcCBcCiAgICAgYmlvbmljL2dldGN3ZC5jcHAgXAotICAgIGJpb25pYy9nZXRlbnRyb3B5X2xpbnV4LmMgXAorICAgIGJpb25pYy9nZXRob3N0bmFtZS5jcHAgXAogICAgIGJpb25pYy9nZXRwZ3JwLmNwcCBcCiAgICAgYmlvbmljL2dldHBpZC5jcHAgXAogICAgIGJpb25pYy9nZXR0aWQuY3BwIFwKKyAgICBiaW9uaWMvX19nbnVfYmFzZW5hbWUuY3BwIFwKICAgICBiaW9uaWMvaW5vdGlmeV9pbml0LmNwcCBcCiAgICAgYmlvbmljL2xjaG93bi5jcHAgXAogICAgIGJpb25pYy9sZnM2NF9zdXBwb3J0LmNwcCBcCkBAIC0xMzQsNDIgKzE0OSwyNSBAQAogICAgIGJpb25pYy9saW5rLmNwcCBcCiAgICAgYmlvbmljL2xvY2FsZS5jcHAgXAogICAgIGJpb25pYy9sc3RhdC5jcHAgXAorICAgIGJpb25pYy9tYWxsb2NfaW5mby5jcHAgXAogICAgIGJpb25pYy9tYnJ0b2MxNi5jcHAgXAogICAgIGJpb25pYy9tYnJ0b2MzMi5jcHAgXAogICAgIGJpb25pYy9tYnN0YXRlLmNwcCBcCisgICAgYmlvbmljL21lbXBjcHkuY3BwIFwKICAgICBiaW9uaWMvbWtkaXIuY3BwIFwKICAgICBiaW9uaWMvbWtmaWZvLmNwcCBcCiAgICAgYmlvbmljL21rbm9kLmNwcCBcCiAgICAgYmlvbmljL21udGVudC5jcHAgXAogICAgIGJpb25pYy9OZXRkQ2xpZW50RGlzcGF0Y2guY3BwIFwKICAgICBiaW9uaWMvb3Blbi5jcHAgXAorICAgIGJpb25pYy9wYXRoY29uZi5jcHAgXAogICAgIGJpb25pYy9wYXVzZS5jcHAgXAogICAgIGJpb25pYy9waXBlLmNwcCBcCiAgICAgYmlvbmljL3BvbGwuY3BwIFwKICAgICBiaW9uaWMvcG9zaXhfZmFkdmlzZS5jcHAgXAogICAgIGJpb25pYy9wb3NpeF9mYWxsb2NhdGUuY3BwIFwKKyAgICBiaW9uaWMvcG9zaXhfbWFkdmlzZS5jcHAgXAogICAgIGJpb25pYy9wb3NpeF90aW1lcnMuY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9hdGZvcmsuY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9hdHRyLmNwcCBcCi0gICAgYmlvbmljL3B0aHJlYWRfY29uZC5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX2NyZWF0ZS5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX2RldGFjaC5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX2VxdWFsLmNwcCBcCi0gICAgYmlvbmljL3B0aHJlYWRfZXhpdC5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX2dldGNwdWNsb2NraWQuY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9nZXRzY2hlZHBhcmFtLmNwcCBcCi0gICAgYmlvbmljL3B0aHJlYWRfZ2V0dGlkX25wLmNwcCBcCi0gICAgYmlvbmljL3B0aHJlYWRfaW50ZXJuYWxzLmNwcCBcCi0gICAgYmlvbmljL3B0aHJlYWRfam9pbi5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX2tleS5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX2tpbGwuY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9tdXRleC5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX29uY2UuY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9yd2xvY2suY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9zZWxmLmNwcCBcCi0gICAgYmlvbmljL3B0aHJlYWRfc2V0bmFtZV9ucC5jcHAgXAotICAgIGJpb25pYy9wdGhyZWFkX3NldHNjaGVkcGFyYW0uY3BwIFwKLSAgICBiaW9uaWMvcHRocmVhZF9zaWdtYXNrLmNwcCBcCiAgICAgYmlvbmljL3B0cmFjZS5jcHAgXAogICAgIGJpb25pYy9wdHkuY3BwIFwKICAgICBiaW9uaWMvcmFpc2UuY3BwIFwKQEAgLTE4Miw2ICsxODAsNyBAQAogICAgIGJpb25pYy9zY2FuZGlyLmNwcCBcCiAgICAgYmlvbmljL3NjaGVkX2dldGFmZmluaXR5LmNwcCBcCiAgICAgYmlvbmljL3NjaGVkX2dldGNwdS5jcHAgXAorICAgIGJpb25pYy9zZW1hcGhvcmUuY3BwIFwKICAgICBiaW9uaWMvc2VuZC5jcHAgXAogICAgIGJpb25pYy9zZXRlZ2lkLmNwcCBcCiAgICAgYmlvbmljL19fc2V0X2Vycm5vLmNwcCBcCkBAIC0xOTcsMjQgKzE5NiwyMSBAQAogICAgIGJpb25pYy9zaWduYWxmZC5jcHAgXAogICAgIGJpb25pYy9zaWdwZW5kaW5nLmNwcCBcCiAgICAgYmlvbmljL3NpZ3Byb2NtYXNrLmNwcCBcCisgICAgYmlvbmljL3NpZ3F1ZXVlLmNwcCBcCiAgICAgYmlvbmljL3NpZ3N1c3BlbmQuY3BwIFwKKyAgICBiaW9uaWMvc2lndGltZWR3YWl0LmNwcCBcCiAgICAgYmlvbmljL3NpZ3dhaXQuY3BwIFwKKyAgICBiaW9uaWMvc2lnd2FpdGluZm8uY3BwIFwKICAgICBiaW9uaWMvc29ja2V0LmNwcCBcCiAgICAgYmlvbmljL3N0YXQuY3BwIFwKICAgICBiaW9uaWMvc3RhdHZmcy5jcHAgXAotICAgIGJpb25pYy9zdHJjb2xsX2wuY3BwIFwKICAgICBiaW9uaWMvc3RyZXJyb3IuY3BwIFwKICAgICBiaW9uaWMvc3RyZXJyb3Jfci5jcHAgXAotICAgIGJpb25pYy9zdHJmdGltZV9sLmNwcCBcCiAgICAgYmlvbmljL3N0cnNpZ25hbC5jcHAgXAogICAgIGJpb25pYy9zdHJ0b2xkLmNwcCBcCi0gICAgYmlvbmljL3N0cnRvbGRfbC5jcHAgXAotICAgIGJpb25pYy9zdHJ0b2xsX2wuY3BwIFwKLSAgICBiaW9uaWMvc3RydG91bGxfbC5jcHAgXAotICAgIGJpb25pYy9zdHJ4ZnJtX2wuY3BwIFwKICAgICBiaW9uaWMvc3R1YnMuY3BwIFwKICAgICBiaW9uaWMvc3ltbGluay5jcHAgXAotICAgIGJpb25pYy9zeXNjb25mLmNwcCBcCisgICAgYmlvbmljL3N5c2luZm8uY3BwIFwKICAgICBiaW9uaWMvc3lzbG9nLmNwcCBcCiAgICAgYmlvbmljL3N5c19zaWdsaXN0LmMgXAogICAgIGJpb25pYy9zeXNfc2lnbmFtZS5jIFwKQEAgLTIyNiwxMCArMjIyLDI3IEBACiAgICAgYmlvbmljL3Vtb3VudC5jcHAgXAogICAgIGJpb25pYy91bmxpbmsuY3BwIFwKICAgICBiaW9uaWMvdXRpbWVzLmNwcCBcCi0gICAgYmlvbmljL3Zkc28uY3BwIFwKICAgICBiaW9uaWMvd2FpdC5jcHAgXAogICAgIGJpb25pYy93Y2hhci5jcHAgXAogICAgIGJpb25pYy93Y3R5cGUuY3BwIFwKKyAgICBiaW9uaWMvd21lbXBjcHkuY3BwIFwKKworbGliY19iaW9uaWNfc3JjX2ZpbGVzIDo9CisKKyMgVGhlIGZvcmsgaW1wbGVtZW50YXRpb24gZGVwZW5kcyBvbiBwdGhyZWFkIGRhdGEsIHNvIHdlIGNhbid0IGluY2x1ZGUgaXQgaW4KKyMgbGliY19uZGsuYS4KK2xpYmNfYmlvbmljX3NyY19maWxlcyArPSBiaW9uaWMvZm9yay5jcHAKKworIyBUaGUgZGF0YSB0aGF0IGJhY2tzIGdldGF1eHZhbCBpcyBpbml0aWFsaXplZCBpbiB0aGUgbGliYyBpbml0IGZ1bmN0aW9ucyB3aGljaAorIyBhcmUgaW52b2tlZCBieSB0aGUgbGlua2VyLiBJZiB0aGlzIGZpbGUgaXMgaW5jbHVkZWQgaW4gbGliY19uZGsuYSwgb25seSBvbmUgb2YKKyMgdGhlIGNvcGllcyBvZiB0aGUgZ2xvYmFsIGRhdGEgd2lsbCBiZSBpbml0aWFsaXplZCwgcmVzdWx0aW5nIGluIG51bGxwdHIKKyMgZGVyZWZlcmVuY2VzLgorbGliY19iaW9uaWNfc3JjX2ZpbGVzICs9IGJpb25pYy9nZXRhdXh2YWwuY3BwCisKKyMgVGhlc2UgdGhyZWUgcmVxdWlyZSBnZXRhdXh2YWwsIHdoaWNoIGlzbid0IGF2YWlsYWJsZSBvbiBvbGRlciBwbGF0Zm9ybXMuCitsaWJjX2Jpb25pY19zcmNfZmlsZXMgKz0gYmlvbmljL2dldGVudHJvcHlfbGludXguYworbGliY19iaW9uaWNfc3JjX2ZpbGVzICs9IGJpb25pYy9zeXNjb25mLmNwcAorbGliY19iaW9uaWNfc3JjX2ZpbGVzICs9IGJpb25pYy92ZHNvLmNwcAogCiBsaWJjX2N4YV9zcmNfZmlsZXMgOj0gXAogICAgIGJpb25pYy9fX2N4YV9ndWFyZC5jcHAgXApAQCAtMjQwLDkgKzI1Myw2IEBACiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9nZW4vbGRleHAuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9nZW4vc2xlZXAuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9nZW4vdXNsZWVwLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkaW8vZmNsb3NlLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkaW8vZmxhZ3MuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRpby9mb3Blbi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0ZGxpYi9hYnMuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRsaWIvZ2V0b3B0X2xvbmcuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRsaWIvaW1heGFicy5jIFwKQEAgLTI2Nyw3ICsyNzcsNiBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RyaW5nL3djc3Nwbi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0cmluZy93Y3N0b2suYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdHJpbmcvd21lbWNoci5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0cmluZy93bWVtY3B5LmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RyaW5nL3dtZW1zZXQuYyBcCiAKIGxpYmNfdXBzdHJlYW1fbmV0YnNkX3NyY19maWxlcyA6PSBcCkBAIC0yODgsOCArMjk3LDggQEAKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RkbGliL2Rpdi5jIFwKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RkbGliL2RyYW5kNDguYyBcCiAgICAgdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9lcmFuZDQ4LmMgXAotICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvaW5zcXVlLmMgXAogICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvanJhbmQ0OC5jIFwKKyAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RkbGliL2xjb25nNDguYyBcCiAgICAgdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9sZGl2LmMgXAogICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvbGxkaXYuYyBcCiAgICAgdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9scmFuZDQ4LmMgXApAQCAtMjk3LDE0ICszMDYsMTIgQEAKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RkbGliL25yYW5kNDguYyBcCiAgICAgdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9fcmFuZDQ4LmMgXAogICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvcmFuZF9yLmMgXAotICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvcmVtcXVlLmMgXAogICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvc2VlZDQ4LmMgXAogICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvc3JhbmQ0OC5jIFwKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RyaW5nL21lbWNjcHkuYyBcCiAgICAgdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0cmluZy9zdHJjYXNlc3RyLmMgXAogICAgIHVwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdHJpbmcvc3RyY29sbC5jIFwKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RyaW5nL3N0cnhmcm0uYyBcCi0gICAgdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3VuaXN0ZC9raWxscGcuYyBcCiAKIGxpYmNfdXBzdHJlYW1fb3BlbmJzZF9nZHRvYV9zcmNfZmlsZXMgOj0gXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvYW5kcm9pZC9nZHRvYV9zdXBwb3J0LmNwcCBcCkBAIC0zMzMsMTEgKzM0MCwxOCBAQAogICAgICQobGliY191cHN0cmVhbV9vcGVuYnNkX2dkdG9hX3NyY19maWxlcykgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2R0b2Evc3RydG9yUS5jIFwKIAorIyBUaGVzZSB0d28gZGVwZW5kIG9uIGdldGVudHJvcHlfbGludXguY3BwLCB3aGljaCBpc24ndCBpbiBsaWJjX25kay5hLgogbGliY191cHN0cmVhbV9vcGVuYnNkX3NyY19maWxlcyA6PSBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9jcnlwdC9hcmM0cmFuZG9tLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvY3J5cHQvYXJjNHJhbmRvbV91bmlmb3JtLmMgXAorCitsaWJjX3Vwc3RyZWFtX29wZW5ic2RfbmRrX3NyY19maWxlcyA6PSBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9jb21wYXQtNDMva2lsbHBnLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL2FsYXJtLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL2N0eXBlXy5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi9kYWVtb24uYyBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vZXJyLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL2VycnguYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vZXhlYy5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi9mbm1hdGNoLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL2Z0b2suYyBcCkBAIC0zNDcsNiArMzYxLDEyIEBACiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vdGltZS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi90b2xvd2VyXy5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi90b3VwcGVyXy5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi92ZXJyLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3ZlcnJ4LmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3Z3YXJuLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3Z3YXJueC5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi93YXJuLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3dhcm54LmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbG9jYWxlL2J0b3djLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbG9jYWxlL21icmxlbi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2xvY2FsZS9tYnN0b3djcy5jIFwKQEAgLTM4MCw2ICs0MDAsNyBAQAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vYXNwcmludGYuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9jbHJlcnIuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9kcHJpbnRmLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmNsb3NlLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmRvcGVuLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmVvZi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZlcnJvci5jIFwKQEAgLTM5MSw2ICs0MTIsOSBAQAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmdldHdjLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmdldHdzLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmlsZW5vLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmxhZ3MuYyBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mbWVtb3Blbi5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZvcGVuLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZnByaW50Zi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZwdXJnZS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZwdXRjLmMgXApAQCAtNDE4LDYgKzQ0Miw4IEBACiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9nZXR3Y2hhci5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL21ha2VidWYuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9ta3RlbXAuYyBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9vcGVuX21lbXN0cmVhbS5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL29wZW5fd21lbXN0cmVhbS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3BlcnJvci5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3ByaW50Zi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3B1dGMuYyBcCkBAIC00MzQsNyArNDYwLDYgQEAKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3NldGJ1ZmZlci5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3NldHZidWYuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9zc2NhbmYuYyBcCi0gICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9zdGRpby5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3N3cHJpbnRmLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vc3dzY2FuZi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3RlbXBuYW0uYyBcCkBAIC00NjAsMTMgKzQ4NSwxNCBAQAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vd3ByaW50Zi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3dzY2FuZi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3dzZXR1cC5jIFwKLSAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9hdGV4aXQuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvYXRvaS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9hdG9sLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL2F0b2xsLmMgXAotICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL2V4aXQuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvZ2V0ZW52LmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL2luc3F1ZS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9sc2VhcmNoLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3JlYWxsb2NhcnJheS5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9yZW1xdWUuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc2V0ZW52LmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvaW1heC5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b2wuYyBcCkBAIC00ODYsMTMgKzUxMiw1NyBAQAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cnNwbi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJzdHIuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RydG9rLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3dtZW1jcHkuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvd2NzbGNweS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy93Y3NzdHIuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvd2Nzd2lkdGguYyBcCiAKK2xpYmNfcHRocmVhZF9zcmNfZmlsZXMgOj0gXAorICAgIGJpb25pYy9wdGhyZWFkX2F0Zm9yay5jcHAgXAorICAgIGJpb25pYy9wdGhyZWFkX2F0dHIuY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9jb25kLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfY3JlYXRlLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfZGV0YWNoLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfZXF1YWwuY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9leGl0LmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfZ2V0Y3B1Y2xvY2tpZC5jcHAgXAorICAgIGJpb25pYy9wdGhyZWFkX2dldHNjaGVkcGFyYW0uY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9nZXR0aWRfbnAuY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9pbnRlcm5hbC5jcHAgXAorICAgIGJpb25pYy9wdGhyZWFkX2pvaW4uY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9rZXkuY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9raWxsLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfbXV0ZXguY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9vbmNlLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfcndsb2NrLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfc2VsZi5jcHAgXAorICAgIGJpb25pYy9wdGhyZWFkX3NldG5hbWVfbnAuY3BwIFwKKyAgICBiaW9uaWMvcHRocmVhZF9zZXRzY2hlZHBhcmFtLmNwcCBcCisgICAgYmlvbmljL3B0aHJlYWRfc2lnbWFzay5jcHAgXAorCitsaWJjX3RocmVhZF9hdGV4aXRfaW1wbF9zcmNfZmlsZXMgOj0gXAorICAgIGJpb25pYy9fX2N4YV90aHJlYWRfYXRleGl0X2ltcGwuY3BwIFwKKwogbGliY19hcmNoX3N0YXRpY19zcmNfZmlsZXMgOj0gXAogICAgIGJpb25pYy9kbF9pdGVyYXRlX3BoZHJfc3RhdGljLmNwcCBcCiAKKyMgVmFyaW91cyBraW5kcyBvZiBMUDMyIGNydWZ0LgorIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorbGliY19iaW9uaWNfc3JjX2ZpbGVzXzMyICs9IFwKKyAgICBiaW9uaWMvbW1hcC5jcHAgXAorCitsaWJjX2NvbW1vbl9zcmNfZmlsZXNfMzIgKz0gXAorICAgIGJpb25pYy9sZWdhY3lfMzJfYml0X3N1cHBvcnQuY3BwIFwKKyAgICBiaW9uaWMvbmRrX2NydWZ0LmNwcCBcCisgICAgYmlvbmljL3RpbWU2NC5jIFwKKworbGliY19uZXRic2Rfc3JjX2ZpbGVzXzMyICs9IFwKKyAgICB1cHN0cmVhbS1uZXRic2QvY29tbW9uL2xpYi9saWJjL2hhc2gvc2hhMS9zaGExLmMgXAorCitsaWJjX29wZW5ic2Rfc3JjX2ZpbGVzXzMyICs9IFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3B1dHcuYyBcCisKKwogIyBEZWZpbmUgc29tZSBjb21tb24gY2ZsYWdzCiAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiBsaWJjX2NvbW1vbl9jZmxhZ3MgOj0gXApAQCAtNTM1LDEzICs2MDUsNiBAQAogICBsaWJjX2NvbW1vbl9jZmxhZ3MgKz0gLURNQUxMT0NfQUxJR05NRU5UPSQoQk9BUkRfTUFMTE9DX0FMSUdOTUVOVCkKIGVuZGlmCiAKLSMgRGVmaW5lIEFORFJPSURfU01QIGFwcHJvcHJpYXRlbHkuCi1pZmVxICgkKFRBUkdFVF9DUFVfU01QKSx0cnVlKQotICAgIGxpYmNfY29tbW9uX2NmbGFncyArPSAtREFORFJPSURfU01QPTEKLWVsc2UKLSAgICBsaWJjX2NvbW1vbl9jZmxhZ3MgKz0gLURBTkRST0lEX1NNUD0wCi1lbmRpZgotCiAjIERlZmluZSBzb21lIGNvbW1vbiBjb25seWZsYWdzCiBsaWJjX2NvbW1vbl9jb25seWZsYWdzIDo9IFwKICAgICAtc3RkPWdudTk5CkBAIC01NTYsMTIgKzYxOSwxMyBAQAogICAgICQoTE9DQUxfUEFUSCkvc3RkaW8gICBcCiAKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSMgQWRkIGluIHRoZSBhcmNoLXNwZWNpZmljIGZsYWdzLgorIyBBZGQgaW4gdGhlIGFyY2ggb3IgMzItYml0IHNwZWNpZmljIGZsYWdzCiAjIE11c3QgYmUgY2FsbGVkIHdpdGggJChldmFsKS4KICMgJCgxKTogdGhlIExPQ0FMXyB2YXJpYWJsZSBuYW1lCiAjICQoMik6IHRoZSBiaW9uaWMgdmFyaWFibGUgbmFtZSB0byBwdWxsIGluCiBkZWZpbmUgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncwogJCgxKV8kKFRBUkdFVF9BUkNIKSArPSAkKCQoMilfJChUQVJHRVRfQVJDSCkpCiskKDEpXzMyICs9ICQoJCgyKV8zMikKIGlmZGVmIFRBUkdFVF8yTkRfQVJDSAogJCgxKV8kKFRBUkdFVF8yTkRfQVJDSCkgKz0gJCgkKDIpXyQoVEFSR0VUXzJORF9BUkNIKSkKIGVuZGlmCkBAIC01ODYsNyArNjUwLDEwIEBACiBMT0NBTF9NT0RVTEUgOj0gbGliY19zdGFja19wcm90ZWN0b3IKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiAKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKIGluY2x1ZGUgJChCVUlMRF9TVEFUSUNfTElCUkFSWSkKQEAgLTYyNCw3ICs2OTEsMTAgQEAKIExPQ0FMX01PRFVMRSA6PSBsaWJjX3R6Y29kZQogTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCiBMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQorTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKIAogJChldmFsICQoY2FsbCBwYXRjaC11cC1hcmNoLXNwZWNpZmljLWZsYWdzLExPQ0FMX0NGTEFHUyxsaWJjX2NvbW1vbl9jZmxhZ3MpKQogaW5jbHVkZSAkKEJVSUxEX1NUQVRJQ19MSUJSQVJZKQpAQCAtNjQyLDI1ICs3MTIsMzUgQEAKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvaXNjL2V2X3RpbWVycy5jIFwKICAgICB1cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvcmVzb2x2L210Y3R4cmVzLmMgXAogCi1MT0NBTF9DRkxBR1MgOj0gXAorIyBXZSB1c2UgdGhlIE9wZW5CU0QgcmVzX3JhbmRvbS4KK0xPQ0FMX0NGTEFHUyArPSBcCisgICAgLURyZXNfcmFuZG9taWQ9X19yZXNfcmFuZG9taWQKK0xPQ0FMX1NSQ19GSUxFUyArPSBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvcmVzX3JhbmRvbS5jIFwKKworTE9DQUxfQ0ZMQUdTICs9IFwKICAgICAkKGxpYmNfY29tbW9uX2NmbGFncykgXAogICAgIC1EQU5EUk9JRF9DSEFOR0VTIFwKICAgICAtRElORVQ2IFwKICAgICAtZnZpc2liaWxpdHk9aGlkZGVuIFwKICAgICAtV25vLXVudXNlZC1wYXJhbWV0ZXIgXAotICAgIC1JJChMT0NBTF9QQVRIKS9kbnMvaW5jbHVkZSBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3ByaXZhdGUgXAotICAgIC1JJChMT0NBTF9QQVRIKS91cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvaW5jbHVkZSBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW5ldGJzZC9hbmRyb2lkL2luY2x1ZGUgXAogICAgIC1pbmNsdWRlIG5ldGJzZC1jb21wYXQuaCBcCiAKIExPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQogTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykKLUxPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKQorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpIFwKKyAgICAkKExPQ0FMX1BBVEgpL2Rucy9pbmNsdWRlIFwKKyAgICAkKExPQ0FMX1BBVEgpL3ByaXZhdGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL2luY2x1ZGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tbmV0YnNkL2FuZHJvaWQvaW5jbHVkZSBcCisKIExPQ0FMX01PRFVMRSA6PSBsaWJjX2RucwogTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCiBMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQorTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKIAogJChldmFsICQoY2FsbCBwYXRjaC11cC1hcmNoLXNwZWNpZmljLWZsYWdzLExPQ0FMX0NGTEFHUyxsaWJjX2NvbW1vbl9jZmxhZ3MpKQogaW5jbHVkZSAkKEJVSUxEX1NUQVRJQ19MSUJSQVJZKQpAQCAtNjc5LDE3ICs3NTksMjEgQEAKIExPQ0FMX0NGTEFHUyA6PSBcCiAgICAgJChsaWJjX2NvbW1vbl9jZmxhZ3MpIFwKICAgICAtV25vLXNpZ24tY29tcGFyZSAtV25vLXVuaW5pdGlhbGl6ZWQgXAotICAgIC1JJChMT0NBTF9QQVRIKS91cHN0cmVhbS1mcmVlYnNkL2FuZHJvaWQvaW5jbHVkZSBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvaW5jbHVkZSBcCiAgICAgLWluY2x1ZGUgZnJlZWJzZC1jb21wYXQuaCBcCiAKIExPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQogTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykKLUxPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKQorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpIFwKKyAgICAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLWZyZWVic2QvYW5kcm9pZC9pbmNsdWRlIFwKKyAgICAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvaW5jbHVkZSBcCisKIExPQ0FMX01PRFVMRSA6PSBsaWJjX2ZyZWVic2QKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiAKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19mcmVlYnNkX3NyY19maWxlcykpCkBAIC03MTAsMTcgKzc5NCwyMSBAQAogICAgICQobGliY19jb21tb25fY2ZsYWdzKSBcCiAgICAgLVduby1zaWduLWNvbXBhcmUgLVduby11bmluaXRpYWxpemVkIFwKICAgICAtRFBPU0lYX01JU1RBS0UgXAotICAgIC1JJChMT0NBTF9QQVRIKS91cHN0cmVhbS1uZXRic2QvYW5kcm9pZC9pbmNsdWRlIFwKLSAgICAtSSQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL2luY2x1ZGUgXAogICAgIC1pbmNsdWRlIG5ldGJzZC1jb21wYXQuaCBcCiAKIExPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQogTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykKLUxPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKQorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpIFwKKyAgICAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW5ldGJzZC9hbmRyb2lkL2luY2x1ZGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL2luY2x1ZGUgXAorCiBMT0NBTF9NT0RVTEUgOj0gbGliY19uZXRic2QKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiAKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19uZXRic2Rfc3JjX2ZpbGVzKSkKQEAgLTcyOCw2ICs4MTYsNDYgQEAKIAogCiAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisjIGxpYmNfb3BlbmJzZF9uZGsuYSAtIHVwc3RyZWFtIE9wZW5CU0QgQyBsaWJyYXJ5IGNvZGUKKyMgdGhhdCBjYW4gYmUgc2FmZWx5IGluY2x1ZGVkIGluIHRoZSBsaWJjX25kay5hIChkb2Vzbid0CisjIGNvbnRhaW4gYW55IHRyb3VibGVzb21lIGdsb2JhbCBkYXRhIG9yIGNvbnN0cnVjdG9ycykuCisjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisjCisjIFRoZXNlIGZpbGVzIGFyZSBidWlsdCB3aXRoIHRoZSBvcGVuYnNkLWNvbXBhdC5oIGhlYWRlciBmaWxlCisjIGF1dG9tYXRpY2FsbHkgaW5jbHVkZWQuCisKK2luY2x1ZGUgJChDTEVBUl9WQVJTKQorCitMT0NBTF9TUkNfRklMRVMgOj0gJChsaWJjX3Vwc3RyZWFtX29wZW5ic2RfbmRrX3NyY19maWxlcykKK0xPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQorCitMT0NBTF9DRkxBR1MgOj0gXAorICAgICQobGliY19jb21tb25fY2ZsYWdzKSBcCisgICAgLVduby1zaWduLWNvbXBhcmUgXAorICAgIC1Xbm8tdW5pbml0aWFsaXplZCBcCisgICAgLVduby11bnVzZWQtcGFyYW1ldGVyIFwKKyAgICAtaW5jbHVkZSBvcGVuYnNkLWNvbXBhdC5oIFwKKworTE9DQUxfQ09OTFlGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2Nvbmx5ZmxhZ3MpCitMT0NBTF9DUFBGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NwcGZsYWdzKQorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpIFwKKyAgICAkKExPQ0FMX1BBVEgpL3ByaXZhdGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tb3BlbmJzZC9hbmRyb2lkL2luY2x1ZGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9pbmNsdWRlIFwKKyAgICAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2R0b2EvIFwKKworTE9DQUxfTU9EVUxFIDo9IGxpYmNfb3BlbmJzZF9uZGsKK0xPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKK0xPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQorCiskKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfQ0ZMQUdTLGxpYmNfY29tbW9uX2NmbGFncykpCitpbmNsdWRlICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCisKKworIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogIyBsaWJjX29wZW5ic2QuYSAtIHVwc3RyZWFtIE9wZW5CU0QgQyBsaWJyYXJ5IGNvZGUKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICMKQEAgLTczNywyOCArODY1LDI5IEBACiBpbmNsdWRlICQoQ0xFQVJfVkFSUykKIAogTE9DQUxfU1JDX0ZJTEVTIDo9ICQobGliY191cHN0cmVhbV9vcGVuYnNkX3NyY19maWxlcykKLWlmbmVxICgsJChmaWx0ZXIgJChUQVJHRVRfQVJDSCkseDg2IHg4Nl82NCkpCi0gICMgQ2xhbmcgaGFzIHdyb25nIGxvbmcgZG91YmxlIHNpemUgb3IgTERCTF9NQU5UX0RJRywgaHR0cDovL2IvMTcxNjM2NTEuCi0gIExPQ0FMX0NMQU5HIDo9IGZhbHNlCi1lbHNlCi0gIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQotZW5kaWYKK0xPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQogCiBMT0NBTF9DRkxBR1MgOj0gXAogICAgICQobGliY19jb21tb25fY2ZsYWdzKSBcCi0gICAgLVduby1zaWduLWNvbXBhcmUgLVduby11bmluaXRpYWxpemVkIC1Xbm8tdW51c2VkLXBhcmFtZXRlciBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3ByaXZhdGUgXAotICAgIC1JJChMT0NBTF9QQVRIKS91cHN0cmVhbS1vcGVuYnNkL2FuZHJvaWQvaW5jbHVkZSBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvaW5jbHVkZSBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2R0b2EvIFwKKyAgICAtV25vLXNpZ24tY29tcGFyZSBcCisgICAgLVduby11bmluaXRpYWxpemVkIFwKKyAgICAtV25vLXVudXNlZC1wYXJhbWV0ZXIgXAogICAgIC1pbmNsdWRlIG9wZW5ic2QtY29tcGF0LmggXAogCiBMT0NBTF9DT05MWUZMQUdTIDo9ICQobGliY19jb21tb25fY29ubHlmbGFncykKIExPQ0FMX0NQUEZMQUdTIDo9ICQobGliY19jb21tb25fY3BwZmxhZ3MpCi1MT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykKK0xPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKSBcCisgICAgJChMT0NBTF9QQVRIKS9wcml2YXRlIFwKKyAgICAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW9wZW5ic2QvYW5kcm9pZC9pbmNsdWRlIFwKKyAgICAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvaW5jbHVkZSBcCisgICAgJChMT0NBTF9QQVRIKS91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dkdG9hLyBcCisKIExPQ0FMX01PRFVMRSA6PSBsaWJjX29wZW5ic2QKIExPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQogCiAkKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfQ0ZMQUdTLGxpYmNfY29tbW9uX2NmbGFncykpCiAkKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfU1JDX0ZJTEVTLGxpYmNfb3BlbmJzZF9zcmNfZmlsZXMpKQpAQCAtNzc2LDI4ICs5MDUsMjcgQEAKIAogTE9DQUxfU1JDX0ZJTEVTXzMyIDo9ICQobGliY191cHN0cmVhbV9vcGVuYnNkX2dkdG9hX3NyY19maWxlc18zMikKIExPQ0FMX1NSQ19GSUxFU182NCA6PSAkKGxpYmNfdXBzdHJlYW1fb3BlbmJzZF9nZHRvYV9zcmNfZmlsZXNfNjQpCi1pZm5lcSAoLCQoZmlsdGVyICQoVEFSR0VUX0FSQ0gpLHg4NiB4ODZfNjQpKQotICAjIENsYW5nIGhhcyB3cm9uZyBsb25nIGRvdWJsZSBzaXplIG9yIExEQkxfTUFOVF9ESUcsIGh0dHA6Ly9iLzE3MTYzNjUxLgotICBMT0NBTF9DTEFORyA6PSBmYWxzZQotZWxzZQotICBMT0NBTF9DTEFORyA6PSAkKHVzZV9jbGFuZykKLWVuZGlmCitMT0NBTF9DTEFORyA6PSAkKHVzZV9jbGFuZykKIAogTE9DQUxfQ0ZMQUdTIDo9IFwKICAgICAkKGxpYmNfY29tbW9uX2NmbGFncykgXAogICAgIC1Xbm8tc2lnbi1jb21wYXJlIC1Xbm8tdW5pbml0aWFsaXplZCBcCiAgICAgLWZ2aXNpYmlsaXR5PWhpZGRlbiBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3ByaXZhdGUgXAotICAgIC1JJChMT0NBTF9QQVRIKS91cHN0cmVhbS1vcGVuYnNkL2FuZHJvaWQvaW5jbHVkZSBcCi0gICAgLUkkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvaW5jbHVkZSBcCiAgICAgLWluY2x1ZGUgb3BlbmJzZC1jb21wYXQuaCBcCiAKIExPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQogTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykKLUxPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKQorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpIFwKKyAgICAkKExPQ0FMX1BBVEgpL3ByaXZhdGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tb3BlbmJzZC9hbmRyb2lkL2luY2x1ZGUgXAorICAgICQoTE9DQUxfUEFUSCkvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9pbmNsdWRlIFwKKwogTE9DQUxfTU9EVUxFIDo9IGxpYmNfZ2R0b2EKIExPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQogCiAkKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfQ0ZMQUdTLGxpYmNfY29tbW9uX2NmbGFncykpCiBpbmNsdWRlICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCkBAIC04MTMsMjMgKzk0MSwxMDYgQEAKIExPQ0FMX0NGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NmbGFncykgXAogICAgIC1XZnJhbWUtbGFyZ2VyLXRoYW49MjA0OCBcCiAKLWlmZXEgKCQoVEFSR0VUX0FSQ0gpLHg4Nl82NCkKLSAgIyBDbGFuZyBhc3NlbWJsZXIgaGFzIHByb2JsZW0gd2l0aCBzc3NlMy1zdHJjbXAtc2xtLlMsIGh0dHA6Ly9iLzE3MzAyOTkxCi0gIExPQ0FMX0NMQU5HX0FTRkxBR1MgKz0gLW5vLWludGVncmF0ZWQtYXMKLWVuZGlmCisjIG1lbWNweS5TLCBtZW1jaHIuUywgZXRjLiBkbyBub3QgY29tcGlsZSB3aXRoIENsYW5nLgorTE9DQUxfQ0xBTkdfQVNGTEFHU19hcm0gKz0gLW5vLWludGVncmF0ZWQtYXMKK0xPQ0FMX0NMQU5HX0FTRkxBR1NfYXJtNjQgKz0gLW5vLWludGVncmF0ZWQtYXMKIAogTE9DQUxfQ09OTFlGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2Nvbmx5ZmxhZ3MpCi1MT0NBTF9DUFBGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NwcGZsYWdzKQotTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpCitMT0NBTF9DUFBGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NwcGZsYWdzKSAtV29sZC1zdHlsZS1jYXN0CitMT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykgYmlvbmljL2xpYnN0ZGMrKy9pbmNsdWRlCiBMT0NBTF9NT0RVTEUgOj0gbGliY19iaW9uaWMKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCisKKyQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKK2luY2x1ZGUgJChCVUlMRF9TVEFUSUNfTElCUkFSWSkKKworCisjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisjIGxpYmNfYmlvbmljX25kay5hIC0gVGhlIHBvcnRpb25zIG9mIGxpYmNfYmlvbmljIHRoYXQgY2FuCisjIGJlIHNhZmVseSB1c2VkIGluIGxpYmNfbmRrLmEgKG5vIHRyb3VibGVzb21lIGdsb2JhbCBkYXRhCisjIG9yIGNvbnN0cnVjdG9ycykuCisjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK2luY2x1ZGUgJChDTEVBUl9WQVJTKQorCitMT0NBTF9TUkNfRklMRVMgOj0gJChsaWJjX2Jpb25pY19uZGtfc3JjX2ZpbGVzKQorTE9DQUxfQ0ZMQUdTIDo9ICQobGliY19jb21tb25fY2ZsYWdzKSBcCisgICAgLVdmcmFtZS1sYXJnZXItdGhhbj0yMDQ4IFwKKworIyBtZW1jcHkuUywgbWVtY2hyLlMsIGV0Yy4gZG8gbm90IGNvbXBpbGUgd2l0aCBDbGFuZy4KK0xPQ0FMX0NMQU5HX0FTRkxBR1NfYXJtICs9IC1uby1pbnRlZ3JhdGVkLWFzCitMT0NBTF9DTEFOR19BU0ZMQUdTX2FybTY0ICs9IC1uby1pbnRlZ3JhdGVkLWFzCisKK0xPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQorTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykgLVdvbGQtc3R5bGUtY2FzdAorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpIGJpb25pYy9saWJzdGRjKysvaW5jbHVkZQorTE9DQUxfTU9EVUxFIDo9IGxpYmNfYmlvbmljX25kaworTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCitMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCitMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQorTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKIAogJChldmFsICQoY2FsbCBwYXRjaC11cC1hcmNoLXNwZWNpZmljLWZsYWdzLExPQ0FMX0NGTEFHUyxsaWJjX2NvbW1vbl9jZmxhZ3MpKQogJChldmFsICQoY2FsbCBwYXRjaC11cC1hcmNoLXNwZWNpZmljLWZsYWdzLExPQ0FMX1NSQ19GSUxFUyxsaWJjX2Jpb25pY19zcmNfZmlsZXMpKQogaW5jbHVkZSAkKEJVSUxEX1NUQVRJQ19MSUJSQVJZKQogCitpbmNsdWRlICQoQ0xFQVJfVkFSUykKK0xPQ0FMX1NSQ19GSUxFUyA6PSAkKGxpYmNfdGhyZWFkX2F0ZXhpdF9pbXBsX3NyY19maWxlcykKK0xPQ0FMX0NGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NmbGFncykgLVdmcmFtZS1sYXJnZXItdGhhbj0yMDQ4CisKK0xPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQorTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykgLVdvbGQtc3R5bGUtY2FzdAorTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpCitMT0NBTF9NT0RVTEUgOj0gbGliY190aHJlYWRfYXRleGl0X2ltcGwKKyMgVE9ETzogQ2xhbmcgdHJpZXMgdG8gdXNlIF9fdGxzX2dldF9hZGRyIHdoaWNoIGlzIG5vdCBzdXBwb3J0ZWQgeWV0CisjIHJlbW92ZSBhZnRlciBpdCBpcyBpbXBsZW1lbnRlZC4KK0xPQ0FMX0NMQU5HIDo9IGZhbHNlCitMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCitMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQorTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKKworaW5jbHVkZSAkKEJVSUxEX1NUQVRJQ19MSUJSQVJZKQorCisjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisjIGxpYmNfcHRocmVhZC5hIC0gcHRocmVhZHMgcGFydHMgdGhhdCBwcmV2aW91c2x5IGxpdmVkIGluCisjIGxpYmNfYmlvbmljLmEuIFJlbG9jYXRlZCB0byB0aGVpciBvd24gbGlicmFyeSBiZWNhdXNlCisjIHRoZXkgY2FuJ3QgYmUgaW5jbHVkZWQgaW4gbGliY19uZGsuYSAoYXMgdGhleSBsYXlvdXQgb2YKKyMgcHRocmVhZF90IGhhcyBjaGFuZ2VkIG92ZXIgdGhlIHllYXJzIGFuZCBoYXMgQUJJCisjIGNvbXBhdGliaWxpdHkgaXNzdWVzKS4KKyMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworaW5jbHVkZSAkKENMRUFSX1ZBUlMpCisKK0xPQ0FMX1NSQ19GSUxFUyA6PSAkKGxpYmNfcHRocmVhZF9zcmNfZmlsZXMpCitMT0NBTF9DRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jZmxhZ3MpIFwKKyAgICAtV2ZyYW1lLWxhcmdlci10aGFuPTIwNDggXAorCisjIG1lbWNweS5TLCBtZW1jaHIuUywgZXRjLiBkbyBub3QgY29tcGlsZSB3aXRoIENsYW5nLgorTE9DQUxfQ0xBTkdfQVNGTEFHU19hcm0gKz0gLW5vLWludGVncmF0ZWQtYXMKK0xPQ0FMX0NMQU5HX0FTRkxBR1NfYXJtNjQgKz0gLW5vLWludGVncmF0ZWQtYXMKKworTE9DQUxfQ09OTFlGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2Nvbmx5ZmxhZ3MpCitMT0NBTF9DUFBGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NwcGZsYWdzKSAtV29sZC1zdHlsZS1jYXN0CitMT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykKK0xPQ0FMX01PRFVMRSA6PSBsaWJjX3B0aHJlYWQKK0xPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQorTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQorTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCisKK2luY2x1ZGUgJChCVUlMRF9TVEFUSUNfTElCUkFSWSkKKwogCiAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAjIGxpYmNfY3hhLmEgLSBUaGluZ3MgdHJhZGl0aW9uYWxseSBpbiBsaWJzdGRjKysKQEAgLTg0MywxMiArMTA1NCwyMSBAQAogCiBMT0NBTF9DT05MWUZMQUdTIDo9ICQobGliY19jb21tb25fY29ubHlmbGFncykKIExPQ0FMX0NQUEZMQUdTIDo9ICQobGliY19jb21tb25fY3BwZmxhZ3MpCi1MT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykKK0xPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKSBiaW9uaWMvbGlic3RkYysrL2luY2x1ZGUKIExPQ0FMX01PRFVMRSA6PSBsaWJjX2N4YQotIyBHQ0MgcmVmdXNlcyB0byBoaWRlIG5ldy9kZWxldGUKLUxPQ0FMX0NMQU5HIDo9IHRydWUKK0xPQ0FMX0NMQU5HIDo9IHRydWUgIyBHQ0MgcmVmdXNlcyB0byBoaWRlIG5ldy9kZWxldGUKIExPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorIyBiLzE3NTc0MDc4OiBOZWVkIHRvIGRpc2FibGUgY292ZXJhZ2UgdW50aWwgd2UgaGF2ZSBhIHByZWJ1aWx0IGxpYnByb2ZpbGVfcnQuCisjIFNpbmNlIHRoaXMgaXMgYSBzdGF0aWMgbGlicmFyeSBidWlsdCB3aXRoIGNsYW5nLCBpdCBuZWVkcyB0byBsaW5rCisjIGxpYnByb2ZpbGVfcnQgd2hlbiBpdCBpcyBsaW5rZWQgaW50byB0aGUgZmluYWwgYmluYXJ5LiBTaW5jZSB0aGUgZmluYWwgYmluYXJ5CisjIGlzIGJ1aWx0IHdpdGggR0NDLCBpdCB3b24ndCBsaW5rIGxpYnByb2ZpbGVfcnQuIFdlIGNhbid0IHZlcnkgZWFzaWx5IGp1c3QgYWRkCisjIGxpYnByb2ZpbGVfcnQgdG8gYWxsIGxpbmsgbGluZXMgdGhlIHdheSB3ZSd2ZSBkb25lIGZvciBsaWJnY292IGJlY2F1c2UKKyMgbGlicHJvZmlsZV9ydCBpc24ndCBwcmVidWlsdCwgYW5kIGl0IHdvdWxkIGJlIHRyaWNreSB0byB3cml0ZSBhIHJ1bGUgdGhhdAorIyB3b3VsZCBtYWtlIHN1cmUgbGlicHJvZmlsZV9ydCBpcyBidWlsdC4KK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSBmYWxzZQogCiBpbmNsdWRlICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCiAKQEAgLTg2Niw3ICsxMDg2LDEwIEBACiBMT0NBTF9NT0RVTEUgOj0gbGliY19zeXNjYWxscwogTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCiBMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQorTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKIAogaW5jbHVkZSAkKEJVSUxEX1NUQVRJQ19MSUJSQVJZKQogCkBAIC04ODUsOCArMTEwOCw3OCBAQAogTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCiBMT0NBTF9DRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jZmxhZ3MpIC1mbm8tYnVpbHRpbgogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQorTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCisKK2luY2x1ZGUgJChCVUlMRF9TVEFUSUNfTElCUkFSWSkKKworIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorIyBsaWJjX25kay5hCisjIENvbXBhdGliaWxpdHkgbGlicmFyeSBmb3IgdGhlIE5ESy4gVGhpcyBsaWJyYXJ5IGNvbnRhaW5zCisjIGFsbCB0aGUgcGFydHMgb2YgbGliYyB0aGF0IGFyZSBzYWZlIHRvIHN0YXRpY2FsbHkgbGluay4KKyMgV2UgY2FuJ3Qgc2FmZWx5IHN0YXRpY2FsbHkgbGluayB0aGluZ3MgdGhhdCBjYW4gb25seSBydW4KKyMgb24gYSBjZXJ0YWluIHZlcnNpb24gb2YgdGhlIE9TLiBFeGFtcGxlcyBpbmNsdWRlCisjIGFueXRoaW5nIHRoYXQgdGFsa3MgdG8gbmV0ZCAoYSBsYXJnZSBwb3J0aW9uIG9mIHRoZSBETlMKKyMgY29kZSkgYW5kIGFueXRoaW5nIHRoYXQgaXMgZGVwZW5kZW50IG9uIHRoZSBsYXlvdXQgb2YgYQorIyBkYXRhIHN0cnVjdHVyZSB0aGF0IGhhcyBjaGFuZ2VkIGFjcm9zcyByZWxlYXNlcyAoc3VjaCBhcworIyBwdGhyZWFkX3QpLgorIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitpbmNsdWRlICQoQ0xFQVJfVkFSUykKKworTE9DQUxfTU9EVUxFIDo9IGxpYmNfbmRrCitMT0NBTF9DTEFORyA6PSAkKHVzZV9jbGFuZykKK0xPQ0FMX0FTRkxBR1MgOj0gJChMT0NBTF9DRkxBR1MpCitMT0NBTF9DT05MWUZMQUdTIDo9ICQobGliY19jb21tb25fY29ubHlmbGFncykKK0xPQ0FMX0NGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NmbGFncykgLWZ2aXNpYmlsaXR5PWhpZGRlbiAtTzAKK0xPQ0FMX0NQUEZMQUdTIDo9ICQobGliY19jb21tb25fY3BwZmxhZ3MpCitMT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykKK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQogCitMT0NBTF9TUkNfRklMRVMgOj0gXAorICAgICQobGliY19jb21tb25fc3JjX2ZpbGVzKSBcCisgICAgJChsaWJjX2FyY2hfZHluYW1pY19zcmNfZmlsZXMpIFwKKyAgICAkKGxpYmNfbmRrX3N0dWJfc3JjX2ZpbGVzKSBcCisgICAgYmlvbmljL21hbGxvY19kZWJ1Z19jb21tb24uY3BwIFwKKworTE9DQUxfU1JDX0ZJTEVTX2FybSArPSBcCisgICAgYXJjaC1jb21tb24vYmlvbmljL2NydGJlZ2luX3NvLmMgXAorICAgIGFyY2gtYXJtL2Jpb25pYy9hdGV4aXRfbGVnYWN5LmMgXAorICAgIGFyY2gtY29tbW9uL2Jpb25pYy9jcnRlbmRfc28uUyBcCisKK0xPQ0FMX0NGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NmbGFncykgXAorICAgIC1ETElCQ19TVEFUSUMgXAorCitMT0NBTF9XSE9MRV9TVEFUSUNfTElCUkFSSUVTIDo9IFwKKyAgICBsaWJjX2Jpb25pY19uZGsgXAorICAgIGxpYmNfY3hhIFwKKyAgICBsaWJjX2ZyZWVic2QgXAorICAgIGxpYmNfZ2R0b2EgXAorICAgIGxpYmNfbWFsbG9jIFwKKyAgICBsaWJjX25ldGJzZCBcCisgICAgbGliY19vcGVuYnNkX25kayBcCisgICAgbGliY19zdGFja19wcm90ZWN0b3IgXAorICAgIGxpYmNfc3lzY2FsbHMgXAorICAgIGxpYmNfdHpjb2RlIFwKKyAgICBsaWJtIFwKKworTE9DQUxfV0hPTEVfU1RBVElDX0xJQlJBUklFU19hcm0gOj0gbGliY19hZWFiaQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCisKK2lmbmVxICgkKE1BTExPQ19JTVBMKSxkbG1hbGxvYykKK0xPQ0FMX1dIT0xFX1NUQVRJQ19MSUJSQVJJRVMgKz0gbGliamVtYWxsb2MKK2VuZGlmCisKKyQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKKyQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19jb21tb25fc3JjX2ZpbGVzKSkKKyQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19hcmNoX2R5bmFtaWNfc3JjX2ZpbGVzKSkKKyQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9BU0ZMQUdTLExPQ0FMX0NGTEFHUykpCisKK0xPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpCiBpbmNsdWRlICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCiAKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQEAgLTkwNSw2ICsxMTk4LDcgQEAKIExPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpCiBMT0NBTF9XSE9MRV9TVEFUSUNfTElCUkFSSUVTIDo9IFwKICAgICBsaWJjX2Jpb25pYyBcCisgICAgbGliY19iaW9uaWNfbmRrIFwKICAgICBsaWJjX2N4YSBcCiAgICAgbGliY19kbnMgXAogICAgIGxpYmNfZnJlZWJzZCBcCkBAIC05MTIsMjAgKzEyMDYsMjIgQEAKICAgICBsaWJjX21hbGxvYyBcCiAgICAgbGliY19uZXRic2QgXAogICAgIGxpYmNfb3BlbmJzZCBcCisgICAgbGliY19vcGVuYnNkX25kayBcCisgICAgbGliY19wdGhyZWFkIFwKICAgICBsaWJjX3N0YWNrX3Byb3RlY3RvciBcCiAgICAgbGliY19zeXNjYWxscyBcCisgICAgbGliY190aHJlYWRfYXRleGl0X2ltcGwgXAogICAgIGxpYmNfdHpjb2RlIFwKIAogTE9DQUxfV0hPTEVfU1RBVElDX0xJQlJBUklFU19hcm0gOj0gbGliY19hZWFiaQogCi1pZm5lcSAoJChNQUxMT0NfSU1QTCksZGxtYWxsb2MpCi1MT0NBTF9XSE9MRV9TVEFUSUNfTElCUkFSSUVTICs9IGxpYmplbWFsbG9jCi1lbmRpZgotCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CiAKICMgVE9ETzogc3BsaXQgb3V0IHRoZSBhc2ZsYWdzLgogTE9DQUxfQVNGTEFHUyA6PSAkKExPQ0FMX0NGTEFHUykKK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiAKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19jb21tb25fc3JjX2ZpbGVzKSkKQEAgLTk0Nyw3ICsxMjQzLDYgQEAKIAogTE9DQUxfU1JDX0ZJTEVTIDo9IFwKICAgICAkKGxpYmNfYXJjaF9zdGF0aWNfc3JjX2ZpbGVzKSBcCi0gICAgJChsaWJjX3N0YXRpY19jb21tb25fc3JjX2ZpbGVzKSBcCiAgICAgYmlvbmljL2xpYmNfaW5pdF9zdGF0aWMuY3BwCiAKIExPQ0FMX0NfSU5DTFVERVMgOj0gJChsaWJjX2NvbW1vbl9jX2luY2x1ZGVzKQpAQCAtOTYxLDcgKzEyNTYsMTAgQEAKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKIExPQ0FMX1dIT0xFX1NUQVRJQ19MSUJSQVJJRVMgOj0gbGliY19jb21tb24KK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiAKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9TUkNfRklMRVMsbGliY19hcmNoX3N0YXRpY19zcmNfZmlsZXMpKQpAQCAtOTgyLDYgKzEyODAsOSBAQAogTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpCiBMT0NBTF9NT0RVTEUgOj0gbGliY19tYWxsb2MKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQorTE9DQUxfQ1hYX1NUTCA6PSBub25lCitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKIGluY2x1ZGUgJChCVUlMRF9TVEFUSUNfTElCUkFSWSkKIApAQCAtOTkzLDcgKzEyOTQsNiBAQAogCiBMT0NBTF9TUkNfRklMRVMgOj0gXAogICAgICQobGliY19hcmNoX3N0YXRpY19zcmNfZmlsZXMpIFwKLSAgICAkKGxpYmNfc3RhdGljX2NvbW1vbl9zcmNfZmlsZXMpIFwKICAgICBiaW9uaWMvbWFsbG9jX2RlYnVnX2NvbW1vbi5jcHAgXAogICAgIGJpb25pYy9saWJjX2luaXRfc3RhdGljLmNwcCBcCiAKQEAgLTEwMDcsNyArMTMwNywxNSBAQAogTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCiBMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQogTE9DQUxfV0hPTEVfU1RBVElDX0xJQlJBUklFUyA6PSBsaWJjX2NvbW1vbgorCitpZm5lcSAoJChNQUxMT0NfSU1QTCksZGxtYWxsb2MpCitMT0NBTF9XSE9MRV9TVEFUSUNfTElCUkFSSUVTICs9IGxpYmplbWFsbG9jCitlbmRpZgorCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQogCiAkKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfQ0ZMQUdTLGxpYmNfY29tbW9uX2NmbGFncykpCiAkKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfU1JDX0ZJTEVTLGxpYmNfYXJjaF9zdGF0aWNfc3JjX2ZpbGVzKSkKQEAgLTEwMjIsMjMgKzEzMzAsMzEgQEAKIExPQ0FMX0NGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NmbGFncykKIExPQ0FMX0NPTkxZRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jb25seWZsYWdzKQogTE9DQUxfQ1BQRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jcHBmbGFncykKKwogTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpCiBMT0NBTF9TUkNfRklMRVMgOj0gXAorICAgIGFyY2gtY29tbW9uL2Jpb25pYy9jcnRiZWdpbl9zby5jIFwKKyAgICBhcmNoLWNvbW1vbi9iaW9uaWMvY3J0YnJhbmQuUyBcCiAgICAgJChsaWJjX2FyY2hfZHluYW1pY19zcmNfZmlsZXMpIFwKLSAgICAkKGxpYmNfc3RhdGljX2NvbW1vbl9zcmNfZmlsZXMpIFwKICAgICBiaW9uaWMvbWFsbG9jX2RlYnVnX2NvbW1vbi5jcHAgXAogICAgIGJpb25pYy9saWJjX2luaXRfZHluYW1pYy5jcHAgXAogICAgIGJpb25pYy9OZXRkQ2xpZW50LmNwcCBcCisgICAgYXJjaC1jb21tb24vYmlvbmljL2NydGVuZF9zby5TIFwKIAogTE9DQUxfTU9EVUxFIDo9IGxpYmMKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQotTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKIExPQ0FMX1JFUVVJUkVEX01PRFVMRVMgOj0gdHpkYXRhCitMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSBcCisgICAgJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykgXAorICAgICQoTE9DQUxfUEFUSCkvdmVyc2lvbl9zY3JpcHQudHh0IFwKIAogIyBMZWF2ZSB0aGUgc3ltYm9scyBpbiB0aGUgc2hhcmVkIGxpYnJhcnkgc28gdGhhdCBzdGFjayB1bndpbmRlcnMgY2FuIHByb2R1Y2UKICMgbWVhbmluZ2Z1bCBuYW1lIHJlc29sdXRpb24uCiBMT0NBTF9TVFJJUF9NT0RVTEUgOj0ga2VlcF9zeW1ib2xzCiAKKyMgRG8gbm90IHBhY2sgbGliYy5zbyByZWxvY2F0aW9uczsgc2VlIGh0dHA6Ly9iLzIwNjQ1MzIxIGZvciBkZXRhaWxzLgorTE9DQUxfUEFDS19NT0RVTEVfUkVMT0NBVElPTlMgOj0gZmFsc2UKKwogIyBXQVJOSU5HOiBUaGUgb25seSBsaWJyYXJ5IGxpYmMuc28gc2hvdWxkIGRlcGVuZCBvbiBpcyBsaWJkbC5zbyEgIElmIHlvdSBhZGQgb3RoZXIgbGlicmFyaWVzLAogIyBtYWtlIHN1cmUgdG8gYWRkIC1XbCwtLWV4Y2x1ZGUtbGlicz1saWJnY2MuYSB0byB0aGUgTE9DQUxfTERGTEFHUyBmb3IgdGhvc2UgbGlicmFyaWVzLiAgVGhpcwogIyBlbnN1cmVzIHRoYXQgc3ltYm9scyB0aGF0IGFyZSBwdWxsZWQgaW50byB0aG9zZSBuZXcgbGlicmFyaWVzIGZyb20gbGliZ2NjLmEgYXJlIG5vdCBkZWNsYXJlZApAQCAtMTA0OSwyNSArMTM2NSwzOSBAQAogCiBMT0NBTF9TSEFSRURfTElCUkFSSUVTIDo9IGxpYmRsCiBMT0NBTF9XSE9MRV9TVEFUSUNfTElCUkFSSUVTIDo9IGxpYmNfY29tbW9uCisKK2lmbmVxICgkKE1BTExPQ19JTVBMKSxkbG1hbGxvYykKK0xPQ0FMX1dIT0xFX1NUQVRJQ19MSUJSQVJJRVMgKz0gbGliamVtYWxsb2MKK2VuZGlmCisKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KIAorIyBEb24ndCByZS1leHBvcnQgbmV3L2RlbGV0ZSBhbmQgZnJpZW5kcywgZXZlbiBpZiB0aGUgY29tcGlsZXIgcmVhbGx5IHdhbnRzIHRvLgorTE9DQUxfTERGTEFHUyA6PSAtV2wsLS12ZXJzaW9uLXNjcmlwdCwkKExPQ0FMX1BBVEgpL3ZlcnNpb25fc2NyaXB0LnR4dAorCiAjIFdlJ2QgcmVhbGx5IGxpa2UgdG8gZG8gdGhpcyBmb3IgYWxsIGFyY2hpdGVjdHVyZXMsIGJ1dCBzaW5jZSB0aGlzIHdhc24ndCBkb25lCiAjIGJlZm9yZSwgdGhlc2Ugc3ltYm9scyBtdXN0IGNvbnRpbnVlIHRvIGJlIGV4cG9ydGVkIG9uIExQMzIgZm9yIGJpbmFyeQogIyBjb21wYXRpYmlsaXR5LgotTE9DQUxfTERGTEFHU19hcm02NCA6PSAtV2wsLS1leGNsdWRlLWxpYnMsbGliZ2NjLmEKLUxPQ0FMX0xERkxBR1NfbWlwczY0IDo9IC1XbCwtLWV4Y2x1ZGUtbGlicyxsaWJnY2MuYQotTE9DQUxfTERGTEFHU194ODZfNjQgOj0gLVdsLC0tZXhjbHVkZS1saWJzLGxpYmdjYy5hCisjIFRPRE86IGRpc2FibGVkIGZvciBodHRwOi8vYi8yMDA2NTc3NC4KKyNMT0NBTF9MREZMQUdTXzY0IDo9IC1XbCwtLWV4Y2x1ZGUtbGlicyxsaWJnY2MuYQorCisjIFRPRE86IFRoaXMgaXMgdG8gd29yayBhcm91bmQgYi8xOTA1OTg4NS4gUmVtb3ZlIGFmdGVyIHJvb3QgY2F1c2UgaXMgZml4ZWQKK0xPQ0FMX0xERkxBR1NfYXJtIDo9IC1XbCwtLWhhc2gtc3R5bGU9c3lzdgogCiAkKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfQ0ZMQUdTLGxpYmNfY29tbW9uX2NmbGFncykpCiAkKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfU1JDX0ZJTEVTLGxpYmNfYXJjaF9keW5hbWljX3NyY19maWxlcykpCi0kKGV2YWwgJChjYWxsIHBhdGNoLXVwLWFyY2gtc3BlY2lmaWMtZmxhZ3MsTE9DQUxfU1JDX0ZJTEVTLGxpYmNfc3RhdGljX2NvbW1vbl9zcmNfZmlsZXMpKQorCitMT0NBTF9OT19DUlQgOj0gdHJ1ZQorTE9DQUxfQVNGTEFHUyArPSAkKGxpYmNfY3J0X3RhcmdldF9jZmxhZ3MpCisKICMgc3BlY2lhbCBmb3IgYXJtCi1MT0NBTF9OT19DUlRfYXJtIDo9IHRydWUKIExPQ0FMX0NGTEFHU19hcm0gKz0gLURDUlRfTEVHQUNZX1dPUktBUk9VTkQKIExPQ0FMX1NSQ19GSUxFU19hcm0gKz0gXAotICAgIGFyY2gtY29tbW9uL2Jpb25pYy9jcnRiZWdpbl9zby5jIFwKLSAgICBhcmNoLWFybS9iaW9uaWMvYXRleGl0X2xlZ2FjeS5jIFwKLSAgICBhcmNoLWNvbW1vbi9iaW9uaWMvY3J0ZW5kX3NvLlMKKyAgICBhcmNoLWFybS9iaW9uaWMvYXRleGl0X2xlZ2FjeS5jCisKK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiAKIGluY2x1ZGUgJChCVUlMRF9TSEFSRURfTElCUkFSWSkKIApAQCAtMTA4NSwxMCArMTQxNSw3IEBACiAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiBpbmNsdWRlICQoQ0xFQVJfVkFSUykKIAotTE9DQUxfQ0ZMQUdTIDo9IFwKLSAgICAkKGxpYmNfY29tbW9uX2NmbGFncykgXAotICAgIC1ETUFMTE9DX0xFQUtfQ0hFQ0sgXAotCitMT0NBTF9DRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jZmxhZ3MpCiBMT0NBTF9DT05MWUZMQUdTIDo9ICQobGliY19jb21tb25fY29ubHlmbGFncykKIExPQ0FMX0NQUEZMQUdTIDo9ICQobGliY19jb21tb25fY3BwZmxhZ3MpCiAKQEAgLTExMDUsMTcgKzE0MzIsMjYgQEAKIAogTE9DQUxfTU9EVUxFIDo9IGxpYmNfbWFsbG9jX2RlYnVnX2xlYWsKIExPQ0FMX0NMQU5HIDo9ICQodXNlX2NsYW5nKQotTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChsaWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcykKK0xPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9IFwKKyAgICAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKSBcCisgICAgJChMT0NBTF9QQVRIKS92ZXJzaW9uX3NjcmlwdC50eHQgXAogCiBMT0NBTF9TSEFSRURfTElCUkFSSUVTIDo9IGxpYmMgbGliZGwKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogTE9DQUxfU1lTVEVNX1NIQVJFRF9MSUJSQVJJRVMgOj0KICMgT25seSBuZWVkIHRoaXMgZm9yIGFybSBzaW5jZSBsaWJjKysgdXNlcyBpdHMgb3duIHVud2luZCBjb2RlIHRoYXQKICMgZG9lc24ndCBtaXggd2l0aCB0aGUgb3RoZXIgZGVmYXVsdCB1bndpbmQgY29kZS4KLUxPQ0FMX1NUQVRJQ19MSUJSQVJJRVNfYXJtIDo9IGxpYmMrKworTE9DQUxfU1RBVElDX0xJQlJBUklFU19hcm0gOj0gbGlidW53aW5kX2xsdm0KK0xPQ0FMX1NUQVRJQ19MSUJSQVJJRVMgKz0gbGliYysrYWJpCiBMT0NBTF9BTExPV19VTkRFRklORURfU1lNQk9MUyA6PSB0cnVlCiAKKyMgRG9uJ3QgcmUtZXhwb3J0IG5ldy9kZWxldGUgYW5kIGZyaWVuZHMsIGV2ZW4gaWYgdGhlIGNvbXBpbGVyIHJlYWxseSB3YW50cyB0by4KK0xPQ0FMX0xERkxBR1MgOj0gLVdsLC0tdmVyc2lvbi1zY3JpcHQsJChMT0NBTF9QQVRIKS92ZXJzaW9uX3NjcmlwdC50eHQKKwogIyBEb24ndCBpbnN0YWxsIG9uIHJlbGVhc2UgYnVpbGQKIExPQ0FMX01PRFVMRV9UQUdTIDo9IGVuZyBkZWJ1ZworTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK0xPQ0FMX05BVElWRV9DT1ZFUkFHRSA6PSAkKGJpb25pY19jb3ZlcmFnZSkKIAogJChldmFsICQoY2FsbCBwYXRjaC11cC1hcmNoLXNwZWNpZmljLWZsYWdzLExPQ0FMX0NGTEFHUyxsaWJjX2NvbW1vbl9jZmxhZ3MpKQogaW5jbHVkZSAkKEJVSUxEX1NIQVJFRF9MSUJSQVJZKQpAQCAtMTE0MSwxMyArMTQ3NywyMSBAQAogCiBMT0NBTF9NT0RVTEUgOj0gbGliY19tYWxsb2NfZGVidWdfcWVtdQogTE9DQUxfQ0xBTkcgOj0gJCh1c2VfY2xhbmcpCi1MT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKGxpYmNfY29tbW9uX2FkZGl0aW9uYWxfZGVwZW5kZW5jaWVzKQorTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gXAorICAgICQobGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMpIFwKKyAgICAkKExPQ0FMX1BBVEgpL3ZlcnNpb25fc2NyaXB0LnR4dCBcCiAKIExPQ0FMX1NIQVJFRF9MSUJSQVJJRVMgOj0gbGliYyBsaWJkbAorTE9DQUxfQ1hYX1NUTCA6PSBub25lCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PQogCisjIERvbid0IHJlLWV4cG9ydCBuZXcvZGVsZXRlIGFuZCBmcmllbmRzLCBldmVuIGlmIHRoZSBjb21waWxlciByZWFsbHkgd2FudHMgdG8uCitMT0NBTF9MREZMQUdTIDo9IC1XbCwtLXZlcnNpb24tc2NyaXB0LCQoTE9DQUxfUEFUSCkvdmVyc2lvbl9zY3JpcHQudHh0CisKICMgRG9uJ3QgaW5zdGFsbCBvbiByZWxlYXNlIGJ1aWxkCiBMT0NBTF9NT0RVTEVfVEFHUyA6PSBlbmcgZGVidWcKK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiAKICQoZXZhbCAkKGNhbGwgcGF0Y2gtdXAtYXJjaC1zcGVjaWZpYy1mbGFncyxMT0NBTF9DRkxBR1MsbGliY19jb21tb25fY2ZsYWdzKSkKIGluY2x1ZGUgJChCVUlMRF9TSEFSRURfTElCUkFSWSkKQEAgLTExNjQsMjYgKzE1MDgsMzYgQEAKICAgICBiaW9uaWMvbGliY19sb2dnaW5nLmNwcCBcCiAKIGluY2x1ZGUgJChDTEVBUl9WQVJTKQotTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpCitMT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykgYmlvbmljL2xpYnN0ZGMrKy9pbmNsdWRlCiBMT0NBTF9DRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jZmxhZ3MpCiBMT0NBTF9DUFBGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NwcGZsYWdzKQorCisjIFRPRE86IFRoaXMgaXMgdG8gd29yayBhcm91bmQgYi8xOTA1OTg4NS4gUmVtb3ZlIGFmdGVyIHJvb3QgY2F1c2UgaXMgZml4ZWQKK0xPQ0FMX0xERkxBR1NfYXJtIDo9IC1XbCwtLWhhc2gtc3R5bGU9c3lzdgorCiBMT0NBTF9TUkNfRklMRVMgOj0gJChsaWJzdGRjeHhfY29tbW9uX3NyY19maWxlcykKIExPQ0FMX01PRFVMRTo9IGxpYnN0ZGMrKwogTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChMT0NBTF9QQVRIKS9BbmRyb2lkLm1rCitMT0NBTF9DWFhfU1RMIDo9IG5vbmUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9IGxpYmMKK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitMT0NBTF9OQVRJVkVfQ09WRVJBR0UgOj0gJChiaW9uaWNfY292ZXJhZ2UpCiBpbmNsdWRlICQoQlVJTERfU0hBUkVEX0xJQlJBUlkpCiAKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICMgbGlic3RkYysrLmEKICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIGluY2x1ZGUgJChDTEVBUl9WQVJTKQotTE9DQUxfQ19JTkNMVURFUyA6PSAkKGxpYmNfY29tbW9uX2NfaW5jbHVkZXMpCitMT0NBTF9DX0lOQ0xVREVTIDo9ICQobGliY19jb21tb25fY19pbmNsdWRlcykgYmlvbmljL2xpYnN0ZGMrKy9pbmNsdWRlCiBMT0NBTF9DRkxBR1MgOj0gJChsaWJjX2NvbW1vbl9jZmxhZ3MpCiBMT0NBTF9DUFBGTEFHUyA6PSAkKGxpYmNfY29tbW9uX2NwcGZsYWdzKQogTE9DQUxfU1JDX0ZJTEVTIDo9ICQobGlic3RkY3h4X2NvbW1vbl9zcmNfZmlsZXMpCiBMT0NBTF9NT0RVTEU6PSBsaWJzdGRjKysKIExPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5taworTE9DQUxfQ1hYX1NUTCA6PSBub25lCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PSBsaWJjCitMT0NBTF9BRERSRVNTX1NBTklUSVpFUiA6PSBmYWxzZQorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQogaW5jbHVkZSAkKEJVSUxEX1NUQVRJQ19MSUJSQVJZKQogCiAKZGlmZiAtLWdpdCBhL2xpYmMvTk9USUNFIGIvbGliYy9OT1RJQ0UKaW5kZXggODBkOWEyNy4uMWZhMzFjMiAxMDA2NDQKLS0tIGEvbGliYy9OT1RJQ0UKKysrIGIvbGliYy9OT1RJQ0UKQEAgLTE2NzksMzUgKzE2NzksNiBAQAogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLUNvcHlyaWdodCAoYykgMTk5MCBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCi1BbGwgcmlnaHRzIHJlc2VydmVkLgotCi1SZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLW1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotYXJlIG1ldDoKLTEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0yLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLTMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotCi1USElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAotQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi1JTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi1GT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLU9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLUxJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLU9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLVNVQ0ggREFNQUdFLgotCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KIENvcHlyaWdodCAoYykgMTk5MCBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLgogQWxsIHJpZ2h0cyByZXNlcnZlZC4KIApAQCAtMjUxMSwzNSArMjQ4Miw2IEBACiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIENvcHlyaWdodCAoYykgMTk5MwotICAgICBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLQotUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci1tb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLWFyZSBtZXQ6Ci0xLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0zLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCi0gICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLQotVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLUFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLUFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLURBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi1PUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLUhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi1MSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi1PVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi1TVUNIIERBTUFHRS4KLQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1Db3B5cmlnaHQgKGMpIDE5OTMKICAgIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKQEAgLTI1NjgsMzMgKzI1MTAsNiBAQAogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLUNvcHlyaWdodCAoYykgMTk5MyBDaHJpc3RvcGhlciBHLiBEZW1ldHJpb3UKLUFsbCByaWdodHMgcmVzZXJ2ZWQuCi0KLVJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi1hcmUgbWV0OgotMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLTIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotMy4gVGhlIG5hbWUgb2YgdGhlIGF1dGhvciBtYXkgbm90IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzCi0gICBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbgotCi1USElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUgotSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUwotT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4KLUlOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLUlOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAotTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi1USEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0oSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLVRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQogQ29weXJpZ2h0IChjKSAxOTkzIE1hcnRpbiBCaXJnbWVpZXIKIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKQEAgLTI3MTQsNjMgKzI2MjksNiBAQAogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLUNvcHlyaWdodCAoYykgMTk5Ni0yMDA0IFBlciBGb2dlbHN0cm9tLCBPcHN5Y29uIEFCCi0KLVJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi1hcmUgbWV0OgotMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLTIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotCi1USElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUwotT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLVdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZCi1ESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLURBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi1PUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLUhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi1MSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi1PVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi1TVUNIIERBTUFHRS4KLQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1Db3B5cmlnaHQgKGMpIDE5OTcgTWFyayBCcmluaWNvbWJlCi1BbGwgcmlnaHRzIHJlc2VydmVkLgotCi1SZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLW1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotYXJlIG1ldDoKLTEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0yLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLTMuIEFsbCBhZHZlcnRpc2luZyBtYXRlcmlhbHMgbWVudGlvbmluZyBmZWF0dXJlcyBvciB1c2Ugb2YgdGhpcyBzb2Z0d2FyZQotICAgbXVzdCBkaXNwbGF5IHRoZSBmb2xsb3dpbmcgYWNrbm93bGVkZ2VtZW50OgotICAgVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSBNYXJrIEJyaW5pY29tYmUKLTQuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotCi1USElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi1BTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLUlNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi1BUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLURBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi1PUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLUhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi1MSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi1PVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi1TVUNIIERBTUFHRS4KLQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCiBDb3B5cmlnaHQgKGMpIDE5OTcgTWFyayBCcmluaWNvbWJlCiBDb3B5cmlnaHQgKGMpIDIwMTAgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0LgogQWxsIHJpZ2h0cyByZXNlcnZlZC4KQEAgLTMxMzEsMzggKzI5ODksNiBAQAogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLUNvcHlyaWdodCAoYykgMTk5OSBLdW5nbGlnYSBUZWtuaXNrYSBIw7Znc2tvbGFuCi0oUm95YWwgSW5zdGl0dXRlIG9mIFRlY2hub2xvZ3ksIFN0b2NraG9sbSwgU3dlZGVuKS4KLUFsbCByaWdodHMgcmVzZXJ2ZWQuCi0KLVJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi1hcmUgbWV0OgotCi0xLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotCi0yLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLQotMy4gTmVpdGhlciB0aGUgbmFtZSBvZiBLVEggbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQotICAgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dAotICAgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotCi1USElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEtUSCBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQotRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLUlNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgS1RIIE9SIElUUyBDT05UUklCVVRPUlMgQkUKLUxJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLUNPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi1TVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IKLUJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLAotV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IKLU9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYKLQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCiBDb3B5cmlnaHQgKGMpIDIwMDAgQmVuIEhhcnJpcy4KIENvcHlyaWdodCAoQykgMTk5NSwgMTk5NiwgMTk5NywgYW5kIDE5OTggV0lERSBQcm9qZWN0LgogQWxsIHJpZ2h0cyByZXNlcnZlZC4KQEAgLTM0MjYsMzQgKzMyNTIsNiBAQAogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLUNvcHlyaWdodCAoYykgMjAwMiBPcHN5Y29uIEFCICAod3d3Lm9wc3ljb24uc2UgLyB3d3cub3BzeWNvbi5jb20pCi0KLVJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi1hcmUgbWV0OgotMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLTIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotMy4gTmVpdGhlciB0aGUgbmFtZSBvZiBPcHN5Y29uIEFCIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCi0gICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLQotVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MKLU9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi1XQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLUFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWQotRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi1EQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi1IT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotU1VDSCBEQU1BR0UuCi0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQogQ29weXJpZ2h0IChjKSAyMDAyIFRoZSBOZXRCU0QgRm91bmRhdGlvbiwgSW5jLgogQWxsIHJpZ2h0cyByZXNlcnZlZC4KIApAQCAtNDA4Niw2ICszODg0LDIyIEBACiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAorQ29weXJpZ2h0IChjKSAyMDA4IE90dG8gTW9lcmJlZWsgPG90dG9AZHJpamYubmV0PgorCitQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkKK3B1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGUgYWJvdmUKK2NvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyIGluIGFsbCBjb3BpZXMuCisKK1RIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwgV0FSUkFOVElFUworV0lUSCBSRUdBUkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxMIElNUExJRUQgV0FSUkFOVElFUyBPRgorTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTLiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IKK0FOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNULCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMKK1dIQVRTT0VWRVIgUkVTVUxUSU5HIEZST00gTE9TUyBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTgorQUNUSU9OIE9GIENPTlRSQUNULCBORUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YKK09SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCisKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwogQ29weXJpZ2h0IChjKSAyMDA4IFRvZGQgQy4gTWlsbGVyIDxtaWxsZXJ0QG9wZW5ic2Qub3JnPgogCiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkKQEAgLTQ0MjIsNiArNDIzNiwzOSBAQAogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKK0NvcHlyaWdodCAoYykgMjAxMSBNYXJ0aW4gUGlldWNob3QgPG1waUBvcGVuYnNkLm9yZz4KKworUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZSBmb3IgYW55CitwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhlIGFib3ZlCitjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIGFwcGVhciBpbiBhbGwgY29waWVzLgorCitUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMIFdBUlJBTlRJRVMKK1dJVEggUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVEIFdBUlJBTlRJRVMgT0YKK01FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SCitBTlkgU1BFQ0lBTCwgRElSRUNULCBJTkRJUkVDVCwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTCitXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NIExPU1MgT0YgVVNFLCBEQVRBIE9SIFBST0ZJVFMsIFdIRVRIRVIgSU4gQU4KK0FDVElPTiBPRiBDT05UUkFDVCwgTkVHTElHRU5DRSBPUiBPVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GCitPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUiBQRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLgorCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0NvcHlyaWdodCAoYykgMjAxMSBNYXJ0aW4gUGlldWNob3QgPG1waUBvcGVuYnNkLm9yZz4KK0NvcHlyaWdodCAoYykgMjAwOSBUZWQgVW5hbmdzdAorCitQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkKK3B1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGUgYWJvdmUKK2NvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyIGluIGFsbCBjb3BpZXMuCisKK1RIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwgV0FSUkFOVElFUworV0lUSCBSRUdBUkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxMIElNUExJRUQgV0FSUkFOVElFUyBPRgorTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTLiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IKK0FOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNULCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMKK1dIQVRTT0VWRVIgUkVTVUxUSU5HIEZST00gTE9TUyBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTgorQUNUSU9OIE9GIENPTlRSQUNULCBORUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YKK09SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCisKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwogQ29weXJpZ2h0IChjKSAyMDExIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKIENvcHlyaWdodCAoYykgMjAwOCBBUk0gTHRkCiBBbGwgcmlnaHRzIHJlc2VydmVkLgpAQCAtNDYzOSwzNSArNDQ4NiwzMiBAQAogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKLUNvcHlyaWdodCAoYykgMjAxMywgTGluYXJvIExpbWl0ZWQKLSAgIEFsbCByaWdodHMgcmVzZXJ2ZWQuCitDb3B5cmlnaHQgKGMpIDIwMTMgVGhlIE5ldEJTRCBGb3VuZGF0aW9uLCBJbmMuCitBbGwgcmlnaHRzIHJlc2VydmVkLgogCi0gICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICAgYXJlIG1ldDoKK1RoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gVGhlIE5ldEJTRCBGb3VuZGF0aW9uCitieSBDaHJpc3RvcyBab3VsYXMuCiAKLSAgICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0OgorMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKzIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgogCi0gICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotCi0gICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgTGluYXJvIExpbWl0ZWQgbm9yIHRoZSBuYW1lcyBvZiBpdHMKLSAgICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAotICAgICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotCi0gICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gICAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAotICAgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICAgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotICAgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0gICBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAgIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAgIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICAgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIE5FVEJTRCBGT1VOREFUSU9OLCBJTkMuIEFORCBDT05UUklCVVRPUlMKK2BgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRAorVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKK1BVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgRk9VTkRBVElPTiBPUiBDT05UUklCVVRPUlMKK0JFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKK0NPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCitTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKK0lOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCitDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKK1BPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKQEAgLTQ4NTMsNiArNDY5Nyw0MiBAQAogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKK0NvcHlyaWdodCAxOTk3IE5pZWxzIFByb3ZvcyA8cHJvdm9zQHBoeXNuZXQudW5pLWhhbWJ1cmcuZGU+CitDb3B5cmlnaHQgMjAwOCBEYW1pZW4gTWlsbGVyIDxkam1Ab3BlbmJzZC5vcmc+CitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitUaGVvIGRlIFJhYWR0IDxkZXJhYWR0QG9wZW5ic2Qub3JnPiBjYW1lIHVwIHdpdGggdGhlIGlkZWEgb2YgdXNpbmcKK3N1Y2ggYSBtYXRoZW1hdGljYWwgc3lzdGVtIHRvIGdlbmVyYXRlIG1vcmUgcmFuZG9tICh5ZXQgbm9uLXJlcGVhdGluZykKK2lkcyB0byBzb2x2ZSB0aGUgcmVzb2x2ZXIvbmFtZWQgcHJvYmxlbS4gIEJ1dCBOaWVscyBkZXNpZ25lZCB0aGUKK2FjdHVhbCBzeXN0ZW0gYmFzZWQgb24gdGhlIGNvbnN0cmFpbnRzLgorCitMYXRlciBtb2RpZmllZCBieSBEYW1pZW4gTWlsbGVyIHRvIHdyYXAgdGhlIExDRyBvdXRwdXQgaW4gYSAxNS1iaXQKK3Blcm11dGF0aW9uIGdlbmVyYXRvciBiYXNlZCBvbiBhIEx1YnktUmFja29mZiBibG9jayBjaXBoZXIuIFRoaXMKK2Vuc3VyZXMgdGhlIG91dHB1dCBpcyBub24tcmVwZWF0aW5nIGFuZCBwcmVzZXJ2ZXMgdGhlIE1TQiB0d2lkZGxlCit0cmljaywgYnV0IG1ha2VzIGl0IG1vcmUgcmVzaXN0YW50IHRvIExDRyBwcmVkaWN0aW9uLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworYXJlIG1ldDoKKzEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IKK0lNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMKK09GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuCitJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCitJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQKK05PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKK0RBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCitUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKIENvcHlyaWdodCAyMDAwIERhdmlkIEUuIE8nQnJpZW4sIEpvaG4gRC4gUG9sc3RyYS4KIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKZGlmZiAtLWdpdCBhL2xpYmMvU1lTQ0FMTFMuVFhUIGIvbGliYy9TWVNDQUxMUy5UWFQKaW5kZXggYzNiN2JhYi4uMzNlMzBlYiAxMDA2NDQKLS0tIGEvbGliYy9TWVNDQUxMUy5UWFQKKysrIGIvbGliYy9TWVNDQUxMUy5UWFQKQEAgLTk1LDEzICs5NSwxMyBAQAogc3NpemVfdCAgICAgcHJlYWQ2NHxwcmVhZChpbnQsIHZvaWQqLCBzaXplX3QsIG9mZl90KSBhcm02NCxtaXBzNjQseDg2XzY0CiBzc2l6ZV90ICAgICBwd3JpdGU2NChpbnQsIHZvaWQqLCBzaXplX3QsIG9mZjY0X3QpIGFybSxtaXBzLHg4Ngogc3NpemVfdCAgICAgcHdyaXRlNjR8cHdyaXRlKGludCwgdm9pZCosIHNpemVfdCwgb2ZmX3QpIGFybTY0LG1pcHM2NCx4ODZfNjQKLWludCAgICAgICAgIGNsb3NlKGludCkgICAgICAgICAgICAgICAgICAgICAgYWxsCitpbnQgICAgICAgICBfX19jbG9zZTpjbG9zZShpbnQpICBhbGwKIHBpZF90ICAgICAgIF9fZ2V0cGlkOmdldHBpZCgpICBhbGwKIGludCAgICAgICAgIG11bm1hcCh2b2lkKiwgc2l6ZV90KSAgYWxsCiB2b2lkKiAgICAgICBtcmVtYXAodm9pZCosIHNpemVfdCwgc2l6ZV90LCB1bnNpZ25lZCBsb25nKSAgYWxsCiBpbnQgICAgICAgICBtc3luYyhjb25zdCB2b2lkKiwgc2l6ZV90LCBpbnQpICAgIGFsbAogaW50ICAgICAgICAgbXByb3RlY3QoY29uc3Qgdm9pZCosIHNpemVfdCwgaW50KSAgYWxsCi1pbnQgICAgICAgICBtYWR2aXNlKGNvbnN0IHZvaWQqLCBzaXplX3QsIGludCkgIGFsbAoraW50ICAgICAgICAgbWFkdmlzZSh2b2lkKiwgc2l6ZV90LCBpbnQpICBhbGwKIGludCAgICAgICAgIG1sb2NrKGNvbnN0IHZvaWQqIGFkZHIsIHNpemVfdCBsZW4pICAgIGFsbAogaW50ICAgICAgICAgbXVubG9jayhjb25zdCB2b2lkKiBhZGRyLCBzaXplX3QgbGVuKSAgIGFsbAogaW50ICAgICAgICAgbWxvY2thbGwoaW50IGZsYWdzKSAgIGFsbApAQCAtMTEzLDcgKzExMyw3IEBACiBpbnQgICAgICAgICBfX2ZjbnRsNjQ6ZmNudGw2NChpbnQsIGludCwgdm9pZCopICBhcm0sbWlwcyx4ODYKIGludCAgICAgICAgIGZjbnRsKGludCwgaW50LCB2b2lkKikgIGFybTY0LG1pcHM2NCx4ODZfNjQKIGludCAgICAgICAgIGZsb2NrKGludCwgaW50KSAgIGFsbAotaW50ICAgICAgICAgZmNobW9kKGludCwgbW9kZV90KSAgYWxsCitpbnQgICAgICAgICBfX19mY2htb2Q6ZmNobW9kKGludCwgbW9kZV90KSAgYWxsCiBpbnQgICAgICAgICBkdXAoaW50KSAgYWxsCiBpbnQgICAgICAgICBwaXBlMihpbnQqLCBpbnQpIGFsbAogaW50ICAgICAgICAgZHVwMyhpbnQsIGludCwgaW50KSAgIGFsbApAQCAtMTMwLDExICsxMzAsMTEgQEAKIGludCBfX2dldGRlbnRzNjQ6Z2V0ZGVudHM2NCh1bnNpZ25lZCBpbnQsIHN0cnVjdCBkaXJlbnQqLCB1bnNpZ25lZCBpbnQpICAgYXJtLGFybTY0LG1pcHMsbWlwczY0LHg4Nix4ODZfNjQKIAogaW50IF9fb3BlbmF0Om9wZW5hdChpbnQsIGNvbnN0IGNoYXIqLCBpbnQsIG1vZGVfdCkgYWxsCi1pbnQgZmFjY2Vzc2F0KGludCwgY29uc3QgY2hhciosIGludCwgaW50KSAgYWxsCi1pbnQgZmNobW9kYXQoaW50LCBjb25zdCBjaGFyKiwgbW9kZV90LCBpbnQpICBhbGwKK2ludCBfX19mYWNjZXNzYXQ6ZmFjY2Vzc2F0KGludCwgY29uc3QgY2hhciosIGludCkgIGFsbAoraW50IF9fX2ZjaG1vZGF0OmZjaG1vZGF0KGludCwgY29uc3QgY2hhciosIG1vZGVfdCkgIGFsbAogaW50IGZjaG93bmF0KGludCwgY29uc3QgY2hhciosIHVpZF90LCBnaWRfdCwgaW50KSAgYWxsCiBpbnQgZnN0YXRhdDY0fGZzdGF0YXQ6ZnN0YXRhdDY0KGludCwgY29uc3QgY2hhciosIHN0cnVjdCBzdGF0KiwgaW50KSAgIGFybSxtaXBzLHg4NgotaW50IGZzdGF0YXQ2NHxmc3RhdGF0Om5ld2ZzdGF0YXQoaW50LCBjb25zdCBjaGFyKiwgc3RydWN0IHN0YXQqLCBpbnQpICBhcm02NCxtaXBzNjQseDg2XzY0CitpbnQgZnN0YXRhdDY0fGZzdGF0YXQ6bmV3ZnN0YXRhdChpbnQsIGNvbnN0IGNoYXIqLCBzdHJ1Y3Qgc3RhdCosIGludCkgIGFybTY0LHg4Nl82NAogaW50IGxpbmthdChpbnQsIGNvbnN0IGNoYXIqLCBpbnQsIGNvbnN0IGNoYXIqLCBpbnQpICBhbGwKIGludCBta2RpcmF0KGludCwgY29uc3QgY2hhciosIG1vZGVfdCkgIGFsbAogaW50IG1rbm9kYXQoaW50LCBjb25zdCBjaGFyKiwgbW9kZV90LCBkZXZfdCkgIGFsbApAQCAtMTc0LDEyICsxNzQsMTIgQEAKIGludCBfX2ZhZHZpc2U2NDpmYWR2aXNlNjQoaW50LCBvZmY2NF90LCBvZmY2NF90LCBpbnQpIGFybTY0LG1pcHMsbWlwczY0LHg4Nl82NAogCiBpbnQgX19mc3RhdGZzNjQ6ZnN0YXRmczY0KGludCwgc2l6ZV90LCBzdHJ1Y3Qgc3RhdGZzKikgIGFybSxtaXBzLHg4NgotaW50IGZzdGF0ZnM2NHxmc3RhdGZzOmZzdGF0ZnMoaW50LCBzdHJ1Y3Qgc3RhdGZzKikgIGFybTY0LG1pcHM2NCx4ODZfNjQKK2ludCBfX2ZzdGF0ZnM6ZnN0YXRmcyhpbnQsIHN0cnVjdCBzdGF0ZnMqKSAgYXJtNjQsbWlwczY0LHg4Nl82NAogaW50IF9fc3RhdGZzNjQ6c3RhdGZzNjQoY29uc3QgY2hhciosIHNpemVfdCwgc3RydWN0IHN0YXRmcyopICBhcm0sbWlwcyx4ODYKLWludCBzdGF0ZnM2NHxzdGF0ZnM6c3RhdGZzKGNvbnN0IGNoYXIqLCBzdHJ1Y3Qgc3RhdGZzKikgIGFybTY0LG1pcHM2NCx4ODZfNjQKK2ludCBfX3N0YXRmczpzdGF0ZnMoY29uc3QgY2hhciosIHN0cnVjdCBzdGF0ZnMqKSAgYXJtNjQsbWlwczY0LHg4Nl82NAogCiBpbnQgICAgIGZzdGF0NjR8ZnN0YXQ6ZnN0YXQ2NChpbnQsIHN0cnVjdCBzdGF0KikgICAgYXJtLG1pcHMseDg2Ci1pbnQgICAgIGZzdGF0NjR8ZnN0YXQ6ZnN0YXQoaW50LCBzdHJ1Y3Qgc3RhdCopICAgIGFybTY0LG1pcHM2NCx4ODZfNjQKK2ludCAgICAgZnN0YXQ2NHxmc3RhdDpmc3RhdChpbnQsIHN0cnVjdCBzdGF0KikgICAgYXJtNjQseDg2XzY0CiAKICMgZmlsZSBzeXN0ZW0KIGludCAgICAgY2hkaXIoY29uc3QgY2hhciopICAgICAgICAgICAgICBhbGwKQEAgLTIwMiw5ICsyMDIsOSBAQAogaW50ICAgICAgICAgICBzZXR0aW1lb2ZkYXkoY29uc3Qgc3RydWN0IHRpbWV2YWwqLCBjb25zdCBzdHJ1Y3QgdGltZXpvbmUqKSAgIGFsbAogY2xvY2tfdCAgICAgICB0aW1lcyhzdHJ1Y3QgdG1zKikgICAgICAgYWxsCiBpbnQgICAgICAgICAgIG5hbm9zbGVlcChjb25zdCBzdHJ1Y3QgdGltZXNwZWMqLCBzdHJ1Y3QgdGltZXNwZWMqKSAgIGFsbAotaW50ICAgICAgICAgICBjbG9ja19zZXR0aW1lKGNsb2NraWRfdCBjbGtfaWQsIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyogdHApICBhbGwKLWludCAgICAgICAgICAgY2xvY2tfZ2V0cmVzKGNsb2NraWRfdCBjbGtfaWQsIHN0cnVjdCB0aW1lc3BlYyogcmVzKSAgIGFsbAotaW50ICAgICAgICAgICBjbG9ja19uYW5vc2xlZXAoY2xvY2tpZF90IGNsb2NrX2lkLCBpbnQgZmxhZ3MsIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyogcmVxLCBzdHJ1Y3QgdGltZXNwZWMqIHJlbSkgIGFsbAoraW50ICAgICAgICAgICBjbG9ja19zZXR0aW1lKGNsb2NraWRfdCwgY29uc3Qgc3RydWN0IHRpbWVzcGVjKikgIGFsbAoraW50ICAgICAgICAgICBjbG9ja19nZXRyZXMoY2xvY2tpZF90LCBzdHJ1Y3QgdGltZXNwZWMqKSAgIGFsbAoraW50ICAgICAgICAgICBfX2Nsb2NrX25hbm9zbGVlcDpjbG9ja19uYW5vc2xlZXAoY2xvY2tpZF90LCBpbnQsIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyosIHN0cnVjdCB0aW1lc3BlYyopICBhbGwKIGludCAgICAgICAgICAgZ2V0aXRpbWVyKGludCwgY29uc3Qgc3RydWN0IGl0aW1lcnZhbCopICAgYWxsCiBpbnQgICAgICAgICAgIHNldGl0aW1lcihpbnQsIGNvbnN0IHN0cnVjdCBpdGltZXJ2YWwqLCBzdHJ1Y3QgaXRpbWVydmFsKikgIGFsbAogaW50ICAgICAgICAgICBfX3RpbWVyX2NyZWF0ZTp0aW1lcl9jcmVhdGUoY2xvY2tpZF90IGNsb2NraWQsIHN0cnVjdCBzaWdldmVudCogZXZwLCBfX2tlcm5lbF90aW1lcl90KiB0aW1lcmlkKSAgICBhbGwKQEAgLTIyMyw2ICsyMjMsNyBAQAogaW50ICAgICBfX3J0X3NpZ3Byb2NtYXNrOnJ0X3NpZ3Byb2NtYXNrKGludCwgY29uc3Qgc2lnc2V0X3QqLCBzaWdzZXRfdCosIHNpemVfdCkgIGFsbAogaW50ICAgICBfX3J0X3NpZ3N1c3BlbmQ6cnRfc2lnc3VzcGVuZChjb25zdCBzaWdzZXRfdCosIHNpemVfdCkgIGFsbAogaW50ICAgICBfX3J0X3NpZ3RpbWVkd2FpdDpydF9zaWd0aW1lZHdhaXQoY29uc3Qgc2lnc2V0X3QqLCBzdHJ1Y3Qgc2lnaW5mb190Kiwgc3RydWN0IHRpbWVzcGVjX3QqLCBzaXplX3QpICBhbGwKK2ludCAgICAgX19ydF9zaWdxdWV1ZWluZm86cnRfc2lncXVldWVpbmZvKHBpZF90LCBpbnQsIHNpZ2luZm9fdCopICBhbGwKIGludCAgICAgX19zaWduYWxmZDQ6c2lnbmFsZmQ0KGludCwgY29uc3Qgc2lnc2V0X3QqLCBzaXplX3QsIGludCkgIGFsbAogCiAjIHNvY2tldHMKQEAgLTMxMyw2ICszMTQsOCBAQAogaW50IHNldGZzZ2lkKGdpZF90KSAgYWxsCiBpbnQgc2V0ZnN1aWQodWlkX3QpICBhbGwKIAoraW50IHNldGhvc3RuYW1lKGNvbnN0IGNoYXIqLCBzaXplX3QpICBhbGwKKwogcGlkX3Qgd2FpdDQocGlkX3QsIGludCosIGludCwgc3RydWN0IHJ1c2FnZSopICBhbGwKIGludCBfX3dhaXRpZDp3YWl0aWQoaW50LCBwaWRfdCwgc3RydWN0IHNpZ2luZm9fdCosIGludCwgdm9pZCopICBhbGwKIApAQCAtMzIxLDcgKzMyNCw3IEBACiBpbnQgICAgIGNhY2hlZmx1c2g6X19BUk1fTlJfY2FjaGVmbHVzaChsb25nIHN0YXJ0LCBsb25nIGVuZCwgbG9uZyBmbGFncykgIGFybQogCiAjIE1JUFMtc3BlY2lmaWMKLWludCAgICAgX2ZsdXNoX2NhY2hlOmNhY2hlZmx1c2goY2hhciogYWRkciwgY29uc3QgaW50IG5ieXRlcywgY29uc3QgaW50IG9wKSBtaXBzLG1pcHM2NAoraW50ICAgICBfZmx1c2hfY2FjaGU6Y2FjaGVmbHVzaChjaGFyKiBhZGRyLCBjb25zdCBpbnQgbmJ5dGVzLCBjb25zdCBpbnQgb3ApIG1pcHMKIGludCAgICAgX19zZXRfdGxzOnNldF90aHJlYWRfYXJlYSh2b2lkKikgbWlwcyxtaXBzNjQKIAogIyB4ODYtc3BlY2lmaWMKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vYXJtLm1rIGIvbGliYy9hcmNoLWFybS9hcm0ubWsKaW5kZXggY2NhNGVkMC4uNmVmODFiYiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9hcm0ubWsKKysrIGIvbGliYy9hcmNoLWFybS9hcm0ubWsKQEAgLTEsMzAgKzEsMTAgQEAKICMgMzItYml0IGFybS4KIAogIwotIyBWYXJpb3VzIGtpbmRzIG9mIExQMzIgY3J1ZnQuCi0jCi0KLWxpYmNfYmlvbmljX3NyY19maWxlc19hcm0gKz0gXAotICAgIGJpb25pYy9tbWFwLmNwcCBcCi0KLWxpYmNfY29tbW9uX3NyY19maWxlc19hcm0gKz0gXAotICAgIGJpb25pYy9sZWdhY3lfMzJfYml0X3N1cHBvcnQuY3BwIFwKLSAgICBiaW9uaWMvbmRrX2NydWZ0LmNwcCBcCi0gICAgYmlvbmljL3RpbWU2NC5jIFwKLQotbGliY19uZXRic2Rfc3JjX2ZpbGVzX2FybSArPSBcCi0gICAgdXBzdHJlYW0tbmV0YnNkL2NvbW1vbi9saWIvbGliYy9oYXNoL3NoYTEvc2hhMS5jIFwKLQotbGliY19vcGVuYnNkX3NyY19maWxlc19hcm0gKz0gXAotICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vcHV0dy5jIFwKLQotIwogIyBEZWZhdWx0IGltcGxlbWVudGF0aW9ucyBvZiBmdW5jdGlvbnMgdGhhdCBhcmUgY29tbW9ubHkgb3B0aW1pemVkLgogIwogCiBsaWJjX2Jpb25pY19zcmNfZmlsZXNfYXJtICs9IFwKLSAgICBiaW9uaWMvbWVtY2hyLmMgXAotICAgIGJpb25pYy9tZW1yY2hyLmMgXAogICAgIGJpb25pYy9zdHJjaHIuY3BwIFwKICAgICBiaW9uaWMvc3Rybmxlbi5jIFwKICAgICBiaW9uaWMvc3RycmNoci5jcHAgXApAQCAtNDAsNyArMjAsOCBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RyaW5nL3dtZW1tb3ZlLmMgXAogCiBsaWJjX29wZW5ic2Rfc3JjX2ZpbGVzX2FybSArPSBcCi0gICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvYmNvcHkuYyBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtY2hyLmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL21lbXJjaHIuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RwbmNweS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJsY2F0LmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cmxjcHkuYyBcCkBAIC01OCwxMSArMzksOSBAQAogICAgIGFyY2gtYXJtL2Jpb25pYy9fX2Jpb25pY19jbG9uZS5TIFwKICAgICBhcmNoLWFybS9iaW9uaWMvX2V4aXRfd2l0aF9zdGFja190ZWFyZG93bi5TIFwKICAgICBhcmNoLWFybS9iaW9uaWMvbGliZ2NjX2NvbXBhdC5jIFwKLSAgICBhcmNoLWFybS9iaW9uaWMvbWVtY21wLlMgXAorICAgIGFyY2gtYXJtL2Jpb25pYy9saWJnY2NfcHJvdGVjdF91bndpbmQuYyBcCiAgICAgYXJjaC1hcm0vYmlvbmljL19fcmVzdG9yZS5TIFwKLSAgICBhcmNoLWFybS9iaW9uaWMvX3NldGptcC5TIFwKICAgICBhcmNoLWFybS9iaW9uaWMvc2V0am1wLlMgXAotICAgIGFyY2gtYXJtL2Jpb25pYy9zaWdzZXRqbXAuUyBcCiAgICAgYXJjaC1hcm0vYmlvbmljL3N5c2NhbGwuUyBcCiAKIGxpYmNfYXJjaF9zdGF0aWNfc3JjX2ZpbGVzX2FybSA6PSBhcmNoLWFybS9iaW9uaWMvZXhpZHhfc3RhdGljLmMKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL19fYWVhYmkuYyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL19fYWVhYmkuYwppbmRleCAzMjU0ZjY0Li4yNTRjN2E2IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9fX2FlYWJpLmMKKysrIGIvbGliYy9hcmNoLWFybS9iaW9uaWMvX19hZWFiaS5jCkBAIC0zOSw2ICszOSw5IEBACiAKIGV4dGVybiBpbnQgX19jeGFfYXRleGl0KHZvaWQgKCopKHZvaWQqKSwgdm9pZCosIHZvaWQqKTsKIAorLy8gQWxsIG9mIHRoZXNlIGFyZSB3ZWFrIHN5bWJvbHMgdG8gYXZvaWQgbXVsdGlwbGUgZGVmaW5pdGlvbiBlcnJvcnMgd2hlbgorLy8gbGlua2luZyB3aXRoIGxpYnN0ZGMrKy12MyBvciBjb21waWxlci1ydC4KKwogLyogVGhlICJDKysgQUJJIGZvciBBUk0iIGRvY3VtZW50IHN0YXRlcyB0aGF0IHN0YXRpYyBDKysgY29uc3RydWN0b3JzLAogICogd2hpY2ggYXJlIGNhbGxlZCBmcm9tIHRoZSAuaW5pdF9hcnJheSwgc2hvdWxkIG1hbnVhbGx5IGNhbGwKICAqIF9fYWVhYmlfYXRleGl0KCkgdG8gcmVnaXN0ZXIgc3RhdGljIGRlc3RydWN0b3JzIGV4cGxpY2l0bHkuCkBAIC00NywzNSArNTAsMzUgQEAKICAqIHZhcmlhYmxlIGZyb20gdGhlIHNoYXJlZCBvYmplY3QgdGhhdCBjb250YWlucyB0aGUgY29uc3RydWN0b3IvZGVzdHJ1Y3RvcgogICovCiAKLS8vIE1ha2UgdGhpcyBhIHdlYWsgc3ltYm9sIHRvIGF2b2lkIGEgbXVsdGlwbGUgZGVmaW5pdGlvbiBlcnJvciB3aGVuIGxpbmtpbmcgd2l0aCBsaWJzdGRjKystdjMuCiBpbnQgX19hdHRyaWJ1dGVfXygod2VhaykpCiBfX2FlYWJpX2F0ZXhpdCh2b2lkICpvYmplY3QsIHZvaWQgKCpkZXN0cnVjdG9yKSAodm9pZCAqKSwgdm9pZCAqZHNvX2hhbmRsZSkgewogICAgIHJldHVybiBfX2N4YV9hdGV4aXQoZGVzdHJ1Y3Rvciwgb2JqZWN0LCBkc29faGFuZGxlKTsKIH0KIAogCi12b2lkIF9fYWVhYmlfbWVtY3B5OCh2b2lkICpkZXN0LCBjb25zdCB2b2lkICpzcmMsIHNpemVfdCBuKSB7Cit2b2lkIF9fYXR0cmlidXRlX18oKHdlYWspKQorX19hZWFiaV9tZW1jcHk4KHZvaWQgKmRlc3QsIGNvbnN0IHZvaWQgKnNyYywgc2l6ZV90IG4pIHsKICAgICBtZW1jcHkoZGVzdCwgc3JjLCBuKTsKIH0KIAotdm9pZCBfX2FlYWJpX21lbWNweTQodm9pZCAqZGVzdCwgY29uc3Qgdm9pZCAqc3JjLCBzaXplX3Qgbikgewordm9pZCBfX2F0dHJpYnV0ZV9fKCh3ZWFrKSkgX19hZWFiaV9tZW1jcHk0KHZvaWQgKmRlc3QsIGNvbnN0IHZvaWQgKnNyYywgc2l6ZV90IG4pIHsKICAgICBtZW1jcHkoZGVzdCwgc3JjLCBuKTsKIH0KIAotdm9pZCBfX2FlYWJpX21lbWNweSh2b2lkICpkZXN0LCBjb25zdCB2b2lkICpzcmMsIHNpemVfdCBuKSB7Cit2b2lkIF9fYXR0cmlidXRlX18oKHdlYWspKSBfX2FlYWJpX21lbWNweSh2b2lkICpkZXN0LCBjb25zdCB2b2lkICpzcmMsIHNpemVfdCBuKSB7CiAgICAgbWVtY3B5KGRlc3QsIHNyYywgbik7CiB9CiAKIAotdm9pZCBfX2FlYWJpX21lbW1vdmU4KHZvaWQgKmRlc3QsIGNvbnN0IHZvaWQgKnNyYywgc2l6ZV90IG4pIHsKK3ZvaWQgX19hdHRyaWJ1dGVfXygod2VhaykpIF9fYWVhYmlfbWVtbW92ZTgodm9pZCAqZGVzdCwgY29uc3Qgdm9pZCAqc3JjLCBzaXplX3QgbikgewogICAgIG1lbW1vdmUoZGVzdCwgc3JjLCBuKTsKIH0KIAotdm9pZCBfX2FlYWJpX21lbW1vdmU0KHZvaWQgKmRlc3QsIGNvbnN0IHZvaWQgKnNyYywgc2l6ZV90IG4pIHsKK3ZvaWQgX19hdHRyaWJ1dGVfXygod2VhaykpIF9fYWVhYmlfbWVtbW92ZTQodm9pZCAqZGVzdCwgY29uc3Qgdm9pZCAqc3JjLCBzaXplX3QgbikgewogICAgIG1lbW1vdmUoZGVzdCwgc3JjLCBuKTsKIH0KIAotdm9pZCBfX2FlYWJpX21lbW1vdmUodm9pZCAqZGVzdCwgY29uc3Qgdm9pZCAqc3JjLCBzaXplX3Qgbikgewordm9pZCBfX2F0dHJpYnV0ZV9fKCh3ZWFrKSkgX19hZWFiaV9tZW1tb3ZlKHZvaWQgKmRlc3QsIGNvbnN0IHZvaWQgKnNyYywgc2l6ZV90IG4pIHsKICAgICBtZW1tb3ZlKGRlc3QsIHNyYywgbik7CiB9CiAKQEAgLTg0LDI3ICs4NywyNyBAQAogICogIFRoaXMgYWxsb3dzIF9fYWVhYmlfbWVtY2xyIHRvIHRhaWwtY2FsbCBfX2FlYWJpX21lbXNldAogICovCiAKLXZvaWQgX19hZWFiaV9tZW1zZXQ4KHZvaWQgKmRlc3QsIHNpemVfdCBuLCBpbnQgYykgewordm9pZCBfX2F0dHJpYnV0ZV9fKCh3ZWFrKSkgX19hZWFiaV9tZW1zZXQ4KHZvaWQgKmRlc3QsIHNpemVfdCBuLCBpbnQgYykgewogICAgIG1lbXNldChkZXN0LCBjLCBuKTsKIH0KIAotdm9pZCBfX2FlYWJpX21lbXNldDQodm9pZCAqZGVzdCwgc2l6ZV90IG4sIGludCBjKSB7Cit2b2lkIF9fYXR0cmlidXRlX18oKHdlYWspKSBfX2FlYWJpX21lbXNldDQodm9pZCAqZGVzdCwgc2l6ZV90IG4sIGludCBjKSB7CiAgICAgbWVtc2V0KGRlc3QsIGMsIG4pOwogfQogCi12b2lkIF9fYWVhYmlfbWVtc2V0KHZvaWQgKmRlc3QsIHNpemVfdCBuLCBpbnQgYykgewordm9pZCBfX2F0dHJpYnV0ZV9fKCh3ZWFrKSkgX19hZWFiaV9tZW1zZXQodm9pZCAqZGVzdCwgc2l6ZV90IG4sIGludCBjKSB7CiAgICAgbWVtc2V0KGRlc3QsIGMsIG4pOwogfQogCiAKLXZvaWQgX19hZWFiaV9tZW1jbHI4KHZvaWQgKmRlc3QsIHNpemVfdCBuKSB7Cit2b2lkIF9fYXR0cmlidXRlX18oKHdlYWspKSBfX2FlYWJpX21lbWNscjgodm9pZCAqZGVzdCwgc2l6ZV90IG4pIHsKICAgICBfX2FlYWJpX21lbXNldDgoZGVzdCwgbiwgMCk7CiB9CiAKLXZvaWQgX19hZWFiaV9tZW1jbHI0KHZvaWQgKmRlc3QsIHNpemVfdCBuKSB7Cit2b2lkIF9fYXR0cmlidXRlX18oKHdlYWspKSBfX2FlYWJpX21lbWNscjQodm9pZCAqZGVzdCwgc2l6ZV90IG4pIHsKICAgICBfX2FlYWJpX21lbXNldDQoZGVzdCwgbiwgMCk7CiB9CiAKLXZvaWQgX19hZWFiaV9tZW1jbHIodm9pZCAqZGVzdCwgc2l6ZV90IG4pIHsKK3ZvaWQgX19hdHRyaWJ1dGVfXygod2VhaykpIF9fYWVhYmlfbWVtY2xyKHZvaWQgKmRlc3QsIHNpemVfdCBuKSB7CiAgICAgX19hZWFiaV9tZW1zZXQoZGVzdCwgbiwgMCk7CiB9CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9fX2Jpb25pY19jbG9uZS5TIGIvbGliYy9hcmNoLWFybS9iaW9uaWMvX19iaW9uaWNfY2xvbmUuUwppbmRleCBmNWNmOWUwLi5hMjY4ZjlkIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9fX2Jpb25pY19jbG9uZS5TCisrKyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL19fYmlvbmljX2Nsb25lLlMKQEAgLTQyLDEzICs0MiwxNCBAQAogICAgICMgbG9hZCBleHRyYSBwYXJhbWV0ZXJzCiAgICAgbGRtZmQgICBpcCwge3I0LCByNSwgcjZ9CiAKLSAgICAjIHN0b3JlICdmbicgYW5kICdhcmcnIHRvIHRoZSBjaGlsZCBzdGFjawotICAgIHN0ciAgICAgcjUsIFtyMSwgIy00XQotICAgIHN0ciAgICAgcjYsIFtyMSwgIy04XQorICAgICMgUHVzaCAnZm4nIGFuZCAnYXJnJyBvbnRvIHRoZSBjaGlsZCBzdGFjay4KKyAgICBzdG1kYiAgIHIxISwge3I1LCByNn0KIAotICAgICMgU3lzdGVtIGNhbGwKKyAgICAjIE1ha2UgdGhlIHN5c3RlbSBjYWxsLgogICAgIGxkciAgICAgcjcsID1fX05SX2Nsb25lCiAgICAgc3dpICAgICAjMAorCisgICAgIyBBcmUgd2UgdGhlIGNoaWxkPwogICAgIG1vdnMgICAgcjAsIHIwCiAgICAgYmVxICAgICAxZgogCkBAIC02Miw4ICs2Myw4IEBACiAxOiAgIyBUaGUgY2hpbGQuCiAgICAgIyBTZXR0aW5nIGxyIHRvIDAgd2lsbCBtYWtlIHRoZSB1bndpbmRlciBzdG9wIGF0IF9fc3RhcnRfdGhyZWFkCiAgICAgbW92ICAgIGxyLCAjMAotICAgIGxkciAgICByMCwgW3NwLCAjLTRdCi0gICAgbGRyICAgIHIxLCBbc3AsICMtOF0KKyAgICAjIENhbGwgX19zdGFydF90aHJlYWQgd2l0aCB0aGUgJ2ZuJyBhbmQgJ2FyZycgd2Ugc3RvcmVkIG9uIHRoZSBjaGlsZCBzdGFjay4KKyAgICBwb3AgICAge3IwLCByMX0KICAgICBiICAgICAgX19zdGFydF90aHJlYWQKIEVORChfX2Jpb25pY19jbG9uZSkKIC5oaWRkZW4gX19iaW9uaWNfY2xvbmUKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL19zZXRqbXAuUyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL19zZXRqbXAuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjRhMGEzMS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9fc2V0am1wLlMKKysrIC9kZXYvbnVsbApAQCAtMSwxMTMgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IF9zZXRqbXAuUyx2IDEuMiAyMDA0LzAyLzAxIDA1OjQwOjUyIGRyYWhuIEV4cCAkCSovCi0vKgkkTmV0QlNEOiBfc2V0am1wLlMsdiAxLjUgMjAwMy8wNC8wNSAyMzowODo1MSBiamgyMSBFeHAgJAkqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAxOTk3IE1hcmsgQnJpbmljb21iZQotICogQ29weXJpZ2h0IChjKSAyMDEwIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdC4KLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBBbGwgYWR2ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMgc29mdHdhcmUKLSAqICAgIG11c3QgZGlzcGxheSB0aGUgZm9sbG93aW5nIGFja25vd2xlZGdlbWVudDoKLSAqCVRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkgTWFyayBCcmluaWNvbWJlCi0gKiA0LiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCi0gKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9zZXRqbXAuaD4KLSNpbmNsdWRlIDxtYWNoaW5lL2NwdS1mZWF0dXJlcy5oPgotCi0vKgotICogQyBsaWJyYXJ5IC0tIF9zZXRqbXAsIF9sb25nam1wCi0gKgotICoJX2xvbmdqbXAoYSx2KQotICogd2lsbCBnZW5lcmF0ZSBhICJyZXR1cm4odikiIGZyb20gdGhlIGxhc3QgY2FsbCB0bwotICoJX3NldGptcChhKQotICogYnkgcmVzdG9yaW5nIHJlZ2lzdGVycyBmcm9tIHRoZSBzdGFjay4KLSAqIFRoZSBwcmV2aW91cyBzaWduYWwgc3RhdGUgaXMgTk9UIHJlc3RvcmVkLgotICoKLSAqIE5vdGU6IHIwIGlzIHRoZSByZXR1cm4gdmFsdWUKLSAqICAgICAgIHIxLXIzIGFyZSBzY3JhdGNoIHJlZ2lzdGVycyBpbiBmdW5jdGlvbnMKLSAqLwotCi1FTlRSWShfc2V0am1wKQotCWxkcglyMSwgLkxfc2V0am1wX21hZ2ljCi0Jc3RyCXIxLCBbcjAsICMoX0pCX01BR0lDICogNCldCi0KLQkvKiBTdG9yZSBjb3JlIHJlZ2lzdGVycyAqLwotCWFkZCAgICAgcjEsIHIwLCAjKF9KQl9DT1JFX0JBU0UgKiA0KQotCXN0bWlhICAgcjEsIHtyNC1yMTR9Ci0KLSNpZmRlZiBfX0FSTV9IQVZFX1ZGUAotCS8qIFN0b3JlIGZsb2F0aW5nLXBvaW50IHJlZ2lzdGVycyAqLwotCWFkZCAgICAgcjEsIHIwLCAjKF9KQl9GTE9BVF9CQVNFICogNCkKLQl2c3RtaWEgIHIxLCB7ZDgtZDE1fQotCS8qIFN0b3JlIGZsb2F0aW5nLXBvaW50IHN0YXRlICovCi0JZm1yeCAgICByMSwgZnBzY3IKLQlzdHIgICAgIHIxLCBbcjAsICMoX0pCX0ZMT0FUX1NUQVRFICogNCldCi0jZW5kaWYgIC8qIF9fQVJNX0hBVkVfVkZQICovCi0KLSAgICAgICAgbW92CXIwLCAjMHgwMDAwMDAwMAotICAgICAgICBieCAgICAgIGxyCi1FTkQoX3NldGptcCkKLQotLkxfc2V0am1wX21hZ2ljOgotCS53b3JkCV9KQl9NQUdJQ19fU0VUSk1QCi0KLUVOVFJZKF9sb25nam1wKQotCWxkcglyMiwgLkxfc2V0am1wX21hZ2ljCi0JbGRyCXIzLCBbcjAsICMoX0pCX01BR0lDICogNCldCi0JdGVxCXIyLCByMwotCWJuZQlib3RjaAotCi0jaWZkZWYgX19BUk1fSEFWRV9WRlAKLQkvKiBSZXN0b3JlIGZsb2F0aW5nLXBvaW50IHJlZ2lzdGVycyAqLwotCWFkZCAgICAgcjIsIHIwLCAjKF9KQl9GTE9BVF9CQVNFICogNCkKLQl2bGRtaWEgIHIyLCB7ZDgtZDE1fQotCS8qIFJlc3RvcmUgZmxvYXRpbmctcG9pbnQgc3RhdGUgKi8KLQlsZHIgICAgIHIyLCBbcjAsICMoX0pCX0ZMT0FUX1NUQVRFICogNCldCi0JZm14ciAgICBmcHNjciwgcjIKLSNlbmRpZiAvKiBfX0FSTV9IQVZFX1ZGUCAqLwotCi0JLyogUmVzdG9yZSBjb3JlIHJlZ2lzdGVycyAqLwotCWFkZCAgICAgcjIsIHIwLCAjKF9KQl9DT1JFX0JBU0UgKiA0KQotCWxkbWlhICAgcjIsIHtyNC1yMTR9Ci0KLQkvKiBWYWxpZGF0ZSBzcCBhbmQgcjE0ICovCi0JdGVxCXNwLCAjMAotCXRlcW5lCXIxNCwgIzAKLQliZXEJYm90Y2gKLQotCS8qIFNldCByZXR1cm4gdmFsdWUgKi8KLQltb3YJcjAsIHIxCi0JdGVxCXIwLCAjMHgwMDAwMDAwMAotCW1vdmVxCXIwLCAjMHgwMDAwMDAwMQotCWJ4ICAgICAgbHIKLQotCS8qIHZhbGlkYXRpb24gZmFpbGVkLCBkaWUgZGllIGRpZS4gKi8KLWJvdGNoOgotCWJsCVBJQ19TWU0obG9uZ2ptcGVycm9yLCBQTFQpCi0JYmwJUElDX1NZTShhYm9ydCwgUExUKQotCWIJLiAtIDgJCS8qIENhbm5vdCBnZXQgaGVyZSAqLwotRU5EKF9sb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9iaW9uaWMvYWJvcnRfYXJtLlMgYi9saWJjL2FyY2gtYXJtL2Jpb25pYy9hYm9ydF9hcm0uUwppbmRleCA2YjE4MWVmLi4xMDM5NTAyIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9hYm9ydF9hcm0uUworKysgYi9saWJjL2FyY2gtYXJtL2Jpb25pYy9hYm9ydF9hcm0uUwpAQCAtNDAsNSArNDAsNSBAQAogICAgIC5jZmlfZGVmX2NmYV9vZmZzZXQgOAogICAgIC5jZmlfcmVsX29mZnNldCByMywgMAogICAgIC5jZmlfcmVsX29mZnNldCByMTQsIDQKLSAgICBibCAgICAgIFBJQ19TWU0oX19saWJjX2FuZHJvaWRfYWJvcnQsIFBMVCkKKyAgICBibCAgICAgIF9fbGliY19hbmRyb2lkX2Fib3J0CiBFTkQoYWJvcnQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9saWJnY2NfcHJvdGVjdF91bndpbmQuYyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL2xpYmdjY19wcm90ZWN0X3Vud2luZC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZkNzU4ZmMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtL2Jpb25pYy9saWJnY2NfcHJvdGVjdF91bndpbmQuYwpAQCAtMCwwICsxLDkzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworLy8gVE9ETzogVGhpcyBmaWxlIHNob3VsZCBnbyBhd2F5IG9uY2UgdW53aW5kZXIgbWlncmF0aW9uIHRvIGxpYmMrKy5zbyBpcyBjb21wbGV0ZS4KKworZXh0ZXJuIGNoYXIgX1Vud2luZF9CYWNrdHJhY2UgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX2dudV9VbndpbmRfRmluZF9leGlkeCBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fZ251X1Vud2luZF9SZXN0b3JlX1ZGUF9EIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX19nbnVfVW53aW5kX1Jlc3RvcmVfVkZQIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX19nbnVfVW53aW5kX1Jlc3RvcmVfVkZQX0RfMTZfdG9fMzEgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX2dudV9VbndpbmRfUmVzdG9yZV9XTU1YRCBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fZ251X1Vud2luZF9SZXN0b3JlX1dNTVhDIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX1Vud2luZF9HZXRDRkEgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX2dudV9VbndpbmRfUmFpc2VFeGNlcHRpb24gX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX2dudV9VbndpbmRfRm9yY2VkVW53aW5kIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX19nbnVfVW53aW5kX1Jlc3VtZSBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fZ251X1Vud2luZF9SZXN1bWVfb3JfUmV0aHJvdyBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9VbndpbmRfQ29tcGxldGUgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfVW53aW5kX0RlbGV0ZUV4Y2VwdGlvbiBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9VbndpbmRfVlJTX0dldCBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9VbndpbmRfVlJTX1NldCBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fZ251X1Vud2luZF9CYWNrdHJhY2UgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfVW53aW5kX1ZSU19Qb3AgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX2dudV9VbndpbmRfU2F2ZV9WRlBfRCBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fZ251X1Vud2luZF9TYXZlX1ZGUCBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fZ251X1Vud2luZF9TYXZlX1ZGUF9EXzE2X3RvXzMxIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX19nbnVfVW53aW5kX1NhdmVfV01NWEQgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX2dudV9VbndpbmRfU2F2ZV9XTU1YQyBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9fX1Vud2luZF9SYWlzZUV4Y2VwdGlvbiBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9VbndpbmRfUmFpc2VFeGNlcHRpb24gX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX19VbndpbmRfUmVzdW1lIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX1Vud2luZF9SZXN1bWUgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfX19VbndpbmRfUmVzdW1lX29yX1JldGhyb3cgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfVW53aW5kX1Jlc3VtZV9vcl9SZXRocm93IF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX19fVW53aW5kX0ZvcmNlZFVud2luZCBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9VbndpbmRfRm9yY2VkVW53aW5kIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX19fVW53aW5kX0JhY2t0cmFjZSBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9VbndpbmRfR2V0UmVnaW9uU3RhcnQgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CitleHRlcm4gY2hhciBfVW53aW5kX0dldExhbmd1YWdlU3BlY2lmaWNEYXRhIF9fYXR0cmlidXRlKCh2aXNpYmlsaXR5KCJwcm90ZWN0ZWQiKSkpOworZXh0ZXJuIGNoYXIgX1Vud2luZF9HZXREYXRhUmVsQmFzZSBfX2F0dHJpYnV0ZSgodmlzaWJpbGl0eSgicHJvdGVjdGVkIikpKTsKK2V4dGVybiBjaGFyIF9VbndpbmRfR2V0VGV4dFJlbEJhc2UgX19hdHRyaWJ1dGUoKHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSk7CisKK3ZvaWQqIF9fYmlvbmljX2xpYmdjY191bndpbmRfc3ltYm9sc1tdID0geworICAgICZfVW53aW5kX0JhY2t0cmFjZSwKKyAgICAmX19nbnVfVW53aW5kX0ZpbmRfZXhpZHgsCisgICAgJl9fZ251X1Vud2luZF9SZXN0b3JlX1ZGUF9ELAorICAgICZfX2dudV9VbndpbmRfUmVzdG9yZV9WRlAsCisgICAgJl9fZ251X1Vud2luZF9SZXN0b3JlX1ZGUF9EXzE2X3RvXzMxLAorICAgICZfX2dudV9VbndpbmRfUmVzdG9yZV9XTU1YRCwKKyAgICAmX19nbnVfVW53aW5kX1Jlc3RvcmVfV01NWEMsCisgICAgJl9VbndpbmRfR2V0Q0ZBLAorICAgICZfX2dudV9VbndpbmRfUmFpc2VFeGNlcHRpb24sCisgICAgJl9fZ251X1Vud2luZF9Gb3JjZWRVbndpbmQsCisgICAgJl9fZ251X1Vud2luZF9SZXN1bWUsCisgICAgJl9fZ251X1Vud2luZF9SZXN1bWVfb3JfUmV0aHJvdywKKyAgICAmX1Vud2luZF9Db21wbGV0ZSwKKyAgICAmX1Vud2luZF9EZWxldGVFeGNlcHRpb24sCisgICAgJl9VbndpbmRfVlJTX0dldCwKKyAgICAmX1Vud2luZF9WUlNfU2V0LAorICAgICZfX2dudV9VbndpbmRfQmFja3RyYWNlLAorICAgICZfVW53aW5kX1ZSU19Qb3AsCisgICAgJl9fZ251X1Vud2luZF9TYXZlX1ZGUF9ELAorICAgICZfX2dudV9VbndpbmRfU2F2ZV9WRlAsCisgICAgJl9fZ251X1Vud2luZF9TYXZlX1ZGUF9EXzE2X3RvXzMxLAorICAgICZfX2dudV9VbndpbmRfU2F2ZV9XTU1YRCwKKyAgICAmX19nbnVfVW53aW5kX1NhdmVfV01NWEMsCisgICAgJl9fX1Vud2luZF9SYWlzZUV4Y2VwdGlvbiwKKyAgICAmX1Vud2luZF9SYWlzZUV4Y2VwdGlvbiwKKyAgICAmX19fVW53aW5kX1Jlc3VtZSwKKyAgICAmX1Vud2luZF9SZXN1bWUsCisgICAgJl9fX1Vud2luZF9SZXN1bWVfb3JfUmV0aHJvdywKKyAgICAmX1Vud2luZF9SZXN1bWVfb3JfUmV0aHJvdywKKyAgICAmX19fVW53aW5kX0ZvcmNlZFVud2luZCwKKyAgICAmX1Vud2luZF9Gb3JjZWRVbndpbmQsCisgICAgJl9fX1Vud2luZF9CYWNrdHJhY2UsCisgICAgJl9VbndpbmRfR2V0UmVnaW9uU3RhcnQsCisgICAgJl9VbndpbmRfR2V0TGFuZ3VhZ2VTcGVjaWZpY0RhdGEsCisgICAgJl9VbndpbmRfR2V0RGF0YVJlbEJhc2UsCisgICAgJl9VbndpbmRfR2V0VGV4dFJlbEJhc2UsCit9OwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9iaW9uaWMvbWVtY3B5LlMgYi9saWJjL2FyY2gtYXJtL2Jpb25pYy9tZW1jcHkuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmM5YjEwYy4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9tZW1jcHkuUworKysgL2Rldi9udWxsCkBAIC0xLDY4NiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA4IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxtYWNoaW5lL2NwdS1mZWF0dXJlcy5oPgotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi0jaWYgZGVmaW5lZChfX0FSTV9ORU9OX18pICYmICFkZWZpbmVkKEFSQ0hfQVJNX1VTRV9OT05fTkVPTl9NRU1DUFkpCi0KLSAgICAgICAgLnRleHQKLSAgICAgICAgLmZwdSAgICBuZW9uCi0KLSNpZmRlZiBIQVZFXzMyX0JZVEVfQ0FDSEVfTElORQotLyogYSBwcmVmZXRjaCBkaXN0YW5jZSBvZiAyIGNhY2hlLWxpbmVzICovCi0jZGVmaW5lIENBQ0hFX0xJTkVfU0laRSAgICAgMzIKLSNlbHNlCi0vKiBhIHByZWZldGNoIGRpc3RhbmNlIG9mIDQgY2FjaGUtbGluZXMgd29ya3MgYmVzdCBleHBlcmltZW50YWxseSAqLwotI2RlZmluZSBDQUNIRV9MSU5FX1NJWkUgICAgIDY0Ci0jZW5kaWYKLQotRU5UUlkobWVtY3B5KQotICAgICAgICAuc2F2ZSAgICAgICB7cjAsIGxyfQotICAgICAgICAvKiBzdGFydCBwcmVsb2FkaW5nIGFzIGVhcmx5IGFzIHBvc3NpYmxlICovCi0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUgKiAwKV0KLSAgICAgICAgc3RtZmQgICAgICAgc3AhLCB7cjAsIGxyfQotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoQ0FDSEVfTElORV9TSVpFICogMSldCi0KLS8qIElmIE5lb24gc3VwcG9ydHMgdW5hbGlnbmVkIGFjY2VzcyB0aGVuIHJlbW92ZSB0aGUgYWxpZ24gY29kZSwKLSAqIHVubGVzcyBhIHNpemUgbGltaXQgaGFzIGJlZW4gc3BlY2lmaWVkLgotICovCi0jaWZuZGVmIE5FT05fVU5BTElHTkVEX0FDQ0VTUwotICAgICAgICAvKiBkbyB3ZSBoYXZlIGF0IGxlYXN0IDE2LWJ5dGVzIHRvIGNvcHkgKG5lZWRlZCBmb3IgYWxpZ25tZW50IGJlbG93KSAqLwotICAgICAgICBjbXAgICAgICAgICByMiwgIzE2Ci0gICAgICAgIGJsbyAgICAgICAgIDVmCi0KLSAgICAgICAgLyogY2hlY2sgaWYgYnVmZmVycyBhcmUgYWxpZ25lZC4gSWYgc28sIHJ1biBhcm0tb25seSB2ZXJzaW9uICovCi0gICAgICAgIGVvciAgICAgICAgIHIzLCByMCwgcjEKLSAgICAgICAgYW5kcyAgICAgICAgcjMsIHIzLCAjMHgzCi0gICAgICAgIGJlcSAgICAgICAgIDExZgotCi0gICAgICAgIC8qIGFsaWduIGRlc3RpbmF0aW9uIHRvIGNhY2hlLWxpbmUgZm9yIHRoZSB3cml0ZS1idWZmZXIgKi8KLSAgICAgICAgcnNiICAgICAgICAgcjMsIHIwLCAjMAotICAgICAgICBhbmRzICAgICAgICByMywgcjMsICMweEYKLSAgICAgICAgYmVxICAgICAgICAgMmYKLQotICAgICAgICAvKiBjb3B5IHVwIHRvIDE1LWJ5dGVzIChjb3VudCBpbiByMykgKi8KLSAgICAgICAgc3ViICAgICAgICAgcjIsIHIyLCByMwotICAgICAgICBtb3ZzICAgICAgICBpcCwgcjMsIGxzbCAjMzEKLSAgICAgICAgbGRybWliICAgICAgbHIsIFtyMV0sICMxCi0gICAgICAgIHN0cm1pYiAgICAgIGxyLCBbcjBdLCAjMQotICAgICAgICBsZHJjc2IgICAgICBpcCwgW3IxXSwgIzEKLSAgICAgICAgbGRyY3NiICAgICAgbHIsIFtyMV0sICMxCi0gICAgICAgIHN0cmNzYiAgICAgIGlwLCBbcjBdLCAjMQotICAgICAgICBzdHJjc2IgICAgICBsciwgW3IwXSwgIzEKLSAgICAgICAgbW92cyAgICAgICAgaXAsIHIzLCBsc2wgIzI5Ci0gICAgICAgIGJnZSAgICAgICAgIDFmCi0gICAgICAgIC8vIGNvcGllcyA0IGJ5dGVzLCBkZXN0aW5hdGlvbiAzMi1iaXRzIGFsaWduZWQKLSAgICAgICAgdmxkNC44ICAgICAge2QwWzBdLCBkMVswXSwgZDJbMF0sIGQzWzBdfSwgW3IxXSEKLSAgICAgICAgdnN0NC44ICAgICAge2QwWzBdLCBkMVswXSwgZDJbMF0sIGQzWzBdfSwgW3IwLCA6MzJdIQotMTogICAgICBiY2MgICAgICAgICAyZgotICAgICAgICAvLyBjb3BpZXMgOCBieXRlcywgZGVzdGluYXRpb24gNjQtYml0cyBhbGlnbmVkCi0gICAgICAgIHZsZDEuOCAgICAgIHtkMH0sIFtyMV0hCi0gICAgICAgIHZzdDEuOCAgICAgIHtkMH0sIFtyMCwgOjY0XSEKLTI6Ci0gICAgICAgIC8qIHByZWxvYWQgaW1tZWRpYXRlbHkgdGhlIG5leHQgY2FjaGUgbGluZSwgd2hpY2ggd2UgbWF5IG5lZWQgKi8KLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDApXQotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoQ0FDSEVfTElORV9TSVpFICogMSldCi0KLSNpZmRlZiBIQVZFXzMyX0JZVEVfQ0FDSEVfTElORQotICAgICAgICAvKiBtYWtlIHN1cmUgd2UgaGF2ZSBhdCBsZWFzdCAzMiBieXRlcyB0byBjb3B5ICovCi0gICAgICAgIHN1YnMgICAgICAgIHIyLCByMiwgIzMyCi0gICAgICAgIGJsbyAgICAgICAgIDRmCi0KLSAgICAgICAgLyogcHJlbG9hZCBhbGwgdGhlIGNhY2hlIGxpbmVzIHdlIG5lZWQuCi0gICAgICAgICAqIE5PVEU6IHRoZSBudW1iZXIgb2YgcGxkIGJlbG93IGRlcGVuZHMgb24gUFJFRkVUQ0hfRElTVEFOQ0UsCi0gICAgICAgICAqIGlkZWFsbHkgd291bGQgd291bGQgaW5jcmVhc2UgdGhlIGRpc3RhbmNlIGluIHRoZSBtYWluIGxvb3AgdG8KLSAgICAgICAgICogYXZvaWQgdGhlIGdvb2Z5IGNvZGUgYmVsb3cuIEluIHByYWN0aWNlIHRoaXMgZG9lc24ndCBzZWVtIHRvIG1ha2UKLSAgICAgICAgICogYSBiaWcgZGlmZmVyZW5jZS4KLSAgICAgICAgICovCi0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhQUkVGRVRDSF9ESVNUQU5DRSldCi0KLTE6ICAgICAgLyogVGhlIG1haW4gbG9vcCBjb3BpZXMgMzIgYnl0ZXMgYXQgYSB0aW1lICovCi0gICAgICAgIHZsZDEuOCAgICAgIHtkMCAgLSBkM30sICAgW3IxXSEKLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKFBSRUZFVENIX0RJU1RBTkNFKV0KLSAgICAgICAgc3VicyAgICAgICAgcjIsIHIyLCAjMzIKLSAgICAgICAgdnN0MS44ICAgICAge2QwICAtIGQzfSwgICBbcjAsIDoxMjhdIQotICAgICAgICBiaHMgICAgICAgICAxYgotI2Vsc2UKLSAgICAgICAgLyogbWFrZSBzdXJlIHdlIGhhdmUgYXQgbGVhc3QgNjQgYnl0ZXMgdG8gY29weSAqLwotICAgICAgICBzdWJzICAgICAgICByMiwgcjIsICM2NAotICAgICAgICBibG8gICAgICAgICAyZgotCi0gICAgICAgIC8qIHByZWxvYWQgYWxsIHRoZSBjYWNoZSBsaW5lcyB3ZSBuZWVkLiAqLwotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoQ0FDSEVfTElORV9TSVpFICogMildCi0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUgKiAzKV0KLQotMTogICAgICAvKiBUaGUgbWFpbiBsb29wIGNvcGllcyA2NCBieXRlcyBhdCBhIHRpbWUgKi8KLSAgICAgICAgdmxkMS44ICAgICAge2QwIC0gZDN9LCBbcjFdIQotICAgICAgICB2bGQxLjggICAgICB7ZDQgLSBkN30sIFtyMV0hCi0jaWZkZWYgIEhBVkVfMzJfQllURV9DQUNIRV9MSU5FCi0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUgKiAyKV0KLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDMpXQotI2Vsc2UKLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDMpXQotI2VuZGlmCi0gICAgICAgIHN1YnMgICAgICAgIHIyLCByMiwgIzY0Ci0gICAgICAgIHZzdDEuOCAgICAgIHtkMCAtIGQzfSwgW3IwLCA6MTI4XSEKLSAgICAgICAgdnN0MS44ICAgICAge2Q0IC0gZDd9LCBbcjAsIDoxMjhdIQotICAgICAgICBiaHMgICAgICAgICAxYgotCi0yOiAgICAgIC8qIGZpeC11cCB0aGUgcmVtYWluaW5nIGNvdW50IGFuZCBtYWtlIHN1cmUgd2UgaGF2ZSA+PSAzMiBieXRlcyBsZWZ0ICovCi0gICAgICAgIGFkZCAgICAgICAgIHIyLCByMiwgIzY0Ci0gICAgICAgIHN1YnMgICAgICAgIHIyLCByMiwgIzMyCi0gICAgICAgIGJsbyAgICAgICAgIDRmCi0KLTM6ICAgICAgLyogMzIgYnl0ZXMgYXQgYSB0aW1lLiBUaGVzZSBjYWNoZSBsaW5lcyB3ZXJlIGFscmVhZHkgcHJlbG9hZGVkICovCi0gICAgICAgIHZsZDEuOCAgICAgIHtkMCAtIGQzfSwgW3IxXSEKLSAgICAgICAgc3VicyAgICAgICAgcjIsIHIyLCAjMzIKLSAgICAgICAgdnN0MS44ICAgICAge2QwIC0gZDN9LCBbcjAsIDoxMjhdIQotICAgICAgICBiaHMgICAgICAgICAzYgotI2VuZGlmCi00OiAgICAgIC8qIGxlc3MgdGhhbiAzMiBsZWZ0ICovCi0gICAgICAgIGFkZCAgICAgICAgIHIyLCByMiwgIzMyCi0gICAgICAgIHRzdCAgICAgICAgIHIyLCAjMHgxMAotICAgICAgICBiZXEgICAgICAgICA1ZgotICAgICAgICAvLyBjb3BpZXMgMTYgYnl0ZXMsIDEyOC1iaXRzIGFsaWduZWQKLSAgICAgICAgdmxkMS44ICAgICAge2QwLCBkMX0sIFtyMV0hCi0gICAgICAgIHZzdDEuOCAgICAgIHtkMCwgZDF9LCBbcjAsIDoxMjhdIQotNTogICAgICAvKiBjb3B5IHVwIHRvIDE1LWJ5dGVzIChjb3VudCBpbiByMikgKi8KLSAgICAgICAgbW92cyAgICAgICAgaXAsIHIyLCBsc2wgIzI5Ci0gICAgICAgIGJjYyAgICAgICAgIDFmCi0gICAgICAgIHZsZDEuOCAgICAgIHtkMH0sIFtyMV0hCi0gICAgICAgIHZzdDEuOCAgICAgIHtkMH0sIFtyMF0hCi0xOiAgICAgIGJnZSAgICAgICAgIDJmCi0gICAgICAgIHZsZDQuOCAgICAgIHtkMFswXSwgZDFbMF0sIGQyWzBdLCBkM1swXX0sIFtyMV0hCi0gICAgICAgIHZzdDQuOCAgICAgIHtkMFswXSwgZDFbMF0sIGQyWzBdLCBkM1swXX0sIFtyMF0hCi0yOiAgICAgIG1vdnMgICAgICAgIGlwLCByMiwgbHNsICMzMQotICAgICAgICBsZHJtaWIgICAgICByMywgW3IxXSwgIzEKLSAgICAgICAgbGRyY3NiICAgICAgaXAsIFtyMV0sICMxCi0gICAgICAgIGxkcmNzYiAgICAgIGxyLCBbcjFdLCAjMQotICAgICAgICBzdHJtaWIgICAgICByMywgW3IwXSwgIzEKLSAgICAgICAgc3RyY3NiICAgICAgaXAsIFtyMF0sICMxCi0gICAgICAgIHN0cmNzYiAgICAgIGxyLCBbcjBdLCAjMQotCi0gICAgICAgIGxkbWZkICAgICAgIHNwISwge3IwLCBscn0KLSAgICAgICAgYnggICAgICAgICAgbHIKLQotI2Vsc2UgICAvKiBORU9OX1VOQUxJR05FRF9BQ0NFU1MgKi8KLQotICAgICAgICAvLyBDaGVjayBzbyBkaXZpZGVyIGlzIGF0IGxlYXN0IDE2IGJ5dGVzLCBuZWVkZWQgZm9yIGFsaWdubWVudCBjb2RlLgotICAgICAgICBjbXAgICAgICAgICByMiwgIzE2Ci0gICAgICAgIGJsbyAgICAgICAgIDVmCi0KLSNpZmRlZiBORU9OX01FTUNQWV9BTElHTk1FTlRfRElWSURFUgotICAgICAgICAvKiBDaGVjayB0aGUgdXBwZXIgc2l6ZSBsaW1pdCBmb3IgTmVvbiB1bmFsaWduZWQgbWVtb3J5IGFjY2VzcyBpbiBtZW1jcHkgKi8KLSNpZiBORU9OX01FTUNQWV9BTElHTk1FTlRfRElWSURFUiA+PSAxNgotICAgICAgICBjbXAgICAgICAgICByMiwgI05FT05fTUVNQ1BZX0FMSUdOTUVOVF9ESVZJREVSCi0gICAgICAgIGJsbyAgICAgICAgIDNmCi0jZW5kaWYKLSAgICAgICAgLyogY2hlY2sgaWYgYnVmZmVycyBhcmUgYWxpZ25lZC4gSWYgc28sIHJ1biBhcm0tb25seSB2ZXJzaW9uICovCi0gICAgICAgIGVvciAgICAgICAgIHIzLCByMCwgcjEKLSAgICAgICAgYW5kcyAgICAgICAgcjMsIHIzLCAjMHgzCi0gICAgICAgIGJlcSAgICAgICAgIDExZgotCi0gICAgICAgIC8qIGFsaWduIGRlc3RpbmF0aW9uIHRvIDE2IGJ5dGVzIGZvciB0aGUgd3JpdGUtYnVmZmVyICovCi0gICAgICAgIHJzYiAgICAgICAgIHIzLCByMCwgIzAKLSAgICAgICAgYW5kcyAgICAgICAgcjMsIHIzLCAjMHhGCi0gICAgICAgIGJlcSAgICAgICAgIDNmCi0KLSAgICAgICAgLyogY29weSB1cCB0byAxNS1ieXRlcyAoY291bnQgaW4gcjMpICovCi0gICAgICAgIHN1YiAgICAgICAgIHIyLCByMiwgcjMKLSAgICAgICAgbW92cyAgICAgICAgaXAsIHIzLCBsc2wgIzMxCi0gICAgICAgIGxkcm1pYiAgICAgIGxyLCBbcjFdLCAjMQotICAgICAgICBzdHJtaWIgICAgICBsciwgW3IwXSwgIzEKLSAgICAgICAgbGRyY3NiICAgICAgaXAsIFtyMV0sICMxCi0gICAgICAgIGxkcmNzYiAgICAgIGxyLCBbcjFdLCAjMQotICAgICAgICBzdHJjc2IgICAgICBpcCwgW3IwXSwgIzEKLSAgICAgICAgc3RyY3NiICAgICAgbHIsIFtyMF0sICMxCi0gICAgICAgIG1vdnMgICAgICAgIGlwLCByMywgbHNsICMyOQotICAgICAgICBiZ2UgICAgICAgICAxZgotICAgICAgICAvLyBjb3BpZXMgNCBieXRlcywgZGVzdGluYXRpb24gMzItYml0cyBhbGlnbmVkCi0gICAgICAgIHZsZDEuMzIgICAgIHtkMFswXX0sIFtyMV0hCi0gICAgICAgIHZzdDEuMzIgICAgIHtkMFswXX0sIFtyMCwgOjMyXSEKLTE6ICAgICAgYmNjICAgICAgICAgMmYKLSAgICAgICAgLy8gY29waWVzIDggYnl0ZXMsIGRlc3RpbmF0aW9uIDY0LWJpdHMgYWxpZ25lZAotICAgICAgICB2bGQxLjggICAgICB7ZDB9LCBbcjFdIQotICAgICAgICB2c3QxLjggICAgICB7ZDB9LCBbcjAsIDo2NF0hCi0yOgotICAgICAgICAvKiBwcmVsb2FkIGltbWVkaWF0ZWx5IHRoZSBuZXh0IGNhY2hlIGxpbmUsIHdoaWNoIHdlIG1heSBuZWVkICovCi0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUgKiAwKV0KLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDEpXQotMzoKLSNlbmRpZgotICAgICAgICAvKiBtYWtlIHN1cmUgd2UgaGF2ZSBhdCBsZWFzdCA2NCBieXRlcyB0byBjb3B5ICovCi0gICAgICAgIHN1YnMgICAgICAgIHIyLCByMiwgIzY0Ci0gICAgICAgIGJsbyAgICAgICAgIDJmCi0KLSAgICAgICAgLyogcHJlbG9hZCBhbGwgdGhlIGNhY2hlIGxpbmVzIHdlIG5lZWQgKi8KLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDIpXQotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoQ0FDSEVfTElORV9TSVpFICogMyldCi0KLTE6ICAgICAgLyogVGhlIG1haW4gbG9vcCBjb3BpZXMgNjQgYnl0ZXMgYXQgYSB0aW1lICovCi0gICAgICAgIHZsZDEuOCAgICAgIHtkMCAtIGQzfSwgW3IxXSEKLSAgICAgICAgdmxkMS44ICAgICAge2Q0IC0gZDd9LCBbcjFdIQotI2lmZGVmICBIQVZFXzMyX0JZVEVfQ0FDSEVfTElORQotICAgICAgICBwbGQgICAgICAgICBbcjEsICMoQ0FDSEVfTElORV9TSVpFICogMildCi0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUgKiAzKV0KLSNlbHNlCi0gICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUgKiAzKV0KLSNlbmRpZgotICAgICAgICBzdWJzICAgICAgICByMiwgcjIsICM2NAotICAgICAgICB2c3QxLjggICAgICB7ZDAgLSBkM30sIFtyMF0hCi0gICAgICAgIHZzdDEuOCAgICAgIHtkNCAtIGQ3fSwgW3IwXSEKLSAgICAgICAgYmhzICAgICAgICAgMWIKLQotMjogICAgICAvKiBmaXgtdXAgdGhlIHJlbWFpbmluZyBjb3VudCBhbmQgbWFrZSBzdXJlIHdlIGhhdmUgPj0gMzIgYnl0ZXMgbGVmdCAqLwotICAgICAgICBhZGQgICAgICAgICByMiwgcjIsICM2NAotICAgICAgICBzdWJzICAgICAgICByMiwgcjIsICMzMgotICAgICAgICBibG8gICAgICAgICA0ZgotCi0zOiAgICAgIC8qIDMyIGJ5dGVzIGF0IGEgdGltZS4gVGhlc2UgY2FjaGUgbGluZXMgd2VyZSBhbHJlYWR5IHByZWxvYWRlZCAqLwotICAgICAgICB2bGQxLjggICAgICB7ZDAgLSBkM30sIFtyMV0hCi0gICAgICAgIHN1YnMgICAgICAgIHIyLCByMiwgIzMyCi0gICAgICAgIHZzdDEuOCAgICAgIHtkMCAtIGQzfSwgW3IwXSEKLSAgICAgICAgYmhzICAgICAgICAgM2IKLQotNDogICAgICAvKiBsZXNzIHRoYW4gMzIgbGVmdCAqLwotICAgICAgICBhZGQgICAgICAgICByMiwgcjIsICMzMgotICAgICAgICB0c3QgICAgICAgICByMiwgIzB4MTAKLSAgICAgICAgYmVxICAgICAgICAgNWYKLSAgICAgICAgLy8gY29waWVzIDE2IGJ5dGVzLCAxMjgtYml0cyBhbGlnbmVkCi0gICAgICAgIHZsZDEuOCAgICAgIHtkMCwgZDF9LCBbcjFdIQotICAgICAgICB2c3QxLjggICAgICB7ZDAsIGQxfSwgW3IwXSEKLTU6ICAgICAgLyogY29weSB1cCB0byAxNS1ieXRlcyAoY291bnQgaW4gcjIpICovCi0gICAgICAgIG1vdnMgICAgICAgIGlwLCByMiwgbHNsICMyOQotICAgICAgICBiY2MgICAgICAgICAxZgotICAgICAgICB2bGQxLjggICAgICB7ZDB9LCBbcjFdIQotICAgICAgICB2c3QxLjggICAgICB7ZDB9LCBbcjBdIQotMTogICAgICBiZ2UgICAgICAgICAyZgotICAgICAgICB2bGQxLjMyICAgICB7ZDBbMF19LCBbcjFdIQotICAgICAgICB2c3QxLjMyICAgICB7ZDBbMF19LCBbcjBdIQotMjogICAgICBtb3ZzICAgICAgICBpcCwgcjIsIGxzbCAjMzEKLSAgICAgICAgbGRybWliICAgICAgcjMsIFtyMV0sICMxCi0gICAgICAgIGxkcmNzYiAgICAgIGlwLCBbcjFdLCAjMQotICAgICAgICBsZHJjc2IgICAgICBsciwgW3IxXSwgIzEKLSAgICAgICAgc3RybWliICAgICAgcjMsIFtyMF0sICMxCi0gICAgICAgIHN0cmNzYiAgICAgIGlwLCBbcjBdLCAjMQotICAgICAgICBzdHJjc2IgICAgICBsciwgW3IwXSwgIzEKLQotICAgICAgICBsZG1mZCAgICAgICBzcCEsIHtyMCwgbHJ9Ci0gICAgICAgIGJ4ICAgICAgICAgIGxyCi0jZW5kaWYgIC8qIE5FT05fVU5BTElHTkVEX0FDQ0VTUyAqLwotMTE6Ci0gICAgICAgIC8qIFNpbXBsZSBhcm0tb25seSBjb3B5IGxvb3AgdG8gaGFuZGxlIGFsaWduZWQgY29weSBvcGVyYXRpb25zICovCi0gICAgICAgIHN0bWZkICAgICAgIHNwISwge3I0LCByNSwgcjYsIHI3LCByOH0KLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDIpXQotCi0gICAgICAgIC8qIENoZWNrIGFsaWdubWVudCAqLwotICAgICAgICByc2IgICAgICAgICByMywgcjEsICMwCi0gICAgICAgIGFuZHMgICAgICAgIHIzLCAjMwotICAgICAgICBiZXEgICAgICAgICAyZgotCi0gICAgICAgIC8qIGFsaWduIHNvdXJjZSB0byAzMiBiaXRzLiBXZSBuZWVkIHRvIGluc2VydCAyIGluc3RydWN0aW9ucyBiZXR3ZWVuCi0gICAgICAgICAqIGEgbGRyW2J8aF0gYW5kIHN0cltifGhdIGJlY2F1c2UgYnl0ZSBhbmQgaGFsZi13b3JkIGluc3RydWN0aW9ucwotICAgICAgICAgKiBzdGFsbCAyIGN5Y2xlcy4KLSAgICAgICAgICovCi0gICAgICAgIG1vdnMgICAgICAgIHIxMiwgcjMsIGxzbCAjMzEKLSAgICAgICAgc3ViICAgICAgICAgcjIsIHIyLCByMyAgICAgIC8qIHdlIGtub3cgdGhhdCByMyA8PSByMiBiZWNhdXNlIHIyID49IDQgKi8KLSAgICAgICAgbGRybWliICAgICAgcjMsIFtyMV0sICMxCi0gICAgICAgIGxkcmNzYiAgICAgIHI0LCBbcjFdLCAjMQotICAgICAgICBsZHJjc2IgICAgICByNSwgW3IxXSwgIzEKLSAgICAgICAgc3RybWliICAgICAgcjMsIFtyMF0sICMxCi0gICAgICAgIHN0cmNzYiAgICAgIHI0LCBbcjBdLCAjMQotICAgICAgICBzdHJjc2IgICAgICByNSwgW3IwXSwgIzEKLTI6Ci0gICAgICAgIHN1YnMgICAgICAgIHIyLCAjMzIKLSAgICAgICAgYmx0ICAgICAgICAgNWYKLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDMpXQotMzogICAgICAvKiBNYWluIGNvcHkgbG9vcCwgY29weWluZyAzMiBieXRlcyBhdCBhIHRpbWUgKi8KLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSAqIDQpXQotICAgICAgICBsZG1pYSAgICAgICByMSEsIHtyMywgcjQsIHI1LCByNiwgcjcsIHI4LCByMTIsIGxyfQotICAgICAgICBzdWJzICAgICAgICByMiwgcjIsICMzMgotICAgICAgICBzdG1pYSAgICAgICByMCEsIHtyMywgcjQsIHI1LCByNiwgcjcsIHI4LCByMTIsIGxyfQotICAgICAgICBiZ2UgICAgICAgICAzYgotNTogICAgICAvKiBIYW5kbGUgYW55IHJlbWFpbmluZyBieXRlcyAqLwotICAgICAgICBhZGRzICAgICAgICByMiwgIzMyCi0gICAgICAgIGJlcSAgICAgICAgIDZmCi0KLSAgICAgICAgbW92cyAgICAgICAgcjEyLCByMiwgbHNsICMyOAotICAgICAgICBsZG1jc2lhICAgICByMSEsIHtyMywgcjQsIHI1LCByNn0gICAvKiAxNiBieXRlcyAqLwotICAgICAgICBsZG1taWlhICAgICByMSEsIHtyNywgcjh9ICAgICAgICAgICAvKiAgOCBieXRlcyAqLwotICAgICAgICBzdG1jc2lhICAgICByMCEsIHtyMywgcjQsIHI1LCByNn0KLSAgICAgICAgc3RtbWlpYSAgICAgcjAhLCB7cjcsIHI4fQotICAgICAgICBtb3ZzICAgICAgICByMTIsIHIyLCBsc2wgIzMwCi0gICAgICAgIGxkcmNzICAgICAgIHIzLCBbcjFdLCAjNCAgICAgICAgICAgIC8qICA0IGJ5dGVzICovCi0gICAgICAgIGxkcm1paCAgICAgIHI0LCBbcjFdLCAjMiAgICAgICAgICAgIC8qICAyIGJ5dGVzICovCi0gICAgICAgIHN0cmNzICAgICAgIHIzLCBbcjBdLCAjNAotICAgICAgICBzdHJtaWggICAgICByNCwgW3IwXSwgIzIKLSAgICAgICAgdHN0ICAgICAgICAgcjIsICMweDEKLSAgICAgICAgbGRybmViICAgICAgcjMsIFtyMV0gICAgICAgICAgICAgICAgLyogIGxhc3QgYnl0ZSAgKi8KLSAgICAgICAgc3RybmViICAgICAgcjMsIFtyMF0KLTY6Ci0gICAgICAgIGxkbWZkICAgICAgIHNwISwge3I0LCByNSwgcjYsIHI3LCByOH0KLSAgICAgICAgbGRtZmQgICAgICAgc3AhLCB7cjAsIHBjfQotRU5EKG1lbWNweSkKLQotCi0jZWxzZSAgIC8qIF9fQVJNX0FSQ0hfXyA8IDcgKi8KLQotCi0JCS8qCi0JCSAqIE9wdGltaXplZCBtZW1jcHkoKSBmb3IgQVJNLgotICAgICAgICAgKgotCQkgKiBub3RlIHRoYXQgbWVtY3B5KCkgYWx3YXlzIHJldHVybnMgdGhlIGRlc3RpbmF0aW9uIHBvaW50ZXIsCi0JCSAqIHNvIHdlIGhhdmUgdG8gcHJlc2VydmUgUjAuCi0JCSAqLwotCi1FTlRSWShtZW1jcHkpCi0JCS8qIFRoZSBzdGFjayBtdXN0IGFsd2F5cyBiZSA2NC1iaXRzIGFsaWduZWQgdG8gYmUgY29tcGxpYW50IHdpdGggdGhlCi0JCSAqIEFSTSBBQkkuIFNpbmNlIHdlIGhhdmUgdG8gc2F2ZSBSMCwgd2UgbWlnaHQgYXMgd2VsbCBzYXZlIFI0Ci0JCSAqIHdoaWNoIHdlIGNhbiB1c2UgZm9yIGJldHRlciBwaXBlbGluaW5nIG9mIHRoZSByZWFkcyBiZWxvdwotCQkgKi8KLSAgICAgICAgLnNhdmUgICAgICAge3IwLCByNCwgbHJ9Ci0gICAgICAgIHN0bWZkICAgICAgIHNwISwge3IwLCByNCwgbHJ9Ci0gICAgICAgIC8qIE1ha2luZyByb29tIGZvciByNS1yMTEgd2hpY2ggd2lsbCBiZSBzcGlsbGVkIGxhdGVyICovCi0gICAgICAgIC5wYWQgICAgICAgICMyOAotICAgICAgICBzdWIgICAgICAgICBzcCwgc3AsICMyOAotCi0gICAgICAgIC8vIHByZWxvYWQgdGhlIGRlc3RpbmF0aW9uIGJlY2F1c2Ugd2UnbGwgYWxpZ24gaXQgdG8gYSBjYWNoZSBsaW5lCi0gICAgICAgIC8vIHdpdGggc21hbGwgd3JpdGVzLiBBbHNvIHN0YXJ0IHRoZSBzb3VyY2UgInB1bXAiLgotICAgICAgICBwbGQgICAgICAgICBbcjAsICMwXQotICAgICAgICBwbGQgICAgICAgICBbcjEsICMwXQotICAgICAgICBwbGQgICAgICAgICBbcjEsICMzMl0KLQotCQkvKiBpdCBzaW1wbGlmaWVzIHRoaW5ncyB0byB0YWtlIGNhcmUgb2YgbGVuPDQgZWFybHkgKi8KLQkJY21wCQkJcjIsICM0Ci0JCWJsbwkJCWNvcHlfbGFzdF8zX2FuZF9yZXR1cm4KLQotCQkvKiBjb21wdXRlIHRoZSBvZmZzZXQgdG8gYWxpZ24gdGhlIHNvdXJjZQotCQkgKiBvZmZzZXQgPSAoNC0oc3JjJjMpKSYzID0gLXNyYyAmIDMKLQkJICovCi0JCXJzYgkJCXIzLCByMSwgIzAKLQkJYW5kcwkJcjMsIHIzLCAjMwotCQliZXEJCQlzcmNfYWxpZ25lZAotCi0JCS8qIGFsaWduIHNvdXJjZSB0byAzMiBiaXRzLiBXZSBuZWVkIHRvIGluc2VydCAyIGluc3RydWN0aW9ucyBiZXR3ZWVuCi0JCSAqIGEgbGRyW2J8aF0gYW5kIHN0cltifGhdIGJlY2F1c2UgYnl0ZSBhbmQgaGFsZi13b3JkIGluc3RydWN0aW9ucwotCQkgKiBzdGFsbCAyIGN5Y2xlcy4KLQkJICovCi0JCW1vdnMJCXIxMiwgcjMsIGxzbCAjMzEKLQkJc3ViCQkJcjIsIHIyLCByMwkJLyogd2Uga25vdyB0aGF0IHIzIDw9IHIyIGJlY2F1c2UgcjIgPj0gNCAqLwotCQlsZHJtaWIJCXIzLCBbcjFdLCAjMQotCQlsZHJjc2IJCXI0LCBbcjFdLCAjMQotCQlsZHJjc2IJCXIxMixbcjFdLCAjMQotICAgICAgICBzdHJtaWIJCXIzLCBbcjBdLCAjMQotCQlzdHJjc2IJCXI0LCBbcjBdLCAjMQotCQlzdHJjc2IJCXIxMixbcjBdLCAjMQotCi1zcmNfYWxpZ25lZDoKLQotCQkvKiBzZWUgaWYgc3JjIGFuZCBkc3QgYXJlIGFsaWduZWQgdG9nZXRoZXIgKGNvbmdydWVudCkgKi8KLQkJZW9yCQkJcjEyLCByMCwgcjEKLQkJdHN0CQkJcjEyLCAjMwotCQlibmUJCQlub25fY29uZ3J1ZW50Ci0KLSAgICAgICAgLyogVXNlIHBvc3QtaW5jcmltZW50IG1vZGUgZm9yIHN0bSB0byBzcGlsbCByNS1yMTEgdG8gcmVzZXJ2ZWQgc3RhY2sKLSAgICAgICAgICogZnJhbWUuIERvbid0IHVwZGF0ZSBzcC4KLSAgICAgICAgICovCi0gICAgICAgIHN0bWVhCQlzcCwge3I1LXIxMX0KLQotCQkvKiBhbGlnbiB0aGUgZGVzdGluYXRpb24gdG8gYSBjYWNoZS1saW5lICovCi0JCXJzYiAgICAgICAgIHIzLCByMCwgIzAKLQkJYW5kcwkJcjMsIHIzLCAjMHgxQwotCQliZXEgICAgICAgICBjb25ncnVlbnRfYWxpZ25lZDMyCi0JCWNtcCAgICAgICAgIHIzLCByMgotCQlhbmRoaQkJcjMsIHIyLCAjMHgxQwotCi0JCS8qIGNvbmRpdGlvbm5hbHkgY29waWVzIDAgdG8gNyB3b3JkcyAobGVuZ3RoIGluIHIzKSAqLwotCQltb3ZzCQlyMTIsIHIzLCBsc2wgIzI4Ci0JCWxkbWNzaWEJCXIxISwge3I0LCByNSwgcjYsIHI3fQkvKiAxNiBieXRlcyAqLwotCQlsZG1taWlhCQlyMSEsIHtyOCwgcjl9CQkJLyogIDggYnl0ZXMgKi8KLQkJc3RtY3NpYQkJcjAhLCB7cjQsIHI1LCByNiwgcjd9Ci0JCXN0bW1paWEJCXIwISwge3I4LCByOX0KLQkJdHN0ICAgICAgICAgcjMsICMweDQKLQkJbGRybmUJCXIxMCxbcjFdLCAjNAkJCS8qICA0IGJ5dGVzICovCi0JCXN0cm5lCQlyMTAsW3IwXSwgIzQKLQkJc3ViICAgICAgICAgcjIsIHIyLCByMwotCi1jb25ncnVlbnRfYWxpZ25lZDMyOgotCQkvKgotCQkgKiBoZXJlIHNvdXJjZSBpcyBhbGlnbmVkIHRvIDMyIGJ5dGVzLgotCQkgKi8KLQotY2FjaGVkX2FsaWduZWQzMjoKLSAgICAgICAgc3VicyAgICAgICAgcjIsIHIyLCAjMzIKLSAgICAgICAgYmxvICAgICAgICAgbGVzc190aGFuXzMyX2xlZnQKLQotICAgICAgICAvKgotICAgICAgICAgKiBXZSBwcmVsb2FkIGEgY2FjaGUtbGluZSB1cCB0byA2NCBieXRlcyBhaGVhZC4gT24gdGhlIDkyNiwgdGhpcyB3aWxsCi0gICAgICAgICAqIHN0YWxsIG9ubHkgdW50aWwgdGhlIHJlcXVlc3RlZCB3b3JsZCBpcyBmZXRjaGVkLCBidXQgdGhlIGxpbmVmaWxsCi0gICAgICAgICAqIGNvbnRpbnVlcyBpbiB0aGUgdGhlIGJhY2tncm91bmQuCi0gICAgICAgICAqIFdoaWxlIHRoZSBsaW5lZmlsbCBpcyBnb2luZywgd2Ugd3JpdGUgb3VyIHByZXZpb3VzIGNhY2hlLWxpbmUKLSAgICAgICAgICogaW50byB0aGUgd3JpdGUtYnVmZmVyICh3aGljaCBzaG91bGQgaGF2ZSBzb21lIGZyZWUgc3BhY2UpLgotICAgICAgICAgKiBXaGVuIHRoZSBsaW5lZmlsbCBpcyBkb25lLCB0aGUgd3JpdGVidWZmZXIgd2lsbAotICAgICAgICAgKiBzdGFydCBkdW1waW5nIGl0cyBjb250ZW50IGludG8gbWVtb3J5Ci0gICAgICAgICAqCi0gICAgICAgICAqIFdoaWxlIGFsbCB0aGlzIGlzIGdvaW5nLCB3ZSB0aGVuIGxvYWQgYSBmdWxsIGNhY2hlIGxpbmUgaW50bwotICAgICAgICAgKiA4IHJlZ2lzdGVycywgdGhpcyBjYWNoZSBsaW5lIHNob3VsZCBiZSBpbiB0aGUgY2FjaGUgYnkgbm93Ci0gICAgICAgICAqIChvciBwYXJ0bHkgaW4gdGhlIGNhY2hlKS4KLSAgICAgICAgICoKLSAgICAgICAgICogVGhpcyBjb2RlIHNob3VsZCB3b3JrIHdlbGwgcmVnYXJkbGVzcyBvZiB0aGUgc291cmNlL2Rlc3QgYWxpZ25tZW50LgotICAgICAgICAgKgotICAgICAgICAgKi8KLQotICAgICAgICAvLyBBbGlnbiB0aGUgcHJlbG9hZCByZWdpc3RlciB0byBhIGNhY2hlLWxpbmUgYmVjYXVzZSB0aGUgY3B1IGRvZXMKLSAgICAgICAgLy8gImNyaXRpY2FsIHdvcmQgZmlyc3QiICh0aGUgZmlyc3Qgd29yZCByZXF1ZXN0ZWQgaXMgbG9hZGVkIGZpcnN0KS4KLSAgICAgICAgYmljICAgICAgICAgcjEyLCByMSwgIzB4MUYKLSAgICAgICAgYWRkICAgICAgICAgcjEyLCByMTIsICM2NAotCi0xOiAgICAgIGxkbWlhICAgICAgIHIxISwgeyByNC1yMTEgfQotICAgICAgICBwbGQgICAgICAgICBbcjEyLCAjNjRdCi0gICAgICAgIHN1YnMgICAgICAgIHIyLCByMiwgIzMyCi0KLSAgICAgICAgLy8gTk9URTogaWYgcjEyIGlzIG1vcmUgdGhhbiA2NCBhaGVhZCBvZiByMSwgdGhlIGZvbGxvd2luZyBsZHJoaQotICAgICAgICAvLyBmb3IgQVJNOSBwcmVsb2FkIHdpbGwgbm90IGJlIHNhZmVseSBndWFyZGVkIGJ5IHRoZSBwcmVjZWRpbmcgc3Vicy4KLSAgICAgICAgLy8gV2hlbiBpdCBpcyBzYWZlbHkgZ3VhcmRlZCB0aGUgb25seSBwb3NzaWJpbGl0eSB0byBoYXZlIFNJR1NFR1YgaGVyZQotICAgICAgICAvLyBpcyBiZWNhdXNlIHRoZSBjYWxsZXIgb3ZlcnN0YXRlcyB0aGUgbGVuZ3RoLgotICAgICAgICBsZHJoaSAgICAgICByMywgW3IxMl0sICMzMiAgICAgIC8qIGNoZWFwIEFSTTkgcHJlbG9hZCAqLwotICAgICAgICBzdG1pYSAgICAgICByMCEsIHsgcjQtcjExIH0KLQkJYmhzICAgICAgICAgMWIKLQotICAgICAgICBhZGQgICAgICAgICByMiwgcjIsICMzMgotCi0KLQotCi1sZXNzX3RoYW5fMzJfbGVmdDoKLQkJLyoKLQkJICogbGVzcyB0aGFuIDMyIGJ5dGVzIGxlZnQgYXQgdGhpcyBwb2ludCAobGVuZ3RoIGluIHIyKQotCQkgKi8KLQotCQkvKiBza2lwIGFsbCB0aGlzIGlmIHRoZXJlIGlzIG5vdGhpbmcgdG8gZG8sIHdoaWNoIHNob3VsZAotCQkgKiBiZSBhIGNvbW1vbiBjYXNlIChpZiBub3QgZXhlY3V0ZWQgdGhlIGNvZGUgYmVsb3cgdGFrZXMKLQkJICogYWJvdXQgMTYgY3ljbGVzKQotCQkgKi8KLQkJdHN0CQkJcjIsICMweDFGCi0JCWJlcQkJCTFmCi0KLQkJLyogY29uZGl0aW9ubmFseSBjb3BpZXMgMCB0byAzMSBieXRlcyAqLwotCQltb3ZzCQlyMTIsIHIyLCBsc2wgIzI4Ci0JCWxkbWNzaWEJCXIxISwge3I0LCByNSwgcjYsIHI3fQkvKiAxNiBieXRlcyAqLwotCQlsZG1taWlhCQlyMSEsIHtyOCwgcjl9CQkJLyogIDggYnl0ZXMgKi8KLQkJc3RtY3NpYQkJcjAhLCB7cjQsIHI1LCByNiwgcjd9Ci0JCXN0bW1paWEJCXIwISwge3I4LCByOX0KLQkJbW92cwkJcjEyLCByMiwgbHNsICMzMAotCQlsZHJjcwkJcjMsIFtyMV0sICM0CQkJLyogIDQgYnl0ZXMgKi8KLQkJbGRybWloCQlyNCwgW3IxXSwgIzIJCQkvKiAgMiBieXRlcyAqLwotCQlzdHJjcwkJcjMsIFtyMF0sICM0Ci0JCXN0cm1paAkJcjQsIFtyMF0sICMyCi0JCXRzdCAgICAgICAgIHIyLCAjMHgxCi0JCWxkcm5lYgkJcjMsIFtyMV0JCQkJLyogIGxhc3QgYnl0ZSAgKi8KLQkJc3RybmViCQlyMywgW3IwXQotCi0JCS8qIHdlJ3JlIGRvbmUhIHJlc3RvcmUgZXZlcnl0aGluZyBhbmQgcmV0dXJuICovCi0xOgkJbGRtZmQJCXNwISwge3I1LXIxMX0KLQkJbGRtZmQJCXNwISwge3IwLCByNCwgbHJ9Ci0JCWJ4CQkJbHIKLQotCQkvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0KLW5vbl9jb25ncnVlbnQ6Ci0JCS8qCi0JCSAqIGhlcmUgc291cmNlIGlzIGFsaWduZWQgdG8gNCBieXRlcwotCQkgKiBidXQgZGVzdGluYXRpb24gaXMgbm90LgotCQkgKgotCQkgKiBpbiB0aGUgY29kZSBiZWxvdyByMiBpcyB0aGUgbnVtYmVyIG9mIGJ5dGVzIHJlYWQKLQkJICogKHRoZSBudW1iZXIgb2YgYnl0ZXMgd3JpdHRlbiBpcyBhbHdheXMgc21hbGxlciwgYmVjYXVzZSB3ZSBoYXZlCi0JCSAqIHBhcnRpYWwgd29yZHMgaW4gdGhlIHNoaWZ0IHF1ZXVlKQotCQkgKi8KLQkJY21wCQkJcjIsICM0Ci0JCWJsbwkJCWNvcHlfbGFzdF8zX2FuZF9yZXR1cm4KLQotICAgICAgICAvKiBVc2UgcG9zdC1pbmNyaW1lbnQgbW9kZSBmb3Igc3RtIHRvIHNwaWxsIHI1LXIxMSB0byByZXNlcnZlZCBzdGFjawotICAgICAgICAgKiBmcmFtZS4gRG9uJ3QgdXBkYXRlIHNwLgotICAgICAgICAgKi8KLSAgICAgICAgc3RtZWEJCXNwLCB7cjUtcjExfQotCi0JCS8qIGNvbXB1dGUgc2hpZnRzIG5lZWRlZCB0byBhbGlnbiBzcmMgdG8gZGVzdCAqLwotCQlyc2IJCQlyNSwgcjAsICMwCi0JCWFuZAkJCXI1LCByNSwgIzMJCQkvKiByNSA9ICMgYnl0ZXMgaW4gcGFydGlhbCB3b3JkcyAqLwotCQltb3YJCQlyMTIsIHI1LCBsc2wgIzMJCS8qIHIxMiA9IHJpZ2h0ICovCi0JCXJzYgkJCWxyLCByMTIsICMzMgkJLyogbHIgPSBsZWZ0ICAqLwotCi0JCS8qIHJlYWQgdGhlIGZpcnN0IHdvcmQgKi8KLQkJbGRyCQkJcjMsIFtyMV0sICM0Ci0JCXN1YgkJCXIyLCByMiwgIzQKLQotCQkvKiB3cml0ZSBhIHBhcnRpYWwgd29yZCAoMCB0byAzIGJ5dGVzKSwgc3VjaCB0aGF0IGRlc3RpbmF0aW9uCi0JCSAqIGJlY29tZXMgYWxpZ25lZCB0byAzMiBiaXRzIChyNSA9IG5iIG9mIHdvcmRzIHRvIGNvcHkgZm9yIGFsaWdubWVudCkKLQkJICovCi0JCW1vdnMJCXI1LCByNSwgbHNsICMzMQotCQlzdHJtaWIJCXIzLCBbcjBdLCAjMQotCQltb3ZtaQkJcjMsIHIzLCBsc3IgIzgKLQkJc3RyY3NiCQlyMywgW3IwXSwgIzEKLQkJbW92Y3MJCXIzLCByMywgbHNyICM4Ci0JCXN0cmNzYgkJcjMsIFtyMF0sICMxCi0JCW1vdmNzCQlyMywgcjMsIGxzciAjOAotCi0JCWNtcAkJCXIyLCAjNAotCQlibG8JCQlwYXJ0aWFsX3dvcmRfdGFpbAotCi0JCS8qIEFsaWduIGRlc3RpbmF0aW9uIHRvIDMyIGJ5dGVzIChjYWNoZSBsaW5lIGJvdW5kYXJ5KSAqLwotMToJCXRzdAkJCXIwLCAjMHgxYwotCQliZXEJCQkyZgotCQlsZHIJCQlyNSwgW3IxXSwgIzQKLQkJc3ViICAgICAgICAgcjIsIHIyLCAjNAotCQlvcnIJCQlyNCwgcjMsIHI1LAkJbHNsIGxyCi0JCW1vdgkJCXIzLCByNSwJCQlsc3IgcjEyCi0JCXN0cgkJCXI0LCBbcjBdLCAjNAotICAgICAgICBjbXAgICAgICAgICByMiwgIzQKLQkJYmhzCQkJMWIKLQkJYmxvCQkJcGFydGlhbF93b3JkX3RhaWwKLQotCQkvKiBjb3B5IDMyIGJ5dGVzIGF0IGEgdGltZSAqLwotMjoJCXN1YnMJCXIyLCByMiwgIzMyCi0JCWJsbwkJCWxlc3NfdGhhbl90aGlydHl0d28KLQotCQkvKiBVc2UgaW1tZWRpYXRlIG1vZGUgZm9yIHRoZSBzaGlmdHMsIGJlY2F1c2UgdGhlcmUgaXMgYW4gZXh0cmEgY3ljbGUKLQkJICogZm9yIHJlZ2lzdGVyIHNoaWZ0cywgd2hpY2ggY291bGQgYWNjb3VudCBmb3IgdXAgdG8gNTAlIG9mCi0JCSAqIHBlcmZvcm1hbmNlIGhpdC4KLQkJICovCi0KLSAgICAgICAgY21wCQkJcjEyLCAjMjQKLQkJYmVxCQkJbG9vcDI0Ci0JCWNtcAkJCXIxMiwgIzgKLQkJYmVxCQkJbG9vcDgKLQotbG9vcDE2OgotICAgICAgICBsZHIgICAgICAgICByMTIsIFtyMV0sICM0Ci0xOiAgICAgIG1vdiAgICAgICAgIHI0LCByMTIKLQkJbGRtaWEJCXIxISwgeyAgIHI1LHI2LHI3LCAgcjgscjkscjEwLHIxMX0KLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjNjRdCi0gICAgICAgIHN1YnMgICAgICAgIHIyLCByMiwgIzMyCi0gICAgICAgIGxkcmhzICAgICAgIHIxMiwgW3IxXSwgIzQKLQkJb3JyCQkJcjMsIHIzLCByNCwJCWxzbCAjMTYKLQkJbW92CQkJcjQsIHI0LAkJCWxzciAjMTYKLQkJb3JyCQkJcjQsIHI0LCByNSwJCWxzbCAjMTYKLQkJbW92CQkJcjUsIHI1LAkJCWxzciAjMTYKLQkJb3JyCQkJcjUsIHI1LCByNiwJCWxzbCAjMTYKLQkJbW92CQkJcjYsIHI2LAkJCWxzciAjMTYKLQkJb3JyCQkJcjYsIHI2LCByNywJCWxzbCAjMTYKLQkJbW92CQkJcjcsIHI3LAkJCWxzciAjMTYKLQkJb3JyCQkJcjcsIHI3LCByOCwJCWxzbCAjMTYKLQkJbW92CQkJcjgsIHI4LAkJCWxzciAjMTYKLQkJb3JyCQkJcjgsIHI4LCByOSwJCWxzbCAjMTYKLQkJbW92CQkJcjksIHI5LAkJCWxzciAjMTYKLQkJb3JyCQkJcjksIHI5LCByMTAsCWxzbCAjMTYKLQkJbW92CQkJcjEwLCByMTAsCQlsc3IgIzE2Ci0JCW9ycgkJCXIxMCwgcjEwLCByMTEsCWxzbCAjMTYKLQkJc3RtaWEJCXIwISwge3IzLHI0LHI1LHI2LCByNyxyOCxyOSxyMTB9Ci0JCW1vdgkJCXIzLCByMTEsCQlsc3IgIzE2Ci0JCWJocwkJCTFiCi0JCWIJCQlsZXNzX3RoYW5fdGhpcnR5dHdvCi0KLWxvb3A4OgotICAgICAgICBsZHIgICAgICAgICByMTIsIFtyMV0sICM0Ci0xOiAgICAgIG1vdiAgICAgICAgIHI0LCByMTIKLQkJbGRtaWEJCXIxISwgeyAgIHI1LHI2LHI3LCAgcjgscjkscjEwLHIxMX0KLSAgICAgICAgcGxkICAgICAgICAgW3IxLCAjNjRdCi0JCXN1YnMJCXIyLCByMiwgIzMyCi0gICAgICAgIGxkcmhzICAgICAgIHIxMiwgW3IxXSwgIzQKLQkJb3JyCQkJcjMsIHIzLCByNCwJCWxzbCAjMjQKLQkJbW92CQkJcjQsIHI0LAkJCWxzciAjOAotCQlvcnIJCQlyNCwgcjQsIHI1LAkJbHNsICMyNAotCQltb3YJCQlyNSwgcjUsCQkJbHNyICM4Ci0JCW9ycgkJCXI1LCByNSwgcjYsCQlsc2wgIzI0Ci0JCW1vdgkJCXI2LCByNiwJCQlsc3IgIzgKLQkJb3JyCQkJcjYsIHI2LCByNywJCWxzbCAjMjQKLQkJbW92CQkJcjcsIHI3LAkJCWxzciAjOAotCQlvcnIJCQlyNywgcjcsIHI4LAkJbHNsICMyNAotCQltb3YJCQlyOCwgcjgsCQkJbHNyICM4Ci0JCW9ycgkJCXI4LCByOCwgcjksCQlsc2wgIzI0Ci0JCW1vdgkJCXI5LCByOSwJCQlsc3IgIzgKLQkJb3JyCQkJcjksIHI5LCByMTAsCWxzbCAjMjQKLQkJbW92CQkJcjEwLCByMTAsCQlsc3IgIzgKLQkJb3JyCQkJcjEwLCByMTAsIHIxMSwJbHNsICMyNAotCQlzdG1pYQkJcjAhLCB7cjMscjQscjUscjYsIHI3LHI4LHI5LHIxMH0KLQkJbW92CQkJcjMsIHIxMSwJCWxzciAjOAotCQliaHMJCQkxYgotCQliCQkJbGVzc190aGFuX3RoaXJ0eXR3bwotCi1sb29wMjQ6Ci0gICAgICAgIGxkciAgICAgICAgIHIxMiwgW3IxXSwgIzQKLTE6ICAgICAgbW92ICAgICAgICAgcjQsIHIxMgotCQlsZG1pYQkJcjEhLCB7ICAgcjUscjYscjcsICByOCxyOSxyMTAscjExfQotICAgICAgICBwbGQgICAgICAgICBbcjEsICM2NF0KLQkJc3VicwkJcjIsIHIyLCAjMzIKLSAgICAgICAgbGRyaHMgICAgICAgcjEyLCBbcjFdLCAjNAotCQlvcnIJCQlyMywgcjMsIHI0LAkJbHNsICM4Ci0JCW1vdgkJCXI0LCByNCwJCQlsc3IgIzI0Ci0JCW9ycgkJCXI0LCByNCwgcjUsCQlsc2wgIzgKLQkJbW92CQkJcjUsIHI1LAkJCWxzciAjMjQKLQkJb3JyCQkJcjUsIHI1LCByNiwJCWxzbCAjOAotCQltb3YJCQlyNiwgcjYsCQkJbHNyICMyNAotCQlvcnIJCQlyNiwgcjYsIHI3LAkJbHNsICM4Ci0JCW1vdgkJCXI3LCByNywJCQlsc3IgIzI0Ci0JCW9ycgkJCXI3LCByNywgcjgsCQlsc2wgIzgKLQkJbW92CQkJcjgsIHI4LAkJCWxzciAjMjQKLQkJb3JyCQkJcjgsIHI4LCByOSwJCWxzbCAjOAotCQltb3YJCQlyOSwgcjksCQkJbHNyICMyNAotCQlvcnIJCQlyOSwgcjksIHIxMCwJbHNsICM4Ci0JCW1vdgkJCXIxMCwgcjEwLAkJbHNyICMyNAotCQlvcnIJCQlyMTAsIHIxMCwgcjExLAlsc2wgIzgKLQkJc3RtaWEJCXIwISwge3IzLHI0LHI1LHI2LCByNyxyOCxyOSxyMTB9Ci0JCW1vdgkJCXIzLCByMTEsCQlsc3IgIzI0Ci0JCWJocwkJCTFiCi0KLQotbGVzc190aGFuX3RoaXJ0eXR3bzoKLQkJLyogY29weSB0aGUgbGFzdCAwIHRvIDMxIGJ5dGVzIG9mIHRoZSBzb3VyY2UgKi8KLQkJcnNiCQkJcjEyLCBsciwgIzMyCQkvKiB3ZSBjb3JydXB0ZWQgcjEyLCByZWNvbXB1dGUgaXQgICovCi0JCWFkZAkJCXIyLCByMiwgIzMyCi0JCWNtcAkJCXIyLCAjNAotCQlibG8JCQlwYXJ0aWFsX3dvcmRfdGFpbAotCi0xOgkJbGRyCQkJcjUsIFtyMV0sICM0Ci0JCXN1YiAgICAgICAgIHIyLCByMiwgIzQKLQkJb3JyCQkJcjQsIHIzLCByNSwJCWxzbCBscgotCQltb3YJCQlyMywJcjUsCQkJbHNyIHIxMgotCQlzdHIJCQlyNCwgW3IwXSwgIzQKLSAgICAgICAgY21wICAgICAgICAgcjIsICM0Ci0JCWJocwkJCTFiCi0KLXBhcnRpYWxfd29yZF90YWlsOgotCQkvKiB3ZSBoYXZlIGEgcGFydGlhbCB3b3JkIGluIHRoZSBpbnB1dCBidWZmZXIgKi8KLQkJbW92cwkJcjUsIGxyLCBsc2wgIygzMS0zKQotCQlzdHJtaWIJCXIzLCBbcjBdLCAjMQotCQltb3ZtaQkJcjMsIHIzLCBsc3IgIzgKLQkJc3RyY3NiCQlyMywgW3IwXSwgIzEKLQkJbW92Y3MJCXIzLCByMywgbHNyICM4Ci0JCXN0cmNzYgkJcjMsIFtyMF0sICMxCi0KLQkJLyogUmVmaWxsIHNwaWxsZWQgcmVnaXN0ZXJzIGZyb20gdGhlIHN0YWNrLiBEb24ndCB1cGRhdGUgc3AuICovCi0JCWxkbWZkCQlzcCwge3I1LXIxMX0KLQotY29weV9sYXN0XzNfYW5kX3JldHVybjoKLQkJbW92cwkJcjIsIHIyLCBsc2wgIzMxCS8qIGNvcHkgcmVtYWluaW5nIDAsIDEsIDIgb3IgMyBieXRlcyAqLwotCQlsZHJtaWIJCXIyLCBbcjFdLCAjMQotCQlsZHJjc2IJCXIzLCBbcjFdLCAjMQotCQlsZHJjc2IJCXIxMixbcjFdCi0JCXN0cm1pYgkJcjIsIFtyMF0sICMxCi0JCXN0cmNzYgkJcjMsIFtyMF0sICMxCi0JCXN0cmNzYgkJcjEyLFtyMF0KLQotICAgICAgICAvKiB3ZSdyZSBkb25lISByZXN0b3JlIHNwIGFuZCBzcGlsbGVkIHJlZ2lzdGVycyBhbmQgcmV0dXJuICovCi0gICAgICAgIGFkZCAgICAgICAgIHNwLCAgc3AsICMyOAotCQlsZG1mZAkJc3AhLCB7cjAsIHI0LCBscn0KLQkJYngJCQlscgotRU5EKG1lbWNweSkKLQotCi0jZW5kaWYgICAgLyogX19BUk1fQVJDSF9fIDwgNyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9iaW9uaWMvbWVtY3B5LmE5LlMgYi9saWJjL2FyY2gtYXJtL2Jpb25pYy9tZW1jcHkuYTkuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjU5NzAxZC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9tZW1jcHkuYTkuUworKysgL2Rldi9udWxsCkBAIC0xLDYxNCArMCwwIEBACi0vKiBDb3B5cmlnaHQgKGMpIDIwMTMsIExpbmFybyBMaW1pdGVkCi0gICBBbGwgcmlnaHRzIHJlc2VydmVkLgotCi0gICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAgIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICAgYXJlIG1ldDoKLQotICAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotCi0gICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotCi0gICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgTGluYXJvIExpbWl0ZWQgbm9yIHRoZSBuYW1lcyBvZiBpdHMKLSAgICAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAotICAgICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotCi0gICBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gICAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICAgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0gICBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAotICAgSE9MREVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotICAgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAotICAgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0gICBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAgIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAgIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICAgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLQotICovCi0KLS8qCi0gICBUaGlzIG1lbWNweSByb3V0aW5lIGlzIG9wdGltaXNlZCBmb3IgQ29ydGV4LUExNSBjb3JlcyBhbmQgdGFrZXMgYWR2YW50YWdlCi0gICBvZiBWRlAgb3IgTkVPTiB3aGVuIGJ1aWx0IHdpdGggdGhlIGFwcHJvcHJpYXRlIGZsYWdzLgotCi0gICBBc3N1bXB0aW9uczoKLQotICAgIEFSTXY2IChBUk12Ny1hIGlmIHVzaW5nIE5lb24pCi0gICAgQVJNIHN0YXRlCi0gICAgVW5hbGlnbmVkIGFjY2Vzc2VzCi0gICAgTERSRC9TVFJEIHN1cHBvcnQgdW5hbGlnbmVkIHdvcmQgYWNjZXNzZXMKLQotICovCi0KLSNpbmNsdWRlIDxtYWNoaW5lL2NwdS1mZWF0dXJlcy5oPgotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi0JLnN5bnRheCB1bmlmaWVkCi0JLyogVGhpcyBpbXBsZW1lbnRhdGlvbiByZXF1aXJlcyBBUk0gc3RhdGUuICAqLwotCS5hcm0KLQotI2lmZGVmIF9fQVJNX05FT05fXwotCi0JLmZwdQluZW9uCi0JLmFyY2gJYXJtdjctYQotIyBkZWZpbmUgRlJBTUVfU0laRQk0Ci0jIGRlZmluZSBVU0VfVkZQCi0jIGRlZmluZSBVU0VfTkVPTgotCi0jZWxpZiAhZGVmaW5lZCAoX19TT0ZURlBfXykKLQotCS5hcmNoCWFybXY2Ci0JLmZwdQl2ZnB2MgotIyBkZWZpbmUgRlJBTUVfU0laRQkzMgotIyBkZWZpbmUgVVNFX1ZGUAotCi0jZWxzZQotCS5hcmNoCWFybXY2Ci0jIGRlZmluZSBGUkFNRV9TSVpFICAgIDMyCi0KLSNlbmRpZgotCi0vKiBPbGQgdmVyc2lvbnMgb2YgR0FTIGluY29ycmVjdGx5IGltcGxlbWVudCB0aGUgTkVPTiBhbGlnbiBzZW1hbnRpY3MuICAqLwotI2lmZGVmIEJST0tFTl9BU01fTkVPTl9BTElHTgotI2RlZmluZSBBTElHTihhZGRyLCBhbGlnbikgYWRkciw6YWxpZ24KLSNlbHNlCi0jZGVmaW5lIEFMSUdOKGFkZHIsIGFsaWduKSBhZGRyOmFsaWduCi0jZW5kaWYKLQotI2RlZmluZSBQQ19PRkZTRVQJOAkvKiBQQyBwaXBlbGluZSBjb21wZW5zYXRpb24uICAqLwotI2RlZmluZSBJTlNOX1NJWkUJNAotCi0vKiBDYWxsIHBhcmFtZXRlcnMuICAqLwotI2RlZmluZSBkc3RpbglyMAotI2RlZmluZSBzcmMJcjEKLSNkZWZpbmUgY291bnQJcjIKLQotLyogTG9jYWxzLiAgKi8KLSNkZWZpbmUgdG1wMQlyMwotI2RlZmluZSBkc3QJaXAKLSNkZWZpbmUgdG1wMglyMTAKLQotI2lmbmRlZiBVU0VfTkVPTgotLyogRm9yIGJ1bGsgY29waWVzIHVzaW5nIEdQIHJlZ2lzdGVycy4gICovCi0jZGVmaW5lCUFfbAlyMgkJLyogQ2FsbC1jbG9iYmVyZWQuICAqLwotI2RlZmluZQlBX2gJcjMJCS8qIENhbGwtY2xvYmJlcmVkLiAgKi8KLSNkZWZpbmUJQl9sCXI0Ci0jZGVmaW5lCUJfaAlyNQotI2RlZmluZQlDX2wJcjYKLSNkZWZpbmUJQ19oCXI3Ci0jZGVmaW5lCURfbAlyOAotI2RlZmluZQlEX2gJcjkKLSNlbmRpZgotCi0vKiBOdW1iZXIgb2YgbGluZXMgYWhlYWQgdG8gcHJlLWZldGNoIGRhdGEuICBJZiB5b3UgY2hhbmdlIHRoaXMgdGhlIGNvZGUKLSAgIGJlbG93IHdpbGwgbmVlZCBhZGp1c3RtZW50IHRvIGNvbXBlbnNhdGUuICAqLwotCi0jZGVmaW5lIHByZWZldGNoX2xpbmVzCTUKLQotI2lmZGVmIFVTRV9WRlAKLQkubWFjcm8JY3B5X2xpbmVfdmZwIHZyZWcsIGJhc2UKLQl2c3RyCVx2cmVnLCBbZHN0LCAjXGJhc2VdCi0JdmxkcglcdnJlZywgW3NyYywgI1xiYXNlXQotCXZzdHIJZDAsIFtkc3QsICNcYmFzZSArIDhdCi0JdmxkcglkMCwgW3NyYywgI1xiYXNlICsgOF0KLQl2c3RyCWQxLCBbZHN0LCAjXGJhc2UgKyAxNl0KLQl2bGRyCWQxLCBbc3JjLCAjXGJhc2UgKyAxNl0KLQl2c3RyCWQyLCBbZHN0LCAjXGJhc2UgKyAyNF0KLQl2bGRyCWQyLCBbc3JjLCAjXGJhc2UgKyAyNF0KLQl2c3RyCVx2cmVnLCBbZHN0LCAjXGJhc2UgKyAzMl0KLQl2bGRyCVx2cmVnLCBbc3JjLCAjXGJhc2UgKyBwcmVmZXRjaF9saW5lcyAqIDY0IC0gMzJdCi0JdnN0cglkMCwgW2RzdCwgI1xiYXNlICsgNDBdCi0JdmxkcglkMCwgW3NyYywgI1xiYXNlICsgNDBdCi0JdnN0cglkMSwgW2RzdCwgI1xiYXNlICsgNDhdCi0JdmxkcglkMSwgW3NyYywgI1xiYXNlICsgNDhdCi0JdnN0cglkMiwgW2RzdCwgI1xiYXNlICsgNTZdCi0JdmxkcglkMiwgW3NyYywgI1xiYXNlICsgNTZdCi0JLmVuZG0KLQotCS5tYWNybwljcHlfdGFpbF92ZnAgdnJlZywgYmFzZQotCXZzdHIJXHZyZWcsIFtkc3QsICNcYmFzZV0KLQl2bGRyCVx2cmVnLCBbc3JjLCAjXGJhc2VdCi0JdnN0cglkMCwgW2RzdCwgI1xiYXNlICsgOF0KLQl2bGRyCWQwLCBbc3JjLCAjXGJhc2UgKyA4XQotCXZzdHIJZDEsIFtkc3QsICNcYmFzZSArIDE2XQotCXZsZHIJZDEsIFtzcmMsICNcYmFzZSArIDE2XQotCXZzdHIJZDIsIFtkc3QsICNcYmFzZSArIDI0XQotCXZsZHIJZDIsIFtzcmMsICNcYmFzZSArIDI0XQotCXZzdHIJXHZyZWcsIFtkc3QsICNcYmFzZSArIDMyXQotCXZzdHIJZDAsIFtkc3QsICNcYmFzZSArIDQwXQotCXZsZHIJZDAsIFtzcmMsICNcYmFzZSArIDQwXQotCXZzdHIJZDEsIFtkc3QsICNcYmFzZSArIDQ4XQotCXZsZHIJZDEsIFtzcmMsICNcYmFzZSArIDQ4XQotCXZzdHIJZDIsIFtkc3QsICNcYmFzZSArIDU2XQotCXZsZHIJZDIsIFtzcmMsICNcYmFzZSArIDU2XQotCS5lbmRtCi0jZW5kaWYKLQotCS5wMmFsaWduIDYKLUVOVFJZKG1lbWNweSkKLQotCW1vdglkc3QsIGRzdGluCS8qIFByZXNlcnZlIGRzdGluLCB3ZSBuZWVkIHRvIHJldHVybiBpdC4gICovCi0JY21wCWNvdW50LCAjNjQKLQliZ2UJLkxjcHlfbm90X3Nob3J0Ci0JLyogRGVhbCB3aXRoIHNtYWxsIGNvcGllcyBxdWlja2x5IGJ5IGRyb3BwaW5nIHN0cmFpZ2h0IGludG8gdGhlCi0JICAgZXhpdCBibG9jay4gICovCi0KLS5MdGFpbDYzdW5hbGlnbmVkOgotI2lmZGVmIFVTRV9ORU9OCi0JYW5kCXRtcDEsIGNvdW50LCAjMHgzOAotCXJzYgl0bXAxLCB0bXAxLCAjKDU2IC0gUENfT0ZGU0VUICsgSU5TTl9TSVpFKQotCWFkZAlwYywgcGMsIHRtcDEKLQl2bGQxLjgJe2QwfSwgW3NyY10hCS8qIDE0IHdvcmRzIHRvIGdvLiAgKi8KLQl2c3QxLjgJe2QwfSwgW2RzdF0hCi0JdmxkMS44CXtkMH0sIFtzcmNdIQkvKiAxMiB3b3JkcyB0byBnby4gICovCi0JdnN0MS44CXtkMH0sIFtkc3RdIQotCXZsZDEuOAl7ZDB9LCBbc3JjXSEJLyogMTAgd29yZHMgdG8gZ28uICAqLwotCXZzdDEuOAl7ZDB9LCBbZHN0XSEKLQl2bGQxLjgJe2QwfSwgW3NyY10hCS8qIDggd29yZHMgdG8gZ28uICAqLwotCXZzdDEuOAl7ZDB9LCBbZHN0XSEKLQl2bGQxLjgJe2QwfSwgW3NyY10hCS8qIDYgd29yZHMgdG8gZ28uICAqLwotCXZzdDEuOAl7ZDB9LCBbZHN0XSEKLQl2bGQxLjgJe2QwfSwgW3NyY10hCS8qIDQgd29yZHMgdG8gZ28uICAqLwotCXZzdDEuOAl7ZDB9LCBbZHN0XSEKLQl2bGQxLjgJe2QwfSwgW3NyY10hCS8qIDIgd29yZHMgdG8gZ28uICAqLwotCXZzdDEuOAl7ZDB9LCBbZHN0XSEKLQotCXRzdAljb3VudCwgIzQKLQlsZHJuZQl0bXAxLCBbc3JjXSwgIzQKLQlzdHJuZQl0bXAxLCBbZHN0XSwgIzQKLSNlbHNlCi0JLyogQ29weSB1cCB0byAxNSBmdWxsIHdvcmRzIG9mIGRhdGEuICBNYXkgbm90IGJlIGFsaWduZWQuICAqLwotCS8qIENhbm5vdCB1c2UgVkZQIGZvciB1bmFsaWduZWQgZGF0YS4gICovCi0JYW5kCXRtcDEsIGNvdW50LCAjMHgzYwotCWFkZAlkc3QsIGRzdCwgdG1wMQotCWFkZAlzcmMsIHNyYywgdG1wMQotCXJzYgl0bXAxLCB0bXAxLCAjKDYwIC0gUENfT0ZGU0VULzIgKyBJTlNOX1NJWkUvMikKLQkvKiBKdW1wIGRpcmVjdGx5IGludG8gdGhlIHNlcXVlbmNlIGJlbG93IGF0IHRoZSBjb3JyZWN0IG9mZnNldC4gICovCi0JYWRkCXBjLCBwYywgdG1wMSwgbHNsICMxCi0KLQlsZHIJdG1wMSwgW3NyYywgIy02MF0JLyogMTUgd29yZHMgdG8gZ28uICAqLwotCXN0cgl0bXAxLCBbZHN0LCAjLTYwXQotCi0JbGRyCXRtcDEsIFtzcmMsICMtNTZdCS8qIDE0IHdvcmRzIHRvIGdvLiAgKi8KLQlzdHIJdG1wMSwgW2RzdCwgIy01Nl0KLQlsZHIJdG1wMSwgW3NyYywgIy01Ml0KLQlzdHIJdG1wMSwgW2RzdCwgIy01Ml0KLQotCWxkcgl0bXAxLCBbc3JjLCAjLTQ4XQkvKiAxMiB3b3JkcyB0byBnby4gICovCi0Jc3RyCXRtcDEsIFtkc3QsICMtNDhdCi0JbGRyCXRtcDEsIFtzcmMsICMtNDRdCi0Jc3RyCXRtcDEsIFtkc3QsICMtNDRdCi0KLQlsZHIJdG1wMSwgW3NyYywgIy00MF0JLyogMTAgd29yZHMgdG8gZ28uICAqLwotCXN0cgl0bXAxLCBbZHN0LCAjLTQwXQotCWxkcgl0bXAxLCBbc3JjLCAjLTM2XQotCXN0cgl0bXAxLCBbZHN0LCAjLTM2XQotCi0JbGRyCXRtcDEsIFtzcmMsICMtMzJdCS8qIDggd29yZHMgdG8gZ28uICAqLwotCXN0cgl0bXAxLCBbZHN0LCAjLTMyXQotCWxkcgl0bXAxLCBbc3JjLCAjLTI4XQotCXN0cgl0bXAxLCBbZHN0LCAjLTI4XQotCi0JbGRyCXRtcDEsIFtzcmMsICMtMjRdCS8qIDYgd29yZHMgdG8gZ28uICAqLwotCXN0cgl0bXAxLCBbZHN0LCAjLTI0XQotCWxkcgl0bXAxLCBbc3JjLCAjLTIwXQotCXN0cgl0bXAxLCBbZHN0LCAjLTIwXQotCi0JbGRyCXRtcDEsIFtzcmMsICMtMTZdCS8qIDQgd29yZHMgdG8gZ28uICAqLwotCXN0cgl0bXAxLCBbZHN0LCAjLTE2XQotCWxkcgl0bXAxLCBbc3JjLCAjLTEyXQotCXN0cgl0bXAxLCBbZHN0LCAjLTEyXQotCi0JbGRyCXRtcDEsIFtzcmMsICMtOF0JLyogMiB3b3JkcyB0byBnby4gICovCi0Jc3RyCXRtcDEsIFtkc3QsICMtOF0KLQlsZHIJdG1wMSwgW3NyYywgIy00XQotCXN0cgl0bXAxLCBbZHN0LCAjLTRdCi0jZW5kaWYKLQotCWxzbHMJY291bnQsIGNvdW50LCAjMzEKLQlsZHJoY3MJdG1wMSwgW3NyY10sICMyCi0JbGRyYm5lCXNyYywgW3NyY10JCS8qIFNyYyBpcyBkZWFkLCB1c2UgYXMgYSBzY3JhdGNoLiAgKi8KLQlzdHJoY3MJdG1wMSwgW2RzdF0sICMyCi0Jc3RyYm5lCXNyYywgW2RzdF0KLQlieAlscgotCi0uTGNweV9ub3Rfc2hvcnQ6Ci0JLyogQXQgbGVhc3QgNjQgYnl0ZXMgdG8gY29weSwgYnV0IGRvbid0IGtub3cgdGhlIGFsaWdubWVudCB5ZXQuICAqLwotCXN0cgl0bXAyLCBbc3AsICMtRlJBTUVfU0laRV0hCi0JYW5kCXRtcDIsIHNyYywgIzcKLQlhbmQJdG1wMSwgZHN0LCAjNwotCWNtcAl0bXAxLCB0bXAyCi0JYm5lCS5MY3B5X25vdGFsaWduZWQKLQotI2lmZGVmIFVTRV9WRlAKLQkvKiBNYWdpYyBkdXN0IGFsZXJ0ISAgRm9yY2UgVkZQIG9uIENvcnRleC1BOS4gIEV4cGVyaW1lbnRzIHNob3cKLQkgICB0aGF0IHRoZSBGUCBwaXBlbGluZSBpcyBtdWNoIGJldHRlciBhdCBzdHJlYW1pbmcgbG9hZHMgYW5kCi0JICAgc3RvcmVzLiAgVGhpcyBpcyBvdXRzaWRlIHRoZSBjcml0aWNhbCBsb29wLiAgKi8KLQl2bW92LmYzMglzMCwgczAKLSNlbmRpZgotCi0JLyogU1JDIGFuZCBEU1QgaGF2ZSB0aGUgc2FtZSBtdXR1YWwgMzItYml0IGFsaWdubWVudCwgYnV0IHdlIG1heQotCSAgIHN0aWxsIG5lZWQgdG8gcHJlLWNvcHkgc29tZSBieXRlcyB0byBnZXQgdG8gbmF0dXJhbCBhbGlnbm1lbnQuCi0JICAgV2UgYnJpbmcgRFNUIGludG8gZnVsbCA2NC1iaXQgYWxpZ25tZW50LiAgKi8KLQlsc2xzCXRtcDIsIGRzdCwgIzI5Ci0JYmVxCTFmCi0JcnNicwl0bXAyLCB0bXAyLCAjMAotCXN1Ygljb3VudCwgY291bnQsIHRtcDIsIGxzciAjMjkKLQlsZHJtaQl0bXAxLCBbc3JjXSwgIzQKLQlzdHJtaQl0bXAxLCBbZHN0XSwgIzQKLQlsc2xzCXRtcDIsIHRtcDIsICMyCi0JbGRyaGNzCXRtcDEsIFtzcmNdLCAjMgotCWxkcmJuZQl0bXAyLCBbc3JjXSwgIzEKLQlzdHJoY3MJdG1wMSwgW2RzdF0sICMyCi0Jc3RyYm5lCXRtcDIsIFtkc3RdLCAjMQotCi0xOgotCXN1YnMJdG1wMiwgY291bnQsICM2NAkvKiBVc2UgdG1wMiBmb3IgY291bnQuICAqLwotCWJsdAkuTHRhaWw2M2FsaWduZWQKLQotCWNtcAl0bXAyLCAjNTEyCi0JYmdlCS5MY3B5X2JvZHlfbG9uZwotCi0uTGNweV9ib2R5X21lZGl1bToJCQkvKiBDb3VudCBpbiB0bXAyLiAgKi8KLSNpZmRlZiBVU0VfVkZQCi0xOgotCXZsZHIJZDAsIFtzcmMsICMwXQotCXN1YnMJdG1wMiwgdG1wMiwgIzY0Ci0JdmxkcglkMSwgW3NyYywgIzhdCi0JdnN0cglkMCwgW2RzdCwgIzBdCi0JdmxkcglkMCwgW3NyYywgIzE2XQotCXZzdHIJZDEsIFtkc3QsICM4XQotCXZsZHIJZDEsIFtzcmMsICMyNF0KLQl2c3RyCWQwLCBbZHN0LCAjMTZdCi0JdmxkcglkMCwgW3NyYywgIzMyXQotCXZzdHIJZDEsIFtkc3QsICMyNF0KLQl2bGRyCWQxLCBbc3JjLCAjNDBdCi0JdnN0cglkMCwgW2RzdCwgIzMyXQotCXZsZHIJZDAsIFtzcmMsICM0OF0KLQl2c3RyCWQxLCBbZHN0LCAjNDBdCi0JdmxkcglkMSwgW3NyYywgIzU2XQotCXZzdHIJZDAsIFtkc3QsICM0OF0KLQlhZGQJc3JjLCBzcmMsICM2NAotCXZzdHIJZDEsIFtkc3QsICM1Nl0KLQlhZGQJZHN0LCBkc3QsICM2NAotCWJnZQkxYgotCXRzdAl0bXAyLCAjMHgzZgotCWJlcQkuTGRvbmUKLQotLkx0YWlsNjNhbGlnbmVkOgkJCS8qIENvdW50IGluIHRtcDIuICAqLwotCWFuZAl0bXAxLCB0bXAyLCAjMHgzOAotCWFkZAlkc3QsIGRzdCwgdG1wMQotCWFkZAlzcmMsIHNyYywgdG1wMQotCXJzYgl0bXAxLCB0bXAxLCAjKDU2IC0gUENfT0ZGU0VUICsgSU5TTl9TSVpFKQotCWFkZAlwYywgcGMsIHRtcDEKLQotCXZsZHIJZDAsIFtzcmMsICMtNTZdCS8qIDE0IHdvcmRzIHRvIGdvLiAgKi8KLQl2c3RyCWQwLCBbZHN0LCAjLTU2XQotCXZsZHIJZDAsIFtzcmMsICMtNDhdCS8qIDEyIHdvcmRzIHRvIGdvLiAgKi8KLQl2c3RyCWQwLCBbZHN0LCAjLTQ4XQotCXZsZHIJZDAsIFtzcmMsICMtNDBdCS8qIDEwIHdvcmRzIHRvIGdvLiAgKi8KLQl2c3RyCWQwLCBbZHN0LCAjLTQwXQotCXZsZHIJZDAsIFtzcmMsICMtMzJdCS8qIDggd29yZHMgdG8gZ28uICAqLwotCXZzdHIJZDAsIFtkc3QsICMtMzJdCi0JdmxkcglkMCwgW3NyYywgIy0yNF0JLyogNiB3b3JkcyB0byBnby4gICovCi0JdnN0cglkMCwgW2RzdCwgIy0yNF0KLQl2bGRyCWQwLCBbc3JjLCAjLTE2XQkvKiA0IHdvcmRzIHRvIGdvLiAgKi8KLQl2c3RyCWQwLCBbZHN0LCAjLTE2XQotCXZsZHIJZDAsIFtzcmMsICMtOF0JLyogMiB3b3JkcyB0byBnby4gICovCi0JdnN0cglkMCwgW2RzdCwgIy04XQotI2Vsc2UKLQlzdWIJc3JjLCBzcmMsICM4Ci0Jc3ViCWRzdCwgZHN0LCAjOAotMToKLQlsZHJkCUFfbCwgQV9oLCBbc3JjLCAjOF0KLQlzdHJkCUFfbCwgQV9oLCBbZHN0LCAjOF0KLQlsZHJkCUFfbCwgQV9oLCBbc3JjLCAjMTZdCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIzE2XQotCWxkcmQJQV9sLCBBX2gsIFtzcmMsICMyNF0KLQlzdHJkCUFfbCwgQV9oLCBbZHN0LCAjMjRdCi0JbGRyZAlBX2wsIEFfaCwgW3NyYywgIzMyXQotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICMzMl0KLQlsZHJkCUFfbCwgQV9oLCBbc3JjLCAjNDBdCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIzQwXQotCWxkcmQJQV9sLCBBX2gsIFtzcmMsICM0OF0KLQlzdHJkCUFfbCwgQV9oLCBbZHN0LCAjNDhdCi0JbGRyZAlBX2wsIEFfaCwgW3NyYywgIzU2XQotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICM1Nl0KLQlsZHJkCUFfbCwgQV9oLCBbc3JjLCAjNjRdIQotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICM2NF0hCi0Jc3Vicwl0bXAyLCB0bXAyLCAjNjQKLQliZ2UJMWIKLQl0c3QJdG1wMiwgIzB4M2YKLQlibmUJMWYKLQlsZHIJdG1wMixbc3BdLCAjRlJBTUVfU0laRQotCWJ4CWxyCi0xOgotCWFkZAlzcmMsIHNyYywgIzgKLQlhZGQJZHN0LCBkc3QsICM4Ci0KLS5MdGFpbDYzYWxpZ25lZDoJCQkvKiBDb3VudCBpbiB0bXAyLiAgKi8KLQkvKiBDb3B5IHVwIHRvIDcgZC13b3JkcyBvZiBkYXRhLiAgU2ltaWxhciB0byBMdGFpbDYzdW5hbGlnbmVkLCBidXQKLQkgICB3ZSBrbm93IHRoYXQgdGhlIHNyYyBhbmQgZGVzdCBhcmUgMzItYml0IGFsaWduZWQgc28gd2UgY2FuIHVzZQotCSAgIExEUkQvU1RSRCB0byBpbXByb3ZlIGVmZmljaWVuY3kuICAqLwotCS8qIFRNUDIgaXMgbm93IG5lZ2F0aXZlLCBidXQgd2UgZG9uJ3QgY2FyZSBhYm91dCB0aGF0LiAgVGhlIGJvdHRvbQotCSAgIHNpeCBiaXRzIHN0aWxsIHRlbGwgdXMgaG93IG1hbnkgYnl0ZXMgYXJlIGxlZnQgdG8gY29weS4gICovCi0KLQlhbmQJdG1wMSwgdG1wMiwgIzB4MzgKLQlhZGQJZHN0LCBkc3QsIHRtcDEKLQlhZGQJc3JjLCBzcmMsIHRtcDEKLQlyc2IJdG1wMSwgdG1wMSwgIyg1NiAtIFBDX09GRlNFVCArIElOU05fU0laRSkKLQlhZGQJcGMsIHBjLCB0bXAxCi0JbGRyZAlBX2wsIEFfaCwgW3NyYywgIy01Nl0JLyogMTQgd29yZHMgdG8gZ28uICAqLwotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICMtNTZdCi0JbGRyZAlBX2wsIEFfaCwgW3NyYywgIy00OF0JLyogMTIgd29yZHMgdG8gZ28uICAqLwotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICMtNDhdCi0JbGRyZAlBX2wsIEFfaCwgW3NyYywgIy00MF0JLyogMTAgd29yZHMgdG8gZ28uICAqLwotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICMtNDBdCi0JbGRyZAlBX2wsIEFfaCwgW3NyYywgIy0zMl0JLyogOCB3b3JkcyB0byBnby4gICovCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIy0zMl0KLQlsZHJkCUFfbCwgQV9oLCBbc3JjLCAjLTI0XQkvKiA2IHdvcmRzIHRvIGdvLiAgKi8KLQlzdHJkCUFfbCwgQV9oLCBbZHN0LCAjLTI0XQotCWxkcmQJQV9sLCBBX2gsIFtzcmMsICMtMTZdCS8qIDQgd29yZHMgdG8gZ28uICAqLwotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICMtMTZdCi0JbGRyZAlBX2wsIEFfaCwgW3NyYywgIy04XQkvKiAyIHdvcmRzIHRvIGdvLiAgKi8KLQlzdHJkCUFfbCwgQV9oLCBbZHN0LCAjLThdCi0KLSNlbmRpZgotCXRzdAl0bXAyLCAjNAotCWxkcm5lCXRtcDEsIFtzcmNdLCAjNAotCXN0cm5lCXRtcDEsIFtkc3RdLCAjNAotCWxzbHMJdG1wMiwgdG1wMiwgIzMxCQkvKiBDb3VudCAodG1wMikgbm93IGRlYWQuICovCi0JbGRyaGNzCXRtcDEsIFtzcmNdLCAjMgotCWxkcmJuZQl0bXAyLCBbc3JjXQotCXN0cmhjcwl0bXAxLCBbZHN0XSwgIzIKLQlzdHJibmUJdG1wMiwgW2RzdF0KLQotLkxkb25lOgotCWxkcgl0bXAyLCBbc3BdLCAjRlJBTUVfU0laRQotCWJ4CWxyCi0KLS5MY3B5X2JvZHlfbG9uZzoJCQkvKiBDb3VudCBpbiB0bXAyLiAgKi8KLQotCS8qIExvbmcgY29weS4gIFdlIGtub3cgdGhhdCB0aGVyZSdzIGF0IGxlYXN0IChwcmVmZXRjaF9saW5lcyAqIDY0KQotCSAgIGJ5dGVzIHRvIGdvLiAgKi8KLSNpZmRlZiBVU0VfVkZQCi0JLyogRG9uJ3QgdXNlIFBMRC4gIEluc3RlYWQsIHJlYWQgc29tZSBkYXRhIGluIGFkdmFuY2Ugb2YgdGhlIGN1cnJlbnQKLQkgICBjb3B5IHBvc2l0aW9uIGludG8gYSByZWdpc3Rlci4gIFRoaXMgc2hvdWxkIGFjdCBsaWtlIGEgUExECi0JICAgb3BlcmF0aW9uIGJ1dCB3ZSB3b24ndCBoYXZlIHRvIHJlcGVhdCB0aGUgdHJhbnNmZXIuICAqLwotCi0JdmxkcglkMywgW3NyYywgIzBdCi0JdmxkcglkNCwgW3NyYywgIzY0XQotCXZsZHIJZDUsIFtzcmMsICMxMjhdCi0JdmxkcglkNiwgW3NyYywgIzE5Ml0KLQl2bGRyCWQ3LCBbc3JjLCAjMjU2XQotCi0JdmxkcglkMCwgW3NyYywgIzhdCi0JdmxkcglkMSwgW3NyYywgIzE2XQotCXZsZHIJZDIsIFtzcmMsICMyNF0KLQlhZGQJc3JjLCBzcmMsICMzMgotCi0Jc3Vicwl0bXAyLCB0bXAyLCAjcHJlZmV0Y2hfbGluZXMgKiA2NCAqIDIKLQlibHQJMmYKLTE6Ci0JY3B5X2xpbmVfdmZwCWQzLCAwCi0JY3B5X2xpbmVfdmZwCWQ0LCA2NAotCWNweV9saW5lX3ZmcAlkNSwgMTI4Ci0JYWRkCWRzdCwgZHN0LCAjMyAqIDY0Ci0JYWRkCXNyYywgc3JjLCAjMyAqIDY0Ci0JY3B5X2xpbmVfdmZwCWQ2LCAwCi0JY3B5X2xpbmVfdmZwCWQ3LCA2NAotCWFkZAlkc3QsIGRzdCwgIzIgKiA2NAotCWFkZAlzcmMsIHNyYywgIzIgKiA2NAotCXN1YnMJdG1wMiwgdG1wMiwgI3ByZWZldGNoX2xpbmVzICogNjQKLQliZ2UJMWIKLQotMjoKLQljcHlfdGFpbF92ZnAJZDMsIDAKLQljcHlfdGFpbF92ZnAJZDQsIDY0Ci0JY3B5X3RhaWxfdmZwCWQ1LCAxMjgKLQlhZGQJc3JjLCBzcmMsICMzICogNjQKLQlhZGQJZHN0LCBkc3QsICMzICogNjQKLQljcHlfdGFpbF92ZnAJZDYsIDAKLQl2c3RyCWQ3LCBbZHN0LCAjNjRdCi0JdmxkcglkNywgW3NyYywgIzY0XQotCXZzdHIJZDAsIFtkc3QsICM2NCArIDhdCi0JdmxkcglkMCwgW3NyYywgIzY0ICsgOF0KLQl2c3RyCWQxLCBbZHN0LCAjNjQgKyAxNl0KLQl2bGRyCWQxLCBbc3JjLCAjNjQgKyAxNl0KLQl2c3RyCWQyLCBbZHN0LCAjNjQgKyAyNF0KLQl2bGRyCWQyLCBbc3JjLCAjNjQgKyAyNF0KLQl2c3RyCWQ3LCBbZHN0LCAjNjQgKyAzMl0KLQlhZGQJc3JjLCBzcmMsICM5NgotCXZzdHIJZDAsIFtkc3QsICM2NCArIDQwXQotCXZzdHIJZDEsIFtkc3QsICM2NCArIDQ4XQotCXZzdHIJZDIsIFtkc3QsICM2NCArIDU2XQotCWFkZAlkc3QsIGRzdCwgIzEyOAotCWFkZAl0bXAyLCB0bXAyLCAjcHJlZmV0Y2hfbGluZXMgKiA2NAotCWIJLkxjcHlfYm9keV9tZWRpdW0KLSNlbHNlCi0JLyogTG9uZyBjb3B5LiAgVXNlIGFuIFNNUyBzdHlsZSBsb29wIHRvIG1heGltaXplIHRoZSBJL08KLQkgICBiYW5kd2lkdGggb2YgdGhlIGNvcmUuICBXZSBkb24ndCBoYXZlIGVub3VnaCBzcGFyZSByZWdpc3RlcnMKLQkgICB0byBzeW50aGVzaXNlIHByZWZldGNoaW5nLCBzbyB1c2UgUExEIG9wZXJhdGlvbnMuICAqLwotCS8qIFByZS1iaWFzIHNyYyBhbmQgZHN0LiAgKi8KLQlzdWIJc3JjLCBzcmMsICM4Ci0Jc3ViCWRzdCwgZHN0LCAjOAotCXBsZAlbc3JjLCAjOF0KLQlwbGQJW3NyYywgIzcyXQotCXN1YnMJdG1wMiwgdG1wMiwgIzY0Ci0JcGxkCVtzcmMsICMxMzZdCi0JbGRyZAlBX2wsIEFfaCwgW3NyYywgIzhdCi0Jc3RyZAlCX2wsIEJfaCwgW3NwLCAjOF0KLQlsZHJkCUJfbCwgQl9oLCBbc3JjLCAjMTZdCi0Jc3RyZAlDX2wsIENfaCwgW3NwLCAjMTZdCi0JbGRyZAlDX2wsIENfaCwgW3NyYywgIzI0XQotCXN0cmQJRF9sLCBEX2gsIFtzcCwgIzI0XQotCXBsZAlbc3JjLCAjMjAwXQotCWxkcmQJRF9sLCBEX2gsIFtzcmMsICMzMl0hCi0JYgkxZgotCS5wMmFsaWduCTYKLTI6Ci0JcGxkCVtzcmMsICMyMzJdCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIzQwXQotCWxkcmQJQV9sLCBBX2gsIFtzcmMsICM0MF0KLQlzdHJkCUJfbCwgQl9oLCBbZHN0LCAjNDhdCi0JbGRyZAlCX2wsIEJfaCwgW3NyYywgIzQ4XQotCXN0cmQJQ19sLCBDX2gsIFtkc3QsICM1Nl0KLQlsZHJkCUNfbCwgQ19oLCBbc3JjLCAjNTZdCi0Jc3RyZAlEX2wsIERfaCwgW2RzdCwgIzY0XSEKLQlsZHJkCURfbCwgRF9oLCBbc3JjLCAjNjRdIQotCXN1YnMJdG1wMiwgdG1wMiwgIzY0Ci0xOgotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICM4XQotCWxkcmQJQV9sLCBBX2gsIFtzcmMsICM4XQotCXN0cmQJQl9sLCBCX2gsIFtkc3QsICMxNl0KLQlsZHJkCUJfbCwgQl9oLCBbc3JjLCAjMTZdCi0Jc3RyZAlDX2wsIENfaCwgW2RzdCwgIzI0XQotCWxkcmQJQ19sLCBDX2gsIFtzcmMsICMyNF0KLQlzdHJkCURfbCwgRF9oLCBbZHN0LCAjMzJdCi0JbGRyZAlEX2wsIERfaCwgW3NyYywgIzMyXQotCWJjcwkyYgotCS8qIFNhdmUgdGhlIHJlbWFpbmluZyBieXRlcyBhbmQgcmVzdG9yZSB0aGUgY2FsbGVlLXNhdmVkIHJlZ3MuICAqLwotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICM0MF0KLQlhZGQJc3JjLCBzcmMsICM0MAotCXN0cmQJQl9sLCBCX2gsIFtkc3QsICM0OF0KLQlsZHJkCUJfbCwgQl9oLCBbc3AsICM4XQotCXN0cmQJQ19sLCBDX2gsIFtkc3QsICM1Nl0KLQlsZHJkCUNfbCwgQ19oLCBbc3AsICMxNl0KLQlzdHJkCURfbCwgRF9oLCBbZHN0LCAjNjRdCi0JbGRyZAlEX2wsIERfaCwgW3NwLCAjMjRdCi0JYWRkCWRzdCwgZHN0LCAjNzIKLQl0c3QJdG1wMiwgIzB4M2YKLQlibmUJLkx0YWlsNjNhbGlnbmVkCi0JbGRyCXRtcDIsIFtzcF0sICNGUkFNRV9TSVpFCi0JYngJbHIKLSNlbmRpZgotCi0uTGNweV9ub3RhbGlnbmVkOgotCXBsZAlbc3JjXQotCXBsZAlbc3JjLCAjNjRdCi0JLyogVGhlcmUncyBhdCBsZWFzdCA2NCBieXRlcyB0byBjb3B5LCBidXQgdGhlcmUgaXMgbm8gbXV0dWFsCi0JICAgYWxpZ25tZW50LiAgKi8KLQkvKiBCcmluZyBEU1QgdG8gNjQtYml0IGFsaWdubWVudC4gICovCi0JbHNscwl0bXAyLCBkc3QsICMyOQotCXBsZAlbc3JjLCAjKDIgKiA2NCldCi0JYmVxCTFmCi0JcnNicwl0bXAyLCB0bXAyLCAjMAotCXN1Ygljb3VudCwgY291bnQsIHRtcDIsIGxzciAjMjkKLQlsZHJtaQl0bXAxLCBbc3JjXSwgIzQKLQlzdHJtaQl0bXAxLCBbZHN0XSwgIzQKLQlsc2xzCXRtcDIsIHRtcDIsICMyCi0JbGRyYm5lCXRtcDEsIFtzcmNdLCAjMQotCWxkcmhjcwl0bXAyLCBbc3JjXSwgIzIKLQlzdHJibmUJdG1wMSwgW2RzdF0sICMxCi0Jc3RyaGNzCXRtcDIsIFtkc3RdLCAjMgotMToKLQlwbGQJW3NyYywgIygzICogNjQpXQotCXN1YnMJY291bnQsIGNvdW50LCAjNjQKLQlsZHJtaQl0bXAyLCBbc3BdLCAjRlJBTUVfU0laRQotCWJtaQkuTHRhaWw2M3VuYWxpZ25lZAotCXBsZAlbc3JjLCAjKDQgKiA2NCldCi0KLSNpZmRlZiBVU0VfTkVPTgotCXZsZDEuOAl7ZDAtZDN9LCBbc3JjXSEKLQl2bGQxLjgJe2Q0LWQ3fSwgW3NyY10hCi0Jc3Vicwljb3VudCwgY291bnQsICM2NAotCWJtaQkyZgotMToKLQlwbGQJW3NyYywgIyg0ICogNjQpXQotCXZzdDEuOAl7ZDAtZDN9LCBbQUxJR04gKGRzdCwgNjQpXSEKLQl2bGQxLjgJe2QwLWQzfSwgW3NyY10hCi0JdnN0MS44CXtkNC1kN30sIFtBTElHTiAoZHN0LCA2NCldIQotCXZsZDEuOAl7ZDQtZDd9LCBbc3JjXSEKLQlzdWJzCWNvdW50LCBjb3VudCwgIzY0Ci0JYnBsCTFiCi0yOgotCXZzdDEuOAl7ZDAtZDN9LCBbQUxJR04gKGRzdCwgNjQpXSEKLQl2c3QxLjgJe2Q0LWQ3fSwgW0FMSUdOIChkc3QsIDY0KV0hCi0JYW5kcwljb3VudCwgY291bnQsICMweDNmCi0jZWxzZQotCS8qIFVzZSBhbiBTTVMgc3R5bGUgbG9vcCB0byBtYXhpbWl6ZSB0aGUgSS9PIGJhbmR3aWR0aC4gICovCi0Jc3ViCXNyYywgc3JjLCAjNAotCXN1Yglkc3QsIGRzdCwgIzgKLQlzdWJzCXRtcDIsIGNvdW50LCAjNjQJLyogVXNlIHRtcDIgZm9yIGNvdW50LiAgKi8KLQlsZHIJQV9sLCBbc3JjLCAjNF0KLQlsZHIJQV9oLCBbc3JjLCAjOF0KLQlzdHJkCUJfbCwgQl9oLCBbc3AsICM4XQotCWxkcglCX2wsIFtzcmMsICMxMl0KLQlsZHIJQl9oLCBbc3JjLCAjMTZdCi0Jc3RyZAlDX2wsIENfaCwgW3NwLCAjMTZdCi0JbGRyCUNfbCwgW3NyYywgIzIwXQotCWxkcglDX2gsIFtzcmMsICMyNF0KLQlzdHJkCURfbCwgRF9oLCBbc3AsICMyNF0KLQlsZHIJRF9sLCBbc3JjLCAjMjhdCi0JbGRyCURfaCwgW3NyYywgIzMyXSEKLQliCTFmCi0JLnAyYWxpZ24JNgotMjoKLQlwbGQJW3NyYywgIyg1ICogNjQpIC0gKDMyIC0gNCldCi0Jc3RyZAlBX2wsIEFfaCwgW2RzdCwgIzQwXQotCWxkcglBX2wsIFtzcmMsICMzNl0KLQlsZHIJQV9oLCBbc3JjLCAjNDBdCi0Jc3RyZAlCX2wsIEJfaCwgW2RzdCwgIzQ4XQotCWxkcglCX2wsIFtzcmMsICM0NF0KLQlsZHIJQl9oLCBbc3JjLCAjNDhdCi0Jc3RyZAlDX2wsIENfaCwgW2RzdCwgIzU2XQotCWxkcglDX2wsIFtzcmMsICM1Ml0KLQlsZHIJQ19oLCBbc3JjLCAjNTZdCi0Jc3RyZAlEX2wsIERfaCwgW2RzdCwgIzY0XSEKLQlsZHIJRF9sLCBbc3JjLCAjNjBdCi0JbGRyCURfaCwgW3NyYywgIzY0XSEKLQlzdWJzCXRtcDIsIHRtcDIsICM2NAotMToKLQlzdHJkCUFfbCwgQV9oLCBbZHN0LCAjOF0KLQlsZHIJQV9sLCBbc3JjLCAjNF0KLQlsZHIJQV9oLCBbc3JjLCAjOF0KLQlzdHJkCUJfbCwgQl9oLCBbZHN0LCAjMTZdCi0JbGRyCUJfbCwgW3NyYywgIzEyXQotCWxkcglCX2gsIFtzcmMsICMxNl0KLQlzdHJkCUNfbCwgQ19oLCBbZHN0LCAjMjRdCi0JbGRyCUNfbCwgW3NyYywgIzIwXQotCWxkcglDX2gsIFtzcmMsICMyNF0KLQlzdHJkCURfbCwgRF9oLCBbZHN0LCAjMzJdCi0JbGRyCURfbCwgW3NyYywgIzI4XQotCWxkcglEX2gsIFtzcmMsICMzMl0KLQliY3MJMmIKLQotCS8qIFNhdmUgdGhlIHJlbWFpbmluZyBieXRlcyBhbmQgcmVzdG9yZSB0aGUgY2FsbGVlLXNhdmVkIHJlZ3MuICAqLwotCXN0cmQJQV9sLCBBX2gsIFtkc3QsICM0MF0KLQlhZGQJc3JjLCBzcmMsICMzNgotCXN0cmQJQl9sLCBCX2gsIFtkc3QsICM0OF0KLQlsZHJkCUJfbCwgQl9oLCBbc3AsICM4XQotCXN0cmQJQ19sLCBDX2gsIFtkc3QsICM1Nl0KLQlsZHJkCUNfbCwgQ19oLCBbc3AsICMxNl0KLQlzdHJkCURfbCwgRF9oLCBbZHN0LCAjNjRdCi0JbGRyZAlEX2wsIERfaCwgW3NwLCAjMjRdCi0JYWRkCWRzdCwgZHN0LCAjNzIKLQlhbmRzCWNvdW50LCB0bXAyLCAjMHgzZgotI2VuZGlmCi0JbGRyCXRtcDIsIFtzcF0sICNGUkFNRV9TSVpFCi0JYm5lCS5MdGFpbDYzdW5hbGlnbmVkCi0JYngJbHIKLUVORChtZW1jcHkpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9zZXRqbXAuUyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL3NldGptcC5TCmluZGV4IGVkNTlkMDcuLjgyMjBjMDggMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL3NldGptcC5TCisrKyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL3NldGptcC5TCkBAIC0xLDYgKzEsMyBAQAotLyoJJE9wZW5CU0Q6IHNldGptcC5TLHYgMS4yIDIwMDQvMDIvMDEgMDU6NDA6NTIgZHJhaG4gRXhwICQJKi8KLS8qCSROZXRCU0Q6IHNldGptcC5TLHYgMS41IDIwMDMvMDQvMDUgMjM6MDg6NTEgYmpoMjEgRXhwICQJKi8KLQogLyoKICAqIENvcHlyaWdodCAoYykgMTk5NyBNYXJrIEJyaW5pY29tYmUKICAqIENvcHlyaWdodCAoYykgMjAxMCBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QuCkBAIC0zNSwxMTkgKzMyLDE0MiBAQAogICovCiAKICNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3NldGptcC5oPgotI2luY2x1ZGUgPG1hY2hpbmUvY3B1LWZlYXR1cmVzLmg+CiAKLS8qCi0gKiBDIGxpYnJhcnkgLS0gc2V0am1wLCBsb25nam1wCi0gKgotICoJbG9uZ2ptcChhLHYpCi0gKiB3aWxsIGdlbmVyYXRlIGEgInJldHVybih2KSIgZnJvbSB0aGUgbGFzdCBjYWxsIHRvCi0gKglzZXRqbXAoYSkKLSAqIGJ5IHJlc3RvcmluZyByZWdpc3RlcnMgZnJvbSB0aGUgc3RhY2suCi0gKiBUaGUgcHJldmlvdXMgc2lnbmFsIHN0YXRlIGlzIHJlc3RvcmVkLgotICovCisvLyBBY2NvcmRpbmcgdG8gdGhlIEFSTSBBQVBDUyBkb2N1bWVudCwgd2Ugb25seSBuZWVkIHRvIHNhdmUKKy8vIHRoZSBmb2xsb3dpbmcgcmVnaXN0ZXJzOgorLy8KKy8vICBDb3JlICAgcjQtcjE0CisvLworLy8gIFZGUCAgICBkOC1kMTUgIChzZWUgc2VjdGlvbiA1LjEuMi4xKQorLy8KKy8vICAgICAgUmVnaXN0ZXJzIHMxNi1zMzEgKGQ4LWQxNSwgcTQtcTcpIG11c3QgYmUgcHJlc2VydmVkIGFjcm9zcyBzdWJyb3V0aW5lCisvLyAgICAgIGNhbGxzOyByZWdpc3RlcnMgczAtczE1IChkMC1kNywgcTAtcTMpIGRvIG5vdCBuZWVkIHRvIGJlIHByZXNlcnZlZAorLy8gICAgICAoYW5kIGNhbiBiZSB1c2VkIGZvciBwYXNzaW5nIGFyZ3VtZW50cyBvciByZXR1cm5pbmcgcmVzdWx0cyBpbiBzdGFuZGFyZAorLy8gICAgICBwcm9jZWR1cmUtY2FsbCB2YXJpYW50cykuIFJlZ2lzdGVycyBkMTYtZDMxIChxOC1xMTUpLCBpZiBwcmVzZW50LCBkbworLy8gICAgICBub3QgbmVlZCB0byBiZSBwcmVzZXJ2ZWQuCisvLworLy8gIEZQU0NSICBzYXZlZCBiZWNhdXNlIGdsaWJjIGRvZXMuCisKKy8vIFRoZSBpbnRlcm5hbCBzdHJ1Y3R1cmUgb2YgYSBqbXBfYnVmIGlzIHRvdGFsbHkgcHJpdmF0ZS4KKy8vIEN1cnJlbnQgbGF5b3V0IChtYXkgY2hhbmdlIGluIHRoZSBmdXR1cmUpOgorLy8KKy8vIHdvcmQgICBuYW1lICAgICAgICAgZGVzY3JpcHRpb24KKy8vIDAgICAgICBtYWdpYyAgICAgICAgbWFnaWMgbnVtYmVyCisvLyAxICAgICAgc2lnbWFzayAgICAgIHNpZ25hbCBtYXNrIChub3QgdXNlZCB3aXRoIF9zZXRqbXAgLyBfbG9uZ2ptcCkKKy8vIDIgICAgICBmbG9hdF9iYXNlICAgYmFzZSBvZiBmbG9hdCByZWdpc3RlcnMgKGQ4IHRvIGQxNSkKKy8vIDE4ICAgICBmbG9hdF9zdGF0ZSAgZmxvYXRpbmctcG9pbnQgc3RhdHVzIGFuZCBjb250cm9sIHJlZ2lzdGVyCisvLyAxOSAgICAgY29yZV9iYXNlICAgIGJhc2Ugb2YgY29yZSByZWdpc3RlcnMgKHI0IHRvIHIxNCkKKy8vIDMwICAgICByZXNlcnZlZCAgICAgcmVzZXJ2ZWQgZW50cmllcyAocm9vbSB0byBncm93KQorLy8gNjQKKy8vCisvLyBOT1RFOiBmbG9hdF9iYXNlIG11c3QgYmUgYXQgYW4gZXZlbiB3b3JkIGluZGV4LCBzaW5jZSB0aGUKKy8vICAgICAgIEZQIHJlZ2lzdGVycyB3aWxsIGJlIGxvYWRlZC9zdG9yZWQgd2l0aCBpbnN0cnVjdGlvbnMKKy8vICAgICAgIHRoYXQgZXhwZWN0IDgtYnl0ZSBhbGlnbm1lbnQuCisKKyNkZWZpbmUgX0pCX1NJR0ZMQUcgICAgIDAKKyNkZWZpbmUgX0pCX1NJR01BU0sgICAgIChfSkJfU0lHRkxBRysxKQorI2RlZmluZSBfSkJfRkxPQVRfQkFTRSAgKF9KQl9TSUdNQVNLKzEpCisjZGVmaW5lIF9KQl9GTE9BVF9TVEFURSAoX0pCX0ZMT0FUX0JBU0UgKyAoMTUtOCsxKSoyKQorI2RlZmluZSBfSkJfQ09SRV9CQVNFICAgKF9KQl9GTE9BVF9TVEFURSsxKQogCiBFTlRSWShzZXRqbXApCi0JLyogQmxvY2sgYWxsIHNpZ25hbHMgYW5kIHJldHJpZXZlIHRoZSBvbGQgc2lnbmFsIG1hc2sgKi8KLQlzdG1mZAlzcCEsIHtyMCwgcjE0fQotCS5jZmlfZGVmX2NmYV9vZmZzZXQgOAotCS5jZmlfcmVsX29mZnNldCByMCwgMAotCS5jZmlfcmVsX29mZnNldCByMTQsIDQKLQltb3YJcjAsICMweDAwMDAwMDAwCi0KLQlibAlQSUNfU1lNKHNpZ2Jsb2NrLCBQTFQpCi0JbW92CXIxLCByMAotCi0JbGRtZmQJc3AhLCB7cjAsIHIxNH0KLQkuY2ZpX2RlZl9jZmFfb2Zmc2V0IDAKLQotCS8qIFN0b3JlIHNpZ25hbCBtYXNrICovCi0Jc3RyCXIxLCBbcjAsICMoX0pCX1NJR01BU0sgKiA0KV0KLQotCWxkcglyMSwgLkxzZXRqbXBfbWFnaWMKLQlzdHIJcjEsIFtyMCwgIyhfSkJfTUFHSUMgKiA0KV0KLQotCS8qIFN0b3JlIGNvcmUgcmVnaXN0ZXJzICovCi0JYWRkICAgICByMSwgcjAsICMoX0pCX0NPUkVfQkFTRSAqIDQpCi0Jc3RtaWEgICByMSwge3I0LXIxNH0KLQotI2lmZGVmIF9fQVJNX0hBVkVfVkZQCi0JLyogU3RvcmUgZmxvYXRpbmctcG9pbnQgcmVnaXN0ZXJzICovCi0JYWRkICAgICByMSwgcjAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0KQotCXZzdG1pYSAgcjEsIHtkOC1kMTV9Ci0JLyogU3RvcmUgZmxvYXRpbmctcG9pbnQgc3RhdGUgKi8KLQlmbXJ4ICAgIHIxLCBmcHNjcgotCXN0ciAgICAgcjEsIFtyMCwgIyhfSkJfRkxPQVRfU1RBVEUgKiA0KV0KLSNlbmRpZiAgLyogX19BUk1fSEFWRV9WRlAgKi8KLQotCW1vdglyMCwgIzB4MDAwMDAwMDAKLQlieCAgICAgIGxyCisgIG1vdiByMSwgIzEKKyAgYiBzaWdzZXRqbXAKIEVORChzZXRqbXApCiAKLS5Mc2V0am1wX21hZ2ljOgotCS53b3JkCV9KQl9NQUdJQ19TRVRKTVAKK0VOVFJZKF9zZXRqbXApCisgIG1vdiByMSwgIzAKKyAgYiBzaWdzZXRqbXAKK0VORChfc2V0am1wKQogCisvLyBpbnQgc2lnc2V0am1wKHNpZ2ptcF9idWYgZW52LCBpbnQgc2F2ZV9zaWduYWxfbWFzayk7CitFTlRSWShzaWdzZXRqbXApCisgIC8vIFJlY29yZCB3aGV0aGVyIG9yIG5vdCB3ZSdyZSBzYXZpbmcgdGhlIHNpZ25hbCBtYXNrLgorICBzdHIgcjEsIFtyMCwgIyhfSkJfU0lHRkxBRyAqIDQpXQogCi1FTlRSWShsb25nam1wKQotCWxkcglyMiwgLkxzZXRqbXBfbWFnaWMKLQlsZHIJcjMsIFtyMCwgIyhfSkJfTUFHSUMgKiA0KV0KLQl0ZXEJcjIsIHIzCi0JYm5lCWJvdGNoCisgIC8vIERvIHdlIG5lZWQgdG8gc2F2ZSB0aGUgc2lnbmFsIG1hc2s/CisgIHRlcSByMSwgIzAKKyAgYmVxIDFmCiAKLQkvKiBGZXRjaCBzaWduYWwgbWFzayAqLwotCWxkcglyMiwgW3IwLCAjKF9KQl9TSUdNQVNLICogNCldCisgIC8vIEdldCBjdXJyZW50IHNpZ25hbCBtYXNrLgorICBzdG1mZCBzcCEsIHtyMCwgcjE0fQorICAuY2ZpX2RlZl9jZmFfb2Zmc2V0IDgKKyAgLmNmaV9yZWxfb2Zmc2V0IHIwLCAwCisgIC5jZmlfcmVsX29mZnNldCByMTQsIDQKKyAgbW92IHIwLCAjMAorICBibCBzaWdibG9jaworICBtb3YgcjEsIHIwCisgIGxkbWZkIHNwISwge3IwLCByMTR9CisgIC5jZmlfZGVmX2NmYV9vZmZzZXQgMAogCi0JLyogU2V0IHNpZ25hbCBtYXNrICovCi0Jc3RtZmQJc3AhLCB7cjAsIHIxLCByMTR9Ci0JLmNmaV9kZWZfY2ZhX29mZnNldCAxMgotCS5jZmlfcmVsX29mZnNldCByMCwgMAotCS5jZmlfcmVsX29mZnNldCByMSwgNAotCS5jZmlfcmVsX29mZnNldCByMTQsIDgKLQlzdWIJc3AsIHNwLCAjNAkvKiBhbGlnbiB0aGUgc3RhY2sgKi8KLQkuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKKyAgLy8gU2F2ZSB0aGUgc2lnbmFsIG1hc2suCisgIHN0ciByMSwgW3IwLCAjKF9KQl9TSUdNQVNLICogNCldCiAKLQltb3YJcjAsIHIyCi0JYmwJUElDX1NZTShzaWdzZXRtYXNrLCBQTFQpCisxOgorICAvLyBTYXZlIGNvcmUgcmVnaXN0ZXJzLgorICBhZGQgcjEsIHIwLCAjKF9KQl9DT1JFX0JBU0UgKiA0KQorICBzdG1pYSByMSwge3I0LXIxNH0KIAotCWFkZAlzcCwgc3AsICM0CS8qIHVuYWxpZ24gdGhlIHN0YWNrICovCi0JLmNmaV9hZGp1c3RfY2ZhX29mZnNldCAtNAotCWxkbWZkCXNwISwge3IwLCByMSwgcjE0fQotCS5jZmlfZGVmX2NmYV9vZmZzZXQgMAorICAvLyBTYXZlIGZsb2F0aW5nLXBvaW50IHJlZ2lzdGVycy4KKyAgYWRkIHIxLCByMCwgIyhfSkJfRkxPQVRfQkFTRSAqIDQpCisgIHZzdG1pYSAgcjEsIHtkOC1kMTV9CiAKLSNpZmRlZiBfX0FSTV9IQVZFX1ZGUAotCS8qIFJlc3RvcmUgZmxvYXRpbmctcG9pbnQgcmVnaXN0ZXJzICovCi0JYWRkICAgICByMiwgcjAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0KQotCXZsZG1pYSAgcjIsIHtkOC1kMTV9Ci0JLyogUmVzdG9yZSBmbG9hdGluZy1wb2ludCBzdGF0ZSAqLwotCWxkciAgICAgcjIsIFtyMCwgIyhfSkJfRkxPQVRfU1RBVEUgKiA0KV0KLQlmbXhyICAgIGZwc2NyLCByMgotI2VuZGlmIC8qIF9fQVJNX0hBVkVfVkZQICovCisgIC8vIFNhdmUgZmxvYXRpbmctcG9pbnQgc3RhdGUuCisgIGZtcnggcjEsIGZwc2NyCisgIHN0ciByMSwgW3IwLCAjKF9KQl9GTE9BVF9TVEFURSAqIDQpXQogCi0JLyogUmVzdG9yZSBjb3JlIHJlZ2lzdGVycyAqLwotCWFkZCAgICAgcjIsIHIwLCAjKF9KQl9DT1JFX0JBU0UgKiA0KQotCWxkbWlhICAgcjIsIHtyNC1yMTR9CisgIG1vdiByMCwgIzAKKyAgYnggbHIKK0VORChzaWdzZXRqbXApCiAKLQkvKiBWYWxpZGF0ZSBzcCBhbmQgcjE0ICovCi0JdGVxCXNwLCAjMAotCXRlcW5lCXIxNCwgIzAKLQliZXEJYm90Y2gKKy8vIHZvaWQgc2lnbG9uZ2ptcChzaWdqbXBfYnVmIGVudiwgaW50IHZhbHVlKTsKK0VOVFJZKHNpZ2xvbmdqbXApCisgIC8vIERvIHdlIG5lZWQgdG8gcmVzdG9yZSB0aGUgc2lnbmFsIG1hc2s/CisgIGxkciByMiwgW3IwLCAjKF9KQl9TSUdGTEFHICogNCldCisgIHRlcSByMiwgIzAKKyAgYmVxIDFmCiAKLQkvKiBTZXQgcmV0dXJuIHZhbHVlICovCisgIC8vIFJlc3RvcmUgdGhlIHNpZ25hbCBtYXNrLgorICBzdG1mZCBzcCEsIHtyMCwgcjEsIHIxNH0KKyAgLmNmaV9kZWZfY2ZhX29mZnNldCAxMgorICAuY2ZpX3JlbF9vZmZzZXQgcjAsIDAKKyAgLmNmaV9yZWxfb2Zmc2V0IHIxLCA0CisgIC5jZmlfcmVsX29mZnNldCByMTQsIDgKKyAgc3ViIHNwLCBzcCwgIzQgLy8gQWxpZ24gdGhlIHN0YWNrLgorICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKIAotCW1vdglyMCwgcjEKLQl0ZXEJcjAsICMweDAwMDAwMDAwCi0JbW92ZXEJcjAsICMweDAwMDAwMDAxCi0gICAgICAgIGJ4ICAgICAgbHIKLSNpZmRlZiBfX0FSTV8yNl9fCi0JbW92CXIxNSwgcjE0Ci0jZWxzZQotCW1vdglyMTUsIHIxNAotI2VuZGlmCisgIGxkciByMCwgW3IwLCAjKF9KQl9TSUdNQVNLICogNCldCisgIGJsIHNpZ3NldG1hc2sKIAotCS8qIHZhbGlkYXRpb24gZmFpbGVkLCBkaWUgZGllIGRpZS4gKi8KLWJvdGNoOgotCWJsCVBJQ19TWU0obG9uZ2ptcGVycm9yLCBQTFQpCi0JYmwJUElDX1NZTShhYm9ydCwgUExUKQotCWIJLiAtIDgJCS8qIENhbm5vdCBnZXQgaGVyZSAqLwotRU5EKGxvbmdqbXApCisgIGFkZCBzcCwgc3AsICM0IC8vIFVuYWxpZ24gdGhlIHN0YWNrLgorICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IC00CisgIGxkbWZkIHNwISwge3IwLCByMSwgcjE0fQorICAuY2ZpX2RlZl9jZmFfb2Zmc2V0IDAKKworMToKKyAgLy8gUmVzdG9yZSBmbG9hdGluZy1wb2ludCByZWdpc3RlcnMuCisgIGFkZCByMiwgcjAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0KQorICB2bGRtaWEgcjIsIHtkOC1kMTV9CisKKyAgLy8gUmVzdG9yZSBmbG9hdGluZy1wb2ludCBzdGF0ZS4KKyAgbGRyIHIyLCBbcjAsICMoX0pCX0ZMT0FUX1NUQVRFICogNCldCisgIGZteHIgZnBzY3IsIHIyCisKKyAgLy8gUmVzdG9yZSBjb3JlIHJlZ2lzdGVycy4KKyAgYWRkIHIyLCByMCwgIyhfSkJfQ09SRV9CQVNFICogNCkKKyAgbGRtaWEgcjIsIHtyNC1yMTR9CisKKyAgLy8gVmFsaWRhdGUgc3AgYW5kIHIxNC4KKyAgdGVxIHNwLCAjMAorICB0ZXFuZSByMTQsICMwCisgIGJsZXEgbG9uZ2ptcGVycm9yCisKKyAgLy8gU2V0IHJldHVybiB2YWx1ZS4KKyAgbW92IHIwLCByMQorICB0ZXEgcjAsICMwCisgIG1vdmVxIHIwLCAjMQorICBieCBscgorRU5EKHNpZ2xvbmdqbXApCisKK0FMSUFTX1NZTUJPTChsb25nam1wLCBzaWdsb25nam1wKQorQUxJQVNfU1lNQk9MKF9sb25nam1wLCBzaWdsb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9iaW9uaWMvc2lnc2V0am1wLlMgYi9saWJjL2FyY2gtYXJtL2Jpb25pYy9zaWdzZXRqbXAuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzAxNmY1MC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9zaWdzZXRqbXAuUworKysgL2Rldi9udWxsCkBAIC0xLDY2ICswLDAgQEAKLS8qCSRPcGVuQlNEOiBzaWdzZXRqbXAuUyx2IDEuMiAyMDA0LzAyLzAxIDA1OjQwOjUyIGRyYWhuIEV4cCAkCSovCi0vKgkkTmV0QlNEOiBzaWdzZXRqbXAuUyx2IDEuMyAyMDAyLzA4LzE3IDE5OjU0OjMwIHRob3JwZWogRXhwICQJKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMTk5NyBNYXJrIEJyaW5pY29tYmUKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBBbGwgYWR2ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMgc29mdHdhcmUKLSAqICAgIG11c3QgZGlzcGxheSB0aGUgZm9sbG93aW5nIGFja25vd2xlZGdlbWVudDoKLSAqCVRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkgTWFyayBCcmluaWNvbWJlCi0gKiA0LiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCi0gKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jZGVmaW5lIF9BTElHTl9URVhUIC5hbGlnbiAwCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3NldGptcC5oPgotCi0vKgotICogQyBsaWJyYXJ5IC0tIHNpZ3NldGptcCwgc2lnbG9uZ2ptcAotICoKLSAqCWxvbmdqbXAoYSx2KQotICogd2lsbCBnZW5lcmF0ZSBhICJyZXR1cm4odikiIGZyb20gdGhlIGxhc3QgY2FsbCB0bwotICoJc2V0am1wKGEsIG0pCi0gKiBieSByZXN0b3JpbmcgcmVnaXN0ZXJzIGZyb20gdGhlIHN0YWNrLgotICogVGhlIHByZXZpb3VzIHNpZ25hbCBzdGF0ZSBpcyByZXN0b3JlZC4KLSAqLwotCi1FTlRSWShzaWdzZXRqbXApCi0JdGVxCXIxLCAjMAotCWJlcQlQSUNfU1lNKF9zZXRqbXAsIFBMVCkKLQliCVBJQ19TWU0oc2V0am1wLCBQTFQpCi1FTkQoc2lnc2V0am1wKQotCi0uTF9zZXRqbXBfbWFnaWM6Ci0JLndvcmQJX0pCX01BR0lDX19TRVRKTVAKLQotRU5UUlkoc2lnbG9uZ2ptcCkKLQlsZHIJcjIsIC5MX3NldGptcF9tYWdpYwotCWxkcglyMywgW3IwXQotCXRlcQlyMiwgcjMKLQliZXEJUElDX1NZTShfbG9uZ2ptcCwgUExUKQotCWIJUElDX1NZTShsb25nam1wLCBQTFQpCi1FTkQoc2lnbG9uZ2ptcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL3N0cmNtcC5TIGIvbGliYy9hcmNoLWFybS9iaW9uaWMvc3RyY21wLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZkYmE5NDIuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybS9iaW9uaWMvc3RyY21wLlMKKysrIC9kZXYvbnVsbApAQCAtMSwzMTcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoYykgMjAxMSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBDb3B5cmlnaHQgKGMpIDIwMDggQVJNIEx0ZAotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIFRoZSBuYW1lIG9mIHRoZSBjb21wYW55IG1heSBub3QgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUKLSAqICAgIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbgotICogICAgcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFSTSBMVEQgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECi0gKiBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRgotICogTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4KLSAqIElOIE5PIEVWRU5UIFNIQUxMIEFSTSBMVEQgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRAotICogVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRgotICogTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcKLSAqIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUwotICogU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgPG1hY2hpbmUvY3B1LWZlYXR1cmVzLmg+Ci0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLQkudGV4dAotCi0jaWZkZWYgX19BUk1FQl9fCi0jZGVmaW5lIFNIRlQyTFNCIGxzbAotI2RlZmluZSBTSEZUMkxTQkVRIGxzbGVxCi0jZGVmaW5lIFNIRlQyTVNCIGxzcgotI2RlZmluZSBTSEZUMk1TQkVRIGxzcmVxCi0jZGVmaW5lIE1TQiAweDAwMDAwMGZmCi0jZGVmaW5lIExTQiAweGZmMDAwMDAwCi0jZWxzZQotI2RlZmluZSBTSEZUMkxTQiBsc3IKLSNkZWZpbmUgU0hGVDJMU0JFUSBsc3JlcQotI2RlZmluZSBTSEZUMk1TQiBsc2wKLSNkZWZpbmUgU0hGVDJNU0JFUSBsc2xlcQotI2RlZmluZSBNU0IgMHhmZjAwMDAwMAotI2RlZmluZSBMU0IgMHgwMDAwMDBmZgotI2VuZGlmCi0KLSNkZWZpbmUgbWFnaWMxKFJFRykgUkVHCi0jZGVmaW5lIG1hZ2ljMihSRUcpIFJFRywgbHNsICM3Ci0KLUVOVFJZKHN0cmNtcCkKLQlwbGQJW3IwLCAjMF0KLQlwbGQJW3IxLCAjMF0KLQllb3IJcjIsIHIwLCByMQotCXRzdAlyMiwgIzMKLQotCS8qIFN0cmluZ3Mgbm90IGF0IHNhbWUgYnl0ZSBvZmZzZXQgZnJvbSBhIHdvcmQgYm91bmRhcnkuICAqLwotCWJuZQkuTHN0cmNtcF91bmFsaWduZWQKLQlhbmRzCXIyLCByMCwgIzMKLQliaWMJcjAsIHIwLCAjMwotCWJpYwlyMSwgcjEsICMzCi0JbGRyCWlwLCBbcjBdLCAjNAotCWl0CWVxCi0JbGRyZXEJcjMsIFtyMV0sICM0Ci0JYmVxCTFmCi0KLQkvKiBBbHRob3VnaCBzMSBhbmQgczIgaGF2ZSBpZGVudGljYWwgaW5pdGlhbCBhbGlnbm1lbnQsIHRoZXkgYXJlCi0JICogbm90IGN1cnJlbnRseSB3b3JkIGFsaWduZWQuICBSYXRoZXIgdGhhbiBjb21wYXJpbmcgYnl0ZXMsCi0JICogbWFrZSBzdXJlIHRoYXQgYW55IGJ5dGVzIGZldGNoZWQgZnJvbSBiZWZvcmUgdGhlIGFkZHJlc3NlZAotCSAqIGJ5dGVzIGFyZSBmb3JjZWQgdG8gMHhmZi4gIFRoZW4gdGhleSB3aWxsIGFsd2F5cyBjb21wYXJlCi0JICogZXF1YWwuCi0JICovCi0JZW9yCXIyLCByMiwgIzMKLQlsc2wJcjIsIHIyLCAjMwotCW12bglyMywgI01TQgotCVNIRlQyTFNCCXIyLCByMywgcjIKLQlsZHIJcjMsIFtyMV0sICM0Ci0Jb3JyCWlwLCBpcCwgcjIKLQlvcnIJcjMsIHIzLCByMgotMToKLQkvKiBMb2FkIHRoZSAnbWFnaWMnIGNvbnN0YW50IDB4MDEwMTAxMDEuICovCi0Jc3RyCXI0LCBbc3AsICMtNF0hCi0JbW92CXI0LCAjMQotCW9ycglyNCwgcjQsIHI0LCBsc2wgIzgKLQlvcnIJcjQsIHI0LCByNCwgbHNsICMxNgotCS5wMmFsaWduCTIKLTQ6Ci0JcGxkCVtyMCwgIzhdCi0JcGxkCVtyMSwgIzhdCi0Jc3ViCXIyLCBpcCwgbWFnaWMxKHI0KQotCWNtcAlpcCwgcjMKLQlpdHR0dAllcQotCi0JLyogY2hlY2sgZm9yIGFueSB6ZXJvIGJ5dGVzIGluIGZpcnN0IHdvcmQgKi8KLQliaWNlcQlyMiwgcjIsIGlwCi0JdHN0ZXEJcjIsIG1hZ2ljMihyNCkKLQlsZHJlcQlpcCwgW3IwXSwgIzQKLQlsZHJlcQlyMywgW3IxXSwgIzQKLQliZXEJNGIKLTI6Ci0JLyogVGhlcmUncyBhIHplcm8gb3IgYSBkaWZmZXJlbnQgYnl0ZSBpbiB0aGUgd29yZCAqLwotCVNIRlQyTVNCCXIwLCBpcCwgIzI0Ci0JU0hGVDJMU0IJaXAsIGlwLCAjOAotCWNtcAlyMCwgIzEKLQlpdAljcwotCWNtcGNzCXIwLCByMywgU0hGVDJNU0IgIzI0Ci0JaXQJZXEKLQlTSEZUMkxTQkVRIHIzLCByMywgIzgKLQliZXEJMmIKLQkvKiBPbiBhIGJpZy1lbmRpYW4gbWFjaGluZSwgcjAgY29udGFpbnMgdGhlIGRlc2lyZWQgYnl0ZSBpbiBiaXRzCi0JICogMC03OyBvbiBhIGxpdHRsZS1lbmRpYW4gbWFjaGluZSB0aGV5IGFyZSBpbiBiaXRzIDI0LTMxLiAgSW4KLQkgKiBib3RoIGNhc2VzIHRoZSBvdGhlciBiaXRzIGluIHIwIGFyZSBhbGwgemVyby4gIEZvciByMyB0aGUKLQkgKiBpbnRlcmVzdGluZyBieXRlIGlzIGF0IHRoZSBvdGhlciBlbmQgb2YgdGhlIHdvcmQsIGJ1dCB0aGUKLQkgKiBvdGhlciBiaXRzIGFyZSBub3QgbmVjZXNzYXJpbHkgemVyby4gIFdlIG5lZWQgYSBzaWduZWQgcmVzdWx0Ci0JICogcmVwcmVzZW50aW5nIHRoZSBkaWZmZXJuZWNlIGluIHRoZSB1bnNpZ25lZCBieXRlcywgc28gZm9yIHRoZQotCSAqIGxpdHRsZS1lbmRpYW4gY2FzZSB3ZSBjYW4ndCBqdXN0IHNoaWZ0IHRoZSBpbnRlcmVzdGluZyBiaXRzIHVwLgotCSAqLwotI2lmZGVmIF9fQVJNRUJfXwotCXN1YglyMCwgcjAsIHIzLCBsc3IgIzI0Ci0jZWxzZQotCWFuZAlyMywgcjMsICMyNTUKLQkvKiBObyBSU0IgaW5zdHJ1Y3Rpb24gaW4gVGh1bWIyICovCi0jaWZkZWYgX190aHVtYjJfXwotCWxzcglyMCwgcjAsICMyNAotCXN1YglyMCwgcjAsIHIzCi0jZWxzZQotCXJzYglyMCwgcjMsIHIwLCBsc3IgIzI0Ci0jZW5kaWYKLSNlbmRpZgotCWxkcglyNCwgW3NwXSwgIzQKLQlieAlscgotCi0uTHN0cmNtcF91bmFsaWduZWQ6Ci0Jd3AxIC5yZXEgcjAKLQl3cDIgLnJlcSByMQotCWIxICAucmVxIHIyCi0JdzEgIC5yZXEgcjQKLQl3MiAgLnJlcSByNQotCXQxICAucmVxIGlwCi0JQCByMyBpcyBzY3JhdGNoCi0KLQkvKiBGaXJzdCBvZiBhbGwsIGNvbXBhcmUgYnl0ZXMgdW50aWwgd3AxKHNwMSkgaXMgd29yZC1hbGlnbmVkLiAqLwotMToKLQl0c3QJd3AxLCAjMwotCWJlcQkyZgotCWxkcmIJcjIsIFt3cDFdLCAjMQotCWxkcmIJcjMsIFt3cDJdLCAjMQotCWNtcAlyMiwgIzEKLQlpdAljcwotCWNtcGNzCXIyLCByMwotCWJlcQkxYgotCXN1YglyMCwgcjIsIHIzCi0JYngJbHIKLQotMjoKLQlzdHIJcjUsIFtzcCwgIy00XSEKLQlzdHIJcjQsIFtzcCwgIy00XSEKLQltb3YJYjEsICMxCi0Jb3JyCWIxLCBiMSwgYjEsIGxzbCAjOAotCW9ycgliMSwgYjEsIGIxLCBsc2wgIzE2Ci0KLQlhbmQJdDEsIHdwMiwgIzMKLQliaWMJd3AyLCB3cDIsICMzCi0JbGRyCXcxLCBbd3AxXSwgIzQKLQlsZHIJdzIsIFt3cDJdLCAjNAotCWNtcAl0MSwgIzIKLQliZXEJMmYKLQliaGkJM2YKLQotCS8qIENyaXRpY2FsIGlubmVyIExvb3A6IEJsb2NrIHdpdGggMyBieXRlcyBpbml0aWFsIG92ZXJsYXAgKi8KLQkucDJhbGlnbgkyCi0xOgotCWJpYwl0MSwgdzEsICNNU0IKLQljbXAJdDEsIHcyLCBTSEZUMkxTQiAjOAotCXN1YglyMywgdzEsIGIxCi0JYmljCXIzLCByMywgdzEKLQlibmUJNGYKLQlhbmRzCXIzLCByMywgYjEsIGxzbCAjNwotCWl0CWVxCi0JbGRyZXEJdzIsIFt3cDJdLCAjNAotCWJuZQk1ZgotCWVvcgl0MSwgdDEsIHcxCi0JY21wCXQxLCB3MiwgU0hGVDJNU0IgIzI0Ci0JYm5lCTZmCi0JbGRyCXcxLCBbd3AxXSwgIzQKLQliCTFiCi00OgotCVNIRlQyTFNCCXcyLCB3MiwgIzgKLQliCThmCi0KLTU6Ci0jaWZkZWYgX19BUk1FQl9fCi0JLyogVGhlIHN5bmRyb21lIHZhbHVlIG1heSBjb250YWluIGZhbHNlIG9uZXMgaWYgdGhlIHN0cmluZyBlbmRzCi0JICogd2l0aCB0aGUgYnl0ZXMgMHgwMSAweDAwCi0JICovCi0JdHN0CXcxLCAjMHhmZjAwMDAwMAotCWl0dAluZQotCXRzdG5lCXcxLCAjMHgwMGZmMDAwMAotCXRzdG5lCXcxLCAjMHgwMDAwZmYwMAotCWJlcQk3ZgotI2Vsc2UKLQliaWNzCXIzLCByMywgIzB4ZmYwMDAwMDAKLQlibmUJN2YKLSNlbmRpZgotCWxkcmIJdzIsIFt3cDJdCi0JU0hGVDJMU0IJdDEsIHcxLCAjMjQKLSNpZmRlZiBfX0FSTUVCX18KLQlsc2wJdzIsIHcyLCAjMjQKLSNlbmRpZgotCWIJOGYKLQotNjoKLQlTSEZUMkxTQgl0MSwgdzEsICMyNAotCWFuZAl3MiwgdzIsICNMU0IKLQliCThmCi0KLQkvKiBDcml0aWNhbCBpbm5lciBMb29wOiBCbG9jayB3aXRoIDIgYnl0ZXMgaW5pdGlhbCBvdmVybGFwICovCi0JLnAyYWxpZ24JMgotMjoKLQlTSEZUMk1TQgl0MSwgdzEsICMxNgotCXN1YglyMywgdzEsIGIxCi0JU0hGVDJMU0IJdDEsIHQxLCAjMTYKLQliaWMJcjMsIHIzLCB3MQotCWNtcAl0MSwgdzIsIFNIRlQyTFNCICMxNgotCWJuZQk0ZgotCWFuZHMJcjMsIHIzLCBiMSwgbHNsICM3Ci0JaXQJZXEKLQlsZHJlcQl3MiwgW3dwMl0sICM0Ci0JYm5lCTVmCi0JZW9yCXQxLCB0MSwgdzEKLQljbXAJdDEsIHcyLCBTSEZUMk1TQiAjMTYKLQlibmUJNmYKLQlsZHIJdzEsIFt3cDFdLCAjNAotCWIJMmIKLQotNToKLSNpZmRlZiBfX0FSTUVCX18KLQkvKiBUaGUgc3luZHJvbWUgdmFsdWUgbWF5IGNvbnRhaW4gZmFsc2Ugb25lcyBpZiB0aGUgc3RyaW5nIGVuZHMKLQkgKiB3aXRoIHRoZSBieXRlcyAweDAxIDB4MDAKLQkgKi8KLQl0c3QJdzEsICMweGZmMDAwMDAwCi0JaXQJbmUKLQl0c3RuZQl3MSwgIzB4MDBmZjAwMDAKLQliZXEJN2YKLSNlbHNlCi0JbHNscwlyMywgcjMsICMxNgotCWJuZQk3ZgotI2VuZGlmCi0JbGRyaAl3MiwgW3dwMl0KLQlTSEZUMkxTQgl0MSwgdzEsICMxNgotI2lmZGVmIF9fQVJNRUJfXwotCWxzbAl3MiwgdzIsICMxNgotI2VuZGlmCi0JYgk4ZgotCi02OgotCVNIRlQyTVNCCXcyLCB3MiwgIzE2Ci0JU0hGVDJMU0IJdDEsIHcxLCAjMTYKLTQ6Ci0JU0hGVDJMU0IJdzIsIHcyLCAjMTYKLQliCThmCi0KLQkvKiBDcml0aWNhbCBpbm5lciBMb29wOiBCbG9jayB3aXRoIDEgYnl0ZSBpbml0aWFsIG92ZXJsYXAgKi8KLQkucDJhbGlnbgkyCi0zOgotCWFuZAl0MSwgdzEsICNMU0IKLQljbXAJdDEsIHcyLCBTSEZUMkxTQiAjMjQKLQlzdWIJcjMsIHcxLCBiMQotCWJpYwlyMywgcjMsIHcxCi0JYm5lCTRmCi0JYW5kcwlyMywgcjMsIGIxLCBsc2wgIzcKLQlpdAllcQotCWxkcmVxCXcyLCBbd3AyXSwgIzQKLQlibmUJNWYKLQllb3IJdDEsIHQxLCB3MQotCWNtcAl0MSwgdzIsIFNIRlQyTVNCICM4Ci0JYm5lCTZmCi0JbGRyCXcxLCBbd3AxXSwgIzQKLQliCTNiCi00OgotCVNIRlQyTFNCCXcyLCB3MiwgIzI0Ci0JYgk4ZgotNToKLQkvKiBUaGUgc3luZHJvbWUgdmFsdWUgbWF5IGNvbnRhaW4gZmFsc2Ugb25lcyBpZiB0aGUgc3RyaW5nIGVuZHMKLQkgKiB3aXRoIHRoZSBieXRlcyAweDAxIDB4MDAKLQkgKi8KLQl0c3QJdzEsICNMU0IKLQliZXEJN2YKLQlsZHIJdzIsIFt3cDJdLCAjNAotNjoKLQlTSEZUMkxTQgl0MSwgdzEsICM4Ci0JYmljCXcyLCB3MiwgI01TQgotCWIJOGYKLTc6Ci0JbW92CXIwLCAjMAotCWxkcglyNCwgW3NwXSwgIzQKLQlsZHIJcjUsIFtzcF0sICM0Ci0JYngJbHIKLQotODoKLQlhbmQJcjIsIHQxLCAjTFNCCi0JYW5kCXIwLCB3MiwgI0xTQgotCWNtcAlyMCwgIzEKLQlpdAljcwotCWNtcGNzCXIwLCByMgotCWl0dAllcQotCVNIRlQyTFNCRVEJdDEsIHQxLCAjOAotCVNIRlQyTFNCRVEJdzIsIHcyLCAjOAotCWJlcQk4YgotCXN1YglyMCwgcjIsIHIwCi0JbGRyCXI0LCBbc3BdLCAjNAotCWxkcglyNSwgW3NwXSwgIzQKLQlieAlscgotRU5EKHN0cmNtcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vY29ydGV4LWExNS9jb3J0ZXgtYTE1Lm1rIGIvbGliYy9hcmNoLWFybS9jb3J0ZXgtYTE1L2NvcnRleC1hMTUubWsKaW5kZXggZjFhYmUzMi4uNmZhMzI3MCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9jb3J0ZXgtYTE1L2NvcnRleC1hMTUubWsKKysrIGIvbGliYy9hcmNoLWFybS9jb3J0ZXgtYTE1L2NvcnRleC1hMTUubWsKQEAgLTgsNCArOCw5IEBACiAgICAgYXJjaC1hcm0vY29ydGV4LWExNS9iaW9uaWMvc3RyY3B5LlMgXAogICAgIGFyY2gtYXJtL2NvcnRleC1hMTUvYmlvbmljL19fc3RyY3B5X2Noay5TIFwKICAgICBhcmNoLWFybS9jb3J0ZXgtYTE1L2Jpb25pYy9zdHJsZW4uUyBcCi0gICAgYmlvbmljL21lbW1vdmUuYyBcCisKK2xpYmNfYmlvbmljX3NyY19maWxlc19hcm0gKz0gXAorICAgIGFyY2gtYXJtL2dlbmVyaWMvYmlvbmljL21lbWNtcC5TIFwKKworbGliY19iaW9uaWNfc3JjX2ZpbGVzX2FybSArPSBcCisgICAgYXJjaC1hcm0vZGVudmVyL2Jpb25pYy9tZW1tb3ZlLlMgXApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9jb3J0ZXgtYTkvYmlvbmljL21lbWNweV9iYXNlLlMgYi9saWJjL2FyY2gtYXJtL2NvcnRleC1hOS9iaW9uaWMvbWVtY3B5X2Jhc2UuUwppbmRleCA1ZTgxMzA1Li5iYjA4Yjk0IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtL2NvcnRleC1hOS9iaW9uaWMvbWVtY3B5X2Jhc2UuUworKysgYi9saWJjL2FyY2gtYXJtL2NvcnRleC1hOS9iaW9uaWMvbWVtY3B5X2Jhc2UuUwpAQCAtNDQsNyArNDQsNyBAQAogICAgICAgICAvKiBjaGVjayBpZiBidWZmZXJzIGFyZSBhbGlnbmVkLiBJZiBzbywgcnVuIGFybS1vbmx5IHZlcnNpb24gKi8KICAgICAgICAgZW9yICAgICAgICAgcjMsIHIwLCByMQogICAgICAgICBhbmRzICAgICAgICByMywgcjMsICMweDMKLSAgICAgICAgYmVxICAgICAgICAgX19tZW1jcHlfYmFzZV9hbGlnbmVkCisgICAgICAgIGJlcSAgICAgICAgIE1FTUNQWV9CQVNFX0FMSUdORUQKIAogICAgICAgICAvKiBDaGVjayB0aGUgdXBwZXIgc2l6ZSBsaW1pdCBmb3IgTmVvbiB1bmFsaWduZWQgbWVtb3J5IGFjY2VzcyBpbiBtZW1jcHkgKi8KICAgICAgICAgY21wICAgICAgICAgcjIsICMyMjQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vY29ydGV4LWE5L2NvcnRleC1hOS5tayBiL2xpYmMvYXJjaC1hcm0vY29ydGV4LWE5L2NvcnRleC1hOS5tawppbmRleCBjODJkYjNiLi43YjM4ZGUxIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtL2NvcnRleC1hOS9jb3J0ZXgtYTkubWsKKysrIGIvbGliYy9hcmNoLWFybS9jb3J0ZXgtYTkvY29ydGV4LWE5Lm1rCkBAIC04LDQgKzgsOSBAQAogICAgIGFyY2gtYXJtL2NvcnRleC1hOS9iaW9uaWMvc3RyY3B5LlMgXAogICAgIGFyY2gtYXJtL2NvcnRleC1hOS9iaW9uaWMvX19zdHJjcHlfY2hrLlMgXAogICAgIGFyY2gtYXJtL2NvcnRleC1hOS9iaW9uaWMvc3RybGVuLlMgXAotICAgIGJpb25pYy9tZW1tb3ZlLmMgXAorCitsaWJjX2Jpb25pY19zcmNfZmlsZXNfYXJtICs9IFwKKyAgICBhcmNoLWFybS9nZW5lcmljL2Jpb25pYy9tZW1jbXAuUyBcCisKK2xpYmNfYmlvbmljX3NyY19maWxlc19hcm0gKz0gXAorICAgIGFyY2gtYXJtL2RlbnZlci9iaW9uaWMvbWVtbW92ZS5TIFwKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vZGVudmVyL2Jpb25pYy9tZW1zZXQuUyBiL2xpYmMvYXJjaC1hcm0vZGVudmVyL2Jpb25pYy9tZW1zZXQuUwppbmRleCBiZjNkOWFkLi5kNzdjMjQ0IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtL2RlbnZlci9iaW9uaWMvbWVtc2V0LlMKKysrIGIvbGliYy9hcmNoLWFybS9kZW52ZXIvYmlvbmljL21lbXNldC5TCkBAIC0zNyw2ICszNyw3IEBACiAgICAgICAgICAqIG1lbXNldCgpIHJldHVybnMgaXRzIGZpcnN0IGFyZ3VtZW50LgogICAgICAgICAgKi8KIAorICAgICAgICAuY3B1ICAgICAgICBjb3J0ZXgtYTE1CiAgICAgICAgIC5mcHUgICAgICAgIG5lb24KICAgICAgICAgLnN5bnRheCAgICAgdW5pZmllZAogCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2RlbnZlci9kZW52ZXIubWsgYi9saWJjL2FyY2gtYXJtL2RlbnZlci9kZW52ZXIubWsKaW5kZXggMGJjNTJhMi4uNWZkZGY5NSAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9kZW52ZXIvZGVudmVyLm1rCisrKyBiL2xpYmMvYXJjaC1hcm0vZGVudmVyL2RlbnZlci5tawpAQCAtMSw0ICsxLDUgQEAKIGxpYmNfYmlvbmljX3NyY19maWxlc19hcm0gKz0gXAorICAgIGFyY2gtYXJtL2dlbmVyaWMvYmlvbmljL21lbWNtcC5TIFwKICAgICBhcmNoLWFybS9kZW52ZXIvYmlvbmljL21lbWNweS5TIFwKICAgICBhcmNoLWFybS9kZW52ZXIvYmlvbmljL21lbW1vdmUuUyBcCiAgICAgYXJjaC1hcm0vZGVudmVyL2Jpb25pYy9tZW1zZXQuUyBcCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9tZW1jbXAuUyBiL2xpYmMvYXJjaC1hcm0vZ2VuZXJpYy9iaW9uaWMvbWVtY21wLlMKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIGxpYmMvYXJjaC1hcm0vYmlvbmljL21lbWNtcC5TCnJlbmFtZSB0byBsaWJjL2FyY2gtYXJtL2dlbmVyaWMvYmlvbmljL21lbWNtcC5TCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2dlbmVyaWMvZ2VuZXJpYy5tayBiL2xpYmMvYXJjaC1hcm0vZ2VuZXJpYy9nZW5lcmljLm1rCmluZGV4IDk1YmU4NjcuLmU0OWQ2ZDIgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm0vZ2VuZXJpYy9nZW5lcmljLm1rCisrKyBiL2xpYmMvYXJjaC1hcm0vZ2VuZXJpYy9nZW5lcmljLm1rCkBAIC0xLDExICsxLDE0IEBACiBsaWJjX2Jpb25pY19zcmNfZmlsZXNfYXJtICs9IFwKKyAgICBhcmNoLWFybS9nZW5lcmljL2Jpb25pYy9tZW1jbXAuUyBcCiAgICAgYXJjaC1hcm0vZ2VuZXJpYy9iaW9uaWMvbWVtY3B5LlMgXAogICAgIGFyY2gtYXJtL2dlbmVyaWMvYmlvbmljL21lbXNldC5TIFwKICAgICBhcmNoLWFybS9nZW5lcmljL2Jpb25pYy9zdHJjbXAuUyBcCiAgICAgYXJjaC1hcm0vZ2VuZXJpYy9iaW9uaWMvc3RyY3B5LlMgXAogICAgIGFyY2gtYXJtL2dlbmVyaWMvYmlvbmljL3N0cmxlbi5jIFwKLSAgICBiaW9uaWMvbWVtbW92ZS5jIFwKICAgICBiaW9uaWMvX19zdHJjYXRfY2hrLmNwcCBcCiAgICAgYmlvbmljL19fc3RyY3B5X2Noay5jcHAgXAorCitsaWJjX29wZW5ic2Rfc3JjX2ZpbGVzX2FybSArPSBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtbW92ZS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHBjcHkuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RyY2F0LmMgXApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvYXNtLmggYi9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9hc20uaAppbmRleCA3OTU0ZjA1Li43MGRiZTY3IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9hc20uaAorKysgYi9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9hc20uaApAQCAtMzgsOSArMzgsNyBAQAogI2lmbmRlZiBfQVJNMzJfQVNNX0hfCiAjZGVmaW5lIF9BUk0zMl9BU01fSF8KIAotI2lmbmRlZiBfQUxJR05fVEVYVAotIyBkZWZpbmUgX0FMSUdOX1RFWFQgLmFsaWduIDAKLSNlbmRpZgorI2RlZmluZSBfX2Jpb25pY19hc21fYWxpZ24gMAogCiAjdW5kZWYgX19iaW9uaWNfYXNtX2N1c3RvbV9lbnRyeQogI3VuZGVmIF9fYmlvbmljX2FzbV9jdXN0b21fZW5kCkBAIC01MCwxMCArNDgsNCBAQAogI3VuZGVmIF9fYmlvbmljX2FzbV9mdW5jdGlvbl90eXBlCiAjZGVmaW5lIF9fYmlvbmljX2FzbV9mdW5jdGlvbl90eXBlICNmdW5jdGlvbgogCi0jaWYgZGVmaW5lZChfX0VMRl9fKSAmJiBkZWZpbmVkKFBJQykKLSNkZWZpbmUgUElDX1NZTSh4LHkpIHggIyMgKCAjIyB5ICMjICkKLSNlbHNlCi0jZGVmaW5lIFBJQ19TWU0oeCx5KSB4Ci0jZW5kaWYKLQogI2VuZGlmIC8qICFfQVJNX0FTTV9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvY3B1LWZlYXR1cmVzLmggYi9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9jcHUtZmVhdHVyZXMuaAppbmRleCBmYzVhOGZkLi5mYzhjODBkIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9jcHUtZmVhdHVyZXMuaAorKysgYi9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9jcHUtZmVhdHVyZXMuaApAQCAtMjgsMTQgKzI4LDYgQEAKICNpZm5kZWYgX0FSTV9NQUNISU5FX0NQVV9GRUFUVVJFU19ICiAjZGVmaW5lIF9BUk1fTUFDSElORV9DUFVfRkVBVFVSRVNfSAogCi0vKiBUaGUgcHVycG9zZSBvZiB0aGlzIGZpbGUgaXMgdG8gZGVmaW5lIHNldmVyYWwgbWFjcm9zIGNvcnJlc3BvbmRpbmcKLSAqIHRvIENQVSBmZWF0dXJlcyB0aGF0IG1heSBvciBtYXkgbm90IGJlIGF2YWlsYWJsZSBhdCBidWlsZCB0aW1lIG9uCi0gKiBvbiB0aGUgdGFyZ2V0IENQVS4KLSAqCi0gKiBUaGlzIGlzIGRvbmUgdG8gYWJzdHJhY3QgdXMgZnJvbSB0aGUgdmFyaW91cyBBUk0gQXJjaGl0ZWN0dXJlCi0gKiBxdWlya3MgYW5kIGFscGhhYmV0IHNvdXAuCi0gKi8KLQogLyogX19BUk1fQVJDSF9fIGlzIGEgbnVtYmVyIGNvcnJlc3BvbmRpbmcgdG8gdGhlIEFSTSByZXZpc2lvbgogICogd2UncmUgZ29pbmcgdG8gc3VwcG9ydC4gT3VyIHRvb2xjaGFpbiBkb2Vzbid0IGRlZmluZSBfX0FSTV9BUkNIX18KICAqIHNvIHRyeSB0byBndWVzcyBpdC4KQEAgLTUzLDMxICs0NSw0IEBACiAjICBlbmRpZgogI2VuZGlmCiAKLS8qIGRlZmluZSBfX0FSTV9IQVZFX0hBTEZXT1JEX01VTFRJUExZIHdoZW4gaGFsZi13b3JkIG11bHRpcGx5IGluc3RydWN0aW9ucwotICogdGhpcyBtZWFucyB2YXJpYW50cyBvZjogc211bCwgc211bHcsIHNtbGEsIHNtbGF3LCBzbWxhbAotICovCi0jZGVmaW5lICBfX0FSTV9IQVZFX0hBTEZXT1JEX01VTFRJUExZICAxCi0KLS8qIGRlZmluZSBfX0FSTV9IQVZFX0xEUkVYRCBmb3IgQVJNdjcgYXJjaGl0ZWN0dXJlCi0gKiAoYWxzbyBwcmVzZW50IGluIEFSTXY2SywgYnV0IG5vdCBpbXBsZW1lbnRlZCBpbiBBUk12Ny1NLCBuZWl0aGVyIG9mIHdoaWNoCi0gKiB3ZSBjYXJlIGFib3V0KQotICovCi0jaWYgX19BUk1fQVJDSF9fID49IDcKLSMgIGRlZmluZSBfX0FSTV9IQVZFX0xEUkVYRAotI2VuZGlmCi0KLS8qIGRlZmluZSBfQVJNX0hBVkVfVkZQIGlmIHdlIGhhdmUgVkZQdjMKLSAqLwotI2lmIF9fQVJNX0FSQ0hfXyA+PSA3ICYmIGRlZmluZWQgX19WRlBfRlBfXwotIyAgZGVmaW5lIF9fQVJNX0hBVkVfVkZQCi0jZW5kaWYKLQotLyogZGVmaW5lIF9BUk1fSEFWRV9ORU9OIGZvciBBUk12NyBhcmNoaXRlY3R1cmUgaWYgd2Ugc3VwcG9ydCB0aGUKLSAqIE5lb24gU0lNRCBpbnN0cnVjdGlvbiBzZXQgZXh0ZW5zaW9ucy4gVGhpcyBhbHNvIGltcGxpZXMKLSAqIHRoYXQgVkZQdjMtRDMyIGlzIHN1cHBvcnRlZC4KLSAqLwotI2lmIF9fQVJNX0FSQ0hfXyA+PSA3ICYmIGRlZmluZWQgX19BUk1fTkVPTl9fCi0jICBkZWZpbmUgX19BUk1fSEFWRV9ORU9OCi0jZW5kaWYKLQogI2VuZGlmIC8qIF9BUk1fTUFDSElORV9DUFVfRkVBVFVSRVNfSCAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvZWxmX21hY2hkZXAuaCBiL2xpYmMvYXJjaC1hcm0vaW5jbHVkZS9tYWNoaW5lL2VsZl9tYWNoZGVwLmgKaW5kZXggOTdkODQzNC4uNTQyZjYzOCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvZWxmX21hY2hkZXAuaAorKysgYi9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9lbGZfbWFjaGRlcC5oCkBAIC0xMDIsNiArMTAyLDggQEAKIAogLyogMTEyLTEyNyBhcmUgcmVzZXJ2ZWQgZm9yIHByaXZhdGUgZXhwZXJpbWVudHMuICovCiAKKyNkZWZpbmUgUl9BUk1fSVJFTEFUSVZFICAgMTYwCisKICNkZWZpbmUgUl9BUk1fUlhQQzI1CQkyNDkKICNkZWZpbmUgUl9BUk1fUlNCUkVMMzIJCTI1MAogI2RlZmluZSBSX0FSTV9USE1fUlBDMjIJCTI1MQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmggYi9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGQ5NzIzZC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaAorKysgL2Rldi9udWxsCkBAIC0xLDc5ICswLDAgQEAKLS8qCSRPcGVuQlNEOiBlbmRpYW4uaCx2IDEuMyAyMDA1LzEyLzEzIDAwOjM1OjIzIG1pbGxlcnQgRXhwICQJKi8KLQotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIF9BUk1fRU5ESUFOX0hfCi0jZGVmaW5lIF9BUk1fRU5ESUFOX0hfCi0KLSNpZmRlZiBfX0dOVUNfXwotCi0vKiBBY2NvcmRpbmcgdG8gUmVhbFZpZXcgQXNzZW1ibGVyIFVzZXIncyBHdWlkZSwgUkVWIGFuZCBSRVYxNiBhcmUgYXZhaWxhYmxlCi0gKiBpbiBUaHVtYiBjb2RlIGFuZCAxNi1iaXQgaW5zdHJ1Y3Rpb25zIHdoZW4gdXNlZCBpbiBUaHVtYi0yIGNvZGUuCi0gKgotICogUkVWIFJkLCBSbQotICogICBSZCBhbmQgUm0gbXVzdCBib3RoIGJlIExvIHJlZ2lzdGVycy4KLSAqCi0gKiBSRVYxNiBSZCwgUm0KLSAqICAgUmQgYW5kIFJtIG11c3QgYm90aCBiZSBMbyByZWdpc3RlcnMuCi0gKgotICogVGhlICtsIGNvbnN0cmFpbnQgdGFrZXMgY2FyZSBvZiB0aGlzIHdpdGhvdXQgY29uc3RyYWluaW5nIHVzIGluIEFSTSBtb2RlLgotICovCi0jZGVmaW5lIF9fc3dhcDE2bWQoeCkgKHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgIHJlZ2lzdGVyIHVfaW50MTZfdCBfeCA9ICh4KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXygicmV2MTYgJTAsICUwIiA6ICIrbCIgKF94KSk7ICAgICAgICAgICBcCi0gICAgX3g7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotfSkKLQotI2RlZmluZSBfX3N3YXAzMm1kKHgpICh7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICByZWdpc3RlciB1X2ludDMyX3QgX3ggPSAoeCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgX19hc21fXyBfX3ZvbGF0aWxlX18oInJldiAlMCwgJTAiIDogIitsIiAoX3gpKTsgICAgICAgICAgICAgXAotICAgIF94OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLX0pCi0KLSNkZWZpbmUgX19zd2FwNjRtZCh4KSAoeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgdV9pbnQ2NF90IF9zd2FwNjRtZF94ID0gKHgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICh1X2ludDY0X3QpIF9fc3dhcDMybWQoX3N3YXA2NG1kX3ggPj4gMzIpIHwgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgKHVfaW50NjRfdCkgX19zd2FwMzJtZChfc3dhcDY0bWRfeCAmIDB4ZmZmZmZmZmYpIDw8IDMyOyBcCi19KQotCi0vKiBUZWxsIHN5cy9lbmRpYW4uaCB3ZSBoYXZlIE1EIHZhcmlhbnRzIG9mIHRoZSBzd2FwIG1hY3Jvcy4gICovCi0jZGVmaW5lIE1EX1NXQVAKLQotI2VuZGlmICAvKiBfX0dOVUNfXyAqLwotCi0jaWYgZGVmaW5lZChfX0FSTUVCX18pCi0jZGVmaW5lIF9CWVRFX09SREVSIF9CSUdfRU5ESUFOCi0jZWxzZQotI2RlZmluZSBfQllURV9PUkRFUiBfTElUVExFX0VORElBTgotI2VuZGlmCi0jZGVmaW5lIF9fU1RSSUNUX0FMSUdOTUVOVAotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPHN5cy9lbmRpYW4uaD4KLQotI2VuZGlmICAvKiAhX0FSTV9FTkRJQU5fSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vaW5jbHVkZS9tYWNoaW5lL2V4ZWMuaCBiL2xpYmMvYXJjaC1hcm0vaW5jbHVkZS9tYWNoaW5lL2V4ZWMuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjI3YjIwNy4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtL2luY2x1ZGUvbWFjaGluZS9leGVjLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MCArMCwwIEBACi0vKgkkT3BlbkJTRDogZXhlYy5oLHYgMS45IDIwMDMvMDQvMTcgMDM6NDI6MTQgZHJhaG4gRXhwICQJKi8KLS8qCSROZXRCU0Q6IGV4ZWMuaCx2IDEuNiAxOTk0LzEwLzI3IDA0OjE2OjA1IGNnZCBFeHAgJAkqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAxOTkzIENocmlzdG9waGVyIEcuIERlbWV0cmlvdQotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIFRoZSBuYW1lIG9mIHRoZSBhdXRob3IgbWF5IG5vdCBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cwotICogICAgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUgotICogSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUwotICogT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4KLSAqIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAotICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBfQVJNX0VYRUNfSF8KLSNkZWZpbmUgX0FSTV9FWEVDX0hfCi0KLSNkZWZpbmUgX19MRFBHU1oJNDA5NgotCi0jZGVmaW5lIE5BVElWRV9FWEVDX0VMRgotCi0jZGVmaW5lIEFSQ0hfRUxGU0laRQkJMzIKLQotI2RlZmluZSBFTEZfVEFSR19DTEFTUwkJRUxGQ0xBU1MzMgotI2RlZmluZSBFTEZfVEFSR19EQVRBCQlFTEZEQVRBMkxTQgotI2RlZmluZSBFTEZfVEFSR19NQUNICQlFTV9BUk0KLQotI2RlZmluZSBfTkxJU1RfRE9fQU9VVAotI2RlZmluZSBfTkxJU1RfRE9fRUxGCi0KLSNkZWZpbmUgX0tFUk5fRE9fQU9VVAotI2RlZmluZSBfS0VSTl9ET19FTEYKLQotI2VuZGlmICAvKiBfQVJNX0VYRUNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oIGIvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvc2V0am1wLmgKaW5kZXggMDk0MTIwMi4uY2M5YzM0NyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvc2V0am1wLmgKKysrIGIvbGliYy9hcmNoLWFybS9pbmNsdWRlL21hY2hpbmUvc2V0am1wLmgKQEAgLTI2LDEwICsyNiw2IEBACiAgKiBTVUNIIERBTUFHRS4KICAqLwogCi0vKgotICogbWFjaGluZS9zZXRqbXAuaDogbWFjaGluZSBkZXBlbmRlbnQgc2V0am1wLXJlbGF0ZWQgaW5mb3JtYXRpb24uCi0gKi8KLQogLyogX0pCTEVOIGlzIHRoZSBzaXplIG9mIGEgam1wX2J1ZiBpbiBsb25ncy4KICAqIERvIG5vdCBtb2RpZnkgdGhpcyB2YWx1ZSBvciB5b3Ugd2lsbCBicmVhayB0aGUgQUJJICEKICAqCkBAIC0zNyw0NiArMzMsMyBAQAogICogdGhhdCB3YXMgcmVwbGFjZWQgYnkgdGhpcyBvbmUuCiAgKi8KICNkZWZpbmUgX0pCTEVOICA2NAotCi0vKiBBY2NvcmRpbmcgdG8gdGhlIEFSTSBBQVBDUyBkb2N1bWVudCwgd2Ugb25seSBuZWVkIHRvIHNhdmUKLSAqIHRoZSBmb2xsb3dpbmcgcmVnaXN0ZXJzOgotICoKLSAqICBDb3JlICAgcjQtcjE0Ci0gKgotICogIFZGUCAgICBkOC1kMTUgIChzZWUgc2VjdGlvbiA1LjEuMi4xKQotICoKLSAqICAgICAgUmVnaXN0ZXJzIHMxNi1zMzEgKGQ4LWQxNSwgcTQtcTcpIG11c3QgYmUgcHJlc2VydmVkIGFjcm9zcyBzdWJyb3V0aW5lCi0gKiAgICAgIGNhbGxzOyByZWdpc3RlcnMgczAtczE1IChkMC1kNywgcTAtcTMpIGRvIG5vdCBuZWVkIHRvIGJlIHByZXNlcnZlZAotICogICAgICAoYW5kIGNhbiBiZSB1c2VkIGZvciBwYXNzaW5nIGFyZ3VtZW50cyBvciByZXR1cm5pbmcgcmVzdWx0cyBpbiBzdGFuZGFyZAotICogICAgICBwcm9jZWR1cmUtY2FsbCB2YXJpYW50cykuIFJlZ2lzdGVycyBkMTYtZDMxIChxOC1xMTUpLCBpZiBwcmVzZW50LCBkbwotICogICAgICBub3QgbmVlZCB0byBiZSBwcmVzZXJ2ZWQuCi0gKgotICogIEZQU0NSICBzYXZlZCBiZWNhdXNlIEdMaWJjIGRvZXMgc2F2ZXMgaXQgdG9vLgotICoKLSAqLwotCi0vKiBUaGUgaW50ZXJuYWwgc3RydWN0dXJlIG9mIGEgam1wX2J1ZiBpcyB0b3RhbGx5IHByaXZhdGUuCi0gKiBDdXJyZW50IGxheW91dCAobWF5IGNoYW5nZSBpbiB0aGUgZnV0dXJlKToKLSAqCi0gKiB3b3JkICAgbmFtZSAgICAgICAgIGRlc2NyaXB0aW9uCi0gKiAwICAgICAgbWFnaWMgICAgICAgIG1hZ2ljIG51bWJlcgotICogMSAgICAgIHNpZ21hc2sgICAgICBzaWduYWwgbWFzayAobm90IHVzZWQgd2l0aCBfc2V0am1wIC8gX2xvbmdqbXApCi0gKiAyICAgICAgZmxvYXRfYmFzZSAgIGJhc2Ugb2YgZmxvYXQgcmVnaXN0ZXJzIChkOCB0byBkMTUpCi0gKiAxOCAgICAgZmxvYXRfc3RhdGUgIGZsb2F0aW5nLXBvaW50IHN0YXR1cyBhbmQgY29udHJvbCByZWdpc3RlcgotICogMTkgICAgIGNvcmVfYmFzZSAgICBiYXNlIG9mIGNvcmUgcmVnaXN0ZXJzIChyNCB0byByMTQpCi0gKiAzMCAgICAgcmVzZXJ2ZWQgICAgIHJlc2VydmVkIGVudHJpZXMgKHJvb20gdG8gZ3JvdykKLSAqIDY0Ci0gKgotICogTk9URTogZmxvYXRfYmFzZSBtdXN0IGJlIGF0IGFuIGV2ZW4gd29yZCBpbmRleCwgc2luY2UgdGhlCi0gKiAgICAgICBGUCByZWdpc3RlcnMgd2lsbCBiZSBsb2FkZWQvc3RvcmVkIHdpdGggaW5zdHJ1Y3Rpb25zCi0gKiAgICAgICB0aGF0IGV4cGVjdCA4LWJ5dGUgYWxpZ25tZW50LgotICovCi0KLSNkZWZpbmUgX0pCX01BR0lDICAgICAgIDAKLSNkZWZpbmUgX0pCX1NJR01BU0sgICAgIChfSkJfTUFHSUMrMSkKLSNkZWZpbmUgX0pCX0ZMT0FUX0JBU0UgIChfSkJfU0lHTUFTSysxKQotI2RlZmluZSBfSkJfRkxPQVRfU1RBVEUgKF9KQl9GTE9BVF9CQVNFICsgKDE1LTgrMSkqMikKLSNkZWZpbmUgX0pCX0NPUkVfQkFTRSAgIChfSkJfRkxPQVRfU1RBVEUrMSkKLQotI2RlZmluZSBfSkJfTUFHSUNfX1NFVEpNUAkweDQyNzhmNTAwCi0jZGVmaW5lIF9KQl9NQUdJQ19TRVRKTVAJMHg0Mjc4ZjUwMQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9rcmFpdC9rcmFpdC5tayBiL2xpYmMvYXJjaC1hcm0va3JhaXQva3JhaXQubWsKaW5kZXggMWJiN2IwYS4uODhiNGQ2NiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9rcmFpdC9rcmFpdC5taworKysgYi9saWJjL2FyY2gtYXJtL2tyYWl0L2tyYWl0Lm1rCkBAIC0xMSw0ICsxMSw5IEBACiAgICAgYXJjaC1hcm0vY29ydGV4LWExNS9iaW9uaWMvc3RyY2F0LlMgXAogICAgIGFyY2gtYXJtL2NvcnRleC1hMTUvYmlvbmljL3N0cmNweS5TIFwKICAgICBhcmNoLWFybS9jb3J0ZXgtYTE1L2Jpb25pYy9zdHJsZW4uUyBcCi0gICAgYmlvbmljL21lbW1vdmUuYyBcCisKK2xpYmNfYmlvbmljX3NyY19maWxlc19hcm0gKz0gXAorICAgIGFyY2gtYXJtL2dlbmVyaWMvYmlvbmljL21lbWNtcC5TIFwKKworbGliY19iaW9uaWNfc3JjX2ZpbGVzX2FybSArPSBcCisgICAgYXJjaC1hcm0vZGVudmVyL2Jpb25pYy9tZW1tb3ZlLlMgXApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fX19jbG9zZS5TIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fX19jbG9zZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRiOGEyMzAKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19fX2Nsb3NlLlMKQEAgLTAsMCArMSwxNSBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19jbG9zZSkKKyAgICBtb3YgICAgIGlwLCByNworICAgIGxkciAgICAgcjcsID1fX05SX2Nsb3NlCisgICAgc3dpICAgICAjMAorICAgIG1vdiAgICAgcjcsIGlwCisgICAgY21uICAgICByMCwgIyhNQVhfRVJSTk8gKyAxKQorICAgIGJ4bHMgICAgbHIKKyAgICBuZWcgICAgIHIwLCByMAorICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKK0VORChfX19jbG9zZSkKKy5oaWRkZW4gX19fY2xvc2UKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvX19fZmFjY2Vzc2F0LlMgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFkMDljZjcKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TCkBAIC0wLDAgKzEsMTUgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fZmFjY2Vzc2F0KQorICAgIG1vdiAgICAgaXAsIHI3CisgICAgbGRyICAgICByNywgPV9fTlJfZmFjY2Vzc2F0CisgICAgc3dpICAgICAjMAorICAgIG1vdiAgICAgcjcsIGlwCisgICAgY21uICAgICByMCwgIyhNQVhfRVJSTk8gKyAxKQorICAgIGJ4bHMgICAgbHIKKyAgICBuZWcgICAgIHIwLCByMAorICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKK0VORChfX19mYWNjZXNzYXQpCisuaGlkZGVuIF9fX2ZhY2Nlc3NhdApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fX19mY2htb2QuUyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvX19fZmNobW9kLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzZkYTRmOAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvX19fZmNobW9kLlMKQEAgLTAsMCArMSwxNSBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19mY2htb2QpCisgICAgbW92ICAgICBpcCwgcjcKKyAgICBsZHIgICAgIHI3LCA9X19OUl9mY2htb2QKKyAgICBzd2kgICAgICMwCisgICAgbW92ICAgICByNywgaXAKKyAgICBjbW4gICAgIHIwLCAjKE1BWF9FUlJOTyArIDEpCisgICAgYnhscyAgICBscgorICAgIG5lZyAgICAgcjAsIHIwCisgICAgYiAgICAgICBfX3NldF9lcnJub19pbnRlcm5hbAorRU5EKF9fX2ZjaG1vZCkKKy5oaWRkZW4gX19fZmNobW9kCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19fX2ZjaG1vZGF0LlMgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19fX2ZjaG1vZGF0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTFiYmRhNQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvX19fZmNobW9kYXQuUwpAQCAtMCwwICsxLDE1IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2ZjaG1vZGF0KQorICAgIG1vdiAgICAgaXAsIHI3CisgICAgbGRyICAgICByNywgPV9fTlJfZmNobW9kYXQKKyAgICBzd2kgICAgICMwCisgICAgbW92ICAgICByNywgaXAKKyAgICBjbW4gICAgIHIwLCAjKE1BWF9FUlJOTyArIDEpCisgICAgYnhscyAgICBscgorICAgIG5lZyAgICAgcjAsIHIwCisgICAgYiAgICAgICBfX3NldF9lcnJub19pbnRlcm5hbAorRU5EKF9fX2ZjaG1vZGF0KQorLmhpZGRlbiBfX19mY2htb2RhdApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fX2Nsb2NrX25hbm9zbGVlcC5TIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fX2Nsb2NrX25hbm9zbGVlcC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJhN2ZmYzQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19fY2xvY2tfbmFub3NsZWVwLlMKQEAgLTAsMCArMSwxNCBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX2Nsb2NrX25hbm9zbGVlcCkKKyAgICBtb3YgICAgIGlwLCByNworICAgIGxkciAgICAgcjcsID1fX05SX2Nsb2NrX25hbm9zbGVlcAorICAgIHN3aSAgICAgIzAKKyAgICBtb3YgICAgIHI3LCBpcAorICAgIGNtbiAgICAgcjAsICMoTUFYX0VSUk5PICsgMSkKKyAgICBieGxzICAgIGxyCisgICAgbmVnICAgICByMCwgcjAKKyAgICBiICAgICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCitFTkQoX19jbG9ja19uYW5vc2xlZXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19fcnRfc2lncXVldWVpbmZvLlMgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19fcnRfc2lncXVldWVpbmZvLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzgyM2NlZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvX19ydF9zaWdxdWV1ZWluZm8uUwpAQCAtMCwwICsxLDE0IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fcnRfc2lncXVldWVpbmZvKQorICAgIG1vdiAgICAgaXAsIHI3CisgICAgbGRyICAgICByNywgPV9fTlJfcnRfc2lncXVldWVpbmZvCisgICAgc3dpICAgICAjMAorICAgIG1vdiAgICAgcjcsIGlwCisgICAgY21uICAgICByMCwgIyhNQVhfRVJSTk8gKyAxKQorICAgIGJ4bHMgICAgbHIKKyAgICBuZWcgICAgIHIwLCByMAorICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKK0VORChfX3J0X3NpZ3F1ZXVlaW5mbykKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvX2V4aXQuUyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvX2V4aXQuUwppbmRleCAzMjhhNWNlLi43N2RhNzQzIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL19leGl0LlMKKysrIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9fZXhpdC5TCkBAIC0xMyw1ICsxMyw0IEBACiAgICAgYiAgICAgICBfX3NldF9lcnJub19pbnRlcm5hbAogRU5EKF9leGl0KQogCi0gICAgLmdsb2JsIF9FeGl0Ci0gICAgLmVxdSBfRXhpdCwgX2V4aXQKK0FMSUFTX1NZTUJPTChfRXhpdCwgX2V4aXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2Nsb2NrX25hbm9zbGVlcC5TIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9jbG9ja19uYW5vc2xlZXAuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODAyOTViYi4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2Nsb2NrX25hbm9zbGVlcC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShjbG9ja19uYW5vc2xlZXApCi0gICAgbW92ICAgICBpcCwgcjcKLSAgICBsZHIgICAgIHI3LCA9X19OUl9jbG9ja19uYW5vc2xlZXAKLSAgICBzd2kgICAgICMwCi0gICAgbW92ICAgICByNywgaXAKLSAgICBjbW4gICAgIHIwLCAjKE1BWF9FUlJOTyArIDEpCi0gICAgYnhscyAgICBscgotICAgIG5lZyAgICAgcjAsIHIwCi0gICAgYiAgICAgICBfX3NldF9lcnJub19pbnRlcm5hbAotRU5EKGNsb2NrX25hbm9zbGVlcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvY2xvc2UuUyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvY2xvc2UuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZWMwNTQ0NS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2Nsb3NlLlMKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGNsb3NlKQotICAgIG1vdiAgICAgaXAsIHI3Ci0gICAgbGRyICAgICByNywgPV9fTlJfY2xvc2UKLSAgICBzd2kgICAgICMwCi0gICAgbW92ICAgICByNywgaXAKLSAgICBjbW4gICAgIHIwLCAjKE1BWF9FUlJOTyArIDEpCi0gICAgYnhscyAgICBscgotICAgIG5lZyAgICAgcjAsIHIwCi0gICAgYiAgICAgICBfX3NldF9lcnJub19pbnRlcm5hbAotRU5EKGNsb3NlKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9mYWNjZXNzYXQuUyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvZmFjY2Vzc2F0LlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGExZGY1YzAuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9mYWNjZXNzYXQuUworKysgL2Rldi9udWxsCkBAIC0xLDE0ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZmFjY2Vzc2F0KQotICAgIG1vdiAgICAgaXAsIHI3Ci0gICAgbGRyICAgICByNywgPV9fTlJfZmFjY2Vzc2F0Ci0gICAgc3dpICAgICAjMAotICAgIG1vdiAgICAgcjcsIGlwCi0gICAgY21uICAgICByMCwgIyhNQVhfRVJSTk8gKyAxKQotICAgIGJ4bHMgICAgbHIKLSAgICBuZWcgICAgIHIwLCByMAotICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLUVORChmYWNjZXNzYXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2ZjaG1vZC5TIGIvbGliYy9hcmNoLWFybS9zeXNjYWxscy9mY2htb2QuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTY3NWYwYS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2ZjaG1vZC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmY2htb2QpCi0gICAgbW92ICAgICBpcCwgcjcKLSAgICBsZHIgICAgIHI3LCA9X19OUl9mY2htb2QKLSAgICBzd2kgICAgICMwCi0gICAgbW92ICAgICByNywgaXAKLSAgICBjbW4gICAgIHIwLCAjKE1BWF9FUlJOTyArIDEpCi0gICAgYnhscyAgICBscgotICAgIG5lZyAgICAgcjAsIHIwCi0gICAgYiAgICAgICBfX3NldF9lcnJub19pbnRlcm5hbAotRU5EKGZjaG1vZCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvZmNobW9kYXQuUyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvZmNobW9kYXQuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2Y3ZTBlZS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2ZjaG1vZGF0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGZjaG1vZGF0KQotICAgIG1vdiAgICAgaXAsIHI3Ci0gICAgbGRyICAgICByNywgPV9fTlJfZmNobW9kYXQKLSAgICBzd2kgICAgICMwCi0gICAgbW92ICAgICByNywgaXAKLSAgICBjbW4gICAgIHIwLCAjKE1BWF9FUlJOTyArIDEpCi0gICAgYnhscyAgICBscgotICAgIG5lZyAgICAgcjAsIHIwCi0gICAgYiAgICAgICBfX3NldF9lcnJub19pbnRlcm5hbAotRU5EKGZjaG1vZGF0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9mc3RhdDY0LlMgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2ZzdGF0NjQuUwppbmRleCBjNjBlN2VlLi43OThiYmE3IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2ZzdGF0NjQuUworKysgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2ZzdGF0NjQuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIGIgICAgICAgX19zZXRfZXJybm9faW50ZXJuYWwKIEVORChmc3RhdDY0KQogCi0gICAgLmdsb2JsIGZzdGF0Ci0gICAgLmVxdSBmc3RhdCwgZnN0YXQ2NAorQUxJQVNfU1lNQk9MKGZzdGF0LCBmc3RhdDY0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9mc3RhdGF0NjQuUyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvZnN0YXRhdDY0LlMKaW5kZXggY2U1NmMzNi4uMDNlMDA1MiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybS9zeXNjYWxscy9mc3RhdGF0NjQuUworKysgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL2ZzdGF0YXQ2NC5TCkBAIC0xMyw1ICsxMyw0IEBACiAgICAgYiAgICAgICBfX3NldF9lcnJub19pbnRlcm5hbAogRU5EKGZzdGF0YXQ2NCkKIAotICAgIC5nbG9ibCBmc3RhdGF0Ci0gICAgLmVxdSBmc3RhdGF0LCBmc3RhdGF0NjQKK0FMSUFTX1NZTUJPTChmc3RhdGF0LCBmc3RhdGF0NjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL3NldGhvc3RuYW1lLlMgYi9saWJjL2FyY2gtYXJtL3N5c2NhbGxzL3NldGhvc3RuYW1lLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGE5OGZkMwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1hcm0vc3lzY2FsbHMvc2V0aG9zdG5hbWUuUwpAQCAtMCwwICsxLDE0IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKHNldGhvc3RuYW1lKQorICAgIG1vdiAgICAgaXAsIHI3CisgICAgbGRyICAgICByNywgPV9fTlJfc2V0aG9zdG5hbWUKKyAgICBzd2kgICAgICMwCisgICAgbW92ICAgICByNywgaXAKKyAgICBjbW4gICAgIHIwLCAjKE1BWF9FUlJOTyArIDEpCisgICAgYnhscyAgICBscgorICAgIG5lZyAgICAgcjAsIHIwCisgICAgYiAgICAgICBfX3NldF9lcnJub19pbnRlcm5hbAorRU5EKHNldGhvc3RuYW1lKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L2FybTY0Lm1rIGIvbGliYy9hcmNoLWFybTY0L2FybTY0Lm1rCmluZGV4IGJiNmNhNjMuLjZhMmYzMTMgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9hcm02NC5taworKysgYi9saWJjL2FyY2gtYXJtNjQvYXJtNjQubWsKQEAgLTgsNyArOCw2IEBACiAgICAgYmlvbmljL19fbWVtc2V0X2Noay5jcHAgXAogICAgIGJpb25pYy9fX3N0cmNweV9jaGsuY3BwIFwKICAgICBiaW9uaWMvX19zdHJjYXRfY2hrLmNwcCBcCi0gICAgYmlvbmljL21lbXJjaHIuYyBcCiAgICAgYmlvbmljL3N0cnJjaHIuY3BwIFwKIAogbGliY19mcmVlYnNkX3NyY19maWxlc19hcm02NCArPSBcCkBAIC0yMSw2ICsyMCw3IEBACiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdHJpbmcvd21lbWNtcC5jIFwKIAogbGliY19vcGVuYnNkX3NyY19maWxlc19hcm02NCArPSBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtcmNoci5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHBuY3B5LmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cmNhdC5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJsY2F0LmMgXApAQCAtMzUsMTMgKzM1LDEzIEBACiBsaWJjX2Jpb25pY19zcmNfZmlsZXNfYXJtNjQgKz0gXAogICAgIGFyY2gtYXJtNjQvYmlvbmljL19fYmlvbmljX2Nsb25lLlMgXAogICAgIGFyY2gtYXJtNjQvYmlvbmljL19leGl0X3dpdGhfc3RhY2tfdGVhcmRvd24uUyBcCi0gICAgYXJjaC1hcm02NC9iaW9uaWMvX3NldGptcC5TIFwKICAgICBhcmNoLWFybTY0L2Jpb25pYy9zZXRqbXAuUyBcCiAgICAgYXJjaC1hcm02NC9iaW9uaWMvX19zZXRfdGxzLmMgXAotICAgIGFyY2gtYXJtNjQvYmlvbmljL3NpZ3NldGptcC5TIFwKICAgICBhcmNoLWFybTY0L2Jpb25pYy9zeXNjYWxsLlMgXAogICAgIGFyY2gtYXJtNjQvYmlvbmljL3Zmb3JrLlMgXAogCisjIFdvcmsgYXJvdW5kIGZvciBodHRwOi8vYi8yMDA2NTc3NC4KK2xpYmNfYmlvbmljX3NyY19maWxlc19hcm02NCArPSBhcmNoLWFybTY0L2Jpb25pYy9saWJnY2NfY29tcGF0LmMKIAogbGliY19jcnRfdGFyZ2V0X2NmbGFnc19hcm02NCA6PSBcCiAgICAgLUkkKExPQ0FMX1BBVEgpL2FyY2gtYXJtNjQvaW5jbHVkZQpAQCAtNjEsNiArNjEsNiBAQAogJChlcnJvciAiVEFSR0VUX0NQVV9WQVJJQU5UIG5vdCBzZXQgb3Igc2V0IHRvIGFuIHVua25vd24gdmFsdWUuIFBvc3NpYmxlIHZhbHVlcyBhcmUgZ2VuZXJpYywgZGVudmVyNjQuIFVzZSBnZW5lcmljIGZvciBkZXZpY2VzIHRoYXQgZG8gbm90IGhhdmUgYSBDUFUgc2ltaWxhciB0byBhbnkgb2YgdGhlIHN1cHBvcnRlZCBjcHUgdmFyaWFudHMuIikKIGVuZGlmCiBpbmNsdWRlICQoY3B1X3ZhcmlhbnRfbWspCi1saWJjX2NvbW1vbl9hZGRpdGlvbmFsX2RlcGVuZGVuY2llcyArPSAkKGNwdV92YXJpYW5rX21rKQorbGliY19jb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMgKz0gJChjcHVfdmFyaWFudF9taykKIAogY3B1X3ZhcmlhbnRfbWsgOj0KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvX19iaW9uaWNfY2xvbmUuUyBiL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvX19iaW9uaWNfY2xvbmUuUwppbmRleCA1NmFjMGY2Li4yN2U0NGU3IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtNjQvYmlvbmljL19fYmlvbmljX2Nsb25lLlMKKysrIGIvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9fX2Jpb25pY19jbG9uZS5TCkBAIC0zMSw4ICszMSw4IEBACiAvLyBwaWRfdCBfX2Jpb25pY19jbG9uZShpbnQgZmxhZ3MsIHZvaWQqIGNoaWxkX3N0YWNrLCBwaWRfdCogcGFyZW50X3RpZCwgdm9pZCogdGxzLCBwaWRfdCogY2hpbGRfdGlkLCBpbnQgKCpmbikodm9pZCopLCB2b2lkKiBhcmcpOwogCiBFTlRSWShfX2Jpb25pY19jbG9uZSkKLSAgICAjIENvcHkgJ2ZuJyBhbmQgJ2FyZycgb250byB0aGUgY2hpbGQgc3RhY2suCi0gICAgc3RwICAgICB4NSwgeDYsIFt4MSwgIy0xNl0KKyAgICAjIFB1c2ggJ2ZuJyBhbmQgJ2FyZycgb250byB0aGUgY2hpbGQgc3RhY2suCisgICAgc3RwICAgICB4NSwgeDYsIFt4MSwgIy0xNl0hCiAKICAgICAjIE1ha2UgdGhlIHN5c3RlbSBjYWxsLgogICAgIG1vdiAgICAgeDgsIF9fTlJfY2xvbmUKQEAgLTQ5LDEyICs0OSwxMiBAQAogICAgIHJldAogCiAuTF9iY19jaGlsZDoKLSAgICAjIFdlJ3JlIGluIHRoZSBjaGlsZCBub3cuIFNldCB0aGUgZW5kIG9mIHRoZSBmcmFtZSByZWNvcmQgY2hhaW4uLi4KLSAgICBtb3YgICAgIHgyOSwgeHpyCi0gICAgIyBTZXR0aW5nIHgzMCB0byAwIHdpbGwgbWFrZSB0aGUgdW53aW5kZXIgc3RvcCBhdCBfX3N0YXJ0X3RocmVhZAotICAgIG1vdiAgICAgeDMwLCB4enIKLSAgICAjIC4uLmFuZCBjYWxsIF9fc3RhcnRfdGhyZWFkIHdpdGggdGhlICdmbicgYW5kICdhcmcnIHdlIHN0b3JlZCBvbiB0aGUgY2hpbGQgc3RhY2suCi0gICAgbGRwICAgICB4MCwgeDEsIFtzcCwgIy0xNl0KKyAgICAjIFdlJ3JlIGluIHRoZSBjaGlsZCBub3cuIFNldCB0aGUgZW5kIG9mIHRoZSBmcmFtZSByZWNvcmQgY2hhaW4uCisgICAgbW92ICAgICB4MjksICMwCisgICAgIyBTZXR0aW5nIHgzMCB0byAwIHdpbGwgbWFrZSB0aGUgdW53aW5kZXIgc3RvcCBhdCBfX3N0YXJ0X3RocmVhZC4KKyAgICBtb3YgICAgIHgzMCwgIzAKKyAgICAjIENhbGwgX19zdGFydF90aHJlYWQgd2l0aCB0aGUgJ2ZuJyBhbmQgJ2FyZycgd2Ugc3RvcmVkIG9uIHRoZSBjaGlsZCBzdGFjay4KKyAgICBsZHAgICAgIHgwLCB4MSwgW3NwXSwgIzE2CiAgICAgYiAgICAgICBfX3N0YXJ0X3RocmVhZAogRU5EKF9fYmlvbmljX2Nsb25lKQogLmhpZGRlbiBfX2Jpb25pY19jbG9uZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9fc2V0am1wLlMgYi9saWJjL2FyY2gtYXJtNjQvYmlvbmljL19zZXRqbXAuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzgzNjg5OS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtNjQvYmlvbmljL19zZXRqbXAuUworKysgL2Rldi9udWxsCkBAIC0xLDExMSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3NldGptcC5oPgotCi0vKgotICogQyBsaWJyYXJ5IC0gX3NldGptcCwgX2xvbmdqbXAKLSAqCi0gKiBfbG9uZ2ptcChqbXBfYnVmIHN0YXRlLCBpbnQgdmFsdWUpCi0gKiB3aWxsIGdlbmVyYXRlIGEgInJldHVybih2KSIgZnJvbSB0aGUgbGFzdCBjYWxsIHRvIF9zZXRqbXAoc3RhdGUpIGJ5IHJlc3RvcmluZwotICogcmVnaXN0ZXJzIGZyb20gdGhlIHN0YWNrLiBUaGUgcHJldmlvdXMgc2lnbmFsIHN0YXRlIGlzIE5PVCByZXN0b3JlZC4KLSAqCi0gKiBOT1RFOiB4MCByZXR1cm4gdmFsdWUKLSAqICAgICAgIHg5LXgxNSB0ZW1wb3JhcnkgcmVnaXN0ZXJzCi0gKi8KLQotRU5UUlkoX3NldGptcCkKLSAgICAvKiBzdG9yZSBtYWdpYyBudW1iZXIgKi8KLSAgICBsZHIgICAgIHc5LCAuTF9zZXRqbXBfbWFnaWMKLSAgICBzdHIgICAgIHc5LCBbeDAsICMoX0pCX01BR0lDICogNCldCi0KLSAgICAvKiBzdG9yZSBjb3JlIHJlZ2lzdGVycyAqLwotICAgIG1vdiAgICAgeDEwLCBzcAotICAgIHN0cCAgICAgeDMwLCB4MTAsIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogMCldCi0gICAgc3RwICAgICB4MjgsIHgyOSwgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiAxKV0KLSAgICBzdHAgICAgIHgyNiwgeDI3LCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDIpXQotICAgIHN0cCAgICAgeDI0LCB4MjUsIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogMyldCi0gICAgc3RwICAgICB4MjIsIHgyMywgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiA0KV0KLSAgICBzdHAgICAgIHgyMCwgeDIxLCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDUpXQotICAgIHN0ciAgICAgeDE5LCAgICAgIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogNildCi0KLSAgICAvKiBzdG9yZSBmbG9hdGluZyBwb2ludCByZWdpc3RlcnMgKi8KLSAgICBzdHAgICAgIGQxNCwgZDE1LCBbeDAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0ICsgMTYgKiAwKV0KLSAgICBzdHAgICAgIGQxMiwgZDEzLCBbeDAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0ICsgMTYgKiAxKV0KLSAgICBzdHAgICAgIGQxMCwgZDExLCBbeDAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0ICsgMTYgKiAyKV0KLSAgICBzdHAgICAgIGQ4LCAgZDksICBbeDAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0ICsgMTYgKiAzKV0KLQotICAgIG1vdiAgICAgdzAsIHd6cgotICAgIHJldAotRU5EKF9zZXRqbXApCi0KLS5MX3NldGptcF9tYWdpYzoKLSAgICAud29yZCAgIF9KQl9NQUdJQ19fU0VUSk1QCi0KLUVOVFJZKF9sb25nam1wKQotICAgIC8qIGNoZWNrIG1hZ2ljICovCi0gICAgbGRyICAgICB3OSwgLkxfc2V0am1wX21hZ2ljCi0gICAgbGRyICAgICB3MTAsIFt4MCwgIyhfSkJfTUFHSUMgKiA0KV0KLSAgICBjbXAgICAgIHc5LCB3MTAKLSAgICBiLm5lICAgIC5MX2ZhaWwKLQotICAgIC8qIHJlc3RvcmUgY29yZSByZWdpc3RlcnMgKi8KLSAgICBsZHAgICAgIHgzMCwgeDEwLCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDApXQotICAgIG1vdiAgICAgc3AsIHgxMAotICAgIGxkcCAgICAgeDI4LCB4MjksIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogMSldCi0gICAgbGRwICAgICB4MjYsIHgyNywgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiAyKV0KLSAgICBsZHAgICAgIHgyNCwgeDI1LCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDMpXQotICAgIGxkcCAgICAgeDIyLCB4MjMsIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogNCldCi0gICAgbGRwICAgICB4MjAsIHgyMSwgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiA1KV0KLSAgICBsZHIgICAgIHgxOSwgICAgICBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDYpXQotCi0gICAgLyogcmVzdG9yZSBmbG9hdGluZyBwb2ludCByZWdpc3RlcnMgKi8KLSAgICBsZHAgICAgIGQxNCwgZDE1LCBbeDAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0ICsgMTYgKiAwKV0KLSAgICBsZHAgICAgIGQxMiwgZDEzLCBbeDAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0ICsgMTYgKiAxKV0KLSAgICBsZHAgICAgIGQxMCwgZDExLCBbeDAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0ICsgMTYgKiAyKV0KLSAgICBsZHAgICAgIGQ4LCAgZDksICBbeDAsICMoX0pCX0ZMT0FUX0JBU0UgKiA0ICsgMTYgKiAzKV0KLQotICAgIC8qIHZhbGlkYXRlIHNwIChzcCBtb2QgMTYgPSAwKSBhbmQgbHIgKGxyIG1vZCA0ID0gMCkgKi8KLSAgICB0c3QgICAgIHgzMCwgIzMKLSAgICBiLm5lICAgIC5MX2ZhaWwKLSAgICBtb3YgICAgIHgxMCwgc3AKLSAgICB0c3QgICAgIHgxMCwgIzE1Ci0gICAgYi5uZSAgICAuTF9mYWlsCi0KLSAgICAvKiBzZXQgcmV0dXJuIHZhbHVlICovCi0gICAgY21wICAgICB3MSwgd3pyCi0gICAgY3NpbmMgICB3MCwgdzEsIHd6ciwgbmUKLSAgICByZXQKLQotICAgIC8qIHZhbGlkYXRpb24gZmFpbGVkLCBkaWUgZGllIGRpZSAqLwotLkxfZmFpbDoKLSAgICBibCAgICAgIFBJQ19TWU0obG9uZ2ptcGVycm9yLCBQTFQpCi0gICAgYmwgICAgICBQSUNfU1lNKGFib3J0LCBQTFQpCi0gICAgYiAgICAgICAgLiAtIDggICAgICAgLyogQ2Fubm90IGdldCBoZXJlICovCi1FTkQoX2xvbmdqbXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvYmlvbmljL2NydGJlZ2luLmMgYi9saWJjL2FyY2gtYXJtNjQvYmlvbmljL2NydGJlZ2luLmMKaW5kZXggZmVjMGIxMS4uN2UyYzVkNyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9jcnRiZWdpbi5jCisrKyBiL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvY3J0YmVnaW4uYwpAQCAtNjcsMyArNjcsNCBAQAogCiAjaW5jbHVkZSAiLi4vLi4vYXJjaC1jb21tb24vYmlvbmljL19fZHNvX2hhbmRsZS5oIgogI2luY2x1ZGUgIi4uLy4uL2FyY2gtY29tbW9uL2Jpb25pYy9hdGV4aXQuaCIKKyNpbmNsdWRlICIuLi8uLi9hcmNoLWNvbW1vbi9iaW9uaWMvcHRocmVhZF9hdGZvcmsuaCIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvbGliZ2NjX2NvbXBhdC5jIGIvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9saWJnY2NfY29tcGF0LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmRhZTNmNQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvbGliZ2NjX2NvbXBhdC5jCkBAIC0wLDAgKzEsMTUgQEAKKy8qIFNUT1BTSElQOiByZW1vdmUgdGhpcyBvbmNlIHRoZSBmbG91bmRlciBibG9icyBoYXZlIGJlZW4gcmVidWlsdCAoaHR0cDovL2IvMjAwNjU3NzQpLiAqLworCisjaWYgIWRlZmluZWQoX19jbGFuZ19fKQorCitleHRlcm4gdm9pZCBfX2NsZWFyX2NhY2hlKGNoYXIqLCBjaGFyKik7CitleHRlcm4gY2hhciBfVW53aW5kX0JhY2t0cmFjZTsKK2V4dGVybiBjaGFyIF9VbndpbmRfR2V0SVA7CisKK3ZvaWQqIF9fYmlvbmljX2xpYmdjY19jb21wYXRfc3ltYm9sc1tdID0geworICAgICZfX2NsZWFyX2NhY2hlLAorICAgICZfVW53aW5kX0JhY2t0cmFjZSwKKyAgICAmX1Vud2luZF9HZXRJUCwKK307CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9zZXRqbXAuUyBiL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvc2V0am1wLlMKaW5kZXggZjlkMjI2Ni4uYmEwYTIyNiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9zZXRqbXAuUworKysgYi9saWJjL2FyY2gtYXJtNjQvYmlvbmljL3NldGptcC5TCkBAIC0yNyw5NyArMjcsMTI0IEBACiAgKi8KIAogI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvc2V0am1wLmg+CiAKLS8qCi0gKiBDIGxpYnJhcnkgLSBfc2V0am1wLCBfbG9uZ2ptcAotICoKLSAqIF9sb25nam1wKGptcF9idWYgc3RhdGUsIGludCB2YWx1ZSkKLSAqIHdpbGwgZ2VuZXJhdGUgYSAicmV0dXJuKHYpIiBmcm9tIHRoZSBsYXN0IGNhbGwgdG8gX3NldGptcChzdGF0ZSkgYnkgcmVzdG9yaW5nCi0gKiByZWdpc3RlcnMgZnJvbSB0aGUgc3RhY2suIFRoZSBwcmV2aW91cyBzaWduYWwgc3RhdGUgaXMgTk9UIHJlc3RvcmVkLgotICoKLSAqIE5PVEU6IHgwIHJldHVybiB2YWx1ZQotICogICAgICAgeDkteDE1IHRlbXBvcmFyeSByZWdpc3RlcnMKLSAqLworLy8gQWNjb3JkaW5nIHRvIEFBUkNINjQgUENTIGRvY3VtZW50IHdlIG5lZWQgdG8gc2F2ZSB0aGUgZm9sbG93aW5nCisvLyByZWdpc3RlcnM6CisvLworLy8gQ29yZSAgICAgeDE5IC0geDMwLCBzcCAoc2VlIHNlY3Rpb24gNS4xLjEpCisvLyBWRlAgICAgICBkOCAtIGQxNSAoc2VlIHNlY3Rpb24gNS4xLjIpCisvLworLy8gTk9URTogQWxsIHRoZSByZWdpc3RlcnMgc2F2ZWQgaGVyZSB3aWxsIGhhdmUgNjQgYml0IHZhbGVzLgorLy8gICAgICAgQUFQQ1MgbWFuZGF0ZXMgdGhhdCB0aGUgaGlnaGVyIHBhcnQgb2YgcSByZWdpc3RlcnMgZG8gbm90IG5lZWQgdG8KKy8vICAgICAgIGJlIHNhdmVkIGJ5IHRoZSBjYWxsZWUuCisKKyNkZWZpbmUgX0pCX1NJR0ZMQUcgICAgIDAKKyNkZWZpbmUgX0pCX1NJR01BU0sgICAgIChfSkJfU0lHRkxBRyArIDEpCisjZGVmaW5lIF9KQl9YMzBfU1AgICAgICAoX0pCX1NJR01BU0sgKyAxKQorI2RlZmluZSBfSkJfWDI4X1gyOSAgICAgKF9KQl9YMzBfU1AgICsgMikKKyNkZWZpbmUgX0pCX1gyNl9YMjcgICAgIChfSkJfWDI4X1gyOSArIDIpCisjZGVmaW5lIF9KQl9YMjRfWDI1ICAgICAoX0pCX1gyNl9YMjcgKyAyKQorI2RlZmluZSBfSkJfWDIyX1gyMyAgICAgKF9KQl9YMjRfWDI1ICsgMikKKyNkZWZpbmUgX0pCX1gyMF9YMjEgICAgIChfSkJfWDIyX1gyMyArIDIpCisjZGVmaW5lIF9KQl9YMTkgICAgICAgICAoX0pCX1gyMF9YMjEgKyAyKQorI2RlZmluZSBfSkJfRDE0X0QxNSAgICAgKF9KQl9YMTkgKyAxKQorI2RlZmluZSBfSkJfRDEyX0QxMyAgICAgKF9KQl9EMTRfRDE1ICsgMikKKyNkZWZpbmUgX0pCX0QxMF9EMTEgICAgIChfSkJfRDEyX0QxMyArIDIpCisjZGVmaW5lIF9KQl9EOF9EOSAgICAgICAoX0pCX0QxMF9EMTEgKyAyKQogCiBFTlRSWShzZXRqbXApCi0gICAgLyogYmxvY2sgYWxsIHNpZ25hbHMgYW4gcmV0cmlldmUgc2lnbmFsIG1hc2sgKi8KLSAgICBzdHAgICAgIHgwLCB4MzAsIFtzcCwgIy0xNl0hCi0KLSAgICBtb3YgICAgIHgwLCB4enIKLSAgICBibCAgICAgIFBJQ19TWU0oc2lnYmxvY2ssIFBMVCkKLSAgICBtb3YgICAgIHcxLCB3MAotCi0gICAgbGRwICAgICB4MCwgeDMwLCBbc3BdLCAjMTYKLQotICAgIC8qIHN0b3JlIHNpZ25hbCBtYXNrICovCi0gICAgc3RyICAgICB3MSwgW3gwLCAjKF9KQl9TSUdNQVNLICo0KV0KLQotICAgIC8qIHN0b3JlIG1hZ2ljIG51bWJlciAqLwotICAgIGxkciAgICAgdzksIC5MX3NldGptcF9tYWdpYwotICAgIHN0ciAgICAgdzksIFt4MCwgIyhfSkJfTUFHSUMgKiA0KV0KLQotICAgIC8qIHN0b3JlIGNvcmUgcmVnaXN0ZXJzICovCi0gICAgbW92ICAgICB4MTAsIHNwCi0gICAgc3RwICAgICB4MzAsIHgxMCwgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiAwKV0KLSAgICBzdHAgICAgIHgyOCwgeDI5LCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDEpXQotICAgIHN0cCAgICAgeDI2LCB4MjcsIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogMildCi0gICAgc3RwICAgICB4MjQsIHgyNSwgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiAzKV0KLSAgICBzdHAgICAgIHgyMiwgeDIzLCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDQpXQotICAgIHN0cCAgICAgeDIwLCB4MjEsIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogNSldCi0gICAgc3RyICAgICB4MTksICAgICAgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiA2KV0KLQotICAgIC8qIHN0b3JlIGZsb2F0aW5nIHBvaW50IHJlZ2lzdGVycyAqLwotICAgIHN0cCAgICAgZDE0LCBkMTUsIFt4MCwgIyhfSkJfRkxPQVRfQkFTRSAqIDQgKyAxNiAqIDApXQotICAgIHN0cCAgICAgZDEyLCBkMTMsIFt4MCwgIyhfSkJfRkxPQVRfQkFTRSAqIDQgKyAxNiAqIDEpXQotICAgIHN0cCAgICAgZDEwLCBkMTEsIFt4MCwgIyhfSkJfRkxPQVRfQkFTRSAqIDQgKyAxNiAqIDIpXQotICAgIHN0cCAgICAgZDgsICBkOSwgIFt4MCwgIyhfSkJfRkxPQVRfQkFTRSAqIDQgKyAxNiAqIDMpXQotCi0gICAgbW92ICAgICB3MCwgd3pyCi0gICAgcmV0CisgIG1vdiB3MSwgIzEKKyAgYiBzaWdzZXRqbXAKIEVORChzZXRqbXApCiAKLS5MX3NldGptcF9tYWdpYzoKLSAgICAud29yZCAgIF9KQl9NQUdJQ19fU0VUSk1QCitFTlRSWShfc2V0am1wKQorICBtb3YgdzEsICMwCisgIGIgc2lnc2V0am1wCitFTkQoX3NldGptcCkKIAotRU5UUlkobG9uZ2ptcCkKLSAgICAvKiBjaGVjayBtYWdpYyAqLwotICAgIGxkciAgICAgdzksIC5MX3NldGptcF9tYWdpYwotICAgIGxkciAgICAgdzEwLCBbeDAsICMoX0pCX01BR0lDICogNCldCi0gICAgY21wICAgICB3OSwgdzEwCi0gICAgYi5uZSAgICAuTF9mYWlsCisvLyBpbnQgc2lnc2V0am1wKHNpZ2ptcF9idWYgZW52LCBpbnQgc2F2ZV9zaWduYWxfbWFzayk7CitFTlRSWShzaWdzZXRqbXApCisgIC8vIFJlY29yZCB3aGV0aGVyIG9yIG5vdCB3ZSdyZSBzYXZpbmcgdGhlIHNpZ25hbCBtYXNrLgorICBzdHIgdzEsIFt4MCwgIyhfSkJfU0lHRkxBRyAqIDgpXQogCi0gICAgLyogcmVzdG9yZSBjb3JlIHJlZ2lzdGVycyAqLwotICAgIGxkcCAgICAgeDMwLCB4MTAsIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogMCldCi0gICAgbW92ICAgICBzcCwgeDEwCi0gICAgbGRwICAgICB4MjgsIHgyOSwgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiAxKV0KLSAgICBsZHAgICAgIHgyNiwgeDI3LCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDIpXQotICAgIGxkcCAgICAgeDI0LCB4MjUsIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogMyldCi0gICAgbGRwICAgICB4MjIsIHgyMywgW3gwLCAjKF9KQl9DT1JFX0JBU0UgKiA0ICsgMTYgKiA0KV0KLSAgICBsZHAgICAgIHgyMCwgeDIxLCBbeDAsICMoX0pCX0NPUkVfQkFTRSAqIDQgKyAxNiAqIDUpXQotICAgIGxkciAgICAgeDE5LCAgICAgIFt4MCwgIyhfSkJfQ09SRV9CQVNFICogNCArIDE2ICogNildCisgIC8vIERvIHdlIG5lZWQgdG8gc2F2ZSB0aGUgc2lnbmFsIG1hc2s/CisgIGNieiB3MSwgMWYKIAotICAgIC8qIHJlc3RvcmUgZmxvYXRpbmcgcG9pbnQgcmVnaXN0ZXJzICovCi0gICAgbGRwICAgICBkMTQsIGQxNSwgW3gwLCAjKF9KQl9GTE9BVF9CQVNFICogNCArIDE2ICogMCldCi0gICAgbGRwICAgICBkMTIsIGQxMywgW3gwLCAjKF9KQl9GTE9BVF9CQVNFICogNCArIDE2ICogMSldCi0gICAgbGRwICAgICBkMTAsIGQxMSwgW3gwLCAjKF9KQl9GTE9BVF9CQVNFICogNCArIDE2ICogMildCi0gICAgbGRwICAgICBkOCwgIGQ5LCAgW3gwLCAjKF9KQl9GTE9BVF9CQVNFICogNCArIDE2ICogMyldCisgIC8vIFNhdmUgY3VycmVudCBzaWduYWwgbWFzay4KKyAgc3RwIHgwLCB4MzAsIFtzcCwgIy0xNl0hCisgIC8vIFRoZSAnaG93JyBhcmd1bWVudCBpcyBpZ25vcmVkIGlmIG5ld19tYXNrIGlzIE5VTEwuCisgIG1vdiB4MSwgIzAgLy8gTlVMTC4KKyAgYWRkIHgyLCB4MCwgIyhfSkJfU0lHTUFTSyAqIDgpIC8vIG9sZF9tYXNrLgorICBibCBzaWdwcm9jbWFzaworICBsZHAgeDAsIHgzMCwgW3NwXSwgIzE2CiAKLSAgICAvKiB2YWxpZGF0ZSBzcCAoc3AgbW9kIDE2ID0gMCkgYW5kIGxyIChsciBtb2QgNCA9IDApICovCi0gICAgdHN0ICAgICB4MzAsICMzCi0gICAgYi5uZSAgICAuTF9mYWlsCi0gICAgbW92ICAgICB4MTAsIHNwCi0gICAgdHN0ICAgICB4MTAsICMxNQotICAgIGIubmUgICAgLkxfZmFpbAorMToKKyAgLy8gU2F2ZSBjb3JlIHJlZ2lzdGVycy4KKyAgbW92IHgxMCwgc3AKKyAgc3RwIHgzMCwgeDEwLCBbeDAsICMoX0pCX1gzMF9TUCAgKiA4KV0KKyAgc3RwIHgyOCwgeDI5LCBbeDAsICMoX0pCX1gyOF9YMjkgKiA4KV0KKyAgc3RwIHgyNiwgeDI3LCBbeDAsICMoX0pCX1gyNl9YMjcgKiA4KV0KKyAgc3RwIHgyNCwgeDI1LCBbeDAsICMoX0pCX1gyNF9YMjUgKiA4KV0KKyAgc3RwIHgyMiwgeDIzLCBbeDAsICMoX0pCX1gyMl9YMjMgKiA4KV0KKyAgc3RwIHgyMCwgeDIxLCBbeDAsICMoX0pCX1gyMF9YMjEgKiA4KV0KKyAgc3RyIHgxOSwgICAgICBbeDAsICMoX0pCX1gxOSAgICAgKiA4KV0KIAotICAgIC8qIHNldCByZXR1cm4gdmFsdWUgKi8KLSAgICBjbXAgICAgIHcxLCB3enIKLSAgICBjc2luYyAgIHcwLCB3MSwgd3pyLCBuZQotICAgIHJldAorICAvLyBTYXZlIGZsb2F0aW5nIHBvaW50IHJlZ2lzdGVycy4KKyAgc3RwIGQxNCwgZDE1LCBbeDAsICMoX0pCX0QxNF9EMTUgKiA4KV0KKyAgc3RwIGQxMiwgZDEzLCBbeDAsICMoX0pCX0QxMl9EMTMgKiA4KV0KKyAgc3RwIGQxMCwgZDExLCBbeDAsICMoX0pCX0QxMF9EMTEgKiA4KV0KKyAgc3RwIGQ4LCAgZDksICBbeDAsICMoX0pCX0Q4X0Q5ICAgKiA4KV0KIAotICAgIC8qIHZhbGlkYXRpb24gZmFpbGVkLCBkaWUgZGllIGRpZSAqLwotLkxfZmFpbDoKLSAgICBibCAgICAgIFBJQ19TWU0obG9uZ2ptcGVycm9yLCBQTFQpCi0gICAgYmwgICAgICBQSUNfU1lNKGFib3J0LCBQTFQpCi0gICAgYiAgICAgICAuIC0gOCAgICAgICAvKiBDYW5ub3QgZ2V0IGhlcmUgKi8KLUVORChsb25nam1wKQorICBtb3YgdzAsICMwCisgIHJldAorRU5EKHNpZ3NldGptcCkKKworLy8gdm9pZCBzaWdsb25nam1wKHNpZ2ptcF9idWYgZW52LCBpbnQgdmFsdWUpOworRU5UUlkoc2lnbG9uZ2ptcCkKKyAgLy8gRG8gd2UgbmVlZCB0byByZXN0b3JlIHRoZSBzaWduYWwgbWFzaz8KKyAgbGRyIHc5LCBbeDAsICMoX0pCX1NJR0ZMQUcgKiA4KV0KKyAgY2J6IHc5LCAxZgorCisgIC8vIFJlc3RvcmUgc2lnbmFsIG1hc2suCisgIHN0cCB4MCwgeDMwLCBbc3AsICMtMTZdIQorICBtb3YgeDE5LCB4MSAvLyBTYXZlICd2YWx1ZScuCisgIG1vdiB4MiwgeDAKKyAgbW92IHgwLCAjMiAvLyBTSUdfU0VUTUFTSworICBhZGQgeDEsIHgyLCAjKF9KQl9TSUdNQVNLICogOCkgLy8gbmV3X21hc2suCisgIG1vdiB4MiwgIzAgLy8gTlVMTC4KKyAgYmwgc2lncHJvY21hc2sKKyAgbW92IHgxLCB4MTkgLy8gUmVzdG9yZSAndmFsdWUnLgorICBsZHAgeDAsIHgzMCwgW3NwXSwgIzE2CisKKzE6CisgIC8vIFJlc3RvcmUgY29yZSByZWdpc3RlcnMuCisgIGxkcCB4MzAsIHgxMCwgW3gwLCAjKF9KQl9YMzBfU1AgICogOCldCisgIG1vdiBzcCwgeDEwCisgIGxkcCB4MjgsIHgyOSwgW3gwLCAjKF9KQl9YMjhfWDI5ICogOCldCisgIGxkcCB4MjYsIHgyNywgW3gwLCAjKF9KQl9YMjZfWDI3ICogOCldCisgIGxkcCB4MjQsIHgyNSwgW3gwLCAjKF9KQl9YMjRfWDI1ICogOCldCisgIGxkcCB4MjIsIHgyMywgW3gwLCAjKF9KQl9YMjJfWDIzICogOCldCisgIGxkcCB4MjAsIHgyMSwgW3gwLCAjKF9KQl9YMjBfWDIxICogOCldCisgIGxkciB4MTksICAgICAgW3gwLCAjKF9KQl9YMTkgICAgICogOCldCisKKyAgLy8gUmVzdG9yZSBmbG9hdGluZyBwb2ludCByZWdpc3RlcnMuCisgIGxkcCBkMTQsIGQxNSwgW3gwLCAjKF9KQl9EMTRfRDE1ICogOCldCisgIGxkcCBkMTIsIGQxMywgW3gwLCAjKF9KQl9EMTJfRDEzICogOCldCisgIGxkcCBkMTAsIGQxMSwgW3gwLCAjKF9KQl9EMTBfRDExICogOCldCisgIGxkcCBkOCwgIGQ5LCAgW3gwLCAjKF9KQl9EOF9EOSAgICogOCldCisKKyAgLy8gVmFsaWRhdGUgc3AgKHNwIG1vZCAxNiA9IDApIGFuZCBsciAobHIgbW9kIDQgPSAwKS4KKyAgdHN0IHgzMCwgIzMKKyAgYi5uZSBsb25nam1wZXJyb3IKKyAgbW92IHgxMCwgc3AKKyAgdHN0IHgxMCwgIzE1CisgIGIubmUgbG9uZ2ptcGVycm9yCisKKyAgLy8gU2V0IHJldHVybiB2YWx1ZS4KKyAgY21wIHcxLCB3enIKKyAgY3NpbmMgdzAsIHcxLCB3enIsIG5lCisgIHJldAorRU5EKHNpZ2xvbmdqbXApCisKK0FMSUFTX1NZTUJPTChsb25nam1wLCBzaWdsb25nam1wKQorQUxJQVNfU1lNQk9MKF9sb25nam1wLCBzaWdsb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9zaWdzZXRqbXAuUyBiL2xpYmMvYXJjaC1hcm02NC9iaW9uaWMvc2lnc2V0am1wLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRmZGIzNjcuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybTY0L2Jpb25pYy9zaWdzZXRqbXAuUworKysgL2Rldi9udWxsCkBAIC0xLDUxICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCi0gKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiAgICBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCi0gKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQotICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAotICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKLSAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUwotICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECi0gKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCi0gKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKLSAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvc2V0am1wLmg+Ci0KLS8qCi0gKiBpbnQgc2lnc2V0am1wKHNpZ2ptcF9idWYgZW52LCBpbnQgc2F2ZXNpZ3MpOwotICogdm9pZCBzaWdsb25nam1wKHNpZ2ptcF9idWYgZW52LCBpbnQgdmFsKTsKLSAqLwotCi1FTlRSWShzaWdzZXRqbXApCi0gICAgY2J6ICAgICB3MSwgUElDX1NZTShfc2V0am1wLCBQTFQpCi0gICAgYiAgICAgICBQSUNfU1lNKHNldGptcCwgUExUKQotRU5EKHNpZ3NldGptcCkKLQotLkxfc2V0am1wX21hZ2ljOgotICAgIC53b3JkICAgX0pCX01BR0lDX19TRVRKTVAKLQotRU5UUlkoc2lnbG9uZ2ptcCkKLSAgICBsZHIgICAgIHcyLCAuTF9zZXRqbXBfbWFnaWMKLSAgICBsZHIgICAgIHczLCBbeDBdCi0gICAgY21wICAgICB3MiwgdzMKLSAgICBiLmVxICAgIFBJQ19TWU0oX2xvbmdqbXAsIFBMVCkKLSAgICBiICAgICAgIFBJQ19TWU0obG9uZ2ptcCwgUExUKQotRU5EKHNpZ2xvbmdqbXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvaW5jbHVkZS9tYWNoaW5lL2FzbS5oIGIvbGliYy9hcmNoLWFybTY0L2luY2x1ZGUvbWFjaGluZS9hc20uaAppbmRleCA0YmZhYmFmLi4yYmVhMDQzIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtNjQvaW5jbHVkZS9tYWNoaW5lL2FzbS5oCisrKyBiL2xpYmMvYXJjaC1hcm02NC9pbmNsdWRlL21hY2hpbmUvYXNtLmgKQEAgLTM4LDE3ICszOCw5IEBACiAjaWZuZGVmIF9BQVJDSDY0X0FTTV9IXwogI2RlZmluZSBfQUFSQ0g2NF9BU01fSF8KIAotI2lmbmRlZiBfQUxJR05fVEVYVAotIyBkZWZpbmUgX0FMSUdOX1RFWFQgLmFsaWduIDAKLSNlbmRpZgorI2RlZmluZSBfX2Jpb25pY19hc21fYWxpZ24gMAogCiAjdW5kZWYgX19iaW9uaWNfYXNtX2Z1bmN0aW9uX3R5cGUKICNkZWZpbmUgX19iaW9uaWNfYXNtX2Z1bmN0aW9uX3R5cGUgJWZ1bmN0aW9uCiAKLSNpZiBkZWZpbmVkKF9fRUxGX18pICYmIGRlZmluZWQoUElDKQotI2RlZmluZSBQSUNfU1lNKHgseSkgeCAjIyAoICMjIHkgIyMgKQotI2Vsc2UKLSNkZWZpbmUgUElDX1NZTSh4LHkpIHgKLSNlbmRpZgotCiAjZW5kaWYgLyogX0FBUkNINjRfQVNNX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvaW5jbHVkZS9tYWNoaW5lL2VuZGlhbi5oIGIvbGliYy9hcmNoLWFybTY0L2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODdhMDM4ZC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtNjQvaW5jbHVkZS9tYWNoaW5lL2VuZGlhbi5oCisrKyAvZGV2L251bGwKQEAgLTEsNTggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIF9BQVJDSDY0X0VORElBTl9IXwotI2RlZmluZSBfQUFSQ0g2NF9FTkRJQU5fSF8KLQotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPHN5cy9lbmRpYW4uaD4KLQotI2lmZGVmIF9fR05VQ19fCi0KLSNkZWZpbmUgX19zd2FwMTZtZCh4KSAoeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgcmVnaXN0ZXIgdV9pbnQxNl90IF94ID0gKHgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgIF9fYXNtIHZvbGF0aWxlICgicmV2MTYgJTAsICUwIiA6ICIrciIgKF94KSk7ICAgICAgICAgICAgICAgIFwKLSAgICBfeDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi19KQotCi0vKiBVc2UgR0NDIGJ1aWx0aW5zICovCi0jZGVmaW5lIF9fc3dhcDMybWQoeCkgX19idWlsdGluX2Jzd2FwMzIoeCkKLSNkZWZpbmUgX19zd2FwNjRtZCh4KSBfX2J1aWx0aW5fYnN3YXA2NCh4KQotCi0vKiBUZWxsIHN5cy9lbmRpYW4uaCB3ZSBoYXZlIE1EIHZhcmlhbnRzIG9mIHRoZSBzd2FwIG1hY3Jvcy4gICovCi0jZGVmaW5lIE1EX1NXQVAKLQotI2VuZGlmICAvKiBfX0dOVUNfXyAqLwotCi0jaWYgZGVmaW5lZChfX0FBUkNINjRFQl9fKQotI2RlZmluZSBfQllURV9PUkRFUiBfQklHX0VORElBTgotI2Vsc2UKLSNkZWZpbmUgX0JZVEVfT1JERVIgX0xJVFRMRV9FTkRJQU4KLSNlbmRpZgotCi0jZW5kaWYgLyogX0FBUkNINjRfRU5ESUFOX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvaW5jbHVkZS9tYWNoaW5lL2V4ZWMuaCBiL2xpYmMvYXJjaC1hcm02NC9pbmNsdWRlL21hY2hpbmUvZXhlYy5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3NDM3NjI2Li4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1hcm02NC9pbmNsdWRlL21hY2hpbmUvZXhlYy5oCisrKyAvZGV2L251bGwKQEAgLTEsNTAgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IGV4ZWMuaCx2IDEuOSAyMDAzLzA0LzE3IDAzOjQyOjE0IGRyYWhuIEV4cCAkCSovCi0vKgkkTmV0QlNEOiBleGVjLmgsdiAxLjYgMTk5NC8xMC8yNyAwNDoxNjowNSBjZ2QgRXhwICQJKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMTk5MyBDaHJpc3RvcGhlciBHLiBEZW1ldHJpb3UKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBUaGUgbmFtZSBvZiB0aGUgYXV0aG9yIG1heSBub3QgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMKLSAqICAgIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IKLSAqIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMKLSAqIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuCi0gKiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQKLSAqIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCi0gKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgX0FBUkNINjRfRVhFQ19IXwotI2RlZmluZSBfQUFSQ0g2NF9FWEVDX0hfCi0KLSNkZWZpbmUJX19MRFBHU1oJCTQwOTYKLQotI2RlZmluZQlOQVRJVkVfRVhFQ19FTEYKLQotI2RlZmluZQlBUkNIX0VMRlNJWkUJCTY0Ci0KLSNkZWZpbmUJRUxGX1RBUkdfQ0xBU1MJCUVMRkNMQVNTNjQJCS8qIDY0LWJpdCBvYmplY3RzICovCi0jZGVmaW5lCUVMRl9UQVJHX0RBVEEJCUVMRkRBVEEyTFNCCi0jZGVmaW5lCUVMRl9UQVJHX01BQ0gJCUVNX0FBUkNINjQKLQotI2RlZmluZQlfTkxJU1RfRE9fQU9VVAotI2RlZmluZQlfTkxJU1RfRE9fRUxGCi0KLSNkZWZpbmUJX0tFUk5fRE9fQU9VVAotI2RlZmluZQlfS0VSTl9ET19FTEY2NAotCi0jZW5kaWYgIC8qIF9BQVJDSDY0X0VYRUNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9pbmNsdWRlL21hY2hpbmUvc2V0am1wLmggYi9saWJjL2FyY2gtYXJtNjQvaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oCmluZGV4IDFjMjM3ZGEuLjI3YzJmZTUgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9pbmNsdWRlL21hY2hpbmUvc2V0am1wLmgKKysrIGIvbGliYy9hcmNoLWFybTY0L2luY2x1ZGUvbWFjaGluZS9zZXRqbXAuaApAQCAtMjYsNDggKzI2LDUgQEAKICAqIFNVQ0ggREFNQUdFLgogICovCiAKLS8qCi0gKiBtYWNoaW5lL3NldGptcC5oOiBtYWNoaW5lIGRlcGVuZGVudCBzZXRqbXAtcmVsYXRlZCBpbmZvcm1hdGlvbi4KLSAqLwotCi0vKiBfSkJMRU4gaXMgdGhlIHNpemUgb2YgYSBqbXBfYnVmIGluIGxvbmdzKDY0Yml0IG9uIEFBcmNoNjQpICovCisvKiBfSkJMRU4gaXMgdGhlIHNpemUgb2YgYSBqbXBfYnVmIGluIGxvbmdzICg2NGJpdCBvbiBBQXJjaDY0KSAqLwogI2RlZmluZSBfSkJMRU4gMzIKLQotLyogQWNjb3JkaW5nIHRvIEFBUkNINjQgUENTIGRvY3VtZW50IHdlIG5lZWQgdG8gc2F2ZSB0aGUgZm9sbG93aW5nCi0gKiByZWdpc3RlcnM6Ci0gKgotICogQ29yZSAgICAgeDE5IC0geDMwLCBzcCAoc2VlIHNlY3Rpb24gNS4xLjEpCi0gKiBWRlAgICAgICBkOCAtIGQxNSAoc2VlIHNlY3Rpb24gNS4xLjIpCi0gKgotICogTk9URTogQWxsIHRoZSByZWdpc3RlcnMgc2F2ZWQgaGVyZSB3aWxsIGhhdmUgNjRiaXQgdmFsZXMgKGV4Y2VwdCBGUFNSKS4KLSAqICAgICAgIEFBUENTIG1hbmRhdGVzIHRoYXQgdGhlIGhpZ2hlciBwYXJ0IG9mIHEgcmVnaXN0ZXJzIGRvZXMgbm90IG5lZWQgdG8KLSAqICAgICAgIGJlIHNhdmV2ZWQgYnkgdGhlIGNhbGxlZS4KLSAqLwotCi0vKiBUaGUgc3RydWN0dXJlIG9mIGptcF9idWYgZm9yIEFBcmNoNjQ6Ci0gKgotICogTk9URTogX0pCTEVOIGlzIHRoZSBzaXplIG9mIGptcF9idWYgaW4gbG9uZ3MoNjRiaXQgb24gQUFyY2g2NCkhIFRoZSB0YWJsZQotICogICAgICBiZWxvdyBjb21wdXRlcyB0aGUgb2Zmc2V0cyBpbiB3b3JkcygzMmJpdCkuCi0gKgotICogIHdvcmQgICAgICAgIG5hbWUgICAgICAgICAgICBkZXNjcmlwdGlvbgotICogIDAgICAgICAgbWFnaWMgICAgICAgICAgIG1hZ2ljIG51bWJlcgotICogIDEgICAgICAgc2lnbWFzayAgICAgICAgIHNpZ25hbCBtYXNrIChub3QgdXNlZCB3aXRoIF9zZXRqbXAgLyBfbG9uZ2ptcCkKLSAqICAyICAgICAgIGNvcmVfYmFzZSAgICAgICBiYXNlIG9mIGNvcmUgcmVnaXN0ZXJzICh4MTkteDMwLCBzcCkKLSAqICAyOCAgICAgIGZsb2F0X2Jhc2UgICAgICBiYXNlIG9mIGZsb2F0IHJlZ2lzdGVycyAoZDgtZDE1KQotICogIDQ0ICAgICAgcmVzZXJ2ZWQgICAgICAgIHJlc2VydmVkIGVudHJpZXMgKHJvb20gdG8gZ3JvdykKLSAqICA2NAotICoKLSAqCi0gKiAgTk9URTogVGhlIGluc3RydWN0aW9ucyB0aGF0IGxvYWQvc3RvcmUgY29yZS92ZnAgcmVnaXN0ZXJzIGV4cGVjdCA4LWJ5dGUKLSAqICAgICAgICBhbGlnbm1lbnQuIENvbnRyYXJ5IHRvIHRoZSBwcmV2aW91cyBzZXRqbXAgaGVhZGVyIGZvciBBUk0gd2UgZG8gbm90Ci0gKiAgICAgICAgbmVlZCB0byBzYXZlIHN0YXR1cy9jb250cm9sIHJlZ2lzdGVycyBmb3IgVkZQIChpdCBpcyBub3QgYQotICogICAgICAgIHJlcXVpcmVtZW50IGZvciBzZXRqbXApLgotICovCi0KLSNkZWZpbmUgX0pCX01BR0lDICAgICAgIDAKLSNkZWZpbmUgX0pCX1NJR01BU0sgICAgIChfSkJfTUFHSUMrMSkKLSNkZWZpbmUgX0pCX0NPUkVfQkFTRSAgIChfSkJfU0lHTUFTSysxKQotI2RlZmluZSBfSkJfRkxPQVRfQkFTRSAgKF9KQl9DT1JFX0JBU0UgKyAoMzEtMTkrMSkqMikKLQotI2RlZmluZSBfSkJfTUFHSUNfX1NFVEpNUCAgIDB4NTM2NTcyMDAKLSNkZWZpbmUgX0pCX01BR0lDX1NFVEpNUCAgICAweDUzNjU3MjAxCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19fY2xvc2UuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX19jbG9zZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhmYjgzNjEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19fY2xvc2UuUwpAQCAtMCwwICsxLDE1IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2Nsb3NlKQorICAgIG1vdiAgICAgeDgsIF9fTlJfY2xvc2UKKyAgICBzdmMgICAgICMwCisKKyAgICBjbW4gICAgIHgwLCAjKE1BWF9FUlJOTyArIDEpCisgICAgY25lZyAgICB4MCwgeDAsIGhpCisgICAgYi5oaSAgICBfX3NldF9lcnJub19pbnRlcm5hbAorCisgICAgcmV0CitFTkQoX19fY2xvc2UpCisuaGlkZGVuIF9fX2Nsb3NlCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19fZmFjY2Vzc2F0LlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19fZmFjY2Vzc2F0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmE0MWI2OQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX19mYWNjZXNzYXQuUwpAQCAtMCwwICsxLDE1IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2ZhY2Nlc3NhdCkKKyAgICBtb3YgICAgIHg4LCBfX05SX2ZhY2Nlc3NhdAorICAgIHN2YyAgICAgIzAKKworICAgIGNtbiAgICAgeDAsICMoTUFYX0VSUk5PICsgMSkKKyAgICBjbmVnICAgIHgwLCB4MCwgaGkKKyAgICBiLmhpICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCisKKyAgICByZXQKK0VORChfX19mYWNjZXNzYXQpCisuaGlkZGVuIF9fX2ZhY2Nlc3NhdApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fX2ZjaG1vZC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fX2ZjaG1vZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExNDNjNjUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19fZmNobW9kLlMKQEAgLTAsMCArMSwxNSBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19mY2htb2QpCisgICAgbW92ICAgICB4OCwgX19OUl9mY2htb2QKKyAgICBzdmMgICAgICMwCisKKyAgICBjbW4gICAgIHgwLCAjKE1BWF9FUlJOTyArIDEpCisgICAgY25lZyAgICB4MCwgeDAsIGhpCisgICAgYi5oaSAgICBfX3NldF9lcnJub19pbnRlcm5hbAorCisgICAgcmV0CitFTkQoX19fZmNobW9kKQorLmhpZGRlbiBfX19mY2htb2QKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX19mY2htb2RhdC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fX2ZjaG1vZGF0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWFiMzczNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX19mY2htb2RhdC5TCkBAIC0wLDAgKzEsMTUgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fZmNobW9kYXQpCisgICAgbW92ICAgICB4OCwgX19OUl9mY2htb2RhdAorICAgIHN2YyAgICAgIzAKKworICAgIGNtbiAgICAgeDAsICMoTUFYX0VSUk5PICsgMSkKKyAgICBjbmVnICAgIHgwLCB4MCwgaGkKKyAgICBiLmhpICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCisKKyAgICByZXQKK0VORChfX19mY2htb2RhdCkKKy5oaWRkZW4gX19fZmNobW9kYXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX2Nsb2NrX25hbm9zbGVlcC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fY2xvY2tfbmFub3NsZWVwLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWRmMTVkNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX2Nsb2NrX25hbm9zbGVlcC5TCkBAIC0wLDAgKzEsMTUgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19jbG9ja19uYW5vc2xlZXApCisgICAgbW92ICAgICB4OCwgX19OUl9jbG9ja19uYW5vc2xlZXAKKyAgICBzdmMgICAgICMwCisKKyAgICBjbW4gICAgIHgwLCAjKE1BWF9FUlJOTyArIDEpCisgICAgY25lZyAgICB4MCwgeDAsIGhpCisgICAgYi5oaSAgICBfX3NldF9lcnJub19pbnRlcm5hbAorCisgICAgcmV0CitFTkQoX19jbG9ja19uYW5vc2xlZXApCisuaGlkZGVuIF9fY2xvY2tfbmFub3NsZWVwCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19mc3RhdGZzLlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19mc3RhdGZzLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2UzNTBkNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX2ZzdGF0ZnMuUwpAQCAtMCwwICsxLDE1IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fZnN0YXRmcykKKyAgICBtb3YgICAgIHg4LCBfX05SX2ZzdGF0ZnMKKyAgICBzdmMgICAgICMwCisKKyAgICBjbW4gICAgIHgwLCAjKE1BWF9FUlJOTyArIDEpCisgICAgY25lZyAgICB4MCwgeDAsIGhpCisgICAgYi5oaSAgICBfX3NldF9lcnJub19pbnRlcm5hbAorCisgICAgcmV0CitFTkQoX19mc3RhdGZzKQorLmhpZGRlbiBfX2ZzdGF0ZnMKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19fcnRfc2lncXVldWVpbmZvLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmIyM2UxOAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TCkBAIC0wLDAgKzEsMTUgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19ydF9zaWdxdWV1ZWluZm8pCisgICAgbW92ICAgICB4OCwgX19OUl9ydF9zaWdxdWV1ZWluZm8KKyAgICBzdmMgICAgICMwCisKKyAgICBjbW4gICAgIHgwLCAjKE1BWF9FUlJOTyArIDEpCisgICAgY25lZyAgICB4MCwgeDAsIGhpCisgICAgYi5oaSAgICBfX3NldF9lcnJub19pbnRlcm5hbAorCisgICAgcmV0CitFTkQoX19ydF9zaWdxdWV1ZWluZm8pCisuaGlkZGVuIF9fcnRfc2lncXVldWVpbmZvCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19zdGF0ZnMuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9fX3N0YXRmcy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk2MmM1OTAKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX19zdGF0ZnMuUwpAQCAtMCwwICsxLDE1IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fc3RhdGZzKQorICAgIG1vdiAgICAgeDgsIF9fTlJfc3RhdGZzCisgICAgc3ZjICAgICAjMAorCisgICAgY21uICAgICB4MCwgIyhNQVhfRVJSTk8gKyAxKQorICAgIGNuZWcgICAgeDAsIHgwLCBoaQorICAgIGIuaGkgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKworICAgIHJldAorRU5EKF9fc3RhdGZzKQorLmhpZGRlbiBfX3N0YXRmcwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL19leGl0LlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX2V4aXQuUwppbmRleCBlZGY2NzQ0Li5kNTBmMzhkIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX2V4aXQuUworKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvX2V4aXQuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIHJldAogRU5EKF9leGl0KQogCi0gICAgLmdsb2JsIF9FeGl0Ci0gICAgLmVxdSBfRXhpdCwgX2V4aXQKK0FMSUFTX1NZTUJPTChfRXhpdCwgX2V4aXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDM0OWM1Y2MuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2Nsb2NrX25hbm9zbGVlcC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShjbG9ja19uYW5vc2xlZXApCi0gICAgbW92ICAgICB4OCwgX19OUl9jbG9ja19uYW5vc2xlZXAKLSAgICBzdmMgICAgICMwCi0KLSAgICBjbW4gICAgIHgwLCAjKE1BWF9FUlJOTyArIDEpCi0gICAgY25lZyAgICB4MCwgeDAsIGhpCi0gICAgYi5oaSAgICBfX3NldF9lcnJub19pbnRlcm5hbAotCi0gICAgcmV0Ci1FTkQoY2xvY2tfbmFub3NsZWVwKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2Nsb3NlLlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvY2xvc2UuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzYyNDU4MS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvY2xvc2UuUworKysgL2Rldi9udWxsCkBAIC0xLDE0ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoY2xvc2UpCi0gICAgbW92ICAgICB4OCwgX19OUl9jbG9zZQotICAgIHN2YyAgICAgIzAKLQotICAgIGNtbiAgICAgeDAsICMoTUFYX0VSUk5PICsgMSkKLSAgICBjbmVnICAgIHgwLCB4MCwgaGkKLSAgICBiLmhpICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCi0KLSAgICByZXQKLUVORChjbG9zZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mYWNjZXNzYXQuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mYWNjZXNzYXQuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGM5NmNmYS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZmFjY2Vzc2F0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGZhY2Nlc3NhdCkKLSAgICBtb3YgICAgIHg4LCBfX05SX2ZhY2Nlc3NhdAotICAgIHN2YyAgICAgIzAKLQotICAgIGNtbiAgICAgeDAsICMoTUFYX0VSUk5PICsgMSkKLSAgICBjbmVnICAgIHgwLCB4MCwgaGkKLSAgICBiLmhpICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCi0KLSAgICByZXQKLUVORChmYWNjZXNzYXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZmFsbG9jYXRlLlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZmFsbG9jYXRlLlMKaW5kZXggZWYzZDRhNC4uZDQyYTBiYSAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZhbGxvY2F0ZS5TCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mYWxsb2NhdGUuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIHJldAogRU5EKGZhbGxvY2F0ZSkKIAotICAgIC5nbG9ibCBmYWxsb2NhdGU2NAotICAgIC5lcXUgZmFsbG9jYXRlNjQsIGZhbGxvY2F0ZQorQUxJQVNfU1lNQk9MKGZhbGxvY2F0ZTY0LCBmYWxsb2NhdGUpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZmNobW9kLlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZmNobW9kLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgzYTgwNjAuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZjaG1vZC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmY2htb2QpCi0gICAgbW92ICAgICB4OCwgX19OUl9mY2htb2QKLSAgICBzdmMgICAgICMwCi0KLSAgICBjbW4gICAgIHgwLCAjKE1BWF9FUlJOTyArIDEpCi0gICAgY25lZyAgICB4MCwgeDAsIGhpCi0gICAgYi5oaSAgICBfX3NldF9lcnJub19pbnRlcm5hbAotCi0gICAgcmV0Ci1FTkQoZmNobW9kKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZjaG1vZGF0LlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZmNobW9kYXQuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOGM1YmIwZS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZmNobW9kYXQuUworKysgL2Rldi9udWxsCkBAIC0xLDE0ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZmNobW9kYXQpCi0gICAgbW92ICAgICB4OCwgX19OUl9mY2htb2RhdAotICAgIHN2YyAgICAgIzAKLQotICAgIGNtbiAgICAgeDAsICMoTUFYX0VSUk5PICsgMSkKLSAgICBjbmVnICAgIHgwLCB4MCwgaGkKLSAgICBiLmhpICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCi0KLSAgICByZXQKLUVORChmY2htb2RhdCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mc3RhdDY0LlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZnN0YXQ2NC5TCmluZGV4IDg1YTA3ZjUuLmY3YzlmNTQgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mc3RhdDY0LlMKKysrIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZzdGF0NjQuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIHJldAogRU5EKGZzdGF0NjQpCiAKLSAgICAuZ2xvYmwgZnN0YXQKLSAgICAuZXF1IGZzdGF0LCBmc3RhdDY0CitBTElBU19TWU1CT0woZnN0YXQsIGZzdGF0NjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZnN0YXRhdDY0LlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZnN0YXRhdDY0LlMKaW5kZXggZGFmZDk4Mi4uOWY4ZjJjNSAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZzdGF0YXQ2NC5TCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mc3RhdGF0NjQuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIHJldAogRU5EKGZzdGF0YXQ2NCkKIAotICAgIC5nbG9ibCBmc3RhdGF0Ci0gICAgLmVxdSBmc3RhdGF0LCBmc3RhdGF0NjQKK0FMSUFTX1NZTUJPTChmc3RhdGF0LCBmc3RhdGF0NjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZnN0YXRmczY0LlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZnN0YXRmczY0LlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJjYTJkY2QuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2ZzdGF0ZnM2NC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTcgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmc3RhdGZzNjQpCi0gICAgbW92ICAgICB4OCwgX19OUl9mc3RhdGZzCi0gICAgc3ZjICAgICAjMAotCi0gICAgY21uICAgICB4MCwgIyhNQVhfRVJSTk8gKyAxKQotICAgIGNuZWcgICAgeDAsIHgwLCBoaQotICAgIGIuaGkgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLQotICAgIHJldAotRU5EKGZzdGF0ZnM2NCkKLQotICAgIC5nbG9ibCBmc3RhdGZzCi0gICAgLmVxdSBmc3RhdGZzLCBmc3RhdGZzNjQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mdHJ1bmNhdGUuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9mdHJ1bmNhdGUuUwppbmRleCBjNmU5OWY1Li5jMjFlMDk4IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZnRydW5jYXRlLlMKKysrIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2Z0cnVuY2F0ZS5TCkBAIC0xMyw1ICsxMyw0IEBACiAgICAgcmV0CiBFTkQoZnRydW5jYXRlKQogCi0gICAgLmdsb2JsIGZ0cnVuY2F0ZTY0Ci0gICAgLmVxdSBmdHJ1bmNhdGU2NCwgZnRydW5jYXRlCitBTElBU19TWU1CT0woZnRydW5jYXRlNjQsIGZ0cnVuY2F0ZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9nZXRybGltaXQuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9nZXRybGltaXQuUwppbmRleCA1MThhYjczLi4wM2VlOWE4IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvZ2V0cmxpbWl0LlMKKysrIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2dldHJsaW1pdC5TCkBAIC0xMyw1ICsxMyw0IEBACiAgICAgcmV0CiBFTkQoZ2V0cmxpbWl0KQogCi0gICAgLmdsb2JsIGdldHJsaW1pdDY0Ci0gICAgLmVxdSBnZXRybGltaXQ2NCwgZ2V0cmxpbWl0CitBTElBU19TWU1CT0woZ2V0cmxpbWl0NjQsIGdldHJsaW1pdCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9sc2Vlay5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2xzZWVrLlMKaW5kZXggZGU5NmRmMC4uOTNhZmViNyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2xzZWVrLlMKKysrIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL2xzZWVrLlMKQEAgLTEzLDUgKzEzLDQgQEAKICAgICByZXQKIEVORChsc2VlaykKIAotICAgIC5nbG9ibCBsc2VlazY0Ci0gICAgLmVxdSBsc2VlazY0LCBsc2VlaworQUxJQVNfU1lNQk9MKGxzZWVrNjQsIGxzZWVrKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL21tYXAuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9tbWFwLlMKaW5kZXggNjRiOTU1ZS4uNjUzNzFiYyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL21tYXAuUworKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvbW1hcC5TCkBAIC0xMyw1ICsxMyw0IEBACiAgICAgcmV0CiBFTkQobW1hcCkKIAotICAgIC5nbG9ibCBtbWFwNjQKLSAgICAuZXF1IG1tYXA2NCwgbW1hcAorQUxJQVNfU1lNQk9MKG1tYXA2NCwgbW1hcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9wcmVhZDY0LlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvcHJlYWQ2NC5TCmluZGV4IGVhZmMwNDQuLjZjOWYwZTkgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9wcmVhZDY0LlMKKysrIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3ByZWFkNjQuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIHJldAogRU5EKHByZWFkNjQpCiAKLSAgICAuZ2xvYmwgcHJlYWQKLSAgICAuZXF1IHByZWFkLCBwcmVhZDY0CitBTElBU19TWU1CT0wocHJlYWQsIHByZWFkNjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvcHJsaW1pdDY0LlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvcHJsaW1pdDY0LlMKaW5kZXggMmJlY2U5OS4uOWMwMThiYSAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3BybGltaXQ2NC5TCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9wcmxpbWl0NjQuUwpAQCAtMTMsNSArMTMsNCBAQAogICAgIHJldAogRU5EKHBybGltaXQ2NCkKIAotICAgIC5nbG9ibCBwcmxpbWl0Ci0gICAgLmVxdSBwcmxpbWl0LCBwcmxpbWl0NjQKK0FMSUFTX1NZTUJPTChwcmxpbWl0LCBwcmxpbWl0NjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvcHdyaXRlNjQuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9wd3JpdGU2NC5TCmluZGV4IDY5NzA5NTQuLjE1OTljMTQgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9wd3JpdGU2NC5TCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9wd3JpdGU2NC5TCkBAIC0xMyw1ICsxMyw0IEBACiAgICAgcmV0CiBFTkQocHdyaXRlNjQpCiAKLSAgICAuZ2xvYmwgcHdyaXRlCi0gICAgLmVxdSBwd3JpdGUsIHB3cml0ZTY0CitBTElBU19TWU1CT0wocHdyaXRlLCBwd3JpdGU2NCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9zZW5kZmlsZS5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3NlbmRmaWxlLlMKaW5kZXggMTdhMGQ0Ni4uNTBhYzEyZCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3NlbmRmaWxlLlMKKysrIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3NlbmRmaWxlLlMKQEAgLTEzLDUgKzEzLDQgQEAKICAgICByZXQKIEVORChzZW5kZmlsZSkKIAotICAgIC5nbG9ibCBzZW5kZmlsZTY0Ci0gICAgLmVxdSBzZW5kZmlsZTY0LCBzZW5kZmlsZQorQUxJQVNfU1lNQk9MKHNlbmRmaWxlNjQsIHNlbmRmaWxlKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3NldGhvc3RuYW1lLlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvc2V0aG9zdG5hbWUuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZGVhNDU3Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3NldGhvc3RuYW1lLlMKQEAgLTAsMCArMSwxNCBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShzZXRob3N0bmFtZSkKKyAgICBtb3YgICAgIHg4LCBfX05SX3NldGhvc3RuYW1lCisgICAgc3ZjICAgICAjMAorCisgICAgY21uICAgICB4MCwgIyhNQVhfRVJSTk8gKyAxKQorICAgIGNuZWcgICAgeDAsIHgwLCBoaQorICAgIGIuaGkgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKworICAgIHJldAorRU5EKHNldGhvc3RuYW1lKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3NldHJsaW1pdC5TIGIvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3NldHJsaW1pdC5TCmluZGV4IDZjYjZiOTguLjUyYzc1YTEgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy9zZXRybGltaXQuUworKysgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvc2V0cmxpbWl0LlMKQEAgLTEzLDUgKzEzLDQgQEAKICAgICByZXQKIEVORChzZXRybGltaXQpCiAKLSAgICAuZ2xvYmwgc2V0cmxpbWl0NjQKLSAgICAuZXF1IHNldHJsaW1pdDY0LCBzZXRybGltaXQKK0FMSUFTX1NZTUJPTChzZXRybGltaXQ2NCwgc2V0cmxpbWl0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLWFybTY0L3N5c2NhbGxzL3N0YXRmczY0LlMgYi9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvc3RhdGZzNjQuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZWM4YzU4OC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvc3RhdGZzNjQuUworKysgL2Rldi9udWxsCkBAIC0xLDE3ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoc3RhdGZzNjQpCi0gICAgbW92ICAgICB4OCwgX19OUl9zdGF0ZnMKLSAgICBzdmMgICAgICMwCi0KLSAgICBjbW4gICAgIHgwLCAjKE1BWF9FUlJOTyArIDEpCi0gICAgY25lZyAgICB4MCwgeDAsIGhpCi0gICAgYi5oaSAgICBfX3NldF9lcnJub19pbnRlcm5hbAotCi0gICAgcmV0Ci1FTkQoc3RhdGZzNjQpCi0KLSAgICAuZ2xvYmwgc3RhdGZzCi0gICAgLmVxdSBzdGF0ZnMsIHN0YXRmczY0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtNjQvc3lzY2FsbHMvdHJ1bmNhdGUuUyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy90cnVuY2F0ZS5TCmluZGV4IDBlNWEzM2UuLmUwMWNjN2QgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy90cnVuY2F0ZS5TCisrKyBiL2xpYmMvYXJjaC1hcm02NC9zeXNjYWxscy90cnVuY2F0ZS5TCkBAIC0xMyw1ICsxMyw0IEBACiAgICAgcmV0CiBFTkQodHJ1bmNhdGUpCiAKLSAgICAuZ2xvYmwgdHJ1bmNhdGU2NAotICAgIC5lcXUgdHJ1bmNhdGU2NCwgdHJ1bmNhdGUKK0FMSUFTX1NZTUJPTCh0cnVuY2F0ZTY0LCB0cnVuY2F0ZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1jb21tb24vYmlvbmljL2NydGJlZ2luLmMgYi9saWJjL2FyY2gtY29tbW9uL2Jpb25pYy9jcnRiZWdpbi5jCmluZGV4IGZhOWYzZjMuLmM0NjQwNWMgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1jb21tb24vYmlvbmljL2NydGJlZ2luLmMKKysrIGIvbGliYy9hcmNoLWNvbW1vbi9iaW9uaWMvY3J0YmVnaW4uYwpAQCAtNTksNiArNTksNyBAQAogCiAjaW5jbHVkZSAiX19kc29faGFuZGxlLmgiCiAjaW5jbHVkZSAiYXRleGl0LmgiCisjaW5jbHVkZSAicHRocmVhZF9hdGZvcmsuaCIKICNpZmRlZiBfX2kzODZfXwogIyBpbmNsdWRlICIuLi8uLi9hcmNoLXg4Ni9iaW9uaWMvX19zdGFja19jaGtfZmFpbF9sb2NhbC5oIgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtY29tbW9uL2Jpb25pYy9jcnRiZWdpbl9zby5jIGIvbGliYy9hcmNoLWNvbW1vbi9iaW9uaWMvY3J0YmVnaW5fc28uYwppbmRleCA2NDFlNDVhLi4zNzU0MzYzIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtY29tbW9uL2Jpb25pYy9jcnRiZWdpbl9zby5jCisrKyBiL2xpYmMvYXJjaC1jb21tb24vYmlvbmljL2NydGJlZ2luX3NvLmMKQEAgLTU2LDYgKzU2LDcgQEAKICMgaW5jbHVkZSAiX19kc29faGFuZGxlX3NvLmgiCiAjIGluY2x1ZGUgImF0ZXhpdC5oIgogI2VuZGlmCisjaW5jbHVkZSAicHRocmVhZF9hdGZvcmsuaCIKICNpZmRlZiBfX2kzODZfXwogIyBpbmNsdWRlICIuLi8uLi9hcmNoLXg4Ni9iaW9uaWMvX19zdGFja19jaGtfZmFpbF9sb2NhbC5oIgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtY29tbW9uL2Jpb25pYy9jcnRicmFuZC5TIGIvbGliYy9hcmNoLWNvbW1vbi9iaW9uaWMvY3J0YnJhbmQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMWJiZmJlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLWNvbW1vbi9iaW9uaWMvY3J0YnJhbmQuUwpAQCAtMCwwICsxLDM5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKwkuc2VjdGlvbgkubm90ZS5hbmRyb2lkLmlkZW50LCJhIiwlbm90ZQorCS5hbGlnbgkyCisJLnR5cGUJYWJpdGFnLCAlb2JqZWN0CithYml0YWc6CisJLmxvbmcJMmYtMWYJCQkvKiBpbnQzMl90IG5hbWVzeiAqLworCS5sb25nCTNmLTJmCQkJLyogaW50MzJfdCBkZXNjc3ogKi8KKwkubG9uZwkxCQkJLyogaW50MzJfdCB0eXBlICovCisxOgkuYXNjaWkJIkFuZHJvaWRcMCIJCS8qIGNoYXIgbmFtZVtdICovCisyOgkubG9uZwlQTEFURk9STV9TREtfVkVSU0lPTgkvKiBpbnQzMl90IGFuZHJvaWRfYXBpICovCiszOgorCS5zaXplCWFiaXRhZywgLi1hYml0YWcKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1jb21tb24vYmlvbmljL3B0aHJlYWRfYXRmb3JrLmggYi9saWJjL2FyY2gtY29tbW9uL2Jpb25pYy9wdGhyZWFkX2F0Zm9yay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBjNDhhMTIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtY29tbW9uL2Jpb25pYy9wdGhyZWFkX2F0Zm9yay5oCkBAIC0wLDAgKzEsMjkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitleHRlcm4gdm9pZCogX19kc29faGFuZGxlOworCitleHRlcm4gaW50IF9fcmVnaXN0ZXJfYXRmb3JrKHZvaWQgKCpwcmVwYXJlKSh2b2lkKSwgdm9pZCAoKnBhcmVudCkodm9pZCksIHZvaWQgKCpjaGlsZCkodm9pZCksIHZvaWQqIGRzbyk7CisKKyNpZm5kZWYgX0xJQkMKKy8vIExpYmMgdXNlZCB0byBleHBvcnQgdGhpcyBpbiBwcmV2aW91cyB2ZXJzaW9ucywgdGhlcmVmb3JlIGl0IG5lZWRzCisvLyB0byByZW1haW4gZ2xvYmFsIGZvciBiaW5hcnkgY29tcGF0aWJpbGl0eS4KK19fYXR0cmlidXRlX18gKCh2aXNpYmlsaXR5ICgiaGlkZGVuIikpKQorI2VuZGlmCitpbnQgcHRocmVhZF9hdGZvcmsodm9pZCAoKnByZXBhcmUpKHZvaWQpLCB2b2lkICgqcGFyZW50KSh2b2lkKSwgdm9pZCAoKmNoaWxkKSh2b2lkKSkgeworICByZXR1cm4gX19yZWdpc3Rlcl9hdGZvcmsocHJlcGFyZSwgcGFyZW50LCBjaGlsZCwgJl9fZHNvX2hhbmRsZSk7Cit9CisKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9fc2V0am1wLlMgYi9saWJjL2FyY2gtbWlwcy9iaW9uaWMvX3NldGptcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkMjM3ZTZkLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9fc2V0am1wLlMKKysrIC9kZXYvbnVsbApAQCAtMSwxNTAgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IF9zZXRqbXAuUyx2IDEuNCAyMDA1LzA4LzA3IDE2OjQwOjE1IGVzcGllIEV4cCAkICovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDIwMDIgT3BzeWNvbiBBQiAgKHd3dy5vcHN5Y29uLnNlIC8gd3d3Lm9wc3ljb24uY29tKQotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiBPcHN5Y29uIEFCIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCi0gKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUwotICogT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqCi0gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvcmVnbnVtLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9zaWduYWwuaD4KLQotLyoKLSAqIF9zZXRqbXAsIF9sb25nam1wIChub3QgcmVzdG9yaW5nIHNpZ25hbCBzdGF0ZSkKLSAqCi0gKiBYWFggRlBTRVQgc2hvdWxkIHByb2JhYmx5IGJlIHRha2VuIGZyb20gU1Igc2V0dGluZy4gaG1tbS4uLgotICogIEdQT0ZGIGFuZCBGUkFNRVNJWkUgbXVzdCBiZSB0aGUgc2FtZSBmb3IgYm90aCBfc2V0am1wIGFuZCBfbG9uZ2ptcCEKLSAqCi0gKi8KLQotRlJBTUVTWj0gTUtGU0laKDAsNCkKLUdQT0ZGPSBGUkFNRVNaLTIqUkVHU1oKLQotTEVBRihfc2V0am1wLCBGUkFNRVNaKQotCVBUUl9TVUJVIHNwLCBGUkFNRVNaCi0JU0VUVVBfR1A2NChHUE9GRiwgX3NldGptcCkKLQlTQVZFX0dQKEdQT0ZGKQotCS5zZXQJbm9yZW9yZGVyCi0jaWYgZGVmaW5lZChfX21pcHM2NCkKLQlkbGkJdjAsIDB4QUNFREJBREUJCQkjIHNpZ2NvbnRleHQgbWFnaWMgbnVtYmVyCi0jZWxzZQotCWxpCXYwLCAweEFDRURCQURFCQkJIyBzaWdjb250ZXh0IG1hZ2ljIG51bWJlcgotI2VuZGlmCi0JUkVHX1MJdjAsIFNDX1JFR1MrWkVSTypSRUdTWihhMCkKLQlSRUdfUwlzMCwgU0NfUkVHUytTMCpSRUdTWihhMCkKLQlSRUdfUwlzMSwgU0NfUkVHUytTMSpSRUdTWihhMCkKLQlSRUdfUwlzMiwgU0NfUkVHUytTMipSRUdTWihhMCkKLQlSRUdfUwlzMywgU0NfUkVHUytTMypSRUdTWihhMCkKLQlSRUdfUwlzNCwgU0NfUkVHUytTNCpSRUdTWihhMCkKLQlSRUdfUwlzNSwgU0NfUkVHUytTNSpSRUdTWihhMCkKLQlSRUdfUwlzNiwgU0NfUkVHUytTNipSRUdTWihhMCkKLQlSRUdfUwlzNywgU0NfUkVHUytTNypSRUdTWihhMCkKLQlSRUdfUwlzOCwgU0NfUkVHUytTOCpSRUdTWihhMCkKLQlSRUdfTAl2MCwgR1BPRkYoc3ApCi0JUkVHX1MJdjAsIFNDX1JFR1MrR1AqUkVHU1ooYTApCi0JUFRSX0FERFUgdjAsIHNwLCBGUkFNRVNaCi0JUkVHX1MJdjAsIFNDX1JFR1MrU1AqUkVHU1ooYTApCi0JUkVHX1MJcmEsIFNDX1BDKGEwKQotCi0jaWYgIWRlZmluZWQoU09GVEZMT0FUKQotCWxpCXYwLCAxCQkJCSMgYmUgbmljZSBpZiB3ZSBjb3VsZCB0ZWxsCi0JUkVHX1MJdjAsIFNDX0ZQVVNFRChhMCkJCSMgc2NfZnB1c2VkID0gMQotCWNmYzEJdjAsICQzMQotCXMuZAkkZjIwLCBTQ19GUFJFR1MrKChGMjAtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyMiwgU0NfRlBSRUdTKygoRjIyLUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjQsIFNDX0ZQUkVHUysoKEYyNC1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI2LCBTQ19GUFJFR1MrKChGMjYtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyOCwgU0NfRlBSRUdTKygoRjI4LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMzAsIFNDX0ZQUkVHUysoKEYzMC1GMCkqUkVHU1pfRlApKGEwKQotI2lmIF9NSVBTX0ZQU0VUID09IDMyCi0Jcy5kCSRmMjEsIFNDX0ZQUkVHUysoKEYyMS1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjIzLCBTQ19GUFJFR1MrKChGMjMtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyNSwgU0NfRlBSRUdTKygoRjI1LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjcsIFNDX0ZQUkVHUysoKEYyNy1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI5LCBTQ19GUFJFR1MrKChGMjktRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYzMSwgU0NfRlBSRUdTKygoRjMxLUYwKSpSRUdTWl9GUCkoYTApCi0jZW5kaWYKLQlSRUdfUwl2MCwgU0NfRlBSRUdTKygoRlNSLUYwKSpSRUdTWikoYTApCi0jZW5kaWYgLyogIVNPRlRGTE9BVCAqLwotCVJFU1RPUkVfR1A2NAotCVBUUl9BRERVIHNwLCBGUkFNRVNaCi0JaglyYQotCSBtb3ZlCXYwLCB6ZXJvCi1FTkQoX3NldGptcCkKLQotTEVBRihfbG9uZ2ptcCwgRlJBTUVTWikKLQlQVFJfU1VCVSBzcCwgRlJBTUVTWgotCVNFVFVQX0dQNjQoR1BPRkYsIF9sb25nam1wKQotCVNBVkVfR1AoR1BPRkYpCi0JLnNldCAgICBub3Jlb3JkZXIKLQlSRUdfTAl2MCwgU0NfUkVHUytaRVJPKlJFR1NaKGEwKQotCWJuZQl2MCwgMHhBQ0VEQkFERSwgYm90Y2gJCSMganVtcCBpZiBlcnJvcgotCVJFR19MCXJhLCBTQ19QQyhhMCkKLQlSRUdfTAl2MCwgU0NfRlBSRUdTKygoRlNSLUYwKSpSRUdTWikoYTApCi0JUkVHX0wJczAsIFNDX1JFR1MrUzAqUkVHU1ooYTApCi0JUkVHX0wJczEsIFNDX1JFR1MrUzEqUkVHU1ooYTApCi0JUkVHX0wJczIsIFNDX1JFR1MrUzIqUkVHU1ooYTApCi0JUkVHX0wJczMsIFNDX1JFR1MrUzMqUkVHU1ooYTApCi0JUkVHX0wJczQsIFNDX1JFR1MrUzQqUkVHU1ooYTApCi0JUkVHX0wJczUsIFNDX1JFR1MrUzUqUkVHU1ooYTApCi0JUkVHX0wJczYsIFNDX1JFR1MrUzYqUkVHU1ooYTApCi0JUkVHX0wJczcsIFNDX1JFR1MrUzcqUkVHU1ooYTApCi0JUkVHX0wJczgsIFNDX1JFR1MrUzgqUkVHU1ooYTApCi0JUkVHX0wJZ3AsIFNDX1JFR1MrR1AqUkVHU1ooYTApCi0JUkVHX0wJc3AsIFNDX1JFR1MrU1AqUkVHU1ooYTApCi0jaWYgIWRlZmluZWQoU09GVEZMT0FUKQotCWN0YzEJdjAsICQzMQotCWwuZAkkZjIwLCBTQ19GUFJFR1MrKChGMjAtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyMiwgU0NfRlBSRUdTKygoRjIyLUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjQsIFNDX0ZQUkVHUysoKEYyNC1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI2LCBTQ19GUFJFR1MrKChGMjYtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyOCwgU0NfRlBSRUdTKygoRjI4LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMzAsIFNDX0ZQUkVHUysoKEYzMC1GMCkqUkVHU1pfRlApKGEwKQotI2lmIF9NSVBTX0ZQU0VUID09IDMyCi0JbC5kCSRmMjEsIFNDX0ZQUkVHUysoKEYyMS1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjIzLCBTQ19GUFJFR1MrKChGMjMtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyNSwgU0NfRlBSRUdTKygoRjI1LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjcsIFNDX0ZQUkVHUysoKEYyNy1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI5LCBTQ19GUFJFR1MrKChGMjktRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYzMSwgU0NfRlBSRUdTKygoRjMxLUYwKSpSRUdTWl9GUCkoYTApCi0jZW5kaWYKLSNlbmRpZiAvKiAhU09GVEZMT0FUICovCi0JYm5lCWExLCB6ZXJvLCAxZgotCSBub3AKLQlsaQlhMSwgMQkJCSMgbmV2ZXIgcmV0dXJuIDAhCi0xOgotCWoJcmEKLQkgbW92ZQl2MCwgYTEKLQotYm90Y2g6Ci0JamFsCWxvbmdqbXBlcnJvcgotCW5vcAotCWphbAlhYm9ydAotCW5vcAotCVJFU1RPUkVfR1A2NAotCVBUUl9BRERVIHNwLCBGUkFNRVNaCi1FTkQoX2xvbmdqbXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9iaW9uaWMvYXRleGl0LmggYi9saWJjL2FyY2gtbWlwcy9iaW9uaWMvYXRleGl0LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc1OTAwOGMuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHMvYmlvbmljL2F0ZXhpdC5oCisrKyAvZGV2L251bGwKQEAgLTEsMzYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi1leHRlcm4gdm9pZCAqX19kc29faGFuZGxlOwotZXh0ZXJuIGludCBfX2N4YV9hdGV4aXQodm9pZCAoKmZ1bmMpKHZvaWQgKiksIHZvaWQgKmFyZywgdm9pZCAqZHNvKTsKLQotX19hdHRyaWJ1dGVfXyAoKHZpc2liaWxpdHkgKCJoaWRkZW4iKSkpCi1pbnQgYXRleGl0KHZvaWQgKCpmdW5jKSh2b2lkKSkKLXsKLSAgcmV0dXJuIChfX2N4YV9hdGV4aXQoKHZvaWQgKCopKHZvaWQgKikpZnVuYywgKHZvaWQgKikwLCAmX19kc29faGFuZGxlKSk7Ci19CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9iaW9uaWMvY3J0YmVnaW4uYyBiL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9jcnRiZWdpbi5jCmluZGV4IDI4ZTg4MTcuLmQ3MmVjN2IgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9jcnRiZWdpbi5jCisrKyBiL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9jcnRiZWdpbi5jCkBAIC05MSw0ICs5MSw1IEBACiApOwogCiAjaW5jbHVkZSAiLi4vLi4vYXJjaC1jb21tb24vYmlvbmljL19fZHNvX2hhbmRsZS5oIgotI2luY2x1ZGUgImF0ZXhpdC5oIgorI2luY2x1ZGUgIi4uLy4uL2FyY2gtY29tbW9uL2Jpb25pYy9hdGV4aXQuaCIKKyNpbmNsdWRlICIuLi8uLi9hcmNoLWNvbW1vbi9iaW9uaWMvcHRocmVhZF9hdGZvcmsuaCIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9jcnRiZWdpbl9zby5jIGIvbGliYy9hcmNoLW1pcHMvYmlvbmljL2NydGJlZ2luX3NvLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ2NjRjZTYuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHMvYmlvbmljL2NydGJlZ2luX3NvLmMKKysrIC9kZXYvbnVsbApAQCAtMSwzOCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLWV4dGVybiB2b2lkIF9fY3hhX2ZpbmFsaXplKHZvaWQgKik7Ci1leHRlcm4gdm9pZCAqX19kc29faGFuZGxlOwotCi1fX2F0dHJpYnV0ZV9fKCh2aXNpYmlsaXR5KCJoaWRkZW4iKSxkZXN0cnVjdG9yKSkKLXZvaWQgX19vbl9kbGNsb3NlKCkgewotICBfX2N4YV9maW5hbGl6ZSgmX19kc29faGFuZGxlKTsKLX0KLQotI2luY2x1ZGUgIi4uLy4uL2FyY2gtY29tbW9uL2Jpb25pYy9fX2Rzb19oYW5kbGVfc28uaCIKLSNpbmNsdWRlICJhdGV4aXQuaCIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9zZXRqbXAuUyBiL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9zZXRqbXAuUwppbmRleCAzMTc4NmJlLi5iZWQ5NTYyIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwcy9iaW9uaWMvc2V0am1wLlMKKysrIGIvbGliYy9hcmNoLW1pcHMvYmlvbmljL3NldGptcC5TCkBAIC0xLDUgKzEsMzAgQEAKLS8qICAgICAgJE9wZW5CU0Q6IHNldGptcC5TLHYgMS41IDIwMDUvMDgvMDcgMTY6NDA6MTUgZXNwaWUgRXhwICQgKi8KLQorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNC0yMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCiAvKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMDIgT3BzeWNvbiBBQiAgKHd3dy5vcHN5Y29uLnNlIC8gd3d3Lm9wc3ljb24uY29tKQogICoKQEAgLTI4LDE0ICs1MywxMjIgQEAKICAqIFNVQ0ggREFNQUdFLgogICoKICAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTEsIDE5OTMsIDE5OTUsCisgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1dGVkIHRvIEJlcmtlbGV5IGJ5CisgKiBIYXZhcmQgRWlkbmVzLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworLyoKKyAqIENvcHlyaWdodCAoYykgMTk5MiwgMTk5MworICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQorICogUmFscGggQ2FtcGJlbGwuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICoKKyAqCUAoIylzaWduYWwuaAk4LjEgKEJlcmtlbGV5KSA2LzEwLzkzCisgKi8KIAogI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvcmVnbnVtLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9zaWduYWwuaD4KKyNpbmNsdWRlIDxtYWNoaW5lL3NldGptcC5oPgorCisvKiBqbXBidWYgaXMgZGVjbGFyZWQgdG8gdXNlcnMgYXMgYW4gYXJyYXkgb2YgbG9uZ3MsIHdoaWNoIGlzIG9ubHkKKyAqIDQtYnl0ZSBhbGlnbmVkIGluIDMyLWJpdCBidWlsZHMuICBUaGUgTWlwcyBqbXBidWYgYmVnaW5zIHdpdGggYQorICogZHluYW1pY2FsbHktc2l6ZWQgMC0gb3IgNC1ieXRlIHVudXNlZCBmaWxsZXIgc28gdGhhdCBkb3VibGUtcHJlYyBGUCByZWdzCisgKiBhcmUgc2F2ZWQgdG8gOC1ieXRlLWFsaWduZWQgbWVtIGNlbGxzLgorICogQWxsIHRoZSBmb2xsb3dpbmcgam1wYnVmIG9mZnNldHMgYXJlIGZyb20gdGhlIHJvdW5kZWQtRE9XTiBiYXNlIGFkZHIuCisgKi8KKworLyogRmllbGRzIG9mIHNhbWUgc2l6ZSBvbiBhbGwgTUlQUyBhYmlzOiAqLworLyogICAgIAlmaWVsZDoJCWJ5dGUgb2Zmc2V0OglzaXplOgkJCQkJCSovCisvKiAgICAgCWR5bmFtIGZpbGxlcgkoMCo0KQkJICAgMC00IGJ5dGVzIG9mIHJvdW5kZG93biBmaWxsZXIsIERPTidUIFRPVUNIISEKKwkJCQkJCW9mdGVuIG92ZXJsYXlzIHVzZXIgc3RvcmFnZSEhCQkqLworI2RlZmluZQlTQ19NQUdJQ19PRkZTRVQJKDEqNCkJCS8qIDQgYnl0ZXMsIGlkZW50aWZ5IGptcGJ1ZiwgZmlyc3QgYWN0dWFsIGZpZWxkICovCisjZGVmaW5lCVNDX0ZMQUdfT0ZGU0VUCSgyKjQpCQkvKiA0IGJ5dGVzLCBzYXZlc2lncyBmbGFnICovCisjZGVmaW5lCVNDX0ZQU1JfT0ZGU0VUCSgzKjQpCQkvKiA0IGJ5dGVzLCBmbG9hdGluZyBwb2ludCBjb250cm9sL3N0YXR1cyByZWcgKi8KKy8qIGZvbGxvd2luZyBmaWVsZHMgYXJlIDgtYnl0ZSBhbGlnbmVkICovCisjZGVmaW5lCVNDX01BU0tfT0ZGU0VUCSg0KjQpCQkvKiAxNiBieXRlcywgbWlwczMyL21pcHM2NCB2ZXJzaW9uIG9mIHNpZ3NldF90ICovCisjZGVmaW5lCVNDX1NQQVJFX09GRlNFVAkoOCo0KQkJLyogOCBieXRlcywgcmVzZXJ2ZWQgZm9yIGZ1dHVyZSB1c2VzICovCisKKy8qIFJlZ2lzdGVycyB0aGF0IGFyZSA0LWJ5dGUgb24gbWlwczMyIG8zMiwgYW5kIDgtYnl0ZSBvbiBtaXBzNjQgbjY0IGFiaSAqLworI2RlZmluZQlTQ19SRUdTX09GRlNFVAkoMTAqNCkJCS8qIFNDX1JFR1NfQllURVMgKi8KKyNkZWZpbmUJU0NfUkVHU19TQVZFRAkxMiAvKnJlZ3MqLwkvKiByYSxzMC1zOCxncCxzcCAqLworI2RlZmluZQlTQ19SRUdTX0JZVEVTICAgKFNDX1JFR1NfU0FWRUQqUkVHU1opCisjZGVmaW5lCVNDX1JFR1MJCVNDX1JFR1NfT0ZGU0VUCisKKy8qIERvdWJsZSBmbG9hdGluZyBwdCByZWdpc3RlcnMgYXJlIDgtYnl0ZXMgb24gYWxsIGFiaXMsCisgKiBidXQgdGhlIG51bWJlciBvZiBzYXZlZCBmcCByZWdzIHZhcmllcyBmb3IgbzMyL24zMiB2ZXJzdXMgbjY0IGFiaXM6CisgKi8KKworI2lmZGVmIF9fTFA2NF9fCisjZGVmaW5lCVNDX0ZQUkVHU19TQVZFRAk4ICAvKiBhbGwgIGZwIHJlZ3MgZjI0LGYyNSxmMjYsZjI3LGYyOCxmMjksZjMwLGYzMSAqLworI2Vsc2UKKyNkZWZpbmUJU0NfRlBSRUdTX1NBVkVECTYgIC8qIGV2ZW4gZnAgcmVncyBmMjAsZjIyLGYyNCxmMjYsZjI4LGYzMCAqLworI2VuZGlmCisKKyNkZWZpbmUJU0NfRlBSRUdTX09GRlNFVCAoU0NfUkVHU19PRkZTRVQgKyBTQ19SRUdTX0JZVEVTKSAgLyogU0NfRlBSRUdTX0JZVEVTICovCisjZGVmaW5lCVNDX0ZQUkVHU19CWVRFUyAoU0NfRlBSRUdTX1NBVkVEKlJFR1NaX0ZQKQorI2RlZmluZQlTQ19GUFJFR1MJU0NfRlBSRUdTX09GRlNFVAorCisjZGVmaW5lCVNDX1RPVEFMX0JZVEVTCShTQ19GUFJFR1NfT0ZGU0VUICsgU0NfRlBSRUdTX0JZVEVTKQorI2RlZmluZQlTQ19UT1RBTF9MT05HUwkoU0NfVE9UQUxfQllURVMvUkVHU1opCisKKyNpZiBTQ19UT1RBTF9MT05HUyA+IF9KQkxFTgorI2Vycm9yIF9KQkxFTiBpcyB0b28gc21hbGwKKyNlbmRpZgogCiAvKgotICogc2V0am1wLCBsb25nam1wIGltcGxlbWVudGF0aW9uIGZvciBsaWJjLiB0aGlzIGNvZGUgZGVwZW5kcwotICogb24gdGhlIGxheW91dCBvZiB0aGUgc3RydWN0IHNpZ2NvbnRleHQgaW4gbWFjaGluZS9zaWduYWwuaC4KKyAqCisgKiAgR1BPRkYgYW5kIEZSQU1FU0laRSBtdXN0IGJlIHRoZSBzYW1lIGZvciBhbGwgc2V0am1wL2xvbmdqbXAgcm91dGluZXMKICAqCiAgKi8KIApAQCAtNDUsMTMwICsxNzgsMTc5IEBACiBHUE9GRj0gRlJBTUVTWi0yKlJFR1NaCiBSQU9GRj0gRlJBTUVTWi0xKlJFR1NaCiAKLU5PTl9MRUFGKHNldGptcCwgRlJBTUVTWiwgcmEpCitOT05fTEVBRihzaWdzZXRqbXAsIEZSQU1FU1osIHJhKQogCS5tYXNrCTB4ODAwMDAwMDAsIFJBT0ZGCiAJUFRSX1NVQlUgc3AsIEZSQU1FU1oJCQkjIGFsbG9jYXRlIHN0YWNrIGZyYW1lCi0JU0VUVVBfR1A2NChHUE9GRiwgc2V0am1wKQorCVNFVFVQX0dQNjQoR1BPRkYsIHNpZ3NldGptcCkKIAlTQVZFX0dQKEdQT0ZGKQogCS5zZXQJcmVvcmRlcgotCVJFR19TCXJhLCBSQU9GRihzcCkJCQkjIHNhdmUgc3RhdGUKKworc2V0am1wX2NvbW1vbjoKKyNpZm5kZWYgX19MUDY0X18KKwlsaQl0MCwgfjcKKwlhbmQJYTAsIHQwCQkJCSMgcm91bmQgam1wYnVmIGFkZHIgRE9XTiB0byA4LWJ5dGUgYm91bmRhcnkKKyNlbmRpZgorCXN3CWExLCBTQ19GTEFHX09GRlNFVChhMCkJCSMgc2F2ZSBzYXZlc2lncyBmbGFnCisJYmVxeglhMSwgMWYJCQkJIyBkbyBzYXZpbmcgb2Ygc2lnbmFsIG1hc2s/CisKKwlSRUdfUwlyYSwgUkFPRkYoc3ApCQkJIyBzcGlsbCBzdGF0ZQogCVJFR19TCWEwLCBBME9GRihzcCkKLQotCW1vdmUJYTAsIHplcm8JCQkjIGdldCBjdXJyZW50IHNpZ25hbCBtYXNrCi0JamFsCXNpZ2Jsb2NrCi0KLQlSRUdfTAl2MSwgQTBPRkYoc3ApCQkJIyB2MSA9IGptcGJ1ZgotCVJFR19TCXYwLCBTQ19NQVNLKHYxKQkJCSMgc2F2ZSBzY19tYXNrID0gc2lnYmxvY2soMCkKLQotCVJFR19MCWEwLCBBME9GRihzcCkJCQkjIHJlc3RvcmUgam1wYnVmCisJIyBjYWxsIHNpZ3Byb2NtYXNrKGludCBob3cgaWdub3JlZCwgc2lnc2V0X3QqIG51bGwsIHNpZ3NldF90KiBTQ19NQVNLKGEwKSk6CisJTEEJYTIsIFNDX01BU0tfT0ZGU0VUKGEwKQkJIyBnZXRzIGN1cnJlbnQgc2lnbmFsIG1hc2sKKwlsaQlhMCwgMAkJCQkjIGhvdzsgaWdub3JlZCB3aGVuIG5ldyBtYXNrIGlzIG51bGwKKwlsaQlhMSwgMAkJCQkjIG51bGwgbmV3IG1hc2sKKwlqYWwJc2lncHJvY21hc2sJCQkjIGdldCBjdXJyZW50IHNpZ25hbCBtYXNrCisJUkVHX0wJYTAsIEEwT0ZGKHNwKQogCVJFR19MCXJhLCBSQU9GRihzcCkKLQlSRUdfUwlyYSwgU0NfUEMoYTApCQkJIyBzY19wYyA9IHJldHVybiBhZGRyZXNzCi0jaWYgZGVmaW5lZChfX21pcHM2NCkKLQlkbGkJdjAsIDB4QUNFREJBREUJCQkjIHNpZ2NvbnRleHQgbWFnaWMgbnVtYmVyCi0jZWxzZQorMToKIAlsaQl2MCwgMHhBQ0VEQkFERQkJCSMgc2lnY29udGV4dCBtYWdpYyBudW1iZXIKLSNlbmRpZgotCVJFR19TCXYwLCBTQ19SRUdTK1pFUk8qUkVHU1ooYTApCi0JUkVHX1MJczAsIFNDX1JFR1MrUzAqUkVHU1ooYTApCi0JUkVHX1MJczEsIFNDX1JFR1MrUzEqUkVHU1ooYTApCi0JUkVHX1MJczIsIFNDX1JFR1MrUzIqUkVHU1ooYTApCi0JUkVHX1MJczMsIFNDX1JFR1MrUzMqUkVHU1ooYTApCi0JUkVHX1MJczQsIFNDX1JFR1MrUzQqUkVHU1ooYTApCi0JUkVHX1MJczUsIFNDX1JFR1MrUzUqUkVHU1ooYTApCi0JUkVHX1MJczYsIFNDX1JFR1MrUzYqUkVHU1ooYTApCi0JUkVHX1MJczcsIFNDX1JFR1MrUzcqUkVHU1ooYTApCi0JUkVHX1MJczgsIFNDX1JFR1MrUzgqUkVHU1ooYTApCisJc3cJdjAsIFNDX01BR0lDX09GRlNFVChhMCkKKwkjIGNhbGxlZS1zYXZlZCBsb25nLXNpemVkIHJlZ3M6CisJUkVHX1MJcmEsIFNDX1JFR1MrMCpSRUdTWihhMCkKKwlSRUdfUwlzMCwgU0NfUkVHUysxKlJFR1NaKGEwKQorCVJFR19TCXMxLCBTQ19SRUdTKzIqUkVHU1ooYTApCisJUkVHX1MJczIsIFNDX1JFR1MrMypSRUdTWihhMCkKKwlSRUdfUwlzMywgU0NfUkVHUys0KlJFR1NaKGEwKQorCVJFR19TCXM0LCBTQ19SRUdTKzUqUkVHU1ooYTApCisJUkVHX1MJczUsIFNDX1JFR1MrNipSRUdTWihhMCkKKwlSRUdfUwlzNiwgU0NfUkVHUys3KlJFR1NaKGEwKQorCVJFR19TCXM3LCBTQ19SRUdTKzgqUkVHU1ooYTApCisJUkVHX1MJczgsIFNDX1JFR1MrOSpSRUdTWihhMCkKIAlSRUdfTAl2MCwgR1BPRkYoc3ApCi0JUkVHX1MJdjAsIFNDX1JFR1MrR1AqUkVHU1ooYTApCisJUkVHX1MJdjAsIFNDX1JFR1MrMTAqUkVHU1ooYTApCSMgc2F2ZSBncAogCVBUUl9BRERVIHYwLCBzcCwgRlJBTUVTWgotCVJFR19TCXYwLCBTQ19SRUdTK1NQKlJFR1NaKGEwKQorCVJFR19TCXYwLCBTQ19SRUdTKzExKlJFR1NaKGEwKQkjIHNhdmUgb3JpZyBzcAogCi0jaWYgIWRlZmluZWQoU09GVEZMT0FUKQotCWxpCXYwLCAxCQkJCSMgYmUgbmljZSBpZiB3ZSBjb3VsZCB0ZWxsCi0JUkVHX1MJdjAsIFNDX0ZQVVNFRChhMCkJCSMgc2NfZnB1c2VkID0gMQogCWNmYzEJdjAsICQzMQotCXMuZAkkZjIwLCBTQ19GUFJFR1MrKChGMjAtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyMiwgU0NfRlBSRUdTKygoRjIyLUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjQsIFNDX0ZQUkVHUysoKEYyNC1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI2LCBTQ19GUFJFR1MrKChGMjYtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyOCwgU0NfRlBSRUdTKygoRjI4LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMzAsIFNDX0ZQUkVHUysoKEYzMC1GMCkqUkVHU1pfRlApKGEwKQotI2lmIF9NSVBTX0ZQU0VUID09IDMyCi0Jcy5kCSRmMjEsIFNDX0ZQUkVHUysoKEYyMS1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjIzLCBTQ19GUFJFR1MrKChGMjMtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyNSwgU0NfRlBSRUdTKygoRjI1LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjcsIFNDX0ZQUkVHUysoKEYyNy1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI5LCBTQ19GUFJFR1MrKChGMjktRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYzMSwgU0NfRlBSRUdTKygoRjMxLUYwKSpSRUdTWl9GUCkoYTApCisKKyNpZmRlZiBfX0xQNjRfXworCSMgY2FsbGVlLXNhdmVkIGZwIHJlZ3Mgb24gbWlwcyBuNjQgQUJJIGFyZSAkZjI0Li4kZjMxCisJcy5kCSRmMjQsIFNDX0ZQUkVHUyswKlJFR1NaX0ZQKGEwKQorCXMuZAkkZjI1LCBTQ19GUFJFR1MrMSpSRUdTWl9GUChhMCkKKwlzLmQJJGYyNiwgU0NfRlBSRUdTKzIqUkVHU1pfRlAoYTApCisJcy5kCSRmMjcsIFNDX0ZQUkVHUyszKlJFR1NaX0ZQKGEwKQorCXMuZAkkZjI4LCBTQ19GUFJFR1MrNCpSRUdTWl9GUChhMCkKKwlzLmQJJGYyOSwgU0NfRlBSRUdTKzUqUkVHU1pfRlAoYTApCisJcy5kCSRmMzAsIFNDX0ZQUkVHUys2KlJFR1NaX0ZQKGEwKQorCXMuZAkkZjMxLCBTQ19GUFJFR1MrNypSRUdTWl9GUChhMCkKKyNlbHNlCisJIyBjYWxsZWUtc2F2ZWQgZnAgcmVncyBvbiBtaXBzIG8zMiBBQkkgYXJlCisJIyAgIHRoZSBldmVuLW51bWJlcmVkIGRvdWJsZSBmcCByZWdzICRmMjAsJGYyMiwuLi4kZjMwCisJcy5kCSRmMjAsIFNDX0ZQUkVHUyswKlJFR1NaX0ZQKGEwKQorCXMuZAkkZjIyLCBTQ19GUFJFR1MrMSpSRUdTWl9GUChhMCkKKwlzLmQJJGYyNCwgU0NfRlBSRUdTKzIqUkVHU1pfRlAoYTApCisJcy5kCSRmMjYsIFNDX0ZQUkVHUyszKlJFR1NaX0ZQKGEwKQorCXMuZAkkZjI4LCBTQ19GUFJFR1MrNCpSRUdTWl9GUChhMCkKKwlzLmQJJGYzMCwgU0NfRlBSRUdTKzUqUkVHU1pfRlAoYTApCiAjZW5kaWYKLQlSRUdfUwl2MCwgU0NfRlBSRUdTKygoRlNSLUYwKSpSRUdTWikoYTApCi0jZW5kaWYgLyogIVNPRlRGTE9BVCAqLworCXN3CXYwLCBTQ19GUFNSX09GRlNFVChhMCkKIAltb3ZlCXYwLCB6ZXJvCiAJUkVTVE9SRV9HUDY0CiAJUFRSX0FERFUgc3AsIEZSQU1FU1oKIAlqCXJhCitFTkQoc2lnc2V0am1wKQogCi1ib3RjaDoKLQlqYWwJbG9uZ2ptcGVycm9yCi0JamFsCWFib3J0Ci0JUkVTVE9SRV9HUDY0Ci0JUFRSX0FERFUgc3AsIEZSQU1FU1oKKworIyBBbHRlcm5hdGUgZW50cnkgcG9pbnRzOgorCitOT05fTEVBRihzZXRqbXAsIEZSQU1FU1osIHJhKQorCS5tYXNrCTB4ODAwMDAwMDAsIFJBT0ZGCisJUFRSX1NVQlUgc3AsIEZSQU1FU1oKKwlTRVRVUF9HUDY0KEdQT0ZGLCBzZXRqbXApCQkjIGNhbid0IHNoYXJlIHNpZ3NldGptcCdzIGdwIGNvZGUKKwlTQVZFX0dQKEdQT0ZGKQorCS5zZXQJcmVvcmRlcgorCisJbGkJYTEsIDEJCQkJIyBzYXZlL3Jlc3RvcmUgc2lnbmFscyBzdGF0ZQorCWIJc2V0am1wX2NvbW1vbgkJCSMgdGFpbCBjYWxsCiBFTkQoc2V0am1wKQogCiAKLUxFQUYobG9uZ2ptcCwgRlJBTUVTWikKK05PTl9MRUFGKF9zZXRqbXAsIEZSQU1FU1osIHJhKQorCS5tYXNrCTB4ODAwMDAwMDAsIFJBT0ZGCiAJUFRSX1NVQlUgc3AsIEZSQU1FU1oKLQlTRVRVUF9HUDY0KEdQT0ZGLCBsb25nam1wKQorCVNFVFVQX0dQNjQoR1BPRkYsIF9zZXRqbXApCQkjIGNhbid0IHNoYXJlIHNpZ3NldGptcCdzIGdwIGNvZGUKIAlTQVZFX0dQKEdQT0ZGKQogCS5zZXQJcmVvcmRlcgotCXN3CWExLCBBMU9GRihzcCkKLQlzdwlhMCwgQTBPRkYoc3ApCiAKLQlsdwlhMCwgU0NfTUFTSyhhMCkKLQlqYWwJc2lnc2V0bWFzaworCWxpCWExLCAwCQkJCSMgZG9uJ3Qgc2F2ZS9yZXN0b3JlIHNpZ25hbHMKKwliCXNldGptcF9jb21tb24JCQkjIHRhaWwgY2FsbAorRU5EKF9zZXRqbXApCiAKLQlsdwlhMCwgQTBPRkYoc3ApCi0JbHcJYTEsIEExT0ZGKHNwKQogCi0JLnNldAlub3Jlb3JkZXIKLQlSRUdfTAl2MCwgU0NfUkVHUytaRVJPKlJFR1NaKGEwKQotCWJuZQl2MCwgMHhBQ0VEQkFERSwgYm90Y2gJCSMganVtcCBpZiBlcnJvcgotCVJFR19MCXJhLCBTQ19QQyhhMCkKLQlSRUdfTAlzMCwgU0NfUkVHUytTMCpSRUdTWihhMCkKLQlSRUdfTAlzMSwgU0NfUkVHUytTMSpSRUdTWihhMCkKLQlSRUdfTAlzMiwgU0NfUkVHUytTMipSRUdTWihhMCkKLQlSRUdfTAlzMywgU0NfUkVHUytTMypSRUdTWihhMCkKLQlSRUdfTAlzNCwgU0NfUkVHUytTNCpSRUdTWihhMCkKLQlSRUdfTAlzNSwgU0NfUkVHUytTNSpSRUdTWihhMCkKLQlSRUdfTAlzNiwgU0NfUkVHUytTNipSRUdTWihhMCkKLQlSRUdfTAlzNywgU0NfUkVHUytTNypSRUdTWihhMCkKLQlSRUdfTAlzOCwgU0NfUkVHUytTOCpSRUdTWihhMCkKLQlSRUdfTAlncCwgU0NfUkVHUytHUCpSRUdTWihhMCkKLQlSRUdfTAlzcCwgU0NfUkVHUytTUCpSRUdTWihhMCkKK05PTl9MRUFGKHNpZ2xvbmdqbXAsIEZSQU1FU1osIHJhKQorCS5tYXNrCTB4ODAwMDAwMDAsIFJBT0ZGCisJUFRSX1NVQlUgc3AsIEZSQU1FU1oKKwlTRVRVUF9HUDY0KEdQT0ZGLCBzaWdsb25nam1wKQorCVNBVkVfR1AoR1BPRkYpCisJLnNldAlyZW9yZGVyCiAKLSNpZiAhZGVmaW5lZChTT0ZURkxPQVQpCi0JUkVHX0wJdjAsIFNDX0ZQUkVHUysoKEZTUi1GMCkqUkVHU1opKGEwKQotCWN0YzEJdjAsICQzMQotCWwuZAkkZjIwLCBTQ19GUFJFR1MrKChGMjAtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyMiwgU0NfRlBSRUdTKygoRjIyLUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjQsIFNDX0ZQUkVHUysoKEYyNC1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI2LCBTQ19GUFJFR1MrKChGMjYtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyOCwgU0NfRlBSRUdTKygoRjI4LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMzAsIFNDX0ZQUkVHUysoKEYzMC1GMCkqUkVHU1pfRlApKGEwKQotI2lmIF9NSVBTX0ZQU0VUID09IDMyCi0JbC5kCSRmMjEsIFNDX0ZQUkVHUysoKEYyMS1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjIzLCBTQ19GUFJFR1MrKChGMjMtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyNSwgU0NfRlBSRUdTKygoRjI1LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjcsIFNDX0ZQUkVHUysoKEYyNy1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI5LCBTQ19GUFJFR1MrKChGMjktRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYzMSwgU0NfRlBSRUdTKygoRjMxLUYwKSpSRUdTWl9GUCkoYTApCisjaWZuZGVmIF9fTFA2NF9fCisJbGkJdDAsIH43CisJYW5kCWEwLCB0MAkJCQkjIHJvdW5kIGptcGJ1ZiBhZGRyIERPV04gdG8gOC1ieXRlIGJvdW5kYXJ5CiAjZW5kaWYKLSNlbmRpZiAvKiAhU09GVEZMT0FUICovCisJbHcJdjAsIFNDX01BR0lDX09GRlNFVChhMCkKKwlsaQl0MCwgMHhBQ0VEQkFERQorCWJuZQl2MCwgdDAsIGxvbmdqbXBfYm90Y2gJCSMganVtcCBpZiBlcnJvcgorCisJbHcJdDAsIFNDX0ZMQUdfT0ZGU0VUKGEwKQkJIyBnZXQgc2F2ZXNpZ3MgZmxhZworCWJlcXoJdDAsIDFmCQkJCSMgcmVzdG9yZSBzaWduYWwgbWFzaz8KKworCVJFR19TCWExLCBBMU9GRihzcCkJCQkjIHRlbXAgc3BpbGwKKwlSRUdfUwlhMCwgQTBPRkYoc3ApCisgICAgICAgICMgY2FsbCBzaWdwcm9jbWFzayhpbnQgaG93IFNJR19TRVRNQVNLLCBzaWdzZXRfdCogU0NfTUFTSyhhMCksIHNpZ3NldF90KiBudWxsKToKKwlMQQlhMSwgU0NfTUFTS19PRkZTRVQoYTApCQkjIHNpZ25hbHMgYmVpbmcgcmVzdG9yZWQKKwlsaQlhMCwgMwkJCQkjIG1pcHMgU0lHX1NFVE1BU0sKKwlsaQlhMiwgMAkJCQkjIG51bGwKKwlqYWwJc2lncHJvY21hc2sJCQkjIHJlc3RvcmUgc2lnbmFsIG1hc2sKKwlSRUdfTAlhMCwgQTBPRkYoc3ApCisJUkVHX0wJYTEsIEExT0ZGKHNwKQorMToKKwkjIGNhbGxlZS1zYXZlZCBsb25nLXNpemVkIHJlZ3M6CisJUkVHX0wJcmEsIFNDX1JFR1MrMCpSRUdTWihhMCkKKwlSRUdfTAlzMCwgU0NfUkVHUysxKlJFR1NaKGEwKQorCVJFR19MCXMxLCBTQ19SRUdTKzIqUkVHU1ooYTApCisJUkVHX0wJczIsIFNDX1JFR1MrMypSRUdTWihhMCkKKwlSRUdfTAlzMywgU0NfUkVHUys0KlJFR1NaKGEwKQorCVJFR19MCXM0LCBTQ19SRUdTKzUqUkVHU1ooYTApCisJUkVHX0wJczUsIFNDX1JFR1MrNipSRUdTWihhMCkKKwlSRUdfTAlzNiwgU0NfUkVHUys3KlJFR1NaKGEwKQorCVJFR19MCXM3LCBTQ19SRUdTKzgqUkVHU1ooYTApCisJUkVHX0wJczgsIFNDX1JFR1MrOSpSRUdTWihhMCkKKwlSRUdfTAlncCwgU0NfUkVHUysxMCpSRUdTWihhMCkKKwlSRUdfTAlzcCwgU0NfUkVHUysxMSpSRUdTWihhMCkKKworCWx3CXYwLCBTQ19GUFNSX09GRlNFVChhMCkKKwljdGMxCXYwLCAkMzEJCQkjIHJlc3RvcmUgb2xkIGZyIG1vZGUgYmVmb3JlIGZwIHZhbHVlcworI2lmZGVmIF9fTFA2NF9fCisJIyBjYWxsZWUtc2F2ZWQgZnAgcmVncyBvbiBtaXBzIG42NCBBQkkgYXJlICRmMjQuLiRmMzEKKwlsLmQJJGYyNCwgU0NfRlBSRUdTKzAqUkVHU1pfRlAoYTApCisJbC5kCSRmMjUsIFNDX0ZQUkVHUysxKlJFR1NaX0ZQKGEwKQorCWwuZAkkZjI2LCBTQ19GUFJFR1MrMipSRUdTWl9GUChhMCkKKwlsLmQJJGYyNywgU0NfRlBSRUdTKzMqUkVHU1pfRlAoYTApCisJbC5kCSRmMjgsIFNDX0ZQUkVHUys0KlJFR1NaX0ZQKGEwKQorCWwuZAkkZjI5LCBTQ19GUFJFR1MrNSpSRUdTWl9GUChhMCkKKwlsLmQJJGYzMCwgU0NfRlBSRUdTKzYqUkVHU1pfRlAoYTApCisJbC5kCSRmMzEsIFNDX0ZQUkVHUys3KlJFR1NaX0ZQKGEwKQorI2Vsc2UKKwkjIGNhbGxlZS1zYXZlZCBmcCByZWdzIG9uIG1pcHMgbzMyIEFCSSBhcmUKKwkjICAgdGhlIGV2ZW4tbnVtYmVyZWQgZG91YmxlIGZwIHJlZ3MgJGYyMCwkZjIyLC4uLiRmMzAKKwlsLmQJJGYyMCwgU0NfRlBSRUdTKzAqUkVHU1pfRlAoYTApCisJbC5kCSRmMjIsIFNDX0ZQUkVHUysxKlJFR1NaX0ZQKGEwKQorCWwuZAkkZjI0LCBTQ19GUFJFR1MrMipSRUdTWl9GUChhMCkKKwlsLmQJJGYyNiwgU0NfRlBSRUdTKzMqUkVHU1pfRlAoYTApCisJbC5kCSRmMjgsIFNDX0ZQUkVHUys0KlJFR1NaX0ZQKGEwKQorCWwuZAkkZjMwLCBTQ19GUFJFR1MrNSpSRUdTWl9GUChhMCkKKyNlbmRpZgogCWJuZQlhMSwgemVybywgMWYKLQkgbm9wCiAJbGkJYTEsIDEJCQkjIG5ldmVyIHJldHVybiAwIQogMToKLQlqCXJhCi0JIG1vdmUJdjAsIGExCisJbW92ZQl2MCwgYTEKKwlqCXJhCQkJIyByZXR1cm4gdG8gc2V0am1wIGNhbGwgc2l0ZQogCi1FTkQobG9uZ2ptcCkKK2xvbmdqbXBfYm90Y2g6CisJamFsCWxvbmdqbXBlcnJvcgorCWphbAlhYm9ydAorRU5EKHNpZ2xvbmdqbXApCisKK0FMSUFTX1NZTUJPTChsb25nam1wLCBzaWdsb25nam1wKQorQUxJQVNfU1lNQk9MKF9sb25nam1wLCBzaWdsb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvYmlvbmljL3NpZ3NldGptcC5TIGIvbGliYy9hcmNoLW1pcHMvYmlvbmljL3NpZ3NldGptcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5ZDJlNWVhLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzL2Jpb25pYy9zaWdzZXRqbXAuUworKysgL2Rldi9udWxsCkBAIC0xLDc3ICswLDAgQEAKLS8qICRPcGVuQlNEOiBzaWdzZXRqbXAuUyx2IDEuNSAyMDA1LzA4LzA3IDE2OjQwOjE1IGVzcGllIEV4cCAkICovCi0vKi0KLSAqIENvcHlyaWdodCAoYykgMTk5MSwgMTk5MywgMTk5NSwKLSAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKLSAqIEhhdmFyZCBFaWRuZXMuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCi0gKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAotICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3JlZ251bS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvc2V0am1wLmg+Ci0KLS8qCi0gKiB0cmFtcG9saW5lcyBmb3Igc2lnc2V0am1wIGFuZCAgc2lnbG9uZ2ptcCBzYXZlIGFuZCByZXN0b3JlIG1hc2suCi0gKgotICovCi1GUkFNRVNaPSBNS0ZTSVooMSwxKQotR1BPRkY9IEZSQU1FU1otMipSRUdTWgotCi1MRUFGKHNpZ3NldGptcCwgRlJBTUVTWikKLQlQVFJfU1VCVSBzcCwgRlJBTUVTWgotCVNFVFVQX0dQNjQoR1BPRkYsIHNpZ3NldGptcCkKLQkuc2V0CXJlb3JkZXIKLQlSRUdfUwlhMSwgKF9KQkxFTipSRUdTWikoYTApCQkjIHNhdmUgInNhdmVtYXNrIgotCWJuZQlhMSwgMHgwLCAxZgkJCSMgZG8gc2F2aW5nIG9mIHNpZ25hbCBtYXNrPwotCUxBCXQ5LCBfc2V0am1wCi0JUkVTVE9SRV9HUDY0Ci0JUFRSX0FERFUgc3AsIEZSQU1FU1oKLQlqciB0OQotCi0xOglMQQl0OSwgc2V0am1wCi0JUkVTVE9SRV9HUDY0Ci0JUFRSX0FERFUgc3AsIEZSQU1FU1oKLQlqciB0OQotRU5EKHNpZ3NldGptcCkKLQotTEVBRihzaWdsb25nam1wLCBGUkFNRVNaKQotCVBUUl9TVUJVIHNwLCBGUkFNRVNaCi0JU0VUVVBfR1A2NChHUE9GRiwgc2lnbG9uZ2ptcCkKLQkuc2V0CXJlb3JkZXIKLQlSRUdfTAl0MCwgKF9KQkxFTipSRUdTWikoYTApCQkjIGdldCAic2F2ZW1hc2siCi0JYm5lCXQwLCAweDAsIDFmCQkJIyByZXN0b3JlIHNpZ25hbCBtYXNrPwotCUxBCXQ5LCBfbG9uZ2ptcAotCVJFU1RPUkVfR1A2NAotCVBUUl9BRERVIHNwLCBGUkFNRVNaCi0JanIJdDkKLTE6Ci0JTEEJdDksIGxvbmdqbXAKLQlSRVNUT1JFX0dQNjQKLQlQVFJfQUREVSBzcCwgRlJBTUVTWgotCWpyCXQ5Ci1FTkQoc2lnbG9uZ2ptcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9hc20uaCBiL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9hc20uaAppbmRleCA1ZWFjZGUzLi5jZGM3OTE0IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvYXNtLmgKKysrIGIvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL2FzbS5oCkBAIC0yOCw5ICsyOCw3IEBACiAjaWZuZGVmIF9NSVBTNjRfQVNNX0gKICNkZWZpbmUgX01JUFM2NF9BU01fSAogCi0jaWZuZGVmIF9BTElHTl9URVhUCi0jIGRlZmluZSBfQUxJR05fVEVYVCAuYWxpZ24gNAotI2VuZGlmCisjZGVmaW5lIF9fYmlvbmljX2FzbV9hbGlnbiA0CiAKICN1bmRlZiBfX2Jpb25pY19hc21fY3VzdG9tX2VudHJ5CiAjdW5kZWYgX19iaW9uaWNfYXNtX2N1c3RvbV9lbmQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9lbGZfbWFjaGRlcC5oIGIvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL2VsZl9tYWNoZGVwLmgKaW5kZXggZDI3ZDQzMS4uMGFhY2VkZiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL2VsZl9tYWNoZGVwLmgKKysrIGIvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL2VsZl9tYWNoZGVwLmgKQEAgLTEyMSw2ICsxMjEsNyBAQAogI2RlZmluZQlEVF9NSVBTX0dPVFNZTQkJMHg3MDAwMDAxMwkvKiBmaXJzdCBkeW5hbWljIHN5bSBpbiBnb3QgKi8KICNkZWZpbmUgRFRfTUlQU19ISVBBR0VOTwkweDcwMDAwMDE0CiAjZGVmaW5lCURUX01JUFNfUkxEX01BUAkJMHg3MDAwMDAxNgkvKiBhZGRyZXNzIG9mIGxvYWRlciBtYXAgKi8KKyNkZWZpbmUgRFRfTUlQU19STERfTUFQMgkweDcwMDAwMDM1CS8qIG9mZnNldCBvZiBsb2FkZXIgbWFwLCB1c2VkIGZvciBQSUUgKi8KIAogLyoKICAqIEVMRiBGbGFncwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL2VuZGlhbi5oIGIvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL2VuZGlhbi5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0MWE5MDA0Li4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaAorKysgL2Rldi9udWxsCkBAIC0xLDcwICswLDAgQEAKLS8qCSRPcGVuQlNEOiBlbmRpYW4uaCx2IDEuNSAyMDA2LzAyLzI3IDIzOjM1OjU5IG1pb2QgRXhwICQgKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMjAwMS0yMDAyIE9wc3ljb24gQUIgICh3d3cub3BzeWNvbi5zZSAvIHd3dy5vcHN5Y29uLmNvbSkKLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUwotICogT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqCi0gKi8KLQotI2lmbmRlZiBfTUlQUzY0X0VORElBTl9IXwotI2RlZmluZSBfTUlQUzY0X0VORElBTl9IXwotCi0jaWZkZWYgX19HTlVDX18KLQotI2lmIGRlZmluZWQoX19taXBzX2lzYV9yZXYpICYmIChfX21pcHNfaXNhX3JldiA+PSAyKQotI2RlZmluZSBfX3N3YXAxNm1kKHgpICh7CQkJCQlcCi0gICAgcmVnaXN0ZXIgdWludDE2X3QgX3ggPSAoeCk7CQkJCQlcCi0gICAgcmVnaXN0ZXIgdWludDE2X3QgX3I7CQkJCQlcCi0gICAgX19hc20gdm9sYXRpbGUgKCJ3c2JoICUwLCAlMSIgOiAiPXIiIChfcikgOiAiciIgKF94KSk7CVwKLSAgICBfcjsJCQkJCQkJCVwKLX0pCi0KLSNkZWZpbmUgX19zd2FwMzJtZCh4KSAoewkJCQkJXAotICAgIHJlZ2lzdGVyIHVpbnQzMl90IF94ID0gKHgpOwkJCQkJXAotICAgIHJlZ2lzdGVyIHVpbnQzMl90IF9yOwkJCQkJXAotICAgIF9fYXNtIHZvbGF0aWxlICgid3NiaCAlMCwgJTE7IHJvdHIgJTAsICUwLCAxNiIgOiAiPXIiIChfcikgOiAiciIgKF94KSk7IFwKLSAgICBfcjsJCQkJCQkJCVwKLX0pCi0KLSNkZWZpbmUgX19zd2FwNjRtZCh4KSAoewkJCQkJXAotICAgIHVpbnQ2NF90IF9zd2FwNjRtZF94ID0gKHgpOwkJCQkJXAotICAgICh1aW50NjRfdCkgX19zd2FwMzJtZChfc3dhcDY0bWRfeCA+PiAzMikgfAkJCVwKLSAgICAgICAgKHVpbnQ2NF90KSBfX3N3YXAzMm1kKF9zd2FwNjRtZF94ICYgMHhmZmZmZmZmZikgPDwgMzI7CVwKLX0pCi0KLS8qIFRlbGwgc3lzL2VuZGlhbi5oIHdlIGhhdmUgTUQgdmFyaWFudHMgb2YgdGhlIHN3YXAgbWFjcm9zLiAgKi8KLSNkZWZpbmUgTURfU1dBUAotCi0jZW5kaWYgIC8qIF9fbWlwczMycjJfXyAqLwotI2VuZGlmICAvKiBfX0dOVUNfXyAqLwotCi0jaWYgZGVmaW5lZChfX01JUFNFQl9fKQotI2RlZmluZSBfQllURV9PUkRFUiBfQklHX0VORElBTgotI2Vsc2UKLSNkZWZpbmUgX0JZVEVfT1JERVIgX0xJVFRMRV9FTkRJQU4KLSNlbmRpZgotI2RlZmluZSBfX1NUUklDVF9BTElHTk1FTlQKLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxzeXMvZW5kaWFuLmg+Ci0KLSNlbmRpZiAvKiBfTUlQUzY0X0VORElBTl9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL2V4ZWMuaCBiL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9leGVjLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNjNjNmNzQuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL2V4ZWMuaAorKysgL2Rldi9udWxsCkBAIC0xLDE4OCArMCwwIEBACi0vKgkkT3BlbkJTRDogZXhlYy5oLHYgMS4xIDIwMDQvMTAvMTggMTk6MDU6MzYgZ3JhbmdlIEV4cCAkCSovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTYtMjAwNCBQZXIgRm9nZWxzdHJvbSwgT3BzeWNvbiBBQgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTCi0gKiBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICoKLSAqLwotCi0jaWZuZGVmIF9NSVBTNjRfRVhFQ19IXwotI2RlZmluZSBfTUlQUzY0X0VYRUNfSF8KLQotI2RlZmluZQlfX0xEUEdTWgk0MDk2Ci0KLS8qCi0gKiAgRGVmaW5lIHdoYXQgZXhlYyAiZm9ybWF0cyIgd2Ugc2hvdWxkIGhhbmRsZS4KLSAqLwotI2RlZmluZSBOQVRJVkVfRVhFQ19FTEYKLSNkZWZpbmUgTkFUSVZFX0VMRlNJWkUgNjQKLSNkZWZpbmUJRVhFQ19TQ1JJUFQKLQotLyoKLSAqICBJZiBpbmNsdWRlZCBmcm9tIHN5cy9leGVjLmggZGVmaW5lIGtlcm5lbHMgRUxGIGZvcm1hdC4KLSAqLwotI2lmZGVmIF9fTFA2NF9fCi0jZGVmaW5lCUFSQ0hfRUxGU0laRSA2NAotI2RlZmluZSBEQl9FTEZTSVpFIDY0Ci0jZGVmaW5lIEVMRl9UQVJHX0NMQVNTICBFTEZDTEFTUzY0Ci0jZWxzZQotI2RlZmluZQlBUkNIX0VMRlNJWkUgMzIKLSNkZWZpbmUgREJfRUxGU0laRSAzMgotI2RlZmluZSBFTEZfVEFSR19DTEFTUyAgRUxGQ0xBU1MzMgotI2VuZGlmCi0KLSNpZiBkZWZpbmVkKF9fTUlQU0VCX18pCi0jZGVmaW5lIEVMRl9UQVJHX0RBVEEJCUVMRkRBVEEyTVNCCi0jZWxzZQotI2RlZmluZSBFTEZfVEFSR19EQVRBCQlFTEZEQVRBMkxTQgotI2VuZGlmCi0jZGVmaW5lIEVMRl9UQVJHX01BQ0gJCUVNX01JUFMKLQotI2RlZmluZSBfTkxJU1RfRE9fRUxGCi0KLSNpZiBkZWZpbmVkKF9MUDY0KQotI2RlZmluZSBfS0VSTl9ET19FTEY2NAotI2lmIGRlZmluZWQoQ09NUEFUX08zMikKLSNkZWZpbmUgX0tFUk5fRE9fRUxGCi0jZW5kaWYKLSNlbHNlCi0jZGVmaW5lIF9LRVJOX0RPX0VMRgotI2VuZGlmCi0KLS8qIEluZm9ybWF0aW9uIHRha2VuIGZyb20gTUlQUyBBQkkgc3VwcGxlbWVudGFsICovCi0KLS8qIEFyY2hpdGVjdHVyZSBkZXBlbmRlbnQgU2VnbWVudCB0eXBlcyAtIHBfdHlwZSAqLwotI2RlZmluZSBQVF9NSVBTX1JFR0lORk8gMHg3MDAwMDAwMCAgICAgIC8qIFJlZ2lzdGVyIHVzYWdlIGluZm9ybWF0aW9uICovCi0KLS8qIEFyY2hpdGVjdHVyZSBkZXBlbmRlbnQgZF90YWcgZmllbGQgZm9yIEVsZjMyX0R5bi4gICovCi0jZGVmaW5lIERUX01JUFNfUkxEX1ZFUlNJT04gIDB4NzAwMDAwMDEgLyogUnVudGltZSBMaW5rZXIgSW50ZXJmYWNlIElEICovCi0jZGVmaW5lIERUX01JUFNfVElNRV9TVEFNUCAgIDB4NzAwMDAwMDIgLyogVGltZXN0YW1wICovCi0jZGVmaW5lIERUX01JUFNfSUNIRUNLU1VNICAgIDB4NzAwMDAwMDMgLyogQ2tzdW0gb2YgZXh0LiBzdHIuIGFuZCBjb20uIHNpemVzICovCi0jZGVmaW5lIERUX01JUFNfSVZFUlNJT04gICAgIDB4NzAwMDAwMDQgLyogVmVyc2lvbiBzdHJpbmcgKHN0cmluZyB0YmwgaW5kZXgpICovCi0jZGVmaW5lIERUX01JUFNfRkxBR1MgICAgICAgIDB4NzAwMDAwMDUgLyogRmxhZ3MgKi8KLSNkZWZpbmUgRFRfTUlQU19CQVNFX0FERFJFU1MgMHg3MDAwMDAwNiAvKiBTZWdtZW50IGJhc2UgYWRkcmVzcyAqLwotI2RlZmluZSBEVF9NSVBTX0NPTkZMSUNUICAgICAweDcwMDAwMDA4IC8qIEFkciBvZiAuY29uZmxpY3Qgc2VjdGlvbiAqLwotI2RlZmluZSBEVF9NSVBTX0xJQkxJU1QgICAgICAweDcwMDAwMDA5IC8qIEFkZHJlc3Mgb2YgLmxpYmxpc3Qgc2VjdGlvbiAqLwotI2RlZmluZSBEVF9NSVBTX0xPQ0FMX0dPVE5PICAweDcwMDAwMDBhIC8qIE51bWJlciBvZiBsb2NhbCAuR09UIGVudHJpZXMgKi8KLSNkZWZpbmUgRFRfTUlQU19DT05GTElDVE5PICAgMHg3MDAwMDAwYiAvKiBOdW1iZXIgb2YgLmNvbmZsaWN0IGVudHJpZXMgKi8KLSNkZWZpbmUgRFRfTUlQU19MSUJMSVNUTk8gICAgMHg3MDAwMDAxMCAvKiBOdW1iZXIgb2YgLmxpYmxpc3QgZW50cmllcyAqLwotI2RlZmluZSBEVF9NSVBTX1NZTVRBQk5PICAgICAweDcwMDAwMDExIC8qIE51bWJlciBvZiAuZHluc3ltIGVudHJpZXMgKi8KLSNkZWZpbmUgRFRfTUlQU19VTlJFRkVYVE5PICAgMHg3MDAwMDAxMiAvKiBGaXJzdCBleHRlcm5hbCBEWU5TWU0gKi8KLSNkZWZpbmUgRFRfTUlQU19HT1RTWU0gICAgICAgMHg3MDAwMDAxMyAvKiBGaXJzdCBHT1QgZW50cnkgaW4gLmR5bnN5bSAqLwotI2RlZmluZSBEVF9NSVBTX0hJUEFHRU5PICAgICAweDcwMDAwMDE0IC8qIE51bWJlciBvZiBHT1QgcGFnZSB0YWJsZSBlbnRyaWVzICovCi0jZGVmaW5lIERUX01JUFNfUkxEX01BUCAgICAgIDB4NzAwMDAwMTYgLyogQWRkcmVzcyBvZiBkZWJ1ZyBtYXAgcG9pbnRlciAqLwotCi0jZGVmaW5lIERUX1BST0NOVU0gKERUX01JUFNfUkxEX01BUCAtIERUX0xPUFJPQyArIDEpCi0KLS8qCi0gKiBMZWdhbCB2YWx1ZXMgZm9yIGVfZmxhZ3MgZmllbGQgb2YgRWxmMzJfRWhkci4KLSAqLwotI2RlZmluZSBFRl9NSVBTX05PUkVPUkRFUgkweDAwMDAwMDAxCS8qIC5ub3Jlb3JkZXIgd2FzIHVzZWQgKi8KLSNkZWZpbmUgRUZfTUlQU19QSUMJCTB4MDAwMDAwMDIJLyogQ29udGFpbnMgUElDIGNvZGUgKi8KLSNkZWZpbmUgRUZfTUlQU19DUElDCQkweDAwMDAwMDA0CS8qIFVzZXMgUElDIGNhbGxpbmcgc2VxdWVuY2UgKi8KLSNkZWZpbmUJRUZfTUlQU19BQkkyCQkweDAwMDAwMDIwCS8qIC1uMzIgb24gSXJpeCA2ICovCi0jZGVmaW5lCUVGX01JUFNfMzJCSVRNT0RFCTB4MDAwMDAxMDAJLyogNjQgYml0IGluIDMyIGJpdCBtb2RlLi4uICovCi0jZGVmaW5lIEVGX01JUFNfQVJDSAkJMHhmMDAwMDAwMAkvKiBNSVBTIGFyY2hpdGVjdHVyZSBsZXZlbCAqLwotI2RlZmluZQlFX01JUFNfQVJDSF8xCQkweDAwMDAwMDAwCi0jZGVmaW5lCUVfTUlQU19BUkNIXzIJCTB4MTAwMDAwMDAKLSNkZWZpbmUJRV9NSVBTX0FSQ0hfMwkJMHgyMDAwMDAwMAotI2RlZmluZQlFX01JUFNfQVJDSF80CQkweDMwMDAwMDAwCi0jZGVmaW5lCUVGX01JUFNfQUJJCQkweDAwMDBmMDAwCS8qIEFCSSBsZXZlbCAqLwotI2RlZmluZQlFX01JUFNfQUJJX05PTkUJCTB4MDAwMDAwMDAJLyogQUJJIGxldmVsIG5vdCBzZXQgKi8KLSNkZWZpbmUJRV9NSVBTX0FCSV9PMzIJCTB4MDAwMDEwMDAKLSNkZWZpbmUJRV9NSVBTX0FCSV9PNjQJCTB4MDAwMDIwMDAKLSNkZWZpbmUJRV9NSVBTX0FCSV9FQUJJMzIJMHgwMDAwNDAwMAotI2RlZmluZQlFX01JUFNfQUJJX0VBQkk2NAkweDAwMDA0MDAwCi0KLS8qCi0gKiBNaXBzIHNwZWNpYWwgc2VjdGlvbnMuCi0gKi8KLSNkZWZpbmUJU0hOX01JUFNfQUNPTU1PTgkweGZmMDAJCS8qIEFsbG9jYXRlZCBjb21tb24gc3ltYm9scyAqLwotI2RlZmluZQlTSE5fTUlQU19TQ09NTU9OCTB4ZmYwMwkJLyogU21hbGwgY29tbW9uIHN5bWJvbHMgKi8KLSNkZWZpbmUJU0hOX01JUFNfU1VOREVGSU5FRAkweGZmMDQJCS8qIFNtYWxsIHVuZGVmaW5lZCBzeW1ib2xzICovCi0KLS8qCi0gKiBMZWdhbCB2YWx1ZXMgZm9yIHNoX3R5cGUgZmllbGQgb2YgRWxmMzJfU2hkci4KLSAqLwotI2RlZmluZQlTSFRfTUlQU19MSUJMSVNUICAweDcwMDAwMDAwCS8qIFNoYXJlZCBvYmplY3RzIHVzZWQgaW4gbGluayAqLwotI2RlZmluZQlTSFRfTUlQU19DT05GTElDVCAweDcwMDAwMDAyCS8qIENvbmZsaWN0aW5nIHN5bWJvbHMgKi8KLSNkZWZpbmUJU0hUX01JUFNfR1BUQUIgICAgMHg3MDAwMDAwMwkvKiBHbG9iYWwgZGF0YSBhcmVhIHNpemVzICovCi0jZGVmaW5lCVNIVF9NSVBTX1VDT0RFICAgIDB4NzAwMDAwMDQJLyogUmVzZXJ2ZWQgZm9yIFNHSS9NSVBTIGNvbXBpbGVycyAqLwotI2RlZmluZQlTSFRfTUlQU19ERUJVRyAgICAweDcwMDAwMDA1CS8qIE1JUFMgRUNPRkYgZGVidWdnaW5nIGluZm9ybWF0aW9uICovCi0jZGVmaW5lCVNIVF9NSVBTX1JFR0lORk8gIDB4NzAwMDAwMDYJLyogUmVnaXN0ZXIgdXNhZ2UgaW5mb3JtYXRpb24gKi8KLQotLyoKLSAqIExlZ2FsIHZhbHVlcyBmb3Igc2hfZmxhZ3MgZmllbGQgb2YgRWxmMzJfU2hkci4KLSAqLwotI2RlZmluZQlTSEZfTUlQU19HUFJFTAkweDEwMDAwMDAwCS8qIE11c3QgYmUgcGFydCBvZiBnbG9iYWwgZGF0YSBhcmVhICovCi0KLSNpZiAwCi0vKgotICogRW50cmllcyBmb3VuZCBpbiBzZWN0aW9ucyBvZiB0eXBlIFNIVF9NSVBTX0dQVEFCLgotICovCi10eXBlZGVmIHVuaW9uIHsKLQlzdHJ1Y3QgewotCQlFbGYzMl9Xb3JkIGd0X2N1cnJlbnRfZ192YWx1ZTsJLyogLUcgdmFsIHVzZWQgaW4gY29tcGlsYXRpb24gKi8KLQkJRWxmMzJfV29yZCBndF91bnVzZWQ7CS8qIE5vdCB1c2VkICovCi0JfSBndF9oZWFkZXI7CQkJLyogRmlyc3QgZW50cnkgaW4gc2VjdGlvbiAqLwotCXN0cnVjdCB7Ci0JCUVsZjMyX1dvcmQgZ3RfZ192YWx1ZTsJLyogSWYgdGhpcyB2YWwgd2VyZSB1c2VkIGZvciAtRyAqLwotCQlFbGYzMl9Xb3JkIGd0X2J5dGVzOwkvKiBUaGlzIG1hbnkgYnl0ZXMgd291bGQgYmUgdXNlZCAqLwotCX0gZ3RfZW50cnk7CQkJLyogU3Vic2VxdWVudCBlbnRyaWVzIGluIHNlY3Rpb24gKi8KLX0gRWxmMzJfZ3B0YWI7Ci0KLS8qCi0gKiBFbnRyeSBmb3VuZCBpbiBzZWN0aW9ucyBvZiB0eXBlIFNIVF9NSVBTX1JFR0lORk8uCi0gKi8KLXR5cGVkZWYgc3RydWN0IHsKLQlFbGYzMl9Xb3JkCXJpX2dwcm1hc2s7CS8qIEdlbmVyYWwgcmVnaXN0ZXJzIHVzZWQgKi8KLQlFbGYzMl9Xb3JkCXJpX2Nwcm1hc2tbNF07CS8qIENvcHJvY2Vzc29yIHJlZ2lzdGVycyB1c2VkICovCi0JRWxmMzJfU3dvcmQJcmlfZ3BfdmFsdWU7CS8qICRncCByZWdpc3RlciB2YWx1ZSAqLwotfSBFbGYzMl9SZWdJbmZvOwotI2VuZGlmCi0KLQotLyoKLSAqIE1pcHMgcmVsb2NhdGlvbnMuCi0gKi8KLQotI2RlZmluZQlSX01JUFNfTk9ORQkwCS8qIE5vIHJlbG9jICovCi0jZGVmaW5lCVJfTUlQU18xNgkxCS8qIERpcmVjdCAxNiBiaXQgKi8KLSNkZWZpbmUJUl9NSVBTXzMyCTIJLyogRGlyZWN0IDMyIGJpdCAqLwotI2RlZmluZQlSX01JUFNfUkVMMzIJMwkvKiBQQyByZWxhdGl2ZSAzMiBiaXQgKi8KLSNkZWZpbmUJUl9NSVBTXzI2CTQJLyogRGlyZWN0IDI2IGJpdCBzaGlmdGVkICovCi0jZGVmaW5lCVJfTUlQU19ISTE2CTUJLyogSGlnaCAxNiBiaXQgKi8KLSNkZWZpbmUJUl9NSVBTX0xPMTYJNgkvKiBMb3cgMTYgYml0ICovCi0jZGVmaW5lCVJfTUlQU19HUFJFTDE2CTcJLyogR1AgcmVsYXRpdmUgMTYgYml0ICovCi0jZGVmaW5lCVJfTUlQU19MSVRFUkFMCTgJLyogMTYgYml0IGxpdGVyYWwgZW50cnkgKi8KLSNkZWZpbmUJUl9NSVBTX0dPVDE2CTkJLyogMTYgYml0IEdPVCBlbnRyeSAqLwotI2RlZmluZQlSX01JUFNfUEMxNgkxMAkvKiBQQyByZWxhdGl2ZSAxNiBiaXQgKi8KLSNkZWZpbmUJUl9NSVBTX0NBTEwxNgkxMQkvKiAxNiBiaXQgR09UIGVudHJ5IGZvciBmdW5jdGlvbiAqLwotI2RlZmluZQlSX01JUFNfR1BSRUwzMgkxMgkvKiBHUCByZWxhdGl2ZSAzMiBiaXQgKi8KLQotI2RlZmluZQlSX01JUFNfNjQJMTgKLQotI2RlZmluZQlSX01JUFNfUkVMMzJfNjQJKChSX01JUFNfNjQgPDwgOCkgfCBSX01JUFNfUkVMMzIpCi0KLQotI2VuZGlmCS8qICFfTUlQUzY0X0VYRUNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9yZWdkZWYuaCBiL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9yZWdkZWYuaAppbmRleCBhZTE4MzkyLi4zYTdjZDY4IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvcmVnZGVmLmgKKysrIGIvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL3JlZ2RlZi5oCkBAIC0zNyw2ICszNywxMyBAQAogI2lmbmRlZiBfTUlQU19SRUdERUZfSF8KICNkZWZpbmUgX01JUFNfUkVHREVGX0hfCiAKKyNpZiAoX01JUFNfU0lNID09IF9BQkk2NCkgJiYgIWRlZmluZWQoX19taXBzX242NCkKKyNkZWZpbmUgX19taXBzX242NCAxCisjZW5kaWYKKyNpZiAoX01JUFNfU0lNID09IF9BQklOMzIpICYmICAhZGVmaW5lZChfX21pcHNfbjMyKQorI2RlZmluZSBfX21pcHNfbjMyIDEKKyNlbmRpZgorCiAjZGVmaW5lIHplcm8JJDAJLyogYWx3YXlzIHplcm8gKi8KICNkZWZpbmUgQVQJJGF0CS8qIGFzc2VtYmxlciB0ZW1wICovCiAjZGVmaW5lIHYwCSQyCS8qIHJldHVybiB2YWx1ZSAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL3JlZ251bS5oIGIvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL3JlZ251bS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiZmUxMjgwLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9yZWdudW0uaAorKysgL2Rldi9udWxsCkBAIC0xLDExOSArMCwwIEBACi0vKgkkT3BlbkJTRDogcmVnbnVtLmgsdiAxLjMgMjAwNC8wOC8xMCAyMDoyODoxMyBkZXJhYWR0IEV4cCAkICovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAwMiBPcHN5Y29uIEFCICAod3d3Lm9wc3ljb24uc2UgLyB3d3cub3BzeWNvbi5jb20pCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MKLSAqIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKgotICovCi0KLSNpZm5kZWYgX01JUFM2NF9SRUdOVU1fSF8KLSNkZWZpbmUgX01JUFM2NF9SRUdOVU1fSF8KLQotLyoKLSAqIExvY2F0aW9uIG9mIHRoZSBzYXZlZCByZWdpc3RlcnMgcmVsYXRpdmUgdG8gWkVSTy4KLSAqIFVzYWdlIGlzIHAtPnBfcmVnc1tYWF0uCi0gKi8KLSNkZWZpbmUgWkVSTwkwCi0jZGVmaW5lIEFTVAkxCi0jZGVmaW5lIFYwCTIKLSNkZWZpbmUgVjEJMwotI2RlZmluZSBBMAk0Ci0jZGVmaW5lIEExCTUKLSNkZWZpbmUgQTIJNgotI2RlZmluZSBBMwk3Ci0jZGVmaW5lIFQwCTgKLSNkZWZpbmUgVDEJOQotI2RlZmluZSBUMgkxMAotI2RlZmluZSBUMwkxMQotI2RlZmluZSBUNAkxMgotI2RlZmluZSBUNQkxMwotI2RlZmluZSBUNgkxNAotI2RlZmluZSBUNwkxNQotI2RlZmluZSBTMAkxNgotI2RlZmluZSBTMQkxNwotI2RlZmluZSBTMgkxOAotI2RlZmluZSBTMwkxOQotI2RlZmluZSBTNAkyMAotI2RlZmluZSBTNQkyMQotI2RlZmluZSBTNgkyMgotI2RlZmluZSBTNwkyMwotI2RlZmluZSBUOAkyNAotI2RlZmluZSBUOQkyNQotI2RlZmluZSBLMAkyNgotI2RlZmluZSBLMQkyNwotI2RlZmluZSBHUAkyOAotI2RlZmluZSBTUAkyOQotI2RlZmluZSBTOAkzMAotI2RlZmluZSBSQQkzMQotI2RlZmluZQlTUgkzMgotI2RlZmluZQlQUwlTUgkvKiBhbGlhcyBmb3IgU1IgKi8KLSNkZWZpbmUgTVVMTE8JMzMKLSNkZWZpbmUgTVVMSEkJMzQKLSNkZWZpbmUgQkFEVkFERFIgMzUKLSNkZWZpbmUgQ0FVU0UJMzYKLSNkZWZpbmUJUEMJMzcKLSNkZWZpbmUJSUMJMzgKLSNkZWZpbmUJQ1BMCTM5Ci0KLSNkZWZpbmUJTlVNU0FWRVJFR1MgNDAJCS8qIE51bWJlciBvZiByZWdpc3RlcnMgc2F2ZWQgaW4gdHJhcCAqLwotCi0jZGVmaW5lIEZQQkFTRQlOVU1TQVZFUkVHUwotI2RlZmluZSBGMAkoRlBCQVNFKzApCi0jZGVmaW5lIEYxCShGUEJBU0UrMSkKLSNkZWZpbmUgRjIJKEZQQkFTRSsyKQotI2RlZmluZSBGMwkoRlBCQVNFKzMpCi0jZGVmaW5lIEY0CShGUEJBU0UrNCkKLSNkZWZpbmUgRjUJKEZQQkFTRSs1KQotI2RlZmluZSBGNgkoRlBCQVNFKzYpCi0jZGVmaW5lIEY3CShGUEJBU0UrNykKLSNkZWZpbmUgRjgJKEZQQkFTRSs4KQotI2RlZmluZSBGOQkoRlBCQVNFKzkpCi0jZGVmaW5lIEYxMAkoRlBCQVNFKzEwKQotI2RlZmluZSBGMTEJKEZQQkFTRSsxMSkKLSNkZWZpbmUgRjEyCShGUEJBU0UrMTIpCi0jZGVmaW5lIEYxMwkoRlBCQVNFKzEzKQotI2RlZmluZSBGMTQJKEZQQkFTRSsxNCkKLSNkZWZpbmUgRjE1CShGUEJBU0UrMTUpCi0jZGVmaW5lIEYxNgkoRlBCQVNFKzE2KQotI2RlZmluZSBGMTcJKEZQQkFTRSsxNykKLSNkZWZpbmUgRjE4CShGUEJBU0UrMTgpCi0jZGVmaW5lIEYxOQkoRlBCQVNFKzE5KQotI2RlZmluZSBGMjAJKEZQQkFTRSsyMCkKLSNkZWZpbmUgRjIxCShGUEJBU0UrMjEpCi0jZGVmaW5lIEYyMgkoRlBCQVNFKzIyKQotI2RlZmluZSBGMjMJKEZQQkFTRSsyMykKLSNkZWZpbmUgRjI0CShGUEJBU0UrMjQpCi0jZGVmaW5lIEYyNQkoRlBCQVNFKzI1KQotI2RlZmluZSBGMjYJKEZQQkFTRSsyNikKLSNkZWZpbmUgRjI3CShGUEJBU0UrMjcpCi0jZGVmaW5lIEYyOAkoRlBCQVNFKzI4KQotI2RlZmluZSBGMjkJKEZQQkFTRSsyOSkKLSNkZWZpbmUgRjMwCShGUEJBU0UrMzApCi0jZGVmaW5lIEYzMQkoRlBCQVNFKzMxKQotI2RlZmluZQlGU1IJKEZQQkFTRSszMikKLQotI2RlZmluZQlOVU1GUFJFR1MgMzMKLQotI2RlZmluZQlOUkVHUwkoTlVNU0FWRVJFR1MgKyBOVU1GUFJFR1MpCi0KLSNlbmRpZiAvKiAhX01JUFM2NF9SRUdOVU1fSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9zZXRqbXAuaCBiL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9zZXRqbXAuaAppbmRleCA1NWJhN2JlLi40MDY3ZDUxIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwcy9pbmNsdWRlL21hY2hpbmUvc2V0am1wLmgKKysrIGIvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oCkBAIC01LDYgKzUsMTEgQEAKICNpZm5kZWYgX01JUFNfU0VUSk1QX0hfCiAjZGVmaW5lIF9NSVBTX1NFVEpNUF9IXwogCi0jZGVmaW5lCV9KQkxFTgkxNTcJCS8qIHNpemUsIGluIGxvbmdzLCBvZiBhIGptcF9idWYgKi8KKyNpZmRlZiBfX0xQNjRfXworI2RlZmluZQlfSkJMRU4JMjUJLyogc2l6ZSwgaW4gOC1ieXRlIGxvbmdzLCBvZiBhIG1pcHM2NCBqbXBfYnVmL3NpZ2ptcF9idWYgKi8KKyNlbHNlCisjZGVmaW5lCV9KQkxFTgkxNTcJLyogaGlzdG9yaWNhbCBzaXplLCBpbiA0LWJ5dGUgbG9uZ3MsIG9mIGEgbWlwczMyIGptcF9idWYgKi8KKwkJCS8qIGFjdHVhbCB1c2VkIHNpemUgaXMgMzQgKi8KKyNlbmRpZgogCiAjZW5kaWYgLyogIV9NSVBTX1NFVEpNUF9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL3NpZ25hbC5oIGIvbGliYy9hcmNoLW1pcHMvaW5jbHVkZS9tYWNoaW5lL3NpZ25hbC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiMzE3MTVjLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvbWFjaGluZS9zaWduYWwuaAorKysgL2Rldi9udWxsCkBAIC0xLDUxICswLDAgQEAKLS8qCSRPcGVuQlNEOiBzaWduYWwuaCx2IDEuOCAyMDA2LzAxLzA5IDE4OjE4OjM3IG1pbGxlcnQgRXhwICQJKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMTk5MiwgMTk5MwotICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQotICogUmFscGggQ2FtcGJlbGwuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCi0gKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAotICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICoKLSAqCUAoIylzaWduYWwuaAk4LjEgKEJlcmtlbGV5KSA2LzEwLzkzCi0gKi8KLQotI2lmbmRlZiBfTUlQU19TSUdOQUxfSF8KLSNkZWZpbmUgX01JUFNfU0lHTkFMX0hfCi0KLSNkZWZpbmUJU0NfUkVHTUFTSwkoMCpSRUdTWikKLSNkZWZpbmUJU0NfU1RBVFVTCSgxKlJFR1NaKQotI2RlZmluZQlTQ19QQwkJKDIqUkVHU1opCi0jZGVmaW5lCVNDX1JFR1MJCShTQ19QQys4KQotI2RlZmluZQlTQ19GUFJFR1MJKFNDX1JFR1MrMzIqOCkKLSNkZWZpbmUJU0NfQUNYCQkoU0NfRlBSRUdTKzMyKlJFR1NaX0ZQKQotI2RlZmluZQlTQ19VU0VEX01BVEgJKFNDX0FDWCszKlJFR1NaKQotLyogT3BlbkJTRCBjb21wYXRpYmlsaXR5ICovCi0jZGVmaW5lCVNDX01BU0sJCVNDX1JFR01BU0sKLSNkZWZpbmUJU0NfRlBVU0VECVNDX1VTRURfTUFUSAotCi0jZW5kaWYJLyogIV9NSVBTX1NJR05BTF9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3NnaWRlZnMuaCBiL2xpYmMvYXJjaC1taXBzL2luY2x1ZGUvc2dpZGVmcy5oCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBsaWJjL2luY2x1ZGUvc2dpZGVmcy5oCnJlbmFtZSB0byBsaWJjL2FyY2gtbWlwcy9pbmNsdWRlL3NnaWRlZnMuaApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvbWlwcy5tayBiL2xpYmMvYXJjaC1taXBzL21pcHMubWsKaW5kZXggYWM3NWE0Yi4uMzNlY2VhYiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHMvbWlwcy5taworKysgYi9saWJjL2FyY2gtbWlwcy9taXBzLm1rCkBAIC0xLDM2ICsxLDE1IEBACiAjIDMyLWJpdCBtaXBzLgogCiAjCi0jIFZhcmlvdXMga2luZHMgb2YgTFAzMiBjcnVmdC4KLSMKLQotbGliY19iaW9uaWNfc3JjX2ZpbGVzX21pcHMgKz0gXAotICAgIGJpb25pYy9tbWFwLmNwcCBcCi0KLWxpYmNfY29tbW9uX3NyY19maWxlc19taXBzICs9IFwKLSAgICBiaW9uaWMvbGVnYWN5XzMyX2JpdF9zdXBwb3J0LmNwcCBcCi0gICAgYmlvbmljL25ka19jcnVmdC5jcHAgXAotICAgIGJpb25pYy90aW1lNjQuYyBcCi0KLWxpYmNfbmV0YnNkX3NyY19maWxlc19taXBzICs9IFwKLSAgICB1cHN0cmVhbS1uZXRic2QvY29tbW9uL2xpYi9saWJjL2hhc2gvc2hhMS9zaGExLmMgXAotCi1saWJjX29wZW5ic2Rfc3JjX2ZpbGVzX21pcHMgKz0gXAotICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vcHV0dy5jIFwKLQotIwogIyBEZWZhdWx0IGltcGxlbWVudGF0aW9ucyBvZiBmdW5jdGlvbnMgdGhhdCBhcmUgY29tbW9ubHkgb3B0aW1pemVkLgogIwogCiBsaWJjX2Jpb25pY19zcmNfZmlsZXNfbWlwcyArPSBcCisgICAgYXJjaC1taXBzL3N0cmluZy9tZW1jbXAuYyBcCiAgICAgYmlvbmljL19fbWVtY3B5X2Noay5jcHAgXAogICAgIGJpb25pYy9fX21lbXNldF9jaGsuY3BwIFwKICAgICBiaW9uaWMvX19zdHJjcHlfY2hrLmNwcCBcCiAgICAgYmlvbmljL19fc3RyY2F0X2Noay5jcHAgXAotICAgIGJpb25pYy9tZW1jaHIuYyBcCi0gICAgYmlvbmljL21lbWNtcC5jIFwKLSAgICBiaW9uaWMvbWVtbW92ZS5jIFwKLSAgICBiaW9uaWMvbWVtcmNoci5jIFwKICAgICBiaW9uaWMvc3RyY2hyLmNwcCBcCiAgICAgYmlvbmljL3N0cm5sZW4uYyBcCiAgICAgYmlvbmljL3N0cnJjaHIuY3BwIFwKQEAgLTQ2LDcgKzI1LDkgQEAKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0cmluZy93bWVtbW92ZS5jIFwKIAogbGliY19vcGVuYnNkX3NyY19maWxlc19taXBzICs9IFwKLSAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9iY29weS5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9tZW1jaHIuYyBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtbW92ZS5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9tZW1yY2hyLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cGNweS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHBuY3B5LmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cmNhdC5jIFwKQEAgLTY3LDkgKzQ4LDcgQEAKICAgICBhcmNoLW1pcHMvYmlvbmljL2J6ZXJvLlMgXAogICAgIGFyY2gtbWlwcy9iaW9uaWMvY2FjaGVmbHVzaC5jcHAgXAogICAgIGFyY2gtbWlwcy9iaW9uaWMvX2V4aXRfd2l0aF9zdGFja190ZWFyZG93bi5TIFwKLSAgICBhcmNoLW1pcHMvYmlvbmljL19zZXRqbXAuUyBcCiAgICAgYXJjaC1taXBzL2Jpb25pYy9zZXRqbXAuUyBcCi0gICAgYXJjaC1taXBzL2Jpb25pYy9zaWdzZXRqbXAuUyBcCiAgICAgYXJjaC1taXBzL2Jpb25pYy9zeXNjYWxsLlMgXAogICAgIGFyY2gtbWlwcy9iaW9uaWMvdmZvcmsuUyBcCiAKQEAgLTgxLDExICs2MCw5IEBACiAKIGVsc2UKIGxpYmNfYmlvbmljX3NyY19maWxlc19taXBzICs9IFwKLSAgICBiaW9uaWMvbWVtY3B5LmNwcCBcCi0gICAgYmlvbmljL21lbXNldC5jIFwKLQotbGliY19vcGVuYnNkX3NyY19maWxlc19taXBzICs9IFwKLSAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJsZW4uYyBcCisgICAgYXJjaC1taXBzL3N0cmluZy9tZW1jcHkuYyBcCisgICAgYXJjaC1taXBzL3N0cmluZy9tZW1zZXQuYyBcCisgICAgYXJjaC1taXBzL3N0cmluZy9zdHJsZW4uYyBcCiAKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL21lbWNtcC5jIGIvbGliYy9hcmNoLW1pcHMvc3RyaW5nL21lbWNtcC5jCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBsaWJjL2Jpb25pYy9tZW1jbXAuYwpyZW5hbWUgdG8gbGliYy9hcmNoLW1pcHMvc3RyaW5nL21lbWNtcC5jCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zdHJpbmcvbWVtY3B5LmMgYi9saWJjL2FyY2gtbWlwcy9zdHJpbmcvbWVtY3B5LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTU1MWE2ZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N0cmluZy9tZW1jcHkuYwpAQCAtMCwwICsxLDkxIEBACisvKgkkT3BlbkJTRDogbWVtY3B5LmMsdiAxLjEgMjAxNC8xMS8zMCAxOTo0Mzo1NiBkZXJhYWR0IEV4cCAkICovCisvKi0KKyAqIENvcHlyaWdodCAoYykgMTk5MCBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1dGVkIHRvIEJlcmtlbGV5IGJ5CisgKiBDaHJpcyBUb3Jlay4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN5c2xvZy5oPgorCisvKgorICogc2l6ZW9mKHdvcmQpIE1VU1QgQkUgQSBQT1dFUiBPRiBUV08KKyAqIFNPIFRIQVQgd21hc2sgQkVMT1cgSVMgQUxMIE9ORVMKKyAqLwordHlwZWRlZglsb25nIHdvcmQ7CQkvKiAid29yZCIgdXNlZCBmb3Igb3B0aW1hbCBjb3B5IHNwZWVkICovCisKKyNkZWZpbmUJd3NpemUJc2l6ZW9mKHdvcmQpCisjZGVmaW5lCXdtYXNrCSh3c2l6ZSAtIDEpCisKKy8qCisgKiBDb3B5IGEgYmxvY2sgb2YgbWVtb3J5LCBub3QgaGFuZGxpbmcgb3ZlcmxhcC4KKyAqLwordm9pZCAqCittZW1jcHkodm9pZCAqZHN0MCwgY29uc3Qgdm9pZCAqc3JjMCwgc2l6ZV90IGxlbmd0aCkKK3sKKwljaGFyICpkc3QgPSBkc3QwOworCWNvbnN0IGNoYXIgKnNyYyA9IHNyYzA7CisJc2l6ZV90IHQ7CisKKwlpZiAobGVuZ3RoID09IDAgfHwgZHN0ID09IHNyYykJCS8qIG5vdGhpbmcgdG8gZG8gKi8KKwkJZ290byBkb25lOworCisJLyoKKwkgKiBNYWNyb3M6IGxvb3AtdC10aW1lczsgYW5kIGxvb3AtdC10aW1lcywgdD4wCisJICovCisjZGVmaW5lCVRMT09QKHMpIGlmICh0KSBUTE9PUDEocykKKyNkZWZpbmUJVExPT1AxKHMpIGRvIHsgczsgfSB3aGlsZSAoLS10KQorCisJLyoKKwkgKiBDb3B5IGZvcndhcmQuCisJICovCisJdCA9IChsb25nKXNyYzsJLyogb25seSBuZWVkIGxvdyBiaXRzICovCisJaWYgKCh0IHwgKGxvbmcpZHN0KSAmIHdtYXNrKSB7CisJCS8qCisJCSAqIFRyeSB0byBhbGlnbiBvcGVyYW5kcy4gIFRoaXMgY2Fubm90IGJlIGRvbmUKKwkJICogdW5sZXNzIHRoZSBsb3cgYml0cyBtYXRjaC4KKwkJICovCisJCWlmICgodCBeIChsb25nKWRzdCkgJiB3bWFzayB8fCBsZW5ndGggPCB3c2l6ZSkKKwkJCXQgPSBsZW5ndGg7CisJCWVsc2UKKwkJCXQgPSB3c2l6ZSAtICh0ICYgd21hc2spOworCQlsZW5ndGggLT0gdDsKKwkJVExPT1AxKCpkc3QrKyA9ICpzcmMrKyk7CisJfQorCS8qCisJICogQ29weSB3aG9sZSB3b3JkcywgdGhlbiBtb3AgdXAgYW55IHRyYWlsaW5nIGJ5dGVzLgorCSAqLworCXQgPSBsZW5ndGggLyB3c2l6ZTsKKwlUTE9PUCgqKHdvcmQgKilkc3QgPSAqKHdvcmQgKilzcmM7IHNyYyArPSB3c2l6ZTsgZHN0ICs9IHdzaXplKTsKKwl0ID0gbGVuZ3RoICYgd21hc2s7CisJVExPT1AoKmRzdCsrID0gKnNyYysrKTsKK2RvbmU6CisJcmV0dXJuIChkc3QwKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N0cmluZy9tZW1zZXQuUyBiL2xpYmMvYXJjaC1taXBzL3N0cmluZy9tZW1zZXQuUwppbmRleCAzZTYzMGNhLi4wOWI3NTZiIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwcy9zdHJpbmcvbWVtc2V0LlMKKysrIGIvbGliYy9hcmNoLW1pcHMvc3RyaW5nL21lbXNldC5TCkBAIC02Nyw4NiArNjcsNiBAQAogI2RlZmluZSBEQkcKICNlbmRpZgogCi0vKgotICogdm9pZCBfbWVtc2V0MTYodWludDE2X3QqIGRzdCwgdWludDE2X3QgdmFsdWUsIHNpemVfdCBzaXplKTsKLSAqLwotCi1MRUFGKF9tZW1zZXQxNiwwKQotCS5zZXQgbm9yZW9yZGVyCi1EQkcJLyogQ2hlY2sgcGFyYW1ldGVycyAqLwotREJHCWFuZGkJdDAsYTAsMQkJCSMgYTAgbXVzdCBiZSBoYWxmd29yZCBhbGlnbmVkCi1EQkcJdG5lCXQwLHplcm8KLURCRwlhbmRpCXQyLGEyLDEJCQkjIGEyIG11c3QgYmUgZXZlbgotREJHCXRuZQl0Mix6ZXJvCi0KLSNpZmRlZiBGSVhBUkdTCi0JIyBlbnN1cmUgY291bnQgaXMgZXZlbgotI2lmIChfX21pcHM9PTMyKSAmJiAoX19taXBzX2lzYV9yZXY+PTIpCi0JaW5zCWEyLHplcm8sMCwxCi0jZWxzZQotCW9yaQlhMiwxCi0JeG9yaQlhMiwxCi0jZW5kaWYKLSNlbmRpZgotCi0jaWYgKF9fbWlwcz09MzIpICYmIChfX21pcHNfaXNhX3Jldj49MikKLQlpbnMJYTEsYTEsMTYsMTYKLSNlbHNlCi0JYW5kaQlhMSwweGZmZmYKLQlzbGwJdDMsYTEsMTYKLQlvcglhMSx0MwotI2VuZGlmCi0KLQliZXF6CWEyLC5MZG9uZQotCSBhbmRpCXQxLGEwLDIKLQliZXF6CXQxLC5MYWxpZ25vawotCSBhZGR1CXQwLGEwLGEyCQkjIHQwIGlzIHRoZSAicGFzdCB0aGUgZW5kIiBhZGRyZXNzCi0Jc2gJYTEsMChhMCkJCSMgc3RvcmUgb25lIGhhbGZ3b3JkIHRvIGdldCBhbGlnbmVkCi0JYWRkdQlhMCwyCi0Jc3VidQlhMiwyCi0uTGFsaWdub2s6Ci0Jc2x0aQl0MSxhMiw0CQkJIyAuTGFsaWduZWQgZm9yIDQgb3IgbW9yZSBieXRlcwotCWJlcXoJdDEsLkxhbGlnbmVkCi0JIHNuZQl0MSxhMiwyCQkJIyBvbmUgbW9yZSBoYWxmd29yZD8KLQlibmV6CXQxLC5MZG9uZQotCSBub3AKLQlzaAlhMSwwKGEwKQotLkxkb25lOgotCWoJcmEKLQkgbm9wCi0JLnNldCByZW9yZGVyCi1FTkQoX21lbXNldDE2KQotCi0vKgotICogdm9pZCBfbWVtc2V0MzIodWludDMyX3QqIGRzdCwgdWludDMyX3QgdmFsdWUsIHNpemVfdCBzaXplKTsKLSAqLwotCi1MRUFGKF9tZW1zZXQzMiwwKQotCS5zZXQgbm9yZW9yZGVyCi1EQkcJLyogQ2hlY2sgcGFyYW1ldGVycyAqLwotREJHCWFuZGkJdDAsYTAsMwkJCSMgYTAgbXVzdCBiZSB3b3JkIGFsaWduZWQKLURCRwl0bmUJdDAsemVybwotREJHCWFuZGkJdDIsYTIsMwkJCSMgYTIgbXVzdCBiZSBhIG11bHRpcGxlIG9mIDQgYnl0ZXMKLURCRwl0bmUJdDIsemVybwotCi0jaWZkZWYgRklYQVJHUwotCSMgZW5zdXJlIGNvdW50IGlzIGEgbXVsdGlwbGUgb2YgNAotI2lmIChfX21pcHM9PTMyKSAmJiAoX19taXBzX2lzYV9yZXY+PTIpCi0JaW5zCSRhMiwkMCwwLDIKLSNlbHNlCi0Jb3JpCWEyLDMKLQl4b3JpCWEyLDMKLSNlbmRpZgotI2VuZGlmCi0KLQlibmV6CWEyLC5MYWxpZ25lZAkJIyBhbnkgd29yayB0byBkbz8KLQkgYWRkdQl0MCxhMCxhMgkJIyB0MCBpcyB0aGUgInBhc3QgdGhlIGVuZCIgYWRkcmVzcwotCi0JaglyYQotCSBub3AKLQkuc2V0IHJlb3JkZXIKLUVORChfbWVtc2V0MzIpCi0KIExFQUYobWVtc2V0LDApCiAKIAkuc2V0CW5vcmVvcmRlcgpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvbWVtc2V0LmMgYi9saWJjL2FyY2gtbWlwcy9zdHJpbmcvbWVtc2V0LmMKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIGxpYmMvYmlvbmljL21lbXNldC5jCnJlbmFtZSB0byBsaWJjL2FyY2gtbWlwcy9zdHJpbmcvbWVtc2V0LmMKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N0cmluZy9taXBzX3N0cmxlbi5jIGIvbGliYy9hcmNoLW1pcHMvc3RyaW5nL21pcHNfc3RybGVuLmMKaW5kZXggOWZiN2U2YS4uNDVmYzRiNCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHMvc3RyaW5nL21pcHNfc3RybGVuLmMKKysrIGIvbGliYy9hcmNoLW1pcHMvc3RyaW5nL21pcHNfc3RybGVuLmMKQEAgLTMwLDYgKzMwLDcgQEAKICAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgIm1pcHMtc3RyaW5nLW9wcy5oIgogCiAjZGVmaW5lIGRvX3N0cmxlbl93b3JkKF9fYXYpIHtcCkBAIC00Nyw4ICs0OCw4IEBACiAjZGVmaW5lIHN0cmxlbiBteV9zdHJsZW4KICNlbmRpZgogCi1pbnQKLXN0cmxlbiAoY29uc3Qgdm9pZCAqX2EpCitzaXplX3QKK3N0cmxlbiAoY29uc3QgY2hhciAqX2EpCiB7CiAgIGludCBjbnQgPSAwOwogICB1bnNpZ25lZCB4OwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJsZW4uYyBiL2xpYmMvYXJjaC1taXBzL3N0cmluZy9zdHJsZW4uYwpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJsZW4uYwpyZW5hbWUgdG8gbGliYy9hcmNoLW1pcHMvc3RyaW5nL3N0cmxlbi5jCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX19jbG9zZS5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19fY2xvc2UuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNTZjZmQ2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19fY2xvc2UuUwpAQCAtMCwwICsxLDIwIEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2Nsb3NlKQorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCB0OQorICAgIGxpIHYwLCBfX05SX2Nsb3NlCisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIGxhIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgaiB0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorRU5EKF9fX2Nsb3NlKQorLmhpZGRlbiBfX19jbG9zZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19fZmFjY2Vzc2F0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX19mYWNjZXNzYXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZTExYmFlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19fZmFjY2Vzc2F0LlMKQEAgLTAsMCArMSwyMCBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19mYWNjZXNzYXQpCisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkIHQ5CisgICAgbGkgdjAsIF9fTlJfZmFjY2Vzc2F0CisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIGxhIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgaiB0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorRU5EKF9fX2ZhY2Nlc3NhdCkKKy5oaWRkZW4gX19fZmFjY2Vzc2F0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX19mY2htb2QuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fX2ZjaG1vZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFjMTAyZWMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX19mY2htb2QuUwpAQCAtMCwwICsxLDIwIEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2ZjaG1vZCkKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgdDkKKyAgICBsaSB2MCwgX19OUl9mY2htb2QKKyAgICBzeXNjYWxsCisgICAgYm5leiBhMywgMWYKKyAgICBtb3ZlIGEwLCB2MAorICAgIGogcmEKKyAgICBub3AKKzE6CisgICAgbGEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICBqIHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCitFTkQoX19fZmNobW9kKQorLmhpZGRlbiBfX19mY2htb2QKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fX2ZjaG1vZGF0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX19mY2htb2RhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ1ODFlZmEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX19mY2htb2RhdC5TCkBAIC0wLDAgKzEsMjAgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fZmNobW9kYXQpCisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkIHQ5CisgICAgbGkgdjAsIF9fTlJfZmNobW9kYXQKKyAgICBzeXNjYWxsCisgICAgYm5leiBhMywgMWYKKyAgICBtb3ZlIGEwLCB2MAorICAgIGogcmEKKyAgICBub3AKKzE6CisgICAgbGEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICBqIHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCitFTkQoX19fZmNobW9kYXQpCisuaGlkZGVuIF9fX2ZjaG1vZGF0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX2Nsb2NrX25hbm9zbGVlcC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19jbG9ja19uYW5vc2xlZXAuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45N2JmYTI3Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19jbG9ja19uYW5vc2xlZXAuUwpAQCAtMCwwICsxLDE5IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fY2xvY2tfbmFub3NsZWVwKQorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCB0OQorICAgIGxpIHYwLCBfX05SX2Nsb2NrX25hbm9zbGVlcAorICAgIHN5c2NhbGwKKyAgICBibmV6IGEzLCAxZgorICAgIG1vdmUgYTAsIHYwCisgICAgaiByYQorICAgIG5vcAorMToKKyAgICBsYSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAorICAgIGogdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKK0VORChfX2Nsb2NrX25hbm9zbGVlcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fcnRfc2lncXVldWVpbmZvLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE5NzhiYzQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TCkBAIC0wLDAgKzEsMTkgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19ydF9zaWdxdWV1ZWluZm8pCisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkIHQ5CisgICAgbGkgdjAsIF9fTlJfcnRfc2lncXVldWVpbmZvCisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIGxhIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgaiB0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorRU5EKF9fcnRfc2lncXVldWVpbmZvKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX2V4aXQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19leGl0LlMKaW5kZXggNWFjMTMyNC4uNmU5N2FhYyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX2V4aXQuUworKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fZXhpdC5TCkBAIC0xOCw1ICsxOCw0IEBACiAgICAgLnNldCByZW9yZGVyCiBFTkQoX2V4aXQpCiAKLSAgICAuZ2xvYmwgX0V4aXQKLSAgICAuZXF1IF9FeGl0LCBfZXhpdAorQUxJQVNfU1lNQk9MKF9FeGl0LCBfZXhpdCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Nsb2NrX25hbm9zbGVlcC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYwMDJhYjQuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGNsb2NrX25hbm9zbGVlcCkKLSAgICAuc2V0IG5vcmVvcmRlcgotICAgIC5jcGxvYWQgdDkKLSAgICBsaSB2MCwgX19OUl9jbG9ja19uYW5vc2xlZXAKLSAgICBzeXNjYWxsCi0gICAgYm5leiBhMywgMWYKLSAgICBtb3ZlIGEwLCB2MAotICAgIGogcmEKLSAgICBub3AKLTE6Ci0gICAgbGEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKLSAgICBqIHQ5Ci0gICAgbm9wCi0gICAgLnNldCByZW9yZGVyCi1FTkQoY2xvY2tfbmFub3NsZWVwKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY2xvc2UuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Nsb3NlLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDIzMWY0OTcuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY2xvc2UuUworKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoY2xvc2UpCi0gICAgLnNldCBub3Jlb3JkZXIKLSAgICAuY3Bsb2FkIHQ5Ci0gICAgbGkgdjAsIF9fTlJfY2xvc2UKLSAgICBzeXNjYWxsCi0gICAgYm5leiBhMywgMWYKLSAgICBtb3ZlIGEwLCB2MAotICAgIGogcmEKLSAgICBub3AKLTE6Ci0gICAgbGEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKLSAgICBqIHQ5Ci0gICAgbm9wCi0gICAgLnNldCByZW9yZGVyCi1FTkQoY2xvc2UpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mYWNjZXNzYXQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZhY2Nlc3NhdC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlNjE2MTA2Li4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZhY2Nlc3NhdC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTkgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmYWNjZXNzYXQpCi0gICAgLnNldCBub3Jlb3JkZXIKLSAgICAuY3Bsb2FkIHQ5Ci0gICAgbGkgdjAsIF9fTlJfZmFjY2Vzc2F0Ci0gICAgc3lzY2FsbAotICAgIGJuZXogYTMsIDFmCi0gICAgbW92ZSBhMCwgdjAKLSAgICBqIHJhCi0gICAgbm9wCi0xOgotICAgIGxhIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgaiB0OQotICAgIG5vcAotICAgIC5zZXQgcmVvcmRlcgotRU5EKGZhY2Nlc3NhdCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZjaG1vZC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmNobW9kLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDJhOTVjYzMuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmNobW9kLlMKKysrIC9kZXYvbnVsbApAQCAtMSwxOSArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGZjaG1vZCkKLSAgICAuc2V0IG5vcmVvcmRlcgotICAgIC5jcGxvYWQgdDkKLSAgICBsaSB2MCwgX19OUl9mY2htb2QKLSAgICBzeXNjYWxsCi0gICAgYm5leiBhMywgMWYKLSAgICBtb3ZlIGEwLCB2MAotICAgIGogcmEKLSAgICBub3AKLTE6Ci0gICAgbGEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKLSAgICBqIHQ5Ci0gICAgbm9wCi0gICAgLnNldCByZW9yZGVyCi1FTkQoZmNobW9kKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmNobW9kYXQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZjaG1vZGF0LlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ5ZGUwMzYuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmNobW9kYXQuUworKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZmNobW9kYXQpCi0gICAgLnNldCBub3Jlb3JkZXIKLSAgICAuY3Bsb2FkIHQ5Ci0gICAgbGkgdjAsIF9fTlJfZmNobW9kYXQKLSAgICBzeXNjYWxsCi0gICAgYm5leiBhMywgMWYKLSAgICBtb3ZlIGEwLCB2MAotICAgIGogcmEKLSAgICBub3AKLTE6Ci0gICAgbGEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKLSAgICBqIHQ5Ci0gICAgbm9wCi0gICAgLnNldCByZW9yZGVyCi1FTkQoZmNobW9kYXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mc3RhdDY0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mc3RhdDY0LlMKaW5kZXggNTI1YzIzYy4uMTZlMjc5MSAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnN0YXQ2NC5TCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZzdGF0NjQuUwpAQCAtMTgsNSArMTgsNCBAQAogICAgIC5zZXQgcmVvcmRlcgogRU5EKGZzdGF0NjQpCiAKLSAgICAuZ2xvYmwgZnN0YXQKLSAgICAuZXF1IGZzdGF0LCBmc3RhdDY0CitBTElBU19TWU1CT0woZnN0YXQsIGZzdGF0NjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mc3RhdGF0NjQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZzdGF0YXQ2NC5TCmluZGV4IGY3YjhlMWQuLmViY2Y2YjAgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZzdGF0YXQ2NC5TCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZzdGF0YXQ2NC5TCkBAIC0xOCw1ICsxOCw0IEBACiAgICAgLnNldCByZW9yZGVyCiBFTkQoZnN0YXRhdDY0KQogCi0gICAgLmdsb2JsIGZzdGF0YXQKLSAgICAuZXF1IGZzdGF0YXQsIGZzdGF0YXQ2NAorQUxJQVNfU1lNQk9MKGZzdGF0YXQsIGZzdGF0YXQ2NCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NldGhvc3RuYW1lLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRob3N0bmFtZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI5ODdiNTIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRob3N0bmFtZS5TCkBAIC0wLDAgKzEsMTkgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoc2V0aG9zdG5hbWUpCisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkIHQ5CisgICAgbGkgdjAsIF9fTlJfc2V0aG9zdG5hbWUKKyAgICBzeXNjYWxsCisgICAgYm5leiBhMywgMWYKKyAgICBtb3ZlIGEwLCB2MAorICAgIGogcmEKKyAgICBub3AKKzE6CisgICAgbGEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICBqIHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCitFTkQoc2V0aG9zdG5hbWUpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9fc2V0am1wLlMgYi9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9fc2V0am1wLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQyMzdlNmQuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvX3NldGptcC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTUwICswLDAgQEAKLS8qCSRPcGVuQlNEOiBfc2V0am1wLlMsdiAxLjQgMjAwNS8wOC8wNyAxNjo0MDoxNSBlc3BpZSBFeHAgJCAqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAyMDAyIE9wc3ljb24gQUIgICh3d3cub3BzeWNvbi5zZSAvIHd3dy5vcHN5Y29uLmNvbSkKLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgT3BzeWNvbiBBQiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MKLSAqIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKgotICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3JlZ251bS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvc2lnbmFsLmg+Ci0KLS8qCi0gKiBfc2V0am1wLCBfbG9uZ2ptcCAobm90IHJlc3RvcmluZyBzaWduYWwgc3RhdGUpCi0gKgotICogWFhYIEZQU0VUIHNob3VsZCBwcm9iYWJseSBiZSB0YWtlbiBmcm9tIFNSIHNldHRpbmcuIGhtbW0uLi4KLSAqICBHUE9GRiBhbmQgRlJBTUVTSVpFIG11c3QgYmUgdGhlIHNhbWUgZm9yIGJvdGggX3NldGptcCBhbmQgX2xvbmdqbXAhCi0gKgotICovCi0KLUZSQU1FU1o9IE1LRlNJWigwLDQpCi1HUE9GRj0gRlJBTUVTWi0yKlJFR1NaCi0KLUxFQUYoX3NldGptcCwgRlJBTUVTWikKLQlQVFJfU1VCVSBzcCwgRlJBTUVTWgotCVNFVFVQX0dQNjQoR1BPRkYsIF9zZXRqbXApCi0JU0FWRV9HUChHUE9GRikKLQkuc2V0CW5vcmVvcmRlcgotI2lmIGRlZmluZWQoX19taXBzNjQpCi0JZGxpCXYwLCAweEFDRURCQURFCQkJIyBzaWdjb250ZXh0IG1hZ2ljIG51bWJlcgotI2Vsc2UKLQlsaQl2MCwgMHhBQ0VEQkFERQkJCSMgc2lnY29udGV4dCBtYWdpYyBudW1iZXIKLSNlbmRpZgotCVJFR19TCXYwLCBTQ19SRUdTK1pFUk8qUkVHU1ooYTApCi0JUkVHX1MJczAsIFNDX1JFR1MrUzAqUkVHU1ooYTApCi0JUkVHX1MJczEsIFNDX1JFR1MrUzEqUkVHU1ooYTApCi0JUkVHX1MJczIsIFNDX1JFR1MrUzIqUkVHU1ooYTApCi0JUkVHX1MJczMsIFNDX1JFR1MrUzMqUkVHU1ooYTApCi0JUkVHX1MJczQsIFNDX1JFR1MrUzQqUkVHU1ooYTApCi0JUkVHX1MJczUsIFNDX1JFR1MrUzUqUkVHU1ooYTApCi0JUkVHX1MJczYsIFNDX1JFR1MrUzYqUkVHU1ooYTApCi0JUkVHX1MJczcsIFNDX1JFR1MrUzcqUkVHU1ooYTApCi0JUkVHX1MJczgsIFNDX1JFR1MrUzgqUkVHU1ooYTApCi0JUkVHX0wJdjAsIEdQT0ZGKHNwKQotCVJFR19TCXYwLCBTQ19SRUdTK0dQKlJFR1NaKGEwKQotCVBUUl9BRERVIHYwLCBzcCwgRlJBTUVTWgotCVJFR19TCXYwLCBTQ19SRUdTK1NQKlJFR1NaKGEwKQotCVJFR19TCXJhLCBTQ19QQyhhMCkKLQotI2lmICFkZWZpbmVkKFNPRlRGTE9BVCkKLQlsaQl2MCwgMQkJCQkjIGJlIG5pY2UgaWYgd2UgY291bGQgdGVsbAotCVJFR19TCXYwLCBTQ19GUFVTRUQoYTApCQkjIHNjX2ZwdXNlZCA9IDEKLQljZmMxCXYwLCAkMzEKLQlzLmQJJGYyMCwgU0NfRlBSRUdTKygoRjIwLUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjIsIFNDX0ZQUkVHUysoKEYyMi1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI0LCBTQ19GUFJFR1MrKChGMjQtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyNiwgU0NfRlBSRUdTKygoRjI2LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjgsIFNDX0ZQUkVHUysoKEYyOC1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjMwLCBTQ19GUFJFR1MrKChGMzAtRjApKlJFR1NaX0ZQKShhMCkKLSNpZiBfTUlQU19GUFNFVCA9PSAzMgotCXMuZAkkZjIxLCBTQ19GUFJFR1MrKChGMjEtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyMywgU0NfRlBSRUdTKygoRjIzLUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjUsIFNDX0ZQUkVHUysoKEYyNS1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI3LCBTQ19GUFJFR1MrKChGMjctRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyOSwgU0NfRlBSRUdTKygoRjI5LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMzEsIFNDX0ZQUkVHUysoKEYzMS1GMCkqUkVHU1pfRlApKGEwKQotI2VuZGlmCi0JUkVHX1MJdjAsIFNDX0ZQUkVHUysoKEZTUi1GMCkqUkVHU1opKGEwKQotI2VuZGlmIC8qICFTT0ZURkxPQVQgKi8KLQlSRVNUT1JFX0dQNjQKLQlQVFJfQUREVSBzcCwgRlJBTUVTWgotCWoJcmEKLQkgbW92ZQl2MCwgemVybwotRU5EKF9zZXRqbXApCi0KLUxFQUYoX2xvbmdqbXAsIEZSQU1FU1opCi0JUFRSX1NVQlUgc3AsIEZSQU1FU1oKLQlTRVRVUF9HUDY0KEdQT0ZGLCBfbG9uZ2ptcCkKLQlTQVZFX0dQKEdQT0ZGKQotCS5zZXQgICAgbm9yZW9yZGVyCi0JUkVHX0wJdjAsIFNDX1JFR1MrWkVSTypSRUdTWihhMCkKLQlibmUJdjAsIDB4QUNFREJBREUsIGJvdGNoCQkjIGp1bXAgaWYgZXJyb3IKLQlSRUdfTAlyYSwgU0NfUEMoYTApCi0JUkVHX0wJdjAsIFNDX0ZQUkVHUysoKEZTUi1GMCkqUkVHU1opKGEwKQotCVJFR19MCXMwLCBTQ19SRUdTK1MwKlJFR1NaKGEwKQotCVJFR19MCXMxLCBTQ19SRUdTK1MxKlJFR1NaKGEwKQotCVJFR19MCXMyLCBTQ19SRUdTK1MyKlJFR1NaKGEwKQotCVJFR19MCXMzLCBTQ19SRUdTK1MzKlJFR1NaKGEwKQotCVJFR19MCXM0LCBTQ19SRUdTK1M0KlJFR1NaKGEwKQotCVJFR19MCXM1LCBTQ19SRUdTK1M1KlJFR1NaKGEwKQotCVJFR19MCXM2LCBTQ19SRUdTK1M2KlJFR1NaKGEwKQotCVJFR19MCXM3LCBTQ19SRUdTK1M3KlJFR1NaKGEwKQotCVJFR19MCXM4LCBTQ19SRUdTK1M4KlJFR1NaKGEwKQotCVJFR19MCWdwLCBTQ19SRUdTK0dQKlJFR1NaKGEwKQotCVJFR19MCXNwLCBTQ19SRUdTK1NQKlJFR1NaKGEwKQotI2lmICFkZWZpbmVkKFNPRlRGTE9BVCkKLQljdGMxCXYwLCAkMzEKLQlsLmQJJGYyMCwgU0NfRlBSRUdTKygoRjIwLUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjIsIFNDX0ZQUkVHUysoKEYyMi1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI0LCBTQ19GUFJFR1MrKChGMjQtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyNiwgU0NfRlBSRUdTKygoRjI2LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjgsIFNDX0ZQUkVHUysoKEYyOC1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjMwLCBTQ19GUFJFR1MrKChGMzAtRjApKlJFR1NaX0ZQKShhMCkKLSNpZiBfTUlQU19GUFNFVCA9PSAzMgotCWwuZAkkZjIxLCBTQ19GUFJFR1MrKChGMjEtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyMywgU0NfRlBSRUdTKygoRjIzLUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjUsIFNDX0ZQUkVHUysoKEYyNS1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI3LCBTQ19GUFJFR1MrKChGMjctRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyOSwgU0NfRlBSRUdTKygoRjI5LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMzEsIFNDX0ZQUkVHUysoKEYzMS1GMCkqUkVHU1pfRlApKGEwKQotI2VuZGlmCi0jZW5kaWYgLyogIVNPRlRGTE9BVCAqLwotCWJuZQlhMSwgemVybywgMWYKLQkgbm9wCi0JbGkJYTEsIDEJCQkjIG5ldmVyIHJldHVybiAwIQotMToKLQlqCXJhCi0JIG1vdmUJdjAsIGExCi0KLWJvdGNoOgotCWphbAlsb25nam1wZXJyb3IKLQlub3AKLQlqYWwJYWJvcnQKLQlub3AKLQlSRVNUT1JFX0dQNjQKLQlQVFJfQUREVSBzcCwgRlJBTUVTWgotRU5EKF9sb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvYXRleGl0LmggYi9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9hdGV4aXQuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzU5MDA4Yy4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9hdGV4aXQuaAorKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCi0gKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiAgICBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCi0gKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQotICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAotICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKLSAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUwotICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECi0gKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCi0gKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKLSAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotZXh0ZXJuIHZvaWQgKl9fZHNvX2hhbmRsZTsKLWV4dGVybiBpbnQgX19jeGFfYXRleGl0KHZvaWQgKCpmdW5jKSh2b2lkICopLCB2b2lkICphcmcsIHZvaWQgKmRzbyk7Ci0KLV9fYXR0cmlidXRlX18gKCh2aXNpYmlsaXR5ICgiaGlkZGVuIikpKQotaW50IGF0ZXhpdCh2b2lkICgqZnVuYykodm9pZCkpCi17Ci0gIHJldHVybiAoX19jeGFfYXRleGl0KCh2b2lkICgqKSh2b2lkICopKWZ1bmMsICh2b2lkICopMCwgJl9fZHNvX2hhbmRsZSkpOwotfQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvY3J0YmVnaW4uYyBiL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL2NydGJlZ2luLmMKaW5kZXggMmVhMzFhZC4uYmRkNDIzYiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvY3J0YmVnaW4uYworKysgYi9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9jcnRiZWdpbi5jCkBAIC05MSw0ICs5MSw1IEBACiApOwogCiAjaW5jbHVkZSAiLi4vLi4vYXJjaC1jb21tb24vYmlvbmljL19fZHNvX2hhbmRsZS5oIgotI2luY2x1ZGUgImF0ZXhpdC5oIgorI2luY2x1ZGUgIi4uLy4uL2FyY2gtY29tbW9uL2Jpb25pYy9hdGV4aXQuaCIKKyNpbmNsdWRlICIuLi8uLi9hcmNoLWNvbW1vbi9iaW9uaWMvcHRocmVhZF9hdGZvcmsuaCIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL2NydGJlZ2luX3NvLmMgYi9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9jcnRiZWdpbl9zby5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkNjY0Y2U2Li4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL2NydGJlZ2luX3NvLmMKKysrIC9kZXYvbnVsbApAQCAtMSwzOCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLWV4dGVybiB2b2lkIF9fY3hhX2ZpbmFsaXplKHZvaWQgKik7Ci1leHRlcm4gdm9pZCAqX19kc29faGFuZGxlOwotCi1fX2F0dHJpYnV0ZV9fKCh2aXNpYmlsaXR5KCJoaWRkZW4iKSxkZXN0cnVjdG9yKSkKLXZvaWQgX19vbl9kbGNsb3NlKCkgewotICBfX2N4YV9maW5hbGl6ZSgmX19kc29faGFuZGxlKTsKLX0KLQotI2luY2x1ZGUgIi4uLy4uL2FyY2gtY29tbW9uL2Jpb25pYy9fX2Rzb19oYW5kbGVfc28uaCIKLSNpbmNsdWRlICJhdGV4aXQuaCIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL3NldGptcC5TIGIvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvc2V0am1wLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDMxNzg2YmUuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvc2V0am1wLlMKKysrIC9kZXYvbnVsbApAQCAtMSwxNzQgKzAsMCBAQAotLyogICAgICAkT3BlbkJTRDogc2V0am1wLlMsdiAxLjUgMjAwNS8wOC8wNyAxNjo0MDoxNSBlc3BpZSBFeHAgJCAqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMDIgT3BzeWNvbiBBQiAgKHd3dy5vcHN5Y29uLnNlIC8gd3d3Lm9wc3ljb24uY29tKQotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiBPcHN5Y29uIEFCIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCi0gKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUwotICogT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqCi0gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvcmVnbnVtLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9zaWduYWwuaD4KLQotLyoKLSAqIHNldGptcCwgbG9uZ2ptcCBpbXBsZW1lbnRhdGlvbiBmb3IgbGliYy4gdGhpcyBjb2RlIGRlcGVuZHMKLSAqIG9uIHRoZSBsYXlvdXQgb2YgdGhlIHN0cnVjdCBzaWdjb250ZXh0IGluIG1hY2hpbmUvc2lnbmFsLmguCi0gKgotICovCi0KLUZSQU1FU1o9IE1LRlNJWigyLDYpCi1BMU9GRj0gRlJBTUVTWi00KlJFR1NaCi1BME9GRj0gRlJBTUVTWi0zKlJFR1NaCi1HUE9GRj0gRlJBTUVTWi0yKlJFR1NaCi1SQU9GRj0gRlJBTUVTWi0xKlJFR1NaCi0KLU5PTl9MRUFGKHNldGptcCwgRlJBTUVTWiwgcmEpCi0JLm1hc2sJMHg4MDAwMDAwMCwgUkFPRkYKLQlQVFJfU1VCVSBzcCwgRlJBTUVTWgkJCSMgYWxsb2NhdGUgc3RhY2sgZnJhbWUKLQlTRVRVUF9HUDY0KEdQT0ZGLCBzZXRqbXApCi0JU0FWRV9HUChHUE9GRikKLQkuc2V0CXJlb3JkZXIKLQlSRUdfUwlyYSwgUkFPRkYoc3ApCQkJIyBzYXZlIHN0YXRlCi0JUkVHX1MJYTAsIEEwT0ZGKHNwKQotCi0JbW92ZQlhMCwgemVybwkJCSMgZ2V0IGN1cnJlbnQgc2lnbmFsIG1hc2sKLQlqYWwJc2lnYmxvY2sKLQotCVJFR19MCXYxLCBBME9GRihzcCkJCQkjIHYxID0gam1wYnVmCi0JUkVHX1MJdjAsIFNDX01BU0sodjEpCQkJIyBzYXZlIHNjX21hc2sgPSBzaWdibG9jaygwKQotCi0JUkVHX0wJYTAsIEEwT0ZGKHNwKQkJCSMgcmVzdG9yZSBqbXBidWYKLQlSRUdfTAlyYSwgUkFPRkYoc3ApCi0JUkVHX1MJcmEsIFNDX1BDKGEwKQkJCSMgc2NfcGMgPSByZXR1cm4gYWRkcmVzcwotI2lmIGRlZmluZWQoX19taXBzNjQpCi0JZGxpCXYwLCAweEFDRURCQURFCQkJIyBzaWdjb250ZXh0IG1hZ2ljIG51bWJlcgotI2Vsc2UKLQlsaQl2MCwgMHhBQ0VEQkFERQkJCSMgc2lnY29udGV4dCBtYWdpYyBudW1iZXIKLSNlbmRpZgotCVJFR19TCXYwLCBTQ19SRUdTK1pFUk8qUkVHU1ooYTApCi0JUkVHX1MJczAsIFNDX1JFR1MrUzAqUkVHU1ooYTApCi0JUkVHX1MJczEsIFNDX1JFR1MrUzEqUkVHU1ooYTApCi0JUkVHX1MJczIsIFNDX1JFR1MrUzIqUkVHU1ooYTApCi0JUkVHX1MJczMsIFNDX1JFR1MrUzMqUkVHU1ooYTApCi0JUkVHX1MJczQsIFNDX1JFR1MrUzQqUkVHU1ooYTApCi0JUkVHX1MJczUsIFNDX1JFR1MrUzUqUkVHU1ooYTApCi0JUkVHX1MJczYsIFNDX1JFR1MrUzYqUkVHU1ooYTApCi0JUkVHX1MJczcsIFNDX1JFR1MrUzcqUkVHU1ooYTApCi0JUkVHX1MJczgsIFNDX1JFR1MrUzgqUkVHU1ooYTApCi0JUkVHX0wJdjAsIEdQT0ZGKHNwKQotCVJFR19TCXYwLCBTQ19SRUdTK0dQKlJFR1NaKGEwKQotCVBUUl9BRERVIHYwLCBzcCwgRlJBTUVTWgotCVJFR19TCXYwLCBTQ19SRUdTK1NQKlJFR1NaKGEwKQotCi0jaWYgIWRlZmluZWQoU09GVEZMT0FUKQotCWxpCXYwLCAxCQkJCSMgYmUgbmljZSBpZiB3ZSBjb3VsZCB0ZWxsCi0JUkVHX1MJdjAsIFNDX0ZQVVNFRChhMCkJCSMgc2NfZnB1c2VkID0gMQotCWNmYzEJdjAsICQzMQotCXMuZAkkZjIwLCBTQ19GUFJFR1MrKChGMjAtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyMiwgU0NfRlBSRUdTKygoRjIyLUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjQsIFNDX0ZQUkVHUysoKEYyNC1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI2LCBTQ19GUFJFR1MrKChGMjYtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyOCwgU0NfRlBSRUdTKygoRjI4LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMzAsIFNDX0ZQUkVHUysoKEYzMC1GMCkqUkVHU1pfRlApKGEwKQotI2lmIF9NSVBTX0ZQU0VUID09IDMyCi0Jcy5kCSRmMjEsIFNDX0ZQUkVHUysoKEYyMS1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjIzLCBTQ19GUFJFR1MrKChGMjMtRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYyNSwgU0NfRlBSRUdTKygoRjI1LUYwKSpSRUdTWl9GUCkoYTApCi0Jcy5kCSRmMjcsIFNDX0ZQUkVHUysoKEYyNy1GMCkqUkVHU1pfRlApKGEwKQotCXMuZAkkZjI5LCBTQ19GUFJFR1MrKChGMjktRjApKlJFR1NaX0ZQKShhMCkKLQlzLmQJJGYzMSwgU0NfRlBSRUdTKygoRjMxLUYwKSpSRUdTWl9GUCkoYTApCi0jZW5kaWYKLQlSRUdfUwl2MCwgU0NfRlBSRUdTKygoRlNSLUYwKSpSRUdTWikoYTApCi0jZW5kaWYgLyogIVNPRlRGTE9BVCAqLwotCW1vdmUJdjAsIHplcm8KLQlSRVNUT1JFX0dQNjQKLQlQVFJfQUREVSBzcCwgRlJBTUVTWgotCWoJcmEKLQotYm90Y2g6Ci0JamFsCWxvbmdqbXBlcnJvcgotCWphbAlhYm9ydAotCVJFU1RPUkVfR1A2NAotCVBUUl9BRERVIHNwLCBGUkFNRVNaCi1FTkQoc2V0am1wKQotCi0KLUxFQUYobG9uZ2ptcCwgRlJBTUVTWikKLQlQVFJfU1VCVSBzcCwgRlJBTUVTWgotCVNFVFVQX0dQNjQoR1BPRkYsIGxvbmdqbXApCi0JU0FWRV9HUChHUE9GRikKLQkuc2V0CXJlb3JkZXIKLQlzdwlhMSwgQTFPRkYoc3ApCi0Jc3cJYTAsIEEwT0ZGKHNwKQotCi0JbHcJYTAsIFNDX01BU0soYTApCi0JamFsCXNpZ3NldG1hc2sKLQotCWx3CWEwLCBBME9GRihzcCkKLQlsdwlhMSwgQTFPRkYoc3ApCi0KLQkuc2V0CW5vcmVvcmRlcgotCVJFR19MCXYwLCBTQ19SRUdTK1pFUk8qUkVHU1ooYTApCi0JYm5lCXYwLCAweEFDRURCQURFLCBib3RjaAkJIyBqdW1wIGlmIGVycm9yCi0JUkVHX0wJcmEsIFNDX1BDKGEwKQotCVJFR19MCXMwLCBTQ19SRUdTK1MwKlJFR1NaKGEwKQotCVJFR19MCXMxLCBTQ19SRUdTK1MxKlJFR1NaKGEwKQotCVJFR19MCXMyLCBTQ19SRUdTK1MyKlJFR1NaKGEwKQotCVJFR19MCXMzLCBTQ19SRUdTK1MzKlJFR1NaKGEwKQotCVJFR19MCXM0LCBTQ19SRUdTK1M0KlJFR1NaKGEwKQotCVJFR19MCXM1LCBTQ19SRUdTK1M1KlJFR1NaKGEwKQotCVJFR19MCXM2LCBTQ19SRUdTK1M2KlJFR1NaKGEwKQotCVJFR19MCXM3LCBTQ19SRUdTK1M3KlJFR1NaKGEwKQotCVJFR19MCXM4LCBTQ19SRUdTK1M4KlJFR1NaKGEwKQotCVJFR19MCWdwLCBTQ19SRUdTK0dQKlJFR1NaKGEwKQotCVJFR19MCXNwLCBTQ19SRUdTK1NQKlJFR1NaKGEwKQotCi0jaWYgIWRlZmluZWQoU09GVEZMT0FUKQotCVJFR19MCXYwLCBTQ19GUFJFR1MrKChGU1ItRjApKlJFR1NaKShhMCkKLQljdGMxCXYwLCAkMzEKLQlsLmQJJGYyMCwgU0NfRlBSRUdTKygoRjIwLUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjIsIFNDX0ZQUkVHUysoKEYyMi1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI0LCBTQ19GUFJFR1MrKChGMjQtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyNiwgU0NfRlBSRUdTKygoRjI2LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjgsIFNDX0ZQUkVHUysoKEYyOC1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjMwLCBTQ19GUFJFR1MrKChGMzAtRjApKlJFR1NaX0ZQKShhMCkKLSNpZiBfTUlQU19GUFNFVCA9PSAzMgotCWwuZAkkZjIxLCBTQ19GUFJFR1MrKChGMjEtRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyMywgU0NfRlBSRUdTKygoRjIzLUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMjUsIFNDX0ZQUkVHUysoKEYyNS1GMCkqUkVHU1pfRlApKGEwKQotCWwuZAkkZjI3LCBTQ19GUFJFR1MrKChGMjctRjApKlJFR1NaX0ZQKShhMCkKLQlsLmQJJGYyOSwgU0NfRlBSRUdTKygoRjI5LUYwKSpSRUdTWl9GUCkoYTApCi0JbC5kCSRmMzEsIFNDX0ZQUkVHUysoKEYzMS1GMCkqUkVHU1pfRlApKGEwKQotI2VuZGlmCi0jZW5kaWYgLyogIVNPRlRGTE9BVCAqLwotCWJuZQlhMSwgemVybywgMWYKLQkgbm9wCi0JbGkJYTEsIDEJCQkjIG5ldmVyIHJldHVybiAwIQotMToKLQlqCXJhCi0JIG1vdmUJdjAsIGExCi0KLUVORChsb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvc2V0am1wLlMgYi9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9zZXRqbXAuUwpuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwLi5iMTE3YmI2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvc2V0am1wLlMKQEAgLTAsMCArMSBAQAorLi4vLi4vYXJjaC1taXBzL2Jpb25pYy9zZXRqbXAuUwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL3NpZ3NldGptcC5TIGIvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvc2lnc2V0am1wLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDlkMmU1ZWEuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvc2lnc2V0am1wLlMKKysrIC9kZXYvbnVsbApAQCAtMSw3NyArMCwwIEBACi0vKiAkT3BlbkJTRDogc2lnc2V0am1wLlMsdiAxLjUgMjAwNS8wOC8wNyAxNjo0MDoxNSBlc3BpZSBFeHAgJCAqLwotLyotCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTEsIDE5OTMsIDE5OTUsCi0gKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBUaGlzIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1dGVkIHRvIEJlcmtlbGV5IGJ5Ci0gKiBIYXZhcmQgRWlkbmVzLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9yZWdudW0uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3NldGptcC5oPgotCi0vKgotICogdHJhbXBvbGluZXMgZm9yIHNpZ3NldGptcCBhbmQgIHNpZ2xvbmdqbXAgc2F2ZSBhbmQgcmVzdG9yZSBtYXNrLgotICoKLSAqLwotRlJBTUVTWj0gTUtGU0laKDEsMSkKLUdQT0ZGPSBGUkFNRVNaLTIqUkVHU1oKLQotTEVBRihzaWdzZXRqbXAsIEZSQU1FU1opCi0JUFRSX1NVQlUgc3AsIEZSQU1FU1oKLQlTRVRVUF9HUDY0KEdQT0ZGLCBzaWdzZXRqbXApCi0JLnNldAlyZW9yZGVyCi0JUkVHX1MJYTEsIChfSkJMRU4qUkVHU1opKGEwKQkJIyBzYXZlICJzYXZlbWFzayIKLQlibmUJYTEsIDB4MCwgMWYJCQkjIGRvIHNhdmluZyBvZiBzaWduYWwgbWFzaz8KLQlMQQl0OSwgX3NldGptcAotCVJFU1RPUkVfR1A2NAotCVBUUl9BRERVIHNwLCBGUkFNRVNaCi0JanIgdDkKLQotMToJTEEJdDksIHNldGptcAotCVJFU1RPUkVfR1A2NAotCVBUUl9BRERVIHNwLCBGUkFNRVNaCi0JanIgdDkKLUVORChzaWdzZXRqbXApCi0KLUxFQUYoc2lnbG9uZ2ptcCwgRlJBTUVTWikKLQlQVFJfU1VCVSBzcCwgRlJBTUVTWgotCVNFVFVQX0dQNjQoR1BPRkYsIHNpZ2xvbmdqbXApCi0JLnNldAlyZW9yZGVyCi0JUkVHX0wJdDAsIChfSkJMRU4qUkVHU1opKGEwKQkJIyBnZXQgInNhdmVtYXNrIgotCWJuZQl0MCwgMHgwLCAxZgkJCSMgcmVzdG9yZSBzaWduYWwgbWFzaz8KLQlMQQl0OSwgX2xvbmdqbXAKLQlSRVNUT1JFX0dQNjQKLQlQVFJfQUREVSBzcCwgRlJBTUVTWgotCWpyCXQ5Ci0xOgotCUxBCXQ5LCBsb25nam1wCi0JUkVTVE9SRV9HUDY0Ci0JUFRSX0FERFUgc3AsIEZSQU1FU1oKLQlqcgl0OQotRU5EKHNpZ2xvbmdqbXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9zdGF0LmNwcCBiL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL3N0YXQuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI3NjdmYmQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9zdGF0LmNwcApAQCAtMCwwICsxLDEwMyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3lzY2FsbC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorCitzdHJ1Y3Qga2VybmVsX3N0YXQgeworIHVuc2lnbmVkIGludCBzdF9kZXY7CisgdW5zaWduZWQgaW50IHN0X3BhZDBbM107CisgdW5zaWduZWQgbG9uZyBzdF9pbm87CisgbW9kZV90IHN0X21vZGU7CisgX191MzIgc3Rfbmxpbms7CisgdWlkX3Qgc3RfdWlkOworIGdpZF90IHN0X2dpZDsKKyB1bnNpZ25lZCBpbnQgc3RfcmRldjsKKyB1bnNpZ25lZCBpbnQgc3RfcGFkMVszXTsKKyBfX2tlcm5lbF9vZmZfdCBzdF9zaXplOworIHVuc2lnbmVkIGludCBfc3RfYXRpbWU7CisgdW5zaWduZWQgaW50IHN0X2F0aW1lX25zZWM7CisgdW5zaWduZWQgaW50IF9zdF9tdGltZTsKKyB1bnNpZ25lZCBpbnQgc3RfbXRpbWVfbnNlYzsKKyB1bnNpZ25lZCBpbnQgX3N0X2N0aW1lOworIHVuc2lnbmVkIGludCBzdF9jdGltZV9uc2VjOworIHVuc2lnbmVkIGludCBzdF9ibGtzaXplOworIHVuc2lnbmVkIGludCBzdF9wYWQyOworIHVuc2lnbmVkIGxvbmcgc3RfYmxvY2tzOworfTsKKwordm9pZCBjb3B5X3N0YXQoc3RydWN0IHN0YXQgKnN0LCBzdHJ1Y3Qga2VybmVsX3N0YXQgKnMpCit7CisgIHN0LT5zdF9kZXYgPSBzdGF0aWNfY2FzdDxkZXZfdD4ocy0+c3RfZGV2KTsKKyAgc3QtPnN0X2lubyA9IHN0YXRpY19jYXN0PGlub190PihzLT5zdF9pbm8pOworICBzdC0+c3RfbW9kZSA9IHN0YXRpY19jYXN0PG1vZGVfdD4ocy0+c3RfbW9kZSk7CisgIHN0LT5zdF9ubGluayA9IHN0YXRpY19jYXN0PG5saW5rX3Q+KHMtPnN0X25saW5rKTsKKyAgc3QtPnN0X3VpZCA9IHN0YXRpY19jYXN0PHVpZF90PihzLT5zdF91aWQpOworICBzdC0+c3RfZ2lkID0gc3RhdGljX2Nhc3Q8Z2lkX3Q+KHMtPnN0X2dpZCk7CisgIHN0LT5zdF9yZGV2ID0gc3RhdGljX2Nhc3Q8ZGV2X3Q+KHMtPnN0X3JkZXYpOworICBzdC0+c3Rfc2l6ZSA9IHN0YXRpY19jYXN0PG9mZl90PihzLT5zdF9zaXplKTsKKyAgc3QtPnN0X2Jsa3NpemUgPSBzdGF0aWNfY2FzdDxpbnQ+KHMtPnN0X2Jsa3NpemUpOworICBzdC0+c3RfYmxvY2tzID0gc3RhdGljX2Nhc3Q8bG9uZz4ocy0+c3RfYmxvY2tzKTsKKyAgc3QtPnN0X2F0aW0udHZfc2VjID0gc3RhdGljX2Nhc3Q8dGltZV90PihzLT5fc3RfYXRpbWUpOworICBzdC0+c3RfYXRpbS50dl9uc2VjID0gc3RhdGljX2Nhc3Q8bG9uZz4ocy0+c3RfYXRpbWVfbnNlYyk7CisgIHN0LT5zdF9tdGltLnR2X3NlYyA9IHN0YXRpY19jYXN0PHRpbWVfdD4ocy0+X3N0X210aW1lKTsKKyAgc3QtPnN0X210aW0udHZfbnNlYyA9IHN0YXRpY19jYXN0PGxvbmc+KHMtPnN0X210aW1lX25zZWMpOworICBzdC0+c3RfY3RpbS50dl9zZWMgPSBzdGF0aWNfY2FzdDx0aW1lX3Q+KHMtPl9zdF9jdGltZSk7CisgIHN0LT5zdF9jdGltLnR2X25zZWMgPSBzdGF0aWNfY2FzdDxsb25nPihzLT5zdF9jdGltZV9uc2VjKTsKK30KKworaW50IGZzdGF0KGludCBmcCwgc3RydWN0IHN0YXQgKnN0KQoreworICBrZXJuZWxfc3RhdCBzOworICBpbnQgcmV0OworICByZXQgPSBzeXNjYWxsIChfX05SX2ZzdGF0LCBmcCwgJnMpOworICBjb3B5X3N0YXQgKHN0LCAmcyk7CisgIHJldHVybiByZXQ7Cit9CitfX3N0cm9uZ19hbGlhcyhmc3RhdDY0LCBmc3RhdCk7CisKK2ludCBuZXdmc3RhdGF0KGludCBkaXJmZCwgY29uc3QgY2hhciAqcGF0aG5hbWUsIHN0cnVjdCBzdGF0ICpidWYsIGludCBmbGFncykKK3sKKyAgIGtlcm5lbF9zdGF0IHM7CisgICBpbnQgcmV0OworICAgcmV0ID0gc3lzY2FsbChfX05SX25ld2ZzdGF0YXQsIGRpcmZkLCBwYXRobmFtZSwgJnMsIGZsYWdzKTsKKyAgIGNvcHlfc3RhdChidWYsICZzKTsKKyAgIHJldHVybiByZXQ7Cit9CisKK2ludCBmc3RhdGF0KGludCBkaXJmZCwgY29uc3QgY2hhciAqcGF0aG5hbWUsIHN0cnVjdCBzdGF0ICpidWYsIGludCBmbGFncykKK3sKKyAgIGtlcm5lbF9zdGF0IHM7CisgICBpbnQgcmV0OworICAgcmV0ID0gc3lzY2FsbChfX05SX25ld2ZzdGF0YXQsIGRpcmZkLCBwYXRobmFtZSwgJnMsIGZsYWdzKTsKKyAgIGNvcHlfc3RhdChidWYsICZzKTsKKyAgIHJldHVybiByZXQ7Cit9CitfX3N0cm9uZ19hbGlhcyhmc3RhdGF0NjQsIGZzdGF0YXQpOwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvc3lzY2FsbC5TIGIvbGliYy9hcmNoLW1pcHM2NC9iaW9uaWMvc3lzY2FsbC5TCmluZGV4IDkyNDc0MWQuLjRjNzM5ZmQgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzNjQvYmlvbmljL3N5c2NhbGwuUworKysgYi9saWJjL2FyY2gtbWlwczY0L2Jpb25pYy9zeXNjYWxsLlMKQEAgLTUyLDcgKzUyLDcgQEAKICNlbHNlCiAJbW92ZQlhMywgYTQKIAltb3ZlCWE0LCBhNQotCVJFR19MCWE1LCBGUkFNRVNaKHNwKQorCW1vdmUJYTUsIGE2CiAjZW5kaWYKIAlzeXNjYWxsCiAJbW92ZQlhMCwgdjAKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZSBiL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZQpuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwLi5mYWJiZThhCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlCkBAIC0wLDAgKzEgQEAKKy4uL2FyY2gtbWlwcy9pbmNsdWRlClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvYXNtLmggYi9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9hc20uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWVhY2RlMy4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9hc20uaAorKysgL2Rldi9udWxsCkBAIC0xLDIwOCArMCwwIEBACi0vKgkkT3BlbkJTRDogYXNtLmgsdiAxLjcgMjAwNC8xMC8yMCAxMjo0OToxNSBwZWZvIEV4cCAkICovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAwMiBPcHN5Y29uIEFCICAod3d3Lm9wc3ljb24uc2UgLyB3d3cub3BzeWNvbi5jb20pCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MKLSAqIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKgotICovCi0jaWZuZGVmIF9NSVBTNjRfQVNNX0gKLSNkZWZpbmUgX01JUFM2NF9BU01fSAotCi0jaWZuZGVmIF9BTElHTl9URVhUCi0jIGRlZmluZSBfQUxJR05fVEVYVCAuYWxpZ24gNAotI2VuZGlmCi0KLSN1bmRlZiBfX2Jpb25pY19hc21fY3VzdG9tX2VudHJ5Ci0jdW5kZWYgX19iaW9uaWNfYXNtX2N1c3RvbV9lbmQKLSNkZWZpbmUgX19iaW9uaWNfYXNtX2N1c3RvbV9lbnRyeShmKSAuZW50IGYKLSNkZWZpbmUgX19iaW9uaWNfYXNtX2N1c3RvbV9lbmQoZikgLmVuZCBmCi0KLSNpbmNsdWRlIDxtYWNoaW5lL3JlZ2RlZi5oPgotCi0jZGVmaW5lCV9NSVBTX0lTQV9NSVBTMQkxCS8qIFIyMDAwL1IzMDAwICovCi0jZGVmaW5lCV9NSVBTX0lTQV9NSVBTMgkyCS8qIFI0MDAwL1I2MDAwICovCi0jZGVmaW5lCV9NSVBTX0lTQV9NSVBTMwkzCS8qIFI0MDAwICovCi0jZGVmaW5lCV9NSVBTX0lTQV9NSVBTNAk0CS8qIFRGUCAoUjF4MDAwKSAqLwotI2RlZmluZQlfTUlQU19JU0FfTUlQUzUgNQotI2RlZmluZQlfTUlQU19JU0FfTUlQUzMyIDYKLSNkZWZpbmUJX01JUFNfSVNBX01JUFM2NCA3Ci0KLSNpZiAhZGVmaW5lZChBQklDQUxMUykgJiYgIWRlZmluZWQoX05PX0FCSUNBTExTKQotI2RlZmluZQlBQklDQUxMUwkuYWJpY2FsbHMKLSNlbmRpZgotCi0jaWYgZGVmaW5lZChBQklDQUxMUykgJiYgIWRlZmluZWQoX0tFUk5FTCkKLQlBQklDQUxMUwotI2VuZGlmCi0KLSNpZiAhZGVmaW5lZChfX01JUFNFTF9fKSAmJiAhZGVmaW5lZChfX01JUFNFQl9fKQotI2Vycm9yICJfX01JUFNFTF9fIG9yIF9fTUlQU0VCX18gbXVzdCBiZSBkZWZpbmVkIgotI2VuZGlmCi0vKgotICogRGVmaW5lIGhvdyB0byBhY2Nlc3MgdW5hbGlnbmVkIGRhdGEgd29yZAotICovCi0jaWYgZGVmaW5lZChfX01JUFNFTF9fKQotI2RlZmluZSBMV0xPICAgIGx3bAotI2RlZmluZSBMV0hJICAgIGx3cgotI2RlZmluZQlTV0xPCXN3bAotI2RlZmluZQlTV0hJCXN3cgotI2RlZmluZSBMRExPICAgIGxkbAotI2RlZmluZSBMREhJICAgIGxkcgotI2RlZmluZQlTRExPCXNkbAotI2RlZmluZQlTREhJCXNkcgotI2VuZGlmCi0jaWYgZGVmaW5lZChfX01JUFNFQl9fKQotI2RlZmluZSBMV0xPICAgIGx3cgotI2RlZmluZSBMV0hJICAgIGx3bAotI2RlZmluZQlTV0xPCXN3cgotI2RlZmluZQlTV0hJCXN3bAotI2RlZmluZSBMRExPICAgIGxkcgotI2RlZmluZSBMREhJICAgIGxkbAotI2RlZmluZQlTRExPCXNkcgotI2RlZmluZQlTREhJCXNkbAotI2VuZGlmCi0KLS8qCi0gKiAgRGVmaW5lIHByb2dyYW1taW5nIGVudmlyb25tZW50IGZvciBBQkkuCi0gKi8KLSNpZiBkZWZpbmVkKEFCSUNBTExTKSAmJiAhZGVmaW5lZChfS0VSTkVMKSAmJiAhZGVmaW5lZChfU1RBTkRBTE9ORSkKLQotI2lmIChfTUlQU19TSU0gPT0gX0FCSU8zMikgfHwgKF9NSVBTX1NJTSA9PSBfQUJJMzIpCi0jZGVmaW5lIE5BUkdTQVZFCTQKLQotI2RlZmluZQlTRVRVUF9HUAkJXAotCS5zZXQJbm9yZW9yZGVyOwlcCi0JLmNwbG9hZAl0OTsJCVwKLQkuc2V0CXJlb3JkZXI7Ci0KLSNkZWZpbmUJU0FWRV9HUCh4KQkJXAotCS5jcHJlc3RvcmUgeAotCi0jZGVmaW5lCVNFVFVQX0dQNjQoZ3BvZmYsIG5hbWUpCi0jZGVmaW5lCVJFU1RPUkVfR1A2NAotI2VuZGlmCi0KLSNpZiAoX01JUFNfU0lNID09IF9BQkk2NCkgfHwgKF9NSVBTX1NJTSA9PSBfQUJJTjMyKQotI2RlZmluZSBOQVJHU0FWRQkwCi0KLSNkZWZpbmUJU0VUVVBfR1AKLSNkZWZpbmUJU0FWRV9HUCh4KQotI2RlZmluZQlTRVRVUF9HUDY0KGdwb2ZmLCBuYW1lKQlcCi0JLmNwc2V0dXAgdDksIGdwb2ZmLCBuYW1lCi0jZGVmaW5lCVJFU1RPUkVfR1A2NAkJXAotCS5jcHJldHVybgotI2VuZGlmCi0KLSNkZWZpbmUJTUtGU0laKG5hcmcsbG9jYWxzKSAoKChuYXJnK2xvY2FscykqUkVHU1orMzEpJih+MzEpKQotCi0jZWxzZSAvKiBkZWZpbmVkKEFCSUNBTExTKSAmJiAhZGVmaW5lZChfS0VSTkVMKSAqLwotCi0jZGVmaW5lCU5BUkdTQVZFCTQKLSNkZWZpbmUJU0VUVVBfR1AKLSNkZWZpbmUJU0FWRV9HUCh4KQotCi0jZGVmaW5lCUFMSUdOU1oJCTE2CS8qIFN0YWNrIGxheW91dCBhbGlnbm1lbnQgKi8KLSNkZWZpbmUJRlJBTUVTWihzeikJKCgoc3opICsgKEFMSUdOU1otMSkpICYgfihBTElHTlNaLTEpKQotCi0jZW5kaWYKLQotLyoKLSAqICBCYXNpYyByZWdpc3RlciBvcGVyYXRpb25zIGJhc2VkIG9uIHNlbGVjdGVkIElTQQotICovCi0jaWYgKF9NSVBTX0lTQSA9PSBfTUlQU19JU0FfTUlQUzEgfHwgX01JUFNfSVNBID09IF9NSVBTX0lTQV9NSVBTMiB8fCBfTUlQU19JU0EgPT0gX01JUFNfSVNBX01JUFMzMikKLSNkZWZpbmUgUkVHU1oJCTQJLyogMzIgYml0IG1vZGUgcmVnaXN0ZXIgc2l6ZSAqLwotI2RlZmluZSBMT0dSRUdTWgkyCS8qIGxvZyByc2l6ZSAqLwotI2RlZmluZQlSRUdfUwlzdwotI2RlZmluZQlSRUdfTAlsdwotI2RlZmluZQlDRl9TWgkJMjQJLyogQ2FsbCBmcmFtZSBzaXplICovCi0jZGVmaW5lCUNGX0FSR1NaCTE2CS8qIENhbGwgZnJhbWUgYXJnIHNpemUgKi8KLSNkZWZpbmUJQ0ZfUkFfT0ZGUwkyMAkvKiBDYWxsIHJhIHNhdmUgb2Zmc2V0ICovCi0jZW5kaWYKLQotI2lmIChfTUlQU19JU0EgPT0gX01JUFNfSVNBX01JUFMzIHx8IF9NSVBTX0lTQSA9PSBfTUlQU19JU0FfTUlQUzQgfHwgX01JUFNfSVNBID09IF9NSVBTX0lTQV9NSVBTNjQpCi0jZGVmaW5lIFJFR1NaCQk4CS8qIDY0IGJpdCBtb2RlIHJlZ2lzdGVyIHNpemUgKi8KLSNkZWZpbmUgTE9HUkVHU1oJMwkvKiBsb2cgcnNpemUgKi8KLSNkZWZpbmUJUkVHX1MJc2QKLSNkZWZpbmUJUkVHX0wJbGQKLSNkZWZpbmUJQ0ZfU1oJCTQ4CS8qIENhbGwgZnJhbWUgc2l6ZSAobXVsdGlwbGUgb2YgQUxJR05TWikgKi8KLSNkZWZpbmUJQ0ZfQVJHU1oJMzIJLyogQ2FsbCBmcmFtZSBhcmcgc2l6ZSAqLwotI2RlZmluZQlDRl9SQV9PRkZTCTQwCS8qIENhbGwgcmEgc2F2ZSBvZmZzZXQgKi8KLSNlbmRpZgotCi0jZGVmaW5lIFJFR1NaX0ZQCSA4CS8qIDY0IGJpdCBGUCByZWdpc3RlciBzaXplICovCi0KLSNpZm5kZWYgX19MUDY0X18KLSNkZWZpbmUJUFRSX0wJCWx3Ci0jZGVmaW5lCVBUUl9TCQlzdwotI2RlZmluZQlQVFJfU1VCCQlzdWIKLSNkZWZpbmUJUFRSX0FERAkJYWRkCi0jZGVmaW5lCVBUUl9TVUJVCXN1YnUKLSNkZWZpbmUJUFRSX0FERFUJYWRkdQotI2RlZmluZSBMSQkJbGkKLSNkZWZpbmUJTEEJCWxhCi0jZGVmaW5lCVBUUl9TTEwJCXNsbAotI2RlZmluZQlQVFJfU1JMCQlzcmwKLSNkZWZpbmUJUFRSX1ZBTAkJLndvcmQKLSNlbHNlCi0jZGVmaW5lCVBUUl9MCQlsZAotI2RlZmluZQlQVFJfUwkJc2QKLSNkZWZpbmUJUFRSX0FERAkJZGFkZAotI2RlZmluZQlQVFJfU1VCCQlkc3ViCi0jZGVmaW5lCVBUUl9TVUJVCWRzdWJ1Ci0jZGVmaW5lCVBUUl9BRERVCWRhZGR1Ci0jZGVmaW5lIExJCQlkbGkKLSNkZWZpbmUgTEEJCWRsYQotI2RlZmluZQlQVFJfU0xMCQlkc2xsCi0jZGVmaW5lCVBUUl9TUkwJCWRzcmwKLSNkZWZpbmUJUFRSX1ZBTAkJLmR3b3JkCi0jZW5kaWYKLQotLyoKLSAqIExFQUYoeCwgZnNpemUpCi0gKgotICoJRGVjbGFyZSBhIGxlYWYgcm91dGluZS4KLSAqLwotI2RlZmluZSBMRUFGKHgsIGZzaXplKQkJXAotCS5hbGlnbgkzOwkJXAotCS5nbG9ibCB4OwkJXAotCS5lbnQgeCwgMDsJCVwKLXg6IDsJCQkJXAotCS5jZmlfc3RhcnRwcm9jOyBcCi0JLmZyYW1lIHNwLCBmc2l6ZSwgcmE7CVwKLQlTRVRVUF9HUAkJXAotCi0vKgotICogTk9OX0xFQUYoeCkKLSAqCi0gKglEZWNsYXJlIGEgbm9uLWxlYWYgcm91dGluZSAoYSByb3V0aW5lIHRoYXQgbWFrZXMgb3RoZXIgQyBjYWxscykuCi0gKi8KLSNkZWZpbmUgTk9OX0xFQUYoeCwgZnNpemUsIHJldHBjKSBcCi0JLmFsaWduCTM7CQlcCi0JLmdsb2JsIHg7CQlcCi0JLmVudCB4LCAwOwkJXAoteDogOwkJCQlcCi0JLmNmaV9zdGFydHByb2M7IFwKLQkuZnJhbWUgc3AsIGZzaXplLCByZXRwYzsgXAotCVNFVFVQX0dQCQlcCi0KLSNlbmRpZiAvKiAhX01JUFNfQVNNX0ggKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL2VsZl9tYWNoZGVwLmggYi9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9lbGZfbWFjaGRlcC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkMjdkNDMxLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL2VsZl9tYWNoZGVwLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxOTYgKzAsMCBAQAotLyoJJE5ldEJTRDogZWxmX21hY2hkZXAuaCx2IDEuMTUgMjAxMS8wMy8xNSAwNzozOToyMiBtYXR0IEV4cCAkCSovCi0KLSNpZm5kZWYgX01JUFNfRUxGX01BQ0hERVBfSF8KLSNkZWZpbmUgIF9NSVBTX0VMRl9NQUNIREVQX0hfCi0KLSNpZmRlZiBfTFA2NAotI2RlZmluZSBBUkNIX0VMRlNJWkUJCTY0CS8qIE1EIG5hdGl2ZSBiaW5hcnkgc2l6ZSAqLwotI2Vsc2UKLSNkZWZpbmUgQVJDSF9FTEZTSVpFCQkzMgkvKiBNRCBuYXRpdmUgYmluYXJ5IHNpemUgKi8KLSNlbmRpZgotCi0jaWYgRUxGU0laRSA9PSAzMgotI2RlZmluZQlFTEYzMl9NQUNIREVQX0lEX0NBU0VTCQkJCQkJXAotCQljYXNlIEVNX01JUFM6CQkJCQkJXAotCQkJYnJlYWs7Ci0KLSNkZWZpbmUJRUxGMzJfTUFDSERFUF9JRAlFTV9NSVBTCi0jZWxpZiBFTEZTSVpFID09IDY0Ci0jZGVmaW5lCUVMRjY0X01BQ0hERVBfSURfQ0FTRVMJCQkJCQlcCi0JCWNhc2UgRU1fTUlQUzoJCQkJCQlcCi0JCQlicmVhazsKLQotI2RlZmluZQlFTEY2NF9NQUNIREVQX0lECUVNX01JUFMKLSNlbmRpZgotCi0vKiBtaXBzIHJlbG9jcy4gICovCi0KLSNkZWZpbmUgUl9NSVBTX05PTkUJCTAKLSNkZWZpbmUgUl9NSVBTXzE2CQkxCi0jZGVmaW5lIFJfTUlQU18zMgkJMgotI2RlZmluZSBSX01JUFNfUkVMMzIJCTMKLSNkZWZpbmUgUl9NSVBTX1JFTAkJUl9NSVBTX1JFTDMyCi0jZGVmaW5lIFJfTUlQU18yNgkJNAotI2RlZmluZSBSX01JUFNfSEkxNgkJNQkvKiBoaWdoIDE2IGJpdHMgb2Ygc3ltYm9sIHZhbHVlICovCi0jZGVmaW5lIFJfTUlQU19MTzE2CQk2CS8qIGxvdyAxNiBiaXRzIG9mIHN5bWJvbCB2YWx1ZSAqLwotI2RlZmluZSBSX01JUFNfR1BSRUwxNgkJNyAgCS8qIEdQLXJlbGF0aXZlIHJlZmVyZW5jZSAgKi8KLSNkZWZpbmUgUl9NSVBTX0xJVEVSQUwJCTggCS8qIFJlZmVyZW5jZSB0byBsaXRlcmFsIHNlY3Rpb24gICovCi0jZGVmaW5lIFJfTUlQU19HT1QxNgkJOQkvKiBSZWZlcmVuY2UgdG8gZ2xvYmFsIG9mZnNldCB0YWJsZSAqLwotI2RlZmluZSBSX01JUFNfR09UCQlSX01JUFNfR09UMTYKLSNkZWZpbmUgUl9NSVBTX1BDMTYJCTEwICAJLyogMTYgYml0IFBDIHJlbGF0aXZlIHJlZmVyZW5jZSAqLwotI2RlZmluZSBSX01JUFNfQ0FMTDE2IAkJMTEgIAkvKiAxNiBiaXQgY2FsbCB0aHJ1IGdsYmwgb2Zmc2V0IHRibCAqLwotI2RlZmluZSBSX01JUFNfQ0FMTAkJUl9NSVBTX0NBTEwxNgotI2RlZmluZSBSX01JUFNfR1BSRUwzMgkJMTIKLQotLyogMTMsIDE0LCAxNSBhcmUgbm90IGRlZmluZWQgYXQgdGhpcyBwb2ludC4gKi8KLSNkZWZpbmUgUl9NSVBTX1VOVVNFRDEJCTEzCi0jZGVmaW5lIFJfTUlQU19VTlVTRUQyCQkxNAotI2RlZmluZSBSX01JUFNfVU5VU0VEMwkJMTUKLQotLyoKLSAqIFRoZSByZW1haW5pbmcgcmVsb2NzIGFyZSBhcHBhcmVudGx5IHBhcnQgb2YgdGhlIDY0LWJpdCBJcml4IEVMRiBBQkkuCi0gKi8KLSNkZWZpbmUgUl9NSVBTX1NISUZUNQkJMTYKLSNkZWZpbmUgUl9NSVBTX1NISUZUNgkJMTcKLQotI2RlZmluZSBSX01JUFNfNjQJCTE4Ci0jZGVmaW5lIFJfTUlQU19HT1RfRElTUAkJMTkKLSNkZWZpbmUgUl9NSVBTX0dPVF9QQUdFCQkyMAotI2RlZmluZSBSX01JUFNfR09UX09GU1QJCTIxCi0jZGVmaW5lIFJfTUlQU19HT1RfSEkxNgkJMjIKLSNkZWZpbmUgUl9NSVBTX0dPVF9MTzE2CQkyMwotI2RlZmluZSBSX01JUFNfU1VCIAkJMjQKLSNkZWZpbmUgUl9NSVBTX0lOU0VSVF9BCQkyNQotI2RlZmluZSBSX01JUFNfSU5TRVJUX0IJCTI2Ci0jZGVmaW5lIFJfTUlQU19ERUxFVEUJCTI3Ci0jZGVmaW5lIFJfTUlQU19ISUdIRVIJCTI4Ci0jZGVmaW5lIFJfTUlQU19ISUdIRVNUCQkyOQotI2RlZmluZSBSX01JUFNfQ0FMTF9ISTE2CTMwCi0jZGVmaW5lIFJfTUlQU19DQUxMX0xPMTYJMzEKLSNkZWZpbmUgUl9NSVBTX1NDTl9ESVNQCQkzMgotI2RlZmluZSBSX01JUFNfUkVMMTYJCTMzCi0jZGVmaW5lIFJfTUlQU19BRERfSU1NRURJQVRFCTM0Ci0jZGVmaW5lIFJfTUlQU19QSlVNUAkJMzUKLSNkZWZpbmUgUl9NSVBTX1JFTEdPVAkJMzYKLSNkZWZpbmUJUl9NSVBTX0pBTFIJCTM3Ci0vKiBUTFMgcmVsb2NhdGlvbnMgKi8KLQotI2RlZmluZSBSX01JUFNfVExTX0RUUE1PRDMyCTM4CS8qIE1vZHVsZSBudW1iZXIgMzIgYml0ICovCi0jZGVmaW5lIFJfTUlQU19UTFNfRFRQUkVMMzIJMzkJLyogTW9kdWxlLXJlbGF0aXZlIG9mZnNldCAzMiBiaXQgKi8KLSNkZWZpbmUgUl9NSVBTX1RMU19EVFBNT0Q2NAk0MAkvKiBNb2R1bGUgbnVtYmVyIDY0IGJpdCAqLwotI2RlZmluZSBSX01JUFNfVExTX0RUUFJFTDY0CTQxCS8qIE1vZHVsZS1yZWxhdGl2ZSBvZmZzZXQgNjQgYml0ICovCi0jZGVmaW5lIFJfTUlQU19UTFNfR0QJCTQyCS8qIDE2IGJpdCBHT1Qgb2Zmc2V0IGZvciBHRCAqLwotI2RlZmluZSBSX01JUFNfVExTX0xETQkJNDMJLyogMTYgYml0IEdPVCBvZmZzZXQgZm9yIExETSAqLwotI2RlZmluZSBSX01JUFNfVExTX0RUUFJFTF9ISTE2CTQ0CS8qIE1vZHVsZS1yZWxhdGl2ZSBvZmZzZXQsIGhpZ2ggMTYgYml0cyAqLwotI2RlZmluZSBSX01JUFNfVExTX0RUUFJFTF9MTzE2CTQ1CS8qIE1vZHVsZS1yZWxhdGl2ZSBvZmZzZXQsIGxvdyAxNiBiaXRzICovCi0jZGVmaW5lIFJfTUlQU19UTFNfR09UVFBSRUwJNDYJLyogMTYgYml0IEdPVCBvZmZzZXQgZm9yIElFICovCi0jZGVmaW5lIFJfTUlQU19UTFNfVFBSRUwzMgk0NwkvKiBUUC1yZWxhdGl2ZSBvZmZzZXQsIDMyIGJpdCAqLwotI2RlZmluZSBSX01JUFNfVExTX1RQUkVMNjQJNDgJLyogVFAtcmVsYXRpdmUgb2Zmc2V0LCA2NCBiaXQgKi8KLSNkZWZpbmUgUl9NSVBTX1RMU19UUFJFTF9ISTE2CTQ5CS8qIFRQLXJlbGF0aXZlIG9mZnNldCwgaGlnaCAxNiBiaXRzICovCi0jZGVmaW5lIFJfTUlQU19UTFNfVFBSRUxfTE8xNgk1MAkvKiBUUC1yZWxhdGl2ZSBvZmZzZXQsIGxvdyAxNiBiaXRzICovCi0KLSNkZWZpbmUgUl9NSVBTX21heAkJNTEKLQotI2RlZmluZSBSX1RZUEUobmFtZSkJCV9fQ09OQ0FUKFJfTUlQU18sbmFtZSkKLQotI2RlZmluZQlSX01JUFMxNl9taW4JCTEwMAotI2RlZmluZQlSX01JUFMxNl8yNgkJMTAwCi0jZGVmaW5lCVJfTUlQUzE2X0dQUkVMCQkxMDEKLSNkZWZpbmUJUl9NSVBTMTZfR09UMTYJCTEwMgotI2RlZmluZQlSX01JUFMxNl9DQUxMMTYJCTEwMwotI2RlZmluZQlSX01JUFMxNl9ISTE2CQkxMDQKLSNkZWZpbmUJUl9NSVBTMTZfTE8xNgkJMTA1Ci0jZGVmaW5lCVJfTUlQUzE2X21heAkJMTA2Ci0KLQotLyogbWlwcyBkeW5hbWljIHRhZ3MgKi8KLQotI2RlZmluZSBEVF9NSVBTX1JMRF9WRVJTSU9OCTB4NzAwMDAwMDEKLSNkZWZpbmUgRFRfTUlQU19USU1FX1NUQU1QCTB4NzAwMDAwMDIKLSNkZWZpbmUgRFRfTUlQU19JQ0hFQ0tTVU0JMHg3MDAwMDAwMwotI2RlZmluZSBEVF9NSVBTX0lWRVJTSU9OCTB4NzAwMDAwMDQKLSNkZWZpbmUgRFRfTUlQU19GTEFHUwkJMHg3MDAwMDAwNQotI2RlZmluZSBEVF9NSVBTX0JBU0VfQUREUkVTUwkweDcwMDAwMDA2Ci0jZGVmaW5lIERUX01JUFNfQ09ORkxJQ1QJMHg3MDAwMDAwOAotI2RlZmluZSBEVF9NSVBTX0xJQkxJU1QJCTB4NzAwMDAwMDkKLSNkZWZpbmUgRFRfTUlQU19DT05GTElDVE5PCTB4NzAwMDAwMGIKLSNkZWZpbmUJRFRfTUlQU19MT0NBTF9HT1ROTwkweDcwMDAwMDBhCS8qIG51bWJlciBvZiBsb2NhbCBnb3QgZW50cyAqLwotI2RlZmluZSBEVF9NSVBTX0xJQkxJU1ROTwkweDcwMDAwMDEwCi0jZGVmaW5lCURUX01JUFNfU1lNVEFCTk8JMHg3MDAwMDAxMQkvKiBudW1iZXIgb2YgLmR5bnN5bSBlbnRyaWVzICovCi0jZGVmaW5lIERUX01JUFNfVU5SRUZFWFROTwkweDcwMDAwMDEyCi0jZGVmaW5lCURUX01JUFNfR09UU1lNCQkweDcwMDAwMDEzCS8qIGZpcnN0IGR5bmFtaWMgc3ltIGluIGdvdCAqLwotI2RlZmluZSBEVF9NSVBTX0hJUEFHRU5PCTB4NzAwMDAwMTQKLSNkZWZpbmUJRFRfTUlQU19STERfTUFQCQkweDcwMDAwMDE2CS8qIGFkZHJlc3Mgb2YgbG9hZGVyIG1hcCAqLwotCi0vKgotICogRUxGIEZsYWdzCi0gKi8KLSNkZWZpbmUJRUZfTUlQU19QSUMJCTB4MDAwMDAwMDIJLyogQ29udGFpbnMgUElDIGNvZGUgKi8KLSNkZWZpbmUJRUZfTUlQU19DUElDCQkweDAwMDAwMDA0CS8qIFNURCBQSUMgY2FsbGluZyBzZXF1ZW5jZSAqLwotI2RlZmluZQlFRl9NSVBTX0FCSTIJCTB4MDAwMDAwMjAJLyogTjMyICovCi0KLSNkZWZpbmUJRUZfTUlQU19BUkNIX0FTRQkweDBmMDAwMDAwCS8qIEFyY2hpdGVjdHVyYWwgZXh0ZW5zaW9ucyAqLwotI2RlZmluZQlFRl9NSVBTX0FSQ0hfTURNWAkweDA4MDAwMDAwCS8qIE1ETVggbXVsdGltZWRpYSBleHRlbnNpb24gKi8KLSNkZWZpbmUJRUZfTUlQU19BUkNIX00xNgkweDA0MDAwMDAwCS8qIE1JUFMtMTYgSVNBIGV4dGVuc2lvbnMgKi8KLQotI2RlZmluZQlFRl9NSVBTX0FSQ0gJCTB4ZjAwMDAwMDAJLyogQXJjaGl0ZWN0dXJlIGZpZWxkICovCi0jZGVmaW5lCUVGX01JUFNfQVJDSF8xCQkweDAwMDAwMDAwCS8qIC1taXBzMSBjb2RlICovCi0jZGVmaW5lCUVGX01JUFNfQVJDSF8yCQkweDEwMDAwMDAwCS8qIC1taXBzMiBjb2RlICovCi0jZGVmaW5lCUVGX01JUFNfQVJDSF8zCQkweDIwMDAwMDAwCS8qIC1taXBzMyBjb2RlICovCi0jZGVmaW5lCUVGX01JUFNfQVJDSF80CQkweDMwMDAwMDAwCS8qIC1taXBzNCBjb2RlICovCi0jZGVmaW5lCUVGX01JUFNfQVJDSF81CQkweDQwMDAwMDAwCS8qIC1taXBzNSBjb2RlICovCi0jZGVmaW5lCUVGX01JUFNfQVJDSF8zMgkJMHg1MDAwMDAwMAkvKiAtbWlwczMyIGNvZGUgKi8KLSNkZWZpbmUJRUZfTUlQU19BUkNIXzY0CQkweDYwMDAwMDAwCS8qIC1taXBzNjQgY29kZSAqLwotI2RlZmluZQlFRl9NSVBTX0FSQ0hfMzJSMgkweDcwMDAwMDAwCS8qIC1taXBzMzJyMiBjb2RlICovCi0jZGVmaW5lCUVGX01JUFNfQVJDSF82NFIyCTB4ODAwMDAwMDAJLyogLW1pcHM2NHIyIGNvZGUgKi8KLQotI2RlZmluZQlFRl9NSVBTX0FCSQkJMHgwMDAwZjAwMAotI2RlZmluZQlFRl9NSVBTX0FCSV9PMzIJCTB4MDAwMDEwMDAKLSNkZWZpbmUJRUZfTUlQU19BQklfTzY0CQkweDAwMDAyMDAwCi0jZGVmaW5lCUVGX01JUFNfQUJJX0VBQkkzMgkweDAwMDAzMDAwCi0jZGVmaW5lCUVGX01JUFNfQUJJX0VBQkk2NAkweDAwMDA0MDAwCi0KLSNpZiBkZWZpbmVkKF9fTUlQU0VCX18pCi0jZGVmaW5lCUVMRjMyX01BQ0hERVBfRU5ESUFOTkVTUwlFTEZEQVRBMk1TQgotI2RlZmluZQlFTEY2NF9NQUNIREVQX0VORElBTk5FU1MJRUxGREFUQTJNU0IKLSNlbGlmIGRlZmluZWQoX19NSVBTRUxfXykKLSNkZWZpbmUJRUxGMzJfTUFDSERFUF9FTkRJQU5ORVNTCUVMRkRBVEEyTFNCCi0jZGVmaW5lCUVMRjY0X01BQ0hERVBfRU5ESUFOTkVTUwlFTEZEQVRBMkxTQgotI2VsaWYgIWRlZmluZWQoSEFWRV9OQlRPT0xfQ09ORklHX0gpCi0jZXJyb3IgbmVpdGhlciBfX01JUFNFTF9fIG5vciBfX01JUFNFQl9fIGFyZSBkZWZpbmVkLgotI2VuZGlmCi0KLSNpZmRlZiBfS0VSTkVMCi0jaWZkZWYgX0tFUk5FTF9PUFQKLSNpbmNsdWRlICJvcHRfY29tcGF0X25ldGJzZC5oIgotI2VuZGlmCi0jaWZkZWYgQ09NUEFUXzE2Ci0vKgotICogVXAgdG8gMS42LCB0aGUgRUxGIGR5bmFtaWMgbG9hZGVyIChsZC5lbGZfc28pIHdhcyBub3QgcmVsb2NhdGFibGUuCi0gKiBUZWxsIHRoZSBrZXJuZWwgRUxGIGV4ZWMgY29kZSBub3QgdG8gdHJ5IHJlbG9jYXRpbmcgdGhlIGludGVycHJldGVyCi0gKiBmb3IgZHluYW1pY2FsbHktbGlua2VkIEVMRiBiaW5hcmllcy4KLSAqLwotI2RlZmluZSBFTEZfSU5URVJQX05PTl9SRUxPQ0FUQUJMRQotI2VuZGlmIC8qIENPTVBBVF8xNiAqLwotCi0vKgotICogV2UgbmVlZCB0byBiZSBhYmxlIHRvIGluY2x1ZGUgdGhlIEVMRiBoZWFkZXIgc28gd2UgY2FuIHBpY2sgb3V0IHRoZQotICogQUJJIGJlaW5nIHVzZWQuCi0gKi8KLSNpZmRlZiBFTEZTSVpFCi0jZGVmaW5lCUVMRl9NRF9QUk9CRV9GVU5DCUVMRk5BTUUyKG1pcHNfbmV0YnNkLHByb2JlKQotI2RlZmluZQlFTEZfTURfQ09SRURVTVBfU0VUVVAJRUxGTkFNRTIoY29yZWR1bXAsc2V0dXApCi0jZW5kaWYKLQotc3RydWN0IGV4ZWNfcGFja2FnZTsKLQotaW50IG1pcHNfbmV0YnNkX2VsZjMyX3Byb2JlKHN0cnVjdCBsd3AgKiwgc3RydWN0IGV4ZWNfcGFja2FnZSAqLCB2b2lkICosIGNoYXIgKiwKLQl2YWRkcl90ICopOwotdm9pZCBjb3JlZHVtcF9lbGYzMl9zZXR1cChzdHJ1Y3QgbHdwICosIHZvaWQgKik7Ci0KLWludCBtaXBzX25ldGJzZF9lbGY2NF9wcm9iZShzdHJ1Y3QgbHdwICosIHN0cnVjdCBleGVjX3BhY2thZ2UgKiwgdm9pZCAqLCBjaGFyICosCi0JdmFkZHJfdCAqKTsKLXZvaWQgY29yZWR1bXBfZWxmNjRfc2V0dXAoc3RydWN0IGx3cCAqLCB2b2lkICopOwotI2VuZGlmIC8qIF9LRVJORUwgKi8KLQotI2VuZGlmIC8qIF9NSVBTX0VMRl9NQUNIREVQX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaCBiL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL2VuZGlhbi5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0MWE5MDA0Li4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL2VuZGlhbi5oCisrKyAvZGV2L251bGwKQEAgLTEsNzAgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IGVuZGlhbi5oLHYgMS41IDIwMDYvMDIvMjcgMjM6MzU6NTkgbWlvZCBFeHAgJCAqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMDIgT3BzeWNvbiBBQiAgKHd3dy5vcHN5Y29uLnNlIC8gd3d3Lm9wc3ljb24uY29tKQotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTCi0gKiBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICoKLSAqLwotCi0jaWZuZGVmIF9NSVBTNjRfRU5ESUFOX0hfCi0jZGVmaW5lIF9NSVBTNjRfRU5ESUFOX0hfCi0KLSNpZmRlZiBfX0dOVUNfXwotCi0jaWYgZGVmaW5lZChfX21pcHNfaXNhX3JldikgJiYgKF9fbWlwc19pc2FfcmV2ID49IDIpCi0jZGVmaW5lIF9fc3dhcDE2bWQoeCkgKHsJCQkJCVwKLSAgICByZWdpc3RlciB1aW50MTZfdCBfeCA9ICh4KTsJCQkJCVwKLSAgICByZWdpc3RlciB1aW50MTZfdCBfcjsJCQkJCVwKLSAgICBfX2FzbSB2b2xhdGlsZSAoIndzYmggJTAsICUxIiA6ICI9ciIgKF9yKSA6ICJyIiAoX3gpKTsJXAotICAgIF9yOwkJCQkJCQkJXAotfSkKLQotI2RlZmluZSBfX3N3YXAzMm1kKHgpICh7CQkJCQlcCi0gICAgcmVnaXN0ZXIgdWludDMyX3QgX3ggPSAoeCk7CQkJCQlcCi0gICAgcmVnaXN0ZXIgdWludDMyX3QgX3I7CQkJCQlcCi0gICAgX19hc20gdm9sYXRpbGUgKCJ3c2JoICUwLCAlMTsgcm90ciAlMCwgJTAsIDE2IiA6ICI9ciIgKF9yKSA6ICJyIiAoX3gpKTsgXAotICAgIF9yOwkJCQkJCQkJXAotfSkKLQotI2RlZmluZSBfX3N3YXA2NG1kKHgpICh7CQkJCQlcCi0gICAgdWludDY0X3QgX3N3YXA2NG1kX3ggPSAoeCk7CQkJCQlcCi0gICAgKHVpbnQ2NF90KSBfX3N3YXAzMm1kKF9zd2FwNjRtZF94ID4+IDMyKSB8CQkJXAotICAgICAgICAodWludDY0X3QpIF9fc3dhcDMybWQoX3N3YXA2NG1kX3ggJiAweGZmZmZmZmZmKSA8PCAzMjsJXAotfSkKLQotLyogVGVsbCBzeXMvZW5kaWFuLmggd2UgaGF2ZSBNRCB2YXJpYW50cyBvZiB0aGUgc3dhcCBtYWNyb3MuICAqLwotI2RlZmluZSBNRF9TV0FQCi0KLSNlbmRpZiAgLyogX19taXBzMzJyMl9fICovCi0jZW5kaWYgIC8qIF9fR05VQ19fICovCi0KLSNpZiBkZWZpbmVkKF9fTUlQU0VCX18pCi0jZGVmaW5lIF9CWVRFX09SREVSIF9CSUdfRU5ESUFOCi0jZWxzZQotI2RlZmluZSBfQllURV9PUkRFUiBfTElUVExFX0VORElBTgotI2VuZGlmCi0jZGVmaW5lIF9fU1RSSUNUX0FMSUdOTUVOVAotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPHN5cy9lbmRpYW4uaD4KLQotI2VuZGlmIC8qIF9NSVBTNjRfRU5ESUFOX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9leGVjLmggYi9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9leGVjLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNjNjNmNzQuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvZXhlYy5oCisrKyAvZGV2L251bGwKQEAgLTEsMTg4ICswLDAgQEAKLS8qCSRPcGVuQlNEOiBleGVjLmgsdiAxLjEgMjAwNC8xMC8xOCAxOTowNTozNiBncmFuZ2UgRXhwICQJKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMTk5Ni0yMDA0IFBlciBGb2dlbHN0cm9tLCBPcHN5Y29uIEFCCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MKLSAqIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKgotICovCi0KLSNpZm5kZWYgX01JUFM2NF9FWEVDX0hfCi0jZGVmaW5lIF9NSVBTNjRfRVhFQ19IXwotCi0jZGVmaW5lCV9fTERQR1NaCTQwOTYKLQotLyoKLSAqICBEZWZpbmUgd2hhdCBleGVjICJmb3JtYXRzIiB3ZSBzaG91bGQgaGFuZGxlLgotICovCi0jZGVmaW5lIE5BVElWRV9FWEVDX0VMRgotI2RlZmluZSBOQVRJVkVfRUxGU0laRSA2NAotI2RlZmluZQlFWEVDX1NDUklQVAotCi0vKgotICogIElmIGluY2x1ZGVkIGZyb20gc3lzL2V4ZWMuaCBkZWZpbmUga2VybmVscyBFTEYgZm9ybWF0LgotICovCi0jaWZkZWYgX19MUDY0X18KLSNkZWZpbmUJQVJDSF9FTEZTSVpFIDY0Ci0jZGVmaW5lIERCX0VMRlNJWkUgNjQKLSNkZWZpbmUgRUxGX1RBUkdfQ0xBU1MgIEVMRkNMQVNTNjQKLSNlbHNlCi0jZGVmaW5lCUFSQ0hfRUxGU0laRSAzMgotI2RlZmluZSBEQl9FTEZTSVpFIDMyCi0jZGVmaW5lIEVMRl9UQVJHX0NMQVNTICBFTEZDTEFTUzMyCi0jZW5kaWYKLQotI2lmIGRlZmluZWQoX19NSVBTRUJfXykKLSNkZWZpbmUgRUxGX1RBUkdfREFUQQkJRUxGREFUQTJNU0IKLSNlbHNlCi0jZGVmaW5lIEVMRl9UQVJHX0RBVEEJCUVMRkRBVEEyTFNCCi0jZW5kaWYKLSNkZWZpbmUgRUxGX1RBUkdfTUFDSAkJRU1fTUlQUwotCi0jZGVmaW5lIF9OTElTVF9ET19FTEYKLQotI2lmIGRlZmluZWQoX0xQNjQpCi0jZGVmaW5lIF9LRVJOX0RPX0VMRjY0Ci0jaWYgZGVmaW5lZChDT01QQVRfTzMyKQotI2RlZmluZSBfS0VSTl9ET19FTEYKLSNlbmRpZgotI2Vsc2UKLSNkZWZpbmUgX0tFUk5fRE9fRUxGCi0jZW5kaWYKLQotLyogSW5mb3JtYXRpb24gdGFrZW4gZnJvbSBNSVBTIEFCSSBzdXBwbGVtZW50YWwgKi8KLQotLyogQXJjaGl0ZWN0dXJlIGRlcGVuZGVudCBTZWdtZW50IHR5cGVzIC0gcF90eXBlICovCi0jZGVmaW5lIFBUX01JUFNfUkVHSU5GTyAweDcwMDAwMDAwICAgICAgLyogUmVnaXN0ZXIgdXNhZ2UgaW5mb3JtYXRpb24gKi8KLQotLyogQXJjaGl0ZWN0dXJlIGRlcGVuZGVudCBkX3RhZyBmaWVsZCBmb3IgRWxmMzJfRHluLiAgKi8KLSNkZWZpbmUgRFRfTUlQU19STERfVkVSU0lPTiAgMHg3MDAwMDAwMSAvKiBSdW50aW1lIExpbmtlciBJbnRlcmZhY2UgSUQgKi8KLSNkZWZpbmUgRFRfTUlQU19USU1FX1NUQU1QICAgMHg3MDAwMDAwMiAvKiBUaW1lc3RhbXAgKi8KLSNkZWZpbmUgRFRfTUlQU19JQ0hFQ0tTVU0gICAgMHg3MDAwMDAwMyAvKiBDa3N1bSBvZiBleHQuIHN0ci4gYW5kIGNvbS4gc2l6ZXMgKi8KLSNkZWZpbmUgRFRfTUlQU19JVkVSU0lPTiAgICAgMHg3MDAwMDAwNCAvKiBWZXJzaW9uIHN0cmluZyAoc3RyaW5nIHRibCBpbmRleCkgKi8KLSNkZWZpbmUgRFRfTUlQU19GTEFHUyAgICAgICAgMHg3MDAwMDAwNSAvKiBGbGFncyAqLwotI2RlZmluZSBEVF9NSVBTX0JBU0VfQUREUkVTUyAweDcwMDAwMDA2IC8qIFNlZ21lbnQgYmFzZSBhZGRyZXNzICovCi0jZGVmaW5lIERUX01JUFNfQ09ORkxJQ1QgICAgIDB4NzAwMDAwMDggLyogQWRyIG9mIC5jb25mbGljdCBzZWN0aW9uICovCi0jZGVmaW5lIERUX01JUFNfTElCTElTVCAgICAgIDB4NzAwMDAwMDkgLyogQWRkcmVzcyBvZiAubGlibGlzdCBzZWN0aW9uICovCi0jZGVmaW5lIERUX01JUFNfTE9DQUxfR09UTk8gIDB4NzAwMDAwMGEgLyogTnVtYmVyIG9mIGxvY2FsIC5HT1QgZW50cmllcyAqLwotI2RlZmluZSBEVF9NSVBTX0NPTkZMSUNUTk8gICAweDcwMDAwMDBiIC8qIE51bWJlciBvZiAuY29uZmxpY3QgZW50cmllcyAqLwotI2RlZmluZSBEVF9NSVBTX0xJQkxJU1ROTyAgICAweDcwMDAwMDEwIC8qIE51bWJlciBvZiAubGlibGlzdCBlbnRyaWVzICovCi0jZGVmaW5lIERUX01JUFNfU1lNVEFCTk8gICAgIDB4NzAwMDAwMTEgLyogTnVtYmVyIG9mIC5keW5zeW0gZW50cmllcyAqLwotI2RlZmluZSBEVF9NSVBTX1VOUkVGRVhUTk8gICAweDcwMDAwMDEyIC8qIEZpcnN0IGV4dGVybmFsIERZTlNZTSAqLwotI2RlZmluZSBEVF9NSVBTX0dPVFNZTSAgICAgICAweDcwMDAwMDEzIC8qIEZpcnN0IEdPVCBlbnRyeSBpbiAuZHluc3ltICovCi0jZGVmaW5lIERUX01JUFNfSElQQUdFTk8gICAgIDB4NzAwMDAwMTQgLyogTnVtYmVyIG9mIEdPVCBwYWdlIHRhYmxlIGVudHJpZXMgKi8KLSNkZWZpbmUgRFRfTUlQU19STERfTUFQICAgICAgMHg3MDAwMDAxNiAvKiBBZGRyZXNzIG9mIGRlYnVnIG1hcCBwb2ludGVyICovCi0KLSNkZWZpbmUgRFRfUFJPQ05VTSAoRFRfTUlQU19STERfTUFQIC0gRFRfTE9QUk9DICsgMSkKLQotLyoKLSAqIExlZ2FsIHZhbHVlcyBmb3IgZV9mbGFncyBmaWVsZCBvZiBFbGYzMl9FaGRyLgotICovCi0jZGVmaW5lIEVGX01JUFNfTk9SRU9SREVSCTB4MDAwMDAwMDEJLyogLm5vcmVvcmRlciB3YXMgdXNlZCAqLwotI2RlZmluZSBFRl9NSVBTX1BJQwkJMHgwMDAwMDAwMgkvKiBDb250YWlucyBQSUMgY29kZSAqLwotI2RlZmluZSBFRl9NSVBTX0NQSUMJCTB4MDAwMDAwMDQJLyogVXNlcyBQSUMgY2FsbGluZyBzZXF1ZW5jZSAqLwotI2RlZmluZQlFRl9NSVBTX0FCSTIJCTB4MDAwMDAwMjAJLyogLW4zMiBvbiBJcml4IDYgKi8KLSNkZWZpbmUJRUZfTUlQU18zMkJJVE1PREUJMHgwMDAwMDEwMAkvKiA2NCBiaXQgaW4gMzIgYml0IG1vZGUuLi4gKi8KLSNkZWZpbmUgRUZfTUlQU19BUkNICQkweGYwMDAwMDAwCS8qIE1JUFMgYXJjaGl0ZWN0dXJlIGxldmVsICovCi0jZGVmaW5lCUVfTUlQU19BUkNIXzEJCTB4MDAwMDAwMDAKLSNkZWZpbmUJRV9NSVBTX0FSQ0hfMgkJMHgxMDAwMDAwMAotI2RlZmluZQlFX01JUFNfQVJDSF8zCQkweDIwMDAwMDAwCi0jZGVmaW5lCUVfTUlQU19BUkNIXzQJCTB4MzAwMDAwMDAKLSNkZWZpbmUJRUZfTUlQU19BQkkJCTB4MDAwMGYwMDAJLyogQUJJIGxldmVsICovCi0jZGVmaW5lCUVfTUlQU19BQklfTk9ORQkJMHgwMDAwMDAwMAkvKiBBQkkgbGV2ZWwgbm90IHNldCAqLwotI2RlZmluZQlFX01JUFNfQUJJX08zMgkJMHgwMDAwMTAwMAotI2RlZmluZQlFX01JUFNfQUJJX082NAkJMHgwMDAwMjAwMAotI2RlZmluZQlFX01JUFNfQUJJX0VBQkkzMgkweDAwMDA0MDAwCi0jZGVmaW5lCUVfTUlQU19BQklfRUFCSTY0CTB4MDAwMDQwMDAKLQotLyoKLSAqIE1pcHMgc3BlY2lhbCBzZWN0aW9ucy4KLSAqLwotI2RlZmluZQlTSE5fTUlQU19BQ09NTU9OCTB4ZmYwMAkJLyogQWxsb2NhdGVkIGNvbW1vbiBzeW1ib2xzICovCi0jZGVmaW5lCVNITl9NSVBTX1NDT01NT04JMHhmZjAzCQkvKiBTbWFsbCBjb21tb24gc3ltYm9scyAqLwotI2RlZmluZQlTSE5fTUlQU19TVU5ERUZJTkVECTB4ZmYwNAkJLyogU21hbGwgdW5kZWZpbmVkIHN5bWJvbHMgKi8KLQotLyoKLSAqIExlZ2FsIHZhbHVlcyBmb3Igc2hfdHlwZSBmaWVsZCBvZiBFbGYzMl9TaGRyLgotICovCi0jZGVmaW5lCVNIVF9NSVBTX0xJQkxJU1QgIDB4NzAwMDAwMDAJLyogU2hhcmVkIG9iamVjdHMgdXNlZCBpbiBsaW5rICovCi0jZGVmaW5lCVNIVF9NSVBTX0NPTkZMSUNUIDB4NzAwMDAwMDIJLyogQ29uZmxpY3Rpbmcgc3ltYm9scyAqLwotI2RlZmluZQlTSFRfTUlQU19HUFRBQiAgICAweDcwMDAwMDAzCS8qIEdsb2JhbCBkYXRhIGFyZWEgc2l6ZXMgKi8KLSNkZWZpbmUJU0hUX01JUFNfVUNPREUgICAgMHg3MDAwMDAwNAkvKiBSZXNlcnZlZCBmb3IgU0dJL01JUFMgY29tcGlsZXJzICovCi0jZGVmaW5lCVNIVF9NSVBTX0RFQlVHICAgIDB4NzAwMDAwMDUJLyogTUlQUyBFQ09GRiBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24gKi8KLSNkZWZpbmUJU0hUX01JUFNfUkVHSU5GTyAgMHg3MDAwMDAwNgkvKiBSZWdpc3RlciB1c2FnZSBpbmZvcm1hdGlvbiAqLwotCi0vKgotICogTGVnYWwgdmFsdWVzIGZvciBzaF9mbGFncyBmaWVsZCBvZiBFbGYzMl9TaGRyLgotICovCi0jZGVmaW5lCVNIRl9NSVBTX0dQUkVMCTB4MTAwMDAwMDAJLyogTXVzdCBiZSBwYXJ0IG9mIGdsb2JhbCBkYXRhIGFyZWEgKi8KLQotI2lmIDAKLS8qCi0gKiBFbnRyaWVzIGZvdW5kIGluIHNlY3Rpb25zIG9mIHR5cGUgU0hUX01JUFNfR1BUQUIuCi0gKi8KLXR5cGVkZWYgdW5pb24gewotCXN0cnVjdCB7Ci0JCUVsZjMyX1dvcmQgZ3RfY3VycmVudF9nX3ZhbHVlOwkvKiAtRyB2YWwgdXNlZCBpbiBjb21waWxhdGlvbiAqLwotCQlFbGYzMl9Xb3JkIGd0X3VudXNlZDsJLyogTm90IHVzZWQgKi8KLQl9IGd0X2hlYWRlcjsJCQkvKiBGaXJzdCBlbnRyeSBpbiBzZWN0aW9uICovCi0Jc3RydWN0IHsKLQkJRWxmMzJfV29yZCBndF9nX3ZhbHVlOwkvKiBJZiB0aGlzIHZhbCB3ZXJlIHVzZWQgZm9yIC1HICovCi0JCUVsZjMyX1dvcmQgZ3RfYnl0ZXM7CS8qIFRoaXMgbWFueSBieXRlcyB3b3VsZCBiZSB1c2VkICovCi0JfSBndF9lbnRyeTsJCQkvKiBTdWJzZXF1ZW50IGVudHJpZXMgaW4gc2VjdGlvbiAqLwotfSBFbGYzMl9ncHRhYjsKLQotLyoKLSAqIEVudHJ5IGZvdW5kIGluIHNlY3Rpb25zIG9mIHR5cGUgU0hUX01JUFNfUkVHSU5GTy4KLSAqLwotdHlwZWRlZiBzdHJ1Y3QgewotCUVsZjMyX1dvcmQJcmlfZ3BybWFzazsJLyogR2VuZXJhbCByZWdpc3RlcnMgdXNlZCAqLwotCUVsZjMyX1dvcmQJcmlfY3BybWFza1s0XTsJLyogQ29wcm9jZXNzb3IgcmVnaXN0ZXJzIHVzZWQgKi8KLQlFbGYzMl9Td29yZAlyaV9ncF92YWx1ZTsJLyogJGdwIHJlZ2lzdGVyIHZhbHVlICovCi19IEVsZjMyX1JlZ0luZm87Ci0jZW5kaWYKLQotCi0vKgotICogTWlwcyByZWxvY2F0aW9ucy4KLSAqLwotCi0jZGVmaW5lCVJfTUlQU19OT05FCTAJLyogTm8gcmVsb2MgKi8KLSNkZWZpbmUJUl9NSVBTXzE2CTEJLyogRGlyZWN0IDE2IGJpdCAqLwotI2RlZmluZQlSX01JUFNfMzIJMgkvKiBEaXJlY3QgMzIgYml0ICovCi0jZGVmaW5lCVJfTUlQU19SRUwzMgkzCS8qIFBDIHJlbGF0aXZlIDMyIGJpdCAqLwotI2RlZmluZQlSX01JUFNfMjYJNAkvKiBEaXJlY3QgMjYgYml0IHNoaWZ0ZWQgKi8KLSNkZWZpbmUJUl9NSVBTX0hJMTYJNQkvKiBIaWdoIDE2IGJpdCAqLwotI2RlZmluZQlSX01JUFNfTE8xNgk2CS8qIExvdyAxNiBiaXQgKi8KLSNkZWZpbmUJUl9NSVBTX0dQUkVMMTYJNwkvKiBHUCByZWxhdGl2ZSAxNiBiaXQgKi8KLSNkZWZpbmUJUl9NSVBTX0xJVEVSQUwJOAkvKiAxNiBiaXQgbGl0ZXJhbCBlbnRyeSAqLwotI2RlZmluZQlSX01JUFNfR09UMTYJOQkvKiAxNiBiaXQgR09UIGVudHJ5ICovCi0jZGVmaW5lCVJfTUlQU19QQzE2CTEwCS8qIFBDIHJlbGF0aXZlIDE2IGJpdCAqLwotI2RlZmluZQlSX01JUFNfQ0FMTDE2CTExCS8qIDE2IGJpdCBHT1QgZW50cnkgZm9yIGZ1bmN0aW9uICovCi0jZGVmaW5lCVJfTUlQU19HUFJFTDMyCTEyCS8qIEdQIHJlbGF0aXZlIDMyIGJpdCAqLwotCi0jZGVmaW5lCVJfTUlQU182NAkxOAotCi0jZGVmaW5lCVJfTUlQU19SRUwzMl82NAkoKFJfTUlQU182NCA8PCA4KSB8IFJfTUlQU19SRUwzMikKLQotCi0jZW5kaWYJLyogIV9NSVBTNjRfRVhFQ19IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvcmVnZGVmLmggYi9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9yZWdkZWYuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2E3Y2Q2OC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9yZWdkZWYuaAorKysgL2Rldi9udWxsCkBAIC0xLDk5ICswLDAgQEAKLS8qCSRPcGVuQlNEOiByZWdkZWYuaCx2IDEuMyAyMDA1LzA4LzA3IDA3OjI5OjQ0IG1pb2QgRXhwICQJKi8KLQotLyoKLSAqIENvcHlyaWdodCAoYykgMTk5MiwgMTk5MwotICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQotICogUmFscGggQ2FtcGJlbGwuIFRoaXMgZmlsZSBpcyBkZXJpdmVkIGZyb20gdGhlIE1JUFMgUklTQwotICogQXJjaGl0ZWN0dXJlIGJvb2sgYnkgR2VycnkgS2FuZS4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKgotICoJQCgjKXJlZ2RlZi5oCTguMSAoQmVya2VsZXkpIDYvMTAvOTMKLSAqLwotI2lmbmRlZiBfTUlQU19SRUdERUZfSF8KLSNkZWZpbmUgX01JUFNfUkVHREVGX0hfCi0KLSNpZiAoX01JUFNfU0lNID09IF9BQkk2NCkgJiYgIWRlZmluZWQoX19taXBzX242NCkKLSNkZWZpbmUgX19taXBzX242NCAxCi0jZW5kaWYKLSNpZiAoX01JUFNfU0lNID09IF9BQklOMzIpICYmICAhZGVmaW5lZChfX21pcHNfbjMyKQotI2RlZmluZSBfX21pcHNfbjMyIDEKLSNlbmRpZgotCi0jZGVmaW5lIHplcm8JJDAJLyogYWx3YXlzIHplcm8gKi8KLSNkZWZpbmUgQVQJJGF0CS8qIGFzc2VtYmxlciB0ZW1wICovCi0jZGVmaW5lIHYwCSQyCS8qIHJldHVybiB2YWx1ZSAqLwotI2RlZmluZSB2MQkkMwotI2RlZmluZSBhMAkkNAkvKiBhcmd1bWVudCByZWdpc3RlcnMgKi8KLSNkZWZpbmUgYTEJJDUKLSNkZWZpbmUgYTIJJDYKLSNkZWZpbmUgYTMJJDcKLSNpZiBkZWZpbmVkKF9fbWlwc19uMzIpIHx8IGRlZmluZWQoX19taXBzX242NCkKLSNkZWZpbmUgYTQJJDgJLyogZXhwYW5kZWQgcmVnaXN0ZXIgYXJndW1lbnRzICovCi0jZGVmaW5lIGE1CSQ5Ci0jZGVmaW5lIGE2CSQxMAotI2RlZmluZSBhNwkkMTEKLSNkZWZpbmUgdGEwCSQ4CS8qIGFsaWFzICovCi0jZGVmaW5lIHRhMQkkOQotI2RlZmluZSB0YTIJJDEwCi0jZGVmaW5lIHRhMwkkMTEKLSNkZWZpbmUgdDAJJDEyCS8qIHRlbXAgcmVnaXN0ZXJzIChub3Qgc2F2ZWQgYWNyb3NzIHN1YnJvdXRpbmUgY2FsbHMpICovCi0jZGVmaW5lIHQxCSQxMwotI2RlZmluZSB0MgkkMTQKLSNkZWZpbmUgdDMJJDE1Ci0jZWxzZQotI2RlZmluZSB0MAkkOAkvKiB0ZW1wIHJlZ2lzdGVycyAobm90IHNhdmVkIGFjcm9zcyBzdWJyb3V0aW5lIGNhbGxzKSAqLwotI2RlZmluZSB0MQkkOQotI2RlZmluZSB0MgkkMTAKLSNkZWZpbmUgdDMJJDExCi0jZGVmaW5lIHQ0CSQxMgotI2RlZmluZSB0NQkkMTMKLSNkZWZpbmUgdDYJJDE0Ci0jZGVmaW5lIHQ3CSQxNQotI2RlZmluZSB0YTAJJDEyCS8qIGFsaWFzICovCi0jZGVmaW5lIHRhMQkkMTMKLSNkZWZpbmUgdGEyCSQxNAotI2RlZmluZSB0YTMJJDE1Ci0jZW5kaWYKLSNkZWZpbmUgczAJJDE2CS8qIHNhdmVkIGFjcm9zcyBzdWJyb3V0aW5lIGNhbGxzIChjYWxsZWUgc2F2ZWQpICovCi0jZGVmaW5lIHMxCSQxNwotI2RlZmluZSBzMgkkMTgKLSNkZWZpbmUgczMJJDE5Ci0jZGVmaW5lIHM0CSQyMAotI2RlZmluZSBzNQkkMjEKLSNkZWZpbmUgczYJJDIyCi0jZGVmaW5lIHM3CSQyMwotI2RlZmluZSB0OAkkMjQJLyogdHdvIG1vcmUgdGVtcCByZWdpc3RlcnMgKi8KLSNkZWZpbmUgdDkJJDI1Ci0jZGVmaW5lIGswCSQyNgkvKiBrZXJuZWwgdGVtcG9yYXJ5ICovCi0jZGVmaW5lIGsxCSQyNwotI2RlZmluZSBncAkkMjgJLyogZ2xvYmFsIHBvaW50ZXIgKi8KLSNkZWZpbmUgc3AJJDI5CS8qIHN0YWNrIHBvaW50ZXIgKi8KLSNkZWZpbmUgczgJJDMwCS8qIG9uZSBtb3JlIGNhbGxlZSBzYXZlZCAqLwotI2RlZmluZSByYQkkMzEJLyogcmV0dXJuIGFkZHJlc3MgKi8KLQotI2VuZGlmIC8qICFfTUlQU19SRUdERUZfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL3JlZ251bS5oIGIvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvcmVnbnVtLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJmZTEyODAuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvcmVnbnVtLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMTkgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IHJlZ251bS5oLHYgMS4zIDIwMDQvMDgvMTAgMjA6Mjg6MTMgZGVyYWFkdCBFeHAgJCAqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMDIgT3BzeWNvbiBBQiAgKHd3dy5vcHN5Y29uLnNlIC8gd3d3Lm9wc3ljb24uY29tKQotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTCi0gKiBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkKLSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICoKLSAqLwotCi0jaWZuZGVmIF9NSVBTNjRfUkVHTlVNX0hfCi0jZGVmaW5lIF9NSVBTNjRfUkVHTlVNX0hfCi0KLS8qCi0gKiBMb2NhdGlvbiBvZiB0aGUgc2F2ZWQgcmVnaXN0ZXJzIHJlbGF0aXZlIHRvIFpFUk8uCi0gKiBVc2FnZSBpcyBwLT5wX3JlZ3NbWFhdLgotICovCi0jZGVmaW5lIFpFUk8JMAotI2RlZmluZSBBU1QJMQotI2RlZmluZSBWMAkyCi0jZGVmaW5lIFYxCTMKLSNkZWZpbmUgQTAJNAotI2RlZmluZSBBMQk1Ci0jZGVmaW5lIEEyCTYKLSNkZWZpbmUgQTMJNwotI2RlZmluZSBUMAk4Ci0jZGVmaW5lIFQxCTkKLSNkZWZpbmUgVDIJMTAKLSNkZWZpbmUgVDMJMTEKLSNkZWZpbmUgVDQJMTIKLSNkZWZpbmUgVDUJMTMKLSNkZWZpbmUgVDYJMTQKLSNkZWZpbmUgVDcJMTUKLSNkZWZpbmUgUzAJMTYKLSNkZWZpbmUgUzEJMTcKLSNkZWZpbmUgUzIJMTgKLSNkZWZpbmUgUzMJMTkKLSNkZWZpbmUgUzQJMjAKLSNkZWZpbmUgUzUJMjEKLSNkZWZpbmUgUzYJMjIKLSNkZWZpbmUgUzcJMjMKLSNkZWZpbmUgVDgJMjQKLSNkZWZpbmUgVDkJMjUKLSNkZWZpbmUgSzAJMjYKLSNkZWZpbmUgSzEJMjcKLSNkZWZpbmUgR1AJMjgKLSNkZWZpbmUgU1AJMjkKLSNkZWZpbmUgUzgJMzAKLSNkZWZpbmUgUkEJMzEKLSNkZWZpbmUJU1IJMzIKLSNkZWZpbmUJUFMJU1IJLyogYWxpYXMgZm9yIFNSICovCi0jZGVmaW5lIE1VTExPCTMzCi0jZGVmaW5lIE1VTEhJCTM0Ci0jZGVmaW5lIEJBRFZBRERSIDM1Ci0jZGVmaW5lIENBVVNFCTM2Ci0jZGVmaW5lCVBDCTM3Ci0jZGVmaW5lCUlDCTM4Ci0jZGVmaW5lCUNQTAkzOQotCi0jZGVmaW5lCU5VTVNBVkVSRUdTIDQwCQkvKiBOdW1iZXIgb2YgcmVnaXN0ZXJzIHNhdmVkIGluIHRyYXAgKi8KLQotI2RlZmluZSBGUEJBU0UJTlVNU0FWRVJFR1MKLSNkZWZpbmUgRjAJKEZQQkFTRSswKQotI2RlZmluZSBGMQkoRlBCQVNFKzEpCi0jZGVmaW5lIEYyCShGUEJBU0UrMikKLSNkZWZpbmUgRjMJKEZQQkFTRSszKQotI2RlZmluZSBGNAkoRlBCQVNFKzQpCi0jZGVmaW5lIEY1CShGUEJBU0UrNSkKLSNkZWZpbmUgRjYJKEZQQkFTRSs2KQotI2RlZmluZSBGNwkoRlBCQVNFKzcpCi0jZGVmaW5lIEY4CShGUEJBU0UrOCkKLSNkZWZpbmUgRjkJKEZQQkFTRSs5KQotI2RlZmluZSBGMTAJKEZQQkFTRSsxMCkKLSNkZWZpbmUgRjExCShGUEJBU0UrMTEpCi0jZGVmaW5lIEYxMgkoRlBCQVNFKzEyKQotI2RlZmluZSBGMTMJKEZQQkFTRSsxMykKLSNkZWZpbmUgRjE0CShGUEJBU0UrMTQpCi0jZGVmaW5lIEYxNQkoRlBCQVNFKzE1KQotI2RlZmluZSBGMTYJKEZQQkFTRSsxNikKLSNkZWZpbmUgRjE3CShGUEJBU0UrMTcpCi0jZGVmaW5lIEYxOAkoRlBCQVNFKzE4KQotI2RlZmluZSBGMTkJKEZQQkFTRSsxOSkKLSNkZWZpbmUgRjIwCShGUEJBU0UrMjApCi0jZGVmaW5lIEYyMQkoRlBCQVNFKzIxKQotI2RlZmluZSBGMjIJKEZQQkFTRSsyMikKLSNkZWZpbmUgRjIzCShGUEJBU0UrMjMpCi0jZGVmaW5lIEYyNAkoRlBCQVNFKzI0KQotI2RlZmluZSBGMjUJKEZQQkFTRSsyNSkKLSNkZWZpbmUgRjI2CShGUEJBU0UrMjYpCi0jZGVmaW5lIEYyNwkoRlBCQVNFKzI3KQotI2RlZmluZSBGMjgJKEZQQkFTRSsyOCkKLSNkZWZpbmUgRjI5CShGUEJBU0UrMjkpCi0jZGVmaW5lIEYzMAkoRlBCQVNFKzMwKQotI2RlZmluZSBGMzEJKEZQQkFTRSszMSkKLSNkZWZpbmUJRlNSCShGUEJBU0UrMzIpCi0KLSNkZWZpbmUJTlVNRlBSRUdTIDMzCi0KLSNkZWZpbmUJTlJFR1MJKE5VTVNBVkVSRUdTICsgTlVNRlBSRUdTKQotCi0jZW5kaWYgLyogIV9NSVBTNjRfUkVHTlVNX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L2luY2x1ZGUvbWFjaGluZS9zZXRqbXAuaCBiL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1NWJhN2JlLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oCisrKyAvZGV2L251bGwKQEAgLTEsMTAgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IHNldGptcC5oLHYgMS4yIDIwMDQvMDgvMTAgMjE6MTA6NTYgcGVmbyBFeHAgJAkqLwotCi0vKiBQdWJsaWMgZG9tYWluICovCi0KLSNpZm5kZWYgX01JUFNfU0VUSk1QX0hfCi0jZGVmaW5lIF9NSVBTX1NFVEpNUF9IXwotCi0jZGVmaW5lCV9KQkxFTgkxNTcJCS8qIHNpemUsIGluIGxvbmdzLCBvZiBhIGptcF9idWYgKi8KLQotI2VuZGlmIC8qICFfTUlQU19TRVRKTVBfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvaW5jbHVkZS9tYWNoaW5lL3NpZ25hbC5oIGIvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvc2lnbmFsLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIzMTcxNWMuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9pbmNsdWRlL21hY2hpbmUvc2lnbmFsLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MSArMCwwIEBACi0vKgkkT3BlbkJTRDogc2lnbmFsLmgsdiAxLjggMjAwNi8wMS8wOSAxODoxODozNyBtaWxsZXJ0IEV4cCAkCSovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTIsIDE5OTMKLSAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKLSAqIFJhbHBoIENhbXBiZWxsLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqCi0gKglAKCMpc2lnbmFsLmgJOC4xIChCZXJrZWxleSkgNi8xMC85MwotICovCi0KLSNpZm5kZWYgX01JUFNfU0lHTkFMX0hfCi0jZGVmaW5lIF9NSVBTX1NJR05BTF9IXwotCi0jZGVmaW5lCVNDX1JFR01BU0sJKDAqUkVHU1opCi0jZGVmaW5lCVNDX1NUQVRVUwkoMSpSRUdTWikKLSNkZWZpbmUJU0NfUEMJCSgyKlJFR1NaKQotI2RlZmluZQlTQ19SRUdTCQkoU0NfUEMrOCkKLSNkZWZpbmUJU0NfRlBSRUdTCShTQ19SRUdTKzMyKjgpCi0jZGVmaW5lCVNDX0FDWAkJKFNDX0ZQUkVHUyszMipSRUdTWl9GUCkKLSNkZWZpbmUJU0NfVVNFRF9NQVRICShTQ19BQ1grMypSRUdTWikKLS8qIE9wZW5CU0QgY29tcGF0aWJpbGl0eSAqLwotI2RlZmluZQlTQ19NQVNLCQlTQ19SRUdNQVNLCi0jZGVmaW5lCVNDX0ZQVVNFRAlTQ19VU0VEX01BVEgKLQotI2VuZGlmCS8qICFfTUlQU19TSUdOQUxfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvbWlwczY0Lm1rIGIvbGliYy9hcmNoLW1pcHM2NC9taXBzNjQubWsKaW5kZXggMGQ0YjcyNy4uMmI4MWU2MyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9taXBzNjQubWsKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9taXBzNjQubWsKQEAgLTksMTUgKzksMTMgQEAKICAgICBiaW9uaWMvX19tZW1zZXRfY2hrLmNwcCBcCiAgICAgYmlvbmljL19fc3RyY3B5X2Noay5jcHAgXAogICAgIGJpb25pYy9fX3N0cmNhdF9jaGsuY3BwIFwKLSAgICBiaW9uaWMvbWVtY2hyLmMgXAotICAgIGJpb25pYy9tZW1jbXAuYyBcCi0gICAgYmlvbmljL21lbWNweS5jcHAgXAotICAgIGJpb25pYy9tZW1tb3ZlLmMgXAotICAgIGJpb25pYy9tZW1yY2hyLmMgXAotICAgIGJpb25pYy9tZW1zZXQuYyBcCiAgICAgYmlvbmljL3N0cmNoci5jcHAgXAogICAgIGJpb25pYy9zdHJubGVuLmMgXAogICAgIGJpb25pYy9zdHJyY2hyLmNwcCBcCisgICAgYXJjaC1taXBzL3N0cmluZy9tZW1jbXAuYyBcCisgICAgYXJjaC1taXBzL3N0cmluZy9tZW1jcHkuYyBcCisgICAgYXJjaC1taXBzL3N0cmluZy9tZW1zZXQuYyBcCisgICAgYXJjaC1taXBzL3N0cmluZy9zdHJsZW4uYyBcCiAKIGxpYmNfZnJlZWJzZF9zcmNfZmlsZXNfbWlwczY0ICs9IFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0cmluZy93Y3NjYXQuYyBcCkBAIC0zMCw2ICsyOCw5IEBACiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdHJpbmcvd21lbW1vdmUuYyBcCiAKIGxpYmNfb3BlbmJzZF9zcmNfZmlsZXNfbWlwczY0ICs9IFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9tZW1jaHIuYyBcCisgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtbW92ZS5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9tZW1yY2hyLmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cGNweS5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHBuY3B5LmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cmNhdC5jIFwKQEAgLTM3LDcgKzM4LDYgQEAKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJjcHkuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RybGNhdC5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJsY3B5LmMgXAotICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cmxlbi5jIFwKICAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJuY2F0LmMgXAogICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL3N0cm5jbXAuYyBcCiAgICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RybmNweS5jIFwKQEAgLTQ5LDEyICs0OSwxMCBAQAogbGliY19iaW9uaWNfc3JjX2ZpbGVzX21pcHM2NCArPSBcCiAgICAgYXJjaC1taXBzNjQvYmlvbmljL19fYmlvbmljX2Nsb25lLlMgXAogICAgIGFyY2gtbWlwczY0L2Jpb25pYy9fZXhpdF93aXRoX3N0YWNrX3RlYXJkb3duLlMgXAotICAgIGFyY2gtbWlwczY0L2Jpb25pYy9fX2dldF9zcC5TIFwKLSAgICBhcmNoLW1pcHM2NC9iaW9uaWMvX3NldGptcC5TIFwKICAgICBhcmNoLW1pcHM2NC9iaW9uaWMvc2V0am1wLlMgXAotICAgIGFyY2gtbWlwczY0L2Jpb25pYy9zaWdzZXRqbXAuUyBcCiAgICAgYXJjaC1taXBzNjQvYmlvbmljL3N5c2NhbGwuUyBcCiAgICAgYXJjaC1taXBzNjQvYmlvbmljL3Zmb3JrLlMgXAorICAgIGFyY2gtbWlwczY0L2Jpb25pYy9zdGF0LmNwcCBcCiAKIGxpYmNfY3J0X3RhcmdldF9jZmxhZ3NfbWlwczY0IDo9IFwKICAgICAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9HTE9CQUxfQ0ZMQUdTKSBcCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N0cmluZy9tZW1zZXQuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3RyaW5nL21lbXNldC5TCmluZGV4IDNlNjMwY2EuLjA5Yjc1NmIgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3RyaW5nL21lbXNldC5TCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3RyaW5nL21lbXNldC5TCkBAIC02Nyw4NiArNjcsNiBAQAogI2RlZmluZSBEQkcKICNlbmRpZgogCi0vKgotICogdm9pZCBfbWVtc2V0MTYodWludDE2X3QqIGRzdCwgdWludDE2X3QgdmFsdWUsIHNpemVfdCBzaXplKTsKLSAqLwotCi1MRUFGKF9tZW1zZXQxNiwwKQotCS5zZXQgbm9yZW9yZGVyCi1EQkcJLyogQ2hlY2sgcGFyYW1ldGVycyAqLwotREJHCWFuZGkJdDAsYTAsMQkJCSMgYTAgbXVzdCBiZSBoYWxmd29yZCBhbGlnbmVkCi1EQkcJdG5lCXQwLHplcm8KLURCRwlhbmRpCXQyLGEyLDEJCQkjIGEyIG11c3QgYmUgZXZlbgotREJHCXRuZQl0Mix6ZXJvCi0KLSNpZmRlZiBGSVhBUkdTCi0JIyBlbnN1cmUgY291bnQgaXMgZXZlbgotI2lmIChfX21pcHM9PTMyKSAmJiAoX19taXBzX2lzYV9yZXY+PTIpCi0JaW5zCWEyLHplcm8sMCwxCi0jZWxzZQotCW9yaQlhMiwxCi0JeG9yaQlhMiwxCi0jZW5kaWYKLSNlbmRpZgotCi0jaWYgKF9fbWlwcz09MzIpICYmIChfX21pcHNfaXNhX3Jldj49MikKLQlpbnMJYTEsYTEsMTYsMTYKLSNlbHNlCi0JYW5kaQlhMSwweGZmZmYKLQlzbGwJdDMsYTEsMTYKLQlvcglhMSx0MwotI2VuZGlmCi0KLQliZXF6CWEyLC5MZG9uZQotCSBhbmRpCXQxLGEwLDIKLQliZXF6CXQxLC5MYWxpZ25vawotCSBhZGR1CXQwLGEwLGEyCQkjIHQwIGlzIHRoZSAicGFzdCB0aGUgZW5kIiBhZGRyZXNzCi0Jc2gJYTEsMChhMCkJCSMgc3RvcmUgb25lIGhhbGZ3b3JkIHRvIGdldCBhbGlnbmVkCi0JYWRkdQlhMCwyCi0Jc3VidQlhMiwyCi0uTGFsaWdub2s6Ci0Jc2x0aQl0MSxhMiw0CQkJIyAuTGFsaWduZWQgZm9yIDQgb3IgbW9yZSBieXRlcwotCWJlcXoJdDEsLkxhbGlnbmVkCi0JIHNuZQl0MSxhMiwyCQkJIyBvbmUgbW9yZSBoYWxmd29yZD8KLQlibmV6CXQxLC5MZG9uZQotCSBub3AKLQlzaAlhMSwwKGEwKQotLkxkb25lOgotCWoJcmEKLQkgbm9wCi0JLnNldCByZW9yZGVyCi1FTkQoX21lbXNldDE2KQotCi0vKgotICogdm9pZCBfbWVtc2V0MzIodWludDMyX3QqIGRzdCwgdWludDMyX3QgdmFsdWUsIHNpemVfdCBzaXplKTsKLSAqLwotCi1MRUFGKF9tZW1zZXQzMiwwKQotCS5zZXQgbm9yZW9yZGVyCi1EQkcJLyogQ2hlY2sgcGFyYW1ldGVycyAqLwotREJHCWFuZGkJdDAsYTAsMwkJCSMgYTAgbXVzdCBiZSB3b3JkIGFsaWduZWQKLURCRwl0bmUJdDAsemVybwotREJHCWFuZGkJdDIsYTIsMwkJCSMgYTIgbXVzdCBiZSBhIG11bHRpcGxlIG9mIDQgYnl0ZXMKLURCRwl0bmUJdDIsemVybwotCi0jaWZkZWYgRklYQVJHUwotCSMgZW5zdXJlIGNvdW50IGlzIGEgbXVsdGlwbGUgb2YgNAotI2lmIChfX21pcHM9PTMyKSAmJiAoX19taXBzX2lzYV9yZXY+PTIpCi0JaW5zCSRhMiwkMCwwLDIKLSNlbHNlCi0Jb3JpCWEyLDMKLQl4b3JpCWEyLDMKLSNlbmRpZgotI2VuZGlmCi0KLQlibmV6CWEyLC5MYWxpZ25lZAkJIyBhbnkgd29yayB0byBkbz8KLQkgYWRkdQl0MCxhMCxhMgkJIyB0MCBpcyB0aGUgInBhc3QgdGhlIGVuZCIgYWRkcmVzcwotCi0JaglyYQotCSBub3AKLQkuc2V0IHJlb3JkZXIKLUVORChfbWVtc2V0MzIpCi0KIExFQUYobWVtc2V0LDApCiAKIAkuc2V0CW5vcmVvcmRlcgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX19jbG9zZS5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX19jbG9zZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYxY2U3MDgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fX2Nsb3NlLlMKQEAgLTAsMCArMSwyNiBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19jbG9zZSkKKyAgICAuc2V0IHB1c2gKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIGxpIHYwLCBfX05SX2Nsb3NlCisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIG1vdmUgdDAsIHJhCisgICAgYmFsICAgICAyZgorICAgIG5vcAorMjoKKyAgICAuY3BzZXR1cCByYSwgdDEsIDJiCisgICAgTEEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICAuY3ByZXR1cm4KKyAgICBqIHQ5CisgICAgbW92ZSByYSwgdDAKKyAgICAuc2V0IHBvcAorRU5EKF9fX2Nsb3NlKQorLmhpZGRlbiBfX19jbG9zZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX19mYWNjZXNzYXQuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19fZmFjY2Vzc2F0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjQwNjI1ZgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19fZmFjY2Vzc2F0LlMKQEAgLTAsMCArMSwyNiBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19mYWNjZXNzYXQpCisgICAgLnNldCBwdXNoCisgICAgLnNldCBub3Jlb3JkZXIKKyAgICBsaSB2MCwgX19OUl9mYWNjZXNzYXQKKyAgICBzeXNjYWxsCisgICAgYm5leiBhMywgMWYKKyAgICBtb3ZlIGEwLCB2MAorICAgIGogcmEKKyAgICBub3AKKzE6CisgICAgbW92ZSB0MCwgcmEKKyAgICBiYWwgICAgIDJmCisgICAgbm9wCisyOgorICAgIC5jcHNldHVwIHJhLCB0MSwgMmIKKyAgICBMQSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAorICAgIC5jcHJldHVybgorICAgIGogdDkKKyAgICBtb3ZlIHJhLCB0MAorICAgIC5zZXQgcG9wCitFTkQoX19fZmFjY2Vzc2F0KQorLmhpZGRlbiBfX19mYWNjZXNzYXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19fZmNobW9kLlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fX2ZjaG1vZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdjMTZjNTQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fX2ZjaG1vZC5TCkBAIC0wLDAgKzEsMjYgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fZmNobW9kKQorICAgIC5zZXQgcHVzaAorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgbGkgdjAsIF9fTlJfZmNobW9kCisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIG1vdmUgdDAsIHJhCisgICAgYmFsICAgICAyZgorICAgIG5vcAorMjoKKyAgICAuY3BzZXR1cCByYSwgdDEsIDJiCisgICAgTEEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICAuY3ByZXR1cm4KKyAgICBqIHQ5CisgICAgbW92ZSByYSwgdDAKKyAgICAuc2V0IHBvcAorRU5EKF9fX2ZjaG1vZCkKKy5oaWRkZW4gX19fZmNobW9kCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fX2ZjaG1vZGF0LlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fX2ZjaG1vZGF0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTBmMTA4ZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19fZmNobW9kYXQuUwpAQCAtMCwwICsxLDI2IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2ZjaG1vZGF0KQorICAgIC5zZXQgcHVzaAorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgbGkgdjAsIF9fTlJfZmNobW9kYXQKKyAgICBzeXNjYWxsCisgICAgYm5leiBhMywgMWYKKyAgICBtb3ZlIGEwLCB2MAorICAgIGogcmEKKyAgICBub3AKKzE6CisgICAgbW92ZSB0MCwgcmEKKyAgICBiYWwgICAgIDJmCisgICAgbm9wCisyOgorICAgIC5jcHNldHVwIHJhLCB0MSwgMmIKKyAgICBMQSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAorICAgIC5jcHJldHVybgorICAgIGogdDkKKyAgICBtb3ZlIHJhLCB0MAorICAgIC5zZXQgcG9wCitFTkQoX19fZmNobW9kYXQpCisuaGlkZGVuIF9fX2ZjaG1vZGF0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fY2xvY2tfbmFub3NsZWVwLlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fY2xvY2tfbmFub3NsZWVwLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjA0Njc1ZgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19jbG9ja19uYW5vc2xlZXAuUwpAQCAtMCwwICsxLDI2IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fY2xvY2tfbmFub3NsZWVwKQorICAgIC5zZXQgcHVzaAorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgbGkgdjAsIF9fTlJfY2xvY2tfbmFub3NsZWVwCisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIG1vdmUgdDAsIHJhCisgICAgYmFsICAgICAyZgorICAgIG5vcAorMjoKKyAgICAuY3BzZXR1cCByYSwgdDEsIDJiCisgICAgTEEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICAuY3ByZXR1cm4KKyAgICBqIHQ5CisgICAgbW92ZSByYSwgdDAKKyAgICAuc2V0IHBvcAorRU5EKF9fY2xvY2tfbmFub3NsZWVwKQorLmhpZGRlbiBfX2Nsb2NrX25hbm9zbGVlcApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX2ZzdGF0ZnMuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19mc3RhdGZzLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODc2NmUyMgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19mc3RhdGZzLlMKQEAgLTAsMCArMSwyNiBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX2ZzdGF0ZnMpCisgICAgLnNldCBwdXNoCisgICAgLnNldCBub3Jlb3JkZXIKKyAgICBsaSB2MCwgX19OUl9mc3RhdGZzCisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIG1vdmUgdDAsIHJhCisgICAgYmFsICAgICAyZgorICAgIG5vcAorMjoKKyAgICAuY3BzZXR1cCByYSwgdDEsIDJiCisgICAgTEEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICAuY3ByZXR1cm4KKyAgICBqIHQ5CisgICAgbW92ZSByYSwgdDAKKyAgICAuc2V0IHBvcAorRU5EKF9fZnN0YXRmcykKKy5oaWRkZW4gX19mc3RhdGZzCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fcnRfc2lncXVldWVpbmZvLlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fcnRfc2lncXVldWVpbmZvLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTk3YWViYQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX19ydF9zaWdxdWV1ZWluZm8uUwpAQCAtMCwwICsxLDI2IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fcnRfc2lncXVldWVpbmZvKQorICAgIC5zZXQgcHVzaAorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgbGkgdjAsIF9fTlJfcnRfc2lncXVldWVpbmZvCisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIG1vdmUgdDAsIHJhCisgICAgYmFsICAgICAyZgorICAgIG5vcAorMjoKKyAgICAuY3BzZXR1cCByYSwgdDEsIDJiCisgICAgTEEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICAuY3ByZXR1cm4KKyAgICBqIHQ5CisgICAgbW92ZSByYSwgdDAKKyAgICAuc2V0IHBvcAorRU5EKF9fcnRfc2lncXVldWVpbmZvKQorLmhpZGRlbiBfX3J0X3NpZ3F1ZXVlaW5mbwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX3N0YXRmcy5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fX3N0YXRmcy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUyZGI0ZTIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19fc3RhdGZzLlMKQEAgLTAsMCArMSwyNiBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX3N0YXRmcykKKyAgICAuc2V0IHB1c2gKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIGxpIHYwLCBfX05SX3N0YXRmcworICAgIHN5c2NhbGwKKyAgICBibmV6IGEzLCAxZgorICAgIG1vdmUgYTAsIHYwCisgICAgaiByYQorICAgIG5vcAorMToKKyAgICBtb3ZlIHQwLCByYQorICAgIGJhbCAgICAgMmYKKyAgICBub3AKKzI6CisgICAgLmNwc2V0dXAgcmEsIHQxLCAyYgorICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgLmNwcmV0dXJuCisgICAgaiB0OQorICAgIG1vdmUgcmEsIHQwCisgICAgLnNldCBwb3AKK0VORChfX3N0YXRmcykKKy5oaWRkZW4gX19zdGF0ZnMKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX2V4aXQuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX2V4aXQuUwppbmRleCBkYTVhMmY3Li4zN2Y4MTE5IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL19leGl0LlMKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fZXhpdC5TCkBAIC0yNCw1ICsyNCw0IEBACiAgICAgLnNldCBwb3AKIEVORChfZXhpdCkKIAotICAgIC5nbG9ibCBfRXhpdAotICAgIC5lcXUgX0V4aXQsIF9leGl0CitBTElBU19TWU1CT0woX0V4aXQsIF9leGl0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fZmx1c2hfY2FjaGUuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvX2ZsdXNoX2NhY2hlLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE5ZTQ4NDIuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9fZmx1c2hfY2FjaGUuUworKysgL2Rldi9udWxsCkBAIC0xLDI1ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoX2ZsdXNoX2NhY2hlKQotICAgIC5zZXQgcHVzaAotICAgIC5zZXQgbm9yZW9yZGVyCi0gICAgbGkgdjAsIF9fTlJfY2FjaGVmbHVzaAotICAgIHN5c2NhbGwKLSAgICBibmV6IGEzLCAxZgotICAgIG1vdmUgYTAsIHYwCi0gICAgaiByYQotICAgIG5vcAotMToKLSAgICBtb3ZlIHQwLCByYQotICAgIGJhbCAgICAgMmYKLSAgICBub3AKLTI6Ci0gICAgLmNwc2V0dXAgcmEsIHQxLCAyYgotICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgLmNwcmV0dXJuCi0gICAgaiB0OQotICAgIG1vdmUgcmEsIHQwCi0gICAgLnNldCBwb3AKLUVORChfZmx1c2hfY2FjaGUpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2Nsb2NrX25hbm9zbGVlcC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9jbG9ja19uYW5vc2xlZXAuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzk1OGExMC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2Nsb2NrX25hbm9zbGVlcC5TCisrKyAvZGV2L251bGwKQEAgLTEsMjUgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShjbG9ja19uYW5vc2xlZXApCi0gICAgLnNldCBwdXNoCi0gICAgLnNldCBub3Jlb3JkZXIKLSAgICBsaSB2MCwgX19OUl9jbG9ja19uYW5vc2xlZXAKLSAgICBzeXNjYWxsCi0gICAgYm5leiBhMywgMWYKLSAgICBtb3ZlIGEwLCB2MAotICAgIGogcmEKLSAgICBub3AKLTE6Ci0gICAgbW92ZSB0MCwgcmEKLSAgICBiYWwgICAgIDJmCi0gICAgbm9wCi0yOgotICAgIC5jcHNldHVwIHJhLCB0MSwgMmIKLSAgICBMQSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAotICAgIC5jcHJldHVybgotICAgIGogdDkKLSAgICBtb3ZlIHJhLCB0MAotICAgIC5zZXQgcG9wCi1FTkQoY2xvY2tfbmFub3NsZWVwKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9jbG9zZS5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9jbG9zZS5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1ZTIzN2RkLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvY2xvc2UuUworKysgL2Rldi9udWxsCkBAIC0xLDI1ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoY2xvc2UpCi0gICAgLnNldCBwdXNoCi0gICAgLnNldCBub3Jlb3JkZXIKLSAgICBsaSB2MCwgX19OUl9jbG9zZQotICAgIHN5c2NhbGwKLSAgICBibmV6IGEzLCAxZgotICAgIG1vdmUgYTAsIHYwCi0gICAgaiByYQotICAgIG5vcAotMToKLSAgICBtb3ZlIHQwLCByYQotICAgIGJhbCAgICAgMmYKLSAgICBub3AKLTI6Ci0gICAgLmNwc2V0dXAgcmEsIHQxLCAyYgotICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgLmNwcmV0dXJuCi0gICAgaiB0OQotICAgIG1vdmUgcmEsIHQwCi0gICAgLnNldCBwb3AKLUVORChjbG9zZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZmFjY2Vzc2F0LlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2ZhY2Nlc3NhdC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxOGJiODAwLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZmFjY2Vzc2F0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwyNSArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGZhY2Nlc3NhdCkKLSAgICAuc2V0IHB1c2gKLSAgICAuc2V0IG5vcmVvcmRlcgotICAgIGxpIHYwLCBfX05SX2ZhY2Nlc3NhdAotICAgIHN5c2NhbGwKLSAgICBibmV6IGEzLCAxZgotICAgIG1vdmUgYTAsIHYwCi0gICAgaiByYQotICAgIG5vcAotMToKLSAgICBtb3ZlIHQwLCByYQotICAgIGJhbCAgICAgMmYKLSAgICBub3AKLTI6Ci0gICAgLmNwc2V0dXAgcmEsIHQxLCAyYgotICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgLmNwcmV0dXJuCi0gICAgaiB0OQotICAgIG1vdmUgcmEsIHQwCi0gICAgLnNldCBwb3AKLUVORChmYWNjZXNzYXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2ZhbGxvY2F0ZS5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mYWxsb2NhdGUuUwppbmRleCBjMWVmMGVkLi4xNGUyNWEwIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2ZhbGxvY2F0ZS5TCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZmFsbG9jYXRlLlMKQEAgLTI0LDUgKzI0LDQgQEAKICAgICAuc2V0IHBvcAogRU5EKGZhbGxvY2F0ZSkKIAotICAgIC5nbG9ibCBmYWxsb2NhdGU2NAotICAgIC5lcXUgZmFsbG9jYXRlNjQsIGZhbGxvY2F0ZQorQUxJQVNfU1lNQk9MKGZhbGxvY2F0ZTY0LCBmYWxsb2NhdGUpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2ZjaG1vZC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mY2htb2QuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTg3N2I3OC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2ZjaG1vZC5TCisrKyAvZGV2L251bGwKQEAgLTEsMjUgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmY2htb2QpCi0gICAgLnNldCBwdXNoCi0gICAgLnNldCBub3Jlb3JkZXIKLSAgICBsaSB2MCwgX19OUl9mY2htb2QKLSAgICBzeXNjYWxsCi0gICAgYm5leiBhMywgMWYKLSAgICBtb3ZlIGEwLCB2MAotICAgIGogcmEKLSAgICBub3AKLTE6Ci0gICAgbW92ZSB0MCwgcmEKLSAgICBiYWwgICAgIDJmCi0gICAgbm9wCi0yOgotICAgIC5jcHNldHVwIHJhLCB0MSwgMmIKLSAgICBMQSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAotICAgIC5jcHJldHVybgotICAgIGogdDkKLSAgICBtb3ZlIHJhLCB0MAotICAgIC5zZXQgcG9wCi1FTkQoZmNobW9kKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mY2htb2RhdC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mY2htb2RhdC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNTE0OTJhLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZmNobW9kYXQuUworKysgL2Rldi9udWxsCkBAIC0xLDI1ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZmNobW9kYXQpCi0gICAgLnNldCBwdXNoCi0gICAgLnNldCBub3Jlb3JkZXIKLSAgICBsaSB2MCwgX19OUl9mY2htb2RhdAotICAgIHN5c2NhbGwKLSAgICBibmV6IGEzLCAxZgotICAgIG1vdmUgYTAsIHYwCi0gICAgaiByYQotICAgIG5vcAotMToKLSAgICBtb3ZlIHQwLCByYQotICAgIGJhbCAgICAgMmYKLSAgICBub3AKLTI6Ci0gICAgLmNwc2V0dXAgcmEsIHQxLCAyYgotICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgLmNwcmV0dXJuCi0gICAgaiB0OQotICAgIG1vdmUgcmEsIHQwCi0gICAgLnNldCBwb3AKLUVORChmY2htb2RhdCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZnN0YXQ2NC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mc3RhdDY0LlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGExNGQ1MWMuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mc3RhdDY0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwyOCArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGZzdGF0NjQpCi0gICAgLnNldCBwdXNoCi0gICAgLnNldCBub3Jlb3JkZXIKLSAgICBsaSB2MCwgX19OUl9mc3RhdAotICAgIHN5c2NhbGwKLSAgICBibmV6IGEzLCAxZgotICAgIG1vdmUgYTAsIHYwCi0gICAgaiByYQotICAgIG5vcAotMToKLSAgICBtb3ZlIHQwLCByYQotICAgIGJhbCAgICAgMmYKLSAgICBub3AKLTI6Ci0gICAgLmNwc2V0dXAgcmEsIHQxLCAyYgotICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgLmNwcmV0dXJuCi0gICAgaiB0OQotICAgIG1vdmUgcmEsIHQwCi0gICAgLnNldCBwb3AKLUVORChmc3RhdDY0KQotCi0gICAgLmdsb2JsIGZzdGF0Ci0gICAgLmVxdSBmc3RhdCwgZnN0YXQ2NApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mc3RhdGF0NjQuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZnN0YXRhdDY0LlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc4ODhhNDMuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mc3RhdGF0NjQuUworKysgL2Rldi9udWxsCkBAIC0xLDI4ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZnN0YXRhdDY0KQotICAgIC5zZXQgcHVzaAotICAgIC5zZXQgbm9yZW9yZGVyCi0gICAgbGkgdjAsIF9fTlJfbmV3ZnN0YXRhdAotICAgIHN5c2NhbGwKLSAgICBibmV6IGEzLCAxZgotICAgIG1vdmUgYTAsIHYwCi0gICAgaiByYQotICAgIG5vcAotMToKLSAgICBtb3ZlIHQwLCByYQotICAgIGJhbCAgICAgMmYKLSAgICBub3AKLTI6Ci0gICAgLmNwc2V0dXAgcmEsIHQxLCAyYgotICAgIExBIHQ5LF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgLmNwcmV0dXJuCi0gICAgaiB0OQotICAgIG1vdmUgcmEsIHQwCi0gICAgLnNldCBwb3AKLUVORChmc3RhdGF0NjQpCi0KLSAgICAuZ2xvYmwgZnN0YXRhdAotICAgIC5lcXUgZnN0YXRhdCwgZnN0YXRhdDY0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2ZzdGF0ZnM2NC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mc3RhdGZzNjQuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTJlODg1Yy4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2ZzdGF0ZnM2NC5TCisrKyAvZGV2L251bGwKQEAgLTEsMjggKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmc3RhdGZzNjQpCi0gICAgLnNldCBwdXNoCi0gICAgLnNldCBub3Jlb3JkZXIKLSAgICBsaSB2MCwgX19OUl9mc3RhdGZzCi0gICAgc3lzY2FsbAotICAgIGJuZXogYTMsIDFmCi0gICAgbW92ZSBhMCwgdjAKLSAgICBqIHJhCi0gICAgbm9wCi0xOgotICAgIG1vdmUgdDAsIHJhCi0gICAgYmFsICAgICAyZgotICAgIG5vcAotMjoKLSAgICAuY3BzZXR1cCByYSwgdDEsIDJiCi0gICAgTEEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKLSAgICAuY3ByZXR1cm4KLSAgICBqIHQ5Ci0gICAgbW92ZSByYSwgdDAKLSAgICAuc2V0IHBvcAotRU5EKGZzdGF0ZnM2NCkKLQotICAgIC5nbG9ibCBmc3RhdGZzCi0gICAgLmVxdSBmc3RhdGZzLCBmc3RhdGZzNjQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZnRydW5jYXRlLlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2Z0cnVuY2F0ZS5TCmluZGV4IDU4Yjg0N2IuLjA2M2U4ZjMgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZnRydW5jYXRlLlMKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9mdHJ1bmNhdGUuUwpAQCAtMjQsNSArMjQsNCBAQAogICAgIC5zZXQgcG9wCiBFTkQoZnRydW5jYXRlKQogCi0gICAgLmdsb2JsIGZ0cnVuY2F0ZTY0Ci0gICAgLmVxdSBmdHJ1bmNhdGU2NCwgZnRydW5jYXRlCitBTElBU19TWU1CT0woZnRydW5jYXRlNjQsIGZ0cnVuY2F0ZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZ2V0cmxpbWl0LlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2dldHJsaW1pdC5TCmluZGV4IDc1NzZjMTcuLjVlMmE4MmEgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvZ2V0cmxpbWl0LlMKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9nZXRybGltaXQuUwpAQCAtMjQsNSArMjQsNCBAQAogICAgIC5zZXQgcG9wCiBFTkQoZ2V0cmxpbWl0KQogCi0gICAgLmdsb2JsIGdldHJsaW1pdDY0Ci0gICAgLmVxdSBnZXRybGltaXQ2NCwgZ2V0cmxpbWl0CitBTElBU19TWU1CT0woZ2V0cmxpbWl0NjQsIGdldHJsaW1pdCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvbHNlZWsuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvbHNlZWsuUwppbmRleCA1YzkyZDcwLi4zYmZjMjlkIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL2xzZWVrLlMKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9sc2Vlay5TCkBAIC0yNCw1ICsyNCw0IEBACiAgICAgLnNldCBwb3AKIEVORChsc2VlaykKIAotICAgIC5nbG9ibCBsc2VlazY0Ci0gICAgLmVxdSBsc2VlazY0LCBsc2VlaworQUxJQVNfU1lNQk9MKGxzZWVrNjQsIGxzZWVrKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9tbWFwLlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL21tYXAuUwppbmRleCAzOTMyNzFhLi5jYzUzZWIyIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL21tYXAuUworKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL21tYXAuUwpAQCAtMjQsNSArMjQsNCBAQAogICAgIC5zZXQgcG9wCiBFTkQobW1hcCkKIAotICAgIC5nbG9ibCBtbWFwNjQKLSAgICAuZXF1IG1tYXA2NCwgbW1hcAorQUxJQVNfU1lNQk9MKG1tYXA2NCwgbW1hcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvcHJlYWQ2NC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9wcmVhZDY0LlMKaW5kZXggOTBlMDYxMi4uNzk2NWJhOSAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9wcmVhZDY0LlMKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9wcmVhZDY0LlMKQEAgLTI0LDUgKzI0LDQgQEAKICAgICAuc2V0IHBvcAogRU5EKHByZWFkNjQpCiAKLSAgICAuZ2xvYmwgcHJlYWQKLSAgICAuZXF1IHByZWFkLCBwcmVhZDY0CitBTElBU19TWU1CT0wocHJlYWQsIHByZWFkNjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3BybGltaXQ2NC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9wcmxpbWl0NjQuUwppbmRleCA1ZjBiYTFkLi5lMDRhNWI2IDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3BybGltaXQ2NC5TCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvcHJsaW1pdDY0LlMKQEAgLTI0LDUgKzI0LDQgQEAKICAgICAuc2V0IHBvcAogRU5EKHBybGltaXQ2NCkKIAotICAgIC5nbG9ibCBwcmxpbWl0Ci0gICAgLmVxdSBwcmxpbWl0LCBwcmxpbWl0NjQKK0FMSUFTX1NZTUJPTChwcmxpbWl0LCBwcmxpbWl0NjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3B3cml0ZTY0LlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3B3cml0ZTY0LlMKaW5kZXggZTM0ZjhkYi4uOTdlMDE4MyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9wd3JpdGU2NC5TCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvcHdyaXRlNjQuUwpAQCAtMjQsNSArMjQsNCBAQAogICAgIC5zZXQgcG9wCiBFTkQocHdyaXRlNjQpCiAKLSAgICAuZ2xvYmwgcHdyaXRlCi0gICAgLmVxdSBwd3JpdGUsIHB3cml0ZTY0CitBTElBU19TWU1CT0wocHdyaXRlLCBwd3JpdGU2NCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvc2VuZGZpbGUuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvc2VuZGZpbGUuUwppbmRleCBmMzMwMjQyLi5hNTA0NTllIDEwMDY0NAotLS0gYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3NlbmRmaWxlLlMKKysrIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9zZW5kZmlsZS5TCkBAIC0yNCw1ICsyNCw0IEBACiAgICAgLnNldCBwb3AKIEVORChzZW5kZmlsZSkKIAotICAgIC5nbG9ibCBzZW5kZmlsZTY0Ci0gICAgLmVxdSBzZW5kZmlsZTY0LCBzZW5kZmlsZQorQUxJQVNfU1lNQk9MKHNlbmRmaWxlNjQsIHNlbmRmaWxlKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9zZXRob3N0bmFtZS5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9zZXRob3N0bmFtZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJmMTMyYTIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3NldGhvc3RuYW1lLlMKQEAgLTAsMCArMSwyNSBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShzZXRob3N0bmFtZSkKKyAgICAuc2V0IHB1c2gKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIGxpIHYwLCBfX05SX3NldGhvc3RuYW1lCisgICAgc3lzY2FsbAorICAgIGJuZXogYTMsIDFmCisgICAgbW92ZSBhMCwgdjAKKyAgICBqIHJhCisgICAgbm9wCisxOgorICAgIG1vdmUgdDAsIHJhCisgICAgYmFsICAgICAyZgorICAgIG5vcAorMjoKKyAgICAuY3BzZXR1cCByYSwgdDEsIDJiCisgICAgTEEgdDksX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICAuY3ByZXR1cm4KKyAgICBqIHQ5CisgICAgbW92ZSByYSwgdDAKKyAgICAuc2V0IHBvcAorRU5EKHNldGhvc3RuYW1lKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9zZXRybGltaXQuUyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvc2V0cmxpbWl0LlMKaW5kZXggMGU1ZTgwZS4uYmU2ZmRjMyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9zZXRybGltaXQuUworKysgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3NldHJsaW1pdC5TCkBAIC0yNCw1ICsyNCw0IEBACiAgICAgLnNldCBwb3AKIEVORChzZXRybGltaXQpCiAKLSAgICAuZ2xvYmwgc2V0cmxpbWl0NjQKLSAgICAuZXF1IHNldHJsaW1pdDY0LCBzZXRybGltaXQKK0FMSUFTX1NZTUJPTChzZXRybGltaXQ2NCwgc2V0cmxpbWl0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9zdGF0ZnM2NC5TIGIvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy9zdGF0ZnM2NC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3NDM1MWY3Li4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvc3RhdGZzNjQuUworKysgL2Rldi9udWxsCkBAIC0xLDI4ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoc3RhdGZzNjQpCi0gICAgLnNldCBwdXNoCi0gICAgLnNldCBub3Jlb3JkZXIKLSAgICBsaSB2MCwgX19OUl9zdGF0ZnMKLSAgICBzeXNjYWxsCi0gICAgYm5leiBhMywgMWYKLSAgICBtb3ZlIGEwLCB2MAotICAgIGogcmEKLSAgICBub3AKLTE6Ci0gICAgbW92ZSB0MCwgcmEKLSAgICBiYWwgICAgIDJmCi0gICAgbm9wCi0yOgotICAgIC5jcHNldHVwIHJhLCB0MSwgMmIKLSAgICBMQSB0OSxfX3NldF9lcnJub19pbnRlcm5hbAotICAgIC5jcHJldHVybgotICAgIGogdDkKLSAgICBtb3ZlIHJhLCB0MAotICAgIC5zZXQgcG9wCi1FTkQoc3RhdGZzNjQpCi0KLSAgICAuZ2xvYmwgc3RhdGZzCi0gICAgLmVxdSBzdGF0ZnMsIHN0YXRmczY0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3RydW5jYXRlLlMgYi9saWJjL2FyY2gtbWlwczY0L3N5c2NhbGxzL3RydW5jYXRlLlMKaW5kZXggZmIzYjdlYi4uYjgzMjc5NiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLW1pcHM2NC9zeXNjYWxscy90cnVuY2F0ZS5TCisrKyBiL2xpYmMvYXJjaC1taXBzNjQvc3lzY2FsbHMvdHJ1bmNhdGUuUwpAQCAtMjQsNSArMjQsNCBAQAogICAgIC5zZXQgcG9wCiBFTkQodHJ1bmNhdGUpCiAKLSAgICAuZ2xvYmwgdHJ1bmNhdGU2NAotICAgIC5lcXUgdHJ1bmNhdGU2NCwgdHJ1bmNhdGUKK0FMSUFTX1NZTUJPTCh0cnVuY2F0ZTY0LCB0cnVuY2F0ZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvYXRvbS9zdHJpbmcvc3NlMi13Y3NsZW4tYXRvbS5TIGIvbGliYy9hcmNoLXg4Ni9hdG9tL3N0cmluZy9zc2UyLXdjc2xlbi1hdG9tLlMKaW5kZXggNmE2YWQ1MS4uMmYxMGRiNCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLXg4Ni9hdG9tL3N0cmluZy9zc2UyLXdjc2xlbi1hdG9tLlMKKysrIGIvbGliYy9hcmNoLXg4Ni9hdG9tL3N0cmluZy9zc2UyLXdjc2xlbi1hdG9tLlMKQEAgLTY1LDIxICs2NSwyMSBAQAogRU5UUlkgKHdjc2xlbikKIAltb3YJU1RSKCVlc3ApLCAlZWR4CiAjZW5kaWYKLQljbXAJJDAsICglZWR4KQorCWNtcGwJJDAsICglZWR4KQogCWp6CUwoZXhpdF90YWlsMCkKLQljbXAJJDAsIDQoJWVkeCkKKwljbXBsCSQwLCA0KCVlZHgpCiAJanoJTChleGl0X3RhaWwxKQotCWNtcAkkMCwgOCglZWR4KQorCWNtcGwJJDAsIDgoJWVkeCkKIAlqeglMKGV4aXRfdGFpbDIpCi0JY21wCSQwLCAxMiglZWR4KQorCWNtcGwJJDAsIDEyKCVlZHgpCiAJanoJTChleGl0X3RhaWwzKQotCWNtcAkkMCwgMTYoJWVkeCkKKwljbXBsCSQwLCAxNiglZWR4KQogCWp6CUwoZXhpdF90YWlsNCkKLQljbXAJJDAsIDIwKCVlZHgpCisJY21wbAkkMCwgMjAoJWVkeCkKIAlqeglMKGV4aXRfdGFpbDUpCi0JY21wCSQwLCAyNCglZWR4KQorCWNtcGwJJDAsIDI0KCVlZHgpCiAJanoJTChleGl0X3RhaWw2KQotCWNtcAkkMCwgMjgoJWVkeCkKKwljbXBsCSQwLCAyOCglZWR4KQogCWp6CUwoZXhpdF90YWlsNykKIAogCXB4b3IJJXhtbTAsICV4bW0wCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L2F0b20vc3RyaW5nL3Nzc2UzLXdjc2NhdC1hdG9tLlMgYi9saWJjL2FyY2gteDg2L2F0b20vc3RyaW5nL3Nzc2UzLXdjc2NhdC1hdG9tLlMKaW5kZXggMTdiMDg0My4uOGEzODlhMyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLXg4Ni9hdG9tL3N0cmluZy9zc3NlMy13Y3NjYXQtYXRvbS5TCisrKyBiL2xpYmMvYXJjaC14ODYvYXRvbS9zdHJpbmcvc3NzZTMtd2NzY2F0LWF0b20uUwpAQCAtOTgsMTMgKzk4LDEzIEBACiAJbW92CVNUUjIoJWVzcCksICVlY3gKIAlsZWEJKCVlZGksICVlYXgpLCAlZWR4CiAKLQljbXAJJDAsICglZWN4KQorCWNtcGwJJDAsICglZWN4KQogCWp6CUwoRXhpdDQpCi0JY21wCSQwLCA0KCVlY3gpCisJY21wbAkkMCwgNCglZWN4KQogCWp6CUwoRXhpdDgpCi0JY21wCSQwLCA4KCVlY3gpCisJY21wbAkkMCwgOCglZWN4KQogCWp6CUwoRXhpdDEyKQotCWNtcAkkMCwgMTIoJWVjeCkKKwljbXBsCSQwLCAxMiglZWN4KQogCWp6CUwoRXhpdDE2KQogCiAjdW5kZWYgUkVUVVJOCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L2F0b20vc3RyaW5nL3Nzc2UzLXdjc2NweS1hdG9tLlMgYi9saWJjL2FyY2gteDg2L2F0b20vc3RyaW5nL3Nzc2UzLXdjc2NweS1hdG9tLlMKaW5kZXggOGJhODRiYy4uMjdjYjYxZSAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLXg4Ni9hdG9tL3N0cmluZy9zc3NlMy13Y3NjcHktYXRvbS5TCisrKyBiL2xpYmMvYXJjaC14ODYvYXRvbS9zdHJpbmcvc3NzZTMtd2NzY3B5LWF0b20uUwpAQCAtOTIsMTMgKzkyLDEzIEBACiAJbW92CVNUUjEoJWVzcCksICVlZHgKIAltb3YJU1RSMiglZXNwKSwgJWVjeAogCi0JY21wCSQwLCAoJWVjeCkKKwljbXBsCSQwLCAoJWVjeCkKIAlqeglMKEV4aXRUYWlsNCkKLQljbXAJJDAsIDQoJWVjeCkKKwljbXBsCSQwLCA0KCVlY3gpCiAJanoJTChFeGl0VGFpbDgpCi0JY21wCSQwLCA4KCVlY3gpCisJY21wbAkkMCwgOCglZWN4KQogCWp6CUwoRXhpdFRhaWwxMikKLQljbXAJJDAsIDEyKCVlY3gpCisJY21wbAkkMCwgMTIoJWVjeCkKIAlqeglMKEV4aXRUYWlsMTYpCiAKIAlQVVNICSglZWRpKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9iaW9uaWMvX19iaW9uaWNfY2xvbmUuUyBiL2xpYmMvYXJjaC14ODYvYmlvbmljL19fYmlvbmljX2Nsb25lLlMKaW5kZXggZWY3OGFlZS4uMWE2ZjY0MiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLXg4Ni9iaW9uaWMvX19iaW9uaWNfY2xvbmUuUworKysgYi9saWJjL2FyY2gteDg2L2Jpb25pYy9fX2Jpb25pY19jbG9uZS5TCkBAIC0zLDggKzMsMTQgQEAKIC8vIHBpZF90IF9fYmlvbmljX2Nsb25lKGludCBmbGFncywgdm9pZCogY2hpbGRfc3RhY2ssIHBpZF90KiBwYXJlbnRfdGlkLCB2b2lkKiB0bHMsIHBpZF90KiBjaGlsZF90aWQsIGludCAoKmZuKSh2b2lkKiksIHZvaWQqIGFyZyk7CiBFTlRSWShfX2Jpb25pY19jbG9uZSkKICAgICAgICAgcHVzaGwgICAlZWJ4CisgICAgICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAorICAgICAgICAuY2ZpX3JlbF9vZmZzZXQgZWJ4LCAwCiAgICAgICAgIHB1c2hsICAgJWVzaQorICAgICAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKKyAgICAgICAgLmNmaV9yZWxfb2Zmc2V0IGVzaSwgMAogICAgICAgICBwdXNobCAgICVlZGkKKyAgICAgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgICAgIC5jZmlfcmVsX29mZnNldCBlZGksIDAKIAogICAgICAgICAjIExvYWQgc3lzdGVtIGNhbGwgYXJndW1lbnRzIGludG8gcmVnaXN0ZXJzLgogICAgICAgICBtb3ZsICAgIDE2KCVlc3ApLCAlZWJ4ICAgIyBmbGFncwpAQCAtNDYsOCArNTIsMTQgQEAKICAgICAgICAgIyBXZSdyZSB0aGUgcGFyZW50OyBub3RoaW5nIHRvIGRvLgogLkxfYmNfcmV0dXJuOgogICAgICAgICBwb3BsICAgICVlZGkKKyAgICAgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCAtNAorICAgICAgICAuY2ZpX3Jlc3RvcmUgZWRpCiAgICAgICAgIHBvcGwgICAgJWVzaQorICAgICAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IC00CisgICAgICAgIC5jZmlfcmVzdG9yZSBlc2kKICAgICAgICAgcG9wbCAgICAlZWJ4CisgICAgICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgLTQKKyAgICAgICAgLmNmaV9yZXN0b3JlIGVieAogICAgICAgICByZXQKIEVORChfX2Jpb25pY19jbG9uZSkKIC5oaWRkZW4gX19iaW9uaWNfY2xvbmUKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvYmlvbmljL19zZXRqbXAuUyBiL2xpYmMvYXJjaC14ODYvYmlvbmljL19zZXRqbXAuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGIyNTZhMi4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gteDg2L2Jpb25pYy9fc2V0am1wLlMKKysrIC9kZXYvbnVsbApAQCAtMSw3MyArMCwwIEBACi0vKiAkT3BlbkJTRDogX3NldGptcC5TLHYgMS41IDIwMDUvMDgvMDcgMTE6MzA6MzggZXNwaWUgRXhwICQgKi8KLS8qLQotICogQ29weXJpZ2h0IChjKSAxOTkwIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCi0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKLSAqIFdpbGxpYW0gSm9saXR6LgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLS8qCi0gKiBDIGxpYnJhcnkgLS0gX3NldGptcCwgX2xvbmdqbXAKLSAqCi0gKglfbG9uZ2ptcChhLHYpCi0gKiB3aWxsIGdlbmVyYXRlIGEgInJldHVybih2KSIgZnJvbSB0aGUgbGFzdCBjYWxsIHRvCi0gKglfc2V0am1wKGEpCi0gKiBieSByZXN0b3JpbmcgcmVnaXN0ZXJzIGZyb20gdGhlIHN0YWNrLgotICogVGhlIHByZXZpb3VzIHNpZ25hbCBzdGF0ZSBpcyBOT1QgcmVzdG9yZWQuCi0gKi8KLQotRU5UUlkoX3NldGptcCkKLQltb3ZsCTQoJWVzcCksJWVheAotCW1vdmwJMCglZXNwKSwlZWR4Ci0JbW92bAklZWR4LCAwKCVlYXgpCQkvKiBydGEgKi8KLQltb3ZsCSVlYngsIDQoJWVheCkKLQltb3ZsCSVlc3AsIDgoJWVheCkKLQltb3ZsCSVlYnAsMTIoJWVheCkKLQltb3ZsCSVlc2ksMTYoJWVheCkKLQltb3ZsCSVlZGksMjAoJWVheCkKLQl4b3JsCSVlYXgsJWVheAotCXJldAotRU5EKF9zZXRqbXApCi0KLUVOVFJZKF9sb25nam1wKQotCW1vdmwJNCglZXNwKSwlZWR4Ci0JbW92bAk4KCVlc3ApLCVlYXgKLQltb3ZsCTAoJWVkeCksJWVjeAotCW1vdmwJNCglZWR4KSwlZWJ4Ci0JbW92bAk4KCVlZHgpLCVlc3AKLQltb3ZsCTEyKCVlZHgpLCVlYnAKLQltb3ZsCTE2KCVlZHgpLCVlc2kKLQltb3ZsCTIwKCVlZHgpLCVlZGkKLQl0ZXN0bAklZWF4LCVlYXgKLQlqbnoJMWYKLQlpbmNsCSVlYXgKLTE6CW1vdmwJJWVjeCwwKCVlc3ApCi0JcmV0Ci1FTkQoX2xvbmdqbXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L2Jpb25pYy9zZXRqbXAuUyBiL2xpYmMvYXJjaC14ODYvYmlvbmljL3NldGptcC5TCmluZGV4IDhmOWQ2N2MuLjE4YWQ4MTAgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODYvYmlvbmljL3NldGptcC5TCisrKyBiL2xpYmMvYXJjaC14ODYvYmlvbmljL3NldGptcC5TCkBAIC0xLDQgKzEsMyBAQAotLyogJE9wZW5CU0Q6IHNldGptcC5TLHYgMS44IDIwMDUvMDgvMDcgMTE6MzA6MzggZXNwaWUgRXhwICQgKi8KIC8qLQogICogQ29weXJpZ2h0IChjKSAxOTkwIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgpAQCAtMzMsNTUgKzMyLDk2IEBACiAKICNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KIAotLyoKLSAqIEMgbGlicmFyeSAtLSBzZXRqbXAsIGxvbmdqbXAKLSAqCi0gKglsb25nam1wKGEsdikKLSAqIHdpbGwgZ2VuZXJhdGUgYSAicmV0dXJuKHYpIiBmcm9tIHRoZSBsYXN0IGNhbGwgdG8KLSAqCXNldGptcChhKQotICogYnkgcmVzdG9yaW5nIHJlZ2lzdGVycyBmcm9tIHRoZSBzdGFjay4KLSAqIFRoZSBwcmV2aW91cyBzaWduYWwgc3RhdGUgaXMgcmVzdG9yZWQuCi0gKi8KKyNkZWZpbmUgX0pCX0VEWCAwCisjZGVmaW5lIF9KQl9FQlggMQorI2RlZmluZSBfSkJfRVNQIDIKKyNkZWZpbmUgX0pCX0VCUCAzCisjZGVmaW5lIF9KQl9FU0kgNAorI2RlZmluZSBfSkJfRURJIDUKKyNkZWZpbmUgX0pCX1NJR01BU0sgNgorI2RlZmluZSBfSkJfU0lHRkxBRyA3CiAKIEVOVFJZKHNldGptcCkKLQlQSUNfUFJPTE9HVUUKLQlwdXNobAkkMAotCWNhbGwJUElDX1BMVChzaWdibG9jaykKLQlhZGRsCSQ0LCVlc3AKLQlQSUNfRVBJTE9HVUUKLQotCW1vdmwJNCglZXNwKSwlZWN4Ci0JbW92bAkwKCVlc3ApLCVlZHgKLQltb3ZsCSVlZHgsIDAoJWVjeCkKLQltb3ZsCSVlYngsIDQoJWVjeCkKLQltb3ZsCSVlc3AsIDgoJWVjeCkKLQltb3ZsCSVlYnAsMTIoJWVjeCkKLQltb3ZsCSVlc2ksMTYoJWVjeCkKLQltb3ZsCSVlZGksMjAoJWVjeCkKLQltb3ZsCSVlYXgsMjQoJWVjeCkKLQl4b3JsCSVlYXgsJWVheAotCXJldAorICBtb3ZsIDQoJWVzcCksJWVjeAorICBtb3ZsICQxLChfSkJfU0lHRkxBRyAqIDQpKCVlY3gpCisgIGptcCAuTF9zaWdzZXRqbXBfc2lnbmFsX21hc2sKIEVORChzZXRqbXApCiAKLUVOVFJZKGxvbmdqbXApCi0JbW92bAk0KCVlc3ApLCVlZHgKLQlQSUNfUFJPTE9HVUUKLQlwdXNobAkyNCglZWR4KQotCWNhbGwJUElDX1BMVChzaWdzZXRtYXNrKQotCWFkZGwJJDQsJWVzcAotCVBJQ19FUElMT0dVRQorRU5UUlkoX3NldGptcCkKKyAgbW92bCA0KCVlc3ApLCVlY3gKKyAgbW92bCAkMCwoX0pCX1NJR0ZMQUcgKiA0KSglZWN4KQorICBqbXAgLkxfc2lnc2V0am1wX25vX3NpZ25hbF9tYXNrCitFTkQoX3NldGptcCkKIAotCW1vdmwJNCglZXNwKSwlZWR4Ci0JbW92bAk4KCVlc3ApLCVlYXgKLQltb3ZsCTAoJWVkeCksJWVjeAotCW1vdmwJNCglZWR4KSwlZWJ4Ci0JbW92bAk4KCVlZHgpLCVlc3AKLQltb3ZsCTEyKCVlZHgpLCVlYnAKLQltb3ZsCTE2KCVlZHgpLCVlc2kKLQltb3ZsCTIwKCVlZHgpLCVlZGkKLQl0ZXN0bAklZWF4LCVlYXgKLQlqbnoJMWYKLQlpbmNsCSVlYXgKLTE6CW1vdmwJJWVjeCwwKCVlc3ApCi0JcmV0Ci1FTkQobG9uZ2ptcCkKK0VOVFJZKHNpZ3NldGptcCkKKyAgbW92bCA0KCVlc3ApLCVlY3gKKyAgbW92bCA4KCVlc3ApLCVlYXgKKworICAvLyBSZWNvcmQgd2hldGhlciBvciBub3QgdGhlIHNpZ25hbCBtYXNrIGlzIHZhbGlkLgorICBtb3ZsICVlYXgsKF9KQl9TSUdGTEFHICogNCkoJWVjeCkKKworICAvLyBEbyB3ZSBuZWVkIHRvIHNhdmUgdGhlIHNpZ25hbCBtYXNrPworICB0ZXN0bCAlZWF4LCVlYXgKKyAganogMWYKKworLkxfc2lnc2V0am1wX3NpZ25hbF9tYXNrOgorICAvLyBHZXQgdGhlIGN1cnJlbnQgc2lnbmFsIG1hc2suCisgIFBJQ19QUk9MT0dVRQorICBwdXNobCAkMAorICBjYWxsIFBJQ19QTFQoc2lnYmxvY2spCisgIGFkZGwgJDQsJWVzcAorICBQSUNfRVBJTE9HVUUKKworICAvLyBTYXZlIHRoZSBzaWduYWwgbWFzay4KKyAgbW92bCA0KCVlc3ApLCVlY3gKKyAgbW92bCAlZWF4LChfSkJfU0lHTUFTSyAqIDQpKCVlY3gpCisKKy5MX3NpZ3NldGptcF9ub19zaWduYWxfbWFzazoKKzE6CisgIC8vIFNhdmUgdGhlIGNhbGxlZS1zYXZlIHJlZ2lzdGVycy4KKyAgbW92bCAwKCVlc3ApLCVlZHgKKyAgbW92bCAlZWR4LChfSkJfRURYICogNCkoJWVjeCkKKyAgbW92bCAlZWJ4LChfSkJfRUJYICogNCkoJWVjeCkKKyAgbW92bCAlZXNwLChfSkJfRVNQICogNCkoJWVjeCkKKyAgbW92bCAlZWJwLChfSkJfRUJQICogNCkoJWVjeCkKKyAgbW92bCAlZXNpLChfSkJfRVNJICogNCkoJWVjeCkKKyAgbW92bCAlZWRpLChfSkJfRURJICogNCkoJWVjeCkKKworICB4b3JsICVlYXgsJWVheAorICByZXQKK0VORChzaWdzZXRqbXApCisKK0VOVFJZKHNpZ2xvbmdqbXApCisgIC8vIERvIHdlIGhhdmUgYSBzaWduYWwgbWFzayB0byByZXN0b3JlPworICBtb3ZsIDQoJWVzcCksJWVkeAorICBjbXBsICQwLChfSkJfU0lHRkxBRyAqIDQpKCVlZHgpCisgIGp6IDFmCisKKyAgLy8gUmVzdG9yZSB0aGUgc2lnbmFsIG1hc2suCisgIFBJQ19QUk9MT0dVRQorICBwdXNobCAoX0pCX1NJR01BU0sgKiA0KSglZWR4KQorICBjYWxsIFBJQ19QTFQoc2lnc2V0bWFzaykKKyAgYWRkbCAkNCwlZXNwCisgIFBJQ19FUElMT0dVRQorCisxOgorICAvLyBSZXN0b3JlIHRoZSBjYWxsZWUtc2F2ZSByZWdpc3RlcnMuCisgIG1vdmwgNCglZXNwKSwlZWR4CisgIG1vdmwgOCglZXNwKSwlZWF4CisgIG1vdmwgKF9KQl9FRFggKiA0KSglZWR4KSwlZWN4CisgIG1vdmwgKF9KQl9FQlggKiA0KSglZWR4KSwlZWJ4CisgIG1vdmwgKF9KQl9FU1AgKiA0KSglZWR4KSwlZXNwCisgIG1vdmwgKF9KQl9FQlAgKiA0KSglZWR4KSwlZWJwCisgIG1vdmwgKF9KQl9FU0kgKiA0KSglZWR4KSwlZXNpCisgIG1vdmwgKF9KQl9FREkgKiA0KSglZWR4KSwlZWRpCisKKyAgdGVzdGwgJWVheCwlZWF4CisgIGpueiAyZgorICBpbmNsICVlYXgKKzI6CisgIG1vdmwgJWVjeCwwKCVlc3ApCisgIHJldAorRU5EKHNpZ2xvbmdqbXApCisKK0FMSUFTX1NZTUJPTChsb25nam1wLCBzaWdsb25nam1wKQorQUxJQVNfU1lNQk9MKF9sb25nam1wLCBzaWdsb25nam1wKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9iaW9uaWMvc2lnc2V0am1wLlMgYi9saWJjL2FyY2gteDg2L2Jpb25pYy9zaWdzZXRqbXAuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjUwYzYwNi4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gteDg2L2Jpb25pYy9zaWdzZXRqbXAuUworKysgL2Rldi9udWxsCkBAIC0xLDg2ICswLDAgQEAKLS8qICRPcGVuQlNEOiBzaWdzZXRqbXAuUyx2IDEuNyAyMDA1LzA4LzA3IDExOjMwOjM4IGVzcGllIEV4cCAkICovCi0vKi0KLSAqIENvcHlyaWdodCAoYykgMTk5MCBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLgotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBUaGlzIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1dGVkIHRvIEJlcmtlbGV5IGJ5Ci0gKiBXaWxsaWFtIEpvbGl0ei4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShzaWdzZXRqbXApCi0JbW92bAk0KCVlc3ApLCVlY3gKLQltb3ZsCTgoJWVzcCksJWVheAotCW1vdmwJJWVheCwyOCglZWN4KQotCXRlc3RsCSVlYXgsJWVheAotCWp6CTFmCi0KLQlQSUNfUFJPTE9HVUUKLQlwdXNobAkkMAotCWNhbGwJUElDX1BMVChzaWdibG9jaykKLQlhZGRsCSQ0LCVlc3AKLQlQSUNfRVBJTE9HVUUKLQotCW1vdmwJNCglZXNwKSwlZWN4Ci0JbW92bAklZWF4LDI0KCVlY3gpCi0xOgltb3ZsCTAoJWVzcCksJWVkeAotCW1vdmwJJWVkeCwgMCglZWN4KQotCW1vdmwJJWVieCwgNCglZWN4KQotCW1vdmwJJWVzcCwgOCglZWN4KQotCW1vdmwJJWVicCwxMiglZWN4KQotCW1vdmwJJWVzaSwxNiglZWN4KQotCW1vdmwJJWVkaSwyMCglZWN4KQotCXhvcmwJJWVheCwlZWF4Ci0JcmV0Ci1FTkQoc2lnc2V0am1wKQotCi1FTlRSWShzaWdsb25nam1wKQotCW1vdmwJNCglZXNwKSwlZWR4Ci0JY21wbAkkMCwyOCglZWR4KQotCWp6CTFmCi0KLQlQSUNfUFJPTE9HVUUKLQlwdXNobAkyNCglZWR4KQotCWNhbGwJUElDX1BMVChzaWdzZXRtYXNrKQotCWFkZGwJJDQsJWVzcAotCVBJQ19FUElMT0dVRQotCi0xOgltb3ZsCTQoJWVzcCksJWVkeAotCW1vdmwJOCglZXNwKSwlZWF4Ci0JbW92bAkwKCVlZHgpLCVlY3gKLQltb3ZsCTQoJWVkeCksJWVieAotCW1vdmwJOCglZWR4KSwlZXNwCi0JbW92bAkxMiglZWR4KSwlZWJwCi0JbW92bAkxNiglZWR4KSwlZXNpCi0JbW92bAkyMCglZWR4KSwlZWRpCi0JdGVzdGwJJWVheCwlZWF4Ci0Jam56CTJmCi0JaW5jbAklZWF4Ci0yOgltb3ZsCSVlY3gsMCglZXNwKQotCXJldAotRU5EKHNpZ2xvbmdqbXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L2Jpb25pYy9zeXNjYWxsLlMgYi9saWJjL2FyY2gteDg2L2Jpb25pYy9zeXNjYWxsLlMKaW5kZXggZjg1ZWMzOS4uMmExNTEwMiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLXg4Ni9iaW9uaWMvc3lzY2FsbC5TCisrKyBiL2xpYmMvYXJjaC14ODYvYmlvbmljL3N5c2NhbGwuUwpAQCAtMTUsOSArMTUsMTcgQEAKIEVOVFJZKHN5c2NhbGwpCiAgICAgIyBQdXNoIHRoZSBjYWxsZWUgc2F2ZSByZWdpc3RlcnMuCiAgICAgcHVzaCAgICAlZWJ4CisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVieCwgMAogICAgIHB1c2ggICAgJWVzaQorICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAorICAgIC5jZmlfcmVsX29mZnNldCBlc2ksIDAKICAgICBwdXNoICAgICVlZGkKKyAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZWRpLCAwCiAgICAgcHVzaCAgICAlZWJwCisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVicCwgMAogCiAgICAgIyBMb2FkIGFsbCB0aGUgYXJndW1lbnRzIGZyb20gdGhlIGNhbGxpbmcgZnJhbWUuCiAgICAgIyAoTm90IGFsbCB3aWxsIGJlIHZhbGlkLCBkZXBlbmRpbmcgb24gdGhlIHN5c2NhbGwuKQpAQCAtNDMsOCArNTEsMTYgQEAKIDE6CiAgICAgIyBSZXN0b3JlIHRoZSBjYWxsZWUgc2F2ZSByZWdpc3RlcnMuCiAgICAgcG9wICAgICVlYnAKKyAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IC00CisgICAgLmNmaV9yZXN0b3JlIGVicAogICAgIHBvcCAgICAlZWRpCisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCAtNAorICAgIC5jZmlfcmVzdG9yZSBlZGkKICAgICBwb3AgICAgJWVzaQorICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgLTQKKyAgICAuY2ZpX3Jlc3RvcmUgZXNpCiAgICAgcG9wICAgICVlYngKKyAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IC00CisgICAgLmNmaV9yZXN0b3JlIGVieAogICAgIHJldAogRU5EKHN5c2NhbGwpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L2Jpb25pYy92Zm9yay5TIGIvbGliYy9hcmNoLXg4Ni9iaW9uaWMvdmZvcmsuUwppbmRleCA2YzAyOTEwLi5jYTdhZjBmIDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2L2Jpb25pYy92Zm9yay5TCisrKyBiL2xpYmMvYXJjaC14ODYvYmlvbmljL3Zmb3JrLlMKQEAgLTMyLDYgKzMyLDggQEAKIAogRU5UUlkodmZvcmspCiAgIHBvcGwgICAgJWVjeCAgLy8gR3JhYiB0aGUgcmV0dXJuIGFkZHJlc3MuCisgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAorICAuY2ZpX3JlbF9vZmZzZXQgZWN4LCAwCiAgIG1vdmwgICAgJF9fTlJfdmZvcmssICVlYXgKICAgaW50ICAgICAkMHg4MAogICBjbXBsICAgICQtTUFYX0VSUk5PLCAlZWF4CmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L2luY2x1ZGUvbWFjaGluZS9hc20uaCBiL2xpYmMvYXJjaC14ODYvaW5jbHVkZS9tYWNoaW5lL2FzbS5oCmluZGV4IDY3MjQ5M2QuLjk0M2Y5ZGQgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODYvaW5jbHVkZS9tYWNoaW5lL2FzbS5oCisrKyBiL2xpYmMvYXJjaC14ODYvaW5jbHVkZS9tYWNoaW5lL2FzbS5oCkBAIC00OSwxNSArNDksNiBAQAogI2RlZmluZSBQSUNfR09UKHgpCXhAR09UKCVlYngpCiAjZGVmaW5lIFBJQ19HT1RPRkYoeCkJeEBHT1RPRkYoJWVieCkKIAotLyogbGV0IGtlcm5lbHMgYW5kIG90aGVycyBvdmVycmlkZSBlbnRyeXBvaW50IGFsaWdubWVudCAqLwotI2lmICFkZWZpbmVkKF9BTElHTl9URVhUKSAmJiAhZGVmaW5lZChfS0VSTkVMKQotIyBpZmRlZiBfU1RBTkRBTE9ORQotIyAgZGVmaW5lIF9BTElHTl9URVhUIC5hbGlnbiAxCi0jIGVsaWYgZGVmaW5lZCBfX0VMRl9fCi0jICBkZWZpbmUgX0FMSUdOX1RFWFQgLmFsaWduIDE2Ci0jIGVsc2UKLSMgIGRlZmluZSBfQUxJR05fVEVYVCAuYWxpZ24gNAotIyBlbmRpZgotI2VuZGlmCisjZGVmaW5lIF9fYmlvbmljX2FzbV9hbGlnbiAxNgogCiAjZW5kaWYgLyogIV9JMzg2X0FTTV9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmggYi9saWJjL2FyY2gteDg2L2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTE1MDZiMS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gteDg2L2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaAorKysgL2Rldi9udWxsCkBAIC0xLDYxICswLDAgQEAKLS8qCSRPcGVuQlNEOiBlbmRpYW4uaCx2IDEuMTcgMjAxMS8wMy8xMiAwNDowMzowNCBndWVudGhlciBFeHAgJAkqLwotCi0vKi0KLSAqIENvcHlyaWdodCAoYykgMTk5NyBOaWtsYXMgSGFsbHF2aXN0LiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUgotICogSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUwotICogT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4KLSAqIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAotICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBfTUFDSElORV9FTkRJQU5fSF8KLSNkZWZpbmUgX01BQ0hJTkVfRU5ESUFOX0hfCi0KLSNpZmRlZiBfX0dOVUNfXwotCi0jZGVmaW5lCV9fc3dhcDMybWQoeCkgX19zdGF0ZW1lbnQoewkJCQkJXAotCXVpbnQzMl90IF9fc3dhcDMybWRfeCA9ICh4KTsJCQkJCVwKLQkJCQkJCQkJCVwKLQlfX2FzbSAoImJzd2FwICUwIiA6ICIrciIgKF9fc3dhcDMybWRfeCkpOwkJCVwKLQlfX3N3YXAzMm1kX3g7CQkJCQkJCVwKLX0pCi0KLSNkZWZpbmUJX19zd2FwNjRtZCh4KSBfX3N0YXRlbWVudCh7CQkJCQlcCi0JdWludDY0X3QgX19zd2FwNjRtZF94ID0gKHgpOwkJCQkJXAotCQkJCQkJCQkJXAotCSh1aW50NjRfdClfX3N3YXAzMm1kKF9fc3dhcDY0bWRfeCA+PiAzMikgfAkJCVwKLQkgICAgKHVpbnQ2NF90KV9fc3dhcDMybWQoX19zd2FwNjRtZF94ICYgMHhmZmZmZmZmZikgPDwgMzI7CVwKLX0pCi0jZGVmaW5lCV9fc3dhcDE2bWQoeCkgX19zdGF0ZW1lbnQoewkJCQkJXAotCXVpbnQxNl90IF9fc3dhcDE2bWRfeCA9ICh4KTsJCQkJCVwKLQkJCQkJCQkJCVwKLQlfX2FzbSAoInJvcncgJDgsICV3MCIgOiAiK3IiIChfX3N3YXAxNm1kX3gpKTsJCQlcCi0JX19zd2FwMTZtZF94OwkJCQkJCQlcCi19KQotCi0vKiBUZWxsIHN5cy9lbmRpYW4uaCB3ZSBoYXZlIE1EIHZhcmlhbnRzIG9mIHRoZSBzd2FwIG1hY3Jvcy4gICovCi0jZGVmaW5lIE1EX1NXQVAKLQotI2VuZGlmCS8qIF9fR05VQ19fICovCi0KLSNkZWZpbmUgX0JZVEVfT1JERVIgX0xJVFRMRV9FTkRJQU4KLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxzeXMvZW5kaWFuLmg+Ci0KLSNlbmRpZiAvKiBfTUFDSElORV9FTkRJQU5fSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvaW5jbHVkZS9tYWNoaW5lL2V4ZWMuaCBiL2xpYmMvYXJjaC14ODYvaW5jbHVkZS9tYWNoaW5lL2V4ZWMuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDA5MTc0MS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gteDg2L2luY2x1ZGUvbWFjaGluZS9leGVjLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MSArMCwwIEBACi0vKgkkT3BlbkJTRDogZXhlYy5oLHYgMS45IDIwMDMvMDQvMTcgMDM6NDI6MTQgZHJhaG4gRXhwICQJKi8KLS8qCSROZXRCU0Q6IGV4ZWMuaCx2IDEuNiAxOTk0LzEwLzI3IDA0OjE2OjA1IGNnZCBFeHAgJAkqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAxOTkzIENocmlzdG9waGVyIEcuIERlbWV0cmlvdQotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIFRoZSBuYW1lIG9mIHRoZSBhdXRob3IgbWF5IG5vdCBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cwotICogICAgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUgotICogSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUwotICogT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4KLSAqIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAotICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2lmbmRlZiBfSTM4Nl9FWEVDX0hfCi0jZGVmaW5lIF9JMzg2X0VYRUNfSF8KLQotI2RlZmluZSBfX0xEUEdTWgk0MDk2Ci0KLSNkZWZpbmUgTkFUSVZFX0VYRUNfRUxGCi0KLSNkZWZpbmUgQVJDSF9FTEZTSVpFCQkzMgotCi0jZGVmaW5lIEVMRl9UQVJHX0NMQVNTCQlFTEZDTEFTUzMyCi0jZGVmaW5lIEVMRl9UQVJHX0RBVEEJCUVMRkRBVEEyTFNCCi0jZGVmaW5lIEVMRl9UQVJHX01BQ0gJCUVNXzM4NiAvKiBYWFggLSBFTV80ODYgaXMgY3VycmVudGx5IHVudXNlZAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgYWxsIE9Tcy9jb21waWxlcnMvbGlua2VycyAqLwotCi0jZGVmaW5lIF9OTElTVF9ET19BT1VUCi0jZGVmaW5lIF9OTElTVF9ET19FTEYKLQotI2RlZmluZSBfS0VSTl9ET19BT1VUCi0jZGVmaW5lIF9LRVJOX0RPX0VMRgotCi0jZW5kaWYgIC8qIF9JMzg2X0VYRUNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX19fY2xvc2UuUyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX19fY2xvc2UuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OTY5NDRiCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fX19jbG9zZS5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fY2xvc2UpCisgICAgcHVzaGwgICAlZWJ4CisgICAgLmNmaV9kZWZfY2ZhX29mZnNldCA4CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVieCwgMAorICAgIG1vdiAgICAgOCglZXNwKSwgJWVieAorICAgIG1vdmwgICAgJF9fTlJfY2xvc2UsICVlYXgKKyAgICBpbnQgICAgICQweDgwCisgICAgY21wbCAgICAkLU1BWF9FUlJOTywgJWVheAorICAgIGpiICAgICAgMWYKKyAgICBuZWdsICAgICVlYXgKKyAgICBwdXNobCAgICVlYXgKKyAgICBjYWxsICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgYWRkbCAgICAkNCwgJWVzcAorMToKKyAgICBwb3BsICAgICVlYngKKyAgICByZXQKK0VORChfX19jbG9zZSkKKy5oaWRkZW4gX19fY2xvc2UKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX19fZmFjY2Vzc2F0LlMgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM2MWE2ZWEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TCkBAIC0wLDAgKzEsMzIgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fZmFjY2Vzc2F0KQorICAgIHB1c2hsICAgJWVieAorICAgIC5jZmlfZGVmX2NmYV9vZmZzZXQgOAorICAgIC5jZmlfcmVsX29mZnNldCBlYngsIDAKKyAgICBwdXNobCAgICVlY3gKKyAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZWN4LCAwCisgICAgcHVzaGwgICAlZWR4CisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVkeCwgMAorICAgIG1vdiAgICAgMTYoJWVzcCksICVlYngKKyAgICBtb3YgICAgIDIwKCVlc3ApLCAlZWN4CisgICAgbW92ICAgICAyNCglZXNwKSwgJWVkeAorICAgIG1vdmwgICAgJF9fTlJfZmFjY2Vzc2F0LCAlZWF4CisgICAgaW50ICAgICAkMHg4MAorICAgIGNtcGwgICAgJC1NQVhfRVJSTk8sICVlYXgKKyAgICBqYiAgICAgIDFmCisgICAgbmVnbCAgICAlZWF4CisgICAgcHVzaGwgICAlZWF4CisgICAgY2FsbCAgICBfX3NldF9lcnJub19pbnRlcm5hbAorICAgIGFkZGwgICAgJDQsICVlc3AKKzE6CisgICAgcG9wbCAgICAlZWR4CisgICAgcG9wbCAgICAlZWN4CisgICAgcG9wbCAgICAlZWJ4CisgICAgcmV0CitFTkQoX19fZmFjY2Vzc2F0KQorLmhpZGRlbiBfX19mYWNjZXNzYXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX19fZmNobW9kLlMgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fX2ZjaG1vZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjExOWE2OTUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fX2ZjaG1vZC5TCkBAIC0wLDAgKzEsMjcgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fZmNobW9kKQorICAgIHB1c2hsICAgJWVieAorICAgIC5jZmlfZGVmX2NmYV9vZmZzZXQgOAorICAgIC5jZmlfcmVsX29mZnNldCBlYngsIDAKKyAgICBwdXNobCAgICVlY3gKKyAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZWN4LCAwCisgICAgbW92ICAgICAxMiglZXNwKSwgJWVieAorICAgIG1vdiAgICAgMTYoJWVzcCksICVlY3gKKyAgICBtb3ZsICAgICRfX05SX2ZjaG1vZCwgJWVheAorICAgIGludCAgICAgJDB4ODAKKyAgICBjbXBsICAgICQtTUFYX0VSUk5PLCAlZWF4CisgICAgamIgICAgICAxZgorICAgIG5lZ2wgICAgJWVheAorICAgIHB1c2hsICAgJWVheAorICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICBhZGRsICAgICQ0LCAlZXNwCisxOgorICAgIHBvcGwgICAgJWVjeAorICAgIHBvcGwgICAgJWVieAorICAgIHJldAorRU5EKF9fX2ZjaG1vZCkKKy5oaWRkZW4gX19fZmNobW9kCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fX2ZjaG1vZGF0LlMgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fX2ZjaG1vZGF0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjE1YmI2NAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX19fZmNobW9kYXQuUwpAQCAtMCwwICsxLDMyIEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2ZjaG1vZGF0KQorICAgIHB1c2hsICAgJWVieAorICAgIC5jZmlfZGVmX2NmYV9vZmZzZXQgOAorICAgIC5jZmlfcmVsX29mZnNldCBlYngsIDAKKyAgICBwdXNobCAgICVlY3gKKyAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZWN4LCAwCisgICAgcHVzaGwgICAlZWR4CisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVkeCwgMAorICAgIG1vdiAgICAgMTYoJWVzcCksICVlYngKKyAgICBtb3YgICAgIDIwKCVlc3ApLCAlZWN4CisgICAgbW92ICAgICAyNCglZXNwKSwgJWVkeAorICAgIG1vdmwgICAgJF9fTlJfZmNobW9kYXQsICVlYXgKKyAgICBpbnQgICAgICQweDgwCisgICAgY21wbCAgICAkLU1BWF9FUlJOTywgJWVheAorICAgIGpiICAgICAgMWYKKyAgICBuZWdsICAgICVlYXgKKyAgICBwdXNobCAgICVlYXgKKyAgICBjYWxsICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCisgICAgYWRkbCAgICAkNCwgJWVzcAorMToKKyAgICBwb3BsICAgICVlZHgKKyAgICBwb3BsICAgICVlY3gKKyAgICBwb3BsICAgICVlYngKKyAgICByZXQKK0VORChfX19mY2htb2RhdCkKKy5oaWRkZW4gX19fZmNobW9kYXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX19jbG9ja19uYW5vc2xlZXAuUyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX19jbG9ja19uYW5vc2xlZXAuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NWE1NGQxCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fX2Nsb2NrX25hbm9zbGVlcC5TCkBAIC0wLDAgKzEsMzYgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19jbG9ja19uYW5vc2xlZXApCisgICAgcHVzaGwgICAlZWJ4CisgICAgLmNmaV9kZWZfY2ZhX29mZnNldCA4CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVieCwgMAorICAgIHB1c2hsICAgJWVjeAorICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAorICAgIC5jZmlfcmVsX29mZnNldCBlY3gsIDAKKyAgICBwdXNobCAgICVlZHgKKyAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZWR4LCAwCisgICAgcHVzaGwgICAlZXNpCisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVzaSwgMAorICAgIG1vdiAgICAgMjAoJWVzcCksICVlYngKKyAgICBtb3YgICAgIDI0KCVlc3ApLCAlZWN4CisgICAgbW92ICAgICAyOCglZXNwKSwgJWVkeAorICAgIG1vdiAgICAgMzIoJWVzcCksICVlc2kKKyAgICBtb3ZsICAgICRfX05SX2Nsb2NrX25hbm9zbGVlcCwgJWVheAorICAgIGludCAgICAgJDB4ODAKKyAgICBjbXBsICAgICQtTUFYX0VSUk5PLCAlZWF4CisgICAgamIgICAgICAxZgorICAgIG5lZ2wgICAgJWVheAorICAgIHB1c2hsICAgJWVheAorICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICBhZGRsICAgICQ0LCAlZXNwCisxOgorICAgIHBvcGwgICAgJWVzaQorICAgIHBvcGwgICAgJWVkeAorICAgIHBvcGwgICAgJWVjeAorICAgIHBvcGwgICAgJWVieAorICAgIHJldAorRU5EKF9fY2xvY2tfbmFub3NsZWVwKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQxNTIxMDAKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19fcnRfc2lncXVldWVpbmZvLlMKQEAgLTAsMCArMSwzMSBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX3J0X3NpZ3F1ZXVlaW5mbykKKyAgICBwdXNobCAgICVlYngKKyAgICAuY2ZpX2RlZl9jZmFfb2Zmc2V0IDgKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZWJ4LCAwCisgICAgcHVzaGwgICAlZWN4CisgICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0CisgICAgLmNmaV9yZWxfb2Zmc2V0IGVjeCwgMAorICAgIHB1c2hsICAgJWVkeAorICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAorICAgIC5jZmlfcmVsX29mZnNldCBlZHgsIDAKKyAgICBtb3YgICAgIDE2KCVlc3ApLCAlZWJ4CisgICAgbW92ICAgICAyMCglZXNwKSwgJWVjeAorICAgIG1vdiAgICAgMjQoJWVzcCksICVlZHgKKyAgICBtb3ZsICAgICRfX05SX3J0X3NpZ3F1ZXVlaW5mbywgJWVheAorICAgIGludCAgICAgJDB4ODAKKyAgICBjbXBsICAgICQtTUFYX0VSUk5PLCAlZWF4CisgICAgamIgICAgICAxZgorICAgIG5lZ2wgICAgJWVheAorICAgIHB1c2hsICAgJWVheAorICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKyAgICBhZGRsICAgICQ0LCAlZXNwCisxOgorICAgIHBvcGwgICAgJWVkeAorICAgIHBvcGwgICAgJWVjeAorICAgIHBvcGwgICAgJWVieAorICAgIHJldAorRU5EKF9fcnRfc2lncXVldWVpbmZvKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fZXhpdC5TIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9fZXhpdC5TCmluZGV4IDg1MjhlZTQuLjk5NDViMzUgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvX2V4aXQuUworKysgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL19leGl0LlMKQEAgLTIwLDUgKzIwLDQgQEAKICAgICByZXQKIEVORChfZXhpdCkKIAotICAgIC5nbG9ibCBfRXhpdAotICAgIC5lcXUgX0V4aXQsIF9leGl0CitBTElBU19TWU1CT0woX0V4aXQsIF9leGl0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9jbG9ja19uYW5vc2xlZXAuUyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVlMmNjMDMuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9jbG9ja19uYW5vc2xlZXAuUworKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoY2xvY2tfbmFub3NsZWVwKQotICAgIHB1c2hsICAgJWVieAotICAgIC5jZmlfZGVmX2NmYV9vZmZzZXQgOAotICAgIC5jZmlfcmVsX29mZnNldCBlYngsIDAKLSAgICBwdXNobCAgICVlY3gKLSAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKLSAgICAuY2ZpX3JlbF9vZmZzZXQgZWN4LCAwCi0gICAgcHVzaGwgICAlZWR4Ci0gICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0Ci0gICAgLmNmaV9yZWxfb2Zmc2V0IGVkeCwgMAotICAgIHB1c2hsICAgJWVzaQotICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAotICAgIC5jZmlfcmVsX29mZnNldCBlc2ksIDAKLSAgICBtb3YgICAgIDIwKCVlc3ApLCAlZWJ4Ci0gICAgbW92ICAgICAyNCglZXNwKSwgJWVjeAotICAgIG1vdiAgICAgMjgoJWVzcCksICVlZHgKLSAgICBtb3YgICAgIDMyKCVlc3ApLCAlZXNpCi0gICAgbW92bCAgICAkX19OUl9jbG9ja19uYW5vc2xlZXAsICVlYXgKLSAgICBpbnQgICAgICQweDgwCi0gICAgY21wbCAgICAkLU1BWF9FUlJOTywgJWVheAotICAgIGpiICAgICAgMWYKLSAgICBuZWdsICAgICVlYXgKLSAgICBwdXNobCAgICVlYXgKLSAgICBjYWxsICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgYWRkbCAgICAkNCwgJWVzcAotMToKLSAgICBwb3BsICAgICVlc2kKLSAgICBwb3BsICAgICVlZHgKLSAgICBwb3BsICAgICVlY3gKLSAgICBwb3BsICAgICVlYngKLSAgICByZXQKLUVORChjbG9ja19uYW5vc2xlZXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2Nsb3NlLlMgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2Nsb3NlLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY2Y2NlNjIuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9jbG9zZS5TCisrKyAvZGV2L251bGwKQEAgLTEsMjEgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShjbG9zZSkKLSAgICBwdXNobCAgICVlYngKLSAgICAuY2ZpX2RlZl9jZmFfb2Zmc2V0IDgKLSAgICAuY2ZpX3JlbF9vZmZzZXQgZWJ4LCAwCi0gICAgbW92ICAgICA4KCVlc3ApLCAlZWJ4Ci0gICAgbW92bCAgICAkX19OUl9jbG9zZSwgJWVheAotICAgIGludCAgICAgJDB4ODAKLSAgICBjbXBsICAgICQtTUFYX0VSUk5PLCAlZWF4Ci0gICAgamIgICAgICAxZgotICAgIG5lZ2wgICAgJWVheAotICAgIHB1c2hsICAgJWVheAotICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLSAgICBhZGRsICAgICQ0LCAlZXNwCi0xOgotICAgIHBvcGwgICAgJWVieAotICAgIHJldAotRU5EKGNsb3NlKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9mYWNjZXNzYXQuUyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvZmFjY2Vzc2F0LlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDlkNTIyMzEuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9mYWNjZXNzYXQuUworKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZmFjY2Vzc2F0KQotICAgIHB1c2hsICAgJWVieAotICAgIC5jZmlfZGVmX2NmYV9vZmZzZXQgOAotICAgIC5jZmlfcmVsX29mZnNldCBlYngsIDAKLSAgICBwdXNobCAgICVlY3gKLSAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKLSAgICAuY2ZpX3JlbF9vZmZzZXQgZWN4LCAwCi0gICAgcHVzaGwgICAlZWR4Ci0gICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0Ci0gICAgLmNmaV9yZWxfb2Zmc2V0IGVkeCwgMAotICAgIHB1c2hsICAgJWVzaQotICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAotICAgIC5jZmlfcmVsX29mZnNldCBlc2ksIDAKLSAgICBtb3YgICAgIDIwKCVlc3ApLCAlZWJ4Ci0gICAgbW92ICAgICAyNCglZXNwKSwgJWVjeAotICAgIG1vdiAgICAgMjgoJWVzcCksICVlZHgKLSAgICBtb3YgICAgIDMyKCVlc3ApLCAlZXNpCi0gICAgbW92bCAgICAkX19OUl9mYWNjZXNzYXQsICVlYXgKLSAgICBpbnQgICAgICQweDgwCi0gICAgY21wbCAgICAkLU1BWF9FUlJOTywgJWVheAotICAgIGpiICAgICAgMWYKLSAgICBuZWdsICAgICVlYXgKLSAgICBwdXNobCAgICVlYXgKLSAgICBjYWxsICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCi0gICAgYWRkbCAgICAkNCwgJWVzcAotMToKLSAgICBwb3BsICAgICVlc2kKLSAgICBwb3BsICAgICVlZHgKLSAgICBwb3BsICAgICVlY3gKLSAgICBwb3BsICAgICVlYngKLSAgICByZXQKLUVORChmYWNjZXNzYXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2ZjaG1vZC5TIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9mY2htb2QuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzc4NTFmZi4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2ZjaG1vZC5TCisrKyAvZGV2L251bGwKQEAgLTEsMjYgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmY2htb2QpCi0gICAgcHVzaGwgICAlZWJ4Ci0gICAgLmNmaV9kZWZfY2ZhX29mZnNldCA4Ci0gICAgLmNmaV9yZWxfb2Zmc2V0IGVieCwgMAotICAgIHB1c2hsICAgJWVjeAotICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAotICAgIC5jZmlfcmVsX29mZnNldCBlY3gsIDAKLSAgICBtb3YgICAgIDEyKCVlc3ApLCAlZWJ4Ci0gICAgbW92ICAgICAxNiglZXNwKSwgJWVjeAotICAgIG1vdmwgICAgJF9fTlJfZmNobW9kLCAlZWF4Ci0gICAgaW50ICAgICAkMHg4MAotICAgIGNtcGwgICAgJC1NQVhfRVJSTk8sICVlYXgKLSAgICBqYiAgICAgIDFmCi0gICAgbmVnbCAgICAlZWF4Ci0gICAgcHVzaGwgICAlZWF4Ci0gICAgY2FsbCAgICBfX3NldF9lcnJub19pbnRlcm5hbAotICAgIGFkZGwgICAgJDQsICVlc3AKLTE6Ci0gICAgcG9wbCAgICAlZWN4Ci0gICAgcG9wbCAgICAlZWJ4Ci0gICAgcmV0Ci1FTkQoZmNobW9kKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9mY2htb2RhdC5TIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9mY2htb2RhdC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmNTE1NTEyLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvZmNobW9kYXQuUworKysgL2Rldi9udWxsCkBAIC0xLDM2ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZmNobW9kYXQpCi0gICAgcHVzaGwgICAlZWJ4Ci0gICAgLmNmaV9kZWZfY2ZhX29mZnNldCA4Ci0gICAgLmNmaV9yZWxfb2Zmc2V0IGVieCwgMAotICAgIHB1c2hsICAgJWVjeAotICAgIC5jZmlfYWRqdXN0X2NmYV9vZmZzZXQgNAotICAgIC5jZmlfcmVsX29mZnNldCBlY3gsIDAKLSAgICBwdXNobCAgICVlZHgKLSAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKLSAgICAuY2ZpX3JlbF9vZmZzZXQgZWR4LCAwCi0gICAgcHVzaGwgICAlZXNpCi0gICAgLmNmaV9hZGp1c3RfY2ZhX29mZnNldCA0Ci0gICAgLmNmaV9yZWxfb2Zmc2V0IGVzaSwgMAotICAgIG1vdiAgICAgMjAoJWVzcCksICVlYngKLSAgICBtb3YgICAgIDI0KCVlc3ApLCAlZWN4Ci0gICAgbW92ICAgICAyOCglZXNwKSwgJWVkeAotICAgIG1vdiAgICAgMzIoJWVzcCksICVlc2kKLSAgICBtb3ZsICAgICRfX05SX2ZjaG1vZGF0LCAlZWF4Ci0gICAgaW50ICAgICAkMHg4MAotICAgIGNtcGwgICAgJC1NQVhfRVJSTk8sICVlYXgKLSAgICBqYiAgICAgIDFmCi0gICAgbmVnbCAgICAlZWF4Ci0gICAgcHVzaGwgICAlZWF4Ci0gICAgY2FsbCAgICBfX3NldF9lcnJub19pbnRlcm5hbAotICAgIGFkZGwgICAgJDQsICVlc3AKLTE6Ci0gICAgcG9wbCAgICAlZXNpCi0gICAgcG9wbCAgICAlZWR4Ci0gICAgcG9wbCAgICAlZWN4Ci0gICAgcG9wbCAgICAlZWJ4Ci0gICAgcmV0Ci1FTkQoZmNobW9kYXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2ZzdGF0NjQuUyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvZnN0YXQ2NC5TCmluZGV4IGZjMTYyMzMuLmJhMzg1YTQgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvZnN0YXQ2NC5TCisrKyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvZnN0YXQ2NC5TCkBAIC0yNSw1ICsyNSw0IEBACiAgICAgcmV0CiBFTkQoZnN0YXQ2NCkKIAotICAgIC5nbG9ibCBmc3RhdAotICAgIC5lcXUgZnN0YXQsIGZzdGF0NjQKK0FMSUFTX1NZTUJPTChmc3RhdCwgZnN0YXQ2NCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvZnN0YXRhdDY0LlMgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL2ZzdGF0YXQ2NC5TCmluZGV4IGEzNjk3ZTYuLjkwZTg3YjYgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvZnN0YXRhdDY0LlMKKysrIGIvbGliYy9hcmNoLXg4Ni9zeXNjYWxscy9mc3RhdGF0NjQuUwpAQCAtMzUsNSArMzUsNCBAQAogICAgIHJldAogRU5EKGZzdGF0YXQ2NCkKIAotICAgIC5nbG9ibCBmc3RhdGF0Ci0gICAgLmVxdSBmc3RhdGF0LCBmc3RhdGF0NjQKK0FMSUFTX1NZTUJPTChmc3RhdGF0LCBmc3RhdGF0NjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L3N5c2NhbGxzL3NldGhvc3RuYW1lLlMgYi9saWJjL2FyY2gteDg2L3N5c2NhbGxzL3NldGhvc3RuYW1lLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmZjZmQ3MwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC14ODYvc3lzY2FsbHMvc2V0aG9zdG5hbWUuUwpAQCAtMCwwICsxLDI2IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKHNldGhvc3RuYW1lKQorICAgIHB1c2hsICAgJWVieAorICAgIC5jZmlfZGVmX2NmYV9vZmZzZXQgOAorICAgIC5jZmlfcmVsX29mZnNldCBlYngsIDAKKyAgICBwdXNobCAgICVlY3gKKyAgICAuY2ZpX2FkanVzdF9jZmFfb2Zmc2V0IDQKKyAgICAuY2ZpX3JlbF9vZmZzZXQgZWN4LCAwCisgICAgbW92ICAgICAxMiglZXNwKSwgJWVieAorICAgIG1vdiAgICAgMTYoJWVzcCksICVlY3gKKyAgICBtb3ZsICAgICRfX05SX3NldGhvc3RuYW1lLCAlZWF4CisgICAgaW50ICAgICAkMHg4MAorICAgIGNtcGwgICAgJC1NQVhfRVJSTk8sICVlYXgKKyAgICBqYiAgICAgIDFmCisgICAgbmVnbCAgICAlZWF4CisgICAgcHVzaGwgICAlZWF4CisgICAgY2FsbCAgICBfX3NldF9lcnJub19pbnRlcm5hbAorICAgIGFkZGwgICAgJDQsICVlc3AKKzE6CisgICAgcG9wbCAgICAlZWN4CisgICAgcG9wbCAgICAlZWJ4CisgICAgcmV0CitFTkQoc2V0aG9zdG5hbWUpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2L3g4Ni5tayBiL2xpYmMvYXJjaC14ODYveDg2Lm1rCmluZGV4IDJjOTAzMTcuLmU1ZDcwYTkgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODYveDg2Lm1rCisrKyBiL2xpYmMvYXJjaC14ODYveDg2Lm1rCkBAIC0xLDI0ICsxLDYgQEAKICMgMzItYml0IHg4Ni4KIAogIwotIyBWYXJpb3VzIGtpbmRzIG9mIExQMzIgY3J1ZnQuCi0jCi0KLWxpYmNfYmlvbmljX3NyY19maWxlc194ODYgKz0gXAotICAgIGJpb25pYy9tbWFwLmNwcCBcCi0KLWxpYmNfY29tbW9uX3NyY19maWxlc194ODYgKz0gXAotICAgIGJpb25pYy9sZWdhY3lfMzJfYml0X3N1cHBvcnQuY3BwIFwKLSAgICBiaW9uaWMvbmRrX2NydWZ0LmNwcCBcCi0gICAgYmlvbmljL3RpbWU2NC5jIFwKLQotbGliY19uZXRic2Rfc3JjX2ZpbGVzX3g4NiArPSBcCi0gICAgdXBzdHJlYW0tbmV0YnNkL2NvbW1vbi9saWIvbGliYy9oYXNoL3NoYTEvc2hhMS5jIFwKLQotbGliY19vcGVuYnNkX3NyY19maWxlc194ODYgKz0gXAotICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vcHV0dy5jIFwKLQotIwogIyBEZWZhdWx0IGltcGxlbWVudGF0aW9ucyBvZiBmdW5jdGlvbnMgdGhhdCBhcmUgY29tbW9ubHkgb3B0aW1pemVkLgogIwogCkBAIC00MCwxMCArMjIsOCBAQAogICAgIGFyY2gteDg2L2Jpb25pYy9fZXhpdF93aXRoX3N0YWNrX3RlYXJkb3duLlMgXAogICAgIGFyY2gteDg2L2Jpb25pYy9saWJnY2NfY29tcGF0LmMgXAogICAgIGFyY2gteDg2L2Jpb25pYy9fX3Jlc3RvcmUuUyBcCi0gICAgYXJjaC14ODYvYmlvbmljL19zZXRqbXAuUyBcCiAgICAgYXJjaC14ODYvYmlvbmljL3NldGptcC5TIFwKICAgICBhcmNoLXg4Ni9iaW9uaWMvX19zZXRfdGxzLmMgXAotICAgIGFyY2gteDg2L2Jpb25pYy9zaWdzZXRqbXAuUyBcCiAgICAgYXJjaC14ODYvYmlvbmljL3N5c2NhbGwuUyBcCiAgICAgYXJjaC14ODYvYmlvbmljL3Zmb3JrLlMgXAogCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L2Jpb25pYy9fc2V0am1wLlMgYi9saWJjL2FyY2gteDg2XzY0L2Jpb25pYy9fc2V0am1wLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM2MTcwMzAuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLXg4Nl82NC9iaW9uaWMvX3NldGptcC5TCisrKyAvZGV2L251bGwKQEAgLTEsODMgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IF9zZXRqbXAuUyx2IDEuMSAyMDA0LzAxLzI4IDAxOjQ0OjQ1IG1pY2tleSBFeHAgJAkqLwotLyoJJE5ldEJTRDogX3NldGptcC5TLHYgMS4xIDIwMDEvMDYvMTkgMDA6MjU6MDIgZnZkbCBFeHAgJAkqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAyMDAxIFdhc2FiaSBTeXN0ZW1zLCBJbmMuCi0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFdyaXR0ZW4gYnkgRnJhbmsgdmFuIGRlciBMaW5kZW4gZm9yIFdhc2FiaSBTeXN0ZW1zLCBJbmMuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBBbGwgYWR2ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMgc29mdHdhcmUKLSAqICAgIG11c3QgZGlzcGxheSB0aGUgZm9sbG93aW5nIGFja25vd2xlZGdlbWVudDoKLSAqICAgICAgVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBmb3IgdGhlIE5ldEJTRCBQcm9qZWN0IGJ5Ci0gKiAgICAgIFdhc2FiaSBTeXN0ZW1zLCBJbmMuCi0gKiA0LiBUaGUgbmFtZSBvZiBXYXNhYmkgU3lzdGVtcywgSW5jLiBtYXkgbm90IGJlIHVzZWQgdG8gZW5kb3JzZQotICogICAgb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yCi0gKiAgICB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBXQVNBQkkgU1lTVEVNUywgSU5DLiBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVECi0gKiBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFdBU0FCSSBTWVNURU1TLCBJTkMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKLSAqIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLSNpbmNsdWRlIDxtYWNoaW5lL3NldGptcC5oPgotCi0vKgotICogQyBsaWJyYXJ5IC0tIF9zZXRqbXAsIF9sb25nam1wCi0gKgotICoJX2xvbmdqbXAoYSx2KQotICogd2lsbCBnZW5lcmF0ZSBhICJyZXR1cm4odikiIGZyb20gdGhlIGxhc3QgY2FsbCB0bwotICoJX3NldGptcChhKQotICogYnkgcmVzdG9yaW5nIHJlZ2lzdGVycyBmcm9tIHRoZSBzdGFjay4KLSAqIFRoZSBwcmV2aW91cyBzaWduYWwgc3RhdGUgaXMgTk9UIHJlc3RvcmVkLgotICovCi0KLUVOVFJZKF9zZXRqbXApCi0JbW92cSAgICAoJXJzcCksJXIxMQotCW1vdnEgICAgJXJieCwoX0pCX1JCWCAqIDgpKCVyZGkpCi0JbW92cSAgICAlcmJwLChfSkJfUkJQICogOCkoJXJkaSkKLQltb3ZxICAgICVyMTIsKF9KQl9SMTIgKiA4KSglcmRpKQotCW1vdnEgICAgJXIxMywoX0pCX1IxMyAqIDgpKCVyZGkpCi0JbW92cSAgICAlcjE0LChfSkJfUjE0ICogOCkoJXJkaSkKLQltb3ZxICAgICVyMTUsKF9KQl9SMTUgKiA4KSglcmRpKQotCW1vdnEgICAgJXJzcCwoX0pCX1JTUCAqIDgpKCVyZGkpCi0JbW92cSAgICAlcjExLChfSkJfUEMgICogOCkoJXJkaSkKLQotCXhvcmwJJWVheCwlZWF4Ci0JcmV0Ci1FTkQoX3NldGptcCkKLQotRU5UUlkoX2xvbmdqbXApCi0JbW92cSAgICAoX0pCX1JCWCAqIDgpKCVyZGkpLCVyYngKLQltb3ZxICAgIChfSkJfUkJQICogOCkoJXJkaSksJXJicAotCW1vdnEgICAgKF9KQl9SMTIgKiA4KSglcmRpKSwlcjEyCi0JbW92cSAgICAoX0pCX1IxMyAqIDgpKCVyZGkpLCVyMTMKLQltb3ZxICAgIChfSkJfUjE0ICogOCkoJXJkaSksJXIxNAotCW1vdnEgICAgKF9KQl9SMTUgKiA4KSglcmRpKSwlcjE1Ci0JbW92cSAgICAoX0pCX1JTUCAqIDgpKCVyZGkpLCVyc3AKLQltb3ZxICAgIChfSkJfUEMgICogOCkoJXJkaSksJXIxMQotCi0JbW92bAklZXNpLCVlYXgKLQl0ZXN0bAklZWF4LCVlYXgKLQlqbnoJMWYKLQlpbmNsCSVlYXgKLTE6CW1vdnEJJXIxMSwwKCVyc3ApCi0JcmV0Ci1FTkQoX2xvbmdqbXApCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L2Jpb25pYy9zZXRqbXAuUyBiL2xpYmMvYXJjaC14ODZfNjQvYmlvbmljL3NldGptcC5TCmluZGV4IGYzNTY4NzcuLjU1NTlmNTQgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODZfNjQvYmlvbmljL3NldGptcC5TCisrKyBiL2xpYmMvYXJjaC14ODZfNjQvYmlvbmljL3NldGptcC5TCkBAIC0xLDYgKzEsMyBAQAotLyoJJE9wZW5CU0Q6IHNldGptcC5TLHYgMS4zIDIwMTIvMDgvMjIgMTc6MTk6MzQgcGFzY2FsIEV4cCAkCSovCi0vKgkkTmV0QlNEOiBfX3NldGptcDE0LlMsdiAxLjEgMjAwMS8wNi8xOSAwMDoyNTowMiBmdmRsIEV4cCAkCSovCi0KIC8qCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEgV2FzYWJpIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCkBAIC0zNyw2MCArMzQsMTAwIEBACiAgKi8KIAogI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotI2luY2x1ZGUgPG1hY2hpbmUvc2V0am1wLmg+CiAKLS8qCi0gKiBDIGxpYnJhcnkgLS0gX3NldGptcCwgX2xvbmdqbXAKLSAqCi0gKglsb25nam1wKGEsdikKLSAqIHdpbGwgZ2VuZXJhdGUgYSAicmV0dXJuKHYpIiBmcm9tIHRoZSBsYXN0IGNhbGwgdG8KLSAqCXNldGptcChhKQotICogYnkgcmVzdG9yaW5nIHJlZ2lzdGVycyBmcm9tIHRoZSBzdGFjay4KLSAqIFRoZSBwcmV2aW91cyBzaWduYWwgc3RhdGUgaXMgcmVzdG9yZWQuCi0gKi8KKy8vIFRoZXNlIGFyZSBvbmx5IHRoZSBjYWxsZWUtc2F2ZWQgcmVnaXN0ZXJzLiBDb2RlIGNhbGxpbmcgc2V0am1wCisvLyB3aWxsIGV4cGVjdCB0aGUgcmVzdCB0byBiZSBjbG9iYmVyZWQgYW55d2F5LgorCisjZGVmaW5lIF9KQl9SQlggMAorI2RlZmluZSBfSkJfUkJQIDEKKyNkZWZpbmUgX0pCX1IxMiAyCisjZGVmaW5lIF9KQl9SMTMgMworI2RlZmluZSBfSkJfUjE0IDQKKyNkZWZpbmUgX0pCX1IxNSA1CisjZGVmaW5lIF9KQl9SU1AgNgorI2RlZmluZSBfSkJfUEMgNworI2RlZmluZSBfSkJfU0lHRkxBRyA4CisjZGVmaW5lIF9KQl9TSUdNQVNLIDkKKyNkZWZpbmUgX0pCX1NJR01BU0tfUlQgMTAgLy8gc2lncHJvY21hc2sgd2lsbCB3cml0ZSBoZXJlIHRvby4KIAogRU5UUlkoc2V0am1wKQotCXB1c2hxCSVyZGkKLQl4b3JxCSVyZGksJXJkaQotCWNhbGwJUElDX1BMVChzaWdibG9jaykKLQlwb3BxCSVyZGkKLQltb3ZxCSVyYXgsKF9KQl9TSUdNQVNLICogOCkoJXJkaSkKLQotCW1vdnEJKCVyc3ApLCVyMTEKLQltb3ZxCSVyYngsKF9KQl9SQlggKiA4KSglcmRpKQotCW1vdnEJJXJicCwoX0pCX1JCUCAqIDgpKCVyZGkpCi0JbW92cQklcjEyLChfSkJfUjEyICogOCkoJXJkaSkKLQltb3ZxCSVyMTMsKF9KQl9SMTMgKiA4KSglcmRpKQotCW1vdnEJJXIxNCwoX0pCX1IxNCAqIDgpKCVyZGkpCi0JbW92cQklcjE1LChfSkJfUjE1ICogOCkoJXJkaSkKLQltb3ZxCSVyc3AsKF9KQl9SU1AgKiA4KSglcmRpKQotCW1vdnEJJXIxMSwoX0pCX1BDICAqIDgpKCVyZGkpCi0KLTI6CXhvcmwJJWVheCwlZWF4Ci0JcmV0CisgIG1vdmwgJDEsJWVzaQorICBqbXAgUElDX1BMVChzaWdzZXRqbXApCiBFTkQoc2V0am1wKQogCi1FTlRSWShsb25nam1wKQotCW1vdnEJJXJkaSwlcjEyCi0JbW92bAklZXNpLCVyOGQKK0VOVFJZKF9zZXRqbXApCisgIG1vdmwgJDAsJWVzaQorICBqbXAgUElDX1BMVChzaWdzZXRqbXApCitFTkQoX3NldGptcCkKIAotCW1vdnEJKF9KQl9TSUdNQVNLICogOCkoJXJkaSksJXJkaQotCXB1c2hxCSVyOAotCWNhbGwJUElDX1BMVChzaWdzZXRtYXNrKQotCXBvcHEJJXI4Ci0JbW92cQkoX0pCX1JCWCAqIDgpKCVyMTIpLCVyYngKLQltb3ZxCShfSkJfUkJQICogOCkoJXIxMiksJXJicAotCW1vdnEJKF9KQl9SMTMgKiA4KSglcjEyKSwlcjEzCi0JbW92cQkoX0pCX1IxNCAqIDgpKCVyMTIpLCVyMTQKLQltb3ZxCShfSkJfUjE1ICogOCkoJXIxMiksJXIxNQotCW1vdnEJKF9KQl9SU1AgKiA4KSglcjEyKSwlcnNwCi0JbW92cQkoX0pCX1BDICAqIDgpKCVyMTIpLCVyMTEKLQltb3ZxCShfSkJfUjEyICogOCkoJXIxMiksJXIxMgorLy8gaW50IHNpZ3NldGptcChzaWdqbXBfYnVmIGVudiwgaW50IHNhdmVfc2lnbmFsX21hc2spOworRU5UUlkoc2lnc2V0am1wKQorICAvLyBSZWNvcmQgd2hldGhlciBvciBub3Qgd2UncmUgc2F2aW5nIHRoZSBzaWduYWwgbWFzay4KKyAgbW92bCAlZXNpLChfSkJfU0lHRkxBRyAqIDgpKCVyZGkpCiAKLQltb3ZsCSVyOGQsJWVheAotCXRlc3RsCSVlYXgsJWVheAotCWpuegkxZgotCWluY2wJJWVheAotMToJbW92cQklcjExLDAoJXJzcCkKLQlyZXQKLUVORChsb25nam1wKQorICAvLyBEbyB3ZSBuZWVkIHRvIHNhdmUgdGhlIHNpZ25hbCBtYXNrPworICB0ZXN0bCAlZXNpLCVlc2kKKyAganogMmYKKworICAvLyBTYXZlIGN1cnJlbnQgc2lnbmFsIG1hc2suCisgIHB1c2hxICVyZGkgLy8gUHVzaCAnZW52Jy4KKyAgLy8gVGhlICdob3cnIGFyZ3VtZW50IGlzIGlnbm9yZWQgaWYgbmV3X21hc2sgaXMgTlVMTC4KKyAgeG9ycSAlcnNpLCVyc2kgLy8gTlVMTC4KKyAgbGVhcSAoX0pCX1NJR01BU0sgKiA4KSglcmRpKSwlcmR4IC8vIG9sZF9tYXNrLgorICBjYWxsIFBJQ19QTFQoc2lncHJvY21hc2spCisgIHBvcHEgJXJkaSAvLyBQb3AgJ2VudicuCisKKzI6CisgIC8vIFNhdmUgdGhlIGNhbGxlZS1zYXZlIHJlZ2lzdGVycy4KKyAgbW92cSAoJXJzcCksJXIxMQorICBtb3ZxICVyYngsKF9KQl9SQlggKiA4KSglcmRpKQorICBtb3ZxICVyYnAsKF9KQl9SQlAgKiA4KSglcmRpKQorICBtb3ZxICVyMTIsKF9KQl9SMTIgKiA4KSglcmRpKQorICBtb3ZxICVyMTMsKF9KQl9SMTMgKiA4KSglcmRpKQorICBtb3ZxICVyMTQsKF9KQl9SMTQgKiA4KSglcmRpKQorICBtb3ZxICVyMTUsKF9KQl9SMTUgKiA4KSglcmRpKQorICBtb3ZxICVyc3AsKF9KQl9SU1AgKiA4KSglcmRpKQorICBtb3ZxICVyMTEsKF9KQl9QQyAgKiA4KSglcmRpKQorCisgIHhvcmwgJWVheCwlZWF4CisgIHJldAorRU5EKHNpZ3NldGptcCkKKworLy8gdm9pZCBzaWdsb25nam1wKHNpZ2ptcF9idWYgZW52LCBpbnQgdmFsdWUpOworRU5UUlkoc2lnbG9uZ2ptcCkKKyAgbW92cSAlcmRpLCVyMTIKKyAgcHVzaHEgJXJzaSAvLyBQdXNoICd2YWx1ZScuCisKKyAgLy8gRG8gd2UgbmVlZCB0byByZXN0b3JlIHRoZSBzaWduYWwgbWFzaz8KKyAgY21wbCAkMCwoX0pCX1NJR0ZMQUcgKiA4KSglcmRpKQorICBqeiAyZgorCisgIC8vIFJlc3RvcmUgdGhlIHNpZ25hbCBtYXNrLgorICBtb3ZxICQyLCVyZGkgLy8gU0lHX1NFVE1BU0suCisgIGxlYXEgKF9KQl9TSUdNQVNLICogOCkoJXIxMiksJXJzaSAvLyBuZXdfbWFzay4KKyAgeG9ycSAlcmR4LCVyZHggLy8gTlVMTC4KKyAgY2FsbCBQSUNfUExUKHNpZ3Byb2NtYXNrKQorCisyOgorICBwb3BxICVyYXggLy8gUG9wICd2YWx1ZScuCisKKyAgLy8gUmVzdG9yZSB0aGUgY2FsbGVlLXNhdmUgcmVnaXN0ZXJzLgorICBtb3ZxIChfSkJfUkJYICogOCkoJXIxMiksJXJieAorICBtb3ZxIChfSkJfUkJQICogOCkoJXIxMiksJXJicAorICBtb3ZxIChfSkJfUjEzICogOCkoJXIxMiksJXIxMworICBtb3ZxIChfSkJfUjE0ICogOCkoJXIxMiksJXIxNAorICBtb3ZxIChfSkJfUjE1ICogOCkoJXIxMiksJXIxNQorICBtb3ZxIChfSkJfUlNQICogOCkoJXIxMiksJXJzcAorICBtb3ZxIChfSkJfUEMgICogOCkoJXIxMiksJXIxMQorICBtb3ZxIChfSkJfUjEyICogOCkoJXIxMiksJXIxMgorCisgIHRlc3RsICVlYXgsJWVheAorICBqbnogMWYKKyAgaW5jbCAlZWF4CisxOgorICBtb3ZxICVyMTEsMCglcnNwKQorICByZXQKK0VORChzaWdsb25nam1wKQorCitBTElBU19TWU1CT0wobG9uZ2ptcCwgc2lnbG9uZ2ptcCkKK0FMSUFTX1NZTUJPTChfbG9uZ2ptcCwgc2lnbG9uZ2ptcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvYmlvbmljL3NpZ3NldGptcC5TIGIvbGliYy9hcmNoLXg4Nl82NC9iaW9uaWMvc2lnc2V0am1wLlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDU3MWZlYTMuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLXg4Nl82NC9iaW9uaWMvc2lnc2V0am1wLlMKKysrIC9kZXYvbnVsbApAQCAtMSwxMDEgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IHNpZ3NldGptcC5TLHYgMS4zIDIwMTIvMDgvMjIgMTc6MTk6MzQgcGFzY2FsIEV4cCAkCSovCi0vKgkkTmV0QlNEOiBfX3NldGptcDE0LlMsdiAxLjEgMjAwMS8wNi8xOSAwMDoyNTowMiBmdmRsIEV4cCAkCSovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDIwMDEgV2FzYWJpIFN5c3RlbXMsIEluYy4KLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogV3JpdHRlbiBieSBGcmFuayB2YW4gZGVyIExpbmRlbiBmb3IgV2FzYWJpIFN5c3RlbXMsIEluYy4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIEFsbCBhZHZlcnRpc2luZyBtYXRlcmlhbHMgbWVudGlvbmluZyBmZWF0dXJlcyBvciB1c2Ugb2YgdGhpcyBzb2Z0d2FyZQotICogICAgbXVzdCBkaXNwbGF5IHRoZSBmb2xsb3dpbmcgYWNrbm93bGVkZ2VtZW50OgotICogICAgICBUaGlzIHByb2R1Y3QgaW5jbHVkZXMgc29mdHdhcmUgZGV2ZWxvcGVkIGZvciB0aGUgTmV0QlNEIFByb2plY3QgYnkKLSAqICAgICAgV2FzYWJpIFN5c3RlbXMsIEluYy4KLSAqIDQuIFRoZSBuYW1lIG9mIFdhc2FiaSBTeXN0ZW1zLCBJbmMuIG1heSBub3QgYmUgdXNlZCB0byBlbmRvcnNlCi0gKiAgICBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3IKLSAqICAgIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFdBU0FCSSBTWVNURU1TLCBJTkMuIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQKLSAqIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgV0FTQUJJIFNZU1RFTVMsIElOQwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQotICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9zZXRqbXAuaD4KLQotLyoKLSAqIEMgbGlicmFyeSAtLSBfc2V0am1wLCBfbG9uZ2ptcAotICoKLSAqCWxvbmdqbXAoYSx2KQotICogd2lsbCBnZW5lcmF0ZSBhICJyZXR1cm4odikiIGZyb20gdGhlIGxhc3QgY2FsbCB0bwotICoJc2V0am1wKGEpCi0gKiBieSByZXN0b3JpbmcgcmVnaXN0ZXJzIGZyb20gdGhlIHN0YWNrLgotICogVGhlIHByZXZpb3VzIHNpZ25hbCBzdGF0ZSBpcyByZXN0b3JlZC4KLSAqLwotCi1FTlRSWShzaWdzZXRqbXApCi0JbW92bCAgICAlZXNpLChfSkJfU0lHRkxBRyAgKiA4KSglcmRpKQotCXRlc3RsICAgJWVzaSwlZXNpCi0JanogICAgICAyZgotCi0JcHVzaHEJJXJkaQotCXhvcnEJJXJkaSwlcmRpCi0JY2FsbAlQSUNfUExUKHNpZ2Jsb2NrKQotCXBvcHEJJXJkaQotCW1vdnEJJXJheCwoX0pCX1NJR01BU0sgKiA4KSglcmRpKQotCi0yOgltb3ZxCSglcnNwKSwlcjExCi0JbW92cQklcmJ4LChfSkJfUkJYICogOCkoJXJkaSkKLQltb3ZxCSVyYnAsKF9KQl9SQlAgKiA4KSglcmRpKQotCW1vdnEJJXIxMiwoX0pCX1IxMiAqIDgpKCVyZGkpCi0JbW92cQklcjEzLChfSkJfUjEzICogOCkoJXJkaSkKLQltb3ZxCSVyMTQsKF9KQl9SMTQgKiA4KSglcmRpKQotCW1vdnEJJXIxNSwoX0pCX1IxNSAqIDgpKCVyZGkpCi0JbW92cQklcnNwLChfSkJfUlNQICogOCkoJXJkaSkKLQltb3ZxCSVyMTEsKF9KQl9QQyAgKiA4KSglcmRpKQotCi0yOgl4b3JsCSVlYXgsJWVheAotCXJldAotRU5EKHNpZ3NldGptcCkKLQotRU5UUlkoc2lnbG9uZ2ptcCkKLQltb3ZxCSVyZGksJXIxMgotCXB1c2hxICAgJXJzaQotCWNtcGwgICAgJDAsIChfSkJfU0lHRkxBRyAqIDgpKCVyZGkpCi0JanogICAgICAyZgotCi0JbW92cQkoX0pCX1NJR01BU0sgKiA4KSglcmRpKSwlcmRpCi0JY2FsbAlQSUNfUExUKHNpZ3NldG1hc2spCi0yOglwb3BxCSVyYXgKLQltb3ZxCShfSkJfUkJYICogOCkoJXIxMiksJXJieAotCW1vdnEJKF9KQl9SQlAgKiA4KSglcjEyKSwlcmJwCi0JbW92cQkoX0pCX1IxMyAqIDgpKCVyMTIpLCVyMTMKLQltb3ZxCShfSkJfUjE0ICogOCkoJXIxMiksJXIxNAotCW1vdnEJKF9KQl9SMTUgKiA4KSglcjEyKSwlcjE1Ci0JbW92cQkoX0pCX1JTUCAqIDgpKCVyMTIpLCVyc3AKLQltb3ZxCShfSkJfUEMgICogOCkoJXIxMiksJXIxMQotCW1vdnEJKF9KQl9SMTIgKiA4KSglcjEyKSwlcjEyCi0KLQl0ZXN0bAklZWF4LCVlYXgKLQlqbnoJMWYKLQlpbmNsCSVlYXgKLTE6CW1vdnEJJXIxMSwwKCVyc3ApCi0JcmV0Ci1FTkQoc2lnbG9uZ2ptcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvaW5jbHVkZS9tYWNoaW5lL2FzbS5oIGIvbGliYy9hcmNoLXg4Nl82NC9pbmNsdWRlL21hY2hpbmUvYXNtLmgKaW5kZXggMDZkYTM5YS4uMjhjZDA4ZiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLXg4Nl82NC9pbmNsdWRlL21hY2hpbmUvYXNtLmgKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9pbmNsdWRlL21hY2hpbmUvYXNtLmgKQEAgLTQwLDEzICs0MCw2IEBACiAjZGVmaW5lIFBJQ19QTFQoeCkJeEBQTFQKICNkZWZpbmUgUElDX0dPVCh4KQl4QEdPVFBDUkVMKCVyaXApCiAKLS8qIGxldCBrZXJuZWxzIGFuZCBvdGhlcnMgb3ZlcnJpZGUgZW50cnlwb2ludCBhbGlnbm1lbnQgKi8KLSNpZm5kZWYgX0FMSUdOX1RFWFQKLSMgaWZkZWYgX1NUQU5EQUxPTkUKLSMgIGRlZmluZSBfQUxJR05fVEVYVCAuYWxpZ24gNAotIyBlbHNlCi0jICBkZWZpbmUgX0FMSUdOX1RFWFQgLmFsaWduIDE2Ci0jIGVuZGlmCi0jZW5kaWYKKyNkZWZpbmUgX19iaW9uaWNfYXNtX2FsaWduIDE2CiAKICNlbmRpZiAvKiAhX0FNRDY0X0FTTV9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9pbmNsdWRlL21hY2hpbmUvZW5kaWFuLmggYi9saWJjL2FyY2gteDg2XzY0L2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzg4OWEzNy4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gteDg2XzY0L2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaAorKysgL2Rldi9udWxsCkBAIC0xLDYxICswLDAgQEAKLS8qCSRPcGVuQlNEOiBlbmRpYW4uaCx2IDEuNSAyMDExLzAzLzEyIDIyOjI3OjQ4IGd1ZW50aGVyIEV4cCAkCSovCi0KLS8qLQotICogQ29weXJpZ2h0IChjKSAxOTk3IE5pa2xhcyBIYWxscXZpc3QuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTCi0gKiBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELgotICogSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAotICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUCi0gKiBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCi0gKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKLSAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIF9NQUNISU5FX0VORElBTl9IXwotI2RlZmluZSBfTUFDSElORV9FTkRJQU5fSF8KLQotI2lmZGVmIF9fR05VQ19fCi0KLSNkZWZpbmUJX19zd2FwMzJtZCh4KSBfX3N0YXRlbWVudCh7CQkJCQlcCi0JdV9pbnQzMl90IF9fc3dhcDMybWRfeCA9ICh4KTsJCQkJCVwKLQkJCQkJCQkJCVwKLQlfX2FzbSAoImJzd2FwICUwIiA6ICIrciIgKF9fc3dhcDMybWRfeCkpOwkJCVwKLQlfX3N3YXAzMm1kX3g7CQkJCQkJCVwKLX0pCi0KLSNkZWZpbmUJX19zd2FwNjRtZCh4KSBfX3N0YXRlbWVudCh7CQkJCQlcCi0JdV9pbnQ2NF90IF9fc3dhcDY0bWRfeCA9ICh4KTsJCQkJCVwKLQkJCQkJCQkJCVwKLQlfX2FzbSAoImJzd2FwcSAlMCIgOiAiK3IiIChfX3N3YXA2NG1kX3gpKTsJCQlcCi0JX19zd2FwNjRtZF94OwkJCQkJCQlcCi19KQotCi0jZGVmaW5lCV9fc3dhcDE2bWQoeCkgX19zdGF0ZW1lbnQoewkJCQkJXAotCXVfaW50MTZfdCBfX3N3YXAxNm1kX3ggPSAoeCk7CQkJCQlcCi0JCQkJCQkJCQlcCi0JX19hc20gKCJyb3J3ICQ4LCAldzAiIDogIityIiAoX19zd2FwMTZtZF94KSk7CQkJXAotCV9fc3dhcDE2bWRfeDsJCQkJCQkJXAotfSkKLQotLyogVGVsbCBzeXMvZW5kaWFuLmggd2UgaGF2ZSBNRCB2YXJpYW50cyBvZiB0aGUgc3dhcCBtYWNyb3MuICAqLwotI2RlZmluZSBNRF9TV0FQCi0KLSNlbmRpZgkvKiBfX0dOVUNfXyAqLwotCi0jZGVmaW5lIF9CWVRFX09SREVSIF9MSVRUTEVfRU5ESUFOCi0jaW5jbHVkZSA8c3lzL2VuZGlhbi5oPgotCi0jZW5kaWYgLyogX01BQ0hJTkVfRU5ESUFOX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L2luY2x1ZGUvbWFjaGluZS9leGVjLmggYi9saWJjL2FyY2gteDg2XzY0L2luY2x1ZGUvbWFjaGluZS9leGVjLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgyOTM1MWMuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLXg4Nl82NC9pbmNsdWRlL21hY2hpbmUvZXhlYy5oCisrKyAvZGV2L251bGwKQEAgLTEsMjAgKzAsMCBAQAotLyoJJE9wZW5CU0Q6IGV4ZWMuaCx2IDEuNCAyMDEyLzA5LzExIDE1OjQ0OjE3IGRlcmFhZHQgRXhwICQJKi8KLS8qCi0gKiBXcml0dGVuIGJ5IEFydHVyIEdyYWJvd3NraSA8YXJ0QG9wZW5ic2Qub3JnPiBQdWJsaWMgRG9tYWluCi0gKi8KLQotI2lmbmRlZiBfTUFDSElORV9FWEVDX0hfCi0jZGVmaW5lIF9NQUNISU5FX0VYRUNfSF8KLQotI2RlZmluZSBfX0xEUEdTWiA0MDk2Ci0KLSNkZWZpbmUgQVJDSF9FTEZTSVpFIDY0Ci0KLSNkZWZpbmUgRUxGX1RBUkdfQ0xBU1MJCUVMRkNMQVNTNjQKLSNkZWZpbmUgRUxGX1RBUkdfREFUQQkJRUxGREFUQTJMU0IKLSNkZWZpbmUgRUxGX1RBUkdfTUFDSAkJRU1fWDg2XzY0Ci0KLSNkZWZpbmUgX05MSVNUX0RPX0VMRgotI2RlZmluZSBfS0VSTl9ET19FTEY2NAotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvaW5jbHVkZS9tYWNoaW5lL3NldGptcC5oIGIvbGliYy9hcmNoLXg4Nl82NC9pbmNsdWRlL21hY2hpbmUvc2V0am1wLmgKaW5kZXggMDFkNjA2Ni4uNDZkZGQ0YiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLXg4Nl82NC9pbmNsdWRlL21hY2hpbmUvc2V0am1wLmgKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9pbmNsdWRlL21hY2hpbmUvc2V0am1wLmgKQEAgLTEsMjEgKzEsNCBAQAogLyoJJE9wZW5CU0Q6IHNldGptcC5oLHYgMS4xIDIwMDQvMDEvMjggMDE6Mzk6MzkgbWlja2V5IEV4cCAkCSovCiAvKgkkTmV0QlNEOiBzZXRqbXAuaCx2IDEuMSAyMDAzLzA0LzI2IDE4OjM5OjQ3IGZ2ZGwgRXhwICQJKi8KIAotLyoKLSAqIG1hY2hpbmUvc2V0am1wLmg6IG1hY2hpbmUgZGVwZW5kZW50IHNldGptcC1yZWxhdGVkIGluZm9ybWF0aW9uLgotICogVGhlc2UgYXJlIG9ubHkgdGhlIGNhbGxlZS1zYXZlZCByZWdpc3RlcnMsIGNvZGUgY2FsbGluZyBzZXRqbXAKLSAqIHdpbGwgZXhwZWN0IHRoZSByZXN0IHRvIGJlIGNsb2JiZXJlZCBhbnl3YXkuCi0gKi8KLQotI2RlZmluZSBfSkJfUkJYCQkwCi0jZGVmaW5lIF9KQl9SQlAJCTEKLSNkZWZpbmUgX0pCX1IxMgkJMgotI2RlZmluZSBfSkJfUjEzCQkzCi0jZGVmaW5lIF9KQl9SMTQJCTQKLSNkZWZpbmUgX0pCX1IxNQkJNQotI2RlZmluZSBfSkJfUlNQCQk2Ci0jZGVmaW5lIF9KQl9QQwkJNwotI2RlZmluZSBfSkJfU0lHRkxBRwk4Ci0jZGVmaW5lIF9KQl9TSUdNQVNLCTkKLQogI2RlZmluZQlfSkJMRU4JMTEJCS8qIHNpemUsIGluIGxvbmdzLCBvZiBhIGptcF9idWYgKi8KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3RyaW5nL3NzZTItc3RybGNhdC1zbG0uUyBiL2xpYmMvYXJjaC14ODZfNjQvc3RyaW5nL3NzZTItc3RybGNhdC1zbG0uUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzllOGMxCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zdHJpbmcvc3NlMi1zdHJsY2F0LXNsbS5TCkBAIC0wLDAgKzEsMzcgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNkZWZpbmUgVVNFX0FTX1NUUkxDQVQKKworI2lmbmRlZiBTVFJMQ1BZCisjIGRlZmluZSBTVFJMQ1BZCXN0cmxjYXQKKyNlbmRpZgorCisjaW5jbHVkZSAic3NlMi1zdHJsY3B5LXNsbS5TIgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9zdHJpbmcvc3NlMi1zdHJsY3B5LXNsbS5TIGIvbGliYy9hcmNoLXg4Nl82NC9zdHJpbmcvc3NlMi1zdHJsY3B5LXNsbS5TCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjlkNGI1MmYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gteDg2XzY0L3N0cmluZy9zc2UyLXN0cmxjcHktc2xtLlMKQEAgLTAsMCArMSwxMDYyIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaWZuZGVmIEwKKyMgZGVmaW5lIEwobGFiZWwpCS5MIyNsYWJlbAorI2VuZGlmCisKKyNpZm5kZWYgY2ZpX3N0YXJ0cHJvYworIyBkZWZpbmUgY2ZpX3N0YXJ0cHJvYwkuY2ZpX3N0YXJ0cHJvYworI2VuZGlmCisKKyNpZm5kZWYgY2ZpX2VuZHByb2MKKyMgZGVmaW5lIGNmaV9lbmRwcm9jCS5jZmlfZW5kcHJvYworI2VuZGlmCisKKyNpZm5kZWYgRU5UUlkKKyMgZGVmaW5lIEVOVFJZKG5hbWUpCVwKKwkudHlwZSBuYW1lLCBAZnVuY3Rpb247CVwKKwkuZ2xvYmwgbmFtZTsJXAorCS5wMmFsaWduIDQ7CVwKK25hbWU6CVwKKwljZmlfc3RhcnRwcm9jCisjZW5kaWYKKworI2lmbmRlZiBFTkQKKyMgZGVmaW5lIEVORChuYW1lKQlcCisgICAgICAgY2ZpX2VuZHByb2M7CVwKKyAgICAgICAuc2l6ZSBuYW1lLCAuLW5hbWUKKyNlbmRpZgorCisKKyNpZm5kZWYgU1RSTENQWQorIyBkZWZpbmUgU1RSTENQWQlzdHJsY3B5CisjZW5kaWYKKworI2RlZmluZSBKTVBUQkwoSSwgQikJSSAtIEIKKyNkZWZpbmUgQlJBTkNIX1RPX0pNUFRCTF9FTlRSWShUQUJMRSwgSU5ERVgsIFNDQUxFKQlcCisJbGVhCVRBQkxFKCVyaXApLCAlcjExOwlcCisJbW92c2xxCSglcjExLCBJTkRFWCwgU0NBTEUpLCAlcmN4OwlcCisJbGVhCSglcjExLCAlcmN4KSwgJXJjeDsJXAorCWptcAkqJXJjeAorCisjZGVmaW5lIFJFVFVSTglcCisJYWRkCSVyOSwgJXJheDsJXAorCXJldAorCisudGV4dAorRU5UUlkgKFNUUkxDUFkpCisJeG9yCSVyYXgsICVyYXgKKwl4b3IJJXI5LCAlcjkKKwltb3YJJXJkeCwgJXI4CisJY21wCSQwLCAlcjgKKwlqeglMKENhbGN1bGF0ZVNyY0xlbikKKworI2lmZGVmIFVTRV9BU19TVFJMQ0FUCisJeG9yCSVyY3gsICVyY3gKKwlweG9yCSV4bW0wLCAleG1tMAorCisJbW92ZHF1CSglcmRpKSwgJXhtbTEKKwlwY21wZXFiICV4bW0xLCAleG1tMAorCXBtb3Ztc2tiICV4bW0wLCAlcmR4CisKKwljbXAJJDE3LCAlcjgKKwlqYglMKFNpemVFbmRDYXNlMSkKKwl0ZXN0CSVyZHgsICVyZHgKKwlqbnoJTChTdHJpbmdFbmRDYXNlMSkKKworCWFkZAkkMTYsICVyYXgKKwltb3ZkcXUJMTYoJXJkaSksICV4bW0xCisJcGNtcGVxYiAleG1tMSwgJXhtbTAKKwlwbW92bXNrYiAleG1tMCwgJXJkeAorCisJY21wCSQzMywgJXI4CisJamIJTChTaXplRW5kQ2FzZTEpCisJdGVzdAklcmR4LCAlcmR4CisJam56CUwoU3RyaW5nRW5kQ2FzZTEpCisKKwltb3YJJXJkaSwgJXJjeAorCWFuZAkkMTUsICVyY3gKKwlhbmQJJC0xNiwgJXJkaQorCisJYWRkCSVyY3gsICVyOAorCXN1YgkkMTYsICVyOAorCitMKERzdExlbkxvb3ApOgorCW1vdmRxYQkoJXJkaSwgJXJheCksICV4bW0xCisJcGNtcGVxYiAleG1tMSwgJXhtbTAKKwlwbW92bXNrYiAleG1tMCwgJXJkeAorCXN1YgkkMTYsICVyOAorCWpiZQlMKFNpemVFbmRDYXNlMikKKwl0ZXN0CSVyZHgsICVyZHgKKwlqbnoJTChTdHJpbmdFbmRDYXNlMikKKwlhZGQJJDE2LCAlcmF4CisJam1wCUwoRHN0TGVuTG9vcCkKKworTChTdHJpbmdFbmRDYXNlMik6CisJYWRkCSQxNiwgJXI4CisJYnNmCSVyZHgsICVyZHgKKwlzdWIJJXJkeCwgJXI4CisJYWRkCSVyZHgsICVyYXgKKwlzdWIJJXJjeCwgJXI5CisJYWRkCSVyYXgsICVyZGkKKwlqbXAJIEwoQ29weVNyY1N0cmluZykKKworTChTaXplRW5kQ2FzZTEpOgorCXRlc3QJJXJkeCwgJXJkeAorCWp6CUwoU2l6ZUVuZCkKKwlic2YJJXJkeCwgJXJkeAorCWFkZAklcmR4LCAlcmF4CisJY21wCSVyOCwgJXJheAorCWpiCUwoU3RyaW5nRW5kKQorTChTaXplRW5kKToKKwltb3YJJXI4LCAlcjkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW5DYXNlMSkKKworTChTaXplRW5kQ2FzZTIpOgorCWFkZAkkMTYsICVyOAorCXRlc3QJJXJkeCwgJXJkeAorCWp6CUwoU3RyaW5nRW5kQ2FzZTQpCisJYnNmCSVyZHgsICVyZHgKKwljbXAJJXI4LCAlcmR4CisJamIJTChTdHJpbmdFbmRDYXNlMykKK0woU3RyaW5nRW5kQ2FzZTQpOgorCWFkZAklcjgsICVyYXgKKwlzdWIJJXJjeCwgJXJheAorCW1vdgklcmF4LCAlcjkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW5DYXNlMSkKKworTChTdHJpbmdFbmRDYXNlMyk6CisJYWRkCSVyZHgsICVyYXgKKwlzdWIJJXJjeCwgJXI5CisJYWRkCSVyYXgsICVyZGkKKwlzdWIJJXJkeCwgJXI4CisJam1wCUwoQ29weVNyY1N0cmluZykKKworTChTdHJpbmdFbmRDYXNlMSk6CisJYnNmCSVyZHgsICVyZHgKKwlhZGQJJXJkeCwgJXJheAorCXN1YgklcmN4LCAlcmF4CitMKFN0cmluZ0VuZCk6CisJYWRkCSVyYXgsICVyZGkKKwlzdWIJJXJheCwgJXI4CisjZW5kaWYKKworCW1vdgklcnNpLCAlcmN4CisJYW5kCSQ2MywgJXJjeAorCWNtcAkkMzIsICVyY3gKKwlqYmUJTChDb3B5U3JjU3RyaW5nKQorCisJYW5kCSQtMTYsICVyc2kKKwlhbmQJJDE1LCAlcmN4CisJcHhvcgkleG1tMCwgJXhtbTAKKwlweG9yCSV4bW0xLCAleG1tMQorCisJcGNtcGVxYgkoJXJzaSksICV4bW0xCisJcG1vdm1za2IgJXhtbTEsICVyZHgKKwlzaHIJJWNsLCAlcmR4CisJbW92CSQxNiwgJXIxMAorCXN1YgklcmN4LCAlcjEwCisJY21wCSVyMTAsICVyOAorCWpiZQlMKENvcHlGcm9tMVRvMTZCeXRlc1RhaWxDYXNlMk9yQ2FzZTMpCisJdGVzdAklcmR4LCAlcmR4CisJam56CUwoQ29weUZyb20xVG8xNkJ5dGVzVGFpbCkKKworCXBjbXBlcWIJMTYoJXJzaSksICV4bW0wCisJcG1vdm1za2IgJXhtbTAsICVyZHgKKwlhZGQJJDE2LCAlcjEwCisJY21wCSVyMTAsICVyOAorCWpiZQlMKENvcHlGcm9tMVRvMzJCeXRlc0Nhc2UyT3JDYXNlMykKKwl0ZXN0CSVyZHgsICVyZHgKKwlqbnoJTChDb3B5RnJvbTFUbzMyQnl0ZXMpCisKKwltb3ZkcXUJKCVyc2ksICVyY3gpLCAleG1tMQorCW1vdmRxdQkleG1tMSwgKCVyZGkpCisjaWZkZWYgVVNFX0FTX1NUUkxDQVQKKwlhZGQJJXJheCwgJXI5CisjZW5kaWYKKwlqbXAJTChMb29wU3RhcnQpCisKKwkucDJhbGlnbiA0CitMKENvcHlTcmNTdHJpbmcpOgorI2lmZGVmIFVTRV9BU19TVFJMQ0FUCisJYWRkCSVyYXgsICVyOQorCXhvcgklcmF4LCAlcmF4CisjZW5kaWYKKwlweG9yCSV4bW0wLCAleG1tMAorCW1vdmRxdQkoJXJzaSksICV4bW0xCisJcGNtcGVxYgkleG1tMSwgJXhtbTAKKwlwbW92bXNrYiAleG1tMCwgJXJkeAorCisJY21wCSQxNywgJXI4CisJamIJTChDb3B5RnJvbTFUbzE2Qnl0ZXNUYWlsMUNhc2UyT3JDYXNlMykKKwl0ZXN0CSVyZHgsICVyZHgKKwlqbnoJTChDb3B5RnJvbTFUbzE2Qnl0ZXNUYWlsMSkKKworCW1vdmRxdQkxNiglcnNpKSwgJXhtbTIKKwlwY21wZXFiCSV4bW0yLCAleG1tMAorCW1vdmRxdQkleG1tMSwgKCVyZGkpCisJcG1vdm1za2IgJXhtbTAsICVyZHgKKwlhZGQJJDE2LCAlcmF4CisKKwljbXAJJDMzLCAlcjgKKwlqYglMKENvcHlGcm9tMVRvMzJCeXRlczFDYXNlMk9yQ2FzZTMpCisJdGVzdAklcmR4LCAlcmR4CisJam56CUwoQ29weUZyb20xVG8zMkJ5dGVzMSkKKworCW1vdgklcnNpLCAlcmN4CisJYW5kCSQxNSwgJXJjeAorCWFuZAkkLTE2LCAlcnNpCisKK0woTG9vcFN0YXJ0KToKKwlzdWIJJXJjeCwgJXJkaQorCWFkZAklcmN4LCAlcjgKKwlzdWIJJDE2LCAlcjgKKwltb3YJJDE2LCAlcmF4CisKK0woMTZMb29wKToKKwltb3ZkcWEJKCVyc2ksICVyYXgpLCAleG1tMQorCXBjbXBlcWIJJXhtbTEsICV4bW0wCisJcG1vdm1za2IgJXhtbTAsICVyZHgKKwlzdWIJJDE2LCAlcjgKKwlqYmUJTChDb3B5RnJvbTFUbzE2Qnl0ZXNDYXNlMk9yQ2FzZTMpCisJdGVzdAklcmR4LCAlcmR4CisJam56CUwoQ29weUZyb20xVG8xNkJ5dGVzWG1tRXhpdCkKKwltb3ZkcXUJJXhtbTEsICglcmRpLCAlcmF4KQorCWFkZAkkMTYsICVyYXgKKwlqbXAJTCgxNkxvb3ApCisKKy8qLS0tLS0tRW5kIG9mIG1haW4gcGFydCB3aXRoIGxvb3BzLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KKworLyogQ2FzZTEgKi8KKwkucDJhbGlnbiA0CitMKENvcHlGcm9tMVRvMTZCeXRlcyk6CisJYWRkCSVyY3gsICVyZGkKKwlhZGQJJXJjeCwgJXJzaQorCWJzZgklcmR4LCAlcmR4CisJYWRkCSVyZHgsICVyYXgKKwlCUkFOQ0hfVE9fSk1QVEJMX0VOVFJZIChMKEV4aXRTdHJpbmdUYWlsVGFibGUpLCAlcmR4LCA0KQorCisJLnAyYWxpZ24gNAorTChDb3B5RnJvbTFUbzE2Qnl0ZXNUYWlsKToKKwlhZGQJJXJjeCwgJXJzaQorCWJzZgklcmR4LCAlcmR4CisJYWRkCSVyZHgsICVyYXgKKwlCUkFOQ0hfVE9fSk1QVEJMX0VOVFJZIChMKEV4aXRTdHJpbmdUYWlsVGFibGUpLCAlcmR4LCA0KQorCisJLnAyYWxpZ24gNAorTChDb3B5RnJvbTFUbzMyQnl0ZXMxKToKKwlhZGQJJDE2LCAlcnNpCisJYWRkCSQxNiwgJXJkaQorCXN1YgkkMTYsICVyOAorTChDb3B5RnJvbTFUbzE2Qnl0ZXNUYWlsMSk6CisJYnNmCSVyZHgsICVyZHgKKwlhZGQJJXJkeCwgJXJheAorCUJSQU5DSF9UT19KTVBUQkxfRU5UUlkgKEwoRXhpdFN0cmluZ1RhaWxUYWJsZSksICVyZHgsIDQpCisKKwkucDJhbGlnbiA0CitMKENvcHlGcm9tMVRvMzJCeXRlcyk6CisJYnNmCSVyZHgsICVyZHgKKwlhZGQJJXJjeCwgJXJzaQorCWFkZAkkMTYsICVyZHgKKwlzdWIJJXJjeCwgJXJkeAorCWFkZAklcmR4LCAlcmF4CisJQlJBTkNIX1RPX0pNUFRCTF9FTlRSWSAoTChFeGl0U3RyaW5nVGFpbFRhYmxlKSwgJXJkeCwgNCkKKworCS5wMmFsaWduIDQKK0woQ29weUZyb20xVG8xNkJ5dGVzRXhpdCk6CisJYWRkCSVyZHgsICVyYXgKKwlCUkFOQ0hfVE9fSk1QVEJMX0VOVFJZIChMKEV4aXRTdHJpbmdUYWlsVGFibGUpLCAlcmR4LCA0KQorCisvKiBDYXNlMiAqLworCisJLnAyYWxpZ24gNAorTChDb3B5RnJvbTFUbzE2Qnl0ZXNDYXNlMik6CisJYWRkCSQxNiwgJXI4CisJYWRkCSVyYXgsICVyZGkKKwlhZGQJJXJheCwgJXJzaQorCWJzZgklcmR4LCAlcmR4CisJc3ViCSVyY3gsICVyYXgKKwljbXAJJXI4LCAlcmR4CisJamIJTChDb3B5RnJvbTFUbzE2Qnl0ZXNFeGl0KQorCWFkZAklcjgsICVyYXgKKwlCUkFOQ0hfVE9fSk1QVEJMX0VOVFJZIChMKEV4aXRUYWJsZSksICVyOCwgNCkKKworCS5wMmFsaWduIDQKK0woQ29weUZyb20xVG8zMkJ5dGVzQ2FzZTIpOgorCWFkZAklcmN4LCAlcnNpCisJYnNmCSVyZHgsICVyZHgKKwlhZGQJJDE2LCAlcmR4CisJc3ViCSVyY3gsICVyZHgKKwljbXAJJXI4LCAlcmR4CisJamIJTChDb3B5RnJvbTFUbzE2Qnl0ZXNFeGl0KQorCWFkZAklcjgsICVyYXgKKwlCUkFOQ0hfVE9fSk1QVEJMX0VOVFJZIChMKEV4aXRUYWJsZSksICVyOCwgNCkKKworTChDb3B5RnJvbTFUbzE2Qnl0ZXNUYWlsQ2FzZTIpOgorCWFkZAklcmN4LCAlcnNpCisJYnNmCSVyZHgsICVyZHgKKwljbXAJJXI4LCAlcmR4CisJamIJTChDb3B5RnJvbTFUbzE2Qnl0ZXNFeGl0KQorCWFkZAklcjgsICVyYXgKKwlCUkFOQ0hfVE9fSk1QVEJMX0VOVFJZIChMKEV4aXRUYWJsZSksICVyOCwgNCkKKworCS5wMmFsaWduIDQKK0woQ29weUZyb20xVG8xNkJ5dGVzVGFpbDFDYXNlMik6CisJYnNmCSVyZHgsICVyZHgKKwljbXAJJXI4LCAlcmR4CisJamIJTChDb3B5RnJvbTFUbzE2Qnl0ZXNFeGl0KQorCWFkZAklcjgsICVyYXgKKwlCUkFOQ0hfVE9fSk1QVEJMX0VOVFJZIChMKEV4aXRUYWJsZSksICVyOCwgNCkKKworLyogQ2FzZTIgb3IgQ2FzZTMsICBDYXNlMyAqLworCisJLnAyYWxpZ24gNAorTChDb3B5RnJvbTFUbzE2Qnl0ZXNDYXNlMk9yQ2FzZTMpOgorCXRlc3QJJXJkeCwgJXJkeAorCWpueglMKENvcHlGcm9tMVRvMTZCeXRlc0Nhc2UyKQorCWFkZAkkMTYsICVyOAorCWFkZAklcmF4LCAlcmRpCisJYWRkCSVyYXgsICVyc2kKKwlhZGQJJXI4LCAlcmF4CisJc3ViCSVyY3gsICVyYXgKKwlCUkFOQ0hfVE9fSk1QVEJMX0VOVFJZIChMKEV4aXRUYWJsZSksICVyOCwgNCkKKworCS5wMmFsaWduIDQKK0woQ29weUZyb20xVG8zMkJ5dGVzQ2FzZTJPckNhc2UzKToKKwl0ZXN0CSVyZHgsICVyZHgKKwlqbnoJTChDb3B5RnJvbTFUbzMyQnl0ZXNDYXNlMikKKwlhZGQJJXJjeCwgJXJzaQorCWFkZAklcjgsICVyYXgKKwlCUkFOQ0hfVE9fSk1QVEJMX0VOVFJZIChMKEV4aXRUYWJsZSksICVyOCwgNCkKKworCS5wMmFsaWduIDQKK0woQ29weUZyb20xVG8xNkJ5dGVzVGFpbENhc2UyT3JDYXNlMyk6CisJdGVzdAklcmR4LCAlcmR4CisJam56CUwoQ29weUZyb20xVG8xNkJ5dGVzVGFpbENhc2UyKQorCWFkZAklcmN4LCAlcnNpCisJYWRkCSVyOCwgJXJheAorCUJSQU5DSF9UT19KTVBUQkxfRU5UUlkgKEwoRXhpdFRhYmxlKSwgJXI4LCA0KQorCisJLnAyYWxpZ24gNAorTChDb3B5RnJvbTFUbzMyQnl0ZXMxQ2FzZTJPckNhc2UzKToKKwlhZGQJJDE2LCAlcmRpCisJYWRkCSQxNiwgJXJzaQorCXN1YgkkMTYsICVyOAorTChDb3B5RnJvbTFUbzE2Qnl0ZXNUYWlsMUNhc2UyT3JDYXNlMyk6CisJdGVzdAklcmR4LCAlcmR4CisJam56CUwoQ29weUZyb20xVG8xNkJ5dGVzVGFpbDFDYXNlMikKKwlhZGQJJXI4LCAlcmF4CisJQlJBTkNIX1RPX0pNUFRCTF9FTlRSWSAoTChFeGl0VGFibGUpLCAlcjgsIDQpCisKKwkucDJhbGlnbiA0CitMKENvcHlGcm9tMVRvMTZCeXRlc1htbUV4aXQpOgorCWJzZgklcmR4LCAlcmR4CisJYWRkCSVyYXgsICVyZGkKKwlhZGQJJXJheCwgJXJzaQorCWFkZAklcmR4LCAlcmF4CisJc3ViCSVyY3gsICVyYXgKKwlCUkFOQ0hfVE9fSk1QVEJMX0VOVFJZIChMKEV4aXRTdHJpbmdUYWlsVGFibGUpLCAlcmR4LCA0KQorCisvKi0tLS0tLS0tLS0tLUVuZCBsYWJlbHMgcmVnYXJkaW5nIHdpdGggY29weWluZyAxLTE2IGJ5dGVzLS1hbmQgMS0zMiBieXRlcy0tLS0qLworCisKKwkucDJhbGlnbiA0CitMKEV4aXQwKToKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woRXhpdDEpOgorCW1vdmIJJDAsICglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDIpOgorCW1vdmIJKCVyc2kpLCAlZGgKKwltb3ZiCSVkaCwgKCVyZGkpCisJbW92YgkkMCwgMSglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDMpOgorCW1vdncJKCVyc2kpLCAlZHgKKwltb3Z3CSVkeCwgKCVyZGkpCisJbW92YgkkMCwgMiglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDQpOgorCW1vdncJKCVyc2kpLCAlY3gKKwltb3ZiCTIoJXJzaSksICVkaAorCW1vdncJJWN4LCAoJXJkaSkKKwltb3ZiCSVkaCwgMiglcmRpKQorCW1vdmIJJDAsIDMoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQ1KToKKwltb3ZsCSglcnNpKSwgJWVkeAorCW1vdmwJJWVkeCwgKCVyZGkpCisJbW92YgkkMCwgNCglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDYpOgorCW1vdmwJKCVyc2kpLCAlZWN4CisJbW92Ygk0KCVyc2kpLCAlZGgKKwltb3ZsCSVlY3gsICglcmRpKQorCW1vdmIJJWRoLCA0KCVyZGkpCisJbW92YgkkMCwgNSglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDcpOgorCW1vdmwJKCVyc2kpLCAlZWN4CisJbW92dwk0KCVyc2kpLCAlZHgKKwltb3ZsCSVlY3gsICglcmRpKQorCW1vdncJJWR4LCA0KCVyZGkpCisJbW92YgkkMCwgNiglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDgpOgorCW1vdmwJKCVyc2kpLCAlZWN4CisJbW92bAkzKCVyc2kpLCAlZWR4CisJbW92bAklZWN4LCAoJXJkaSkKKwltb3ZsCSVlZHgsIDMoJXJkaSkKKwltb3ZiCSQwLCA3KCVyZGkpCisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuKQorCisJLnAyYWxpZ24gNAorTChFeGl0OSk6CisJbW92cQkoJXJzaSksICVyZHgKKwltb3ZxCSVyZHgsICglcmRpKQorCW1vdmIJJDAsIDgoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQxMCk6CisJbW92cQkoJXJzaSksICVyY3gKKwltb3ZiCTgoJXJzaSksICVkaAorCW1vdnEJJXJjeCwgKCVyZGkpCisJbW92YgklZGgsIDgoJXJkaSkKKwltb3ZiCSQwLCA5KCVyZGkpCisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuKQorCisJLnAyYWxpZ24gNAorTChFeGl0MTEpOgorCW1vdnEJKCVyc2kpLCAlcmN4CisJbW92dwk4KCVyc2kpLCAlZHgKKwltb3ZxCSVyY3gsICglcmRpKQorCW1vdncJJWR4LCA4KCVyZGkpCisJbW92YgkkMCwgMTAoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQxMik6CisJbW92cQkoJXJzaSksICVyY3gKKwltb3ZsCTcoJXJzaSksICVlZHgKKwltb3ZxCSVyY3gsICglcmRpKQorCW1vdmwJJWVkeCwgNyglcmRpKQorCW1vdmIJJDAsIDExKCVyZGkpCisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuKQorCisJLnAyYWxpZ24gNAorTChFeGl0MTMpOgorCW1vdnEJKCVyc2kpLCAlcmN4CisJbW92bAk4KCVyc2kpLCAlZWR4CisJbW92cQklcmN4LCAoJXJkaSkKKwltb3ZsCSVlZHgsIDgoJXJkaSkKKwltb3ZiCSQwLCAxMiglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDE0KToKKwltb3ZxCSglcnNpKSwgJXJjeAorCW1vdnEJNSglcnNpKSwgJXJkeAorCW1vdnEJJXJjeCwgKCVyZGkpCisJbW92cQklcmR4LCA1KCVyZGkpCisJbW92YgkkMCwgMTMoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQxNSk6CisJbW92cQkoJXJzaSksICVyY3gKKwltb3ZxCTYoJXJzaSksICVyZHgKKwltb3ZxCSVyY3gsICglcmRpKQorCW1vdnEJJXJkeCwgNiglcmRpKQorCW1vdmIJJDAsIDE0KCVyZGkpCisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuKQorCisJLnAyYWxpZ24gNAorTChFeGl0MTYpOgorCW1vdnEJKCVyc2kpLCAlcmN4CisJbW92cQk3KCVyc2kpLCAlcmR4CisJbW92cQklcmN4LCAoJXJkaSkKKwltb3ZxCSVyZHgsIDcoJXJkaSkKKwltb3ZiCSQwLCAxNSglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDE3KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92YgkkMCwgMTYoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQxOCk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZiCTE2KCVyc2kpLCAlZGgKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmIJJWRoLCAxNiglcmRpKQorCW1vdmIJJDAsIDE3KCVyZGkpCisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuKQorCisJLnAyYWxpZ24gNAorTChFeGl0MTkpOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92dwkxNiglcnNpKSwgJWN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3Z3CSVjeCwgMTYoJXJkaSkKKwltb3ZiCSQwLCAxOCglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDIwKToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdmwJMTUoJXJzaSksICVlY3gKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmwJJWVjeCwgMTUoJXJkaSkKKwltb3ZiCSQwLCAxOSglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDIxKToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdmwJMTYoJXJzaSksICVlY3gKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmwJJWVjeCwgMTYoJXJkaSkKKwltb3ZiCSQwLCAyMCglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDIyKToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdmwJMTYoJXJzaSksICVlY3gKKwltb3ZiCTIwKCVyc2kpLCAlZGgKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmwJJWVjeCwgMTYoJXJkaSkKKwltb3ZiCSVkaCwgMjAoJXJkaSkKKwltb3ZiCSQwLCAyMSglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDIzKToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdnEJMTQoJXJzaSksICVyY3gKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdnEJJXJjeCwgMTQoJXJkaSkKKwltb3ZiCSQwLCAyMiglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDI0KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdnEJMTUoJXJzaSksICVyY3gKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdnEJJXJjeCwgMTUoJXJkaSkKKwltb3ZiCSQwLCAyMyglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDI1KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdnEJMTYoJXJzaSksICVyY3gKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdnEJJXJjeCwgMTYoJXJkaSkKKwltb3ZiCSQwLCAyNCglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDI2KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdnEJMTYoJXJzaSksICVyY3gKKwltb3ZiCTI0KCVyc2kpLCAlZGgKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdnEJJXJjeCwgMTYoJXJkaSkKKwltb3YJJWRoLCAyNCglcmRpKQorCW1vdmIJJDAsIDI1KCVyZGkpCisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuKQorCisJLnAyYWxpZ24gNAorTChFeGl0MjcpOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92cQkxNiglcnNpKSwgJXJkeAorCW1vdncJMjQoJXJzaSksICVjeAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92cQklcmR4LCAxNiglcmRpKQorCW1vdncJJWN4LCAyNCglcmRpKQorCW1vdmIJJDAsIDI2KCVyZGkpCisJam1wCUwoQ2FsY3VsYXRlU3JjTGVuKQorCisJLnAyYWxpZ24gNAorTChFeGl0MjgpOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92cQkxNiglcnNpKSwgJXJkeAorCW1vdmwJMjMoJXJzaSksICVlY3gKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdnEJJXJkeCwgMTYoJXJkaSkKKwltb3ZsCSVlY3gsIDIzKCVyZGkpCisJbW92YgkkMCwgMjcoJXJkaSkKKwlqbXAJTChDYWxjdWxhdGVTcmNMZW4pCisKKwkucDJhbGlnbiA0CitMKEV4aXQyOSk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZxCTE2KCVyc2kpLCAlcmR4CisJbW92bAkyNCglcnNpKSwgJWVjeAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92cQklcmR4LCAxNiglcmRpKQorCW1vdmwJJWVjeCwgMjQoJXJkaSkKKwltb3ZiCSQwLCAyOCglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDMwKToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdmRxdQkxMyglcnNpKSwgJXhtbTIKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmRxdQkleG1tMiwgMTMoJXJkaSkKKwltb3ZiCSQwLCAyOSglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDMxKToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdmRxdQkxNCglcnNpKSwgJXhtbTIKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmRxdQkleG1tMiwgMTQoJXJkaSkKKwltb3ZiCSQwLCAzMCglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woRXhpdDMyKToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdmRxdQkxNSglcnNpKSwgJXhtbTIKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmRxdQkleG1tMiwgMTUoJXJkaSkKKwltb3ZiCSQwLCAzMSglcmRpKQorCWptcAlMKENhbGN1bGF0ZVNyY0xlbikKKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDApOgorCW1vdgkoJXJzaSksICVkbAorCW1vdgklZGwsICglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChTdHJpbmdUYWlsMSk6CisJbW92CSglcnNpKSwgJWR4CisJbW92CSVkeCwgKCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwyKToKKwltb3YJKCVyc2kpLCAlY3gKKwltb3YJMiglcnNpKSwgJWRsCisJbW92CSVjeCwgKCVyZGkpCisJbW92CSVkbCwgMiglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChTdHJpbmdUYWlsMyk6CisJbW92CSglcnNpKSwgJWVkeAorCW1vdgklZWR4LCAoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDQpOgorCW1vdgkoJXJzaSksICVlY3gKKwltb3YJNCglcnNpKSwgJWRsCisJbW92CSVlY3gsICglcmRpKQorCW1vdgklZGwsIDQoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDUpOgorCW1vdgkoJXJzaSksICVlY3gKKwltb3YJNCglcnNpKSwgJWR4CisJbW92CSVlY3gsICglcmRpKQorCW1vdgklZHgsIDQoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDYpOgorCW1vdgkoJXJzaSksICVlY3gKKwltb3YJMyglcnNpKSwgJWVkeAorCW1vdgklZWN4LCAoJXJkaSkKKwltb3YJJWVkeCwgMyglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChTdHJpbmdUYWlsNyk6CisJbW92CSglcnNpKSwgJXJkeAorCW1vdgklcmR4LCAoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDgpOgorCW1vdgkoJXJzaSksICVyY3gKKwltb3YJOCglcnNpKSwgJWRsCisJbW92CSVyY3gsICglcmRpKQorCW1vdgklZGwsIDgoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDkpOgorCW1vdgkoJXJzaSksICVyY3gKKwltb3YJOCglcnNpKSwgJWR4CisJbW92CSVyY3gsICglcmRpKQorCW1vdgklZHgsIDgoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDEwKToKKwltb3YJKCVyc2kpLCAlcmN4CisJbW92CTcoJXJzaSksICVlZHgKKwltb3YJJXJjeCwgKCVyZGkpCisJbW92CSVlZHgsIDcoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDExKToKKwltb3YJKCVyc2kpLCAlcmN4CisJbW92CTgoJXJzaSksICVlZHgKKwltb3YJJXJjeCwgKCVyZGkpCisJbW92CSVlZHgsIDgoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDEyKToKKwltb3YJKCVyc2kpLCAlcmN4CisJbW92CTUoJXJzaSksICVyZHgKKwltb3YJJXJjeCwgKCVyZGkpCisJbW92CSVyZHgsIDUoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDEzKToKKwltb3YJKCVyc2kpLCAlcmN4CisJbW92CTYoJXJzaSksICVyZHgKKwltb3YJJXJjeCwgKCVyZGkpCisJbW92CSVyZHgsIDYoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDE0KToKKwltb3YJKCVyc2kpLCAlcmN4CisJbW92CTcoJXJzaSksICVyZHgKKwltb3YJJXJjeCwgKCVyZGkpCisJbW92CSVyZHgsIDcoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDE1KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwxNik6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3YJMTYoJXJzaSksICVjbAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92CSVjbCwgMTYoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDE3KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdgkxNiglcnNpKSwgJWN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3YJJWN4LCAxNiglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChTdHJpbmdUYWlsMTgpOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92CTE1KCVyc2kpLCAlZWN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3YJJWVjeCwgMTUoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDE5KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdgkxNiglcnNpKSwgJWVjeAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92CSVlY3gsIDE2KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwyMCk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3YJMTYoJXJzaSksICVlY3gKKwltb3YJMjAoJXJzaSksICVkbAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92CSVlY3gsIDE2KCVyZGkpCisJbW92CSVkbCwgMjAoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDIxKToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdgkxNCglcnNpKSwgJXJjeAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92CSVyY3gsIDE0KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwyMik6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3YJMTUoJXJzaSksICVyY3gKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdgklcmN4LCAxNSglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChTdHJpbmdUYWlsMjMpOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92CTE2KCVyc2kpLCAlcmN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3YJJXJjeCwgMTYoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDI0KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdgkxNiglcnNpKSwgJXJkeAorCW1vdgkyNCglcnNpKSwgJWNsCisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3YJJXJkeCwgMTYoJXJkaSkKKwltb3YJJWNsLCAyNCglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChTdHJpbmdUYWlsMjUpOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92CTE2KCVyc2kpLCAlcmR4CisJbW92CTI0KCVyc2kpLCAlY3gKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdgklcmR4LCAxNiglcmRpKQorCW1vdgklY3gsIDI0KCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwyNik6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3YJMTYoJXJzaSksICVyZHgKKwltb3YJMjMoJXJzaSksICVlY3gKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdgklcmR4LCAxNiglcmRpKQorCW1vdgklZWN4LCAyMyglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChTdHJpbmdUYWlsMjcpOgorCW1vdmRxdQkoJXJzaSksICV4bW0wCisJbW92CTE2KCVyc2kpLCAlcmR4CisJbW92CTI0KCVyc2kpLCAlZWN4CisJbW92ZHF1CSV4bW0wLCAoJXJkaSkKKwltb3YJJXJkeCwgMTYoJXJkaSkKKwltb3YJJWVjeCwgMjQoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDI4KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdmRxdQkxMyglcnNpKSwgJXhtbTIKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmRxdQkleG1tMiwgMTMoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDI5KToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdmRxdQkxNCglcnNpKSwgJXhtbTIKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmRxdQkleG1tMiwgMTQoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDMwKToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdmRxdQkxNSglcnNpKSwgJXhtbTIKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmRxdQkleG1tMiwgMTUoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDMxKToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdmRxdQkxNiglcnNpKSwgJXhtbTIKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmRxdQkleG1tMiwgMTYoJXJkaSkKKwlSRVRVUk4KKworCS5wMmFsaWduIDQKK0woU3RyaW5nVGFpbDMyKToKKwltb3ZkcXUJKCVyc2kpLCAleG1tMAorCW1vdmRxdQkxNiglcnNpKSwgJXhtbTIKKwltb3YJMzIoJXJzaSksICVjbAorCW1vdmRxdQkleG1tMCwgKCVyZGkpCisJbW92ZHF1CSV4bW0yLCAxNiglcmRpKQorCW1vdgklY2wsIDMyKCVyZGkpCisJUkVUVVJOCisKKwkucDJhbGlnbiA0CitMKFN0cmluZ1RhaWwzMyk6CisJbW92ZHF1CSglcnNpKSwgJXhtbTAKKwltb3ZkcXUJMTYoJXJzaSksICV4bW0yCisJbW92CTMyKCVyc2kpLCAlY2wKKwltb3ZkcXUJJXhtbTAsICglcmRpKQorCW1vdmRxdQkleG1tMiwgMTYoJXJkaSkKKwltb3YJJWNsLCAzMiglcmRpKQorCVJFVFVSTgorCisJLnAyYWxpZ24gNAorTChDYWxjdWxhdGVTcmNMZW5DYXNlMSk6CisJeG9yCSVyOCwgJXI4CisJeG9yCSVyYXgsICVyYXgKK0woQ2FsY3VsYXRlU3JjTGVuKToKKwlweG9yCSV4bW0wLCAleG1tMAorCXhvcgklcmN4LCAlcmN4CisJYWRkCSVyOCwgJXJzaQorCW1vdmRxdQkoJXJzaSksICV4bW0xCisJcGNtcGVxYgkleG1tMSwgJXhtbTAKKwlwbW92bXNrYiAleG1tMCwgJXJkeAorCXRlc3QJJXJkeCwgJXJkeAorCWpueglMKFNyY0xlbkxvb3BFbmQpCisKKwlhZGQJJXJheCwgJXI5CisJbW92CSQxNiwgJXJheAorCW1vdgklcnNpLCAlcmN4CisJYW5kCSQxNSwgJXJjeAorCWFuZAkkLTE2LCAlcnNpCitMKFNyY0xlbkxvb3ApOgorCW1vdmRxYQkoJXJzaSwgJXJheCksICV4bW0xCisJcGNtcGVxYgkleG1tMSwgJXhtbTAKKwlwbW92bXNrYiAleG1tMCwgJXJkeAorCXRlc3QJJXJkeCwgJXJkeAorCWpueglMKFNyY0xlbkxvb3BFbmQpCisJYWRkCSQxNiwgJXJheAorCWptcAlMKFNyY0xlbkxvb3ApCisKKwkucDJhbGlnbiA0CitMKFNyY0xlbkxvb3BFbmQpOgorCWJzZgklcmR4LCAlcmR4CisJYWRkCSVyZHgsICVyYXgKKwlzdWIJJXJjeCwgJXJheAorCVJFVFVSTgorCitFTkQgKFNUUkxDUFkpCisKKwkucDJhbGlnbiA0CisJLnNlY3Rpb24gLnJvZGF0YQorTChFeGl0VGFibGUpOgorCS5pbnQJSk1QVEJMKEwoRXhpdDApLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MSksIEwoRXhpdFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKEV4aXQyKSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDMpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0NCksIEwoRXhpdFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKEV4aXQ1KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDYpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0NyksIEwoRXhpdFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKEV4aXQ4KSwgTChFeGl0VGFibGUpKQorCS5pbnQJSk1QVEJMKEwoRXhpdDkpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MTApLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MTEpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MTIpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MTMpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MTQpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MTUpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MTYpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MTcpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MTgpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MTkpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MjApLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MjEpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MjIpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MjMpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MjQpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MjUpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MjYpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MjcpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MjgpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MjkpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MzApLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MzEpLCBMKEV4aXRUYWJsZSkpCisJLmludAlKTVBUQkwoTChFeGl0MzIpLCBMKEV4aXRUYWJsZSkpCitMKEV4aXRTdHJpbmdUYWlsVGFibGUpOgorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDApLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDEpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDIpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDMpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDQpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDUpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDYpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDcpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDgpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDkpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDEwKSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwxMSksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMTIpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDEzKSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwxNCksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMTUpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDE2KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwxNyksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMTgpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDE5KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwyMCksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMjEpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDIyKSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwyMyksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMjQpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDI1KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwyNiksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMjcpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDI4KSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwyOSksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMzApLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQorCS5pbnQJSk1QVEJMKEwoU3RyaW5nVGFpbDMxKSwgTChFeGl0U3RyaW5nVGFpbFRhYmxlKSkKKwkuaW50CUpNUFRCTChMKFN0cmluZ1RhaWwzMiksIEwoRXhpdFN0cmluZ1RhaWxUYWJsZSkpCisJLmludAlKTVBUQkwoTChTdHJpbmdUYWlsMzMpLCBMKEV4aXRTdHJpbmdUYWlsVGFibGUpKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9zdHJpbmcvc3NzZTMtc3RyY21wLXNsbS5TIGIvbGliYy9hcmNoLXg4Nl82NC9zdHJpbmcvc3NzZTMtc3RyY21wLXNsbS5TCmluZGV4IDBkZDhjMjcuLmU4YWNkNWIgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODZfNjQvc3RyaW5nL3Nzc2UzLXN0cmNtcC1zbG0uUworKysgYi9saWJjL2FyY2gteDg2XzY0L3N0cmluZy9zc3NlMy1zdHJjbXAtc2xtLlMKQEAgLTE4OTcsOCArMTg5Nyw4IEBACiAKIAkucDJhbGlnbiA0CiBMKEJ5dGUwKToKLQltb3Z6eAkoJXJzaSksICVlY3gKLQltb3Z6eAkoJXJkaSksICVlYXgKKwltb3Z6YmwJKCVyc2kpLCAlZWN4CisJbW92emJsCSglcmRpKSwgJWVheAogCiAJc3ViCSVlY3gsICVlYXgKIAlyZXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvX19fY2xvc2UuUyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvX19fY2xvc2UuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NjA3ZjA1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9fX19jbG9zZS5TCkBAIC0wLDAgKzEsMTYgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fY2xvc2UpCisgICAgbW92bCAgICAkX19OUl9jbG9zZSwgJWVheAorICAgIHN5c2NhbGwKKyAgICBjbXBxICAgICQtTUFYX0VSUk5PLCAlcmF4CisgICAgamIgICAgICAxZgorICAgIG5lZ2wgICAgJWVheAorICAgIG1vdmwgICAgJWVheCwgJWVkaQorICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKzE6CisgICAgcmV0CitFTkQoX19fY2xvc2UpCisuaGlkZGVuIF9fX2Nsb3NlCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL19fX2ZhY2Nlc3NhdC5TIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9fX19mYWNjZXNzYXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOGZkM2Y1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9fX19mYWNjZXNzYXQuUwpAQCAtMCwwICsxLDE2IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fX2ZhY2Nlc3NhdCkKKyAgICBtb3ZsICAgICRfX05SX2ZhY2Nlc3NhdCwgJWVheAorICAgIHN5c2NhbGwKKyAgICBjbXBxICAgICQtTUFYX0VSUk5PLCAlcmF4CisgICAgamIgICAgICAxZgorICAgIG5lZ2wgICAgJWVheAorICAgIG1vdmwgICAgJWVheCwgJWVkaQorICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKzE6CisgICAgcmV0CitFTkQoX19fZmFjY2Vzc2F0KQorLmhpZGRlbiBfX19mYWNjZXNzYXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvX19fZmNobW9kLlMgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL19fX2ZjaG1vZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdiY2NiZWYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL19fX2ZjaG1vZC5TCkBAIC0wLDAgKzEsMTYgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19fZmNobW9kKQorICAgIG1vdmwgICAgJF9fTlJfZmNobW9kLCAlZWF4CisgICAgc3lzY2FsbAorICAgIGNtcHEgICAgJC1NQVhfRVJSTk8sICVyYXgKKyAgICBqYiAgICAgIDFmCisgICAgbmVnbCAgICAlZWF4CisgICAgbW92bCAgICAlZWF4LCAlZWRpCisgICAgY2FsbCAgICBfX3NldF9lcnJub19pbnRlcm5hbAorMToKKyAgICByZXQKK0VORChfX19mY2htb2QpCisuaGlkZGVuIF9fX2ZjaG1vZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9fX19mY2htb2RhdC5TIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9fX19mY2htb2RhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ4M2VjN2QKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL19fX2ZjaG1vZGF0LlMKQEAgLTAsMCArMSwxNiBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX19mY2htb2RhdCkKKyAgICBtb3ZsICAgICRfX05SX2ZjaG1vZGF0LCAlZWF4CisgICAgc3lzY2FsbAorICAgIGNtcHEgICAgJC1NQVhfRVJSTk8sICVyYXgKKyAgICBqYiAgICAgIDFmCisgICAgbmVnbCAgICAlZWF4CisgICAgbW92bCAgICAlZWF4LCAlZWRpCisgICAgY2FsbCAgICBfX3NldF9lcnJub19pbnRlcm5hbAorMToKKyAgICByZXQKK0VORChfX19mY2htb2RhdCkKKy5oaWRkZW4gX19fZmNobW9kYXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvX19jbG9ja19uYW5vc2xlZXAuUyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvX19jbG9ja19uYW5vc2xlZXAuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNzcyNmMwCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9fX2Nsb2NrX25hbm9zbGVlcC5TCkBAIC0wLDAgKzEsMTcgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoX19jbG9ja19uYW5vc2xlZXApCisgICAgbW92cSAgICAlcmN4LCAlcjEwCisgICAgbW92bCAgICAkX19OUl9jbG9ja19uYW5vc2xlZXAsICVlYXgKKyAgICBzeXNjYWxsCisgICAgY21wcSAgICAkLU1BWF9FUlJOTywgJXJheAorICAgIGpiICAgICAgMWYKKyAgICBuZWdsICAgICVlYXgKKyAgICBtb3ZsICAgICVlYXgsICVlZGkKKyAgICBjYWxsICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCisxOgorICAgIHJldAorRU5EKF9fY2xvY2tfbmFub3NsZWVwKQorLmhpZGRlbiBfX2Nsb2NrX25hbm9zbGVlcApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9fX2ZzdGF0ZnMuUyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvX19mc3RhdGZzLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjUwZTM1NQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvX19mc3RhdGZzLlMKQEAgLTAsMCArMSwxNiBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX2ZzdGF0ZnMpCisgICAgbW92bCAgICAkX19OUl9mc3RhdGZzLCAlZWF4CisgICAgc3lzY2FsbAorICAgIGNtcHEgICAgJC1NQVhfRVJSTk8sICVyYXgKKyAgICBqYiAgICAgIDFmCisgICAgbmVnbCAgICAlZWF4CisgICAgbW92bCAgICAlZWF4LCAlZWRpCisgICAgY2FsbCAgICBfX3NldF9lcnJub19pbnRlcm5hbAorMToKKyAgICByZXQKK0VORChfX2ZzdGF0ZnMpCisuaGlkZGVuIF9fZnN0YXRmcwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9fX3J0X3NpZ3F1ZXVlaW5mby5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUyYjY4NjMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL19fcnRfc2lncXVldWVpbmZvLlMKQEAgLTAsMCArMSwxNiBAQAorLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShfX3J0X3NpZ3F1ZXVlaW5mbykKKyAgICBtb3ZsICAgICRfX05SX3J0X3NpZ3F1ZXVlaW5mbywgJWVheAorICAgIHN5c2NhbGwKKyAgICBjbXBxICAgICQtTUFYX0VSUk5PLCAlcmF4CisgICAgamIgICAgICAxZgorICAgIG5lZ2wgICAgJWVheAorICAgIG1vdmwgICAgJWVheCwgJWVkaQorICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKzE6CisgICAgcmV0CitFTkQoX19ydF9zaWdxdWV1ZWluZm8pCisuaGlkZGVuIF9fcnRfc2lncXVldWVpbmZvCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL19fc3RhdGZzLlMgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL19fc3RhdGZzLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjA3YTgwOQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvX19zdGF0ZnMuUwpAQCAtMCwwICsxLDE2IEBACisvKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKF9fc3RhdGZzKQorICAgIG1vdmwgICAgJF9fTlJfc3RhdGZzLCAlZWF4CisgICAgc3lzY2FsbAorICAgIGNtcHEgICAgJC1NQVhfRVJSTk8sICVyYXgKKyAgICBqYiAgICAgIDFmCisgICAgbmVnbCAgICAlZWF4CisgICAgbW92bCAgICAlZWF4LCAlZWRpCisgICAgY2FsbCAgICBfX3NldF9lcnJub19pbnRlcm5hbAorMToKKyAgICByZXQKK0VORChfX3N0YXRmcykKKy5oaWRkZW4gX19zdGF0ZnMKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvX2V4aXQuUyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvX2V4aXQuUwppbmRleCBjNzkwOTFkLi4xYWI0ZDRmIDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL19leGl0LlMKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9fZXhpdC5TCkBAIC0xNCw1ICsxNCw0IEBACiAgICAgcmV0CiBFTkQoX2V4aXQpCiAKLSAgICAuZ2xvYmwgX0V4aXQKLSAgICAuZXF1IF9FeGl0LCBfZXhpdAorQUxJQVNfU1lNQk9MKF9FeGl0LCBfZXhpdCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2Nsb2NrX25hbm9zbGVlcC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyYTc5YmRkLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMKKysrIC9kZXYvbnVsbApAQCAtMSwxNiArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGNsb2NrX25hbm9zbGVlcCkKLSAgICBtb3ZxICAgICVyY3gsICVyMTAKLSAgICBtb3ZsICAgICRfX05SX2Nsb2NrX25hbm9zbGVlcCwgJWVheAotICAgIHN5c2NhbGwKLSAgICBjbXBxICAgICQtTUFYX0VSUk5PLCAlcmF4Ci0gICAgamIgICAgICAxZgotICAgIG5lZ2wgICAgJWVheAotICAgIG1vdmwgICAgJWVheCwgJWVkaQotICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLTE6Ci0gICAgcmV0Ci1FTkQoY2xvY2tfbmFub3NsZWVwKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9jbG9zZS5TIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9jbG9zZS5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4YTdhZGExLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvY2xvc2UuUworKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoY2xvc2UpCi0gICAgbW92bCAgICAkX19OUl9jbG9zZSwgJWVheAotICAgIHN5c2NhbGwKLSAgICBjbXBxICAgICQtTUFYX0VSUk5PLCAlcmF4Ci0gICAgamIgICAgICAxZgotICAgIG5lZ2wgICAgJWVheAotICAgIG1vdmwgICAgJWVheCwgJWVkaQotICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLTE6Ci0gICAgcmV0Ci1FTkQoY2xvc2UpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2ZhY2Nlc3NhdC5TIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9mYWNjZXNzYXQuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDVhNmU3OC4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2ZhY2Nlc3NhdC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTYgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmYWNjZXNzYXQpCi0gICAgbW92cSAgICAlcmN4LCAlcjEwCi0gICAgbW92bCAgICAkX19OUl9mYWNjZXNzYXQsICVlYXgKLSAgICBzeXNjYWxsCi0gICAgY21wcSAgICAkLU1BWF9FUlJOTywgJXJheAotICAgIGpiICAgICAgMWYKLSAgICBuZWdsICAgICVlYXgKLSAgICBtb3ZsICAgICVlYXgsICVlZGkKLSAgICBjYWxsICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCi0xOgotICAgIHJldAotRU5EKGZhY2Nlc3NhdCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvZmFsbG9jYXRlLlMgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2ZhbGxvY2F0ZS5TCmluZGV4IDgzMDdmN2UuLmY2Zjg5MWIgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvZmFsbG9jYXRlLlMKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9mYWxsb2NhdGUuUwpAQCAtMTUsNSArMTUsNCBAQAogICAgIHJldAogRU5EKGZhbGxvY2F0ZSkKIAotICAgIC5nbG9ibCBmYWxsb2NhdGU2NAotICAgIC5lcXUgZmFsbG9jYXRlNjQsIGZhbGxvY2F0ZQorQUxJQVNfU1lNQk9MKGZhbGxvY2F0ZTY0LCBmYWxsb2NhdGUpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2ZjaG1vZC5TIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9mY2htb2QuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjM1YmQyMS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2ZjaG1vZC5TCisrKyAvZGV2L251bGwKQEAgLTEsMTUgKzAsMCBAQAotLyogR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4gKi8KLQotI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgotCi1FTlRSWShmY2htb2QpCi0gICAgbW92bCAgICAkX19OUl9mY2htb2QsICVlYXgKLSAgICBzeXNjYWxsCi0gICAgY21wcSAgICAkLU1BWF9FUlJOTywgJXJheAotICAgIGpiICAgICAgMWYKLSAgICBuZWdsICAgICVlYXgKLSAgICBtb3ZsICAgICVlYXgsICVlZGkKLSAgICBjYWxsICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCi0xOgotICAgIHJldAotRU5EKGZjaG1vZCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvZmNobW9kYXQuUyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvZmNobW9kYXQuUwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmQ3OGQ4ZS4uMDAwMDAwMAotLS0gYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2ZjaG1vZGF0LlMKKysrIC9kZXYvbnVsbApAQCAtMSwxNiArMCwwIEBACi0vKiBHZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkuIERvIG5vdCBlZGl0LiAqLwotCi0jaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+Ci0KLUVOVFJZKGZjaG1vZGF0KQotICAgIG1vdnEgICAgJXJjeCwgJXIxMAotICAgIG1vdmwgICAgJF9fTlJfZmNobW9kYXQsICVlYXgKLSAgICBzeXNjYWxsCi0gICAgY21wcSAgICAkLU1BWF9FUlJOTywgJXJheAotICAgIGpiICAgICAgMWYKLSAgICBuZWdsICAgICVlYXgKLSAgICBtb3ZsICAgICVlYXgsICVlZGkKLSAgICBjYWxsICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCi0xOgotICAgIHJldAotRU5EKGZjaG1vZGF0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9mc3RhdDY0LlMgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2ZzdGF0NjQuUwppbmRleCBkZTU3NjY4Li5hMGQ0ZmExIDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2ZzdGF0NjQuUworKysgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2ZzdGF0NjQuUwpAQCAtMTQsNSArMTQsNCBAQAogICAgIHJldAogRU5EKGZzdGF0NjQpCiAKLSAgICAuZ2xvYmwgZnN0YXQKLSAgICAuZXF1IGZzdGF0LCBmc3RhdDY0CitBTElBU19TWU1CT0woZnN0YXQsIGZzdGF0NjQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2ZzdGF0YXQ2NC5TIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9mc3RhdGF0NjQuUwppbmRleCA0Nzc4NWJiLi4xOTg0ZDY4IDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2ZzdGF0YXQ2NC5TCisrKyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvZnN0YXRhdDY0LlMKQEAgLTE1LDUgKzE1LDQgQEAKICAgICByZXQKIEVORChmc3RhdGF0NjQpCiAKLSAgICAuZ2xvYmwgZnN0YXRhdAotICAgIC5lcXUgZnN0YXRhdCwgZnN0YXRhdDY0CitBTElBU19TWU1CT0woZnN0YXRhdCwgZnN0YXRhdDY0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9mc3RhdGZzNjQuUyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvZnN0YXRmczY0LlMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY3MjczNTAuLjAwMDAwMDAKLS0tIGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9mc3RhdGZzNjQuUworKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoZnN0YXRmczY0KQotICAgIG1vdmwgICAgJF9fTlJfZnN0YXRmcywgJWVheAotICAgIHN5c2NhbGwKLSAgICBjbXBxICAgICQtTUFYX0VSUk5PLCAlcmF4Ci0gICAgamIgICAgICAxZgotICAgIG5lZ2wgICAgJWVheAotICAgIG1vdmwgICAgJWVheCwgJWVkaQotICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKLTE6Ci0gICAgcmV0Ci1FTkQoZnN0YXRmczY0KQotCi0gICAgLmdsb2JsIGZzdGF0ZnMKLSAgICAuZXF1IGZzdGF0ZnMsIGZzdGF0ZnM2NApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9mdHJ1bmNhdGUuUyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvZnRydW5jYXRlLlMKaW5kZXggMDM2NTM2OC4uNzkxNzQ2OCAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9mdHJ1bmNhdGUuUworKysgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2Z0cnVuY2F0ZS5TCkBAIC0xNCw1ICsxNCw0IEBACiAgICAgcmV0CiBFTkQoZnRydW5jYXRlKQogCi0gICAgLmdsb2JsIGZ0cnVuY2F0ZTY0Ci0gICAgLmVxdSBmdHJ1bmNhdGU2NCwgZnRydW5jYXRlCitBTElBU19TWU1CT0woZnRydW5jYXRlNjQsIGZ0cnVuY2F0ZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvZ2V0cmxpbWl0LlMgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2dldHJsaW1pdC5TCmluZGV4IDJkMjcyYTEuLjAwZWQwOGEgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvZ2V0cmxpbWl0LlMKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9nZXRybGltaXQuUwpAQCAtMTQsNSArMTQsNCBAQAogICAgIHJldAogRU5EKGdldHJsaW1pdCkKIAotICAgIC5nbG9ibCBnZXRybGltaXQ2NAotICAgIC5lcXUgZ2V0cmxpbWl0NjQsIGdldHJsaW1pdAorQUxJQVNfU1lNQk9MKGdldHJsaW1pdDY0LCBnZXRybGltaXQpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2xzZWVrLlMgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL2xzZWVrLlMKaW5kZXggMTUzYjkzNS4uNjlkNjBjMiAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9sc2Vlay5TCisrKyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvbHNlZWsuUwpAQCAtMTQsNSArMTQsNCBAQAogICAgIHJldAogRU5EKGxzZWVrKQogCi0gICAgLmdsb2JsIGxzZWVrNjQKLSAgICAuZXF1IGxzZWVrNjQsIGxzZWVrCitBTElBU19TWU1CT0wobHNlZWs2NCwgbHNlZWspCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL21tYXAuUyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvbW1hcC5TCmluZGV4IDhhYTQ3ODAuLjBjMjU0NzMgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvbW1hcC5TCisrKyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvbW1hcC5TCkBAIC0xNSw1ICsxNSw0IEBACiAgICAgcmV0CiBFTkQobW1hcCkKIAotICAgIC5nbG9ibCBtbWFwNjQKLSAgICAuZXF1IG1tYXA2NCwgbW1hcAorQUxJQVNfU1lNQk9MKG1tYXA2NCwgbW1hcCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvcHJlYWQ2NC5TIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9wcmVhZDY0LlMKaW5kZXggM2FhNTZlNS4uZWFhNDdiMSAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9wcmVhZDY0LlMKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9wcmVhZDY0LlMKQEAgLTE1LDUgKzE1LDQgQEAKICAgICByZXQKIEVORChwcmVhZDY0KQogCi0gICAgLmdsb2JsIHByZWFkCi0gICAgLmVxdSBwcmVhZCwgcHJlYWQ2NAorQUxJQVNfU1lNQk9MKHByZWFkLCBwcmVhZDY0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9wcmxpbWl0NjQuUyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvcHJsaW1pdDY0LlMKaW5kZXggNjNlYzQ5Mi4uNzM3Yjg2MyAxMDA2NDQKLS0tIGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9wcmxpbWl0NjQuUworKysgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL3BybGltaXQ2NC5TCkBAIC0xNSw1ICsxNSw0IEBACiAgICAgcmV0CiBFTkQocHJsaW1pdDY0KQogCi0gICAgLmdsb2JsIHBybGltaXQKLSAgICAuZXF1IHBybGltaXQsIHBybGltaXQ2NAorQUxJQVNfU1lNQk9MKHBybGltaXQsIHBybGltaXQ2NCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvcHdyaXRlNjQuUyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvcHdyaXRlNjQuUwppbmRleCAyNzc5ZmI0Li5lZGI2MGFmIDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL3B3cml0ZTY0LlMKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9wd3JpdGU2NC5TCkBAIC0xNSw1ICsxNSw0IEBACiAgICAgcmV0CiBFTkQocHdyaXRlNjQpCiAKLSAgICAuZ2xvYmwgcHdyaXRlCi0gICAgLmVxdSBwd3JpdGUsIHB3cml0ZTY0CitBTElBU19TWU1CT0wocHdyaXRlLCBwd3JpdGU2NCkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvc2VuZGZpbGUuUyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvc2VuZGZpbGUuUwppbmRleCAxMTdiMGFhLi5jMGZhNGVlIDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL3NlbmRmaWxlLlMKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9zZW5kZmlsZS5TCkBAIC0xNSw1ICsxNSw0IEBACiAgICAgcmV0CiBFTkQoc2VuZGZpbGUpCiAKLSAgICAuZ2xvYmwgc2VuZGZpbGU2NAotICAgIC5lcXUgc2VuZGZpbGU2NCwgc2VuZGZpbGUKK0FMSUFTX1NZTUJPTChzZW5kZmlsZTY0LCBzZW5kZmlsZSkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvc2V0aG9zdG5hbWUuUyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvc2V0aG9zdG5hbWUuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YmNkMTJkCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9zZXRob3N0bmFtZS5TCkBAIC0wLDAgKzEsMTUgQEAKKy8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoc2V0aG9zdG5hbWUpCisgICAgbW92bCAgICAkX19OUl9zZXRob3N0bmFtZSwgJWVheAorICAgIHN5c2NhbGwKKyAgICBjbXBxICAgICQtTUFYX0VSUk5PLCAlcmF4CisgICAgamIgICAgICAxZgorICAgIG5lZ2wgICAgJWVheAorICAgIG1vdmwgICAgJWVheCwgJWVkaQorICAgIGNhbGwgICAgX19zZXRfZXJybm9faW50ZXJuYWwKKzE6CisgICAgcmV0CitFTkQoc2V0aG9zdG5hbWUpCmRpZmYgLS1naXQgYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL3NldHJsaW1pdC5TIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9zZXRybGltaXQuUwppbmRleCBlZjAzMDY4Li4zODQzZmY5IDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL3NldHJsaW1pdC5TCisrKyBiL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvc2V0cmxpbWl0LlMKQEAgLTE0LDUgKzE0LDQgQEAKICAgICByZXQKIEVORChzZXRybGltaXQpCiAKLSAgICAuZ2xvYmwgc2V0cmxpbWl0NjQKLSAgICAuZXF1IHNldHJsaW1pdDY0LCBzZXRybGltaXQKK0FMSUFTX1NZTUJPTChzZXRybGltaXQ2NCwgc2V0cmxpbWl0KQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9zdGF0ZnM2NC5TIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy9zdGF0ZnM2NC5TCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNmY2YmRkLi4wMDAwMDAwCi0tLSBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvc3RhdGZzNjQuUworKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLS8qIEdlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weS4gRG8gbm90IGVkaXQuICovCi0KLSNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KLQotRU5UUlkoc3RhdGZzNjQpCi0gICAgbW92bCAgICAkX19OUl9zdGF0ZnMsICVlYXgKLSAgICBzeXNjYWxsCi0gICAgY21wcSAgICAkLU1BWF9FUlJOTywgJXJheAotICAgIGpiICAgICAgMWYKLSAgICBuZWdsICAgICVlYXgKLSAgICBtb3ZsICAgICVlYXgsICVlZGkKLSAgICBjYWxsICAgIF9fc2V0X2Vycm5vX2ludGVybmFsCi0xOgotICAgIHJldAotRU5EKHN0YXRmczY0KQotCi0gICAgLmdsb2JsIHN0YXRmcwotICAgIC5lcXUgc3RhdGZzLCBzdGF0ZnM2NApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy90cnVuY2F0ZS5TIGIvbGliYy9hcmNoLXg4Nl82NC9zeXNjYWxscy90cnVuY2F0ZS5TCmluZGV4IDJlY2QwNWIuLjRiOTUzYTMgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC14ODZfNjQvc3lzY2FsbHMvdHJ1bmNhdGUuUworKysgYi9saWJjL2FyY2gteDg2XzY0L3N5c2NhbGxzL3RydW5jYXRlLlMKQEAgLTE0LDUgKzE0LDQgQEAKICAgICByZXQKIEVORCh0cnVuY2F0ZSkKIAotICAgIC5nbG9ibCB0cnVuY2F0ZTY0Ci0gICAgLmVxdSB0cnVuY2F0ZTY0LCB0cnVuY2F0ZQorQUxJQVNfU1lNQk9MKHRydW5jYXRlNjQsIHRydW5jYXRlKQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLXg4Nl82NC94ODZfNjQubWsgYi9saWJjL2FyY2gteDg2XzY0L3g4Nl82NC5tawppbmRleCA4Njc1ZWY0Li4wNmQzMTg1IDEwMDY0NAotLS0gYS9saWJjL2FyY2gteDg2XzY0L3g4Nl82NC5taworKysgYi9saWJjL2FyY2gteDg2XzY0L3g4Nl82NC5tawpAQCAtOSw4ICs5LDYgQEAKICAgICBiaW9uaWMvX19tZW1zZXRfY2hrLmNwcCBcCiAgICAgYmlvbmljL19fc3RyY3B5X2Noay5jcHAgXAogICAgIGJpb25pYy9fX3N0cmNhdF9jaGsuY3BwIFwKLSAgICBiaW9uaWMvbWVtY2hyLmMgXAotICAgIGJpb25pYy9tZW1yY2hyLmMgXAogICAgIGJpb25pYy9zdHJjaHIuY3BwIFwKICAgICBiaW9uaWMvc3Rybmxlbi5jIFwKICAgICBiaW9uaWMvc3RycmNoci5jcHAgXApAQCAtMjYsOCArMjQsOCBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RyaW5nL3dtZW1tb3ZlLmMgXAogCiBsaWJjX29wZW5ic2Rfc3JjX2ZpbGVzX3g4Nl82NCArPSBcCi0gICAgdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvc3RybGNhdC5jIFwKLSAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9zdHJsY3B5LmMgXAorICAgIHVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL21lbWNoci5jIFwKKyAgICB1cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9tZW1yY2hyLmMgXAogCiAjCiAjIEluaGVyZW50bHkgYXJjaGl0ZWN0dXJlLXNwZWNpZmljIGNvZGUuCkBAIC0zNywxMCArMzUsOCBAQAogICAgIGFyY2gteDg2XzY0L2Jpb25pYy9fX2Jpb25pY19jbG9uZS5TIFwKICAgICBhcmNoLXg4Nl82NC9iaW9uaWMvX2V4aXRfd2l0aF9zdGFja190ZWFyZG93bi5TIFwKICAgICBhcmNoLXg4Nl82NC9iaW9uaWMvX19yZXN0b3JlX3J0LlMgXAotICAgIGFyY2gteDg2XzY0L2Jpb25pYy9fc2V0am1wLlMgXAogICAgIGFyY2gteDg2XzY0L2Jpb25pYy9zZXRqbXAuUyBcCiAgICAgYXJjaC14ODZfNjQvYmlvbmljL19fc2V0X3Rscy5jIFwKLSAgICBhcmNoLXg4Nl82NC9iaW9uaWMvc2lnc2V0am1wLlMgXAogICAgIGFyY2gteDg2XzY0L2Jpb25pYy9zeXNjYWxsLlMgXAogICAgIGFyY2gteDg2XzY0L2Jpb25pYy92Zm9yay5TIFwKIApAQCAtNTYsNiArNTIsOCBAQAogICAgIGFyY2gteDg2XzY0L3N0cmluZy9zc2UyLXN0cG5jcHktc2xtLlMgXAogICAgIGFyY2gteDg2XzY0L3N0cmluZy9zc2UyLXN0cmNhdC1zbG0uUyBcCiAgICAgYXJjaC14ODZfNjQvc3RyaW5nL3NzZTItc3RyY3B5LXNsbS5TIFwKKyAgICBhcmNoLXg4Nl82NC9zdHJpbmcvc3NlMi1zdHJsY2F0LXNsbS5TIFwKKyAgICBhcmNoLXg4Nl82NC9zdHJpbmcvc3NlMi1zdHJsY3B5LXNsbS5TIFwKICAgICBhcmNoLXg4Nl82NC9zdHJpbmcvc3NlMi1zdHJsZW4tc2xtLlMgXAogICAgIGFyY2gteDg2XzY0L3N0cmluZy9zc2UyLXN0cm5jYXQtc2xtLlMgXAogICAgIGFyY2gteDg2XzY0L3N0cmluZy9zc2UyLXN0cm5jcHktc2xtLlMgXApkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvTmV0ZENsaWVudC5jcHAgYi9saWJjL2Jpb25pYy9OZXRkQ2xpZW50LmNwcAppbmRleCA1YjBmNGZkLi5iMTE3ZDcyIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9OZXRkQ2xpZW50LmNwcAorKysgYi9saWJjL2Jpb25pYy9OZXRkQ2xpZW50LmNwcApAQCAtMzQsNyArMzQsNyBAQAogfQogCiBzdGF0aWMgdm9pZCBuZXRkQ2xpZW50SW5pdEltcGwoKSB7Ci0gICAgdm9pZCogbmV0ZENsaWVudEhhbmRsZSA9IGRsb3BlbigibGlibmV0ZF9jbGllbnQuc28iLCBSVExEX0xBWlkpOworICAgIHZvaWQqIG5ldGRDbGllbnRIYW5kbGUgPSBkbG9wZW4oImxpYm5ldGRfY2xpZW50LnNvIiwgUlRMRF9OT1cpOwogICAgIGlmIChuZXRkQ2xpZW50SGFuZGxlID09IE5VTEwpIHsKICAgICAgICAgLy8gSWYgdGhlIGxpYnJhcnkgaXMgbm90IGF2YWlsYWJsZSwgaXQncyBub3QgYW4gZXJyb3IuIFdlJ2xsIGp1c3QgdXNlCiAgICAgICAgIC8vIGRlZmF1bHQgaW1wbGVtZW50YXRpb25zIG9mIGZ1bmN0aW9ucyB0aGF0IGl0IHdvdWxkJ3ZlIG92ZXJyaWRkZW4uCmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9fX2N4YV9ndWFyZC5jcHAgYi9saWJjL2Jpb25pYy9fX2N4YV9ndWFyZC5jcHAKaW5kZXggNWIwZDU3ZC4uNWIzNGI1OCAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvX19jeGFfZ3VhcmQuY3BwCisrKyBiL2xpYmMvYmlvbmljL19fY3hhX2d1YXJkLmNwcApAQCAtMTQsMTAgKzE0LDEzIEBACiAgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KICAqLwogCi0jaW5jbHVkZSA8c3RkZGVmLmg+CiAjaW5jbHVkZSA8ZW5kaWFuLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjdW5kZWYgX1VTSU5HX0xJQkNYWCAgLy8gUHJldmVudCB1c2luZyBvZiA8YXRvbWljPi4KKyNpbmNsdWRlIDxzdGRhdG9taWMuaD4KIAotI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX2F0b21pY19pbmxpbmUuaCIKKyNpbmNsdWRlIDxzdGRkZWYuaD4KKwogI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX2Z1dGV4LmgiCiAKIC8vIFRoaXMgZmlsZSBjb250YWlucyBDKysgQUJJIHN1cHBvcnQgZnVuY3Rpb25zIGZvciBvbmUgdGltZQpAQCAtNDksNjYgKzUyLDgyIEBACiAvLyB2YWx1ZXMuIFRoZSBMU0IgaXMgdGVzdGVkIGJ5IHRoZSBjb21waWxlci1nZW5lcmF0ZWQgY29kZSBiZWZvcmUgY2FsbGluZwogLy8gX19jeGFfZ3VhcmRfYWNxdWlyZS4KIHVuaW9uIF9ndWFyZF90IHsKLSAgICBpbnQgdm9sYXRpbGUgc3RhdGU7Ci0gICAgaW50MzJfdCBhbGlnbmVyOworICBhdG9taWNfaW50IHN0YXRlOworICBpbnQzMl90IGFsaWduZXI7CiB9OwogCi1jb25zdCBzdGF0aWMgaW50IHJlYWR5ID0gMHgxOwotY29uc3Qgc3RhdGljIGludCBwZW5kaW5nID0gMHgyOwotY29uc3Qgc3RhdGljIGludCB3YWl0aW5nID0gMHg2OwotCiAjZWxzZQogLy8gVGhlIEl0YW5pdW0veDg2IEMrKyBBQkkgKHVzZWQgYnkgYWxsIG90aGVyIGFyY2hpdGVjdHVyZXMpIG1hbmRhdGVzIHRoYXQKIC8vIGd1YXJkIHZhcmlhYmxlcyBhcmUgNjQtYml0IGFsaWduZWQsIDY0LWJpdCB2YWx1ZXMuIFRoZSBMU0IgaXMgdGVzdGVkIGJ5CiAvLyB0aGUgY29tcGlsZXItZ2VuZXJhdGVkIGNvZGUgYmVmb3JlIGNhbGxpbmcgX19jeGFfZ3VhcmRfYWNxdWlyZS4KIHVuaW9uIF9ndWFyZF90IHsKLSAgICBpbnQgdm9sYXRpbGUgc3RhdGU7Ci0gICAgaW50NjRfdCBhbGlnbmVyOworICBhdG9taWNfaW50IHN0YXRlOworICBpbnQ2NF90IGFsaWduZXI7CiB9OwogCi1jb25zdCBzdGF0aWMgaW50IHJlYWR5ICAgICA9IGxldG9oMzIoMHgxKTsKLWNvbnN0IHN0YXRpYyBpbnQgcGVuZGluZyAgID0gbGV0b2gzMigweDEwMCk7Ci1jb25zdCBzdGF0aWMgaW50IHdhaXRpbmcgICA9IGxldG9oMzIoMHgxMDAwMCk7CiAjZW5kaWYKIAorLy8gU2V0IGNvbnN0cnVjdGlvbiBzdGF0ZSB2YWx1ZXMgYWNjb3JkaW5nIHRvIHJlZmVyZW5jZSBkb2N1bWVudGF0aW9uLgorLy8gMCBpcyB0aGUgaW5pdGlhbGl6YXRpb24gdmFsdWUuCisvLyBBcm0gcmVxdWlyZXMgKCgqZ3YgJiAxKSA9PSAxKSBhZnRlciBfX2N4YV9ndWFyZF9yZWxlYXNlLCAoKCpndiAmIDMpID09IDApIGFmdGVyIF9fY3hhX2d1YXJkX2Fib3J0LgorLy8gWDg2IHJlcXVpcmVzIGZpcnN0IGJ5dGUgbm90IG1vZGlmaWVkIGJ5IF9fY3hhX2d1YXJkX2FjcXVpcmUsIGZpcnN0IGJ5dGUgaXMgbm9uLXplcm8gYWZ0ZXIKKy8vIF9fY3hhX2d1YXJkX3JlbGVhc2UuCisKKyNkZWZpbmUgQ09OU1RSVUNUSU9OX05PVF9ZRVRfU1RBUlRFRCAgICAgICAgICAgICAgICAwCisjZGVmaW5lIENPTlNUUlVDVElPTl9DT01QTEVURSAgICAgICAgICAgICAgICAgICAgICAgMQorI2RlZmluZSBDT05TVFJVQ1RJT05fVU5ERVJXQVlfV0lUSE9VVF9XQUlURVIgICAgMHgxMDAKKyNkZWZpbmUgQ09OU1RSVUNUSU9OX1VOREVSV0FZX1dJVEhfV0FJVEVSICAgICAgIDB4MjAwCisKIGV4dGVybiAiQyIgaW50IF9fY3hhX2d1YXJkX2FjcXVpcmUoX2d1YXJkX3QqIGd2KSB7Ci0gICAgLy8gMCAtPiBwZW5kaW5nLCByZXR1cm4gMQotICAgIC8vIHBlbmRpbmcgLT4gd2FpdGluZywgd2FpdCBhbmQgcmV0dXJuIDAKLSAgICAvLyB3YWl0aW5nOiB1bnRvdWNoZWQsIHdhaXQgYW5kIHJldHVybiAwCi0gICAgLy8gcmVhZHk6IHVudG91Y2hlZCwgcmV0dXJuIDAKKyAgaW50IG9sZF92YWx1ZSA9IGF0b21pY19sb2FkX2V4cGxpY2l0KCZndi0+c3RhdGUsIG1lbW9yeV9vcmRlcl9yZWxheGVkKTsKIAotcmV0cnk6Ci0gICAgaWYgKF9fYmlvbmljX2NtcHhjaGcoMCwgcGVuZGluZywgJmd2LT5zdGF0ZSkgPT0gMCkgewotICAgICAgICBBTkRST0lEX01FTUJBUl9GVUxMKCk7Ci0gICAgICAgIHJldHVybiAxOwotICAgIH0KLSAgICBfX2Jpb25pY19jbXB4Y2hnKHBlbmRpbmcsIHdhaXRpbmcsICZndi0+c3RhdGUpOyAvLyBJbmRpY2F0ZSB0aGVyZSBpcyBhIHdhaXRlcgotICAgIF9fZnV0ZXhfd2FpdCgmZ3YtPnN0YXRlLCB3YWl0aW5nLCBOVUxMKTsKLQotICAgIGlmIChndi0+c3RhdGUgIT0gcmVhZHkpIHsKLSAgICAgICAgLy8gX19jeGFfZ3VhcmRfYWJvcnQgd2FzIGNhbGxlZCwgbGV0IGV2ZXJ5IHRocmVhZCB0cnkgc2luY2UgdGhlcmUgaXMgbm8gcmV0dXJuIGNvZGUgZm9yIHRoaXMgY29uZGl0aW9uCi0gICAgICAgIGdvdG8gcmV0cnk7CisgIHdoaWxlICh0cnVlKSB7CisgICAgaWYgKG9sZF92YWx1ZSA9PSBDT05TVFJVQ1RJT05fQ09NUExFVEUpIHsKKyAgICAgIC8vIEEgbG9hZF9hY3F1aXJlIG9wZXJhdGlvbiBpcyBuZWVkIGJlZm9yZSBleGl0aW5nIHdpdGggQ09NUExFVEUgc3RhdGUsIGFzIHdlIGhhdmUgdG8gZW5zdXJlCisgICAgICAvLyB0aGF0IGFsbCB0aGUgc3RvcmVzIHBlcmZvcm1lZCBieSB0aGUgY29uc3RydWN0aW9uIGZ1bmN0aW9uIGFyZSBvYnNlcnZhYmxlIG9uIHRoaXMgQ1BVCisgICAgICAvLyBhZnRlciB3ZSBleGl0LgorICAgICAgYXRvbWljX3RocmVhZF9mZW5jZShtZW1vcnlfb3JkZXJfYWNxdWlyZSk7CisgICAgICByZXR1cm4gMDsKKyAgICB9IGVsc2UgaWYgKG9sZF92YWx1ZSA9PSBDT05TVFJVQ1RJT05fTk9UX1lFVF9TVEFSVEVEKSB7CisgICAgICBpZiAoIWF0b21pY19jb21wYXJlX2V4Y2hhbmdlX3dlYWtfZXhwbGljaXQoJmd2LT5zdGF0ZSwgJm9sZF92YWx1ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ09OU1RSVUNUSU9OX1VOREVSV0FZX1dJVEhPVVRfV0FJVEVSLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfb3JkZXJfcmVsYXhlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVtb3J5X29yZGVyX3JlbGF4ZWQpKSB7CisgICAgICAgIGNvbnRpbnVlOworICAgICAgfQorICAgICAgLy8gVGhlIGFjcXVpcmUgZmVuY2UgbWF5IG5vdCBiZSBuZWVkZWQuIEJ1dCBhcyBkZXNjcmliZWQgaW4gc2VjdGlvbiAzLjMuMiBvZgorICAgICAgLy8gdGhlIEl0YW5pdW0gQysrIEFCSSBzcGVjaWZpY2F0aW9uLCBpdCBwcm9iYWJseSBoYXMgdG8gYmVoYXZlIGxpa2UgdGhlCisgICAgICAvLyBhY3F1aXNpdGlvbiBvZiBhIG11dGV4LCB3aGljaCBuZWVkcyBhbiBhY3F1aXJlIGZlbmNlLgorICAgICAgYXRvbWljX3RocmVhZF9mZW5jZShtZW1vcnlfb3JkZXJfYWNxdWlyZSk7CisgICAgICByZXR1cm4gMTsKKyAgICB9IGVsc2UgaWYgKG9sZF92YWx1ZSA9PSBDT05TVFJVQ1RJT05fVU5ERVJXQVlfV0lUSE9VVF9XQUlURVIpIHsKKyAgICAgIGlmICghYXRvbWljX2NvbXBhcmVfZXhjaGFuZ2Vfd2Vha19leHBsaWNpdCgmZ3YtPnN0YXRlLCAmb2xkX3ZhbHVlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENPTlNUUlVDVElPTl9VTkRFUldBWV9XSVRIX1dBSVRFUiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfb3JkZXJfcmVsYXhlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfb3JkZXJfcmVsYXhlZCkpIHsKKyAgICAgICAgY29udGludWU7CisgICAgICB9CiAgICAgfQogCi0gICAgQU5EUk9JRF9NRU1CQVJfRlVMTCgpOwotICAgIHJldHVybiAwOworICAgIF9fZnV0ZXhfd2FpdF9leCgmZ3YtPnN0YXRlLCBmYWxzZSwgQ09OU1RSVUNUSU9OX1VOREVSV0FZX1dJVEhfV0FJVEVSLCBOVUxMKTsKKyAgICBvbGRfdmFsdWUgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmZ3YtPnN0YXRlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgIH0KIH0KIAogZXh0ZXJuICJDIiB2b2lkIF9fY3hhX2d1YXJkX3JlbGVhc2UoX2d1YXJkX3QqIGd2KSB7Ci0gICAgLy8gcGVuZGluZyAtPiByZWFkeQotICAgIC8vIHdhaXRpbmcgLT4gcmVhZHksIGFuZCB3YWtlCi0KLSAgICBBTkRST0lEX01FTUJBUl9GVUxMKCk7Ci0gICAgaWYgKF9fYmlvbmljX2NtcHhjaGcocGVuZGluZywgcmVhZHksICZndi0+c3RhdGUpID09IDApIHsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIGd2LT5zdGF0ZSA9IHJlYWR5OwotICAgIF9fZnV0ZXhfd2FrZSgmZ3YtPnN0YXRlLCAweDdmZmZmZmZmKTsKKyAgLy8gUmVsZWFzZSBmZW5jZSBpcyB1c2VkIHRvIG1ha2UgYWxsIHN0b3JlcyBwZXJmb3JtZWQgYnkgdGhlIGNvbnN0cnVjdGlvbiBmdW5jdGlvbgorICAvLyB2aXNpYmxlIGluIG90aGVyIHRocmVhZHMuCisgIGludCBvbGRfdmFsdWUgPSBhdG9taWNfZXhjaGFuZ2VfZXhwbGljaXQoJmd2LT5zdGF0ZSwgQ09OU1RSVUNUSU9OX0NPTVBMRVRFLCBtZW1vcnlfb3JkZXJfcmVsZWFzZSk7CisgIGlmIChvbGRfdmFsdWUgPT0gQ09OU1RSVUNUSU9OX1VOREVSV0FZX1dJVEhfV0FJVEVSKSB7CisgICAgX19mdXRleF93YWtlX2V4KCZndi0+c3RhdGUsIGZhbHNlLCBJTlRfTUFYKTsKKyAgfQogfQogCiBleHRlcm4gIkMiIHZvaWQgX19jeGFfZ3VhcmRfYWJvcnQoX2d1YXJkX3QqIGd2KSB7Ci0gICAgQU5EUk9JRF9NRU1CQVJfRlVMTCgpOwotICAgIGd2LT5zdGF0ZT0gMDsKLSAgICBfX2Z1dGV4X3dha2UoJmd2LT5zdGF0ZSwgMHg3ZmZmZmZmZik7CisgIC8vIFJlbGVhc2UgZmVuY2UgaXMgdXNlZCB0byBtYWtlIGFsbCBzdG9yZXMgcGVyZm9ybWVkIGJ5IHRoZSBjb25zdHJ1Y3Rpb24gZnVuY3Rpb24KKyAgLy8gdmlzaWJsZSBpbiBvdGhlciB0aHJlYWRzLgorICBpbnQgb2xkX3ZhbHVlID0gYXRvbWljX2V4Y2hhbmdlX2V4cGxpY2l0KCZndi0+c3RhdGUsIENPTlNUUlVDVElPTl9OT1RfWUVUX1NUQVJURUQsIG1lbW9yeV9vcmRlcl9yZWxlYXNlKTsKKyAgaWYgKG9sZF92YWx1ZSA9PSBDT05TVFJVQ1RJT05fVU5ERVJXQVlfV0lUSF9XQUlURVIpIHsKKyAgICBfX2Z1dGV4X3dha2VfZXgoJmd2LT5zdGF0ZSwgZmFsc2UsIElOVF9NQVgpOworICB9CiB9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9fX2N4YV90aHJlYWRfYXRleGl0X2ltcGwuY3BwIGIvbGliYy9iaW9uaWMvX19jeGFfdGhyZWFkX2F0ZXhpdF9pbXBsLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZTQyN2QzCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvX19jeGFfdGhyZWFkX2F0ZXhpdF9pbXBsLmNwcApAQCAtMCwwICsxLDQ4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKworc3RydWN0IHRocmVhZF9sb2NhbF9kdG9yIHsKKyAgdm9pZCAoKmZ1bmMpICh2b2lkICopOworICB2b2lkICphcmc7CisgIHZvaWQgKmRzb19oYW5kbGU7IC8vIHVudXNlZC4uLgorICB0aHJlYWRfbG9jYWxfZHRvciogbmV4dDsKK307CisKK3N0YXRpYyBfX3RocmVhZCB0aHJlYWRfbG9jYWxfZHRvciogdGhyZWFkX2xvY2FsX2R0b3JzID0gbnVsbHB0cjsKKworZXh0ZXJuICJDIiBpbnQgX19jeGFfdGhyZWFkX2F0ZXhpdF9pbXBsKHZvaWQgKCpmdW5jKSAodm9pZCAqKSwgdm9pZCAqYXJnLCB2b2lkICpkc29faGFuZGxlKSB7CisgIHRocmVhZF9sb2NhbF9kdG9yKiBkdG9yID0gbmV3IHRocmVhZF9sb2NhbF9kdG9yKCk7CisKKyAgZHRvci0+ZnVuYyA9IGZ1bmM7CisgIGR0b3ItPmFyZyA9IGFyZzsKKyAgZHRvci0+ZHNvX2hhbmRsZSA9IGRzb19oYW5kbGU7CisgIGR0b3ItPm5leHQgPSB0aHJlYWRfbG9jYWxfZHRvcnM7CisKKyAgdGhyZWFkX2xvY2FsX2R0b3JzID0gZHRvcjsKKworICByZXR1cm4gMDsKK30KKworZXh0ZXJuICJDIiBfX0xJQkNfSElEREVOX18gdm9pZCBfX2N4YV90aHJlYWRfZmluYWxpemUoKSB7CisgIHdoaWxlICh0aHJlYWRfbG9jYWxfZHRvcnMgIT0gbnVsbHB0cikgeworICAgIHRocmVhZF9sb2NhbF9kdG9yKiBjdXJyZW50ID0gdGhyZWFkX2xvY2FsX2R0b3JzOworICAgIHRocmVhZF9sb2NhbF9kdG9ycyA9IGN1cnJlbnQtPm5leHQ7CisKKyAgICBjdXJyZW50LT5mdW5jKGN1cnJlbnQtPmFyZyk7CisgICAgZGVsZXRlIGN1cnJlbnQ7CisgIH0KK30KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL19fZ251X2Jhc2VuYW1lLmNwcCBiL2xpYmMvYmlvbmljL19fZ251X2Jhc2VuYW1lLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZWIzZjY1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvX19nbnVfYmFzZW5hbWUuY3BwCkBAIC0wLDAgKzEsMzUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2RlZmluZSBfR05VX1NPVVJDRSAxCisjaW5jbHVkZSA8c3RyaW5nLmg+CisKK2V4dGVybiAiQyIgY29uc3QgY2hhciogX19nbnVfYmFzZW5hbWUoY29uc3QgY2hhciogcGF0aCkgeworICBjb25zdCBjaGFyKiBsYXN0X3NsYXNoID0gc3RycmNocihwYXRoLCAnLycpOworICByZXR1cm4gKGxhc3Rfc2xhc2ggIT0gTlVMTCkgPyBsYXN0X3NsYXNoICsgMSA6IHBhdGg7Cit9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9fX21lbWNocl9jaGsuY3BwIGIvbGliYy9iaW9uaWMvX19tZW1jaHJfY2hrLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMTQxYzA0Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvX19tZW1jaHJfY2hrLmNwcApAQCAtMCwwICsxLDM5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyN1bmRlZiBfRk9SVElGWV9TT1VSQ0UKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlICJwcml2YXRlL2xpYmNfbG9nZ2luZy5oIgorCitleHRlcm4gIkMiIHZvaWQqIF9fbWVtY2hyX2Noayhjb25zdCB2b2lkKiBzLCBpbnQgYywgc2l6ZV90IG4sIHNpemVfdCBidWZfc2l6ZSkgeworICBpZiAoX19wcmVkaWN0X2ZhbHNlKG4gPiBidWZfc2l6ZSkpIHsKKyAgICBfX2ZvcnRpZnlfY2hrX2ZhaWwoIm1lbWNocjogcHJldmVudGVkIHJlYWQgcGFzdCBlbmQgb2YgYnVmZmVyIiwgMCk7CisgIH0KKworICByZXR1cm4gbWVtY2hyKHMsIGMsIG4pOworfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvX19tZW1yY2hyX2Noay5jcHAgYi9saWJjL2Jpb25pYy9fX21lbXJjaHJfY2hrLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NTI5ZGZjCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvX19tZW1yY2hyX2Noay5jcHAKQEAgLTAsMCArMSwzOSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjdW5kZWYgX0ZPUlRJRllfU09VUkNFCisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSAicHJpdmF0ZS9saWJjX2xvZ2dpbmcuaCIKKworZXh0ZXJuICJDIiB2b2lkKiBfX21lbXJjaHJfY2hrKGNvbnN0IHZvaWQqIHMsIGludCBjLCBzaXplX3Qgbiwgc2l6ZV90IGJ1Zl9zaXplKSB7CisgIGlmIChfX3ByZWRpY3RfZmFsc2UobiA+IGJ1Zl9zaXplKSkgeworICAgIF9fZm9ydGlmeV9jaGtfZmFpbCgibWVtcmNocjogcHJldmVudGVkIHJlYWQgcGFzdCBlbmQgb2YgYnVmZmVyIiwgMCk7CisgIH0KKworICByZXR1cm4gbWVtcmNocihzLCBjLCBuKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL19fcG9sbF9jaGsuY3BwIGIvbGliYy9iaW9uaWMvX19wb2xsX2Noay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTI0YWI4ZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYmlvbmljL19fcG9sbF9jaGsuY3BwCkBAIC0wLDAgKzEsNDUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI3VuZGVmIF9GT1JUSUZZX1NPVVJDRQorI2luY2x1ZGUgPHBvbGwuaD4KKyNpbmNsdWRlICJwcml2YXRlL2xpYmNfbG9nZ2luZy5oIgorCitleHRlcm4gIkMiIGludCBfX3BvbGxfY2hrKHN0cnVjdCBwb2xsZmQqIGZkcywgbmZkc190IGZkX2NvdW50LCBpbnQgdGltZW91dCwgc2l6ZV90IGZkc19zaXplKSB7CisgIGlmIChfX3ByZWRpY3RfZmFsc2UoZmRzX3NpemUgLyBzaXplb2YoKmZkcykgPCBmZF9jb3VudCkpIHsKKyAgICBfX2ZvcnRpZnlfY2hrX2ZhaWwoInBvbGw6IHBvbGxmZCBhcnJheSBzbWFsbGVyIHRoYW4gZmQgY291bnQiLCAwKTsKKyAgfQorICByZXR1cm4gcG9sbChmZHMsIGZkX2NvdW50LCB0aW1lb3V0KTsKK30KKworZXh0ZXJuICJDIiBpbnQgX19wcG9sbF9jaGsoc3RydWN0IHBvbGxmZCogZmRzLCBuZmRzX3QgZmRfY291bnQsIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyogdGltZW91dCwgY29uc3Qgc2lnc2V0X3QqIG1hc2ssIHNpemVfdCBmZHNfc2l6ZSkgeworICBpZiAoX19wcmVkaWN0X2ZhbHNlKGZkc19zaXplIC8gc2l6ZW9mKCpmZHMpIDwgZmRfY291bnQpKSB7CisgICAgX19mb3J0aWZ5X2Noa19mYWlsKCJwcG9sbDogcG9sbGZkIGFycmF5IHNtYWxsZXIgdGhhbiBmZCBjb3VudCIsIDApOworICB9CisgIHJldHVybiBwcG9sbChmZHMsIGZkX2NvdW50LCB0aW1lb3V0LCBtYXNrKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL19fcHJlYWQ2NF9jaGsuY3BwIGIvbGliYy9iaW9uaWMvX19wcmVhZDY0X2Noay5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWQ2YWQyZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYmlvbmljL19fcHJlYWQ2NF9jaGsuY3BwCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI3VuZGVmIF9GT1JUSUZZX1NPVVJDRQorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgInByaXZhdGUvbGliY19sb2dnaW5nLmgiCisKK2V4dGVybiAiQyIgc3NpemVfdCBfX3ByZWFkNjRfY2hrKGludCBmZCwgdm9pZCogYnVmLCBzaXplX3QgY291bnQsIG9mZjY0X3Qgb2Zmc2V0LCBzaXplX3QgYnVmX3NpemUpIHsKKyAgaWYgKF9fcHJlZGljdF9mYWxzZShjb3VudCA+IGJ1Zl9zaXplKSkgeworICAgIF9fZm9ydGlmeV9jaGtfZmFpbCgicHJlYWQ2NDogcHJldmVudGVkIHdyaXRlIHBhc3QgZW5kIG9mIGJ1ZmZlciIsIDApOworICB9CisKKyAgaWYgKF9fcHJlZGljdF9mYWxzZShjb3VudCA+IFNTSVpFX01BWCkpIHsKKyAgICBfX2ZvcnRpZnlfY2hrX2ZhaWwoInByZWFkNjQ6IGNvdW50ID4gU1NJWkVfTUFYIiwgMCk7CisgIH0KKworICByZXR1cm4gcHJlYWQ2NChmZCwgYnVmLCBjb3VudCwgb2Zmc2V0KTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL19fcHJlYWRfY2hrLmNwcCBiL2xpYmMvYmlvbmljL19fcHJlYWRfY2hrLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MTA5Y2U2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvX19wcmVhZF9jaGsuY3BwCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI3VuZGVmIF9GT1JUSUZZX1NPVVJDRQorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgInByaXZhdGUvbGliY19sb2dnaW5nLmgiCisKK2V4dGVybiAiQyIgc3NpemVfdCBfX3ByZWFkX2NoayhpbnQgZmQsIHZvaWQqIGJ1Ziwgc2l6ZV90IGNvdW50LCBvZmZfdCBvZmZzZXQsIHNpemVfdCBidWZfc2l6ZSkgeworICBpZiAoX19wcmVkaWN0X2ZhbHNlKGNvdW50ID4gYnVmX3NpemUpKSB7CisgICAgX19mb3J0aWZ5X2Noa19mYWlsKCJwcmVhZDogcHJldmVudGVkIHdyaXRlIHBhc3QgZW5kIG9mIGJ1ZmZlciIsIDApOworICB9CisKKyAgaWYgKF9fcHJlZGljdF9mYWxzZShjb3VudCA+IFNTSVpFX01BWCkpIHsKKyAgICBfX2ZvcnRpZnlfY2hrX2ZhaWwoInByZWFkOiBjb3VudCA+IFNTSVpFX01BWCIsIDApOworICB9CisKKyAgcmV0dXJuIHByZWFkKGZkLCBidWYsIGNvdW50LCBvZmZzZXQpOworfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvX19yZWFkbGlua19jaGsuY3BwIGIvbGliYy9iaW9uaWMvX19yZWFkbGlua19jaGsuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYxOWY5MTcKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2Jpb25pYy9fX3JlYWRsaW5rX2Noay5jcHAKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjdW5kZWYgX0ZPUlRJRllfU09VUkNFCisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSAicHJpdmF0ZS9saWJjX2xvZ2dpbmcuaCIKKworZXh0ZXJuICJDIiBzc2l6ZV90IF9fcmVhZGxpbmtfY2hrKGNvbnN0IGNoYXIqIHBhdGgsIGNoYXIqIGJ1Ziwgc2l6ZV90IHNpemUsIHNpemVfdCBidWZfc2l6ZSkgeworICBpZiAoX19wcmVkaWN0X2ZhbHNlKHNpemUgPiBidWZfc2l6ZSkpIHsKKyAgICBfX2ZvcnRpZnlfY2hrX2ZhaWwoInJlYWRsaW5rOiBwcmV2ZW50ZWQgd3JpdGUgcGFzdCBlbmQgb2YgYnVmZmVyIiwgMCk7CisgIH0KKworICBpZiAoX19wcmVkaWN0X2ZhbHNlKHNpemUgPiBTU0laRV9NQVgpKSB7CisgICAgX19mb3J0aWZ5X2Noa19mYWlsKCJyZWFkbGluazogc2l6ZSA+IFNTSVpFX01BWCIsIDApOworICB9CisKKyAgcmV0dXJuIHJlYWRsaW5rKHBhdGgsIGJ1Ziwgc2l6ZSk7Cit9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9fX3JlYWRsaW5rYXRfY2hrLmNwcCBiL2xpYmMvYmlvbmljL19fcmVhZGxpbmthdF9jaGsuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExMWRiOGUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2Jpb25pYy9fX3JlYWRsaW5rYXRfY2hrLmNwcApAQCAtMCwwICsxLDQzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyN1bmRlZiBfRk9SVElGWV9TT1VSQ0UKKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlICJwcml2YXRlL2xpYmNfbG9nZ2luZy5oIgorCitleHRlcm4gIkMiIHNzaXplX3QgX19yZWFkbGlua2F0X2NoayhpbnQgZGlyZmQsIGNvbnN0IGNoYXIqIHBhdGgsIGNoYXIqIGJ1Ziwgc2l6ZV90IHNpemUsIHNpemVfdCBidWZfc2l6ZSkgeworICBpZiAoX19wcmVkaWN0X2ZhbHNlKHNpemUgPiBidWZfc2l6ZSkpIHsKKyAgICBfX2ZvcnRpZnlfY2hrX2ZhaWwoInJlYWRsaW5rYXQ6IHByZXZlbnRlZCB3cml0ZSBwYXN0IGVuZCBvZiBidWZmZXIiLCAwKTsKKyAgfQorCisgIGlmIChfX3ByZWRpY3RfZmFsc2Uoc2l6ZSA+IFNTSVpFX01BWCkpIHsKKyAgICBfX2ZvcnRpZnlfY2hrX2ZhaWwoInJlYWRsaW5rYXQ6IHNpemUgPiBTU0laRV9NQVgiLCAwKTsKKyAgfQorCisgIHJldHVybiByZWFkbGlua2F0KGRpcmZkLCBwYXRoLCBidWYsIHNpemUpOworfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvYmlvbmljX3N5c3RyYWNlLmNwcCBiL2xpYmMvYmlvbmljL2Jpb25pY19zeXN0cmFjZS5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTA1MjFjZgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYmlvbmljL2Jpb25pY19zeXN0cmFjZS5jcHAKQEAgLTAsMCArMSwxMDkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8Y3V0aWxzL3RyYWNlLmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisKKyNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19zeXN0cmFjZS5oIgorI2luY2x1ZGUgInByaXZhdGUvbGliY19sb2dnaW5nLmgiCisKKyNkZWZpbmUgX1JFQUxMWV9JTkNMVURFX1NZU19fU1lTVEVNX1BST1BFUlRJRVNfSF8KKyNpbmNsdWRlIDxzeXMvX3N5c3RlbV9wcm9wZXJ0aWVzLmg+CisKKyNkZWZpbmUgV1JJVEVfT0ZGU0VUICAgMzIKKworc3RhdGljIGNvbnN0IHByb3BfaW5mbyogZ19waW5mbyA9IE5VTEw7CitzdGF0aWMgdWludDMyX3QgZ19zZXJpYWwgPSAtMTsKK3N0YXRpYyB1aW50NjRfdCBnX3RhZ3MgPSAwOworc3RhdGljIGludCBnX3RyYWNlX21hcmtlcl9mZCA9IC0xOworCitzdGF0aWMgYm9vbCBzaG91bGRfdHJhY2UoKSB7CisgIC8vIElmIGdfcGluZm8gaXMgbnVsbCwgdGhpcyBtZWFucyB0aGF0IHN5c3RyYWNlIGhhc24ndCBiZWVuIHJ1biBhbmQgaXQncyBzYWZlIHRvCisgIC8vIGFzc3VtZSB0aGF0IG5vIHRyYWNlIHdyaXRpbmcgd2lsbCBuZWVkIHRvIHRha2UgcGxhY2UuICBIb3dldmVyLCB0byBhdm9pZCBydW5uaW5nCisgIC8vIHRoaXMgY29zdGx5IGZpbmQgY2hlY2sgZWFjaCB0aW1lLCB3ZSBzZXQgaXQgdG8gYSBub24tdHJhY2luZyB2YWx1ZSBzbyB0aGF0IG5leHQKKyAgLy8gdGltZSwgaXQgd2lsbCBqdXN0IGNoZWNrIHRoZSBzZXJpYWwgdG8gc2VlIGlmIHRoZSB2YWx1ZSBoYXMgYmVlbiBjaGFuZ2VkLgorICAvLyB0aGlzIGZ1bmN0aW9uIGFsc28gZGVhbHMgd2l0aCB0aGUgYm9vdHVwIGNhc2UsIGR1cmluZyB3aGljaCB0aGUgY2FsbCB0byBwcm9wZXJ0eQorICAvLyBzZXQgd2lsbCBmYWlsIGlmIHRoZSBwcm9wZXJ0eSBzZXJ2ZXIgaGFzbid0IHlldCBzdGFydGVkLgorICBpZiAoZ19waW5mbyA9PSBOVUxMKSB7CisgICAgZ19waW5mbyA9IF9fc3lzdGVtX3Byb3BlcnR5X2ZpbmQoImRlYnVnLmF0cmFjZS50YWdzLmVuYWJsZWZsYWdzIik7CisgICAgaWYgKGdfcGluZm8gPT0gTlVMTCkgeworICAgICAgX19zeXN0ZW1fcHJvcGVydHlfc2V0KCJkZWJ1Zy5hdHJhY2UudGFncy5lbmFibGVmbGFncyIsICIwIik7CisgICAgICBnX3BpbmZvID0gX19zeXN0ZW1fcHJvcGVydHlfZmluZCgiZGVidWcuYXRyYWNlLnRhZ3MuZW5hYmxlZmxhZ3MiKTsKKyAgICAgIGlmIChnX3BpbmZvID09IE5VTEwpIHsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgfQorICAgIH0KKyAgfQorCisgIC8vIEZpbmQgb3V0IHdoaWNoIHRhZ3MgaGF2ZSBiZWVuIGVuYWJsZWQgb24gdGhlIGNvbW1hbmQgbGluZSBhbmQgc2V0CisgIC8vIHRoZSB2YWx1ZSBvZiB0YWdzIGFjY29yZGluZ2x5LiAgSWYgdGhlIHZhbHVlIG9mIHRoZSBwcm9wZXJ0eSBjaGFuZ2VzLAorICAvLyB0aGUgc2VyaWFsIHdpbGwgYWxzbyBjaGFuZ2UsIHNvIHRoZSBjb3N0bHkgc3lzdGVtX3Byb3BlcnR5X3JlYWQgZnVuY3Rpb24KKyAgLy8gY2FuIGJlIGF2b2lkZWQgYnkgY2FsbGluZyB0aGUgbXVjaCBjaGVhcGVyIHN5c3RlbV9wcm9wZXJ0eV9zZXJpYWwKKyAgLy8gZmlyc3QuICBUaGUgdmFsdWVzIHdpdGhpbiBwaW5mbyBtYXkgY2hhbmdlLCBidXQgaXRzIGxvY2F0aW9uIGlzIGd1YXJhbnRlZWQKKyAgLy8gbm90IHRvIG1vdmUuCisgIGNvbnN0IHVpbnQzMl90IGN1cl9zZXJpYWwgPSBfX3N5c3RlbV9wcm9wZXJ0eV9zZXJpYWwoZ19waW5mbyk7CisgIGlmIChjdXJfc2VyaWFsICE9IGdfc2VyaWFsKSB7CisgICAgZ19zZXJpYWwgPSBjdXJfc2VyaWFsOworICAgIGNoYXIgdmFsdWVbUFJPUF9WQUxVRV9NQVhdOworICAgIF9fc3lzdGVtX3Byb3BlcnR5X3JlYWQoZ19waW5mbywgMCwgdmFsdWUpOworICAgIGdfdGFncyA9IHN0cnRvdWxsKHZhbHVlLCBOVUxMLCAwKTsKKyAgfQorCisgIC8vIEZpbmFsbHksIHZlcmlmeSB0aGF0IHRoaXMgdGFnIHZhbHVlIGVuYWJsZXMgYmlvbmljIHRyYWNpbmcuCisgIHJldHVybiAoKGdfdGFncyAmIEFUUkFDRV9UQUdfQklPTklDKSAhPSAwKTsKK30KKworU2NvcGVkVHJhY2U6OlNjb3BlZFRyYWNlKGNvbnN0IGNoYXIqIG1lc3NhZ2UpIHsKKyAgaWYgKCFzaG91bGRfdHJhY2UoKSkgeworICAgIHJldHVybjsKKyAgfQorCisgIGlmIChnX3RyYWNlX21hcmtlcl9mZCA9PSAtMSkgeworICAgIGdfdHJhY2VfbWFya2VyX2ZkID0gb3BlbigiL3N5cy9rZXJuZWwvZGVidWcvdHJhY2luZy90cmFjZV9tYXJrZXIiLCBPX0NMT0VYRUMgfCBPX1dST05MWSk7CisgICAgaWYgKGdfdHJhY2VfbWFya2VyX2ZkID09IC0xKSB7CisgICAgICBfX2xpYmNfZmF0YWwoIkNvdWxkIG5vdCBvcGVuIGtlcm5lbCB0cmFjZSBmaWxlOiAlc1xuIiwgc3RyZXJyb3IoZXJybm8pKTsKKyAgICB9CisgIH0KKworICAvLyBJZiBiaW9uaWMgdHJhY2luZyBoYXMgYmVlbiBlbmFibGVkLCB0aGVuIHdyaXRlIHRoZSBtZXNzYWdlIHRvIHRoZQorICAvLyBrZXJuZWwgdHJhY2VfbWFya2VyLgorICBpbnQgbGVuZ3RoID0gc3RybGVuKG1lc3NhZ2UpOworICBjaGFyIGJ1ZltsZW5ndGggKyBXUklURV9PRkZTRVRdOworICBzaXplX3QgbGVuID0gc25wcmludGYoYnVmLCBsZW5ndGggKyBXUklURV9PRkZTRVQsICJCfCVkfCVzIiwgZ2V0cGlkKCksIG1lc3NhZ2UpOworICBzc2l6ZV90IHdieXRlcyA9IFRFTVBfRkFJTFVSRV9SRVRSWSh3cml0ZShnX3RyYWNlX21hcmtlcl9mZCwgYnVmLCBsZW4pKTsKKworICAvLyBFcnJvciB3aGlsZSB3cml0aW5nCisgIGlmIChzdGF0aWNfY2FzdDxzaXplX3Q+KHdieXRlcykgIT0gbGVuKSB7CisgICAgX19saWJjX2ZhdGFsKCJDb3VsZCBub3Qgd3JpdGUgdG8ga2VybmVsIHRyYWNlIGZpbGU6ICVzXG4iLCBzdHJlcnJvcihlcnJubykpOworICB9Cit9CisKK1Njb3BlZFRyYWNlOjp+U2NvcGVkVHJhY2UoKSB7CisgIGlmICghc2hvdWxkX3RyYWNlKCkpIHsKKyAgICByZXR1cm47CisgIH0KKworICBzc2l6ZV90IHdieXRlcyA9IFRFTVBfRkFJTFVSRV9SRVRSWSh3cml0ZShnX3RyYWNlX21hcmtlcl9mZCwgIkUiLCAxKSk7CisKKyAgLy8gRXJyb3Igd2hpbGUgd3JpdGluZworICBpZiAoc3RhdGljX2Nhc3Q8c2l6ZV90Pih3Ynl0ZXMpICE9IDEpIHsKKyAgICBfX2xpYmNfZmF0YWwoIkNvdWxkIG5vdCB3cml0ZSB0byBrZXJuZWwgdHJhY2UgZmlsZTogJXNcbiIsIHN0cmVycm9yKGVycm5vKSk7CisgIH0KK30KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL2Jpb25pY190aW1lX2NvbnZlcnNpb25zLmNwcCBiL2xpYmMvYmlvbmljL2Jpb25pY190aW1lX2NvbnZlcnNpb25zLmNwcAppbmRleCA3ZjNjMDI2Li43NWU4ZDQ5IDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9iaW9uaWNfdGltZV9jb252ZXJzaW9ucy5jcHAKKysrIGIvbGliYy9iaW9uaWMvYmlvbmljX3RpbWVfY29udmVyc2lvbnMuY3BwCkBAIC0yOCw2ICsyOCw4IEBACiAKICNpbmNsdWRlICJwcml2YXRlL2Jpb25pY190aW1lX2NvbnZlcnNpb25zLmgiCiAKKyNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19jb25zdGFudHMuaCIKKwogYm9vbCB0aW1lc3BlY19mcm9tX3RpbWV2YWwodGltZXNwZWMmIHRzLCBjb25zdCB0aW1ldmFsJiB0dikgewogICAvLyBXaG9sZSBzZWNvbmRzIGNhbiBqdXN0IGJlIGNvcGllZC4KICAgdHMudHZfc2VjID0gdHYudHZfc2VjOwpAQCAtNDksMyArNTEsMTkgQEAKICAgdHYudHZfc2VjID0gdHMudHZfc2VjOwogICB0di50dl91c2VjID0gdHMudHZfbnNlYyAvIDEwMDA7CiB9CisKKy8vIEluaXRpYWxpemVzICd0cycgd2l0aCB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuICdhYnNfdHMnIGFuZCB0aGUgY3VycmVudCB0aW1lCisvLyBhY2NvcmRpbmcgdG8gJ2Nsb2NrJy4gUmV0dXJucyBmYWxzZSBpZiBhYnN0aW1lIGFscmVhZHkgZXhwaXJlZCwgdHJ1ZSBvdGhlcndpc2UuCitib29sIHRpbWVzcGVjX2Zyb21fYWJzb2x1dGVfdGltZXNwZWModGltZXNwZWMmIHRzLCBjb25zdCB0aW1lc3BlYyYgYWJzX3RzLCBjbG9ja2lkX3QgY2xvY2spIHsKKyAgY2xvY2tfZ2V0dGltZShjbG9jaywgJnRzKTsKKyAgdHMudHZfc2VjID0gYWJzX3RzLnR2X3NlYyAtIHRzLnR2X3NlYzsKKyAgdHMudHZfbnNlYyA9IGFic190cy50dl9uc2VjIC0gdHMudHZfbnNlYzsKKyAgaWYgKHRzLnR2X25zZWMgPCAwKSB7CisgICAgdHMudHZfc2VjLS07CisgICAgdHMudHZfbnNlYyArPSBOU19QRVJfUzsKKyAgfQorICBpZiAodHMudHZfbnNlYyA8IDAgfHwgdHMudHZfc2VjIDwgMCkgeworICAgIHJldHVybiBmYWxzZTsKKyAgfQorICByZXR1cm4gdHJ1ZTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL2Nob3duLmNwcCBiL2xpYmMvYmlvbmljL2Nob3duLmNwcAppbmRleCBiYzJlNjA1Li5kY2UxNjczIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9jaG93bi5jcHAKKysrIGIvbGliYy9iaW9uaWMvY2hvd24uY3BwCkBAIC0yOSw2ICsyOSw3IEBACiAjaW5jbHVkZSA8ZmNudGwuaD4KICNpbmNsdWRlIDxzeXMvc3RhdC5oPgogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgogCiBpbnQgY2hvd24oY29uc3QgY2hhciogcGF0aCwgdWlkX3QgdWlkLCBnaWRfdCBnaWQpIHsKICAgcmV0dXJuIGZjaG93bmF0KEFUX0ZEQ1dELCBwYXRoLCB1aWQsIGdpZCwgMCk7CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9jbG9jay5jcHAgYi9saWJjL2Jpb25pYy9jbG9jay5jcHAKaW5kZXggNWJkMzJmOS4uMDUzZTllNyAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvY2xvY2suY3BwCisrKyBiL2xpYmMvYmlvbmljL2Nsb2NrLmNwcApAQCAtMzAsNyArMzAsNyBAQAogI2luY2x1ZGUgPHN5cy9zeXNjb25mLmg+CiAjaW5jbHVkZSA8c3lzL3RpbWVzLmg+CiAKLSNkZWZpbmUgTlNfUEVSX1MgMTAwMDAwMDAwMCAvLyBObyAicHJpdmF0ZS9iaW9uaWNfY29uc3RhbnRzLmgiIGluIGxtcC1kZXYuCisjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfY29uc3RhbnRzLmgiCiAKIC8vIGh0dHA6Ly9wdWJzLm9wZW5ncm91cC5vcmcvb25saW5lcHVicy85Njk5OTE5Nzk5L2Z1bmN0aW9ucy9jbG9jay5odG1sCiBjbG9ja190IGNsb2NrKCkgewpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvY2xvY2tfZ2V0Y3B1Y2xvY2tpZC5jcHAgYi9saWJjL2Jpb25pYy9jbG9ja19nZXRjcHVjbG9ja2lkLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NTExZWI0Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvY2xvY2tfZ2V0Y3B1Y2xvY2tpZC5jcHAKQEAgLTAsMCArMSw1MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDx0aW1lLmg+CisKKyNpbmNsdWRlICJwcml2YXRlL0Vycm5vUmVzdG9yZXIuaCIKKworaW50IGNsb2NrX2dldGNwdWNsb2NraWQocGlkX3QgcGlkLCBjbG9ja2lkX3QqIGNsb2NraWQpIHsKKyAgRXJybm9SZXN0b3JlciBlcnJub19yZXN0b3JlcjsKKworICAvLyBUaGUgdGlkIGlzIHN0b3JlZCBpbiB0aGUgdG9wIGJpdHMsIGJ1dCBuZWdhdGVkLgorICBjbG9ja2lkX3QgcmVzdWx0ID0gfnN0YXRpY19jYXN0PGNsb2NraWRfdD4ocGlkKSA8PCAzOworICAvLyBCaXRzIDAgYW5kIDE6IGNsb2NrIHR5cGUgKDAgPSBDUFVDTE9DS19QUk9GLCAxID0gQ1BVQ0xPQ0tfVklSVCwgMiA9IENQVUNMT0NLX1NDSEVEKS4KKyAgcmVzdWx0IHw9IDI7CisgIC8vIEJpdCAyOiB0aHJlYWQgKHNldCkgb3IgcHJvY2VzcyAoY2xlYXIpLiBCaXQgMiBhbHJlYWR5IDAuCisKKyAgdGltZXNwZWMgdHM7CisgIGlmIChjbG9ja19nZXRyZXMocmVzdWx0LCAmdHMpID09IC0xKSB7CisgICAgcmV0dXJuIEVTUkNIOworICB9CisKKyAgKmNsb2NraWQgPSByZXN1bHQ7CisgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvY2xvY2tfbmFub3NsZWVwLmNwcCBiL2xpYmMvYmlvbmljL2Nsb2NrX25hbm9zbGVlcC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTViOGZlNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYmlvbmljL2Nsb2NrX25hbm9zbGVlcC5jcHAKQEAgLTAsMCArMSwzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8dGltZS5oPgorCisjaW5jbHVkZSAicHJpdmF0ZS9FcnJub1Jlc3RvcmVyLmgiCisKK2V4dGVybiAiQyIgaW50IF9fY2xvY2tfbmFub3NsZWVwKGNsb2NraWRfdCwgaW50LCBjb25zdCB0aW1lc3BlYyosIHRpbWVzcGVjKik7CisKK2ludCBjbG9ja19uYW5vc2xlZXAoY2xvY2tpZF90IGNsb2NrX2lkLCBpbnQgZmxhZ3MsIGNvbnN0IHRpbWVzcGVjKiBpbiwgdGltZXNwZWMqIG91dCkgeworICBFcnJub1Jlc3RvcmVyIGVycm5vX3Jlc3RvcmVyOworICByZXR1cm4gKF9fY2xvY2tfbmFub3NsZWVwKGNsb2NrX2lkLCBmbGFncywgaW4sIG91dCkgPT0gMCkgPyAwIDogZXJybm87Cit9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9jbG9uZS5jcHAgYi9saWJjL2Jpb25pYy9jbG9uZS5jcHAKaW5kZXggMGEwZmRkNS4uOWI1YzllNyAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvY2xvbmUuY3BwCisrKyBiL2xpYmMvYmlvbmljL2Nsb25lLmNwcApAQCAtMjYsNyArMjYsNyBAQAogICogU1VDSCBEQU1BR0UuCiAgKi8KIAotI2RlZmluZSBfX0dOVV9TT1VSQ0UgMQorI2RlZmluZSBfR05VX1NPVVJDRSAxCiAjaW5jbHVkZSA8c2NoZWQuaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNsdWRlIDxzdGRhcmcuaD4KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL2Nsb3NlLmNwcCBiL2xpYmMvYmlvbmljL2Nsb3NlLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xODIyNWYwCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvY2xvc2UuY3BwCkBAIC0wLDAgKzEsNTYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisKK2V4dGVybiAiQyIgaW50IF9fX2Nsb3NlKGludCk7CisKK2ludCBjbG9zZShpbnQgZmQpIHsKKyAgaW50IHJjID0gX19fY2xvc2UoZmQpOworICBpZiAocmMgPT0gLTEgJiYgZXJybm8gPT0gRUlOVFIpIHsKKyAgICAvLyBQT1NJWCBzYXlzIHRoYXQgaWYgY2xvc2UgcmV0dXJucyB3aXRoIEVJTlRSLCB0aGUgZmQgbXVzdCBub3QgYmUgY2xvc2VkLgorICAgIC8vIExpbnVzIGRpc2FncmVlczogaHR0cDovL2xrbWwuaW5kaWFuYS5lZHUvaHlwZXJtYWlsL2xpbnV4L2tlcm5lbC8wNTA5LjEvMDg3Ny5odG1sCisgICAgLy8gVGhlIGZ1dHVyZSBQT1NJWCBzb2x1dGlvbiBpcyBwb3NpeF9jbG9zZSAoaHR0cDovL2F1c3Rpbmdyb3VwYnVncy5uZXQvdmlldy5waHA/aWQ9NTI5KSwKKyAgICAvLyB3aXRoIHRoZSBzdGF0ZSBhZnRlciBFSU5UUiBiZWluZyB1bmRlZmluZWQsIGFuZCBFSU5QUk9HUkVTUyBmb3IgdGhlIGNhc2Ugd2hlcmUgY2xvc2UKKyAgICAvLyB3YXMgaW50ZXJydXB0ZWQgYnkgYSBzaWduYWwgYnV0IHRoZSBmaWxlIGRlc2NyaXB0b3Igd2FzIGFjdHVhbGx5IGNsb3NlZC4KKyAgICAvLyBNeSBjb25jZXJuIHdpdGggdGhhdCBmdXR1cmUgYmVoYXZpb3IgaXMgdGhhdCBpdCBicmVha3MgZXhpc3RpbmcgY29kZSB0aGF0IGFzc3VtZXMKKyAgICAvLyB0aGF0IGNsb3NlIG9ubHkgcmV0dXJucyAtMSBpZiBpdCBmYWlsZWQuIFVubGlrZSBvdGhlciBzeXN0ZW0gY2FsbHMsIEkgaGF2ZSByZWFsCisgICAgLy8gZGlmZmljdWx0eSBldmVuIGltYWdpbmluZyBhIGNhbGxlciB0aGF0IHdvdWxkIG5lZWQgdG8ga25vdyB0aGF0IGNsb3NlIHdhcyBpbnRlcnJ1cHRlZAorICAgIC8vIGJ1dCBzdWNjZWVkZWQuIFNvIHJldHVybmluZyBFSU5UUiBpcyB3cm9uZyAoYmVjYXVzZSBMaW51eCBhbHdheXMgY2xvc2VzKSBhbmQgRUlOUFJPR1JFU1MKKyAgICAvLyBpcyBoYXJtZnVsIGJlY2F1c2UgY2FsbGVycyBuZWVkIHRvIGJlIHJld3JpdHRlbiB0byB1bmRlcnN0YW5kIHRoYXQgRUlOUFJPR1JFU1MgaXNuJ3QKKyAgICAvLyBhY3R1YWxseSBhIGZhaWx1cmUsIGJ1dCB3aWxsIGJlIHJlcG9ydGVkIGFzIG9uZS4KKworICAgIC8vIFdlIGRvbid0IHJlc3RvcmUgZXJybm8gYmVjYXVzZSB0aGF0IHdvdWxkIGluY3VyIGEgY29zdCAodGhlIFRMUyByZWFkKSBmb3IgZXZlcnkgY2FsbGVyLgorICAgIC8vIFNpbmNlIGNhbGxlcnMgZG9uJ3Qga25vdyBhaGVhZCBvZiB0aW1lIHdoZXRoZXIgY2xvc2Ugd2lsbCBsZWdpdGltYXRlbHkgZmFpbCwgdGhleSBuZWVkCisgICAgLy8gdG8gaGF2ZSBzdGFzaGVkIHRoZSBvbGQgZXJybm8gdmFsdWUgYW55d2F5IGlmIHRoZXkgcGxhbiBvbiB1c2luZyBpdCBhZnRlcndhcmRzLCBzbworICAgIC8vIHVzIGNsb2JiZXJpbmcgZXJybm8gaGVyZSBkb2Vzbid0IGNoYW5nZSBhbnl0aGluZyBpbiB0aGF0IHJlc3BlY3QuCisgICAgcmV0dXJuIDA7CisgIH0KKyAgcmV0dXJuIHJjOworfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvY3J0YnJhbmQuYyBiL2xpYmMvYmlvbmljL2NydGJyYW5kLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDMxZmNiYzcuLjAwMDAwMDAKLS0tIGEvbGliYy9iaW9uaWMvY3J0YnJhbmQuYworKysgL2Rldi9udWxsCkBAIC0xLDYzICswLDAgQEAKLS8qLQotICogQ29weXJpZ2h0IDIwMDAgRGF2aWQgRS4gTydCcmllbiwgSm9obiBELiBQb2xzdHJhLgotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUgotICogSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUwotICogT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4KLSAqIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAotICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAotICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCi0gKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgPHN0ZGludC5oPgotCi0jZGVmaW5lIEFCSV9WRU5ET1IJIkFuZHJvaWQiCi0jZGVmaW5lIEFCSV9TRUNUSU9OCSIubm90ZS5hbmRyb2lkLmlkZW50IgotI2RlZmluZSBBQklfTk9URVRZUEUJMQotI2RlZmluZSBBQklfQU5EUk9JRF9BUEkJUExBVEZPUk1fU0RLX1ZFUlNJT04KLQotLyoKLSAqIFNwZWNpYWwgIi5ub3RlIiBlbnRyeSB0byB0YWcgYW4gQW5kcm9pZCBiaW5hcnkgYW5kIHNwZWNpZnkgdGhlIEFCSSB2ZXJzaW9uLgotICoKLSAqIEZvciBhbGwgYXJjaGVzIGV4Y2VwdCBzcGFyYywgZ2NjIGVtaXRzIHRoZSBzZWN0aW9uIGRpcmVjdGl2ZSBmb3IgdGhlCi0gKiBmb2xsb3dpbmcgc3RydWN0IHdpdGggYSBQUk9HQklUUyB0eXBlLiAgSG93ZXZlciwgdGhlIHNlY3Rpb24gc2hvdWxkIGJlCi0gKiBvZiBOT1RFIHR5cGUsIGFjY29yZGluZyB0byB0aGUgR2VuZXJpYyBTeXNWIEFCSSBzcGVjLgotICoKLSAqIFVuZm9ydHVuYXRlbHksIHRoZXJlIGlzIG5vIGNsZWFuIHdheSB0byB0ZWxsIGdjYyB0byB1c2UgYW5vdGhlciBzZWN0aW9uIHR5cGUsCi0gKiBzbyB0aGlzIEMgZmlsZSAob3IgdGhlIEMgZmlsZSB0aGF0IGluY2x1ZGVzIGl0KSBtdXN0IGJlIGNvbXBpbGVkIGluIG11bHRpcGxlCi0gKiBzdGVwczoKLSAqCi0gKiAtIENvbXBpbGUgdGhlIC5jIGZpbGUgdG8gYSAucyBmaWxlLgotICogLSBFZGl0IHRoZSAucyBmaWxlIHRvIGNoYW5nZSB0aGUgJ3Byb2diaXRzJyB0eXBlIHRvICdub3RlJywgZm9yIHRoZSBzZWN0aW9uCi0gKiAgIGRpcmVjdGl2ZSB0aGF0IGRlZmluZXMgdGhlIC5ub3RlLkFCSS10YWcgc2VjdGlvbi4KLSAqIC0gQ29tcGlsZSB0aGUgLnMgZmlsZSB0byBhbiBvYmplY3QgZmlsZS4KLSAqCi0gKiBUaGVzZSBzdGVwcyBhcmUgZG9uZSBpbiB0aGUgaW52aWRpZHVhbCBNYWtlZmlsZXMgZm9yIGVhY2ggYXBwbGljYWJsZSBhcmNoLgotICovCi1zdGF0aWMgY29uc3Qgc3RydWN0IHsKLSAgICBpbnQzMl90CW5hbWVzejsKLSAgICBpbnQzMl90CWRlc2NzejsKLSAgICBpbnQzMl90CXR5cGU7Ci0gICAgY2hhcgluYW1lW3NpemVvZiBBQklfVkVORE9SXTsKLSAgICBpbnQzMl90CWFuZHJvaWRfYXBpOwotfSBhYml0YWcgX19hdHRyaWJ1dGVfXyAoKHNlY3Rpb24gKEFCSV9TRUNUSU9OKSwgYWxpZ25lZCg0KSwgdXNlZCkpID0gewotICAgIHNpemVvZiBBQklfVkVORE9SLAotICAgIHNpemVvZihpbnQzMl90KSwKLSAgICBBQklfTk9URVRZUEUsCi0gICAgQUJJX1ZFTkRPUiwKLSAgICBBQklfQU5EUk9JRF9BUEksCi19OwpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvZGFlbW9uLmMgYi9saWJjL2Jpb25pYy9kYWVtb24uYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODE4MWQxNi4uMDAwMDAwMAotLS0gYS9saWJjL2Jpb25pYy9kYWVtb24uYworKysgL2Rldi9udWxsCkBAIC0xLDY4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDggVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCi0gKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiAgICBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCi0gKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQotICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAotICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKLSAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUwotICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECi0gKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCi0gKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKLSAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLSNpbmNsdWRlIDxzdGRsaWIuaD4KLSNpbmNsdWRlIDx1bmlzdGQuaD4KLSNpbmNsdWRlIDxmY250bC5oPgotCi1pbnQgIGRhZW1vbiggaW50ICBub2NoZGlyLCBpbnQgIG5vY2xvc2UgKQotewotICAgcGlkX3QgIHBpZDsKLQotICAgaWYgKCAhbm9jaGRpciAmJiBjaGRpcigiLyIpICE9IDAgKQotICAgICAgIHJldHVybiAtMTsKLSAgIAotICAgaWYgKCAhbm9jbG9zZSApCi0gICB7Ci0gICAgIGludCAgZmQgPSBvcGVuKCIvZGV2L251bGwiLCBPX1JEV1IpOwotCi0gICAgIGlmICggZmQgPCAwICkKLSAgICAgIHJldHVybiAtMTsKLQotICAgICBpZiAoIGR1cDIoIGZkLCAwICkgPCAwIHx8Ci0JICBkdXAyKCBmZCwgMSApIDwgMCB8fAotICAgICAgICAgIGR1cDIoIGZkLCAyICkgPCAwICkgCi0gICAgIHsKLSAgICAgICBjbG9zZShmZCk7Ci0gICAgICByZXR1cm4gLTE7Ci0gICAgIH0KLSAgICAgY2xvc2UoZmQpOwotICB9Ci0gIAotICAgcGlkID0gZm9yaygpOwotICAgaWYgKHBpZCA8IDApCi0gICAgcmV0dXJuIC0xOwotCi0gICBpZiAocGlkID4gMCkKLSAgICBfZXhpdCgwKTsKLQotICAgaWYgKCBzZXRzaWQoKSA8IDAgKQotICAgICByZXR1cm4gLTE7Ci0KLSAgIHJldHVybiAwOwotfQotCmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9kZWJ1Z19tYXBpbmZvLmNwcCBiL2xpYmMvYmlvbmljL2RlYnVnX21hcGluZm8uY3BwCmluZGV4IGQ4Mzc5OWEuLjY5OGFiNmIgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL2RlYnVnX21hcGluZm8uY3BwCisrKyBiL2xpYmMvYmlvbmljL2RlYnVnX21hcGluZm8uY3BwCkBAIC03MSw3ICs3MSw3IEBACiAgIHN0cnVjdCBtYXBpbmZvX3QqIG1pbGlzdCA9IE5VTEw7CiAgIGNoYXIgZGF0YVsxMDI0XTsgLy8gVXNlZCB0byByZWFkIGxpbmVzIGFzIHdlbGwgYXMgdG8gY29uc3RydWN0IHRoZSBmaWxlbmFtZS4KICAgc25wcmludGYoZGF0YSwgc2l6ZW9mKGRhdGEpLCAiL3Byb2MvJWQvbWFwcyIsIHBpZCk7Ci0gIEZJTEUqIGZwID0gZm9wZW4oZGF0YSwgInIiKTsKKyAgRklMRSogZnAgPSBmb3BlbihkYXRhLCAicmUiKTsKICAgaWYgKGZwICE9IE5VTEwpIHsKICAgICB3aGlsZSAoZmdldHMoZGF0YSwgc2l6ZW9mKGRhdGEpLCBmcCkgIT0gTlVMTCkgewogICAgICAgbWFwaW5mb190KiBtaSA9IHBhcnNlX21hcHNfbGluZShkYXRhKTsKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL2RlYnVnX3N0YWNrdHJhY2UuY3BwIGIvbGliYy9iaW9uaWMvZGVidWdfc3RhY2t0cmFjZS5jcHAKaW5kZXggYjg2ZTJhZi4uNzFlODc2YiAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvZGVidWdfc3RhY2t0cmFjZS5jcHAKKysrIGIvbGliYy9iaW9uaWMvZGVidWdfc3RhY2t0cmFjZS5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKIAogI2luY2x1ZGUgPGRsZmNuLmg+CiAjaW5jbHVkZSA8aW50dHlwZXMuaD4KKyNpbmNsdWRlIDxtYWxsb2MuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4KICNpbmNsdWRlIDx1bndpbmQuaD4KICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KQEAgLTQ0LDQxICs0NSwyMiBAQAogI2RlZmluZSBQQURfUFRSICIwOCIgUFJJeFBUUgogI2VuZGlmCiAKLS8qIGRlcGVuZHMgaG93IHRoZSBzeXN0ZW0gaW5jbHVkZXMgZGVmaW5lIHRoaXMgKi8KLSNpZmRlZiBIQVZFX1VOV0lORF9DT05URVhUX1NUUlVDVAogdHlwZWRlZiBzdHJ1Y3QgX1Vud2luZF9Db250ZXh0IF9fdW53aW5kX2NvbnRleHQ7Ci0jZWxzZQotdHlwZWRlZiBfVW53aW5kX0NvbnRleHQgX191bndpbmRfY29udGV4dDsKLSNlbmRpZgorCitleHRlcm4gIkMiIGNoYXIqIF9fY3hhX2RlbWFuZ2xlKGNvbnN0IGNoYXIqLCBjaGFyKiwgc2l6ZV90KiwgaW50Kik7CiAKIHN0YXRpYyBtYXBpbmZvX3QqIGdfbWFwX2luZm8gPSBOVUxMOwotc3RhdGljIHZvaWQqIGdfZGVtYW5nbGVyOwotdHlwZWRlZiBjaGFyKiAoKkRlbWFuZ2xlckZuKShjb25zdCBjaGFyKiwgY2hhciosIHNpemVfdCosIGludCopOwotc3RhdGljIERlbWFuZ2xlckZuIGdfZGVtYW5nbGVyX2ZuID0gTlVMTDsKIAogX19MSUJDX0hJRERFTl9fIHZvaWQgYmFja3RyYWNlX3N0YXJ0dXAoKSB7CiAgIFNjb3BlZERpc2FibGVEZWJ1Z0NhbGxzIGRpc2FibGU7CiAKICAgZ19tYXBfaW5mbyA9IG1hcGluZm9fY3JlYXRlKGdldHBpZCgpKTsKLSAgZ19kZW1hbmdsZXIgPSBkbG9wZW4oImxpYmdjY2RlbWFuZ2xlLnNvIiwgUlRMRF9OT1cpOwotICBpZiAoZ19kZW1hbmdsZXIgIT0gTlVMTCkgewotICAgIHZvaWQqIHN5bSA9IGRsc3ltKGdfZGVtYW5nbGVyLCAiX19jeGFfZGVtYW5nbGUiKTsKLSAgICBnX2RlbWFuZ2xlcl9mbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8RGVtYW5nbGVyRm4+KHN5bSk7Ci0gIH0KIH0KIAogX19MSUJDX0hJRERFTl9fIHZvaWQgYmFja3RyYWNlX3NodXRkb3duKCkgewogICBTY29wZWREaXNhYmxlRGVidWdDYWxscyBkaXNhYmxlOwogCiAgIG1hcGluZm9fZGVzdHJveShnX21hcF9pbmZvKTsKLSAgZGxjbG9zZShnX2RlbWFuZ2xlcik7Ci19Ci0KLXN0YXRpYyBjaGFyKiBkZW1hbmdsZShjb25zdCBjaGFyKiBzeW1ib2wpIHsKLSAgaWYgKGdfZGVtYW5nbGVyX2ZuID09IE5VTEwpIHsKLSAgICByZXR1cm4gTlVMTDsKLSAgfQotICByZXR1cm4gKCpnX2RlbWFuZ2xlcl9mbikoc3ltYm9sLCBOVUxMLCBOVUxMLCBOVUxMKTsKIH0KIAogc3RydWN0IHN0YWNrX2NyYXdsX3N0YXRlX3QgewpAQCAtMTYyLDggKzE0NCw3IEBACiAgICAgICBzb25hbWUgPSAiPHVua25vd24+IjsKICAgICB9CiAgICAgaWYgKHN5bWJvbCAhPSBOVUxMKSB7Ci0gICAgICAvLyBUT0RPOiB3ZSBtaWdodCBuZWVkIGEgZmxhZyB0byBzYXkgd2hldGhlciBpdCdzIHNhZmUgdG8gYWxsb2NhdGUgKGRlbWFuZ2xpbmcgYWxsb2NhdGVzKS4KLSAgICAgIGNoYXIqIGRlbWFuZ2xlZF9zeW1ib2wgPSBkZW1hbmdsZShzeW1ib2wpOworICAgICAgY2hhciogZGVtYW5nbGVkX3N5bWJvbCA9IF9fY3hhX2RlbWFuZ2xlKHN5bWJvbCwgTlVMTCwgTlVMTCwgTlVMTCk7CiAgICAgICBjb25zdCBjaGFyKiBiZXN0X25hbWUgPSAoZGVtYW5nbGVkX3N5bWJvbCAhPSBOVUxMKSA/IGRlbWFuZ2xlZF9zeW1ib2wgOiBzeW1ib2w7CiAKICAgICAgIF9fbGliY19mb3JtYXRfbG9nKEFORFJPSURfTE9HX0VSUk9SLCAibGliYyIsCmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9kaXJlbnQuY3BwIGIvbGliYy9iaW9uaWMvZGlyZW50LmNwcAppbmRleCA3YWJjN2YzLi5mYjQ1Mzk4IDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9kaXJlbnQuY3BwCisrKyBiL2xpYmMvYmlvbmljL2RpcmVudC5jcHAKQEAgLTMwLDYgKzMwLDggQEAKIAogI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxtYWxsb2MuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDxzeXMvc3RhdC5oPgogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgpAQCAtNDMsNiArNDUsNyBAQAogICBpbnQgZmRfOwogICBzaXplX3QgYXZhaWxhYmxlX2J5dGVzXzsKICAgZGlyZW50KiBuZXh0XzsKKyAgbG9uZyBjdXJyZW50X3Bvc187CiAgIHB0aHJlYWRfbXV0ZXhfdCBtdXRleF87CiAgIGRpcmVudCBidWZmX1sxNV07CiB9OwpAQCAtNTUsNiArNTgsNyBAQAogICBkLT5mZF8gPSBmZDsKICAgZC0+YXZhaWxhYmxlX2J5dGVzXyA9IDA7CiAgIGQtPm5leHRfID0gTlVMTDsKKyAgZC0+Y3VycmVudF9wb3NfID0gMEw7CiAgIHB0aHJlYWRfbXV0ZXhfaW5pdCgmZC0+bXV0ZXhfLCBOVUxMKTsKICAgcmV0dXJuIGQ7CiB9CkBAIC03OCw3ICs4Miw3IEBACiB9CiAKIERJUiogb3BlbmRpcihjb25zdCBjaGFyKiBwYXRoKSB7Ci0gIGludCBmZCA9IG9wZW4ocGF0aCwgT19SRE9OTFkgfCBPX0RJUkVDVE9SWSk7CisgIGludCBmZCA9IG9wZW4ocGF0aCwgT19DTE9FWEVDIHwgT19ESVJFQ1RPUlkgfCBPX1JET05MWSk7CiAgIHJldHVybiAoZmQgIT0gLTEpID8gX19hbGxvY2F0ZV9ESVIoZmQpIDogTlVMTDsKIH0KIApAQCAtMTAwLDYgKzEwNCw5IEBACiAgIGRpcmVudCogZW50cnkgPSBkLT5uZXh0XzsKICAgZC0+bmV4dF8gPSByZWludGVycHJldF9jYXN0PGRpcmVudCo+KHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KGVudHJ5KSArIGVudHJ5LT5kX3JlY2xlbik7CiAgIGQtPmF2YWlsYWJsZV9ieXRlc18gLT0gZW50cnktPmRfcmVjbGVuOworICAvLyBUaGUgZGlyZWN0b3J5IGVudHJ5IG9mZnNldCB1c2VzIDAsIDEsIDIgaW5zdGVhZCBvZiByZWFsIGZpbGUgb2Zmc2V0LAorICAvLyBzbyB0aGUgdmFsdWUgcmFuZ2Ugb2YgbG9uZyB0eXBlIGlzIGVub3VnaC4KKyAgZC0+Y3VycmVudF9wb3NfID0gc3RhdGljX2Nhc3Q8bG9uZz4oZW50cnktPmRfb2ZmKTsKICAgcmV0dXJuIGVudHJ5OwogfQogCkBAIC0xNDYsNiArMTUzLDIwIEBACiAgIFNjb3BlZFB0aHJlYWRNdXRleExvY2tlciBsb2NrZXIoJmQtPm11dGV4Xyk7CiAgIGxzZWVrKGQtPmZkXywgMCwgU0VFS19TRVQpOwogICBkLT5hdmFpbGFibGVfYnl0ZXNfID0gMDsKKyAgZC0+Y3VycmVudF9wb3NfID0gMEw7Cit9CisKK3ZvaWQgc2Vla2RpcihESVIqIGQsIGxvbmcgb2Zmc2V0KSB7CisgIFNjb3BlZFB0aHJlYWRNdXRleExvY2tlciBsb2NrZXIoJmQtPm11dGV4Xyk7CisgIG9mZl90IHJldCA9IGxzZWVrKGQtPmZkXywgb2Zmc2V0LCBTRUVLX1NFVCk7CisgIGlmIChyZXQgIT0gLTFMKSB7CisgICAgZC0+YXZhaWxhYmxlX2J5dGVzXyA9IDA7CisgICAgZC0+Y3VycmVudF9wb3NfID0gcmV0OworICB9Cit9CisKK2xvbmcgdGVsbGRpcihESVIqIGQpIHsKKyAgcmV0dXJuIGQtPmN1cnJlbnRfcG9zXzsKIH0KIAogaW50IGFscGhhc29ydChjb25zdCBkaXJlbnQqKiBhLCBjb25zdCBkaXJlbnQqKiBiKSB7CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9kbG1hbGxvYy5jIGIvbGliYy9iaW9uaWMvZGxtYWxsb2MuYwppbmRleCBlODljNWQxLi41ODUzZTdjIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9kbG1hbGxvYy5jCisrKyBiL2xpYmMvYmlvbmljL2RsbWFsbG9jLmMKQEAgLTE2LDYgKzE2LDcgQEAKIAogI2luY2x1ZGUgImRsbWFsbG9jLmgiCiAKKyNpbmNsdWRlICJtYWxsb2MuaCIKICNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19wcmN0bC5oIgogI2luY2x1ZGUgInByaXZhdGUvbGliY19sb2dnaW5nLmgiCiAKQEAgLTU0LDMgKzU1LDI1IEBACiAgIHByY3RsKFBSX1NFVF9WTUEsIFBSX1NFVF9WTUFfQU5PTl9OQU1FLCBtYXAsIGxlbmd0aCwgImxpYmNfbWFsbG9jIik7CiAgIHJldHVybiBtYXA7CiB9CisKKy8vIFNpbmNlIGRsbWFsbG9jIGlzbid0IHRoZSBkZWZhdWx0LCB3ZSdsbCBsZWF2ZSB0aGlzIHVuaW1wbGVtZW50ZWQgZm9yIG5vdy4gSWYKKy8vIHdlIGRlY2lkZSB3ZSBuZWVkIGl0IGxhdGVyLCB3ZSBjYW4gZmlsbCBpdCBpbi4KK3NpemVfdCBfX21hbGxpbmZvX25hcmVuYXMoKSB7CisgIHJldHVybiAwOworfQorCitzaXplX3QgX19tYWxsaW5mb19uYmlucygpIHsKKyAgcmV0dXJuIDA7Cit9CisKK3N0cnVjdCBtYWxsaW5mbyBfX21hbGxpbmZvX2FyZW5hX2luZm8oc2l6ZV90IGFpZHggX191bnVzZWQpIHsKKyAgc3RydWN0IG1hbGxpbmZvIG1pOworICBtZW1zZXQoJm1pLCAwLCBzaXplb2YobWkpKTsKKyAgcmV0dXJuIG1pOworfQorCitzdHJ1Y3QgbWFsbGluZm8gX19tYWxsaW5mb19iaW5faW5mbyhzaXplX3QgYWlkeCBfX3VudXNlZCwgc2l6ZV90IGJpZHggX191bnVzZWQpIHsKKyAgc3RydWN0IG1hbGxpbmZvIG1pOworICBtZW1zZXQoJm1pLCAwLCBzaXplb2YobWkpKTsKKyAgcmV0dXJuIG1pOworfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvZHVwMi5jcHAgYi9saWJjL2Jpb25pYy9kdXAyLmNwcAppbmRleCAwYjg2MzJiLi45OGM1NjQ2IDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9kdXAyLmNwcAorKysgYi9saWJjL2Jpb25pYy9kdXAyLmNwcApAQCAtMjYsOCArMjYsMTkgQEAKICAqIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlIDxmY250bC5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCiBpbnQgZHVwMihpbnQgb2xkX2ZkLCBpbnQgbmV3X2ZkKSB7CisgIC8vIElmIG9sZF9mZCBpcyBlcXVhbCB0byBuZXdfZmQgYW5kIGEgdmFsaWQgZmlsZSBkZXNjcmlwdG9yLCBkdXAyIHJldHVybnMKKyAgLy8gb2xkX2ZkIHdpdGhvdXQgY2xvc2luZyBpdC4gVGhpcyBpcyBub3QgdHJ1ZSBvZiBkdXAzLCBzbyB3ZSBoYXZlIHRvCisgIC8vIGhhbmRsZSB0aGlzIGNhc2Ugb3Vyc2VsdmVzLgorICBpZiAob2xkX2ZkID09IG5ld19mZCkgeworICAgIGlmIChmY250bChvbGRfZmQsIEZfR0VURkQpID09IC0xKSB7CisgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIHJldHVybiBvbGRfZmQ7CisgIH0KKwogICByZXR1cm4gZHVwMyhvbGRfZmQsIG5ld19mZCwgMCk7CiB9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9lcnIuYyBiL2xpYmMvYmlvbmljL2Vyci5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4NGEzZDg1Li4wMDAwMDAwCi0tLSBhL2xpYmMvYmlvbmljL2Vyci5jCisrKyAvZGV2L251bGwKQEAgLTEsMTI2ICswLDAgQEAKLS8qLQotICogQ29weXJpZ2h0IChjKSAxOTkzCi0gKiAgICAgIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSA8c3lzL2NkZWZzLmg+Ci0jaW5jbHVkZSA8ZXJyLmg+Ci0jaW5jbHVkZSA8c3RkaW8uaD4KLSNpbmNsdWRlIDxzdGRsaWIuaD4KLSNpbmNsdWRlIDxzdGRhcmcuaD4KLSNpbmNsdWRlIDxlcnJuby5oPgotCi1leHRlcm4gY29uc3QgY2hhciogX19wcm9nbmFtZTsKLQotX19ub3JldHVybiB2b2lkCi1lcnIoaW50IGV2YWwsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQotewotICAgICAgICB2YV9saXN0IGFwOwotCi0gICAgICAgIHZhX3N0YXJ0KGFwLCBmbXQpOwotICAgICAgICB2ZXJyKGV2YWwsIGZtdCwgYXApOwotICAgICAgICB2YV9lbmQoYXApOwotfQotCi1fX25vcmV0dXJuIHZvaWQKLWVycngoaW50IGV2YWwsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQotewotICAgICAgICB2YV9saXN0IGFwOwotCi0gICAgICAgIHZhX3N0YXJ0KGFwLCBmbXQpOwotICAgICAgICB2ZXJyeChldmFsLCBmbXQsIGFwKTsKLSAgICAgICAgdmFfZW5kKGFwKTsKLX0KLQotX19ub3JldHVybiB2b2lkCi12ZXJyKGludCBldmFsLCBjb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXApCi17Ci0gICAgICAgIGludCBzdmVycm5vOwotCi0gICAgICAgIHN2ZXJybm8gPSBlcnJubzsKLSAgICAgICAgKHZvaWQpZnByaW50ZihzdGRlcnIsICIlczogIiwgX19wcm9nbmFtZSk7Ci0gICAgICAgIGlmIChmbXQgIT0gTlVMTCkgewotICAgICAgICAgICAgICAgICh2b2lkKXZmcHJpbnRmKHN0ZGVyciwgZm10LCBhcCk7Ci0gICAgICAgICAgICAgICAgKHZvaWQpZnByaW50ZihzdGRlcnIsICI6ICIpOwotICAgICAgICB9Ci0gICAgICAgICh2b2lkKWZwcmludGYoc3RkZXJyLCAiJXNcbiIsIHN0cmVycm9yKHN2ZXJybm8pKTsKLSAgICAgICAgZXhpdChldmFsKTsKLX0KLQotCi1fX25vcmV0dXJuIHZvaWQKLXZlcnJ4KGludCBldmFsLCBjb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXApCi17Ci0gICAgICAgICh2b2lkKWZwcmludGYoc3RkZXJyLCAiJXM6ICIsIF9fcHJvZ25hbWUpOwotICAgICAgICBpZiAoZm10ICE9IE5VTEwpCi0gICAgICAgICAgICAgICAgKHZvaWQpdmZwcmludGYoc3RkZXJyLCBmbXQsIGFwKTsKLSAgICAgICAgKHZvaWQpZnByaW50ZihzdGRlcnIsICJcbiIpOwotICAgICAgICBleGl0KGV2YWwpOwotfQotCi12b2lkCi13YXJuKGNvbnN0IGNoYXIgKmZtdCwgLi4uKQotewotCXZhX2xpc3QgYXA7Ci0KLQl2YV9zdGFydChhcCwgZm10KTsKLQl2d2FybihmbXQsIGFwKTsKLQl2YV9lbmQoYXApOwotfQotCi12b2lkCi13YXJueChjb25zdCBjaGFyICpmbXQsIC4uLikKLXsKLQl2YV9saXN0IGFwOwotCi0JdmFfc3RhcnQoYXAsIGZtdCk7Ci0Jdndhcm54KGZtdCwgYXApOwotCXZhX2VuZChhcCk7Ci19Ci0KLXZvaWQKLXZ3YXJuKGNvbnN0IGNoYXIgKmZtdCwgdmFfbGlzdCBhcCkKLXsKLQlpbnQgc3ZlcnJubzsKLQotCXN2ZXJybm8gPSBlcnJubzsKLQkodm9pZClmcHJpbnRmKHN0ZGVyciwgIiVzOiAiLCBfX3Byb2duYW1lKTsKLQlpZiAoZm10ICE9IE5VTEwpIHsKLQkJKHZvaWQpdmZwcmludGYoc3RkZXJyLCBmbXQsIGFwKTsKLQkJKHZvaWQpZnByaW50ZihzdGRlcnIsICI6ICIpOwotCX0KLQkodm9pZClmcHJpbnRmKHN0ZGVyciwgIiVzXG4iLCBzdHJlcnJvcihzdmVycm5vKSk7Ci19Ci0KLXZvaWQKLXZ3YXJueChjb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXApCi17Ci0JKHZvaWQpZnByaW50ZihzdGRlcnIsICIlczogIiwgX19wcm9nbmFtZSk7Ci0JaWYgKGZtdCAhPSBOVUxMKQotCQkodm9pZCl2ZnByaW50ZihzdGRlcnIsIGZtdCwgYXApOwotCSh2b2lkKWZwcmludGYoc3RkZXJyLCAiXG4iKTsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL2Vycm9yLmNwcCBiL2xpYmMvYmlvbmljL2Vycm9yLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOGRmMGUwCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvZXJyb3IuY3BwCkBAIC0wLDAgKzEsOTYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPGVycm9yLmg+CisKKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisKK3Vuc2lnbmVkIGludCBlcnJvcl9tZXNzYWdlX2NvdW50ID0gMDsKK3ZvaWQgKCplcnJvcl9wcmludF9wcm9nbmFtZSkodm9pZCkgPSBOVUxMOworaW50IGVycm9yX29uZV9wZXJfbGluZSA9IDA7CisKK3N0YXRpYyB2b2lkIF9fZXJyb3JfaGVhZCgpIHsKKyAgKytlcnJvcl9tZXNzYWdlX2NvdW50OworCisgIGlmIChlcnJvcl9wcmludF9wcm9nbmFtZSAhPSBOVUxMKSB7CisgICAgZXJyb3JfcHJpbnRfcHJvZ25hbWUoKTsKKyAgfSBlbHNlIHsKKyAgICBmZmx1c2goc3Rkb3V0KTsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiIsIGdldHByb2duYW1lKCkpOworICB9Cit9CisKK3N0YXRpYyB2b2lkIF9fZXJyb3JfdGFpbChpbnQgc3RhdHVzLCBpbnQgZXJyb3IpIHsKKyAgaWYgKGVycm9yICE9IDApIHsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIjogJXMiLCBzdHJlcnJvcihlcnJvcikpOworICB9CisKKyAgcHV0YygnXG4nLCBzdGRlcnIpOworICBmZmx1c2goc3RkZXJyKTsKKworICBpZiAoc3RhdHVzICE9IDApIHsKKyAgICBleGl0KHN0YXR1cyk7CisgIH0KK30KKwordm9pZCBlcnJvcihpbnQgc3RhdHVzLCBpbnQgZXJyb3IsIGNvbnN0IGNoYXIqIGZtdCwgLi4uKSB7CisgIF9fZXJyb3JfaGVhZCgpOworICBwdXRjKCcgJywgc3RkZXJyKTsKKworICB2YV9saXN0IGFwOworICB2YV9zdGFydChhcCwgZm10KTsKKyAgdmZwcmludGYoc3RkZXJyLCBmbXQsIGFwKTsKKyAgdmFfZW5kKGFwKTsKKworICBfX2Vycm9yX3RhaWwoc3RhdHVzLCBlcnJvcik7Cit9CisKK3ZvaWQgZXJyb3JfYXRfbGluZShpbnQgc3RhdHVzLCBpbnQgZXJyb3IsIGNvbnN0IGNoYXIqIGZpbGUsIHVuc2lnbmVkIGludCBsaW5lLCBjb25zdCBjaGFyKiBmbXQsIC4uLikgeworICBpZiAoZXJyb3Jfb25lX3Blcl9saW5lKSB7CisgICAgc3RhdGljIGNvbnN0IGNoYXIqIGxhc3RfZmlsZTsKKyAgICBzdGF0aWMgdW5zaWduZWQgaW50IGxhc3RfbGluZTsKKyAgICBpZiAobGFzdF9saW5lID09IGxpbmUgJiYgbGFzdF9maWxlICE9IE5VTEwgJiYgc3RyY21wKGxhc3RfZmlsZSwgZmlsZSkgPT0gMCkgeworICAgICAgcmV0dXJuOworICAgIH0KKyAgICBsYXN0X2ZpbGUgPSBmaWxlOworICAgIGxhc3RfbGluZSA9IGxpbmU7CisgIH0KKworICBfX2Vycm9yX2hlYWQoKTsKKyAgZnByaW50ZihzdGRlcnIsICIlczolZDogIiwgZmlsZSwgbGluZSk7CisKKyAgdmFfbGlzdCBhcDsKKyAgdmFfc3RhcnQoYXAsIGZtdCk7CisgIHZmcHJpbnRmKHN0ZGVyciwgZm10LCBhcCk7CisgIHZhX2VuZChhcCk7CisKKyAgX19lcnJvcl90YWlsKHN0YXR1cywgZXJyb3IpOworfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvZmFjY2Vzc2F0LmNwcCBiL2xpYmMvYmlvbmljL2ZhY2Nlc3NhdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWYzNzVlMAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYmlvbmljL2ZhY2Nlc3NhdC5jcHAKQEAgLTAsMCArMSw1OSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorCitleHRlcm4gIkMiIGludCBfX19mYWNjZXNzYXQoaW50LCBjb25zdCBjaGFyKiwgaW50KTsKKworaW50IGZhY2Nlc3NhdChpbnQgZGlyZmQsIGNvbnN0IGNoYXIqIHBhdGhuYW1lLCBpbnQgbW9kZSwgaW50IGZsYWdzKSB7CisgIC8vICJUaGUgbW9kZSBzcGVjaWZpZXMgdGhlIGFjY2Vzc2liaWxpdHkgY2hlY2socykgdG8gYmUgcGVyZm9ybWVkLAorICAvLyBhbmQgaXMgZWl0aGVyIHRoZSB2YWx1ZSBGX09LLCBvciBhIG1hc2sgY29uc2lzdGluZyBvZiB0aGUKKyAgLy8gYml0d2lzZSBPUiBvZiBvbmUgb3IgbW9yZSBvZiBSX09LLCBXX09LLCBhbmQgWF9PSy4iCisgIGlmICgobW9kZSAhPSBGX09LKSAmJiAoKG1vZGUgJiB+KFJfT0sgfCBXX09LIHwgWF9PSykpICE9IDApICYmCisgICAgICAoKG1vZGUgJiAoUl9PSyB8IFdfT0sgfCBYX09LKSkgPT0gMCkpIHsKKyAgICBlcnJubyA9IEVJTlZBTDsKKyAgICByZXR1cm4gLTE7CisgIH0KKworICBpZiAoZmxhZ3MgIT0gMCkgeworICAgIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCBzdXBwb3J0IEFUX1NZTUxJTktfTk9GT0xMT1csIGEgZ2xpYmMKKyAgICAvLyBvbmx5IGZlYXR1cmUgd2hpY2ggaXMgZXJyb3IgcHJvbmUgYW5kIGRhbmdlcm91cy4KKyAgICAvLworICAgIC8vIEFUX0VBQ0NFU1MgaXNuJ3Qgc3VwcG9ydGVkIGVpdGhlci4gQW5kcm9pZCBkb2Vzbid0IGhhdmUgc2V0dWlkCisgICAgLy8gcHJvZ3JhbXMsIGFuZCBuZXZlciBydW5zIGNvZGUgd2l0aCBldWlkIT11aWQuIEl0IGNvdWxkIGJlCisgICAgLy8gaW1wbGVtZW50ZWQgaW4gYW4gZXhwZW5zaXZlIHdheSwgZm9sbG93aW5nIHRoZSBtb2RlbCBhdAorICAgIC8vIGh0dHBzOi8vZ2l0bGFiLmNvbS9ibWlub3IvbXVzbC9jb21taXQvMGEwNWVhY2UxNjNjZWU5YjA4NTcxZDJmZjlkOTBmNWU4MmQ5YzIyOAorICAgIC8vIGJ1dCBub3Qgd29ydGggaXQuCisgICAgZXJybm8gPSBFSU5WQUw7CisgICAgcmV0dXJuIC0xOworICB9CisKKyAgcmV0dXJuIF9fX2ZhY2Nlc3NhdChkaXJmZCwgcGF0aG5hbWUsIG1vZGUpOworfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvZmNobW9kLmNwcCBiL2xpYmMvYmlvbmljL2ZjaG1vZC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWNlOGM2YgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYmlvbmljL2ZjaG1vZC5jcHAKQEAgLTAsMCArMSw3MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworZXh0ZXJuICJDIiBpbnQgX19fZmNobW9kKGludCwgbW9kZV90KTsKKworaW50IGZjaG1vZChpbnQgZmQsIG1vZGVfdCBtb2RlKSB7CisgIGludCBzYXZlZF9lcnJubyA9IGVycm5vOworICBpbnQgcmVzdWx0ID0gX19fZmNobW9kKGZkLCBtb2RlKTsKKworICBpZiAoKHJlc3VsdCA9PSAwKSB8fCAoZXJybm8gIT0gRUJBREYpKSB7CisgICAgcmV0dXJuIHJlc3VsdDsKKyAgfQorCisgIC8vIGZkIGNvdWxkIGJlIGFuIE9fUEFUSCBmaWxlIGRlc2NyaXB0b3IsIGFuZCB0aGUga2VybmVsCisgIC8vIG1heSBub3QgZGlyZWN0bHkgc3VwcG9ydCBmY2htb2QoKSBvbiBzdWNoIGEgZmlsZSBkZXNjcmlwdG9yLgorICAvLyBVc2UgL3Byb2Mvc2VsZi9mZCBpbnN0ZWFkIHRvIGVtdWxhdGUgdGhpcyBzdXBwb3J0LgorICAvLyBodHRwczovL3NvdXJjZXdhcmUub3JnL2J1Z3ppbGxhL3Nob3dfYnVnLmNnaT9pZD0xNDU3OAorICAvLworICAvLyBBcyBvZiBGZWJydWFyeSAyMDE1LCB0aGVyZSBhcmUgbm8ga2VybmVscyB3aGljaCBzdXBwb3J0IGZjaG1vZAorICAvLyBvbiBhbiBPX1BBVEggZmlsZSBkZXNjcmlwdG9yLCBhbmQgIm1hbiBvcGVuIiBkb2N1bWVudHMgZmNobW9kCisgIC8vIG9uIE9fUEFUSCBmaWxlIGRlc2NyaXB0b3JzIGFzIHJldHVybmluZyBFQkFERi4KKyAgaW50IGZkX2ZsYWcgPSBmY250bChmZCwgRl9HRVRGTCk7CisgIGlmICgoZmRfZmxhZyA9PSAtMSkgfHwgKChmZF9mbGFnICYgT19QQVRIKSA9PSAwKSkgeworICAgIGVycm5vID0gRUJBREY7CisgICAgcmV0dXJuIC0xOworICB9CisKKyAgY2hhciBidWZbNDBdOworICBzbnByaW50ZihidWYsIHNpemVvZihidWYpLCAiL3Byb2Mvc2VsZi9mZC8lZCIsIGZkKTsKKyAgZXJybm8gPSBzYXZlZF9lcnJubzsKKyAgcmVzdWx0ID0gY2htb2QoYnVmLCBtb2RlKTsKKyAgaWYgKChyZXN1bHQgPT0gLTEpICYmIChlcnJubyA9PSBFTE9PUCkpIHsKKyAgICAvLyBMaW51eCBkb2VzIG5vdCBzdXBwb3J0IGNoYW5naW5nIHRoZSBtb2RlIG9mIGEgc3ltbGluay4KKyAgICAvLyBGb3IgZmNobW9kYXQoQVRfU1lNTElOS19OT0ZPTExPVyksIFBPU0lYIHJlcXVpcmVzIGEgcmV0dXJuCisgICAgLy8gdmFsdWUgb2YgRU5PVFNVUC4gQXNzdW1lIHRoYXQncyB0cnVlIGhlcmUgdG9vLgorICAgIGVycm5vID0gRU5PVFNVUDsKKyAgfQorCisgIHJldHVybiByZXN1bHQ7Cit9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9mY2htb2RhdC5jcHAgYi9saWJjL2Jpb25pYy9mY2htb2RhdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWY4M2M0YgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYmlvbmljL2ZjaG1vZGF0LmNwcApAQCAtMCwwICsxLDY3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworI2luY2x1ZGUgInByaXZhdGUvRXJybm9SZXN0b3Jlci5oIgorCitleHRlcm4gIkMiIGludCBfX19mY2htb2RhdChpbnQsIGNvbnN0IGNoYXIqLCBtb2RlX3QpOworCitpbnQgZmNobW9kYXQoaW50IGRpcmZkLCBjb25zdCBjaGFyKiBwYXRobmFtZSwgbW9kZV90IG1vZGUsIGludCBmbGFncykgeworICBpZiAoKGZsYWdzICYgfkFUX1NZTUxJTktfTk9GT0xMT1cpICE9IDApIHsKKyAgICBlcnJubyA9IEVJTlZBTDsKKyAgICByZXR1cm4gLTE7CisgIH0KKworICBpZiAoZmxhZ3MgJiBBVF9TWU1MSU5LX05PRk9MTE9XKSB7CisgICAgLy8gRW11bGF0ZSBBVF9TWU1MSU5LX05PRk9MTE9XIHVzaW5nIHRoZSBtZWNoYW5pc20gZGVzY3JpYmVkCisgICAgLy8gYXQgaHR0cHM6Ly9zb3VyY2V3YXJlLm9yZy9idWd6aWxsYS9zaG93X2J1Zy5jZ2k/aWQ9MTQ1NzgKKyAgICAvLyBjb21tZW50ICMxMAorCisgICAgaW50IGZkID0gb3BlbmF0KGRpcmZkLCBwYXRobmFtZSwgT19QQVRIIHwgT19OT0ZPTExPVyB8IE9fQ0xPRVhFQyk7CisgICAgaWYgKGZkID09IC0xKSB7CisgICAgICByZXR1cm4gLTE7IC8vIHJldHVybnMgZXJybm8gZnJvbSBvcGVuYXQKKyAgICB9CisKKyAgICAvLyBQT1NJWCByZXF1aXJlcyB0aGF0IEVOT1RTVVAgYmUgcmV0dXJuZWQgd2hlbiB0aGUgc3lzdGVtCisgICAgLy8gZG9lc24ndCBzdXBwb3J0IHNldHRpbmcgdGhlIG1vZGUgb2YgYSBzeW1ib2xpYyBsaW5rLgorICAgIC8vIFRoaXMgaXMgdHJ1ZSBmb3IgYWxsIExpbnV4IGtlcm5lbHMuCisgICAgLy8gV2UgcmVseSBvbiB0aGUgT19QQVRIIGNvbXBhdGliaWxpdHkgbGF5ZXIgYWRkZWQgaW4gdGhlCisgICAgLy8gZmNobW9kKCkgZnVuY3Rpb24gdG8gZ2V0IGVycm5vIGNvcnJlY3QuCisgICAgaW50IHJlc3VsdCA9IGZjaG1vZChmZCwgbW9kZSk7CisgICAgRXJybm9SZXN0b3JlciBlcnJub19yZXN0b3JlcjsgLy8gZG9uJ3QgbGV0IGNsb3NlKCkgY2xvYmJlciBlcnJubworICAgIGNsb3NlKGZkKTsKKyAgICByZXR1cm4gcmVzdWx0OworICB9CisKKyAgcmV0dXJuIF9fX2ZjaG1vZGF0KGRpcmZkLCBwYXRobmFtZSwgbW9kZSk7Cit9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9mdHMuYyBiL2xpYmMvYmlvbmljL2Z0cy5jCmluZGV4IGM0OTFiNmEuLjMxYTRiMmYgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL2Z0cy5jCisrKyBiL2xpYmMvYmlvbmljL2Z0cy5jCkBAIC0xLDQgKzEsNCBAQAotLyoJJE9wZW5CU0Q6IGZ0cy5jLHYgMS40NiAyMDE0LzA1LzI1IDE3OjQ3OjA0IHRlZHUgRXhwICQJKi8KKy8qCSRPcGVuQlNEOiBmdHMuYyx2IDEuNDggMjAxNC8xMS8yMCAwNDoxNDoxNSBndWVudGhlciBFeHAgJAkqLwogCiAvKi0KICAqIENvcHlyaWdodCAoYykgMTk5MCwgMTk5MywgMTk5NApAQCAtNDksMTEgKzQ5LDEyIEBACiBzdGF0aWMgdm9pZAkgZnRzX3BhZGp1c3QoRlRTICosIEZUU0VOVCAqKTsKIHN0YXRpYyBpbnQJIGZ0c19wYWxsb2MoRlRTICosIHNpemVfdCk7CiBzdGF0aWMgRlRTRU5UCSpmdHNfc29ydChGVFMgKiwgRlRTRU5UICosIGludCk7Ci1zdGF0aWMgdV9zaG9ydAkgZnRzX3N0YXQoRlRTICosIEZUU0VOVCAqLCBpbnQpOworc3RhdGljIHVfc2hvcnQJIGZ0c19zdGF0KEZUUyAqLCBGVFNFTlQgKiwgaW50LCBpbnQpOwogc3RhdGljIGludAkgZnRzX3NhZmVfY2hhbmdlZGlyKEZUUyAqLCBGVFNFTlQgKiwgaW50LCBjaGFyICopOwogCiAjZGVmaW5lIEFMSUdOQllURVMgKHNpemVvZih1aW50cHRyX3QpIC0gMSkKICNkZWZpbmUgQUxJR04ocCkgKCgodWludHB0cl90KShwKSArIEFMSUdOQllURVMpICZ+IEFMSUdOQllURVMpCit2b2lkKiByZWFsbG9jYXJyYXkodm9pZCosIHNpemVfdCwgc2l6ZV90KTsKIAogI2RlZmluZQlJU0RPVChhKQkoYVswXSA9PSAnLicgJiYgKCFhWzFdIHx8IChhWzFdID09ICcuJyAmJiAhYVsyXSkpKQogCkBAIC0xMTksNyArMTIwLDcgQEAKIAkJcC0+ZnRzX2xldmVsID0gRlRTX1JPT1RMRVZFTDsKIAkJcC0+ZnRzX3BhcmVudCA9IHBhcmVudDsKIAkJcC0+ZnRzX2FjY3BhdGggPSBwLT5mdHNfbmFtZTsKLQkJcC0+ZnRzX2luZm8gPSBmdHNfc3RhdChzcCwgcCwgSVNTRVQoRlRTX0NPTUZPTExPVykpOworCQlwLT5mdHNfaW5mbyA9IGZ0c19zdGF0KHNwLCBwLCBJU1NFVChGVFNfQ09NRk9MTE9XKSwgLTEpOwogCiAJCS8qIENvbW1hbmQtbGluZSAiLiIgYW5kICIuLiIgYXJlIHJlYWwgZGlyZWN0b3JpZXMuICovCiAJCWlmIChwLT5mdHNfaW5mbyA9PSBGVFNfRE9UKQpAQCAtMjczLDcgKzI3NCw3IEBACiAKIAkvKiBBbnkgdHlwZSBvZiBmaWxlIG1heSBiZSByZS12aXNpdGVkOyByZS1zdGF0IGFuZCByZS10dXJuLiAqLwogCWlmIChpbnN0ciA9PSBGVFNfQUdBSU4pIHsKLQkJcC0+ZnRzX2luZm8gPSBmdHNfc3RhdChzcCwgcCwgMCk7CisJCXAtPmZ0c19pbmZvID0gZnRzX3N0YXQoc3AsIHAsIDAsIC0xKTsKIAkJcmV0dXJuIChwKTsKIAl9CiAKQEAgLTI4NSw3ICsyODYsNyBAQAogCSAqLwogCWlmIChpbnN0ciA9PSBGVFNfRk9MTE9XICYmCiAJICAgIChwLT5mdHNfaW5mbyA9PSBGVFNfU0wgfHwgcC0+ZnRzX2luZm8gPT0gRlRTX1NMTk9ORSkpIHsKLQkJcC0+ZnRzX2luZm8gPSBmdHNfc3RhdChzcCwgcCwgMSk7CisJCXAtPmZ0c19pbmZvID0gZnRzX3N0YXQoc3AsIHAsIDEsIC0xKTsKIAkJaWYgKHAtPmZ0c19pbmZvID09IEZUU19EICYmICFJU1NFVChGVFNfTk9DSERJUikpIHsKIAkJCWlmICgocC0+ZnRzX3N5bWZkID0gb3BlbigiLiIsIE9fUkRPTkxZLCAwKSkgPCAwKSB7CiAJCQkJcC0+ZnRzX2Vycm5vID0gZXJybm87CkBAIC0zNzQsNyArMzc1LDcgQEAKIAkJaWYgKHAtPmZ0c19pbnN0ciA9PSBGVFNfU0tJUCkKIAkJCWdvdG8gbmV4dDsKIAkJaWYgKHAtPmZ0c19pbnN0ciA9PSBGVFNfRk9MTE9XKSB7Ci0JCQlwLT5mdHNfaW5mbyA9IGZ0c19zdGF0KHNwLCBwLCAxKTsKKwkJCXAtPmZ0c19pbmZvID0gZnRzX3N0YXQoc3AsIHAsIDEsIC0xKTsKIAkJCWlmIChwLT5mdHNfaW5mbyA9PSBGVFNfRCAmJiAhSVNTRVQoRlRTX05PQ0hESVIpKSB7CiAJCQkJaWYgKChwLT5mdHNfc3ltZmQgPQogCQkJCSAgICBvcGVuKCIuIiwgT19SRE9OTFksIDApKSA8IDApIHsKQEAgLTcxOSwxMCArNzIwLDExIEBACiAJCQlpZiAoSVNTRVQoRlRTX05PQ0hESVIpKSB7CiAJCQkJcC0+ZnRzX2FjY3BhdGggPSBwLT5mdHNfcGF0aDsKIAkJCQltZW1tb3ZlKGNwLCBwLT5mdHNfbmFtZSwgcC0+ZnRzX25hbWVsZW4gKyAxKTsKLQkJCX0gZWxzZQorCQkJCXAtPmZ0c19pbmZvID0gZnRzX3N0YXQoc3AsIHAsIDAsIGRpcmZkKGRpcnApKTsKKwkJCX0gZWxzZSB7CiAJCQkJcC0+ZnRzX2FjY3BhdGggPSBwLT5mdHNfbmFtZTsKLQkJCS8qIFN0YXQgaXQuICovCi0JCQlwLT5mdHNfaW5mbyA9IGZ0c19zdGF0KHNwLCBwLCAwKTsKKwkJCQlwLT5mdHNfaW5mbyA9IGZ0c19zdGF0KHNwLCBwLCAwLCAtMSk7CisJCQl9CiAKIAkJCS8qIERlY3JlbWVudCBsaW5rIGNvdW50IGlmIGFwcGxpY2FibGUuICovCiAJCQlpZiAobmxpbmtzID4gMCAmJiAocC0+ZnRzX2luZm8gPT0gRlRTX0QgfHwKQEAgLTc4OSwxMyArNzkxLDIwIEBACiB9CiAKIHN0YXRpYyB1X3Nob3J0Ci1mdHNfc3RhdChGVFMgKnNwLCBGVFNFTlQgKnAsIGludCBmb2xsb3cpCitmdHNfc3RhdChGVFMgKnNwLCBGVFNFTlQgKnAsIGludCBmb2xsb3csIGludCBkZmQpCiB7CiAJRlRTRU5UICp0OwogCWRldl90IGRldjsKIAlpbm9fdCBpbm87CiAJc3RydWN0IHN0YXQgKnNicCwgc2I7CiAJaW50IHNhdmVkX2Vycm5vOworCWNvbnN0IGNoYXIgKnBhdGg7CisKKwlpZiAoZGZkID09IC0xKSB7CisJCXBhdGggPSBwLT5mdHNfYWNjcGF0aDsKKwkJZGZkID0gQVRfRkRDV0Q7CisJfSBlbHNlCisJCXBhdGggPSBwLT5mdHNfbmFtZTsKIAogCS8qIElmIHVzZXIgbmVlZHMgc3RhdCBpbmZvLCBzdGF0IGJ1ZmZlciBhbHJlYWR5IGFsbG9jYXRlZC4gKi8KIAlzYnAgPSBJU1NFVChGVFNfTk9TVEFUKSA/ICZzYiA6IHAtPmZ0c19zdGF0cDsKQEAgLTgwNiwxNiArODE1LDE2IEBACiAJICogZmFpbCwgc2V0IHRoZSBlcnJubyBmcm9tIHRoZSBzdGF0IGNhbGwuCiAJICovCiAJaWYgKElTU0VUKEZUU19MT0dJQ0FMKSB8fCBmb2xsb3cpIHsKLQkJaWYgKHN0YXQocC0+ZnRzX2FjY3BhdGgsIHNicCkpIHsKKwkJaWYgKGZzdGF0YXQoZGZkLCBwYXRoLCBzYnAsIDApKSB7CiAJCQlzYXZlZF9lcnJubyA9IGVycm5vOwotCQkJaWYgKCFsc3RhdChwLT5mdHNfYWNjcGF0aCwgc2JwKSkgeworCQkJaWYgKCFmc3RhdGF0KGRmZCwgcGF0aCwgc2JwLCBBVF9TWU1MSU5LX05PRk9MTE9XKSkgewogCQkJCWVycm5vID0gMDsKIAkJCQlyZXR1cm4gKEZUU19TTE5PTkUpOwogCQkJfQogCQkJcC0+ZnRzX2Vycm5vID0gc2F2ZWRfZXJybm87CiAJCQlnb3RvIGVycjsKIAkJfQotCX0gZWxzZSBpZiAobHN0YXQocC0+ZnRzX2FjY3BhdGgsIHNicCkpIHsKKwl9IGVsc2UgaWYgKGZzdGF0YXQoZGZkLCBwYXRoLCBzYnAsIEFUX1NZTUxJTktfTk9GT0xMT1cpKSB7CiAJCXAtPmZ0c19lcnJubyA9IGVycm5vOwogZXJyOgkJbWVtc2V0KHNicCwgMCwgc2l6ZW9mKHN0cnVjdCBzdGF0KSk7CiAJCXJldHVybiAoRlRTX05TKTsKQEAgLTg3Myw4ICs4ODIsOCBAQAogCQlzdHJ1Y3QgX2Z0c2VudCAqKmE7CiAKIAkJc3AtPmZ0c19uaXRlbXMgPSBuaXRlbXMgKyA0MDsKLQkJaWYgKChhID0gcmVhbGxvYyhzcC0+ZnRzX2FycmF5LAotCQkgICAgc3AtPmZ0c19uaXRlbXMgKiBzaXplb2YoRlRTRU5UICopKSkgPT0gTlVMTCkgeworCQlpZiAoKGEgPSByZWFsbG9jYXJyYXkoc3AtPmZ0c19hcnJheSwKKwkJICAgIHNwLT5mdHNfbml0ZW1zLCBzaXplb2YoRlRTRU5UICopKSkgPT0gTlVMTCkgewogCQkJaWYgKHNwLT5mdHNfYXJyYXkpCiAJCQkJZnJlZShzcC0+ZnRzX2FycmF5KTsKIAkJCXNwLT5mdHNfYXJyYXkgPSBOVUxMOwpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvZ2V0YXV4dmFsLmNwcCBiL2xpYmMvYmlvbmljL2dldGF1eHZhbC5jcHAKaW5kZXggYmM0MTgyNC4uMjI5MjJiOSAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvZ2V0YXV4dmFsLmNwcAorKysgYi9saWJjL2Jpb25pYy9nZXRhdXh2YWwuY3BwCkBAIC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSA8c3lzL2F1eHYuaD4KICNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hdXh2Lmg+CiAjaW5jbHVkZSA8ZWxmLmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KIAogX19MSUJDX0hJRERFTl9fIEVsZlcoYXV4dl90KSogX19saWJjX2F1eHYgPSBOVUxMOwogCkBAIC00MCw1ICs0MSw2IEBACiAgICAgICByZXR1cm4gdi0+YV91bi5hX3ZhbDsKICAgICB9CiAgIH0KKyAgZXJybm8gPSBFTk9FTlQ7CiAgIHJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvZ2V0Y3dkLmNwcCBiL2xpYmMvYmlvbmljL2dldGN3ZC5jcHAKaW5kZXggNDdjODA3Zi4uYThiYmNmMyAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvZ2V0Y3dkLmNwcAorKysgYi9saWJjL2Jpb25pYy9nZXRjd2QuY3BwCkBAIC0yNiw4ICsyNiwxMCBAQAogICogU1VDSCBEQU1BR0UuCiAgKi8KIAotI2luY2x1ZGUgPHVuaXN0ZC5oPgogI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8bWFsbG9jLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CiAKIGV4dGVybiAiQyIgaW50IF9fZ2V0Y3dkKGNoYXIqIGJ1Ziwgc2l6ZV90IHNpemUpOwogCmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9nZXRob3N0bmFtZS5jIGIvbGliYy9iaW9uaWMvZ2V0aG9zdG5hbWUuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWQzZDdkOS4uMDAwMDAwMAotLS0gYS9saWJjL2Jpb25pYy9nZXRob3N0bmFtZS5jCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotI2luY2x1ZGUgPGVycm5vLmg+Ci0jaW5jbHVkZSA8dW5pc3RkLmg+Ci0jaW5jbHVkZSA8c3RyaW5nLmg+Ci0jaW5jbHVkZSA8c3lzL3V0c25hbWUuaD4KLQotaW50IGdldGhvc3RuYW1lKGNoYXIqICBidWZmLCBzaXplX3QgIGJ1ZmxlbikKLXsKLSAgICBzdHJ1Y3QgdXRzbmFtZSAgbmFtZTsKLSAgICBpbnQgICAgICAgICAgICAgcmVzdWx0ID0gMDsKLQotICAgIHJlc3VsdCA9IHVuYW1lKCZuYW1lKTsKLSAgICBpZiAocmVzdWx0ICE9IC0xKQotICAgIHsKLSAgICAgICAgaW50ICBuYW1lbGVuID0gc3RybGVuKG5hbWUubm9kZW5hbWUpOwotCi0gICAgICAgIGlmICgoaW50KWJ1ZmxlbiA8IG5hbWVsZW4rMSkgewotICAgICAgICAgICAgZXJybm8gPSBFSU5WQUw7Ci0gICAgICAgICAgICByZXN1bHQgPSAtMTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIG1lbWNweSggYnVmZiwgbmFtZS5ub2RlbmFtZSwgbmFtZWxlbisxICk7Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL2dldGhvc3RuYW1lLmNwcCBiL2xpYmMvYmlvbmljL2dldGhvc3RuYW1lLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NjJmZWExCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvZ2V0aG9zdG5hbWUuY3BwCkBAIC0wLDAgKzEsNDggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMDggVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8c3lzL3V0c25hbWUuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworaW50IGdldGhvc3RuYW1lKGNoYXIqIGJ1Ziwgc2l6ZV90IG4pIHsKKyAgc3RydWN0IHV0c25hbWUgbmFtZTsKKyAgaWYgKHVuYW1lKCZuYW1lKSA9PSAtMSkgeworICAgIHJldHVybiAtMTsKKyAgfQorCisgIHNpemVfdCBuYW1lX2xlbmd0aCA9IHN0YXRpY19jYXN0PHNpemVfdD4oc3RybGVuKG5hbWUubm9kZW5hbWUpICsgMSk7CisgIGlmIChuYW1lX2xlbmd0aCA+IG4pIHsKKyAgICBlcnJubyA9IEVOQU1FVE9PTE9ORzsKKyAgICByZXR1cm4gLTE7CisgIH0KKworICBtZW1jcHkoYnVmLCBuYW1lLm5vZGVuYW1lLCBuYW1lX2xlbmd0aCk7CisgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvaGFzaC5oIGIvbGliYy9iaW9uaWMvaGFzaC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAzYjQ4M2YxLi4wMDAwMDAwCi0tLSBhL2xpYmMvYmlvbmljL2hhc2guaAorKysgL2Rldi9udWxsCkBAIC0xLDY4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTkgS3VuZ2xpZ2EgVGVrbmlza2EgSPZnc2tvbGFuCi0gKiAoUm95YWwgSW5zdGl0dXRlIG9mIFRlY2hub2xvZ3ksIFN0b2NraG9sbSwgU3dlZGVuKS4gCi0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLiAKLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQgCi0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgCi0gKiBhcmUgbWV0OiAKLSAqCi0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCAKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCi0gKgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgCi0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIAotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4gCi0gKgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiBLVEggbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzIG1heSBiZQotICogICAgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dAotICogICAgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgS1RIIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBLVEggT1IgSVRTIENPTlRSSUJVVE9SUyBCRQotICogTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUgotICogQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksCi0gKiBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUgotICogT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRgotICogQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuICovCi0KLS8qICRIZWltZGFsOiBoYXNoLmgsdiAxLjEgMTk5OS8wMy8yMiAxOToxNjoyNSBqb2RhIEV4cCAkCi0gICAkTmV0QlNEOiBoYXNoLmgsdiAxLjEuMS4zIDIwMDIvMDkvMTIgMTI6NDE6NDIgam9kYSBFeHAgJCAqLwotCi0vKiBzdHVmZiBpbiBjb21tb24gYmV0d2VlbiBtZDQsIG1kNSwgYW5kIHNoYTEgKi8KLQotI2lmbmRlZiBfX2hhc2hfaF9fCi0jZGVmaW5lIF9faGFzaF9oX18KLQotI2luY2x1ZGUgPHN0ZGxpYi5oPgotI2luY2x1ZGUgPHN0cmluZy5oPgotCi0jaWZuZGVmIG1pbgotI2RlZmluZSBtaW4oYSxiKSAoKChhKT4oYikpPyhiKTooYSkpCi0jZW5kaWYKLQotLyogVmVjdG9yIENyYXlzIGRvZXNuJ3QgaGF2ZSBhIGdvb2QgMzItYml0IHR5cGUsIG9yIG1vcmUgcHJlY2lzZWx5LAotICAgaW50MzJfdCBhcyBkZWZpbmVkIGJ5IDxiaW5kL2JpdHlwZXMuaD4gaXNuJ3QgMzIgYml0cywgYW5kIHdlIGRvbid0Ci0gICB3YW50IHRvIGRlcGVuZCBpbiBiZWluZyBhYmxlIHRvIHJlZGVmaW5lIHRoaXMgdHlwZS4gIFRvIGNvcGUgd2l0aAotICAgdGhpcyB3ZSBoYXZlIHRvIGNsYW1wIHRoZSByZXN1bHQgaW4gc29tZSBwbGFjZXMgdG8gWzAsMl4zMik7IG5vCi0gICBuZWVkIHRvIGRvIHRoaXMgb24gb3RoZXIgbWFjaGluZXMuICBEaWQgSSBzYXkgdGhpcyB3YXMgYSBtZXNzPwotICAgKi8KLQotI2lmZGVmIF9DUkFZCi0jZGVmaW5lIENSQVlGSVgoWCkgKChYKSAmIDB4ZmZmZmZmZmYpCi0jZWxzZQotI2RlZmluZSBDUkFZRklYKFgpIChYKQotI2VuZGlmCi0KLXN0YXRpYyBpbmxpbmUgdV9pbnQzMl90Ci1jc2hpZnQgKHVfaW50MzJfdCB4LCB1bnNpZ25lZCBpbnQgbikKLXsKLSAgICB4ID0gQ1JBWUZJWCh4KTsKLSAgICByZXR1cm4gQ1JBWUZJWCgoeCA8PCBuKSB8ICh4ID4+ICgzMiAtIG4pKSk7Ci19Ci0KLSNlbmRpZiAvKiBfX2hhc2hfaF9fICovCmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9qZW1hbGxvYy5oIGIvbGliYy9iaW9uaWMvamVtYWxsb2MuaAppbmRleCBmZWIxZjQzLi45OGVhMGVlIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9qZW1hbGxvYy5oCisrKyBiL2xpYmMvYmlvbmljL2plbWFsbG9jLmgKQEAgLTE4LDYgKzE4LDcgQEAKICNkZWZpbmUgTElCQ19CSU9OSUNfSkVNQUxMT0NfSF8KIAogI2luY2x1ZGUgPGplbWFsbG9jL2plbWFsbG9jLmg+CisjaW5jbHVkZSA8bWFsbG9jLmg+ICAvLyBGb3Igc3RydWN0IG1hbGxpbmZvLgogCiAvLyBOZWVkIHRvIHdyYXAgbWVtYWxpZ24gc2luY2UgamVfbWVtYWxpZ24gZmFpbHMgb24gbm9uLXBvd2VyIG9mIDIgYWxpZ25tZW50cy4KICNkZWZpbmUgamVfbWVtYWxpZ24gamVfbWVtYWxpZ25fcm91bmRfdXBfYm91bmRhcnkKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL2xjaG93bi5jcHAgYi9saWJjL2Jpb25pYy9sY2hvd24uY3BwCmluZGV4IDk1MjUxZGIuLjI0NjExYTUgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL2xjaG93bi5jcHAKKysrIGIvbGliYy9iaW9uaWMvbGNob3duLmNwcApAQCAtMjksNiArMjksNyBAQAogI2luY2x1ZGUgPGZjbnRsLmg+CiAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KIAogaW50IGxjaG93bihjb25zdCBjaGFyKiBwYXRoLCB1aWRfdCB1aWQsIGdpZF90IGdpZCkgewogICByZXR1cm4gZmNob3duYXQoQVRfRkRDV0QsIHBhdGgsIHVpZCwgZ2lkLCBBVF9TWU1MSU5LX05PRk9MTE9XKTsKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL2xlZ2FjeV8zMl9iaXRfc3VwcG9ydC5jcHAgYi9saWJjL2Jpb25pYy9sZWdhY3lfMzJfYml0X3N1cHBvcnQuY3BwCmluZGV4IDczZjc3YmUuLmExMDc2NjQgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL2xlZ2FjeV8zMl9iaXRfc3VwcG9ydC5jcHAKKysrIGIvbGliYy9iaW9uaWMvbGVnYWN5XzMyX2JpdF9zdXBwb3J0LmNwcApAQCAtMjYsNiArMjYsOCBAQAogICogU1VDSCBEQU1BR0UuCiAgKi8KIAorI3VuZGVmIF9GT1JUSUZZX1NPVVJDRQorCiAjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNsdWRlIDxmY250bC5oPgogI2luY2x1ZGUgPHN0ZGFyZy5oPgpAQCAtNDAsOSArNDIsNyBAQAogCiAvLyBTeXN0ZW0gY2FsbHMgd2UgbmVlZC4KIGV4dGVybiAiQyIgaW50IF9fZmNudGw2NChpbnQsIGludCwgdm9pZCopOwotZXh0ZXJuICJDIiBpbnQgX19mc3RhdGZzNjQoaW50LCBzaXplX3QsIHN0cnVjdCBzdGF0ZnMqKTsKIGV4dGVybiAiQyIgaW50IF9fbGxzZWVrKGludCwgdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZywgb2ZmNjRfdCosIGludCk7Ci1leHRlcm4gIkMiIGludCBfX3N0YXRmczY0KGNvbnN0IGNoYXIqLCBzaXplX3QsIHN0cnVjdCBzdGF0ZnMqKTsKIAogLy8gRm9yIGZjbnRsIHdlIHVzZSB0aGUgZmNudGw2NCBzeXN0ZW0gY2FsbCB0byBzaWduYWwgdGhhdCB3ZSdyZSB1c2luZyBzdHJ1Y3QgZmxvY2s2NC4KIGludCBmY250bChpbnQgZmQsIGludCBjbWQsIC4uLikgewpAQCAtNTUsMTggKzU1LDYgQEAKICAgcmV0dXJuIF9fZmNudGw2NChmZCwgY21kLCBhcmcpOwogfQogCi0vLyBGb3IgZnN0YXRmcyB3ZSBuZWVkIHRvIGFkZCB0aGUgZXh0cmEgYXJndW1lbnQgZ2l2aW5nIHRoZSBrZXJuZWwgdGhlIHNpemUgb2YgdGhlIGJ1ZmZlci4KLWludCBmc3RhdGZzKGludCBmZCwgc3RydWN0IHN0YXRmcyogc3RhdCkgewotICByZXR1cm4gX19mc3RhdGZzNjQoZmQsIHNpemVvZigqc3RhdCksIHN0YXQpOwotfQotX19zdHJvbmdfYWxpYXMoZnN0YXRmczY0LCBmc3RhdGZzKTsKLQotLy8gRm9yIHN0YXRmcyB3ZSBuZWVkIHRvIGFkZCB0aGUgZXh0cmEgYXJndW1lbnQgZ2l2aW5nIHRoZSBrZXJuZWwgdGhlIHNpemUgb2YgdGhlIGJ1ZmZlci4KLWludCBzdGF0ZnMoY29uc3QgY2hhciogcGF0aCwgc3RydWN0IHN0YXRmcyogc3RhdCkgewotICByZXR1cm4gX19zdGF0ZnM2NChwYXRoLCBzaXplb2YoKnN0YXQpLCBzdGF0KTsKLX0KLV9fc3Ryb25nX2FsaWFzKHN0YXRmczY0LCBzdGF0ZnMpOwotCiAvLyBGb3IgbHNlZWs2NCB3ZSBuZWVkIHRvIHVzZSB0aGUgbGxzZWVrIHN5c3RlbSBjYWxsIHdoaWNoIHNwbGl0cyB0aGUgb2ZmNjRfdCBpbiB0d28gYW5kCiAvLyByZXR1cm5zIHRoZSBvZmY2NF90IHJlc3VsdCB2aWEgYSBwb2ludGVyIGJlY2F1c2UgMzItYml0IGtlcm5lbHMgY2FuJ3QgcmV0dXJuIDY0LWJpdCByZXN1bHRzLgogb2ZmNjRfdCBsc2VlazY0KGludCBmZCwgb2ZmNjRfdCBvZmYsIGludCB3aGVuY2UpIHsKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL2xmczY0X3N1cHBvcnQuY3BwIGIvbGliYy9iaW9uaWMvbGZzNjRfc3VwcG9ydC5jcHAKaW5kZXggYWI3OTVmNS4uNDVkNGY3ZiAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvbGZzNjRfc3VwcG9ydC5jcHAKKysrIGIvbGliYy9iaW9uaWMvbGZzNjRfc3VwcG9ydC5jcHAKQEAgLTE3LDExICsxNywyMCBAQAogI2luY2x1ZGUgPGZ0dy5oPgogI2luY2x1ZGUgPHN0ZGxpYi5oPgogCi1pbnQgbWtzdGVtcDY0KGNoYXIqIGZpbGVuYW1lKSB7Ci0gIC8vIERlbGVnYXRpb24gd2lsbCB3b3JrIGluIHRoaXMgY2FzZSBiZWNhdXNlIGFsbCB0aGUgdHJhbnNpdGl2ZSBkZXBlbmRlbmNpZXMKLSAgLy8gYXJlIGFscmVhZHkgNjQtYml0IHJlYWR5LiBJbiBwYXJ0aWN1bGFyLCB3ZSBkb24ndCBoYXZlIG5vbi1PX0xBUkdFRklMRQotICAvLyBvcGVuIChvdXIgb3BlbiBpcyBhY3R1YWxseSBvcGVuNjQpIGFuZCBzdGF0IGFuZCBzdGF0NjQgYXJlIHRoZSBzYW1lLgotICByZXR1cm4gbWtzdGVtcChmaWxlbmFtZSk7CisvLyBEZWxlZ2F0aW9uIHdpbGwgd29yayBpbiB0aGVzZSBjYXNlcyBiZWNhdXNlIGFsbCB0aGUgdHJhbnNpdGl2ZSBkZXBlbmRlbmNpZXMKKy8vIGFyZSBhbHJlYWR5IDY0LWJpdCByZWFkeS4gSW4gcGFydGljdWxhciwgd2UgZG9uJ3QgaGF2ZSBub24tT19MQVJHRUZJTEUKKy8vIG9wZW4gKG91ciBvcGVuIGlzIGFjdHVhbGx5IG9wZW42NCkgYW5kIHN0YXQgYW5kIHN0YXQ2NCBhcmUgdGhlIHNhbWUuCitpbnQgbWtzdGVtcDY0KGNoYXIqIHBhdGgpIHsKKyAgcmV0dXJuIG1rc3RlbXAocGF0aCk7Cit9CitpbnQgbWtvc3RlbXA2NChjaGFyKiBwYXRoLCBpbnQgZmxhZ3MpIHsKKyAgcmV0dXJuIG1rb3N0ZW1wKHBhdGgsIGZsYWdzKTsKK30KK2ludCBta3N0ZW1wczY0KGNoYXIqIHBhdGgsIGludCBzdWZmaXhfbGVuZ3RoKSB7CisgIHJldHVybiBta3N0ZW1wcyhwYXRoLCBzdWZmaXhfbGVuZ3RoKTsKK30KK2ludCBta29zdGVtcHM2NChjaGFyKiBwYXRoLCBpbnQgc3VmZml4X2xlbmd0aCwgaW50IGZsYWdzKSB7CisgIHJldHVybiBta29zdGVtcHMocGF0aCwgc3VmZml4X2xlbmd0aCwgZmxhZ3MpOwogfQogCiB0eXBlZGVmIGludCAoKmZ0d19mbikoY29uc3QgY2hhciosIGNvbnN0IHN0cnVjdCBzdGF0KiwgaW50KTsKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL2xpYmNfaW5pdF9jb21tb24uY3BwIGIvbGliYy9iaW9uaWMvbGliY19pbml0X2NvbW1vbi5jcHAKaW5kZXggOTUwMDczYS4uMzZkYzA4NSAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvbGliY19pbml0X2NvbW1vbi5jcHAKKysrIGIvbGliYy9iaW9uaWMvbGliY19pbml0X2NvbW1vbi5jcHAKQEAgLTQ5LDcgKzQ5LDcgQEAKIGV4dGVybiAiQyIgaW50IF9fc2V0X3Rscyh2b2lkKiBwdHIpOwogZXh0ZXJuICJDIiBpbnQgX19zZXRfdGlkX2FkZHJlc3MoaW50KiB0aWRfYWRkcmVzcyk7CiAKLXZvaWQgX19saWJjX2luaXRfdmRzbygpOworX19MSUJDX0hJRERFTl9fIHZvaWQgX19saWJjX2luaXRfdmRzbygpOwogCiAvLyBOb3QgcHVibGljLCBidXQgd2VsbC1rbm93biBpbiB0aGUgQlNEcy4KIGNvbnN0IGNoYXIqIF9fcHJvZ25hbWU7CkBAIC03NCw5ICs3NCw3IEBACiB2b2lkIF9fbGliY19pbml0X3RscyhLZXJuZWxBcmd1bWVudEJsb2NrJiBhcmdzKSB7CiAgIF9fbGliY19hdXh2ID0gYXJncy5hdXh2OwogCi0gIHN0YXRpYyB2b2lkKiB0bHNbQklPTklDX1RMU19TTE9UU107CiAgIHN0YXRpYyBwdGhyZWFkX2ludGVybmFsX3QgbWFpbl90aHJlYWQ7Ci0gIG1haW5fdGhyZWFkLnRscyA9IHRsczsKIAogICAvLyBUZWxsIHRoZSBrZXJuZWwgdG8gY2xlYXIgb3VyIHRpZCBmaWVsZCB3aGVuIHdlIGV4aXQsIHNvIHdlJ3JlIGxpa2UgYW55IG90aGVyIHB0aHJlYWQuCiAgIC8vIEFzIGEgc2lkZS1lZmZlY3QsIHRoaXMgdGVsbHMgdXMgb3VyIHBpZCAod2hpY2ggaXMgdGhlIHNhbWUgYXMgdGhlIG1haW4gdGhyZWFkJ3MgdGlkKS4KQEAgLTg3LDE2ICs4NSwxNyBAQAogICAvLyBiZWNhdXNlIHRoaW5ncyBsaWtlIGVudmlyb25tZW50IHZhcmlhYmxlcyB3aXRoIGdsb2JhbCBzY29wZSBsaXZlIG9uIGl0LgogICAvLyBXZSBhbHNvIGNhbid0IGZyZWUgdGhlIHB0aHJlYWRfaW50ZXJuYWxfdCBpdHNlbGYsIHNpbmNlIHRoYXQgbGl2ZXMgb24gdGhlIG1haW4KICAgLy8gdGhyZWFkJ3Mgc3RhY2sgcmF0aGVyIHRoYW4gb24gdGhlIGhlYXAuCisgIC8vIFRoZSBtYWluIHRocmVhZCBoYXMgbm8gbW1hcCBhbGxvY2F0ZWQgc3BhY2UgZm9yIHN0YWNrIG9yIHB0aHJlYWRfaW50ZXJuYWxfdC4KKyAgbWFpbl90aHJlYWQubW1hcF9zaXplID0gMDsKICAgcHRocmVhZF9hdHRyX2luaXQoJm1haW5fdGhyZWFkLmF0dHIpOwotICBtYWluX3RocmVhZC5hdHRyLmZsYWdzID0gUFRIUkVBRF9BVFRSX0ZMQUdfVVNFUl9BTExPQ0FURURfU1RBQ0sgfCBQVEhSRUFEX0FUVFJfRkxBR19NQUlOX1RIUkVBRDsKICAgbWFpbl90aHJlYWQuYXR0ci5ndWFyZF9zaXplID0gMDsgLy8gVGhlIG1haW4gdGhyZWFkIGhhcyBubyBndWFyZCBwYWdlLgogICBtYWluX3RocmVhZC5hdHRyLnN0YWNrX3NpemUgPSAwOyAvLyBVc2VyIGNvZGUgc2hvdWxkIG5ldmVyIHNlZSB0aGlzOyB3ZSdsbCBjb21wdXRlIGl0IHdoZW4gYXNrZWQuCiAgIC8vIFRPRE86IHRoZSBtYWluIHRocmVhZCdzIHNjaGVkX3BvbGljeSBhbmQgc2NoZWRfcHJpb3JpdHkgbmVlZCB0byBiZSBxdWVyaWVkLgogCi0gIF9faW5pdF90aHJlYWQoJm1haW5fdGhyZWFkLCBmYWxzZSk7CisgIF9faW5pdF90aHJlYWQoJm1haW5fdGhyZWFkKTsKICAgX19pbml0X3RscygmbWFpbl90aHJlYWQpOwogICBfX3NldF90bHMobWFpbl90aHJlYWQudGxzKTsKLSAgdGxzW1RMU19TTE9UX0JJT05JQ19QUkVJTklUXSA9ICZhcmdzOworICBtYWluX3RocmVhZC50bHNbVExTX1NMT1RfQklPTklDX1BSRUlOSVRdID0gJmFyZ3M7CiAKICAgX19pbml0X2FsdGVybmF0ZV9zaWduYWxfc3RhY2soJm1haW5fdGhyZWFkKTsKIH0KQEAgLTExNCw3ICsxMTMsNyBAQAogCiAgIC8vIEdldCB0aGUgbWFpbiB0aHJlYWQgZnJvbSBUTFMgYW5kIGFkZCBpdCB0byB0aGUgdGhyZWFkIGxpc3QuCiAgIHB0aHJlYWRfaW50ZXJuYWxfdCogbWFpbl90aHJlYWQgPSBfX2dldF90aHJlYWQoKTsKLSAgX3B0aHJlYWRfaW50ZXJuYWxfYWRkKG1haW5fdGhyZWFkKTsKKyAgX19wdGhyZWFkX2ludGVybmFsX2FkZChtYWluX3RocmVhZCk7CiAKICAgX19zeXN0ZW1fcHJvcGVydGllc19pbml0KCk7IC8vIFJlcXVpcmVzICdlbnZpcm9uJy4KIApAQCAtMTI5LDMzICsxMjgsMzQgQEAKICAqIGVudHJ5IGluIHRoZSBsaXN0IGhhcyB2YWx1ZSAtMSwgdGhlIGxhc3Qgb25lIGhhcyB2YWx1ZSAwLgogICovCiB2b2lkIF9fbGliY19maW5pKHZvaWQqIGFycmF5KSB7Ci0gIHZvaWQqKiBmaW5pX2FycmF5ID0gcmVpbnRlcnByZXRfY2FzdDx2b2lkKio+KGFycmF5KTsKLSAgY29uc3Qgc2l6ZV90IG1pbnVzMSA9IH4oc2l6ZV90KTA7IC8qIGVuc3VyZSBwcm9wZXIgc2lnbiBleHRlbnNpb24gKi8KKyAgdHlwZWRlZiB2b2lkICgqRHRvcikoKTsKKyAgRHRvciogZmluaV9hcnJheSA9IHJlaW50ZXJwcmV0X2Nhc3Q8RHRvcio+KGFycmF5KTsKKyAgY29uc3QgRHRvciBtaW51czEgPSByZWludGVycHJldF9jYXN0PER0b3I+KHN0YXRpY19jYXN0PHVpbnRwdHJfdD4oLTEpKTsKIAotICAvKiBTYW5pdHkgY2hlY2sgLSBmaXJzdCBlbnRyeSBtdXN0IGJlIC0xICovCi0gIGlmIChhcnJheSA9PSBOVUxMIHx8IChzaXplX3QpZmluaV9hcnJheVswXSAhPSBtaW51czEpIHsKKyAgLy8gU2FuaXR5IGNoZWNrIC0gZmlyc3QgZW50cnkgbXVzdCBiZSAtMS4KKyAgaWYgKGFycmF5ID09IE5VTEwgfHwgZmluaV9hcnJheVswXSAhPSBtaW51czEpIHsKICAgICByZXR1cm47CiAgIH0KIAotICAvKiBza2lwIG92ZXIgaXQgKi8KKyAgLy8gU2tpcCBvdmVyIGl0LgogICBmaW5pX2FycmF5ICs9IDE7CiAKLSAgLyogQ291bnQgdGhlIG51bWJlciBvZiBkZXN0cnVjdG9ycy4gKi8KKyAgLy8gQ291bnQgdGhlIG51bWJlciBvZiBkZXN0cnVjdG9ycy4KICAgaW50IGNvdW50ID0gMDsKICAgd2hpbGUgKGZpbmlfYXJyYXlbY291bnRdICE9IE5VTEwpIHsKICAgICArK2NvdW50OwogICB9CiAKLSAgLyogTm93IGNhbGwgZWFjaCBkZXN0cnVjdG9yIGluIHJldmVyc2Ugb3JkZXIuICovCisgIC8vIE5vdyBjYWxsIGVhY2ggZGVzdHJ1Y3RvciBpbiByZXZlcnNlIG9yZGVyLgogICB3aGlsZSAoY291bnQgPiAwKSB7Ci0gICAgdm9pZCAoKmZ1bmMpKCkgPSAodm9pZCAoKikoKSkgZmluaV9hcnJheVstLWNvdW50XTsKKyAgICBEdG9yIGR0b3IgPSBmaW5pX2FycmF5Wy0tY291bnRdOwogCi0gICAgLyogU2FuaXR5IGNoZWNrLCBhbnkgLTEgaW4gdGhlIGxpc3QgaXMgaWdub3JlZCAqLwotICAgIGlmICgoc2l6ZV90KWZ1bmMgPT0gbWludXMxKSB7CisgICAgLy8gU2FuaXR5IGNoZWNrLCBhbnkgLTEgaW4gdGhlIGxpc3QgaXMgaWdub3JlZC4KKyAgICBpZiAoZHRvciA9PSBtaW51czEpIHsKICAgICAgIGNvbnRpbnVlOwogICAgIH0KIAotICAgIGZ1bmMoKTsKKyAgICBkdG9yKCk7CiAgIH0KIAogI2lmbmRlZiBMSUJDX1NUQVRJQwpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvbGliY19sb2dnaW5nLmNwcCBiL2xpYmMvYmlvbmljL2xpYmNfbG9nZ2luZy5jcHAKaW5kZXggNTY1NTUyNi4uY2IwYjMzNCAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvbGliY19sb2dnaW5nLmNwcAorKysgYi9saWJjL2Jpb25pYy9saWJjX2xvZ2dpbmcuY3BwCkBAIC01Niw2ICs1Niw3IEBACiAgIEVWRU5UX1RZUEVfTE9ORyAgICAgPSAxLAogICBFVkVOVF9UWVBFX1NUUklORyAgID0gMiwKICAgRVZFTlRfVFlQRV9MSVNUICAgICA9IDMsCisgIEVWRU5UX1RZUEVfRkxPQVQgICAgPSA0LAogfTsKIAogc3RydWN0IEJ1ZmZlck91dHB1dFN0cmVhbSB7CkBAIC03NSwxMCArNzYsMTIgQEAKICAgICAgIGxlbiA9IHN0cmxlbihkYXRhKTsKICAgICB9CiAKKyAgICB0b3RhbCArPSBsZW47CisKICAgICB3aGlsZSAobGVuID4gMCkgewogICAgICAgaW50IGF2YWlsID0gZW5kXyAtIHBvc187CiAgICAgICBpZiAoYXZhaWwgPT0gMCkgewotICAgICAgICBicmVhazsKKyAgICAgICAgcmV0dXJuOwogICAgICAgfQogICAgICAgaWYgKGF2YWlsID4gbGVuKSB7CiAgICAgICAgIGF2YWlsID0gbGVuOwpAQCAtODcsMTEgKzkwLDEwIEBACiAgICAgICBwb3NfICs9IGF2YWlsOwogICAgICAgcG9zX1swXSA9ICdcMCc7CiAgICAgICBsZW4gLT0gYXZhaWw7Ci0gICAgICB0b3RhbCArPSBhdmFpbDsKICAgICB9CiAgIH0KIAotICBpbnQgdG90YWw7CisgIHNpemVfdCB0b3RhbDsKIAogIHByaXZhdGU6CiAgIGNoYXIqIGJ1ZmZlcl87CkBAIC0xMDksMTggKzExMSwxOSBAQAogICAgICAgbGVuID0gc3RybGVuKGRhdGEpOwogICAgIH0KIAorICAgIHRvdGFsICs9IGxlbjsKKwogICAgIHdoaWxlIChsZW4gPiAwKSB7CiAgICAgICBpbnQgcmMgPSBURU1QX0ZBSUxVUkVfUkVUUlkod3JpdGUoZmRfLCBkYXRhLCBsZW4pKTsKICAgICAgIGlmIChyYyA9PSAtMSkgewotICAgICAgICBicmVhazsKKyAgICAgICAgcmV0dXJuOwogICAgICAgfQogICAgICAgZGF0YSArPSByYzsKICAgICAgIGxlbiAtPSByYzsKLSAgICAgIHRvdGFsICs9IHJjOwogICAgIH0KICAgfQogCi0gIGludCB0b3RhbDsKKyAgc2l6ZV90IHRvdGFsOwogCiAgcHJpdmF0ZToKICAgaW50IGZkXzsKQEAgLTQyNSw3ICs0MjgsNyBAQAogfQogCiBzdGF0aWMgaW50IF9fbGliY193cml0ZV9zdGRlcnIoY29uc3QgY2hhciogdGFnLCBjb25zdCBjaGFyKiBtc2cpIHsKLSAgaW50IGZkID0gVEVNUF9GQUlMVVJFX1JFVFJZKG9wZW4oIi9kZXYvc3RkZXJyIiwgT19DTE9FWEVDIHwgT19XUk9OTFkpKTsKKyAgaW50IGZkID0gVEVNUF9GQUlMVVJFX1JFVFJZKG9wZW4oIi9kZXYvc3RkZXJyIiwgT19DTE9FWEVDIHwgT19XUk9OTFkgfCBPX0FQUEVORCkpOwogICBpZiAoZmQgPT0gLTEpIHsKICAgICByZXR1cm4gLTE7CiAgIH0KQEAgLTQzNiw3ICs0MzksNyBAQAogICB2ZWNbMV0uaW92X2Jhc2UgPSBjb25zdF9jYXN0PGNoYXIqPigiOiAiKTsKICAgdmVjWzFdLmlvdl9sZW4gPSAyOwogICB2ZWNbMl0uaW92X2Jhc2UgPSBjb25zdF9jYXN0PGNoYXIqPihtc2cpOwotICB2ZWNbMl0uaW92X2xlbiA9IHN0cmxlbihtc2cpICsgMTsKKyAgdmVjWzJdLmlvdl9sZW4gPSBzdHJsZW4obXNnKTsKICAgdmVjWzNdLmlvdl9iYXNlID0gY29uc3RfY2FzdDxjaGFyKj4oIlxuIik7CiAgIHZlY1szXS5pb3ZfbGVuID0gMTsKIApAQCAtNDQ2LDggKzQ0OSw3IEBACiB9CiAKICNpZmRlZiBUQVJHRVRfVVNFU19MT0dECi1zdGF0aWMgaW50IF9fbGliY19vcGVuX2xvZ19zb2NrZXQoKQoteworc3RhdGljIGludCBfX2xpYmNfb3Blbl9sb2dfc29ja2V0KCkgewogICAvLyBUb0RvOiBJZGVhbGx5IHdlIHdhbnQgdGhpcyB0byBmYWlsIGlmIHRoZSBnaWQgb2YgdGhlIGN1cnJlbnQKICAgLy8gcHJvY2VzcyBpcyBBSURfTE9HRCwgYnV0IHdpbGwgaGF2ZSB0byB3YWl0IHVudGlsIHdlIGhhdmUKICAgLy8gcmVnaXN0ZXJlZCB0aGlzIGluIHByaXZhdGUvYW5kcm9pZF9maWxlc3lzdGVtX2NvbmZpZy5oLiBXZSBoYXZlCkBAIC00ODksNyArNDkxLDYgQEAKIHN0YXRpYyBpbnQgX19saWJjX3dyaXRlX2xvZyhpbnQgcHJpb3JpdHksIGNvbnN0IGNoYXIqIHRhZywgY29uc3QgY2hhciogbXNnKSB7CiAjaWZkZWYgVEFSR0VUX1VTRVNfTE9HRAogICBpbnQgbWFpbl9sb2dfZmQgPSBfX2xpYmNfb3Blbl9sb2dfc29ja2V0KCk7Ci0KICAgaWYgKG1haW5fbG9nX2ZkID09IC0xKSB7CiAgICAgLy8gVHJ5IHN0ZGVyciBpbnN0ZWFkLgogICAgIHJldHVybiBfX2xpYmNfd3JpdGVfc3RkZXJyKHRhZywgbXNnKTsKQEAgLTYxMiw3ICs2MTMsNyBAQAogICBpZiAodGFnICE9IDApIHsKICAgICBfX2xpYmNfYW5kcm9pZF9sb2dfZXZlbnRfdWlkKHRhZyk7CiAgIH0KLSAgX19saWJjX2ZhdGFsKCJGT1JUSUZZX1NPVVJDRTogJXMuIENhbGxpbmcgYWJvcnQoKS4iLCBtc2cpOworICBfX2xpYmNfZmF0YWwoIkZPUlRJRlk6ICVzIiwgbXNnKTsKIH0KIAogc3RhdGljIHZvaWQgX19saWJjX2ZhdGFsKGNvbnN0IGNoYXIqIGZvcm1hdCwgdmFfbGlzdCBhcmdzKSB7CkBAIC02MjAsMTIgKzYyMSwxMiBAQAogICBCdWZmZXJPdXRwdXRTdHJlYW0gb3MobXNnLCBzaXplb2YobXNnKSk7CiAgIG91dF92Zm9ybWF0KG9zLCBmb3JtYXQsIGFyZ3MpOwogCi0gIC8vIGxvZyB0byBzdGRlcnIgZm9yIHRoZSBiZW5lZml0IG9mICJhZGIgc2hlbGwiIHVzZXJzLgorICAvLyBMb2cgdG8gc3RkZXJyIGZvciB0aGUgYmVuZWZpdCBvZiAiYWRiIHNoZWxsIiB1c2Vycy4KICAgc3RydWN0IGlvdmVjIGlvdlsyXSA9IHsKLSAgICB7bXNnLCBzdHJsZW4obXNnKX0sCi0gICAge2NvbnN0X2Nhc3Q8dm9pZCo+KHN0YXRpY19jYXN0PGNvbnN0IHZvaWQqPigiXG4iKSksIDF9LAorICAgIHsgbXNnLCBvcy50b3RhbCB9LAorICAgIHsgY29uc3RfY2FzdDxjaGFyKj4oIlxuIiksIDEgfSwKICAgfTsKLSAgd3JpdGV2KDIsIGlvdiwgMik7CisgIFRFTVBfRkFJTFVSRV9SRVRSWSh3cml0ZXYoMiwgaW92LCAyKSk7CiAKICAgLy8gTG9nIHRvIHRoZSBsb2cgZm9yIHRoZSBiZW5lZml0IG9mIHJlZ3VsYXIgYXBwIGRldmVsb3BlcnMgKHdob3NlIHN0ZG91dCBhbmQgc3RkZXJyIGFyZSBjbG9zZWQpLgogICBfX2xpYmNfd3JpdGVfbG9nKEFORFJPSURfTE9HX0ZBVEFMLCAibGliYyIsIG1zZyk7CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9saWJnZW4uY3BwIGIvbGliYy9iaW9uaWMvbGliZ2VuLmNwcAppbmRleCBiOThmNTA0Li4yZjI5ZDdiIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9saWJnZW4uY3BwCisrKyBiL2xpYmMvYmlvbmljL2xpYmdlbi5jcHAKQEAgLTM2LDYgKzM2LDkgQEAKIAogI2luY2x1ZGUgInByaXZhdGUvVGhyZWFkTG9jYWxCdWZmZXIuaCIKIAorc3RhdGljIFRocmVhZExvY2FsQnVmZmVyPGNoYXIsIE1BWFBBVEhMRU4+IGdfYmFzZW5hbWVfdGxzX2J1ZmZlcjsKK3N0YXRpYyBUaHJlYWRMb2NhbEJ1ZmZlcjxjaGFyLCBNQVhQQVRITEVOPiBnX2Rpcm5hbWVfdGxzX2J1ZmZlcjsKKwogX19MSUJDNjRfSElEREVOX18gaW50IGJhc2VuYW1lX3IoY29uc3QgY2hhciogcGF0aCwgY2hhciogYnVmZmVyLCBzaXplX3QgYnVmZmVyX3NpemUpIHsKICAgY29uc3QgY2hhciogc3RhcnRwID0gTlVMTDsKICAgY29uc3QgY2hhciogZW5kcCA9IE5VTEw7CkBAIC0xNDcsMTcgKzE1MCwxNCBAQAogICByZXR1cm4gcmVzdWx0OwogfQogCi1HTE9CQUxfSU5JVF9USFJFQURfTE9DQUxfQlVGRkVSKGJhc2VuYW1lKTsKLUdMT0JBTF9JTklUX1RIUkVBRF9MT0NBTF9CVUZGRVIoZGlybmFtZSk7Ci0KIGNoYXIqIGJhc2VuYW1lKGNvbnN0IGNoYXIqIHBhdGgpIHsKLSAgTE9DQUxfSU5JVF9USFJFQURfTE9DQUxfQlVGRkVSKGNoYXIqLCBiYXNlbmFtZSwgTUFYUEFUSExFTik7Ci0gIGludCByYyA9IGJhc2VuYW1lX3IocGF0aCwgYmFzZW5hbWVfdGxzX2J1ZmZlciwgYmFzZW5hbWVfdGxzX2J1ZmZlcl9zaXplKTsKLSAgcmV0dXJuIChyYyA8IDApID8gTlVMTCA6IGJhc2VuYW1lX3Rsc19idWZmZXI7CisgIGNoYXIqIGJ1ZiA9IGdfYmFzZW5hbWVfdGxzX2J1ZmZlci5nZXQoKTsKKyAgaW50IHJjID0gYmFzZW5hbWVfcihwYXRoLCBidWYsIGdfYmFzZW5hbWVfdGxzX2J1ZmZlci5zaXplKCkpOworICByZXR1cm4gKHJjIDwgMCkgPyBOVUxMIDogYnVmOwogfQogCiBjaGFyKiBkaXJuYW1lKGNvbnN0IGNoYXIqIHBhdGgpIHsKLSAgTE9DQUxfSU5JVF9USFJFQURfTE9DQUxfQlVGRkVSKGNoYXIqLCBkaXJuYW1lLCBNQVhQQVRITEVOKTsKLSAgaW50IHJjID0gZGlybmFtZV9yKHBhdGgsIGRpcm5hbWVfdGxzX2J1ZmZlciwgZGlybmFtZV90bHNfYnVmZmVyX3NpemUpOwotICByZXR1cm4gKHJjIDwgMCkgPyBOVUxMIDogZGlybmFtZV90bHNfYnVmZmVyOworICBjaGFyKiBidWYgPSBnX2Rpcm5hbWVfdGxzX2J1ZmZlci5nZXQoKTsKKyAgaW50IHJjID0gZGlybmFtZV9yKHBhdGgsIGJ1ZiwgZ19kaXJuYW1lX3Rsc19idWZmZXIuc2l6ZSgpKTsKKyAgcmV0dXJuIChyYyA8IDApID8gTlVMTCA6IGJ1ZjsKIH0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL2xvY2FsZS5jcHAgYi9saWJjL2Jpb25pYy9sb2NhbGUuY3BwCmluZGV4IGRkYjQ5Y2UuLmI0MmI0NDAgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL2xvY2FsZS5jcHAKKysrIGIvbGliYy9iaW9uaWMvbG9jYWxlLmNwcApAQCAtMjYsOSArMjYsMTQgQEAKICAqIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPGxvY2FsZS5oPgogI2luY2x1ZGUgPHB0aHJlYWQuaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdHJpbmdzLmg+CisjaW5jbHVkZSA8dGltZS5oPgorI2luY2x1ZGUgPHdjaGFyLmg+CiAKICNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19tYWNyb3MuaCIKIApAQCAtNTMsMTUgKzU4LDE4IEBACiAgIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihfX2xvY2FsZV90KTsKIH07CiAKK3NpemVfdCBfX2N0eXBlX2dldF9tYl9jdXJfbWF4KCkgeworICBsb2NhbGVfdCBsID0gdXNlbG9jYWxlKE5VTEwpOworICBpZiAobCA9PSBMQ19HTE9CQUxfTE9DQUxFKSB7CisgICAgcmV0dXJuIF9fYmlvbmljX2N1cnJlbnRfbG9jYWxlX2lzX3V0ZjggPyA0IDogMTsKKyAgfSBlbHNlIHsKKyAgICByZXR1cm4gbC0+bWJfY3VyX21heDsKKyAgfQorfQorCiBzdGF0aWMgcHRocmVhZF9vbmNlX3QgZ19sb2NhbGVfb25jZSA9IFBUSFJFQURfT05DRV9JTklUOwogc3RhdGljIGxjb252IGdfbG9jYWxlOwogCi0vLyBXZSBkb24ndCB1c2UgcHRocmVhZF9vbmNlIGZvciB0aGlzIHNvIHRoYXQgd2Uga25vdyB3aGVuIHRoZSByZXNvdXJjZSAoYSBUTFMgc2xvdCkgd2lsbCBiZSB0YWtlbi4KLXN0YXRpYyBwdGhyZWFkX2tleV90IGdfdXNlbG9jYWxlX2tleTsKLV9fYXR0cmlidXRlX18oKGNvbnN0cnVjdG9yKSkgc3RhdGljIHZvaWQgX19iaW9uaWNfdGxzX3VzZWxvY2FsZV9rZXlfaW5pdCgpIHsKLSAgcHRocmVhZF9rZXlfY3JlYXRlKCZnX3VzZWxvY2FsZV9rZXksIE5VTEwpOwotfQotCiBzdGF0aWMgdm9pZCBfX2xvY2FsZV9pbml0KCkgewogICBnX2xvY2FsZS5kZWNpbWFsX3BvaW50ID0gY29uc3RfY2FzdDxjaGFyKj4oIi4iKTsKIApAQCAtOTIsMTUgKzEwMCw2IEBACiAgIGdfbG9jYWxlLmludF9uX3NpZ25fcG9zbiA9IENIQVJfTUFYOwogfQogCi1zaXplX3QgX19jdHlwZV9nZXRfbWJfY3VyX21heCgpIHsKLSAgbG9jYWxlX3QgbCA9IHJlaW50ZXJwcmV0X2Nhc3Q8bG9jYWxlX3Q+KHB0aHJlYWRfZ2V0c3BlY2lmaWMoZ191c2Vsb2NhbGVfa2V5KSk7Ci0gIGlmIChsID09IG51bGxwdHIgfHwgbCA9PSBMQ19HTE9CQUxfTE9DQUxFKSB7Ci0gICAgcmV0dXJuIF9fYmlvbmljX2N1cnJlbnRfbG9jYWxlX2lzX3V0ZjggPyA0IDogMTsKLSAgfSBlbHNlIHsKLSAgICByZXR1cm4gbC0+bWJfY3VyX21heDsKLSAgfQotfQotCiBzdGF0aWMgYm9vbCBfX2lzX3N1cHBvcnRlZF9sb2NhbGUoY29uc3QgY2hhciogbG9jYWxlKSB7CiAgIHJldHVybiAoc3RyY21wKGxvY2FsZSwgIiIpID09IDAgfHwKICAgICAgICAgICBzdHJjbXAobG9jYWxlLCAiQyIpID09IDAgfHwKQEAgLTEyMyw4ICsxMjIsOCBAQAogfQogCiBsb2NhbGVfdCBuZXdsb2NhbGUoaW50IGNhdGVnb3J5X21hc2ssIGNvbnN0IGNoYXIqIGxvY2FsZV9uYW1lLCBsb2NhbGVfdCAvKmJhc2UqLykgewotICAvLyBJcyAnY2F0ZWdvcnlfbWFzaycgdmFsaWQ/Ci0gIGlmICgoY2F0ZWdvcnlfbWFzayAmIH5MQ19BTExfTUFTSykgIT0gMCkgeworICAvLyBBcmUgJ2NhdGVnb3J5X21hc2snIGFuZCAnbG9jYWxlX25hbWUnIHZhbGlkPworICBpZiAoKGNhdGVnb3J5X21hc2sgJiB+TENfQUxMX01BU0spICE9IDAgfHwgbG9jYWxlX25hbWUgPT0gTlVMTCkgewogICAgIGVycm5vID0gRUlOVkFMOwogICAgIHJldHVybiBOVUxMOwogICB9CkBAIC0xNTcsNyArMTU2LDE2IEBACiAgIHJldHVybiBjb25zdF9jYXN0PGNoYXIqPihfX2Jpb25pY19jdXJyZW50X2xvY2FsZV9pc191dGY4ID8gIkMuVVRGLTgiIDogIkMiKTsKIH0KIAorLy8gV2UgY2FuJ3QgdXNlIGEgY29uc3RydWN0b3IgdG8gY3JlYXRlIGdfdXNlbG9jYWxfa2V5LCBiZWNhdXNlIGl0IG1heSBiZSB1c2VkIGluIGNvbnN0cnVjdG9ycy4KK3N0YXRpYyBwdGhyZWFkX29uY2VfdCBnX3VzZWxvY2FsZV9vbmNlID0gUFRIUkVBRF9PTkNFX0lOSVQ7CitzdGF0aWMgcHRocmVhZF9rZXlfdCBnX3VzZWxvY2FsZV9rZXk7CisKK3N0YXRpYyB2b2lkIGdfdXNlbG9jYWxlX2tleV9pbml0KCkgeworICBwdGhyZWFkX2tleV9jcmVhdGUoJmdfdXNlbG9jYWxlX2tleSwgTlVMTCk7Cit9CisKIGxvY2FsZV90IHVzZWxvY2FsZShsb2NhbGVfdCBuZXdfbG9jYWxlKSB7CisgIHB0aHJlYWRfb25jZSgmZ191c2Vsb2NhbGVfb25jZSwgZ191c2Vsb2NhbGVfa2V5X2luaXQpOwogICBsb2NhbGVfdCBvbGRfbG9jYWxlID0gc3RhdGljX2Nhc3Q8bG9jYWxlX3Q+KHB0aHJlYWRfZ2V0c3BlY2lmaWMoZ191c2Vsb2NhbGVfa2V5KSk7CiAKICAgLy8gSWYgdGhpcyBpcyB0aGUgZmlyc3QgY2FsbCB0byB1c2Vsb2NhbGUoMykgb24gdGhpcyB0aHJlYWQsIHdlIHJldHVybiBMQ19HTE9CQUxfTE9DQUxFLgpAQCAtMTcxLDMgKzE3OSw0NyBAQAogCiAgIHJldHVybiBvbGRfbG9jYWxlOwogfQorCitpbnQgc3RyY2FzZWNtcF9sKGNvbnN0IGNoYXIqIHMxLCBjb25zdCBjaGFyKiBzMiwgbG9jYWxlX3QpIHsKKyAgcmV0dXJuIHN0cmNhc2VjbXAoczEsIHMyKTsKK30KKworaW50IHN0cmNvbGxfbChjb25zdCBjaGFyKiBzMSwgY29uc3QgY2hhciogczIsIGxvY2FsZV90KSB7CisgIHJldHVybiBzdHJjb2xsKHMxLCBzMik7Cit9CisKK2NoYXIqIHN0cmVycm9yX2woaW50IGVycm9yLCBsb2NhbGVfdCkgeworICByZXR1cm4gc3RyZXJyb3IoZXJyb3IpOworfQorCitzaXplX3Qgc3RyZnRpbWVfbChjaGFyKiBzLCBzaXplX3QgbWF4LCBjb25zdCBjaGFyKiBmb3JtYXQsIGNvbnN0IHN0cnVjdCB0bSogdG0sIGxvY2FsZV90KSB7CisgIHJldHVybiBzdHJmdGltZShzLCBtYXgsIGZvcm1hdCwgdG0pOworfQorCitpbnQgc3RybmNhc2VjbXBfbChjb25zdCBjaGFyKiBzMSwgY29uc3QgY2hhciogczIsIHNpemVfdCBuLCBsb2NhbGVfdCkgeworICByZXR1cm4gc3RybmNhc2VjbXAoczEsIHMyLCBuKTsKK30KKworbG9uZyBkb3VibGUgc3RydG9sZF9sKGNvbnN0IGNoYXIqIHMsIGNoYXIqKiBlbmRfcHRyLCBsb2NhbGVfdCkgeworICByZXR1cm4gc3RydG9sZChzLCBlbmRfcHRyKTsKK30KKworbG9uZyBsb25nIHN0cnRvbGxfbChjb25zdCBjaGFyKiBzLCBjaGFyKiogZW5kX3B0ciwgaW50IGJhc2UsIGxvY2FsZV90KSB7CisgIHJldHVybiBzdHJ0b2xsKHMsIGVuZF9wdHIsIGJhc2UpOworfQorCit1bnNpZ25lZCBsb25nIGxvbmcgc3RydG91bGxfbChjb25zdCBjaGFyKiBzLCBjaGFyKiogZW5kX3B0ciwgaW50IGJhc2UsIGxvY2FsZV90KSB7CisgIHJldHVybiBzdHJ0b3VsbChzLCBlbmRfcHRyLCBiYXNlKTsKK30KKworc2l6ZV90IHN0cnhmcm1fbChjaGFyKiBkc3QsIGNvbnN0IGNoYXIqIHNyYywgc2l6ZV90IG4sIGxvY2FsZV90KSB7CisgIHJldHVybiBzdHJ4ZnJtKGRzdCwgc3JjLCBuKTsKK30KKworaW50IHdjc2Nhc2VjbXBfbChjb25zdCB3Y2hhcl90KiB3czEsIGNvbnN0IHdjaGFyX3QqIHdzMiwgbG9jYWxlX3QpIHsKKyAgcmV0dXJuIHdjc2Nhc2VjbXAod3MxLCB3czIpOworfQorCitpbnQgd2NzbmNhc2VjbXBfbChjb25zdCB3Y2hhcl90KiB3czEsIGNvbnN0IHdjaGFyX3QqIHdzMiwgc2l6ZV90IG4sIGxvY2FsZV90KSB7CisgIHJldHVybiB3Y3NuY2FzZWNtcCh3czEsIHdzMiwgbik7Cit9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9tYWxsb2NfZGVidWdfY29tbW9uLmNwcCBiL2xpYmMvYmlvbmljL21hbGxvY19kZWJ1Z19jb21tb24uY3BwCmluZGV4IDBiNmExNDIuLmVlNzk2YzYgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL21hbGxvY19kZWJ1Z19jb21tb24uY3BwCisrKyBiL2xpYmMvYmlvbmljL21hbGxvY19kZWJ1Z19jb21tb24uY3BwCkBAIC0yOSwxOSArMjksMTkgQEAKIC8vIENvbnRhaW5zIGRlZmluaXRpb24gb2Ygc3RydWN0dXJlcywgZ2xvYmFsIHZhcmlhYmxlcywgYW5kIGltcGxlbWVudGF0aW9uIG9mCiAvLyByb3V0aW5lcyB0aGF0IGFyZSB1c2VkIGJ5IG1hbGxvYyBsZWFrIGRldGVjdGlvbiBjb2RlIGFuZCBvdGhlciBjb21wb25lbnRzIGluCiAvLyB0aGUgc3lzdGVtLiBUaGUgdHJpY2sgaXMgdGhhdCBzb21lIGNvbXBvbmVudHMgZXhwZWN0IHRoZXNlIGRhdGEgYW5kCi0vLyByb3V0aW5lcyB0byBiZSBkZWZpbmVkIC8gaW1wbGVtZW50ZWQgaW4gbGliYy5zbyBsaWJyYXJ5LCByZWdhcmRsZXNzCi0vLyB3aGV0aGVyIG9yIG5vdCBNQUxMT0NfTEVBS19DSEVDSyBtYWNybyBpcyBkZWZpbmVkLiBUbyBtYWtlIHRoaW5ncyBldmVuCi0vLyBtb3JlIHRyaWNreSwgbWFsbG9jIGxlYWsgZGV0ZWN0aW9uIGNvZGUsIGltcGxlbWVudGVkIGluCi0vLyBsaWJjX21hbGxvY19kZWJ1Zy5zbyBhbHNvIHJlcXVpcmVzIGFjY2VzcyB0byB0aGVzZSB2YXJpYWJsZXMgYW5kIHJvdXRpbmVzCi0vLyAodG8gZmlsbCBhbGxvY2F0aW9uIGVudHJ5IGhhc2ggdGFibGUsIGZvciBleGFtcGxlKS4gU28sIGFsbCByZWxldmFudAotLy8gdmFyaWFibGVzIGFuZCByb3V0aW5lcyBhcmUgZGVmaW5lZCAvIGltcGxlbWVudGVkIGhlcmUgYW5kIGV4cG9ydGVkCi0vLyB0byBhbGwsIGxlYWsgZGV0ZWN0aW9uIGNvZGUgYW5kIG90aGVyIGNvbXBvbmVudHMgdmlhIGR5bmFtaWMgKGxpYmMuc28pLAotLy8gb3Igc3RhdGljIChsaWJjLmEpIGxpbmtpbmcuCisvLyByb3V0aW5lcyB0byBiZSBkZWZpbmVkIC8gaW1wbGVtZW50ZWQgaW4gbGliYy5zbywgcmVnYXJkbGVzcyB3aGV0aGVyIG9yIG5vdAorLy8gbWFsbG9jIGxlYWsgZGV0ZWN0aW9uIGNvZGUgaXMgZ29pbmcgdG8gcnVuLiBUbyBtYWtlIHRoaW5ncyBldmVuIG1vcmUgdHJpY2t5LAorLy8gbWFsbG9jIGxlYWsgZGV0ZWN0aW9uIGNvZGUsIGltcGxlbWVudGVkIGluIGxpYmNfbWFsbG9jX2RlYnVnLnNvIGFsc28KKy8vIHJlcXVpcmVzIGFjY2VzcyB0byB0aGVzZSB2YXJpYWJsZXMgYW5kIHJvdXRpbmVzICh0byBmaWxsIGFsbG9jYXRpb24gZW50cnkKKy8vIGhhc2ggdGFibGUsIGZvciBleGFtcGxlKS4gU28sIGFsbCByZWxldmFudCB2YXJpYWJsZXMgYW5kIHJvdXRpbmVzIGFyZQorLy8gZGVmaW5lZCAvIGltcGxlbWVudGVkIGhlcmUgYW5kIGV4cG9ydGVkIHRvIGFsbCwgbGVhayBkZXRlY3Rpb24gY29kZSBhbmQKKy8vIG90aGVyIGNvbXBvbmVudHMgdmlhIGR5bmFtaWMgKGxpYmMuc28pLCBvciBzdGF0aWMgKGxpYmMuYSkgbGlua2luZy4KIAogI2luY2x1ZGUgIm1hbGxvY19kZWJ1Z19jb21tb24uaCIKIAogI2luY2x1ZGUgPHB0aHJlYWQuaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4KIAogI2luY2x1ZGUgInByaXZhdGUvU2NvcGVkUHRocmVhZE11dGV4TG9ja2VyLmgiCkBAIC00MDIsNyArNDAyLDcgQEAKICAgfQogCiAgIC8vIExvYWQgLnNvIHRoYXQgaW1wbGVtZW50cyB0aGUgcmVxdWlyZWQgbWFsbG9jIGRlYnVnZ2luZyBmdW5jdGlvbmFsaXR5LgotICB2b2lkKiBtYWxsb2NfaW1wbF9oYW5kbGUgPSBkbG9wZW4oc29fbmFtZSwgUlRMRF9MQVpZKTsKKyAgdm9pZCogbWFsbG9jX2ltcGxfaGFuZGxlID0gZGxvcGVuKHNvX25hbWUsIFJUTERfTk9XKTsKICAgaWYgKG1hbGxvY19pbXBsX2hhbmRsZSA9PSBOVUxMKSB7CiAgICAgZXJyb3JfbG9nKCIlczogTWlzc2luZyBtb2R1bGUgJXMgcmVxdWlyZWQgZm9yIG1hbGxvYyBkZWJ1ZyBsZXZlbCAlZDogJXMiLAogICAgICAgICAgICAgICBnZXRwcm9nbmFtZSgpLCBzb19uYW1lLCBnX21hbGxvY19kZWJ1Z19sZXZlbCwgZGxlcnJvcigpKTsKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL21hbGxvY19kZWJ1Z19sZWFrLmNwcCBiL2xpYmMvYmlvbmljL21hbGxvY19kZWJ1Z19sZWFrLmNwcAppbmRleCBkZjBmOTk3Li42NGYyMTEyIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9tYWxsb2NfZGVidWdfbGVhay5jcHAKKysrIGIvbGliYy9iaW9uaWMvbWFsbG9jX2RlYnVnX2xlYWsuY3BwCkBAIC01NSwxMyArNTUsNiBAQAogI2luY2x1ZGUgInByaXZhdGUvbGliY19sb2dnaW5nLmgiCiAjaW5jbHVkZSAicHJpdmF0ZS9TY29wZWRQdGhyZWFkTXV0ZXhMb2NrZXIuaCIKIAotLy8gVGhpcyBmaWxlIHNob3VsZCBiZSBpbmNsdWRlZCBpbnRvIHRoZSBidWlsZCBvbmx5IHdoZW4KLS8vIE1BTExPQ19MRUFLX0NIRUNLLCBvciBNQUxMT0NfUUVNVV9JTlNUUlVNRU5ULCBvciBib3RoCi0vLyBtYWNyb3MgYXJlIGRlZmluZWQuCi0jaWZuZGVmIE1BTExPQ19MRUFLX0NIRUNLCi0jZXJyb3IgTUFMTE9DX0xFQUtfQ0hFQ0sgaXMgbm90IGRlZmluZWQuCi0jZW5kaWYgIC8vICFNQUxMT0NfTEVBS19DSEVDSwotCiBleHRlcm4gaW50IGdNYWxsb2NMZWFrWnlnb3RlQ2hpbGQ7CiBleHRlcm4gSGFzaFRhYmxlKiBnX2hhc2hfdGFibGU7CiBleHRlcm4gY29uc3QgTWFsbG9jRGVidWcqIGdfbWFsbG9jX2Rpc3BhdGNoOwpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvbWFsbG9jX2RlYnVnX3FlbXUuY3BwIGIvbGliYy9iaW9uaWMvbWFsbG9jX2RlYnVnX3FlbXUuY3BwCmluZGV4IGIzYjYwNGQuLmZhNDBiMzUgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL21hbGxvY19kZWJ1Z19xZW11LmNwcAorKysgYi9saWJjL2Jpb25pYy9tYWxsb2NfZGVidWdfcWVtdS5jcHAKQEAgLTQ1LDYgKzQ1LDcgQEAKICNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNsdWRlIDxzdGRkZWYuaD4KICNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPGZjbnRsLmg+CiAjaW5jbHVkZSA8c3lzL21tYW4uaD4KICNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KQEAgLTYwNiw3ICs2MDcsNyBAQAogICAgICAqIHRoZSBtZW1vcnkgbWFwcGVkIHNwYWNlcyBpbnRvIHdyaXRlcyB0byBhbiBJL08gcG9ydCB0aGF0IGVtdWxhdG9yCiAgICAgICogImxpc3RlbnMgdG8iIG9uIHRoZSBvdGhlciBlbmQuIE5vdGUgdGhhdCB1bnRpbCB3ZSBvcGVuIGFuZCBtYXAgdGhhdAogICAgICAqIGRldmljZSwgbG9nZ2luZyB0byBlbXVsYXRvcidzIHN0ZG91dCB3aWxsIG5vdCBiZSBhdmFpbGFibGUuICovCi0gICAgaW50IGZkID0gb3BlbigiL2Rldi9xZW11X3RyYWNlIiwgT19SRFdSKTsKKyAgICBpbnQgZmQgPSBvcGVuKCIvZGV2L3FlbXVfdHJhY2UiLCBPX0NMT0VYRUMgfCBPX1JEV1IpOwogICAgIGlmIChmZCA8IDApIHsKICAgICAgICAgZXJyb3JfbG9nKCJVbmFibGUgdG8gb3BlbiAvZGV2L3FlbXVfdHJhY2UiKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvbWFsbG9jX2luZm8uY3BwIGIvbGliYy9iaW9uaWMvbWFsbG9jX2luZm8uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk5Y2FlZGIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2Jpb25pYy9tYWxsb2NfaW5mby5jcHAKQEAgLTAsMCArMSw5NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlICJtYWxsb2NfaW5mby5oIgorCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19tYWNyb3MuaCIKKworY2xhc3MgX19MSUJDX0hJRERFTl9fIEVsZW0geworcHVibGljOgorICAvLyBuYW1lIG11c3QgYmUgdmFsaWQgdGhyb3VnaG91dCBsaWZldGltZSBvZiB0aGUgb2JqZWN0LgorICBleHBsaWNpdCBFbGVtKEZJTEUqIGZwLCBjb25zdCBjaGFyKiBuYW1lLAorICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGF0dHJfZm10ID0gbnVsbHB0ciwgLi4uKSB7CisgICAgdGhpcy0+ZnAgPSBmcDsKKyAgICB0aGlzLT5uYW1lID0gbmFtZTsKKworICAgIGZwcmludGYoZnAsICI8JXMiLCBuYW1lKTsKKyAgICBpZiAoYXR0cl9mbXQgIT0gbnVsbHB0cikgeworICAgICAgdmFfbGlzdCBhcmdzOworICAgICAgdmFfc3RhcnQoYXJncywgYXR0cl9mbXQpOworICAgICAgZnB1dGMoJyAnLCBmcCk7CisgICAgICB2ZnByaW50ZihmcCwgYXR0cl9mbXQsIGFyZ3MpOworICAgICAgdmFfZW5kKGFyZ3MpOworICAgIH0KKyAgICBmcHV0YygnPicsIGZwKTsKKyAgfQorCisgIH5FbGVtKCkgbm9leGNlcHQgeworICAgIGZwcmludGYoZnAsICI8LyVzPiIsIG5hbWUpOworICB9CisKKyAgdm9pZCBjb250ZW50cyhjb25zdCBjaGFyKiBmbXQsIC4uLikgeworICAgICAgdmFfbGlzdCBhcmdzOworICAgICAgdmFfc3RhcnQoYXJncywgZm10KTsKKyAgICAgIHZmcHJpbnRmKGZwLCBmbXQsIGFyZ3MpOworICAgICAgdmFfZW5kKGFyZ3MpOworICB9CisKK3ByaXZhdGU6CisgIEZJTEUqIGZwOworICBjb25zdCBjaGFyKiBuYW1lOworCisgIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihFbGVtKTsKK307CisKK2ludCBtYWxsb2NfaW5mbyhpbnQgb3B0aW9ucywgRklMRSogZnApIHsKKyAgaWYgKG9wdGlvbnMgIT0gMCkgeworICAgIGVycm5vID0gRUlOVkFMOworICAgIHJldHVybiAtMTsKKyAgfQorCisgIEVsZW0gcm9vdChmcCwgIm1hbGxvYyIsICJ2ZXJzaW9uPVwiamVtYWxsb2MtMVwiIik7CisKKyAgLy8gRHVtcCBhbGwgb2YgdGhlIGxhcmdlIGFsbG9jYXRpb25zIGluIHRoZSBhcmVuYXMuCisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgX19tYWxsaW5mb19uYXJlbmFzKCk7IGkrKykgeworICAgIHN0cnVjdCBtYWxsaW5mbyBtaSA9IF9fbWFsbGluZm9fYXJlbmFfaW5mbyhpKTsKKyAgICBpZiAobWkuaGJsa2hkICE9IDApIHsKKyAgICAgIEVsZW0gYXJlbmFfZWxlbShmcCwgImhlYXAiLCAibnI9XCIlZFwiIiwgaSk7CisgICAgICB7CisgICAgICAgIEVsZW0oZnAsICJhbGxvY2F0ZWQtbGFyZ2UiKS5jb250ZW50cygiJXp1IiwgbWkub3JkYmxrcyk7CisgICAgICAgIEVsZW0oZnAsICJhbGxvY2F0ZWQtaHVnZSIpLmNvbnRlbnRzKCIlenUiLCBtaS51b3JkYmxrcyk7CisgICAgICAgIEVsZW0oZnAsICJhbGxvY2F0ZWQtYmlucyIpLmNvbnRlbnRzKCIlenUiLCBtaS5mc21ibGtzKTsKKworICAgICAgICBzaXplX3QgdG90YWwgPSAwOworICAgICAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IF9fbWFsbGluZm9fbmJpbnMoKTsgaisrKSB7CisgICAgICAgICAgc3RydWN0IG1hbGxpbmZvIG1pID0gX19tYWxsaW5mb19iaW5faW5mbyhpLCBqKTsKKyAgICAgICAgICBpZiAobWkub3JkYmxrcyAhPSAwKSB7CisgICAgICAgICAgICBFbGVtIGJpbl9lbGVtKGZwLCAiYmluIiwgIm5yPVwiJWRcIiIsIGopOworICAgICAgICAgICAgRWxlbShmcCwgImFsbG9jYXRlZCIpLmNvbnRlbnRzKCIlenUiLCBtaS5vcmRibGtzKTsKKyAgICAgICAgICAgIEVsZW0oZnAsICJubWFsbG9jIikuY29udGVudHMoIiV6dSIsIG1pLnVvcmRibGtzKTsKKyAgICAgICAgICAgIEVsZW0oZnAsICJuZGFsbG9jIikuY29udGVudHMoIiV6dSIsIG1pLmZvcmRibGtzKTsKKyAgICAgICAgICAgIHRvdGFsICs9IG1pLm9yZGJsa3M7CisgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIEVsZW0oZnAsICJiaW5zLXRvdGFsIikuY29udGVudHMoIiV6dSIsIHRvdGFsKTsKKyAgICAgIH0KKyAgICB9CisgIH0KKworICByZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL21hbGxvY19pbmZvLmggYi9saWJjL2Jpb25pYy9tYWxsb2NfaW5mby5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVmZmZhZTkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2Jpb25pYy9tYWxsb2NfaW5mby5oCkBAIC0wLDAgKzEsMzIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaWZuZGVmIExJQkNfQklPTklDX01BTExPQ19JTkZPX0hfCisjZGVmaW5lIExJQkNfQklPTklDX01BTExPQ19JTkZPX0hfCisKKyNpbmNsdWRlIDxtYWxsb2MuaD4KKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKworX19CRUdJTl9ERUNMUworCitfX0xJQkNfSElEREVOX18gc2l6ZV90IF9fbWFsbGluZm9fbmFyZW5hcygpOworX19MSUJDX0hJRERFTl9fIHNpemVfdCBfX21hbGxpbmZvX25iaW5zKCk7CitfX0xJQkNfSElEREVOX18gc3RydWN0IG1hbGxpbmZvIF9fbWFsbGluZm9fYXJlbmFfaW5mbyhzaXplX3QpOworX19MSUJDX0hJRERFTl9fIHN0cnVjdCBtYWxsaW5mbyBfX21hbGxpbmZvX2Jpbl9pbmZvKHNpemVfdCwgc2l6ZV90KTsKKworX19FTkRfREVDTFMKKworI2VuZGlmIC8vIExJQkNfQklPTklDX01BTExPQ19JTkZPX0hfCmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9tZW1jaHIuYyBiL2xpYmMvYmlvbmljL21lbWNoci5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiMTQxNjdhLi4wMDAwMDAwCi0tLSBhL2xpYmMvYmlvbmljL21lbWNoci5jCisrKyAvZGV2L251bGwKQEAgLTEsNDYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotI2luY2x1ZGUgPHN0ZGRlZi5oPgotI2luY2x1ZGUgPHN0cmluZy5oPgotCi12b2lkICptZW1jaHIoY29uc3Qgdm9pZCAqcywgaW50IGMsIHNpemVfdCBuKQotewotICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIqICBwICAgPSBzOwotICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIqICBlbmQgPSBwICsgbjsKLQotICAgIGZvciAoOzspIHsKLSAgICAgICAgaWYgKHAgPj0gZW5kIHx8IHBbMF0gPT0gYykgYnJlYWs7IHArKzsKLSAgICAgICAgaWYgKHAgPj0gZW5kIHx8IHBbMF0gPT0gYykgYnJlYWs7IHArKzsKLSAgICAgICAgaWYgKHAgPj0gZW5kIHx8IHBbMF0gPT0gYykgYnJlYWs7IHArKzsKLSAgICAgICAgaWYgKHAgPj0gZW5kIHx8IHBbMF0gPT0gYykgYnJlYWs7IHArKzsKLSAgICB9Ci0gICAgaWYgKHAgPj0gZW5kKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBlbHNlCi0gICAgICAgIHJldHVybiAodm9pZCopIHA7Ci19CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9tZW1jcHkuY3BwIGIvbGliYy9iaW9uaWMvbWVtY3B5LmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDUyN2U4NS4uMDAwMDAwMAotLS0gYS9saWJjL2Jpb25pYy9tZW1jcHkuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMzggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jdW5kZWYgX0ZPUlRJRllfU09VUkNFCi0jaW5jbHVkZSA8c3RyaW5nLmg+Ci0jaW5jbHVkZSA8c3RyaW5ncy5oPgotCi0vLyBPdXIgdW5vcHRpbWl6ZWQgbWVtY3B5IGp1c3QgY2FsbHMgdGhlIGJlc3QgYmNvcHkgYXZhaWxhYmxlLgotLy8gKEl0J3MgdGhpcyB3YXkgcm91bmQgcmF0aGVyIHRoYW4gdGhlIG9wcG9zaXRlIGJlY2F1c2Ugd2UncmUgYmFzZWQgb24gQlNEIHNvdXJjZS4pCi12b2lkKiBtZW1jcHkodm9pZCogZHN0LCBjb25zdCB2b2lkKiBzcmMsIHNpemVfdCBuKSB7Ci0gIGJjb3B5KHNyYywgZHN0LCBuKTsKLSAgcmV0dXJuIGRzdDsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL21lbW1vdmUuYyBiL2xpYmMvYmlvbmljL21lbW1vdmUuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzljNzY2ZS4uMDAwMDAwMAotLS0gYS9saWJjL2Jpb25pYy9tZW1tb3ZlLmMKKysrIC9kZXYvbnVsbApAQCAtMSwzMCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA4IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNkZWZpbmUgTUVNTU9WRQotI2luY2x1ZGUgInVwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL2Jjb3B5LmMiCmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9tZW1wY3B5LmNwcCBiL2xpYmMvYmlvbmljL21lbXBjcHkuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI3YjcyZjcKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2Jpb25pYy9tZW1wY3B5LmNwcApAQCAtMCwwICsxLDMzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKwordm9pZCogbWVtcGNweSh2b2lkKiBkc3QsIGNvbnN0IHZvaWQqIHNyYywgc2l6ZV90IG4pIHsKKyAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KG1lbWNweShkc3QsIHNyYywgbikpICsgbjsKK30KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL21lbXJjaHIuYyBiL2xpYmMvYmlvbmljL21lbXJjaHIuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWViNTY0My4uMDAwMDAwMAotLS0gYS9saWJjL2Jpb25pYy9tZW1yY2hyLmMKKysrIC9kZXYvbnVsbApAQCAtMSw0NyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA4IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0jaW5jbHVkZSA8c3RkZGVmLmg+Ci0jaW5jbHVkZSA8c3RyaW5nLmg+Ci0KLXZvaWQgKm1lbXJjaHIoY29uc3Qgdm9pZCAqcywgaW50IGMsIHNpemVfdCBuKQotewotICAgIGlmIChuID4gMCkgewotICAgICAgICBjb25zdCBjaGFyKiAgcCA9IChjb25zdCBjaGFyKikgczsKLSAgICAgICAgY29uc3QgY2hhciogIHEgPSBwICsgbjsKLQotICAgICAgICB3aGlsZSAoMSkgewotICAgICAgICAgICAgcS0tOyBpZiAocSA8IHAgfHwgcVswXSA9PSAoY2hhcikgYykgYnJlYWs7Ci0gICAgICAgICAgICBxLS07IGlmIChxIDwgcCB8fCBxWzBdID09IChjaGFyKSBjKSBicmVhazsKLSAgICAgICAgICAgIHEtLTsgaWYgKHEgPCBwIHx8IHFbMF0gPT0gKGNoYXIpIGMpIGJyZWFrOwotICAgICAgICAgICAgcS0tOyBpZiAocSA8IHAgfHwgcVswXSA9PSAoY2hhcikgYykgYnJlYWs7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKHEgPj0gcCkKLSAgICAgICAgICAgIHJldHVybiAodm9pZCopcTsKLSAgICB9Ci0gICAgcmV0dXJuIE5VTEw7Ci19CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9ta2ZpZm8uY3BwIGIvbGliYy9iaW9uaWMvbWtmaWZvLmNwcAppbmRleCAwOGZmYWQxLi5hOThiMzUwIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9ta2ZpZm8uY3BwCisrKyBiL2xpYmMvYmlvbmljL21rZmlmby5jcHAKQEAgLTI4LDYgKzI4LDEyIEBACiAKICNpbmNsdWRlIDxzeXMvc3RhdC5oPgogCisjaW5jbHVkZSA8ZmNudGwuaD4KKwogaW50IG1rZmlmbyhjb25zdCBjaGFyKiBwYXRoLCBtb2RlX3QgbW9kZSkgewotICByZXR1cm4gbWtub2QocGF0aCwgKG1vZGUgJiB+U19JRk1UKSB8IFNfSUZJRk8sIDApOworICByZXR1cm4gbWtmaWZvYXQoQVRfRkRDV0QsIHBhdGgsIG1vZGUpOworfQorCitpbnQgbWtmaWZvYXQoaW50IGZkLCBjb25zdCBjaGFyKiBwYXRoLCBtb2RlX3QgbW9kZSkgeworICByZXR1cm4gbWtub2RhdChmZCwgcGF0aCwgKG1vZGUgJiB+U19JRk1UKSB8IFNfSUZJRk8sIDApOwogfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvbW50ZW50LmNwcCBiL2xpYmMvYmlvbmljL21udGVudC5jcHAKaW5kZXggOTNiNjkxNS4uZDE2OWUyOSAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvbW50ZW50LmNwcAorKysgYi9saWJjL2Jpb25pYy9tbnRlbnQuY3BwCkBAIC0yNywxMiArMjcsNDMgQEAKICAqLwogCiAjaW5jbHVkZSA8bW50ZW50Lmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CiAKLW1udGVudCogZ2V0bW50ZW50KEZJTEUqKSB7Ci0gIHJldHVybiBOVUxMOworI2luY2x1ZGUgInByaXZhdGUvVGhyZWFkTG9jYWxCdWZmZXIuaCIKKworc3RhdGljIFRocmVhZExvY2FsQnVmZmVyPG1udGVudD4gZ19nZXRtbnRlbnRfbW50ZW50X3Rsc19idWZmZXI7CitzdGF0aWMgVGhyZWFkTG9jYWxCdWZmZXI8Y2hhciwgQlVGU0laPiBnX2dldG1udGVudF9zdHJpbmdzX3Rsc19idWZmZXI7CisKK21udGVudCogZ2V0bW50ZW50KEZJTEUqIGZwKSB7CisgIHJldHVybiBnZXRtbnRlbnRfcihmcCwgZ19nZXRtbnRlbnRfbW50ZW50X3Rsc19idWZmZXIuZ2V0KCksCisgICAgICAgICAgICAgICAgICAgICBnX2dldG1udGVudF9zdHJpbmdzX3Rsc19idWZmZXIuZ2V0KCksCisgICAgICAgICAgICAgICAgICAgICBnX2dldG1udGVudF9zdHJpbmdzX3Rsc19idWZmZXIuc2l6ZSgpKTsKIH0KIAotbW50ZW50KiBnZXRtbnRlbnRfcihGSUxFKiwgc3RydWN0IG1udGVudCosIGNoYXIqLCBpbnQpIHsKK21udGVudCogZ2V0bW50ZW50X3IoRklMRSogZnAsIHN0cnVjdCBtbnRlbnQqIGUsIGNoYXIqIGJ1ZiwgaW50IGJ1Zl9sZW4pIHsKKyAgbWVtc2V0KGUsIDAsIHNpemVvZigqZSkpOworICB3aGlsZSAoZmdldHMoYnVmLCBidWZfbGVuLCBmcCkgIT0gTlVMTCkgeworICAgIC8vIEVudHJpZXMgbG9vayBsaWtlICJwcm9jIC9wcm9jIHByb2Mgcncsbm9zdWlkLG5vZGV2LG5vZXhlYyxyZWxhdGltZSAwIDAiLgorICAgIC8vIFRoYXQgaXM6IG1udF9mc25hbWUgbW50X2RpciBtbnRfdHlwZSBtbnRfb3B0cyAwIDAuCisgICAgaW50IGZzbmFtZTAsIGZzbmFtZTEsIGRpcjAsIGRpcjEsIHR5cGUwLCB0eXBlMSwgb3B0czAsIG9wdHMxOworICAgIGlmIChzc2NhbmYoYnVmLCAiICVuJSpzJW4gJW4lKnMlbiAlbiUqcyVuICVuJSpzJW4gJWQgJWQiLAorICAgICAgICAgICAgICAgJmZzbmFtZTAsICZmc25hbWUxLCAmZGlyMCwgJmRpcjEsICZ0eXBlMCwgJnR5cGUxLCAmb3B0czAsICZvcHRzMSwKKyAgICAgICAgICAgICAgICZlLT5tbnRfZnJlcSwgJmUtPm1udF9wYXNzbm8pID09IDIpIHsKKyAgICAgIGUtPm1udF9mc25hbWUgPSAmYnVmW2ZzbmFtZTBdOworICAgICAgYnVmW2ZzbmFtZTFdID0gJ1wwJzsKKworICAgICAgZS0+bW50X2RpciA9ICZidWZbZGlyMF07CisgICAgICBidWZbZGlyMV0gPSAnXDAnOworCisgICAgICBlLT5tbnRfdHlwZSA9ICZidWZbdHlwZTBdOworICAgICAgYnVmW3R5cGUxXSA9ICdcMCc7CisKKyAgICAgIGUtPm1udF9vcHRzID0gJmJ1ZltvcHRzMF07CisgICAgICBidWZbb3B0czFdID0gJ1wwJzsKKworICAgICAgcmV0dXJuIGU7CisgICAgfQorICB9CiAgIHJldHVybiBOVUxMOwogfQogCmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9uZGtfY3J1ZnQuY3BwIGIvbGliYy9iaW9uaWMvbmRrX2NydWZ0LmNwcAppbmRleCA3NjAwODE3Li44YjM0NDk1IDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9uZGtfY3J1ZnQuY3BwCisrKyBiL2xpYmMvYmlvbmljL25ka19jcnVmdC5jcHAKQEAgLTI2LDExICsyNiwxMSBAQAogICogU1VDSCBEQU1BR0UuCiAgKi8KIAotLy8gVGhpcyBmaWxlIHBlcnBldHVhdGVzIHRoZSBtaXN0YWtlcyBvZiB0aGUgcGFzdCwgYnV0IG9ubHkgZm9yIDMyLWJpdCB0YXJnZXRzLgotI2lmICFkZWZpbmVkKF9fTFA2NF9fKQorLy8gVGhpcyBmaWxlIHBlcnBldHVhdGVzIHRoZSBtaXN0YWtlcyBvZiB0aGUgcGFzdC4KIAogI2luY2x1ZGUgPGN0eXBlLmg+CiAjaW5jbHVkZSA8ZGlyZW50Lmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNsdWRlIDxpbnR0eXBlcy5oPgogI2luY2x1ZGUgPHB0aHJlYWQuaD4KICNpbmNsdWRlIDxzaWduYWwuaD4KQEAgLTQ1LDYgKzQ1LDExIEBACiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAjaW5jbHVkZSA8d2NoYXIuaD4KIAorI2luY2x1ZGUgInByaXZhdGUvbGliY19sb2dnaW5nLmgiCisKKy8vIFRoZSBwYXJ0IGlzIG9ubHkgZm9yIDMyLWJpdCB0YXJnZXRzLgorI2lmICFkZWZpbmVkKF9fTFA2NF9fKQorCiAvLyBUaGVzZSB3ZXJlIGFjY2lkZW50YWxseSBkZWNsYXJlZCBpbiA8dW5pc3RkLmg+IGJlY2F1c2Ugd2Ugc3R1cGlkbHkgdXNlZCB0byBpbmxpbmUKIC8vIGdldHBhZ2VzaXplKCkgYW5kIF9fZ2V0cGFnZXNoaWZ0KCkuIE5lZWRlZCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgd2l0aCBvbGQgTkRLIGFwcHMuCiBleHRlcm4gIkMiIHsKQEAgLTIzNSw2ICsyNDAsMTYgQEAKICAgcmV0dXJuIHNpZ25hbChzaWdudW0sIGhhbmRsZXIpOwogfQogCisjaWYgIWRlZmluZWQoX19pMzg2X18pCisvLyBUaGlzIHdhcyByZW1vdmVkIGZyb20gUE9TSVggMjAwOC4KKyN1bmRlZiBiY29weQorZXh0ZXJuICJDIiB2b2lkIGJjb3B5KGNvbnN0IHZvaWQqIHNyYywgdm9pZCogZHN0LCBzaXplX3QgbikgeworICBtZW1jcHkoZHN0LCBzcmMsIG4pOworfQorI2Vsc2UKKy8vIHg4NiBoYXMgYW4gYXNzZW1ibGVyIGltcGxlbWVudGF0aW9uLgorI2VuZGlmCisKIC8vIHN5c3Zfc2lnbmFsKCkgd2FzIG5ldmVyIGluIFBPU0lYLgogZXh0ZXJuIHNpZ2hhbmRsZXJfdCBfc2lnbmFsKGludCBzaWdudW0sIHNpZ2hhbmRsZXJfdCBoYW5kbGVyLCBpbnQgZmxhZ3MpOwogZXh0ZXJuICJDIiBzaWdoYW5kbGVyX3Qgc3lzdl9zaWduYWwoaW50IHNpZ251bSwgc2lnaGFuZGxlcl90IGhhbmRsZXIpIHsKQEAgLTMyMCwxMCArMzM1LDM3IEBACiAgIHJldHVybiBtYWxsb2NfdXNhYmxlX3NpemUocHRyKTsKIH0KIAorLy8gSW4gTCB3ZSBhZGRlZCBhIHB1YmxpYyBwdGhyZWFkX2dldHRpZF9ucCwgYnV0IHNvbWUgYXBwcyB3ZXJlIHVzaW5nIHRoZSBwcml2YXRlIEFQSS4KK2V4dGVybiAiQyIgcGlkX3QgX19wdGhyZWFkX2dldHRpZChwdGhyZWFkX3QgdCkgeworICByZXR1cm4gcHRocmVhZF9nZXR0aWRfbnAodCk7Cit9CisKIC8vIE9sZGVyIHZlcnNpb25zIG9mIGFwcHBvcnRhYmxlIHVzZWQgZGxtYWxsb2MgZGlyZWN0bHkgaW5zdGVhZCBvZiBtYWxsb2MsCiAvLyBzbyBleHBvcnQgdGhpcyBjb21wYXRpYmlsaXR5IHNoaW0gdGhhdCBzaW1wbHkgY2FsbHMgbWFsbG9jLgogZXh0ZXJuICJDIiB2b2lkKiBkbG1hbGxvYyhzaXplX3Qgc2l6ZSkgewogICByZXR1cm4gbWFsbG9jKHNpemUpOwogfQogCi0jZW5kaWYKKyNkZWZpbmUgX19nZXRfdGhyZWFkIF9fcmVhbF9nZXRfdGhyZWFkCisjaW5jbHVkZSAicHRocmVhZF9pbnRlcm5hbC5oIgorI3VuZGVmIF9fZ2V0X3RocmVhZAorLy8gVmFyaW91cyB0aGlyZC1wYXJ0eSBhcHBzIGNvbnRhaW4gYSBiYWNrcG9ydCBvZiBvdXIgcHRocmVhZF9yd2xvY2sgaW1wbGVtZW50YXRpb24gdGhhdCB1c2VzIHRoaXMuCitleHRlcm4gIkMiIHB0aHJlYWRfaW50ZXJuYWxfdCogX19nZXRfdGhyZWFkKCkgeworICByZXR1cm4gX19yZWFsX2dldF90aHJlYWQoKTsKK30KKworI2VuZGlmIC8vICFkZWZpbmVkKF9fTFA2NF9fKQorCisvLyBUaGlzIGlzIG5ldmVyIGltcGxlbWVudGVkIGluIGJpb25pYywgb25seSBuZWVkZWQgZm9yIEFCSSBjb21wYXRpYmlsaXR5IHdpdGggdGhlIE5ESy4KK2V4dGVybiAiQyIgY2hhciogZ2V0dXNlcnNoZWxsKCkgeworICByZXR1cm4gTlVMTDsKK30KKworLy8gVGhpcyBpcyBuZXZlciBpbXBsZW1lbnRlZCBpbiBiaW9uaWMsIG9ubHkgbmVlZGVkIGZvciBBQkkgY29tcGF0aWJpbGl0eSB3aXRoIHRoZSBOREsuCitleHRlcm4gIkMiIHZvaWQgc2V0dXNlcnNoZWxsKCkgeyB9CisKKy8vIFRoaXMgaXMgbmV2ZXIgaW1wbGVtZW50ZWQgaW4gYmlvbmljLCBvbmx5IG5lZWRlZCBmb3IgQUJJIGNvbXBhdGliaWxpdHkgd2l0aCB0aGUgTkRLLgorZXh0ZXJuICJDIiB2b2lkIGVuZHVzZXJzaGVsbCgpIHsgfQorCisvLyBUaGlzIGlzIG5ldmVyIGltcGxlbWVudGVkIGluIGJpb25pYywgb25seSBuZWVkZWQgZm9yIEFCSSBjb21wYXRpYmlsaXR5IHdpdGggdGhlIE5ESy4KK2V4dGVybiAiQyIgdm9pZCBlbmRwd2VudCgpIHsgfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvbmV3LmNwcCBiL2xpYmMvYmlvbmljL25ldy5jcHAKaW5kZXggZmNmZDFiZC4uY2Q4NGMyZSAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvbmV3LmNwcAorKysgYi9saWJjL2Jpb25pYy9uZXcuY3BwCkBAIC0zOCwxMSArMzgsMTEgQEAKICAgICByZXR1cm4gcDsKIH0KIAotdm9pZCAgb3BlcmF0b3IgZGVsZXRlKHZvaWQqIHB0cikgewordm9pZCAgb3BlcmF0b3IgZGVsZXRlKHZvaWQqIHB0cikgdGhyb3coKSB7CiAgICAgZnJlZShwdHIpOwogfQogCi12b2lkICBvcGVyYXRvciBkZWxldGVbXSh2b2lkKiBwdHIpIHsKK3ZvaWQgIG9wZXJhdG9yIGRlbGV0ZVtdKHZvaWQqIHB0cikgdGhyb3coKSB7CiAgICAgZnJlZShwdHIpOwogfQogCkBAIC01NCwxMCArNTQsMTAgQEAKICAgICByZXR1cm4gbWFsbG9jKHNpemUpOwogfQogCi12b2lkICBvcGVyYXRvciBkZWxldGUodm9pZCogcHRyLCBjb25zdCBzdGQ6Om5vdGhyb3dfdCYpIHsKK3ZvaWQgIG9wZXJhdG9yIGRlbGV0ZSh2b2lkKiBwdHIsIGNvbnN0IHN0ZDo6bm90aHJvd190JikgdGhyb3coKSB7CiAgICAgZnJlZShwdHIpOwogfQogCi12b2lkICBvcGVyYXRvciBkZWxldGVbXSh2b2lkKiBwdHIsIGNvbnN0IHN0ZDo6bm90aHJvd190Jikgewordm9pZCAgb3BlcmF0b3IgZGVsZXRlW10odm9pZCogcHRyLCBjb25zdCBzdGQ6Om5vdGhyb3dfdCYpIHRocm93KCkgewogICAgIGZyZWUocHRyKTsKIH0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL29wZW4uY3BwIGIvbGliYy9iaW9uaWMvb3Blbi5jcHAKaW5kZXggYmQ4MzJjMC4uYTZkODA4NiAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvb3Blbi5jcHAKKysrIGIvbGliYy9iaW9uaWMvb3Blbi5jcHAKQEAgLTU0LDcgKzU0LDcgQEAKICAgaWYgKChmbGFncyAmIE9fQ1JFQVQpICE9IDApIHsKICAgICB2YV9saXN0IGFyZ3M7CiAgICAgdmFfc3RhcnQoYXJncywgZmxhZ3MpOwotICAgIG1vZGUgPSAobW9kZV90KSB2YV9hcmcoYXJncywgaW50KTsKKyAgICBtb2RlID0gc3RhdGljX2Nhc3Q8bW9kZV90Pih2YV9hcmcoYXJncywgaW50KSk7CiAgICAgdmFfZW5kKGFyZ3MpOwogICB9CiAKQEAgLTc2LDcgKzc2LDcgQEAKICAgaWYgKChmbGFncyAmIE9fQ1JFQVQpICE9IDApIHsKICAgICB2YV9saXN0IGFyZ3M7CiAgICAgdmFfc3RhcnQoYXJncywgZmxhZ3MpOwotICAgIG1vZGUgPSAobW9kZV90KSB2YV9hcmcoYXJncywgaW50KTsKKyAgICBtb2RlID0gc3RhdGljX2Nhc3Q8bW9kZV90Pih2YV9hcmcoYXJncywgaW50KSk7CiAgICAgdmFfZW5kKGFyZ3MpOwogICB9CiAKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3BhdGhjb25mLmMgYi9saWJjL2Jpb25pYy9wYXRoY29uZi5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjZjgxMjcyLi4wMDAwMDAwCi0tLSBhL2xpYmMvYmlvbmljL3BhdGhjb25mLmMKKysrIC9kZXYvbnVsbApAQCAtMSwyNjcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSA8cGF0aGNvbmYuaD4KLSNpbmNsdWRlIDxzeXMvdmZzLmg+Ci0jaW5jbHVkZSA8c3lzL2xpbWl0cy5oPgotI2luY2x1ZGUgPGVycm5vLmg+Ci0KLS8qIHRoZXNlIG1heSBub3QgYmUgZGVmaW5lZCB5ZXQgYnkgb3VyIGhlYWRlcnMgKi8KLSNpZm5kZWYgX1BPU0lYX1ZESVNBQkxFCi0jZGVmaW5lIF9QT1NJWF9WRElTQUJMRSAgLTEKLSNlbmRpZgotCi0jaWZuZGVmIF9QT1NJWF9TWU5DX0lPCi0jZGVmaW5lIF9QT1NJWF9TWU5DX0lPICAtMQotI2VuZGlmCi0KLSNpZm5kZWYgX1BPU0lYX1BSSU9fSU8KLSNkZWZpbmUgX1BPU0lYX1BSSU9fSU8gIC0xCi0jZW5kaWYKLQotI2lmbmRlZiBfUE9TSVhfQVNZTkNfSU8KLSNkZWZpbmUgX1BPU0lYX0FTWU5DX0lPICAtMQotI2VuZGlmCi0KLQotc3RhdGljIGxvbmcKLV9fZmlsZXNpemViaXRzKCBzdHJ1Y3Qgc3RhdGZzKiAgcyApCi17Ci0jZGVmaW5lICAgRU9MX01BR0lDICAgMHgwMDAwVQotCi0gICAgLyogbGlzdCBvZiBrbm93biA2NC1iaXQgYXdhcmUgZmlsZXN5c3RlbXMgKi8KLSAgICBzdGF0aWMgY29uc3QgdWludDMyX3QgIGtub3duNjRbXSA9IHsKLSAgICAgICAgRVhUMl9TVVBFUl9NQUdJQywKLSAgICAgICAgVUZTX01BR0lDLAotICAgICAgICBSRUlTRVJGU19TVVBFUl9NQUdJQywKLSAgICAgICAgWEZTX1NVUEVSX01BR0lDLAotICAgICAgICBTTUJfU1VQRVJfTUFHSUMsCi0gICAgICAgIFVERl9TVVBFUl9NQUdJQywKLSAgICAgICAgSkZTX1NVUEVSX01BR0lDLAotICAgICAgICBOVEZTX1NCX01BR0lDLAotICAgICAgICBWWEZTX1NVUEVSX01BR0lDLAotICAgICAgICBFT0xfTUFHSUMKLSAgICB9OwotICAgIGludCAgbm4gPSAwOwotCi0gICAgZm9yICg7IGtub3duNjRbbm5dICE9IEVPTF9NQUdJQzsgKytubikgewotICAgICAgICBpZiAoa25vd242NFtubl0gPT0gcy0+Zl90eXBlKSB7Ci0gICAgICAgICAgICByZXR1cm4gNjQ7Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgcmV0dXJuIDMyOwotfQotCi0KLXN0YXRpYyBsb25nCi1fX2xpbmtfbWF4KCBzdHJ1Y3Qgc3RhdGZzKiAgcyApCi17Ci0gICAgLy8gVGhlc2UgY29uc3RhbnQgdmFsdWVzIHdlcmUgdGFrZW4gZnJvbSBrZXJuZWwgaGVhZGVycy4KLSAgICAvLyBUaGV5J3JlIG5vdCBhdmFpbGFibGUgaW4gdWFwaSBoZWFkZXJzLgotICAgIHN0YXRpYyBjb25zdCBzdHJ1Y3QgeyB1aW50MzJfdCAgdHlwZTsgaW50ICBtYXg7IH0gIGtub3duTWF4W10gPQotICAgIHsKLSAgICAgICAgeyBFWFQyX1NVUEVSX01BR0lDLCAzMjAwMCB9LAotICAgICAgICB7IEVYVDNfU1VQRVJfTUFHSUMsIDMyMDAwIH0sCi0gICAgICAgIHsgTUlOSVhfU1VQRVJfTUFHSUMsIDI1MCB9LAotICAgICAgICB7IE1JTklYMl9TVVBFUl9NQUdJQywgNjU1MzAgfSwKLSAgICAgICAgeyBSRUlTRVJGU19TVVBFUl9NQUdJQywgMHhmZmZmIC0gMTAwMCB9LAotICAgICAgICB7IFVGU19NQUdJQywgMzIwMDAgfSwKLSAgICAgICAgeyBFT0xfTUFHSUMsIDAgfQotICAgIH07Ci0gICAgaW50ICAgbm4gPSAwOwotCi0gICAgZm9yICg7IGtub3duTWF4W25uXS50eXBlICE9IEVPTF9NQUdJQzsgKytubikgewotICAgICAgICBpZiAoa25vd25NYXhbbm5dLnR5cGUgPT0gcy0+Zl90eXBlKSB7Ci0gICAgICAgICAgICByZXR1cm4ga25vd25NYXhbbm5dLm1heDsKLSAgICAgICAgfQotICAgIH0KLSAgICByZXR1cm4gTElOS19NQVg7Ci19Ci0KLXN0YXRpYyBsb25nCi1fXzJfc3ltbGlua3MoIHN0cnVjdCBzdGF0ZnMqICBzICkKLXsKLSAgICAvKiBsaXN0IG9mIGtub3cgZmlsZXN5c3RlbXMgdGhhdCBkb24ndCBzdXBwb3J0IHN5bWxpbmtzICovCi0gICAgc3RhdGljIGNvbnN0IHVpbnQzMl90ICBrbm93bk5vU3ltbGlua3NbXSA9IHsKLSAgICAgICAgQURGU19TVVBFUl9NQUdJQywgQkZTX01BR0lDLCBDUkFNRlNfTUFHSUMsCi0gICAgICAgIEVGU19TVVBFUl9NQUdJQywgTVNET1NfU1VQRVJfTUFHSUMsIE5URlNfU0JfTUFHSUMsCi0gICAgICAgIFFOWDRfU1VQRVJfTUFHSUMsCi0gICAgICAgIEVPTF9NQUdJQwotICAgIH07Ci0gICAgaW50ICBubiA9IDA7Ci0KLSAgICBmb3IgKDsga25vd25Ob1N5bWxpbmtzW25uXSAhPSBFT0xfTUFHSUM7ICsrbm4pIHsKLSAgICAgICAgaWYgKGtub3duTm9TeW1saW5rc1tubl0gPT0gcy0+Zl90eXBlKSB7Ci0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgfQotICAgIH0KLSAgICByZXR1cm4gMTsKLX0KLQotc3RhdGljIGxvbmcKLV9fbmFtZV9tYXgoIHN0cnVjdCBzdGF0ZnMqICBzICkKLXsKLSAgICByZXR1cm4gcy0+Zl9uYW1lbGVuOwotfQotCi1sb25nCi1wYXRoY29uZihjb25zdCBjaGFyICpwYXRoLCBpbnQgbmFtZSkKLXsKLSAgICBzdHJ1Y3Qgc3RhdGZzICBidWY7Ci0gICAgaW50ICAgICAgICAgICAgcmV0ID0gc3RhdGZzKCBwYXRoLCAmYnVmICk7Ci0KLSAgICBpZiAocmV0IDwgMCkKLSAgICAgICAgcmV0dXJuIC0xOwotCi0gICAgc3dpdGNoIChuYW1lKSB7Ci0gICAgY2FzZSBfUENfRklMRVNJWkVCSVRTOgotICAgICAgICByZXR1cm4gX19maWxlc2l6ZWJpdHMoJmJ1Zik7Ci0KLSAgICBjYXNlIF9QQ19MSU5LX01BWDoKLSAgICAgICAgcmV0dXJuIF9fbGlua19tYXgoJmJ1Zik7Ci0KLSAgICBjYXNlIF9QQ19NQVhfQ0FOT046Ci0gICAgICAgIHJldHVybiBNQVhfQ0FOT047Ci0KLSAgICBjYXNlIF9QQ19NQVhfSU5QVVQ6Ci0gICAgICAgIHJldHVybiBNQVhfSU5QVVQ7Ci0KLSAgICBjYXNlIF9QQ19OQU1FX01BWDoKLSAgICAgICAgcmV0dXJuIF9fbmFtZV9tYXgoJmJ1Zik7Ci0KLSAgICBjYXNlIF9QQ19QQVRIX01BWDoKLSAgICAgICAgcmV0dXJuIFBBVEhfTUFYOwotCi0gICAgY2FzZSBfUENfUElQRV9CVUY6Ci0gICAgICAgIHJldHVybiBQSVBFX0JVRjsKLQotICAgIGNhc2UgX1BDXzJfU1lNTElOS1M6Ci0gICAgICAgIHJldHVybiBfXzJfc3ltbGlua3MoJmJ1Zik7Ci0KLSNpZiAwICAvKiBkb24ndCBrbm93IHdoYXQgdG8gZG8gdGhlcmUsIHRoZSBzcGVjcyBhcmUgcmVhbGx5IHdlaXJkICovCi0gICAgY2FzZSBfUENfQUxMT0NfU0laRV9NSU46Ci0gICAgY2FzZSBfUENfUkVDX0lOQ1JfWEZFUl9TSVpFOgotICAgIGNhc2UgX1BDX1JFQ19NQVhfWEZFUl9TSVpFOgotICAgIGNhc2UgX1BDX1JFQ19NSU5fWEZFUl9TSVpFOgotICAgIGNhc2UgX1BDX1JFQ19YRkVSX0FMSUdOOgotI2VuZGlmCi0KLSAgICBjYXNlIF9QQ19TWU1MSU5LX01BWDoKLSAgICAgICAgcmV0dXJuIC0xOyAgLyogbm8gbGltaXQgKi8KLQotICAgIGNhc2UgX1BDX0NIT1dOX1JFU1RSSUNURUQ6Ci0gICAgICAgIHJldHVybiBfUE9TSVhfQ0hPV05fUkVTVFJJQ1RFRDsKLQotICAgIGNhc2UgX1BDX05PX1RSVU5DOgotICAgICAgICByZXR1cm4gX1BPU0lYX05PX1RSVU5DOwotCi0gICAgY2FzZSBfUENfVkRJU0FCTEU6Ci0gICAgICAgIHJldHVybiBfUE9TSVhfVkRJU0FCTEU7Ci0KLSAgICBjYXNlIF9QQ19BU1lOQ19JTzoKLSAgICAgICAgcmV0dXJuIF9QT1NJWF9BU1lOQ19JTzsKLQotICAgIGNhc2UgX1BDX1BSSU9fSU86Ci0gICAgICAgIHJldHVybiBfUE9TSVhfUFJJT19JTzsKLQotICAgIGNhc2UgX1BDX1NZTkNfSU86Ci0gICAgICAgIHJldHVybiBfUE9TSVhfU1lOQ19JTzsKLQotICAgIGRlZmF1bHQ6Ci0gICAgICAgIGVycm5vID0gRUlOVkFMOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotfQotCi1sb25nIGZwYXRoY29uZihpbnQgZmlsZGVzLCBpbnQgbmFtZSkKLXsKLSAgICBzdHJ1Y3Qgc3RhdGZzICBidWY7Ci0gICAgaW50ICAgICAgICAgICAgcmV0ID0gZnN0YXRmcyhmaWxkZXMsICZidWYpOwotCi0gICAgaWYgKHJldCA8IDApCi0gICAgICAgIHJldHVybiAtMTsKLQotICAgIHN3aXRjaCAobmFtZSkgewotICAgIGNhc2UgX1BDX0ZJTEVTSVpFQklUUzoKLSAgICAgICAgcmV0dXJuIF9fZmlsZXNpemViaXRzKCZidWYpOwotCi0gICAgY2FzZSBfUENfTElOS19NQVg6Ci0gICAgICAgIHJldHVybiBfX2xpbmtfbWF4KCZidWYpOwotCi0gICAgY2FzZSBfUENfTUFYX0NBTk9OOgotICAgICAgICByZXR1cm4gTUFYX0NBTk9OOwotCi0gICAgY2FzZSBfUENfTUFYX0lOUFVUOgotICAgICAgICByZXR1cm4gTUFYX0lOUFVUOwotCi0gICAgY2FzZSBfUENfTkFNRV9NQVg6Ci0gICAgICAgIHJldHVybiBfX25hbWVfbWF4KCZidWYpOwotCi0gICAgY2FzZSBfUENfUEFUSF9NQVg6Ci0gICAgICAgIHJldHVybiBQQVRIX01BWDsKLQotICAgIGNhc2UgX1BDX1BJUEVfQlVGOgotICAgICAgICByZXR1cm4gUElQRV9CVUY7Ci0KLSAgICBjYXNlIF9QQ18yX1NZTUxJTktTOgotICAgICAgICByZXR1cm4gX18yX3N5bWxpbmtzKCZidWYpOwotCi0jaWYgMCAgLyogZG9uJ3Qga25vdyB3aGF0IHRvIGRvIHRoZXJlLCB0aGUgc3BlY3MgYXJlIHJlYWxseSB3ZWlyZCAqLwotICAgIGNhc2UgX1BDX0FMTE9DX1NJWkVfTUlOOgotICAgIGNhc2UgX1BDX1JFQ19JTkNSX1hGRVJfU0laRToKLSAgICBjYXNlIF9QQ19SRUNfTUFYX1hGRVJfU0laRToKLSAgICBjYXNlIF9QQ19SRUNfTUlOX1hGRVJfU0laRToKLSAgICBjYXNlIF9QQ19SRUNfWEZFUl9BTElHTjoKLSNlbmRpZgotCi0gICAgY2FzZSBfUENfU1lNTElOS19NQVg6Ci0gICAgICAgIHJldHVybiAtMTsgIC8qIG5vIGxpbWl0ICovCi0KLSAgICBjYXNlIF9QQ19DSE9XTl9SRVNUUklDVEVEOgotICAgICAgICByZXR1cm4gX1BPU0lYX0NIT1dOX1JFU1RSSUNURUQ7Ci0KLSAgICBjYXNlIF9QQ19OT19UUlVOQzoKLSAgICAgICAgcmV0dXJuIF9QT1NJWF9OT19UUlVOQzsKLQotICAgIGNhc2UgX1BDX1ZESVNBQkxFOgotICAgICAgICByZXR1cm4gX1BPU0lYX1ZESVNBQkxFOwotCi0gICAgY2FzZSBfUENfQVNZTkNfSU86Ci0gICAgICAgIHJldHVybiBfUE9TSVhfQVNZTkNfSU87Ci0KLSAgICBjYXNlIF9QQ19QUklPX0lPOgotICAgICAgICByZXR1cm4gX1BPU0lYX1BSSU9fSU87Ci0KLSAgICBjYXNlIF9QQ19TWU5DX0lPOgotICAgICAgICByZXR1cm4gX1BPU0lYX1NZTkNfSU87Ci0KLSAgICBkZWZhdWx0OgotICAgICAgICBlcnJubyA9IEVJTlZBTDsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLX0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3BhdGhjb25mLmNwcCBiL2xpYmMvYmlvbmljL3BhdGhjb25mLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNmY1NzQyCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvcGF0aGNvbmYuY3BwCkBAIC0wLDAgKzEsMTU2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDA4IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3lzL2xpbWl0cy5oPgorI2luY2x1ZGUgPHN5cy92ZnMuaD4KKworc3RhdGljIGxvbmcgX19maWxlc2l6ZWJpdHMoY29uc3Qgc3RydWN0IHN0YXRmcyYgcykgeworICBzd2l0Y2ggKHMuZl90eXBlKSB7CisgICAgY2FzZSBKRkZTMl9TVVBFUl9NQUdJQzoKKyAgICBjYXNlIE1TRE9TX1NVUEVSX01BR0lDOgorICAgIGNhc2UgTkNQX1NVUEVSX01BR0lDOgorICAgICAgcmV0dXJuIDMyOworICB9CisgIC8vIFRoZXJlIHdvbid0IGJlIGFueSBuZXcgMzItYml0IGZpbGUgc3lzdGVtcy4KKyAgcmV0dXJuIDY0OworfQorCitzdGF0aWMgbG9uZyBfX2xpbmtfbWF4KGNvbnN0IHN0cnVjdCBzdGF0ZnMmIHMpIHsKKyAgLy8gVGhlc2UgY29uc3RhbnQgdmFsdWVzIHdlcmUgdGFrZW4gZnJvbSBrZXJuZWwgaGVhZGVycy4KKyAgLy8gVGhleSdyZSBub3QgYXZhaWxhYmxlIGluIHVhcGkgaGVhZGVycy4KKyAgc3dpdGNoIChzLmZfdHlwZSkgeworICAgIGNhc2UgRVhUMl9TVVBFUl9NQUdJQzoKKyAgICAgIHJldHVybiAzMjAwMDsKKyAgICBjYXNlIE1JTklYX1NVUEVSX01BR0lDOgorICAgICAgcmV0dXJuIDI1MDsKKyAgICBjYXNlIE1JTklYMl9TVVBFUl9NQUdJQzoKKyAgICAgIHJldHVybiA2NTUzMDsKKyAgICBjYXNlIFJFSVNFUkZTX1NVUEVSX01BR0lDOgorICAgICAgcmV0dXJuIDB4ZmZmZiAtIDEwMDA7CisgICAgY2FzZSBVRlNfTUFHSUM6CisgICAgICByZXR1cm4gMzIwMDA7CisgIH0KKyAgcmV0dXJuIExJTktfTUFYOworfQorCitzdGF0aWMgbG9uZyBfXzJfc3ltbGlua3MoY29uc3Qgc3RydWN0IHN0YXRmcyYgcykgeworICBzd2l0Y2ggKHMuZl90eXBlKSB7CisgICAgY2FzZSBBREZTX1NVUEVSX01BR0lDOgorICAgIGNhc2UgQkZTX01BR0lDOgorICAgIGNhc2UgQ1JBTUZTX01BR0lDOgorICAgIGNhc2UgRUZTX1NVUEVSX01BR0lDOgorICAgIGNhc2UgTVNET1NfU1VQRVJfTUFHSUM6CisgICAgY2FzZSBRTlg0X1NVUEVSX01BR0lDOgorICAgICAgcmV0dXJuIDA7CisgIH0KKyAgcmV0dXJuIDE7Cit9CisKK3N0YXRpYyBsb25nIF9fcGF0aGNvbmYoY29uc3Qgc3RydWN0IHN0YXRmcyYgcywgaW50IG5hbWUpIHsKKyAgc3dpdGNoIChuYW1lKSB7CisgICAgY2FzZSBfUENfRklMRVNJWkVCSVRTOgorICAgICAgcmV0dXJuIF9fZmlsZXNpemViaXRzKHMpOworCisgICAgY2FzZSBfUENfTElOS19NQVg6CisgICAgICByZXR1cm4gX19saW5rX21heChzKTsKKworICAgIGNhc2UgX1BDX01BWF9DQU5PTjoKKyAgICAgIHJldHVybiBNQVhfQ0FOT047CisKKyAgICBjYXNlIF9QQ19NQVhfSU5QVVQ6CisgICAgICByZXR1cm4gTUFYX0lOUFVUOworCisgICAgY2FzZSBfUENfTkFNRV9NQVg6CisgICAgICByZXR1cm4gcy5mX25hbWVsZW47CisKKyAgICBjYXNlIF9QQ19QQVRIX01BWDoKKyAgICAgIHJldHVybiBQQVRIX01BWDsKKworICAgIGNhc2UgX1BDX1BJUEVfQlVGOgorICAgICAgcmV0dXJuIFBJUEVfQlVGOworCisgICAgY2FzZSBfUENfMl9TWU1MSU5LUzoKKyAgICAgIHJldHVybiBfXzJfc3ltbGlua3Mocyk7CisKKyAgICBjYXNlIF9QQ19BTExPQ19TSVpFX01JTjogIC8qIGZhbGwgdGhyb3VnaCAqLworICAgIGNhc2UgX1BDX1JFQ19YRkVSX0FMSUdOOgorICAgICAgcmV0dXJuIHMuZl9mcnNpemU7CisKKyAgICBjYXNlIF9QQ19SRUNfTUlOX1hGRVJfU0laRToKKyAgICAgIHJldHVybiBzLmZfYnNpemU7CisKKyNpZiAwCisgICAgY2FzZSBfUENfUkVDX0lOQ1JfWEZFUl9TSVpFOgorICAgIGNhc2UgX1BDX1JFQ19NQVhfWEZFUl9TSVpFOgorI2VuZGlmCisKKyAgICBjYXNlIF9QQ19TWU1MSU5LX01BWDoKKyAgICAgIHJldHVybiAtMTsgLyogbm8gbGltaXQgKi8KKworICAgIGNhc2UgX1BDX0NIT1dOX1JFU1RSSUNURUQ6CisgICAgICByZXR1cm4gX1BPU0lYX0NIT1dOX1JFU1RSSUNURUQ7CisKKyAgICBjYXNlIF9QQ19OT19UUlVOQzoKKyAgICAgIHJldHVybiBfUE9TSVhfTk9fVFJVTkM7CisKKyAgICBjYXNlIF9QQ19WRElTQUJMRToKKyAgICAgIHJldHVybiBfUE9TSVhfVkRJU0FCTEU7CisKKyAgICBjYXNlIF9QQ19BU1lOQ19JTzoKKyAgICAgIHJldHVybiAtMTsKKworICAgIGNhc2UgX1BDX1BSSU9fSU86CisgICAgICByZXR1cm4gLTE7CisKKyAgICBjYXNlIF9QQ19TWU5DX0lPOgorICAgICAgcmV0dXJuIC0xOworCisgICAgZGVmYXVsdDoKKyAgICAgIGVycm5vID0gRUlOVkFMOworICAgICAgcmV0dXJuIC0xOworICB9Cit9CisKK2xvbmcgcGF0aGNvbmYoY29uc3QgY2hhciogcGF0aCwgaW50IG5hbWUpIHsKKyAgc3RydWN0IHN0YXRmcyBzYjsKKyAgaWYgKHN0YXRmcyhwYXRoLCAmc2IpID09IC0xKSB7CisgICAgcmV0dXJuIC0xOworICB9CisgIHJldHVybiBfX3BhdGhjb25mKHNiLCBuYW1lKTsKK30KKworbG9uZyBmcGF0aGNvbmYoaW50IGZkLCBpbnQgbmFtZSkgeworICBzdHJ1Y3Qgc3RhdGZzIHNiOworICBpZiAoZnN0YXRmcyhmZCwgJnNiKSA9PSAtMSkgeworICAgIHJldHVybiAtMTsKKyAgfQorICByZXR1cm4gX19wYXRoY29uZihzYiwgbmFtZSk7Cit9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9wb2xsLmNwcCBiL2xpYmMvYmlvbmljL3BvbGwuY3BwCmluZGV4IGViYjMxOGQuLjIzZWY5MGEgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3BvbGwuY3BwCisrKyBiL2xpYmMvYmlvbmljL3BvbGwuY3BwCkBAIC0yNiw2ICsyNiw4IEBACiAgKiBTVUNIIERBTUFHRS4KICAqLwogCisjdW5kZWYgX0ZPUlRJRllfU09VUkNFCisjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNsdWRlIDxzeXMvcG9sbC5oPgogI2luY2x1ZGUgPHN5cy9zZWxlY3QuaD4KIApkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvcG9zaXhfbWFkdmlzZS5jcHAgYi9saWJjL2Jpb25pYy9wb3NpeF9tYWR2aXNlLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNzdiZTAxCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvcG9zaXhfbWFkdmlzZS5jcHAKQEAgLTAsMCArMSw0MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxzeXMvbW1hbi5oPgorCisjaW5jbHVkZSAicHJpdmF0ZS9FcnJub1Jlc3RvcmVyLmgiCisKK2ludCBwb3NpeF9tYWR2aXNlKHZvaWQqIGFkZHIsIHNpemVfdCBsZW4sIGludCBhZHZpY2UpIHsKKyAgRXJybm9SZXN0b3JlciBlcnJub19yZXN0b3JlcjsKKworICAvLyBEb24ndCBjYWxsIG1hZHZpc2UoKSBvbiBQT1NJWF9NQURWX0RPTlRORUVELCBpdCB3aWxsIG1ha2UgdGhlIHNwYWNlIG5vdCBhdmFpbGFibGUuCisgIGlmIChhZHZpY2UgPT0gUE9TSVhfTUFEVl9ET05UTkVFRCkgeworICAgIHJldHVybiAwOworICB9CisgIHJldHVybiAobWFkdmlzZShhZGRyLCBsZW4sIGFkdmljZSkgPT0gMCA/IDAgOiBlcnJubyk7Cit9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9wb3NpeF90aW1lcnMuY3BwIGIvbGliYy9iaW9uaWMvcG9zaXhfdGltZXJzLmNwcAppbmRleCAzYzY2NGQ5Li5jOGY3MWM4IDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9wb3NpeF90aW1lcnMuY3BwCisrKyBiL2xpYmMvYmlvbmljL3Bvc2l4X3RpbWVycy5jcHAKQEAgLTI2LDEzICsyNiwxNSBAQAogICogU1VDSCBEQU1BR0UuCiAgKi8KIAotI2luY2x1ZGUgInB0aHJlYWRfaW50ZXJuYWwuaCIKLSNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19mdXRleC5oIgogI2luY2x1ZGUgInByaXZhdGUva2VybmVsX3NpZ3NldF90LmgiCiAKICNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPG1hbGxvYy5oPgorI2luY2x1ZGUgPHB0aHJlYWQuaD4KKyNpbmNsdWRlIDxzdGRhdG9taWMuaD4KICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHRpbWUuaD4KIAogLy8gU3lzdGVtIGNhbGxzLgogZXh0ZXJuICJDIiBpbnQgX19ydF9zaWd0aW1lZHdhaXQoY29uc3Qgc2lnc2V0X3QqLCBzaWdpbmZvX3QqLCBjb25zdCBzdHJ1Y3QgdGltZXNwZWMqLCBzaXplX3QpOwpAQCAtNTgsMTEgKzYwLDExIEBACiAKICAgaW50IHNpZ2V2X25vdGlmeTsKIAotICAvLyBUaGVzZSBmaWVsZHMgYXJlIG9ubHkgbmVlZGVkIGZvciBhIFNJR0VWX1RIUkVBRCB0aW1lci4KKyAgLy8gVGhlIGZpZWxkcyBiZWxvdyBhcmUgb25seSBuZWVkZWQgZm9yIGEgU0lHRVZfVEhSRUFEIHRpbWVyLgogICBwdGhyZWFkX3QgY2FsbGJhY2tfdGhyZWFkOwogICB2b2lkICgqY2FsbGJhY2spKHNpZ3ZhbF90KTsKICAgc2lndmFsX3QgY2FsbGJhY2tfYXJndW1lbnQ7Ci0gIHZvbGF0aWxlIGJvb2wgYXJtZWQ7CisgIGF0b21pY19ib29sIGRlbGV0ZWQ7ICAvLyBTZXQgd2hlbiB0aGUgdGltZXIgaXMgZGVsZXRlZCwgdG8gcHJldmVudCBmdXJ0aGVyIGNhbGxpbmcgb2YgY2FsbGJhY2suCiB9OwogCiBzdGF0aWMgX19rZXJuZWxfdGltZXJfdCB0b19rZXJuZWxfdGltZXJfaWQodGltZXJfdCB0aW1lcikgewpAQCAtODQsOCArODYsMTMgQEAKICAgICAgIGNvbnRpbnVlOwogICAgIH0KIAotICAgIGlmIChzaS5zaV9jb2RlID09IFNJX1RJTUVSICYmIHRpbWVyLT5hcm1lZCkgeworICAgIGlmIChzaS5zaV9jb2RlID09IFNJX1RJTUVSKSB7CiAgICAgICAvLyBUaGlzIHNpZ25hbCB3YXMgc2VudCBiZWNhdXNlIGEgdGltZXIgZmlyZWQsIHNvIGNhbGwgdGhlIGNhbGxiYWNrLgorCisgICAgICAvLyBBbGwgZXZlbnRzIHRvIHRoZSBjYWxsYmFjayB3aWxsIGJlIGlnbm9yZWQgd2hlbiB0aGUgdGltZXIgaXMgZGVsZXRlZC4KKyAgICAgIGlmIChhdG9taWNfbG9hZCgmdGltZXItPmRlbGV0ZWQpID09IHRydWUpIHsKKyAgICAgICAgY29udGludWU7CisgICAgICB9CiAgICAgICB0aW1lci0+Y2FsbGJhY2sodGltZXItPmNhbGxiYWNrX2FyZ3VtZW50KTsKICAgICB9IGVsc2UgaWYgKHNpLnNpX2NvZGUgPT0gU0lfVEtJTEwpIHsKICAgICAgIC8vIFRoaXMgc2lnbmFsIHdhcyBzZW50IGJlY2F1c2Ugc29tZW9uZSB3YW50cyB1cyB0byBleGl0LgpAQCAtOTYsOSArMTAzLDcgQEAKIH0KIAogc3RhdGljIHZvaWQgX190aW1lcl90aHJlYWRfc3RvcChQb3NpeFRpbWVyKiB0aW1lcikgewotICAvLyBJbW1lZGlhdGVseSBtYXJrIHRoZSB0aW1lciBhcyBkaXNhcm1lZCBzbyBldmVuIGlmIHNvbWUgZXZlbnRzCi0gIC8vIGNvbnRpbnVlIHRvIGhhcHBlbiwgdGhlIGNhbGxiYWNrIHdvbid0IGJlIGNhbGxlZC4KLSAgdGltZXItPmFybWVkID0gZmFsc2U7CisgIGF0b21pY19zdG9yZSgmdGltZXItPmRlbGV0ZWQsIHRydWUpOwogICBwdGhyZWFkX2tpbGwodGltZXItPmNhbGxiYWNrX3RocmVhZCwgVElNRVJfU0lHTkFMKTsKIH0KIApAQCAtMTI1LDcgKzEzMCw3IEBACiAgIC8vIE90aGVyd2lzZSwgdGhpcyBtdXN0IGJlIFNJR0VWX1RIUkVBRCB0aW1lci4uLgogICB0aW1lci0+Y2FsbGJhY2sgPSBldnAtPnNpZ2V2X25vdGlmeV9mdW5jdGlvbjsKICAgdGltZXItPmNhbGxiYWNrX2FyZ3VtZW50ID0gZXZwLT5zaWdldl92YWx1ZTsKLSAgdGltZXItPmFybWVkID0gZmFsc2U7CisgIGF0b21pY19pbml0KCZ0aW1lci0+ZGVsZXRlZCwgZmFsc2UpOwogCiAgIC8vIENoZWNrIGFyZ3VtZW50cyB0aGF0IHRoZSBrZXJuZWwgZG9lc24ndCBjYXJlIGFib3V0IGJ1dCB3ZSBkby4KICAgaWYgKHRpbWVyLT5jYWxsYmFjayA9PSBOVUxMKSB7CkBAIC0xNjksMTAgKzE3NCwxMCBAQAogICAgIHJldHVybiAtMTsKICAgfQogCi0gIC8vIEdpdmUgdGhlIHRocmVhZCBhIG1lYW5pbmdmdWwgbmFtZS4KKyAgLy8gR2l2ZSB0aGUgdGhyZWFkIGEgc3BlY2lmaWMgbWVhbmluZ2Z1bCBuYW1lLgogICAvLyBJdCBjYW4ndCBkbyB0aGlzIGl0c2VsZiBiZWNhdXNlIHRoZSBrZXJuZWwgdGltZXIgaXNuJ3QgY3JlYXRlZCB1bnRpbCBhZnRlciBpdCdzIHJ1bm5pbmcuCi0gIGNoYXIgbmFtZVszMl07Ci0gIHNucHJpbnRmKG5hbWUsIHNpemVvZihuYW1lKSwgIlBPU0lYIGludGVydmFsIHRpbWVyICVkIiwgdG9fa2VybmVsX3RpbWVyX2lkKHRpbWVyKSk7CisgIGNoYXIgbmFtZVsxNl07IC8vIDE2IGlzIHRoZSBrZXJuZWwtaW1wb3NlZCBsaW1pdC4KKyAgc25wcmludGYobmFtZSwgc2l6ZW9mKG5hbWUpLCAiUE9TSVggdGltZXIgJWQiLCB0b19rZXJuZWxfdGltZXJfaWQodGltZXIpKTsKICAgcHRocmVhZF9zZXRuYW1lX25wKHRpbWVyLT5jYWxsYmFja190aHJlYWQsIG5hbWUpOwogCiAgICp0aW1lcl9pZCA9IHRpbWVyOwpAQCAtMTk4LDI1ICsyMDMsMTkgQEAKICAgcmV0dXJuIDA7CiB9CiAKLS8vIGh0dHA6Ly9wdWJzLm9wZW5ncm91cC5vcmcvb25saW5lcHVicy85Njk5OTE5Nzk5L2Z1bmN0aW9ucy90aW1lcl9nZXRvdmVycnVuLmh0bWwKKy8vIGh0dHA6Ly9wdWJzLm9wZW5ncm91cC5vcmcvb25saW5lcHVicy85Njk5OTE5Nzk5L2Z1bmN0aW9ucy90aW1lcl9nZXR0aW1lLmh0bWwKIGludCB0aW1lcl9nZXR0aW1lKHRpbWVyX3QgaWQsIGl0aW1lcnNwZWMqIHRzKSB7CiAgIHJldHVybiBfX3RpbWVyX2dldHRpbWUodG9fa2VybmVsX3RpbWVyX2lkKGlkKSwgdHMpOwogfQogCi0vLyBodHRwOi8vcHVicy5vcGVuZ3JvdXAub3JnL29ubGluZXB1YnMvOTY5OTkxOTc5OS9mdW5jdGlvbnMvdGltZXJfZ2V0b3ZlcnJ1bi5odG1sCisvLyBodHRwOi8vcHVicy5vcGVuZ3JvdXAub3JnL29ubGluZXB1YnMvOTY5OTkxOTc5OS9mdW5jdGlvbnMvdGltZXJfc2V0dGltZS5odG1sCisvLyBXaGVuIHVzaW5nIHRpbWVyX3NldHRpbWUgdG8gZGlzYXJtIGEgcmVwZWF0YWJsZSBTSUdFVl9USFJFQUQgdGltZXIgd2l0aCBhIHZlcnkgc21hbGwKKy8vIHBlcmlvZCAobGlrZSBiZWxvdyAxbXMpLCB0aGUga2VybmVsIG1heSBjb250aW51ZSB0byBzZW5kIGV2ZW50cyB0byB0aGUgY2FsbGJhY2sgdGhyZWFkCisvLyBmb3IgYSBmZXcgZXh0cmEgdGltZXMuIFRoaXMgYmVoYXZpb3IgaXMgZmluZSBiZWNhdXNlIGluIFBPU0lYIHN0YW5kYXJkOiBUaGUgZWZmZWN0IG9mCisvLyBkaXNhcm1pbmcgb3IgcmVzZXR0aW5nIGEgdGltZXIgd2l0aCBwZW5kaW5nIGV4cGlyYXRpb24gbm90aWZpY2F0aW9ucyBpcyB1bnNwZWNpZmllZC4KIGludCB0aW1lcl9zZXR0aW1lKHRpbWVyX3QgaWQsIGludCBmbGFncywgY29uc3QgaXRpbWVyc3BlYyogdHMsIGl0aW1lcnNwZWMqIG90cykgewogICBQb3NpeFRpbWVyKiB0aW1lcj0gcmVpbnRlcnByZXRfY2FzdDxQb3NpeFRpbWVyKj4oaWQpOwotICBpbnQgcmMgPSBfX3RpbWVyX3NldHRpbWUodGltZXItPmtlcm5lbF90aW1lcl9pZCwgZmxhZ3MsIHRzLCBvdHMpOwotICBpZiAocmMgPT0gMCkgewotICAgIC8vIE1hcmsgdGhlIHRpbWVyIGFzIGVpdGhlciBiZWluZyBhcm1lZCBvciBkaXNhcm1lZC4gVGhpcyBhdm9pZHMgdGhlCi0gICAgLy8gY2FsbGJhY2sgYmVpbmcgY2FsbGVkIGFmdGVyIHRoZSBkaXNhcm0gZm9yIFNJR0VWX1RIUkVBRCB0aW1lcnMgb25seS4KLSAgICBpZiAodHMtPml0X3ZhbHVlLnR2X3NlYyAhPSAwIHx8IHRzLT5pdF92YWx1ZS50dl9uc2VjICE9IDApIHsKLSAgICAgIHRpbWVyLT5hcm1lZCA9IHRydWU7Ci0gICAgfSBlbHNlIHsKLSAgICAgIHRpbWVyLT5hcm1lZCA9IGZhbHNlOwotICAgIH0KLSAgfQotICByZXR1cm4gcmM7CisgIHJldHVybiBfX3RpbWVyX3NldHRpbWUodGltZXItPmtlcm5lbF90aW1lcl9pZCwgZmxhZ3MsIHRzLCBvdHMpOwogfQogCiAvLyBodHRwOi8vcHVicy5vcGVuZ3JvdXAub3JnL29ubGluZXB1YnMvOTY5OTkxOTc5OS9mdW5jdGlvbnMvdGltZXJfZ2V0b3ZlcnJ1bi5odG1sCmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9wdGhyZWFkX2FjY2Vzc29yLmggYi9saWJjL2Jpb25pYy9wdGhyZWFkX2FjY2Vzc29yLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGRmNGE1YTIuLjAwMDAwMDAKLS0tIGEvbGliYy9iaW9uaWMvcHRocmVhZF9hY2Nlc3Nvci5oCisrKyAvZGV2L251bGwKQEAgLTEsNjQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKgotICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7Ci0gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCi0gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKLSAqCi0gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAotICoKLSAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKLSAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCi0gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KLSAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKLSAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICovCi0KLSNpZm5kZWYgUFRIUkVBRF9BQ0NFU1NPUl9ICi0jZGVmaW5lIFBUSFJFQURfQUNDRVNTT1JfSAotCi0jaW5jbHVkZSA8cHRocmVhZC5oPgotCi0jaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfbWFjcm9zLmgiCi0jaW5jbHVkZSAicHRocmVhZF9pbnRlcm5hbC5oIgotCi1jbGFzcyBwdGhyZWFkX2FjY2Vzc29yIHsKLSBwdWJsaWM6Ci0gIGV4cGxpY2l0IHB0aHJlYWRfYWNjZXNzb3IocHRocmVhZF90IGRlc2lyZWRfdGhyZWFkKSB7Ci0gICAgTG9jaygpOwotICAgIGZvciAodGhyZWFkXyA9IGdfdGhyZWFkX2xpc3Q7IHRocmVhZF8gIT0gTlVMTDsgdGhyZWFkXyA9IHRocmVhZF8tPm5leHQpIHsKLSAgICAgIGlmICh0aHJlYWRfID09IHJlaW50ZXJwcmV0X2Nhc3Q8cHRocmVhZF9pbnRlcm5hbF90Kj4oZGVzaXJlZF90aHJlYWQpKSB7Ci0gICAgICAgIGJyZWFrOwotICAgICAgfQotICAgIH0KLSAgfQotCi0gIH5wdGhyZWFkX2FjY2Vzc29yKCkgewotICAgIFVubG9jaygpOwotICB9Ci0KLSAgdm9pZCBVbmxvY2soKSB7Ci0gICAgaWYgKGlzX2xvY2tlZF8pIHsKLSAgICAgIGlzX2xvY2tlZF8gPSBmYWxzZTsKLSAgICAgIHRocmVhZF8gPSBOVUxMOwotICAgICAgcHRocmVhZF9tdXRleF91bmxvY2soJmdfdGhyZWFkX2xpc3RfbG9jayk7Ci0gICAgfQotICB9Ci0KLSAgcHRocmVhZF9pbnRlcm5hbF90JiBvcGVyYXRvciooKSBjb25zdCB7IHJldHVybiAqdGhyZWFkXzsgfQotICBwdGhyZWFkX2ludGVybmFsX3QqIG9wZXJhdG9yLT4oKSBjb25zdCB7IHJldHVybiB0aHJlYWRfOyB9Ci0gIHB0aHJlYWRfaW50ZXJuYWxfdCogZ2V0KCkgY29uc3QgeyByZXR1cm4gdGhyZWFkXzsgfQotCi0gcHJpdmF0ZToKLSAgcHRocmVhZF9pbnRlcm5hbF90KiB0aHJlYWRfOwotICBib29sIGlzX2xvY2tlZF87Ci0KLSAgdm9pZCBMb2NrKCkgewotICAgIHB0aHJlYWRfbXV0ZXhfbG9jaygmZ190aHJlYWRfbGlzdF9sb2NrKTsKLSAgICBpc19sb2NrZWRfID0gdHJ1ZTsKLSAgfQotCi0gIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihwdGhyZWFkX2FjY2Vzc29yKTsKLX07Ci0KLSNlbmRpZiAvLyBQVEhSRUFEX0FDQ0VTU09SX0gKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3B0aHJlYWRfYXRmb3JrLmNwcCBiL2xpYmMvYmlvbmljL3B0aHJlYWRfYXRmb3JrLmNwcAppbmRleCBiODQ1ZjdkLi4wOTNmZmQyIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9wdGhyZWFkX2F0Zm9yay5jcHAKKysrIGIvbGliYy9iaW9uaWMvcHRocmVhZF9hdGZvcmsuY3BwCkBAIC0yOCw2ICsyOCw5IEBACiAKICNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPHB0aHJlYWQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX21hY3Jvcy5oIgogCiBzdHJ1Y3QgYXRmb3JrX3QgewogICBhdGZvcmtfdCogbmV4dDsKQEAgLTM2LDc5ICszOSwxNDMgQEAKICAgdm9pZCAoKnByZXBhcmUpKHZvaWQpOwogICB2b2lkICgqY2hpbGQpKHZvaWQpOwogICB2b2lkICgqcGFyZW50KSh2b2lkKTsKKworICB2b2lkKiBkc29faGFuZGxlOwogfTsKIAotc3RydWN0IGF0Zm9ya19saXN0X3QgewotICBhdGZvcmtfdCogZmlyc3Q7Ci0gIGF0Zm9ya190KiBsYXN0OworY2xhc3MgYXRmb3JrX2xpc3RfdCB7CisgcHVibGljOgorICBhdGZvcmtfbGlzdF90KCkgOiBmaXJzdF8obnVsbHB0ciksIGxhc3RfKG51bGxwdHIpIHt9CisKKyAgdGVtcGxhdGU8dHlwZW5hbWUgRj4KKyAgdm9pZCB3YWxrX2ZvcndhcmQoRiBmKSB7CisgICAgZm9yIChhdGZvcmtfdCogaXQgPSBmaXJzdF87IGl0ICE9IG51bGxwdHI7IGl0ID0gaXQtPm5leHQpIHsKKyAgICAgIGYoaXQpOworICAgIH0KKyAgfQorCisgIHRlbXBsYXRlPHR5cGVuYW1lIEY+CisgIHZvaWQgd2Fsa19iYWNrd2FyZHMoRiBmKSB7CisgICAgZm9yIChhdGZvcmtfdCogaXQgPSBsYXN0XzsgaXQgIT0gbnVsbHB0cjsgaXQgPSBpdC0+cHJldikgeworICAgICAgZihpdCk7CisgICAgfQorICB9CisKKyAgdm9pZCBwdXNoX2JhY2soYXRmb3JrX3QqIGVudHJ5KSB7CisgICAgZW50cnktPm5leHQgPSBudWxscHRyOworICAgIGVudHJ5LT5wcmV2ID0gbGFzdF87CisgICAgaWYgKGVudHJ5LT5wcmV2ICE9IG51bGxwdHIpIHsKKyAgICAgIGVudHJ5LT5wcmV2LT5uZXh0ID0gZW50cnk7CisgICAgfQorICAgIGlmIChmaXJzdF8gPT0gbnVsbHB0cikgeworICAgICAgZmlyc3RfID0gZW50cnk7CisgICAgfQorICAgIGxhc3RfID0gZW50cnk7CisgIH0KKworICB0ZW1wbGF0ZTx0eXBlbmFtZSBGPgorICB2b2lkIHJlbW92ZV9pZihGIHByZWRpY2F0ZSkgeworICAgIGF0Zm9ya190KiBpdCA9IGZpcnN0XzsKKyAgICB3aGlsZSAoaXQgIT0gbnVsbHB0cikgeworICAgICAgaWYgKHByZWRpY2F0ZShpdCkpIHsKKyAgICAgICAgYXRmb3JrX3QqIGVudHJ5ID0gaXQ7CisgICAgICAgIGl0ID0gaXQtPm5leHQ7CisgICAgICAgIHJlbW92ZShlbnRyeSk7CisgICAgICB9IGVsc2UgeworICAgICAgICBpdCA9IGl0LT5uZXh0OworICAgICAgfQorICAgIH0KKyAgfQorCisgcHJpdmF0ZToKKyAgdm9pZCByZW1vdmUoYXRmb3JrX3QqIGVudHJ5KSB7CisgICAgaWYgKGVudHJ5LT5wcmV2ICE9IG51bGxwdHIpIHsKKyAgICAgIGVudHJ5LT5wcmV2LT5uZXh0ID0gZW50cnktPm5leHQ7CisgICAgfSBlbHNlIHsKKyAgICAgIGZpcnN0XyA9IGVudHJ5LT5uZXh0OworICAgIH0KKworICAgIGlmIChlbnRyeS0+bmV4dCAhPSBudWxscHRyKSB7CisgICAgICBlbnRyeS0+bmV4dC0+cHJldiA9IGVudHJ5LT5wcmV2OworICAgIH0gZWxzZSB7CisgICAgICBsYXN0XyA9IGVudHJ5LT5wcmV2OworICAgIH0KKworICAgIGZyZWUoZW50cnkpOworICB9CisKKyAgYXRmb3JrX3QqIGZpcnN0XzsKKyAgYXRmb3JrX3QqIGxhc3RfOworCisgIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihhdGZvcmtfbGlzdF90KTsKIH07CiAKLXN0YXRpYyBwdGhyZWFkX211dGV4X3QgZ19hdGZvcmtfbGlzdF9tdXRleCA9IFBUSFJFQURfUkVDVVJTSVZFX01VVEVYX0lOSVRJQUxJWkVSOwotc3RhdGljIGF0Zm9ya19saXN0X3QgZ19hdGZvcmtfbGlzdCA9IHsgTlVMTCwgTlVMTCB9Oworc3RhdGljIHB0aHJlYWRfbXV0ZXhfdCBnX2F0Zm9ya19saXN0X211dGV4ID0gUFRIUkVBRF9SRUNVUlNJVkVfTVVURVhfSU5JVElBTElaRVJfTlA7CitzdGF0aWMgYXRmb3JrX2xpc3RfdCBnX2F0Zm9ya19saXN0OwogCiB2b2lkIF9fYmlvbmljX2F0Zm9ya19ydW5fcHJlcGFyZSgpIHsKICAgLy8gV2UgbG9jayB0aGUgYXRmb3JrIGxpc3QgaGVyZSwgdW5sb2NrIGl0IGluIHRoZSBwYXJlbnQsIGFuZCByZXNldCBpdCBpbiB0aGUgY2hpbGQuCiAgIC8vIFRoaXMgZW5zdXJlcyB0aGF0IG5vYm9keSBjYW4gbW9kaWZ5IHRoZSBoYW5kbGVyIGFycmF5IGJldHdlZW4gdGhlIGNhbGxzCiAgIC8vIHRvIHRoZSBwcmVwYXJlIGFuZCBwYXJlbnQvY2hpbGQgaGFuZGxlcnMuCi0gIC8vCi0gIC8vIFRPRE86IElmIGEgaGFuZGxlciB0cmllcyB0byBtdXRhdGUgdGhlIGxpc3QsIHRoZXknbGwgYmxvY2suIFdlIHNob3VsZCBwcm9iYWJseSBjb3B5Ci0gIC8vIHRoZSBsaXN0IGJlZm9yZSBmb3JraW5nLCBhbmQgaGF2ZSBwcmVwYXJlLCBwYXJlbnQsIGFuZCBjaGlsZCBhbGwgd29yayBvbiB0aGUgY29uc2lzdGVudCBjb3B5LgogICBwdGhyZWFkX211dGV4X2xvY2soJmdfYXRmb3JrX2xpc3RfbXV0ZXgpOwogCiAgIC8vIENhbGwgcHRocmVhZF9hdGZvcmsoKSBwcmVwYXJlIGhhbmRsZXJzLiBQT1NJWCBzdGF0ZXMgdGhhdCB0aGUgcHJlcGFyZQogICAvLyBoYW5kbGVycyBzaG91bGQgYmUgY2FsbGVkIGluIHRoZSByZXZlcnNlIG9yZGVyIG9mIHRoZSBwYXJlbnQvY2hpbGQKICAgLy8gaGFuZGxlcnMsIHNvIHdlIGl0ZXJhdGUgYmFja3dhcmRzLgotICBmb3IgKGF0Zm9ya190KiBpdCA9IGdfYXRmb3JrX2xpc3QubGFzdDsgaXQgIT0gTlVMTDsgaXQgPSBpdC0+cHJldikgewotICAgIGlmIChpdC0+cHJlcGFyZSAhPSBOVUxMKSB7CisgIGdfYXRmb3JrX2xpc3Qud2Fsa19iYWNrd2FyZHMoW10oYXRmb3JrX3QqIGl0KSB7CisgICAgaWYgKGl0LT5wcmVwYXJlICE9IG51bGxwdHIpIHsKICAgICAgIGl0LT5wcmVwYXJlKCk7CiAgICAgfQotICB9CisgIH0pOwogfQogCiB2b2lkIF9fYmlvbmljX2F0Zm9ya19ydW5fY2hpbGQoKSB7Ci0gIGZvciAoYXRmb3JrX3QqIGl0ID0gZ19hdGZvcmtfbGlzdC5maXJzdDsgaXQgIT0gTlVMTDsgaXQgPSBpdC0+bmV4dCkgewotICAgIGlmIChpdC0+Y2hpbGQgIT0gTlVMTCkgeworICBnX2F0Zm9ya19saXN0LndhbGtfZm9yd2FyZChbXShhdGZvcmtfdCogaXQpIHsKKyAgICBpZiAoaXQtPmNoaWxkICE9IG51bGxwdHIpIHsKICAgICAgIGl0LT5jaGlsZCgpOwogICAgIH0KLSAgfQorICB9KTsKIAotICBnX2F0Zm9ya19saXN0X211dGV4ID0gUFRIUkVBRF9SRUNVUlNJVkVfTVVURVhfSU5JVElBTElaRVI7CisgIGdfYXRmb3JrX2xpc3RfbXV0ZXggPSBQVEhSRUFEX1JFQ1VSU0lWRV9NVVRFWF9JTklUSUFMSVpFUl9OUDsKIH0KIAogdm9pZCBfX2Jpb25pY19hdGZvcmtfcnVuX3BhcmVudCgpIHsKLSAgZm9yIChhdGZvcmtfdCogaXQgPSBnX2F0Zm9ya19saXN0LmZpcnN0OyBpdCAhPSBOVUxMOyBpdCA9IGl0LT5uZXh0KSB7Ci0gICAgaWYgKGl0LT5wYXJlbnQgIT0gTlVMTCkgeworICBnX2F0Zm9ya19saXN0LndhbGtfZm9yd2FyZChbXShhdGZvcmtfdCogaXQpIHsKKyAgICBpZiAoaXQtPnBhcmVudCAhPSBudWxscHRyKSB7CiAgICAgICBpdC0+cGFyZW50KCk7CiAgICAgfQotICB9CisgIH0pOwogCiAgIHB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZnX2F0Zm9ya19saXN0X211dGV4KTsKIH0KIAotaW50IHB0aHJlYWRfYXRmb3JrKHZvaWQgKCpwcmVwYXJlKSh2b2lkKSwgdm9pZCAoKnBhcmVudCkodm9pZCksIHZvaWQoKmNoaWxkKSh2b2lkKSkgeworLy8gX19yZWdpc3Rlcl9hdGZvcmsgaXMgdGhlIG5hbWUgdXNlZCBieSBnbGliYworZXh0ZXJuICJDIiBpbnQgX19yZWdpc3Rlcl9hdGZvcmsodm9pZCAoKnByZXBhcmUpKHZvaWQpLCB2b2lkICgqcGFyZW50KSh2b2lkKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQoKmNoaWxkKSh2b2lkKSwgdm9pZCogZHNvKSB7CiAgIGF0Zm9ya190KiBlbnRyeSA9IHJlaW50ZXJwcmV0X2Nhc3Q8YXRmb3JrX3QqPihtYWxsb2Moc2l6ZW9mKGF0Zm9ya190KSkpOwotICBpZiAoZW50cnkgPT0gTlVMTCkgeworICBpZiAoZW50cnkgPT0gbnVsbHB0cikgewogICAgIHJldHVybiBFTk9NRU07CiAgIH0KIAogICBlbnRyeS0+cHJlcGFyZSA9IHByZXBhcmU7CiAgIGVudHJ5LT5wYXJlbnQgPSBwYXJlbnQ7CiAgIGVudHJ5LT5jaGlsZCA9IGNoaWxkOworICBlbnRyeS0+ZHNvX2hhbmRsZSA9IGRzbzsKIAogICBwdGhyZWFkX211dGV4X2xvY2soJmdfYXRmb3JrX2xpc3RfbXV0ZXgpOwogCi0gIC8vIEFwcGVuZCAnZW50cnknIHRvIHRoZSBsaXN0LgotICBlbnRyeS0+bmV4dCA9IE5VTEw7Ci0gIGVudHJ5LT5wcmV2ID0gZ19hdGZvcmtfbGlzdC5sYXN0OwotICBpZiAoZW50cnktPnByZXYgIT0gTlVMTCkgewotICAgIGVudHJ5LT5wcmV2LT5uZXh0ID0gZW50cnk7Ci0gIH0KLSAgaWYgKGdfYXRmb3JrX2xpc3QuZmlyc3QgPT0gTlVMTCkgewotICAgIGdfYXRmb3JrX2xpc3QuZmlyc3QgPSBlbnRyeTsKLSAgfQotICBnX2F0Zm9ya19saXN0Lmxhc3QgPSBlbnRyeTsKKyAgZ19hdGZvcmtfbGlzdC5wdXNoX2JhY2soZW50cnkpOwogCiAgIHB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZnX2F0Zm9ya19saXN0X211dGV4KTsKIAogICByZXR1cm4gMDsKIH0KKworZXh0ZXJuICJDIiBfX0xJQkNfSElEREVOX18gdm9pZCBfX3VucmVnaXN0ZXJfYXRmb3JrKHZvaWQqIGRzbykgeworICBwdGhyZWFkX211dGV4X2xvY2soJmdfYXRmb3JrX2xpc3RfbXV0ZXgpOworICBnX2F0Zm9ya19saXN0LnJlbW92ZV9pZihbJl0oY29uc3QgYXRmb3JrX3QqIGVudHJ5KSB7CisgICAgcmV0dXJuIGVudHJ5LT5kc29faGFuZGxlID09IGRzbzsKKyAgfSk7CisgIHB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZnX2F0Zm9ya19saXN0X211dGV4KTsKK30KKwpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvcHRocmVhZF9hdHRyLmNwcCBiL2xpYmMvYmlvbmljL3B0aHJlYWRfYXR0ci5jcHAKaW5kZXggYzY1Y2NjMS4uN2FkMzQzMSAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvcHRocmVhZF9hdHRyLmNwcAorKysgYi9saWJjL2Jpb25pYy9wdGhyZWFkX2F0dHIuY3BwCkBAIC0xNTIsOSArMTUyLDYgQEAKIH0KIAogaW50IHB0aHJlYWRfYXR0cl9nZXRzdGFjayhjb25zdCBwdGhyZWFkX2F0dHJfdCogYXR0ciwgdm9pZCoqIHN0YWNrX2Jhc2UsIHNpemVfdCogc3RhY2tfc2l6ZSkgewotICBpZiAoKGF0dHItPmZsYWdzICYgUFRIUkVBRF9BVFRSX0ZMQUdfTUFJTl9USFJFQUQpICE9IDApIHsKLSAgICByZXR1cm4gX19wdGhyZWFkX2F0dHJfZ2V0c3RhY2tfbWFpbl90aHJlYWQoc3RhY2tfYmFzZSwgc3RhY2tfc2l6ZSk7Ci0gIH0KICAgKnN0YWNrX2Jhc2UgPSBhdHRyLT5zdGFja19iYXNlOwogICAqc3RhY2tfc2l6ZSA9IGF0dHItPnN0YWNrX3NpemU7CiAgIHJldHVybiAwOwpAQCAtMTcxLDcgKzE2OCwxOCBAQAogfQogCiBpbnQgcHRocmVhZF9nZXRhdHRyX25wKHB0aHJlYWRfdCB0LCBwdGhyZWFkX2F0dHJfdCogYXR0cikgewotICAqYXR0ciA9IHJlaW50ZXJwcmV0X2Nhc3Q8cHRocmVhZF9pbnRlcm5hbF90Kj4odCktPmF0dHI7CisgIHB0aHJlYWRfaW50ZXJuYWxfdCogdGhyZWFkID0gcmVpbnRlcnByZXRfY2FzdDxwdGhyZWFkX2ludGVybmFsX3QqPih0KTsKKyAgKmF0dHIgPSB0aHJlYWQtPmF0dHI7CisgIC8vIFdlIHByZWZlciByZWFkaW5nIGpvaW5fc3RhdGUgaGVyZSB0byBzZXR0aW5nIHRocmVhZC0+YXR0ci5mbGFncyBpbiBwdGhyZWFkX2RldGFjaC4KKyAgLy8gQmVjYXVzZSBkYXRhIHJhY2UgZXhpc3RzIGluIHRoZSBsYXR0ZXIgY2FzZS4KKyAgaWYgKGF0b21pY19sb2FkKCZ0aHJlYWQtPmpvaW5fc3RhdGUpID09IFRIUkVBRF9ERVRBQ0hFRCkgeworICAgIGF0dHItPmZsYWdzIHw9IFBUSFJFQURfQVRUUl9GTEFHX0RFVEFDSEVEOworICB9CisgIC8vIFRoZSBtYWluIHRocmVhZCdzIHN0YWNrIGluZm9ybWF0aW9uIGlzIG5vdCBzdG9yZWQgaW4gdGhyZWFkLT5hdHRyLCBhbmQgd2UgbmVlZCB0bworICAvLyBjb2xsZWN0IHRoYXQgYXQgcnVudGltZS4KKyAgaWYgKHRocmVhZC0+dGlkID09IGdldHBpZCgpKSB7CisgICAgcmV0dXJuIF9fcHRocmVhZF9hdHRyX2dldHN0YWNrX21haW5fdGhyZWFkKCZhdHRyLT5zdGFja19iYXNlLCAmYXR0ci0+c3RhY2tfc2l6ZSk7CisgIH0KICAgcmV0dXJuIDA7CiB9CiAKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3B0aHJlYWRfY29uZC5jcHAgYi9saWJjL2Jpb25pYy9wdGhyZWFkX2NvbmQuY3BwCmluZGV4IGU2MjNiNjIuLjRhNjlkYTUgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3B0aHJlYWRfY29uZC5jcHAKKysrIGIvbGliYy9iaW9uaWMvcHRocmVhZF9jb25kLmNwcApAQCAtMzAsMTcgKzMwLDI0IEBACiAKICNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPHN0ZGF0b21pYy5oPgogI2luY2x1ZGUgPHN5cy9tbWFuLmg+CiAjaW5jbHVkZSA8dGltZS5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCiAjaW5jbHVkZSAicHRocmVhZF9pbnRlcm5hbC5oIgogCi0jaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfYXRvbWljX2lubGluZS5oIgogI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX2Z1dGV4LmgiCiAjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfdGltZV9jb252ZXJzaW9ucy5oIgogI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX3Rscy5oIgogCisvLyBYWFggKnRlY2huaWNhbGx5KiB0aGVyZSBpcyBhIHJhY2UgY29uZGl0aW9uIHRoYXQgY291bGQgYWxsb3cKKy8vIFhYWCBhIHNpZ25hbCB0byBiZSBtaXNzZWQuICBJZiB0aHJlYWQgQSBpcyBwcmVlbXB0ZWQgaW4gX3dhaXQoKQorLy8gWFhYIGFmdGVyIHVubG9ja2luZyB0aGUgbXV0ZXggYW5kIGJlZm9yZSB3YWl0aW5nLCBhbmQgaWYgb3RoZXIKKy8vIFhYWCB0aHJlYWRzIGNhbGwgc2lnbmFsIG9yIGJyb2FkY2FzdCBVSU5UX01BWC8yIHRpbWVzIChleGFjdGx5KSwKKy8vIFhYWCBiZWZvcmUgdGhyZWFkIEEgaXMgc2NoZWR1bGVkIGFnYWluIGFuZCBjYWxscyBmdXRleF93YWl0KCksCisvLyBYWFggdGhlbiB0aGUgc2lnbmFsIHdpbGwgYmUgbG9zdC4KKwogLy8gV2UgdXNlIG9uZSBiaXQgaW4gcHRocmVhZF9jb25kYXR0cl90IChsb25nKSB2YWx1ZXMgYXMgdGhlICdzaGFyZWQnIGZsYWcKIC8vIGFuZCBvbmUgYml0IGZvciB0aGUgY2xvY2sgdHlwZSAoQ0xPQ0tfUkVBTFRJTUUgaXMgKChjbG9ja2lkX3QpIDEpLCBhbmQKIC8vIENMT0NLX01PTk9UT05JQyBpcyAoKGNsb2NraWRfdCkgMCkuKS4gVGhlIHJlc3Qgb2YgdGhlIGJpdHMgYXJlIGEgY291bnRlci4KQEAgLTU3LDcgKzY0LDYgQEAKICNkZWZpbmUgQ09ORF9HRVRfQ0xPQ0soYykgKCgoYykgJiBDT05EX0NMT0NLX01BU0spID4+IDEpCiAjZGVmaW5lIENPTkRfU0VUX0NMT0NLKGF0dHIsIGMpICgoYXR0cikgfCAoYyA8PCAxKSkKIAotCiBpbnQgcHRocmVhZF9jb25kYXR0cl9pbml0KHB0aHJlYWRfY29uZGF0dHJfdCogYXR0cikgewogICAqYXR0ciA9IDA7CiAgICphdHRyIHw9IFBUSFJFQURfUFJPQ0VTU19QUklWQVRFOwpAQCAtOTgsNjIgKzEwNCw3OCBAQAogICByZXR1cm4gMDsKIH0KIAorc3RydWN0IHB0aHJlYWRfY29uZF9pbnRlcm5hbF90IHsKKyAgYXRvbWljX3VpbnQgc3RhdGU7CiAKLS8vIFhYWCAqdGVjaG5pY2FsbHkqIHRoZXJlIGlzIGEgcmFjZSBjb25kaXRpb24gdGhhdCBjb3VsZCBhbGxvdwotLy8gWFhYIGEgc2lnbmFsIHRvIGJlIG1pc3NlZC4gIElmIHRocmVhZCBBIGlzIHByZWVtcHRlZCBpbiBfd2FpdCgpCi0vLyBYWFggYWZ0ZXIgdW5sb2NraW5nIHRoZSBtdXRleCBhbmQgYmVmb3JlIHdhaXRpbmcsIGFuZCBpZiBvdGhlcgotLy8gWFhYIHRocmVhZHMgY2FsbCBzaWduYWwgb3IgYnJvYWRjYXN0IFVJTlRfTUFYLzIgdGltZXMgKGV4YWN0bHkpLAotLy8gWFhYIGJlZm9yZSB0aHJlYWQgQSBpcyBzY2hlZHVsZWQgYWdhaW4gYW5kIGNhbGxzIGZ1dGV4X3dhaXQoKSwKLS8vIFhYWCB0aGVuIHRoZSBzaWduYWwgd2lsbCBiZSBsb3N0LgotCi1pbnQgcHRocmVhZF9jb25kX2luaXQocHRocmVhZF9jb25kX3QqIGNvbmQsIGNvbnN0IHB0aHJlYWRfY29uZGF0dHJfdCogYXR0cikgewotICBpZiAoYXR0ciAhPSBOVUxMKSB7Ci0gICAgY29uZC0+dmFsdWUgPSAoKmF0dHIgJiBDT05EX0ZMQUdTX01BU0spOwotICB9IGVsc2UgewotICAgIGNvbmQtPnZhbHVlID0gMDsKKyAgYm9vbCBwcm9jZXNzX3NoYXJlZCgpIHsKKyAgICByZXR1cm4gQ09ORF9JU19TSEFSRUQoYXRvbWljX2xvYWRfZXhwbGljaXQoJnN0YXRlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCkpOwogICB9CiAKKyAgaW50IGdldF9jbG9jaygpIHsKKyAgICByZXR1cm4gQ09ORF9HRVRfQ0xPQ0soYXRvbWljX2xvYWRfZXhwbGljaXQoJnN0YXRlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCkpOworICB9CisKKyNpZiBkZWZpbmVkKF9fTFA2NF9fKQorICBjaGFyIF9fcmVzZXJ2ZWRbNDRdOworI2VuZGlmCit9OworCitzdGF0aWNfYXNzZXJ0KHNpemVvZihwdGhyZWFkX2NvbmRfdCkgPT0gc2l6ZW9mKHB0aHJlYWRfY29uZF9pbnRlcm5hbF90KSwKKyAgICAgICAgICAgICAgInB0aHJlYWRfY29uZF90IHNob3VsZCBhY3R1YWxseSBiZSBwdGhyZWFkX2NvbmRfaW50ZXJuYWxfdCBpbiBpbXBsZW1lbnRhdGlvbi4iKTsKKworLy8gRm9yIGJpbmFyeSBjb21wYXRpYmlsaXR5IHdpdGggb2xkIHZlcnNpb24gb2YgcHRocmVhZF9jb25kX3QsIHdlIGNhbid0IHVzZSBtb3JlIHN0cmljdCBhbGlnbm1lbnQKKy8vIHRoYW4gNC1ieXRlIGFsaWdubWVudC4KK3N0YXRpY19hc3NlcnQoYWxpZ25vZihwdGhyZWFkX2NvbmRfdCkgPT0gNCwKKyAgICAgICAgICAgICAgInB0aHJlYWRfY29uZF90IHNob3VsZCBmdWxmaWxsIHRoZSBhbGlnbm1lbnQgcmVxdWlyZW1lbnQgb2YgcHRocmVhZF9jb25kX2ludGVybmFsX3QuIik7CisKK3N0YXRpYyBwdGhyZWFkX2NvbmRfaW50ZXJuYWxfdCogX19nZXRfaW50ZXJuYWxfY29uZChwdGhyZWFkX2NvbmRfdCogY29uZF9pbnRlcmZhY2UpIHsKKyAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8cHRocmVhZF9jb25kX2ludGVybmFsX3QqPihjb25kX2ludGVyZmFjZSk7Cit9CisKK2ludCBwdGhyZWFkX2NvbmRfaW5pdChwdGhyZWFkX2NvbmRfdCogY29uZF9pbnRlcmZhY2UsIGNvbnN0IHB0aHJlYWRfY29uZGF0dHJfdCogYXR0cikgeworICBwdGhyZWFkX2NvbmRfaW50ZXJuYWxfdCogY29uZCA9IF9fZ2V0X2ludGVybmFsX2NvbmQoY29uZF9pbnRlcmZhY2UpOworCisgIHVuc2lnbmVkIGludCBpbml0X3N0YXRlID0gMDsKKyAgaWYgKGF0dHIgIT0gTlVMTCkgeworICAgIGluaXRfc3RhdGUgPSAoKmF0dHIgJiBDT05EX0ZMQUdTX01BU0spOworICB9CisgIGF0b21pY19pbml0KCZjb25kLT5zdGF0ZSwgaW5pdF9zdGF0ZSk7CisKICAgcmV0dXJuIDA7CiB9CiAKLWludCBwdGhyZWFkX2NvbmRfZGVzdHJveShwdGhyZWFkX2NvbmRfdCogY29uZCkgewotICBjb25kLT52YWx1ZSA9IDB4ZGVhZGMwNGQ7CitpbnQgcHRocmVhZF9jb25kX2Rlc3Ryb3kocHRocmVhZF9jb25kX3QqIGNvbmRfaW50ZXJmYWNlKSB7CisgIHB0aHJlYWRfY29uZF9pbnRlcm5hbF90KiBjb25kID0gX19nZXRfaW50ZXJuYWxfY29uZChjb25kX2ludGVyZmFjZSk7CisgIGF0b21pY19zdG9yZV9leHBsaWNpdCgmY29uZC0+c3RhdGUsIDB4ZGVhZGMwNGQsIG1lbW9yeV9vcmRlcl9yZWxheGVkKTsKICAgcmV0dXJuIDA7CiB9CiAKIC8vIFRoaXMgZnVuY3Rpb24gaXMgdXNlZCBieSBwdGhyZWFkX2NvbmRfYnJvYWRjYXN0IGFuZAogLy8gcHRocmVhZF9jb25kX3NpZ25hbCB0byBhdG9taWNhbGx5IGRlY3JlbWVudCB0aGUgY291bnRlcgotLy8gdGhlbiB3YWtlIHVwICdjb3VudGVyJyB0aHJlYWRzLgotc3RhdGljIGludCBfX3B0aHJlYWRfY29uZF9wdWxzZShwdGhyZWFkX2NvbmRfdCogY29uZCwgaW50IGNvdW50ZXIpIHsKLSAgaW50IGZsYWdzID0gKGNvbmQtPnZhbHVlICYgQ09ORF9GTEFHU19NQVNLKTsKLSAgd2hpbGUgKHRydWUpIHsKLSAgICBpbnQgb2xkX3ZhbHVlID0gY29uZC0+dmFsdWU7Ci0gICAgaW50IG5ld192YWx1ZSA9ICgob2xkX3ZhbHVlIC0gQ09ORF9DT1VOVEVSX1NURVApICYgQ09ORF9DT1VOVEVSX01BU0spIHwgZmxhZ3M7Ci0gICAgaWYgKF9fYmlvbmljX2NtcHhjaGcob2xkX3ZhbHVlLCBuZXdfdmFsdWUsICZjb25kLT52YWx1ZSkgPT0gMCkgewotICAgICAgYnJlYWs7Ci0gICAgfQotICB9CisvLyB0aGVuIHdha2UgdXAgdGhyZWFkX2NvdW50IHRocmVhZHMuCitzdGF0aWMgaW50IF9fcHRocmVhZF9jb25kX3B1bHNlKHB0aHJlYWRfY29uZF9pbnRlcm5hbF90KiBjb25kLCBpbnQgdGhyZWFkX2NvdW50KSB7CisgIC8vIFdlIGRvbid0IHVzZSBhIHJlbGVhc2Uvc2VxX2NzdCBmZW5jZSBoZXJlLiBCZWNhdXNlIHB0aHJlYWRfY29uZF93YWl0L3NpZ25hbCBjYW4ndCBiZQorICAvLyB1c2VkIGFzIGEgbWV0aG9kIGZvciBtZW1vcnkgc3luY2hyb25pemF0aW9uIGJ5IGl0c2VsZi4gSXQgc2hvdWxkIGFsd2F5cyBiZSB1c2VkIHdpdGgKKyAgLy8gcHRocmVhZCBtdXRleGVzLiBOb3RlIHRoYXQgU3B1cmlvdXMgd2FrZXVwcyBmcm9tIHB0aHJlYWRfY29uZF93YWl0L3RpbWVkd2FpdCBtYXkgb2NjdXIsCisgIC8vIHNvIHdoZW4gdXNpbmcgY29uZGl0aW9uIHZhcmlhYmxlcyB0aGVyZSBpcyBhbHdheXMgYSBib29sZWFuIHByZWRpY2F0ZSBpbnZvbHZpbmcgc2hhcmVkCisgIC8vIHZhcmlhYmxlcyBhc3NvY2lhdGVkIHdpdGggZWFjaCBjb25kaXRpb24gd2FpdCB0aGF0IGlzIHRydWUgaWYgdGhlIHRocmVhZCBzaG91bGQgcHJvY2VlZC4KKyAgLy8gSWYgdGhlIHByZWRpY2F0ZSBpcyBzZWVuIHRydWUgYmVmb3JlIGEgY29uZGl0aW9uIHdhaXQsIHB0aHJlYWRfY29uZF93YWl0L3RpbWVkd2FpdCB3aWxsCisgIC8vIG5vdCBiZSBjYWxsZWQuIFRoYXQncyB3aHkgcHRocmVhZF93YWl0L3NpZ25hbCBwYWlyIGNhbid0IGJlIHVzZWQgYXMgYSBtZXRob2QgZm9yIG1lbW9yeQorICAvLyBzeW5jaHJvbml6YXRpb24uIEFuZCBpdCBkb2Vzbid0IGhlbHAgZXZlbiBpZiB3ZSB1c2UgYW55IGZlbmNlIGhlcmUuCiAKLSAgLy8gRW5zdXJlIHRoYXQgYWxsIG1lbW9yeSBhY2Nlc3NlcyBwcmV2aW91c2x5IG1hZGUgYnkgdGhpcyB0aHJlYWQgYXJlCi0gIC8vIHZpc2libGUgdG8gdGhlIHdva2VuIHRocmVhZChzKS4gIE9uIHRoZSBvdGhlciBzaWRlLCB0aGUgIndhaXQiCi0gIC8vIGNvZGUgd2lsbCBpc3N1ZSBhbnkgbmVjZXNzYXJ5IGJhcnJpZXJzIHdoZW4gbG9ja2luZyB0aGUgbXV0ZXguCi0gIC8vCi0gIC8vIFRoaXMgbWF5IG5vdCBzdHJpY3RseSBiZSBuZWNlc3NhcnkgLS0gaWYgdGhlIGNhbGxlciBmb2xsb3dzCi0gIC8vIHJlY29tbWVuZGVkIHByYWN0aWNlIGFuZCBob2xkcyB0aGUgbXV0ZXggYmVmb3JlIHNpZ25hbGluZyB0aGUgY29uZAotICAvLyB2YXIsIHRoZSBtdXRleCBvcHMgd2lsbCBwcm92aWRlIGNvcnJlY3Qgc2VtYW50aWNzLiAgSWYgdGhleSBkb24ndAotICAvLyBob2xkIHRoZSBtdXRleCwgdGhleSdyZSBzdWJqZWN0IHRvIHJhY2UgY29uZGl0aW9ucyBhbnl3YXkuCi0gIEFORFJPSURfTUVNQkFSX0ZVTEwoKTsKKyAgLy8gVGhlIGluY3JlYXNlIG9mIHZhbHVlIHNob3VsZCBsZWF2ZSBmbGFncyBhbG9uZSwgZXZlbiBpZiB0aGUgdmFsdWUgY2FuIG92ZXJmbG93cy4KKyAgYXRvbWljX2ZldGNoX2FkZF9leHBsaWNpdCgmY29uZC0+c3RhdGUsIENPTkRfQ09VTlRFUl9TVEVQLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CiAKLSAgX19mdXRleF93YWtlX2V4KCZjb25kLT52YWx1ZSwgQ09ORF9JU19TSEFSRUQoY29uZC0+dmFsdWUpLCBjb3VudGVyKTsKKyAgX19mdXRleF93YWtlX2V4KCZjb25kLT5zdGF0ZSwgY29uZC0+cHJvY2Vzc19zaGFyZWQoKSwgdGhyZWFkX2NvdW50KTsKICAgcmV0dXJuIDA7CiB9CiAKLV9fTElCQ19ISURERU5fXwotaW50IF9fcHRocmVhZF9jb25kX3RpbWVkd2FpdF9yZWxhdGl2ZShwdGhyZWFkX2NvbmRfdCogY29uZCwgcHRocmVhZF9tdXRleF90KiBtdXRleCwgY29uc3QgdGltZXNwZWMqIHJlbHRpbWUpIHsKLSAgaW50IG9sZF92YWx1ZSA9IGNvbmQtPnZhbHVlOworc3RhdGljIGludCBfX3B0aHJlYWRfY29uZF90aW1lZHdhaXRfcmVsYXRpdmUocHRocmVhZF9jb25kX2ludGVybmFsX3QqIGNvbmQsIHB0aHJlYWRfbXV0ZXhfdCogbXV0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB0aW1lc3BlYyogcmVsX3RpbWVvdXRfb3JfbnVsbCkgeworICB1bnNpZ25lZCBpbnQgb2xkX3N0YXRlID0gYXRvbWljX2xvYWRfZXhwbGljaXQoJmNvbmQtPnN0YXRlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CiAKICAgcHRocmVhZF9tdXRleF91bmxvY2sobXV0ZXgpOwotICBpbnQgc3RhdHVzID0gX19mdXRleF93YWl0X2V4KCZjb25kLT52YWx1ZSwgQ09ORF9JU19TSEFSRUQoY29uZC0+dmFsdWUpLCBvbGRfdmFsdWUsIHJlbHRpbWUpOworICBpbnQgc3RhdHVzID0gX19mdXRleF93YWl0X2V4KCZjb25kLT5zdGF0ZSwgY29uZC0+cHJvY2Vzc19zaGFyZWQoKSwgb2xkX3N0YXRlLCByZWxfdGltZW91dF9vcl9udWxsKTsKICAgcHRocmVhZF9tdXRleF9sb2NrKG11dGV4KTsKIAogICBpZiAoc3RhdHVzID09IC1FVElNRURPVVQpIHsKQEAgLTE2Miw1NiArMTg0LDY4IEBACiAgIHJldHVybiAwOwogfQogCi1fX0xJQkNfSElEREVOX18KLWludCBfX3B0aHJlYWRfY29uZF90aW1lZHdhaXQocHRocmVhZF9jb25kX3QqIGNvbmQsIHB0aHJlYWRfbXV0ZXhfdCogbXV0ZXgsIGNvbnN0IHRpbWVzcGVjKiBhYnN0aW1lLCBjbG9ja2lkX3QgY2xvY2spIHsKK3N0YXRpYyBpbnQgX19wdGhyZWFkX2NvbmRfdGltZWR3YWl0KHB0aHJlYWRfY29uZF9pbnRlcm5hbF90KiBjb25kLCBwdGhyZWFkX211dGV4X3QqIG11dGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdGltZXNwZWMqIGFic190aW1lb3V0X29yX251bGwsIGNsb2NraWRfdCBjbG9jaykgewogICB0aW1lc3BlYyB0czsKLSAgdGltZXNwZWMqIHRzcDsKKyAgdGltZXNwZWMqIHJlbF90aW1lb3V0ID0gTlVMTDsKIAotICBpZiAoYWJzdGltZSAhPSBOVUxMKSB7Ci0gICAgaWYgKF9fdGltZXNwZWNfZnJvbV9hYnNvbHV0ZSgmdHMsIGFic3RpbWUsIGNsb2NrKSA8IDApIHsKKyAgaWYgKGFic190aW1lb3V0X29yX251bGwgIT0gTlVMTCkgeworICAgIHJlbF90aW1lb3V0ID0gJnRzOworICAgIGlmICghdGltZXNwZWNfZnJvbV9hYnNvbHV0ZV90aW1lc3BlYygqcmVsX3RpbWVvdXQsICphYnNfdGltZW91dF9vcl9udWxsLCBjbG9jaykpIHsKICAgICAgIHJldHVybiBFVElNRURPVVQ7CiAgICAgfQotICAgIHRzcCA9ICZ0czsKLSAgfSBlbHNlIHsKLSAgICB0c3AgPSBOVUxMOwogICB9CiAKLSAgcmV0dXJuIF9fcHRocmVhZF9jb25kX3RpbWVkd2FpdF9yZWxhdGl2ZShjb25kLCBtdXRleCwgdHNwKTsKKyAgcmV0dXJuIF9fcHRocmVhZF9jb25kX3RpbWVkd2FpdF9yZWxhdGl2ZShjb25kLCBtdXRleCwgcmVsX3RpbWVvdXQpOwogfQogCi1pbnQgcHRocmVhZF9jb25kX2Jyb2FkY2FzdChwdGhyZWFkX2NvbmRfdCogY29uZCkgewotICByZXR1cm4gX19wdGhyZWFkX2NvbmRfcHVsc2UoY29uZCwgSU5UX01BWCk7CitpbnQgcHRocmVhZF9jb25kX2Jyb2FkY2FzdChwdGhyZWFkX2NvbmRfdCogY29uZF9pbnRlcmZhY2UpIHsKKyAgcmV0dXJuIF9fcHRocmVhZF9jb25kX3B1bHNlKF9fZ2V0X2ludGVybmFsX2NvbmQoY29uZF9pbnRlcmZhY2UpLCBJTlRfTUFYKTsKIH0KIAotaW50IHB0aHJlYWRfY29uZF9zaWduYWwocHRocmVhZF9jb25kX3QqIGNvbmQpIHsKLSAgcmV0dXJuIF9fcHRocmVhZF9jb25kX3B1bHNlKGNvbmQsIDEpOworaW50IHB0aHJlYWRfY29uZF9zaWduYWwocHRocmVhZF9jb25kX3QqIGNvbmRfaW50ZXJmYWNlKSB7CisgIHJldHVybiBfX3B0aHJlYWRfY29uZF9wdWxzZShfX2dldF9pbnRlcm5hbF9jb25kKGNvbmRfaW50ZXJmYWNlKSwgMSk7CiB9CiAKLWludCBwdGhyZWFkX2NvbmRfd2FpdChwdGhyZWFkX2NvbmRfdCogY29uZCwgcHRocmVhZF9tdXRleF90KiBtdXRleCkgewotICByZXR1cm4gX19wdGhyZWFkX2NvbmRfdGltZWR3YWl0KGNvbmQsIG11dGV4LCBOVUxMLCBDT05EX0dFVF9DTE9DSyhjb25kLT52YWx1ZSkpOworaW50IHB0aHJlYWRfY29uZF93YWl0KHB0aHJlYWRfY29uZF90KiBjb25kX2ludGVyZmFjZSwgcHRocmVhZF9tdXRleF90KiBtdXRleCkgeworICBwdGhyZWFkX2NvbmRfaW50ZXJuYWxfdCogY29uZCA9IF9fZ2V0X2ludGVybmFsX2NvbmQoY29uZF9pbnRlcmZhY2UpOworICByZXR1cm4gX19wdGhyZWFkX2NvbmRfdGltZWR3YWl0KGNvbmQsIG11dGV4LCBOVUxMLCBjb25kLT5nZXRfY2xvY2soKSk7CiB9CiAKLWludCBwdGhyZWFkX2NvbmRfdGltZWR3YWl0KHB0aHJlYWRfY29uZF90ICpjb25kLCBwdGhyZWFkX211dGV4X3QgKiBtdXRleCwgY29uc3QgdGltZXNwZWMgKmFic3RpbWUpIHsKLSAgcmV0dXJuIF9fcHRocmVhZF9jb25kX3RpbWVkd2FpdChjb25kLCBtdXRleCwgYWJzdGltZSwgQ09ORF9HRVRfQ0xPQ0soY29uZC0+dmFsdWUpKTsKK2ludCBwdGhyZWFkX2NvbmRfdGltZWR3YWl0KHB0aHJlYWRfY29uZF90ICpjb25kX2ludGVyZmFjZSwgcHRocmVhZF9tdXRleF90ICogbXV0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB0aW1lc3BlYyAqYWJzdGltZSkgeworCisgIHB0aHJlYWRfY29uZF9pbnRlcm5hbF90KiBjb25kID0gX19nZXRfaW50ZXJuYWxfY29uZChjb25kX2ludGVyZmFjZSk7CisgIHJldHVybiBfX3B0aHJlYWRfY29uZF90aW1lZHdhaXQoY29uZCwgbXV0ZXgsIGFic3RpbWUsIGNvbmQtPmdldF9jbG9jaygpKTsKIH0KIAogI2lmICFkZWZpbmVkKF9fTFA2NF9fKQogLy8gVE9ETzogdGhpcyBleGlzdHMgb25seSBmb3IgYmFja3dhcmQgYmluYXJ5IGNvbXBhdGliaWxpdHkgb24gMzIgYml0IHBsYXRmb3Jtcy4KLWV4dGVybiAiQyIgaW50IHB0aHJlYWRfY29uZF90aW1lZHdhaXRfbW9ub3RvbmljKHB0aHJlYWRfY29uZF90KiBjb25kLCBwdGhyZWFkX211dGV4X3QqIG11dGV4LCBjb25zdCB0aW1lc3BlYyogYWJzdGltZSkgewotICByZXR1cm4gX19wdGhyZWFkX2NvbmRfdGltZWR3YWl0KGNvbmQsIG11dGV4LCBhYnN0aW1lLCBDTE9DS19NT05PVE9OSUMpOworZXh0ZXJuICJDIiBpbnQgcHRocmVhZF9jb25kX3RpbWVkd2FpdF9tb25vdG9uaWMocHRocmVhZF9jb25kX3QqIGNvbmRfaW50ZXJmYWNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHRocmVhZF9tdXRleF90KiBtdXRleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRpbWVzcGVjKiBhYnNfdGltZW91dCkgeworCisgIHJldHVybiBfX3B0aHJlYWRfY29uZF90aW1lZHdhaXQoX19nZXRfaW50ZXJuYWxfY29uZChjb25kX2ludGVyZmFjZSksIG11dGV4LCBhYnNfdGltZW91dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDTE9DS19NT05PVE9OSUMpOwogfQogCi1leHRlcm4gIkMiIGludCBwdGhyZWFkX2NvbmRfdGltZWR3YWl0X21vbm90b25pY19ucChwdGhyZWFkX2NvbmRfdCogY29uZCwgcHRocmVhZF9tdXRleF90KiBtdXRleCwgY29uc3QgdGltZXNwZWMqIGFic3RpbWUpIHsKLSAgcmV0dXJuIF9fcHRocmVhZF9jb25kX3RpbWVkd2FpdChjb25kLCBtdXRleCwgYWJzdGltZSwgQ0xPQ0tfTU9OT1RPTklDKTsKK2V4dGVybiAiQyIgaW50IHB0aHJlYWRfY29uZF90aW1lZHdhaXRfbW9ub3RvbmljX25wKHB0aHJlYWRfY29uZF90KiBjb25kX2ludGVyZmFjZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB0aHJlYWRfbXV0ZXhfdCogbXV0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB0aW1lc3BlYyogYWJzX3RpbWVvdXQpIHsKKyAgcmV0dXJuIHB0aHJlYWRfY29uZF90aW1lZHdhaXRfbW9ub3RvbmljKGNvbmRfaW50ZXJmYWNlLCBtdXRleCwgYWJzX3RpbWVvdXQpOwogfQogCi1leHRlcm4gIkMiIGludCBwdGhyZWFkX2NvbmRfdGltZWR3YWl0X3JlbGF0aXZlX25wKHB0aHJlYWRfY29uZF90KiBjb25kLCBwdGhyZWFkX211dGV4X3QqIG11dGV4LCBjb25zdCB0aW1lc3BlYyogcmVsdGltZSkgewotICByZXR1cm4gX19wdGhyZWFkX2NvbmRfdGltZWR3YWl0X3JlbGF0aXZlKGNvbmQsIG11dGV4LCByZWx0aW1lKTsKK2V4dGVybiAiQyIgaW50IHB0aHJlYWRfY29uZF90aW1lZHdhaXRfcmVsYXRpdmVfbnAocHRocmVhZF9jb25kX3QqIGNvbmRfaW50ZXJmYWNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdGhyZWFkX211dGV4X3QqIG11dGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB0aW1lc3BlYyogcmVsX3RpbWVvdXQpIHsKKworICByZXR1cm4gX19wdGhyZWFkX2NvbmRfdGltZWR3YWl0X3JlbGF0aXZlKF9fZ2V0X2ludGVybmFsX2NvbmQoY29uZF9pbnRlcmZhY2UpLCBtdXRleCwgcmVsX3RpbWVvdXQpOwogfQogCi1leHRlcm4gIkMiIGludCBwdGhyZWFkX2NvbmRfdGltZW91dF9ucChwdGhyZWFkX2NvbmRfdCogY29uZCwgcHRocmVhZF9tdXRleF90KiBtdXRleCwgdW5zaWduZWQgbXMpIHsKK2V4dGVybiAiQyIgaW50IHB0aHJlYWRfY29uZF90aW1lb3V0X25wKHB0aHJlYWRfY29uZF90KiBjb25kX2ludGVyZmFjZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB0aHJlYWRfbXV0ZXhfdCogbXV0ZXgsIHVuc2lnbmVkIG1zKSB7CiAgIHRpbWVzcGVjIHRzOwogICB0aW1lc3BlY19mcm9tX21zKHRzLCBtcyk7Ci0gIHJldHVybiBfX3B0aHJlYWRfY29uZF90aW1lZHdhaXRfcmVsYXRpdmUoY29uZCwgbXV0ZXgsICZ0cyk7CisgIHJldHVybiBwdGhyZWFkX2NvbmRfdGltZWR3YWl0X3JlbGF0aXZlX25wKGNvbmRfaW50ZXJmYWNlLCBtdXRleCwgJnRzKTsKIH0KICNlbmRpZiAvLyAhZGVmaW5lZChfX0xQNjRfXykKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3B0aHJlYWRfY3JlYXRlLmNwcCBiL2xpYmMvYmlvbmljL3B0aHJlYWRfY3JlYXRlLmNwcAppbmRleCBmYzhhZmEyLi5kYmRiMTgwIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9wdGhyZWFkX2NyZWF0ZS5jcHAKKysrIGIvbGliYy9iaW9uaWMvcHRocmVhZF9jcmVhdGUuY3BwCkBAIC0yOSwxMiArMjksMTQgQEAKICNpbmNsdWRlIDxwdGhyZWFkLmg+CiAKICNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPHN5cy9tbWFuLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKICNpbmNsdWRlICJwdGhyZWFkX2ludGVybmFsLmgiCiAKICNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19tYWNyb3MuaCIKKyNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19wcmN0bC5oIgogI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX3NzcC5oIgogI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX3Rscy5oIgogI2luY2x1ZGUgInByaXZhdGUvbGliY19sb2dnaW5nLmgiCkBAIC01MSwzMyArNTMsNTIgQEAKIAogLy8gVGhpcyBjb2RlIGlzIHVzZWQgYm90aCBieSBlYWNoIG5ldyBwdGhyZWFkIGFuZCB0aGUgY29kZSB0aGF0IGluaXRpYWxpemVzIHRoZSBtYWluIHRocmVhZC4KIHZvaWQgX19pbml0X3RscyhwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCkgewotICBpZiAodGhyZWFkLT51c2VyX2FsbG9jYXRlZF9zdGFjaygpKSB7Ci0gICAgLy8gV2UgZG9uJ3Qga25vdyB3aGVyZSB0aGUgdXNlciBnb3QgdGhlaXIgc3RhY2ssIHNvIGFzc3VtZSB0aGUgd29yc3QgYW5kIHplcm8gdGhlIFRMUyBhcmVhLgotICAgIG1lbXNldCgmdGhyZWFkLT50bHNbMF0sIDAsIEJJT05JQ19UTFNfU0xPVFMgKiBzaXplb2Yodm9pZCopKTsKKyAgaWYgKHRocmVhZC0+bW1hcF9zaXplID09IDApIHsKKyAgICAvLyBJZiB0aGUgVExTIGFyZWEgd2FzIG5vdCBhbGxvY2F0ZWQgYnkgbW1hcCgpLCBpdCBtYXkgbm90IGhhdmUgYmVlbiBjbGVhcmVkIHRvIHplcm8uCisgICAgLy8gU28gYXNzdW1lIHRoZSB3b3JzdCBhbmQgemVybyB0aGUgVExTIGFyZWEuCisgICAgbWVtc2V0KHRocmVhZC0+dGxzLCAwLCBzaXplb2YodGhyZWFkLT50bHMpKTsKKyAgICBtZW1zZXQodGhyZWFkLT5rZXlfZGF0YSwgMCwgc2l6ZW9mKHRocmVhZC0+a2V5X2RhdGEpKTsKICAgfQogCiAgIC8vIFNsb3QgMCBtdXN0IHBvaW50IHRvIGl0c2VsZi4gVGhlIHg4NiBMaW51eCBrZXJuZWwgcmVhZHMgdGhlIFRMUyBmcm9tICVmczowLgogICB0aHJlYWQtPnRsc1tUTFNfU0xPVF9TRUxGXSA9IHRocmVhZC0+dGxzOwogICB0aHJlYWQtPnRsc1tUTFNfU0xPVF9USFJFQURfSURdID0gdGhyZWFkOwogICAvLyBHQ0MgbG9va3MgaW4gdGhlIFRMUyBmb3IgdGhlIHN0YWNrIGd1YXJkIG9uIHg4Niwgc28gY29weSBpdCB0aGVyZSBmcm9tIG91ciBnbG9iYWwuCi0gIHRocmVhZC0+dGxzW1RMU19TTE9UX1NUQUNLX0dVQVJEXSA9ICh2b2lkKikgX19zdGFja19jaGtfZ3VhcmQ7CisgIHRocmVhZC0+dGxzW1RMU19TTE9UX1NUQUNLX0dVQVJEXSA9IHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KF9fc3RhY2tfY2hrX2d1YXJkKTsKIH0KIAogdm9pZCBfX2luaXRfYWx0ZXJuYXRlX3NpZ25hbF9zdGFjayhwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCkgewogICAvLyBDcmVhdGUgYW5kIHNldCBhbiBhbHRlcm5hdGUgc2lnbmFsIHN0YWNrLgotICBzdGFja190IHNzOwotICBzcy5zc19zcCA9IG1tYXAoTlVMTCwgU0lHU1RLU1osIFBST1RfUkVBRHxQUk9UX1dSSVRFLCBNQVBfUFJJVkFURXxNQVBfQU5PTllNT1VTLCAtMSwgMCk7Ci0gIGlmIChzcy5zc19zcCAhPSBNQVBfRkFJTEVEKSB7Ci0gICAgc3Muc3Nfc2l6ZSA9IFNJR1NUS1NaOworICB2b2lkKiBzdGFja19iYXNlID0gbW1hcChOVUxMLCBTSUdOQUxfU1RBQ0tfU0laRSwgUFJPVF9SRUFEfFBST1RfV1JJVEUsIE1BUF9QUklWQVRFfE1BUF9BTk9OWU1PVVMsIC0xLCAwKTsKKyAgaWYgKHN0YWNrX2Jhc2UgIT0gTUFQX0ZBSUxFRCkgeworCisgICAgLy8gQ3JlYXRlIGEgZ3VhcmQgcGFnZSB0byBjYXRjaCBzdGFjayBvdmVyZmxvd3MgaW4gc2lnbmFsIGhhbmRsZXJzLgorICAgIGlmIChtcHJvdGVjdChzdGFja19iYXNlLCBQQUdFX1NJWkUsIFBST1RfTk9ORSkgPT0gLTEpIHsKKyAgICAgIG11bm1hcChzdGFja19iYXNlLCBTSUdOQUxfU1RBQ0tfU0laRSk7CisgICAgICByZXR1cm47CisgICAgfQorICAgIHN0YWNrX3Qgc3M7CisgICAgc3Muc3Nfc3AgPSByZWludGVycHJldF9jYXN0PHVpbnQ4X3QqPihzdGFja19iYXNlKSArIFBBR0VfU0laRTsKKyAgICBzcy5zc19zaXplID0gU0lHTkFMX1NUQUNLX1NJWkUgLSBQQUdFX1NJWkU7CiAgICAgc3Muc3NfZmxhZ3MgPSAwOwogICAgIHNpZ2FsdHN0YWNrKCZzcywgTlVMTCk7Ci0gICAgdGhyZWFkLT5hbHRlcm5hdGVfc2lnbmFsX3N0YWNrID0gc3Muc3Nfc3A7CisgICAgdGhyZWFkLT5hbHRlcm5hdGVfc2lnbmFsX3N0YWNrID0gc3RhY2tfYmFzZTsKKworICAgIC8vIFdlIGNhbiBvbmx5IHVzZSBjb25zdCBzdGF0aWMgYWxsb2NhdGVkIHN0cmluZyBmb3IgbWFwcGVkIHJlZ2lvbiBuYW1lLCBhcyBBbmRyb2lkIGtlcm5lbAorICAgIC8vIHVzZXMgdGhlIHN0cmluZyBwb2ludGVyIGRpcmVjdGx5IHdoZW4gZHVtcGluZyAvcHJvYy9waWQvbWFwcy4KKyAgICBwcmN0bChQUl9TRVRfVk1BLCBQUl9TRVRfVk1BX0FOT05fTkFNRSwgc3Muc3Nfc3AsIHNzLnNzX3NpemUsICJ0aHJlYWQgc2lnbmFsIHN0YWNrIik7CiAgIH0KIH0KIAotaW50IF9faW5pdF90aHJlYWQocHRocmVhZF9pbnRlcm5hbF90KiB0aHJlYWQsIGJvb2wgYWRkX3RvX3RocmVhZF9saXN0KSB7CitpbnQgX19pbml0X3RocmVhZChwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCkgewogICBpbnQgZXJyb3IgPSAwOwogCisgIGlmIChfX3ByZWRpY3RfdHJ1ZSgodGhyZWFkLT5hdHRyLmZsYWdzICYgUFRIUkVBRF9BVFRSX0ZMQUdfREVUQUNIRUQpID09IDApKSB7CisgICAgYXRvbWljX2luaXQoJnRocmVhZC0+am9pbl9zdGF0ZSwgVEhSRUFEX05PVF9KT0lORUQpOworICB9IGVsc2UgeworICAgIGF0b21pY19pbml0KCZ0aHJlYWQtPmpvaW5fc3RhdGUsIFRIUkVBRF9ERVRBQ0hFRCk7CisgIH0KKwogICAvLyBTZXQgdGhlIHNjaGVkdWxpbmcgcG9saWN5L3ByaW9yaXR5IG9mIHRoZSB0aHJlYWQuCiAgIGlmICh0aHJlYWQtPmF0dHIuc2NoZWRfcG9saWN5ICE9IFNDSEVEX05PUk1BTCkgewogICAgIHNjaGVkX3BhcmFtIHBhcmFtOwpAQCAtOTQsMzYgKzExNSw3MyBAQAogCiAgIHRocmVhZC0+Y2xlYW51cF9zdGFjayA9IE5VTEw7CiAKLSAgaWYgKGFkZF90b190aHJlYWRfbGlzdCkgewotICAgIF9wdGhyZWFkX2ludGVybmFsX2FkZCh0aHJlYWQpOwotICB9Ci0KICAgcmV0dXJuIGVycm9yOwogfQogCi1zdGF0aWMgdm9pZCogX19jcmVhdGVfdGhyZWFkX3N0YWNrKHB0aHJlYWRfaW50ZXJuYWxfdCogdGhyZWFkKSB7CitzdGF0aWMgdm9pZCogX19jcmVhdGVfdGhyZWFkX21hcHBlZF9zcGFjZShzaXplX3QgbW1hcF9zaXplLCBzaXplX3Qgc3RhY2tfZ3VhcmRfc2l6ZSkgewogICAvLyBDcmVhdGUgYSBuZXcgcHJpdmF0ZSBhbm9ueW1vdXMgbWFwLgogICBpbnQgcHJvdCA9IFBST1RfUkVBRCB8IFBST1RfV1JJVEU7CiAgIGludCBmbGFncyA9IE1BUF9QUklWQVRFIHwgTUFQX0FOT05ZTU9VUyB8IE1BUF9OT1JFU0VSVkU7Ci0gIHZvaWQqIHN0YWNrID0gbW1hcChOVUxMLCB0aHJlYWQtPmF0dHIuc3RhY2tfc2l6ZSwgcHJvdCwgZmxhZ3MsIC0xLCAwKTsKLSAgaWYgKHN0YWNrID09IE1BUF9GQUlMRUQpIHsKKyAgdm9pZCogc3BhY2UgPSBtbWFwKE5VTEwsIG1tYXBfc2l6ZSwgcHJvdCwgZmxhZ3MsIC0xLCAwKTsKKyAgaWYgKHNwYWNlID09IE1BUF9GQUlMRUQpIHsKICAgICBfX2xpYmNfZm9ybWF0X2xvZyhBTkRST0lEX0xPR19XQVJOLAogICAgICAgICAgICAgICAgICAgICAgICJsaWJjIiwKLSAgICAgICAgICAgICAgICAgICAgICAicHRocmVhZF9jcmVhdGUgZmFpbGVkOiBjb3VsZG4ndCBhbGxvY2F0ZSAlemQtYnl0ZSBzdGFjazogJXMiLAotICAgICAgICAgICAgICAgICAgICAgIHRocmVhZC0+YXR0ci5zdGFja19zaXplLCBzdHJlcnJvcihlcnJubykpOworICAgICAgICAgICAgICAgICAgICAgICJwdGhyZWFkX2NyZWF0ZSBmYWlsZWQ6IGNvdWxkbid0IGFsbG9jYXRlICV6dS1ieXRlcyBtYXBwZWQgc3BhY2U6ICVzIiwKKyAgICAgICAgICAgICAgICAgICAgICBtbWFwX3NpemUsIHN0cmVycm9yKGVycm5vKSk7CiAgICAgcmV0dXJuIE5VTEw7CiAgIH0KIAotICAvLyBTZXQgdGhlIGd1YXJkIHJlZ2lvbiBhdCB0aGUgZW5kIG9mIHRoZSBzdGFjayB0byBQUk9UX05PTkUuCi0gIGlmIChtcHJvdGVjdChzdGFjaywgdGhyZWFkLT5hdHRyLmd1YXJkX3NpemUsIFBST1RfTk9ORSkgPT0gLTEpIHsKKyAgLy8gU3RhY2sgaXMgYXQgdGhlIGxvd2VyIGVuZCBvZiBtYXBwZWQgc3BhY2UsIHN0YWNrIGd1YXJkIHJlZ2lvbiBpcyBhdCB0aGUgbG93ZXIgZW5kIG9mIHN0YWNrLgorICAvLyBTZXQgdGhlIHN0YWNrIGd1YXJkIHJlZ2lvbiB0byBQUk9UX05PTkUsIHNvIHdlIGNhbiBkZXRlY3QgdGhyZWFkIHN0YWNrIG92ZXJmbG93LgorICBpZiAobXByb3RlY3Qoc3BhY2UsIHN0YWNrX2d1YXJkX3NpemUsIFBST1RfTk9ORSkgPT0gLTEpIHsKICAgICBfX2xpYmNfZm9ybWF0X2xvZyhBTkRST0lEX0xPR19XQVJOLCAibGliYyIsCi0gICAgICAgICAgICAgICAgICAgICAgInB0aHJlYWRfY3JlYXRlIGZhaWxlZDogY291bGRuJ3QgbXByb3RlY3QgUFJPVF9OT05FICV6ZC1ieXRlIHN0YWNrIGd1YXJkIHJlZ2lvbjogJXMiLAotICAgICAgICAgICAgICAgICAgICAgIHRocmVhZC0+YXR0ci5ndWFyZF9zaXplLCBzdHJlcnJvcihlcnJubykpOwotICAgIG11bm1hcChzdGFjaywgdGhyZWFkLT5hdHRyLnN0YWNrX3NpemUpOworICAgICAgICAgICAgICAgICAgICAgICJwdGhyZWFkX2NyZWF0ZSBmYWlsZWQ6IGNvdWxkbid0IG1wcm90ZWN0IFBST1RfTk9ORSAlenUtYnl0ZSBzdGFjayBndWFyZCByZWdpb246ICVzIiwKKyAgICAgICAgICAgICAgICAgICAgICBzdGFja19ndWFyZF9zaXplLCBzdHJlcnJvcihlcnJubykpOworICAgIG11bm1hcChzcGFjZSwgbW1hcF9zaXplKTsKICAgICByZXR1cm4gTlVMTDsKICAgfQogCi0gIHJldHVybiBzdGFjazsKKyAgcmV0dXJuIHNwYWNlOworfQorCitzdGF0aWMgaW50IF9fYWxsb2NhdGVfdGhyZWFkKHB0aHJlYWRfYXR0cl90KiBhdHRyLCBwdGhyZWFkX2ludGVybmFsX3QqKiB0aHJlYWRwLCB2b2lkKiogY2hpbGRfc3RhY2spIHsKKyAgc2l6ZV90IG1tYXBfc2l6ZTsKKyAgdWludDhfdCogc3RhY2tfdG9wOworCisgIGlmIChhdHRyLT5zdGFja19iYXNlID09IE5VTEwpIHsKKyAgICAvLyBUaGUgY2FsbGVyIGRpZG4ndCBwcm92aWRlIGEgc3RhY2ssIHNvIGFsbG9jYXRlIG9uZS4KKyAgICAvLyBNYWtlIHN1cmUgdGhlIHN0YWNrIHNpemUgYW5kIGd1YXJkIHNpemUgYXJlIG11bHRpcGxlcyBvZiBQQUdFX1NJWkUuCisgICAgbW1hcF9zaXplID0gQklPTklDX0FMSUdOKGF0dHItPnN0YWNrX3NpemUgKyBzaXplb2YocHRocmVhZF9pbnRlcm5hbF90KSwgUEFHRV9TSVpFKTsKKyAgICBhdHRyLT5ndWFyZF9zaXplID0gQklPTklDX0FMSUdOKGF0dHItPmd1YXJkX3NpemUsIFBBR0VfU0laRSk7CisgICAgYXR0ci0+c3RhY2tfYmFzZSA9IF9fY3JlYXRlX3RocmVhZF9tYXBwZWRfc3BhY2UobW1hcF9zaXplLCBhdHRyLT5ndWFyZF9zaXplKTsKKyAgICBpZiAoYXR0ci0+c3RhY2tfYmFzZSA9PSBOVUxMKSB7CisgICAgICByZXR1cm4gRUFHQUlOOworICAgIH0KKyAgICBzdGFja190b3AgPSByZWludGVycHJldF9jYXN0PHVpbnQ4X3QqPihhdHRyLT5zdGFja19iYXNlKSArIG1tYXBfc2l6ZTsKKyAgfSBlbHNlIHsKKyAgICAvLyBSZW1lbWJlciB0aGUgbW1hcCBzaXplIGlzIHplcm8gYW5kIHdlIGRvbid0IG5lZWQgdG8gZnJlZSBpdC4KKyAgICBtbWFwX3NpemUgPSAwOworICAgIHN0YWNrX3RvcCA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCo+KGF0dHItPnN0YWNrX2Jhc2UpICsgYXR0ci0+c3RhY2tfc2l6ZTsKKyAgfQorCisgIC8vIE1hcHBlZCBzcGFjZShvciB1c2VyIGFsbG9jYXRlZCBzdGFjaykgaXMgdXNlZCBmb3I6CisgIC8vICAgcHRocmVhZF9pbnRlcm5hbF90CisgIC8vICAgdGhyZWFkIHN0YWNrIChpbmNsdWRpbmcgZ3VhcmQgcGFnZSkKKworICAvLyBUbyBzYWZlbHkgYWNjZXNzIHRoZSBwdGhyZWFkX2ludGVybmFsX3QgYW5kIHRocmVhZCBzdGFjaywgd2UgbmVlZCB0byBmaW5kIGEgMTYtYnl0ZSBhbGlnbmVkIGJvdW5kYXJ5LgorICBzdGFja190b3AgPSByZWludGVycHJldF9jYXN0PHVpbnQ4X3QqPigKKyAgICAgICAgICAgICAgICAocmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KHN0YWNrX3RvcCkgLSBzaXplb2YocHRocmVhZF9pbnRlcm5hbF90KSkgJiB+MHhmKTsKKworICBwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCA9IHJlaW50ZXJwcmV0X2Nhc3Q8cHRocmVhZF9pbnRlcm5hbF90Kj4oc3RhY2tfdG9wKTsKKyAgYXR0ci0+c3RhY2tfc2l6ZSA9IHN0YWNrX3RvcCAtIHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCo+KGF0dHItPnN0YWNrX2Jhc2UpOworCisgIHRocmVhZC0+bW1hcF9zaXplID0gbW1hcF9zaXplOworICB0aHJlYWQtPmF0dHIgPSAqYXR0cjsKKyAgX19pbml0X3Rscyh0aHJlYWQpOworCisgICp0aHJlYWRwID0gdGhyZWFkOworICAqY2hpbGRfc3RhY2sgPSBzdGFja190b3A7CisgIHJldHVybiAwOwogfQogCiBzdGF0aWMgaW50IF9fcHRocmVhZF9zdGFydCh2b2lkKiBhcmcpIHsKQEAgLTE1OCw0NCArMjE2LDIxIEBACiAgIC8vIEluZm9ybSB0aGUgcmVzdCBvZiB0aGUgQyBsaWJyYXJ5IHRoYXQgYXQgbGVhc3Qgb25lIHRocmVhZCB3YXMgY3JlYXRlZC4KICAgX19pc3RocmVhZGVkID0gMTsKIAotICBwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCA9IHJlaW50ZXJwcmV0X2Nhc3Q8cHRocmVhZF9pbnRlcm5hbF90Kj4oY2FsbG9jKHNpemVvZigqdGhyZWFkKSwgMSkpOwotICBpZiAodGhyZWFkID09IE5VTEwpIHsKLSAgICBfX2xpYmNfZm9ybWF0X2xvZyhBTkRST0lEX0xPR19XQVJOLCAibGliYyIsICJwdGhyZWFkX2NyZWF0ZSBmYWlsZWQ6IGNvdWxkbid0IGFsbG9jYXRlIHRocmVhZCIpOwotICAgIHJldHVybiBFQUdBSU47Ci0gIH0KLQorICBwdGhyZWFkX2F0dHJfdCB0aHJlYWRfYXR0cjsKICAgaWYgKGF0dHIgPT0gTlVMTCkgewotICAgIHB0aHJlYWRfYXR0cl9pbml0KCZ0aHJlYWQtPmF0dHIpOworICAgIHB0aHJlYWRfYXR0cl9pbml0KCZ0aHJlYWRfYXR0cik7CiAgIH0gZWxzZSB7Ci0gICAgdGhyZWFkLT5hdHRyID0gKmF0dHI7CisgICAgdGhyZWFkX2F0dHIgPSAqYXR0cjsKICAgICBhdHRyID0gTlVMTDsgLy8gUHJldmVudCBtaXN1c2UgYmVsb3cuCiAgIH0KIAotICAvLyBNYWtlIHN1cmUgdGhlIHN0YWNrIHNpemUgYW5kIGd1YXJkIHNpemUgYXJlIG11bHRpcGxlcyBvZiBQQUdFX1NJWkUuCi0gIHRocmVhZC0+YXR0ci5zdGFja19zaXplID0gQklPTklDX0FMSUdOKHRocmVhZC0+YXR0ci5zdGFja19zaXplLCBQQUdFX1NJWkUpOwotICB0aHJlYWQtPmF0dHIuZ3VhcmRfc2l6ZSA9IEJJT05JQ19BTElHTih0aHJlYWQtPmF0dHIuZ3VhcmRfc2l6ZSwgUEFHRV9TSVpFKTsKLQotICBpZiAodGhyZWFkLT5hdHRyLnN0YWNrX2Jhc2UgPT0gTlVMTCkgewotICAgIC8vIFRoZSBjYWxsZXIgZGlkbid0IHByb3ZpZGUgYSBzdGFjaywgc28gYWxsb2NhdGUgb25lLgotICAgIHRocmVhZC0+YXR0ci5zdGFja19iYXNlID0gX19jcmVhdGVfdGhyZWFkX3N0YWNrKHRocmVhZCk7Ci0gICAgaWYgKHRocmVhZC0+YXR0ci5zdGFja19iYXNlID09IE5VTEwpIHsKLSAgICAgIGZyZWUodGhyZWFkKTsKLSAgICAgIHJldHVybiBFQUdBSU47Ci0gICAgfQotICB9IGVsc2UgewotICAgIC8vIFRoZSBjYWxsZXIgZGlkIHByb3ZpZGUgYSBzdGFjaywgc28gcmVtZW1iZXIgd2UncmUgbm90IHN1cHBvc2VkIHRvIGZyZWUgaXQuCi0gICAgdGhyZWFkLT5hdHRyLmZsYWdzIHw9IFBUSFJFQURfQVRUUl9GTEFHX1VTRVJfQUxMT0NBVEVEX1NUQUNLOworICBwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCA9IE5VTEw7CisgIHZvaWQqIGNoaWxkX3N0YWNrID0gTlVMTDsKKyAgaW50IHJlc3VsdCA9IF9fYWxsb2NhdGVfdGhyZWFkKCZ0aHJlYWRfYXR0ciwgJnRocmVhZCwgJmNoaWxkX3N0YWNrKTsKKyAgaWYgKHJlc3VsdCAhPSAwKSB7CisgICAgcmV0dXJuIHJlc3VsdDsKICAgfQogCi0gIC8vIE1ha2Ugcm9vbSBmb3IgdGhlIFRMUyBhcmVhLgotICAvLyBUaGUgY2hpbGQgc3RhY2sgaXMgdGhlIHNhbWUgYWRkcmVzcywganVzdCBncm93aW5nIGluIHRoZSBvcHBvc2l0ZSBkaXJlY3Rpb24uCi0gIC8vIEF0IG9mZnNldHMgPj0gMCwgd2UgaGF2ZSB0aGUgVExTIHNsb3RzLgotICAvLyBBdCBvZmZzZXRzIDwgMCwgd2UgaGF2ZSB0aGUgY2hpbGQgc3RhY2suCi0gIHRocmVhZC0+dGxzID0gcmVpbnRlcnByZXRfY2FzdDx2b2lkKio+KHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCo+KHRocmVhZC0+YXR0ci5zdGFja19iYXNlKSArCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocmVhZC0+YXR0ci5zdGFja19zaXplIC0gQklPTklDX1RMU19TTE9UUyAqIHNpemVvZih2b2lkKikpOwotICB2b2lkKiBjaGlsZF9zdGFjayA9IHRocmVhZC0+dGxzOwotICBfX2luaXRfdGxzKHRocmVhZCk7Ci0KICAgLy8gQ3JlYXRlIGEgbXV0ZXggZm9yIHRoZSB0aHJlYWQgaW4gVExTIHRvIHdhaXQgb24gb25jZSBpdCBzdGFydHMgc28gd2UgY2FuIGtlZXAKICAgLy8gaXQgZnJvbSBkb2luZyBhbnl0aGluZyB1bnRpbCBhZnRlciB3ZSBub3RpZnkgdGhlIGRlYnVnZ2VyIGFib3V0IGl0CiAgIC8vCkBAIC0yMTIsNyArMjQ3LDcgQEAKIAogICBpbnQgZmxhZ3MgPSBDTE9ORV9WTSB8IENMT05FX0ZTIHwgQ0xPTkVfRklMRVMgfCBDTE9ORV9TSUdIQU5EIHwgQ0xPTkVfVEhSRUFEIHwgQ0xPTkVfU1lTVlNFTSB8CiAgICAgICBDTE9ORV9TRVRUTFMgfCBDTE9ORV9QQVJFTlRfU0VUVElEIHwgQ0xPTkVfQ0hJTERfQ0xFQVJUSUQ7Ci0gIHZvaWQqIHRscyA9IHRocmVhZC0+dGxzOworICB2b2lkKiB0bHMgPSByZWludGVycHJldF9jYXN0PHZvaWQqPih0aHJlYWQtPnRscyk7CiAjaWYgZGVmaW5lZChfX2kzODZfXykKICAgLy8gT24geDg2IChidXQgbm90IHg4Ni02NCksIENMT05FX1NFVFRMUyB0YWtlcyBhIHBvaW50ZXIgdG8gYSBzdHJ1Y3QgdXNlcl9kZXNjIHJhdGhlciB0aGFuCiAgIC8vIGEgcG9pbnRlciB0byB0aGUgVExTIGl0c2VsZi4KQEAgLTIyNywyNiArMjYyLDI2IEBACiAgICAgLy8gYmUgdW5ibG9ja2VkLCBidXQgd2UncmUgYWJvdXQgdG8gdW5tYXAgdGhlIG1lbW9yeSB0aGUgbXV0ZXggaXMgc3RvcmVkIGluLCBzbyB0aGlzIHNlcnZlcyBhcyBhCiAgICAgLy8gcmVtaW5kZXIgdGhhdCB5b3UgY2FuJ3QgcmV3cml0ZSB0aGlzIGZ1bmN0aW9uIHRvIHVzZSBhIFNjb3BlZFB0aHJlYWRNdXRleExvY2tlci4KICAgICBwdGhyZWFkX211dGV4X3VubG9jaygmdGhyZWFkLT5zdGFydHVwX2hhbmRzaGFrZV9tdXRleCk7Ci0gICAgaWYgKCF0aHJlYWQtPnVzZXJfYWxsb2NhdGVkX3N0YWNrKCkpIHsKLSAgICAgIG11bm1hcCh0aHJlYWQtPmF0dHIuc3RhY2tfYmFzZSwgdGhyZWFkLT5hdHRyLnN0YWNrX3NpemUpOworICAgIGlmICh0aHJlYWQtPm1tYXBfc2l6ZSAhPSAwKSB7CisgICAgICBtdW5tYXAodGhyZWFkLT5hdHRyLnN0YWNrX2Jhc2UsIHRocmVhZC0+bW1hcF9zaXplKTsKICAgICB9Ci0gICAgZnJlZSh0aHJlYWQpOwogICAgIF9fbGliY19mb3JtYXRfbG9nKEFORFJPSURfTE9HX1dBUk4sICJsaWJjIiwgInB0aHJlYWRfY3JlYXRlIGZhaWxlZDogY2xvbmUgZmFpbGVkOiAlcyIsIHN0cmVycm9yKGVycm5vKSk7CiAgICAgcmV0dXJuIGNsb25lX2Vycm5vOwogICB9CiAKLSAgaW50IGluaXRfZXJybm8gPSBfX2luaXRfdGhyZWFkKHRocmVhZCwgdHJ1ZSk7CisgIGludCBpbml0X2Vycm5vID0gX19pbml0X3RocmVhZCh0aHJlYWQpOwogICBpZiAoaW5pdF9lcnJubyAhPSAwKSB7CiAgICAgLy8gTWFyayB0aGUgdGhyZWFkIGRldGFjaGVkIGFuZCByZXBsYWNlIGl0cyBzdGFydF9yb3V0aW5lIHdpdGggYSBuby1vcC4KICAgICAvLyBMZXR0aW5nIHRoZSB0aHJlYWQgcnVuIGlzIHRoZSBlYXNpZXN0IHdheSB0byBjbGVhbiB1cCBpdHMgcmVzb3VyY2VzLgotICAgIHRocmVhZC0+YXR0ci5mbGFncyB8PSBQVEhSRUFEX0FUVFJfRkxBR19ERVRBQ0hFRDsKKyAgICBhdG9taWNfc3RvcmUoJnRocmVhZC0+am9pbl9zdGF0ZSwgVEhSRUFEX0RFVEFDSEVEKTsKKyAgICBfX3B0aHJlYWRfaW50ZXJuYWxfYWRkKHRocmVhZCk7CiAgICAgdGhyZWFkLT5zdGFydF9yb3V0aW5lID0gX19kb19ub3RoaW5nOwogICAgIHB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZ0aHJlYWQtPnN0YXJ0dXBfaGFuZHNoYWtlX211dGV4KTsKICAgICByZXR1cm4gaW5pdF9lcnJubzsKICAgfQogCiAgIC8vIFB1Ymxpc2ggdGhlIHB0aHJlYWRfdCBhbmQgdW5sb2NrIHRoZSBtdXRleCB0byBsZXQgdGhlIG5ldyB0aHJlYWQgc3RhcnQgcnVubmluZy4KLSAgKnRocmVhZF9vdXQgPSByZWludGVycHJldF9jYXN0PHB0aHJlYWRfdD4odGhyZWFkKTsKKyAgKnRocmVhZF9vdXQgPSBfX3B0aHJlYWRfaW50ZXJuYWxfYWRkKHRocmVhZCk7CiAgIHB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZ0aHJlYWQtPnN0YXJ0dXBfaGFuZHNoYWtlX211dGV4KTsKIAogICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3B0aHJlYWRfZGV0YWNoLmNwcCBiL2xpYmMvYmlvbmljL3B0aHJlYWRfZGV0YWNoLmNwcAppbmRleCBhODYwOGUzLi5mYjhlMGRkIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9wdGhyZWFkX2RldGFjaC5jcHAKKysrIGIvbGliYy9iaW9uaWMvcHRocmVhZF9kZXRhY2guY3BwCkBAIC0yNywyOSArMjcsMjYgQEAKICAqLwogCiAjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxwdGhyZWFkLmg+CiAKLSNpbmNsdWRlICJwdGhyZWFkX2FjY2Vzc29yLmgiCisjaW5jbHVkZSAicHRocmVhZF9pbnRlcm5hbC5oIgogCiBpbnQgcHRocmVhZF9kZXRhY2gocHRocmVhZF90IHQpIHsKLSAgcHRocmVhZF9hY2Nlc3NvciB0aHJlYWQodCk7Ci0gIGlmICh0aHJlYWQuZ2V0KCkgPT0gTlVMTCkgewotICAgICAgcmV0dXJuIEVTUkNIOworICBwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCA9IF9fcHRocmVhZF9pbnRlcm5hbF9maW5kKHQpOworICBpZiAodGhyZWFkID09IE5VTEwpIHsKKyAgICByZXR1cm4gRVNSQ0g7CiAgIH0KIAotICBpZiAodGhyZWFkLT5hdHRyLmZsYWdzICYgUFRIUkVBRF9BVFRSX0ZMQUdfREVUQUNIRUQpIHsKLSAgICByZXR1cm4gRUlOVkFMOyAvLyBBbHJlYWR5IGRldGFjaGVkLgorICBUaHJlYWRKb2luU3RhdGUgb2xkX3N0YXRlID0gVEhSRUFEX05PVF9KT0lORUQ7CisgIHdoaWxlIChvbGRfc3RhdGUgPT0gVEhSRUFEX05PVF9KT0lORUQgJiYKKyAgICAgICAgICFhdG9taWNfY29tcGFyZV9leGNoYW5nZV93ZWFrKCZ0aHJlYWQtPmpvaW5fc3RhdGUsICZvbGRfc3RhdGUsIFRIUkVBRF9ERVRBQ0hFRCkpIHsKICAgfQogCi0gIGlmICh0aHJlYWQtPmF0dHIuZmxhZ3MgJiBQVEhSRUFEX0FUVFJfRkxBR19KT0lORUQpIHsKLSAgICByZXR1cm4gMDsgLy8gQWxyZWFkeSBiZWluZyBqb2luZWQ7IHNpbGVudGx5IGRvIG5vdGhpbmcsIGxpa2UgZ2xpYmMuCi0gIH0KLQotICBpZiAodGhyZWFkLT50aWQgPT0gMCkgewotICAgIC8vIEFscmVhZHkgZXhpdGVkOyBjbGVhbiB1cC4KLSAgICBfcHRocmVhZF9pbnRlcm5hbF9yZW1vdmVfbG9ja2VkKHRocmVhZC5nZXQoKSk7CisgIGlmIChvbGRfc3RhdGUgPT0gVEhSRUFEX05PVF9KT0lORUQpIHsKICAgICByZXR1cm4gMDsKKyAgfSBlbHNlIGlmIChvbGRfc3RhdGUgPT0gVEhSRUFEX0VYSVRFRF9OT1RfSk9JTkVEKSB7CisgICAgLy8gVXNlIHB0aHJlYWRfam9pbiB0byBjbGVhbiBpdCB1cC4KKyAgICByZXR1cm4gcHRocmVhZF9qb2luKHQsIE5VTEwpOwogICB9Ci0KLSAgdGhyZWFkLT5hdHRyLmZsYWdzIHw9IFBUSFJFQURfQVRUUl9GTEFHX0RFVEFDSEVEOwotICByZXR1cm4gMDsKKyAgcmV0dXJuIEVJTlZBTDsKIH0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3B0aHJlYWRfZXhpdC5jcHAgYi9saWJjL2Jpb25pYy9wdGhyZWFkX2V4aXQuY3BwCmluZGV4IDZjZDUzMTEuLmNlZGE5MzEgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3B0aHJlYWRfZXhpdC5jcHAKKysrIGIvbGliYy9iaW9uaWMvcHRocmVhZF9leGl0LmNwcApAQCAtMzcsNiArMzcsNyBAQAogZXh0ZXJuICJDIiBfX25vcmV0dXJuIHZvaWQgX2V4aXRfd2l0aF9zdGFja190ZWFyZG93bih2b2lkKiwgc2l6ZV90KTsKIGV4dGVybiAiQyIgX19ub3JldHVybiB2b2lkIF9fZXhpdChpbnQpOwogZXh0ZXJuICJDIiBpbnQgX19zZXRfdGlkX2FkZHJlc3MoaW50Kik7CitleHRlcm4gIkMiIHZvaWQgX19jeGFfdGhyZWFkX2ZpbmFsaXplKCk7CiAKIC8qIENBVkVBVDogb3VyIGltcGxlbWVudGF0aW9uIG9mIHB0aHJlYWRfY2xlYW51cF9wdXNoL3BvcCBkb2Vzbid0IHN1cHBvcnQgQysrIGV4Y2VwdGlvbnMKICAqICAgICAgICAgYW5kIHRocmVhZCBjYW5jZWxhdGlvbgpAQCAtNTksMTAgKzYwLDEzIEBACiB9CiAKIHZvaWQgcHRocmVhZF9leGl0KHZvaWQqIHJldHVybl92YWx1ZSkgeworICAvLyBDYWxsIGR0b3JzIGZvciB0aHJlYWRfbG9jYWwgb2JqZWN0cyBmaXJzdC4KKyAgX19jeGFfdGhyZWFkX2ZpbmFsaXplKCk7CisKICAgcHRocmVhZF9pbnRlcm5hbF90KiB0aHJlYWQgPSBfX2dldF90aHJlYWQoKTsKICAgdGhyZWFkLT5yZXR1cm5fdmFsdWUgPSByZXR1cm5fdmFsdWU7CiAKLSAgLy8gQ2FsbCB0aGUgY2xlYW51cCBoYW5kbGVycyBmaXJzdC4KKyAgLy8gQ2FsbCB0aGUgY2xlYW51cCBoYW5kbGVycy4KICAgd2hpbGUgKHRocmVhZC0+Y2xlYW51cF9zdGFjaykgewogICAgIF9fcHRocmVhZF9jbGVhbnVwX3QqIGMgPSB0aHJlYWQtPmNsZWFudXBfc3RhY2s7CiAgICAgdGhyZWFkLT5jbGVhbnVwX3N0YWNrID0gYy0+X19jbGVhbnVwX3ByZXY7CkBAIC04Myw1NCArODcsNDAgQEAKICAgICBzaWdhbHRzdGFjaygmc3MsIE5VTEwpOwogCiAgICAgLy8gRnJlZSBpdC4KLSAgICBtdW5tYXAodGhyZWFkLT5hbHRlcm5hdGVfc2lnbmFsX3N0YWNrLCBTSUdTVEtTWik7CisgICAgbXVubWFwKHRocmVhZC0+YWx0ZXJuYXRlX3NpZ25hbF9zdGFjaywgU0lHTkFMX1NUQUNLX1NJWkUpOwogICAgIHRocmVhZC0+YWx0ZXJuYXRlX3NpZ25hbF9zdGFjayA9IE5VTEw7CiAgIH0KIAotICAvLyBLZWVwIHRyYWNrIG9mIHdoYXQgd2UgbmVlZCB0byBrbm93IGFib3V0IHRoZSBzdGFjayBiZWZvcmUgd2UgbG9zZSB0aGUgcHRocmVhZF9pbnRlcm5hbF90LgotICB2b2lkKiBzdGFja19iYXNlID0gdGhyZWFkLT5hdHRyLnN0YWNrX2Jhc2U7Ci0gIHNpemVfdCBzdGFja19zaXplID0gdGhyZWFkLT5hdHRyLnN0YWNrX3NpemU7Ci0gIGJvb2wgdXNlcl9hbGxvY2F0ZWRfc3RhY2sgPSB0aHJlYWQtPnVzZXJfYWxsb2NhdGVkX3N0YWNrKCk7CisgIFRocmVhZEpvaW5TdGF0ZSBvbGRfc3RhdGUgPSBUSFJFQURfTk9UX0pPSU5FRDsKKyAgd2hpbGUgKG9sZF9zdGF0ZSA9PSBUSFJFQURfTk9UX0pPSU5FRCAmJgorICAgICAgICAgIWF0b21pY19jb21wYXJlX2V4Y2hhbmdlX3dlYWsoJnRocmVhZC0+am9pbl9zdGF0ZSwgJm9sZF9zdGF0ZSwgVEhSRUFEX0VYSVRFRF9OT1RfSk9JTkVEKSkgeworICB9CiAKLSAgcHRocmVhZF9tdXRleF9sb2NrKCZnX3RocmVhZF9saXN0X2xvY2spOwotICBpZiAoKHRocmVhZC0+YXR0ci5mbGFncyAmIFBUSFJFQURfQVRUUl9GTEFHX0RFVEFDSEVEKSAhPSAwKSB7Ci0gICAgLy8gVGhlIHRocmVhZCBpcyBkZXRhY2hlZCwgc28gd2UgY2FuIGZyZWUgdGhlIHB0aHJlYWRfaW50ZXJuYWxfdC4KKyAgaWYgKG9sZF9zdGF0ZSA9PSBUSFJFQURfREVUQUNIRUQpIHsKKyAgICAvLyBUaGUgdGhyZWFkIGlzIGRldGFjaGVkLCBubyBvbmUgd2lsbCB1c2UgcHRocmVhZF9pbnRlcm5hbF90IGFmdGVyIHB0aHJlYWRfZXhpdC4KKyAgICAvLyBTbyB3ZSBjYW4gZnJlZSBtYXBwZWQgc3BhY2UsIHdoaWNoIGluY2x1ZGVzIHB0aHJlYWRfaW50ZXJuYWxfdCBhbmQgdGhyZWFkIHN0YWNrLgogICAgIC8vIEZpcnN0IG1ha2Ugc3VyZSB0aGF0IHRoZSBrZXJuZWwgZG9lcyBub3QgdHJ5IHRvIGNsZWFyIHRoZSB0aWQgZmllbGQKICAgICAvLyBiZWNhdXNlIHdlJ2xsIGhhdmUgZnJlZWQgdGhlIG1lbW9yeSBiZWZvcmUgdGhlIHRocmVhZCBhY3R1YWxseSBleGl0cy4KICAgICBfX3NldF90aWRfYWRkcmVzcyhOVUxMKTsKLSAgICBfcHRocmVhZF9pbnRlcm5hbF9yZW1vdmVfbG9ja2VkKHRocmVhZCk7Ci0gIH0gZWxzZSB7Ci0gICAgLy8gTWFrZSBzdXJlIHRoYXQgdGhlIHB0aHJlYWRfaW50ZXJuYWxfdCBkb2Vzbid0IGhhdmUgc3RhbGUgcG9pbnRlcnMgdG8gYSBzdGFjayB0aGF0Ci0gICAgLy8gd2lsbCBiZSB1bm1hcHBlZCBhZnRlciB0aGUgZXhpdCBjYWxsIGJlbG93LgotICAgIGlmICghdXNlcl9hbGxvY2F0ZWRfc3RhY2spIHsKLSAgICAgIHRocmVhZC0+YXR0ci5zdGFja19iYXNlID0gTlVMTDsKLSAgICAgIHRocmVhZC0+YXR0ci5zdGFja19zaXplID0gMDsKLSAgICAgIHRocmVhZC0+dGxzID0gTlVMTDsKKworICAgIC8vIHB0aHJlYWRfaW50ZXJuYWxfdCBpcyBmcmVlZCBiZWxvdyB3aXRoIHN0YWNrLCBub3QgaGVyZS4KKyAgICBfX3B0aHJlYWRfaW50ZXJuYWxfcmVtb3ZlKHRocmVhZCk7CisKKyAgICBpZiAodGhyZWFkLT5tbWFwX3NpemUgIT0gMCkgeworICAgICAgLy8gV2UgbmVlZCB0byBmcmVlIG1hcHBlZCBzcGFjZSBmb3IgZGV0YWNoZWQgdGhyZWFkcyB3aGVuIHRoZXkgZXhpdC4KKyAgICAgIC8vIFRoYXQncyBub3Qgc29tZXRoaW5nIHdlIGNhbiBkbyBpbiBDLgorCisgICAgICAvLyBXZSBkb24ndCB3YW50IHRvIHRha2UgYSBzaWduYWwgYWZ0ZXIgd2UndmUgdW5tYXBwZWQgdGhlIHN0YWNrLgorICAgICAgLy8gVGhhdCdzIG9uZSBsYXN0IHRoaW5nIHdlIGNhbiBoYW5kbGUgaW4gQy4KKyAgICAgIHNpZ3NldF90IG1hc2s7CisgICAgICBzaWdmaWxsc2V0KCZtYXNrKTsKKyAgICAgIHNpZ3Byb2NtYXNrKFNJR19TRVRNQVNLLCAmbWFzaywgTlVMTCk7CisKKyAgICAgIF9leGl0X3dpdGhfc3RhY2tfdGVhcmRvd24odGhyZWFkLT5hdHRyLnN0YWNrX2Jhc2UsIHRocmVhZC0+bW1hcF9zaXplKTsKICAgICB9Ci0gICAgLy8gcHRocmVhZF9qb2luIGlzIHJlc3BvbnNpYmxlIGZvciBkZXN0cm95aW5nIHRoZSBwdGhyZWFkX2ludGVybmFsX3QgZm9yIG5vbi1kZXRhY2hlZCB0aHJlYWRzLgotICAgIC8vIFRoZSBrZXJuZWwgd2lsbCBmdXRleF93YWtlIG9uIHRoZSBwdGhyZWFkX2ludGVybmFsX3Q6OnRpZCBmaWVsZCB0byB3YWtlIHB0aHJlYWRfam9pbi4KICAgfQotICBwdGhyZWFkX211dGV4X3VubG9jaygmZ190aHJlYWRfbGlzdF9sb2NrKTsKIAotICAvLyBQZXJmb3JtIGEgc2Vjb25kIGtleSBjbGVhbnVwLiBXaGVuIHVzaW5nIGplbWFsbG9jLCBhIGNhbGwgdG8gZnJlZSBmcm9tCi0gIC8vIF9wdGhyZWFkX2ludGVybmFsX3JlbW92ZV9sb2NrZWQgY2F1c2VzIHRoZSBtZW1vcnkgYXNzb2NpYXRlZCB3aXRoIGEga2V5Ci0gIC8vIHRvIGJlIHJlYWxsb2NhdGVkLgotICAvLyBUT0RPOiBXaGVuIGIvMTY4NDcyODQgaXMgZml4ZWQgdGhpcyBjYWxsIGNhbiBiZSByZW1vdmVkLgotICBwdGhyZWFkX2tleV9jbGVhbl9hbGwoKTsKLQotICBpZiAodXNlcl9hbGxvY2F0ZWRfc3RhY2spIHsKLSAgICAvLyBDbGVhbmluZyB1cCB0aGlzIHRocmVhZCdzIHN0YWNrIGlzIHRoZSBjcmVhdG9yJ3MgcmVzcG9uc2liaWxpdHksIG5vdCBvdXJzLgotICAgIF9fZXhpdCgwKTsKLSAgfSBlbHNlIHsKLSAgICAvLyBXZSBuZWVkIHRvIG11bm1hcCB0aGUgc3RhY2sgd2UncmUgcnVubmluZyBvbiBiZWZvcmUgY2FsbGluZyBleGl0LgotICAgIC8vIFRoYXQncyBub3Qgc29tZXRoaW5nIHdlIGNhbiBkbyBpbiBDLgotCi0gICAgLy8gV2UgZG9uJ3Qgd2FudCB0byB0YWtlIGEgc2lnbmFsIGFmdGVyIHdlJ3ZlIHVubWFwcGVkIHRoZSBzdGFjay4KLSAgICAvLyBUaGF0J3Mgb25lIGxhc3QgdGhpbmcgd2UgY2FuIGhhbmRsZSBpbiBDLgotICAgIHNpZ3NldF90IG1hc2s7Ci0gICAgc2lnZmlsbHNldCgmbWFzayk7Ci0gICAgc2lncHJvY21hc2soU0lHX1NFVE1BU0ssICZtYXNrLCBOVUxMKTsKLQotICAgIF9leGl0X3dpdGhfc3RhY2tfdGVhcmRvd24oc3RhY2tfYmFzZSwgc3RhY2tfc2l6ZSk7Ci0gIH0KKyAgLy8gTm8gbmVlZCB0byBmcmVlIG1hcHBlZCBzcGFjZS4gRWl0aGVyIHRoZXJlIHdhcyBubyBzcGFjZSBtYXBwZWQsIG9yIGl0IGlzIGxlZnQgZm9yCisgIC8vIHRoZSBwdGhyZWFkX2pvaW4gY2FsbGVyIHRvIGNsZWFuIHVwLgorICBfX2V4aXQoMCk7CiB9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9wdGhyZWFkX2dldGNwdWNsb2NraWQuY3BwIGIvbGliYy9iaW9uaWMvcHRocmVhZF9nZXRjcHVjbG9ja2lkLmNwcAppbmRleCBkMTFmNTZhLi4yYmYyMDA0IDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9wdGhyZWFkX2dldGNwdWNsb2NraWQuY3BwCisrKyBiL2xpYmMvYmlvbmljL3B0aHJlYWRfZ2V0Y3B1Y2xvY2tpZC5jcHAKQEAgLTI4LDExICsyOCwxMSBAQAogCiAjaW5jbHVkZSA8ZXJybm8uaD4KIAotI2luY2x1ZGUgInB0aHJlYWRfYWNjZXNzb3IuaCIKKyNpbmNsdWRlICJwdGhyZWFkX2ludGVybmFsLmgiCiAKIGludCBwdGhyZWFkX2dldGNwdWNsb2NraWQocHRocmVhZF90IHQsIGNsb2NraWRfdCogY2xvY2tpZCkgewotICBwdGhyZWFkX2FjY2Vzc29yIHRocmVhZCh0KTsKLSAgaWYgKHRocmVhZC5nZXQoKSA9PSBOVUxMKSB7CisgIHB0aHJlYWRfaW50ZXJuYWxfdCogdGhyZWFkID0gX19wdGhyZWFkX2ludGVybmFsX2ZpbmQodCk7CisgIGlmICh0aHJlYWQgPT0gTlVMTCkgewogICAgIHJldHVybiBFU1JDSDsKICAgfQogCmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9wdGhyZWFkX2dldHNjaGVkcGFyYW0uY3BwIGIvbGliYy9iaW9uaWMvcHRocmVhZF9nZXRzY2hlZHBhcmFtLmNwcAppbmRleCAyY2RjMTFhLi4wNTJmYjA1IDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9wdGhyZWFkX2dldHNjaGVkcGFyYW0uY3BwCisrKyBiL2xpYmMvYmlvbmljL3B0aHJlYWRfZ2V0c2NoZWRwYXJhbS5jcHAKQEAgLTI5LDEzICsyOSwxMyBAQAogI2luY2x1ZGUgPGVycm5vLmg+CiAKICNpbmNsdWRlICJwcml2YXRlL0Vycm5vUmVzdG9yZXIuaCIKLSNpbmNsdWRlICJwdGhyZWFkX2FjY2Vzc29yLmgiCisjaW5jbHVkZSAicHRocmVhZF9pbnRlcm5hbC5oIgogCiBpbnQgcHRocmVhZF9nZXRzY2hlZHBhcmFtKHB0aHJlYWRfdCB0LCBpbnQqIHBvbGljeSwgc2NoZWRfcGFyYW0qIHBhcmFtKSB7CiAgIEVycm5vUmVzdG9yZXIgZXJybm9fcmVzdG9yZXI7CiAKLSAgcHRocmVhZF9hY2Nlc3NvciB0aHJlYWQodCk7Ci0gIGlmICh0aHJlYWQuZ2V0KCkgPT0gTlVMTCkgeworICBwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCA9IF9fcHRocmVhZF9pbnRlcm5hbF9maW5kKHQpOworICBpZiAodGhyZWFkID09IE5VTEwpIHsKICAgICByZXR1cm4gRVNSQ0g7CiAgIH0KIApkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvcHRocmVhZF9nZXR0aWRfbnAuY3BwIGIvbGliYy9iaW9uaWMvcHRocmVhZF9nZXR0aWRfbnAuY3BwCmluZGV4IGY0NjYzYTcuLmM5OTZhMDUgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3B0aHJlYWRfZ2V0dGlkX25wLmNwcAorKysgYi9saWJjL2Jpb25pYy9wdGhyZWFkX2dldHRpZF9ucC5jcHAKQEAgLTI3LDEzICsyNyw3IEBACiAgKi8KIAogI2luY2x1ZGUgInB0aHJlYWRfaW50ZXJuYWwuaCIKLSNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19wdGhyZWFkLmgiCiAKIHBpZF90IHB0aHJlYWRfZ2V0dGlkX25wKHB0aHJlYWRfdCB0KSB7CiAgIHJldHVybiByZWludGVycHJldF9jYXN0PHB0aHJlYWRfaW50ZXJuYWxfdCo+KHQpLT50aWQ7CiB9Ci0KLS8vIFRPRE86IG1vdmUgY2FsbGVycyBvdmVyIHRvIHB0aHJlYWRfZ2V0dGlkX25wIGFuZCByZW1vdmUgdGhpcy4KLXBpZF90IF9fcHRocmVhZF9nZXR0aWQocHRocmVhZF90IHQpIHsKLSAgcmV0dXJuIHB0aHJlYWRfZ2V0dGlkX25wKHQpOwotfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvcHRocmVhZF9pbnRlcm5hbC5jcHAgYi9saWJjL2Jpb25pYy9wdGhyZWFkX2ludGVybmFsLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOTY3Y2NmCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvcHRocmVhZF9pbnRlcm5hbC5jcHAKQEAgLTAsMCArMSw5MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAwOCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAicHRocmVhZF9pbnRlcm5hbC5oIgorCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzeXMvbW1hbi5oPgorCisjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfZnV0ZXguaCIKKyNpbmNsdWRlICJwcml2YXRlL2Jpb25pY190bHMuaCIKKyNpbmNsdWRlICJwcml2YXRlL2xpYmNfbG9nZ2luZy5oIgorI2luY2x1ZGUgInByaXZhdGUvU2NvcGVkUHRocmVhZE11dGV4TG9ja2VyLmgiCisKK3N0YXRpYyBwdGhyZWFkX2ludGVybmFsX3QqIGdfdGhyZWFkX2xpc3QgPSBOVUxMOworc3RhdGljIHB0aHJlYWRfbXV0ZXhfdCBnX3RocmVhZF9saXN0X2xvY2sgPSBQVEhSRUFEX01VVEVYX0lOSVRJQUxJWkVSOworCitwdGhyZWFkX3QgX19wdGhyZWFkX2ludGVybmFsX2FkZChwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCkgeworICBTY29wZWRQdGhyZWFkTXV0ZXhMb2NrZXIgbG9ja2VyKCZnX3RocmVhZF9saXN0X2xvY2spOworCisgIC8vIFdlIGluc2VydCBhdCB0aGUgaGVhZC4KKyAgdGhyZWFkLT5uZXh0ID0gZ190aHJlYWRfbGlzdDsKKyAgdGhyZWFkLT5wcmV2ID0gTlVMTDsKKyAgaWYgKHRocmVhZC0+bmV4dCAhPSBOVUxMKSB7CisgICAgdGhyZWFkLT5uZXh0LT5wcmV2ID0gdGhyZWFkOworICB9CisgIGdfdGhyZWFkX2xpc3QgPSB0aHJlYWQ7CisgIHJldHVybiByZWludGVycHJldF9jYXN0PHB0aHJlYWRfdD4odGhyZWFkKTsKK30KKwordm9pZCBfX3B0aHJlYWRfaW50ZXJuYWxfcmVtb3ZlKHB0aHJlYWRfaW50ZXJuYWxfdCogdGhyZWFkKSB7CisgIFNjb3BlZFB0aHJlYWRNdXRleExvY2tlciBsb2NrZXIoJmdfdGhyZWFkX2xpc3RfbG9jayk7CisKKyAgaWYgKHRocmVhZC0+bmV4dCAhPSBOVUxMKSB7CisgICAgdGhyZWFkLT5uZXh0LT5wcmV2ID0gdGhyZWFkLT5wcmV2OworICB9CisgIGlmICh0aHJlYWQtPnByZXYgIT0gTlVMTCkgeworICAgIHRocmVhZC0+cHJldi0+bmV4dCA9IHRocmVhZC0+bmV4dDsKKyAgfSBlbHNlIHsKKyAgICBnX3RocmVhZF9saXN0ID0gdGhyZWFkLT5uZXh0OworICB9Cit9CisKK3N0YXRpYyB2b2lkIF9fcHRocmVhZF9pbnRlcm5hbF9mcmVlKHB0aHJlYWRfaW50ZXJuYWxfdCogdGhyZWFkKSB7CisgIGlmICh0aHJlYWQtPm1tYXBfc2l6ZSAhPSAwKSB7CisgICAgLy8gRnJlZSBtYXBwZWQgc3BhY2UsIGluY2x1ZGluZyB0aHJlYWQgc3RhY2sgYW5kIHB0aHJlYWRfaW50ZXJuYWxfdC4KKyAgICBtdW5tYXAodGhyZWFkLT5hdHRyLnN0YWNrX2Jhc2UsIHRocmVhZC0+bW1hcF9zaXplKTsKKyAgfQorfQorCit2b2lkIF9fcHRocmVhZF9pbnRlcm5hbF9yZW1vdmVfYW5kX2ZyZWUocHRocmVhZF9pbnRlcm5hbF90KiB0aHJlYWQpIHsKKyAgX19wdGhyZWFkX2ludGVybmFsX3JlbW92ZSh0aHJlYWQpOworICBfX3B0aHJlYWRfaW50ZXJuYWxfZnJlZSh0aHJlYWQpOworfQorCitwdGhyZWFkX2ludGVybmFsX3QqIF9fcHRocmVhZF9pbnRlcm5hbF9maW5kKHB0aHJlYWRfdCB0aHJlYWRfaWQpIHsKKyAgcHRocmVhZF9pbnRlcm5hbF90KiB0aHJlYWQgPSByZWludGVycHJldF9jYXN0PHB0aHJlYWRfaW50ZXJuYWxfdCo+KHRocmVhZF9pZCk7CisgIFNjb3BlZFB0aHJlYWRNdXRleExvY2tlciBsb2NrZXIoJmdfdGhyZWFkX2xpc3RfbG9jayk7CisKKyAgZm9yIChwdGhyZWFkX2ludGVybmFsX3QqIHQgPSBnX3RocmVhZF9saXN0OyB0ICE9IE5VTEw7IHQgPSB0LT5uZXh0KSB7CisgICAgaWYgKHQgPT0gdGhyZWFkKSB7CisgICAgICByZXR1cm4gdGhyZWFkOworICAgIH0KKyAgfQorICByZXR1cm4gTlVMTDsKK30KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3B0aHJlYWRfaW50ZXJuYWwuaCBiL2xpYmMvYmlvbmljL3B0aHJlYWRfaW50ZXJuYWwuaAppbmRleCBhNWIzMDAyLi4zYjkxZTZhIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9wdGhyZWFkX2ludGVybmFsLmgKKysrIGIvbGliYy9iaW9uaWMvcHRocmVhZF9pbnRlcm5hbC5oCkBAIC0yOSwxOCArMjksMjcgQEAKICNkZWZpbmUgX1BUSFJFQURfSU5URVJOQUxfSF8KIAogI2luY2x1ZGUgPHB0aHJlYWQuaD4KKyNpbmNsdWRlIDxzdGRhdG9taWMuaD4KKworI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX3Rscy5oIgogCiAvKiBIYXMgdGhlIHRocmVhZCBiZWVuIGRldGFjaGVkIGJ5IGEgcHRocmVhZF9qb2luIG9yIHB0aHJlYWRfZGV0YWNoIGNhbGw/ICovCiAjZGVmaW5lIFBUSFJFQURfQVRUUl9GTEFHX0RFVEFDSEVEIDB4MDAwMDAwMDEKIAotLyogV2FzIHRoZSB0aHJlYWQncyBzdGFjayBhbGxvY2F0ZWQgYnkgdGhlIHVzZXIgcmF0aGVyIHRoYW4gYnkgdXM/ICovCi0jZGVmaW5lIFBUSFJFQURfQVRUUl9GTEFHX1VTRVJfQUxMT0NBVEVEX1NUQUNLIDB4MDAwMDAwMDIKLQogLyogSGFzIHRoZSB0aHJlYWQgYmVlbiBqb2luZWQgYnkgYW5vdGhlciB0aHJlYWQ/ICovCi0jZGVmaW5lIFBUSFJFQURfQVRUUl9GTEFHX0pPSU5FRCAweDAwMDAwMDA0CisjZGVmaW5lIFBUSFJFQURfQVRUUl9GTEFHX0pPSU5FRCAweDAwMDAwMDAyCiAKLS8qIElzIHRoaXMgdGhlIG1haW4gdGhyZWFkPyAqLwotI2RlZmluZSBQVEhSRUFEX0FUVFJfRkxBR19NQUlOX1RIUkVBRCAweDgwMDAwMDAwCitzdHJ1Y3QgcHRocmVhZF9rZXlfZGF0YV90IHsKKyAgdWludHB0cl90IHNlcTsgLy8gVXNlIHVpbnRwdHJfdCBqdXN0IGZvciBhbGlnbm1lbnQsIGFzIHdlIHVzZSBwb2ludGVyIGJlbG93LgorICB2b2lkKiBkYXRhOworfTsKKworZW51bSBUaHJlYWRKb2luU3RhdGUgeworICBUSFJFQURfTk9UX0pPSU5FRCwKKyAgVEhSRUFEX0VYSVRFRF9OT1RfSk9JTkVELAorICBUSFJFQURfSk9JTkVELAorICBUSFJFQURfREVUQUNIRUQKK307CiAKIHN0cnVjdCBwdGhyZWFkX2ludGVybmFsX3QgewogICBzdHJ1Y3QgcHRocmVhZF9pbnRlcm5hbF90KiBuZXh0OwpAQCAtNjgsMTQgKzc3LDEwIEBACiAgICAgcmV0dXJuICgqY2FjaGVkX3BpZCAhPSAwKTsKICAgfQogCi0gIGJvb2wgdXNlcl9hbGxvY2F0ZWRfc3RhY2soKSB7Ci0gICAgcmV0dXJuIChhdHRyLmZsYWdzICYgUFRIUkVBRF9BVFRSX0ZMQUdfVVNFUl9BTExPQ0FURURfU1RBQ0spICE9IDA7Ci0gIH0KLQotICB2b2lkKiogdGxzOwotCiAgIHB0aHJlYWRfYXR0cl90IGF0dHI7CiAKKyAgX0F0b21pYyhUaHJlYWRKb2luU3RhdGUpIGpvaW5fc3RhdGU7CisKICAgX19wdGhyZWFkX2NsZWFudXBfdCogY2xlYW51cF9zdGFjazsKIAogICB2b2lkKiAoKnN0YXJ0X3JvdXRpbmUpKHZvaWQqKTsKQEAgLTg2LDYgKzkxLDEyIEBACiAKICAgcHRocmVhZF9tdXRleF90IHN0YXJ0dXBfaGFuZHNoYWtlX211dGV4OwogCisgIHNpemVfdCBtbWFwX3NpemU7CisKKyAgdm9pZCogdGxzW0JJT05JQ19UTFNfU0xPVFNdOworCisgIHB0aHJlYWRfa2V5X2RhdGFfdCBrZXlfZGF0YVtCSU9OSUNfUFRIUkVBRF9LRVlfQ09VTlRdOworCiAgIC8qCiAgICAqIFRoZSBkeW5hbWljIGxpbmtlciBpbXBsZW1lbnRzIGRsZXJyb3IoMyksIHdoaWNoIG1ha2VzIGl0IGhhcmQgZm9yIHVzIHRvIGltcGxlbWVudCB0aGlzCiAgICAqIHBlci10aHJlYWQgYnVmZmVyIGJ5IHNpbXBseSB1c2luZyBtYWxsb2MoMykgYW5kIGZyZWUoMykuCkBAIC05NCwxNiArMTA1LDIxIEBACiAgIGNoYXIgZGxlcnJvcl9idWZmZXJbX19CSU9OSUNfRExFUlJPUl9CVUZGRVJfU0laRV07CiB9OwogCi1fX0xJQkNfSElEREVOX18gaW50IF9faW5pdF90aHJlYWQocHRocmVhZF9pbnRlcm5hbF90KiB0aHJlYWQsIGJvb2wgYWRkX3RvX3RocmVhZF9saXN0KTsKK19fTElCQ19ISURERU5fXyBpbnQgX19pbml0X3RocmVhZChwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCk7CiBfX0xJQkNfSElEREVOX18gdm9pZCBfX2luaXRfdGxzKHB0aHJlYWRfaW50ZXJuYWxfdCogdGhyZWFkKTsKIF9fTElCQ19ISURERU5fXyB2b2lkIF9faW5pdF9hbHRlcm5hdGVfc2lnbmFsX3N0YWNrKHB0aHJlYWRfaW50ZXJuYWxfdCopOwotX19MSUJDX0hJRERFTl9fIHZvaWQgX3B0aHJlYWRfaW50ZXJuYWxfYWRkKHB0aHJlYWRfaW50ZXJuYWxfdCogdGhyZWFkKTsKIAotLyogVmFyaW91cyB0aGlyZC1wYXJ0eSBhcHBzIGNvbnRhaW4gYSBiYWNrcG9ydCBvZiBvdXIgcHRocmVhZF9yd2xvY2sgaW1wbGVtZW50YXRpb24gdGhhdCB1c2VzIHRoaXMuICovCi1leHRlcm4gIkMiIF9fTElCQzY0X0hJRERFTl9fIHB0aHJlYWRfaW50ZXJuYWxfdCogX19nZXRfdGhyZWFkKHZvaWQpOworX19MSUJDX0hJRERFTl9fIHB0aHJlYWRfdCAgICAgICAgICAgX19wdGhyZWFkX2ludGVybmFsX2FkZChwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCk7CitfX0xJQkNfSElEREVOX18gcHRocmVhZF9pbnRlcm5hbF90KiBfX3B0aHJlYWRfaW50ZXJuYWxfZmluZChwdGhyZWFkX3QgcHRocmVhZF9pZCk7CitfX0xJQkNfSElEREVOX18gdm9pZCAgICAgICAgICAgICAgICBfX3B0aHJlYWRfaW50ZXJuYWxfcmVtb3ZlKHB0aHJlYWRfaW50ZXJuYWxfdCogdGhyZWFkKTsKK19fTElCQ19ISURERU5fXyB2b2lkICAgICAgICAgICAgICAgIF9fcHRocmVhZF9pbnRlcm5hbF9yZW1vdmVfYW5kX2ZyZWUocHRocmVhZF9pbnRlcm5hbF90KiB0aHJlYWQpOworCisvLyBNYWtlIF9fZ2V0X3RocmVhZCgpIGlubGluZWQgZm9yIHBlcmZvcm1hbmNlIHJlYXNvbi4gU2VlIGh0dHA6Ly9iLzE5ODI1NDM0Lgorc3RhdGljIGlubGluZSBfX2Fsd2F5c19pbmxpbmUgcHRocmVhZF9pbnRlcm5hbF90KiBfX2dldF90aHJlYWQoKSB7CisgIHJldHVybiByZWludGVycHJldF9jYXN0PHB0aHJlYWRfaW50ZXJuYWxfdCo+KF9fZ2V0X3RscygpW1RMU19TTE9UX1RIUkVBRF9JRF0pOworfQogCiBfX0xJQkNfSElEREVOX18gdm9pZCBwdGhyZWFkX2tleV9jbGVhbl9hbGwodm9pZCk7Ci1fX0xJQkNfSElEREVOX18gdm9pZCBfcHRocmVhZF9pbnRlcm5hbF9yZW1vdmVfbG9ja2VkKHB0aHJlYWRfaW50ZXJuYWxfdCogdGhyZWFkKTsKIAogLyoKICAqIFRyYWRpdGlvbmFsbHkgd2UgZ2F2ZSB0aHJlYWRzIGEgMU1pQiBzdGFjay4gV2hlbiB3ZSBzdGFydGVkCkBAIC0xMTQsMTAgKzEzMCw4IEBACiAgKi8KICNkZWZpbmUgUFRIUkVBRF9TVEFDS19TSVpFX0RFRkFVTFQgKCgxICogMTAyNCAqIDEwMjQpIC0gU0lHU1RLU1opCiAKLV9fTElCQ19ISURERU5fXyBleHRlcm4gcHRocmVhZF9pbnRlcm5hbF90KiBnX3RocmVhZF9saXN0OwotX19MSUJDX0hJRERFTl9fIGV4dGVybiBwdGhyZWFkX211dGV4X3QgZ190aHJlYWRfbGlzdF9sb2NrOwotCi1fX0xJQkNfSElEREVOX18gaW50IF9fdGltZXNwZWNfZnJvbV9hYnNvbHV0ZSh0aW1lc3BlYyosIGNvbnN0IHRpbWVzcGVjKiwgY2xvY2tpZF90KTsKKy8qIExlYXZlIHJvb20gZm9yIGEgZ3VhcmQgcGFnZSBpbiB0aGUgaW50ZXJuYWxseSBjcmVhdGVkIHNpZ25hbCBzdGFja3MuICovCisjZGVmaW5lIFNJR05BTF9TVEFDS19TSVpFIChTSUdTVEtTWiArIFBBR0VfU0laRSkKIAogLyogTmVlZGVkIGJ5IGZvcmsuICovCiBfX0xJQkNfSElEREVOX18gZXh0ZXJuIHZvaWQgX19iaW9uaWNfYXRmb3JrX3J1bl9wcmVwYXJlKCk7CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9wdGhyZWFkX2ludGVybmFscy5jcHAgYi9saWJjL2Jpb25pYy9wdGhyZWFkX2ludGVybmFscy5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRjMDhiYTguLjAwMDAwMDAKLS0tIGEvbGliYy9iaW9uaWMvcHRocmVhZF9pbnRlcm5hbHMuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsODUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAicHRocmVhZF9pbnRlcm5hbC5oIgotCi0jaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfZnV0ZXguaCIKLSNpbmNsdWRlICJwcml2YXRlL2Jpb25pY190bHMuaCIKLSNpbmNsdWRlICJwcml2YXRlL1Njb3BlZFB0aHJlYWRNdXRleExvY2tlci5oIgotCi1wdGhyZWFkX2ludGVybmFsX3QqIGdfdGhyZWFkX2xpc3QgPSBOVUxMOwotcHRocmVhZF9tdXRleF90IGdfdGhyZWFkX2xpc3RfbG9jayA9IFBUSFJFQURfTVVURVhfSU5JVElBTElaRVI7Ci0KLXZvaWQgX3B0aHJlYWRfaW50ZXJuYWxfcmVtb3ZlX2xvY2tlZChwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCkgewotICBpZiAodGhyZWFkLT5uZXh0ICE9IE5VTEwpIHsKLSAgICB0aHJlYWQtPm5leHQtPnByZXYgPSB0aHJlYWQtPnByZXY7Ci0gIH0KLSAgaWYgKHRocmVhZC0+cHJldiAhPSBOVUxMKSB7Ci0gICAgdGhyZWFkLT5wcmV2LT5uZXh0ID0gdGhyZWFkLT5uZXh0OwotICB9IGVsc2UgewotICAgIGdfdGhyZWFkX2xpc3QgPSB0aHJlYWQtPm5leHQ7Ci0gIH0KLQotICAvLyBUaGUgbWFpbiB0aHJlYWQgaXMgbm90IGhlYXAtYWxsb2NhdGVkLiBTZWUgX19saWJjX2luaXRfdGxzIGZvciB0aGUgZGVjbGFyYXRpb24sCi0gIC8vIGFuZCBfX2xpYmNfaW5pdF9jb21tb24gZm9yIHRoZSBwb2ludCB3aGVyZSBpdCdzIGFkZGVkIHRvIHRoZSB0aHJlYWQgbGlzdC4KLSAgaWYgKCh0aHJlYWQtPmF0dHIuZmxhZ3MgJiBQVEhSRUFEX0FUVFJfRkxBR19NQUlOX1RIUkVBRCkgPT0gMCkgewotICAgIGZyZWUodGhyZWFkKTsKLSAgfQotfQotCi12b2lkIF9wdGhyZWFkX2ludGVybmFsX2FkZChwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCkgewotICBTY29wZWRQdGhyZWFkTXV0ZXhMb2NrZXIgbG9ja2VyKCZnX3RocmVhZF9saXN0X2xvY2spOwotCi0gIC8vIFdlIGluc2VydCBhdCB0aGUgaGVhZC4KLSAgdGhyZWFkLT5uZXh0ID0gZ190aHJlYWRfbGlzdDsKLSAgdGhyZWFkLT5wcmV2ID0gTlVMTDsKLSAgaWYgKHRocmVhZC0+bmV4dCAhPSBOVUxMKSB7Ci0gICAgdGhyZWFkLT5uZXh0LT5wcmV2ID0gdGhyZWFkOwotICB9Ci0gIGdfdGhyZWFkX2xpc3QgPSB0aHJlYWQ7Ci19Ci0KLXB0aHJlYWRfaW50ZXJuYWxfdCogX19nZXRfdGhyZWFkKHZvaWQpIHsKLSAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8cHRocmVhZF9pbnRlcm5hbF90Kj4oX19nZXRfdGxzKClbVExTX1NMT1RfVEhSRUFEX0lEXSk7Ci19Ci0KLS8vIEluaXRpYWxpemUgJ3RzJyB3aXRoIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gJ2Fic3RpbWUnIGFuZCB0aGUgY3VycmVudCB0aW1lCi0vLyBhY2NvcmRpbmcgdG8gJ2Nsb2NrJy4gUmV0dXJucyAtMSBpZiBhYnN0aW1lIGFscmVhZHkgZXhwaXJlZCwgb3IgMCBvdGhlcndpc2UuCi1pbnQgX190aW1lc3BlY19mcm9tX2Fic29sdXRlKHRpbWVzcGVjKiB0cywgY29uc3QgdGltZXNwZWMqIGFic3RpbWUsIGNsb2NraWRfdCBjbG9jaykgewotICBjbG9ja19nZXR0aW1lKGNsb2NrLCB0cyk7Ci0gIHRzLT50dl9zZWMgID0gYWJzdGltZS0+dHZfc2VjIC0gdHMtPnR2X3NlYzsKLSAgdHMtPnR2X25zZWMgPSBhYnN0aW1lLT50dl9uc2VjIC0gdHMtPnR2X25zZWM7Ci0gIGlmICh0cy0+dHZfbnNlYyA8IDApIHsKLSAgICB0cy0+dHZfc2VjLS07Ci0gICAgdHMtPnR2X25zZWMgKz0gMTAwMDAwMDAwMDsKLSAgfQotICBpZiAoKHRzLT50dl9uc2VjIDwgMCkgfHwgKHRzLT50dl9zZWMgPCAwKSkgewotICAgIHJldHVybiAtMTsKLSAgfQotICByZXR1cm4gMDsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3B0aHJlYWRfam9pbi5jcHAgYi9saWJjL2Jpb25pYy9wdGhyZWFkX2pvaW4uY3BwCmluZGV4IDBjYmVkNjIuLjRkODUyY2IgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3B0aHJlYWRfam9pbi5jcHAKKysrIGIvbGliYy9iaW9uaWMvcHRocmVhZF9qb2luLmNwcApAQCAtMjksMzYgKzI5LDMxIEBACiAjaW5jbHVkZSA8ZXJybm8uaD4KIAogI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX2Z1dGV4LmgiCi0jaW5jbHVkZSAicHRocmVhZF9hY2Nlc3Nvci5oIgorI2luY2x1ZGUgInB0aHJlYWRfaW50ZXJuYWwuaCIKIAogaW50IHB0aHJlYWRfam9pbihwdGhyZWFkX3QgdCwgdm9pZCoqIHJldHVybl92YWx1ZSkgewogICBpZiAodCA9PSBwdGhyZWFkX3NlbGYoKSkgewogICAgIHJldHVybiBFREVBRExLOwogICB9CiAKLSAgcGlkX3QgdGlkOwotICB2b2xhdGlsZSBpbnQqIHRpZF9wdHI7Ci0gIHsKLSAgICBwdGhyZWFkX2FjY2Vzc29yIHRocmVhZCh0KTsKLSAgICBpZiAodGhyZWFkLmdldCgpID09IE5VTEwpIHsKLSAgICAgIHJldHVybiBFU1JDSDsKLSAgICB9Ci0KLSAgICBpZiAoKHRocmVhZC0+YXR0ci5mbGFncyAmIFBUSFJFQURfQVRUUl9GTEFHX0RFVEFDSEVEKSAhPSAwKSB7Ci0gICAgICByZXR1cm4gRUlOVkFMOwotICAgIH0KLQotICAgIGlmICgodGhyZWFkLT5hdHRyLmZsYWdzICYgUFRIUkVBRF9BVFRSX0ZMQUdfSk9JTkVEKSAhPSAwKSB7Ci0gICAgICByZXR1cm4gRUlOVkFMOwotICAgIH0KLQotICAgIC8vIE9rYXksIGxvb2tzIGxpa2Ugd2UgY2FuIHNpZ25hbCBvdXIgaW50ZW50aW9uIHRvIGpvaW4uCi0gICAgdGhyZWFkLT5hdHRyLmZsYWdzIHw9IFBUSFJFQURfQVRUUl9GTEFHX0pPSU5FRDsKLSAgICB0aWQgPSB0aHJlYWQtPnRpZDsKLSAgICB0aWRfcHRyID0gJnRocmVhZC0+dGlkOworICBwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCA9IF9fcHRocmVhZF9pbnRlcm5hbF9maW5kKHQpOworICBpZiAodGhyZWFkID09IE5VTEwpIHsKKyAgICByZXR1cm4gRVNSQ0g7CiAgIH0KIAotICAvLyBXZSBzZXQgdGhlIFBUSFJFQURfQVRUUl9GTEFHX0pPSU5FRCBmbGFnIHdpdGggdGhlIGxvY2sgaGVsZCwKKyAgVGhyZWFkSm9pblN0YXRlIG9sZF9zdGF0ZSA9IFRIUkVBRF9OT1RfSk9JTkVEOworICB3aGlsZSAoKG9sZF9zdGF0ZSA9PSBUSFJFQURfTk9UX0pPSU5FRCB8fCBvbGRfc3RhdGUgPT0gVEhSRUFEX0VYSVRFRF9OT1RfSk9JTkVEKSAmJgorICAgICAgICAgIWF0b21pY19jb21wYXJlX2V4Y2hhbmdlX3dlYWsoJnRocmVhZC0+am9pbl9zdGF0ZSwgJm9sZF9zdGF0ZSwgVEhSRUFEX0pPSU5FRCkpIHsKKyAgfQorCisgIGlmIChvbGRfc3RhdGUgPT0gVEhSRUFEX0RFVEFDSEVEIHx8IG9sZF9zdGF0ZSA9PSBUSFJFQURfSk9JTkVEKSB7CisgICAgcmV0dXJuIEVJTlZBTDsKKyAgfQorCisgIHBpZF90IHRpZCA9IHRocmVhZC0+dGlkOworICB2b2xhdGlsZSBpbnQqIHRpZF9wdHIgPSAmdGhyZWFkLT50aWQ7CisKKyAgLy8gV2Ugc2V0IHRocmVhZC0+am9pbl9zdGF0ZSB0byBUSFJFQURfSk9JTkVEIHdpdGggYXRvbWljIG9wZXJhdGlvbiwKICAgLy8gc28gbm8gb25lIGlzIGdvaW5nIHRvIHJlbW92ZSB0aGlzIHRocmVhZCBleGNlcHQgdXMuCiAKICAgLy8gV2FpdCBmb3IgdGhlIHRocmVhZCB0byBhY3R1YWxseSBleGl0LCBpZiBpdCBoYXNuJ3QgYWxyZWFkeS4KQEAgLTY2LDE0ICs2MSwxMCBAQAogICAgIF9fZnV0ZXhfd2FpdCh0aWRfcHRyLCB0aWQsIE5VTEwpOwogICB9CiAKLSAgLy8gVGFrZSB0aGUgbG9jayBhZ2FpbiBzbyB3ZSBjYW4gcHVsbCB0aGUgdGhyZWFkJ3MgcmV0dXJuIHZhbHVlCi0gIC8vIGFuZCByZW1vdmUgdGhlIHRocmVhZCBmcm9tIHRoZSBsaXN0LgotICBwdGhyZWFkX2FjY2Vzc29yIHRocmVhZCh0KTsKLQogICBpZiAocmV0dXJuX3ZhbHVlKSB7CiAgICAgKnJldHVybl92YWx1ZSA9IHRocmVhZC0+cmV0dXJuX3ZhbHVlOwogICB9CiAKLSAgX3B0aHJlYWRfaW50ZXJuYWxfcmVtb3ZlX2xvY2tlZCh0aHJlYWQuZ2V0KCkpOworICBfX3B0aHJlYWRfaW50ZXJuYWxfcmVtb3ZlX2FuZF9mcmVlKHRocmVhZCk7CiAgIHJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvcHRocmVhZF9rZXkuY3BwIGIvbGliYy9iaW9uaWMvcHRocmVhZF9rZXkuY3BwCmluZGV4IDI3ZWFiMjcuLjZkNzdhZmEgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3B0aHJlYWRfa2V5LmNwcAorKysgYi9saWJjL2Jpb25pYy9wdGhyZWFkX2tleS5jcHAKQEAgLTI2LDE3NiArMjYsMTA3IEBACiAgKiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNsdWRlIDxwdGhyZWFkLmg+CisjaW5jbHVkZSA8c3RkYXRvbWljLmg+CiAKICNpbmNsdWRlICJwcml2YXRlL2Jpb25pY190bHMuaCIKICNpbmNsdWRlICJwdGhyZWFkX2ludGVybmFsLmgiCiAKLS8qIEEgdGVjaG5pY2FsIG5vdGUgcmVnYXJkaW5nIG91ciB0aHJlYWQtbG9jYWwtc3RvcmFnZSAoVExTKSBpbXBsZW1lbnRhdGlvbjoKLSAqCi0gKiBUaGVyZSBjYW4gYmUgdXAgdG8gQklPTklDX1RMU19TTE9UUyBpbmRlcGVuZGVudCBUTFMga2V5cyBpbiBhIGdpdmVuIHByb2Nlc3MsCi0gKiBUaGUga2V5cyBiZWxvdyBUTFNfU0xPVF9GSVJTVF9VU0VSX1NMT1QgYXJlIHJlc2VydmVkIGZvciBCaW9uaWMgdG8gaG9sZAotICogc3BlY2lhbCB0aHJlYWQtc3BlY2lmaWMgdmFyaWFibGVzIGxpa2UgZXJybm8gb3IgYSBwb2ludGVyIHRvCi0gKiB0aGUgY3VycmVudCB0aHJlYWQncyBkZXNjcmlwdG9yLiBUaGVzZSBlbnRyaWVzIGNhbm5vdCBiZSBhY2Nlc3NlZCB0aHJvdWdoCi0gKiBwdGhyZWFkX2dldHNwZWNpZmljKCkgLyBwdGhyZWFkX3NldHNwZWNpZmljKCkgb3IgcHRocmVhZF9rZXlfZGVsZXRlKCkKLSAqCi0gKiBUaGUgJ3Rsc19tYXBfdCcgdHlwZSBkZWZpbmVkIGJlbG93IGltcGxlbWVudHMgYSBzaGFyZWQgZ2xvYmFsIG1hcCBvZgotICogY3VycmVudGx5IGNyZWF0ZWQvYWxsb2NhdGVkIFRMUyBrZXlzIGFuZCB0aGUgZGVzdHJ1Y3RvcnMgYXNzb2NpYXRlZAotICogd2l0aCB0aGVtLgotICoKLSAqIFRoZSBnbG9iYWwgVExTIG1hcCBzaW1wbHkgY29udGFpbnMgYSBiaXRtYXAgb2YgYWxsb2NhdGVkIGtleXMsIGFuZAotICogYW4gYXJyYXkgb2YgZGVzdHJ1Y3RvcnMuCi0gKgotICogRWFjaCB0aHJlYWQgaGFzIGEgVExTIGFyZWEgdGhhdCBpcyBhIHNpbXBsZSBhcnJheSBvZiBCSU9OSUNfVExTX1NMT1RTIHZvaWQqCi0gKiBwb2ludGVycy4gdGhlIFRMUyBhcmVhIG9mIHRoZSBtYWluIHRocmVhZCBpcyBzdGFjay1hbGxvY2F0ZWQgaW4KLSAqIF9fbGliY19pbml0X2NvbW1vbiwgd2hpbGUgdGhlIFRMUyBhcmVhIG9mIG90aGVyIHRocmVhZHMgaXMgcGxhY2VkIGF0Ci0gKiB0aGUgdG9wIG9mIHRoZWlyIHN0YWNrIGluIHB0aHJlYWRfY3JlYXRlLgotICoKLSAqIFdoZW4gcHRocmVhZF9rZXlfZGVsZXRlKCkgaXMgY2FsbGVkIGl0IHdpbGwgZXJhc2UgdGhlIGtleSdzIGJpdG1hcCBiaXQKLSAqIGFuZCBpdHMgZGVzdHJ1Y3RvciwgYW5kIHdpbGwgYWxzbyBjbGVhciB0aGUga2V5IGRhdGEgaW4gdGhlIFRMUyBhcmVhIG9mCi0gKiBhbGwgY3JlYXRlZCB0aHJlYWRzLiBBcyBtYW5kYXRlZCBieSBQb3NpeCwgaXQgaXMgdGhlIHJlc3BvbnNpYmlsaXR5IG9mCi0gKiB0aGUgY2FsbGVyIG9mIHB0aHJlYWRfa2V5X2RlbGV0ZSgpIHRvIHByb3Blcmx5IHJlY2xhaW0gdGhlIG9iamVjdHMgdGhhdAotICogd2VyZSBwb2ludGVkIHRvIGJ5IHRoZXNlIGRhdGEgZmllbGRzIChlaXRoZXIgYmVmb3JlIG9yIGFmdGVyIHRoZSBjYWxsKS4KLSAqLwotCi0jZGVmaW5lIFRMU01BUF9CSVRTICAgICAgIDMyCi0jZGVmaW5lIFRMU01BUF9XT1JEUyAgICAgICgoQklPTklDX1RMU19TTE9UUytUTFNNQVBfQklUUy0xKS9UTFNNQVBfQklUUykKLSNkZWZpbmUgVExTTUFQX1dPUkQobSxrKSAgKG0pLm1hcFsoaykvVExTTUFQX0JJVFNdCi0jZGVmaW5lIFRMU01BUF9NQVNLKGspICAgICgxVSA8PCAoKGspJihUTFNNQVBfQklUUy0xKSkpCi0KLXN0YXRpYyBpbmxpbmUgYm9vbCBJc1ZhbGlkVXNlcktleShwdGhyZWFkX2tleV90IGtleSkgewotICByZXR1cm4gKGtleSA+PSBUTFNfU0xPVF9GSVJTVF9VU0VSX1NMT1QgJiYga2V5IDwgQklPTklDX1RMU19TTE9UUyk7Ci19Ci0KIHR5cGVkZWYgdm9pZCAoKmtleV9kZXN0cnVjdG9yX3QpKHZvaWQqKTsKIAotc3RydWN0IHRsc19tYXBfdCB7Ci0gIGJvb2wgaXNfaW5pdGlhbGl6ZWQ7CisjZGVmaW5lIFNFUV9LRVlfSU5fVVNFX0JJVCAgICAgMAogCi0gIC8qIGJpdG1hcCBvZiBhbGxvY2F0ZWQga2V5cyAqLwotICB1aW50MzJfdCBtYXBbVExTTUFQX1dPUkRTXTsKKyNkZWZpbmUgU0VRX0lOQ1JFTUVOVF9TVEVQICAoMSA8PCBTRVFfS0VZX0lOX1VTRV9CSVQpCiAKLSAga2V5X2Rlc3RydWN0b3JfdCBrZXlfZGVzdHJ1Y3RvcnNbQklPTklDX1RMU19TTE9UU107CisvLyBwdGhyZWFkX2tleV9pbnRlcm5hbF90IHJlY29yZHMgdGhlIHVzZSBvZiBlYWNoIHB0aHJlYWQga2V5IHNsb3Q6CisvLyAgIHNlcSByZWNvcmRzIHRoZSBzdGF0ZSBvZiB0aGUgc2xvdC4KKy8vICAgICAgYml0IDAgaXMgMSB3aGVuIHRoZSBrZXkgaXMgaW4gdXNlLCAwIHdoZW4gaXQgaXMgdW51c2VkLiBFYWNoIHRpbWUgd2UgY3JlYXRlIG9yIGRlbGV0ZSB0aGUKKy8vICAgICAgcHRocmVhZCBrZXkgaW4gdGhlIHNsb3QsIHdlIGluY3Jlc2UgdGhlIHNlcSBieSAxICh3aGljaCBpbnZlcnRzIGJpdCAwKS4gVGhlIHJlYXNvbiB0byB1c2UKKy8vICAgICAgYSBzZXF1ZW5jZSBudW1iZXIgaW5zdGVhZCBvZiBhIGJvb2xlYW4gdmFsdWUgaGVyZSBpcyB0aGF0IHdoZW4gdGhlIGtleSBzbG90IGlzIGRlbGV0ZWQgYW5kCisvLyAgICAgIHJldXNlZCBmb3IgYSBuZXcga2V5LCBwdGhyZWFkX2dldHNwZWNpZmljIHdpbGwgbm90IHJldHVybiBzdGFsZSBkYXRhLgorLy8gICBrZXlfZGVzdHJ1Y3RvciByZWNvcmRzIHRoZSBkZXN0cnVjdG9yIGNhbGxlZCBhdCB0aHJlYWQgZXhpdC4KK3N0cnVjdCBwdGhyZWFkX2tleV9pbnRlcm5hbF90IHsKKyAgYXRvbWljX3VpbnRwdHJfdCBzZXE7CisgIGF0b21pY191aW50cHRyX3Qga2V5X2Rlc3RydWN0b3I7CiB9OwogCi1jbGFzcyBTY29wZWRUbHNNYXBBY2Nlc3MgewotIHB1YmxpYzoKLSAgU2NvcGVkVGxzTWFwQWNjZXNzKCkgewotICAgIExvY2soKTsKK3N0YXRpYyBwdGhyZWFkX2tleV9pbnRlcm5hbF90IGtleV9tYXBbQklPTklDX1BUSFJFQURfS0VZX0NPVU5UXTsKIAotICAgIC8vIElmIHRoaXMgaXMgdGhlIGZpcnN0IHRpbWUgdGhlIFRMUyBtYXAgaGFzIGJlZW4gYWNjZXNzZWQsCi0gICAgLy8gbWFyayB0aGUgc2xvdHMgYmVsb25naW5nIHRvIHdlbGwta25vd24ga2V5cyBhcyBiZWluZyBpbiB1c2UuCi0gICAgLy8gVGhpcyBpc24ndCBjdXJyZW50bHkgbmVjZXNzYXJ5IGJlY2F1c2UgdGhlIHdlbGwta25vd24ga2V5cwotICAgIC8vIGNhbiBvbmx5IGJlIGFjY2Vzc2VkIGRpcmVjdGx5IGJ5IGJpb25pYyBpdHNlbGYsIGRvIG5vdCBoYXZlCi0gICAgLy8gZGVzdHJ1Y3RvcnMsIGFuZCBhbGwgdGhlIGZ1bmN0aW9ucyB0aGF0IHRvdWNoIHRoZSBUTFMgbWFwCi0gICAgLy8gc3RhcnQgYWZ0ZXIgdGhlIG1heGltdW0gd2VsbC1rbm93biBzbG90LgotICAgIGlmICghc190bHNfbWFwXy5pc19pbml0aWFsaXplZCkgewotICAgICAgZm9yIChwdGhyZWFkX2tleV90IGtleSA9IDA7IGtleSA8IFRMU19TTE9UX0ZJUlNUX1VTRVJfU0xPVDsgKytrZXkpIHsKLSAgICAgICAgU2V0SW5Vc2Uoa2V5LCBOVUxMKTsKLSAgICAgIH0KLSAgICAgIHNfdGxzX21hcF8uaXNfaW5pdGlhbGl6ZWQgPSB0cnVlOwotICAgIH0KLSAgfQorc3RhdGljIGlubGluZSBib29sIFNlcU9mS2V5SW5Vc2UodWludHB0cl90IHNlcSkgeworICByZXR1cm4gc2VxICYgKDEgPDwgU0VRX0tFWV9JTl9VU0VfQklUKTsKK30KIAotICB+U2NvcGVkVGxzTWFwQWNjZXNzKCkgewotICAgIFVubG9jaygpOwotICB9CisjZGVmaW5lIEtFWV9WQUxJRF9GTEFHICgxIDw8IDMxKQogCi0gIGludCBDcmVhdGVLZXkocHRocmVhZF9rZXlfdCogcmVzdWx0LCB2b2lkICgqa2V5X2Rlc3RydWN0b3IpKHZvaWQqKSkgewotICAgIC8vIFRha2UgdGhlIGZpcnN0IHVuYWxsb2NhdGVkIGtleS4KLSAgICBmb3IgKGludCBrZXkgPSAwOyBrZXkgPCBCSU9OSUNfVExTX1NMT1RTOyArK2tleSkgewotICAgICAgaWYgKCFJc0luVXNlKGtleSkpIHsKLSAgICAgICAgU2V0SW5Vc2Uoa2V5LCBrZXlfZGVzdHJ1Y3Rvcik7Ci0gICAgICAgICpyZXN1bHQgPSBrZXk7Ci0gICAgICAgIHJldHVybiAwOwotICAgICAgfQotICAgIH0KK3N0YXRpY19hc3NlcnQoc2l6ZW9mKHB0aHJlYWRfa2V5X3QpID09IHNpemVvZihpbnQpICYmIHN0YXRpY19jYXN0PHB0aHJlYWRfa2V5X3Q+KC0xKSA8IDAsCisgICAgICAgICAgICAgICJwdGhyZWFkX2tleV90IHNob3VsZCBiZSB0eXBlZGVmIHRvIGludCIpOwogCi0gICAgLy8gV2UgaGl0IFBUSFJFQURfS0VZU19NQVguIFBPU0lYIHNheXMgRUFHQUlOIGZvciB0aGlzIGNhc2UuCi0gICAgcmV0dXJuIEVBR0FJTjsKLSAgfQorc3RhdGljIGlubGluZSBib29sIEtleUluVmFsaWRSYW5nZShwdGhyZWFkX2tleV90IGtleSkgeworICAvLyBrZXkgPCAwIG1lYW5zIGJpdCAzMSBpcyBzZXQuCisgIC8vIFRoZW4ga2V5IDwgKDJeMzEgfCBCSU9OSUNfUFRIUkVBRF9LRVlfQ09VTlQpIG1lYW5zIHRoZSBpbmRleCBwYXJ0IG9mIGtleSA8IEJJT05JQ19QVEhSRUFEX0tFWV9DT1VOVC4KKyAgcmV0dXJuIChrZXkgPCAoS0VZX1ZBTElEX0ZMQUcgfCBCSU9OSUNfUFRIUkVBRF9LRVlfQ09VTlQpKTsKK30KIAotICB2b2lkIERlbGV0ZUtleShwdGhyZWFkX2tleV90IGtleSkgewotICAgIFRMU01BUF9XT1JEKHNfdGxzX21hcF8sIGtleSkgJj0gflRMU01BUF9NQVNLKGtleSk7Ci0gICAgc190bHNfbWFwXy5rZXlfZGVzdHJ1Y3RvcnNba2V5XSA9IE5VTEw7Ci0gIH0KLQotICBib29sIElzSW5Vc2UocHRocmVhZF9rZXlfdCBrZXkpIHsKLSAgICByZXR1cm4gKFRMU01BUF9XT1JEKHNfdGxzX21hcF8sIGtleSkgJiBUTFNNQVBfTUFTSyhrZXkpKSAhPSAwOwotICB9Ci0KLSAgdm9pZCBTZXRJblVzZShwdGhyZWFkX2tleV90IGtleSwgdm9pZCAoKmtleV9kZXN0cnVjdG9yKSh2b2lkKikpIHsKLSAgICBUTFNNQVBfV09SRChzX3Rsc19tYXBfLCBrZXkpIHw9IFRMU01BUF9NQVNLKGtleSk7Ci0gICAgc190bHNfbWFwXy5rZXlfZGVzdHJ1Y3RvcnNba2V5XSA9IGtleV9kZXN0cnVjdG9yOwotICB9Ci0KLSAgLy8gQ2FsbGVkIGZyb20gcHRocmVhZF9leGl0KCkgdG8gcmVtb3ZlIGFsbCBUTFMga2V5IGRhdGEKLSAgLy8gZnJvbSB0aGlzIHRocmVhZCdzIFRMUyBhcmVhLiBUaGlzIG11c3QgY2FsbCB0aGUgZGVzdHJ1Y3RvciBvZiBhbGwga2V5cwotICAvLyB0aGF0IGhhdmUgYSBub24tTlVMTCBkYXRhIHZhbHVlIGFuZCBhIG5vbi1OVUxMIGRlc3RydWN0b3IuCi0gIHZvaWQgQ2xlYW5BbGwoKSB7Ci0gICAgdm9pZCoqIHRscyA9IF9fZ2V0X3RscygpOwotCi0gICAgLy8gQmVjYXVzZSBkZXN0cnVjdG9ycyBjYW4gZG8gZnVua3kgdGhpbmdzIGxpa2UgZGVsZXRpbmcvY3JlYXRpbmcgb3RoZXIKLSAgICAvLyBrZXlzLCB3ZSBuZWVkIHRvIGltcGxlbWVudCB0aGlzIGluIGEgbG9vcC4KLSAgICBmb3IgKGludCByb3VuZHMgPSBQVEhSRUFEX0RFU1RSVUNUT1JfSVRFUkFUSU9OUzsgcm91bmRzID4gMDsgLS1yb3VuZHMpIHsKLSAgICAgIHNpemVfdCBjYWxsZWRfZGVzdHJ1Y3Rvcl9jb3VudCA9IDA7Ci0gICAgICBmb3IgKGludCBrZXkgPSAwOyBrZXkgPCBCSU9OSUNfVExTX1NMT1RTOyArK2tleSkgewotICAgICAgICBpZiAoSXNJblVzZShrZXkpKSB7Ci0gICAgICAgICAgdm9pZCogZGF0YSA9IHRsc1trZXldOwotICAgICAgICAgIHZvaWQgKCprZXlfZGVzdHJ1Y3Rvcikodm9pZCopID0gc190bHNfbWFwXy5rZXlfZGVzdHJ1Y3RvcnNba2V5XTsKLQotICAgICAgICAgIGlmIChkYXRhICE9IE5VTEwgJiYga2V5X2Rlc3RydWN0b3IgIT0gTlVMTCkgewotICAgICAgICAgICAgLy8gd2UgbmVlZCB0byBjbGVhciB0aGUga2V5IGRhdGEgbm93LCB0aGlzIHdpbGwgcHJldmVudCB0aGUKLSAgICAgICAgICAgIC8vIGRlc3RydWN0b3IgKG9yIGEgbGF0ZXIgb25lKSBmcm9tIHNlZWluZyB0aGUgb2xkIHZhbHVlIGlmCi0gICAgICAgICAgICAvLyBpdCBjYWxscyBwdGhyZWFkX2dldHNwZWNpZmljKCkgZm9yIHNvbWUgb2RkIHJlYXNvbgotCi0gICAgICAgICAgICAvLyB3ZSBkbyBub3QgZG8gdGhpcyBpZiAna2V5X2Rlc3RydWN0b3IgPT0gTlVMTCcganVzdCBpbiBjYXNlIGFub3RoZXIKLSAgICAgICAgICAgIC8vIGRlc3RydWN0b3IgZnVuY3Rpb24gbWlnaHQgYmUgcmVzcG9uc2libGUgZm9yIG1hbnVhbGx5Ci0gICAgICAgICAgICAvLyByZWxlYXNpbmcgdGhlIGNvcnJlc3BvbmRpbmcgZGF0YS4KLSAgICAgICAgICAgIHRsc1trZXldID0gTlVMTDsKLQotICAgICAgICAgICAgLy8gYmVjYXVzZSB0aGUgZGVzdHJ1Y3RvciBpcyBmcmVlIHRvIGNhbGwgcHRocmVhZF9rZXlfY3JlYXRlCi0gICAgICAgICAgICAvLyBhbmQvb3IgcHRocmVhZF9rZXlfZGVsZXRlLCB3ZSBuZWVkIHRvIHRlbXBvcmFyaWx5IHVubG9jawotICAgICAgICAgICAgLy8gdGhlIFRMUyBtYXAKLSAgICAgICAgICAgIFVubG9jaygpOwotICAgICAgICAgICAgKCprZXlfZGVzdHJ1Y3RvcikoZGF0YSk7Ci0gICAgICAgICAgICBMb2NrKCk7Ci0gICAgICAgICAgICArK2NhbGxlZF9kZXN0cnVjdG9yX2NvdW50OwotICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgfQotCi0gICAgICAvLyBJZiB3ZSBkaWRuJ3QgY2FsbCBhbnkgZGVzdHJ1Y3RvcnMsIHRoZXJlIGlzIG5vIG5lZWQgdG8gY2hlY2sgdGhlIFRMUyBkYXRhIGFnYWluLgotICAgICAgaWYgKGNhbGxlZF9kZXN0cnVjdG9yX2NvdW50ID09IDApIHsKLSAgICAgICAgYnJlYWs7Ci0gICAgICB9Ci0gICAgfQotICB9Ci0KLSBwcml2YXRlOgotICBzdGF0aWMgdGxzX21hcF90IHNfdGxzX21hcF87Ci0gIHN0YXRpYyBwdGhyZWFkX211dGV4X3Qgc190bHNfbWFwX2xvY2tfOwotCi0gIHZvaWQgTG9jaygpIHsKLSAgICBwdGhyZWFkX211dGV4X2xvY2soJnNfdGxzX21hcF9sb2NrXyk7Ci0gIH0KLQotICB2b2lkIFVubG9jaygpIHsKLSAgICBwdGhyZWFkX211dGV4X3VubG9jaygmc190bHNfbWFwX2xvY2tfKTsKLSAgfQotfTsKLQotX19MSUJDX0hJRERFTl9fIHRsc19tYXBfdCBTY29wZWRUbHNNYXBBY2Nlc3M6OnNfdGxzX21hcF87Ci1fX0xJQkNfSElEREVOX18gcHRocmVhZF9tdXRleF90IFNjb3BlZFRsc01hcEFjY2Vzczo6c190bHNfbWFwX2xvY2tfOwotCisvLyBDYWxsZWQgZnJvbSBwdGhyZWFkX2V4aXQoKSB0byByZW1vdmUgYWxsIHB0aHJlYWQga2V5cy4gVGhpcyBtdXN0IGNhbGwgdGhlIGRlc3RydWN0b3Igb2YKKy8vIGFsbCBrZXlzIHRoYXQgaGF2ZSBhIG5vbi1OVUxMIGRhdGEgdmFsdWUgYW5kIGEgbm9uLU5VTEwgZGVzdHJ1Y3Rvci4KIF9fTElCQ19ISURERU5fXyB2b2lkIHB0aHJlYWRfa2V5X2NsZWFuX2FsbCgpIHsKLSAgU2NvcGVkVGxzTWFwQWNjZXNzIHRsc19tYXA7Ci0gIHRsc19tYXAuQ2xlYW5BbGwoKTsKKyAgLy8gQmVjYXVzZSBkZXN0cnVjdG9ycyBjYW4gZG8gZnVua3kgdGhpbmdzIGxpa2UgZGVsZXRpbmcvY3JlYXRpbmcgb3RoZXIga2V5cywKKyAgLy8gd2UgbmVlZCB0byBpbXBsZW1lbnQgdGhpcyBpbiBhIGxvb3AuCisgIHB0aHJlYWRfa2V5X2RhdGFfdCoga2V5X2RhdGEgPSBfX2dldF90aHJlYWQoKS0+a2V5X2RhdGE7CisgIGZvciAoc2l6ZV90IHJvdW5kcyA9IFBUSFJFQURfREVTVFJVQ1RPUl9JVEVSQVRJT05TOyByb3VuZHMgPiAwOyAtLXJvdW5kcykgeworICAgIHNpemVfdCBjYWxsZWRfZGVzdHJ1Y3Rvcl9jb3VudCA9IDA7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBCSU9OSUNfUFRIUkVBRF9LRVlfQ09VTlQ7ICsraSkgeworICAgICAgdWludHB0cl90IHNlcSA9IGF0b21pY19sb2FkX2V4cGxpY2l0KCZrZXlfbWFwW2ldLnNlcSwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOworICAgICAgaWYgKFNlcU9mS2V5SW5Vc2Uoc2VxKSAmJiBzZXEgPT0ga2V5X2RhdGFbaV0uc2VxICYmIGtleV9kYXRhW2ldLmRhdGEgIT0gTlVMTCkgeworICAgICAgICAvLyBPdGhlciB0aHJlYWRzIG1heSBiZSBjYWxsaW5nIHB0aHJlYWRfa2V5X2RlbGV0ZS9wdGhyZWFkX2tleV9jcmVhdGUgd2hpbGUgY3VycmVudCB0aHJlYWQKKyAgICAgICAgLy8gaXMgZXhpdGluZy4gU28gd2UgbmVlZCB0byBlbnN1cmUgd2UgcmVhZCB0aGUgcmlnaHQga2V5X2Rlc3RydWN0b3IuCisgICAgICAgIC8vIFdlIGNhbiByZWx5IG9uIGEgdXNlci1lc3RhYmxpc2hlZCBoYXBwZW5zLWJlZm9yZSByZWxhdGlvbnNoaXAgYmV0d2VlbiB0aGUgY3JlYXRpb24gYW5kCisgICAgICAgIC8vIHVzZSBvZiBwdGhyZWFkIGtleSB0byBlbnN1cmUgdGhhdCB3ZSdyZSBub3QgZ2V0dGluZyBhbiBlYXJsaWVyIGtleV9kZXN0cnVjdG9yLgorICAgICAgICAvLyBUbyBhdm9pZCB1c2luZyB0aGUga2V5X2Rlc3RydWN0b3Igb2YgdGhlIG5ld2x5IGNyZWF0ZWQga2V5IGluIHRoZSBzYW1lIHNsb3QsIHdlIG5lZWQgdG8KKyAgICAgICAgLy8gcmVjaGVjayB0aGUgc2VxdWVuY2UgbnVtYmVyIGFmdGVyIHJlYWRpbmcga2V5X2Rlc3RydWN0b3IuIEFzIGEgcmVzdWx0LCB3ZSBlaXRoZXIgc2VlIHRoZQorICAgICAgICAvLyByaWdodCBrZXlfZGVzdHJ1Y3Rvciwgb3IgdGhlIHNlcXVlbmNlIG51bWJlciBtdXN0IGhhdmUgY2hhbmdlZCB3aGVuIHdlIHJlcmVhZCBpdCBiZWxvdy4KKyAgICAgICAga2V5X2Rlc3RydWN0b3JfdCBrZXlfZGVzdHJ1Y3RvciA9IHJlaW50ZXJwcmV0X2Nhc3Q8a2V5X2Rlc3RydWN0b3JfdD4oCisgICAgICAgICAgYXRvbWljX2xvYWRfZXhwbGljaXQoJmtleV9tYXBbaV0ua2V5X2Rlc3RydWN0b3IsIG1lbW9yeV9vcmRlcl9yZWxheGVkKSk7CisgICAgICAgIGlmIChrZXlfZGVzdHJ1Y3RvciA9PSBOVUxMKSB7CisgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0KKyAgICAgICAgYXRvbWljX3RocmVhZF9mZW5jZShtZW1vcnlfb3JkZXJfYWNxdWlyZSk7CisgICAgICAgIGlmIChhdG9taWNfbG9hZF9leHBsaWNpdCgma2V5X21hcFtpXS5zZXEsIG1lbW9yeV9vcmRlcl9yZWxheGVkKSAhPSBzZXEpIHsKKyAgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0KKworICAgICAgICAvLyBXZSBuZWVkIHRvIGNsZWFyIHRoZSBrZXkgZGF0YSBub3csIHRoaXMgd2lsbCBwcmV2ZW50IHRoZSBkZXN0cnVjdG9yIChvciBhIGxhdGVyIG9uZSkKKyAgICAgICAgLy8gZnJvbSBzZWVpbmcgdGhlIG9sZCB2YWx1ZSBpZiBpdCBjYWxscyBwdGhyZWFkX2dldHNwZWNpZmljKCkuCisgICAgICAgIC8vIFdlIGRvbid0IGRvIHRoaXMgaWYgJ2tleV9kZXN0cnVjdG9yID09IE5VTEwnIGp1c3QgaW4gY2FzZSBhbm90aGVyIGRlc3RydWN0b3IKKyAgICAgICAgLy8gZnVuY3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIG1hbnVhbGx5IHJlbGVhc2luZyB0aGUgY29ycmVzcG9uZGluZyBkYXRhLgorICAgICAgICB2b2lkKiBkYXRhID0ga2V5X2RhdGFbaV0uZGF0YTsKKyAgICAgICAga2V5X2RhdGFbaV0uZGF0YSA9IE5VTEw7CisKKyAgICAgICAgKCprZXlfZGVzdHJ1Y3RvcikoZGF0YSk7CisgICAgICAgICsrY2FsbGVkX2Rlc3RydWN0b3JfY291bnQ7CisgICAgICB9CisgICAgfQorCisgICAgLy8gSWYgd2UgZGlkbid0IGNhbGwgYW55IGRlc3RydWN0b3JzLCB0aGVyZSBpcyBubyBuZWVkIHRvIGNoZWNrIHRoZSBwdGhyZWFkIGtleXMgYWdhaW4uCisgICAgaWYgKGNhbGxlZF9kZXN0cnVjdG9yX2NvdW50ID09IDApIHsKKyAgICAgIGJyZWFrOworICAgIH0KKyAgfQogfQogCiBpbnQgcHRocmVhZF9rZXlfY3JlYXRlKHB0aHJlYWRfa2V5X3QqIGtleSwgdm9pZCAoKmtleV9kZXN0cnVjdG9yKSh2b2lkKikpIHsKLSAgU2NvcGVkVGxzTWFwQWNjZXNzIHRsc19tYXA7Ci0gIHJldHVybiB0bHNfbWFwLkNyZWF0ZUtleShrZXksIGtleV9kZXN0cnVjdG9yKTsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBCSU9OSUNfUFRIUkVBRF9LRVlfQ09VTlQ7ICsraSkgeworICAgIHVpbnRwdHJfdCBzZXEgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgma2V5X21hcFtpXS5zZXEsIG1lbW9yeV9vcmRlcl9yZWxheGVkKTsKKyAgICB3aGlsZSAoIVNlcU9mS2V5SW5Vc2Uoc2VxKSkgeworICAgICAgaWYgKGF0b21pY19jb21wYXJlX2V4Y2hhbmdlX3dlYWsoJmtleV9tYXBbaV0uc2VxLCAmc2VxLCBzZXEgKyBTRVFfSU5DUkVNRU5UX1NURVApKSB7CisgICAgICAgIGF0b21pY19zdG9yZSgma2V5X21hcFtpXS5rZXlfZGVzdHJ1Y3RvciwgcmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KGtleV9kZXN0cnVjdG9yKSk7CisgICAgICAgICprZXkgPSBpIHwgS0VZX1ZBTElEX0ZMQUc7CisgICAgICAgIHJldHVybiAwOworICAgICAgfQorICAgIH0KKyAgfQorICByZXR1cm4gRUFHQUlOOwogfQogCiAvLyBEZWxldGVzIGEgcHRocmVhZF9rZXlfdC4gbm90ZSB0aGF0IHRoZSBzdGFuZGFyZCBtYW5kYXRlcyB0aGF0IHRoaXMgZG9lcwpAQCAtMjAzLDUyICsxMzQsNDkgQEAKIC8vIHJlc3BvbnNpYmlsaXR5IG9mIHRoZSBjYWxsZXIgdG8gcHJvcGVybHkgZGlzcG9zZSBvZiB0aGUgY29ycmVzcG9uZGluZyBkYXRhCiAvLyBhbmQgcmVzb3VyY2VzLCB1c2luZyBhbnkgbWVhbnMgaXQgZmluZHMgc3VpdGFibGUuCiBpbnQgcHRocmVhZF9rZXlfZGVsZXRlKHB0aHJlYWRfa2V5X3Qga2V5KSB7Ci0gIFNjb3BlZFRsc01hcEFjY2VzcyB0bHNfbWFwOwotCi0gIGlmICghSXNWYWxpZFVzZXJLZXkoa2V5KSB8fCAhdGxzX21hcC5Jc0luVXNlKGtleSkpIHsKKyAgaWYgKF9fcHJlZGljdF9mYWxzZSghS2V5SW5WYWxpZFJhbmdlKGtleSkpKSB7CiAgICAgcmV0dXJuIEVJTlZBTDsKICAgfQotCi0gIC8vIENsZWFyIHZhbHVlIGluIGFsbCB0aHJlYWRzLgotICBwdGhyZWFkX211dGV4X2xvY2soJmdfdGhyZWFkX2xpc3RfbG9jayk7Ci0gIGZvciAocHRocmVhZF9pbnRlcm5hbF90KiAgdCA9IGdfdGhyZWFkX2xpc3Q7IHQgIT0gTlVMTDsgdCA9IHQtPm5leHQpIHsKLSAgICAvLyBTa2lwIHpvbWJpZSB0aHJlYWRzLiBUaGV5IGRvbid0IGhhdmUgYSB2YWxpZCBUTFMgYXJlYSBhbnkgbW9yZS4KLSAgICAvLyBTaW1pbGFybHksIGl0IGlzIHBvc3NpYmxlIHRvIGhhdmUgdC0+dGxzID09IE5VTEwgZm9yIHRocmVhZHMgdGhhdAotICAgIC8vIHdlcmUganVzdCByZWNlbnRseSBjcmVhdGVkIHRocm91Z2ggcHRocmVhZF9jcmVhdGUoKSBidXQgd2hvc2UKLSAgICAvLyBzdGFydHVwIHRyYW1wb2xpbmUgKF9fcHRocmVhZF9zdGFydCkgaGFzbid0IGJlZW4gcnVuIHlldCBieSB0aGUKLSAgICAvLyBzY2hlZHVsZXIuIHQtPnRscyB3aWxsIGFsc28gYmUgTlVMTCBhZnRlciBhIHRocmVhZCdzIHN0YWNrIGhhcyBiZWVuCi0gICAgLy8gdW5tYXBwZWQgYnV0IGJlZm9yZSB0aGUgb25nb2luZyBwdGhyZWFkX2pvaW4oKSBpcyBmaW5pc2hlZC4KLSAgICBpZiAodC0+dGlkID09IDAgfHwgdC0+dGxzID09IE5VTEwpIHsKLSAgICAgIGNvbnRpbnVlOworICBrZXkgJj0gfktFWV9WQUxJRF9GTEFHOworICAvLyBJbmNyZWFzZSBzZXEgdG8gaW52YWxpZGF0ZSB2YWx1ZXMgaW4gYWxsIHRocmVhZHMuCisgIHVpbnRwdHJfdCBzZXEgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgma2V5X21hcFtrZXldLnNlcSwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOworICBpZiAoU2VxT2ZLZXlJblVzZShzZXEpKSB7CisgICAgaWYgKGF0b21pY19jb21wYXJlX2V4Y2hhbmdlX3N0cm9uZygma2V5X21hcFtrZXldLnNlcSwgJnNlcSwgc2VxICsgU0VRX0lOQ1JFTUVOVF9TVEVQKSkgeworICAgICAgcmV0dXJuIDA7CiAgICAgfQotCi0gICAgdC0+dGxzW2tleV0gPSBOVUxMOwogICB9Ci0gIHRsc19tYXAuRGVsZXRlS2V5KGtleSk7Ci0KLSAgcHRocmVhZF9tdXRleF91bmxvY2soJmdfdGhyZWFkX2xpc3RfbG9jayk7Ci0gIHJldHVybiAwOworICByZXR1cm4gRUlOVkFMOwogfQogCiB2b2lkKiBwdGhyZWFkX2dldHNwZWNpZmljKHB0aHJlYWRfa2V5X3Qga2V5KSB7Ci0gIGlmICghSXNWYWxpZFVzZXJLZXkoa2V5KSkgeworICBpZiAoX19wcmVkaWN0X2ZhbHNlKCFLZXlJblZhbGlkUmFuZ2Uoa2V5KSkpIHsKICAgICByZXR1cm4gTlVMTDsKICAgfQotCi0gIC8vIEZvciBwZXJmb3JtYW5jZSByZWFzb25zLCB3ZSBkbyBub3QgbG9jay91bmxvY2sgdGhlIGdsb2JhbCBUTFMgbWFwCi0gIC8vIHRvIGNoZWNrIHRoYXQgdGhlIGtleSBpcyBwcm9wZXJseSBhbGxvY2F0ZWQuIElmIHRoZSBrZXkgd2FzIG5vdAotICAvLyBhbGxvY2F0ZWQsIHRoZSB2YWx1ZSByZWFkIGZyb20gdGhlIFRMUyBzaG91bGQgYWx3YXlzIGJlIE5VTEwKLSAgLy8gZHVlIHRvIHB0aHJlYWRfa2V5X2RlbGV0ZSgpIGNsZWFyaW5nIHRoZSB2YWx1ZXMgZm9yIGFsbCB0aHJlYWRzLgotICByZXR1cm4gX19nZXRfdGxzKClba2V5XTsKKyAga2V5ICY9IH5LRVlfVkFMSURfRkxBRzsKKyAgdWludHB0cl90IHNlcSA9IGF0b21pY19sb2FkX2V4cGxpY2l0KCZrZXlfbWFwW2tleV0uc2VxLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgIHB0aHJlYWRfa2V5X2RhdGFfdCogZGF0YSA9ICYoX19nZXRfdGhyZWFkKCktPmtleV9kYXRhW2tleV0pOworICAvLyBJdCBpcyB1c2VyJ3MgcmVzcG9uc2liaWxpdHkgdG8gc3luY2hvcm5pemUgYmV0d2VlbiB0aGUgY3JlYXRpb24gYW5kIHVzZSBvZiBwdGhyZWFkIGtleXMsCisgIC8vIHNvIHdlIHVzZSBtZW1vcnlfb3JkZXJfcmVsYXhlZCB3aGVuIGNoZWNraW5nIHRoZSBzZXF1ZW5jZSBudW1iZXIuCisgIGlmIChfX3ByZWRpY3RfdHJ1ZShTZXFPZktleUluVXNlKHNlcSkgJiYgZGF0YS0+c2VxID09IHNlcSkpIHsKKyAgICByZXR1cm4gZGF0YS0+ZGF0YTsKKyAgfQorICAvLyBXZSBhcnJpdmUgaGVyZSB3aGVuIGN1cnJlbnQgdGhyZWFkIGhvbGRzIHRoZSBzZXEgb2YgYW4gZGVsZXRlZCBwdGhyZWFkIGtleS4gU28gdGhlCisgIC8vIGRhdGEgaXMgZm9yIHRoZSBkZWxldGVkIHB0aHJlYWQga2V5LCBhbmQgc2hvdWxkIGJlIGNsZWFyZWQuCisgIGRhdGEtPmRhdGEgPSBOVUxMOworICByZXR1cm4gTlVMTDsKIH0KIAogaW50IHB0aHJlYWRfc2V0c3BlY2lmaWMocHRocmVhZF9rZXlfdCBrZXksIGNvbnN0IHZvaWQqIHB0cikgewotICBTY29wZWRUbHNNYXBBY2Nlc3MgdGxzX21hcDsKLQotICBpZiAoIUlzVmFsaWRVc2VyS2V5KGtleSkgfHwgIXRsc19tYXAuSXNJblVzZShrZXkpKSB7CisgIGlmIChfX3ByZWRpY3RfZmFsc2UoIUtleUluVmFsaWRSYW5nZShrZXkpKSkgewogICAgIHJldHVybiBFSU5WQUw7CiAgIH0KLQotICBfX2dldF90bHMoKVtrZXldID0gY29uc3RfY2FzdDx2b2lkKj4ocHRyKTsKLSAgcmV0dXJuIDA7CisgIGtleSAmPSB+S0VZX1ZBTElEX0ZMQUc7CisgIHVpbnRwdHJfdCBzZXEgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgma2V5X21hcFtrZXldLnNlcSwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOworICBpZiAoX19wcmVkaWN0X3RydWUoU2VxT2ZLZXlJblVzZShzZXEpKSkgeworICAgIHB0aHJlYWRfa2V5X2RhdGFfdCogZGF0YSA9ICYoX19nZXRfdGhyZWFkKCktPmtleV9kYXRhW2tleV0pOworICAgIGRhdGEtPnNlcSA9IHNlcTsKKyAgICBkYXRhLT5kYXRhID0gY29uc3RfY2FzdDx2b2lkKj4ocHRyKTsKKyAgICByZXR1cm4gMDsKKyAgfQorICByZXR1cm4gRUlOVkFMOwogfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvcHRocmVhZF9raWxsLmNwcCBiL2xpYmMvYmlvbmljL3B0aHJlYWRfa2lsbC5jcHAKaW5kZXggMTYzMzE3ZS4uOTM1MTNmYSAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvcHRocmVhZF9raWxsLmNwcAorKysgYi9saWJjL2Jpb25pYy9wdGhyZWFkX2tpbGwuY3BwCkBAIC0zMCwyNiArMzAsMTcgQEAKICNpbmNsdWRlIDx1bmlzdGQuaD4KIAogI2luY2x1ZGUgInByaXZhdGUvRXJybm9SZXN0b3Jlci5oIgotI2luY2x1ZGUgInB0aHJlYWRfYWNjZXNzb3IuaCIKKyNpbmNsdWRlICJwdGhyZWFkX2ludGVybmFsLmgiCiAKIGV4dGVybiAiQyIgaW50IHRna2lsbChpbnQgdGdpZCwgaW50IHRpZCwgaW50IHNpZyk7CiAKIGludCBwdGhyZWFkX2tpbGwocHRocmVhZF90IHQsIGludCBzaWcpIHsKICAgRXJybm9SZXN0b3JlciBlcnJub19yZXN0b3JlcjsKIAotICBwdGhyZWFkX2FjY2Vzc29yIHRocmVhZCh0KTsKLSAgaWYgKHRocmVhZC5nZXQoKSA9PSBOVUxMKSB7CisgIHB0aHJlYWRfaW50ZXJuYWxfdCogdGhyZWFkID0gX19wdGhyZWFkX2ludGVybmFsX2ZpbmQodCk7CisgIGlmICh0aHJlYWQgPT0gTlVMTCkgewogICAgIHJldHVybiBFU1JDSDsKICAgfQogCi0gIC8vIFRoZXJlJ3MgYSByYWNlIGhlcmUsIGJ1dCBpdCdzIG9uZSB3ZSBzaGFyZSB3aXRoIGFsbCBvdGhlciBDIGxpYnJhcmllcy4KLSAgcGlkX3QgdGlkID0gdGhyZWFkLT50aWQ7Ci0gIHRocmVhZC5VbmxvY2soKTsKLQotICBpbnQgcmMgPSB0Z2tpbGwoZ2V0cGlkKCksIHRpZCwgc2lnKTsKLSAgaWYgKHJjID09IC0xKSB7Ci0gICAgcmV0dXJuIGVycm5vOwotICB9Ci0KLSAgcmV0dXJuIDA7CisgIHJldHVybiAodGdraWxsKGdldHBpZCgpLCB0aHJlYWQtPnRpZCwgc2lnKSA9PSAtMSkgPyBlcnJubyA6IDA7CiB9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9wdGhyZWFkX211dGV4LmNwcCBiL2xpYmMvYmlvbmljL3B0aHJlYWRfbXV0ZXguY3BwCmluZGV4IGFlMjU1N2YuLjRmZWM3NTMgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3B0aHJlYWRfbXV0ZXguY3BwCisrKyBiL2xpYmMvYmlvbmljL3B0aHJlYWRfbXV0ZXguY3BwCkBAIC0zMCwxNjkgKzMwLDIwIEBACiAKICNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPHN0ZGF0b21pYy5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgogI2luY2x1ZGUgPHN5cy9tbWFuLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKICNpbmNsdWRlICJwdGhyZWFkX2ludGVybmFsLmgiCiAKLSNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19hdG9taWNfaW5saW5lLmgiCisjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfY29uc3RhbnRzLmgiCiAjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfZnV0ZXguaCIKKyNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19zeXN0cmFjZS5oIgorI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX3RpbWVfY29udmVyc2lvbnMuaCIKICNpbmNsdWRlICJwcml2YXRlL2Jpb25pY190bHMuaCIKIAotZXh0ZXJuIHZvaWQgcHRocmVhZF9kZWJ1Z19tdXRleF9sb2NrX2NoZWNrKHB0aHJlYWRfbXV0ZXhfdCAqbXV0ZXgpOwotZXh0ZXJuIHZvaWQgcHRocmVhZF9kZWJ1Z19tdXRleF91bmxvY2tfY2hlY2socHRocmVhZF9tdXRleF90ICptdXRleCk7Ci0KLS8qIGEgbXV0ZXggaXMgaW1wbGVtZW50ZWQgYXMgYSAzMi1iaXQgaW50ZWdlciBob2xkaW5nIHRoZSBmb2xsb3dpbmcgZmllbGRzCi0gKgotICogYml0czogICAgIG5hbWUgICAgIGRlc2NyaXB0aW9uCi0gKiAzMS0xNiAgICAgdGlkICAgICAgb3duZXIgdGhyZWFkJ3MgdGlkIChyZWN1cnNpdmUgYW5kIGVycm9yY2hlY2sgb25seSkKLSAqIDE1LTE0ICAgICB0eXBlICAgICBtdXRleCB0eXBlCi0gKiAxMyAgICAgICAgc2hhcmVkICAgcHJvY2Vzcy1zaGFyZWQgZmxhZwotICogMTItMiAgICAgIGNvdW50ZXIgIGNvdW50ZXIgb2YgcmVjdXJzaXZlIG11dGV4ZXMKLSAqIDEtMCAgICAgICBzdGF0ZSAgICBsb2NrIHN0YXRlICgwLCAxIG9yIDIpCi0gKi8KLQotLyogQ29udmVuaWVuY2UgbWFjcm8sIGNyZWF0ZXMgYSBtYXNrIG9mICdiaXRzJyBiaXRzIHRoYXQgc3RhcnRzIGZyb20KLSAqIHRoZSAnc2hpZnQnLXRoIGxlYXN0IHNpZ25pZmljYW50IGJpdCBpbiBhIDMyLWJpdCB3b3JkLgotICoKLSAqIEV4YW1wbGVzOiBGSUVMRF9NQVNLKDAsNCkgIC0+IDB4ZgotICogICAgICAgICAgIEZJRUxEX01BU0soMTYsOSkgLT4gMHgxZmYwMDAwCi0gKi8KLSNkZWZpbmUgIEZJRUxEX01BU0soc2hpZnQsYml0cykgICAgICAgICAgICgoKDEgPDwgKGJpdHMpKS0xKSA8PCAoc2hpZnQpKQotCi0vKiBUaGlzIG9uZSBpcyB1c2VkIHRvIGNyZWF0ZSBhIGJpdCBwYXR0ZXJuIGZyb20gYSBnaXZlbiBmaWVsZCB2YWx1ZSAqLwotI2RlZmluZSAgRklFTERfVE9fQklUUyh2YWwsc2hpZnQsYml0cykgICAgKCgodmFsKSAmICgoMSA8PCAoYml0cykpLTEpKSA8PCAoc2hpZnQpKQotCi0vKiBBbmQgdGhpcyBvbmUgZG9lcyB0aGUgb3Bwb3NpdGUsIGkuZS4gZXh0cmFjdCBhIGZpZWxkJ3MgdmFsdWUgZnJvbSBhIGJpdCBwYXR0ZXJuICovCi0jZGVmaW5lICBGSUVMRF9GUk9NX0JJVFModmFsLHNoaWZ0LGJpdHMpICAoKCh2YWwpID4+IChzaGlmdCkpICYgKCgxIDw8IChiaXRzKSktMSkpCi0KLS8qIE11dGV4IHN0YXRlOgotICoKLSAqIDAgZm9yIHVubG9ja2VkCi0gKiAxIGZvciBsb2NrZWQsIG5vIHdhaXRlcnMKLSAqIDIgZm9yIGxvY2tlZCwgbWF5YmUgd2FpdGVycwotICovCi0jZGVmaW5lICBNVVRFWF9TVEFURV9TSElGVCAgICAgIDAKLSNkZWZpbmUgIE1VVEVYX1NUQVRFX0xFTiAgICAgICAgMgotCi0jZGVmaW5lICBNVVRFWF9TVEFURV9NQVNLICAgICAgICAgICBGSUVMRF9NQVNLKE1VVEVYX1NUQVRFX1NISUZULCBNVVRFWF9TVEFURV9MRU4pCi0jZGVmaW5lICBNVVRFWF9TVEFURV9GUk9NX0JJVFModikgICBGSUVMRF9GUk9NX0JJVFModiwgTVVURVhfU1RBVEVfU0hJRlQsIE1VVEVYX1NUQVRFX0xFTikKLSNkZWZpbmUgIE1VVEVYX1NUQVRFX1RPX0JJVFModikgICAgIEZJRUxEX1RPX0JJVFModiwgTVVURVhfU1RBVEVfU0hJRlQsIE1VVEVYX1NUQVRFX0xFTikKLQotI2RlZmluZSAgTVVURVhfU1RBVEVfVU5MT0NLRUQgICAgICAgICAgICAwICAgLyogbXVzdCBiZSAwIHRvIG1hdGNoIF9fUFRIUkVBRF9NVVRFWF9JTklUX1ZBTFVFICovCi0jZGVmaW5lICBNVVRFWF9TVEFURV9MT0NLRURfVU5DT05URU5ERUQgIDEgICAvKiBtdXN0IGJlIDEgZHVlIHRvIGF0b21pYyBkZWMgaW4gdW5sb2NrIG9wZXJhdGlvbiAqLwotI2RlZmluZSAgTVVURVhfU1RBVEVfTE9DS0VEX0NPTlRFTkRFRCAgICAyICAgLyogbXVzdCBiZSAxICsgTE9DS0VEX1VOQ09OVEVOREVEIGR1ZSB0byBhdG9taWMgZGVjICovCi0KLSNkZWZpbmUgIE1VVEVYX1NUQVRFX0ZST01fQklUUyh2KSAgICBGSUVMRF9GUk9NX0JJVFModiwgTVVURVhfU1RBVEVfU0hJRlQsIE1VVEVYX1NUQVRFX0xFTikKLSNkZWZpbmUgIE1VVEVYX1NUQVRFX1RPX0JJVFModikgICAgICBGSUVMRF9UT19CSVRTKHYsIE1VVEVYX1NUQVRFX1NISUZULCBNVVRFWF9TVEFURV9MRU4pCi0KLSNkZWZpbmUgIE1VVEVYX1NUQVRFX0JJVFNfVU5MT0NLRUQgICAgICAgICAgICBNVVRFWF9TVEFURV9UT19CSVRTKE1VVEVYX1NUQVRFX1VOTE9DS0VEKQotI2RlZmluZSAgTVVURVhfU1RBVEVfQklUU19MT0NLRURfVU5DT05URU5ERUQgIE1VVEVYX1NUQVRFX1RPX0JJVFMoTVVURVhfU1RBVEVfTE9DS0VEX1VOQ09OVEVOREVEKQotI2RlZmluZSAgTVVURVhfU1RBVEVfQklUU19MT0NLRURfQ09OVEVOREVEICAgIE1VVEVYX1NUQVRFX1RPX0JJVFMoTVVURVhfU1RBVEVfTE9DS0VEX0NPTlRFTkRFRCkKLQotLyogcmV0dXJuIHRydWUgaWZmIHRoZSBtdXRleCBpZiBsb2NrZWQgd2l0aCBubyB3YWl0ZXJzICovCi0jZGVmaW5lICBNVVRFWF9TVEFURV9CSVRTX0lTX0xPQ0tFRF9VTkNPTlRFTkRFRCh2KSAgKCgodikgJiBNVVRFWF9TVEFURV9NQVNLKSA9PSBNVVRFWF9TVEFURV9CSVRTX0xPQ0tFRF9VTkNPTlRFTkRFRCkKLQotLyogcmV0dXJuIHRydWUgaWZmIHRoZSBtdXRleCBpZiBsb2NrZWQgd2l0aCBtYXliZSB3YWl0ZXJzICovCi0jZGVmaW5lICBNVVRFWF9TVEFURV9CSVRTX0lTX0xPQ0tFRF9DT05URU5ERUQodikgICAoKCh2KSAmIE1VVEVYX1NUQVRFX01BU0spID09IE1VVEVYX1NUQVRFX0JJVFNfTE9DS0VEX0NPTlRFTkRFRCkKLQotLyogdXNlZCB0byBmbGlwIGZyb20gTE9DS0VEX1VOQ09OVEVOREVEIHRvIExPQ0tFRF9DT05URU5ERUQgKi8KLSNkZWZpbmUgIE1VVEVYX1NUQVRFX0JJVFNfRkxJUF9DT05URU5USU9OKHYpICAgICAgKCh2KSBeIChNVVRFWF9TVEFURV9CSVRTX0xPQ0tFRF9DT05URU5ERUQgXiBNVVRFWF9TVEFURV9CSVRTX0xPQ0tFRF9VTkNPTlRFTkRFRCkpCi0KLS8qIE11dGV4IGNvdW50ZXI6Ci0gKgotICogV2UgbmVlZCB0byBjaGVjayBmb3Igb3ZlcmZsb3cgYmVmb3JlIGluY3JlbWVudGluZywgYW5kIHdlIGFsc28gbmVlZCB0bwotICogZGV0ZWN0IHdoZW4gdGhlIGNvdW50ZXIgaXMgMAotICovCi0jZGVmaW5lICBNVVRFWF9DT1VOVEVSX1NISUZUICAgICAgICAgMgotI2RlZmluZSAgTVVURVhfQ09VTlRFUl9MRU4gICAgICAgICAgIDExCi0jZGVmaW5lICBNVVRFWF9DT1VOVEVSX01BU0sgICAgICAgICAgRklFTERfTUFTSyhNVVRFWF9DT1VOVEVSX1NISUZULCBNVVRFWF9DT1VOVEVSX0xFTikKLQotI2RlZmluZSAgTVVURVhfQ09VTlRFUl9CSVRTX1dJTExfT1ZFUkZMT1codikgICAgKCgodikgJiBNVVRFWF9DT1VOVEVSX01BU0spID09IE1VVEVYX0NPVU5URVJfTUFTSykKLSNkZWZpbmUgIE1VVEVYX0NPVU5URVJfQklUU19JU19aRVJPKHYpICAgICAgICAgICgoKHYpICYgTVVURVhfQ09VTlRFUl9NQVNLKSA9PSAwKQotCi0vKiBVc2VkIHRvIGluY3JlbWVudCB0aGUgY291bnRlciBkaXJlY3RseSBhZnRlciBvdmVyZmxvdyBoYXMgYmVlbiBjaGVja2VkICovCi0jZGVmaW5lICBNVVRFWF9DT1VOVEVSX0JJVFNfT05FICAgICAgRklFTERfVE9fQklUUygxLE1VVEVYX0NPVU5URVJfU0hJRlQsTVVURVhfQ09VTlRFUl9MRU4pCi0KLS8qIFJldHVybnMgdHJ1ZSBpZmYgdGhlIGNvdW50ZXIgaXMgMCAqLwotI2RlZmluZSAgTVVURVhfQ09VTlRFUl9CSVRTX0FSRV9aRVJPKHYpICAoKCh2KSAmIE1VVEVYX0NPVU5URVJfTUFTSykgPT0gMCkKLQotLyogTXV0ZXggc2hhcmVkIGJpdCBmbGFnCi0gKgotICogVGhpcyBmbGFnIGlzIHNldCB0byBpbmRpY2F0ZSB0aGF0IHRoZSBtdXRleCBpcyBzaGFyZWQgYW1vbmcgcHJvY2Vzc2VzLgotICogVGhpcyBjaGFuZ2VzIHRoZSBmdXRleCBvcGNvZGUgd2UgdXNlIGZvciBmdXRleCB3YWl0L3dha2Ugb3BlcmF0aW9ucwotICogKG5vbi1zaGFyZWQgb3BlcmF0aW9ucyBhcmUgbXVjaCBmYXN0ZXIpLgotICovCi0jZGVmaW5lICBNVVRFWF9TSEFSRURfU0hJRlQgICAgMTMKLSNkZWZpbmUgIE1VVEVYX1NIQVJFRF9NQVNLICAgICBGSUVMRF9NQVNLKE1VVEVYX1NIQVJFRF9TSElGVCwxKQotCi0vKiBNdXRleCB0eXBlOgotICoKLSAqIFdlIHN1cHBvcnQgbm9ybWFsLCByZWN1cnNpdmUgYW5kIGVycm9yY2hlY2sgbXV0ZXhlcy4KLSAqCi0gKiBUaGUgY29uc3RhbnRzIGRlZmluZWQgaGVyZSAqY2Fubm90KiBiZSBjaGFuZ2VkIGJlY2F1c2UgdGhleSBtdXN0IG1hdGNoCi0gKiB0aGUgQyBsaWJyYXJ5IEFCSSB3aGljaCBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgaW5pdGlhbGl6YXRpb24gdmFsdWVzIGluCi0gKiA8cHRocmVhZC5oPjoKLSAqCi0gKiAgIF9fUFRIUkVBRF9NVVRFWF9JTklUX1ZBTFVFCi0gKiAgIF9fUFRIUkVBRF9SRUNVUlNJVkVfTVVURVhfVkFMVUUKLSAqICAgX19QVEhSRUFEX0VSUk9SQ0hFQ0tfTVVURVhfSU5JVF9WQUxVRQotICovCi0jZGVmaW5lICBNVVRFWF9UWVBFX1NISUZUICAgICAgMTQKLSNkZWZpbmUgIE1VVEVYX1RZUEVfTEVOICAgICAgICAyCi0jZGVmaW5lICBNVVRFWF9UWVBFX01BU0sgICAgICAgRklFTERfTUFTSyhNVVRFWF9UWVBFX1NISUZULE1VVEVYX1RZUEVfTEVOKQotCi0jZGVmaW5lICBNVVRFWF9UWVBFX05PUk1BTCAgICAgICAgICAwICAvKiBNdXN0IGJlIDAgdG8gbWF0Y2ggX19QVEhSRUFEX01VVEVYX0lOSVRfVkFMVUUgKi8KLSNkZWZpbmUgIE1VVEVYX1RZUEVfUkVDVVJTSVZFICAgICAgIDEKLSNkZWZpbmUgIE1VVEVYX1RZUEVfRVJST1JDSEVDSyAgICAgIDIKLQotI2RlZmluZSAgTVVURVhfVFlQRV9UT19CSVRTKHQpICAgICAgIEZJRUxEX1RPX0JJVFModCwgTVVURVhfVFlQRV9TSElGVCwgTVVURVhfVFlQRV9MRU4pCi0KLSNkZWZpbmUgIE1VVEVYX1RZUEVfQklUU19OT1JNQUwgICAgICBNVVRFWF9UWVBFX1RPX0JJVFMoTVVURVhfVFlQRV9OT1JNQUwpCi0jZGVmaW5lICBNVVRFWF9UWVBFX0JJVFNfUkVDVVJTSVZFICAgTVVURVhfVFlQRV9UT19CSVRTKE1VVEVYX1RZUEVfUkVDVVJTSVZFKQotI2RlZmluZSAgTVVURVhfVFlQRV9CSVRTX0VSUk9SQ0hFQ0sgIE1VVEVYX1RZUEVfVE9fQklUUyhNVVRFWF9UWVBFX0VSUk9SQ0hFQ0spCi0KLS8qIE11dGV4IG93bmVyIGZpZWxkOgotICoKLSAqIFRoaXMgaXMgb25seSB1c2VkIGZvciByZWN1cnNpdmUgYW5kIGVycm9yY2hlY2sgbXV0ZXhlcy4gSXQgaG9sZHMgdGhlCi0gKiB0aWQgb2YgdGhlIG93bmluZyB0aHJlYWQuIE5vdGUgdGhhdCB0aGlzIHdvcmtzIGJlY2F1c2UgdGhlIExpbnV4Ci0gKiBrZXJuZWwgX29ubHlfIHVzZXMgMTYtYml0IHZhbHVlcyBmb3IgdGlkcy4KLSAqCi0gKiBNb3JlIHNwZWNpZmljYWxseSwgaXQgd2lsbCB3cmFwIHRvIDEwMDAwIHdoZW4gaXQgcmVhY2hlcyBvdmVyIDMyNzY4IGZvcgotICogYXBwbGljYXRpb24gcHJvY2Vzc2VzLiBZb3UgY2FuIGNoZWNrIHRoaXMgYnkgcnVubmluZyB0aGUgZm9sbG93aW5nIGluc2lkZQotICogYW4gYWRiIHNoZWxsIHNlc3Npb246Ci0gKgotICAgIE9MRFBJRD0kJDsKLSAgICB3aGlsZSB0cnVlOyBkbwotICAgIE5FV1BJRD0kKHNoIC1jICdlY2hvICQkJykKLSAgICBpZiBbICIkTkVXUElEIiAtZ3QgMzI3NjggXTsgdGhlbgotICAgICAgICBlY2hvICJBQVJHSDogbmV3IFBJRCAkTkVXUElEIGlzIHRvbyBoaWdoISIKLSAgICAgICAgZXhpdCAxCi0gICAgZmkKLSAgICBpZiBbICIkTkVXUElEIiAtbHQgIiRPTERQSUQiIF07IHRoZW4KLSAgICAgICAgZWNobyAiKioqKioqIFdyYXBwaW5nIGZyb20gUElEICRPTERQSUQgdG8gJE5FV1BJRC4gKioqKioqKiIKLSAgICBlbHNlCi0gICAgICAgIGVjaG8gLW4gIiRORVdQSUQhIgotICAgIGZpCi0gICAgT0xEUElEPSRORVdQSUQKLSAgICBkb25lCi0KLSAqIE5vdGUgdGhhdCB5b3UgY2FuIHJ1biB0aGUgc2FtZSBleGFtcGxlIG9uIGEgZGVza3RvcCBMaW51eCBzeXN0ZW0sCi0gKiB0aGUgd3JhcHBpbmcgd2lsbCBhbHNvIGhhcHBlbiBhdCAzMjc2OCwgYnV0IHdpbGwgZ28gYmFjayB0byAzMDAgaW5zdGVhZC4KLSAqLwotI2RlZmluZSAgTVVURVhfT1dORVJfU0hJRlQgICAgIDE2Ci0jZGVmaW5lICBNVVRFWF9PV05FUl9MRU4gICAgICAgMTYKLQotI2RlZmluZSAgTVVURVhfT1dORVJfRlJPTV9CSVRTKHYpICAgIEZJRUxEX0ZST01fQklUUyh2LE1VVEVYX09XTkVSX1NISUZULE1VVEVYX09XTkVSX0xFTikKLSNkZWZpbmUgIE1VVEVYX09XTkVSX1RPX0JJVFModikgICAgICBGSUVMRF9UT19CSVRTKHYsTVVURVhfT1dORVJfU0hJRlQsTVVURVhfT1dORVJfTEVOKQotCi0vKiBDb252ZW5pZW5jZSBtYWNyb3MuCi0gKgotICogVGhlc2UgYXJlIHVzZWQgdG8gZm9ybSBvciBtb2RpZnkgdGhlIGJpdCBwYXR0ZXJuIG9mIGEgZ2l2ZW4gbXV0ZXggdmFsdWUKLSAqLwotCi0KLQogLyogYSBtdXRleCBhdHRyaWJ1dGUgaG9sZHMgdGhlIGZvbGxvd2luZyBmaWVsZHMKICAqCiAgKiBiaXRzOiAgICAgbmFtZSAgICAgICBkZXNjcmlwdGlvbgpAQCAtMjAyLDcgKzUzLDYgQEAKICNkZWZpbmUgIE1VVEVYQVRUUl9UWVBFX01BU0sgICAweDAwMGYKICNkZWZpbmUgIE1VVEVYQVRUUl9TSEFSRURfTUFTSyAweDAwMTAKIAotCiBpbnQgcHRocmVhZF9tdXRleGF0dHJfaW5pdChwdGhyZWFkX211dGV4YXR0cl90ICphdHRyKQogewogICAgICphdHRyID0gUFRIUkVBRF9NVVRFWF9ERUZBVUxUOwpAQCAtMjYzLDM4ICsxMTMsMTc3IEBACiAgICAgcmV0dXJuIDA7CiB9CiAKLWludCBwdGhyZWFkX211dGV4X2luaXQocHRocmVhZF9tdXRleF90KiBtdXRleCwgY29uc3QgcHRocmVhZF9tdXRleGF0dHJfdCogYXR0cikgeworLyogYSBtdXRleCBjb250YWlucyBhIHN0YXRlIHZhbHVlIGFuZCBhIG93bmVyX3RpZC4KKyAqIFRoZSB2YWx1ZSBpcyBpbXBsZW1lbnRlZCBhcyBhIDE2LWJpdCBpbnRlZ2VyIGhvbGRpbmcgdGhlIGZvbGxvd2luZyBmaWVsZHM6CisgKgorICogYml0czogICAgIG5hbWUgICAgIGRlc2NyaXB0aW9uCisgKiAxNS0xNCAgICAgdHlwZSAgICAgbXV0ZXggdHlwZQorICogMTMgICAgICAgIHNoYXJlZCAgIHByb2Nlc3Mtc2hhcmVkIGZsYWcKKyAqIDEyLTIgICAgICBjb3VudGVyICBjb3VudGVyIG9mIHJlY3Vyc2l2ZSBtdXRleGVzCisgKiAxLTAgICAgICAgc3RhdGUgICAgbG9jayBzdGF0ZSAoMCwgMSBvciAyKQorICoKKyAqIFRoZSBvd25lcl90aWQgaXMgdXNlZCBvbmx5IGluIHJlY3Vyc2l2ZSBhbmQgZXJyb3JjaGVjayBtdXRleCB0byBob2xkIHRoZSBtdXRleCBvd25lciB0aHJlYWQgdGlkLgorICovCisKKy8qIENvbnZlbmllbmNlIG1hY3JvLCBjcmVhdGVzIGEgbWFzayBvZiAnYml0cycgYml0cyB0aGF0IHN0YXJ0cyBmcm9tCisgKiB0aGUgJ3NoaWZ0Jy10aCBsZWFzdCBzaWduaWZpY2FudCBiaXQgaW4gYSAzMi1iaXQgd29yZC4KKyAqCisgKiBFeGFtcGxlczogRklFTERfTUFTSygwLDQpICAtPiAweGYKKyAqICAgICAgICAgICBGSUVMRF9NQVNLKDE2LDkpIC0+IDB4MWZmMDAwMAorICovCisjZGVmaW5lICBGSUVMRF9NQVNLKHNoaWZ0LGJpdHMpICAgICAgICAgICAoKCgxIDw8IChiaXRzKSktMSkgPDwgKHNoaWZ0KSkKKworLyogVGhpcyBvbmUgaXMgdXNlZCB0byBjcmVhdGUgYSBiaXQgcGF0dGVybiBmcm9tIGEgZ2l2ZW4gZmllbGQgdmFsdWUgKi8KKyNkZWZpbmUgIEZJRUxEX1RPX0JJVFModmFsLHNoaWZ0LGJpdHMpICAgICgoKHZhbCkgJiAoKDEgPDwgKGJpdHMpKS0xKSkgPDwgKHNoaWZ0KSkKKworLyogQW5kIHRoaXMgb25lIGRvZXMgdGhlIG9wcG9zaXRlLCBpLmUuIGV4dHJhY3QgYSBmaWVsZCdzIHZhbHVlIGZyb20gYSBiaXQgcGF0dGVybiAqLworI2RlZmluZSAgRklFTERfRlJPTV9CSVRTKHZhbCxzaGlmdCxiaXRzKSAgKCgodmFsKSA+PiAoc2hpZnQpKSAmICgoMSA8PCAoYml0cykpLTEpKQorCisKKy8qIENvbnZlbmllbmNlIG1hY3Jvcy4KKyAqCisgKiBUaGVzZSBhcmUgdXNlZCB0byBmb3JtIG9yIG1vZGlmeSB0aGUgYml0IHBhdHRlcm4gb2YgYSBnaXZlbiBtdXRleCB2YWx1ZQorICovCisKKy8qIE11dGV4IHN0YXRlOgorICoKKyAqIDAgZm9yIHVubG9ja2VkCisgKiAxIGZvciBsb2NrZWQsIG5vIHdhaXRlcnMKKyAqIDIgZm9yIGxvY2tlZCwgbWF5YmUgd2FpdGVycworICovCisjZGVmaW5lICBNVVRFWF9TVEFURV9TSElGVCAgICAgIDAKKyNkZWZpbmUgIE1VVEVYX1NUQVRFX0xFTiAgICAgICAgMgorCisjZGVmaW5lICBNVVRFWF9TVEFURV9NQVNLICAgICAgICAgICBGSUVMRF9NQVNLKE1VVEVYX1NUQVRFX1NISUZULCBNVVRFWF9TVEFURV9MRU4pCisjZGVmaW5lICBNVVRFWF9TVEFURV9GUk9NX0JJVFModikgICBGSUVMRF9GUk9NX0JJVFModiwgTVVURVhfU1RBVEVfU0hJRlQsIE1VVEVYX1NUQVRFX0xFTikKKyNkZWZpbmUgIE1VVEVYX1NUQVRFX1RPX0JJVFModikgICAgIEZJRUxEX1RPX0JJVFModiwgTVVURVhfU1RBVEVfU0hJRlQsIE1VVEVYX1NUQVRFX0xFTikKKworI2RlZmluZSAgTVVURVhfU1RBVEVfVU5MT0NLRUQgICAgICAgICAgICAwICAgLyogbXVzdCBiZSAwIHRvIG1hdGNoIFBUSFJFQURfTVVURVhfSU5JVElBTElaRVIgKi8KKyNkZWZpbmUgIE1VVEVYX1NUQVRFX0xPQ0tFRF9VTkNPTlRFTkRFRCAgMSAgIC8qIG11c3QgYmUgMSBkdWUgdG8gYXRvbWljIGRlYyBpbiB1bmxvY2sgb3BlcmF0aW9uICovCisjZGVmaW5lICBNVVRFWF9TVEFURV9MT0NLRURfQ09OVEVOREVEICAgIDIgICAvKiBtdXN0IGJlIDEgKyBMT0NLRURfVU5DT05URU5ERUQgZHVlIHRvIGF0b21pYyBkZWMgKi8KKworI2RlZmluZSAgTVVURVhfU1RBVEVfQklUU19VTkxPQ0tFRCAgICAgICAgICAgIE1VVEVYX1NUQVRFX1RPX0JJVFMoTVVURVhfU1RBVEVfVU5MT0NLRUQpCisjZGVmaW5lICBNVVRFWF9TVEFURV9CSVRTX0xPQ0tFRF9VTkNPTlRFTkRFRCAgTVVURVhfU1RBVEVfVE9fQklUUyhNVVRFWF9TVEFURV9MT0NLRURfVU5DT05URU5ERUQpCisjZGVmaW5lICBNVVRFWF9TVEFURV9CSVRTX0xPQ0tFRF9DT05URU5ERUQgICAgTVVURVhfU1RBVEVfVE9fQklUUyhNVVRFWF9TVEFURV9MT0NLRURfQ09OVEVOREVEKQorCisvKiByZXR1cm4gdHJ1ZSBpZmYgdGhlIG11dGV4IGlmIGxvY2tlZCB3aXRoIG5vIHdhaXRlcnMgKi8KKyNkZWZpbmUgIE1VVEVYX1NUQVRFX0JJVFNfSVNfTE9DS0VEX1VOQ09OVEVOREVEKHYpICAoKCh2KSAmIE1VVEVYX1NUQVRFX01BU0spID09IE1VVEVYX1NUQVRFX0JJVFNfTE9DS0VEX1VOQ09OVEVOREVEKQorCisvKiByZXR1cm4gdHJ1ZSBpZmYgdGhlIG11dGV4IGlmIGxvY2tlZCB3aXRoIG1heWJlIHdhaXRlcnMgKi8KKyNkZWZpbmUgIE1VVEVYX1NUQVRFX0JJVFNfSVNfTE9DS0VEX0NPTlRFTkRFRCh2KSAgICgoKHYpICYgTVVURVhfU1RBVEVfTUFTSykgPT0gTVVURVhfU1RBVEVfQklUU19MT0NLRURfQ09OVEVOREVEKQorCisvKiB1c2VkIHRvIGZsaXAgZnJvbSBMT0NLRURfVU5DT05URU5ERUQgdG8gTE9DS0VEX0NPTlRFTkRFRCAqLworI2RlZmluZSAgTVVURVhfU1RBVEVfQklUU19GTElQX0NPTlRFTlRJT04odikgICAgICAoKHYpIF4gKE1VVEVYX1NUQVRFX0JJVFNfTE9DS0VEX0NPTlRFTkRFRCBeIE1VVEVYX1NUQVRFX0JJVFNfTE9DS0VEX1VOQ09OVEVOREVEKSkKKworLyogTXV0ZXggY291bnRlcjoKKyAqCisgKiBXZSBuZWVkIHRvIGNoZWNrIGZvciBvdmVyZmxvdyBiZWZvcmUgaW5jcmVtZW50aW5nLCBhbmQgd2UgYWxzbyBuZWVkIHRvCisgKiBkZXRlY3Qgd2hlbiB0aGUgY291bnRlciBpcyAwCisgKi8KKyNkZWZpbmUgIE1VVEVYX0NPVU5URVJfU0hJRlQgICAgICAgICAyCisjZGVmaW5lICBNVVRFWF9DT1VOVEVSX0xFTiAgICAgICAgICAgMTEKKyNkZWZpbmUgIE1VVEVYX0NPVU5URVJfTUFTSyAgICAgICAgICBGSUVMRF9NQVNLKE1VVEVYX0NPVU5URVJfU0hJRlQsIE1VVEVYX0NPVU5URVJfTEVOKQorCisjZGVmaW5lICBNVVRFWF9DT1VOVEVSX0JJVFNfV0lMTF9PVkVSRkxPVyh2KSAgICAoKCh2KSAmIE1VVEVYX0NPVU5URVJfTUFTSykgPT0gTVVURVhfQ09VTlRFUl9NQVNLKQorI2RlZmluZSAgTVVURVhfQ09VTlRFUl9CSVRTX0lTX1pFUk8odikgICAgICAgICAgKCgodikgJiBNVVRFWF9DT1VOVEVSX01BU0spID09IDApCisKKy8qIFVzZWQgdG8gaW5jcmVtZW50IHRoZSBjb3VudGVyIGRpcmVjdGx5IGFmdGVyIG92ZXJmbG93IGhhcyBiZWVuIGNoZWNrZWQgKi8KKyNkZWZpbmUgIE1VVEVYX0NPVU5URVJfQklUU19PTkUgICAgICBGSUVMRF9UT19CSVRTKDEsIE1VVEVYX0NPVU5URVJfU0hJRlQsTVVURVhfQ09VTlRFUl9MRU4pCisKKy8qIE11dGV4IHNoYXJlZCBiaXQgZmxhZworICoKKyAqIFRoaXMgZmxhZyBpcyBzZXQgdG8gaW5kaWNhdGUgdGhhdCB0aGUgbXV0ZXggaXMgc2hhcmVkIGFtb25nIHByb2Nlc3Nlcy4KKyAqIFRoaXMgY2hhbmdlcyB0aGUgZnV0ZXggb3Bjb2RlIHdlIHVzZSBmb3IgZnV0ZXggd2FpdC93YWtlIG9wZXJhdGlvbnMKKyAqIChub24tc2hhcmVkIG9wZXJhdGlvbnMgYXJlIG11Y2ggZmFzdGVyKS4KKyAqLworI2RlZmluZSAgTVVURVhfU0hBUkVEX1NISUZUICAgIDEzCisjZGVmaW5lICBNVVRFWF9TSEFSRURfTUFTSyAgICAgRklFTERfTUFTSyhNVVRFWF9TSEFSRURfU0hJRlQsMSkKKworLyogTXV0ZXggdHlwZToKKyAqIFdlIHN1cHBvcnQgbm9ybWFsLCByZWN1cnNpdmUgYW5kIGVycm9yY2hlY2sgbXV0ZXhlcy4KKyAqLworI2RlZmluZSAgTVVURVhfVFlQRV9TSElGVCAgICAgIDE0CisjZGVmaW5lICBNVVRFWF9UWVBFX0xFTiAgICAgICAgMgorI2RlZmluZSAgTVVURVhfVFlQRV9NQVNLICAgICAgIEZJRUxEX01BU0soTVVURVhfVFlQRV9TSElGVCxNVVRFWF9UWVBFX0xFTikKKworI2RlZmluZSAgTVVURVhfVFlQRV9UT19CSVRTKHQpICAgICAgIEZJRUxEX1RPX0JJVFModCwgTVVURVhfVFlQRV9TSElGVCwgTVVURVhfVFlQRV9MRU4pCisKKyNkZWZpbmUgIE1VVEVYX1RZUEVfQklUU19OT1JNQUwgICAgICBNVVRFWF9UWVBFX1RPX0JJVFMoUFRIUkVBRF9NVVRFWF9OT1JNQUwpCisjZGVmaW5lICBNVVRFWF9UWVBFX0JJVFNfUkVDVVJTSVZFICAgTVVURVhfVFlQRV9UT19CSVRTKFBUSFJFQURfTVVURVhfUkVDVVJTSVZFKQorI2RlZmluZSAgTVVURVhfVFlQRV9CSVRTX0VSUk9SQ0hFQ0sgIE1VVEVYX1RZUEVfVE9fQklUUyhQVEhSRUFEX01VVEVYX0VSUk9SQ0hFQ0spCisKK3N0cnVjdCBwdGhyZWFkX211dGV4X2ludGVybmFsX3QgeworICBfQXRvbWljKHVpbnQxNl90KSBzdGF0ZTsKKyNpZiBkZWZpbmVkKF9fTFA2NF9fKQorICB1aW50MTZfdCBfX3BhZDsKKyAgYXRvbWljX2ludCBvd25lcl90aWQ7CisgIGNoYXIgX19yZXNlcnZlZFszMl07CisjZWxzZQorICBfQXRvbWljKHVpbnQxNl90KSBvd25lcl90aWQ7CisjZW5kaWYKK30gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg0KSkpOworCitzdGF0aWNfYXNzZXJ0KHNpemVvZihwdGhyZWFkX211dGV4X3QpID09IHNpemVvZihwdGhyZWFkX211dGV4X2ludGVybmFsX3QpLAorICAgICAgICAgICAgICAicHRocmVhZF9tdXRleF90IHNob3VsZCBhY3R1YWxseSBiZSBwdGhyZWFkX211dGV4X2ludGVybmFsX3QgaW4gaW1wbGVtZW50YXRpb24uIik7CisKKy8vIEZvciBiaW5hcnkgY29tcGF0aWJpbGl0eSB3aXRoIG9sZCB2ZXJzaW9uIG9mIHB0aHJlYWRfbXV0ZXhfdCwgd2UgY2FuJ3QgdXNlIG1vcmUgc3RyaWN0IGFsaWdubWVudAorLy8gdGhhbiA0LWJ5dGUgYWxpZ25tZW50Lgorc3RhdGljX2Fzc2VydChhbGlnbm9mKHB0aHJlYWRfbXV0ZXhfdCkgPT0gNCwKKyAgICAgICAgICAgICAgInB0aHJlYWRfbXV0ZXhfdCBzaG91bGQgZnVsZmlsbCB0aGUgYWxpZ25tZW50IG9mIHB0aHJlYWRfbXV0ZXhfaW50ZXJuYWxfdC4iKTsKKworc3RhdGljIGlubGluZSBwdGhyZWFkX211dGV4X2ludGVybmFsX3QqIF9fZ2V0X2ludGVybmFsX211dGV4KHB0aHJlYWRfbXV0ZXhfdCogbXV0ZXhfaW50ZXJmYWNlKSB7CisgIHJldHVybiByZWludGVycHJldF9jYXN0PHB0aHJlYWRfbXV0ZXhfaW50ZXJuYWxfdCo+KG11dGV4X2ludGVyZmFjZSk7Cit9CisKK2ludCBwdGhyZWFkX211dGV4X2luaXQocHRocmVhZF9tdXRleF90KiBtdXRleF9pbnRlcmZhY2UsIGNvbnN0IHB0aHJlYWRfbXV0ZXhhdHRyX3QqIGF0dHIpIHsKKyAgICBwdGhyZWFkX211dGV4X2ludGVybmFsX3QqIG11dGV4ID0gX19nZXRfaW50ZXJuYWxfbXV0ZXgobXV0ZXhfaW50ZXJmYWNlKTsKKworICAgIG1lbXNldChtdXRleCwgMCwgc2l6ZW9mKHB0aHJlYWRfbXV0ZXhfaW50ZXJuYWxfdCkpOworCiAgICAgaWYgKF9fcHJlZGljdF90cnVlKGF0dHIgPT0gTlVMTCkpIHsKLSAgICAgICAgbXV0ZXgtPnZhbHVlID0gTVVURVhfVFlQRV9CSVRTX05PUk1BTDsKKyAgICAgICAgYXRvbWljX2luaXQoJm11dGV4LT5zdGF0ZSwgTVVURVhfVFlQRV9CSVRTX05PUk1BTCk7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIGludCB2YWx1ZSA9IDA7CisgICAgdWludDE2X3Qgc3RhdGUgPSAwOwogICAgIGlmICgoKmF0dHIgJiBNVVRFWEFUVFJfU0hBUkVEX01BU0spICE9IDApIHsKLSAgICAgICAgdmFsdWUgfD0gTVVURVhfU0hBUkVEX01BU0s7CisgICAgICAgIHN0YXRlIHw9IE1VVEVYX1NIQVJFRF9NQVNLOwogICAgIH0KIAogICAgIHN3aXRjaCAoKmF0dHIgJiBNVVRFWEFUVFJfVFlQRV9NQVNLKSB7CiAgICAgY2FzZSBQVEhSRUFEX01VVEVYX05PUk1BTDoKLSAgICAgICAgdmFsdWUgfD0gTVVURVhfVFlQRV9CSVRTX05PUk1BTDsKLSAgICAgICAgYnJlYWs7CisgICAgICBzdGF0ZSB8PSBNVVRFWF9UWVBFX0JJVFNfTk9STUFMOworICAgICAgYnJlYWs7CiAgICAgY2FzZSBQVEhSRUFEX01VVEVYX1JFQ1VSU0lWRToKLSAgICAgICAgdmFsdWUgfD0gTVVURVhfVFlQRV9CSVRTX1JFQ1VSU0lWRTsKLSAgICAgICAgYnJlYWs7CisgICAgICBzdGF0ZSB8PSBNVVRFWF9UWVBFX0JJVFNfUkVDVVJTSVZFOworICAgICAgYnJlYWs7CiAgICAgY2FzZSBQVEhSRUFEX01VVEVYX0VSUk9SQ0hFQ0s6Ci0gICAgICAgIHZhbHVlIHw9IE1VVEVYX1RZUEVfQklUU19FUlJPUkNIRUNLOwotICAgICAgICBicmVhazsKKyAgICAgIHN0YXRlIHw9IE1VVEVYX1RZUEVfQklUU19FUlJPUkNIRUNLOworICAgICAgYnJlYWs7CiAgICAgZGVmYXVsdDoKICAgICAgICAgcmV0dXJuIEVJTlZBTDsKICAgICB9CiAKLSAgICBtdXRleC0+dmFsdWUgPSB2YWx1ZTsKKyAgICBhdG9taWNfaW5pdCgmbXV0ZXgtPnN0YXRlLCBzdGF0ZSk7CisgICAgYXRvbWljX2luaXQoJm11dGV4LT5vd25lcl90aWQsIDApOwogICAgIHJldHVybiAwOwogfQogCitzdGF0aWMgaW5saW5lIF9fYWx3YXlzX2lubGluZSBpbnQgX19wdGhyZWFkX25vcm1hbF9tdXRleF90cnlsb2NrKHB0aHJlYWRfbXV0ZXhfaW50ZXJuYWxfdCogbXV0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQxNl90IHNoYXJlZCkgeworICAgIGNvbnN0IHVpbnQxNl90IHVubG9ja2VkICAgICAgICAgICA9IHNoYXJlZCB8IE1VVEVYX1NUQVRFX0JJVFNfVU5MT0NLRUQ7CisgICAgY29uc3QgdWludDE2X3QgbG9ja2VkX3VuY29udGVuZGVkID0gc2hhcmVkIHwgTVVURVhfU1RBVEVfQklUU19MT0NLRURfVU5DT05URU5ERUQ7CisKKyAgICB1aW50MTZfdCBvbGRfc3RhdGUgPSB1bmxvY2tlZDsKKyAgICBpZiAoX19wcmVkaWN0X3RydWUoYXRvbWljX2NvbXBhcmVfZXhjaGFuZ2Vfc3Ryb25nX2V4cGxpY2l0KCZtdXRleC0+c3RhdGUsICZvbGRfc3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgbG9ja2VkX3VuY29udGVuZGVkLCBtZW1vcnlfb3JkZXJfYWNxdWlyZSwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpKSkgeworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgcmV0dXJuIEVCVVNZOworfQogCiAvKgotICogTG9jayBhIG5vbi1yZWN1cnNpdmUgbXV0ZXguCisgKiBMb2NrIGEgbXV0ZXggb2YgdHlwZSBOT1JNQUwuCiAgKgogICogQXMgbm90ZWQgYWJvdmUsIHRoZXJlIGFyZSB0aHJlZSBzdGF0ZXM6CiAgKiAgIDAgKHVubG9ja2VkLCBubyBjb250ZW50aW9uKQpAQCAtMzA1LDQ1MCArMjk0LDM0MSBAQAogICogInR5cGUiIHZhbHVlIGlzIHplcm8sIHNvIHRoZSBvbmx5IGJpdHMgdGhhdCB3aWxsIGJlIHNldCBhcmUgdGhlIG9uZXMgaW4KICAqIHRoZSBsb2NrIHN0YXRlIGZpZWxkLgogICovCi1zdGF0aWMgaW5saW5lIHZvaWQgX25vcm1hbF9sb2NrKHB0aHJlYWRfbXV0ZXhfdCogbXV0ZXgsIGludCBzaGFyZWQpIHsKLSAgICAvKiBjb252ZW5pZW5jZSBzaG9ydGN1dHMgKi8KLSAgICBjb25zdCBpbnQgdW5sb2NrZWQgICAgICAgICAgID0gc2hhcmVkIHwgTVVURVhfU1RBVEVfQklUU19VTkxPQ0tFRDsKLSAgICBjb25zdCBpbnQgbG9ja2VkX3VuY29udGVuZGVkID0gc2hhcmVkIHwgTVVURVhfU1RBVEVfQklUU19MT0NLRURfVU5DT05URU5ERUQ7Ci0gICAgLyoKLSAgICAgKiBUaGUgY29tbW9uIGNhc2UgaXMgYW4gdW5sb2NrZWQgbXV0ZXgsIHNvIHdlIGJlZ2luIGJ5IHRyeWluZyB0bwotICAgICAqIGNoYW5nZSB0aGUgbG9jaydzIHN0YXRlIGZyb20gMCAoVU5MT0NLRUQpIHRvIDEgKExPQ0tFRCkuCi0gICAgICogX19iaW9uaWNfY21weGNoZygpIHJldHVybnMgMCBpZiBpdCBtYWRlIHRoZSBzd2FwIHN1Y2Nlc3NmdWxseS4KLSAgICAgKiBJZiB0aGUgcmVzdWx0IGlzIG5vbnplcm8sIHRoaXMgbG9jayBpcyBhbHJlYWR5IGhlbGQgYnkgYW5vdGhlciB0aHJlYWQuCi0gICAgICovCi0gICAgaWYgKF9fYmlvbmljX2NtcHhjaGcodW5sb2NrZWQsIGxvY2tlZF91bmNvbnRlbmRlZCwgJm11dGV4LT52YWx1ZSkgIT0gMCkgewotICAgICAgICBjb25zdCBpbnQgbG9ja2VkX2NvbnRlbmRlZCA9IHNoYXJlZCB8IE1VVEVYX1NUQVRFX0JJVFNfTE9DS0VEX0NPTlRFTkRFRDsKLSAgICAgICAgLyoKLSAgICAgICAgICogV2Ugd2FudCB0byBnbyB0byBzbGVlcCB1bnRpbCB0aGUgbXV0ZXggaXMgYXZhaWxhYmxlLCB3aGljaAotICAgICAgICAgKiByZXF1aXJlcyBwcm9tb3RpbmcgaXQgdG8gc3RhdGUgMiAoQ09OVEVOREVEKS4gV2UgbmVlZCB0bwotICAgICAgICAgKiBzd2FwIGluIHRoZSBuZXcgc3RhdGUgdmFsdWUgYW5kIHRoZW4gd2FpdCB1bnRpbCBzb21lYm9keSB3YWtlcyB1cyB1cC4KLSAgICAgICAgICoKLSAgICAgICAgICogX19iaW9uaWNfc3dhcCgpIHJldHVybnMgdGhlIHByZXZpb3VzIHZhbHVlLiAgV2Ugc3dhcCAyIGluIGFuZAotICAgICAgICAgKiBzZWUgaWYgd2UgZ290IHplcm8gYmFjazsgaWYgc28sIHdlIGhhdmUgYWNxdWlyZWQgdGhlIGxvY2suICBJZgotICAgICAgICAgKiBub3QsIGFub3RoZXIgdGhyZWFkIHN0aWxsIGhvbGRzIHRoZSBsb2NrIGFuZCB3ZSB3YWl0IGFnYWluLgotICAgICAgICAgKgotICAgICAgICAgKiBUaGUgc2Vjb25kIGFyZ3VtZW50IHRvIHRoZSBfX2Z1dGV4X3dhaXQoKSBjYWxsIGlzIGNvbXBhcmVkCi0gICAgICAgICAqIGFnYWluc3QgdGhlIGN1cnJlbnQgdmFsdWUuICBJZiBpdCBkb2Vzbid0IG1hdGNoLCBfX2Z1dGV4X3dhaXQoKQotICAgICAgICAgKiByZXR1cm5zIGltbWVkaWF0ZWx5IChvdGhlcndpc2UsIGl0IHNsZWVwcyBmb3IgYSB0aW1lIHNwZWNpZmllZAotICAgICAgICAgKiBieSB0aGUgdGhpcmQgYXJndW1lbnQ7IDAgbWVhbnMgc2xlZXAgZm9yZXZlcikuICBUaGlzIGVuc3VyZXMKLSAgICAgICAgICogdGhhdCB0aGUgbXV0ZXggaXMgaW4gc3RhdGUgMiB3aGVuIHdlIGdvIHRvIHNsZWVwIG9uIGl0LCB3aGljaAotICAgICAgICAgKiBndWFyYW50ZWVzIGEgd2FrZS11cCBjYWxsLgotICAgICAgICAgKi8KLSAgICAgICAgd2hpbGUgKF9fYmlvbmljX3N3YXAobG9ja2VkX2NvbnRlbmRlZCwgJm11dGV4LT52YWx1ZSkgIT0gdW5sb2NrZWQpIHsKLSAgICAgICAgICAgIF9fZnV0ZXhfd2FpdF9leCgmbXV0ZXgtPnZhbHVlLCBzaGFyZWQsIGxvY2tlZF9jb250ZW5kZWQsIE5VTEwpOworc3RhdGljIGlubGluZSBfX2Fsd2F5c19pbmxpbmUgaW50IF9fcHRocmVhZF9ub3JtYWxfbXV0ZXhfbG9jayhwdGhyZWFkX211dGV4X2ludGVybmFsX3QqIG11dGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MTZfdCBzaGFyZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRpbWVzcGVjKiBhYnNfdGltZW91dF9vcl9udWxsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbG9ja2lkX3QgY2xvY2spIHsKKyAgICBpZiAoX19wcmVkaWN0X3RydWUoX19wdGhyZWFkX25vcm1hbF9tdXRleF90cnlsb2NrKG11dGV4LCBzaGFyZWQpID09IDApKSB7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIFNjb3BlZFRyYWNlIHRyYWNlKCJDb250ZW5kaW5nIGZvciBwdGhyZWFkIG11dGV4Iik7CisKKyAgICBjb25zdCB1aW50MTZfdCB1bmxvY2tlZCAgICAgICAgICAgPSBzaGFyZWQgfCBNVVRFWF9TVEFURV9CSVRTX1VOTE9DS0VEOworICAgIGNvbnN0IHVpbnQxNl90IGxvY2tlZF9jb250ZW5kZWQgPSBzaGFyZWQgfCBNVVRFWF9TVEFURV9CSVRTX0xPQ0tFRF9DT05URU5ERUQ7CisKKyAgICAvLyBXZSB3YW50IHRvIGdvIHRvIHNsZWVwIHVudGlsIHRoZSBtdXRleCBpcyBhdmFpbGFibGUsIHdoaWNoIHJlcXVpcmVzCisgICAgLy8gcHJvbW90aW5nIGl0IHRvIGxvY2tlZF9jb250ZW5kZWQuIFdlIG5lZWQgdG8gc3dhcCBpbiB0aGUgbmV3IHN0YXRlCisgICAgLy8gYW5kIHRoZW4gd2FpdCB1bnRpbCBzb21lYm9keSB3YWtlcyB1cyB1cC4KKyAgICAvLyBBbiBhdG9taWNfZXhjaGFuZ2UgaXMgdXNlZCB0byBjb21wZXRlIHdpdGggb3RoZXIgdGhyZWFkcyBmb3IgdGhlIGxvY2suCisgICAgLy8gSWYgaXQgcmV0dXJucyB1bmxvY2tlZCwgd2UgaGF2ZSBhY3F1aXJlZCB0aGUgbG9jaywgb3RoZXJ3aXNlIGFub3RoZXIKKyAgICAvLyB0aHJlYWQgc3RpbGwgaG9sZHMgdGhlIGxvY2sgYW5kIHdlIHNob3VsZCB3YWl0IGFnYWluLgorICAgIC8vIElmIGxvY2sgaXMgYWNxdWlyZWQsIGFuIGFjcXVpcmUgZmVuY2UgaXMgbmVlZGVkIHRvIG1ha2UgYWxsIG1lbW9yeSBhY2Nlc3NlcworICAgIC8vIG1hZGUgYnkgb3RoZXIgdGhyZWFkcyB2aXNpYmxlIHRvIHRoZSBjdXJyZW50IENQVS4KKyAgICB3aGlsZSAoYXRvbWljX2V4Y2hhbmdlX2V4cGxpY2l0KCZtdXRleC0+c3RhdGUsIGxvY2tlZF9jb250ZW5kZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfb3JkZXJfYWNxdWlyZSkgIT0gdW5sb2NrZWQpIHsKKyAgICAgICAgdGltZXNwZWMgdHM7CisgICAgICAgIHRpbWVzcGVjKiByZWxfdGltZW91dCA9IE5VTEw7CisgICAgICAgIGlmIChhYnNfdGltZW91dF9vcl9udWxsICE9IE5VTEwpIHsKKyAgICAgICAgICAgIHJlbF90aW1lb3V0ID0gJnRzOworICAgICAgICAgICAgaWYgKCF0aW1lc3BlY19mcm9tX2Fic29sdXRlX3RpbWVzcGVjKCpyZWxfdGltZW91dCwgKmFic190aW1lb3V0X29yX251bGwsIGNsb2NrKSkgeworICAgICAgICAgICAgICAgIHJldHVybiBFVElNRURPVVQ7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgaWYgKF9fZnV0ZXhfd2FpdF9leCgmbXV0ZXgtPnN0YXRlLCBzaGFyZWQsIGxvY2tlZF9jb250ZW5kZWQsIHJlbF90aW1lb3V0KSA9PSAtRVRJTUVET1VUKSB7CisgICAgICAgICAgICByZXR1cm4gRVRJTUVET1VUOwogICAgICAgICB9CiAgICAgfQotICAgIEFORFJPSURfTUVNQkFSX0ZVTEwoKTsKKyAgICByZXR1cm4gMDsKIH0KIAogLyoKLSAqIFJlbGVhc2UgYSBub24tcmVjdXJzaXZlIG11dGV4LiAgVGhlIGNhbGxlciBpcyByZXNwb25zaWJsZSBmb3IgZGV0ZXJtaW5pbmcKKyAqIFJlbGVhc2UgYSBub3JtYWwgbXV0ZXguICBUaGUgY2FsbGVyIGlzIHJlc3BvbnNpYmxlIGZvciBkZXRlcm1pbmluZwogICogdGhhdCB3ZSBhcmUgaW4gZmFjdCB0aGUgb3duZXIgb2YgdGhpcyBsb2NrLgogICovCi1zdGF0aWMgaW5saW5lIHZvaWQgX25vcm1hbF91bmxvY2socHRocmVhZF9tdXRleF90KiBtdXRleCwgaW50IHNoYXJlZCkgewotICAgIEFORFJPSURfTUVNQkFSX0ZVTEwoKTsKK3N0YXRpYyBpbmxpbmUgX19hbHdheXNfaW5saW5lIHZvaWQgX19wdGhyZWFkX25vcm1hbF9tdXRleF91bmxvY2socHRocmVhZF9tdXRleF9pbnRlcm5hbF90KiBtdXRleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDE2X3Qgc2hhcmVkKSB7CisgICAgY29uc3QgdWludDE2X3QgdW5sb2NrZWQgICAgICAgICA9IHNoYXJlZCB8IE1VVEVYX1NUQVRFX0JJVFNfVU5MT0NLRUQ7CisgICAgY29uc3QgdWludDE2X3QgbG9ja2VkX2NvbnRlbmRlZCA9IHNoYXJlZCB8IE1VVEVYX1NUQVRFX0JJVFNfTE9DS0VEX0NPTlRFTkRFRDsKIAotICAgIC8qCi0gICAgICogVGhlIG11dGV4IHN0YXRlIHdpbGwgYmUgMSBvciAocmFyZWx5KSAyLiAgV2UgdXNlIGFuIGF0b21pYyBkZWNyZW1lbnQKLSAgICAgKiB0byByZWxlYXNlIHRoZSBsb2NrLiAgX19iaW9uaWNfYXRvbWljX2RlYygpIHJldHVybnMgdGhlIHByZXZpb3VzIHZhbHVlOwotICAgICAqIGlmIGl0IHdhc24ndCAxIHdlIGhhdmUgdG8gZG8gc29tZSBhZGRpdGlvbmFsIHdvcmsuCi0gICAgICovCi0gICAgaWYgKF9fYmlvbmljX2F0b21pY19kZWMoJm11dGV4LT52YWx1ZSkgIT0gKHNoYXJlZHxNVVRFWF9TVEFURV9CSVRTX0xPQ0tFRF9VTkNPTlRFTkRFRCkpIHsKLSAgICAgICAgLyoKLSAgICAgICAgICogU3RhcnQgYnkgcmVsZWFzaW5nIHRoZSBsb2NrLiAgVGhlIGRlY3JlbWVudCBjaGFuZ2VkIGl0IGZyb20KLSAgICAgICAgICogImNvbnRlbmRlZCBsb2NrIiB0byAidW5jb250ZW5kZWQgbG9jayIsIHdoaWNoIG1lYW5zIHdlIHN0aWxsCi0gICAgICAgICAqIGhvbGQgaXQsIGFuZCBhbnlib2R5IHdobyB0cmllcyB0byBzbmVhayBpbiB3aWxsIHB1c2ggaXQgYmFjawotICAgICAgICAgKiB0byBzdGF0ZSAyLgotICAgICAgICAgKgotICAgICAgICAgKiBPbmNlIHdlIHNldCBpdCB0byB6ZXJvIHRoZSBsb2NrIGlzIHVwIGZvciBncmFicy4gIFdlIGZvbGxvdwotICAgICAgICAgKiB0aGlzIHdpdGggYSBfX2Z1dGV4X3dha2UoKSB0byBlbnN1cmUgdGhhdCBvbmUgb2YgdGhlIHdhaXRpbmcKLSAgICAgICAgICogdGhyZWFkcyBoYXMgYSBjaGFuY2UgdG8gZ3JhYiBpdC4KLSAgICAgICAgICoKLSAgICAgICAgICogVGhpcyBkb2Vzbid0IGNhdXNlIGEgcmFjZSB3aXRoIHRoZSBzd2FwL3dhaXQgcGFpciBpbgotICAgICAgICAgKiBfbm9ybWFsX2xvY2soKSwgYmVjYXVzZSB0aGUgX19mdXRleF93YWl0KCkgY2FsbCB0aGVyZSB3aWxsCi0gICAgICAgICAqIHJldHVybiBpbW1lZGlhdGVseSBpZiB0aGUgbXV0ZXggdmFsdWUgaXNuJ3QgMi4KLSAgICAgICAgICovCi0gICAgICAgIG11dGV4LT52YWx1ZSA9IHNoYXJlZDsKLQotICAgICAgICAvKgotICAgICAgICAgKiBXYWtlIHVwIG9uZSB3YWl0aW5nIHRocmVhZC4gIFdlIGRvbid0IGtub3cgd2hpY2ggdGhyZWFkIHdpbGwgYmUKLSAgICAgICAgICogd29rZW4gb3Igd2hlbiBpdCdsbCBzdGFydCBleGVjdXRpbmcgLS0gZnV0ZXhlcyBtYWtlIG5vIGd1YXJhbnRlZXMKLSAgICAgICAgICogaGVyZS4gIFRoZXJlIG1heSBub3QgZXZlbiBiZSBhIHRocmVhZCB3YWl0aW5nLgotICAgICAgICAgKgotICAgICAgICAgKiBUaGUgbmV3bHktd29rZW4gdGhyZWFkIHdpbGwgcmVwbGFjZSB0aGUgMCB3ZSBqdXN0IHNldCBhYm92ZQotICAgICAgICAgKiB3aXRoIDIsIHdoaWNoIG1lYW5zIHRoYXQgd2hlbiBpdCBldmVudHVhbGx5IHJlbGVhc2VzIHRoZSBtdXRleAotICAgICAgICAgKiBpdCB3aWxsIGFsc28gY2FsbCBGVVRFWF9XQUtFLiAgVGhpcyByZXN1bHRzIGluIG9uZSBleHRyYSB3YWtlCi0gICAgICAgICAqIGNhbGwgd2hlbmV2ZXIgYSBsb2NrIGlzIGNvbnRlbmRlZCwgYnV0IGxldHMgdXMgYXZvaWQgZm9yZ2V0dGluZwotICAgICAgICAgKiBhbnlvbmUgd2l0aG91dCByZXF1aXJpbmcgdXMgdG8gdHJhY2sgdGhlIG51bWJlciBvZiBzbGVlcGVycy4KLSAgICAgICAgICoKLSAgICAgICAgICogSXQncyBwb3NzaWJsZSBmb3IgYW5vdGhlciB0aHJlYWQgdG8gc25lYWsgaW4gYW5kIGdyYWIgdGhlIGxvY2sKLSAgICAgICAgICogYmV0d2VlbiB0aGUgemVybyBhc3NpZ25tZW50IGFib3ZlIGFuZCB0aGUgd2FrZSBjYWxsIGJlbG93LiAgSWYKLSAgICAgICAgICogdGhlIG5ldyB0aHJlYWQgaXMgInNsb3ciIGFuZCBob2xkcyB0aGUgbG9jayBmb3IgYSB3aGlsZSwgd2UnbGwKLSAgICAgICAgICogd2FrZSB1cCBhIHNsZWVwZXIsIHdoaWNoIHdpbGwgc3dhcCBpbiBhIDIgYW5kIHRoZW4gZ28gYmFjayB0bwotICAgICAgICAgKiBzbGVlcCBzaW5jZSB0aGUgbG9jayBpcyBzdGlsbCBoZWxkLiAgSWYgdGhlIG5ldyB0aHJlYWQgaXMgImZhc3QiLAotICAgICAgICAgKiBydW5uaW5nIHRvIGNvbXBsZXRpb24gYmVmb3JlIHdlIGNhbGwgd2FrZSwgdGhlIHRocmVhZCB3ZQotICAgICAgICAgKiBldmVudHVhbGx5IHdha2Ugd2lsbCBmaW5kIGFuIHVubG9ja2VkIG11dGV4IGFuZCB3aWxsIGV4ZWN1dGUuCi0gICAgICAgICAqIEVpdGhlciB3YXkgd2UgaGF2ZSBjb3JyZWN0IGJlaGF2aW9yIGFuZCBub2JvZHkgaXMgb3JwaGFuZWQgb24KLSAgICAgICAgICogdGhlIHdhaXQgcXVldWUuCi0gICAgICAgICAqLwotICAgICAgICBfX2Z1dGV4X3dha2VfZXgoJm11dGV4LT52YWx1ZSwgc2hhcmVkLCAxKTsKKyAgICAvLyBXZSB1c2UgYW4gYXRvbWljX2V4Y2hhbmdlIHRvIHJlbGVhc2UgdGhlIGxvY2suIElmIGxvY2tlZF9jb250ZW5kZWQgc3RhdGUKKyAgICAvLyBpcyByZXR1cm5lZCwgc29tZSB0aHJlYWRzIGlzIHdhaXRpbmcgZm9yIHRoZSBsb2NrIGFuZCB3ZSBuZWVkIHRvIHdha2UgdXAKKyAgICAvLyBvbmUgb2YgdGhlbS4KKyAgICAvLyBBIHJlbGVhc2UgZmVuY2UgaXMgcmVxdWlyZWQgdG8gbWFrZSBwcmV2aW91cyBzdG9yZXMgdmlzaWJsZSB0byBuZXh0CisgICAgLy8gbG9jayBvd25lciB0aHJlYWRzLgorICAgIGlmIChhdG9taWNfZXhjaGFuZ2VfZXhwbGljaXQoJm11dGV4LT5zdGF0ZSwgdW5sb2NrZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfb3JkZXJfcmVsZWFzZSkgPT0gbG9ja2VkX2NvbnRlbmRlZCkgeworICAgICAgICAvLyBXYWtlIHVwIG9uZSB3YWl0aW5nIHRocmVhZC4gV2UgZG9uJ3Qga25vdyB3aGljaCB0aHJlYWQgd2lsbCBiZQorICAgICAgICAvLyB3b2tlbiBvciB3aGVuIGl0J2xsIHN0YXJ0IGV4ZWN1dGluZyAtLSBmdXRleGVzIG1ha2Ugbm8gZ3VhcmFudGVlcworICAgICAgICAvLyBoZXJlLiBUaGVyZSBtYXkgbm90IGV2ZW4gYmUgYSB0aHJlYWQgd2FpdGluZy4KKyAgICAgICAgLy8KKyAgICAgICAgLy8gVGhlIG5ld2x5LXdva2VuIHRocmVhZCB3aWxsIHJlcGxhY2UgdGhlIHVubG9ja2VkIHN0YXRlIHdlIGp1c3Qgc2V0IGFib3ZlCisgICAgICAgIC8vIHdpdGggbG9ja2VkX2NvbnRlbmRlZCBzdGF0ZSwgd2hpY2ggbWVhbnMgdGhhdCB3aGVuIGl0IGV2ZW50dWFsbHkgcmVsZWFzZXMKKyAgICAgICAgLy8gdGhlIG11dGV4IGl0IHdpbGwgYWxzbyBjYWxsIEZVVEVYX1dBS0UuIFRoaXMgcmVzdWx0cyBpbiBvbmUgZXh0cmEgd2FrZQorICAgICAgICAvLyBjYWxsIHdoZW5ldmVyIGEgbG9jayBpcyBjb250ZW5kZWQsIGJ1dCBsZXQgdXMgYXZvaWQgZm9yZ2V0dGluZyBhbnlvbmUKKyAgICAgICAgLy8gd2l0aG91dCByZXF1aXJpbmcgdXMgdG8gdHJhY2sgdGhlIG51bWJlciBvZiBzbGVlcGVycy4KKyAgICAgICAgLy8KKyAgICAgICAgLy8gSXQncyBwb3NzaWJsZSBmb3IgYW5vdGhlciB0aHJlYWQgdG8gc25lYWsgaW4gYW5kIGdyYWIgdGhlIGxvY2sgYmV0d2VlbgorICAgICAgICAvLyB0aGUgZXhjaGFuZ2UgYWJvdmUgYW5kIHRoZSB3YWtlIGNhbGwgYmVsb3cuIElmIHRoZSBuZXcgdGhyZWFkIGlzICJzbG93IgorICAgICAgICAvLyBhbmQgaG9sZHMgdGhlIGxvY2sgZm9yIGEgd2hpbGUsIHdlJ2xsIHdha2UgdXAgYSBzbGVlcGVyLCB3aGljaCB3aWxsIHN3YXAKKyAgICAgICAgLy8gaW4gbG9ja2VkX3VuY29udGVuZGVkIHN0YXRlIGFuZCB0aGVuIGdvIGJhY2sgdG8gc2xlZXAgc2luY2UgdGhlIGxvY2sgaXMKKyAgICAgICAgLy8gc3RpbGwgaGVsZC4gSWYgdGhlIG5ldyB0aHJlYWQgaXMgImZhc3QiLCBydW5uaW5nIHRvIGNvbXBsZXRpb24gYmVmb3JlCisgICAgICAgIC8vIHdlIGNhbGwgd2FrZSwgdGhlIHRocmVhZCB3ZSBldmVudHVhbGx5IHdha2Ugd2lsbCBmaW5kIGFuIHVubG9ja2VkIG11dGV4CisgICAgICAgIC8vIGFuZCB3aWxsIGV4ZWN1dGUuIEVpdGhlciB3YXkgd2UgaGF2ZSBjb3JyZWN0IGJlaGF2aW9yIGFuZCBub2JvZHkgaXMKKyAgICAgICAgLy8gb3JwaGFuZWQgb24gdGhlIHdhaXQgcXVldWUuCisgICAgICAgIF9fZnV0ZXhfd2FrZV9leCgmbXV0ZXgtPnN0YXRlLCBzaGFyZWQsIDEpOwogICAgIH0KIH0KIAotLyogVGhpcyBjb21tb24gaW5saW5lZCBmdW5jdGlvbiBpcyB1c2VkIHRvIGluY3JlbWVudCB0aGUgY291bnRlciBvZiBhbgotICogZXJyb3JjaGVjayBvciByZWN1cnNpdmUgbXV0ZXguCisvKiBUaGlzIGNvbW1vbiBpbmxpbmVkIGZ1bmN0aW9uIGlzIHVzZWQgdG8gaW5jcmVtZW50IHRoZSBjb3VudGVyIG9mIGEgcmVjdXJzaXZlIG11dGV4LgogICoKLSAqIEZvciBlcnJvcmNoZWNrIG11dGV4ZXMsIGl0IHdpbGwgcmV0dXJuIEVERUFETEsKLSAqIElmIHRoZSBjb3VudGVyIG92ZXJmbG93cywgaXQgd2lsbCByZXR1cm4gRUFHQUlOCi0gKiBPdGhlcndpc2UsIGl0IGF0b21pY2FsbHkgaW5jcmVtZW50cyB0aGUgY291bnRlciBhbmQgcmV0dXJucyAwCi0gKiBhZnRlciBwcm92aWRpbmcgYW4gYWNxdWlyZSBiYXJyaWVyLgorICogSWYgdGhlIGNvdW50ZXIgb3ZlcmZsb3dzLCBpdCB3aWxsIHJldHVybiBFQUdBSU4uCisgKiBPdGhlcndpc2UsIGl0IGF0b21pY2FsbHkgaW5jcmVtZW50cyB0aGUgY291bnRlciBhbmQgcmV0dXJucyAwLgogICoKLSAqIG10eXBlIGlzIHRoZSBjdXJyZW50IG11dGV4IHR5cGUKLSAqIG12YWx1ZSBpcyB0aGUgY3VycmVudCBtdXRleCB2YWx1ZSAoYWxyZWFkeSBsb2FkZWQpCi0gKiBtdXRleCBwb2ludGVycyB0byB0aGUgbXV0ZXguCiAgKi8KLXN0YXRpYyBpbmxpbmUgX19hbHdheXNfaW5saW5lIGludCBfcmVjdXJzaXZlX2luY3JlbWVudChwdGhyZWFkX211dGV4X3QqIG11dGV4LCBpbnQgbXZhbHVlLCBpbnQgbXR5cGUpIHsKLSAgICBpZiAobXR5cGUgPT0gTVVURVhfVFlQRV9CSVRTX0VSUk9SQ0hFQ0spIHsKLSAgICAgICAgLyogdHJ5aW5nIHRvIHJlLWxvY2sgYSBtdXRleCB3ZSBhbHJlYWR5IGFjcXVpcmVkICovCi0gICAgICAgIHJldHVybiBFREVBRExLOwotICAgIH0KLQotICAgIC8qIERldGVjdCByZWN1cnNpdmUgbG9jayBvdmVyZmxvdyBhbmQgcmV0dXJuIEVBR0FJTi4KLSAgICAgKiBUaGlzIGlzIHNhZmUgYmVjYXVzZSBvbmx5IHRoZSBvd25lciB0aHJlYWQgY2FuIG1vZGlmeSB0aGUKLSAgICAgKiBjb3VudGVyIGJpdHMgaW4gdGhlIG11dGV4IHZhbHVlLgotICAgICAqLwotICAgIGlmIChNVVRFWF9DT1VOVEVSX0JJVFNfV0lMTF9PVkVSRkxPVyhtdmFsdWUpKSB7CitzdGF0aWMgaW5saW5lIF9fYWx3YXlzX2lubGluZSBpbnQgX19yZWN1cnNpdmVfaW5jcmVtZW50KHB0aHJlYWRfbXV0ZXhfaW50ZXJuYWxfdCogbXV0ZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQxNl90IG9sZF9zdGF0ZSkgeworICAgIC8vIERldGVjdCByZWN1cnNpdmUgbG9jayBvdmVyZmxvdyBhbmQgcmV0dXJuIEVBR0FJTi4KKyAgICAvLyBUaGlzIGlzIHNhZmUgYmVjYXVzZSBvbmx5IHRoZSBvd25lciB0aHJlYWQgY2FuIG1vZGlmeSB0aGUKKyAgICAvLyBjb3VudGVyIGJpdHMgaW4gdGhlIG11dGV4IHZhbHVlLgorICAgIGlmIChNVVRFWF9DT1VOVEVSX0JJVFNfV0lMTF9PVkVSRkxPVyhvbGRfc3RhdGUpKSB7CiAgICAgICAgIHJldHVybiBFQUdBSU47CiAgICAgfQogCi0gICAgLyogV2Ugb3duIHRoZSBtdXRleCwgYnV0IG90aGVyIHRocmVhZHMgYXJlIGFibGUgdG8gY2hhbmdlCi0gICAgICogdGhlIGxvd2VyIGJpdHMgKGUuZy4gcHJvbW90aW5nIGl0IHRvICJjb250ZW5kZWQiKSwgc28gd2UKLSAgICAgKiBuZWVkIHRvIHVzZSBhbiBhdG9taWMgY21weGNoZyBsb29wIHRvIHVwZGF0ZSB0aGUgY291bnRlci4KLSAgICAgKi8KLSAgICBmb3IgKDs7KSB7Ci0gICAgICAgIC8qIGluY3JlbWVudCBjb3VudGVyLCBvdmVyZmxvdyB3YXMgYWxyZWFkeSBjaGVja2VkICovCi0gICAgICAgIGludCBuZXd2YWwgPSBtdmFsdWUgKyBNVVRFWF9DT1VOVEVSX0JJVFNfT05FOwotICAgICAgICBpZiAoX19wcmVkaWN0X3RydWUoX19iaW9uaWNfY21weGNoZyhtdmFsdWUsIG5ld3ZhbCwgJm11dGV4LT52YWx1ZSkgPT0gMCkpIHsKLSAgICAgICAgICAgIC8qIG11dGV4IGlzIHN0aWxsIGxvY2tlZCwgbm90IG5lZWQgZm9yIGEgbWVtb3J5IGJhcnJpZXIgKi8KLSAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICB9Ci0gICAgICAgIC8qIHRoZSB2YWx1ZSB3YXMgY2hhbmdlZCwgdGhpcyBoYXBwZW5zIHdoZW4gYW5vdGhlciB0aHJlYWQgY2hhbmdlcwotICAgICAgICAgKiB0aGUgbG93ZXIgc3RhdGUgYml0cyBmcm9tIDEgdG8gMiB0byBpbmRpY2F0ZSBjb250ZW50aW9uLiBUaGlzCi0gICAgICAgICAqIGNhbm5vdCBjaGFuZ2UgdGhlIGNvdW50ZXIsIHNvIHNpbXBseSByZWxvYWQgYW5kIHRyeSBhZ2Fpbi4KLSAgICAgICAgICovCi0gICAgICAgIG12YWx1ZSA9IG11dGV4LT52YWx1ZTsKLSAgICB9Ci19Ci0KLWludCBwdGhyZWFkX211dGV4X2xvY2socHRocmVhZF9tdXRleF90KiBtdXRleCkgewotI2lmICFkZWZpbmVkKF9fTFA2NF9fKQotICAgIGlmIChtdXRleCA9PSBOVUxMKSB7Ci0gICAgICAgIHJldHVybiBFSU5WQUw7Ci0gICAgfQotI2VuZGlmCi0KLSAgICBpbnQgbXZhbHVlLCBtdHlwZSwgdGlkLCBzaGFyZWQ7Ci0KLSAgICBtdmFsdWUgPSBtdXRleC0+dmFsdWU7Ci0gICAgbXR5cGUgPSAobXZhbHVlICYgTVVURVhfVFlQRV9NQVNLKTsKLSAgICBzaGFyZWQgPSAobXZhbHVlICYgTVVURVhfU0hBUkVEX01BU0spOwotCi0gICAgLyogSGFuZGxlIG5vbi1yZWN1cnNpdmUgY2FzZSBmaXJzdCAqLwotICAgIGlmICggX19wcmVkaWN0X3RydWUobXR5cGUgPT0gTVVURVhfVFlQRV9CSVRTX05PUk1BTCkgKSB7Ci0gICAgICAgIF9ub3JtYWxfbG9jayhtdXRleCwgc2hhcmVkKTsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQotCi0gICAgLyogRG8gd2UgYWxyZWFkeSBvd24gdGhpcyByZWN1cnNpdmUgb3IgZXJyb3ItY2hlY2sgbXV0ZXggPyAqLwotICAgIHRpZCA9IF9fZ2V0X3RocmVhZCgpLT50aWQ7Ci0gICAgaWYgKCB0aWQgPT0gTVVURVhfT1dORVJfRlJPTV9CSVRTKG12YWx1ZSkgKQotICAgICAgICByZXR1cm4gX3JlY3Vyc2l2ZV9pbmNyZW1lbnQobXV0ZXgsIG12YWx1ZSwgbXR5cGUpOwotCi0gICAgLyogQWRkIGluIHNoYXJlZCBzdGF0ZSB0byBhdm9pZCBleHRyYSAnb3InIG9wZXJhdGlvbnMgYmVsb3cgKi8KLSAgICBtdHlwZSB8PSBzaGFyZWQ7Ci0KLSAgICAvKiBGaXJzdCwgaWYgdGhlIG11dGV4IGlzIHVubG9ja2VkLCB0cnkgdG8gcXVpY2tseSBhY3F1aXJlIGl0LgotICAgICAqIEluIHRoZSBvcHRpbWlzdGljIGNhc2Ugd2hlcmUgdGhpcyB3b3Jrcywgc2V0IHRoZSBzdGF0ZSB0byAxIHRvCi0gICAgICogaW5kaWNhdGUgbG9ja2VkIHdpdGggbm8gY29udGVudGlvbiAqLwotICAgIGlmIChtdmFsdWUgPT0gbXR5cGUpIHsKLSAgICAgICAgaW50IG5ld3ZhbCA9IE1VVEVYX09XTkVSX1RPX0JJVFModGlkKSB8IG10eXBlIHwgTVVURVhfU1RBVEVfQklUU19MT0NLRURfVU5DT05URU5ERUQ7Ci0gICAgICAgIGlmIChfX2Jpb25pY19jbXB4Y2hnKG12YWx1ZSwgbmV3dmFsLCAmbXV0ZXgtPnZhbHVlKSA9PSAwKSB7Ci0gICAgICAgICAgICBBTkRST0lEX01FTUJBUl9GVUxMKCk7Ci0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgfQotICAgICAgICAvKiBhcmdoLCB0aGUgdmFsdWUgY2hhbmdlZCwgcmVsb2FkIGJlZm9yZSBlbnRlcmluZyB0aGUgbG9vcCAqLwotICAgICAgICBtdmFsdWUgPSBtdXRleC0+dmFsdWU7Ci0gICAgfQotCi0gICAgZm9yICg7OykgewotICAgICAgICBpbnQgbmV3dmFsOwotCi0gICAgICAgIC8qIGlmIHRoZSBtdXRleCBpcyB1bmxvY2tlZCwgaXRzIHZhbHVlIHNob3VsZCBiZSAnbXR5cGUnIGFuZAotICAgICAgICAgKiB3ZSB0cnkgdG8gYWNxdWlyZSBpdCBieSBzZXR0aW5nIGl0cyBvd25lciBhbmQgc3RhdGUgYXRvbWljYWxseS4KLSAgICAgICAgICogTk9URTogV2UgcHV0IHRoZSBzdGF0ZSB0byAyIHNpbmNlIHdlIF9rbm93XyB0aGVyZSBpcyBjb250ZW50aW9uCi0gICAgICAgICAqIHdoZW4gd2UgYXJlIGluIHRoaXMgbG9vcC4gVGhpcyBlbnN1cmVzIGFsbCB3YWl0ZXJzIHdpbGwgYmUKLSAgICAgICAgICogdW5sb2NrZWQuCi0gICAgICAgICAqLwotICAgICAgICBpZiAobXZhbHVlID09IG10eXBlKSB7Ci0gICAgICAgICAgICBuZXd2YWwgPSBNVVRFWF9PV05FUl9UT19CSVRTKHRpZCkgfCBtdHlwZSB8IE1VVEVYX1NUQVRFX0JJVFNfTE9DS0VEX0NPTlRFTkRFRDsKLSAgICAgICAgICAgIC8qIFRPRE86IENoYW5nZSB0aGlzIHRvIF9fYmlvbmljX2NtcHhjaGdfYWNxdWlyZSB3aGVuIHdlCi0gICAgICAgICAgICAgKiAgICAgICAgaW1wbGVtZW50IGl0IHRvIGdldCByaWQgb2YgdGhlIGV4cGxpY2l0IG1lbW9yeQotICAgICAgICAgICAgICogICAgICAgIGJhcnJpZXIgYmVsb3cuCi0gICAgICAgICAgICAgKi8KLSAgICAgICAgICAgIGlmIChfX3ByZWRpY3RfZmFsc2UoX19iaW9uaWNfY21weGNoZyhtdmFsdWUsIG5ld3ZhbCwgJm11dGV4LT52YWx1ZSkgIT0gMCkpIHsKLSAgICAgICAgICAgICAgICBtdmFsdWUgPSBtdXRleC0+dmFsdWU7Ci0gICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBBTkRST0lEX01FTUJBUl9GVUxMKCk7Ci0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgfQotCi0gICAgICAgIC8qIHRoZSBtdXRleCBpcyBhbHJlYWR5IGxvY2tlZCBieSBhbm90aGVyIHRocmVhZCwgaWYgaXRzIHN0YXRlIGlzIDEKLSAgICAgICAgICogd2Ugd2lsbCBjaGFuZ2UgaXQgdG8gMiB0byBpbmRpY2F0ZSBjb250ZW50aW9uLiAqLwotICAgICAgICBpZiAoTVVURVhfU1RBVEVfQklUU19JU19MT0NLRURfVU5DT05URU5ERUQobXZhbHVlKSkgewotICAgICAgICAgICAgbmV3dmFsID0gTVVURVhfU1RBVEVfQklUU19GTElQX0NPTlRFTlRJT04obXZhbHVlKTsgLyogbG9ja2VkIHN0YXRlIDEgPT4gc3RhdGUgMiAqLwotICAgICAgICAgICAgaWYgKF9fcHJlZGljdF9mYWxzZShfX2Jpb25pY19jbXB4Y2hnKG12YWx1ZSwgbmV3dmFsLCAmbXV0ZXgtPnZhbHVlKSAhPSAwKSkgewotICAgICAgICAgICAgICAgIG12YWx1ZSA9IG11dGV4LT52YWx1ZTsKLSAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIG12YWx1ZSA9IG5ld3ZhbDsKLSAgICAgICAgfQotCi0gICAgICAgIC8qIHdhaXQgdW50aWwgdGhlIG11dGV4IGlzIHVubG9ja2VkICovCi0gICAgICAgIF9fZnV0ZXhfd2FpdF9leCgmbXV0ZXgtPnZhbHVlLCBzaGFyZWQsIG12YWx1ZSwgTlVMTCk7Ci0KLSAgICAgICAgbXZhbHVlID0gbXV0ZXgtPnZhbHVlOwotICAgIH0KLSAgICAvKiBOT1RSRUFDSEVEICovCi19Ci0KLWludCBwdGhyZWFkX211dGV4X3VubG9jayhwdGhyZWFkX211dGV4X3QqIG11dGV4KSB7Ci0jaWYgIWRlZmluZWQoX19MUDY0X18pCi0gICAgaWYgKG11dGV4ID09IE5VTEwpIHsKLSAgICAgICAgcmV0dXJuIEVJTlZBTDsKLSAgICB9Ci0jZW5kaWYKLQotICAgIGludCBtdmFsdWUsIG10eXBlLCB0aWQsIHNoYXJlZDsKLQotICAgIG12YWx1ZSA9IG11dGV4LT52YWx1ZTsKLSAgICBtdHlwZSAgPSAobXZhbHVlICYgTVVURVhfVFlQRV9NQVNLKTsKLSAgICBzaGFyZWQgPSAobXZhbHVlICYgTVVURVhfU0hBUkVEX01BU0spOwotCi0gICAgLyogSGFuZGxlIGNvbW1vbiBjYXNlIGZpcnN0ICovCi0gICAgaWYgKF9fcHJlZGljdF90cnVlKG10eXBlID09IE1VVEVYX1RZUEVfQklUU19OT1JNQUwpKSB7Ci0gICAgICAgIF9ub3JtYWxfdW5sb2NrKG11dGV4LCBzaGFyZWQpOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0KLSAgICAvKiBEbyB3ZSBhbHJlYWR5IG93biB0aGlzIHJlY3Vyc2l2ZSBvciBlcnJvci1jaGVjayBtdXRleCA/ICovCi0gICAgdGlkID0gX19nZXRfdGhyZWFkKCktPnRpZDsKLSAgICBpZiAoIHRpZCAhPSBNVVRFWF9PV05FUl9GUk9NX0JJVFMobXZhbHVlKSApCi0gICAgICAgIHJldHVybiBFUEVSTTsKLQotICAgIC8qIElmIHRoZSBjb3VudGVyIGlzID4gMCwgd2UgY2FuIHNpbXBseSBkZWNyZW1lbnQgaXQgYXRvbWljYWxseS4KLSAgICAgKiBTaW5jZSBvdGhlciB0aHJlYWRzIGNhbiBtdXRhdGUgdGhlIGxvd2VyIHN0YXRlIGJpdHMgKGFuZCBvbmx5IHRoZQotICAgICAqIGxvd2VyIHN0YXRlIGJpdHMpLCB1c2UgYSBjbXB4Y2hnIHRvIGRvIGl0LgotICAgICAqLwotICAgIGlmICghTVVURVhfQ09VTlRFUl9CSVRTX0lTX1pFUk8obXZhbHVlKSkgewotICAgICAgICBmb3IgKDs7KSB7Ci0gICAgICAgICAgICBpbnQgbmV3dmFsID0gbXZhbHVlIC0gTVVURVhfQ09VTlRFUl9CSVRTX09ORTsKLSAgICAgICAgICAgIGlmIChfX3ByZWRpY3RfdHJ1ZShfX2Jpb25pY19jbXB4Y2hnKG12YWx1ZSwgbmV3dmFsLCAmbXV0ZXgtPnZhbHVlKSA9PSAwKSkgewotICAgICAgICAgICAgICAgIC8qIHN1Y2Nlc3M6IHdlIHN0aWxsIG93biB0aGUgbXV0ZXgsIHNvIG5vIG1lbW9yeSBiYXJyaWVyICovCi0gICAgICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICAvKiB0aGUgdmFsdWUgY2hhbmdlZCwgc28gcmVsb2FkIGFuZCBsb29wICovCi0gICAgICAgICAgICBtdmFsdWUgPSBtdXRleC0+dmFsdWU7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICAvKiB0aGUgY291bnRlciBpcyAwLCBzbyB3ZSdyZSBnb2luZyB0byB1bmxvY2sgdGhlIG11dGV4IGJ5IHJlc2V0dGluZwotICAgICAqIGl0cyB2YWx1ZSB0byAndW5sb2NrZWQnLiBXZSBuZWVkIHRvIHBlcmZvcm0gYSBzd2FwIGluIG9yZGVyCi0gICAgICogdG8gcmVhZCB0aGUgY3VycmVudCBzdGF0ZSwgd2hpY2ggd2lsbCBiZSAyIGlmIHRoZXJlIGFyZSB3YWl0ZXJzCi0gICAgICogdG8gYXdha2UuCi0gICAgICoKLSAgICAgKiBUT0RPOiBDaGFuZ2UgdGhpcyB0byBfX2Jpb25pY19zd2FwX3JlbGVhc2Ugd2hlbiB3ZSBpbXBsZW1lbnQgaXQKLSAgICAgKiAgICAgICAgdG8gZ2V0IHJpZCBvZiB0aGUgZXhwbGljaXQgbWVtb3J5IGJhcnJpZXIgYmVsb3cuCi0gICAgICovCi0gICAgQU5EUk9JRF9NRU1CQVJfRlVMTCgpOyAgLyogUkVMRUFTRSBCQVJSSUVSICovCi0gICAgbXZhbHVlID0gX19iaW9uaWNfc3dhcChtdHlwZSB8IHNoYXJlZCB8IE1VVEVYX1NUQVRFX0JJVFNfVU5MT0NLRUQsICZtdXRleC0+dmFsdWUpOwotCi0gICAgLyogV2FrZSBvbmUgd2FpdGluZyB0aHJlYWQsIGlmIGFueSAqLwotICAgIGlmIChNVVRFWF9TVEFURV9CSVRTX0lTX0xPQ0tFRF9DT05URU5ERUQobXZhbHVlKSkgewotICAgICAgICBfX2Z1dGV4X3dha2VfZXgoJm11dGV4LT52YWx1ZSwgc2hhcmVkLCAxKTsKLSAgICB9CisgICAgLy8gT3RoZXIgdGhyZWFkcyBhcmUgYWJsZSB0byBjaGFuZ2UgdGhlIGxvd2VyIGJpdHMgKGUuZy4gcHJvbW90aW5nIGl0IHRvICJjb250ZW5kZWQiKSwKKyAgICAvLyBidXQgdGhlIG11dGV4IGNvdW50ZXIgd2lsbCBub3Qgb3ZlcmZsb3cuIFNvIHdlIHVzZSBhdG9taWNfZmV0Y2hfYWRkIG9wZXJhdGlvbiBoZXJlLgorICAgIC8vIFRoZSBtdXRleCBpcyBzdGlsbCBsb2NrZWQgYnkgY3VycmVudCB0aHJlYWQsIHNvIHdlIGRvbid0IG5lZWQgYSByZWxlYXNlIGZlbmNlLgorICAgIGF0b21pY19mZXRjaF9hZGRfZXhwbGljaXQoJm11dGV4LT5zdGF0ZSwgTVVURVhfQ09VTlRFUl9CSVRTX09ORSwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOwogICAgIHJldHVybiAwOwogfQogCi1pbnQgcHRocmVhZF9tdXRleF90cnlsb2NrKHB0aHJlYWRfbXV0ZXhfdCogbXV0ZXgpIHsKLSAgICBpbnQgbXZhbHVlLCBtdHlwZSwgdGlkLCBzaGFyZWQ7CitzdGF0aWMgaW5saW5lIF9fYWx3YXlzX2lubGluZSBpbnQgX19yZWN1cnNpdmVfb3JfZXJyb3JjaGVja19tdXRleF93YWl0KAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHRocmVhZF9tdXRleF9pbnRlcm5hbF90KiBtdXRleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQxNl90IHNoYXJlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQxNl90IG9sZF9zdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRpbWVzcGVjKiByZWxfdGltZW91dCkgeworLy8gX19mdXRleF93YWl0IGFsd2F5cyB3YWl0cyBvbiBhIDMyLWJpdCB2YWx1ZS4gQnV0IHN0YXRlIGlzIDE2LWJpdC4gRm9yIGEgbm9ybWFsIG11dGV4LCB0aGUgb3duZXJfdGlkCisvLyBmaWVsZCBpbiBtdXRleCBpcyBub3QgdXNlZC4gT24gNjQtYml0IGRldmljZXMsIHRoZSBfX3BhZCBmaWVsZCBpbiBtdXRleCBpcyBub3QgdXNlZC4KKy8vIEJ1dCB3aGVuIGEgcmVjdXJzaXZlIG9yIGVycm9yY2hlY2sgbXV0ZXggaXMgdXNlZCBvbiAzMi1iaXQgZGV2aWNlcywgd2UgbmVlZCB0byBhZGQgdGhlCisvLyBvd25lcl90aWQgdmFsdWUgaW4gdGhlIHZhbHVlIGFyZ3VtZW50IGZvciBfX2Z1dGV4X3dhaXQsIG90aGVyd2lzZSB3ZSBtYXkgYWx3YXlzIGdldCBFQUdBSU4gZXJyb3IuCiAKLSAgICBtdmFsdWUgPSBtdXRleC0+dmFsdWU7Ci0gICAgbXR5cGUgID0gKG12YWx1ZSAmIE1VVEVYX1RZUEVfTUFTSyk7Ci0gICAgc2hhcmVkID0gKG12YWx1ZSAmIE1VVEVYX1NIQVJFRF9NQVNLKTsKKyNpZiBkZWZpbmVkKF9fTFA2NF9fKQorICByZXR1cm4gX19mdXRleF93YWl0X2V4KCZtdXRleC0+c3RhdGUsIHNoYXJlZCwgb2xkX3N0YXRlLCByZWxfdGltZW91dCk7CiAKLSAgICAvKiBIYW5kbGUgY29tbW9uIGNhc2UgZmlyc3QgKi8KLSAgICBpZiAoIF9fcHJlZGljdF90cnVlKG10eXBlID09IE1VVEVYX1RZUEVfQklUU19OT1JNQUwpICkKLSAgICB7Ci0gICAgICAgIGlmIChfX2Jpb25pY19jbXB4Y2hnKHNoYXJlZHxNVVRFWF9TVEFURV9CSVRTX1VOTE9DS0VELAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGFyZWR8TVVURVhfU1RBVEVfQklUU19MT0NLRURfVU5DT05URU5ERUQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtdXRleC0+dmFsdWUpID09IDApIHsKLSAgICAgICAgICAgIEFORFJPSURfTUVNQkFSX0ZVTEwoKTsKLSAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICB9CisjZWxzZQorICAvLyBUaGlzIGltcGxlbWVudGF0aW9uIHdvcmtzIG9ubHkgd2hlbiB0aGUgbGF5b3V0IG9mIHB0aHJlYWRfbXV0ZXhfaW50ZXJuYWxfdCBtYXRjaGVzIGJlbG93IGV4cGVjdGF0aW9uLgorICAvLyBBbmQgaXQgaXMgYmFzZWQgb24gdGhlIGFzc3VtcHRpb24gdGhhdCBBbmRyb2lkIGlzIGFsd2F5cyBpbiBsaXR0bGUtZW5kaWFuIGRldmljZXMuCisgIHN0YXRpY19hc3NlcnQob2Zmc2V0b2YocHRocmVhZF9tdXRleF9pbnRlcm5hbF90LCBzdGF0ZSkgPT0gMCwgIiIpOworICBzdGF0aWNfYXNzZXJ0KG9mZnNldG9mKHB0aHJlYWRfbXV0ZXhfaW50ZXJuYWxfdCwgb3duZXJfdGlkKSA9PSAyLCAiIik7CiAKLSAgICAgICAgcmV0dXJuIEVCVVNZOworICB1aW50MzJfdCBvd25lcl90aWQgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmbXV0ZXgtPm93bmVyX3RpZCwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOworICByZXR1cm4gX19mdXRleF93YWl0X2V4KCZtdXRleC0+c3RhdGUsIHNoYXJlZCwgKG93bmVyX3RpZCA8PCAxNikgfCBvbGRfc3RhdGUsIHJlbF90aW1lb3V0KTsKKyNlbmRpZgorfQorCitzdGF0aWMgaW50IF9fcHRocmVhZF9tdXRleF9sb2NrX3dpdGhfdGltZW91dChwdGhyZWFkX211dGV4X2ludGVybmFsX3QqIG11dGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRpbWVzcGVjKiBhYnNfdGltZW91dF9vcl9udWxsLCBjbG9ja2lkX3QgY2xvY2spIHsKKyAgICB1aW50MTZfdCBvbGRfc3RhdGUgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmbXV0ZXgtPnN0YXRlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgdWludDE2X3QgbXR5cGUgPSAob2xkX3N0YXRlICYgTVVURVhfVFlQRV9NQVNLKTsKKyAgICB1aW50MTZfdCBzaGFyZWQgPSAob2xkX3N0YXRlICYgTVVURVhfU0hBUkVEX01BU0spOworCisgICAgLy8gSGFuZGxlIGNvbW1vbiBjYXNlIGZpcnN0LgorICAgIGlmICggX19wcmVkaWN0X3RydWUobXR5cGUgPT0gTVVURVhfVFlQRV9CSVRTX05PUk1BTCkgKSB7CisgICAgICAgIHJldHVybiBfX3B0aHJlYWRfbm9ybWFsX211dGV4X2xvY2sobXV0ZXgsIHNoYXJlZCwgYWJzX3RpbWVvdXRfb3JfbnVsbCwgY2xvY2spOwogICAgIH0KIAotICAgIC8qIERvIHdlIGFscmVhZHkgb3duIHRoaXMgcmVjdXJzaXZlIG9yIGVycm9yLWNoZWNrIG11dGV4ID8gKi8KLSAgICB0aWQgPSBfX2dldF90aHJlYWQoKS0+dGlkOwotICAgIGlmICggdGlkID09IE1VVEVYX09XTkVSX0ZST01fQklUUyhtdmFsdWUpICkKLSAgICAgICAgcmV0dXJuIF9yZWN1cnNpdmVfaW5jcmVtZW50KG11dGV4LCBtdmFsdWUsIG10eXBlKTsKKyAgICAvLyBEbyB3ZSBhbHJlYWR5IG93biB0aGlzIHJlY3Vyc2l2ZSBvciBlcnJvci1jaGVjayBtdXRleD8KKyAgICBwaWRfdCB0aWQgPSBfX2dldF90aHJlYWQoKS0+dGlkOworICAgIGlmICh0aWQgPT0gYXRvbWljX2xvYWRfZXhwbGljaXQoJm11dGV4LT5vd25lcl90aWQsIG1lbW9yeV9vcmRlcl9yZWxheGVkKSkgeworICAgICAgICBpZiAobXR5cGUgPT0gTVVURVhfVFlQRV9CSVRTX0VSUk9SQ0hFQ0spIHsKKyAgICAgICAgICAgIHJldHVybiBFREVBRExLOworICAgICAgICB9CisgICAgICAgIHJldHVybiBfX3JlY3Vyc2l2ZV9pbmNyZW1lbnQobXV0ZXgsIG9sZF9zdGF0ZSk7CisgICAgfQogCi0gICAgLyogU2FtZSBhcyBwdGhyZWFkX211dGV4X2xvY2ssIGV4Y2VwdCB0aGF0IHdlIGRvbid0IHdhbnQgdG8gd2FpdCwgYW5kCi0gICAgICogdGhlIG9ubHkgb3BlcmF0aW9uIHRoYXQgY2FuIHN1Y2NlZWQgaXMgYSBzaW5nbGUgY21weGNoZyB0byBhY3F1aXJlIHRoZQotICAgICAqIGxvY2sgaWYgaXQgaXMgcmVsZWFzZWQgLyBub3Qgb3duZWQgYnkgYW55b25lLiBObyBuZWVkIGZvciBhIGNvbXBsZXggbG9vcC4KLSAgICAgKi8KLSAgICBtdHlwZSB8PSBzaGFyZWQgfCBNVVRFWF9TVEFURV9CSVRTX1VOTE9DS0VEOwotICAgIG12YWx1ZSA9IE1VVEVYX09XTkVSX1RPX0JJVFModGlkKSB8IG10eXBlIHwgTVVURVhfU1RBVEVfQklUU19MT0NLRURfVU5DT05URU5ERUQ7CisgICAgY29uc3QgdWludDE2X3QgdW5sb2NrZWQgICAgICAgICAgID0gbXR5cGUgfCBzaGFyZWQgfCBNVVRFWF9TVEFURV9CSVRTX1VOTE9DS0VEOworICAgIGNvbnN0IHVpbnQxNl90IGxvY2tlZF91bmNvbnRlbmRlZCA9IG10eXBlIHwgc2hhcmVkIHwgTVVURVhfU1RBVEVfQklUU19MT0NLRURfVU5DT05URU5ERUQ7CisgICAgY29uc3QgdWludDE2X3QgbG9ja2VkX2NvbnRlbmRlZCAgID0gbXR5cGUgfCBzaGFyZWQgfCBNVVRFWF9TVEFURV9CSVRTX0xPQ0tFRF9DT05URU5ERUQ7CiAKLSAgICBpZiAoX19wcmVkaWN0X3RydWUoX19iaW9uaWNfY21weGNoZyhtdHlwZSwgbXZhbHVlLCAmbXV0ZXgtPnZhbHVlKSA9PSAwKSkgewotICAgICAgICBBTkRST0lEX01FTUJBUl9GVUxMKCk7CisgICAgLy8gRmlyc3QsIGlmIHRoZSBtdXRleCBpcyB1bmxvY2tlZCwgdHJ5IHRvIHF1aWNrbHkgYWNxdWlyZSBpdC4KKyAgICAvLyBJbiB0aGUgb3B0aW1pc3RpYyBjYXNlIHdoZXJlIHRoaXMgd29ya3MsIHNldCB0aGUgc3RhdGUgdG8gbG9ja2VkX3VuY29udGVuZGVkLgorICAgIGlmIChvbGRfc3RhdGUgPT0gdW5sb2NrZWQpIHsKKyAgICAgICAgLy8gSWYgZXhjaGFuZ2VkIHN1Y2Nlc3NmdWxseSwgYW4gYWNxdWlyZSBmZW5jZSBpcyByZXF1aXJlZCB0byBtYWtlCisgICAgICAgIC8vIGFsbCBtZW1vcnkgYWNjZXNzZXMgbWFkZSBieSBvdGhlciB0aHJlYWRzIHZpc2libGUgdG8gdGhlIGN1cnJlbnQgQ1BVLgorICAgICAgICBpZiAoX19wcmVkaWN0X3RydWUoYXRvbWljX2NvbXBhcmVfZXhjaGFuZ2Vfc3Ryb25nX2V4cGxpY2l0KCZtdXRleC0+c3RhdGUsICZvbGRfc3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2tlZF91bmNvbnRlbmRlZCwgbWVtb3J5X29yZGVyX2FjcXVpcmUsIG1lbW9yeV9vcmRlcl9yZWxheGVkKSkpIHsKKyAgICAgICAgICAgIGF0b21pY19zdG9yZV9leHBsaWNpdCgmbXV0ZXgtPm93bmVyX3RpZCwgdGlkLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgIH0KKworICAgIFNjb3BlZFRyYWNlIHRyYWNlKCJDb250ZW5kaW5nIGZvciBwdGhyZWFkIG11dGV4Iik7CisKKyAgICB3aGlsZSAodHJ1ZSkgeworICAgICAgICBpZiAob2xkX3N0YXRlID09IHVubG9ja2VkKSB7CisgICAgICAgICAgICAvLyBOT1RFOiBXZSBwdXQgdGhlIHN0YXRlIHRvIGxvY2tlZF9jb250ZW5kZWQgc2luY2Ugd2UgX2tub3dfIHRoZXJlCisgICAgICAgICAgICAvLyBpcyBjb250ZW50aW9uIHdoZW4gd2UgYXJlIGluIHRoaXMgbG9vcC4gVGhpcyBlbnN1cmVzIGFsbCB3YWl0ZXJzCisgICAgICAgICAgICAvLyB3aWxsIGJlIHVubG9ja2VkLgorCisgICAgICAgICAgICAvLyBJZiBleGNoYW5nZWQgc3VjY2Vzc2Z1bGx5LCBhbiBhY3F1aXJlIGZlbmNlIGlzIHJlcXVpcmVkIHRvIG1ha2UKKyAgICAgICAgICAgIC8vIGFsbCBtZW1vcnkgYWNjZXNzZXMgbWFkZSBieSBvdGhlciB0aHJlYWRzIHZpc2libGUgdG8gdGhlIGN1cnJlbnQgQ1BVLgorICAgICAgICAgICAgaWYgKF9fcHJlZGljdF90cnVlKGF0b21pY19jb21wYXJlX2V4Y2hhbmdlX3dlYWtfZXhwbGljaXQoJm11dGV4LT5zdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZvbGRfc3RhdGUsIGxvY2tlZF9jb250ZW5kZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfb3JkZXJfYWNxdWlyZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lbW9yeV9vcmRlcl9yZWxheGVkKSkpIHsKKyAgICAgICAgICAgICAgICBhdG9taWNfc3RvcmVfZXhwbGljaXQoJm11dGV4LT5vd25lcl90aWQsIHRpZCwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOworICAgICAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICAgICAgfQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0gZWxzZSBpZiAoTVVURVhfU1RBVEVfQklUU19JU19MT0NLRURfVU5DT05URU5ERUQob2xkX3N0YXRlKSkgeworICAgICAgICAgICAgLy8gV2Ugc2hvdWxkIHNldCBpdCB0byBsb2NrZWRfY29udGVuZGVkIGJlZm9yaW5nIGdvaW5nIHRvIHNsZWVwLiBUaGlzIGNhbiBtYWtlCisgICAgICAgICAgICAvLyBzdXJlIHdhaXRlcnMgd2lsbCBiZSB3b2tlbiB1cCBldmVudHVhbGx5LgorCisgICAgICAgICAgICBpbnQgbmV3X3N0YXRlID0gTVVURVhfU1RBVEVfQklUU19GTElQX0NPTlRFTlRJT04ob2xkX3N0YXRlKTsKKyAgICAgICAgICAgIGlmIChfX3ByZWRpY3RfZmFsc2UoIWF0b21pY19jb21wYXJlX2V4Y2hhbmdlX3dlYWtfZXhwbGljaXQoJm11dGV4LT5zdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm9sZF9zdGF0ZSwgbmV3X3N0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfb3JkZXJfcmVsYXhlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVtb3J5X29yZGVyX3JlbGF4ZWQpKSkgeworICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgfQorICAgICAgICAgICAgb2xkX3N0YXRlID0gbmV3X3N0YXRlOworICAgICAgICB9CisKKyAgICAgICAgLy8gV2UgYXJlIGluIGxvY2tlZF9jb250ZW5kZWQgc3RhdGUsIHNsZWVwIHVudGlsIHNvbWVvbmUgd2FrZXMgdXMgdXAuCisgICAgICAgIHRpbWVzcGVjIHRzOworICAgICAgICB0aW1lc3BlYyogcmVsX3RpbWVvdXQgPSBOVUxMOworICAgICAgICBpZiAoYWJzX3RpbWVvdXRfb3JfbnVsbCAhPSBOVUxMKSB7CisgICAgICAgICAgICByZWxfdGltZW91dCA9ICZ0czsKKyAgICAgICAgICAgIGlmICghdGltZXNwZWNfZnJvbV9hYnNvbHV0ZV90aW1lc3BlYygqcmVsX3RpbWVvdXQsICphYnNfdGltZW91dF9vcl9udWxsLCBjbG9jaykpIHsKKyAgICAgICAgICAgICAgICByZXR1cm4gRVRJTUVET1VUOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmIChfX3JlY3Vyc2l2ZV9vcl9lcnJvcmNoZWNrX211dGV4X3dhaXQobXV0ZXgsIHNoYXJlZCwgb2xkX3N0YXRlLCByZWxfdGltZW91dCkgPT0gLUVUSU1FRE9VVCkgeworICAgICAgICAgICAgcmV0dXJuIEVUSU1FRE9VVDsKKyAgICAgICAgfQorICAgICAgICBvbGRfc3RhdGUgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmbXV0ZXgtPnN0YXRlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgfQorfQorCitpbnQgcHRocmVhZF9tdXRleF9sb2NrKHB0aHJlYWRfbXV0ZXhfdCogbXV0ZXhfaW50ZXJmYWNlKSB7CisgICAgcHRocmVhZF9tdXRleF9pbnRlcm5hbF90KiBtdXRleCA9IF9fZ2V0X2ludGVybmFsX211dGV4KG11dGV4X2ludGVyZmFjZSk7CisKKyAgICB1aW50MTZfdCBvbGRfc3RhdGUgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmbXV0ZXgtPnN0YXRlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgdWludDE2X3QgbXR5cGUgPSAob2xkX3N0YXRlICYgTVVURVhfVFlQRV9NQVNLKTsKKyAgICB1aW50MTZfdCBzaGFyZWQgPSAob2xkX3N0YXRlICYgTVVURVhfU0hBUkVEX01BU0spOworICAgIC8vIEF2b2lkIHNsb3dpbmcgZG93biBmYXN0IHBhdGggb2Ygbm9ybWFsIG11dGV4IGxvY2sgb3BlcmF0aW9uLgorICAgIGlmIChfX3ByZWRpY3RfdHJ1ZShtdHlwZSA9PSBNVVRFWF9UWVBFX0JJVFNfTk9STUFMKSkgeworICAgICAgaWYgKF9fcHJlZGljdF90cnVlKF9fcHRocmVhZF9ub3JtYWxfbXV0ZXhfdHJ5bG9jayhtdXRleCwgc2hhcmVkKSA9PSAwKSkgeworICAgICAgICByZXR1cm4gMDsKKyAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIF9fcHRocmVhZF9tdXRleF9sb2NrX3dpdGhfdGltZW91dChtdXRleCwgTlVMTCwgMCk7Cit9CisKK2ludCBwdGhyZWFkX211dGV4X3VubG9jayhwdGhyZWFkX211dGV4X3QqIG11dGV4X2ludGVyZmFjZSkgeworICAgIHB0aHJlYWRfbXV0ZXhfaW50ZXJuYWxfdCogbXV0ZXggPSBfX2dldF9pbnRlcm5hbF9tdXRleChtdXRleF9pbnRlcmZhY2UpOworCisgICAgdWludDE2X3Qgb2xkX3N0YXRlID0gYXRvbWljX2xvYWRfZXhwbGljaXQoJm11dGV4LT5zdGF0ZSwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOworICAgIHVpbnQxNl90IG10eXBlICA9IChvbGRfc3RhdGUgJiBNVVRFWF9UWVBFX01BU0spOworICAgIHVpbnQxNl90IHNoYXJlZCA9IChvbGRfc3RhdGUgJiBNVVRFWF9TSEFSRURfTUFTSyk7CisKKyAgICAvLyBIYW5kbGUgY29tbW9uIGNhc2UgZmlyc3QuCisgICAgaWYgKF9fcHJlZGljdF90cnVlKG10eXBlID09IE1VVEVYX1RZUEVfQklUU19OT1JNQUwpKSB7CisgICAgICAgIF9fcHRocmVhZF9ub3JtYWxfbXV0ZXhfdW5sb2NrKG11dGV4LCBzaGFyZWQpOwogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAKKyAgICAvLyBEbyB3ZSBhbHJlYWR5IG93biB0aGlzIHJlY3Vyc2l2ZSBvciBlcnJvci1jaGVjayBtdXRleD8KKyAgICBwaWRfdCB0aWQgPSBfX2dldF90aHJlYWQoKS0+dGlkOworICAgIGlmICggdGlkICE9IGF0b21pY19sb2FkX2V4cGxpY2l0KCZtdXRleC0+b3duZXJfdGlkLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCkgKSB7CisgICAgICAgIHJldHVybiBFUEVSTTsKKyAgICB9CisKKyAgICAvLyBJZiB0aGUgY291bnRlciBpcyA+IDAsIHdlIGNhbiBzaW1wbHkgZGVjcmVtZW50IGl0IGF0b21pY2FsbHkuCisgICAgLy8gU2luY2Ugb3RoZXIgdGhyZWFkcyBjYW4gbXV0YXRlIHRoZSBsb3dlciBzdGF0ZSBiaXRzIChhbmQgb25seSB0aGUKKyAgICAvLyBsb3dlciBzdGF0ZSBiaXRzKSwgdXNlIGEgY29tcGFyZV9leGNoYW5nZSBsb29wIHRvIGRvIGl0LgorICAgIGlmICghTVVURVhfQ09VTlRFUl9CSVRTX0lTX1pFUk8ob2xkX3N0YXRlKSkgeworICAgICAgICAvLyBXZSBzdGlsbCBvd24gdGhlIG11dGV4LCBzbyBhIHJlbGVhc2UgZmVuY2UgaXMgbm90IG5lZWRlZC4KKyAgICAgICAgYXRvbWljX2ZldGNoX3N1Yl9leHBsaWNpdCgmbXV0ZXgtPnN0YXRlLCBNVVRFWF9DT1VOVEVSX0JJVFNfT05FLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIC8vIFRoZSBjb3VudGVyIGlzIDAsIHNvIHdlJ2FyZSBnb2luZyB0byB1bmxvY2sgdGhlIG11dGV4IGJ5IHJlc2V0dGluZyBpdHMKKyAgICAvLyBzdGF0ZSB0byB1bmxvY2tlZCwgd2UgbmVlZCB0byBwZXJmb3JtIGEgYXRvbWljX2V4Y2hhbmdlIGlub3JkZXIgdG8gcmVhZAorICAgIC8vIHRoZSBjdXJyZW50IHN0YXRlLCB3aGljaCB3aWxsIGJlIGxvY2tlZF9jb250ZW5kZWQgaWYgdGhlcmUgbWF5IGhhdmUgd2FpdGVycworICAgIC8vIHRvIGF3YWtlLgorICAgIC8vIEEgcmVsZWFzZSBmZW5jZSBpcyByZXF1aXJlZCB0byBtYWtlIHByZXZpb3VzIHN0b3JlcyB2aXNpYmxlIHRvIG5leHQKKyAgICAvLyBsb2NrIG93bmVyIHRocmVhZHMuCisgICAgYXRvbWljX3N0b3JlX2V4cGxpY2l0KCZtdXRleC0+b3duZXJfdGlkLCAwLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgY29uc3QgdWludDE2X3QgdW5sb2NrZWQgPSBtdHlwZSB8IHNoYXJlZCB8IE1VVEVYX1NUQVRFX0JJVFNfVU5MT0NLRUQ7CisgICAgb2xkX3N0YXRlID0gYXRvbWljX2V4Y2hhbmdlX2V4cGxpY2l0KCZtdXRleC0+c3RhdGUsIHVubG9ja2VkLCBtZW1vcnlfb3JkZXJfcmVsZWFzZSk7CisgICAgaWYgKE1VVEVYX1NUQVRFX0JJVFNfSVNfTE9DS0VEX0NPTlRFTkRFRChvbGRfc3RhdGUpKSB7CisgICAgICAgIF9fZnV0ZXhfd2FrZV9leCgmbXV0ZXgtPnN0YXRlLCBzaGFyZWQsIDEpOworICAgIH0KKworICAgIHJldHVybiAwOworfQorCitpbnQgcHRocmVhZF9tdXRleF90cnlsb2NrKHB0aHJlYWRfbXV0ZXhfdCogbXV0ZXhfaW50ZXJmYWNlKSB7CisgICAgcHRocmVhZF9tdXRleF9pbnRlcm5hbF90KiBtdXRleCA9IF9fZ2V0X2ludGVybmFsX211dGV4KG11dGV4X2ludGVyZmFjZSk7CisKKyAgICB1aW50MTZfdCBvbGRfc3RhdGUgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmbXV0ZXgtPnN0YXRlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgdWludDE2X3QgbXR5cGUgID0gKG9sZF9zdGF0ZSAmIE1VVEVYX1RZUEVfTUFTSyk7CisgICAgdWludDE2X3Qgc2hhcmVkID0gKG9sZF9zdGF0ZSAmIE1VVEVYX1NIQVJFRF9NQVNLKTsKKworICAgIGNvbnN0IHVpbnQxNl90IHVubG9ja2VkICAgICAgICAgICA9IG10eXBlIHwgc2hhcmVkIHwgTVVURVhfU1RBVEVfQklUU19VTkxPQ0tFRDsKKyAgICBjb25zdCB1aW50MTZfdCBsb2NrZWRfdW5jb250ZW5kZWQgPSBtdHlwZSB8IHNoYXJlZCB8IE1VVEVYX1NUQVRFX0JJVFNfTE9DS0VEX1VOQ09OVEVOREVEOworCisgICAgLy8gSGFuZGxlIGNvbW1vbiBjYXNlIGZpcnN0LgorICAgIGlmIChfX3ByZWRpY3RfdHJ1ZShtdHlwZSA9PSBNVVRFWF9UWVBFX0JJVFNfTk9STUFMKSkgeworICAgICAgICByZXR1cm4gX19wdGhyZWFkX25vcm1hbF9tdXRleF90cnlsb2NrKG11dGV4LCBzaGFyZWQpOworICAgIH0KKworICAgIC8vIERvIHdlIGFscmVhZHkgb3duIHRoaXMgcmVjdXJzaXZlIG9yIGVycm9yLWNoZWNrIG11dGV4PworICAgIHBpZF90IHRpZCA9IF9fZ2V0X3RocmVhZCgpLT50aWQ7CisgICAgaWYgKHRpZCA9PSBhdG9taWNfbG9hZF9leHBsaWNpdCgmbXV0ZXgtPm93bmVyX3RpZCwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpKSB7CisgICAgICAgIGlmIChtdHlwZSA9PSBNVVRFWF9UWVBFX0JJVFNfRVJST1JDSEVDSykgeworICAgICAgICAgICAgcmV0dXJuIEVCVVNZOworICAgICAgICB9CisgICAgICAgIHJldHVybiBfX3JlY3Vyc2l2ZV9pbmNyZW1lbnQobXV0ZXgsIG9sZF9zdGF0ZSk7CisgICAgfQorCisgICAgLy8gU2FtZSBhcyBwdGhyZWFkX211dGV4X2xvY2ssIGV4Y2VwdCB0aGF0IHdlIGRvbid0IHdhbnQgdG8gd2FpdCwgYW5kCisgICAgLy8gdGhlIG9ubHkgb3BlcmF0aW9uIHRoYXQgY2FuIHN1Y2NlZWQgaXMgYSBzaW5nbGUgY29tcGFyZV9leGNoYW5nZSB0byBhY3F1aXJlIHRoZQorICAgIC8vIGxvY2sgaWYgaXQgaXMgcmVsZWFzZWQgLyBub3Qgb3duZWQgYnkgYW55b25lLiBObyBuZWVkIGZvciBhIGNvbXBsZXggbG9vcC4KKyAgICAvLyBJZiBleGNoYW5nZWQgc3VjY2Vzc2Z1bGx5LCBhbiBhY3F1aXJlIGZlbmNlIGlzIHJlcXVpcmVkIHRvIG1ha2UKKyAgICAvLyBhbGwgbWVtb3J5IGFjY2Vzc2VzIG1hZGUgYnkgb3RoZXIgdGhyZWFkcyB2aXNpYmxlIHRvIHRoZSBjdXJyZW50IENQVS4KKyAgICBvbGRfc3RhdGUgPSB1bmxvY2tlZDsKKyAgICBpZiAoX19wcmVkaWN0X3RydWUoYXRvbWljX2NvbXBhcmVfZXhjaGFuZ2Vfc3Ryb25nX2V4cGxpY2l0KCZtdXRleC0+c3RhdGUsICZvbGRfc3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NrZWRfdW5jb250ZW5kZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfb3JkZXJfYWNxdWlyZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lbW9yeV9vcmRlcl9yZWxheGVkKSkpIHsKKyAgICAgICAgYXRvbWljX3N0b3JlX2V4cGxpY2l0KCZtdXRleC0+b3duZXJfdGlkLCB0aWQsIG1lbW9yeV9vcmRlcl9yZWxheGVkKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQogICAgIHJldHVybiBFQlVTWTsKIH0KIAotc3RhdGljIGludCBfX3B0aHJlYWRfbXV0ZXhfdGltZWRsb2NrKHB0aHJlYWRfbXV0ZXhfdCogbXV0ZXgsIGNvbnN0IHRpbWVzcGVjKiBhYnNfdGltZW91dCwgY2xvY2tpZF90IGNsb2NrKSB7Ci0gIHRpbWVzcGVjIHRzOwotCi0gIGludCBtdmFsdWUgPSBtdXRleC0+dmFsdWU7Ci0gIGludCBtdHlwZSAgPSAobXZhbHVlICYgTVVURVhfVFlQRV9NQVNLKTsKLSAgaW50IHNoYXJlZCA9IChtdmFsdWUgJiBNVVRFWF9TSEFSRURfTUFTSyk7Ci0KLSAgLy8gSGFuZGxlIGNvbW1vbiBjYXNlIGZpcnN0LgotICBpZiAoX19wcmVkaWN0X3RydWUobXR5cGUgPT0gTVVURVhfVFlQRV9CSVRTX05PUk1BTCkpIHsKLSAgICBjb25zdCBpbnQgdW5sb2NrZWQgICAgICAgICAgID0gc2hhcmVkIHwgTVVURVhfU1RBVEVfQklUU19VTkxPQ0tFRDsKLSAgICBjb25zdCBpbnQgbG9ja2VkX3VuY29udGVuZGVkID0gc2hhcmVkIHwgTVVURVhfU1RBVEVfQklUU19MT0NLRURfVU5DT05URU5ERUQ7Ci0gICAgY29uc3QgaW50IGxvY2tlZF9jb250ZW5kZWQgICA9IHNoYXJlZCB8IE1VVEVYX1NUQVRFX0JJVFNfTE9DS0VEX0NPTlRFTkRFRDsKLQotICAgIC8vIEZhc3QgcGF0aCBmb3IgdW5jb250ZW5kZWQgbG9jay4gTm90ZTogTVVURVhfVFlQRV9CSVRTX05PUk1BTCBpcyAwLgotICAgIGlmIChfX2Jpb25pY19jbXB4Y2hnKHVubG9ja2VkLCBsb2NrZWRfdW5jb250ZW5kZWQsICZtdXRleC0+dmFsdWUpID09IDApIHsKLSAgICAgIEFORFJPSURfTUVNQkFSX0ZVTEwoKTsKLSAgICAgIHJldHVybiAwOwotICAgIH0KLQotICAgIC8vIExvb3Agd2hpbGUgbmVlZGVkLgotICAgIHdoaWxlIChfX2Jpb25pY19zd2FwKGxvY2tlZF9jb250ZW5kZWQsICZtdXRleC0+dmFsdWUpICE9IHVubG9ja2VkKSB7Ci0gICAgICBpZiAoX190aW1lc3BlY19mcm9tX2Fic29sdXRlKCZ0cywgYWJzX3RpbWVvdXQsIGNsb2NrKSA8IDApIHsKLSAgICAgICAgcmV0dXJuIEVUSU1FRE9VVDsKLSAgICAgIH0KLSAgICAgIF9fZnV0ZXhfd2FpdF9leCgmbXV0ZXgtPnZhbHVlLCBzaGFyZWQsIGxvY2tlZF9jb250ZW5kZWQsICZ0cyk7Ci0gICAgfQotICAgIEFORFJPSURfTUVNQkFSX0ZVTEwoKTsKLSAgICByZXR1cm4gMDsKLSAgfQotCi0gIC8vIERvIHdlIGFscmVhZHkgb3duIHRoaXMgcmVjdXJzaXZlIG9yIGVycm9yLWNoZWNrIG11dGV4PwotICBwaWRfdCB0aWQgPSBfX2dldF90aHJlYWQoKS0+dGlkOwotICBpZiAodGlkID09IE1VVEVYX09XTkVSX0ZST01fQklUUyhtdmFsdWUpKSB7Ci0gICAgcmV0dXJuIF9yZWN1cnNpdmVfaW5jcmVtZW50KG11dGV4LCBtdmFsdWUsIG10eXBlKTsKLSAgfQotCi0gIC8vIFRoZSBmb2xsb3dpbmcgaW1wbGVtZW50cyB0aGUgc2FtZSBsb29wIGFzIHB0aHJlYWRfbXV0ZXhfbG9ja19pbXBsCi0gIC8vIGJ1dCBhZGRzIGNoZWNrcyB0byBlbnN1cmUgdGhhdCB0aGUgb3BlcmF0aW9uIG5ldmVyIGV4Y2VlZHMgdGhlCi0gIC8vIGFic29sdXRlIGV4cGlyYXRpb24gdGltZS4KLSAgbXR5cGUgfD0gc2hhcmVkOwotCi0gIC8vIEZpcnN0IHRyeSBhIHF1aWNrIGxvY2suCi0gIGlmIChtdmFsdWUgPT0gbXR5cGUpIHsKLSAgICBtdmFsdWUgPSBNVVRFWF9PV05FUl9UT19CSVRTKHRpZCkgfCBtdHlwZSB8IE1VVEVYX1NUQVRFX0JJVFNfTE9DS0VEX1VOQ09OVEVOREVEOwotICAgIGlmIChfX3ByZWRpY3RfdHJ1ZShfX2Jpb25pY19jbXB4Y2hnKG10eXBlLCBtdmFsdWUsICZtdXRleC0+dmFsdWUpID09IDApKSB7Ci0gICAgICBBTkRST0lEX01FTUJBUl9GVUxMKCk7Ci0gICAgICByZXR1cm4gMDsKLSAgICB9Ci0gICAgbXZhbHVlID0gbXV0ZXgtPnZhbHVlOwotICB9Ci0KLSAgd2hpbGUgKHRydWUpIHsKLSAgICAvLyBJZiB0aGUgdmFsdWUgaXMgJ3VubG9ja2VkJywgdHJ5IHRvIGFjcXVpcmUgaXQgZGlyZWN0bHkuCi0gICAgLy8gTk9URTogcHV0IHN0YXRlIHRvIDIgc2luY2Ugd2Uga25vdyB0aGVyZSBpcyBjb250ZW50aW9uLgotICAgIGlmIChtdmFsdWUgPT0gbXR5cGUpIHsgLy8gVW5sb2NrZWQuCi0gICAgICBtdmFsdWUgPSBNVVRFWF9PV05FUl9UT19CSVRTKHRpZCkgfCBtdHlwZSB8IE1VVEVYX1NUQVRFX0JJVFNfTE9DS0VEX0NPTlRFTkRFRDsKLSAgICAgIGlmIChfX2Jpb25pY19jbXB4Y2hnKG10eXBlLCBtdmFsdWUsICZtdXRleC0+dmFsdWUpID09IDApIHsKLSAgICAgICAgQU5EUk9JRF9NRU1CQVJfRlVMTCgpOwotICAgICAgICByZXR1cm4gMDsKLSAgICAgIH0KLSAgICAgIC8vIFRoZSB2YWx1ZSBjaGFuZ2VkIGJlZm9yZSB3ZSBjb3VsZCBsb2NrIGl0LiBXZSBuZWVkIHRvIGNoZWNrCi0gICAgICAvLyB0aGUgdGltZSB0byBhdm9pZCBsaXZlbG9ja3MsIHJlbG9hZCB0aGUgdmFsdWUsIHRoZW4gbG9vcCBhZ2Fpbi4KLSAgICAgIGlmIChfX3RpbWVzcGVjX2Zyb21fYWJzb2x1dGUoJnRzLCBhYnNfdGltZW91dCwgY2xvY2spIDwgMCkgewotICAgICAgICByZXR1cm4gRVRJTUVET1VUOwotICAgICAgfQotCi0gICAgICBtdmFsdWUgPSBtdXRleC0+dmFsdWU7Ci0gICAgICBjb250aW51ZTsKLSAgICB9Ci0KLSAgICAvLyBUaGUgdmFsdWUgaXMgbG9ja2VkLiBJZiAndW5jb250ZW5kZWQnLCB0cnkgdG8gc3dpdGNoIGl0cyBzdGF0ZQotICAgIC8vIHRvICdjb250ZW50ZWQnIHRvIGVuc3VyZSB3ZSBnZXQgd29rZW4gdXAgbGF0ZXIuCi0gICAgaWYgKE1VVEVYX1NUQVRFX0JJVFNfSVNfTE9DS0VEX1VOQ09OVEVOREVEKG12YWx1ZSkpIHsKLSAgICAgIGludCBuZXd2YWwgPSBNVVRFWF9TVEFURV9CSVRTX0ZMSVBfQ09OVEVOVElPTihtdmFsdWUpOwotICAgICAgaWYgKF9fYmlvbmljX2NtcHhjaGcobXZhbHVlLCBuZXd2YWwsICZtdXRleC0+dmFsdWUpICE9IDApIHsKLSAgICAgICAgLy8gVGhpcyBmYWlsZWQgYmVjYXVzZSB0aGUgdmFsdWUgY2hhbmdlZCwgcmVsb2FkIGl0LgotICAgICAgICBtdmFsdWUgPSBtdXRleC0+dmFsdWU7Ci0gICAgICB9IGVsc2UgewotICAgICAgICAvLyBUaGlzIHN1Y2NlZWRlZCwgdXBkYXRlIG12YWx1ZS4KLSAgICAgICAgbXZhbHVlID0gbmV3dmFsOwotICAgICAgfQotICAgIH0KLQotICAgIC8vIENoZWNrIHRpbWUgYW5kIHVwZGF0ZSAndHMnLgotICAgIGlmIChfX3RpbWVzcGVjX2Zyb21fYWJzb2x1dGUoJnRzLCBhYnNfdGltZW91dCwgY2xvY2spIDwgMCkgewotICAgICAgcmV0dXJuIEVUSU1FRE9VVDsKLSAgICB9Ci0KLSAgICAvLyBPbmx5IHdhaXQgdG8gYmUgd29rZW4gdXAgaWYgdGhlIHN0YXRlIGlzICcyJywgb3RoZXJ3aXNlIHdlJ2xsCi0gICAgLy8gc2ltcGx5IGxvb3AgcmlnaHQgbm93LiBUaGlzIGNhbiBoYXBwZW4gd2hlbiB0aGUgc2Vjb25kIGNtcHhjaGcKLSAgICAvLyBpbiBvdXIgbG9vcCBmYWlsZWQgYmVjYXVzZSB0aGUgbXV0ZXggd2FzIHVubG9ja2VkIGJ5IGFub3RoZXIgdGhyZWFkLgotICAgIGlmIChNVVRFWF9TVEFURV9CSVRTX0lTX0xPQ0tFRF9DT05URU5ERUQobXZhbHVlKSkgewotICAgICAgaWYgKF9fZnV0ZXhfd2FpdF9leCgmbXV0ZXgtPnZhbHVlLCBzaGFyZWQsIG12YWx1ZSwgJnRzKSA9PSAtRVRJTUVET1VUKSB7Ci0gICAgICAgIHJldHVybiBFVElNRURPVVQ7Ci0gICAgICB9Ci0gICAgICBtdmFsdWUgPSBtdXRleC0+dmFsdWU7Ci0gICAgfQotICB9Ci0gIC8qIE5PVFJFQUNIRUQgKi8KLX0KLQogI2lmICFkZWZpbmVkKF9fTFA2NF9fKQotZXh0ZXJuICJDIiBpbnQgcHRocmVhZF9tdXRleF9sb2NrX3RpbWVvdXRfbnAocHRocmVhZF9tdXRleF90KiBtdXRleCwgdW5zaWduZWQgbXMpIHsKLSAgdGltZXNwZWMgYWJzX3RpbWVvdXQ7Ci0gIGNsb2NrX2dldHRpbWUoQ0xPQ0tfTU9OT1RPTklDLCAmYWJzX3RpbWVvdXQpOwotICBhYnNfdGltZW91dC50dl9zZWMgICs9IG1zIC8gMTAwMDsKLSAgYWJzX3RpbWVvdXQudHZfbnNlYyArPSAobXMgJSAxMDAwKSAqIDEwMDAwMDA7Ci0gIGlmIChhYnNfdGltZW91dC50dl9uc2VjID49IDEwMDAwMDAwMDApIHsKLSAgICBhYnNfdGltZW91dC50dl9zZWMrKzsKLSAgICBhYnNfdGltZW91dC50dl9uc2VjIC09IDEwMDAwMDAwMDA7Ci0gIH0KK2V4dGVybiAiQyIgaW50IHB0aHJlYWRfbXV0ZXhfbG9ja190aW1lb3V0X25wKHB0aHJlYWRfbXV0ZXhfdCogbXV0ZXhfaW50ZXJmYWNlLCB1bnNpZ25lZCBtcykgeworICAgIHRpbWVzcGVjIGFic190aW1lb3V0OworICAgIGNsb2NrX2dldHRpbWUoQ0xPQ0tfTU9OT1RPTklDLCAmYWJzX3RpbWVvdXQpOworICAgIGFic190aW1lb3V0LnR2X3NlYyAgKz0gbXMgLyAxMDAwOworICAgIGFic190aW1lb3V0LnR2X25zZWMgKz0gKG1zICUgMTAwMCkgKiAxMDAwMDAwOworICAgIGlmIChhYnNfdGltZW91dC50dl9uc2VjID49IE5TX1BFUl9TKSB7CisgICAgICAgIGFic190aW1lb3V0LnR2X3NlYysrOworICAgICAgICBhYnNfdGltZW91dC50dl9uc2VjIC09IE5TX1BFUl9TOworICAgIH0KIAotICBpbnQgZXJyb3IgPSBfX3B0aHJlYWRfbXV0ZXhfdGltZWRsb2NrKG11dGV4LCAmYWJzX3RpbWVvdXQsIENMT0NLX01PTk9UT05JQyk7Ci0gIGlmIChlcnJvciA9PSBFVElNRURPVVQpIHsKLSAgICBlcnJvciA9IEVCVVNZOwotICB9Ci0gIHJldHVybiBlcnJvcjsKKyAgICBpbnQgZXJyb3IgPSBfX3B0aHJlYWRfbXV0ZXhfbG9ja193aXRoX3RpbWVvdXQoX19nZXRfaW50ZXJuYWxfbXV0ZXgobXV0ZXhfaW50ZXJmYWNlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmFic190aW1lb3V0LCBDTE9DS19NT05PVE9OSUMpOworICAgIGlmIChlcnJvciA9PSBFVElNRURPVVQpIHsKKyAgICAgICAgZXJyb3IgPSBFQlVTWTsKKyAgICB9CisgICAgcmV0dXJuIGVycm9yOwogfQogI2VuZGlmCiAKLWludCBwdGhyZWFkX211dGV4X3RpbWVkbG9jayhwdGhyZWFkX211dGV4X3QqIG11dGV4LCBjb25zdCB0aW1lc3BlYyogYWJzX3RpbWVvdXQpIHsKLSAgcmV0dXJuIF9fcHRocmVhZF9tdXRleF90aW1lZGxvY2sobXV0ZXgsIGFic190aW1lb3V0LCBDTE9DS19SRUFMVElNRSk7CitpbnQgcHRocmVhZF9tdXRleF90aW1lZGxvY2socHRocmVhZF9tdXRleF90KiBtdXRleF9pbnRlcmZhY2UsIGNvbnN0IHRpbWVzcGVjKiBhYnNfdGltZW91dCkgeworICAgIHJldHVybiBfX3B0aHJlYWRfbXV0ZXhfbG9ja193aXRoX3RpbWVvdXQoX19nZXRfaW50ZXJuYWxfbXV0ZXgobXV0ZXhfaW50ZXJmYWNlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFic190aW1lb3V0LCBDTE9DS19SRUFMVElNRSk7CiB9CiAKLWludCBwdGhyZWFkX211dGV4X2Rlc3Ryb3kocHRocmVhZF9tdXRleF90KiBtdXRleCkgewotICAvLyBVc2UgdHJ5bG9jayB0byBlbnN1cmUgdGhhdCB0aGUgbXV0ZXggaXMgdmFsaWQgYW5kIG5vdCBhbHJlYWR5IGxvY2tlZC4KLSAgaW50IGVycm9yID0gcHRocmVhZF9tdXRleF90cnlsb2NrKG11dGV4KTsKLSAgaWYgKGVycm9yICE9IDApIHsKLSAgICByZXR1cm4gZXJyb3I7Ci0gIH0KLSAgbXV0ZXgtPnZhbHVlID0gMHhkZWFkMTBjYzsKLSAgcmV0dXJuIDA7CitpbnQgcHRocmVhZF9tdXRleF9kZXN0cm95KHB0aHJlYWRfbXV0ZXhfdCogbXV0ZXhfaW50ZXJmYWNlKSB7CisgICAgLy8gVXNlIHRyeWxvY2sgdG8gZW5zdXJlIHRoYXQgdGhlIG11dGV4IGlzIHZhbGlkIGFuZCBub3QgYWxyZWFkeSBsb2NrZWQuCisgICAgaW50IGVycm9yID0gcHRocmVhZF9tdXRleF90cnlsb2NrKG11dGV4X2ludGVyZmFjZSk7CisgICAgaWYgKGVycm9yICE9IDApIHsKKyAgICAgICAgcmV0dXJuIGVycm9yOworICAgIH0KKyAgICByZXR1cm4gMDsKIH0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3B0aHJlYWRfb25jZS5jcHAgYi9saWJjL2Jpb25pYy9wdGhyZWFkX29uY2UuY3BwCmluZGV4IDZkOWQ3ZDEuLjc2ODhhMjMgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3B0aHJlYWRfb25jZS5jcHAKKysrIGIvbGliYy9iaW9uaWMvcHRocmVhZF9vbmNlLmNwcApAQCAtMjcsNzQgKzI3LDU5IEBACiAgKi8KIAogI2luY2x1ZGUgPHB0aHJlYWQuaD4KKyNpbmNsdWRlIDxzdGRhdG9taWMuaD4KIAotI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX2F0b21pY19pbmxpbmUuaCIKICNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19mdXRleC5oIgogCi0jZGVmaW5lIE9OQ0VfSU5JVElBTElaSU5HICAgICAgICAgICAoMSA8PCAwKQotI2RlZmluZSBPTkNFX0NPTVBMRVRFRCAgICAgICAgICAgICAgKDEgPDwgMSkKKyNkZWZpbmUgT05DRV9JTklUSUFMSVpBVElPTl9OT1RfWUVUX1NUQVJURUQgICAwCisjZGVmaW5lIE9OQ0VfSU5JVElBTElaQVRJT05fVU5ERVJXQVkgICAgICAgICAgMQorI2RlZmluZSBPTkNFX0lOSVRJQUxJWkFUSU9OX0NPTVBMRVRFICAgICAgICAgIDIKIAogLyogTk9URTogdGhpcyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHN1cHBvcnQgYSBpbml0IGZ1bmN0aW9uIHRoYXQgdGhyb3dzIGEgQysrIGV4Y2VwdGlvbgogICogICAgICAgb3IgY2FsbHMgZm9yaygpCiAgKi8KIGludCBwdGhyZWFkX29uY2UocHRocmVhZF9vbmNlX3QqIG9uY2VfY29udHJvbCwgdm9pZCAoKmluaXRfcm91dGluZSkodm9pZCkpIHsKLSAgdm9sYXRpbGUgcHRocmVhZF9vbmNlX3QqIG9uY2VfY29udHJvbF9wdHIgPSBvbmNlX2NvbnRyb2w7CisgIHN0YXRpY19hc3NlcnQoc2l6ZW9mKGF0b21pY19pbnQpID09IHNpemVvZihwdGhyZWFkX29uY2VfdCksCisgICAgICAgICAgICAgICAgInB0aHJlYWRfb25jZV90IHNob3VsZCBhY3R1YWxseSBiZSBhdG9taWNfaW50IGluIGltcGxlbWVudGF0aW9uLiIpOwogCi0gIC8vIFBUSFJFQURfT05DRV9JTklUIGlzIDAsIHdlIHVzZSB0aGUgZm9sbG93aW5nIGJpdCBmbGFncwotICAvLyAgIGJpdCAwIHNldCAgLT4gaW5pdGlhbGl6YXRpb24gaXMgdW5kZXIgd2F5Ci0gIC8vICAgYml0IDEgc2V0ICAtPiBpbml0aWFsaXphdGlvbiBpcyBjb21wbGV0ZQorICAvLyBXZSBwcmVmZXIgY2FzdGluZyB0byBhdG9taWNfaW50IGluc3RlYWQgb2YgZGVjbGFyaW5nIHB0aHJlYWRfb25jZV90IHRvIGJlIGF0b21pY19pbnQgZGlyZWN0bHkuCisgIC8vIEJlY2F1c2UgdXNpbmcgdGhlIHNlY29uZCBtZXRob2QgcG9sbHV0ZXMgcHRocmVhZC5oLCBhbmQgY2F1c2VzIGFuIGVycm9yIHdoZW4gY29tcGlsaW5nIGxpYmN4eC4KKyAgYXRvbWljX2ludCogb25jZV9jb250cm9sX3B0ciA9IHJlaW50ZXJwcmV0X2Nhc3Q8YXRvbWljX2ludCo+KG9uY2VfY29udHJvbCk7CiAKICAgLy8gRmlyc3QgY2hlY2sgaWYgdGhlIG9uY2UgaXMgYWxyZWFkeSBpbml0aWFsaXplZC4gVGhpcyB3aWxsIGJlIHRoZSBjb21tb24KICAgLy8gY2FzZSBhbmQgd2Ugd2FudCB0byBtYWtlIHRoaXMgYXMgZmFzdCBhcyBwb3NzaWJsZS4gTm90ZSB0aGF0IHRoaXMgc3RpbGwKICAgLy8gcmVxdWlyZXMgYSBsb2FkX2FjcXVpcmUgb3BlcmF0aW9uIGhlcmUgdG8gZW5zdXJlIHRoYXQgYWxsIHRoZQogICAvLyBzdG9yZXMgcGVyZm9ybWVkIGJ5IHRoZSBpbml0aWFsaXphdGlvbiBmdW5jdGlvbiBhcmUgb2JzZXJ2YWJsZSBvbgogICAvLyB0aGlzIENQVSBhZnRlciB3ZSBleGl0LgotICBpZiAoX19wcmVkaWN0X3RydWUoKCpvbmNlX2NvbnRyb2xfcHRyICYgT05DRV9DT01QTEVURUQpICE9IDApKSB7Ci0gICAgQU5EUk9JRF9NRU1CQVJfRlVMTCgpOwotICAgIHJldHVybiAwOwotICB9CisgIGludCBvbGRfdmFsdWUgPSBhdG9taWNfbG9hZF9leHBsaWNpdChvbmNlX2NvbnRyb2xfcHRyLCBtZW1vcnlfb3JkZXJfYWNxdWlyZSk7CiAKICAgd2hpbGUgKHRydWUpIHsKLSAgICAvLyBUcnkgdG8gYXRvbWljYWxseSBzZXQgdGhlIElOSVRJQUxJWklORyBmbGFnLgotICAgIC8vIFRoaXMgcmVxdWlyZXMgYSBjbXB4Y2hnIGxvb3AsIGFuZCB3ZSBtYXkgbmVlZAotICAgIC8vIHRvIGV4aXQgcHJlbWF0dXJlbHkgaWYgd2UgZGV0ZWN0IHRoYXQKLSAgICAvLyBDT01QTEVURUQgaXMgbm93IHNldC4KLSAgICBpbnQzMl90ICBvbGRfdmFsdWUsIG5ld192YWx1ZTsKLQotICAgIGRvIHsKLSAgICAgIG9sZF92YWx1ZSA9ICpvbmNlX2NvbnRyb2xfcHRyOwotICAgICAgaWYgKChvbGRfdmFsdWUgJiBPTkNFX0NPTVBMRVRFRCkgIT0gMCkgewotICAgICAgICBicmVhazsKLSAgICAgIH0KLQotICAgICAgbmV3X3ZhbHVlID0gb2xkX3ZhbHVlIHwgT05DRV9JTklUSUFMSVpJTkc7Ci0gICAgfSB3aGlsZSAoX19iaW9uaWNfY21weGNoZyhvbGRfdmFsdWUsIG5ld192YWx1ZSwgb25jZV9jb250cm9sX3B0cikgIT0gMCk7Ci0KLSAgICBpZiAoKG9sZF92YWx1ZSAmIE9OQ0VfQ09NUExFVEVEKSAhPSAwKSB7Ci0gICAgICAvLyBXZSBkZXRlY3RlZCB0aGF0IENPTVBMRVRFRCB3YXMgc2V0IHdoaWxlIGluIG91ciBsb29wLgotICAgICAgQU5EUk9JRF9NRU1CQVJfRlVMTCgpOworICAgIGlmIChfX3ByZWRpY3RfdHJ1ZShvbGRfdmFsdWUgPT0gT05DRV9JTklUSUFMSVpBVElPTl9DT01QTEVURSkpIHsKICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIGlmICgob2xkX3ZhbHVlICYgT05DRV9JTklUSUFMSVpJTkcpID09IDApIHsKLSAgICAgIC8vIFdlIGdvdCB0aGVyZSBmaXJzdCwgd2UgY2FuIGp1bXAgb3V0IG9mIHRoZSBsb29wIHRvIGhhbmRsZSB0aGUgaW5pdGlhbGl6YXRpb24uCi0gICAgICBicmVhazsKKyAgICAvLyBUcnkgdG8gYXRvbWljYWxseSBzZXQgdGhlIGluaXRpYWxpemF0aW9uIHVuZGVyd2F5IGZsYWcuIFRoaXMgcmVxdWlyZXMgYSBjb21wYXJlIGV4Y2hhbmdlCisgICAgLy8gaW4gYSBsb29wLCBhbmQgd2UgbWF5IG5lZWQgdG8gZXhpdCBwcmVtYXR1cmVseSBpZiB0aGUgaW5pdGlhbGl6YXRpb24gaXMgY29tcGxldGUuCisgICAgaWYgKCFhdG9taWNfY29tcGFyZV9leGNoYW5nZV93ZWFrX2V4cGxpY2l0KG9uY2VfY29udHJvbF9wdHIsICZvbGRfdmFsdWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9OQ0VfSU5JVElBTElaQVRJT05fVU5ERVJXQVksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lbW9yeV9vcmRlcl9hY3F1aXJlLCBtZW1vcnlfb3JkZXJfYWNxdWlyZSkpIHsKKyAgICAgIGNvbnRpbnVlOwogICAgIH0KIAotICAgIC8vIEFub3RoZXIgdGhyZWFkIGlzIHJ1bm5pbmcgdGhlIGluaXRpYWxpemF0aW9uIGFuZCBoYXNuJ3QgY29tcGxldGVkCi0gICAgLy8geWV0LCBzbyB3YWl0IGZvciBpdCwgdGhlbiB0cnkgYWdhaW4uCisgICAgaWYgKG9sZF92YWx1ZSA9PSBPTkNFX0lOSVRJQUxJWkFUSU9OX05PVF9ZRVRfU1RBUlRFRCkgeworICAgICAgLy8gV2UgZ290IGhlcmUgZmlyc3QsIHdlIGNhbiBoYW5kbGUgdGhlIGluaXRpYWxpemF0aW9uLgorICAgICAgKCppbml0X3JvdXRpbmUpKCk7CisKKyAgICAgIC8vIERvIGEgc3RvcmVfcmVsZWFzZSBpbmRpY2F0aW5nIHRoYXQgaW5pdGlhbGl6YXRpb24gaXMgY29tcGxldGUuCisgICAgICBhdG9taWNfc3RvcmVfZXhwbGljaXQob25jZV9jb250cm9sX3B0ciwgT05DRV9JTklUSUFMSVpBVElPTl9DT01QTEVURSwgbWVtb3J5X29yZGVyX3JlbGVhc2UpOworCisgICAgICAvLyBXYWtlIHVwIGFueSB3YWl0ZXJzLCBpZiBhbnkuCisgICAgICBfX2Z1dGV4X3dha2VfZXgob25jZV9jb250cm9sX3B0ciwgMCwgSU5UX01BWCk7CisgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICAvLyBUaGUgaW5pdGlhbGl6YXRpb24gaXMgdW5kZXJ3YXksIHdhaXQgZm9yIGl0cyBmaW5pc2guCiAgICAgX19mdXRleF93YWl0X2V4KG9uY2VfY29udHJvbF9wdHIsIDAsIG9sZF92YWx1ZSwgTlVMTCk7CisgICAgb2xkX3ZhbHVlID0gYXRvbWljX2xvYWRfZXhwbGljaXQob25jZV9jb250cm9sX3B0ciwgbWVtb3J5X29yZGVyX2FjcXVpcmUpOwogICB9Ci0KLSAgLy8gQ2FsbCB0aGUgaW5pdGlhbGl6YXRpb24gZnVuY3Rpb24uCi0gICgqaW5pdF9yb3V0aW5lKSgpOwotCi0gIC8vIERvIGEgc3RvcmVfcmVsZWFzZSBpbmRpY2F0aW5nIHRoYXQgaW5pdGlhbGl6YXRpb24gaXMgY29tcGxldGUuCi0gIEFORFJPSURfTUVNQkFSX0ZVTEwoKTsKLSAgKm9uY2VfY29udHJvbF9wdHIgPSBPTkNFX0NPTVBMRVRFRDsKLQotICAvLyBXYWtlIHVwIGFueSB3YWl0ZXJzLCBpZiBhbnkuCi0gIF9fZnV0ZXhfd2FrZV9leChvbmNlX2NvbnRyb2xfcHRyLCAwLCBJTlRfTUFYKTsKLQotICByZXR1cm4gMDsKIH0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3B0aHJlYWRfcndsb2NrLmNwcCBiL2xpYmMvYmlvbmljL3B0aHJlYWRfcndsb2NrLmNwcAppbmRleCAwNjMxMzdiLi45MzQyMTBlIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9wdGhyZWFkX3J3bG9jay5jcHAKKysrIGIvbGliYy9iaW9uaWMvcHRocmVhZF9yd2xvY2suY3BwCkBAIC0yNyw5ICsyNywxMyBAQAogICovCiAKICNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN0ZGF0b21pYy5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgogCiAjaW5jbHVkZSAicHRocmVhZF9pbnRlcm5hbC5oIgogI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX2Z1dGV4LmgiCisjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfbG9jay5oIgorI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX3RpbWVfY29udmVyc2lvbnMuaCIKIAogLyogVGVjaG5pY2FsIG5vdGU6CiAgKgpAQCAtNTEsMzUgKzU1LDM5IEBACiAgKiAgLSBUaGlzIGltcGxlbWVudGF0aW9uIHdpbGwgcmV0dXJuIEVERUFETEsgaW4gIndyaXRlIGFmdGVyIHdyaXRlIiBhbmQgInJlYWQgYWZ0ZXIKICAqICAgIHdyaXRlIiBjYXNlcyBhbmQgd2lsbCBkZWFkbG9jayBpbiB3cml0ZSBhZnRlciByZWFkIGNhc2UuCiAgKgotICogVE9ETzogVkVSWSBDQVJFRlVMTFkgY29udmVydCB0aGlzIHRvIHVzZSBDKysxMSBhdG9taWNzIHdoZW4gcG9zc2libGUuIEFsbCB2b2xhdGlsZQotICogbWVtYmVycyBvZiBwdGhyZWFkX3J3bG9ja190IHNob3VsZCBiZSBjb252ZXJ0ZWQgdG8gYXRvbWljczw+IGFuZCBfX3N5bmNfYm9vbF9jb21wYXJlX2FuZF9zd2FwCi0gKiBzaG91bGQgYmUgY2hhbmdlZCB0byBjb21wYXJlX2V4Y2hhbmdlX3N0cm9uZyBhY2NvbXBhbmllZCBieSB0aGUgcHJvcGVyIG9yZGVyaW5nCi0gKiBjb25zdHJhaW50cyAoY29tbWVudHMgaGF2ZSBiZWVuIGFkZGVkIHdpdGggdGhlIGludGVuZGluZyBvcmRlcmluZyBhY3Jvc3MgdGhlIGNvZGUpLgotICoKLSAqIFRPRE86IEFzIGl0IHN0YW5kcyBub3csIHBlbmRpbmdfcmVhZGVycyBhbmQgcGVuZGluZ193cml0ZXJzIGNvdWxkIGJlIG1lcmdlZCBpbnRvIGEKLSAqIGEgc2luZ2xlIHdhaXRlcnMgdmFyaWFibGUuICBLZWVwaW5nIHRoZW0gc2VwYXJhdGUgYWRkcyBhIGJpdCBvZiBjbGFyaXR5IGFuZCBrZWVwcwotICogdGhlIGRvb3Igb3BlbiBmb3IgYSB3cml0ZXItYmlhc2VkIGltcGxlbWVudGF0aW9uLgotICoKICAqLwogCi0jZGVmaW5lIFJXTE9DS0FUVFJfREVGQVVMVCAgICAgMAotI2RlZmluZSBSV0xPQ0tBVFRSX1NIQVJFRF9NQVNLIDB4MDAxMAorLy8gQSByd2xvY2thdHRyIGlzIGltcGxlbWVudGVkIGFzIGEgMzItYml0IGludGVnZXIgd2hpY2ggaGFzIGZvbGxvd2luZyBmaWVsZHM6CisvLyAgYml0cyAgICBuYW1lICAgICAgICAgICAgICBkZXNjcmlwdGlvbgorLy8gICAxICAgICByd2xvY2tfa2luZCAgICAgICBoYXZlIHJ3bG9jayBwcmVmZXJlbmNlIGxpa2UgUFRIUkVBRF9SV0xPQ0tfUFJFRkVSX1JFQURFUl9OUC4KKy8vICAgMCAgICAgIHByb2Nlc3Nfc2hhcmVkICAgIHNldCB0byAxIGlmIHRoZSByd2xvY2sgaXMgc2hhcmVkIGJldHdlZW4gcHJvY2Vzc2VzLgogCi1zdGF0aWMgaW5saW5lIGJvb2wgcndsb2NrX2lzX3NoYXJlZChjb25zdCBwdGhyZWFkX3J3bG9ja190KiByd2xvY2spIHsKLSAgcmV0dXJuIHJ3bG9jay0+YXR0ciA9PSBQVEhSRUFEX1BST0NFU1NfU0hBUkVEOworI2RlZmluZSBSV0xPQ0tBVFRSX1BTSEFSRURfU0hJRlQgMAorI2RlZmluZSBSV0xPQ0tBVFRSX0tJTkRfU0hJRlQgICAgMQorCisjZGVmaW5lIFJXTE9DS0FUVFJfUFNIQVJFRF9NQVNLICAxCisjZGVmaW5lIFJXTE9DS0FUVFJfS0lORF9NQVNLICAgICAyCisjZGVmaW5lIFJXTE9DS0FUVFJfUkVTRVJWRURfTUFTSyAofjMpCisKK3N0YXRpYyBpbmxpbmUgX19hbHdheXNfaW5saW5lIF9fYWx3YXlzX2lubGluZSBib29sIF9fcndsb2NrYXR0cl9nZXRwc2hhcmVkKGNvbnN0IHB0aHJlYWRfcndsb2NrYXR0cl90KiBhdHRyKSB7CisgIHJldHVybiAoKmF0dHIgJiBSV0xPQ0tBVFRSX1BTSEFSRURfTUFTSykgPj4gUldMT0NLQVRUUl9QU0hBUkVEX1NISUZUOwogfQogCi1zdGF0aWMgYm9vbCB0aW1lc3BlY19mcm9tX2Fic29sdXRlKHRpbWVzcGVjKiByZWxfdGltZW91dCwgY29uc3QgdGltZXNwZWMqIGFic190aW1lb3V0KSB7Ci0gIGlmIChhYnNfdGltZW91dCAhPSBOVUxMKSB7Ci0gICAgaWYgKF9fdGltZXNwZWNfZnJvbV9hYnNvbHV0ZShyZWxfdGltZW91dCwgYWJzX3RpbWVvdXQsIENMT0NLX1JFQUxUSU1FKSA8IDApIHsKLSAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci0gIH0KLSAgcmV0dXJuIHRydWU7CitzdGF0aWMgaW5saW5lIF9fYWx3YXlzX2lubGluZSBfX2Fsd2F5c19pbmxpbmUgdm9pZCBfX3J3bG9ja2F0dHJfc2V0cHNoYXJlZChwdGhyZWFkX3J3bG9ja2F0dHJfdCogYXR0ciwgaW50IHBzaGFyZWQpIHsKKyAgKmF0dHIgPSAoKmF0dHIgJiB+UldMT0NLQVRUUl9QU0hBUkVEX01BU0spIHwgKHBzaGFyZWQgPDwgUldMT0NLQVRUUl9QU0hBUkVEX1NISUZUKTsKIH0KIAorc3RhdGljIGlubGluZSBfX2Fsd2F5c19pbmxpbmUgaW50IF9fcndsb2NrYXR0cl9nZXRraW5kKGNvbnN0IHB0aHJlYWRfcndsb2NrYXR0cl90KiBhdHRyKSB7CisgIHJldHVybiAoKmF0dHIgJiBSV0xPQ0tBVFRSX0tJTkRfTUFTSykgPj4gUldMT0NLQVRUUl9LSU5EX1NISUZUOworfQorCitzdGF0aWMgaW5saW5lIF9fYWx3YXlzX2lubGluZSB2b2lkIF9fcndsb2NrYXR0cl9zZXRraW5kKHB0aHJlYWRfcndsb2NrYXR0cl90KiBhdHRyLCBpbnQga2luZCkgeworICAqYXR0ciA9ICgqYXR0ciAmIH5SV0xPQ0tBVFRSX0tJTkRfTUFTSykgfCAoa2luZCA8PCBSV0xPQ0tBVFRSX0tJTkRfU0hJRlQpOworfQorCisKIGludCBwdGhyZWFkX3J3bG9ja2F0dHJfaW5pdChwdGhyZWFkX3J3bG9ja2F0dHJfdCogYXR0cikgewotICAqYXR0ciA9IFBUSFJFQURfUFJPQ0VTU19QUklWQVRFOworICAqYXR0ciA9IDA7CiAgIHJldHVybiAwOwogfQogCkBAIC04OCwxOTMgKzk2LDQxMiBAQAogICByZXR1cm4gMDsKIH0KIAoraW50IHB0aHJlYWRfcndsb2NrYXR0cl9nZXRwc2hhcmVkKGNvbnN0IHB0aHJlYWRfcndsb2NrYXR0cl90KiBhdHRyLCBpbnQqIHBzaGFyZWQpIHsKKyAgaWYgKF9fcndsb2NrYXR0cl9nZXRwc2hhcmVkKGF0dHIpKSB7CisgICAgKnBzaGFyZWQgPSBQVEhSRUFEX1BST0NFU1NfU0hBUkVEOworICB9IGVsc2UgeworICAgICpwc2hhcmVkID0gUFRIUkVBRF9QUk9DRVNTX1BSSVZBVEU7CisgIH0KKyAgcmV0dXJuIDA7Cit9CisKIGludCBwdGhyZWFkX3J3bG9ja2F0dHJfc2V0cHNoYXJlZChwdGhyZWFkX3J3bG9ja2F0dHJfdCogYXR0ciwgaW50IHBzaGFyZWQpIHsKICAgc3dpdGNoIChwc2hhcmVkKSB7CiAgICAgY2FzZSBQVEhSRUFEX1BST0NFU1NfUFJJVkFURToKKyAgICAgIF9fcndsb2NrYXR0cl9zZXRwc2hhcmVkKGF0dHIsIDApOworICAgICAgcmV0dXJuIDA7CiAgICAgY2FzZSBQVEhSRUFEX1BST0NFU1NfU0hBUkVEOgotICAgICAgKmF0dHIgPSBwc2hhcmVkOworICAgICAgX19yd2xvY2thdHRyX3NldHBzaGFyZWQoYXR0ciwgMSk7CiAgICAgICByZXR1cm4gMDsKICAgICBkZWZhdWx0OgogICAgICAgcmV0dXJuIEVJTlZBTDsKICAgfQogfQogCi1pbnQgcHRocmVhZF9yd2xvY2thdHRyX2dldHBzaGFyZWQoY29uc3QgcHRocmVhZF9yd2xvY2thdHRyX3QqIGF0dHIsIGludCogcHNoYXJlZCkgewotICAqcHNoYXJlZCA9ICphdHRyOworaW50IHB0aHJlYWRfcndsb2NrYXR0cl9nZXRraW5kX25wKGNvbnN0IHB0aHJlYWRfcndsb2NrYXR0cl90KiBhdHRyLCBpbnQqIHByZWYpIHsKKyAgKnByZWYgPSBfX3J3bG9ja2F0dHJfZ2V0a2luZChhdHRyKTsKICAgcmV0dXJuIDA7CiB9CiAKLWludCBwdGhyZWFkX3J3bG9ja19pbml0KHB0aHJlYWRfcndsb2NrX3QqIHJ3bG9jaywgY29uc3QgcHRocmVhZF9yd2xvY2thdHRyX3QqIGF0dHIpIHsKLSAgaWYgKGF0dHIgIT0gTlVMTCkgewotICAgIHN3aXRjaCAoKmF0dHIpIHsKLSAgICAgIGNhc2UgUFRIUkVBRF9QUk9DRVNTX1NIQVJFRDoKLSAgICAgIGNhc2UgUFRIUkVBRF9QUk9DRVNTX1BSSVZBVEU6Ci0gICAgICAgIHJ3bG9jay0+YXR0cj0gKmF0dHI7CitpbnQgcHRocmVhZF9yd2xvY2thdHRyX3NldGtpbmRfbnAocHRocmVhZF9yd2xvY2thdHRyX3QqIGF0dHIsIGludCBwcmVmKSB7CisgIHN3aXRjaCAocHJlZikgeworICAgIGNhc2UgUFRIUkVBRF9SV0xPQ0tfUFJFRkVSX1JFQURFUl9OUDogICAvLyBGYWxsIHRocm91Z2guCisgICAgY2FzZSBQVEhSRUFEX1JXTE9DS19QUkVGRVJfV1JJVEVSX05PTlJFQ1VSU0lWRV9OUDoKKyAgICAgIF9fcndsb2NrYXR0cl9zZXRraW5kKGF0dHIsIHByZWYpOworICAgICAgcmV0dXJuIDA7CisgICAgZGVmYXVsdDoKKyAgICAgIHJldHVybiBFSU5WQUw7CisgIH0KK30KKworLy8gQSByd2xvY2sgc3RhdGUgaXMgaW1wbGVtZW50ZWQgYXMgYSAzMi1iaXQgaW50ZWdlciB3aGljaCBoYXMgZm9sbG93aW5nIHJ1bGVzOgorLy8gIGJpdHMgICAgICBuYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb24KKy8vICAgMzEgICAgICBvd25lZF9ieV93cml0ZXJfZmxhZyAgICAgICAgICAgICAgc2V0IHRvIDEgaWYgdGhlIGxvY2sgaXMgb3duZWQgYnkgYSB3cml0ZXIgbm93LgorLy8gIDMwLTIgICAgIHJlYWRlcl9jb3VudCAgICAgICAgICAgICAgICAgICAgICB0aGUgY291bnQgb2YgcmVhZGVycyBob2xkaW5nIHRoZSBsb2NrLgorLy8gICAxICAgICAgIGhhdmVfcGVuZGluZ193cml0ZXJzICAgICAgICAgICAgICBzZXQgdG8gMSBpZiBoYXZpbmcgcGVuZGluZyB3cml0ZXJzLgorLy8gICAwICAgICAgIGhhdmVfcGVuZGluZ19yZWFkZXJzICAgICAgICAgICAgICBzZXQgdG8gMSBpZiBoYXZpbmcgcGVuZGluZyByZWFkZXJzLgorCisjZGVmaW5lIFNUQVRFX0hBVkVfUEVORElOR19SRUFERVJTX1NISUZUICAgIDAKKyNkZWZpbmUgU1RBVEVfSEFWRV9QRU5ESU5HX1dSSVRFUlNfU0hJRlQgICAgMQorI2RlZmluZSBTVEFURV9SRUFERVJfQ09VTlRfU0hJRlQgICAgICAgICAgICAyCisjZGVmaW5lIFNUQVRFX09XTkVEX0JZX1dSSVRFUl9TSElGVCAgICAgICAgMzEKKworI2RlZmluZSBTVEFURV9IQVZFX1BFTkRJTkdfUkVBREVSU19GTEFHICAgICAoMSA8PCBTVEFURV9IQVZFX1BFTkRJTkdfUkVBREVSU19TSElGVCkKKyNkZWZpbmUgU1RBVEVfSEFWRV9QRU5ESU5HX1dSSVRFUlNfRkxBRyAgICAgKDEgPDwgU1RBVEVfSEFWRV9QRU5ESU5HX1dSSVRFUlNfU0hJRlQpCisjZGVmaW5lIFNUQVRFX1JFQURFUl9DT1VOVF9DSEFOR0VfU1RFUCAgKDEgPDwgU1RBVEVfUkVBREVSX0NPVU5UX1NISUZUKQorI2RlZmluZSBTVEFURV9PV05FRF9CWV9XUklURVJfRkxBRyAgICAgICgxIDw8IFNUQVRFX09XTkVEX0JZX1dSSVRFUl9TSElGVCkKKworI2RlZmluZSBTVEFURV9IQVZFX1BFTkRJTkdfUkVBREVSU19PUl9XUklURVJTX0ZMQUcgXAorICAgICAgICAgIChTVEFURV9IQVZFX1BFTkRJTkdfUkVBREVSU19GTEFHIHwgU1RBVEVfSEFWRV9QRU5ESU5HX1dSSVRFUlNfRkxBRykKKworc3RydWN0IHB0aHJlYWRfcndsb2NrX2ludGVybmFsX3QgeworICBhdG9taWNfaW50IHN0YXRlOworICBhdG9taWNfaW50IHdyaXRlcl90aWQ7CisKKyAgYm9vbCBwc2hhcmVkOworICBib29sIHdyaXRlcl9ub25yZWN1cnNpdmVfcHJlZmVycmVkOworICB1aW50MTZfdCBfX3BhZDsKKworLy8gV2hlbiBhIHJlYWRlciB0aHJlYWQgcGxhbnMgdG8gc3VzcGVuZCBvbiB0aGUgcndsb2NrLCBpdCB3aWxsIGFkZCBTVEFURV9IQVZFX1BFTkRJTkdfUkVBREVSU19GTEFHCisvLyBpbiBzdGF0ZSwgaW5jcmVhc2UgcGVuZGluZ19yZWFkZXJfY291bnQsIGFuZCB3YWl0IG9uIHBlbmRpbmdfcmVhZGVyX3dha2V1cF9zZXJpYWwuIEFmdGVyIHdva2VuCisvLyB1cCwgdGhlIHJlYWRlciB0aHJlYWQgZGVjcmVhc2VzIHBlbmRpbmdfcmVhZGVyX2NvdW50LCBhbmQgdGhlIGxhc3QgcGVuZGluZyByZWFkZXIgdGhyZWFkIHNob3VsZAorLy8gcmVtb3ZlIFNUQVRFX0hBVkVfUEVORElOR19SRUFERVJTX0ZMQUcgaW4gc3RhdGUuIEEgcGVuZGluZyB3cml0ZXIgdGhyZWFkIHdvcmtzIGluIGEgc2ltaWxhciB3YXksCisvLyBleGNlcHQgdGhhdCBpdCB1c2VzIGZsYWcgYW5kIG1lbWJlcnMgZm9yIHdyaXRlciB0aHJlYWRzLgorCisgIExvY2sgcGVuZGluZ19sb2NrOyAgLy8gQWxsIHBlbmRpbmcgbWVtYmVycyBiZWxvdyBhcmUgcHJvdGVjdGVkIGJ5IHBlbmRpbmdfbG9jay4KKyAgdWludDMyX3QgcGVuZGluZ19yZWFkZXJfY291bnQ7ICAvLyBDb3VudCBvZiBwZW5kaW5nIHJlYWRlciB0aHJlYWRzLgorICB1aW50MzJfdCBwZW5kaW5nX3dyaXRlcl9jb3VudDsgIC8vIENvdW50IG9mIHBlbmRpbmcgd3JpdGVyIHRocmVhZHMuCisgIHVpbnQzMl90IHBlbmRpbmdfcmVhZGVyX3dha2V1cF9zZXJpYWw7ICAvLyBQZW5kaW5nIHJlYWRlciB0aHJlYWRzIHdhaXQgb24gdGhpcyBhZGRyZXNzIGJ5IGZ1dGV4X3dhaXQuCisgIHVpbnQzMl90IHBlbmRpbmdfd3JpdGVyX3dha2V1cF9zZXJpYWw7ICAvLyBQZW5kaW5nIHdyaXRlciB0aHJlYWRzIHdhaXQgb24gdGhpcyBhZGRyZXNzIGJ5IGZ1dGV4X3dhaXQuCisKKyNpZiBkZWZpbmVkKF9fTFA2NF9fKQorICBjaGFyIF9fcmVzZXJ2ZWRbMjBdOworI2Vsc2UKKyAgY2hhciBfX3Jlc2VydmVkWzRdOworI2VuZGlmCit9OworCitzdGF0aWMgaW5saW5lIF9fYWx3YXlzX2lubGluZSBib29sIF9fc3RhdGVfb3duZWRfYnlfd3JpdGVyKGludCBzdGF0ZSkgeworICByZXR1cm4gc3RhdGUgPCAwOworfQorCitzdGF0aWMgaW5saW5lIF9fYWx3YXlzX2lubGluZSBib29sIF9fc3RhdGVfb3duZWRfYnlfcmVhZGVycyhpbnQgc3RhdGUpIHsKKyAgLy8gSWYgc3RhdGUgPj0gMCwgdGhlIG93bmVkX2J5X3dyaXRlcl9mbGFnIGlzIG5vdCBzZXQuCisgIC8vIEFuZCBpZiBzdGF0ZSA+PSBTVEFURV9SRUFERVJfQ09VTlRfQ0hBTkdFX1NURVAsIHRoZSByZWFkZXJfY291bnQgZmllbGQgaXMgbm90IGVtcHR5LgorICByZXR1cm4gc3RhdGUgPj0gU1RBVEVfUkVBREVSX0NPVU5UX0NIQU5HRV9TVEVQOworfQorCitzdGF0aWMgaW5saW5lIF9fYWx3YXlzX2lubGluZSBib29sIF9fc3RhdGVfb3duZWRfYnlfcmVhZGVyc19vcl93cml0ZXIoaW50IHN0YXRlKSB7CisgIHJldHVybiBzdGF0ZSA8IDAgfHwgc3RhdGUgPj0gU1RBVEVfUkVBREVSX0NPVU5UX0NIQU5HRV9TVEVQOworfQorCitzdGF0aWMgaW5saW5lIF9fYWx3YXlzX2lubGluZSBpbnQgX19zdGF0ZV9hZGRfd3JpdGVyX2ZsYWcoaW50IHN0YXRlKSB7CisgIHJldHVybiBzdGF0ZSB8IFNUQVRFX09XTkVEX0JZX1dSSVRFUl9GTEFHOworfQorCitzdGF0aWMgaW5saW5lIF9fYWx3YXlzX2lubGluZSBib29sIF9fc3RhdGVfaXNfbGFzdF9yZWFkZXIoaW50IHN0YXRlKSB7CisgIHJldHVybiAoc3RhdGUgPj4gU1RBVEVfUkVBREVSX0NPVU5UX1NISUZUKSA9PSAxOworfQorCitzdGF0aWMgaW5saW5lIF9fYWx3YXlzX2lubGluZSBib29sIF9fc3RhdGVfaGF2ZV9wZW5kaW5nX3dyaXRlcnMoaW50IHN0YXRlKSB7CisgIHJldHVybiBzdGF0ZSAmIFNUQVRFX0hBVkVfUEVORElOR19XUklURVJTX0ZMQUc7Cit9CisKK3N0YXRpYyBpbmxpbmUgX19hbHdheXNfaW5saW5lIGJvb2wgX19zdGF0ZV9oYXZlX3BlbmRpbmdfcmVhZGVyc19vcl93cml0ZXJzKGludCBzdGF0ZSkgeworICByZXR1cm4gc3RhdGUgJiBTVEFURV9IQVZFX1BFTkRJTkdfUkVBREVSU19PUl9XUklURVJTX0ZMQUc7Cit9CisKK3N0YXRpY19hc3NlcnQoc2l6ZW9mKHB0aHJlYWRfcndsb2NrX3QpID09IHNpemVvZihwdGhyZWFkX3J3bG9ja19pbnRlcm5hbF90KSwKKyAgICAgICAgICAgICAgInB0aHJlYWRfcndsb2NrX3Qgc2hvdWxkIGFjdHVhbGx5IGJlIHB0aHJlYWRfcndsb2NrX2ludGVybmFsX3QgaW4gaW1wbGVtZW50YXRpb24uIik7CisKKy8vIEZvciBiaW5hcnkgY29tcGF0aWJpbGl0eSB3aXRoIG9sZCB2ZXJzaW9uIG9mIHB0aHJlYWRfcndsb2NrX3QsIHdlIGNhbid0IHVzZSBtb3JlIHN0cmljdAorLy8gYWxpZ25tZW50IHRoYW4gNC1ieXRlIGFsaWdubWVudC4KK3N0YXRpY19hc3NlcnQoYWxpZ25vZihwdGhyZWFkX3J3bG9ja190KSA9PSA0LAorICAgICAgICAgICAgICJwdGhyZWFkX3J3bG9ja190IHNob3VsZCBmdWxmaWxsIHRoZSBhbGlnbm1lbnQgcmVxdWlyZW1lbnQgb2YgcHRocmVhZF9yd2xvY2tfaW50ZXJuYWxfdC4iKTsKKworc3RhdGljIGlubGluZSBfX2Fsd2F5c19pbmxpbmUgcHRocmVhZF9yd2xvY2tfaW50ZXJuYWxfdCogX19nZXRfaW50ZXJuYWxfcndsb2NrKHB0aHJlYWRfcndsb2NrX3QqIHJ3bG9ja19pbnRlcmZhY2UpIHsKKyAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8cHRocmVhZF9yd2xvY2tfaW50ZXJuYWxfdCo+KHJ3bG9ja19pbnRlcmZhY2UpOworfQorCitpbnQgcHRocmVhZF9yd2xvY2tfaW5pdChwdGhyZWFkX3J3bG9ja190KiByd2xvY2tfaW50ZXJmYWNlLCBjb25zdCBwdGhyZWFkX3J3bG9ja2F0dHJfdCogYXR0cikgeworICBwdGhyZWFkX3J3bG9ja19pbnRlcm5hbF90KiByd2xvY2sgPSBfX2dldF9pbnRlcm5hbF9yd2xvY2socndsb2NrX2ludGVyZmFjZSk7CisKKyAgbWVtc2V0KHJ3bG9jaywgMCwgc2l6ZW9mKHB0aHJlYWRfcndsb2NrX2ludGVybmFsX3QpKTsKKworICBpZiAoX19wcmVkaWN0X2ZhbHNlKGF0dHIgIT0gTlVMTCkpIHsKKyAgICByd2xvY2stPnBzaGFyZWQgPSBfX3J3bG9ja2F0dHJfZ2V0cHNoYXJlZChhdHRyKTsKKyAgICBpbnQga2luZCA9IF9fcndsb2NrYXR0cl9nZXRraW5kKGF0dHIpOworICAgIHN3aXRjaCAoa2luZCkgeworICAgICAgY2FzZSBQVEhSRUFEX1JXTE9DS19QUkVGRVJfUkVBREVSX05QOgorICAgICAgICByd2xvY2stPndyaXRlcl9ub25yZWN1cnNpdmVfcHJlZmVycmVkID0gZmFsc2U7CisgICAgICAgIGJyZWFrOworICAgICAgY2FzZSBQVEhSRUFEX1JXTE9DS19QUkVGRVJfV1JJVEVSX05PTlJFQ1VSU0lWRV9OUDoKKyAgICAgICAgcndsb2NrLT53cml0ZXJfbm9ucmVjdXJzaXZlX3ByZWZlcnJlZCA9IHRydWU7CiAgICAgICAgIGJyZWFrOwogICAgICAgZGVmYXVsdDoKICAgICAgICAgcmV0dXJuIEVJTlZBTDsKICAgICB9CisgICAgaWYgKCgqYXR0ciAmIFJXTE9DS0FUVFJfUkVTRVJWRURfTUFTSykgIT0gMCkgeworICAgICAgcmV0dXJuIEVJTlZBTDsKKyAgICB9CiAgIH0KIAotICByd2xvY2stPnN0YXRlID0gMDsKLSAgcndsb2NrLT5wZW5kaW5nX3JlYWRlcnMgPSAwOwotICByd2xvY2stPnBlbmRpbmdfd3JpdGVycyA9IDA7Ci0gIHJ3bG9jay0+d3JpdGVyX3RocmVhZF9pZCA9IDA7Ci0KKyAgYXRvbWljX2luaXQoJnJ3bG9jay0+c3RhdGUsIDApOworICByd2xvY2stPnBlbmRpbmdfbG9jay5pbml0KHJ3bG9jay0+cHNoYXJlZCk7CiAgIHJldHVybiAwOwogfQogCi1pbnQgcHRocmVhZF9yd2xvY2tfZGVzdHJveShwdGhyZWFkX3J3bG9ja190KiByd2xvY2spIHsKLSAgaWYgKHJ3bG9jay0+c3RhdGUgIT0gMCkgeworaW50IHB0aHJlYWRfcndsb2NrX2Rlc3Ryb3kocHRocmVhZF9yd2xvY2tfdCogcndsb2NrX2ludGVyZmFjZSkgeworICBwdGhyZWFkX3J3bG9ja19pbnRlcm5hbF90KiByd2xvY2sgPSBfX2dldF9pbnRlcm5hbF9yd2xvY2socndsb2NrX2ludGVyZmFjZSk7CisKKyAgaWYgKGF0b21pY19sb2FkX2V4cGxpY2l0KCZyd2xvY2stPnN0YXRlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCkgIT0gMCkgewogICAgIHJldHVybiBFQlVTWTsKICAgfQogICByZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBfX3B0aHJlYWRfcndsb2NrX3RpbWVkcmRsb2NrKHB0aHJlYWRfcndsb2NrX3QqIHJ3bG9jaywgY29uc3QgdGltZXNwZWMqIGFic190aW1lb3V0KSB7Ci0gIGlmIChfX3ByZWRpY3RfZmFsc2UoX19nZXRfdGhyZWFkKCktPnRpZCA9PSByd2xvY2stPndyaXRlcl90aHJlYWRfaWQpKSB7CitzdGF0aWMgaW5saW5lIF9fYWx3YXlzX2lubGluZSBib29sIF9fY2FuX2FjcXVpcmVfcmVhZF9sb2NrKGludCBvbGRfc3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCB3cml0ZXJfbm9ucmVjdXJzaXZlX3ByZWZlcnJlZCkgeworICAvLyBJZiB3cml0ZXIgaXMgcHJlZmVycmVkIHdpdGggbm9ucmVjdXJzaXZlIHJlYWRlciwgd2UgcHJldmVudCBmdXJ0aGVyIHJlYWRlcnMgZnJvbSBhY3F1aXJpbmcKKyAgLy8gdGhlIGxvY2sgd2hlbiB0aGVyZSBhcmUgd3JpdGVycyB3YWl0aW5nIGZvciB0aGUgbG9jay4KKyAgYm9vbCBjYW5ub3RfYXBwbHkgPSBfX3N0YXRlX293bmVkX2J5X3dyaXRlcihvbGRfc3RhdGUpIHx8CisgICAgICAgICAgICAgICAgICAgICAgKHdyaXRlcl9ub25yZWN1cnNpdmVfcHJlZmVycmVkICYmIF9fc3RhdGVfaGF2ZV9wZW5kaW5nX3dyaXRlcnMob2xkX3N0YXRlKSk7CisgIHJldHVybiAhY2Fubm90X2FwcGx5OworfQorCitzdGF0aWMgaW5saW5lIF9fYWx3YXlzX2lubGluZSBpbnQgX19wdGhyZWFkX3J3bG9ja190cnlyZGxvY2socHRocmVhZF9yd2xvY2tfaW50ZXJuYWxfdCogcndsb2NrKSB7CisgIGludCBvbGRfc3RhdGUgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmcndsb2NrLT5zdGF0ZSwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOworCisgIHdoaWxlIChfX3ByZWRpY3RfdHJ1ZShfX2Nhbl9hY3F1aXJlX3JlYWRfbG9jayhvbGRfc3RhdGUsIHJ3bG9jay0+d3JpdGVyX25vbnJlY3Vyc2l2ZV9wcmVmZXJyZWQpKSkgeworCisgICAgaW50IG5ld19zdGF0ZSA9IG9sZF9zdGF0ZSArIFNUQVRFX1JFQURFUl9DT1VOVF9DSEFOR0VfU1RFUDsKKyAgICBpZiAoX19wcmVkaWN0X2ZhbHNlKCFfX3N0YXRlX293bmVkX2J5X3JlYWRlcnMobmV3X3N0YXRlKSkpIHsgLy8gSGFwcGVucyB3aGVuIHJlYWRlciBjb3VudCBvdmVyZmxvd3MuCisgICAgICByZXR1cm4gRUFHQUlOOworICAgIH0KKyAgICBpZiAoX19wcmVkaWN0X3RydWUoYXRvbWljX2NvbXBhcmVfZXhjaGFuZ2Vfd2Vha19leHBsaWNpdCgmcndsb2NrLT5zdGF0ZSwgJm9sZF9zdGF0ZSwgbmV3X3N0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lbW9yeV9vcmRlcl9hY3F1aXJlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCkpKSB7CisgICAgICByZXR1cm4gMDsKKyAgICB9CisgIH0KKyAgcmV0dXJuIEVCVVNZOworfQorCitzdGF0aWMgaW50IF9fcHRocmVhZF9yd2xvY2tfdGltZWRyZGxvY2socHRocmVhZF9yd2xvY2tfaW50ZXJuYWxfdCogcndsb2NrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRpbWVzcGVjKiBhYnNfdGltZW91dF9vcl9udWxsKSB7CisKKyAgaWYgKGF0b21pY19sb2FkX2V4cGxpY2l0KCZyd2xvY2stPndyaXRlcl90aWQsIG1lbW9yeV9vcmRlcl9yZWxheGVkKSA9PSBfX2dldF90aHJlYWQoKS0+dGlkKSB7CiAgICAgcmV0dXJuIEVERUFETEs7CiAgIH0KIAotICB0aW1lc3BlYyB0czsKLSAgdGltZXNwZWMqIHJlbF90aW1lb3V0ID0gKGFic190aW1lb3V0ID09IE5VTEwpID8gTlVMTCA6ICZ0czsKLSAgYm9vbCBkb25lID0gZmFsc2U7Ci0gIGRvIHsKLSAgICAvLyBUaGlzIGlzIGFjdHVhbGx5IGEgcmFjZSByZWFkIGFzIHRoZXJlJ3Mgbm90aGluZyB0aGF0IGd1YXJhbnRlZXMgdGhlIGF0b21pY2l0eSBvZiBpbnRlZ2VyCi0gICAgLy8gcmVhZHMgLyB3cml0ZXMuIEhvd2V2ZXIsIGluIHByYWN0aWNlIHRoaXMgIm5ldmVyIiBoYXBwZW5zIHNvIHVudGlsIHdlIHN3aXRjaCB0byBDKysxMSB0aGlzCi0gICAgLy8gc2hvdWxkIHdvcmsgZmluZS4gVGhlIHNhbWUgYXBwbGllcyBpbiB0aGUgb3RoZXIgcGxhY2VzIHRoaXMgaWRpb20gaXMgdXNlZC4KLSAgICBpbnQzMl90IGN1cl9zdGF0ZSA9IHJ3bG9jay0+c3RhdGU7ICAvLyBDKysxMSByZWxheGVkIGF0b21pYyByZWFkCi0gICAgaWYgKF9fcHJlZGljdF90cnVlKGN1cl9zdGF0ZSA+PSAwKSkgewotICAgICAgLy8gQWRkIGFzIGFuIGV4dHJhIHJlYWRlci4KLSAgICAgIGRvbmUgPSBfX3N5bmNfYm9vbF9jb21wYXJlX2FuZF9zd2FwKCZyd2xvY2stPnN0YXRlLCBjdXJfc3RhdGUsIGN1cl9zdGF0ZSArIDEpOyAgLy8gQysrMTEgbWVtb3J5X29yZGVyX2FxdWlyZQotICAgIH0gZWxzZSB7Ci0gICAgICBpZiAoIXRpbWVzcGVjX2Zyb21fYWJzb2x1dGUocmVsX3RpbWVvdXQsIGFic190aW1lb3V0KSkgewotICAgICAgICByZXR1cm4gRVRJTUVET1VUOwotICAgICAgfQotICAgICAgLy8gT3duZXIgaG9sZHMgaXQgaW4gd3JpdGUgbW9kZSwgaGFuZyB1cC4KLSAgICAgIC8vIFRvIGF2b2lkIGxvc2luZyB3YWtlIHVwcyB0aGUgcGVuZGluZ19yZWFkZXJzIHVwZGF0ZSBhbmQgdGhlIHN0YXRlIHJlYWQgc2hvdWxkIGJlCi0gICAgICAvLyBzZXF1ZW50aWFsbHkgY29uc2lzdGVudC4gKGN1cnJlbnRseSBlbmZvcmNlZCBieSBfX3N5bmNfZmV0Y2hfYW5kX2FkZCB3aGljaCBjcmVhdGVzIGEgZnVsbCBiYXJyaWVyKQotICAgICAgX19zeW5jX2ZldGNoX2FuZF9hZGQoJnJ3bG9jay0+cGVuZGluZ19yZWFkZXJzLCAxKTsgIC8vIEMrKzExIG1lbW9yeV9vcmRlcl9yZWxheGVkIChpZiB0aGUgZnV0ZXhfd2FpdCBlbnN1cmVzIHRoZSBvcmRlcmluZykKLSAgICAgIGludCByZXQgPSBfX2Z1dGV4X3dhaXRfZXgoJnJ3bG9jay0+c3RhdGUsIHJ3bG9ja19pc19zaGFyZWQocndsb2NrKSwgY3VyX3N0YXRlLCByZWxfdGltZW91dCk7Ci0gICAgICBfX3N5bmNfZmV0Y2hfYW5kX3N1Yigmcndsb2NrLT5wZW5kaW5nX3JlYWRlcnMsIDEpOyAgLy8gQysrMTEgbWVtb3J5X29yZGVyX3JlbGF4ZWQKLSAgICAgIGlmIChyZXQgPT0gLUVUSU1FRE9VVCkgeworICB3aGlsZSAodHJ1ZSkgeworICAgIGludCByZXQgPSBfX3B0aHJlYWRfcndsb2NrX3RyeXJkbG9jayhyd2xvY2spOworICAgIGlmIChyZXQgPT0gMCB8fCByZXQgPT0gRUFHQUlOKSB7CisgICAgICByZXR1cm4gcmV0OworICAgIH0KKworICAgIGludCBvbGRfc3RhdGUgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmcndsb2NrLT5zdGF0ZSwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOworICAgIGlmIChfX2Nhbl9hY3F1aXJlX3JlYWRfbG9jayhvbGRfc3RhdGUsIHJ3bG9jay0+d3JpdGVyX25vbnJlY3Vyc2l2ZV9wcmVmZXJyZWQpKSB7CisgICAgICBjb250aW51ZTsKKyAgICB9CisKKyAgICB0aW1lc3BlYyB0czsKKyAgICB0aW1lc3BlYyogcmVsX3RpbWVvdXQgPSBOVUxMOworCisgICAgaWYgKGFic190aW1lb3V0X29yX251bGwgIT0gTlVMTCkgeworICAgICAgcmVsX3RpbWVvdXQgPSAmdHM7CisgICAgICBpZiAoIXRpbWVzcGVjX2Zyb21fYWJzb2x1dGVfdGltZXNwZWMoKnJlbF90aW1lb3V0LCAqYWJzX3RpbWVvdXRfb3JfbnVsbCwgQ0xPQ0tfUkVBTFRJTUUpKSB7CiAgICAgICAgIHJldHVybiBFVElNRURPVVQ7CiAgICAgICB9CiAgICAgfQotICB9IHdoaWxlICghZG9uZSk7CiAKLSAgcmV0dXJuIDA7CisgICAgcndsb2NrLT5wZW5kaW5nX2xvY2subG9jaygpOworICAgIHJ3bG9jay0+cGVuZGluZ19yZWFkZXJfY291bnQrKzsKKworICAgIC8vIFdlIHJlbHkgb24gdGhlIGZhY3QgdGhhdCBhbGwgYXRvbWljIGV4Y2hhbmdlIG9wZXJhdGlvbnMgb24gdGhlIHNhbWUgb2JqZWN0IChoZXJlIGl0IGlzCisgICAgLy8gcndsb2NrLT5zdGF0ZSkgYWx3YXlzIGFwcGVhciB0byBvY2N1ciBpbiBhIHNpbmdsZSB0b3RhbCBvcmRlci4gSWYgdGhlIHBlbmRpbmcgZmxhZyBpcyBhZGRlZAorICAgIC8vIGJlZm9yZSB1bmxvY2tpbmcsIHRoZSB1bmxvY2tpbmcgdGhyZWFkIHdpbGwgd2FrZXVwIHRoZSB3YWl0ZXIuIE90aGVyd2lzZSwgd2Ugd2lsbCBzZWUgdGhlCisgICAgLy8gc3RhdGUgaXMgdW5sb2NrZWQgYW5kIHdpbGwgbm90IHdhaXQgYW55bW9yZS4KKyAgICBvbGRfc3RhdGUgPSBhdG9taWNfZmV0Y2hfb3JfZXhwbGljaXQoJnJ3bG9jay0+c3RhdGUsIFNUQVRFX0hBVkVfUEVORElOR19SRUFERVJTX0ZMQUcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lbW9yeV9vcmRlcl9yZWxheGVkKTsKKworICAgIGludCBvbGRfc2VyaWFsID0gcndsb2NrLT5wZW5kaW5nX3JlYWRlcl93YWtldXBfc2VyaWFsOworICAgIHJ3bG9jay0+cGVuZGluZ19sb2NrLnVubG9jaygpOworCisgICAgaW50IGZ1dGV4X3JldCA9IDA7CisgICAgaWYgKCFfX2Nhbl9hY3F1aXJlX3JlYWRfbG9jayhvbGRfc3RhdGUsIHJ3bG9jay0+d3JpdGVyX25vbnJlY3Vyc2l2ZV9wcmVmZXJyZWQpKSB7CisgICAgICBmdXRleF9yZXQgPSBfX2Z1dGV4X3dhaXRfZXgoJnJ3bG9jay0+cGVuZGluZ19yZWFkZXJfd2FrZXVwX3NlcmlhbCwgcndsb2NrLT5wc2hhcmVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9sZF9zZXJpYWwsIHJlbF90aW1lb3V0KTsKKyAgICB9CisKKyAgICByd2xvY2stPnBlbmRpbmdfbG9jay5sb2NrKCk7CisgICAgcndsb2NrLT5wZW5kaW5nX3JlYWRlcl9jb3VudC0tOworICAgIGlmIChyd2xvY2stPnBlbmRpbmdfcmVhZGVyX2NvdW50ID09IDApIHsKKyAgICAgIGF0b21pY19mZXRjaF9hbmRfZXhwbGljaXQoJnJ3bG9jay0+c3RhdGUsIH5TVEFURV9IQVZFX1BFTkRJTkdfUkVBREVSU19GTEFHLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgfQorICAgIHJ3bG9jay0+cGVuZGluZ19sb2NrLnVubG9jaygpOworCisgICAgaWYgKGZ1dGV4X3JldCA9PSAtRVRJTUVET1VUKSB7CisgICAgICByZXR1cm4gRVRJTUVET1VUOworICAgIH0KKyAgfQogfQogCi1zdGF0aWMgaW50IF9fcHRocmVhZF9yd2xvY2tfdGltZWR3cmxvY2socHRocmVhZF9yd2xvY2tfdCogcndsb2NrLCBjb25zdCB0aW1lc3BlYyogYWJzX3RpbWVvdXQpIHsKLSAgaW50IHRpZCA9IF9fZ2V0X3RocmVhZCgpLT50aWQ7Ci0gIGlmIChfX3ByZWRpY3RfZmFsc2UodGlkID09IHJ3bG9jay0+d3JpdGVyX3RocmVhZF9pZCkpIHsKK3N0YXRpYyBpbmxpbmUgX19hbHdheXNfaW5saW5lIGJvb2wgX19jYW5fYWNxdWlyZV93cml0ZV9sb2NrKGludCBvbGRfc3RhdGUpIHsKKyAgcmV0dXJuICFfX3N0YXRlX293bmVkX2J5X3JlYWRlcnNfb3Jfd3JpdGVyKG9sZF9zdGF0ZSk7Cit9CisKK3N0YXRpYyBpbmxpbmUgX19hbHdheXNfaW5saW5lIGludCBfX3B0aHJlYWRfcndsb2NrX3RyeXdybG9jayhwdGhyZWFkX3J3bG9ja19pbnRlcm5hbF90KiByd2xvY2spIHsKKyAgaW50IG9sZF9zdGF0ZSA9IGF0b21pY19sb2FkX2V4cGxpY2l0KCZyd2xvY2stPnN0YXRlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisKKyAgd2hpbGUgKF9fcHJlZGljdF90cnVlKF9fY2FuX2FjcXVpcmVfd3JpdGVfbG9jayhvbGRfc3RhdGUpKSkgeworICAgIGlmIChfX3ByZWRpY3RfdHJ1ZShhdG9taWNfY29tcGFyZV9leGNoYW5nZV93ZWFrX2V4cGxpY2l0KCZyd2xvY2stPnN0YXRlLCAmb2xkX3N0YXRlLAorICAgICAgICAgIF9fc3RhdGVfYWRkX3dyaXRlcl9mbGFnKG9sZF9zdGF0ZSksIG1lbW9yeV9vcmRlcl9hY3F1aXJlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCkpKSB7CisKKyAgICAgIGF0b21pY19zdG9yZV9leHBsaWNpdCgmcndsb2NrLT53cml0ZXJfdGlkLCBfX2dldF90aHJlYWQoKS0+dGlkLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgICByZXR1cm4gMDsKKyAgICB9CisgIH0KKyAgcmV0dXJuIEVCVVNZOworfQorCitzdGF0aWMgaW50IF9fcHRocmVhZF9yd2xvY2tfdGltZWR3cmxvY2socHRocmVhZF9yd2xvY2tfaW50ZXJuYWxfdCogcndsb2NrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRpbWVzcGVjKiBhYnNfdGltZW91dF9vcl9udWxsKSB7CisKKyAgaWYgKGF0b21pY19sb2FkX2V4cGxpY2l0KCZyd2xvY2stPndyaXRlcl90aWQsIG1lbW9yeV9vcmRlcl9yZWxheGVkKSA9PSBfX2dldF90aHJlYWQoKS0+dGlkKSB7CiAgICAgcmV0dXJuIEVERUFETEs7CiAgIH0KKyAgd2hpbGUgKHRydWUpIHsKKyAgICBpbnQgcmV0ID0gX19wdGhyZWFkX3J3bG9ja190cnl3cmxvY2socndsb2NrKTsKKyAgICBpZiAocmV0ID09IDApIHsKKyAgICAgIHJldHVybiByZXQ7CisgICAgfQogCi0gIHRpbWVzcGVjIHRzOwotICB0aW1lc3BlYyogcmVsX3RpbWVvdXQgPSAoYWJzX3RpbWVvdXQgPT0gTlVMTCkgPyBOVUxMIDogJnRzOwotICBib29sIGRvbmUgPSBmYWxzZTsKLSAgZG8gewotICAgIGludDMyX3QgY3VyX3N0YXRlID0gcndsb2NrLT5zdGF0ZTsKLSAgICBpZiAoX19wcmVkaWN0X3RydWUoY3VyX3N0YXRlID09IDApKSB7Ci0gICAgICAvLyBDaGFuZ2Ugc3RhdGUgZnJvbSAwIHRvIC0xLgotICAgICAgZG9uZSA9ICBfX3N5bmNfYm9vbF9jb21wYXJlX2FuZF9zd2FwKCZyd2xvY2stPnN0YXRlLCAwIC8qIGN1ciBzdGF0ZSAqLywgLTEgLyogbmV3IHN0YXRlICovKTsgIC8vIEMrKzExIG1lbW9yeV9vcmRlcl9hcXVpcmUKLSAgICB9IGVsc2UgewotICAgICAgaWYgKCF0aW1lc3BlY19mcm9tX2Fic29sdXRlKHJlbF90aW1lb3V0LCBhYnNfdGltZW91dCkpIHsKLSAgICAgICAgcmV0dXJuIEVUSU1FRE9VVDsKLSAgICAgIH0KLSAgICAgIC8vIEZhaWxlZCB0byBhY3F1aXJlLCBoYW5nIHVwLgotICAgICAgLy8gVG8gYXZvaWQgbG9zaW5nIHdha2UgdXBzIHRoZSBwZW5kaW5nX3dyaXRlcnMgdXBkYXRlIGFuZCB0aGUgc3RhdGUgcmVhZCBzaG91bGQgYmUKLSAgICAgIC8vIHNlcXVlbnRpYWxseSBjb25zaXN0ZW50LiAoY3VycmVudGx5IGVuZm9yY2VkIGJ5IF9fc3luY19mZXRjaF9hbmRfYWRkIHdoaWNoIGNyZWF0ZXMgYSBmdWxsIGJhcnJpZXIpCi0gICAgICBfX3N5bmNfZmV0Y2hfYW5kX2FkZCgmcndsb2NrLT5wZW5kaW5nX3dyaXRlcnMsIDEpOyAgLy8gQysrMTEgbWVtb3J5X29yZGVyX3JlbGF4ZWQgKGlmIHRoZSBmdXRleF93YWl0IGVuc3VyZXMgdGhlIG9yZGVyaW5nKQotICAgICAgaW50IHJldCA9IF9fZnV0ZXhfd2FpdF9leCgmcndsb2NrLT5zdGF0ZSwgcndsb2NrX2lzX3NoYXJlZChyd2xvY2spLCBjdXJfc3RhdGUsIHJlbF90aW1lb3V0KTsKLSAgICAgIF9fc3luY19mZXRjaF9hbmRfc3ViKCZyd2xvY2stPnBlbmRpbmdfd3JpdGVycywgMSk7ICAvLyBDKysxMSBtZW1vcnlfb3JkZXJfcmVsYXhlZAotICAgICAgaWYgKHJldCA9PSAtRVRJTUVET1VUKSB7CisgICAgaW50IG9sZF9zdGF0ZSA9IGF0b21pY19sb2FkX2V4cGxpY2l0KCZyd2xvY2stPnN0YXRlLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgaWYgKF9fY2FuX2FjcXVpcmVfd3JpdGVfbG9jayhvbGRfc3RhdGUpKSB7CisgICAgICBjb250aW51ZTsKKyAgICB9CisKKyAgICB0aW1lc3BlYyB0czsKKyAgICB0aW1lc3BlYyogcmVsX3RpbWVvdXQgPSBOVUxMOworCisgICAgaWYgKGFic190aW1lb3V0X29yX251bGwgIT0gTlVMTCkgeworICAgICAgcmVsX3RpbWVvdXQgPSAmdHM7CisgICAgICBpZiAoIXRpbWVzcGVjX2Zyb21fYWJzb2x1dGVfdGltZXNwZWMoKnJlbF90aW1lb3V0LCAqYWJzX3RpbWVvdXRfb3JfbnVsbCwgQ0xPQ0tfUkVBTFRJTUUpKSB7CiAgICAgICAgIHJldHVybiBFVElNRURPVVQ7CiAgICAgICB9CiAgICAgfQotICB9IHdoaWxlICghZG9uZSk7CiAKLSAgcndsb2NrLT53cml0ZXJfdGhyZWFkX2lkID0gdGlkOwotICByZXR1cm4gMDsKKyAgICByd2xvY2stPnBlbmRpbmdfbG9jay5sb2NrKCk7CisgICAgcndsb2NrLT5wZW5kaW5nX3dyaXRlcl9jb3VudCsrOworCisgICAgb2xkX3N0YXRlID0gYXRvbWljX2ZldGNoX29yX2V4cGxpY2l0KCZyd2xvY2stPnN0YXRlLCBTVEFURV9IQVZFX1BFTkRJTkdfV1JJVEVSU19GTEFHLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisKKyAgICBpbnQgb2xkX3NlcmlhbCA9IHJ3bG9jay0+cGVuZGluZ193cml0ZXJfd2FrZXVwX3NlcmlhbDsKKyAgICByd2xvY2stPnBlbmRpbmdfbG9jay51bmxvY2soKTsKKworICAgIGludCBmdXRleF9yZXQgPSAwOworICAgIGlmICghX19jYW5fYWNxdWlyZV93cml0ZV9sb2NrKG9sZF9zdGF0ZSkpIHsKKyAgICAgIGZ1dGV4X3JldCA9IF9fZnV0ZXhfd2FpdF9leCgmcndsb2NrLT5wZW5kaW5nX3dyaXRlcl93YWtldXBfc2VyaWFsLCByd2xvY2stPnBzaGFyZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2xkX3NlcmlhbCwgcmVsX3RpbWVvdXQpOworICAgIH0KKworICAgIHJ3bG9jay0+cGVuZGluZ19sb2NrLmxvY2soKTsKKyAgICByd2xvY2stPnBlbmRpbmdfd3JpdGVyX2NvdW50LS07CisgICAgaWYgKHJ3bG9jay0+cGVuZGluZ193cml0ZXJfY291bnQgPT0gMCkgeworICAgICAgYXRvbWljX2ZldGNoX2FuZF9leHBsaWNpdCgmcndsb2NrLT5zdGF0ZSwgflNUQVRFX0hBVkVfUEVORElOR19XUklURVJTX0ZMQUcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lbW9yeV9vcmRlcl9yZWxheGVkKTsKKyAgICB9CisgICAgcndsb2NrLT5wZW5kaW5nX2xvY2sudW5sb2NrKCk7CisKKyAgICBpZiAoZnV0ZXhfcmV0ID09IC1FVElNRURPVVQpIHsKKyAgICAgIHJldHVybiBFVElNRURPVVQ7CisgICAgfQorICB9CiB9CiAKLWludCBwdGhyZWFkX3J3bG9ja19yZGxvY2socHRocmVhZF9yd2xvY2tfdCogcndsb2NrKSB7CitpbnQgcHRocmVhZF9yd2xvY2tfcmRsb2NrKHB0aHJlYWRfcndsb2NrX3QqIHJ3bG9ja19pbnRlcmZhY2UpIHsKKyAgcHRocmVhZF9yd2xvY2tfaW50ZXJuYWxfdCogcndsb2NrID0gX19nZXRfaW50ZXJuYWxfcndsb2NrKHJ3bG9ja19pbnRlcmZhY2UpOworICAvLyBBdm9pZCBzbG93aW5nIGRvd24gZmFzdCBwYXRoIG9mIHJkbG9jay4KKyAgaWYgKF9fcHJlZGljdF90cnVlKF9fcHRocmVhZF9yd2xvY2tfdHJ5cmRsb2NrKHJ3bG9jaykgPT0gMCkpIHsKKyAgICByZXR1cm4gMDsKKyAgfQogICByZXR1cm4gX19wdGhyZWFkX3J3bG9ja190aW1lZHJkbG9jayhyd2xvY2ssIE5VTEwpOwogfQogCi1pbnQgcHRocmVhZF9yd2xvY2tfdGltZWRyZGxvY2socHRocmVhZF9yd2xvY2tfdCogcndsb2NrLCBjb25zdCB0aW1lc3BlYyogYWJzX3RpbWVvdXQpIHsKK2ludCBwdGhyZWFkX3J3bG9ja190aW1lZHJkbG9jayhwdGhyZWFkX3J3bG9ja190KiByd2xvY2tfaW50ZXJmYWNlLCBjb25zdCB0aW1lc3BlYyogYWJzX3RpbWVvdXQpIHsKKyAgcHRocmVhZF9yd2xvY2tfaW50ZXJuYWxfdCogcndsb2NrID0gX19nZXRfaW50ZXJuYWxfcndsb2NrKHJ3bG9ja19pbnRlcmZhY2UpOworCiAgIHJldHVybiBfX3B0aHJlYWRfcndsb2NrX3RpbWVkcmRsb2NrKHJ3bG9jaywgYWJzX3RpbWVvdXQpOwogfQogCi1pbnQgcHRocmVhZF9yd2xvY2tfdHJ5cmRsb2NrKHB0aHJlYWRfcndsb2NrX3QqIHJ3bG9jaykgewotICBpbnQzMl90IGN1cl9zdGF0ZSA9IHJ3bG9jay0+c3RhdGU7Ci0gIGlmICgoY3VyX3N0YXRlID49IDApICYmCi0gICAgICBfX3N5bmNfYm9vbF9jb21wYXJlX2FuZF9zd2FwKCZyd2xvY2stPnN0YXRlLCBjdXJfc3RhdGUsIGN1cl9zdGF0ZSArIDEpKSB7ICAvLyBDKysxMSBtZW1vcnlfb3JkZXJfYWNxdWlyZQotICAgIHJldHVybiAwOwotICB9Ci0gIHJldHVybiBFQlVTWTsKK2ludCBwdGhyZWFkX3J3bG9ja190cnlyZGxvY2socHRocmVhZF9yd2xvY2tfdCogcndsb2NrX2ludGVyZmFjZSkgeworICByZXR1cm4gX19wdGhyZWFkX3J3bG9ja190cnlyZGxvY2soX19nZXRfaW50ZXJuYWxfcndsb2NrKHJ3bG9ja19pbnRlcmZhY2UpKTsKIH0KIAotaW50IHB0aHJlYWRfcndsb2NrX3dybG9jayhwdGhyZWFkX3J3bG9ja190KiByd2xvY2spIHsKK2ludCBwdGhyZWFkX3J3bG9ja193cmxvY2socHRocmVhZF9yd2xvY2tfdCogcndsb2NrX2ludGVyZmFjZSkgeworICBwdGhyZWFkX3J3bG9ja19pbnRlcm5hbF90KiByd2xvY2sgPSBfX2dldF9pbnRlcm5hbF9yd2xvY2socndsb2NrX2ludGVyZmFjZSk7CisgIC8vIEF2b2lkIHNsb3dpbmcgZG93biBmYXN0IHBhdGggb2Ygd3Jsb2NrLgorICBpZiAoX19wcmVkaWN0X3RydWUoX19wdGhyZWFkX3J3bG9ja190cnl3cmxvY2socndsb2NrKSA9PSAwKSkgeworICAgIHJldHVybiAwOworICB9CiAgIHJldHVybiBfX3B0aHJlYWRfcndsb2NrX3RpbWVkd3Jsb2NrKHJ3bG9jaywgTlVMTCk7CiB9CiAKLWludCBwdGhyZWFkX3J3bG9ja190aW1lZHdybG9jayhwdGhyZWFkX3J3bG9ja190KiByd2xvY2ssIGNvbnN0IHRpbWVzcGVjKiBhYnNfdGltZW91dCkgeworaW50IHB0aHJlYWRfcndsb2NrX3RpbWVkd3Jsb2NrKHB0aHJlYWRfcndsb2NrX3QqIHJ3bG9ja19pbnRlcmZhY2UsIGNvbnN0IHRpbWVzcGVjKiBhYnNfdGltZW91dCkgeworICBwdGhyZWFkX3J3bG9ja19pbnRlcm5hbF90KiByd2xvY2sgPSBfX2dldF9pbnRlcm5hbF9yd2xvY2socndsb2NrX2ludGVyZmFjZSk7CisKICAgcmV0dXJuIF9fcHRocmVhZF9yd2xvY2tfdGltZWR3cmxvY2socndsb2NrLCBhYnNfdGltZW91dCk7CiB9CiAKLWludCBwdGhyZWFkX3J3bG9ja190cnl3cmxvY2socHRocmVhZF9yd2xvY2tfdCogcndsb2NrKSB7Ci0gIGludCB0aWQgPSBfX2dldF90aHJlYWQoKS0+dGlkOwotICBpbnQzMl90IGN1cl9zdGF0ZSA9IHJ3bG9jay0+c3RhdGU7Ci0gIGlmICgoY3VyX3N0YXRlID09IDApICYmCi0gICAgICBfX3N5bmNfYm9vbF9jb21wYXJlX2FuZF9zd2FwKCZyd2xvY2stPnN0YXRlLCAwIC8qIGN1ciBzdGF0ZSAqLywgLTEgLyogbmV3IHN0YXRlICovKSkgeyAgLy8gQysrMTEgbWVtb3J5X29yZGVyX2FjcXVpcmUKLSAgICByd2xvY2stPndyaXRlcl90aHJlYWRfaWQgPSB0aWQ7Ci0gICAgcmV0dXJuIDA7Ci0gIH0KLSAgcmV0dXJuIEVCVVNZOworaW50IHB0aHJlYWRfcndsb2NrX3RyeXdybG9jayhwdGhyZWFkX3J3bG9ja190KiByd2xvY2tfaW50ZXJmYWNlKSB7CisgIHJldHVybiBfX3B0aHJlYWRfcndsb2NrX3RyeXdybG9jayhfX2dldF9pbnRlcm5hbF9yd2xvY2socndsb2NrX2ludGVyZmFjZSkpOwogfQogCitpbnQgcHRocmVhZF9yd2xvY2tfdW5sb2NrKHB0aHJlYWRfcndsb2NrX3QqIHJ3bG9ja19pbnRlcmZhY2UpIHsKKyAgcHRocmVhZF9yd2xvY2tfaW50ZXJuYWxfdCogcndsb2NrID0gX19nZXRfaW50ZXJuYWxfcndsb2NrKHJ3bG9ja19pbnRlcmZhY2UpOwogCi1pbnQgcHRocmVhZF9yd2xvY2tfdW5sb2NrKHB0aHJlYWRfcndsb2NrX3QqIHJ3bG9jaykgewotICBpbnQgdGlkID0gX19nZXRfdGhyZWFkKCktPnRpZDsKLSAgYm9vbCBkb25lID0gZmFsc2U7Ci0gIGRvIHsKLSAgICBpbnQzMl90IGN1cl9zdGF0ZSA9IHJ3bG9jay0+c3RhdGU7Ci0gICAgaWYgKGN1cl9zdGF0ZSA9PSAwKSB7CisgIGludCBvbGRfc3RhdGUgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmcndsb2NrLT5zdGF0ZSwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOworICBpZiAoX19zdGF0ZV9vd25lZF9ieV93cml0ZXIob2xkX3N0YXRlKSkgeworICAgIGlmIChhdG9taWNfbG9hZF9leHBsaWNpdCgmcndsb2NrLT53cml0ZXJfdGlkLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCkgIT0gX19nZXRfdGhyZWFkKCktPnRpZCkgewogICAgICAgcmV0dXJuIEVQRVJNOwogICAgIH0KLSAgICBpZiAoY3VyX3N0YXRlID09IC0xKSB7Ci0gICAgICBpZiAocndsb2NrLT53cml0ZXJfdGhyZWFkX2lkICE9IHRpZCkgewotICAgICAgICByZXR1cm4gRVBFUk07Ci0gICAgICB9Ci0gICAgICAvLyBXZSdyZSBubyBsb25nZXIgdGhlIG93bmVyLgotICAgICAgcndsb2NrLT53cml0ZXJfdGhyZWFkX2lkID0gMDsKLSAgICAgIC8vIENoYW5nZSBzdGF0ZSBmcm9tIC0xIHRvIDAuCi0gICAgICAvLyBXZSB1c2UgX19zeW5jX2Jvb2xfY29tcGFyZV9hbmRfc3dhcCB0byBhY2hpZXZlIHNlcXVlbnRpYWwgY29uc2lzdGVuY3kgb2YgdGhlIHN0YXRlIHN0b3JlIGFuZAotICAgICAgLy8gdGhlIGZvbGxvd2luZyBwZW5kaW5nWCBsb2Fkcy4gQSBzaW1wbGUgc3RvcmUgd2l0aCBtZW1vcnlfb3JkZXJfcmVsZWFzZSBzZW1hbnRpY3MKLSAgICAgIC8vIGlzIG5vdCBlbm91Z2ggdG8gZ3VhcmFudGVlIHRoYXQgdGhlIHBlbmRpbmdYIGxvYWRzIGFyZSBub3QgcmVvcmRlcmVkIGJlZm9yZSB0aGUKLSAgICAgIC8vIHN0b3JlICh3aGljaCBtYXkgbGVhZCB0byBhIGxvc3Qgd2FrZXVwKS4KLSAgICAgIF9fc3luY19ib29sX2NvbXBhcmVfYW5kX3N3YXAoICZyd2xvY2stPnN0YXRlLCAtMSAvKiBjdXIgc3RhdGUqLywgMCAvKiBuZXcgc3RhdGUgKi8pOyAgLy8gQysrMTEgbWF5YmUgbWVtb3J5X29yZGVyX3NlcV9jc3Q/Ci0KLSAgICAgIC8vIFdha2UgYW55IHdhaXRlcnMuCi0gICAgICBpZiAoX19wcmVkaWN0X2ZhbHNlKHJ3bG9jay0+cGVuZGluZ19yZWFkZXJzID4gMCB8fCByd2xvY2stPnBlbmRpbmdfd3JpdGVycyA+IDApKSB7Ci0gICAgICAgIF9fZnV0ZXhfd2FrZV9leCgmcndsb2NrLT5zdGF0ZSwgcndsb2NrX2lzX3NoYXJlZChyd2xvY2spLCBJTlRfTUFYKTsKLSAgICAgIH0KLSAgICAgIGRvbmUgPSB0cnVlOwotICAgIH0gZWxzZSB7IC8vIGN1cl9zdGF0ZSA+IDAKLSAgICAgIC8vIFJlZHVjZSBzdGF0ZSBieSAxLgotICAgICAgLy8gU2VlIHRoZSBjb21tZW50IGFib3ZlIG9uIHdoeSB3ZSBuZWVkIF9fc3luY19ib29sX2NvbXBhcmVfYW5kX3N3YXAuCi0gICAgICBkb25lID0gX19zeW5jX2Jvb2xfY29tcGFyZV9hbmRfc3dhcCgmcndsb2NrLT5zdGF0ZSwgY3VyX3N0YXRlLCBjdXJfc3RhdGUgLSAxKTsgIC8vIEMrKzExIG1heWJlIG1lbW9yeV9vcmRlcl9zZXFfY3N0PwotICAgICAgaWYgKGRvbmUgJiYgKGN1cl9zdGF0ZSAtIDEpID09IDApIHsKLSAgICAgICAgLy8gVGhlcmUgYXJlIG5vIG1vcmUgcmVhZGVycywgd2FrZSBhbnkgd2FpdGVycy4KLSAgICAgICAgaWYgKF9fcHJlZGljdF9mYWxzZShyd2xvY2stPnBlbmRpbmdfcmVhZGVycyA+IDAgfHwgcndsb2NrLT5wZW5kaW5nX3dyaXRlcnMgPiAwKSkgewotICAgICAgICAgIF9fZnV0ZXhfd2FrZV9leCgmcndsb2NrLT5zdGF0ZSwgcndsb2NrX2lzX3NoYXJlZChyd2xvY2spLCBJTlRfTUFYKTsKLSAgICAgICAgfQotICAgICAgfQorICAgIGF0b21pY19zdG9yZV9leHBsaWNpdCgmcndsb2NrLT53cml0ZXJfdGlkLCAwLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgb2xkX3N0YXRlID0gYXRvbWljX2ZldGNoX2FuZF9leHBsaWNpdCgmcndsb2NrLT5zdGF0ZSwgflNUQVRFX09XTkVEX0JZX1dSSVRFUl9GTEFHLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVtb3J5X29yZGVyX3JlbGVhc2UpOworICAgIGlmICghX19zdGF0ZV9oYXZlX3BlbmRpbmdfcmVhZGVyc19vcl93cml0ZXJzKG9sZF9zdGF0ZSkpIHsKKyAgICAgIHJldHVybiAwOwogICAgIH0KLSAgfSB3aGlsZSAoIWRvbmUpOwogCisgIH0gZWxzZSBpZiAoX19zdGF0ZV9vd25lZF9ieV9yZWFkZXJzKG9sZF9zdGF0ZSkpIHsKKyAgICBvbGRfc3RhdGUgPSBhdG9taWNfZmV0Y2hfc3ViX2V4cGxpY2l0KCZyd2xvY2stPnN0YXRlLCBTVEFURV9SRUFERVJfQ09VTlRfQ0hBTkdFX1NURVAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfb3JkZXJfcmVsZWFzZSk7CisgICAgaWYgKCFfX3N0YXRlX2lzX2xhc3RfcmVhZGVyKG9sZF9zdGF0ZSkgfHwgIV9fc3RhdGVfaGF2ZV9wZW5kaW5nX3JlYWRlcnNfb3Jfd3JpdGVycyhvbGRfc3RhdGUpKSB7CisgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgfSBlbHNlIHsKKyAgICByZXR1cm4gRVBFUk07CisgIH0KKworICAvLyBXYWtlIHVwIHBlbmRpbmcgcmVhZGVycyBvciB3cml0ZXJzLgorICByd2xvY2stPnBlbmRpbmdfbG9jay5sb2NrKCk7CisgIGlmIChyd2xvY2stPnBlbmRpbmdfd3JpdGVyX2NvdW50ICE9IDApIHsKKyAgICByd2xvY2stPnBlbmRpbmdfd3JpdGVyX3dha2V1cF9zZXJpYWwrKzsKKyAgICByd2xvY2stPnBlbmRpbmdfbG9jay51bmxvY2soKTsKKworICAgIF9fZnV0ZXhfd2FrZV9leCgmcndsb2NrLT5wZW5kaW5nX3dyaXRlcl93YWtldXBfc2VyaWFsLCByd2xvY2stPnBzaGFyZWQsIDEpOworCisgIH0gZWxzZSBpZiAocndsb2NrLT5wZW5kaW5nX3JlYWRlcl9jb3VudCAhPSAwKSB7CisgICAgcndsb2NrLT5wZW5kaW5nX3JlYWRlcl93YWtldXBfc2VyaWFsKys7CisgICAgcndsb2NrLT5wZW5kaW5nX2xvY2sudW5sb2NrKCk7CisKKyAgICBfX2Z1dGV4X3dha2VfZXgoJnJ3bG9jay0+cGVuZGluZ19yZWFkZXJfd2FrZXVwX3NlcmlhbCwgcndsb2NrLT5wc2hhcmVkLCBJTlRfTUFYKTsKKworICB9IGVsc2UgeworICAgIC8vIEl0IGhhcHBlbnMgd2hlbiB3YWl0ZXJzIGFyZSB3b2tlbiB1cCBieSB0aW1lb3V0LgorICAgIHJ3bG9jay0+cGVuZGluZ19sb2NrLnVubG9jaygpOworICB9CiAgIHJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvcHRocmVhZF9zZXRuYW1lX25wLmNwcCBiL2xpYmMvYmlvbmljL3B0aHJlYWRfc2V0bmFtZV9ucC5jcHAKaW5kZXggMWRkZjgxMC4uYmIxMTE0ZSAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvcHRocmVhZF9zZXRuYW1lX25wLmNwcAorKysgYi9saWJjL2Jpb25pYy9wdGhyZWFkX3NldG5hbWVfbnAuY3BwCkBAIC0zMCwxNCArMzAsMTQgQEAKIAogI2luY2x1ZGUgPGZjbnRsLmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4gLy8gRm9yIHNucHJpbnRmLgorI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPHN5cy9wcmN0bC5oPgogI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKLSNpbmNsdWRlICJwdGhyZWFkX2FjY2Vzc29yLmgiCi0jaW5jbHVkZSAicHRocmVhZF9pbnRlcm5hbC5oIgogI2luY2x1ZGUgInByaXZhdGUvRXJybm9SZXN0b3Jlci5oIgorI2luY2x1ZGUgInB0aHJlYWRfaW50ZXJuYWwuaCIKIAogLy8gVGhpcyB2YWx1ZSBpcyBub3QgZXhwb3J0ZWQgYnkga2VybmVsIGhlYWRlcnMuCiAjZGVmaW5lIE1BWF9UQVNLX0NPTU1fTEVOIDE2CkBAIC01NywxNyArNTcsMTUgQEAKICAgfQogCiAgIC8vIFdlIGhhdmUgdG8gY2hhbmdlIGFub3RoZXIgdGhyZWFkJ3MgbmFtZS4KLSAgcGlkX3QgdGlkID0gMDsKLSAgewotICAgIHB0aHJlYWRfYWNjZXNzb3IgdGhyZWFkKHQpOwotICAgIGlmICh0aHJlYWQuZ2V0KCkgPT0gTlVMTCkgewotICAgICAgcmV0dXJuIEVTUkNIOwotICAgIH0KLSAgICB0aWQgPSB0aHJlYWQtPnRpZDsKKyAgcHRocmVhZF9pbnRlcm5hbF90KiB0aHJlYWQgPSBfX3B0aHJlYWRfaW50ZXJuYWxfZmluZCh0KTsKKyAgaWYgKHRocmVhZCA9PSBOVUxMKSB7CisgICAgcmV0dXJuIEVOT0VOVDsKICAgfQorICBwaWRfdCB0aWQgPSB0aHJlYWQtPnRpZDsKKwogICBjaGFyIGNvbW1fbmFtZVtzaXplb2YoVEFTS19DT01NX0ZNVCkgKyA4XTsKICAgc25wcmludGYoY29tbV9uYW1lLCBzaXplb2YoY29tbV9uYW1lKSwgVEFTS19DT01NX0ZNVCwgdGlkKTsKLSAgaW50IGZkID0gb3Blbihjb21tX25hbWUsIE9fV1JPTkxZKTsKKyAgaW50IGZkID0gb3Blbihjb21tX25hbWUsIE9fQ0xPRVhFQyB8IE9fV1JPTkxZKTsKICAgaWYgKGZkID09IC0xKSB7CiAgICAgcmV0dXJuIGVycm5vOwogICB9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9wdGhyZWFkX3NldHNjaGVkcGFyYW0uY3BwIGIvbGliYy9iaW9uaWMvcHRocmVhZF9zZXRzY2hlZHBhcmFtLmNwcAppbmRleCA0MTljYzZmLi4wYWQ2OGJiIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9wdGhyZWFkX3NldHNjaGVkcGFyYW0uY3BwCisrKyBiL2xpYmMvYmlvbmljL3B0aHJlYWRfc2V0c2NoZWRwYXJhbS5jcHAKQEAgLTI5LDEzICsyOSwxMyBAQAogI2luY2x1ZGUgPGVycm5vLmg+CiAKICNpbmNsdWRlICJwcml2YXRlL0Vycm5vUmVzdG9yZXIuaCIKLSNpbmNsdWRlICJwdGhyZWFkX2FjY2Vzc29yLmgiCisjaW5jbHVkZSAicHRocmVhZF9pbnRlcm5hbC5oIgogCiBpbnQgcHRocmVhZF9zZXRzY2hlZHBhcmFtKHB0aHJlYWRfdCB0LCBpbnQgcG9saWN5LCBjb25zdCBzY2hlZF9wYXJhbSogcGFyYW0pIHsKICAgRXJybm9SZXN0b3JlciBlcnJub19yZXN0b3JlcjsKIAotICBwdGhyZWFkX2FjY2Vzc29yIHRocmVhZCh0KTsKLSAgaWYgKHRocmVhZC5nZXQoKSA9PSBOVUxMKSB7CisgIHB0aHJlYWRfaW50ZXJuYWxfdCogdGhyZWFkID0gX19wdGhyZWFkX2ludGVybmFsX2ZpbmQodCk7CisgIGlmICh0aHJlYWQgPT0gTlVMTCkgewogICAgIHJldHVybiBFU1JDSDsKICAgfQogCmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9wdHkuY3BwIGIvbGliYy9iaW9uaWMvcHR5LmNwcAppbmRleCA5OTVlMDA2Li4xYTM3ODQ3IDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9wdHkuY3BwCisrKyBiL2xpYmMvYmlvbmljL3B0eS5jcHAKQEAgLTI4LDEzICsyOCwyMCBAQAogCiAjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHB0eS5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8c3lzL2lvY3RsLmg+CiAjaW5jbHVkZSA8dGVybWlvcy5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHV0bXAuaD4KIAotaW50IGdldHB0KHZvaWQpIHsKKyNpbmNsdWRlICJwcml2YXRlL1RocmVhZExvY2FsQnVmZmVyLmgiCisKK3N0YXRpYyBUaHJlYWRMb2NhbEJ1ZmZlcjxjaGFyLCAzMj4gZ19wdHNuYW1lX3Rsc19idWZmZXI7CitzdGF0aWMgVGhyZWFkTG9jYWxCdWZmZXI8Y2hhciwgNjQ+IGdfdHR5bmFtZV90bHNfYnVmZmVyOworCitpbnQgZ2V0cHQoKSB7CiAgIHJldHVybiBwb3NpeF9vcGVucHQoT19SRFdSfE9fTk9DVFRZKTsKIH0KIApAQCAtNDcsOCArNTQsOSBAQAogfQogCiBjaGFyKiBwdHNuYW1lKGludCBmZCkgewotICBzdGF0aWMgY2hhciBidWZbNjRdOwotICByZXR1cm4gcHRzbmFtZV9yKGZkLCBidWYsIHNpemVvZihidWYpKSA9PSAwID8gYnVmIDogTlVMTDsKKyAgY2hhciogYnVmID0gZ19wdHNuYW1lX3Rsc19idWZmZXIuZ2V0KCk7CisgIGludCBlcnJvciA9IHB0c25hbWVfcihmZCwgYnVmLCBnX3B0c25hbWVfdGxzX2J1ZmZlci5zaXplKCkpOworICByZXR1cm4gKGVycm9yID09IDApID8gYnVmIDogTlVMTDsKIH0KIAogaW50IHB0c25hbWVfcihpbnQgZmQsIGNoYXIqIGJ1Ziwgc2l6ZV90IGxlbikgewpAQCAtNzIsOCArODAsOSBAQAogfQogCiBjaGFyKiB0dHluYW1lKGludCBmZCkgewotICBzdGF0aWMgY2hhciBidWZbNjRdOwotICByZXR1cm4gdHR5bmFtZV9yKGZkLCBidWYsIHNpemVvZihidWYpKSA9PSAwID8gYnVmIDogTlVMTDsKKyAgY2hhciogYnVmID0gZ190dHluYW1lX3Rsc19idWZmZXIuZ2V0KCk7CisgIGludCBlcnJvciA9IHR0eW5hbWVfcihmZCwgYnVmLCBnX3R0eW5hbWVfdGxzX2J1ZmZlci5zaXplKCkpOworICByZXR1cm4gKGVycm9yID09IDApID8gYnVmIDogTlVMTDsKIH0KIAogaW50IHR0eW5hbWVfcihpbnQgZmQsIGNoYXIqIGJ1Ziwgc2l6ZV90IGxlbikgewpAQCAtMTA1LDMgKzExNCw4MyBAQAogICBpbnQgdW5sb2NrID0gMDsKICAgcmV0dXJuIGlvY3RsKGZkLCBUSU9DU1BUTENLLCAmdW5sb2NrKTsKIH0KKworaW50IG9wZW5wdHkoaW50KiBtYXN0ZXIsIGludCogc2xhdmUsIGNoYXIqIG5hbWUsIGNvbnN0IHRlcm1pb3MqIHQsIGNvbnN0IHdpbnNpemUqIHdzKSB7CisgICptYXN0ZXIgPSBnZXRwdCgpOworICBpZiAoKm1hc3RlciA9PSAtMSkgeworICAgIHJldHVybiAtMTsKKyAgfQorCisgIGlmIChncmFudHB0KCptYXN0ZXIpID09IC0xIHx8IHVubG9ja3B0KCptYXN0ZXIpID09IC0xKSB7CisgICAgY2xvc2UoKm1hc3Rlcik7CisgICAgcmV0dXJuIC0xOworICB9CisKKyAgY2hhciBidWZbMzJdOworICBpZiAobmFtZSA9PSBOVUxMKSB7CisgICAgbmFtZSA9IGJ1ZjsKKyAgfQorICBpZiAocHRzbmFtZV9yKCptYXN0ZXIsIG5hbWUsIHNpemVvZihidWYpKSAhPSAwKSB7CisgICAgY2xvc2UoKm1hc3Rlcik7CisgICAgcmV0dXJuIC0xOworICB9CisKKyAgKnNsYXZlID0gb3BlbihuYW1lLCBPX1JEV1J8T19OT0NUVFkpOworICBpZiAoKnNsYXZlID09IC0xKSB7CisgICAgY2xvc2UoKm1hc3Rlcik7CisgICAgcmV0dXJuIC0xOworICB9CisKKyAgaWYgKHQgIT0gTlVMTCkgeworICAgIHRjc2V0YXR0cigqc2xhdmUsIFRDU0FGTFVTSCwgdCk7CisgIH0KKyAgaWYgKHdzICE9IE5VTEwpIHsKKyAgICBpb2N0bCgqc2xhdmUsIFRJT0NTV0lOU1osIHdzKTsKKyAgfQorCisgIHJldHVybiAwOworfQorCitpbnQgZm9ya3B0eShpbnQqIG1hc3RlciwgY2hhciogbmFtZSwgY29uc3QgdGVybWlvcyogdCwgY29uc3Qgd2luc2l6ZSogd3MpIHsKKyAgaW50IHNsYXZlOworICBpZiAob3BlbnB0eShtYXN0ZXIsICZzbGF2ZSwgbmFtZSwgdCwgd3MpID09IC0xKSB7CisgICAgcmV0dXJuIC0xOworICB9CisKKyAgcGlkX3QgcGlkID0gZm9yaygpOworICBpZiAocGlkID09IC0xKSB7CisgICAgY2xvc2UoKm1hc3Rlcik7CisgICAgY2xvc2Uoc2xhdmUpOworICAgIHJldHVybiAtMTsKKyAgfQorCisgIGlmIChwaWQgPT0gMCkgeworICAgIC8vIENoaWxkLgorICAgIGNsb3NlKCptYXN0ZXIpOworICAgIGlmIChsb2dpbl90dHkoc2xhdmUpID09IC0xKSB7CisgICAgICBfZXhpdCgxKTsKKyAgICB9CisgICAgcmV0dXJuIDA7CisgIH0KKworICAvLyBQYXJlbnQuCisgIGNsb3NlKHNsYXZlKTsKKyAgcmV0dXJuIHBpZDsKK30KKworaW50IGxvZ2luX3R0eShpbnQgZmQpIHsKKyAgc2V0c2lkKCk7CisKKyAgaWYgKGlvY3RsKGZkLCBUSU9DU0NUVFksIE5VTEwpID09IC0xKSB7CisgICAgcmV0dXJuIC0xOworICB9CisKKyAgZHVwMihmZCwgU1RESU5fRklMRU5PKTsKKyAgZHVwMihmZCwgU1RET1VUX0ZJTEVOTyk7CisgIGR1cDIoZmQsIFNUREVSUl9GSUxFTk8pOworICBpZiAoZmQgPiBTVERFUlJfRklMRU5PKSB7CisgICAgY2xvc2UoZmQpOworICB9CisKKyAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9wdXR1dGxpbmUuYyBiL2xpYmMvYmlvbmljL3B1dHV0bGluZS5jCmluZGV4IGM4NDI3ZjcuLjhjYmY0NzAgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3B1dHV0bGluZS5jCisrKyBiL2xpYmMvYmlvbmljL3B1dHV0bGluZS5jCkBAIC0zNiw3ICszNiw3IEBACiAgICAgc3RydWN0IHV0bXAgdTsKICAgICBsb25nIGk7CiAKLSAgICBpZiAoIShmID0gZm9wZW4oX1BBVEhfVVRNUCwgIncrIikpKQorICAgIGlmICghKGYgPSBmb3BlbihfUEFUSF9VVE1QLCAidytlIikpKQogICAgICAgICByZXR1cm47CiAKICAgICB3aGlsZSAoZnJlYWQoJnUsIHNpemVvZihzdHJ1Y3QgdXRtcCksIDEsIGYpID09IDEpCkBAIC01NSw3ICs1NSw3IEBACiAKICAgICBmY2xvc2UoZik7CiAKLSAgICBpZiAoIShmID0gZm9wZW4oX1BBVEhfVVRNUCwgIncrIikpKQorICAgIGlmICghKGYgPSBmb3BlbihfUEFUSF9VVE1QLCAidytlIikpKQogICAgICAgICByZXR1cm47CiAgICAgZndyaXRlKHV0bXAsIHNpemVvZihzdHJ1Y3QgdXRtcCksIDEsIGYpOwogCmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9yYWlzZS5jcHAgYi9saWJjL2Jpb25pYy9yYWlzZS5jcHAKaW5kZXggZjY5ZDkwYi4uYjEzNGI1YSAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvcmFpc2UuY3BwCisrKyBiL2xpYmMvYmlvbmljL3JhaXNlLmNwcApAQCAtMjYsNyArMjYsOSBAQAogICogU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8cHRocmVhZC5oPgorI2luY2x1ZGUgPHNpZ25hbC5oPgogCiBpbnQgcmFpc2UoaW50IHNpZykgewogICBpbnQgcmMgPSBwdGhyZWFkX2tpbGwocHRocmVhZF9zZWxmKCksIHNpZyk7CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9yZWFkbGluay5jcHAgYi9saWJjL2Jpb25pYy9yZWFkbGluay5jcHAKaW5kZXggYTJjNWU5MS4uYTUzZjkzMyAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvcmVhZGxpbmsuY3BwCisrKyBiL2xpYmMvYmlvbmljL3JlYWRsaW5rLmNwcApAQCAtMjYsOSArMjYsMTIgQEAKICAqIFNVQ0ggREFNQUdFLgogICovCiAKKyN1bmRlZiBfRk9SVElGWV9TT1VSQ0UKKwogI2luY2x1ZGUgPGZjbnRsLmg+CiAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KIAogc3NpemVfdCByZWFkbGluayhjb25zdCBjaGFyKiBwYXRoLCBjaGFyKiBidWYsIHNpemVfdCBzaXplKSB7CiAgIHJldHVybiByZWFkbGlua2F0KEFUX0ZEQ1dELCBwYXRoLCBidWYsIHNpemUpOwpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvc2NhbmRpci5jcHAgYi9saWJjL2Jpb25pYy9zY2FuZGlyLmNwcAppbmRleCA5ZjczMWFiLi5lZTYyZmVlIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9zY2FuZGlyLmNwcAorKysgYi9saWJjL2Jpb25pYy9zY2FuZGlyLmNwcApAQCAtMTgsNiArMTgsNyBAQAogCiAjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KIAogI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX21hY3Jvcy5oIgogI2luY2x1ZGUgInByaXZhdGUvU2NvcGVkUmVhZGRpci5oIgpAQCAtNDksNyArNTAsOCBAQAogICBib29sIEFkZChkaXJlbnQqIGVudHJ5KSB7CiAgICAgaWYgKHNpemVfID49IGNhcGFjaXR5XykgewogICAgICAgc2l6ZV90IG5ld19jYXBhY2l0eSA9IGNhcGFjaXR5XyArIDMyOwotICAgICAgZGlyZW50KiogbmV3X25hbWVzID0gKGRpcmVudCoqKSByZWFsbG9jKG5hbWVzXywgbmV3X2NhcGFjaXR5ICogc2l6ZW9mKGRpcmVudCopKTsKKyAgICAgIGRpcmVudCoqIG5ld19uYW1lcyA9CisgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxkaXJlbnQqKj4ocmVhbGxvYyhuYW1lc18sIG5ld19jYXBhY2l0eSAqIHNpemVvZihkaXJlbnQqKSkpOwogICAgICAgaWYgKG5ld19uYW1lcyA9PSBOVUxMKSB7CiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgIH0KQEAgLTY4LDcgKzcwLDggQEAKICAgdm9pZCBTb3J0KGludCAoKmNvbXBhcmF0b3IpKGNvbnN0IGRpcmVudCoqLCBjb25zdCBkaXJlbnQqKikpIHsKICAgICAvLyBJZiB3ZSBoYXZlIGVudHJpZXMgYW5kIGEgY29tcGFyYXRvciwgc29ydCB0aGVtLgogICAgIGlmIChzaXplXyA+IDAgJiYgY29tcGFyYXRvciAhPSBOVUxMKSB7Ci0gICAgICBxc29ydChuYW1lc18sIHNpemVfLCBzaXplb2YoZGlyZW50KiksIChpbnQgKCopKGNvbnN0IHZvaWQqLCBjb25zdCB2b2lkKikpIGNvbXBhcmF0b3IpOworICAgICAgcXNvcnQobmFtZXNfLCBzaXplXywgc2l6ZW9mKGRpcmVudCopLAorICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxpbnQgKCopKGNvbnN0IHZvaWQqLCBjb25zdCB2b2lkKik+KGNvbXBhcmF0b3IpKTsKICAgICB9CiAgIH0KIApAQCAtODAsNyArODMsNyBAQAogICBzdGF0aWMgZGlyZW50KiBDb3B5RGlyZW50KGRpcmVudCogb3JpZ2luYWwpIHsKICAgICAvLyBBbGxvY2F0ZSB0aGUgbWluaW11bSBudW1iZXIgb2YgYnl0ZXMgbmVjZXNzYXJ5LCByb3VuZGVkIHVwIHRvIGEgNC1ieXRlIGJvdW5kYXJ5LgogICAgIHNpemVfdCBzaXplID0gKChvcmlnaW5hbC0+ZF9yZWNsZW4gKyAzKSAmIH4zKTsKLSAgICBkaXJlbnQqIGNvcHkgPSAoZGlyZW50KikgbWFsbG9jKHNpemUpOworICAgIGRpcmVudCogY29weSA9IHJlaW50ZXJwcmV0X2Nhc3Q8ZGlyZW50Kj4obWFsbG9jKHNpemUpKTsKICAgICBtZW1jcHkoY29weSwgb3JpZ2luYWwsIG9yaWdpbmFsLT5kX3JlY2xlbik7CiAgICAgcmV0dXJuIGNvcHk7CiAgIH0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3NlbWFwaG9yZS5jIGIvbGliYy9iaW9uaWMvc2VtYXBob3JlLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFmYTAxOWUuLjAwMDAwMDAKLS0tIGEvbGliYy9iaW9uaWMvc2VtYXBob3JlLmMKKysrIC9kZXYvbnVsbApAQCAtMSwzOTggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotI2luY2x1ZGUgPHNlbWFwaG9yZS5oPgotI2luY2x1ZGUgPGVycm5vLmg+Ci0jaW5jbHVkZSA8c3lzL3RpbWUuaD4KLSNpbmNsdWRlIDx0aW1lLmg+Ci0jaW5jbHVkZSA8bGltaXRzLmg+Ci0KLSNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19hdG9taWNfaW5saW5lLmgiCi0jaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfZnV0ZXguaCIKLQotLyogSW4gdGhpcyBpbXBsZW1lbnRhdGlvbiwgYSBzZW1hcGhvcmUgY29udGFpbnMgYQotICogMzEtYml0IHNpZ25lZCB2YWx1ZSBhbmQgYSAxLWJpdCAnc2hhcmVkJyBmbGFnCi0gKiAoZm9yIHByb2Nlc3Mtc2hhcmluZyBwdXJwb3NlKS4KLSAqCi0gKiBXZSB1c2UgdGhlIHZhbHVlIC0xIHRvIGluZGljYXRlIGNvbnRlbnRpb24gb24gdGhlCi0gKiBzZW1hcGhvcmUsIDAgb3IgbW9yZSB0byBpbmRpY2F0ZSB1bmNvbnRlbmRlZCBzdGF0ZSwKLSAqIGFueSB2YWx1ZSBsb3dlciB0aGFuIC0yIGlzIGludmFsaWQgYXQgcnVudGltZS4KLSAqCi0gKiBTdGF0ZSBkaWFncmFtOgotICoKLSAqIHBvc3QoMSkgID09PiAyCi0gKiBwb3N0KDApICA9PT4gMQotICogcG9zdCgtMSkgPT0+IDEsIHRoZW4gd2FrZSBhbGwgd2FpdGVycwotICoKLSAqIHdhaXQoMikgID09PiAxCi0gKiB3YWl0KDEpICA9PT4gMAotICogd2FpdCgwKSAgPT0+IC0xIHRoZW4gd2FpdCBmb3IgYSB3YWtlIHVwICsgbG9vcAotICogd2FpdCgtMSkgPT0+IC0xIHRoZW4gd2FpdCBmb3IgYSB3YWtlIHVwICsgbG9vcAotICoKLSAqLwotCi0vKiBVc2UgdGhlIHVwcGVyIDMxLWJpdHMgZm9yIHRoZSBjb3VudGVyLCBhbmQgdGhlIGxvd2VyIG9uZQotICogZm9yIHRoZSBzaGFyZWQgZmxhZy4KLSAqLwotI2RlZmluZSBTRU1DT1VOVF9TSEFSRURfTUFTSyAgICAgIDB4MDAwMDAwMDEKLSNkZWZpbmUgU0VNQ09VTlRfVkFMVUVfTUFTSyAgICAgICAweGZmZmZmZmZlCi0jZGVmaW5lIFNFTUNPVU5UX1ZBTFVFX1NISUZUICAgICAgMQotCi0vKiBNYXhpbXVtIHVuc2lnbmVkIHZhbHVlIHRoYXQgY2FuIGJlIHN0b3JlZCBpbiB0aGUgc2VtYXBob3JlLgotICogT25lIGJpdCBpcyB1c2VkIGZvciB0aGUgc2hhcmVkIGZsYWcsIGFub3RoZXIgb25lIGZvciB0aGUKLSAqIHNpZ24gYml0LCBsZWF2aW5nIHVzIHdpdGggb25seSAzMCBiaXRzLgotICovCi0jZGVmaW5lIFNFTV9NQVhfVkFMVUUgICAgICAgICAgICAgMHgzZmZmZmZmZgotCi0vKiBjb252ZXJ0IGEgdmFsdWUgaW50byB0aGUgY29ycmVzcG9uZGluZyBzZW0tPmNvdW50IGJpdCBwYXR0ZXJuICovCi0jZGVmaW5lIFNFTUNPVU5UX0ZST01fVkFMVUUodmFsKSAgICAoKCh2YWwpIDw8IFNFTUNPVU5UX1ZBTFVFX1NISUZUKSAmIFNFTUNPVU5UX1ZBTFVFX01BU0spCi0KLS8qIGNvbnZlcnQgYSBzZW0tPmNvdW50IGJpdCBwYXR0ZXJuIGludG8gdGhlIGNvcnJlc3BvbmRpbmcgc2lnbmVkIHZhbHVlICovCi0jZGVmaW5lIFNFTUNPVU5UX1RPX1ZBTFVFKHN2YWwpICAoKGludCkoc3ZhbCkgPj4gU0VNQ09VTlRfVkFMVUVfU0hJRlQpCi0KLS8qIHRoZSB2YWx1ZSArMSBhcyBhIHNlbS0+Y291bnQgYml0LXBhdHRlcm4uICovCi0jZGVmaW5lIFNFTUNPVU5UX09ORSAgICAgICAgICAgICAgU0VNQ09VTlRfRlJPTV9WQUxVRSgxKQotCi0vKiB0aGUgdmFsdWUgLTEgYXMgYSBzZW0tPmNvdW50IGJpdC1wYXR0ZXJuLiAqLwotI2RlZmluZSBTRU1DT1VOVF9NSU5VU19PTkUgICAgICAgIFNFTUNPVU5UX0ZST01fVkFMVUUoLTEpCi0KLSNkZWZpbmUgU0VNQ09VTlRfREVDUkVNRU5UKHN2YWwpICAgICgoKHN2YWwpIC0gKDFVIDw8IFNFTUNPVU5UX1ZBTFVFX1NISUZUKSkgJiBTRU1DT1VOVF9WQUxVRV9NQVNLKQotI2RlZmluZSBTRU1DT1VOVF9JTkNSRU1FTlQoc3ZhbCkgICAgKCgoc3ZhbCkgKyAoMVUgPDwgU0VNQ09VTlRfVkFMVUVfU0hJRlQpKSAmIFNFTUNPVU5UX1ZBTFVFX01BU0spCi0KLS8qIHJldHVybiB0aGUgc2hhcmVkIGJpdGZsYWcgZnJvbSBhIHNlbWFwaG9yZSAqLwotI2RlZmluZSBTRU1fR0VUX1NIQVJFRChzZW0pICAgICAgICgoc2VtKS0+Y291bnQgJiBTRU1DT1VOVF9TSEFSRURfTUFTSykKLQotCi1pbnQgc2VtX2luaXQoc2VtX3QgKnNlbSwgaW50IHBzaGFyZWQsIHVuc2lnbmVkIGludCB2YWx1ZSkKLXsKLSAgICBpZiAoc2VtID09IE5VTEwpIHsKLSAgICAgICAgZXJybm8gPSBFSU5WQUw7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0KLSAgICAvKiBlbnN1cmUgdGhhdCAndmFsdWUnIGNhbiBiZSBzdG9yZWQgaW4gdGhlIHNlbWFwaG9yZSAqLwotICAgIGlmICh2YWx1ZSA+IFNFTV9NQVhfVkFMVUUpIHsKLSAgICAgICAgZXJybm8gPSBFSU5WQUw7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0KLSAgICBzZW0tPmNvdW50ID0gU0VNQ09VTlRfRlJPTV9WQUxVRSh2YWx1ZSk7Ci0gICAgaWYgKHBzaGFyZWQgIT0gMCkKLSAgICAgICAgc2VtLT5jb3VudCB8PSBTRU1DT1VOVF9TSEFSRURfTUFTSzsKLQotICAgIHJldHVybiAwOwotfQotCi0KLWludCBzZW1fZGVzdHJveShzZW1fdCAqc2VtKQotewotICAgIGludCBjb3VudDsKLQotICAgIGlmIChzZW0gPT0gTlVMTCkgewotICAgICAgICBlcnJubyA9IEVJTlZBTDsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgICBjb3VudCA9IFNFTUNPVU5UX1RPX1ZBTFVFKHNlbS0+Y291bnQpOwotICAgIGlmIChjb3VudCA8IDApIHsKLSAgICAgICAgZXJybm8gPSBFQlVTWTsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgICBzZW0tPmNvdW50ID0gMDsKLSAgICByZXR1cm4gMDsKLX0KLQotCi1zZW1fdCAqc2VtX29wZW4oY29uc3QgY2hhciAqbmFtZSBfX3VudXNlZCwgaW50IG9mbGFnIF9fdW51c2VkLCAuLi4pCi17Ci0gICAgZXJybm8gPSBFTk9TWVM7Ci0gICAgcmV0dXJuIFNFTV9GQUlMRUQ7Ci19Ci0KLQotaW50IHNlbV9jbG9zZShzZW1fdCAqc2VtKQotewotICAgIGlmIChzZW0gPT0gTlVMTCkgewotICAgICAgICBlcnJubyA9IEVJTlZBTDsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgICBlcnJubyA9IEVOT1NZUzsKLSAgICByZXR1cm4gLTE7Ci19Ci0KLQotaW50IHNlbV91bmxpbmsoY29uc3QgY2hhciogbmFtZSBfX3VudXNlZCkKLXsKLSAgICBlcnJubyA9IEVOT1NZUzsKLSAgICByZXR1cm4gLTE7Ci19Ci0KLQotLyogRGVjcmVtZW50IGEgc2VtYXBob3JlJ3MgdmFsdWUgYXRvbWljYWxseSwKLSAqIGFuZCByZXR1cm4gdGhlIG9sZCBvbmUuIEFzIGEgc3BlY2lhbCBjYXNlLAotICogdGhpcyByZXR1cm5zIGltbWVkaWF0ZWx5IGlmIHRoZSB2YWx1ZSBpcwotICogbmVnYXRpdmUgKGkuZS4gLTEpCi0gKi8KLXN0YXRpYyBpbnQKLV9fc2VtX2RlYyh2b2xhdGlsZSB1bnNpZ25lZCBpbnQgKnB2YWx1ZSkKLXsKLSAgICB1bnNpZ25lZCBpbnQgc2hhcmVkID0gKCpwdmFsdWUgJiBTRU1DT1VOVF9TSEFSRURfTUFTSyk7Ci0gICAgdW5zaWduZWQgaW50IG9sZCwgbmV3OwotICAgIGludCAgICAgICAgICByZXQ7Ci0KLSAgICBkbyB7Ci0gICAgICAgIG9sZCA9ICgqcHZhbHVlICYgU0VNQ09VTlRfVkFMVUVfTUFTSyk7Ci0gICAgICAgIHJldCA9IFNFTUNPVU5UX1RPX1ZBTFVFKG9sZCk7Ci0gICAgICAgIGlmIChyZXQgPCAwKQotICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgbmV3ID0gU0VNQ09VTlRfREVDUkVNRU5UKG9sZCk7Ci0gICAgfQotICAgIHdoaWxlIChfX2Jpb25pY19jbXB4Y2hnKChpbnQpKG9sZHxzaGFyZWQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbnQpKG5ld3xzaGFyZWQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2b2xhdGlsZSBpbnQgKilwdmFsdWUpICE9IDApOwotICAgIHJldHVybiByZXQ7Ci19Ci0KLS8qIFNhbWUgYXMgX19zZW1fZGVjLCBidXQgd2lsbCBub3QgdG91Y2ggYW55dGhpbmcgaWYgdGhlCi0gKiB2YWx1ZSBpcyBhbHJlYWR5IG5lZ2F0aXZlICpvciogMC4gUmV0dXJucyB0aGUgb2xkIHZhbHVlLgotICovCi1zdGF0aWMgaW50Ci1fX3NlbV90cnlkZWModm9sYXRpbGUgdW5zaWduZWQgaW50ICpwdmFsdWUpCi17Ci0gICAgdW5zaWduZWQgaW50IHNoYXJlZCA9ICgqcHZhbHVlICYgU0VNQ09VTlRfU0hBUkVEX01BU0spOwotICAgIHVuc2lnbmVkIGludCBvbGQsIG5ldzsKLSAgICBpbnQgICAgICAgICAgcmV0OwotCi0gICAgZG8gewotICAgICAgICBvbGQgPSAoKnB2YWx1ZSAmIFNFTUNPVU5UX1ZBTFVFX01BU0spOwotICAgICAgICByZXQgPSBTRU1DT1VOVF9UT19WQUxVRShvbGQpOwotICAgICAgICBpZiAocmV0IDw9IDApCi0gICAgICAgICAgICBicmVhazsKLQotICAgICAgICBuZXcgPSBTRU1DT1VOVF9ERUNSRU1FTlQob2xkKTsKLSAgICB9Ci0gICAgd2hpbGUgKF9fYmlvbmljX2NtcHhjaGcoKGludCkob2xkfHNoYXJlZCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGludCkobmV3fHNoYXJlZCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgKHZvbGF0aWxlIGludCAqKXB2YWx1ZSkgIT0gMCk7Ci0KLSAgICByZXR1cm4gcmV0OwotfQotCi0KLS8qICJJbmNyZW1lbnQiIHRoZSB2YWx1ZSBvZiBhIHNlbWFwaG9yZSBhdG9taWNhbGx5IGFuZAotICogcmV0dXJuIGl0cyBvbGQgdmFsdWUuIE5vdGUgdGhhdCB0aGlzIGltcGxlbWVudHMKLSAqIHRoZSBzcGVjaWFsIGNhc2Ugb2YgImluY3JlbWVudGluZyIgYW55IG5lZ2F0aXZlCi0gKiB2YWx1ZSB0byArMSBkaXJlY3RseS4KLSAqCi0gKiBOT1RFOiBUaGUgdmFsdWUgd2lsbCBfbm90XyB3cmFwIGFib3ZlIFNFTV9WQUxVRV9NQVgKLSAqLwotc3RhdGljIGludAotX19zZW1faW5jKHZvbGF0aWxlIHVuc2lnbmVkIGludCAqcHZhbHVlKQotewotICAgIHVuc2lnbmVkIGludCAgc2hhcmVkID0gKCpwdmFsdWUgJiBTRU1DT1VOVF9TSEFSRURfTUFTSyk7Ci0gICAgdW5zaWduZWQgaW50ICBvbGQsIG5ldzsKLSAgICBpbnQgICAgICAgICAgIHJldDsKLQotICAgIGRvIHsKLSAgICAgICAgb2xkID0gKCpwdmFsdWUgJiBTRU1DT1VOVF9WQUxVRV9NQVNLKTsKLSAgICAgICAgcmV0ID0gU0VNQ09VTlRfVE9fVkFMVUUob2xkKTsKLQotICAgICAgICAvKiBDYW4ndCBnbyBoaWdoZXIgdGhhbiBTRU1fTUFYX1ZBTFVFICovCi0gICAgICAgIGlmIChyZXQgPT0gU0VNX01BWF9WQUxVRSkKLSAgICAgICAgICAgIGJyZWFrOwotCi0gICAgICAgIC8qIElmIHRoZSBjb3VudGVyIGlzIG5lZ2F0aXZlLCBnbyBkaXJlY3RseSB0byArMSwKLSAgICAgICAgICogb3RoZXJ3aXNlIGp1c3QgaW5jcmVtZW50ICovCi0gICAgICAgIGlmIChyZXQgPCAwKQotICAgICAgICAgICAgbmV3ID0gU0VNQ09VTlRfT05FOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBuZXcgPSBTRU1DT1VOVF9JTkNSRU1FTlQob2xkKTsKLSAgICB9Ci0gICAgd2hpbGUgKCBfX2Jpb25pY19jbXB4Y2hnKChpbnQpKG9sZHxzaGFyZWQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaW50KShuZXd8c2hhcmVkKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHZvbGF0aWxlIGludCopcHZhbHVlKSAhPSAwKTsKLQotICAgIHJldHVybiByZXQ7Ci19Ci0KLS8qIGxvY2sgYSBzZW1hcGhvcmUgKi8KLWludCBzZW1fd2FpdChzZW1fdCAqc2VtKQotewotICAgIHVuc2lnbmVkIHNoYXJlZDsKLQotICAgIGlmIChzZW0gPT0gTlVMTCkgewotICAgICAgICBlcnJubyA9IEVJTlZBTDsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLQotICAgIHNoYXJlZCA9IFNFTV9HRVRfU0hBUkVEKHNlbSk7Ci0KLSAgICBmb3IgKDs7KSB7Ci0gICAgICAgIGlmIChfX3NlbV9kZWMoJnNlbS0+Y291bnQpID4gMCkKLSAgICAgICAgICAgIGJyZWFrOwotCi0gICAgICAgIF9fZnV0ZXhfd2FpdF9leCgmc2VtLT5jb3VudCwgc2hhcmVkLCBzaGFyZWR8U0VNQ09VTlRfTUlOVVNfT05FLCBOVUxMKTsKLSAgICB9Ci0gICAgQU5EUk9JRF9NRU1CQVJfRlVMTCgpOwotICAgIHJldHVybiAwOwotfQotCi1pbnQgc2VtX3RpbWVkd2FpdChzZW1fdCAqc2VtLCBjb25zdCBzdHJ1Y3QgdGltZXNwZWMgKmFic190aW1lb3V0KQotewotICAgIHVuc2lnbmVkIGludCBzaGFyZWQ7Ci0KLSAgICBpZiAoc2VtID09IE5VTEwpIHsKLSAgICAgICAgZXJybm8gPSBFSU5WQUw7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0KLSAgICAvKiBQT1NJWCBzYXlzIHdlIG5lZWQgdG8gdHJ5IHRvIGRlY3JlbWVudCB0aGUgc2VtYXBob3JlCi0gICAgICogYmVmb3JlIGNoZWNraW5nIHRoZSB0aW1lb3V0IHZhbHVlLiBOb3RlIHRoYXQgaWYgdGhlCi0gICAgICogdmFsdWUgaXMgY3VycmVudGx5IDAsIF9fc2VtX3RyeWRlYygpIGRvZXMgbm90aGluZy4KLSAgICAgKi8KLSAgICBpZiAoX19zZW1fdHJ5ZGVjKCZzZW0tPmNvdW50KSA+IDApIHsKLSAgICAgICAgQU5EUk9JRF9NRU1CQVJfRlVMTCgpOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0KLSAgICAvKiBDaGVjayBpdCBhcyBwZXIgUG9zaXggKi8KLSAgICBpZiAoYWJzX3RpbWVvdXQgPT0gTlVMTCAgICB8fAotICAgICAgICBhYnNfdGltZW91dC0+dHZfc2VjIDwgMCB8fAotICAgICAgICBhYnNfdGltZW91dC0+dHZfbnNlYyA8IDAgfHwKLSAgICAgICAgYWJzX3RpbWVvdXQtPnR2X25zZWMgPj0gMTAwMDAwMDAwMCkKLSAgICB7Ci0gICAgICAgIGVycm5vID0gRUlOVkFMOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotCi0gICAgc2hhcmVkID0gU0VNX0dFVF9TSEFSRUQoc2VtKTsKLQotICAgIGZvciAoOzspIHsKLSAgICAgICAgc3RydWN0IHRpbWVzcGVjIHRzOwotICAgICAgICBpbnQgICAgICAgICAgICAgcmV0OwotCi0gICAgICAgIC8qIFBvc2l4IG1hbmRhdGVzIENMT0NLX1JFQUxUSU1FIGhlcmUgKi8KLSAgICAgICAgY2xvY2tfZ2V0dGltZSggQ0xPQ0tfUkVBTFRJTUUsICZ0cyApOwotICAgICAgICB0cy50dl9zZWMgID0gYWJzX3RpbWVvdXQtPnR2X3NlYyAtIHRzLnR2X3NlYzsKLSAgICAgICAgdHMudHZfbnNlYyA9IGFic190aW1lb3V0LT50dl9uc2VjIC0gdHMudHZfbnNlYzsKLSAgICAgICAgaWYgKHRzLnR2X25zZWMgPCAwKSB7Ci0gICAgICAgICAgICB0cy50dl9uc2VjICs9IDEwMDAwMDAwMDA7Ci0gICAgICAgICAgICB0cy50dl9zZWMgIC09IDE7Ci0gICAgICAgIH0KLQotICAgICAgICBpZiAodHMudHZfc2VjIDwgMCB8fCB0cy50dl9uc2VjIDwgMCkgewotICAgICAgICAgICAgZXJybm8gPSBFVElNRURPVVQ7Ci0gICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIH0KLQotICAgICAgICAvKiBUcnkgdG8gZ3JhYiB0aGUgc2VtYXBob3JlLiBJZiB0aGUgdmFsdWUgd2FzIDAsIHRoaXMKLSAgICAgICAgICogd2lsbCBhbHNvIGNoYW5nZSBpdCB0byAtMSAqLwotICAgICAgICBpZiAoX19zZW1fZGVjKCZzZW0tPmNvdW50KSA+IDApIHsKLSAgICAgICAgICAgIEFORFJPSURfTUVNQkFSX0ZVTEwoKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0KLSAgICAgICAgLyogQ29udGVudGlvbiBkZXRlY3RlZC4gd2FpdCBmb3IgYSB3YWtldXAgZXZlbnQgKi8KLSAgICAgICAgcmV0ID0gX19mdXRleF93YWl0X2V4KCZzZW0tPmNvdW50LCBzaGFyZWQsIHNoYXJlZHxTRU1DT1VOVF9NSU5VU19PTkUsICZ0cyk7Ci0KLSAgICAgICAgLyogcmV0dXJuIGluIGNhc2Ugb2YgdGltZW91dCBvciBpbnRlcnJ1cHQgKi8KLSAgICAgICAgaWYgKHJldCA9PSAtRVRJTUVET1VUIHx8IHJldCA9PSAtRUlOVFIpIHsKLSAgICAgICAgICAgIGVycm5vID0gLXJldDsKLSAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgfQotICAgIH0KLSAgICByZXR1cm4gMDsKLX0KLQotLyogVW5sb2NrIGEgc2VtYXBob3JlICovCi1pbnQgc2VtX3Bvc3Qoc2VtX3QgKnNlbSkKLXsKLSAgICB1bnNpZ25lZCBpbnQgc2hhcmVkOwotICAgIGludCAgICAgICAgICBvbGQ7Ci0KLSAgICBpZiAoc2VtID09IE5VTEwpCi0gICAgICAgIHJldHVybiBFSU5WQUw7Ci0KLSAgICBzaGFyZWQgPSBTRU1fR0VUX1NIQVJFRChzZW0pOwotCi0gICAgQU5EUk9JRF9NRU1CQVJfRlVMTCgpOwotICAgIG9sZCA9IF9fc2VtX2luYygmc2VtLT5jb3VudCk7Ci0gICAgaWYgKG9sZCA8IDApIHsKLSAgICAgICAgLyogY29udGVudGlvbiBvbiB0aGUgc2VtYXBob3JlLCB3YWtlIHVwIGFsbCB3YWl0ZXJzICovCi0gICAgICAgIF9fZnV0ZXhfd2FrZV9leCgmc2VtLT5jb3VudCwgc2hhcmVkLCBJTlRfTUFYKTsKLSAgICB9Ci0gICAgZWxzZSBpZiAob2xkID09IFNFTV9NQVhfVkFMVUUpIHsKLSAgICAgICAgLyogb3ZlcmZsb3cgZGV0ZWN0ZWQgKi8KLSAgICAgICAgZXJybm8gPSBFT1ZFUkZMT1c7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0KLSAgICByZXR1cm4gMDsKLX0KLQotaW50ICBzZW1fdHJ5d2FpdChzZW1fdCAqc2VtKQotewotICAgIGlmIChzZW0gPT0gTlVMTCkgewotICAgICAgICBlcnJubyA9IEVJTlZBTDsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLQotICAgIGlmIChfX3NlbV90cnlkZWMoJnNlbS0+Y291bnQpID4gMCkgewotICAgICAgICBBTkRST0lEX01FTUJBUl9GVUxMKCk7Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGVycm5vID0gRUFHQUlOOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotfQotCi0vKiBOb3RlIHRoYXQgUG9zaXggcmVxdWlyZXMgdGhhdCBzZW1fZ2V0dmFsdWUoKSByZXR1cm5zLCBpbgotICogY2FzZSBvZiBjb250ZW50aW9uLCB0aGUgbmVnYXRpdmUgb2YgdGhlIG51bWJlciBvZiB3YWl0aW5nCi0gKiB0aHJlYWRzLgotICoKLSAqIEhvd2V2ZXIsIGNvZGUgdGhhdCBkZXBlbmRzIG9uIHRoaXMgbmVnYXRpdmUgdmFsdWUgdG8gYmUKLSAqIG1lYW5pbmdmdWwgaXMgbW9zdCBwcm9iYWJseSByYWN5LiBUaGUgR0xpYmMgc2VtX2dldHZhbHVlKCkKLSAqIG9ubHkgcmV0dXJucyB0aGUgc2VtYXBob3JlIHZhbHVlLCB3aGljaCBpcyAwLCBpbiBjYXNlIG9mCi0gKiBjb250ZW50aW9uLCBzbyB3ZSB3aWxsIG1pbWljayB0aGlzIGJlaGF2aW91ciBoZXJlIGluc3RlYWQKLSAqIGZvciBiZXR0ZXIgY29tcGF0aWJpbGl0eS4KLSAqLwotaW50ICBzZW1fZ2V0dmFsdWUoc2VtX3QgKnNlbSwgaW50ICpzdmFsKQotewotICAgIGludCAgdmFsOwotCi0gICAgaWYgKHNlbSA9PSBOVUxMIHx8IHN2YWwgPT0gTlVMTCkgewotICAgICAgICBlcnJubyA9IEVJTlZBTDsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLQotICAgIHZhbCA9IFNFTUNPVU5UX1RPX1ZBTFVFKHNlbS0+Y291bnQpOwotICAgIGlmICh2YWwgPCAwKQotICAgICAgICB2YWwgPSAwOwotCi0gICAgKnN2YWwgPSB2YWw7Ci0gICAgcmV0dXJuIDA7Ci19CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9zZW1hcGhvcmUuY3BwIGIvbGliYy9iaW9uaWMvc2VtYXBob3JlLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYjA0NjUwCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvc2VtYXBob3JlLmNwcApAQCAtMCwwICsxLDMxMCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAwOCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisvLyBNZW1vcnkgb3JkZXIgcmVxdWlyZW1lbnRzIGZvciBQT1NJWCBzZW1hcGhvcmVzIGFwcGVhciB1bmNsZWFyIGFuZCBhcmUKKy8vIGN1cnJlbnRseSBpbnRlcnByZXRlZCBpbmNvbnNpc3RlbnRseS4KKy8vIFdlIGNvbnNlcnZhdGl2ZWx5IHByZWZlciBzZXF1ZW50aWFsbHkgY29uc2lzdGVudCBvcGVyYXRpb25zIGZvciBub3cuCisvLyBDQVVUSU9OOiBUaGlzIGlzIG1vcmUgY29uc2VydmF0aXZlIHRoYW4gc29tZSBvdGhlciBtYWpvciBpbXBsZW1lbnRhdGlvbnMsCisvLyBhbmQgbWF5IGNoYW5nZSBpZiBhbmQgd2hlbiB0aGUgaXNzdWUgaXMgcmVzb2x2ZWQuCisKKyNpbmNsdWRlIDxzZW1hcGhvcmUuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPHN0ZGF0b21pYy5oPgorI2luY2x1ZGUgPHN5cy90aW1lLmg+CisjaW5jbHVkZSA8dGltZS5oPgorCisjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfY29uc3RhbnRzLmgiCisjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfZnV0ZXguaCIKKyNpbmNsdWRlICJwcml2YXRlL2Jpb25pY190aW1lX2NvbnZlcnNpb25zLmgiCisKKy8vIEluIHRoaXMgaW1wbGVtZW50YXRpb24sIGEgc2VtYXBob3JlIGNvbnRhaW5zIGEKKy8vIDMxLWJpdCBzaWduZWQgdmFsdWUgYW5kIGEgMS1iaXQgJ3NoYXJlZCcgZmxhZworLy8gKGZvciBwcm9jZXNzLXNoYXJpbmcgcHVycG9zZSkuCisvLworLy8gV2UgdXNlIHRoZSB2YWx1ZSAtMSB0byBpbmRpY2F0ZSBjb250ZW50aW9uIG9uIHRoZQorLy8gc2VtYXBob3JlLCAwIG9yIG1vcmUgdG8gaW5kaWNhdGUgdW5jb250ZW5kZWQgc3RhdGUsCisvLyBhbnkgdmFsdWUgbG93ZXIgdGhhbiAtMiBpcyBpbnZhbGlkIGF0IHJ1bnRpbWUuCisvLworLy8gU3RhdGUgZGlhZ3JhbToKKy8vCisvLyBwb3N0KDEpICA9PT4gMgorLy8gcG9zdCgwKSAgPT0+IDEKKy8vIHBvc3QoLTEpID09PiAxLCB0aGVuIHdha2UgYWxsIHdhaXRlcnMKKy8vCisvLyB3YWl0KDIpICA9PT4gMQorLy8gd2FpdCgxKSAgPT0+IDAKKy8vIHdhaXQoMCkgID09PiAtMSB0aGVuIHdhaXQgZm9yIGEgd2FrZSB1cCArIGxvb3AKKy8vIHdhaXQoLTEpID09PiAtMSB0aGVuIHdhaXQgZm9yIGEgd2FrZSB1cCArIGxvb3AKKworLy8gVXNlIHRoZSB1cHBlciAzMS1iaXRzIGZvciB0aGUgY291bnRlciwgYW5kIHRoZSBsb3dlciBvbmUKKy8vIGZvciB0aGUgc2hhcmVkIGZsYWcuCisjZGVmaW5lIFNFTUNPVU5UX1NIQVJFRF9NQVNLICAgICAgMHgwMDAwMDAwMQorI2RlZmluZSBTRU1DT1VOVF9WQUxVRV9NQVNLICAgICAgIDB4ZmZmZmZmZmUKKyNkZWZpbmUgU0VNQ09VTlRfVkFMVUVfU0hJRlQgICAgICAxCisKKy8vIENvbnZlcnQgYSB2YWx1ZSBpbnRvIHRoZSBjb3JyZXNwb25kaW5nIHNlbS0+Y291bnQgYml0IHBhdHRlcm4uCisjZGVmaW5lIFNFTUNPVU5UX0ZST01fVkFMVUUodmFsKSAgICAoKCh2YWwpIDw8IFNFTUNPVU5UX1ZBTFVFX1NISUZUKSAmIFNFTUNPVU5UX1ZBTFVFX01BU0spCisKKy8vIENvbnZlcnQgYSBzZW0tPmNvdW50IGJpdCBwYXR0ZXJuIGludG8gdGhlIGNvcnJlc3BvbmRpbmcgc2lnbmVkIHZhbHVlLgorc3RhdGljIGlubGluZSBpbnQgU0VNQ09VTlRfVE9fVkFMVUUodW5zaWduZWQgaW50IHN2YWwpIHsKKyAgcmV0dXJuIChzdGF0aWNfY2FzdDxpbnQ+KHN2YWwpID4+IFNFTUNPVU5UX1ZBTFVFX1NISUZUKTsKK30KKworLy8gVGhlIHZhbHVlICsxIGFzIGEgc2VtLT5jb3VudCBiaXQtcGF0dGVybi4KKyNkZWZpbmUgU0VNQ09VTlRfT05FICAgICAgICAgICAgICBTRU1DT1VOVF9GUk9NX1ZBTFVFKDEpCisKKy8vIFRoZSB2YWx1ZSAtMSBhcyBhIHNlbS0+Y291bnQgYml0LXBhdHRlcm4uCisjZGVmaW5lIFNFTUNPVU5UX01JTlVTX09ORSAgICAgICAgU0VNQ09VTlRfRlJPTV9WQUxVRSgtMSkKKworI2RlZmluZSBTRU1DT1VOVF9ERUNSRU1FTlQoc3ZhbCkgICAgKCgoc3ZhbCkgLSAoMVUgPDwgU0VNQ09VTlRfVkFMVUVfU0hJRlQpKSAmIFNFTUNPVU5UX1ZBTFVFX01BU0spCisjZGVmaW5lIFNFTUNPVU5UX0lOQ1JFTUVOVChzdmFsKSAgICAoKChzdmFsKSArICgxVSA8PCBTRU1DT1VOVF9WQUxVRV9TSElGVCkpICYgU0VNQ09VTlRfVkFMVUVfTUFTSykKKworc3RhdGljIGlubGluZSBhdG9taWNfdWludCogU0VNX1RPX0FUT01JQ19QT0lOVEVSKHNlbV90KiBzZW0pIHsKKyAgc3RhdGljX2Fzc2VydChzaXplb2YoYXRvbWljX3VpbnQpID09IHNpemVvZihzZW0tPmNvdW50KSwKKyAgICAgICAgICAgICAgICAic2VtLT5jb3VudCBzaG91bGQgYWN0dWFsbHkgYmUgYXRvbWljX3VpbnQgaW4gaW1wbGVtZW50YXRpb24uIik7CisKKyAgLy8gV2UgcHJlZmVyIGNhc3RpbmcgdG8gYXRvbWljX3VpbnQgaW5zdGVhZCBvZiBkZWNsYXJpbmcgc2VtLT5jb3VudCB0byBiZSBhdG9taWNfdWludCBkaXJlY3RseS4KKyAgLy8gQmVjYXVzZSB1c2luZyB0aGUgc2Vjb25kIG1ldGhvZCBwb2xsdXRlcyBzZW1hcGhvcmUuaC4KKyAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8YXRvbWljX3VpbnQqPigmc2VtLT5jb3VudCk7Cit9CisKKy8vIFJldHVybiB0aGUgc2hhcmVkIGJpdGZsYWcgZnJvbSBhIHNlbWFwaG9yZSBjb3VudGVyLgorc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgU0VNX0dFVF9TSEFSRUQoYXRvbWljX3VpbnQqIHNlbV9jb3VudF9wdHIpIHsKKyAgLy8gbWVtb3J5X29yZGVyX3JlbGF4ZWQgaXMgdXNlZCBhcyBTSEFSRUQgZmxhZyB3aWxsIG5vdCBiZSBjaGFuZ2VkIGFmdGVyIGluaXQuCisgIHJldHVybiAoYXRvbWljX2xvYWRfZXhwbGljaXQoc2VtX2NvdW50X3B0ciwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpICYgU0VNQ09VTlRfU0hBUkVEX01BU0spOworfQorCitpbnQgc2VtX2luaXQoc2VtX3QqIHNlbSwgaW50IHBzaGFyZWQsIHVuc2lnbmVkIGludCB2YWx1ZSkgeworICAvLyBFbnN1cmUgdGhhdCAndmFsdWUnIGNhbiBiZSBzdG9yZWQgaW4gdGhlIHNlbWFwaG9yZS4KKyAgaWYgKHZhbHVlID4gU0VNX1ZBTFVFX01BWCkgeworICAgIGVycm5vID0gRUlOVkFMOworICAgIHJldHVybiAtMTsKKyAgfQorCisgIHVuc2lnbmVkIGludCBjb3VudCA9IFNFTUNPVU5UX0ZST01fVkFMVUUodmFsdWUpOworICBpZiAocHNoYXJlZCAhPSAwKSB7CisgICAgY291bnQgfD0gU0VNQ09VTlRfU0hBUkVEX01BU0s7CisgIH0KKworICBhdG9taWNfdWludCogc2VtX2NvdW50X3B0ciA9IFNFTV9UT19BVE9NSUNfUE9JTlRFUihzZW0pOworICBhdG9taWNfaW5pdChzZW1fY291bnRfcHRyLCBjb3VudCk7CisgIHJldHVybiAwOworfQorCitpbnQgc2VtX2Rlc3Ryb3koc2VtX3QqKSB7CisgIHJldHVybiAwOworfQorCitzZW1fdCogc2VtX29wZW4oY29uc3QgY2hhciosIGludCwgLi4uKSB7CisgIGVycm5vID0gRU5PU1lTOworICByZXR1cm4gU0VNX0ZBSUxFRDsKK30KKworaW50IHNlbV9jbG9zZShzZW1fdCopIHsKKyAgZXJybm8gPSBFTk9TWVM7CisgIHJldHVybiAtMTsKK30KKworaW50IHNlbV91bmxpbmsoY29uc3QgY2hhciopIHsKKyAgZXJybm8gPSBFTk9TWVM7CisgIHJldHVybiAtMTsKK30KKworLy8gRGVjcmVtZW50IGEgc2VtYXBob3JlJ3MgdmFsdWUgYXRvbWljYWxseSwKKy8vIGFuZCByZXR1cm4gdGhlIG9sZCBvbmUuIEFzIGEgc3BlY2lhbCBjYXNlLAorLy8gdGhpcyByZXR1cm5zIGltbWVkaWF0ZWx5IGlmIHRoZSB2YWx1ZSBpcworLy8gbmVnYXRpdmUgKGkuZS4gLTEpCitzdGF0aWMgaW50IF9fc2VtX2RlYyhhdG9taWNfdWludCogc2VtX2NvdW50X3B0cikgeworICB1bnNpZ25lZCBpbnQgb2xkX3ZhbHVlID0gYXRvbWljX2xvYWRfZXhwbGljaXQoc2VtX2NvdW50X3B0ciwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOworICB1bnNpZ25lZCBpbnQgc2hhcmVkID0gb2xkX3ZhbHVlICYgU0VNQ09VTlRfU0hBUkVEX01BU0s7CisKKyAgLy8gVXNlIG1lbW9yeV9vcmRlcl9zZXFfY3N0IGluIGF0b21pY19jb21wYXJlX2V4Y2hhbmdlIG9wZXJhdGlvbiB0byBlbnN1cmUgYWxsCisgIC8vIG1lbW9yeSBhY2Nlc3MgbWFkZSBieSBvdGhlciB0aHJlYWRzIGNhbiBiZSBzZWVuIGluIGN1cnJlbnQgdGhyZWFkLgorICAvLyBBbiBhY3F1aXJlIGZlbmNlIG1heSBiZSBzdWZmaWNpZW50LCBidXQgaXQgaXMgc3RpbGwgaW4gZGlzY3Vzc2lvbiB3aGV0aGVyCisgIC8vIFBPU0lYIHNlbWFwaG9yZXMgc2hvdWxkIHByb3ZpZGUgc2VxdWVudGlhbCBjb25zaXN0ZW5jeS4KKyAgZG8geworICAgIGlmIChTRU1DT1VOVF9UT19WQUxVRShvbGRfdmFsdWUpIDwgMCkgeworICAgICAgYnJlYWs7CisgICAgfQorICB9IHdoaWxlICghYXRvbWljX2NvbXBhcmVfZXhjaGFuZ2Vfd2VhayhzZW1fY291bnRfcHRyLCAmb2xkX3ZhbHVlLAorICAgICAgICAgICBTRU1DT1VOVF9ERUNSRU1FTlQob2xkX3ZhbHVlKSB8IHNoYXJlZCkpOworCisgIHJldHVybiBTRU1DT1VOVF9UT19WQUxVRShvbGRfdmFsdWUpOworfQorCisvLyBTYW1lIGFzIF9fc2VtX2RlYywgYnV0IHdpbGwgbm90IHRvdWNoIGFueXRoaW5nIGlmIHRoZQorLy8gdmFsdWUgaXMgYWxyZWFkeSBuZWdhdGl2ZSAqb3IqIDAuIFJldHVybnMgdGhlIG9sZCB2YWx1ZS4KK3N0YXRpYyBpbnQgX19zZW1fdHJ5ZGVjKGF0b21pY191aW50KiBzZW1fY291bnRfcHRyKSB7CisgIHVuc2lnbmVkIGludCBvbGRfdmFsdWUgPSBhdG9taWNfbG9hZF9leHBsaWNpdChzZW1fY291bnRfcHRyLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgIHVuc2lnbmVkIGludCBzaGFyZWQgPSBvbGRfdmFsdWUgJiBTRU1DT1VOVF9TSEFSRURfTUFTSzsKKworICAvLyBVc2UgbWVtb3J5X29yZGVyX3NlcV9jc3QgaW4gYXRvbWljX2NvbXBhcmVfZXhjaGFuZ2Ugb3BlcmF0aW9uIHRvIGVuc3VyZSBhbGwKKyAgLy8gbWVtb3J5IGFjY2VzcyBtYWRlIGJ5IG90aGVyIHRocmVhZHMgY2FuIGJlIHNlZW4gaW4gY3VycmVudCB0aHJlYWQuCisgIC8vIEFuIGFjcXVpcmUgZmVuY2UgbWF5IGJlIHN1ZmZpY2llbnQsIGJ1dCBpdCBpcyBzdGlsbCBpbiBkaXNjdXNzaW9uIHdoZXRoZXIKKyAgLy8gUE9TSVggc2VtYXBob3JlcyBzaG91bGQgcHJvdmlkZSBzZXF1ZW50aWFsIGNvbnNpc3RlbmN5LgorICBkbyB7CisgICAgaWYgKFNFTUNPVU5UX1RPX1ZBTFVFKG9sZF92YWx1ZSkgPD0gMCkgeworICAgICAgYnJlYWs7CisgICAgfQorICB9IHdoaWxlICghYXRvbWljX2NvbXBhcmVfZXhjaGFuZ2Vfd2VhayhzZW1fY291bnRfcHRyLCAmb2xkX3ZhbHVlLAorICAgICAgICAgICBTRU1DT1VOVF9ERUNSRU1FTlQob2xkX3ZhbHVlKSB8IHNoYXJlZCkpOworCisgIHJldHVybiBTRU1DT1VOVF9UT19WQUxVRShvbGRfdmFsdWUpOworfQorCisvLyAiSW5jcmVtZW50IiB0aGUgdmFsdWUgb2YgYSBzZW1hcGhvcmUgYXRvbWljYWxseSBhbmQKKy8vIHJldHVybiBpdHMgb2xkIHZhbHVlLiBOb3RlIHRoYXQgdGhpcyBpbXBsZW1lbnRzCisvLyB0aGUgc3BlY2lhbCBjYXNlIG9mICJpbmNyZW1lbnRpbmciIGFueSBuZWdhdGl2ZQorLy8gdmFsdWUgdG8gKzEgZGlyZWN0bHkuCisvLworLy8gTk9URTogVGhlIHZhbHVlIHdpbGwgX25vdF8gd3JhcCBhYm92ZSBTRU1fVkFMVUVfTUFYCitzdGF0aWMgaW50IF9fc2VtX2luYyhhdG9taWNfdWludCogc2VtX2NvdW50X3B0cikgeworICB1bnNpZ25lZCBpbnQgb2xkX3ZhbHVlID0gYXRvbWljX2xvYWRfZXhwbGljaXQoc2VtX2NvdW50X3B0ciwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOworICB1bnNpZ25lZCBpbnQgc2hhcmVkID0gb2xkX3ZhbHVlICAmIFNFTUNPVU5UX1NIQVJFRF9NQVNLOworICB1bnNpZ25lZCBpbnQgbmV3X3ZhbHVlOworCisgIC8vIFVzZSBtZW1vcnlfb3JkZXJfc2VxX2NzdCBpbiBhdG9taWNfY29tcGFyZV9leGNoYW5nZSBvcGVyYXRpb24gdG8gZW5zdXJlIGFsbAorICAvLyBtZW1vcnkgYWNjZXNzIG1hZGUgYmVmb3JlIGNhbiBiZSBzZWVuIGluIG90aGVyIHRocmVhZHMuCisgIC8vIEEgcmVsZWFzZSBmZW5jZSBtYXkgYmUgc3VmZmljaWVudCwgYnV0IGl0IGlzIHN0aWxsIGluIGRpc2N1c3Npb24gd2hldGhlcgorICAvLyBQT1NJWCBzZW1hcGhvcmVzIHNob3VsZCBwcm92aWRlIHNlcXVlbnRpYWwgY29uc2lzdGVuY3kuCisgIGRvIHsKKyAgICAvLyBDYW4ndCBnbyBoaWdoZXIgdGhhbiBTRU1fVkFMVUVfTUFYLgorICAgIGlmIChTRU1DT1VOVF9UT19WQUxVRShvbGRfdmFsdWUpID09IFNFTV9WQUxVRV9NQVgpIHsKKyAgICAgIGJyZWFrOworICAgIH0KKworICAgIC8vIElmIHRoZSBjb3VudGVyIGlzIG5lZ2F0aXZlLCBnbyBkaXJlY3RseSB0byBvbmUsIG90aGVyd2lzZSBqdXN0IGluY3JlbWVudC4KKyAgICBpZiAoU0VNQ09VTlRfVE9fVkFMVUUob2xkX3ZhbHVlKSA8IDApIHsKKyAgICAgIG5ld192YWx1ZSA9IFNFTUNPVU5UX09ORSB8IHNoYXJlZDsKKyAgICB9IGVsc2UgeworICAgICAgbmV3X3ZhbHVlID0gU0VNQ09VTlRfSU5DUkVNRU5UKG9sZF92YWx1ZSkgfCBzaGFyZWQ7CisgICAgfQorICB9IHdoaWxlICghYXRvbWljX2NvbXBhcmVfZXhjaGFuZ2Vfd2VhayhzZW1fY291bnRfcHRyLCAmb2xkX3ZhbHVlLAorICAgICAgICAgICBuZXdfdmFsdWUpKTsKKworICByZXR1cm4gU0VNQ09VTlRfVE9fVkFMVUUob2xkX3ZhbHVlKTsKK30KKworaW50IHNlbV93YWl0KHNlbV90KiBzZW0pIHsKKyAgYXRvbWljX3VpbnQqIHNlbV9jb3VudF9wdHIgPSBTRU1fVE9fQVRPTUlDX1BPSU5URVIoc2VtKTsKKyAgdW5zaWduZWQgaW50IHNoYXJlZCA9IFNFTV9HRVRfU0hBUkVEKHNlbV9jb3VudF9wdHIpOworCisgIHdoaWxlICh0cnVlKSB7CisgICAgaWYgKF9fc2VtX2RlYyhzZW1fY291bnRfcHRyKSA+IDApIHsKKyAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIF9fZnV0ZXhfd2FpdF9leChzZW1fY291bnRfcHRyLCBzaGFyZWQsIHNoYXJlZCB8IFNFTUNPVU5UX01JTlVTX09ORSwgTlVMTCk7CisgIH0KK30KKworaW50IHNlbV90aW1lZHdhaXQoc2VtX3QqIHNlbSwgY29uc3QgdGltZXNwZWMqIGFic190aW1lb3V0KSB7CisgIGF0b21pY191aW50KiBzZW1fY291bnRfcHRyID0gU0VNX1RPX0FUT01JQ19QT0lOVEVSKHNlbSk7CisKKyAgLy8gUE9TSVggc2F5cyB3ZSBuZWVkIHRvIHRyeSB0byBkZWNyZW1lbnQgdGhlIHNlbWFwaG9yZQorICAvLyBiZWZvcmUgY2hlY2tpbmcgdGhlIHRpbWVvdXQgdmFsdWUuIE5vdGUgdGhhdCBpZiB0aGUKKyAgLy8gdmFsdWUgaXMgY3VycmVudGx5IDAsIF9fc2VtX3RyeWRlYygpIGRvZXMgbm90aGluZy4KKyAgaWYgKF9fc2VtX3RyeWRlYyhzZW1fY291bnRfcHRyKSA+IDApIHsKKyAgICByZXR1cm4gMDsKKyAgfQorCisgIC8vIENoZWNrIGl0IGFzIHBlciBQT1NJWC4KKyAgaWYgKGFic190aW1lb3V0ID09IE5VTEwgfHwgYWJzX3RpbWVvdXQtPnR2X3NlYyA8IDAgfHwgYWJzX3RpbWVvdXQtPnR2X25zZWMgPCAwIHx8IGFic190aW1lb3V0LT50dl9uc2VjID49IE5TX1BFUl9TKSB7CisgICAgZXJybm8gPSBFSU5WQUw7CisgICAgcmV0dXJuIC0xOworICB9CisKKyAgdW5zaWduZWQgaW50IHNoYXJlZCA9IFNFTV9HRVRfU0hBUkVEKHNlbV9jb3VudF9wdHIpOworCisgIHdoaWxlICh0cnVlKSB7CisgICAgLy8gUE9TSVggbWFuZGF0ZXMgQ0xPQ0tfUkVBTFRJTUUgaGVyZS4KKyAgICB0aW1lc3BlYyB0czsKKyAgICBpZiAoIXRpbWVzcGVjX2Zyb21fYWJzb2x1dGVfdGltZXNwZWModHMsICphYnNfdGltZW91dCwgQ0xPQ0tfUkVBTFRJTUUpKSB7CisgICAgICBlcnJubyA9IEVUSU1FRE9VVDsKKyAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICAvLyBUcnkgdG8gZ3JhYiB0aGUgc2VtYXBob3JlLiBJZiB0aGUgdmFsdWUgd2FzIDAsIHRoaXMgd2lsbCBhbHNvIGNoYW5nZSBpdCB0byAtMS4KKyAgICBpZiAoX19zZW1fZGVjKHNlbV9jb3VudF9wdHIpID4gMCkgeworICAgICAgYnJlYWs7CisgICAgfQorCisgICAgLy8gQ29udGVudGlvbiBkZXRlY3RlZC4gV2FpdCBmb3IgYSB3YWtldXAgZXZlbnQuCisgICAgaW50IHJldCA9IF9fZnV0ZXhfd2FpdF9leChzZW1fY291bnRfcHRyLCBzaGFyZWQsIHNoYXJlZCB8IFNFTUNPVU5UX01JTlVTX09ORSwgJnRzKTsKKworICAgIC8vIFJldHVybiBpbiBjYXNlIG9mIHRpbWVvdXQgb3IgaW50ZXJydXB0LgorICAgIGlmIChyZXQgPT0gLUVUSU1FRE9VVCB8fCByZXQgPT0gLUVJTlRSKSB7CisgICAgICBlcnJubyA9IC1yZXQ7CisgICAgICByZXR1cm4gLTE7CisgICAgfQorICB9CisgIHJldHVybiAwOworfQorCitpbnQgc2VtX3Bvc3Qoc2VtX3QqIHNlbSkgeworICBhdG9taWNfdWludCogc2VtX2NvdW50X3B0ciA9IFNFTV9UT19BVE9NSUNfUE9JTlRFUihzZW0pOworICB1bnNpZ25lZCBpbnQgc2hhcmVkID0gU0VNX0dFVF9TSEFSRUQoc2VtX2NvdW50X3B0cik7CisKKyAgaW50IG9sZF92YWx1ZSA9IF9fc2VtX2luYyhzZW1fY291bnRfcHRyKTsKKyAgaWYgKG9sZF92YWx1ZSA8IDApIHsKKyAgICAvLyBDb250ZW50aW9uIG9uIHRoZSBzZW1hcGhvcmUuIFdha2UgdXAgYWxsIHdhaXRlcnMuCisgICAgX19mdXRleF93YWtlX2V4KHNlbV9jb3VudF9wdHIsIHNoYXJlZCwgSU5UX01BWCk7CisgIH0gZWxzZSBpZiAob2xkX3ZhbHVlID09IFNFTV9WQUxVRV9NQVgpIHsKKyAgICAvLyBPdmVyZmxvdyBkZXRlY3RlZC4KKyAgICBlcnJubyA9IEVPVkVSRkxPVzsKKyAgICByZXR1cm4gLTE7CisgIH0KKworICByZXR1cm4gMDsKK30KKworaW50IHNlbV90cnl3YWl0KHNlbV90KiBzZW0pIHsKKyAgYXRvbWljX3VpbnQqIHNlbV9jb3VudF9wdHIgPSBTRU1fVE9fQVRPTUlDX1BPSU5URVIoc2VtKTsKKyAgaWYgKF9fc2VtX3RyeWRlYyhzZW1fY291bnRfcHRyKSA+IDApIHsKKyAgICByZXR1cm4gMDsKKyAgfSBlbHNlIHsKKyAgICBlcnJubyA9IEVBR0FJTjsKKyAgICByZXR1cm4gLTE7CisgIH0KK30KKworaW50IHNlbV9nZXR2YWx1ZShzZW1fdCogc2VtLCBpbnQqIHN2YWwpIHsKKyAgYXRvbWljX3VpbnQqIHNlbV9jb3VudF9wdHIgPSBTRU1fVE9fQVRPTUlDX1BPSU5URVIoc2VtKTsKKworICAvLyBVc2UgbWVtb3J5X29yZGVyX3NlcV9jc3QgaW4gYXRvbWljX2xvYWQgb3BlcmF0aW9uLgorICAvLyBtZW1vcnlfb3JkZXJfcmVsYXhlZCBtYXkgYmUgZmluZSBoZXJlLCBidXQgaXQgaXMgc3RpbGwgaW4gZGlzY3Vzc2lvbgorICAvLyB3aGV0aGVyIFBPU0lYIHNlbWFwaG9yZXMgc2hvdWxkIHByb3ZpZGUgc2VxdWVudGlhbCBjb25zaXN0ZW5jeS4KKyAgaW50IHZhbCA9IFNFTUNPVU5UX1RPX1ZBTFVFKGF0b21pY19sb2FkKHNlbV9jb3VudF9wdHIpKTsKKyAgaWYgKHZhbCA8IDApIHsKKyAgICB2YWwgPSAwOworICB9CisKKyAgKnN2YWwgPSB2YWw7CisgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvc2lnYWRkc2V0LmNwcCBiL2xpYmMvYmlvbmljL3NpZ2FkZHNldC5jcHAKaW5kZXggMzNlYzZmOC4uY2E2Yjk4MiAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvc2lnYWRkc2V0LmNwcAorKysgYi9saWJjL2Jpb25pYy9zaWdhZGRzZXQuY3BwCkBAIC0yNiwxMiArMjYsMTMgQEAKICAqIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPHNpZ25hbC5oPgogCiBpbnQgc2lnYWRkc2V0KHNpZ3NldF90KiBzZXQsIGludCBzaWdudW0pIHsKICAgaW50IGJpdCA9IHNpZ251bSAtIDE7IC8vIFNpZ25hbCBudW1iZXJzIHN0YXJ0IGF0IDEsIGJ1dCBiaXQgcG9zaXRpb25zIHN0YXJ0IGF0IDAuCi0gIHVuc2lnbmVkIGxvbmcqIGxvY2FsX3NldCA9ICh1bnNpZ25lZCBsb25nKikgc2V0OwotICBpZiAoc2V0ID09IE5VTEwgfHwgYml0IDwgMCB8fCBiaXQgPj0gKGludCkgKDgqc2l6ZW9mKHNpZ3NldF90KSkpIHsKKyAgdW5zaWduZWQgbG9uZyogbG9jYWxfc2V0ID0gcmVpbnRlcnByZXRfY2FzdDx1bnNpZ25lZCBsb25nKj4oc2V0KTsKKyAgaWYgKHNldCA9PSBOVUxMIHx8IGJpdCA8IDAgfHwgYml0ID49IHN0YXRpY19jYXN0PGludD4oOCpzaXplb2Yoc2lnc2V0X3QpKSkgewogICAgIGVycm5vID0gRUlOVkFMOwogICAgIHJldHVybiAtMTsKICAgfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvc2lnZGVsc2V0LmNwcCBiL2xpYmMvYmlvbmljL3NpZ2RlbHNldC5jcHAKaW5kZXggOWVlYTI1MC4uNDgzNjNkMyAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvc2lnZGVsc2V0LmNwcAorKysgYi9saWJjL2Jpb25pYy9zaWdkZWxzZXQuY3BwCkBAIC0yNiwxMiArMjYsMTMgQEAKICAqIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPHNpZ25hbC5oPgogCiBpbnQgc2lnZGVsc2V0KHNpZ3NldF90KiBzZXQsIGludCBzaWdudW0pIHsKICAgaW50IGJpdCA9IHNpZ251bSAtIDE7IC8vIFNpZ25hbCBudW1iZXJzIHN0YXJ0IGF0IDEsIGJ1dCBiaXQgcG9zaXRpb25zIHN0YXJ0IGF0IDAuCi0gIHVuc2lnbmVkIGxvbmcqIGxvY2FsX3NldCA9ICh1bnNpZ25lZCBsb25nKikgc2V0OwotICBpZiAoc2V0ID09IE5VTEwgfHwgYml0IDwgMCB8fCBiaXQgPj0gKGludCkgKDgqc2l6ZW9mKHNpZ3NldF90KSkpIHsKKyAgdW5zaWduZWQgbG9uZyogbG9jYWxfc2V0ID0gcmVpbnRlcnByZXRfY2FzdDx1bnNpZ25lZCBsb25nKj4oc2V0KTsKKyAgaWYgKHNldCA9PSBOVUxMIHx8IGJpdCA8IDAgfHwgYml0ID49IHN0YXRpY19jYXN0PGludD4oOCpzaXplb2Yoc2lnc2V0X3QpKSkgewogICAgIGVycm5vID0gRUlOVkFMOwogICAgIHJldHVybiAtMTsKICAgfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvc2lnZW1wdHlzZXQuY3BwIGIvbGliYy9iaW9uaWMvc2lnZW1wdHlzZXQuY3BwCmluZGV4IDI5OTMxNjkuLjU4MTY2YTEgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3NpZ2VtcHR5c2V0LmNwcAorKysgYi9saWJjL2Jpb25pYy9zaWdlbXB0eXNldC5jcHAKQEAgLTI2LDcgKzI2LDkgQEAKICAqIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPHNpZ25hbC5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgogCiBpbnQgc2lnZW1wdHlzZXQoc2lnc2V0X3QqIHNldCkgewogICBpZiAoc2V0ID09IE5VTEwpIHsKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3NpZ2ZpbGxzZXQuY3BwIGIvbGliYy9iaW9uaWMvc2lnZmlsbHNldC5jcHAKaW5kZXggN2I3Y2JiOC4uY2I2NzM5NCAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvc2lnZmlsbHNldC5jcHAKKysrIGIvbGliYy9iaW9uaWMvc2lnZmlsbHNldC5jcHAKQEAgLTI2LDcgKzI2LDkgQEAKICAqIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPHNpZ25hbC5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgogCiBpbnQgc2lnZmlsbHNldChzaWdzZXRfdCogc2V0KSB7CiAgIGlmIChzZXQgPT0gTlVMTCkgewpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvc2lnaXNtZW1iZXIuY3BwIGIvbGliYy9iaW9uaWMvc2lnaXNtZW1iZXIuY3BwCmluZGV4IDBkYzczYWMuLjlkMWZjM2MgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3NpZ2lzbWVtYmVyLmNwcAorKysgYi9saWJjL2Jpb25pYy9zaWdpc21lbWJlci5jcHAKQEAgLTI2LDE0ICsyNiwxNSBAQAogICogU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8c2lnbmFsLmg+CiAKIGludCBzaWdpc21lbWJlcihjb25zdCBzaWdzZXRfdCogc2V0LCBpbnQgc2lnbnVtKSB7CiAgIGludCBiaXQgPSBzaWdudW0gLSAxOyAvLyBTaWduYWwgbnVtYmVycyBzdGFydCBhdCAxLCBidXQgYml0IHBvc2l0aW9ucyBzdGFydCBhdCAwLgotICBjb25zdCB1bnNpZ25lZCBsb25nKiBsb2NhbF9zZXQgPSAoY29uc3QgdW5zaWduZWQgbG9uZyopIHNldDsKLSAgaWYgKHNldCA9PSBOVUxMIHx8IGJpdCA8IDAgfHwgYml0ID49IChpbnQpICg4KnNpemVvZihzaWdzZXRfdCkpKSB7CisgIGNvbnN0IHVuc2lnbmVkIGxvbmcqIGxvY2FsX3NldCA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgdW5zaWduZWQgbG9uZyo+KHNldCk7CisgIGlmIChzZXQgPT0gTlVMTCB8fCBiaXQgPCAwIHx8IGJpdCA+PSBzdGF0aWNfY2FzdDxpbnQ+KDgqc2l6ZW9mKHNpZ3NldF90KSkpIHsKICAgICBlcnJubyA9IEVJTlZBTDsKICAgICByZXR1cm4gLTE7CiAgIH0KLSAgcmV0dXJuIChpbnQpICgobG9jYWxfc2V0W2JpdCAvIExPTkdfQklUXSA+PiAoYml0ICUgTE9OR19CSVQpKSAmIDEpOworICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50PigobG9jYWxfc2V0W2JpdCAvIExPTkdfQklUXSA+PiAoYml0ICUgTE9OR19CSVQpKSAmIDEpOwogfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvc2lnbmFsLmNwcCBiL2xpYmMvYmlvbmljL3NpZ25hbC5jcHAKaW5kZXggNjZkNzViZC4uNzRhMmY2NSAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvc2lnbmFsLmNwcAorKysgYi9saWJjL2Jpb25pYy9zaWduYWwuY3BwCkBAIC00Myw3ICs0Myw3IEBACiAgICAgcmV0dXJuIFNJR19FUlI7CiAgIH0KIAotICByZXR1cm4gKHNpZ2hhbmRsZXJfdCkgc2Euc2FfaGFuZGxlcjsKKyAgcmV0dXJuIHNhLnNhX2hhbmRsZXI7CiB9CiAKIHNpZ2hhbmRsZXJfdCBzaWduYWwoaW50IHNpZ251bSwgc2lnaGFuZGxlcl90IGhhbmRsZXIpIHsKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3NpZ3F1ZXVlLmNwcCBiL2xpYmMvYmlvbmljL3NpZ3F1ZXVlLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zOWM4Nzk4Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvc2lncXVldWUuY3BwCkBAIC0wLDAgKzEsNDYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPHNpZ25hbC5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorCitleHRlcm4gIkMiIGludCBfX3J0X3NpZ3F1ZXVlaW5mbyhwaWRfdCwgaW50LCBzaWdpbmZvX3QqKTsKKworaW50IHNpZ3F1ZXVlKHBpZF90IHBpZCwgaW50IHNpZ25vLCBjb25zdCBzaWd2YWwgdmFsdWUpIHsKKyAgc2lnaW5mb190IGluZm87CisgIG1lbXNldCgmaW5mbywgMCwgc2l6ZW9mKHNpZ2luZm9fdCkpOworICBpbmZvLnNpX3NpZ25vID0gc2lnbm87CisgIGluZm8uc2lfY29kZSA9IFNJX1FVRVVFOworICBpbmZvLnNpX3BpZCA9IGdldHBpZCgpOworICBpbmZvLnNpX3VpZCA9IGdldHVpZCgpOworICBpbmZvLnNpX3ZhbHVlID0gdmFsdWU7CisKKyAgcmV0dXJuIF9fcnRfc2lncXVldWVpbmZvKHBpZCwgc2lnbm8sICZpbmZvKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3NpZ3RpbWVkd2FpdC5jcHAgYi9saWJjL2Jpb25pYy9zaWd0aW1lZHdhaXQuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMyOWY4MDYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2Jpb25pYy9zaWd0aW1lZHdhaXQuY3BwCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPHNpZ25hbC5oPgorCisjaW5jbHVkZSAicHJpdmF0ZS9rZXJuZWxfc2lnc2V0X3QuaCIKKworZXh0ZXJuICJDIiBpbnQgX19ydF9zaWd0aW1lZHdhaXQoY29uc3Qgc2lnc2V0X3QqLCBzaWdpbmZvX3QqLCBjb25zdCB0aW1lc3BlYyosIHNpemVfdCk7CisKK2ludCBzaWd0aW1lZHdhaXQoY29uc3Qgc2lnc2V0X3QqIHNldCwgc2lnaW5mb190KiBpbmZvLCBjb25zdCB0aW1lc3BlYyogdGltZW91dCkgeworICBrZXJuZWxfc2lnc2V0X3Qgc2lnc2V0KHNldCk7CisgIHJldHVybiBfX3J0X3NpZ3RpbWVkd2FpdChzaWdzZXQuZ2V0KCksIGluZm8sIHRpbWVvdXQsIHNpemVvZihzaWdzZXQpKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3NpZ3dhaXRpbmZvLmNwcCBiL2xpYmMvYmlvbmljL3NpZ3dhaXRpbmZvLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40M2UyMzk1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9iaW9uaWMvc2lnd2FpdGluZm8uY3BwCkBAIC0wLDAgKzEsMzMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPHNpZ25hbC5oPgorCitpbnQgc2lnd2FpdGluZm8oY29uc3Qgc2lnc2V0X3QqIHNldCwgc2lnaW5mb190KiBpbmZvKSB7CisgIHJldHVybiBzaWd0aW1lZHdhaXQoc2V0LCBpbmZvLCBOVUxMKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3N0YXR2ZnMuY3BwIGIvbGliYy9iaW9uaWMvc3RhdHZmcy5jcHAKaW5kZXggZjFlMjgzMy4uMzlmZmI2NCAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvc3RhdHZmcy5jcHAKKysrIGIvbGliYy9iaW9uaWMvc3RhdHZmcy5jcHAKQEAgLTIxLDEzICsyMSwxNyBAQAogLy8gUGFwZXIgb3ZlciB0aGUgZmFjdCB0aGF0IDMyLWJpdCBrZXJuZWxzIHVzZSBmc3RhdGZzNjQvc3RhdGZzNjQgd2l0aCBhbiBleHRyYSBhcmd1bWVudCwKIC8vIGJ1dCA2NC1iaXQga2VybmVscyBkb24ndCBoYXZlIHRoZSAiNjQiIGJpdCBzdWZmaXggb3IgdGhlIGV4dHJhIHNpemVfdCBhcmd1bWVudC4KICNpZiBfX0xQNjRfXwotIyAgZGVmaW5lIF9fZnN0YXRmczY0KGZkLHNpemUsYnVmKSBmc3RhdGZzKGZkLGJ1ZikKLSMgIGRlZmluZSBfX3N0YXRmczY0KHBhdGgsc2l6ZSxidWYpIHN0YXRmcyhwYXRoLGJ1ZikKK2V4dGVybiAiQyIgaW50IF9fZnN0YXRmcyhpbnQsIHN0cnVjdCBzdGF0ZnMqKTsKK2V4dGVybiAiQyIgaW50IF9fc3RhdGZzKGNvbnN0IGNoYXIqLCBzdHJ1Y3Qgc3RhdGZzKik7CisjICBkZWZpbmUgX19mc3RhdGZzNjQoZmQsc2l6ZSxidWYpIF9fZnN0YXRmcyhmZCxidWYpCisjICBkZWZpbmUgX19zdGF0ZnM2NChwYXRoLHNpemUsYnVmKSBfX3N0YXRmcyhwYXRoLGJ1ZikKICNlbHNlCiBleHRlcm4gIkMiIGludCBfX2ZzdGF0ZnM2NChpbnQsIHNpemVfdCwgc3RydWN0IHN0YXRmcyopOwogZXh0ZXJuICJDIiBpbnQgX19zdGF0ZnM2NChjb25zdCBjaGFyKiwgc2l6ZV90LCBzdHJ1Y3Qgc3RhdGZzKik7CiAjZW5kaWYKIAorLy8gVGhlIGtlcm5lbCBzZXRzIGEgcHJpdmF0ZSBTVF9WQUxJRCBmbGFnIHRvIHNpZ25hbCB0byB0aGUgQyBsaWJyYXJ5IHdoZXRoZXIgdGhlCisvLyBmX2ZsYWdzIGZpZWxkIGlzIHZhbGlkLiBUaGlzIGZsYWcgc2hvdWxkIG5vdCBiZSBleHBvc2VkIHRvIHVzZXJzIG9mIHRoZSBDIGxpYnJhcnkuCiAjZGVmaW5lIFNUX1ZBTElEIDB4MDAyMAogCiBzdGF0aWMgdm9pZCBfX3N0YXRmc190b19zdGF0dmZzKGNvbnN0IHN0cnVjdCBzdGF0ZnMmIGluLCBzdHJ1Y3Qgc3RhdHZmcyogb3V0KSB7CkBAIC00MCwxMyArNDQsMzMgQEAKICAgb3V0LT5mX2ZmcmVlID0gaW4uZl9mZnJlZTsKICAgb3V0LT5mX2ZhdmFpbCA9IGluLmZfZmZyZWU7CiAgIG91dC0+Zl9mc2lkID0gaW4uZl9mc2lkLl9fdmFsWzBdIHwgKHN0YXRpY19jYXN0PHVpbnQ2NF90Pihpbi5mX2ZzaWQuX192YWxbMV0pIDw8IDMyKTsKLSAgb3V0LT5mX2ZsYWcgPSBpbi5mX2ZsYWdzICYgflNUX1ZBTElEOworICBvdXQtPmZfZmxhZyA9IGluLmZfZmxhZ3M7CiAgIG91dC0+Zl9uYW1lbWF4ID0gaW4uZl9uYW1lbGVuOwogfQogCitpbnQgZnN0YXRmcyhpbnQgZmQsIHN0cnVjdCBzdGF0ZnMqIHJlc3VsdCkgeworICBpbnQgcmMgPSBfX2ZzdGF0ZnM2NChmZCwgc2l6ZW9mKCpyZXN1bHQpLCByZXN1bHQpOworICBpZiAocmMgIT0gMCkgeworICAgIHJldHVybiByYzsKKyAgfQorICByZXN1bHQtPmZfZmxhZ3MgJj0gflNUX1ZBTElEOworICByZXR1cm4gMDsKK30KK19fc3Ryb25nX2FsaWFzKGZzdGF0ZnM2NCwgZnN0YXRmcyk7CisKK2ludCBzdGF0ZnMoY29uc3QgY2hhciogcGF0aCwgc3RydWN0IHN0YXRmcyogcmVzdWx0KSB7CisgIGludCByYyA9IF9fc3RhdGZzNjQocGF0aCwgc2l6ZW9mKCpyZXN1bHQpLCByZXN1bHQpOworICBpZiAocmMgIT0gMCkgeworICAgIHJldHVybiByYzsKKyAgfQorICByZXN1bHQtPmZfZmxhZ3MgJj0gflNUX1ZBTElEOworICByZXR1cm4gMDsKK30KK19fc3Ryb25nX2FsaWFzKHN0YXRmczY0LCBzdGF0ZnMpOworCiBpbnQgc3RhdHZmcyhjb25zdCBjaGFyKiBwYXRoLCBzdHJ1Y3Qgc3RhdHZmcyogcmVzdWx0KSB7CiAgIHN0cnVjdCBzdGF0ZnMgdG1wOwotICBpbnQgcmMgPSBfX3N0YXRmczY0KHBhdGgsIHNpemVvZih0bXApLCAmdG1wKTsKKyAgaW50IHJjID0gc3RhdGZzKHBhdGgsICZ0bXApOwogICBpZiAocmMgIT0gMCkgewogICAgIHJldHVybiByYzsKICAgfQpAQCAtNTcsNyArODEsNyBAQAogCiBpbnQgZnN0YXR2ZnMoaW50IGZkLCBzdHJ1Y3Qgc3RhdHZmcyogcmVzdWx0KSB7CiAgIHN0cnVjdCBzdGF0ZnMgdG1wOwotICBpbnQgcmMgPSBfX2ZzdGF0ZnM2NChmZCwgc2l6ZW9mKHRtcCksICZ0bXApOworICBpbnQgcmMgPSBmc3RhdGZzKGZkLCAmdG1wKTsKICAgaWYgKHJjICE9IDApIHsKICAgICByZXR1cm4gcmM7CiAgIH0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3N0cmNvbGxfbC5jcHAgYi9saWJjL2Jpb25pYy9zdHJjb2xsX2wuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3ZDdjMjhiLi4wMDAwMDAwCi0tLSBhL2xpYmMvYmlvbmljL3N0cmNvbGxfbC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwzMyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxzdHJpbmcuaD4KLQotaW50IHN0cmNvbGxfbChjb25zdCBjaGFyICpzMSwgY29uc3QgY2hhciAqczIsIGxvY2FsZV90KSB7Ci0gIHJldHVybiBzdHJjb2xsKHMxLCBzMik7Ci19CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9zdHJlcnJvci5jcHAgYi9saWJjL2Jpb25pYy9zdHJlcnJvci5jcHAKaW5kZXggZDE1MThmZi4uZjc0MTk0ZiAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvc3RyZXJyb3IuY3BwCisrKyBiL2xpYmMvYmlvbmljL3N0cmVycm9yLmNwcApAQCAtMzEsMTYgKzMxLDE2IEBACiAKIGV4dGVybiAiQyIgY29uc3QgY2hhciogX19zdHJlcnJvcl9sb29rdXAoaW50KTsKIAotR0xPQkFMX0lOSVRfVEhSRUFEX0xPQ0FMX0JVRkZFUihzdHJlcnJvcik7CitzdGF0aWMgVGhyZWFkTG9jYWxCdWZmZXI8Y2hhciwgTkxfVEVYVE1BWD4gZ19zdHJlcnJvcl90bHNfYnVmZmVyOwogCiBjaGFyKiBzdHJlcnJvcihpbnQgZXJyb3JfbnVtYmVyKSB7CiAgIC8vIEp1c3QgcmV0dXJuIHRoZSBvcmlnaW5hbCBjb25zdGFudCBpbiB0aGUgZWFzeSBjYXNlcy4KICAgY2hhciogcmVzdWx0ID0gY29uc3RfY2FzdDxjaGFyKj4oX19zdHJlcnJvcl9sb29rdXAoZXJyb3JfbnVtYmVyKSk7Ci0gIGlmIChyZXN1bHQgIT0gTlVMTCkgeworICBpZiAocmVzdWx0ICE9IG51bGxwdHIpIHsKICAgICByZXR1cm4gcmVzdWx0OwogICB9CiAKLSAgTE9DQUxfSU5JVF9USFJFQURfTE9DQUxfQlVGRkVSKGNoYXIqLCBzdHJlcnJvciwgTkxfVEVYVE1BWCk7Ci0gIHN0cmVycm9yX3IoZXJyb3JfbnVtYmVyLCBzdHJlcnJvcl90bHNfYnVmZmVyLCBzdHJlcnJvcl90bHNfYnVmZmVyX3NpemUpOwotICByZXR1cm4gc3RyZXJyb3JfdGxzX2J1ZmZlcjsKKyAgcmVzdWx0ID0gZ19zdHJlcnJvcl90bHNfYnVmZmVyLmdldCgpOworICBzdHJlcnJvcl9yKGVycm9yX251bWJlciwgcmVzdWx0LCBnX3N0cmVycm9yX3Rsc19idWZmZXIuc2l6ZSgpKTsKKyAgcmV0dXJuIHJlc3VsdDsKIH0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3N0cmVycm9yX3IuY3BwIGIvbGliYy9iaW9uaWMvc3RyZXJyb3Jfci5jcHAKaW5kZXggMWU1N2NjMC4uZDQxOWZiMSAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvc3RyZXJyb3Jfci5jcHAKKysrIGIvbGliYy9iaW9uaWMvc3RyZXJyb3Jfci5jcHAKQEAgLTEsMTEgKzEsMTYgQEAKIC8qICRPcGVuQlNEOiBzdHJlcnJvcl9yLmMsdiAxLjYgMjAwNS8wOC8wOCAwODowNTozNyBlc3BpZSBFeHAgJCAqLwogLyogUHVibGljIERvbWFpbiA8bWFyY0BzbmFmdS5vcmc+ICovCiAKKy8vIEcrKyBhdXRvbWF0aWNhbGx5IGRlZmluZXMgX0dOVV9TT1VSQ0UsIHdoaWNoIHRoZW4gbWVhbnMgdGhhdCA8c3RyaW5nLmg+CisvLyBnaXZlcyB1cyB0aGUgR05VIHZhcmlhbnQuCisjdW5kZWYgX0dOVV9TT1VSQ0UKKworI2luY2x1ZGUgPHN0cmluZy5oPgorCiAjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNsdWRlIDxsaW1pdHMuaD4KICNpbmNsdWRlIDxzaWduYWwuaD4KICNpbmNsdWRlIDxzdGRpby5oPgotI2luY2x1ZGUgPHN0cmluZy5oPgogCiAjaW5jbHVkZSAicHJpdmF0ZS9FcnJub1Jlc3RvcmVyLmgiCiAjaW5jbHVkZSAicHJpdmF0ZS9saWJjX2xvZ2dpbmcuaCIKQEAgLTYyLDYgKzY3LDEyIEBACiAgIHJldHVybiAwOwogfQogCitleHRlcm4gIkMiIGNoYXIqIF9fZ251X3N0cmVycm9yX3IoaW50IGVycm9yX251bWJlciwgY2hhciogYnVmLCBzaXplX3QgYnVmX2xlbikgeworICBFcnJub1Jlc3RvcmVyIGVycm5vX3Jlc3RvcmVyOyAvLyBUaGUgZ2xpYmMgc3RyZXJyb3JfciBkb2Vzbid0IHNldCBlcnJubyBpZiBpdCB0cnVuY2F0ZXMuLi4KKyAgc3RyZXJyb3JfcihlcnJvcl9udW1iZXIsIGJ1ZiwgYnVmX2xlbik7CisgIHJldHVybiBidWY7IC8vIC4uLmFuZCBqdXN0IHJldHVybnMgd2hhdGV2ZXIgZml0LgorfQorCiBleHRlcm4gIkMiIF9fTElCQ19ISURERU5fXyBjb25zdCBjaGFyKiBfX3N0cnNpZ25hbChpbnQgc2lnbmFsX251bWJlciwgY2hhciogYnVmLCBzaXplX3QgYnVmX2xlbikgewogICBjb25zdCBjaGFyKiBzaWduYWxfbmFtZSA9IF9fc3Ryc2lnbmFsX2xvb2t1cChzaWduYWxfbnVtYmVyKTsKICAgaWYgKHNpZ25hbF9uYW1lICE9IE5VTEwpIHsKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3N0cmZ0aW1lX2wuY3BwIGIvbGliYy9iaW9uaWMvc3RyZnRpbWVfbC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZiMDFkYTUuLjAwMDAwMDAKLS0tIGEvbGliYy9iaW9uaWMvc3RyZnRpbWVfbC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDx0aW1lLmg+Ci0KLXNpemVfdCBzdHJmdGltZV9sKGNoYXIgKnMsIHNpemVfdCBtYXgsIGNvbnN0IGNoYXIgKmZvcm1hdCwgY29uc3Qgc3RydWN0IHRtICp0bSwKLSAgICAgICAgICAgICAgICAgIGxvY2FsZV90KSB7Ci0gIHJldHVybiBzdHJmdGltZShzLCBtYXgsIGZvcm1hdCwgdG0pOwotfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvc3Ryc2lnbmFsLmNwcCBiL2xpYmMvYmlvbmljL3N0cnNpZ25hbC5jcHAKaW5kZXggOWYwMTkzYS4uYzM4OWRkZCAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvc3Ryc2lnbmFsLmNwcAorKysgYi9saWJjL2Jpb25pYy9zdHJzaWduYWwuY3BwCkBAIC0zMiw3ICszMiw3IEBACiBleHRlcm4gIkMiIGNvbnN0IGNoYXIqIF9fc3Ryc2lnbmFsX2xvb2t1cChpbnQpOwogZXh0ZXJuICJDIiBjb25zdCBjaGFyKiBfX3N0cnNpZ25hbChpbnQsIGNoYXIqLCBzaXplX3QpOwogCi1HTE9CQUxfSU5JVF9USFJFQURfTE9DQUxfQlVGRkVSKHN0cnNpZ25hbCk7CitzdGF0aWMgVGhyZWFkTG9jYWxCdWZmZXI8Y2hhciwgTkxfVEVYVE1BWD4gZ19zdHJzaWduYWxfdGxzX2J1ZmZlcjsKIAogY2hhciogc3Ryc2lnbmFsKGludCBzaWduYWxfbnVtYmVyKSB7CiAgIC8vIEp1c3QgcmV0dXJuIHRoZSBvcmlnaW5hbCBjb25zdGFudCBpbiB0aGUgZWFzeSBjYXNlcy4KQEAgLTQxLDYgKzQxLDYgQEAKICAgICByZXR1cm4gcmVzdWx0OwogICB9CiAKLSAgTE9DQUxfSU5JVF9USFJFQURfTE9DQUxfQlVGRkVSKGNoYXIqLCBzdHJzaWduYWwsIE5MX1RFWFRNQVgpOwotICByZXR1cm4gY29uc3RfY2FzdDxjaGFyKj4oX19zdHJzaWduYWwoc2lnbmFsX251bWJlciwgc3Ryc2lnbmFsX3Rsc19idWZmZXIsIHN0cnNpZ25hbF90bHNfYnVmZmVyX3NpemUpKTsKKyAgcmV0dXJuIGNvbnN0X2Nhc3Q8Y2hhcio+KF9fc3Ryc2lnbmFsKHNpZ25hbF9udW1iZXIsIGdfc3Ryc2lnbmFsX3Rsc19idWZmZXIuZ2V0KCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnX3N0cnNpZ25hbF90bHNfYnVmZmVyLnNpemUoKSkpOwogfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvc3RydG9sZF9sLmNwcCBiL2xpYmMvYmlvbmljL3N0cnRvbGRfbC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRiMjMwYjkuLjAwMDAwMDAKLS0tIGEvbGliYy9iaW9uaWMvc3RydG9sZF9sLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDMzICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCi0gKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0gKiAgICBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCi0gKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQotICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAotICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKLSAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUwotICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECi0gKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCi0gKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKLSAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgPHN0ZGxpYi5oPgotCi1sb25nIGRvdWJsZSBzdHJ0b2xkX2woY29uc3QgY2hhciAqbnB0ciwgY2hhciAqKmVuZHB0ciwgbG9jYWxlX3QpIHsKLSAgcmV0dXJuIHN0cnRvbGQobnB0ciwgZW5kcHRyKTsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3N0cnRvbGxfbC5jcHAgYi9saWJjL2Jpb25pYy9zdHJ0b2xsX2wuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0N2IxMjZlLi4wMDAwMDAwCi0tLSBhL2xpYmMvYmlvbmljL3N0cnRvbGxfbC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwzMyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxzdGRsaWIuaD4KLQotbG9uZyBsb25nIHN0cnRvbGxfbChjb25zdCBjaGFyICpucHRyLCBjaGFyICoqZW5kcHRyLCBpbnQgYmFzZSwgbG9jYWxlX3QpIHsKLSAgcmV0dXJuIHN0cnRvbGwobnB0ciwgZW5kcHRyLCBiYXNlKTsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3N0cnRvdWxsX2wuY3BwIGIvbGliYy9iaW9uaWMvc3RydG91bGxfbC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDM5OGJhMGUuLjAwMDAwMDAKLS0tIGEvbGliYy9iaW9uaWMvc3RydG91bGxfbC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwzNCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxzdGRsaWIuaD4KLQotdW5zaWduZWQgbG9uZyBsb25nIHN0cnRvdWxsX2woY29uc3QgY2hhciAqbnB0ciwgY2hhciAqKmVuZHB0ciwgaW50IGJhc2UsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbGVfdCkgewotICByZXR1cm4gc3RydG91bGwobnB0ciwgZW5kcHRyLCBiYXNlKTsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3N0cnhmcm1fbC5jcHAgYi9saWJjL2Jpb25pYy9zdHJ4ZnJtX2wuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhZmUzYjk2Li4wMDAwMDAwCi0tLSBhL2xpYmMvYmlvbmljL3N0cnhmcm1fbC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwzMyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxzdHJpbmcuaD4KLQotc2l6ZV90IHN0cnhmcm1fbChjaGFyICpkZXN0LCBjb25zdCBjaGFyICpzcmMsIHNpemVfdCBuLCBsb2NhbGVfdCkgewotICByZXR1cm4gc3RyeGZybShkZXN0LCBzcmMsIG4pOwotfQpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvc3R1YnMuY3BwIGIvbGliYy9iaW9uaWMvc3R1YnMuY3BwCmluZGV4IGIxZTM4YmUuLmI1N2FlZGEgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3N0dWJzLmNwcAorKysgYi9saWJjL2Jpb25pYy9zdHVicy5jcHAKQEAgLTM1LDI1ICszNSw0NiBAQAogI2luY2x1ZGUgPHB3ZC5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKICNpbmNsdWRlICJwcml2YXRlL2FuZHJvaWRfZmlsZXN5c3RlbV9jb25maWcuaCIKICNpbmNsdWRlICJwcml2YXRlL0Vycm5vUmVzdG9yZXIuaCIKICNpbmNsdWRlICJwcml2YXRlL2xpYmNfbG9nZ2luZy5oIgorI2luY2x1ZGUgInByaXZhdGUvVGhyZWFkTG9jYWxCdWZmZXIuaCIKIAotLy8gVGhyZWFkLXNwZWNpZmljIHN0YXRlIGZvciB0aGUgbm9uLXJlZW50cmFudCBmdW5jdGlvbnMuCi1zdGF0aWMgcHRocmVhZF9vbmNlX3Qgc3R1YnNfb25jZSA9IFBUSFJFQURfT05DRV9JTklUOwotc3RhdGljIHB0aHJlYWRfa2V5X3Qgc3R1YnNfa2V5Owotc3RydWN0IHN0dWJzX3N0YXRlX3QgewotICBwYXNzd2QgcGFzc3dkXzsKKy8vIFBPU0lYIHNlZW1zIHRvIGVudmlzYWdlIGFuIGltcGxlbWVudGF0aW9uIHdoZXJlIHRoZSA8cHdkLmg+IGZ1bmN0aW9ucyBhcmUKKy8vIGltcGxlbWVudGVkIGJ5IGJydXRlLWZvcmNlIHNlYXJjaGluZyB3aXRoIGdldHB3ZW50KDMpLCBhbmQgdGhlIDxncnAuaD4KKy8vIGZ1bmN0aW9ucyBhcmUgaW1wbGVtZW50ZWQgc2ltaWxhcmx5IHdpdGggZ2V0Z3JlbnQoMykuIFRoaXMgbWVhbnMgdGhhdCBpdCdzCisvLyBva2F5IGZvciBhbGwgdGhlIDxncnAuaD4gZnVuY3Rpb25zIHRvIHNoYXJlIHN0YXRlLCBhbmQgYWxsIHRoZSA8cGFzc3dkLmg+CisvLyBmdW5jdGlvbnMgdG8gc2hhcmUgc3RhdGUsIGJ1dCA8Z3JwLmg+IGZ1bmN0aW9ucyBjYW4ndCBjbG9iYmVyIDxwYXNzd2QuaD4KKy8vIGZ1bmN0aW9ucycgc3RhdGUgYW5kIHZpY2UgdmVyc2EuCisKK3N0cnVjdCBncm91cF9zdGF0ZV90IHsKICAgZ3JvdXAgZ3JvdXBfOwogICBjaGFyKiBncm91cF9tZW1iZXJzX1syXTsKLSAgY2hhciBhcHBfbmFtZV9idWZmZXJfWzMyXTsKICAgY2hhciBncm91cF9uYW1lX2J1ZmZlcl9bMzJdOworfTsKKworc3RydWN0IHBhc3N3ZF9zdGF0ZV90IHsKKyAgcGFzc3dkIHBhc3N3ZF87CisgIGNoYXIgbmFtZV9idWZmZXJfWzMyXTsKICAgY2hhciBkaXJfYnVmZmVyX1szMl07CiAgIGNoYXIgc2hfYnVmZmVyX1szMl07CiB9OwogCitzdGF0aWMgVGhyZWFkTG9jYWxCdWZmZXI8Z3JvdXBfc3RhdGVfdD4gZ19ncm91cF90bHNfYnVmZmVyOworc3RhdGljIFRocmVhZExvY2FsQnVmZmVyPHBhc3N3ZF9zdGF0ZV90PiBnX3Bhc3N3ZF90bHNfYnVmZmVyOworCitzdGF0aWMgZ3JvdXBfc3RhdGVfdCogX19ncm91cF9zdGF0ZSgpIHsKKyAgZ3JvdXBfc3RhdGVfdCogcmVzdWx0ID0gZ19ncm91cF90bHNfYnVmZmVyLmdldCgpOworICBpZiAocmVzdWx0ICE9IG51bGxwdHIpIHsKKyAgICBtZW1zZXQocmVzdWx0LCAwLCBzaXplb2YoZ3JvdXBfc3RhdGVfdCkpOworICAgIHJlc3VsdC0+Z3JvdXBfLmdyX21lbSA9IHJlc3VsdC0+Z3JvdXBfbWVtYmVyc187CisgIH0KKyAgcmV0dXJuIHJlc3VsdDsKK30KKwogc3RhdGljIGludCBkb19nZXRwd19yKGludCBieV9uYW1lLCBjb25zdCBjaGFyKiBuYW1lLCB1aWRfdCB1aWQsCiAgICAgICAgICAgICAgICAgICAgICAgcGFzc3dkKiBkc3QsIGNoYXIqIGJ1Ziwgc2l6ZV90IGJ5dGVfY291bnQsCiAgICAgICAgICAgICAgICAgICAgICAgcGFzc3dkKiogcmVzdWx0KSB7CkBAIC05MSw3ICsxMTIsNyBAQAogCiAgIC8vIHB3X3Bhc3N3ZCBhbmQgcHdfZ2Vjb3MgYXJlIG5vbi1QT1NJWCBhbmQgdW51c2VkIChhbHdheXMgTlVMTCkgaW4gYmlvbmljLgogICBkc3QtPnB3X3Bhc3N3ZCA9IE5VTEw7Ci0jaWZkZWYgX19MUDY0X18KKyNpZiBkZWZpbmVkKF9fTFA2NF9fKQogICBkc3QtPnB3X2dlY29zID0gTlVMTDsKICNlbmRpZgogCkBAIC0xMTMsNDggKzEzNCwxNCBAQAogICByZXR1cm4gZG9fZ2V0cHdfcigwLCBOVUxMLCB1aWQsIHB3ZCwgYnVmLCBieXRlX2NvdW50LCByZXN1bHQpOwogfQogCi1zdGF0aWMgc3R1YnNfc3RhdGVfdCogc3R1YnNfc3RhdGVfYWxsb2MoKSB7Ci0gIHN0dWJzX3N0YXRlX3QqICBzID0gc3RhdGljX2Nhc3Q8c3R1YnNfc3RhdGVfdCo+KGNhbGxvYygxLCBzaXplb2YoKnMpKSk7Ci0gIGlmIChzICE9IE5VTEwpIHsKLSAgICBzLT5ncm91cF8uZ3JfbWVtID0gcy0+Z3JvdXBfbWVtYmVyc187Ci0gIH0KLSAgcmV0dXJuIHM7Ci19Ci0KLXN0YXRpYyB2b2lkIHN0dWJzX3N0YXRlX2ZyZWUodm9pZCogcHRyKSB7Ci0gIHN0dWJzX3N0YXRlX3QqIHN0YXRlID0gc3RhdGljX2Nhc3Q8c3R1YnNfc3RhdGVfdCo+KHB0cik7Ci0gIGZyZWUoc3RhdGUpOwotfQotCi1zdGF0aWMgdm9pZCBfX3N0dWJzX2tleV9pbml0KCkgewotICBwdGhyZWFkX2tleV9jcmVhdGUoJnN0dWJzX2tleSwgc3R1YnNfc3RhdGVfZnJlZSk7Ci19Ci0KLXN0YXRpYyBzdHVic19zdGF0ZV90KiBfX3N0dWJzX3N0YXRlKCkgewotICBwdGhyZWFkX29uY2UoJnN0dWJzX29uY2UsIF9fc3R1YnNfa2V5X2luaXQpOwotICBzdHVic19zdGF0ZV90KiBzID0gc3RhdGljX2Nhc3Q8c3R1YnNfc3RhdGVfdCo+KHB0aHJlYWRfZ2V0c3BlY2lmaWMoc3R1YnNfa2V5KSk7Ci0gIGlmIChzID09IE5VTEwpIHsKLSAgICBzID0gc3R1YnNfc3RhdGVfYWxsb2MoKTsKLSAgICBpZiAocyA9PSBOVUxMKSB7Ci0gICAgICBlcnJubyA9IEVOT01FTTsgIC8vIEp1c3QgaW4gY2FzZS4KLSAgICB9IGVsc2UgewotICAgICAgaWYgKHB0aHJlYWRfc2V0c3BlY2lmaWMoc3R1YnNfa2V5LCBzKSAhPSAwKSB7Ci0gICAgICAgIHN0dWJzX3N0YXRlX2ZyZWUocyk7Ci0gICAgICAgIGVycm5vID0gRU5PTUVNOwotICAgICAgICBzID0gTlVMTDsKLSAgICAgIH0KLSAgICB9Ci0gIH0KLSAgcmV0dXJuIHM7Ci19Ci0KLXN0YXRpYyBwYXNzd2QqIGFuZHJvaWRfaWluZm9fdG9fcGFzc3dkKHN0dWJzX3N0YXRlX3QqIHN0YXRlLAorc3RhdGljIHBhc3N3ZCogYW5kcm9pZF9paW5mb190b19wYXNzd2QocGFzc3dkX3N0YXRlX3QqIHN0YXRlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYW5kcm9pZF9pZF9pbmZvKiBpaW5mbykgeworICBzbnByaW50ZihzdGF0ZS0+bmFtZV9idWZmZXJfLCBzaXplb2Yoc3RhdGUtPm5hbWVfYnVmZmVyXyksICIlcyIsIGlpbmZvLT5uYW1lKTsKICAgc25wcmludGYoc3RhdGUtPmRpcl9idWZmZXJfLCBzaXplb2Yoc3RhdGUtPmRpcl9idWZmZXJfKSwgIi8iKTsKICAgc25wcmludGYoc3RhdGUtPnNoX2J1ZmZlcl8sIHNpemVvZihzdGF0ZS0+c2hfYnVmZmVyXyksICIvc3lzdGVtL2Jpbi9zaCIpOwogCiAgIHBhc3N3ZCogcHcgPSAmc3RhdGUtPnBhc3N3ZF87Ci0gIHB3LT5wd19uYW1lICA9IChjaGFyKikgaWluZm8tPm5hbWU7CisgIHB3LT5wd19uYW1lICA9IHN0YXRlLT5uYW1lX2J1ZmZlcl87CiAgIHB3LT5wd191aWQgICA9IGlpbmZvLT5haWQ7CiAgIHB3LT5wd19naWQgICA9IGlpbmZvLT5haWQ7CiAgIHB3LT5wd19kaXIgICA9IHN0YXRlLT5kaXJfYnVmZmVyXzsKQEAgLTE2MiwxNiArMTQ5LDE4IEBACiAgIHJldHVybiBwdzsKIH0KIAotc3RhdGljIGdyb3VwKiBhbmRyb2lkX2lpbmZvX3RvX2dyb3VwKGdyb3VwKiBnciwKK3N0YXRpYyBncm91cCogYW5kcm9pZF9paW5mb190b19ncm91cChncm91cF9zdGF0ZV90KiBzdGF0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBhbmRyb2lkX2lkX2luZm8qIGlpbmZvKSB7Ci0gIGdyLT5ncl9uYW1lICAgPSAoY2hhciopIGlpbmZvLT5uYW1lOworICBzbnByaW50ZihzdGF0ZS0+Z3JvdXBfbmFtZV9idWZmZXJfLCBzaXplb2Yoc3RhdGUtPmdyb3VwX25hbWVfYnVmZmVyXyksICIlcyIsIGlpbmZvLT5uYW1lKTsKKworICBncm91cCogZ3IgPSAmc3RhdGUtPmdyb3VwXzsKKyAgZ3ItPmdyX25hbWUgICA9IHN0YXRlLT5ncm91cF9uYW1lX2J1ZmZlcl87CiAgIGdyLT5ncl9naWQgICAgPSBpaW5mby0+YWlkOwogICBnci0+Z3JfbWVtWzBdID0gZ3ItPmdyX25hbWU7Ci0gIGdyLT5ncl9tZW1bMV0gPSBOVUxMOwogICByZXR1cm4gZ3I7CiB9CiAKLXN0YXRpYyBwYXNzd2QqIGFuZHJvaWRfaWRfdG9fcGFzc3dkKHN0dWJzX3N0YXRlX3QqIHN0YXRlLCB1bnNpZ25lZCBpZCkgeworc3RhdGljIHBhc3N3ZCogYW5kcm9pZF9pZF90b19wYXNzd2QocGFzc3dkX3N0YXRlX3QqIHN0YXRlLCB1bnNpZ25lZCBpZCkgewogICBmb3IgKHNpemVfdCBuID0gMDsgbiA8IGFuZHJvaWRfaWRfY291bnQ7ICsrbikgewogICAgIGlmIChhbmRyb2lkX2lkc1tuXS5haWQgPT0gaWQpIHsKICAgICAgIHJldHVybiBhbmRyb2lkX2lpbmZvX3RvX3Bhc3N3ZChzdGF0ZSwgYW5kcm9pZF9pZHMgKyBuKTsKQEAgLTE4MCw3ICsxNjksNyBAQAogICByZXR1cm4gTlVMTDsKIH0KIAotc3RhdGljIHBhc3N3ZCogYW5kcm9pZF9uYW1lX3RvX3Bhc3N3ZChzdHVic19zdGF0ZV90KiBzdGF0ZSwgY29uc3QgY2hhciogbmFtZSkgeworc3RhdGljIHBhc3N3ZCogYW5kcm9pZF9uYW1lX3RvX3Bhc3N3ZChwYXNzd2Rfc3RhdGVfdCogc3RhdGUsIGNvbnN0IGNoYXIqIG5hbWUpIHsKICAgZm9yIChzaXplX3QgbiA9IDA7IG4gPCBhbmRyb2lkX2lkX2NvdW50OyArK24pIHsKICAgICBpZiAoIXN0cmNtcChhbmRyb2lkX2lkc1tuXS5uYW1lLCBuYW1lKSkgewogICAgICAgcmV0dXJuIGFuZHJvaWRfaWluZm9fdG9fcGFzc3dkKHN0YXRlLCBhbmRyb2lkX2lkcyArIG4pOwpAQCAtMTg5LDM3ICsxNzgsNDYgQEAKICAgcmV0dXJuIE5VTEw7CiB9CiAKLXN0YXRpYyBncm91cCogYW5kcm9pZF9pZF90b19ncm91cChncm91cCogZ3IsIHVuc2lnbmVkIGlkKSB7CitzdGF0aWMgZ3JvdXAqIGFuZHJvaWRfaWRfdG9fZ3JvdXAoZ3JvdXBfc3RhdGVfdCogc3RhdGUsIHVuc2lnbmVkIGlkKSB7CiAgIGZvciAoc2l6ZV90IG4gPSAwOyBuIDwgYW5kcm9pZF9pZF9jb3VudDsgKytuKSB7CiAgICAgaWYgKGFuZHJvaWRfaWRzW25dLmFpZCA9PSBpZCkgewotICAgICAgcmV0dXJuIGFuZHJvaWRfaWluZm9fdG9fZ3JvdXAoZ3IsIGFuZHJvaWRfaWRzICsgbik7CisgICAgICByZXR1cm4gYW5kcm9pZF9paW5mb190b19ncm91cChzdGF0ZSwgYW5kcm9pZF9pZHMgKyBuKTsKICAgICB9CiAgIH0KICAgcmV0dXJuIE5VTEw7CiB9CiAKLXN0YXRpYyBncm91cCogYW5kcm9pZF9uYW1lX3RvX2dyb3VwKGdyb3VwKiBnciwgY29uc3QgY2hhciogbmFtZSkgeworc3RhdGljIGdyb3VwKiBhbmRyb2lkX25hbWVfdG9fZ3JvdXAoZ3JvdXBfc3RhdGVfdCogc3RhdGUsIGNvbnN0IGNoYXIqIG5hbWUpIHsKICAgZm9yIChzaXplX3QgbiA9IDA7IG4gPCBhbmRyb2lkX2lkX2NvdW50OyArK24pIHsKICAgICBpZiAoIXN0cmNtcChhbmRyb2lkX2lkc1tuXS5uYW1lLCBuYW1lKSkgewotICAgICAgcmV0dXJuIGFuZHJvaWRfaWluZm9fdG9fZ3JvdXAoZ3IsIGFuZHJvaWRfaWRzICsgbik7CisgICAgICByZXR1cm4gYW5kcm9pZF9paW5mb190b19ncm91cChzdGF0ZSwgYW5kcm9pZF9pZHMgKyBuKTsKICAgICB9CiAgIH0KICAgcmV0dXJuIE5VTEw7CiB9CiAKIC8vIFRyYW5zbGF0ZSBhIHVzZXIvZ3JvdXAgbmFtZSB0byB0aGUgY29ycmVzcG9uZGluZyB1c2VyL2dyb3VwIGlkLgorLy8gYWxsX2ExMjM0IC0+IDAgKiBBSURfVVNFUiArIEFJRF9TSEFSRURfR0lEX1NUQVJUICsgMTIzNCAoZ3JvdXAgbmFtZSBvbmx5KQogLy8gdTBfYTEyMzQgLT4gMCAqIEFJRF9VU0VSICsgQUlEX0FQUCArIDEyMzQKIC8vIHUyX2kxMDAwIC0+IDIgKiBBSURfVVNFUiArIEFJRF9JU09MQVRFRF9TVEFSVCArIDEwMDAKIC8vIHUxX3N5c3RlbSAtPiAxICogQUlEX1VTRVIgKyBhbmRyb2lkX2lkc1snc3lzdGVtJ10KIC8vIHJldHVybnMgMCBhbmQgc2V0cyBlcnJubyB0byBFTk9FTlQgaW4gY2FzZSBvZiBlcnJvcgotc3RhdGljIHVuc2lnbmVkIGFwcF9pZF9mcm9tX25hbWUoY29uc3QgY2hhciogbmFtZSkgewotICBpZiAobmFtZVswXSAhPSAndScgfHwgIWlzZGlnaXQobmFtZVsxXSkpIHsKK3N0YXRpYyBpZF90IGFwcF9pZF9mcm9tX25hbWUoY29uc3QgY2hhciogbmFtZSwgYm9vbCBpc19ncm91cCkgeworICBjaGFyKiBlbmQ7CisgIHVuc2lnbmVkIGxvbmcgdXNlcmlkOworICBib29sIGlzX3NoYXJlZF9naWQgPSBmYWxzZTsKKworICBpZiAoaXNfZ3JvdXAgJiYgbmFtZVswXSA9PSAnYScgJiYgbmFtZVsxXSA9PSAnbCcgJiYgbmFtZVsyXSA9PSAnbCcpIHsKKyAgICBlbmQgPSBjb25zdF9jYXN0PGNoYXIqPihuYW1lKzMpOworICAgIHVzZXJpZCA9IDA7CisgICAgaXNfc2hhcmVkX2dpZCA9IHRydWU7CisgIH0gZWxzZSBpZiAobmFtZVswXSA9PSAndScgJiYgaXNkaWdpdChuYW1lWzFdKSkgeworICAgIHVzZXJpZCA9IHN0cnRvdWwobmFtZSsxLCAmZW5kLCAxMCk7CisgIH0gZWxzZSB7CiAgICAgZXJybm8gPSBFTk9FTlQ7CiAgICAgcmV0dXJuIDA7CiAgIH0KIAotICBjaGFyKiBlbmQ7Ci0gIHVuc2lnbmVkIGxvbmcgdXNlcmlkID0gc3RydG91bChuYW1lKzEsICZlbmQsIDEwKTsKICAgaWYgKGVuZFswXSAhPSAnXycgfHwgZW5kWzFdID09IDApIHsKICAgICBlcnJubyA9IEVOT0VOVDsKICAgICByZXR1cm4gMDsKQEAgLTIyNyw4ICsyMjUsMTcgQEAKIAogICB1bnNpZ25lZCBsb25nIGFwcGlkID0gMDsKICAgaWYgKGVuZFsxXSA9PSAnYScgJiYgaXNkaWdpdChlbmRbMl0pKSB7Ci0gICAgLy8gZW5kIHdpbGwgcG9pbnQgdG8gXDAgaWYgdGhlIHN0cnRvdWwgYmVsb3cgc3VjY2VlZHMuCi0gICAgYXBwaWQgPSBzdHJ0b3VsKGVuZCsyLCAmZW5kLCAxMCkgKyBBSURfQVBQOworICAgIGlmIChpc19zaGFyZWRfZ2lkKSB7CisgICAgICAvLyBlbmQgd2lsbCBwb2ludCB0byBcMCBpZiB0aGUgc3RydG91bCBiZWxvdyBzdWNjZWVkcy4KKyAgICAgIGFwcGlkID0gc3RydG91bChlbmQrMiwgJmVuZCwgMTApICsgQUlEX1NIQVJFRF9HSURfU1RBUlQ7CisgICAgICBpZiAoYXBwaWQgPiBBSURfU0hBUkVEX0dJRF9FTkQpIHsKKyAgICAgICAgZXJybm8gPSBFTk9FTlQ7CisgICAgICAgIHJldHVybiAwOworICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICAvLyBlbmQgd2lsbCBwb2ludCB0byBcMCBpZiB0aGUgc3RydG91bCBiZWxvdyBzdWNjZWVkcy4KKyAgICAgIGFwcGlkID0gc3RydG91bChlbmQrMiwgJmVuZCwgMTApICsgQUlEX0FQUDsKKyAgICB9CiAgIH0gZWxzZSBpZiAoZW5kWzFdID09ICdpJyAmJiBpc2RpZ2l0KGVuZFsyXSkpIHsKICAgICAvLyBlbmQgd2lsbCBwb2ludCB0byBcMCBpZiB0aGUgc3RydG91bCBiZWxvdyBzdWNjZWVkcy4KICAgICBhcHBpZCA9IHN0cnRvdWwoZW5kKzIsICZlbmQsIDEwKSArIEFJRF9JU09MQVRFRF9TVEFSVDsKQEAgLTIzOCw2ICsyNDUsNyBAQAogICAgICAgICBhcHBpZCA9IGFuZHJvaWRfaWRzW25dLmFpZDsKICAgICAgICAgLy8gTW92ZSB0aGUgZW5kIHBvaW50ZXIgdG8gdGhlIG51bGwgdGVybWluYXRvci4KICAgICAgICAgZW5kICs9IHN0cmxlbihhbmRyb2lkX2lkc1tuXS5uYW1lKSArIDE7CisgICAgICAgIGJyZWFrOwogICAgICAgfQogICAgIH0KICAgfQpAQCAtMjYwLDE0ICsyNjgsMzIgQEAKICAgICByZXR1cm4gMDsKICAgfQogCi0gIHJldHVybiAodW5zaWduZWQpKGFwcGlkICsgdXNlcmlkKkFJRF9VU0VSKTsKKyAgcmV0dXJuIChhcHBpZCArIHVzZXJpZCpBSURfVVNFUik7CiB9CiAKLXN0YXRpYyB2b2lkIHByaW50X2FwcF9uYW1lX2Zyb21fYXBwaWRfdXNlcmlkKGNvbnN0IHVpZF90IGFwcGlkLAotICAgIGNvbnN0IHVpZF90IHVzZXJpZCwgY2hhciogYnVmZmVyLCBjb25zdCBpbnQgYnVmZmVybGVuKSB7CitzdGF0aWMgdm9pZCBwcmludF9hcHBfbmFtZV9mcm9tX3VpZChjb25zdCB1aWRfdCB1aWQsIGNoYXIqIGJ1ZmZlciwgY29uc3QgaW50IGJ1ZmZlcmxlbikgeworICBjb25zdCB1aWRfdCBhcHBpZCA9IHVpZCAlIEFJRF9VU0VSOworICBjb25zdCB1aWRfdCB1c2VyaWQgPSB1aWQgLyBBSURfVVNFUjsKICAgaWYgKGFwcGlkID49IEFJRF9JU09MQVRFRF9TVEFSVCkgewogICAgIHNucHJpbnRmKGJ1ZmZlciwgYnVmZmVybGVuLCAidSV1X2kldSIsIHVzZXJpZCwgYXBwaWQgLSBBSURfSVNPTEFURURfU1RBUlQpOwotICB9IGVsc2UgaWYgKHVzZXJpZCA9PSAwICYmIGFwcGlkID49IEFJRF9TSEFSRURfR0lEX1NUQVJUKSB7CisgIH0gZWxzZSBpZiAoYXBwaWQgPCBBSURfQVBQKSB7CisgICAgZm9yIChzaXplX3QgbiA9IDA7IG4gPCBhbmRyb2lkX2lkX2NvdW50OyBuKyspIHsKKyAgICAgIGlmIChhbmRyb2lkX2lkc1tuXS5haWQgPT0gYXBwaWQpIHsKKyAgICAgICAgc25wcmludGYoYnVmZmVyLCBidWZmZXJsZW4sICJ1JXVfJXMiLCB1c2VyaWQsIGFuZHJvaWRfaWRzW25dLm5hbWUpOworICAgICAgICByZXR1cm47CisgICAgICB9CisgICAgfQorICB9IGVsc2UgeworICAgIHNucHJpbnRmKGJ1ZmZlciwgYnVmZmVybGVuLCAidSV1X2EldSIsIHVzZXJpZCwgYXBwaWQgLSBBSURfQVBQKTsKKyAgfQorfQorCitzdGF0aWMgdm9pZCBwcmludF9hcHBfbmFtZV9mcm9tX2dpZChjb25zdCBnaWRfdCBnaWQsIGNoYXIqIGJ1ZmZlciwgY29uc3QgaW50IGJ1ZmZlcmxlbikgeworICBjb25zdCB1aWRfdCBhcHBpZCA9IGdpZCAlIEFJRF9VU0VSOworICBjb25zdCB1aWRfdCB1c2VyaWQgPSBnaWQgLyBBSURfVVNFUjsKKyAgaWYgKGFwcGlkID49IEFJRF9JU09MQVRFRF9TVEFSVCkgeworICAgIHNucHJpbnRmKGJ1ZmZlciwgYnVmZmVybGVuLCAidSV1X2kldSIsIHVzZXJpZCwgYXBwaWQgLSBBSURfSVNPTEFURURfU1RBUlQpOworICB9IGVsc2UgaWYgKHVzZXJpZCA9PSAwICYmIGFwcGlkID49IEFJRF9TSEFSRURfR0lEX1NUQVJUICYmIGFwcGlkIDw9IEFJRF9TSEFSRURfR0lEX0VORCkgewogICAgIHNucHJpbnRmKGJ1ZmZlciwgYnVmZmVybGVuLCAiYWxsX2EldSIsIGFwcGlkIC0gQUlEX1NIQVJFRF9HSURfU1RBUlQpOwogICB9IGVsc2UgaWYgKGFwcGlkIDwgQUlEX0FQUCkgewogICAgIGZvciAoc2l6ZV90IG4gPSAwOyBuIDwgYW5kcm9pZF9pZF9jb3VudDsgbisrKSB7CkBAIC0yODEsMzIgKzMwNywyMSBAQAogICB9CiB9CiAKLXN0YXRpYyB2b2lkIHByaW50X2FwcF9uYW1lX2Zyb21fdWlkKGNvbnN0IHVpZF90IHVpZCwgY2hhciogYnVmZmVyLCBjb25zdCBpbnQgYnVmZmVybGVuKSB7Ci0gIGNvbnN0IHVpZF90IGFwcGlkID0gdWlkICUgQUlEX1VTRVI7Ci0gIGNvbnN0IHVpZF90IHVzZXJpZCA9IHVpZCAvIEFJRF9VU0VSOwotICByZXR1cm4gcHJpbnRfYXBwX25hbWVfZnJvbV9hcHBpZF91c2VyaWQoYXBwaWQsIHVzZXJpZCwgYnVmZmVyLCBidWZmZXJsZW4pOwotfQotCiAvLyBUcmFuc2xhdGUgYSB1aWQgaW50byB0aGUgY29ycmVzcG9uZGluZyBuYW1lLgogLy8gMCB0byBBSURfQVBQLTEgICAgICAgICAgICAgICAgICAgLT4gInN5c3RlbSIsICJyYWRpbyIsIGV0Yy4KIC8vIEFJRF9BUFAgdG8gQUlEX0lTT0xBVEVEX1NUQVJULTEgIC0+IHUwX2ExMjM0CiAvLyBBSURfSVNPTEFURURfU1RBUlQgdG8gQUlEX1VTRVItMSAtPiB1MF9pMTIzNAogLy8gQUlEX1VTRVIrICAgICAgICAgICAgICAgICAgICAgICAgLT4gdTFfcmFkaW8sIHUxX2ExMjM0LCB1Ml9pMTIzNCwgZXRjLgogLy8gcmV0dXJucyBhIHBhc3N3ZCBzdHJ1Y3R1cmUgKHNldHMgZXJybm8gdG8gRU5PRU5UIG9uIGZhaWx1cmUpLgotc3RhdGljIHBhc3N3ZCogYXBwX2lkX3RvX3Bhc3N3ZCh1aWRfdCB1aWQsIHN0dWJzX3N0YXRlX3QqIHN0YXRlKSB7Ci0gIHBhc3N3ZCogcHcgPSAmc3RhdGUtPnBhc3N3ZF87Ci0KK3N0YXRpYyBwYXNzd2QqIGFwcF9pZF90b19wYXNzd2QodWlkX3QgdWlkLCBwYXNzd2Rfc3RhdGVfdCogc3RhdGUpIHsKICAgaWYgKHVpZCA8IEFJRF9BUFApIHsKICAgICBlcnJubyA9IEVOT0VOVDsKICAgICByZXR1cm4gTlVMTDsKICAgfQogCisgIHByaW50X2FwcF9uYW1lX2Zyb21fdWlkKHVpZCwgc3RhdGUtPm5hbWVfYnVmZmVyXywgc2l6ZW9mKHN0YXRlLT5uYW1lX2J1ZmZlcl8pKTsKKwogICBjb25zdCB1aWRfdCBhcHBpZCA9IHVpZCAlIEFJRF9VU0VSOwotICBjb25zdCB1aWRfdCB1c2VyaWQgPSB1aWQgLyBBSURfVVNFUjsKLQotICBwcmludF9hcHBfbmFtZV9mcm9tX2FwcGlkX3VzZXJpZChhcHBpZCwgdXNlcmlkLCBzdGF0ZS0+YXBwX25hbWVfYnVmZmVyXywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHN0YXRlLT5hcHBfbmFtZV9idWZmZXJfKSk7Ci0KICAgaWYgKGFwcGlkIDwgQUlEX0FQUCkgewogICAgICAgc25wcmludGYoc3RhdGUtPmRpcl9idWZmZXJfLCBzaXplb2Yoc3RhdGUtPmRpcl9idWZmZXJfKSwgIi8iKTsKICAgfSBlbHNlIHsKQEAgLTMxNSwzNyArMzMwLDM0IEBACiAKICAgc25wcmludGYoc3RhdGUtPnNoX2J1ZmZlcl8sIHNpemVvZihzdGF0ZS0+c2hfYnVmZmVyXyksICIvc3lzdGVtL2Jpbi9zaCIpOwogCi0gIHB3LT5wd19uYW1lICA9IHN0YXRlLT5hcHBfbmFtZV9idWZmZXJfOworICBwYXNzd2QqIHB3ID0gJnN0YXRlLT5wYXNzd2RfOworICBwdy0+cHdfbmFtZSAgPSBzdGF0ZS0+bmFtZV9idWZmZXJfOwogICBwdy0+cHdfZGlyICAgPSBzdGF0ZS0+ZGlyX2J1ZmZlcl87CiAgIHB3LT5wd19zaGVsbCA9IHN0YXRlLT5zaF9idWZmZXJfOwogICBwdy0+cHdfdWlkICAgPSB1aWQ7CiAgIHB3LT5wd19naWQgICA9IHVpZDsKLQogICByZXR1cm4gcHc7CiB9CiAKIC8vIFRyYW5zbGF0ZSBhIGdpZCBpbnRvIHRoZSBjb3JyZXNwb25kaW5nIGFwcF88Z2lkPgogLy8gZ3JvdXAgc3RydWN0dXJlIChzZXRzIGVycm5vIHRvIEVOT0VOVCBvbiBmYWlsdXJlKS4KLXN0YXRpYyBncm91cCogYXBwX2lkX3RvX2dyb3VwKGdpZF90IGdpZCwgc3R1YnNfc3RhdGVfdCogc3RhdGUpIHsKK3N0YXRpYyBncm91cCogYXBwX2lkX3RvX2dyb3VwKGdpZF90IGdpZCwgZ3JvdXBfc3RhdGVfdCogc3RhdGUpIHsKICAgaWYgKGdpZCA8IEFJRF9BUFApIHsKICAgICBlcnJubyA9IEVOT0VOVDsKICAgICByZXR1cm4gTlVMTDsKICAgfQogCi0gIHByaW50X2FwcF9uYW1lX2Zyb21fdWlkKGdpZCwgc3RhdGUtPmdyb3VwX25hbWVfYnVmZmVyXywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHN0YXRlLT5ncm91cF9uYW1lX2J1ZmZlcl8pKTsKKyAgcHJpbnRfYXBwX25hbWVfZnJvbV9naWQoZ2lkLCBzdGF0ZS0+Z3JvdXBfbmFtZV9idWZmZXJfLCBzaXplb2Yoc3RhdGUtPmdyb3VwX25hbWVfYnVmZmVyXykpOwogCiAgIGdyb3VwKiBnciA9ICZzdGF0ZS0+Z3JvdXBfOwogICBnci0+Z3JfbmFtZSAgID0gc3RhdGUtPmdyb3VwX25hbWVfYnVmZmVyXzsKICAgZ3ItPmdyX2dpZCAgICA9IGdpZDsKICAgZ3ItPmdyX21lbVswXSA9IGdyLT5ncl9uYW1lOwotICBnci0+Z3JfbWVtWzFdID0gTlVMTDsKICAgcmV0dXJuIGdyOwogfQogCi0KIHBhc3N3ZCogZ2V0cHd1aWQodWlkX3QgdWlkKSB7IC8vIE5PTElOVDogaW1wbGVtZW50aW5nIGJhZCBmdW5jdGlvbi4KLSAgc3R1YnNfc3RhdGVfdCogc3RhdGUgPSBfX3N0dWJzX3N0YXRlKCk7CisgIHBhc3N3ZF9zdGF0ZV90KiBzdGF0ZSA9IGdfcGFzc3dkX3Rsc19idWZmZXIuZ2V0KCk7CiAgIGlmIChzdGF0ZSA9PSBOVUxMKSB7CiAgICAgcmV0dXJuIE5VTEw7CiAgIH0KQEAgLTM1OCw3ICszNzAsNyBAQAogfQogCiBwYXNzd2QqIGdldHB3bmFtKGNvbnN0IGNoYXIqIGxvZ2luKSB7IC8vIE5PTElOVDogaW1wbGVtZW50aW5nIGJhZCBmdW5jdGlvbi4KLSAgc3R1YnNfc3RhdGVfdCogc3RhdGUgPSBfX3N0dWJzX3N0YXRlKCk7CisgIHBhc3N3ZF9zdGF0ZV90KiBzdGF0ZSA9IGdfcGFzc3dkX3Rsc19idWZmZXIuZ2V0KCk7CiAgIGlmIChzdGF0ZSA9PSBOVUxMKSB7CiAgICAgcmV0dXJuIE5VTEw7CiAgIH0KQEAgLTM2NywxNyArMzc5LDE3IEBACiAgIGlmIChwdyAhPSBOVUxMKSB7CiAgICAgcmV0dXJuIHB3OwogICB9Ci0gIHJldHVybiBhcHBfaWRfdG9fcGFzc3dkKGFwcF9pZF9mcm9tX25hbWUobG9naW4pLCBzdGF0ZSk7CisgIHJldHVybiBhcHBfaWRfdG9fcGFzc3dkKGFwcF9pZF9mcm9tX25hbWUobG9naW4sIGZhbHNlKSwgc3RhdGUpOwogfQogCiAvLyBBbGwgdXNlcnMgYXJlIGluIGp1c3Qgb25lIGdyb3VwLCB0aGUgb25lIHBhc3NlZCBpbi4KIGludCBnZXRncm91cGxpc3QoY29uc3QgY2hhciogLyp1c2VyKi8sIGdpZF90IGdyb3VwLCBnaWRfdCogZ3JvdXBzLCBpbnQqIG5ncm91cHMpIHsKLSAgICBpZiAoKm5ncm91cHMgPCAxKSB7Ci0gICAgICAgICpuZ3JvdXBzID0gMTsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgICBncm91cHNbMF0gPSBncm91cDsKLSAgICByZXR1cm4gKCpuZ3JvdXBzID0gMSk7CisgIGlmICgqbmdyb3VwcyA8IDEpIHsKKyAgICAqbmdyb3VwcyA9IDE7CisgICAgcmV0dXJuIC0xOworICB9CisgIGdyb3Vwc1swXSA9IGdyb3VwOworICByZXR1cm4gKCpuZ3JvdXBzID0gMSk7CiB9CiAKIGNoYXIqIGdldGxvZ2luKCkgeyAvLyBOT0xJTlQ6IGltcGxlbWVudGluZyBiYWQgZnVuY3Rpb24uCkBAIC0zODYsMzAgKzM5OCwyOCBAQAogfQogCiBncm91cCogZ2V0Z3JnaWQoZ2lkX3QgZ2lkKSB7IC8vIE5PTElOVDogaW1wbGVtZW50aW5nIGJhZCBmdW5jdGlvbi4KLSAgc3R1YnNfc3RhdGVfdCogc3RhdGUgPSBfX3N0dWJzX3N0YXRlKCk7CisgIGdyb3VwX3N0YXRlX3QqIHN0YXRlID0gX19ncm91cF9zdGF0ZSgpOwogICBpZiAoc3RhdGUgPT0gTlVMTCkgewogICAgIHJldHVybiBOVUxMOwogICB9CiAKLSAgZ3JvdXAqIGdyID0gYW5kcm9pZF9pZF90b19ncm91cCgmc3RhdGUtPmdyb3VwXywgZ2lkKTsKKyAgZ3JvdXAqIGdyID0gYW5kcm9pZF9pZF90b19ncm91cChzdGF0ZSwgZ2lkKTsKICAgaWYgKGdyICE9IE5VTEwpIHsKICAgICByZXR1cm4gZ3I7CiAgIH0KLQogICByZXR1cm4gYXBwX2lkX3RvX2dyb3VwKGdpZCwgc3RhdGUpOwogfQogCiBncm91cCogZ2V0Z3JuYW0oY29uc3QgY2hhciogbmFtZSkgeyAvLyBOT0xJTlQ6IGltcGxlbWVudGluZyBiYWQgZnVuY3Rpb24uCi0gIHN0dWJzX3N0YXRlX3QqIHN0YXRlID0gX19zdHVic19zdGF0ZSgpOworICBncm91cF9zdGF0ZV90KiBzdGF0ZSA9IF9fZ3JvdXBfc3RhdGUoKTsKICAgaWYgKHN0YXRlID09IE5VTEwpIHsKICAgICByZXR1cm4gTlVMTDsKICAgfQogCi0gIGlmIChhbmRyb2lkX25hbWVfdG9fZ3JvdXAoJnN0YXRlLT5ncm91cF8sIG5hbWUpICE9IDApIHsKKyAgaWYgKGFuZHJvaWRfbmFtZV90b19ncm91cChzdGF0ZSwgbmFtZSkgIT0gMCkgewogICAgIHJldHVybiAmc3RhdGUtPmdyb3VwXzsKICAgfQotCi0gIHJldHVybiBhcHBfaWRfdG9fZ3JvdXAoYXBwX2lkX2Zyb21fbmFtZShuYW1lKSwgc3RhdGUpOworICByZXR1cm4gYXBwX2lkX3RvX2dyb3VwKGFwcF9pZF9mcm9tX25hbWUobmFtZSwgdHJ1ZSksIHN0YXRlKTsKIH0KIAogLy8gV2UgZG9uJ3QgaGF2ZSBhbiAvZXRjL25ldHdvcmtzLCBzbyBhbGwgaW5wdXRzIHJldHVybiBOVUxMLgpAQCAtNDMyLDMxICs0NDIsNiBAQAogICByZXR1cm4gTlVMTDsKIH0KIAotc3RhdGljIHZvaWQgdW5pbXBsZW1lbnRlZF9zdHViKGNvbnN0IGNoYXIqIGZ1bmN0aW9uKSB7Ci0gIGNvbnN0IGNoYXIqIGZtdCA9ICIlcygzKSBpcyBub3QgaW1wbGVtZW50ZWQgb24gQW5kcm9pZFxuIjsKLSAgX19saWJjX2Zvcm1hdF9sb2coQU5EUk9JRF9MT0dfV0FSTiwgImxpYmMiLCBmbXQsIGZ1bmN0aW9uKTsKLSAgZnByaW50ZihzdGRlcnIsIGZtdCwgZnVuY3Rpb24pOwotfQotCi0jZGVmaW5lIFVOSU1QTEVNRU5URUQgdW5pbXBsZW1lbnRlZF9zdHViKF9fUFJFVFRZX0ZVTkNUSU9OX18pCi0KLXZvaWQgZW5kcHdlbnQoKSB7Ci0gIFVOSU1QTEVNRU5URUQ7Ci19Ci0KLWNoYXIqIGdldHVzZXJzaGVsbCgpIHsKLSAgVU5JTVBMRU1FTlRFRDsKLSAgcmV0dXJuIE5VTEw7Ci19Ci0KLXZvaWQgc2V0dXNlcnNoZWxsKCkgewotICBVTklNUExFTUVOVEVEOwotfQotCi12b2lkIGVuZHVzZXJzaGVsbCgpIHsKLSAgVU5JTVBMRU1FTlRFRDsKLX0KLQogLy8gUG9ydGFibGUgY29kZSBzaG91bGQgdXNlIHN5c2NvbmYoX1NDX1BBR0VfU0laRSkgZGlyZWN0bHkgaW5zdGVhZC4KIGludCBnZXRwYWdlc2l6ZSgpIHsKICAgLy8gV2UgZG9udCB1c2Ugc3lzY29uZigzKSBoZXJlIGJlY2F1c2UgdGhhdCBkcmFncyBpbiBzdGRpbywgd2hpY2ggbWFrZXMgc3RhdGljIGJpbmFyaWVzIGZhdC4KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3N5c2NvbmYuY3BwIGIvbGliYy9iaW9uaWMvc3lzY29uZi5jcHAKaW5kZXggNzczNGU0MC4uYzMwMWIyNyAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvc3lzY29uZi5jcHAKKysrIGIvbGliYy9iaW9uaWMvc3lzY29uZi5jcHAKQEAgLTI2LDEyMyArMjYsMjAgQEAKICAqIFNVQ0ggREFNQUdFLgogICovCiAKLSNpbmNsdWRlIDxjdHlwZS5oPgotI2luY2x1ZGUgPGRpcmVudC5oPgogI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8ZmNudGwuaD4KICNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlIDxsaW51eC91aW8uaD4gIC8vIEZvciBVSU9fTUFYSU9WLgogI2luY2x1ZGUgPHB0aHJlYWQuaD4KICNpbmNsdWRlIDxzdGRpby5oPiAgLy8gRm9yIEZPUEVOX01BWC4KLSNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzeXMvYXV4di5oPgorI2luY2x1ZGUgPHN5cy9yZXNvdXJjZS5oPgogI2luY2x1ZGUgPHN5cy9zeXNjb25mLmg+CisjaW5jbHVkZSA8c3lzL3N5c2luZm8uaD4KICNpbmNsdWRlIDx0aW1lLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKICNpbmNsdWRlICJwcml2YXRlL2Jpb25pY190bHMuaCIKLSNpbmNsdWRlICJwcml2YXRlL1Njb3BlZFJlYWRkaXIuaCIKLQotLyogc2VlbXMgdG8gYmUgdGhlIGRlZmF1bHQgb24gTGludXgsIHBlciB0aGUgR0xpYmMgc291cmNlcyBhbmQgbXkgb3duIGRpZ2dpbmcgKi8KLQotI2RlZmluZSAgU1lTVEVNX0NMS19UQ0sgICAgICAgICAxMDAKLSNkZWZpbmUgIFNZU1RFTV9JT1ZfTUFYICAgICAgICAgMTAyNAotI2RlZmluZSAgU1lTVEVNX0RFTEFZVElNRVJfTUFYICAyMTQ3NDgzNjQ3Ci0jZGVmaW5lICBTWVNURU1fTVFfT1BFTl9NQVggICAgIDgKLSNkZWZpbmUgIFNZU1RFTV9NUV9QUklPX01BWCAgICAgMzI3NjgKLSNkZWZpbmUgIFNZU1RFTV9TRU1fTlNFTVNfTUFYICAgMjU2Ci0jZGVmaW5lICBTWVNURU1fU0VNX1ZBTFVFX01BWCAgIDB4M2ZmZmZmZmYgIC8qIHNlZSBiaW9uaWMvc2VtYXBob3JlLmMgKi8KLSNkZWZpbmUgIFNZU1RFTV9TSUdRVUVVRV9NQVggICAgMzIKLSNkZWZpbmUgIFNZU1RFTV9USU1FUl9NQVggICAgICAgMzIKLSNkZWZpbmUgIFNZU1RFTV9MT0dJTl9OQU1FX01BWCAgMjU2Ci0jZGVmaW5lICBTWVNURU1fVFRZX05BTUVfTUFYICAgIDMyCi0KLS8qIHRoZSBmb2xsb3dpbmcgZGVwZW5kcyBvbiBvdXIgaW1wbGVtZW50YXRpb24gKi8KLSNkZWZpbmUgIFNZU1RFTV9BVEVYSVRfTUFYICAgICAgICAgIDY1NTM2ICAgIC8qIG91ciBpbXBsZW1lbnRhdGlvbiBpcyB1bmxpbWl0ZWQgKi8KLSNkZWZpbmUgIFNZU1RFTV9USFJFQURfVEhSRUFEU19NQVggIDIwNDggICAgIC8qIHJlYWxseSB1bmxpbWl0ZWQgKi8KLQotI2RlZmluZSAgU1lTVEVNXzJfQ19CSU5EICAgICBfUE9TSVhfVkVSU0lPTiAgLyogUG9zaXggQyBiaW5kaW5nIHZlcnNpb24gKi8KLSNkZWZpbmUgIFNZU1RFTV8yX0NfVkVSICAgICAgX1BPU0lYMl9DX1ZFUlNJT04KLSNkZWZpbmUgIFNZU1RFTV8yX0NfREVWICAgICAgLTEgICAgICAgLyogUG9zaXggQyBkZXZlbG9wbWVudCB0b29scyB1bnN1cHBvcnRlZCBvbiB0aGUgZGV2aWNlICovCi0jZGVmaW5lICBTWVNURU1fMl9GT1JUX0RFViAgIC0xICAgICAgIC8qIEZvcnRyYW4gZGV2ZWxvcG1lbnQgdW5zdXBwb3J0ZWQgKi8KLSNkZWZpbmUgIFNZU1RFTV8yX0ZPUlRfUlVOICAgLTEgICAgICAgLyogRm9ydHJhbiBydW50aW1lIHVuc3VwcG9ydGVkICovCi0jZGVmaW5lICBTWVNURU1fMl9TV19ERVYgICAgIC0xICAgICAgIC8qIHBvc2l4IHNvZnR3YXJlIGRldiB1dGlsaXRpZXMgdW5zdXBwb3J0ZWQgKi8KLSNkZWZpbmUgIFNZU1RFTV8yX0xPQ0FMRURFRiAgLTEgICAgICAgLyogbG9jYWxlZGVmKCkgdW5pbXBsZW1lbnRlZCAqLwotI2RlZmluZSAgU1lTVEVNXzJfVVBFICAgICAgICAtMSAgICAgICAvKiBObyBVUEUgZm9yIHlvdSAhIChVc2VyIFBvcnRhYmlsaXR5IFV0aWxpdGllcykgKi8KLSNkZWZpbmUgIFNZU1RFTV8yX1ZFUlNJT04gICAgLTEgICAgICAgLyogTm8gcG9zaXggY29tbWFuZC1saW5lIHRvb2xzICovCi0KLXN0YXRpYyBib29sIF9fbWF0Y2hlc19jcHVOKGNvbnN0IGNoYXIqIHMpIHsKLSAgLy8gVGhlICVjIHRyaWNrIGlzIHRvIGVuc3VyZSB0aGF0IHdlIGhhdmUgdGhlIGFuY2hvcmVkIG1hdGNoICJeY3B1WzAtOV0rJCIuCi0gIHVuc2lnbmVkIGNwdTsKLSAgY2hhciBkdW1teTsKLSAgcmV0dXJuIChzc2NhbmYocywgImNwdSV1JWMiLCAmY3B1LCAmZHVtbXkpID09IDEpOwotfQotCi1zdGF0aWMgaW50IF9fc3lzY29uZl9ucHJvY2Vzc29yc19jb25mKCkgewotICAvLyBPbiB4ODYga2VybmVscyB5b3UgY2FuIHVzZSAvcHJvYy9jcHVpbmZvIGZvciB0aGlzLCBidXQgb24gQVJNIGtlcm5lbHMgb2ZmbGluZSBDUFVzIGRpc2FwcGVhcgotICAvLyBmcm9tIHRoZXJlLiBUaGlzIG1ldGhvZCB3b3JrcyBvbiBib3RoLgotICBTY29wZWRSZWFkZGlyIHJlYWRlcigiL3N5cy9kZXZpY2VzL3N5c3RlbS9jcHUiKTsKLSAgaWYgKHJlYWRlci5Jc0JhZCgpKSB7Ci0gICAgcmV0dXJuIDE7Ci0gIH0KLQotICBpbnQgcmVzdWx0ID0gMDsKLSAgZGlyZW50KiBlbnRyeTsKLSAgd2hpbGUgKChlbnRyeSA9IHJlYWRlci5SZWFkRW50cnkoKSkgIT0gTlVMTCkgewotICAgIGlmIChlbnRyeS0+ZF90eXBlID09IERUX0RJUiAmJiBfX21hdGNoZXNfY3B1TihlbnRyeS0+ZF9uYW1lKSkgewotICAgICAgKytyZXN1bHQ7Ci0gICAgfQotICB9Ci0gIHJldHVybiByZXN1bHQ7Ci19Ci0KLXN0YXRpYyBpbnQgX19zeXNjb25mX25wcm9jZXNzb3JzX29ubG4oKSB7Ci0gIEZJTEUqIGZwID0gZm9wZW4oIi9wcm9jL3N0YXQiLCAiciIpOwotICBpZiAoZnAgPT0gTlVMTCkgewotICAgIHJldHVybiAxOwotICB9Ci0KLSAgaW50IHJlc3VsdCA9IDA7Ci0gIGNoYXIgYnVmWzI1Nl07Ci0gIHdoaWxlIChmZ2V0cyhidWYsIHNpemVvZihidWYpLCBmcCkgIT0gTlVMTCkgewotICAgIC8vIEV4dHJhY3QganVzdCB0aGUgZmlyc3Qgd29yZCBmcm9tIHRoZSBsaW5lLgotICAgIC8vICdjcHUwIDc5NzY3NTEgMTM2NDM4OCAzMTE2ODQyIDQ2OTc3MDM4OCA4NjI5NDA1IDAgNDkwNDcgMCAwIDAnCi0gICAgY2hhciogcCA9IHN0cmNocihidWYsICcgJyk7Ci0gICAgaWYgKHAgIT0gTlVMTCkgewotICAgICAgKnAgPSAwOwotICAgIH0KLSAgICBpZiAoX19tYXRjaGVzX2NwdU4oYnVmKSkgewotICAgICAgKytyZXN1bHQ7Ci0gICAgfQotICB9Ci0gIGZjbG9zZShmcCk7Ci0gIHJldHVybiByZXN1bHQ7Ci19Ci0KLXN0YXRpYyBpbnQgX19nZXRfbWVtaW5mbyhjb25zdCBjaGFyKiBwYXR0ZXJuKSB7Ci0gIEZJTEUqIGZwID0gZm9wZW4oIi9wcm9jL21lbWluZm8iLCAiciIpOwotICBpZiAoZnAgPT0gTlVMTCkgewotICAgIHJldHVybiAtMTsKLSAgfQotCi0gIGludCByZXN1bHQgPSAtMTsKLSAgY2hhciBidWZbMjU2XTsKLSAgd2hpbGUgKGZnZXRzKGJ1Ziwgc2l6ZW9mKGJ1ZiksIGZwKSAhPSBOVUxMKSB7Ci0gICAgbG9uZyB0b3RhbDsKLSAgICBpZiAoc3NjYW5mKGJ1ZiwgcGF0dGVybiwgJnRvdGFsKSA9PSAxKSB7Ci0gICAgICByZXN1bHQgPSAoaW50KSAodG90YWwgLyAoUEFHRV9TSVpFLzEwMjQpKTsKLSAgICAgIGJyZWFrOwotICAgIH0KLSAgfQotICBmY2xvc2UoZnApOwotICByZXR1cm4gcmVzdWx0OwotfQotCi1zdGF0aWMgaW50IF9fc3lzY29uZl9waHlzX3BhZ2VzKCkgewotICByZXR1cm4gX19nZXRfbWVtaW5mbygiTWVtVG90YWw6ICVsZCBrQiIpOwotfQotCi1zdGF0aWMgaW50IF9fc3lzY29uZl9hdnBoeXNfcGFnZXMoKSB7Ci0gIHJldHVybiBfX2dldF9tZW1pbmZvKCJNZW1GcmVlOiAlbGQga0IiKTsKLX0KIAogc3RhdGljIGludCBfX3N5c2NvbmZfbW9ub3RvbmljX2Nsb2NrKCkgewogICB0aW1lc3BlYyB0OwpAQCAtMTUwLDIwMCArNDcsMTc0IEBACiAgIHJldHVybiAocmMgPT0gLTEpID8gLTEgOiBfUE9TSVhfVkVSU0lPTjsKIH0KIAorc3RhdGljIGJvb2wgX19zeXNjb25mX2hhc19jbG9jayhjbG9ja2lkX3QgY2xvY2tfaWQpIHsKKyAgcmV0dXJuIGNsb2NrX2dldHJlcyhjbG9ja19pZCwgTlVMTCkgPT0gMDsKK30KKworc3RhdGljIGxvbmcgX19zeXNjb25mX3JsaW1pdChpbnQgcmVzb3VyY2UpIHsKKyAgcmxpbWl0IHJsOworICBnZXRybGltaXQocmVzb3VyY2UsICZybCk7CisgIHJldHVybiBybC5ybGltX2N1cjsKK30KKwogbG9uZyBzeXNjb25mKGludCBuYW1lKSB7Ci0gICAgc3dpdGNoIChuYW1lKSB7Ci0jaWZkZWYgX1BPU0lYX0FSR19NQVgKLSAgICBjYXNlIF9TQ19BUkdfTUFYOiAgICAgICAgICAgcmV0dXJuIF9QT1NJWF9BUkdfTUFYOwotI2VuZGlmCi0jaWZkZWYgX1BPU0lYMl9CQ19CQVNFX01BWAotICAgIGNhc2UgX1NDX0JDX0JBU0VfTUFYOiAgICAgICByZXR1cm4gX1BPU0lYMl9CQ19CQVNFX01BWDsKLSNlbmRpZgotI2lmZGVmIF9QT1NJWDJfQkNfRElNX01BWAotICAgIGNhc2UgX1NDX0JDX0RJTV9NQVg6ICAgICAgICByZXR1cm4gX1BPU0lYMl9CQ19ESU1fTUFYOwotI2VuZGlmCi0jaWZkZWYgX1BPU0lYMl9CQ19TQ0FMRV9NQVgKLSAgICBjYXNlIF9TQ19CQ19TQ0FMRV9NQVg6ICAgICAgcmV0dXJuIF9QT1NJWDJfQkNfU0NBTEVfTUFYOwotI2VuZGlmCi0jaWZkZWYgX1BPU0lYMl9CQ19TVFJJTkdfTUFYCi0gICAgY2FzZSBfU0NfQkNfU1RSSU5HX01BWDogICAgIHJldHVybiBfUE9TSVgyX0JDX1NUUklOR19NQVg7Ci0jZW5kaWYKLSAgICBjYXNlIF9TQ19DSElMRF9NQVg6ICAgICAgICAgcmV0dXJuIENISUxEX01BWDsKLSAgICBjYXNlIF9TQ19DTEtfVENLOiAgICAgICAgICAgcmV0dXJuIFNZU1RFTV9DTEtfVENLOwotI2lmZGVmIF9QT1NJWDJfQ09MTF9XRUlHSFRTX01BU0sKLSAgICBjYXNlIF9TQ19DT0xMX1dFSUdIVFNfTUFYOiAgcmV0dXJuIF9QT1NJWDJfQ09MTF9XRUlHSFRTX01BU0s7Ci0jZW5kaWYKLSNpZmRlZiBfUE9TSVgyX0VYUFJfTkVTVF9NQVgKLSAgICBjYXNlIF9TQ19FWFBSX05FU1RfTUFYOiAgICByZXR1cm4gX1BPU0lYMl9FWFBSX05FU1RfTUFYOwotI2VuZGlmCi0jaWZkZWYgX1BPU0lYMl9MSU5FX01BWAotICAgIGNhc2UgX1NDX0xJTkVfTUFYOiAgICAgICAgICByZXR1cm4gX1BPU0lYMl9MSU5FX01BWDsKLSNlbmRpZgorICBzd2l0Y2ggKG5hbWUpIHsKKyAgICBjYXNlIF9TQ19BUkdfTUFYOiAgICAgICAgICAgcmV0dXJuIEFSR19NQVg7CisgICAgY2FzZSBfU0NfQkNfQkFTRV9NQVg6ICAgICAgIHJldHVybiBfUE9TSVgyX0JDX0JBU0VfTUFYOyAgIC8vIE1pbmltdW0gcmVxdWlyZW1lbnQuCisgICAgY2FzZSBfU0NfQkNfRElNX01BWDogICAgICAgIHJldHVybiBfUE9TSVgyX0JDX0RJTV9NQVg7ICAgIC8vIE1pbmltdW0gcmVxdWlyZW1lbnQuCisgICAgY2FzZSBfU0NfQkNfU0NBTEVfTUFYOiAgICAgIHJldHVybiBfUE9TSVgyX0JDX1NDQUxFX01BWDsgIC8vIE1pbmltdW0gcmVxdWlyZW1lbnQuCisgICAgY2FzZSBfU0NfQkNfU1RSSU5HX01BWDogICAgIHJldHVybiBfUE9TSVgyX0JDX1NUUklOR19NQVg7IC8vIE1pbmltdW0gcmVxdWlyZW1lbnQuCisgICAgY2FzZSBfU0NfQ0hJTERfTUFYOiAgICAgICAgIHJldHVybiBfX3N5c2NvbmZfcmxpbWl0KFJMSU1JVF9OUFJPQyk7CisgICAgY2FzZSBfU0NfQ0xLX1RDSzogICAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxsb25nPihnZXRhdXh2YWwoQVRfQ0xLVENLKSk7CisgICAgY2FzZSBfU0NfQ09MTF9XRUlHSFRTX01BWDogIHJldHVybiBfUE9TSVgyX0NPTExfV0VJR0hUU19NQVg7ICAvLyBNaW5pbXVtIHJlcXVpcmVtZW50LgorICAgIGNhc2UgX1NDX0VYUFJfTkVTVF9NQVg6ICAgICByZXR1cm4gX1BPU0lYMl9FWFBSX05FU1RfTUFYOyAgICAgLy8gTWluaW11bSByZXF1aXJlbWVudC4KKyAgICBjYXNlIF9TQ19MSU5FX01BWDogICAgICAgICAgcmV0dXJuIF9QT1NJWDJfTElORV9NQVg7ICAgICAgICAgIC8vIE1pbmltdW0gcmVxdWlyZW1lbnQuCiAgICAgY2FzZSBfU0NfTkdST1VQU19NQVg6ICAgICAgIHJldHVybiBOR1JPVVBTX01BWDsKLSAgICBjYXNlIF9TQ19PUEVOX01BWDogICAgICAgICAgcmV0dXJuIE9QRU5fTUFYOwotICAgIC8vY2FzZSBfU0NfUEFTU19NQVg6ICAgICAgICAgIHJldHVybiBQQVNTX01BWDsKLSAgICBjYXNlIF9TQ18yX0NfQklORDogICAgICAgICAgcmV0dXJuIFNZU1RFTV8yX0NfQklORDsKLSAgICBjYXNlIF9TQ18yX0NfREVWOiAgICAgICAgICAgcmV0dXJuIFNZU1RFTV8yX0NfREVWOwotICAgIGNhc2UgX1NDXzJfQ19WRVJTSU9OOiAgICAgICByZXR1cm4gU1lTVEVNXzJfQ19WRVI7Ci0gICAgLy9jYXNlIF9TQ18yX0NIQVJfVEVSTTogICAgICAgICByZXR1cm4gOwotICAgIGNhc2UgX1NDXzJfRk9SVF9ERVY6ICAgICAgICByZXR1cm4gU1lTVEVNXzJfRk9SVF9ERVY7Ci0gICAgY2FzZSBfU0NfMl9GT1JUX1JVTjogICAgICAgIHJldHVybiBTWVNURU1fMl9GT1JUX1JVTjsKLSAgICBjYXNlIF9TQ18yX0xPQ0FMRURFRjogICAgICAgcmV0dXJuIFNZU1RFTV8yX0xPQ0FMRURFRjsKLSAgICBjYXNlIF9TQ18yX1NXX0RFVjogICAgICAgICAgcmV0dXJuIFNZU1RFTV8yX1NXX0RFVjsKLSAgICBjYXNlIF9TQ18yX1VQRTogICAgICAgICAgICAgcmV0dXJuIFNZU1RFTV8yX1VQRTsKLSAgICBjYXNlIF9TQ18yX1ZFUlNJT046ICAgICAgICAgcmV0dXJuIFNZU1RFTV8yX1ZFUlNJT047Ci0jaWZkZWYgX1BPU0lYX0pPQl9DT05UUk9MCisgICAgY2FzZSBfU0NfT1BFTl9NQVg6ICAgICAgICAgIHJldHVybiBfX3N5c2NvbmZfcmxpbWl0KFJMSU1JVF9OT0ZJTEUpOworICAgIGNhc2UgX1NDX1BBU1NfTUFYOiAgICAgICAgICByZXR1cm4gUEFTU19NQVg7CisgICAgY2FzZSBfU0NfMl9DX0JJTkQ6ICAgICAgICAgIHJldHVybiBfUE9TSVgyX0NfQklORDsKKyAgICBjYXNlIF9TQ18yX0NfREVWOiAgICAgICAgICAgcmV0dXJuIF9QT1NJWDJfQ19ERVY7CisgICAgY2FzZSBfU0NfMl9DSEFSX1RFUk06ICAgICAgIHJldHVybiBfUE9TSVgyX0NIQVJfVEVSTTsKKyAgICBjYXNlIF9TQ18yX0ZPUlRfREVWOiAgICAgICAgcmV0dXJuIC0xOworICAgIGNhc2UgX1NDXzJfRk9SVF9SVU46ICAgICAgICByZXR1cm4gLTE7CisgICAgY2FzZSBfU0NfMl9MT0NBTEVERUY6ICAgICAgIHJldHVybiBfUE9TSVgyX0xPQ0FMRURFRjsKKyAgICBjYXNlIF9TQ18yX1NXX0RFVjogICAgICAgICAgcmV0dXJuIF9QT1NJWDJfU1dfREVWOworICAgIGNhc2UgX1NDXzJfVVBFOiAgICAgICAgICAgICByZXR1cm4gX1BPU0lYMl9VUEU7CisgICAgY2FzZSBfU0NfMl9WRVJTSU9OOiAgICAgICAgIHJldHVybiBfUE9TSVgyX1ZFUlNJT047CiAgICAgY2FzZSBfU0NfSk9CX0NPTlRST0w6ICAgICAgIHJldHVybiBfUE9TSVhfSk9CX0NPTlRST0w7Ci0jZW5kaWYKLSNpZmRlZiBfUE9TSVhfU0FWRURfSURTCiAgICAgY2FzZSBfU0NfU0FWRURfSURTOiAgICAgICAgIHJldHVybiBfUE9TSVhfU0FWRURfSURTOwotI2VuZGlmCi0jaWZkZWYgX1BPU0lYX1ZFUlNJT04KICAgICBjYXNlIF9TQ19WRVJTSU9OOiAgICAgICAgICAgcmV0dXJuIF9QT1NJWF9WRVJTSU9OOwotI2VuZGlmCi0gICAgLy9jYXNlIF9TQ19SRV9EVVBfPEFYOiAgICAgICAgcmV0dXJuIDsKKyAgICBjYXNlIF9TQ19SRV9EVVBfTUFYOiAgICAgICAgcmV0dXJuIF9QT1NJWF9SRV9EVVBfTUFYOyAgICAgICAgIC8vIE1pbmltdW0gcmVxdWlyZW1lbnQuCiAgICAgY2FzZSBfU0NfU1RSRUFNX01BWDogICAgICAgIHJldHVybiBGT1BFTl9NQVg7Ci0gICAgLy9jYXNlIF9TQ19UWk5BTUVfTUFYOiAgICAgICAgcmV0dXJuIDsKLSNpZiBfWE9QRU5fQ1JZUFQKKyAgICBjYXNlIF9TQ19UWk5BTUVfTUFYOiAgICAgICAgcmV0dXJuIF9QT1NJWF9UWk5BTUVfTUFYOyAgICAgICAgIC8vIE1pbmltdW0gcmVxdWlyZW1lbnQuCiAgICAgY2FzZSBfU0NfWE9QRU5fQ1JZUFQ6ICAgICAgIHJldHVybiBfWE9QRU5fQ1JZUFQ7Ci0jZW5kaWYKLSNpZmRlZiBfWE9QRU5fRU5IX0kxOE4KICAgICBjYXNlIF9TQ19YT1BFTl9FTkhfSTE4TjogICAgcmV0dXJuIF9YT1BFTl9FTkhfSTE4TjsKLSNlbmRpZgotI2lmZGVmIF9YT1BFTl9TSE0KICAgICBjYXNlIF9TQ19YT1BFTl9TSE06ICAgICAgICAgcmV0dXJuIF9YT1BFTl9TSE07Ci0jZW5kaWYKLSNpZmRlZiBfWE9QRU5fVkVSU0lPTgogICAgIGNhc2UgX1NDX1hPUEVOX1ZFUlNJT046ICAgICByZXR1cm4gX1hPUEVOX1ZFUlNJT047Ci0jZW5kaWYKLSNpZmRlZiBfWE9QRU5fWENVX1ZFUlNJT04KLSAgICBjYXNlIF9TQ19YT1BFTl9YQ1VfVkVSU0lPTjogcmV0dXJuIF9YT1BFTl9YQ1VfVkVSU0lPTjsKLSNlbmRpZgotI2lmZGVmIF9YT1BFTl9SRUFMVElNRQogICAgIGNhc2UgX1NDX1hPUEVOX1JFQUxUSU1FOiAgICByZXR1cm4gX1hPUEVOX1JFQUxUSU1FOwotI2VuZGlmCi0jaWZkZWYgX1hPUEVOX1JFQUxUSU1FX1RIUkVBRFMKICAgICBjYXNlIF9TQ19YT1BFTl9SRUFMVElNRV9USFJFQURTOiByZXR1cm4gX1hPUEVOX1JFQUxUSU1FX1RIUkVBRFM7Ci0jZW5kaWYKLSNpZmRlZiBfWE9QRU5fTEVHQUNZCiAgICAgY2FzZSBfU0NfWE9QRU5fTEVHQUNZOiAgICAgIHJldHVybiBfWE9QRU5fTEVHQUNZOwotI2VuZGlmCi0gICAgY2FzZSBfU0NfQVRFWElUX01BWDogICAgICAgIHJldHVybiBTWVNURU1fQVRFWElUX01BWDsKLSAgICBjYXNlIF9TQ19JT1ZfTUFYOiAgICAgICAgICAgcmV0dXJuIFNZU1RFTV9JT1ZfTUFYOworICAgIGNhc2UgX1NDX0FURVhJVF9NQVg6ICAgICAgICByZXR1cm4gTE9OR19NQVg7ICAgIC8vIFVubGltaXRlZC4KKyAgICBjYXNlIF9TQ19JT1ZfTUFYOiAgICAgICAgICAgcmV0dXJuIFVJT19NQVhJT1Y7CiAKLSAgICBjYXNlIF9TQ19QQUdFU0laRToKLSAgICBjYXNlIF9TQ19QQUdFX1NJWkU6Ci0gICAgICAgIHJldHVybiBQQUdFX1NJWkU7Ci0KLSNpZmRlZiBfWE9QRU5fVU5JWAorICAgIGNhc2UgX1NDX1BBR0VTSVpFOiAgICAgICAgICAvLyBGYWxsIHRocm91Z2gsIFBBR0VTSVpFIGFuZCBQQUdFX1NJWkUgYWx3YXlzIGhvbGQgdGhlIHNhbWUgdmFsdWUuCisgICAgY2FzZSBfU0NfUEFHRV9TSVpFOiAgICAgICAgIHJldHVybiBQQUdFX1NJWkU7CiAgICAgY2FzZSBfU0NfWE9QRU5fVU5JWDogICAgICAgIHJldHVybiBfWE9QRU5fVU5JWDsKLSNlbmRpZgotCi0gICAgLy8gWFhYOiBUT0RPOiBYQlM1IG5vbnNlbnNlCi0KLSNpZmRlZiBBSU9fTElTVElPX01BWAotICAgIGNhc2UgX1NDX0FJT19MSVNUSU9fTUFYOiAgICAgICByZXR1cm4gQUlPX0xJU1RJT19NQVg7Ci0jZW5kaWYKLSNpZmRlZiBBSU9fTUFYCi0gICAgY2FzZSBfU0NfQUlPX01BWDogICAgICAgICAgICAgIHJldHVybiBBSU9fTUFYOwotI2VuZGlmCi0jaWZkZWYgQUlPX1BSSU9fREVMVEFfTUFYCi0gICAgY2FzZSBfU0NfQUlPX1BSSU9fREVMVEFfTUFYOiAgIHJldHVybiBBSU9fUFJJT19ERUxUQV9NQVg7Ci0jZW5kaWYKLSAgICBjYXNlIF9TQ19ERUxBWVRJTUVSX01BWDogICAgcmV0dXJuIFNZU1RFTV9ERUxBWVRJTUVSX01BWDsKLSAgICBjYXNlIF9TQ19NUV9PUEVOX01BWDogICAgICAgcmV0dXJuIFNZU1RFTV9NUV9PUEVOX01BWDsKLSAgICBjYXNlIF9TQ19NUV9QUklPX01BWDogICAgICAgcmV0dXJuIFNZU1RFTV9NUV9QUklPX01BWDsKKyAgICBjYXNlIF9TQ19BSU9fTElTVElPX01BWDogICAgcmV0dXJuIF9QT1NJWF9BSU9fTElTVElPX01BWDsgICAgIC8vIE1pbmltdW0gcmVxdWlyZW1lbnQuCisgICAgY2FzZSBfU0NfQUlPX01BWDogICAgICAgICAgIHJldHVybiBfUE9TSVhfQUlPX01BWDsgICAgICAgICAgICAvLyBNaW5pbXVtIHJlcXVpcmVtZW50LgorICAgIGNhc2UgX1NDX0FJT19QUklPX0RFTFRBX01BWDpyZXR1cm4gMDsgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTWluaW11bSByZXF1aXJlbWVudC4KKyAgICBjYXNlIF9TQ19ERUxBWVRJTUVSX01BWDogICAgcmV0dXJuIElOVF9NQVg7CisgICAgY2FzZSBfU0NfTVFfT1BFTl9NQVg6ICAgICAgIHJldHVybiBfUE9TSVhfTVFfT1BFTl9NQVg7ICAgICAgICAvLyBNaW5pbXVtIHJlcXVpcmVtZW50LgorICAgIGNhc2UgX1NDX01RX1BSSU9fTUFYOiAgICAgICByZXR1cm4gX1BPU0lYX01RX1BSSU9fTUFYOyAgICAgICAgLy8gTWluaW11bSByZXF1aXJlbWVudC4KICAgICBjYXNlIF9TQ19SVFNJR19NQVg6ICAgICAgICAgcmV0dXJuIFJUU0lHX01BWDsKLSAgICBjYXNlIF9TQ19TRU1fTlNFTVNfTUFYOiAgICAgcmV0dXJuIFNZU1RFTV9TRU1fTlNFTVNfTUFYOwotICAgIGNhc2UgX1NDX1NFTV9WQUxVRV9NQVg6ICAgICByZXR1cm4gU1lTVEVNX1NFTV9WQUxVRV9NQVg7Ci0gICAgY2FzZSBfU0NfU0lHUVVFVUVfTUFYOiAgICAgIHJldHVybiBTWVNURU1fU0lHUVVFVUVfTUFYOwotICAgIGNhc2UgX1NDX1RJTUVSX01BWDogICAgICAgICByZXR1cm4gU1lTVEVNX1RJTUVSX01BWDsKLSNpZmRlZiBfUE9TSVhfQVNZTkNIUk9OT1VTX0lPCisgICAgY2FzZSBfU0NfU0VNX05TRU1TX01BWDogICAgIHJldHVybiBfUE9TSVhfU0VNX05TRU1TX01BWDsgICAgICAvLyBNaW5pbXVtIHJlcXVpcmVtZW50LgorICAgIGNhc2UgX1NDX1NFTV9WQUxVRV9NQVg6ICAgICByZXR1cm4gU0VNX1ZBTFVFX01BWDsKKyAgICBjYXNlIF9TQ19TSUdRVUVVRV9NQVg6ICAgICAgcmV0dXJuIF9QT1NJWF9TSUdRVUVVRV9NQVg7ICAgICAgIC8vIE1pbmltdW0gcmVxdWlyZW1lbnQuCisgICAgY2FzZSBfU0NfVElNRVJfTUFYOiAgICAgICAgIHJldHVybiBfUE9TSVhfVElNRVJfTUFYOyAgICAgICAgICAvLyBNaW5pbXVtIHJlcXVpcmVtZW50LgogICAgIGNhc2UgX1NDX0FTWU5DSFJPTk9VU19JTzogICByZXR1cm4gX1BPU0lYX0FTWU5DSFJPTk9VU19JTzsKLSNlbmRpZgotI2lmZGVmIF9QT1NJWF9GU1lOQwogICAgIGNhc2UgX1NDX0ZTWU5DOiAgICAgICAgICAgICByZXR1cm4gX1BPU0lYX0ZTWU5DOwotI2VuZGlmCi0jaWZkZWYgX1BPU0lYX01BUFBFRF9GSUxFUwogICAgIGNhc2UgX1NDX01BUFBFRF9GSUxFUzogICAgICByZXR1cm4gX1BPU0lYX01BUFBFRF9GSUxFUzsKLSNlbmRpZgotI2lmZGVmIF9QT1NJWF9NRU1MT0NLCiAgICAgY2FzZSBfU0NfTUVNTE9DSzogICAgICAgICAgIHJldHVybiBfUE9TSVhfTUVNTE9DSzsKLSNlbmRpZgotI2lmZGVmIF9QT1NJWF9NRU1MT0NLX1JBTkdFCi0gICAgY2FzZSBfU0NfTUVNTE9DS19SQU5HRTogICAgIHJldHVybiBfUE9TSVhfTUVNTE9DS19SQU5HRQotI2VuZGlmCi0jaWZkZWYgX1BPU0lYX01FTU9SWV9QUk9URUNUSU9OCisgICAgY2FzZSBfU0NfTUVNTE9DS19SQU5HRTogICAgIHJldHVybiBfUE9TSVhfTUVNTE9DS19SQU5HRTsKICAgICBjYXNlIF9TQ19NRU1PUllfUFJPVEVDVElPTjogcmV0dXJuIF9QT1NJWF9NRU1PUllfUFJPVEVDVElPTjsKLSNlbmRpZgotI2lmZGVmIF9QT1NJWF9NRVNTQUdFX1BBU1NJTkcKICAgICBjYXNlIF9TQ19NRVNTQUdFX1BBU1NJTkc6ICAgcmV0dXJuIF9QT1NJWF9NRVNTQUdFX1BBU1NJTkc7Ci0jZW5kaWYKLSNpZmRlZiBfUE9TSVhfUFJJT1JJVElaRURfSU8KICAgICBjYXNlIF9TQ19QUklPUklUSVpFRF9JTzogICAgcmV0dXJuIF9QT1NJWF9QUklPUklUSVpFRF9JTzsKLSNlbmRpZgotI2lmZGVmIF9QT1NJWF9QUklPUklUWV9TQ0hFRFVMSU5HCiAgICAgY2FzZSBfU0NfUFJJT1JJVFlfU0NIRURVTElORzogIHJldHVybiBfUE9TSVhfUFJJT1JJVFlfU0NIRURVTElORzsKLSNlbmRpZgotI2lmZGVmIF9QT1NJWF9SRUFMVElNRV9TSUdOQUxTCiAgICAgY2FzZSBfU0NfUkVBTFRJTUVfU0lHTkFMUzogIHJldHVybiBfUE9TSVhfUkVBTFRJTUVfU0lHTkFMUzsKLSNlbmRpZgotI2lmZGVmIF9QT1NJWF9TRU1BUEhPUkVTCiAgICAgY2FzZSBfU0NfU0VNQVBIT1JFUzogICAgICAgIHJldHVybiBfUE9TSVhfU0VNQVBIT1JFUzsKLSNlbmRpZgotI2lmZGVmIF9QT1NJWF9TSEFSRURfTUVNT1JZX09CSkVDVFMKICAgICBjYXNlIF9TQ19TSEFSRURfTUVNT1JZX09CSkVDVFM6ICByZXR1cm4gX1BPU0lYX1NIQVJFRF9NRU1PUllfT0JKRUNUUzsKLSNlbmRpZgotI2lmZGVmIF9QT1NJWF9TWU5DSFJPTklaRURfSU8KICAgICBjYXNlIF9TQ19TWU5DSFJPTklaRURfSU86ICAgcmV0dXJuIF9QT1NJWF9TWU5DSFJPTklaRURfSU87Ci0jZW5kaWYKLSNpZmRlZiBfUE9TSVhfVElNRVJTCiAgICAgY2FzZSBfU0NfVElNRVJTOiAgICAgICAgICAgIHJldHVybiBfUE9TSVhfVElNRVJTOwotI2VuZGlmCi0KLSAgICBjYXNlIF9TQ19HRVRHUl9SX1NJWkVfTUFYOiByZXR1cm4gMTAyNDsKLSAgICBjYXNlIF9TQ19HRVRQV19SX1NJWkVfTUFYOiByZXR1cm4gMTAyNDsKLQotICAgIGNhc2UgX1NDX0xPR0lOX05BTUVfTUFYOiAgICByZXR1cm4gU1lTVEVNX0xPR0lOX05BTUVfTUFYOwotCi0gICAgY2FzZSBfU0NfVEhSRUFEX0RFU1RSVUNUT1JfSVRFUkFUSU9OUzoKLSAgICAgIHJldHVybiBfUE9TSVhfVEhSRUFEX0RFU1RSVUNUT1JfSVRFUkFUSU9OUzsKLQotICAgIGNhc2UgX1NDX1RIUkVBRF9LRVlTX01BWDoKLSAgICAgIHJldHVybiAoQklPTklDX1RMU19TTE9UUyAtIFRMU19TTE9UX0ZJUlNUX1VTRVJfU0xPVCAtIEJJT05JQ19UTFNfUkVTRVJWRURfU0xPVFMpOwotCisgICAgY2FzZSBfU0NfR0VUR1JfUl9TSVpFX01BWDogIHJldHVybiAxMDI0OworICAgIGNhc2UgX1NDX0dFVFBXX1JfU0laRV9NQVg6ICByZXR1cm4gMTAyNDsKKyAgICBjYXNlIF9TQ19MT0dJTl9OQU1FX01BWDogICAgcmV0dXJuIDI1NjsgICAvLyBTZWVtcyBkZWZhdWx0IG9uIGxpbnV4LgorICAgIGNhc2UgX1NDX1RIUkVBRF9ERVNUUlVDVE9SX0lURVJBVElPTlM6IHJldHVybiBQVEhSRUFEX0RFU1RSVUNUT1JfSVRFUkFUSU9OUzsKKyAgICBjYXNlIF9TQ19USFJFQURfS0VZU19NQVg6ICAgcmV0dXJuIFBUSFJFQURfS0VZU19NQVg7CiAgICAgY2FzZSBfU0NfVEhSRUFEX1NUQUNLX01JTjogICAgcmV0dXJuIFBUSFJFQURfU1RBQ0tfTUlOOwotICAgIGNhc2UgX1NDX1RIUkVBRF9USFJFQURTX01BWDogIHJldHVybiBTWVNURU1fVEhSRUFEX1RIUkVBRFNfTUFYOwotICAgIGNhc2UgX1NDX1RUWV9OQU1FX01BWDogICAgICAgIHJldHVybiBTWVNURU1fVFRZX05BTUVfTUFYOwotI2lmZGVmIF9QT1NJWF9USFJFQURTCisgICAgY2FzZSBfU0NfVEhSRUFEX1RIUkVBRFNfTUFYOiAgcmV0dXJuIFBUSFJFQURfVEhSRUFEU19NQVg7CisgICAgY2FzZSBfU0NfVFRZX05BTUVfTUFYOiAgICAgICAgcmV0dXJuIDMyOyAgLy8gU2VlbXMgZGVmYXVsdCBvbiBsaW51eC4KICAgICBjYXNlIF9TQ19USFJFQURTOiAgICAgICAgICAgICByZXR1cm4gX1BPU0lYX1RIUkVBRFM7Ci0jZW5kaWYKLQotICAgIGNhc2UgX1NDX1RIUkVBRF9BVFRSX1NUQUNLQUREUjogICByZXR1cm4gLTE7IC8vIFJlbW92ZWQgaW4gUE9TSVggMjAwOAotICAgIGNhc2UgX1NDX1RIUkVBRF9BVFRSX1NUQUNLU0laRTogICByZXR1cm4gLTE7IC8vIFJlbW92ZWQgaW4gUE9TSVggMjAwOAotCi0jaWZkZWYgX1BPU0lYX1RIUkVBRF9QUklPUklUWV9TQ0hFRFVMSU5HCisgICAgY2FzZSBfU0NfVEhSRUFEX0FUVFJfU1RBQ0tBRERSOiAgIHJldHVybiBfUE9TSVhfVEhSRUFEX0FUVFJfU1RBQ0tBRERSOworICAgIGNhc2UgX1NDX1RIUkVBRF9BVFRSX1NUQUNLU0laRTogICByZXR1cm4gX1BPU0lYX1RIUkVBRF9BVFRSX1NUQUNLU0laRTsKICAgICBjYXNlIF9TQ19USFJFQURfUFJJT1JJVFlfU0NIRURVTElORzogIHJldHVybiBfUE9TSVhfVEhSRUFEX1BSSU9SSVRZX1NDSEVEVUxJTkc7Ci0jZW5kaWYKLSNpZmRlZiBfUE9TSVhfVEhSRUFEX1BSSU9fSU5IRVJJVAotICAgIGNhc2UgX1NDX1RIUkVBRF9QUklPX0lOSEVSSVQ6ICAgICAgICAgcmV0dXJuIF9QT1NJWF9USFJFQURfUFJJT19JTkhFUklUOwotI2VuZGlmCi0jaWZkZWYgX1BPU0lYX1RIUkVBRF9QUklPX1BST1RFQ1QKKyAgICBjYXNlIF9TQ19USFJFQURfUFJJT19JTkhFUklUOiByZXR1cm4gX1BPU0lYX1RIUkVBRF9QUklPX0lOSEVSSVQ7CiAgICAgY2FzZSBfU0NfVEhSRUFEX1BSSU9fUFJPVEVDVDogcmV0dXJuIF9QT1NJWF9USFJFQURfUFJJT19QUk9URUNUOwotI2VuZGlmCi0jaWZkZWYgX1BPU0lYX1RIUkVBRF9TQUZFX0ZVTkNUSU9OUwotICAgIGNhc2UgX1NDX1RIUkVBRF9TQUZFX0ZVTkNUSU9OUzogIHJldHVybiBfUE9TSVhfVEhSRUFEX1NBRkVfRlVOQ1RJT05TCi0jZW5kaWYKLQorICAgIGNhc2UgX1NDX1RIUkVBRF9TQUZFX0ZVTkNUSU9OUzogIHJldHVybiBfUE9TSVhfVEhSRUFEX1NBRkVfRlVOQ1RJT05TOworICAgIGNhc2UgX1NDX05QUk9DRVNTT1JTX0NPTkY6ICByZXR1cm4gZ2V0X25wcm9jc19jb25mKCk7CisgICAgY2FzZSBfU0NfTlBST0NFU1NPUlNfT05MTjogIHJldHVybiBnZXRfbnByb2NzKCk7CisgICAgY2FzZSBfU0NfUEhZU19QQUdFUzogICAgICAgIHJldHVybiBnZXRfcGh5c19wYWdlcygpOworICAgIGNhc2UgX1NDX0FWUEhZU19QQUdFUzogICAgICByZXR1cm4gZ2V0X2F2cGh5c19wYWdlcygpOwogICAgIGNhc2UgX1NDX01PTk9UT05JQ19DTE9DSzogICByZXR1cm4gX19zeXNjb25mX21vbm90b25pY19jbG9jaygpOwotICAgIGNhc2UgX1NDX05QUk9DRVNTT1JTX0NPTkY6ICByZXR1cm4gX19zeXNjb25mX25wcm9jZXNzb3JzX2NvbmYoKTsKLSAgICBjYXNlIF9TQ19OUFJPQ0VTU09SU19PTkxOOiAgcmV0dXJuIF9fc3lzY29uZl9ucHJvY2Vzc29yc19vbmxuKCk7Ci0gICAgY2FzZSBfU0NfUEhZU19QQUdFUzogICAgICAgIHJldHVybiBfX3N5c2NvbmZfcGh5c19wYWdlcygpOwotICAgIGNhc2UgX1NDX0FWUEhZU19QQUdFUzogICAgICByZXR1cm4gX19zeXNjb25mX2F2cGh5c19wYWdlcygpOworCisgICAgY2FzZSBfU0NfMl9QQlM6ICAgICAgICAgICAgIHJldHVybiAtMTsgICAgIC8vIE9ic29sZXNjZW50IGluIFBPU0lYLjEtMjAwOC4KKyAgICBjYXNlIF9TQ18yX1BCU19BQ0NPVU5USU5HOiAgcmV0dXJuIC0xOyAgICAgLy8gT2Jzb2xlc2NlbnQgaW4gUE9TSVguMS0yMDA4LgorICAgIGNhc2UgX1NDXzJfUEJTX0NIRUNLUE9JTlQ6ICByZXR1cm4gLTE7ICAgICAvLyBPYnNvbGVzY2VudCBpbiBQT1NJWC4xLTIwMDguCisgICAgY2FzZSBfU0NfMl9QQlNfTE9DQVRFOiAgICAgIHJldHVybiAtMTsgICAgIC8vIE9ic29sZXNjZW50IGluIFBPU0lYLjEtMjAwOC4KKyAgICBjYXNlIF9TQ18yX1BCU19NRVNTQUdFOiAgICAgcmV0dXJuIC0xOyAgICAgLy8gT2Jzb2xlc2NlbnQgaW4gUE9TSVguMS0yMDA4LgorICAgIGNhc2UgX1NDXzJfUEJTX1RSQUNLOiAgICAgICByZXR1cm4gLTE7ICAgICAvLyBPYnNvbGVzY2VudCBpbiBQT1NJWC4xLTIwMDguCisgICAgY2FzZSBfU0NfQURWSVNPUllfSU5GTzogICAgIHJldHVybiBfUE9TSVhfQURWSVNPUllfSU5GTzsKKyAgICBjYXNlIF9TQ19CQVJSSUVSUzogICAgICAgICAgcmV0dXJuIF9QT1NJWF9CQVJSSUVSUzsKKyAgICBjYXNlIF9TQ19DTE9DS19TRUxFQ1RJT046ICAgcmV0dXJuIF9QT1NJWF9DTE9DS19TRUxFQ1RJT047CisgICAgY2FzZSBfU0NfQ1BVVElNRToKKyAgICAgIHJldHVybiBfX3N5c2NvbmZfaGFzX2Nsb2NrKENMT0NLX1BST0NFU1NfQ1BVVElNRV9JRCkgP19QT1NJWF9WRVJTSU9OIDogLTE7CisKKyAgICBjYXNlIF9TQ19IT1NUX05BTUVfTUFYOiAgICAgcmV0dXJuIF9QT1NJWF9IT1NUX05BTUVfTUFYOyAgICAvLyBNaW5pbXVtIHJlcXVpcmVtZW50LgorICAgIGNhc2UgX1NDX0lQVjY6ICAgICAgICAgICAgICByZXR1cm4gX1BPU0lYX0lQVjY7CisgICAgY2FzZSBfU0NfUkFXX1NPQ0tFVFM6ICAgICAgIHJldHVybiBfUE9TSVhfUkFXX1NPQ0tFVFM7CisgICAgY2FzZSBfU0NfUkVBREVSX1dSSVRFUl9MT0NLUzogcmV0dXJuIF9QT1NJWF9SRUFERVJfV1JJVEVSX0xPQ0tTOworICAgIGNhc2UgX1NDX1JFR0VYUDogICAgICAgICAgICByZXR1cm4gX1BPU0lYX1JFR0VYUDsKKyAgICBjYXNlIF9TQ19TSEVMTDogICAgICAgICAgICAgcmV0dXJuIF9QT1NJWF9TSEVMTDsKKyAgICBjYXNlIF9TQ19TUEFXTjogICAgICAgICAgICAgcmV0dXJuIF9QT1NJWF9TUEFXTjsKKyAgICBjYXNlIF9TQ19TUElOX0xPQ0tTOiAgICAgICAgcmV0dXJuIF9QT1NJWF9TUElOX0xPQ0tTOworICAgIGNhc2UgX1NDX1NQT1JBRElDX1NFUlZFUjogICByZXR1cm4gX1BPU0lYX1NQT1JBRElDX1NFUlZFUjsKKyAgICBjYXNlIF9TQ19TU19SRVBMX01BWDogICAgICAgcmV0dXJuIC0xOworICAgIGNhc2UgX1NDX1NZTUxPT1BfTUFYOiAgICAgICByZXR1cm4gX1BPU0lYX1NZTUxPT1BfTUFYOyAgICAgIC8vIE1pbmltdW0gcmVxdWlyZW1lbnQuCisgICAgY2FzZSBfU0NfVEhSRUFEX0NQVVRJTUU6CisgICAgICByZXR1cm4gX19zeXNjb25mX2hhc19jbG9jayhDTE9DS19USFJFQURfQ1BVVElNRV9JRCkgPyBfUE9TSVhfVkVSU0lPTiA6IC0xOworCisgICAgY2FzZSBfU0NfVEhSRUFEX1BST0NFU1NfU0hBUkVEOiByZXR1cm4gX1BPU0lYX1RIUkVBRF9QUk9DRVNTX1NIQVJFRDsKKyAgICBjYXNlIF9TQ19USFJFQURfUk9CVVNUX1BSSU9fSU5IRVJJVDogIHJldHVybiBfUE9TSVhfVEhSRUFEX1JPQlVTVF9QUklPX0lOSEVSSVQ7CisgICAgY2FzZSBfU0NfVEhSRUFEX1JPQlVTVF9QUklPX1BST1RFQ1Q6ICByZXR1cm4gX1BPU0lYX1RIUkVBRF9ST0JVU1RfUFJJT19QUk9URUNUOworICAgIGNhc2UgX1NDX1RIUkVBRF9TUE9SQURJQ19TRVJWRVI6ICAgICAgcmV0dXJuIF9QT1NJWF9USFJFQURfU1BPUkFESUNfU0VSVkVSOworICAgIGNhc2UgX1NDX1RJTUVPVVRTOiAgICAgICAgICByZXR1cm4gX1BPU0lYX1RJTUVPVVRTOworICAgIGNhc2UgX1NDX1RSQUNFOiAgICAgICAgICAgICByZXR1cm4gLTE7ICAgICAgICAgICAgIC8vIE9ic29sZXNjZW50IGluIFBPU0lYLjEtMjAwOC4KKyAgICBjYXNlIF9TQ19UUkFDRV9FVkVOVF9GSUxURVI6ICAgICAgcmV0dXJuIC0xOyAgICAgICAvLyBPYnNvbGVzY2VudCBpbiBQT1NJWC4xLTIwMDguCisgICAgY2FzZSBfU0NfVFJBQ0VfRVZFTlRfTkFNRV9NQVg6ICAgIHJldHVybiAtMTsKKyAgICBjYXNlIF9TQ19UUkFDRV9JTkhFUklUOiAgICAgcmV0dXJuIC0xOyAgICAgICAgICAgICAvLyBPYnNvbGVzY2VudCBpbiBQT1NJWC4xLTIwMDguCisgICAgY2FzZSBfU0NfVFJBQ0VfTE9HOiAgICAgICAgIHJldHVybiAtMTsgICAgICAgICAgICAgLy8gT2Jzb2xlc2NlbnQgaW4gUE9TSVguMS0yMDA4LgorICAgIGNhc2UgX1NDX1RSQUNFX05BTUVfTUFYOiAgICByZXR1cm4gLTE7CisgICAgY2FzZSBfU0NfVFJBQ0VfU1lTX01BWDogICAgIHJldHVybiAtMTsKKyAgICBjYXNlIF9TQ19UUkFDRV9VU0VSX0VWRU5UX01BWDogICAgcmV0dXJuIC0xOworICAgIGNhc2UgX1NDX1RZUEVEX01FTU9SWV9PQkpFQ1RTOiAgICByZXR1cm4gX1BPU0lYX1RZUEVEX01FTU9SWV9PQkpFQ1RTOworICAgIGNhc2UgX1NDX1Y3X0lMUDMyX09GRjMyOiAgICByZXR1cm4gX1BPU0lYX1Y3X0lMUDMyX09GRjMyOworICAgIGNhc2UgX1NDX1Y3X0lMUDMyX09GRkJJRzogICByZXR1cm4gX1BPU0lYX1Y3X0lMUDMyX09GRkJJRzsKKyAgICBjYXNlIF9TQ19WN19MUDY0X09GRjY0OiAgICAgcmV0dXJuIF9QT1NJWF9WN19MUDY0X09GRjY0OworICAgIGNhc2UgX1NDX1Y3X0xQQklHX09GRkJJRzogICByZXR1cm4gX1BPU0lYX1Y3X0xQQklHX09GRkJJRzsKKyAgICBjYXNlIF9TQ19YT1BFTl9TVFJFQU1TOiAgICAgcmV0dXJuIC0xOyAgICAgICAgICAgIC8vIE9ic29sZXNjZW50IGluIFBPU0lYLjEtMjAwOC4KKyAgICBjYXNlIF9TQ19YT1BFTl9VVUNQOiAgICAgICAgcmV0dXJuIC0xOworCisgICAgLy8gV2UgZG8gbm90IGhhdmUgYWN0dWFsIGltcGxlbWVudGF0aW9ucyBmb3IgY2FjaGUgcXVlcmllcy4KKyAgICAvLyBJdCdzIHZhbGlkIHRvIHJldHVybiAwIGFzIHRoZSByZXN1bHQgaXMgdW5rbm93bi4KKyAgICBjYXNlIF9TQ19MRVZFTDFfSUNBQ0hFX1NJWkU6ICAgICAgcmV0dXJuIDA7CisgICAgY2FzZSBfU0NfTEVWRUwxX0lDQUNIRV9BU1NPQzogICAgIHJldHVybiAwOworICAgIGNhc2UgX1NDX0xFVkVMMV9JQ0FDSEVfTElORVNJWkU6ICByZXR1cm4gMDsKKyAgICBjYXNlIF9TQ19MRVZFTDFfRENBQ0hFX1NJWkU6ICAgICAgcmV0dXJuIDA7CisgICAgY2FzZSBfU0NfTEVWRUwxX0RDQUNIRV9BU1NPQzogICAgIHJldHVybiAwOworICAgIGNhc2UgX1NDX0xFVkVMMV9EQ0FDSEVfTElORVNJWkU6ICByZXR1cm4gMDsKKyAgICBjYXNlIF9TQ19MRVZFTDJfQ0FDSEVfU0laRTogICAgICAgcmV0dXJuIDA7CisgICAgY2FzZSBfU0NfTEVWRUwyX0NBQ0hFX0FTU09DOiAgICAgIHJldHVybiAwOworICAgIGNhc2UgX1NDX0xFVkVMMl9DQUNIRV9MSU5FU0laRTogICByZXR1cm4gMDsKKyAgICBjYXNlIF9TQ19MRVZFTDNfQ0FDSEVfU0laRTogICAgICAgcmV0dXJuIDA7CisgICAgY2FzZSBfU0NfTEVWRUwzX0NBQ0hFX0FTU09DOiAgICAgIHJldHVybiAwOworICAgIGNhc2UgX1NDX0xFVkVMM19DQUNIRV9MSU5FU0laRTogICByZXR1cm4gMDsKKyAgICBjYXNlIF9TQ19MRVZFTDRfQ0FDSEVfU0laRTogICAgICAgcmV0dXJuIDA7CisgICAgY2FzZSBfU0NfTEVWRUw0X0NBQ0hFX0FTU09DOiAgICAgIHJldHVybiAwOworICAgIGNhc2UgX1NDX0xFVkVMNF9DQUNIRV9MSU5FU0laRTogICByZXR1cm4gMDsKIAogICAgIGRlZmF1bHQ6Ci0gICAgICAgLyogUG9zaXggc2F5cyBFSU5WQUwgaXMgdGhlIG9ubHkgZXJyb3IgdGhhdCBzaGFsbCBiZSByZXR1cm5lZCwKLSAgICAgICAgKiBidXQgR0xpYmMgdXNlcyBFTk9TWVMgKi8KLSAgICAgICAgZXJybm8gPSBFTk9TWVM7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9CisgICAgICAvLyBQb3NpeCBzYXlzIEVJTlZBTCBpcyB0aGUgb25seSBlcnJvciB0aGF0IHNoYWxsIGJlIHJldHVybmVkLAorICAgICAgLy8gYnV0IGdsaWJjIHVzZXMgRU5PU1lTLgorICAgICAgZXJybm8gPSBFTk9TWVM7CisgICAgICByZXR1cm4gLTE7CisgIH0KIH0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3N5c2luZm8uY3BwIGIvbGliYy9iaW9uaWMvc3lzaW5mby5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODJjYjc2YQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYmlvbmljL3N5c2luZm8uY3BwCkBAIC0wLDAgKzEsMTExIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxzeXMvc3lzaW5mby5oPgorCisjaW5jbHVkZSA8ZGlyZW50Lmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKworI2luY2x1ZGUgInByaXZhdGUvU2NvcGVkUmVhZGRpci5oIgorCitzdGF0aWMgYm9vbCBfX21hdGNoZXNfY3B1Tihjb25zdCBjaGFyKiBzKSB7CisgIC8vIFRoZSAlYyB0cmljayBpcyB0byBlbnN1cmUgdGhhdCB3ZSBoYXZlIHRoZSBhbmNob3JlZCBtYXRjaCAiXmNwdVswLTldKyQiLgorICB1bnNpZ25lZCBjcHU7CisgIGNoYXIgZHVtbXk7CisgIHJldHVybiAoc3NjYW5mKHMsICJjcHUldSVjIiwgJmNwdSwgJmR1bW15KSA9PSAxKTsKK30KKworaW50IGdldF9ucHJvY3NfY29uZigpIHsKKyAgLy8gT24geDg2IGtlcm5lbHMgeW91IGNhbiB1c2UgL3Byb2MvY3B1aW5mbyBmb3IgdGhpcywgYnV0IG9uIEFSTSBrZXJuZWxzIG9mZmxpbmUgQ1BVcyBkaXNhcHBlYXIKKyAgLy8gZnJvbSB0aGVyZS4gVGhpcyBtZXRob2Qgd29ya3Mgb24gYm90aC4KKyAgU2NvcGVkUmVhZGRpciByZWFkZXIoIi9zeXMvZGV2aWNlcy9zeXN0ZW0vY3B1Iik7CisgIGlmIChyZWFkZXIuSXNCYWQoKSkgeworICAgIHJldHVybiAxOworICB9CisKKyAgaW50IHJlc3VsdCA9IDA7CisgIGRpcmVudCogZW50cnk7CisgIHdoaWxlICgoZW50cnkgPSByZWFkZXIuUmVhZEVudHJ5KCkpICE9IE5VTEwpIHsKKyAgICBpZiAoZW50cnktPmRfdHlwZSA9PSBEVF9ESVIgJiYgX19tYXRjaGVzX2NwdU4oZW50cnktPmRfbmFtZSkpIHsKKyAgICAgICsrcmVzdWx0OworICAgIH0KKyAgfQorICByZXR1cm4gcmVzdWx0OworfQorCitpbnQgZ2V0X25wcm9jcygpIHsKKyAgRklMRSogZnAgPSBmb3BlbigiL3Byb2Mvc3RhdCIsICJyZSIpOworICBpZiAoZnAgPT0gTlVMTCkgeworICAgIHJldHVybiAxOworICB9CisKKyAgaW50IHJlc3VsdCA9IDA7CisgIGNoYXIgYnVmWzI1Nl07CisgIHdoaWxlIChmZ2V0cyhidWYsIHNpemVvZihidWYpLCBmcCkgIT0gTlVMTCkgeworICAgIC8vIEV4dHJhY3QganVzdCB0aGUgZmlyc3Qgd29yZCBmcm9tIHRoZSBsaW5lLgorICAgIC8vICdjcHUwIDc5NzY3NTEgMTM2NDM4OCAzMTE2ODQyIDQ2OTc3MDM4OCA4NjI5NDA1IDAgNDkwNDcgMCAwIDAnCisgICAgY2hhciogcCA9IHN0cmNocihidWYsICcgJyk7CisgICAgaWYgKHAgIT0gTlVMTCkgeworICAgICAgKnAgPSAwOworICAgIH0KKyAgICBpZiAoX19tYXRjaGVzX2NwdU4oYnVmKSkgeworICAgICAgKytyZXN1bHQ7CisgICAgfQorICB9CisgIGZjbG9zZShmcCk7CisgIHJldHVybiByZXN1bHQ7Cit9CisKK3N0YXRpYyBpbnQgX19nZXRfbWVtaW5mb19wYWdlX2NvdW50KGNvbnN0IGNoYXIqIHBhdHRlcm4pIHsKKyAgRklMRSogZnAgPSBmb3BlbigiL3Byb2MvbWVtaW5mbyIsICJyZSIpOworICBpZiAoZnAgPT0gTlVMTCkgeworICAgIHJldHVybiAtMTsKKyAgfQorCisgIGludCBwYWdlX2NvdW50ID0gLTE7CisgIGNoYXIgYnVmWzI1Nl07CisgIHdoaWxlIChmZ2V0cyhidWYsIHNpemVvZihidWYpLCBmcCkgIT0gTlVMTCkgeworICAgIGxvbmcgdG90YWw7CisgICAgaWYgKHNzY2FuZihidWYsIHBhdHRlcm4sICZ0b3RhbCkgPT0gMSkgeworICAgICAgcGFnZV9jb3VudCA9IHN0YXRpY19jYXN0PGludD4odG90YWwgLyAoUEFHRV9TSVpFIC8gMTAyNCkpOworICAgICAgYnJlYWs7CisgICAgfQorICB9CisgIGZjbG9zZShmcCk7CisgIHJldHVybiBwYWdlX2NvdW50OworfQorCitsb25nIGdldF9waHlzX3BhZ2VzKCkgeworICByZXR1cm4gX19nZXRfbWVtaW5mb19wYWdlX2NvdW50KCJNZW1Ub3RhbDogJWxkIGtCIik7Cit9CisKK2xvbmcgZ2V0X2F2cGh5c19wYWdlcygpIHsKKyAgcmV0dXJuIF9fZ2V0X21lbWluZm9fcGFnZV9jb3VudCgiTWVtRnJlZTogJWxkIGtCIik7Cit9CmRpZmYgLS1naXQgYS9saWJjL2Jpb25pYy9zeXNsb2cuY3BwIGIvbGliYy9iaW9uaWMvc3lzbG9nLmNwcAppbmRleCBkOGI4YjE5Li44ZTNmMzRmIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9zeXNsb2cuY3BwCisrKyBiL2xpYmMvYmlvbmljL3N5c2xvZy5jcHAKQEAgLTE2LDYgKzE2LDcgQEAKIAogI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8c3lzbG9nLmg+CiAKICNpbmNsdWRlICJwcml2YXRlL2xpYmNfbG9nZ2luZy5oIgpkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvc3lzdGVtX3Byb3BlcnRpZXMuY3BwIGIvbGliYy9iaW9uaWMvc3lzdGVtX3Byb3BlcnRpZXMuY3BwCmluZGV4IDBlMTZiZjMuLmM0MzZhMTYgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL3N5c3RlbV9wcm9wZXJ0aWVzLmNwcAorKysgYi9saWJjL2Jpb25pYy9zeXN0ZW1fcHJvcGVydGllcy5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICAqIFNVQ0ggREFNQUdFLgogICovCiAjaW5jbHVkZSA8bmV3PgorI2luY2x1ZGUgPHN0ZGF0b21pYy5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+CkBAIC00NSwxMyArNDYsMTEgQEAKICNpbmNsdWRlIDxzeXMvc3RhdC5oPgogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgogI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4KLSNpbmNsdWRlIDx1bmlzdGQuaD4KIAogI2RlZmluZSBfUkVBTExZX0lOQ0xVREVfU1lTX19TWVNURU1fUFJPUEVSVElFU19IXwogI2luY2x1ZGUgPHN5cy9fc3lzdGVtX3Byb3BlcnRpZXMuaD4KICNpbmNsdWRlIDxzeXMvc3lzdGVtX3Byb3BlcnRpZXMuaD4KIAotI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX2F0b21pY19pbmxpbmUuaCIKICNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19mdXRleC5oIgogI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX21hY3Jvcy5oIgogCkBAIC04MCwxMiArNzksMjYgQEAKICAgICB1aW50OF90IG5hbWVsZW47CiAgICAgdWludDhfdCByZXNlcnZlZFszXTsKIAotICAgIHZvbGF0aWxlIHVpbnQzMl90IHByb3A7CisgICAgLy8gVGhlIHByb3BlcnR5IHRyaWUgaXMgdXBkYXRlZCBvbmx5IGJ5IHRoZSBpbml0IHByb2Nlc3MgKHNpbmdsZSB0aHJlYWRlZCkgd2hpY2ggcHJvdmlkZXMKKyAgICAvLyBwcm9wZXJ0eSBzZXJ2aWNlLiBBbmQgaXQgY2FuIGJlIHJlYWQgYnkgbXVsdGlwbGUgdGhyZWFkcyBhdCB0aGUgc2FtZSB0aW1lLgorICAgIC8vIEFzIHRoZSBwcm9wZXJ0eSB0cmllIGlzIG5vdCBwcm90ZWN0ZWQgYnkgbG9ja3MsIHdlIHVzZSBhdG9taWNfdWludF9sZWFzdDMyX3QgdHlwZXMgZm9yIHRoZQorICAgIC8vIGxlZnQsIHJpZ2h0LCBjaGlsZHJlbiAicG9pbnRlcnMiIGluIHRoZSB0cmllIG5vZGUuIFRvIG1ha2Ugc3VyZSByZWFkZXJzIHdobyBzZWUgdGhlCisgICAgLy8gY2hhbmdlIG9mICJwb2ludGVycyIgY2FuIGFsc28gbm90aWNlIHRoZSBjaGFuZ2Ugb2YgcHJvcF9idCBzdHJ1Y3R1cmUgY29udGVudHMgcG9pbnRlZCBieQorICAgIC8vIHRoZSAicG9pbnRlcnMiLCB3ZSBhbHdheXMgdXNlIHJlbGVhc2UtY29uc3VtZSBvcmRlcmluZyBwYWlyIHdoZW4gYWNjZXNzaW5nIHRoZXNlICJwb2ludGVycyIuCiAKLSAgICB2b2xhdGlsZSB1aW50MzJfdCBsZWZ0OwotICAgIHZvbGF0aWxlIHVpbnQzMl90IHJpZ2h0OworICAgIC8vIHByb3AgInBvaW50cyIgdG8gcHJvcF9pbmZvIHN0cnVjdHVyZSBpZiB0aGVyZSBpcyBhIHByb3BlcnkgYXNzb2NpYXRlZCB3aXRoIHRoZSB0cmllIG5vZGUuCisgICAgLy8gSXRzIHNpdHVhdGlvbiBpcyBzaW1pbGFyIHRvIHRoZSBsZWZ0LCByaWdodCwgY2hpbGRyZW4gInBvaW50ZXJzIi4gU28gd2UgdXNlCisgICAgLy8gYXRvbWljX3VpbnRfbGVhc3QzMl90IGFuZCByZWxlYXNlLWNvbnN1bWUgb3JkZXJpbmcgdG8gcHJvdGVjdCBpdCBhcyB3ZWxsLgogCi0gICAgdm9sYXRpbGUgdWludDMyX3QgY2hpbGRyZW47CisgICAgLy8gV2Ugc2hvdWxkIGFsc28gYXZvaWQgcmVyZWFkaW5nIHRoZXNlIGZpZWxkcyByZWR1bmRhbnRseSwgc2luY2Ugbm90CisgICAgLy8gYWxsIHByb2Nlc3NvciBpbXBsZW1lbnRhdGlvbnMgZW5zdXJlIHRoYXQgbXVsdGlwbGUgbG9hZHMgZnJvbSB0aGUKKyAgICAvLyBzYW1lIGZpZWxkIGFyZSBjYXJyaWVkIG91dCBpbiB0aGUgcmlnaHQgb3JkZXIuCisgICAgYXRvbWljX3VpbnRfbGVhc3QzMl90IHByb3A7CisKKyAgICBhdG9taWNfdWludF9sZWFzdDMyX3QgbGVmdDsKKyAgICBhdG9taWNfdWludF9sZWFzdDMyX3QgcmlnaHQ7CisKKyAgICBhdG9taWNfdWludF9sZWFzdDMyX3QgY2hpbGRyZW47CiAKICAgICBjaGFyIG5hbWVbMF07CiAKQEAgLTkzLDcgKzEwNiw2IEBACiAgICAgICAgIHRoaXMtPm5hbWVsZW4gPSBuYW1lX2xlbmd0aDsKICAgICAgICAgbWVtY3B5KHRoaXMtPm5hbWUsIG5hbWUsIG5hbWVfbGVuZ3RoKTsKICAgICAgICAgdGhpcy0+bmFtZVtuYW1lX2xlbmd0aF0gPSAnXDAnOwotICAgICAgICBBTkRST0lEX01FTUJBUl9GVUxMKCk7CiAgICAgfQogCiBwcml2YXRlOgpAQCAtMTAyLDE0ICsxMTQsMTUgQEAKIAogc3RydWN0IHByb3BfYXJlYSB7CiAgICAgdWludDMyX3QgYnl0ZXNfdXNlZDsKLSAgICB2b2xhdGlsZSB1aW50MzJfdCBzZXJpYWw7CisgICAgYXRvbWljX3VpbnRfbGVhc3QzMl90IHNlcmlhbDsKICAgICB1aW50MzJfdCBtYWdpYzsKICAgICB1aW50MzJfdCB2ZXJzaW9uOwogICAgIHVpbnQzMl90IHJlc2VydmVkWzI4XTsKICAgICBjaGFyIGRhdGFbMF07CiAKICAgICBwcm9wX2FyZWEoY29uc3QgdWludDMyX3QgbWFnaWMsIGNvbnN0IHVpbnQzMl90IHZlcnNpb24pIDoKLSAgICAgICAgc2VyaWFsKDApLCBtYWdpYyhtYWdpYyksIHZlcnNpb24odmVyc2lvbikgeworICAgICAgICBtYWdpYyhtYWdpYyksIHZlcnNpb24odmVyc2lvbikgeworICAgICAgICBhdG9taWNfaW5pdCgmc2VyaWFsLCAwKTsKICAgICAgICAgbWVtc2V0KHJlc2VydmVkLCAwLCBzaXplb2YocmVzZXJ2ZWQpKTsKICAgICAgICAgLy8gQWxsb2NhdGUgZW5vdWdoIHNwYWNlIGZvciB0aGUgcm9vdCBub2RlLgogICAgICAgICBieXRlc191c2VkID0gc2l6ZW9mKHByb3BfYnQpOwpAQCAtMTIwLDcgKzEzMyw3IEBACiB9OwogCiBzdHJ1Y3QgcHJvcF9pbmZvIHsKLSAgICB2b2xhdGlsZSB1aW50MzJfdCBzZXJpYWw7CisgICAgYXRvbWljX3VpbnRfbGVhc3QzMl90IHNlcmlhbDsKICAgICBjaGFyIHZhbHVlW1BST1BfVkFMVUVfTUFYXTsKICAgICBjaGFyIG5hbWVbMF07CiAKQEAgLTEyOCwxMCArMTQxLDkgQEAKICAgICAgICAgICAgICAgY29uc3QgdWludDhfdCB2YWx1ZWxlbikgewogICAgICAgICBtZW1jcHkodGhpcy0+bmFtZSwgbmFtZSwgbmFtZWxlbik7CiAgICAgICAgIHRoaXMtPm5hbWVbbmFtZWxlbl0gPSAnXDAnOwotICAgICAgICB0aGlzLT5zZXJpYWwgPSAodmFsdWVsZW4gPDwgMjQpOworICAgICAgICBhdG9taWNfaW5pdCgmdGhpcy0+c2VyaWFsLCB2YWx1ZWxlbiA8PCAyNCk7CiAgICAgICAgIG1lbWNweSh0aGlzLT52YWx1ZSwgdmFsdWUsIHZhbHVlbGVuKTsKICAgICAgICAgdGhpcy0+dmFsdWVbdmFsdWVsZW5dID0gJ1wwJzsKLSAgICAgICAgQU5EUk9JRF9NRU1CQVJfRlVMTCgpOwogICAgIH0KIHByaXZhdGU6CiAgICAgRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOKHByb3BfaW5mbyk7CkBAIC0xODgsMTQgKzIwMCw2IEBACiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiAKLSAgICAvLyBUT0RPOiBJcyB0aGlzIHJlYWxseSByZXF1aXJlZCA/IERvZXMgYW5kcm9pZCBydW4gb24gYW55IGtlcm5lbHMgdGhhdAotICAgIC8vIGRvbid0IHN1cHBvcnQgT19DTE9FWEVDID8KLSAgICBjb25zdCBpbnQgcmV0ID0gZmNudGwoZmQsIEZfU0VURkQsIEZEX0NMT0VYRUMpOwotICAgIGlmIChyZXQgPCAwKSB7Ci0gICAgICAgIGNsb3NlKGZkKTsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLQogICAgIGlmIChmdHJ1bmNhdGUoZmQsIFBBX1NJWkUpIDwgMCkgewogICAgICAgICBjbG9zZShmZCk7CiAgICAgICAgIHJldHVybiAtMTsKQEAgLTI1OCwxOCArMjYyLDkgQEAKIAogc3RhdGljIGludCBtYXBfcHJvcF9hcmVhKCkKIHsKLSAgICBpbnQgZmQob3Blbihwcm9wZXJ0eV9maWxlbmFtZSwgT19SRE9OTFkgfCBPX05PRk9MTE9XIHwgT19DTE9FWEVDKSk7Ci0gICAgaWYgKGZkID49IDApIHsKLSAgICAgICAgLyogRm9yIG9sZCBrZXJuZWxzIHRoYXQgZG9uJ3Qgc3VwcG9ydCBPX0NMT0VYRUMgKi8KLSAgICAgICAgY29uc3QgaW50IHJldCA9IGZjbnRsKGZkLCBGX1NFVEZELCBGRF9DTE9FWEVDKTsKLSAgICAgICAgaWYgKHJldCA8IDApIHsKLSAgICAgICAgICAgIGNsb3NlKGZkKTsKLSAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgfQotICAgIH0KLQorICAgIGludCBmZCA9IG9wZW4ocHJvcGVydHlfZmlsZW5hbWUsIE9fQ0xPRVhFQyB8IE9fTk9GT0xMT1cgfCBPX1JET05MWSk7CiAgICAgYm9vbCBjbG9zZV9mZCA9IHRydWU7Ci0gICAgaWYgKChmZCA8IDApICYmIChlcnJubyA9PSBFTk9FTlQpKSB7CisgICAgaWYgKGZkID09IC0xICYmIGVycm5vID09IEVOT0VOVCkgewogICAgICAgICAvKgogICAgICAgICAgKiBGb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHksIGlmIHRoZSBmaWxlIGRvZXNuJ3QKICAgICAgICAgICogZXhpc3QsIHdlIHVzZSB0aGUgZW52aXJvbm1lbnQgdG8gZ2V0IHRoZSBmaWxlIGRlc2NyaXB0b3IuCkBAIC0yOTUsMTAgKzI5MCwxMCBAQAogICAgIHJldHVybiBtYXBfcmVzdWx0OwogfQogCi1zdGF0aWMgdm9pZCAqYWxsb2NhdGVfb2JqKGNvbnN0IHNpemVfdCBzaXplLCB1aW50MzJfdCAqY29uc3Qgb2ZmKQorc3RhdGljIHZvaWQgKmFsbG9jYXRlX29iaihjb25zdCBzaXplX3Qgc2l6ZSwgdWludF9sZWFzdDMyX3QgKmNvbnN0IG9mZikKIHsKICAgICBwcm9wX2FyZWEgKnBhID0gX19zeXN0ZW1fcHJvcGVydHlfYXJlYV9fOwotICAgIGNvbnN0IHNpemVfdCBhbGlnbmVkID0gQklPTklDX0FMSUdOKHNpemUsIHNpemVvZih1aW50MzJfdCkpOworICAgIGNvbnN0IHNpemVfdCBhbGlnbmVkID0gQklPTklDX0FMSUdOKHNpemUsIHNpemVvZih1aW50X2xlYXN0MzJfdCkpOwogICAgIGlmIChwYS0+Ynl0ZXNfdXNlZCArIGFsaWduZWQgPiBwYV9kYXRhX3NpemUpIHsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQpAQCAtMzA4LDEyICszMDMsMTIgQEAKICAgICByZXR1cm4gcGEtPmRhdGEgKyAqb2ZmOwogfQogCi1zdGF0aWMgcHJvcF9idCAqbmV3X3Byb3BfYnQoY29uc3QgY2hhciAqbmFtZSwgdWludDhfdCBuYW1lbGVuLCB1aW50MzJfdCAqY29uc3Qgb2ZmKQorc3RhdGljIHByb3BfYnQgKm5ld19wcm9wX2J0KGNvbnN0IGNoYXIgKm5hbWUsIHVpbnQ4X3QgbmFtZWxlbiwgdWludF9sZWFzdDMyX3QgKmNvbnN0IG9mZikKIHsKLSAgICB1aW50MzJfdCBuZXdfb2Zmc2V0OwotICAgIHZvaWQgKmNvbnN0IG9mZnNldCA9IGFsbG9jYXRlX29iaihzaXplb2YocHJvcF9idCkgKyBuYW1lbGVuICsgMSwgJm5ld19vZmZzZXQpOwotICAgIGlmIChvZmZzZXQpIHsKLSAgICAgICAgcHJvcF9idCogYnQgPSBuZXcob2Zmc2V0KSBwcm9wX2J0KG5hbWUsIG5hbWVsZW4pOworICAgIHVpbnRfbGVhc3QzMl90IG5ld19vZmZzZXQ7CisgICAgdm9pZCAqY29uc3QgcCA9IGFsbG9jYXRlX29iaihzaXplb2YocHJvcF9idCkgKyBuYW1lbGVuICsgMSwgJm5ld19vZmZzZXQpOworICAgIGlmIChwICE9IE5VTEwpIHsKKyAgICAgICAgcHJvcF9idCogYnQgPSBuZXcocCkgcHJvcF9idChuYW1lLCBuYW1lbGVuKTsKICAgICAgICAgKm9mZiA9IG5ld19vZmZzZXQ7CiAgICAgICAgIHJldHVybiBidDsKICAgICB9CkBAIC0zMjIsMjAgKzMxNywyMCBAQAogfQogCiBzdGF0aWMgcHJvcF9pbmZvICpuZXdfcHJvcF9pbmZvKGNvbnN0IGNoYXIgKm5hbWUsIHVpbnQ4X3QgbmFtZWxlbiwKLSAgICAgICAgY29uc3QgY2hhciAqdmFsdWUsIHVpbnQ4X3QgdmFsdWVsZW4sIHVpbnQzMl90ICpjb25zdCBvZmYpCisgICAgICAgIGNvbnN0IGNoYXIgKnZhbHVlLCB1aW50OF90IHZhbHVlbGVuLCB1aW50X2xlYXN0MzJfdCAqY29uc3Qgb2ZmKQogewotICAgIHVpbnQzMl90IG9mZl90bXA7Ci0gICAgdm9pZCogY29uc3Qgb2Zmc2V0ID0gYWxsb2NhdGVfb2JqKHNpemVvZihwcm9wX2luZm8pICsgbmFtZWxlbiArIDEsICZvZmZfdG1wKTsKLSAgICBpZiAob2Zmc2V0KSB7Ci0gICAgICAgIHByb3BfaW5mbyogaW5mbyA9IG5ldyhvZmZzZXQpIHByb3BfaW5mbyhuYW1lLCBuYW1lbGVuLCB2YWx1ZSwgdmFsdWVsZW4pOwotICAgICAgICAqb2ZmID0gb2ZmX3RtcDsKKyAgICB1aW50X2xlYXN0MzJfdCBuZXdfb2Zmc2V0OworICAgIHZvaWQqIGNvbnN0IHAgPSBhbGxvY2F0ZV9vYmooc2l6ZW9mKHByb3BfaW5mbykgKyBuYW1lbGVuICsgMSwgJm5ld19vZmZzZXQpOworICAgIGlmIChwICE9IE5VTEwpIHsKKyAgICAgICAgcHJvcF9pbmZvKiBpbmZvID0gbmV3KHApIHByb3BfaW5mbyhuYW1lLCBuYW1lbGVuLCB2YWx1ZSwgdmFsdWVsZW4pOworICAgICAgICAqb2ZmID0gbmV3X29mZnNldDsKICAgICAgICAgcmV0dXJuIGluZm87CiAgICAgfQogCiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKLXN0YXRpYyB2b2lkICp0b19wcm9wX29iaihjb25zdCB1aW50MzJfdCBvZmYpCitzdGF0aWMgdm9pZCAqdG9fcHJvcF9vYmoodWludF9sZWFzdDMyX3Qgb2ZmKQogewogICAgIGlmIChvZmYgPiBwYV9kYXRhX3NpemUpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMzQ1LDcgKzM0MCwxNyBAQAogICAgIHJldHVybiAoX19zeXN0ZW1fcHJvcGVydHlfYXJlYV9fLT5kYXRhICsgb2ZmKTsKIH0KIAotc3RhdGljIHByb3BfYnQgKnJvb3Rfbm9kZSgpCitzdGF0aWMgaW5saW5lIHByb3BfYnQgKnRvX3Byb3BfYnQoYXRvbWljX3VpbnRfbGVhc3QzMl90KiBvZmZfcCkgeworICB1aW50X2xlYXN0MzJfdCBvZmYgPSBhdG9taWNfbG9hZF9leHBsaWNpdChvZmZfcCwgbWVtb3J5X29yZGVyX2NvbnN1bWUpOworICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxwcm9wX2J0Kj4odG9fcHJvcF9vYmoob2ZmKSk7Cit9CisKK3N0YXRpYyBpbmxpbmUgcHJvcF9pbmZvICp0b19wcm9wX2luZm8oYXRvbWljX3VpbnRfbGVhc3QzMl90KiBvZmZfcCkgeworICB1aW50X2xlYXN0MzJfdCBvZmYgPSBhdG9taWNfbG9hZF9leHBsaWNpdChvZmZfcCwgbWVtb3J5X29yZGVyX2NvbnN1bWUpOworICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxwcm9wX2luZm8qPih0b19wcm9wX29iaihvZmYpKTsKK30KKworc3RhdGljIGlubGluZSBwcm9wX2J0ICpyb290X25vZGUoKQogewogICAgIHJldHVybiByZWludGVycHJldF9jYXN0PHByb3BfYnQqPih0b19wcm9wX29iaigwKSk7CiB9CkBAIC0zNzcsMzYgKzM4MiwzNCBAQAogICAgICAgICB9CiAKICAgICAgICAgaWYgKHJldCA8IDApIHsKLSAgICAgICAgICAgIGlmIChjdXJyZW50LT5sZWZ0KSB7Ci0gICAgICAgICAgICAgICAgY3VycmVudCA9IHJlaW50ZXJwcmV0X2Nhc3Q8cHJvcF9idCo+KHRvX3Byb3Bfb2JqKGN1cnJlbnQtPmxlZnQpKTsKKyAgICAgICAgICAgIHVpbnRfbGVhc3QzMl90IGxlZnRfb2Zmc2V0ID0gYXRvbWljX2xvYWRfZXhwbGljaXQoJmN1cnJlbnQtPmxlZnQsIG1lbW9yeV9vcmRlcl9yZWxheGVkKTsKKyAgICAgICAgICAgIGlmIChsZWZ0X29mZnNldCAhPSAwKSB7CisgICAgICAgICAgICAgICAgY3VycmVudCA9IHRvX3Byb3BfYnQoJmN1cnJlbnQtPmxlZnQpOwogICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBpZiAoIWFsbG9jX2lmX25lZWRlZCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgICAgIC8vIE5vdGUgdGhhdCB0aGVyZSBpc24ndCBhIHJhY2UgY29uZGl0aW9uIGhlcmUuICJjbGllbnRzIiBuZXZlcgotICAgICAgICAgICAgICAgIC8vIHJlYWNoIHRoaXMgY29kZS1wYXRoIHNpbmNlIEl0J3Mgb25seSB0aGUgKHNpbmdsZSB0aHJlYWRlZCkgc2VydmVyCi0gICAgICAgICAgICAgICAgLy8gdGhhdCBhbGxvY2F0ZXMgbmV3IG5vZGVzLiBUaG91Z2ggImJ0LT5sZWZ0IiBpcyB2b2xhdGlsZSwgaXQgY2FuJ3QKLSAgICAgICAgICAgICAgICAvLyBoYXZlIGNoYW5nZWQgc2luY2UgdGhlIGxhc3QgdmFsdWUgd2FzIGxhc3QgcmVhZC4KLSAgICAgICAgICAgICAgICB1aW50MzJfdCBuZXdfb2Zmc2V0ID0gMDsKKyAgICAgICAgICAgICAgICB1aW50X2xlYXN0MzJfdCBuZXdfb2Zmc2V0OwogICAgICAgICAgICAgICAgIHByb3BfYnQqIG5ld19idCA9IG5ld19wcm9wX2J0KG5hbWUsIG5hbWVsZW4sICZuZXdfb2Zmc2V0KTsKICAgICAgICAgICAgICAgICBpZiAobmV3X2J0KSB7Ci0gICAgICAgICAgICAgICAgICAgIGN1cnJlbnQtPmxlZnQgPSBuZXdfb2Zmc2V0OworICAgICAgICAgICAgICAgICAgICBhdG9taWNfc3RvcmVfZXhwbGljaXQoJmN1cnJlbnQtPmxlZnQsIG5ld19vZmZzZXQsIG1lbW9yeV9vcmRlcl9yZWxlYXNlKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgcmV0dXJuIG5ld19idDsKICAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGlmIChjdXJyZW50LT5yaWdodCkgewotICAgICAgICAgICAgICAgIGN1cnJlbnQgPSByZWludGVycHJldF9jYXN0PHByb3BfYnQqPih0b19wcm9wX29iaihjdXJyZW50LT5yaWdodCkpOworICAgICAgICAgICAgdWludF9sZWFzdDMyX3QgcmlnaHRfb2Zmc2V0ID0gYXRvbWljX2xvYWRfZXhwbGljaXQoJmN1cnJlbnQtPnJpZ2h0LCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgICAgICAgICBpZiAocmlnaHRfb2Zmc2V0ICE9IDApIHsKKyAgICAgICAgICAgICAgICBjdXJyZW50ID0gdG9fcHJvcF9idCgmY3VycmVudC0+cmlnaHQpOwogICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBpZiAoIWFsbG9jX2lmX25lZWRlZCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgICAgIHVpbnQzMl90IG5ld19vZmZzZXQ7CisgICAgICAgICAgICAgICAgdWludF9sZWFzdDMyX3QgbmV3X29mZnNldDsKICAgICAgICAgICAgICAgICBwcm9wX2J0KiBuZXdfYnQgPSBuZXdfcHJvcF9idChuYW1lLCBuYW1lbGVuLCAmbmV3X29mZnNldCk7CiAgICAgICAgICAgICAgICAgaWYgKG5ld19idCkgewotICAgICAgICAgICAgICAgICAgICBjdXJyZW50LT5yaWdodCA9IG5ld19vZmZzZXQ7CisgICAgICAgICAgICAgICAgICAgIGF0b21pY19zdG9yZV9leHBsaWNpdCgmY3VycmVudC0+cmlnaHQsIG5ld19vZmZzZXQsIG1lbW9yeV9vcmRlcl9yZWxlYXNlKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgcmV0dXJuIG5ld19idDsKICAgICAgICAgICAgIH0KQEAgLTQzMywxMyArNDM2LDE0IEBACiAgICAgICAgIH0KIAogICAgICAgICBwcm9wX2J0KiByb290ID0gTlVMTDsKLSAgICAgICAgaWYgKGN1cnJlbnQtPmNoaWxkcmVuKSB7Ci0gICAgICAgICAgICByb290ID0gcmVpbnRlcnByZXRfY2FzdDxwcm9wX2J0Kj4odG9fcHJvcF9vYmooY3VycmVudC0+Y2hpbGRyZW4pKTsKKyAgICAgICAgdWludF9sZWFzdDMyX3QgY2hpbGRyZW5fb2Zmc2V0ID0gYXRvbWljX2xvYWRfZXhwbGljaXQoJmN1cnJlbnQtPmNoaWxkcmVuLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgICAgIGlmIChjaGlsZHJlbl9vZmZzZXQgIT0gMCkgeworICAgICAgICAgICAgcm9vdCA9IHRvX3Byb3BfYnQoJmN1cnJlbnQtPmNoaWxkcmVuKTsKICAgICAgICAgfSBlbHNlIGlmIChhbGxvY19pZl9uZWVkZWQpIHsKLSAgICAgICAgICAgIHVpbnQzMl90IG5ld19idF9vZmZzZXQ7Ci0gICAgICAgICAgICByb290ID0gbmV3X3Byb3BfYnQocmVtYWluaW5nX25hbWUsIHN1YnN0cl9zaXplLCAmbmV3X2J0X29mZnNldCk7CisgICAgICAgICAgICB1aW50X2xlYXN0MzJfdCBuZXdfb2Zmc2V0OworICAgICAgICAgICAgcm9vdCA9IG5ld19wcm9wX2J0KHJlbWFpbmluZ19uYW1lLCBzdWJzdHJfc2l6ZSwgJm5ld19vZmZzZXQpOwogICAgICAgICAgICAgaWYgKHJvb3QpIHsKLSAgICAgICAgICAgICAgICBjdXJyZW50LT5jaGlsZHJlbiA9IG5ld19idF9vZmZzZXQ7CisgICAgICAgICAgICAgICAgYXRvbWljX3N0b3JlX2V4cGxpY2l0KCZjdXJyZW50LT5jaGlsZHJlbiwgbmV3X29mZnNldCwgbWVtb3J5X29yZGVyX3JlbGVhc2UpOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAKQEAgLTQ1OCwxMyArNDYyLDE0IEBACiAgICAgICAgIHJlbWFpbmluZ19uYW1lID0gc2VwICsgMTsKICAgICB9CiAKLSAgICBpZiAoY3VycmVudC0+cHJvcCkgewotICAgICAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxwcm9wX2luZm8qPih0b19wcm9wX29iaihjdXJyZW50LT5wcm9wKSk7CisgICAgdWludF9sZWFzdDMyX3QgcHJvcF9vZmZzZXQgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmY3VycmVudC0+cHJvcCwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpOworICAgIGlmIChwcm9wX29mZnNldCAhPSAwKSB7CisgICAgICAgIHJldHVybiB0b19wcm9wX2luZm8oJmN1cnJlbnQtPnByb3ApOwogICAgIH0gZWxzZSBpZiAoYWxsb2NfaWZfbmVlZGVkKSB7Ci0gICAgICAgIHVpbnQzMl90IG5ld19pbmZvX29mZnNldDsKLSAgICAgICAgcHJvcF9pbmZvKiBuZXdfaW5mbyA9IG5ld19wcm9wX2luZm8obmFtZSwgbmFtZWxlbiwgdmFsdWUsIHZhbHVlbGVuLCAmbmV3X2luZm9fb2Zmc2V0KTsKKyAgICAgICAgdWludF9sZWFzdDMyX3QgbmV3X29mZnNldDsKKyAgICAgICAgcHJvcF9pbmZvKiBuZXdfaW5mbyA9IG5ld19wcm9wX2luZm8obmFtZSwgbmFtZWxlbiwgdmFsdWUsIHZhbHVlbGVuLCAmbmV3X29mZnNldCk7CiAgICAgICAgIGlmIChuZXdfaW5mbykgewotICAgICAgICAgICAgY3VycmVudC0+cHJvcCA9IG5ld19pbmZvX29mZnNldDsKKyAgICAgICAgICAgIGF0b21pY19zdG9yZV9leHBsaWNpdCgmY3VycmVudC0+cHJvcCwgbmV3X29mZnNldCwgbWVtb3J5X29yZGVyX3JlbGVhc2UpOwogICAgICAgICB9CiAKICAgICAgICAgcmV0dXJuIG5ld19pbmZvOwpAQCAtNTM4LDMxICs1NDMsMzQgQEAKICAgICBjb29raWUtPmNvdW50Kys7CiB9CiAKLXN0YXRpYyBpbnQgZm9yZWFjaF9wcm9wZXJ0eShjb25zdCB1aW50MzJfdCBvZmYsCitzdGF0aWMgaW50IGZvcmVhY2hfcHJvcGVydHkocHJvcF9idCAqY29uc3QgdHJpZSwKICAgICAgICAgdm9pZCAoKnByb3BmbikoY29uc3QgcHJvcF9pbmZvICpwaSwgdm9pZCAqY29va2llKSwgdm9pZCAqY29va2llKQogewotICAgIHByb3BfYnQgKnRyaWUgPSByZWludGVycHJldF9jYXN0PHByb3BfYnQqPih0b19wcm9wX29iaihvZmYpKTsKICAgICBpZiAoIXRyaWUpCiAgICAgICAgIHJldHVybiAtMTsKIAotICAgIGlmICh0cmllLT5sZWZ0KSB7Ci0gICAgICAgIGNvbnN0IGludCBlcnIgPSBmb3JlYWNoX3Byb3BlcnR5KHRyaWUtPmxlZnQsIHByb3BmbiwgY29va2llKTsKKyAgICB1aW50X2xlYXN0MzJfdCBsZWZ0X29mZnNldCA9IGF0b21pY19sb2FkX2V4cGxpY2l0KCZ0cmllLT5sZWZ0LCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgaWYgKGxlZnRfb2Zmc2V0ICE9IDApIHsKKyAgICAgICAgY29uc3QgaW50IGVyciA9IGZvcmVhY2hfcHJvcGVydHkodG9fcHJvcF9idCgmdHJpZS0+bGVmdCksIHByb3BmbiwgY29va2llKTsKICAgICAgICAgaWYgKGVyciA8IDApCiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgfQotICAgIGlmICh0cmllLT5wcm9wKSB7Ci0gICAgICAgIHByb3BfaW5mbyAqaW5mbyA9IHJlaW50ZXJwcmV0X2Nhc3Q8cHJvcF9pbmZvKj4odG9fcHJvcF9vYmoodHJpZS0+cHJvcCkpOworICAgIHVpbnRfbGVhc3QzMl90IHByb3Bfb2Zmc2V0ID0gYXRvbWljX2xvYWRfZXhwbGljaXQoJnRyaWUtPnByb3AsIG1lbW9yeV9vcmRlcl9yZWxheGVkKTsKKyAgICBpZiAocHJvcF9vZmZzZXQgIT0gMCkgeworICAgICAgICBwcm9wX2luZm8gKmluZm8gPSB0b19wcm9wX2luZm8oJnRyaWUtPnByb3ApOwogICAgICAgICBpZiAoIWluZm8pCiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIHByb3BmbihpbmZvLCBjb29raWUpOwogICAgIH0KLSAgICBpZiAodHJpZS0+Y2hpbGRyZW4pIHsKLSAgICAgICAgY29uc3QgaW50IGVyciA9IGZvcmVhY2hfcHJvcGVydHkodHJpZS0+Y2hpbGRyZW4sIHByb3BmbiwgY29va2llKTsKKyAgICB1aW50X2xlYXN0MzJfdCBjaGlsZHJlbl9vZmZzZXQgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmdHJpZS0+Y2hpbGRyZW4sIG1lbW9yeV9vcmRlcl9yZWxheGVkKTsKKyAgICBpZiAoY2hpbGRyZW5fb2Zmc2V0ICE9IDApIHsKKyAgICAgICAgY29uc3QgaW50IGVyciA9IGZvcmVhY2hfcHJvcGVydHkodG9fcHJvcF9idCgmdHJpZS0+Y2hpbGRyZW4pLCBwcm9wZm4sIGNvb2tpZSk7CiAgICAgICAgIGlmIChlcnIgPCAwKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KLSAgICBpZiAodHJpZS0+cmlnaHQpIHsKLSAgICAgICAgY29uc3QgaW50IGVyciA9IGZvcmVhY2hfcHJvcGVydHkodHJpZS0+cmlnaHQsIHByb3BmbiwgY29va2llKTsKKyAgICB1aW50X2xlYXN0MzJfdCByaWdodF9vZmZzZXQgPSBhdG9taWNfbG9hZF9leHBsaWNpdCgmdHJpZS0+cmlnaHQsIG1lbW9yeV9vcmRlcl9yZWxheGVkKTsKKyAgICBpZiAocmlnaHRfb2Zmc2V0ICE9IDApIHsKKyAgICAgICAgY29uc3QgaW50IGVyciA9IGZvcmVhY2hfcHJvcGVydHkodG9fcHJvcF9idCgmdHJpZS0+cmlnaHQpLCBwcm9wZm4sIGNvb2tpZSk7CiAgICAgICAgIGlmIChlcnIgPCAwKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KQEAgLTU5MCw2ICs1OTgsMTYgQEAKICAgICByZXR1cm4gbWFwX3Byb3BfYXJlYV9ydygpOwogfQogCit1bnNpZ25lZCBpbnQgX19zeXN0ZW1fcHJvcGVydHlfYXJlYV9zZXJpYWwoKQoreworICAgIHByb3BfYXJlYSAqcGEgPSBfX3N5c3RlbV9wcm9wZXJ0eV9hcmVhX187CisgICAgaWYgKCFwYSkgeworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIC8vIE1ha2Ugc3VyZSB0aGlzIHJlYWQgZnVsZmlsbGVkIGJlZm9yZSBfX3N5c3RlbV9wcm9wZXJ0eV9zZXJpYWwKKyAgICByZXR1cm4gYXRvbWljX2xvYWRfZXhwbGljaXQoJihwYS0+c2VyaWFsKSwgbWVtb3J5X29yZGVyX2FjcXVpcmUpOworfQorCiBjb25zdCBwcm9wX2luZm8gKl9fc3lzdGVtX3Byb3BlcnR5X2ZpbmQoY29uc3QgY2hhciAqbmFtZSkKIHsKICAgICBpZiAoX19wcmVkaWN0X2ZhbHNlKGNvbXBhdF9tb2RlKSkgewpAQCAtNTk4LDYgKzYxNiwxNCBAQAogICAgIHJldHVybiBmaW5kX3Byb3BlcnR5KHJvb3Rfbm9kZSgpLCBuYW1lLCBzdHJsZW4obmFtZSksIE5VTEwsIDAsIGZhbHNlKTsKIH0KIAorLy8gVGhlIEMxMSBzdGFuZGFyZCBkb2Vzbid0IGFsbG93IGF0b21pYyBsb2FkcyBmcm9tIGNvbnN0IGZpZWxkcywKKy8vIHRob3VnaCBDKysxMSBkb2VzLiAgRnVkZ2UgaXQgdW50aWwgc3RhbmRhcmRzIGdldCBzdHJhaWdodGVuZWQgb3V0Lgorc3RhdGljIGlubGluZSB1aW50X2xlYXN0MzJfdCBsb2FkX2NvbnN0X2F0b21pYyhjb25zdCBhdG9taWNfdWludF9sZWFzdDMyX3QqIHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lbW9yeV9vcmRlciBtbykgeworICAgIGF0b21pY191aW50X2xlYXN0MzJfdCogbm9uX2NvbnN0X3MgPSBjb25zdF9jYXN0PGF0b21pY191aW50X2xlYXN0MzJfdCo+KHMpOworICAgIHJldHVybiBhdG9taWNfbG9hZF9leHBsaWNpdChub25fY29uc3RfcywgbW8pOworfQorCiBpbnQgX19zeXN0ZW1fcHJvcGVydHlfcmVhZChjb25zdCBwcm9wX2luZm8gKnBpLCBjaGFyICpuYW1lLCBjaGFyICp2YWx1ZSkKIHsKICAgICBpZiAoX19wcmVkaWN0X2ZhbHNlKGNvbXBhdF9tb2RlKSkgewpAQCAtNjA1LDExICs2MzEsMjAgQEAKICAgICB9CiAKICAgICB3aGlsZSAodHJ1ZSkgewotICAgICAgICB1aW50MzJfdCBzZXJpYWwgPSBfX3N5c3RlbV9wcm9wZXJ0eV9zZXJpYWwocGkpOworICAgICAgICB1aW50MzJfdCBzZXJpYWwgPSBfX3N5c3RlbV9wcm9wZXJ0eV9zZXJpYWwocGkpOyAvLyBhY3F1aXJlIHNlbWFudGljcwogICAgICAgICBzaXplX3QgbGVuID0gU0VSSUFMX1ZBTFVFX0xFTihzZXJpYWwpOwogICAgICAgICBtZW1jcHkodmFsdWUsIHBpLT52YWx1ZSwgbGVuICsgMSk7Ci0gICAgICAgIEFORFJPSURfTUVNQkFSX0ZVTEwoKTsKLSAgICAgICAgaWYgKHNlcmlhbCA9PSBwaS0+c2VyaWFsKSB7CisgICAgICAgIC8vIFRPRE86IEZpeCB0aGUgc3luY2hyb25pemF0aW9uIHNjaGVtZSBoZXJlLgorICAgICAgICAvLyBUaGVyZSBpcyBubyBmdWxseSBzdXBwb3J0ZWQgd2F5IHRvIGltcGxlbWVudCB0aGlzIGtpbmQKKyAgICAgICAgLy8gb2Ygc3luY2hyb25pemF0aW9uIGluIEMrKzExLCBzaW5jZSB0aGUgbWVtY3B5IHJhY2VzIHdpdGgKKyAgICAgICAgLy8gdXBkYXRlcyB0byBwaSwgYW5kIHRoZSBkYXRhIGJlaW5nIGFjY2Vzc2VkIGlzIG5vdCBhdG9taWMuCisgICAgICAgIC8vIFRoZSBmb2xsb3dpbmcgZmVuY2UgaXMgdW5pbnR1aXRpdmUsIGJ1dCB3b3VsZCBiZSB0aGUKKyAgICAgICAgLy8gY29ycmVjdCBvbmUgaWYgbWVtY3B5IHVzZWQgbWVtb3J5X29yZGVyX3JlbGF4ZWQgYXRvbWljIGFjY2Vzc2VzLgorICAgICAgICAvLyBJbiBwcmFjdGljZSBpdCBzZWVtcyB1bmxpa2VseSB0aGF0IHRoZSBnZW5lcmF0ZWQgY29kZSB3b3VsZAorICAgICAgICAvLyB3b3VsZCBiZSBhbnkgZGlmZmVyZW50LCBzbyB0aGlzIHNob3VsZCBiZSBPSy4KKyAgICAgICAgYXRvbWljX3RocmVhZF9mZW5jZShtZW1vcnlfb3JkZXJfYWNxdWlyZSk7CisgICAgICAgIGlmIChzZXJpYWwgPT0KKyAgICAgICAgICAgICAgICBsb2FkX2NvbnN0X2F0b21pYygmKHBpLT5zZXJpYWwpLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCkpIHsKICAgICAgICAgICAgIGlmIChuYW1lICE9IDApIHsKICAgICAgICAgICAgICAgICBzdHJjcHkobmFtZSwgcGktPm5hbWUpOwogICAgICAgICAgICAgfQpAQCAtNjU4LDE0ICs2OTMsMjQgQEAKICAgICBpZiAobGVuID49IFBST1BfVkFMVUVfTUFYKQogICAgICAgICByZXR1cm4gLTE7CiAKLSAgICBwaS0+c2VyaWFsID0gcGktPnNlcmlhbCB8IDE7Ci0gICAgQU5EUk9JRF9NRU1CQVJfRlVMTCgpOworICAgIHVpbnQzMl90IHNlcmlhbCA9IGF0b21pY19sb2FkX2V4cGxpY2l0KCZwaS0+c2VyaWFsLCBtZW1vcnlfb3JkZXJfcmVsYXhlZCk7CisgICAgc2VyaWFsIHw9IDE7CisgICAgYXRvbWljX3N0b3JlX2V4cGxpY2l0KCZwaS0+c2VyaWFsLCBzZXJpYWwsIG1lbW9yeV9vcmRlcl9yZWxheGVkKTsKKyAgICAvLyBUaGUgbWVtY3B5IGNhbGwgaGVyZSBhbHNvIHJhY2VzLiAgQWdhaW4gcHJldGVuZCBpdAorICAgIC8vIHVzZWQgbWVtb3J5X29yZGVyX3JlbGF4ZWQgYXRvbWljcywgYW5kIHVzZSB0aGUgYW5hbG9nb3VzCisgICAgLy8gY291bnRlcmludHVpdGl2ZSBmZW5jZS4KKyAgICBhdG9taWNfdGhyZWFkX2ZlbmNlKG1lbW9yeV9vcmRlcl9yZWxlYXNlKTsKICAgICBtZW1jcHkocGktPnZhbHVlLCB2YWx1ZSwgbGVuICsgMSk7Ci0gICAgQU5EUk9JRF9NRU1CQVJfRlVMTCgpOwotICAgIHBpLT5zZXJpYWwgPSAobGVuIDw8IDI0KSB8ICgocGktPnNlcmlhbCArIDEpICYgMHhmZmZmZmYpOworICAgIGF0b21pY19zdG9yZV9leHBsaWNpdCgKKyAgICAgICAgJnBpLT5zZXJpYWwsCisgICAgICAgIChsZW4gPDwgMjQpIHwgKChzZXJpYWwgKyAxKSAmIDB4ZmZmZmZmKSwKKyAgICAgICAgbWVtb3J5X29yZGVyX3JlbGVhc2UpOwogICAgIF9fZnV0ZXhfd2FrZSgmcGktPnNlcmlhbCwgSU5UMzJfTUFYKTsKIAotICAgIHBhLT5zZXJpYWwrKzsKKyAgICBhdG9taWNfc3RvcmVfZXhwbGljaXQoCisgICAgICAgICZwYS0+c2VyaWFsLAorICAgICAgICBhdG9taWNfbG9hZF9leHBsaWNpdCgmcGEtPnNlcmlhbCwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpICsgMSwKKyAgICAgICAgbWVtb3J5X29yZGVyX3JlbGVhc2UpOwogICAgIF9fZnV0ZXhfd2FrZSgmcGEtPnNlcmlhbCwgSU5UMzJfTUFYKTsKIAogICAgIHJldHVybiAwOwpAQCAtNjg4LDE3ICs3MzMsMjUgQEAKICAgICBpZiAoIXBpKQogICAgICAgICByZXR1cm4gLTE7CiAKLSAgICBwYS0+c2VyaWFsKys7CisgICAgLy8gVGhlcmUgaXMgb25seSBhIHNpbmdsZSBtdXRhdG9yLCBidXQgd2Ugd2FudCB0byBtYWtlIHN1cmUgdGhhdAorICAgIC8vIHVwZGF0ZXMgYXJlIHZpc2libGUgdG8gYSByZWFkZXIgd2FpdGluZyBmb3IgdGhlIHVwZGF0ZS4KKyAgICBhdG9taWNfc3RvcmVfZXhwbGljaXQoCisgICAgICAgICZwYS0+c2VyaWFsLAorICAgICAgICBhdG9taWNfbG9hZF9leHBsaWNpdCgmcGEtPnNlcmlhbCwgbWVtb3J5X29yZGVyX3JlbGF4ZWQpICsgMSwKKyAgICAgICAgbWVtb3J5X29yZGVyX3JlbGVhc2UpOwogICAgIF9fZnV0ZXhfd2FrZSgmcGEtPnNlcmlhbCwgSU5UMzJfTUFYKTsKICAgICByZXR1cm4gMDsKIH0KIAorLy8gV2FpdCBmb3Igbm9uLWxvY2tlZCBzZXJpYWwsIGFuZCByZXRyaWV2ZSBpdCB3aXRoIGFjcXVpcmUgc2VtYW50aWNzLgogdW5zaWduZWQgaW50IF9fc3lzdGVtX3Byb3BlcnR5X3NlcmlhbChjb25zdCBwcm9wX2luZm8gKnBpKQogewotICAgIHVpbnQzMl90IHNlcmlhbCA9IHBpLT5zZXJpYWw7CisgICAgdWludDMyX3Qgc2VyaWFsID0gbG9hZF9jb25zdF9hdG9taWMoJnBpLT5zZXJpYWwsIG1lbW9yeV9vcmRlcl9hY3F1aXJlKTsKICAgICB3aGlsZSAoU0VSSUFMX0RJUlRZKHNlcmlhbCkpIHsKLSAgICAgICAgX19mdXRleF93YWl0KGNvbnN0X2Nhc3Q8dm9sYXRpbGUgdWludDMyX3QqPigmcGktPnNlcmlhbCksIHNlcmlhbCwgTlVMTCk7Ci0gICAgICAgIHNlcmlhbCA9IHBpLT5zZXJpYWw7CisgICAgICAgIF9fZnV0ZXhfd2FpdChjb25zdF9jYXN0PHZvbGF0aWxlIHZvaWQgKj4oCisgICAgICAgICAgICAgICAgICAgICAgICByZWludGVycHJldF9jYXN0PGNvbnN0IHZvaWQgKj4oJnBpLT5zZXJpYWwpKSwKKyAgICAgICAgICAgICAgICAgICAgIHNlcmlhbCwgTlVMTCk7CisgICAgICAgIHNlcmlhbCA9IGxvYWRfY29uc3RfYXRvbWljKCZwaS0+c2VyaWFsLCBtZW1vcnlfb3JkZXJfYWNxdWlyZSk7CiAgICAgfQogICAgIHJldHVybiBzZXJpYWw7CiB9CkBAIC03MDYsMTIgKzc1OSwxNCBAQAogdW5zaWduZWQgaW50IF9fc3lzdGVtX3Byb3BlcnR5X3dhaXRfYW55KHVuc2lnbmVkIGludCBzZXJpYWwpCiB7CiAgICAgcHJvcF9hcmVhICpwYSA9IF9fc3lzdGVtX3Byb3BlcnR5X2FyZWFfXzsKKyAgICB1aW50MzJfdCBteV9zZXJpYWw7CiAKICAgICBkbyB7CiAgICAgICAgIF9fZnV0ZXhfd2FpdCgmcGEtPnNlcmlhbCwgc2VyaWFsLCBOVUxMKTsKLSAgICB9IHdoaWxlIChwYS0+c2VyaWFsID09IHNlcmlhbCk7CisgICAgICAgIG15X3NlcmlhbCA9IGF0b21pY19sb2FkX2V4cGxpY2l0KCZwYS0+c2VyaWFsLCBtZW1vcnlfb3JkZXJfYWNxdWlyZSk7CisgICAgfSB3aGlsZSAobXlfc2VyaWFsID09IHNlcmlhbCk7CiAKLSAgICByZXR1cm4gcGEtPnNlcmlhbDsKKyAgICByZXR1cm4gbXlfc2VyaWFsOwogfQogCiBjb25zdCBwcm9wX2luZm8gKl9fc3lzdGVtX3Byb3BlcnR5X2ZpbmRfbnRoKHVuc2lnbmVkIG4pCkBAIC03MzMsNSArNzg4LDUgQEAKICAgICAgICAgcmV0dXJuIF9fc3lzdGVtX3Byb3BlcnR5X2ZvcmVhY2hfY29tcGF0KHByb3BmbiwgY29va2llKTsKICAgICB9CiAKLSAgICByZXR1cm4gZm9yZWFjaF9wcm9wZXJ0eSgwLCBwcm9wZm4sIGNvb2tpZSk7CisgICAgcmV0dXJuIGZvcmVhY2hfcHJvcGVydHkocm9vdF9ub2RlKCksIHByb3BmbiwgY29va2llKTsKIH0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3RkZXN0cm95LmNwcCBiL2xpYmMvYmlvbmljL3RkZXN0cm95LmNwcAppbmRleCA0OTYxNGI4Li45NWMzZTY0IDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy90ZGVzdHJveS5jcHAKKysrIGIvbGliYy9iaW9uaWMvdGRlc3Ryb3kuY3BwCkBAIC0yMSw3ICsyMSw3IEBACiAvLyBEZXN0cm95IGEgdHJlZSBhbmQgZnJlZSBhbGwgYWxsb2NhdGVkIHJlc291cmNlcy4KIC8vIFRoaXMgaXMgYSBHTlUgZXh0ZW5zaW9uLCBub3QgYXZhaWxhYmxlIGZyb20gQlNELgogdm9pZCB0ZGVzdHJveSh2b2lkKiByb290LCB2b2lkICgqZGVzdHJveV9mdW5jKSh2b2lkKikpIHsKLSAgbm9kZV90KiByb290X25vZGUgPSAobm9kZV90Kikgcm9vdDsKKyAgbm9kZV90KiByb290X25vZGUgPSByZWludGVycHJldF9jYXN0PG5vZGVfdCo+KHJvb3QpOwogICBpZiAocm9vdF9ub2RlID09IE5VTEwpIHsKICAgICByZXR1cm47CiAgIH0KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3Rlcm1pb3MuY3BwIGIvbGliYy9iaW9uaWMvdGVybWlvcy5jcHAKaW5kZXggMDgyZGNkYy4uNDRhZTY0MyAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvdGVybWlvcy5jcHAKKysrIGIvbGliYy9iaW9uaWMvdGVybWlvcy5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICAqIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPHRlcm1pb3MuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4KIApkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvdGltZTY0LmMgYi9saWJjL2Jpb25pYy90aW1lNjQuYwppbmRleCA5NWRmYWI1Li5kYTM4YmYzIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy90aW1lNjQuYworKysgYi9saWJjL2Jpb25pYy90aW1lNjQuYwpAQCAtNzQ4LDEwICs3NDgsMjQgQEAKIGNoYXIgKmFzY3RpbWU2NF9yKCBjb25zdCBzdHJ1Y3QgVE0qIGRhdGUsIGNoYXIgKnJlc3VsdCApIHsKICAgICAvKiBJIGZpZ3VyZSBldmVyeXRoaW5nIGVsc2UgY2FuIGJlIGRpc3BsYXllZCwgZXZlbiBob3VyIDI1LCBidXQgaWYKICAgICAgICB0aGVzZSBhcmUgb3V0IG9mIHJhbmdlIHdlIHdhbGsgb2ZmIHRoZSBuYW1lIGFycmF5cyAqLwotICAgIGlmKCAhdmFsaWRfdG1fd2RheShkYXRlKSB8fCAhdmFsaWRfdG1fbW9uKGRhdGUpICkKKyAgICBpZiAoIXZhbGlkX3RtX3dkYXkoZGF0ZSkgfHwgIXZhbGlkX3RtX21vbihkYXRlKSkgewogICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CiAKLSAgICBzcHJpbnRmKHJlc3VsdCwgIiUuM3MgJS4zcyUzZCAlLjJkOiUuMmQ6JS4yZCAlZFxuIiwKKyAgICAvKiBEb2NzIHN0YXRlIHRoaXMgZnVuY3Rpb24gZG9lcyBub3Qgc3VwcG9ydCB5ZWFycyBiZXlvbmQgOTk5OS4gKi8KKyAgICBpZiAoMTkwMCArIGRhdGUtPnRtX3llYXIgPiA5OTk5KSB7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIC8qCisgICAgICogVGhlIElCTSBkb2NzIGZvciB0aGlzIGZ1bmN0aW9uIHN0YXRlIHRoYXQgdGhlIHJlc3VsdCBidWZmZXIgY2FuIGJlCisgICAgICogYXNzdW1lZCB0byBiZSBhdCBsZWFzdCAyNiBieXRlcyB3aWRlLiBUaGUgZG9jcyBhbHNvIHN0YXRlIHRoYXQgdGhpcyBpcworICAgICAqIG9ubHkgdmFsaWQgZm9yIHllYXJzIDw9IDk5OTksIHNvIHdlIGtub3cgdGhpcyBmb3JtYXQgc3RyaW5nIHdpbGwgbm90CisgICAgICogcHJpbnQgbW9yZSB0aGFuIHRoYXQgbWFueSBjaGFyYWN0ZXJzLgorICAgICAqCisgICAgICogaHR0cDovL3d3dy0wMS5pYm0uY29tL3N1cHBvcnQva25vd2xlZGdlY2VudGVyL1NTTFRCV18yLjEuMC9jb20uaWJtLnpvcy52MnIxLmJweGJkMDAvYXNjdGltZXIuaHRtCisgICAgICovCisgICAgc25wcmludGYocmVzdWx0LCAyNiwgIiUuM3MgJS4zcyUzZCAlLjJkOiUuMmQ6JS4yZCAlZFxuIiwKICAgICAgICAgd2RheV9uYW1lW2RhdGUtPnRtX3dkYXldLAogICAgICAgICBtb25fbmFtZVtkYXRlLT50bV9tb25dLAogICAgICAgICBkYXRlLT50bV9tZGF5LCBkYXRlLT50bV9ob3VyLApkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvdXRpbWVzLmNwcCBiL2xpYmMvYmlvbmljL3V0aW1lcy5jcHAKaW5kZXggNjVmMmQwYi4uMGI2NmU2YyAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvdXRpbWVzLmNwcAorKysgYi9saWJjL2Jpb25pYy91dGltZXMuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAgKiBTVUNIIERBTUFHRS4KICAqLwogCisjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNsdWRlIDxmY250bC5oPgogI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CiAjaW5jbHVkZSA8c3lzL3RpbWUuaD4KZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3Zkc28uY3BwIGIvbGliYy9iaW9uaWMvdmRzby5jcHAKaW5kZXggMDg3NWVlNi4uYTI0MDY2MyAxMDA2NDQKLS0tIGEvbGliYy9iaW9uaWMvdmRzby5jcHAKKysrIGIvbGliYy9iaW9uaWMvdmRzby5jcHAKQEAgLTE1LDYgKzE1LDcgQEAKICAqLwogCiAjaW5jbHVkZSA8bGluay5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPHN5cy9hdXh2Lmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKQEAgLTUyLDEzICs1MywxMyBAQAogCiBpbnQgY2xvY2tfZ2V0dGltZShpbnQgY2xvY2tfaWQsIHRpbWVzcGVjKiB0cCkgewogICBzdGF0aWMgaW50ICgqdmRzb19jbG9ja19nZXR0aW1lKShpbnQsIHRpbWVzcGVjKikgPQotICAgICAgKGludCAoKikoaW50LCB0aW1lc3BlYyopKSB2ZHNvX2VudHJpZXNbVkRTT19DTE9DS19HRVRUSU1FXS5mbjsKKyAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8aW50ICgqKShpbnQsIHRpbWVzcGVjKik+KHZkc29fZW50cmllc1tWRFNPX0NMT0NLX0dFVFRJTUVdLmZuKTsKICAgcmV0dXJuIHZkc29fY2xvY2tfZ2V0dGltZShjbG9ja19pZCwgdHApOwogfQogCiBpbnQgZ2V0dGltZW9mZGF5KHRpbWV2YWwqIHR2LCBzdHJ1Y3QgdGltZXpvbmUqIHR6KSB7CiAgIHN0YXRpYyBpbnQgKCp2ZHNvX2dldHRpbWVvZmRheSkodGltZXZhbCosIHN0cnVjdCB0aW1lem9uZSopID0KLSAgICAgIChpbnQgKCopKHRpbWV2YWwqLCBzdHJ1Y3QgdGltZXpvbmUqKSkgdmRzb19lbnRyaWVzW1ZEU09fR0VUVElNRU9GREFZXS5mbjsKKyAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8aW50ICgqKSh0aW1ldmFsKiwgc3RydWN0IHRpbWV6b25lKik+KHZkc29fZW50cmllc1tWRFNPX0dFVFRJTUVPRkRBWV0uZm4pOwogICByZXR1cm4gdmRzb19nZXR0aW1lb2ZkYXkodHYsIHR6KTsKIH0KIApkaWZmIC0tZ2l0IGEvbGliYy9iaW9uaWMvd21lbXBjcHkuY3BwIGIvbGliYy9iaW9uaWMvd21lbXBjcHkuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU0ZWJmODYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2Jpb25pYy93bWVtcGNweS5jcHAKQEAgLTAsMCArMSwzMyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8d2NoYXIuaD4KKword2NoYXJfdCogd21lbXBjcHkod2NoYXJfdCogZHN0LCBjb25zdCB3Y2hhcl90KiBzcmMsIHNpemVfdCBuKSB7CisgIHJldHVybiB3bWVtY3B5KGRzdCwgc3JjLCBuKSArIG47Cit9CmRpZmYgLS1naXQgYS9saWJjL2NydC5tayBiL2xpYmMvY3J0Lm1rCmluZGV4IGMzYmE1NGIuLjYzNjUzMzIgMTAwNjQ0Ci0tLSBhL2xpYmMvY3J0Lm1rCisrKyBiL2xpYmMvY3J0Lm1rCkBAIC0zMSwzMCArMzEsMTkgQEAKIAogbXlfbGliY19jcnRfdGFyZ2V0X2xkZmxhZ3MgOj0gJChsaWJjX2NydF90YXJnZXRfbGRmbGFnc18kKG15X2FyY2gpKQogCi0KLSMgU2VlIHRoZSBjb21tZW50IGluIGNydGJyYW5kLmMgZm9yIHRoZSByZWFzb24gd2h5IHdlIG5lZWQgdG8gZ2VuZXJhdGUKLSMgY3J0YnJhbmQucyBiZWZvcmUgZ2VuZXJhdGluZyBjcnRicmFuZC5vLgotR0VOIDo9ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX09VVF9JTlRFUk1FRElBVEVfTElCUkFSSUVTKS9jcnRicmFuZC5zCi0kKEdFTik6IFBSSVZBVEVfQ0MgOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfQ0MpCi0kKEdFTik6IFBSSVZBVEVfQ0ZMQUdTIDo9ICQobXlfbGliY19jcnRfdGFyZ2V0X3NvX2NmbGFncykKLSQoR0VOKTogJChMT0NBTF9QQVRIKS9iaW9uaWMvY3J0YnJhbmQuYwotCUBta2RpciAtcCAkKGRpciAkQCkKLQkkKGhpZGUpICQoUFJJVkFURV9DQykgJChQUklWQVRFX0NGTEFHUykgLVMgXAotCQktTUQgLU1GICQoQDolLnM9JS5kKSAtbyAkQCAkPAotCSQoaGlkZSkgc2VkIC1pIC1lICcvXC5ub3RlXC5BQkktdGFnL3MvcHJvZ2JpdHMvbm90ZS8nICRACi0JJChjYWxsIHRyYW5zZm9ybS1kLXRvLXAtYXJncywkKEA6JS5zPSUuZCksJChAOiUucz0lLlApKQotLWluY2x1ZGUgJChHRU46JS5zPSUuUCkKLQotCisjIGNydGJyYW5kLlMgLT4gY3J0YnJhbmQubwogR0VOIDo9ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX09VVF9JTlRFUk1FRElBVEVfTElCUkFSSUVTKS9jcnRicmFuZC5vCiAkKEdFTik6IFBSSVZBVEVfQ0MgOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfQ0MpCiAkKEdFTik6IFBSSVZBVEVfQ0ZMQUdTIDo9ICQobXlfbGliY19jcnRfdGFyZ2V0X3NvX2NmbGFncykKLSQoR0VOKTogJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfT1VUX0lOVEVSTUVESUFURV9MSUJSQVJJRVMpL2NydGJyYW5kLnMKKyQoR0VOKTogJChMT0NBTF9QQVRIKS9hcmNoLWNvbW1vbi9iaW9uaWMvY3J0YnJhbmQuUwogCUBta2RpciAtcCAkKGRpciAkQCkKLQkkKGhpZGUpICQoUFJJVkFURV9DQykgJChQUklWQVRFX0NGTEFHUykgLW8gJEAgLWMgJDwKKwkkKGhpZGUpICQoUFJJVkFURV9DQykgJChQUklWQVRFX0NGTEFHUykgXAorCQktTUQgLU1GICQoQDolLm89JS5kKSAtbyAkQCAtYyAkPAorCSQodHJhbnNmb3JtLWQtdG8tcCkKKy1pbmNsdWRlICQoR0VOOiUubz0lLlApCiAKLQotR0VOIDo9ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX09VVF9JTlRFUk1FRElBVEVfTElCUkFSSUVTKS9jcnRiZWdpbl9zby5vCisjIGNydGJlZ2luX3NvLmMgLT4gY3J0YmVnaW5fc28xLm8KK0dFTiA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9PVVRfSU5URVJNRURJQVRFX0xJQlJBUklFUykvY3J0YmVnaW5fc28xLm8KICQoR0VOKTogUFJJVkFURV9DQyA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9DQykKICQoR0VOKTogUFJJVkFURV9DRkxBR1MgOj0gJChteV9saWJjX2NydF90YXJnZXRfc29fY2ZsYWdzKQogJChHRU4pOiAkKG15X2xpYmNfY3J0X3RhcmdldF9jcnRiZWdpbl9zb19maWxlKQpAQCAtNjQsNyArNTMsMTYgQEAKIAkkKHRyYW5zZm9ybS1kLXRvLXApCiAtaW5jbHVkZSAkKEdFTjolLm89JS5QKQogCisjIGNydGJlZ2luX3NvMS5vICsgY3J0YnJhbmQubyAtPiBjcnRiZWdpbl9zby5vCitHRU4gOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfT1VUX0lOVEVSTUVESUFURV9MSUJSQVJJRVMpL2NydGJlZ2luX3NvLm8KKyQoR0VOKTogUFJJVkFURV9MRCA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9MRCkKKyQoR0VOKTogUFJJVkFURV9MREZMQUdTIDo9ICQobXlfbGliY19jcnRfdGFyZ2V0X2xkZmxhZ3MpCiskKEdFTik6ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX09VVF9JTlRFUk1FRElBVEVfTElCUkFSSUVTKS9jcnRiZWdpbl9zbzEubyBcCisgICAgJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfT1VUX0lOVEVSTUVESUFURV9MSUJSQVJJRVMpL2NydGJyYW5kLm8KKwlAbWtkaXIgLXAgJChkaXIgJEApCisJJChoaWRlKSAkKFBSSVZBVEVfTEQpICQoUFJJVkFURV9MREZMQUdTKSAtciAtbyAkQCAkXgogCisjIGNydGVuZF9zby5TIC0+IGNydGVuZF9zby5vCiBHRU4gOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfT1VUX0lOVEVSTUVESUFURV9MSUJSQVJJRVMpL2NydGVuZF9zby5vCiAkKEdFTik6IFBSSVZBVEVfQ0MgOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfQ0MpCiAkKEdFTik6IFBSSVZBVEVfQ0ZMQUdTIDo9ICQobXlfbGliY19jcnRfdGFyZ2V0X3NvX2NmbGFncykKQEAgLTc1LDggKzczLDcgQEAKIAkkKHRyYW5zZm9ybS1kLXRvLXApCiAtaW5jbHVkZSAkKEdFTjolLm89JS5QKQogCi0KLSMgVGhlIGZvbGxvd2luZyB0d28gYXJlIGluc3RhbGxlZCB0byBkZXZpY2UKKyMgY3J0YmVnaW5fc28ubyBhbmQgY3J0ZW5kX3NvLm8gYXJlIGluc3RhbGxlZCB0byBkZXZpY2UKIEdFTiA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9PVVRfU0hBUkVEX0xJQlJBUklFUykvY3J0YmVnaW5fc28ubwogJChHRU4pOiAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9PVVRfSU5URVJNRURJQVRFX0xJQlJBUklFUykvY3J0YmVnaW5fc28ubwogCSQoaGlkZSkgbWtkaXIgLXAgJChkaXIgJEApICYmIGNwIC1mICQ8ICRACkBAIC04Nyw3ICs4NCw3IEBACiAJJChoaWRlKSBta2RpciAtcCAkKGRpciAkQCkgJiYgY3AgLWYgJDwgJEAKIEFMTF9HRU5FUkFURURfU09VUkNFUyArPSAkKEdFTikKIAotCisjIGNydGJlZ2luLmMgLT4gY3J0YmVnaW5fc3RhdGljMS5vCiBHRU4gOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfT1VUX0lOVEVSTUVESUFURV9MSUJSQVJJRVMpL2NydGJlZ2luX3N0YXRpYzEubwogJChHRU4pOiBQUklWQVRFX0NDIDo9ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX0NDKQogJChHRU4pOiBQUklWQVRFX0NGTEFHUyA6PSAkKG15X2xpYmNfY3J0X3RhcmdldF9jZmxhZ3MpCkBAIC05OCw3ICs5NSw3IEBACiAJJCh0cmFuc2Zvcm0tZC10by1wKQogLWluY2x1ZGUgJChHRU46JS5vPSUuUCkKIAotCisjIGNydGJlZ2luX3N0YXRpYzEubyArIGNydGJyYW5kLm8gLT4gY3J0YmVnaW5fc3RhdGljLm8KIEdFTiA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9PVVRfSU5URVJNRURJQVRFX0xJQlJBUklFUykvY3J0YmVnaW5fc3RhdGljLm8KICQoR0VOKTogUFJJVkFURV9MRCA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9MRCkKICQoR0VOKTogUFJJVkFURV9MREZMQUdTIDo9ICQobXlfbGliY19jcnRfdGFyZ2V0X2xkZmxhZ3MpCkBAIC0xMDcsNyArMTA0LDcgQEAKIAlAbWtkaXIgLXAgJChkaXIgJEApCiAJJChoaWRlKSAkKFBSSVZBVEVfTEQpICQoUFJJVkFURV9MREZMQUdTKSAtciAtbyAkQCAkXgogCi0KKyMgY3J0YmVnaW4uYyAtPiBjcnRiZWdpbl9keW5hbWljMS5vCiBHRU4gOj0gJCgkKG15XzJuZF9hcmNoX3ByZWZpeClUQVJHRVRfT1VUX0lOVEVSTUVESUFURV9MSUJSQVJJRVMpL2NydGJlZ2luX2R5bmFtaWMxLm8KICQoR0VOKTogUFJJVkFURV9DQyA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9DQykKICQoR0VOKTogUFJJVkFURV9DRkxBR1MgOj0gJChteV9saWJjX2NydF90YXJnZXRfY2ZsYWdzKQpAQCAtMTE4LDcgKzExNSw3IEBACiAJJCh0cmFuc2Zvcm0tZC10by1wKQogLWluY2x1ZGUgJChHRU46JS5vPSUuUCkKIAotCisjIGNydGJlZ2luX2R5bmFtaWMxLm8gKyBjcnRicmFuZC5vIC0+IGNydGJlZ2luX2R5bmFtaWMubwogR0VOIDo9ICQoJChteV8ybmRfYXJjaF9wcmVmaXgpVEFSR0VUX09VVF9JTlRFUk1FRElBVEVfTElCUkFSSUVTKS9jcnRiZWdpbl9keW5hbWljLm8KICQoR0VOKTogUFJJVkFURV9MRCA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9MRCkKICQoR0VOKTogUFJJVkFURV9MREZMQUdTIDo9ICQobXlfbGliY19jcnRfdGFyZ2V0X2xkZmxhZ3MpCkBAIC0xMjcsNyArMTI0LDcgQEAKIAlAbWtkaXIgLXAgJChkaXIgJEApCiAJJChoaWRlKSAkKFBSSVZBVEVfTEQpICQoUFJJVkFURV9MREZMQUdTKSAtciAtbyAkQCAkXgogCi0KKyMgY3J0ZW5kLlMgLT4gY3J0ZW5kX2FuZHJvaWQubwogIyBXZSByZW5hbWUgY3J0ZW5kLm8gdG8gY3J0ZW5kX2FuZHJvaWQubyB0byBhdm9pZCBhCiAjIG5hbWUgY2xhc2ggYmV0d2VlbiBnY2MgYW5kIGJpb25pYy4KIEdFTiA6PSAkKCQobXlfMm5kX2FyY2hfcHJlZml4KVRBUkdFVF9PVVRfSU5URVJNRURJQVRFX0xJQlJBUklFUykvY3J0ZW5kX2FuZHJvaWQubwpkaWZmIC0tZ2l0IGEvbGliYy9kbnMvZ2V0aG5hbWFkZHIuYyBiL2xpYmMvZG5zL2dldGhuYW1hZGRyLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFkODQ3YjguLjAwMDAwMDAKLS0tIGEvbGliYy9kbnMvZ2V0aG5hbWFkZHIuYworKysgL2Rldi9udWxsCkBAIC0xLDE0MTYgKzAsMCBAQAotLyoJJE5ldEJTRDogZ2V0aG5hbWFkZHIuYyx2IDEuNzAgMjAwNi8wMy8yMiAwMDowMzo1MSBjaHJpc3RvcyBFeHAgJAkqLwotCi0vKgotICogKytDb3B5cmlnaHQrKyAxOTg1LCAxOTg4LCAxOTkzCi0gKiAtCi0gKiBDb3B5cmlnaHQgKGMpIDE5ODUsIDE5ODgsIDE5OTMKLSAqICAgIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqIC0KLSAqIFBvcnRpb25zIENvcHlyaWdodCAoYykgMTk5MyBieSBEaWdpdGFsIEVxdWlwbWVudCBDb3Jwb3JhdGlvbi4KLSAqCi0gKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkKLSAqIHB1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGUgYWJvdmUKLSAqIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyIGluIGFsbCBjb3BpZXMsIGFuZCB0aGF0Ci0gKiB0aGUgbmFtZSBvZiBEaWdpdGFsIEVxdWlwbWVudCBDb3Jwb3JhdGlvbiBub3QgYmUgdXNlZCBpbiBhZHZlcnRpc2luZyBvcgotICogcHVibGljaXR5IHBlcnRhaW5pbmcgdG8gZGlzdHJpYnV0aW9uIG9mIHRoZSBkb2N1bWVudCBvciBzb2Z0d2FyZSB3aXRob3V0Ci0gKiBzcGVjaWZpYywgd3JpdHRlbiBwcmlvciBwZXJtaXNzaW9uLgotICoKLSAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBESUdJVEFMIEVRVUlQTUVOVCBDT1JQLiBESVNDTEFJTVMgQUxMCi0gKiBXQVJSQU5USUVTIFdJVEggUkVHQVJEIFRPIFRISVMgU09GVFdBUkUsIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTCi0gKiBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuICAgSU4gTk8gRVZFTlQgU0hBTEwgRElHSVRBTCBFUVVJUE1FTlQKLSAqIENPUlBPUkFUSU9OIEJFIExJQUJMRSBGT1IgQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMgV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTIE9GIFVTRSwgREFUQSBPUgotICogUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMKLSAqIEFDVElPTiwgQVJJU0lORyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUwotICogU09GVFdBUkUuCi0gKiAtCi0gKiAtLUNvcHlyaWdodC0tCi0gKi8KLQotI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotCi0jaW5jbHVkZSA8c3lzL3BhcmFtLmg+Ci0jaW5jbHVkZSA8c3lzL3NvY2tldC5oPgotI2luY2x1ZGUgPHN5cy91bi5oPgotI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4KLSNpbmNsdWRlIDxhcnBhL2luZXQuaD4KLSNpbmNsdWRlIDxhcnBhL25hbWVzZXIuaD4KLSNpbmNsdWRlICJOZXRkQ2xpZW50RGlzcGF0Y2guaCIKLSNpbmNsdWRlICJyZXNvbHZfbmV0aWQuaCIKLSNpbmNsdWRlICJyZXNvbHZfcHJpdmF0ZS5oIgotI2luY2x1ZGUgInJlc29sdl9jYWNoZS5oIgotI2luY2x1ZGUgPGFzc2VydC5oPgotI2luY2x1ZGUgPGN0eXBlLmg+Ci0jaW5jbHVkZSA8ZXJybm8uaD4KLSNpbmNsdWRlIDxuZXRkYi5oPgotI2luY2x1ZGUgPHN0ZGFyZy5oPgotI2luY2x1ZGUgPHN0ZGlvLmg+Ci0jaW5jbHVkZSA8c3RyaW5ncy5oPgotI2luY2x1ZGUgPHN5c2xvZy5oPgotI2luY2x1ZGUgPHVuaXN0ZC5oPgotCi0jZGVmaW5lIEFMSUdOQllURVMgKHNpemVvZih1aW50cHRyX3QpIC0gMSkKLSNkZWZpbmUgQUxJR04ocCkgKCgodWludHB0cl90KShwKSArIEFMSUdOQllURVMpICZ+IEFMSUdOQllURVMpCi0KLSNpZm5kZWYgTE9HX0FVVEgKLSMgZGVmaW5lIExPR19BVVRIIDAKLSNlbmRpZgotCi0jZGVmaW5lIE1VTFRJX1BUUlNfQVJFX0FMSUFTRVMgMQkvKiBYWFggLSBleHBlcmltZW50YWwgKi8KLQotI2luY2x1ZGUgIm5zc3dpdGNoLmgiCi0jaW5jbHVkZSA8c3RkbGliLmg+Ci0jaW5jbHVkZSA8c3RyaW5nLmg+Ci0KLS8vIFRoaXMgc2hvdWxkIGJlIHN5bmNocm9uaXplZCB0byBSZXNwb25zZUNvZGUuaAotc3RhdGljIGNvbnN0IGludCBEbnNQcm94eVF1ZXJ5UmVzdWx0ID0gMjIyOwotCi1zdGF0aWMgY29uc3QgY2hhciBBc2tlZEZvckdvdFtdID0KLQkJCSAgImdldGhvc3RieSouZ2V0YW5zd2VyOiBhc2tlZCBmb3IgXCIlc1wiLCBnb3QgXCIlc1wiIjsKLQotI2RlZmluZQlNQVhQQUNLRVQJKDY0KjEwMjQpCi0KLXR5cGVkZWYgdW5pb24gewotICAgIEhFQURFUiBoZHI7Ci0gICAgdV9jaGFyIGJ1ZltNQVhQQUNLRVRdOwotfSBxdWVyeWJ1ZjsKLQotdHlwZWRlZiB1bmlvbiB7Ci0gICAgaW50MzJfdCBhbDsKLSAgICBjaGFyIGFjOwotfSBhbGlnbjsKLQotI2lmZGVmIERFQlVHCi1zdGF0aWMgdm9pZCBkcHJpbnRmKGNvbnN0IGNoYXIgKiwgcmVzX3N0YXRlLCAuLi4pCi0JX19hdHRyaWJ1dGVfXygoX19mb3JtYXRfXyhfX3ByaW50Zl9fLCAxLCAzKSkpOwotI2VuZGlmCi1zdGF0aWMgc3RydWN0IGhvc3RlbnQgKmdldGFuc3dlcihjb25zdCBxdWVyeWJ1ZiAqLCBpbnQsIGNvbnN0IGNoYXIgKiwgaW50LAotICAgIHJlc19zdGF0ZSk7Ci1zdGF0aWMgdm9pZCBtYXBfdjR2Nl9hZGRyZXNzKGNvbnN0IGNoYXIgKiwgY2hhciAqKTsKLXN0YXRpYyB2b2lkIG1hcF92NHY2X2hvc3RlbnQoc3RydWN0IGhvc3RlbnQgKiwgY2hhciAqKiwgY2hhciAqKTsKLXN0YXRpYyB2b2lkIGFkZHJzb3J0KGNoYXIgKiosIGludCwgcmVzX3N0YXRlKTsKLQotc3RhdGljIHZvaWQgX3NldGh0ZW50KGludCk7Ci1zdGF0aWMgdm9pZCBfZW5kaHRlbnQodm9pZCk7Ci1zdGF0aWMgc3RydWN0IGhvc3RlbnQgKl9nZXRodGVudCh2b2lkKTsKLXZvaWQgaHRfc2V0aG9zdGVudChpbnQpOwotdm9pZCBodF9lbmRob3N0ZW50KHZvaWQpOwotc3RydWN0IGhvc3RlbnQgKmh0X2dldGhvc3RieW5hbWUoY2hhciAqKTsKLXN0cnVjdCBob3N0ZW50ICpodF9nZXRob3N0YnlhZGRyKGNvbnN0IGNoYXIgKiwgaW50LCBpbnQpOwotdm9pZCBkbnNfc2VydmljZSh2b2lkKTsKLSN1bmRlZiBkbl9za2lwbmFtZQotaW50IGRuX3NraXBuYW1lKGNvbnN0IHVfY2hhciAqLCBjb25zdCB1X2NoYXIgKik7Ci1zdGF0aWMgaW50IF9nZXRodGJ5YWRkcih2b2lkICosIHZvaWQgKiwgdmFfbGlzdCk7Ci1zdGF0aWMgaW50IF9nZXRodGJ5bmFtZSh2b2lkICosIHZvaWQgKiwgdmFfbGlzdCk7Ci1zdGF0aWMgc3RydWN0IGhvc3RlbnQgKl9nZXRodGJ5bmFtZTIoY29uc3QgY2hhciAqLCBpbnQpOwotc3RhdGljIGludCBfZG5zX2dldGh0YnlhZGRyKHZvaWQgKiwgdm9pZCAqLCB2YV9saXN0KTsKLXN0YXRpYyBpbnQgX2Ruc19nZXRodGJ5bmFtZSh2b2lkICosIHZvaWQgKiwgdmFfbGlzdCk7Ci0KLXN0YXRpYyBzdHJ1Y3QgaG9zdGVudCAqZ2V0aG9zdGJ5bmFtZV9pbnRlcm5hbChjb25zdCBjaGFyICosIGludCwgcmVzX3N0YXRlLCB1bnNpZ25lZCwgdW5zaWduZWQpOwotCi1zdGF0aWMgY29uc3QgbnNfc3JjIGRlZmF1bHRfZG5zX2ZpbGVzW10gPSB7Ci0JeyBOU1NSQ19GSUxFUywgCU5TX1NVQ0NFU1MgfSwKLQl7IE5TU1JDX0ROUywgCU5TX1NVQ0NFU1MgfSwKLQl7IDAsIDAgfQotfTsKLQotCi0jaWZkZWYgREVCVUcKLXN0YXRpYyB2b2lkCi1kcHJpbnRmKGNvbnN0IGNoYXIgKm1zZywgcmVzX3N0YXRlIHJlcywgLi4uKQotewotCWFzc2VydChtc2cgIT0gTlVMTCk7Ci0KLQlpZiAocmVzLT5vcHRpb25zICYgUkVTX0RFQlVHKSB7Ci0JCWludCBzYXZlID0gZXJybm87Ci0JCXZhX2xpc3QgYXA7Ci0KLQkJdmFfc3RhcnQgKGFwLCByZXMpOwotCQl2cHJpbnRmKG1zZywgYXApOwotCQl2YV9lbmQgKGFwKTsKLQotCQllcnJubyA9IHNhdmU7Ci0JfQotfQotI2Vsc2UKLSMgZGVmaW5lIGRwcmludGYobXNnLCByZXMsIG51bSkgKCh2b2lkKTApIC8qbmFkYSovCi0jZW5kaWYKLQotI2RlZmluZSBCT1VOREVEX0lOQ1IoeCkgXAotCWRvIHsgXAotCQljcCArPSAoeCk7IFwKLQkJaWYgKGNwID4gZW9tKSB7IFwKLQkJCWhfZXJybm8gPSBOT19SRUNPVkVSWTsgXAotCQkJcmV0dXJuIE5VTEw7IFwKLQkJfSBcCi0JfSB3aGlsZSAoLypDT05TVENPTkQqLzApCi0KLSNkZWZpbmUgQk9VTkRTX0NIRUNLKHB0ciwgY291bnQpIFwKLQlkbyB7IFwKLQkJaWYgKChwdHIpICsgKGNvdW50KSA+IGVvbSkgeyBcCi0JCQloX2Vycm5vID0gTk9fUkVDT1ZFUlk7IFwKLQkJCXJldHVybiBOVUxMOyBcCi0JCX0gXAotCX0gd2hpbGUgKC8qQ09OU1RDT05EKi8wKQotCi1zdGF0aWMgc3RydWN0IGhvc3RlbnQgKgotZ2V0YW5zd2VyKGNvbnN0IHF1ZXJ5YnVmICphbnN3ZXIsIGludCBhbnNsZW4sIGNvbnN0IGNoYXIgKnFuYW1lLCBpbnQgcXR5cGUsCi0gICAgcmVzX3N0YXRlIHJlcykKLXsKLQljb25zdCBIRUFERVIgKmhwOwotCWNvbnN0IHVfY2hhciAqY3A7Ci0JaW50IG47Ci0JY29uc3QgdV9jaGFyICplb20sICplcmRhdGE7Ci0JY2hhciAqYnAsICoqYXAsICoqaGFwLCAqZXA7Ci0JaW50IHR5cGUsIGNsYXNzLCBhbmNvdW50LCBxZGNvdW50OwotCWludCBoYXZlYW5zd2VyLCBoYWRfZXJyb3I7Ci0JaW50IHRvb2JpZyA9IDA7Ci0JY2hhciB0YnVmW01BWEROQU1FXTsKLQljb25zdCBjaGFyICp0bmFtZTsKLQlpbnQgKCpuYW1lX29rKShjb25zdCBjaGFyICopOwotCXJlc19zdGF0aWMgIHJzID0gX19yZXNfZ2V0X3N0YXRpYygpOwotCi0JYXNzZXJ0KGFuc3dlciAhPSBOVUxMKTsKLQlhc3NlcnQocW5hbWUgIT0gTlVMTCk7Ci0KLQl0bmFtZSA9IHFuYW1lOwotCXJzLT5ob3N0LmhfbmFtZSA9IE5VTEw7Ci0JZW9tID0gYW5zd2VyLT5idWYgKyBhbnNsZW47Ci0Jc3dpdGNoIChxdHlwZSkgewotCWNhc2UgVF9BOgotCWNhc2UgVF9BQUFBOgotCQluYW1lX29rID0gcmVzX2hub2s7Ci0JCWJyZWFrOwotCWNhc2UgVF9QVFI6Ci0JCW5hbWVfb2sgPSByZXNfZG5vazsKLQkJYnJlYWs7Ci0JZGVmYXVsdDoKLQkJcmV0dXJuIE5VTEw7CS8qIFhYWCBzaG91bGQgYmUgYWJvcnQoKTsgKi8KLQl9Ci0JLyoKLQkgKiBmaW5kIGZpcnN0IHNhdGlzZmFjdG9yeSBhbnN3ZXIKLQkgKi8KLQlocCA9ICZhbnN3ZXItPmhkcjsKLQlhbmNvdW50ID0gbnRvaHMoaHAtPmFuY291bnQpOwotCXFkY291bnQgPSBudG9ocyhocC0+cWRjb3VudCk7Ci0JYnAgPSBycy0+aG9zdGJ1ZjsKLQllcCA9IHJzLT5ob3N0YnVmICsgc2l6ZW9mIHJzLT5ob3N0YnVmOwotCWNwID0gYW5zd2VyLT5idWY7Ci0JQk9VTkRFRF9JTkNSKEhGSVhFRFNaKTsKLQlpZiAocWRjb3VudCAhPSAxKSB7Ci0JCWhfZXJybm8gPSBOT19SRUNPVkVSWTsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCW4gPSBkbl9leHBhbmQoYW5zd2VyLT5idWYsIGVvbSwgY3AsIGJwLCBlcCAtIGJwKTsKLQlpZiAoKG4gPCAwKSB8fCAhKCpuYW1lX29rKShicCkpIHsKLQkJaF9lcnJubyA9IE5PX1JFQ09WRVJZOwotCQlyZXR1cm4gTlVMTDsKLQl9Ci0JQk9VTkRFRF9JTkNSKG4gKyBRRklYRURTWik7Ci0JaWYgKHF0eXBlID09IFRfQSB8fCBxdHlwZSA9PSBUX0FBQUEpIHsKLQkJLyogcmVzX3NlbmQoKSBoYXMgYWxyZWFkeSB2ZXJpZmllZCB0aGF0IHRoZSBxdWVyeSBuYW1lIGlzIHRoZQotCQkgKiBzYW1lIGFzIHRoZSBvbmUgd2Ugc2VudDsgdGhpcyBqdXN0IGdldHMgdGhlIGV4cGFuZGVkIG5hbWUKLQkJICogKGkuZS4sIHdpdGggdGhlIHN1Y2NlZWRpbmcgc2VhcmNoLWRvbWFpbiB0YWNrZWQgb24pLgotCQkgKi8KLQkJbiA9IHN0cmxlbihicCkgKyAxOwkJLyogZm9yIHRoZSBcMCAqLwotCQlpZiAobiA+PSBNQVhIT1NUTkFNRUxFTikgewotCQkJaF9lcnJubyA9IE5PX1JFQ09WRVJZOwotCQkJcmV0dXJuIE5VTEw7Ci0JCX0KLQkJcnMtPmhvc3QuaF9uYW1lID0gYnA7Ci0JCWJwICs9IG47Ci0JCS8qIFRoZSBxbmFtZSBjYW4gYmUgYWJicmV2aWF0ZWQsIGJ1dCBoX25hbWUgaXMgbm93IGFic29sdXRlLiAqLwotCQlxbmFtZSA9IHJzLT5ob3N0LmhfbmFtZTsKLQl9Ci0JYXAgPSBycy0+aG9zdF9hbGlhc2VzOwotCSphcCA9IE5VTEw7Ci0JcnMtPmhvc3QuaF9hbGlhc2VzID0gcnMtPmhvc3RfYWxpYXNlczsKLQloYXAgPSBycy0+aF9hZGRyX3B0cnM7Ci0JKmhhcCA9IE5VTEw7Ci0JcnMtPmhvc3QuaF9hZGRyX2xpc3QgPSBycy0+aF9hZGRyX3B0cnM7Ci0JaGF2ZWFuc3dlciA9IDA7Ci0JaGFkX2Vycm9yID0gMDsKLQl3aGlsZSAoYW5jb3VudC0tID4gMCAmJiBjcCA8IGVvbSAmJiAhaGFkX2Vycm9yKSB7Ci0JCW4gPSBkbl9leHBhbmQoYW5zd2VyLT5idWYsIGVvbSwgY3AsIGJwLCBlcCAtIGJwKTsKLQkJaWYgKChuIDwgMCkgfHwgISgqbmFtZV9vaykoYnApKSB7Ci0JCQloYWRfZXJyb3IrKzsKLQkJCWNvbnRpbnVlOwotCQl9Ci0JCWNwICs9IG47CQkJLyogbmFtZSAqLwotCQlCT1VORFNfQ0hFQ0soY3AsIDMgKiBJTlQxNlNaICsgSU5UMzJTWik7Ci0JCXR5cGUgPSBfZ2V0c2hvcnQoY3ApOwotIAkJY3AgKz0gSU5UMTZTWjsJCQkvKiB0eXBlICovCi0JCWNsYXNzID0gX2dldHNob3J0KGNwKTsKLSAJCWNwICs9IElOVDE2U1ogKyBJTlQzMlNaOwkvKiBjbGFzcywgVFRMICovCi0JCW4gPSBfZ2V0c2hvcnQoY3ApOwotCQljcCArPSBJTlQxNlNaOwkJCS8qIGxlbiAqLwotCQlCT1VORFNfQ0hFQ0soY3AsIG4pOwotCQllcmRhdGEgPSBjcCArIG47Ci0JCWlmIChjbGFzcyAhPSBDX0lOKSB7Ci0JCQkvKiBYWFggLSBkZWJ1Zz8gc3lzbG9nPyAqLwotCQkJY3AgKz0gbjsKLQkJCWNvbnRpbnVlOwkJLyogWFhYIC0gaGFkX2Vycm9yKysgPyAqLwotCQl9Ci0JCWlmICgocXR5cGUgPT0gVF9BIHx8IHF0eXBlID09IFRfQUFBQSkgJiYgdHlwZSA9PSBUX0NOQU1FKSB7Ci0JCQlpZiAoYXAgPj0gJnJzLT5ob3N0X2FsaWFzZXNbTUFYQUxJQVNFUy0xXSkKLQkJCQljb250aW51ZTsKLQkJCW4gPSBkbl9leHBhbmQoYW5zd2VyLT5idWYsIGVvbSwgY3AsIHRidWYsIHNpemVvZiB0YnVmKTsKLQkJCWlmICgobiA8IDApIHx8ICEoKm5hbWVfb2spKHRidWYpKSB7Ci0JCQkJaGFkX2Vycm9yKys7Ci0JCQkJY29udGludWU7Ci0JCQl9Ci0JCQljcCArPSBuOwotCQkJaWYgKGNwICE9IGVyZGF0YSkgewotCQkJCWhfZXJybm8gPSBOT19SRUNPVkVSWTsKLQkJCQlyZXR1cm4gTlVMTDsKLQkJCX0KLQkJCS8qIFN0b3JlIGFsaWFzLiAqLwotCQkJKmFwKysgPSBicDsKLQkJCW4gPSBzdHJsZW4oYnApICsgMTsJLyogZm9yIHRoZSBcMCAqLwotCQkJaWYgKG4gPj0gTUFYSE9TVE5BTUVMRU4pIHsKLQkJCQloYWRfZXJyb3IrKzsKLQkJCQljb250aW51ZTsKLQkJCX0KLQkJCWJwICs9IG47Ci0JCQkvKiBHZXQgY2Fub25pY2FsIG5hbWUuICovCi0JCQluID0gc3RybGVuKHRidWYpICsgMTsJLyogZm9yIHRoZSBcMCAqLwotCQkJaWYgKG4gPiBlcCAtIGJwIHx8IG4gPj0gTUFYSE9TVE5BTUVMRU4pIHsKLQkJCQloYWRfZXJyb3IrKzsKLQkJCQljb250aW51ZTsKLQkJCX0KLQkJCXN0cmxjcHkoYnAsIHRidWYsIChzaXplX3QpKGVwIC0gYnApKTsKLQkJCXJzLT5ob3N0LmhfbmFtZSA9IGJwOwotCQkJYnAgKz0gbjsKLQkJCWNvbnRpbnVlOwotCQl9Ci0JCWlmIChxdHlwZSA9PSBUX1BUUiAmJiB0eXBlID09IFRfQ05BTUUpIHsKLQkJCW4gPSBkbl9leHBhbmQoYW5zd2VyLT5idWYsIGVvbSwgY3AsIHRidWYsIHNpemVvZiB0YnVmKTsKLQkJCWlmIChuIDwgMCB8fCAhcmVzX2Rub2sodGJ1ZikpIHsKLQkJCQloYWRfZXJyb3IrKzsKLQkJCQljb250aW51ZTsKLQkJCX0KLQkJCWNwICs9IG47Ci0JCQlpZiAoY3AgIT0gZXJkYXRhKSB7Ci0JCQkJaF9lcnJubyA9IE5PX1JFQ09WRVJZOwotCQkJCXJldHVybiBOVUxMOwotCQkJfQotCQkJLyogR2V0IGNhbm9uaWNhbCBuYW1lLiAqLwotCQkJbiA9IHN0cmxlbih0YnVmKSArIDE7CS8qIGZvciB0aGUgXDAgKi8KLQkJCWlmIChuID4gZXAgLSBicCB8fCBuID49IE1BWEhPU1ROQU1FTEVOKSB7Ci0JCQkJaGFkX2Vycm9yKys7Ci0JCQkJY29udGludWU7Ci0JCQl9Ci0JCQlzdHJsY3B5KGJwLCB0YnVmLCAoc2l6ZV90KShlcCAtIGJwKSk7Ci0JCQl0bmFtZSA9IGJwOwotCQkJYnAgKz0gbjsKLQkJCWNvbnRpbnVlOwotCQl9Ci0JCWlmICh0eXBlICE9IHF0eXBlKSB7Ci0JCQlpZiAodHlwZSAhPSBUX0tFWSAmJiB0eXBlICE9IFRfU0lHKQotCQkJCXN5c2xvZyhMT0dfTk9USUNFfExPR19BVVRILAotCSAgICAgICAiZ2V0aG9zdGJ5Ki5nZXRhbnN3ZXI6IGFza2VkIGZvciBcIiVzICVzICVzXCIsIGdvdCB0eXBlIFwiJXNcIiIsCi0JCQkJICAgICAgIHFuYW1lLCBwX2NsYXNzKENfSU4pLCBwX3R5cGUocXR5cGUpLAotCQkJCSAgICAgICBwX3R5cGUodHlwZSkpOwotCQkJY3AgKz0gbjsKLQkJCWNvbnRpbnVlOwkJLyogWFhYIC0gaGFkX2Vycm9yKysgPyAqLwotCQl9Ci0JCXN3aXRjaCAodHlwZSkgewotCQljYXNlIFRfUFRSOgotCQkJaWYgKHN0cmNhc2VjbXAodG5hbWUsIGJwKSAhPSAwKSB7Ci0JCQkJc3lzbG9nKExPR19OT1RJQ0V8TE9HX0FVVEgsCi0JCQkJICAgICAgIEFza2VkRm9yR290LCBxbmFtZSwgYnApOwotCQkJCWNwICs9IG47Ci0JCQkJY29udGludWU7CS8qIFhYWCAtIGhhZF9lcnJvcisrID8gKi8KLQkJCX0KLQkJCW4gPSBkbl9leHBhbmQoYW5zd2VyLT5idWYsIGVvbSwgY3AsIGJwLCBlcCAtIGJwKTsKLQkJCWlmICgobiA8IDApIHx8ICFyZXNfaG5vayhicCkpIHsKLQkJCQloYWRfZXJyb3IrKzsKLQkJCQlicmVhazsKLQkJCX0KLSNpZiBNVUxUSV9QVFJTX0FSRV9BTElBU0VTCi0JCQljcCArPSBuOwotCQkJaWYgKGNwICE9IGVyZGF0YSkgewotCQkJCWhfZXJybm8gPSBOT19SRUNPVkVSWTsKLQkJCQlyZXR1cm4gTlVMTDsKLQkJCX0KLQkJCWlmICghaGF2ZWFuc3dlcikKLQkJCQlycy0+aG9zdC5oX25hbWUgPSBicDsKLQkJCWVsc2UgaWYgKGFwIDwgJnJzLT5ob3N0X2FsaWFzZXNbTUFYQUxJQVNFUy0xXSkKLQkJCQkqYXArKyA9IGJwOwotCQkJZWxzZQotCQkJCW4gPSAtMTsKLQkJCWlmIChuICE9IC0xKSB7Ci0JCQkJbiA9IHN0cmxlbihicCkgKyAxOwkvKiBmb3IgdGhlIFwwICovCi0JCQkJaWYgKG4gPj0gTUFYSE9TVE5BTUVMRU4pIHsKLQkJCQkJaGFkX2Vycm9yKys7Ci0JCQkJCWJyZWFrOwotCQkJCX0KLQkJCQlicCArPSBuOwotCQkJfQotCQkJYnJlYWs7Ci0jZWxzZQotCQkJcnMtPmhvc3QuaF9uYW1lID0gYnA7Ci0JCQlpZiAocmVzLT5vcHRpb25zICYgUkVTX1VTRV9JTkVUNikgewotCQkJCW4gPSBzdHJsZW4oYnApICsgMTsJLyogZm9yIHRoZSBcMCAqLwotCQkJCWlmIChuID49IE1BWEhPU1ROQU1FTEVOKSB7Ci0JCQkJCWhhZF9lcnJvcisrOwotCQkJCQlicmVhazsKLQkJCQl9Ci0JCQkJYnAgKz0gbjsKLQkJCQltYXBfdjR2Nl9ob3N0ZW50KCZycy0+aG9zdCwgJmJwLCBlcCk7Ci0JCQl9Ci0JCQloX2Vycm5vID0gTkVUREJfU1VDQ0VTUzsKLQkJCXJldHVybiAmcnMtPmhvc3Q7Ci0jZW5kaWYKLQkJY2FzZSBUX0E6Ci0JCWNhc2UgVF9BQUFBOgotCQkJaWYgKHN0cmNhc2VjbXAocnMtPmhvc3QuaF9uYW1lLCBicCkgIT0gMCkgewotCQkJCXN5c2xvZyhMT0dfTk9USUNFfExPR19BVVRILAotCQkJCSAgICAgICBBc2tlZEZvckdvdCwgcnMtPmhvc3QuaF9uYW1lLCBicCk7Ci0JCQkJY3AgKz0gbjsKLQkJCQljb250aW51ZTsJLyogWFhYIC0gaGFkX2Vycm9yKysgPyAqLwotCQkJfQotCQkJaWYgKG4gIT0gcnMtPmhvc3QuaF9sZW5ndGgpIHsKLQkJCQljcCArPSBuOwotCQkJCWNvbnRpbnVlOwotCQkJfQotCQkJaWYgKHR5cGUgPT0gVF9BQUFBKSB7Ci0JCQkJc3RydWN0IGluNl9hZGRyIGluNjsKLQkJCQltZW1jcHkoJmluNiwgY3AsIElONkFERFJTWik7Ci0JCQkJaWYgKElONl9JU19BRERSX1Y0TUFQUEVEKCZpbjYpKSB7Ci0JCQkJCWNwICs9IG47Ci0JCQkJCWNvbnRpbnVlOwotCQkJCX0KLQkJCX0KLQkJCWlmICghaGF2ZWFuc3dlcikgewotCQkJCWludCBubjsKLQotCQkJCXJzLT5ob3N0LmhfbmFtZSA9IGJwOwotCQkJCW5uID0gc3RybGVuKGJwKSArIDE7CS8qIGZvciB0aGUgXDAgKi8KLQkJCQlicCArPSBubjsKLQkJCX0KLQotCQkJYnAgKz0gc2l6ZW9mKGFsaWduKSAtCi0JCQkgICAgKHNpemVfdCkoKHVfbG9uZylicCAlIHNpemVvZihhbGlnbikpOwotCi0JCQlpZiAoYnAgKyBuID49ICZycy0+aG9zdGJ1ZltzaXplb2YgcnMtPmhvc3RidWZdKSB7Ci0JCQkJZHByaW50Zigic2l6ZSAoJWQpIHRvbyBiaWdcbiIsIHJlcywgbik7Ci0JCQkJaGFkX2Vycm9yKys7Ci0JCQkJY29udGludWU7Ci0JCQl9Ci0JCQlpZiAoaGFwID49ICZycy0+aF9hZGRyX3B0cnNbTUFYQUREUlMtMV0pIHsKLQkJCQlpZiAoIXRvb2JpZysrKQotCQkJCQlkcHJpbnRmKCJUb28gbWFueSBhZGRyZXNzZXMgKCVkKVxuIiwKLQkJCQkJCXJlcywgTUFYQUREUlMpOwotCQkJCWNwICs9IG47Ci0JCQkJY29udGludWU7Ci0JCQl9Ci0JCQkodm9pZCltZW1jcHkoKmhhcCsrID0gYnAsIGNwLCAoc2l6ZV90KW4pOwotCQkJYnAgKz0gbjsKLQkJCWNwICs9IG47Ci0JCQlpZiAoY3AgIT0gZXJkYXRhKSB7Ci0JCQkJaF9lcnJubyA9IE5PX1JFQ09WRVJZOwotCQkJCXJldHVybiBOVUxMOwotCQkJfQotCQkJYnJlYWs7Ci0JCWRlZmF1bHQ6Ci0JCQlhYm9ydCgpOwotCQl9Ci0JCWlmICghaGFkX2Vycm9yKQotCQkJaGF2ZWFuc3dlcisrOwotCX0KLQlpZiAoaGF2ZWFuc3dlcikgewotCQkqYXAgPSBOVUxMOwotCQkqaGFwID0gTlVMTDsKLQkJLyoKLQkJICogTm90ZTogd2Ugc29ydCBldmVuIGlmIGhvc3QgY2FuIHRha2Ugb25seSBvbmUgYWRkcmVzcwotCQkgKiBpbiBpdHMgcmV0dXJuIHN0cnVjdHVyZXMgLSBzaG91bGQgZ2l2ZSBpdCB0aGUgImJlc3QiCi0JCSAqIGFkZHJlc3MgaW4gdGhhdCBjYXNlLCBub3Qgc29tZSByYW5kb20gb25lCi0JCSAqLwotCQlpZiAocmVzLT5uc29ydCAmJiBoYXZlYW5zd2VyID4gMSAmJiBxdHlwZSA9PSBUX0EpCi0JCQlhZGRyc29ydChycy0+aF9hZGRyX3B0cnMsIGhhdmVhbnN3ZXIsIHJlcyk7Ci0JCWlmICghcnMtPmhvc3QuaF9uYW1lKSB7Ci0JCQluID0gc3RybGVuKHFuYW1lKSArIDE7CS8qIGZvciB0aGUgXDAgKi8KLQkJCWlmIChuID4gZXAgLSBicCB8fCBuID49IE1BWEhPU1ROQU1FTEVOKQotCQkJCWdvdG8gbm9fcmVjb3Zlcnk7Ci0JCQlzdHJsY3B5KGJwLCBxbmFtZSwgKHNpemVfdCkoZXAgLSBicCkpOwotCQkJcnMtPmhvc3QuaF9uYW1lID0gYnA7Ci0JCQlicCArPSBuOwotCQl9Ci0JCWlmIChyZXMtPm9wdGlvbnMgJiBSRVNfVVNFX0lORVQ2KQotCQkJbWFwX3Y0djZfaG9zdGVudCgmcnMtPmhvc3QsICZicCwgZXApOwotCQloX2Vycm5vID0gTkVUREJfU1VDQ0VTUzsKLQkJcmV0dXJuICZycy0+aG9zdDsKLQl9Ci0gbm9fcmVjb3Zlcnk6Ci0JaF9lcnJubyA9IE5PX1JFQ09WRVJZOwotCXJldHVybiBOVUxMOwotfQotCi1pbnQKLWdldGhvc3RieW5hbWVfcihjb25zdCBjaGFyICpuYW1lLCBzdHJ1Y3QgaG9zdGVudCAqaHAsIGNoYXIgKmJ1Ziwgc2l6ZV90IGJ1ZmxlbiwKLSAgICBzdHJ1Y3QgaG9zdGVudCoqcmVzdWx0LCBpbnQgKmVycm9ycCkKLXsKLSAgICAgICAgc3RydWN0IGhvc3RlbnQgKnJlczsKLQotICAgICAgICByZXMgPSBnZXRob3N0YnluYW1lKG5hbWUpOwotICAgICAgICAqZXJyb3JwID0gaF9lcnJubzsKLSAgICAgICAgaWYgKHJlcyA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgKnJlc3VsdCA9IE5VTEw7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICB9Ci0gICAgICAgIG1lbWNweShocCwgcmVzLCBzaXplb2YgKmhwKTsKLSAgICAgICAgKnJlc3VsdCA9IGhwOwotICAgICAgICByZXR1cm4gMDsKLX0KLQotc3RydWN0IGhvc3RlbnQgKgotZ2V0aG9zdGJ5bmFtZShjb25zdCBjaGFyICpuYW1lKQotewotCXN0cnVjdCBob3N0ZW50ICpocDsKLQlyZXNfc3RhdGUgcmVzID0gX19yZXNfZ2V0X3N0YXRlKCk7Ci0KLQlpZiAocmVzID09IE5VTEwpCi0JCXJldHVybiBOVUxMOwotCi0JYXNzZXJ0KG5hbWUgIT0gTlVMTCk7Ci0KLQkvKiB0cnkgSVB2NiBmaXJzdCAtIGlmIHRoYXQgZmFpbHMgZG8gSVB2NCAqLwotCWlmIChyZXMtPm9wdGlvbnMgJiBSRVNfVVNFX0lORVQ2KSB7Ci0JCWhwID0gZ2V0aG9zdGJ5bmFtZV9pbnRlcm5hbChuYW1lLCBBRl9JTkVUNiwgcmVzLCBORVRJRF9VTlNFVCwgTUFSS19VTlNFVCk7Ci0JCWlmIChocCkgewotCQkJX19yZXNfcHV0X3N0YXRlKHJlcyk7Ci0JCQlyZXR1cm4gaHA7Ci0JCX0KLQl9Ci0JaHAgPSBnZXRob3N0YnluYW1lX2ludGVybmFsKG5hbWUsIEFGX0lORVQsIHJlcywgTkVUSURfVU5TRVQsIE1BUktfVU5TRVQpOwotCV9fcmVzX3B1dF9zdGF0ZShyZXMpOwotCXJldHVybiBocDsKLX0KLQotc3RydWN0IGhvc3RlbnQgKgotZ2V0aG9zdGJ5bmFtZTIoY29uc3QgY2hhciAqbmFtZSwgaW50IGFmKQotewotCXJldHVybiBhbmRyb2lkX2dldGhvc3RieW5hbWVmb3JuZXQobmFtZSwgYWYsIE5FVElEX1VOU0VULCBNQVJLX1VOU0VUKTsKLX0KLQotc3RydWN0IGhvc3RlbnQgKgotYW5kcm9pZF9nZXRob3N0YnluYW1lZm9ybmV0KGNvbnN0IGNoYXIgKm5hbWUsIGludCBhZiwgdW5zaWduZWQgbmV0aWQsIHVuc2lnbmVkIG1hcmspCi17Ci0Jc3RydWN0IGhvc3RlbnQgKmhwOwotCXJlc19zdGF0ZSByZXMgPSBfX3Jlc19nZXRfc3RhdGUoKTsKLQotCWlmIChyZXMgPT0gTlVMTCkKLQkJcmV0dXJuIE5VTEw7Ci0JaHAgPSBnZXRob3N0YnluYW1lX2ludGVybmFsKG5hbWUsIGFmLCByZXMsIG5ldGlkLCBtYXJrKTsKLQlfX3Jlc19wdXRfc3RhdGUocmVzKTsKLQlyZXR1cm4gaHA7Ci19Ci0KLQotc3RhdGljIEZJTEUqIGFuZHJvaWRfb3Blbl9wcm94eSgpCi17Ci0JaW50IHNvY2s7Ci0JY29uc3QgaW50IG9uZSA9IDE7Ci0Jc3RydWN0IHNvY2thZGRyX3VuIHByb3h5X2FkZHI7Ci0KLQlzb2NrID0gc29ja2V0KEFGX1VOSVgsIFNPQ0tfU1RSRUFNIHwgU09DS19DTE9FWEVDLCAwKTsKLQlpZiAoc29jayA8IDApIHsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCi0Jc2V0c29ja29wdChzb2NrLCBTT0xfU09DS0VULCBTT19SRVVTRUFERFIsICZvbmUsIHNpemVvZihvbmUpKTsKLQltZW1zZXQoJnByb3h5X2FkZHIsIDAsIHNpemVvZihwcm94eV9hZGRyKSk7Ci0JcHJveHlfYWRkci5zdW5fZmFtaWx5ID0gQUZfVU5JWDsKLQlzdHJsY3B5KHByb3h5X2FkZHIuc3VuX3BhdGgsICIvZGV2L3NvY2tldC9kbnNwcm94eWQiLCBzaXplb2YocHJveHlfYWRkci5zdW5fcGF0aCkpOwotCWlmIChURU1QX0ZBSUxVUkVfUkVUUlkoY29ubmVjdChzb2NrLAotCQkJKGNvbnN0IHN0cnVjdCBzb2NrYWRkciopICZwcm94eV9hZGRyLAotCQkJc2l6ZW9mKHByb3h5X2FkZHIpKSkgIT0gMCkgewotCQljbG9zZShzb2NrKTsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCi0JcmV0dXJuIGZkb3Blbihzb2NrLCAicisiKTsKLX0KLQotc3RhdGljIHN0cnVjdCBob3N0ZW50ICoKLWFuZHJvaWRfcmVhZF9ob3N0ZW50KEZJTEUqIHByb3h5KQotewotCXVpbnQzMl90IHNpemU7Ci0JY2hhciBidWZbNF07Ci0JaWYgKGZyZWFkKGJ1ZiwgMSwgc2l6ZW9mKGJ1ZiksIHByb3h5KSAhPSBzaXplb2YoYnVmKSkgcmV0dXJuIE5VTEw7Ci0KLQkvKiBUaGlzIGlzIHJlYWRpbmcgc2VyaWFsaXplZCBkYXRhIGZyb20gc3lzdGVtL25ldGQvc2VydmVyL0Ruc1Byb3h5TGlzdGVuZXIuY3BwCi0JICogYW5kIGNoYW5nZXMgaGVyZSBuZWVkIHRvIGJlIG1hdGNoZWQgdGhlcmUgKi8KLQlpbnQgcmVzdWx0X2NvZGUgPSBzdHJ0b2woYnVmLCBOVUxMLCAxMCk7Ci0JaWYgKHJlc3VsdF9jb2RlICE9IERuc1Byb3h5UXVlcnlSZXN1bHQpIHsKLQkJZnJlYWQoJnNpemUsIDEsIHNpemVvZihzaXplKSwgcHJveHkpOwotCQlyZXR1cm4gTlVMTDsKLQl9Ci0KLQlpZiAoZnJlYWQoJnNpemUsIDEsIHNpemVvZihzaXplKSwgcHJveHkpICE9IHNpemVvZihzaXplKSkgcmV0dXJuIE5VTEw7Ci0Jc2l6ZSA9IG50b2hsKHNpemUpOwotCXJlc19zdGF0aWMgcnMgPSBfX3Jlc19nZXRfc3RhdGljKCk7Ci0JbWVtc2V0KCZycy0+aG9zdCwgMCwgc2l6ZW9mKHJzLT5ob3N0KSk7Ci0JY2hhciAqcHRyID0gcnMtPmhvc3RidWY7Ci0KLQlpZiAoZnJlYWQocHRyLCAxLCBzaXplLCBwcm94eSkgIT0gc2l6ZSkgcmV0dXJuIE5VTEw7Ci0JcHRyICs9IHNpemU7Ci0JcnMtPmhvc3QuaF9uYW1lID0gcnMtPmhvc3RidWY7Ci0KLQljaGFyICoqYWxpYXNlcyA9IHJzLT5ob3N0X2FsaWFzZXM7Ci0JcnMtPmhvc3QuaF9hbGlhc2VzID0gcnMtPmhvc3RfYWxpYXNlczsKLQl3aGlsZSAoMSkgewotCQlpZiAoZnJlYWQoJnNpemUsIDEsIHNpemVvZihzaXplKSwgcHJveHkpICE9IHNpemVvZihzaXplKSkgcmV0dXJuIE5VTEw7Ci0JCXNpemUgPSBudG9obChzaXplKTsKLQotCQlpZiAoc2l6ZSA9PSAwKSB7Ci0JCQkqYWxpYXNlcyA9IE5VTEw7Ci0JCQlicmVhazsKLQkJfQotCQlpZiAoZnJlYWQocHRyLCAxLCBzaXplLCBwcm94eSkgIT0gc2l6ZSkgcmV0dXJuIE5VTEw7Ci0JCSphbGlhc2VzKysgPSBwdHI7Ci0JCXB0ciArPSBzaXplOwotCX0KLQotCWlmIChmcmVhZCgmc2l6ZSwgMSwgc2l6ZW9mKHNpemUpLCBwcm94eSkgIT0gc2l6ZW9mKHNpemUpKSByZXR1cm4gTlVMTDsKLQlycy0+aG9zdC5oX2FkZHJ0eXBlID0gbnRvaGwoc2l6ZSk7Ci0KLQlpZiAoZnJlYWQoJnNpemUsIDEsIHNpemVvZihzaXplKSwgcHJveHkpICE9IHNpemVvZihzaXplKSkgcmV0dXJuIE5VTEw7Ci0JcnMtPmhvc3QuaF9sZW5ndGggPSBudG9obChzaXplKTsKLQotCWNoYXIgKiphZGRycyA9IHJzLT5oX2FkZHJfcHRyczsKLQlycy0+aG9zdC5oX2FkZHJfbGlzdCA9IHJzLT5oX2FkZHJfcHRyczsKLQl3aGlsZSAoMSkgewotCQlpZiAoZnJlYWQoJnNpemUsIDEsIHNpemVvZihzaXplKSwgcHJveHkpICE9IHNpemVvZihzaXplKSkgcmV0dXJuIE5VTEw7Ci0JCXNpemUgPSBudG9obChzaXplKTsKLQkJaWYgKHNpemUgPT0gMCkgewotCQkJKmFkZHJzID0gTlVMTDsKLQkJCWJyZWFrOwotCQl9Ci0JCWlmIChmcmVhZChwdHIsIDEsIHNpemUsIHByb3h5KSAhPSBzaXplKSByZXR1cm4gTlVMTDsKLQkJKmFkZHJzKysgPSBwdHI7Ci0JCXB0ciArPSBzaXplOwotCX0KLQotCXJldHVybiAmcnMtPmhvc3Q7Ci19Ci0KLQotc3RhdGljIHN0cnVjdCBob3N0ZW50ICoKLWdldGhvc3RieW5hbWVfaW50ZXJuYWxfcmVhbChjb25zdCBjaGFyICpuYW1lLCBpbnQgYWYsIHJlc19zdGF0ZSByZXMpCi17Ci0JY29uc3QgY2hhciAqY3A7Ci0JY2hhciAqYnAsICplcDsKLQlpbnQgc2l6ZTsKLQlzdHJ1Y3QgaG9zdGVudCAqaHA7Ci0JcmVzX3N0YXRpYyBycyA9IF9fcmVzX2dldF9zdGF0aWMoKTsKLQotCXN0YXRpYyBjb25zdCBuc19kdGFiIGR0YWJbXSA9IHsKLQkJTlNfRklMRVNfQ0IoX2dldGh0YnluYW1lLCBOVUxMKQotCQl7IE5TU1JDX0ROUywgX2Ruc19nZXRodGJ5bmFtZSwgTlVMTCB9LAkvKiBmb3JjZSAtREhFU0lPRCAqLwotCQl7IDAsIDAsIDAgfQotCX07Ci0KLQlhc3NlcnQobmFtZSAhPSBOVUxMKTsKLQotCXN3aXRjaCAoYWYpIHsKLQljYXNlIEFGX0lORVQ6Ci0JCXNpemUgPSBJTkFERFJTWjsKLQkJYnJlYWs7Ci0JY2FzZSBBRl9JTkVUNjoKLQkJc2l6ZSA9IElONkFERFJTWjsKLQkJYnJlYWs7Ci0JZGVmYXVsdDoKLQkJaF9lcnJubyA9IE5FVERCX0lOVEVSTkFMOwotCQllcnJubyA9IEVBRk5PU1VQUE9SVDsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCi0JcnMtPmhvc3QuaF9hZGRydHlwZSA9IGFmOwotCXJzLT5ob3N0LmhfbGVuZ3RoID0gc2l6ZTsKLQotCS8qCi0JICogaWYgdGhlcmUgYXJlbid0IGFueSBkb3RzLCBpdCBjb3VsZCBiZSBhIHVzZXItbGV2ZWwgYWxpYXMuCi0JICogdGhpcyBpcyBhbHNvIGRvbmUgaW4gcmVzX25xdWVyeSgpIHNpbmNlIHdlIGFyZSBub3QgdGhlIG9ubHkKLQkgKiBmdW5jdGlvbiB0aGF0IGxvb2tzIHVwIGhvc3QgbmFtZXMuCi0JICovCi0JaWYgKCFzdHJjaHIobmFtZSwgJy4nKSAmJiAoY3AgPSBfX2hvc3RhbGlhcyhuYW1lKSkpCi0JCW5hbWUgPSBjcDsKLQotCS8qCi0JICogZGlzYWxsb3cgbmFtZXMgY29uc2lzdGluZyBvbmx5IG9mIGRpZ2l0cy9kb3RzLCB1bmxlc3MKLQkgKiB0aGV5IGVuZCBpbiBhIGRvdC4KLQkgKi8KLQlpZiAoaXNkaWdpdCgodV9jaGFyKSBuYW1lWzBdKSkKLQkJZm9yIChjcCA9IG5hbWU7OyArK2NwKSB7Ci0JCQlpZiAoISpjcCkgewotCQkJCWlmICgqLS1jcCA9PSAnLicpCi0JCQkJCWJyZWFrOwotCQkJCS8qCi0JCQkJICogQWxsLW51bWVyaWMsIG5vIGRvdCBhdCB0aGUgZW5kLgotCQkJCSAqIEZha2UgdXAgYSBob3N0ZW50IGFzIGlmIHdlJ2QgYWN0dWFsbHkKLQkJCQkgKiBkb25lIGEgbG9va3VwLgotCQkJCSAqLwotCQkJCWlmIChpbmV0X3B0b24oYWYsIG5hbWUsCi0JCQkJICAgIChjaGFyICopKHZvaWQgKilycy0+aG9zdF9hZGRyKSA8PSAwKSB7Ci0JCQkJCWhfZXJybm8gPSBIT1NUX05PVF9GT1VORDsKLQkJCQkJcmV0dXJuIE5VTEw7Ci0JCQkJfQotCQkJCXN0cm5jcHkocnMtPmhvc3RidWYsIG5hbWUsIE1BWEROQU1FKTsKLQkJCQlycy0+aG9zdGJ1ZltNQVhETkFNRV0gPSAnXDAnOwotCQkJCWJwID0gcnMtPmhvc3RidWYgKyBNQVhETkFNRTsKLQkJCQllcCA9IHJzLT5ob3N0YnVmICsgc2l6ZW9mIHJzLT5ob3N0YnVmOwotCQkJCXJzLT5ob3N0LmhfbmFtZSA9IHJzLT5ob3N0YnVmOwotCQkJCXJzLT5ob3N0LmhfYWxpYXNlcyA9IHJzLT5ob3N0X2FsaWFzZXM7Ci0JCQkJcnMtPmhvc3RfYWxpYXNlc1swXSA9IE5VTEw7Ci0JCQkJcnMtPmhfYWRkcl9wdHJzWzBdID0gKGNoYXIgKikodm9pZCAqKXJzLT5ob3N0X2FkZHI7Ci0JCQkJcnMtPmhfYWRkcl9wdHJzWzFdID0gTlVMTDsKLQkJCQlycy0+aG9zdC5oX2FkZHJfbGlzdCA9IHJzLT5oX2FkZHJfcHRyczsKLQkJCQlpZiAocmVzLT5vcHRpb25zICYgUkVTX1VTRV9JTkVUNikKLQkJCQkJbWFwX3Y0djZfaG9zdGVudCgmcnMtPmhvc3QsICZicCwgZXApOwotCQkJCWhfZXJybm8gPSBORVREQl9TVUNDRVNTOwotCQkJCXJldHVybiAmcnMtPmhvc3Q7Ci0JCQl9Ci0JCQlpZiAoIWlzZGlnaXQoKHVfY2hhcikgKmNwKSAmJiAqY3AgIT0gJy4nKQotCQkJCWJyZWFrOwotCQl9Ci0JaWYgKChpc3hkaWdpdCgodV9jaGFyKSBuYW1lWzBdKSAmJiBzdHJjaHIobmFtZSwgJzonKSAhPSBOVUxMKSB8fAotCSAgICBuYW1lWzBdID09ICc6JykKLQkJZm9yIChjcCA9IG5hbWU7OyArK2NwKSB7Ci0JCQlpZiAoISpjcCkgewotCQkJCWlmICgqLS1jcCA9PSAnLicpCi0JCQkJCWJyZWFrOwotCQkJCS8qCi0JCQkJICogQWxsLUlQdjYtbGVnYWwsIG5vIGRvdCBhdCB0aGUgZW5kLgotCQkJCSAqIEZha2UgdXAgYSBob3N0ZW50IGFzIGlmIHdlJ2QgYWN0dWFsbHkKLQkJCQkgKiBkb25lIGEgbG9va3VwLgotCQkJCSAqLwotCQkJCWlmIChpbmV0X3B0b24oYWYsIG5hbWUsCi0JCQkJICAgIChjaGFyICopKHZvaWQgKilycy0+aG9zdF9hZGRyKSA8PSAwKSB7Ci0JCQkJCWhfZXJybm8gPSBIT1NUX05PVF9GT1VORDsKLQkJCQkJcmV0dXJuIE5VTEw7Ci0JCQkJfQotCQkJCXN0cm5jcHkocnMtPmhvc3RidWYsIG5hbWUsIE1BWEROQU1FKTsKLQkJCQlycy0+aG9zdGJ1ZltNQVhETkFNRV0gPSAnXDAnOwotCQkJCWJwID0gcnMtPmhvc3RidWYgKyBNQVhETkFNRTsKLQkJCQllcCA9IHJzLT5ob3N0YnVmICsgc2l6ZW9mIHJzLT5ob3N0YnVmOwotCQkJCXJzLT5ob3N0LmhfbmFtZSA9IHJzLT5ob3N0YnVmOwotCQkJCXJzLT5ob3N0LmhfYWxpYXNlcyA9IHJzLT5ob3N0X2FsaWFzZXM7Ci0JCQkJcnMtPmhvc3RfYWxpYXNlc1swXSA9IE5VTEw7Ci0JCQkJcnMtPmhfYWRkcl9wdHJzWzBdID0gKGNoYXIgKikodm9pZCAqKXJzLT5ob3N0X2FkZHI7Ci0JCQkJcnMtPmhfYWRkcl9wdHJzWzFdID0gTlVMTDsKLQkJCQlycy0+aG9zdC5oX2FkZHJfbGlzdCA9IHJzLT5oX2FkZHJfcHRyczsKLQkJCQloX2Vycm5vID0gTkVUREJfU1VDQ0VTUzsKLQkJCQlyZXR1cm4gJnJzLT5ob3N0OwotCQkJfQotCQkJaWYgKCFpc3hkaWdpdCgodV9jaGFyKSAqY3ApICYmICpjcCAhPSAnOicgJiYgKmNwICE9ICcuJykKLQkJCQlicmVhazsKLQkJfQotCi0JaHAgPSBOVUxMOwotCWhfZXJybm8gPSBORVREQl9JTlRFUk5BTDsKLQlpZiAobnNkaXNwYXRjaCgmaHAsIGR0YWIsIE5TREJfSE9TVFMsICJnZXRob3N0YnluYW1lIiwKLQkgICAgZGVmYXVsdF9kbnNfZmlsZXMsIG5hbWUsIHN0cmxlbihuYW1lKSwgYWYpICE9IE5TX1NVQ0NFU1MpIHsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCWhfZXJybm8gPSBORVREQl9TVUNDRVNTOwotCXJldHVybiBocDsKLX0KLQotCi0vLyB2ZXJ5IHNpbWlsYXIgaW4gcHJveHktbmVzcyB0byBhbmRyb2lkX2dldGFkZHJpbmZvX3Byb3h5Ci1zdGF0aWMgc3RydWN0IGhvc3RlbnQgKgotZ2V0aG9zdGJ5bmFtZV9pbnRlcm5hbChjb25zdCBjaGFyICpuYW1lLCBpbnQgYWYsIHJlc19zdGF0ZSByZXMsIHVuc2lnbmVkIG5ldGlkLCB1bnNpZ25lZCBtYXJrKQotewotCWNvbnN0IGNoYXIgKmNhY2hlX21vZGUgPSBnZXRlbnYoIkFORFJPSURfRE5TX01PREUiKTsKLQlGSUxFKiBwcm94eSA9IE5VTEw7Ci0Jc3RydWN0IGhvc3RlbnQgKnJlc3VsdCA9IE5VTEw7Ci0KLQlpZiAoY2FjaGVfbW9kZSAhPSBOVUxMICYmIHN0cmNtcChjYWNoZV9tb2RlLCAibG9jYWwiKSA9PSAwKSB7Ci0JCXJlc19zZXRuZXRpZChyZXMsIG5ldGlkKTsKLQkJcmVzX3NldG1hcmsocmVzLCBtYXJrKTsKLQkJcmV0dXJuIGdldGhvc3RieW5hbWVfaW50ZXJuYWxfcmVhbChuYW1lLCBhZiwgcmVzKTsKLQl9Ci0KLQlwcm94eSA9IGFuZHJvaWRfb3Blbl9wcm94eSgpOwotCWlmIChwcm94eSA9PSBOVUxMKSBnb3RvIGV4aXQ7Ci0KLQluZXRpZCA9IF9fbmV0ZENsaWVudERpc3BhdGNoLm5ldElkRm9yUmVzb2x2KG5ldGlkKTsKLQotCS8qIFRoaXMgaXMgd3JpdGluZyB0byBzeXN0ZW0vbmV0ZC9zZXJ2ZXIvRG5zUHJveHlMaXN0ZW5lci5jcHAgYW5kIGNoYW5nZXMKLQkgKiBoZXJlIG5lZWQgdG8gYmUgbWF0Y2hlZCB0aGVyZSAqLwotCWlmIChmcHJpbnRmKHByb3h5LCAiZ2V0aG9zdGJ5bmFtZSAldSAlcyAlZCIsCi0JCQluZXRpZCwKLQkJCW5hbWUgPT0gTlVMTCA/ICJeIiA6IG5hbWUsCi0JCQlhZikgPCAwKSB7Ci0JCWdvdG8gZXhpdDsKLQl9Ci0KLQlpZiAoZnB1dGMoMCwgcHJveHkpID09IEVPRiB8fCBmZmx1c2gocHJveHkpICE9IDApIHsKLQkJZ290byBleGl0OwotCX0KLQotCXJlc3VsdCA9IGFuZHJvaWRfcmVhZF9ob3N0ZW50KHByb3h5KTsKLQotZXhpdDoKLQlpZiAocHJveHkgIT0gTlVMTCkgewotCQlmY2xvc2UocHJveHkpOwotCX0KLQlyZXR1cm4gcmVzdWx0OwotfQotCi0KLXN0cnVjdCBob3N0ZW50ICoKLWFuZHJvaWRfZ2V0aG9zdGJ5YWRkcmZvcm5ldF9wcm94eShjb25zdCB2b2lkICphZGRyLAotICAgIHNvY2tsZW5fdCBsZW4sIGludCBhZiwgdW5zaWduZWQgbmV0aWQpCi17Ci0Jc3RydWN0IGhvc3RlbnQgKnJlc3VsdCA9IE5VTEw7Ci0JRklMRSogcHJveHkgPSBhbmRyb2lkX29wZW5fcHJveHkoKTsKLQotCWlmIChwcm94eSA9PSBOVUxMKSBnb3RvIGV4aXQ7Ci0KLQljaGFyIGJ1ZltJTkVUNl9BRERSU1RSTEVOXTsgIC8vYmlnIGVub3VnaCBmb3IgSVB2NCBhbmQgSVB2NgotCWNvbnN0IGNoYXIgKiBhZGRyU3RyID0gaW5ldF9udG9wKGFmLCBhZGRyLCBidWYsIHNpemVvZihidWYpKTsKLQlpZiAoYWRkclN0ciA9PSBOVUxMKSBnb3RvIGV4aXQ7Ci0KLQluZXRpZCA9IF9fbmV0ZENsaWVudERpc3BhdGNoLm5ldElkRm9yUmVzb2x2KG5ldGlkKTsKLQotCWlmIChmcHJpbnRmKHByb3h5LCAiZ2V0aG9zdGJ5YWRkciAlcyAlZCAlZCAldSIsCi0JCQlhZGRyU3RyLCBsZW4sIGFmLCBuZXRpZCkgPCAwKSB7Ci0JCWdvdG8gZXhpdDsKLQl9Ci0KLQlpZiAoZnB1dGMoMCwgcHJveHkpID09IEVPRiB8fCBmZmx1c2gocHJveHkpICE9IDApIHsKLQkJZ290byBleGl0OwotCX0KLQotCXJlc3VsdCA9IGFuZHJvaWRfcmVhZF9ob3N0ZW50KHByb3h5KTsKLWV4aXQ6Ci0JaWYgKHByb3h5ICE9IE5VTEwpIHsKLQkJZmNsb3NlKHByb3h5KTsKLQl9Ci0JcmV0dXJuIHJlc3VsdDsKLX0KLQotc3RydWN0IGhvc3RlbnQgKgotYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0X3JlYWwoY29uc3Qgdm9pZCAqYWRkciwKLSAgICBzb2NrbGVuX3QgbGVuLCBpbnQgYWYsIHVuc2lnbmVkIG5ldGlkLCB1bnNpZ25lZCBtYXJrKQotewotCWNvbnN0IHVfY2hhciAqdWFkZHIgPSAoY29uc3QgdV9jaGFyICopYWRkcjsKLQlzb2NrbGVuX3Qgc2l6ZTsKLQlzdHJ1Y3QgaG9zdGVudCAqaHA7Ci0Jc3RhdGljIGNvbnN0IG5zX2R0YWIgZHRhYltdID0gewotCQlOU19GSUxFU19DQihfZ2V0aHRieWFkZHIsIE5VTEwpCi0JCXsgTlNTUkNfRE5TLCBfZG5zX2dldGh0YnlhZGRyLCBOVUxMIH0sCS8qIGZvcmNlIC1ESEVTSU9EICovCi0JCXsgMCwgMCwgMCB9Ci0JfTsKLQotCWFzc2VydChhZGRyICE9IE5VTEwpOwotCi0JaWYgKGFmID09IEFGX0lORVQ2ICYmIGxlbiA9PSBOU19JTjZBRERSU1ogJiYKLQkgICAgKElONl9JU19BRERSX0xJTktMT0NBTCgoY29uc3Qgc3RydWN0IGluNl9hZGRyICopYWRkcikgfHwKLQkgICAgIElONl9JU19BRERSX1NJVEVMT0NBTCgoY29uc3Qgc3RydWN0IGluNl9hZGRyICopYWRkcikpKSB7Ci0JCWhfZXJybm8gPSBIT1NUX05PVF9GT1VORDsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCWlmIChhZiA9PSBBRl9JTkVUNiAmJiBsZW4gPT0gTlNfSU42QUREUlNaICYmCi0JICAgIChJTjZfSVNfQUREUl9WNE1BUFBFRCgoY29uc3Qgc3RydWN0IGluNl9hZGRyICopYWRkcikgfHwKLQkgICAgIElONl9JU19BRERSX1Y0Q09NUEFUKChjb25zdCBzdHJ1Y3QgaW42X2FkZHIgKilhZGRyKSkpIHsKLQkJLyogVW5tYXAuICovCi0JCXVhZGRyICs9IE5TX0lONkFERFJTWiAtIE5TX0lOQUREUlNaOwotCQlhZGRyID0gdWFkZHI7Ci0JCWFmID0gQUZfSU5FVDsKLQkJbGVuID0gTlNfSU5BRERSU1o7Ci0JfQotCXN3aXRjaCAoYWYpIHsKLQljYXNlIEFGX0lORVQ6Ci0JCXNpemUgPSBOU19JTkFERFJTWjsKLQkJYnJlYWs7Ci0JY2FzZSBBRl9JTkVUNjoKLQkJc2l6ZSA9IE5TX0lONkFERFJTWjsKLQkJYnJlYWs7Ci0JZGVmYXVsdDoKLQkJZXJybm8gPSBFQUZOT1NVUFBPUlQ7Ci0JCWhfZXJybm8gPSBORVREQl9JTlRFUk5BTDsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCWlmIChzaXplICE9IGxlbikgewotCQllcnJubyA9IEVJTlZBTDsKLQkJaF9lcnJubyA9IE5FVERCX0lOVEVSTkFMOwotCQlyZXR1cm4gTlVMTDsKLQl9Ci0JaHAgPSBOVUxMOwotCWhfZXJybm8gPSBORVREQl9JTlRFUk5BTDsKLQlpZiAobnNkaXNwYXRjaCgmaHAsIGR0YWIsIE5TREJfSE9TVFMsICJnZXRob3N0YnlhZGRyIiwKLQkJZGVmYXVsdF9kbnNfZmlsZXMsIHVhZGRyLCBsZW4sIGFmLCBuZXRpZCwgbWFyaykgIT0gTlNfU1VDQ0VTUykKLQkJcmV0dXJuIE5VTEw7Ci0JaF9lcnJubyA9IE5FVERCX1NVQ0NFU1M7Ci0JcmV0dXJuIGhwOwotfQotCi1zdHJ1Y3QgaG9zdGVudCAqCi1hbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXQoY29uc3Qgdm9pZCAqYWRkciwgc29ja2xlbl90IGxlbiwgaW50IGFmLCB1bnNpZ25lZCBuZXRpZCwgdW5zaWduZWQgbWFyaykKLXsKLQljb25zdCBjaGFyICpjYWNoZV9tb2RlID0gZ2V0ZW52KCJBTkRST0lEX0ROU19NT0RFIik7Ci0KLQlpZiAoY2FjaGVfbW9kZSA9PSBOVUxMIHx8IHN0cmNtcChjYWNoZV9tb2RlLCAibG9jYWwiKSAhPSAwKSB7Ci0JCXJldHVybiBhbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXRfcHJveHkoYWRkciwgbGVuLCBhZiwgbmV0aWQpOwotCX0gZWxzZSB7Ci0JCXJldHVybiBhbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXRfcmVhbChhZGRyLGxlbiwgYWYsIG5ldGlkLCBtYXJrKTsKLQl9Ci19Ci0KLXN0cnVjdCBob3N0ZW50ICoKLWdldGhvc3RieWFkZHIoY29uc3Qgdm9pZCAqYWRkciwgc29ja2xlbl90IGxlbiwgaW50IGFmKQotewotCXJldHVybiBhbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXQoYWRkciwgbGVuLCBhZiwgTkVUSURfVU5TRVQsIE1BUktfVU5TRVQpOwotfQotCi0KLXN0YXRpYyB2b2lkCi1fc2V0aHRlbnQoaW50IGYpCi17Ci0gICAgcmVzX3N0YXRpYyAgcnMgPSBfX3Jlc19nZXRfc3RhdGljKCk7Ci0gICAgaWYgKHJzID09IE5VTEwpIHJldHVybjsKLQlpZiAoIXJzLT5ob3N0ZikKLQkJcnMtPmhvc3RmID0gZm9wZW4oX1BBVEhfSE9TVFMsICJyIiApOwotCWVsc2UKLQkJcmV3aW5kKHJzLT5ob3N0Zik7Ci0JcnMtPnN0YXlvcGVuID0gZjsKLX0KLQotc3RhdGljIHZvaWQKLV9lbmRodGVudCh2b2lkKQotewotICAgIHJlc19zdGF0aWMgIHJzID0gX19yZXNfZ2V0X3N0YXRpYygpOwotICAgIGlmIChycyA9PSBOVUxMKSByZXR1cm47Ci0KLQlpZiAocnMtPmhvc3RmICYmICFycy0+c3RheW9wZW4pIHsKLQkJKHZvaWQpIGZjbG9zZShycy0+aG9zdGYpOwotCQlycy0+aG9zdGYgPSBOVUxMOwotCX0KLX0KLQotc3RhdGljIHN0cnVjdCBob3N0ZW50ICoKLV9nZXRodGVudCh2b2lkKQotewotCWNoYXIgKnA7Ci0JY2hhciAqY3AsICoqcTsKLQlpbnQgYWYsIGxlbjsKLQlyZXNfc3RhdGljICBycyA9IF9fcmVzX2dldF9zdGF0aWMoKTsKLQotCWlmICghcnMtPmhvc3RmICYmICEocnMtPmhvc3RmID0gZm9wZW4oX1BBVEhfSE9TVFMsICJyIiApKSkgewotCQloX2Vycm5vID0gTkVUREJfSU5URVJOQUw7Ci0JCXJldHVybiBOVUxMOwotCX0KLSBhZ2FpbjoKLQlpZiAoIShwID0gZmdldHMocnMtPmhvc3RidWYsIHNpemVvZiBycy0+aG9zdGJ1ZiwgcnMtPmhvc3RmKSkpIHsKLQkJaF9lcnJubyA9IEhPU1RfTk9UX0ZPVU5EOwotCQlyZXR1cm4gTlVMTDsKLQl9Ci0JaWYgKCpwID09ICcjJykKLQkJZ290byBhZ2FpbjsKLQlpZiAoIShjcCA9IHN0cnBicmsocCwgIiNcbiIpKSkKLQkJZ290byBhZ2FpbjsKLQkqY3AgPSAnXDAnOwotCWlmICghKGNwID0gc3RycGJyayhwLCAiIFx0IikpKQotCQlnb3RvIGFnYWluOwotCSpjcCsrID0gJ1wwJzsKLQlpZiAoaW5ldF9wdG9uKEFGX0lORVQ2LCBwLCAoY2hhciAqKSh2b2lkICopcnMtPmhvc3RfYWRkcikgPiAwKSB7Ci0JCWFmID0gQUZfSU5FVDY7Ci0JCWxlbiA9IElONkFERFJTWjsKLQl9IGVsc2UgaWYgKGluZXRfcHRvbihBRl9JTkVULCBwLCAoY2hhciAqKSh2b2lkICopcnMtPmhvc3RfYWRkcikgPiAwKSB7Ci0JCXJlc19zdGF0ZSByZXMgPSBfX3Jlc19nZXRfc3RhdGUoKTsKLQkJaWYgKHJlcyA9PSBOVUxMKQotCQkJcmV0dXJuIE5VTEw7Ci0JCWlmIChyZXMtPm9wdGlvbnMgJiBSRVNfVVNFX0lORVQ2KSB7Ci0JCQltYXBfdjR2Nl9hZGRyZXNzKChjaGFyICopKHZvaWQgKilycy0+aG9zdF9hZGRyLAotCQkJICAgIChjaGFyICopKHZvaWQgKilycy0+aG9zdF9hZGRyKTsKLQkJCWFmID0gQUZfSU5FVDY7Ci0JCQlsZW4gPSBJTjZBRERSU1o7Ci0JCX0gZWxzZSB7Ci0JCQlhZiA9IEFGX0lORVQ7Ci0JCQlsZW4gPSBJTkFERFJTWjsKLQkJfQotCQlfX3Jlc19wdXRfc3RhdGUocmVzKTsKLQl9IGVsc2UgewotCQlnb3RvIGFnYWluOwotCX0KLQkvKiBpZiB0aGlzIGlzIG5vdCBzb21ldGhpbmcgd2UncmUgbG9va2luZyBmb3IsIHNraXAgaXQuICovCi0JaWYgKHJzLT5ob3N0LmhfYWRkcnR5cGUgIT0gMCAmJiBycy0+aG9zdC5oX2FkZHJ0eXBlICE9IGFmKQotCQlnb3RvIGFnYWluOwotCWlmIChycy0+aG9zdC5oX2xlbmd0aCAhPSAwICYmIHJzLT5ob3N0LmhfbGVuZ3RoICE9IGxlbikKLQkJZ290byBhZ2FpbjsKLQlycy0+aF9hZGRyX3B0cnNbMF0gPSAoY2hhciAqKSh2b2lkICopcnMtPmhvc3RfYWRkcjsKLQlycy0+aF9hZGRyX3B0cnNbMV0gPSBOVUxMOwotCXJzLT5ob3N0LmhfYWRkcl9saXN0ID0gcnMtPmhfYWRkcl9wdHJzOwotCXJzLT5ob3N0LmhfbGVuZ3RoID0gbGVuOwotCXJzLT5ob3N0LmhfYWRkcnR5cGUgPSBhZjsKLQl3aGlsZSAoKmNwID09ICcgJyB8fCAqY3AgPT0gJ1x0JykKLQkJY3ArKzsKLQlycy0+aG9zdC5oX25hbWUgPSBjcDsKLQlxID0gcnMtPmhvc3QuaF9hbGlhc2VzID0gcnMtPmhvc3RfYWxpYXNlczsKLQlpZiAoKGNwID0gc3RycGJyayhjcCwgIiBcdCIpKSAhPSBOVUxMKQotCQkqY3ArKyA9ICdcMCc7Ci0Jd2hpbGUgKGNwICYmICpjcCkgewotCQlpZiAoKmNwID09ICcgJyB8fCAqY3AgPT0gJ1x0JykgewotCQkJY3ArKzsKLQkJCWNvbnRpbnVlOwotCQl9Ci0JCWlmIChxIDwgJnJzLT5ob3N0X2FsaWFzZXNbTUFYQUxJQVNFUyAtIDFdKQotCQkJKnErKyA9IGNwOwotCQlpZiAoKGNwID0gc3RycGJyayhjcCwgIiBcdCIpKSAhPSBOVUxMKQotCQkJKmNwKysgPSAnXDAnOwotCX0KLQkqcSA9IE5VTEw7Ci0JaF9lcnJubyA9IE5FVERCX1NVQ0NFU1M7Ci0JcmV0dXJuICZycy0+aG9zdDsKLX0KLQotLypBUkdTVVNFRCovCi1pbnQKLV9nZXRodGJ5bmFtZSh2b2lkICpydiwgdm9pZCAqY2JfZGF0YSwgdmFfbGlzdCBhcCkKLXsKLQlzdHJ1Y3QgaG9zdGVudCAqaHA7Ci0JY29uc3QgY2hhciAqbmFtZTsKLQlpbnQgYWY7Ci0KLQlhc3NlcnQocnYgIT0gTlVMTCk7Ci0KLQluYW1lID0gdmFfYXJnKGFwLCBjaGFyICopOwotCS8qIE5PU1RSSUNUIHNraXAgbGVuICovKHZvaWQpdmFfYXJnKGFwLCBpbnQpOwotCWFmID0gdmFfYXJnKGFwLCBpbnQpOwotCi0JaHAgPSBOVUxMOwotI2lmIDAKLQl7Ci0JCXJlc19zdGF0ZSByZXMgPSBfX3Jlc19nZXRfc3RhdGUoKTsKLQkJaWYgKHJlcyA9PSBOVUxMKQotCQkJcmV0dXJuIE5TX05PVEZPVU5EOwotCQlpZiAocmVzLT5vcHRpb25zICYgUkVTX1VTRV9JTkVUNikKLQkJCWhwID0gX2dldGh0YnluYW1lMihuYW1lLCBBRl9JTkVUNik7Ci0JCWlmIChocD09TlVMTCkKLQkJCWhwID0gX2dldGh0YnluYW1lMihuYW1lLCBBRl9JTkVUKTsKLQkJX19yZXNfcHV0X3N0YXRlKHJlcyk7Ci0JfQotI2Vsc2UKLQlocCA9IF9nZXRodGJ5bmFtZTIobmFtZSwgYWYpOwotI2VuZGlmCi0JKigoc3RydWN0IGhvc3RlbnQgKiopcnYpID0gaHA7Ci0JaWYgKGhwID09IE5VTEwpIHsKLQkJaF9lcnJubyA9IEhPU1RfTk9UX0ZPVU5EOwotCQlyZXR1cm4gTlNfTk9URk9VTkQ7Ci0JfQotCXJldHVybiBOU19TVUNDRVNTOwotfQotCi1zdGF0aWMgc3RydWN0IGhvc3RlbnQgKgotX2dldGh0YnluYW1lMihjb25zdCBjaGFyICpuYW1lLCBpbnQgYWYpCi17Ci0Jc3RydWN0IGhvc3RlbnQgKnA7Ci0JY2hhciAqdG1wYnVmLCAqcHRyLCAqKmNwOwotCWludCBudW07Ci0Jc2l6ZV90IGxlbjsKLQlyZXNfc3RhdGljIHJzID0gX19yZXNfZ2V0X3N0YXRpYygpOwotCi0JYXNzZXJ0KG5hbWUgIT0gTlVMTCk7Ci0KLQlfc2V0aHRlbnQocnMtPnN0YXlvcGVuKTsKLQlwdHIgPSB0bXBidWYgPSBOVUxMOwotCW51bSA9IDA7Ci0Jd2hpbGUgKChwID0gX2dldGh0ZW50KCkpICE9IE5VTEwgJiYgbnVtIDwgTUFYQUREUlMpIHsKLQkJaWYgKHAtPmhfYWRkcnR5cGUgIT0gYWYpCi0JCQljb250aW51ZTsKLQkJaWYgKHN0cmNhc2VjbXAocC0+aF9uYW1lLCBuYW1lKSAhPSAwKSB7Ci0JCQlmb3IgKGNwID0gcC0+aF9hbGlhc2VzOyAqY3AgIT0gTlVMTDsgY3ArKykKLQkJCQlpZiAoc3RyY2FzZWNtcCgqY3AsIG5hbWUpID09IDApCi0JCQkJCWJyZWFrOwotCQkJaWYgKCpjcCA9PSBOVUxMKSBjb250aW51ZTsKLQkJfQotCi0JCWlmIChudW0gPT0gMCkgewotCQkJc2l6ZV90IGJ1ZnNpemU7Ci0JCQljaGFyICpzcmM7Ci0KLQkJCWJ1ZnNpemUgPSBzdHJsZW4ocC0+aF9uYW1lKSArIDIgKwotCQkJCSAgTUFYQUREUlMgKiBwLT5oX2xlbmd0aCArCi0JCQkJICBBTElHTkJZVEVTOwotCQkJZm9yIChjcCA9IHAtPmhfYWxpYXNlczsgKmNwICE9IE5VTEw7IGNwKyspCi0JCQkJYnVmc2l6ZSArPSBzdHJsZW4oKmNwKSArIDE7Ci0KLQkJCWlmICgodG1wYnVmID0gbWFsbG9jKGJ1ZnNpemUpKSA9PSBOVUxMKSB7Ci0JCQkJaF9lcnJubyA9IE5FVERCX0lOVEVSTkFMOwotCQkJCXJldHVybiBOVUxMOwotCQkJfQotCi0JCQlwdHIgPSB0bXBidWY7Ci0JCQlzcmMgPSBwLT5oX25hbWU7Ci0JCQl3aGlsZSAoKCpwdHIrKyA9ICpzcmMrKykgIT0gJ1wwJyk7Ci0JCQlmb3IgKGNwID0gcC0+aF9hbGlhc2VzOyAqY3AgIT0gTlVMTDsgY3ArKykgewotCQkJCXNyYyA9ICpjcDsKLQkJCQl3aGlsZSAoKCpwdHIrKyA9ICpzcmMrKykgIT0gJ1wwJyk7Ci0JCQl9Ci0JCQkqcHRyKysgPSAnXDAnOwotCi0JCQlwdHIgPSAoY2hhciAqKSh2b2lkICopQUxJR04ocHRyKTsKLQkJfQotCi0JCSh2b2lkKW1lbWNweShwdHIsIHAtPmhfYWRkcl9saXN0WzBdLCAoc2l6ZV90KXAtPmhfbGVuZ3RoKTsKLQkJcHRyICs9IHAtPmhfbGVuZ3RoOwotCQludW0rKzsKLQl9Ci0JX2VuZGh0ZW50KCk7Ci0JaWYgKG51bSA9PSAwKSByZXR1cm4gTlVMTDsKLQotCWxlbiA9IHB0ciAtIHRtcGJ1ZjsKLQlpZiAobGVuID4gKHNpemVvZihycy0+aG9zdGJ1ZikgLSBBTElHTkJZVEVTKSkgewotCQlmcmVlKHRtcGJ1Zik7Ci0JCWVycm5vID0gRU5PU1BDOwotCQloX2Vycm5vID0gTkVUREJfSU5URVJOQUw7Ci0JCXJldHVybiBOVUxMOwotCX0KLQlwdHIgPSBtZW1jcHkoKHZvaWQgKilBTElHTihycy0+aG9zdGJ1ZiksIHRtcGJ1ZiwgbGVuKTsKLQlmcmVlKHRtcGJ1Zik7Ci0KLQlycy0+aG9zdC5oX25hbWUgPSBwdHI7Ci0Jd2hpbGUgKCpwdHIrKyk7Ci0KLQljcCA9IHJzLT5ob3N0X2FsaWFzZXM7Ci0Jd2hpbGUgKCpwdHIpIHsKLQkJKmNwKysgPSBwdHI7Ci0JCXdoaWxlICgqcHRyKyspOwotCX0KLQlwdHIrKzsKLQkqY3AgPSBOVUxMOwotCi0JcHRyID0gKGNoYXIgKikodm9pZCAqKUFMSUdOKHB0cik7Ci0JY3AgPSBycy0+aF9hZGRyX3B0cnM7Ci0Jd2hpbGUgKG51bS0tKSB7Ci0JCSpjcCsrID0gcHRyOwotCQlwdHIgKz0gcnMtPmhvc3QuaF9sZW5ndGg7Ci0JfQotCSpjcCA9IE5VTEw7Ci0KLQlyZXR1cm4gJnJzLT5ob3N0OwotfQotCi0vKkFSR1NVU0VEKi8KLXN0YXRpYyBpbnQKLV9nZXRodGJ5YWRkcih2b2lkICpydiwgdm9pZCAqY2JfZGF0YSwgdmFfbGlzdCBhcCkKLXsKLQlzdHJ1Y3QgaG9zdGVudCAqcDsKLQljb25zdCB1bnNpZ25lZCBjaGFyICphZGRyOwotCWludCBsZW4sIGFmOwotCXJlc19zdGF0aWMgIHJzID0gX19yZXNfZ2V0X3N0YXRpYygpOwotCi0JYXNzZXJ0KHJ2ICE9IE5VTEwpOwotCi0JYWRkciA9IHZhX2FyZyhhcCwgdW5zaWduZWQgY2hhciAqKTsKLQlsZW4gPSB2YV9hcmcoYXAsIGludCk7Ci0JYWYgPSB2YV9hcmcoYXAsIGludCk7Ci0KLQlycy0+aG9zdC5oX2xlbmd0aCA9IGxlbjsKLQlycy0+aG9zdC5oX2FkZHJ0eXBlID0gYWY7Ci0KLQlfc2V0aHRlbnQocnMtPnN0YXlvcGVuKTsKLQl3aGlsZSAoKHAgPSBfZ2V0aHRlbnQoKSkgIT0gTlVMTCkKLQkJaWYgKHAtPmhfYWRkcnR5cGUgPT0gYWYgJiYgIW1lbWNtcChwLT5oX2FkZHIsIGFkZHIsCi0JCSAgICAoc2l6ZV90KWxlbikpCi0JCQlicmVhazsKLQlfZW5kaHRlbnQoKTsKLQkqKChzdHJ1Y3QgaG9zdGVudCAqKilydikgPSBwOwotCWlmIChwPT1OVUxMKSB7Ci0JCWhfZXJybm8gPSBIT1NUX05PVF9GT1VORDsKLQkJcmV0dXJuIE5TX05PVEZPVU5EOwotCX0KLQlyZXR1cm4gTlNfU1VDQ0VTUzsKLX0KLQotc3RhdGljIHZvaWQKLW1hcF92NHY2X2FkZHJlc3MoY29uc3QgY2hhciAqc3JjLCBjaGFyICpkc3QpCi17Ci0JdV9jaGFyICpwID0gKHVfY2hhciAqKWRzdDsKLQljaGFyIHRtcFtJTkFERFJTWl07Ci0JaW50IGk7Ci0KLQlhc3NlcnQoc3JjICE9IE5VTEwpOwotCWFzc2VydChkc3QgIT0gTlVMTCk7Ci0KLQkvKiBTdGFzaCBhIHRlbXBvcmFyeSBjb3B5IHNvIG91ciBjYWxsZXIgY2FuIHVwZGF0ZSBpbiBwbGFjZS4gKi8KLQkodm9pZCltZW1jcHkodG1wLCBzcmMsIElOQUREUlNaKTsKLQkvKiBNYXJrIHRoaXMgaXB2NiBhZGRyIGFzIGEgbWFwcGVkIGlwdjQuICovCi0JZm9yIChpID0gMDsgaSA8IDEwOyBpKyspCi0JCSpwKysgPSAweDAwOwotCSpwKysgPSAweGZmOwotCSpwKysgPSAweGZmOwotCS8qIFJldHJpZXZlIHRoZSBzYXZlZCBjb3B5IGFuZCB3ZSdyZSBkb25lLiAqLwotCSh2b2lkKW1lbWNweSgodm9pZCAqKXAsIHRtcCwgSU5BRERSU1opOwotfQotCi1zdGF0aWMgdm9pZAotbWFwX3Y0djZfaG9zdGVudChzdHJ1Y3QgaG9zdGVudCAqaHAsIGNoYXIgKipicHAsIGNoYXIgKmVwKQotewotCWNoYXIgKiphcDsKLQotCWFzc2VydChocCAhPSBOVUxMKTsKLQlhc3NlcnQoYnBwICE9IE5VTEwpOwotCWFzc2VydChlcCAhPSBOVUxMKTsKLQotCWlmIChocC0+aF9hZGRydHlwZSAhPSBBRl9JTkVUIHx8IGhwLT5oX2xlbmd0aCAhPSBJTkFERFJTWikKLQkJcmV0dXJuOwotCWhwLT5oX2FkZHJ0eXBlID0gQUZfSU5FVDY7Ci0JaHAtPmhfbGVuZ3RoID0gSU42QUREUlNaOwotCWZvciAoYXAgPSBocC0+aF9hZGRyX2xpc3Q7ICphcDsgYXArKykgewotCQlpbnQgaSA9IHNpemVvZihhbGlnbikgLSAoc2l6ZV90KSgodV9sb25nKSpicHAgJSBzaXplb2YoYWxpZ24pKTsKLQotCQlpZiAoZXAgLSAqYnBwIDwgKGkgKyBJTjZBRERSU1opKSB7Ci0JCQkvKiBPdXQgb2YgbWVtb3J5LiAgVHJ1bmNhdGUgYWRkcmVzcyBsaXN0IGhlcmUuICBYWFggKi8KLQkJCSphcCA9IE5VTEw7Ci0JCQlyZXR1cm47Ci0JCX0KLQkJKmJwcCArPSBpOwotCQltYXBfdjR2Nl9hZGRyZXNzKCphcCwgKmJwcCk7Ci0JCSphcCA9ICpicHA7Ci0JCSpicHAgKz0gSU42QUREUlNaOwotCX0KLX0KLQotc3RhdGljIHZvaWQKLWFkZHJzb3J0KGNoYXIgKiphcCwgaW50IG51bSwgcmVzX3N0YXRlIHJlcykKLXsKLQlpbnQgaSwgajsKLQljaGFyICoqcDsKLQlzaG9ydCBhdmFsW01BWEFERFJTXTsKLQlpbnQgbmVlZHNvcnQgPSAwOwotCi0JYXNzZXJ0KGFwICE9IE5VTEwpOwotCi0JcCA9IGFwOwotCWZvciAoaSA9IDA7IGkgPCBudW07IGkrKywgcCsrKSB7Ci0JICAgIGZvciAoaiA9IDAgOyAodW5zaWduZWQpaiA8IHJlcy0+bnNvcnQ7IGorKykKLQkJaWYgKHJlcy0+c29ydF9saXN0W2pdLmFkZHIuc19hZGRyID09Ci0JCSAgICAoKChzdHJ1Y3QgaW5fYWRkciAqKSh2b2lkICopKCpwKSktPnNfYWRkciAmCi0JCSAgICByZXMtPnNvcnRfbGlzdFtqXS5tYXNrKSkKLQkJCWJyZWFrOwotCSAgICBhdmFsW2ldID0gajsKLQkgICAgaWYgKG5lZWRzb3J0ID09IDAgJiYgaSA+IDAgJiYgaiA8IGF2YWxbaS0xXSkKLQkJbmVlZHNvcnQgPSBpOwotCX0KLQlpZiAoIW5lZWRzb3J0KQotCSAgICByZXR1cm47Ci0KLQl3aGlsZSAobmVlZHNvcnQgPCBudW0pIHsKLQkgICAgZm9yIChqID0gbmVlZHNvcnQgLSAxOyBqID49IDA7IGotLSkgewotCQlpZiAoYXZhbFtqXSA+IGF2YWxbaisxXSkgewotCQkgICAgY2hhciAqaHA7Ci0KLQkJICAgIGkgPSBhdmFsW2pdOwotCQkgICAgYXZhbFtqXSA9IGF2YWxbaisxXTsKLQkJICAgIGF2YWxbaisxXSA9IGk7Ci0KLQkJICAgIGhwID0gYXBbal07Ci0JCSAgICBhcFtqXSA9IGFwW2orMV07Ci0JCSAgICBhcFtqKzFdID0gaHA7Ci0JCX0gZWxzZQotCQkgICAgYnJlYWs7Ci0JICAgIH0KLQkgICAgbmVlZHNvcnQrKzsKLQl9Ci19Ci0KLXN0cnVjdCBob3N0ZW50ICoKLWdldGhvc3RlbnQodm9pZCkKLXsKLSAgICByZXNfc3RhdGljICBycyA9IF9fcmVzX2dldF9zdGF0aWMoKTsKLQlycy0+aG9zdC5oX2FkZHJ0eXBlID0gMDsKLQlycy0+aG9zdC5oX2xlbmd0aCA9IDA7Ci0JcmV0dXJuIF9nZXRodGVudCgpOwotfQotCi0vKkFSR1NVU0VEKi8KLXN0YXRpYyBpbnQKLV9kbnNfZ2V0aHRieW5hbWUodm9pZCAqcnYsIHZvaWQgKmNiX2RhdGEsIHZhX2xpc3QgYXApCi17Ci0JcXVlcnlidWYgKmJ1ZjsKLQlpbnQgbiwgdHlwZTsKLQlzdHJ1Y3QgaG9zdGVudCAqaHA7Ci0JY29uc3QgY2hhciAqbmFtZTsKLQlpbnQgYWY7Ci0JcmVzX3N0YXRlIHJlczsKLQotCWFzc2VydChydiAhPSBOVUxMKTsKLQotCW5hbWUgPSB2YV9hcmcoYXAsIGNoYXIgKik7Ci0JLyogTk9TVFJJQ1Qgc2tpcCBsZW4gKi8odm9pZCl2YV9hcmcoYXAsIGludCk7Ci0JYWYgPSB2YV9hcmcoYXAsIGludCk7Ci0KLQlzd2l0Y2ggKGFmKSB7Ci0JY2FzZSBBRl9JTkVUOgotCQl0eXBlID0gVF9BOwotCQlicmVhazsKLQljYXNlIEFGX0lORVQ2OgotCQl0eXBlID0gVF9BQUFBOwotCQlicmVhazsKLQlkZWZhdWx0OgotCQlyZXR1cm4gTlNfVU5BVkFJTDsKLQl9Ci0JYnVmID0gbWFsbG9jKHNpemVvZigqYnVmKSk7Ci0JaWYgKGJ1ZiA9PSBOVUxMKSB7Ci0JCWhfZXJybm8gPSBORVREQl9JTlRFUk5BTDsKLQkJcmV0dXJuIE5TX05PVEZPVU5EOwotCX0KLQlyZXMgPSBfX3Jlc19nZXRfc3RhdGUoKTsKLQlpZiAocmVzID09IE5VTEwpIHsKLQkJZnJlZShidWYpOwotCQlyZXR1cm4gTlNfTk9URk9VTkQ7Ci0JfQotCW4gPSByZXNfbnNlYXJjaChyZXMsIG5hbWUsIENfSU4sIHR5cGUsIGJ1Zi0+YnVmLCBzaXplb2YoYnVmLT5idWYpKTsKLQlpZiAobiA8IDApIHsKLQkJZnJlZShidWYpOwotCQlkcHJpbnRmKCJyZXNfbnNlYXJjaCBmYWlsZWQgKCVkKVxuIiwgcmVzLCBuKTsKLQkJX19yZXNfcHV0X3N0YXRlKHJlcyk7Ci0JCXJldHVybiBOU19OT1RGT1VORDsKLQl9Ci0JaHAgPSBnZXRhbnN3ZXIoYnVmLCBuLCBuYW1lLCB0eXBlLCByZXMpOwotCWZyZWUoYnVmKTsKLQlfX3Jlc19wdXRfc3RhdGUocmVzKTsKLQlpZiAoaHAgPT0gTlVMTCkKLQkJc3dpdGNoIChoX2Vycm5vKSB7Ci0JCWNhc2UgSE9TVF9OT1RfRk9VTkQ6Ci0JCQlyZXR1cm4gTlNfTk9URk9VTkQ7Ci0JCWNhc2UgVFJZX0FHQUlOOgotCQkJcmV0dXJuIE5TX1RSWUFHQUlOOwotCQlkZWZhdWx0OgotCQkJcmV0dXJuIE5TX1VOQVZBSUw7Ci0JCX0KLQkqKChzdHJ1Y3QgaG9zdGVudCAqKilydikgPSBocDsKLQlyZXR1cm4gTlNfU1VDQ0VTUzsKLX0KLQotLypBUkdTVVNFRCovCi1zdGF0aWMgaW50Ci1fZG5zX2dldGh0YnlhZGRyKHZvaWQgKnJ2LCB2b2lkCSpjYl9kYXRhLCB2YV9saXN0IGFwKQotewotCWNoYXIgcWJ1ZltNQVhETkFNRSArIDFdLCAqcXAsICplcDsKLQlpbnQgbjsKLQlxdWVyeWJ1ZiAqYnVmOwotCXN0cnVjdCBob3N0ZW50ICpocDsKLQljb25zdCB1bnNpZ25lZCBjaGFyICp1YWRkcjsKLQlpbnQgbGVuLCBhZiwgYWR2YW5jZTsKLQlyZXNfc3RhdGUgcmVzOwotCXVuc2lnbmVkIG5ldGlkLCBtYXJrOwotCXJlc19zdGF0aWMgcnMgPSBfX3Jlc19nZXRfc3RhdGljKCk7Ci0KLQlhc3NlcnQocnYgIT0gTlVMTCk7Ci0KLQl1YWRkciA9IHZhX2FyZyhhcCwgdW5zaWduZWQgY2hhciAqKTsKLQlsZW4gPSB2YV9hcmcoYXAsIGludCk7Ci0JYWYgPSB2YV9hcmcoYXAsIGludCk7Ci0JbmV0aWQgPSB2YV9hcmcoYXAsIHVuc2lnbmVkKTsKLQltYXJrID0gdmFfYXJnKGFwLCB1bnNpZ25lZCk7Ci0KLQlzd2l0Y2ggKGFmKSB7Ci0JY2FzZSBBRl9JTkVUOgotCQkodm9pZClzbnByaW50ZihxYnVmLCBzaXplb2YocWJ1ZiksICIldS4ldS4ldS4ldS5pbi1hZGRyLmFycGEiLAotCQkgICAgKHVhZGRyWzNdICYgMHhmZiksICh1YWRkclsyXSAmIDB4ZmYpLAotCQkgICAgKHVhZGRyWzFdICYgMHhmZiksICh1YWRkclswXSAmIDB4ZmYpKTsKLQkJYnJlYWs7Ci0KLQljYXNlIEFGX0lORVQ2OgotCQlxcCA9IHFidWY7Ci0JCWVwID0gcWJ1ZiArIHNpemVvZihxYnVmKSAtIDE7Ci0JCWZvciAobiA9IElONkFERFJTWiAtIDE7IG4gPj0gMDsgbi0tKSB7Ci0JCQlhZHZhbmNlID0gc25wcmludGYocXAsIChzaXplX3QpKGVwIC0gcXApLCAiJXguJXguIiwKLQkJCSAgICB1YWRkcltuXSAmIDB4ZiwKLQkJCSAgICAoKHVuc2lnbmVkIGludCl1YWRkcltuXSA+PiA0KSAmIDB4Zik7Ci0JCQlpZiAoYWR2YW5jZSA+IDAgJiYgcXAgKyBhZHZhbmNlIDwgZXApCi0JCQkJcXAgKz0gYWR2YW5jZTsKLQkJCWVsc2UgewotCQkJCWhfZXJybm8gPSBORVREQl9JTlRFUk5BTDsKLQkJCQlyZXR1cm4gTlNfTk9URk9VTkQ7Ci0JCQl9Ci0JCX0KLQkJaWYgKHN0cmxjYXQocWJ1ZiwgImlwNi5hcnBhIiwgc2l6ZW9mKHFidWYpKSA+PSBzaXplb2YocWJ1ZikpIHsKLQkJCWhfZXJybm8gPSBORVREQl9JTlRFUk5BTDsKLQkJCXJldHVybiBOU19OT1RGT1VORDsKLQkJfQotCQlicmVhazsKLQlkZWZhdWx0OgotCQlhYm9ydCgpOwotCX0KLQotCWJ1ZiA9IG1hbGxvYyhzaXplb2YoKmJ1ZikpOwotCWlmIChidWYgPT0gTlVMTCkgewotCQloX2Vycm5vID0gTkVUREJfSU5URVJOQUw7Ci0JCXJldHVybiBOU19OT1RGT1VORDsKLQl9Ci0JcmVzID0gX19yZXNfZ2V0X3N0YXRlKCk7Ci0JaWYgKHJlcyA9PSBOVUxMKSB7Ci0JCWZyZWUoYnVmKTsKLQkJcmV0dXJuIE5TX05PVEZPVU5EOwotCX0KLQlyZXNfc2V0bmV0aWQocmVzLCBuZXRpZCk7Ci0JcmVzX3NldG1hcmsocmVzLCBtYXJrKTsKLQluID0gcmVzX25xdWVyeShyZXMsIHFidWYsIENfSU4sIFRfUFRSLCBidWYtPmJ1Ziwgc2l6ZW9mKGJ1Zi0+YnVmKSk7Ci0JaWYgKG4gPCAwKSB7Ci0JCWZyZWUoYnVmKTsKLQkJZHByaW50ZigicmVzX25xdWVyeSBmYWlsZWQgKCVkKVxuIiwgcmVzLCBuKTsKLQkJX19yZXNfcHV0X3N0YXRlKHJlcyk7Ci0JCXJldHVybiBOU19OT1RGT1VORDsKLQl9Ci0JaHAgPSBnZXRhbnN3ZXIoYnVmLCBuLCBxYnVmLCBUX1BUUiwgcmVzKTsKLQlmcmVlKGJ1Zik7Ci0JaWYgKGhwID09IE5VTEwpIHsKLQkJX19yZXNfcHV0X3N0YXRlKHJlcyk7Ci0JCXN3aXRjaCAoaF9lcnJubykgewotCQljYXNlIEhPU1RfTk9UX0ZPVU5EOgotCQkJcmV0dXJuIE5TX05PVEZPVU5EOwotCQljYXNlIFRSWV9BR0FJTjoKLQkJCXJldHVybiBOU19UUllBR0FJTjsKLQkJZGVmYXVsdDoKLQkJCXJldHVybiBOU19VTkFWQUlMOwotCQl9Ci0JfQotCWhwLT5oX2FkZHJ0eXBlID0gYWY7Ci0JaHAtPmhfbGVuZ3RoID0gbGVuOwotCSh2b2lkKW1lbWNweShycy0+aG9zdF9hZGRyLCB1YWRkciwgKHNpemVfdClsZW4pOwotCXJzLT5oX2FkZHJfcHRyc1swXSA9IChjaGFyICopKHZvaWQgKilycy0+aG9zdF9hZGRyOwotCXJzLT5oX2FkZHJfcHRyc1sxXSA9IE5VTEw7Ci0JaWYgKGFmID09IEFGX0lORVQgJiYgKHJlcy0+b3B0aW9ucyAmIFJFU19VU0VfSU5FVDYpKSB7Ci0JCW1hcF92NHY2X2FkZHJlc3MoKGNoYXIgKikodm9pZCAqKXJzLT5ob3N0X2FkZHIsCi0JCSAgICAoY2hhciAqKSh2b2lkICopcnMtPmhvc3RfYWRkcik7Ci0JCWhwLT5oX2FkZHJ0eXBlID0gQUZfSU5FVDY7Ci0JCWhwLT5oX2xlbmd0aCA9IElONkFERFJTWjsKLQl9Ci0KLQlfX3Jlc19wdXRfc3RhdGUocmVzKTsKLQkqKChzdHJ1Y3QgaG9zdGVudCAqKilydikgPSBocDsKLQloX2Vycm5vID0gTkVUREJfU1VDQ0VTUzsKLQlyZXR1cm4gTlNfU1VDQ0VTUzsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvZG5zL2luY2x1ZGUvaG9zdGVudC5oIGIvbGliYy9kbnMvaW5jbHVkZS9ob3N0ZW50LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGI5YTYzNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvZG5zL2luY2x1ZGUvaG9zdGVudC5oCkBAIC0wLDAgKzEsOTMgQEAKKy8qCSROZXRCU0Q6IGhvc3RlbnQuaCx2IDEuMiAyMDEzLzA4LzI3IDA5OjU2OjEyIGNocmlzdG9zIEV4cCAkCSovCisKKy8qLQorICogQ29weXJpZ2h0IChjKSAyMDEzIFRoZSBOZXRCU0QgRm91bmRhdGlvbiwgSW5jLgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBUaGlzIGNvZGUgaXMgZGVyaXZlZCBmcm9tIHNvZnR3YXJlIGNvbnRyaWJ1dGVkIHRvIFRoZSBOZXRCU0QgRm91bmRhdGlvbgorICogYnkgQ2hyaXN0b3MgWm91bGFzLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIE5FVEJTRCBGT1VOREFUSU9OLCBJTkMuIEFORCBDT05UUklCVVRPUlMKKyAqIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRAorICogVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgRk9VTkRBVElPTiBPUiBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKKyAqIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisjaWZuZGVmIF9ETlNfTkVUX0hPU1RFTlRfSAorI2RlZmluZSBfRE5TX05FVF9IT1NURU5UX0gKKworI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8bmV0ZGIuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKworLyoKKyAqIFRoZXNlIGFyZSBub3QgYmVpbmcgYWR2ZXJ0aXNlZCBiZWNhdXNlIHRoZSBpbnRlcmZhY2VzIGFyZSBub24tc3RhbmRhcmQuCisgKiBUaGVyZSBhcmUgdmVyc2lvbnMgYnkgbGludXgsIGFpeCwgcW54LCBzdW4sIGV0Yy4gT3VyIHZlcnNpb25zIGFyZSB1c2VkCisgKiBpbnRlcm5hbGx5IHRvIHByb3ZpZGUgdGhyZWFkIHNhZmV0eTsgdGhleSBtb3N0bHkgcmVzZW1ibGUgcW54LgorICovCit2b2lkIHNldGhvc3RlbnRfcihGSUxFICoqKTsKK3N0cnVjdCBob3N0ZW50CSpuZXRic2RfZ2V0aG9zdGVudF9yKEZJTEUgKiwgc3RydWN0IGhvc3RlbnQgKiwgY2hhciAqLCBzaXplX3QsIGludCAqKTsKK3ZvaWQgZW5kaG9zdGVudF9yKEZJTEUgKiopOworCisvKgorICogVGhlIGZvbGxvd2luZyBhcmUgaW50ZXJuYWwgQVBJJ3MgYW5kIGFyZSB1c2VkIG9ubHkgZm9yIHRlc3RpbmcuCisgKi8KK3N0cnVjdCBnZXRuYW1hZGRyIHsKKwlzdHJ1Y3QgaG9zdGVudCAqaHA7CisJY2hhciAqYnVmOworCXNpemVfdCBidWZsZW47CisJaW50ICpoZTsKK307CisKKy8qIC9ldGMvaG9zdHMgbG9va3VwICovCitpbnQgX2hmX2dldGh0YnlhZGRyKHZvaWQgKiwgdm9pZCAqLCB2YV9saXN0KTsKK2ludCBfaGZfZ2V0aHRieW5hbWUodm9pZCAqLCB2b2lkICosIHZhX2xpc3QpOworCisjaWZkZWYgWVAKKy8qIE5JUyBsb29rdXAgKi8KK2ludCBfeXBfZ2V0aHRieWFkZHIodm9pZCAqLCB2b2lkICosIHZhX2xpc3QpOworaW50IF95cF9nZXRodGJ5bmFtZSh2b2lkICosIHZvaWQgKiwgdmFfbGlzdCk7CisjZW5kaWYKKworI2RlZmluZSBIRU5UX0FSUkFZKGRzdCwgYW51bSwgcHRyLCBsZW4pIFwKKwlkbyB7IFwKKwkJc2l6ZV90IF9sZW4gPSAoYW51bSArIDEpICogc2l6ZW9mKCpkc3QpOyBcCisJCWlmIChfbGVuID4gbGVuKSBcCisJCQlnb3RvIG5vc3BjOyBcCisJCWRzdCA9ICh2b2lkICopcHRyOyBcCisJCXB0ciArPSBfbGVuOyBcCisJCWxlbiAtPSBfbGVuOyBcCisJfSB3aGlsZSAoLypDT05TVENPTkQqLzApCisKKyNkZWZpbmUgSEVOVF9DT1BZKGRzdCwgc3JjLCBzbGVuLCBwdHIsIGxlbikgXAorCWRvIHsgXAorCQlpZiAoKHNpemVfdClzbGVuID4gbGVuKSBcCisJCQlnb3RvIG5vc3BjOyBcCisJCW1lbWNweShwdHIsIHNyYywgKHNpemVfdClzbGVuKTsgXAorCQlkc3QgPSBwdHI7IFwKKwkJcHRyICs9IHNsZW47IFwKKwkJbGVuIC09IHNsZW47IFwKKwl9IHdoaWxlICgvKiBDT05TVENPTkQgKi8wKQorCisjZGVmaW5lIEhFTlRfU0NPUFkoZHN0LCBzcmMsIHB0ciwgbGVuKSBcCisJZG8geyBcCisJCXNpemVfdCBfbGVuID0gc3RybGVuKHNyYykgKyAxOyBcCisJCUhFTlRfQ09QWShkc3QsIHNyYywgX2xlbiwgcHRyLCBsZW4pOyBcCisJfSB3aGlsZSAoLyogQ09OU1RDT05EICovMCkKKworI2VuZGlmIC8qIF9ETlNfTkVUX0hPU1RFTlRfSCAqLwpkaWZmIC0tZ2l0IGEvbGliYy9kbnMvaW5jbHVkZS9yZXNvbHZfbmV0aWQuaCBiL2xpYmMvZG5zL2luY2x1ZGUvcmVzb2x2X25ldGlkLmgKaW5kZXggZTU1MjFiOC4uMWQwZjg2OSAxMDA2NDQKLS0tIGEvbGliYy9kbnMvaW5jbHVkZS9yZXNvbHZfbmV0aWQuaAorKysgYi9saWJjL2Rucy9pbmNsdWRlL3Jlc29sdl9uZXRpZC5oCkBAIC0zNCw2ICszNCw3IEBACiAgKi8KICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KICNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KIAogLyoKICAqIFBhc3NpbmcgTkVUSURfVU5TRVQgYXMgdGhlIG5ldElkIGNhdXNlcyBzeXN0ZW0vbmV0ZC9zZXJ2ZXIvRG5zUHJveHlMaXN0ZW5lci5jcHAgdG8KQEAgLTY4LDkgKzY5LDkgQEAKIGV4dGVybiB2b2lkIF9yZXNvbHZfZGVsZXRlX2NhY2hlX2Zvcl9uZXQodW5zaWduZWQgbmV0aWQpIF9fdXNlZF9pbl9uZXRkOwogCiAvKiBJbnRlcm5hbCB1c2Ugb25seS4gKi8KLXN0cnVjdCBob3N0ZW50ICphbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXRfcHJveHkoY29uc3Qgdm9pZCAqLCBzb2NrbGVuX3QsIGludCAsIHVuc2lnbmVkKTsKLWludCBhbmRyb2lkX2dldG5hbWVpbmZvZm9ybmV0KGNvbnN0IHN0cnVjdCBzb2NrYWRkciAqLCBzb2NrbGVuX3QsIGNoYXIgKiwgc2l6ZV90LCBjaGFyICosIHNpemVfdCwKLQkJIGludCwgdW5zaWduZWQsIHVuc2lnbmVkKTsKK3N0cnVjdCBob3N0ZW50ICphbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXRfcHJveHkoY29uc3Qgdm9pZCAqLCBzb2NrbGVuX3QsIGludCAsIHVuc2lnbmVkLCB1bnNpZ25lZCkgX19MSUJDX0hJRERFTl9fOworaW50IGFuZHJvaWRfZ2V0bmFtZWluZm9mb3JuZXQoY29uc3Qgc3RydWN0IHNvY2thZGRyICosIHNvY2tsZW5fdCwgY2hhciAqLCBzaXplX3QsIGNoYXIgKiwgc2l6ZV90LCBpbnQsIHVuc2lnbmVkLCB1bnNpZ25lZCkgX19MSUJDX0hJRERFTl9fOworRklMRSogYW5kcm9pZF9vcGVuX3Byb3h5KHZvaWQpIF9fTElCQ19ISURERU5fXzsKIAogLyogZGVsZXRlIHRoZSBjYWNoZSBhc3NvY2lhdGVkIHdpdGggYSBjZXJ0YWluIG5ldHdvcmsgKi8KIGV4dGVybiB2b2lkIF9yZXNvbHZfZGVsZXRlX2NhY2hlX2Zvcl9uZXQodW5zaWduZWQgbmV0aWQpOwpkaWZmIC0tZ2l0IGEvbGliYy9kbnMvaW5jbHVkZS9yZXNvbHZfcHJpdmF0ZS5oIGIvbGliYy9kbnMvaW5jbHVkZS9yZXNvbHZfcHJpdmF0ZS5oCmluZGV4IGE5MWE0YjguLjBkYWIzZDggMTAwNjQ0Ci0tLSBhL2xpYmMvZG5zL2luY2x1ZGUvcmVzb2x2X3ByaXZhdGUuaAorKysgYi9saWJjL2Rucy9pbmNsdWRlL3Jlc29sdl9wcml2YXRlLmgKQEAgLTYzLDYgKzYzLDEzIEBACiAvKiBEZXNwaXRlIHRoaXMgZmlsZSdzIG5hbWUsIGl0J3MgcGFydCBvZiBsaWJyZXNvbHYuIE9uIEFuZHJvaWQsIHRoYXQgbWVhbnMgaXQncyBwYXJ0IG9mIGxpYmMgOi0oICovCiAjcHJhZ21hIEdDQyB2aXNpYmlsaXR5IHB1c2goZGVmYXVsdCkKIAorLy8gTGludXggZGVmaW5lcyBNQVhIT1NUTkFNRUxFTiBhcyA2NCwgd2hpbGUgdGhlIGRvbWFpbiBuYW1lIGxpbWl0IGluCisvLyBSRkMgMTAzNCBhbmQgUkZDIDEwMzUgaXMgMjU1IG9jdGV0cy4KKyNpZmRlZiBNQVhIT1NUTkFNRUxFTgorI3VuZGVmIE1BWEhPU1ROQU1FTEVOCisjZW5kaWYKKyNkZWZpbmUgTUFYSE9TVE5BTUVMRU4gMjU2CisKIC8qCiAgKiBSZXZpc2lvbiBpbmZvcm1hdGlvbi4gIFRoaXMgaXMgdGhlIHJlbGVhc2UgZGF0ZSBpbiBZWVlZTU1ERCBmb3JtYXQuCiAgKiBJdCBjYW4gY2hhbmdlIGV2ZXJ5IGRheSBzbyB0aGUgcmlnaHQgdGhpbmcgdG8gZG8gd2l0aCBpdCBpcyB1c2UgaXQKQEAgLTQyNiw3ICs0MzMsNyBAQAogaW50CQliNjRfcHRvbihjaGFyIGNvbnN0ICosIHVfY2hhciAqLCBzaXplX3QpOwogI2VuZGlmCiBpbnQJCWxvY19hdG9uKGNvbnN0IGNoYXIgKiwgdV9jaGFyICopOwotY29uc3QgY2hhciAqCWxvY19udG9hKGNvbnN0IHVfY2hhciAqLCBjaGFyICopOworY29uc3QgY2hhciAqCWxvY19udG9hKGNvbnN0IHVfY2hhciAqLCBjaGFyICosIHNpemVfdCk7CiBpbnQJCWRuX3NraXBuYW1lKGNvbnN0IHVfY2hhciAqLCBjb25zdCB1X2NoYXIgKik7CiB2b2lkCQlwdXRsb25nKHVpbnQzMl90LCB1X2NoYXIgKik7CiB2b2lkCQlwdXRzaG9ydCh1aW50MTZfdCwgdV9jaGFyICopOwpkaWZmIC0tZ2l0IGEvbGliYy9kbnMvbmFtZXNlci9uc19uYW1lLmMgYi9saWJjL2Rucy9uYW1lc2VyL25zX25hbWUuYwppbmRleCBlMzc1OWFiLi4zYTIwMmMxIDEwMDY0NAotLS0gYS9saWJjL2Rucy9uYW1lc2VyL25zX25hbWUuYworKysgYi9saWJjL2Rucy9uYW1lc2VyL25zX25hbWUuYwpAQCAtNDMsMTIgKzQzLDYgQEAKICNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNsdWRlIDxsaW1pdHMuaD4KIAotI2lmZGVmIFNQUklOVEZfQ0hBUgotIyBkZWZpbmUgU1BSSU5URih4KSAoKGludClzdHJsZW4oc3ByaW50Zi8qKi94KSkKLSNlbHNlCi0jIGRlZmluZSBTUFJJTlRGKHgpIChzcHJpbnRmIHgpCi0jZW5kaWYKLQogI2RlZmluZSBOU19UWVBFX0VMVAkJCTB4NDAgLyogRUROUzAgZXh0ZW5kZWQgbGFiZWwgdHlwZSAqLwogI2RlZmluZSBETlNfTEFCRUxUWVBFX0JJVFNUUklORwkJMHg0MQogCkBAIC0xMDEyLDMxICsxMDA2LDMxIEBACiAJCXJldHVybigtMSk7CiAKIAljcCsrOwotCWkgPSBTUFJJTlRGKChkbiwgIlxcW3giKSk7CisJaSA9IHNucHJpbnRmKGRuLCBlb20gLSBkbiwgIlxcW3giKTsKIAlpZiAoaSA8IDApCiAJCXJldHVybiAoLTEpOwogCWRuICs9IGk7CiAJZm9yIChiID0gYmxlbjsgYiA+IDc7IGIgLT0gOCwgY3ArKykgewotCQlpID0gU1BSSU5URigoZG4sICIlMDJ4IiwgKmNwICYgMHhmZikpOworCQlpID0gc25wcmludGYoZG4sIGVvbSAtIGRuLCAiJTAyeCIsICpjcCAmIDB4ZmYpOwogCQlpZiAoaSA8IDApCiAJCQlyZXR1cm4gKC0xKTsKIAkJZG4gKz0gaTsKIAl9CiAJaWYgKGIgPiA0KSB7CiAJCXRjID0gKmNwKys7Ci0JCWkgPSBTUFJJTlRGKChkbiwgIiUwMngiLCB0YyAmICgweGZmIDw8ICg4IC0gYikpKSk7CisJCWkgPSBzbnByaW50ZihkbiwgZW9tIC0gZG4sICIlMDJ4IiwgdGMgJiAoMHhmZiA8PCAoOCAtIGIpKSk7CiAJCWlmIChpIDwgMCkKIAkJCXJldHVybiAoLTEpOwogCQlkbiArPSBpOwogCX0gZWxzZSBpZiAoYiA+IDApIHsKIAkJdGMgPSAqY3ArKzsKLQkJaSA9IFNQUklOVEYoKGRuLCAiJTF4IiwKLQkJCSAgICAgICAoKCh1X2ludDMyX3QpdGMgPj4gNCkgJiAweDBmKSAmICgweDBmIDw8ICg0IC0gYikpKSk7CisJCWkgPSBzbnByaW50ZihkbiwgZW9tIC0gZG4sICIlMXgiLAorCQkJICAgICAgICgoKHVfaW50MzJfdCl0YyA+PiA0KSAmIDB4MGYpICYgKDB4MGYgPDwgKDQgLSBiKSkpOwogCQlpZiAoaSA8IDApCiAJCQlyZXR1cm4gKC0xKTsKIAkJZG4gKz0gaTsKIAl9Ci0JaSA9IFNQUklOVEYoKGRuLCAiLyVkXSIsIGJsZW4pKTsKKwlpID0gc25wcmludGYoZG4sIGVvbSAtIGRuLCAiLyVkXSIsIGJsZW4pOwogCWlmIChpIDwgMCkKIAkJcmV0dXJuICgtMSk7CiAJZG4gKz0gaTsKZGlmZiAtLWdpdCBhL2xpYmMvZG5zL25hbWVzZXIvbnNfcHJpbnQuYyBiL2xpYmMvZG5zL25hbWVzZXIvbnNfcHJpbnQuYwppbmRleCAwYTZhMWQ2Li4zMmM4NzE1IDEwMDY0NAotLS0gYS9saWJjL2Rucy9uYW1lc2VyL25zX3ByaW50LmMKKysrIGIvbGliYy9kbnMvbmFtZXNlci9uc19wcmludC5jCkBAIC00OCwxMiArNDgsNiBAQAogI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPGN0eXBlLmg+CiAKLSNpZmRlZiBTUFJJTlRGX0NIQVIKLSMgZGVmaW5lIFNQUklOVEYoeCkgKChpbnQpc3RybGVuKHNwcmludGYvKioveCkpCi0jZWxzZQotIyBkZWZpbmUgU1BSSU5URih4KSAoc3ByaW50ZiB4KQotI2VuZGlmCi0KICNpZm5kZWYgTUlOCiAjZGVmaW5lCU1JTih4LHkpCSgoeCk8KHkpPyh4KTooeSkpCiAjZW5kaWYKQEAgLTE1NSw3ICsxNDksNyBAQAogCSAqLwogCVQoeCA9IG5zX2Zvcm1hdF90dGwodHRsLCBidWYsIGJ1ZmxlbikpOwogCWFkZGxlbigoc2l6ZV90KXgsICZidWYsICZidWZsZW4pOwotCWxlbiA9IFNQUklOVEYoKHRtcCwgIiAlcyAlcyIsIHBfY2xhc3MoY2xhc3MpLCBwX3R5cGUodHlwZSkpKTsKKwlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiICVzICVzIiwgcF9jbGFzcyhjbGFzcyksIHBfdHlwZSh0eXBlKSk7CiAJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCVQoc3BhY2VkID0gYWRkdGFiKChzaXplX3QpKHggKyBsZW4pLCAoc2l6ZV90KTE2LCBzcGFjZWQsICZidWYsICZidWZsZW4pKTsKIApAQCAtMjE4LDcgKzIxMiw3IEBACiAJCS8qIFNlcmlhbCBudW1iZXIuICovCiAJCXQgPSBuc19nZXQzMihyZGF0YSk7ICByZGF0YSArPSBOU19JTlQzMlNaOwogCQlUKGFkZHN0cigiXHRcdFx0XHRcdCIsIChzaXplX3QpNSwgJmJ1ZiwgJmJ1ZmxlbikpOwotCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIlbHUiLCB0KSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIlbHUiLCB0KTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlUKHNwYWNlZCA9IGFkZHRhYigoc2l6ZV90KWxlbiwgKHNpemVfdCkxNiwgc3BhY2VkLCAmYnVmLCAmYnVmbGVuKSk7CiAJCVQoYWRkc3RyKCI7IHNlcmlhbFxuIiwgKHNpemVfdCk5LCAmYnVmLCAmYnVmbGVuKSk7CkBAIC0yNzUsNyArMjY5LDcgQEAKIAkJLyogUHJpb3JpdHkuICovCiAJCXQgPSBuc19nZXQxNihyZGF0YSk7CiAJCXJkYXRhICs9IE5TX0lOVDE2U1o7Ci0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiV1ICIsIHQpKTsKKwkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiV1ICIsIHQpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAKIAkJLyogVGFyZ2V0LiAqLwpAQCAtMjkzLDcgKzI4Nyw3IEBACiAJCS8qIFByaW9yaXR5LiAqLwogCQl0ID0gbnNfZ2V0MTYocmRhdGEpOwogCQlyZGF0YSArPSBOU19JTlQxNlNaOwotCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIldSAiLCB0KSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIldSAiLCB0KTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCiAJCS8qIE5hbWUxLiAqLwpAQCAtMzQ0LDcgKzMzOCw3IEBACiAJCWNoYXIgdFsyNTVdOwogCiAJCS8qIFhYWCBwcm90b2NvbCBmb3JtYXQgY2hlY2tpbmc/ICovCi0JCSh2b2lkKSBsb2NfbnRvYShyZGF0YSwgdCk7CisJCSh2b2lkKSBsb2NfbnRvYShyZGF0YSwgdCwgc2l6ZW9mKHQpKTsKIAkJVChhZGRzdHIodCwgc3RybGVuKHQpLCAmYnVmLCAmYnVmbGVuKSk7CiAJCWJyZWFrOwogCSAgICB9CkBAIC0zNTksNyArMzUzLDcgQEAKIAkJLyogT3JkZXIsIFByZWNlZGVuY2UuICovCiAJCW9yZGVyID0gbnNfZ2V0MTYocmRhdGEpOwlyZGF0YSArPSBOU19JTlQxNlNaOwogCQlwcmVmZXJlbmNlID0gbnNfZ2V0MTYocmRhdGEpOwlyZGF0YSArPSBOU19JTlQxNlNaOwotCQlsZW4gPSBTUFJJTlRGKCh0LCAiJXUgJXUgIiwgb3JkZXIsIHByZWZlcmVuY2UpKTsKKwkJbGVuID0gc25wcmludGYodCwgc2l6ZW9mKHQpLCAiJXUgJXUgIiwgb3JkZXIsIHByZWZlcmVuY2UpOwogCQlUKGFkZHN0cih0LCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCiAJCS8qIEZsYWdzLiAqLwpAQCAtNDAxLDcgKzM5NSw3IEBACiAJCXByaW9yaXR5ID0gbnNfZ2V0MTYocmRhdGEpOyAgcmRhdGEgKz0gTlNfSU5UMTZTWjsKIAkJd2VpZ2h0ICAgPSBuc19nZXQxNihyZGF0YSk7ICByZGF0YSArPSBOU19JTlQxNlNaOwogCQlwb3J0ICAgICA9IG5zX2dldDE2KHJkYXRhKTsgIHJkYXRhICs9IE5TX0lOVDE2U1o7Ci0JCWxlbiA9IFNQUklOVEYoKHQsICIldSAldSAldSAiLCBwcmlvcml0eSwgd2VpZ2h0LCBwb3J0KSk7CisJCWxlbiA9IHNucHJpbnRmKHQsIHNpemVvZih0KSwgIiV1ICV1ICV1ICIsIHByaW9yaXR5LCB3ZWlnaHQsIHBvcnQpOwogCQlUKGFkZHN0cih0LCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCiAJCS8qIFNlcnZlci4gKi8KQEAgLTQzMiw3ICs0MjYsNyBAQAogCQlyZGF0YSArPSBOU19JTkFERFJTWjsKIAogCQkvKiBQcm90b2NvbC4gKi8KLQkJbGVuID0gU1BSSU5URigodG1wLCAiICV1ICggIiwgKnJkYXRhKSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIgJXUgKCAiLCAqcmRhdGEpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCXJkYXRhICs9IE5TX0lOVDhTWjsKIApAQCAtNDQ5LDcgKzQ0Myw3IEBACiAJCQkJCQlsY250ID0gMTA7CiAJCQkJCQlzcGFjZWQgPSAwOwogCQkJCQl9Ci0JCQkJCWxlbiA9IFNQUklOVEYoKHRtcCwgIiVkICIsIG4pKTsKKwkJCQkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiVkICIsIG4pOwogCQkJCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCQkJCWxjbnQtLTsKIAkJCQl9CkBAIC00ODAsOCArNDc0LDggQEAKIAkJa2V5ZmxhZ3MgPSBuc19nZXQxNihyZGF0YSk7ICByZGF0YSArPSBOU19JTlQxNlNaOwogCQlwcm90b2NvbCA9ICpyZGF0YSsrOwogCQlhbGdvcml0aG0gPSAqcmRhdGErKzsKLQkJbGVuID0gU1BSSU5URigodG1wLCAiMHglMDR4ICV1ICV1IiwKLQkJCSAgICAgICBrZXlmbGFncywgcHJvdG9jb2wsIGFsZ29yaXRobSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiMHglMDR4ICV1ICV1IiwKKwkJCSAgICAgICBrZXlmbGFncywgcHJvdG9jb2wsIGFsZ29yaXRobSk7CiAJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAogCQkvKiBQdWJsaWMga2V5IGRhdGEuICovCkBAIC01MDIsNyArNDk2LDcgQEAKIAkJfQogCQlpZiAobGVuID4gMTUpCiAJCQlUKGFkZHN0cigiICkiLCAoc2l6ZV90KTIsICZidWYsICZidWZsZW4pKTsKLQkJbiA9IFNQUklOVEYoKHRtcCwgIiA7IGtleV90YWc9ICV1Iiwga2V5X2lkKSk7CisJCW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiIDsga2V5X3RhZz0gJXUiLCBrZXlfaWQpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCiAJCWJyZWFrOwpAQCAtNTI0LDI1ICs1MTgsMjUgQEAKIAkJYWxnb3JpdGhtID0gKnJkYXRhKys7CiAJCWxhYmVscyA9ICpyZGF0YSsrOwogCQl0ID0gbnNfZ2V0MzIocmRhdGEpOyAgcmRhdGEgKz0gTlNfSU5UMzJTWjsKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJXMgJWQgJWQgJWx1ICIsCi0JCQkgICAgICAgcF90eXBlKChpbnQpdHlwKSwgYWxnb3JpdGhtLCBsYWJlbHMsIHQpKTsKKwkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiVzICVkICVkICVsdSAiLAorCQkJICAgICAgIHBfdHlwZSgoaW50KXR5cCksIGFsZ29yaXRobSwgbGFiZWxzLCB0KTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlpZiAobGFiZWxzID4gKHVfaW50KWRuX2NvdW50X2xhYmVscyhuYW1lKSkKIAkJCWdvdG8gZm9ybWVycjsKIAogCQkvKiBTaWduYXR1cmUgZXhwaXJ5LiAqLwogCQl0ID0gbnNfZ2V0MzIocmRhdGEpOyAgcmRhdGEgKz0gTlNfSU5UMzJTWjsKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJXMgIiwgcF9zZWNzdG9kYXRlKHQpKSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIlcyAiLCBwX3NlY3N0b2RhdGUodCkpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAKIAkJLyogVGltZSBzaWduZWQuICovCiAJCXQgPSBuc19nZXQzMihyZGF0YSk7ICByZGF0YSArPSBOU19JTlQzMlNaOwotCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIlcyAiLCBwX3NlY3N0b2RhdGUodCkpKTsKKwkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiVzICIsIHBfc2Vjc3RvZGF0ZSh0KSk7CiAJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAogCQkvKiBTaWduYXR1cmUgRm9vdHByaW50LiAqLwogCQlmb290cHJpbnQgPSBuc19nZXQxNihyZGF0YSk7ICByZGF0YSArPSBOU19JTlQxNlNaOwotCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIldSAiLCBmb290cHJpbnQpKTsKKwkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiV1ICIsIGZvb3RwcmludCk7CiAJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAogCQkvKiBTaWduZXIncyBuYW1lLiAqLwpAQCAtNTc5LDcgKzU3Myw3IEBACiAJCW4gPSBlZGF0YSAtIHJkYXRhOwogCQlmb3IgKGMgPSAwOyBjIDwgbio4OyBjKyspCiAJCQlpZiAoTlNfTlhUX0JJVF9JU1NFVChjLCByZGF0YSkpIHsKLQkJCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIgJXMiLCBwX3R5cGUoKGludCljKSkpOworCQkJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIgJXMiLCBwX3R5cGUoKGludCljKSk7CiAJCQkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQkJfQogCQlicmVhazsKQEAgLTU5Niw3ICs1OTAsNyBAQAogCQlrZXlfdGFnID0gbnNfZ2V0MTYocmRhdGEpOyByZGF0YSArPSBOU19JTlQxNlNaOwogCQlhbGcgPSAodV9pbnQpICpyZGF0YSsrOwogCi0JCWxlbiA9IFNQUklOVEYoKHRtcDEsICIlZCAlZCAlZCAiLCBjX3R5cGUsIGtleV90YWcsIGFsZykpOworCQlsZW4gPSBzbnByaW50Zih0bXAxLCBzaXplb2YodG1wMSksICIlZCAlZCAlZCAiLCBjX3R5cGUsIGtleV90YWcsIGFsZyk7CiAJCVQoYWRkc3RyKHRtcDEsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCXNpeiA9IChlZGF0YS1yZGF0YSkqNC8zICsgNDsgLyogIis0IiBhY2NvdW50cyBmb3IgdHJhaWxpbmcgXDAgKi8KIAkJaWYgKHNpeiA+IHNpemVvZihiYXNlNjRfY2VydCkgKiAzLzQpIHsKQEAgLTY0MCwxMiArNjM0LDEyIEBACiAKIAkJLyogSW5jZXB0aW9uLiAqLwogCQl0ID0gbnNfZ2V0MzIocmRhdGEpOyAgcmRhdGEgKz0gTlNfSU5UMzJTWjsKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJXMgIiwgcF9zZWNzdG9kYXRlKHQpKSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIlcyAiLCBwX3NlY3N0b2RhdGUodCkpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAKIAkJLyogRXhwZXJhdGlvbi4gKi8KIAkJdCA9IG5zX2dldDMyKHJkYXRhKTsgIHJkYXRhICs9IE5TX0lOVDMyU1o7Ci0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiVzICIsIHBfc2Vjc3RvZGF0ZSh0KSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXMgIiwgcF9zZWNzdG9kYXRlKHQpKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCiAJCS8qIE1vZGUgLCBFcnJvciwgS2V5IFNpemUuICovCkBAIC02NTMsNyArNjQ3LDcgQEAKIAkJbW9kZSA9IG5zX2dldDE2KHJkYXRhKTsgIHJkYXRhICs9IE5TX0lOVDE2U1o7CiAJCWVyciAgPSBuc19nZXQxNihyZGF0YSk7ICByZGF0YSArPSBOU19JTlQxNlNaOwogCQlrZXlzaXplICA9IG5zX2dldDE2KHJkYXRhKTsgIHJkYXRhICs9IE5TX0lOVDE2U1o7Ci0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiV1ICV1ICV1ICIsIG1vZGUsIGVyciwga2V5c2l6ZSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXUgJXUgJXUgIiwgbW9kZSwgZXJyLCBrZXlzaXplKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCiAJCS8qIFhYWCBuZWVkIHRvIGR1bXAga2V5LCBwcmludCBvdGhlcmRhdGEgbGVuZ3RoICYgb3RoZXIgZGF0YSAqLwpAQCAtNjcwLDcgKzY2NCw3IEBACiAJCW4gPSBuc19nZXQxNihyZGF0YSk7IHJkYXRhICs9IElOVDE2U1o7CiAJCXJkYXRhICs9IG47IC8qIHNpZyAqLwogCQluID0gbnNfZ2V0MTYocmRhdGEpOyByZGF0YSArPSBJTlQxNlNaOyAvKiBvcmlnaW5hbCBpZCAqLwotCQlzcHJpbnRmKGJ1ZiwgIiVkIiwgbnNfZ2V0MTYocmRhdGEpKTsKKwkJc25wcmludGYoYnVmLCBidWZsZW4sICIlZCIsIG5zX2dldDE2KHJkYXRhKSk7CiAJCXJkYXRhICs9IElOVDE2U1o7CiAJCWFkZGxlbihzdHJsZW4oYnVmKSwgJmJ1ZiwgJmJ1Zmxlbik7CiAJCWJyZWFrOwpAQCAtNjgyLDcgKzY3Niw3IEBACiAKIAkJLyogcHJlZml4IGxlbmd0aCAqLwogCQlpZiAocmRsZW4gPT0gMFUpIGdvdG8gZm9ybWVycjsKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJWQgIiwgKnJkYXRhKSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIlZCAiLCAqcmRhdGEpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCXBiaXQgPSAqcmRhdGE7CiAJCWlmIChwYml0ID4gMTI4KSBnb3RvIGZvcm1lcnI7CkBAIC03MTAsNyArNzA0LDcgQEAKIAkgICAgfQogCiAJY2FzZSBuc190X29wdDogewotCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIldSBieXRlcyIsIGNsYXNzKSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIldSBieXRlcyIsIGNsYXNzKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlicmVhazsKIAkgICAgfQpAQCAtNzI0LDIxICs3MTgsMjEgQEAKIAkJCWlmIChyZGxlbiA8IDRVKSBnb3RvIGZvcm1lcnI7CiAJCQl0ID0gbnNfZ2V0MTYocmRhdGEpOwogCQkJcmRhdGEgKz0gTlNfSU5UMTZTWjsKLQkJCWxlbiA9IFNQUklOVEYoKHRtcCwgIiV1ICIsIHQpKTsKKwkJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIldSAiLCB0KTsKIAkJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAkJfSBlbHNlCiAJCQlpZiAocmRsZW4gPCAyVSkgZ290byBmb3JtZXJyOwogCi0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiV1ICIsICpyZGF0YSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXUgIiwgKnJkYXRhKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlyZGF0YSsrOwogCi0JCWxlbiA9IFNQUklOVEYoKHRtcCwgIiV1ICIsICpyZGF0YSkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXUgIiwgKnJkYXRhKTsKIAkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQlyZGF0YSsrOwogCiAJCXdoaWxlIChyZGF0YSA8IGVkYXRhKSB7Ci0JCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIlMDJYIiwgKnJkYXRhKSk7CisJCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJTAyWCIsICpyZGF0YSk7CiAJCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCQlyZGF0YSsrOwogCQl9CkBAIC03NDksMTcgKzc0MywxNyBAQAogCWNhc2UgbnNfdF9uc2VjM3BhcmFtOiB7CiAJCXVfaW50IHQsIHcsIGwsIGosIGssIGM7CiAKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJXUgIiwgKnJkYXRhKSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIldSAiLCAqcmRhdGEpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCXJkYXRhKys7CiAKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJXUgIiwgKnJkYXRhKSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIldSAiLCAqcmRhdGEpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCXJkYXRhKys7CiAKIAkJdCA9IG5zX2dldDE2KHJkYXRhKTsKIAkJcmRhdGEgKz0gTlNfSU5UMTZTWjsKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJXUgIiwgdCkpOworCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJXUgIiwgdCk7CiAJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAogCQl0ID0gKnJkYXRhKys7CkBAIC03NjcsNyArNzYxLDcgQEAKIAkJCVQoYWRkc3RyKCItIiwgMSwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQl9IGVsc2UgewogCQkJd2hpbGUgKHQtLSA+IDApIHsKLQkJCQlsZW4gPSBTUFJJTlRGKCh0bXAsICIlMDJYIiwgKnJkYXRhKSk7CisJCQkJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIiUwMlgiLCAqcmRhdGEpOwogCQkJCVQoYWRkc3RyKHRtcCwgKHNpemVfdClsZW4sICZidWYsICZidWZsZW4pKTsKIAkJCQlyZGF0YSsrOwogCQkJfQpAQCAtODUxLDcgKzg0NSw3IEBACiAJCQkJCWlmICgocmRhdGFbal0gJiAoMHg4MCA+PiBrKSkgPT0gMCkKIAkJCQkJCWNvbnRpbnVlOwogCQkJCQljID0gdyAqIDI1NiArIGogKiA4ICsgazsKLQkJCQkJbGVuID0gU1BSSU5URigodG1wLCAiICVzIiwgcF90eXBlKChuc190eXBlKWMpKSk7CisJCQkJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIgJXMiLCBwX3R5cGUoKG5zX3R5cGUpYykpOwogCQkJCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCQkJfQogCQkJfQpAQCAtODc1LDcgKzg2OSw3IEBACiAJCQkJCWlmICgocmRhdGFbal0gJiAoMHg4MCA+PiBrKSkgPT0gMCkKIAkJCQkJCWNvbnRpbnVlOwogCQkJCQljID0gdyAqIDI1NiArIGogKiA4ICsgazsKLQkJCQkJbGVuID0gU1BSSU5URigodG1wLCAiICVzIiwgcF90eXBlKChuc190eXBlKWMpKSk7CisJCQkJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIgJXMiLCBwX3R5cGUoKG5zX3R5cGUpYykpOwogCQkJCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCQkJfQogCQkJfQpAQCAtOTQ5LDE1ICs5NDMsMTUgQEAKIAkJCWdvdG8gaGV4aWZ5OwogCQl9CiAKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJXUgIiwgKnJkYXRhKSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIldSAiLCAqcmRhdGEpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCXJkYXRhKys7CiAKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJXUgIiwgKnJkYXRhKSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIldSAiLCAqcmRhdGEpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCXJkYXRhKys7CiAKLQkJbGVuID0gU1BSSU5URigodG1wLCAiJXUgIiwgKnJkYXRhKSk7CisJCWxlbiA9IHNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIldSAiLCAqcmRhdGEpOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJCXJkYXRhKys7CiAKQEAgLTEwMzAsMTEgKzEwMjQsMTEgQEAKIAkJCWNvbnN0IGNoYXIgKnN0ciA9ICJyZWNvcmQgdG9vIGxvbmcgdG8gcHJpbnQiOwogCQkJVChhZGRzdHIoc3RyLCBzdHJsZW4oc3RyKSwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQl9IGVsc2UgewotCQkJbGVuID0gc3ByaW50Zih0bXAsICIoICV1ICIsIGFsZ29yaXRobSk7CisJCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiKCAldSAiLCBhbGdvcml0aG0pOwogCQkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCiAJCQlmb3IgKGkgPSAwOyBpIDwgaGlwX2xlbjsgaSsrKSB7Ci0JCQkJbGVuID0gc3ByaW50Zih0bXAsICIlMDJYIiwgKnJkYXRhKTsKKwkJCQlsZW4gPSBzbnByaW50Zih0bXAsIHNpemVvZih0bXApLCAiJTAyWCIsICpyZGF0YSk7CiAJCQkJVChhZGRzdHIodG1wLCAoc2l6ZV90KWxlbiwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQkJCXJkYXRhKys7CiAJCQl9CkBAIC0xMDY5LDIzICsxMDYzLDIzIEBACiAJaW50IG4sIG07CiAJY2hhciAqcDsKIAotCWxlbiA9IFNQUklOVEYoKHRtcCwgIlxcIyAldSVzXHQ7ICVzIiwgKHVuc2lnbmVkKShlZGF0YSAtIHJkYXRhKSwKLQkJICAgICAgIHJkbGVuICE9IDBVID8gIiAoIiA6ICIiLCBjb21tZW50KSk7CisJbGVuID0gc25wcmludGYodG1wLCBzaXplb2YodG1wKSwgIlxcIyAldSVzXHQ7ICVzIiwgKHVuc2lnbmVkKShlZGF0YSAtIHJkYXRhKSwKKwkJICAgICAgIHJkbGVuICE9IDBVID8gIiAoIiA6ICIiLCBjb21tZW50KTsKIAlUKGFkZHN0cih0bXAsIChzaXplX3QpbGVuLCAmYnVmLCAmYnVmbGVuKSk7CiAJd2hpbGUgKHJkYXRhIDwgZWRhdGEpIHsKIAkJcCA9IHRtcDsKLQkJcCArPSBTUFJJTlRGKChwLCAiXG5cdCIpKTsKKwkJcCArPSBzbnByaW50ZihwLCBzaXplb2YodG1wKSwgIlxuXHQiKTsKIAkJc3BhY2VkID0gMDsKIAkJbiA9IE1JTigxNiwgKGludCkoZWRhdGEgLSByZGF0YSkpOwogCQlmb3IgKG0gPSAwOyBtIDwgbjsgbSsrKQotCQkJcCArPSBTUFJJTlRGKChwLCAiJTAyeCAiLCByZGF0YVttXSkpOworCQkJcCArPSBzbnByaW50ZihwLCBzaXplb2YodG1wKSAtIChwIC0gdG1wKSwgIiUwMnggIiwgcmRhdGFbbV0pOwogCQlUKGFkZHN0cih0bXAsIChzaXplX3QpKHAgLSB0bXApLCAmYnVmLCAmYnVmbGVuKSk7CiAJCWlmIChuIDwgMTYpIHsKIAkJCVQoYWRkc3RyKCIpIiwgKHNpemVfdCkxLCAmYnVmLCAmYnVmbGVuKSk7CiAJCQlUKGFkZHRhYigoc2l6ZV90KShwIC0gdG1wICsgMSksIChzaXplX3QpNDgsIHNwYWNlZCwgJmJ1ZiwgJmJ1ZmxlbikpOwogCQl9CiAJCXAgPSB0bXA7Ci0JCXAgKz0gU1BSSU5URigocCwgIjsgIikpOworCQlwICs9IHNucHJpbnRmKHAsIHNpemVvZih0bXApLCAiOyAiKTsKIAkJZm9yIChtID0gMDsgbSA8IG47IG0rKykKIAkJCSpwKysgPSAoaXNhc2NpaShyZGF0YVttXSkgJiYgaXNwcmludChyZGF0YVttXSkpCiAJCQkJPyByZGF0YVttXQpkaWZmIC0tZ2l0IGEvbGliYy9kbnMvbmFtZXNlci9uc190dGwuYyBiL2xpYmMvZG5zL25hbWVzZXIvbnNfdHRsLmMKaW5kZXggMjM5NWI5OS4uZGUwNzNiOCAxMDA2NDQKLS0tIGEvbGliYy9kbnMvbmFtZXNlci9uc190dGwuYworKysgYi9saWJjL2Rucy9uYW1lc2VyL25zX3R0bC5jCkBAIC0zNiwxMiArMzYsNiBAQAogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAKLSNpZmRlZiBTUFJJTlRGX0NIQVIKLSMgZGVmaW5lIFNQUklOVEYoeCkgc3RybGVuKHNwcmludGYvKioveCkKLSNlbHNlCi0jIGRlZmluZSBTUFJJTlRGKHgpICgoc2l6ZV90KXNwcmludGYgeCkKLSNlbmRpZgotCiAvKiBGb3J3YXJkLiAqLwogCiBzdGF0aWMgaW50CWZtdDEoaW50IHQsIGNoYXIgcywgY2hhciAqKmJ1Ziwgc2l6ZV90ICpidWZsZW4pOwpAQCAtMTU3LDggKzE1MSw4IEBACiAJY2hhciB0bXBbNTBdOwogCXNpemVfdCBsZW47CiAKLQlsZW4gPSBTUFJJTlRGKCh0bXAsICIlZCVjIiwgdCwgcykpOwotCWlmIChsZW4gKyAxID4gKmJ1ZmxlbikKKwlsZW4gPSAoc2l6ZV90KXNucHJpbnRmKHRtcCwgc2l6ZW9mKHRtcCksICIlZCVjIiwgdCwgcyk7CisJaWYgKChpbnQpbGVuIDwgMCB8fCBsZW4gKyAxID4gKmJ1ZmxlbikKIAkJcmV0dXJuICgtMSk7CiAJc3RyY3B5KCpidWYsIHRtcCk7CiAJKmJ1ZiArPSBsZW47CmRpZmYgLS1naXQgYS9saWJjL2Rucy9uZXQvZ2V0YWRkcmluZm8uYyBiL2xpYmMvZG5zL25ldC9nZXRhZGRyaW5mby5jCmluZGV4IDI2MTJkNmEuLmM3M2MwODUgMTAwNjQ0Ci0tLSBhL2xpYmMvZG5zL25ldC9nZXRhZGRyaW5mby5jCisrKyBiL2xpYmMvZG5zL25ldC9nZXRhZGRyaW5mby5jCkBAIC0zMjQsNyArMzI0LDExIEBACiB7CiAJc3RydWN0IGFkZHJpbmZvICpuZXh0OwogCi0JYXNzZXJ0KGFpICE9IE5VTEwpOworI2lmIF9fQU5EUk9JRF9fCisJaWYgKGFpID09IE5VTEwpIHJldHVybjsKKyNlbHNlCisJX0RJQUdBU1NFUlQoYWkgIT0gTlVMTCk7CisjZW5kaWYKIAogCWRvIHsKIAkJbmV4dCA9IGFpLT5haV9uZXh0OwpAQCAtNDA4LDE2ICs0MTIsMjEgQEAKIAlyZXR1cm4gX3Rlc3RfY29ubmVjdChQRl9JTkVULCAmYWRkci5nZW5lcmljLCBzaXplb2YoYWRkci5pbiksIG1hcmspOwogfQogCitib29sIHJlYWRCRTMyKEZJTEUqIGZwLCBpbnQzMl90KiByZXN1bHQpIHsKKyAgaW50MzJfdCB0bXA7CisgIGlmIChmcmVhZCgmdG1wLCBzaXplb2YodG1wKSwgMSwgZnApICE9IDEpIHsKKyAgICByZXR1cm4gZmFsc2U7CisgIH0KKyAgKnJlc3VsdCA9IG50b2hsKHRtcCk7CisgIHJldHVybiB0cnVlOworfQorCiAvLyBSZXR1cm5zIDAgb24gc3VjY2VzcywgZWxzZSByZXR1cm5zIG9uIGVycm9yLgogc3RhdGljIGludAogYW5kcm9pZF9nZXRhZGRyaW5mb19wcm94eSgKICAgICBjb25zdCBjaGFyICpob3N0bmFtZSwgY29uc3QgY2hhciAqc2Vydm5hbWUsCiAgICAgY29uc3Qgc3RydWN0IGFkZHJpbmZvICpoaW50cywgc3RydWN0IGFkZHJpbmZvICoqcmVzLCB1bnNpZ25lZCBuZXRpZCkKIHsKLQlpbnQgc29jazsKLQljb25zdCBpbnQgb25lID0gMTsKLQlzdHJ1Y3Qgc29ja2FkZHJfdW4gcHJveHlfYWRkcjsKLQlGSUxFKiBwcm94eSA9IE5VTEw7CiAJaW50IHN1Y2Nlc3MgPSAwOwogCiAJLy8gQ2xlYXIgdGhpcyBhdCBzdGFydCwgYXMgd2UgdXNlIGl0cyBub24tTlVMTG5lc3MgbGF0ZXIgKGluIHRoZQpAQCAtNDMzLDI3ICs0NDIsMTQgQEAKIAkJcmV0dXJuIEVBSV9OT0RBVEE7CiAJfQogCi0Jc29jayA9IHNvY2tldChBRl9VTklYLCBTT0NLX1NUUkVBTSB8IFNPQ0tfQ0xPRVhFQywgMCk7Ci0JaWYgKHNvY2sgPCAwKSB7Ci0JCXJldHVybiBFQUlfTk9EQVRBOwotCX0KLQotCXNldHNvY2tvcHQoc29jaywgU09MX1NPQ0tFVCwgU09fUkVVU0VBRERSLCAmb25lLCBzaXplb2Yob25lKSk7Ci0JbWVtc2V0KCZwcm94eV9hZGRyLCAwLCBzaXplb2YocHJveHlfYWRkcikpOwotCXByb3h5X2FkZHIuc3VuX2ZhbWlseSA9IEFGX1VOSVg7Ci0Jc3RybGNweShwcm94eV9hZGRyLnN1bl9wYXRoLCAiL2Rldi9zb2NrZXQvZG5zcHJveHlkIiwKLQkJc2l6ZW9mKHByb3h5X2FkZHIuc3VuX3BhdGgpKTsKLQlpZiAoVEVNUF9GQUlMVVJFX1JFVFJZKGNvbm5lY3Qoc29jaywKLQkJCQkgICAgICAgKGNvbnN0IHN0cnVjdCBzb2NrYWRkciopICZwcm94eV9hZGRyLAotCQkJCSAgICAgICBzaXplb2YocHJveHlfYWRkcikpKSAhPSAwKSB7Ci0JCWNsb3NlKHNvY2spOwotCQlyZXR1cm4gRUFJX05PREFUQTsKKwlGSUxFKiBwcm94eSA9IGFuZHJvaWRfb3Blbl9wcm94eSgpOworCWlmIChwcm94eSA9PSBOVUxMKSB7CisJCXJldHVybiBFQUlfU1lTVEVNOwogCX0KIAogCW5ldGlkID0gX19uZXRkQ2xpZW50RGlzcGF0Y2gubmV0SWRGb3JSZXNvbHYobmV0aWQpOwogCiAJLy8gU2VuZCB0aGUgcmVxdWVzdC4KLQlwcm94eSA9IGZkb3Blbihzb2NrLCAicisiKTsKIAlpZiAoZnByaW50Zihwcm94eSwgImdldGFkZHJpbmZvICVzICVzICVkICVkICVkICVkICV1IiwKIAkJICAgIGhvc3RuYW1lID09IE5VTEwgPyAiXiIgOiBob3N0bmFtZSwKIAkJICAgIHNlcnZuYW1lID09IE5VTEwgPyAiXiIgOiBzZXJ2bmFtZSwKQEAgLTQ4Niw2MSArNDgyLDYyIEBACiAJc3RydWN0IGFkZHJpbmZvKiBhaSA9IE5VTEw7CiAJc3RydWN0IGFkZHJpbmZvKiogbmV4dHJlcyA9IHJlczsKIAl3aGlsZSAoMSkgewotCQl1aW50MzJfdCBhZGRyaW5mb19sZW47Ci0JCWlmIChmcmVhZCgmYWRkcmluZm9fbGVuLCBzaXplb2YoYWRkcmluZm9fbGVuKSwKLQkJCSAgMSwgcHJveHkpICE9IDEpIHsKKwkJaW50MzJfdCBoYXZlX21vcmU7CisJCWlmICghcmVhZEJFMzIocHJveHksICZoYXZlX21vcmUpKSB7CiAJCQlicmVhazsKIAkJfQotCQlhZGRyaW5mb19sZW4gPSBudG9obChhZGRyaW5mb19sZW4pOwotCQlpZiAoYWRkcmluZm9fbGVuID09IDApIHsKKwkJaWYgKGhhdmVfbW9yZSA9PSAwKSB7CiAJCQlzdWNjZXNzID0gMTsKIAkJCWJyZWFrOwogCQl9CiAKLQkJaWYgKGFkZHJpbmZvX2xlbiA8IHNpemVvZihzdHJ1Y3QgYWRkcmluZm8pKSB7Ci0JCQlicmVhazsKLQkJfQotCQlzdHJ1Y3QgYWRkcmluZm8qIGFpID0gY2FsbG9jKDEsIGFkZHJpbmZvX2xlbiArCi0JCQkJCSAgICAgc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlKSk7CisJCXN0cnVjdCBhZGRyaW5mbyogYWkgPSBjYWxsb2MoMSwgc2l6ZW9mKHN0cnVjdCBhZGRyaW5mbykgKyBzaXplb2Yoc3RydWN0IHNvY2thZGRyX3N0b3JhZ2UpKTsKIAkJaWYgKGFpID09IE5VTEwpIHsKIAkJCWJyZWFrOwogCQl9CisJCWFpLT5haV9hZGRyID0gKHN0cnVjdCBzb2NrYWRkciopKGFpICsgMSk7CiAKLQkJaWYgKGZyZWFkKGFpLCBhZGRyaW5mb19sZW4sIDEsIHByb3h5KSAhPSAxKSB7Ci0JCQkvLyBFcnJvcjsgZmFsbCB0aHJvdWdoLgorCQkvLyBzdHJ1Y3QgYWRkcmluZm8geworCQkvLwlpbnQJYWlfZmxhZ3M7CS8qIEFJX1BBU1NJVkUsIEFJX0NBTk9OTkFNRSwgQUlfTlVNRVJJQ0hPU1QgKi8KKwkJLy8JaW50CWFpX2ZhbWlseTsJLyogUEZfeHh4ICovCisJCS8vCWludAlhaV9zb2NrdHlwZTsJLyogU09DS194eHggKi8KKwkJLy8JaW50CWFpX3Byb3RvY29sOwkvKiAwIG9yIElQUFJPVE9feHh4IGZvciBJUHY0IGFuZCBJUHY2ICovCisJCS8vCXNvY2tsZW5fdCBhaV9hZGRybGVuOwkvKiBsZW5ndGggb2YgYWlfYWRkciAqLworCQkvLwljaGFyCSphaV9jYW5vbm5hbWU7CS8qIGNhbm9uaWNhbCBuYW1lIGZvciBob3N0bmFtZSAqLworCQkvLwlzdHJ1Y3QJc29ja2FkZHIgKmFpX2FkZHI7CS8qIGJpbmFyeSBhZGRyZXNzICovCisJCS8vCXN0cnVjdAlhZGRyaW5mbyAqYWlfbmV4dDsJLyogbmV4dCBzdHJ1Y3R1cmUgaW4gbGlua2VkIGxpc3QgKi8KKwkJLy8gfTsKKworCQkvLyBSZWFkIHRoZSBzdHJ1Y3QgcGllY2UgYnkgcGllY2UgYmVjYXVzZSB3ZSBtaWdodCBiZSBhIDMyLWJpdCBwcm9jZXNzCisJCS8vIHRhbGtpbmcgdG8gYSA2NC1iaXQgbmV0ZC4KKwkJaW50MzJfdCBhZGRyX2xlbjsKKwkJYm9vbCBzdWNjZXNzID0KKwkJCQlyZWFkQkUzMihwcm94eSwgJmFpLT5haV9mbGFncykgJiYKKwkJCQlyZWFkQkUzMihwcm94eSwgJmFpLT5haV9mYW1pbHkpICYmCisJCQkJcmVhZEJFMzIocHJveHksICZhaS0+YWlfc29ja3R5cGUpICYmCisJCQkJcmVhZEJFMzIocHJveHksICZhaS0+YWlfcHJvdG9jb2wpICYmCisJCQkJcmVhZEJFMzIocHJveHksICZhZGRyX2xlbik7CisJCWlmICghc3VjY2VzcykgewogCQkJYnJlYWs7CiAJCX0KIAotCQkvLyBaZXJvIG91dCB0aGUgcG9pbnRlciBmaWVsZHMgd2UgY29waWVkIHdoaWNoIGFyZW4ndAotCQkvLyB2YWxpZCBpbiB0aGlzIGFkZHJlc3Mgc3BhY2UuCi0JCWFpLT5haV9hZGRyID0gTlVMTDsKLQkJYWktPmFpX2Nhbm9ubmFtZSA9IE5VTEw7Ci0JCWFpLT5haV9uZXh0ID0gTlVMTDsKLQotCQkvLyBzdHJ1Y3Qgc29ja2FkZHIKLQkJdWludDMyX3QgYWRkcl9sZW47Ci0JCWlmIChmcmVhZCgmYWRkcl9sZW4sIHNpemVvZihhZGRyX2xlbiksIDEsIHByb3h5KSAhPSAxKSB7Ci0JCQlicmVhazsKLQkJfQotCQlhZGRyX2xlbiA9IG50b2hsKGFkZHJfbGVuKTsKKwkJLy8gU2V0IGFpX2FkZHJsZW4gYW5kIHJlYWQgdGhlIGFpX2FkZHIgZGF0YS4KKwkJYWktPmFpX2FkZHJsZW4gPSBhZGRyX2xlbjsKIAkJaWYgKGFkZHJfbGVuICE9IDApIHsKLQkJCWlmIChhZGRyX2xlbiA+IHNpemVvZihzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSkpIHsKKwkJCWlmICgoc2l6ZV90KSBhZGRyX2xlbiA+IHNpemVvZihzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSkpIHsKIAkJCQkvLyBCb2d1czsgdG9vIGJpZy4KIAkJCQlicmVhazsKIAkJCX0KLQkJCXN0cnVjdCBzb2NrYWRkciogYWRkciA9IChzdHJ1Y3Qgc29ja2FkZHIqKShhaSArIDEpOwotCQkJaWYgKGZyZWFkKGFkZHIsIGFkZHJfbGVuLCAxLCBwcm94eSkgIT0gMSkgeworCQkJaWYgKGZyZWFkKGFpLT5haV9hZGRyLCBhZGRyX2xlbiwgMSwgcHJveHkpICE9IDEpIHsKIAkJCQlicmVhazsKIAkJCX0KLQkJCWFpLT5haV9hZGRyID0gYWRkcjsKIAkJfQogCi0JCS8vIGNhbm5vbm5hbWUKLQkJdWludDMyX3QgbmFtZV9sZW47Ci0JCWlmIChmcmVhZCgmbmFtZV9sZW4sIHNpemVvZihuYW1lX2xlbiksIDEsIHByb3h5KSAhPSAxKSB7CisJCS8vIFRoZSBzdHJpbmcgZm9yIGFpX2Nhbm5vbm5hbWUuCisJCWludDMyX3QgbmFtZV9sZW47CisJCWlmICghcmVhZEJFMzIocHJveHksICZuYW1lX2xlbikpIHsKIAkJCWJyZWFrOwogCQl9Ci0JCW5hbWVfbGVuID0gbnRvaGwobmFtZV9sZW4pOwogCQlpZiAobmFtZV9sZW4gIT0gMCkgewogCQkJYWktPmFpX2Nhbm9ubmFtZSA9IChjaGFyKikgbWFsbG9jKG5hbWVfbGVuKTsKIAkJCWlmIChmcmVhZChhaS0+YWlfY2Fub25uYW1lLCBuYW1lX2xlbiwgMSwgcHJveHkpICE9IDEpIHsKQEAgLTU5OSw3ICs1OTYsNiBAQAogCXN0cnVjdCBhZGRyaW5mbyBhaTA7CiAJc3RydWN0IGFkZHJpbmZvICpwYWk7CiAJY29uc3Qgc3RydWN0IGV4cGxvcmUgKmV4OwotCWNvbnN0IGNoYXIqIGNhY2hlX21vZGUgPSBnZXRlbnYoIkFORFJPSURfRE5TX01PREUiKTsKIAogCS8qIGhvc3RuYW1lIGlzIGFsbG93ZWQgdG8gYmUgTlVMTCAqLwogCS8qIHNlcnZuYW1lIGlzIGFsbG93ZWQgdG8gYmUgTlVMTCAqLwpAQCAtNzM0LDEzICs3MzAsMTIgQEAKIAlpZiAocGFpLT5haV9mbGFncyAmIEFJX05VTUVSSUNIT1NUKQogCQlFUlIoRUFJX05PTkFNRSk7CiAKLSAgICAgICAgLyoKLSAgICAgICAgICogQkVHSU4gQU5EUk9JRCBDSEFOR0VTOyBwcm94eWluZyB0byB0aGUgY2FjaGUKLSAgICAgICAgICovCi0JaWYgKGNhY2hlX21vZGUgPT0gTlVMTCB8fCBzdHJjbXAoY2FjaGVfbW9kZSwgImxvY2FsIikgIT0gMCkgewotCQkvLyB3ZSdyZSBub3QgdGhlIHByb3h5IC0gcGFzcyB0aGUgcmVxdWVzdCB0byB0aGVtCi0JCXJldHVybiBhbmRyb2lkX2dldGFkZHJpbmZvX3Byb3h5KGhvc3RuYW1lLCBzZXJ2bmFtZSwgaGludHMsIHJlcywgbmV0aWQpOworI2lmIGRlZmluZWQoX19BTkRST0lEX18pCisJaW50IGdhaV9lcnJvciA9IGFuZHJvaWRfZ2V0YWRkcmluZm9fcHJveHkoaG9zdG5hbWUsIHNlcnZuYW1lLCBoaW50cywgcmVzLCBuZXRpZCk7CisJaWYgKGdhaV9lcnJvciAhPSBFQUlfU1lTVEVNKSB7CisJCXJldHVybiBnYWlfZXJyb3I7CiAJfQorI2VuZGlmCiAKIAkvKgogCSAqIGhvc3RuYW1lIGFzIGFscGhhYmV0aWNhbCBuYW1lLgpAQCAtMjAxNyw3ICsyMDEyLDcgQEAKIHsKIAogCWlmICghKmhvc3RmKQotCQkqaG9zdGYgPSBmb3BlbihfUEFUSF9IT1NUUywgInIiICk7CisJCSpob3N0ZiA9IGZvcGVuKF9QQVRIX0hPU1RTLCAicmUiKTsKIAllbHNlCiAJCXJld2luZCgqaG9zdGYpOwogfQpAQCAtMjA0Niw3ICsyMDQxLDcgQEAKIAlhc3NlcnQobmFtZSAhPSBOVUxMKTsKIAlhc3NlcnQocGFpICE9IE5VTEwpOwogCi0JaWYgKCEqaG9zdGYgJiYgISgqaG9zdGYgPSBmb3BlbihfUEFUSF9IT1NUUywgInIiICkpKQorCWlmICghKmhvc3RmICYmICEoKmhvc3RmID0gZm9wZW4oX1BBVEhfSE9TVFMsICJyZSIpKSkKIAkJcmV0dXJuIChOVUxMKTsKICBhZ2FpbjoKIAlpZiAoIShwID0gZmdldHMoaG9zdGJ1Ziwgc2l6ZW9mIGhvc3RidWYsICpob3N0ZikpKQpkaWZmIC0tZ2l0IGEvbGliYy9kbnMvbmV0L2dldGhuYW1hZGRyLmMgYi9saWJjL2Rucy9uZXQvZ2V0aG5hbWFkZHIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZjU4MDBhCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9kbnMvbmV0L2dldGhuYW1hZGRyLmMKQEAgLTAsMCArMSwxNjMxIEBACisvKgkkTmV0QlNEOiBnZXRobmFtYWRkci5jLHYgMS45MSAyMDE0LzA2LzE5IDE1OjA4OjE4IGNocmlzdG9zIEV4cCAkCSovCisKKy8qCisgKiArK0NvcHlyaWdodCsrIDE5ODUsIDE5ODgsIDE5OTMKKyAqIC0KKyAqIENvcHlyaWdodCAoYykgMTk4NSwgMTk4OCwgMTk5MworICogICAgVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICogLQorICogUG9ydGlvbnMgQ29weXJpZ2h0IChjKSAxOTkzIGJ5IERpZ2l0YWwgRXF1aXBtZW50IENvcnBvcmF0aW9uLgorICoKKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueQorICogcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBlYXIgaW4gYWxsIGNvcGllcywgYW5kIHRoYXQKKyAqIHRoZSBuYW1lIG9mIERpZ2l0YWwgRXF1aXBtZW50IENvcnBvcmF0aW9uIG5vdCBiZSB1c2VkIGluIGFkdmVydGlzaW5nIG9yCisgKiBwdWJsaWNpdHkgcGVydGFpbmluZyB0byBkaXN0cmlidXRpb24gb2YgdGhlIGRvY3VtZW50IG9yIHNvZnR3YXJlIHdpdGhvdXQKKyAqIHNwZWNpZmljLCB3cml0dGVuIHByaW9yIHBlcm1pc3Npb24uCisgKgorICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIERJR0lUQUwgRVFVSVBNRU5UIENPUlAuIERJU0NMQUlNUyBBTEwKKyAqIFdBUlJBTlRJRVMgV0lUSCBSRUdBUkQgVE8gVEhJUyBTT0ZUV0FSRSwgSU5DTFVESU5HIEFMTCBJTVBMSUVEIFdBUlJBTlRJRVMKKyAqIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4gICBJTiBOTyBFVkVOVCBTSEFMTCBESUdJVEFMIEVRVUlQTUVOVAorICogQ09SUE9SQVRJT04gQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElSRUNULCBJTkRJUkVDVCwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyBPUiBBTlkgREFNQUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NIExPU1MgT0YgVVNFLCBEQVRBIE9SCisgKiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgTkVHTElHRU5DRSBPUiBPVEhFUiBUT1JUSU9VUworICogQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUiBQRVJGT1JNQU5DRSBPRiBUSElTCisgKiBTT0ZUV0FSRS4KKyAqIC0KKyAqIC0tQ29weXJpZ2h0LS0KKyAqLworCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisKKyNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KKyNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CisjaW5jbHVkZSA8c3lzL3VuLmg+CisjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgorI2luY2x1ZGUgPGFycGEvaW5ldC5oPgorI2luY2x1ZGUgPGFycGEvbmFtZXNlci5oPgorI2luY2x1ZGUgIk5ldGRDbGllbnREaXNwYXRjaC5oIgorI2luY2x1ZGUgInJlc29sdl9uZXRpZC5oIgorI2luY2x1ZGUgInJlc29sdl9wcml2YXRlLmgiCisjaW5jbHVkZSAicmVzb2x2X2NhY2hlLmgiCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPG5ldGRiLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RkYm9vbC5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RyaW5ncy5oPgorI2luY2x1ZGUgPHN5c2xvZy5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorCisjZGVmaW5lIEFMSUdOQllURVMgKHNpemVvZih1aW50cHRyX3QpIC0gMSkKKyNkZWZpbmUgQUxJR04ocCkgKCgodWludHB0cl90KShwKSArIEFMSUdOQllURVMpICZ+IEFMSUdOQllURVMpCisKKyNpZm5kZWYgTE9HX0FVVEgKKyMgZGVmaW5lIExPR19BVVRIIDAKKyNlbmRpZgorCisjZGVmaW5lIE1VTFRJX1BUUlNfQVJFX0FMSUFTRVMgMQkvKiBYWFggLSBleHBlcmltZW50YWwgKi8KKworI2luY2x1ZGUgIm5zc3dpdGNoLmgiCisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisKKyNpbmNsdWRlICJob3N0ZW50LmgiCisKKyNkZWZpbmUgbWF5YmVfb2socmVzLCBubSwgb2spICgoKHJlcyktPm9wdGlvbnMgJiBSRVNfTk9DSEVDS05BTUUpICE9IDBVIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob2spKG5tKSAhPSAwKQorI2RlZmluZSBtYXliZV9obm9rKHJlcywgaG4pIG1heWJlX29rKChyZXMpLCAoaG4pLCByZXNfaG5vaykKKyNkZWZpbmUgbWF5YmVfZG5vayhyZXMsIGRuKSBtYXliZV9vaygocmVzKSwgKGRuKSwgcmVzX2Rub2spCisKKyNkZWZpbmUgYWRkYWxpYXMoZCwgcywgYXJyLCBzaXopIGRvIHsJCQlcCisJaWYgKGQgPj0gJmFycltzaXpdKSB7CQkJCVwKKwkJY2hhciAqKnhwdHIgPSByZWFsbG9jKGFyciwgKHNpeiArIDEwKSAqIHNpemVvZigqYXJyKSk7IFwKKwkJaWYgKHhwdHIgPT0gTlVMTCkJCQlcCisJCQlnb3RvIG5vc3BjOwkJCVwKKwkJZCA9IHhwdHIgKyAoZCAtIGFycik7CQkJXAorCQlhcnIgPSB4cHRyOwkJCQlcCisJCXNpeiArPSAxMDsJCQkJXAorCX0JCQkJCQlcCisJKmQrKyA9IHM7CQkJCQlcCit9IHdoaWxlICgvKkNPTlNUQ09ORCovMCkKKworI2RlZmluZSBzZXR1cChhcnIsIHNpeikgZG8gewkJCQlcCisJYXJyID0gbWFsbG9jKChzaXogPSAxMCkgKiBzaXplb2YoKmFycikpOyAJXAorCWlmIChhcnIgPT0gTlVMTCkJCQkJXAorCQlnb3RvIG5vc3BjOwkJCQlcCit9IHdoaWxlICgvKkNPTlNUQ09ORCovMCkKKworLy8gVGhpcyBzaG91bGQgYmUgc3luY2hyb25pemVkIHRvIFJlc3BvbnNlQ29kZS5oCitzdGF0aWMgY29uc3QgaW50IERuc1Byb3h5UXVlcnlSZXN1bHQgPSAyMjI7CisKK3N0YXRpYyBjb25zdCBjaGFyIEFza2VkRm9yR290W10gPQorCQkJICAiZ2V0aG9zdGJ5Ki5nZXRhbnN3ZXI6IGFza2VkIGZvciBcIiVzXCIsIGdvdCBcIiVzXCIiOworCisjZGVmaW5lCU1BWFBBQ0tFVAkoNjQqMTAyNCkKKwordHlwZWRlZiB1bmlvbiB7CisgICAgSEVBREVSIGhkcjsKKyAgICB1X2NoYXIgYnVmW01BWFBBQ0tFVF07Cit9IHF1ZXJ5YnVmOworCit0eXBlZGVmIHVuaW9uIHsKKyAgICBpbnQzMl90IGFsOworICAgIGNoYXIgYWM7Cit9IGFsaWduOworCisjaWZkZWYgREVCVUcKK3N0YXRpYyB2b2lkIGRlYnVncHJpbnRmKGNvbnN0IGNoYXIgKiwgcmVzX3N0YXRlLCAuLi4pCisJX19hdHRyaWJ1dGVfXygoX19mb3JtYXRfXyhfX3ByaW50Zl9fLCAxLCAzKSkpOworI2VuZGlmCitzdGF0aWMgc3RydWN0IGhvc3RlbnQgKmdldGFuc3dlcihjb25zdCBxdWVyeWJ1ZiAqLCBpbnQsIGNvbnN0IGNoYXIgKiwgaW50LAorICAgIHJlc19zdGF0ZSwgc3RydWN0IGhvc3RlbnQgKiwgY2hhciAqLCBzaXplX3QsIGludCAqKTsKK3N0YXRpYyB2b2lkIG1hcF92NHY2X2FkZHJlc3MoY29uc3QgY2hhciAqLCBjaGFyICopOworc3RhdGljIHZvaWQgbWFwX3Y0djZfaG9zdGVudChzdHJ1Y3QgaG9zdGVudCAqLCBjaGFyICoqLCBjaGFyICopOworc3RhdGljIHZvaWQgYWRkcnNvcnQoY2hhciAqKiwgaW50LCByZXNfc3RhdGUpOworCit2b2lkIGh0X3NldGhvc3RlbnQoaW50KTsKK3ZvaWQgaHRfZW5kaG9zdGVudCh2b2lkKTsKK3N0cnVjdCBob3N0ZW50ICpodF9nZXRob3N0YnluYW1lKGNoYXIgKik7CitzdHJ1Y3QgaG9zdGVudCAqaHRfZ2V0aG9zdGJ5YWRkcihjb25zdCBjaGFyICosIGludCwgaW50KTsKK3ZvaWQgZG5zX3NlcnZpY2Uodm9pZCk7CisjdW5kZWYgZG5fc2tpcG5hbWUKK2ludCBkbl9za2lwbmFtZShjb25zdCB1X2NoYXIgKiwgY29uc3QgdV9jaGFyICopOworc3RhdGljIGludCBfZG5zX2dldGh0YnlhZGRyKHZvaWQgKiwgdm9pZCAqLCB2YV9saXN0KTsKK3N0YXRpYyBpbnQgX2Ruc19nZXRodGJ5bmFtZSh2b2lkICosIHZvaWQgKiwgdmFfbGlzdCk7CisKK3N0YXRpYyBzdHJ1Y3QgaG9zdGVudCAqZ2V0aG9zdGJ5bmFtZV9pbnRlcm5hbChjb25zdCBjaGFyICosIGludCwgcmVzX3N0YXRlLAorICAgIHN0cnVjdCBob3N0ZW50ICosIGNoYXIgKiwgc2l6ZV90LCBpbnQgKiwgdW5zaWduZWQsIHVuc2lnbmVkKTsKK3N0YXRpYyBzdHJ1Y3QgaG9zdGVudCogYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0X3Byb3h5X2ludGVybmFsKGNvbnN0IHZvaWQqLCBzb2NrbGVuX3QsCisgICAgaW50LCBzdHJ1Y3QgaG9zdGVudCAqLCBjaGFyICosIHNpemVfdCwgaW50ICosIHVuc2lnbmVkLCB1bnNpZ25lZCk7CisKK3N0YXRpYyBjb25zdCBuc19zcmMgZGVmYXVsdF9kbnNfZmlsZXNbXSA9IHsKKwl7IE5TU1JDX0ZJTEVTLCAJTlNfU1VDQ0VTUyB9LAorCXsgTlNTUkNfRE5TLCAJTlNfU1VDQ0VTUyB9LAorCXsgMCwgMCB9Cit9OworCisKKyNpZmRlZiBERUJVRworc3RhdGljIHZvaWQKK2RlYnVncHJpbnRmKGNvbnN0IGNoYXIgKm1zZywgcmVzX3N0YXRlIHJlcywgLi4uKQoreworCV9ESUFHQVNTRVJUKG1zZyAhPSBOVUxMKTsKKworCWlmIChyZXMtPm9wdGlvbnMgJiBSRVNfREVCVUcpIHsKKwkJaW50IHNhdmUgPSBlcnJubzsKKwkJdmFfbGlzdCBhcDsKKworCQl2YV9zdGFydCAoYXAsIHJlcyk7CisJCXZwcmludGYobXNnLCBhcCk7CisJCXZhX2VuZCAoYXApOworCisJCWVycm5vID0gc2F2ZTsKKwl9Cit9CisjZWxzZQorIyBkZWZpbmUgZGVidWdwcmludGYobXNnLCByZXMsIG51bSkgLypuYWRhKi8KKyNlbmRpZgorCisjZGVmaW5lIEJPVU5ERURfSU5DUih4KSBcCisJZG8geyBcCisJCWNwICs9ICh4KTsgXAorCQlpZiAoY3AgPiBlb20pIFwKKwkJCWdvdG8gbm9fcmVjb3Zlcnk7IFwKKwl9IHdoaWxlICgvKkNPTlNUQ09ORCovMCkKKworI2RlZmluZSBCT1VORFNfQ0hFQ0socHRyLCBjb3VudCkgXAorCWRvIHsgXAorCQlpZiAoKHB0cikgKyAoY291bnQpID4gZW9tKSBcCisJCQlnb3RvIG5vX3JlY292ZXJ5OyBcCisJfSB3aGlsZSAoLypDT05TVENPTkQqLzApCisKK3N0YXRpYyBzdHJ1Y3QgaG9zdGVudCAqCitnZXRhbnN3ZXIoY29uc3QgcXVlcnlidWYgKmFuc3dlciwgaW50IGFuc2xlbiwgY29uc3QgY2hhciAqcW5hbWUsIGludCBxdHlwZSwKKyAgICByZXNfc3RhdGUgcmVzLCBzdHJ1Y3QgaG9zdGVudCAqaGVudCwgY2hhciAqYnVmLCBzaXplX3QgYnVmbGVuLCBpbnQgKmhlKQoreworCWNvbnN0IEhFQURFUiAqaHA7CisJY29uc3QgdV9jaGFyICpjcDsKKwlpbnQgbjsKKwlzaXplX3QgcWxlbjsKKwljb25zdCB1X2NoYXIgKmVvbSwgKmVyZGF0YTsKKwljaGFyICpicCwgKiphcCwgKipoYXAsICplcDsKKwlpbnQgdHlwZSwgY2xhc3MsIGFuY291bnQsIHFkY291bnQ7CisJaW50IGhhdmVhbnN3ZXIsIGhhZF9lcnJvcjsKKwlpbnQgdG9vYmlnID0gMDsKKwljaGFyIHRidWZbTUFYRE5BTUVdOworCWNoYXIgKiphbGlhc2VzOworCXNpemVfdCBtYXhhbGlhc2VzOworCWNoYXIgKmFkZHJfcHRyc1tNQVhBRERSU107CisJY29uc3QgY2hhciAqdG5hbWU7CisJaW50ICgqbmFtZV9vaykoY29uc3QgY2hhciAqKTsKKworCV9ESUFHQVNTRVJUKGFuc3dlciAhPSBOVUxMKTsKKwlfRElBR0FTU0VSVChxbmFtZSAhPSBOVUxMKTsKKworCXRuYW1lID0gcW5hbWU7CisJaGVudC0+aF9uYW1lID0gTlVMTDsKKwllb20gPSBhbnN3ZXItPmJ1ZiArIGFuc2xlbjsKKwlzd2l0Y2ggKHF0eXBlKSB7CisJY2FzZSBUX0E6CisJY2FzZSBUX0FBQUE6CisJCW5hbWVfb2sgPSByZXNfaG5vazsKKwkJYnJlYWs7CisJY2FzZSBUX1BUUjoKKwkJbmFtZV9vayA9IHJlc19kbm9rOworCQlicmVhazsKKwlkZWZhdWx0OgorCSAgKmhlID0gTk9fUkVDT1ZFUlk7CisJCXJldHVybiBOVUxMOwkvKiBYWFggc2hvdWxkIGJlIGFib3J0KCk7ICovCisJfQorCisJc2V0dXAoYWxpYXNlcywgbWF4YWxpYXNlcyk7CisJLyoKKwkgKiBmaW5kIGZpcnN0IHNhdGlzZmFjdG9yeSBhbnN3ZXIKKwkgKi8KKwlocCA9ICZhbnN3ZXItPmhkcjsKKwlhbmNvdW50ID0gbnRvaHMoaHAtPmFuY291bnQpOworCXFkY291bnQgPSBudG9ocyhocC0+cWRjb3VudCk7CisJYnAgPSBidWY7CisJZXAgPSBidWYgKyBidWZsZW47CisJY3AgPSBhbnN3ZXItPmJ1ZjsKKwlCT1VOREVEX0lOQ1IoSEZJWEVEU1opOworCWlmIChxZGNvdW50ICE9IDEpCisJCWdvdG8gbm9fcmVjb3Zlcnk7CisKKwluID0gZG5fZXhwYW5kKGFuc3dlci0+YnVmLCBlb20sIGNwLCBicCwgKGludCkoZXAgLSBicCkpOworCWlmICgobiA8IDApIHx8ICFtYXliZV9vayhyZXMsIGJwLCBuYW1lX29rKSkKKwkJZ290byBub19yZWNvdmVyeTsKKworCUJPVU5ERURfSU5DUihuICsgUUZJWEVEU1opOworCWlmIChxdHlwZSA9PSBUX0EgfHwgcXR5cGUgPT0gVF9BQUFBKSB7CisJCS8qIHJlc19zZW5kKCkgaGFzIGFscmVhZHkgdmVyaWZpZWQgdGhhdCB0aGUgcXVlcnkgbmFtZSBpcyB0aGUKKwkJICogc2FtZSBhcyB0aGUgb25lIHdlIHNlbnQ7IHRoaXMganVzdCBnZXRzIHRoZSBleHBhbmRlZCBuYW1lCisJCSAqIChpLmUuLCB3aXRoIHRoZSBzdWNjZWVkaW5nIHNlYXJjaC1kb21haW4gdGFja2VkIG9uKS4KKwkJICovCisJCW4gPSAoaW50KXN0cmxlbihicCkgKyAxOwkJLyogZm9yIHRoZSBcMCAqLworCQlpZiAobiA+PSBNQVhIT1NUTkFNRUxFTikKKwkJCWdvdG8gbm9fcmVjb3Zlcnk7CisJCWhlbnQtPmhfbmFtZSA9IGJwOworCQlicCArPSBuOworCQkvKiBUaGUgcW5hbWUgY2FuIGJlIGFiYnJldmlhdGVkLCBidXQgaF9uYW1lIGlzIG5vdyBhYnNvbHV0ZS4gKi8KKwkJcW5hbWUgPSBoZW50LT5oX25hbWU7CisJfQorCWhlbnQtPmhfYWxpYXNlcyA9IGFwID0gYWxpYXNlczsKKwloZW50LT5oX2FkZHJfbGlzdCA9IGhhcCA9IGFkZHJfcHRyczsKKwkqYXAgPSBOVUxMOworCSpoYXAgPSBOVUxMOworCWhhdmVhbnN3ZXIgPSAwOworCWhhZF9lcnJvciA9IDA7CisJd2hpbGUgKGFuY291bnQtLSA+IDAgJiYgY3AgPCBlb20gJiYgIWhhZF9lcnJvcikgeworCQluID0gZG5fZXhwYW5kKGFuc3dlci0+YnVmLCBlb20sIGNwLCBicCwgKGludCkoZXAgLSBicCkpOworCQlpZiAoKG4gPCAwKSB8fCAhbWF5YmVfb2socmVzLCBicCwgbmFtZV9vaykpIHsKKwkJCWhhZF9lcnJvcisrOworCQkJY29udGludWU7CisJCX0KKwkJY3AgKz0gbjsJCQkvKiBuYW1lICovCisJCUJPVU5EU19DSEVDSyhjcCwgMyAqIElOVDE2U1ogKyBJTlQzMlNaKTsKKwkJdHlwZSA9IF9nZXRzaG9ydChjcCk7CisgCQljcCArPSBJTlQxNlNaOwkJCS8qIHR5cGUgKi8KKwkJY2xhc3MgPSBfZ2V0c2hvcnQoY3ApOworIAkJY3AgKz0gSU5UMTZTWiArIElOVDMyU1o7CS8qIGNsYXNzLCBUVEwgKi8KKwkJbiA9IF9nZXRzaG9ydChjcCk7CisJCWNwICs9IElOVDE2U1o7CQkJLyogbGVuICovCisJCUJPVU5EU19DSEVDSyhjcCwgbik7CisJCWVyZGF0YSA9IGNwICsgbjsKKwkJaWYgKGNsYXNzICE9IENfSU4pIHsKKwkJCS8qIFhYWCAtIGRlYnVnPyBzeXNsb2c/ICovCisJCQljcCArPSBuOworCQkJY29udGludWU7CQkvKiBYWFggLSBoYWRfZXJyb3IrKyA/ICovCisJCX0KKwkJaWYgKChxdHlwZSA9PSBUX0EgfHwgcXR5cGUgPT0gVF9BQUFBKSAmJiB0eXBlID09IFRfQ05BTUUpIHsKKwkJCW4gPSBkbl9leHBhbmQoYW5zd2VyLT5idWYsIGVvbSwgY3AsIHRidWYsCisJCQkgICAgKGludClzaXplb2YgdGJ1Zik7CisJCQlpZiAoKG4gPCAwKSB8fCAhbWF5YmVfb2socmVzLCB0YnVmLCBuYW1lX29rKSkgeworCQkJCWhhZF9lcnJvcisrOworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJY3AgKz0gbjsKKwkJCWlmIChjcCAhPSBlcmRhdGEpCisJCQkJZ290byBub19yZWNvdmVyeTsKKwkJCS8qIFN0b3JlIGFsaWFzLiAqLworCQkJYWRkYWxpYXMoYXAsIGJwLCBhbGlhc2VzLCBtYXhhbGlhc2VzKTsKKwkJCW4gPSAoaW50KXN0cmxlbihicCkgKyAxOwkvKiBmb3IgdGhlIFwwICovCisJCQlpZiAobiA+PSBNQVhIT1NUTkFNRUxFTikgeworCQkJCWhhZF9lcnJvcisrOworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJYnAgKz0gbjsKKwkJCS8qIEdldCBjYW5vbmljYWwgbmFtZS4gKi8KKwkJCW4gPSAoaW50KXN0cmxlbih0YnVmKSArIDE7CS8qIGZvciB0aGUgXDAgKi8KKwkJCWlmIChuID4gZXAgLSBicCB8fCBuID49IE1BWEhPU1ROQU1FTEVOKSB7CisJCQkJaGFkX2Vycm9yKys7CisJCQkJY29udGludWU7CisJCQl9CisJCQlzdHJsY3B5KGJwLCB0YnVmLCAoc2l6ZV90KShlcCAtIGJwKSk7CisJCQloZW50LT5oX25hbWUgPSBicDsKKwkJCWJwICs9IG47CisJCQljb250aW51ZTsKKwkJfQorCQlpZiAocXR5cGUgPT0gVF9QVFIgJiYgdHlwZSA9PSBUX0NOQU1FKSB7CisJCQluID0gZG5fZXhwYW5kKGFuc3dlci0+YnVmLCBlb20sIGNwLCB0YnVmLAorCQkJICAgIChpbnQpc2l6ZW9mIHRidWYpOworCQkJaWYgKG4gPCAwIHx8ICFtYXliZV9kbm9rKHJlcywgdGJ1ZikpIHsKKwkJCQloYWRfZXJyb3IrKzsKKwkJCQljb250aW51ZTsKKwkJCX0KKwkJCWNwICs9IG47CisJCQlpZiAoY3AgIT0gZXJkYXRhKQorCQkJCWdvdG8gbm9fcmVjb3Zlcnk7CisJCQkvKiBHZXQgY2Fub25pY2FsIG5hbWUuICovCisJCQluID0gKGludClzdHJsZW4odGJ1ZikgKyAxOwkvKiBmb3IgdGhlIFwwICovCisJCQlpZiAobiA+IGVwIC0gYnAgfHwgbiA+PSBNQVhIT1NUTkFNRUxFTikgeworCQkJCWhhZF9lcnJvcisrOworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJc3RybGNweShicCwgdGJ1ZiwgKHNpemVfdCkoZXAgLSBicCkpOworCQkJdG5hbWUgPSBicDsKKwkJCWJwICs9IG47CisJCQljb250aW51ZTsKKwkJfQorCQlpZiAodHlwZSAhPSBxdHlwZSkgeworCQkJaWYgKHR5cGUgIT0gVF9LRVkgJiYgdHlwZSAhPSBUX1NJRykKKwkJCQlzeXNsb2coTE9HX05PVElDRXxMT0dfQVVUSCwKKwkgICAgICAgImdldGhvc3RieSouZ2V0YW5zd2VyOiBhc2tlZCBmb3IgXCIlcyAlcyAlc1wiLCBnb3QgdHlwZSBcIiVzXCIiLAorCQkJCSAgICAgICBxbmFtZSwgcF9jbGFzcyhDX0lOKSwgcF90eXBlKHF0eXBlKSwKKwkJCQkgICAgICAgcF90eXBlKHR5cGUpKTsKKwkJCWNwICs9IG47CisJCQljb250aW51ZTsJCS8qIFhYWCAtIGhhZF9lcnJvcisrID8gKi8KKwkJfQorCQlzd2l0Y2ggKHR5cGUpIHsKKwkJY2FzZSBUX1BUUjoKKwkJCWlmIChzdHJjYXNlY21wKHRuYW1lLCBicCkgIT0gMCkgeworCQkJCXN5c2xvZyhMT0dfTk9USUNFfExPR19BVVRILAorCQkJCSAgICAgICBBc2tlZEZvckdvdCwgcW5hbWUsIGJwKTsKKwkJCQljcCArPSBuOworCQkJCWNvbnRpbnVlOwkvKiBYWFggLSBoYWRfZXJyb3IrKyA/ICovCisJCQl9CisJCQluID0gZG5fZXhwYW5kKGFuc3dlci0+YnVmLCBlb20sIGNwLCBicCwgKGludCkoZXAgLSBicCkpOworCQkJaWYgKChuIDwgMCkgfHwgIW1heWJlX2hub2socmVzLCBicCkpIHsKKwkJCQloYWRfZXJyb3IrKzsKKwkJCQlicmVhazsKKwkJCX0KKyNpZiBNVUxUSV9QVFJTX0FSRV9BTElBU0VTCisJCQljcCArPSBuOworCQkJaWYgKGNwICE9IGVyZGF0YSkKKwkJCQlnb3RvIG5vX3JlY292ZXJ5OworCQkJaWYgKCFoYXZlYW5zd2VyKQorCQkJCWhlbnQtPmhfbmFtZSA9IGJwOworCQkJZWxzZQorCQkJCWFkZGFsaWFzKGFwLCBicCwgYWxpYXNlcywgbWF4YWxpYXNlcyk7CisJCQlpZiAobiAhPSAtMSkgeworCQkJCW4gPSAoaW50KXN0cmxlbihicCkgKyAxOwkvKiBmb3IgdGhlIFwwICovCisJCQkJaWYgKG4gPj0gTUFYSE9TVE5BTUVMRU4pIHsKKwkJCQkJaGFkX2Vycm9yKys7CisJCQkJCWJyZWFrOworCQkJCX0KKwkJCQlicCArPSBuOworCQkJfQorCQkJYnJlYWs7CisjZWxzZQorCQkJaGVudC0+aF9uYW1lID0gYnA7CisJCQlpZiAocmVzLT5vcHRpb25zICYgUkVTX1VTRV9JTkVUNikgeworCQkJCW4gPSBzdHJsZW4oYnApICsgMTsJLyogZm9yIHRoZSBcMCAqLworCQkJCWlmIChuID49IE1BWEhPU1ROQU1FTEVOKSB7CisJCQkJCWhhZF9lcnJvcisrOworCQkJCQlicmVhazsKKwkJCQl9CisJCQkJYnAgKz0gbjsKKwkJCQltYXBfdjR2Nl9ob3N0ZW50KGhlbnQsICZicCwgZXApOworCQkJfQorCQkJZ290byBzdWNjZXNzOworI2VuZGlmCisJCWNhc2UgVF9BOgorCQljYXNlIFRfQUFBQToKKwkJCWlmIChzdHJjYXNlY21wKGhlbnQtPmhfbmFtZSwgYnApICE9IDApIHsKKwkJCQlzeXNsb2coTE9HX05PVElDRXxMT0dfQVVUSCwKKwkJCQkgICAgICAgQXNrZWRGb3JHb3QsIGhlbnQtPmhfbmFtZSwgYnApOworCQkJCWNwICs9IG47CisJCQkJY29udGludWU7CS8qIFhYWCAtIGhhZF9lcnJvcisrID8gKi8KKwkJCX0KKwkJCWlmIChuICE9IGhlbnQtPmhfbGVuZ3RoKSB7CisJCQkJY3AgKz0gbjsKKwkJCQljb250aW51ZTsKKwkJCX0KKwkJCWlmICh0eXBlID09IFRfQUFBQSkgeworCQkJCXN0cnVjdCBpbjZfYWRkciBpbjY7CisJCQkJbWVtY3B5KCZpbjYsIGNwLCBOU19JTjZBRERSU1opOworCQkJCWlmIChJTjZfSVNfQUREUl9WNE1BUFBFRCgmaW42KSkgeworCQkJCQljcCArPSBuOworCQkJCQljb250aW51ZTsKKwkJCQl9CisJCQl9CisJCQlpZiAoIWhhdmVhbnN3ZXIpIHsKKwkJCQlpbnQgbm47CisKKwkJCQloZW50LT5oX25hbWUgPSBicDsKKwkJCQlubiA9IChpbnQpc3RybGVuKGJwKSArIDE7CS8qIGZvciB0aGUgXDAgKi8KKwkJCQlicCArPSBubjsKKwkJCX0KKworCQkJYnAgKz0gc2l6ZW9mKGFsaWduKSAtCisJCQkgICAgKHNpemVfdCkoKHVfbG9uZylicCAlIHNpemVvZihhbGlnbikpOworCisJCQlpZiAoYnAgKyBuID49IGVwKSB7CisJCQkJZGVidWdwcmludGYoInNpemUgKCVkKSB0b28gYmlnXG4iLCByZXMsIG4pOworCQkJCWhhZF9lcnJvcisrOworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJaWYgKGhhcCA+PSAmYWRkcl9wdHJzW01BWEFERFJTIC0gMV0pIHsKKwkJCQlpZiAoIXRvb2JpZysrKSB7CisJCQkJCWRlYnVncHJpbnRmKCJUb28gbWFueSBhZGRyZXNzZXMgKCVkKVxuIiwKKwkJCQkJCXJlcywgTUFYQUREUlMpOworCQkJCX0KKwkJCQljcCArPSBuOworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJKHZvaWQpbWVtY3B5KCpoYXArKyA9IGJwLCBjcCwgKHNpemVfdCluKTsKKwkJCWJwICs9IG47CisJCQljcCArPSBuOworCQkJaWYgKGNwICE9IGVyZGF0YSkKKwkJCQlnb3RvIG5vX3JlY292ZXJ5OworCQkJYnJlYWs7CisJCWRlZmF1bHQ6CisJCQlhYm9ydCgpOworCQl9CisJCWlmICghaGFkX2Vycm9yKQorCQkJaGF2ZWFuc3dlcisrOworCX0KKwlpZiAoaGF2ZWFuc3dlcikgeworCQkqYXAgPSBOVUxMOworCQkqaGFwID0gTlVMTDsKKwkJLyoKKwkJICogTm90ZTogd2Ugc29ydCBldmVuIGlmIGhvc3QgY2FuIHRha2Ugb25seSBvbmUgYWRkcmVzcworCQkgKiBpbiBpdHMgcmV0dXJuIHN0cnVjdHVyZXMgLSBzaG91bGQgZ2l2ZSBpdCB0aGUgImJlc3QiCisJCSAqIGFkZHJlc3MgaW4gdGhhdCBjYXNlLCBub3Qgc29tZSByYW5kb20gb25lCisJCSAqLworCQlpZiAocmVzLT5uc29ydCAmJiBoYXZlYW5zd2VyID4gMSAmJiBxdHlwZSA9PSBUX0EpCisJCQlhZGRyc29ydChhZGRyX3B0cnMsIGhhdmVhbnN3ZXIsIHJlcyk7CisJCWlmICghaGVudC0+aF9uYW1lKSB7CisJCQluID0gKGludClzdHJsZW4ocW5hbWUpICsgMTsJLyogZm9yIHRoZSBcMCAqLworCQkJaWYgKG4gPiBlcCAtIGJwIHx8IG4gPj0gTUFYSE9TVE5BTUVMRU4pCisJCQkJZ290byBub19yZWNvdmVyeTsKKwkJCXN0cmxjcHkoYnAsIHFuYW1lLCAoc2l6ZV90KShlcCAtIGJwKSk7CisJCQloZW50LT5oX25hbWUgPSBicDsKKwkJCWJwICs9IG47CisJCX0KKwkJaWYgKHJlcy0+b3B0aW9ucyAmIFJFU19VU0VfSU5FVDYpCisJCQltYXBfdjR2Nl9ob3N0ZW50KGhlbnQsICZicCwgZXApOworCSAgZ290byBzdWNjZXNzOworCX0KK25vX3JlY292ZXJ5OgorCWZyZWUoYWxpYXNlcyk7CisJKmhlID0gTk9fUkVDT1ZFUlk7CisJcmV0dXJuIE5VTEw7CitzdWNjZXNzOgorCWJwID0gKGNoYXIgKilBTElHTihicCk7CisJbiA9IChpbnQpKGFwIC0gYWxpYXNlcyk7CisJcWxlbiA9IChuICsgMSkgKiBzaXplb2YoKmhlbnQtPmhfYWxpYXNlcyk7CisJaWYgKChzaXplX3QpKGVwIC0gYnApIDwgcWxlbikKKwkJZ290byBub3NwYzsKKwloZW50LT5oX2FsaWFzZXMgPSAodm9pZCAqKWJwOworCW1lbWNweShicCwgYWxpYXNlcywgcWxlbik7CisJZnJlZShhbGlhc2VzKTsKKwlhbGlhc2VzID0gTlVMTDsKKworCWJwICs9IHFsZW47CisJbiA9IChpbnQpKGhhcCAtIGFkZHJfcHRycyk7CisJcWxlbiA9IChuICsgMSkgKiBzaXplb2YoKmhlbnQtPmhfYWRkcl9saXN0KTsKKwlpZiAoKHNpemVfdCkoZXAgLSBicCkgPCBxbGVuKQorCQlnb3RvIG5vc3BjOworCWhlbnQtPmhfYWRkcl9saXN0ID0gKHZvaWQgKilicDsKKwltZW1jcHkoYnAsIGFkZHJfcHRycywgcWxlbik7CisJKmhlID0gTkVUREJfU1VDQ0VTUzsKKwlyZXR1cm4gaGVudDsKK25vc3BjOgorCWZyZWUoYWxpYXNlcyk7CisJZXJybm8gPSBFTk9TUEM7CisJKmhlID0gTkVUREJfSU5URVJOQUw7CisJcmV0dXJuIE5VTEw7Cit9CisKKy8qIFRoZSBwcm90b3R5cGUgb2YgZ2V0aG9zdGJ5bmFtZV9yIGlzIGZyb20gZ2xpYmMsIG5vdCB0aGF0IGluIG5ldGJzZC4gKi8KK2ludAorZ2V0aG9zdGJ5bmFtZV9yKGNvbnN0IGNoYXIgKm5hbWUsIHN0cnVjdCBob3N0ZW50ICpocCwgY2hhciAqYnVmLCBzaXplX3QgYnVmbGVuLAorICAgIHN0cnVjdCBob3N0ZW50ICoqcmVzdWx0LCBpbnQgKmVycm9ycCkKK3sKKwlyZXNfc3RhdGUgcmVzID0gX19yZXNfZ2V0X3N0YXRlKCk7CisKKwlpZiAocmVzID09IE5VTEwpIHsKKwkgICpyZXN1bHQgPSBOVUxMOworCQkqZXJyb3JwID0gTkVUREJfSU5URVJOQUw7CisJCXJldHVybiAtMTsKKwl9CisKKwlfRElBR0FTU0VSVChuYW1lICE9IE5VTEwpOworCisJaWYgKHJlcy0+b3B0aW9ucyAmIFJFU19VU0VfSU5FVDYpIHsKKwkJKnJlc3VsdCA9IGdldGhvc3RieW5hbWVfaW50ZXJuYWwobmFtZSwgQUZfSU5FVDYsIHJlcywgaHAsIGJ1ZiwgYnVmbGVuLCBlcnJvcnAsIE5FVElEX1VOU0VULAorCQkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNQVJLX1VOU0VUKTsKKwkJaWYgKCpyZXN1bHQpIHsKKwkJCV9fcmVzX3B1dF9zdGF0ZShyZXMpOworCQkJcmV0dXJuIDA7CisJCX0KKwl9CisJKnJlc3VsdCA9IGdldGhvc3RieW5hbWVfaW50ZXJuYWwobmFtZSwgQUZfSU5FVCwgcmVzLCBocCwgYnVmLCBidWZsZW4sIGVycm9ycCwgTkVUSURfVU5TRVQsCisJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTUFSS19VTlNFVCk7CisJX19yZXNfcHV0X3N0YXRlKHJlcyk7CisJaWYgKCEqcmVzdWx0ICYmIGVycm5vID09IEVOT1NQQykgeworCSAgZXJybm8gPSBFUkFOR0U7CisJICByZXR1cm4gRVJBTkdFOyAvKiBSZXR1cm4gZXJyb3IgYXMgaW4gbGludXggbWFudWFsIHBhZ2UuICovCisJfQorCXJldHVybiAoKnJlc3VsdCkgPyAwIDogLTE7Cit9CisKKy8qIFRoZSBwcm90b3R5cGUgb2YgZ2V0aG9zdGJ5bmFtZTJfciBpcyBmcm9tIGdsaWJjLCBub3QgdGhhdCBpbiBuZXRic2QuICovCitpbnQKK2dldGhvc3RieW5hbWUyX3IoY29uc3QgY2hhciAqbmFtZSwgaW50IGFmLCBzdHJ1Y3QgaG9zdGVudCAqaHAsIGNoYXIgKmJ1ZiwKKyAgICBzaXplX3QgYnVmbGVuLCBzdHJ1Y3QgaG9zdGVudCAqKnJlc3VsdCwgaW50ICplcnJvcnApCit7CisJcmVzX3N0YXRlIHJlcyA9IF9fcmVzX2dldF9zdGF0ZSgpOworCisJaWYgKHJlcyA9PSBOVUxMKSB7CisJCSpyZXN1bHQgPSBOVUxMOworCQkqZXJyb3JwID0gTkVUREJfSU5URVJOQUw7CisJCXJldHVybiAtMTsKKwl9CisJKnJlc3VsdCA9IGdldGhvc3RieW5hbWVfaW50ZXJuYWwobmFtZSwgYWYsIHJlcywgaHAsIGJ1ZiwgYnVmbGVuLCBlcnJvcnAsIE5FVElEX1VOU0VULAorCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1BUktfVU5TRVQpOworCV9fcmVzX3B1dF9zdGF0ZShyZXMpOworCWlmICghKnJlc3VsdCAmJiBlcnJubyA9PSBFTk9TUEMpIHsKKwkJZXJybm8gPSBFUkFOR0U7CisJCXJldHVybiBFUkFOR0U7CisJfQorCXJldHVybiAoKnJlc3VsdCkgPyAwIDogLTE7Cit9CisKK19fTElCQ19ISURERU5fXyBGSUxFKiBhbmRyb2lkX29wZW5fcHJveHkoKSB7CisJY29uc3QgY2hhciogY2FjaGVfbW9kZSA9IGdldGVudigiQU5EUk9JRF9ETlNfTU9ERSIpOworCWJvb2wgdXNlX3Byb3h5ID0gKGNhY2hlX21vZGUgPT0gTlVMTCB8fCBzdHJjbXAoY2FjaGVfbW9kZSwgImxvY2FsIikgIT0gMCk7CisJaWYgKCF1c2VfcHJveHkpIHsKKwkJcmV0dXJuIE5VTEw7CisJfQorCisJaW50IHMgPSBzb2NrZXQoQUZfVU5JWCwgU09DS19TVFJFQU0gfCBTT0NLX0NMT0VYRUMsIDApOworCWlmIChzID09IC0xKSB7CisJCXJldHVybiBOVUxMOworCX0KKworCWNvbnN0IGludCBvbmUgPSAxOworCXNldHNvY2tvcHQocywgU09MX1NPQ0tFVCwgU09fUkVVU0VBRERSLCAmb25lLCBzaXplb2Yob25lKSk7CisKKwlzdHJ1Y3Qgc29ja2FkZHJfdW4gcHJveHlfYWRkcjsKKwltZW1zZXQoJnByb3h5X2FkZHIsIDAsIHNpemVvZihwcm94eV9hZGRyKSk7CisJcHJveHlfYWRkci5zdW5fZmFtaWx5ID0gQUZfVU5JWDsKKwlzdHJsY3B5KHByb3h5X2FkZHIuc3VuX3BhdGgsICIvZGV2L3NvY2tldC9kbnNwcm94eWQiLCBzaXplb2YocHJveHlfYWRkci5zdW5fcGF0aCkpOworCisJaWYgKFRFTVBfRkFJTFVSRV9SRVRSWShjb25uZWN0KHMsIChjb25zdCBzdHJ1Y3Qgc29ja2FkZHIqKSAmcHJveHlfYWRkciwgc2l6ZW9mKHByb3h5X2FkZHIpKSkgIT0gMCkgeworCQljbG9zZShzKTsKKwkJcmV0dXJuIE5VTEw7CisJfQorCisJcmV0dXJuIGZkb3BlbihzLCAicisiKTsKK30KKworc3RhdGljIHN0cnVjdCBob3N0ZW50ICoKK2FuZHJvaWRfcmVhZF9ob3N0ZW50KEZJTEUqIHByb3h5LCBzdHJ1Y3QgaG9zdGVudCogaHAsIGNoYXIqIGhidWYsIHNpemVfdCBoYnVmbGVuLCBpbnQgKmhlKQoreworCXVpbnQzMl90IHNpemU7CisJY2hhciBidWZbNF07CisJaWYgKGZyZWFkKGJ1ZiwgMSwgc2l6ZW9mKGJ1ZiksIHByb3h5KSAhPSBzaXplb2YoYnVmKSkgcmV0dXJuIE5VTEw7CisKKwkvLyBUaGlzIGlzIHJlYWRpbmcgc2VyaWFsaXplZCBkYXRhIGZyb20gc3lzdGVtL25ldGQvc2VydmVyL0Ruc1Byb3h5TGlzdGVuZXIuY3BwCisJLy8gYW5kIGNoYW5nZXMgaGVyZSBuZWVkIHRvIGJlIG1hdGNoZWQgdGhlcmUuCisJaW50IHJlc3VsdF9jb2RlID0gc3RydG9sKGJ1ZiwgTlVMTCwgMTApOworCWlmIChyZXN1bHRfY29kZSAhPSBEbnNQcm94eVF1ZXJ5UmVzdWx0KSB7CisJCWZyZWFkKCZzaXplLCAxLCBzaXplb2Yoc2l6ZSksIHByb3h5KTsKKwkJKmhlID0gSE9TVF9OT1RfRk9VTkQ7CisJCXJldHVybiBOVUxMOworCX0KKworCWlmIChmcmVhZCgmc2l6ZSwgMSwgc2l6ZW9mKHNpemUpLCBwcm94eSkgIT0gc2l6ZW9mKHNpemUpKSByZXR1cm4gTlVMTDsKKwlzaXplID0gbnRvaGwoc2l6ZSk7CisKKwltZW1zZXQoaHAsIDAsIHNpemVvZigqaHApKTsKKwljaGFyICpwdHIgPSBoYnVmOworCWNoYXIgKmhidWZfZW5kID0gaGJ1ZiArIGhidWZsZW47CisKKwlpZiAocHRyICsgc2l6ZSA+IGhidWZfZW5kKSB7CisJCWdvdG8gbm9zcGM7CisJfQorCWlmIChmcmVhZChwdHIsIDEsIHNpemUsIHByb3h5KSAhPSBzaXplKSByZXR1cm4gTlVMTDsKKwlocC0+aF9uYW1lID0gcHRyOworCXB0ciArPSBzaXplOworCisJY2hhciAqYWxpYXNlc19wdHJzW01BWEFMSUFTRVNdOworCWNoYXIgKiphbGlhc2VzID0gJmFsaWFzZXNfcHRyc1swXTsKKworCXdoaWxlICgxKSB7CisJCWlmIChmcmVhZCgmc2l6ZSwgMSwgc2l6ZW9mKHNpemUpLCBwcm94eSkgIT0gc2l6ZW9mKHNpemUpKSByZXR1cm4gTlVMTDsKKwkJc2l6ZSA9IG50b2hsKHNpemUpOworCisJCWlmIChzaXplID09IDApIHsKKwkJCSphbGlhc2VzID0gTlVMTDsKKwkJCWJyZWFrOworCQl9CisJCWlmIChwdHIgKyBzaXplID4gaGJ1Zl9lbmQpIHsKKwkJICBnb3RvIG5vc3BjOworCQl9CisJCWlmIChmcmVhZChwdHIsIDEsIHNpemUsIHByb3h5KSAhPSBzaXplKSByZXR1cm4gTlVMTDsKKwkJaWYgKGFsaWFzZXMgPCAmYWxpYXNlc19wdHJzW01BWEFMSUFTRVMgLSAxXSkgeworCQkgICphbGlhc2VzKysgPSBwdHI7CisJCX0KKwkJcHRyICs9IHNpemU7CisJfQorCisJaW50IGFsaWFzZXNfbGVuID0gKChpbnQpKGFsaWFzZXMgLSBhbGlhc2VzX3B0cnMpICsgMSkgKiBzaXplb2YoKmhwLT5oX2FsaWFzZXMpOworCWlmIChwdHIgKyBhbGlhc2VzX2xlbiA+IGhidWZfZW5kKSB7CisJCWdvdG8gbm9zcGM7CisJfQorCWhwLT5oX2FsaWFzZXMgPSAodm9pZCopcHRyOworCW1lbWNweShwdHIsIGFsaWFzZXNfcHRycywgYWxpYXNlc19sZW4pOworCXB0ciArPSBhbGlhc2VzX2xlbjsKKworCWlmIChmcmVhZCgmc2l6ZSwgMSwgc2l6ZW9mKHNpemUpLCBwcm94eSkgIT0gc2l6ZW9mKHNpemUpKSByZXR1cm4gTlVMTDsKKwlocC0+aF9hZGRydHlwZSA9IG50b2hsKHNpemUpOworCisJaWYgKGZyZWFkKCZzaXplLCAxLCBzaXplb2Yoc2l6ZSksIHByb3h5KSAhPSBzaXplb2Yoc2l6ZSkpIHJldHVybiBOVUxMOworCWhwLT5oX2xlbmd0aCA9IG50b2hsKHNpemUpOworCisJY2hhciAqYWRkcl9wdHJzW01BWEFERFJTXTsKKwljaGFyICoqYWRkcl9wID0gJmFkZHJfcHRyc1swXTsKKworCXdoaWxlICgxKSB7CisJCWlmIChmcmVhZCgmc2l6ZSwgMSwgc2l6ZW9mKHNpemUpLCBwcm94eSkgIT0gc2l6ZW9mKHNpemUpKSByZXR1cm4gTlVMTDsKKwkJc2l6ZSA9IG50b2hsKHNpemUpOworCQlpZiAoc2l6ZSA9PSAwKSB7CisJCQkqYWRkcl9wID0gTlVMTDsKKwkJCWJyZWFrOworCQl9CisJCWlmIChwdHIgKyBzaXplID4gaGJ1Zl9lbmQpIHsKKwkJICBnb3RvIG5vc3BjOworCQl9CisJCWlmIChmcmVhZChwdHIsIDEsIHNpemUsIHByb3h5KSAhPSBzaXplKSByZXR1cm4gTlVMTDsKKwkJaWYgKGFkZHJfcCA8ICZhZGRyX3B0cnNbTUFYQUREUlMgLSAxXSkgeworCQkgICphZGRyX3ArKyA9IHB0cjsKKwkJfQorCQlwdHIgKz0gc2l6ZTsKKwl9CisKKwlpbnQgYWRkcnNfbGVuID0gKChpbnQpKGFkZHJfcCAtIGFkZHJfcHRycykgKyAxKSAqIHNpemVvZigqaHAtPmhfYWRkcl9saXN0KTsKKwlpZiAocHRyICsgYWRkcnNfbGVuID4gaGJ1Zl9lbmQpIHsKKwkJZ290byBub3NwYzsKKwl9CisJaHAtPmhfYWRkcl9saXN0ID0gKHZvaWQqKXB0cjsKKwltZW1jcHkocHRyLCBhZGRyX3B0cnMsIGFkZHJzX2xlbik7CisJKmhlID0gTkVUREJfU1VDQ0VTUzsKKwlyZXR1cm4gaHA7CisKK25vc3BjOgorCSpoZSA9IE5FVERCX0lOVEVSTkFMOworCWVycm5vID0gRU5PU1BDOworCXJldHVybiBOVUxMOworfQorCitzdGF0aWMgc3RydWN0IGhvc3RlbnQgKgorZ2V0aG9zdGJ5bmFtZV9pbnRlcm5hbF9yZWFsKGNvbnN0IGNoYXIgKm5hbWUsIGludCBhZiwgcmVzX3N0YXRlIHJlcywgc3RydWN0IGhvc3RlbnQgKmhwLCBjaGFyICpidWYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGJ1ZmxlbiwgaW50ICpoZSkKK3sKKwljb25zdCBjaGFyICpjcDsKKwlzdHJ1Y3QgZ2V0bmFtYWRkciBpbmZvOworCWNoYXIgaGJ1ZltNQVhIT1NUTkFNRUxFTl07CisJc2l6ZV90IHNpemU7CisJc3RhdGljIGNvbnN0IG5zX2R0YWIgZHRhYltdID0geworCQlOU19GSUxFU19DQihfaGZfZ2V0aHRieW5hbWUsIE5VTEwpCisJCXsgTlNTUkNfRE5TLCBfZG5zX2dldGh0YnluYW1lLCBOVUxMIH0sCS8qIGZvcmNlIC1ESEVTSU9EICovCisJCU5TX05JU19DQihfeXBfZ2V0aHRieW5hbWUsIE5VTEwpCisJCU5TX05VTExfQ0IKKwl9OworCisJX0RJQUdBU1NFUlQobmFtZSAhPSBOVUxMKTsKKworCXN3aXRjaCAoYWYpIHsKKwljYXNlIEFGX0lORVQ6CisJCXNpemUgPSBOU19JTkFERFJTWjsKKwkJYnJlYWs7CisJY2FzZSBBRl9JTkVUNjoKKwkJc2l6ZSA9IE5TX0lONkFERFJTWjsKKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJKmhlID0gTkVUREJfSU5URVJOQUw7CisJCWVycm5vID0gRUFGTk9TVVBQT1JUOworCQlyZXR1cm4gTlVMTDsKKwl9CisJaWYgKGJ1ZmxlbiA8IHNpemUpCisJCWdvdG8gbm9zcGM7CisKKwlocC0+aF9hZGRydHlwZSA9IGFmOworCWhwLT5oX2xlbmd0aCA9IChpbnQpc2l6ZTsKKworCS8qCisJICogaWYgdGhlcmUgYXJlbid0IGFueSBkb3RzLCBpdCBjb3VsZCBiZSBhIHVzZXItbGV2ZWwgYWxpYXMuCisJICogdGhpcyBpcyBhbHNvIGRvbmUgaW4gcmVzX25xdWVyeSgpIHNpbmNlIHdlIGFyZSBub3QgdGhlIG9ubHkKKwkgKiBmdW5jdGlvbiB0aGF0IGxvb2tzIHVwIGhvc3QgbmFtZXMuCisJICovCisJaWYgKCFzdHJjaHIobmFtZSwgJy4nKSAmJiAoY3AgPSByZXNfaG9zdGFsaWFzKHJlcywgbmFtZSwKKwkgICAgaGJ1Ziwgc2l6ZW9mKGhidWYpKSkpCisJCW5hbWUgPSBjcDsKKworCS8qCisJICogZGlzYWxsb3cgbmFtZXMgY29uc2lzdGluZyBvbmx5IG9mIGRpZ2l0cy9kb3RzLCB1bmxlc3MKKwkgKiB0aGV5IGVuZCBpbiBhIGRvdC4KKwkgKi8KKwlpZiAoaXNkaWdpdCgodV9jaGFyKSBuYW1lWzBdKSkKKwkJZm9yIChjcCA9IG5hbWU7OyArK2NwKSB7CisJCQlpZiAoISpjcCkgeworCQkJCWlmICgqLS1jcCA9PSAnLicpCisJCQkJCWJyZWFrOworCQkJCS8qCisJCQkJICogQWxsLW51bWVyaWMsIG5vIGRvdCBhdCB0aGUgZW5kLgorCQkJCSAqIEZha2UgdXAgYSBob3N0ZW50IGFzIGlmIHdlJ2QgYWN0dWFsbHkKKwkJCQkgKiBkb25lIGEgbG9va3VwLgorCQkJCSAqLworCQkJCWdvdG8gZmFrZTsKKwkJCX0KKwkJCWlmICghaXNkaWdpdCgodV9jaGFyKSAqY3ApICYmICpjcCAhPSAnLicpCisJCQkJYnJlYWs7CisJCX0KKwlpZiAoKGlzeGRpZ2l0KCh1X2NoYXIpIG5hbWVbMF0pICYmIHN0cmNocihuYW1lLCAnOicpICE9IE5VTEwpIHx8CisJICAgIG5hbWVbMF0gPT0gJzonKQorCQlmb3IgKGNwID0gbmFtZTs7ICsrY3ApIHsKKwkJCWlmICghKmNwKSB7CisJCQkJaWYgKCotLWNwID09ICcuJykKKwkJCQkJYnJlYWs7CisJCQkJLyoKKwkJCQkgKiBBbGwtSVB2Ni1sZWdhbCwgbm8gZG90IGF0IHRoZSBlbmQuCisJCQkJICogRmFrZSB1cCBhIGhvc3RlbnQgYXMgaWYgd2UnZCBhY3R1YWxseQorCQkJCSAqIGRvbmUgYSBsb29rdXAuCisJCQkJICovCisJCQkJZ290byBmYWtlOworCQkJfQorCQkJaWYgKCFpc3hkaWdpdCgodV9jaGFyKSAqY3ApICYmICpjcCAhPSAnOicgJiYgKmNwICE9ICcuJykKKwkJCQlicmVhazsKKwkJfQorCisJKmhlID0gTkVUREJfSU5URVJOQUw7CisJaW5mby5ocCA9IGhwOworCWluZm8uYnVmID0gYnVmOworCWluZm8uYnVmbGVuID0gYnVmbGVuOworCWluZm8uaGUgPSBoZTsKKwlpZiAobnNkaXNwYXRjaCgmaW5mbywgZHRhYiwgTlNEQl9IT1NUUywgImdldGhvc3RieW5hbWUiLAorCSAgICBkZWZhdWx0X2Ruc19maWxlcywgbmFtZSwgc3RybGVuKG5hbWUpLCBhZikgIT0gTlNfU1VDQ0VTUykKKwkJcmV0dXJuIE5VTEw7CisJKmhlID0gTkVUREJfU1VDQ0VTUzsKKwlyZXR1cm4gaHA7Citub3NwYzoKKwkqaGUgPSBORVREQl9JTlRFUk5BTDsKKwllcnJubyA9IEVOT1NQQzsKKwlyZXR1cm4gTlVMTDsKK2Zha2U6CisJSEVOVF9BUlJBWShocC0+aF9hZGRyX2xpc3QsIDEsIGJ1ZiwgYnVmbGVuKTsKKwlIRU5UX0FSUkFZKGhwLT5oX2FsaWFzZXMsIDAsIGJ1ZiwgYnVmbGVuKTsKKworCWhwLT5oX2FsaWFzZXNbMF0gPSBOVUxMOworCWlmIChzaXplID4gYnVmbGVuKQorCQlnb3RvIG5vc3BjOworCisJaWYgKGluZXRfcHRvbihhZiwgbmFtZSwgYnVmKSA8PSAwKSB7CisJCSpoZSA9IEhPU1RfTk9UX0ZPVU5EOworCQlyZXR1cm4gTlVMTDsKKwl9CisJaHAtPmhfYWRkcl9saXN0WzBdID0gYnVmOworCWhwLT5oX2FkZHJfbGlzdFsxXSA9IE5VTEw7CisJYnVmICs9IHNpemU7CisJYnVmbGVuIC09IHNpemU7CisJSEVOVF9TQ09QWShocC0+aF9uYW1lLCBuYW1lLCBidWYsIGJ1Zmxlbik7CisJaWYgKHJlcy0+b3B0aW9ucyAmIFJFU19VU0VfSU5FVDYpCisJCW1hcF92NHY2X2hvc3RlbnQoaHAsICZidWYsIGJ1ZiArIGJ1Zmxlbik7CisJKmhlID0gTkVUREJfU1VDQ0VTUzsKKwlyZXR1cm4gaHA7Cit9CisKKy8vIHZlcnkgc2ltaWxhciBpbiBwcm94eS1uZXNzIHRvIGFuZHJvaWRfZ2V0YWRkcmluZm9fcHJveHkKK3N0YXRpYyBzdHJ1Y3QgaG9zdGVudCAqCitnZXRob3N0YnluYW1lX2ludGVybmFsKGNvbnN0IGNoYXIgKm5hbWUsIGludCBhZiwgcmVzX3N0YXRlIHJlcywgc3RydWN0IGhvc3RlbnQgKmhwLCBjaGFyICpoYnVmLAorICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgaGJ1ZmxlbiwgaW50ICplcnJvcnAsIHVuc2lnbmVkIG5ldGlkLCB1bnNpZ25lZCBtYXJrKQoreworCUZJTEUqIHByb3h5ID0gYW5kcm9pZF9vcGVuX3Byb3h5KCk7CisJaWYgKHByb3h5ID09IE5VTEwpIHsKKwkJLy8gRWl0aGVyIHdlJ3JlIG5vdCBzdXBwb3NlZCB0byBiZSB1c2luZyB0aGUgcHJveHkgb3IgdGhlIHByb3h5IGlzIHVuYXZhaWxhYmxlLgorCQlyZXNfc2V0bmV0aWQocmVzLCBuZXRpZCk7CisJCXJlc19zZXRtYXJrKHJlcywgbWFyayk7CisJCXJldHVybiBnZXRob3N0YnluYW1lX2ludGVybmFsX3JlYWwobmFtZSwgYWYsIHJlcywgaHAsIGhidWYsIGhidWZsZW4sIGVycm9ycCk7CisJfQorCisJbmV0aWQgPSBfX25ldGRDbGllbnREaXNwYXRjaC5uZXRJZEZvclJlc29sdihuZXRpZCk7CisKKwkvLyBUaGlzIGlzIHdyaXRpbmcgdG8gc3lzdGVtL25ldGQvc2VydmVyL0Ruc1Byb3h5TGlzdGVuZXIuY3BwIGFuZCBjaGFuZ2VzCisJLy8gaGVyZSBuZWVkIHRvIGJlIG1hdGNoZWQgdGhlcmUuCisJaWYgKGZwcmludGYocHJveHksICJnZXRob3N0YnluYW1lICV1ICVzICVkIiwKKwkJCW5ldGlkLAorCQkJbmFtZSA9PSBOVUxMID8gIl4iIDogbmFtZSwKKwkJCWFmKSA8IDApIHsKKwkJZmNsb3NlKHByb3h5KTsKKwkJcmV0dXJuIE5VTEw7CisJfQorCisJaWYgKGZwdXRjKDAsIHByb3h5KSA9PSBFT0YgfHwgZmZsdXNoKHByb3h5KSAhPSAwKSB7CisJCWZjbG9zZShwcm94eSk7CisJCXJldHVybiBOVUxMOworCX0KKworCXN0cnVjdCBob3N0ZW50KiByZXN1bHQgPSBhbmRyb2lkX3JlYWRfaG9zdGVudChwcm94eSwgaHAsIGhidWYsIGhidWZsZW4sIGVycm9ycCk7CisJZmNsb3NlKHByb3h5KTsKKwlyZXR1cm4gcmVzdWx0OworfQorCisvKiBUaGUgcHJvdG90eXBlIG9mIGdldGhvc3RieWFkZHJfciBpcyBmcm9tIGdsaWJjLCBub3QgdGhhdCBpbiBuZXRic2QuICovCitpbnQgZ2V0aG9zdGJ5YWRkcl9yKGNvbnN0IHZvaWQgKmFkZHIsIHNvY2tsZW5fdCBsZW4sIGludCBhZiwgc3RydWN0IGhvc3RlbnQgKmhwLCBjaGFyICpidWYsCisgICAgICAgICAgICAgICAgICAgIHNpemVfdCBidWZsZW4sIHN0cnVjdCBob3N0ZW50ICoqcmVzdWx0LCBpbnQgKmhfZXJybm9wKQoreworCSpyZXN1bHQgPSBhbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXRfcHJveHlfaW50ZXJuYWwoYWRkciwgbGVuLCBhZiwgaHAsIGJ1ZiwgYnVmbGVuLCBoX2Vycm5vcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBORVRJRF9VTlNFVCwgTUFSS19VTlNFVCk7CisJaWYgKCEqcmVzdWx0ICYmIGVycm5vID09IEVOT1NQQykgeworCQllcnJubyA9IEVSQU5HRTsKKwkJcmV0dXJuIEVSQU5HRTsKKwl9CisJcmV0dXJuICgqcmVzdWx0KSA/IDAgOiAtMTsKK30KKworc3RhdGljIHN0cnVjdCBob3N0ZW50ICoKK2FuZHJvaWRfZ2V0aG9zdGJ5YWRkcmZvcm5ldF9yZWFsKGNvbnN0IHZvaWQgKmFkZHIsIHNvY2tsZW5fdCBsZW4sIGludCBhZiwgc3RydWN0IGhvc3RlbnQgKmhwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciAqYnVmLCBzaXplX3QgYnVmbGVuLCBpbnQgKmhlLCB1bnNpZ25lZCBuZXRpZCwgdW5zaWduZWQgbWFyaykKK3sKKwljb25zdCB1X2NoYXIgKnVhZGRyID0gKGNvbnN0IHVfY2hhciAqKWFkZHI7CisJc29ja2xlbl90IHNpemU7CisJc3RydWN0IGdldG5hbWFkZHIgaW5mbzsKKwlzdGF0aWMgY29uc3QgbnNfZHRhYiBkdGFiW10gPSB7CisJCU5TX0ZJTEVTX0NCKF9oZl9nZXRodGJ5YWRkciwgTlVMTCkKKwkJeyBOU1NSQ19ETlMsIF9kbnNfZ2V0aHRieWFkZHIsIE5VTEwgfSwJLyogZm9yY2UgLURIRVNJT0QgKi8KKwkJTlNfTklTX0NCKF95cF9nZXRodGJ5YWRkciwgTlVMTCkKKwkJTlNfTlVMTF9DQgorCX07CisKKwlfRElBR0FTU0VSVChhZGRyICE9IE5VTEwpOworCisJaWYgKGFmID09IEFGX0lORVQ2ICYmIGxlbiA9PSBOU19JTjZBRERSU1ogJiYKKwkgICAgKElONl9JU19BRERSX0xJTktMT0NBTCgoY29uc3Qgc3RydWN0IGluNl9hZGRyICopYWRkcikgfHwKKwkgICAgIElONl9JU19BRERSX1NJVEVMT0NBTCgoY29uc3Qgc3RydWN0IGluNl9hZGRyICopYWRkcikpKSB7CisJCSpoZSA9IEhPU1RfTk9UX0ZPVU5EOworCQlyZXR1cm4gTlVMTDsKKwl9CisJaWYgKGFmID09IEFGX0lORVQ2ICYmIGxlbiA9PSBOU19JTjZBRERSU1ogJiYKKwkgICAgKElONl9JU19BRERSX1Y0TUFQUEVEKChjb25zdCBzdHJ1Y3QgaW42X2FkZHIgKilhZGRyKSB8fAorCSAgICAgSU42X0lTX0FERFJfVjRDT01QQVQoKGNvbnN0IHN0cnVjdCBpbjZfYWRkciAqKWFkZHIpKSkgeworCQkvKiBVbm1hcC4gKi8KKwkJdWFkZHIgKz0gTlNfSU42QUREUlNaIC0gTlNfSU5BRERSU1o7CisJCWFkZHIgPSB1YWRkcjsKKwkJYWYgPSBBRl9JTkVUOworCQlsZW4gPSBOU19JTkFERFJTWjsKKwl9CisJc3dpdGNoIChhZikgeworCWNhc2UgQUZfSU5FVDoKKwkJc2l6ZSA9IE5TX0lOQUREUlNaOworCQlicmVhazsKKwljYXNlIEFGX0lORVQ2OgorCQlzaXplID0gTlNfSU42QUREUlNaOworCQlicmVhazsKKwlkZWZhdWx0OgorCQllcnJubyA9IEVBRk5PU1VQUE9SVDsKKwkJKmhlID0gTkVUREJfSU5URVJOQUw7CisJCXJldHVybiBOVUxMOworCX0KKwlpZiAoc2l6ZSAhPSBsZW4pIHsKKwkJZXJybm8gPSBFSU5WQUw7CisJCSpoZSA9IE5FVERCX0lOVEVSTkFMOworCQlyZXR1cm4gTlVMTDsKKwl9CisJaW5mby5ocCA9IGhwOworCWluZm8uYnVmID0gYnVmOworCWluZm8uYnVmbGVuID0gYnVmbGVuOworCWluZm8uaGUgPSBoZTsKKwkqaGUgPSBORVREQl9JTlRFUk5BTDsKKwlpZiAobnNkaXNwYXRjaCgmaW5mbywgZHRhYiwgTlNEQl9IT1NUUywgImdldGhvc3RieWFkZHIiLAorCSAgICBkZWZhdWx0X2Ruc19maWxlcywgdWFkZHIsIGxlbiwgYWYsIG5ldGlkLCBtYXJrKSAhPSBOU19TVUNDRVNTKQorCQlyZXR1cm4gTlVMTDsKKwkqaGUgPSBORVREQl9TVUNDRVNTOworCXJldHVybiBocDsKK30KKworc3RhdGljIHN0cnVjdCBob3N0ZW50KgorYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0X3Byb3h5X2ludGVybmFsKGNvbnN0IHZvaWQqIGFkZHIsIHNvY2tsZW5fdCBsZW4sIGludCBhZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGhvc3RlbnQgKmhwLCBjaGFyICpoYnVmLCBzaXplX3QgaGJ1ZmxlbiwgaW50ICpoZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbmV0aWQsIHVuc2lnbmVkIG1hcmspCit7CisJRklMRSogcHJveHkgPSBhbmRyb2lkX29wZW5fcHJveHkoKTsKKwlpZiAocHJveHkgPT0gTlVMTCkgeworCQkvLyBFaXRoZXIgd2UncmUgbm90IHN1cHBvc2VkIHRvIGJlIHVzaW5nIHRoZSBwcm94eSBvciB0aGUgcHJveHkgaXMgdW5hdmFpbGFibGUuCisJCXJldHVybiBhbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXRfcmVhbChhZGRyLGxlbiwgYWYsIGhwLCBoYnVmLCBoYnVmbGVuLCBoZSwgbmV0aWQsIG1hcmspOworCX0KKworCWNoYXIgYnVmW0lORVQ2X0FERFJTVFJMRU5dOyAgLy9iaWcgZW5vdWdoIGZvciBJUHY0IGFuZCBJUHY2CisJY29uc3QgY2hhciAqIGFkZHJTdHIgPSBpbmV0X250b3AoYWYsIGFkZHIsIGJ1Ziwgc2l6ZW9mKGJ1ZikpOworCWlmIChhZGRyU3RyID09IE5VTEwpIHsKKwkJZmNsb3NlKHByb3h5KTsKKwkJcmV0dXJuIE5VTEw7CisJfQorCisJbmV0aWQgPSBfX25ldGRDbGllbnREaXNwYXRjaC5uZXRJZEZvclJlc29sdihuZXRpZCk7CisKKwlpZiAoZnByaW50Zihwcm94eSwgImdldGhvc3RieWFkZHIgJXMgJWQgJWQgJXUiLAorCQkJYWRkclN0ciwgbGVuLCBhZiwgbmV0aWQpIDwgMCkgeworCQlmY2xvc2UocHJveHkpOworCQlyZXR1cm4gTlVMTDsKKwl9CisKKwlpZiAoZnB1dGMoMCwgcHJveHkpID09IEVPRiB8fCBmZmx1c2gocHJveHkpICE9IDApIHsKKwkJZmNsb3NlKHByb3h5KTsKKwkJcmV0dXJuIE5VTEw7CisJfQorCisJc3RydWN0IGhvc3RlbnQgKnJlc3VsdCA9IGFuZHJvaWRfcmVhZF9ob3N0ZW50KHByb3h5LCBocCwgaGJ1ZiwgaGJ1ZmxlbiwgaGUpOworCWZjbG9zZShwcm94eSk7CisJcmV0dXJuIHJlc3VsdDsKK30KKworc3RydWN0IGhvc3RlbnQqCituZXRic2RfZ2V0aG9zdGVudF9yKEZJTEUgKmhmLCBzdHJ1Y3QgaG9zdGVudCAqaGVudCwgY2hhciAqYnVmLCBzaXplX3QgYnVmbGVuLCBpbnQgKmhlKQoreworCWNoYXIgKnAsICpuYW1lOworCWNoYXIgKmNwLCAqKnE7CisJaW50IGFmLCBsZW47CisJc2l6ZV90IGFudW07CisJY2hhciAqKmFsaWFzZXM7CisJc2l6ZV90IG1heGFsaWFzZXM7CisJc3RydWN0IGluNl9hZGRyIGhvc3RfYWRkcjsKKworCWlmIChoZiA9PSBOVUxMKSB7CisJCSpoZSA9IE5FVERCX0lOVEVSTkFMOworCQllcnJubyA9IEVJTlZBTDsKKwkJcmV0dXJuIE5VTEw7CisJfQorCXAgPSBOVUxMOworCXNldHVwKGFsaWFzZXMsIG1heGFsaWFzZXMpOworCisJLyogQWxsb2NhdGUgYSBuZXcgc3BhY2UgdG8gcmVhZCBmaWxlIGxpbmVzIGxpa2UgdXBzdHJlYW0gZG9lcy4KKwkgKiBUbyBrZWVwIHJlZW50cmFuY3kgd2UgY2Fubm90IHVzZSBfX3Jlc19nZXRfc3RhdGljKCktPmhvc3RidWYgaGVyZSwKKwkgKiBhcyB0aGUgYnVmZmVyIG1heSBiZSB1c2VkIHRvIHN0b3JlIGNvbnRlbnQgZm9yIGEgcHJldmlvdXMgaG9zdGVudAorCSAqIHJldHVybmVkIGJ5IG5vbi1yZWVudHJhbnQgZnVuY3Rpb25zIGxpa2UgZ2V0aG9zdGJ5bmFtZSgpLgorCSAqLworCWNvbnN0IHNpemVfdCBsaW5lX2J1Zl9zaXplID0gc2l6ZW9mKF9fcmVzX2dldF9zdGF0aWMoKS0+aG9zdGJ1Zik7CisJaWYgKChwID0gbWFsbG9jKGxpbmVfYnVmX3NpemUpKSA9PSBOVUxMKSB7CisJICBnb3RvIG5vc3BjOworCX0KKwlmb3IgKDs7KSB7CisJCWlmICghZmdldHMocCwgbGluZV9idWZfc2l6ZSwgaGYpKSB7CisJCQlmcmVlKHApOworCQkJZnJlZShhbGlhc2VzKTsKKwkJCSpoZSA9IEhPU1RfTk9UX0ZPVU5EOworCQkJcmV0dXJuIE5VTEw7CisgICAgCQl9CisJCWlmICgqcCA9PSAnIycpIHsKKwkJCWNvbnRpbnVlOworCQl9CisJCWlmICghKGNwID0gc3RycGJyayhwLCAiI1xuIikpKSB7CisJCQljb250aW51ZTsKKwkJfQorCQkqY3AgPSAnXDAnOworCQlpZiAoIShjcCA9IHN0cnBicmsocCwgIiBcdCIpKSkKKwkJCWNvbnRpbnVlOworCQkqY3ArKyA9ICdcMCc7CisJCWlmIChpbmV0X3B0b24oQUZfSU5FVDYsIHAsICZob3N0X2FkZHIpID4gMCkgeworCQkJYWYgPSBBRl9JTkVUNjsKKwkJCWxlbiA9IE5TX0lONkFERFJTWjsKKwkJfSBlbHNlIHsKKwkJCWlmIChpbmV0X3B0b24oQUZfSU5FVCwgcCwgJmhvc3RfYWRkcikgPD0gMCkKKwkJCQljb250aW51ZTsKKworCQkJcmVzX3N0YXRlIHJlcyA9IF9fcmVzX2dldF9zdGF0ZSgpOworCQkJaWYgKHJlcyA9PSBOVUxMKQorCQkJCWdvdG8gbm9zcGM7CisJCQlpZiAocmVzLT5vcHRpb25zICYgUkVTX1VTRV9JTkVUNikgeworCQkJCW1hcF92NHY2X2FkZHJlc3MoYnVmLCBidWYpOworCQkJCWFmID0gQUZfSU5FVDY7CisJCQkJbGVuID0gTlNfSU42QUREUlNaOworCQkJfSBlbHNlIHsKKwkJCQlhZiA9IEFGX0lORVQ7CisJCQkJbGVuID0gTlNfSU5BRERSU1o7CisJCQl9CisJCQlfX3Jlc19wdXRfc3RhdGUocmVzKTsKKwkJfQorCisJCS8qIGlmIHRoaXMgaXMgbm90IHNvbWV0aGluZyB3ZSdyZSBsb29raW5nIGZvciwgc2tpcCBpdC4gKi8KKwkJaWYgKGhlbnQtPmhfYWRkcnR5cGUgIT0gMCAmJiBoZW50LT5oX2FkZHJ0eXBlICE9IGFmKQorCQkJY29udGludWU7CisJCWlmIChoZW50LT5oX2xlbmd0aCAhPSAwICYmIGhlbnQtPmhfbGVuZ3RoICE9IGxlbikKKwkJCWNvbnRpbnVlOworCisJCXdoaWxlICgqY3AgPT0gJyAnIHx8ICpjcCA9PSAnXHQnKQorCQkJY3ArKzsKKwkJaWYgKChjcCA9IHN0cnBicmsobmFtZSA9IGNwLCAiIFx0IikpICE9IE5VTEwpCisJCQkqY3ArKyA9ICdcMCc7CisJCXEgPSBhbGlhc2VzOworCQl3aGlsZSAoY3AgJiYgKmNwKSB7CisJCQlpZiAoKmNwID09ICcgJyB8fCAqY3AgPT0gJ1x0JykgeworCQkJCWNwKys7CisJCQkJY29udGludWU7CisJCQl9CisJCQlhZGRhbGlhcyhxLCBjcCwgYWxpYXNlcywgbWF4YWxpYXNlcyk7CisJCQlpZiAoKGNwID0gc3RycGJyayhjcCwgIiBcdCIpKSAhPSBOVUxMKQorCQkJCSpjcCsrID0gJ1wwJzsKKwkJfQorCQlicmVhazsKKwl9CisJaGVudC0+aF9sZW5ndGggPSBsZW47CisJaGVudC0+aF9hZGRydHlwZSA9IGFmOworCUhFTlRfQVJSQVkoaGVudC0+aF9hZGRyX2xpc3QsIDEsIGJ1ZiwgYnVmbGVuKTsKKwlhbnVtID0gKHNpemVfdCkocSAtIGFsaWFzZXMpOworCUhFTlRfQVJSQVkoaGVudC0+aF9hbGlhc2VzLCBhbnVtLCBidWYsIGJ1Zmxlbik7CisJSEVOVF9DT1BZKGhlbnQtPmhfYWRkcl9saXN0WzBdLCAmaG9zdF9hZGRyLCBoZW50LT5oX2xlbmd0aCwgYnVmLAorCSAgICBidWZsZW4pOworCWhlbnQtPmhfYWRkcl9saXN0WzFdID0gTlVMTDsKKworCUhFTlRfU0NPUFkoaGVudC0+aF9uYW1lLCBuYW1lLCBidWYsIGJ1Zmxlbik7CisJZm9yIChzaXplX3QgaSA9IDA7IGkgPCBhbnVtOyBpKyspCisJCUhFTlRfU0NPUFkoaGVudC0+aF9hbGlhc2VzW2ldLCBhbGlhc2VzW2ldLCBidWYsIGJ1Zmxlbik7CisJaGVudC0+aF9hbGlhc2VzW2FudW1dID0gTlVMTDsKKworCSpoZSA9IE5FVERCX1NVQ0NFU1M7CisJZnJlZShwKTsKKwlmcmVlKGFsaWFzZXMpOworCXJldHVybiBoZW50Oworbm9zcGM6CisJZnJlZShwKTsKKwlmcmVlKGFsaWFzZXMpOworCWVycm5vID0gRU5PU1BDOworCSpoZSA9IE5FVERCX0lOVEVSTkFMOworCXJldHVybiBOVUxMOworfQorCitzdGF0aWMgdm9pZAorbWFwX3Y0djZfYWRkcmVzcyhjb25zdCBjaGFyICpzcmMsIGNoYXIgKmRzdCkKK3sKKwl1X2NoYXIgKnAgPSAodV9jaGFyICopZHN0OworCWNoYXIgdG1wW05TX0lOQUREUlNaXTsKKwlpbnQgaTsKKworCV9ESUFHQVNTRVJUKHNyYyAhPSBOVUxMKTsKKwlfRElBR0FTU0VSVChkc3QgIT0gTlVMTCk7CisKKwkvKiBTdGFzaCBhIHRlbXBvcmFyeSBjb3B5IHNvIG91ciBjYWxsZXIgY2FuIHVwZGF0ZSBpbiBwbGFjZS4gKi8KKwkodm9pZCltZW1jcHkodG1wLCBzcmMsIE5TX0lOQUREUlNaKTsKKwkvKiBNYXJrIHRoaXMgaXB2NiBhZGRyIGFzIGEgbWFwcGVkIGlwdjQuICovCisJZm9yIChpID0gMDsgaSA8IDEwOyBpKyspCisJCSpwKysgPSAweDAwOworCSpwKysgPSAweGZmOworCSpwKysgPSAweGZmOworCS8qIFJldHJpZXZlIHRoZSBzYXZlZCBjb3B5IGFuZCB3ZSdyZSBkb25lLiAqLworCSh2b2lkKW1lbWNweShwLCB0bXAsIE5TX0lOQUREUlNaKTsKK30KKworc3RhdGljIHZvaWQKK21hcF92NHY2X2hvc3RlbnQoc3RydWN0IGhvc3RlbnQgKmhwLCBjaGFyICoqYnBwLCBjaGFyICplcCkKK3sKKwljaGFyICoqYXA7CisKKwlfRElBR0FTU0VSVChocCAhPSBOVUxMKTsKKwlfRElBR0FTU0VSVChicHAgIT0gTlVMTCk7CisJX0RJQUdBU1NFUlQoZXAgIT0gTlVMTCk7CisKKwlpZiAoaHAtPmhfYWRkcnR5cGUgIT0gQUZfSU5FVCB8fCBocC0+aF9sZW5ndGggIT0gTlNfSU5BRERSU1opCisJCXJldHVybjsKKwlocC0+aF9hZGRydHlwZSA9IEFGX0lORVQ2OworCWhwLT5oX2xlbmd0aCA9IE5TX0lONkFERFJTWjsKKwlmb3IgKGFwID0gaHAtPmhfYWRkcl9saXN0OyAqYXA7IGFwKyspIHsKKwkJaW50IGkgPSAoaW50KShzaXplb2YoYWxpZ24pIC0KKwkJICAgIChzaXplX3QpKCh1X2xvbmcpKmJwcCAlIHNpemVvZihhbGlnbikpKTsKKworCQlpZiAoZXAgLSAqYnBwIDwgKGkgKyBOU19JTjZBRERSU1opKSB7CisJCQkvKiBPdXQgb2YgbWVtb3J5LiAgVHJ1bmNhdGUgYWRkcmVzcyBsaXN0IGhlcmUuICBYWFggKi8KKwkJCSphcCA9IE5VTEw7CisJCQlyZXR1cm47CisJCX0KKwkJKmJwcCArPSBpOworCQltYXBfdjR2Nl9hZGRyZXNzKCphcCwgKmJwcCk7CisJCSphcCA9ICpicHA7CisJCSpicHAgKz0gTlNfSU42QUREUlNaOworCX0KK30KKworc3RhdGljIHZvaWQKK2FkZHJzb3J0KGNoYXIgKiphcCwgaW50IG51bSwgcmVzX3N0YXRlIHJlcykKK3sKKwlpbnQgaSwgajsKKwljaGFyICoqcDsKKwlzaG9ydCBhdmFsW01BWEFERFJTXTsKKwlpbnQgbmVlZHNvcnQgPSAwOworCisJX0RJQUdBU1NFUlQoYXAgIT0gTlVMTCk7CisKKwlwID0gYXA7CisJZm9yIChpID0gMDsgaSA8IG51bTsgaSsrLCBwKyspIHsKKwkgICAgZm9yIChqID0gMCA7ICh1bnNpZ25lZClqIDwgcmVzLT5uc29ydDsgaisrKQorCQlpZiAocmVzLT5zb3J0X2xpc3Rbal0uYWRkci5zX2FkZHIgPT0KKwkJICAgICgoKHN0cnVjdCBpbl9hZGRyICopKHZvaWQgKikoKnApKS0+c19hZGRyICYKKwkJICAgIHJlcy0+c29ydF9saXN0W2pdLm1hc2spKQorCQkJYnJlYWs7CisJICAgIGF2YWxbaV0gPSBqOworCSAgICBpZiAobmVlZHNvcnQgPT0gMCAmJiBpID4gMCAmJiBqIDwgYXZhbFtpLTFdKQorCQluZWVkc29ydCA9IGk7CisJfQorCWlmICghbmVlZHNvcnQpCisJICAgIHJldHVybjsKKworCXdoaWxlIChuZWVkc29ydCA8IG51bSkgeworCSAgICBmb3IgKGogPSBuZWVkc29ydCAtIDE7IGogPj0gMDsgai0tKSB7CisJCWlmIChhdmFsW2pdID4gYXZhbFtqKzFdKSB7CisJCSAgICBjaGFyICpocDsKKworCQkgICAgaSA9IGF2YWxbal07CisJCSAgICBhdmFsW2pdID0gYXZhbFtqKzFdOworCQkgICAgYXZhbFtqKzFdID0gaTsKKworCQkgICAgaHAgPSBhcFtqXTsKKwkJICAgIGFwW2pdID0gYXBbaisxXTsKKwkJICAgIGFwW2orMV0gPSBocDsKKwkJfSBlbHNlCisJCSAgICBicmVhazsKKwkgICAgfQorCSAgICBuZWVkc29ydCsrOworCX0KK30KKworLypBUkdTVVNFRCovCitzdGF0aWMgaW50CitfZG5zX2dldGh0YnluYW1lKHZvaWQgKnJ2LCB2b2lkICpjYl9kYXRhLCB2YV9saXN0IGFwKQoreworCXF1ZXJ5YnVmICpidWY7CisJaW50IG4sIHR5cGU7CisJc3RydWN0IGhvc3RlbnQgKmhwOworCWNvbnN0IGNoYXIgKm5hbWU7CisJcmVzX3N0YXRlIHJlczsKKwlzdHJ1Y3QgZ2V0bmFtYWRkciAqaW5mbyA9IHJ2OworCisJX0RJQUdBU1NFUlQocnYgIT0gTlVMTCk7CisKKwluYW1lID0gdmFfYXJnKGFwLCBjaGFyICopOworCS8qIE5PU1RSSUNUIHNraXAgc3RyaW5nIGxlbiAqLyh2b2lkKXZhX2FyZyhhcCwgaW50KTsKKwlpbmZvLT5ocC0+aF9hZGRydHlwZSA9IHZhX2FyZyhhcCwgaW50KTsKKworCXN3aXRjaCAoaW5mby0+aHAtPmhfYWRkcnR5cGUpIHsKKwljYXNlIEFGX0lORVQ6CisJCWluZm8tPmhwLT5oX2xlbmd0aCA9IE5TX0lOQUREUlNaOworCQl0eXBlID0gVF9BOworCQlicmVhazsKKwljYXNlIEFGX0lORVQ2OgorCQlpbmZvLT5ocC0+aF9sZW5ndGggPSBOU19JTjZBRERSU1o7CisJCXR5cGUgPSBUX0FBQUE7CisJCWJyZWFrOworCWRlZmF1bHQ6CisJCXJldHVybiBOU19VTkFWQUlMOworCX0KKwlidWYgPSBtYWxsb2Moc2l6ZW9mKCpidWYpKTsKKwlpZiAoYnVmID09IE5VTEwpIHsKKwkJKmluZm8tPmhlID0gTkVUREJfSU5URVJOQUw7CisJCXJldHVybiBOU19OT1RGT1VORDsKKwl9CisJcmVzID0gX19yZXNfZ2V0X3N0YXRlKCk7CisJaWYgKHJlcyA9PSBOVUxMKSB7CisJCWZyZWUoYnVmKTsKKwkJcmV0dXJuIE5TX05PVEZPVU5EOworCX0KKwluID0gcmVzX25zZWFyY2gocmVzLCBuYW1lLCBDX0lOLCB0eXBlLCBidWYtPmJ1ZiwgKGludClzaXplb2YoYnVmLT5idWYpKTsKKwlpZiAobiA8IDApIHsKKwkJZnJlZShidWYpOworCQlkZWJ1Z3ByaW50ZigicmVzX25zZWFyY2ggZmFpbGVkICglZClcbiIsIHJlcywgbik7CisJCV9fcmVzX3B1dF9zdGF0ZShyZXMpOworCQlyZXR1cm4gTlNfTk9URk9VTkQ7CisJfQorCWhwID0gZ2V0YW5zd2VyKGJ1ZiwgbiwgbmFtZSwgdHlwZSwgcmVzLCBpbmZvLT5ocCwgaW5mby0+YnVmLAorCSAgICBpbmZvLT5idWZsZW4sIGluZm8tPmhlKTsKKwlmcmVlKGJ1Zik7CisJX19yZXNfcHV0X3N0YXRlKHJlcyk7CisJaWYgKGhwID09IE5VTEwpCisJCXN3aXRjaCAoKmluZm8tPmhlKSB7CisJCWNhc2UgSE9TVF9OT1RfRk9VTkQ6CisJCQlyZXR1cm4gTlNfTk9URk9VTkQ7CisJCWNhc2UgVFJZX0FHQUlOOgorCQkJcmV0dXJuIE5TX1RSWUFHQUlOOworCQlkZWZhdWx0OgorCQkJcmV0dXJuIE5TX1VOQVZBSUw7CisJCX0KKwlyZXR1cm4gTlNfU1VDQ0VTUzsKK30KKworLypBUkdTVVNFRCovCitzdGF0aWMgaW50CitfZG5zX2dldGh0YnlhZGRyKHZvaWQgKnJ2LCB2b2lkCSpjYl9kYXRhLCB2YV9saXN0IGFwKQoreworCWNoYXIgcWJ1ZltNQVhETkFNRSArIDFdLCAqcXAsICplcDsKKwlpbnQgbjsKKwlxdWVyeWJ1ZiAqYnVmOworCXN0cnVjdCBob3N0ZW50ICpocDsKKwljb25zdCB1bnNpZ25lZCBjaGFyICp1YWRkcjsKKwlpbnQgYWR2YW5jZTsKKwlyZXNfc3RhdGUgcmVzOworCWNoYXIgKmJmOworCXNpemVfdCBibGVuOworCXN0cnVjdCBnZXRuYW1hZGRyICppbmZvID0gcnY7CisJdW5zaWduZWQgbmV0aWQsIG1hcms7CisKKwlfRElBR0FTU0VSVChydiAhPSBOVUxMKTsKKworCXVhZGRyID0gdmFfYXJnKGFwLCB1bnNpZ25lZCBjaGFyICopOworCWluZm8tPmhwLT5oX2xlbmd0aCA9IHZhX2FyZyhhcCwgaW50KTsKKwlpbmZvLT5ocC0+aF9hZGRydHlwZSA9IHZhX2FyZyhhcCwgaW50KTsKKwluZXRpZCA9IHZhX2FyZyhhcCwgdW5zaWduZWQpOworCW1hcmsgPSB2YV9hcmcoYXAsIHVuc2lnbmVkKTsKKworCXN3aXRjaCAoaW5mby0+aHAtPmhfYWRkcnR5cGUpIHsKKwljYXNlIEFGX0lORVQ6CisJCSh2b2lkKXNucHJpbnRmKHFidWYsIHNpemVvZihxYnVmKSwgIiV1LiV1LiV1LiV1LmluLWFkZHIuYXJwYSIsCisJCSAgICAodWFkZHJbM10gJiAweGZmKSwgKHVhZGRyWzJdICYgMHhmZiksCisJCSAgICAodWFkZHJbMV0gJiAweGZmKSwgKHVhZGRyWzBdICYgMHhmZikpOworCQlicmVhazsKKworCWNhc2UgQUZfSU5FVDY6CisJCXFwID0gcWJ1ZjsKKwkJZXAgPSBxYnVmICsgc2l6ZW9mKHFidWYpIC0gMTsKKwkJZm9yIChuID0gTlNfSU42QUREUlNaIC0gMTsgbiA+PSAwOyBuLS0pIHsKKwkJCWFkdmFuY2UgPSBzbnByaW50ZihxcCwgKHNpemVfdCkoZXAgLSBxcCksICIleC4leC4iLAorCQkJICAgIHVhZGRyW25dICYgMHhmLAorCQkJICAgICgodW5zaWduZWQgaW50KXVhZGRyW25dID4+IDQpICYgMHhmKTsKKwkJCWlmIChhZHZhbmNlID4gMCAmJiBxcCArIGFkdmFuY2UgPCBlcCkKKwkJCQlxcCArPSBhZHZhbmNlOworCQkJZWxzZSB7CisJCQkJKmluZm8tPmhlID0gTkVUREJfSU5URVJOQUw7CisJCQkJcmV0dXJuIE5TX05PVEZPVU5EOworCQkJfQorCQl9CisJCWlmIChzdHJsY2F0KHFidWYsICJpcDYuYXJwYSIsIHNpemVvZihxYnVmKSkgPj0gc2l6ZW9mKHFidWYpKSB7CisJCQkqaW5mby0+aGUgPSBORVREQl9JTlRFUk5BTDsKKwkJCXJldHVybiBOU19OT1RGT1VORDsKKwkJfQorCQlicmVhazsKKwlkZWZhdWx0OgorCQlyZXR1cm4gTlNfVU5BVkFJTDsKKwl9CisKKwlidWYgPSBtYWxsb2Moc2l6ZW9mKCpidWYpKTsKKwlpZiAoYnVmID09IE5VTEwpIHsKKwkJKmluZm8tPmhlID0gTkVUREJfSU5URVJOQUw7CisJCXJldHVybiBOU19OT1RGT1VORDsKKwl9CisJcmVzID0gX19yZXNfZ2V0X3N0YXRlKCk7CisJaWYgKHJlcyA9PSBOVUxMKSB7CisJCWZyZWUoYnVmKTsKKwkJcmV0dXJuIE5TX05PVEZPVU5EOworCX0KKwlyZXNfc2V0bmV0aWQocmVzLCBuZXRpZCk7CisJcmVzX3NldG1hcmsocmVzLCBtYXJrKTsKKwluID0gcmVzX25xdWVyeShyZXMsIHFidWYsIENfSU4sIFRfUFRSLCBidWYtPmJ1ZiwgKGludClzaXplb2YoYnVmLT5idWYpKTsKKwlpZiAobiA8IDApIHsKKwkJZnJlZShidWYpOworCQlkZWJ1Z3ByaW50ZigicmVzX25xdWVyeSBmYWlsZWQgKCVkKVxuIiwgcmVzLCBuKTsKKwkJX19yZXNfcHV0X3N0YXRlKHJlcyk7CisJCXJldHVybiBOU19OT1RGT1VORDsKKwl9CisJaHAgPSBnZXRhbnN3ZXIoYnVmLCBuLCBxYnVmLCBUX1BUUiwgcmVzLCBpbmZvLT5ocCwgaW5mby0+YnVmLAorCSAgICBpbmZvLT5idWZsZW4sIGluZm8tPmhlKTsKKwlmcmVlKGJ1Zik7CisJaWYgKGhwID09IE5VTEwpIHsKKwkJX19yZXNfcHV0X3N0YXRlKHJlcyk7CisJCXN3aXRjaCAoKmluZm8tPmhlKSB7CisJCWNhc2UgSE9TVF9OT1RfRk9VTkQ6CisJCQlyZXR1cm4gTlNfTk9URk9VTkQ7CisJCWNhc2UgVFJZX0FHQUlOOgorCQkJcmV0dXJuIE5TX1RSWUFHQUlOOworCQlkZWZhdWx0OgorCQkJcmV0dXJuIE5TX1VOQVZBSUw7CisJCX0KKwl9CisKKwliZiA9ICh2b2lkICopKGhwLT5oX2FkZHJfbGlzdCArIDIpOworCWJsZW4gPSAoc2l6ZV90KShiZiAtIGluZm8tPmJ1Zik7CisJaWYgKGJsZW4gKyBpbmZvLT5ocC0+aF9sZW5ndGggPiBpbmZvLT5idWZsZW4pCisJCWdvdG8gbm9zcGM7CisJaHAtPmhfYWRkcl9saXN0WzBdID0gYmY7CisJaHAtPmhfYWRkcl9saXN0WzFdID0gTlVMTDsKKwkodm9pZCltZW1jcHkoYmYsIHVhZGRyLCAoc2l6ZV90KWluZm8tPmhwLT5oX2xlbmd0aCk7CisJaWYgKGluZm8tPmhwLT5oX2FkZHJ0eXBlID09IEFGX0lORVQgJiYgKHJlcy0+b3B0aW9ucyAmIFJFU19VU0VfSU5FVDYpKSB7CisJCWlmIChibGVuICsgTlNfSU42QUREUlNaID4gaW5mby0+YnVmbGVuKQorCQkJZ290byBub3NwYzsKKwkJbWFwX3Y0djZfYWRkcmVzcyhiZiwgYmYpOworCQlocC0+aF9hZGRydHlwZSA9IEFGX0lORVQ2OworCQlocC0+aF9sZW5ndGggPSBOU19JTjZBRERSU1o7CisJfQorCisJX19yZXNfcHV0X3N0YXRlKHJlcyk7CisJKmluZm8tPmhlID0gTkVUREJfU1VDQ0VTUzsKKwlyZXR1cm4gTlNfU1VDQ0VTUzsKK25vc3BjOgorCWVycm5vID0gRU5PU1BDOworCSppbmZvLT5oZSA9IE5FVERCX0lOVEVSTkFMOworCXJldHVybiBOU19VTkFWQUlMOworfQorCisjaWZkZWYgWVAKKy8qQVJHU1VTRUQqLworc3RhdGljIHN0cnVjdCBob3N0ZW50ICoKK195cF9ob3N0ZW50KGNoYXIgKmxpbmUsIGludCBhZiwgc3RydWN0IGdldG5hbWFkZHIgKmluZm8pCit7CisJc3RydWN0IGluNl9hZGRyIGhvc3RfYWRkcnNbTUFYQUREUlNdOworCWNoYXIgKiphbGlhc2VzOworCXNpemVfdCBtYXhhbGlhc2VzOworCWNoYXIgKnAgPSBsaW5lOworCWNoYXIgKmNwLCAqKnEsICpwdHI7CisJc2l6ZV90IGxlbiwgYW51bSwgaTsKKwlpbnQgYWRkcm9rOworCWludCBtb3JlOworCXNpemVfdCBuYWRkcnM7CisJc3RydWN0IGhvc3RlbnQgKmhwID0gaW5mby0+aHA7CisKKwlfRElBR0FTU0VSVChsaW5lICE9IE5VTEwpOworCisJaHAtPmhfbmFtZSA9IE5VTEw7CisJaHAtPmhfYWRkcnR5cGUgPSBhZjsKKwlzd2l0Y2ggKGFmKSB7CisJY2FzZSBBRl9JTkVUOgorCQlocC0+aF9sZW5ndGggPSBOU19JTkFERFJTWjsKKwkJYnJlYWs7CisJY2FzZSBBRl9JTkVUNjoKKwkJaHAtPmhfbGVuZ3RoID0gTlNfSU42QUREUlNaOworCQlicmVhazsKKwlkZWZhdWx0OgorCQlyZXR1cm4gTlVMTDsKKwl9CisJc2V0dXAoYWxpYXNlcywgbWF4YWxpYXNlcyk7CisJbmFkZHJzID0gMDsKKwlxID0gYWxpYXNlczsKKworbmV4dGxpbmU6CisJLyogY2hlY2sgZm9yIGhvc3RfYWRkcnMgb3ZlcmZsb3cgKi8KKwlpZiAobmFkZHJzID49IF9fYXJyYXljb3VudChob3N0X2FkZHJzKSkKKwkJZ290byBkb25lOworCisJbW9yZSA9IDA7CisJY3AgPSBzdHJwYnJrKHAsICIgXHQiKTsKKwlpZiAoY3AgPT0gTlVMTCkKKwkJZ290byBkb25lOworCSpjcCsrID0gJ1wwJzsKKworCS8qIHAgaGFzIHNob3VsZCBoYXZlIGFuIGFkZHJlc3MgKi8KKwlhZGRyb2sgPSBpbmV0X3B0b24oYWYsIHAsICZob3N0X2FkZHJzW25hZGRyc10pOworCWlmIChhZGRyb2sgIT0gMSkgeworCQkvKiBza2lwIHRvIHRoZSBuZXh0IGxpbmUgKi8KKwkJd2hpbGUgKGNwICYmICpjcCkgeworCQkJaWYgKCpjcCA9PSAnXG4nKSB7CisJCQkJY3ArKzsKKwkJCQlnb3RvIG5leHRsaW5lOworCQkJfQorCQkJY3ArKzsKKwkJfQorCQlnb3RvIGRvbmU7CisJfQorCW5hZGRycysrOworCisJd2hpbGUgKCpjcCA9PSAnICcgfHwgKmNwID09ICdcdCcpCisJCWNwKys7CisJcCA9IGNwOworCWNwID0gc3RycGJyayhwLCAiIFx0XG4iKTsKKwlpZiAoY3AgIT0gTlVMTCkgeworCQlpZiAoKmNwID09ICdcbicpCisJCQltb3JlID0gMTsKKwkJKmNwKysgPSAnXDAnOworCX0KKwlpZiAoIWhwLT5oX25hbWUpCisJCWhwLT5oX25hbWUgPSBwOworCWVsc2UgaWYgKHN0cmNtcChocC0+aF9uYW1lLCBwKSA9PSAwKQorCQk7CisJZWxzZQorCQlhZGRhbGlhcyhxLCBwLCBhbGlhc2VzLCBtYXhhbGlhc2VzKTsKKwlwID0gY3A7CisJaWYgKG1vcmUpCisJCWdvdG8gbmV4dGxpbmU7CisKKwl3aGlsZSAoY3AgJiYgKmNwKSB7CisJCWlmICgqY3AgPT0gJyAnIHx8ICpjcCA9PSAnXHQnKSB7CisJCQljcCsrOworCQkJY29udGludWU7CisJCX0KKwkJaWYgKCpjcCA9PSAnXG4nKSB7CisJCQljcCsrOworCQkJZ290byBuZXh0bGluZTsKKwkJfQorCQlhZGRhbGlhcyhxLCBjcCwgYWxpYXNlcywgbWF4YWxpYXNlcyk7CisJCWNwID0gc3RycGJyayhjcCwgIiBcdCIpOworCQlpZiAoY3AgIT0gTlVMTCkKKwkJCSpjcCsrID0gJ1wwJzsKKwl9CisKK2RvbmU6CisJaWYgKGhwLT5oX25hbWUgPT0gTlVMTCkgeworCQlmcmVlKGFsaWFzZXMpOworCQlyZXR1cm4gTlVMTDsKKwl9CisKKwlwdHIgPSBpbmZvLT5idWY7CisJbGVuID0gaW5mby0+YnVmbGVuOworCisJYW51bSA9IChzaXplX3QpKHEgLSBhbGlhc2VzKTsKKwlIRU5UX0FSUkFZKGhwLT5oX2FkZHJfbGlzdCwgbmFkZHJzLCBwdHIsIGxlbik7CisJSEVOVF9BUlJBWShocC0+aF9hbGlhc2VzLCBhbnVtLCBwdHIsIGxlbik7CisKKwlmb3IgKGkgPSAwOyBpIDwgbmFkZHJzOyBpKyspCisJCUhFTlRfQ09QWShocC0+aF9hZGRyX2xpc3RbaV0sICZob3N0X2FkZHJzW2ldLCBocC0+aF9sZW5ndGgsCisJCSAgICBwdHIsIGxlbik7CisJaHAtPmhfYWRkcl9saXN0W25hZGRyc10gPSBOVUxMOworCisJSEVOVF9TQ09QWShocC0+aF9uYW1lLCBocC0+aF9uYW1lLCBwdHIsIGxlbik7CisKKwlmb3IgKGkgPSAwOyBpIDwgYW51bTsgaSsrKQorCQlIRU5UX1NDT1BZKGhwLT5oX2FsaWFzZXNbaV0sIGFsaWFzZXNbaV0sIHB0ciwgbGVuKTsKKwlocC0+aF9hbGlhc2VzW2FudW1dID0gTlVMTDsKKwlmcmVlKGFsaWFzZXMpOworCisJcmV0dXJuIGhwOworbm9zcGM6CisJZnJlZShhbGlhc2VzKTsKKwkqaW5mby0+aGUgPSBORVREQl9JTlRFUk5BTDsKKwllcnJubyA9IEVOT1NQQzsKKwlyZXR1cm4gTlVMTDsKK30KKworLypBUkdTVVNFRCovCitpbnQKK195cF9nZXRodGJ5YWRkcih2b2lkICpydiwgdm9pZCAqY2JfZGF0YSwgdmFfbGlzdCBhcCkKK3sKKwlzdHJ1Y3QgaG9zdGVudCAqaHAgPSBOVUxMOworCWNoYXIgKnlwY3VycmVudDsKKwlpbnQgeXBjdXJyZW50bGVuLCByOworCWNoYXIgbmFtZVtJTkVUNl9BRERSU1RSTEVOXTsJLyogWFhYIGVub3VnaD8gKi8KKwljb25zdCB1bnNpZ25lZCBjaGFyICp1YWRkcjsKKwlpbnQgYWY7CisJY29uc3QgY2hhciAqbWFwOworCXN0cnVjdCBnZXRuYW1hZGRyICppbmZvID0gcnY7CisKKwlfRElBR0FTU0VSVChydiAhPSBOVUxMKTsKKworCXVhZGRyID0gdmFfYXJnKGFwLCB1bnNpZ25lZCBjaGFyICopOworCS8qIE5PU1RSSUNUIHNraXAgbGVuICovKHZvaWQpdmFfYXJnKGFwLCBpbnQpOworCWFmID0gdmFfYXJnKGFwLCBpbnQpOworCisJaWYgKCFfX3lwZG9tYWluKSB7CisJCWlmIChfeXBfY2hlY2soJl9feXBkb21haW4pID09IDApCisJCQlyZXR1cm4gTlNfVU5BVkFJTDsKKwl9CisJLyoKKwkgKiBYWFggdW5mb3J0dW5hdGVseSwgd2UgY2Fubm90IHN1cHBvcnQgSVB2NiBleHRlbmRlZCBzY29wZWQgYWRkcmVzcworCSAqIG5vdGF0aW9uIGhlcmUuICBnZXRob3N0YnlhZGRyKCkgaXMgbm90IHNjb3BlLWF3YXJlLiAgdG9vIGJhZC4KKwkgKi8KKwlpZiAoaW5ldF9udG9wKGFmLCB1YWRkciwgbmFtZSwgKHNvY2tsZW5fdClzaXplb2YobmFtZSkpID09IE5VTEwpCisJCXJldHVybiBOU19VTkFWQUlMOworCXN3aXRjaCAoYWYpIHsKKwljYXNlIEFGX0lORVQ6CisJCW1hcCA9ICJob3N0cy5ieWFkZHIiOworCQlicmVhazsKKwlkZWZhdWx0OgorCQltYXAgPSAiaXBub2Rlcy5ieWFkZHIiOworCQlicmVhazsKKwl9CisJeXBjdXJyZW50ID0gTlVMTDsKKwlyID0geXBfbWF0Y2goX195cGRvbWFpbiwgbWFwLCBuYW1lLAorCQkoaW50KXN0cmxlbihuYW1lKSwgJnlwY3VycmVudCwgJnlwY3VycmVudGxlbik7CisJaWYgKHIgPT0gMCkKKwkJaHAgPSBfeXBfaG9zdGVudCh5cGN1cnJlbnQsIGFmLCBpbmZvKTsKKwllbHNlCisJCWhwID0gTlVMTDsKKwlmcmVlKHlwY3VycmVudCk7CisJaWYgKGhwID09IE5VTEwpIHsKKwkJKmluZm8tPmhlID0gSE9TVF9OT1RfRk9VTkQ7CisJCXJldHVybiBOU19OT1RGT1VORDsKKwl9CisJcmV0dXJuIE5TX1NVQ0NFU1M7Cit9CisKKy8qQVJHU1VTRUQqLworaW50CitfeXBfZ2V0aHRieW5hbWUodm9pZCAqcnYsIHZvaWQgKmNiX2RhdGEsIHZhX2xpc3QgYXApCit7CisJc3RydWN0IGhvc3RlbnQgKmhwOworCWNoYXIgKnlwY3VycmVudDsKKwlpbnQgeXBjdXJyZW50bGVuLCByOworCWNvbnN0IGNoYXIgKm5hbWU7CisJaW50IGFmOworCWNvbnN0IGNoYXIgKm1hcDsKKwlzdHJ1Y3QgZ2V0bmFtYWRkciAqaW5mbyA9IHJ2OworCisJX0RJQUdBU1NFUlQocnYgIT0gTlVMTCk7CisKKwluYW1lID0gdmFfYXJnKGFwLCBjaGFyICopOworCS8qIE5PU1RSSUNUIHNraXAgc3RyaW5nIGxlbiAqLyh2b2lkKXZhX2FyZyhhcCwgaW50KTsKKwlhZiA9IHZhX2FyZyhhcCwgaW50KTsKKworCWlmICghX195cGRvbWFpbikgeworCQlpZiAoX3lwX2NoZWNrKCZfX3lwZG9tYWluKSA9PSAwKQorCQkJcmV0dXJuIE5TX1VOQVZBSUw7CisJfQorCXN3aXRjaCAoYWYpIHsKKwljYXNlIEFGX0lORVQ6CisJCW1hcCA9ICJob3N0cy5ieW5hbWUiOworCQlicmVhazsKKwlkZWZhdWx0OgorCQltYXAgPSAiaXBub2Rlcy5ieW5hbWUiOworCQlicmVhazsKKwl9CisJeXBjdXJyZW50ID0gTlVMTDsKKwlyID0geXBfbWF0Y2goX195cGRvbWFpbiwgbWFwLCBuYW1lLAorCQkoaW50KXN0cmxlbihuYW1lKSwgJnlwY3VycmVudCwgJnlwY3VycmVudGxlbik7CisJaWYgKHIgPT0gMCkKKwkJaHAgPSBfeXBfaG9zdGVudCh5cGN1cnJlbnQsIGFmLCBpbmZvKTsKKwllbHNlCisJCWhwID0gTlVMTDsKKwlmcmVlKHlwY3VycmVudCk7CisJaWYgKGhwID09IE5VTEwpIHsKKwkJKmluZm8tPmhlID0gSE9TVF9OT1RfRk9VTkQ7CisJCXJldHVybiBOU19OT1RGT1VORDsKKwl9CisJcmV0dXJuIE5TX1NVQ0NFU1M7Cit9CisjZW5kaWYKKworLyoKKyAqIE5vbi1yZWVudHJhbnQgdmVyc2lvbnMuCisgKi8KKworc3RydWN0IGhvc3RlbnQgKgorZ2V0aG9zdGJ5bmFtZShjb25zdCBjaGFyICpuYW1lKQoreworCXN0cnVjdCBob3N0ZW50ICpyZXN1bHQgPSBOVUxMOworCXJlc19zdGF0aWMgcnMgPSBfX3Jlc19nZXRfc3RhdGljKCk7IC8qIFVzZSByZXNfc3RhdGljIHRvIHByb3ZpZGUgdGhyZWFkLXNhZmV0eS4gKi8KKworCWdldGhvc3RieW5hbWVfcihuYW1lLCAmcnMtPmhvc3QsIHJzLT5ob3N0YnVmLCBzaXplb2YocnMtPmhvc3RidWYpLCAmcmVzdWx0LCAmaF9lcnJubyk7CisJcmV0dXJuIHJlc3VsdDsKK30KKworc3RydWN0IGhvc3RlbnQgKgorZ2V0aG9zdGJ5bmFtZTIoY29uc3QgY2hhciAqbmFtZSwgaW50IGFmKQoreworCXN0cnVjdCBob3N0ZW50ICpyZXN1bHQgPSBOVUxMOworCXJlc19zdGF0aWMgcnMgPSBfX3Jlc19nZXRfc3RhdGljKCk7IC8qIFVzZSByZXNfc3RhdGljIHRvIHByb3ZpZGUgdGhyZWFkLXNhZmV0eS4gKi8KKworCWdldGhvc3RieW5hbWUyX3IobmFtZSwgYWYsICZycy0+aG9zdCwgcnMtPmhvc3RidWYsIHNpemVvZihycy0+aG9zdGJ1ZiksICZyZXN1bHQsICZoX2Vycm5vKTsKKwlyZXR1cm4gcmVzdWx0OworfQorCitzdHJ1Y3QgaG9zdGVudCAqCithbmRyb2lkX2dldGhvc3RieW5hbWVmb3JuZXQoY29uc3QgY2hhciAqbmFtZSwgaW50IGFmLCB1bnNpZ25lZCBuZXRpZCwgdW5zaWduZWQgbWFyaykKK3sKKwlzdHJ1Y3QgaG9zdGVudCAqaHA7CisJcmVzX3N0YXRlIHJlcyA9IF9fcmVzX2dldF9zdGF0ZSgpOworCWlmIChyZXMgPT0gTlVMTCkKKwkJcmV0dXJuIE5VTEw7CisJcmVzX3N0YXRpYyBycyA9IF9fcmVzX2dldF9zdGF0aWMoKTsgLyogVXNlIHJlc19zdGF0aWMgdG8gcHJvdmlkZSB0aHJlYWQtc2FmZXR5LiAqLworCWhwID0gZ2V0aG9zdGJ5bmFtZV9pbnRlcm5hbChuYW1lLCBhZiwgcmVzLCAmcnMtPmhvc3QsIHJzLT5ob3N0YnVmLCBzaXplb2YocnMtPmhvc3RidWYpLAorCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAmaF9lcnJubywgbmV0aWQsIG1hcmspOworCV9fcmVzX3B1dF9zdGF0ZShyZXMpOworCXJldHVybiBocDsKK30KKworc3RydWN0IGhvc3RlbnQgKgorZ2V0aG9zdGJ5YWRkcihjb25zdCB2b2lkICphZGRyLCBzb2NrbGVuX3QgbGVuLCBpbnQgYWYpCit7CisJcmV0dXJuIGFuZHJvaWRfZ2V0aG9zdGJ5YWRkcmZvcm5ldF9wcm94eShhZGRyLCBsZW4sIGFmLCBORVRJRF9VTlNFVCwgTUFSS19VTlNFVCk7Cit9CisKK3N0cnVjdCBob3N0ZW50ICoKK2FuZHJvaWRfZ2V0aG9zdGJ5YWRkcmZvcm5ldChjb25zdCB2b2lkICphZGRyLCBzb2NrbGVuX3QgbGVuLCBpbnQgYWYsIHVuc2lnbmVkIG5ldGlkLCB1bnNpZ25lZCBtYXJrKQoreworCXJldHVybiBhbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXRfcHJveHkoYWRkciwgbGVuLCBhZiwgbmV0aWQsIG1hcmspOworfQorCitfX0xJQkNfSElEREVOX18gc3RydWN0IGhvc3RlbnQqCithbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXRfcHJveHkoY29uc3Qgdm9pZCogYWRkciwgc29ja2xlbl90IGxlbiwgaW50IGFmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIG5ldGlkLCB1bnNpZ25lZCBtYXJrKQoreworCXJlc19zdGF0aWMgcnMgPSBfX3Jlc19nZXRfc3RhdGljKCk7IC8qIFVzZSByZXNfc3RhdGljIHRvIHByb3ZpZGUgdGhyZWFkLXNhZmV0eS4gKi8KKwlyZXR1cm4gYW5kcm9pZF9nZXRob3N0YnlhZGRyZm9ybmV0X3Byb3h5X2ludGVybmFsKGFkZHIsIGxlbiwgYWYsICZycy0+aG9zdCwgcnMtPmhvc3RidWYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHJzLT5ob3N0YnVmKSwgJmhfZXJybm8sIG5ldGlkLCBtYXJrKTsKK30KKworc3RydWN0IGhvc3RlbnQgKgorZ2V0aG9zdGVudCh2b2lkKQoreworICByZXNfc3RhdGljICBycyA9IF9fcmVzX2dldF9zdGF0aWMoKTsKKwlpZiAoIXJzLT5ob3N0ZikgeworCSAgc2V0aG9zdGVudF9yKCZycy0+aG9zdGYpOworCSAgaWYgKCFycy0+aG9zdGYpIHsKKwkgICAgaF9lcnJubyA9IE5FVERCX0lOVEVSTkFMOworCSAgICByZXR1cm4gTlVMTDsKKwkgIH0KKwl9CisJbWVtc2V0KCZycy0+aG9zdCwgMCwgc2l6ZW9mKHJzLT5ob3N0KSk7CisJcmV0dXJuIG5ldGJzZF9nZXRob3N0ZW50X3IocnMtPmhvc3RmLCAmcnMtPmhvc3QsIHJzLT5ob3N0YnVmLCBzaXplb2YocnMtPmhvc3RidWYpLCAmaF9lcnJubyk7Cit9CmRpZmYgLS1naXQgYS9saWJjL2Rucy9uZXQvZ2V0bmFtZWluZm8uYyBiL2xpYmMvZG5zL25ldC9nZXRuYW1laW5mby5jCmluZGV4IGI5YzAyODAuLjg5M2U5ODIgMTAwNjQ0Ci0tLSBhL2xpYmMvZG5zL25ldC9nZXRuYW1laW5mby5jCisrKyBiL2xpYmMvZG5zL25ldC9nZXRuYW1laW5mby5jCkBAIC0zMDMsNyArMzAzLDcgQEAKIAkJCWJyZWFrOwogCQl9CiAJfSBlbHNlIHsKLQkJaHAgPSBhbmRyb2lkX2dldGhvc3RieWFkZHJmb3JuZXRfcHJveHkoYWRkciwgYWZkLT5hX2FkZHJsZW4sIGFmZC0+YV9hZiwgbmV0aWQpOworCQlocCA9IGFuZHJvaWRfZ2V0aG9zdGJ5YWRkcmZvcm5ldF9wcm94eShhZGRyLCBhZmQtPmFfYWRkcmxlbiwgYWZkLT5hX2FmLCBuZXRpZCwgbWFyayk7CiAJCWlmIChocCkgewogI2lmIDAKIAkJCS8qCmRpZmYgLS1naXQgYS9saWJjL2Rucy9uZXQvZ2V0c2VydmJ5bmFtZS5jIGIvbGliYy9kbnMvbmV0L2dldHNlcnZieW5hbWUuYwppbmRleCBjOTVjOWIwLi5jMzI0MTZjIDEwMDY0NAotLS0gYS9saWJjL2Rucy9uZXQvZ2V0c2VydmJ5bmFtZS5jCisrKyBiL2xpYmMvZG5zL25ldC9nZXRzZXJ2YnluYW1lLmMKQEAgLTI1LDI5ICsyNSwxOSBAQAogICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCiAgKiBTVUNIIERBTUFHRS4KICAqLwotI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorCiAjaW5jbHVkZSA8bmV0ZGIuaD4KKwogI2luY2x1ZGUgInNlcnZlbnQuaCIKIAotc3RydWN0IHNlcnZlbnQgKgotZ2V0c2VydmJ5bmFtZShjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICpwcm90bykKLXsKLSAgICByZXNfc3RhdGljICAgICAgIHJzID0gX19yZXNfZ2V0X3N0YXRpYygpOwotCi0gICAgaWYgKHJzID09IE5VTEwgfHwgcHJvdG8gPT0gTlVMTCB8fCBuYW1lID09IE5VTEwpIHsKLSAgICAgICAgZXJybm8gPSBFSU5WQUw7Ci0gICAgICAgIHJldHVybiBOVUxMOworc3RydWN0IHNlcnZlbnQqIGdldHNlcnZieW5hbWUoY29uc3QgY2hhciogbmFtZSwgY29uc3QgY2hhciogcHJvdG8pIHsKKyAgcmVzX3N0YXRpYyBycyA9IF9fcmVzX2dldF9zdGF0aWMoKTsKKyAgcnMtPnNlcnZlbnRfcHRyID0gTlVMTDsKKyAgc3RydWN0IHNlcnZlbnQqIHM7CisgIHdoaWxlICgocyA9IGdldHNlcnZlbnRfcihycykpICE9IE5VTEwpIHsKKyAgICBpZiAoc3RyY21wKHMtPnNfbmFtZSwgbmFtZSkgPT0gMCAmJiAocHJvdG8gPT0gTlVMTCB8fCBzdHJjbXAocy0+c19wcm90bywgcHJvdG8pID09IDApKSB7CisgICAgICByZXR1cm4gczsKICAgICB9Ci0KLSAgICBycy0+c2VydmVudF9wdHIgPSBOVUxMOwotICAgIHdoaWxlICgxKSB7Ci0gICAgICAgIHN0cnVjdCBzZXJ2ZW50KiAgcyA9IGdldHNlcnZlbnRfcihycyk7Ci0gICAgICAgIGlmIChzID09IE5VTEwpCi0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgaWYgKCAhc3RyY21wKCBzLT5zX25hbWUsIG5hbWUgKSAmJiAhc3RyY21wKCBzLT5zX3Byb3RvLCBwcm90byApICkKLSAgICAgICAgICAgIHJldHVybiBzOwotICAgIH0KLQotICAgIHJldHVybiBOVUxMOworICB9CisgIHJldHVybiBOVUxMOwogfQpkaWZmIC0tZ2l0IGEvbGliYy9kbnMvbmV0L2dldHNlcnZlbnQuYyBiL2xpYmMvZG5zL25ldC9nZXRzZXJ2ZW50LmMKaW5kZXggOWY2ZWMzMi4uMGE3MjdjNyAxMDA2NDQKLS0tIGEvbGliYy9kbnMvbmV0L2dldHNlcnZlbnQuYworKysgYi9saWJjL2Rucy9uZXQvZ2V0c2VydmVudC5jCkBAIC0yOCw2ICsyOCw3IEBACiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiAjaW5jbHVkZSA8ZW5kaWFuLmg+CisjaW5jbHVkZSA8bWFsbG9jLmg+CiAjaW5jbHVkZSA8bmV0ZGIuaD4KICNpbmNsdWRlICJzZXJ2ZW50LmgiCiAjaW5jbHVkZSAic2VydmljZXMuaCIKZGlmZiAtLWdpdCBhL2xpYmMvZG5zL25ldC9uc2Rpc3BhdGNoLmMgYi9saWJjL2Rucy9uZXQvbnNkaXNwYXRjaC5jCmluZGV4IGZiNmQ4ZjYuLmQwMjU1OTIgMTAwNjQ0Ci0tLSBhL2xpYmMvZG5zL25ldC9uc2Rpc3BhdGNoLmMKKysrIGIvbGliYy9kbnMvbmV0L25zZGlzcGF0Y2guYwpAQCAtNzEsNiArNzEsNyBAQAogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgogCiAjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNsdWRlIDxuc3N3aXRjaC5oPgogI2luY2x1ZGUgPHN0ZGFyZy5oPgogI2luY2x1ZGUgPHN0cmluZ3MuaD4KQEAgLTEzMyw2ICsxMzQsMTAgQEAKIAkJCQljb250aW51ZTsKIAkJCWlmIChyZXN1bHQgJiBzcmNsaXN0W2ldLmZsYWdzKQogCQkJCWJyZWFrOworCQkJLyogU3RvcCB0cnlpbmcgbmV4dCByZXNvbHZlciB3aGVuIHRoZXJlIGlzIGEgbWVtb3J5IHNwYWNlIGZhdGFsIGVycm9yLiAqLworCQkJaWYgKChyZXN1bHQgJiBOU19VTkFWQUlMKSAhPSAwICYmIGVycm5vID09IEVOT1NQQykgeworCQkJICBicmVhazsKKwkJCX0KIAkJfQogCX0KIAlyZXN1bHQgJj0gTlNfU1RBVFVTTUFTSzsJLyogY2xlYXIgcHJpdmF0ZSBmbGFncyBpbiByZXN1bHQgKi8KZGlmZiAtLWdpdCBhL2xpYmMvZG5zL25ldC9zZXJ2aWNlcy5oIGIvbGliYy9kbnMvbmV0L3NlcnZpY2VzLmgKaW5kZXggZmExOTlkMC4uN2Y3NDhmNyAxMDA2NDQKLS0tIGEvbGliYy9kbnMvbmV0L3NlcnZpY2VzLmgKKysrIGIvbGliYy9kbnMvbmV0L3NlcnZpY2VzLmgKQEAgLTMwLDggKzMwLDggQEAKIFw2dGFjYWNzXDBcNjF1XDBcCiBcMTJyZS1tYWlsLWNrXDBcNjJ0XDBcCiBcMTJyZS1tYWlsLWNrXDBcNjJ1XDBcCi1cNmRvbWFpblwwXDY1dFwxXDEybmFtZXNlcnZlclwKLVw2ZG9tYWluXDBcNjV1XDFcMTJuYW1lc2VydmVyXAorXDZkb21haW5cMFw2NXRcMFwKK1w2ZG9tYWluXDBcNjV1XDBcCiBcM210cFwwXDcxdFwwXAogXDExdGFjYWNzLWRzXDBcMTAxdFwwXAogXDExdGFjYWNzLWRzXDBcMTAxdVwwXApAQCAtNDQsOCArNDQsOCBAQAogXDZnb3BoZXJcMFwxMDZ1XDBcCiBcM3JqZVwwXDExNXRcMVw2bmV0cmpzXAogXDZmaW5nZXJcMFwxMTd0XDBcCi1cM3d3d1wwXDEyMHRcMVw0aHR0cFwKLVwzd3d3XDBcMTIwdVwwXAorXDRodHRwXDBcMTIwdFwxXDN3d3dcCitcNGh0dHBcMFwxMjB1XDBcCiBcNGxpbmtcMFwxMjd0XDFcN3R0eWxpbmtcCiBcMTBrZXJiZXJvc1wwXDEzMHRcM1wxMWtlcmJlcm9zNVw0a3JiNVwxNGtlcmJlcm9zLXNlY1wKIFwxMGtlcmJlcm9zXDBcMTMwdVwzXDExa2VyYmVyb3M1XDRrcmI1XDE0a2VyYmVyb3Mtc2VjXApAQCAtMTM4LDEyICsxMzgsMTYgQEAKIFw0bGRhcFwxXDIwNXVcMFwKIFw0aW1zcFwxXDIyNnRcMFwKIFw0aW1zcFwxXDIyNnVcMFwKK1w2c3ZybG9jXDFcMjUzdFwwXAorXDZzdnJsb2NcMVwyNTN1XDBcCiBcNWh0dHBzXDFcMjczdFwwXAogXDVodHRwc1wxXDI3M3VcMFwKIFw0c25wcFwxXDI3NHRcMFwKIFw0c25wcFwxXDI3NHVcMFwKIFwxNG1pY3Jvc29mdC1kc1wxXDI3NXRcMFwKIFwxNG1pY3Jvc29mdC1kc1wxXDI3NXVcMFwKK1w3a3Bhc3N3ZFwxXDMyMHRcMFwKK1w3a3Bhc3N3ZFwxXDMyMHVcMFwKIFw0c2FmdFwxXDM0N3RcMFwKIFw0c2FmdFwxXDM0N3VcMFwKIFw2aXNha21wXDFcMzY0dFwwXApAQCAtMTU4LDYgKzE2Miw4IEBACiBcMTBucG1wLWd1aVwyXDE0M3VcMVwxNGRxczMxM19leGVjZFwKIFwxMGhtbXAtaW5kXDJcMTQ0dFwxXDIwZHFzMzEzX2ludGVyY2VsbFwKIFwxMGhtbXAtaW5kXDJcMTQ0dVwxXDIwZHFzMzEzX2ludGVyY2VsbFwKK1w0cW1xcFwyXDE2NHRcMFwKK1w0cW1xcFwyXDE2NHVcMFwKIFwzaXBwXDJcMTY3dFwwXAogXDNpcHBcMlwxNjd1XDBcCiBcNGV4ZWNcMlwwdFwwXApAQCAtMTgxLDggKzE4NywxNCBAQAogXDR1dWNwXDJcMzR0XDFcNXV1Y3BkXAogXDZrbG9naW5cMlwzN3RcMFwKIFw2a3NoZWxsXDJcNDB0XDFcNWtyY21kXAorXDE1ZGhjcHY2LWNsaWVudFwyXDQydFwwXAorXDE1ZGhjcHY2LWNsaWVudFwyXDQydVwwXAorXDE1ZGhjcHY2LXNlcnZlclwyXDQzdFwwXAorXDE1ZGhjcHY2LXNlcnZlclwyXDQzdVwwXAogXDEyYWZwb3ZlcnRjcFwyXDQ0dFwwXAogXDEyYWZwb3ZlcnRjcFwyXDQ0dVwwXAorXDRpZGZwXDJcNDV0XDBcCitcNGlkZnBcMlw0NXVcMFwKIFwxMHJlbW90ZWZzXDJcNTR0XDJcMTJyZnNfc2VydmVyXDNyZnNcCiBcNW5udHBzXDJcNjN0XDFcNXNubnRwXAogXDVubnRwc1wyXDYzdVwxXDVzbm50cFwKQEAgLTIzOSwxOSArMjUxLDMzIEBACiBcMTNzYS1tc2ctcG9ydFw2XDE1NnVcMVwxM29sZC1yYWRhY2N0XAogXDZrZXJtaXRcNlwxNjF0XDBcCiBcNmtlcm1pdFw2XDE2MXVcMFwKK1wxMWdyb3Vwd2lzZVw2XDIxNXRcMFwKK1wxMWdyb3Vwd2lzZVw2XDIxNXVcMFwKIFwzbDJmXDZcMjQ1dFwxXDRsMnRwXAogXDNsMmZcNlwyNDV1XDFcNGwydHBcCiBcNnJhZGl1c1w3XDI0dFwwXAogXDZyYWRpdXNcN1wyNHVcMFwKIFwxM3JhZGl1cy1hY2N0XDdcMjV0XDFcN3JhZGFjY3RcCiBcMTNyYWRpdXMtYWNjdFw3XDI1dVwxXDdyYWRhY2N0XAorXDRtc25wXDdcMTA3dFwwXAorXDRtc25wXDdcMTA3dVwwXAogXDEzdW5peC1zdGF0dXNcN1wyNDV0XDBcCiBcMTJsb2ctc2VydmVyXDdcMjQ2dFwwXAogXDEycmVtb3RlcGluZ1w3XDI0N3RcMFwKK1wxMmNpc2NvLXNjY3BcN1wzMjB0XDBcCitcMTJjaXNjby1zY2NwXDdcMzIwdVwwXAorXDZzZWFyY2hcN1wzMzJ0XDFcNG5kdHBcCitcMTNwaXBlLXNlcnZlclw3XDMzMnRcMVwxM3BpcGVfc2VydmVyXAogXDNuZnNcMTBcMXRcMFwKIFwzbmZzXDEwXDF1XDBcCitcNmdudW5ldFwxMFw0NnRcMFwKK1w2Z251bmV0XDEwXDQ2dVwwXAogXDEycnRjbS1zYzEwNFwxMFw2NXRcMFwKIFwxMnJ0Y20tc2MxMDRcMTBcNjV1XDBcCitcMTVnc2lnYXRla2VlcGVyXDEwXDEwN3RcMFwKK1wxNWdzaWdhdGVrZWVwZXJcMTBcMTA3dVwwXAorXDRncmlzXDEwXDEyN3RcMFwKK1w0Z3Jpc1wxMFwxMjd1XDBcCiBcMTJjdnNwc2VydmVyXDExXDE0MXRcMFwKIFwxMmN2c3BzZXJ2ZXJcMTFcMTQxdVwwXAogXDV2ZW51c1wxMVwxNzZ0XDBcCkBAIC0yNjYsMTAgKzI5MiwxNCBAQAogXDNtb25cMTJcMjd1XDBcCiBcNGRpY3RcMTJcMTA0dFwwXAogXDRkaWN0XDEyXDEwNHVcMFwKK1wxNWY1LWdsb2JhbHNpdGVcMTJcMzUwdFwwXAorXDE1ZjUtZ2xvYmFsc2l0ZVwxMlwzNTB1XDBcCitcNmdzaWZ0cFwxMlwzNzN0XDBcCitcNmdzaWZ0cFwxMlwzNzN1XDBcCiBcNGdwc2RcMTNcMjAzdFwwXAogXDRncHNkXDEzXDIwM3VcMFwKLVw2Z2RzX2RiXDEzXDM1MnRcMFwKLVw2Z2RzX2RiXDEzXDM1MnVcMFwKK1w2Z2RzLWRiXDEzXDM1MnRcMVw2Z2RzX2RiXAorXDZnZHMtZGJcMTNcMzUydVwxXDZnZHNfZGJcCiBcNWljcHYyXDE0XDcydFwxXDNpY3BcCiBcNWljcHYyXDE0XDcydVwxXDNpY3BcCiBcNW15c3FsXDE0XDM1MnRcMFwKQEAgLTI4MiwyNCArMzEyLDQ5IEBACiBcNGRhYXBcMTZcMTUxdVwwXAogXDNzdm5cMTZcMTUydFwxXDEyc3VidmVyc2lvblwKIFwzc3ZuXDE2XDE1MnVcMVwxMnN1YnZlcnNpb25cCitcNXN1dWNwXDE3XDI3N3RcMFwKK1w1c3V1Y3BcMTdcMjc3dVwwXAorXDZzeXNycWRcMTdcMzc2dFwwXAorXDZzeXNycWRcMTdcMzc2dVwwXAorXDVzaWV2ZVwyMFwxMzZ0XDBcCitcNGVwbWRcMjFcMjF0XDBcCitcNGVwbWRcMjFcMjF1XDBcCitcNnJlbWN0bFwyMVwyNXRcMFwKK1w2cmVtY3RsXDIxXDI1dVwwXAorXDExZjUtaXF1ZXJ5XDIxXDF0XDBcCitcMTFmNS1pcXVlcnlcMjFcMXVcMFwKIFwzaWF4XDIxXDMzMXRcMFwKIFwzaWF4XDIxXDMzMXVcMFwKK1wzbXRuXDIyXDEyM3RcMFwKK1wzbXRuXDIyXDEyM3VcMFwKIFwxM3JhZG1pbi1wb3J0XDIzXDQzdFwwXAogXDEzcmFkbWluLXBvcnRcMjNcNDN1XDBcCiBcM3JmZVwyM1wyMTJ1XDBcCiBcM3JmZVwyM1wyMTJ0XDBcCitcNG1tY2NcMjNcMjcydFwwXAorXDRtbWNjXDIzXDI3MnVcMFwKIFwzc2lwXDIzXDMwNHRcMFwKIFwzc2lwXDIzXDMwNHVcMFwKIFw3c2lwLXRsc1wyM1wzMDV0XDBcCiBcN3NpcC10bHNcMjNcMzA1dVwwXAorXDNhb2xcMjRcMTA2dFwwXAorXDNhb2xcMjRcMTA2dVwwXAogXDEzeG1wcC1jbGllbnRcMjRcMTQ2dFwxXDE1amFiYmVyLWNsaWVudFwKIFwxM3htcHAtY2xpZW50XDI0XDE0NnVcMVwxNWphYmJlci1jbGllbnRcCiBcMTN4bXBwLXNlcnZlclwyNFwyMjV0XDFcMTVqYWJiZXItc2VydmVyXAogXDEzeG1wcC1zZXJ2ZXJcMjRcMjI1dVwxXDE1amFiYmVyLXNlcnZlclwKIFwxMGNmZW5naW5lXDI0XDI3NHRcMFwKIFwxMGNmZW5naW5lXDI0XDI3NHVcMFwKK1w0bWRuc1wyNFwzNTF0XDBcCitcNG1kbnNcMjRcMzUxdVwwXAogXDEycG9zdGdyZXNxbFwyNVw3MHRcMVwxMHBvc3RncmVzXAogXDEycG9zdGdyZXNxbFwyNVw3MHVcMVwxMHBvc3RncmVzXAorXDdmcmVlY2l2XDI1XDI2NHRcMVw0cnB0cFwKK1w3ZnJlZWNpdlwyNVwyNjR1XDBcCitcNGFtcXBcMjZcNTB0XDBcCitcNGFtcXBcMjZcNTB1XDBcCitcM2dnelwyNlw3MHRcMFwKK1wzZ2d6XDI2XDcwdVwwXAogXDN4MTFcMjdcMTYwdFwxXDV4MTEtMFwKIFwzeDExXDI3XDE2MHVcMVw1eDExLTBcCiBcNXgxMS0xXDI3XDE2MXRcMFwKQEAgLTMyMCw2ICszNzUsMTIgQEAKIFwxNGdudXRlbGxhLXN2Y1wzMFwzMTJ1XDBcCiBcMTRnbnV0ZWxsYS1ydHJcMzBcMzEzdFwwXAogXDE0Z251dGVsbGEtcnRyXDMwXDMxM3VcMFwKK1wxM3NnZS1xbWFzdGVyXDMxXDU0dFwxXDEzc2dlX3FtYXN0ZXJcCitcMTNzZ2UtcW1hc3RlclwzMVw1NHVcMVwxM3NnZV9xbWFzdGVyXAorXDExc2dlLWV4ZWNkXDMxXDU1dFwxXDExc2dlX2V4ZWNkXAorXDExc2dlLWV4ZWNkXDMxXDU1dVwxXDExc2dlX2V4ZWNkXAorXDEzbXlzcWwtcHJveHlcMzFcNTZ0XDBcCitcMTNteXNxbC1wcm94eVwzMVw1NnVcMFwKIFwxN2FmczMtZmlsZXNlcnZlclwzM1wxMzB0XDFcM2Jic1wKIFwxN2FmczMtZmlsZXNlcnZlclwzM1wxMzB1XDFcM2Jic1wKIFwxNWFmczMtY2FsbGJhY2tcMzNcMTMxdFwwXApAQCAtMzQyLDEyICs0MDMsMjEgQEAKIFwxM2FmczMtcm10c3lzXDMzXDE0MXVcMFwKIFwxNGZvbnQtc2VydmljZVwzM1wyNzR0XDFcM3hmc1wKIFwxNGZvbnQtc2VydmljZVwzM1wyNzR1XDFcM3hmc1wKK1wxMGh0dHAtYWx0XDM3XDIyMHRcMVwxMHdlYmNhY2hlXAorXDEwaHR0cC1hbHRcMzdcMjIwdVwwXAogXDEyYmFjdWxhLWRpclw0M1wyMTV0XDBcCiBcMTJiYWN1bGEtZGlyXDQzXDIxNXVcMFwKIFwxMWJhY3VsYS1mZFw0M1wyMTZ0XDBcCiBcMTFiYWN1bGEtZmRcNDNcMjE2dVwwXAogXDExYmFjdWxhLXNkXDQzXDIxN3RcMFwKIFwxMWJhY3VsYS1zZFw0M1wyMTd1XDBcCitcNXhtbXMyXDQ1XDMwM3RcMFwKK1w1eG1tczJcNDVcMzAzdVwwXAorXDNuYmRcNTJcNzF0XDBcCitcMTR6YWJiaXgtYWdlbnRcNDdcMTAydFwwXAorXDE0emFiYml4LWFnZW50XDQ3XDEwMnVcMFwKK1wxNnphYmJpeC10cmFwcGVyXDQ3XDEwM3RcMFwKK1wxNnphYmJpeC10cmFwcGVyXDQ3XDEwM3VcMFwKIFw2YW1hbmRhXDQ3XDE0MHRcMFwKIFw2YW1hbmRhXDQ3XDE0MHVcMFwKIFwzaGtwXDU0XDE1M3RcMFwKQEAgLTM2NCwxNiArNDM0LDE3IEBACiBcNGJwY2RcNjVcMzI2dVwwXAogXDZ2b3BpZWRcNjVcMzI3dFwwXAogXDZ2b3BpZWRcNjVcMzI3dVwwXAorXDRkY2FwXDEyNlwxNTV0XDBcCitcN2dzaWRjYXBcMTI2XDE2MHRcMFwKIFw0d25uNlwxMjdcMXRcMFwKIFw0d25uNlwxMjdcMXVcMFwKIFwxMWtlcmJlcm9zNFwyXDM1NnVcMlwxM2tlcmJlcm9zLWl2XDNrZGNcCiBcMTFrZXJiZXJvczRcMlwzNTZ0XDJcMTNrZXJiZXJvcy1pdlwza2RjXAotXDE3a2VyYmVyb3NfbWFzdGVyXDJcMzU3dVwwXAotXDE3a2VyYmVyb3NfbWFzdGVyXDJcMzU3dFwwXAotXDE1cGFzc3dkX3NlcnZlclwyXDM2MHVcMFwKLVwxMGtyYl9wcm9wXDJcMzYydFwyXDExa3JiNV9wcm9wXDVocHJvcFwKK1wxN2tlcmJlcm9zLW1hc3RlclwyXDM1N3VcMVwxN2tlcmJlcm9zX21hc3RlclwKK1wxN2tlcmJlcm9zLW1hc3RlclwyXDM1N3RcMFwKK1wxNXBhc3N3ZC1zZXJ2ZXJcMlwzNjB1XDFcMTVwYXNzd2Rfc2VydmVyXAorXDEwa3JiLXByb3BcMlwzNjJ0XDNcMTBrcmJfcHJvcFwxMWtyYjVfcHJvcFw1aHByb3BcCiBcMTFrcmJ1cGRhdGVcMlwzNzB0XDFcNGtyZWdcCi1cN2twYXNzd2RcMlwzNzF0XDFcNGtwd2RcCiBcNHN3YXRcM1wyMDV0XDBcCiBcNGtwb3BcNFwxMjV0XDBcCiBcNWtuZXRkXDEwXDV0XDBcCkBAIC0zODksOSArNDYwLDkgQEAKIFwxMHBvcHBhc3NkXDBcMTUydFwwXAogXDEwcG9wcGFzc2RcMFwxNTJ1XDBcCiBcNXNzbXRwXDFcMzIxdFwxXDVzbXRwc1wKLVwxMG1vaXJhX2RiXDNcN3RcMFwKLVwxNG1vaXJhX3VwZGF0ZVwzXDExdFwwXAotXDEybW9pcmFfdXJlZ1wzXDEzdVwwXAorXDEwbW9pcmEtZGJcM1w3dFwxXDEwbW9pcmFfZGJcCitcMTRtb2lyYS11cGRhdGVcM1wxMXRcMVwxNG1vaXJhX3VwZGF0ZVwKK1wxMm1vaXJhLXVyZWdcM1wxM3VcMVwxMm1vaXJhX3VyZWdcCiBcNXNwYW1kXDNcMTd0XDBcCiBcNW9taXJyXDNcNTB0XDFcNm9taXJyZFwKIFw1b21pcnJcM1w1MHVcMVw2b21pcnJkXApAQCAtNDA0LDkgKzQ3NSw3IEBACiBcNHh0ZWxcNVw0MXRcMFwKIFw1eHRlbHdcNVw0MnRcMFwKIFw3c3VwcG9ydFw1XDM3MXRcMFwKLVw1c2lldmVcN1wzMjB0XDBcCiBcN2NmaW5nZXJcN1wzMjN0XDBcCi1cNG5kdHBcN1wzMzJ0XDBcCiBcNGZyb3hcMTBcMTExdFwwXAogXDEwbmluc3RhbGxcMTBcMTQ2dFwwXAogXDEwbmluc3RhbGxcMTBcMTQ2dVwwXApAQCAtNDM2LDkgKzUwNSw3IEBACiBcN2hvc3Rtb25cMjRcMzUzdFwwXAogXDdob3N0bW9uXDI0XDM1M3VcMFwKIFw1cnBsYXlcMjVcMjYzdVwwXAotXDVycGxheVwyNVwyNjN0XDBcCi1cNHJwdHBcMjVcMjY0dVwwXAotXDRycHRwXDI1XDI2NHRcMFwKK1w0bnJwZVwyNlw0MnRcMFwKIFw0bnNjYVwyNlw0M3RcMFwKIFw0bXJ0ZFwyNlw1MnRcMFwKIFw2Ymdwc2ltXDI2XDUzdFwwXApAQCAtNDQ2LDE0ICs1MTMsMTUgQEAKIFwxMXNhbmUtcG9ydFwzMVwyNDZ0XDJcNHNhbmVcNXNhbmVkXAogXDRpcmNkXDMyXDEzdFwwXAogXDEwem9wZS1mdHBcMzdcMTI1dFwwXAotXDEwd2ViY2FjaGVcMzdcMjIwdFwwXAogXDZ0cHJveHlcMzdcMjIxdFwwXAogXDdvbW5pb3JiXDM3XDIzMHRcMFwKIFw3b21uaW9yYlwzN1wyMzB1XDBcCiBcMjBjbGMtYnVpbGQtZGFlbW9uXDQzXDM2dFwwXAogXDZ4aW5ldGRcNDNcMjEydFwwXAogXDEzbWFuZGVsc3Bhd25cNDRcMjE3dVwxXDEybWFuZGVsYnJvdFwKK1wzZ2l0XDQ0XDMxMnRcMFwKIFw0em9wZVw0NVwzMTF0XDBcCitcNndlYm1pblw0N1wyMHRcMFwKIFw3a2FtYW5kYVw0N1wxNDF0XDBcCiBcN2thbWFuZGFcNDdcMTQxdVwwXAogXDExYW1hbmRhaWR4XDQ3XDE0MnRcMFwKQEAgLTQ3Myw2ICs1NDEsNyBAQAogXDViaW5rcFwxMzdcMzUydFwwXAogXDNhc3BcMTUyXDM1NnRcMFwKIFwzYXNwXDE1MlwzNTZ1XDBcCitcNmNzeW5jMlwxNzBcMjIxdFwwXAogXDExZGlyY3Byb3h5XDMzNlwyNTB0XDBcCiBcNXRmaWRvXDM1M1wyMXRcMFwKIFw0Zmlkb1wzNTNcMjN0XDBcCmRpZmYgLS1naXQgYS9saWJjL2Rucy9uZXQvc2V0aG9zdGVudC5jIGIvbGliYy9kbnMvbmV0L3NldGhvc3RlbnQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MTY0MjFlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9kbnMvbmV0L3NldGhvc3RlbnQuYwpAQCAtMCwwICsxLDI3NSBAQAorLyoJJE5ldEJTRDogc2V0aG9zdGVudC5jLHYgMS4yMCAyMDE0LzAzLzE3IDEzOjI0OjIzIGNocmlzdG9zIEV4cCAkCSovCisKKy8qCisgKiBDb3B5cmlnaHQgKGMpIDE5ODUsIDE5OTMKKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisjaWYgZGVmaW5lZChMSUJDX1NDQ1MpICYmICFkZWZpbmVkKGxpbnQpCisjaWYgMAorc3RhdGljIGNoYXIgc2Njc2lkW10gPSAiQCgjKXNldGhvc3RlbnQuYwk4LjEgKEJlcmtlbGV5KSA2LzQvOTMiOworc3RhdGljIGNoYXIgcmNzaWRbXSA9ICJJZDogc2V0aG9zdGVudC5jLHYgOC41IDE5OTYvMDkvMjggMDY6NTE6MDcgdml4aWUgRXhwICI7CisjZWxzZQorX19SQ1NJRCgiJE5ldEJTRDogc2V0aG9zdGVudC5jLHYgMS4yMCAyMDE0LzAzLzE3IDEzOjI0OjIzIGNocmlzdG9zIEV4cCAkIik7CisjZW5kaWYKKyNlbmRpZiAvKiBMSUJDX1NDQ1MgYW5kIG5vdCBsaW50ICovCisKKyNpbmNsdWRlICJuYW1lc3BhY2UuaCIKKyNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KKyNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CisjaW5jbHVkZSA8YXJwYS9uYW1lc2VyLmg+CisjaW5jbHVkZSA8YXJwYS9pbmV0Lmg+CisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8bnNzd2l0Y2guaD4KKyNpbmNsdWRlIDxuZXRkYi5oPgorI2luY2x1ZGUgPHJlc29sdi5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKKyNpbmNsdWRlICJob3N0ZW50LmgiCisjaW5jbHVkZSAicmVzb2x2X3ByaXZhdGUuaCIKKworI2RlZmluZSBBTElHTkJZVEVTIChzaXplb2YodWludHB0cl90KSAtIDEpCisjZGVmaW5lIEFMSUdOKHApICgoKHVpbnRwdHJfdCkocCkgKyBBTElHTkJZVEVTKSAmfiBBTElHTkJZVEVTKQorCisjaWZuZGVmIF9SRUVOVFJBTlQKK3ZvaWQJcmVzX2Nsb3NlKHZvaWQpOworI2VuZGlmCisKK3N0YXRpYyBzdHJ1Y3QgaG9zdGVudCAqX2hmX2dldGh0YnluYW1lMihjb25zdCBjaGFyICosIGludCwgc3RydWN0IGdldG5hbWFkZHIgKik7CisKK3N0YXRpYyBjb25zdCBjaGFyICpfaF9ob3N0cyA9IF9QQVRIX0hPU1RTOworCit2b2lkCitzZXRob3N0ZW50X3IoRklMRSAqKmhmKQoreworCWlmICghKmhmKQorCQkqaGYgPSBmb3BlbihfaF9ob3N0cywgInJlIik7CisJZWxzZQorCQlyZXdpbmQoKmhmKTsKK30KKwordm9pZAorZW5kaG9zdGVudF9yKEZJTEUgKipoZikKK3sKKwlpZiAoKmhmKSB7CisJCSh2b2lkKWZjbG9zZSgqaGYpOworCQkqaGYgPSBOVUxMOworCX0KK30KKworLypBUkdTVVNFRCovCitpbnQKK19oZl9nZXRodGJ5bmFtZSh2b2lkICpydiwgdm9pZCAqY2JfZGF0YSwgdmFfbGlzdCBhcCkKK3sKKwlzdHJ1Y3QgaG9zdGVudCAqaHA7CisJY29uc3QgY2hhciAqbmFtZTsKKwlpbnQgYWY7CisJc3RydWN0IGdldG5hbWFkZHIgKmluZm8gPSBydjsKKworCV9ESUFHQVNTRVJUKHJ2ICE9IE5VTEwpOworCisJbmFtZSA9IHZhX2FyZyhhcCwgY2hhciAqKTsKKwkvKiBOT1NUUklDVCBza2lwIHN0cmluZyBsZW4gKi8odm9pZCl2YV9hcmcoYXAsIGludCk7CisJYWYgPSB2YV9hcmcoYXAsIGludCk7CisKKyNpZiAwCisJeworCQlyZXNfc3RhdGUgcmVzID0gX19yZXNfZ2V0X3N0YXRlKCk7CisJCWlmIChyZXMgPT0gTlVMTCkKKwkJCXJldHVybiBOU19OT1RGT1VORDsKKwkJaWYgKHJlcy0+b3B0aW9ucyAmIFJFU19VU0VfSU5FVDYpCisJCQlocCA9IF9oZl9nZXRodGJ5bmFtZTIobmFtZSwgQUZfSU5FVDYsIGluZm8pOworCQllbHNlCisJCQlocCA9IE5VTEw7CisJCWlmIChocCA9PSBOVUxMKQorCQkJaHAgPSBfaGZfZ2V0aHRieW5hbWUyKG5hbWUsIEFGX0lORVQsIGluZm8pOworCQlfX3Jlc19wdXRfc3RhdGUocmVzKTsKKwl9CisjZWxzZQorCWhwID0gX2hmX2dldGh0YnluYW1lMihuYW1lLCBhZiwgaW5mbyk7CisjZW5kaWYKKwlpZiAoaHAgPT0gTlVMTCkgeworCQlpZiAoKmluZm8tPmhlID09IE5FVERCX0lOVEVSTkFMICYmIGVycm5vID09IEVOT1NQQykgeworCQkJcmV0dXJuIE5TX1VOQVZBSUw7CisJCX0KKwkJcmV0dXJuIE5TX05PVEZPVU5EOworCX0KKwlyZXR1cm4gTlNfU1VDQ0VTUzsKK30KKworc3RhdGljIHN0cnVjdCBob3N0ZW50ICoKK19oZl9nZXRodGJ5bmFtZTIoY29uc3QgY2hhciAqbmFtZSwgaW50IGFmLCBzdHJ1Y3QgZ2V0bmFtYWRkciAqaW5mbykKK3sKKwlzdHJ1Y3QgaG9zdGVudCAqaHAsIGhlbnQ7CisJY2hhciAqYnVmLCAqcHRyOworCXNpemVfdCBsZW4sIGFudW0sIG51bSwgaTsKKwlGSUxFICpoZjsKKwljaGFyICphbGlhc2VzW01BWEFMSUFTRVNdOworCWNoYXIgKmFkZHJfcHRyc1tNQVhBRERSU107CisKKwlfRElBR0FTU0VSVChuYW1lICE9IE5VTEwpOworCisJaGYgPSBOVUxMOworCXNldGhvc3RlbnRfcigmaGYpOworCWlmIChoZiA9PSBOVUxMKSB7CisJCWVycm5vID0gRUlOVkFMOworCQkqaW5mby0+aGUgPSBORVREQl9JTlRFUk5BTDsKKwkJcmV0dXJuIE5VTEw7CisJfQorCisJaWYgKChwdHIgPSBidWYgPSBtYWxsb2MobGVuID0gaW5mby0+YnVmbGVuKSkgPT0gTlVMTCkgeworCQllbmRob3N0ZW50X3IoJmhmKTsKKwkJKmluZm8tPmhlID0gTkVUREJfSU5URVJOQUw7CisJCXJldHVybiBOVUxMOworCX0KKworCWFudW0gPSAwOwkJLyogWFhYOiBnY2MgKi8KKwloZW50LmhfbmFtZSA9IE5VTEw7CS8qIFhYWDogZ2NjICovCisJaGVudC5oX2FkZHJ0eXBlID0gMDsJLyogWFhYOiBnY2MgKi8KKwloZW50LmhfbGVuZ3RoID0gMDsJLyogWFhYOiBnY2MgKi8KKworCWZvciAobnVtID0gMDsgbnVtIDwgTUFYQUREUlM7KSB7CisJCWluZm8tPmhwLT5oX2FkZHJ0eXBlID0gYWY7CisJCWluZm8tPmhwLT5oX2xlbmd0aCA9IDA7CisKKwkJaHAgPSBuZXRic2RfZ2V0aG9zdGVudF9yKGhmLCBpbmZvLT5ocCwgaW5mby0+YnVmLCBpbmZvLT5idWZsZW4sCisJCSAgICBpbmZvLT5oZSk7CisJCWlmIChocCA9PSBOVUxMKSB7CisJCQlpZiAoKmluZm8tPmhlID09IE5FVERCX0lOVEVSTkFMICYmIGVycm5vID09IEVOT1NQQykgeworCQkJCWdvdG8gbm9zcGM7CisJCQl9CisJCQlicmVhazsKKwkJfQorCisJCWlmIChzdHJjYXNlY21wKGhwLT5oX25hbWUsIG5hbWUpICE9IDApIHsKKwkJCWNoYXIgKipjcDsKKwkJCWZvciAoY3AgPSBocC0+aF9hbGlhc2VzOyAqY3AgIT0gTlVMTDsgY3ArKykKKwkJCQlpZiAoc3RyY2FzZWNtcCgqY3AsIG5hbWUpID09IDApCisJCQkJCWJyZWFrOworCQkJaWYgKCpjcCA9PSBOVUxMKSBjb250aW51ZTsKKwkJfQorCisJCWlmIChudW0gPT0gMCkgeworCQkJaGVudC5oX2FkZHJ0eXBlID0gYWYgPSBocC0+aF9hZGRydHlwZTsKKwkJCWhlbnQuaF9sZW5ndGggPSBocC0+aF9sZW5ndGg7CisKKwkJCUhFTlRfU0NPUFkoaGVudC5oX25hbWUsIGhwLT5oX25hbWUsIHB0ciwgbGVuKTsKKwkJCWZvciAoYW51bSA9IDA7IGhwLT5oX2FsaWFzZXNbYW51bV07IGFudW0rKykgeworCQkJCWlmIChhbnVtID49IE1BWEFMSUFTRVMpCisJCQkJCWdvdG8gbm9zcGM7CisJCQkJSEVOVF9TQ09QWShhbGlhc2VzW2FudW1dLCBocC0+aF9hbGlhc2VzW2FudW1dLAorCQkJCSAgICBwdHIsIGxlbik7CisJCQl9CisJCQlwdHIgPSAodm9pZCAqKUFMSUdOKHB0cik7CisJCQlpZiAoKHNpemVfdCkocHRyIC0gYnVmKSA+PSBpbmZvLT5idWZsZW4pCisJCQkJZ290byBub3NwYzsKKwkJfQorCisJCWlmIChudW0gPj0gTUFYQUREUlMpCisJCQlnb3RvIG5vc3BjOworCQlIRU5UX0NPUFkoYWRkcl9wdHJzW251bV0sIGhwLT5oX2FkZHJfbGlzdFswXSwgaHAtPmhfbGVuZ3RoLCBwdHIsCisJCSAgICBsZW4pOworCQludW0rKzsKKwl9CisJZW5kaG9zdGVudF9yKCZoZik7CisKKwlpZiAobnVtID09IDApIHsKKwkJKmluZm8tPmhlID0gSE9TVF9OT1RfRk9VTkQ7CisJCWZyZWUoYnVmKTsKKwkJcmV0dXJuIE5VTEw7CisJfQorCisJaHAgPSBpbmZvLT5ocDsKKwlwdHIgPSBpbmZvLT5idWY7CisJbGVuID0gaW5mby0+YnVmbGVuOworCisJaHAtPmhfYWRkcnR5cGUgPSBoZW50LmhfYWRkcnR5cGU7CisJaHAtPmhfbGVuZ3RoID0gaGVudC5oX2xlbmd0aDsKKworCUhFTlRfQVJSQVkoaHAtPmhfYWxpYXNlcywgYW51bSwgcHRyLCBsZW4pOworCUhFTlRfQVJSQVkoaHAtPmhfYWRkcl9saXN0LCBudW0sIHB0ciwgbGVuKTsKKworCWZvciAoaSA9IDA7IGkgPCBudW07IGkrKykKKwkJSEVOVF9DT1BZKGhwLT5oX2FkZHJfbGlzdFtpXSwgYWRkcl9wdHJzW2ldLCBocC0+aF9sZW5ndGgsIHB0ciwKKwkJICAgIGxlbik7CisJaHAtPmhfYWRkcl9saXN0W251bV0gPSBOVUxMOworCisJSEVOVF9TQ09QWShocC0+aF9uYW1lLCBoZW50LmhfbmFtZSwgcHRyLCBsZW4pOworCisJZm9yIChpID0gMDsgaSA8IGFudW07IGkrKykKKwkJSEVOVF9TQ09QWShocC0+aF9hbGlhc2VzW2ldLCBhbGlhc2VzW2ldLCBwdHIsIGxlbik7CisJaHAtPmhfYWxpYXNlc1thbnVtXSA9IE5VTEw7CisKKwlmcmVlKGJ1Zik7CisJcmV0dXJuIGhwOworbm9zcGM6CisJZW5kaG9zdGVudF9yKCZoZik7CisJKmluZm8tPmhlID0gTkVUREJfSU5URVJOQUw7CisJZnJlZShidWYpOworCWVycm5vID0gRU5PU1BDOworCXJldHVybiBOVUxMOworfQorCisvKkFSR1NVU0VEKi8KK2ludAorX2hmX2dldGh0YnlhZGRyKHZvaWQgKnJ2LCB2b2lkICpjYl9kYXRhLCB2YV9saXN0IGFwKQoreworCXN0cnVjdCBob3N0ZW50ICpocDsKKwljb25zdCB1bnNpZ25lZCBjaGFyICphZGRyOworCXN0cnVjdCBnZXRuYW1hZGRyICppbmZvID0gcnY7CisJRklMRSAqaGY7CisKKwlfRElBR0FTU0VSVChydiAhPSBOVUxMKTsKKworCWFkZHIgPSB2YV9hcmcoYXAsIHVuc2lnbmVkIGNoYXIgKik7CisJaW5mby0+aHAtPmhfbGVuZ3RoID0gdmFfYXJnKGFwLCBpbnQpOworCWluZm8tPmhwLT5oX2FkZHJ0eXBlID0gdmFfYXJnKGFwLCBpbnQpOworCisJaGYgPSBOVUxMOworCXNldGhvc3RlbnRfcigmaGYpOworCWlmIChoZiA9PSBOVUxMKSB7CisJCSppbmZvLT5oZSA9IE5FVERCX0lOVEVSTkFMOworCQlyZXR1cm4gTlNfVU5BVkFJTDsKKwl9CisJd2hpbGUgKChocCA9IG5ldGJzZF9nZXRob3N0ZW50X3IoaGYsIGluZm8tPmhwLCBpbmZvLT5idWYsIGluZm8tPmJ1ZmxlbiwKKwkgICAgaW5mby0+aGUpKSAhPSBOVUxMKQorCQlpZiAoIW1lbWNtcChocC0+aF9hZGRyX2xpc3RbMF0sIGFkZHIsIChzaXplX3QpaHAtPmhfbGVuZ3RoKSkKKwkJCWJyZWFrOworCWVuZGhvc3RlbnRfcigmaGYpOworCisJaWYgKGhwID09IE5VTEwpIHsKKwkJaWYgKGVycm5vID09IEVOT1NQQykgeworCQkJcmV0dXJuIE5TX1VOQVZBSUw7CisJCX0KKwkJKmluZm8tPmhlID0gSE9TVF9OT1RfRk9VTkQ7CisJCXJldHVybiBOU19OT1RGT1VORDsKKwl9CisJcmV0dXJuIE5TX1NVQ0NFU1M7Cit9CmRpZmYgLS1naXQgYS9saWJjL2Rucy9yZXNvbHYvcmVzX2NhY2hlLmMgYi9saWJjL2Rucy9yZXNvbHYvcmVzX2NhY2hlLmMKaW5kZXggZDY4ZWMzYi4uNWE3ODQ1MCAxMDA2NDQKLS0tIGEvbGliYy9kbnMvcmVzb2x2L3Jlc19jYWNoZS5jCisrKyBiL2xpYmMvZG5zL3Jlc29sdi9yZXNfY2FjaGUuYwpAQCAtMjgsNiArMjgsOCBAQAogCiAjaW5jbHVkZSAicmVzb2x2X2NhY2hlLmgiCiAjaW5jbHVkZSA8cmVzb2x2Lmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDx0aW1lLmg+CkBAIC00NSw2ICs0Nyw4IEBACiAjaW5jbHVkZSAicmVzb2x2X25ldGlkLmgiCiAjaW5jbHVkZSAicmVzX3ByaXZhdGUuaCIKIAorI2luY2x1ZGUgInByaXZhdGUvbGliY19sb2dnaW5nLmgiCisKIC8qIFRoaXMgY29kZSBpbXBsZW1lbnRzIGEgc21hbGwgYW5kICpzaW1wbGUqIEROUyByZXNvbHZlciBjYWNoZS4KICAqCiAgKiBJdCBpcyBvbmx5IHVzZWQgdG8gY2FjaGUgRE5TIGFuc3dlcnMgZm9yIGEgdGltZSBkZWZpbmVkIGJ5IHRoZSBzbWFsbGVzdCBUVEwKQEAgLTEwMCwxMCArMTA0LDYgQEAKICAqLwogI2RlZmluZSAgQ09ORklHX0VOViAgIkJJT05JQ19ETlNDQUNIRSIKIAotLyogZW50cmllcyBvbGRlciB0aGFuIENPTkZJR19TRUNPTkRTIHNlY29uZHMgYXJlIGFsd2F5cyBkaXNjYXJkZWQuCi0gKi8KLSNkZWZpbmUgIENPTkZJR19TRUNPTkRTICAgICg2MCoxMCkgICAgLyogMTAgbWludXRlcyAqLwotCiAvKiBkZWZhdWx0IG51bWJlciBvZiBlbnRyaWVzIGtlcHQgaW4gdGhlIGNhY2hlLiBUaGlzIHZhbHVlIGhhcyBiZWVuCiAgKiBkZXRlcm1pbmVkIGJ5IGJyb3dzaW5nIHRocm91Z2ggdmFyaW91cyBzaXRlcyBhbmQgY291bnRpbmcgdGhlIG51bWJlcgogICogb2YgY29ycmVzcG9uZGluZyByZXF1ZXN0cy4gS2VlcCBpbiBtaW5kIHRoYXQgb3VyIGZyYW1ld29yayBpcyBjdXJyZW50bHkKQEAgLTE1MiwxMyArMTUyLDIxIEBACiAvKiBzZXQgdG8gMSB0byBkZWJ1ZyBxdWVyeSBkYXRhICovCiAjZGVmaW5lICBERUJVR19EQVRBICAwCiAKLSN1bmRlZiBYTE9HCiAjaWYgREVCVUcKLSMgIGluY2x1ZGUgInByaXZhdGUvbGliY19sb2dnaW5nLmgiCi0jICBkZWZpbmUgWExPRyguLi4pICBfX2xpYmNfZm9ybWF0X2xvZyhBTkRST0lEX0xPR19ERUJVRywibGliYyIsX19WQV9BUkdTX18pCisjZGVmaW5lIF9fREVCVUdfXworI2Vsc2UKKyNkZWZpbmUgX19ERUJVR19fIF9fYXR0cmlidXRlX18oKHVudXNlZCkpCisjZW5kaWYKIAotI2luY2x1ZGUgPHN0ZGlvLmg+Ci0jaW5jbHVkZSA8c3RkYXJnLmg+CisjdW5kZWYgWExPRworCisjZGVmaW5lIFhMT0coLi4uKSAoeyBcCisgICAgaWYgKERFQlVHKSB7IFwKKyAgICAgICAgX19saWJjX2Zvcm1hdF9sb2coQU5EUk9JRF9MT0dfREVCVUcsImxpYmMiLF9fVkFfQVJHU19fKTsgXAorICAgIH0gZWxzZSB7IFwKKyAgICAgICAgKCh2b2lkKTApOyBcCisgICAgfSBcCit9KQogCiAvKiogQk9VTkRFRCBCVUZGRVIgRk9STUFUVElORwogICoqLwpAQCAtMjA1LDcgKzIxMyw3IEBACiAgKi8KIAogLyogYWRkIGEgY2hhciB0byBhIGJvdW5kZWQgYnVmZmVyICovCi1zdGF0aWMgY2hhcioKK2NoYXIqCiBfYnByaW50X2MoIGNoYXIqICBwLCBjaGFyKiAgZW5kLCBpbnQgIGMgKQogewogICAgIGlmIChwIDwgZW5kKSB7CkBAIC0yMjAsNyArMjI4LDcgQEAKIH0KIAogLyogYWRkIGEgc2VxdWVuY2Ugb2YgYnl0ZXMgdG8gYSBib3VuZGVkIGJ1ZmZlciAqLwotc3RhdGljIGNoYXIqCitjaGFyKgogX2JwcmludF9iKCBjaGFyKiAgcCwgY2hhciogIGVuZCwgY29uc3QgY2hhciogIGJ1ZiwgaW50ICBsZW4gKQogewogICAgIGludCAgYXZhaWwgPSBlbmQgLSBwOwpAQCAtMjQzLDE1ICsyNTEsMTUgQEAKIH0KIAogLyogYWRkIGEgc3RyaW5nIHRvIGEgYm91bmRlZCBidWZmZXIgKi8KLXN0YXRpYyBjaGFyKgorY2hhcioKIF9icHJpbnRfcyggY2hhciogIHAsIGNoYXIqICBlbmQsIGNvbnN0IGNoYXIqICBzdHIgKQogewogICAgIHJldHVybiBfYnByaW50X2IocCwgZW5kLCBzdHIsIHN0cmxlbihzdHIpKTsKIH0KIAogLyogYWRkIGEgZm9ybWF0dGVkIHN0cmluZyB0byBhIGJvdW5kZWQgYnVmZmVyICovCi1zdGF0aWMgY2hhcioKLV9icHJpbnQoIGNoYXIqICBwLCBjaGFyKiAgZW5kLCBjb25zdCBjaGFyKiAgZm9ybWF0LCAuLi4gKQorY2hhciogX2JwcmludCggY2hhciogIHAsIGNoYXIqICBlbmQsIGNvbnN0IGNoYXIqICBmb3JtYXQsIC4uLiApIF9fREVCVUdfXzsKK2NoYXIqIF9icHJpbnQoIGNoYXIqICBwLCBjaGFyKiAgZW5kLCBjb25zdCBjaGFyKiAgZm9ybWF0LCAuLi4gKQogewogICAgIGludCAgICAgIGF2YWlsLCBuOwogICAgIHZhX2xpc3QgIGFyZ3M7CkBAIC0yNzgsNyArMjg2LDcgQEAKIH0KIAogLyogYWRkIGEgaGV4IHZhbHVlIHRvIGEgYm91bmRlZCBidWZmZXIsIHVwIHRvIDggZGlnaXRzICovCi1zdGF0aWMgY2hhcioKK2NoYXIqCiBfYnByaW50X2hleCggY2hhciogIHAsIGNoYXIqICBlbmQsIHVuc2lnbmVkICB2YWx1ZSwgaW50ICBudW1EaWdpdHMgKQogewogICAgIGNoYXIgICB0ZXh0W3NpemVvZih1bnNpZ25lZCkqMl07CkBAIC0yOTEsNyArMjk5LDcgQEAKIH0KIAogLyogYWRkIHRoZSBoZXhhZGVjaW1hbCBkdW1wIG9mIHNvbWUgbWVtb3J5IGFyZWEgdG8gYSBib3VuZGVkIGJ1ZmZlciAqLwotc3RhdGljIGNoYXIqCitjaGFyKgogX2JwcmludF9oZXhkdW1wKCBjaGFyKiAgcCwgY2hhciogIGVuZCwgY29uc3QgdWludDhfdCogIGRhdGEsIGludCAgZGF0YWxlbiApCiB7CiAgICAgaW50ICAgbGluZVNpemUgPSAxNjsKQEAgLTMzMCwyMCArMzM4LDE3IEBACiB9CiAKIC8qIGR1bXAgdGhlIGNvbnRlbnQgb2YgYSBxdWVyeSBvZiBwYWNrZXQgdG8gdGhlIGxvZyAqLwotc3RhdGljIHZvaWQKLVhMT0dfQllURVMoIGNvbnN0IHZvaWQqICBiYXNlLCBpbnQgIGxlbiApCit2b2lkIFhMT0dfQllURVMoIGNvbnN0IHZvaWQqICBiYXNlLCBpbnQgIGxlbiApIF9fREVCVUdfXzsKK3ZvaWQgWExPR19CWVRFUyggY29uc3Qgdm9pZCogIGJhc2UsIGludCAgbGVuICkKIHsKLSAgICBjaGFyICBidWZmWzEwMjRdOwotICAgIGNoYXIqICBwID0gYnVmZiwgKmVuZCA9IHAgKyBzaXplb2YoYnVmZik7CisgICAgaWYgKERFQlVHX0RBVEEpIHsKKyAgICAgICAgY2hhciAgYnVmZlsxMDI0XTsKKyAgICAgICAgY2hhciogIHAgPSBidWZmLCAqZW5kID0gcCArIHNpemVvZihidWZmKTsKIAotICAgIHAgPSBfYnByaW50X2hleGR1bXAocCwgZW5kLCBiYXNlLCBsZW4pOwotICAgIFhMT0coIiVzIixidWZmKTsKLX0KLQotI2Vsc2UgLyogIURFQlVHICovCi0jICBkZWZpbmUgIFhMT0coLi4uKSAgICAgICAgKCh2b2lkKTApCi0jICBkZWZpbmUgIFhMT0dfQllURVMoYSxiKSAgKCh2b2lkKTApCi0jZW5kaWYKKyAgICAgICAgcCA9IF9icHJpbnRfaGV4ZHVtcChwLCBlbmQsIGJhc2UsIGxlbik7CisgICAgICAgIFhMT0coIiVzIixidWZmKTsKKyAgICB9Cit9IF9fREVCVUdfXwogCiBzdGF0aWMgdGltZV90CiBfdGltZV9ub3coIHZvaWQgKQpAQCAtMTA5MCw3ICsxMDk1LDcgQEAKICAgICAgICAgWExPRygibnNfcGFyc2VyciBmYWlsZWQuICVzXG4iLCBzdHJlcnJvcihlcnJubykpOwogICAgIH0KIAotICAgIFhMT0coIlRUTCA9ICVkXG4iLCByZXN1bHQpOworICAgIFhMT0coIlRUTCA9ICVsdVxuIiwgcmVzdWx0KTsKIAogICAgIHJldHVybiByZXN1bHQ7CiB9CkBAIC0xNDUzLDcgKzE0NTgsNyBAQAogICAgIGNoYXIqIGJ1ZjsKICAgICBpbnQgZmlsZUxlbjsKIAotICAgIGZwID0gZm9wZW4oIi9kYXRhL3Jlc2xvZy50eHQiLCAidysiKTsKKyAgICBmcCA9IGZvcGVuKCIvZGF0YS9yZXNsb2cudHh0IiwgIncrZSIpOwogICAgIGlmIChmcCAhPSBOVUxMKSB7CiAgICAgICAgIHN0YXRlcCA9IF9fcmVzX2dldF9zdGF0ZSgpOwogCkBAIC0xOTQ5LDcgKzE5NTQsNyBAQAogICAgICAgICBoaW50cy5haV9mYW1pbHkgPSBQRl9VTlNQRUM7CiAgICAgICAgIGhpbnRzLmFpX3NvY2t0eXBlID0gU09DS19ER1JBTTsgLypkdW1teSovCiAgICAgICAgIGhpbnRzLmFpX2ZsYWdzID0gQUlfTlVNRVJJQ0hPU1Q7Ci0gICAgICAgIHNwcmludGYoc2J1ZiwgIiV1IiwgTkFNRVNFUlZFUl9QT1JUKTsKKyAgICAgICAgc25wcmludGYoc2J1Ziwgc2l6ZW9mKHNidWYpLCAiJXUiLCBOQU1FU0VSVkVSX1BPUlQpOwogCiAgICAgICAgIGluZGV4ID0gMDsKICAgICAgICAgZm9yIChpID0gMDsgaSA8IG51bXNlcnZlcnMgJiYgaSA8IE1BWE5TOyBpKyspIHsKZGlmZiAtLWdpdCBhL2xpYmMvZG5zL3Jlc29sdi9yZXNfZGVidWcuYyBiL2xpYmMvZG5zL3Jlc29sdi9yZXNfZGVidWcuYwppbmRleCA3YTA1YTVmLi41Zjg4OWNiIDEwMDY0NAotLS0gYS9saWJjL2Rucy9yZXNvbHYvcmVzX2RlYnVnLmMKKysrIGIvbGliYy9kbnMvcmVzb2x2L3Jlc19kZWJ1Zy5jCkBAIC0xMjYsMTQgKzEyNiw2IEBACiAjaW5jbHVkZSA8c3RyaW5ncy5oPgogI2luY2x1ZGUgPHRpbWUuaD4KIAotCi0KLSNpZmRlZiBTUFJJTlRGX0NIQVIKLSMgZGVmaW5lIFNQUklOVEYoeCkgc3RybGVuKHNwcmludGYvKioveCkKLSNlbHNlCi0jIGRlZmluZSBTUFJJTlRGKHgpIHNwcmludGYgeAotI2VuZGlmCi0KIGV4dGVybiBjb25zdCBjaGFyICogY29uc3QgX3Jlc19vcGNvZGVzW107CiBleHRlcm4gY29uc3QgY2hhciAqIGNvbnN0IF9yZXNfc2VjdGlvbmNvZGVzW107CiAKQEAgLTU4OCw3ICs1ODAsNyBAQAogCQl9CiAJfQogCi0Jc3ByaW50Zih1bm5hbWUsICIlZCIsIG51bWJlcik7CQkvKiBYWFggbm9ucmVlbnRyYW50ICovCisJc25wcmludGYodW5uYW1lLCBzaXplb2YodW5uYW1lKSwgIiVkIiwgbnVtYmVyKTsJCS8qIFhYWCBub25yZWVudHJhbnQgKi8KIAlpZiAoc3VjY2VzcykKIAkJKnN1Y2Nlc3MgPSAwOwogCXJldHVybiAodW5uYW1lKTsKQEAgLTYwNSw3ICs1OTcsNyBAQAogCQkJcmV0dXJuIChzeW1zLT5odW1hbm5hbWUpOwogCQl9CiAJfQotCXNwcmludGYodW5uYW1lLCAiJWQiLCBudW1iZXIpOwkJLyogWFhYIG5vbnJlZW50cmFudCAqLworCXNucHJpbnRmKHVubmFtZSwgc2l6ZW9mKHVubmFtZSksICIlZCIsIG51bWJlcik7CQkvKiBYWFggbm9ucmVlbnRyYW50ICovCiAJaWYgKHN1Y2Nlc3MpCiAJCSpzdWNjZXNzID0gMDsKIAlyZXR1cm4gKHVubmFtZSk7CkBAIC02MjUsNyArNjE3LDcgQEAKIAkJcmV0dXJuIChyZXN1bHQpOwogCWlmICh0eXBlIDwgMCB8fCB0eXBlID4gMHhmZmZmKQogCQlyZXR1cm4gKCJCQURUWVBFIik7Ci0Jc3ByaW50Zih0eXBlYnVmLCAiVFlQRSVkIiwgdHlwZSk7CisJc25wcmludGYodHlwZWJ1Ziwgc2l6ZW9mKHR5cGVidWYpLCAiVFlQRSVkIiwgdHlwZSk7CiAJcmV0dXJuICh0eXBlYnVmKTsKIH0KIApAQCAtNjYxLDcgKzY1Myw3IEBACiAJCXJldHVybiAocmVzdWx0KTsKIAlpZiAoY2xhc3MgPCAwIHx8IGNsYXNzID4gMHhmZmZmKQogCQlyZXR1cm4gKCJCQURDTEFTUyIpOwotCXNwcmludGYoY2xhc3NidWYsICJDTEFTUyVkIiwgY2xhc3MpOworCXNucHJpbnRmKGNsYXNzYnVmLCBzaXplb2YoY2xhc3NidWYpLCAiQ0xBU1MlZCIsIGNsYXNzKTsKIAlyZXR1cm4gKGNsYXNzYnVmKTsKIH0KIApAQCAtNzAzLDcgKzY5NSw3IEBACiAJY2FzZSBSRVNfTk9fTklCQkxFMjoJcmV0dXJuICJuby1uaWJibGUyIjsKICNlbmRpZgogCQkJCS8qIFhYWCBub25yZWVudHJhbnQgKi8KLQlkZWZhdWx0OgkJc3ByaW50ZihuYnVmLCAiPzB4JWx4PyIsICh1X2xvbmcpb3B0aW9uKTsKKwlkZWZhdWx0OgkJc25wcmludGYobmJ1Ziwgc2l6ZW9mKG5idWYpLCAiPzB4JWx4PyIsICh1X2xvbmcpb3B0aW9uKTsKIAkJCQlyZXR1cm4gKG5idWYpOwogCX0KIH0KQEAgLTcxNiw3ICs3MDgsNyBAQAogCXN0YXRpYyBjaGFyIG5idWZbNDBdOwkJLyogWFhYIG5vbnJlZW50cmFudCAqLwogCiAJaWYgKG5zX2Zvcm1hdF90dGwoKHVfbG9uZyl2YWx1ZSwgbmJ1Ziwgc2l6ZW9mIG5idWYpIDwgMCkKLQkJc3ByaW50ZihuYnVmLCAiJXUiLCB2YWx1ZSk7CisJCXNucHJpbnRmKG5idWYsIHNpemVvZihuYnVmKSwgIiV1IiwgdmFsdWUpOwogCXJldHVybiAobmJ1Zik7CiB9CiAKQEAgLTc0NSw3ICs3MzcsNyBAQAogCQlicmVhazsKICNlbmRpZgogCWRlZmF1bHQ6Ci0JCXNwcmludGYocmV0LCAiW2FmJWRdIiwgdS5zaW4uc2luX2ZhbWlseSk7CisJCXNucHJpbnRmKHJldCwgc2l6ZW9mKHJldCksICJbYWYlZF0iLCB1LnNpbi5zaW5fZmFtaWx5KTsKIAkJYnJlYWs7CiAJfQogCWlmIChzaXplID4gMFUpIHsKQEAgLTc3Nyw3ICs3NjksNyBAQAogCiAJdmFsID0gbWFudGlzc2EgKiBwb3dlcm9mdGVuW2V4cG9uZW50XTsKIAotCSh2b2lkKSBzcHJpbnRmKHJldGJ1ZiwgIiVsdS4lLjJsdSIsIHZhbC8xMDAsIHZhbCUxMDApOworCSh2b2lkKSBzbnByaW50ZihyZXRidWYsIHNpemVvZihyZXRidWYpLCAiJWx1LiUuMmx1IiwgdmFsLzEwMCwgdmFsJTEwMCk7CiAJcmV0dXJuIChyZXRidWYpOwogfQogCkBAIC0xMDI4LDcgKzEwMjAsNyBAQAogCiAvKiB0YWtlcyBhbiBvbi10aGUtd2lyZSBMT0MgUlIgYW5kIGZvcm1hdHMgaXQgaW4gYSBodW1hbiByZWFkYWJsZSBmb3JtYXQuICovCiBjb25zdCBjaGFyICoKLWxvY19udG9hKGNvbnN0IHVfY2hhciAqYmluYXJ5LCBjaGFyICphc2NpaSkKK2xvY19udG9hKGNvbnN0IHVfY2hhciAqYmluYXJ5LCBjaGFyICphc2NpaSwgc2l6ZV90IGJ1ZnNpeikKIHsKIAlzdGF0aWMgY29uc3QgY2hhciAqZXJyb3IgPSAiPyI7CiAJc3RhdGljIGNoYXIgdG1wYnVmW3NpemVvZgpAQCAtMTA1NSw3ICsxMDQ3LDcgQEAKIAkJYXNjaWkgPSB0bXBidWY7CiAKIAlpZiAodmVyc2lvbnZhbCkgewotCQkodm9pZCkgc3ByaW50Zihhc2NpaSwgIjsgZXJyb3I6IHVua25vd24gTE9DIFJSIHZlcnNpb24iKTsKKwkJKHZvaWQpIHNucHJpbnRmKGFzY2lpLCBidWZzaXosICI7IGVycm9yOiB1bmtub3duIExPQyBSUiB2ZXJzaW9uIik7CiAJCXJldHVybiAoYXNjaWkpOwogCX0KIApAQCAtMTExNCw3ICsxMTA2LDcgQEAKIAlocHN0ciA9IHN0cmR1cChwcmVjc2l6ZV9udG9hKCh1X2ludDMyX3QpaHB2YWwpKTsKIAl2cHN0ciA9IHN0cmR1cChwcmVjc2l6ZV9udG9hKCh1X2ludDMyX3QpdnB2YWwpKTsKIAotCXNwcmludGYoYXNjaWksCisJc25wcmludGYoYXNjaWksIGJ1ZnNpeiwKIAkgICAgIiVkICUuMmQgJS4yZC4lLjNkICVjICVkICUuMmQgJS4yZC4lLjNkICVjICVzJWQuJS4yZG0gJXNtICVzbSAlc20iLAogCQlsYXRkZWcsIGxhdG1pbiwgbGF0c2VjLCBsYXRzZWNmcmFjLCBub3J0aHNvdXRoLAogCQlsb25nZGVnLCBsb25nbWluLCBsb25nc2VjLCBsb25nc2VjZnJhYywgZWFzdHdlc3QsCkBAIC0xMTgwLDcgKzExNzIsNyBAQAogI2VuZGlmCiAJbXl0aW1lLT50bV95ZWFyICs9IDE5MDA7CiAJbXl0aW1lLT50bV9tb24gKz0gMTsKLQlzcHJpbnRmKG91dHB1dCwgIiUwNGQlMDJkJTAyZCUwMmQlMDJkJTAyZCIsCisJc25wcmludGYob3V0cHV0LCBzaXplb2Yob3V0cHV0KSwgIiUwNGQlMDJkJTAyZCUwMmQlMDJkJTAyZCIsCiAJCW15dGltZS0+dG1feWVhciwgbXl0aW1lLT50bV9tb24sIG15dGltZS0+dG1fbWRheSwKIAkJbXl0aW1lLT50bV9ob3VyLCBteXRpbWUtPnRtX21pbiwgbXl0aW1lLT50bV9zZWMpOwogCXJldHVybiAob3V0cHV0KTsKZGlmZiAtLWdpdCBhL2xpYmMvZG5zL3Jlc29sdi9yZXNfaW5pdC5jIGIvbGliYy9kbnMvcmVzb2x2L3Jlc19pbml0LmMKaW5kZXggZjFjYmVkOC4uNzEzYjZlMCAxMDA2NDQKLS0tIGEvbGliYy9kbnMvcmVzb2x2L3Jlc19pbml0LmMKKysrIGIvbGliYy9kbnMvcmVzb2x2L3Jlc19pbml0LmMKQEAgLTI4OSw3ICsyODksNyBAQAogCSBsaW5lW3NpemVvZihuYW1lKSAtIDFdID09ICdcdCcpKQogCiAJbnNlcnYgPSAwOwotCWlmICgoZnAgPSBmb3BlbihfUEFUSF9SRVNDT05GLCAiciIpKSAhPSBOVUxMKSB7CisJaWYgKChmcCA9IGZvcGVuKF9QQVRIX1JFU0NPTkYsICJyZSIpKSAhPSBOVUxMKSB7CiAJICAgIC8qIHJlYWQgdGhlIGNvbmZpZyBmaWxlICovCiAJICAgIHdoaWxlIChmZ2V0cyhidWYsIHNpemVvZihidWYpLCBmcCkgIT0gTlVMTCkgewogCQkvKiBza2lwIGNvbW1lbnRzICovCkBAIC02MTYsNDcgKzYxNiw2IEBACiB9CiAjZW5kaWYKIAotI2lmZGVmIEFORFJPSURfQ0hBTkdFUwotc3RhdGljIGludAotcmVhbF9yYW5kb21pZCh1X2ludCAqcmFuZG9tX3ZhbHVlKSB7Ci0JLyogb3BlbiB0aGUgbm9uYmxvY2tpbmcgcmFuZG9tIGRldmljZSwgcmV0dXJuaW5nIC0xIG9uIGZhaWx1cmUgKi8KLQlpbnQgcmFuZG9tX2RldmljZSA9IG9wZW4oIi9kZXYvdXJhbmRvbSIsIE9fUkRPTkxZIHwgT19DTE9FWEVDKTsKLQlpZiAocmFuZG9tX2RldmljZSA8IDApIHsKLQkJcmV0dXJuIC0xOwotCX0KLQotCS8qIHJlYWQgZnJvbSB0aGUgcmFuZG9tIGRldmljZSwgcmV0dXJuaW5nIC0xIG9uIGZhaWx1cmUgKG9yIHRvbyBtYW55IHJldHJpZXMpKi8KLQlmb3IgKHVfaW50IHJldHJ5ID0gNTsgcmV0cnkgPiAwOyByZXRyeS0tKSB7Ci0JCWludCByZXR2YWwgPSByZWFkKHJhbmRvbV9kZXZpY2UsIHJhbmRvbV92YWx1ZSwgc2l6ZW9mKHVfaW50KSk7Ci0JCWlmIChyZXR2YWwgPT0gc2l6ZW9mKHVfaW50KSkgewotCQkJKnJhbmRvbV92YWx1ZSAmPSAweGZmZmY7Ci0JCQljbG9zZShyYW5kb21fZGV2aWNlKTsKLQkJCXJldHVybiAwOwotCQl9IGVsc2UgaWYgKChyZXR2YWwgPCAwKSAmJiAoZXJybm8gIT0gRUlOVFIpKSB7Ci0JCQlicmVhazsKLQkJfQotCX0KLQotCWNsb3NlKHJhbmRvbV9kZXZpY2UpOwotCXJldHVybiAtMTsKLX0KLSNlbmRpZiAvKiBBTkRST0lEX0NIQU5HRVMgKi8KLQotdV9pbnQKLXJlc19yYW5kb21pZCh2b2lkKSB7Ci0jaWZkZWYgQU5EUk9JRF9DSEFOR0VTCi0JaW50IHN0YXR1cyA9IDA7Ci0JdV9pbnQgb3V0cHV0ID0gMDsKLQlzdGF0dXMgPSByZWFsX3JhbmRvbWlkKCZvdXRwdXQpOwotCWlmIChzdGF0dXMgIT0gLTEpIHsKLQkJcmV0dXJuIG91dHB1dDsKLQl9Ci0jZW5kaWYgLyogQU5EUk9JRF9DSEFOR0VTICovCi0Jc3RydWN0IHRpbWV2YWwgbm93OwotCWdldHRpbWVvZmRheSgmbm93LCBOVUxMKTsKLQlyZXR1cm4gKDB4ZmZmZiAmIChub3cudHZfc2VjIF4gbm93LnR2X3VzZWMgXiBnZXRwaWQoKSkpOwotfQotCiAvKiUKICAqIFRoaXMgcm91dGluZSBpcyBmb3IgY2xvc2luZyB0aGUgc29ja2V0IGlmIGEgdmlydHVhbCBjaXJjdWl0IGlzIHVzZWQgYW5kCiAgKiB0aGUgcHJvZ3JhbSB3YW50cyB0byBjbG9zZSBpdC4gIFRoaXMgcHJvdmlkZXMgc3VwcG9ydCBmb3IgZW5kaG9zdGVudCgpCmRpZmYgLS1naXQgYS9saWJjL2Rucy9yZXNvbHYvcmVzX3F1ZXJ5LmMgYi9saWJjL2Rucy9yZXNvbHYvcmVzX3F1ZXJ5LmMKaW5kZXggNmNkOWIxNS4uMDliZThiNCAxMDA2NDQKLS0tIGEvbGliYy9kbnMvcmVzb2x2L3Jlc19xdWVyeS5jCisrKyBiL2xpYmMvZG5zL3Jlc29sdi9yZXNfcXVlcnkuYwpAQCAtNDE0LDcgKzQxNCw3IEBACiAJCQlSRVNfU0VUX0hfRVJSTk8oc3RhdHAsIE5PX1JFQ09WRVJZKTsKIAkJCXJldHVybiAoLTEpOwogCQl9Ci0JCXNwcmludGYobmJ1ZiwgIiVzLiVzIiwgbmFtZSwgZG9tYWluKTsKKwkJc25wcmludGYobmJ1Ziwgc2l6ZW9mKG5idWYpLCAiJXMuJXMiLCBuYW1lLCBkb21haW4pOwogCX0KIAlyZXR1cm4gKHJlc19ucXVlcnkoc3RhdHAsIGxvbmduYW1lLCBjbGFzcywgdHlwZSwgYW5zd2VyLCBhbnNsZW4pKTsKIH0KZGlmZiAtLWdpdCBhL2xpYmMvZG5zL3Jlc29sdi9yZXNfc3RhdGUuYyBiL2xpYmMvZG5zL3Jlc29sdi9yZXNfc3RhdGUuYwppbmRleCA1Nzc5MWQxLi5hZmNjZDk5IDEwMDY0NAotLS0gYS9saWJjL2Rucy9yZXNvbHYvcmVzX3N0YXRlLmMKKysrIGIvbGliYy9kbnMvcmVzb2x2L3Jlc19zdGF0ZS5jCkBAIC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSAicmVzb2x2X2NhY2hlLmgiCiAjaW5jbHVkZSA8cHRocmVhZC5oPgogI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgogCiAjZGVmaW5lIF9SRUFMTFlfSU5DTFVERV9TWVNfX1NZU1RFTV9QUk9QRVJUSUVTX0hfCiAjaW5jbHVkZSA8c3lzL19zeXN0ZW1fcHJvcGVydGllcy5oPgpAQCAtNDksOSArNTAsNiBAQAogIyAgZGVmaW5lIEQoLi4uKSAgZG97fXdoaWxlKDApCiAjZW5kaWYKIAotc3RhdGljIHB0aHJlYWRfa2V5X3QgICBfcmVzX2tleTsKLXN0YXRpYyBwdGhyZWFkX29uY2VfdCAgX3Jlc19vbmNlID0gUFRIUkVBRF9PTkNFX0lOSVQ7Ci0KIHR5cGVkZWYgc3RydWN0IHsKICAgICBpbnQgICAgICAgICAgICAgICAgICBfaF9lcnJubzsKICAgICAvLyBUT0RPOiBIYXZlIG9uZSBfX3Jlc19zdGF0ZSBwZXIgbmV0d29yayBzbyB3ZSBkb24ndCBoYXZlIHRvIHJlcG9wdWxhdGUgZnJlcXVlbnRseS4KQEAgLTEwNSwxNyArMTAzLDE2IEBACiAgICAgZnJlZShydCk7CiB9CiAKLXN0YXRpYyB2b2lkCi1fcmVzX2luaXRfa2V5KCB2b2lkICkKLXsKLSAgICBwdGhyZWFkX2tleV9jcmVhdGUoICZfcmVzX2tleSwgX3Jlc190aHJlYWRfZnJlZSApOworc3RhdGljIHB0aHJlYWRfa2V5X3QgX3Jlc19rZXk7CisKK19fYXR0cmlidXRlX18oKGNvbnN0cnVjdG9yKSkgc3RhdGljIHZvaWQgX19yZXNfa2V5X2luaXQoKSB7CisgICAgcHRocmVhZF9rZXlfY3JlYXRlKCZfcmVzX2tleSwgX3Jlc190aHJlYWRfZnJlZSk7CiB9CiAKIHN0YXRpYyBfcmVzX3RocmVhZCoKIF9yZXNfdGhyZWFkX2dldCh2b2lkKQogewogICAgIF9yZXNfdGhyZWFkKiAgcnQ7Ci0gICAgcHRocmVhZF9vbmNlKCAmX3Jlc19vbmNlLCBfcmVzX2luaXRfa2V5ICk7CiAgICAgcnQgPSBwdGhyZWFkX2dldHNwZWNpZmljKCBfcmVzX2tleSApOwogCiAgICAgaWYgKHJ0ICE9IE5VTEwpIHsKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2RsZXh0LmggYi9saWJjL2luY2x1ZGUvYW5kcm9pZC9kbGV4dC5oCmluZGV4IGYyN2U0ZTUuLmYxMGE4YTIgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2RsZXh0LmgKKysrIGIvbGliYy9pbmNsdWRlL2FuZHJvaWQvZGxleHQuaApAQCAtMTgsNyArMTgsOSBAQAogI2RlZmluZSBfX0FORFJPSURfRExFWFRfSF9fCiAKICNpbmNsdWRlIDxzdGRkZWYuaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4gIC8qIGZvciBvZmY2NF90ICovCiAKIF9fQkVHSU5fREVDTFMKIApAQCAtNTcsMTYgKzU5LDI4IEBACiAgIC8qIElmIG9wZW5pbmcgYSBsaWJyYXJ5IHVzaW5nIGxpYnJhcnlfZmQgcmVhZCBpdCBzdGFydGluZyBhdCBsaWJyYXJ5X2ZkX29mZnNldC4KICAgICogVGhpcyBmbGFnIGlzIG9ubHkgdmFsaWQgd2hlbiBBTkRST0lEX0RMRVhUX1VTRV9MSUJSQVJZX0ZEIGlzIHNldC4KICAgICovCi0KICAgQU5EUk9JRF9ETEVYVF9VU0VfTElCUkFSWV9GRF9PRkZTRVQgICAgPSAweDIwLAogCisgIC8qIFdoZW4gc2V0LCBkbyBub3QgY2hlY2sgaWYgdGhlIGxpYnJhcnkgaGFzIGFscmVhZHkgYmVlbiBsb2FkZWQgYnkgZmlsZSBzdGF0KDIpcy4KKyAgICoKKyAgICogVGhpcyBmbGFnIGFsbG93cyBmb3JjZWQgbG9hZGluZyBvZiB0aGUgbGlicmFyeSBpbiB0aGUgY2FzZSB3aGVuIGZvciBzb21lCisgICAqIHJlYXNvbiBtdWx0aXBsZSBFTEYgZmlsZXMgc2hhcmUgdGhlIHNhbWUgZmlsZW5hbWUgKGJlY2F1c2UgdGhlIGFscmVhZHktbG9hZGVkCisgICAqIGxpYnJhcnkgaGFzIGJlZW4gcmVtb3ZlZCBhbmQgb3ZlcndyaXR0ZW4sIGZvciBleGFtcGxlKS4KKyAgICoKKyAgICogTm90ZSB0aGF0IGlmIHRoZSBsaWJyYXJ5IGhhcyB0aGUgc2FtZSBkdF9zb25hbWUgYXMgYW4gb2xkIG9uZSBhbmQgc29tZSBvdGhlcgorICAgKiBsaWJyYXJ5IGhhcyB0aGUgc29uYW1lIGluIERUX05FRURFRCBsaXN0LCB0aGUgZmlyc3Qgb25lIHdpbGwgYmUgdXNlZCB0byByZXNvbHZlIGFueQorICAgKiBkZXBlbmRlbmNpZXMuCisgICAqLworICBBTkRST0lEX0RMRVhUX0ZPUkNFX0xPQUQgPSAweDQwLAorCiAgIC8qIE1hc2sgb2YgdmFsaWQgYml0cyAqLwogICBBTkRST0lEX0RMRVhUX1ZBTElEX0ZMQUdfQklUUyAgICAgICA9IEFORFJPSURfRExFWFRfUkVTRVJWRURfQUREUkVTUyB8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQU5EUk9JRF9ETEVYVF9SRVNFUlZFRF9BRERSRVNTX0hJTlQgfAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFORFJPSURfRExFWFRfV1JJVEVfUkVMUk8gfAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFORFJPSURfRExFWFRfVVNFX1JFTFJPIHwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBTkRST0lEX0RMRVhUX1VTRV9MSUJSQVJZX0ZEIHwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBTkRST0lEX0RMRVhUX1VTRV9MSUJSQVJZX0ZEX09GRlNFVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBTkRST0lEX0RMRVhUX1VTRV9MSUJSQVJZX0ZEX09GRlNFVCB8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQU5EUk9JRF9ETEVYVF9GT1JDRV9MT0FELAogfTsKIAogdHlwZWRlZiBzdHJ1Y3QgewpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL2FuZHJvaWQvbGVnYWN5X2Vycm5vX2lubGluZXMuaCBiL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2xlZ2FjeV9lcnJub19pbmxpbmVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzEwOTZmYwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2xlZ2FjeV9lcnJub19pbmxpbmVzLmgKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIF9BTkRST0lEX0xFR0FDWV9FUlJOT19JTkxJTkVTX0gKKyNkZWZpbmUgX0FORFJPSURfTEVHQUNZX0VSUk5PX0lOTElORVNfSAorCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisKK19fQkVHSU5fREVDTFMKKworc3RhdGljIF9faW5saW5lIGludCBfX2F0dHJpYnV0ZV9fKChkZXByZWNhdGVkKSkgX19zZXRfZXJybm8oaW50IG4pIHsKKyAgZXJybm8gPSBuOworICByZXR1cm4gLTE7Cit9CisKK19fRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBfQU5EUk9JRF9MRUdBQ1lfRVJSTk9fSU5MSU5FU19IICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvYW5kcm9pZC9sZWdhY3lfc2lnbmFsX2lubGluZXMuaCBiL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2xlZ2FjeV9zaWduYWxfaW5saW5lcy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFiNmU2ODcKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2luY2x1ZGUvYW5kcm9pZC9sZWdhY3lfc2lnbmFsX2lubGluZXMuaApAQCAtMCwwICsxLDk4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgX0FORFJPSURfTEVHQUNZX1NJR05BTF9JTkxJTkVTX0hfCisjZGVmaW5lIF9BTkRST0lEX0xFR0FDWV9TSUdOQUxfSU5MSU5FU19IXworCisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisKK19fQkVHSU5fREVDTFMKKworZXh0ZXJuIHNpZ2hhbmRsZXJfdCBic2Rfc2lnbmFsKGludCBzaWdudW0sIHNpZ2hhbmRsZXJfdCBoYW5kbGVyKTsKKworc3RhdGljIF9faW5saW5lIGludCBzaWdpc21lbWJlcihzaWdzZXRfdCAqc2V0LCBpbnQgc2lnbnVtKSB7CisgIC8qIFNpZ25hbCBudW1iZXJzIHN0YXJ0IGF0IDEsIGJ1dCBiaXQgcG9zaXRpb25zIHN0YXJ0IGF0IDAuICovCisgIGludCBiaXQgPSBzaWdudW0gLSAxOworICBjb25zdCB1bnNpZ25lZCBsb25nICpsb2NhbF9zZXQgPSAoY29uc3QgdW5zaWduZWQgbG9uZyAqKXNldDsKKyAgaWYgKHNldCA9PSBOVUxMIHx8IGJpdCA8IDAgfHwgYml0ID49IChpbnQpKDggKiBzaXplb2Yoc2lnc2V0X3QpKSkgeworICAgIGVycm5vID0gRUlOVkFMOworICAgIHJldHVybiAtMTsKKyAgfQorICByZXR1cm4gKGludCkoKGxvY2FsX3NldFtiaXQgLyBMT05HX0JJVF0gPj4gKGJpdCAlIExPTkdfQklUKSkgJiAxKTsKK30KKworc3RhdGljIF9faW5saW5lIGludCBzaWdhZGRzZXQoc2lnc2V0X3QgKnNldCwgaW50IHNpZ251bSkgeworICAvKiBTaWduYWwgbnVtYmVycyBzdGFydCBhdCAxLCBidXQgYml0IHBvc2l0aW9ucyBzdGFydCBhdCAwLiAqLworICBpbnQgYml0ID0gc2lnbnVtIC0gMTsKKyAgdW5zaWduZWQgbG9uZyAqbG9jYWxfc2V0ID0gKHVuc2lnbmVkIGxvbmcgKilzZXQ7CisgIGlmIChzZXQgPT0gTlVMTCB8fCBiaXQgPCAwIHx8IGJpdCA+PSAoaW50KSg4ICogc2l6ZW9mKHNpZ3NldF90KSkpIHsKKyAgICBlcnJubyA9IEVJTlZBTDsKKyAgICByZXR1cm4gLTE7CisgIH0KKyAgbG9jYWxfc2V0W2JpdCAvIExPTkdfQklUXSB8PSAxVUwgPDwgKGJpdCAlIExPTkdfQklUKTsKKyAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBfX2lubGluZSBpbnQgc2lnZGVsc2V0KHNpZ3NldF90ICpzZXQsIGludCBzaWdudW0pIHsKKyAgLyogU2lnbmFsIG51bWJlcnMgc3RhcnQgYXQgMSwgYnV0IGJpdCBwb3NpdGlvbnMgc3RhcnQgYXQgMC4gKi8KKyAgaW50IGJpdCA9IHNpZ251bSAtIDE7CisgIHVuc2lnbmVkIGxvbmcgKmxvY2FsX3NldCA9ICh1bnNpZ25lZCBsb25nICopc2V0OworICBpZiAoc2V0ID09IE5VTEwgfHwgYml0IDwgMCB8fCBiaXQgPj0gKGludCkoOCAqIHNpemVvZihzaWdzZXRfdCkpKSB7CisgICAgZXJybm8gPSBFSU5WQUw7CisgICAgcmV0dXJuIC0xOworICB9CisgIGxvY2FsX3NldFtiaXQgLyBMT05HX0JJVF0gJj0gfigxVUwgPDwgKGJpdCAlIExPTkdfQklUKSk7CisgIHJldHVybiAwOworfQorCitzdGF0aWMgX19pbmxpbmUgaW50IHNpZ2VtcHR5c2V0KHNpZ3NldF90ICpzZXQpIHsKKyAgaWYgKHNldCA9PSBOVUxMKSB7CisgICAgZXJybm8gPSBFSU5WQUw7CisgICAgcmV0dXJuIC0xOworICB9CisgIG1lbXNldChzZXQsIDAsIHNpemVvZihzaWdzZXRfdCkpOworICByZXR1cm4gMDsKK30KKworc3RhdGljIF9faW5saW5lIGludCBzaWdmaWxsc2V0KHNpZ3NldF90ICpzZXQpIHsKKyAgaWYgKHNldCA9PSBOVUxMKSB7CisgICAgZXJybm8gPSBFSU5WQUw7CisgICAgcmV0dXJuIC0xOworICB9CisgIG1lbXNldChzZXQsIH4wLCBzaXplb2Yoc2lnc2V0X3QpKTsKKyAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBfX2lubGluZSBzaWdoYW5kbGVyX3Qgc2lnbmFsKGludCBzLCBzaWdoYW5kbGVyX3QgZikgeworICByZXR1cm4gYnNkX3NpZ25hbChzLCBmKTsKK30KKworX19FTkRfREVDTFMKKworI2VuZGlmIC8qIF9BTkRST0lEX0xFR0FDWV9TSUdOQUxfSU5MSU5FU19IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL2FuZHJvaWQvbGVnYWN5X3N0ZGxpYl9pbmxpbmVzLmggYi9saWJjL2luY2x1ZGUvYW5kcm9pZC9sZWdhY3lfc3RkbGliX2lubGluZXMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41OGEyYTllCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9pbmNsdWRlL2FuZHJvaWQvbGVnYWN5X3N0ZGxpYl9pbmxpbmVzLmgKQEAgLTAsMCArMSw2NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIF9BTkRST0lEX0xFR0FDWV9TVERMSUJfSU5MSU5FU19IXworI2RlZmluZSBfQU5EUk9JRF9MRUdBQ1lfU1RETElCX0lOTElORVNfSF8KKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorCitfX0JFR0lOX0RFQ0xTCisKK3N0YXRpYyBfX2lubGluZSBmbG9hdCBzdHJ0b2YoY29uc3QgY2hhciAqbnB0ciwgY2hhciAqKmVuZHB0cikgeworICByZXR1cm4gKGZsb2F0KXN0cnRvZChucHRyLCBlbmRwdHIpOworfQorCitzdGF0aWMgX19pbmxpbmUgZG91YmxlIGF0b2YoY29uc3QgY2hhciAqbnB0cikgeyByZXR1cm4gKHN0cnRvZChucHRyLCBOVUxMKSk7IH0KKworc3RhdGljIF9faW5saW5lIGludCBhYnMoaW50IF9fbikgeyByZXR1cm4gKF9fbiA8IDApID8gLV9fbiA6IF9fbjsgfQorCitzdGF0aWMgX19pbmxpbmUgbG9uZyBsYWJzKGxvbmcgX19uKSB7IHJldHVybiAoX19uIDwgMEwpID8gLV9fbiA6IF9fbjsgfQorCitzdGF0aWMgX19pbmxpbmUgbG9uZyBsb25nIGxsYWJzKGxvbmcgbG9uZyBfX24pIHsKKyAgcmV0dXJuIChfX24gPCAwTEwpID8gLV9fbiA6IF9fbjsKK30KKworc3RhdGljIF9faW5saW5lIGludCByYW5kKHZvaWQpIHsgcmV0dXJuIChpbnQpbHJhbmQ0OCgpOyB9CisKK3N0YXRpYyBfX2lubGluZSB2b2lkIHNyYW5kKHVuc2lnbmVkIGludCBfX3MpIHsgc3JhbmQ0OChfX3MpOyB9CisKK3N0YXRpYyBfX2lubGluZSBsb25nIHJhbmRvbSh2b2lkKSB7IHJldHVybiBscmFuZDQ4KCk7IH0KKworc3RhdGljIF9faW5saW5lIHZvaWQgc3JhbmRvbSh1bnNpZ25lZCBpbnQgX19zKSB7IHNyYW5kNDgoX19zKTsgfQorCitzdGF0aWMgX19pbmxpbmUgaW50IGdyYW50cHQoaW50IF9fZmQgX19hdHRyaWJ1dGUoKHVudXNlZCkpKSB7CisgIHJldHVybiAwOyAvKiBkZXZwdHMgZG9lcyB0aGlzIGFsbCBmb3IgdXMhICovCit9CisKK19fRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBfQU5EUk9JRF9MRUdBQ1lfU1RETElCX0lOTElORVNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2xlZ2FjeV9zeXNfYXRvbWljc19pbmxpbmVzLmggYi9saWJjL2luY2x1ZGUvYW5kcm9pZC9sZWdhY3lfc3lzX2F0b21pY3NfaW5saW5lcy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg1Y2JhZGUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2luY2x1ZGUvYW5kcm9pZC9sZWdhY3lfc3lzX2F0b21pY3NfaW5saW5lcy5oCkBAIC0wLDAgKzEsNzIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfQU5EUk9JRF9MRUdBQ1lfU1lTX0FUT01JQ1NfSU5MSU5FU19IXworI2RlZmluZSBfQU5EUk9JRF9MRUdBQ1lfU1lTX0FUT01JQ1NfSU5MSU5FU19IXworCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisKK19fQkVHSU5fREVDTFMKKworLyogTm90ZTogYXRvbWljIG9wZXJhdGlvbnMgdGhhdCB3ZXJlIGV4cG9ydGVkIGJ5IHRoZSBDIGxpYnJhcnkgZGlkbid0CisgKiAgICAgICBwcm92aWRlIGFueSBtZW1vcnkgYmFycmllcnMsIHdoaWNoIGNyZWF0ZWQgcG90ZW50aWFsIGlzc3VlcyBvbgorICogICAgICAgbXVsdGktY29yZSBkZXZpY2VzLiBXZSBub3cgZGVmaW5lIHRoZW0gYXMgaW5saW5lZCBjYWxscyB0bworICogICAgICAgR0NDIHN5bmMgYnVpbHRpbnMsIHdoaWNoIGFsd2F5cyBwcm92aWRlIGEgZnVsbCBiYXJyaWVyLgorICoKKyAqICAgICAgIE5PVEU6IFRoZSBDIGxpYnJhcnkgc3RpbGwgZXhwb3J0cyBhdG9taWMgZnVuY3Rpb25zIGJ5IHRoZSBzYW1lCisgKiAgICAgICAgICAgICAgbmFtZSB0byBlbnN1cmUgQUJJIHN0YWJpbGl0eSBmb3IgZXhpc3RpbmcgTkRLIG1hY2hpbmUgY29kZS4KKyAqCisgKiAgICAgICBJZiB5b3UgYXJlIGFuIE5ESyBkZXZlbG9wZXIsIHdlIGVuY291cmFnZSB5b3UgdG8gcmVidWlsZCB5b3VyCisgKiAgICAgICB1bm1vZGlmaWVkIHNvdXJjZXMgYWdhaW5zdCB0aGlzIGhlYWRlciBhcyBzb29uIGFzIHBvc3NpYmxlLgorICovCisjZGVmaW5lIF9fQVRPTUlDX0lOTElORV9fIHN0YXRpYyBfX2lubGluZSBfX2F0dHJpYnV0ZV9fKChhbHdheXNfaW5saW5lKSkKKworX19BVE9NSUNfSU5MSU5FX18gaW50IF9fYXRvbWljX2NtcHhjaGcoaW50IG9sZCwgaW50IF9uZXcsIHZvbGF0aWxlIGludCAqcHRyKSB7CisgIC8qIFdlIG11c3QgcmV0dXJuIDAgb24gc3VjY2VzcyAqLworICByZXR1cm4gX19zeW5jX3ZhbF9jb21wYXJlX2FuZF9zd2FwKHB0ciwgb2xkLCBfbmV3KSAhPSBvbGQ7Cit9CisKK19fQVRPTUlDX0lOTElORV9fIGludCBfX2F0b21pY19zd2FwKGludCBfbmV3LCB2b2xhdGlsZSBpbnQgKnB0cikgeworICBpbnQgcHJldjsKKyAgZG8geworICAgIHByZXYgPSAqcHRyOworICB9IHdoaWxlIChfX3N5bmNfdmFsX2NvbXBhcmVfYW5kX3N3YXAocHRyLCBwcmV2LCBfbmV3KSAhPSBwcmV2KTsKKyAgcmV0dXJuIHByZXY7Cit9CisKK19fQVRPTUlDX0lOTElORV9fIGludCBfX2F0b21pY19kZWModm9sYXRpbGUgaW50ICpwdHIpIHsKKyAgcmV0dXJuIF9fc3luY19mZXRjaF9hbmRfc3ViKHB0ciwgMSk7Cit9CisKK19fQVRPTUlDX0lOTElORV9fIGludCBfX2F0b21pY19pbmModm9sYXRpbGUgaW50ICpwdHIpIHsKKyAgcmV0dXJuIF9fc3luY19mZXRjaF9hbmRfYWRkKHB0ciwgMSk7Cit9CisKK19fRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBfQU5EUk9JRF9MRUdBQ1lfU1lTX0FUT01JQ1NfSU5MSU5FU19IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL2FuZHJvaWQvbGVnYWN5X3N5c19zdGF0X2lubGluZXMuaCBiL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2xlZ2FjeV9zeXNfc3RhdF9pbmxpbmVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjZkM2MwZgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2xlZ2FjeV9zeXNfc3RhdF9pbmxpbmVzLmgKQEAgLTAsMCArMSw0MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIF9BTkRST0lEX0xFR0FDWV9TWVNfU1RBVF9JTkxJTkVTX0hfCisjZGVmaW5lIF9BTkRST0lEX0xFR0FDWV9TWVNfU1RBVF9JTkxJTkVTX0hfCisKKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKworX19CRUdJTl9ERUNMUworCitzdGF0aWMgX19pbmxpbmUgaW50IG1rZmlmbyhjb25zdCBjaGFyICpfX3AsIG1vZGVfdCBfX20pIHsKKyAgcmV0dXJuIG1rbm9kKF9fcCwgKF9fbSAmIH5TX0lGTVQpIHwgU19JRklGTywgKGRldl90KTApOworfQorCitfX0VORF9ERUNMUworCisjZW5kaWYgLyogX0FORFJPSURfTEVHQUNZX1NZU19TVEFUX0lOTElORVNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2xlZ2FjeV90ZXJtaW9zX2lubGluZXMuaCBiL2xpYmMvaW5jbHVkZS9hbmRyb2lkL2xlZ2FjeV90ZXJtaW9zX2lubGluZXMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYjYxZjI3Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9pbmNsdWRlL2FuZHJvaWQvbGVnYWN5X3Rlcm1pb3NfaW5saW5lcy5oCkBAIC0wLDAgKzEsOTMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfQU5EUk9JRF9MRUdBQ1lfVEVSTUlPU19JTkxJTkVTX0hfCisjZGVmaW5lIF9BTkRST0lEX0xFR0FDWV9URVJNSU9TX0lOTElORVNfSF8KKworI2luY2x1ZGUgPGxpbnV4L3Rlcm1pb3MuaD4KKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKyNpbmNsdWRlIDxzeXMvaW9jdGwuaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKworX19CRUdJTl9ERUNMUworCitzdGF0aWMgX19pbmxpbmUgaW50IHRjZ2V0YXR0cihpbnQgZmQsIHN0cnVjdCB0ZXJtaW9zICpzKSB7CisgIHJldHVybiBpb2N0bChmZCwgVENHRVRTLCBzKTsKK30KKworc3RhdGljIF9faW5saW5lIGludCB0Y3NldGF0dHIoaW50IGZkLCBpbnQgX19vcHQsIGNvbnN0IHN0cnVjdCB0ZXJtaW9zICpzKSB7CisgIHJldHVybiBpb2N0bChmZCwgX19vcHQsICh2b2lkICopcyk7Cit9CisKK3N0YXRpYyBfX2lubGluZSBpbnQgdGNmbG93KGludCBmZCwgaW50IGFjdGlvbikgeworICByZXR1cm4gaW9jdGwoZmQsIFRDWE9OQywgKHZvaWQgKikoaW50cHRyX3QpYWN0aW9uKTsKK30KKworc3RhdGljIF9faW5saW5lIGludCB0Y2ZsdXNoKGludCBmZCwgaW50IF9fcXVldWUpIHsKKyAgcmV0dXJuIGlvY3RsKGZkLCBUQ0ZMU0gsICh2b2lkICopKGludHB0cl90KV9fcXVldWUpOworfQorCitzdGF0aWMgX19pbmxpbmUgcGlkX3QgdGNnZXRzaWQoaW50IGZkKSB7CisgIHBpZF90IF9waWQ7CisgIHJldHVybiBpb2N0bChmZCwgVElPQ0dTSUQsICZfcGlkKSA/IChwaWRfdCktMSA6IF9waWQ7Cit9CisKK3N0YXRpYyBfX2lubGluZSBpbnQgdGNzZW5kYnJlYWsoaW50IGZkLCBpbnQgX19kdXJhdGlvbikgeworICByZXR1cm4gaW9jdGwoZmQsIFRDU0JSS1AsICh2b2lkICopKHVpbnRwdHJfdClfX2R1cmF0aW9uKTsKK30KKworc3RhdGljIF9faW5saW5lIHNwZWVkX3QgY2ZnZXRvc3BlZWQoY29uc3Qgc3RydWN0IHRlcm1pb3MgKnMpIHsKKyAgcmV0dXJuIChzcGVlZF90KShzLT5jX2NmbGFnICYgQ0JBVUQpOworfQorCitzdGF0aWMgX19pbmxpbmUgaW50IGNmc2V0b3NwZWVkKHN0cnVjdCB0ZXJtaW9zICpzLCBzcGVlZF90IHNwZWVkKSB7CisgIHMtPmNfY2ZsYWcgPSAocy0+Y19jZmxhZyAmIH5DQkFVRCkgfCAoc3BlZWQgJiBDQkFVRCk7CisgIHJldHVybiAwOworfQorCitzdGF0aWMgX19pbmxpbmUgc3BlZWRfdCBjZmdldGlzcGVlZChjb25zdCBzdHJ1Y3QgdGVybWlvcyAqcykgeworICByZXR1cm4gKHNwZWVkX3QpKHMtPmNfY2ZsYWcgJiBDQkFVRCk7Cit9CisKK3N0YXRpYyBfX2lubGluZSBpbnQgY2ZzZXRpc3BlZWQoc3RydWN0IHRlcm1pb3MgKnMsIHNwZWVkX3Qgc3BlZWQpIHsKKyAgcy0+Y19jZmxhZyA9IChzLT5jX2NmbGFnICYgfkNCQVVEKSB8IChzcGVlZCAmIENCQVVEKTsKKyAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBfX2lubGluZSB2b2lkIGNmbWFrZXJhdyhzdHJ1Y3QgdGVybWlvcyAqcykgeworICBzLT5jX2lmbGFnICY9CisgICAgICB+KElHTkJSSyB8IEJSS0lOVCB8IFBBUk1SSyB8IElTVFJJUCB8IElOTENSIHwgSUdOQ1IgfCBJQ1JOTCB8IElYT04pOworICBzLT5jX29mbGFnICY9IH5PUE9TVDsKKyAgcy0+Y19sZmxhZyAmPSB+KEVDSE8gfCBFQ0hPTkwgfCBJQ0FOT04gfCBJU0lHIHwgSUVYVEVOKTsKKyAgcy0+Y19jZmxhZyAmPSB+KENTSVpFIHwgUEFSRU5CKTsKKyAgcy0+Y19jZmxhZyB8PSBDUzg7Cit9CisKK19fRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBfQU5EUk9JRF9MRUdBQ1lfVEVSTUlPU19JTkxJTkVTX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvYXJwYS9uYW1lc2VyX2NvbXBhdC5oIGIvbGliYy9pbmNsdWRlL2FycGEvbmFtZXNlcl9jb21wYXQuaAppbmRleCBlMDYwZjYwLi41Mzk4NjRlIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvYXJwYS9uYW1lc2VyX2NvbXBhdC5oCisrKyBiL2xpYmMvaW5jbHVkZS9hcnBhL25hbWVzZXJfY29tcGF0LmgKQEAgLTQ0LDUzICs0NCw2IEBACiAKICNpbmNsdWRlIDxlbmRpYW4uaD4KIAotI2lmbmRlZiBCWVRFX09SREVSCi0jaWYgKEJTRCA+PSAxOTkxMDMpCi0jIGluY2x1ZGUgPG1hY2hpbmUvZW5kaWFuLmg+Ci0jZWxzZQotI2lmZGVmIF9fbGludXhfXwotIyBpbmNsdWRlIDxlbmRpYW4uaD4KLSNlbHNlCi0jZGVmaW5lCUxJVFRMRV9FTkRJQU4JMTIzNAkvKiBsZWFzdC1zaWduaWZpY2FudCBieXRlIGZpcnN0ICh2YXgsIHBjKSAqLwotI2RlZmluZQlCSUdfRU5ESUFOCTQzMjEJLyogbW9zdC1zaWduaWZpY2FudCBieXRlIGZpcnN0IChJQk0sIG5ldCkgKi8KLSNkZWZpbmUJUERQX0VORElBTgkzNDEyCS8qIExTQiBmaXJzdCBpbiB3b3JkLCBNU1cgZmlyc3QgaW4gbG9uZyAocGRwKSovCi0KLSNpZiBkZWZpbmVkKHZheCkgfHwgZGVmaW5lZChuczMyMDAwKSB8fCBkZWZpbmVkKHN1bjM4NikgfHwgZGVmaW5lZChpMzg2KSB8fCBcCi0gICAgZGVmaW5lZChNSVBTRUwpIHx8IGRlZmluZWQoX01JUFNFTCkgfHwgZGVmaW5lZChCSVRfWkVST19PTl9SSUdIVCkgfHwgXAotICAgIGRlZmluZWQoX19pMzg2X18pIHx8IGRlZmluZWQoX19pMzg2KSB8fCBkZWZpbmVkKF9fYW1kNjRfXykgfHwgXAotICAgIGRlZmluZWQoX194ODZfNjRfXykgfHwgZGVmaW5lZChNSVBTRUwpIHx8IGRlZmluZWQoX01JUFNFTCkgfHwgXAotICAgIGRlZmluZWQoQklUX1pFUk9fT05fUklHSFQpIHx8IGRlZmluZWQoX19hbHBoYV9fKSB8fCBkZWZpbmVkKF9fYWxwaGEpIHx8IFwKLSAgICAoZGVmaW5lZChfX0x5bnhfXykgJiYgZGVmaW5lZChfX3g4Nl9fKSkKLSNkZWZpbmUgQllURV9PUkRFUglMSVRUTEVfRU5ESUFOCi0jZW5kaWYKLQotI2lmIGRlZmluZWQoc2VsKSB8fCBkZWZpbmVkKHB5cikgfHwgZGVmaW5lZChtYzY4MDAwKSB8fCBkZWZpbmVkKHNwYXJjKSB8fCBcCi0gICAgZGVmaW5lZChpczY4aykgfHwgZGVmaW5lZCh0YWhvZSkgfHwgZGVmaW5lZChpYm0wMzIpIHx8IGRlZmluZWQoaWJtMzcwKSB8fCBcCi0gICAgZGVmaW5lZChNSVBTRUIpIHx8IGRlZmluZWQoX01JUFNFQikgfHwgZGVmaW5lZChfSUJNUjIpIHx8IGRlZmluZWQoREdVWCkgfHxcCi0gICAgZGVmaW5lZChhcG9sbG8pIHx8IGRlZmluZWQoX19jb252ZXhfXykgfHwgZGVmaW5lZChfQ1JBWSkgfHwgXAotICAgIGRlZmluZWQoX19ocHBhKSB8fCBkZWZpbmVkKF9faHA5MDAwKSB8fCBcCi0gICAgZGVmaW5lZChfX2hwOTAwMHMzMDApIHx8IGRlZmluZWQoX19ocDkwMDBzNzAwKSB8fCBcCi0gICAgZGVmaW5lZChfX2hwMzAwMHM5MDApIHx8IGRlZmluZWQoX19ocHV4KSB8fCBkZWZpbmVkKE1QRSkgfHwgXAotICAgIGRlZmluZWQgKEJJVF9aRVJPX09OX0xFRlQpIHx8IGRlZmluZWQobTY4aykgfHwgZGVmaW5lZChfX3NwYXJjKSB8fCAgXAotICAgIChkZWZpbmVkKF9fTHlueF9fKSAmJiBcCi0gICAgIChkZWZpbmVkKF9fNjhrX18pIHx8IGRlZmluZWQoX19zcGFyY19fKSB8fCBkZWZpbmVkKF9fcG93ZXJwY19fKSkpCi0jZGVmaW5lIEJZVEVfT1JERVIJQklHX0VORElBTgotI2VuZGlmCi0jZW5kaWYgLyogX19saW51eCAqLwotI2VuZGlmIC8qIEJTRCAqLwotI2VuZGlmIC8qIEJZVEVfT1JERVIgKi8KLQotI2lmICFkZWZpbmVkKEJZVEVfT1JERVIpIHx8IFwKLSAgICAoQllURV9PUkRFUiAhPSBCSUdfRU5ESUFOICYmIEJZVEVfT1JERVIgIT0gTElUVExFX0VORElBTiAmJiBcCi0gICAgQllURV9PUkRFUiAhPSBQRFBfRU5ESUFOKQotCS8qIHlvdSBtdXN0IGRldGVybWluZSB3aGF0IHRoZSBjb3JyZWN0IGJpdCBvcmRlciBpcyBmb3IKLQkgKiB5b3VyIGNvbXBpbGVyIC0gdGhlIG5leHQgbGluZSBpcyBhbiBpbnRlbnRpb25hbCBlcnJvcgotCSAqIHdoaWNoIHdpbGwgZm9yY2UgeW91ciBjb21waWxlcyB0byBib21iIHVudGlsIHlvdSBmaXgKLQkgKiB0aGUgYWJvdmUgbWFjcm9zLgotCSAqLwotICAjZXJyb3IgIlVuZGVmaW5lZCBvciBpbnZhbGlkIEJZVEVfT1JERVIiOwotI2VuZGlmCi0KIC8qCiAgKiBTdHJ1Y3R1cmUgZm9yIHF1ZXJ5IGhlYWRlci4gIFRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGlzIG1hY2hpbmUtIGFuZAogICogY29tcGlsZXItZGVwZW5kZW50LCBkZXBlbmRpbmcgb24gdGhlIGJ5dGUvYml0IG9yZGVyIGFuZCB0aGUgbGF5b3V0CmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvY3R5cGUuaCBiL2xpYmMvaW5jbHVkZS9jdHlwZS5oCmluZGV4IGQwNWE5NTIuLjgzYjViYTcgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9jdHlwZS5oCisrKyBiL2xpYmMvaW5jbHVkZS9jdHlwZS5oCkBAIC00MywzNiArNDMsMzcgQEAKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KICNpbmNsdWRlIDx4bG9jYWxlLmg+CiAKLSNkZWZpbmUJX0NUWVBFX1UJMHgwMQotI2RlZmluZQlfQ1RZUEVfTAkweDAyCi0jZGVmaW5lCV9DVFlQRV9ECTB4MDQKLSNkZWZpbmUJX0NUWVBFX1MJMHgwOAotI2RlZmluZQlfQ1RZUEVfUAkweDEwCi0jZGVmaW5lCV9DVFlQRV9DCTB4MjAKLSNkZWZpbmUJX0NUWVBFX1gJMHg0MAotI2RlZmluZQlfQ1RZUEVfQgkweDgwCi0jZGVmaW5lCV9DVFlQRV9SCShfQ1RZUEVfUHxfQ1RZUEVfVXxfQ1RZUEVfTHxfQ1RZUEVfRHxfQ1RZUEVfQikKLSNkZWZpbmUJX0NUWVBFX0EJKF9DVFlQRV9MfF9DVFlQRV9VKQorI2RlZmluZSBfQ1RZUEVfVSAweDAxCisjZGVmaW5lIF9DVFlQRV9MIDB4MDIKKyNkZWZpbmUgX0NUWVBFX0QgMHgwNAorI2RlZmluZSBfQ1RZUEVfUyAweDA4CisjZGVmaW5lIF9DVFlQRV9QIDB4MTAKKyNkZWZpbmUgX0NUWVBFX0MgMHgyMAorI2RlZmluZSBfQ1RZUEVfWCAweDQwCisjZGVmaW5lIF9DVFlQRV9CIDB4ODAKKyNkZWZpbmUgX0NUWVBFX1IgKF9DVFlQRV9QfF9DVFlQRV9VfF9DVFlQRV9MfF9DVFlQRV9EfF9DVFlQRV9CKQorI2RlZmluZSBfQ1RZUEVfQSAoX0NUWVBFX0x8X0NUWVBFX1UpCiAKIF9fQkVHSU5fREVDTFMKIAogZXh0ZXJuIGNvbnN0IGNoYXIJKl9jdHlwZV87CiAKICNpZiBkZWZpbmVkKF9fR05VQ19fKSB8fCBkZWZpbmVkKF9BTlNJX0xJQlJBUlkpIHx8IGRlZmluZWQobGludCkKLWludAlpc2FsbnVtKGludCk7Ci1pbnQJaXNhbHBoYShpbnQpOwotaW50CWlzY250cmwoaW50KTsKLWludAlpc2RpZ2l0KGludCk7Ci1pbnQJaXNncmFwaChpbnQpOwotaW50CWlzbG93ZXIoaW50KTsKLWludAlpc3ByaW50KGludCk7Ci1pbnQJaXNwdW5jdChpbnQpOwotaW50CWlzc3BhY2UoaW50KTsKLWludAlpc3VwcGVyKGludCk7Ci1pbnQJaXN4ZGlnaXQoaW50KTsKLWludAl0b2xvd2VyKGludCk7Ci1pbnQJdG91cHBlcihpbnQpOworaW50IGlzYWxudW0oaW50KTsKK2ludCBpc2FscGhhKGludCk7CitpbnQgaXNjbnRybChpbnQpOworaW50IGlzZGlnaXQoaW50KTsKK2ludCBpc2dyYXBoKGludCk7CitpbnQgaXNsb3dlcihpbnQpOworaW50IGlzcHJpbnQoaW50KTsKK2ludCBpc3B1bmN0KGludCk7CitpbnQgaXNzcGFjZShpbnQpOworaW50IGlzdXBwZXIoaW50KTsKK2ludCBpc3hkaWdpdChpbnQpOworaW50IHRvbG93ZXIoaW50KTsKK2ludCB0b3VwcGVyKGludCk7CiAKKyNpZiBfX0FORFJPSURfQVBJX18gPj0gMjEKIGludCBpc2FsbnVtX2woaW50LCBsb2NhbGVfdCk7CiBpbnQgaXNhbHBoYV9sKGludCwgbG9jYWxlX3QpOwogaW50IGlzYmxhbmtfbChpbnQsIGxvY2FsZV90KTsKQEAgLTg3LDE3ICs4OCwxOCBAQAogaW50IGlzeGRpZ2l0X2woaW50LCBsb2NhbGVfdCk7CiBpbnQgdG9sb3dlcl9sKGludCwgbG9jYWxlX3QpOwogaW50IHRvdXBwZXJfbChpbnQsIGxvY2FsZV90KTsKKyNlbmRpZiAvKiBfX0FORFJPSURfQVBJX18gPj0gMjEgKi8KIAogI2lmIF9fQlNEX1ZJU0lCTEUgfHwgX19JU09fQ19WSVNJQkxFID49IDE5OTkgfHwgX19QT1NJWF9WSVNJQkxFID4gMjAwMTEyIFwKICAgICB8fCBfX1hQR19WSVNJQkxFID4gNjAwCi1pbnQJaXNibGFuayhpbnQpOworaW50IGlzYmxhbmsoaW50KTsKICNlbmRpZgogCiAjaWYgX19CU0RfVklTSUJMRSB8fCBfX1hQR19WSVNJQkxFCi1pbnQJaXNhc2NpaShpbnQpOwotaW50CXRvYXNjaWkoaW50KTsKLWludAlfdG9sb3dlcihpbnQpOwotaW50CV90b3VwcGVyKGludCk7CitpbnQgaXNhc2NpaShpbnQpOworaW50IHRvYXNjaWkoaW50KTsKK2ludCBfdG9sb3dlcihpbnQpOworaW50IF90b3VwcGVyKGludCk7CiAjZW5kaWYgLyogX19CU0RfVklTSUJMRSB8fCBfX1hQR19WSVNJQkxFICovCiAKICNlbmRpZiAvKiBfX0dOVUNfXyB8fCBfQU5TSV9MSUJSQVJZIHx8IGxpbnQgKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9kaXJlbnQuaCBiL2xpYmMvaW5jbHVkZS9kaXJlbnQuaAppbmRleCBhODQ5YTYxLi42MzcxNmE0IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvZGlyZW50LmgKKysrIGIvbGliYy9pbmNsdWRlL2RpcmVudC5oCkBAIC01OCw2ICs1OCwxMiBAQAogCiAjdW5kZWYgX19ESVJFTlQ2NF9CT0RZCiAKKy8qIGdsaWJjIGNvbXBhdGliaWxpdHkuICovCisjdW5kZWYgX0RJUkVOVF9IQVZFX0RfTkFNTEVOIC8qIExpbnV4IGRvZXNuJ3QgaGF2ZSBhIGRfbmFtbGVuIGZpZWxkLiAqLworI2RlZmluZSBfRElSRU5UX0hBVkVfRF9SRUNMRU4KKyNkZWZpbmUgX0RJUkVOVF9IQVZFX0RfT0ZGCisjZGVmaW5lIF9ESVJFTlRfSEFWRV9EX1RZUEUKKwogI2RlZmluZSBkX2ZpbGVubyBkX2lubwogCiB0eXBlZGVmIHN0cnVjdCBESVIgRElSOwpAQCAtNzAsNiArNzYsOCBAQAogZXh0ZXJuIGludCByZWFkZGlyNjRfcihESVIqLCBzdHJ1Y3QgZGlyZW50NjQqLCBzdHJ1Y3QgZGlyZW50NjQqKik7CiBleHRlcm4gaW50IGNsb3NlZGlyKERJUiopOwogZXh0ZXJuIHZvaWQgcmV3aW5kZGlyKERJUiopOworZXh0ZXJuIHZvaWQgc2Vla2RpcihESVIqLCBsb25nKTsKK2V4dGVybiBsb25nIHRlbGxkaXIoRElSKik7CiBleHRlcm4gaW50IGRpcmZkKERJUiopOwogZXh0ZXJuIGludCBhbHBoYXNvcnQoY29uc3Qgc3RydWN0IGRpcmVudCoqLCBjb25zdCBzdHJ1Y3QgZGlyZW50KiopOwogZXh0ZXJuIGludCBhbHBoYXNvcnQ2NChjb25zdCBzdHJ1Y3QgZGlyZW50NjQqKiwgY29uc3Qgc3RydWN0IGRpcmVudDY0KiopOwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL2RsZmNuLmggYi9saWJjL2luY2x1ZGUvZGxmY24uaAppbmRleCA4ZGRlMDhjLi5hZmE3Njg3IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvZGxmY24uaAorKysgYi9saWJjL2luY2x1ZGUvZGxmY24uaApAQCAtNjQsNiArNjQsNyBAQAogICBSVExEX0dMT0JBTCA9IDIsCiAjZW5kaWYKICAgUlRMRF9OT0xPQUQgPSA0LAorICBSVExEX05PREVMRVRFID0gMHgwMTAwMCwKIH07CiAKICNpZiBkZWZpbmVkIChfX0xQNjRfXykKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9lbGYuaCBiL2xpYmMvaW5jbHVkZS9lbGYuaAppbmRleCA3ZGU0NjRlLi5kZjc2OGJhIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvZWxmLmgKKysrIGIvbGliYy9pbmNsdWRlL2VsZi5oCkBAIC00OCwzNSArNDgsMTAwIEBACiAgIH0gYV91bjsKIH0gRWxmNjRfYXV4dl90OwogCit0eXBlZGVmIEVsZjMyX0hhbGYgRWxmMzJfVmVyc3ltOwordHlwZWRlZiBFbGY2NF9IYWxmIEVsZjY0X1ZlcnN5bTsKKwordHlwZWRlZiBzdHJ1Y3QgeworICBFbGYzMl9IYWxmIHZkX3ZlcnNpb247CisgIEVsZjMyX0hhbGYgdmRfZmxhZ3M7CisgIEVsZjMyX0hhbGYgdmRfbmR4OworICBFbGYzMl9IYWxmIHZkX2NudDsKKyAgRWxmMzJfV29yZCB2ZF9oYXNoOworICBFbGYzMl9Xb3JkIHZkX2F1eDsKKyAgRWxmMzJfV29yZCB2ZF9uZXh0OworfSBFbGYzMl9WZXJkZWY7CisKK3R5cGVkZWYgc3RydWN0IHsKKyAgRWxmMzJfV29yZCB2ZGFfbmFtZTsKKyAgRWxmMzJfV29yZCB2ZGFfbmV4dDsKK30gRWxmMzJfVmVyZGF1eDsKKwordHlwZWRlZiBzdHJ1Y3QgeworICBFbGY2NF9IYWxmIHZkX3ZlcnNpb247CisgIEVsZjY0X0hhbGYgdmRfZmxhZ3M7CisgIEVsZjY0X0hhbGYgdmRfbmR4OworICBFbGY2NF9IYWxmIHZkX2NudDsKKyAgRWxmNjRfV29yZCB2ZF9oYXNoOworICBFbGY2NF9Xb3JkIHZkX2F1eDsKKyAgRWxmNjRfV29yZCB2ZF9uZXh0OworfSBFbGY2NF9WZXJkZWY7CisKK3R5cGVkZWYgc3RydWN0IHsKKyAgRWxmNjRfV29yZCB2ZGFfbmFtZTsKKyAgRWxmNjRfV29yZCB2ZGFfbmV4dDsKK30gRWxmNjRfVmVyZGF1eDsKKwordHlwZWRlZiBzdHJ1Y3QgeworICBFbGYzMl9IYWxmIHZuX3ZlcnNpb247CisgIEVsZjMyX0hhbGYgdm5fY250OworICBFbGYzMl9Xb3JkIHZuX2ZpbGU7CisgIEVsZjMyX1dvcmQgdm5fYXV4OworICBFbGYzMl9Xb3JkIHZuX25leHQ7Cit9IEVsZjMyX1Zlcm5lZWQ7CisKK3R5cGVkZWYgc3RydWN0IHsKKyAgRWxmMzJfV29yZCB2bmFfaGFzaDsKKyAgRWxmMzJfSGFsZiB2bmFfZmxhZ3M7CisgIEVsZjMyX0hhbGYgdm5hX290aGVyOworICBFbGYzMl9Xb3JkIHZuYV9uYW1lOworICBFbGYzMl9Xb3JkIHZuYV9uZXh0OworfSBFbGYzMl9WZXJuYXV4OworCit0eXBlZGVmIHN0cnVjdCB7CisgIEVsZjY0X0hhbGYgdm5fdmVyc2lvbjsKKyAgRWxmNjRfSGFsZiB2bl9jbnQ7CisgIEVsZjY0X1dvcmQgdm5fZmlsZTsKKyAgRWxmNjRfV29yZCB2bl9hdXg7CisgIEVsZjY0X1dvcmQgdm5fbmV4dDsKK30gRWxmNjRfVmVybmVlZDsKKwordHlwZWRlZiBzdHJ1Y3QgeworICBFbGY2NF9Xb3JkIHZuYV9oYXNoOworICBFbGY2NF9IYWxmIHZuYV9mbGFnczsKKyAgRWxmNjRfSGFsZiB2bmFfb3RoZXI7CisgIEVsZjY0X1dvcmQgdm5hX25hbWU7CisgIEVsZjY0X1dvcmQgdm5hX25leHQ7Cit9IEVsZjY0X1Zlcm5hdXg7CisKICNkZWZpbmUgREZfT1JJR0lOICAgICAweDAwMDAwMDAxCiAjZGVmaW5lIERGX1NZTUJPTElDICAgMHgwMDAwMDAwMgogI2RlZmluZSBERl9URVhUUkVMICAgIDB4MDAwMDAwMDQKICNkZWZpbmUgREZfQklORF9OT1cgICAweDAwMDAwMDA4CiAjZGVmaW5lIERGX1NUQVRJQ19UTFMgMHgwMDAwMDAxMAogCi0jZGVmaW5lIERGXzFfTk9XICAgICAgICAweDAwMDAwMDAxIC8vIFBlcmZvcm0gY29tcGxldGUgcmVsb2NhdGlvbiBwcm9jZXNzaW5nLgotI2RlZmluZSBERl8xX0dMT0JBTCAgICAgMHgwMDAwMDAwMiAvLyBpbXBsaWVzIFJUTERfR0xPQkFMCisjZGVmaW5lIERGXzFfTk9XICAgICAgICAweDAwMDAwMDAxIC8qIFBlcmZvcm0gY29tcGxldGUgcmVsb2NhdGlvbiBwcm9jZXNzaW5nLiAqLworI2RlZmluZSBERl8xX0dMT0JBTCAgICAgMHgwMDAwMDAwMiAvKiBpbXBsaWVzIFJUTERfR0xPQkFMICovCiAjZGVmaW5lIERGXzFfR1JPVVAgICAgICAweDAwMDAwMDA0Ci0jZGVmaW5lIERGXzFfTk9ERUxFVEUgICAweDAwMDAwMDA4IC8vIGltcGxpZXMgUlRMRF9OT0RFTEVURQorI2RlZmluZSBERl8xX05PREVMRVRFICAgMHgwMDAwMDAwOCAvKiBpbXBsaWVzIFJUTERfTk9ERUxFVEUgKi8KICNkZWZpbmUgREZfMV9MT0FERkxUUiAgIDB4MDAwMDAwMTAKICNkZWZpbmUgREZfMV9JTklURklSU1QgIDB4MDAwMDAwMjAKLSNkZWZpbmUgREZfMV9OT09QRU4gICAgIDB4MDAwMDAwNDAgLy8gT2JqZWN0IGNhbiBub3QgYmUgdXNlZCB3aXRoIGRsb3BlbigzKQorI2RlZmluZSBERl8xX05PT1BFTiAgICAgMHgwMDAwMDA0MCAvKiBPYmplY3QgY2FuIG5vdCBiZSB1c2VkIHdpdGggZGxvcGVuKDMpICovCiAjZGVmaW5lIERGXzFfT1JJR0lOICAgICAweDAwMDAwMDgwCiAjZGVmaW5lIERGXzFfRElSRUNUICAgICAweDAwMDAwMTAwCiAjZGVmaW5lIERGXzFfVFJBTlMgICAgICAweDAwMDAwMjAwCiAjZGVmaW5lIERGXzFfSU5URVJQT1NFICAweDAwMDAwNDAwCiAjZGVmaW5lIERGXzFfTk9ERUZMSUIgICAweDAwMDAwODAwCi0jZGVmaW5lIERGXzFfTk9EVU1QICAgICAweDAwMDAxMDAwIC8vIE9iamVjdCBjYW5ub3QgYmUgZHVtcGVkIHdpdGggZGxkdW1wKDMpCisjZGVmaW5lIERGXzFfTk9EVU1QICAgICAweDAwMDAxMDAwIC8qIE9iamVjdCBjYW5ub3QgYmUgZHVtcGVkIHdpdGggZGxkdW1wKDMpICovCiAjZGVmaW5lIERGXzFfQ09ORkFMVCAgICAweDAwMDAyMDAwCiAjZGVmaW5lIERGXzFfRU5ERklMVEVFICAweDAwMDA0MDAwCiAjZGVmaW5lIERGXzFfRElTUFJFTERORSAweDAwMDA4MDAwCiAjZGVmaW5lIERGXzFfRElTUFJFTFBORCAweDAwMDEwMDAwCiAjZGVmaW5lIERGXzFfTk9ESVJFQ1QgICAweDAwMDIwMDAwCi0jZGVmaW5lIERGXzFfSUdOTVVMREVGICAweDAwMDQwMDAwIC8vIEludGVybmFsIHVzZQotI2RlZmluZSBERl8xX05PS1NZTVMgICAgMHgwMDA4MDAwMCAvLyBJbnRlcm5hbCB1c2UKLSNkZWZpbmUgREZfMV9OT0hEUiAgICAgIDB4MDAxMDAwMDAgLy8gSW50ZXJuYWwgdXNlCisjZGVmaW5lIERGXzFfSUdOTVVMREVGICAweDAwMDQwMDAwIC8qIEludGVybmFsIHVzZSAqLworI2RlZmluZSBERl8xX05PS1NZTVMgICAgMHgwMDA4MDAwMCAvKiBJbnRlcm5hbCB1c2UgKi8KKyNkZWZpbmUgREZfMV9OT0hEUiAgICAgIDB4MDAxMDAwMDAgLyogSW50ZXJuYWwgdXNlICovCiAjZGVmaW5lIERGXzFfRURJVEVEICAgICAweDAwMjAwMDAwCi0jZGVmaW5lIERGXzFfTk9SRUxPQyAgICAweDAwNDAwMDAwIC8vIEludGVybmFsIHVzZQorI2RlZmluZSBERl8xX05PUkVMT0MgICAgMHgwMDQwMDAwMCAvKiBJbnRlcm5hbCB1c2UgKi8KICNkZWZpbmUgREZfMV9TWU1JTlRQT1NFIDB4MDA4MDAwMDAKICNkZWZpbmUgREZfMV9HTE9CQVVESVQgIDB4MDEwMDAwMDAKICNkZWZpbmUgREZfMV9TSU5HTEVUT04gIDB4MDIwMDAwMDAKQEAgLTk0LDYgKzE1OSwxNiBAQAogI2RlZmluZSBEVF9QUkVJTklUX0FSUkFZIDMyCiAjZGVmaW5lIERUX1BSRUlOSVRfQVJSQVlTWiAzMwogCisvKiBBbmRyb2lkIGNvbXByZXNzZWQgcmVsL3JlbGEgc2VjdGlvbnMgKi8KKyNkZWZpbmUgRFRfQU5EUk9JRF9SRUwgKERUX0xPT1MgKyAyKQorI2RlZmluZSBEVF9BTkRST0lEX1JFTFNaIChEVF9MT09TICsgMykKKworI2RlZmluZSBEVF9BTkRST0lEX1JFTEEgKERUX0xPT1MgKyA0KQorI2RlZmluZSBEVF9BTkRST0lEX1JFTEFTWiAoRFRfTE9PUyArIDUpCisKKy8qIGdudSBoYXNoIGVudHJ5ICovCisjZGVmaW5lIERUX0dOVV9IQVNIIDB4NmZmZmZlZjUKKwogI2RlZmluZSBFTEZPU0FCSV9TWVNWIDAgLyogU3lub255bSBmb3IgRUxGT1NBQklfTk9ORSB1c2VkIGJ5IHZhbGdyaW5kLiAqLwogCiAjZGVmaW5lIFBUX0dOVV9SRUxSTyAweDY0NzRlNTUyCkBAIC0xMDMsMTAgKzE3OCwyNiBAQAogI2RlZmluZSBTVEJfTE9QUk9DICAgIDEzCiAjZGVmaW5lIFNUQl9ISVBST0MgICAgMTUKIAorI2RlZmluZSBTSFRfTE9PUyAgICAweDYwMDAwMDAwCisjZGVmaW5lIFNIVF9ISU9TICAgIDB4NmZmZmZmZmYKKwogI2RlZmluZSBTVFRfR05VX0lGVU5DIDEwCiAjZGVmaW5lIFNUVF9MT09TICAgICAgMTAKICNkZWZpbmUgU1RUX0hJT1MgICAgICAxMgogI2RlZmluZSBTVFRfTE9QUk9DICAgIDEzCiAjZGVmaW5lIFNUVF9ISVBST0MgICAgMTUKIAorLyogVGhlIGtlcm5lbCB1c2VzIE5UX1BSRlBSRUcgYnV0IGdsaWJjIGFsc28gb2ZmZXJzIE5UX0ZQUkVHU0VUICovCisjZGVmaW5lIE5UX0ZQUkVHU0VUIE5UX1BSRlBSRUcKKworI2RlZmluZSBFTEZfTk9URV9HTlUgIkdOVSIKKworI2RlZmluZSBOVF9HTlVfQlVJTERfSUQgMworCisjZGVmaW5lIFZFUl9GTEdfQkFTRSAweDEKKyNkZWZpbmUgVkVSX0ZMR19XRUFLIDB4MgorCisjZGVmaW5lIFZFUl9ORFhfTE9DQUwgIDAKKyNkZWZpbmUgVkVSX05EWF9HTE9CQUwgMQorCiAjZW5kaWYgLyogX0VMRl9IICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvZXJybm8uaCBiL2xpYmMvaW5jbHVkZS9lcnJuby5oCmluZGV4IDFhMzZiN2EuLjgyZjRiNDIgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9lcnJuby5oCisrKyBiL2xpYmMvaW5jbHVkZS9lcnJuby5oCkBAIC00Niw2ICs0NiwxMCBAQAogLyogYSBtYWNybyBleHBhbmRpbmcgdG8gdGhlIGVycm5vIGwtdmFsdWUgKi8KICNkZWZpbmUgIGVycm5vICAgKCpfX2Vycm5vKCkpCiAKKyNpZiBfX0FORFJPSURfQVBJX18gPCAyMQorI2luY2x1ZGUgPGFuZHJvaWQvbGVnYWN5X2Vycm5vX2lubGluZXMuaD4KKyNlbmRpZgorCiBfX0VORF9ERUNMUwogCiAjZW5kaWYgLyogX0VSUk5PX0ggKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9lcnJvci5oIGIvbGliYy9pbmNsdWRlL2Vycm9yLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGQxMjg4NAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvaW5jbHVkZS9lcnJvci5oCkBAIC0wLDAgKzEsNDUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfRVJST1JfSAorI2RlZmluZSBfRVJST1JfSCAxCisKKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKworX19CRUdJTl9ERUNMUworCit2b2lkIGVycm9yKGludCwgaW50LCBjb25zdCBjaGFyKiwgLi4uKSBfX3ByaW50Zmxpa2UoMywgNCk7Cit2b2lkIGVycm9yX2F0X2xpbmUoaW50LCBpbnQsIGNvbnN0IGNoYXIqLCB1bnNpZ25lZCBpbnQsIGNvbnN0IGNoYXIqLCAuLi4pIF9fcHJpbnRmbGlrZSg1LCA2KTsKKworZXh0ZXJuIHZvaWQgKCplcnJvcl9wcmludF9wcm9nbmFtZSkodm9pZCk7CitleHRlcm4gdW5zaWduZWQgaW50IGVycm9yX21lc3NhZ2VfY291bnQ7CitleHRlcm4gaW50IGVycm9yX29uZV9wZXJfbGluZTsKKworX19FTkRfREVDTFMKKworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvZmNudGwuaCBiL2xpYmMvaW5jbHVkZS9mY250bC5oCmluZGV4IDc5NGU2MmMuLjBmMDE2ZDcgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9mY250bC5oCisrKyBiL2xpYmMvaW5jbHVkZS9mY250bC5oCkBAIC0zMywyNiArMzMsMjAgQEAKICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KICNpbmNsdWRlIDxsaW51eC9mYWR2aXNlLmg+CiAjaW5jbHVkZSA8bGludXgvZmNudGwuaD4KKyNpbmNsdWRlIDxsaW51eC9zdGF0Lmg+CiAjaW5jbHVkZSA8bGludXgvdWlvLmg+Ci0jaW5jbHVkZSA8dW5pc3RkLmg+ICAvKiB0aGlzIGlzIG5vdCByZXF1aXJlZCwgYnV0IG1ha2VzIGNsaWVudCBjb2RlIG11Y2ggaGFwcGllciAqLwogCiBfX0JFR0lOX0RFQ0xTCiAKICNpZmRlZiBfX0xQNjRfXwotLyogTFA2NCBrZXJuZWxzIGRvbid0IGhhdmUgZmxvY2s2NCBiZWNhdXNlIHRoZWlyIGZsb2NrIGlzIDY0LWJpdC4gKi8KLXN0cnVjdCBmbG9jazY0IHsKLSAgc2hvcnQgbF90eXBlOwotICBzaG9ydCBsX3doZW5jZTsKLSAgb2ZmNjRfdCBsX3N0YXJ0OwotICBvZmY2NF90IGxfbGVuOwotICBwaWRfdCBsX3BpZDsKLX07CisvKiBMUDY0IGtlcm5lbHMgZG9uJ3QgaGF2ZSBGXyo2NCBkZWZpbmVzIGJlY2F1c2UgdGhlaXIgZmxvY2sgaXMgNjQtYml0LiAqLwogI2RlZmluZSBGX0dFVExLNjQgIEZfR0VUTEsKICNkZWZpbmUgRl9TRVRMSzY0ICBGX1NFVExLCiAjZGVmaW5lIEZfU0VUTEtXNjQgRl9TRVRMS1cKICNlbmRpZgogCiAjZGVmaW5lIE9fQVNZTkMgRkFTWU5DCisjZGVmaW5lIE9fUlNZTkMgT19TWU5DCiAKICNkZWZpbmUgU1BMSUNFX0ZfTU9WRSAxCiAjZGVmaW5lIFNQTElDRV9GX05PTkJMT0NLIDIKQEAgLTY1LDIyICs1OSwyOSBAQAogCiBleHRlcm4gaW50IGNyZWF0KGNvbnN0IGNoYXIqLCBtb2RlX3QpOwogZXh0ZXJuIGludCBjcmVhdDY0KGNvbnN0IGNoYXIqLCBtb2RlX3QpOwotZXh0ZXJuIGludCBmYWxsb2NhdGU2NChpbnQsIGludCwgb2ZmNjRfdCwgb2ZmNjRfdCk7Ci1leHRlcm4gaW50IGZhbGxvY2F0ZShpbnQsIGludCwgb2ZmX3QsIG9mZl90KTsKIGV4dGVybiBpbnQgZmNudGwoaW50LCBpbnQsIC4uLik7CiBleHRlcm4gaW50IG9wZW5hdChpbnQsIGNvbnN0IGNoYXIqLCBpbnQsIC4uLik7CiBleHRlcm4gaW50IG9wZW5hdDY0KGludCwgY29uc3QgY2hhciosIGludCwgLi4uKTsKIGV4dGVybiBpbnQgb3Blbihjb25zdCBjaGFyKiwgaW50LCAuLi4pOwogZXh0ZXJuIGludCBvcGVuNjQoY29uc3QgY2hhciosIGludCwgLi4uKTsKLWV4dGVybiBpbnQgcG9zaXhfZmFkdmlzZTY0KGludCwgb2ZmNjRfdCwgb2ZmNjRfdCwgaW50KTsKLWV4dGVybiBpbnQgcG9zaXhfZmFkdmlzZShpbnQsIG9mZl90LCBvZmZfdCwgaW50KTsKLWV4dGVybiBpbnQgcG9zaXhfZmFsbG9jYXRlNjQoaW50LCBvZmY2NF90LCBvZmY2NF90KTsKLWV4dGVybiBpbnQgcG9zaXhfZmFsbG9jYXRlKGludCwgb2ZmX3QsIG9mZl90KTsKIGV4dGVybiBzc2l6ZV90IHNwbGljZShpbnQsIG9mZjY0X3QqLCBpbnQsIG9mZjY0X3QqLCBzaXplX3QsIHVuc2lnbmVkIGludCk7CiBleHRlcm4gc3NpemVfdCB0ZWUoaW50LCBpbnQsIHNpemVfdCwgdW5zaWduZWQgaW50KTsKIGV4dGVybiBpbnQgdW5saW5rYXQoaW50LCBjb25zdCBjaGFyKiwgaW50KTsKIGV4dGVybiBzc2l6ZV90IHZtc3BsaWNlKGludCwgY29uc3Qgc3RydWN0IGlvdmVjKiwgc2l6ZV90LCB1bnNpZ25lZCBpbnQpOwogCisjaWYgZGVmaW5lZChfX1VTRV9GSUxFX09GRlNFVDY0KQorZXh0ZXJuIGludCBmYWxsb2NhdGUoaW50LCBpbnQsIG9mZl90LCBvZmZfdCkgX19SRU5BTUUoZmFsbG9jYXRlNjQpOworZXh0ZXJuIGludCBwb3NpeF9mYWR2aXNlKGludCwgb2ZmX3QsIG9mZl90LCBpbnQpIF9fUkVOQU1FKHBvc2l4X2ZhZHZpc2U2NCk7CitleHRlcm4gaW50IHBvc2l4X2ZhbGxvY2F0ZShpbnQsIG9mZl90LCBvZmZfdCkgX19SRU5BTUUocG9zaXhfZmFsbG9jYXRlKTsKKyNlbHNlCitleHRlcm4gaW50IGZhbGxvY2F0ZShpbnQsIGludCwgb2ZmX3QsIG9mZl90KTsKK2V4dGVybiBpbnQgcG9zaXhfZmFkdmlzZShpbnQsIG9mZl90LCBvZmZfdCwgaW50KTsKK2V4dGVybiBpbnQgcG9zaXhfZmFsbG9jYXRlKGludCwgb2ZmX3QsIG9mZl90KTsKKyNlbmRpZgorZXh0ZXJuIGludCBmYWxsb2NhdGU2NChpbnQsIGludCwgb2ZmNjRfdCwgb2ZmNjRfdCk7CitleHRlcm4gaW50IHBvc2l4X2ZhZHZpc2U2NChpbnQsIG9mZjY0X3QsIG9mZjY0X3QsIGludCk7CitleHRlcm4gaW50IHBvc2l4X2ZhbGxvY2F0ZTY0KGludCwgb2ZmNjRfdCwgb2ZmNjRfdCk7CisKIGV4dGVybiBpbnQgX19vcGVuXzIoY29uc3QgY2hhciosIGludCk7CiBleHRlcm4gaW50IF9fb3Blbl9yZWFsKGNvbnN0IGNoYXIqLCBpbnQsIC4uLikgX19SRU5BTUUob3Blbik7CiBleHRlcm4gaW50IF9fb3BlbmF0XzIoaW50LCBjb25zdCBjaGFyKiwgaW50KTsKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9mZWF0dXJlcy5oIGIvbGliYy9pbmNsdWRlL2ZlYXR1cmVzLmgKaW5kZXggMzQzYzg0ZC4uYTI3OWM3ZiAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL2ZlYXR1cmVzLmgKKysrIGIvbGliYy9pbmNsdWRlL2ZlYXR1cmVzLmgKQEAgLTI1LDM0ICsyNSwxMSBAQAogICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCiAgKiBTVUNIIERBTUFHRS4KICAqLworCiAjaWZuZGVmIF9GRUFUVVJFU19IXwogI2RlZmluZSBfRkVBVFVSRVNfSF8KIAotLyogY2VydGFpbiBMaW51eC1zcGVjaWZpYyBwcm9ncmFtcyBleHBlY3QgYSA8ZmVhdHVyZXMuaD4gaGVhZGVyIGZpbGUKLSAqIHRoYXQgZGVmaW5lcyB2YXJpb3VzIGZlYXR1cmVzIG1hY3JvcwotICovCi0KLS8qIHdlIGRvIGluY2x1ZGUgYSBudW1iZXIgb2YgQlNEIGV4dGVuc2lvbnMgKi8KLSNkZWZpbmUgIF9CU0RfU09VUkNFICAxCi0KLS8qIHdlIGRvIGluY2x1ZGUgYSBudW1iZXIgb2YgR05VIGV4dGVuc2lvbnMgKi8KLSNkZWZpbmUgIF9HTlVfU09VUkNFICAxCi0KLS8qIEM5NSBzdXBwb3J0ICovCi0jdW5kZWYgX19VU0VfSVNPQzk1Ci0jaWYgZGVmaW5lZCBfX1NURENfVkVSU0lPTl9fICYmIF9fU1REQ19WRVJTSU9OX18gPj0gMTk5NDA5TAotIyBkZWZpbmUgX19VU0VfSVNPQzk1ICAgMQotI2VuZGlmCi0KLS8qIEM5OSBzdXBwb3J0ICovCi0jdW5kZWYgX19VU0VfSVNPQzk5Ci0jaWYgZGVmaW5lZCBfX1NURENfVkVSU0lPTl9fICYmIF9fU1REQ19WRVJTSU9OX18gPj0gMTk5OTAxTAotIyBkZWZpbmUgX19VU0VfSVNPQzk5ICAgMQotI2VuZGlmCi0KLS8qIFBvc2l4IHN1cHBvcnQgKi8KLSNkZWZpbmUgIF9fVVNFX1BPU0lYICAgMQotI2RlZmluZSAgX19VU0VfUE9TSVgyICAxCi0jZGVmaW5lICBfX1VTRV9YUEcgICAgIDEKKy8qIE91ciA8ZmVhdHVyZXMuaD4gbWFjcm8gZnVuIGlzIGFsbCBpbiA8c3lzL2NkZWZzLmg+LiAqLworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgogCiAjZW5kaWYgLyogX0ZFQVRVUkVTX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvZnRzLmggYi9saWJjL2luY2x1ZGUvZnRzLmgKaW5kZXggZGEyNmE4OC4uY2RlMDM0OSAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL2Z0cy5oCisrKyBiL2xpYmMvaW5jbHVkZS9mdHMuaApAQCAtMzUsNiArMzUsOCBAQAogI2lmbmRlZglfRlRTX0hfCiAjZGVmaW5lCV9GVFNfSF8KIAorI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorCiB0eXBlZGVmIHN0cnVjdCB7CiAJc3RydWN0IF9mdHNlbnQgKmZ0c19jdXI7CS8qIGN1cnJlbnQgbm9kZSAqLwogCXN0cnVjdCBfZnRzZW50ICpmdHNfY2hpbGQ7CS8qIGxpbmtlZCBsaXN0IG9mIGNoaWxkcmVuICovCkBAIC0xMTEsOCArMTEzLDYgQEAKIAljaGFyIGZ0c19uYW1lWzFdOwkJLyogZmlsZSBuYW1lICovCiB9IEZUU0VOVDsKIAotI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgotCiBfX0JFR0lOX0RFQ0xTCiBGVFNFTlQJKmZ0c19jaGlsZHJlbihGVFMgKiwgaW50KTsKIGludAkgZnRzX2Nsb3NlKEZUUyAqKTsKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9ncnAuaCBiL2xpYmMvaW5jbHVkZS9ncnAuaAppbmRleCBmYzRkNTIwLi5kZjdhNjEzIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvZ3JwLmgKKysrIGIvbGliYy9pbmNsdWRlL2dycC5oCkBAIC01NCw5ICs1NCw5IEBACiBzdHJ1Y3QgZ3JvdXAJKmdldGdyZ2lkKGdpZF90KTsKIHN0cnVjdCBncm91cAkqZ2V0Z3JuYW0oY29uc3QgY2hhciAqKTsKICNpZiBfX1BPU0lYX1ZJU0lCTEUgPj0gMjAwMTEyIHx8IF9fWFBHX1ZJU0lCTEUKLXN0cnVjdCBncm91cAkqZ2V0Z3JlbnQodm9pZCk7Ci12b2lkCQkgc2V0Z3JlbnQodm9pZCk7Ci12b2lkCQkgZW5kZ3JlbnQodm9pZCk7CitzdHJ1Y3QgZ3JvdXAJKmdldGdyZW50KHZvaWQpICBfX2F0dHJpYnV0ZV9fKChkZXByZWNhdGVkKCJnZXRncmVudCBpcyBtZWFuaW5nbGVzcyBvbiBBbmRyb2lkIikpKTsKK3ZvaWQgc2V0Z3JlbnQodm9pZCkgX19hdHRyaWJ1dGVfXygoZGVwcmVjYXRlZCgic2V0Z3JlbnQgaXMgbWVhbmluZ2xlc3Mgb24gQW5kcm9pZCIpKSk7Cit2b2lkIGVuZGdyZW50KHZvaWQpIF9fYXR0cmlidXRlX18oKGRlcHJlY2F0ZWQoImVuZGdyZW50IGlzIG1lYW5pbmdsZXNzIG9uIEFuZHJvaWQiKSkpOwogaW50CQkgZ2V0Z3JnaWRfcihnaWRfdCwgc3RydWN0IGdyb3VwICosIGNoYXIgKiwKIAkJICAgIHNpemVfdCwgc3RydWN0IGdyb3VwICoqKTsKIGludAkJIGdldGdybmFtX3IoY29uc3QgY2hhciAqLCBzdHJ1Y3QgZ3JvdXAgKiwgY2hhciAqLApkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL2xpYmdlbi5oIGIvbGliYy9pbmNsdWRlL2xpYmdlbi5oCmluZGV4IDlkY2VjNzUuLmU4OTMyOGUgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9saWJnZW4uaAorKysgYi9saWJjL2luY2x1ZGUvbGliZ2VuLmgKQEAgLTI1LDYgKzI1LDcgQEAKICAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgogICogU1VDSCBEQU1BR0UuCiAgKi8KKwogI2lmbmRlZiBfTElCR0VOX0gKICNkZWZpbmUgX0xJQkdFTl9ICiAKQEAgLTMzLDggKzM0LDE4IEBACiAKIF9fQkVHSU5fREVDTFMKIAotLyogT24gQW5kcm9pZCB0aGVzZSBkb24ndCBtb2RpZnkgdGhlaXIgaW5wdXQsIGFuZCB1c2UgdGhyZWFkLWxvY2FsIHN0b3JhZ2UgZm9yIHRoZWlyIHJlc3VsdHMuICovCisjaWYgIWRlZmluZWQoX19iaW9uaWNfdXNpbmdfZ251X2Jhc2VuYW1lKQorLyoKKyAqIDxzdHJpbmcuaD4gZ2V0cyB5b3UgdGhlIEdOVSBiYXNlbmFtZS4KKyAqIDxsaWJnZW4uaD4gdGhlIFBPU0lYIG9uZS4KKyAqIE5vdGUgdGhhdCBvdXIgIlBPU0lYIiBvbmUgaGFzIHRoZSB3cm9uZyBhcmd1bWVudCBjdi1xdWFsaWZpZXJzLCBidXQgZG9lc24ndAorICogbW9kaWZ5IGl0cyBpbnB1dCBhbmQgdXNlcyB0aHJlYWQtbG9jYWwgc3RvcmFnZSBmb3IgdGhlIHJlc3VsdCBpZiBuZWNlc3NhcnkuCisgKi8KIGV4dGVybiBjaGFyKiBiYXNlbmFtZShjb25zdCBjaGFyKik7CisjZGVmaW5lIF9fYmlvbmljX3VzaW5nX3Bvc2l4X2Jhc2VuYW1lCisjZW5kaWYKKworLyogVGhpcyBoYXMgdGhlIHdyb25nIGFyZ3VtZW50IGN2LXF1YWxpZmllcnMsIGJ1dCBkb2Vzbid0IG1vZGlmeSBpdHMgaW5wdXQgYW5kIHVzZXMgdGhyZWFkLWxvY2FsIHN0b3JhZ2UgZm9yIHRoZSByZXN1bHQgaWYgbmVjZXNzYXJ5LiAqLwogZXh0ZXJuIGNoYXIqIGRpcm5hbWUoY29uc3QgY2hhciopOwogCiAjaWYgIWRlZmluZWQoX19MUDY0X18pCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvbGltaXRzLmggYi9saWJjL2luY2x1ZGUvbGltaXRzLmgKaW5kZXggZmIwOTY1Ny4uNmFlNjI5YiAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL2xpbWl0cy5oCisrKyBiL2xpYmMvaW5jbHVkZS9saW1pdHMuaApAQCAtMzcsMzkgKzM3LDYgQEAKIAogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgogCi0jaWYgX19QT1NJWF9WSVNJQkxFCi0jZGVmaW5lCV9QT1NJWF9BUkdfTUFYCQk0MDk2Ci0jZGVmaW5lCV9QT1NJWF9DSElMRF9NQVgJMjUKLSNkZWZpbmUJX1BPU0lYX0xJTktfTUFYCQk4Ci0jZGVmaW5lCV9QT1NJWF9NQVhfQ0FOT04JMjU1Ci0jZGVmaW5lCV9QT1NJWF9NQVhfSU5QVVQJMjU1Ci0jZGVmaW5lCV9QT1NJWF9OQU1FX01BWAkJMTQKLSNkZWZpbmUJX1BPU0lYX05HUk9VUFNfTUFYCTAKLSNkZWZpbmUJX1BPU0lYX09QRU5fTUFYCQkxNgotI2RlZmluZQlfUE9TSVhfUEFUSF9NQVgJCTI1NgotI2RlZmluZSBfUE9TSVhfUElQRV9CVUYJCTUxMgotI2RlZmluZQlfUE9TSVhfUkVfRFVQX01BWAkyNTUKLSNkZWZpbmUgX1BPU0lYX1NTSVpFX01BWAkzMjc2NwotI2RlZmluZSBfUE9TSVhfU1RSRUFNX01BWAk4Ci0jZGVmaW5lIF9QT1NJWF9TWU1MSU5LX01BWAkyNTUKLSNkZWZpbmUgX1BPU0lYX1NZTUxPT1BfTUFYCTgKLSNkZWZpbmUgX1BPU0lYX1RaTkFNRV9NQVgJMwotCi0jZGVmaW5lCV9QT1NJWDJfQkNfQkFTRV9NQVgJOTkKLSNkZWZpbmUJX1BPU0lYMl9CQ19ESU1fTUFYCTIwNDgKLSNkZWZpbmUJX1BPU0lYMl9CQ19TQ0FMRV9NQVgJOTkKLSNkZWZpbmUJX1BPU0lYMl9CQ19TVFJJTkdfTUFYCTEwMDAKLSNkZWZpbmUJX1BPU0lYMl9DT0xMX1dFSUdIVFNfTUFYCTIKLSNkZWZpbmUJX1BPU0lYMl9FWFBSX05FU1RfTUFYCTMyCi0jZGVmaW5lCV9QT1NJWDJfTElORV9NQVgJMjA0OAotI2RlZmluZQlfUE9TSVgyX1JFX0RVUF9NQVgJX1BPU0lYX1JFX0RVUF9NQVgKLQotI2lmIF9fUE9TSVhfVklTSUJMRSA+PSAyMDAxMTIKLSNkZWZpbmUgX1BPU0lYX1RUWV9OQU1FX01BWAk5CS8qIGluY2x1ZGVzIHRyYWlsaW5nIE5VTCAqLwotI2RlZmluZSBfUE9TSVhfTE9HSU5fTkFNRV9NQVgJOQkvKiBpbmNsdWRlcyB0cmFpbGluZyBOVUwgKi8KLSNlbmRpZiAvKiBfX1BPU0lYX1ZJU0lCTEUgPj0gMjAwMTEyICovCi0jZW5kaWYgLyogX19QT1NJWF9WSVNJQkxFICovCi0KICNpZiBfX1hQR19WSVNJQkxFCiAjZGVmaW5lIFBBU1NfTUFYCQkxMjgJLyogX1BBU1NXT1JEX0xFTiBmcm9tIDxwd2QuaD4gKi8KIApAQCAtMTI1LDQgKzkyLDEwIEBACiAvKiBnbGliYydzIFBBR0VfTUFTSyBpcyB0aGUgYml0d2lzZSBuZWdhdGlvbiBvZiBCU0QncyEgVE9ETzogcmVtb3ZlPyAqLwogI2RlZmluZSBQQUdFX01BU0sgKH4oUEFHRV9TSVpFIC0gMSkpCiAKKyNkZWZpbmUgU0VNX1ZBTFVFX01BWCAweDNmZmZmZmZmCisKKy8qIFBPU0lYIHNheXMgdGhlc2UgYmVsb25nIGluIDx1bmlzdGQuaD4gYnV0IEJTRCBoYXMgc29tZSBpbiA8bGltaXRzLmg+LiAqLworI2luY2x1ZGUgPG1hY2hpbmUvcG9zaXhfbGltaXRzLmg+CisKKyNkZWZpbmUgSE9TVF9OQU1FX01BWCBfUE9TSVhfSE9TVF9OQU1FX01BWAogI2VuZGlmIC8qICFfTElNSVRTX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaCBiL2xpYmMvaW5jbHVkZS9tYWNoaW5lL2VuZGlhbi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFjODk1MTkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2luY2x1ZGUvbWFjaGluZS9lbmRpYW4uaApAQCAtMCwwICsxLDM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgX01BQ0hJTkVfRU5ESUFOX0hfCisjZGVmaW5lIF9NQUNISU5FX0VORElBTl9IXworCisvKiBUaGlzIGZpbGUgaXMgZm9yIEJTRCBzb3VyY2UgY29tcGF0aWJpbGl0eSBvbmx5LiBVc2UgPGVuZGlhbi5oPiBvciA8c3lzL2VuZGlhbi5oPiBpbnN0ZWFkLiAqLworI2luY2x1ZGUgPHN5cy9lbmRpYW4uaD4KKworI2VuZGlmIC8qIF9NQUNISU5FX0VORElBTl9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL21hY2hpbmUvcG9zaXhfbGltaXRzLmggYi9saWJjL2luY2x1ZGUvbWFjaGluZS9wb3NpeF9saW1pdHMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ODdhZjVjCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9pbmNsdWRlL21hY2hpbmUvcG9zaXhfbGltaXRzLmgKQEAgLTAsMCArMSwxNTcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfUE9TSVhfTElNSVRTX0hfCisjZGVmaW5lIF9QT1NJWF9MSU1JVFNfSF8KKworCisvKiBBbnkgY29uc3RhbnQgdmFsdWVzIGhlcmUgb3RoZXIgdGhhbiAtMSBvciAyMDA4MDlMIGFyZSBleHBsaWNpdGx5IHNwZWNpZmllZCBieSBQT1NJWC4xLTIwMDguICovCisvKiBLZWVwIGl0IHNvcnRlZC4gKi8KKyNkZWZpbmUgX1BPU0lYX0FEVklTT1JZX0lORk8gICAgICAgIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX0FJT19MSVNUSU9fTUFYICAgICAgIDIKKyNkZWZpbmUgX1BPU0lYX0FJT19NQVggICAgICAgICAgICAgIDEKKyNkZWZpbmUgX1BPU0lYX0FSR19NQVggICAgICAgICAgICAgIDQwOTYKKyNkZWZpbmUgX1BPU0lYX0FTWU5DSFJPTk9VU19JTyAgICAgIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX0JBUlJJRVJTICAgICAgICAgICAgIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX0NISUxEX01BWCAgICAgICAgICAgIDI1CisjZGVmaW5lIF9QT1NJWF9DSE9XTl9SRVNUUklDVEVEICAgICAxICAvKiB5ZXMsIGNob3duIHJlcXVpcmVzIGFwcHJvcHJpYXRlIHByaXZpbGVnZXMgKi8KKyNkZWZpbmUgX1BPU0lYX0NMT0NLX1NFTEVDVElPTiAgICAgIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX0NQVVRJTUUgICAgICAgICAgICAgIDAgIC8qIFVzZSBzeXNjb25mIHRvIGRldGVjdCBzdXBwb3J0IGF0IHJ1bnRpbWUuICovCisjZGVmaW5lIF9QT1NJWF9ERUxBWVRJTUVSX01BWCAgICAgICAzMgorI2RlZmluZSBfUE9TSVhfRlNZTkMgICAgICAgICAgICAgICAgMjAwODA5TCAgLyogZmRhdGFzeW5jKCkgc3VwcG9ydGVkICovCisjZGVmaW5lIF9QT1NJWF9IT1NUX05BTUVfTUFYICAgICAgICAyNTUKKyNkZWZpbmUgX1BPU0lYX0lQVjYgICAgICAgICAgICAgICAgIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX0pPQl9DT05UUk9MICAgICAgICAgIDEgIC8qIGpvYiBjb250cm9sIGlzIGEgTGludXggZmVhdHVyZSAqLworI2RlZmluZSBfUE9TSVhfTElOS19NQVggICAgICAgICAgICAgOAorI2RlZmluZSBfUE9TSVhfTE9HSU5fTkFNRV9NQVggICAgICAgOSAgLyogaW5jbHVkZXMgdHJhaWxpbmcgTlVMICovCisjZGVmaW5lIF9QT1NJWF9NQVBQRURfRklMRVMgICAgICAgICAyMDA4MDlMICAvKiBtbWFwLWVkIGZpbGVzIHN1cHBvcnRlZCAqLworI2RlZmluZSBfUE9TSVhfTUFYX0NBTk9OICAgICAgICAgICAgMjU1CisjZGVmaW5lIF9QT1NJWF9NQVhfSU5QVVQgICAgICAgICAgICAyNTUKKyNkZWZpbmUgX1BPU0lYX01FTUxPQ0sgICAgICAgICAgICAgIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX01FTUxPQ0tfUkFOR0UgICAgICAgIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX01FTU9SWV9QUk9URUNUSU9OICAgIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX01FU1NBR0VfUEFTU0lORyAgICAgIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX01PTk9UT05JQ19DTE9DSyAgICAgIDAgIC8qIHRoZSBtb25vdG9uaWMgY2xvY2sgbWF5IGJlIGF2YWlsYWJsZTsgYXNrIHN5c2NvbmYgKi8KKyNkZWZpbmUgX1BPU0lYX01RX09QRU5fTUFYICAgICAgICAgIDgKKyNkZWZpbmUgX1BPU0lYX01RX1BSSU9fTUFYICAgICAgICAgIDMyCisjZGVmaW5lIF9QT1NJWF9OQU1FX01BWCAgICAgICAgICAgICAxNAorI2RlZmluZSBfUE9TSVhfTkdST1VQU19NQVggICAgICAgICAgOAorI2RlZmluZSBfUE9TSVhfTk9fVFJVTkMgICAgICAgICAgICAgMSAgLyogdmVyeSBsb25nIHBhdGhuYW1lcyBnZW5lcmF0ZSBhbiBlcnJvciAqLworI2RlZmluZSBfUE9TSVhfT1BFTl9NQVggICAgICAgICAgICAgMjAKKyNkZWZpbmUgX1BPU0lYX1BBVEhfTUFYICAgICAgICAgICAgIDI1NgorI2RlZmluZSBfUE9TSVhfUElQRV9CVUYgICAgICAgICAgICAgNTEyCisjZGVmaW5lIF9QT1NJWF9QUklPUklUWV9TQ0hFRFVMSU5HICAyMDA4MDlMICAvKiBwcmlvcml0eSBzY2hlZHVsaW5nIGlzIGEgTGludXggZmVhdHVyZSAqLworI2RlZmluZSBfUE9TSVhfUFJJT1JJVElaRURfSU8gICAgICAgLTEgIC8qIG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVhfUkFXX1NPQ0tFVFMgICAgICAgICAgMjAwODA5TAorI2RlZmluZSBfUE9TSVhfUkVBREVSX1dSSVRFUl9MT0NLUyAgMjAwODA5TAorI2RlZmluZSBfUE9TSVhfUkVBTFRJTUVfU0lHTkFMUyAgICAgMjAwODA5TAorI2RlZmluZSBfUE9TSVhfUkVHRVhQICAgICAgICAgICAgICAgMQorI2RlZmluZSBfUE9TSVhfUkVfRFVQX01BWCAgICAgICAgICAgMjU1CisjZGVmaW5lIF9QT1NJWF9TQVZFRF9JRFMgICAgICAgICAgICAxICAvKiBzYXZlZCB1c2VyIGlkcyBpcyBhIExpbnV4IGZlYXR1cmUgKi8KKyNkZWZpbmUgX1BPU0lYX1NFTUFQSE9SRVMgICAgICAgICAgIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX1NFTV9OU0VNU19NQVggICAgICAgIDI1NgorI2RlZmluZSBfUE9TSVhfU0VNX1ZBTFVFX01BWCAgICAgICAgMzI3NjcKKyNkZWZpbmUgX1BPU0lYX1NIQVJFRF9NRU1PUllfT0JKRUNUUyAgLTEgIC8qIHNobV9vcGVuKCkvc2htX3VubGluaygpIG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVhfU0hFTEwgICAgICAgICAgICAgICAgMSAgIC8qIHN5c3RlbSgpIHN1cHBvcnRlZCAqLworI2RlZmluZSBfUE9TSVhfU0lHUVVFVUVfTUFYICAgICAgICAgMzIKKyNkZWZpbmUgX1BPU0lYX1NQQVdOICAgICAgICAgICAgICAgIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1NQSU5fTE9DS1MgICAgICAgICAgIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1NQT1JBRElDX1NFUlZFUiAgICAgIC0xICAvKiBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYX1NTSVpFX01BWCAgICAgICAgICAgIDMyNzY3CisjZGVmaW5lIF9QT1NJWF9TVFJFQU1fTUFYICAgICAgICAgICA4CisjZGVmaW5lIF9QT1NJWF9TWU1MSU5LX01BWCAgICAgICAgICAyNTUKKyNkZWZpbmUgX1BPU0lYX1NZTUxPT1BfTUFYICAgICAgICAgIDgKKyNkZWZpbmUgX1BPU0lYX1NZTkNIUk9OSVpFRF9JTyAgICAgIDIwMDgwOUwgIC8qIHN5bmNocm9uaXplZCBpL28gc3VwcG9ydGVkICovCisjZGVmaW5lIF9QT1NJWF9USFJFQURTICAgICAgICAgICAgICAyMDA4MDlMICAvKiB3ZSBzdXBwb3J0IHRocmVhZHMgKi8KKyNkZWZpbmUgX1BPU0lYX1RIUkVBRF9BVFRSX1NUQUNLQUREUiAgMjAwODA5TAorI2RlZmluZSBfUE9TSVhfVEhSRUFEX0FUVFJfU1RBQ0tTSVpFICAyMDA4MDlMCisjZGVmaW5lIF9QT1NJWF9USFJFQURfQ1BVVElNRSAgICAgICAwICAvKiBVc2Ugc3lzY29uZiB0byBkZXRlY3Qgc3VwcG9ydCBhdCBydW50aW1lLiAqLworI2RlZmluZSBfUE9TSVhfVEhSRUFEX0RFU1RSVUNUT1JfSVRFUkFUSU9OUyA0CisjZGVmaW5lIF9QT1NJWF9USFJFQURfS0VZU19NQVggICAgICAxMjgKKyNkZWZpbmUgX1BPU0lYX1RIUkVBRF9QUklPUklUWV9TQ0hFRFVMSU5HIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX1RIUkVBRF9QUklPX0lOSEVSSVQgIDIwMDgwOUwgIC8qIGxpbnV4IGZlYXR1cmUgKi8KKyNkZWZpbmUgX1BPU0lYX1RIUkVBRF9QUklPX1BST1RFQ1QgIDIwMDgwOUwgIC8qIGxpbnV4IGZlYXR1cmUgKi8KKyNkZWZpbmUgX1BPU0lYX1RIUkVBRF9QUk9DRVNTX1NIQVJFRCAgLTEgIC8qIG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVhfVEhSRUFEX1JPQlVTVF9QUklPX0lOSEVSSVQgLTEgIC8qIG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVhfVEhSRUFEX1JPQlVTVF9QUklPX1BST1RFQ1QgLTEgIC8qIG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVhfVEhSRUFEX1NBRkVfRlVOQ1RJT05TIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX1RIUkVBRF9TUE9SQURJQ19TRVJWRVIgLTEgIC8qIG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVhfVEhSRUFEX1RIUkVBRFNfTUFYICAgNjQKKyNkZWZpbmUgX1BPU0lYX1RJTUVPVVRTICAgICAgICAgICAgIDIwMDgwOUwKKyNkZWZpbmUgX1BPU0lYX1RJTUVSUyAgICAgICAgICAgICAgIDIwMDgwOUwgIC8qIFBvc2l4IHRpbWVycyBhcmUgc3VwcG9ydGVkICovCisjZGVmaW5lIF9QT1NJWF9USU1FUl9NQVggICAgICAgICAgICAzMgorI2RlZmluZSBfUE9TSVhfVFJBQ0UgICAgICAgICAgICAgICAgLTEgIC8qIG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVhfVFJBQ0VfRVZFTlRfRklMVEVSICAgLTEgIC8qIG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVhfVFJBQ0VfSU5IRVJJVCAgICAgICAgLTEgIC8qIG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVhfVFJBQ0VfTE9HICAgICAgICAgICAgLTEgIC8qIG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVhfVFJBQ0VfTkFNRV9NQVggICAgICAgOAorI2RlZmluZSBfUE9TSVhfVFJBQ0VfU1lTX01BWCAgICAgICAgOAorI2RlZmluZSBfUE9TSVhfVFJBQ0VfVVNFUl9FVkVOVF9NQVggMzIKKyNkZWZpbmUgX1BPU0lYX1RUWV9OQU1FX01BWCAgICAgICAgIDkgIC8qIGluY2x1ZGVzIHRyYWlsaW5nIE5VTCAqLworI2RlZmluZSBfUE9TSVhfVFlQRURfTUVNT1JZX09CSkVDVFMgLTEgIC8qIG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVhfVFpOQU1FX01BWCAgICAgICAgICAgNgorI2RlZmluZSBfUE9TSVhfVkRJU0FCTEUgICAgICAgICAgICAgJ1wwJworCisjaWYgZGVmaW5lZChfX0xQNjRfXykKKyNkZWZpbmUgX1BPU0lYX1Y3X0lMUDMyX09GRjMyICAgICAgIC0xCisjZGVmaW5lIF9QT1NJWF9WN19JTFAzMl9PRkZCSUcgICAgICAtMQorI2RlZmluZSBfUE9TSVhfVjdfTFA2NF9PRkY2NCAgICAgICAgIDEKKyNkZWZpbmUgX1BPU0lYX1Y3X0xQQklHX09GRkJJRyAgICAgICAxCisjZWxzZQorI2RlZmluZSBfUE9TSVhfVjdfSUxQMzJfT0ZGMzIgICAgICAgIDEKKyNkZWZpbmUgX1BPU0lYX1Y3X0lMUDMyX09GRkJJRyAgICAgIC0xCisjZGVmaW5lIF9QT1NJWF9WN19MUDY0X09GRjY0ICAgICAgICAtMQorI2RlZmluZSBfUE9TSVhfVjdfTFBCSUdfT0ZGQklHICAgICAgLTEKKyNlbmRpZgorCisjZGVmaW5lIF9QT1NJWDJfQkNfQkFTRV9NQVggICAgICAgICA5OQorI2RlZmluZSBfUE9TSVgyX0JDX0RJTV9NQVggICAgICAgICAgMjA0OAorI2RlZmluZSBfUE9TSVgyX0JDX1NDQUxFX01BWCAgICAgICAgOTkKKyNkZWZpbmUgX1BPU0lYMl9CQ19TVFJJTkdfTUFYICAgICAgIDEwMDAKKyNkZWZpbmUgX1BPU0lYMl9DSEFSQ0xBU1NfTkFNRV9NQVggIDE0CisjZGVmaW5lIF9QT1NJWDJfQ0hBUl9URVJNICAgICAgICAgICAtMSAgLyogbm90IGltcGxlbWVudGVkICovCisjZGVmaW5lIF9QT1NJWDJfQ09MTF9XRUlHSFRTX01BWCAgICAyCisjZGVmaW5lIF9QT1NJWDJfQ19CSU5EICAgICAgICAgICAgICBfUE9TSVhfVkVSU0lPTgorI2RlZmluZSBfUE9TSVgyX0NfREVWICAgICAgICAgICAgICAgLTEgIC8qIGMgZGV2IHV0aWxpdGllcyBub3QgaW1wbGVtZW50ZWQgKi8KKyNkZWZpbmUgX1BPU0lYMl9FWFBSX05FU1RfTUFYICAgICAgIDMyCisjZGVmaW5lIF9QT1NJWDJfTElORV9NQVggICAgICAgICAgICAyMDQ4CisjZGVmaW5lIF9QT1NJWDJfTE9DQUxFREVGICAgICAgICAgICAtMSAgLyogbG9jYWxlZGVmIHV0aWxpdGl5IG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVgyX1JFX0RVUF9NQVggICAgICAgICAgX1BPU0lYX1JFX0RVUF9NQVgKKyNkZWZpbmUgX1BPU0lYMl9TV19ERVYgICAgICAgICAgICAgIC0xICAvKiBzb2Z0d2FyZSBkZXYgdXRpbGl0aWVzIG5vdCBpbXBsZW1lbnRlZCAqLworI2RlZmluZSBfUE9TSVgyX1VQRSAgICAgICAgICAgICAgICAgLTEgIC8qIHVzZXIgcG9ydGFiaWxpdHkgdXRpbGl0aWVzIG5vdCBpbXBsZW1lbnRlZCAqLworCisjZGVmaW5lIF9YT1BFTl9FTkhfSTE4TiAgICAgICAgICAgICAtMSAgLyogd2UgZG9uJ3Qgc3VwcG9ydCBpbnRlcm5hdGlvbmFsaXphdGlvbiBpbiB0aGUgQyBsaWJyYXJ5ICovCisjZGVmaW5lIF9YT1BFTl9DUllQVCAgICAgICAgICAgICAgICAtMSAgLyogZG9uJ3Qgc3VwcG9ydCBYL09wZW4gRW5jcnlwdGlvbiAqLworI2RlZmluZSBfWE9QRU5fSU9WX01BWCAgICAgICAgICAgICAgMTYKKyNkZWZpbmUgX1hPUEVOX0xFR0FDWSAgICAgICAgICAgICAgIC0xICAvKiBub3Qgc3VwcG9ydCBhbGwgKi8KKyNkZWZpbmUgX1hPUEVOX1JFQUxUSU1FICAgICAgICAgICAgIC0xIC8qIHdlIGRvbid0IHN1cHBvcnQgYWxsIHRoZXNlIGZ1bmN0aW9ucyAqLworI2RlZmluZSBfWE9QRU5fUkVBTFRJTUVfVEhSRUFEUyAgICAgLTEgIC8qIHNhbWUgaGVyZSAqLworI2RlZmluZSBfWE9QRU5fU0hNICAgICAgICAgICAgICAgICAgLTEKKyNkZWZpbmUgX1hPUEVOX1VOSVggICAgICAgICAgICAgICAgIDEKKworI2VuZGlmIC8qIF9QT1NJWF9MSU1JVFNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9tYWNoaW5lL3B0aHJlYWRfdHlwZXMuaCBiL2xpYmMvaW5jbHVkZS9tYWNoaW5lL3B0aHJlYWRfdHlwZXMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MDA1NDFjCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9pbmNsdWRlL21hY2hpbmUvcHRocmVhZF90eXBlcy5oCkBAIC0wLDAgKzEsNDggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMDggVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfTUFDSElORV9QVEhSRUFEX1RZUEVTX0hfCisjZGVmaW5lIF9NQUNISU5FX1BUSFJFQURfVFlQRVNfSF8KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorCit0eXBlZGVmIGxvbmcgcHRocmVhZF90OworCit0eXBlZGVmIHN0cnVjdCB7CisgIHVpbnQzMl90IGZsYWdzOworICB2b2lkKiBzdGFja19iYXNlOworICBzaXplX3Qgc3RhY2tfc2l6ZTsKKyAgc2l6ZV90IGd1YXJkX3NpemU7CisgIGludDMyX3Qgc2NoZWRfcG9saWN5OworICBpbnQzMl90IHNjaGVkX3ByaW9yaXR5OworI2lmZGVmIF9fTFA2NF9fCisgIGNoYXIgX19yZXNlcnZlZFsxNl07CisjZW5kaWYKK30gcHRocmVhZF9hdHRyX3Q7CisKKyNlbmRpZiAvKiBfTUFDSElORV9QVEhSRUFEX1RZUEVTX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvbWFjaGluZS90aW1lc3BlYy5oIGIvbGliYy9pbmNsdWRlL21hY2hpbmUvdGltZXNwZWMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMTc3OWFlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9pbmNsdWRlL21hY2hpbmUvdGltZXNwZWMuaApAQCAtMCwwICsxLDQ2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgX01BQ0hJTkVfVElNRVNQRUNfSF8KKyNkZWZpbmUgX01BQ0hJTkVfVElNRVNQRUNfSF8KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorCisvKgorICogVGhpcyBmaWxlIGlzIHVzZWQgdG8gaW5jbHVkZSB0aW1lc3BlYyBkZWZpbml0aW9uIHdpdGhvdXQgaW50cm9kdWNpbmcgdGhlIHdob2xlCisgKiA8bGludXgvdGltZS5oPiwgPHN5cy90aW1lLmg+IG9yIDx0aW1lLmg+LgorICovCisjaWZuZGVmIF9TVFJVQ1RfVElNRVNQRUMKKyNkZWZpbmUgX1NUUlVDVF9USU1FU1BFQworc3RydWN0IHRpbWVzcGVjIHsKKyAgdGltZV90IHR2X3NlYzsKKyAgbG9uZyB0dl9uc2VjOworfTsKKyNlbmRpZgorCisjZW5kaWYgLyogX01BQ0hJTkVfVElNRVNQRUNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9tYWxsb2MuaCBiL2xpYmMvaW5jbHVkZS9tYWxsb2MuaAppbmRleCBlNmVhMjc2Li5jYjFkZDNiIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvbWFsbG9jLmgKKysrIGIvbGliYy9pbmNsdWRlL21hbGxvYy5oCkBAIC0yNCw2ICsyNCw3IEBACiAgKi8KICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KICNpbmNsdWRlIDxzdGRkZWYuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgogCiBfX0JFR0lOX0RFQ0xTCiAKQEAgLTUzLDYgKzU0LDI3IEBACiAKIGV4dGVybiBzdHJ1Y3QgbWFsbGluZm8gbWFsbGluZm8odm9pZCk7CiAKKy8qCisgKiBYTUwgc3RydWN0dXJlIGZvciBtYWxsb2NfaW5mbygzKSBpcyBpbiB0aGUgZm9sbG93aW5nIGZvcm1hdDoKKyAqCisgKiA8bWFsbG9jIHZlcnNpb249ImplbWFsbG9jLTEiPgorICogICA8aGVhcCBucj0iSU5UIj4KKyAqICAgICA8YWxsb2NhdGVkLWxhcmdlPklOVDwvYWxsb2NhdGVkLWxhcmdlPgorICogICAgIDxhbGxvY2F0ZWQtaHVnZT5JTlQ8L2FsbG9jYXRlZC1odWdlPgorICogICAgIDxhbGxvY2F0ZWQtYmlucz5JTlQ8L2FsbG9jYXRlZC1iaW5zPgorICogICAgIDxiaW5zLXRvdGFsPklOVDwvYmlucy10b3RhbD4KKyAqICAgICA8YmluIG5yPSJJTlQiPgorICogICAgICAgPGFsbG9jYXRlZD5JTlQ8L2FsbG9jYXRlZD4KKyAqICAgICAgIDxubWFsbG9jPklOVDwvbm1hbGxvYz4KKyAqICAgICAgIDxuZGFsbG9jPklOVDwvbmRhbGxvYz4KKyAqICAgICA8L2Jpbj4KKyAqICAgICA8IS0tIG1vcmUgYmlucyAtLT4KKyAqICAgPC9oZWFwPgorICogICA8IS0tIG1vcmUgaGVhcHMgLS0+CisgKiA8L21hbGxvYz4KKyAqLworZXh0ZXJuIGludCBtYWxsb2NfaW5mbyhpbnQsIEZJTEUgKik7CisKIF9fRU5EX0RFQ0xTCiAKICNlbmRpZiAgLyogTElCQ19JTkNMVURFX01BTExPQ19IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL25ldC9ldGhlcm5ldC5oIGIvbGliYy9pbmNsdWRlL25ldC9ldGhlcm5ldC5oCmluZGV4IGIxYjg4ZGQuLjQ3ODU4YjMgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9uZXQvZXRoZXJuZXQuaAorKysgYi9saWJjL2luY2x1ZGUvbmV0L2V0aGVybmV0LmgKQEAgLTI1LDggKzI1LDExIEBACiAgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKICAqIFNVQ0ggREFNQUdFLgogICovCisKICNpZm5kZWYgX05FVF9FVEhFUk5FVF9IXwotI2RlZmluZSBfTkVUX0lGX0VUSEVSTkVUX0hfCisjZGVmaW5lIF9ORVRfRVRIRVJORVRfSF8KKwogI2luY2x1ZGUgPGxpbnV4L2lmX2V0aGVyLmg+CiAjaW5jbHVkZSA8bmV0L2lmX2V0aGVyLmg+Ci0jZW5kaWYgLyogIV9ORVRfRVRIRVJORVRfSF8gKi8KKworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvbmV0L2lmLmggYi9saWJjL2luY2x1ZGUvbmV0L2lmLmgKaW5kZXggZjM2ZjM3ZS4uMGVmYmY3ZiAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL25ldC9pZi5oCisrKyBiL2xpYmMvaW5jbHVkZS9uZXQvaWYuaApAQCAtMjYsOSArMjYsMTMgQEAKICAqIFNVQ0ggREFNQUdFLgogICovCiAKKyNpZm5kZWYgX05FVF9JRl9IXworI2RlZmluZSBfTkVUX0lGX0hfCisKICNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CiAjaW5jbHVkZSA8bGludXgvaWYuaD4KICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKwogI2lmbmRlZiBJRl9OQU1FU0laRQogI2RlZmluZSBJRl9OQU1FU0laRSBJRk5BTVNJWgogI2VuZGlmCkBAIC00MiwzICs0Niw1IEBACiBleHRlcm4gY2hhciogICAgICAgIGlmX2luZGV4dG9uYW1lKHVuc2lnbmVkIGlmaW5kZXgsIGNoYXIgKmlmbmFtZSk7CiAKIF9fRU5EX0RFQ0xTCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL25ldC9pZl90eXBlcy5oIGIvbGliYy9pbmNsdWRlL25ldC9pZl90eXBlcy5oCmluZGV4IGYwYTA0ZjcuLmVmZjZkNTMgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9uZXQvaWZfdHlwZXMuaAorKysgYi9saWJjL2luY2x1ZGUvbmV0L2lmX3R5cGVzLmgKQEAgLTEsNCArMSw0IEBACi0vKgkkTmV0QlNEOiBpZl90eXBlcy5oLHYgMS4yNCAyMDA1LzEyLzEwIDIzOjIxOjM4IGVsYWQgRXhwICQJKi8KKy8qCSROZXRCU0Q6IGlmX3R5cGVzLmgsdiAxLjI2IDIwMTIvMDgvMDUgMjE6MjE6NDEgd2l6IEV4cCAkCSovCiAKIC8qCiAgKiBDb3B5cmlnaHQgKGMpIDE5ODksIDE5OTMsIDE5OTQKQEAgLTI0OSw3ICsyNDksNyBAQAogI2RlZmluZSBJRlRfRE9DU0NBQkxFVVBTVFJFQU1DSEFOTkVMIDB4Y2QgLyogQ0FUViBVcHN0cmVhbSBDaGFubmVsICovCiAjZGVmaW5lIElGVF9FQ09ORVQJCSAgIDB4Y2UgLyogQWNvcm4gRWNvbmV0ICovCiAjZGVmaW5lIElGVF9QT04xNTUJCSAgIDB4Y2YgLyogRlNBTiAxNTVNYiBTeW1ldHJpY2FsIFBPTiBpbnRlcmZhY2UgKi8KLSNkZWZpbmUgSUZUX1BPTjYyMgkJICAgMHhkMCAvKiBGU0FOIDYyMk1iIFN5bWV0cmljYWwgUE9OIGludGVyZmFjZSAqLyovCisjZGVmaW5lIElGVF9QT042MjIJCSAgIDB4ZDAgLyogRlNBTiA2MjJNYiBTeW1ldHJpY2FsIFBPTiBpbnRlcmZhY2UgKi8KICNkZWZpbmUgSUZUX0JSSURHRQkJICAgMHhkMSAvKiBUcmFuc3BhcmVudCBicmlkZ2UgaW50ZXJmYWNlICovCiAjZGVmaW5lIElGVF9MSU5FR1JPVVAJCSAgIDB4ZDIgLyogSW50ZXJmYWNlIGNvbW1vbiB0byBtdWx0aXBsZSBsaW5lcyAqLwogI2RlZmluZSBJRlRfVk9JQ0VFTUZHRAkJICAgMHhkMyAvKiB2b2ljZSBFJk0gRmVhdHVyZSBHcm91cCBEICovCkBAIC0yNjMsNSArMjYzLDYgQEAKICNkZWZpbmUgSUZUX0ZBSVRICTB4ZjIKICNkZWZpbmUgSUZUX1BGTE9HCTB4ZjUJCS8qIFBhY2tldCBmaWx0ZXIgbG9nZ2luZyAqLwogI2RlZmluZSBJRlRfUEZTWU5DCTB4ZjYJCS8qIFBhY2tldCBmaWx0ZXIgc3RhdGUgc3luY2luZyAqLworI2RlZmluZSBJRlRfQ0FSUAkweGY4CQkvKiBDb21tb24gQWRkcmVzcyBSZWR1bmRhbmN5IFByb3RvY29sICovCiAKICNlbmRpZiAvKiAhX05FVF9JRl9UWVBFU19IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL25ldC9yb3V0ZS5oIGIvbGliYy9pbmNsdWRlL25ldC9yb3V0ZS5oCmluZGV4IGE2MGRmMjQuLjMyNmZiZTcgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9uZXQvcm91dGUuaAorKysgYi9saWJjL2luY2x1ZGUvbmV0L3JvdXRlLmgKQEAgLTEgKzEsMzcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfTkVUX1JPVVRFX0hfCisjZGVmaW5lIF9ORVRfUk9VVEVfSF8KKworI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KICNpbmNsdWRlIDxsaW51eC9yb3V0ZS5oPgorI2luY2x1ZGUgPGxpbnV4L2luNi5oPgorI2luY2x1ZGUgPGxpbnV4L2lwdjZfcm91dGUuaD4KKworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvbmV0ZGIuaCBiL2xpYmMvaW5jbHVkZS9uZXRkYi5oCmluZGV4IDUyN2Q1YzEuLjNiYjk3M2MgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9uZXRkYi5oCisrKyBiL2xpYmMvaW5jbHVkZS9uZXRkYi5oCkBAIC03Myw5ICs3Myw2IEBACiAjZGVmaW5lCV9QQVRIX1BST1RPQ09MUwkiL3N5c3RlbS9ldGMvcHJvdG9jb2xzIgogI2RlZmluZQlfUEFUSF9TRVJWSUNFUwkiL3N5c3RlbS9ldGMvc2VydmljZXMiCiAKLSNkZWZpbmUgIE1BWEhPU1ROQU1FTEVOICAyNTYKLQotCiAvKgogICogU3RydWN0dXJlcyByZXR1cm5lZCBieSBuZXR3b3JrIGRhdGEgYmFzZSBsaWJyYXJ5LiAgQWxsIGFkZHJlc3NlcyBhcmUKICAqIHN1cHBsaWVkIGluIGhvc3Qgb3JkZXIsIGFuZCByZXR1cm5lZCBpbiBuZXR3b3JrIG9yZGVyIChzdWl0YWJsZSBmb3IKQEAgLTIwOSw3ICsyMDYsNyBAQAogdm9pZCBlbmRzZXJ2ZW50KHZvaWQpOwogdm9pZCBmcmVlaG9zdGVudChzdHJ1Y3QgaG9zdGVudCAqKTsKIHN0cnVjdCBob3N0ZW50CSpnZXRob3N0YnlhZGRyKGNvbnN0IHZvaWQgKiwgc29ja2xlbl90LCBpbnQpOwotaW50IGdldGhvc3RieWFkZHJfcihjb25zdCB2b2lkICosIGludCwgaW50LCBzdHJ1Y3QgaG9zdGVudCAqLCBjaGFyICosIHNpemVfdCwgc3RydWN0IGhvc3RlbnQgKiosIGludCAqKTsKK2ludCBnZXRob3N0YnlhZGRyX3IoY29uc3Qgdm9pZCAqLCBzb2NrbGVuX3QsIGludCwgc3RydWN0IGhvc3RlbnQgKiwgY2hhciAqLCBzaXplX3QsIHN0cnVjdCBob3N0ZW50ICoqLCBpbnQgKik7CiBzdHJ1Y3QgaG9zdGVudAkqZ2V0aG9zdGJ5bmFtZShjb25zdCBjaGFyICopOwogaW50IGdldGhvc3RieW5hbWVfcihjb25zdCBjaGFyICosIHN0cnVjdCBob3N0ZW50ICosIGNoYXIgKiwgc2l6ZV90LCBzdHJ1Y3QgaG9zdGVudCAqKiwgaW50ICopOwogc3RydWN0IGhvc3RlbnQJKmdldGhvc3RieW5hbWUyKGNvbnN0IGNoYXIgKiwgaW50KTsKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9wYXRoY29uZi5oIGIvbGliYy9pbmNsdWRlL3BhdGhjb25mLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk0Zjk3ODcuLjAwMDAwMDAKLS0tIGEvbGliYy9pbmNsdWRlL3BhdGhjb25mLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2NCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA4IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotICogICAgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKLSAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwotICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKLSAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKLSAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCi0gKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKLSAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAotICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAotICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCi0gKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0jaWZuZGVmIF9QQVRIQ09ORl9IXwotI2RlZmluZSBfUEFUSENPTkZfSF8KLQotI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgotCi1fX0JFR0lOX0RFQ0xTCi0KLS8qIGNvbnN0YW50cyB0byBiZSB1c2VkIGZvciB0aGUgJ25hbWUnIHBhcmVtZXRlciBvZiBwYXRoY29uZi9mcGF0aGNvbmYgKi8KLQotI2RlZmluZSAgX1BDX0ZJTEVTSVpFQklUUyAgICAgICAweDAwMDAKLSNkZWZpbmUgIF9QQ19MSU5LX01BWCAgICAgICAgICAgMHgwMDAxCi0jZGVmaW5lICBfUENfTUFYX0NBTk9OICAgICAgICAgIDB4MDAwMgotI2RlZmluZSAgX1BDX01BWF9JTlBVVCAgICAgICAgICAweDAwMDMKLSNkZWZpbmUgIF9QQ19OQU1FX01BWCAgICAgICAgICAgMHgwMDA0Ci0jZGVmaW5lICBfUENfUEFUSF9NQVggICAgICAgICAgIDB4MDAwNQotI2RlZmluZSAgX1BDX1BJUEVfQlVGICAgICAgICAgICAweDAwMDYKLSNkZWZpbmUgIF9QQ18yX1NZTUxJTktTICAgICAgICAgMHgwMDA3Ci0jZGVmaW5lICBfUENfQUxMT0NfU0laRV9NSU4gICAgIDB4MDAwOAotI2RlZmluZSAgX1BDX1JFQ19JTkNSX1hGRVJfU0laRSAweDAwMDkKLSNkZWZpbmUgIF9QQ19SRUNfTUFYX1hGRVJfU0laRSAgMHgwMDBhCi0jZGVmaW5lICBfUENfUkVDX01JTl9YRkVSX1NJWkUgIDB4MDAwYgotI2RlZmluZSAgX1BDX1JFQ19YRkVSX0FMSUdOICAgICAweDAwMGMKLSNkZWZpbmUgIF9QQ19TWU1MSU5LX01BWCAgICAgICAgMHgwMDBkCi0jZGVmaW5lICBfUENfQ0hPV05fUkVTVFJJQ1RFRCAgIDB4MDAwZQotI2RlZmluZSAgX1BDX05PX1RSVU5DICAgICAgICAgICAweDAwMGYKLSNkZWZpbmUgIF9QQ19WRElTQUJMRSAgICAgICAgICAgMHgwMDEwCi0jZGVmaW5lICBfUENfQVNZTkNfSU8gICAgICAgICAgIDB4MDAxMQotI2RlZmluZSAgX1BDX1BSSU9fSU8gICAgICAgICAgICAweDAwMTIKLSNkZWZpbmUgIF9QQ19TWU5DX0lPICAgICAgICAgICAgMHgwMDEzCi0KLWV4dGVybiBsb25nIGZwYXRoY29uZihpbnQgZmlsZGVzLCBpbnQgbmFtZSk7Ci1leHRlcm4gbG9uZyBwYXRoY29uZihjb25zdCBjaGFyICpwYXRoLCBpbnQgbmFtZSk7Ci0KLV9fRU5EX0RFQ0xTCi0KLSNlbmRpZiAvKiBfUEFUSENPTkZfSF8gKi8KLQpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3BhdGhzLmggYi9saWJjL2luY2x1ZGUvcGF0aHMuaAppbmRleCBhNzIxNjJmLi44MmMyODA0IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvcGF0aHMuaAorKysgYi9saWJjL2luY2x1ZGUvcGF0aHMuaApAQCAtMzIsNDMgKzMyLDEzIEBACiAjaWZuZGVmIF9QQVRIU19IXwogI2RlZmluZQlfUEFUSFNfSF8KIAotLyogRGVmYXVsdCBzZWFyY2ggcGF0aC4gKi8KLSNkZWZpbmUJX1BBVEhfREVGUEFUSAkiL3Vzci9iaW46L2JpbiIKLS8qIEFsbCBzdGFuZGFyZCB1dGlsaXRpZXMgcGF0aC4gKi8KLSNkZWZpbmUJX1BBVEhfU1REUEFUSCBcCi0JIi91c3IvYmluOi9iaW46L3Vzci9zYmluOi9zYmluIgotCiAjZGVmaW5lCV9QQVRIX0JTSEVMTAkiL3N5c3RlbS9iaW4vc2giCiAjZGVmaW5lCV9QQVRIX0NPTlNPTEUJIi9kZXYvY29uc29sZSIKLSNkZWZpbmUJX1BBVEhfQ1NIRUxMCSIvYmluL2NzaCIKLSNkZWZpbmUJX1BBVEhfREVWREIJIi92YXIvcnVuL2Rldi5kYiIKLSNkZWZpbmUJX1BBVEhfREVWTlVMTAkiL2Rldi9udWxsIgotI2RlZmluZQlfUEFUSF9EUlVNCSIvZGV2L2RydW0iCi0jZGVmaW5lCV9QQVRIX0tMT0cJIi9wcm9jL2ttc2ciCi0jZGVmaW5lCV9QQVRIX0tNRU0JIi9kZXYva21lbSIKLSNkZWZpbmUJX1BBVEhfTEFTVExPRwkiL3Zhci9sb2cvbGFzdGxvZyIKLSNkZWZpbmUJX1BBVEhfTUFJTERJUgkiL3Zhci9tYWlsIgotI2RlZmluZQlfUEFUSF9NQU4JIi91c3Ivc2hhcmUvbWFuIgotI2RlZmluZQlfUEFUSF9NRU0JIi9kZXYvbWVtIgotI2RlZmluZQlfUEFUSF9NTlRUQUIJIi9ldGMvZnN0YWIiCi0jZGVmaW5lCV9QQVRIX01PVU5URUQJIi9ldGMvbXRhYiIKLSNkZWZpbmUJX1BBVEhfTk9MT0dJTgkiL2V0Yy9ub2xvZ2luIgotI2RlZmluZQlfUEFUSF9QUkVTRVJWRQkiL3Zhci9saWIiCi0jZGVmaW5lCV9QQVRIX1JXSE9ESVIJIi92YXIvc3Bvb2wvcndobyIKLSNkZWZpbmUJX1BBVEhfU0VORE1BSUwJIi91c3Ivc2Jpbi9zZW5kbWFpbCIKLSNkZWZpbmUJX1BBVEhfU0hBRE9XCSIvZXRjL3NoYWRvdyIKLSNkZWZpbmUJX1BBVEhfU0hFTExTCSIvZXRjL3NoZWxscyIKLSNkZWZpbmUJX1BBVEhfVFRZCSIvZGV2L3R0eSIKLSNkZWZpbmUJX1BBVEhfVU5JWAkiL2Jvb3Qvdm1saW51eCIKLSNkZWZpbmUgX1BBVEhfVVRNUAkiL3Zhci9ydW4vdXRtcCIKLSNkZWZpbmUJX1BBVEhfVkkJIi9iaW4vdmkiCi0jZGVmaW5lIF9QQVRIX1dUTVAJIi92YXIvbG9nL3d0bXAiCi0KLS8qIFByb3ZpZGUgdHJhaWxpbmcgc2xhc2gsIHNpbmNlIG1vc3RseSB1c2VkIGZvciBidWlsZGluZyBwYXRobmFtZXMuICovCisjZGVmaW5lCV9QQVRIX0RFRlBBVEgJIi9zYmluOi92ZW5kb3IvYmluOi9zeXN0ZW0vc2Jpbjovc3lzdGVtL2Jpbjovc3lzdGVtL3hiaW4iCiAjZGVmaW5lCV9QQVRIX0RFVgkiL2Rldi8iCi0jZGVmaW5lCV9QQVRIX1RNUAkiL3RtcC8iCi0jZGVmaW5lCV9QQVRIX1ZBUkRCCSIvdmFyL2RiLyIKLSNkZWZpbmUJX1BBVEhfVkFSUlVOCSIvdmFyL3J1bi8iCi0jZGVmaW5lCV9QQVRIX1ZBUlRNUAkiL3Zhci90bXAvIgorI2RlZmluZQlfUEFUSF9ERVZOVUxMCSIvZGV2L251bGwiCisjZGVmaW5lCV9QQVRIX0tMT0cJIi9wcm9jL2ttc2ciCisjZGVmaW5lCV9QQVRIX01PVU5URUQJIi9wcm9jL21vdW50cyIKKyNkZWZpbmUJX1BBVEhfVFRZCSIvZGV2L3R0eSIKIAogI2VuZGlmIC8qICFfUEFUSFNfSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9wb2xsLmggYi9saWJjL2luY2x1ZGUvcG9sbC5oCmluZGV4IDAxOTljYWIuLjdjMTZkODEgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9wb2xsLmgKKysrIGIvbGliYy9pbmNsdWRlL3BvbGwuaApAQCAtMzgsOCArMzgsNTIgQEAKIAogdHlwZWRlZiB1bnNpZ25lZCBpbnQgbmZkc190OwogCi1leHRlcm4gaW50IHBvbGwoc3RydWN0IHBvbGxmZCosIG5mZHNfdCwgaW50KTsKLWV4dGVybiBpbnQgcHBvbGwoc3RydWN0IHBvbGxmZCosIG5mZHNfdCwgY29uc3Qgc3RydWN0IHRpbWVzcGVjKiwgY29uc3Qgc2lnc2V0X3QqKTsKK2ludCBwb2xsKHN0cnVjdCBwb2xsZmQqLCBuZmRzX3QsIGludCk7CitpbnQgcHBvbGwoc3RydWN0IHBvbGxmZCosIG5mZHNfdCwgY29uc3Qgc3RydWN0IHRpbWVzcGVjKiwgY29uc3Qgc2lnc2V0X3QqKTsKKworaW50IF9fcG9sbF9jaGsoc3RydWN0IHBvbGxmZCosIG5mZHNfdCwgaW50LCBzaXplX3QpOworaW50IF9fcG9sbF9yZWFsKHN0cnVjdCBwb2xsZmQqLCBuZmRzX3QsIGludCkgX19SRU5BTUUocG9sbCk7CitfX2Vycm9yZGVjbChfX3BvbGxfdG9vX3NtYWxsX2Vycm9yLCAicG9sbDogcG9sbGZkIGFycmF5IHNtYWxsZXIgdGhhbiBmZCBjb3VudCIpOworCitpbnQgX19wcG9sbF9jaGsoc3RydWN0IHBvbGxmZCosIG5mZHNfdCwgY29uc3Qgc3RydWN0IHRpbWVzcGVjKiwgY29uc3Qgc2lnc2V0X3QqLCBzaXplX3QpOworaW50IF9fcHBvbGxfcmVhbChzdHJ1Y3QgcG9sbGZkKiwgbmZkc190LCBjb25zdCBzdHJ1Y3QgdGltZXNwZWMqLCBjb25zdCBzaWdzZXRfdCopIF9fUkVOQU1FKHBwb2xsKTsKK19fZXJyb3JkZWNsKF9fcHBvbGxfdG9vX3NtYWxsX2Vycm9yLCAicHBvbGw6IHBvbGxmZCBhcnJheSBzbWFsbGVyIHRoYW4gZmQgY291bnQiKTsKKworI2lmIGRlZmluZWQoX19CSU9OSUNfRk9SVElGWSkKKworX19CSU9OSUNfRk9SVElGWV9JTkxJTkUKK2ludCBwb2xsKHN0cnVjdCBwb2xsZmQqIGZkcywgbmZkc190IGZkX2NvdW50LCBpbnQgdGltZW91dCkgeworI2lmIGRlZmluZWQoX19jbGFuZ19fKQorICByZXR1cm4gX19wb2xsX2NoayhmZHMsIGZkX2NvdW50LCB0aW1lb3V0LCBfX2JvcyhmZHMpKTsKKyNlbHNlCisgIGlmIChfX2JvcyhmZHMpICE9IF9fQklPTklDX0ZPUlRJRllfVU5LTk9XTl9TSVpFKSB7CisgICAgaWYgKCFfX2J1aWx0aW5fY29uc3RhbnRfcChmZF9jb3VudCkpIHsKKyAgICAgIHJldHVybiBfX3BvbGxfY2hrKGZkcywgZmRfY291bnQsIHRpbWVvdXQsIF9fYm9zKGZkcykpOworICAgIH0gZWxzZSBpZiAoX19ib3MoZmRzKSAvIHNpemVvZigqZmRzKSA8IGZkX2NvdW50KSB7CisgICAgICBfX3BvbGxfdG9vX3NtYWxsX2Vycm9yKCk7CisgICAgfQorICB9CisgIHJldHVybiBfX3BvbGxfcmVhbChmZHMsIGZkX2NvdW50LCB0aW1lb3V0KTsKKyNlbmRpZgorfQorCitfX0JJT05JQ19GT1JUSUZZX0lOTElORQoraW50IHBwb2xsKHN0cnVjdCBwb2xsZmQqIGZkcywgbmZkc190IGZkX2NvdW50LCBjb25zdCBzdHJ1Y3QgdGltZXNwZWMqIHRpbWVvdXQsIGNvbnN0IHNpZ3NldF90KiBtYXNrKSB7CisjaWYgZGVmaW5lZChfX2NsYW5nX18pCisgIHJldHVybiBfX3Bwb2xsX2NoayhmZHMsIGZkX2NvdW50LCB0aW1lb3V0LCBtYXNrLCBfX2JvcyhmZHMpKTsKKyNlbHNlCisgIGlmIChfX2JvcyhmZHMpICE9IF9fQklPTklDX0ZPUlRJRllfVU5LTk9XTl9TSVpFKSB7CisgICAgaWYgKCFfX2J1aWx0aW5fY29uc3RhbnRfcChmZF9jb3VudCkpIHsKKyAgICAgIHJldHVybiBfX3Bwb2xsX2NoayhmZHMsIGZkX2NvdW50LCB0aW1lb3V0LCBtYXNrLCBfX2JvcyhmZHMpKTsKKyAgICB9IGVsc2UgaWYgKF9fYm9zKGZkcykgLyBzaXplb2YoKmZkcykgPCBmZF9jb3VudCkgeworICAgICAgX19wcG9sbF90b29fc21hbGxfZXJyb3IoKTsKKyAgICB9CisgIH0KKyAgcmV0dXJuIF9fcHBvbGxfcmVhbChmZHMsIGZkX2NvdW50LCB0aW1lb3V0LCBtYXNrKTsKKyNlbmRpZgorfQorCisjZW5kaWYKIAogX19FTkRfREVDTFMKIApkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3B0aHJlYWQuaCBiL2xpYmMvaW5jbHVkZS9wdGhyZWFkLmgKaW5kZXggYzMyODkwYi4uMjZkNjhlNCAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3B0aHJlYWQuaAorKysgYi9saWJjL2luY2x1ZGUvcHRocmVhZC5oCkBAIC0yOSwzMiArMjksMjIgQEAKICNpZm5kZWYgX1BUSFJFQURfSF8KICNkZWZpbmUgX1BUSFJFQURfSF8KIAotI2luY2x1ZGUgPHRpbWUuaD4KLSNpbmNsdWRlIDxzaWduYWwuaD4KLSNpbmNsdWRlIDxzY2hlZC5oPgogI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPG1hY2hpbmUvcHRocmVhZF90eXBlcy5oPgorI2luY2x1ZGUgPHNjaGVkLmg+CisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+Ci0KLSNpZiBkZWZpbmVkKF9fTFA2NF9fKQotICAjZGVmaW5lIF9fUkVTRVJWRURfSU5JVElBTElaRVIgLCB7MH0KLSNlbHNlCi0gICNkZWZpbmUgX19SRVNFUlZFRF9JTklUSUFMSVpFUgotI2VuZGlmCisjaW5jbHVkZSA8dGltZS5oPgogCiB0eXBlZGVmIHN0cnVjdCB7Ci0gIGludCB2b2xhdGlsZSB2YWx1ZTsKLSNpZmRlZiBfX0xQNjRfXwotICBjaGFyIF9fcmVzZXJ2ZWRbMzZdOworI2lmIGRlZmluZWQoX19MUDY0X18pCisgIGludDMyX3QgX19wcml2YXRlWzEwXTsKKyNlbHNlCisgIGludDMyX3QgX19wcml2YXRlWzFdOwogI2VuZGlmCiB9IHB0aHJlYWRfbXV0ZXhfdDsKIAotI2RlZmluZSAgX19QVEhSRUFEX01VVEVYX0lOSVRfVkFMVUUgICAgICAgICAgICAwCi0jZGVmaW5lICBfX1BUSFJFQURfUkVDVVJTSVZFX01VVEVYX0lOSVRfVkFMVUUgIDB4NDAwMAotI2RlZmluZSAgX19QVEhSRUFEX0VSUk9SQ0hFQ0tfTVVURVhfSU5JVF9WQUxVRSAweDgwMDAKLQotI2RlZmluZSAgUFRIUkVBRF9NVVRFWF9JTklUSUFMSVpFUiAgICAgICAgICAgICB7X19QVEhSRUFEX01VVEVYX0lOSVRfVkFMVUUgX19SRVNFUlZFRF9JTklUSUFMSVpFUn0KLSNkZWZpbmUgIFBUSFJFQURfUkVDVVJTSVZFX01VVEVYX0lOSVRJQUxJWkVSICAge19fUFRIUkVBRF9SRUNVUlNJVkVfTVVURVhfSU5JVF9WQUxVRSBfX1JFU0VSVkVEX0lOSVRJQUxJWkVSfQotI2RlZmluZSAgUFRIUkVBRF9FUlJPUkNIRUNLX01VVEVYX0lOSVRJQUxJWkVSICB7X19QVEhSRUFEX0VSUk9SQ0hFQ0tfTVVURVhfSU5JVF9WQUxVRSBfX1JFU0VSVkVEX0lOSVRJQUxJWkVSfQordHlwZWRlZiBsb25nIHB0aHJlYWRfbXV0ZXhhdHRyX3Q7CiAKIGVudW0gewogICAgIFBUSFJFQURfTVVURVhfTk9STUFMID0gMCwKQEAgLTY3LDYwICs1Nyw0MiBAQAogICAgIFBUSFJFQURfTVVURVhfREVGQVVMVCA9IFBUSFJFQURfTVVURVhfTk9STUFMCiB9OwogCisjZGVmaW5lIFBUSFJFQURfTVVURVhfSU5JVElBTElaRVIgeyB7ICgoUFRIUkVBRF9NVVRFWF9OT1JNQUwgJiAzKSA8PCAxNCkgfSB9CisjZGVmaW5lIFBUSFJFQURfUkVDVVJTSVZFX01VVEVYX0lOSVRJQUxJWkVSX05QIHsgeyAoKFBUSFJFQURfTVVURVhfUkVDVVJTSVZFICYgMykgPDwgMTQpIH0gfQorI2RlZmluZSBQVEhSRUFEX0VSUk9SQ0hFQ0tfTVVURVhfSU5JVElBTElaRVJfTlAgeyB7ICgoUFRIUkVBRF9NVVRFWF9FUlJPUkNIRUNLICYgMykgPDwgMTQpIH0gfQorCiB0eXBlZGVmIHN0cnVjdCB7Ci0gIGludCB2b2xhdGlsZSB2YWx1ZTsKLSNpZmRlZiBfX0xQNjRfXwotICBjaGFyIF9fcmVzZXJ2ZWRbNDRdOworI2lmIGRlZmluZWQoX19MUDY0X18pCisgIGludDMyX3QgX19wcml2YXRlWzEyXTsKKyNlbHNlCisgIGludDMyX3QgX19wcml2YXRlWzFdOwogI2VuZGlmCiB9IHB0aHJlYWRfY29uZF90OwogCi0jZGVmaW5lIFBUSFJFQURfQ09ORF9JTklUSUFMSVpFUiAgezAgX19SRVNFUlZFRF9JTklUSUFMSVpFUn0KK3R5cGVkZWYgbG9uZyBwdGhyZWFkX2NvbmRhdHRyX3Q7CisKKyNkZWZpbmUgUFRIUkVBRF9DT05EX0lOSVRJQUxJWkVSICB7IHsgMCB9IH0KIAogdHlwZWRlZiBzdHJ1Y3QgewotICB1aW50MzJfdCBmbGFnczsKLSAgdm9pZCogc3RhY2tfYmFzZTsKLSAgc2l6ZV90IHN0YWNrX3NpemU7Ci0gIHNpemVfdCBndWFyZF9zaXplOwotICBpbnQzMl90IHNjaGVkX3BvbGljeTsKLSAgaW50MzJfdCBzY2hlZF9wcmlvcml0eTsKLSNpZmRlZiBfX0xQNjRfXwotICBjaGFyIF9fcmVzZXJ2ZWRbMTZdOworI2lmIGRlZmluZWQoX19MUDY0X18pCisgIGludDMyX3QgX19wcml2YXRlWzE0XTsKKyNlbHNlCisgIGludDMyX3QgX19wcml2YXRlWzEwXTsKICNlbmRpZgotfSBwdGhyZWFkX2F0dHJfdDsKLQotdHlwZWRlZiBsb25nIHB0aHJlYWRfbXV0ZXhhdHRyX3Q7Ci10eXBlZGVmIGxvbmcgcHRocmVhZF9jb25kYXR0cl90OworfSBwdGhyZWFkX3J3bG9ja190OwogCiB0eXBlZGVmIGxvbmcgcHRocmVhZF9yd2xvY2thdHRyX3Q7CiAKLXR5cGVkZWYgc3RydWN0IHsKLSNpZiAhZGVmaW5lZChfX0xQNjRfXykKLSAgcHRocmVhZF9tdXRleF90IF9fdW51c2VkX2xvY2s7Ci0gIHB0aHJlYWRfY29uZF90IF9fdW51c2VkX2NvbmQ7Ci0jZW5kaWYKLSAgdm9sYXRpbGUgaW50MzJfdCBzdGF0ZTsgLy8gMD11bmxvY2ssIC0xPXdyaXRlciBsb2NrLCArbj1yZWFkZXIgbG9jawotICB2b2xhdGlsZSBpbnQzMl90IHdyaXRlcl90aHJlYWRfaWQ7Ci0gIHZvbGF0aWxlIGludDMyX3QgcGVuZGluZ19yZWFkZXJzOwotICB2b2xhdGlsZSBpbnQzMl90IHBlbmRpbmdfd3JpdGVyczsKLSAgaW50MzJfdCBhdHRyOwotI2lmZGVmIF9fTFA2NF9fCi0gIGNoYXIgX19yZXNlcnZlZFszNl07Ci0jZWxzZQotICBjaGFyIF9fcmVzZXJ2ZWRbMTJdOwotI2VuZGlmCisjZGVmaW5lIFBUSFJFQURfUldMT0NLX0lOSVRJQUxJWkVSICB7IHsgMCB9IH0KIAotfSBwdGhyZWFkX3J3bG9ja190OwotCi0jaWZkZWYgX19MUDY0X18KLSAgI2RlZmluZSBQVEhSRUFEX1JXTE9DS19JTklUSUFMSVpFUiAgeyAwLCAwLCAwLCAwLCAwLCB7IDAgfSB9Ci0jZWxzZQotICAjZGVmaW5lIFBUSFJFQURfUldMT0NLX0lOSVRJQUxJWkVSICB7IFBUSFJFQURfTVVURVhfSU5JVElBTElaRVIsIFBUSFJFQURfQ09ORF9JTklUSUFMSVpFUiwgMCwgMCwgMCwgMCwgMCwgeyAwIH0gfQotI2VuZGlmCitlbnVtIHsKKyAgUFRIUkVBRF9SV0xPQ0tfUFJFRkVSX1JFQURFUl9OUCA9IDAsCisgIFBUSFJFQURfUldMT0NLX1BSRUZFUl9XUklURVJfTk9OUkVDVVJTSVZFX05QID0gMSwKK307CiAKIHR5cGVkZWYgaW50IHB0aHJlYWRfa2V5X3Q7Ci10eXBlZGVmIGxvbmcgcHRocmVhZF90OwogCi10eXBlZGVmIHZvbGF0aWxlIGludCBwdGhyZWFkX29uY2VfdDsKK3R5cGVkZWYgaW50IHB0aHJlYWRfb25jZV90OwogCiAjZGVmaW5lIFBUSFJFQURfT05DRV9JTklUIDAKIApAQCAtMTk1LDggKzE2Nyw2IEBACiBpbnQgcHRocmVhZF9rZXlfY3JlYXRlKHB0aHJlYWRfa2V5X3QqLCB2b2lkICgqKSh2b2lkKikpIF9fbm9ubnVsbCgoMSkpOwogaW50IHB0aHJlYWRfa2V5X2RlbGV0ZShwdGhyZWFkX2tleV90KTsKIAotaW50IHB0aHJlYWRfa2lsbChwdGhyZWFkX3QsIGludCk7Ci0KIGludCBwdGhyZWFkX211dGV4YXR0cl9kZXN0cm95KHB0aHJlYWRfbXV0ZXhhdHRyX3QqKSBfX25vbm51bGwoKDEpKTsKIGludCBwdGhyZWFkX211dGV4YXR0cl9nZXRwc2hhcmVkKGNvbnN0IHB0aHJlYWRfbXV0ZXhhdHRyX3QqLCBpbnQqKSBfX25vbm51bGwoKDEsIDIpKTsKIGludCBwdGhyZWFkX211dGV4YXR0cl9nZXR0eXBlKGNvbnN0IHB0aHJlYWRfbXV0ZXhhdHRyX3QqLCBpbnQqKSBfX25vbm51bGwoKDEsIDIpKTsKQEAgLTIwNiwxNyArMTc2LDE5IEBACiAKIGludCBwdGhyZWFkX211dGV4X2Rlc3Ryb3kocHRocmVhZF9tdXRleF90KikgX19ub25udWxsKCgxKSk7CiBpbnQgcHRocmVhZF9tdXRleF9pbml0KHB0aHJlYWRfbXV0ZXhfdCosIGNvbnN0IHB0aHJlYWRfbXV0ZXhhdHRyX3QqKSBfX25vbm51bGwoKDEpKTsKLWludCBwdGhyZWFkX211dGV4X2xvY2socHRocmVhZF9tdXRleF90KikgLyogX19ub25udWxsKCgxKSkgKi87CitpbnQgcHRocmVhZF9tdXRleF9sb2NrKHB0aHJlYWRfbXV0ZXhfdCopIF9fbm9ubnVsbCgoMSkpOwogaW50IHB0aHJlYWRfbXV0ZXhfdGltZWRsb2NrKHB0aHJlYWRfbXV0ZXhfdCosIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyopIF9fbm9ubnVsbCgoMSwgMikpOwogaW50IHB0aHJlYWRfbXV0ZXhfdHJ5bG9jayhwdGhyZWFkX211dGV4X3QqKSBfX25vbm51bGwoKDEpKTsKLWludCBwdGhyZWFkX211dGV4X3VubG9jayhwdGhyZWFkX211dGV4X3QqKSAvKiBfX25vbm51bGwoKDEpKSAqLzsKK2ludCBwdGhyZWFkX211dGV4X3VubG9jayhwdGhyZWFkX211dGV4X3QqKSBfX25vbm51bGwoKDEpKTsKIAogaW50IHB0aHJlYWRfb25jZShwdGhyZWFkX29uY2VfdCosIHZvaWQgKCopKHZvaWQpKSBfX25vbm51bGwoKDEsIDIpKTsKIAoraW50IHB0aHJlYWRfcndsb2NrYXR0cl9pbml0KHB0aHJlYWRfcndsb2NrYXR0cl90KikgX19ub25udWxsKCgxKSk7CiBpbnQgcHRocmVhZF9yd2xvY2thdHRyX2Rlc3Ryb3kocHRocmVhZF9yd2xvY2thdHRyX3QqKSBfX25vbm51bGwoKDEpKTsKIGludCBwdGhyZWFkX3J3bG9ja2F0dHJfZ2V0cHNoYXJlZChjb25zdCBwdGhyZWFkX3J3bG9ja2F0dHJfdCosIGludCopIF9fbm9ubnVsbCgoMSwgMikpOwotaW50IHB0aHJlYWRfcndsb2NrYXR0cl9pbml0KHB0aHJlYWRfcndsb2NrYXR0cl90KikgX19ub25udWxsKCgxKSk7CiBpbnQgcHRocmVhZF9yd2xvY2thdHRyX3NldHBzaGFyZWQocHRocmVhZF9yd2xvY2thdHRyX3QqLCBpbnQpIF9fbm9ubnVsbCgoMSkpOworaW50IHB0aHJlYWRfcndsb2NrYXR0cl9nZXRraW5kX25wKGNvbnN0IHB0aHJlYWRfcndsb2NrYXR0cl90KiwgaW50KikgX19ub25udWxsKCgxLCAyKSk7CitpbnQgcHRocmVhZF9yd2xvY2thdHRyX3NldGtpbmRfbnAocHRocmVhZF9yd2xvY2thdHRyX3QqLCBpbnQpIF9fbm9ubnVsbCgoMSkpOwogCiBpbnQgcHRocmVhZF9yd2xvY2tfZGVzdHJveShwdGhyZWFkX3J3bG9ja190KikgX19ub25udWxsKCgxKSk7CiBpbnQgcHRocmVhZF9yd2xvY2tfaW5pdChwdGhyZWFkX3J3bG9ja190KiwgY29uc3QgcHRocmVhZF9yd2xvY2thdHRyX3QqKSBfX25vbm51bGwoKDEpKTsKQEAgLTIzNiw4ICsyMDgsNiBAQAogCiBpbnQgcHRocmVhZF9zZXRzcGVjaWZpYyhwdGhyZWFkX2tleV90LCBjb25zdCB2b2lkKik7CiAKLWludCBwdGhyZWFkX3NpZ21hc2soaW50LCBjb25zdCBzaWdzZXRfdCosIHNpZ3NldF90Kik7Ci0KIHR5cGVkZWYgdm9pZCAoKl9fcHRocmVhZF9jbGVhbnVwX2Z1bmNfdCkodm9pZCopOwogCiB0eXBlZGVmIHN0cnVjdCBfX3B0aHJlYWRfY2xlYW51cF90IHsKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9wdHkuaCBiL2xpYmMvaW5jbHVkZS9wdHkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iY2ExMTM3Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9pbmNsdWRlL3B0eS5oCkBAIC0wLDAgKzEsNDQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCisgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiAgICBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCisgKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorICogQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUworICogT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VECisgKiBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksCisgKiBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQKKyAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBfUFRZX0gKKyNkZWZpbmUgX1BUWV9ICisKKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKworI2luY2x1ZGUgPHRlcm1pb3MuaD4KKyNpbmNsdWRlIDxzeXMvaW9jdGwuaD4KKworX19CRUdJTl9ERUNMUworCitpbnQgb3BlbnB0eShpbnQqLCBpbnQqLCBjaGFyKiwgY29uc3Qgc3RydWN0IHRlcm1pb3MqLCBjb25zdCBzdHJ1Y3Qgd2luc2l6ZSopOworaW50IGZvcmtwdHkoaW50KiwgY2hhciosIGNvbnN0IHN0cnVjdCB0ZXJtaW9zKiwgY29uc3Qgc3RydWN0IHdpbnNpemUqKTsKKworX19FTkRfREVDTFMKKworI2VuZGlmIC8qIF9QVFlfSCAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3B3ZC5oIGIvbGliYy9pbmNsdWRlL3B3ZC5oCmluZGV4IDZkNDgzYzAuLjYwMTJiOTYgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9wd2QuaAorKysgYi9saWJjL2luY2x1ZGUvcHdkLmgKQEAgLTExOSwxMCArMTE5LDYgQEAKIGludCBnZXRwd25hbV9yKGNvbnN0IGNoYXIqLCBzdHJ1Y3QgcGFzc3dkKiwgY2hhciosIHNpemVfdCwgc3RydWN0IHBhc3N3ZCoqKTsKIGludCBnZXRwd3VpZF9yKHVpZF90LCBzdHJ1Y3QgcGFzc3dkKiwgY2hhciosIHNpemVfdCwgc3RydWN0IHBhc3N3ZCoqKTsKIAotdm9pZCBlbmRwd2VudCh2b2lkKTsKLXN0cnVjdCBwYXNzd2QqIGdldHB3ZW50KHZvaWQpOwotaW50IHNldHB3ZW50KHZvaWQpOwotCiBfX0VORF9ERUNMUwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zY2hlZC5oIGIvbGliYy9pbmNsdWRlL3NjaGVkLmgKaW5kZXggZTQzYjZjYy4uOTMwZGQ3YyAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3NjaGVkLmgKKysrIGIvbGliYy9pbmNsdWRlL3NjaGVkLmgKQEAgLTI4LDEwICsyOCw5IEBACiAjaWZuZGVmIF9TQ0hFRF9IXwogI2RlZmluZSBfU0NIRURfSF8KIAotI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgotI2luY2x1ZGUgPHN5cy90aW1lLmg+Ci0KICNpbmNsdWRlIDxsaW51eC9zY2hlZC5oPgorI2luY2x1ZGUgPG1hY2hpbmUvdGltZXNwZWMuaD4KKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KIAogX19CRUdJTl9ERUNMUwogCkBAIC0zOSw5ICszOCw4IEBACiAjZGVmaW5lIFNDSEVEX09USEVSIFNDSEVEX05PUk1BTAogCiBzdHJ1Y3Qgc2NoZWRfcGFyYW0gewotICBpbnQgX19zY2hlZF9wcmlvcml0eTsKKyAgaW50IHNjaGVkX3ByaW9yaXR5OwogfTsKLSNkZWZpbmUgc2NoZWRfcHJpb3JpdHkgX19zY2hlZF9wcmlvcml0eQogCiBleHRlcm4gaW50IHNjaGVkX3NldHNjaGVkdWxlcihwaWRfdCwgaW50LCBjb25zdCBzdHJ1Y3Qgc2NoZWRfcGFyYW0qKTsKIGV4dGVybiBpbnQgc2NoZWRfZ2V0c2NoZWR1bGVyKHBpZF90KTsKQEAgLTUyLDcgKzUwLDcgQEAKIGV4dGVybiBpbnQgc2NoZWRfZ2V0cGFyYW0ocGlkX3QsIHN0cnVjdCBzY2hlZF9wYXJhbSopOwogZXh0ZXJuIGludCBzY2hlZF9ycl9nZXRfaW50ZXJ2YWwocGlkX3QsIHN0cnVjdCB0aW1lc3BlYyopOwogCi0jaWZkZWYgX0dOVV9TT1VSQ0UKKyNpZiBkZWZpbmVkKF9fVVNFX0dOVSkKIAogZXh0ZXJuIGludCBjbG9uZShpbnQgKCopKHZvaWQqKSwgdm9pZCosIGludCwgdm9pZCosIC4uLik7CiBleHRlcm4gaW50IHVuc2hhcmUoaW50KTsKQEAgLTE0Niw3ICsxNDQsNyBAQAogCiBleHRlcm4gaW50IF9fc2NoZWRfY3B1Y291bnQoc2l6ZV90IHNldHNpemUsIGNwdV9zZXRfdCogc2V0KTsKIAotI2VuZGlmIC8qIF9HTlVfU09VUkNFICovCisjZW5kaWYgLyogX19VU0VfR05VICovCiAKIF9fRU5EX0RFQ0xTCiAKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zZW1hcGhvcmUuaCBiL2xpYmMvaW5jbHVkZS9zZW1hcGhvcmUuaAppbmRleCA3YWUzYzNhLi40ZWYxM2FmIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc2VtYXBob3JlLmgKKysrIGIvbGliYy9pbmNsdWRlL3NlbWFwaG9yZS5oCkBAIC0yNSw2ICsyNSw3IEBACiAgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKICAqIFNVQ0ggREFNQUdFLgogICovCisKICNpZm5kZWYgX1NFTUFQSE9SRV9ICiAjZGVmaW5lIF9TRU1BUEhPUkVfSAogCkBAIC0zMiw4ICszMywxMCBAQAogCiBfX0JFR0lOX0RFQ0xTCiAKK3N0cnVjdCB0aW1lc3BlYzsKKwogdHlwZWRlZiBzdHJ1Y3QgewotICB2b2xhdGlsZSB1bnNpZ25lZCBpbnQgY291bnQ7CisgIHVuc2lnbmVkIGludCBjb3VudDsKICNpZmRlZiBfX0xQNjRfXwogICBpbnQgX19yZXNlcnZlZFszXTsKICNlbmRpZgpAQCAtNDEsMjAgKzQ0LDE4IEBACiAKICNkZWZpbmUgU0VNX0ZBSUxFRCBOVUxMCiAKLWV4dGVybiBpbnQgc2VtX2luaXQoc2VtX3QgKnNlbSwgaW50IHBzaGFyZWQsIHVuc2lnbmVkIGludCB2YWx1ZSk7CitpbnQgc2VtX2Rlc3Ryb3koc2VtX3QqKTsKK2ludCBzZW1fZ2V0dmFsdWUoc2VtX3QqLCBpbnQqKTsKK2ludCBzZW1faW5pdChzZW1fdCosIGludCwgdW5zaWduZWQgaW50KTsKK2ludCBzZW1fcG9zdChzZW1fdCopOworaW50IHNlbV90aW1lZHdhaXQoc2VtX3QqLCBjb25zdCBzdHJ1Y3QgdGltZXNwZWMqKTsKK2ludCBzZW1fdHJ5d2FpdChzZW1fdCopOworaW50IHNlbV93YWl0KHNlbV90Kik7CiAKLWV4dGVybiBpbnQgICAgc2VtX2Nsb3NlKHNlbV90ICopOwotZXh0ZXJuIGludCAgICBzZW1fZGVzdHJveShzZW1fdCAqKTsKLWV4dGVybiBpbnQgICAgc2VtX2dldHZhbHVlKHNlbV90ICosIGludCAqKTsKLWV4dGVybiBpbnQgICAgc2VtX2luaXQoc2VtX3QgKiwgaW50LCB1bnNpZ25lZCBpbnQpOwotZXh0ZXJuIHNlbV90ICpzZW1fb3Blbihjb25zdCBjaGFyICosIGludCwgLi4uKTsKLWV4dGVybiBpbnQgICAgc2VtX3Bvc3Qoc2VtX3QgKik7Ci1leHRlcm4gaW50ICAgIHNlbV90cnl3YWl0KHNlbV90ICopOwotZXh0ZXJuIGludCAgICBzZW1fdW5saW5rKGNvbnN0IGNoYXIgKik7Ci1leHRlcm4gaW50ICAgIHNlbV93YWl0KHNlbV90ICopOwotCi1zdHJ1Y3QgdGltZXNwZWM7Ci1leHRlcm4gaW50ICAgIHNlbV90aW1lZHdhaXQoc2VtX3QgKnNlbSwgY29uc3Qgc3RydWN0IHRpbWVzcGVjICphYnNfdGltZW91dCk7CisvKiBUaGVzZSBhcmVuJ3QgYWN0dWFsbHkgaW1wbGVtZW50ZWQuICovCitzZW1fdCogc2VtX29wZW4oY29uc3QgY2hhciosIGludCwgLi4uKTsKK2ludCBzZW1fY2xvc2Uoc2VtX3QqKTsKK2ludCBzZW1fdW5saW5rKGNvbnN0IGNoYXIqKTsKIAogX19FTkRfREVDTFMKIApkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3NpZ25hbC5oIGIvbGliYy9pbmNsdWRlL3NpZ25hbC5oCmluZGV4IGUyM2U2NWIuLjU1NGUwYWMgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zaWduYWwuaAorKysgYi9saWJjL2luY2x1ZGUvc2lnbmFsLmgKQEAgLTI5LDEyICsyOSwxMiBAQAogI2lmbmRlZiBfU0lHTkFMX0hfCiAjZGVmaW5lIF9TSUdOQUxfSF8KIAotI2luY2x1ZGUgPGVycm5vLmg+Ci0jaW5jbHVkZSA8c3lzL2NkZWZzLmg+Ci0jaW5jbHVkZSA8bGltaXRzLmg+CQkvKiBGb3IgTE9OR19CSVQgKi8KLSNpbmNsdWRlIDxzdHJpbmcuaD4JCS8qIEZvciBtZW1zZXQoKSAqLwotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgogI2luY2x1ZGUgPGFzbS9zaWdjb250ZXh0Lmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8bWFjaGluZS9wdGhyZWFkX3R5cGVzLmg+CisjaW5jbHVkZSA8bWFjaGluZS90aW1lc3BlYy5oPgorI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorI2luY2x1ZGUgPHN5cy90eXBlcy5oPgogCiAjaWYgZGVmaW5lZChfX0xQNjRfXykgfHwgZGVmaW5lZChfX21pcHNfXykKIC8qIEZvciA2NC1iaXQgKGFuZCBtaXBzKSwgdGhlIGtlcm5lbCdzIHN0cnVjdCBzaWdhY3Rpb24gZG9lc24ndCBtYXRjaCB0aGUgUE9TSVggb25lLApAQCAtMTA1LDE1ICsxMDUsMTUgQEAKIAogZXh0ZXJuIGludCBzaWdhY3Rpb24oaW50LCBjb25zdCBzdHJ1Y3Qgc2lnYWN0aW9uKiwgc3RydWN0IHNpZ2FjdGlvbiopOwogCi1leHRlcm4gc2lnaGFuZGxlcl90IHNpZ25hbChpbnQsIHNpZ2hhbmRsZXJfdCk7CitfQklPTklDX05PVF9CRUZPUkVfMjEoZXh0ZXJuIHNpZ2hhbmRsZXJfdCBzaWduYWwoaW50LCBzaWdoYW5kbGVyX3QpOykKIAogZXh0ZXJuIGludCBzaWdpbnRlcnJ1cHQoaW50LCBpbnQpOwogCi1leHRlcm4gaW50IHNpZ2FkZHNldChzaWdzZXRfdCosIGludCk7Ci1leHRlcm4gaW50IHNpZ2RlbHNldChzaWdzZXRfdCosIGludCk7Ci1leHRlcm4gaW50IHNpZ2VtcHR5c2V0KHNpZ3NldF90Kik7Ci1leHRlcm4gaW50IHNpZ2ZpbGxzZXQoc2lnc2V0X3QqKTsKLWV4dGVybiBpbnQgc2lnaXNtZW1iZXIoY29uc3Qgc2lnc2V0X3QqLCBpbnQpOworX0JJT05JQ19OT1RfQkVGT1JFXzIxKGV4dGVybiBpbnQgc2lnYWRkc2V0KHNpZ3NldF90KiwgaW50KTspCitfQklPTklDX05PVF9CRUZPUkVfMjEoZXh0ZXJuIGludCBzaWdkZWxzZXQoc2lnc2V0X3QqLCBpbnQpOykKK19CSU9OSUNfTk9UX0JFRk9SRV8yMShleHRlcm4gaW50IHNpZ2VtcHR5c2V0KHNpZ3NldF90Kik7KQorX0JJT05JQ19OT1RfQkVGT1JFXzIxKGV4dGVybiBpbnQgc2lnZmlsbHNldChzaWdzZXRfdCopOykKK19CSU9OSUNfTk9UX0JFRk9SRV8yMShleHRlcm4gaW50IHNpZ2lzbWVtYmVyKGNvbnN0IHNpZ3NldF90KiwgaW50KTspCiAKIGV4dGVybiBpbnQgc2lncGVuZGluZyhzaWdzZXRfdCopIF9fbm9ubnVsbCgoMSkpOwogZXh0ZXJuIGludCBzaWdwcm9jbWFzayhpbnQsIGNvbnN0IHNpZ3NldF90Kiwgc2lnc2V0X3QqKTsKQEAgLTEyOSw2ICsxMjksMTcgQEAKIGV4dGVybiB2b2lkIHBzaWdpbmZvKGNvbnN0IHNpZ2luZm9fdCosIGNvbnN0IGNoYXIqKTsKIGV4dGVybiB2b2lkIHBzaWduYWwoaW50LCBjb25zdCBjaGFyKik7CiAKK2V4dGVybiBpbnQgcHRocmVhZF9raWxsKHB0aHJlYWRfdCwgaW50KTsKK2V4dGVybiBpbnQgcHRocmVhZF9zaWdtYXNrKGludCwgY29uc3Qgc2lnc2V0X3QqLCBzaWdzZXRfdCopOworCitleHRlcm4gaW50IHNpZ3F1ZXVlKHBpZF90LCBpbnQsIGNvbnN0IHVuaW9uIHNpZ3ZhbCk7CitleHRlcm4gaW50IHNpZ3RpbWVkd2FpdChjb25zdCBzaWdzZXRfdCosIHNpZ2luZm9fdCosIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyopOworZXh0ZXJuIGludCBzaWd3YWl0aW5mbyhjb25zdCBzaWdzZXRfdCosIHNpZ2luZm9fdCopOworCisjaWYgX19BTkRST0lEX0FQSV9fIDwgMjEKKyNpbmNsdWRlIDxhbmRyb2lkL2xlZ2FjeV9zaWduYWxfaW5saW5lcy5oPgorI2VuZGlmCisKIF9fRU5EX0RFQ0xTCiAKICNlbmRpZiAvKiBfU0lHTkFMX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3RkYXRvbWljLmggYi9saWJjL2luY2x1ZGUvc3RkYXRvbWljLmgKaW5kZXggNThjYjFiYy4uMmM0ZjFjZSAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N0ZGF0b21pYy5oCisrKyBiL2xpYmMvaW5jbHVkZS9zdGRhdG9taWMuaApAQCAtMzIsNiArMzIsMTIgQEAKIAogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgogCisjaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgIWRlZmluZWQoX19HTlVDX1BSRVJFUSkKKy8qIER1cGxpY2F0ZSBkZWZpbml0aW9uIGhlcmUsIHNpbmNlIHRoZSBtaW5ndyBzeXMvY2RlZnMuaCBvbWl0cyB0aGUgICovCisvKiBkZWZpbml0aW9uLCBhbmQgdGhpcyBuZWVkcyB0byBiZSB1c2FibGUgdGhlcmUuICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZQlfX0dOVUNfUFJFUkVRKHgsIHkpICAgIFwKKwkoKF9fR05VQ19fID09ICh4KSAmJiBfX0dOVUNfTUlOT1JfXyA+PSAoeSkpIHx8IChfX0dOVUNfXyA+ICh4KSkpCisjZW5kaWYgLyogX19HTlVDX18gJiYgLi4uICovCiAKICNpZiBkZWZpbmVkKF9fY3BsdXNwbHVzKSAmJiBfX2NwbHVzcGx1cyA+PSAyMDExMDNMICYmIGRlZmluZWQoX1VTSU5HX0xJQkNYWCkKICMgaWZkZWYgX19jbGFuZ19fCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3RkaW8uaCBiL2xpYmMvaW5jbHVkZS9zdGRpby5oCmluZGV4IGEwMTYxZGUuLmY1ZWQ2NTIgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zdGRpby5oCisrKyBiL2xpYmMvaW5jbHVkZS9zdGRpby5oCkBAIC0zOCw2ICszOCwxNCBAQAogI2lmbmRlZglfU1RESU9fSF8KICNkZWZpbmUJX1NURElPX0hfCiAKKy8qCisgKiBUaGlzIGZpbGUgbXVzdCBjb250YWluIGEgcmVmZXJlbmNlIHRvIF9fZ251Y192YV9saXN0IHNvIHRoYXQgR0NDJ3MKKyAqIGZpeGluY2x1ZGVzIGtub3dzIHRoYXQgdGhhdCdzIHdoYXQncyBiZWluZyB1c2VkIGZvciB2YV9saXN0LCBhbmQgc28KKyAqIHRvIGxlYXZlIG91ciA8c3RkaW8uaD4gYWxvbmUuIChmaXhpbmNsdWRlcyBnZXRzIGluIHRoZSB3YXkgb2YgcG9pbnRpbmcKKyAqIG9uZSB0b29sY2hhaW4gYXQgdmFyaW91cyBkaWZmZXJlbnQgc2V0cyBvZiBwbGF0Zm9ybSBoZWFkZXJzLikKKyAqIElmIHlvdSBhbHRlciB0aGlzIGNvbW1lbnQsIGJlIHN1cmUgdG8ga2VlcCAiX19nbnVjX3ZhX2xpc3QiIGluIGl0IQorICovCisKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KIApAQCAtNDksOCArNTcsNiBAQAogCiBfX0JFR0lOX0RFQ0xTCiAKLSNkZWZpbmUJX0ZTVERJTwkJCS8qIERlZmluZSBmb3IgbmV3IHN0ZGlvIHdpdGggZnVuY3Rpb25zLiAqLwotCiB0eXBlZGVmIG9mZl90IGZwb3NfdDsJCS8qIHN0ZGlvIGZpbGUgcG9zaXRpb24gdHlwZSAqLwogCiAvKgpAQCAtMTM4LDcgKzE0NCwxNiBAQAogCWZwb3NfdAlfb2Zmc2V0OwkvKiBjdXJyZW50IGxzZWVrIG9mZnNldCAqLwogfSBGSUxFOwogCisvKiBMZWdhY3kgQlNEIGltcGxlbWVudGF0aW9uIG9mIHN0ZGluL3N0ZG91dC9zdGRlcnIuICovCiBleHRlcm4gRklMRSBfX3NGW107CisvKiBNb3JlIG9idmlvdXMgaW1wbGVtZW50YXRpb24uICovCitleHRlcm4gRklMRSogc3RkaW47CitleHRlcm4gRklMRSogc3Rkb3V0OworZXh0ZXJuIEZJTEUqIHN0ZGVycjsKKy8qIEM5OSBhbmQgZWFybGllciBwbHVzIGN1cnJlbnQgQysrIHN0YW5kYXJkcyBzYXkgdGhlc2UgbXVzdCBiZSBtYWNyb3MuICovCisjZGVmaW5lIHN0ZGluIHN0ZGluCisjZGVmaW5lIHN0ZG91dCBzdGRvdXQKKyNkZWZpbmUgc3RkZXJyIHN0ZGVycgogCiAjZGVmaW5lCV9fU0xCRgkweDAwMDEJCS8qIGxpbmUgYnVmZmVyZWQgKi8KICNkZWZpbmUJX19TTkJGCTB4MDAwMgkJLyogdW5idWZmZXJlZCAqLwpAQCAtMTkwLDIwICsyMDUsOSBAQAogI2RlZmluZQlMX3RtcG5hbQkxMDI0CS8qIFhYWCBtdXN0IGJlID09IFBBVEhfTUFYICovCiAjZGVmaW5lCVRNUF9NQVgJCTMwODkxNTc3NgogCi0vKiBBbHdheXMgZW5zdXJlIHRoYXQgdGhlc2UgYXJlIGNvbnNpc3RlbnQgd2l0aCA8ZmNudGwuaD4gYW5kIDx1bmlzdGQuaD4hICovCi0jaWZuZGVmIFNFRUtfU0VUCi0jZGVmaW5lCVNFRUtfU0VUCTAJLyogc2V0IGZpbGUgb2Zmc2V0IHRvIG9mZnNldCAqLwotI2VuZGlmCi0jaWZuZGVmIFNFRUtfQ1VSCi0jZGVmaW5lCVNFRUtfQ1VSCTEJLyogc2V0IGZpbGUgb2Zmc2V0IHRvIGN1cnJlbnQgcGx1cyBvZmZzZXQgKi8KLSNlbmRpZgotI2lmbmRlZiBTRUVLX0VORAotI2RlZmluZQlTRUVLX0VORAkyCS8qIHNldCBmaWxlIG9mZnNldCB0byBFT0YgcGx1cyBvZmZzZXQgKi8KLSNlbmRpZgotCi0jZGVmaW5lCXN0ZGluCSgmX19zRlswXSkKLSNkZWZpbmUJc3Rkb3V0CSgmX19zRlsxXSkKLSNkZWZpbmUJc3RkZXJyCSgmX19zRlsyXSkKKyNkZWZpbmUgU0VFS19TRVQgMAorI2RlZmluZSBTRUVLX0NVUiAxCisjZGVmaW5lIFNFRUtfRU5EIDIKIAogLyoKICAqIEZ1bmN0aW9ucyBkZWZpbmVkIGluIEFOU0kgQyBzdGFuZGFyZC4KQEAgLTI2MCwyNyArMjY0LDM4IEBACiAKICNpZm5kZWYgX19BVURJVF9fCiAjaWYgIWRlZmluZWQoX19TVERDX1ZFUlNJT05fXykgfHwgX19TVERDX1ZFUlNJT05fXyA8IDIwMTExMkwKLWNoYXIqIGdldHMoY2hhciopIF9fd2FybmF0dHIoImdldHMgaXMgdmVyeSB1bnNhZmU7IGNvbnNpZGVyIHVzaW5nIGZnZXRzIik7CitjaGFyKiBnZXRzKGNoYXIqKSBfX2F0dHJpYnV0ZV9fKChkZXByZWNhdGVkKCJnZXRzIGlzIHVuc2FmZSwgdXNlIGZnZXRzIGluc3RlYWQiKSkpOwogI2VuZGlmCiBpbnQgc3ByaW50ZihjaGFyKiBfX3Jlc3RyaWN0LCBjb25zdCBjaGFyKiBfX3Jlc3RyaWN0LCAuLi4pCiAgICAgX19wcmludGZsaWtlKDIsIDMpIF9fd2FybmF0dHIoInNwcmludGYgaXMgb2Z0ZW4gbWlzdXNlZDsgcGxlYXNlIHVzZSBzbnByaW50ZiIpOwotY2hhciogdG1wbmFtKGNoYXIqKSBfX3dhcm5hdHRyKCJ0bXBuYW0gcG9zc2libHkgdXNlZCB1bnNhZmVseTsgY29uc2lkZXIgdXNpbmcgbWtzdGVtcCIpOwogaW50IHZzcHJpbnRmKGNoYXIqIF9fcmVzdHJpY3QsIGNvbnN0IGNoYXIqIF9fcmVzdHJpY3QsIF9fdmFfbGlzdCkKICAgICBfX3ByaW50Zmxpa2UoMiwgMCkgX193YXJuYXR0cigidnNwcmludGYgaXMgb2Z0ZW4gbWlzdXNlZDsgcGxlYXNlIHVzZSB2c25wcmludGYiKTsKK2NoYXIqIHRtcG5hbShjaGFyKikgX19hdHRyaWJ1dGVfXygoZGVwcmVjYXRlZCgidG1wbmFtIGlzIHVuc2FmZSwgdXNlIG1rc3RlbXAgb3IgdG1wZmlsZSBpbnN0ZWFkIikpKTsKICNpZiBfX1hQR19WSVNJQkxFCiBjaGFyKiB0ZW1wbmFtKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKikKLSAgICBfX3dhcm5hdHRyKCJ0ZW1wbmFtIHBvc3NpYmx5IHVzZWQgdW5zYWZlbHk7IGNvbnNpZGVyIHVzaW5nIG1rc3RlbXAiKTsKKyAgICBfX2F0dHJpYnV0ZV9fKChkZXByZWNhdGVkKCJ0ZW1wbmFtIGlzIHVuc2FmZSwgdXNlIG1rc3RlbXAgb3IgdG1wZmlsZSBpbnN0ZWFkIikpKTsKICNlbmRpZgogI2VuZGlmCiAKIGV4dGVybiBpbnQgcmVuYW1lKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKik7CiBleHRlcm4gaW50IHJlbmFtZWF0KGludCwgY29uc3QgY2hhciosIGludCwgY29uc3QgY2hhciopOwogCisjaWYgZGVmaW5lZChfX1VTRV9GSUxFX09GRlNFVDY0KQorLyogTm90IHBvc3NpYmxlLiAqLworaW50CSBmZ2V0cG9zKEZJTEUgKiBfX3Jlc3RyaWN0LCBmcG9zX3QgKiBfX3Jlc3RyaWN0KQorCV9fYXR0cmlidXRlX18oKF9fZXJyb3JfXygibm90IGF2YWlsYWJsZSB3aXRoIF9GSUxFX09GRlNFVF9CSVRTPTY0IikpKTsKK2ludAkgZnNldHBvcyhGSUxFICosIGNvbnN0IGZwb3NfdCAqKQorCV9fYXR0cmlidXRlX18oKF9fZXJyb3JfXygibm90IGF2YWlsYWJsZSB3aXRoIF9GSUxFX09GRlNFVF9CSVRTPTY0IikpKTsKK2ludAkgZnNlZWtvKEZJTEUgKiwgb2ZmX3QsIGludCkKKwlfX2F0dHJpYnV0ZV9fKChfX2Vycm9yX18oIm5vdCBhdmFpbGFibGUgd2l0aCBfRklMRV9PRkZTRVRfQklUUz02NCIpKSk7CitvZmZfdAkgZnRlbGxvKEZJTEUgKikKKwlfX2F0dHJpYnV0ZV9fKChfX2Vycm9yX18oIm5vdCBhdmFpbGFibGUgd2l0aCBfRklMRV9PRkZTRVRfQklUUz02NCIpKSk7CisjZWxzZQogaW50CSBmZ2V0cG9zKEZJTEUgKiBfX3Jlc3RyaWN0LCBmcG9zX3QgKiBfX3Jlc3RyaWN0KTsKIGludAkgZnNldHBvcyhGSUxFICosIGNvbnN0IGZwb3NfdCAqKTsKLQogaW50CSBmc2Vla28oRklMRSAqLCBvZmZfdCwgaW50KTsKIG9mZl90CSBmdGVsbG8oRklMRSAqKTsKKyNlbmRpZgogCiAjaWYgX19JU09fQ19WSVNJQkxFID49IDE5OTkgfHwgX19CU0RfVklTSUJMRQogaW50CSBzbnByaW50ZihjaGFyICogX19yZXN0cmljdCwgc2l6ZV90LCBjb25zdCBjaGFyICogX19yZXN0cmljdCwgLi4uKQpAQCAtMzI0LDYgKzMzOSwxMSBAQAogaW50CSBwdXRjaGFyX3VubG9ja2VkKGludCk7CiAjZW5kaWYgLyogX19QT1NJWF9WSVNJQkxFID49IDE5OTUwNiAqLwogCisjaWYgX19QT1NJWF9WSVNJQkxFID49IDIwMDgwOQorRklMRSogZm1lbW9wZW4odm9pZCosIHNpemVfdCwgY29uc3QgY2hhciopOworRklMRSogb3Blbl9tZW1zdHJlYW0oY2hhcioqLCBzaXplX3QqKTsKKyNlbmRpZiAvKiBfX1BPU0lYX1ZJU0lCTEUgPj0gMjAwODA5ICovCisKICNlbmRpZiAvKiBfX0JTRF9WSVNJQkxFIHx8IF9fUE9TSVhfVklTSUJMRSB8fCBfX1hQR19WSVNJQkxFICovCiAKIC8qCkBAIC0zNDAsNiArMzYwLDEwIEBACiAgICAgX192YV9saXN0KQogCQlfX3ByaW50Zmxpa2UoMiwgMCk7CiAKK3ZvaWQgY2xlYXJlcnJfdW5sb2NrZWQoRklMRSopOworaW50IGZlb2ZfdW5sb2NrZWQoRklMRSopOworaW50IGZlcnJvcl91bmxvY2tlZChGSUxFKik7CisKIC8qCiAgKiBTdGRpbyBmdW5jdGlvbi1hY2Nlc3MgaW50ZXJmYWNlLgogICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3RkaW9fZXh0LmggYi9saWJjL2luY2x1ZGUvc3RkaW9fZXh0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjI5OWU1NAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvaW5jbHVkZS9zdGRpb19leHQuaApAQCAtMCwwICsxLDU0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgX1NURElPX0VYVF9ICisjZGVmaW5lIF9TVERJT19FWFRfSAorCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2RlZmluZSBGU0VUTE9DS0lOR19RVUVSWSAwCisjZGVmaW5lIEZTRVRMT0NLSU5HX0lOVEVSTkFMIDEKKyNkZWZpbmUgRlNFVExPQ0tJTkdfQllDQUxMRVIgMgorCitfX0JFR0lOX0RFQ0xTCisKK3NpemVfdCBfX2ZidWZzaXplKEZJTEUqKTsKK2ludCBfX2ZyZWFkaW5nKEZJTEUqKTsKK2ludCBfX2Z3cml0aW5nKEZJTEUqKTsKK2ludCBfX2ZyZWFkYWJsZShGSUxFKik7CitpbnQgX19md3JpdGFibGUoRklMRSopOworaW50IF9fZmxiZihGSUxFKik7Cit2b2lkIF9fZnB1cmdlKEZJTEUqKTsKK3NpemVfdCBfX2ZwZW5kaW5nKEZJTEUqKTsKK3ZvaWQgX2ZsdXNobGJmKHZvaWQpOworaW50IF9fZnNldGxvY2tpbmcoRklMRSosIGludCk7CisKK19fRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBfU1RESU9fRVhUX0ggKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zdGRsaWIuaCBiL2xpYmMvaW5jbHVkZS9zdGRsaWIuaAppbmRleCA1MmYzNzFiLi5lZmNhNTc3IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3RkbGliLmgKKysrIGIvbGliYy9pbmNsdWRlL3N0ZGxpYi5oCkBAIC0yNSwxNiArMjUsMTYgQEAKICAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgogICogU1VDSCBEQU1BR0UuCiAgKi8KLSNpZm5kZWYgX1NURExJQl9IXwotI2RlZmluZSBfU1RETElCX0hfCisKKyNpZm5kZWYgX1NURExJQl9ICisjZGVmaW5lIF9TVERMSUJfSAogCiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisjaW5jbHVkZSA8eGxvY2FsZS5oPgogCi0jaW5jbHVkZSA8c3RkZGVmLmg+Ci0jaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8YWxsb2NhLmg+Ci0jaW5jbHVkZSA8c3RyaW5ncy5oPgotI2luY2x1ZGUgPG1lbW9yeS5oPgorI2luY2x1ZGUgPG1hbGxvYy5oPgorI2luY2x1ZGUgPHN0ZGRlZi5oPgogCiBfX0JFR0lOX0RFQ0xTCiAKQEAgLTU4LDkgKzU4LDE2IEBACiBleHRlcm4gaW50IGNsZWFyZW52KHZvaWQpOwogCiBleHRlcm4gY2hhciogbWtkdGVtcChjaGFyKik7Ci1leHRlcm4gY2hhciogbWt0ZW1wKGNoYXIqKSBfX3dhcm5hdHRyKCJta3RlbXAgcG9zc2libHkgdXNlZCB1bnNhZmVseTsgY29uc2lkZXIgdXNpbmcgbWtzdGVtcCIpOwotZXh0ZXJuIGludCBta3N0ZW1wKGNoYXIqKTsKK2V4dGVybiBjaGFyKiBta3RlbXAoY2hhciopIF9fYXR0cmlidXRlX18oKGRlcHJlY2F0ZWQoIm1rdGVtcCBpcyB1bnNhZmUsIHVzZSBta3N0ZW1wIG9yIHRtcGZpbGUgaW5zdGVhZCIpKSk7CisKK2V4dGVybiBpbnQgbWtvc3RlbXA2NChjaGFyKiwgaW50KTsKK2V4dGVybiBpbnQgbWtvc3RlbXAoY2hhciosIGludCk7CitleHRlcm4gaW50IG1rb3N0ZW1wczY0KGNoYXIqLCBpbnQsIGludCk7CitleHRlcm4gaW50IG1rb3N0ZW1wcyhjaGFyKiwgaW50LCBpbnQpOwogZXh0ZXJuIGludCBta3N0ZW1wNjQoY2hhciopOworZXh0ZXJuIGludCBta3N0ZW1wKGNoYXIqKTsKK2V4dGVybiBpbnQgbWtzdGVtcHM2NChjaGFyKiwgaW50KTsKK2V4dGVybiBpbnQgbWtzdGVtcHMoY2hhciosIGludCk7CiAKIGV4dGVybiBsb25nIHN0cnRvbChjb25zdCBjaGFyICosIGNoYXIgKiosIGludCk7CiBleHRlcm4gbG9uZyBsb25nIHN0cnRvbGwoY29uc3QgY2hhciAqLCBjaGFyICoqLCBpbnQpOwpAQCAtNjksMTAgKzc2LDEwIEBACiAKIGV4dGVybiBpbnQgcG9zaXhfbWVtYWxpZ24odm9pZCAqKm1lbXB0ciwgc2l6ZV90IGFsaWdubWVudCwgc2l6ZV90IHNpemUpOwogCi1leHRlcm4gZG91YmxlIGF0b2YoY29uc3QgY2hhciopOworX0JJT05JQ19OT1RfQkVGT1JFXzIxKGV4dGVybiBkb3VibGUgYXRvZihjb25zdCBjaGFyKik7KQogCiBleHRlcm4gZG91YmxlIHN0cnRvZChjb25zdCBjaGFyKiwgY2hhcioqKSBfX0xJQkNfQUJJX1BVQkxJQ19fOwotZXh0ZXJuIGZsb2F0IHN0cnRvZihjb25zdCBjaGFyKiwgY2hhcioqKSBfX0xJQkNfQUJJX1BVQkxJQ19fOworX0JJT05JQ19OT1RfQkVGT1JFXzIxKGV4dGVybiBmbG9hdCBzdHJ0b2YoY29uc3QgY2hhciosIGNoYXIqKikgX19MSUJDX0FCSV9QVUJMSUNfXzspCiBleHRlcm4gbG9uZyBkb3VibGUgc3RydG9sZChjb25zdCBjaGFyKiwgY2hhcioqKSBfX0xJQkNfQUJJX1BVQkxJQ19fOwogCiBleHRlcm4gbG9uZyBkb3VibGUgc3RydG9sZF9sKGNvbnN0IGNoYXIgKiwgY2hhciAqKiwgbG9jYWxlX3QpIF9fTElCQ19BQklfUFVCTElDX187CkBAIC04MywxMiArOTAsMTIgQEAKIGV4dGVybiBsb25nIGF0b2woY29uc3QgY2hhciopIF9fcHVyZWZ1bmM7CiBleHRlcm4gbG9uZyBsb25nIGF0b2xsKGNvbnN0IGNoYXIqKSBfX3B1cmVmdW5jOwogCi1leHRlcm4gaW50IGFicyhpbnQpIF9fcHVyZTI7Ci1leHRlcm4gbG9uZyBsYWJzKGxvbmcpIF9fcHVyZTI7Ci1leHRlcm4gbG9uZyBsb25nIGxsYWJzKGxvbmcgbG9uZykgX19wdXJlMjsKK19CSU9OSUNfTk9UX0JFRk9SRV8yMShleHRlcm4gaW50IGFicyhpbnQpIF9fcHVyZTI7KQorX0JJT05JQ19OT1RfQkVGT1JFXzIxKGV4dGVybiBsb25nIGxhYnMobG9uZykgX19wdXJlMjspCitfQklPTklDX05PVF9CRUZPUkVfMjEoZXh0ZXJuIGxvbmcgbG9uZyBsbGFicyhsb25nIGxvbmcpIF9fcHVyZTI7KQogCiBleHRlcm4gY2hhciAqIHJlYWxwYXRoKGNvbnN0IGNoYXIgKnBhdGgsIGNoYXIgKnJlc29sdmVkKTsKLWV4dGVybiBpbnQgc3lzdGVtKGNvbnN0IGNoYXIgKiBzdHJpbmcpOworZXh0ZXJuIGludCBzeXN0ZW0oY29uc3QgY2hhciAqc3RyaW5nKTsKIAogZXh0ZXJuIHZvaWQgKiBic2VhcmNoKGNvbnN0IHZvaWQgKmtleSwgY29uc3Qgdm9pZCAqYmFzZTAsCiAJc2l6ZV90IG5tZW1iLCBzaXplX3Qgc2l6ZSwKQEAgLTk2LDM0ICsxMDMsMzUgQEAKIAogZXh0ZXJuIHZvaWQgcXNvcnQodm9pZCAqLCBzaXplX3QsIHNpemVfdCwgaW50ICgqKShjb25zdCB2b2lkICosIGNvbnN0IHZvaWQgKikpOwogCi1leHRlcm4gbG9uZyBqcmFuZDQ4KHVuc2lnbmVkIHNob3J0ICopOwotZXh0ZXJuIGxvbmcgbXJhbmQ0OCh2b2lkKTsKLWV4dGVybiBsb25nIG5yYW5kNDgodW5zaWduZWQgc2hvcnQgKik7Ci1leHRlcm4gbG9uZyBscmFuZDQ4KHZvaWQpOwotZXh0ZXJuIHVuc2lnbmVkIHNob3J0ICpzZWVkNDgodW5zaWduZWQgc2hvcnQqKTsKLWV4dGVybiBkb3VibGUgZXJhbmQ0OCh1bnNpZ25lZCBzaG9ydCB4c3ViaVszXSk7Ci1leHRlcm4gZG91YmxlIGRyYW5kNDgodm9pZCk7Ci1leHRlcm4gdm9pZCBzcmFuZDQ4KGxvbmcpOwotCi11bnNpZ25lZCBpbnQgYXJjNHJhbmRvbSh2b2lkKTsKLXVuc2lnbmVkIGludCBhcmM0cmFuZG9tX3VuaWZvcm0odW5zaWduZWQgaW50KTsKK3VpbnQzMl90IGFyYzRyYW5kb20odm9pZCk7Cit1aW50MzJfdCBhcmM0cmFuZG9tX3VuaWZvcm0odWludDMyX3QpOwogdm9pZCBhcmM0cmFuZG9tX2J1Zih2b2lkKiwgc2l6ZV90KTsKIAogI2RlZmluZSBSQU5EX01BWCAweDdmZmZmZmZmCiAKLWludCByYW5kKHZvaWQpOworX0JJT05JQ19OT1RfQkVGT1JFXzIxKGludCByYW5kKHZvaWQpOykKIGludCByYW5kX3IodW5zaWduZWQgaW50Kik7Ci12b2lkIHNyYW5kKHVuc2lnbmVkIGludCk7CitfQklPTklDX05PVF9CRUZPUkVfMjEodm9pZCBzcmFuZCh1bnNpZ25lZCBpbnQpOykKKworZG91YmxlIGRyYW5kNDgodm9pZCk7Citkb3VibGUgZXJhbmQ0OCh1bnNpZ25lZCBzaG9ydFszXSk7Citsb25nIGpyYW5kNDgodW5zaWduZWQgc2hvcnRbM10pOwordm9pZCBsY29uZzQ4KHVuc2lnbmVkIHNob3J0WzddKTsKK2xvbmcgbHJhbmQ0OCh2b2lkKTsKK2xvbmcgbXJhbmQ0OCh2b2lkKTsKK2xvbmcgbnJhbmQ0OCh1bnNpZ25lZCBzaG9ydFszXSk7Cit1bnNpZ25lZCBzaG9ydCogc2VlZDQ4KHVuc2lnbmVkIHNob3J0WzNdKTsKK3ZvaWQgc3JhbmQ0OChsb25nKTsKIAogY2hhciogaW5pdHN0YXRlKHVuc2lnbmVkIGludCwgY2hhciosIHNpemVfdCk7Ci1sb25nIHJhbmRvbSh2b2lkKTsKK19CSU9OSUNfTk9UX0JFRk9SRV8yMShsb25nIHJhbmRvbSh2b2lkKTspCiBjaGFyKiBzZXRzdGF0ZShjaGFyKik7Ci12b2lkIHNyYW5kb20odW5zaWduZWQgaW50KTsKK19CSU9OSUNfTk9UX0JFRk9SRV8yMSh2b2lkIHNyYW5kb20odW5zaWduZWQgaW50KTspCiAKIGludCBnZXRwdCh2b2lkKTsKLWludCBncmFudHB0KGludCk7CitfQklPTklDX05PVF9CRUZPUkVfMjEoaW50IGdyYW50cHQoaW50KTspCiBpbnQgcG9zaXhfb3BlbnB0KGludCk7Ci1jaGFyKiBwdHNuYW1lKGludCkgX193YXJuYXR0cigicHRzbmFtZSBpcyBub3QgdGhyZWFkLXNhZmU7IHVzZSBwdHNuYW1lX3IgaW5zdGVhZCIpOworY2hhciogcHRzbmFtZShpbnQpOwogaW50IHB0c25hbWVfcihpbnQsIGNoYXIqLCBzaXplX3QpOwogaW50IHVubG9ja3B0KGludCk7CiAKQEAgLTE2NCw2ICsxNzIsMzEgQEAKIGV4dGVybiBzaXplX3QgX19jdHlwZV9nZXRfbWJfY3VyX21heCh2b2lkKTsKICNkZWZpbmUgTUJfQ1VSX01BWCBfX2N0eXBlX2dldF9tYl9jdXJfbWF4KCkKIAorI2lmIF9fQU5EUk9JRF9BUElfXyA8IDIxCisjaW5jbHVkZSA8YW5kcm9pZC9sZWdhY3lfc3RkbGliX2lubGluZXMuaD4KKyNlbmRpZgorCisjaWYgZGVmaW5lZChfX0JJT05JQ19GT1JUSUZZKQorCitleHRlcm4gY2hhciogX19yZWFscGF0aF9yZWFsKGNvbnN0IGNoYXIqLCBjaGFyKikgX19SRU5BTUUocmVhbHBhdGgpOworX19lcnJvcmRlY2woX19yZWFscGF0aF9zaXplX2Vycm9yLCAicmVhbHBhdGggb3V0cHV0IHBhcmFtZXRlciBtdXN0IGJlIE5VTEwgb3IgYSA+PSBQQVRIX01BWCBieXRlcyBidWZmZXIiKTsKKworI2lmICFkZWZpbmVkKF9fY2xhbmdfXykKK19fQklPTklDX0ZPUlRJRllfSU5MSU5FCitjaGFyKiByZWFscGF0aChjb25zdCBjaGFyKiBwYXRoLCBjaGFyKiByZXNvbHZlZCkgeworICAgIHNpemVfdCBib3MgPSBfX2JvcyhyZXNvbHZlZCk7CisKKyAgICAvKiBQQVRIX01BWCBpcyB1bmF2YWlsYWJsZSB3aXRob3V0IHBvbGx1dGluZyB0aGUgbmFtZXNwYWNlLCBidXQgaXQncyBhbHdheXMgNDA5NiBvbiBMaW51eCAqLworICAgIGlmIChib3MgIT0gX19CSU9OSUNfRk9SVElGWV9VTktOT1dOX1NJWkUgJiYgYm9zIDwgNDA5NikgeworICAgICAgICBfX3JlYWxwYXRoX3NpemVfZXJyb3IoKTsKKyAgICB9CisKKyAgICByZXR1cm4gX19yZWFscGF0aF9yZWFsKHBhdGgsIHJlc29sdmVkKTsKK30KKyNlbmRpZgorCisjZW5kaWYgLyogZGVmaW5lZChfX0JJT05JQ19GT1JUSUZZKSAqLworCiBfX0VORF9ERUNMUwogCi0jZW5kaWYgLyogX1NURExJQl9IXyAqLworI2VuZGlmIC8qIF9TVERMSUJfSCAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N0cmluZy5oIGIvbGliYy9pbmNsdWRlL3N0cmluZy5oCmluZGV4IGYyZjZkZDIuLmQzMmMxNjQgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zdHJpbmcuaAorKysgYi9saWJjL2luY2x1ZGUvc3RyaW5nLmgKQEAgLTI1LDIxICsyNSwyOCBAQAogICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCiAgKiBTVUNIIERBTUFHRS4KICAqLwotI2lmbmRlZiBfU1RSSU5HX0hfCi0jZGVmaW5lIF9TVFJJTkdfSF8KKworI2lmbmRlZiBfU1RSSU5HX0gKKyNkZWZpbmUgX1NUUklOR19ICiAKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KICNpbmNsdWRlIDxzdGRkZWYuaD4KLSNpbmNsdWRlIDxtYWxsb2MuaD4KICNpbmNsdWRlIDx4bG9jYWxlLmg+CiAKIF9fQkVHSU5fREVDTFMKIAorI2lmIGRlZmluZWQoX19VU0VfQlNEKQorI2luY2x1ZGUgPHN0cmluZ3MuaD4KKyNlbmRpZgorCiBleHRlcm4gdm9pZCogIG1lbWNjcHkodm9pZCogX19yZXN0cmljdCwgY29uc3Qgdm9pZCogX19yZXN0cmljdCwgaW50LCBzaXplX3QpOwogZXh0ZXJuIHZvaWQqICBtZW1jaHIoY29uc3Qgdm9pZCAqLCBpbnQsIHNpemVfdCkgX19wdXJlZnVuYzsKIGV4dGVybiB2b2lkKiAgbWVtcmNocihjb25zdCB2b2lkICosIGludCwgc2l6ZV90KSBfX3B1cmVmdW5jOwogZXh0ZXJuIGludCAgICBtZW1jbXAoY29uc3Qgdm9pZCAqLCBjb25zdCB2b2lkICosIHNpemVfdCkgX19wdXJlZnVuYzsKIGV4dGVybiB2b2lkKiAgbWVtY3B5KHZvaWQqIF9fcmVzdHJpY3QsIGNvbnN0IHZvaWQqIF9fcmVzdHJpY3QsIHNpemVfdCk7CisjaWYgZGVmaW5lZChfX1VTRV9HTlUpCitleHRlcm4gdm9pZCogIG1lbXBjcHkodm9pZCogX19yZXN0cmljdCwgY29uc3Qgdm9pZCogX19yZXN0cmljdCwgc2l6ZV90KTsKKyNlbmRpZgogZXh0ZXJuIHZvaWQqICBtZW1tb3ZlKHZvaWQgKiwgY29uc3Qgdm9pZCAqLCBzaXplX3QpOwogZXh0ZXJuIHZvaWQqICBtZW1zZXQodm9pZCAqLCBpbnQsIHNpemVfdCk7CiBleHRlcm4gdm9pZCogIG1lbW1lbShjb25zdCB2b2lkICosIHNpemVfdCwgY29uc3Qgdm9pZCAqLCBzaXplX3QpIF9fcHVyZWZ1bmM7CkBAIC01Nyw4ICs2NCwxMSBAQAogZXh0ZXJuIGNoYXIqICBzdHJjcHkoY2hhciogX19yZXN0cmljdCwgY29uc3QgY2hhciogX19yZXN0cmljdCk7CiBleHRlcm4gY2hhciogIHN0cmNhdChjaGFyKiBfX3Jlc3RyaWN0LCBjb25zdCBjaGFyKiBfX3Jlc3RyaWN0KTsKIAotZXh0ZXJuIGludCAgICBzdHJjYXNlY21wKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKSBfX3B1cmVmdW5jOwotZXh0ZXJuIGludCAgICBzdHJuY2FzZWNtcChjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgc2l6ZV90KSBfX3B1cmVmdW5jOworaW50IHN0cmNhc2VjbXAoY29uc3QgY2hhciosIGNvbnN0IGNoYXIqKSBfX3B1cmVmdW5jOworaW50IHN0cmNhc2VjbXBfbChjb25zdCBjaGFyKiwgY29uc3QgY2hhciosIGxvY2FsZV90KSBfX3B1cmVmdW5jOworaW50IHN0cm5jYXNlY21wKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgc2l6ZV90KSBfX3B1cmVmdW5jOworaW50IHN0cm5jYXNlY21wX2woY29uc3QgY2hhciosIGNvbnN0IGNoYXIqLCBzaXplX3QsIGxvY2FsZV90KSBfX3B1cmVmdW5jOworCiBleHRlcm4gY2hhciogIHN0cmR1cChjb25zdCBjaGFyICopOwogCiBleHRlcm4gY2hhciogIHN0cnN0cihjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKikgX19wdXJlZnVuYzsKQEAgLTY2LDggKzc2LDEzIEBACiBleHRlcm4gY2hhciogIHN0cnRvayhjaGFyKiBfX3Jlc3RyaWN0LCBjb25zdCBjaGFyKiBfX3Jlc3RyaWN0KTsKIGV4dGVybiBjaGFyKiAgc3RydG9rX3IoY2hhciogX19yZXN0cmljdCwgY29uc3QgY2hhciogX19yZXN0cmljdCwgY2hhcioqIF9fcmVzdHJpY3QpOwogCi1leHRlcm4gY2hhciogIHN0cmVycm9yKGludCk7Ci1leHRlcm4gaW50ICAgIHN0cmVycm9yX3IoaW50IGVycm51bSwgY2hhciAqYnVmLCBzaXplX3Qgbik7CitleHRlcm4gY2hhciogc3RyZXJyb3IoaW50KTsKK2V4dGVybiBjaGFyKiBzdHJlcnJvcl9sKGludCwgbG9jYWxlX3QpOworI2lmIGRlZmluZWQoX19VU0VfR05VKQorZXh0ZXJuIGNoYXIqIHN0cmVycm9yX3IoaW50LCBjaGFyKiwgc2l6ZV90KSBfX1JFTkFNRShfX2dudV9zdHJlcnJvcl9yKTsKKyNlbHNlIC8qIFBPU0lYICovCitleHRlcm4gaW50IHN0cmVycm9yX3IoaW50LCBjaGFyKiwgc2l6ZV90KTsKKyNlbmRpZgogCiBleHRlcm4gc2l6ZV90IHN0cm5sZW4oY29uc3QgY2hhciAqLCBzaXplX3QpIF9fcHVyZWZ1bmM7CiBleHRlcm4gY2hhciogIHN0cm5jYXQoY2hhciogX19yZXN0cmljdCwgY29uc3QgY2hhciogX19yZXN0cmljdCwgc2l6ZV90KTsKQEAgLTkyLDYgKzEwNywyNyBAQAogZXh0ZXJuIGludCAgICBzdHJjb2xsX2woY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGxvY2FsZV90KSBfX3B1cmVmdW5jOwogZXh0ZXJuIHNpemVfdCBzdHJ4ZnJtX2woY2hhciogX19yZXN0cmljdCwgY29uc3QgY2hhciogX19yZXN0cmljdCwgc2l6ZV90LCBsb2NhbGVfdCk7CiAKKyNpZiBkZWZpbmVkKF9fVVNFX0dOVSkgJiYgIWRlZmluZWQoX19iaW9uaWNfdXNpbmdfcG9zaXhfYmFzZW5hbWUpCisvKgorICogZ2xpYmMgaGFzIGEgYmFzZW5hbWUgaW4gPHN0cmluZy5oPiB0aGF0J3MgZGlmZmVyZW50IHRvIHRoZSBQT1NJWCBvbmUgaW4gPGxpYmdlbi5oPi4KKyAqIEl0IGRvZXNuJ3QgbW9kaWZ5IGl0cyBhcmd1bWVudCwgYW5kIGluIEMrKyBpdCdzIGNvbnN0LWNvcnJlY3QuCisgKi8KKyNpZiBkZWZpbmVkKF9fY3BsdXNwbHVzKQorZXh0ZXJuICJDKysiIGNoYXIqIGJhc2VuYW1lKGNoYXIqKSBfX1JFTkFNRShfX2dudV9iYXNlbmFtZSkgX19ub25udWxsKCgxKSk7CitleHRlcm4gIkMrKyIgY29uc3QgY2hhciogYmFzZW5hbWUoY29uc3QgY2hhciopIF9fUkVOQU1FKF9fZ251X2Jhc2VuYW1lKSBfX25vbm51bGwoKDEpKTsKKyNlbHNlCitleHRlcm4gY2hhciogYmFzZW5hbWUoY29uc3QgY2hhciopIF9fUkVOQU1FKF9fZ251X2Jhc2VuYW1lKSBfX25vbm51bGwoKDEpKTsKKyNlbmRpZgorI2RlZmluZSBfX2Jpb25pY191c2luZ19nbnVfYmFzZW5hbWUKKyNlbmRpZgorCitleHRlcm4gdm9pZCogX19tZW1jaHJfY2hrKGNvbnN0IHZvaWQqLCBpbnQsIHNpemVfdCwgc2l6ZV90KTsKK19fZXJyb3JkZWNsKF9fbWVtY2hyX2J1Zl9zaXplX2Vycm9yLCAibWVtY2hyIGNhbGxlZCB3aXRoIHNpemUgYmlnZ2VyIHRoYW4gYnVmZmVyIik7CisKK2V4dGVybiB2b2lkKiBfX21lbXJjaHJfY2hrKGNvbnN0IHZvaWQqLCBpbnQsIHNpemVfdCwgc2l6ZV90KTsKK19fZXJyb3JkZWNsKF9fbWVtcmNocl9idWZfc2l6ZV9lcnJvciwgIm1lbXJjaHIgY2FsbGVkIHdpdGggc2l6ZSBiaWdnZXIgdGhhbiBidWZmZXIiKTsKK2V4dGVybiB2b2lkKiBfX21lbXJjaHJfcmVhbChjb25zdCB2b2lkKiwgaW50LCBzaXplX3QpIF9fUkVOQU1FKG1lbXJjaHIpOworCiBleHRlcm4gY2hhciogX19zdHBuY3B5X2NoazIoY2hhciogX19yZXN0cmljdCwgY29uc3QgY2hhciogX19yZXN0cmljdCwgc2l6ZV90LCBzaXplX3QsIHNpemVfdCk7CiBleHRlcm4gY2hhciogX19zdHJuY3B5X2NoazIoY2hhciogX19yZXN0cmljdCwgY29uc3QgY2hhciogX19yZXN0cmljdCwgc2l6ZV90LCBzaXplX3QsIHNpemVfdCk7CiBleHRlcm4gc2l6ZV90IF9fc3RybGNweV9yZWFsKGNoYXIqIF9fcmVzdHJpY3QsIGNvbnN0IGNoYXIqIF9fcmVzdHJpY3QsIHNpemVfdCkgX19SRU5BTUUoc3RybGNweSk7CkBAIC0xMDIsNiArMTM4LDQ4IEBACiAjaWYgZGVmaW5lZChfX0JJT05JQ19GT1JUSUZZKQogCiBfX0JJT05JQ19GT1JUSUZZX0lOTElORQordm9pZCogbWVtY2hyKGNvbnN0IHZvaWQgKnMsIGludCBjLCBzaXplX3QgbikgeworICAgIHNpemVfdCBib3MgPSBfX2JvcyhzKTsKKworI2lmICFkZWZpbmVkKF9fY2xhbmdfXykKKyAgICBpZiAoYm9zID09IF9fQklPTklDX0ZPUlRJRllfVU5LTk9XTl9TSVpFKSB7CisgICAgICAgIHJldHVybiBfX2J1aWx0aW5fbWVtY2hyKHMsIGMsIG4pOworICAgIH0KKworICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChuKSAmJiAobiA+IGJvcykpIHsKKyAgICAgICAgX19tZW1jaHJfYnVmX3NpemVfZXJyb3IoKTsKKyAgICB9CisKKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3AobikgJiYgKG4gPD0gYm9zKSkgeworICAgICAgICByZXR1cm4gX19idWlsdGluX21lbWNocihzLCBjLCBuKTsKKyAgICB9CisjZW5kaWYKKworICAgIHJldHVybiBfX21lbWNocl9jaGsocywgYywgbiwgYm9zKTsKK30KKworX19CSU9OSUNfRk9SVElGWV9JTkxJTkUKK3ZvaWQqIG1lbXJjaHIoY29uc3Qgdm9pZCAqcywgaW50IGMsIHNpemVfdCBuKSB7CisgICAgc2l6ZV90IGJvcyA9IF9fYm9zKHMpOworCisjaWYgIWRlZmluZWQoX19jbGFuZ19fKQorICAgIGlmIChib3MgPT0gX19CSU9OSUNfRk9SVElGWV9VTktOT1dOX1NJWkUpIHsKKyAgICAgICAgcmV0dXJuIF9fbWVtcmNocl9yZWFsKHMsIGMsIG4pOworICAgIH0KKworICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChuKSAmJiAobiA+IGJvcykpIHsKKyAgICAgICAgX19tZW1yY2hyX2J1Zl9zaXplX2Vycm9yKCk7CisgICAgfQorCisgICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9wKG4pICYmIChuIDw9IGJvcykpIHsKKyAgICAgICAgcmV0dXJuIF9fbWVtcmNocl9yZWFsKHMsIGMsIG4pOworICAgIH0KKyNlbmRpZgorCisgICAgcmV0dXJuIF9fbWVtcmNocl9jaGsocywgYywgbiwgYm9zKTsKK30KKworX19CSU9OSUNfRk9SVElGWV9JTkxJTkUKIHZvaWQqIG1lbWNweSh2b2lkKiBfX3Jlc3RyaWN0IGRlc3QsIGNvbnN0IHZvaWQqIF9fcmVzdHJpY3Qgc3JjLCBzaXplX3QgY29weV9hbW91bnQpIHsKICAgICByZXR1cm4gX19idWlsdGluX19fbWVtY3B5X2NoayhkZXN0LCBzcmMsIGNvcHlfYW1vdW50LCBfX2JvczAoZGVzdCkpOwogfQpAQCAtMjgxLDQgKzM1OSw0IEBACiAKIF9fRU5EX0RFQ0xTCiAKLSNlbmRpZiAvKiBfU1RSSU5HX0hfICovCisjZW5kaWYgLyogX1NUUklOR19IICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3RyaW5ncy5oIGIvbGliYy9pbmNsdWRlL3N0cmluZ3MuaAppbmRleCBhZTI2MWNmLi4xMjUzMDA2IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3RyaW5ncy5oCisrKyBiL2xpYmMvaW5jbHVkZS9zdHJpbmdzLmgKQEAgLTQxLDIyICs0MSwyMyBAQAogCiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisjaW5jbHVkZSA8eGxvY2FsZS5oPgogCiBfX0JFR0lOX0RFQ0xTCiAjaWYgZGVmaW5lZChfX0JJT05JQ19GT1JUSUZZKQotI2RlZmluZSBiY29weShiMSwgYjIsIGxlbikgXAotICAodm9pZCkoX19idWlsdGluX19fbWVtbW92ZV9jaGsoKGIyKSwgKGIxKSwgKGxlbiksIF9fYm9zMChiMikpKQotI2RlZmluZSBiemVybyhiLCBsZW4pIFwKLSAgKHZvaWQpKF9fYnVpbHRpbl9fX21lbXNldF9jaGsoKGIpLCAnXDAnLCAobGVuKSwgX19ib3MwKGIpKSkKKyNkZWZpbmUgYmNvcHkoYjEsIGIyLCBsZW4pICh2b2lkKShfX2J1aWx0aW5fX19tZW1tb3ZlX2NoaygoYjIpLCAoYjEpLCAobGVuKSwgX19ib3MwKGIyKSkpCisjZGVmaW5lIGJ6ZXJvKGIsIGxlbikgKHZvaWQpKF9fYnVpbHRpbl9fX21lbXNldF9jaGsoKGIpLCAnXDAnLCAobGVuKSwgX19ib3MwKGIpKSkKICNlbHNlCiAjZGVmaW5lIGJjb3B5KGIxLCBiMiwgbGVuKSAodm9pZCkoX19idWlsdGluX21lbW1vdmUoKGIyKSwgKGIxKSwgKGxlbikpKQogI2RlZmluZSBiemVybyhiLCBsZW4pICh2b2lkKShfX2J1aWx0aW5fbWVtc2V0KChiKSwgJ1wwJywgKGxlbikpKQogI2VuZGlmCiAKK2ludCBmZnMoaW50KTsKIAotaW50CSBmZnMoaW50KTsKLWludAkgc3RyY2FzZWNtcChjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7Ci1pbnQJIHN0cm5jYXNlY21wKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCBzaXplX3QpOworaW50IHN0cmNhc2VjbXAoY29uc3QgY2hhciosIGNvbnN0IGNoYXIqKSBfX3B1cmVmdW5jOworaW50IHN0cmNhc2VjbXBfbChjb25zdCBjaGFyKiwgY29uc3QgY2hhciosIGxvY2FsZV90KSBfX3B1cmVmdW5jOworaW50IHN0cm5jYXNlY21wKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgc2l6ZV90KSBfX3B1cmVmdW5jOworaW50IHN0cm5jYXNlY21wX2woY29uc3QgY2hhciosIGNvbnN0IGNoYXIqLCBzaXplX3QsIGxvY2FsZV90KSBfX3B1cmVmdW5jOwogCiBfX0VORF9ERUNMUwogCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL19lcnJkZWZzLmggYi9saWJjL2luY2x1ZGUvc3lzL19lcnJkZWZzLmgKaW5kZXggM2VlYWRmNC4uM2MzYzlkNyAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy9fZXJyZGVmcy5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvX2VycmRlZnMuaApAQCAtNDUsNyArNDUsNyBAQAogX19CSU9OSUNfRVJSREVGKCBFTlhJTyAgICAgICAgICAsICAgNiwgIk5vIHN1Y2ggZGV2aWNlIG9yIGFkZHJlc3MiICkKIF9fQklPTklDX0VSUkRFRiggRTJCSUcgICAgICAgICAgLCAgIDcsICJBcmd1bWVudCBsaXN0IHRvbyBsb25nIiApCiBfX0JJT05JQ19FUlJERUYoIEVOT0VYRUMgICAgICAgICwgICA4LCAiRXhlYyBmb3JtYXQgZXJyb3IiICkKLV9fQklPTklDX0VSUkRFRiggRUJBREYgICAgICAgICAgLCAgIDksICJCYWQgZmlsZSBudW1iZXIiICkKK19fQklPTklDX0VSUkRFRiggRUJBREYgICAgICAgICAgLCAgIDksICJCYWQgZmlsZSBkZXNjcmlwdG9yIiApCiBfX0JJT05JQ19FUlJERUYoIEVDSElMRCAgICAgICAgICwgIDEwLCAiTm8gY2hpbGQgcHJvY2Vzc2VzIiApCiBfX0JJT05JQ19FUlJERUYoIEVBR0FJTiAgICAgICAgICwgIDExLCAiVHJ5IGFnYWluIiApCiBfX0JJT05JQ19FUlJERUYoIEVOT01FTSAgICAgICAgICwgIDEyLCAiT3V0IG9mIG1lbW9yeSIgKQpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9fc3lzdGVtX3Byb3BlcnRpZXMuaCBiL2xpYmMvaW5jbHVkZS9zeXMvX3N5c3RlbV9wcm9wZXJ0aWVzLmgKaW5kZXggMDM0OWU0Yy4uODA4NjAyMCAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy9fc3lzdGVtX3Byb3BlcnRpZXMuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL19zeXN0ZW1fcHJvcGVydGllcy5oCkBAIC01MCw3ICs1MCw3IEBACiAKIF9fQkVHSU5fREVDTFMKIAotc3RydWN0IHByb3BfbXNnIAorc3RydWN0IHByb3BfbXNnCiB7CiAgICAgdW5zaWduZWQgY21kOwogICAgIGNoYXIgbmFtZVtQUk9QX05BTUVfTUFYXTsKQEAgLTU4LDcgKzU4LDcgQEAKIH07CiAKICNkZWZpbmUgUFJPUF9NU0dfU0VUUFJPUCAxCi0gICAgCisKIC8qCiAqKiBSdWxlczoKICoqCkBAIC04MCw4ICs4MCw4IEBACiAKICNkZWZpbmUgUFJPUF9QQVRIX1JBTURJU0tfREVGQVVMVCAgIi9kZWZhdWx0LnByb3AiCiAjZGVmaW5lIFBST1BfUEFUSF9TWVNURU1fQlVJTEQgICAgICIvc3lzdGVtL2J1aWxkLnByb3AiCi0jZGVmaW5lIFBST1BfUEFUSF9TWVNURU1fREVGQVVMVCAgICIvc3lzdGVtL2RlZmF1bHQucHJvcCIKICNkZWZpbmUgUFJPUF9QQVRIX1ZFTkRPUl9CVUlMRCAgICAgIi92ZW5kb3IvYnVpbGQucHJvcCIKKyNkZWZpbmUgUFJPUF9QQVRIX0JPT1RJTUFHRV9CVUlMRCAgIi9idWlsZC5wcm9wIgogI2RlZmluZSBQUk9QX1BBVEhfTE9DQUxfT1ZFUlJJREUgICAiL2RhdGEvbG9jYWwucHJvcCIKICNkZWZpbmUgUFJPUF9QQVRIX0ZBQ1RPUlkgICAgICAgICAgIi9mYWN0b3J5L2ZhY3RvcnkucHJvcCIKIApAQCAtOTgsNiArOTgsMzAgQEAKICovCiBpbnQgX19zeXN0ZW1fcHJvcGVydHlfYXJlYV9pbml0KCk7CiAKKy8qIFJlYWQgdGhlIGdsb2JhbCBzZXJpYWwgbnVtYmVyIG9mIHRoZSBzeXN0ZW0gcHJvcGVydGllcworKioKKyoqIENhbGxlZCB0byBwcmVkaWN0IGlmIGEgc2VyaWVzIG9mIGNhY2hlZCBfX3N5c3RlbV9wcm9wZXJ0eV9maW5kCisqKiBvYmplY3RzIHdpbGwgaGF2ZSBzZWVuIF9fc3lzdGVtX3Byb3BlcnR5X3NlcmlhbCB2YWx1ZXMgY2hhbmdlLgorKiogQnV0IGFsc28gYWlkcyB0aGUgY29udmVyc2UsIGFzIGNoYW5nZXMgaW4gdGhlIGdsb2JhbCBzZXJpYWwgY2FuCisqKiBhbHNvIGJlIHVzZWQgdG8gcHJlZGljdCBpZiBhIGZhaWxlZCBfX3N5c3RlbV9wcm9wZXJ0eV9maW5kCisqKiBjb3VsZCBpbi10dXJuIG5vdyBmaW5kIGEgbmV3IG9iamVjdDsgdGh1cyBwcmV2ZW50aW5nIHRoZQorKiogY3ljbGVzIG9mIGVmZm9ydCB0byBwb2xsIF9fc3lzdGVtX3Byb3BlcnR5X2ZpbmQuCisqKgorKiogVHlwaWNhbGx5IGNhbGxlZCBhdCBiZWdpbm5pbmcgb2YgYSBjYWNoZSBjeWNsZSB0byBzaWduYWwgaWYgX2FueV8gcG9zc2libGUKKyoqIGNoYW5nZXMgaGF2ZSBvY2N1cnJlZCBzaW5jZSBsYXN0LiBJZiB0aGVyZSBpcywgb25lIG1heSBjaGVjayBlYWNoIGluZGl2aWR1YWwKKyoqIF9fc3lzdGVtX3Byb3BlcnR5X3NlcmlhbCB0byBjb25maXJtIGRpcnR5LCBvciBfX3N5c3RlbV9wcm9wZXJ0eV9maW5kCisqKiB0byBjaGVjayBpZiB0aGUgcHJvcGVydHkgbm93IGV4aXN0cy4gSWYgYSBjYWxsIHRvIF9fc3lzdGVtX3Byb3BlcnR5X2FkZAorKiogb3IgX19zeXN0ZW1fcHJvcGVydHlfdXBkYXRlIGhhcyBjb21wbGV0ZWQgYmV0d2VlbiB0d28gY2FsbHMgdG8KKyoqIF9fc3lzdGVtX3Byb3BlcnR5X2FyZWFfc2VyaWFsIHRoZW4gdGhlIHNlY29uZCBjYWxsIHdpbGwgcmV0dXJuIGEgbGFyZ2VyCisqKiB2YWx1ZSB0aGFuIHRoZSBmaXJzdCBjYWxsLiBCZXdhcmUgb2YgcmFjZSBjb25kaXRpb25zIGFzIGNoYW5nZXMgdG8gdGhlCisqKiBwcm9wZXJ0aWVzIGFyZSBub3QgYXRvbWljLCB0aGUgbWFpbiB2YWx1ZSBvZiB0aGlzIGNhbGwgaXMgdG8gZGV0ZXJtaW5lCisqKiB3aGV0aGVyIHRoZSBleHBlbnNpdmUgX19zeXN0ZW1fcHJvcGVydHlfZmluZCBpcyB3b3J0aCByZXRyeWluZyB0byBzZWUgaWYKKyoqIGEgcHJvcGVydHkgbm93IGV4aXN0cy4KKyoqCisqKiBSZXR1cm5zIHRoZSBzZXJpYWwgbnVtYmVyIG9uIHN1Y2Nlc3MsIC0xIG9uIGVycm9yLgorKi8KK3Vuc2lnbmVkIGludCBfX3N5c3RlbV9wcm9wZXJ0eV9hcmVhX3NlcmlhbCgpOworCiAvKiBBZGQgYSBuZXcgc3lzdGVtIHByb3BlcnR5LiAgQ2FuIG9ubHkgYmUgZG9uZSBieSBhIHNpbmdsZQogKiogcHJvY2VzcyB0aGF0IGhhcyB3cml0ZSBhY2Nlc3MgdG8gdGhlIHByb3BlcnR5IGFyZWEsIGFuZAogKiogdGhhdCBwcm9jZXNzIG11c3QgaGFuZGxlIHNlcXVlbmNpbmcgdG8gZW5zdXJlIHRoZSBwcm9wZXJ0eQpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9hdG9taWNzLmggYi9saWJjL2luY2x1ZGUvc3lzL2F0b21pY3MuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zOGFiMzY2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9pbmNsdWRlL3N5cy9hdG9taWNzLmgKQEAgLTAsMCArMSw0NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIF9TWVNfQVRPTUlDU19IXworI2RlZmluZSBfU1lTX0FUT01JQ1NfSF8KKworLyoKKyAqIFRoZXNlIGdvdCBwcm9wZXIgb3V0IG9mIGxpbmUgZGVmaW5pdGlvbnMgaW4gTC4gUHV0dGluZyB0aGUgaW5saW5lIGRlZmluaXRpb25zCisgKiBiYWNrIGZvciBvbGQgdGFyZ2V0cyBicmluZ3MgdXMgY2xvc2VyIHRvIGJlaW5nIGFibGUgdG8gdXNlIG9uZSBzZXQgb2YgaGVhZGVycworICogZm9yIGFsbCBBUEkgbGV2ZWxzLgorICoKKyAqIFRoZSBvdGhlciBpbmxpbmVzIHdlIHB1dCBiYWNrIHdlbnQgaW4gdG8gdGhlaXIgYXBwcm9wcmlhdGUgaGVhZGVycywgYnV0IHRoZQorICogc3lzL2F0b21pY3MuaCBoZWFkZXIgd2FzIHJlbW92ZWQsIHNvIHdlJ2xsIGp1c3QgYWRkIHRoZXNlIHNvbWV3aGVyZSB3ZSBjYW4gYmUKKyAqIHN1cmUgdGhleSB3aWxsIGJlIGluY2x1ZGVkLgorICovCisjaWYgX19BTkRST0lEX0FQSV9fIDwgMjEKKyNpbmNsdWRlIDxhbmRyb2lkL2xlZ2FjeV9zeXNfYXRvbWljc19pbmxpbmVzLmg+CisjZW5kaWYKKworI2VuZGlmIC8qIF9TWVNfQVRPTUlDU19IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9jYWNoZWN0bC5oIGIvbGliYy9pbmNsdWRlL3N5cy9jYWNoZWN0bC5oCmluZGV4IDU3ZTZhZTcuLmEzMDJmZjggMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvY2FjaGVjdGwuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL2NhY2hlY3RsLmgKQEAgLTMxLDYgKzMxLDUgQEAKICNpZmRlZiBfX21pcHNfXwogI2luY2x1ZGUgPGFzbS9jYWNoZWN0bC5oPgogZXh0ZXJuIGludCBfX2NhY2hlY3RsICh2b2lkICphZGRyLCBfX2NvbnN0IGludCBuYnl0ZXMsIF9fY29uc3QgaW50IG9wKTsKLWV4dGVybiBpbnQgX2ZsdXNoX2NhY2hlIChjaGFyICphZGRyLCBfX2NvbnN0IGludCBuYnl0ZXMsIF9fY29uc3QgaW50IG9wKTsKICNlbmRpZgogI2VuZGlmIC8qIHN5cy9jYWNoZWN0bC5oICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL2NkZWZzLmggYi9saWJjL2luY2x1ZGUvc3lzL2NkZWZzLmgKaW5kZXggNTA0ZTQzOS4uMDQ2MTNmNCAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy9jZGVmcy5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvY2RlZnMuaApAQCAtNzcsNyArNzcsOSBAQAogI2RlZmluZQlfX0dOVUNfUFJFUkVRKHgsIHkpCTAKICNlbmRpZgogCi0jaW5jbHVkZSA8c3lzL2NkZWZzX2VsZi5oPgorI2RlZmluZSBfX3N0cm9uZ19hbGlhcyhhbGlhcywgc3ltKSBcCisgICAgX19hc21fXygiLmdsb2JhbCAiICNhbGlhcyAiXG4iIFwKKyAgICAgICAgICAgICNhbGlhcyAiID0gIiAjc3ltKTsKIAogI2lmIGRlZmluZWQoX19jcGx1c3BsdXMpCiAjZGVmaW5lCV9fQkVHSU5fREVDTFMJCWV4dGVybiAiQyIgewpAQCAtMjYzLDEzICsyNjUsNiBAQAogI2VuZGlmCiAjZW5kaWYgLyogIShfX1NURENfVkVSU0lPTl9fID49IDE5OTkwMUwpICovCiAKLSNpZiBkZWZpbmVkKF9LRVJORUwpCi0jaWYgZGVmaW5lZChOT19LRVJORUxfUkNTSURTKQotI3VuZGVmIF9fS0VSTkVMX1JDU0lECi0jZGVmaW5lCV9fS0VSTkVMX1JDU0lEKF9uLCBfcykJCS8qIG5vdGhpbmcgKi8KLSNlbmRpZiAvKiBOT19LRVJORUxfUkNTSURTICovCi0jZW5kaWYgLyogX0tFUk5FTCAqLwotCiAvKgogICogQSBiYXJyaWVyIHRvIHN0b3AgdGhlIG9wdGltaXplciBmcm9tIG1vdmluZyBjb2RlIG9yIGFzc3VtZSBsaXZlCiAgKiByZWdpc3RlciB2YWx1ZXMuIFRoaXMgaXMgZ2NjIHNwZWNpZmljLCB0aGUgdmVyc2lvbiBpcyBtb3JlIG9yIGxlc3MKQEAgLTM0MCwxMyArMzM1LDE1IEBACiAjZW5kaWYKIAogI2lmIF9fR05VQ19QUkVSRVEoNCwgMykKLSNkZWZpbmUgX19lcnJvcmRlY2wobmFtZSwgbXNnKSBleHRlcm4gdm9pZCBuYW1lKHZvaWQpIF9fYXR0cmlidXRlX18oKF9fZXJyb3JfXyhtc2cpKSkKKyNkZWZpbmUgX19lcnJvcmF0dHIobXNnKSBfX2F0dHJpYnV0ZV9fKChfX2Vycm9yX18obXNnKSkpCiAjZGVmaW5lIF9fd2FybmF0dHIobXNnKSBfX2F0dHJpYnV0ZV9fKChfX3dhcm5pbmdfXyhtc2cpKSkKICNlbHNlCi0jZGVmaW5lIF9fZXJyb3JkZWNsKG5hbWUsIG1zZykgZXh0ZXJuIHZvaWQgbmFtZSh2b2lkKQorI2RlZmluZSBfX2Vycm9yYXR0cihtc2cpCiAjZGVmaW5lIF9fd2FybmF0dHIobXNnKQogI2VuZGlmCiAKKyNkZWZpbmUgX19lcnJvcmRlY2wobmFtZSwgbXNnKSBleHRlcm4gdm9pZCBuYW1lKHZvaWQpIF9fZXJyb3JhdHRyKG1zZykKKwogLyoKICAqIFNvbWUgQlNEIHNvdXJjZSBuZWVkcyB0aGVzZSBtYWNyb3MuCiAgKiBPcmlnaW5hbGx5IHRoZXkgZW1iZWRkZWQgdGhlIHJjcyB2ZXJzaW9ucyBvZiBlYWNoIHNvdXJjZSBmaWxlCkBAIC0zNTgsOSArMzU1LDQxIEBACiAjZGVmaW5lIF9fUkNTSUQoX3MpIC8qIG5vdGhpbmcgKi8KICNkZWZpbmUgX19TQ0NTSUQoX3MpIC8qIG5vdGhpbmcgKi8KIAorLyoKKyAqIF9CU0RfU09VUkNFIGFuZCBfR05VX1NPVVJDRSBhcmUgZXhwZWN0ZWQgdG8gYmUgZGVmaW5lZCBieSBjYWxsZXJzIGJlZm9yZQorICogYW55IHN0YW5kYXJkIGhlYWRlciBmaWxlIGlzIGluY2x1ZGVkLiBJbiB0aG9zZSBoZWFkZXIgZmlsZXMgd2UgdGVzdAorICogYWdhaW5zdCBfX1VTRV9CU0QgYW5kIF9fVVNFX0dOVS4gZ2xpYmMgZG9lcyB0aGlzIGluIDxmZWF0dXJlcy5oPiBidXQgd2UKKyAqIGRvIGl0IGluIDxzeXMvY2RlZnMuaD4gaW5zdGVhZCBiZWNhdXNlIHRoYXQncyB3aGVyZSBvdXIgZXhpc3RpbmcKKyAqIF9QT1NJWF9DX1NPVVJDRSB0ZXN0cyB3ZXJlLCBhbmQgd2UncmUgYWxyZWFkeSBjb25maWRlbnQgdGhhdCA8c3lzL2NkZWZzLmg+CisgKiBpcyBpbmNsdWRlZCBldmVyeXdoZXJlIGl0IHNob3VsZCBiZS4KKyAqCisgKiBUaGUgX0dOVV9TT1VSQ0UgdGVzdCBuZWVkcyB0byBjb21lIGJlZm9yZSBhbnkgX0JTRF9TT1VSQ0Ugb3IgX1BPU0lYKiB0ZXN0cworICogYmVjYXVzZSBfR05VX1NPVVJDRSBpbXBsaWVzIGV2ZXJ5dGhpbmcgZWxzZS4KKyAqLworI2lmIGRlZmluZWQoX0dOVV9TT1VSQ0UpCisjIGRlZmluZSBfX1VTRV9HTlUgMQorIyB1bmRlZiBfUE9TSVhfU09VUkNFCisjIGRlZmluZSBfUE9TSVhfU09VUkNFIDEKKyMgdW5kZWYgX1BPU0lYX0NfU09VUkNFCisjIGRlZmluZSBfUE9TSVhfQ19TT1VSQ0UgMjAwODA5TAorIyB1bmRlZiBfQlNEX1NPVVJDRQorIyBkZWZpbmUgX0JTRF9TT1VSQ0UgMQorI2VuZGlmCisKKyNpZiBkZWZpbmVkKF9CU0RfU09VUkNFKQorIyBkZWZpbmUgX19VU0VfQlNEIDEKKyNlbmRpZgorCisvKgorICogX0ZJTEVfT0ZGU0VUX0JJVFMgNjQgc3VwcG9ydC4KKyAqLworI2lmICFkZWZpbmVkKF9fTFA2NF9fKSAmJiBkZWZpbmVkKF9GSUxFX09GRlNFVF9CSVRTKQorI2lmIF9GSUxFX09GRlNFVF9CSVRTID09IDY0CisjZGVmaW5lIF9fVVNFX0ZJTEVfT0ZGU0VUNjQgMQorI2VuZGlmCisjZW5kaWYKKwogLyotCi0gKiBUaGUgZm9sbG93aW5nIGRlZmluaXRpb25zIGFyZSBhbiBleHRlbnNpb24gb2YgdGhlIGJlaGF2aW9yIG9yaWdpbmFsbHkKLSAqIGltcGxlbWVudGVkIGluIDxzeXMvX3Bvc2l4Lmg+LCBidXQgd2l0aCBhIGRpZmZlcmVudCBsZXZlbCBvZiBncmFudWxhcml0eS4KICAqIFBPU0lYLjEgcmVxdWlyZXMgdGhhdCB0aGUgbWFjcm9zIHdlIHRlc3QgYmUgZGVmaW5lZCBiZWZvcmUgYW55IHN0YW5kYXJkCiAgKiBoZWFkZXIgZmlsZSBpcyBpbmNsdWRlZC4KICAqCkBAIC01MzgsNCArNTY3LDEwIEBACiAvKiBVc2VkIHRvIHJlbmFtZSBmdW5jdGlvbnMgc28gdGhhdCB0aGUgY29tcGlsZXIgZW1pdHMgYSBjYWxsIHRvICd4JyByYXRoZXIgdGhhbiB0aGUgZnVuY3Rpb24gdGhpcyB3YXMgYXBwbGllZCB0by4gKi8KICNkZWZpbmUgX19SRU5BTUUoeCkgX19hc21fXygjeCkKIAorI2lmIF9fQU5EUk9JRF9BUElfXyA+PSAyMQorI2RlZmluZSBfQklPTklDX05PVF9CRUZPUkVfMjEoeCkgeAorI2Vsc2UKKyNkZWZpbmUgX0JJT05JQ19OT1RfQkVGT1JFXzIxKHgpCisjZW5kaWYgLyogX19BTkRST0lEX0FQSV9fID49IDIxICovCisKICNlbmRpZiAvKiAhX1NZU19DREVGU19IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9jZGVmc19lbGYuaCBiL2xpYmMvaW5jbHVkZS9zeXMvY2RlZnNfZWxmLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZiYjBhNTcuLjAwMDAwMDAKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy9jZGVmc19lbGYuaAorKysgL2Rldi9udWxsCkBAIC0xLDQ3ICswLDAgQEAKLS8qCSROZXRCU0Q6IGNkZWZzX2VsZi5oLHYgMS4yMiAyMDA1LzAyLzI2IDIyOjI1OjM0IHBlcnJ5IEV4cCAkCSovCi0KLS8qCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTUsIDE5OTYgQ2FybmVnaWUtTWVsbG9uIFVuaXZlcnNpdHkuCi0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIEF1dGhvcjogQ2hyaXMgRy4gRGVtZXRyaW91Ci0gKgotICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSBhbmQgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGFuZAotICogaXRzIGRvY3VtZW50YXRpb24gaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgYm90aCB0aGUgY29weXJpZ2h0Ci0gKiBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyIGluIGFsbCBjb3BpZXMgb2YgdGhlCi0gKiBzb2Z0d2FyZSwgZGVyaXZhdGl2ZSB3b3JrcyBvciBtb2RpZmllZCB2ZXJzaW9ucywgYW5kIGFueSBwb3J0aW9ucwotICogdGhlcmVvZiwgYW5kIHRoYXQgYm90aCBub3RpY2VzIGFwcGVhciBpbiBzdXBwb3J0aW5nIGRvY3VtZW50YXRpb24uCi0gKgotICogQ0FSTkVHSUUgTUVMTE9OIEFMTE9XUyBGUkVFIFVTRSBPRiBUSElTIFNPRlRXQVJFIElOIElUUyAiQVMgSVMiCi0gKiBDT05ESVRJT04uICBDQVJORUdJRSBNRUxMT04gRElTQ0xBSU1TIEFOWSBMSUFCSUxJVFkgT0YgQU5ZIEtJTkQKLSAqIEZPUiBBTlkgREFNQUdFUyBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRS4KLSAqCi0gKiBDYXJuZWdpZSBNZWxsb24gcmVxdWVzdHMgdXNlcnMgb2YgdGhpcyBzb2Z0d2FyZSB0byByZXR1cm4gdG8KLSAqCi0gKiAgU29mdHdhcmUgRGlzdHJpYnV0aW9uIENvb3JkaW5hdG9yICBvciAgU29mdHdhcmUuRGlzdHJpYnV0aW9uQENTLkNNVS5FRFUKLSAqICBTY2hvb2wgb2YgQ29tcHV0ZXIgU2NpZW5jZQotICogIENhcm5lZ2llIE1lbGxvbiBVbml2ZXJzaXR5Ci0gKiAgUGl0dHNidXJnaCBQQSAxNTIxMy0zODkwCi0gKgotICogYW55IGltcHJvdmVtZW50cyBvciBleHRlbnNpb25zIHRoYXQgdGhleSBtYWtlIGFuZCBncmFudCBDYXJuZWdpZSB0aGUKLSAqIHJpZ2h0cyB0byByZWRpc3RyaWJ1dGUgdGhlc2UgY2hhbmdlcy4KLSAqLwotCi0jaWZuZGVmIF9TWVNfQ0RFRlNfRUxGX0hfCi0jZGVmaW5lCV9TWVNfQ0RFRlNfRUxGX0hfCi0KLSNkZWZpbmUgX19zdHJvbmdfYWxpYXMoYWxpYXMsIHN5bSkgXAotICAgIF9fYXNtX18oIi5nbG9iYWwgIiAjYWxpYXMgIlxuIiBcCi0gICAgICAgICAgICAjYWxpYXMgIiA9ICIgI3N5bSk7Ci0KLSNkZWZpbmUgX193ZWFrX2FsaWFzKGFsaWFzLHN5bSkgXAotICAgIF9fYXNtX18oIi53ZWFrICIgI2FsaWFzICJcbiIgXAotICAgICAgICAgICAgI2FsaWFzICIgPSAiICNzeW0pOwotCi0vKiBXZSB1c2UgX193YXJuYXR0ciBpbnN0ZWFkIG9mIF9fd2Fybl9yZWZlcmVuY2VzLgotICogVE9ETzogcmVtb3ZlIHRoaXMgYW5kIHB1dCBhbiBlbXB0eSBkZWZpbml0aW9uIGluIG9uZSBvZiB0aGUgdXBzdHJlYW0tKiBjb21wYXRpYmlsaXR5IGhlYWRlcnMuCi0gKi8KLSNkZWZpbmUJX193YXJuX3JlZmVyZW5jZXMoc3ltLG1zZykJCQkJCVwKLSAgICAvKl9fYXNtX18oIi5zZWN0aW9uIC5nbnUud2FybmluZy4iICNzeW0gIlxuXHQuYXNjaWkgXCIiIG1zZyAiXCJcblx0LnRleHQiKTsqLwotCi0jZW5kaWYgLyogIV9TWVNfQ0RFRlNfRUxGX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL2VuZGlhbi5oIGIvbGliYy9pbmNsdWRlL3N5cy9lbmRpYW4uaAppbmRleCBiZTRjOTA1Li4yZmQ0ODBkIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3lzL2VuZGlhbi5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvZW5kaWFuLmgKQEAgLTEsNSArMSwzIEBACi0vKgkkT3BlbkJTRDogZW5kaWFuLmgsdiAxLjE3IDIwMDYvMDEvMDYgMTg6NTM6MDUgbWlsbGVydCBFeHAgJAkqLwotCiAvKi0KICAqIENvcHlyaWdodCAoYykgMTk5NyBOaWtsYXMgSGFsbHF2aXN0LiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCkBAIC0yNCwxNjkgKzIyLDMwIEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKLS8qCi0gKiBHZW5lcmljIGRlZmluaXRpb25zIGZvciBsaXR0bGUtIGFuZCBiaWctZW5kaWFuIHN5c3RlbXMuICBPdGhlciBlbmRpYW5lc3NlcwotICogaGFzIHRvIGJlIGRlYWx0IHdpdGggaW4gdGhlIHNwZWNpZmljIG1hY2hpbmUvZW5kaWFuLmggZmlsZSBmb3IgdGhhdCBwb3J0LgotICoKLSAqIFRoaXMgZmlsZSBpcyBtZWFudCB0byBiZSBpbmNsdWRlZCBmcm9tIGEgbGl0dGxlLSBvciBiaWctZW5kaWFuIHBvcnQncwotICogbWFjaGluZS9lbmRpYW4uaCBhZnRlciBzZXR0aW5nIF9CWVRFX09SREVSIHRvIGVpdGhlciAxMjM0IGZvciBsaXR0bGUgZW5kaWFuCi0gKiBvciA0MzIxIGZvciBiaWcuLgotICovCi0KICNpZm5kZWYgX1NZU19FTkRJQU5fSF8KICNkZWZpbmUgX1NZU19FTkRJQU5fSF8KIAogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgotI2luY2x1ZGUgPG1hY2hpbmUvZW5kaWFuLmg+CiAKICNpbmNsdWRlIDxzdGRpbnQuaD4KIAogI2RlZmluZSBfTElUVExFX0VORElBTgkxMjM0CiAjZGVmaW5lIF9CSUdfRU5ESUFOCTQzMjEKICNkZWZpbmUgX1BEUF9FTkRJQU4JMzQxMgorI2RlZmluZSBfQllURV9PUkRFUiBfTElUVExFX0VORElBTgorI2RlZmluZSBfX0xJVFRMRV9FTkRJQU5fQklURklFTEQKIAotI2lmIF9fQlNEX1ZJU0lCTEUKLSNkZWZpbmUgTElUVExFX0VORElBTglfTElUVExFX0VORElBTgotI2RlZmluZSBCSUdfRU5ESUFOCV9CSUdfRU5ESUFOCi0jZGVmaW5lIFBEUF9FTkRJQU4JX1BEUF9FTkRJQU4KLSNkZWZpbmUgQllURV9PUkRFUglfQllURV9PUkRFUgorI2lmbmRlZiBfX0xJVFRMRV9FTkRJQU4KKyNkZWZpbmUgX19MSVRUTEVfRU5ESUFOIF9MSVRUTEVfRU5ESUFOCiAjZW5kaWYKLQotI2lmZGVmIF9fR05VQ19fCi0KLSNkZWZpbmUgX19zd2FwMTZnZW4oeCkgX19zdGF0ZW1lbnQoewkJCQkJXAotCV9fdWludDE2X3QgX19zd2FwMTZnZW5feCA9ICh4KTsJCQkJCVwKLQkJCQkJCQkJCVwKLQkoX191aW50MTZfdCkoKF9fc3dhcDE2Z2VuX3ggJiAweGZmKSA8PCA4IHwJCQlcCi0JICAgIChfX3N3YXAxNmdlbl94ICYgMHhmZjAwKSA+PiA4KTsJCQkJXAotfSkKLQotI2RlZmluZSBfX3N3YXAzMmdlbih4KSBfX3N0YXRlbWVudCh7CQkJCQlcCi0JX191aW50MzJfdCBfX3N3YXAzMmdlbl94ID0gKHgpOwkJCQkJXAotCQkJCQkJCQkJXAotCShfX3VpbnQzMl90KSgoX19zd2FwMzJnZW5feCAmIDB4ZmYpIDw8IDI0IHwJCQlcCi0JICAgIChfX3N3YXAzMmdlbl94ICYgMHhmZjAwKSA8PCA4IHwJCQkJXAotCSAgICAoX19zd2FwMzJnZW5feCAmIDB4ZmYwMDAwKSA+PiA4IHwJCQkJXAotCSAgICAoX19zd2FwMzJnZW5feCAmIDB4ZmYwMDAwMDApID4+IDI0KTsJCQlcCi19KQotCi0jZGVmaW5lIF9fc3dhcDY0Z2VuKHgpIF9fc3RhdGVtZW50KHsJCQkJCVwKLQlfX3VpbnQ2NF90IF9fc3dhcDY0Z2VuX3ggPSAoeCk7CQkJCQlcCi0JCQkJCQkJCQlcCi0JKF9fdWludDY0X3QpKChfX3N3YXA2NGdlbl94ICYgMHhmZikgPDwgNTYgfAkJCVwKLQkgICAgKF9fc3dhcDY0Z2VuX3ggJiAweGZmMDBVTEwpIDw8IDQwIHwJCQkJXAotCSAgICAoX19zd2FwNjRnZW5feCAmIDB4ZmYwMDAwVUxMKSA8PCAyNCB8CQkJXAotCSAgICAoX19zd2FwNjRnZW5feCAmIDB4ZmYwMDAwMDBVTEwpIDw8IDggfAkJCVwKLQkgICAgKF9fc3dhcDY0Z2VuX3ggJiAweGZmMDAwMDAwMDBVTEwpID4+IDggfAkJCVwKLQkgICAgKF9fc3dhcDY0Z2VuX3ggJiAweGZmMDAwMDAwMDAwMFVMTCkgPj4gMjQgfAkJCVwKLQkgICAgKF9fc3dhcDY0Z2VuX3ggJiAweGZmMDAwMDAwMDAwMDAwVUxMKSA+PiA0MCB8CQlcCi0JICAgIChfX3N3YXA2NGdlbl94ICYgMHhmZjAwMDAwMDAwMDAwMDAwVUxMKSA+PiA1Nik7CQlcCi19KQotCi0jZWxzZSAvKiBfX0dOVUNfXyAqLwotCi0vKiBOb3RlIHRoYXQgdGhlc2UgbWFjcm9zIGV2YWx1YXRlIHRoZWlyIGFyZ3VtZW50cyBzZXZlcmFsIHRpbWVzLiAgKi8KLSNkZWZpbmUgX19zd2FwMTZnZW4oeCkJCQkJCQkJXAotICAgIChfX3VpbnQxNl90KSgoKF9fdWludDE2X3QpKHgpICYgMHhmZikgPDwgOCB8ICgoX191aW50MTZfdCkoeCkgJiAweGZmMDApID4+IDgpCi0KLSNkZWZpbmUgX19zd2FwMzJnZW4oeCkJCQkJCQkJXAotICAgIChfX3VpbnQzMl90KSgoKF9fdWludDMyX3QpKHgpICYgMHhmZikgPDwgMjQgfAkJCVwKLSAgICAoKF9fdWludDMyX3QpKHgpICYgMHhmZjAwKSA8PCA4IHwgKChfX3VpbnQzMl90KSh4KSAmIDB4ZmYwMDAwKSA+PiA4IHxcCi0gICAgKChfX3VpbnQzMl90KSh4KSAmIDB4ZmYwMDAwMDApID4+IDI0KQotCi0jZGVmaW5lIF9fc3dhcDY0Z2VuKHgpCQkJCQkJCVwKLQkoX191aW50NjRfdCkoKCgoX191aW50NjRfdCkoeCkgJiAweGZmKSA8PCA1NikgfAkJCVwKLQkgICAgKChfX3VpbnQ2NF90KSh4KSAmIDB4ZmYwMFVMTCkgPDwgNDAgfAkJCVwKLQkgICAgKChfX3VpbnQ2NF90KSh4KSAmIDB4ZmYwMDAwVUxMKSA8PCAyNCB8CQkJXAotCSAgICAoKF9fdWludDY0X3QpKHgpICYgMHhmZjAwMDAwMFVMTCkgPDwgOCB8CQkJXAotCSAgICAoKF9fdWludDY0X3QpKHgpICYgMHhmZjAwMDAwMDAwVUxMKSA+PiA4IHwJCQlcCi0JICAgICgoX191aW50NjRfdCkoeCkgJiAweGZmMDAwMDAwMDAwMFVMTCkgPj4gMjQgfAkJXAotCSAgICAoKF9fdWludDY0X3QpKHgpICYgMHhmZjAwMDAwMDAwMDAwMFVMTCkgPj4gNDAgfAkJXAotCSAgICAoKF9fdWludDY0X3QpKHgpICYgMHhmZjAwMDAwMDAwMDAwMDAwVUxMKSA+PiA1NikKLQotI2VuZGlmIC8qIF9fR05VQ19fICovCi0KLS8qCi0gKiBEZWZpbmUgTURfU1dBUCBpZiB5b3UgcHJvdmlkZSBzd2FwezE2LDMyfW1kIGZ1bmN0aW9ucy9tYWNyb3MgdGhhdCBhcmUKLSAqIG9wdGltaXplZCBmb3IgeW91ciBhcmNoaXRlY3R1cmUsICBUaGVzZSB3aWxsIGJlIHVzZWQgZm9yIHN3YXB7MTYsMzJ9Ci0gKiB1bmxlc3MgdGhlIGFyZ3VtZW50IGlzIGEgY29uc3RhbnQgYW5kIHdlIGFyZSB1c2luZyBHQ0MsIHdoZXJlIHdlIGNhbgotICogdGFrZSBhZHZhbnRhZ2Ugb2YgdGhlIENTRSBwaGFzZSBtdWNoIGJldHRlciBieSB1c2luZyB0aGUgZ2VuZXJpYyB2ZXJzaW9uLgotICovCi0jaWZkZWYgTURfU1dBUAotI2lmIF9fR05VQ19fCi0KLSNkZWZpbmUgX19zd2FwMTYoeCkgX19zdGF0ZW1lbnQoewkJCQkJXAotCV9fdWludDE2X3QgX19zd2FwMTZfeCA9ICh4KTsJCQkJCVwKLQkJCQkJCQkJCVwKLQlfX2J1aWx0aW5fY29uc3RhbnRfcCh4KSA/IF9fc3dhcDE2Z2VuKF9fc3dhcDE2X3gpIDoJCVwKLQkgICAgX19zd2FwMTZtZChfX3N3YXAxNl94KTsJCQkJCVwKLX0pCi0KLSNkZWZpbmUgX19zd2FwMzIoeCkgX19zdGF0ZW1lbnQoewkJCQkJXAotCV9fdWludDMyX3QgX19zd2FwMzJfeCA9ICh4KTsJCQkJCVwKLQkJCQkJCQkJCVwKLQlfX2J1aWx0aW5fY29uc3RhbnRfcCh4KSA/IF9fc3dhcDMyZ2VuKF9fc3dhcDMyX3gpIDoJCVwKLQkgICAgX19zd2FwMzJtZChfX3N3YXAzMl94KTsJCQkJCVwKLX0pCi0KLSNkZWZpbmUgX19zd2FwNjQoeCkgX19zdGF0ZW1lbnQoewkJCQkJXAotCV9fdWludDY0X3QgX19zd2FwNjRfeCA9ICh4KTsJCQkJCVwKLQkJCQkJCQkJCVwKLQlfX2J1aWx0aW5fY29uc3RhbnRfcCh4KSA/IF9fc3dhcDY0Z2VuKF9fc3dhcDY0X3gpIDoJCVwKLQkgICAgX19zd2FwNjRtZChfX3N3YXA2NF94KTsJCQkJCVwKLX0pCi0KLSNlbmRpZiAvKiBfX0dOVUNfXyAgKi8KLQotI2Vsc2UgLyogTURfU1dBUCAqLwotI2RlZmluZSBfX3N3YXAxNiBfX3N3YXAxNmdlbgotI2RlZmluZSBfX3N3YXAzMiBfX3N3YXAzMmdlbgotI2RlZmluZSBfX3N3YXA2NCBfX3N3YXA2NGdlbgotI2VuZGlmIC8qIE1EX1NXQVAgKi8KLQotI2RlZmluZSBfX3N3YXAxNl9tdWx0aSh2LCBuKSBkbyB7CQkJCQkJXAotCV9fc2l6ZV90IF9fc3dhcDE2X211bHRpX24gPSAobik7CQkJCVwKLQlfX3VpbnQxNl90ICpfX3N3YXAxNl9tdWx0aV92ID0gKHYpOwkJCQlcCi0JCQkJCQkJCQlcCi0Jd2hpbGUgKF9fc3dhcDE2X211bHRpX24pIHsJCQkJCVwKLQkJKl9fc3dhcDE2X211bHRpX3YgPSBzd2FwMTYoKl9fc3dhcDE2X211bHRpX3YpOwkJXAotCQlfX3N3YXAxNl9tdWx0aV92Kys7CQkJCQlcCi0JCV9fc3dhcDE2X211bHRpX24tLTsJCQkJCVwKLQl9CQkJCQkJCQlcCi19IHdoaWxlICgwKQotCi0jaWYgX19CU0RfVklTSUJMRQotI2RlZmluZSBzd2FwMTYgX19zd2FwMTYKLSNkZWZpbmUgc3dhcDMyIF9fc3dhcDMyCi0jZGVmaW5lIHN3YXA2NCBfX3N3YXA2NAotI2RlZmluZSBzd2FwMTZfbXVsdGkgX19zd2FwMTZfbXVsdGkKLSNlbmRpZiAvKiBfX0JTRF9WSVNJQkxFICovCi0KLSNpZiBfQllURV9PUkRFUiA9PSBfTElUVExFX0VORElBTgotCi0vKiBDYW4gYmUgb3ZlcnJpZGRlbiBieSBtYWNoaW5lL2VuZGlhbi5oIGJlZm9yZSBpbmNsdXNpb24gb2YgdGhpcyBmaWxlLiAgKi8KLSNpZm5kZWYgX1FVQURfSElHSFdPUkQKLSNkZWZpbmUgX1FVQURfSElHSFdPUkQgMQorI2lmbmRlZiBfX0JJR19FTkRJQU4KKyNkZWZpbmUgX19CSUdfRU5ESUFOIF9CSUdfRU5ESUFOCiAjZW5kaWYKLSNpZm5kZWYgX1FVQURfTE9XV09SRAotI2RlZmluZSBfUVVBRF9MT1dXT1JEIDAKLSNlbmRpZgorI2RlZmluZSBfX0JZVEVfT1JERVIgX0JZVEVfT1JERVIKIAotI2lmIF9fQlNEX1ZJU0lCTEUKLSNkZWZpbmUgaHRvYmUxNiBfX3N3YXAxNgotI2RlZmluZSBodG9iZTMyIF9fc3dhcDMyCi0jZGVmaW5lIGh0b2JlNjQgX19zd2FwNjQKLSNkZWZpbmUgYmV0b2gxNiBfX3N3YXAxNgotI2RlZmluZSBiZXRvaDMyIF9fc3dhcDMyCi0jZGVmaW5lIGJldG9oNjQgX19zd2FwNjQKLQotI2RlZmluZSBodG9sZTE2KHgpICh4KQotI2RlZmluZSBodG9sZTMyKHgpICh4KQotI2RlZmluZSBodG9sZTY0KHgpICh4KQotI2RlZmluZSBsZXRvaDE2KHgpICh4KQotI2RlZmluZSBsZXRvaDMyKHgpICh4KQotI2RlZmluZSBsZXRvaDY0KHgpICh4KQotI2VuZGlmIC8qIF9fQlNEX1ZJU0lCTEUgKi8KKyNkZWZpbmUgX19zd2FwMTYgX19idWlsdGluX2Jzd2FwMTYKKyNkZWZpbmUgX19zd2FwMzIgX19idWlsdGluX2Jzd2FwMzIKKyNkZWZpbmUgX19zd2FwNjQgX19idWlsdGluX2Jzd2FwNjQKIAogLyogZ2xpYmMgY29tcGF0aWJpbGl0eS4gKi8KIF9fQkVHSU5fREVDTFMKQEAgLTIwNSw2NyArNjQsMzUgQEAKICNkZWZpbmUgaHRvbnEoeCkgX19zd2FwNjQoeCkKICNkZWZpbmUgbnRvaHEoeCkgX19zd2FwNjQoeCkKIAotI2RlZmluZSBfX0xJVFRMRV9FTkRJQU5fQklURklFTEQKLQotI2VuZGlmIC8qIF9CWVRFX09SREVSICovCi0KLSNpZiBfQllURV9PUkRFUiA9PSBfQklHX0VORElBTgotCi0vKiBDYW4gYmUgb3ZlcnJpZGRlbiBieSBtYWNoaW5lL2VuZGlhbi5oIGJlZm9yZSBpbmNsdXNpb24gb2YgdGhpcyBmaWxlLiAgKi8KLSNpZm5kZWYgX1FVQURfSElHSFdPUkQKLSNkZWZpbmUgX1FVQURfSElHSFdPUkQgMAotI2VuZGlmCi0jaWZuZGVmIF9RVUFEX0xPV1dPUkQKLSNkZWZpbmUgX1FVQURfTE9XV09SRCAxCi0jZW5kaWYKLQogI2lmIF9fQlNEX1ZJU0lCTEUKLSNkZWZpbmUgaHRvbGUxNiBfX3N3YXAxNgotI2RlZmluZSBodG9sZTMyIF9fc3dhcDMyCi0jZGVmaW5lIGh0b2xlNjQgX19zd2FwNjQKLSNkZWZpbmUgbGV0b2gxNiBfX3N3YXAxNgotI2RlZmluZSBsZXRvaDMyIF9fc3dhcDMyCi0jZGVmaW5lIGxldG9oNjQgX19zd2FwNjQKKyNkZWZpbmUgTElUVExFX0VORElBTiBfTElUVExFX0VORElBTgorI2RlZmluZSBCSUdfRU5ESUFOIF9CSUdfRU5ESUFOCisjZGVmaW5lIFBEUF9FTkRJQU4gX1BEUF9FTkRJQU4KKyNkZWZpbmUgQllURV9PUkRFUiBfQllURV9PUkRFUgogCi0jZGVmaW5lIGh0b2JlMTYoeCkgKHgpCi0jZGVmaW5lIGh0b2JlMzIoeCkgKHgpCi0jZGVmaW5lIGh0b2JlNjQoeCkgKHgpCi0jZGVmaW5lIGJldG9oMTYoeCkgKHgpCi0jZGVmaW5lIGJldG9oMzIoeCkgKHgpCi0jZGVmaW5lIGJldG9oNjQoeCkgKHgpCi0jZW5kaWYgLyogX19CU0RfVklTSUJMRSAqLwotCi0jZGVmaW5lIGh0b25zKHgpICh4KQotI2RlZmluZSBodG9ubCh4KSAoeCkKLSNkZWZpbmUgbnRvaHMoeCkgKHgpCi0jZGVmaW5lIG50b2hsKHgpICh4KQotCi0vKiBCaW9uaWMgYWRkaXRpb25zICovCi0jZGVmaW5lIG50b2hxKHgpICh4KQotI2RlZmluZSBodG9ucSh4KSAoeCkKLQotI2RlZmluZSBfX0JJR19FTkRJQU5fQklURklFTEQKLQotI2VuZGlmIC8qIF9CWVRFX09SREVSICovCi0KLSNpZiBfX0JTRF9WSVNJQkxFCiAjZGVmaW5lCU5UT0hMKHgpICh4KSA9IG50b2hsKCh1X2ludDMyX3QpKHgpKQogI2RlZmluZQlOVE9IUyh4KSAoeCkgPSBudG9ocygodV9pbnQxNl90KSh4KSkKICNkZWZpbmUJSFRPTkwoeCkgKHgpID0gaHRvbmwoKHVfaW50MzJfdCkoeCkpCiAjZGVmaW5lCUhUT05TKHgpICh4KSA9IGh0b25zKCh1X2ludDE2X3QpKHgpKQotI2VuZGlmCiAKKyNkZWZpbmUgc3dhcDE2IF9fc3dhcDE2CisjZGVmaW5lIHN3YXAzMiBfX3N3YXAzMgorI2RlZmluZSBzd2FwNjQgX19zd2FwNjQKIAotI2RlZmluZSAgX19CWVRFX09SREVSICAgICAgIF9CWVRFX09SREVSCi0jaWZuZGVmICBfX0xJVFRMRV9FTkRJQU4KLSNkZWZpbmUgIF9fTElUVExFX0VORElBTiAgICBfTElUVExFX0VORElBTgotI2VuZGlmCi0jaWZuZGVmICBfX0JJR19FTkRJQU4KLSNkZWZpbmUgIF9fQklHX0VORElBTiAgICAgICBfQklHX0VORElBTgotI2VuZGlmCisjZGVmaW5lIGh0b2JlMTYgX19zd2FwMTYKKyNkZWZpbmUgaHRvYmUzMiBfX3N3YXAzMgorI2RlZmluZSBodG9iZTY0IF9fc3dhcDY0CisjZGVmaW5lIGJldG9oMTYgX19zd2FwMTYKKyNkZWZpbmUgYmV0b2gzMiBfX3N3YXAzMgorI2RlZmluZSBiZXRvaDY0IF9fc3dhcDY0CiAKKyNkZWZpbmUgaHRvbGUxNih4KSAoeCkKKyNkZWZpbmUgaHRvbGUzMih4KSAoeCkKKyNkZWZpbmUgaHRvbGU2NCh4KSAoeCkKKyNkZWZpbmUgbGV0b2gxNih4KSAoeCkKKyNkZWZpbmUgbGV0b2gzMih4KSAoeCkKKyNkZWZpbmUgbGV0b2g2NCh4KSAoeCkKIAotI2lmZGVmIF9fQlNEX1ZJU0lCTEUKIC8qCiAgKiBnbGliYy1jb21wYXRpYmxlIGJlWFh0b2gvbGVYWHRvaCBzeW5vbnltcyBmb3IgaHRvYmVYWC9odG9sZVhYLgogICogVGhlIEJTRHMgZXhwb3J0IGJvdGggc2V0cyBvZiBuYW1lcywgYmlvbmljIGhpc3RvcmljYWxseSBvbmx5CkBAIC0yNzgsNiArMTA1LDYgQEAKICNkZWZpbmUgbGUxNnRvaCh4KSBodG9sZTE2KHgpCiAjZGVmaW5lIGxlMzJ0b2goeCkgaHRvbGUzMih4KQogI2RlZmluZSBsZTY0dG9oKHgpIGh0b2xlNjQoeCkKLSNlbmRpZgorI2VuZGlmIC8qIF9fQlNEX1ZJU0lCTEUgKi8KIAogI2VuZGlmIC8qIF9TWVNfRU5ESUFOX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL2ZpbGUuaCBiL2xpYmMvaW5jbHVkZS9zeXMvZmlsZS5oCmluZGV4IGNmMmY0YjEuLmY0MTRkMzQgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvZmlsZS5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvZmlsZS5oCkBAIC0yNSwxNCArMjUsMTkgQEAKICAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgogICogU1VDSCBEQU1BR0UuCiAgKi8KKwogI2lmbmRlZiBfU1lTX0ZJTEVfSF8KICNkZWZpbmUgX1NZU19GSUxFX0hfCiAKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KIAotLyogQU5EUk9JRDogbmVlZGVkIGZvciBmbG9jaygpICovCi0jaW5jbHVkZSA8dW5pc3RkLmg+CiAjaW5jbHVkZSA8ZmNudGwuaD4KIAorX19CRUdJTl9ERUNMUworCitpbnQgZmxvY2soaW50LCBpbnQpOworCitfX0VORF9ERUNMUworCiAjZW5kaWYgLyogX1NZU19GSUxFX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL2dsaWJjLXN5c2NhbGxzLmggYi9saWJjL2luY2x1ZGUvc3lzL2dsaWJjLXN5c2NhbGxzLmgKaW5kZXggNDU5ZWU3OC4uOTI2MjA5YiAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy9nbGliYy1zeXNjYWxscy5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvZ2xpYmMtc3lzY2FsbHMuaApAQCAtMTIsNiArMTIsNyBAQAogI2RlZmluZSBTWVNfYXJjaF9zcGVjaWZpY19zeXNjYWxsIF9fTlJfYXJjaF9zcGVjaWZpY19zeXNjYWxsCiAjZGVmaW5lIFNZU19iZGZsdXNoIF9fTlJfYmRmbHVzaAogI2RlZmluZSBTWVNfYmluZCBfX05SX2JpbmQKKyNkZWZpbmUgU1lTX2JwZiBfX05SX2JwZgogI2RlZmluZSBTWVNfYnJrIF9fTlJfYnJrCiAjZGVmaW5lIFNZU19jYXBnZXQgX19OUl9jYXBnZXQKICNkZWZpbmUgU1lTX2NhcHNldCBfX05SX2NhcHNldApAQCAtOTAsNiArOTEsNyBAQAogI2RlZmluZSBTWVNfZ2V0cGlkIF9fTlJfZ2V0cGlkCiAjZGVmaW5lIFNZU19nZXRwcGlkIF9fTlJfZ2V0cHBpZAogI2RlZmluZSBTWVNfZ2V0cHJpb3JpdHkgX19OUl9nZXRwcmlvcml0eQorI2RlZmluZSBTWVNfZ2V0cmFuZG9tIF9fTlJfZ2V0cmFuZG9tCiAjZGVmaW5lIFNZU19nZXRyZXNnaWQgX19OUl9nZXRyZXNnaWQKICNkZWZpbmUgU1lTX2dldHJlc3VpZCBfX05SX2dldHJlc3VpZAogI2RlZmluZSBTWVNfZ2V0cmxpbWl0IF9fTlJfZ2V0cmxpbWl0CkBAIC0xMzQsNiArMTM2LDcgQEAKICNkZWZpbmUgU1lTX2xzdGF0NjQgX19OUl9sc3RhdDY0CiAjZGVmaW5lIFNZU19tYWR2aXNlIF9fTlJfbWFkdmlzZQogI2RlZmluZSBTWVNfbWJpbmQgX19OUl9tYmluZAorI2RlZmluZSBTWVNfbWVtZmRfY3JlYXRlIF9fTlJfbWVtZmRfY3JlYXRlCiAjZGVmaW5lIFNZU19taWdyYXRlX3BhZ2VzIF9fTlJfbWlncmF0ZV9wYWdlcwogI2RlZmluZSBTWVNfbWluY29yZSBfX05SX21pbmNvcmUKICNkZWZpbmUgU1lTX21rZGlyIF9fTlJfbWtkaXIKQEAgLTIwMyw2ICsyMDYsNyBAQAogI2RlZmluZSBTWVNfcmVtb3ZleGF0dHIgX19OUl9yZW1vdmV4YXR0cgogI2RlZmluZSBTWVNfcmVuYW1lIF9fTlJfcmVuYW1lCiAjZGVmaW5lIFNZU19yZW5hbWVhdCBfX05SX3JlbmFtZWF0CisjZGVmaW5lIFNZU19yZW5hbWVhdDIgX19OUl9yZW5hbWVhdDIKICNkZWZpbmUgU1lTX3JlcXVlc3Rfa2V5IF9fTlJfcmVxdWVzdF9rZXkKICNkZWZpbmUgU1lTX3Jlc3RhcnRfc3lzY2FsbCBfX05SX3Jlc3RhcnRfc3lzY2FsbAogI2RlZmluZSBTWVNfcm1kaXIgX19OUl9ybWRpcgpAQCAtMjI2LDYgKzIzMCw3IEBACiAjZGVmaW5lIFNZU19zY2hlZF9zZXRwYXJhbSBfX05SX3NjaGVkX3NldHBhcmFtCiAjZGVmaW5lIFNZU19zY2hlZF9zZXRzY2hlZHVsZXIgX19OUl9zY2hlZF9zZXRzY2hlZHVsZXIKICNkZWZpbmUgU1lTX3NjaGVkX3lpZWxkIF9fTlJfc2NoZWRfeWllbGQKKyNkZWZpbmUgU1lTX3NlY2NvbXAgX19OUl9zZWNjb21wCiAjZGVmaW5lIFNZU19zZWxlY3QgX19OUl9zZWxlY3QKICNkZWZpbmUgU1lTX3NlbWN0bCBfX05SX3NlbWN0bAogI2RlZmluZSBTWVNfc2VtZ2V0IF9fTlJfc2VtZ2V0CkBAIC0zMzIsNiArMzM3LDcgQEAKICNkZWZpbmUgU1lTX2FybV9zeW5jX2ZpbGVfcmFuZ2UgX19OUl9hcm1fc3luY19maWxlX3JhbmdlCiAjZGVmaW5lIFNZU19iZGZsdXNoIF9fTlJfYmRmbHVzaAogI2RlZmluZSBTWVNfYmluZCBfX05SX2JpbmQKKyNkZWZpbmUgU1lTX2JwZiBfX05SX2JwZgogI2RlZmluZSBTWVNfYnJrIF9fTlJfYnJrCiAjZGVmaW5lIFNZU19jYXBnZXQgX19OUl9jYXBnZXQKICNkZWZpbmUgU1lTX2NhcHNldCBfX05SX2NhcHNldApAQCAtNDE0LDYgKzQyMCw3IEBACiAjZGVmaW5lIFNZU19nZXRwaWQgX19OUl9nZXRwaWQKICNkZWZpbmUgU1lTX2dldHBwaWQgX19OUl9nZXRwcGlkCiAjZGVmaW5lIFNZU19nZXRwcmlvcml0eSBfX05SX2dldHByaW9yaXR5CisjZGVmaW5lIFNZU19nZXRyYW5kb20gX19OUl9nZXRyYW5kb20KICNkZWZpbmUgU1lTX2dldHJlc2dpZCBfX05SX2dldHJlc2dpZAogI2RlZmluZSBTWVNfZ2V0cmVzZ2lkMzIgX19OUl9nZXRyZXNnaWQzMgogI2RlZmluZSBTWVNfZ2V0cmVzdWlkIF9fTlJfZ2V0cmVzdWlkCkBAIC00NjIsNiArNDY5LDcgQEAKICNkZWZpbmUgU1lTX2xzdGF0NjQgX19OUl9sc3RhdDY0CiAjZGVmaW5lIFNZU19tYWR2aXNlIF9fTlJfbWFkdmlzZQogI2RlZmluZSBTWVNfbWJpbmQgX19OUl9tYmluZAorI2RlZmluZSBTWVNfbWVtZmRfY3JlYXRlIF9fTlJfbWVtZmRfY3JlYXRlCiAjZGVmaW5lIFNZU19taW5jb3JlIF9fTlJfbWluY29yZQogI2RlZmluZSBTWVNfbWtkaXIgX19OUl9ta2RpcgogI2RlZmluZSBTWVNfbWtkaXJhdCBfX05SX21rZGlyYXQKQEAgLTUzMyw2ICs1NDEsNyBAQAogI2RlZmluZSBTWVNfcmVtb3ZleGF0dHIgX19OUl9yZW1vdmV4YXR0cgogI2RlZmluZSBTWVNfcmVuYW1lIF9fTlJfcmVuYW1lCiAjZGVmaW5lIFNZU19yZW5hbWVhdCBfX05SX3JlbmFtZWF0CisjZGVmaW5lIFNZU19yZW5hbWVhdDIgX19OUl9yZW5hbWVhdDIKICNkZWZpbmUgU1lTX3JlcXVlc3Rfa2V5IF9fTlJfcmVxdWVzdF9rZXkKICNkZWZpbmUgU1lTX3Jlc3RhcnRfc3lzY2FsbCBfX05SX3Jlc3RhcnRfc3lzY2FsbAogI2RlZmluZSBTWVNfcm1kaXIgX19OUl9ybWRpcgpAQCAtNTU2LDYgKzU2NSw3IEBACiAjZGVmaW5lIFNZU19zY2hlZF9zZXRwYXJhbSBfX05SX3NjaGVkX3NldHBhcmFtCiAjZGVmaW5lIFNZU19zY2hlZF9zZXRzY2hlZHVsZXIgX19OUl9zY2hlZF9zZXRzY2hlZHVsZXIKICNkZWZpbmUgU1lTX3NjaGVkX3lpZWxkIF9fTlJfc2NoZWRfeWllbGQKKyNkZWZpbmUgU1lTX3NlY2NvbXAgX19OUl9zZWNjb21wCiAjZGVmaW5lIFNZU19zZWxlY3QgX19OUl9zZWxlY3QKICNkZWZpbmUgU1lTX3NlbWN0bCBfX05SX3NlbWN0bAogI2RlZmluZSBTWVNfc2VtZ2V0IF9fTlJfc2VtZ2V0CkBAIC02NzksNiArNjg5LDcgQEAKICNkZWZpbmUgU1lTX2FsYXJtIF9fTlJfYWxhcm0KICNkZWZpbmUgU1lTX2JkZmx1c2ggX19OUl9iZGZsdXNoCiAjZGVmaW5lIFNZU19iaW5kIF9fTlJfYmluZAorI2RlZmluZSBTWVNfYnBmIF9fTlJfYnBmCiAjZGVmaW5lIFNZU19icmVhayBfX05SX2JyZWFrCiAjZGVmaW5lIFNZU19icmsgX19OUl9icmsKICNkZWZpbmUgU1lTX2NhY2hlY3RsIF9fTlJfY2FjaGVjdGwKQEAgLTc2Myw2ICs3NzQsNyBAQAogI2RlZmluZSBTWVNfZ2V0cG1zZyBfX05SX2dldHBtc2cKICNkZWZpbmUgU1lTX2dldHBwaWQgX19OUl9nZXRwcGlkCiAjZGVmaW5lIFNZU19nZXRwcmlvcml0eSBfX05SX2dldHByaW9yaXR5CisjZGVmaW5lIFNZU19nZXRyYW5kb20gX19OUl9nZXRyYW5kb20KICNkZWZpbmUgU1lTX2dldHJlc2dpZCBfX05SX2dldHJlc2dpZAogI2RlZmluZSBTWVNfZ2V0cmVzdWlkIF9fTlJfZ2V0cmVzdWlkCiAjZGVmaW5lIFNZU19nZXRybGltaXQgX19OUl9nZXRybGltaXQKQEAgLTgxMiw2ICs4MjQsNyBAQAogI2RlZmluZSBTWVNfbHN0YXQ2NCBfX05SX2xzdGF0NjQKICNkZWZpbmUgU1lTX21hZHZpc2UgX19OUl9tYWR2aXNlCiAjZGVmaW5lIFNZU19tYmluZCBfX05SX21iaW5kCisjZGVmaW5lIFNZU19tZW1mZF9jcmVhdGUgX19OUl9tZW1mZF9jcmVhdGUKICNkZWZpbmUgU1lTX21pZ3JhdGVfcGFnZXMgX19OUl9taWdyYXRlX3BhZ2VzCiAjZGVmaW5lIFNZU19taW5jb3JlIF9fTlJfbWluY29yZQogI2RlZmluZSBTWVNfbWtkaXIgX19OUl9ta2RpcgpAQCAtODg4LDYgKzkwMSw3IEBACiAjZGVmaW5lIFNZU19yZW1vdmV4YXR0ciBfX05SX3JlbW92ZXhhdHRyCiAjZGVmaW5lIFNZU19yZW5hbWUgX19OUl9yZW5hbWUKICNkZWZpbmUgU1lTX3JlbmFtZWF0IF9fTlJfcmVuYW1lYXQKKyNkZWZpbmUgU1lTX3JlbmFtZWF0MiBfX05SX3JlbmFtZWF0MgogI2RlZmluZSBTWVNfcmVxdWVzdF9rZXkgX19OUl9yZXF1ZXN0X2tleQogI2RlZmluZSBTWVNfcmVzZXJ2ZWQxNzcgX19OUl9yZXNlcnZlZDE3NwogI2RlZmluZSBTWVNfcmVzZXJ2ZWQxOTMgX19OUl9yZXNlcnZlZDE5MwpAQCAtOTE1LDYgKzkyOSw3IEBACiAjZGVmaW5lIFNZU19zY2hlZF9zZXRwYXJhbSBfX05SX3NjaGVkX3NldHBhcmFtCiAjZGVmaW5lIFNZU19zY2hlZF9zZXRzY2hlZHVsZXIgX19OUl9zY2hlZF9zZXRzY2hlZHVsZXIKICNkZWZpbmUgU1lTX3NjaGVkX3lpZWxkIF9fTlJfc2NoZWRfeWllbGQKKyNkZWZpbmUgU1lTX3NlY2NvbXAgX19OUl9zZWNjb21wCiAjZGVmaW5lIFNZU19zZW1jdGwgX19OUl9zZW1jdGwKICNkZWZpbmUgU1lTX3NlbWdldCBfX05SX3NlbWdldAogI2RlZmluZSBTWVNfc2Vtb3AgX19OUl9zZW1vcApAQCAtMTAzOSw2ICsxMDU0LDcgQEAKICNkZWZpbmUgU1lTX2Fmc19zeXNjYWxsIF9fTlJfYWZzX3N5c2NhbGwKICNkZWZpbmUgU1lTX2FsYXJtIF9fTlJfYWxhcm0KICNkZWZpbmUgU1lTX2JkZmx1c2ggX19OUl9iZGZsdXNoCisjZGVmaW5lIFNZU19icGYgX19OUl9icGYKICNkZWZpbmUgU1lTX2JyZWFrIF9fTlJfYnJlYWsKICNkZWZpbmUgU1lTX2JyayBfX05SX2JyawogI2RlZmluZSBTWVNfY2FwZ2V0IF9fTlJfY2FwZ2V0CkBAIC0xMTI3LDYgKzExNDMsNyBAQAogI2RlZmluZSBTWVNfZ2V0cG1zZyBfX05SX2dldHBtc2cKICNkZWZpbmUgU1lTX2dldHBwaWQgX19OUl9nZXRwcGlkCiAjZGVmaW5lIFNZU19nZXRwcmlvcml0eSBfX05SX2dldHByaW9yaXR5CisjZGVmaW5lIFNZU19nZXRyYW5kb20gX19OUl9nZXRyYW5kb20KICNkZWZpbmUgU1lTX2dldHJlc2dpZCBfX05SX2dldHJlc2dpZAogI2RlZmluZSBTWVNfZ2V0cmVzZ2lkMzIgX19OUl9nZXRyZXNnaWQzMgogI2RlZmluZSBTWVNfZ2V0cmVzdWlkIF9fTlJfZ2V0cmVzdWlkCkBAIC0xMTc3LDYgKzExOTQsNyBAQAogI2RlZmluZSBTWVNfbHN0YXQ2NCBfX05SX2xzdGF0NjQKICNkZWZpbmUgU1lTX21hZHZpc2UgX19OUl9tYWR2aXNlCiAjZGVmaW5lIFNZU19tYmluZCBfX05SX21iaW5kCisjZGVmaW5lIFNZU19tZW1mZF9jcmVhdGUgX19OUl9tZW1mZF9jcmVhdGUKICNkZWZpbmUgU1lTX21pZ3JhdGVfcGFnZXMgX19OUl9taWdyYXRlX3BhZ2VzCiAjZGVmaW5lIFNZU19taW5jb3JlIF9fTlJfbWluY29yZQogI2RlZmluZSBTWVNfbWtkaXIgX19OUl9ta2RpcgpAQCAtMTI1MCw2ICsxMjY4LDcgQEAKICNkZWZpbmUgU1lTX3JlbW92ZXhhdHRyIF9fTlJfcmVtb3ZleGF0dHIKICNkZWZpbmUgU1lTX3JlbmFtZSBfX05SX3JlbmFtZQogI2RlZmluZSBTWVNfcmVuYW1lYXQgX19OUl9yZW5hbWVhdAorI2RlZmluZSBTWVNfcmVuYW1lYXQyIF9fTlJfcmVuYW1lYXQyCiAjZGVmaW5lIFNZU19yZXF1ZXN0X2tleSBfX05SX3JlcXVlc3Rfa2V5CiAjZGVmaW5lIFNZU19yZXN0YXJ0X3N5c2NhbGwgX19OUl9yZXN0YXJ0X3N5c2NhbGwKICNkZWZpbmUgU1lTX3JtZGlyIF9fTlJfcm1kaXIKQEAgLTEyNzMsNiArMTI5Miw3IEBACiAjZGVmaW5lIFNZU19zY2hlZF9zZXRwYXJhbSBfX05SX3NjaGVkX3NldHBhcmFtCiAjZGVmaW5lIFNZU19zY2hlZF9zZXRzY2hlZHVsZXIgX19OUl9zY2hlZF9zZXRzY2hlZHVsZXIKICNkZWZpbmUgU1lTX3NjaGVkX3lpZWxkIF9fTlJfc2NoZWRfeWllbGQKKyNkZWZpbmUgU1lTX3NlY2NvbXAgX19OUl9zZWNjb21wCiAjZGVmaW5lIFNZU19zZWxlY3QgX19OUl9zZWxlY3QKICNkZWZpbmUgU1lTX3NlbmRmaWxlIF9fTlJfc2VuZGZpbGUKICNkZWZpbmUgU1lTX3NlbmRmaWxlNjQgX19OUl9zZW5kZmlsZTY0CkBAIC0xMzg5LDYgKzE0MDksNyBAQAogI2RlZmluZSBTWVNfYWxhcm0gX19OUl9hbGFybQogI2RlZmluZSBTWVNfYXJjaF9wcmN0bCBfX05SX2FyY2hfcHJjdGwKICNkZWZpbmUgU1lTX2JpbmQgX19OUl9iaW5kCisjZGVmaW5lIFNZU19icGYgX19OUl9icGYKICNkZWZpbmUgU1lTX2JyayBfX05SX2JyawogI2RlZmluZSBTWVNfY2FwZ2V0IF9fTlJfY2FwZ2V0CiAjZGVmaW5lIFNZU19jYXBzZXQgX19OUl9jYXBzZXQKQEAgLTE0NjcsNiArMTQ4OCw3IEBACiAjZGVmaW5lIFNZU19nZXRwbXNnIF9fTlJfZ2V0cG1zZwogI2RlZmluZSBTWVNfZ2V0cHBpZCBfX05SX2dldHBwaWQKICNkZWZpbmUgU1lTX2dldHByaW9yaXR5IF9fTlJfZ2V0cHJpb3JpdHkKKyNkZWZpbmUgU1lTX2dldHJhbmRvbSBfX05SX2dldHJhbmRvbQogI2RlZmluZSBTWVNfZ2V0cmVzZ2lkIF9fTlJfZ2V0cmVzZ2lkCiAjZGVmaW5lIFNZU19nZXRyZXN1aWQgX19OUl9nZXRyZXN1aWQKICNkZWZpbmUgU1lTX2dldHJsaW1pdCBfX05SX2dldHJsaW1pdApAQCAtMTQ5NCw2ICsxNTE2LDcgQEAKICNkZWZpbmUgU1lTX2lvcHJpb19nZXQgX19OUl9pb3ByaW9fZ2V0CiAjZGVmaW5lIFNZU19pb3ByaW9fc2V0IF9fTlJfaW9wcmlvX3NldAogI2RlZmluZSBTWVNfa2NtcCBfX05SX2tjbXAKKyNkZWZpbmUgU1lTX2tleGVjX2ZpbGVfbG9hZCBfX05SX2tleGVjX2ZpbGVfbG9hZAogI2RlZmluZSBTWVNfa2V4ZWNfbG9hZCBfX05SX2tleGVjX2xvYWQKICNkZWZpbmUgU1lTX2tleWN0bCBfX05SX2tleWN0bAogI2RlZmluZSBTWVNfa2lsbCBfX05SX2tpbGwKQEAgLTE1MTEsNiArMTUzNCw3IEBACiAjZGVmaW5lIFNZU19sc3RhdCBfX05SX2xzdGF0CiAjZGVmaW5lIFNZU19tYWR2aXNlIF9fTlJfbWFkdmlzZQogI2RlZmluZSBTWVNfbWJpbmQgX19OUl9tYmluZAorI2RlZmluZSBTWVNfbWVtZmRfY3JlYXRlIF9fTlJfbWVtZmRfY3JlYXRlCiAjZGVmaW5lIFNZU19taWdyYXRlX3BhZ2VzIF9fTlJfbWlncmF0ZV9wYWdlcwogI2RlZmluZSBTWVNfbWluY29yZSBfX05SX21pbmNvcmUKICNkZWZpbmUgU1lTX21rZGlyIF9fTlJfbWtkaXIKQEAgLTE1ODAsNiArMTYwNCw3IEBACiAjZGVmaW5lIFNZU19yZW1vdmV4YXR0ciBfX05SX3JlbW92ZXhhdHRyCiAjZGVmaW5lIFNZU19yZW5hbWUgX19OUl9yZW5hbWUKICNkZWZpbmUgU1lTX3JlbmFtZWF0IF9fTlJfcmVuYW1lYXQKKyNkZWZpbmUgU1lTX3JlbmFtZWF0MiBfX05SX3JlbmFtZWF0MgogI2RlZmluZSBTWVNfcmVxdWVzdF9rZXkgX19OUl9yZXF1ZXN0X2tleQogI2RlZmluZSBTWVNfcmVzdGFydF9zeXNjYWxsIF9fTlJfcmVzdGFydF9zeXNjYWxsCiAjZGVmaW5lIFNZU19ybWRpciBfX05SX3JtZGlyCkBAIC0xNjAzLDYgKzE2MjgsNyBAQAogI2RlZmluZSBTWVNfc2NoZWRfc2V0cGFyYW0gX19OUl9zY2hlZF9zZXRwYXJhbQogI2RlZmluZSBTWVNfc2NoZWRfc2V0c2NoZWR1bGVyIF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyCiAjZGVmaW5lIFNZU19zY2hlZF95aWVsZCBfX05SX3NjaGVkX3lpZWxkCisjZGVmaW5lIFNZU19zZWNjb21wIF9fTlJfc2VjY29tcAogI2RlZmluZSBTWVNfc2VjdXJpdHkgX19OUl9zZWN1cml0eQogI2RlZmluZSBTWVNfc2VsZWN0IF9fTlJfc2VsZWN0CiAjZGVmaW5lIFNZU19zZW1jdGwgX19OUl9zZW1jdGwKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvbGltaXRzLmggYi9saWJjL2luY2x1ZGUvc3lzL2xpbWl0cy5oCmluZGV4IGM1MGViMTAuLmJlNzljZjMgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvbGltaXRzLmgKKysrIGIvbGliYy9pbmNsdWRlL3N5cy9saW1pdHMuaApAQCAtMTE1LDU3ICsxMTUsMTMgQEAKIAogLyogQmlvbmljLXNwZWNpZmljIGRlZmluaXRpb25zICovCiAKLSNkZWZpbmUgIF9QT1NJWF9WRVJTSU9OICAgICAgICAgICAgIDIwMDExMkwgICAvKiBQb3NpeCBDIGxhbmd1YWdlIGJpbmRpbmdzIHZlcnNpb24gKi8KKyNkZWZpbmUgIF9QT1NJWF9WRVJTSU9OICAgICAgICAgICAgIDIwMDgwOUwgICAvKiBQb3NpeCBDIGxhbmd1YWdlIGJpbmRpbmdzIHZlcnNpb24gKi8KICNkZWZpbmUgIF9QT1NJWDJfVkVSU0lPTiAgICAgICAgICAgIC0xICAgICAgICAvKiB3ZSBkb24ndCBzdXBwb3J0IFBvc2l4IGNvbW1hbmQtbGluZSB0b29scyAqLwotI2RlZmluZSAgX1BPU0lYMl9DX1ZFUlNJT04gICAgICAgICAgX1BPU0lYX1ZFUlNJT04KLSNkZWZpbmUgIF9YT1BFTl9WRVJTSU9OICAgICAgICAgICAgIDUwMCAgICAgICAvKiBieSBQb3NpeCBkZWZpbml0aW9uICovCi0jZGVmaW5lICBfWE9QRU5fWENVX1ZFUlNJT04gICAgICAgICAtMSAgICAgICAgLyogd2UgZG9uJ3Qgc3VwcG9ydCBjb21tYW5kLWxpbmUgdXRpbGl0aWVzICovCi0KLS8qIHRlbGwgd2hhdCB3ZSBpbXBsZW1lbnQgbGVnYWN5IHN0dWZmIHdoZW4gYXBwcm9wcmlhdGUgKi8KLSNpZiBfUE9TSVhfVkVSU0lPTiA+IDAKLSNkZWZpbmUgIF9YT1BFTl9YUEcyICAgICAgICAgICAgICAgIDEKLSNkZWZpbmUgIF9YT1BFTl9YUEczICAgICAgICAgICAgICAgIDEKLSNkZWZpbmUgIF9YT1BFTl9YUEc0ICAgICAgICAgICAgICAgIDEKLSNkZWZpbmUgIF9YT1BFTl9VTklYICAgICAgICAgICAgICAgIDEKLSNlbmRpZgotCi0jZGVmaW5lICBfWE9QRU5fRU5IX0kxOE4gICAgICAgICAgLTEgIC8qIHdlIGRvbid0IHN1cHBvcnQgaW50ZXJuYXRpb25hbGl6YXRpb24gaW4gdGhlIEMgbGlicmFyeSAqLwotI2RlZmluZSAgX1hPUEVOX0NSWVBUICAgICAgICAgICAgIC0xICAvKiBkb24ndCBzdXBwb3J0IFgvT3BlbiBFbmNyeXB0aW9uICovCi0jZGVmaW5lICBfWE9QRU5fTEVHQUNZICAgICAgICAgICAgLTEgIC8qIGRvbid0IGNsYWltIHdlIHN1cHBvcnQgdGhlc2UsIHdlIGhhdmUgc29tZSBvZiB0aGVtIGJ1dCBub3QgYWxsICovCi0jZGVmaW5lICBfWE9QRU5fUkVBTFRJTUUgICAgICAgICAgLTEgLyogd2UgZG9uJ3Qgc3VwcG9ydCBhbGwgdGhlc2UgZnVuY3Rpb25zICovCi0jZGVmaW5lICBfWE9QRU5fUkVBTFRJTUVfVEhSRUFEUyAgLTEgIC8qIHNhbWUgaGVyZSAqLwotCi0jZGVmaW5lICBfUE9TSVhfUkVBTFRJTUVfU0lHTkFMUyAgICAtMSAgLyogZm9yIG5vdywgdGhpcyBpcyBub3Qgc3VwcG9ydGVkICovCi0jZGVmaW5lICBfUE9TSVhfUFJJT1JJVFlfU0NIRURVTElORyAgMSAgLyogcHJpb3JpdHkgc2NoZWR1bGluZyBpcyBhIExpbnV4IGZlYXR1cmUgKi8KLSNkZWZpbmUgIF9QT1NJWF9USU1FUlMgICAgICAgICAgICAgICAxICAvKiBQb3NpeCB0aW1lcnMgYXJlIHN1cHBvcnRlZCAqLwotI3VuZGVmICAgX1BPU0lYX0FTWU5DSFJPTk9VU19JTyAgICAgICAgIC8qIGFpb18gZnVuY3Rpb25zIGFyZSBub3Qgc3VwcG9ydGVkICovCi0jZGVmaW5lICBfUE9TSVhfU1lOQ0hST05JWkVEX0lPICAgICAgMSAgLyogc3luY2hyb25pemVkIGkvbyBzdXBwb3J0ZWQgKi8KLSNkZWZpbmUgIF9QT1NJWF9GU1lOQyAgICAgICAgICAgICAgICAxICAvKiBmZGF0YXN5bmMoKSBzdXBwb3J0ZWQgKi8KLSNkZWZpbmUgIF9QT1NJWF9NQVBQRURfRklMRVMgICAgICAgICAxICAvKiBtbWFwLWVkIGZpbGVzIHN1cHBvcnRlZCAqLwotCi0vKiBYWFg6IFRPRE86IGNvbXBsZXRlIGFuZCBjaGVjayBsaXN0IGhlcmUgKi8KKyNkZWZpbmUgIF9YT1BFTl9WRVJTSU9OICAgICAgICAgICAgIDcwMCAgICAgICAvKiBieSBQb3NpeCBkZWZpbml0aW9uICovCiAKIAotI2RlZmluZSAgX1BPU0lYX1RIUkVBRFMgICAgICAgICAgICAgMSAgICAvKiB3ZSBzdXBwb3J0IHRocmVhZHMgKi8KLSNkZWZpbmUgIF9QT1NJWF9USFJFQURfU1RBQ0tBRERSICAgIDEgICAgLyogd2Ugc3VwcG9ydCB0aHJlYWQgc3RhY2sgYWRkcmVzcyAqLwotI2RlZmluZSAgX1BPU0lYX1RIUkVBRF9TVEFDS1NJWkUgICAgMSAgICAvKiB3ZSBzdXBwb3J0IHRocmVhZCBzdGFjayBzaXplICovCi0jZGVmaW5lICBfUE9TSVhfVEhSRUFEX1BSSU9fSU5IRVJJVCAyMDAxMTJMICAgLyogbGludXggZmVhdHVyZSAqLwotI2RlZmluZSAgX1BPU0lYX1RIUkVBRF9QUklPX1BST1RFQ1QgMjAwMTEyTCAgIC8qIGxpbnV4IGZlYXR1cmUgKi8KLQotI3VuZGVmICAgX1BPU0lYX1BST0NFU1NfU0hBUkVEICAgICAgICAgICAvKiB3ZSBkb24ndCBzdXBwb3J0IHByb2Nlc3Mtc2hhcmVkIHN5bmNocm9uaXphdGlvbiAqLwotI3VuZGVmICAgX1BPU0lYX1RIUkVBRF9TQUZFX0ZVTkNUSU9OUyAgICAvKiBtb3N0IGZ1bmN0aW9ucyBhcmUsIGJ1dCBub3QgZXZlcnl0aGluZyB5ZXQgKi8KLSNkZWZpbmUgIF9QT1NJWF9DSE9XTl9SRVNUUklDVEVEICAgIDEgICAgLyogeWVzLCBjaG93biByZXF1aXJlcyBhcHByb3ByaWF0ZSBwcml2aWxlZ2VzICovCi0jZGVmaW5lICBfUE9TSVhfTU9OT1RPTklDX0NMT0NLICAgICAwICAgIC8qIHRoZSBtb25vdG9uaWMgY2xvY2sgbWF5IGJlIGF2YWlsYWJsZTsgYXNrIHN5c2NvbmYgKi8KLSNkZWZpbmUgIF9QT1NJWF9OT19UUlVOQyAgICAgICAgICAgIDEgICAgLyogdmVyeSBsb25nIHBhdGhuYW1lcyBnZW5lcmF0ZSBhbiBlcnJvciAqLwotI2RlZmluZSAgX1BPU0lYX1NBVkVEX0lEUyAgICAgICAgICAgMSAgICAvKiBzYXZlZCB1c2VyIGlkcyBpcyBhIExpbnV4IGZlYXR1cmUgKi8KLSNkZWZpbmUgIF9QT1NJWF9KT0JfQ09OVFJPTCAgICAgICAgIDEgICAgLyogam9iIGNvbnRyb2wgaXMgYSBMaW51eCBmZWF0dXJlICovCi0KLSNkZWZpbmUgX1BPU0lYX1RIUkVBRF9ERVNUUlVDVE9SX0lURVJBVElPTlMgNCAvKiB0aGUgbWluaW11bSBtYW5kYXRlZCBieSBQT1NJWCAqLwotI2RlZmluZSBQVEhSRUFEX0RFU1RSVUNUT1JfSVRFUkFUSU9OUyBfUE9TSVhfVEhSRUFEX0RFU1RSVUNUT1JfSVRFUkFUSU9OUwotI2RlZmluZSBfUE9TSVhfVEhSRUFEX0tFWVNfTUFYIDEyOCAgICAgICAgICAgIC8qIHRoZSBtaW5pbXVtIG1hbmRhdGVkIGJ5IFBPU0lYICovCi0jZGVmaW5lIFBUSFJFQURfS0VZU19NQVggX1BPU0lYX1RIUkVBRF9LRVlTX01BWAotI2RlZmluZSBfUE9TSVhfVEhSRUFEX1RIUkVBRFNfTUFYIDY0ICAgICAgICAgIC8qIHRoZSBtaW5pbXVtIG1hbmRhdGVkIGJ5IFBPU0lYICovCi0jZGVmaW5lIFBUSFJFQURfVEhSRUFEU19NQVggICAgICAgICAgICAgICAgICAgLyogYmlvbmljIGhhcyBubyBzcGVjaWZpYyBsaW1pdCAqLwotCisjZGVmaW5lIFBUSFJFQURfREVTVFJVQ1RPUl9JVEVSQVRJT05TIDQgICAgIC8vID49IF9QT1NJWF9USFJFQURfREVTVFJVQ1RPUl9JVEVSQVRJT05TCisjZGVmaW5lIFBUSFJFQURfS0VZU19NQVggICAgICAgICAgICAgIDEyOCAgIC8vID49IF9QT1NJWF9USFJFQURfS0VZU19NQVgKKyNkZWZpbmUgUFRIUkVBRF9USFJFQURTX01BWCAgICAgICAgICAgMjA0OCAgLy8gYmlvbmljIGhhcyBubyBzcGVjaWZpYyBsaW1pdAogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvbW1hbi5oIGIvbGliYy9pbmNsdWRlL3N5cy9tbWFuLmgKaW5kZXggNWE4Yzk4NS4uNjg1N2Y2MCAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy9tbWFuLmgKKysrIGIvbGliYy9pbmNsdWRlL3N5cy9tbWFuLmgKQEAgLTQzLDggKzQzLDE5IEBACiAjZGVmaW5lIE1SRU1BUF9NQVlNT1ZFICAxCiAjZGVmaW5lIE1SRU1BUF9GSVhFRCAgICAyCiAKKyNkZWZpbmUgUE9TSVhfTUFEVl9OT1JNQUwgICAgIE1BRFZfTk9STUFMCisjZGVmaW5lIFBPU0lYX01BRFZfUkFORE9NICAgICBNQURWX1JBTkRPTQorI2RlZmluZSBQT1NJWF9NQURWX1NFUVVFTlRJQUwgTUFEVl9TRVFVRU5USUFMCisjZGVmaW5lIFBPU0lYX01BRFZfV0lMTE5FRUQgICBNQURWX1dJTExORUVECisjZGVmaW5lIFBPU0lYX01BRFZfRE9OVE5FRUQgICBNQURWX0RPTlRORUVECisKKyNpZiBkZWZpbmVkKF9fVVNFX0ZJTEVfT0ZGU0VUNjQpCitleHRlcm4gdm9pZCogbW1hcCh2b2lkKiwgc2l6ZV90LCBpbnQsIGludCwgaW50LCBvZmZfdCkgX19SRU5BTUUobW1hcDY0KTsKKyNlbHNlCiBleHRlcm4gdm9pZCogbW1hcCh2b2lkKiwgc2l6ZV90LCBpbnQsIGludCwgaW50LCBvZmZfdCk7CisjZW5kaWYKIGV4dGVybiB2b2lkKiBtbWFwNjQodm9pZCosIHNpemVfdCwgaW50LCBpbnQsIGludCwgb2ZmNjRfdCk7CisKIGV4dGVybiBpbnQgbXVubWFwKHZvaWQqLCBzaXplX3QpOwogZXh0ZXJuIGludCBtc3luYyhjb25zdCB2b2lkKiwgc2l6ZV90LCBpbnQpOwogZXh0ZXJuIGludCBtcHJvdGVjdChjb25zdCB2b2lkKiwgc2l6ZV90LCBpbnQpOwpAQCAtNTQsMTMgKzY1LDE1IEBACiBleHRlcm4gaW50IG11bmxvY2thbGwodm9pZCk7CiBleHRlcm4gaW50IG1sb2NrKGNvbnN0IHZvaWQqLCBzaXplX3QpOwogZXh0ZXJuIGludCBtdW5sb2NrKGNvbnN0IHZvaWQqLCBzaXplX3QpOwotZXh0ZXJuIGludCBtYWR2aXNlKGNvbnN0IHZvaWQqLCBzaXplX3QsIGludCk7CitleHRlcm4gaW50IG1hZHZpc2Uodm9pZCosIHNpemVfdCwgaW50KTsKIAogZXh0ZXJuIGludCBtbG9jayhjb25zdCB2b2lkKiwgc2l6ZV90KTsKIGV4dGVybiBpbnQgbXVubG9jayhjb25zdCB2b2lkKiwgc2l6ZV90KTsKIAogZXh0ZXJuIGludCBtaW5jb3JlKHZvaWQqLCBzaXplX3QsIHVuc2lnbmVkIGNoYXIqKTsKIAorZXh0ZXJuIGludCBwb3NpeF9tYWR2aXNlKHZvaWQqLCBzaXplX3QsIGludCk7CisKIF9fRU5EX0RFQ0xTCiAKICNlbmRpZiAvKiBfU1lTX01NQU5fSF8gKi8KZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvbW91bnQuaCBiL2xpYmMvaW5jbHVkZS9zeXMvbW91bnQuaAppbmRleCAzYzM1ZDMxLi5mZDdjZjE3IDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3lzL21vdW50LmgKKysrIGIvbGliYy9pbmNsdWRlL3N5cy9tb3VudC5oCkBAIC0yNSw2ICsyNSw3IEBACiAgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKICAqIFNVQ0ggREFNQUdFLgogICovCisKICNpZm5kZWYgX1NZU19NT1VOVF9ICiAjZGVmaW5lIF9TWVNfTU9VTlRfSAogCkBAIC0zNSw5ICszNiwxMCBAQAogX19CRUdJTl9ERUNMUwogCiAvKiB1bW91bnQyIGZsYWdzLiAqLwotI2RlZmluZSBNTlRfRk9SQ0UJMQkvKiBGb3JjaWJseSB1bm1vdW50ICovCi0jZGVmaW5lIE1OVF9ERVRBQ0gJMgkvKiBEZXRhY2ggZnJvbSB0cmVlIG9ubHkgKi8KLSNkZWZpbmUgTU5UX0VYUElSRQk0CS8qIE1hcmsgZm9yIGV4cGlyeSAqLworI2RlZmluZSBNTlRfRk9SQ0UgMQorI2RlZmluZSBNTlRfREVUQUNIIDIKKyNkZWZpbmUgTU5UX0VYUElSRSA0CisjZGVmaW5lIFVNT1VOVF9OT0ZPTExPVyA4CiAKIGV4dGVybiBpbnQgbW91bnQoY29uc3QgY2hhciosIGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgdW5zaWduZWQgbG9uZywgY29uc3Qgdm9pZCopOwogZXh0ZXJuIGludCB1bW91bnQoY29uc3QgY2hhciopOwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9yZXNvdXJjZS5oIGIvbGliYy9pbmNsdWRlL3N5cy9yZXNvdXJjZS5oCmluZGV4IGE5MWZhNTMuLjNmOGRkNDUgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvcmVzb3VyY2UuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL3Jlc291cmNlLmgKQEAgLTM2LDYgKzM2LDEwIEBACiAKIF9fQkVHSU5fREVDTFMKIAorLyogVGhlIGtlcm5lbCBoZWFkZXIgZG9lc24ndCBoYXZlIHRoZXNlLCBidXQgUE9TSVggZG9lcy4gKi8KKyNkZWZpbmUgUkxJTV9TQVZFRF9DVVIgUkxJTV9JTkZJTklUWQorI2RlZmluZSBSTElNX1NBVkVEX01BWCBSTElNX0lORklOSVRZCisKIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBybGltX3Q7CiAKIGV4dGVybiBpbnQgZ2V0cmxpbWl0KGludCwgc3RydWN0IHJsaW1pdCopOwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9zZWxlY3QuaCBiL2xpYmMvaW5jbHVkZS9zeXMvc2VsZWN0LmgKaW5kZXggMzJjMTIwNi4uMGM0YTgyMyAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy9zZWxlY3QuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL3NlbGVjdC5oCkBAIC0yOSwxMSArMjksMTAgQEAKICNpZm5kZWYgX1NZU19TRUxFQ1RfSF8KICNkZWZpbmUgX1NZU19TRUxFQ1RfSF8KIAotI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgotI2luY2x1ZGUgPHN5cy90aW1lLmg+Ci0jaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8bGludXgvdGltZS5oPgogI2luY2x1ZGUgPHNpZ25hbC5oPgotI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorI2luY2x1ZGUgPHN5cy90eXBlcy5oPgogCiBfX0JFR0lOX0RFQ0xTCiAKQEAgLTQ5LDcgKzQ4LDE0IEBACiAjZGVmaW5lIF9fRkRNQVNLKGZkKSAoMVVMIDw8ICgoZmQpICUgTkZEQklUUykpCiAjZGVmaW5lIF9fRkRTX0JJVFMoc2V0KSAoKChmZF9zZXQqKShzZXQpKS0+ZmRzX2JpdHMpCiAKLSNkZWZpbmUgRkRfWkVSTyhzZXQpIChtZW1zZXQoc2V0LCAwLCBzaXplb2YoKihmZF9zZXQqKShzZXQpKSkpCisvKiBJbmxpbmUgbG9vcCBzbyB3ZSBkb24ndCBoYXZlIHRvIGRlY2xhcmUgbWVtc2V0LiAqLworI2RlZmluZSBGRF9aRVJPKHNldCkgXAorICBkbyB7IFwKKyAgICBzaXplX3QgX19pOyBcCisgICAgZm9yIChfX2kgPSAwOyBfX2kgPCBfX0ZEU0VUX0xPTkdTOyArK19faSkgeyBcCisgICAgICAoc2V0KS0+ZmRzX2JpdHNbX19pXSA9IDA7IFwKKyAgICB9IFwKKyAgfSB3aGlsZSAoMCkKIAogZXh0ZXJuIHZvaWQgX19GRF9DTFJfY2hrKGludCwgZmRfc2V0Kiwgc2l6ZV90KTsKIGV4dGVybiB2b2lkIF9fRkRfU0VUX2NoayhpbnQsIGZkX3NldCosIHNpemVfdCk7CmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL3NlbmRmaWxlLmggYi9saWJjL2luY2x1ZGUvc3lzL3NlbmRmaWxlLmgKaW5kZXggODFhM2M0NC4uYzU4OGU2OCAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy9zZW5kZmlsZS5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvc2VuZGZpbGUuaApAQCAtMzQsNyArMzQsMTEgQEAKIAogX19CRUdJTl9ERUNMUwogCisjaWYgZGVmaW5lZChfX1VTRV9GSUxFX09GRlNFVDY0KQorZXh0ZXJuIHNzaXplX3Qgc2VuZGZpbGUoaW50IG91dF9mZCwgaW50IGluX2ZkLCBvZmZfdCogb2Zmc2V0LCBzaXplX3QgY291bnQpIF9fUkVOQU1FKHNlbmRmaWxlNjQpOworI2Vsc2UKIGV4dGVybiBzc2l6ZV90IHNlbmRmaWxlKGludCBvdXRfZmQsIGludCBpbl9mZCwgb2ZmX3QqIG9mZnNldCwgc2l6ZV90IGNvdW50KTsKKyNlbmRpZgogZXh0ZXJuIHNzaXplX3Qgc2VuZGZpbGU2NChpbnQgb3V0X2ZkLCBpbnQgaW5fZmQsIG9mZjY0X3QqIG9mZnNldCwgc2l6ZV90IGNvdW50KTsKIAogX19FTkRfREVDTFMKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvc3RhdC5oIGIvbGliYy9pbmNsdWRlL3N5cy9zdGF0LmgKaW5kZXggOWM3MzczYS4uYzIyNTE2ZiAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy9zdGF0LmgKKysrIGIvbGliYy9pbmNsdWRlL3N5cy9zdGF0LmgKQEAgLTI1LDkxICsyNSw4MSBAQAogICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCiAgKiBTVUNIIERBTUFHRS4KICAqLworCiAjaWZuZGVmIF9TWVNfU1RBVF9IXwogI2RlZmluZSBfU1lTX1NUQVRfSF8KIAorI2luY2x1ZGUgPGxpbnV4L3N0YXQuaD4KKyNpbmNsdWRlIDxtYWNoaW5lL3RpbWVzcGVjLmg+CiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+Ci0jaW5jbHVkZSA8c3lzL3RpbWUuaD4KLSNpbmNsdWRlIDxsaW51eC9zdGF0Lmg+Ci0KLSNpbmNsdWRlIDxlbmRpYW4uaD4KIAogX19CRUdJTl9ERUNMUwogCi0jaWYgZGVmaW5lZChfX2FhcmNoNjRfXykKKyNpZiBkZWZpbmVkKF9fYWFyY2g2NF9fKSB8fCAoZGVmaW5lZChfX21pcHNfXykgJiYgZGVmaW5lZChfX0xQNjRfXykpCiAjZGVmaW5lIF9fU1RBVDY0X0JPRFkgXAotICB1bnNpZ25lZCBsb25nIHN0X2RldjsgXAotICB1bnNpZ25lZCBsb25nIHN0X2lubzsgXAotICB1bnNpZ25lZCBpbnQgc3RfbW9kZTsgXAotICB1bnNpZ25lZCBpbnQgc3Rfbmxpbms7IFwKKyAgZGV2X3Qgc3RfZGV2OyBcCisgIGlub190IHN0X2lubzsgXAorICBtb2RlX3Qgc3RfbW9kZTsgXAorICBubGlua190IHN0X25saW5rOyBcCiAgIHVpZF90IHN0X3VpZDsgXAogICBnaWRfdCBzdF9naWQ7IFwKLSAgdW5zaWduZWQgbG9uZyBzdF9yZGV2OyBcCisgIGRldl90IHN0X3JkZXY7IFwKICAgdW5zaWduZWQgbG9uZyBfX3BhZDE7IFwKLSAgbG9uZyBzdF9zaXplOyBcCisgIG9mZl90IHN0X3NpemU7IFwKICAgaW50IHN0X2Jsa3NpemU7IFwKICAgaW50IF9fcGFkMjsgXAogICBsb25nIHN0X2Jsb2NrczsgXAotICBsb25nIHN0X2F0aW1lOyBcCi0gIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWVfbnNlYzsgXAotICBsb25nIHN0X210aW1lOyBcCi0gIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWVfbnNlYzsgXAotICBsb25nIHN0X2N0aW1lOyBcCi0gIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWVfbnNlYzsgXAorICBzdHJ1Y3QgdGltZXNwZWMgc3RfYXRpbTsgXAorICBzdHJ1Y3QgdGltZXNwZWMgc3RfbXRpbTsgXAorICBzdHJ1Y3QgdGltZXNwZWMgc3RfY3RpbTsgXAogICB1bnNpZ25lZCBpbnQgX191bnVzZWQ0OyBcCiAgIHVuc2lnbmVkIGludCBfX3VudXNlZDU7IFwKIAotI2VsaWYgZGVmaW5lZChfX21pcHNfXykKKyNlbGlmIGRlZmluZWQoX19taXBzX18pICYmICFkZWZpbmVkKF9fTFA2NF9fKQogI2RlZmluZSBfX1NUQVQ2NF9CT0RZIFwKICAgdW5zaWduZWQgaW50IHN0X2RldjsgXAogICB1bnNpZ25lZCBpbnQgX19wYWQwWzNdOyBcCiAgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9pbm87IFwKLSAgdW5zaWduZWQgaW50IHN0X21vZGU7IFwKLSAgdW5zaWduZWQgaW50IHN0X25saW5rOyBcCisgIG1vZGVfdCBzdF9tb2RlOyBcCisgIG5saW5rX3Qgc3Rfbmxpbms7IFwKICAgdWlkX3Qgc3RfdWlkOyBcCiAgIGdpZF90IHN0X2dpZDsgXAogICB1bnNpZ25lZCBpbnQgc3RfcmRldjsgXAogICB1bnNpZ25lZCBpbnQgX19wYWQxWzNdOyBcCiAgIGxvbmcgbG9uZyBzdF9zaXplOyBcCi0gIHVuc2lnbmVkIGludCBzdF9hdGltZTsgXAotICB1bnNpZ25lZCBpbnQgc3RfYXRpbWVfbnNlYzsgXAotICB1bnNpZ25lZCBpbnQgc3RfbXRpbWU7IFwKLSAgdW5zaWduZWQgaW50IHN0X210aW1lX25zZWM7IFwKLSAgdW5zaWduZWQgaW50IHN0X2N0aW1lOyBcCi0gIHVuc2lnbmVkIGludCBzdF9jdGltZV9uc2VjOyBcCisgIHN0cnVjdCB0aW1lc3BlYyBzdF9hdGltOyBcCisgIHN0cnVjdCB0aW1lc3BlYyBzdF9tdGltOyBcCisgIHN0cnVjdCB0aW1lc3BlYyBzdF9jdGltOyBcCiAgIHVuc2lnbmVkIGludCBzdF9ibGtzaXplOyBcCiAgIHVuc2lnbmVkIGludCBfX3BhZDI7IFwKICAgdW5zaWduZWQgbG9uZyBsb25nIHN0X2Jsb2NrczsgXAogCiAjZWxpZiBkZWZpbmVkKF9feDg2XzY0X18pCiAjZGVmaW5lIF9fU1RBVDY0X0JPRFkgXAotICB1bnNpZ25lZCBsb25nIHN0X2RldjsgXAotICB1bnNpZ25lZCBsb25nIHN0X2lubzsgXAorICBkZXZfdCBzdF9kZXY7IFwKKyAgaW5vX3Qgc3RfaW5vOyBcCiAgIHVuc2lnbmVkIGxvbmcgc3Rfbmxpbms7IFwKLSAgdW5zaWduZWQgaW50IHN0X21vZGU7IFwKKyAgbW9kZV90IHN0X21vZGU7IFwKICAgdWlkX3Qgc3RfdWlkOyBcCiAgIGdpZF90IHN0X2dpZDsgXAogICB1bnNpZ25lZCBpbnQgX19wYWQwOyBcCi0gIHVuc2lnbmVkIGxvbmcgc3RfcmRldjsgXAotICBsb25nIHN0X3NpemU7IFwKKyAgZGV2X3Qgc3RfcmRldjsgXAorICBvZmZfdCBzdF9zaXplOyBcCiAgIGxvbmcgc3RfYmxrc2l6ZTsgXAogICBsb25nIHN0X2Jsb2NrczsgXAotICB1bnNpZ25lZCBsb25nIHN0X2F0aW1lOyBcCi0gIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWVfbnNlYzsgXAotICB1bnNpZ25lZCBsb25nIHN0X210aW1lOyBcCi0gIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWVfbnNlYzsgXAotICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lOyBcCi0gIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWVfbnNlYzsgXAorICBzdHJ1Y3QgdGltZXNwZWMgc3RfYXRpbTsgXAorICBzdHJ1Y3QgdGltZXNwZWMgc3RfbXRpbTsgXAorICBzdHJ1Y3QgdGltZXNwZWMgc3RfY3RpbTsgXAogICBsb25nIF9fcGFkM1szXTsgXAogCi0jZWxzZQorI2Vsc2UgLyogX19hcm1fXyB8fCBfX2kzODZfXyAqLwogI2RlZmluZSBfX1NUQVQ2NF9CT0RZIFwKICAgdW5zaWduZWQgbG9uZyBsb25nIHN0X2RldjsgXAogICB1bnNpZ25lZCBjaGFyIF9fcGFkMFs0XTsgXAogICB1bnNpZ25lZCBsb25nIF9fc3RfaW5vOyBcCiAgIHVuc2lnbmVkIGludCBzdF9tb2RlOyBcCi0gIHVuc2lnbmVkIGludCBzdF9ubGluazsgXAorICBubGlua190IHN0X25saW5rOyBcCiAgIHVpZF90IHN0X3VpZDsgXAogICBnaWRfdCBzdF9naWQ7IFwKICAgdW5zaWduZWQgbG9uZyBsb25nIHN0X3JkZXY7IFwKQEAgLTExNywxMiArMTA3LDkgQEAKICAgbG9uZyBsb25nIHN0X3NpemU7IFwKICAgdW5zaWduZWQgbG9uZyBzdF9ibGtzaXplOyBcCiAgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9ibG9ja3M7IFwKLSAgdW5zaWduZWQgbG9uZyBzdF9hdGltZTsgXAotICB1bnNpZ25lZCBsb25nIHN0X2F0aW1lX25zZWM7IFwKLSAgdW5zaWduZWQgbG9uZyBzdF9tdGltZTsgXAotICB1bnNpZ25lZCBsb25nIHN0X210aW1lX25zZWM7IFwKLSAgdW5zaWduZWQgbG9uZyBzdF9jdGltZTsgXAotICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lX25zZWM7IFwKKyAgc3RydWN0IHRpbWVzcGVjIHN0X2F0aW07IFwKKyAgc3RydWN0IHRpbWVzcGVjIHN0X210aW07IFwKKyAgc3RydWN0IHRpbWVzcGVjIHN0X2N0aW07IFwKICAgdW5zaWduZWQgbG9uZyBsb25nIHN0X2lubzsgXAogCiAjZW5kaWYKQEAgLTEzMiw5ICsxMTksMTQgQEAKIAogI3VuZGVmIF9fU1RBVDY0X0JPRFkKIAotI2RlZmluZSBzdF9hdGltZW5zZWMgc3RfYXRpbWVfbnNlYwotI2RlZmluZSBzdF9tdGltZW5zZWMgc3RfbXRpbWVfbnNlYwotI2RlZmluZSBzdF9jdGltZW5zZWMgc3RfY3RpbWVfbnNlYworLyogQ29tcGF0aWJpbGl0eSB3aXRoIG9sZGVyIHZlcnNpb25zIG9mIFBPU0lYLiAqLworI2RlZmluZSBzdF9hdGltZSBzdF9hdGltLnR2X3NlYworI2RlZmluZSBzdF9tdGltZSBzdF9tdGltLnR2X3NlYworI2RlZmluZSBzdF9jdGltZSBzdF9jdGltLnR2X3NlYworLyogQ29tcGF0aWJpbGl0eSB3aXRoIGdsaWJjLiAqLworI2RlZmluZSBzdF9hdGltZW5zZWMgc3RfYXRpbS50dl9uc2VjCisjZGVmaW5lIHN0X210aW1lbnNlYyBzdF9tdGltLnR2X25zZWMKKyNkZWZpbmUgc3RfY3RpbWVuc2VjIHN0X2N0aW0udHZfbnNlYwogCiAjaWZkZWYgX19VU0VfQlNECiAvKiBQZXJtaXNzaW9uIG1hY3JvcyBwcm92aWRlZCBieSBnbGliYyBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIEJTRHMuICovCkBAIC0xNzksNyArMTcxLDggQEAKIH0KICNlbmRpZiAvKiBkZWZpbmVkKF9fQklPTklDX0ZPUlRJRlkpICovCiAKLWV4dGVybiBpbnQgbWtmaWZvKGNvbnN0IGNoYXIqLCBtb2RlX3QpOworX0JJT05JQ19OT1RfQkVGT1JFXzIxKGV4dGVybiBpbnQgbWtmaWZvKGNvbnN0IGNoYXIqLCBtb2RlX3QpOykKK2V4dGVybiBpbnQgbWtmaWZvYXQoaW50LCBjb25zdCBjaGFyKiwgbW9kZV90KTsKIAogZXh0ZXJuIGludCBmY2htb2RhdChpbnQsIGNvbnN0IGNoYXIqLCBtb2RlX3QsIGludCk7CiBleHRlcm4gaW50IG1rZGlyYXQoaW50LCBjb25zdCBjaGFyKiwgbW9kZV90KTsKQEAgLTE5MCw2ICsxODMsMTAgQEAKIGV4dGVybiBpbnQgdXRpbWVuc2F0KGludCBmZCwgY29uc3QgY2hhciAqcGF0aCwgY29uc3Qgc3RydWN0IHRpbWVzcGVjIHRpbWVzWzJdLCBpbnQgZmxhZ3MpOwogZXh0ZXJuIGludCBmdXRpbWVucyhpbnQgZmQsIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyB0aW1lc1syXSk7CiAKKyNpZiBfX0FORFJPSURfQVBJX18gPCAyMQorI2luY2x1ZGUgPGFuZHJvaWQvbGVnYWN5X3N5c19zdGF0X2lubGluZXMuaD4KKyNlbmRpZgorCiBfX0VORF9ERUNMUwogCiAjZW5kaWYgLyogX1NZU19TVEFUX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL3N5c2NhbGwuaCBiL2xpYmMvaW5jbHVkZS9zeXMvc3lzY2FsbC5oCmluZGV4IDM0YTI5ZGYuLjIxZWFmMzMgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvc3lzY2FsbC5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvc3lzY2FsbC5oCkBAIC0yNSwyMCArMjUsMTMgQEAKICAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgogICogU1VDSCBEQU1BR0UuCiAgKi8KKwogI2lmbmRlZiBfU1lTX1NZU0NBTExfSF8KICNkZWZpbmUgX1NZU19TWVNDQUxMX0hfCiAKLSNpbmNsdWRlIDxlcnJuby5oPgotI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPGFzbS91bmlzdGQuaD4KKyNpbmNsdWRlIDxhc20vdW5pc3RkLmg+IC8qIExpbnV4IGtlcm5lbCBfX05SXyogbmFtZXMuICovCisjaW5jbHVkZSA8c3lzL2dsaWJjLXN5c2NhbGxzLmg+IC8qIGdsaWJjLWNvbXBhdGlibGUgU1lTXyogYWxpYXNlcy4gKi8KIAotI2luY2x1ZGUgPHN5cy9nbGliYy1zeXNjYWxscy5oPiAvKiBnbGliYy1jb21wYXRpYmxlIFNZU18qIGFsaWFzZXMgZm9yIG91ciBfX05SXyogbmFtZXMuICovCi0KLV9fQkVHSU5fREVDTFMKLQotbG9uZyBzeXNjYWxsKGxvbmcgbnVtYmVyLCAuLi4pOwotCi1fX0VORF9ERUNMUworLyogVGhlIHN5c2NhbGwgZnVuY3Rpb24gaXRzZWxmIGlzIGRlY2xhcmVkIGluIDx1bmlzdGQuaD4sIG5vdCBoZXJlLiAqLwogCiAjZW5kaWYgLyogX1NZU19TWVNDQUxMX0hfICovCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL3N5c2NvbmYuaCBiL2xpYmMvaW5jbHVkZS9zeXMvc3lzY29uZi5oCmluZGV4IDNkMDU4ZDcuLmNhMzIxMzIgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvc3lzY29uZi5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvc3lzY29uZi5oCkBAIC01MCw3ICs1MCw3IEBACiAjZGVmaW5lIF9TQ19QQVNTX01BWCAgICAgICAgICAgIDB4MDAwYwogI2RlZmluZSBfU0NfMl9DX0JJTkQgICAgICAgICAgICAweDAwMGQKICNkZWZpbmUgX1NDXzJfQ19ERVYgICAgICAgICAgICAgMHgwMDBlCi0jZGVmaW5lIF9TQ18yX0NfVkVSU0lPTiAgICAgICAgIDB4MDAwZgorI2RlZmluZSBfU0NfMl9DX1ZFUlNJT04gICAgICAgICAweDAwMGYgIC8qIE9ic29sZXNjZW50IGluIFBPU0lYLjEtMjAwOCwgVE9ETzogcmVtb3ZlIGl0LiAqLwogI2RlZmluZSBfU0NfMl9DSEFSX1RFUk0gICAgICAgICAweDAwMTAKICNkZWZpbmUgX1NDXzJfRk9SVF9ERVYgICAgICAgICAgMHgwMDExCiAjZGVmaW5lIF9TQ18yX0ZPUlRfUlVOICAgICAgICAgIDB4MDAxMgpAQCAtNjgsNyArNjgsNyBAQAogI2RlZmluZSBfU0NfWE9QRU5fRU5IX0kxOE4gICAgICAweDAwMWUKICNkZWZpbmUgX1NDX1hPUEVOX1NITSAgICAgICAgICAgMHgwMDFmCiAjZGVmaW5lIF9TQ19YT1BFTl9WRVJTSU9OICAgICAgIDB4MDAyMAotI2RlZmluZSBfU0NfWE9QRU5fWENVX1ZFUlNJT04gICAweDAwMjEKKyNkZWZpbmUgX1NDX1hPUEVOX1hDVV9WRVJTSU9OICAgMHgwMDIxICAvKiBPYnNvbGVzY2VudCBpbiBQT1NJWC4xLTIwMDgsIFRPRE86IHJlbW92ZSBpdC4gKi8KICNkZWZpbmUgX1NDX1hPUEVOX1JFQUxUSU1FICAgICAgMHgwMDIyCiAjZGVmaW5lIF9TQ19YT1BFTl9SRUFMVElNRV9USFJFQURTICAweDAwMjMKICNkZWZpbmUgX1NDX1hPUEVOX0xFR0FDWSAgICAgICAgMHgwMDI0CkBAIC03NywxMCArNzcsMTAgQEAKICNkZWZpbmUgX1NDX1BBR0VTSVpFICAgICAgICAgICAgMHgwMDI3CiAjZGVmaW5lIF9TQ19QQUdFX1NJWkUgICAgICAgICAgIDB4MDAyOAogI2RlZmluZSBfU0NfWE9QRU5fVU5JWCAgICAgICAgICAweDAwMjkKLSNkZWZpbmUgX1NDX1hCUzVfSUxQMzJfT0ZGMzIgICAgMHgwMDJhCi0jZGVmaW5lIF9TQ19YQlM1X0lMUDMyX09GRkJJRyAgIDB4MDAyYgotI2RlZmluZSBfU0NfWEJTNV9MUDY0X09GRjY0ICAgICAweDAwMmMKLSNkZWZpbmUgX1NDX1hCUzVfTFBCSUdfT0ZGQklHICAgMHgwMDJkCisjZGVmaW5lIF9TQ19YQlM1X0lMUDMyX09GRjMyICAgIDB4MDAyYSAgLyogT2Jzb2xlc2NlbnQgaW4gUE9TSVguMS0yMDA4LCBUT0RPOiByZW1vdmUgaXQuICovCisjZGVmaW5lIF9TQ19YQlM1X0lMUDMyX09GRkJJRyAgIDB4MDAyYiAgLyogT2Jzb2xlc2NlbnQgaW4gUE9TSVguMS0yMDA4LCBUT0RPOiByZW1vdmUgaXQuICovCisjZGVmaW5lIF9TQ19YQlM1X0xQNjRfT0ZGNjQgICAgIDB4MDAyYyAgLyogT2Jzb2xlc2NlbnQgaW4gUE9TSVguMS0yMDA4LCBUT0RPOiByZW1vdmUgaXQuICovCisjZGVmaW5lIF9TQ19YQlM1X0xQQklHX09GRkJJRyAgIDB4MDAyZCAgLyogT2Jzb2xlc2NlbnQgaW4gUE9TSVguMS0yMDA4LCBUT0RPOiByZW1vdmUgaXQuICovCiAjZGVmaW5lIF9TQ19BSU9fTElTVElPX01BWCAgICAgIDB4MDAyZQogI2RlZmluZSBfU0NfQUlPX01BWCAgICAgICAgICAgICAweDAwMmYKICNkZWZpbmUgX1NDX0FJT19QUklPX0RFTFRBX01BWCAgMHgwMDMwCkBAIC0xMjksNiArMTI5LDY1IEBACiAjZGVmaW5lIF9TQ19BVlBIWVNfUEFHRVMgICAgICAgICAgICAgICAgMHgwMDYzCiAjZGVmaW5lIF9TQ19NT05PVE9OSUNfQ0xPQ0sgICAgICAgICAgICAgMHgwMDY0CiAKKyNkZWZpbmUgX1NDXzJfUEJTICAgICAgICAgICAgICAgMHgwMDY1CisjZGVmaW5lIF9TQ18yX1BCU19BQ0NPVU5USU5HICAgIDB4MDA2NgorI2RlZmluZSBfU0NfMl9QQlNfQ0hFQ0tQT0lOVCAgICAweDAwNjcKKyNkZWZpbmUgX1NDXzJfUEJTX0xPQ0FURSAgICAgICAgMHgwMDY4CisjZGVmaW5lIF9TQ18yX1BCU19NRVNTQUdFICAgICAgIDB4MDA2OQorI2RlZmluZSBfU0NfMl9QQlNfVFJBQ0sgICAgICAgICAweDAwNmEKKyNkZWZpbmUgX1NDX0FEVklTT1JZX0lORk8gICAgICAgMHgwMDZiCisjZGVmaW5lIF9TQ19CQVJSSUVSUyAgICAgICAgICAgIDB4MDA2YworI2RlZmluZSBfU0NfQ0xPQ0tfU0VMRUNUSU9OICAgICAweDAwNmQKKyNkZWZpbmUgX1NDX0NQVVRJTUUgICAgICAgICAgICAgMHgwMDZlCisjZGVmaW5lIF9TQ19IT1NUX05BTUVfTUFYICAgICAgIDB4MDA2ZgorI2RlZmluZSBfU0NfSVBWNiAgICAgICAgICAgICAgICAweDAwNzAKKyNkZWZpbmUgX1NDX1JBV19TT0NLRVRTICAgICAgICAgMHgwMDcxCisjZGVmaW5lIF9TQ19SRUFERVJfV1JJVEVSX0xPQ0tTIDB4MDA3MgorI2RlZmluZSBfU0NfUkVHRVhQICAgICAgICAgICAgICAweDAwNzMKKyNkZWZpbmUgX1NDX1NIRUxMICAgICAgICAgICAgICAgMHgwMDc0CisjZGVmaW5lIF9TQ19TUEFXTiAgICAgICAgICAgICAgIDB4MDA3NQorI2RlZmluZSBfU0NfU1BJTl9MT0NLUyAgICAgICAgICAweDAwNzYKKyNkZWZpbmUgX1NDX1NQT1JBRElDX1NFUlZFUiAgICAgMHgwMDc3CisjZGVmaW5lIF9TQ19TU19SRVBMX01BWCAgICAgICAgIDB4MDA3OAorI2RlZmluZSBfU0NfU1lNTE9PUF9NQVggICAgICAgICAweDAwNzkKKyNkZWZpbmUgX1NDX1RIUkVBRF9DUFVUSU1FICAgICAgMHgwMDdhCisjZGVmaW5lIF9TQ19USFJFQURfUFJPQ0VTU19TSEFSRUQgICAgICAgMHgwMDdiCisjZGVmaW5lIF9TQ19USFJFQURfUk9CVVNUX1BSSU9fSU5IRVJJVCAgMHgwMDdjCisjZGVmaW5lIF9TQ19USFJFQURfUk9CVVNUX1BSSU9fUFJPVEVDVCAgMHgwMDdkCisjZGVmaW5lIF9TQ19USFJFQURfU1BPUkFESUNfU0VSVkVSICAgICAgMHgwMDdlCisjZGVmaW5lIF9TQ19USU1FT1VUUyAgICAgICAgICAgIDB4MDA3ZgorI2RlZmluZSBfU0NfVFJBQ0UgICAgICAgICAgICAgICAweDAwODAKKyNkZWZpbmUgX1NDX1RSQUNFX0VWRU5UX0ZJTFRFUiAgMHgwMDgxCisjZGVmaW5lIF9TQ19UUkFDRV9FVkVOVF9OQU1FX01BWCAgMHgwMDgyCisjZGVmaW5lIF9TQ19UUkFDRV9JTkhFUklUICAgICAgIDB4MDA4MworI2RlZmluZSBfU0NfVFJBQ0VfTE9HICAgICAgICAgICAweDAwODQKKyNkZWZpbmUgX1NDX1RSQUNFX05BTUVfTUFYICAgICAgMHgwMDg1CisjZGVmaW5lIF9TQ19UUkFDRV9TWVNfTUFYICAgICAgIDB4MDA4NgorI2RlZmluZSBfU0NfVFJBQ0VfVVNFUl9FVkVOVF9NQVggIDB4MDA4NworI2RlZmluZSBfU0NfVFlQRURfTUVNT1JZX09CSkVDVFMgIDB4MDA4OAorI2RlZmluZSBfU0NfVjdfSUxQMzJfT0ZGMzIgICAgICAweDAwODkKKyNkZWZpbmUgX1NDX1Y3X0lMUDMyX09GRkJJRyAgICAgMHgwMDhhCisjZGVmaW5lIF9TQ19WN19MUDY0X09GRjY0ICAgICAgIDB4MDA4YgorI2RlZmluZSBfU0NfVjdfTFBCSUdfT0ZGQklHICAgICAweDAwOGMKKyNkZWZpbmUgX1NDX1hPUEVOX1NUUkVBTVMgICAgICAgMHgwMDhkCisjZGVmaW5lIF9TQ19YT1BFTl9VVUNQICAgICAgICAgIDB4MDA4ZQorCisjZGVmaW5lIF9TQ19MRVZFTDFfSUNBQ0hFX1NJWkUgICAgICAweDAwOGYKKyNkZWZpbmUgX1NDX0xFVkVMMV9JQ0FDSEVfQVNTT0MgICAgIDB4MDA5MAorI2RlZmluZSBfU0NfTEVWRUwxX0lDQUNIRV9MSU5FU0laRSAgMHgwMDkxCisjZGVmaW5lIF9TQ19MRVZFTDFfRENBQ0hFX1NJWkUgICAgICAweDAwOTIKKyNkZWZpbmUgX1NDX0xFVkVMMV9EQ0FDSEVfQVNTT0MgICAgIDB4MDA5MworI2RlZmluZSBfU0NfTEVWRUwxX0RDQUNIRV9MSU5FU0laRSAgMHgwMDk0CisjZGVmaW5lIF9TQ19MRVZFTDJfQ0FDSEVfU0laRSAgICAgICAweDAwOTUKKyNkZWZpbmUgX1NDX0xFVkVMMl9DQUNIRV9BU1NPQyAgICAgIDB4MDA5NgorI2RlZmluZSBfU0NfTEVWRUwyX0NBQ0hFX0xJTkVTSVpFICAgMHgwMDk3CisjZGVmaW5lIF9TQ19MRVZFTDNfQ0FDSEVfU0laRSAgICAgICAweDAwOTgKKyNkZWZpbmUgX1NDX0xFVkVMM19DQUNIRV9BU1NPQyAgICAgIDB4MDA5OQorI2RlZmluZSBfU0NfTEVWRUwzX0NBQ0hFX0xJTkVTSVpFICAgMHgwMDlhCisjZGVmaW5lIF9TQ19MRVZFTDRfQ0FDSEVfU0laRSAgICAgICAweDAwOWIKKyNkZWZpbmUgX1NDX0xFVkVMNF9DQUNIRV9BU1NPQyAgICAgIDB4MDA5YworI2RlZmluZSBfU0NfTEVWRUw0X0NBQ0hFX0xJTkVTSVpFICAgMHgwMDlkCisKIGxvbmcgc3lzY29uZihpbnQpOwogCiBfX0VORF9ERUNMUwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy9zeXNpbmZvLmggYi9saWJjL2luY2x1ZGUvc3lzL3N5c2luZm8uaAppbmRleCBjN2U0NmU2Li5iNjZiYzhlIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvc3lzL3N5c2luZm8uaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL3N5c2luZm8uaApAQCAtMzMsNyArMzMsMTUgQEAKIAogX19CRUdJTl9ERUNMUwogCi1leHRlcm4gaW50IHN5c2luZm8gKHN0cnVjdCBzeXNpbmZvICppbmZvKTsKK2ludCBzeXNpbmZvKHN0cnVjdCBzeXNpbmZvKiBpbmZvKTsKKworaW50IGdldF9ucHJvY3NfY29uZih2b2lkKTsKKworaW50IGdldF9ucHJvY3Modm9pZCk7CisKK2xvbmcgZ2V0X3BoeXNfcGFnZXModm9pZCk7CisKK2xvbmcgZ2V0X2F2cGh5c19wYWdlcyh2b2lkKTsKIAogX19FTkRfREVDTFMKIApkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3N5cy90eXBlcy5oIGIvbGliYy9pbmNsdWRlL3N5cy90eXBlcy5oCmluZGV4IGE1ZmE2OTIuLmE2YjBmZDggMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvdHlwZXMuaAorKysgYi9saWJjL2luY2x1ZGUvc3lzL3R5cGVzLmgKQEAgLTkwLDE2ICs5MCwxNCBAQAogdHlwZWRlZiBfX2tlcm5lbF90aW1lX3QgX190aW1lX3Q7CiB0eXBlZGVmIF9fdGltZV90IHRpbWVfdDsKIAotLyogVGhpcyBoaXN0b3JpY2FsIGFjY2lkZW50IG1lYW5zIHRoYXQgd2UgaGFkIGEgMzItYml0IG9mZl90IG9uIDMyLWJpdCBhcmNoaXRlY3R1cmVzLiAqLwotI2lmICFkZWZpbmVkKF9fTFA2NF9fKQotdHlwZWRlZiBfX2tlcm5lbF9vZmZfdCBvZmZfdDsKLXR5cGVkZWYgX19rZXJuZWxfbG9mZl90IGxvZmZfdDsKKyNpZiBkZWZpbmVkKF9fVVNFX0ZJTEVfT0ZGU0VUNjQpIHx8IGRlZmluZWQoX19MUDY0X18pCit0eXBlZGVmIGludDY0X3Qgb2ZmX3Q7Cit0eXBlZGVmIG9mZl90IGxvZmZfdDsKIHR5cGVkZWYgbG9mZl90IG9mZjY0X3Q7CiAjZWxzZQotLyogV2UgY291bGQgcmUtdXNlIHRoZSBMUDMyIGRlZmluaXRpb25zLCBidXQgdGhhdCB3b3VsZCBtZWFuIHRoYXQgYWx0aG91Z2ggb2ZmX3QgYW5kIGxvZmZfdC9vZmY2NF90Ci0gKiB3b3VsZCBiZSB0aGUgc2FtZSBzaXplLCB0aGV5IHdvdWxkbid0IGFjdHVhbGx5IGJlIHRoZSBzYW1lIHR5cGUsIHdoaWNoIGNhbiBsZWFkIHRvIHdhcm5pbmdzLiAqLworLyogVGhpcyBoaXN0b3JpY2FsIGFjY2lkZW50IG1lYW5zIHRoYXQgd2UgaGFkIGEgMzItYml0IG9mZl90IG9uIDMyLWJpdCBhcmNoaXRlY3R1cmVzLiAqLwogdHlwZWRlZiBfX2tlcm5lbF9vZmZfdCBvZmZfdDsKLXR5cGVkZWYgb2ZmX3QgbG9mZl90OwordHlwZWRlZiBfX2tlcm5lbF9sb2ZmX3QgbG9mZl90OwogdHlwZWRlZiBsb2ZmX3Qgb2ZmNjRfdDsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL3Vjb250ZXh0LmggYi9saWJjL2luY2x1ZGUvc3lzL3Vjb250ZXh0LmgKaW5kZXggZGQyYTBiYi4uYjY4ZDcwNCAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy91Y29udGV4dC5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvdWNvbnRleHQuaApAQCAtMTgwLDYgKzE4MCwyNSBAQAogICB9IGZwX3I7CiB9IGZwcmVnc2V0X3Q7CiAKKyNpZmRlZiBfX0xQNjRfXwordHlwZWRlZiBzdHJ1Y3QgeworICBncmVnc2V0X3QgZ3JlZ3M7CisgIGZwcmVnc2V0X3QgZnByZWdzOworICBncmVnX3QgbWRoaTsKKyAgZ3JlZ190IGhpMTsKKyAgZ3JlZ190IGhpMjsKKyAgZ3JlZ190IGhpMzsKKyAgZ3JlZ190IG1kbG87CisgIGdyZWdfdCBsbzE7CisgIGdyZWdfdCBsbzI7CisgIGdyZWdfdCBsbzM7CisgIGdyZWdfdCBwYzsKKyAgdWludDMyX3QgZnBjX2NzcjsKKyAgdWludDMyX3QgdXNlZF9tYXRoOworICB1aW50MzJfdCBkc3A7CisgIHVpbnQzMl90IHJlc2VydmVkOworfSBtY29udGV4dF90OworI2Vsc2UKIHR5cGVkZWYgc3RydWN0IHsKICAgdW5zaWduZWQgcmVnbWFzazsKICAgdW5zaWduZWQgc3RhdHVzOwpAQCAtMjAwLDYgKzIxOSw3IEBACiAgIHVuc2lnbmVkIGxvbmcgaGkzOwogICB1bnNpZ25lZCBsb25nIGxvMzsKIH0gbWNvbnRleHRfdDsKKyNlbmRpZgogCiB0eXBlZGVmIHN0cnVjdCB1Y29udGV4dCB7CiAgIHVuc2lnbmVkIGxvbmcgdWNfZmxhZ3M7CkBAIC0yMDksMTAgKzIyOSw2IEBACiAgIHNpZ3NldF90IHVjX3NpZ21hc2s7CiB9IHVjb250ZXh0X3Q7CiAKLSNlbGlmIGRlZmluZWQoX19taXBzNjRfXykKLQotI2Vycm9yIFRPRE8KLQogI2VsaWYgZGVmaW5lZChfX3g4Nl82NF9fKQogCiBlbnVtIHsKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvdXNlci5oIGIvbGliYy9pbmNsdWRlL3N5cy91c2VyLmgKaW5kZXggMGUzNjgyNS4uYjM3MGFkZCAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy91c2VyLmgKKysrIGIvbGliYy9pbmNsdWRlL3N5cy91c2VyLmgKQEAgLTMxLDYgKzMxLDcgQEAKIAogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgogI2luY2x1ZGUgPGxpbWl0cy5oPiAvKiBGb3IgUEFHRV9TSVpFLiAqLworI2luY2x1ZGUgPHN0ZGRlZi5oPiAvKiBGb3Igc2l6ZV90LiAqLwogCiBfX0JFR0lOX0RFQ0xTCiAKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS9zeXMvdmZzLmggYi9saWJjL2luY2x1ZGUvc3lzL3Zmcy5oCmluZGV4IDUzNThmZmIuLjFmYmM4YmUgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS9zeXMvdmZzLmgKKysrIGIvbGliYy9pbmNsdWRlL3N5cy92ZnMuaApAQCAtMjUsNiArMjUsNyBAQAogICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCiAgKiBTVUNIIERBTUFHRS4KICAqLworCiAjaWZuZGVmIF9TWVNfVkZTX0hfCiAjZGVmaW5lIF9TWVNfVkZTX0hfCiAKQEAgLTExNCw1MCArMTE1LDI3IEBACiAjZGVmaW5lIF9TVEFURlNfRl9GUlNJWkUKICNkZWZpbmUgX1NUQVRGU19GX0ZMQUdTCiAKLSNkZWZpbmUgIEFERlNfU1VQRVJfTUFHSUMgICAgICAweGFkZjUKLSNkZWZpbmUgIEFGRlNfU1VQRVJfTUFHSUMgICAgICAweEFERkYKLSNkZWZpbmUgIEJFRlNfU1VQRVJfTUFHSUMgICAgICAweDQyNDY1MzMxCi0jZGVmaW5lICBCRlNfTUFHSUMgICAgICAgICAgICAgMHgxQkFERkFDRQotI2RlZmluZSAgQ0lGU19NQUdJQ19OVU1CRVIgICAgIDB4RkY1MzRENDIKLSNkZWZpbmUgIENPREFfU1VQRVJfTUFHSUMgICAgICAweDczNzU3MjQ1Ci0jZGVmaW5lICBDT0hfU1VQRVJfTUFHSUMgICAgICAgMHgwMTJGRjdCNwotI2RlZmluZSAgQ1JBTUZTX01BR0lDICAgICAgICAgIDB4MjhjZDNkNDUKLSNkZWZpbmUgIERFVkZTX1NVUEVSX01BR0lDICAgICAweDEzNzMKLSNkZWZpbmUgIEVGU19TVVBFUl9NQUdJQyAgICAgICAweDAwNDE0QTUzCi0jZGVmaW5lICBFWFRfU1VQRVJfTUFHSUMgICAgICAgMHgxMzdECi0jZGVmaW5lICBFWFQyX09MRF9TVVBFUl9NQUdJQyAgMHhFRjUxCi0jZGVmaW5lICBFWFQyX1NVUEVSX01BR0lDICAgICAgMHhFRjUzCi0jZGVmaW5lICBFWFQzX1NVUEVSX01BR0lDICAgICAgMHhFRjUzCi0jZGVmaW5lICBIRlNfU1VQRVJfTUFHSUMgICAgICAgMHg0MjQ0Ci0jZGVmaW5lICBIUEZTX1NVUEVSX01BR0lDICAgICAgMHhGOTk1RTg0OQotI2RlZmluZSAgSFVHRVRMQkZTX01BR0lDICAgICAgIDB4OTU4NDU4ZjYKLSNkZWZpbmUgIElTT0ZTX1NVUEVSX01BR0lDICAgICAweDk2NjAKLSNkZWZpbmUgIEpGRlMyX1NVUEVSX01BR0lDICAgICAweDcyYjYKLSNkZWZpbmUgIEpGU19TVVBFUl9NQUdJQyAgICAgICAweDMxNTM0NjRhCi0jZGVmaW5lICBNSU5JWF9TVVBFUl9NQUdJQyAgICAgMHgxMzdGIC8qIG9yaWcuIG1pbml4ICovCi0jZGVmaW5lICBNSU5JWF9TVVBFUl9NQUdJQzIgICAgMHgxMzhGIC8qIDMwIGNoYXIgbWluaXggKi8KLSNkZWZpbmUgIE1JTklYMl9TVVBFUl9NQUdJQyAgICAweDI0NjggLyogbWluaXggVjIgKi8KLSNkZWZpbmUgIE1JTklYMl9TVVBFUl9NQUdJQzIgICAweDI0NzggLyogbWluaXggVjIsIDMwIGNoYXIgbmFtZXMgKi8KLSNkZWZpbmUgIE1TRE9TX1NVUEVSX01BR0lDICAgICAweDRkNDQKLSNkZWZpbmUgIE5DUF9TVVBFUl9NQUdJQyAgICAgICAweDU2NGMKLSNkZWZpbmUgIE5GU19TVVBFUl9NQUdJQyAgICAgICAweDY5NjkKLSNkZWZpbmUgIE5URlNfU0JfTUFHSUMgICAgICAgICAweDUzNDY1NDRlCi0jZGVmaW5lICBPUEVOUFJPTV9TVVBFUl9NQUdJQyAgMHg5ZmExCi0jZGVmaW5lICBQUk9DX1NVUEVSX01BR0lDICAgICAgMHg5ZmEwCi0jZGVmaW5lICBRTlg0X1NVUEVSX01BR0lDICAgICAgMHgwMDJmCi0jZGVmaW5lICBSRUlTRVJGU19TVVBFUl9NQUdJQyAgMHg1MjY1NDk3MwotI2RlZmluZSAgUk9NRlNfTUFHSUMgICAgICAgICAgIDB4NzI3NQotI2RlZmluZSAgU01CX1NVUEVSX01BR0lDICAgICAgIDB4NTE3QgotI2RlZmluZSAgU1lTVjJfU1VQRVJfTUFHSUMgICAgIDB4MDEyRkY3QjYKLSNkZWZpbmUgIFNZU1Y0X1NVUEVSX01BR0lDICAgICAweDAxMkZGN0I1Ci0jZGVmaW5lICBUTVBGU19NQUdJQyAgICAgICAgICAgMHgwMTAyMTk5NAotI2RlZmluZSAgVURGX1NVUEVSX01BR0lDICAgICAgIDB4MTUwMTMzNDYKLSNkZWZpbmUgIFVGU19NQUdJQyAgICAgICAgICAgICAweDAwMDExOTU0Ci0jZGVmaW5lICBVU0JERVZJQ0VfU1VQRVJfTUFHSUMgMHg5ZmEyCi0jZGVmaW5lICBWWEZTX1NVUEVSX01BR0lDICAgICAgMHhhNTAxRkNGNQotI2RlZmluZSAgWEVOSVhfU1VQRVJfTUFHSUMgICAgIDB4MDEyRkY3QjQKLSNkZWZpbmUgIFhGU19TVVBFUl9NQUdJQyAgICAgICAweDU4NDY1MzQyCi0jZGVmaW5lICBfWElBRlNfU1VQRVJfTUFHSUMgICAgMHgwMTJGRDE2RAorLyogUHVsbCBpbiB0aGUga2VybmVsIG1hZ2ljIG51bWJlcnMuICovCisjaW5jbHVkZSA8bGludXgvbWFnaWMuaD4KKy8qIEFkZCBpbiBvbmVzIHRoYXQgd2UgaGFkIGhpc3RvcmljYWxseSB0aGF0IGFyZW4ndCBpbiB0aGUgdWFwaSBoZWFkZXIuICovCisjZGVmaW5lIEJFRlNfU1VQRVJfTUFHSUMgICAgICAweDQyNDY1MzMxCisjZGVmaW5lIEJGU19NQUdJQyAgICAgICAgICAgICAweDFCQURGQUNFCisjZGVmaW5lIENJRlNfTUFHSUNfTlVNQkVSICAgICAweEZGNTM0RDQyCisjZGVmaW5lIENPSF9TVVBFUl9NQUdJQyAgICAgICAweDAxMkZGN0I3CisjZGVmaW5lIERFVkZTX1NVUEVSX01BR0lDICAgICAweDEzNzMKKyNkZWZpbmUgRVhUX1NVUEVSX01BR0lDICAgICAgIDB4MTM3RAorI2RlZmluZSBFWFQyX09MRF9TVVBFUl9NQUdJQyAgMHhFRjUxCisjZGVmaW5lIEhGU19TVVBFUl9NQUdJQyAgICAgICAweDQyNDQKKyNkZWZpbmUgSkZTX1NVUEVSX01BR0lDICAgICAgIDB4MzE1MzQ2NGEKKyNkZWZpbmUgTlRGU19TQl9NQUdJQyAgICAgICAgIDB4NTM0NjU0NGUKKyNkZWZpbmUgUk9NRlNfTUFHSUMgICAgICAgICAgIDB4NzI3NQorI2RlZmluZSBTWVNWMl9TVVBFUl9NQUdJQyAgICAgMHgwMTJGRjdCNgorI2RlZmluZSBTWVNWNF9TVVBFUl9NQUdJQyAgICAgMHgwMTJGRjdCNQorI2RlZmluZSBVREZfU1VQRVJfTUFHSUMgICAgICAgMHgxNTAxMzM0NgorI2RlZmluZSBVRlNfTUFHSUMgICAgICAgICAgICAgMHgwMDAxMTk1NAorI2RlZmluZSBWWEZTX1NVUEVSX01BR0lDICAgICAgMHhhNTAxRkNGNQorI2RlZmluZSBYRU5JWF9TVVBFUl9NQUdJQyAgICAgMHgwMTJGRjdCNAorI2RlZmluZSBYRlNfU1VQRVJfTUFHSUMgICAgICAgMHg1ODQ2NTM0MgogCiBleHRlcm4gaW50IHN0YXRmcyhjb25zdCBjaGFyKiwgc3RydWN0IHN0YXRmcyopIF9fbm9ubnVsbCgoMSwgMikpOwogZXh0ZXJuIGludCBzdGF0ZnM2NChjb25zdCBjaGFyKiwgc3RydWN0IHN0YXRmczY0KikgX19ub25udWxsKCgxLCAyKSk7CmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzbG9nLmggYi9saWJjL2luY2x1ZGUvc3lzbG9nLmgKaW5kZXggY2JjZWFiMi4uODAwMGYwMyAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5c2xvZy5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXNsb2cuaApAQCAtNDcsNiArNDcsNyBAQAogCiAjZGVmaW5lIExPR19QUklNQVNLIDcKICNkZWZpbmUgTE9HX1BSSSh4KSAoKHgpICYgTE9HX1BSSU1BU0spCisjZGVmaW5lIExPR19NQUtFUFJJKGZhYywgcHJpKSAoKGZhYykgfCAocHJpKSkKIAogLyogRmFjaWxpdGllcyBhcmUgY3VycmVudGx5IGlnbm9yZWQgb24gQW5kcm9pZC4gKi8KICNkZWZpbmUgTE9HX0tFUk4gICAgIDAwMDAKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS90ZXJtaW9zLmggYi9saWJjL2luY2x1ZGUvdGVybWlvcy5oCmluZGV4IGI5Njg1Y2EuLjY4M2ZkZTIgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS90ZXJtaW9zLmgKKysrIGIvbGliYy9pbmNsdWRlL3Rlcm1pb3MuaApAQCAtMzUsNiArMzUsNyBAQAogCiBfX0JFR0lOX0RFQ0xTCiAKKyNpZiBfX0FORFJPSURfQVBJX18gPj0gMjEKIHNwZWVkX3QgY2ZnZXRpc3BlZWQoY29uc3Qgc3RydWN0IHRlcm1pb3MqKTsKIHNwZWVkX3QgY2ZnZXRvc3BlZWQoY29uc3Qgc3RydWN0IHRlcm1pb3MqKTsKIHZvaWQgY2ZtYWtlcmF3KHN0cnVjdCB0ZXJtaW9zKik7CkBAIC00OCw2ICs0OSw5IEBACiBwaWRfdCB0Y2dldHNpZChpbnQpOwogaW50IHRjc2VuZGJyZWFrKGludCwgaW50KTsKIGludCB0Y3NldGF0dHIoaW50LCBpbnQsIGNvbnN0IHN0cnVjdCB0ZXJtaW9zKik7CisjZWxzZQorI2luY2x1ZGUgPGFuZHJvaWQvbGVnYWN5X3Rlcm1pb3NfaW5saW5lcy5oPgorI2VuZGlmCiAKIF9fRU5EX0RFQ0xTCiAKZGlmZiAtLWdpdCBhL2xpYmMvaW5jbHVkZS90aW1lLmggYi9saWJjL2luY2x1ZGUvdGltZS5oCmluZGV4IDM0YTUzYjIuLjFiMGY2YTEgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS90aW1lLmgKKysrIGIvbGliYy9pbmNsdWRlL3RpbWUuaApAQCAtODUsOCArODUsMTIgQEAKIAogZXh0ZXJuIGNsb2NrX3QgY2xvY2sodm9pZCkgX19MSUJDX0FCSV9QVUJMSUNfXzsKIAotZXh0ZXJuIGludCBjbG9ja19nZXRyZXMoaW50LCBzdHJ1Y3QgdGltZXNwZWMqKSBfX0xJQkNfQUJJX1BVQkxJQ19fOwotZXh0ZXJuIGludCBjbG9ja19nZXR0aW1lKGludCwgc3RydWN0IHRpbWVzcGVjKikgX19MSUJDX0FCSV9QVUJMSUNfXzsKK2V4dGVybiBpbnQgY2xvY2tfZ2V0Y3B1Y2xvY2tpZChwaWRfdCwgY2xvY2tpZF90KikgX19MSUJDX0FCSV9QVUJMSUNfXzsKKworZXh0ZXJuIGludCBjbG9ja19nZXRyZXMoY2xvY2tpZF90LCBzdHJ1Y3QgdGltZXNwZWMqKSBfX0xJQkNfQUJJX1BVQkxJQ19fOworZXh0ZXJuIGludCBjbG9ja19nZXR0aW1lKGNsb2NraWRfdCwgc3RydWN0IHRpbWVzcGVjKikgX19MSUJDX0FCSV9QVUJMSUNfXzsKK2V4dGVybiBpbnQgY2xvY2tfbmFub3NsZWVwKGNsb2NraWRfdCwgaW50LCBjb25zdCBzdHJ1Y3QgdGltZXNwZWMqLCBzdHJ1Y3QgdGltZXNwZWMqKSBfX0xJQkNfQUJJX1BVQkxJQ19fOworZXh0ZXJuIGludCBjbG9ja19zZXR0aW1lKGNsb2NraWRfdCwgY29uc3Qgc3RydWN0IHRpbWVzcGVjKikgX19MSUJDX0FCSV9QVUJMSUNfXzsKIAogZXh0ZXJuIGludCB0aW1lcl9jcmVhdGUoaW50LCBzdHJ1Y3Qgc2lnZXZlbnQqLCB0aW1lcl90KikgX19MSUJDX0FCSV9QVUJMSUNfXzsKIGV4dGVybiBpbnQgdGltZXJfZGVsZXRlKHRpbWVyX3QpIF9fTElCQ19BQklfUFVCTElDX187CmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvdWNoYXIuaCBiL2xpYmMvaW5jbHVkZS91Y2hhci5oCmluZGV4IGUxZmNiNWMuLjBlYzlkMmUgMTAwNjQ0Ci0tLSBhL2xpYmMvaW5jbHVkZS91Y2hhci5oCisrKyBiL2xpYmMvaW5jbHVkZS91Y2hhci5oCkBAIC0zNCw2ICszNCwxMSBAQAogCiBfX0JFR0lOX0RFQ0xTCiAKKyNpZiBkZWZpbmVkKF9fR05VQ19fKSAmJiBfX0dOVUNfXyA+PSA1ICYmICFkZWZpbmVkKF9fY3BsdXNwbHVzKQordHlwZWRlZiBfX0NIQVIxNl9UWVBFX18gY2hhcjE2X3Q7Cit0eXBlZGVmIF9fQ0hBUjMyX1RZUEVfXyBjaGFyMzJfdDsKKyNlbmRpZgorCiAjZGVmaW5lIF9fU1REX1VURl8xNl9fIDEKICNkZWZpbmUgX19TVERfVVRGXzMyX18gMQogCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvdW5pc3RkLmggYi9saWJjL2luY2x1ZGUvdW5pc3RkLmgKaW5kZXggMWJmZGIwZS4uZjBkZTI5ZSAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3VuaXN0ZC5oCisrKyBiL2xpYmMvaW5jbHVkZS91bmlzdGQuaApAQCAtMjUsNiArMjUsNyBAQAogICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCiAgKiBTVUNIIERBTUFHRS4KICAqLworCiAjaWZuZGVmIF9VTklTVERfSF8KICNkZWZpbmUgX1VOSVNURF9IXwogCkBAIC0zMywyMCArMzQsNDUgQEAKICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KICNpbmNsdWRlIDxzeXMvc2VsZWN0Lmg+CiAjaW5jbHVkZSA8c3lzL3N5c2NvbmYuaD4KLSNpbmNsdWRlIDxwYXRoY29uZi5oPgorCisjaW5jbHVkZSA8bWFjaGluZS9wb3NpeF9saW1pdHMuaD4KIAogX19CRUdJTl9ERUNMUwogCi0vKiBTdGFuZGFyZCBmaWxlIGRlc2NyaXB0b3IgbnVtYmVycy4gKi8KICNkZWZpbmUgU1RESU5fRklMRU5PCTAKICNkZWZpbmUgU1RET1VUX0ZJTEVOTwkxCiAjZGVmaW5lIFNUREVSUl9GSUxFTk8JMgogCi0vKiBWYWx1ZXMgZm9yIHdoZW5jZSBpbiBmc2VlayBhbmQgbHNlZWsgKi8KKyNkZWZpbmUgRl9PSyAwCisjZGVmaW5lIFhfT0sgMQorI2RlZmluZSBXX09LIDIKKyNkZWZpbmUgUl9PSyA0CisKICNkZWZpbmUgU0VFS19TRVQgMAogI2RlZmluZSBTRUVLX0NVUiAxCiAjZGVmaW5lIFNFRUtfRU5EIDIKIAorI2RlZmluZSBfUENfRklMRVNJWkVCSVRTIDAKKyNkZWZpbmUgX1BDX0xJTktfTUFYIDEKKyNkZWZpbmUgX1BDX01BWF9DQU5PTiAyCisjZGVmaW5lIF9QQ19NQVhfSU5QVVQgMworI2RlZmluZSBfUENfTkFNRV9NQVggNAorI2RlZmluZSBfUENfUEFUSF9NQVggNQorI2RlZmluZSBfUENfUElQRV9CVUYgNgorI2RlZmluZSBfUENfMl9TWU1MSU5LUyA3CisjZGVmaW5lIF9QQ19BTExPQ19TSVpFX01JTiA4CisjZGVmaW5lIF9QQ19SRUNfSU5DUl9YRkVSX1NJWkUgOQorI2RlZmluZSBfUENfUkVDX01BWF9YRkVSX1NJWkUgMTAKKyNkZWZpbmUgX1BDX1JFQ19NSU5fWEZFUl9TSVpFIDExCisjZGVmaW5lIF9QQ19SRUNfWEZFUl9BTElHTiAxMgorI2RlZmluZSBfUENfU1lNTElOS19NQVggMTMKKyNkZWZpbmUgX1BDX0NIT1dOX1JFU1RSSUNURUQgMTQKKyNkZWZpbmUgX1BDX05PX1RSVU5DIDE1CisjZGVmaW5lIF9QQ19WRElTQUJMRSAxNgorI2RlZmluZSBfUENfQVNZTkNfSU8gMTcKKyNkZWZpbmUgX1BDX1BSSU9fSU8gMTgKKyNkZWZpbmUgX1BDX1NZTkNfSU8gMTkKKwogZXh0ZXJuIGNoYXIqKiBlbnZpcm9uOwogCiBleHRlcm4gX19ub3JldHVybiB2b2lkIF9leGl0KGludCk7CkBAIC05MCwxNyArMTE2LDkgQEAKIGV4dGVybiBpbnQgZ2V0cmVzdWlkKHVpZF90ICpydWlkLCB1aWRfdCAqZXVpZCwgdWlkX3QgKnN1aWQpOwogZXh0ZXJuIGludCBnZXRyZXNnaWQoZ2lkX3QgKnJnaWQsIGdpZF90ICplZ2lkLCBnaWRfdCAqc2dpZCk7CiBleHRlcm4gY2hhciogZ2V0bG9naW4odm9pZCk7Ci1leHRlcm4gY2hhciogZ2V0dXNlcnNoZWxsKHZvaWQpOwotZXh0ZXJuIHZvaWQgc2V0dXNlcnNoZWxsKHZvaWQpOwotZXh0ZXJuIHZvaWQgZW5kdXNlcnNoZWxsKHZvaWQpOwogCi0KLQotLyogTWFjcm9zIGZvciBhY2Nlc3MoKSAqLwotI2RlZmluZSBSX09LICA0ICAvKiBSZWFkICovCi0jZGVmaW5lIFdfT0sgIDIgIC8qIFdyaXRlICovCi0jZGVmaW5lIFhfT0sgIDEgIC8qIEV4ZWN1dGUgKi8KLSNkZWZpbmUgRl9PSyAgMCAgLyogRXhpc3RlbmNlICovCitleHRlcm4gbG9uZyBmcGF0aGNvbmYoaW50LCBpbnQpOworZXh0ZXJuIGxvbmcgcGF0aGNvbmYoY29uc3QgY2hhciosIGludCk7CiAKIGV4dGVybiBpbnQgYWNjZXNzKGNvbnN0IGNoYXIqLCBpbnQpOwogZXh0ZXJuIGludCBmYWNjZXNzYXQoaW50LCBjb25zdCBjaGFyKiwgaW50LCBpbnQpOwpAQCAtMTEyLDcgKzEzMCw3IEBACiBleHRlcm4gaW50IGZjaGRpcihpbnQpOwogZXh0ZXJuIGludCBybWRpcihjb25zdCBjaGFyICopOwogZXh0ZXJuIGludCBwaXBlKGludCAqKTsKLSNpZmRlZiBfR05VX1NPVVJDRQorI2lmIGRlZmluZWQoX19VU0VfR05VKQogZXh0ZXJuIGludCBwaXBlMihpbnQgKiwgaW50KTsKICNlbmRpZgogZXh0ZXJuIGludCBjaHJvb3QoY29uc3QgY2hhciAqKTsKQEAgLTEyNCwzNCArMTQyLDQwIEBACiBleHRlcm4gaW50IGZjaG93bihpbnQsIHVpZF90LCBnaWRfdCk7CiBleHRlcm4gaW50IGZjaG93bmF0KGludCwgY29uc3QgY2hhciosIHVpZF90LCBnaWRfdCwgaW50KTsKIGV4dGVybiBpbnQgbGNob3duKGNvbnN0IGNoYXIgKiwgdWlkX3QsIGdpZF90KTsKLWV4dGVybiBpbnQgdHJ1bmNhdGUoY29uc3QgY2hhciAqLCBvZmZfdCk7Ci1leHRlcm4gaW50IHRydW5jYXRlNjQoY29uc3QgY2hhciAqLCBvZmY2NF90KTsKIGV4dGVybiBjaGFyICpnZXRjd2QoY2hhciAqLCBzaXplX3QpOwogCiBleHRlcm4gaW50IHN5bmModm9pZCk7CiAKIGV4dGVybiBpbnQgY2xvc2UoaW50KTsKLWV4dGVybiBvZmZfdCBsc2VlayhpbnQsIG9mZl90LCBpbnQpOwotZXh0ZXJuIG9mZjY0X3QgbHNlZWs2NChpbnQsIG9mZjY0X3QsIGludCk7CiAKIGV4dGVybiBzc2l6ZV90IHJlYWQoaW50LCB2b2lkICosIHNpemVfdCk7CiBleHRlcm4gc3NpemVfdCB3cml0ZShpbnQsIGNvbnN0IHZvaWQgKiwgc2l6ZV90KTsKLWV4dGVybiBzc2l6ZV90IHByZWFkKGludCwgdm9pZCAqLCBzaXplX3QsIG9mZl90KTsKLWV4dGVybiBzc2l6ZV90IHByZWFkNjQoaW50LCB2b2lkICosIHNpemVfdCwgb2ZmNjRfdCk7Ci1leHRlcm4gc3NpemVfdCBwd3JpdGUoaW50LCBjb25zdCB2b2lkICosIHNpemVfdCwgb2ZmX3QpOwotZXh0ZXJuIHNzaXplX3QgcHdyaXRlNjQoaW50LCBjb25zdCB2b2lkICosIHNpemVfdCwgb2ZmNjRfdCk7CiAKIGV4dGVybiBpbnQgZHVwKGludCk7CiBleHRlcm4gaW50IGR1cDIoaW50LCBpbnQpOwotI2lmZGVmIF9HTlVfU09VUkNFCiBleHRlcm4gaW50IGR1cDMoaW50LCBpbnQsIGludCk7Ci0jZW5kaWYKIGV4dGVybiBpbnQgZmNudGwoaW50LCBpbnQsIC4uLik7CiBleHRlcm4gaW50IGlvY3RsKGludCwgaW50LCAuLi4pOwotZXh0ZXJuIGludCBmbG9jayhpbnQsIGludCk7CiBleHRlcm4gaW50IGZzeW5jKGludCk7CiBleHRlcm4gaW50IGZkYXRhc3luYyhpbnQpOworCisjaWYgZGVmaW5lZChfX1VTRV9GSUxFX09GRlNFVDY0KQorZXh0ZXJuIGludCB0cnVuY2F0ZShjb25zdCBjaGFyICosIG9mZl90KSBfX1JFTkFNRSh0cnVuY2F0ZTY0KTsKK2V4dGVybiBvZmZfdCBsc2VlayhpbnQsIG9mZl90LCBpbnQpIF9fUkVOQU1FKGxzZWVrNjQpOworZXh0ZXJuIHNzaXplX3QgcHJlYWQoaW50LCB2b2lkICosIHNpemVfdCwgb2ZmX3QpIF9fUkVOQU1FKHByZWFkNjQpOworZXh0ZXJuIHNzaXplX3QgcHdyaXRlKGludCwgY29uc3Qgdm9pZCAqLCBzaXplX3QsIG9mZl90KSBfX1JFTkFNRShwd3JpdGU2NCk7CitleHRlcm4gaW50IGZ0cnVuY2F0ZShpbnQsIG9mZl90KSBfX1JFTkFNRShmdHJ1bmNhdGU2NCk7CisjZWxzZQorZXh0ZXJuIGludCB0cnVuY2F0ZShjb25zdCBjaGFyICosIG9mZl90KTsKK2V4dGVybiBvZmZfdCBsc2VlayhpbnQsIG9mZl90LCBpbnQpOworZXh0ZXJuIHNzaXplX3QgcHJlYWQoaW50LCB2b2lkICosIHNpemVfdCwgb2ZmX3QpOworZXh0ZXJuIHNzaXplX3QgcHdyaXRlKGludCwgY29uc3Qgdm9pZCAqLCBzaXplX3QsIG9mZl90KTsKIGV4dGVybiBpbnQgZnRydW5jYXRlKGludCwgb2ZmX3QpOworI2VuZGlmCitleHRlcm4gaW50IHRydW5jYXRlNjQoY29uc3QgY2hhciAqLCBvZmY2NF90KTsKK2V4dGVybiBvZmY2NF90IGxzZWVrNjQoaW50LCBvZmY2NF90LCBpbnQpOworZXh0ZXJuIHNzaXplX3QgcHJlYWQ2NChpbnQsIHZvaWQgKiwgc2l6ZV90LCBvZmY2NF90KTsKK2V4dGVybiBzc2l6ZV90IHB3cml0ZTY0KGludCwgY29uc3Qgdm9pZCAqLCBzaXplX3QsIG9mZjY0X3QpOwogZXh0ZXJuIGludCBmdHJ1bmNhdGU2NChpbnQsIG9mZjY0X3QpOwogCiBleHRlcm4gaW50IHBhdXNlKHZvaWQpOwpAQCAtMTU5LDcgKzE4Myw4IEBACiBleHRlcm4gdW5zaWduZWQgaW50IHNsZWVwKHVuc2lnbmVkIGludCk7CiBleHRlcm4gaW50IHVzbGVlcCh1c2Vjb25kc190KTsKIAotZXh0ZXJuIGludCBnZXRob3N0bmFtZShjaGFyICosIHNpemVfdCk7CitpbnQgZ2V0aG9zdG5hbWUoY2hhciosIHNpemVfdCk7CitpbnQgc2V0aG9zdG5hbWUoY29uc3QgY2hhciosIHNpemVfdCk7CiAKIGV4dGVybiB2b2lkICpfX2Jyayh2b2lkICopOwogZXh0ZXJuIGludCBicmsodm9pZCAqKTsKQEAgLTE3MCw3ICsxOTUsNyBAQAogZXh0ZXJuIGludCBvcHRpbmQsIG9wdGVyciwgb3B0b3B0OwogCiBleHRlcm4gaW50IGlzYXR0eShpbnQpOwotZXh0ZXJuIGNoYXIqIHR0eW5hbWUoaW50KSBfX3dhcm5hdHRyKCJ0dHluYW1lIGlzIG5vdCB0aHJlYWQtc2FmZTsgdXNlIHR0eW5hbWVfciBpbnN0ZWFkIik7CitleHRlcm4gY2hhciogdHR5bmFtZShpbnQpOwogZXh0ZXJuIGludCB0dHluYW1lX3IoaW50LCBjaGFyKiwgc2l6ZV90KTsKIAogZXh0ZXJuIGludCAgYWNjdChjb25zdCBjaGFyKiAgZmlsZXBhdGgpOwpAQCAtMTc5LDYgKzIwNCw4IEBACiAKIGxvbmcgc3lzY29uZihpbnQpOwogCitsb25nIHN5c2NhbGwobG9uZyBudW1iZXIsIC4uLik7CisKIGV4dGVybiBpbnQgZGFlbW9uKGludCwgaW50KTsKIAogI2lmIGRlZmluZWQoX19hcm1fXykgfHwgKGRlZmluZWQoX19taXBzX18pICYmICFkZWZpbmVkKF9fTFA2NF9fKSkKQEAgLTE5NywxMyArMjI0LDg5IEBACiAgICAgfSB3aGlsZSAoX3JjID09IC0xICYmIGVycm5vID09IEVJTlRSKTsgXAogICAgIF9yYzsgfSkKIAorZXh0ZXJuIHNzaXplX3QgX19wcmVhZF9jaGsoaW50LCB2b2lkKiwgc2l6ZV90LCBvZmZfdCwgc2l6ZV90KTsKK19fZXJyb3JkZWNsKF9fcHJlYWRfZGVzdF9zaXplX2Vycm9yLCAicHJlYWQgY2FsbGVkIHdpdGggc2l6ZSBiaWdnZXIgdGhhbiBkZXN0aW5hdGlvbiIpOworX19lcnJvcmRlY2woX19wcmVhZF9jb3VudF90b29iaWdfZXJyb3IsICJwcmVhZCBjYWxsZWQgd2l0aCBjb3VudCA+IFNTSVpFX01BWCIpOworZXh0ZXJuIHNzaXplX3QgX19wcmVhZF9yZWFsKGludCwgdm9pZCosIHNpemVfdCwgb2ZmX3QpIF9fUkVOQU1FKHByZWFkKTsKKworZXh0ZXJuIHNzaXplX3QgX19wcmVhZDY0X2NoayhpbnQsIHZvaWQqLCBzaXplX3QsIG9mZjY0X3QsIHNpemVfdCk7CitfX2Vycm9yZGVjbChfX3ByZWFkNjRfZGVzdF9zaXplX2Vycm9yLCAicHJlYWQ2NCBjYWxsZWQgd2l0aCBzaXplIGJpZ2dlciB0aGFuIGRlc3RpbmF0aW9uIik7CitfX2Vycm9yZGVjbChfX3ByZWFkNjRfY291bnRfdG9vYmlnX2Vycm9yLCAicHJlYWQ2NCBjYWxsZWQgd2l0aCBjb3VudCA+IFNTSVpFX01BWCIpOworZXh0ZXJuIHNzaXplX3QgX19wcmVhZDY0X3JlYWwoaW50LCB2b2lkKiwgc2l6ZV90LCBvZmY2NF90KSBfX1JFTkFNRShwcmVhZDY0KTsKKwogZXh0ZXJuIHNzaXplX3QgX19yZWFkX2NoayhpbnQsIHZvaWQqLCBzaXplX3QsIHNpemVfdCk7CiBfX2Vycm9yZGVjbChfX3JlYWRfZGVzdF9zaXplX2Vycm9yLCAicmVhZCBjYWxsZWQgd2l0aCBzaXplIGJpZ2dlciB0aGFuIGRlc3RpbmF0aW9uIik7CiBfX2Vycm9yZGVjbChfX3JlYWRfY291bnRfdG9vYmlnX2Vycm9yLCAicmVhZCBjYWxsZWQgd2l0aCBjb3VudCA+IFNTSVpFX01BWCIpOwogZXh0ZXJuIHNzaXplX3QgX19yZWFkX3JlYWwoaW50LCB2b2lkKiwgc2l6ZV90KSBfX1JFTkFNRShyZWFkKTsKIAorZXh0ZXJuIHNzaXplX3QgX19yZWFkbGlua19jaGsoY29uc3QgY2hhciosIGNoYXIqLCBzaXplX3QsIHNpemVfdCk7CitfX2Vycm9yZGVjbChfX3JlYWRsaW5rX2Rlc3Rfc2l6ZV9lcnJvciwgInJlYWRsaW5rIGNhbGxlZCB3aXRoIHNpemUgYmlnZ2VyIHRoYW4gZGVzdGluYXRpb24iKTsKK19fZXJyb3JkZWNsKF9fcmVhZGxpbmtfc2l6ZV90b29iaWdfZXJyb3IsICJyZWFkbGluayBjYWxsZWQgd2l0aCBzaXplID4gU1NJWkVfTUFYIik7CitleHRlcm4gc3NpemVfdCBfX3JlYWRsaW5rX3JlYWwoY29uc3QgY2hhciosIGNoYXIqLCBzaXplX3QpIF9fUkVOQU1FKHJlYWRsaW5rKTsKKworZXh0ZXJuIHNzaXplX3QgX19yZWFkbGlua2F0X2NoayhpbnQgZGlyZmQsIGNvbnN0IGNoYXIqLCBjaGFyKiwgc2l6ZV90LCBzaXplX3QpOworX19lcnJvcmRlY2woX19yZWFkbGlua2F0X2Rlc3Rfc2l6ZV9lcnJvciwgInJlYWRsaW5rYXQgY2FsbGVkIHdpdGggc2l6ZSBiaWdnZXIgdGhhbiBkZXN0aW5hdGlvbiIpOworX19lcnJvcmRlY2woX19yZWFkbGlua2F0X3NpemVfdG9vYmlnX2Vycm9yLCAicmVhZGxpbmthdCBjYWxsZWQgd2l0aCBzaXplID4gU1NJWkVfTUFYIik7CitleHRlcm4gc3NpemVfdCBfX3JlYWRsaW5rYXRfcmVhbChpbnQgZGlyZmQsIGNvbnN0IGNoYXIqLCBjaGFyKiwgc2l6ZV90KSBfX1JFTkFNRShyZWFkbGlua2F0KTsKKwogI2lmIGRlZmluZWQoX19CSU9OSUNfRk9SVElGWSkKIAorI2lmIGRlZmluZWQoX19VU0VfRklMRV9PRkZTRVQ2NCkKKyNkZWZpbmUgX19QUkVBRF9QUkVGSVgoeCkgX19wcmVhZDY0XyAjIyB4CisjZWxzZQorI2RlZmluZSBfX1BSRUFEX1BSRUZJWCh4KSBfX3ByZWFkXyAjIyB4CisjZW5kaWYKKworX19CSU9OSUNfRk9SVElGWV9JTkxJTkUKK3NzaXplX3QgcHJlYWQoaW50IGZkLCB2b2lkKiBidWYsIHNpemVfdCBjb3VudCwgb2ZmX3Qgb2Zmc2V0KSB7CisgICAgc2l6ZV90IGJvcyA9IF9fYm9zMChidWYpOworCisjaWYgIWRlZmluZWQoX19jbGFuZ19fKQorICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChjb3VudCkgJiYgKGNvdW50ID4gU1NJWkVfTUFYKSkgeworICAgICAgICBfX1BSRUFEX1BSRUZJWChjb3VudF90b29iaWdfZXJyb3IpKCk7CisgICAgfQorCisgICAgaWYgKGJvcyA9PSBfX0JJT05JQ19GT1JUSUZZX1VOS05PV05fU0laRSkgeworICAgICAgICByZXR1cm4gX19QUkVBRF9QUkVGSVgocmVhbCkoZmQsIGJ1ZiwgY291bnQsIG9mZnNldCk7CisgICAgfQorCisgICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9wKGNvdW50KSAmJiAoY291bnQgPiBib3MpKSB7CisgICAgICAgIF9fUFJFQURfUFJFRklYKGRlc3Rfc2l6ZV9lcnJvcikoKTsKKyAgICB9CisKKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3AoY291bnQpICYmIChjb3VudCA8PSBib3MpKSB7CisgICAgICAgIHJldHVybiBfX1BSRUFEX1BSRUZJWChyZWFsKShmZCwgYnVmLCBjb3VudCwgb2Zmc2V0KTsKKyAgICB9CisjZW5kaWYKKworICAgIHJldHVybiBfX1BSRUFEX1BSRUZJWChjaGspKGZkLCBidWYsIGNvdW50LCBvZmZzZXQsIGJvcyk7Cit9CisKK19fQklPTklDX0ZPUlRJRllfSU5MSU5FCitzc2l6ZV90IHByZWFkNjQoaW50IGZkLCB2b2lkKiBidWYsIHNpemVfdCBjb3VudCwgb2ZmNjRfdCBvZmZzZXQpIHsKKyAgICBzaXplX3QgYm9zID0gX19ib3MwKGJ1Zik7CisKKyNpZiAhZGVmaW5lZChfX2NsYW5nX18pCisgICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9wKGNvdW50KSAmJiAoY291bnQgPiBTU0laRV9NQVgpKSB7CisgICAgICAgIF9fcHJlYWQ2NF9jb3VudF90b29iaWdfZXJyb3IoKTsKKyAgICB9CisKKyAgICBpZiAoYm9zID09IF9fQklPTklDX0ZPUlRJRllfVU5LTk9XTl9TSVpFKSB7CisgICAgICAgIHJldHVybiBfX3ByZWFkNjRfcmVhbChmZCwgYnVmLCBjb3VudCwgb2Zmc2V0KTsKKyAgICB9CisKKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3AoY291bnQpICYmIChjb3VudCA+IGJvcykpIHsKKyAgICAgICAgX19wcmVhZDY0X2Rlc3Rfc2l6ZV9lcnJvcigpOworICAgIH0KKworICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChjb3VudCkgJiYgKGNvdW50IDw9IGJvcykpIHsKKyAgICAgICAgcmV0dXJuIF9fcHJlYWQ2NF9yZWFsKGZkLCBidWYsIGNvdW50LCBvZmZzZXQpOworICAgIH0KKyNlbmRpZgorCisgICAgcmV0dXJuIF9fcHJlYWQ2NF9jaGsoZmQsIGJ1ZiwgY291bnQsIG9mZnNldCwgYm9zKTsKK30KKwogX19CSU9OSUNfRk9SVElGWV9JTkxJTkUKIHNzaXplX3QgcmVhZChpbnQgZmQsIHZvaWQqIGJ1Ziwgc2l6ZV90IGNvdW50KSB7CiAgICAgc2l6ZV90IGJvcyA9IF9fYm9zMChidWYpOwpAQCAtMjI4LDYgKzMzMSw1NyBAQAogCiAgICAgcmV0dXJuIF9fcmVhZF9jaGsoZmQsIGJ1ZiwgY291bnQsIGJvcyk7CiB9CisKK19fQklPTklDX0ZPUlRJRllfSU5MSU5FCitzc2l6ZV90IHJlYWRsaW5rKGNvbnN0IGNoYXIqIHBhdGgsIGNoYXIqIGJ1Ziwgc2l6ZV90IHNpemUpIHsKKyAgICBzaXplX3QgYm9zID0gX19ib3MoYnVmKTsKKworI2lmICFkZWZpbmVkKF9fY2xhbmdfXykKKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3Aoc2l6ZSkgJiYgKHNpemUgPiBTU0laRV9NQVgpKSB7CisgICAgICAgIF9fcmVhZGxpbmtfc2l6ZV90b29iaWdfZXJyb3IoKTsKKyAgICB9CisKKyAgICBpZiAoYm9zID09IF9fQklPTklDX0ZPUlRJRllfVU5LTk9XTl9TSVpFKSB7CisgICAgICAgIHJldHVybiBfX3JlYWRsaW5rX3JlYWwocGF0aCwgYnVmLCBzaXplKTsKKyAgICB9CisKKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3Aoc2l6ZSkgJiYgKHNpemUgPiBib3MpKSB7CisgICAgICAgIF9fcmVhZGxpbmtfZGVzdF9zaXplX2Vycm9yKCk7CisgICAgfQorCisgICAgaWYgKF9fYnVpbHRpbl9jb25zdGFudF9wKHNpemUpICYmIChzaXplIDw9IGJvcykpIHsKKyAgICAgICAgcmV0dXJuIF9fcmVhZGxpbmtfcmVhbChwYXRoLCBidWYsIHNpemUpOworICAgIH0KKyNlbmRpZgorCisgICAgcmV0dXJuIF9fcmVhZGxpbmtfY2hrKHBhdGgsIGJ1Ziwgc2l6ZSwgYm9zKTsKK30KKworX19CSU9OSUNfRk9SVElGWV9JTkxJTkUKK3NzaXplX3QgcmVhZGxpbmthdChpbnQgZGlyZmQsIGNvbnN0IGNoYXIqIHBhdGgsIGNoYXIqIGJ1Ziwgc2l6ZV90IHNpemUpIHsKKyAgICBzaXplX3QgYm9zID0gX19ib3MoYnVmKTsKKworI2lmICFkZWZpbmVkKF9fY2xhbmdfXykKKyAgICBpZiAoX19idWlsdGluX2NvbnN0YW50X3Aoc2l6ZSkgJiYgKHNpemUgPiBTU0laRV9NQVgpKSB7CisgICAgICAgIF9fcmVhZGxpbmthdF9zaXplX3Rvb2JpZ19lcnJvcigpOworICAgIH0KKworICAgIGlmIChib3MgPT0gX19CSU9OSUNfRk9SVElGWV9VTktOT1dOX1NJWkUpIHsKKyAgICAgICAgcmV0dXJuIF9fcmVhZGxpbmthdF9yZWFsKGRpcmZkLCBwYXRoLCBidWYsIHNpemUpOworICAgIH0KKworICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChzaXplKSAmJiAoc2l6ZSA+IGJvcykpIHsKKyAgICAgICAgX19yZWFkbGlua2F0X2Rlc3Rfc2l6ZV9lcnJvcigpOworICAgIH0KKworICAgIGlmIChfX2J1aWx0aW5fY29uc3RhbnRfcChzaXplKSAmJiAoc2l6ZSA8PSBib3MpKSB7CisgICAgICAgIHJldHVybiBfX3JlYWRsaW5rYXRfcmVhbChkaXJmZCwgcGF0aCwgYnVmLCBzaXplKTsKKyAgICB9CisjZW5kaWYKKworICAgIHJldHVybiBfX3JlYWRsaW5rYXRfY2hrKGRpcmZkLCBwYXRoLCBidWYsIHNpemUsIGJvcyk7Cit9CisKICNlbmRpZiAvKiBkZWZpbmVkKF9fQklPTklDX0ZPUlRJRlkpICovCiAKIF9fRU5EX0RFQ0xTCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvdXRtcC5oIGIvbGliYy9pbmNsdWRlL3V0bXAuaAppbmRleCBkNzY0MjI3Li5lYmYyMzcyIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvdXRtcC5oCisrKyBiL2xpYmMvaW5jbHVkZS91dG1wLmgKQEAgLTkxLDYgKzkxLDggQEAKIHZvaWQgc2V0dXRlbnQoKTsKIHN0cnVjdCB1dG1wKiBnZXR1dGVudCgpOwogCitpbnQgbG9naW5fdHR5KGludCk7CisKIF9fRU5EX0RFQ0xTCiAKICNlbmRpZiAvKiBfVVRNUF9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9pbmNsdWRlL3djaGFyLmggYi9saWJjL2luY2x1ZGUvd2NoYXIuaAppbmRleCBlMGU1YzgyLi5lYTZhY2EwIDEwMDY0NAotLS0gYS9saWJjL2luY2x1ZGUvd2NoYXIuaAorKysgYi9saWJjL2luY2x1ZGUvd2NoYXIuaApAQCAtMzQsNiArMzQsNyBAQAogI2luY2x1ZGUgPHN0ZGFyZy5oPgogI2luY2x1ZGUgPHN0ZGRlZi5oPgogI2luY2x1ZGUgPHRpbWUuaD4KKyNpbmNsdWRlIDx4bG9jYWxlLmg+CiAKICNpbmNsdWRlIDxtYWNoaW5lL3djaGFyX2xpbWl0cy5oPgogCkBAIC0xMTAsOCArMTExLDExIEBACiBleHRlcm4gaW50IHZzd3NjYW5mKGNvbnN0IHdjaGFyX3QqLCBjb25zdCB3Y2hhcl90KiwgdmFfbGlzdCk7CiBleHRlcm4gaW50IHZ3cHJpbnRmKGNvbnN0IHdjaGFyX3QqLCB2YV9saXN0KTsKIGV4dGVybiBpbnQgdndzY2FuZihjb25zdCB3Y2hhcl90KiwgdmFfbGlzdCk7CitleHRlcm4gd2NoYXJfdCogd2NwY3B5ICh3Y2hhcl90KiwgY29uc3Qgd2NoYXJfdCAqKTsKK2V4dGVybiB3Y2hhcl90KiB3Y3BuY3B5ICh3Y2hhcl90KiwgY29uc3Qgd2NoYXJfdCAqLCBzaXplX3QpOwogZXh0ZXJuIHNpemVfdCAgICAgICAgICAgIHdjcnRvbWIoY2hhciAqLCB3Y2hhcl90LCBtYnN0YXRlX3QgKik7CiBleHRlcm4gaW50ICAgICAgICAgICAgICAgd2NzY2FzZWNtcChjb25zdCB3Y2hhcl90ICosIGNvbnN0IHdjaGFyX3QgKik7CitleHRlcm4gaW50ICAgICAgICAgICAgICAgd2NzY2FzZWNtcF9sKGNvbnN0IHdjaGFyX3QgKiwgY29uc3Qgd2NoYXJfdCAqLCBsb2NhbGVfdCk7CiBleHRlcm4gd2NoYXJfdCAgICAgICAgICAqd2NzY2F0KHdjaGFyX3QgKiwgY29uc3Qgd2NoYXJfdCAqKTsKIGV4dGVybiB3Y2hhcl90ICAgICAgICAgICp3Y3NjaHIoY29uc3Qgd2NoYXJfdCAqLCB3Y2hhcl90KTsKIGV4dGVybiBpbnQgICAgICAgICAgICAgICB3Y3NjbXAoY29uc3Qgd2NoYXJfdCAqLCBjb25zdCB3Y2hhcl90ICopOwpAQCAtMTIxLDYgKzEyNSw3IEBACiBleHRlcm4gc2l6ZV90ICAgICAgICAgICAgd2NzZnRpbWUod2NoYXJfdCAqLCBzaXplX3QsIGNvbnN0IHdjaGFyX3QgKiwgY29uc3Qgc3RydWN0IHRtICopIF9fTElCQ19BQklfUFVCTElDX187CiBleHRlcm4gc2l6ZV90ICAgICAgICAgICAgd2NzbGVuKGNvbnN0IHdjaGFyX3QgKik7CiBleHRlcm4gaW50ICAgICAgICAgICAgICAgd2NzbmNhc2VjbXAoY29uc3Qgd2NoYXJfdCAqLCBjb25zdCB3Y2hhcl90ICosIHNpemVfdCk7CitleHRlcm4gaW50ICAgICAgICAgICAgICAgd2NzbmNhc2VjbXBfbChjb25zdCB3Y2hhcl90ICosIGNvbnN0IHdjaGFyX3QgKiwgc2l6ZV90LCBsb2NhbGVfdCk7CiBleHRlcm4gd2NoYXJfdCAgICAgICAgICAqd2NzbmNhdCh3Y2hhcl90ICosIGNvbnN0IHdjaGFyX3QgKiwgc2l6ZV90KTsKIGV4dGVybiBpbnQgICAgICAgICAgICAgICB3Y3NuY21wKGNvbnN0IHdjaGFyX3QgKiwgY29uc3Qgd2NoYXJfdCAqLCBzaXplX3QpOwogZXh0ZXJuIHdjaGFyX3QgICAgICAgICAgKndjc25jcHkod2NoYXJfdCAqLCBjb25zdCB3Y2hhcl90ICosIHNpemVfdCk7CkBAIC0xNDYsNiArMTUxLDkgQEAKIGV4dGVybiB3Y2hhcl90ICAgICAgICAgICp3bWVtY2hyKGNvbnN0IHdjaGFyX3QgKiwgd2NoYXJfdCwgc2l6ZV90KTsKIGV4dGVybiBpbnQgICAgICAgICAgICAgICB3bWVtY21wKGNvbnN0IHdjaGFyX3QgKiwgY29uc3Qgd2NoYXJfdCAqLCBzaXplX3QpOwogZXh0ZXJuIHdjaGFyX3QgICAgICAgICAgKndtZW1jcHkod2NoYXJfdCAqLCBjb25zdCB3Y2hhcl90ICosIHNpemVfdCk7CisjaWYgZGVmaW5lZChfX1VTRV9HTlUpCitleHRlcm4gd2NoYXJfdCAgICAgICAgICAqd21lbXBjcHkod2NoYXJfdCAqLCBjb25zdCB3Y2hhcl90ICosIHNpemVfdCk7CisjZW5kaWYKIGV4dGVybiB3Y2hhcl90ICAgICAgICAgICp3bWVtbW92ZSh3Y2hhcl90ICosIGNvbnN0IHdjaGFyX3QgKiwgc2l6ZV90KTsKIGV4dGVybiB3Y2hhcl90ICAgICAgICAgICp3bWVtc2V0KHdjaGFyX3QgKiwgd2NoYXJfdCwgc2l6ZV90KTsKIGV4dGVybiBpbnQgICAgICAgICAgICAgICB3cHJpbnRmKGNvbnN0IHdjaGFyX3QgKiwgLi4uKTsKQEAgLTE2Niw2ICsxNzQsNyBAQAogZXh0ZXJuIHdjdHJhbnNfdCB3Y3RyYW5zKGNvbnN0IGNoYXIqKTsKIAogI2lmIF9fUE9TSVhfVklTSUJMRSA+PSAyMDA4MDkKK0ZJTEUqIG9wZW5fd21lbXN0cmVhbSh3Y2hhcl90KiosIHNpemVfdCopOwogd2NoYXJfdCogd2NzZHVwKGNvbnN0IHdjaGFyX3QqKTsKIHNpemVfdCB3Y3NubGVuKGNvbnN0IHdjaGFyX3QqLCBzaXplX3QpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC90b29scy9jbGVhbl9oZWFkZXIucHkgYi9saWJjL2tlcm5lbC90b29scy9jbGVhbl9oZWFkZXIucHkKaW5kZXggNjYwMTgxNy4uMGUwZWQ3NiAxMDA3NTUKLS0tIGEvbGliYy9rZXJuZWwvdG9vbHMvY2xlYW5faGVhZGVyLnB5CisrKyBiL2xpYmMva2VybmVsL3Rvb2xzL2NsZWFuX2hlYWRlci5weQpAQCAtNjAsMTIgKzYwLDcgQEAKICMgICB1c2luZyB0aGVtIGFueXdheS4KICMKICMKLSMgMy4gV2hpdGVzcGFjZSBjbGVhbnVwOgotIwotIyAgIFRoZSBmaW5hbCBwYXNzIHJlbW92ZXMgYW55IGNvbW1lbnRzIGFuZCBlbXB0eSBsaW5lcyBmcm9tIHRoZSBmaW5hbCBoZWFkZXJzLgotIwotIwotIyA0LiBBZGQgYSBzdGFuZGFyZCBkaXNjbGFpbWVyOgorIyAzLiBBZGQgYSBzdGFuZGFyZCBkaXNjbGFpbWVyOgogIwogIyAgIFRoZSBtZXNzYWdlOgogIwpAQCAtMTQxLDggKzEzNiw5IEBACiAKICAgICAjIG5vdywgbGV0J3MgcGFyc2UgdGhlIGZpbGUKICAgICAjCi0gICAgYmxvY2tzID0gY3BwLkJsb2NrUGFyc2VyKCkucGFyc2VGaWxlKHBhdGgpCi0gICAgaWYgbm90IGJsb2NrczoKKyAgICBwYXJzZXIgPSBjcHAuQmxvY2tQYXJzZXIoKQorICAgIGJsb2NrcyA9IHBhcnNlci5wYXJzZUZpbGUocGF0aCkKKyAgICBpZiBub3QgcGFyc2VyLnBhcnNlZDoKICAgICAgICAgc3lzLnN0ZGVyci53cml0ZSggImVycm9yOiBjYW4ndCBwYXJzZSAnJXMnIiAlIHBhdGggKQogICAgICAgICBzeXMuZXhpdCgxKQogCkBAIC0xNTcsOSArMTUzLDcgQEAKICAgICBibG9ja3Mub3B0aW1pemVJZjAxKCkKICAgICBibG9ja3MucmVtb3ZlVmFyc0FuZEZ1bmNzKCBzdGF0aWNzICkKICAgICBibG9ja3MucmVwbGFjZVRva2Vucygga2VybmVsX3Rva2VuX3JlcGxhY2VtZW50cyApCi0gICAgYmxvY2tzLnJlbW92ZUNvbW1lbnRzKCkKICAgICBibG9ja3MucmVtb3ZlTWFjcm9EZWZpbmVzKCBrZXJuZWxfaWdub3JlZF9tYWNyb3MgKQotICAgIGJsb2Nrcy5yZW1vdmVXaGl0ZVNwYWNlKCkKIAogICAgIG91dCA9IFN0cmluZ091dHB1dCgpCiAgICAgb3V0LndyaXRlKCBrZXJuZWxfZGlzY2xhaW1lciApCkBAIC0xOTksOCArMTkzLDcgQEAKICAgICAgICAgaWYgb3B0ID09ICctdSc6CiAgICAgICAgICAgICBub1VwZGF0ZSA9IDAKICAgICAgICAgZWxpZiBvcHQgPT0gJy12JzoKLSAgICAgICAgICAgIHZlcmJvc2UgPSAxCi0gICAgICAgICAgICBEX3NldGxldmVsKDEpCisgICAgICAgICAgICBsb2dnaW5nLmJhc2ljQ29uZmlnKGxldmVsPWxvZ2dpbmcuREVCVUcpCiAgICAgICAgIGVsaWYgb3B0ID09ICctayc6CiAgICAgICAgICAgICBrZXJuZWxfb3JpZ2luYWxfcGF0aCA9IGFyZwogICAgICAgICBlbGlmIG9wdCA9PSAnLWQnOgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdG9vbHMvY3BwLnB5IGIvbGliYy9rZXJuZWwvdG9vbHMvY3BwLnB5CmluZGV4IDJiZTk1MzIuLjEwY2UyOTAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3Rvb2xzL2NwcC5weQorKysgYi9saWJjL2tlcm5lbC90b29scy9jcHAucHkKQEAgLTEsNTYwICsxLDQwMyBAQAotIyBhIGdsb3JpZmllZCBDIHByZS1wcm9jZXNzb3IgcGFyc2VyCisjIS91c3IvYmluL3B5dGhvbgorIiIiQSBnbG9yaWZpZWQgQyBwcmUtcHJvY2Vzc29yIHBhcnNlci4iIiIKIAotaW1wb3J0IHN5cywgcmUsIHN0cmluZwotZnJvbSB1dGlscyBpbXBvcnQgKgotZnJvbSBkZWZhdWx0cyBpbXBvcnQgKgoraW1wb3J0IGN0eXBlcworaW1wb3J0IGxvZ2dpbmcKK2ltcG9ydCBvcworaW1wb3J0IHJlCitpbXBvcnQgc2l0ZQoraW1wb3J0IHV0aWxzCiAKLWRlYnVnVG9rZW5zICAgICAgICAgICAgID0gRmFsc2UKLWRlYnVnRGlyZWN0aXZlVG9rZW5pemVyID0gRmFsc2UKLWRlYnVnTGluZVBhcnNpbmcgICAgICAgID0gRmFsc2UKLWRlYnVnQ3BwRXhwciAgICAgICAgICAgID0gRmFsc2UKLWRlYnVnT3B0aW1JZjAxICAgICAgICAgID0gRmFsc2UKK3RvcCA9IG9zLmdldGVudignQU5EUk9JRF9CVUlMRF9UT1AnKQoraWYgdG9wIGlzIE5vbmU6CisgICAgdXRpbHMucGFuaWMoJ0FORFJPSURfQlVJTERfVE9QIG5vdCBzZXQuXG4nKQogCi0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCi0jIyMjIyAgICAgICAgICAgQyBQIFAgICBUIE8gSyBFIE4gUyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCi0jIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCi0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIFNldCB1cCB0aGUgZW52IHZhcnMgZm9yIGxpYmNsYW5nLgorc2l0ZS5hZGRzaXRlZGlyKG9zLnBhdGguam9pbih0b3AsICdleHRlcm5hbC9jbGFuZy9iaW5kaW5ncy9weXRob24nKSkKKworaW1wb3J0IGNsYW5nLmNpbmRleAorZnJvbSBjbGFuZy5jaW5kZXggaW1wb3J0IGNvbmYKK2Zyb20gY2xhbmcuY2luZGV4IGltcG9ydCBDdXJzb3IKK2Zyb20gY2xhbmcuY2luZGV4IGltcG9ydCBDdXJzb3JLaW5kCitmcm9tIGNsYW5nLmNpbmRleCBpbXBvcnQgU291cmNlTG9jYXRpb24KK2Zyb20gY2xhbmcuY2luZGV4IGltcG9ydCBTb3VyY2VSYW5nZQorZnJvbSBjbGFuZy5jaW5kZXggaW1wb3J0IFRva2VuR3JvdXAKK2Zyb20gY2xhbmcuY2luZGV4IGltcG9ydCBUb2tlbktpbmQKK2Zyb20gY2xhbmcuY2luZGV4IGltcG9ydCBUcmFuc2xhdGlvblVuaXQKKworIyBTZXQgdXAgTERfTElCUkFSWV9QQVRIIHRvIGluY2x1ZGUgbGliY2xhbmcuc28sIGxpYkxMVk0uc28sIGFuZCBldGMuCisjIE5vdGUgdGhhdCBzZXR0aW5nIExEX0xJQlJBUllfUEFUSCB3aXRoIG9zLnB1dGVudigpIHNvbWV0aW1lcyBkb2Vzbid0IGhlbHAuCitjbGFuZy5jaW5kZXguQ29uZmlnLnNldF9saWJyYXJ5X3BhdGgob3MucGF0aC5qb2luKHRvcCwgJ3ByZWJ1aWx0cy9zZGsvdG9vbHMvbGludXgvbGliNjQnKSkKKworZnJvbSBkZWZhdWx0cyBpbXBvcnQga0NwcFVuZGVmaW5lZE1hY3JvCitmcm9tIGRlZmF1bHRzIGltcG9ydCBrZXJuZWxfcmVtb3ZlX2NvbmZpZ19tYWNyb3MKK2Zyb20gZGVmYXVsdHMgaW1wb3J0IGtlcm5lbF90b2tlbl9yZXBsYWNlbWVudHMKKworCitkZWJ1Z0Jsb2NrUGFyc2VyID0gRmFsc2UKK2RlYnVnQ3BwRXhwciA9IEZhbHNlCitkZWJ1Z09wdGltSWYwMSA9IEZhbHNlCisKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKKyMjIyMjICAgICAgICAgICBDIFAgUCAgIFQgTyBLIEUgTiBTICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKKyMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIAogIyB0aGUgbGlzdCBvZiBzdXBwb3J0ZWQgQy1wcmVwcm9jZXNzb3IgdG9rZW5zCiAjIHBsdXMgYSBjb3VwbGUgb2YgQyB0b2tlbnMgYXMgd2VsbAotdG9rRU9GICAgICAgID0gIlwwIgotdG9rTE4gICAgICAgID0gIlxuIgordG9rRU9GID0gIlwwIgordG9rTE4gPSAiXG4iCiB0b2tTVFJJTkdJRlkgPSAiIyIKLXRva0NPTkNBVCAgICA9ICIjIyIKLXRva0xPR0lDQU5EICA9ICImJiIKLXRva0xPR0lDT1IgICA9ICJ8fCIKLXRva1NITCAgICAgICA9ICI8PCIKLXRva1NIUiAgICAgICA9ICI+PiIKLXRva0VRVUFMICAgICA9ICI9PSIKLXRva05FUVVBTCAgICA9ICIhPSIKLXRva0xUICAgICAgICA9ICI8IgotdG9rTFRFICAgICAgID0gIjw9IgotdG9rR1QgICAgICAgID0gIj4iCi10b2tHVEUgICAgICAgPSAiPj0iCi10b2tFTExJUFNJUyAgPSAiLi4uIgotdG9rU1BBQ0UgICAgID0gIiAiCi10b2tERUZJTkVEICAgPSAiZGVmaW5lZCIKLXRva0xQQVJFTiAgICA9ICIoIgotdG9rUlBBUkVOICAgID0gIikiCi10b2tOT1QgICAgICAgPSAiISIKLXRva1BMVVMgICAgICA9ICIrIgotdG9rTUlOVVMgICAgID0gIi0iCi10b2tNVUxUSVBMWSAgPSAiKiIKLXRva0RJVklERSAgICA9ICIvIgotdG9rTU9EVUxVUyAgID0gIiUiCi10b2tCSU5BTkQgICAgPSAiJiIKLXRva0JJTk9SICAgICA9ICJ8IgotdG9rQklOWE9SICAgID0gIl4iCi10b2tDT01NQSAgICAgPSAiLCIKLXRva0xCUkFDRSAgICA9ICJ7IgotdG9rUkJSQUNFICAgID0gIn0iCi10b2tBUlJPVyAgICAgPSAiLT4iCit0b2tDT05DQVQgPSAiIyMiCit0b2tMT0dJQ0FORCA9ICImJiIKK3Rva0xPR0lDT1IgPSAifHwiCit0b2tTSEwgPSAiPDwiCit0b2tTSFIgPSAiPj4iCit0b2tFUVVBTCA9ICI9PSIKK3Rva05FUVVBTCA9ICIhPSIKK3Rva0xUID0gIjwiCit0b2tMVEUgPSAiPD0iCit0b2tHVCA9ICI+IgordG9rR1RFID0gIj49IgordG9rRUxMSVBTSVMgPSAiLi4uIgordG9rU1BBQ0UgPSAiICIKK3Rva0RFRklORUQgPSAiZGVmaW5lZCIKK3Rva0xQQVJFTiA9ICIoIgordG9rUlBBUkVOID0gIikiCit0b2tOT1QgPSAiISIKK3Rva1BMVVMgPSAiKyIKK3Rva01JTlVTID0gIi0iCit0b2tNVUxUSVBMWSA9ICIqIgordG9rRElWSURFID0gIi8iCit0b2tNT0RVTFVTID0gIiUiCit0b2tCSU5BTkQgPSAiJiIKK3Rva0JJTk9SID0gInwiCit0b2tCSU5YT1IgPSAiXiIKK3Rva0NPTU1BID0gIiwiCit0b2tMQlJBQ0UgPSAieyIKK3Rva1JCUkFDRSA9ICJ9IgordG9rQVJST1cgPSAiLT4iCiB0b2tJTkNSRU1FTlQgPSAiKysiCiB0b2tERUNSRU1FTlQgPSAiLS0iCi10b2tOVU1CRVIgICAgPSAiPG51bWJlcj4iCi10b2tJREVOVCAgICAgPSAiPGlkZW50PiIKLXRva1NUUklORyAgICA9ICI8c3RyaW5nPiIKK3Rva05VTUJFUiA9ICI8bnVtYmVyPiIKK3Rva0lERU5UID0gIjxpZGVudD4iCit0b2tTVFJJTkcgPSAiPHN0cmluZz4iCiAKLWNsYXNzIFRva2VuOgotICAgICIiImEgc2ltcGxlIGNsYXNzIHRvIGhvbGQgaW5mb3JtYXRpb24gYWJvdXQgYSBnaXZlbiB0b2tlbi4KLSAgICAgICBlYWNoIHRva2VuIGhhcyBhIHBvc2l0aW9uIGluIHRoZSBzb3VyY2UgY29kZSwgYXMgd2VsbCBhcwotICAgICAgIGFuICdpZCcgYW5kIGEgJ3ZhbHVlJy4gdGhlIGlkIGlzIGEgc3RyaW5nIHRoYXQgaWRlbnRpZmllcwotICAgICAgIHRoZSB0b2tlbidzIGNsYXNzLCB3aGlsZSB0aGUgdmFsdWUgaXMgdGhlIHN0cmluZyBvZiB0aGUKLSAgICAgICBvcmlnaW5hbCB0b2tlbiBpdHNlbGYuCiAKLSAgICAgICBmb3IgZXhhbXBsZSwgdGhlIHRva2VuaXplciBjb25jYXRlbmF0ZXMgYSBzZXJpZXMgb2Ygc3BhY2VzCi0gICAgICAgYW5kIHRhYnMgYXMgYSBzaW5nbGUgdG9rU1BBQ0UgaWQsIHdob3NlIHZhbHVlIGlmIHRoZSBvcmlnaW5hbAotICAgICAgIHNwYWNlcyt0YWJzIHNlcXVlbmNlLiIiIgorY2xhc3MgVG9rZW4oY2xhbmcuY2luZGV4LlRva2VuKToKKyAgICAiIiJBIGNsYXNzIHRoYXQgcmVwcmVzZW50cyBvbmUgdG9rZW4gYWZ0ZXIgcGFyc2luZy4KIAotICAgIGRlZiBfX2luaXRfXyhzZWxmKToKLSAgICAgICAgc2VsZi5pZCAgICAgPSBOb25lCi0gICAgICAgIHNlbGYudmFsdWUgID0gTm9uZQotICAgICAgICBzZWxmLmxpbmVubyA9IDAKLSAgICAgICAgc2VsZi5jb2xubyAgPSAwCisgICAgSXQgaW5oZXJpdHMgdGhlIGNsYXNzIGluIGxpYmNsYW5nLCB3aXRoIGFuIGV4dHJhIGlkIHByb3BlcnR5IHRvIGhvbGQgdGhlCisgICAgbmV3IHNwZWxsaW5nIG9mIHRoZSB0b2tlbi4gVGhlIHNwZWxsaW5nIHByb3BlcnR5IGluIHRoZSBiYXNlIGNsYXNzIGlzCisgICAgZGVmaW5lZCBhcyByZWFkLW9ubHkuIE5ldyBuYW1lcyBhZnRlciBtYWNybyBpbnN0YW50aWF0aW9uIGFyZSBzYXZlZCBpbgorICAgIHRoZWlyIGlkcyBub3cuIEl0IGFsc28gZmFjaWxpdGF0ZXMgdGhlIHJlbmFtaW5nIG9mIGRpcmVjdGl2ZSBvcHRpbWl6YXRpb25zCisgICAgbGlrZSByZXBsYWNpbmcgJ2lmbmRlZiBYJyB3aXRoICdpZiAhZGVmaW5lZChYKScuCiAKLSAgICBkZWYgc2V0KHNlbGYsaWQsdmFsPU5vbmUpOgotICAgICAgICBzZWxmLmlkID0gaWQKLSAgICAgICAgaWYgdmFsOgotICAgICAgICAgICAgc2VsZi52YWx1ZSA9IHZhbAorICAgIEl0IGFsc28gb3ZlcnJpZGVzIHRoZSBjdXJzb3IgcHJvcGVydHkgb2YgdGhlIGJhc2UgY2xhc3MuIEJlY2F1c2UgdGhlIG9uZQorICAgIGluIGxpYmNsYW5nIGFsd2F5cyBxdWVyaWVzIGJhc2VkIG9uIGEgc2luZ2xlIHRva2VuLCB3aGljaCB1c3VhbGx5IGRvZXNuJ3QKKyAgICBob2xkIHVzZWZ1bCBpbmZvcm1hdGlvbi4gVGhlIGN1cnNvciBpbiB0aGlzIGNsYXNzIGNhbiBiZSBzZXQgYnkgY2FsbGluZworICAgIENwcFRva2VuaXplci5nZXRUb2tlbnNXaXRoQ3Vyc29ycygpLiBPdGhlcndpc2UgaXQgcmV0dXJucyB0aGUgb25lIGluIHRoZQorICAgIGJhc2UgY2xhc3MuCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgdHU9Tm9uZSwgZ3JvdXA9Tm9uZSwgaW50X2RhdGE9Tm9uZSwgcHRyX2RhdGE9Tm9uZSwKKyAgICAgICAgICAgICAgICAgY3Vyc29yPU5vbmUpOgorICAgICAgICBjbGFuZy5jaW5kZXguVG9rZW4uX19pbml0X18oc2VsZikKKyAgICAgICAgc2VsZi5faWQgPSBOb25lCisgICAgICAgIHNlbGYuX3R1ID0gdHUKKyAgICAgICAgc2VsZi5fZ3JvdXAgPSBncm91cAorICAgICAgICBzZWxmLl9jdXJzb3IgPSBjdXJzb3IKKyAgICAgICAgIyBzZWxmLmludF9kYXRhIGFuZCBzZWxmLnB0cl9kYXRhIGFyZSBmcm9tIHRoZSBiYXNlIGNsYXNzLiBCdXQKKyAgICAgICAgIyBzZWxmLmludF9kYXRhIGRvZXNuJ3QgYWNjZXB0IGEgTm9uZSB2YWx1ZS4KKyAgICAgICAgaWYgaW50X2RhdGEgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLmludF9kYXRhID0gaW50X2RhdGEKKyAgICAgICAgc2VsZi5wdHJfZGF0YSA9IHB0cl9kYXRhCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgaWQoc2VsZik6CisgICAgICAgICIiIk5hbWUgb2YgdGhlIHRva2VuLiIiIgorICAgICAgICBpZiBzZWxmLl9pZCBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuc3BlbGxpbmcKICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHNlbGYudmFsdWUgPSBpZAotICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2lkCiAKLSAgICBkZWYgY29weUZyb20oc2VsZixzcmMpOgotICAgICAgICBzZWxmLmlkICAgICA9IHNyYy5pZAotICAgICAgICBzZWxmLnZhbHVlICA9IHNyYy52YWx1ZQotICAgICAgICBzZWxmLmxpbmVubyA9IHNyYy5saW5lbm8KLSAgICAgICAgc2VsZi5jb2xubyAgPSBzcmMuY29sbm8KKyAgICBAaWQuc2V0dGVyCisgICAgZGVmIGlkKHNlbGYsIG5ld19pZCk6CisgICAgICAgICIiIlNldHRpbmcgbmFtZSBvZiB0aGUgdG9rZW4uIiIiCisgICAgICAgIHNlbGYuX2lkID0gbmV3X2lkCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgY3Vyc29yKHNlbGYpOgorICAgICAgICBpZiBzZWxmLl9jdXJzb3IgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX2N1cnNvciA9IGNsYW5nLmNpbmRleC5Ub2tlbi5jdXJzb3IKKyAgICAgICAgcmV0dXJuIHNlbGYuX2N1cnNvcgorCisgICAgQGN1cnNvci5zZXR0ZXIKKyAgICBkZWYgY3Vyc29yKHNlbGYsIG5ld19jdXJzb3IpOgorICAgICAgICBzZWxmLl9jdXJzb3IgPSBuZXdfY3Vyc29yCiAKICAgICBkZWYgX19yZXByX18oc2VsZik6Ci0gICAgICAgIGlmIHNlbGYuaWQgPT0gdG9rSURFTlQ6Ci0gICAgICAgICAgICByZXR1cm4gIihpZGVudCAlcykiICUgc2VsZi52YWx1ZQotICAgICAgICBpZiBzZWxmLmlkID09IHRva05VTUJFUjoKLSAgICAgICAgICAgIHJldHVybiAiKG51bWJlciAlcykiICUgc2VsZi52YWx1ZQotICAgICAgICBpZiBzZWxmLmlkID09IHRva1NUUklORzoKLSAgICAgICAgICAgIHJldHVybiAiKHN0cmluZyAnJXMnKSIgJSBzZWxmLnZhbHVlCi0gICAgICAgIGlmIHNlbGYuaWQgPT0gdG9rTE46Ci0gICAgICAgICAgICByZXR1cm4gIjxMTj4iCi0gICAgICAgIGlmIHNlbGYuaWQgPT0gdG9rRU9GOgotICAgICAgICAgICAgcmV0dXJuICI8RU9GPiIKLSAgICAgICAgaWYgc2VsZi5pZCA9PSB0b2tTUEFDRSBhbmQgc2VsZi52YWx1ZSA9PSAiXFwiOgotICAgICAgICAgICAgIyB0aGlzIGNvcnJlc3BvbmRzIHRvIGEgdHJhaWxpbmcgXCB0aGF0IHdhcyB0cmFuc2Zvcm1lZCBpbnRvIGEgdG9rU1BBQ0UKLSAgICAgICAgICAgIHJldHVybiAiPFxcPiIKKyAgICAgICAgaWYgc2VsZi5pZCA9PSAnZGVmaW5lZCc6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5pZAorICAgICAgICBlbGlmIHNlbGYua2luZCA9PSBUb2tlbktpbmQuSURFTlRJRklFUjoKKyAgICAgICAgICAgIHJldHVybiAiKGlkZW50ICVzKSIgJSBzZWxmLmlkCiAKICAgICAgICAgcmV0dXJuIHNlbGYuaWQKIAogICAgIGRlZiBfX3N0cl9fKHNlbGYpOgotICAgICAgICBpZiBzZWxmLmlkID09IHRva0lERU5UOgotICAgICAgICAgICAgcmV0dXJuIHNlbGYudmFsdWUKLSAgICAgICAgaWYgc2VsZi5pZCA9PSB0b2tOVU1CRVI6Ci0gICAgICAgICAgICByZXR1cm4gc2VsZi52YWx1ZQotICAgICAgICBpZiBzZWxmLmlkID09IHRva1NUUklORzoKLSAgICAgICAgICAgIHJldHVybiBzZWxmLnZhbHVlCi0gICAgICAgIGlmIHNlbGYuaWQgPT0gdG9rRU9GOgotICAgICAgICAgICAgcmV0dXJuICI8RU9GPiIKLSAgICAgICAgaWYgc2VsZi5pZCA9PSB0b2tTUEFDRToKLSAgICAgICAgICAgIGlmIHNlbGYudmFsdWUgPT0gIlxcIjogICMgdHJhaWxpbmcgXAotICAgICAgICAgICAgICAgIHJldHVybiAiXFxcbiIKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYudmFsdWUKLQogICAgICAgICByZXR1cm4gc2VsZi5pZAogCisKIGNsYXNzIEJhZEV4cGVjdGVkVG9rZW4oRXhjZXB0aW9uKToKLSAgICBkZWYgX19pbml0X18oc2VsZixtc2cpOgotICAgICAgICBwcmludCBtc2cKKyAgICAiIiJBbiBleGNlcHRpb24gdGhhdCB3aWxsIGJlIHJhaXNlZCBmb3IgdW5leHBlY3RlZCB0b2tlbnMuIiIiCisgICAgcGFzcwogCiAKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKLSMjIyMjICAgICAgICAgICBDIFAgUCAgIFQgTyBLIEUgTiBJIFogRSBSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKLSMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMgVGhlIF9fY29udGFpbnNfXyBmdW5jdGlvbiBpbiBsaWJjbGFuZyBTb3VyY2VSYW5nZSBjbGFzcyBjb250YWlucyBhIGJ1Zy4gSXQKKyMgZ2l2ZXMgd3JvbmcgcmVzdWx0IHdoZW4gZGVhbGluZyB3aXRoIHNpbmdsZSBsaW5lIHJhbmdlLgorIyBCdWcgZmlsZWQgd2l0aCB1cHN0cmVhbToKKyMgaHR0cDovL2xsdm0ub3JnL2J1Z3Mvc2hvd19idWcuY2dpP2lkPTIyMjQzLCBodHRwOi8vcmV2aWV3cy5sbHZtLm9yZy9ENzI3NworZGVmIFNvdXJjZVJhbmdlX19jb250YWluc19fKHNlbGYsIG90aGVyKToKKyAgICAiIiJEZXRlcm1pbmUgaWYgYSBnaXZlbiBsb2NhdGlvbiBpcyBpbnNpZGUgdGhlIHJhbmdlLiIiIgorICAgIGlmIG5vdCBpc2luc3RhbmNlKG90aGVyLCBTb3VyY2VMb2NhdGlvbik6CisgICAgICAgIHJldHVybiBGYWxzZQorICAgIGlmIG90aGVyLmZpbGUgaXMgTm9uZSBhbmQgc2VsZi5zdGFydC5maWxlIGlzIE5vbmU6CisgICAgICAgIHBhc3MKKyAgICBlbGlmIChzZWxmLnN0YXJ0LmZpbGUubmFtZSAhPSBvdGhlci5maWxlLm5hbWUgb3IKKyAgICAgICAgICBvdGhlci5maWxlLm5hbWUgIT0gc2VsZi5lbmQuZmlsZS5uYW1lKToKKyAgICAgICAgIyBzYW1lIGZpbGUgbmFtZQorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICAjIHNhbWUgZmlsZSwgaW4gYmV0d2VlbiBsaW5lcworICAgIGlmIHNlbGYuc3RhcnQubGluZSA8IG90aGVyLmxpbmUgPCBzZWxmLmVuZC5saW5lOgorICAgICAgICByZXR1cm4gVHJ1ZQorICAgICMgc2FtZSBmaWxlLCBzYW1lIGxpbmUKKyAgICBlbGlmIHNlbGYuc3RhcnQubGluZSA9PSBvdGhlci5saW5lID09IHNlbGYuZW5kLmxpbmU6CisgICAgICAgIGlmIHNlbGYuc3RhcnQuY29sdW1uIDw9IG90aGVyLmNvbHVtbiA8PSBzZWxmLmVuZC5jb2x1bW46CisgICAgICAgICAgICByZXR1cm4gVHJ1ZQorICAgIGVsaWYgc2VsZi5zdGFydC5saW5lID09IG90aGVyLmxpbmU6CisgICAgICAgICMgc2FtZSBmaWxlIGZpcnN0IGxpbmUKKyAgICAgICAgaWYgc2VsZi5zdGFydC5jb2x1bW4gPD0gb3RoZXIuY29sdW1uOgorICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICBlbGlmIG90aGVyLmxpbmUgPT0gc2VsZi5lbmQubGluZToKKyAgICAgICAgIyBzYW1lIGZpbGUgbGFzdCBsaW5lCisgICAgICAgIGlmIG90aGVyLmNvbHVtbiA8PSBzZWxmLmVuZC5jb2x1bW46CisgICAgICAgICAgICByZXR1cm4gVHJ1ZQorICAgIHJldHVybiBGYWxzZQogCi0jIGxpc3Qgb2YgbG9uZyBzeW1ib2xzLCBpLmUuIHRob3NlIHRoYXQgdGFrZSBtb3JlIHRoYW4gb25lIGNoYXJhY3RlcnMKLWNwcExvbmdTeW1ib2xzID0gWyB0b2tDT05DQVQsIHRva0xPR0lDQU5ELCB0b2tMT0dJQ09SLCB0b2tTSEwsIHRva1NIUiwgdG9rRUxMSVBTSVMsIHRva0VRVUFMLFwKLSAgICAgICAgICAgICAgICAgICB0b2tORVFVQUwsIHRva0xURSwgdG9rR1RFLCB0b2tBUlJPVywgdG9rSU5DUkVNRU5ULCB0b2tERUNSRU1FTlQgXQogCi1jbGFzcyBDcHBUb2tlbml6ZXI6Ci0gICAgIiIiYW4gYWJzdHJhY3QgY2xhc3MgdXNlZCB0byBjb252ZXJ0IHNvbWUgaW5wdXQgdGV4dCBpbnRvIGEgbGlzdAotICAgICAgIG9mIHRva2Vucy4gcmVhbCBpbXBsZW1lbnRhdGlvbnMgZm9sbG93IGFuZCBkaWZmZXIgaW4gdGhlIGZvcm1hdAotICAgICAgIG9mIHRoZSBpbnB1dCB0ZXh0IG9ubHkiIiIKK1NvdXJjZVJhbmdlLl9fY29udGFpbnNfXyA9IFNvdXJjZVJhbmdlX19jb250YWluc19fCisKKworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIworIyMjIyMgICAgICAgICAgIEMgUCBQICAgVCBPIEsgRSBOIEkgWiBFIFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKKyMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKworCitjbGFzcyBDcHBUb2tlbml6ZXIob2JqZWN0KToKKyAgICAiIiJBIHRva2VuaXplciB0aGF0IGNvbnZlcnRzIHNvbWUgaW5wdXQgdGV4dCBpbnRvIGEgbGlzdCBvZiB0b2tlbnMuCisKKyAgICBJdCBjYWxscyBsaWJjbGFuZydzIHRva2VuaXplciB0byBnZXQgdGhlIHBhcnNlZCB0b2tlbnMuIEluIGFkZGl0aW9uLCBpdAorICAgIHVwZGF0ZXMgdGhlIGN1cnNvciBwcm9wZXJ0eSBpbiBlYWNoIHRva2VuIGFmdGVyIHBhcnNpbmcsIGJ5IGNhbGxpbmcKKyAgICBnZXRUb2tlbnNXaXRoQ3Vyc29ycygpLgorICAgICIiIgorCisgICAgY2xhbmdfZmxhZ3MgPSBbJy1FJywgJy14JywgJ2MnXQorICAgIG9wdGlvbnMgPSBUcmFuc2xhdGlvblVuaXQuUEFSU0VfREVUQUlMRURfUFJPQ0VTU0lOR19SRUNPUkQKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKLSAgICAgICAgIiIiaW5pdGlhbGl6ZSBhIG5ldyBDcHBUb2tlbml6ZXIgb2JqZWN0IiIiCi0gICAgICAgIHNlbGYuZW9mICA9IEZhbHNlICAjIGVuZCBvZiBmaWxlIHJlYWNoZWQgPwotICAgICAgICBzZWxmLnRleHQgPSBOb25lICAgIyBjb250ZW50IG9mIGN1cnJlbnQgbGluZSwgd2l0aCBmaW5hbCBcbiBzdHJpcHBlZAotICAgICAgICBzZWxmLmxpbmUgPSAwICAgICAgIyBudW1iZXIgb2YgY3VycmVudCBsaW5lCi0gICAgICAgIHNlbGYucG9zICA9IDAgICAgICAjIGN1cnJlbnQgY2hhcmFjdGVyIHBvc2l0aW9uIGluIGN1cnJlbnQgbGluZQotICAgICAgICBzZWxmLmxlbiAgPSAwICAgICAgIyBsZW5ndGggb2YgY3VycmVudCBsaW5lIHRleHQKLSAgICAgICAgc2VsZi5oZWxkID0gVG9rZW4oKQorICAgICAgICAiIiJJbml0aWFsaXplIGEgbmV3IENwcFRva2VuaXplciBvYmplY3QuIiIiCisgICAgICAgIHNlbGYuX2luZGV4ZXIgPSBjbGFuZy5jaW5kZXguSW5kZXguY3JlYXRlKCkKKyAgICAgICAgc2VsZi5fdHUgPSBOb25lCisgICAgICAgIHNlbGYuX2luZGV4ID0gMAorICAgICAgICBzZWxmLnRva2VucyA9IE5vbmUKIAotICAgIGRlZiBzZXRMaW5lVGV4dChzZWxmLGxpbmUpOgotICAgICAgICAiIiJzZXQgdGhlIGNvbnRlbnQgb2YgdGhlIChuZXh0KSBjdXJyZW50IGxpbmUuIHNob3VsZCBiZSBjYWxsZWQKLSAgICAgICAgICAgYnkgZmlsbExpbmVUZXh0KCkgaW4gZGVyaXZlZCBjbGFzc2VzIiIiCi0gICAgICAgIHNlbGYudGV4dCA9IGxpbmUKLSAgICAgICAgc2VsZi5sZW4gID0gbGVuKGxpbmUpCi0gICAgICAgIHNlbGYucG9zICA9IDAKKyAgICBkZWYgX2dldFRva2Vuc1dpdGhDdXJzb3JzKHNlbGYpOgorICAgICAgICAiIiJIZWxwZXIgbWV0aG9kIHRvIHJldHVybiBhbGwgdG9rZW5zIHdpdGggdGhlaXIgY3Vyc29ycy4KIAotICAgIGRlZiBmaWxsTGluZVRleHQoc2VsZik6Ci0gICAgICAgICIiInJlZnJlc2ggdGhlIGNvbnRlbnQgb2YgJ2xpbmUnIHdpdGggYSBuZXcgbGluZSBvZiBpbnB1dCIiIgotICAgICAgICAjIHRvIGJlIG92ZXJyaWRlbgotICAgICAgICBzZWxmLmVvZiA9IFRydWUKKyAgICAgICAgVGhlIGN1cnNvciBwcm9wZXJ0eSBpbiBhIGNsYW5nIFRva2VuIGRvZXNuJ3QgcHJvdmlkZSBlbm91Z2gKKyAgICAgICAgaW5mb3JtYXRpb24uIEJlY2F1c2UgaXQgaXMgcXVlcmllZCBiYXNlZCBvbiBzaW5nbGUgdG9rZW4gZWFjaCB0aW1lCisgICAgICAgIHdpdGhvdXQgYW55IGNvbnRleHQsIGkuZS4gdmlhIGNhbGxpbmcgY29uZi5saWIuY2xhbmdfYW5ub3RhdGVUb2tlbnMoKQorICAgICAgICB3aXRoIG9ubHkgb25lIHRva2VuIGdpdmVuLiBTbyB3ZSBvZnRlbiBzZWUgJ0lOVkFMSURfRklMRScgaW4gb25lCisgICAgICAgIHRva2VuJ3MgY3Vyc29yLiBJbiB0aGlzIGZ1bmN0aW9uIGl0IHBhc3NlcyBhbGwgdGhlIGF2YWlsYWJsZSB0b2tlbnMKKyAgICAgICAgdG8gZ2V0IG1vcmUgaW5mb3JtYXRpdmUgY3Vyc29ycy4KKyAgICAgICAgIiIiCiAKLSAgICBkZWYgbWFya1BvcyhzZWxmLHRvayk6Ci0gICAgICAgICIiIm1hcmsgdGhlIHBvc2l0aW9uIG9mIHRoZSBjdXJyZW50IHRva2VuIGluIHRoZSBzb3VyY2UgZmlsZSIiIgotICAgICAgICBpZiBzZWxmLmVvZiBvciBzZWxmLnBvcyA+IHNlbGYubGVuOgotICAgICAgICAgICAgdG9rLmxpbmVubyA9IHNlbGYubGluZSArIDEKLSAgICAgICAgICAgIHRvay5jb2xubyAgPSAwCisgICAgICAgIHRva2Vuc19tZW1vcnkgPSBjdHlwZXMuUE9JTlRFUihjbGFuZy5jaW5kZXguVG9rZW4pKCkKKyAgICAgICAgdG9rZW5zX2NvdW50ID0gY3R5cGVzLmNfdWludCgpCisKKyAgICAgICAgY29uZi5saWIuY2xhbmdfdG9rZW5pemUoc2VsZi5fdHUsIHNlbGYuX3R1LmN1cnNvci5leHRlbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN0eXBlcy5ieXJlZih0b2tlbnNfbWVtb3J5KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3R5cGVzLmJ5cmVmKHRva2Vuc19jb3VudCkpCisKKyAgICAgICAgY291bnQgPSBpbnQodG9rZW5zX2NvdW50LnZhbHVlKQorCisgICAgICAgICMgSWYgd2UgZ2V0IG5vIHRva2Vucywgbm8gbWVtb3J5IHdhcyBhbGxvY2F0ZWQuIEJlIHN1cmUgbm90IHRvIHJldHVybgorICAgICAgICAjIGFueXRoaW5nIGFuZCBwb3RlbnRpYWxseSBjYWxsIGEgZGVzdHJ1Y3RvciBvbiBub3RoaW5nLgorICAgICAgICBpZiBjb3VudCA8IDE6CisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBjdXJzb3JzID0gKEN1cnNvciAqIGNvdW50KSgpCisgICAgICAgIGN1cnNvcnNfbWVtb3J5ID0gY3R5cGVzLmNhc3QoY3Vyc29ycywgY3R5cGVzLlBPSU5URVIoQ3Vyc29yKSkKKworICAgICAgICBjb25mLmxpYi5jbGFuZ19hbm5vdGF0ZVRva2VucyhzZWxmLl90dSwgdG9rZW5zX21lbW9yeSwgY291bnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcnNfbWVtb3J5KQorCisgICAgICAgIHRva2Vuc19hcnJheSA9IGN0eXBlcy5jYXN0KAorICAgICAgICAgICAgdG9rZW5zX21lbW9yeSwKKyAgICAgICAgICAgIGN0eXBlcy5QT0lOVEVSKGNsYW5nLmNpbmRleC5Ub2tlbiAqIGNvdW50KSkuY29udGVudHMKKyAgICAgICAgdG9rZW5fZ3JvdXAgPSBUb2tlbkdyb3VwKHNlbGYuX3R1LCB0b2tlbnNfbWVtb3J5LCB0b2tlbnNfY291bnQpCisKKyAgICAgICAgdG9rZW5zID0gW10KKyAgICAgICAgZm9yIGkgaW4geHJhbmdlKDAsIGNvdW50KToKKyAgICAgICAgICAgIHRva2VuID0gVG9rZW4oc2VsZi5fdHUsIHRva2VuX2dyb3VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRfZGF0YT10b2tlbnNfYXJyYXlbaV0uaW50X2RhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHB0cl9kYXRhPXRva2Vuc19hcnJheVtpXS5wdHJfZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yPWN1cnNvcnNbaV0pCisgICAgICAgICAgICAjIFdlIG9ubHkgd2FudCBub24tY29tbWVudCB0b2tlbnMuCisgICAgICAgICAgICBpZiB0b2tlbi5raW5kICE9IFRva2VuS2luZC5DT01NRU5UOgorICAgICAgICAgICAgICAgIHRva2Vucy5hcHBlbmQodG9rZW4pCisKKyAgICAgICAgcmV0dXJuIHRva2VucworCisgICAgZGVmIHBhcnNlU3RyaW5nKHNlbGYsIGxpbmVzKToKKyAgICAgICAgIiIiUGFyc2UgYSBsaXN0IG9mIHRleHQgbGluZXMgaW50byBhIEJsb2NrTGlzdCBvYmplY3QuIiIiCisgICAgICAgIGZpbGVfID0gJ2R1bW15LmMnCisgICAgICAgIHNlbGYuX3R1ID0gc2VsZi5faW5kZXhlci5wYXJzZShmaWxlXywgc2VsZi5jbGFuZ19mbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2F2ZWRfZmlsZXM9WyhmaWxlXywgbGluZXMpXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM9c2VsZi5vcHRpb25zKQorICAgICAgICBzZWxmLnRva2VucyA9IHNlbGYuX2dldFRva2Vuc1dpdGhDdXJzb3JzKCkKKworICAgIGRlZiBwYXJzZUZpbGUoc2VsZiwgZmlsZV8pOgorICAgICAgICAiIiJQYXJzZSBhIGZpbGUgaW50byBhIEJsb2NrTGlzdCBvYmplY3QuIiIiCisgICAgICAgIHNlbGYuX3R1ID0gc2VsZi5faW5kZXhlci5wYXJzZShmaWxlXywgc2VsZi5jbGFuZ19mbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM9c2VsZi5vcHRpb25zKQorICAgICAgICBzZWxmLnRva2VucyA9IHNlbGYuX2dldFRva2Vuc1dpdGhDdXJzb3JzKCkKKworICAgIGRlZiBuZXh0VG9rZW4oc2VsZik6CisgICAgICAgICIiIlJldHVybiBuZXh0IHRva2VuIGZyb20gdGhlIGxpc3QuIiIiCisgICAgICAgIGlmIHNlbGYuX2luZGV4IDwgbGVuKHNlbGYudG9rZW5zKToKKyAgICAgICAgICAgIHQgPSBzZWxmLnRva2Vuc1tzZWxmLl9pbmRleF0KKyAgICAgICAgICAgIHNlbGYuX2luZGV4ICs9IDEKKyAgICAgICAgICAgIHJldHVybiB0CiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICB0b2subGluZW5vID0gc2VsZi5saW5lCi0gICAgICAgICAgICB0b2suY29sbm8gID0gc2VsZi5wb3MKLQotICAgIGRlZiBwZWVrQ2hhcihzZWxmKToKLSAgICAgICAgIiIicmV0dXJuIHRoZSBjdXJyZW50IHRva2VuIHVuZGVyIHRoZSBjdXJzb3Igd2l0aG91dCBtb3ZpbmcgaXQiIiIKLSAgICAgICAgaWYgc2VsZi5lb2Y6Ci0gICAgICAgICAgICByZXR1cm4gdG9rRU9GCi0KLSAgICAgICAgaWYgc2VsZi5wb3MgPiBzZWxmLmxlbjoKLSAgICAgICAgICAgIHNlbGYucG9zICAgPSAwCi0gICAgICAgICAgICBzZWxmLmxpbmUgKz0gMQotICAgICAgICAgICAgc2VsZi5maWxsTGluZVRleHQoKQotICAgICAgICAgICAgaWYgc2VsZi5lb2Y6Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHRva0VPRgotCi0gICAgICAgIGlmIHNlbGYucG9zID09IHNlbGYubGVuOgotICAgICAgICAgICAgcmV0dXJuIHRva0xOCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICByZXR1cm4gc2VsZi50ZXh0W3NlbGYucG9zXQotCi0gICAgZGVmIHBlZWtOQ2hhcihzZWxmLG4pOgotICAgICAgICAiIiJ0cnkgdG8gcGVlayB0aGUgbmV4dCBuIGNoYXJzIG9uIHRoZSBzYW1lIGxpbmUiIiIKLSAgICAgICAgaWYgc2VsZi5wb3MgKyBuID4gc2VsZi5sZW46CiAgICAgICAgICAgICByZXR1cm4gTm9uZQotICAgICAgICByZXR1cm4gc2VsZi50ZXh0W3NlbGYucG9zOnNlbGYucG9zK25dCiAKLSAgICBkZWYgc2tpcENoYXIoc2VsZik6Ci0gICAgICAgICIiImluY3JlbWVudCB0aGUgdG9rZW4gY3Vyc29yIHBvc2l0aW9uIiIiCi0gICAgICAgIGlmIG5vdCBzZWxmLmVvZjoKLSAgICAgICAgICAgIHNlbGYucG9zICs9IDEKIAotICAgIGRlZiBza2lwTkNoYXJzKHNlbGYsbik6Ci0gICAgICAgIGlmIHNlbGYucG9zICsgbiA8PSBzZWxmLmxlbjoKLSAgICAgICAgICAgIHNlbGYucG9zICs9IG4KLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHdoaWxlIG4gPiAwOgotICAgICAgICAgICAgICAgIHNlbGYuc2tpcENoYXIoKQotICAgICAgICAgICAgICAgIG4gLT0gMQorY2xhc3MgQ3BwU3RyaW5nVG9rZW5pemVyKENwcFRva2VuaXplcik6CisgICAgIiIiQSBDcHBUb2tlbml6ZXIgZGVyaXZlZCBjbGFzcyB0aGF0IGFjY2VwdHMgYSBzdHJpbmcgb2YgdGV4dCBhcyBpbnB1dC4iIiIKIAotICAgIGRlZiBuZXh0Q2hhcihzZWxmKToKLSAgICAgICAgIiIicmV0cmlldmUgdGhlIHRva2VuIGF0IHRoZSBjdXJyZW50IGN1cnNvciBwb3NpdGlvbiwgdGhlbiBza2lwIGl0IiIiCi0gICAgICAgIHJlc3VsdCA9IHNlbGYucGVla0NoYXIoKQotICAgICAgICBzZWxmLnNraXBDaGFyKCkKLSAgICAgICAgcmV0dXJuICByZXN1bHQKLQotICAgIGRlZiBnZXRFc2NhcGUoc2VsZik6Ci0gICAgICAgICMgdHJ5IHRvIGdldCBhbGwgY2hhcmFjdGVycyBhZnRlciBhIGJhY2tzbGFzaCAoXCkKLSAgICAgICAgcmVzdWx0ID0gc2VsZi5uZXh0Q2hhcigpCi0gICAgICAgIGlmIHJlc3VsdCA9PSAiMCI6Ci0gICAgICAgICAgICAjIG9jdGFsIG51bWJlciA/Ci0gICAgICAgICAgICBudW0gPSBzZWxmLnBlZWtOQ2hhcigzKQotICAgICAgICAgICAgaWYgbnVtICE9IE5vbmU6Ci0gICAgICAgICAgICAgICAgaXNPY3RhbCA9IFRydWUKLSAgICAgICAgICAgICAgICBmb3IgZCBpbiBudW06Ci0gICAgICAgICAgICAgICAgICAgIGlmIG5vdCBkIGluICIwMTIzNDU2NyI6Ci0gICAgICAgICAgICAgICAgICAgICAgICBpc09jdGFsID0gRmFsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICAgICAgaWYgaXNPY3RhbDoKLSAgICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9IG51bQotICAgICAgICAgICAgICAgICAgICBzZWxmLnNraXBOQ2hhcnMoMykKLSAgICAgICAgZWxpZiByZXN1bHQgPT0gIngiIG9yIHJlc3VsdCA9PSAiWCI6Ci0gICAgICAgICAgICAjIGhleCBudW1iZXIgPwotICAgICAgICAgICAgbnVtID0gc2VsZi5wZWVrTkNoYXIoMikKLSAgICAgICAgICAgIGlmIG51bSAhPSBOb25lOgotICAgICAgICAgICAgICAgIGlzSGV4ID0gVHJ1ZQotICAgICAgICAgICAgICAgIGZvciBkIGluIG51bToKLSAgICAgICAgICAgICAgICAgICAgaWYgbm90IGQgaW4gIjAxMjM0NTY3OGFiY2RlZkFCQ0RFRiI6Ci0gICAgICAgICAgICAgICAgICAgICAgICBpc0hleCA9IEZhbHNlCi0gICAgICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgIGlmIGlzSGV4OgotICAgICAgICAgICAgICAgICAgICByZXN1bHQgKz0gbnVtCi0gICAgICAgICAgICAgICAgICAgIHNlbGYuc2tpcE5DaGFycygyKQotICAgICAgICBlbGlmIHJlc3VsdCA9PSAidSIgb3IgcmVzdWx0ID09ICJVIjoKLSAgICAgICAgICAgICMgdW5pY29kZSBjaGFyID8KLSAgICAgICAgICAgIG51bSA9IHNlbGYucGVla05DaGFyKDQpCi0gICAgICAgICAgICBpZiBudW0gIT0gTm9uZToKLSAgICAgICAgICAgICAgICBpc0hleCA9IFRydWUKLSAgICAgICAgICAgICAgICBmb3IgZCBpbiBudW06Ci0gICAgICAgICAgICAgICAgICAgIGlmIG5vdCBkIGluICIwMTIzNDU2NzhhYmNkZWZBQkNERUYiOgotICAgICAgICAgICAgICAgICAgICAgICAgaXNIZXggPSBGYWxzZQotICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICBpZiBpc0hleDoKLSAgICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9IG51bQotICAgICAgICAgICAgICAgICAgICBzZWxmLnNraXBOQ2hhcnMoNCkKLQotICAgICAgICByZXR1cm4gcmVzdWx0Ci0KLSAgICBkZWYgbmV4dFJlYWxUb2tlbihzZWxmLHRvayk6Ci0gICAgICAgICIiInJldHVybiBuZXh0IENQUCB0b2tlbiwgdXNlZCBpbnRlcm5hbGx5IGJ5IG5leHRUb2tlbigpIiIiCi0gICAgICAgIGMgPSBzZWxmLm5leHRDaGFyKCkKLSAgICAgICAgaWYgYyA9PSB0b2tFT0Ygb3IgYyA9PSB0b2tMTjoKLSAgICAgICAgICAgIHJldHVybiB0b2suc2V0KGMpCi0KLSAgICAgICAgaWYgYyA9PSAnLyc6Ci0gICAgICAgICAgICBjID0gc2VsZi5wZWVrQ2hhcigpCi0gICAgICAgICAgICBpZiBjID09ICcvJzogICAjIEMrKyBjb21tZW50IGxpbmUKLSAgICAgICAgICAgICAgICBzZWxmLnNraXBDaGFyKCkKLSAgICAgICAgICAgICAgICB3aGlsZSAxOgotICAgICAgICAgICAgICAgICAgICBjID0gc2VsZi5uZXh0Q2hhcigpCi0gICAgICAgICAgICAgICAgICAgIGlmIGMgPT0gdG9rRU9GIG9yIGMgPT0gdG9rTE46Ci0gICAgICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgIHJldHVybiB0b2suc2V0KHRva0xOKQotICAgICAgICAgICAgaWYgYyA9PSAnKic6ICAgIyBDIGNvbW1lbnQgc3RhcnQKLSAgICAgICAgICAgICAgICBzZWxmLnNraXBDaGFyKCkKLSAgICAgICAgICAgICAgICB2YWx1ZSA9ICIvKiIKLSAgICAgICAgICAgICAgICBwcmV2X2MgPSBOb25lCi0gICAgICAgICAgICAgICAgd2hpbGUgMToKLSAgICAgICAgICAgICAgICAgICAgYyA9IHNlbGYubmV4dENoYXIoKQotICAgICAgICAgICAgICAgICAgICBpZiBjID09IHRva0VPRjoKLSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0b2suc2V0KHRva0VPRix2YWx1ZSkKLSAgICAgICAgICAgICAgICAgICAgaWYgYyA9PSAnLycgYW5kIHByZXZfYyA9PSAnKic6Ci0gICAgICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgICAgICBwcmV2X2MgPSBjCi0gICAgICAgICAgICAgICAgICAgIHZhbHVlICs9IGMKLQotICAgICAgICAgICAgICAgIHZhbHVlICs9ICIvIgotICAgICAgICAgICAgICAgIHJldHVybiB0b2suc2V0KHRva1NQQUNFLHZhbHVlKQotICAgICAgICAgICAgYyA9ICcvJwotCi0gICAgICAgIGlmIGMuaXNzcGFjZSgpOgotICAgICAgICAgICAgd2hpbGUgMToKLSAgICAgICAgICAgICAgICBjMiA9IHNlbGYucGVla0NoYXIoKQotICAgICAgICAgICAgICAgIGlmIGMyID09IHRva0xOIG9yIG5vdCBjMi5pc3NwYWNlKCk6Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICAgICAgYyArPSBjMgotICAgICAgICAgICAgICAgIHNlbGYuc2tpcENoYXIoKQotICAgICAgICAgICAgcmV0dXJuIHRvay5zZXQodG9rU1BBQ0UsYykKLQotICAgICAgICBpZiBjID09ICdcXCc6Ci0gICAgICAgICAgICBpZiBkZWJ1Z1Rva2VuczoKLSAgICAgICAgICAgICAgICBwcmludCAibmV4dFJlYWxUb2tlbjogXFwgZm91bmQsIG5leHQgdG9rZW4gaXMgJyVzJyIgJSByZXByKHNlbGYucGVla0NoYXIoKSkKLSAgICAgICAgICAgIGlmIHNlbGYucGVla0NoYXIoKSA9PSB0b2tMTjogICAjIHRyYWlsaW5nIFwKLSAgICAgICAgICAgICAgICAjIGVhdCB0aGUgdG9rTE4KLSAgICAgICAgICAgICAgICBzZWxmLnNraXBDaGFyKCkKLSAgICAgICAgICAgICAgICAjIHdlIHJlcGxhY2UgYSB0cmFpbGluZyBcIGJ5IGEgdG9rU1BBQ0Ugd2hvc2UgdmFsdWUgaXMKLSAgICAgICAgICAgICAgICAjIHNpbXBseSAiXFwiLiB0aGlzIGFsbG93cyB1cyB0byBkZXRlY3QgdGhlbSBsYXRlciB3aGVuCi0gICAgICAgICAgICAgICAgIyBuZWVkZWQuCi0gICAgICAgICAgICAgICAgcmV0dXJuIHRvay5zZXQodG9rU1BBQ0UsIlxcIikKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgIyB0cmVhdCBhcyBhIHNpbmdsZSB0b2tlbiBoZXJlID8KLSAgICAgICAgICAgICAgICBjICs9c2VsZi5nZXRFc2NhcGUoKQotICAgICAgICAgICAgICAgIHJldHVybiB0b2suc2V0KGMpCi0KLSAgICAgICAgaWYgYyA9PSAiJyI6ICAjIGNoYXJzCi0gICAgICAgICAgICBjMiA9IHNlbGYubmV4dENoYXIoKQotICAgICAgICAgICAgYyArPSBjMgotICAgICAgICAgICAgaWYgYzIgPT0gJ1xcJzoKLSAgICAgICAgICAgICAgICBjICs9IHNlbGYuZ2V0RXNjYXBlKCkKLQotICAgICAgICAgICAgd2hpbGUgMToKLSAgICAgICAgICAgICAgICBjMiA9IHNlbGYubmV4dENoYXIoKQotICAgICAgICAgICAgICAgIGlmIGMyID09IHRva0VPRjoKLSAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICBjICs9IGMyCi0gICAgICAgICAgICAgICAgaWYgYzIgPT0gIiciOgotICAgICAgICAgICAgICAgICAgICBicmVhawotCi0gICAgICAgICAgICByZXR1cm4gdG9rLnNldCh0b2tTVFJJTkcsIGMpCi0KLSAgICAgICAgaWYgYyA9PSAnIic6ICAjIHN0cmluZ3MKLSAgICAgICAgICAgIHF1b3RlID0gMAotICAgICAgICAgICAgd2hpbGUgMToKLSAgICAgICAgICAgICAgICBjMiAgPSBzZWxmLm5leHRDaGFyKCkKLSAgICAgICAgICAgICAgICBpZiBjMiA9PSB0b2tFT0Y6Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiB0b2suc2V0KHRva1NUUklORyxjKQotCi0gICAgICAgICAgICAgICAgYyArPSBjMgotICAgICAgICAgICAgICAgIGlmIG5vdCBxdW90ZToKLSAgICAgICAgICAgICAgICAgICAgaWYgYzIgPT0gJyInOgotICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRvay5zZXQodG9rU1RSSU5HLGMpCi0gICAgICAgICAgICAgICAgICAgIGlmIGMyID09ICJcXCI6Ci0gICAgICAgICAgICAgICAgICAgICAgICBxdW90ZSA9IDEKLSAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICBxdW90ZSA9IDAKLQotICAgICAgICBpZiBjID49ICIwIiBhbmQgYyA8PSAiOSI6ICAjIGludGVnZXJzID8KLSAgICAgICAgICAgIHdoaWxlIDE6Ci0gICAgICAgICAgICAgICAgYzIgPSBzZWxmLnBlZWtDaGFyKCkKLSAgICAgICAgICAgICAgICBpZiBjMiA9PSB0b2tMTiBvciAobm90IGMyLmlzYWxudW0oKSBhbmQgYzIgIT0gIl8iKToKLSAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICBjICs9IGMyCi0gICAgICAgICAgICAgICAgc2VsZi5za2lwQ2hhcigpCi0gICAgICAgICAgICByZXR1cm4gdG9rLnNldCh0b2tOVU1CRVIsYykKLQotICAgICAgICBpZiBjLmlzYWxudW0oKSBvciBjID09ICJfIjogICMgaWRlbnRpZmllcnMgPwotICAgICAgICAgICAgd2hpbGUgMToKLSAgICAgICAgICAgICAgICBjMiA9IHNlbGYucGVla0NoYXIoKQotICAgICAgICAgICAgICAgIGlmIGMyID09IHRva0xOIG9yIChub3QgYzIuaXNhbG51bSgpIGFuZCBjMiAhPSAiXyIpOgotICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgIGMgKz0gYzIKLSAgICAgICAgICAgICAgICBzZWxmLnNraXBDaGFyKCkKLSAgICAgICAgICAgIGlmIGMgPT0gdG9rREVGSU5FRDoKLSAgICAgICAgICAgICAgICByZXR1cm4gdG9rLnNldCh0b2tERUZJTkVEKQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICByZXR1cm4gdG9rLnNldCh0b2tJREVOVCxjKQotCi0gICAgICAgICMgY2hlY2sgc3BlY2lhbCBzeW1ib2xzCi0gICAgICAgIGZvciBzayBpbiBjcHBMb25nU3ltYm9sczoKLSAgICAgICAgICAgIGlmIGMgPT0gc2tbMF06Ci0gICAgICAgICAgICAgICAgc2tsZW4gPSBsZW4oc2tbMTpdKQotICAgICAgICAgICAgICAgIGlmIHNlbGYucG9zICsgc2tsZW4gPD0gc2VsZi5sZW4gYW5kIFwKLSAgICAgICAgICAgICAgICAgICBzZWxmLnRleHRbc2VsZi5wb3M6c2VsZi5wb3Mrc2tsZW5dID09IHNrWzE6XToKLSAgICAgICAgICAgICAgICAgICAgc2VsZi5wb3MgKz0gc2tsZW4KLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRvay5zZXQoc2spCi0KLSAgICAgICAgcmV0dXJuIHRvay5zZXQoYykKLQotICAgIGRlZiBuZXh0VG9rZW4oc2VsZix0b2spOgotICAgICAgICAiIiJyZXR1cm4gdGhlIG5leHQgdG9rZW4gZnJvbSB0aGUgaW5wdXQgdGV4dC4gdGhpcyBmdW5jdGlvbgotICAgICAgICAgICByZWFsbHkgdXBkYXRlcyAndG9rJywgYW5kIGRvZXMgbm90IHJldHVybiBhIG5ldyBvbmUiIiIKLSAgICAgICAgc2VsZi5tYXJrUG9zKHRvaykKLSAgICAgICAgc2VsZi5uZXh0UmVhbFRva2VuKHRvaykKLQotICAgIGRlZiBnZXRUb2tlbihzZWxmKToKLSAgICAgICAgdG9rID0gVG9rZW4oKQotICAgICAgICBzZWxmLm5leHRUb2tlbih0b2spCi0gICAgICAgIGlmIGRlYnVnVG9rZW5zOgotICAgICAgICAgICAgcHJpbnQgImdldFRva2VuczogJXMiICUgcmVwcih0b2spCi0gICAgICAgIHJldHVybiB0b2sKLQotICAgIGRlZiB0b1Rva2VuTGlzdChzZWxmKToKLSAgICAgICAgIiIiY29udmVydCB0aGUgaW5wdXQgdGV4dCBvZiBhIENwcFRva2VuaXplciBpbnRvIGEgZGlyZWN0Ci0gICAgICAgICAgIGxpc3Qgb2YgdG9rZW4gb2JqZWN0cy4gdG9rRU9GIGlzIHN0cmlwcGVkIGZyb20gdGhlIHJlc3VsdCIiIgotICAgICAgICByZXN1bHQgPSBbXQotICAgICAgICB3aGlsZSAxOgotICAgICAgICAgICAgdG9rID0gVG9rZW4oKQotICAgICAgICAgICAgc2VsZi5uZXh0VG9rZW4odG9rKQotICAgICAgICAgICAgaWYgdG9rLmlkID09IHRva0VPRjoKLSAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCh0b2spCi0gICAgICAgIHJldHVybiByZXN1bHQKLQotY2xhc3MgQ3BwTGluZVRva2VuaXplcihDcHBUb2tlbml6ZXIpOgotICAgICIiImEgQ3BwVG9rZW5pemVyIGRlcml2ZWQgY2xhc3MgdGhhdCBhY2NlcHRzIGEgc2luZ2xlIGxpbmUgb2YgdGV4dCBhcyBpbnB1dCIiIgotICAgIGRlZiBfX2luaXRfXyhzZWxmLGxpbmUsbGluZW5vPTEpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBsaW5lKToKICAgICAgICAgQ3BwVG9rZW5pemVyLl9faW5pdF9fKHNlbGYpCi0gICAgICAgIHNlbGYubGluZSA9IGxpbmVubwotICAgICAgICBzZWxmLnNldExpbmVUZXh0KGxpbmUpCi0KLQotY2xhc3MgQ3BwTGluZXNUb2tlbml6ZXIoQ3BwVG9rZW5pemVyKToKLSAgICAiIiJhIENwcFRva2VuaXplciBkZXJpdmVkIGNsYXNzIHRoYXQgYWNjZXB0cyBhIGxpc3Qgb2YgdGV4ZHQgbGluZXMgYXMgaW5wdXQuCi0gICAgICAgdGhlIGxpbmVzIG11c3Qgbm90IGhhdmUgYSB0cmFpbGluZyBcbiIiIgotICAgIGRlZiBfX2luaXRfXyhzZWxmLGxpbmVzPVtdLGxpbmVubz0xKToKLSAgICAgICAgIiIiaW5pdGlhbGl6ZSBhIENwcExpbmVzVG9rZW5pemVyLiB5b3UgY2FuIGxhdGVyIGFkZCBsaW5lcyB1c2luZyBhZGRMaW5lcygpIiIiCi0gICAgICAgIENwcFRva2VuaXplci5fX2luaXRfXyhzZWxmKQotICAgICAgICBzZWxmLmxpbmUgID0gbGluZW5vCi0gICAgICAgIHNlbGYubGluZXMgPSBsaW5lcwotICAgICAgICBzZWxmLmluZGV4ID0gMAotICAgICAgICBzZWxmLmNvdW50ID0gbGVuKGxpbmVzKQotCi0gICAgICAgIGlmIHNlbGYuY291bnQgPiAwOgotICAgICAgICAgICAgc2VsZi5maWxsTGluZVRleHQoKQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgc2VsZi5lb2YgPSBUcnVlCi0KLSAgICBkZWYgYWRkTGluZShzZWxmLGxpbmUpOgotICAgICAgICAiIiJhZGQgYSBsaW5lIHRvIGEgQ3BwTGluZXNUb2tlbml6ZXIuIHRoaXMgY2FuIGJlIGRvbmUgYWZ0ZXIgdG9rZW5pemF0aW9uCi0gICAgICAgICAgIGhhcHBlbnMiIiIKLSAgICAgICAgaWYgc2VsZi5jb3VudCA9PSAwOgotICAgICAgICAgICAgc2VsZi5zZXRMaW5lVGV4dChsaW5lKQotICAgICAgICAgICAgc2VsZi5pbmRleCA9IDEKLSAgICAgICAgc2VsZi5saW5lcy5hcHBlbmQobGluZSkKLSAgICAgICAgc2VsZi5jb3VudCArPSAxCi0gICAgICAgIHNlbGYuZW9mICAgID0gRmFsc2UKLQotICAgIGRlZiBmaWxsTGluZVRleHQoc2VsZik6Ci0gICAgICAgIGlmIHNlbGYuaW5kZXggPCBzZWxmLmNvdW50OgotICAgICAgICAgICAgc2VsZi5zZXRMaW5lVGV4dChzZWxmLmxpbmVzW3NlbGYuaW5kZXhdKQotICAgICAgICAgICAgc2VsZi5pbmRleCArPSAxCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzZWxmLmVvZiA9IFRydWUKKyAgICAgICAgc2VsZi5wYXJzZVN0cmluZyhsaW5lKQogCiAKIGNsYXNzIENwcEZpbGVUb2tlbml6ZXIoQ3BwVG9rZW5pemVyKToKLSAgICBkZWYgX19pbml0X18oc2VsZixmaWxlLGxpbmVubz0xKToKLSAgICAgICAgQ3BwVG9rZW5pemVyLl9faW5pdF9fKHNlbGYpCi0gICAgICAgIHNlbGYuZmlsZSA9IGZpbGUKLSAgICAgICAgc2VsZi5saW5lID0gbGluZW5vCisgICAgIiIiQSBDcHBUb2tlbml6ZXIgZGVyaXZlZCBjbGFzcyB0aGF0IGFjY2VwdHMgYSBmaWxlIGFzIGlucHV0LiIiIgogCi0gICAgZGVmIGZpbGxMaW5lVGV4dChzZWxmKToKLSAgICAgICAgbGluZSA9IHNlbGYuZmlsZS5yZWFkbGluZSgpCi0gICAgICAgIGlmIGxlbihsaW5lKSA+IDA6Ci0gICAgICAgICAgICBpZiBsaW5lWy0xXSA9PSAnXG4nOgotICAgICAgICAgICAgICAgIGxpbmUgPSBsaW5lWzotMV0KLSAgICAgICAgICAgIGlmIGxlbihsaW5lKSA+IDAgYW5kIGxpbmVbLTFdID09ICJcciI6Ci0gICAgICAgICAgICAgICAgbGluZSA9IGxpbmVbOi0xXQotICAgICAgICAgICAgc2VsZi5zZXRMaW5lVGV4dChsaW5lKQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgc2VsZi5lb2YgPSBUcnVlCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGZpbGVfKToKKyAgICAgICAgQ3BwVG9rZW5pemVyLl9faW5pdF9fKHNlbGYpCisgICAgICAgIHNlbGYucGFyc2VGaWxlKGZpbGVfKQorCiAKICMgVW5pdCB0ZXN0aW5nCiAjCi1jbGFzcyBDcHBUb2tlbml6ZXJUZXN0ZXI6Ci0gICAgIiIiYSBjbGFzcyB1c2VkIHRvIHRlc3QgQ3BwVG9rZW5pemVyIGNsYXNzZXMiIiIKLSAgICBkZWYgX19pbml0X18oc2VsZix0b2tlbml6ZXI9Tm9uZSk6Ci0gICAgICAgIHNlbGYudG9rZW5pemVyID0gdG9rZW5pemVyCi0gICAgICAgIHNlbGYudG9rZW4gICAgID0gVG9rZW4oKQorY2xhc3MgQ3BwVG9rZW5pemVyVGVzdGVyKG9iamVjdCk6CisgICAgIiIiQSBjbGFzcyB1c2VkIHRvIHRlc3QgQ3BwVG9rZW5pemVyIGNsYXNzZXMuIiIiCiAKLSAgICBkZWYgc2V0VG9rZW5pemVyKHNlbGYsdG9rZW5pemVyKToKLSAgICAgICAgc2VsZi50b2tlbml6ZXIgPSB0b2tlbml6ZXIKKyAgICBkZWYgX19pbml0X18oc2VsZiwgdG9rZW5pemVyPU5vbmUpOgorICAgICAgICBzZWxmLl90b2tlbml6ZXIgPSB0b2tlbml6ZXIKKyAgICAgICAgc2VsZi5fdG9rZW4gPSBOb25lCiAKLSAgICBkZWYgZXhwZWN0KHNlbGYsaWQpOgotICAgICAgICBzZWxmLnRva2VuaXplci5uZXh0VG9rZW4oc2VsZi50b2tlbikKLSAgICAgICAgdG9raWQgPSBzZWxmLnRva2VuLmlkCisgICAgZGVmIHNldFRva2VuaXplcihzZWxmLCB0b2tlbml6ZXIpOgorICAgICAgICBzZWxmLl90b2tlbml6ZXIgPSB0b2tlbml6ZXIKKworICAgIGRlZiBleHBlY3Qoc2VsZiwgaWQpOgorICAgICAgICBzZWxmLl90b2tlbiA9IHNlbGYuX3Rva2VuaXplci5uZXh0VG9rZW4oKQorICAgICAgICBpZiBzZWxmLl90b2tlbiBpcyBOb25lOgorICAgICAgICAgICAgdG9raWQgPSAnJworICAgICAgICBlbHNlOgorICAgICAgICAgICAgdG9raWQgPSBzZWxmLl90b2tlbi5pZAogICAgICAgICBpZiB0b2tpZCA9PSBpZDoKICAgICAgICAgICAgIHJldHVybgotICAgICAgICBpZiBzZWxmLnRva2VuLnZhbHVlID09IGlkIGFuZCAodG9raWQgPT0gdG9rSURFTlQgb3IgdG9raWQgPT0gdG9rTlVNQkVSKToKLSAgICAgICAgICAgIHJldHVybgotICAgICAgICByYWlzZSBCYWRFeHBlY3RlZFRva2VuLCAiIyMjICBCQUQgVE9LRU46ICclcycgZXhwZWN0aW5nICclcyciICUgKHNlbGYudG9rZW4uaWQsaWQpCisgICAgICAgIHJhaXNlIEJhZEV4cGVjdGVkVG9rZW4oIiMjIyAgQkFEIFRPS0VOOiAnJXMnIGV4cGVjdGluZyAnJXMnIiAlICgKKyAgICAgICAgICAgIHRva2lkLCBpZCkpCiAKLSAgICBkZWYgZXhwZWN0VG9rZW4oc2VsZixpZCxsaW5lLGNvbCk6CisgICAgZGVmIGV4cGVjdFRva2VuKHNlbGYsIGlkLCBsaW5lLCBjb2wpOgogICAgICAgICBzZWxmLmV4cGVjdChpZCkKLSAgICAgICAgaWYgc2VsZi50b2tlbi5saW5lbm8gIT0gbGluZToKLSAgICAgICAgICAgIHJhaXNlIEJhZEV4cGVjdGVkVG9rZW4sICIjIyMgIEJBRCBMSU5FTk86IHRva2VuICclcycgZ290ICclZCcgZXhwZWN0aW5nICclZCciICUgKGlkLHNlbGYudG9rZW4ubGluZW5vLGxpbmUpCi0gICAgICAgIGlmIHNlbGYudG9rZW4uY29sbm8gIT0gY29sOgotICAgICAgICAgICAgcmFpc2UgQmFkRXhwZWN0ZWRUb2tlbiwgIiMjIyAgQkFEIENPTE5POiAnJWQnIGV4cGVjdGluZyAnJWQnIiAlIChzZWxmLnRva2VuLmNvbG5vLGNvbCkKKyAgICAgICAgaWYgc2VsZi5fdG9rZW4ubG9jYXRpb24ubGluZSAhPSBsaW5lOgorICAgICAgICAgICAgcmFpc2UgQmFkRXhwZWN0ZWRUb2tlbigKKyAgICAgICAgICAgICAgICAiIyMjICBCQUQgTElORU5POiB0b2tlbiAnJXMnIGdvdCAnJWQnIGV4cGVjdGluZyAnJWQnIiAlICgKKyAgICAgICAgICAgICAgICAgICAgaWQsIHNlbGYuX3Rva2VuLmxpbmVubywgbGluZSkpCisgICAgICAgIGlmIHNlbGYuX3Rva2VuLmxvY2F0aW9uLmNvbHVtbiAhPSBjb2w6CisgICAgICAgICAgICByYWlzZSBCYWRFeHBlY3RlZFRva2VuKCIjIyMgIEJBRCBDT0xOTzogJyVkJyBleHBlY3RpbmcgJyVkJyIgJSAoCisgICAgICAgICAgICAgICAgc2VsZi5fdG9rZW4uY29sbm8sIGNvbCkpCiAKLSAgICBkZWYgZXhwZWN0VG9rZW5WYWwoc2VsZixpZCx2YWx1ZSxsaW5lLGNvbCk6Ci0gICAgICAgIHNlbGYuZXhwZWN0VG9rZW4oaWQsbGluZSxjb2wpCi0gICAgICAgIGlmIHNlbGYudG9rZW4udmFsdWUgIT0gdmFsdWU6Ci0gICAgICAgICAgICByYWlzZSBCYWRFeHBlY3RlZFRva2VuLCAiIyMjICBCQUQgVkFMVUU6ICclcycgZXhwZWN0aW5nICclcyciICUgKHNlbGYudG9rZW4udmFsdWUsdmFsdWUpCisgICAgZGVmIGV4cGVjdFRva2VucyhzZWxmLCB0b2tlbnMpOgorICAgICAgICBmb3IgaWQsIGxpbmUsIGNvbCBpbiB0b2tlbnM6CisgICAgICAgICAgICBzZWxmLmV4cGVjdFRva2VuKGlkLCBsaW5lLCBjb2wpCiAKLSAgICBkZWYgZXhwZWN0TGlzdChzZWxmLGxpc3QpOgotICAgICAgICBmb3IgaXRlbSBpbiBsaXN0OgorICAgIGRlZiBleHBlY3RMaXN0KHNlbGYsIGxpc3RfKToKKyAgICAgICAgZm9yIGl0ZW0gaW4gbGlzdF86CiAgICAgICAgICAgICBzZWxmLmV4cGVjdChpdGVtKQogCisKIGRlZiB0ZXN0X0NwcFRva2VuaXplcigpOgogICAgIHRlc3RlciA9IENwcFRva2VuaXplclRlc3RlcigpCiAKLSAgICB0ZXN0ZXIuc2V0VG9rZW5pemVyKCBDcHBMaW5lVG9rZW5pemVyKCIjYW4vZXhhbXBsZSAgJiYgKDAxOTIzX3h5KSIpICkKLSAgICB0ZXN0ZXIuZXhwZWN0TGlzdCggWyIjIiwgImFuIiwgIi8iLCAiZXhhbXBsZSIsIHRva1NQQUNFLCB0b2tMT0dJQ0FORCwgdG9rU1BBQ0UsIHRva0xQQVJFTiwgIjAxOTIzX3h5IiwgXAotICAgICAgICAgICAgICAgICAgICAgICB0b2tSUEFSRU4sIHRva0xOLCB0b2tFT0ZdICkKKyAgICB0ZXN0ZXIuc2V0VG9rZW5pemVyKENwcFN0cmluZ1Rva2VuaXplcigiI2FuL2V4YW1wbGUgICYmICgwMTkyM194eSkiKSkKKyAgICB0ZXN0ZXIuZXhwZWN0TGlzdChbIiMiLCAiYW4iLCAiLyIsICJleGFtcGxlIiwgdG9rTE9HSUNBTkQsIHRva0xQQVJFTiwKKyAgICAgICAgICAgICAgICAgICAgICAgIjAxOTIzX3h5IiwgdG9rUlBBUkVOXSkKIAotICAgIHRlc3Rlci5zZXRUb2tlbml6ZXIoIENwcExpbmVUb2tlbml6ZXIoIkZPTyhCQVIpICYmIGRlZmluZWQoQkFaKSIpICkKLSAgICB0ZXN0ZXIuZXhwZWN0TGlzdCggWyJGT08iLCB0b2tMUEFSRU4sICJCQVIiLCB0b2tSUEFSRU4sIHRva1NQQUNFLCB0b2tMT0dJQ0FORCwgdG9rU1BBQ0UsCi0gICAgICAgICAgICAgICAgICAgICAgICB0b2tERUZJTkVELCB0b2tMUEFSRU4sICJCQVoiLCB0b2tSUEFSRU4sIHRva0xOLCB0b2tFT0ZdICkKKyAgICB0ZXN0ZXIuc2V0VG9rZW5pemVyKENwcFN0cmluZ1Rva2VuaXplcigiRk9PKEJBUikgJiYgZGVmaW5lZChCQVopIikpCisgICAgdGVzdGVyLmV4cGVjdExpc3QoWyJGT08iLCB0b2tMUEFSRU4sICJCQVIiLCB0b2tSUEFSRU4sIHRva0xPR0lDQU5ELAorICAgICAgICAgICAgICAgICAgICAgICAiZGVmaW5lZCIsIHRva0xQQVJFTiwgIkJBWiIsIHRva1JQQVJFTl0pCiAKLSAgICB0ZXN0ZXIuc2V0VG9rZW5pemVyKCBDcHBMaW5lc1Rva2VuaXplciggWyIvKiIsICIjIiwgIiovIl0gKSApCi0gICAgdGVzdGVyLmV4cGVjdExpc3QoIFsgdG9rU1BBQ0UsIHRva0xOLCB0b2tFT0YgXSApCisgICAgdGVzdGVyLnNldFRva2VuaXplcihDcHBTdHJpbmdUb2tlbml6ZXIoIi8qXG4jXG4qLyIpKQorICAgIHRlc3Rlci5leHBlY3RMaXN0KFtdKQogCi0gICAgdGVzdGVyLnNldFRva2VuaXplciggQ3BwTGluZXNUb2tlbml6ZXIoIFsiZmlyc3QiLCAic2Vjb25kIl0gKSApCi0gICAgdGVzdGVyLmV4cGVjdExpc3QoIFsgImZpcnN0IiwgdG9rTE4sICJzZWNvbmQiLCB0b2tMTiwgdG9rRU9GIF0gKQorICAgIHRlc3Rlci5zZXRUb2tlbml6ZXIoQ3BwU3RyaW5nVG9rZW5pemVyKCJmaXJzdFxuc2Vjb25kIikpCisgICAgdGVzdGVyLmV4cGVjdExpc3QoWyJmaXJzdCIsICJzZWNvbmQiXSkKIAotICAgIHRlc3Rlci5zZXRUb2tlbml6ZXIoIENwcExpbmVzVG9rZW5pemVyKCBbImZpcnN0IHNlY29uZCIsICIgIHRoaXJkIl0gKSApCi0gICAgdGVzdGVyLmV4cGVjdFRva2VuKCAiZmlyc3QiLCAxLCAwICkKLSAgICB0ZXN0ZXIuZXhwZWN0VG9rZW4oIHRva1NQQUNFLCAxLCA1ICkKLSAgICB0ZXN0ZXIuZXhwZWN0VG9rZW4oICJzZWNvbmQiLCAxLCA2ICkKLSAgICB0ZXN0ZXIuZXhwZWN0VG9rZW4oIHRva0xOLCAxLCAxMiApCi0gICAgdGVzdGVyLmV4cGVjdFRva2VuKCB0b2tTUEFDRSwgMiwgMCApCi0gICAgdGVzdGVyLmV4cGVjdFRva2VuKCAidGhpcmQiLCAyLCAyICkKKyAgICB0ZXN0ZXIuc2V0VG9rZW5pemVyKENwcFN0cmluZ1Rva2VuaXplcigiZmlyc3Qgc2Vjb25kXG4gIHRoaXJkIikpCisgICAgdGVzdGVyLmV4cGVjdFRva2VucyhbKCJmaXJzdCIsIDEsIDEpLAorICAgICAgICAgICAgICAgICAgICAgICAgICgic2Vjb25kIiwgMSwgNyksCisgICAgICAgICAgICAgICAgICAgICAgICAgKCJ0aGlyZCIsIDIsIDMpXSkKIAotICAgIHRlc3Rlci5zZXRUb2tlbml6ZXIoIENwcExpbmVzVG9rZW5pemVyKCBbICJib28gLyogd2hhdCB0aGUiLCAiaGVsbCAqLyIgXSApICkKLSAgICB0ZXN0ZXIuZXhwZWN0TGlzdCggWyAiYm9vIiwgdG9rU1BBQ0UgXSApCi0gICAgdGVzdGVyLmV4cGVjdFRva2VuVmFsKCB0b2tTUEFDRSwgIi8qIHdoYXQgdGhlXG5oZWxsICovIiwgMSwgNCApCi0gICAgdGVzdGVyLmV4cGVjdExpc3QoIFsgdG9rTE4sIHRva0VPRiBdICkKKyAgICB0ZXN0ZXIuc2V0VG9rZW5pemVyKENwcFN0cmluZ1Rva2VuaXplcigiYm9vIC8qIHdoYXQgdGhlXG5oZWxsICovIikpCisgICAgdGVzdGVyLmV4cGVjdFRva2VucyhbKCJib28iLCAxLCAxKV0pCiAKLSAgICB0ZXN0ZXIuc2V0VG9rZW5pemVyKCBDcHBMaW5lc1Rva2VuaXplciggWyAiYW4gXFwiLCAiIGV4YW1wbGUiIF0gKSApCi0gICAgdGVzdGVyLmV4cGVjdFRva2VuKCAiYW4iLCAxLCAwICkKLSAgICB0ZXN0ZXIuZXhwZWN0VG9rZW4oIHRva1NQQUNFLCAxLCAyICkKLSAgICB0ZXN0ZXIuZXhwZWN0VG9rZW5WYWwoIHRva1NQQUNFLCAiXFwiLCAxLCAzICkKLSAgICB0ZXN0ZXIuZXhwZWN0VG9rZW4oIHRva1NQQUNFLCAyLCAwICkKLSAgICB0ZXN0ZXIuZXhwZWN0VG9rZW4oICJleGFtcGxlIiwgMiwgMSApCi0gICAgdGVzdGVyLmV4cGVjdFRva2VuKCB0b2tMTiwgMiwgOCApCi0KKyAgICB0ZXN0ZXIuc2V0VG9rZW5pemVyKENwcFN0cmluZ1Rva2VuaXplcigiYW4gXFxcbiBleGFtcGxlIikpCisgICAgdGVzdGVyLmV4cGVjdFRva2VucyhbKCJhbiIsIDEsIDEpLAorICAgICAgICAgICAgICAgICAgICAgICAgICgiZXhhbXBsZSIsIDIsIDIpXSkKICAgICByZXR1cm4gVHJ1ZQogCiAKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKLSMjIyMjICAgICAgICAgICBDIFAgUCAgIEUgWCBQIFIgRSBTIFMgSSBPIE4gUyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKLSMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKKyMjIyMjICAgICAgICAgICBDIFAgUCAgIEUgWCBQIFIgRSBTIFMgSSBPIE4gUyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCisjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAKLWNsYXNzIENwcEV4cHI6Ci0gICAgIiIiYSBjbGFzcyB0aGF0IG1vZGVscyB0aGUgY29uZGl0aW9uIG9mICNpZiBkaXJlY3RpdmVzIGludG8KLSAgICAgICAgYW4gZXhwcmVzc2lvbiB0cmVlLiBlYWNoIG5vZGUgaW4gdGhlIHRyZWUgaXMgb2YgdGhlIGZvcm0gKG9wLGFyZykgb3IgKG9wLGFyZzEsYXJnMikKLSAgICAgICAgd2hlcmUgIm9wIiBpcyBhIHN0cmluZyBkZXNjcmliaW5nIHRoZSBvcGVyYXRpb24iIiIKIAotICAgIHVuYXJpZXMgID0gWyAiISIsICJ+IiBdCi0gICAgYmluYXJpZXMgPSBbICIrIiwgIi0iLCAiPCIsICI8PSIsICI+PSIsICI+IiwgIiYmIiwgInx8IiwgIioiLCAiLyIsICIlIiwgIiYiLCAifCIsICJeIiwgIjw8IiwgIj4+IiwgIj09IiwgIiE9IiwgIj8iLCAiOiIgXQorY2xhc3MgQ3BwRXhwcihvYmplY3QpOgorICAgICIiIkEgY2xhc3MgdGhhdCBtb2RlbHMgdGhlIGNvbmRpdGlvbiBvZiAjaWYgZGlyZWN0aXZlcyBpbnRvIGFuIGV4cHIgdHJlZS4KKworICAgIEVhY2ggbm9kZSBpbiB0aGUgdHJlZSBpcyBvZiB0aGUgZm9ybSAob3AsIGFyZykgb3IgKG9wLCBhcmcxLCBhcmcyKSB3aGVyZQorICAgICJvcCIgaXMgYSBzdHJpbmcgZGVzY3JpYmluZyB0aGUgb3BlcmF0aW9uCisgICAgIiIiCisKKyAgICB1bmFyaWVzID0gWyIhIiwgIn4iXQorICAgIGJpbmFyaWVzID0gWyIrIiwgIi0iLCAiPCIsICI8PSIsICI+PSIsICI+IiwgIiYmIiwgInx8IiwgIioiLCAiLyIsICIlIiwKKyAgICAgICAgICAgICAgICAiJiIsICJ8IiwgIl4iLCAiPDwiLCAiPj4iLCAiPT0iLCAiIT0iLCAiPyIsICI6Il0KICAgICBwcmVjZWRlbmNlcyA9IHsKICAgICAgICAgIj8iOiAxLCAiOiI6IDEsCiAgICAgICAgICJ8fCI6IDIsCkBAIC01NzAsMTk3ICs0MTMsMTkxIEBACiAgICAgICAgICIhIjogMTIsICJ+IjogMTIKICAgICB9CiAKLSAgICByZV9jcHBfY29uc3RhbnQgPSByZS5jb21waWxlKHIiKChcZHxcd3xfKSspIikKLQogICAgIGRlZiBfX2luaXRfXyhzZWxmLCB0b2tlbnMpOgotICAgICAgICAiIiJpbml0aWFsaXplIGEgQ3BwRXhwci4gJ3Rva2VucycgbXVzdCBiZSBhIENwcFRva2VuIGxpc3QiIiIKLSAgICAgICAgc2VsZi50b2sgID0gdG9rZW5zCi0gICAgICAgIHNlbGYubiAgICA9IGxlbih0b2tlbnMpCi0gICAgICAgIHNlbGYuaSAgICA9IDAKKyAgICAgICAgIiIiSW5pdGlhbGl6ZSBhIENwcEV4cHIuICd0b2tlbnMnIG11c3QgYmUgYSBDcHBUb2tlbiBsaXN0LiIiIgorICAgICAgICBzZWxmLnRva2VucyA9IHRva2VucworICAgICAgICBzZWxmLl9udW1fdG9rZW5zID0gbGVuKHRva2VucykKKyAgICAgICAgc2VsZi5faW5kZXggPSAwCisKICAgICAgICAgaWYgZGVidWdDcHBFeHByOgogICAgICAgICAgICAgcHJpbnQgIkNwcEV4cHI6IHRyeWluZyB0byBwYXJzZSAlcyIgJSByZXByKHRva2VucykKICAgICAgICAgc2VsZi5leHByID0gc2VsZi5wYXJzZUV4cHJlc3Npb24oMCkKICAgICAgICAgaWYgZGVidWdDcHBFeHByOgogICAgICAgICAgICAgcHJpbnQgIkNwcEV4cHI6IGdvdCAiICsgcmVwcihzZWxmLmV4cHIpCi0gICAgICAgIGlmIHNlbGYuaSAhPSBzZWxmLm46Ci0gICAgICAgICAgICBwcmludCAnY3JhcCBhdCBlbmQgb2YgaW5wdXQgKCVkICE9ICVkKTogJXMnICUgKHNlbGYuaSwgc2VsZi5uLCByZXByKHRva2VucykpCi0gICAgICAgICAgICByYWlzZQotCisgICAgICAgIGlmIHNlbGYuX2luZGV4ICE9IHNlbGYuX251bV90b2tlbnM6CisgICAgICAgICAgICBzZWxmLnRocm93KEJhZEV4cGVjdGVkVG9rZW4sICJjcmFwIGF0IGVuZCBvZiBpbnB1dCAoJWQgIT0gJWQpOiAlcyIKKyAgICAgICAgICAgICAgICAgICAgICAgJSAoc2VsZi5faW5kZXgsIHNlbGYuX251bV90b2tlbnMsIHJlcHIodG9rZW5zKSkpCiAKICAgICBkZWYgdGhyb3coc2VsZiwgZXhjZXB0aW9uLCBtc2cpOgotICAgICAgICBpZiBzZWxmLmkgPCBzZWxmLm46Ci0gICAgICAgICAgICB0b2sgPSBzZWxmLnRva1tzZWxmLmldCi0gICAgICAgICAgICBwcmludCAiJWQ6JWQ6ICVzIiAlICh0b2subGluZW5vLHRvay5jb2xubyxtc2cpCisgICAgICAgIGlmIHNlbGYuX2luZGV4IDwgc2VsZi5fbnVtX3Rva2VuczoKKyAgICAgICAgICAgIHRvayA9IHNlbGYudG9rZW5zW3NlbGYuX2luZGV4XQorICAgICAgICAgICAgcHJpbnQgIiVkOiVkOiAlcyIgJSAodG9rLmxvY2F0aW9uLmxpbmUsIHRvay5sb2NhdGlvbi5jb2x1bW4sIG1zZykKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHByaW50ICJFT0Y6ICVzIiAlIG1zZwogICAgICAgICByYWlzZSBleGNlcHRpb24obXNnKQogCi0KLSAgICBkZWYgc2tpcF9zcGFjZXMoc2VsZik6Ci0gICAgICAgICIiInNraXAgc3BhY2VzIGluIGlucHV0IHRva2VuIGxpc3QiIiIKLSAgICAgICAgd2hpbGUgc2VsZi5pIDwgc2VsZi5uOgotICAgICAgICAgICAgdCA9IHNlbGYudG9rW3NlbGYuaV0KLSAgICAgICAgICAgIGlmIHQuaWQgIT0gdG9rU1BBQ0UgYW5kIHQuaWQgIT0gdG9rTE46Ci0gICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgIHNlbGYuaSArPSAxCi0KLQogICAgIGRlZiBleHBlY3RJZChzZWxmLCBpZCk6Ci0gICAgICAgICIiImNoZWNrIHRoYXQgYSBnaXZlbiB0b2tlbiBpZCBpcyBhdCB0aGUgY3VycmVudCBwb3NpdGlvbiwgdGhlbiBza2lwIG92ZXIgaXQiIiIKLSAgICAgICAgc2VsZi5za2lwX3NwYWNlcygpCi0gICAgICAgIGlmIHNlbGYuaSA+PSBzZWxmLm4gb3Igc2VsZi50b2tbc2VsZi5pXS5pZCAhPSBpZDoKLSAgICAgICAgICAgIHNlbGYudGhyb3coQmFkRXhwZWN0ZWRUb2tlbixzZWxmLmksIiMjIyBleHBlY3RpbmcgJyVzJyBpbiBleHByZXNzaW9uLCBnb3QgJyVzJyIgJSAoaWQsIHNlbGYudG9rW3NlbGYuaV0uaWQpKQotICAgICAgICBzZWxmLmkgKz0gMQotCi0KLSAgICBkZWYgZXhwZWN0SWRlbnQoc2VsZik6Ci0gICAgICAgIHNlbGYuc2tpcF9zcGFjZXMoKQotICAgICAgICBpZiBzZWxmLmkgPj0gc2VsZi5uIG9yIHNlbGYudG9rW3NlbGYuaV0uaWQgIT0gdG9rSURFTlQ6Ci0gICAgICAgICAgICBzZWxmLnRocm93KEJhZEV4cGVjdGVkVG9rZW4sIHNlbGYuaSwiIyMjIGV4cGVjdGluZyBpZGVudGlmaWVyIGluIGV4cHJlc3Npb24sIGdvdCAnJXMnIiAlIChpZCwgc2VsZi50b2tbc2VsZi5pXS5pZCkpCi0gICAgICAgIHNlbGYuaSArPSAxCi0KKyAgICAgICAgIiIiQ2hlY2sgdGhhdCBhIGdpdmVuIHRva2VuIGlkIGlzIGF0IHRoZSBjdXJyZW50IHBvc2l0aW9uLiIiIgorICAgICAgICB0b2tlbiA9IHNlbGYudG9rZW5zW3NlbGYuX2luZGV4XQorICAgICAgICBpZiBzZWxmLl9pbmRleCA+PSBzZWxmLl9udW1fdG9rZW5zIG9yIHRva2VuLmlkICE9IGlkOgorICAgICAgICAgICAgc2VsZi50aHJvdyhCYWRFeHBlY3RlZFRva2VuLAorICAgICAgICAgICAgICAgICAgICAgICAiIyMjIGV4cGVjdGluZyAnJXMnIGluIGV4cHJlc3Npb24sIGdvdCAnJXMnIiAlICgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkLCB0b2tlbi5pZCkpCisgICAgICAgIHNlbGYuX2luZGV4ICs9IDEKIAogICAgIGRlZiBpc19kZWNpbWFsKHNlbGYpOgotICAgICAgICB2ID0gc2VsZi50b2tbc2VsZi5pXS52YWx1ZVs6XQotICAgICAgICB3aGlsZSBsZW4odikgPiAwIGFuZCB2Wy0xXSBpbiAiVUx1bCI6Ci0gICAgICAgICAgICB2ID0gdls6LTFdCi0gICAgICAgIGZvciBkaWdpdCBpbiB2OgotICAgICAgICAgICAgaWYgbm90IGRpZ2l0LmlzZGlnaXQoKToKLSAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQotCi0gICAgICAgIHNlbGYuaSArPSAxCi0gICAgICAgIHJldHVybiAoImludCIsIHN0cmluZy5hdG9pKHYpKQotCi0KLSAgICBkZWYgaXNfaGV4YWRlY2ltYWwoc2VsZik6Ci0gICAgICAgIHYgPSBzZWxmLnRva1tzZWxmLmldLnZhbHVlWzpdCi0gICAgICAgIHdoaWxlIGxlbih2KSA+IDAgYW5kIHZbLTFdIGluICJVTHVsIjoKLSAgICAgICAgICAgIHYgPSB2WzotMV0KLSAgICAgICAgaWYgbGVuKHYpID4gMiBhbmQgKHZbMDoyXSA9PSAiMHgiIG9yIHZbMDoyXSA9PSAiMFgiKToKLSAgICAgICAgICAgIGZvciBkaWdpdCBpbiB2WzI6XToKLSAgICAgICAgICAgICAgICBpZiBub3QgZGlnaXQgaW4gIjAxMjM0NTY3ODlhYmNkZWZBQkNERUYiOgotICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQotCi0gICAgICAgICAgICAjIGZvciBhIGhleCBleHByZXNzaW9uIHR1cGxlLCB0aGUgYXJndW1lbnQKLSAgICAgICAgICAgICMgaXMgdGhlIHZhbHVlIGFzIGFuIGludGVnZXIKLSAgICAgICAgICAgIHNlbGYuaSArPSAxCi0gICAgICAgICAgICByZXR1cm4gKCJoZXgiLCBpbnQodlsyOl0sIDE2KSkKLQotICAgICAgICByZXR1cm4gTm9uZQotCi0KLSAgICBkZWYgaXNfaW50ZWdlcihzZWxmKToKLSAgICAgICAgaWYgc2VsZi50b2tbc2VsZi5pXS5pZCAhPSB0b2tOVU1CRVI6CisgICAgICAgIHRva2VuID0gc2VsZi50b2tlbnNbc2VsZi5faW5kZXhdLmlkCisgICAgICAgIGlmIHRva2VuWy0xXSBpbiAiVUx1bCI6CisgICAgICAgICAgICB0b2tlbiA9IHRva2VuWzotMV0KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgdmFsID0gaW50KHRva2VuLCAxMCkKKyAgICAgICAgICAgIHNlbGYuX2luZGV4ICs9IDEKKyAgICAgICAgICAgIHJldHVybiAoJ2ludCcsIHZhbCkKKyAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6CiAgICAgICAgICAgICByZXR1cm4gTm9uZQogCi0gICAgICAgIGMgPSBzZWxmLmlzX2RlY2ltYWwoKQotICAgICAgICBpZiBjOiByZXR1cm4gYworICAgIGRlZiBpc19vY3RhbChzZWxmKToKKyAgICAgICAgdG9rZW4gPSBzZWxmLnRva2Vuc1tzZWxmLl9pbmRleF0uaWQKKyAgICAgICAgaWYgdG9rZW5bLTFdIGluICJVTHVsIjoKKyAgICAgICAgICAgIHRva2VuID0gdG9rZW5bOi0xXQorICAgICAgICBpZiBsZW4odG9rZW4pIDwgMiBvciB0b2tlblswXSAhPSAnMCc6CisgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICB0cnk6CisgICAgICAgICAgICB2YWwgPSBpbnQodG9rZW4sIDgpCisgICAgICAgICAgICBzZWxmLl9pbmRleCArPSAxCisgICAgICAgICAgICByZXR1cm4gKCdvY3QnLCB2YWwpCisgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgcmV0dXJuIE5vbmUKKworICAgIGRlZiBpc19oZXhhZGVjaW1hbChzZWxmKToKKyAgICAgICAgdG9rZW4gPSBzZWxmLnRva2Vuc1tzZWxmLl9pbmRleF0uaWQKKyAgICAgICAgaWYgdG9rZW5bLTFdIGluICJVTHVsIjoKKyAgICAgICAgICAgIHRva2VuID0gdG9rZW5bOi0xXQorICAgICAgICBpZiBsZW4odG9rZW4pIDwgMyBvciAodG9rZW5bOjJdICE9ICcweCcgYW5kIHRva2VuWzoyXSAhPSAnMFgnKToKKyAgICAgICAgICAgIHJldHVybiBOb25lCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHZhbCA9IGludCh0b2tlbiwgMTYpCisgICAgICAgICAgICBzZWxmLl9pbmRleCArPSAxCisgICAgICAgICAgICByZXR1cm4gKCdoZXgnLCB2YWwpCisgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgcmV0dXJuIE5vbmUKKworICAgIGRlZiBpc19pbnRlZ2VyKHNlbGYpOgorICAgICAgICBpZiBzZWxmLnRva2Vuc1tzZWxmLl9pbmRleF0ua2luZCAhPSBUb2tlbktpbmQuTElURVJBTDoKKyAgICAgICAgICAgIHJldHVybiBOb25lCiAKICAgICAgICAgYyA9IHNlbGYuaXNfaGV4YWRlY2ltYWwoKQotICAgICAgICBpZiBjOiByZXR1cm4gYworICAgICAgICBpZiBjOgorICAgICAgICAgICAgcmV0dXJuIGMKKworICAgICAgICBjID0gc2VsZi5pc19vY3RhbCgpCisgICAgICAgIGlmIGM6CisgICAgICAgICAgICByZXR1cm4gYworCisgICAgICAgIGMgPSBzZWxmLmlzX2RlY2ltYWwoKQorICAgICAgICBpZiBjOgorICAgICAgICAgICAgcmV0dXJuIGMKIAogICAgICAgICByZXR1cm4gTm9uZQogCi0KICAgICBkZWYgaXNfbnVtYmVyKHNlbGYpOgotICAgICAgICB0ID0gc2VsZi50b2tbc2VsZi5pXQotICAgICAgICBpZiB0LmlkID09IHRva01JTlVTIGFuZCBzZWxmLmkrMSA8IHNlbGYubjoKLSAgICAgICAgICAgIHNlbGYuaSArPSAxCisgICAgICAgIHQgPSBzZWxmLnRva2Vuc1tzZWxmLl9pbmRleF0KKyAgICAgICAgaWYgdC5pZCA9PSB0b2tNSU5VUyBhbmQgc2VsZi5faW5kZXggKyAxIDwgc2VsZi5fbnVtX3Rva2VuczoKKyAgICAgICAgICAgIHNlbGYuX2luZGV4ICs9IDEKICAgICAgICAgICAgIGMgPSBzZWxmLmlzX2ludGVnZXIoKQogICAgICAgICAgICAgaWYgYzoKLSAgICAgICAgICAgICAgICBvcCwgdmFsICA9IGMKKyAgICAgICAgICAgICAgICBvcCwgdmFsID0gYwogICAgICAgICAgICAgICAgIHJldHVybiAob3AsIC12YWwpCi0gICAgICAgIGlmIHQuaWQgPT0gdG9rUExVUyBhbmQgc2VsZi5pKzEgPCBzZWxmLm46CisgICAgICAgIGlmIHQuaWQgPT0gdG9rUExVUyBhbmQgc2VsZi5faW5kZXggKyAxIDwgc2VsZi5fbnVtX3Rva2VuczoKKyAgICAgICAgICAgIHNlbGYuX2luZGV4ICs9IDEKICAgICAgICAgICAgIGMgPSBzZWxmLmlzX2ludGVnZXIoKQotICAgICAgICAgICAgaWYgYzogcmV0dXJuIGMKKyAgICAgICAgICAgIGlmIGM6CisgICAgICAgICAgICAgICAgcmV0dXJuIGMKIAogICAgICAgICByZXR1cm4gc2VsZi5pc19pbnRlZ2VyKCkKIAotCiAgICAgZGVmIGlzX2RlZmluZWQoc2VsZik6Ci0gICAgICAgIHQgPSBzZWxmLnRva1tzZWxmLmldCisgICAgICAgIHQgPSBzZWxmLnRva2Vuc1tzZWxmLl9pbmRleF0KICAgICAgICAgaWYgdC5pZCAhPSB0b2tERUZJTkVEOgogICAgICAgICAgICAgcmV0dXJuIE5vbmUKIAotICAgICAgICAjIHdlIGhhdmUgdGhlIGRlZmluZWQga2V5d29yZCwgY2hlY2sgdGhlIHJlc3QKLSAgICAgICAgc2VsZi5pICs9IDEKLSAgICAgICAgc2VsZi5za2lwX3NwYWNlcygpCi0gICAgICAgIHVzZWRfcGFyZW5zID0gMAotICAgICAgICBpZiBzZWxmLmkgPCBzZWxmLm4gYW5kIHNlbGYudG9rW3NlbGYuaV0uaWQgPT0gdG9rTFBBUkVOOgotICAgICAgICAgICAgdXNlZF9wYXJlbnMgPSAxCi0gICAgICAgICAgICBzZWxmLmkgKz0gMQotICAgICAgICAgICAgc2VsZi5za2lwX3NwYWNlcygpCisgICAgICAgICMgV2UgaGF2ZSB0aGUgZGVmaW5lZCBrZXl3b3JkLCBjaGVjayB0aGUgcmVzdC4KKyAgICAgICAgc2VsZi5faW5kZXggKz0gMQorICAgICAgICB1c2VkX3BhcmVucyA9IEZhbHNlCisgICAgICAgIGlmIChzZWxmLl9pbmRleCA8IHNlbGYuX251bV90b2tlbnMgYW5kCisgICAgICAgICAgICBzZWxmLnRva2Vuc1tzZWxmLl9pbmRleF0uaWQgPT0gdG9rTFBBUkVOKToKKyAgICAgICAgICAgIHVzZWRfcGFyZW5zID0gVHJ1ZQorICAgICAgICAgICAgc2VsZi5faW5kZXggKz0gMQogCi0gICAgICAgIGlmIHNlbGYuaSA+PSBzZWxmLm46Ci0gICAgICAgICAgICBzZWxmLnRocm93KENwcENvbnN0YW50RXhwZWN0ZWQsaSwiIyMjICdkZWZpbmVkJyBtdXN0IGJlIGZvbGxvd2VkICBieSBtYWNybyBuYW1lIG9yIGxlZnQgcGFyZW4iKQorICAgICAgICBpZiBzZWxmLl9pbmRleCA+PSBzZWxmLl9udW1fdG9rZW5zOgorICAgICAgICAgICAgc2VsZi50aHJvdyhCYWRFeHBlY3RlZFRva2VuLAorICAgICAgICAgICAgICAgICAgICAgICAiIyMjICdkZWZpbmVkJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IG1hY3JvIG5hbWUgb3IgbGVmdCAiCisgICAgICAgICAgICAgICAgICAgICAgICJwYXJlbiIpCiAKLSAgICAgICAgdCA9IHNlbGYudG9rW3NlbGYuaV0KLSAgICAgICAgaWYgdC5pZCAhPSB0b2tJREVOVDoKLSAgICAgICAgICAgIHNlbGYudGhyb3coQ3BwQ29uc3RhbnRFeHBlY3RlZCxpLCIjIyMgJ2RlZmluZWQnIG11c3QgYmUgZm9sbG93ZWQgYnkgbWFjcm8gbmFtZSIpCisgICAgICAgIHQgPSBzZWxmLnRva2Vuc1tzZWxmLl9pbmRleF0KKyAgICAgICAgaWYgdC5raW5kICE9IFRva2VuS2luZC5JREVOVElGSUVSOgorICAgICAgICAgICAgc2VsZi50aHJvdyhCYWRFeHBlY3RlZFRva2VuLAorICAgICAgICAgICAgICAgICAgICAgICAiIyMjICdkZWZpbmVkJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IG1hY3JvIG5hbWUiKQogCi0gICAgICAgIHNlbGYuaSArPSAxCisgICAgICAgIHNlbGYuX2luZGV4ICs9IDEKICAgICAgICAgaWYgdXNlZF9wYXJlbnM6CiAgICAgICAgICAgICBzZWxmLmV4cGVjdElkKHRva1JQQVJFTikKIAotICAgICAgICByZXR1cm4gKCJkZWZpbmVkIiwgdC52YWx1ZSkKLQorICAgICAgICByZXR1cm4gKCJkZWZpbmVkIiwgdC5pZCkKIAogICAgIGRlZiBpc19jYWxsX29yX2lkZW50KHNlbGYpOgotICAgICAgICBzZWxmLnNraXBfc3BhY2VzKCkKLSAgICAgICAgaWYgc2VsZi5pID49IHNlbGYubjoKKyAgICAgICAgaWYgc2VsZi5faW5kZXggPj0gc2VsZi5fbnVtX3Rva2VuczoKICAgICAgICAgICAgIHJldHVybiBOb25lCiAKLSAgICAgICAgdCA9IHNlbGYudG9rW3NlbGYuaV0KLSAgICAgICAgaWYgdC5pZCAhPSB0b2tJREVOVDoKKyAgICAgICAgdCA9IHNlbGYudG9rZW5zW3NlbGYuX2luZGV4XQorICAgICAgICBpZiB0LmtpbmQgIT0gVG9rZW5LaW5kLklERU5USUZJRVI6CiAgICAgICAgICAgICByZXR1cm4gTm9uZQogCi0gICAgICAgIG5hbWUgPSB0LnZhbHVlCisgICAgICAgIG5hbWUgPSB0LmlkCiAKLSAgICAgICAgc2VsZi5pICs9IDEKLSAgICAgICAgc2VsZi5za2lwX3NwYWNlcygpCi0gICAgICAgIGlmIHNlbGYuaSA+PSBzZWxmLm4gb3Igc2VsZi50b2tbc2VsZi5pXS5pZCAhPSB0b2tMUEFSRU46CisgICAgICAgIHNlbGYuX2luZGV4ICs9IDEKKyAgICAgICAgaWYgKHNlbGYuX2luZGV4ID49IHNlbGYuX251bV90b2tlbnMgb3IKKyAgICAgICAgICAgIHNlbGYudG9rZW5zW3NlbGYuX2luZGV4XS5pZCAhPSB0b2tMUEFSRU4pOgogICAgICAgICAgICAgcmV0dXJuICgiaWRlbnQiLCBuYW1lKQogCi0gICAgICAgIHBhcmFtcyAgICA9IFtdCi0gICAgICAgIGRlcHRoICAgICA9IDEKLSAgICAgICAgc2VsZi5pICs9IDEKLSAgICAgICAgaiAgPSBzZWxmLmkKLSAgICAgICAgd2hpbGUgc2VsZi5pIDwgc2VsZi5uOgotICAgICAgICAgICAgaWQgPSBzZWxmLnRva1tzZWxmLmldLmlkCisgICAgICAgIHBhcmFtcyA9IFtdCisgICAgICAgIGRlcHRoID0gMQorICAgICAgICBzZWxmLl9pbmRleCArPSAxCisgICAgICAgIGogPSBzZWxmLl9pbmRleAorICAgICAgICB3aGlsZSBzZWxmLl9pbmRleCA8IHNlbGYuX251bV90b2tlbnM6CisgICAgICAgICAgICBpZCA9IHNlbGYudG9rZW5zW3NlbGYuX2luZGV4XS5pZAogICAgICAgICAgICAgaWYgaWQgPT0gdG9rTFBBUkVOOgogICAgICAgICAgICAgICAgIGRlcHRoICs9IDEKICAgICAgICAgICAgIGVsaWYgZGVwdGggPT0gMSBhbmQgKGlkID09IHRva0NPTU1BIG9yIGlkID09IHRva1JQQVJFTik6Ci0gICAgICAgICAgICAgICAgd2hpbGUgaiA8IHNlbGYuaSBhbmQgc2VsZi50b2tbal0uaWQgPT0gdG9rU1BBQ0U6Ci0gICAgICAgICAgICAgICAgICAgIGogKz0gMQotICAgICAgICAgICAgICAgIGsgPSBzZWxmLmkKLSAgICAgICAgICAgICAgICB3aGlsZSBrID4gaiBhbmQgc2VsZi50b2tbay0xXS5pZCA9PSB0b2tTUEFDRToKLSAgICAgICAgICAgICAgICAgICAgayAtPSAxCi0gICAgICAgICAgICAgICAgcGFyYW0gPSBzZWxmLnRva1tqOmtdCisgICAgICAgICAgICAgICAgayA9IHNlbGYuX2luZGV4CisgICAgICAgICAgICAgICAgcGFyYW0gPSBzZWxmLnRva2Vuc1tqOmtdCiAgICAgICAgICAgICAgICAgcGFyYW1zLmFwcGVuZChwYXJhbSkKICAgICAgICAgICAgICAgICBpZiBpZCA9PSB0b2tSUEFSRU46CiAgICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICAgICAgaiA9IHNlbGYuaSsxCisgICAgICAgICAgICAgICAgaiA9IHNlbGYuX2luZGV4ICsgMQogICAgICAgICAgICAgZWxpZiBpZCA9PSB0b2tSUEFSRU46CiAgICAgICAgICAgICAgICAgZGVwdGggLT0gMQotICAgICAgICAgICAgc2VsZi5pICs9IDEKKyAgICAgICAgICAgIHNlbGYuX2luZGV4ICs9IDEKIAotICAgICAgICBpZiBzZWxmLmkgPj0gc2VsZi5uOgorICAgICAgICBpZiBzZWxmLl9pbmRleCA+PSBzZWxmLl9udW1fdG9rZW5zOgogICAgICAgICAgICAgcmV0dXJuIE5vbmUKIAotICAgICAgICBzZWxmLmkgKz0gMQorICAgICAgICBzZWxmLl9pbmRleCArPSAxCiAgICAgICAgIHJldHVybiAoImNhbGwiLCAobmFtZSwgcGFyYW1zKSkKIAorICAgICMgSW1wbGVtZW50cyB0aGUgInByZWNlZGVuY2UgY2xpbWJpbmciIGFsZ29yaXRobSBmcm9tCisgICAgIyBodHRwOi8vd3d3LmVuZ3IubXVuLmNhL350aGVvL01pc2MvZXhwX3BhcnNpbmcuaHRtLgorICAgICMgVGhlICJjbGFzc2ljIiBhbGdvcml0aG0gd291bGQgYmUgZmluZSBpZiB3ZSB3ZXJlIHVzaW5nIGEgdG9vbCB0bworICAgICMgZ2VuZXJhdGUgdGhlIHBhcnNlciwgYnV0IHdlJ3JlIG5vdC4gRGlqa3N0cmEncyAic2h1bnRpbmcgeWFyZCIKKyAgICAjIGFsZ29yaXRobSBoYXNuJ3QgYmVlbiBuZWNlc3NhcnkgeWV0LgogCi0gICAgIyBJbXBsZW1lbnRzIHRoZSAicHJlY2VkZW5jZSBjbGltYmluZyIgYWxnb3JpdGhtIGZyb20gaHR0cDovL3d3dy5lbmdyLm11bi5jYS9+dGhlby9NaXNjL2V4cF9wYXJzaW5nLmh0bS4KLSAgICAjIFRoZSAiY2xhc3NpYyIgYWxnb3JpdGhtIHdvdWxkIGJlIGZpbmUgaWYgd2Ugd2VyZSB1c2luZyBhIHRvb2wgdG8gZ2VuZXJhdGUgdGhlIHBhcnNlciwgYnV0IHdlJ3JlIG5vdC4KLSAgICAjIERpamtzdHJhJ3MgInNodW50aW5nIHlhcmQiIGFsZ29yaXRobSBoYXNuJ3QgYmVlbiBuZWNlc3NhcnkgeWV0LgogICAgIGRlZiBwYXJzZUV4cHJlc3Npb24oc2VsZiwgbWluUHJlY2VkZW5jZSk6Ci0gICAgICAgIHNlbGYuc2tpcF9zcGFjZXMoKQotICAgICAgICBpZiBzZWxmLmkgPj0gc2VsZi5uOgorICAgICAgICBpZiBzZWxmLl9pbmRleCA+PSBzZWxmLl9udW1fdG9rZW5zOgogICAgICAgICAgICAgcmV0dXJuIE5vbmUKIAogICAgICAgICBub2RlID0gc2VsZi5wYXJzZVByaW1hcnkoKQotICAgICAgICB3aGlsZSBzZWxmLnRva2VuKCkgIT0gTm9uZSBhbmQgc2VsZi5pc0JpbmFyeShzZWxmLnRva2VuKCkpIGFuZCBzZWxmLnByZWNlZGVuY2Uoc2VsZi50b2tlbigpKSA+PSBtaW5QcmVjZWRlbmNlOgorICAgICAgICB3aGlsZSAoc2VsZi50b2tlbigpIGFuZCBzZWxmLmlzQmluYXJ5KHNlbGYudG9rZW4oKSkgYW5kCisgICAgICAgICAgICAgICBzZWxmLnByZWNlZGVuY2Uoc2VsZi50b2tlbigpKSA+PSBtaW5QcmVjZWRlbmNlKToKICAgICAgICAgICAgIG9wID0gc2VsZi50b2tlbigpCiAgICAgICAgICAgICBzZWxmLm5leHRUb2tlbigpCiAgICAgICAgICAgICByaHMgPSBzZWxmLnBhcnNlRXhwcmVzc2lvbihzZWxmLnByZWNlZGVuY2Uob3ApICsgMSkKQEAgLTc2OCw3ICs2MDUsNiBAQAogCiAgICAgICAgIHJldHVybiBub2RlCiAKLQogICAgIGRlZiBwYXJzZVByaW1hcnkoc2VsZik6CiAgICAgICAgIG9wID0gc2VsZi50b2tlbigpCiAgICAgICAgIGlmIHNlbGYuaXNVbmFyeShvcCk6CkBAIC03ODQsNTEgKzYyMCw0NyBAQAogICAgICAgICAgICAgc2VsZi5uZXh0VG9rZW4oKQogICAgICAgICAgICAgcHJpbWFyeSA9IHNlbGYucGFyc2VFeHByZXNzaW9uKDApCiAgICAgICAgICAgICBzZWxmLmV4cGVjdElkKCI6IikKLSAgICAgICAgZWxpZiBvcC5pZCA9PSB0b2tOVU1CRVI6CisgICAgICAgIGVsaWYgb3AuaWQgPT0gJysnIG9yIG9wLmlkID09ICctJyBvciBvcC5raW5kID09IFRva2VuS2luZC5MSVRFUkFMOgogICAgICAgICAgICAgcHJpbWFyeSA9IHNlbGYuaXNfbnVtYmVyKCkKLSAgICAgICAgZWxpZiBvcC5pZCA9PSB0b2tJREVOVDoKLSAgICAgICAgICAgIHByaW1hcnkgPSBzZWxmLmlzX2NhbGxfb3JfaWRlbnQoKQorICAgICAgICAjIENoZWNraW5nIGZvciAnZGVmaW5lZCcgbmVlZHMgdG8gY29tZSBmaXJzdCBub3cgYmVjYXVzZSAnZGVmaW5lZCcgaXMKKyAgICAgICAgIyByZWNvZ25pemVkIGFzIElERU5USUZJRVIuCiAgICAgICAgIGVsaWYgb3AuaWQgPT0gdG9rREVGSU5FRDoKICAgICAgICAgICAgIHByaW1hcnkgPSBzZWxmLmlzX2RlZmluZWQoKQorICAgICAgICBlbGlmIG9wLmtpbmQgPT0gVG9rZW5LaW5kLklERU5USUZJRVI6CisgICAgICAgICAgICBwcmltYXJ5ID0gc2VsZi5pc19jYWxsX29yX2lkZW50KCkKICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHNlbGYudGhyb3coQmFkRXhwZWN0ZWRUb2tlbiwgImRpZG4ndCBleHBlY3QgdG8gc2VlIGEgJXMgaW4gZmFjdG9yIiAlIChzZWxmLnRva1tzZWxmLmldLmlkKSkKLQotICAgICAgICBzZWxmLnNraXBfc3BhY2VzKCkKLQotICAgICAgICByZXR1cm4gcHJpbWFyeTsKLQorICAgICAgICAgICAgc2VsZi50aHJvdyhCYWRFeHBlY3RlZFRva2VuLAorICAgICAgICAgICAgICAgICAgICAgICAiZGlkbid0IGV4cGVjdCB0byBzZWUgYSAlcyBpbiBmYWN0b3IiICUgKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi50b2tlbnNbc2VsZi5faW5kZXhdLmlkKSkKKyAgICAgICAgcmV0dXJuIHByaW1hcnkKIAogICAgIGRlZiBpc0JpbmFyeShzZWxmLCB0b2tlbik6CiAgICAgICAgIHJldHVybiB0b2tlbi5pZCBpbiBzZWxmLmJpbmFyaWVzCiAKLQogICAgIGRlZiBpc1VuYXJ5KHNlbGYsIHRva2VuKToKICAgICAgICAgcmV0dXJuIHRva2VuLmlkIGluIHNlbGYudW5hcmllcwogCi0KICAgICBkZWYgcHJlY2VkZW5jZShzZWxmLCB0b2tlbik6CiAgICAgICAgIHJldHVybiBzZWxmLnByZWNlZGVuY2VzLmdldCh0b2tlbi5pZCkKIAotCiAgICAgZGVmIHRva2VuKHNlbGYpOgotICAgICAgICBpZiBzZWxmLmkgPj0gc2VsZi5uOgorICAgICAgICBpZiBzZWxmLl9pbmRleCA+PSBzZWxmLl9udW1fdG9rZW5zOgogICAgICAgICAgICAgcmV0dXJuIE5vbmUKLSAgICAgICAgcmV0dXJuIHNlbGYudG9rW3NlbGYuaV0KLQorICAgICAgICByZXR1cm4gc2VsZi50b2tlbnNbc2VsZi5faW5kZXhdCiAKICAgICBkZWYgbmV4dFRva2VuKHNlbGYpOgotICAgICAgICBzZWxmLmkgKz0gMQotICAgICAgICBzZWxmLnNraXBfc3BhY2VzKCkKLSAgICAgICAgaWYgc2VsZi5pID49IHNlbGYubjoKKyAgICAgICAgc2VsZi5faW5kZXggKz0gMQorICAgICAgICBpZiBzZWxmLl9pbmRleCA+PSBzZWxmLl9udW1fdG9rZW5zOgogICAgICAgICAgICAgcmV0dXJuIE5vbmUKLSAgICAgICAgcmV0dXJuIHNlbGYudG9rW3NlbGYuaV0KLQorICAgICAgICByZXR1cm4gc2VsZi50b2tlbnNbc2VsZi5faW5kZXhdCiAKICAgICBkZWYgZHVtcF9ub2RlKHNlbGYsIGUpOgogICAgICAgICBvcCA9IGVbMF0KICAgICAgICAgbGluZSA9ICIoIiArIG9wCiAgICAgICAgIGlmIG9wID09ICJpbnQiOgogICAgICAgICAgICAgbGluZSArPSAiICVkKSIgJSBlWzFdCisgICAgICAgIGVsaWYgb3AgPT0gIm9jdCI6CisgICAgICAgICAgICBsaW5lICs9ICIgMCVvKSIgJSBlWzFdCiAgICAgICAgIGVsaWYgb3AgPT0gImhleCI6CiAgICAgICAgICAgICBsaW5lICs9ICIgMHgleCkiICUgZVsxXQogICAgICAgICBlbGlmIG9wID09ICJpZGVudCI6CkBAIC04NjQsMzEgKzY5NiwzMyBAQAogICAgICAgICAgICAgcmV0dXJuICIlZCIgJSBlWzFdCiAgICAgICAgIGlmIG9wID09ICJoZXgiOgogICAgICAgICAgICAgcmV0dXJuICIweCV4IiAlIGVbMV0KKyAgICAgICAgaWYgb3AgPT0gIm9jdCI6CisgICAgICAgICAgICByZXR1cm4gIjAlbyIgJSBlWzFdCiAgICAgICAgIGlmIG9wID09ICJpZGVudCI6CiAgICAgICAgICAgICAjIFhYWDogc2hvdWxkIHRyeSB0byBleHBhbmQKICAgICAgICAgICAgIHJldHVybiBlWzFdCiAgICAgICAgIGlmIG9wID09ICJkZWZpbmVkIjoKICAgICAgICAgICAgIHJldHVybiAiZGVmaW5lZCglcykiICUgZVsxXQogCi0gICAgICAgIHByZWMgPSBDcHBFeHByLnByZWNlZGVuY2VzLmdldChvcCwxMDAwKQotICAgICAgICBhcmcgID0gZVsxXQorICAgICAgICBwcmVjID0gQ3BwRXhwci5wcmVjZWRlbmNlcy5nZXQob3AsIDEwMDApCisgICAgICAgIGFyZyA9IGVbMV0KICAgICAgICAgaWYgb3AgaW4gQ3BwRXhwci51bmFyaWVzOgogICAgICAgICAgICAgYXJnX3NyYyA9IHNlbGYuc291cmNlX25vZGUoYXJnKQotICAgICAgICAgICAgYXJnX29wICA9IGFyZ1swXQotICAgICAgICAgICAgYXJnX3ByZWMgPSBDcHBFeHByLnByZWNlZGVuY2VzLmdldChhcmdbMF0sMTAwMCkKKyAgICAgICAgICAgIGFyZ19vcCA9IGFyZ1swXQorICAgICAgICAgICAgYXJnX3ByZWMgPSBDcHBFeHByLnByZWNlZGVuY2VzLmdldChhcmdfb3AsIDEwMDApCiAgICAgICAgICAgICBpZiBhcmdfcHJlYyA8IHByZWM6CiAgICAgICAgICAgICAgICAgcmV0dXJuICIhKCIgKyBhcmdfc3JjICsgIikiCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHJldHVybiAiISIgKyBhcmdfc3JjCiAgICAgICAgIGlmIG9wIGluIENwcEV4cHIuYmluYXJpZXM6Ci0gICAgICAgICAgICBhcmcyICAgICA9IGVbMl0KLSAgICAgICAgICAgIGFyZzFfb3AgID0gYXJnWzBdCi0gICAgICAgICAgICBhcmcyX29wICA9IGFyZzJbMF0KKyAgICAgICAgICAgIGFyZzIgPSBlWzJdCisgICAgICAgICAgICBhcmcxX29wID0gYXJnWzBdCisgICAgICAgICAgICBhcmcyX29wID0gYXJnMlswXQogICAgICAgICAgICAgYXJnMV9zcmMgPSBzZWxmLnNvdXJjZV9ub2RlKGFyZykKICAgICAgICAgICAgIGFyZzJfc3JjID0gc2VsZi5zb3VyY2Vfbm9kZShhcmcyKQotICAgICAgICAgICAgaWYgQ3BwRXhwci5wcmVjZWRlbmNlcy5nZXQoYXJnMV9vcCwxMDAwKSA8IHByZWM6CisgICAgICAgICAgICBpZiBDcHBFeHByLnByZWNlZGVuY2VzLmdldChhcmcxX29wLCAxMDAwKSA8IHByZWM6CiAgICAgICAgICAgICAgICAgYXJnMV9zcmMgPSAiKCVzKSIgJSBhcmcxX3NyYwotICAgICAgICAgICAgaWYgQ3BwRXhwci5wcmVjZWRlbmNlcy5nZXQoYXJnMl9vcCwxMDAwKSA8IHByZWM6CisgICAgICAgICAgICBpZiBDcHBFeHByLnByZWNlZGVuY2VzLmdldChhcmcyX29wLCAxMDAwKSA8IHByZWM6CiAgICAgICAgICAgICAgICAgYXJnMl9zcmMgPSAiKCVzKSIgJSBhcmcyX3NyYwogCiAgICAgICAgICAgICByZXR1cm4gIiVzICVzICVzIiAlIChhcmcxX3NyYywgb3AsIGFyZzJfc3JjKQpAQCAtODk3LDE5ICs3MzEsMjEgQEAKICAgICBkZWYgX19zdHJfXyhzZWxmKToKICAgICAgICAgcmV0dXJuIHNlbGYuc291cmNlX25vZGUoc2VsZi5leHByKQogCi0gICAgZGVmIGludF9ub2RlKHNlbGYsZSk6Ci0gICAgICAgIGlmIGVbMF0gPT0gImludCI6CisgICAgQHN0YXRpY21ldGhvZAorICAgIGRlZiBpbnRfbm9kZShlKToKKyAgICAgICAgaWYgZVswXSBpbiBbImludCIsICJvY3QiLCAiaGV4Il06CiAgICAgICAgICAgICByZXR1cm4gZVsxXQotICAgICAgICBlbGlmIGVbMV0gPT0gImhleCI6Ci0gICAgICAgICAgICByZXR1cm4gaW50KGVbMV0sMTYpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICByZXR1cm4gTm9uZQogCiAgICAgZGVmIHRvSW50KHNlbGYpOgogICAgICAgICByZXR1cm4gc2VsZi5pbnRfbm9kZShzZWxmLmV4cHIpCiAKLSAgICBkZWYgb3B0aW1pemVfbm9kZShzZWxmLCBlLCBtYWNyb3M9e30pOgorICAgIGRlZiBvcHRpbWl6ZV9ub2RlKHNlbGYsIGUsIG1hY3Jvcz1Ob25lKToKKyAgICAgICAgaWYgbWFjcm9zIGlzIE5vbmU6CisgICAgICAgICAgICBtYWNyb3MgPSB7fQogICAgICAgICBvcCA9IGVbMF0KKwogICAgICAgICBpZiBvcCA9PSAiZGVmaW5lZCI6CiAgICAgICAgICAgICBvcCwgbmFtZSA9IGUKICAgICAgICAgICAgIGlmIG1hY3Jvcy5oYXNfa2V5KG5hbWUpOgpAQCAtOTE5LDcgKzc1NSw3IEBACiAgICAgICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlID0gaW50KG1hY3Jvc1tuYW1lXSkKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoImludCIsIHZhbHVlKQotICAgICAgICAgICAgICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICgiZGVmaW5lZCIsIG1hY3Jvc1tuYW1lXSkKIAogICAgICAgICAgICAgaWYga2VybmVsX3JlbW92ZV9jb25maWdfbWFjcm9zIGFuZCBuYW1lLnN0YXJ0c3dpdGgoIkNPTkZJR18iKToKQEAgLTkzMyw3ICs3NjksNyBAQAogICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBpbnQobWFjcm9zW25hbWVdKQogICAgICAgICAgICAgICAgICAgICBleHBhbmRlZCA9ICgiaW50IiwgdmFsdWUpCi0gICAgICAgICAgICAgICAgZXhjZXB0OgorICAgICAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgogICAgICAgICAgICAgICAgICAgICBleHBhbmRlZCA9ICgiaWRlbnQiLCBtYWNyb3NbbmFtZV0pCiAgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYub3B0aW1pemVfbm9kZShleHBhbmRlZCwgbWFjcm9zKQogICAgICAgICAgICAgcmV0dXJuIGUKQEAgLTk1MCwxNiArNzg2LDE2IEBACiAKICAgICAgICAgZWxpZiBvcCA9PSAiJiYiOgogICAgICAgICAgICAgb3AsIGwsIHIgPSBlCi0gICAgICAgICAgICBsICA9IHNlbGYub3B0aW1pemVfbm9kZShsLCBtYWNyb3MpCi0gICAgICAgICAgICByICA9IHNlbGYub3B0aW1pemVfbm9kZShyLCBtYWNyb3MpCisgICAgICAgICAgICBsID0gc2VsZi5vcHRpbWl6ZV9ub2RlKGwsIG1hY3JvcykKKyAgICAgICAgICAgIHIgPSBzZWxmLm9wdGltaXplX25vZGUociwgbWFjcm9zKQogICAgICAgICAgICAgbGkgPSBzZWxmLmludF9ub2RlKGwpCiAgICAgICAgICAgICByaSA9IHNlbGYuaW50X25vZGUocikKLSAgICAgICAgICAgIGlmIGxpICE9IE5vbmU6CisgICAgICAgICAgICBpZiBsaSBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICBpZiBsaSA9PSAwOgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gKCJpbnQiLCAwKQogICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiByCi0gICAgICAgICAgICBlbGlmIHJpICE9IE5vbmU6CisgICAgICAgICAgICBlbGlmIHJpIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgICAgIGlmIHJpID09IDA6CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoImludCIsIDApCiAgICAgICAgICAgICAgICAgZWxzZToKQEAgLTk2OCwxNiArODA0LDE2IEBACiAKICAgICAgICAgZWxpZiBvcCA9PSAifHwiOgogICAgICAgICAgICAgb3AsIGwsIHIgPSBlCi0gICAgICAgICAgICBsICA9IHNlbGYub3B0aW1pemVfbm9kZShsLCBtYWNyb3MpCi0gICAgICAgICAgICByICA9IHNlbGYub3B0aW1pemVfbm9kZShyLCBtYWNyb3MpCisgICAgICAgICAgICBsID0gc2VsZi5vcHRpbWl6ZV9ub2RlKGwsIG1hY3JvcykKKyAgICAgICAgICAgIHIgPSBzZWxmLm9wdGltaXplX25vZGUociwgbWFjcm9zKQogICAgICAgICAgICAgbGkgPSBzZWxmLmludF9ub2RlKGwpCiAgICAgICAgICAgICByaSA9IHNlbGYuaW50X25vZGUocikKLSAgICAgICAgICAgIGlmIGxpICE9IE5vbmU6CisgICAgICAgICAgICBpZiBsaSBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICBpZiBsaSA9PSAwOgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gcgogICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoImludCIsIDEpCi0gICAgICAgICAgICBlbGlmIHJpICE9IE5vbmU6CisgICAgICAgICAgICBlbGlmIHJpIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgICAgIGlmIHJpID09IDA6CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBsCiAgICAgICAgICAgICAgICAgZWxzZToKQEAgLTk4Nyw1MCArODIzLDU0IEBACiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICByZXR1cm4gZQogCi0gICAgZGVmIG9wdGltaXplKHNlbGYsbWFjcm9zPXt9KToKKyAgICBkZWYgb3B0aW1pemUoc2VsZiwgbWFjcm9zPU5vbmUpOgorICAgICAgICBpZiBtYWNyb3MgaXMgTm9uZToKKyAgICAgICAgICAgIG1hY3JvcyA9IHt9CiAgICAgICAgIHNlbGYuZXhwciA9IHNlbGYub3B0aW1pemVfbm9kZShzZWxmLmV4cHIsIG1hY3JvcykKIAotICAgIGRlZiBpc19lcXVhbF9ub2RlKHNlbGYsZTEsZTIpOgotICAgICAgICBpZiBlMVswXSAhPSBlMlswXSBvciBsZW4oZTEpICE9IGxlbihlMik6Ci0gICAgICAgICAgICByZXR1cm4gRmFsc2UKLQotICAgICAgICBvcCA9IGUxWzBdCi0gICAgICAgIGlmIG9wID09ICJpbnQiIG9yIG9wID09ICJoZXgiIG9yIG9wID09ICIhIiBvciBvcCA9PSAiZGVmaW5lZCI6Ci0gICAgICAgICAgICByZXR1cm4gZTFbMF0gPT0gZTJbMF0KLQotICAgICAgICByZXR1cm4gc2VsZi5pc19lcXVhbF9ub2RlKGUxWzFdLGUyWzFdKSBhbmQgc2VsZi5pc19lcXVhbF9ub2RlKGUxWzJdLGUyWzJdKQotCi0gICAgZGVmIGlzX2VxdWFsKHNlbGYsb3RoZXIpOgotICAgICAgICByZXR1cm4gc2VsZi5pc19lcXVhbF9ub2RlKHNlbGYuZXhwcixvdGhlci5leHByKQogCiBkZWYgdGVzdF9jcHBfZXhwcihleHByLCBleHBlY3RlZCk6Ci0gICAgZSA9IENwcEV4cHIoIENwcExpbmVUb2tlbml6ZXIoIGV4cHIgKS50b1Rva2VuTGlzdCgpICkKKyAgICBlID0gQ3BwRXhwcihDcHBTdHJpbmdUb2tlbml6ZXIoZXhwcikudG9rZW5zKQogICAgIHMxID0gcmVwcihlKQogICAgIGlmIHMxICE9IGV4cGVjdGVkOgotICAgICAgICBwcmludCAiW0ZBSUxdOiBleHByZXNzaW9uICclcycgZ2VuZXJhdGVzICclcycsIHNob3VsZCBiZSAnJXMnIiAlIChleHByLCBzMSwgZXhwZWN0ZWQpCisgICAgICAgIHByaW50ICgiW0ZBSUxdOiBleHByZXNzaW9uICclcycgZ2VuZXJhdGVzICclcycsIHNob3VsZCBiZSAiCisgICAgICAgICAgICAgICAiJyVzJyIgJSAoZXhwciwgczEsIGV4cGVjdGVkKSkKICAgICAgICAgZ2xvYmFsIGZhaWx1cmVfY291bnQKICAgICAgICAgZmFpbHVyZV9jb3VudCArPSAxCiAKLWRlZiB0ZXN0X2NwcF9leHByX29wdGltKGV4cHIsIGV4cGVjdGVkLCBtYWNyb3M9e30pOgotICAgIGUgPSBDcHBFeHByKCBDcHBMaW5lVG9rZW5pemVyKCBleHByICkudG9Ub2tlbkxpc3QoKSApCisKK2RlZiB0ZXN0X2NwcF9leHByX29wdGltKGV4cHIsIGV4cGVjdGVkLCBtYWNyb3M9Tm9uZSk6CisgICAgaWYgbWFjcm9zIGlzIE5vbmU6CisgICAgICAgIG1hY3JvcyA9IHt9CisgICAgZSA9IENwcEV4cHIoQ3BwU3RyaW5nVG9rZW5pemVyKGV4cHIpLnRva2VucykKICAgICBlLm9wdGltaXplKG1hY3JvcykKICAgICBzMSA9IHJlcHIoZSkKICAgICBpZiBzMSAhPSBleHBlY3RlZDoKLSAgICAgICAgcHJpbnQgIltGQUlMXTogb3B0aW1pemVkIGV4cHJlc3Npb24gJyVzJyBnZW5lcmF0ZXMgJyVzJyB3aXRoIG1hY3JvcyAlcywgc2hvdWxkIGJlICclcyciICUgKGV4cHIsIHMxLCBtYWNyb3MsIGV4cGVjdGVkKQorICAgICAgICBwcmludCAoIltGQUlMXTogb3B0aW1pemVkIGV4cHJlc3Npb24gJyVzJyBnZW5lcmF0ZXMgJyVzJyB3aXRoICIKKyAgICAgICAgICAgICAgICJtYWNyb3MgJXMsIHNob3VsZCBiZSAnJXMnIiAlIChleHByLCBzMSwgbWFjcm9zLCBleHBlY3RlZCkpCiAgICAgICAgIGdsb2JhbCBmYWlsdXJlX2NvdW50CiAgICAgICAgIGZhaWx1cmVfY291bnQgKz0gMQogCisKIGRlZiB0ZXN0X2NwcF9leHByX3NvdXJjZShleHByLCBleHBlY3RlZCk6Ci0gICAgZSA9IENwcEV4cHIoIENwcExpbmVUb2tlbml6ZXIoIGV4cHIgKS50b1Rva2VuTGlzdCgpICkKKyAgICBlID0gQ3BwRXhwcihDcHBTdHJpbmdUb2tlbml6ZXIoZXhwcikudG9rZW5zKQogICAgIHMxID0gc3RyKGUpCiAgICAgaWYgczEgIT0gZXhwZWN0ZWQ6Ci0gICAgICAgIHByaW50ICJbRkFJTF06IHNvdXJjZSBleHByZXNzaW9uICclcycgZ2VuZXJhdGVzICclcycsIHNob3VsZCBiZSAnJXMnIiAlIChleHByLCBzMSwgZXhwZWN0ZWQpCisgICAgICAgIHByaW50ICgiW0ZBSUxdOiBzb3VyY2UgZXhwcmVzc2lvbiAnJXMnIGdlbmVyYXRlcyAnJXMnLCBzaG91bGQgIgorICAgICAgICAgICAgICAgImJlICclcyciICUgKGV4cHIsIHMxLCBleHBlY3RlZCkpCiAgICAgICAgIGdsb2JhbCBmYWlsdXJlX2NvdW50CiAgICAgICAgIGZhaWx1cmVfY291bnQgKz0gMQogCisKIGRlZiB0ZXN0X0NwcEV4cHIoKToKICAgICB0ZXN0X2NwcF9leHByKCIwIiwgIihpbnQgMCkiKQogICAgIHRlc3RfY3BwX2V4cHIoIjEiLCAiKGludCAxKSIpCisgICAgdGVzdF9jcHBfZXhwcigiLTUiLCAiKGludCAtNSkiKQorICAgIHRlc3RfY3BwX2V4cHIoIisxIiwgIihpbnQgMSkiKQorICAgIHRlc3RfY3BwX2V4cHIoIjBVIiwgIihpbnQgMCkiKQorICAgIHRlc3RfY3BwX2V4cHIoIjAxNSIsICIob2N0IDAxNSkiKQorICAgIHRlc3RfY3BwX2V4cHIoIjAxNWwiLCAiKG9jdCAwMTUpIikKKyAgICB0ZXN0X2NwcF9leHByKCIweDNlIiwgIihoZXggMHgzZSkiKQogICAgIHRlc3RfY3BwX2V4cHIoIigwKSIsICIoaW50IDApIikKICAgICB0ZXN0X2NwcF9leHByKCIxICYmIDEiLCAiKCYmIChpbnQgMSkgKGludCAxKSkiKQogICAgIHRlc3RfY3BwX2V4cHIoIjEgJiYgMCIsICIoJiYgKGludCAxKSAoaW50IDApKSIpCkBAIC0xMDM5LDEzICs4NzksMTcgQEAKICAgICB0ZXN0X2NwcF9leHByKCJkZWZpbmVkKEVYQU1QTEUpIiwgIihkZWZpbmVkIEVYQU1QTEUpIikKICAgICB0ZXN0X2NwcF9leHByKCJkZWZpbmVkICggRVhBTVBMRSApICIsICIoZGVmaW5lZCBFWEFNUExFKSIpCiAgICAgdGVzdF9jcHBfZXhwcigiIWRlZmluZWQoRVhBTVBMRSkiLCAiKCEgKGRlZmluZWQgRVhBTVBMRSkpIikKLSAgICB0ZXN0X2NwcF9leHByKCJkZWZpbmVkKEFCQykgfHwgZGVmaW5lZChCSU5HTykiLCAiKHx8IChkZWZpbmVkIEFCQykgKGRlZmluZWQgQklOR08pKSIpCi0gICAgdGVzdF9jcHBfZXhwcigiRk9PKEJBUikiLCAiKGNhbGwgRk9PIFtCQVJdKSIpCi0gICAgdGVzdF9jcHBfZXhwcigiQSA9PSAxIHx8IGRlZmluZWQoQikiLCAiKHx8ICg9PSAoaWRlbnQgQSkgKGludCAxKSkgKGRlZmluZWQgQikpIikKKyAgICB0ZXN0X2NwcF9leHByKCJkZWZpbmVkKEFCQykgfHwgZGVmaW5lZChCSU5HTykiLAorICAgICAgICAgICAgICAgICAgIih8fCAoZGVmaW5lZCBBQkMpIChkZWZpbmVkIEJJTkdPKSkiKQorICAgIHRlc3RfY3BwX2V4cHIoIkZPTyhCQVIsNSkiLCAiKGNhbGwgRk9PIFtCQVIsNV0pIikKKyAgICB0ZXN0X2NwcF9leHByKCJBID09IDEgfHwgZGVmaW5lZChCKSIsCisgICAgICAgICAgICAgICAgICAiKHx8ICg9PSAoaWRlbnQgQSkgKGludCAxKSkgKGRlZmluZWQgQikpIikKIAogICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIjAiLCAiKGludCAwKSIpCiAgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiMSIsICIoaW50IDEpIikKICAgICB0ZXN0X2NwcF9leHByX29wdGltKCIxICYmIDEiLCAiKGludCAxKSIpCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiMSAmJiArMSIsICIoaW50IDEpIikKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKCIweDEgJiYgMDEiLCAiKG9jdCAwMSkiKQogICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIjEgJiYgMCIsICIoaW50IDApIikKICAgICB0ZXN0X2NwcF9leHByX29wdGltKCIwICYmIDEiLCAiKGludCAwKSIpCiAgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiMCAmJiAwIiwgIihpbnQgMCkiKQpAQCAtMTA1NCwzMiArODk4LDQ4IEBACiAgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiMCB8fCAxIiwgIihpbnQgMSkiKQogICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIjAgfHwgMCIsICIoaW50IDApIikKICAgICB0ZXN0X2NwcF9leHByX29wdGltKCJBIiwgIihpZGVudCBBKSIpCi0gICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiQSIsICIoaW50IDEpIiwgeyAiQSI6IDEgfSkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJBIHx8IEIiLCAiKGludCAxKSIsIHsgIkEiOiAxIH0pCi0gICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiQSB8fCBCIiwgIihpbnQgMSkiLCB7ICJCIjogMSB9KQotICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIkEgJiYgQiIsICIoaWRlbnQgQikiLCB7ICJBIjogMSB9KQotICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIkEgJiYgQiIsICIoaWRlbnQgQSkiLCB7ICJCIjogMSB9KQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIkEiLCAiKGludCAxKSIsIHsiQSI6IDF9KQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIkEgfHwgQiIsICIoaW50IDEpIiwgeyJBIjogMX0pCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiQSB8fCBCIiwgIihpbnQgMSkiLCB7IkIiOiAxfSkKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKCJBICYmIEIiLCAiKGlkZW50IEIpIiwgeyJBIjogMX0pCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiQSAmJiBCIiwgIihpZGVudCBBKSIsIHsiQiI6IDF9KQogICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIkEgJiYgQiIsICIoJiYgKGlkZW50IEEpIChpZGVudCBCKSkiKQogICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIkVYQU1QTEUiLCAiKGlkZW50IEVYQU1QTEUpIikKICAgICB0ZXN0X2NwcF9leHByX29wdGltKCJFWEFNUExFIC0gMyIsICIoLSAoaWRlbnQgRVhBTVBMRSkgKGludCAzKSkiKQogICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoRVhBTVBMRSkiLCAiKGRlZmluZWQgRVhBTVBMRSkiKQotICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoRVhBTVBMRSkiLCAiKGRlZmluZWQgWE9XT0UpIiwgeyAiRVhBTVBMRSI6ICJYT1dPRSIgfSkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEVYQU1QTEUpIiwgIihpbnQgMCkiLCB7ICJFWEFNUExFIjoga0NwcFVuZGVmaW5lZE1hY3JvfSkKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEVYQU1QTEUpIiwgIihkZWZpbmVkIFhPV09FKSIsCisgICAgICAgICAgICAgICAgICAgICAgICB7IkVYQU1QTEUiOiAiWE9XT0UifSkKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEVYQU1QTEUpIiwgIihpbnQgMCkiLAorICAgICAgICAgICAgICAgICAgICAgICAgeyJFWEFNUExFIjoga0NwcFVuZGVmaW5lZE1hY3JvfSkKICAgICB0ZXN0X2NwcF9leHByX29wdGltKCIhZGVmaW5lZChFWEFNUExFKSIsICIoISAoZGVmaW5lZCBFWEFNUExFKSkiKQotICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIiFkZWZpbmVkKEVYQU1QTEUpIiwgIighIChkZWZpbmVkIFhPV09FKSkiLCB7ICJFWEFNUExFIiA6ICJYT1dPRSIgfSkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCIhZGVmaW5lZChFWEFNUExFKSIsICIoaW50IDEpIiwgeyAiRVhBTVBMRSIgOiBrQ3BwVW5kZWZpbmVkTWFjcm8gfSkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEEpIHx8IGRlZmluZWQoQikiLCAiKHx8IChkZWZpbmVkIEEpIChkZWZpbmVkIEIpKSIpCi0gICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChBKSB8fCBkZWZpbmVkKEIpIiwgIihpbnQgMSkiLCB7ICJBIiA6ICIxIiB9KQotICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgfHwgZGVmaW5lZChCKSIsICIoaW50IDEpIiwgeyAiQiIgOiAiMSIgfSkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEEpIHx8IGRlZmluZWQoQikiLCAiKGRlZmluZWQgQSkiLCB7ICJCIiA6IGtDcHBVbmRlZmluZWRNYWNybyB9KQotICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgfHwgZGVmaW5lZChCKSIsICIoaW50IDApIiwgeyAiQSIgOiBrQ3BwVW5kZWZpbmVkTWFjcm8sICJCIiA6IGtDcHBVbmRlZmluZWRNYWNybyB9KQotICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgJiYgZGVmaW5lZChCKSIsICIoJiYgKGRlZmluZWQgQSkgKGRlZmluZWQgQikpIikKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEEpICYmIGRlZmluZWQoQikiLCAiKGRlZmluZWQgQikiLCB7ICJBIiA6ICIxIiB9KQotICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgJiYgZGVmaW5lZChCKSIsICIoZGVmaW5lZCBBKSIsIHsgIkIiIDogIjEiIH0pCi0gICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChBKSAmJiBkZWZpbmVkKEIpIiwgIihpbnQgMCkiLCB7ICJCIiA6IGtDcHBVbmRlZmluZWRNYWNybyB9KQotICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgJiYgZGVmaW5lZChCKSIsICIoaW50IDApIiwgeyAiQSIgOiBrQ3BwVW5kZWZpbmVkTWFjcm8gfSkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJBID09IDEgfHwgZGVmaW5lZChCKSIsICIofHwgKD09IChpZGVudCBBKSAoaW50IDEpKSAoZGVmaW5lZCBCKSkiICkKLSAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKF9fS0VSTkVMX18pIHx8ICFkZWZpbmVkKF9fR0xJQkNfXykgfHwgKF9fR0xJQkNfXyA8IDIpIiwgIih8fCAoISAoZGVmaW5lZCBfX0dMSUJDX18pKSAoPCAoaWRlbnQgX19HTElCQ19fKSAoaW50IDIpKSkiLCB7ICJfX0tFUk5FTF9fIjoga0NwcFVuZGVmaW5lZE1hY3JvIH0pCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiIWRlZmluZWQoRVhBTVBMRSkiLCAiKCEgKGRlZmluZWQgWE9XT0UpKSIsCisgICAgICAgICAgICAgICAgICAgICAgICB7IkVYQU1QTEUiOiAiWE9XT0UifSkKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKCIhZGVmaW5lZChFWEFNUExFKSIsICIoaW50IDEpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgIHsiRVhBTVBMRSI6IGtDcHBVbmRlZmluZWRNYWNyb30pCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChBKSB8fCBkZWZpbmVkKEIpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICIofHwgKGRlZmluZWQgQSkgKGRlZmluZWQgQikpIikKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEEpIHx8IGRlZmluZWQoQikiLCAiKGludCAxKSIsIHsiQSI6ICIxIn0pCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChBKSB8fCBkZWZpbmVkKEIpIiwgIihpbnQgMSkiLCB7IkIiOiAiMSJ9KQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgfHwgZGVmaW5lZChCKSIsICIoZGVmaW5lZCBBKSIsCisgICAgICAgICAgICAgICAgICAgICAgICB7IkIiOiBrQ3BwVW5kZWZpbmVkTWFjcm99KQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgfHwgZGVmaW5lZChCKSIsICIoaW50IDApIiwKKyAgICAgICAgICAgICAgICAgICAgICAgIHsiQSI6IGtDcHBVbmRlZmluZWRNYWNybywgIkIiOiBrQ3BwVW5kZWZpbmVkTWFjcm99KQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oImRlZmluZWQoQSkgJiYgZGVmaW5lZChCKSIsCisgICAgICAgICAgICAgICAgICAgICAgICAiKCYmIChkZWZpbmVkIEEpIChkZWZpbmVkIEIpKSIpCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChBKSAmJiBkZWZpbmVkKEIpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICIoZGVmaW5lZCBCKSIsIHsiQSI6ICIxIn0pCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChBKSAmJiBkZWZpbmVkKEIpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICIoZGVmaW5lZCBBKSIsIHsiQiI6ICIxIn0pCisgICAgdGVzdF9jcHBfZXhwcl9vcHRpbSgiZGVmaW5lZChBKSAmJiBkZWZpbmVkKEIpIiwgIihpbnQgMCkiLAorICAgICAgICAgICAgICAgICAgICAgICAgeyJCIjoga0NwcFVuZGVmaW5lZE1hY3JvfSkKKyAgICB0ZXN0X2NwcF9leHByX29wdGltKCJkZWZpbmVkKEEpICYmIGRlZmluZWQoQikiLAorICAgICAgICAgICAgICAgICAgICAgICAgIihpbnQgMCkiLCB7IkEiOiBrQ3BwVW5kZWZpbmVkTWFjcm99KQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oIkEgPT0gMSB8fCBkZWZpbmVkKEIpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICIofHwgKD09IChpZGVudCBBKSAoaW50IDEpKSAoZGVmaW5lZCBCKSkiKQorICAgIHRlc3RfY3BwX2V4cHJfb3B0aW0oCisgICAgICAgICJkZWZpbmVkKF9fS0VSTkVMX18pIHx8ICFkZWZpbmVkKF9fR0xJQkNfXykgfHwgKF9fR0xJQkNfXyA8IDIpIiwKKyAgICAgICAgIih8fCAoISAoZGVmaW5lZCBfX0dMSUJDX18pKSAoPCAoaWRlbnQgX19HTElCQ19fKSAoaW50IDIpKSkiLAorICAgICAgICB7Il9fS0VSTkVMX18iOiBrQ3BwVW5kZWZpbmVkTWFjcm99KQogCiAgICAgdGVzdF9jcHBfZXhwcl9zb3VyY2UoIjAiLCAiMCIpCiAgICAgdGVzdF9jcHBfZXhwcl9zb3VyY2UoIjEiLCAiMSIpCkBAIC0xMDk4LDE3OSArOTU4LDE3NiBAQAogICAgIHRlc3RfY3BwX2V4cHJfc291cmNlKCJBID09IDEgfHwgZGVmaW5lZChCKSIsICJBID09IDEgfHwgZGVmaW5lZChCKSIpCiAKIAotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwotIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIwotIyMjIyMgICAgICAgICAgQyBQIFAgICBCIEwgTyBDIEsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIwotIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIwotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIworIyMjIyMgICAgICAgICAgQyBQIFAgICBCIEwgTyBDIEsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMjIyMKKyMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIAotY2xhc3MgQmxvY2s6Ci0gICAgIiIiYSBjbGFzcyB1c2VkIHRvIG1vZGVsIGEgYmxvY2sgb2YgaW5wdXQgc291cmNlIHRleHQuIHRoZXJlIGFyZSB0d28gYmxvY2sgdHlwZXM6Ci0gICAgICAgIC0gZGlyZWN0aXZlIGJsb2NrczogY29udGFpbiB0aGUgdG9rZW5zIG9mIGEgc2luZ2xlIHByZS1wcm9jZXNzb3IgZGlyZWN0aXZlIChlLmcuICNpZikKLSAgICAgICAgLSB0ZXh0IGJsb2NrcywgY29udGFpbiB0aGUgdG9rZW5zIG9mIG5vbi1kaXJlY3RpdmUgYmxvY2tzCiAKLSAgICAgICB0aGUgY3BwIHBhcnNlciBjbGFzcyBiZWxvdyB3aWxsIHRyYW5zZm9ybSBhbiBpbnB1dCBzb3VyY2UgZmlsZSBpbnRvIGEgbGlzdCBvZiBCbG9jawotICAgICAgIG9iamVjdHMgKGdyb3VwZWQgaW4gYSBCbG9ja0xpc3Qgb2JqZWN0IGZvciBjb252ZW5pZW5jZSkiIiIKK2NsYXNzIEJsb2NrKG9iamVjdCk6CisgICAgIiIiQSBjbGFzcyB1c2VkIHRvIG1vZGVsIGEgYmxvY2sgb2YgaW5wdXQgc291cmNlIHRleHQuCiAKLSAgICBkZWYgX19pbml0X18oc2VsZix0b2tlbnMsZGlyZWN0aXZlPU5vbmUsbGluZW5vPTApOgotICAgICAgICAiIiJpbml0aWFsaXplIGEgbmV3IGJsb2NrLCBpZiAnZGlyZWN0aXZlJyBpcyBOb25lLCB0aGlzIGlzIGEgdGV4dCBibG9jawotICAgICAgICAgICBOT1RFOiB0aGlzIGF1dG9tYXRpY2FsbHkgY29udmVydHMgJyNpZmRlZiBNQUNSTycgaW50byAnI2lmIGRlZmluZWQoTUFDUk8pJwotICAgICAgICAgICAgICAgICBhbmQgJyNpZm5kZWYgTUFDUk8nIGludG8gJyNpZiAhZGVmaW5lZChNQUNSTyknIiIiCisgICAgVGhlcmUgYXJlIHR3byBibG9jayB0eXBlczoKKyAgICAgIC0gZGlyZWN0aXZlIGJsb2NrczogY29udGFpbiB0aGUgdG9rZW5zIG9mIGEgc2luZ2xlIHByZS1wcm9jZXNzb3IKKyAgICAgICAgZGlyZWN0aXZlIChlLmcuICNpZikKKyAgICAgIC0gdGV4dCBibG9ja3MsIGNvbnRhaW4gdGhlIHRva2VucyBvZiBub24tZGlyZWN0aXZlIGJsb2NrcworCisgICAgVGhlIGNwcCBwYXJzZXIgY2xhc3MgYmVsb3cgd2lsbCB0cmFuc2Zvcm0gYW4gaW5wdXQgc291cmNlIGZpbGUgaW50byBhIGxpc3QKKyAgICBvZiBCbG9jayBvYmplY3RzIChncm91cGVkIGluIGEgQmxvY2tMaXN0IG9iamVjdCBmb3IgY29udmVuaWVuY2UpCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgdG9rZW5zLCBkaXJlY3RpdmU9Tm9uZSwgbGluZW5vPTAsIGlkZW50aWZpZXI9Tm9uZSk6CisgICAgICAgICIiIkluaXRpYWxpemUgYSBuZXcgYmxvY2ssIGlmICdkaXJlY3RpdmUnIGlzIE5vbmUsIGl0IGlzIGEgdGV4dCBibG9jay4KKworICAgICAgICBOT1RFOiBUaGlzIGF1dG9tYXRpY2FsbHkgY29udmVydHMgJyNpZmRlZiBNQUNSTycgaW50bworICAgICAgICAnI2lmIGRlZmluZWQoTUFDUk8pJyBhbmQgJyNpZm5kZWYgTUFDUk8nIGludG8gJyNpZiAhZGVmaW5lZChNQUNSTyknLgorICAgICAgICAiIiIKKwogICAgICAgICBpZiBkaXJlY3RpdmUgPT0gImlmZGVmIjoKICAgICAgICAgICAgIHRvayA9IFRva2VuKCkKLSAgICAgICAgICAgIHRvay5zZXQodG9rREVGSU5FRCkKLSAgICAgICAgICAgIHRva2VucyA9IFsgdG9rIF0gKyB0b2tlbnMKKyAgICAgICAgICAgIHRvay5pZCA9IHRva0RFRklORUQKKyAgICAgICAgICAgIHRva2VucyA9IFt0b2tdICsgdG9rZW5zCiAgICAgICAgICAgICBkaXJlY3RpdmUgPSAiaWYiCiAKICAgICAgICAgZWxpZiBkaXJlY3RpdmUgPT0gImlmbmRlZiI6CiAgICAgICAgICAgICB0b2sxID0gVG9rZW4oKQogICAgICAgICAgICAgdG9rMiA9IFRva2VuKCkKLSAgICAgICAgICAgIHRvazEuc2V0KHRva05PVCkKLSAgICAgICAgICAgIHRvazIuc2V0KHRva0RFRklORUQpCi0gICAgICAgICAgICB0b2tlbnMgPSBbIHRvazEsIHRvazIgXSArIHRva2VucworICAgICAgICAgICAgdG9rMS5pZCA9IHRva05PVAorICAgICAgICAgICAgdG9rMi5pZCA9IHRva0RFRklORUQKKyAgICAgICAgICAgIHRva2VucyA9IFt0b2sxLCB0b2syXSArIHRva2VucwogICAgICAgICAgICAgZGlyZWN0aXZlID0gImlmIgogCi0gICAgICAgIHNlbGYudG9rZW5zICAgID0gdG9rZW5zCisgICAgICAgIHNlbGYudG9rZW5zID0gdG9rZW5zCiAgICAgICAgIHNlbGYuZGlyZWN0aXZlID0gZGlyZWN0aXZlCisgICAgICAgIHNlbGYuZGVmaW5lX2lkID0gaWRlbnRpZmllcgogICAgICAgICBpZiBsaW5lbm8gPiAwOgogICAgICAgICAgICAgc2VsZi5saW5lbm8gPSBsaW5lbm8KICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHNlbGYubGluZW5vID0gc2VsZi50b2tlbnNbMF0ubGluZW5vCisgICAgICAgICAgICBzZWxmLmxpbmVubyA9IHNlbGYudG9rZW5zWzBdLmxvY2F0aW9uLmxpbmUKIAogICAgICAgICBpZiBzZWxmLmlzSWYoKToKLSAgICAgICAgICAgIHNlbGYuZXhwciA9IENwcEV4cHIoIHNlbGYudG9rZW5zICkKKyAgICAgICAgICAgIHNlbGYuZXhwciA9IENwcEV4cHIoc2VsZi50b2tlbnMpCiAKICAgICBkZWYgaXNEaXJlY3RpdmUoc2VsZik6Ci0gICAgICAgICIiInJldHVybnMgVHJ1ZSBpZmYgdGhpcyBpcyBhIGRpcmVjdGl2ZSBibG9jayIiIgotICAgICAgICByZXR1cm4gc2VsZi5kaXJlY3RpdmUgIT0gTm9uZQorICAgICAgICAiIiJSZXR1cm4gVHJ1ZSBpZmYgdGhpcyBpcyBhIGRpcmVjdGl2ZSBibG9jay4iIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuZGlyZWN0aXZlIGlzIG5vdCBOb25lCiAKICAgICBkZWYgaXNDb25kaXRpb25hbChzZWxmKToKLSAgICAgICAgIiIicmV0dXJucyBUcnVlIGlmZiB0aGlzIGlzIGEgY29uZGl0aW9uYWwgZGlyZWN0aXZlIGJsb2NrIiIiCi0gICAgICAgIHJldHVybiBzZWxmLmRpcmVjdGl2ZSBpbiBbImlmIiwiaWZkZWYiLCJpZm5kZWYiLCJlbHNlIiwiZWxpZiIsImVuZGlmIl0KKyAgICAgICAgIiIiUmV0dXJuIFRydWUgaWZmIHRoaXMgaXMgYSBjb25kaXRpb25hbCBkaXJlY3RpdmUgYmxvY2suIiIiCisgICAgICAgIHJldHVybiBzZWxmLmRpcmVjdGl2ZSBpbiBbImlmIiwgImlmZGVmIiwgImlmbmRlZiIsICJlbHNlIiwgImVsaWYiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJlbmRpZiJdCiAKICAgICBkZWYgaXNEZWZpbmUoc2VsZik6Ci0gICAgICAgICIiInJldHVybnMgdGhlIG1hY3JvIG5hbWUgaW4gYSAjZGVmaW5lIGRpcmVjdGl2ZSwgb3IgTm9uZSBvdGhlcndpc2UiIiIKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBtYWNybyBuYW1lIGluIGEgI2RlZmluZSBkaXJlY3RpdmUsIG9yIE5vbmUgb3RoZXJ3aXNlLiIiIgogICAgICAgICBpZiBzZWxmLmRpcmVjdGl2ZSAhPSAiZGVmaW5lIjoKICAgICAgICAgICAgIHJldHVybiBOb25lCi0KLSAgICAgICAgcmV0dXJuIHNlbGYudG9rZW5zWzBdLnZhbHVlCisgICAgICAgIHJldHVybiBzZWxmLmRlZmluZV9pZAogCiAgICAgZGVmIGlzSWYoc2VsZik6Ci0gICAgICAgICIiInJldHVybnMgVHJ1ZSBpZmYgdGhpcyBpcyBhbiAjaWYtbGlrZSBkaXJlY3RpdmUgYmxvY2siIiIKLSAgICAgICAgcmV0dXJuIHNlbGYuZGlyZWN0aXZlIGluIFsiaWYiLCJpZmRlZiIsImlmbmRlZiIsImVsaWYiXQorICAgICAgICAiIiJSZXR1cm4gVHJ1ZSBpZmYgdGhpcyBpcyBhbiAjaWYtbGlrZSBkaXJlY3RpdmUgYmxvY2suIiIiCisgICAgICAgIHJldHVybiBzZWxmLmRpcmVjdGl2ZSBpbiBbImlmIiwgImlmZGVmIiwgImlmbmRlZiIsICJlbGlmIl0KKworICAgIGRlZiBpc0VuZGlmKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gVHJ1ZSBpZmYgdGhpcyBpcyBhbiAjZW5kaWYgZGlyZWN0aXZlIGJsb2NrLiIiIgorICAgICAgICByZXR1cm4gc2VsZi5kaXJlY3RpdmUgPT0gImVuZGlmIgogCiAgICAgZGVmIGlzSW5jbHVkZShzZWxmKToKLSAgICAgICAgIiIiY2hlY2tzIHdoZXRoZXIgdGhpcyBpcyBhICNpbmNsdWRlIGRpcmVjdGl2ZS4gaWYgdHJ1ZSwgdGhlbiByZXR1cm5zIHRoZQotICAgICAgICAgICBjb3JyZXNwb25kaW5nIGZpbGUgbmFtZSAod2l0aCBicmFja2V0cyBvciBkb3VibGUtcW91dGVzKS4gTm9uZSBvdGhlcndpc2UiIiIKKyAgICAgICAgIiIiQ2hlY2sgd2hldGhlciB0aGlzIGlzIGEgI2luY2x1ZGUgZGlyZWN0aXZlLgorCisgICAgICAgIElmIHRydWUsIHJldHVybnMgdGhlIGNvcnJlc3BvbmRpbmcgZmlsZSBuYW1lICh3aXRoIGJyYWNrZXRzIG9yCisgICAgICAgIGRvdWJsZS1xb3V0ZXMpLiBOb25lIG90aGVyd2lzZS4KKyAgICAgICAgIiIiCisKICAgICAgICAgaWYgc2VsZi5kaXJlY3RpdmUgIT0gImluY2x1ZGUiOgogICAgICAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgcmV0dXJuICcnLmpvaW4oW3N0cih4KSBmb3IgeCBpbiBzZWxmLnRva2Vuc10pCiAKLSAgICAgICAgaWYgc2VsZi50b2tlbnNbMF0uaWQgPT0gdG9rU1RSSU5HOgotICAgICAgICAgICAgIyBhIGRvdWJsZS1xdW90ZSBpbmNsdWRlLCB0aGF0J3MgZWFzeQotICAgICAgICAgICAgcmV0dXJuIHNlbGYudG9rZW5zWzBdLnZhbHVlCisgICAgQHN0YXRpY21ldGhvZAorICAgIGRlZiBmb3JtYXRfYmxvY2tzKHRva2VucywgaW5kZW50PTApOgorICAgICAgICAiIiJSZXR1cm4gdGhlIGZvcm1hdHRlZCBsaW5lcyBvZiBzdHJpbmdzIHdpdGggcHJvcGVyIGluZGVudGF0aW9uLiIiIgorICAgICAgICBuZXdsaW5lID0gVHJ1ZQorICAgICAgICByZXN1bHQgPSBbXQorICAgICAgICBidWYgPSAnJworICAgICAgICBpID0gMAorICAgICAgICB3aGlsZSBpIDwgbGVuKHRva2Vucyk6CisgICAgICAgICAgICB0ID0gdG9rZW5zW2ldCisgICAgICAgICAgICBpZiB0LmlkID09ICd7JzoKKyAgICAgICAgICAgICAgICBidWYgKz0gJyB7JworICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoc3RyaXBfc3BhY2UoYnVmKSkKKyAgICAgICAgICAgICAgICBpbmRlbnQgKz0gMgorICAgICAgICAgICAgICAgIGJ1ZiA9ICcnCisgICAgICAgICAgICAgICAgbmV3bGluZSA9IFRydWUKKyAgICAgICAgICAgIGVsaWYgdC5pZCA9PSAnfSc6CisgICAgICAgICAgICAgICAgaW5kZW50IC09IDIKKyAgICAgICAgICAgICAgICBpZiBub3QgbmV3bGluZToKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZChzdHJpcF9zcGFjZShidWYpKQorICAgICAgICAgICAgICAgICMgTG9vayBhaGVhZCB0byBkZXRlcm1pbmUgaWYgaXQncyB0aGUgZW5kIG9mIGxpbmUuCisgICAgICAgICAgICAgICAgaWYgKGkgKyAxIDwgbGVuKHRva2VucykgYW5kCisgICAgICAgICAgICAgICAgICAgICh0b2tlbnNbaSsxXS5pZCA9PSAnOycgb3IKKyAgICAgICAgICAgICAgICAgICAgIHRva2Vuc1tpKzFdLmlkIGluIFsnZWxzZScsICdfX2F0dHJpYnV0ZV9fJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnX19hdHRyaWJ1dGUnLCAnX19wYWNrZWQnXSBvcgorICAgICAgICAgICAgICAgICAgICAgdG9rZW5zW2krMV0ua2luZCA9PSBUb2tlbktpbmQuSURFTlRJRklFUikpOgorICAgICAgICAgICAgICAgICAgICBidWYgPSAnICcgKiBpbmRlbnQgKyAnfScKKyAgICAgICAgICAgICAgICAgICAgbmV3bGluZSA9IEZhbHNlCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgnICcgKiBpbmRlbnQgKyAnfScpCisgICAgICAgICAgICAgICAgICAgIGJ1ZiA9ICcnCisgICAgICAgICAgICAgICAgICAgIG5ld2xpbmUgPSBUcnVlCisgICAgICAgICAgICBlbGlmIHQuaWQgPT0gJzsnOgorICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoc3RyaXBfc3BhY2UoYnVmKSArICc7JykKKyAgICAgICAgICAgICAgICBidWYgPSAnJworICAgICAgICAgICAgICAgIG5ld2xpbmUgPSBUcnVlCisgICAgICAgICAgICAjIFdlIHByZWZlciBhIG5ldyBsaW5lIGZvciBlYWNoIGNvbnN0YW50IGluIGVudW0uCisgICAgICAgICAgICBlbGlmIHQuaWQgPT0gJywnIGFuZCB0LmN1cnNvci5raW5kID09IEN1cnNvcktpbmQuRU5VTV9ERUNMOgorICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQoc3RyaXBfc3BhY2UoYnVmKSArICcsJykKKyAgICAgICAgICAgICAgICBidWYgPSAnJworICAgICAgICAgICAgICAgIG5ld2xpbmUgPSBUcnVlCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGlmIG5ld2xpbmU6CisgICAgICAgICAgICAgICAgICAgIGJ1ZiArPSAnICcgKiBpbmRlbnQgKyBzdHIodCkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBidWYgKz0gJyAnICsgc3RyKHQpCisgICAgICAgICAgICAgICAgbmV3bGluZSA9IEZhbHNlCisgICAgICAgICAgICBpICs9IDEKIAotICAgICAgICAjIHdlIG9ubHkgd2FudCB0aGUgYnJhY2tldCBwYXJ0LCBub3QgYW55IGNvbW1lbnRzIG9yIGp1bmsgYWZ0ZXIgaXQKLSAgICAgICAgaWYgc2VsZi50b2tlbnNbMF0uaWQgPT0gIjwiOgotICAgICAgICAgICAgaSAgID0gMAotICAgICAgICAgICAgdG9rID0gc2VsZi50b2tlbnMKLSAgICAgICAgICAgIG4gICA9IGxlbih0b2spCi0gICAgICAgICAgICB3aGlsZSBpIDwgbiBhbmQgdG9rW2ldLmlkICE9ICI+IjoKLSAgICAgICAgICAgICAgICBpICs9IDEKKyAgICAgICAgaWYgYnVmOgorICAgICAgICAgICAgcmVzdWx0LmFwcGVuZChzdHJpcF9zcGFjZShidWYpKQogCi0gICAgICAgICAgICBpZiBpID49IG46Ci0gICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgcmV0dXJuIHJlc3VsdCwgaW5kZW50CiAKLSAgICAgICAgICAgIHJldHVybiBzdHJpbmcuam9pbihbIHN0cih4KSBmb3IgeCBpbiB0b2tbOmkrMV0gXSwiIikKLQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgcmV0dXJuIE5vbmUKLQotICAgIGRlZiByZW1vdmVXaGl0ZVNwYWNlKHNlbGYpOgotICAgICAgICAjIFJlbW92ZSB0cmFpbGluZyB3aGl0ZXNwYWNlIGFuZCBlbXB0eSBsaW5lcwotICAgICAgICAjIEFsbCB3aGl0ZXNwYWNlIGlzIGFsc28gY29udHJhY3RlZCB0byBhIHNpbmdsZSBzcGFjZQotICAgICAgICBpZiBzZWxmLmRpcmVjdGl2ZSAhPSBOb25lOgotICAgICAgICAgICAgcmV0dXJuCi0KLSAgICAgICAgdG9rZW5zID0gW10KLSAgICAgICAgbGluZSAgID0gMCAgICAgIyBpbmRleCBvZiBsaW5lIHN0YXJ0Ci0gICAgICAgIHNwYWNlICA9IC0xICAgICMgaW5kZXggb2YgZmlyc3Qgc3BhY2UsIG9yIC0xCi0gICAgICAgIGlpID0gMAotICAgICAgICBubiA9IGxlbihzZWxmLnRva2VucykKLSAgICAgICAgd2hpbGUgaWkgPCBubjoKLSAgICAgICAgICAgIHRvayA9IHNlbGYudG9rZW5zW2lpXQotCi0gICAgICAgICAgICAjIElmIHdlIGZpbmQgYSBzcGFjZSwgcmVjb3JkIGl0cyBwb3NpdGlvbiBpZiB0aGlzIGlzIHRoZSBmaXJzdAotICAgICAgICAgICAgIyBvbmUgdGhlIGxpbmUgc3RhcnQgb3IgdGhlIHByZXZpb3VzIGNoYXJhY3Rlci4gRG9uJ3QgYXBwZW5kCi0gICAgICAgICAgICAjIGFueXRoaW5nIHRvIHRva2VucyBhcnJheSB5ZXQgdGhvdWdoLgotICAgICAgICAgICAgaWYgdG9rLmlkID09IHRva1NQQUNFOgotICAgICAgICAgICAgICAgIGlmIHNwYWNlIDwgMDoKLSAgICAgICAgICAgICAgICAgICAgc3BhY2UgPSBpaQotICAgICAgICAgICAgICAgIGlpICs9IDEKLSAgICAgICAgICAgICAgICBjb250aW51ZQotCi0gICAgICAgICAgICAjIElmIHRoaXMgaXMgYSBsaW5lIHNwYWNlLCBpZ25vcmUgdGhlIHNwYWNlcyB3ZSBmb3VuZCBwcmV2aW91c2x5Ci0gICAgICAgICAgICAjIG9uIHRoZSBsaW5lLCBhbmQgcmVtb3ZlIGVtcHR5IGxpbmVzLgotICAgICAgICAgICAgaWYgdG9rLmlkID09IHRva0xOOgotICAgICAgICAgICAgICAgIG9sZF9saW5lICA9IGxpbmUKLSAgICAgICAgICAgICAgICBvbGRfc3BhY2UgPSBzcGFjZQotICAgICAgICAgICAgICAgIGlpICAgKz0gMQotICAgICAgICAgICAgICAgIGxpbmUgID0gaWkKLSAgICAgICAgICAgICAgICBzcGFjZSA9IC0xCi0gICAgICAgICAgICAgICAgaWYgb2xkX3NwYWNlID09IG9sZF9saW5lOiAgIyBsaW5lIG9ubHkgY29udGFpbnMgc3BhY2VzCi0gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgICAgICAgICAgaWYgaWktMSA9PSBvbGRfbGluZTogICMgbGluZSBpcyBlbXB0eQotICAgICAgICAgICAgICAgICAgICBjb250aW51ZQotICAgICAgICAgICAgICAgIHRva2Vucy5hcHBlbmQodG9rKQotICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0KLSAgICAgICAgICAgICMgT3RoZXIgdG9rZW4sIGFwcGVuZCBhbnkgc3BhY2UgcmFuZ2UgaWYgYW55LCBjb252ZXJ0aW5nIGVhY2gKLSAgICAgICAgICAgICMgb25lIHRvIGEgc2luZ2xlIHNwYWNlIGNoYXJhY3RlciwgdGhlbiBhcHBlbmQgdGhlIHRva2VuLgotICAgICAgICAgICAgaWYgc3BhY2UgPj0gMDoKLSAgICAgICAgICAgICAgICBqaiA9IHNwYWNlCi0gICAgICAgICAgICAgICAgc3BhY2UgPSAtMQotICAgICAgICAgICAgICAgIHdoaWxlIGpqIDwgaWk6Ci0gICAgICAgICAgICAgICAgICAgIHRvazIgPSBzZWxmLnRva2Vuc1tqal0KLSAgICAgICAgICAgICAgICAgICAgdG9rMi52YWx1ZSA9ICIgIgotICAgICAgICAgICAgICAgICAgICB0b2tlbnMuYXBwZW5kKHRvazIpCi0gICAgICAgICAgICAgICAgICAgIGpqICs9IDEKLQotICAgICAgICAgICAgdG9rZW5zLmFwcGVuZCh0b2spCi0gICAgICAgICAgICBpaSArPSAxCi0KLSAgICAgICAgc2VsZi50b2tlbnMgPSB0b2tlbnMKLQotICAgIGRlZiB3cml0ZVdpdGhXYXJuaW5nKHNlbGYsb3V0LHdhcm5pbmcsbGVmdF9jb3VudCxyZXBlYXRfY291bnQpOgorICAgIGRlZiB3cml0ZVdpdGhXYXJuaW5nKHNlbGYsIG91dCwgd2FybmluZywgbGVmdF9jb3VudCwgcmVwZWF0X2NvdW50LCBpbmRlbnQpOgorICAgICAgICAiIiJEdW1wIHRoZSBjdXJyZW50IGJsb2NrIHdpdGggd2FybmluZ3MuIiIiCiAgICAgICAgICMgcmVtb3ZlV2hpdGVTcGFjZSgpIHdpbGwgc29tZXRpbWVzIGNyZWF0ZXMgbm9uLWRpcmVjdGl2ZSBibG9ja3MKICAgICAgICAgIyB3aXRob3V0IGFueSB0b2tlbnMuIFRoZXNlIGNvbWUgZnJvbSBibG9ja3MgdGhhdCBvbmx5IGNvbnRhaW5lZAogICAgICAgICAjIGVtcHR5IGxpbmVzIGFuZCBzcGFjZXMuIFRoZXkgc2hvdWxkIG5vdCBiZSBwcmludGVkIGluIHRoZSBmaW5hbAogICAgICAgICAjIG91dHB1dCwgYW5kIHRoZW4gc2hvdWxkIG5vdCBiZSBjb3VudGVkIGZvciB0aGlzIG9wZXJhdGlvbi4KICAgICAgICAgIwotICAgICAgICBpZiBub3Qgc2VsZi5kaXJlY3RpdmUgYW5kIHNlbGYudG9rZW5zID09IFtdOgotICAgICAgICAgICAgcmV0dXJuIGxlZnRfY291bnQKKyAgICAgICAgaWYgc2VsZi5kaXJlY3RpdmUgaXMgTm9uZSBhbmQgbm90IHNlbGYudG9rZW5zOgorICAgICAgICAgICAgcmV0dXJuIGxlZnRfY291bnQsIGluZGVudAogCiAgICAgICAgIGlmIHNlbGYuZGlyZWN0aXZlOgotICAgICAgICAgICAgb3V0LndyaXRlKHN0cihzZWxmKS5yc3RyaXAoKSArICJcbiIpCisgICAgICAgICAgICBvdXQud3JpdGUoc3RyKHNlbGYpICsgJ1xuJykKICAgICAgICAgICAgIGxlZnRfY291bnQgLT0gMQogICAgICAgICAgICAgaWYgbGVmdF9jb3VudCA9PSAwOgogICAgICAgICAgICAgICAgIG91dC53cml0ZSh3YXJuaW5nKQogICAgICAgICAgICAgICAgIGxlZnRfY291bnQgPSByZXBlYXRfY291bnQKIAogICAgICAgICBlbHNlOgotICAgICAgICAgICAgZm9yIHRvayBpbiBzZWxmLnRva2VuczoKLSAgICAgICAgICAgICAgICBvdXQud3JpdGUoc3RyKHRvaykpCi0gICAgICAgICAgICAgICAgaWYgdG9rLmlkID09IHRva0xOOgotICAgICAgICAgICAgICAgICAgICBsZWZ0X2NvdW50IC09IDEKLSAgICAgICAgICAgICAgICAgICAgaWYgbGVmdF9jb3VudCA9PSAwOgotICAgICAgICAgICAgICAgICAgICAgICAgb3V0LndyaXRlKHdhcm5pbmcpCi0gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0X2NvdW50ID0gcmVwZWF0X2NvdW50CisgICAgICAgICAgICBsaW5lcywgaW5kZW50ID0gc2VsZi5mb3JtYXRfYmxvY2tzKHNlbGYudG9rZW5zLCBpbmRlbnQpCisgICAgICAgICAgICBmb3IgbGluZSBpbiBsaW5lczoKKyAgICAgICAgICAgICAgICBvdXQud3JpdGUobGluZSArICdcbicpCisgICAgICAgICAgICAgICAgbGVmdF9jb3VudCAtPSAxCisgICAgICAgICAgICAgICAgaWYgbGVmdF9jb3VudCA9PSAwOgorICAgICAgICAgICAgICAgICAgICBvdXQud3JpdGUod2FybmluZykKKyAgICAgICAgICAgICAgICAgICAgbGVmdF9jb3VudCA9IHJlcGVhdF9jb3VudAogCi0gICAgICAgIHJldHVybiBsZWZ0X2NvdW50Ci0KKyAgICAgICAgcmV0dXJuIGxlZnRfY291bnQsIGluZGVudAogCiAgICAgZGVmIF9fcmVwcl9fKHNlbGYpOgotICAgICAgICAiIiJnZW5lcmF0ZSB0aGUgcmVwcmVzZW50YXRpb24gb2YgYSBnaXZlbiBibG9jayIiIgorICAgICAgICAiIiJHZW5lcmF0ZSB0aGUgcmVwcmVzZW50YXRpb24gb2YgYSBnaXZlbiBibG9jay4iIiIKICAgICAgICAgaWYgc2VsZi5kaXJlY3RpdmU6CiAgICAgICAgICAgICByZXN1bHQgPSAiIyVzICIgJSBzZWxmLmRpcmVjdGl2ZQogICAgICAgICAgICAgaWYgc2VsZi5pc0lmKCk6CkBAIC0xMjg2LDggKzExNDMsOSBAQAogICAgICAgICByZXR1cm4gcmVzdWx0CiAKICAgICBkZWYgX19zdHJfXyhzZWxmKToKLSAgICAgICAgIiIiZ2VuZXJhdGUgdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiBhIGdpdmVuIGJsb2NrIiIiCisgICAgICAgICIiIkdlbmVyYXRlIHRoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgYSBnaXZlbiBibG9jay4iIiIKICAgICAgICAgaWYgc2VsZi5kaXJlY3RpdmU6CisgICAgICAgICAgICAjICIjaWYiCiAgICAgICAgICAgICBpZiBzZWxmLmRpcmVjdGl2ZSA9PSAiaWYiOgogICAgICAgICAgICAgICAgICMgc21hbGwgb3B0aW1pemF0aW9uIHRvIHJlLWdlbmVyYXRlICNpZmRlZiBhbmQgI2lmbmRlZgogICAgICAgICAgICAgICAgIGUgPSBzZWxmLmV4cHIuZXhwcgpAQCAtMTI5OCwxMTQgKzExNTYsMTM4IEBACiAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9ICIjaWZuZGVmICVzIiAlIGVbMV1bMV0KICAgICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSAiI2lmICIgKyBzdHIoc2VsZi5leHByKQorCisgICAgICAgICAgICAjICIjZGVmaW5lIgorICAgICAgICAgICAgZWxpZiBzZWxmLmlzRGVmaW5lKCk6CisgICAgICAgICAgICAgICAgcmVzdWx0ID0gIiMlcyAlcyIgJSAoc2VsZi5kaXJlY3RpdmUsIHNlbGYuZGVmaW5lX2lkKQorICAgICAgICAgICAgICAgIGlmIHNlbGYudG9rZW5zOgorICAgICAgICAgICAgICAgICAgICByZXN1bHQgKz0gIiAiCisgICAgICAgICAgICAgICAgZXhwciA9IHN0cmlwX3NwYWNlKCcgJy5qb2luKFt0b2suaWQgZm9yIHRvayBpbiBzZWxmLnRva2Vuc10pKQorICAgICAgICAgICAgICAgICMgcmVtb3ZlIHRoZSBzcGFjZSBiZXR3ZWVuIG5hbWUgYW5kICcoJyBpbiBmdW5jdGlvbiBjYWxsCisgICAgICAgICAgICAgICAgcmVzdWx0ICs9IHJlLnN1YihyJyhcdyspIFwoJywgcidcMSgnLCBleHByKQorCisgICAgICAgICAgICAjICIjZXJyb3IiCisgICAgICAgICAgICAjIENvbmNhdGVuYXRpbmcgdG9rZW5zIHdpdGggYSBzcGFjZSBzZXBhcmF0b3IsIGJlY2F1c2UgdGhleSBtYXkKKyAgICAgICAgICAgICMgbm90IGJlIHF1b3RlZCBhbmQgYnJva2VuIGludG8gc2V2ZXJhbCB0b2tlbnMKKyAgICAgICAgICAgIGVsaWYgc2VsZi5kaXJlY3RpdmUgPT0gImVycm9yIjoKKyAgICAgICAgICAgICAgICByZXN1bHQgPSAiI2Vycm9yICVzIiAlICcgJy5qb2luKFt0b2suaWQgZm9yIHRvayBpbiBzZWxmLnRva2Vuc10pCisKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgcmVzdWx0ID0gIiMlcyIgJSBzZWxmLmRpcmVjdGl2ZQotICAgICAgICAgICAgICAgIGlmIGxlbihzZWxmLnRva2Vucyk6CisgICAgICAgICAgICAgICAgaWYgc2VsZi50b2tlbnM6CiAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSAiICIKLSAgICAgICAgICAgICAgICBmb3IgdG9rIGluIHNlbGYudG9rZW5zOgotICAgICAgICAgICAgICAgICAgICByZXN1bHQgKz0gc3RyKHRvaykKKyAgICAgICAgICAgICAgICByZXN1bHQgKz0gJycuam9pbihbdG9rLmlkIGZvciB0b2sgaW4gc2VsZi50b2tlbnNdKQogICAgICAgICBlbHNlOgotICAgICAgICAgICAgcmVzdWx0ID0gIiIKLSAgICAgICAgICAgIGZvciB0b2sgaW4gc2VsZi50b2tlbnM6Ci0gICAgICAgICAgICAgICAgcmVzdWx0ICs9IHN0cih0b2spCisgICAgICAgICAgICBsaW5lcywgXyA9IHNlbGYuZm9ybWF0X2Jsb2NrcyhzZWxmLnRva2VucykKKyAgICAgICAgICAgIHJlc3VsdCA9ICdcbicuam9pbihsaW5lcykKIAogICAgICAgICByZXR1cm4gcmVzdWx0CiAKLWNsYXNzIEJsb2NrTGlzdDoKLSAgICAiIiJhIGNvbnZlbmllbmNlIGNsYXNzIHVzZWQgdG8gaG9sZCBhbmQgcHJvY2VzcyBhIGxpc3Qgb2YgYmxvY2tzIHJldHVybmVkIGJ5Ci0gICAgICAgdGhlIGNwcCBwYXJzZXIiIiIKLSAgICBkZWYgX19pbml0X18oc2VsZixibG9ja3MpOgorCitjbGFzcyBCbG9ja0xpc3Qob2JqZWN0KToKKyAgICAiIiJBIGNvbnZlbmllbmNlIGNsYXNzIHVzZWQgdG8gaG9sZCBhbmQgcHJvY2VzcyBhIGxpc3Qgb2YgYmxvY2tzLgorCisgICAgSXQgY2FsbHMgdGhlIGNwcCBwYXJzZXIgdG8gZ2V0IHRoZSBibG9ja3MuCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgYmxvY2tzKToKICAgICAgICAgc2VsZi5ibG9ja3MgPSBibG9ja3MKIAogICAgIGRlZiBfX2xlbl9fKHNlbGYpOgogICAgICAgICByZXR1cm4gbGVuKHNlbGYuYmxvY2tzKQogCi0gICAgZGVmIF9fZ2V0aXRlbV9fKHNlbGYsbik6CisgICAgZGVmIF9fZ2V0aXRlbV9fKHNlbGYsIG4pOgogICAgICAgICByZXR1cm4gc2VsZi5ibG9ja3Nbbl0KIAogICAgIGRlZiBfX3JlcHJfXyhzZWxmKToKICAgICAgICAgcmV0dXJuIHJlcHIoc2VsZi5ibG9ja3MpCiAKICAgICBkZWYgX19zdHJfXyhzZWxmKToKLSAgICAgICAgcmVzdWx0ID0gIiIKLSAgICAgICAgZm9yIGIgaW4gc2VsZi5ibG9ja3M6Ci0gICAgICAgICAgICByZXN1bHQgKz0gc3RyKGIpCi0gICAgICAgICAgICBpZiBiLmlzRGlyZWN0aXZlKCk6Ci0gICAgICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0LnJzdHJpcCgpICsgJ1xuJworICAgICAgICByZXN1bHQgPSAnXG4nLmpvaW4oW3N0cihiKSBmb3IgYiBpbiBzZWxmLmJsb2Nrc10pCiAgICAgICAgIHJldHVybiByZXN1bHQKIAotICAgIGRlZiAgb3B0aW1pemVJZjAxKHNlbGYpOgotICAgICAgICAiIiJyZW1vdmUgdGhlIGNvZGUgYmV0d2VlbiAjaWYgMCAuLiAjZW5kaWYgaW4gYSBCbG9ja0xpc3QiIiIKKyAgICBkZWYgZHVtcChzZWxmKToKKyAgICAgICAgIiIiRHVtcCBhbGwgdGhlIGJsb2NrcyBpbiBjdXJyZW50IEJsb2NrTGlzdC4iIiIKKyAgICAgICAgcHJpbnQgJyMjIyMjIEJFR0lOICMjIyMjJworICAgICAgICBmb3IgaSwgYiBpbiBlbnVtZXJhdGUoc2VsZi5ibG9ja3MpOgorICAgICAgICAgICAgcHJpbnQgJyMjIyBCTE9DSyAlZCAjIyMnICUgaQorICAgICAgICAgICAgcHJpbnQgYgorICAgICAgICBwcmludCAnIyMjIyMgRU5EICMjIyMjJworCisgICAgZGVmIG9wdGltaXplSWYwMShzZWxmKToKKyAgICAgICAgIiIiUmVtb3ZlIHRoZSBjb2RlIGJldHdlZW4gI2lmIDAgLi4gI2VuZGlmIGluIGEgQmxvY2tMaXN0LiIiIgogICAgICAgICBzZWxmLmJsb2NrcyA9IG9wdGltaXplX2lmMDEoc2VsZi5ibG9ja3MpCiAKICAgICBkZWYgb3B0aW1pemVNYWNyb3Moc2VsZiwgbWFjcm9zKToKLSAgICAgICAgIiIicmVtb3ZlIGtub3duIGRlZmluZWQgYW5kIHVuZGVmaW5lZCBtYWNyb3MgZnJvbSBhIEJsb2NrTGlzdCIiIgorICAgICAgICAiIiJSZW1vdmUga25vd24gZGVmaW5lZCBhbmQgdW5kZWZpbmVkIG1hY3JvcyBmcm9tIGEgQmxvY2tMaXN0LiIiIgogICAgICAgICBmb3IgYiBpbiBzZWxmLmJsb2NrczoKICAgICAgICAgICAgIGlmIGIuaXNJZigpOgogICAgICAgICAgICAgICAgIGIuZXhwci5vcHRpbWl6ZShtYWNyb3MpCiAKLSAgICBkZWYgcmVtb3ZlTWFjcm9EZWZpbmVzKHNlbGYsbWFjcm9zKToKLSAgICAgICAgIiIicmVtb3ZlIGtub3duIG1hY3JvIGRlZmluaXRpb25zIGZyb20gYSBCbG9ja0xpc3QiIiIKLSAgICAgICAgc2VsZi5ibG9ja3MgPSByZW1vdmVfbWFjcm9fZGVmaW5lcyhzZWxmLmJsb2NrcyxtYWNyb3MpCisgICAgZGVmIHJlbW92ZU1hY3JvRGVmaW5lcyhzZWxmLCBtYWNyb3MpOgorICAgICAgICAiIiJSZW1vdmUga25vd24gbWFjcm8gZGVmaW5pdGlvbnMgZnJvbSBhIEJsb2NrTGlzdC4iIiIKKyAgICAgICAgc2VsZi5ibG9ja3MgPSByZW1vdmVfbWFjcm9fZGVmaW5lcyhzZWxmLmJsb2NrcywgbWFjcm9zKQogCi0gICAgZGVmIHJlbW92ZVdoaXRlU3BhY2Uoc2VsZik6Ci0gICAgICAgIGZvciBiIGluIHNlbGYuYmxvY2tzOgotICAgICAgICAgICAgYi5yZW1vdmVXaGl0ZVNwYWNlKCkKLQotICAgIGRlZiBvcHRpbWl6ZUFsbChzZWxmLG1hY3Jvcyk6CisgICAgZGVmIG9wdGltaXplQWxsKHNlbGYsIG1hY3Jvcyk6CiAgICAgICAgIHNlbGYub3B0aW1pemVNYWNyb3MobWFjcm9zKQogICAgICAgICBzZWxmLm9wdGltaXplSWYwMSgpCiAgICAgICAgIHJldHVybgogCiAgICAgZGVmIGZpbmRJbmNsdWRlcyhzZWxmKToKLSAgICAgICAgIiIicmV0dXJuIHRoZSBsaXN0IG9mIGluY2x1ZGVkIGZpbGVzIGluIGEgQmxvY2tMaXN0IiIiCisgICAgICAgICIiIlJldHVybiB0aGUgbGlzdCBvZiBpbmNsdWRlZCBmaWxlcyBpbiBhIEJsb2NrTGlzdC4iIiIKICAgICAgICAgcmVzdWx0ID0gW10KICAgICAgICAgZm9yIGIgaW4gc2VsZi5ibG9ja3M6CiAgICAgICAgICAgICBpID0gYi5pc0luY2x1ZGUoKQogICAgICAgICAgICAgaWYgaToKICAgICAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKGkpCi0KICAgICAgICAgcmV0dXJuIHJlc3VsdAogCi0KLSAgICBkZWYgd3JpdGUoc2VsZixvdXQpOgorICAgIGRlZiB3cml0ZShzZWxmLCBvdXQpOgogICAgICAgICBvdXQud3JpdGUoc3RyKHNlbGYpKQogCi0gICAgZGVmIHdyaXRlV2l0aFdhcm5pbmcoc2VsZixvdXQsd2FybmluZyxyZXBlYXRfY291bnQpOgorICAgIGRlZiB3cml0ZVdpdGhXYXJuaW5nKHNlbGYsIG91dCwgd2FybmluZywgcmVwZWF0X2NvdW50KToKICAgICAgICAgbGVmdF9jb3VudCA9IHJlcGVhdF9jb3VudAorICAgICAgICBpbmRlbnQgPSAwCiAgICAgICAgIGZvciBiIGluIHNlbGYuYmxvY2tzOgotICAgICAgICAgICAgbGVmdF9jb3VudCA9IGIud3JpdGVXaXRoV2FybmluZyhvdXQsd2FybmluZyxsZWZ0X2NvdW50LHJlcGVhdF9jb3VudCkKKyAgICAgICAgICAgIGxlZnRfY291bnQsIGluZGVudCA9IGIud3JpdGVXaXRoV2FybmluZyhvdXQsIHdhcm5pbmcsIGxlZnRfY291bnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVwZWF0X2NvdW50LCBpbmRlbnQpCiAKLSAgICBkZWYgcmVtb3ZlQ29tbWVudHMoc2VsZik6Ci0gICAgICAgIGZvciBiIGluIHNlbGYuYmxvY2tzOgotICAgICAgICAgICAgZm9yIHRvayBpbiBiLnRva2VuczoKLSAgICAgICAgICAgICAgICBpZiB0b2suaWQgPT0gdG9rU1BBQ0U6Ci0gICAgICAgICAgICAgICAgICAgIHRvay52YWx1ZSA9ICIgIgorICAgIGRlZiByZW1vdmVWYXJzQW5kRnVuY3Moc2VsZiwga25vd25TdGF0aWNzPU5vbmUpOgorICAgICAgICAiIiJSZW1vdmUgdmFyaWFibGUgYW5kIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucy4KIAotICAgIGRlZiByZW1vdmVWYXJzQW5kRnVuY3Moc2VsZixrbm93blN0YXRpY3M9c2V0KCkpOgotICAgICAgICAiIiJyZW1vdmUgYWxsIGV4dGVybiBhbmQgc3RhdGljIGRlY2xhcmF0aW9ucyBjb3JyZXNwb25kaW5nCi0gICAgICAgICAgIHRvIHZhcmlhYmxlIGFuZCBmdW5jdGlvbiBkZWNsYXJhdGlvbnMuIHdlIG9ubHkgYWNjZXB0IHR5cGVkZWZzCi0gICAgICAgICAgIGFuZCBlbnVtL3N0cnVjdHMvdW5pb24gZGVjbGFyYXRpb25zLgorICAgICAgICBBbGwgZXh0ZXJuIGFuZCBzdGF0aWMgZGVjbGFyYXRpb25zIGNvcnJlc3BvbmRpbmcgdG8gdmFyaWFibGUgYW5kCisgICAgICAgIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhcmUgcmVtb3ZlZC4gV2Ugb25seSBhY2NlcHQgdHlwZWRlZnMgYW5kCisgICAgICAgIGVudW0vc3RydWN0cy91bmlvbiBkZWNsYXJhdGlvbnMuCiAKLSAgICAgICAgICAgaG93ZXZlciwgd2Uga2VlcCB0aGUgZGVmaW5pdGlvbnMgY29ycmVzcG9uZGluZyB0byB0aGUgc2V0Ci0gICAgICAgICAgIG9mIGtub3duIHN0YXRpYyBpbmxpbmUgZnVuY3Rpb25zIGluIHRoZSBzZXQgJ2tub3duU3RhdGljcycsCi0gICAgICAgICAgIHdoaWNoIGlzIHVzZWZ1bCBmb3Igb3B0aW1pemVkIGJ5dGVvcmRlciBzd2FwIGZ1bmN0aW9ucyBhbmQKLSAgICAgICAgICAgc3R1ZmYgbGlrZSB0aGF0LgotICAgICAgICAgICAiIiIKKyAgICAgICAgSG93ZXZlciwgd2Uga2VlcCB0aGUgZGVmaW5pdGlvbnMgY29ycmVzcG9uZGluZyB0byB0aGUgc2V0IG9mIGtub3duCisgICAgICAgIHN0YXRpYyBpbmxpbmUgZnVuY3Rpb25zIGluIHRoZSBzZXQgJ2tub3duU3RhdGljcycsIHdoaWNoIGlzIHVzZWZ1bAorICAgICAgICBmb3Igb3B0aW1pemVkIGJ5dGVvcmRlciBzd2FwIGZ1bmN0aW9ucyBhbmQgc3R1ZmYgbGlrZSB0aGF0LgorICAgICAgICAiIiIKKworICAgICAgICAjIE5PVEU6IEl0J3MgYWxzbyByZW1vdmluZyBmdW5jdGlvbi1saWtlIG1hY3Jvcywgc3VjaCBhcyBfX1NZU0NBTEwoLi4uKQorICAgICAgICAjIGluIHVhcGkvYXNtLWdlbmVyaWMvdW5pc3RkLmgsIG9yIEtFWV9GSUVMRCguLi4pIGluIGxpbnV4L2JjYWNoZS5oLgorICAgICAgICAjIEl0IGNvdWxkIGJlIHByb2JsZW1hdGljIHdoZW4gd2UgaGF2ZSBmdW5jdGlvbi1saWtlIG1hY3JvcyBidXQgd2l0aG91dAorICAgICAgICAjICd9JyBmb2xsb3dpbmcgdGhlbS4gSXQgd2lsbCBza2lwIGFsbCB0aGUgdG9rZW5zL2Jsb2NrcyB1bnRpbCBzZWVpbmcgYQorICAgICAgICAjICd9JyBhcyB0aGUgZnVuY3Rpb24gZW5kLiBGb3J0dW5hdGVseSB3ZSBkb24ndCBoYXZlIHN1Y2ggY2FzZXMgaW4gdGhlCisgICAgICAgICMgY3VycmVudCBrZXJuZWwgaGVhZGVycy4KKwogICAgICAgICAjIHN0YXRlID0gMCA9PiBub3JtYWwgKGkuZS4gTE4gKyBzcGFjZXMpCiAgICAgICAgICMgc3RhdGUgPSAxID0+IHR5cGVkZWYvc3RydWN0IGVuY291bnRlcmVkLCBlbmRzIHdpdGggIjsiCiAgICAgICAgICMgc3RhdGUgPSAyID0+IHZhciBkZWNsYXJhdGlvbiBlbmNvdW50ZXJlZCwgZW5kcyB3aXRoICI7IgogICAgICAgICAjIHN0YXRlID0gMyA9PiBmdW5jIGRlY2xhcmF0aW9uIGVuY291bnRlcmVkLCBlbmRzIHdpdGggIn0iCi0gICAgICAgIHN0YXRlICAgICAgPSAwCi0gICAgICAgIGRlcHRoICAgICAgPSAwCi0gICAgICAgIGJsb2NrczIgICAgPSBbXQorCisgICAgICAgIGlmIGtub3duU3RhdGljcyBpcyBOb25lOgorICAgICAgICAgICAga25vd25TdGF0aWNzID0gc2V0KCkKKyAgICAgICAgc3RhdGUgPSAwCisgICAgICAgIGRlcHRoID0gMAorICAgICAgICBibG9ja3MyID0gW10KICAgICAgICAgc2tpcFRva2VucyA9IEZhbHNlCiAgICAgICAgIGZvciBiIGluIHNlbGYuYmxvY2tzOgogICAgICAgICAgICAgaWYgYi5pc0RpcmVjdGl2ZSgpOgogICAgICAgICAgICAgICAgIGJsb2NrczIuYXBwZW5kKGIpCiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIG4gICAgID0gbGVuKGIudG9rZW5zKQotICAgICAgICAgICAgICAgIGkgICAgID0gMAorICAgICAgICAgICAgICAgIG4gPSBsZW4oYi50b2tlbnMpCisgICAgICAgICAgICAgICAgaSA9IDAKICAgICAgICAgICAgICAgICBpZiBza2lwVG9rZW5zOgogICAgICAgICAgICAgICAgICAgICBmaXJzdCA9IG4KICAgICAgICAgICAgICAgICBlbHNlOgpAQCAtMTQzNCwyMSArMTMxNiwxNiBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlID0gMAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHNraXBUb2tlbnM6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNraXBUb2tlbnMgPSBGYWxzZQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaXJzdCA9IGkrMQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaXJzdCA9IGkgKyAxCiAKLSAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBpKzEKLSAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0KLSAgICAgICAgICAgICAgICAgICAgIyBXZSBhcmUgbG9va2luZyBmb3IgdGhlIHN0YXJ0IG9mIGEgbmV3IHR5cGUvZnVuYy92YXIKLSAgICAgICAgICAgICAgICAgICAgIyBpZ25vcmUgd2hpdGVzcGFjZQotICAgICAgICAgICAgICAgICAgICBpZiB0b2tpZCBpbiBbdG9rTE4sIHRva1NQQUNFXToKLSAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBpKzEKKyAgICAgICAgICAgICAgICAgICAgICAgIGkgKz0gMQogICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWUKIAogICAgICAgICAgICAgICAgICAgICAjIElzIGl0IGEgbmV3IHR5cGUgZGVmaW5pdGlvbiwgdGhlbiBzdGFydCByZWNvcmRpbmcgaXQKLSAgICAgICAgICAgICAgICAgICAgaWYgdG9rLnZhbHVlIGluIFsgJ3N0cnVjdCcsICd0eXBlZGVmJywgJ2VudW0nLCAndW5pb24nLCAnX19leHRlbnNpb25fXycgXToKKyAgICAgICAgICAgICAgICAgICAgaWYgdG9rLmlkIGluIFsnc3RydWN0JywgJ3R5cGVkZWYnLCAnZW51bScsICd1bmlvbicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ19fZXh0ZW5zaW9uX18nXToKICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlID0gMQotICAgICAgICAgICAgICAgICAgICAgICAgaSAgICAgPSBpKzEKKyAgICAgICAgICAgICAgICAgICAgICAgIGkgKz0gMQogICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWUKIAogICAgICAgICAgICAgICAgICAgICAjIElzIGl0IGEgdmFyaWFibGUgb3IgZnVuY3Rpb24gZGVmaW5pdGlvbi4gSWYgc28sIGZpcnN0CkBAIC0xNDY0LDE4ICsxMzQxLDE4IEBACiAgICAgICAgICAgICAgICAgICAgICMgV2UgYWxzbyBhc3N1bWUgdGhhdCB0aGUgdmFyL2Z1bmMgbmFtZSBpcyB0aGUgbGFzdAogICAgICAgICAgICAgICAgICAgICAjIGlkZW50aWZpZXIgYmVmb3JlIHRoZSB0ZXJtaW5hdG9yLgogICAgICAgICAgICAgICAgICAgICAjCi0gICAgICAgICAgICAgICAgICAgIGogPSBpKzEKKyAgICAgICAgICAgICAgICAgICAgaiA9IGkgKyAxCiAgICAgICAgICAgICAgICAgICAgIGlkZW50ID0gIiIKICAgICAgICAgICAgICAgICAgICAgd2hpbGUgaiA8IG46CiAgICAgICAgICAgICAgICAgICAgICAgICB0b2tpZCA9IGIudG9rZW5zW2pdLmlkCiAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0b2tpZCA9PSAnKCc6ICAjIGEgZnVuY3Rpb24gZGVjbGFyYXRpb24KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZSA9IDMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgICAgICAgICAgZWxpZiB0b2tpZCA9PSAnOyc6ICMgYSB2YXJpYWJsZSBkZWNsYXJhdGlvbgorICAgICAgICAgICAgICAgICAgICAgICAgZWxpZiB0b2tpZCA9PSAnOyc6ICAjIGEgdmFyaWFibGUgZGVjbGFyYXRpb24KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZSA9IDIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgICAgICAgICAgaWYgdG9raWQgPT0gdG9rSURFTlQ6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWRlbnQgPSBiLnRva2Vuc1tqXS52YWx1ZQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgYi50b2tlbnNbal0ua2luZCA9PSBUb2tlbktpbmQuSURFTlRJRklFUjoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZGVudCA9IGIudG9rZW5zW2pdLmlkCiAgICAgICAgICAgICAgICAgICAgICAgICBqICs9IDEKIAogICAgICAgICAgICAgICAgICAgICBpZiBqID49IG46CkBAIC0xNDg4LDIyMSArMTM2NSwzMDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICMgd2l0aG91dCBtYWtpbmcgb3VyIHBhcnNlciBtdWNoIG1vcmUKICAgICAgICAgICAgICAgICAgICAgICAgICMgY29tcGxleC4KICAgICAgICAgICAgICAgICAgICAgICAgICMKLSAgICAgICAgICAgICAgICAgICAgICAgICNwcmludCAiIyMjIHNraXAgdW50ZXJtaW5hdGVkIHN0YXRpYyAnJXMnIiAlIGlkZW50CisgICAgICAgICAgICAgICAgICAgICAgICBsb2dnaW5nLmRlYnVnKCIjIyMgc2tpcCB1bnRlcm1pbmF0ZWQgc3RhdGljICclcyciLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZGVudCkKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCiAKICAgICAgICAgICAgICAgICAgICAgaWYgaWRlbnQgaW4ga25vd25TdGF0aWNzOgotICAgICAgICAgICAgICAgICAgICAgICAgI3ByaW50ICIjIyMga2VlcCB2YXIvZnVuYyAnJXMnOiAlcyIgJSAoaWRlbnQscmVwcihiLnRva2Vuc1tpOmpdKSkKLSAgICAgICAgICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAgICAgICAgICAgICAgIGxvZ2dpbmcuZGVidWcoIiMjIyBrZWVwIHZhci9mdW5jICclcyc6ICVzIiwgaWRlbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcHIoYi50b2tlbnNbaTpqXSkpCiAgICAgICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgICAgICAjIFdlJ3JlIGdvaW5nIHRvIHNraXAgdGhlIHRva2VucyBmb3IgdGhpcyBkZWNsYXJhdGlvbgotICAgICAgICAgICAgICAgICAgICAgICAgI3ByaW50ICIjIyMgc2tpcCB2YXJpYWJsZSAvZnVuYyclcyc6ICVzIiAlIChpZGVudCxyZXByKGIudG9rZW5zW2k6al0pKQorICAgICAgICAgICAgICAgICAgICAgICAgbG9nZ2luZy5kZWJ1ZygiIyMjIHNraXAgdmFyL2Z1bmMgJyVzJzogJXMiLCBpZGVudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVwcihiLnRva2Vuc1tpOmpdKSkKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGkgPiBmaXJzdDoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja3MyLmFwcGVuZCggQmxvY2soYi50b2tlbnNbZmlyc3Q6aV0pKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrczIuYXBwZW5kKEJsb2NrKGIudG9rZW5zW2ZpcnN0OmldKSkKICAgICAgICAgICAgICAgICAgICAgICAgIHNraXBUb2tlbnMgPSBUcnVlCi0gICAgICAgICAgICAgICAgICAgICAgICBmaXJzdCAgICAgID0gbgorICAgICAgICAgICAgICAgICAgICAgICAgZmlyc3QgPSBuCiAKLSAgICAgICAgICAgICAgICAgICAgaSA9IGkrMQorICAgICAgICAgICAgICAgICAgICBpICs9IDEKIAogICAgICAgICAgICAgICAgIGlmIGkgPiBmaXJzdDoKLSAgICAgICAgICAgICAgICAgICAgI3ByaW50ICIjIyMgZmluYWwgJyVzJyIgJSByZXByKGIudG9rZW5zW2ZpcnN0OmldKQotICAgICAgICAgICAgICAgICAgICBibG9ja3MyLmFwcGVuZCggQmxvY2soYi50b2tlbnNbZmlyc3Q6aV0pICkKKyAgICAgICAgICAgICAgICAgICAgIyBwcmludCAiIyMjIGZpbmFsICclcyciICUgcmVwcihiLnRva2Vuc1tmaXJzdDppXSkKKyAgICAgICAgICAgICAgICAgICAgYmxvY2tzMi5hcHBlbmQoQmxvY2soYi50b2tlbnNbZmlyc3Q6aV0pKQogCiAgICAgICAgIHNlbGYuYmxvY2tzID0gYmxvY2tzMgogCi0gICAgZGVmIGluc2VydERpc2NsYWltZXIoc2VsZixkaXNjbGFpbWVyPSIvKiBhdXRvLWdlbmVyYXRlZCBmaWxlLCBETyBOT1QgRURJVCAqLyIpOgotICAgICAgICAiIiJpbnNlcnQgeW91ciBzdGFuZGFyZCBpc3N1ZSBkaXNjbGFpbWVyIHRoYXQgdGhpcyBpcyBhbgotICAgICAgICAgICBhdXRvLWdlbmVyYXRlZCBmaWxlLCBldGMuLiIiIgotICAgICAgICB0b2tlbnMgPSBDcHBMaW5lVG9rZW5pemVyKCBkaXNjbGFpbWVyICkudG9Ub2tlbkxpc3QoKQotICAgICAgICB0b2tlbnMgPSB0b2tlbnNbOi0xXSAgIyByZW1vdmUgdHJhaWxpbmcgdG9rTE4KLSAgICAgICAgc2VsZi5ibG9ja3MgPSBbIEJsb2NrKHRva2VucykgXSArIHNlbGYuYmxvY2tzCi0KLSAgICBkZWYgcmVwbGFjZVRva2VucyhzZWxmLHJlcGxhY2VtZW50cyk6Ci0gICAgICAgICIiInJlcGxhY2UgdG9rZW5zIGFjY29yZGluZyB0byB0aGUgZ2l2ZW4gZGljdCIiIgorICAgIGRlZiByZXBsYWNlVG9rZW5zKHNlbGYsIHJlcGxhY2VtZW50cyk6CisgICAgICAgICIiIlJlcGxhY2UgdG9rZW5zIGFjY29yZGluZyB0byB0aGUgZ2l2ZW4gZGljdC4iIiIKICAgICAgICAgZm9yIGIgaW4gc2VsZi5ibG9ja3M6CiAgICAgICAgICAgICBtYWRlX2NoYW5nZSA9IEZhbHNlCi0gICAgICAgICAgICBpZiBiLmlzSW5jbHVkZSgpID09IE5vbmU6CisgICAgICAgICAgICBpZiBiLmlzSW5jbHVkZSgpIGlzIE5vbmU6CiAgICAgICAgICAgICAgICAgZm9yIHRvayBpbiBiLnRva2VuczoKLSAgICAgICAgICAgICAgICAgICAgaWYgdG9rLmlkID09IHRva0lERU5UOgotICAgICAgICAgICAgICAgICAgICAgICAgaWYgdG9rLnZhbHVlIGluIHJlcGxhY2VtZW50czoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2sudmFsdWUgPSByZXBsYWNlbWVudHNbdG9rLnZhbHVlXQorICAgICAgICAgICAgICAgICAgICBpZiB0b2sua2luZCA9PSBUb2tlbktpbmQuSURFTlRJRklFUjoKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRvay5pZCBpbiByZXBsYWNlbWVudHM6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9rLmlkID0gcmVwbGFjZW1lbnRzW3Rvay5pZF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWRlX2NoYW5nZSA9IFRydWUKIAorICAgICAgICAgICAgICAgIGlmIGIuaXNEZWZpbmUoKSBhbmQgYi5kZWZpbmVfaWQgaW4gcmVwbGFjZW1lbnRzOgorICAgICAgICAgICAgICAgICAgICBiLmRlZmluZV9pZCA9IHJlcGxhY2VtZW50c1tiLmRlZmluZV9pZF0KKyAgICAgICAgICAgICAgICAgICAgbWFkZV9jaGFuZ2UgPSBUcnVlCisKICAgICAgICAgICAgIGlmIG1hZGVfY2hhbmdlIGFuZCBiLmlzSWYoKToKICAgICAgICAgICAgICAgICAjIEtlZXAgJ2V4cHInIGluIHN5bmMgd2l0aCAndG9rZW5zJy4KICAgICAgICAgICAgICAgICBiLmV4cHIgPSBDcHBFeHByKGIudG9rZW5zKQogCi1jbGFzcyBCbG9ja1BhcnNlcjoKLSAgICAiIiJhIGNsYXNzIHVzZWQgdG8gY29udmVydCBhbiBpbnB1dCBzb3VyY2UgZmlsZSBpbnRvIGEgQmxvY2tMaXN0IG9iamVjdCIiIgogCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsdG9remVyPU5vbmUpOgotICAgICAgICAiIiJpbml0aWFsaXplIGEgYmxvY2sgcGFyc2VyLiB0aGUgaW5wdXQgc291cmNlIGlzIHByb3ZpZGVkIHRocm91Z2ggYSBUb2tlbml6ZXIKLSAgICAgICAgICAgb2JqZWN0IiIiCi0gICAgICAgIHNlbGYucmVzZXQodG9remVyKQorZGVmIHN0cmlwX3NwYWNlKHMpOgorICAgICIiIlN0cmlwIG91dCByZWR1bmRhbnQgc3BhY2UgaW4gYSBnaXZlbiBzdHJpbmcuIiIiCiAKLSAgICBkZWYgcmVzZXQoc2VsZix0b2t6ZXIpOgotICAgICAgICBzZWxmLnN0YXRlICA9IDEKLSAgICAgICAgc2VsZi50b2t6ZXIgPSB0b2t6ZXIKKyAgICAjIE5PVEU6IEl0IG91Z2h0IHRvIGJlIG1vcmUgY2xldmVyIHRvIG5vdCBkZXN0cm95IHNwYWNlcyBpbiBzdHJpbmcgdG9rZW5zLgorICAgIHJlcGxhY2VtZW50cyA9IHsnIC4gJzogJy4nLAorICAgICAgICAgICAgICAgICAgICAnIFsnOiAnWycsCisgICAgICAgICAgICAgICAgICAgICdbICc6ICdbJywKKyAgICAgICAgICAgICAgICAgICAgJyBdJzogJ10nLAorICAgICAgICAgICAgICAgICAgICAnKCAnOiAnKCcsCisgICAgICAgICAgICAgICAgICAgICcgKSc6ICcpJywKKyAgICAgICAgICAgICAgICAgICAgJyAsJzogJywnLAorICAgICAgICAgICAgICAgICAgICAnIyAnOiAnIycsCisgICAgICAgICAgICAgICAgICAgICcgOyc6ICc7JywKKyAgICAgICAgICAgICAgICAgICAgJ34gJzogJ34nLAorICAgICAgICAgICAgICAgICAgICAnIC0+ICc6ICctPid9CisgICAgcmVzdWx0ID0gcworICAgIGZvciByIGluIHJlcGxhY2VtZW50czoKKyAgICAgICAgcmVzdWx0ID0gcmVzdWx0LnJlcGxhY2UociwgcmVwbGFjZW1lbnRzW3JdKQogCi0gICAgZGVmIGdldEJsb2NrcyhzZWxmLHRva3plcj1Ob25lKToKLSAgICAgICAgIiIidG9rZW5pemUgYW5kIHBhcnNlIHRoZSBpbnB1dCBzb3VyY2UsIHJldHVybiBhIEJsb2NrTGlzdCBvYmplY3QKLSAgICAgICAgICAgTk9URTogZW1wdHkgYW5kIGxpbmUtbnVtYmVyaW5nIGRpcmVjdGl2ZXMgYXJlIGlnbm9yZWQgYW5kIHJlbW92ZWQKLSAgICAgICAgICAgICAgICAgZnJvbSB0aGUgcmVzdWx0LiBhcyBhIGNvbnNlcXVlbmNlLCBpdCBpcyBwb3NzaWJsZSB0byBoYXZlCi0gICAgICAgICAgICAgICAgIHR3byBzdWNjZXNzaXZlIHRleHQgYmxvY2tzIGluIHRoZSByZXN1bHQiIiIKLSAgICAgICAgIyBzdGF0ZSAwID0+IGluIHNvdXJjZSBjb2RlCi0gICAgICAgICMgc3RhdGUgMSA9PiBpbiBzb3VyY2UgY29kZSwgYWZ0ZXIgYSBMTgotICAgICAgICAjIHN0YXRlIDIgPT4gaW4gc291cmNlIGNvZGUsIGFmdGVyIExOIHRoZW4gc29tZSBzcGFjZQotICAgICAgICBzdGF0ZSAgID0gMQotICAgICAgICBsYXN0TE4gID0gMAotICAgICAgICBjdXJyZW50ID0gW10KLSAgICAgICAgYmxvY2tzICA9IFtdCisgICAgIyBSZW1vdmUgdGhlIHNwYWNlIGJldHdlZW4gZnVuY3Rpb24gbmFtZSBhbmQgdGhlIHBhcmVudGhlc2lzLgorICAgIHJlc3VsdCA9IHJlLnN1YihyJyhcdyspIFwoJywgcidcMSgnLCByZXN1bHQpCisgICAgcmV0dXJuIHJlc3VsdAogCi0gICAgICAgIGlmIHRva3plciA9PSBOb25lOgotICAgICAgICAgICAgdG9remVyID0gc2VsZi50b2t6ZXIKIAotICAgICAgICB3aGlsZSAxOgotICAgICAgICAgICAgdG9rID0gdG9remVyLmdldFRva2VuKCkKLSAgICAgICAgICAgIGlmIHRvay5pZCA9PSB0b2tFT0Y6Ci0gICAgICAgICAgICAgICAgYnJlYWsKK2NsYXNzIEJsb2NrUGFyc2VyKG9iamVjdCk6CisgICAgIiIiQSBjbGFzcyB0aGF0IGNvbnZlcnRzIGFuIGlucHV0IHNvdXJjZSBmaWxlIGludG8gYSBCbG9ja0xpc3Qgb2JqZWN0LiIiIgogCi0gICAgICAgICAgICBpZiB0b2suaWQgPT0gdG9rTE46Ci0gICAgICAgICAgICAgICAgc3RhdGUgICAgPSAxCi0gICAgICAgICAgICAgICAgY3VycmVudC5hcHBlbmQodG9rKQotICAgICAgICAgICAgICAgIGxhc3RMTiAgID0gbGVuKGN1cnJlbnQpCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHRva3plcj1Ob25lKToKKyAgICAgICAgIiIiSW5pdGlhbGl6ZSBhIGJsb2NrIHBhcnNlci4KIAotICAgICAgICAgICAgZWxpZiB0b2suaWQgPT0gdG9rU1BBQ0U6Ci0gICAgICAgICAgICAgICAgaWYgc3RhdGUgPT0gMToKLSAgICAgICAgICAgICAgICAgICAgc3RhdGUgPSAyCi0gICAgICAgICAgICAgICAgY3VycmVudC5hcHBlbmQodG9rKQorICAgICAgICBUaGUgaW5wdXQgc291cmNlIGlzIHByb3ZpZGVkIHRocm91Z2ggYSBUb2tlbml6ZXIgb2JqZWN0LgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5fdG9remVyID0gdG9remVyCisgICAgICAgIHNlbGYuX3BhcnNlZCA9IEZhbHNlCiAKLSAgICAgICAgICAgIGVsaWYgdG9rLmlkID09ICIjIjoKLSAgICAgICAgICAgICAgICBpZiBzdGF0ZSA+IDA6Ci0gICAgICAgICAgICAgICAgICAgICMgdGhpcyBpcyB0aGUgc3RhcnQgb2YgYSBkaXJlY3RpdmUKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgcGFyc2VkKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5fcGFyc2VkCiAKLSAgICAgICAgICAgICAgICAgICAgaWYgbGFzdExOID4gMDoKLSAgICAgICAgICAgICAgICAgICAgICAgICMgcmVjb3JkIHByZXZpb3VzIHRva2VucyBhcyB0ZXh0IGJsb2NrCi0gICAgICAgICAgICAgICAgICAgICAgICBibG9jayAgID0gQmxvY2soY3VycmVudFs6bGFzdExOXSkKLSAgICAgICAgICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQoYmxvY2spCi0gICAgICAgICAgICAgICAgICAgICAgICBsYXN0TE4gID0gMAorICAgIEBzdGF0aWNtZXRob2QKKyAgICBkZWYgX3Nob3J0X2V4dGVudChleHRlbnQpOgorICAgICAgICByZXR1cm4gJyVkOiVkIC0gJWQ6JWQnICUgKGV4dGVudC5zdGFydC5saW5lLCBleHRlbnQuc3RhcnQuY29sdW1uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dGVudC5lbmQubGluZSwgZXh0ZW50LmVuZC5jb2x1bW4pCiAKLSAgICAgICAgICAgICAgICAgICAgY3VycmVudCA9IFtdCisgICAgZGVmIGdldEJsb2NrcyhzZWxmLCB0b2t6ZXI9Tm9uZSk6CisgICAgICAgICIiIlJldHVybiBhbGwgdGhlIGJsb2NrcyBwYXJzZWQuIiIiCiAKLSAgICAgICAgICAgICAgICAgICAgIyBza2lwIHNwYWNlcyBhZnRlciB0aGUgIwotICAgICAgICAgICAgICAgICAgICB3aGlsZSAxOgotICAgICAgICAgICAgICAgICAgICAgICAgdG9rID0gdG9remVyLmdldFRva2VuKCkKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRvay5pZCAhPSB0b2tTUEFDRToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICBkZWYgY29uc3VtZV9leHRlbnQoaSwgdG9rZW5zLCBleHRlbnQ9Tm9uZSwgZGV0ZWN0X2NoYW5nZT1GYWxzZSk6CisgICAgICAgICAgICAiIiJSZXR1cm4gdG9rZW5zIHRoYXQgYmVsb25nIHRvIHRoZSBnaXZlbiBleHRlbnQuCiAKLSAgICAgICAgICAgICAgICAgICAgaWYgdG9rLmlkICE9IHRva0lERU5UOgotICAgICAgICAgICAgICAgICAgICAgICAgIyBlbXB0eSBvciBsaW5lLW51bWJlcmluZywgaWdub3JlIGl0Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiB0b2suaWQgIT0gdG9rTE4gYW5kIHRvay5pZCAhPSB0b2tFT0Y6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpbGUgMToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9rID0gdG9remVyLmdldFRva2VuKCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgdG9rLmlkID09IHRva0xOIG9yIHRvay5pZCA9PSB0b2tFT0Y6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIEl0IHBhcnNlcyBhbGwgdGhlIHRva2VucyB0aGF0IGZvbGxvdyB0b2tlbnNbaV0sIHVudGlsIGdldHRpbmcgb3V0CisgICAgICAgICAgICBvZiB0aGUgZXh0ZW50LiBXaGVuIGRldGVjdF9jaGFuZ2UgaXMgVHJ1ZSwgaXQgbWF5IHRlcm1pbmF0ZSBlYXJseQorICAgICAgICAgICAgd2hlbiBkZXRlY3RpbmcgcHJlcHJvY2Vzc2luZyBkaXJlY3RpdmVzIGluc2lkZSB0aGUgZXh0ZW50LgorICAgICAgICAgICAgIiIiCiAKLSAgICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlID0gdG9rLnZhbHVlCi0gICAgICAgICAgICAgICAgICAgIGxpbmVubyAgICA9IHRvay5saW5lbm8KKyAgICAgICAgICAgIHJlc3VsdCA9IFtdCisgICAgICAgICAgICBpZiBleHRlbnQgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBleHRlbnQgPSB0b2tlbnNbaV0uY3Vyc29yLmV4dGVudAogCi0gICAgICAgICAgICAgICAgICAgICMgc2tpcCBzcGFjZXMKLSAgICAgICAgICAgICAgICAgICAgdG9rID0gdG9remVyLmdldFRva2VuKCkKLSAgICAgICAgICAgICAgICAgICAgd2hpbGUgdG9rLmlkID09IHRva1NQQUNFOgotICAgICAgICAgICAgICAgICAgICAgICAgdG9rID0gdG9remVyLmdldFRva2VuKCkKKyAgICAgICAgICAgIHdoaWxlIGkgPCBsZW4odG9rZW5zKSBhbmQgdG9rZW5zW2ldLmxvY2F0aW9uIGluIGV4dGVudDoKKyAgICAgICAgICAgICAgICB0ID0gdG9rZW5zW2ldCisgICAgICAgICAgICAgICAgaWYgZGVidWdCbG9ja1BhcnNlcjoKKyAgICAgICAgICAgICAgICAgICAgcHJpbnQgJyAnICogMiwgdC5pZCwgdC5raW5kLCB0LmN1cnNvci5raW5kCisgICAgICAgICAgICAgICAgaWYgKGRldGVjdF9jaGFuZ2UgYW5kIHQuY3Vyc29yLmV4dGVudCAhPSBleHRlbnQgYW5kCisgICAgICAgICAgICAgICAgICAgIHQuY3Vyc29yLmtpbmQgPT0gQ3Vyc29yS2luZC5QUkVQUk9DRVNTSU5HX0RJUkVDVElWRSk6CisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCh0KQorICAgICAgICAgICAgICAgIGkgKz0gMQorICAgICAgICAgICAgcmV0dXJuIChpLCByZXN1bHQpCiAKLSAgICAgICAgICAgICAgICAgICAgIyB0aGVuIHJlY29yZCB0b2tlbnMgdW50aWwgTE4KLSAgICAgICAgICAgICAgICAgICAgZGlydG9rZW5zID0gW10KLSAgICAgICAgICAgICAgICAgICAgd2hpbGUgdG9rLmlkICE9IHRva0xOIGFuZCB0b2suaWQgIT0gdG9rRU9GOgotICAgICAgICAgICAgICAgICAgICAgICAgZGlydG9rZW5zLmFwcGVuZCh0b2spCi0gICAgICAgICAgICAgICAgICAgICAgICB0b2sgPSB0b2t6ZXIuZ2V0VG9rZW4oKQorICAgICAgICBkZWYgY29uc3VtZV9saW5lKGksIHRva2Vucyk6CisgICAgICAgICAgICAiIiJSZXR1cm4gdG9rZW5zIHRoYXQgZm9sbG93IHRva2Vuc1tpXSBpbiB0aGUgc2FtZSBsaW5lLiIiIgorICAgICAgICAgICAgcmVzdWx0ID0gW10KKyAgICAgICAgICAgIGxpbmUgPSB0b2tlbnNbaV0ubG9jYXRpb24ubGluZQorICAgICAgICAgICAgd2hpbGUgaSA8IGxlbih0b2tlbnMpIGFuZCB0b2tlbnNbaV0ubG9jYXRpb24ubGluZSA9PSBsaW5lOgorICAgICAgICAgICAgICAgIGlmIHRva2Vuc1tpXS5jdXJzb3Iua2luZCA9PSBDdXJzb3JLaW5kLlBSRVBST0NFU1NJTkdfRElSRUNUSVZFOgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIHJlc3VsdC5hcHBlbmQodG9rZW5zW2ldKQorICAgICAgICAgICAgICAgIGkgKz0gMQorICAgICAgICAgICAgcmV0dXJuIChpLCByZXN1bHQpCiAKLSAgICAgICAgICAgICAgICAgICAgYmxvY2sgPSBCbG9jayhkaXJ0b2tlbnMsZGlyZWN0aXZlLGxpbmVubykKLSAgICAgICAgICAgICAgICAgICAgYmxvY2tzLmFwcGVuZChibG9jaykKLSAgICAgICAgICAgICAgICAgICAgc3RhdGUgICA9IDEKKyAgICAgICAgaWYgdG9remVyIGlzIE5vbmU6CisgICAgICAgICAgICB0b2t6ZXIgPSBzZWxmLl90b2t6ZXIKKyAgICAgICAgdG9rZW5zID0gdG9remVyLnRva2VucworCisgICAgICAgIGJsb2NrcyA9IFtdCisgICAgICAgIGJ1ZiA9IFtdCisgICAgICAgIGkgPSAwCisKKyAgICAgICAgd2hpbGUgaSA8IGxlbih0b2tlbnMpOgorICAgICAgICAgICAgdCA9IHRva2Vuc1tpXQorICAgICAgICAgICAgY3Vyc29yID0gdC5jdXJzb3IKKworICAgICAgICAgICAgaWYgZGVidWdCbG9ja1BhcnNlcjoKKyAgICAgICAgICAgICAgICBwcmludCAoIiVkOiBQcm9jZXNzaW5nIFslc10sIGtpbmQ9WyVzXSwgY3Vyc29yPVslc10sICIKKyAgICAgICAgICAgICAgICAgICAgICAgImV4dGVudD1bJXNdIiAlICh0LmxvY2F0aW9uLmxpbmUsIHQuc3BlbGxpbmcsIHQua2luZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3Iua2luZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9zaG9ydF9leHRlbnQoY3Vyc29yLmV4dGVudCkpKQorCisgICAgICAgICAgICBpZiBjdXJzb3Iua2luZCA9PSBDdXJzb3JLaW5kLlBSRVBST0NFU1NJTkdfRElSRUNUSVZFOgorICAgICAgICAgICAgICAgIGlmIGJ1ZjoKKyAgICAgICAgICAgICAgICAgICAgYmxvY2tzLmFwcGVuZChCbG9jayhidWYpKQorICAgICAgICAgICAgICAgICAgICBidWYgPSBbXQorCisgICAgICAgICAgICAgICAgaiA9IGkKKyAgICAgICAgICAgICAgICBpZiBqICsgMSA+PSBsZW4odG9rZW5zKToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgQmFkRXhwZWN0ZWRUb2tlbigiIyMjIEJBRCBUT0tFTiBhdCAlcyIgJSAodC5sb2NhdGlvbikpCisgICAgICAgICAgICAgICAgZGlyZWN0aXZlID0gdG9rZW5zW2orMV0uaWQKKworICAgICAgICAgICAgICAgIGlmIGRpcmVjdGl2ZSA9PSAnZGVmaW5lJzoKKyAgICAgICAgICAgICAgICAgICAgaWYgaSsyID49IGxlbih0b2tlbnMpOgorICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UgQmFkRXhwZWN0ZWRUb2tlbigiIyMjIEJBRCBUT0tFTiBhdCAlcyIgJQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodG9rZW5zW2ldLmxvY2F0aW9uKSkKKworICAgICAgICAgICAgICAgICAgICAjIFNraXAgJyMnIGFuZCAnZGVmaW5lJy4KKyAgICAgICAgICAgICAgICAgICAgZXh0ZW50ID0gdG9rZW5zW2ldLmN1cnNvci5leHRlbnQKKyAgICAgICAgICAgICAgICAgICAgaSArPSAyCisgICAgICAgICAgICAgICAgICAgIGlkID0gJycKKyAgICAgICAgICAgICAgICAgICAgIyBXZSBuZWVkIHRvIHNlcGFyYXRlIHRoZSBpZCBmcm9tIHRoZSByZW1haW5pbmcgb2YKKyAgICAgICAgICAgICAgICAgICAgIyB0aGUgbGluZSwgZXNwZWNpYWxseSBmb3IgdGhlIGZ1bmN0aW9uLWxpa2UgbWFjcm8uCisgICAgICAgICAgICAgICAgICAgIGlmIChpICsgMSA8IGxlbih0b2tlbnMpIGFuZCB0b2tlbnNbaSsxXS5pZCA9PSAnKCcgYW5kCisgICAgICAgICAgICAgICAgICAgICAgICAodG9rZW5zW2ldLmxvY2F0aW9uLmNvbHVtbiArIGxlbih0b2tlbnNbaV0uc3BlbGxpbmcpID09CisgICAgICAgICAgICAgICAgICAgICAgICAgdG9rZW5zW2krMV0ubG9jYXRpb24uY29sdW1uKSk6CisgICAgICAgICAgICAgICAgICAgICAgICB3aGlsZSBpIDwgbGVuKHRva2Vucyk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQgKz0gdG9rZW5zW2ldLmlkCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgdG9rZW5zW2ldLnNwZWxsaW5nID09ICcpJzoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSArPSAxCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSArPSAxCisgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICBpZCArPSB0b2tlbnNbaV0uaWQKKyAgICAgICAgICAgICAgICAgICAgICAgICMgQWR2YW5jZSB0byB0aGUgbmV4dCB0b2tlbiB0aGF0IGZvbGxvd3MgdGhlIG1hY3JvIGlkCisgICAgICAgICAgICAgICAgICAgICAgICBpICs9IDEKKworICAgICAgICAgICAgICAgICAgICAoaSwgcmV0KSA9IGNvbnN1bWVfZXh0ZW50KGksIHRva2VucywgZXh0ZW50PWV4dGVudCkKKyAgICAgICAgICAgICAgICAgICAgYmxvY2tzLmFwcGVuZChCbG9jayhyZXQsIGRpcmVjdGl2ZT1kaXJlY3RpdmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZW5vPXQubG9jYXRpb24ubGluZSwgaWRlbnRpZmllcj1pZCkpCisKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAoaSwgcmV0KSA9IGNvbnN1bWVfZXh0ZW50KGksIHRva2VucykKKyAgICAgICAgICAgICAgICAgICAgYmxvY2tzLmFwcGVuZChCbG9jayhyZXRbMjpdLCBkaXJlY3RpdmU9ZGlyZWN0aXZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVubz10LmxvY2F0aW9uLmxpbmUpKQorCisgICAgICAgICAgICBlbGlmIGN1cnNvci5raW5kID09IEN1cnNvcktpbmQuSU5DTFVTSU9OX0RJUkVDVElWRToKKyAgICAgICAgICAgICAgICBpZiBidWY6CisgICAgICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQoQmxvY2soYnVmKSkKKyAgICAgICAgICAgICAgICAgICAgYnVmID0gW10KKyAgICAgICAgICAgICAgICBkaXJlY3RpdmUgPSB0b2tlbnNbaSsxXS5pZAorICAgICAgICAgICAgICAgIChpLCByZXQpID0gY29uc3VtZV9leHRlbnQoaSwgdG9rZW5zKQorCisgICAgICAgICAgICAgICAgYmxvY2tzLmFwcGVuZChCbG9jayhyZXRbMjpdLCBkaXJlY3RpdmU9ZGlyZWN0aXZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZW5vPXQubG9jYXRpb24ubGluZSkpCisKKyAgICAgICAgICAgIGVsaWYgY3Vyc29yLmtpbmQgPT0gQ3Vyc29yS2luZC5WQVJfREVDTDoKKyAgICAgICAgICAgICAgICBpZiBidWY6CisgICAgICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQoQmxvY2soYnVmKSkKKyAgICAgICAgICAgICAgICAgICAgYnVmID0gW10KKworICAgICAgICAgICAgICAgIChpLCByZXQpID0gY29uc3VtZV9leHRlbnQoaSwgdG9rZW5zLCBkZXRlY3RfY2hhbmdlPVRydWUpCisgICAgICAgICAgICAgICAgYnVmICs9IHJldAorCisgICAgICAgICAgICBlbGlmIGN1cnNvci5raW5kID09IEN1cnNvcktpbmQuRlVOQ1RJT05fREVDTDoKKyAgICAgICAgICAgICAgICBpZiBidWY6CisgICAgICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQoQmxvY2soYnVmKSkKKyAgICAgICAgICAgICAgICAgICAgYnVmID0gW10KKworICAgICAgICAgICAgICAgIChpLCByZXQpID0gY29uc3VtZV9leHRlbnQoaSwgdG9rZW5zLCBkZXRlY3RfY2hhbmdlPVRydWUpCisgICAgICAgICAgICAgICAgYnVmICs9IHJldAogCiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHN0YXRlID0gMAotICAgICAgICAgICAgICAgIGN1cnJlbnQuYXBwZW5kKHRvaykKKyAgICAgICAgICAgICAgICAoaSwgcmV0KSA9IGNvbnN1bWVfbGluZShpLCB0b2tlbnMpCisgICAgICAgICAgICAgICAgYnVmICs9IHJldAogCi0gICAgICAgIGlmIGxlbihjdXJyZW50KSA+IDA6Ci0gICAgICAgICAgICBibG9jayA9IEJsb2NrKGN1cnJlbnQpCi0gICAgICAgICAgICBibG9ja3MuYXBwZW5kKGJsb2NrKQorICAgICAgICBpZiBidWY6CisgICAgICAgICAgICBibG9ja3MuYXBwZW5kKEJsb2NrKGJ1ZikpCisKKyAgICAgICAgIyBfcGFyc2VkPVRydWUgaW5kaWNhdGVzIGEgc3VjY2Vzc2Z1bCBwYXJzaW5nLCBhbHRob3VnaCBtYXkgcmVzdWx0IGFuCisgICAgICAgICMgZW1wdHkgQmxvY2tMaXN0LgorICAgICAgICBzZWxmLl9wYXJzZWQgPSBUcnVlCiAKICAgICAgICAgcmV0dXJuIEJsb2NrTGlzdChibG9ja3MpCiAKLSAgICBkZWYgcGFyc2Uoc2VsZix0b2t6ZXIpOgotICAgICAgICByZXR1cm4gc2VsZi5nZXRCbG9ja3MoIHRva3plciApCisgICAgZGVmIHBhcnNlKHNlbGYsIHRva3plcik6CisgICAgICAgIHJldHVybiBzZWxmLmdldEJsb2Nrcyh0b2t6ZXIpCiAKLSAgICBkZWYgcGFyc2VMaW5lcyhzZWxmLGxpbmVzKToKLSAgICAgICAgIiIicGFyc2UgYSBsaXN0IG9mIHRleHQgbGluZXMgaW50byBhIEJsb2NrTGlzdCBvYmplY3QiIiIKLSAgICAgICAgcmV0dXJuIHNlbGYuZ2V0QmxvY2tzKCBDcHBMaW5lc1Rva2VuaXplcihsaW5lcykgKQotCi0gICAgZGVmIHBhcnNlRmlsZShzZWxmLHBhdGgpOgotICAgICAgICAiIiJwYXJzZSBhIGZpbGUgaW50byBhIEJsb2NrTGlzdCBvYmplY3QiIiIKLSAgICAgICAgZmlsZSA9IG9wZW4ocGF0aCwgInJ0IikKLSAgICAgICAgcmVzdWx0ID0gc2VsZi5nZXRCbG9ja3MoIENwcEZpbGVUb2tlbml6ZXIoZmlsZSkgKQotICAgICAgICBmaWxlLmNsb3NlKCkKLSAgICAgICAgcmV0dXJuIHJlc3VsdAorICAgIGRlZiBwYXJzZUZpbGUoc2VsZiwgcGF0aCk6CisgICAgICAgIHJldHVybiBzZWxmLmdldEJsb2NrcyhDcHBGaWxlVG9rZW5pemVyKHBhdGgpKQogCiAKLWRlZiB0ZXN0X2Jsb2NrX3BhcnNpbmcobGluZXMsZXhwZWN0ZWQpOgotICAgIGJsb2NrcyA9IEJsb2NrUGFyc2VyKCkucGFyc2UoIENwcExpbmVzVG9rZW5pemVyKGxpbmVzKSApCitkZWYgdGVzdF9ibG9ja19wYXJzaW5nKGxpbmVzLCBleHBlY3RlZCk6CisgICAgIiIiSGVscGVyIG1ldGhvZCB0byB0ZXN0IHRoZSBjb3JyZWN0bmVzcyBvZiBCbG9ja1BhcnNlci5wYXJzZS4iIiIKKyAgICBibG9ja3MgPSBCbG9ja1BhcnNlcigpLnBhcnNlKENwcFN0cmluZ1Rva2VuaXplcignXG4nLmpvaW4obGluZXMpKSkKICAgICBpZiBsZW4oYmxvY2tzKSAhPSBsZW4oZXhwZWN0ZWQpOgotICAgICAgICByYWlzZSBCYWRFeHBlY3RlZFRva2VuLCAicGFyc2VyLmJ1aWxkQmxvY2tzIHJldHVybmVkICclcycgZXhwZWN0aW5nICclcyciIFwKLSAgICAgICAgICAgICAgJSAoc3RyKGJsb2NrcyksIHJlcHIoZXhwZWN0ZWQpKQorICAgICAgICByYWlzZSBCYWRFeHBlY3RlZFRva2VuKCJCbG9ja1BhcnNlci5wYXJzZSgpIHJldHVybmVkICclcycgZXhwZWN0aW5nICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJyVzJyIgJSAoc3RyKGJsb2NrcyksIHJlcHIoZXhwZWN0ZWQpKSkKICAgICBmb3IgbiBpbiByYW5nZShsZW4oYmxvY2tzKSk6CiAgICAgICAgIGlmIHN0cihibG9ja3Nbbl0pICE9IGV4cGVjdGVkW25dOgotICAgICAgICAgICAgcmFpc2UgQmFkRXhwZWN0ZWRUb2tlbiwgInBhcnNlci5idWlsZEJsb2NrcygpWyVkXSBpcyAnJXMnLCBleHBlY3RpbmcgJyVzJyIgXAotICAgICAgICAgICAgICAgICAgJSAobiwgc3RyKGJsb2Nrc1tuXSksIGV4cGVjdGVkW25dKQotICAgICNmb3IgYmxvY2sgaW4gYmxvY2tzOgotICAgICMgICAgcHJpbnQgYmxvY2sKKyAgICAgICAgICAgIHJhaXNlIEJhZEV4cGVjdGVkVG9rZW4oIkJsb2NrUGFyc2VyLnBhcnNlKClbJWRdIGlzICclcycsICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4cGVjdGluZyAnJXMnIiAlIChuLCBzdHIoYmxvY2tzW25dKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHBlY3RlZFtuXSkpCisKIAogZGVmIHRlc3RfQmxvY2tQYXJzZXIoKToKLSAgICB0ZXN0X2Jsb2NrX3BhcnNpbmcoWyIjZXJyb3IgaGVsbG8iXSxbIiNlcnJvciBoZWxsbyJdKQotICAgIHRlc3RfYmxvY2tfcGFyc2luZyhbICJmb28iLCAiIiwgImJhciIgXSwgWyAiZm9vXG5cbmJhclxuIiBdKQotICAgIHRlc3RfYmxvY2tfcGFyc2luZyhbICJmb28iLCAiICAjICAiLCAiYmFyIiBdLCBbICJmb29cbiIsImJhclxuIiBdKQotICAgIHRlc3RfYmxvY2tfcGFyc2luZyhcCi0gICAgICAgIFsgImZvbyIsICIgICAjICAiLCAiICAjICAvKiBhaGFoICovIGlmIGRlZmluZWQoX19LRVJORUxfXykgIiwgImJhciIsICIjZW5kaWYiIF0sCi0gICAgICAgIFsgImZvb1xuIiwgIiNpZmRlZiBfX0tFUk5FTF9fIiwgImJhclxuIiwgIiNlbmRpZiIgXSApCisgICAgdGVzdF9ibG9ja19wYXJzaW5nKFsiI2Vycm9yIGhlbGxvIl0sIFsiI2Vycm9yIGhlbGxvIl0pCisgICAgdGVzdF9ibG9ja19wYXJzaW5nKFsiZm9vIiwgIiIsICJiYXIiXSwgWyJmb28gYmFyIl0pCisKKyAgICAjIFdlIGN1cnJlbnRseSBjYW5ub3QgaGFuZGxlIHRoZSBmb2xsb3dpbmcgY2FzZSB3aXRoIGxpYmNsYW5nIHByb3Blcmx5LgorICAgICMgRm9ydHVuYXRlbHkgaXQgZG9lc24ndCBhcHBlYXIgaW4gY3VycmVudCBoZWFkZXJzLgorICAgICMgdGVzdF9ibG9ja19wYXJzaW5nKFsiZm9vIiwgIiAgIyAgIiwgImJhciJdLCBbImZvbyIsICJiYXIiXSkKKworICAgIHRlc3RfYmxvY2tfcGFyc2luZyhbImZvbyIsCisgICAgICAgICAgICAgICAgICAgICAgICAiICAjICAvKiBhaGFoICovIGlmIGRlZmluZWQoX19LRVJORUxfXykgLyogbW9yZSAqLyIsCisgICAgICAgICAgICAgICAgICAgICAgICAiYmFyIiwgIiNlbmRpZiJdLAorICAgICAgICAgICAgICAgICAgICAgICBbImZvbyIsICIjaWZkZWYgX19LRVJORUxfXyIsICJiYXIiLCAiI2VuZGlmIl0pCiAKIAotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwotIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIwotIyMjIyMgICAgICAgIEIgTCBPIEMgSyAgIEwgSSBTIFQgICBPIFAgVCBJIE0gSSBaIEEgVCBJIE8gTiAgICAgICAgICAgICAgICAgICAgICAjIyMjIwotIyMjIyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIwotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwotIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIyMjIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyMjIworIyMjIyMgICAgICAgIEIgTCBPIEMgSyAgIEwgSSBTIFQgICBPIFAgVCBJIE0gSSBaIEEgVCBJIE8gTiAgICAgICAgICAgICAgICAgIyMjIyMKKyMjIyMjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIyMjCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIAotZGVmICByZW1vdmVfbWFjcm9fZGVmaW5lcyggYmxvY2tzLCBleGNsdWRlZE1hY3Jvcz1zZXQoKSApOgotICAgICIiInJlbW92ZSBtYWNybyBkZWZpbml0aW9ucyBsaWtlICNkZWZpbmUgPG1hY3JvTmFtZT4gIC4uLi4iIiIKKworZGVmIHJlbW92ZV9tYWNyb19kZWZpbmVzKGJsb2NrcywgZXhjbHVkZWRNYWNyb3M9Tm9uZSk6CisgICAgIiIiUmVtb3ZlIG1hY3JvIGRlZmluaXRpb25zIGxpa2UgI2RlZmluZSA8bWFjcm9OYW1lPiAgLi4uLiIiIgorICAgIGlmIGV4Y2x1ZGVkTWFjcm9zIGlzIE5vbmU6CisgICAgICAgIGV4Y2x1ZGVkTWFjcm9zID0gc2V0KCkKICAgICByZXN1bHQgPSBbXQogICAgIGZvciBiIGluIGJsb2NrczoKICAgICAgICAgbWFjcm9OYW1lID0gYi5pc0RlZmluZSgpCi0gICAgICAgIGlmIG1hY3JvTmFtZSA9PSBOb25lIG9yIG5vdCBtYWNyb05hbWUgaW4gZXhjbHVkZWRNYWNyb3M6CisgICAgICAgIGlmIG1hY3JvTmFtZSBpcyBOb25lIG9yIG1hY3JvTmFtZSBub3QgaW4gZXhjbHVkZWRNYWNyb3M6CiAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKGIpCiAKICAgICByZXR1cm4gcmVzdWx0CiAKLWRlZiAgZmluZF9tYXRjaGluZ19lbmRpZiggYmxvY2tzLCBpICk6Ci0gICAgbiAgICAgPSBsZW4oYmxvY2tzKQorCitkZWYgZmluZF9tYXRjaGluZ19lbmRpZihibG9ja3MsIGkpOgorICAgICIiIlRyYXZlcnNlIHRoZSBibG9ja3MgdG8gZmluZCBvdXQgdGhlIG1hdGNoaW5nICNlbmRpZi4iIiIKKyAgICBuID0gbGVuKGJsb2NrcykKICAgICBkZXB0aCA9IDEKICAgICB3aGlsZSBpIDwgbjoKICAgICAgICAgaWYgYmxvY2tzW2ldLmlzRGlyZWN0aXZlKCk6Ci0gICAgICAgICAgICBkaXIgPSBibG9ja3NbaV0uZGlyZWN0aXZlCi0gICAgICAgICAgICBpZiBkaXIgaW4gWyAiaWYiLCAiaWZuZGVmIiwgImlmZGVmIiBdOgorICAgICAgICAgICAgZGlyXyA9IGJsb2Nrc1tpXS5kaXJlY3RpdmUKKyAgICAgICAgICAgIGlmIGRpcl8gaW4gWyJpZiIsICJpZm5kZWYiLCAiaWZkZWYiXToKICAgICAgICAgICAgICAgICBkZXB0aCArPSAxCi0gICAgICAgICAgICBlbGlmIGRlcHRoID09IDEgYW5kIGRpciBpbiBbICJlbHNlIiwgImVsaWYiIF06CisgICAgICAgICAgICBlbGlmIGRlcHRoID09IDEgYW5kIGRpcl8gaW4gWyJlbHNlIiwgImVsaWYiXToKICAgICAgICAgICAgICAgICByZXR1cm4gaQotICAgICAgICAgICAgZWxpZiBkaXIgPT0gImVuZGlmIjoKKyAgICAgICAgICAgIGVsaWYgZGlyXyA9PSAiZW5kaWYiOgogICAgICAgICAgICAgICAgIGRlcHRoIC09IDEKICAgICAgICAgICAgICAgICBpZiBkZXB0aCA9PSAwOgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gaQogICAgICAgICBpICs9IDEKICAgICByZXR1cm4gaQogCi1kZWYgIG9wdGltaXplX2lmMDEoIGJsb2NrcyApOgotICAgICIiInJlbW92ZSB0aGUgY29kZSBiZXR3ZWVuICNpZiAwIC4uICNlbmRpZiBpbiBhIGxpc3Qgb2YgQ3BwQmxvY2tzIiIiCisKK2RlZiBvcHRpbWl6ZV9pZjAxKGJsb2Nrcyk6CisgICAgIiIiUmVtb3ZlIHRoZSBjb2RlIGJldHdlZW4gI2lmIDAgLi4gI2VuZGlmIGluIGEgbGlzdCBvZiBDcHBCbG9ja3MuIiIiCiAgICAgaSA9IDAKICAgICBuID0gbGVuKGJsb2NrcykKICAgICByZXN1bHQgPSBbXQpAQCAtMTcxMSw2OSArMTY3Niw3NiBAQAogICAgICAgICB3aGlsZSBqIDwgbiBhbmQgbm90IGJsb2Nrc1tqXS5pc0lmKCk6CiAgICAgICAgICAgICBqICs9IDEKICAgICAgICAgaWYgaiA+IGk6Ci0gICAgICAgICAgICBEMigiYXBwZW5kaW5nIGxpbmVzICVkIHRvICVkIiAlIChibG9ja3NbaV0ubGluZW5vLCBibG9ja3Nbai0xXS5saW5lbm8pKQorICAgICAgICAgICAgbG9nZ2luZy5kZWJ1ZygiYXBwZW5kaW5nIGxpbmVzICVkIHRvICVkIiwgYmxvY2tzW2ldLmxpbmVubywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tzW2otMV0ubGluZW5vKQogICAgICAgICAgICAgcmVzdWx0ICs9IGJsb2Nrc1tpOmpdCiAgICAgICAgIGlmIGogPj0gbjoKICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgIGV4cHIgPSBibG9ja3Nbal0uZXhwcgotICAgICAgICByICAgID0gZXhwci50b0ludCgpCi0gICAgICAgIGlmIHIgPT0gTm9uZToKKyAgICAgICAgciA9IGV4cHIudG9JbnQoKQorICAgICAgICBpZiByIGlzIE5vbmU6CiAgICAgICAgICAgICByZXN1bHQuYXBwZW5kKGJsb2Nrc1tqXSkKICAgICAgICAgICAgIGkgPSBqICsgMQogICAgICAgICAgICAgY29udGludWUKIAogICAgICAgICBpZiByID09IDA6CiAgICAgICAgICAgICAjIGlmIDAgPT4gc2tpcCBldmVyeXRoaW5nIHVudGlsIHRoZSBjb3JyZXNwb25kaW5nICNlbmRpZgotICAgICAgICAgICAgaiA9IGZpbmRfbWF0Y2hpbmdfZW5kaWYoIGJsb2NrcywgaisxICkKKyAgICAgICAgICAgIGogPSBmaW5kX21hdGNoaW5nX2VuZGlmKGJsb2NrcywgaiArIDEpCiAgICAgICAgICAgICBpZiBqID49IG46CiAgICAgICAgICAgICAgICAgIyB1bnRlcm1pbmF0ZWQgI2lmIDAsIGZpbmlzaCBoZXJlCiAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgIGRpciA9IGJsb2Nrc1tqXS5kaXJlY3RpdmUKLSAgICAgICAgICAgIGlmIGRpciA9PSAiZW5kaWYiOgotICAgICAgICAgICAgICAgIEQyKCJyZW1vdmUgJ2lmIDAnIC4uICdlbmRpZicgKGxpbmVzICVkIHRvICVkKSIgJSAoYmxvY2tzW2ldLmxpbmVubywgYmxvY2tzW2pdLmxpbmVubykpCisgICAgICAgICAgICBkaXJfID0gYmxvY2tzW2pdLmRpcmVjdGl2ZQorICAgICAgICAgICAgaWYgZGlyXyA9PSAiZW5kaWYiOgorICAgICAgICAgICAgICAgIGxvZ2dpbmcuZGVidWcoInJlbW92ZSAnaWYgMCcgLi4gJ2VuZGlmJyAobGluZXMgJWQgdG8gJWQpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2Nrc1tpXS5saW5lbm8sIGJsb2Nrc1tqXS5saW5lbm8pCiAgICAgICAgICAgICAgICAgaSA9IGogKyAxCi0gICAgICAgICAgICBlbGlmIGRpciA9PSAiZWxzZSI6CisgICAgICAgICAgICBlbGlmIGRpcl8gPT0gImVsc2UiOgogICAgICAgICAgICAgICAgICMgY29udmVydCAnZWxzZScgaW50byAnaWYgMScKLSAgICAgICAgICAgICAgICBEMigiY29udmVydCAnaWYgMCcgLi4gJ2Vsc2UnIGludG8gJ2lmIDEnIChsaW5lcyAlZCB0byAlZCkiICUgKGJsb2Nrc1tpXS5saW5lbm8sIGJsb2Nrc1tqLTFdLmxpbmVubykpCisgICAgICAgICAgICAgICAgbG9nZ2luZy5kZWJ1ZygiY29udmVydCAnaWYgMCcgLi4gJ2Vsc2UnIGludG8gJ2lmIDEnIChsaW5lcyAlZCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidG8gJWQpIiwgYmxvY2tzW2ldLmxpbmVubywgYmxvY2tzW2otMV0ubGluZW5vKQogICAgICAgICAgICAgICAgIGJsb2Nrc1tqXS5kaXJlY3RpdmUgPSAiaWYiCi0gICAgICAgICAgICAgICAgYmxvY2tzW2pdLmV4cHIgICAgICA9IENwcEV4cHIoIENwcExpbmVUb2tlbml6ZXIoIjEiKS50b1Rva2VuTGlzdCgpICkKKyAgICAgICAgICAgICAgICBibG9ja3Nbal0uZXhwciA9IENwcEV4cHIoQ3BwU3RyaW5nVG9rZW5pemVyKCIxIikudG9rZW5zKQogICAgICAgICAgICAgICAgIGkgPSBqCi0gICAgICAgICAgICBlbGlmIGRpciA9PSAiZWxpZiI6CisgICAgICAgICAgICBlbGlmIGRpcl8gPT0gImVsaWYiOgogICAgICAgICAgICAgICAgICMgY29udmVydCAnZWxpZicgaW50byAnaWYnCi0gICAgICAgICAgICAgICAgRDIoImNvbnZlcnQgJ2lmIDAnIC4uICdlbGlmJyBpbnRvICdpZiciKQorICAgICAgICAgICAgICAgIGxvZ2dpbmcuZGVidWcoImNvbnZlcnQgJ2lmIDAnIC4uICdlbGlmJyBpbnRvICdpZiciKQogICAgICAgICAgICAgICAgIGJsb2Nrc1tqXS5kaXJlY3RpdmUgPSAiaWYiCiAgICAgICAgICAgICAgICAgaSA9IGoKICAgICAgICAgICAgIGNvbnRpbnVlCiAKICAgICAgICAgIyBpZiAxID0+IGZpbmQgY29ycmVzcG9uZGluZyBlbmRpZiBhbmQgcmVtb3ZlL3RyYW5zZm9ybSB0aGVtCi0gICAgICAgIGsgPSBmaW5kX21hdGNoaW5nX2VuZGlmKCBibG9ja3MsIGorMSApCisgICAgICAgIGsgPSBmaW5kX21hdGNoaW5nX2VuZGlmKGJsb2NrcywgaiArIDEpCiAgICAgICAgIGlmIGsgPj0gbjoKICAgICAgICAgICAgICMgdW50ZXJtaW5hdGVkICNpZiAxLCBmaW5pc2ggaGVyZQotICAgICAgICAgICAgRDIoInVudGVybWluYXRlZCAnaWYgMSciKQorICAgICAgICAgICAgbG9nZ2luZy5kZWJ1ZygidW50ZXJtaW5hdGVkICdpZiAxJyIpCiAgICAgICAgICAgICByZXN1bHQgKz0gYmxvY2tzW2orMTprXQogICAgICAgICAgICAgYnJlYWsKIAotICAgICAgICBkaXIgPSBibG9ja3Nba10uZGlyZWN0aXZlCi0gICAgICAgIGlmIGRpciA9PSAiZW5kaWYiOgotICAgICAgICAgICAgRDIoImNvbnZlcnQgJ2lmIDEnIC4uICdlbmRpZicgKGxpbmVzICVkIHRvICVkKSIgICUgKGJsb2Nrc1tqXS5saW5lbm8sIGJsb2Nrc1trXS5saW5lbm8pKQorICAgICAgICBkaXJfID0gYmxvY2tzW2tdLmRpcmVjdGl2ZQorICAgICAgICBpZiBkaXJfID09ICJlbmRpZiI6CisgICAgICAgICAgICBsb2dnaW5nLmRlYnVnKCJjb252ZXJ0ICdpZiAxJyAuLiAnZW5kaWYnIChsaW5lcyAlZCB0byAlZCkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja3Nbal0ubGluZW5vLCBibG9ja3Nba10ubGluZW5vKQogICAgICAgICAgICAgcmVzdWx0ICs9IG9wdGltaXplX2lmMDEoYmxvY2tzW2orMTprXSkKLSAgICAgICAgICAgIGkgICAgICAgPSBrKzEKLSAgICAgICAgZWxpZiBkaXIgPT0gImVsc2UiOgorICAgICAgICAgICAgaSA9IGsgKyAxCisgICAgICAgIGVsaWYgZGlyXyA9PSAiZWxzZSI6CiAgICAgICAgICAgICAjIGNvbnZlcnQgJ2Vsc2UnIGludG8gJ2lmIDAnCi0gICAgICAgICAgICBEMigiY29udmVydCAnaWYgMScgLi4gJ2Vsc2UnIChsaW5lcyAlZCB0byAlZCkiICAlIChibG9ja3Nbal0ubGluZW5vLCBibG9ja3Nba10ubGluZW5vKSkKKyAgICAgICAgICAgIGxvZ2dpbmcuZGVidWcoImNvbnZlcnQgJ2lmIDEnIC4uICdlbHNlJyAobGluZXMgJWQgdG8gJWQpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tzW2pdLmxpbmVubywgYmxvY2tzW2tdLmxpbmVubykKICAgICAgICAgICAgIHJlc3VsdCArPSBvcHRpbWl6ZV9pZjAxKGJsb2Nrc1tqKzE6a10pCiAgICAgICAgICAgICBibG9ja3Nba10uZGlyZWN0aXZlID0gImlmIgotICAgICAgICAgICAgYmxvY2tzW2tdLmV4cHIgICAgICA9IENwcEV4cHIoIENwcExpbmVUb2tlbml6ZXIoIjAiKS50b1Rva2VuTGlzdCgpICkKKyAgICAgICAgICAgIGJsb2Nrc1trXS5leHByID0gQ3BwRXhwcihDcHBTdHJpbmdUb2tlbml6ZXIoIjAiKS50b2tlbnMpCiAgICAgICAgICAgICBpID0gawotICAgICAgICBlbGlmIGRpciA9PSAiZWxpZiI6CisgICAgICAgIGVsaWYgZGlyXyA9PSAiZWxpZiI6CiAgICAgICAgICAgICAjIGNvbnZlcnQgJ2VsaWYnIGludG8gJ2lmIDAnCi0gICAgICAgICAgICBEMigiY29udmVydCAnaWYgMScgLi4gJ2VsaWYnIChsaW5lcyAlZCB0byAlZCkiICUgKGJsb2Nrc1tqXS5saW5lbm8sIGJsb2Nrc1trXS5saW5lbm8pKQorICAgICAgICAgICAgbG9nZ2luZy5kZWJ1ZygiY29udmVydCAnaWYgMScgLi4gJ2VsaWYnIChsaW5lcyAlZCB0byAlZCkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja3Nbal0ubGluZW5vLCBibG9ja3Nba10ubGluZW5vKQogICAgICAgICAgICAgcmVzdWx0ICs9IG9wdGltaXplX2lmMDEoYmxvY2tzW2orMTprXSkKLSAgICAgICAgICAgIGJsb2Nrc1trXS5leHByICAgICAgPSBDcHBFeHByKCBDcHBMaW5lVG9rZW5pemVyKCIwIikudG9Ub2tlbkxpc3QoKSApCisgICAgICAgICAgICBibG9ja3Nba10uZXhwciA9IENwcEV4cHIoQ3BwU3RyaW5nVG9rZW5pemVyKCIwIikudG9rZW5zKQogICAgICAgICAgICAgaSA9IGsKICAgICByZXR1cm4gcmVzdWx0CiAKLWRlZiAgdGVzdF9vcHRpbWl6ZUFsbCgpOgorCitkZWYgdGVzdF9vcHRpbWl6ZUFsbCgpOgogICAgIHRleHQgPSAiIiJcCiAjaWYgMQogI2RlZmluZSAgR09PRF8xCkBAIC0xODE2LDUwICsxNzg4LDQxIEBACiAKICAgICBleHBlY3RlZCA9ICIiIlwKICNkZWZpbmUgR09PRF8xCi0KICNkZWZpbmUgR09PRF8yCi0KICNkZWZpbmUgR09PRF8zCi0KLQogI2lmICFkZWZpbmVkKF9fR0xJQkNfXykgfHwgX19HTElCQ19fIDwgMgogI2RlZmluZSBYCiAjZW5kaWYKLQogI2lmbmRlZiBfX1NJR1JUTUFYCiAjZGVmaW5lIF9fU0lHUlRNQVggMTIzCi0jZW5kaWYKLQorI2VuZGlmXAogIiIiCiAKLSAgICBvdXQgPSBTdHJpbmdPdXRwdXQoKQotICAgIGxpbmVzID0gc3RyaW5nLnNwbGl0KHRleHQsICdcbicpCi0gICAgbGlzdCA9IEJsb2NrUGFyc2VyKCkucGFyc2UoIENwcExpbmVzVG9rZW5pemVyKGxpbmVzKSApCi0gICAgI0Rfc2V0bGV2ZWwoMikKLSAgICBsaXN0LnJlcGxhY2VUb2tlbnMoIGtlcm5lbF90b2tlbl9yZXBsYWNlbWVudHMgKQotICAgIGxpc3Qub3B0aW1pemVBbGwoIHsiX19LRVJORUxfXyI6a0NwcFVuZGVmaW5lZE1hY3JvfSApCi0gICAgbGlzdC53cml0ZShvdXQpCisgICAgb3V0ID0gdXRpbHMuU3RyaW5nT3V0cHV0KCkKKyAgICBibG9ja3MgPSBCbG9ja1BhcnNlcigpLnBhcnNlKENwcFN0cmluZ1Rva2VuaXplcih0ZXh0KSkKKyAgICBibG9ja3MucmVwbGFjZVRva2VucyhrZXJuZWxfdG9rZW5fcmVwbGFjZW1lbnRzKQorICAgIGJsb2Nrcy5vcHRpbWl6ZUFsbCh7Il9fS0VSTkVMX18iOiBrQ3BwVW5kZWZpbmVkTWFjcm99KQorICAgIGJsb2Nrcy53cml0ZShvdXQpCiAgICAgaWYgb3V0LmdldCgpICE9IGV4cGVjdGVkOgogICAgICAgICBwcmludCAiW0ZBSUxdOiBtYWNybyBvcHRpbWl6YXRpb24gZmFpbGVkXG4iCiAgICAgICAgIHByaW50ICI8PDw8IGV4cGVjdGluZyAnIiwKICAgICAgICAgcHJpbnQgZXhwZWN0ZWQsCi0gICAgICAgIHByaW50ICInXG4+Pj4+IHJlc3VsdCAnIgorICAgICAgICBwcmludCAiJ1xuPj4+PiByZXN1bHQgJyIsCiAgICAgICAgIHByaW50IG91dC5nZXQoKSwKICAgICAgICAgcHJpbnQgIidcbi0tLS0iCiAgICAgICAgIGdsb2JhbCBmYWlsdXJlX2NvdW50CiAgICAgICAgIGZhaWx1cmVfY291bnQgKz0gMQogCiAKLSMgLS0gQWx3YXlzIHJ1biB0aGUgdW5pdCB0ZXN0cy4KLQogZGVmIHJ1blVuaXRUZXN0cygpOgotICAgICIiInJ1biBhbGwgdW5pdCB0ZXN0cyBmb3IgdGhpcyBwcm9ncmFtIiIiCisgICAgIiIiQWx3YXlzIHJ1biBhbGwgdW5pdCB0ZXN0cyBmb3IgdGhpcyBwcm9ncmFtLiIiIgogICAgIHRlc3RfQ3BwVG9rZW5pemVyKCkKICAgICB0ZXN0X0NwcEV4cHIoKQogICAgIHRlc3Rfb3B0aW1pemVBbGwoKQogICAgIHRlc3RfQmxvY2tQYXJzZXIoKQogCisKIGZhaWx1cmVfY291bnQgPSAwCiBydW5Vbml0VGVzdHMoKQogaWYgZmFpbHVyZV9jb3VudCAhPSAwOgotICAgIHN5cy5leGl0KDEpCisgICAgdXRpbHMucGFuaWMoIlVuaXQgdGVzdHMgZmFpbGVkIGluIGNwcC5weS5cbiIpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC90b29scy9kZWZhdWx0cy5weSBiL2xpYmMva2VybmVsL3Rvb2xzL2RlZmF1bHRzLnB5CmluZGV4IDJlZmQ0NTUuLjhhYmE5OTggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3Rvb2xzL2RlZmF1bHRzLnB5CisrKyBiL2xpYmMva2VybmVsL3Rvb2xzL2RlZmF1bHRzLnB5CkBAIC0xMTgsMTAgKzExOCw4IEBACiAjIHRoZSBnZW5lcmF0ZWQgZmlsZXMuCiAjCiBrZXJuZWxfaWdub3JlZF9tYWNyb3MgPSBzZXQoCi0gICAgICAgIFsgIk1BWEhPU1ROQU1FTEVOIiwgICMgZm9yIHNvbWUgcmVhc29uLCBMaW51eCBkZWZpbmVzIGl0IHRvIDY0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgd2hpbGUgbW9zdCBvZiB0aGUgQlNEIGNvZGUgZXhwZWN0cyB0aGlzIHRvIGJlIDI1NgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIHNvIGlnbm9yZSB0aGUga2VybmVsLXByb3ZpZGVkIGRlZmluaXRpb24gYW5kCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgZGVmaW5lIGl0IGluIHRoZSBCaW9uaWMgaGVhZGVycyBpbnN0ZWFkCisgICAgICAgIFsKKwogICAgICAgICBdCiAgICAgKQogCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC90b29scy9nZW5lcmF0ZV91YXBpX2hlYWRlcnMuc2ggYi9saWJjL2tlcm5lbC90b29scy9nZW5lcmF0ZV91YXBpX2hlYWRlcnMuc2gKaW5kZXggMzg2MTU5YS4uOTBiYTBlZCAxMDA3NTUKLS0tIGEvbGliYy9rZXJuZWwvdG9vbHMvZ2VuZXJhdGVfdWFwaV9oZWFkZXJzLnNoCisrKyBiL2xpYmMva2VybmVsL3Rvb2xzL2dlbmVyYXRlX3VhcGlfaGVhZGVycy5zaApAQCAtMTU5LDcgKzE1OSw3IEBACiAgIGNkICIke1RNUERJUn0iCiAgIGVjaG8gIkZldGNoaW5nIGFuZHJvaWQga2VybmVsIHNvdXJjZSAke0tFUk5FTF9WRVJTSU9OfSIKICAgZ2l0IGNsb25lIGh0dHBzOi8vYW5kcm9pZC5nb29nbGVzb3VyY2UuY29tL2tlcm5lbC9jb21tb24uZ2l0Ci0gIGNkICIke0NPTU1PTn0iCisgIGNkICIke3NyY19kaXJ9IgogICBnaXQgY2hlY2tvdXQgIiR7S0VSTkVMX1ZFUlNJT059IgogICBLRVJORUxfRElSPSIke1RNUERJUn0iCiBlbGlmIFtbICIke0tFUk5FTF9ESVJ9IiA9PSAiIiBdXTsgdGhlbgpAQCAtMTgwLDYgKzE4MCw4IEBACiAgIGRvbmUKIGZpCiAKK2NkICR7QU5EUk9JRF9CVUlMRF9UT1B9CisKICMgQ29weSBhbGwgb2YgdGhlIGluY2x1ZGUvdWFwaSBmaWxlcyB0byB0aGUga2VybmVsIGhlYWRlcnMgdWFwaSBkaXJlY3RvcnkuCiBjb3B5X2hkcnMgIiR7S0VSTkVMX0RJUn0vJHtzcmNfZGlyfS9pbmNsdWRlL3VhcGkiICIke0FORFJPSURfS0VSTkVMX0RJUn0vdWFwaSIKIApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weSBiL2xpYmMva2VybmVsL3Rvb2xzL3VwZGF0ZV9hbGwucHkKaW5kZXggNzM4NjJkYS4uZjQ1ZDRlMCAxMDA3NTUKLS0tIGEvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorKysgYi9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CkBAIC00MCwxMiArNDAsNyBAQAogICAgIGlmIG5vdCBvcy5wYXRoLmlzZGlyKG9yaWdpbmFsX2Rpcik6CiAgICAgICAgIHBhbmljKCAiTWlzc2luZyBkaXJlY3RvcnksIHBsZWFzZSBzcGVjaWZ5IG9uZSB0aHJvdWdoIGNvbW1hbmQtbGluZTogJXNcbiIgJSBvcmlnaW5hbF9kaXIgKQogCi0jIEZpeG1lOiBUaGlzIHNob3VsZCBiZSByZW1vdmVkIGFmdGVyIG5leHQgcmVsZWFzZS4KLSMgRG8gbm90IHVwZGF0ZSBpb24uaCBpb25fdGVzdC5oIHVudGlsIGFmdGVyIG5leHQgcmVsZWFzZSBpbiBhb3NwLgotc291cmNlID0gc3VicHJvY2Vzcy5jaGVja19vdXRwdXQoJ2dpdCByZW1vdGUgc2hvdycsIHNoZWxsPVRydWUpLnN0cmlwKCkKIHNraXBfaW9uID0gRmFsc2UKLWlmIHNvdXJjZSA9PSAiYW9zcCI6Ci0gICAgc2tpcF9pb24gPSBUcnVlCiAKICMgZmluZCBhbGwgc291cmNlIGZpbGVzIGluICdvcmlnaW5hbCcKICMKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3Rvb2xzL3V0aWxzLnB5IGIvbGliYy9rZXJuZWwvdG9vbHMvdXRpbHMucHkKaW5kZXggMDQ3OGU5My4uZTVhMzEwZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdG9vbHMvdXRpbHMucHkKKysrIGIvbGliYy9rZXJuZWwvdG9vbHMvdXRpbHMucHkKQEAgLTEsNTkgKzEsMjkgQEAKICMgY29tbW9uIHB5dGhvbiB1dGlsaXR5IHJvdXRpbmVzIGZvciB0aGUgQmlvbmljIHRvb2wgc2NyaXB0cwogCi1pbXBvcnQgc3lzLCBvcywgY29tbWFuZHMsIHN0cmluZywgY29tbWFuZHMKK2ltcG9ydCBjb21tYW5kcworaW1wb3J0IGxvZ2dpbmcKK2ltcG9ydCBvcworaW1wb3J0IHN0cmluZworaW1wb3J0IHN5cwogCi0jIGJhc2ljIGRlYnVnZ2luZyB0cmFjZSBzdXBwb3J0Ci0jIGNhbGwgRF9zZXRsZXZlbCB0byBzZXQgdGhlIHZlcmJvc2l0eSBsZXZlbAotIyBhbmQgRCgpLCBEMigpLCBEMygpLCBENCgpIHRvIGFkZCB0cmFjZXMKLSMKLXZlcmJvc2UgPSAwCiAKIGRlZiBwYW5pYyhtc2cpOgotICAgIHN5cy5zdGRlcnIud3JpdGUoIGZpbmRfcHJvZ3JhbV9uYW1lKCkgKyAiOiBlcnJvcjogIiApCi0gICAgc3lzLnN0ZGVyci53cml0ZSggbXNnICkKKyAgICBzeXMuc3RkZXJyLndyaXRlKG9zLnBhdGguYmFzZW5hbWUoc3lzLmFyZ3ZbMF0pICsgIjogZXJyb3I6ICIpCisgICAgc3lzLnN0ZGVyci53cml0ZShtc2cpCiAgICAgc3lzLmV4aXQoMSkKIAotZGVmIEQobXNnKToKLSAgICBnbG9iYWwgdmVyYm9zZQotICAgIGlmIHZlcmJvc2UgPiAwOgotICAgICAgICBwcmludCBtc2cKLQotZGVmIEQyKG1zZyk6Ci0gICAgZ2xvYmFsIHZlcmJvc2UKLSAgICBpZiB2ZXJib3NlID49IDI6Ci0gICAgICAgIHByaW50IG1zZwotCi1kZWYgRDMobXNnKToKLSAgICBnbG9iYWwgdmVyYm9zZQotICAgIGlmIHZlcmJvc2UgPj0gMzoKLSAgICAgICAgcHJpbnQgbXNnCi0KLWRlZiBENChtc2cpOgotICAgIGdsb2JhbCB2ZXJib3NlCi0gICAgaWYgdmVyYm9zZSA+PSA0OgotICAgICAgICBwcmludCBtc2cKLQotZGVmIERfc2V0bGV2ZWwobGV2ZWwpOgotICAgIGdsb2JhbCB2ZXJib3NlCi0gICAgdmVyYm9zZSA9IGxldmVsCi0KLQotIyAgb3RoZXIgc3R1ZmYKLSMKLSMKLWRlZiBmaW5kX3Byb2dyYW1fbmFtZSgpOgotICAgIHJldHVybiBvcy5wYXRoLmJhc2VuYW1lKHN5cy5hcmd2WzBdKQogCiBkZWYgZmluZF9wcm9ncmFtX2RpcigpOgogICAgIHJldHVybiBvcy5wYXRoLmRpcm5hbWUoc3lzLmFyZ3ZbMF0pCiAKKwogY2xhc3MgU3RyaW5nT3V0cHV0OgogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKICAgICAgICAgc2VsZi5saW5lID0gIiIKIAogICAgIGRlZiB3cml0ZShzZWxmLG1zZyk6CiAgICAgICAgIHNlbGYubGluZSArPSBtc2cKLSAgICAgICAgRDIoIndyaXRlICclcyciICUgbXNnKQorICAgICAgICBsb2dnaW5nLmRlYnVnKCJ3cml0ZSAnJXMnIiAlIG1zZykKIAogICAgIGRlZiBnZXQoc2VsZik6CiAgICAgICAgIHJldHVybiBzZWxmLmxpbmUKQEAgLTc2LDQ3ICs0Niw2IEBACiAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICBvcy5ta2RpcihkaXIpCiAKLWRlZiB3YWxrX3NvdXJjZV9maWxlcyhwYXRocyxjYWxsYmFjayxhcmdzLGV4Y2x1ZGVzPVtdKToKLSAgICAiIiJyZWN1cnNpdmVseSB3YWxrIGEgbGlzdCBvZiBwYXRocyBhbmQgZmlsZXMsIG9ubHkga2VlcGluZyB0aGUgc291cmNlIGZpbGVzIGluIGRpcmVjdG9yaWVzIiIiCi0gICAgZm9yIHBhdGggaW4gcGF0aHM6Ci0gICAgICAgIGlmIGxlbihwYXRoKSA+IDAgYW5kIHBhdGhbMF0gPT0gJ0AnOgotICAgICAgICAgICAgIyB0aGlzIGlzIHRoZSBuYW1lIG9mIGFub3RoZXIgZmlsZSwgaW5jbHVkZSBpdCBhbmQgcGFyc2UgaXQKLSAgICAgICAgICAgIHBhdGggPSBwYXRoWzE6XQotICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMocGF0aCk6Ci0gICAgICAgICAgICAgICAgZm9yIGxpbmUgaW4gb3BlbihwYXRoKToKLSAgICAgICAgICAgICAgICAgICAgaWYgbGVuKGxpbmUpID4gMCBhbmQgbGluZVstMV0gPT0gJ1xuJzoKLSAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUgPSBsaW5lWzotMV0KLSAgICAgICAgICAgICAgICAgICAgd2Fsa19zb3VyY2VfZmlsZXMoW2xpbmVdLGNhbGxiYWNrLGFyZ3MsZXhjbHVkZXMpCi0gICAgICAgICAgICBjb250aW51ZQotICAgICAgICBpZiBub3Qgb3MucGF0aC5pc2RpcihwYXRoKToKLSAgICAgICAgICAgIGNhbGxiYWNrKHBhdGgsYXJncykKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIGZvciByb290LCBkaXJzLCBmaWxlcyBpbiBvcy53YWxrKHBhdGgpOgotICAgICAgICAgICAgICAgICNwcmludCAidy0tICVzIChleDogJXMpIiAlIChyZXByKChyb290LGRpcnMpKSwgcmVwcihleGNsdWRlcykpCi0gICAgICAgICAgICAgICAgaWYgbGVuKGV4Y2x1ZGVzKToKLSAgICAgICAgICAgICAgICAgICAgZm9yIGQgaW4gZGlyc1s6XToKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguam9pbihyb290LGQpIGluIGV4Y2x1ZGVzOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcnMucmVtb3ZlKGQpCi0gICAgICAgICAgICAgICAgZm9yIGYgaW4gZmlsZXM6Ci0gICAgICAgICAgICAgICAgICAgIHIsIGV4dCA9IG9zLnBhdGguc3BsaXRleHQoZikKLSAgICAgICAgICAgICAgICAgICAgaWYgZXh0IGluIFsgIi5oIiwgIi5jIiwgIi5jcHAiLCAiLlMiIF06Ci0gICAgICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayggIiVzLyVzIiAlIChyb290LGYpLCBhcmdzICkKLQotZGVmIGNsZWFudXBfZGlyKHBhdGgpOgotICAgICIiImNyZWF0ZSBhIGRpcmVjdG9yeSBpZiBuZWVkZWQsIGFuZCBlbnN1cmUgdGhhdCBpdCBpcyB0b3RhbGx5IGVtcHR5Ci0gICAgICAgYnkgcmVtb3ZpbmcgYW55IGV4aXN0aW5nIGNvbnRlbnQgaW4gaXQiIiIKLSAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMocGF0aCk6Ci0gICAgICAgIG9zLm1rZGlyKHBhdGgpCi0gICAgZWxzZToKLSAgICAgICAgZm9yIHJvb3QsIGRpcnMsIGZpbGVzIGluIG9zLndhbGsocGF0aCwgdG9wZG93bj1GYWxzZSk6Ci0gICAgICAgICAgICBpZiByb290LmVuZHN3aXRoKCJrZXJuZWxfaGVhZGVycy8iKToKLSAgICAgICAgICAgICAgICAjIHNraXAgJ2tlcm5lbF9oZWFkZXJzJwotICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgICAgICBmb3IgbmFtZSBpbiBmaWxlczoKLSAgICAgICAgICAgICAgICBvcy5yZW1vdmUob3MucGF0aC5qb2luKHJvb3QsIG5hbWUpKQotICAgICAgICAgICAgZm9yIG5hbWUgaW4gZGlyczoKLSAgICAgICAgICAgICAgICBvcy5ybWRpcihvcy5wYXRoLmpvaW4ocm9vdCwgbmFtZSkpCi0KIAogY2xhc3MgQmF0Y2hGaWxlVXBkYXRlcjoKICAgICAiIiJhIGNsYXNzIHVzZWQgdG8gZWRpdCBzZXZlcmFsIGZpbGVzIGF0IG9uY2UiIiIKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vYS5vdXQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vYS5vdXQuaAppbmRleCA1NGIzMGFjLi4zZDUxNTA2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL2Eub3V0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9hLm91dC5oCkBAIC0yMSwyOCArMjEsMjYgQEAKICNpbmNsdWRlIDxsaW51eC9wZXJzb25hbGl0eS5oPgogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IGV4ZWMKLXsKLSBfX3UzMiBhX2luZm87Ci0gX191MzIgYV90ZXh0Oworc3RydWN0IGV4ZWMgeworICBfX3UzMiBhX2luZm87CisgIF9fdTMyIGFfdGV4dDsKKyAgX191MzIgYV9kYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhX2RhdGE7Ci0gX191MzIgYV9ic3M7Ci0gX191MzIgYV9zeW1zOwotIF9fdTMyIGFfZW50cnk7CisgIF9fdTMyIGFfYnNzOworICBfX3UzMiBhX3N5bXM7CisgIF9fdTMyIGFfZW50cnk7CisgIF9fdTMyIGFfdHJzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhX3Ryc2l6ZTsKLSBfX3UzMiBhX2Ryc2l6ZTsKKyAgX191MzIgYV9kcnNpemU7CiB9OwogI2RlZmluZSBOX1RYVEFERFIoYSkgKDB4MDAwMDgwMDApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOX1RSU0laRShhKSAoKGEpLmFfdHJzaXplKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTl9EUlNJWkUoYSkgKChhKS5hX2Ryc2l6ZSkKICNkZWZpbmUgTl9TWU1TSVpFKGEpICgoYSkuYV9zeW1zKQogI2RlZmluZSBNX0FSTSAxMDMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZuZGVmIExJQlJBUllfU1RBUlRfVEVYVAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTElCUkFSWV9TVEFSVF9URVhUICgweDAwYzAwMDAwKQogI2VuZGlmCiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL2h3Y2FwLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL2h3Y2FwLmgKaW5kZXggZTcwZjNiOC4uMjVkYzkzMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9od2NhcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vaHdjYXAuaApAQCAtNDcsNCArNDcsMTAgQEAKICNkZWZpbmUgSFdDQVBfTFBBRSAoMSA8PCAyMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEhXQ0FQX0VWVFNUUk0gKDEgPDwgMjEpCisjZGVmaW5lIEhXQ0FQMl9BRVMgKDEgPDwgMCkKKyNkZWZpbmUgSFdDQVAyX1BNVUxMICgxIDw8IDEpCisjZGVmaW5lIEhXQ0FQMl9TSEExICgxIDw8IDIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBIV0NBUDJfU0hBMiAoMSA8PCAzKQorI2RlZmluZSBIV0NBUDJfQ1JDMzIgKDEgPDwgNCkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9rdm0uaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20va3ZtLmgKaW5kZXggMmI1YTE3ZS4uYzM3ZDgwOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9rdm0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL2t2bS5oCkBAIC0xOSwxMzYgKzE5LDE0MSBAQAogI2lmbmRlZiBfX0FSTV9LVk1fSF9fCiAjZGVmaW5lIF9fQVJNX0tWTV9IX18KICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgotI2luY2x1ZGUgPGFzbS9wdHJhY2UuaD4KKyNpbmNsdWRlIDxsaW51eC9wc2NpLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2luY2x1ZGUgPGFzbS9wdHJhY2UuaD4KICNkZWZpbmUgX19LVk1fSEFWRV9HVUVTVF9ERUJVRwogI2RlZmluZSBfX0tWTV9IQVZFX0lSUV9MSU5FCi0jZGVmaW5lIEtWTV9SRUdfU0laRShpZCkgICAoMVUgPDwgKCgoaWQpICYgS1ZNX1JFR19TSVpFX01BU0spID4+IEtWTV9SRUdfU0laRV9TSElGVCkpCi0jZGVmaW5lIEtWTV9BUk1fU1ZDX3NwIHN2Y19yZWdzWzBdCisjZGVmaW5lIF9fS1ZNX0hBVkVfUkVBRE9OTFlfTUVNCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fUkVHX1NJWkUoaWQpICgxVSA8PCAoKChpZCkgJiBLVk1fUkVHX1NJWkVfTUFTSykgPj4gS1ZNX1JFR19TSVpFX1NISUZUKSkKKyNkZWZpbmUgS1ZNX0FSTV9TVkNfc3Agc3ZjX3JlZ3NbMF0KICNkZWZpbmUgS1ZNX0FSTV9TVkNfbHIgc3ZjX3JlZ3NbMV0KICNkZWZpbmUgS1ZNX0FSTV9TVkNfc3BzciBzdmNfcmVnc1syXQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9BQlRfc3AgYWJ0X3JlZ3NbMF0KICNkZWZpbmUgS1ZNX0FSTV9BQlRfbHIgYWJ0X3JlZ3NbMV0KLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fQUJUX3Nwc3IgYWJ0X3JlZ3NbMl0KICNkZWZpbmUgS1ZNX0FSTV9VTkRfc3AgdW5kX3JlZ3NbMF0KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fVU5EX2xyIHVuZF9yZWdzWzFdCiAjZGVmaW5lIEtWTV9BUk1fVU5EX3Nwc3IgdW5kX3JlZ3NbMl0KLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fSVJRX3NwIGlycV9yZWdzWzBdCiAjZGVmaW5lIEtWTV9BUk1fSVJRX2xyIGlycV9yZWdzWzFdCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQVJNX0lSUV9zcHNyIGlycV9yZWdzWzJdCiAjZGVmaW5lIEtWTV9BUk1fRklRX3I4IGZpcV9yZWdzWzBdCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQVJNX0ZJUV9yOSBmaXFfcmVnc1sxXQogI2RlZmluZSBLVk1fQVJNX0ZJUV9yMTAgZmlxX3JlZ3NbMl0KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fRklRX2ZwIGZpcV9yZWdzWzNdCiAjZGVmaW5lIEtWTV9BUk1fRklRX2lwIGZpcV9yZWdzWzRdCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQVJNX0ZJUV9zcCBmaXFfcmVnc1s1XQogI2RlZmluZSBLVk1fQVJNX0ZJUV9sciBmaXFfcmVnc1s2XQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9GSVFfc3BzciBmaXFfcmVnc1s3XQogc3RydWN0IGt2bV9yZWdzIHsKKyAgc3RydWN0IHB0X3JlZ3MgdXNyX3JlZ3M7CisgIHVuc2lnbmVkIGxvbmcgc3ZjX3JlZ3NbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBwdF9yZWdzIHVzcl9yZWdzOwotIHVuc2lnbmVkIGxvbmcgc3ZjX3JlZ3NbM107Ci0gdW5zaWduZWQgbG9uZyBhYnRfcmVnc1szXTsKLSB1bnNpZ25lZCBsb25nIHVuZF9yZWdzWzNdOworICB1bnNpZ25lZCBsb25nIGFidF9yZWdzWzNdOworICB1bnNpZ25lZCBsb25nIHVuZF9yZWdzWzNdOworICB1bnNpZ25lZCBsb25nIGlycV9yZWdzWzNdOworICB1bnNpZ25lZCBsb25nIGZpcV9yZWdzWzhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGlycV9yZWdzWzNdOwotIHVuc2lnbmVkIGxvbmcgZmlxX3JlZ3NbOF07CiB9OwogI2RlZmluZSBLVk1fQVJNX1RBUkdFVF9DT1JURVhfQTE1IDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fVEFSR0VUX0NPUlRFWF9BNyAxCiAjZGVmaW5lIEtWTV9BUk1fTlVNX1RBUkdFVFMgMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9ERVZJQ0VfVFlQRV9TSElGVCAwCiAjZGVmaW5lIEtWTV9BUk1fREVWSUNFX1RZUEVfTUFTSyAoMHhmZmZmIDw8IEtWTV9BUk1fREVWSUNFX1RZUEVfU0hJRlQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQVJNX0RFVklDRV9JRF9TSElGVCAxNgogI2RlZmluZSBLVk1fQVJNX0RFVklDRV9JRF9NQVNLICgweGZmZmYgPDwgS1ZNX0FSTV9ERVZJQ0VfSURfU0hJRlQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQVJNX0RFVklDRV9WR0lDX1YyIDAKICNkZWZpbmUgS1ZNX1ZHSUNfVjJfQUREUl9UWVBFX0RJU1QgMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1ZHSUNfVjJfQUREUl9UWVBFX0NQVSAxCiAjZGVmaW5lIEtWTV9WR0lDX1YyX0RJU1RfU0laRSAweDEwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9WR0lDX1YyX0NQVV9TSVpFIDB4MjAwMAogI2RlZmluZSBLVk1fQVJNX1ZDUFVfUE9XRVJfT0ZGIDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9BUk1fVkNQVV9QU0NJXzBfMiAxCiBzdHJ1Y3Qga3ZtX3ZjcHVfaW5pdCB7Ci0gX191MzIgdGFyZ2V0OwotIF9fdTMyIGZlYXR1cmVzWzddOwotfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHRhcmdldDsKKyAgX191MzIgZmVhdHVyZXNbN107Cit9Owogc3RydWN0IGt2bV9zcmVncyB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBrdm1fZnB1IHsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9ndWVzdF9kZWJ1Z19hcmNoIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGt2bV9kZWJ1Z19leGl0X2FyY2ggewogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX3N5bmNfcmVncyB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBrdm1fYXJjaF9tZW1vcnlfc2xvdCB7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1JFR19BUk1fQ09QUk9DX01BU0sgMHgwMDAwMDAwMDBGRkYwMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUkVHX0FSTV9DT1BST0NfU0hJRlQgMTYKICNkZWZpbmUgS1ZNX1JFR19BUk1fMzJfT1BDMl9NQVNLIDB4MDAwMDAwMDAwMDAwMDAwNwogI2RlZmluZSBLVk1fUkVHX0FSTV8zMl9PUEMyX1NISUZUIDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9SRUdfQVJNX09QQzFfTUFTSyAweDAwMDAwMDAwMDAwMDAwNzgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9SRUdfQVJNX09QQzFfU0hJRlQgMwogI2RlZmluZSBLVk1fUkVHX0FSTV9DUk1fTUFTSyAweDAwMDAwMDAwMDAwMDA3ODAKICNkZWZpbmUgS1ZNX1JFR19BUk1fQ1JNX1NISUZUIDcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9SRUdfQVJNXzMyX0NSTl9NQVNLIDB4MDAwMDAwMDAwMDAwNzgwMAotI2RlZmluZSBLVk1fUkVHX0FSTV8zMl9DUk5fU0hJRlQgMTEKLSNkZWZpbmUgQVJNX0NQMTVfUkVHX1NISUZUX01BU0soeCxuKSAgICgoKHgpIDw8IEtWTV9SRUdfQVJNXyAjIyBuICMjIF9TSElGVCkgJiBLVk1fUkVHX0FSTV8gIyMgbiAjIyBfTUFTSykKLSNkZWZpbmUgX19BUk1fQ1AxNV9SRUcob3AxLGNybixjcm0sb3AyKSAgIChLVk1fUkVHX0FSTSB8ICgxNSA8PCBLVk1fUkVHX0FSTV9DT1BST0NfU0hJRlQpIHwgICBBUk1fQ1AxNV9SRUdfU0hJRlRfTUFTSyhvcDEsIE9QQzEpIHwgICBBUk1fQ1AxNV9SRUdfU0hJRlRfTUFTSyhjcm4sIDMyX0NSTikgfCAgIEFSTV9DUDE1X1JFR19TSElGVF9NQVNLKGNybSwgQ1JNKSB8ICAgQVJNX0NQMTVfUkVHX1NISUZUX01BU0sob3AyLCAzMl9PUEMyKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9SRUdfQVJNXzMyX0NSTl9TSElGVCAxMQorI2RlZmluZSBBUk1fQ1AxNV9SRUdfU0hJRlRfTUFTSyh4LG4pICgoKHgpIDw8IEtWTV9SRUdfQVJNXyAjI24gIyNfU0hJRlQpICYgS1ZNX1JFR19BUk1fICMjbiAjI19NQVNLKQorI2RlZmluZSBfX0FSTV9DUDE1X1JFRyhvcDEsY3JuLGNybSxvcDIpIChLVk1fUkVHX0FSTSB8ICgxNSA8PCBLVk1fUkVHX0FSTV9DT1BST0NfU0hJRlQpIHwgQVJNX0NQMTVfUkVHX1NISUZUX01BU0sob3AxLCBPUEMxKSB8IEFSTV9DUDE1X1JFR19TSElGVF9NQVNLKGNybiwgMzJfQ1JOKSB8IEFSTV9DUDE1X1JFR19TSElGVF9NQVNLKGNybSwgQ1JNKSB8IEFSTV9DUDE1X1JFR19TSElGVF9NQVNLKG9wMiwgMzJfT1BDMikpCiAjZGVmaW5lIEFSTV9DUDE1X1JFRzMyKC4uLikgKF9fQVJNX0NQMTVfUkVHKF9fVkFfQVJHU19fKSB8IEtWTV9SRUdfU0laRV9VMzIpCi0jZGVmaW5lIF9fQVJNX0NQMTVfUkVHNjQob3AxLGNybSkgICAoX19BUk1fQ1AxNV9SRUcob3AxLCAwLCBjcm0sIDApIHwgS1ZNX1JFR19TSVpFX1U2NCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fQVJNX0NQMTVfUkVHNjQob3AxLGNybSkgKF9fQVJNX0NQMTVfUkVHKG9wMSwgMCwgY3JtLCAwKSB8IEtWTV9SRUdfU0laRV9VNjQpCiAjZGVmaW5lIEFSTV9DUDE1X1JFRzY0KC4uLikgX19BUk1fQ1AxNV9SRUc2NChfX1ZBX0FSR1NfXykKICNkZWZpbmUgS1ZNX1JFR19BUk1fVElNRVJfQ1RMIEFSTV9DUDE1X1JFRzMyKDAsIDE0LCAzLCAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1JFR19BUk1fVElNRVJfQ05UIEFSTV9DUDE1X1JFRzY0KDEsIDE0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1JFR19BUk1fVElNRVJfQ1ZBTCBBUk1fQ1AxNV9SRUc2NCgzLCAxNCkKICNkZWZpbmUgS1ZNX1JFR19BUk1fQ09SRSAoMHgwMDEwIDw8IEtWTV9SRUdfQVJNX0NPUFJPQ19TSElGVCkKICNkZWZpbmUgS1ZNX1JFR19BUk1fQ09SRV9SRUcobmFtZSkgKG9mZnNldG9mKHN0cnVjdCBrdm1fcmVncywgbmFtZSkgLyA0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1JFR19BUk1fREVNVVggKDB4MDAxMSA8PCBLVk1fUkVHX0FSTV9DT1BST0NfU0hJRlQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUkVHX0FSTV9ERU1VWF9JRF9NQVNLIDB4MDAwMDAwMDAwMDAwRkYwMAogI2RlZmluZSBLVk1fUkVHX0FSTV9ERU1VWF9JRF9TSElGVCA4CiAjZGVmaW5lIEtWTV9SRUdfQVJNX0RFTVVYX0lEX0NDU0lEUiAoMHgwMCA8PCBLVk1fUkVHX0FSTV9ERU1VWF9JRF9TSElGVCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9SRUdfQVJNX0RFTVVYX1ZBTF9NQVNLIDB4MDAwMDAwMDAwMDAwMDBGRgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1JFR19BUk1fREVNVVhfVkFMX1NISUZUIDAKICNkZWZpbmUgS1ZNX1JFR19BUk1fVkZQICgweDAwMTIgPDwgS1ZNX1JFR19BUk1fQ09QUk9DX1NISUZUKQogI2RlZmluZSBLVk1fUkVHX0FSTV9WRlBfTUFTSyAweDAwMDAwMDAwMDAwMEZGRkYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9SRUdfQVJNX1ZGUF9CQVNFX1JFRyAweDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9SRUdfQVJNX1ZGUF9GUFNJRCAweDEwMDAKICNkZWZpbmUgS1ZNX1JFR19BUk1fVkZQX0ZQU0NSIDB4MTAwMQogI2RlZmluZSBLVk1fUkVHX0FSTV9WRlBfTVZGUjEgMHgxMDA2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUkVHX0FSTV9WRlBfTVZGUjAgMHgxMDA3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUkVHX0FSTV9WRlBfRlBFWEMgMHgxMDA4CiAjZGVmaW5lIEtWTV9SRUdfQVJNX1ZGUF9GUElOU1QgMHgxMDA5CiAjZGVmaW5lIEtWTV9SRUdfQVJNX1ZGUF9GUElOU1QyIDB4MTAwQQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0RFVl9BUk1fVkdJQ19HUlBfQUREUiAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fREVWX0FSTV9WR0lDX0dSUF9ESVNUX1JFR1MgMQogI2RlZmluZSBLVk1fREVWX0FSTV9WR0lDX0dSUF9DUFVfUkVHUyAyCiAjZGVmaW5lIEtWTV9ERVZfQVJNX1ZHSUNfQ1BVSURfU0hJRlQgMzIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9ERVZfQVJNX1ZHSUNfQ1BVSURfTUFTSyAoMHhmZlVMTCA8PCBLVk1fREVWX0FSTV9WR0lDX0NQVUlEX1NISUZUKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0RFVl9BUk1fVkdJQ19PRkZTRVRfU0hJRlQgMAogI2RlZmluZSBLVk1fREVWX0FSTV9WR0lDX09GRlNFVF9NQVNLICgweGZmZmZmZmZmVUxMIDw8IEtWTV9ERVZfQVJNX1ZHSUNfT0ZGU0VUX1NISUZUKQorI2RlZmluZSBLVk1fREVWX0FSTV9WR0lDX0dSUF9OUl9JUlFTIDMKICNkZWZpbmUgS1ZNX0FSTV9JUlFfVFlQRV9TSElGVCAyNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9JUlFfVFlQRV9NQVNLIDB4ZmYKQEAgLTE3Miw5ICsxNzcsOSBAQAogI2RlZmluZSBLVk1fUFNDSV9GTl9DUFVfT04gS1ZNX1BTQ0lfRk4oMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9QU0NJX0ZOX01JR1JBVEUgS1ZNX1BTQ0lfRk4oMykKLSNkZWZpbmUgS1ZNX1BTQ0lfUkVUX1NVQ0NFU1MgMAotI2RlZmluZSBLVk1fUFNDSV9SRVRfTkkgKCh1bnNpZ25lZCBsb25nKS0xKQotI2RlZmluZSBLVk1fUFNDSV9SRVRfSU5WQUwgKCh1bnNpZ25lZCBsb25nKS0yKQorI2RlZmluZSBLVk1fUFNDSV9SRVRfU1VDQ0VTUyBQU0NJX1JFVF9TVUNDRVNTCisjZGVmaW5lIEtWTV9QU0NJX1JFVF9OSSBQU0NJX1JFVF9OT1RfU1VQUE9SVEVECisjZGVmaW5lIEtWTV9QU0NJX1JFVF9JTlZBTCBQU0NJX1JFVF9JTlZBTElEX1BBUkFNUwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS1ZNX1BTQ0lfUkVUX0RFTklFRCAoKHVuc2lnbmVkIGxvbmcpLTMpCisjZGVmaW5lIEtWTV9QU0NJX1JFVF9ERU5JRUQgUFNDSV9SRVRfREVOSUVECiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vbW1hbi5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9tbWFuLmgKaW5kZXggNDBmMGU5Ny4uZWM5NDUzZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9tbWFuLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9tbWFuLmgKQEAgLTE3LDQgKzE3LDQgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpbmNsdWRlIDxhc20tZ2VuZXJpYy9tbWFuLmg+Ci0jZGVmaW5lIGFyY2hfbW1hcF9jaGVjayhhZGRyLCBsZW4sIGZsYWdzKSAgICgoKGZsYWdzKSAmIE1BUF9GSVhFRCAmJiAoYWRkcikgPCBGSVJTVF9VU0VSX0FERFJFU1MpID8gLUVJTlZBTCA6IDApCisjZGVmaW5lIGFyY2hfbW1hcF9jaGVjayhhZGRyLGxlbixmbGFncykgKCgoZmxhZ3MpICYgTUFQX0ZJWEVEICYmIChhZGRyKSA8IEZJUlNUX1VTRVJfQUREUkVTUykgPyAtIEVJTlZBTCA6IDApCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3BlcmZfcmVncy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9wZXJmX3JlZ3MuaAppbmRleCA3NDViY2YzLi41MzdlYjQ0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3BlcmZfcmVncy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vcGVyZl9yZWdzLmgKQEAgLTE5LDI3ICsxOSwyNyBAQAogI2lmbmRlZiBfQVNNX0FSTV9QRVJGX1JFR1NfSAogI2RlZmluZSBfQVNNX0FSTV9QRVJGX1JFR1NfSAogZW51bSBwZXJmX2V2ZW50X2FybV9yZWdzIHsKLSBQRVJGX1JFR19BUk1fUjAsCisgIFBFUkZfUkVHX0FSTV9SMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9SRUdfQVJNX1IxLAotIFBFUkZfUkVHX0FSTV9SMiwKLSBQRVJGX1JFR19BUk1fUjMsCi0gUEVSRl9SRUdfQVJNX1I0LAorICBQRVJGX1JFR19BUk1fUjEsCisgIFBFUkZfUkVHX0FSTV9SMiwKKyAgUEVSRl9SRUdfQVJNX1IzLAorICBQRVJGX1JFR19BUk1fUjQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfUkVHX0FSTV9SNSwKLSBQRVJGX1JFR19BUk1fUjYsCi0gUEVSRl9SRUdfQVJNX1I3LAotIFBFUkZfUkVHX0FSTV9SOCwKKyAgUEVSRl9SRUdfQVJNX1I1LAorICBQRVJGX1JFR19BUk1fUjYsCisgIFBFUkZfUkVHX0FSTV9SNywKKyAgUEVSRl9SRUdfQVJNX1I4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1JFR19BUk1fUjksCi0gUEVSRl9SRUdfQVJNX1IxMCwKLSBQRVJGX1JFR19BUk1fRlAsCi0gUEVSRl9SRUdfQVJNX0lQLAorICBQRVJGX1JFR19BUk1fUjksCisgIFBFUkZfUkVHX0FSTV9SMTAsCisgIFBFUkZfUkVHX0FSTV9GUCwKKyAgUEVSRl9SRUdfQVJNX0lQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1JFR19BUk1fU1AsCi0gUEVSRl9SRUdfQVJNX0xSLAotIFBFUkZfUkVHX0FSTV9QQywKLSBQRVJGX1JFR19BUk1fTUFYLAorICBQRVJGX1JFR19BUk1fU1AsCisgIFBFUkZfUkVHX0FSTV9MUiwKKyAgUEVSRl9SRUdfQVJNX1BDLAorICBQRVJGX1JFR19BUk1fTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vcHRyYWNlLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3B0cmFjZS5oCmluZGV4IDlkMzlkNDkuLjZhMDE1OTggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vcHRyYWNlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9wdHJhY2UuaApAQCAtODksNyArODksNyBAQAogI2RlZmluZSBQVF9URVhUX0VORF9BRERSIDB4MTAwMDgKICNpZm5kZWYgX19BU1NFTUJMWV9fCiBzdHJ1Y3QgcHRfcmVncyB7Ci0gbG9uZyB1cmVnc1sxOF07CisgIGxvbmcgdXJlZ3NbMThdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEFSTV9jcHNyIHVyZWdzWzE2XQpAQCAtMTE0LDcgKzExNCw3IEBACiAjZGVmaW5lIEFSTV9yMSB1cmVnc1sxXQogI2RlZmluZSBBUk1fcjAgdXJlZ3NbMF0KICNkZWZpbmUgQVJNX09SSUdfcjAgdXJlZ3NbMTddCi0jZGVmaW5lIEFSTV9WRlBSRUdTX1NJWkUgKCAzMiAqIDggICArIDQgICApCisjZGVmaW5lIEFSTV9WRlBSRUdTX1NJWkUgKDMyICogOCArIDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc2V0dXAuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc2V0dXAuaAppbmRleCAwZjJhMThiLi41ZmQyZjIwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3NldHVwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9zZXR1cC5oCkBAIC0yMywxMzMgKzIzLDEzMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVRBR19OT05FIDB4MDAwMDAwMDAKIHN0cnVjdCB0YWdfaGVhZGVyIHsKLSBfX3UzMiBzaXplOwotIF9fdTMyIHRhZzsKKyAgX191MzIgc2l6ZTsKKyAgX191MzIgdGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEFUQUdfQ09SRSAweDU0NDEwMDAxCiBzdHJ1Y3QgdGFnX2NvcmUgewotIF9fdTMyIGZsYWdzOworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGFnZXNpemU7Ci0gX191MzIgcm9vdGRldjsKKyAgX191MzIgcGFnZXNpemU7CisgIF9fdTMyIHJvb3RkZXY7CiB9OwogI2RlZmluZSBBVEFHX01FTSAweDU0NDEwMDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRhZ19tZW0zMiB7Ci0gX191MzIgc2l6ZTsKLSBfX3UzMiBzdGFydDsKKyAgX191MzIgc2l6ZTsKKyAgX191MzIgc3RhcnQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVRBR19WSURFT1RFWFQgMHg1NDQxMDAwMwogc3RydWN0IHRhZ192aWRlb3RleHQgewotIF9fdTggeDsKLSBfX3U4IHk7CisgIF9fdTggeDsKKyAgX191OCB5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB2aWRlb19wYWdlOwotIF9fdTggdmlkZW9fbW9kZTsKLSBfX3U4IHZpZGVvX2NvbHM7Ci0gX191MTYgdmlkZW9fZWdhX2J4OworICBfX3UxNiB2aWRlb19wYWdlOworICBfX3U4IHZpZGVvX21vZGU7CisgIF9fdTggdmlkZW9fY29sczsKKyAgX191MTYgdmlkZW9fZWdhX2J4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHZpZGVvX2xpbmVzOwotIF9fdTggdmlkZW9faXN2Z2E7Ci0gX191MTYgdmlkZW9fcG9pbnRzOworICBfX3U4IHZpZGVvX2xpbmVzOworICBfX3U4IHZpZGVvX2lzdmdhOworICBfX3UxNiB2aWRlb19wb2ludHM7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVRBR19SQU1ESVNLIDB4NTQ0MTAwMDQKIHN0cnVjdCB0YWdfcmFtZGlzayB7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgc2l6ZTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN0YXJ0OworICBfX3UzMiBzdGFydDsKIH07CiAjZGVmaW5lIEFUQUdfSU5JVFJEIDB4NTQ0MTAwMDUKICNkZWZpbmUgQVRBR19JTklUUkQyIDB4NTQ0MjAwMDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGFnX2luaXRyZCB7Ci0gX191MzIgc3RhcnQ7Ci0gX191MzIgc2l6ZTsKKyAgX191MzIgc3RhcnQ7CisgIF9fdTMyIHNpemU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVRBR19TRVJJQUwgMHg1NDQxMDAwNgogc3RydWN0IHRhZ19zZXJpYWxuciB7Ci0gX191MzIgbG93OwotIF9fdTMyIGhpZ2g7CisgIF9fdTMyIGxvdzsKKyAgX191MzIgaGlnaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBBVEFHX1JFVklTSU9OIDB4NTQ0MTAwMDcKIHN0cnVjdCB0YWdfcmV2aXNpb24gewotIF9fdTMyIHJldjsKKyAgX191MzIgcmV2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEFUQUdfVklERU9MRkIgMHg1NDQxMDAwOAogc3RydWN0IHRhZ192aWRlb2xmYiB7Ci0gX191MTYgbGZiX3dpZHRoOworICBfX3UxNiBsZmJfd2lkdGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGxmYl9oZWlnaHQ7Ci0gX191MTYgbGZiX2RlcHRoOwotIF9fdTE2IGxmYl9saW5lbGVuZ3RoOwotIF9fdTMyIGxmYl9iYXNlOworICBfX3UxNiBsZmJfaGVpZ2h0OworICBfX3UxNiBsZmJfZGVwdGg7CisgIF9fdTE2IGxmYl9saW5lbGVuZ3RoOworICBfX3UzMiBsZmJfYmFzZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGZiX3NpemU7Ci0gX191OCByZWRfc2l6ZTsKLSBfX3U4IHJlZF9wb3M7Ci0gX191OCBncmVlbl9zaXplOworICBfX3UzMiBsZmJfc2l6ZTsKKyAgX191OCByZWRfc2l6ZTsKKyAgX191OCByZWRfcG9zOworICBfX3U4IGdyZWVuX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZ3JlZW5fcG9zOwotIF9fdTggYmx1ZV9zaXplOwotIF9fdTggYmx1ZV9wb3M7Ci0gX191OCByc3ZkX3NpemU7CisgIF9fdTggZ3JlZW5fcG9zOworICBfX3U4IGJsdWVfc2l6ZTsKKyAgX191OCBibHVlX3BvczsKKyAgX191OCByc3ZkX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcnN2ZF9wb3M7CisgIF9fdTggcnN2ZF9wb3M7CiB9OwogI2RlZmluZSBBVEFHX0NNRExJTkUgMHg1NDQxMDAwOQogc3RydWN0IHRhZ19jbWRsaW5lIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBjbWRsaW5lWzFdOworICBjaGFyIGNtZGxpbmVbMV07CiB9OwogI2RlZmluZSBBVEFHX0FDT1JOIDB4NDEwMDAxMDEKIHN0cnVjdCB0YWdfYWNvcm4gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtZW1jX2NvbnRyb2xfcmVnOwotIF9fdTMyIHZyYW1fcGFnZXM7Ci0gX191OCBzb3VuZGRlZmF1bHQ7Ci0gX191OCBhZGZzZHJpdmVzOworICBfX3UzMiBtZW1jX2NvbnRyb2xfcmVnOworICBfX3UzMiB2cmFtX3BhZ2VzOworICBfX3U4IHNvdW5kZGVmYXVsdDsKKyAgX191OCBhZGZzZHJpdmVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEFUQUdfTUVNQ0xLIDB4NDEwMDA0MDIKIHN0cnVjdCB0YWdfbWVtY2xrIHsKLSBfX3UzMiBmbWVtY2xrOworICBfX3UzMiBmbWVtY2xrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdGFnIHsKLSBzdHJ1Y3QgdGFnX2hlYWRlciBoZHI7Ci0gdW5pb24geworICBzdHJ1Y3QgdGFnX2hlYWRlciBoZHI7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRhZ19jb3JlIGNvcmU7Ci0gc3RydWN0IHRhZ19tZW0zMiBtZW07Ci0gc3RydWN0IHRhZ192aWRlb3RleHQgdmlkZW90ZXh0OwotIHN0cnVjdCB0YWdfcmFtZGlzayByYW1kaXNrOworICAgIHN0cnVjdCB0YWdfY29yZSBjb3JlOworICAgIHN0cnVjdCB0YWdfbWVtMzIgbWVtOworICAgIHN0cnVjdCB0YWdfdmlkZW90ZXh0IHZpZGVvdGV4dDsKKyAgICBzdHJ1Y3QgdGFnX3JhbWRpc2sgcmFtZGlzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRhZ19pbml0cmQgaW5pdHJkOwotIHN0cnVjdCB0YWdfc2VyaWFsbnIgc2VyaWFsbnI7Ci0gc3RydWN0IHRhZ19yZXZpc2lvbiByZXZpc2lvbjsKLSBzdHJ1Y3QgdGFnX3ZpZGVvbGZiIHZpZGVvbGZiOworICAgIHN0cnVjdCB0YWdfaW5pdHJkIGluaXRyZDsKKyAgICBzdHJ1Y3QgdGFnX3NlcmlhbG5yIHNlcmlhbG5yOworICAgIHN0cnVjdCB0YWdfcmV2aXNpb24gcmV2aXNpb247CisgICAgc3RydWN0IHRhZ192aWRlb2xmYiB2aWRlb2xmYjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRhZ19jbWRsaW5lIGNtZGxpbmU7Ci0gc3RydWN0IHRhZ19hY29ybiBhY29ybjsKLSBzdHJ1Y3QgdGFnX21lbWNsayBtZW1jbGs7Ci0gfSB1OworICAgIHN0cnVjdCB0YWdfY21kbGluZSBjbWRsaW5lOworICAgIHN0cnVjdCB0YWdfYWNvcm4gYWNvcm47CisgICAgc3RydWN0IHRhZ19tZW1jbGsgbWVtY2xrOworICB9IHU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB0YWd0YWJsZSB7Ci0gX191MzIgdGFnOwotIGludCAoKnBhcnNlKShjb25zdCBzdHJ1Y3QgdGFnICopOworICBfX3UzMiB0YWc7CisgIGludCgqIHBhcnNlKSAoY29uc3Qgc3RydWN0IHRhZyAqKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSB0YWdfbWVtYmVyX3ByZXNlbnQodGFnLG1lbWJlcikgICAoKHVuc2lnbmVkIGxvbmcpKCYoKHN0cnVjdCB0YWcgKikwTCktPm1lbWJlciArIDEpICAgPD0gKHRhZyktPmhkci5zaXplICogNCkKLSNkZWZpbmUgdGFnX25leHQodCkgKChzdHJ1Y3QgdGFnICopKChfX3UzMiAqKSh0KSArICh0KS0+aGRyLnNpemUpKQorI2RlZmluZSB0YWdfbWVtYmVyX3ByZXNlbnQodGFnLG1lbWJlcikgKCh1bnNpZ25lZCBsb25nKSAoJiAoKHN0cnVjdCB0YWcgKikgMEwpLT5tZW1iZXIgKyAxKSA8PSAodGFnKS0+aGRyLnNpemUgKiA0KQorI2RlZmluZSB0YWdfbmV4dCh0KSAoKHN0cnVjdCB0YWcgKikgKChfX3UzMiAqKSAodCkgKyAodCktPmhkci5zaXplKSkKICNkZWZpbmUgdGFnX3NpemUodHlwZSkgKChzaXplb2Yoc3RydWN0IHRhZ19oZWFkZXIpICsgc2l6ZW9mKHN0cnVjdCB0eXBlKSkgPj4gMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIGZvcl9lYWNoX3RhZyh0LGJhc2UpICAgZm9yICh0ID0gYmFzZTsgdC0+aGRyLnNpemU7IHQgPSB0YWdfbmV4dCh0KSkKKyNkZWZpbmUgZm9yX2VhY2hfdGFnKHQsYmFzZSkgZm9yKHQgPSBiYXNlOyB0LT5oZHIuc2l6ZTsgdCA9IHRhZ19uZXh0KHQpKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3NpZ2NvbnRleHQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc2lnY29udGV4dC5oCmluZGV4IGJkYTIzMzkuLjczOWRlNGMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc2lnY29udGV4dC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc2lnY29udGV4dC5oCkBAIC0xOSwzMiArMTksMzIgQEAKICNpZm5kZWYgX0FTTUFSTV9TSUdDT05URVhUX0gKICNkZWZpbmUgX0FTTUFSTV9TSUdDT05URVhUX0gKIHN0cnVjdCBzaWdjb250ZXh0IHsKLSB1bnNpZ25lZCBsb25nIHRyYXBfbm87CisgIHVuc2lnbmVkIGxvbmcgdHJhcF9ubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBlcnJvcl9jb2RlOwotIHVuc2lnbmVkIGxvbmcgb2xkbWFzazsKLSB1bnNpZ25lZCBsb25nIGFybV9yMDsKLSB1bnNpZ25lZCBsb25nIGFybV9yMTsKKyAgdW5zaWduZWQgbG9uZyBlcnJvcl9jb2RlOworICB1bnNpZ25lZCBsb25nIG9sZG1hc2s7CisgIHVuc2lnbmVkIGxvbmcgYXJtX3IwOworICB1bnNpZ25lZCBsb25nIGFybV9yMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBhcm1fcjI7Ci0gdW5zaWduZWQgbG9uZyBhcm1fcjM7Ci0gdW5zaWduZWQgbG9uZyBhcm1fcjQ7Ci0gdW5zaWduZWQgbG9uZyBhcm1fcjU7CisgIHVuc2lnbmVkIGxvbmcgYXJtX3IyOworICB1bnNpZ25lZCBsb25nIGFybV9yMzsKKyAgdW5zaWduZWQgbG9uZyBhcm1fcjQ7CisgIHVuc2lnbmVkIGxvbmcgYXJtX3I1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGFybV9yNjsKLSB1bnNpZ25lZCBsb25nIGFybV9yNzsKLSB1bnNpZ25lZCBsb25nIGFybV9yODsKLSB1bnNpZ25lZCBsb25nIGFybV9yOTsKKyAgdW5zaWduZWQgbG9uZyBhcm1fcjY7CisgIHVuc2lnbmVkIGxvbmcgYXJtX3I3OworICB1bnNpZ25lZCBsb25nIGFybV9yODsKKyAgdW5zaWduZWQgbG9uZyBhcm1fcjk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgYXJtX3IxMDsKLSB1bnNpZ25lZCBsb25nIGFybV9mcDsKLSB1bnNpZ25lZCBsb25nIGFybV9pcDsKLSB1bnNpZ25lZCBsb25nIGFybV9zcDsKKyAgdW5zaWduZWQgbG9uZyBhcm1fcjEwOworICB1bnNpZ25lZCBsb25nIGFybV9mcDsKKyAgdW5zaWduZWQgbG9uZyBhcm1faXA7CisgIHVuc2lnbmVkIGxvbmcgYXJtX3NwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGFybV9scjsKLSB1bnNpZ25lZCBsb25nIGFybV9wYzsKLSB1bnNpZ25lZCBsb25nIGFybV9jcHNyOwotIHVuc2lnbmVkIGxvbmcgZmF1bHRfYWRkcmVzczsKKyAgdW5zaWduZWQgbG9uZyBhcm1fbHI7CisgIHVuc2lnbmVkIGxvbmcgYXJtX3BjOworICB1bnNpZ25lZCBsb25nIGFybV9jcHNyOworICB1bnNpZ25lZCBsb25nIGZhdWx0X2FkZHJlc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9zaWduYWwuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc2lnbmFsLmgKaW5kZXggZmQzOWFhYS4uNWVlMjcyYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9zaWduYWwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3NpZ25hbC5oCkBAIC04OCwyMyArODgsMjMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaW5jbHVkZSA8YXNtLWdlbmVyaWMvc2lnbmFsLWRlZnMuaD4KIHN0cnVjdCBzaWdhY3Rpb24gewotIHVuaW9uIHsKLSBfX3NpZ2hhbmRsZXJfdCBfc2FfaGFuZGxlcjsKKyAgdW5pb24geworICAgIF9fc2lnaGFuZGxlcl90IF9zYV9oYW5kbGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2b2lkICgqX3NhX3NpZ2FjdGlvbikoaW50LCBzdHJ1Y3Qgc2lnaW5mbyAqLCB2b2lkICopOwotIH0gX3U7Ci0gc2lnc2V0X3Qgc2FfbWFzazsKLSB1bnNpZ25lZCBsb25nIHNhX2ZsYWdzOworICAgIHZvaWQoKiBfc2Ffc2lnYWN0aW9uKSAoaW50LCBzdHJ1Y3Qgc2lnaW5mbyAqLCB2b2lkICopOworICB9IF91OworICBzaWdzZXRfdCBzYV9tYXNrOworICB1bnNpZ25lZCBsb25nIHNhX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2b2lkICgqc2FfcmVzdG9yZXIpKHZvaWQpOworICB2b2lkKCogc2FfcmVzdG9yZXIpICh2b2lkKTsKIH07CiAjZGVmaW5lIHNhX2hhbmRsZXIgX3UuX3NhX2hhbmRsZXIKICNkZWZpbmUgc2Ffc2lnYWN0aW9uIF91Ll9zYV9zaWdhY3Rpb24KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBzaWdhbHRzdGFjayB7Ci0gdm9pZCBfX3VzZXIgKnNzX3NwOwotIGludCBzc19mbGFnczsKLSBzaXplX3Qgc3Nfc2l6ZTsKKyAgdm9pZCBfX3VzZXIgKiBzc19zcDsKKyAgaW50IHNzX2ZsYWdzOworICBzaXplX3Qgc3Nfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IHN0YWNrX3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc3RhdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9zdGF0LmgKaW5kZXggYjM0MjVkZC4uNWE3OGMwMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9zdGF0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9zdGF0LmgKQEAgLTE5LDczICsxOSw3MyBAQAogI2lmbmRlZiBfQVNNQVJNX1NUQVRfSAogI2RlZmluZSBfQVNNQVJNX1NUQVRfSAogc3RydWN0IF9fb2xkX2tlcm5lbF9zdGF0IHsKLSB1bnNpZ25lZCBzaG9ydCBzdF9kZXY7CisgIHVuc2lnbmVkIHNob3J0IHN0X2RldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgc3RfaW5vOwotIHVuc2lnbmVkIHNob3J0IHN0X21vZGU7Ci0gdW5zaWduZWQgc2hvcnQgc3Rfbmxpbms7Ci0gdW5zaWduZWQgc2hvcnQgc3RfdWlkOworICB1bnNpZ25lZCBzaG9ydCBzdF9pbm87CisgIHVuc2lnbmVkIHNob3J0IHN0X21vZGU7CisgIHVuc2lnbmVkIHNob3J0IHN0X25saW5rOworICB1bnNpZ25lZCBzaG9ydCBzdF91aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHN0X2dpZDsKLSB1bnNpZ25lZCBzaG9ydCBzdF9yZGV2OwotIHVuc2lnbmVkIGxvbmcgc3Rfc2l6ZTsKLSB1bnNpZ25lZCBsb25nIHN0X2F0aW1lOworICB1bnNpZ25lZCBzaG9ydCBzdF9naWQ7CisgIHVuc2lnbmVkIHNob3J0IHN0X3JkZXY7CisgIHVuc2lnbmVkIGxvbmcgc3Rfc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9hdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzdF9tdGltZTsKLSB1bnNpZ25lZCBsb25nIHN0X2N0aW1lOworICB1bnNpZ25lZCBsb25nIHN0X210aW1lOworICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lOwogfTsKICNkZWZpbmUgU1RBVF9IQVZFX05TRUMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc3RhdCB7Ci0gdW5zaWduZWQgbG9uZyBzdF9kZXY7Ci0gdW5zaWduZWQgbG9uZyBzdF9pbm87Ci0gdW5zaWduZWQgc2hvcnQgc3RfbW9kZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9kZXY7CisgIHVuc2lnbmVkIGxvbmcgc3RfaW5vOworICB1bnNpZ25lZCBzaG9ydCBzdF9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBzdF9ubGluazsKLSB1bnNpZ25lZCBzaG9ydCBzdF91aWQ7Ci0gdW5zaWduZWQgc2hvcnQgc3RfZ2lkOwotIHVuc2lnbmVkIGxvbmcgc3RfcmRldjsKKyAgdW5zaWduZWQgc2hvcnQgc3Rfbmxpbms7CisgIHVuc2lnbmVkIHNob3J0IHN0X3VpZDsKKyAgdW5zaWduZWQgc2hvcnQgc3RfZ2lkOworICB1bnNpZ25lZCBsb25nIHN0X3JkZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc3Rfc2l6ZTsKLSB1bnNpZ25lZCBsb25nIHN0X2Jsa3NpemU7Ci0gdW5zaWduZWQgbG9uZyBzdF9ibG9ja3M7Ci0gdW5zaWduZWQgbG9uZyBzdF9hdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9zaXplOworICB1bnNpZ25lZCBsb25nIHN0X2Jsa3NpemU7CisgIHVuc2lnbmVkIGxvbmcgc3RfYmxvY2tzOworICB1bnNpZ25lZCBsb25nIHN0X2F0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0X2F0aW1lX25zZWM7Ci0gdW5zaWduZWQgbG9uZyBzdF9tdGltZTsKLSB1bnNpZ25lZCBsb25nIHN0X210aW1lX25zZWM7Ci0gdW5zaWduZWQgbG9uZyBzdF9jdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9hdGltZV9uc2VjOworICB1bnNpZ25lZCBsb25nIHN0X210aW1lOworICB1bnNpZ25lZCBsb25nIHN0X210aW1lX25zZWM7CisgIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWVfbnNlYzsKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkNDsKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkNTsKKyAgdW5zaWduZWQgbG9uZyBzdF9jdGltZV9uc2VjOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkNDsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzdGF0NjQgewotIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9kZXY7Ci0gdW5zaWduZWQgY2hhciBfX3BhZDBbNF07CisgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9kZXY7CisgIHVuc2lnbmVkIGNoYXIgX19wYWQwWzRdOwogI2RlZmluZSBTVEFUNjRfSEFTX0JST0tFTl9TVF9JTk8gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIF9fc3RfaW5vOwotIHVuc2lnbmVkIGludCBzdF9tb2RlOwotIHVuc2lnbmVkIGludCBzdF9ubGluazsKLSB1bnNpZ25lZCBsb25nIHN0X3VpZDsKKyAgdW5zaWduZWQgbG9uZyBfX3N0X2lubzsKKyAgdW5zaWduZWQgaW50IHN0X21vZGU7CisgIHVuc2lnbmVkIGludCBzdF9ubGluazsKKyAgdW5zaWduZWQgbG9uZyBzdF91aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc3RfZ2lkOwotIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9yZGV2OwotIHVuc2lnbmVkIGNoYXIgX19wYWQzWzRdOwotIGxvbmcgbG9uZyBzdF9zaXplOworICB1bnNpZ25lZCBsb25nIHN0X2dpZDsKKyAgdW5zaWduZWQgbG9uZyBsb25nIHN0X3JkZXY7CisgIHVuc2lnbmVkIGNoYXIgX19wYWQzWzRdOworICBsb25nIGxvbmcgc3Rfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzdF9ibGtzaXplOwotIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9ibG9ja3M7Ci0gdW5zaWduZWQgbG9uZyBzdF9hdGltZTsKLSB1bnNpZ25lZCBsb25nIHN0X2F0aW1lX25zZWM7CisgIHVuc2lnbmVkIGxvbmcgc3RfYmxrc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBsb25nIHN0X2Jsb2NrczsKKyAgdW5zaWduZWQgbG9uZyBzdF9hdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9hdGltZV9uc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0X210aW1lOwotIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWVfbnNlYzsKLSB1bnNpZ25lZCBsb25nIHN0X2N0aW1lOwotIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWVfbnNlYzsKKyAgdW5zaWduZWQgbG9uZyBzdF9tdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9tdGltZV9uc2VjOworICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lOworICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lX25zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9pbm87CisgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9pbm87CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3N0YXRmcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS9zdGF0ZnMuaAppbmRleCBkMWYzYjgxLi42MGNjZDZiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3N0YXRmcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vc3RhdGZzLmgKQEAgLTE4LDcgKzE4LDcgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfQVNNQVJNX1NUQVRGU19ICiAjZGVmaW5lIF9BU01BUk1fU1RBVEZTX0gKLSNkZWZpbmUgQVJDSF9QQUNLX1NUQVRGUzY0IF9fYXR0cmlidXRlX18oKHBhY2tlZCxhbGlnbmVkKDQpKSkKKyNkZWZpbmUgQVJDSF9QQUNLX1NUQVRGUzY0IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpCiAjaW5jbHVkZSA8YXNtLWdlbmVyaWMvc3RhdGZzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3VuaXN0ZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS91bmlzdGQuaAppbmRleCBiZTlmMzZmLi4zMmY2Njg4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm0vYXNtL3VuaXN0ZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybS9hc20vdW5pc3RkLmgKQEAgLTIxLDQ2NCArMjEsNDcwIEBACiAjZGVmaW5lIF9fTlJfT0FCSV9TWVNDQUxMX0JBU0UgMHg5MDAwMDAKICNkZWZpbmUgX19OUl9TWVNDQUxMX0JBU0UgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9yZXN0YXJ0X3N5c2NhbGwgKF9fTlJfU1lTQ0FMTF9CQVNFKyAwKQotI2RlZmluZSBfX05SX2V4aXQgKF9fTlJfU1lTQ0FMTF9CQVNFKyAxKQotI2RlZmluZSBfX05SX2ZvcmsgKF9fTlJfU1lTQ0FMTF9CQVNFKyAyKQotI2RlZmluZSBfX05SX3JlYWQgKF9fTlJfU1lTQ0FMTF9CQVNFKyAzKQorI2RlZmluZSBfX05SX3Jlc3RhcnRfc3lzY2FsbCAoX19OUl9TWVNDQUxMX0JBU0UgKyAwKQorI2RlZmluZSBfX05SX2V4aXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMSkKKyNkZWZpbmUgX19OUl9mb3JrIChfX05SX1NZU0NBTExfQkFTRSArIDIpCisjZGVmaW5lIF9fTlJfcmVhZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl93cml0ZSAoX19OUl9TWVNDQUxMX0JBU0UrIDQpCi0jZGVmaW5lIF9fTlJfb3BlbiAoX19OUl9TWVNDQUxMX0JBU0UrIDUpCi0jZGVmaW5lIF9fTlJfY2xvc2UgKF9fTlJfU1lTQ0FMTF9CQVNFKyA2KQotI2RlZmluZSBfX05SX2NyZWF0IChfX05SX1NZU0NBTExfQkFTRSsgOCkKKyNkZWZpbmUgX19OUl93cml0ZSAoX19OUl9TWVNDQUxMX0JBU0UgKyA0KQorI2RlZmluZSBfX05SX29wZW4gKF9fTlJfU1lTQ0FMTF9CQVNFICsgNSkKKyNkZWZpbmUgX19OUl9jbG9zZSAoX19OUl9TWVNDQUxMX0JBU0UgKyA2KQorI2RlZmluZSBfX05SX2NyZWF0IChfX05SX1NZU0NBTExfQkFTRSArIDgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2xpbmsgKF9fTlJfU1lTQ0FMTF9CQVNFKyA5KQotI2RlZmluZSBfX05SX3VubGluayAoX19OUl9TWVNDQUxMX0JBU0UrIDEwKQotI2RlZmluZSBfX05SX2V4ZWN2ZSAoX19OUl9TWVNDQUxMX0JBU0UrIDExKQotI2RlZmluZSBfX05SX2NoZGlyIChfX05SX1NZU0NBTExfQkFTRSsgMTIpCisjZGVmaW5lIF9fTlJfbGluayAoX19OUl9TWVNDQUxMX0JBU0UgKyA5KQorI2RlZmluZSBfX05SX3VubGluayAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMCkKKyNkZWZpbmUgX19OUl9leGVjdmUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTEpCisjZGVmaW5lIF9fTlJfY2hkaXIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3RpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFKyAxMykKLSNkZWZpbmUgX19OUl9ta25vZCAoX19OUl9TWVNDQUxMX0JBU0UrIDE0KQotI2RlZmluZSBfX05SX2NobW9kIChfX05SX1NZU0NBTExfQkFTRSsgMTUpCi0jZGVmaW5lIF9fTlJfbGNob3duIChfX05SX1NZU0NBTExfQkFTRSsgMTYpCisjZGVmaW5lIF9fTlJfdGltZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMykKKyNkZWZpbmUgX19OUl9ta25vZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNCkKKyNkZWZpbmUgX19OUl9jaG1vZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNSkKKyNkZWZpbmUgX19OUl9sY2hvd24gKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2xzZWVrIChfX05SX1NZU0NBTExfQkFTRSsgMTkpCi0jZGVmaW5lIF9fTlJfZ2V0cGlkIChfX05SX1NZU0NBTExfQkFTRSsgMjApCi0jZGVmaW5lIF9fTlJfbW91bnQgKF9fTlJfU1lTQ0FMTF9CQVNFKyAyMSkKLSNkZWZpbmUgX19OUl91bW91bnQgKF9fTlJfU1lTQ0FMTF9CQVNFKyAyMikKKyNkZWZpbmUgX19OUl9sc2VlayAoX19OUl9TWVNDQUxMX0JBU0UgKyAxOSkKKyNkZWZpbmUgX19OUl9nZXRwaWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjApCisjZGVmaW5lIF9fTlJfbW91bnQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjEpCisjZGVmaW5lIF9fTlJfdW1vdW50IChfX05SX1NZU0NBTExfQkFTRSArIDIyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zZXR1aWQgKF9fTlJfU1lTQ0FMTF9CQVNFKyAyMykKLSNkZWZpbmUgX19OUl9nZXR1aWQgKF9fTlJfU1lTQ0FMTF9CQVNFKyAyNCkKLSNkZWZpbmUgX19OUl9zdGltZSAoX19OUl9TWVNDQUxMX0JBU0UrIDI1KQotI2RlZmluZSBfX05SX3B0cmFjZSAoX19OUl9TWVNDQUxMX0JBU0UrIDI2KQorI2RlZmluZSBfX05SX3NldHVpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMykKKyNkZWZpbmUgX19OUl9nZXR1aWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQpCisjZGVmaW5lIF9fTlJfc3RpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjUpCisjZGVmaW5lIF9fTlJfcHRyYWNlIChfX05SX1NZU0NBTExfQkFTRSArIDI2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9hbGFybSAoX19OUl9TWVNDQUxMX0JBU0UrIDI3KQotI2RlZmluZSBfX05SX3BhdXNlIChfX05SX1NZU0NBTExfQkFTRSsgMjkpCi0jZGVmaW5lIF9fTlJfdXRpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFKyAzMCkKLSNkZWZpbmUgX19OUl9hY2Nlc3MgKF9fTlJfU1lTQ0FMTF9CQVNFKyAzMykKKyNkZWZpbmUgX19OUl9hbGFybSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNykKKyNkZWZpbmUgX19OUl9wYXVzZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyOSkKKyNkZWZpbmUgX19OUl91dGltZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMCkKKyNkZWZpbmUgX19OUl9hY2Nlc3MgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX25pY2UgKF9fTlJfU1lTQ0FMTF9CQVNFKyAzNCkKLSNkZWZpbmUgX19OUl9zeW5jIChfX05SX1NZU0NBTExfQkFTRSsgMzYpCi0jZGVmaW5lIF9fTlJfa2lsbCAoX19OUl9TWVNDQUxMX0JBU0UrIDM3KQotI2RlZmluZSBfX05SX3JlbmFtZSAoX19OUl9TWVNDQUxMX0JBU0UrIDM4KQorI2RlZmluZSBfX05SX25pY2UgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzQpCisjZGVmaW5lIF9fTlJfc3luYyAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNikKKyNkZWZpbmUgX19OUl9raWxsIChfX05SX1NZU0NBTExfQkFTRSArIDM3KQorI2RlZmluZSBfX05SX3JlbmFtZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfbWtkaXIgKF9fTlJfU1lTQ0FMTF9CQVNFKyAzOSkKLSNkZWZpbmUgX19OUl9ybWRpciAoX19OUl9TWVNDQUxMX0JBU0UrIDQwKQotI2RlZmluZSBfX05SX2R1cCAoX19OUl9TWVNDQUxMX0JBU0UrIDQxKQotI2RlZmluZSBfX05SX3BpcGUgKF9fTlJfU1lTQ0FMTF9CQVNFKyA0MikKKyNkZWZpbmUgX19OUl9ta2RpciAoX19OUl9TWVNDQUxMX0JBU0UgKyAzOSkKKyNkZWZpbmUgX19OUl9ybWRpciAoX19OUl9TWVNDQUxMX0JBU0UgKyA0MCkKKyNkZWZpbmUgX19OUl9kdXAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNDEpCisjZGVmaW5lIF9fTlJfcGlwZSAoX19OUl9TWVNDQUxMX0JBU0UgKyA0MikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfdGltZXMgKF9fTlJfU1lTQ0FMTF9CQVNFKyA0MykKLSNkZWZpbmUgX19OUl9icmsgKF9fTlJfU1lTQ0FMTF9CQVNFKyA0NSkKLSNkZWZpbmUgX19OUl9zZXRnaWQgKF9fTlJfU1lTQ0FMTF9CQVNFKyA0NikKLSNkZWZpbmUgX19OUl9nZXRnaWQgKF9fTlJfU1lTQ0FMTF9CQVNFKyA0NykKKyNkZWZpbmUgX19OUl90aW1lcyAoX19OUl9TWVNDQUxMX0JBU0UgKyA0MykKKyNkZWZpbmUgX19OUl9icmsgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNDUpCisjZGVmaW5lIF9fTlJfc2V0Z2lkIChfX05SX1NZU0NBTExfQkFTRSArIDQ2KQorI2RlZmluZSBfX05SX2dldGdpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyA0NykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfZ2V0ZXVpZCAoX19OUl9TWVNDQUxMX0JBU0UrIDQ5KQotI2RlZmluZSBfX05SX2dldGVnaWQgKF9fTlJfU1lTQ0FMTF9CQVNFKyA1MCkKLSNkZWZpbmUgX19OUl9hY2N0IChfX05SX1NZU0NBTExfQkFTRSsgNTEpCi0jZGVmaW5lIF9fTlJfdW1vdW50MiAoX19OUl9TWVNDQUxMX0JBU0UrIDUyKQorI2RlZmluZSBfX05SX2dldGV1aWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNDkpCisjZGVmaW5lIF9fTlJfZ2V0ZWdpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyA1MCkKKyNkZWZpbmUgX19OUl9hY2N0IChfX05SX1NZU0NBTExfQkFTRSArIDUxKQorI2RlZmluZSBfX05SX3Vtb3VudDIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNTIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2lvY3RsIChfX05SX1NZU0NBTExfQkFTRSsgNTQpCi0jZGVmaW5lIF9fTlJfZmNudGwgKF9fTlJfU1lTQ0FMTF9CQVNFKyA1NSkKLSNkZWZpbmUgX19OUl9zZXRwZ2lkIChfX05SX1NZU0NBTExfQkFTRSsgNTcpCi0jZGVmaW5lIF9fTlJfdW1hc2sgKF9fTlJfU1lTQ0FMTF9CQVNFKyA2MCkKKyNkZWZpbmUgX19OUl9pb2N0bCAoX19OUl9TWVNDQUxMX0JBU0UgKyA1NCkKKyNkZWZpbmUgX19OUl9mY250bCAoX19OUl9TWVNDQUxMX0JBU0UgKyA1NSkKKyNkZWZpbmUgX19OUl9zZXRwZ2lkIChfX05SX1NZU0NBTExfQkFTRSArIDU3KQorI2RlZmluZSBfX05SX3VtYXNrIChfX05SX1NZU0NBTExfQkFTRSArIDYwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9jaHJvb3QgKF9fTlJfU1lTQ0FMTF9CQVNFKyA2MSkKLSNkZWZpbmUgX19OUl91c3RhdCAoX19OUl9TWVNDQUxMX0JBU0UrIDYyKQotI2RlZmluZSBfX05SX2R1cDIgKF9fTlJfU1lTQ0FMTF9CQVNFKyA2MykKLSNkZWZpbmUgX19OUl9nZXRwcGlkIChfX05SX1NZU0NBTExfQkFTRSsgNjQpCisjZGVmaW5lIF9fTlJfY2hyb290IChfX05SX1NZU0NBTExfQkFTRSArIDYxKQorI2RlZmluZSBfX05SX3VzdGF0IChfX05SX1NZU0NBTExfQkFTRSArIDYyKQorI2RlZmluZSBfX05SX2R1cDIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNjMpCisjZGVmaW5lIF9fTlJfZ2V0cHBpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyA2NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfZ2V0cGdycCAoX19OUl9TWVNDQUxMX0JBU0UrIDY1KQotI2RlZmluZSBfX05SX3NldHNpZCAoX19OUl9TWVNDQUxMX0JBU0UrIDY2KQotI2RlZmluZSBfX05SX3NpZ2FjdGlvbiAoX19OUl9TWVNDQUxMX0JBU0UrIDY3KQotI2RlZmluZSBfX05SX3NldHJldWlkIChfX05SX1NZU0NBTExfQkFTRSsgNzApCisjZGVmaW5lIF9fTlJfZ2V0cGdycCAoX19OUl9TWVNDQUxMX0JBU0UgKyA2NSkKKyNkZWZpbmUgX19OUl9zZXRzaWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNjYpCisjZGVmaW5lIF9fTlJfc2lnYWN0aW9uIChfX05SX1NZU0NBTExfQkFTRSArIDY3KQorI2RlZmluZSBfX05SX3NldHJldWlkIChfX05SX1NZU0NBTExfQkFTRSArIDcwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zZXRyZWdpZCAoX19OUl9TWVNDQUxMX0JBU0UrIDcxKQotI2RlZmluZSBfX05SX3NpZ3N1c3BlbmQgKF9fTlJfU1lTQ0FMTF9CQVNFKyA3MikKLSNkZWZpbmUgX19OUl9zaWdwZW5kaW5nIChfX05SX1NZU0NBTExfQkFTRSsgNzMpCi0jZGVmaW5lIF9fTlJfc2V0aG9zdG5hbWUgKF9fTlJfU1lTQ0FMTF9CQVNFKyA3NCkKKyNkZWZpbmUgX19OUl9zZXRyZWdpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyA3MSkKKyNkZWZpbmUgX19OUl9zaWdzdXNwZW5kIChfX05SX1NZU0NBTExfQkFTRSArIDcyKQorI2RlZmluZSBfX05SX3NpZ3BlbmRpbmcgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNzMpCisjZGVmaW5lIF9fTlJfc2V0aG9zdG5hbWUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNzQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3NldHJsaW1pdCAoX19OUl9TWVNDQUxMX0JBU0UrIDc1KQotI2RlZmluZSBfX05SX2dldHJsaW1pdCAoX19OUl9TWVNDQUxMX0JBU0UrIDc2KQotI2RlZmluZSBfX05SX2dldHJ1c2FnZSAoX19OUl9TWVNDQUxMX0JBU0UrIDc3KQotI2RlZmluZSBfX05SX2dldHRpbWVvZmRheSAoX19OUl9TWVNDQUxMX0JBU0UrIDc4KQorI2RlZmluZSBfX05SX3NldHJsaW1pdCAoX19OUl9TWVNDQUxMX0JBU0UgKyA3NSkKKyNkZWZpbmUgX19OUl9nZXRybGltaXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNzYpCisjZGVmaW5lIF9fTlJfZ2V0cnVzYWdlIChfX05SX1NZU0NBTExfQkFTRSArIDc3KQorI2RlZmluZSBfX05SX2dldHRpbWVvZmRheSAoX19OUl9TWVNDQUxMX0JBU0UgKyA3OCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfc2V0dGltZW9mZGF5IChfX05SX1NZU0NBTExfQkFTRSsgNzkpCi0jZGVmaW5lIF9fTlJfZ2V0Z3JvdXBzIChfX05SX1NZU0NBTExfQkFTRSsgODApCi0jZGVmaW5lIF9fTlJfc2V0Z3JvdXBzIChfX05SX1NZU0NBTExfQkFTRSsgODEpCi0jZGVmaW5lIF9fTlJfc2VsZWN0IChfX05SX1NZU0NBTExfQkFTRSsgODIpCisjZGVmaW5lIF9fTlJfc2V0dGltZW9mZGF5IChfX05SX1NZU0NBTExfQkFTRSArIDc5KQorI2RlZmluZSBfX05SX2dldGdyb3VwcyAoX19OUl9TWVNDQUxMX0JBU0UgKyA4MCkKKyNkZWZpbmUgX19OUl9zZXRncm91cHMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgODEpCisjZGVmaW5lIF9fTlJfc2VsZWN0IChfX05SX1NZU0NBTExfQkFTRSArIDgyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zeW1saW5rIChfX05SX1NZU0NBTExfQkFTRSsgODMpCi0jZGVmaW5lIF9fTlJfcmVhZGxpbmsgKF9fTlJfU1lTQ0FMTF9CQVNFKyA4NSkKLSNkZWZpbmUgX19OUl91c2VsaWIgKF9fTlJfU1lTQ0FMTF9CQVNFKyA4NikKLSNkZWZpbmUgX19OUl9zd2Fwb24gKF9fTlJfU1lTQ0FMTF9CQVNFKyA4NykKKyNkZWZpbmUgX19OUl9zeW1saW5rIChfX05SX1NZU0NBTExfQkFTRSArIDgzKQorI2RlZmluZSBfX05SX3JlYWRsaW5rIChfX05SX1NZU0NBTExfQkFTRSArIDg1KQorI2RlZmluZSBfX05SX3VzZWxpYiAoX19OUl9TWVNDQUxMX0JBU0UgKyA4NikKKyNkZWZpbmUgX19OUl9zd2Fwb24gKF9fTlJfU1lTQ0FMTF9CQVNFICsgODcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3JlYm9vdCAoX19OUl9TWVNDQUxMX0JBU0UrIDg4KQotI2RlZmluZSBfX05SX3JlYWRkaXIgKF9fTlJfU1lTQ0FMTF9CQVNFKyA4OSkKLSNkZWZpbmUgX19OUl9tbWFwIChfX05SX1NZU0NBTExfQkFTRSsgOTApCi0jZGVmaW5lIF9fTlJfbXVubWFwIChfX05SX1NZU0NBTExfQkFTRSsgOTEpCisjZGVmaW5lIF9fTlJfcmVib290IChfX05SX1NZU0NBTExfQkFTRSArIDg4KQorI2RlZmluZSBfX05SX3JlYWRkaXIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgODkpCisjZGVmaW5lIF9fTlJfbW1hcCAoX19OUl9TWVNDQUxMX0JBU0UgKyA5MCkKKyNkZWZpbmUgX19OUl9tdW5tYXAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgOTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3RydW5jYXRlIChfX05SX1NZU0NBTExfQkFTRSsgOTIpCi0jZGVmaW5lIF9fTlJfZnRydW5jYXRlIChfX05SX1NZU0NBTExfQkFTRSsgOTMpCi0jZGVmaW5lIF9fTlJfZmNobW9kIChfX05SX1NZU0NBTExfQkFTRSsgOTQpCi0jZGVmaW5lIF9fTlJfZmNob3duIChfX05SX1NZU0NBTExfQkFTRSsgOTUpCisjZGVmaW5lIF9fTlJfdHJ1bmNhdGUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgOTIpCisjZGVmaW5lIF9fTlJfZnRydW5jYXRlIChfX05SX1NZU0NBTExfQkFTRSArIDkzKQorI2RlZmluZSBfX05SX2ZjaG1vZCAoX19OUl9TWVNDQUxMX0JBU0UgKyA5NCkKKyNkZWZpbmUgX19OUl9mY2hvd24gKF9fTlJfU1lTQ0FMTF9CQVNFICsgOTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2dldHByaW9yaXR5IChfX05SX1NZU0NBTExfQkFTRSsgOTYpCi0jZGVmaW5lIF9fTlJfc2V0cHJpb3JpdHkgKF9fTlJfU1lTQ0FMTF9CQVNFKyA5NykKLSNkZWZpbmUgX19OUl9zdGF0ZnMgKF9fTlJfU1lTQ0FMTF9CQVNFKyA5OSkKLSNkZWZpbmUgX19OUl9mc3RhdGZzIChfX05SX1NZU0NBTExfQkFTRSsxMDApCisjZGVmaW5lIF9fTlJfZ2V0cHJpb3JpdHkgKF9fTlJfU1lTQ0FMTF9CQVNFICsgOTYpCisjZGVmaW5lIF9fTlJfc2V0cHJpb3JpdHkgKF9fTlJfU1lTQ0FMTF9CQVNFICsgOTcpCisjZGVmaW5lIF9fTlJfc3RhdGZzIChfX05SX1NZU0NBTExfQkFTRSArIDk5KQorI2RlZmluZSBfX05SX2ZzdGF0ZnMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zb2NrZXRjYWxsIChfX05SX1NZU0NBTExfQkFTRSsxMDIpCi0jZGVmaW5lIF9fTlJfc3lzbG9nIChfX05SX1NZU0NBTExfQkFTRSsxMDMpCi0jZGVmaW5lIF9fTlJfc2V0aXRpbWVyIChfX05SX1NZU0NBTExfQkFTRSsxMDQpCi0jZGVmaW5lIF9fTlJfZ2V0aXRpbWVyIChfX05SX1NZU0NBTExfQkFTRSsxMDUpCisjZGVmaW5lIF9fTlJfc29ja2V0Y2FsbCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMDIpCisjZGVmaW5lIF9fTlJfc3lzbG9nIChfX05SX1NZU0NBTExfQkFTRSArIDEwMykKKyNkZWZpbmUgX19OUl9zZXRpdGltZXIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTA0KQorI2RlZmluZSBfX05SX2dldGl0aW1lciAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMDUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3N0YXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzEwNikKLSNkZWZpbmUgX19OUl9sc3RhdCAoX19OUl9TWVNDQUxMX0JBU0UrMTA3KQotI2RlZmluZSBfX05SX2ZzdGF0IChfX05SX1NZU0NBTExfQkFTRSsxMDgpCi0jZGVmaW5lIF9fTlJfdmhhbmd1cCAoX19OUl9TWVNDQUxMX0JBU0UrMTExKQorI2RlZmluZSBfX05SX3N0YXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTA2KQorI2RlZmluZSBfX05SX2xzdGF0IChfX05SX1NZU0NBTExfQkFTRSArIDEwNykKKyNkZWZpbmUgX19OUl9mc3RhdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMDgpCisjZGVmaW5lIF9fTlJfdmhhbmd1cCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3N5c2NhbGwgKF9fTlJfU1lTQ0FMTF9CQVNFKzExMykKLSNkZWZpbmUgX19OUl93YWl0NCAoX19OUl9TWVNDQUxMX0JBU0UrMTE0KQotI2RlZmluZSBfX05SX3N3YXBvZmYgKF9fTlJfU1lTQ0FMTF9CQVNFKzExNSkKLSNkZWZpbmUgX19OUl9zeXNpbmZvIChfX05SX1NZU0NBTExfQkFTRSsxMTYpCisjZGVmaW5lIF9fTlJfc3lzY2FsbCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMTMpCisjZGVmaW5lIF9fTlJfd2FpdDQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTE0KQorI2RlZmluZSBfX05SX3N3YXBvZmYgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTE1KQorI2RlZmluZSBfX05SX3N5c2luZm8gKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTE2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9pcGMgKF9fTlJfU1lTQ0FMTF9CQVNFKzExNykKLSNkZWZpbmUgX19OUl9mc3luYyAoX19OUl9TWVNDQUxMX0JBU0UrMTE4KQotI2RlZmluZSBfX05SX3NpZ3JldHVybiAoX19OUl9TWVNDQUxMX0JBU0UrMTE5KQotI2RlZmluZSBfX05SX2Nsb25lIChfX05SX1NZU0NBTExfQkFTRSsxMjApCisjZGVmaW5lIF9fTlJfaXBjIChfX05SX1NZU0NBTExfQkFTRSArIDExNykKKyNkZWZpbmUgX19OUl9mc3luYyAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMTgpCisjZGVmaW5lIF9fTlJfc2lncmV0dXJuIChfX05SX1NZU0NBTExfQkFTRSArIDExOSkKKyNkZWZpbmUgX19OUl9jbG9uZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMjApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3NldGRvbWFpbm5hbWUgKF9fTlJfU1lTQ0FMTF9CQVNFKzEyMSkKLSNkZWZpbmUgX19OUl91bmFtZSAoX19OUl9TWVNDQUxMX0JBU0UrMTIyKQotI2RlZmluZSBfX05SX2FkanRpbWV4IChfX05SX1NZU0NBTExfQkFTRSsxMjQpCi0jZGVmaW5lIF9fTlJfbXByb3RlY3QgKF9fTlJfU1lTQ0FMTF9CQVNFKzEyNSkKKyNkZWZpbmUgX19OUl9zZXRkb21haW5uYW1lIChfX05SX1NZU0NBTExfQkFTRSArIDEyMSkKKyNkZWZpbmUgX19OUl91bmFtZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMjIpCisjZGVmaW5lIF9fTlJfYWRqdGltZXggKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTI0KQorI2RlZmluZSBfX05SX21wcm90ZWN0IChfX05SX1NZU0NBTExfQkFTRSArIDEyNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfc2lncHJvY21hc2sgKF9fTlJfU1lTQ0FMTF9CQVNFKzEyNikKLSNkZWZpbmUgX19OUl9pbml0X21vZHVsZSAoX19OUl9TWVNDQUxMX0JBU0UrMTI4KQotI2RlZmluZSBfX05SX2RlbGV0ZV9tb2R1bGUgKF9fTlJfU1lTQ0FMTF9CQVNFKzEyOSkKLSNkZWZpbmUgX19OUl9xdW90YWN0bCAoX19OUl9TWVNDQUxMX0JBU0UrMTMxKQorI2RlZmluZSBfX05SX3NpZ3Byb2NtYXNrIChfX05SX1NZU0NBTExfQkFTRSArIDEyNikKKyNkZWZpbmUgX19OUl9pbml0X21vZHVsZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMjgpCisjZGVmaW5lIF9fTlJfZGVsZXRlX21vZHVsZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMjkpCisjZGVmaW5lIF9fTlJfcXVvdGFjdGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTMxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9nZXRwZ2lkIChfX05SX1NZU0NBTExfQkFTRSsxMzIpCi0jZGVmaW5lIF9fTlJfZmNoZGlyIChfX05SX1NZU0NBTExfQkFTRSsxMzMpCi0jZGVmaW5lIF9fTlJfYmRmbHVzaCAoX19OUl9TWVNDQUxMX0JBU0UrMTM0KQotI2RlZmluZSBfX05SX3N5c2ZzIChfX05SX1NZU0NBTExfQkFTRSsxMzUpCisjZGVmaW5lIF9fTlJfZ2V0cGdpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMzIpCisjZGVmaW5lIF9fTlJfZmNoZGlyIChfX05SX1NZU0NBTExfQkFTRSArIDEzMykKKyNkZWZpbmUgX19OUl9iZGZsdXNoIChfX05SX1NZU0NBTExfQkFTRSArIDEzNCkKKyNkZWZpbmUgX19OUl9zeXNmcyAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMzUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3BlcnNvbmFsaXR5IChfX05SX1NZU0NBTExfQkFTRSsxMzYpCi0jZGVmaW5lIF9fTlJfc2V0ZnN1aWQgKF9fTlJfU1lTQ0FMTF9CQVNFKzEzOCkKLSNkZWZpbmUgX19OUl9zZXRmc2dpZCAoX19OUl9TWVNDQUxMX0JBU0UrMTM5KQotI2RlZmluZSBfX05SX19sbHNlZWsgKF9fTlJfU1lTQ0FMTF9CQVNFKzE0MCkKKyNkZWZpbmUgX19OUl9wZXJzb25hbGl0eSAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMzYpCisjZGVmaW5lIF9fTlJfc2V0ZnN1aWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTM4KQorI2RlZmluZSBfX05SX3NldGZzZ2lkIChfX05SX1NZU0NBTExfQkFTRSArIDEzOSkKKyNkZWZpbmUgX19OUl9fbGxzZWVrIChfX05SX1NZU0NBTExfQkFTRSArIDE0MCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfZ2V0ZGVudHMgKF9fTlJfU1lTQ0FMTF9CQVNFKzE0MSkKLSNkZWZpbmUgX19OUl9fbmV3c2VsZWN0IChfX05SX1NZU0NBTExfQkFTRSsxNDIpCi0jZGVmaW5lIF9fTlJfZmxvY2sgKF9fTlJfU1lTQ0FMTF9CQVNFKzE0MykKLSNkZWZpbmUgX19OUl9tc3luYyAoX19OUl9TWVNDQUxMX0JBU0UrMTQ0KQorI2RlZmluZSBfX05SX2dldGRlbnRzIChfX05SX1NZU0NBTExfQkFTRSArIDE0MSkKKyNkZWZpbmUgX19OUl9fbmV3c2VsZWN0IChfX05SX1NZU0NBTExfQkFTRSArIDE0MikKKyNkZWZpbmUgX19OUl9mbG9jayAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNDMpCisjZGVmaW5lIF9fTlJfbXN5bmMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTQ0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9yZWFkdiAoX19OUl9TWVNDQUxMX0JBU0UrMTQ1KQotI2RlZmluZSBfX05SX3dyaXRldiAoX19OUl9TWVNDQUxMX0JBU0UrMTQ2KQotI2RlZmluZSBfX05SX2dldHNpZCAoX19OUl9TWVNDQUxMX0JBU0UrMTQ3KQotI2RlZmluZSBfX05SX2ZkYXRhc3luYyAoX19OUl9TWVNDQUxMX0JBU0UrMTQ4KQorI2RlZmluZSBfX05SX3JlYWR2IChfX05SX1NZU0NBTExfQkFTRSArIDE0NSkKKyNkZWZpbmUgX19OUl93cml0ZXYgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTQ2KQorI2RlZmluZSBfX05SX2dldHNpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNDcpCisjZGVmaW5lIF9fTlJfZmRhdGFzeW5jIChfX05SX1NZU0NBTExfQkFTRSArIDE0OCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfX3N5c2N0bCAoX19OUl9TWVNDQUxMX0JBU0UrMTQ5KQotI2RlZmluZSBfX05SX21sb2NrIChfX05SX1NZU0NBTExfQkFTRSsxNTApCi0jZGVmaW5lIF9fTlJfbXVubG9jayAoX19OUl9TWVNDQUxMX0JBU0UrMTUxKQotI2RlZmluZSBfX05SX21sb2NrYWxsIChfX05SX1NZU0NBTExfQkFTRSsxNTIpCisjZGVmaW5lIF9fTlJfX3N5c2N0bCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNDkpCisjZGVmaW5lIF9fTlJfbWxvY2sgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTUwKQorI2RlZmluZSBfX05SX211bmxvY2sgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTUxKQorI2RlZmluZSBfX05SX21sb2NrYWxsIChfX05SX1NZU0NBTExfQkFTRSArIDE1MikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfbXVubG9ja2FsbCAoX19OUl9TWVNDQUxMX0JBU0UrMTUzKQotI2RlZmluZSBfX05SX3NjaGVkX3NldHBhcmFtIChfX05SX1NZU0NBTExfQkFTRSsxNTQpCi0jZGVmaW5lIF9fTlJfc2NoZWRfZ2V0cGFyYW0gKF9fTlJfU1lTQ0FMTF9CQVNFKzE1NSkKLSNkZWZpbmUgX19OUl9zY2hlZF9zZXRzY2hlZHVsZXIgKF9fTlJfU1lTQ0FMTF9CQVNFKzE1NikKKyNkZWZpbmUgX19OUl9tdW5sb2NrYWxsIChfX05SX1NZU0NBTExfQkFTRSArIDE1MykKKyNkZWZpbmUgX19OUl9zY2hlZF9zZXRwYXJhbSAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTQpCisjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0cGFyYW0gKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU1KQorI2RlZmluZSBfX05SX3NjaGVkX3NldHNjaGVkdWxlciAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3NjaGVkX2dldHNjaGVkdWxlciAoX19OUl9TWVNDQUxMX0JBU0UrMTU3KQotI2RlZmluZSBfX05SX3NjaGVkX3lpZWxkIChfX05SX1NZU0NBTExfQkFTRSsxNTgpCi0jZGVmaW5lIF9fTlJfc2NoZWRfZ2V0X3ByaW9yaXR5X21heCAoX19OUl9TWVNDQUxMX0JBU0UrMTU5KQotI2RlZmluZSBfX05SX3NjaGVkX2dldF9wcmlvcml0eV9taW4gKF9fTlJfU1lTQ0FMTF9CQVNFKzE2MCkKKyNkZWZpbmUgX19OUl9zY2hlZF9nZXRzY2hlZHVsZXIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU3KQorI2RlZmluZSBfX05SX3NjaGVkX3lpZWxkIChfX05SX1NZU0NBTExfQkFTRSArIDE1OCkKKyNkZWZpbmUgX19OUl9zY2hlZF9nZXRfcHJpb3JpdHlfbWF4IChfX05SX1NZU0NBTExfQkFTRSArIDE1OSkKKyNkZWZpbmUgX19OUl9zY2hlZF9nZXRfcHJpb3JpdHlfbWluIChfX05SX1NZU0NBTExfQkFTRSArIDE2MCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfc2NoZWRfcnJfZ2V0X2ludGVydmFsIChfX05SX1NZU0NBTExfQkFTRSsxNjEpCi0jZGVmaW5lIF9fTlJfbmFub3NsZWVwIChfX05SX1NZU0NBTExfQkFTRSsxNjIpCi0jZGVmaW5lIF9fTlJfbXJlbWFwIChfX05SX1NZU0NBTExfQkFTRSsxNjMpCi0jZGVmaW5lIF9fTlJfc2V0cmVzdWlkIChfX05SX1NZU0NBTExfQkFTRSsxNjQpCisjZGVmaW5lIF9fTlJfc2NoZWRfcnJfZ2V0X2ludGVydmFsIChfX05SX1NZU0NBTExfQkFTRSArIDE2MSkKKyNkZWZpbmUgX19OUl9uYW5vc2xlZXAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTYyKQorI2RlZmluZSBfX05SX21yZW1hcCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNjMpCisjZGVmaW5lIF9fTlJfc2V0cmVzdWlkIChfX05SX1NZU0NBTExfQkFTRSArIDE2NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfZ2V0cmVzdWlkIChfX05SX1NZU0NBTExfQkFTRSsxNjUpCi0jZGVmaW5lIF9fTlJfcG9sbCAoX19OUl9TWVNDQUxMX0JBU0UrMTY4KQotI2RlZmluZSBfX05SX25mc3NlcnZjdGwgKF9fTlJfU1lTQ0FMTF9CQVNFKzE2OSkKLSNkZWZpbmUgX19OUl9zZXRyZXNnaWQgKF9fTlJfU1lTQ0FMTF9CQVNFKzE3MCkKKyNkZWZpbmUgX19OUl9nZXRyZXN1aWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTY1KQorI2RlZmluZSBfX05SX3BvbGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTY4KQorI2RlZmluZSBfX05SX25mc3NlcnZjdGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTY5KQorI2RlZmluZSBfX05SX3NldHJlc2dpZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNzApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2dldHJlc2dpZCAoX19OUl9TWVNDQUxMX0JBU0UrMTcxKQotI2RlZmluZSBfX05SX3ByY3RsIChfX05SX1NZU0NBTExfQkFTRSsxNzIpCi0jZGVmaW5lIF9fTlJfcnRfc2lncmV0dXJuIChfX05SX1NZU0NBTExfQkFTRSsxNzMpCi0jZGVmaW5lIF9fTlJfcnRfc2lnYWN0aW9uIChfX05SX1NZU0NBTExfQkFTRSsxNzQpCisjZGVmaW5lIF9fTlJfZ2V0cmVzZ2lkIChfX05SX1NZU0NBTExfQkFTRSArIDE3MSkKKyNkZWZpbmUgX19OUl9wcmN0bCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNzIpCisjZGVmaW5lIF9fTlJfcnRfc2lncmV0dXJuIChfX05SX1NZU0NBTExfQkFTRSArIDE3MykKKyNkZWZpbmUgX19OUl9ydF9zaWdhY3Rpb24gKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9ydF9zaWdwcm9jbWFzayAoX19OUl9TWVNDQUxMX0JBU0UrMTc1KQotI2RlZmluZSBfX05SX3J0X3NpZ3BlbmRpbmcgKF9fTlJfU1lTQ0FMTF9CQVNFKzE3NikKLSNkZWZpbmUgX19OUl9ydF9zaWd0aW1lZHdhaXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzE3NykKLSNkZWZpbmUgX19OUl9ydF9zaWdxdWV1ZWluZm8gKF9fTlJfU1lTQ0FMTF9CQVNFKzE3OCkKKyNkZWZpbmUgX19OUl9ydF9zaWdwcm9jbWFzayAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNzUpCisjZGVmaW5lIF9fTlJfcnRfc2lncGVuZGluZyAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNzYpCisjZGVmaW5lIF9fTlJfcnRfc2lndGltZWR3YWl0IChfX05SX1NZU0NBTExfQkFTRSArIDE3NykKKyNkZWZpbmUgX19OUl9ydF9zaWdxdWV1ZWluZm8gKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9ydF9zaWdzdXNwZW5kIChfX05SX1NZU0NBTExfQkFTRSsxNzkpCi0jZGVmaW5lIF9fTlJfcHJlYWQ2NCAoX19OUl9TWVNDQUxMX0JBU0UrMTgwKQotI2RlZmluZSBfX05SX3B3cml0ZTY0IChfX05SX1NZU0NBTExfQkFTRSsxODEpCi0jZGVmaW5lIF9fTlJfY2hvd24gKF9fTlJfU1lTQ0FMTF9CQVNFKzE4MikKKyNkZWZpbmUgX19OUl9ydF9zaWdzdXNwZW5kIChfX05SX1NZU0NBTExfQkFTRSArIDE3OSkKKyNkZWZpbmUgX19OUl9wcmVhZDY0IChfX05SX1NZU0NBTExfQkFTRSArIDE4MCkKKyNkZWZpbmUgX19OUl9wd3JpdGU2NCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxODEpCisjZGVmaW5lIF9fTlJfY2hvd24gKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTgyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9nZXRjd2QgKF9fTlJfU1lTQ0FMTF9CQVNFKzE4MykKLSNkZWZpbmUgX19OUl9jYXBnZXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzE4NCkKLSNkZWZpbmUgX19OUl9jYXBzZXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzE4NSkKLSNkZWZpbmUgX19OUl9zaWdhbHRzdGFjayAoX19OUl9TWVNDQUxMX0JBU0UrMTg2KQorI2RlZmluZSBfX05SX2dldGN3ZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxODMpCisjZGVmaW5lIF9fTlJfY2FwZ2V0IChfX05SX1NZU0NBTExfQkFTRSArIDE4NCkKKyNkZWZpbmUgX19OUl9jYXBzZXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTg1KQorI2RlZmluZSBfX05SX3NpZ2FsdHN0YWNrIChfX05SX1NZU0NBTExfQkFTRSArIDE4NikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfc2VuZGZpbGUgKF9fTlJfU1lTQ0FMTF9CQVNFKzE4NykKLSNkZWZpbmUgX19OUl92Zm9yayAoX19OUl9TWVNDQUxMX0JBU0UrMTkwKQotI2RlZmluZSBfX05SX3VnZXRybGltaXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzE5MSkKLSNkZWZpbmUgX19OUl9tbWFwMiAoX19OUl9TWVNDQUxMX0JBU0UrMTkyKQorI2RlZmluZSBfX05SX3NlbmRmaWxlIChfX05SX1NZU0NBTExfQkFTRSArIDE4NykKKyNkZWZpbmUgX19OUl92Zm9yayAoX19OUl9TWVNDQUxMX0JBU0UgKyAxOTApCisjZGVmaW5lIF9fTlJfdWdldHJsaW1pdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxOTEpCisjZGVmaW5lIF9fTlJfbW1hcDIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTkyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl90cnVuY2F0ZTY0IChfX05SX1NZU0NBTExfQkFTRSsxOTMpCi0jZGVmaW5lIF9fTlJfZnRydW5jYXRlNjQgKF9fTlJfU1lTQ0FMTF9CQVNFKzE5NCkKLSNkZWZpbmUgX19OUl9zdGF0NjQgKF9fTlJfU1lTQ0FMTF9CQVNFKzE5NSkKLSNkZWZpbmUgX19OUl9sc3RhdDY0IChfX05SX1NZU0NBTExfQkFTRSsxOTYpCisjZGVmaW5lIF9fTlJfdHJ1bmNhdGU2NCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxOTMpCisjZGVmaW5lIF9fTlJfZnRydW5jYXRlNjQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk0KQorI2RlZmluZSBfX05SX3N0YXQ2NCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxOTUpCisjZGVmaW5lIF9fTlJfbHN0YXQ2NCAoX19OUl9TWVNDQUxMX0JBU0UgKyAxOTYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2ZzdGF0NjQgKF9fTlJfU1lTQ0FMTF9CQVNFKzE5NykKLSNkZWZpbmUgX19OUl9sY2hvd24zMiAoX19OUl9TWVNDQUxMX0JBU0UrMTk4KQotI2RlZmluZSBfX05SX2dldHVpZDMyIChfX05SX1NZU0NBTExfQkFTRSsxOTkpCi0jZGVmaW5lIF9fTlJfZ2V0Z2lkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIwMCkKKyNkZWZpbmUgX19OUl9mc3RhdDY0IChfX05SX1NZU0NBTExfQkFTRSArIDE5NykKKyNkZWZpbmUgX19OUl9sY2hvd24zMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAxOTgpCisjZGVmaW5lIF9fTlJfZ2V0dWlkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk5KQorI2RlZmluZSBfX05SX2dldGdpZDMyIChfX05SX1NZU0NBTExfQkFTRSArIDIwMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfZ2V0ZXVpZDMyIChfX05SX1NZU0NBTExfQkFTRSsyMDEpCi0jZGVmaW5lIF9fTlJfZ2V0ZWdpZDMyIChfX05SX1NZU0NBTExfQkFTRSsyMDIpCi0jZGVmaW5lIF9fTlJfc2V0cmV1aWQzMiAoX19OUl9TWVNDQUxMX0JBU0UrMjAzKQotI2RlZmluZSBfX05SX3NldHJlZ2lkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIwNCkKKyNkZWZpbmUgX19OUl9nZXRldWlkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjAxKQorI2RlZmluZSBfX05SX2dldGVnaWQzMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMDIpCisjZGVmaW5lIF9fTlJfc2V0cmV1aWQzMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMDMpCisjZGVmaW5lIF9fTlJfc2V0cmVnaWQzMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2dldGdyb3VwczMyIChfX05SX1NZU0NBTExfQkFTRSsyMDUpCi0jZGVmaW5lIF9fTlJfc2V0Z3JvdXBzMzIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIwNikKLSNkZWZpbmUgX19OUl9mY2hvd24zMiAoX19OUl9TWVNDQUxMX0JBU0UrMjA3KQotI2RlZmluZSBfX05SX3NldHJlc3VpZDMyIChfX05SX1NZU0NBTExfQkFTRSsyMDgpCisjZGVmaW5lIF9fTlJfZ2V0Z3JvdXBzMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA1KQorI2RlZmluZSBfX05SX3NldGdyb3VwczMyIChfX05SX1NZU0NBTExfQkFTRSArIDIwNikKKyNkZWZpbmUgX19OUl9mY2hvd24zMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMDcpCisjZGVmaW5lIF9fTlJfc2V0cmVzdWlkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9nZXRyZXN1aWQzMiAoX19OUl9TWVNDQUxMX0JBU0UrMjA5KQotI2RlZmluZSBfX05SX3NldHJlc2dpZDMyIChfX05SX1NZU0NBTExfQkFTRSsyMTApCi0jZGVmaW5lIF9fTlJfZ2V0cmVzZ2lkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIxMSkKLSNkZWZpbmUgX19OUl9jaG93bjMyIChfX05SX1NZU0NBTExfQkFTRSsyMTIpCisjZGVmaW5lIF9fTlJfZ2V0cmVzdWlkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA5KQorI2RlZmluZSBfX05SX3NldHJlc2dpZDMyIChfX05SX1NZU0NBTExfQkFTRSArIDIxMCkKKyNkZWZpbmUgX19OUl9nZXRyZXNnaWQzMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMTEpCisjZGVmaW5lIF9fTlJfY2hvd24zMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMTIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3NldHVpZDMyIChfX05SX1NZU0NBTExfQkFTRSsyMTMpCi0jZGVmaW5lIF9fTlJfc2V0Z2lkMzIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIxNCkKLSNkZWZpbmUgX19OUl9zZXRmc3VpZDMyIChfX05SX1NZU0NBTExfQkFTRSsyMTUpCi0jZGVmaW5lIF9fTlJfc2V0ZnNnaWQzMiAoX19OUl9TWVNDQUxMX0JBU0UrMjE2KQorI2RlZmluZSBfX05SX3NldHVpZDMyIChfX05SX1NZU0NBTExfQkFTRSArIDIxMykKKyNkZWZpbmUgX19OUl9zZXRnaWQzMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMTQpCisjZGVmaW5lIF9fTlJfc2V0ZnN1aWQzMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMTUpCisjZGVmaW5lIF9fTlJfc2V0ZnNnaWQzMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMTYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2dldGRlbnRzNjQgKF9fTlJfU1lTQ0FMTF9CQVNFKzIxNykKLSNkZWZpbmUgX19OUl9waXZvdF9yb290IChfX05SX1NZU0NBTExfQkFTRSsyMTgpCi0jZGVmaW5lIF9fTlJfbWluY29yZSAoX19OUl9TWVNDQUxMX0JBU0UrMjE5KQotI2RlZmluZSBfX05SX21hZHZpc2UgKF9fTlJfU1lTQ0FMTF9CQVNFKzIyMCkKKyNkZWZpbmUgX19OUl9nZXRkZW50czY0IChfX05SX1NZU0NBTExfQkFTRSArIDIxNykKKyNkZWZpbmUgX19OUl9waXZvdF9yb290IChfX05SX1NZU0NBTExfQkFTRSArIDIxOCkKKyNkZWZpbmUgX19OUl9taW5jb3JlIChfX05SX1NZU0NBTExfQkFTRSArIDIxOSkKKyNkZWZpbmUgX19OUl9tYWR2aXNlIChfX05SX1NZU0NBTExfQkFTRSArIDIyMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfZmNudGw2NCAoX19OUl9TWVNDQUxMX0JBU0UrMjIxKQotI2RlZmluZSBfX05SX2dldHRpZCAoX19OUl9TWVNDQUxMX0JBU0UrMjI0KQotI2RlZmluZSBfX05SX3JlYWRhaGVhZCAoX19OUl9TWVNDQUxMX0JBU0UrMjI1KQotI2RlZmluZSBfX05SX3NldHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSsyMjYpCisjZGVmaW5lIF9fTlJfZmNudGw2NCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMjEpCisjZGVmaW5lIF9fTlJfZ2V0dGlkIChfX05SX1NZU0NBTExfQkFTRSArIDIyNCkKKyNkZWZpbmUgX19OUl9yZWFkYWhlYWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI1KQorI2RlZmluZSBfX05SX3NldHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSArIDIyNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfbHNldHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSsyMjcpCi0jZGVmaW5lIF9fTlJfZnNldHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSsyMjgpCi0jZGVmaW5lIF9fTlJfZ2V0eGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIyOSkKLSNkZWZpbmUgX19OUl9sZ2V0eGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIzMCkKKyNkZWZpbmUgX19OUl9sc2V0eGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI3KQorI2RlZmluZSBfX05SX2ZzZXR4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMjgpCisjZGVmaW5lIF9fTlJfZ2V0eGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI5KQorI2RlZmluZSBfX05SX2xnZXR4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMzApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2ZnZXR4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UrMjMxKQotI2RlZmluZSBfX05SX2xpc3R4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UrMjMyKQotI2RlZmluZSBfX05SX2xsaXN0eGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFKzIzMykKLSNkZWZpbmUgX19OUl9mbGlzdHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSsyMzQpCisjZGVmaW5lIF9fTlJfZmdldHhhdHRyIChfX05SX1NZU0NBTExfQkFTRSArIDIzMSkKKyNkZWZpbmUgX19OUl9saXN0eGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMyKQorI2RlZmluZSBfX05SX2xsaXN0eGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMzKQorI2RlZmluZSBfX05SX2ZsaXN0eGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9yZW1vdmV4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UrMjM1KQotI2RlZmluZSBfX05SX2xyZW1vdmV4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UrMjM2KQotI2RlZmluZSBfX05SX2ZyZW1vdmV4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UrMjM3KQotI2RlZmluZSBfX05SX3RraWxsIChfX05SX1NZU0NBTExfQkFTRSsyMzgpCisjZGVmaW5lIF9fTlJfcmVtb3ZleGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM1KQorI2RlZmluZSBfX05SX2xyZW1vdmV4YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMzYpCisjZGVmaW5lIF9fTlJfZnJlbW92ZXhhdHRyIChfX05SX1NZU0NBTExfQkFTRSArIDIzNykKKyNkZWZpbmUgX19OUl90a2lsbCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMzgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3NlbmRmaWxlNjQgKF9fTlJfU1lTQ0FMTF9CQVNFKzIzOSkKLSNkZWZpbmUgX19OUl9mdXRleCAoX19OUl9TWVNDQUxMX0JBU0UrMjQwKQotI2RlZmluZSBfX05SX3NjaGVkX3NldGFmZmluaXR5IChfX05SX1NZU0NBTExfQkFTRSsyNDEpCi0jZGVmaW5lIF9fTlJfc2NoZWRfZ2V0YWZmaW5pdHkgKF9fTlJfU1lTQ0FMTF9CQVNFKzI0MikKKyNkZWZpbmUgX19OUl9zZW5kZmlsZTY0IChfX05SX1NZU0NBTExfQkFTRSArIDIzOSkKKyNkZWZpbmUgX19OUl9mdXRleCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNDApCisjZGVmaW5lIF9fTlJfc2NoZWRfc2V0YWZmaW5pdHkgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQxKQorI2RlZmluZSBfX05SX3NjaGVkX2dldGFmZmluaXR5IChfX05SX1NZU0NBTExfQkFTRSArIDI0MikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfaW9fc2V0dXAgKF9fTlJfU1lTQ0FMTF9CQVNFKzI0MykKLSNkZWZpbmUgX19OUl9pb19kZXN0cm95IChfX05SX1NZU0NBTExfQkFTRSsyNDQpCi0jZGVmaW5lIF9fTlJfaW9fZ2V0ZXZlbnRzIChfX05SX1NZU0NBTExfQkFTRSsyNDUpCi0jZGVmaW5lIF9fTlJfaW9fc3VibWl0IChfX05SX1NZU0NBTExfQkFTRSsyNDYpCisjZGVmaW5lIF9fTlJfaW9fc2V0dXAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQzKQorI2RlZmluZSBfX05SX2lvX2Rlc3Ryb3kgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQ0KQorI2RlZmluZSBfX05SX2lvX2dldGV2ZW50cyAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNDUpCisjZGVmaW5lIF9fTlJfaW9fc3VibWl0IChfX05SX1NZU0NBTExfQkFTRSArIDI0NikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfaW9fY2FuY2VsIChfX05SX1NZU0NBTExfQkFTRSsyNDcpCi0jZGVmaW5lIF9fTlJfZXhpdF9ncm91cCAoX19OUl9TWVNDQUxMX0JBU0UrMjQ4KQotI2RlZmluZSBfX05SX2xvb2t1cF9kY29va2llIChfX05SX1NZU0NBTExfQkFTRSsyNDkpCi0jZGVmaW5lIF9fTlJfZXBvbGxfY3JlYXRlIChfX05SX1NZU0NBTExfQkFTRSsyNTApCisjZGVmaW5lIF9fTlJfaW9fY2FuY2VsIChfX05SX1NZU0NBTExfQkFTRSArIDI0NykKKyNkZWZpbmUgX19OUl9leGl0X2dyb3VwIChfX05SX1NZU0NBTExfQkFTRSArIDI0OCkKKyNkZWZpbmUgX19OUl9sb29rdXBfZGNvb2tpZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNDkpCisjZGVmaW5lIF9fTlJfZXBvbGxfY3JlYXRlIChfX05SX1NZU0NBTExfQkFTRSArIDI1MCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfZXBvbGxfY3RsIChfX05SX1NZU0NBTExfQkFTRSsyNTEpCi0jZGVmaW5lIF9fTlJfZXBvbGxfd2FpdCAoX19OUl9TWVNDQUxMX0JBU0UrMjUyKQotI2RlZmluZSBfX05SX3JlbWFwX2ZpbGVfcGFnZXMgKF9fTlJfU1lTQ0FMTF9CQVNFKzI1MykKLSNkZWZpbmUgX19OUl9zZXRfdGlkX2FkZHJlc3MgKF9fTlJfU1lTQ0FMTF9CQVNFKzI1NikKKyNkZWZpbmUgX19OUl9lcG9sbF9jdGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjUxKQorI2RlZmluZSBfX05SX2Vwb2xsX3dhaXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjUyKQorI2RlZmluZSBfX05SX3JlbWFwX2ZpbGVfcGFnZXMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjUzKQorI2RlZmluZSBfX05SX3NldF90aWRfYWRkcmVzcyAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNTYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3RpbWVyX2NyZWF0ZSAoX19OUl9TWVNDQUxMX0JBU0UrMjU3KQotI2RlZmluZSBfX05SX3RpbWVyX3NldHRpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFKzI1OCkKLSNkZWZpbmUgX19OUl90aW1lcl9nZXR0aW1lIChfX05SX1NZU0NBTExfQkFTRSsyNTkpCi0jZGVmaW5lIF9fTlJfdGltZXJfZ2V0b3ZlcnJ1biAoX19OUl9TWVNDQUxMX0JBU0UrMjYwKQorI2RlZmluZSBfX05SX3RpbWVyX2NyZWF0ZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNTcpCisjZGVmaW5lIF9fTlJfdGltZXJfc2V0dGltZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNTgpCisjZGVmaW5lIF9fTlJfdGltZXJfZ2V0dGltZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNTkpCisjZGVmaW5lIF9fTlJfdGltZXJfZ2V0b3ZlcnJ1biAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNjApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3RpbWVyX2RlbGV0ZSAoX19OUl9TWVNDQUxMX0JBU0UrMjYxKQotI2RlZmluZSBfX05SX2Nsb2NrX3NldHRpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFKzI2MikKLSNkZWZpbmUgX19OUl9jbG9ja19nZXR0aW1lIChfX05SX1NZU0NBTExfQkFTRSsyNjMpCi0jZGVmaW5lIF9fTlJfY2xvY2tfZ2V0cmVzIChfX05SX1NZU0NBTExfQkFTRSsyNjQpCisjZGVmaW5lIF9fTlJfdGltZXJfZGVsZXRlIChfX05SX1NZU0NBTExfQkFTRSArIDI2MSkKKyNkZWZpbmUgX19OUl9jbG9ja19zZXR0aW1lIChfX05SX1NZU0NBTExfQkFTRSArIDI2MikKKyNkZWZpbmUgX19OUl9jbG9ja19nZXR0aW1lIChfX05SX1NZU0NBTExfQkFTRSArIDI2MykKKyNkZWZpbmUgX19OUl9jbG9ja19nZXRyZXMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9jbG9ja19uYW5vc2xlZXAgKF9fTlJfU1lTQ0FMTF9CQVNFKzI2NSkKLSNkZWZpbmUgX19OUl9zdGF0ZnM2NCAoX19OUl9TWVNDQUxMX0JBU0UrMjY2KQotI2RlZmluZSBfX05SX2ZzdGF0ZnM2NCAoX19OUl9TWVNDQUxMX0JBU0UrMjY3KQotI2RlZmluZSBfX05SX3Rna2lsbCAoX19OUl9TWVNDQUxMX0JBU0UrMjY4KQorI2RlZmluZSBfX05SX2Nsb2NrX25hbm9zbGVlcCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNjUpCisjZGVmaW5lIF9fTlJfc3RhdGZzNjQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY2KQorI2RlZmluZSBfX05SX2ZzdGF0ZnM2NCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNjcpCisjZGVmaW5lIF9fTlJfdGdraWxsIChfX05SX1NZU0NBTExfQkFTRSArIDI2OCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfdXRpbWVzIChfX05SX1NZU0NBTExfQkFTRSsyNjkpCi0jZGVmaW5lIF9fTlJfYXJtX2ZhZHZpc2U2NF82NCAoX19OUl9TWVNDQUxMX0JBU0UrMjcwKQotI2RlZmluZSBfX05SX3BjaWNvbmZpZ19pb2Jhc2UgKF9fTlJfU1lTQ0FMTF9CQVNFKzI3MSkKLSNkZWZpbmUgX19OUl9wY2ljb25maWdfcmVhZCAoX19OUl9TWVNDQUxMX0JBU0UrMjcyKQorI2RlZmluZSBfX05SX3V0aW1lcyAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNjkpCisjZGVmaW5lIF9fTlJfYXJtX2ZhZHZpc2U2NF82NCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNzApCisjZGVmaW5lIF9fTlJfcGNpY29uZmlnX2lvYmFzZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNzEpCisjZGVmaW5lIF9fTlJfcGNpY29uZmlnX3JlYWQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjcyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9wY2ljb25maWdfd3JpdGUgKF9fTlJfU1lTQ0FMTF9CQVNFKzI3MykKLSNkZWZpbmUgX19OUl9tcV9vcGVuIChfX05SX1NZU0NBTExfQkFTRSsyNzQpCi0jZGVmaW5lIF9fTlJfbXFfdW5saW5rIChfX05SX1NZU0NBTExfQkFTRSsyNzUpCi0jZGVmaW5lIF9fTlJfbXFfdGltZWRzZW5kIChfX05SX1NZU0NBTExfQkFTRSsyNzYpCisjZGVmaW5lIF9fTlJfcGNpY29uZmlnX3dyaXRlIChfX05SX1NZU0NBTExfQkFTRSArIDI3MykKKyNkZWZpbmUgX19OUl9tcV9vcGVuIChfX05SX1NZU0NBTExfQkFTRSArIDI3NCkKKyNkZWZpbmUgX19OUl9tcV91bmxpbmsgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjc1KQorI2RlZmluZSBfX05SX21xX3RpbWVkc2VuZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNzYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX21xX3RpbWVkcmVjZWl2ZSAoX19OUl9TWVNDQUxMX0JBU0UrMjc3KQotI2RlZmluZSBfX05SX21xX25vdGlmeSAoX19OUl9TWVNDQUxMX0JBU0UrMjc4KQotI2RlZmluZSBfX05SX21xX2dldHNldGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFKzI3OSkKLSNkZWZpbmUgX19OUl93YWl0aWQgKF9fTlJfU1lTQ0FMTF9CQVNFKzI4MCkKKyNkZWZpbmUgX19OUl9tcV90aW1lZHJlY2VpdmUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjc3KQorI2RlZmluZSBfX05SX21xX25vdGlmeSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNzgpCisjZGVmaW5lIF9fTlJfbXFfZ2V0c2V0YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNzkpCisjZGVmaW5lIF9fTlJfd2FpdGlkIChfX05SX1NZU0NBTExfQkFTRSArIDI4MCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfc29ja2V0IChfX05SX1NZU0NBTExfQkFTRSsyODEpCi0jZGVmaW5lIF9fTlJfYmluZCAoX19OUl9TWVNDQUxMX0JBU0UrMjgyKQotI2RlZmluZSBfX05SX2Nvbm5lY3QgKF9fTlJfU1lTQ0FMTF9CQVNFKzI4MykKLSNkZWZpbmUgX19OUl9saXN0ZW4gKF9fTlJfU1lTQ0FMTF9CQVNFKzI4NCkKKyNkZWZpbmUgX19OUl9zb2NrZXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjgxKQorI2RlZmluZSBfX05SX2JpbmQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjgyKQorI2RlZmluZSBfX05SX2Nvbm5lY3QgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjgzKQorI2RlZmluZSBfX05SX2xpc3RlbiAoX19OUl9TWVNDQUxMX0JBU0UgKyAyODQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2FjY2VwdCAoX19OUl9TWVNDQUxMX0JBU0UrMjg1KQotI2RlZmluZSBfX05SX2dldHNvY2tuYW1lIChfX05SX1NZU0NBTExfQkFTRSsyODYpCi0jZGVmaW5lIF9fTlJfZ2V0cGVlcm5hbWUgKF9fTlJfU1lTQ0FMTF9CQVNFKzI4NykKLSNkZWZpbmUgX19OUl9zb2NrZXRwYWlyIChfX05SX1NZU0NBTExfQkFTRSsyODgpCisjZGVmaW5lIF9fTlJfYWNjZXB0IChfX05SX1NZU0NBTExfQkFTRSArIDI4NSkKKyNkZWZpbmUgX19OUl9nZXRzb2NrbmFtZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyODYpCisjZGVmaW5lIF9fTlJfZ2V0cGVlcm5hbWUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjg3KQorI2RlZmluZSBfX05SX3NvY2tldHBhaXIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjg4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zZW5kIChfX05SX1NZU0NBTExfQkFTRSsyODkpCi0jZGVmaW5lIF9fTlJfc2VuZHRvIChfX05SX1NZU0NBTExfQkFTRSsyOTApCi0jZGVmaW5lIF9fTlJfcmVjdiAoX19OUl9TWVNDQUxMX0JBU0UrMjkxKQotI2RlZmluZSBfX05SX3JlY3Zmcm9tIChfX05SX1NZU0NBTExfQkFTRSsyOTIpCisjZGVmaW5lIF9fTlJfc2VuZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyODkpCisjZGVmaW5lIF9fTlJfc2VuZHRvIChfX05SX1NZU0NBTExfQkFTRSArIDI5MCkKKyNkZWZpbmUgX19OUl9yZWN2IChfX05SX1NZU0NBTExfQkFTRSArIDI5MSkKKyNkZWZpbmUgX19OUl9yZWN2ZnJvbSAoX19OUl9TWVNDQUxMX0JBU0UgKyAyOTIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3NodXRkb3duIChfX05SX1NZU0NBTExfQkFTRSsyOTMpCi0jZGVmaW5lIF9fTlJfc2V0c29ja29wdCAoX19OUl9TWVNDQUxMX0JBU0UrMjk0KQotI2RlZmluZSBfX05SX2dldHNvY2tvcHQgKF9fTlJfU1lTQ0FMTF9CQVNFKzI5NSkKLSNkZWZpbmUgX19OUl9zZW5kbXNnIChfX05SX1NZU0NBTExfQkFTRSsyOTYpCisjZGVmaW5lIF9fTlJfc2h1dGRvd24gKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjkzKQorI2RlZmluZSBfX05SX3NldHNvY2tvcHQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjk0KQorI2RlZmluZSBfX05SX2dldHNvY2tvcHQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjk1KQorI2RlZmluZSBfX05SX3NlbmRtc2cgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjk2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9yZWN2bXNnIChfX05SX1NZU0NBTExfQkFTRSsyOTcpCi0jZGVmaW5lIF9fTlJfc2Vtb3AgKF9fTlJfU1lTQ0FMTF9CQVNFKzI5OCkKLSNkZWZpbmUgX19OUl9zZW1nZXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzI5OSkKLSNkZWZpbmUgX19OUl9zZW1jdGwgKF9fTlJfU1lTQ0FMTF9CQVNFKzMwMCkKKyNkZWZpbmUgX19OUl9yZWN2bXNnIChfX05SX1NZU0NBTExfQkFTRSArIDI5NykKKyNkZWZpbmUgX19OUl9zZW1vcCAoX19OUl9TWVNDQUxMX0JBU0UgKyAyOTgpCisjZGVmaW5lIF9fTlJfc2VtZ2V0IChfX05SX1NZU0NBTExfQkFTRSArIDI5OSkKKyNkZWZpbmUgX19OUl9zZW1jdGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9tc2dzbmQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMwMSkKLSNkZWZpbmUgX19OUl9tc2dyY3YgKF9fTlJfU1lTQ0FMTF9CQVNFKzMwMikKLSNkZWZpbmUgX19OUl9tc2dnZXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMwMykKLSNkZWZpbmUgX19OUl9tc2djdGwgKF9fTlJfU1lTQ0FMTF9CQVNFKzMwNCkKKyNkZWZpbmUgX19OUl9tc2dzbmQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzAxKQorI2RlZmluZSBfX05SX21zZ3JjdiAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMDIpCisjZGVmaW5lIF9fTlJfbXNnZ2V0IChfX05SX1NZU0NBTExfQkFTRSArIDMwMykKKyNkZWZpbmUgX19OUl9tc2djdGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9zaG1hdCAoX19OUl9TWVNDQUxMX0JBU0UrMzA1KQotI2RlZmluZSBfX05SX3NobWR0IChfX05SX1NZU0NBTExfQkFTRSszMDYpCi0jZGVmaW5lIF9fTlJfc2htZ2V0IChfX05SX1NZU0NBTExfQkFTRSszMDcpCi0jZGVmaW5lIF9fTlJfc2htY3RsIChfX05SX1NZU0NBTExfQkFTRSszMDgpCisjZGVmaW5lIF9fTlJfc2htYXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzA1KQorI2RlZmluZSBfX05SX3NobWR0IChfX05SX1NZU0NBTExfQkFTRSArIDMwNikKKyNkZWZpbmUgX19OUl9zaG1nZXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzA3KQorI2RlZmluZSBfX05SX3NobWN0bCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMDgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2FkZF9rZXkgKF9fTlJfU1lTQ0FMTF9CQVNFKzMwOSkKLSNkZWZpbmUgX19OUl9yZXF1ZXN0X2tleSAoX19OUl9TWVNDQUxMX0JBU0UrMzEwKQotI2RlZmluZSBfX05SX2tleWN0bCAoX19OUl9TWVNDQUxMX0JBU0UrMzExKQotI2RlZmluZSBfX05SX3NlbXRpbWVkb3AgKF9fTlJfU1lTQ0FMTF9CQVNFKzMxMikKKyNkZWZpbmUgX19OUl9hZGRfa2V5IChfX05SX1NZU0NBTExfQkFTRSArIDMwOSkKKyNkZWZpbmUgX19OUl9yZXF1ZXN0X2tleSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMTApCisjZGVmaW5lIF9fTlJfa2V5Y3RsIChfX05SX1NZU0NBTExfQkFTRSArIDMxMSkKKyNkZWZpbmUgX19OUl9zZW10aW1lZG9wIChfX05SX1NZU0NBTExfQkFTRSArIDMxMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfdnNlcnZlciAoX19OUl9TWVNDQUxMX0JBU0UrMzEzKQotI2RlZmluZSBfX05SX2lvcHJpb19zZXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMxNCkKLSNkZWZpbmUgX19OUl9pb3ByaW9fZ2V0IChfX05SX1NZU0NBTExfQkFTRSszMTUpCi0jZGVmaW5lIF9fTlJfaW5vdGlmeV9pbml0IChfX05SX1NZU0NBTExfQkFTRSszMTYpCisjZGVmaW5lIF9fTlJfdnNlcnZlciAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMTMpCisjZGVmaW5lIF9fTlJfaW9wcmlvX3NldCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMTQpCisjZGVmaW5lIF9fTlJfaW9wcmlvX2dldCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMTUpCisjZGVmaW5lIF9fTlJfaW5vdGlmeV9pbml0IChfX05SX1NZU0NBTExfQkFTRSArIDMxNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfaW5vdGlmeV9hZGRfd2F0Y2ggKF9fTlJfU1lTQ0FMTF9CQVNFKzMxNykKLSNkZWZpbmUgX19OUl9pbm90aWZ5X3JtX3dhdGNoIChfX05SX1NZU0NBTExfQkFTRSszMTgpCi0jZGVmaW5lIF9fTlJfbWJpbmQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMxOSkKLSNkZWZpbmUgX19OUl9nZXRfbWVtcG9saWN5IChfX05SX1NZU0NBTExfQkFTRSszMjApCisjZGVmaW5lIF9fTlJfaW5vdGlmeV9hZGRfd2F0Y2ggKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzE3KQorI2RlZmluZSBfX05SX2lub3RpZnlfcm1fd2F0Y2ggKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzE4KQorI2RlZmluZSBfX05SX21iaW5kIChfX05SX1NZU0NBTExfQkFTRSArIDMxOSkKKyNkZWZpbmUgX19OUl9nZXRfbWVtcG9saWN5IChfX05SX1NZU0NBTExfQkFTRSArIDMyMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfc2V0X21lbXBvbGljeSAoX19OUl9TWVNDQUxMX0JBU0UrMzIxKQotI2RlZmluZSBfX05SX29wZW5hdCAoX19OUl9TWVNDQUxMX0JBU0UrMzIyKQotI2RlZmluZSBfX05SX21rZGlyYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMyMykKLSNkZWZpbmUgX19OUl9ta25vZGF0IChfX05SX1NZU0NBTExfQkFTRSszMjQpCisjZGVmaW5lIF9fTlJfc2V0X21lbXBvbGljeSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMjEpCisjZGVmaW5lIF9fTlJfb3BlbmF0IChfX05SX1NZU0NBTExfQkFTRSArIDMyMikKKyNkZWZpbmUgX19OUl9ta2RpcmF0IChfX05SX1NZU0NBTExfQkFTRSArIDMyMykKKyNkZWZpbmUgX19OUl9ta25vZGF0IChfX05SX1NZU0NBTExfQkFTRSArIDMyNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfZmNob3duYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMyNSkKLSNkZWZpbmUgX19OUl9mdXRpbWVzYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMyNikKLSNkZWZpbmUgX19OUl9mc3RhdGF0NjQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMyNykKLSNkZWZpbmUgX19OUl91bmxpbmthdCAoX19OUl9TWVNDQUxMX0JBU0UrMzI4KQorI2RlZmluZSBfX05SX2ZjaG93bmF0IChfX05SX1NZU0NBTExfQkFTRSArIDMyNSkKKyNkZWZpbmUgX19OUl9mdXRpbWVzYXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI2KQorI2RlZmluZSBfX05SX2ZzdGF0YXQ2NCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMjcpCisjZGVmaW5lIF9fTlJfdW5saW5rYXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9yZW5hbWVhdCAoX19OUl9TWVNDQUxMX0JBU0UrMzI5KQotI2RlZmluZSBfX05SX2xpbmthdCAoX19OUl9TWVNDQUxMX0JBU0UrMzMwKQotI2RlZmluZSBfX05SX3N5bWxpbmthdCAoX19OUl9TWVNDQUxMX0JBU0UrMzMxKQotI2RlZmluZSBfX05SX3JlYWRsaW5rYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzMzMikKKyNkZWZpbmUgX19OUl9yZW5hbWVhdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMjkpCisjZGVmaW5lIF9fTlJfbGlua2F0IChfX05SX1NZU0NBTExfQkFTRSArIDMzMCkKKyNkZWZpbmUgX19OUl9zeW1saW5rYXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzMxKQorI2RlZmluZSBfX05SX3JlYWRsaW5rYXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzMyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9mY2htb2RhdCAoX19OUl9TWVNDQUxMX0JBU0UrMzMzKQotI2RlZmluZSBfX05SX2ZhY2Nlc3NhdCAoX19OUl9TWVNDQUxMX0JBU0UrMzM0KQotI2RlZmluZSBfX05SX3BzZWxlY3Q2IChfX05SX1NZU0NBTExfQkFTRSszMzUpCi0jZGVmaW5lIF9fTlJfcHBvbGwgKF9fTlJfU1lTQ0FMTF9CQVNFKzMzNikKKyNkZWZpbmUgX19OUl9mY2htb2RhdCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMzMpCisjZGVmaW5lIF9fTlJfZmFjY2Vzc2F0IChfX05SX1NZU0NBTExfQkFTRSArIDMzNCkKKyNkZWZpbmUgX19OUl9wc2VsZWN0NiAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMzUpCisjZGVmaW5lIF9fTlJfcHBvbGwgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzM2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl91bnNoYXJlIChfX05SX1NZU0NBTExfQkFTRSszMzcpCi0jZGVmaW5lIF9fTlJfc2V0X3JvYnVzdF9saXN0IChfX05SX1NZU0NBTExfQkFTRSszMzgpCi0jZGVmaW5lIF9fTlJfZ2V0X3JvYnVzdF9saXN0IChfX05SX1NZU0NBTExfQkFTRSszMzkpCi0jZGVmaW5lIF9fTlJfc3BsaWNlIChfX05SX1NZU0NBTExfQkFTRSszNDApCisjZGVmaW5lIF9fTlJfdW5zaGFyZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMzcpCisjZGVmaW5lIF9fTlJfc2V0X3JvYnVzdF9saXN0IChfX05SX1NZU0NBTExfQkFTRSArIDMzOCkKKyNkZWZpbmUgX19OUl9nZXRfcm9idXN0X2xpc3QgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzM5KQorI2RlZmluZSBfX05SX3NwbGljZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2FybV9zeW5jX2ZpbGVfcmFuZ2UgKF9fTlJfU1lTQ0FMTF9CQVNFKzM0MSkKKyNkZWZpbmUgX19OUl9hcm1fc3luY19maWxlX3JhbmdlIChfX05SX1NZU0NBTExfQkFTRSArIDM0MSkKICNkZWZpbmUgX19OUl9zeW5jX2ZpbGVfcmFuZ2UyIF9fTlJfYXJtX3N5bmNfZmlsZV9yYW5nZQotI2RlZmluZSBfX05SX3RlZSAoX19OUl9TWVNDQUxMX0JBU0UrMzQyKQotI2RlZmluZSBfX05SX3Ztc3BsaWNlIChfX05SX1NZU0NBTExfQkFTRSszNDMpCisjZGVmaW5lIF9fTlJfdGVlIChfX05SX1NZU0NBTExfQkFTRSArIDM0MikKKyNkZWZpbmUgX19OUl92bXNwbGljZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX21vdmVfcGFnZXMgKF9fTlJfU1lTQ0FMTF9CQVNFKzM0NCkKLSNkZWZpbmUgX19OUl9nZXRjcHUgKF9fTlJfU1lTQ0FMTF9CQVNFKzM0NSkKLSNkZWZpbmUgX19OUl9lcG9sbF9wd2FpdCAoX19OUl9TWVNDQUxMX0JBU0UrMzQ2KQotI2RlZmluZSBfX05SX2tleGVjX2xvYWQgKF9fTlJfU1lTQ0FMTF9CQVNFKzM0NykKKyNkZWZpbmUgX19OUl9tb3ZlX3BhZ2VzIChfX05SX1NZU0NBTExfQkFTRSArIDM0NCkKKyNkZWZpbmUgX19OUl9nZXRjcHUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzQ1KQorI2RlZmluZSBfX05SX2Vwb2xsX3B3YWl0IChfX05SX1NZU0NBTExfQkFTRSArIDM0NikKKyNkZWZpbmUgX19OUl9rZXhlY19sb2FkIChfX05SX1NZU0NBTExfQkFTRSArIDM0NykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfdXRpbWVuc2F0IChfX05SX1NZU0NBTExfQkFTRSszNDgpCi0jZGVmaW5lIF9fTlJfc2lnbmFsZmQgKF9fTlJfU1lTQ0FMTF9CQVNFKzM0OSkKLSNkZWZpbmUgX19OUl90aW1lcmZkX2NyZWF0ZSAoX19OUl9TWVNDQUxMX0JBU0UrMzUwKQotI2RlZmluZSBfX05SX2V2ZW50ZmQgKF9fTlJfU1lTQ0FMTF9CQVNFKzM1MSkKKyNkZWZpbmUgX19OUl91dGltZW5zYXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzQ4KQorI2RlZmluZSBfX05SX3NpZ25hbGZkIChfX05SX1NZU0NBTExfQkFTRSArIDM0OSkKKyNkZWZpbmUgX19OUl90aW1lcmZkX2NyZWF0ZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNTApCisjZGVmaW5lIF9fTlJfZXZlbnRmZCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2ZhbGxvY2F0ZSAoX19OUl9TWVNDQUxMX0JBU0UrMzUyKQotI2RlZmluZSBfX05SX3RpbWVyZmRfc2V0dGltZSAoX19OUl9TWVNDQUxMX0JBU0UrMzUzKQotI2RlZmluZSBfX05SX3RpbWVyZmRfZ2V0dGltZSAoX19OUl9TWVNDQUxMX0JBU0UrMzU0KQotI2RlZmluZSBfX05SX3NpZ25hbGZkNCAoX19OUl9TWVNDQUxMX0JBU0UrMzU1KQorI2RlZmluZSBfX05SX2ZhbGxvY2F0ZSAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNTIpCisjZGVmaW5lIF9fTlJfdGltZXJmZF9zZXR0aW1lIChfX05SX1NZU0NBTExfQkFTRSArIDM1MykKKyNkZWZpbmUgX19OUl90aW1lcmZkX2dldHRpbWUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzU0KQorI2RlZmluZSBfX05SX3NpZ25hbGZkNCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2V2ZW50ZmQyIChfX05SX1NZU0NBTExfQkFTRSszNTYpCi0jZGVmaW5lIF9fTlJfZXBvbGxfY3JlYXRlMSAoX19OUl9TWVNDQUxMX0JBU0UrMzU3KQotI2RlZmluZSBfX05SX2R1cDMgKF9fTlJfU1lTQ0FMTF9CQVNFKzM1OCkKLSNkZWZpbmUgX19OUl9waXBlMiAoX19OUl9TWVNDQUxMX0JBU0UrMzU5KQorI2RlZmluZSBfX05SX2V2ZW50ZmQyIChfX05SX1NZU0NBTExfQkFTRSArIDM1NikKKyNkZWZpbmUgX19OUl9lcG9sbF9jcmVhdGUxIChfX05SX1NZU0NBTExfQkFTRSArIDM1NykKKyNkZWZpbmUgX19OUl9kdXAzIChfX05SX1NZU0NBTExfQkFTRSArIDM1OCkKKyNkZWZpbmUgX19OUl9waXBlMiAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNTkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX2lub3RpZnlfaW5pdDEgKF9fTlJfU1lTQ0FMTF9CQVNFKzM2MCkKLSNkZWZpbmUgX19OUl9wcmVhZHYgKF9fTlJfU1lTQ0FMTF9CQVNFKzM2MSkKLSNkZWZpbmUgX19OUl9wd3JpdGV2IChfX05SX1NZU0NBTExfQkFTRSszNjIpCi0jZGVmaW5lIF9fTlJfcnRfdGdzaWdxdWV1ZWluZm8gKF9fTlJfU1lTQ0FMTF9CQVNFKzM2MykKKyNkZWZpbmUgX19OUl9pbm90aWZ5X2luaXQxIChfX05SX1NZU0NBTExfQkFTRSArIDM2MCkKKyNkZWZpbmUgX19OUl9wcmVhZHYgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzYxKQorI2RlZmluZSBfX05SX3B3cml0ZXYgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzYyKQorI2RlZmluZSBfX05SX3J0X3Rnc2lncXVldWVpbmZvIChfX05SX1NZU0NBTExfQkFTRSArIDM2MykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfcGVyZl9ldmVudF9vcGVuIChfX05SX1NZU0NBTExfQkFTRSszNjQpCi0jZGVmaW5lIF9fTlJfcmVjdm1tc2cgKF9fTlJfU1lTQ0FMTF9CQVNFKzM2NSkKLSNkZWZpbmUgX19OUl9hY2NlcHQ0IChfX05SX1NZU0NBTExfQkFTRSszNjYpCi0jZGVmaW5lIF9fTlJfZmFub3RpZnlfaW5pdCAoX19OUl9TWVNDQUxMX0JBU0UrMzY3KQorI2RlZmluZSBfX05SX3BlcmZfZXZlbnRfb3BlbiAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNjQpCisjZGVmaW5lIF9fTlJfcmVjdm1tc2cgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzY1KQorI2RlZmluZSBfX05SX2FjY2VwdDQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzY2KQorI2RlZmluZSBfX05SX2Zhbm90aWZ5X2luaXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzY3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9mYW5vdGlmeV9tYXJrIChfX05SX1NZU0NBTExfQkFTRSszNjgpCi0jZGVmaW5lIF9fTlJfcHJsaW1pdDY0IChfX05SX1NZU0NBTExfQkFTRSszNjkpCi0jZGVmaW5lIF9fTlJfbmFtZV90b19oYW5kbGVfYXQgKF9fTlJfU1lTQ0FMTF9CQVNFKzM3MCkKLSNkZWZpbmUgX19OUl9vcGVuX2J5X2hhbmRsZV9hdCAoX19OUl9TWVNDQUxMX0JBU0UrMzcxKQorI2RlZmluZSBfX05SX2Zhbm90aWZ5X21hcmsgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzY4KQorI2RlZmluZSBfX05SX3BybGltaXQ2NCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNjkpCisjZGVmaW5lIF9fTlJfbmFtZV90b19oYW5kbGVfYXQgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzcwKQorI2RlZmluZSBfX05SX29wZW5fYnlfaGFuZGxlX2F0IChfX05SX1NZU0NBTExfQkFTRSArIDM3MSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfY2xvY2tfYWRqdGltZSAoX19OUl9TWVNDQUxMX0JBU0UrMzcyKQotI2RlZmluZSBfX05SX3N5bmNmcyAoX19OUl9TWVNDQUxMX0JBU0UrMzczKQotI2RlZmluZSBfX05SX3NlbmRtbXNnIChfX05SX1NZU0NBTExfQkFTRSszNzQpCi0jZGVmaW5lIF9fTlJfc2V0bnMgKF9fTlJfU1lTQ0FMTF9CQVNFKzM3NSkKKyNkZWZpbmUgX19OUl9jbG9ja19hZGp0aW1lIChfX05SX1NZU0NBTExfQkFTRSArIDM3MikKKyNkZWZpbmUgX19OUl9zeW5jZnMgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzczKQorI2RlZmluZSBfX05SX3NlbmRtbXNnIChfX05SX1NZU0NBTExfQkFTRSArIDM3NCkKKyNkZWZpbmUgX19OUl9zZXRucyAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNzUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3Byb2Nlc3Nfdm1fcmVhZHYgKF9fTlJfU1lTQ0FMTF9CQVNFKzM3NikKLSNkZWZpbmUgX19OUl9wcm9jZXNzX3ZtX3dyaXRldiAoX19OUl9TWVNDQUxMX0JBU0UrMzc3KQotI2RlZmluZSBfX05SX2tjbXAgKF9fTlJfU1lTQ0FMTF9CQVNFKzM3OCkKLSNkZWZpbmUgX19OUl9maW5pdF9tb2R1bGUgKF9fTlJfU1lTQ0FMTF9CQVNFKzM3OSkKKyNkZWZpbmUgX19OUl9wcm9jZXNzX3ZtX3JlYWR2IChfX05SX1NZU0NBTExfQkFTRSArIDM3NikKKyNkZWZpbmUgX19OUl9wcm9jZXNzX3ZtX3dyaXRldiAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNzcpCisjZGVmaW5lIF9fTlJfa2NtcCAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNzgpCisjZGVmaW5lIF9fTlJfZmluaXRfbW9kdWxlIChfX05SX1NZU0NBTExfQkFTRSArIDM3OSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fTlJfc2NoZWRfc2V0YXR0ciAoX19OUl9TWVNDQUxMX0JBU0UrMzgwKQotI2RlZmluZSBfX05SX3NjaGVkX2dldGF0dHIgKF9fTlJfU1lTQ0FMTF9CQVNFKzM4MSkKLSNkZWZpbmUgX19BUk1fTlJfQkFTRSAoX19OUl9TWVNDQUxMX0JBU0UrMHgwZjAwMDApCi0jZGVmaW5lIF9fQVJNX05SX2JyZWFrcG9pbnQgKF9fQVJNX05SX0JBU0UrMSkKKyNkZWZpbmUgX19OUl9zY2hlZF9zZXRhdHRyIChfX05SX1NZU0NBTExfQkFTRSArIDM4MCkKKyNkZWZpbmUgX19OUl9zY2hlZF9nZXRhdHRyIChfX05SX1NZU0NBTExfQkFTRSArIDM4MSkKKyNkZWZpbmUgX19OUl9yZW5hbWVhdDIgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzgyKQorI2RlZmluZSBfX05SX3NlY2NvbXAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzgzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19BUk1fTlJfY2FjaGVmbHVzaCAoX19BUk1fTlJfQkFTRSsyKQotI2RlZmluZSBfX0FSTV9OUl91c3IyNiAoX19BUk1fTlJfQkFTRSszKQotI2RlZmluZSBfX0FSTV9OUl91c3IzMiAoX19BUk1fTlJfQkFTRSs0KQotI2RlZmluZSBfX0FSTV9OUl9zZXRfdGxzIChfX0FSTV9OUl9CQVNFKzUpCisjZGVmaW5lIF9fTlJfZ2V0cmFuZG9tIChfX05SX1NZU0NBTExfQkFTRSArIDM4NCkKKyNkZWZpbmUgX19OUl9tZW1mZF9jcmVhdGUgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzg1KQorI2RlZmluZSBfX05SX2JwZiAoX19OUl9TWVNDQUxMX0JBU0UgKyAzODYpCisjZGVmaW5lIF9fQVJNX05SX0JBU0UgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMHgwZjAwMDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX0FSTV9OUl9icmVha3BvaW50IChfX0FSTV9OUl9CQVNFICsgMSkKKyNkZWZpbmUgX19BUk1fTlJfY2FjaGVmbHVzaCAoX19BUk1fTlJfQkFTRSArIDIpCisjZGVmaW5lIF9fQVJNX05SX3VzcjI2IChfX0FSTV9OUl9CQVNFICsgMykKKyNkZWZpbmUgX19BUk1fTlJfdXNyMzIgKF9fQVJNX05SX0JBU0UgKyA0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19BUk1fTlJfc2V0X3RscyAoX19BUk1fTlJfQkFTRSArIDUpCiAjdW5kZWYgX19OUl90aW1lCiAjdW5kZWYgX19OUl91bW91bnQKICN1bmRlZiBfX05SX3N0aW1lCi0jdW5kZWYgX19OUl9hbGFybQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyN1bmRlZiBfX05SX2FsYXJtCiAjdW5kZWYgX19OUl91dGltZQogI3VuZGVmIF9fTlJfZ2V0cmxpbWl0CiAjdW5kZWYgX19OUl9zZWxlY3QKLSN1bmRlZiBfX05SX3JlYWRkaXIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjdW5kZWYgX19OUl9yZWFkZGlyCiAjdW5kZWYgX19OUl9tbWFwCiAjdW5kZWYgX19OUl9zb2NrZXRjYWxsCiAjdW5kZWYgX19OUl9zeXNjYWxsCi0jdW5kZWYgX19OUl9pcGMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjdW5kZWYgX19OUl9pcGMKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL2t2bS5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL2t2bS5oCmluZGV4IDkzYWJkNDMuLjg1NWUwODQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9rdm0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20va3ZtLmgKQEAgLTI4LDQ1ICsyOCw1MCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX05SX1NQU1IgNQogI2lmbmRlZiBfX0FTU0VNQkxZX18KKyNpbmNsdWRlIDxsaW51eC9wc2NpLmg+CiAjaW5jbHVkZSA8YXNtL3R5cGVzLmg+Ci0jaW5jbHVkZSA8YXNtL3B0cmFjZS5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNpbmNsdWRlIDxhc20vcHRyYWNlLmg+CiAjZGVmaW5lIF9fS1ZNX0hBVkVfR1VFU1RfREVCVUcKICNkZWZpbmUgX19LVk1fSEFWRV9JUlFfTElORQotI2RlZmluZSBLVk1fUkVHX1NJWkUoaWQpICAgKDFVIDw8ICgoKGlkKSAmIEtWTV9SRUdfU0laRV9NQVNLKSA+PiBLVk1fUkVHX1NJWkVfU0hJRlQpKQorI2RlZmluZSBfX0tWTV9IQVZFX1JFQURPTkxZX01FTQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX1JFR19TSVpFKGlkKSAoMVUgPDwgKCgoaWQpICYgS1ZNX1JFR19TSVpFX01BU0spID4+IEtWTV9SRUdfU0laRV9TSElGVCkpCiBzdHJ1Y3Qga3ZtX3JlZ3MgeworICBzdHJ1Y3QgdXNlcl9wdF9yZWdzIHJlZ3M7CisgIF9fdTY0IHNwX2VsMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHVzZXJfcHRfcmVncyByZWdzOwotIF9fdTY0IHNwX2VsMTsKLSBfX3U2NCBlbHJfZWwxOwotIF9fdTY0IHNwc3JbS1ZNX05SX1NQU1JdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdXNlcl9mcHNpbWRfc3RhdGUgZnBfcmVnczsKKyAgX191NjQgZWxyX2VsMTsKKyAgX191NjQgc3BzcltLVk1fTlJfU1BTUl07CisgIHN0cnVjdCB1c2VyX2Zwc2ltZF9zdGF0ZSBmcF9yZWdzOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9BUk1fVEFSR0VUX0FFTV9WOCAwCiAjZGVmaW5lIEtWTV9BUk1fVEFSR0VUX0ZPVU5EQVRJT05fVjggMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9UQVJHRVRfQ09SVEVYX0E1NyAyCiAjZGVmaW5lIEtWTV9BUk1fVEFSR0VUX1hHRU5FX1BPVEVOWkEgMwotI2RlZmluZSBLVk1fQVJNX05VTV9UQVJHRVRTIDQKLSNkZWZpbmUgS1ZNX0FSTV9ERVZJQ0VfVFlQRV9TSElGVCAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fQVJNX1RBUkdFVF9DT1JURVhfQTUzIDQKKyNkZWZpbmUgS1ZNX0FSTV9OVU1fVEFSR0VUUyA1CisjZGVmaW5lIEtWTV9BUk1fREVWSUNFX1RZUEVfU0hJRlQgMAogI2RlZmluZSBLVk1fQVJNX0RFVklDRV9UWVBFX01BU0sgKDB4ZmZmZiA8PCBLVk1fQVJNX0RFVklDRV9UWVBFX1NISUZUKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9ERVZJQ0VfSURfU0hJRlQgMTYKICNkZWZpbmUgS1ZNX0FSTV9ERVZJQ0VfSURfTUFTSyAoMHhmZmZmIDw8IEtWTV9BUk1fREVWSUNFX0lEX1NISUZUKQogI2RlZmluZSBLVk1fQVJNX0RFVklDRV9WR0lDX1YyIDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9WR0lDX1YyX0FERFJfVFlQRV9ESVNUIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9WR0lDX1YyX0FERFJfVFlQRV9DUFUgMQogI2RlZmluZSBLVk1fVkdJQ19WMl9ESVNUX1NJWkUgMHgxMDAwCiAjZGVmaW5lIEtWTV9WR0lDX1YyX0NQVV9TSVpFIDB4MjAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9WQ1BVX1BPV0VSX09GRiAwCi0jZGVmaW5lIEtWTV9BUk1fVkNQVV9FTDFfMzJCSVQgMQotc3RydWN0IGt2bV92Y3B1X2luaXQgewotIF9fdTMyIHRhcmdldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmVhdHVyZXNbN107CisjZGVmaW5lIEtWTV9BUk1fVkNQVV9FTDFfMzJCSVQgMQorI2RlZmluZSBLVk1fQVJNX1ZDUFVfUFNDSV8wXzIgMgorc3RydWN0IGt2bV92Y3B1X2luaXQgeworICBfX3UzMiB0YXJnZXQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBmZWF0dXJlc1s3XTsKIH07CiBzdHJ1Y3Qga3ZtX3NyZWdzIHsKIH07CkBAIC0xMDksOSArMTE0LDkgQEAKICNkZWZpbmUgS1ZNX1JFR19BUk02NF9TWVNSRUdfQ1JNX1NISUZUIDMKICNkZWZpbmUgS1ZNX1JFR19BUk02NF9TWVNSRUdfT1AyX01BU0sgMHgwMDAwMDAwMDAwMDAwMDA3CiAjZGVmaW5lIEtWTV9SRUdfQVJNNjRfU1lTUkVHX09QMl9TSElGVCAwCi0jZGVmaW5lIEFSTTY0X1NZU19SRUdfU0hJRlRfTUFTSyh4LG4pICAgKCgoeCkgPDwgS1ZNX1JFR19BUk02NF9TWVNSRUdfICMjIG4gIyMgX1NISUZUKSAmICAgS1ZNX1JFR19BUk02NF9TWVNSRUdfICMjIG4gIyMgX01BU0spCisjZGVmaW5lIEFSTTY0X1NZU19SRUdfU0hJRlRfTUFTSyh4LG4pICgoKHgpIDw8IEtWTV9SRUdfQVJNNjRfU1lTUkVHXyAjI24gIyNfU0hJRlQpICYgS1ZNX1JFR19BUk02NF9TWVNSRUdfICMjbiAjI19NQVNLKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19BUk02NF9TWVNfUkVHKG9wMCxvcDEsY3JuLGNybSxvcDIpICAgKEtWTV9SRUdfQVJNNjQgfCBLVk1fUkVHX0FSTTY0X1NZU1JFRyB8ICAgQVJNNjRfU1lTX1JFR19TSElGVF9NQVNLKG9wMCwgT1AwKSB8ICAgQVJNNjRfU1lTX1JFR19TSElGVF9NQVNLKG9wMSwgT1AxKSB8ICAgQVJNNjRfU1lTX1JFR19TSElGVF9NQVNLKGNybiwgQ1JOKSB8ICAgQVJNNjRfU1lTX1JFR19TSElGVF9NQVNLKGNybSwgQ1JNKSB8ICAgQVJNNjRfU1lTX1JFR19TSElGVF9NQVNLKG9wMiwgT1AyKSkKKyNkZWZpbmUgX19BUk02NF9TWVNfUkVHKG9wMCxvcDEsY3JuLGNybSxvcDIpIChLVk1fUkVHX0FSTTY0IHwgS1ZNX1JFR19BUk02NF9TWVNSRUcgfCBBUk02NF9TWVNfUkVHX1NISUZUX01BU0sob3AwLCBPUDApIHwgQVJNNjRfU1lTX1JFR19TSElGVF9NQVNLKG9wMSwgT1AxKSB8IEFSTTY0X1NZU19SRUdfU0hJRlRfTUFTSyhjcm4sIENSTikgfCBBUk02NF9TWVNfUkVHX1NISUZUX01BU0soY3JtLCBDUk0pIHwgQVJNNjRfU1lTX1JFR19TSElGVF9NQVNLKG9wMiwgT1AyKSkKICNkZWZpbmUgQVJNNjRfU1lTX1JFRyguLi4pIChfX0FSTTY0X1NZU19SRUcoX19WQV9BUkdTX18pIHwgS1ZNX1JFR19TSVpFX1U2NCkKICNkZWZpbmUgS1ZNX1JFR19BUk1fVElNRVJfQ1RMIEFSTTY0X1NZU19SRUcoMywgMywgMTQsIDMsIDEpCiAjZGVmaW5lIEtWTV9SRUdfQVJNX1RJTUVSX0NOVCBBUk02NF9TWVNfUkVHKDMsIDMsIDE0LCAzLCAyKQpAQCAtMTI2LDMzICsxMzEsMzQgQEAKICNkZWZpbmUgS1ZNX0RFVl9BUk1fVkdJQ19PRkZTRVRfU0hJRlQgMAogI2RlZmluZSBLVk1fREVWX0FSTV9WR0lDX09GRlNFVF9NQVNLICgweGZmZmZmZmZmVUxMIDw8IEtWTV9ERVZfQVJNX1ZHSUNfT0ZGU0VUX1NISUZUKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0RFVl9BUk1fVkdJQ19HUlBfTlJfSVJRUyAzCiAjZGVmaW5lIEtWTV9BUk1fSVJRX1RZUEVfU0hJRlQgMjQKICNkZWZpbmUgS1ZNX0FSTV9JUlFfVFlQRV9NQVNLIDB4ZmYKICNkZWZpbmUgS1ZNX0FSTV9JUlFfVkNQVV9TSElGVCAxNgotI2RlZmluZSBLVk1fQVJNX0lSUV9WQ1BVX01BU0sgMHhmZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0FSTV9JUlFfVkNQVV9NQVNLIDB4ZmYKICNkZWZpbmUgS1ZNX0FSTV9JUlFfTlVNX1NISUZUIDAKICNkZWZpbmUgS1ZNX0FSTV9JUlFfTlVNX01BU0sgMHhmZmZmCiAjZGVmaW5lIEtWTV9BUk1fSVJRX1RZUEVfQ1BVIDAKLSNkZWZpbmUgS1ZNX0FSTV9JUlFfVFlQRV9TUEkgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0FSTV9JUlFfVFlQRV9TUEkgMQogI2RlZmluZSBLVk1fQVJNX0lSUV9UWVBFX1BQSSAyCiAjZGVmaW5lIEtWTV9BUk1fSVJRX0NQVV9JUlEgMAogI2RlZmluZSBLVk1fQVJNX0lSUV9DUFVfRklRIDEKLSNkZWZpbmUgS1ZNX0FSTV9JUlFfR0lDX01BWCAxMjcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9BUk1fSVJRX0dJQ19NQVggMTI3CiAjZGVmaW5lIEtWTV9QU0NJX0ZOX0JBU0UgMHg5NWMxYmE1ZQogI2RlZmluZSBLVk1fUFNDSV9GTihuKSAoS1ZNX1BTQ0lfRk5fQkFTRSArIChuKSkKICNkZWZpbmUgS1ZNX1BTQ0lfRk5fQ1BVX1NVU1BFTkQgS1ZNX1BTQ0lfRk4oMCkKLSNkZWZpbmUgS1ZNX1BTQ0lfRk5fQ1BVX09GRiBLVk1fUFNDSV9GTigxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX1BTQ0lfRk5fQ1BVX09GRiBLVk1fUFNDSV9GTigxKQogI2RlZmluZSBLVk1fUFNDSV9GTl9DUFVfT04gS1ZNX1BTQ0lfRk4oMikKICNkZWZpbmUgS1ZNX1BTQ0lfRk5fTUlHUkFURSBLVk1fUFNDSV9GTigzKQotI2RlZmluZSBLVk1fUFNDSV9SRVRfU1VDQ0VTUyAwCi0jZGVmaW5lIEtWTV9QU0NJX1JFVF9OSSAoKHVuc2lnbmVkIGxvbmcpLTEpCisjZGVmaW5lIEtWTV9QU0NJX1JFVF9TVUNDRVNTIFBTQ0lfUkVUX1NVQ0NFU1MKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtWTV9QU0NJX1JFVF9JTlZBTCAoKHVuc2lnbmVkIGxvbmcpLTIpCi0jZGVmaW5lIEtWTV9QU0NJX1JFVF9ERU5JRUQgKCh1bnNpZ25lZCBsb25nKS0zKQotI2VuZGlmCisjZGVmaW5lIEtWTV9QU0NJX1JFVF9OSSBQU0NJX1JFVF9OT1RfU1VQUE9SVEVECisjZGVmaW5lIEtWTV9QU0NJX1JFVF9JTlZBTCBQU0NJX1JFVF9JTlZBTElEX1BBUkFNUworI2RlZmluZSBLVk1fUFNDSV9SRVRfREVOSUVEIFBTQ0lfUkVUX0RFTklFRAogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vcGVyZl9yZWdzLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vcGVyZl9yZWdzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzQxYmM3NQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9wZXJmX3JlZ3MuaApAQCAtMCwwICsxLDY2IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9BU01fQVJNNjRfUEVSRl9SRUdTX0gKKyNkZWZpbmUgX0FTTV9BUk02NF9QRVJGX1JFR1NfSAorZW51bSBwZXJmX2V2ZW50X2FybV9yZWdzIHsKKyAgUEVSRl9SRUdfQVJNNjRfWDAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBQRVJGX1JFR19BUk02NF9YMSwKKyAgUEVSRl9SRUdfQVJNNjRfWDIsCisgIFBFUkZfUkVHX0FSTTY0X1gzLAorICBQRVJGX1JFR19BUk02NF9YNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFBFUkZfUkVHX0FSTTY0X1g1LAorICBQRVJGX1JFR19BUk02NF9YNiwKKyAgUEVSRl9SRUdfQVJNNjRfWDcsCisgIFBFUkZfUkVHX0FSTTY0X1g4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUEVSRl9SRUdfQVJNNjRfWDksCisgIFBFUkZfUkVHX0FSTTY0X1gxMCwKKyAgUEVSRl9SRUdfQVJNNjRfWDExLAorICBQRVJGX1JFR19BUk02NF9YMTIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBQRVJGX1JFR19BUk02NF9YMTMsCisgIFBFUkZfUkVHX0FSTTY0X1gxNCwKKyAgUEVSRl9SRUdfQVJNNjRfWDE1LAorICBQRVJGX1JFR19BUk02NF9YMTYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBQRVJGX1JFR19BUk02NF9YMTcsCisgIFBFUkZfUkVHX0FSTTY0X1gxOCwKKyAgUEVSRl9SRUdfQVJNNjRfWDE5LAorICBQRVJGX1JFR19BUk02NF9YMjAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBQRVJGX1JFR19BUk02NF9YMjEsCisgIFBFUkZfUkVHX0FSTTY0X1gyMiwKKyAgUEVSRl9SRUdfQVJNNjRfWDIzLAorICBQRVJGX1JFR19BUk02NF9YMjQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBQRVJGX1JFR19BUk02NF9YMjUsCisgIFBFUkZfUkVHX0FSTTY0X1gyNiwKKyAgUEVSRl9SRUdfQVJNNjRfWDI3LAorICBQRVJGX1JFR19BUk02NF9YMjgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBQRVJGX1JFR19BUk02NF9YMjksCisgIFBFUkZfUkVHX0FSTTY0X0xSLAorICBQRVJGX1JFR19BUk02NF9TUCwKKyAgUEVSRl9SRUdfQVJNNjRfUEMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBQRVJGX1JFR19BUk02NF9NQVgsCit9OworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vcG9zaXhfdHlwZXMuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9wb3NpeF90eXBlcy5oCmluZGV4IDFiODkyNTMuLjYyODliYmUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9wb3NpeF90eXBlcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9wb3NpeF90eXBlcy5oCkBAIC0xNiw0ICsxNiwxMSBAQAogICoqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfX0FTTV9QT1NJWF9UWVBFU19ICisjZGVmaW5lIF9fQVNNX1BPU0lYX1RZUEVTX0gKK3R5cGVkZWYgdW5zaWduZWQgc2hvcnQgX19rZXJuZWxfb2xkX3VpZF90OwordHlwZWRlZiB1bnNpZ25lZCBzaG9ydCBfX2tlcm5lbF9vbGRfZ2lkX3Q7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX2tlcm5lbF9vbGRfdWlkX3QgX19rZXJuZWxfb2xkX3VpZF90CiAjaW5jbHVkZSA8YXNtLWdlbmVyaWMvcG9zaXhfdHlwZXMuaD4KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL3B0cmFjZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL3B0cmFjZS5oCmluZGV4IDU2NTBlMmQuLmVjNTMxZjkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9wdHJhY2UuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vcHRyYWNlLmgKQEAgLTUxLDI4ICs1MSwyOCBAQAogI2lmbmRlZiBfX0FTU0VNQkxZX18KIHN0cnVjdCB1c2VyX3B0X3JlZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZWdzWzMxXTsKLSBfX3U2NCBzcDsKLSBfX3U2NCBwYzsKLSBfX3U2NCBwc3RhdGU7CisgIF9fdTY0IHJlZ3NbMzFdOworICBfX3U2NCBzcDsKKyAgX191NjQgcGM7CisgIF9fdTY0IHBzdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHVzZXJfZnBzaW1kX3N0YXRlIHsKLSBfX3VpbnQxMjhfdCB2cmVnc1szMl07Ci0gX191MzIgZnBzcjsKKyAgX191aW50MTI4X3QgdnJlZ3NbMzJdOworICBfX3UzMiBmcHNyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmcGNyOworICBfX3UzMiBmcGNyOwogfTsKIHN0cnVjdCB1c2VyX2h3ZGVidWdfc3RhdGUgewotIF9fdTMyIGRiZ19pbmZvOworICBfX3UzMiBkYmdfaW5mbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGFkOwotIHN0cnVjdCB7Ci0gX191NjQgYWRkcjsKLSBfX3UzMiBjdHJsOworICBfX3UzMiBwYWQ7CisgIHN0cnVjdCB7CisgICAgX191NjQgYWRkcjsKKyAgICBfX3UzMiBjdHJsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwYWQ7Ci0gfSBkYmdfcmVnc1sxNl07CisgICAgX191MzIgcGFkOworICB9IGRiZ19yZWdzWzE2XTsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vc2lnY29udGV4dC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL3NpZ2NvbnRleHQuaAppbmRleCBjNTlmOWMwLi4zOTNkZmQ0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vc2lnY29udGV4dC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9zaWdjb250ZXh0LmgKQEAgLTIxLDI2ICsyMSwzMyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3Qgc2lnY29udGV4dCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGZhdWx0X2FkZHJlc3M7Ci0gX191NjQgcmVnc1szMV07Ci0gX191NjQgc3A7Ci0gX191NjQgcGM7CisgIF9fdTY0IGZhdWx0X2FkZHJlc3M7CisgIF9fdTY0IHJlZ3NbMzFdOworICBfX3U2NCBzcDsKKyAgX191NjQgcGM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHBzdGF0ZTsKLSBfX3U4IF9fcmVzZXJ2ZWRbNDA5Nl0gX19hdHRyaWJ1dGVfXygoX19hbGlnbmVkX18oMTYpKSk7CisgIF9fdTY0IHBzdGF0ZTsKKyAgX191OCBfX3Jlc2VydmVkWzQwOTZdIF9fYXR0cmlidXRlX18oKF9fYWxpZ25lZF9fKDE2KSkpOwogfTsKIHN0cnVjdCBfYWFyY2g2NF9jdHggewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYWdpYzsKLSBfX3UzMiBzaXplOworICBfX3UzMiBtYWdpYzsKKyAgX191MzIgc2l6ZTsKIH07CiAjZGVmaW5lIEZQU0lNRF9NQUdJQyAweDQ2NTA4MDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZwc2ltZF9jb250ZXh0IHsKLSBzdHJ1Y3QgX2FhcmNoNjRfY3R4IGhlYWQ7Ci0gX191MzIgZnBzcjsKLSBfX3UzMiBmcGNyOworICBzdHJ1Y3QgX2FhcmNoNjRfY3R4IGhlYWQ7CisgIF9fdTMyIGZwc3I7CisgIF9fdTMyIGZwY3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdWludDEyOF90IHZyZWdzWzMyXTsKKyAgX191aW50MTI4X3QgdnJlZ3NbMzJdOworfTsKKyNkZWZpbmUgRVNSX01BR0lDIDB4NDU1MzUyMDEKK3N0cnVjdCBlc3JfY29udGV4dCB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgX2FhcmNoNjRfY3R4IGhlYWQ7CisgIF9fdTY0IGVzcjsKIH07CiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vc3RhdGZzLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1hcm02NC9hc20vc3RhdGZzLmgKaW5kZXggOGYzODQxMi4uMzQ2OWI4YSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tYXJtNjQvYXNtL3N0YXRmcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWFybTY0L2FzbS9zdGF0ZnMuaApAQCAtMTgsNyArMTgsNyBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9fQVNNX1NUQVRGU19ICiAjZGVmaW5lIF9fQVNNX1NUQVRGU19ICi0jZGVmaW5lIEFSQ0hfUEFDS19DT01QQVRfU1RBVEZTNjQgX19hdHRyaWJ1dGVfXygocGFja2VkLGFsaWduZWQoNCkpKQorI2RlZmluZSBBUkNIX1BBQ0tfQ09NUEFUX1NUQVRGUzY0IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpCiAjaW5jbHVkZSA8YXNtLWdlbmVyaWMvc3RhdGZzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL2ZjbnRsLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL2ZjbnRsLmgKaW5kZXggYTE1ODc4Zi4uOTc1M2NmMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9mY250bC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvZmNudGwuaApAQCAtNzksNyArNzksNyBAQAogI2VuZGlmCiAjaWZuZGVmIE9fU1lOQwogI2RlZmluZSBfX09fU1lOQyAwNDAwMDAwMAotI2RlZmluZSBPX1NZTkMgKF9fT19TWU5DfE9fRFNZTkMpCisjZGVmaW5lIE9fU1lOQyAoX19PX1NZTkMgfCBPX0RTWU5DKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgogI2lmbmRlZiBPX1BBVEgKQEAgLTEzNiw3MSArMTM2LDczIEBACiAjZGVmaW5lIEZfR0VUT1dORVJfVUlEUyAxNwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGX09GRF9HRVRMSyAzNgorI2RlZmluZSBGX09GRF9TRVRMSyAzNworI2RlZmluZSBGX09GRF9TRVRMS1cgMzgKICNkZWZpbmUgRl9PV05FUl9USUQgMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRl9PV05FUl9QSUQgMQogI2RlZmluZSBGX09XTkVSX1BHUlAgMgogc3RydWN0IGZfb3duZXJfZXggeworICBpbnQgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHR5cGU7Ci0gX19rZXJuZWxfcGlkX3QgcGlkOworICBfX2tlcm5lbF9waWRfdCBwaWQ7CiB9OwogI2RlZmluZSBGRF9DTE9FWEVDIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZuZGVmIEZfUkRMQ0sKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZfUkRMQ0sgMAogI2RlZmluZSBGX1dSTENLIDEKICNkZWZpbmUgRl9VTkxDSyAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmbmRlZiBGX0VYTENLCiAjZGVmaW5lIEZfRVhMQ0sgNAogI2RlZmluZSBGX1NITENLIDgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExPQ0tfU0ggMQogI2RlZmluZSBMT0NLX0VYIDIKICNkZWZpbmUgTE9DS19OQiA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMT0NLX1VOIDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExPQ0tfTUFORCAzMgogI2RlZmluZSBMT0NLX1JFQUQgNjQKICNkZWZpbmUgTE9DS19XUklURSAxMjgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExPQ0tfUlcgMTkyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGX0xJTlVYX1NQRUNJRklDX0JBU0UgMTAyNAogI2lmbmRlZiBIQVZFX0FSQ0hfU1RSVUNUX0ZMT0NLCiAjaWZuZGVmIF9fQVJDSF9GTE9DS19QQUQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fQVJDSF9GTE9DS19QQUQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKIHN0cnVjdCBmbG9jayB7Ci0gc2hvcnQgbF90eXBlOworICBzaG9ydCBsX3R5cGU7CisgIHNob3J0IGxfd2hlbmNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCBsX3doZW5jZTsKLSBfX2tlcm5lbF9vZmZfdCBsX3N0YXJ0OwotIF9fa2VybmVsX29mZl90IGxfbGVuOwotIF9fa2VybmVsX3BpZF90IGxfcGlkOworICBfX2tlcm5lbF9vZmZfdCBsX3N0YXJ0OworICBfX2tlcm5lbF9vZmZfdCBsX2xlbjsKKyAgX19rZXJuZWxfcGlkX3QgbF9waWQ7CisgIF9fQVJDSF9GTE9DS19QQUQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19BUkNIX0ZMT0NLX1BBRAogfTsKICNlbmRpZgotI2lmbmRlZiBfX0xQNjRfXwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZm5kZWYgSEFWRV9BUkNIX1NUUlVDVF9GTE9DSzY0CiAjaWZuZGVmIF9fQVJDSF9GTE9DSzY0X1BBRAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19BUkNIX0ZMT0NLNjRfUEFECiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmxvY2s2NCB7Ci0gc2hvcnQgbF90eXBlOwotIHNob3J0IGxfd2hlbmNlOwotIF9fa2VybmVsX2xvZmZfdCBsX3N0YXJ0OworICBzaG9ydCBsX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX2xvZmZfdCBsX2xlbjsKLSBfX2tlcm5lbF9waWRfdCBsX3BpZDsKLSBfX0FSQ0hfRkxPQ0s2NF9QQUQKKyAgc2hvcnQgbF93aGVuY2U7CisgIF9fa2VybmVsX2xvZmZfdCBsX3N0YXJ0OworICBfX2tlcm5lbF9sb2ZmX3QgbF9sZW47CisgIF9fa2VybmVsX3BpZF90IGxfcGlkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19BUkNIX0ZMT0NLNjRfUEFECiB9OworI2VuZGlmCisjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZW5kaWYKLSNlbmRpZgotI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL2lvY3RsLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL2lvY3RsLmgKaW5kZXggNzllYzgzYy4uNDY4YzMwMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9pb2N0bC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvaW9jdGwuaApAQCAtMjgsMTYgKzI4LDE2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfSU9DX0RJUkJJVFMgMgogI2VuZGlmCi0jZGVmaW5lIF9JT0NfTlJNQVNLICgoMSA8PCBfSU9DX05SQklUUyktMSkKLSNkZWZpbmUgX0lPQ19UWVBFTUFTSyAoKDEgPDwgX0lPQ19UWVBFQklUUyktMSkKKyNkZWZpbmUgX0lPQ19OUk1BU0sgKCgxIDw8IF9JT0NfTlJCSVRTKSAtIDEpCisjZGVmaW5lIF9JT0NfVFlQRU1BU0sgKCgxIDw8IF9JT0NfVFlQRUJJVFMpIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9JT0NfU0laRU1BU0sgKCgxIDw8IF9JT0NfU0laRUJJVFMpLTEpCi0jZGVmaW5lIF9JT0NfRElSTUFTSyAoKDEgPDwgX0lPQ19ESVJCSVRTKS0xKQorI2RlZmluZSBfSU9DX1NJWkVNQVNLICgoMSA8PCBfSU9DX1NJWkVCSVRTKSAtIDEpCisjZGVmaW5lIF9JT0NfRElSTUFTSyAoKDEgPDwgX0lPQ19ESVJCSVRTKSAtIDEpCiAjZGVmaW5lIF9JT0NfTlJTSElGVCAwCi0jZGVmaW5lIF9JT0NfVFlQRVNISUZUIChfSU9DX05SU0hJRlQrX0lPQ19OUkJJVFMpCisjZGVmaW5lIF9JT0NfVFlQRVNISUZUIChfSU9DX05SU0hJRlQgKyBfSU9DX05SQklUUykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9JT0NfU0laRVNISUZUIChfSU9DX1RZUEVTSElGVCtfSU9DX1RZUEVCSVRTKQotI2RlZmluZSBfSU9DX0RJUlNISUZUIChfSU9DX1NJWkVTSElGVCtfSU9DX1NJWkVCSVRTKQorI2RlZmluZSBfSU9DX1NJWkVTSElGVCAoX0lPQ19UWVBFU0hJRlQgKyBfSU9DX1RZUEVCSVRTKQorI2RlZmluZSBfSU9DX0RJUlNISUZUIChfSU9DX1NJWkVTSElGVCArIF9JT0NfU0laRUJJVFMpCiAjaWZuZGVmIF9JT0NfTk9ORQogI2RlZmluZSBfSU9DX05PTkUgMFUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC00OSwxNyArNDksMTcgQEAKICNpZm5kZWYgX0lPQ19SRUFECiAjZGVmaW5lIF9JT0NfUkVBRCAyVQogI2VuZGlmCi0jZGVmaW5lIF9JT0MoZGlyLHR5cGUsbnIsc2l6ZSkgICAoKChkaXIpIDw8IF9JT0NfRElSU0hJRlQpIHwgICAoKHR5cGUpIDw8IF9JT0NfVFlQRVNISUZUKSB8ICAgKChucikgPDwgX0lPQ19OUlNISUZUKSB8ICAgKChzaXplKSA8PCBfSU9DX1NJWkVTSElGVCkpCisjZGVmaW5lIF9JT0MoZGlyLHR5cGUsbnIsc2l6ZSkgKCgoZGlyKSA8PCBfSU9DX0RJUlNISUZUKSB8ICgodHlwZSkgPDwgX0lPQ19UWVBFU0hJRlQpIHwgKChucikgPDwgX0lPQ19OUlNISUZUKSB8ICgoc2l6ZSkgPDwgX0lPQ19TSVpFU0hJRlQpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX0lPQ19UWVBFQ0hFQ0sodCkgKHNpemVvZih0KSkKLSNkZWZpbmUgX0lPKHR5cGUsbnIpIF9JT0MoX0lPQ19OT05FLCh0eXBlKSwobnIpLDApCi0jZGVmaW5lIF9JT1IodHlwZSxucixzaXplKSBfSU9DKF9JT0NfUkVBRCwodHlwZSksKG5yKSwoX0lPQ19UWVBFQ0hFQ0soc2l6ZSkpKQotI2RlZmluZSBfSU9XKHR5cGUsbnIsc2l6ZSkgX0lPQyhfSU9DX1dSSVRFLCh0eXBlKSwobnIpLChfSU9DX1RZUEVDSEVDSyhzaXplKSkpCisjZGVmaW5lIF9JTyh0eXBlLG5yKSBfSU9DKF9JT0NfTk9ORSwgKHR5cGUpLCAobnIpLCAwKQorI2RlZmluZSBfSU9SKHR5cGUsbnIsc2l6ZSkgX0lPQyhfSU9DX1JFQUQsICh0eXBlKSwgKG5yKSwgKF9JT0NfVFlQRUNIRUNLKHNpemUpKSkKKyNkZWZpbmUgX0lPVyh0eXBlLG5yLHNpemUpIF9JT0MoX0lPQ19XUklURSwgKHR5cGUpLCAobnIpLCAoX0lPQ19UWVBFQ0hFQ0soc2l6ZSkpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX0lPV1IodHlwZSxucixzaXplKSBfSU9DKF9JT0NfUkVBRHxfSU9DX1dSSVRFLCh0eXBlKSwobnIpLChfSU9DX1RZUEVDSEVDSyhzaXplKSkpCi0jZGVmaW5lIF9JT1JfQkFEKHR5cGUsbnIsc2l6ZSkgX0lPQyhfSU9DX1JFQUQsKHR5cGUpLChuciksc2l6ZW9mKHNpemUpKQotI2RlZmluZSBfSU9XX0JBRCh0eXBlLG5yLHNpemUpIF9JT0MoX0lPQ19XUklURSwodHlwZSksKG5yKSxzaXplb2Yoc2l6ZSkpCi0jZGVmaW5lIF9JT1dSX0JBRCh0eXBlLG5yLHNpemUpIF9JT0MoX0lPQ19SRUFEfF9JT0NfV1JJVEUsKHR5cGUpLChuciksc2l6ZW9mKHNpemUpKQorI2RlZmluZSBfSU9XUih0eXBlLG5yLHNpemUpIF9JT0MoX0lPQ19SRUFEIHwgX0lPQ19XUklURSwgKHR5cGUpLCAobnIpLCAoX0lPQ19UWVBFQ0hFQ0soc2l6ZSkpKQorI2RlZmluZSBfSU9SX0JBRCh0eXBlLG5yLHNpemUpIF9JT0MoX0lPQ19SRUFELCAodHlwZSksIChuciksIHNpemVvZihzaXplKSkKKyNkZWZpbmUgX0lPV19CQUQodHlwZSxucixzaXplKSBfSU9DKF9JT0NfV1JJVEUsICh0eXBlKSwgKG5yKSwgc2l6ZW9mKHNpemUpKQorI2RlZmluZSBfSU9XUl9CQUQodHlwZSxucixzaXplKSBfSU9DKF9JT0NfUkVBRCB8IF9JT0NfV1JJVEUsICh0eXBlKSwgKG5yKSwgc2l6ZW9mKHNpemUpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX0lPQ19ESVIobnIpICgoKG5yKSA+PiBfSU9DX0RJUlNISUZUKSAmIF9JT0NfRElSTUFTSykKICNkZWZpbmUgX0lPQ19UWVBFKG5yKSAoKChucikgPj4gX0lPQ19UWVBFU0hJRlQpICYgX0lPQ19UWVBFTUFTSykKQEAgLTY4LDcgKzY4LDcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElPQ19JTiAoX0lPQ19XUklURSA8PCBfSU9DX0RJUlNISUZUKQogI2RlZmluZSBJT0NfT1VUIChfSU9DX1JFQUQgPDwgX0lPQ19ESVJTSElGVCkKLSNkZWZpbmUgSU9DX0lOT1VUICgoX0lPQ19XUklURXxfSU9DX1JFQUQpIDw8IF9JT0NfRElSU0hJRlQpCisjZGVmaW5lIElPQ19JTk9VVCAoKF9JT0NfV1JJVEUgfCBfSU9DX1JFQUQpIDw8IF9JT0NfRElSU0hJRlQpCiAjZGVmaW5lIElPQ1NJWkVfTUFTSyAoX0lPQ19TSVpFTUFTSyA8PCBfSU9DX1NJWkVTSElGVCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElPQ1NJWkVfU0hJRlQgKF9JT0NfU0laRVNISUZUKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9pcGNidWYuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvaXBjYnVmLmgKaW5kZXggY2M3Mjc0ZS4uYjE2ZjcyOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9pcGNidWYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL2lwY2J1Zi5oCkBAIC0xOSwyMCArMTksMjAgQEAKICNpZm5kZWYgX19BU01fR0VORVJJQ19JUENCVUZfSAogI2RlZmluZSBfX0FTTV9HRU5FUklDX0lQQ0JVRl9ICiBzdHJ1Y3QgaXBjNjRfcGVybSB7Ci0gX19rZXJuZWxfa2V5X3Qga2V5OworICBfX2tlcm5lbF9rZXlfdCBrZXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3VpZDMyX3QgdWlkOwotIF9fa2VybmVsX2dpZDMyX3QgZ2lkOwotIF9fa2VybmVsX3VpZDMyX3QgY3VpZDsKLSBfX2tlcm5lbF9naWQzMl90IGNnaWQ7CisgIF9fa2VybmVsX3VpZDMyX3QgdWlkOworICBfX2tlcm5lbF9naWQzMl90IGdpZDsKKyAgX19rZXJuZWxfdWlkMzJfdCBjdWlkOworICBfX2tlcm5lbF9naWQzMl90IGNnaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX21vZGVfdCBtb2RlOwotIHVuc2lnbmVkIGNoYXIgX19wYWQxWzQgLSBzaXplb2YoX19rZXJuZWxfbW9kZV90KV07Ci0gdW5zaWduZWQgc2hvcnQgc2VxOwotIHVuc2lnbmVkIHNob3J0IF9fcGFkMjsKKyAgX19rZXJuZWxfbW9kZV90IG1vZGU7CisgIHVuc2lnbmVkIGNoYXIgX19wYWQxWzQgLSBzaXplb2YoX19rZXJuZWxfbW9kZV90KV07CisgIHVuc2lnbmVkIHNob3J0IHNlcTsKKyAgdW5zaWduZWQgc2hvcnQgX19wYWQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkMTsKLSBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkMjsKKyAgX19rZXJuZWxfdWxvbmdfdCBfX3VudXNlZDE7CisgIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQyOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvbXNnYnVmLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL21zZ2J1Zi5oCmluZGV4IGIyNTAwZWYuLjg2NzY3MmUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvbXNnYnVmLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9tc2didWYuaApAQCAtMjEsMzAgKzIxLDMwIEBACiAjaW5jbHVkZSA8YXNtL2JpdHNwZXJsb25nLmg+CiBzdHJ1Y3QgbXNxaWQ2NF9kcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpcGM2NF9wZXJtIG1zZ19wZXJtOwotIF9fa2VybmVsX3RpbWVfdCBtc2dfc3RpbWU7CisgIHN0cnVjdCBpcGM2NF9wZXJtIG1zZ19wZXJtOworICBfX2tlcm5lbF90aW1lX3QgbXNnX3N0aW1lOwogI2lmIF9fQklUU19QRVJfTE9ORyAhPSA2NAotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQxOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKLSBfX2tlcm5lbF90aW1lX3QgbXNnX3J0aW1lOworICBfX2tlcm5lbF90aW1lX3QgbXNnX3J0aW1lOwogI2lmIF9fQklUU19QRVJfTE9ORyAhPSA2NAotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQyOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKLSBfX2tlcm5lbF90aW1lX3QgbXNnX2N0aW1lOworICBfX2tlcm5lbF90aW1lX3QgbXNnX2N0aW1lOwogI2lmIF9fQklUU19QRVJfTE9ORyAhPSA2NAotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQzOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkMzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKLSBfX2tlcm5lbF91bG9uZ190IG1zZ19jYnl0ZXM7Ci0gX19rZXJuZWxfdWxvbmdfdCBtc2dfcW51bTsKLSBfX2tlcm5lbF91bG9uZ190IG1zZ19xYnl0ZXM7CisgIF9fa2VybmVsX3Vsb25nX3QgbXNnX2NieXRlczsKKyAgX19rZXJuZWxfdWxvbmdfdCBtc2dfcW51bTsKKyAgX19rZXJuZWxfdWxvbmdfdCBtc2dfcWJ5dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9waWRfdCBtc2dfbHNwaWQ7Ci0gX19rZXJuZWxfcGlkX3QgbXNnX2xycGlkOwotIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQ0OwotIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQ1OworICBfX2tlcm5lbF9waWRfdCBtc2dfbHNwaWQ7CisgIF9fa2VybmVsX3BpZF90IG1zZ19scnBpZDsKKyAgX19rZXJuZWxfdWxvbmdfdCBfX3VudXNlZDQ7CisgIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQ1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvcGFyYW0uaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvcGFyYW0uaAppbmRleCA0MTZjNGZiLi42YmRlMTU0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3BhcmFtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9wYXJhbS5oCkBAIC0yNyw3ICsyNyw4IEBACiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZuZGVmIE5PR1JPVVAKLSNkZWZpbmUgTk9HUk9VUCAoLTEpCisjZGVmaW5lIE5PR1JPVVAgKC0gMSkKICNlbmRpZgotI2VuZGlmCisjZGVmaW5lIE1BWEhPU1ROQU1FTEVOIDY0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3BvbGwuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvcG9sbC5oCmluZGV4IDdmYWEwYjguLjQxMzdhYmIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvcG9sbC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvcG9sbC5oCkBAIC01MSw5ICs1MSw5IEBACiAjZGVmaW5lIFBPTExfQlVTWV9MT09QIDB4ODAwMAogc3RydWN0IHBvbGxmZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBmZDsKLSBzaG9ydCBldmVudHM7Ci0gc2hvcnQgcmV2ZW50czsKKyAgaW50IGZkOworICBzaG9ydCBldmVudHM7CisgIHNob3J0IHJldmVudHM7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9wb3NpeF90eXBlcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9wb3NpeF90eXBlcy5oCmluZGV4IDE1MTlhZmYuLmFhNjg0MTIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvcG9zaXhfdHlwZXMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Bvc2l4X3R5cGVzLmgKQEAgLTgyLDcgKzgyLDcgQEAKICNpZm5kZWYgX19rZXJuZWxfZnNpZF90CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgewotIGludCB2YWxbMl07CisgIGludCB2YWxbMl07CiB9IF9fa2VybmVsX2ZzaWRfdDsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvcmVzb3VyY2UuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvcmVzb3VyY2UuaAppbmRleCAyNDM4MTdhLi5hMmJiMTdmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Jlc291cmNlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9yZXNvdXJjZS5oCkBAIC01Niw4ICs1Niw0IEBACiAjZGVmaW5lIFJMSU1fSU5GSU5JVFkgKH4wVUwpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jaWZuZGVmIF9TVEtfTElNX01BWAotI2RlZmluZSBfU1RLX0xJTV9NQVggUkxJTV9JTkZJTklUWQogI2VuZGlmCi0jZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3NlbWJ1Zi5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zZW1idWYuaAppbmRleCBiY2YxNzAyLi4xY2M0ZTMyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3NlbWJ1Zi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2VtYnVmLmgKQEAgLTIxLDIwICsyMSwyMCBAQAogI2luY2x1ZGUgPGFzbS9iaXRzcGVybG9uZy5oPgogc3RydWN0IHNlbWlkNjRfZHMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaXBjNjRfcGVybSBzZW1fcGVybTsKLSBfX2tlcm5lbF90aW1lX3Qgc2VtX290aW1lOworICBzdHJ1Y3QgaXBjNjRfcGVybSBzZW1fcGVybTsKKyAgX19rZXJuZWxfdGltZV90IHNlbV9vdGltZTsKICNpZiBfX0JJVFNfUEVSX0xPTkcgIT0gNjQKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMTsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCi0gX19rZXJuZWxfdGltZV90IHNlbV9jdGltZTsKKyAgX19rZXJuZWxfdGltZV90IHNlbV9jdGltZTsKICNpZiBfX0JJVFNfUEVSX0xPTkcgIT0gNjQKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMjsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCi0gdW5zaWduZWQgbG9uZyBzZW1fbnNlbXM7Ci0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDM7Ci0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDQ7CisgIHVuc2lnbmVkIGxvbmcgc2VtX25zZW1zOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkMzsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zaG1idWYuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2htYnVmLmgKaW5kZXggNjhiODU5ZC4uNmViOGI2YSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zaG1idWYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3NobWJ1Zi5oCkBAIC0yMSw0MyArMjEsNDMgQEAKICNpbmNsdWRlIDxhc20vYml0c3BlcmxvbmcuaD4KIHN0cnVjdCBzaG1pZDY0X2RzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGlwYzY0X3Blcm0gc2htX3Blcm07Ci0gc2l6ZV90IHNobV9zZWdzejsKLSBfX2tlcm5lbF90aW1lX3Qgc2htX2F0aW1lOworICBzdHJ1Y3QgaXBjNjRfcGVybSBzaG1fcGVybTsKKyAgc2l6ZV90IHNobV9zZWdzejsKKyAgX19rZXJuZWxfdGltZV90IHNobV9hdGltZTsKICNpZiBfX0JJVFNfUEVSX0xPTkcgIT0gNjQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDE7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQxOwogI2VuZGlmCi0gX19rZXJuZWxfdGltZV90IHNobV9kdGltZTsKKyAgX19rZXJuZWxfdGltZV90IHNobV9kdGltZTsKICNpZiBfX0JJVFNfUEVSX0xPTkcgIT0gNjQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDI7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQyOwogI2VuZGlmCi0gX19rZXJuZWxfdGltZV90IHNobV9jdGltZTsKKyAgX19rZXJuZWxfdGltZV90IHNobV9jdGltZTsKICNpZiBfX0JJVFNfUEVSX0xPTkcgIT0gNjQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBfX3VudXNlZDM7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQzOwogI2VuZGlmCi0gX19rZXJuZWxfcGlkX3Qgc2htX2NwaWQ7Ci0gX19rZXJuZWxfcGlkX3Qgc2htX2xwaWQ7CisgIF9fa2VybmVsX3BpZF90IHNobV9jcGlkOworICBfX2tlcm5lbF9waWRfdCBzaG1fbHBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfdWxvbmdfdCBzaG1fbmF0dGNoOwotIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQ0OwotIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQ1OworICBfX2tlcm5lbF91bG9uZ190IHNobV9uYXR0Y2g7CisgIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQ0OworICBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkNTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNobWluZm82NCB7Ci0gX19rZXJuZWxfdWxvbmdfdCBzaG1tYXg7Ci0gX19rZXJuZWxfdWxvbmdfdCBzaG1taW47Ci0gX19rZXJuZWxfdWxvbmdfdCBzaG1tbmk7CisgIF9fa2VybmVsX3Vsb25nX3Qgc2htbWF4OworICBfX2tlcm5lbF91bG9uZ190IHNobW1pbjsKKyAgX19rZXJuZWxfdWxvbmdfdCBzaG1tbmk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3Vsb25nX3Qgc2htc2VnOwotIF9fa2VybmVsX3Vsb25nX3Qgc2htYWxsOwotIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQxOwotIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQyOworICBfX2tlcm5lbF91bG9uZ190IHNobXNlZzsKKyAgX19rZXJuZWxfdWxvbmdfdCBzaG1hbGw7CisgIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQxOworICBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfdWxvbmdfdCBfX3VudXNlZDM7Ci0gX19rZXJuZWxfdWxvbmdfdCBfX3VudXNlZDQ7CisgIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQzOworICBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkNDsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3NpZ2luZm8uaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2lnaW5mby5oCmluZGV4IDQyNzcwZWUuLjIwODNmYTEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2lnaW5mby5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2lnaW5mby5oCkBAIC0yMiw4ICsyMiw4IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHVuaW9uIHNpZ3ZhbCB7Ci0gaW50IHNpdmFsX2ludDsKLSB2b2lkIF9fdXNlciAqc2l2YWxfcHRyOworICBpbnQgc2l2YWxfaW50OworICB2b2lkIF9fdXNlciAqIHNpdmFsX3B0cjsKIH0gc2lndmFsX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmbmRlZiBfX0FSQ0hfU0lfUFJFQU1CTEVfU0laRQpAQCAtNTIsNjIgKzUyLDYyIEBACiAjaWZuZGVmIEhBVkVfQVJDSF9TSUdJTkZPX1QKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBzaWdpbmZvIHsKLSBpbnQgc2lfc2lnbm87Ci0gaW50IHNpX2Vycm5vOwotIGludCBzaV9jb2RlOworICBpbnQgc2lfc2lnbm87CisgIGludCBzaV9lcnJubzsKKyAgaW50IHNpX2NvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBpbnQgX3BhZFtTSV9QQURfU0laRV07Ci0gc3RydWN0IHsKLSBfX2tlcm5lbF9waWRfdCBfcGlkOworICB1bmlvbiB7CisgICAgaW50IF9wYWRbU0lfUEFEX1NJWkVdOworICAgIHN0cnVjdCB7CisgICAgICBfX2tlcm5lbF9waWRfdCBfcGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0FSQ0hfU0lfVUlEX1QgX3VpZDsKLSB9IF9raWxsOwotIHN0cnVjdCB7Ci0gX19rZXJuZWxfdGltZXJfdCBfdGlkOworICAgICAgX19BUkNIX1NJX1VJRF9UIF91aWQ7CisgICAgfSBfa2lsbDsKKyAgICBzdHJ1Y3QgeworICAgICAgX19rZXJuZWxfdGltZXJfdCBfdGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgX292ZXJydW47Ci0gY2hhciBfcGFkW3NpemVvZiggX19BUkNIX1NJX1VJRF9UKSAtIHNpemVvZihpbnQpXTsKLSBzaWd2YWxfdCBfc2lndmFsOwotIGludCBfc3lzX3ByaXZhdGU7CisgICAgICBpbnQgX292ZXJydW47CisgICAgICBjaGFyIF9wYWRbc2l6ZW9mKF9fQVJDSF9TSV9VSURfVCkgLSBzaXplb2YoaW50KV07CisgICAgICBzaWd2YWxfdCBfc2lndmFsOworICAgICAgaW50IF9zeXNfcHJpdmF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBfdGltZXI7Ci0gc3RydWN0IHsKLSBfX2tlcm5lbF9waWRfdCBfcGlkOwotIF9fQVJDSF9TSV9VSURfVCBfdWlkOworICAgIH0gX3RpbWVyOworICAgIHN0cnVjdCB7CisgICAgICBfX2tlcm5lbF9waWRfdCBfcGlkOworICAgICAgX19BUkNIX1NJX1VJRF9UIF91aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNpZ3ZhbF90IF9zaWd2YWw7Ci0gfSBfcnQ7Ci0gc3RydWN0IHsKLSBfX2tlcm5lbF9waWRfdCBfcGlkOworICAgICAgc2lndmFsX3QgX3NpZ3ZhbDsKKyAgICB9IF9ydDsKKyAgICBzdHJ1Y3QgeworICAgICAgX19rZXJuZWxfcGlkX3QgX3BpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19BUkNIX1NJX1VJRF9UIF91aWQ7Ci0gaW50IF9zdGF0dXM7Ci0gX19BUkNIX1NJX0NMT0NLX1QgX3V0aW1lOwotIF9fQVJDSF9TSV9DTE9DS19UIF9zdGltZTsKKyAgICAgIF9fQVJDSF9TSV9VSURfVCBfdWlkOworICAgICAgaW50IF9zdGF0dXM7CisgICAgICBfX0FSQ0hfU0lfQ0xPQ0tfVCBfdXRpbWU7CisgICAgICBfX0FSQ0hfU0lfQ0xPQ0tfVCBfc3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gX3NpZ2NobGQ7Ci0gc3RydWN0IHsKLSB2b2lkIF9fdXNlciAqX2FkZHI7CisgICAgfSBfc2lnY2hsZDsKKyAgICBzdHJ1Y3QgeworICAgICAgdm9pZCBfX3VzZXIgKiBfYWRkcjsKICNpZmRlZiBfX0FSQ0hfU0lfVFJBUE5PCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBfdHJhcG5vOworICAgICAgaW50IF90cmFwbm87CiAjZW5kaWYKLSBzaG9ydCBfYWRkcl9sc2I7Ci0gfSBfc2lnZmF1bHQ7CisgICAgICBzaG9ydCBfYWRkcl9sc2I7CisgICAgfSBfc2lnZmF1bHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX19BUkNIX1NJX0JBTkRfVCBfYmFuZDsKLSBpbnQgX2ZkOwotIH0gX3NpZ3BvbGw7CisgICAgc3RydWN0IHsKKyAgICAgIF9fQVJDSF9TSV9CQU5EX1QgX2JhbmQ7CisgICAgICBpbnQgX2ZkOworICAgIH0gX3NpZ3BvbGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gdm9pZCBfX3VzZXIgKl9jYWxsX2FkZHI7Ci0gaW50IF9zeXNjYWxsOwotIHVuc2lnbmVkIGludCBfYXJjaDsKKyAgICBzdHJ1Y3QgeworICAgICAgdm9pZCBfX3VzZXIgKiBfY2FsbF9hZGRyOworICAgICAgaW50IF9zeXNjYWxsOworICAgICAgdW5zaWduZWQgaW50IF9hcmNoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IF9zaWdzeXM7Ci0gfSBfc2lmaWVsZHM7CisgICAgfSBfc2lnc3lzOworICB9IF9zaWZpZWxkczsKIH0gX19BUkNIX1NJX0FUVFJJQlVURVMgc2lnaW5mb190OwogI2RlZmluZSBfX0FSQ0hfU0lHU1lTCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTU0LDc2ICsxNTQsNzYgQEAKICNkZWZpbmUgX19TSV9DT0RFKFQsTikgKE4pCiAjZGVmaW5lIFNJX1VTRVIgMAogI2RlZmluZSBTSV9LRVJORUwgMHg4MAotI2RlZmluZSBTSV9RVUVVRSAtMQorI2RlZmluZSBTSV9RVUVVRSAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNJX1RJTUVSIF9fU0lfQ09ERShfX1NJX1RJTUVSLC0yKQotI2RlZmluZSBTSV9NRVNHUSBfX1NJX0NPREUoX19TSV9NRVNHUSwtMykKLSNkZWZpbmUgU0lfQVNZTkNJTyAtNAotI2RlZmluZSBTSV9TSUdJTyAtNQorI2RlZmluZSBTSV9USU1FUiBfX1NJX0NPREUoX19TSV9USU1FUiwgLSAyKQorI2RlZmluZSBTSV9NRVNHUSBfX1NJX0NPREUoX19TSV9NRVNHUSwgLSAzKQorI2RlZmluZSBTSV9BU1lOQ0lPIC0gNAorI2RlZmluZSBTSV9TSUdJTyAtIDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNJX1RLSUxMIC02Ci0jZGVmaW5lIFNJX0RFVEhSRUFEIC03CisjZGVmaW5lIFNJX1RLSUxMIC0gNgorI2RlZmluZSBTSV9ERVRIUkVBRCAtIDcKICNkZWZpbmUgU0lfRlJPTVVTRVIoc2lwdHIpICgoc2lwdHIpLT5zaV9jb2RlIDw9IDApCiAjZGVmaW5lIFNJX0ZST01LRVJORUwoc2lwdHIpICgoc2lwdHIpLT5zaV9jb2RlID4gMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElMTF9JTExPUEMgKF9fU0lfRkFVTFR8MSkKLSNkZWZpbmUgSUxMX0lMTE9QTiAoX19TSV9GQVVMVHwyKQotI2RlZmluZSBJTExfSUxMQURSIChfX1NJX0ZBVUxUfDMpCi0jZGVmaW5lIElMTF9JTExUUlAgKF9fU0lfRkFVTFR8NCkKKyNkZWZpbmUgSUxMX0lMTE9QQyAoX19TSV9GQVVMVCB8IDEpCisjZGVmaW5lIElMTF9JTExPUE4gKF9fU0lfRkFVTFQgfCAyKQorI2RlZmluZSBJTExfSUxMQURSIChfX1NJX0ZBVUxUIHwgMykKKyNkZWZpbmUgSUxMX0lMTFRSUCAoX19TSV9GQVVMVCB8IDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJTExfUFJWT1BDIChfX1NJX0ZBVUxUfDUpCi0jZGVmaW5lIElMTF9QUlZSRUcgKF9fU0lfRkFVTFR8NikKLSNkZWZpbmUgSUxMX0NPUFJPQyAoX19TSV9GQVVMVHw3KQotI2RlZmluZSBJTExfQkFEU1RLIChfX1NJX0ZBVUxUfDgpCisjZGVmaW5lIElMTF9QUlZPUEMgKF9fU0lfRkFVTFQgfCA1KQorI2RlZmluZSBJTExfUFJWUkVHIChfX1NJX0ZBVUxUIHwgNikKKyNkZWZpbmUgSUxMX0NPUFJPQyAoX19TSV9GQVVMVCB8IDcpCisjZGVmaW5lIElMTF9CQURTVEsgKF9fU0lfRkFVTFQgfCA4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTlNJR0lMTCA4Ci0jZGVmaW5lIEZQRV9JTlRESVYgKF9fU0lfRkFVTFR8MSkKLSNkZWZpbmUgRlBFX0lOVE9WRiAoX19TSV9GQVVMVHwyKQotI2RlZmluZSBGUEVfRkxURElWIChfX1NJX0ZBVUxUfDMpCisjZGVmaW5lIEZQRV9JTlRESVYgKF9fU0lfRkFVTFQgfCAxKQorI2RlZmluZSBGUEVfSU5UT1ZGIChfX1NJX0ZBVUxUIHwgMikKKyNkZWZpbmUgRlBFX0ZMVERJViAoX19TSV9GQVVMVCB8IDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBGUEVfRkxUT1ZGIChfX1NJX0ZBVUxUfDQpCi0jZGVmaW5lIEZQRV9GTFRVTkQgKF9fU0lfRkFVTFR8NSkKLSNkZWZpbmUgRlBFX0ZMVFJFUyAoX19TSV9GQVVMVHw2KQotI2RlZmluZSBGUEVfRkxUSU5WIChfX1NJX0ZBVUxUfDcpCisjZGVmaW5lIEZQRV9GTFRPVkYgKF9fU0lfRkFVTFQgfCA0KQorI2RlZmluZSBGUEVfRkxUVU5EIChfX1NJX0ZBVUxUIHwgNSkKKyNkZWZpbmUgRlBFX0ZMVFJFUyAoX19TSV9GQVVMVCB8IDYpCisjZGVmaW5lIEZQRV9GTFRJTlYgKF9fU0lfRkFVTFQgfCA3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRlBFX0ZMVFNVQiAoX19TSV9GQVVMVHw4KQorI2RlZmluZSBGUEVfRkxUU1VCIChfX1NJX0ZBVUxUIHwgOCkKICNkZWZpbmUgTlNJR0ZQRSA4Ci0jZGVmaW5lIFNFR1ZfTUFQRVJSIChfX1NJX0ZBVUxUfDEpCi0jZGVmaW5lIFNFR1ZfQUNDRVJSIChfX1NJX0ZBVUxUfDIpCisjZGVmaW5lIFNFR1ZfTUFQRVJSIChfX1NJX0ZBVUxUIHwgMSkKKyNkZWZpbmUgU0VHVl9BQ0NFUlIgKF9fU0lfRkFVTFQgfCAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTlNJR1NFR1YgMgotI2RlZmluZSBCVVNfQURSQUxOIChfX1NJX0ZBVUxUfDEpCi0jZGVmaW5lIEJVU19BRFJFUlIgKF9fU0lfRkFVTFR8MikKLSNkZWZpbmUgQlVTX09CSkVSUiAoX19TSV9GQVVMVHwzKQorI2RlZmluZSBCVVNfQURSQUxOIChfX1NJX0ZBVUxUIHwgMSkKKyNkZWZpbmUgQlVTX0FEUkVSUiAoX19TSV9GQVVMVCB8IDIpCisjZGVmaW5lIEJVU19PQkpFUlIgKF9fU0lfRkFVTFQgfCAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlVTX01DRUVSUl9BUiAoX19TSV9GQVVMVHw0KQotI2RlZmluZSBCVVNfTUNFRVJSX0FPIChfX1NJX0ZBVUxUfDUpCisjZGVmaW5lIEJVU19NQ0VFUlJfQVIgKF9fU0lfRkFVTFQgfCA0KQorI2RlZmluZSBCVVNfTUNFRVJSX0FPIChfX1NJX0ZBVUxUIHwgNSkKICNkZWZpbmUgTlNJR0JVUyA1Ci0jZGVmaW5lIFRSQVBfQlJLUFQgKF9fU0lfRkFVTFR8MSkKKyNkZWZpbmUgVFJBUF9CUktQVCAoX19TSV9GQVVMVCB8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBUUkFQX1RSQUNFIChfX1NJX0ZBVUxUfDIpCi0jZGVmaW5lIFRSQVBfQlJBTkNIIChfX1NJX0ZBVUxUfDMpCi0jZGVmaW5lIFRSQVBfSFdCS1BUIChfX1NJX0ZBVUxUfDQpCisjZGVmaW5lIFRSQVBfVFJBQ0UgKF9fU0lfRkFVTFQgfCAyKQorI2RlZmluZSBUUkFQX0JSQU5DSCAoX19TSV9GQVVMVCB8IDMpCisjZGVmaW5lIFRSQVBfSFdCS1BUIChfX1NJX0ZBVUxUIHwgNCkKICNkZWZpbmUgTlNJR1RSQVAgNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0xEX0VYSVRFRCAoX19TSV9DSExEfDEpCi0jZGVmaW5lIENMRF9LSUxMRUQgKF9fU0lfQ0hMRHwyKQotI2RlZmluZSBDTERfRFVNUEVEIChfX1NJX0NITER8MykKLSNkZWZpbmUgQ0xEX1RSQVBQRUQgKF9fU0lfQ0hMRHw0KQorI2RlZmluZSBDTERfRVhJVEVEIChfX1NJX0NITEQgfCAxKQorI2RlZmluZSBDTERfS0lMTEVEIChfX1NJX0NITEQgfCAyKQorI2RlZmluZSBDTERfRFVNUEVEIChfX1NJX0NITEQgfCAzKQorI2RlZmluZSBDTERfVFJBUFBFRCAoX19TSV9DSExEIHwgNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENMRF9TVE9QUEVEIChfX1NJX0NITER8NSkKLSNkZWZpbmUgQ0xEX0NPTlRJTlVFRCAoX19TSV9DSExEfDYpCisjZGVmaW5lIENMRF9TVE9QUEVEIChfX1NJX0NITEQgfCA1KQorI2RlZmluZSBDTERfQ09OVElOVUVEIChfX1NJX0NITEQgfCA2KQogI2RlZmluZSBOU0lHQ0hMRCA2Ci0jZGVmaW5lIFBPTExfSU4gKF9fU0lfUE9MTHwxKQorI2RlZmluZSBQT0xMX0lOIChfX1NJX1BPTEwgfCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUE9MTF9PVVQgKF9fU0lfUE9MTHwyKQotI2RlZmluZSBQT0xMX01TRyAoX19TSV9QT0xMfDMpCi0jZGVmaW5lIFBPTExfRVJSIChfX1NJX1BPTEx8NCkKLSNkZWZpbmUgUE9MTF9QUkkgKF9fU0lfUE9MTHw1KQorI2RlZmluZSBQT0xMX09VVCAoX19TSV9QT0xMIHwgMikKKyNkZWZpbmUgUE9MTF9NU0cgKF9fU0lfUE9MTCB8IDMpCisjZGVmaW5lIFBPTExfRVJSIChfX1NJX1BPTEwgfCA0KQorI2RlZmluZSBQT0xMX1BSSSAoX19TSV9QT0xMIHwgNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBPTExfSFVQIChfX1NJX1BPTEx8NikKKyNkZWZpbmUgUE9MTF9IVVAgKF9fU0lfUE9MTCB8IDYpCiAjZGVmaW5lIE5TSUdQT0xMIDYKLSNkZWZpbmUgU1lTX1NFQ0NPTVAgKF9fU0lfU1lTfDEpCisjZGVmaW5lIFNZU19TRUNDT01QIChfX1NJX1NZUyB8IDEpCiAjZGVmaW5lIE5TSUdTWVMgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0lHRVZfU0lHTkFMIDAKQEAgLTIzNiwyMiArMjM2LDIyIEBACiAjZW5kaWYKICNkZWZpbmUgU0lHRVZfTUFYX1NJWkUgNjQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNJR0VWX1BBRF9TSVpFICgoU0lHRVZfTUFYX1NJWkUgLSBfX0FSQ0hfU0lHRVZfUFJFQU1CTEVfU0laRSkgICAvIHNpemVvZihpbnQpKQorI2RlZmluZSBTSUdFVl9QQURfU0laRSAoKFNJR0VWX01BWF9TSVpFIC0gX19BUkNIX1NJR0VWX1BSRUFNQkxFX1NJWkUpIC8gc2l6ZW9mKGludCkpCiB0eXBlZGVmIHN0cnVjdCBzaWdldmVudCB7Ci0gc2lndmFsX3Qgc2lnZXZfdmFsdWU7Ci0gaW50IHNpZ2V2X3NpZ25vOworICBzaWd2YWxfdCBzaWdldl92YWx1ZTsKKyAgaW50IHNpZ2V2X3NpZ25vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc2lnZXZfbm90aWZ5OwotIHVuaW9uIHsKLSBpbnQgX3BhZFtTSUdFVl9QQURfU0laRV07Ci0gaW50IF90aWQ7CisgIGludCBzaWdldl9ub3RpZnk7CisgIHVuaW9uIHsKKyAgICBpbnQgX3BhZFtTSUdFVl9QQURfU0laRV07CisgICAgaW50IF90aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gdm9pZCAoKl9mdW5jdGlvbikoc2lndmFsX3QpOwotIHZvaWQgKl9hdHRyaWJ1dGU7Ci0gfSBfc2lnZXZfdGhyZWFkOworICAgIHN0cnVjdCB7CisgICAgICB2b2lkKCogX2Z1bmN0aW9uKSAoc2lndmFsX3QpOworICAgICAgdm9pZCAqIF9hdHRyaWJ1dGU7CisgICAgfSBfc2lnZXZfdGhyZWFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IF9zaWdldl91bjsKKyAgfSBfc2lnZXZfdW47CiB9IHNpZ2V2ZW50X3Q7CiAjZGVmaW5lIHNpZ2V2X25vdGlmeV9mdW5jdGlvbiBfc2lnZXZfdW4uX3NpZ2V2X3RocmVhZC5fZnVuY3Rpb24KICNkZWZpbmUgc2lnZXZfbm90aWZ5X2F0dHJpYnV0ZXMgX3NpZ2V2X3VuLl9zaWdldl90aHJlYWQuX2F0dHJpYnV0ZQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zaWduYWwtZGVmcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zaWduYWwtZGVmcy5oCmluZGV4IGY0N2NiZTcuLmFkNzdkNzcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2lnbmFsLWRlZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3NpZ25hbC1kZWZzLmgKQEAgLTMzLDEzICszMywxMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZm5kZWYgX19BU1NFTUJMWV9fCiB0eXBlZGVmIHZvaWQgX19zaWduYWxmbl90KGludCk7Ci10eXBlZGVmIF9fc2lnbmFsZm5fdCBfX3VzZXIgKl9fc2lnaGFuZGxlcl90OwordHlwZWRlZiBfX3NpZ25hbGZuX3QgX191c2VyICogX19zaWdoYW5kbGVyX3Q7CiB0eXBlZGVmIHZvaWQgX19yZXN0b3JlZm5fdCh2b2lkKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi10eXBlZGVmIF9fcmVzdG9yZWZuX3QgX191c2VyICpfX3NpZ3Jlc3RvcmVfdDsKLSNkZWZpbmUgU0lHX0RGTCAoKF9fZm9yY2UgX19zaWdoYW5kbGVyX3QpMCkKLSNkZWZpbmUgU0lHX0lHTiAoKF9fZm9yY2UgX19zaWdoYW5kbGVyX3QpMSkKLSNkZWZpbmUgU0lHX0VSUiAoKF9fZm9yY2UgX19zaWdoYW5kbGVyX3QpLTEpCit0eXBlZGVmIF9fcmVzdG9yZWZuX3QgX191c2VyICogX19zaWdyZXN0b3JlX3Q7CisjZGVmaW5lIFNJR19ERkwgKChfX2ZvcmNlIF9fc2lnaGFuZGxlcl90KSAwKQorI2RlZmluZSBTSUdfSUdOICgoX19mb3JjZSBfX3NpZ2hhbmRsZXJfdCkgMSkKKyNkZWZpbmUgU0lHX0VSUiAoKF9fZm9yY2UgX19zaWdoYW5kbGVyX3QpIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zaWduYWwuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc2lnbmFsLmgKaW5kZXggZTEwMzI0MC4uMzAxODhjYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zaWduYWwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3NpZ25hbC5oCkBAIC04Nyw3ICs4Nyw3IEBACiAjaWZuZGVmIF9fQVNTRU1CTFlfXwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBsb25nIHNpZ1tfTlNJR19XT1JEU107CisgIHVuc2lnbmVkIGxvbmcgc2lnW19OU0lHX1dPUkRTXTsKIH0gc2lnc2V0X3Q7CiB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgb2xkX3NpZ3NldF90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTk3LDE5ICs5NywxOSBAQAogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNpZ2FjdGlvbiB7Ci0gX19zaWdoYW5kbGVyX3Qgc2FfaGFuZGxlcjsKLSB1bnNpZ25lZCBsb25nIHNhX2ZsYWdzOworICBfX3NpZ2hhbmRsZXJfdCBzYV9oYW5kbGVyOworICB1bnNpZ25lZCBsb25nIHNhX2ZsYWdzOwogI2lmZGVmIFNBX1JFU1RPUkVSCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fc2lncmVzdG9yZV90IHNhX3Jlc3RvcmVyOworICBfX3NpZ3Jlc3RvcmVfdCBzYV9yZXN0b3JlcjsKICNlbmRpZgotIHNpZ3NldF90IHNhX21hc2s7CisgIHNpZ3NldF90IHNhX21hc2s7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHNpZ2FsdHN0YWNrIHsKLSB2b2lkIF9fdXNlciAqc3Nfc3A7Ci0gaW50IHNzX2ZsYWdzOwotIHNpemVfdCBzc19zaXplOworICB2b2lkIF9fdXNlciAqIHNzX3NwOworICBpbnQgc3NfZmxhZ3M7CisgIHNpemVfdCBzc19zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gc3RhY2tfdDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zdGF0LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3N0YXQuaAppbmRleCBhOTRjNjlkLi40ZGJjMjA4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3N0YXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3N0YXQuaApAQCAtMjIsNTkgKzIyLDU5IEBACiAjZGVmaW5lIFNUQVRfSEFWRV9OU0VDIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc3RhdCB7Ci0gdW5zaWduZWQgbG9uZyBzdF9kZXY7Ci0gdW5zaWduZWQgbG9uZyBzdF9pbm87Ci0gdW5zaWduZWQgaW50IHN0X21vZGU7CisgIHVuc2lnbmVkIGxvbmcgc3RfZGV2OworICB1bnNpZ25lZCBsb25nIHN0X2lubzsKKyAgdW5zaWduZWQgaW50IHN0X21vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzdF9ubGluazsKLSB1bnNpZ25lZCBpbnQgc3RfdWlkOwotIHVuc2lnbmVkIGludCBzdF9naWQ7Ci0gdW5zaWduZWQgbG9uZyBzdF9yZGV2OworICB1bnNpZ25lZCBpbnQgc3Rfbmxpbms7CisgIHVuc2lnbmVkIGludCBzdF91aWQ7CisgIHVuc2lnbmVkIGludCBzdF9naWQ7CisgIHVuc2lnbmVkIGxvbmcgc3RfcmRldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBfX3BhZDE7Ci0gbG9uZyBzdF9zaXplOwotIGludCBzdF9ibGtzaXplOwotIGludCBfX3BhZDI7CisgIHVuc2lnbmVkIGxvbmcgX19wYWQxOworICBsb25nIHN0X3NpemU7CisgIGludCBzdF9ibGtzaXplOworICBpbnQgX19wYWQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIHN0X2Jsb2NrczsKLSBsb25nIHN0X2F0aW1lOwotIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWVfbnNlYzsKLSBsb25nIHN0X210aW1lOworICBsb25nIHN0X2Jsb2NrczsKKyAgbG9uZyBzdF9hdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9hdGltZV9uc2VjOworICBsb25nIHN0X210aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0X210aW1lX25zZWM7Ci0gbG9uZyBzdF9jdGltZTsKLSB1bnNpZ25lZCBsb25nIHN0X2N0aW1lX25zZWM7Ci0gdW5zaWduZWQgaW50IF9fdW51c2VkNDsKKyAgdW5zaWduZWQgbG9uZyBzdF9tdGltZV9uc2VjOworICBsb25nIHN0X2N0aW1lOworICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lX25zZWM7CisgIHVuc2lnbmVkIGludCBfX3VudXNlZDQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBfX3VudXNlZDU7CisgIHVuc2lnbmVkIGludCBfX3VudXNlZDU7CiB9OwogI2lmIF9fQklUU19QRVJfTE9ORyAhPSA2NCB8fCBkZWZpbmVkKF9fQVJDSF9XQU5UX1NUQVQ2NCkKIHN0cnVjdCBzdGF0NjQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGxvbmcgc3RfZGV2OwotIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9pbm87Ci0gdW5zaWduZWQgaW50IHN0X21vZGU7Ci0gdW5zaWduZWQgaW50IHN0X25saW5rOworICB1bnNpZ25lZCBsb25nIGxvbmcgc3RfZGV2OworICB1bnNpZ25lZCBsb25nIGxvbmcgc3RfaW5vOworICB1bnNpZ25lZCBpbnQgc3RfbW9kZTsKKyAgdW5zaWduZWQgaW50IHN0X25saW5rOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc3RfdWlkOwotIHVuc2lnbmVkIGludCBzdF9naWQ7Ci0gdW5zaWduZWQgbG9uZyBsb25nIHN0X3JkZXY7Ci0gdW5zaWduZWQgbG9uZyBsb25nIF9fcGFkMTsKKyAgdW5zaWduZWQgaW50IHN0X3VpZDsKKyAgdW5zaWduZWQgaW50IHN0X2dpZDsKKyAgdW5zaWduZWQgbG9uZyBsb25nIHN0X3JkZXY7CisgIHVuc2lnbmVkIGxvbmcgbG9uZyBfX3BhZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgbG9uZyBzdF9zaXplOwotIGludCBzdF9ibGtzaXplOwotIGludCBfX3BhZDI7Ci0gbG9uZyBsb25nIHN0X2Jsb2NrczsKKyAgbG9uZyBsb25nIHN0X3NpemU7CisgIGludCBzdF9ibGtzaXplOworICBpbnQgX19wYWQyOworICBsb25nIGxvbmcgc3RfYmxvY2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc3RfYXRpbWU7Ci0gdW5zaWduZWQgaW50IHN0X2F0aW1lX25zZWM7Ci0gaW50IHN0X210aW1lOwotIHVuc2lnbmVkIGludCBzdF9tdGltZV9uc2VjOworICBpbnQgc3RfYXRpbWU7CisgIHVuc2lnbmVkIGludCBzdF9hdGltZV9uc2VjOworICBpbnQgc3RfbXRpbWU7CisgIHVuc2lnbmVkIGludCBzdF9tdGltZV9uc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc3RfY3RpbWU7Ci0gdW5zaWduZWQgaW50IHN0X2N0aW1lX25zZWM7Ci0gdW5zaWduZWQgaW50IF9fdW51c2VkNDsKLSB1bnNpZ25lZCBpbnQgX191bnVzZWQ1OworICBpbnQgc3RfY3RpbWU7CisgIHVuc2lnbmVkIGludCBzdF9jdGltZV9uc2VjOworICB1bnNpZ25lZCBpbnQgX191bnVzZWQ0OworICB1bnNpZ25lZCBpbnQgX191bnVzZWQ1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc3RhdGZzLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3N0YXRmcy5oCmluZGV4IDFjOGM1ODkuLjBkMDNjZmYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvc3RhdGZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy9zdGF0ZnMuaApAQCAtMjksMjEgKzI5LDIxIEBACiAjZW5kaWYKICNlbmRpZgogc3RydWN0IHN0YXRmcyB7Ci0gX19zdGF0ZnNfd29yZCBmX3R5cGU7CisgIF9fc3RhdGZzX3dvcmQgZl90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3N0YXRmc193b3JkIGZfYnNpemU7Ci0gX19zdGF0ZnNfd29yZCBmX2Jsb2NrczsKLSBfX3N0YXRmc193b3JkIGZfYmZyZWU7Ci0gX19zdGF0ZnNfd29yZCBmX2JhdmFpbDsKKyAgX19zdGF0ZnNfd29yZCBmX2JzaXplOworICBfX3N0YXRmc193b3JkIGZfYmxvY2tzOworICBfX3N0YXRmc193b3JkIGZfYmZyZWU7CisgIF9fc3RhdGZzX3dvcmQgZl9iYXZhaWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fc3RhdGZzX3dvcmQgZl9maWxlczsKLSBfX3N0YXRmc193b3JkIGZfZmZyZWU7Ci0gX19rZXJuZWxfZnNpZF90IGZfZnNpZDsKLSBfX3N0YXRmc193b3JkIGZfbmFtZWxlbjsKKyAgX19zdGF0ZnNfd29yZCBmX2ZpbGVzOworICBfX3N0YXRmc193b3JkIGZfZmZyZWU7CisgIF9fa2VybmVsX2ZzaWRfdCBmX2ZzaWQ7CisgIF9fc3RhdGZzX3dvcmQgZl9uYW1lbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3N0YXRmc193b3JkIGZfZnJzaXplOwotIF9fc3RhdGZzX3dvcmQgZl9mbGFnczsKLSBfX3N0YXRmc193b3JkIGZfc3BhcmVbNF07CisgIF9fc3RhdGZzX3dvcmQgZl9mcnNpemU7CisgIF9fc3RhdGZzX3dvcmQgZl9mbGFnczsKKyAgX19zdGF0ZnNfd29yZCBmX3NwYXJlWzRdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZuZGVmIEFSQ0hfUEFDS19TVEFURlM2NApAQCAtNTEsMjAgKzUxLDIwIEBACiAjZW5kaWYKIHN0cnVjdCBzdGF0ZnM2NCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fc3RhdGZzX3dvcmQgZl90eXBlOwotIF9fc3RhdGZzX3dvcmQgZl9ic2l6ZTsKLSBfX3U2NCBmX2Jsb2NrczsKLSBfX3U2NCBmX2JmcmVlOworICBfX3N0YXRmc193b3JkIGZfdHlwZTsKKyAgX19zdGF0ZnNfd29yZCBmX2JzaXplOworICBfX3U2NCBmX2Jsb2NrczsKKyAgX191NjQgZl9iZnJlZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZl9iYXZhaWw7Ci0gX191NjQgZl9maWxlczsKLSBfX3U2NCBmX2ZmcmVlOwotIF9fa2VybmVsX2ZzaWRfdCBmX2ZzaWQ7CisgIF9fdTY0IGZfYmF2YWlsOworICBfX3U2NCBmX2ZpbGVzOworICBfX3U2NCBmX2ZmcmVlOworICBfX2tlcm5lbF9mc2lkX3QgZl9mc2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3N0YXRmc193b3JkIGZfbmFtZWxlbjsKLSBfX3N0YXRmc193b3JkIGZfZnJzaXplOwotIF9fc3RhdGZzX3dvcmQgZl9mbGFnczsKLSBfX3N0YXRmc193b3JkIGZfc3BhcmVbNF07CisgIF9fc3RhdGZzX3dvcmQgZl9uYW1lbGVuOworICBfX3N0YXRmc193b3JkIGZfZnJzaXplOworICBfX3N0YXRmc193b3JkIGZfZmxhZ3M7CisgIF9fc3RhdGZzX3dvcmQgZl9zcGFyZVs0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IEFSQ0hfUEFDS19TVEFURlM2NDsKICNpZm5kZWYgQVJDSF9QQUNLX0NPTVBBVF9TVEFURlM2NApAQCAtNzIsMjAgKzcyLDIwIEBACiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY29tcGF0X3N0YXRmczY0IHsKLSBfX3UzMiBmX3R5cGU7Ci0gX191MzIgZl9ic2l6ZTsKLSBfX3U2NCBmX2Jsb2NrczsKKyAgX191MzIgZl90eXBlOworICBfX3UzMiBmX2JzaXplOworICBfX3U2NCBmX2Jsb2NrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZl9iZnJlZTsKLSBfX3U2NCBmX2JhdmFpbDsKLSBfX3U2NCBmX2ZpbGVzOwotIF9fdTY0IGZfZmZyZWU7CisgIF9fdTY0IGZfYmZyZWU7CisgIF9fdTY0IGZfYmF2YWlsOworICBfX3U2NCBmX2ZpbGVzOworICBfX3U2NCBmX2ZmcmVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9mc2lkX3QgZl9mc2lkOwotIF9fdTMyIGZfbmFtZWxlbjsKLSBfX3UzMiBmX2Zyc2l6ZTsKLSBfX3UzMiBmX2ZsYWdzOworICBfX2tlcm5lbF9mc2lkX3QgZl9mc2lkOworICBfX3UzMiBmX25hbWVsZW47CisgIF9fdTMyIGZfZnJzaXplOworICBfX3UzMiBmX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmX3NwYXJlWzRdOworICBfX3UzMiBmX3NwYXJlWzRdOwogfSBBUkNIX1BBQ0tfQ09NUEFUX1NUQVRGUzY0OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Rlcm1iaXRzLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Rlcm1iaXRzLmgKaW5kZXggNThhY2QzZC4uYzA4YmJiOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy90ZXJtYml0cy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvdGVybWJpdHMuaApAQCAtMjYsMzggKzI2LDM4IEBACiAjZGVmaW5lIE5DQ1MgMTkKIHN0cnVjdCB0ZXJtaW9zIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdGNmbGFnX3QgY19pZmxhZzsKLSB0Y2ZsYWdfdCBjX29mbGFnOwotIHRjZmxhZ190IGNfY2ZsYWc7Ci0gdGNmbGFnX3QgY19sZmxhZzsKKyAgdGNmbGFnX3QgY19pZmxhZzsKKyAgdGNmbGFnX3QgY19vZmxhZzsKKyAgdGNmbGFnX3QgY19jZmxhZzsKKyAgdGNmbGFnX3QgY19sZmxhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2NfdCBjX2xpbmU7Ci0gY2NfdCBjX2NjW05DQ1NdOworICBjY190IGNfbGluZTsKKyAgY2NfdCBjX2NjW05DQ1NdOwogfTsKIHN0cnVjdCB0ZXJtaW9zMiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHRjZmxhZ190IGNfaWZsYWc7Ci0gdGNmbGFnX3QgY19vZmxhZzsKLSB0Y2ZsYWdfdCBjX2NmbGFnOwotIHRjZmxhZ190IGNfbGZsYWc7CisgIHRjZmxhZ190IGNfaWZsYWc7CisgIHRjZmxhZ190IGNfb2ZsYWc7CisgIHRjZmxhZ190IGNfY2ZsYWc7CisgIHRjZmxhZ190IGNfbGZsYWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNjX3QgY19saW5lOwotIGNjX3QgY19jY1tOQ0NTXTsKLSBzcGVlZF90IGNfaXNwZWVkOwotIHNwZWVkX3QgY19vc3BlZWQ7CisgIGNjX3QgY19saW5lOworICBjY190IGNfY2NbTkNDU107CisgIHNwZWVkX3QgY19pc3BlZWQ7CisgIHNwZWVkX3QgY19vc3BlZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBrdGVybWlvcyB7Ci0gdGNmbGFnX3QgY19pZmxhZzsKLSB0Y2ZsYWdfdCBjX29mbGFnOworICB0Y2ZsYWdfdCBjX2lmbGFnOworICB0Y2ZsYWdfdCBjX29mbGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB0Y2ZsYWdfdCBjX2NmbGFnOwotIHRjZmxhZ190IGNfbGZsYWc7Ci0gY2NfdCBjX2xpbmU7Ci0gY2NfdCBjX2NjW05DQ1NdOworICB0Y2ZsYWdfdCBjX2NmbGFnOworICB0Y2ZsYWdfdCBjX2xmbGFnOworICBjY190IGNfbGluZTsKKyAgY2NfdCBjX2NjW05DQ1NdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzcGVlZF90IGNfaXNwZWVkOwotIHNwZWVkX3QgY19vc3BlZWQ7CisgIHNwZWVkX3QgY19pc3BlZWQ7CisgIHNwZWVkX3QgY19vc3BlZWQ7CiB9OwogI2RlZmluZSBWSU5UUiAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy90ZXJtaW9zLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Rlcm1pb3MuaAppbmRleCAwYTVkZmQ2Li4xZTVmOWNlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Rlcm1pb3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Rlcm1pb3MuaApAQCAtMjIsMjIgKzIyLDIyIEBACiAjaW5jbHVkZSA8YXNtL2lvY3Rscy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB3aW5zaXplIHsKLSB1bnNpZ25lZCBzaG9ydCB3c19yb3c7Ci0gdW5zaWduZWQgc2hvcnQgd3NfY29sOwotIHVuc2lnbmVkIHNob3J0IHdzX3hwaXhlbDsKKyAgdW5zaWduZWQgc2hvcnQgd3Nfcm93OworICB1bnNpZ25lZCBzaG9ydCB3c19jb2w7CisgIHVuc2lnbmVkIHNob3J0IHdzX3hwaXhlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgd3NfeXBpeGVsOworICB1bnNpZ25lZCBzaG9ydCB3c195cGl4ZWw7CiB9OwogI2RlZmluZSBOQ0MgOAogc3RydWN0IHRlcm1pbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGNfaWZsYWc7Ci0gdW5zaWduZWQgc2hvcnQgY19vZmxhZzsKLSB1bnNpZ25lZCBzaG9ydCBjX2NmbGFnOwotIHVuc2lnbmVkIHNob3J0IGNfbGZsYWc7CisgIHVuc2lnbmVkIHNob3J0IGNfaWZsYWc7CisgIHVuc2lnbmVkIHNob3J0IGNfb2ZsYWc7CisgIHVuc2lnbmVkIHNob3J0IGNfY2ZsYWc7CisgIHVuc2lnbmVkIHNob3J0IGNfbGZsYWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgY19saW5lOwotIHVuc2lnbmVkIGNoYXIgY19jY1tOQ0NdOworICB1bnNpZ25lZCBjaGFyIGNfbGluZTsKKyAgdW5zaWduZWQgY2hhciBjX2NjW05DQ107CiB9OwogI2RlZmluZSBUSU9DTV9MRSAweDAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvdWNvbnRleHQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvdWNvbnRleHQuaAppbmRleCBmMjZkMWNjLi5jZmIxZDJiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3Vjb250ZXh0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy91Y29udGV4dC5oCkBAIC0xOSwxMiArMTksMTIgQEAKICNpZm5kZWYgX19BU01fR0VORVJJQ19VQ09OVEVYVF9ICiAjZGVmaW5lIF9fQVNNX0dFTkVSSUNfVUNPTlRFWFRfSAogc3RydWN0IHVjb250ZXh0IHsKLSB1bnNpZ25lZCBsb25nIHVjX2ZsYWdzOworICB1bnNpZ25lZCBsb25nIHVjX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdWNvbnRleHQgKnVjX2xpbms7Ci0gc3RhY2tfdCB1Y19zdGFjazsKLSBzdHJ1Y3Qgc2lnY29udGV4dCB1Y19tY29udGV4dDsKLSBzaWdzZXRfdCB1Y19zaWdtYXNrOworICBzdHJ1Y3QgdWNvbnRleHQgKiB1Y19saW5rOworICBzdGFja190IHVjX3N0YWNrOworICBzdHJ1Y3Qgc2lnY29udGV4dCB1Y19tY29udGV4dDsKKyAgc2lnc2V0X3QgdWNfc2lnbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3VuaXN0ZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy91bmlzdGQuaAppbmRleCBiZWNjODJkLi5kN2FjNmMyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1nZW5lcmljL3VuaXN0ZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLWdlbmVyaWMvdW5pc3RkLmgKQEAgLTE4LDIyICsxOCwyMiBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaW5jbHVkZSA8YXNtL2JpdHNwZXJsb25nLmg+CiAjaWZuZGVmIF9fU1lTQ0FMTAotI2RlZmluZSBfX1NZU0NBTEwoeCwgeSkKKyNkZWZpbmUgX19TWVNDQUxMKHgseSkKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZiBfX0JJVFNfUEVSX0xPTkcgPT0gMzIgfHwgZGVmaW5lZChfX1NZU0NBTExfQ09NUEFUKQotI2RlZmluZSBfX1NDXzMyNjQoX25yLCBfMzIsIF82NCkgX19TWVNDQUxMKF9uciwgXzMyKQorI2RlZmluZSBfX1NDXzMyNjQoX25yLF8zMixfNjQpIF9fU1lTQ0FMTChfbnIsIF8zMikKICNlbHNlCi0jZGVmaW5lIF9fU0NfMzI2NChfbnIsIF8zMiwgXzY0KSBfX1NZU0NBTEwoX25yLCBfNjQpCisjZGVmaW5lIF9fU0NfMzI2NChfbnIsXzMyLF82NCkgX19TWVNDQUxMKF9uciwgXzY0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgogI2lmZGVmIF9fU1lTQ0FMTF9DT01QQVQKLSNkZWZpbmUgX19TQ19DT01QKF9uciwgX3N5cywgX2NvbXApIF9fU1lTQ0FMTChfbnIsIF9jb21wKQotI2RlZmluZSBfX1NDX0NPTVBfMzI2NChfbnIsIF8zMiwgXzY0LCBfY29tcCkgX19TWVNDQUxMKF9uciwgX2NvbXApCisjZGVmaW5lIF9fU0NfQ09NUChfbnIsX3N5cyxfY29tcCkgX19TWVNDQUxMKF9uciwgX2NvbXApCisjZGVmaW5lIF9fU0NfQ09NUF8zMjY0KF9ucixfMzIsXzY0LF9jb21wKSBfX1NZU0NBTEwoX25yLCBfY29tcCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZWxzZQotI2RlZmluZSBfX1NDX0NPTVAoX25yLCBfc3lzLCBfY29tcCkgX19TWVNDQUxMKF9uciwgX3N5cykKLSNkZWZpbmUgX19TQ19DT01QXzMyNjQoX25yLCBfMzIsIF82NCwgX2NvbXApIF9fU0NfMzI2NChfbnIsIF8zMiwgXzY0KQorI2RlZmluZSBfX1NDX0NPTVAoX25yLF9zeXMsX2NvbXApIF9fU1lTQ0FMTChfbnIsIF9zeXMpCisjZGVmaW5lIF9fU0NfQ09NUF8zMjY0KF9ucixfMzIsXzY0LF9jb21wKSBfX1NDXzMyNjQoX25yLCBfMzIsIF82NCkKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9pb19zZXR1cCAwCkBAIC0xMTMsNDA3ICsxMTMsNDE0IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3F1b3RhY3RsIDYwCiAjZGVmaW5lIF9fTlJfZ2V0ZGVudHM2NCA2MQorI2RlZmluZSBfX0FSQ0hfV0FOVF9DT01QQVRfU1lTX0dFVERFTlRTNjQKICNkZWZpbmUgX19OUjMyNjRfbHNlZWsgNjIKLSNkZWZpbmUgX19OUl9yZWFkIDYzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3JlYWQgNjMKICNkZWZpbmUgX19OUl93cml0ZSA2NAogI2RlZmluZSBfX05SX3JlYWR2IDY1CiAjZGVmaW5lIF9fTlJfd3JpdGV2IDY2Ci0jZGVmaW5lIF9fTlJfcHJlYWQ2NCA2NwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9wcmVhZDY0IDY3CiAjZGVmaW5lIF9fTlJfcHdyaXRlNjQgNjgKICNkZWZpbmUgX19OUl9wcmVhZHYgNjkKICNkZWZpbmUgX19OUl9wd3JpdGV2IDcwCi0jZGVmaW5lIF9fTlIzMjY0X3NlbmRmaWxlIDcxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SMzI2NF9zZW5kZmlsZSA3MQogI2RlZmluZSBfX05SX3BzZWxlY3Q2IDcyCiAjZGVmaW5lIF9fTlJfcHBvbGwgNzMKICNkZWZpbmUgX19OUl9zaWduYWxmZDQgNzQKLSNkZWZpbmUgX19OUl92bXNwbGljZSA3NQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl92bXNwbGljZSA3NQogI2RlZmluZSBfX05SX3NwbGljZSA3NgogI2RlZmluZSBfX05SX3RlZSA3NwogI2RlZmluZSBfX05SX3JlYWRsaW5rYXQgNzgKLSNkZWZpbmUgX19OUjMyNjRfZnN0YXRhdCA3OQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUjMyNjRfZnN0YXRhdCA3OQogI2RlZmluZSBfX05SMzI2NF9mc3RhdCA4MAogI2RlZmluZSBfX05SX3N5bmMgODEKICNkZWZpbmUgX19OUl9mc3luYyA4MgotI2RlZmluZSBfX05SX2ZkYXRhc3luYyA4MwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9mZGF0YXN5bmMgODMKICNpZmRlZiBfX0FSQ0hfV0FOVF9TWU5DX0ZJTEVfUkFOR0UyCiAjZGVmaW5lIF9fTlJfc3luY19maWxlX3JhbmdlMiA4NAogI2Vsc2UKLSNkZWZpbmUgX19OUl9zeW5jX2ZpbGVfcmFuZ2UgODQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc3luY19maWxlX3JhbmdlIDg0CiAjZW5kaWYKICNkZWZpbmUgX19OUl90aW1lcmZkX2NyZWF0ZSA4NQogI2RlZmluZSBfX05SX3RpbWVyZmRfc2V0dGltZSA4NgotI2RlZmluZSBfX05SX3RpbWVyZmRfZ2V0dGltZSA4NwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl90aW1lcmZkX2dldHRpbWUgODcKICNkZWZpbmUgX19OUl91dGltZW5zYXQgODgKICNkZWZpbmUgX19OUl9hY2N0IDg5CiAjZGVmaW5lIF9fTlJfY2FwZ2V0IDkwCi0jZGVmaW5lIF9fTlJfY2Fwc2V0IDkxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2NhcHNldCA5MQogI2RlZmluZSBfX05SX3BlcnNvbmFsaXR5IDkyCiAjZGVmaW5lIF9fTlJfZXhpdCA5MwogI2RlZmluZSBfX05SX2V4aXRfZ3JvdXAgOTQKLSNkZWZpbmUgX19OUl93YWl0aWQgOTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfd2FpdGlkIDk1CiAjZGVmaW5lIF9fTlJfc2V0X3RpZF9hZGRyZXNzIDk2CiAjZGVmaW5lIF9fTlJfdW5zaGFyZSA5NwogI2RlZmluZSBfX05SX2Z1dGV4IDk4Ci0jZGVmaW5lIF9fTlJfc2V0X3JvYnVzdF9saXN0IDk5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NldF9yb2J1c3RfbGlzdCA5OQogI2RlZmluZSBfX05SX2dldF9yb2J1c3RfbGlzdCAxMDAKICNkZWZpbmUgX19OUl9uYW5vc2xlZXAgMTAxCiAjZGVmaW5lIF9fTlJfZ2V0aXRpbWVyIDEwMgotI2RlZmluZSBfX05SX3NldGl0aW1lciAxMDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2V0aXRpbWVyIDEwMwogI2RlZmluZSBfX05SX2tleGVjX2xvYWQgMTA0CiAjZGVmaW5lIF9fTlJfaW5pdF9tb2R1bGUgMTA1CiAjZGVmaW5lIF9fTlJfZGVsZXRlX21vZHVsZSAxMDYKLSNkZWZpbmUgX19OUl90aW1lcl9jcmVhdGUgMTA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3RpbWVyX2NyZWF0ZSAxMDcKICNkZWZpbmUgX19OUl90aW1lcl9nZXR0aW1lIDEwOAogI2RlZmluZSBfX05SX3RpbWVyX2dldG92ZXJydW4gMTA5CiAjZGVmaW5lIF9fTlJfdGltZXJfc2V0dGltZSAxMTAKLSNkZWZpbmUgX19OUl90aW1lcl9kZWxldGUgMTExCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3RpbWVyX2RlbGV0ZSAxMTEKICNkZWZpbmUgX19OUl9jbG9ja19zZXR0aW1lIDExMgogI2RlZmluZSBfX05SX2Nsb2NrX2dldHRpbWUgMTEzCiAjZGVmaW5lIF9fTlJfY2xvY2tfZ2V0cmVzIDExNAotI2RlZmluZSBfX05SX2Nsb2NrX25hbm9zbGVlcCAxMTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfY2xvY2tfbmFub3NsZWVwIDExNQogI2RlZmluZSBfX05SX3N5c2xvZyAxMTYKICNkZWZpbmUgX19OUl9wdHJhY2UgMTE3CiAjZGVmaW5lIF9fTlJfc2NoZWRfc2V0cGFyYW0gMTE4Ci0jZGVmaW5lIF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyIDExOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zY2hlZF9zZXRzY2hlZHVsZXIgMTE5CiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0c2NoZWR1bGVyIDEyMAogI2RlZmluZSBfX05SX3NjaGVkX2dldHBhcmFtIDEyMQogI2RlZmluZSBfX05SX3NjaGVkX3NldGFmZmluaXR5IDEyMgotI2RlZmluZSBfX05SX3NjaGVkX2dldGFmZmluaXR5IDEyMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zY2hlZF9nZXRhZmZpbml0eSAxMjMKICNkZWZpbmUgX19OUl9zY2hlZF95aWVsZCAxMjQKICNkZWZpbmUgX19OUl9zY2hlZF9nZXRfcHJpb3JpdHlfbWF4IDEyNQogI2RlZmluZSBfX05SX3NjaGVkX2dldF9wcmlvcml0eV9taW4gMTI2Ci0jZGVmaW5lIF9fTlJfc2NoZWRfcnJfZ2V0X2ludGVydmFsIDEyNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zY2hlZF9ycl9nZXRfaW50ZXJ2YWwgMTI3CiAjZGVmaW5lIF9fTlJfcmVzdGFydF9zeXNjYWxsIDEyOAogI2RlZmluZSBfX05SX2tpbGwgMTI5CiAjZGVmaW5lIF9fTlJfdGtpbGwgMTMwCi0jZGVmaW5lIF9fTlJfdGdraWxsIDEzMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl90Z2tpbGwgMTMxCiAjZGVmaW5lIF9fTlJfc2lnYWx0c3RhY2sgMTMyCiAjZGVmaW5lIF9fTlJfcnRfc2lnc3VzcGVuZCAxMzMKICNkZWZpbmUgX19OUl9ydF9zaWdhY3Rpb24gMTM0Ci0jZGVmaW5lIF9fTlJfcnRfc2lncHJvY21hc2sgMTM1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3J0X3NpZ3Byb2NtYXNrIDEzNQogI2RlZmluZSBfX05SX3J0X3NpZ3BlbmRpbmcgMTM2CiAjZGVmaW5lIF9fTlJfcnRfc2lndGltZWR3YWl0IDEzNwogI2RlZmluZSBfX05SX3J0X3NpZ3F1ZXVlaW5mbyAxMzgKLSNkZWZpbmUgX19OUl9ydF9zaWdyZXR1cm4gMTM5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3J0X3NpZ3JldHVybiAxMzkKICNkZWZpbmUgX19OUl9zZXRwcmlvcml0eSAxNDAKICNkZWZpbmUgX19OUl9nZXRwcmlvcml0eSAxNDEKICNkZWZpbmUgX19OUl9yZWJvb3QgMTQyCi0jZGVmaW5lIF9fTlJfc2V0cmVnaWQgMTQzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NldHJlZ2lkIDE0MwogI2RlZmluZSBfX05SX3NldGdpZCAxNDQKICNkZWZpbmUgX19OUl9zZXRyZXVpZCAxNDUKICNkZWZpbmUgX19OUl9zZXR1aWQgMTQ2Ci0jZGVmaW5lIF9fTlJfc2V0cmVzdWlkIDE0NwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZXRyZXN1aWQgMTQ3CiAjZGVmaW5lIF9fTlJfZ2V0cmVzdWlkIDE0OAogI2RlZmluZSBfX05SX3NldHJlc2dpZCAxNDkKICNkZWZpbmUgX19OUl9nZXRyZXNnaWQgMTUwCi0jZGVmaW5lIF9fTlJfc2V0ZnN1aWQgMTUxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NldGZzdWlkIDE1MQogI2RlZmluZSBfX05SX3NldGZzZ2lkIDE1MgogI2RlZmluZSBfX05SX3RpbWVzIDE1MwogI2RlZmluZSBfX05SX3NldHBnaWQgMTU0Ci0jZGVmaW5lIF9fTlJfZ2V0cGdpZCAxNTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZ2V0cGdpZCAxNTUKICNkZWZpbmUgX19OUl9nZXRzaWQgMTU2CiAjZGVmaW5lIF9fTlJfc2V0c2lkIDE1NwogI2RlZmluZSBfX05SX2dldGdyb3VwcyAxNTgKLSNkZWZpbmUgX19OUl9zZXRncm91cHMgMTU5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NldGdyb3VwcyAxNTkKICNkZWZpbmUgX19OUl91bmFtZSAxNjAKICNkZWZpbmUgX19OUl9zZXRob3N0bmFtZSAxNjEKICNkZWZpbmUgX19OUl9zZXRkb21haW5uYW1lIDE2MgotI2RlZmluZSBfX05SX2dldHJsaW1pdCAxNjMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZ2V0cmxpbWl0IDE2MwogI2RlZmluZSBfX05SX3NldHJsaW1pdCAxNjQKICNkZWZpbmUgX19OUl9nZXRydXNhZ2UgMTY1CiAjZGVmaW5lIF9fTlJfdW1hc2sgMTY2Ci0jZGVmaW5lIF9fTlJfcHJjdGwgMTY3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3ByY3RsIDE2NwogI2RlZmluZSBfX05SX2dldGNwdSAxNjgKICNkZWZpbmUgX19OUl9nZXR0aW1lb2ZkYXkgMTY5CiAjZGVmaW5lIF9fTlJfc2V0dGltZW9mZGF5IDE3MAotI2RlZmluZSBfX05SX2FkanRpbWV4IDE3MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9hZGp0aW1leCAxNzEKICNkZWZpbmUgX19OUl9nZXRwaWQgMTcyCiAjZGVmaW5lIF9fTlJfZ2V0cHBpZCAxNzMKICNkZWZpbmUgX19OUl9nZXR1aWQgMTc0Ci0jZGVmaW5lIF9fTlJfZ2V0ZXVpZCAxNzUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZ2V0ZXVpZCAxNzUKICNkZWZpbmUgX19OUl9nZXRnaWQgMTc2CiAjZGVmaW5lIF9fTlJfZ2V0ZWdpZCAxNzcKICNkZWZpbmUgX19OUl9nZXR0aWQgMTc4Ci0jZGVmaW5lIF9fTlJfc3lzaW5mbyAxNzkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc3lzaW5mbyAxNzkKICNkZWZpbmUgX19OUl9tcV9vcGVuIDE4MAogI2RlZmluZSBfX05SX21xX3VubGluayAxODEKICNkZWZpbmUgX19OUl9tcV90aW1lZHNlbmQgMTgyCi0jZGVmaW5lIF9fTlJfbXFfdGltZWRyZWNlaXZlIDE4MwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9tcV90aW1lZHJlY2VpdmUgMTgzCiAjZGVmaW5lIF9fTlJfbXFfbm90aWZ5IDE4NAogI2RlZmluZSBfX05SX21xX2dldHNldGF0dHIgMTg1CiAjZGVmaW5lIF9fTlJfbXNnZ2V0IDE4NgotI2RlZmluZSBfX05SX21zZ2N0bCAxODcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbXNnY3RsIDE4NwogI2RlZmluZSBfX05SX21zZ3JjdiAxODgKICNkZWZpbmUgX19OUl9tc2dzbmQgMTg5CiAjZGVmaW5lIF9fTlJfc2VtZ2V0IDE5MAotI2RlZmluZSBfX05SX3NlbWN0bCAxOTEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2VtY3RsIDE5MQogI2RlZmluZSBfX05SX3NlbXRpbWVkb3AgMTkyCiAjZGVmaW5lIF9fTlJfc2Vtb3AgMTkzCiAjZGVmaW5lIF9fTlJfc2htZ2V0IDE5NAotI2RlZmluZSBfX05SX3NobWN0bCAxOTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2htY3RsIDE5NQogI2RlZmluZSBfX05SX3NobWF0IDE5NgogI2RlZmluZSBfX05SX3NobWR0IDE5NwogI2RlZmluZSBfX05SX3NvY2tldCAxOTgKLSNkZWZpbmUgX19OUl9zb2NrZXRwYWlyIDE5OQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zb2NrZXRwYWlyIDE5OQogI2RlZmluZSBfX05SX2JpbmQgMjAwCiAjZGVmaW5lIF9fTlJfbGlzdGVuIDIwMQogI2RlZmluZSBfX05SX2FjY2VwdCAyMDIKLSNkZWZpbmUgX19OUl9jb25uZWN0IDIwMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9jb25uZWN0IDIwMwogI2RlZmluZSBfX05SX2dldHNvY2tuYW1lIDIwNAogI2RlZmluZSBfX05SX2dldHBlZXJuYW1lIDIwNQogI2RlZmluZSBfX05SX3NlbmR0byAyMDYKLSNkZWZpbmUgX19OUl9yZWN2ZnJvbSAyMDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfcmVjdmZyb20gMjA3CiAjZGVmaW5lIF9fTlJfc2V0c29ja29wdCAyMDgKICNkZWZpbmUgX19OUl9nZXRzb2Nrb3B0IDIwOQogI2RlZmluZSBfX05SX3NodXRkb3duIDIxMAotI2RlZmluZSBfX05SX3NlbmRtc2cgMjExCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NlbmRtc2cgMjExCiAjZGVmaW5lIF9fTlJfcmVjdm1zZyAyMTIKICNkZWZpbmUgX19OUl9yZWFkYWhlYWQgMjEzCiAjZGVmaW5lIF9fTlJfYnJrIDIxNAotI2RlZmluZSBfX05SX211bm1hcCAyMTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbXVubWFwIDIxNQogI2RlZmluZSBfX05SX21yZW1hcCAyMTYKICNkZWZpbmUgX19OUl9hZGRfa2V5IDIxNwogI2RlZmluZSBfX05SX3JlcXVlc3Rfa2V5IDIxOAotI2RlZmluZSBfX05SX2tleWN0bCAyMTkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfa2V5Y3RsIDIxOQogI2RlZmluZSBfX05SX2Nsb25lIDIyMAogI2RlZmluZSBfX05SX2V4ZWN2ZSAyMjEKICNkZWZpbmUgX19OUjMyNjRfbW1hcCAyMjIKLSNkZWZpbmUgX19OUjMyNjRfZmFkdmlzZTY0IDIyMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUjMyNjRfZmFkdmlzZTY0IDIyMwogI2lmbmRlZiBfX0FSQ0hfTk9NTVUKICNkZWZpbmUgX19OUl9zd2Fwb24gMjI0CiAjZGVmaW5lIF9fTlJfc3dhcG9mZiAyMjUKLSNkZWZpbmUgX19OUl9tcHJvdGVjdCAyMjYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbXByb3RlY3QgMjI2CiAjZGVmaW5lIF9fTlJfbXN5bmMgMjI3CiAjZGVmaW5lIF9fTlJfbWxvY2sgMjI4CiAjZGVmaW5lIF9fTlJfbXVubG9jayAyMjkKLSNkZWZpbmUgX19OUl9tbG9ja2FsbCAyMzAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbWxvY2thbGwgMjMwCiAjZGVmaW5lIF9fTlJfbXVubG9ja2FsbCAyMzEKICNkZWZpbmUgX19OUl9taW5jb3JlIDIzMgogI2RlZmluZSBfX05SX21hZHZpc2UgMjMzCi0jZGVmaW5lIF9fTlJfcmVtYXBfZmlsZV9wYWdlcyAyMzQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfcmVtYXBfZmlsZV9wYWdlcyAyMzQKICNkZWZpbmUgX19OUl9tYmluZCAyMzUKICNkZWZpbmUgX19OUl9nZXRfbWVtcG9saWN5IDIzNgogI2RlZmluZSBfX05SX3NldF9tZW1wb2xpY3kgMjM3Ci0jZGVmaW5lIF9fTlJfbWlncmF0ZV9wYWdlcyAyMzgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbWlncmF0ZV9wYWdlcyAyMzgKICNkZWZpbmUgX19OUl9tb3ZlX3BhZ2VzIDIzOQogI2VuZGlmCiAjZGVmaW5lIF9fTlJfcnRfdGdzaWdxdWV1ZWluZm8gMjQwCi0jZGVmaW5lIF9fTlJfcGVyZl9ldmVudF9vcGVuIDI0MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9wZXJmX2V2ZW50X29wZW4gMjQxCiAjZGVmaW5lIF9fTlJfYWNjZXB0NCAyNDIKICNkZWZpbmUgX19OUl9yZWN2bW1zZyAyNDMKICNkZWZpbmUgX19OUl9hcmNoX3NwZWNpZmljX3N5c2NhbGwgMjQ0Ci0jZGVmaW5lIF9fTlJfd2FpdDQgMjYwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3dhaXQ0IDI2MAogI2RlZmluZSBfX05SX3BybGltaXQ2NCAyNjEKICNkZWZpbmUgX19OUl9mYW5vdGlmeV9pbml0IDI2MgogI2RlZmluZSBfX05SX2Zhbm90aWZ5X21hcmsgMjYzCi0jZGVmaW5lIF9fTlJfbmFtZV90b19oYW5kbGVfYXQgMjY0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX25hbWVfdG9faGFuZGxlX2F0IDI2NAogI2RlZmluZSBfX05SX29wZW5fYnlfaGFuZGxlX2F0IDI2NQogI2RlZmluZSBfX05SX2Nsb2NrX2FkanRpbWUgMjY2CiAjZGVmaW5lIF9fTlJfc3luY2ZzIDI2NwotI2RlZmluZSBfX05SX3NldG5zIDI2OAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZXRucyAyNjgKICNkZWZpbmUgX19OUl9zZW5kbW1zZyAyNjkKICNkZWZpbmUgX19OUl9wcm9jZXNzX3ZtX3JlYWR2IDI3MAogI2RlZmluZSBfX05SX3Byb2Nlc3Nfdm1fd3JpdGV2IDI3MQotI2RlZmluZSBfX05SX2tjbXAgMjcyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2tjbXAgMjcyCiAjZGVmaW5lIF9fTlJfZmluaXRfbW9kdWxlIDI3MwogI2RlZmluZSBfX05SX3NjaGVkX3NldGF0dHIgMjc0CiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0YXR0ciAyNzUKLSN1bmRlZiBfX05SX3N5c2NhbGxzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3N5c2NhbGxzIDI3NgorI2RlZmluZSBfX05SX3JlbmFtZWF0MiAyNzYKKyNkZWZpbmUgX19OUl9zZWNjb21wIDI3NworI2RlZmluZSBfX05SX2dldHJhbmRvbSAyNzgKKyNkZWZpbmUgX19OUl9tZW1mZF9jcmVhdGUgMjc5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2JwZiAyODAKKyN1bmRlZiBfX05SX3N5c2NhbGxzCisjZGVmaW5lIF9fTlJfc3lzY2FsbHMgMjgxCiAjaWZkZWYgX19BUkNIX1dBTlRfU1lTQ0FMTF9OT19BVAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9vcGVuIDEwMjQKICNkZWZpbmUgX19OUl9saW5rIDEwMjUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdW5saW5rIDEwMjYKICNkZWZpbmUgX19OUl9ta25vZCAxMDI3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2NobW9kIDEwMjgKICNkZWZpbmUgX19OUl9jaG93biAxMDI5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21rZGlyIDEwMzAKICNkZWZpbmUgX19OUl9ybWRpciAxMDMxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2xjaG93biAxMDMyCiAjZGVmaW5lIF9fTlJfYWNjZXNzIDEwMzMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcmVuYW1lIDEwMzQKICNkZWZpbmUgX19OUl9yZWFkbGluayAxMDM1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3N5bWxpbmsgMTAzNgogI2RlZmluZSBfX05SX3V0aW1lcyAxMDM3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SMzI2NF9zdGF0IDEwMzgKICNkZWZpbmUgX19OUjMyNjRfbHN0YXQgMTAzOQotI3VuZGVmIF9fTlJfc3lzY2FsbHMKLSNkZWZpbmUgX19OUl9zeXNjYWxscyAoX19OUjMyNjRfbHN0YXQrMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjdW5kZWYgX19OUl9zeXNjYWxscworI2RlZmluZSBfX05SX3N5c2NhbGxzIChfX05SMzI2NF9sc3RhdCArIDEpCiAjZW5kaWYKICNpZmRlZiBfX0FSQ0hfV0FOVF9TWVNDQUxMX05PX0ZMQUdTCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3BpcGUgMTA0MAogI2RlZmluZSBfX05SX2R1cDIgMTA0MQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9lcG9sbF9jcmVhdGUgMTA0MgogI2RlZmluZSBfX05SX2lub3RpZnlfaW5pdCAxMDQzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2V2ZW50ZmQgMTA0NAogI2RlZmluZSBfX05SX3NpZ25hbGZkIDEwNDUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjdW5kZWYgX19OUl9zeXNjYWxscwotI2RlZmluZSBfX05SX3N5c2NhbGxzIChfX05SX3NpZ25hbGZkKzEpCisjZGVmaW5lIF9fTlJfc3lzY2FsbHMgKF9fTlJfc2lnbmFsZmQgKyAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgogI2lmIChfX0JJVFNfUEVSX0xPTkcgPT0gMzIgfHwgZGVmaW5lZChfX1NZU0NBTExfQ09NUEFUKSkgJiYgZGVmaW5lZChfX0FSQ0hfV0FOVF9TWVNDQUxMX09GRl9UKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZW5kZmlsZSAxMDQ2CiAjZGVmaW5lIF9fTlJfZnRydW5jYXRlIDEwNDcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdHJ1bmNhdGUgMTA0OAogI2RlZmluZSBfX05SX3N0YXQgMTA0OQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9sc3RhdCAxMDUwCiAjZGVmaW5lIF9fTlJfZnN0YXQgMTA1MQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9mY250bCAxMDUyCiAjZGVmaW5lIF9fTlJfZmFkdmlzZTY0IDEwNTMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fQVJDSF9XQU5UX1NZU19GQURWSVNFNjQKICNkZWZpbmUgX19OUl9uZXdmc3RhdGF0IDEwNTQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fQVJDSF9XQU5UX1NZU19ORVdGU1RBVEFUCiAjZGVmaW5lIF9fTlJfZnN0YXRmcyAxMDU1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3N0YXRmcyAxMDU2CiAjZGVmaW5lIF9fTlJfbHNlZWsgMTA1NworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9tbWFwIDEwNTgKICN1bmRlZiBfX05SX3N5c2NhbGxzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX05SX3N5c2NhbGxzIChfX05SX21tYXArMSkKKyNkZWZpbmUgX19OUl9zeXNjYWxscyAoX19OUl9tbWFwICsgMSkKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZmRlZiBfX0FSQ0hfV0FOVF9TWVNDQUxMX0RFUFJFQ0FURUQKICNkZWZpbmUgX19OUl9hbGFybSAxMDU5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0FSQ0hfV0FOVF9TWVNfQUxBUk0KICNkZWZpbmUgX19OUl9nZXRwZ3JwIDEwNjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fQVJDSF9XQU5UX1NZU19HRVRQR1JQCiAjZGVmaW5lIF9fTlJfcGF1c2UgMTA2MQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19BUkNIX1dBTlRfU1lTX1BBVVNFCiAjZGVmaW5lIF9fTlJfdGltZSAxMDYyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0FSQ0hfV0FOVF9TWVNfVElNRQogI2RlZmluZSBfX0FSQ0hfV0FOVF9DT01QQVRfU1lTX1RJTUUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdXRpbWUgMTA2MwogI2RlZmluZSBfX0FSQ0hfV0FOVF9TWVNfVVRJTUUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfY3JlYXQgMTA2NAogI2RlZmluZSBfX05SX2dldGRlbnRzIDEwNjUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fQVJDSF9XQU5UX1NZU19HRVRERU5UUwogI2RlZmluZSBfX05SX2Z1dGltZXNhdCAxMDY2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NlbGVjdCAxMDY3CiAjZGVmaW5lIF9fQVJDSF9XQU5UX1NZU19TRUxFQ1QKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcG9sbCAxMDY4CiAjZGVmaW5lIF9fTlJfZXBvbGxfd2FpdCAxMDY5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3VzdGF0IDEwNzAKICNkZWZpbmUgX19OUl92Zm9yayAxMDcxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX29sZHdhaXQ0IDEwNzIKICNkZWZpbmUgX19OUl9yZWN2IDEwNzMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2VuZCAxMDc0CiAjZGVmaW5lIF9fTlJfYmRmbHVzaCAxMDc1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3Vtb3VudCAxMDc2CiAjZGVmaW5lIF9fQVJDSF9XQU5UX1NZU19PTERVTU9VTlQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdXNlbGliIDEwNzcKICNkZWZpbmUgX19OUl9fc3lzY3RsIDEwNzgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZm9yayAxMDc5CiAjdW5kZWYgX19OUl9zeXNjYWxscwotI2RlZmluZSBfX05SX3N5c2NhbGxzIChfX05SX2ZvcmsrMSkKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zeXNjYWxscyAoX19OUl9mb3JrICsgMSkKKyNlbmRpZgogI2lmIF9fQklUU19QRVJfTE9ORyA9PSA2NCAmJiAhZGVmaW5lZChfX1NZU0NBTExfQ09NUEFUKQogI2RlZmluZSBfX05SX2ZjbnRsIF9fTlIzMjY0X2ZjbnRsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3N0YXRmcyBfX05SMzI2NF9zdGF0ZnMKICNkZWZpbmUgX19OUl9mc3RhdGZzIF9fTlIzMjY0X2ZzdGF0ZnMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdHJ1bmNhdGUgX19OUjMyNjRfdHJ1bmNhdGUKICNkZWZpbmUgX19OUl9mdHJ1bmNhdGUgX19OUjMyNjRfZnRydW5jYXRlCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2xzZWVrIF9fTlIzMjY0X2xzZWVrCiAjZGVmaW5lIF9fTlJfc2VuZGZpbGUgX19OUjMyNjRfc2VuZGZpbGUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbmV3ZnN0YXRhdCBfX05SMzI2NF9mc3RhdGF0CiAjZGVmaW5lIF9fTlJfZnN0YXQgX19OUjMyNjRfZnN0YXQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbW1hcCBfX05SMzI2NF9tbWFwCiAjZGVmaW5lIF9fTlJfZmFkdmlzZTY0IF9fTlIzMjY0X2ZhZHZpc2U2NAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZmRlZiBfX05SMzI2NF9zdGF0CiAjZGVmaW5lIF9fTlJfc3RhdCBfX05SMzI2NF9zdGF0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2xzdGF0IF9fTlIzMjY0X2xzdGF0CiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZWxzZQogI2RlZmluZSBfX05SX2ZjbnRsNjQgX19OUjMyNjRfZmNudGwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc3RhdGZzNjQgX19OUjMyNjRfc3RhdGZzCiAjZGVmaW5lIF9fTlJfZnN0YXRmczY0IF9fTlIzMjY0X2ZzdGF0ZnMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdHJ1bmNhdGU2NCBfX05SMzI2NF90cnVuY2F0ZQogI2RlZmluZSBfX05SX2Z0cnVuY2F0ZTY0IF9fTlIzMjY0X2Z0cnVuY2F0ZQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9sbHNlZWsgX19OUjMyNjRfbHNlZWsKICNkZWZpbmUgX19OUl9zZW5kZmlsZTY0IF9fTlIzMjY0X3NlbmRmaWxlCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2ZzdGF0YXQ2NCBfX05SMzI2NF9mc3RhdGF0CiAjZGVmaW5lIF9fTlJfZnN0YXQ2NCBfX05SMzI2NF9mc3RhdAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9tbWFwMiBfX05SMzI2NF9tbWFwCiAjZGVmaW5lIF9fTlJfZmFkdmlzZTY0XzY0IF9fTlIzMjY0X2ZhZHZpc2U2NAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZmRlZiBfX05SMzI2NF9zdGF0CiAjZGVmaW5lIF9fTlJfc3RhdDY0IF9fTlIzMjY0X3N0YXQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbHN0YXQ2NCBfX05SMzI2NF9sc3RhdAogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9iaXRmaWVsZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vYml0ZmllbGQuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYmU1NmNjCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vYml0ZmllbGQuaApAQCAtMCwwICsxLDIzIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9fVUFQSV9BU01fQklURklFTERfSAorI2RlZmluZSBfX1VBUElfQVNNX0JJVEZJRUxEX0gKKyNkZWZpbmUgX19CSVRGSUVMRF9GSUVMRChmaWVsZCxtb3JlKSBtb3JlIGZpZWxkOworI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vY2FjaGVjdGwuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2NhY2hlY3RsLmgKaW5kZXggNmNjNmYyOC4uODZjZjNlNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vY2FjaGVjdGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9jYWNoZWN0bC5oCkBAIC0xOCwxMCArMTgsMTAgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfQVNNX0NBQ0hFQ1RMCiAjZGVmaW5lIF9BU01fQ0FDSEVDVEwKLSNkZWZpbmUgSUNBQ0hFICgxPDwwKQotI2RlZmluZSBEQ0FDSEUgKDE8PDEpCisjZGVmaW5lIElDQUNIRSAoMSA8PCAwKQorI2RlZmluZSBEQ0FDSEUgKDEgPDwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJDQUNIRSAoSUNBQ0hFfERDQUNIRSkKKyNkZWZpbmUgQkNBQ0hFIChJQ0FDSEUgfCBEQ0FDSEUpCiAjZGVmaW5lIENBQ0hFQUJMRSAwCiAjZGVmaW5lIFVOQ0FDSEVBQkxFIDEKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vZmNudGwuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2ZjbnRsLmgKaW5kZXggMDJlYTNhYy4uODZhZDk3MyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vZmNudGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9mY250bC5oCkBAIC0zMiw3ICszMiw3IEBACiAjZGVmaW5lIE9fTEFSR0VGSUxFIDB4MjAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19PX1NZTkMgMHg0MDAwCi0jZGVmaW5lIE9fU1lOQyAoX19PX1NZTkN8T19EU1lOQykKKyNkZWZpbmUgT19TWU5DIChfX09fU1lOQyB8IE9fRFNZTkMpCiAjZGVmaW5lIE9fRElSRUNUIDB4ODAwMAogI2RlZmluZSBGX0dFVExLIDE0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNTEsMTQgKzUxLDE0IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBmbG9jayB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IGxfdHlwZTsKLSBzaG9ydCBsX3doZW5jZTsKLSBfX2tlcm5lbF9vZmZfdCBsX3N0YXJ0OwotIF9fa2VybmVsX29mZl90IGxfbGVuOworICBzaG9ydCBsX3R5cGU7CisgIHNob3J0IGxfd2hlbmNlOworICBfX2tlcm5lbF9vZmZfdCBsX3N0YXJ0OworICBfX2tlcm5lbF9vZmZfdCBsX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBsX3N5c2lkOwotIF9fa2VybmVsX3BpZF90IGxfcGlkOwotIGxvbmcgcGFkWzRdOworICBsb25nIGxfc3lzaWQ7CisgIF9fa2VybmVsX3BpZF90IGxfcGlkOworICBsb25nIHBhZFs0XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBIQVZFX0FSQ0hfU1RSVUNUX0ZMT0NLCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9pbnN0LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9pbnN0LmgKaW5kZXggYzQ2ZDA5Yi4uZTliODM3MiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vaW5zdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2luc3QuaApAQCAtMTgsODY3ICsxOCwxMDMzIEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX1VBUElfQVNNX0lOU1RfSAogI2RlZmluZSBfVUFQSV9BU01fSU5TVF9ICisjaW5jbHVkZSA8YXNtL2JpdGZpZWxkLmg+CiBlbnVtIG1ham9yX29wIHsKLSBzcGVjX29wLCBiY29uZF9vcCwgal9vcCwgamFsX29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBiZXFfb3AsIGJuZV9vcCwgYmxlel9vcCwgYmd0el9vcCwKLSBhZGRpX29wLCBhZGRpdV9vcCwgc2x0aV9vcCwgc2x0aXVfb3AsCi0gYW5kaV9vcCwgb3JpX29wLCB4b3JpX29wLCBsdWlfb3AsCi0gY29wMF9vcCwgY29wMV9vcCwgY29wMl9vcCwgY29wMXhfb3AsCisgIHNwZWNfb3AsCisgIGJjb25kX29wLAorICBqX29wLAorICBqYWxfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGJlcWxfb3AsIGJuZWxfb3AsIGJsZXpsX29wLCBiZ3R6bF9vcCwKLSBkYWRkaV9vcCwgZGFkZGl1X29wLCBsZGxfb3AsIGxkcl9vcCwKLSBzcGVjMl9vcCwgamFseF9vcCwgbWRteF9vcCwgc3BlYzNfb3AsCi0gbGJfb3AsIGxoX29wLCBsd2xfb3AsIGx3X29wLAorICBiZXFfb3AsCisgIGJuZV9vcCwKKyAgYmxlel9vcCwKKyAgYmd0el9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbGJ1X29wLCBsaHVfb3AsIGx3cl9vcCwgbHd1X29wLAotIHNiX29wLCBzaF9vcCwgc3dsX29wLCBzd19vcCwKLSBzZGxfb3AsIHNkcl9vcCwgc3dyX29wLCBjYWNoZV9vcCwKLSBsbF9vcCwgbHdjMV9vcCwgbHdjMl9vcCwgcHJlZl9vcCwKKyAgYWRkaV9vcCwKKyAgYWRkaXVfb3AsCisgIHNsdGlfb3AsCisgIHNsdGl1X29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsbGRfb3AsIGxkYzFfb3AsIGxkYzJfb3AsIGxkX29wLAotIHNjX29wLCBzd2MxX29wLCBzd2MyX29wLCBtYWpvcl8zYl9vcCwKLSBzY2Rfb3AsIHNkYzFfb3AsIHNkYzJfb3AsIHNkX29wCisgIGFuZGlfb3AsCisgIG9yaV9vcCwKKyAgeG9yaV9vcCwKKyAgbHVpX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgY29wMF9vcCwKKyAgY29wMV9vcCwKKyAgY29wMl9vcCwKKyAgY29wMXhfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBiZXFsX29wLAorICBibmVsX29wLAorICBibGV6bF9vcCwKKyAgYmd0emxfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBkYWRkaV9vcCwKKyAgZGFkZGl1X29wLAorICBsZGxfb3AsCisgIGxkcl9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHNwZWMyX29wLAorICBqYWx4X29wLAorICBtZG14X29wLAorICBzcGVjM19vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGxiX29wLAorICBsaF9vcCwKKyAgbHdsX29wLAorICBsd19vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGxidV9vcCwKKyAgbGh1X29wLAorICBsd3Jfb3AsCisgIGx3dV9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHNiX29wLAorICBzaF9vcCwKKyAgc3dsX29wLAorICBzd19vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHNkbF9vcCwKKyAgc2RyX29wLAorICBzd3Jfb3AsCisgIGNhY2hlX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbGxfb3AsCisgIGx3YzFfb3AsCisgIGx3YzJfb3AsCisgIHByZWZfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBsbGRfb3AsCisgIGxkYzFfb3AsCisgIGxkYzJfb3AsCisgIGxkX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc2Nfb3AsCisgIHN3YzFfb3AsCisgIHN3YzJfb3AsCisgIG1ham9yXzNiX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc2NkX29wLAorICBzZGMxX29wLAorICBzZGMyX29wLAorICBzZF9vcAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBzcGVjX29wIHsKLSBzbGxfb3AsIG1vdmNfb3AsIHNybF9vcCwgc3JhX29wLAotIHNsbHZfb3AsIHBtb25fb3AsIHNybHZfb3AsIHNyYXZfb3AsCi0ganJfb3AsIGphbHJfb3AsIG1vdnpfb3AsIG1vdm5fb3AsCisgIHNsbF9vcCwKKyAgbW92Y19vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3lzY2FsbF9vcCwgYnJlYWtfb3AsIHNwaW1fb3AsIHN5bmNfb3AsCi0gbWZoaV9vcCwgbXRoaV9vcCwgbWZsb19vcCwgbXRsb19vcCwKLSBkc2xsdl9vcCwgc3BlYzJfdW51c2VkX29wLCBkc3Jsdl9vcCwgZHNyYXZfb3AsCi0gbXVsdF9vcCwgbXVsdHVfb3AsIGRpdl9vcCwgZGl2dV9vcCwKKyAgc3JsX29wLAorICBzcmFfb3AsCisgIHNsbHZfb3AsCisgIHBtb25fb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRtdWx0X29wLCBkbXVsdHVfb3AsIGRkaXZfb3AsIGRkaXZ1X29wLAotIGFkZF9vcCwgYWRkdV9vcCwgc3ViX29wLCBzdWJ1X29wLAotIGFuZF9vcCwgb3Jfb3AsIHhvcl9vcCwgbm9yX29wLAotIHNwZWMzX3VudXNlZF9vcCwgc3BlYzRfdW51c2VkX29wLCBzbHRfb3AsIHNsdHVfb3AsCisgIHNybHZfb3AsCisgIHNyYXZfb3AsCisgIGpyX29wLAorICBqYWxyX29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkYWRkX29wLCBkYWRkdV9vcCwgZHN1Yl9vcCwgZHN1YnVfb3AsCi0gdGdlX29wLCB0Z2V1X29wLCB0bHRfb3AsIHRsdHVfb3AsCi0gdGVxX29wLCBzcGVjNV91bnVzZWRfb3AsIHRuZV9vcCwgc3BlYzZfdW51c2VkX29wLAotIGRzbGxfb3AsIHNwZWM3X3VudXNlZF9vcCwgZHNybF9vcCwgZHNyYV9vcCwKKyAgbW92el9vcCwKKyAgbW92bl9vcCwKKyAgc3lzY2FsbF9vcCwKKyAgYnJlYWtfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRzbGwzMl9vcCwgc3BlYzhfdW51c2VkX29wLCBkc3JsMzJfb3AsIGRzcmEzMl9vcAorICBzcGltX29wLAorICBzeW5jX29wLAorICBtZmhpX29wLAorICBtdGhpX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbWZsb19vcCwKKyAgbXRsb19vcCwKKyAgZHNsbHZfb3AsCisgIHNwZWMyX3VudXNlZF9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGRzcmx2X29wLAorICBkc3Jhdl9vcCwKKyAgbXVsdF9vcCwKKyAgbXVsdHVfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBkaXZfb3AsCisgIGRpdnVfb3AsCisgIGRtdWx0X29wLAorICBkbXVsdHVfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBkZGl2X29wLAorICBkZGl2dV9vcCwKKyAgYWRkX29wLAorICBhZGR1X29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3ViX29wLAorICBzdWJ1X29wLAorICBhbmRfb3AsCisgIG9yX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgeG9yX29wLAorICBub3Jfb3AsCisgIHNwZWMzX3VudXNlZF9vcCwKKyAgc3BlYzRfdW51c2VkX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc2x0X29wLAorICBzbHR1X29wLAorICBkYWRkX29wLAorICBkYWRkdV9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGRzdWJfb3AsCisgIGRzdWJ1X29wLAorICB0Z2Vfb3AsCisgIHRnZXVfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB0bHRfb3AsCisgIHRsdHVfb3AsCisgIHRlcV9vcCwKKyAgc3BlYzVfdW51c2VkX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdG5lX29wLAorICBzcGVjNl91bnVzZWRfb3AsCisgIGRzbGxfb3AsCisgIHNwZWM3X3VudXNlZF9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGRzcmxfb3AsCisgIGRzcmFfb3AsCisgIGRzbGwzMl9vcCwKKyAgc3BlYzhfdW51c2VkX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZHNybDMyX29wLAorICBkc3JhMzJfb3AKIH07CiBlbnVtIHNwZWMyX29wIHsKLSBtYWRkX29wLCBtYWRkdV9vcCwgbXVsX29wLCBzcGVjMl8zX3VudXNlZF9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbXN1Yl9vcCwgbXN1YnVfb3AsCi0gY2x6X29wID0gMHgyMCwgY2xvX29wLAotIGRjbHpfb3AgPSAweDI0LCBkY2xvX29wLAotIHNkYnBwX29wID0gMHgzZgorICBtYWRkX29wLAorICBtYWRkdV9vcCwKKyAgbXVsX29wLAorICBzcGVjMl8zX3VudXNlZF9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1zdWJfb3AsCisgIG1zdWJ1X29wLAorICBjbHpfb3AgPSAweDIwLAorICBjbG9fb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBkY2x6X29wID0gMHgyNCwKKyAgZGNsb19vcCwKKyAgc2RicHBfb3AgPSAweDNmCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gc3BlYzNfb3AgewotIGV4dF9vcCwgZGV4dG1fb3AsIGRleHR1X29wLCBkZXh0X29wLAotIGluc19vcCwgZGluc21fb3AsIGRpbnN1X29wLCBkaW5zX29wLAorICBleHRfb3AsCisgIGRleHRtX29wLAorICBkZXh0dV9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbHhfb3AgPSAweDBhLAotIGJzaGZsX29wID0gMHgyMCwKLSBkYnNoZmxfb3AgPSAweDI0LAotIHJkaHdyX29wID0gMHgzYgorICBkZXh0X29wLAorICBpbnNfb3AsCisgIGRpbnNtX29wLAorICBkaW5zdV9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGRpbnNfb3AsCisgIHlpZWxkX29wID0gMHgwOSwKKyAgbHhfb3AgPSAweDBhLAorICBsd2xlX29wID0gMHgxOSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGx3cmVfb3AgPSAweDFhLAorICBjYWNoZWVfb3AgPSAweDFiLAorICBzYmVfb3AgPSAweDFjLAorICBzaGVfb3AgPSAweDFkLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc2NlX29wID0gMHgxZSwKKyAgc3dlX29wID0gMHgxZiwKKyAgYnNoZmxfb3AgPSAweDIwLAorICBzd2xlX29wID0gMHgyMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN3cmVfb3AgPSAweDIyLAorICBwcmVmZV9vcCA9IDB4MjMsCisgIGRic2hmbF9vcCA9IDB4MjQsCisgIGxidWVfb3AgPSAweDI4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbGh1ZV9vcCA9IDB4MjksCisgIGxiZV9vcCA9IDB4MmMsCisgIGxoZV9vcCA9IDB4MmQsCisgIGxsZV9vcCA9IDB4MmUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBsd2Vfb3AgPSAweDJmLAorICByZGh3cl9vcCA9IDB4M2IKIH07CiBlbnVtIHJ0X29wIHsKLSBibHR6X29wLCBiZ2V6X29wLCBibHR6bF9vcCwgYmdlemxfb3AsCi0gc3BpbWlfb3AsIHVudXNlZF9ydF9vcF8weDA1LCB1bnVzZWRfcnRfb3BfMHgwNiwgdW51c2VkX3J0X29wXzB4MDcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHRnZWlfb3AsIHRnZWl1X29wLCB0bHRpX29wLCB0bHRpdV9vcCwKLSB0ZXFpX29wLCB1bnVzZWRfMHgwZF9ydF9vcCwgdG5laV9vcCwgdW51c2VkXzB4MGZfcnRfb3AsCi0gYmx0emFsX29wLCBiZ2V6YWxfb3AsIGJsdHphbGxfb3AsIGJnZXphbGxfb3AsCi0gcnRfb3BfMHgxNCwgcnRfb3BfMHgxNSwgcnRfb3BfMHgxNiwgcnRfb3BfMHgxNywKKyAgYmx0el9vcCwKKyAgYmdlel9vcCwKKyAgYmx0emxfb3AsCisgIGJnZXpsX29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBydF9vcF8weDE4LCBydF9vcF8weDE5LCBydF9vcF8weDFhLCBydF9vcF8weDFiLAotIGJwb3NnZTMyX29wLCBydF9vcF8weDFkLCBydF9vcF8weDFlLCBydF9vcF8weDFmCisgIHNwaW1pX29wLAorICB1bnVzZWRfcnRfb3BfMHgwNSwKKyAgdW51c2VkX3J0X29wXzB4MDYsCisgIHVudXNlZF9ydF9vcF8weDA3LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdGdlaV9vcCwKKyAgdGdlaXVfb3AsCisgIHRsdGlfb3AsCisgIHRsdGl1X29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdGVxaV9vcCwKKyAgdW51c2VkXzB4MGRfcnRfb3AsCisgIHRuZWlfb3AsCisgIHVudXNlZF8weDBmX3J0X29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgYmx0emFsX29wLAorICBiZ2V6YWxfb3AsCisgIGJsdHphbGxfb3AsCisgIGJnZXphbGxfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBydF9vcF8weDE0LAorICBydF9vcF8weDE1LAorICBydF9vcF8weDE2LAorICBydF9vcF8weDE3LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgcnRfb3BfMHgxOCwKKyAgcnRfb3BfMHgxOSwKKyAgcnRfb3BfMHgxYSwKKyAgcnRfb3BfMHgxYiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGJwb3NnZTMyX29wLAorICBydF9vcF8weDFkLAorICBydF9vcF8weDFlLAorICBydF9vcF8weDFmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gY29wX29wIHsKKyAgbWZjX29wID0gMHgwMCwKKyAgZG1mY19vcCA9IDB4MDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1mY19vcCA9IDB4MDAsIGRtZmNfb3AgPSAweDAxLAotIGNmY19vcCA9IDB4MDIsIG1maGNfb3AgPSAweDAzLAotIG10Y19vcCA9IDB4MDQsIGRtdGNfb3AgPSAweDA1LAotIGN0Y19vcCA9IDB4MDYsIG10aGNfb3AgPSAweDA3LAorICBjZmNfb3AgPSAweDAyLAorICBtZmhjX29wID0gMHgwMywKKyAgbXRjX29wID0gMHgwNCwKKyAgZG10Y19vcCA9IDB4MDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGJjX29wID0gMHgwOCwgY29wX29wID0gMHgxMCwKLSBjb3BtX29wID0gMHgxOAorICBjdGNfb3AgPSAweDA2LAorICBtdGhjX29wID0gMHgwNywKKyAgYmNfb3AgPSAweDA4LAorICBjb3Bfb3AgPSAweDEwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgY29wbV9vcCA9IDB4MTgKIH07CiBlbnVtIGJjb3Bfb3AgeworICBiY2Zfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGJjZl9vcCwgYmN0X29wLCBiY2ZsX29wLCBiY3RsX29wCisgIGJjdF9vcCwKKyAgYmNmbF9vcCwKKyAgYmN0bF9vcAogfTsKLWVudW0gY29wMF9jb2lfZnVuYyB7Ci0gdGxicl9vcCA9IDB4MDEsIHRsYndpX29wID0gMHgwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdGxid3Jfb3AgPSAweDA2LCB0bGJwX29wID0gMHgwOCwKLSByZmVfb3AgPSAweDEwLCBlcmV0X29wID0gMHgxOAorZW51bSBjb3AwX2NvaV9mdW5jIHsKKyAgdGxicl9vcCA9IDB4MDEsCisgIHRsYndpX29wID0gMHgwMiwKKyAgdGxid3Jfb3AgPSAweDA2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdGxicF9vcCA9IDB4MDgsCisgIHJmZV9vcCA9IDB4MTAsCisgIGVyZXRfb3AgPSAweDE4LAorICB3YWl0X29wID0gMHgyMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBjb3AwX2NvbV9mdW5jIHsKKyAgdGxicjFfb3AgPSAweDAxLAorICB0bGJ3X29wID0gMHgwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdGxicjFfb3AgPSAweDAxLCB0bGJ3X29wID0gMHgwMiwKLSB0bGJwMV9vcCA9IDB4MDgsIGRjdHJfb3AgPSAweDA5LAotIGRjdHdfb3AgPSAweDBhCisgIHRsYnAxX29wID0gMHgwOCwKKyAgZGN0cl9vcCA9IDB4MDksCisgIGRjdHdfb3AgPSAweDBhCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gY29wMV9mbXQgewotIHNfZm10LCBkX2ZtdCwgZV9mbXQsIHFfZm10LAotIHdfZm10LCBsX2ZtdAorICBzX2ZtdCwKKyAgZF9mbXQsCisgIGVfZm10LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgcV9mbXQsCisgIHdfZm10LAorICBsX2ZtdAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGNvcDFfc2R3X2Z1bmMgewotIGZhZGRfb3AgPSAweDAwLCBmc3ViX29wID0gMHgwMSwKLSBmbXVsX29wID0gMHgwMiwgZmRpdl9vcCA9IDB4MDMsCi0gZnNxcnRfb3AgPSAweDA0LCBmYWJzX29wID0gMHgwNSwKKyAgZmFkZF9vcCA9IDB4MDAsCisgIGZzdWJfb3AgPSAweDAxLAorICBmbXVsX29wID0gMHgwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZm1vdl9vcCA9IDB4MDYsIGZuZWdfb3AgPSAweDA3LAotIGZyb3VuZGxfb3AgPSAweDA4LCBmdHJ1bmNsX29wID0gMHgwOSwKLSBmY2VpbGxfb3AgPSAweDBhLCBmZmxvb3JsX29wID0gMHgwYiwKLSBmcm91bmRfb3AgPSAweDBjLCBmdHJ1bmNfb3AgPSAweDBkLAorICBmZGl2X29wID0gMHgwMywKKyAgZnNxcnRfb3AgPSAweDA0LAorICBmYWJzX29wID0gMHgwNSwKKyAgZm1vdl9vcCA9IDB4MDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGZjZWlsX29wID0gMHgwZSwgZmZsb29yX29wID0gMHgwZiwKLSBmbW92Y19vcCA9IDB4MTEsIGZtb3Z6X29wID0gMHgxMiwKLSBmbW92bl9vcCA9IDB4MTMsIGZyZWNpcF9vcCA9IDB4MTUsCi0gZnJzcXJ0X29wID0gMHgxNiwgZmN2dHNfb3AgPSAweDIwLAorICBmbmVnX29wID0gMHgwNywKKyAgZnJvdW5kbF9vcCA9IDB4MDgsCisgIGZ0cnVuY2xfb3AgPSAweDA5LAorICBmY2VpbGxfb3AgPSAweDBhLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBmY3Z0ZF9vcCA9IDB4MjEsIGZjdnRlX29wID0gMHgyMiwKLSBmY3Z0d19vcCA9IDB4MjQsIGZjdnRsX29wID0gMHgyNSwKLSBmY21wX29wID0gMHgzMAorICBmZmxvb3JsX29wID0gMHgwYiwKKyAgZnJvdW5kX29wID0gMHgwYywKKyAgZnRydW5jX29wID0gMHgwZCwKKyAgZmNlaWxfb3AgPSAweDBlLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZmZsb29yX29wID0gMHgwZiwKKyAgZm1vdmNfb3AgPSAweDExLAorICBmbW92el9vcCA9IDB4MTIsCisgIGZtb3ZuX29wID0gMHgxMywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGZyZWNpcF9vcCA9IDB4MTUsCisgIGZyc3FydF9vcCA9IDB4MTYsCisgIGZjdnRzX29wID0gMHgyMCwKKyAgZmN2dGRfb3AgPSAweDIxLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZmN2dGVfb3AgPSAweDIyLAorICBmY3Z0d19vcCA9IDB4MjQsCisgIGZjdnRsX29wID0gMHgyNSwKKyAgZmNtcF9vcCA9IDB4MzAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gY29wMXhfZnVuYyB7Ci0gbHd4YzFfb3AgPSAweDAwLCBsZHhjMV9vcCA9IDB4MDEsCi0gc3d4YzFfb3AgPSAweDA4LCBzZHhjMV9vcCA9IDB4MDksCi0gcGZldGNoX29wID0gMHgwZiwgbWFkZF9zX29wID0gMHgyMCwKKyAgbHd4YzFfb3AgPSAweDAwLAorICBsZHhjMV9vcCA9IDB4MDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1hZGRfZF9vcCA9IDB4MjEsIG1hZGRfZV9vcCA9IDB4MjIsCi0gbXN1Yl9zX29wID0gMHgyOCwgbXN1Yl9kX29wID0gMHgyOSwKLSBtc3ViX2Vfb3AgPSAweDJhLCBubWFkZF9zX29wID0gMHgzMCwKLSBubWFkZF9kX29wID0gMHgzMSwgbm1hZGRfZV9vcCA9IDB4MzIsCisgIHN3eGMxX29wID0gMHgwOCwKKyAgc2R4YzFfb3AgPSAweDA5LAorICBwZmV0Y2hfb3AgPSAweDBmLAorICBtYWRkX3Nfb3AgPSAweDIwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBubXN1Yl9zX29wID0gMHgzOCwgbm1zdWJfZF9vcCA9IDB4MzksCi0gbm1zdWJfZV9vcCA9IDB4M2EKKyAgbWFkZF9kX29wID0gMHgyMSwKKyAgbWFkZF9lX29wID0gMHgyMiwKKyAgbXN1Yl9zX29wID0gMHgyOCwKKyAgbXN1Yl9kX29wID0gMHgyOSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1zdWJfZV9vcCA9IDB4MmEsCisgIG5tYWRkX3Nfb3AgPSAweDMwLAorICBubWFkZF9kX29wID0gMHgzMSwKKyAgbm1hZGRfZV9vcCA9IDB4MzIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBubXN1Yl9zX29wID0gMHgzOCwKKyAgbm1zdWJfZF9vcCA9IDB4MzksCisgIG5tc3ViX2Vfb3AgPSAweDNhCiB9OwotZW51bSBtYWRfZnVuYyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1hZGRfZnBfb3AgPSAweDA4LCBtc3ViX2ZwX29wID0gMHgwYSwKLSBubWFkZF9mcF9vcCA9IDB4MGMsIG5tc3ViX2ZwX29wID0gMHgwZQorZW51bSBtYWRfZnVuYyB7CisgIG1hZGRfZnBfb3AgPSAweDA4LAorICBtc3ViX2ZwX29wID0gMHgwYSwKKyAgbm1hZGRfZnBfb3AgPSAweDBjLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbm1zdWJfZnBfb3AgPSAweDBlCiB9OwogZW51bSBseF9mdW5jIHsKKyAgbHd4X29wID0gMHgwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbHd4X29wID0gMHgwMCwKLSBsaHhfb3AgPSAweDA0LAotIGxidXhfb3AgPSAweDA2LAotIGxkeF9vcCA9IDB4MDgsCisgIGxoeF9vcCA9IDB4MDQsCisgIGxidXhfb3AgPSAweDA2LAorICBsZHhfb3AgPSAweDA4LAorICBsd3V4X29wID0gMHgxMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbHd1eF9vcCA9IDB4MTAsCi0gbGh1eF9vcCA9IDB4MTQsCi0gbGJ4X29wID0gMHgxNiwKKyAgbGh1eF9vcCA9IDB4MTQsCisgIGxieF9vcCA9IDB4MTYsCiB9OworZW51bSBic2hmbF9mdW5jIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHdzYmhfb3AgPSAweDIsCisgIGRzaGRfb3AgPSAweDUsCisgIHNlYl9vcCA9IDB4MTAsCisgIHNlaF9vcCA9IDB4MTgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKIGVudW0gbW1fbWFqb3Jfb3AgewotIG1tX3Bvb2wzMmFfb3AsIG1tX3Bvb2wxNmFfb3AsIG1tX2xidTE2X29wLCBtbV9tb3ZlMTZfb3AsCi0gbW1fYWRkaTMyX29wLCBtbV9sYnUzMl9vcCwgbW1fc2IzMl9vcCwgbW1fbGIzMl9vcCwKLSBtbV9wb29sMzJiX29wLCBtbV9wb29sMTZiX29wLCBtbV9saHUxNl9vcCwgbW1fYW5kaTE2X29wLAorICBtbV9wb29sMzJhX29wLAorICBtbV9wb29sMTZhX29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9hZGRpdTMyX29wLCBtbV9saHUzMl9vcCwgbW1fc2gzMl9vcCwgbW1fbGgzMl9vcCwKLSBtbV9wb29sMzJpX29wLCBtbV9wb29sMTZjX29wLCBtbV9sd3NwMTZfb3AsIG1tX3Bvb2wxNmRfb3AsCi0gbW1fb3JpMzJfb3AsIG1tX3Bvb2wzMmZfb3AsIG1tX3Jlc2VydmVkMV9vcCwgbW1fcmVzZXJ2ZWQyX29wLAotIG1tX3Bvb2wzMmNfb3AsIG1tX2x3Z3AxNl9vcCwgbW1fbHcxNl9vcCwgbW1fcG9vbDE2ZV9vcCwKKyAgbW1fbGJ1MTZfb3AsCisgIG1tX21vdmUxNl9vcCwKKyAgbW1fYWRkaTMyX29wLAorICBtbV9sYnUzMl9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1feG9yaTMyX29wLCBtbV9qYWxzMzJfb3AsIG1tX2FkZGl1cGNfb3AsIG1tX3Jlc2VydmVkM19vcCwKLSBtbV9yZXNlcnZlZDRfb3AsIG1tX3Bvb2wxNmZfb3AsIG1tX3NiMTZfb3AsIG1tX2JlcXoxNl9vcCwKLSBtbV9zbHRpMzJfb3AsIG1tX2JlcTMyX29wLCBtbV9zd2MxMzJfb3AsIG1tX2x3YzEzMl9vcCwKLSBtbV9yZXNlcnZlZDVfb3AsIG1tX3Jlc2VydmVkNl9vcCwgbW1fc2gxNl9vcCwgbW1fYm5lejE2X29wLAorICBtbV9zYjMyX29wLAorICBtbV9sYjMyX29wLAorICBtbV9wb29sMzJiX29wLAorICBtbV9wb29sMTZiX29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9zbHRpdTMyX29wLCBtbV9ibmUzMl9vcCwgbW1fc2RjMTMyX29wLCBtbV9sZGMxMzJfb3AsCi0gbW1fcmVzZXJ2ZWQ3X29wLCBtbV9yZXNlcnZlZDhfb3AsIG1tX3N3c3AxNl9vcCwgbW1fYjE2X29wLAotIG1tX2FuZGkzMl9vcCwgbW1fajMyX29wLCBtbV9zZDMyX29wLCBtbV9sZDMyX29wLAotIG1tX3Jlc2VydmVkMTFfb3AsIG1tX3Jlc2VydmVkMTJfb3AsIG1tX3N3MTZfb3AsIG1tX2xpMTZfb3AsCisgIG1tX2xodTE2X29wLAorICBtbV9hbmRpMTZfb3AsCisgIG1tX2FkZGl1MzJfb3AsCisgIG1tX2xodTMyX29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9qYWx4MzJfb3AsIG1tX2phbDMyX29wLCBtbV9zdzMyX29wLCBtbV9sdzMyX29wLAorICBtbV9zaDMyX29wLAorICBtbV9saDMyX29wLAorICBtbV9wb29sMzJpX29wLAorICBtbV9wb29sMTZjX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fbHdzcDE2X29wLAorICBtbV9wb29sMTZkX29wLAorICBtbV9vcmkzMl9vcCwKKyAgbW1fcG9vbDMyZl9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX3Jlc2VydmVkMV9vcCwKKyAgbW1fcmVzZXJ2ZWQyX29wLAorICBtbV9wb29sMzJjX29wLAorICBtbV9sd2dwMTZfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9sdzE2X29wLAorICBtbV9wb29sMTZlX29wLAorICBtbV94b3JpMzJfb3AsCisgIG1tX2phbHMzMl9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX2FkZGl1cGNfb3AsCisgIG1tX3Jlc2VydmVkM19vcCwKKyAgbW1fcmVzZXJ2ZWQ0X29wLAorICBtbV9wb29sMTZmX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fc2IxNl9vcCwKKyAgbW1fYmVxejE2X29wLAorICBtbV9zbHRpMzJfb3AsCisgIG1tX2JlcTMyX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fc3djMTMyX29wLAorICBtbV9sd2MxMzJfb3AsCisgIG1tX3Jlc2VydmVkNV9vcCwKKyAgbW1fcmVzZXJ2ZWQ2X29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fc2gxNl9vcCwKKyAgbW1fYm5lejE2X29wLAorICBtbV9zbHRpdTMyX29wLAorICBtbV9ibmUzMl9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX3NkYzEzMl9vcCwKKyAgbW1fbGRjMTMyX29wLAorICBtbV9yZXNlcnZlZDdfb3AsCisgIG1tX3Jlc2VydmVkOF9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX3N3c3AxNl9vcCwKKyAgbW1fYjE2X29wLAorICBtbV9hbmRpMzJfb3AsCisgIG1tX2ozMl9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX3NkMzJfb3AsCisgIG1tX2xkMzJfb3AsCisgIG1tX3Jlc2VydmVkMTFfb3AsCisgIG1tX3Jlc2VydmVkMTJfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9zdzE2X29wLAorICBtbV9saTE2X29wLAorICBtbV9qYWx4MzJfb3AsCisgIG1tX2phbDMyX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fc3czMl9vcCwKKyAgbW1fbHczMl9vcCwKIH07CiBlbnVtIG1tXzMyaV9taW5vcl9vcCB7Ci0gbW1fYmx0el9vcCwgbW1fYmx0emFsX29wLCBtbV9iZ2V6X29wLCBtbV9iZ2V6YWxfb3AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX2JsZXpfb3AsIG1tX2JuZXpjX29wLCBtbV9iZ3R6X29wLCBtbV9iZXF6Y19vcCwKLSBtbV90bHRpX29wLCBtbV90Z2VpX29wLCBtbV90bHRpdV9vcCwgbW1fdGdlaXVfb3AsCi0gbW1fdG5laV9vcCwgbW1fbHVpX29wLCBtbV90ZXFpX29wLCBtbV9yZXNlcnZlZDEzX29wLAotIG1tX3N5bmNpX29wLCBtbV9ibHR6YWxzX29wLCBtbV9yZXNlcnZlZDE0X29wLCBtbV9iZ2V6YWxzX29wLAorICBtbV9ibHR6X29wLAorICBtbV9ibHR6YWxfb3AsCisgIG1tX2JnZXpfb3AsCisgIG1tX2JnZXphbF9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fYmMyZl9vcCwgbW1fYmMydF9vcCwgbW1fcmVzZXJ2ZWQxNV9vcCwgbW1fcmVzZXJ2ZWQxNl9vcCwKLSBtbV9yZXNlcnZlZDE3X29wLCBtbV9yZXNlcnZlZDE4X29wLCBtbV9icG9zZ2U2NF9vcCwgbW1fYnBvc2dlMzJfb3AsCi0gbW1fYmMxZl9vcCwgbW1fYmMxdF9vcCwgbW1fcmVzZXJ2ZWQxOV9vcCwgbW1fcmVzZXJ2ZWQyMF9vcCwKLSBtbV9iYzFhbnkyZl9vcCwgbW1fYmMxYW55MnRfb3AsIG1tX2JjMWFueTRmX29wLCBtbV9iYzFhbnk0dF9vcCwKKyAgbW1fYmxlel9vcCwKKyAgbW1fYm5lemNfb3AsCisgIG1tX2JndHpfb3AsCisgIG1tX2JlcXpjX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fdGx0aV9vcCwKKyAgbW1fdGdlaV9vcCwKKyAgbW1fdGx0aXVfb3AsCisgIG1tX3RnZWl1X29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fdG5laV9vcCwKKyAgbW1fbHVpX29wLAorICBtbV90ZXFpX29wLAorICBtbV9yZXNlcnZlZDEzX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fc3luY2lfb3AsCisgIG1tX2JsdHphbHNfb3AsCisgIG1tX3Jlc2VydmVkMTRfb3AsCisgIG1tX2JnZXphbHNfb3AsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9iYzJmX29wLAorICBtbV9iYzJ0X29wLAorICBtbV9yZXNlcnZlZDE1X29wLAorICBtbV9yZXNlcnZlZDE2X29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fcmVzZXJ2ZWQxN19vcCwKKyAgbW1fcmVzZXJ2ZWQxOF9vcCwKKyAgbW1fYnBvc2dlNjRfb3AsCisgIG1tX2Jwb3NnZTMyX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fYmMxZl9vcCwKKyAgbW1fYmMxdF9vcCwKKyAgbW1fcmVzZXJ2ZWQxOV9vcCwKKyAgbW1fcmVzZXJ2ZWQyMF9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX2JjMWFueTJmX29wLAorICBtbV9iYzFhbnkydF9vcCwKKyAgbW1fYmMxYW55NGZfb3AsCisgIG1tX2JjMWFueTR0X29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG1tXzMyYV9taW5vcl9vcCB7Ci0gbW1fc2xsMzJfb3AgPSAweDAwMCwKLSBtbV9pbnNfb3AgPSAweDAwYywKKyAgbW1fc2xsMzJfb3AgPSAweDAwMCwKKyAgbW1faW5zX29wID0gMHgwMGMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX2V4dF9vcCA9IDB4MDJjLAotIG1tX3Bvb2wzMmF4Zl9vcCA9IDB4MDNjLAotIG1tX3NybDMyX29wID0gMHgwNDAsCi0gbW1fc3JhX29wID0gMHgwODAsCisgIG1tX3NsbHYzMl9vcCA9IDB4MDEwLAorICBtbV9leHRfb3AgPSAweDAyYywKKyAgbW1fcG9vbDMyYXhmX29wID0gMHgwM2MsCisgIG1tX3NybDMyX29wID0gMHgwNDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX3JvdHJfb3AgPSAweDBjMCwKLSBtbV9sd3hzX29wID0gMHgxMTgsCi0gbW1fYWRkdTMyX29wID0gMHgxNTAsCi0gbW1fc3VidTMyX29wID0gMHgxZDAsCisgIG1tX3NyYV9vcCA9IDB4MDgwLAorICBtbV9zcmx2MzJfb3AgPSAweDA5MCwKKyAgbW1fcm90cl9vcCA9IDB4MGMwLAorICBtbV9sd3hzX29wID0gMHgxMTgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX2FuZF9vcCA9IDB4MjUwLAotIG1tX29yMzJfb3AgPSAweDI5MCwKLSBtbV94b3IzMl9vcCA9IDB4MzEwLAorICBtbV9hZGR1MzJfb3AgPSAweDE1MCwKKyAgbW1fc3VidTMyX29wID0gMHgxZDAsCisgIG1tX3dzYmhfb3AgPSAweDFlYywKKyAgbW1fbXVsX29wID0gMHgyMTAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9hbmRfb3AgPSAweDI1MCwKKyAgbW1fb3IzMl9vcCA9IDB4MjkwLAorICBtbV94b3IzMl9vcCA9IDB4MzEwLAorICBtbV9zbHRfb3AgPSAweDM1MCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX3NsdHVfb3AgPSAweDM5MCwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBtbV8zMmJfZnVuYyB7Ci0gbW1fbHdjMl9mdW5jID0gMHgwLAotIG1tX2x3cF9mdW5jID0gMHgxLAotIG1tX2xkYzJfZnVuYyA9IDB4MiwKKyAgbW1fbHdjMl9mdW5jID0gMHgwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9sZHBfZnVuYyA9IDB4NCwKLSBtbV9sd20zMl9mdW5jID0gMHg1LAotIG1tX2NhY2hlX2Z1bmMgPSAweDYsCi0gbW1fbGRtX2Z1bmMgPSAweDcsCisgIG1tX2x3cF9mdW5jID0gMHgxLAorICBtbV9sZGMyX2Z1bmMgPSAweDIsCisgIG1tX2xkcF9mdW5jID0gMHg0LAorICBtbV9sd20zMl9mdW5jID0gMHg1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9zd2MyX2Z1bmMgPSAweDgsCi0gbW1fc3dwX2Z1bmMgPSAweDksCi0gbW1fc2RjMl9mdW5jID0gMHhhLAotIG1tX3NkcF9mdW5jID0gMHhjLAorICBtbV9jYWNoZV9mdW5jID0gMHg2LAorICBtbV9sZG1fZnVuYyA9IDB4NywKKyAgbW1fc3djMl9mdW5jID0gMHg4LAorICBtbV9zd3BfZnVuYyA9IDB4OSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fc3dtMzJfZnVuYyA9IDB4ZCwKLSBtbV9zZG1fZnVuYyA9IDB4ZiwKKyAgbW1fc2RjMl9mdW5jID0gMHhhLAorICBtbV9zZHBfZnVuYyA9IDB4YywKKyAgbW1fc3dtMzJfZnVuYyA9IDB4ZCwKKyAgbW1fc2RtX2Z1bmMgPSAweGYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gbW1fMzJjX2Z1bmMgeworICBtbV9wcmVmX2Z1bmMgPSAweDIsCisgIG1tX2xsX2Z1bmMgPSAweDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX3ByZWZfZnVuYyA9IDB4MiwKLSBtbV9sbF9mdW5jID0gMHgzLAotIG1tX3N3cl9mdW5jID0gMHg5LAotIG1tX3NjX2Z1bmMgPSAweGIsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX2x3dV9mdW5jID0gMHhlLAorICBtbV9zd3JfZnVuYyA9IDB4OSwKKyAgbW1fc2NfZnVuYyA9IDB4YiwKKyAgbW1fbHd1X2Z1bmMgPSAweGUsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbW1fMzJheGZfbWlub3Jfb3AgewotIG1tX21mYzBfb3AgPSAweDAwMywKKyAgbW1fbWZjMF9vcCA9IDB4MDAzLAorICBtbV9tdGMwX29wID0gMHgwMGIsCisgIG1tX3RsYnBfb3AgPSAweDAwZCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fbXRjMF9vcCA9IDB4MDBiLAotIG1tX3RsYnBfb3AgPSAweDAwZCwKLSBtbV9qYWxyX29wID0gMHgwM2MsCi0gbW1fdGxicl9vcCA9IDB4MDRkLAorICBtbV9tZmhpMzJfb3AgPSAweDAzNSwKKyAgbW1famFscl9vcCA9IDB4MDNjLAorICBtbV90bGJyX29wID0gMHgwNGQsCisgIG1tX21mbG8zMl9vcCA9IDB4MDc1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9qYWxyaGJfb3AgPSAweDA3YywKLSBtbV90bGJ3aV9vcCA9IDB4MDhkLAotIG1tX3RsYndyX29wID0gMHgwY2QsCi0gbW1famFscnNfb3AgPSAweDEzYywKKyAgbW1famFscmhiX29wID0gMHgwN2MsCisgIG1tX3RsYndpX29wID0gMHgwOGQsCisgIG1tX3RsYndyX29wID0gMHgwY2QsCisgIG1tX2phbHJzX29wID0gMHgxM2MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX2phbHJzaGJfb3AgPSAweDE3YywKLSBtbV9zeXNjYWxsX29wID0gMHgyMmQsCi0gbW1fZXJldF9vcCA9IDB4M2NkLAorICBtbV9qYWxyc2hiX29wID0gMHgxN2MsCisgIG1tX3N5bmNfb3AgPSAweDFhZCwKKyAgbW1fc3lzY2FsbF9vcCA9IDB4MjJkLAorICBtbV93YWl0X29wID0gMHgyNGQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBtbV9lcmV0X29wID0gMHgzY2QsCisgIG1tX2RpdnVfb3AgPSAweDVkYywKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBtbV8zMmZfbWlub3Jfb3AgewotIG1tXzMyZl8wMF9vcCA9IDB4MDAsCi0gbW1fMzJmXzAxX29wID0gMHgwMSwKLSBtbV8zMmZfMDJfb3AgPSAweDAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV8zMmZfMTBfb3AgPSAweDA4LAotIG1tXzMyZl8xMV9vcCA9IDB4MDksCi0gbW1fMzJmXzEyX29wID0gMHgwYSwKLSBtbV8zMmZfMjBfb3AgPSAweDEwLAorICBtbV8zMmZfMDBfb3AgPSAweDAwLAorICBtbV8zMmZfMDFfb3AgPSAweDAxLAorICBtbV8zMmZfMDJfb3AgPSAweDAyLAorICBtbV8zMmZfMTBfb3AgPSAweDA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV8zMmZfMzBfb3AgPSAweDE4LAotIG1tXzMyZl80MF9vcCA9IDB4MjAsCi0gbW1fMzJmXzQxX29wID0gMHgyMSwKLSBtbV8zMmZfNDJfb3AgPSAweDIyLAorICBtbV8zMmZfMTFfb3AgPSAweDA5LAorICBtbV8zMmZfMTJfb3AgPSAweDBhLAorICBtbV8zMmZfMjBfb3AgPSAweDEwLAorICBtbV8zMmZfMzBfb3AgPSAweDE4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV8zMmZfNTBfb3AgPSAweDI4LAotIG1tXzMyZl81MV9vcCA9IDB4MjksCi0gbW1fMzJmXzUyX29wID0gMHgyYSwKLSBtbV8zMmZfNjBfb3AgPSAweDMwLAorICBtbV8zMmZfNDBfb3AgPSAweDIwLAorICBtbV8zMmZfNDFfb3AgPSAweDIxLAorICBtbV8zMmZfNDJfb3AgPSAweDIyLAorICBtbV8zMmZfNTBfb3AgPSAweDI4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV8zMmZfNzBfb3AgPSAweDM4LAotIG1tXzMyZl83M19vcCA9IDB4M2IsCi0gbW1fMzJmXzc0X29wID0gMHgzYywKKyAgbW1fMzJmXzUxX29wID0gMHgyOSwKKyAgbW1fMzJmXzUyX29wID0gMHgyYSwKKyAgbW1fMzJmXzYwX29wID0gMHgzMCwKKyAgbW1fMzJmXzcwX29wID0gMHgzOCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tXzMyZl83M19vcCA9IDB4M2IsCisgIG1tXzMyZl83NF9vcCA9IDB4M2MsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbW1fMzJmXzEwX21pbm9yX29wIHsKLSBtbV9sd3hjMV9vcCA9IDB4MSwKLSBtbV9zd3hjMV9vcCwKLSBtbV9sZHhjMV9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fc2R4YzFfb3AsCi0gbW1fbHV4YzFfb3AsCi0gbW1fc3V4YzFfb3AsCisgIG1tX2x3eGMxX29wID0gMHgxLAorICBtbV9zd3hjMV9vcCwKKyAgbW1fbGR4YzFfb3AsCisgIG1tX3NkeGMxX29wLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fbHV4YzFfb3AsCisgIG1tX3N1eGMxX29wLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG1tXzMyZl9mdW5jIHsKLSBtbV9sd3hjMV9mdW5jID0gMHgwNDgsCi0gbW1fc3d4YzFfZnVuYyA9IDB4MDg4LAotIG1tX2xkeGMxX2Z1bmMgPSAweDBjOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fc2R4YzFfZnVuYyA9IDB4MTA4LAorICBtbV9sd3hjMV9mdW5jID0gMHgwNDgsCisgIG1tX3N3eGMxX2Z1bmMgPSAweDA4OCwKKyAgbW1fbGR4YzFfZnVuYyA9IDB4MGM4LAorICBtbV9zZHhjMV9mdW5jID0gMHgxMDgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gbW1fMzJmXzQwX21pbm9yX29wIHsKLSBtbV9mbW92Zl9vcCwKKyAgbW1fZm1vdmZfb3AsCisgIG1tX2Ztb3Z0X29wLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9mbW92dF9vcCwKIH07CiBlbnVtIG1tXzMyZl82MF9taW5vcl9vcCB7Ci0gbW1fZmFkZF9vcCwKKyAgbW1fZmFkZF9vcCwKKyAgbW1fZnN1Yl9vcCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fZnN1Yl9vcCwKLSBtbV9mbXVsX29wLAotIG1tX2ZkaXZfb3AsCisgIG1tX2ZtdWxfb3AsCisgIG1tX2ZkaXZfb3AsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbW1fMzJmXzcwX21pbm9yX29wIHsKLSBtbV9mbW92bl9vcCwKLSBtbV9mbW92el9vcCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX2Ztb3ZuX29wLAorICBtbV9mbW92el9vcCwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBtbV8zMmZfNzNfbWlub3Jfb3AgewotIG1tX2Ztb3YwX29wID0gMHgwMSwKLSBtbV9mY3Z0bF9vcCA9IDB4MDQsCi0gbW1fbW92ZjBfb3AgPSAweDA1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9mcnNxcnRfb3AgPSAweDA4LAotIG1tX2ZmbG9vcmxfb3AgPSAweDBjLAotIG1tX2ZhYnMwX29wID0gMHgwZCwKLSBtbV9mY3Z0d19vcCA9IDB4MjQsCisgIG1tX2Ztb3YwX29wID0gMHgwMSwKKyAgbW1fZmN2dGxfb3AgPSAweDA0LAorICBtbV9tb3ZmMF9vcCA9IDB4MDUsCisgIG1tX2Zyc3FydF9vcCA9IDB4MDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX21vdnQwX29wID0gMHgyNSwKLSBtbV9mc3FydF9vcCA9IDB4MjgsCi0gbW1fZmZsb29yd19vcCA9IDB4MmMsCi0gbW1fZm5lZzBfb3AgPSAweDJkLAorICBtbV9mZmxvb3JsX29wID0gMHgwYywKKyAgbW1fZmFiczBfb3AgPSAweDBkLAorICBtbV9mY3Z0d19vcCA9IDB4MjQsCisgIG1tX21vdnQwX29wID0gMHgyNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1fY2ZjMV9vcCA9IDB4NDAsCi0gbW1fZnJlY2lwX29wID0gMHg0OCwKLSBtbV9mY2VpbGxfb3AgPSAweDRjLAotIG1tX2ZjdnRkMF9vcCA9IDB4NGQsCisgIG1tX2ZzcXJ0X29wID0gMHgyOCwKKyAgbW1fZmZsb29yd19vcCA9IDB4MmMsCisgIG1tX2ZuZWcwX29wID0gMHgyZCwKKyAgbW1fY2ZjMV9vcCA9IDB4NDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX2N0YzFfb3AgPSAweDYwLAotIG1tX2ZjZWlsd19vcCA9IDB4NmMsCi0gbW1fZmN2dHMwX29wID0gMHg2ZCwKLSBtbV9tZmMxX29wID0gMHg4MCwKKyAgbW1fZnJlY2lwX29wID0gMHg0OCwKKyAgbW1fZmNlaWxsX29wID0gMHg0YywKKyAgbW1fZmN2dGQwX29wID0gMHg0ZCwKKyAgbW1fY3RjMV9vcCA9IDB4NjAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX2Ztb3YxX29wID0gMHg4MSwKLSBtbV9tb3ZmMV9vcCA9IDB4ODUsCi0gbW1fZnRydW5jbF9vcCA9IDB4OGMsCi0gbW1fZmFiczFfb3AgPSAweDhkLAorICBtbV9mY2VpbHdfb3AgPSAweDZjLAorICBtbV9mY3Z0czBfb3AgPSAweDZkLAorICBtbV9tZmMxX29wID0gMHg4MCwKKyAgbW1fZm1vdjFfb3AgPSAweDgxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9tdGMxX29wID0gMHhhMCwKLSBtbV9tb3Z0MV9vcCA9IDB4YTUsCi0gbW1fZnRydW5jd19vcCA9IDB4YWMsCi0gbW1fZm5lZzFfb3AgPSAweGFkLAorICBtbV9tb3ZmMV9vcCA9IDB4ODUsCisgIG1tX2Z0cnVuY2xfb3AgPSAweDhjLAorICBtbV9mYWJzMV9vcCA9IDB4OGQsCisgIG1tX210YzFfb3AgPSAweGEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9tZmhjMV9vcCA9IDB4YzAsCi0gbW1fZnJvdW5kbF9vcCA9IDB4Y2MsCi0gbW1fZmN2dGQxX29wID0gMHhjZCwKLSBtbV9tdGhjMV9vcCA9IDB4ZTAsCisgIG1tX21vdnQxX29wID0gMHhhNSwKKyAgbW1fZnRydW5jd19vcCA9IDB4YWMsCisgIG1tX2ZuZWcxX29wID0gMHhhZCwKKyAgbW1fbWZoYzFfb3AgPSAweGMwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtbV9mcm91bmR3X29wID0gMHhlYywKLSBtbV9mY3Z0czFfb3AgPSAweGVkLAorICBtbV9mcm91bmRsX29wID0gMHhjYywKKyAgbW1fZmN2dGQxX29wID0gMHhjZCwKKyAgbW1fbXRoYzFfb3AgPSAweGUwLAorICBtbV9mcm91bmR3X29wID0gMHhlYywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIG1tX2ZjdnRzMV9vcCA9IDB4ZWQsCiB9OwogZW51bSBtbV8xNmNfbWlub3Jfb3AgeworICBtbV9sd20xNl9vcCA9IDB4MDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG1tX2x3bTE2X29wID0gMHgwNCwKLSBtbV9zd20xNl9vcCA9IDB4MDUsCi0gbW1fanIxNl9vcCA9IDB4MGMsCi0gbW1fanJjX29wID0gMHgwZCwKKyAgbW1fc3dtMTZfb3AgPSAweDA1LAorICBtbV9qcjE2X29wID0gMHgwYywKKyAgbW1fanJjX29wID0gMHgwZCwKKyAgbW1famFscjE2X29wID0gMHgwZSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbW1famFscjE2X29wID0gMHgwZSwKLSBtbV9qYWxyczE2X29wID0gMHgwZiwKLSBtbV9qcmFkZGl1c3Bfb3AgPSAweDE4LAorICBtbV9qYWxyczE2X29wID0gMHgwZiwKKyAgbW1fanJhZGRpdXNwX29wID0gMHgxOCwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBtbV8xNmRfbWlub3Jfb3AgewotIG1tX2FkZGl1czVfZnVuYywKLSBtbV9hZGRpdXNwX2Z1bmMsCi19OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgbW1fYWRkaXVzNV9mdW5jLAorICBtbV9hZGRpdXNwX2Z1bmMsCit9OwogZW51bSBNSVBTMTZlX29wcyB7Ci0gTUlQUzE2ZV9qYWxfb3AgPSAwMDMsCi0gTUlQUzE2ZV9sZF9vcCA9IDAwNywKLSBNSVBTMTZlX2k4X29wID0gMDE0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNSVBTMTZlX3NkX29wID0gMDE3LAotIE1JUFMxNmVfbGJfb3AgPSAwMjAsCi0gTUlQUzE2ZV9saF9vcCA9IDAyMSwKLSBNSVBTMTZlX2x3c3Bfb3AgPSAwMjIsCisgIE1JUFMxNmVfamFsX29wID0gMDAzLAorICBNSVBTMTZlX2xkX29wID0gMDA3LAorICBNSVBTMTZlX2k4X29wID0gMDE0LAorICBNSVBTMTZlX3NkX29wID0gMDE3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNSVBTMTZlX2x3X29wID0gMDIzLAotIE1JUFMxNmVfbGJ1X29wID0gMDI0LAotIE1JUFMxNmVfbGh1X29wID0gMDI1LAotIE1JUFMxNmVfbHdwY19vcCA9IDAyNiwKKyAgTUlQUzE2ZV9sYl9vcCA9IDAyMCwKKyAgTUlQUzE2ZV9saF9vcCA9IDAyMSwKKyAgTUlQUzE2ZV9sd3NwX29wID0gMDIyLAorICBNSVBTMTZlX2x3X29wID0gMDIzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNSVBTMTZlX2x3dV9vcCA9IDAyNywKLSBNSVBTMTZlX3NiX29wID0gMDMwLAotIE1JUFMxNmVfc2hfb3AgPSAwMzEsCi0gTUlQUzE2ZV9zd3NwX29wID0gMDMyLAorICBNSVBTMTZlX2xidV9vcCA9IDAyNCwKKyAgTUlQUzE2ZV9saHVfb3AgPSAwMjUsCisgIE1JUFMxNmVfbHdwY19vcCA9IDAyNiwKKyAgTUlQUzE2ZV9sd3Vfb3AgPSAwMjcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1JUFMxNmVfc3dfb3AgPSAwMzMsCi0gTUlQUzE2ZV9ycl9vcCA9IDAzNSwKLSBNSVBTMTZlX2V4dGVuZF9vcCA9IDAzNiwKLSBNSVBTMTZlX2k2NF9vcCA9IDAzNywKKyAgTUlQUzE2ZV9zYl9vcCA9IDAzMCwKKyAgTUlQUzE2ZV9zaF9vcCA9IDAzMSwKKyAgTUlQUzE2ZV9zd3NwX29wID0gMDMyLAorICBNSVBTMTZlX3N3X29wID0gMDMzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTUlQUzE2ZV9ycl9vcCA9IDAzNSwKKyAgTUlQUzE2ZV9leHRlbmRfb3AgPSAwMzYsCisgIE1JUFMxNmVfaTY0X29wID0gMDM3LAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIE1JUFMxNmVfaTY0X2Z1bmMgewotIE1JUFMxNmVfbGRzcF9mdW5jLAotIE1JUFMxNmVfc2RzcF9mdW5jLAorICBNSVBTMTZlX2xkc3BfZnVuYywKKyAgTUlQUzE2ZV9zZHNwX2Z1bmMsCisgIE1JUFMxNmVfc2RyYXNwX2Z1bmMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1JUFMxNmVfc2RyYXNwX2Z1bmMsCi0gTUlQUzE2ZV9kYWRqc3BfZnVuYywKLSBNSVBTMTZlX2xkcGNfZnVuYywKKyAgTUlQUzE2ZV9kYWRqc3BfZnVuYywKKyAgTUlQUzE2ZV9sZHBjX2Z1bmMsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gTUlQUzE2ZV9ycl9mdW5jIHsKLSBNSVBTMTZlX2pyX2Z1bmMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBNSVBTMTZlX2pyX2Z1bmMsCiB9OwogZW51bSBNSVBTNmVfaThfZnVuYyB7CisgIE1JUFMxNmVfc3dyYXNwX2Z1bmMgPSAwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTUlQUzE2ZV9zd3Jhc3BfZnVuYyA9IDAyLAogfTsKICNkZWZpbmUgTU1fTk9QMTYgMHgwYzAwCi0jZGVmaW5lIEJJVEZJRUxEX0ZJRUxEKGZpZWxkLCBtb3JlKSAgIG1vcmUgICBmaWVsZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgal9mb3JtYXQgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCB0YXJnZXQgOiAyNiwKLSA7KSkKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgdGFyZ2V0IDogMjYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyApKQogfTsKIHN0cnVjdCBpX2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJzIDogNSwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsIF9fQklURklFTERfRklFTEQoc2lnbmVkIGludCBzaW1tZWRpYXRlIDogMTYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDE2LAotIDspKSkpCisgKSkpKQogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdV9mb3JtYXQgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBycyA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHVpbW1lZGlhdGUgOiAxNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCB1aW1tZWRpYXRlIDogMTYsCi0gOykpKSkKKyApKSkpCiB9Owogc3RydWN0IGNfZm9ybWF0IHsKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBjX29wIDogMywgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgY2FjaGUgOiAyLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBzaW1tZWRpYXRlIDogMTYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnMgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBjX29wIDogMywKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgY2FjaGUgOiAyLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDE2LAotIDspKSkpKQorICkpKSkpCiB9Owogc3RydWN0IHJfZm9ybWF0IHsKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJkIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcmUgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBycyA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcmQgOiA1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcmUgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiwKLSA7KSkpKSkpCisgKSkpKSkpCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwX2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJzIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LAorICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBycyA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcmQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByZSA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJkIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcmUgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiwKLSA7KSkpKSkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICkpKSkpKQogfTsKIHN0cnVjdCBmX2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IDogMSwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgOiAxLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbXQgOiA0LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJkIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcmUgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbXQgOiA0LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJkIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcmUgOiA1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsCi0gOykpKSkpKSkKKyApKSkpKSkpCiB9Owogc3RydWN0IG1hX2Zvcm1hdCB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZyIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDQsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZtdCA6IDIsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnIgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZzIDogNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDQsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZtdCA6IDIsCi0gOykpKSkpKSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgKSkpKSkpKQogfTsKIHN0cnVjdCBiX2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGNvZGUgOiAyMCwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgY29kZSA6IDIwLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiwKLSA7KSkpCisgKSkpCiB9Owogc3RydWN0IHBzX2Zvcm1hdCB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJzIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnMgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZzIDogNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsCi0gOykpKSkpKQorICkpKSkpKQogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgdl9mb3JtYXQgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBzZWwgOiA0LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbXQgOiAxLAorICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBzZWwgOiA0LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbXQgOiAxLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCB2dCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHZzIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgdmQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCB2dCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHZzIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgdmQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiwKKyApKSkpKSkpCit9Oworc3RydWN0IHNwZWMzX2Zvcm1hdCB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJzIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDksIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA3LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gOykpKSkpKSkKKyApKSkpKQogfTsKIHN0cnVjdCBmYl9mb3JtYXQgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAorICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBiYyA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGNjIDogMywgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZmxhZyA6IDIsIF9fQklURklFTERfRklFTEQoc2lnbmVkIGludCBzaW1tZWRpYXRlIDogMTYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgYmMgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBjYyA6IDMsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZsYWcgOiAyLAotIEJJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDE2LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSA7KSkpKSkKKyApKSkpKQogfTsKIHN0cnVjdCBmcDBfZm9ybWF0IHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZm10IDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZm10IDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LAotIDspKSkpKSkKKyApKSkpKSkKIH07CiBzdHJ1Y3QgbW1fZnAwX2Zvcm1hdCB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ0IDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmZCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZtdCA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wIDogMiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZtdCA6IDMsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wIDogMiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsCi0gOykpKSkpKSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgKSkpKSkpKQogfTsKIHN0cnVjdCBmcDFfZm9ybWF0IHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3AgOiA1LAorICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmZCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmZCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSA7KSkpKSkpCisgKSkpKSkpCiB9Owogc3RydWN0IG1tX2ZwMV9mb3JtYXQgewotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAorICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZzIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZm10IDogMiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3AgOiA4LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZzIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZm10IDogMiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3AgOiA4LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsCi0gOykpKSkpKQorICkpKSkpKQogfTsKIHN0cnVjdCBtbV9mcDJfZm9ybWF0IHsKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZmQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGNjIDogMywgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgemVybyA6IDIsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZtdCA6IDIsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wIDogMywgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZmQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGNjIDogMywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHplcm8gOiAyLAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmbXQgOiAyLAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcCA6IDMsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSA7KSkpKSkpKSkKKyApKSkpKSkpKQogfTsKIHN0cnVjdCBtbV9mcDNfZm9ybWF0IHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZtdCA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wIDogNywgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZtdCA6IDMsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wIDogNywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LAotIDspKSkpKSkKKyApKSkpKSkKIH07CiBzdHJ1Y3QgbW1fZnA0X2Zvcm1hdCB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnMgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBjYyA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZtdCA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGNvbmQgOiA0LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZzIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgY2MgOiAzLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZm10IDogMywKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgY29uZCA6IDQsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LAotIDspKSkpKSkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICkpKSkpKSkKIH07CiBzdHJ1Y3QgbW1fZnA1X2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGluZGV4IDogNSwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgaW5kZXggOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBiYXNlIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZmQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGJhc2UgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmZCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIDspKSkpKSkKKyApKSkpKSkKIH07CiBzdHJ1Y3QgZnA2X2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZyIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnIgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZzIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZmQgOiA1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDYsCi0gOykpKSkpKQorICkpKSkpKQogfTsKIHN0cnVjdCBtbV9mcDZfZm9ybWF0IHsKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmcyA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZkIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnIgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdCA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZzIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZmQgOiA1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnIgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogNiwKLSA7KSkpKSkpCisgKSkpKSkpCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtbV9pX2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnMgOiA1LAorICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBydCA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJzIDogNSwgX19CSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiAxNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDE2LAotIDspKSkpCisgKSkpKQogfTsKIHN0cnVjdCBtbV9tX2Zvcm1hdCB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJkIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgYmFzZSA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA0LCBfX0JJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDEyLDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJkIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgYmFzZSA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA0LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiAxMiwKLSA7KSkpKSkKKyApKSkpKQogfTsKIHN0cnVjdCBtbV94X2Zvcm1hdCB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGluZGV4IDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgYmFzZSA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJkIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDExLDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGluZGV4IDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgYmFzZSA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJkIDogNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiAxMSwKLSA7KSkpKSkKKyApKSkpKQogfTsKIHN0cnVjdCBtbV9iMF9mb3JtYXQgeworICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDEwLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCA6IDE2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQoc2lnbmVkIGludCBzaW1tZWRpYXRlIDogMTAsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IDogMTYsCi0gOykpKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyApKSkKIH07CiBzdHJ1Y3QgbW1fYjFfZm9ybWF0IHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnMgOiAzLAorICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA2LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBycyA6IDMsIF9fQklURklFTERfRklFTEQoc2lnbmVkIGludCBzaW1tZWRpYXRlIDogNywgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgOiAxNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDcsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IDogMTYsCi0gOykpKSkKKyApKSkpCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtbTE2X21fZm9ybWF0IHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDQsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJsaXN0IDogMiwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDQsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJsaXN0IDogMiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgaW1tIDogNCwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgOiAxNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBpbW0gOiA0LAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCA6IDE2LAotIDspKSkpKQorICkpKSkpCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtbTE2X3JiX2Zvcm1hdCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogMywKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgYmFzZSA6IDMsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogMywgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgYmFzZSA6IDMsIF9fQklURklFTERfRklFTEQoc2lnbmVkIGludCBzaW1tZWRpYXRlIDogNCwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgOiAxNiw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDQsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IDogMTYsCi0gOykpKSkpCisgKSkpKSkKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG1tMTZfcjNfZm9ybWF0IHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiAzLAotIEJJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDcsCisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDYsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ0IDogMywgX19CSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IHNpbW1lZGlhdGUgOiA3LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCA6IDE2LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IDogMTYsCi0gOykpKSkKKyApKSkpCiB9Owogc3RydWN0IG1tMTZfcjVfZm9ybWF0IHsKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IDogMTYsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNiwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnQgOiA1LAotIEJJVEZJRUxEX0ZJRUxEKHNpZ25lZCBpbnQgc2ltbWVkaWF0ZSA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IDogMTYsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIDspKSkpCisgKSkpKQogfTsKIHN0cnVjdCBtMTZlX3JyIHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNSwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnggOiAzLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBuZCA6IDEsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGwgOiAxLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByYSA6IDEsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiA1LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ4IDogMywKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgbmQgOiAxLAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBsIDogMSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcmEgOiAxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDUsCi0gOykpKSkpKQorICkpKSkpKQogfTsKIHN0cnVjdCBtMTZlX2phbCB7CisgIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDUsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHggOiAxLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBpbW0yMF8xNiA6IDUsIF9fQklURklFTERfRklFTEQoc2lnbmVkIGludCBpbW0yNV8yMSA6IDUsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgeCA6IDEsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGltbTIwXzE2IDogNSwKLSBCSVRGSUVMRF9GSUVMRChzaWduZWQgaW50IGltbTI1XzIxIDogNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gOykpKSkKKyApKSkpCiB9Owogc3RydWN0IG0xNmVfaTY0IHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNSwKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGltbSA6IDgsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDMsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGltbSA6IDgsCi0gOykpKQorICkpKQogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbTE2ZV9yaTY0IHsKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNSwKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDMsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ5IDogMywKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgZnVuYyA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ5IDogMywgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgaW1tIDogNSw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBpbW0gOiA1LAotIDspKSkpCisgKSkpKQogfTsKIHN0cnVjdCBtMTZlX3JpIHsKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnggOiAzLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBpbW0gOiA4LDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ4IDogMywKLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgaW1tIDogOCwKLSA7KSkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICkpKQogfTsKIHN0cnVjdCBtMTZlX3JyaSB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IHJ4IDogMywKKyAgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgb3Bjb2RlIDogNSwgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnggOiAzLCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCByeSA6IDMsIF9fQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGltbSA6IDUsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgcnkgOiAzLAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBpbW0gOiA1LAotIDspKSkpCisgKSkpKQogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbTE2ZV9pOCB7Ci0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IG9wY29kZSA6IDUsCi0gQklURklFTERfRklFTEQodW5zaWduZWQgaW50IGZ1bmMgOiAzLAotIEJJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBpbW0gOiA4LAorICBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBvcGNvZGUgOiA1LCBfX0JJVEZJRUxEX0ZJRUxEKHVuc2lnbmVkIGludCBmdW5jIDogMywgX19CSVRGSUVMRF9GSUVMRCh1bnNpZ25lZCBpbnQgaW1tIDogOCw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIDspKSkKKyApKSkKIH07CiB1bmlvbiBtaXBzX2luc3RydWN0aW9uIHsKLSB1bnNpZ25lZCBpbnQgd29yZDsKKyAgdW5zaWduZWQgaW50IHdvcmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGhhbGZ3b3JkWzJdOwotIHVuc2lnbmVkIGNoYXIgYnl0ZVs0XTsKLSBzdHJ1Y3Qgal9mb3JtYXQgal9mb3JtYXQ7Ci0gc3RydWN0IGlfZm9ybWF0IGlfZm9ybWF0OworICB1bnNpZ25lZCBzaG9ydCBoYWxmd29yZFsyXTsKKyAgdW5zaWduZWQgY2hhciBieXRlWzRdOworICBzdHJ1Y3Qgal9mb3JtYXQgal9mb3JtYXQ7CisgIHN0cnVjdCBpX2Zvcm1hdCBpX2Zvcm1hdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHVfZm9ybWF0IHVfZm9ybWF0OwotIHN0cnVjdCBjX2Zvcm1hdCBjX2Zvcm1hdDsKLSBzdHJ1Y3Qgcl9mb3JtYXQgcl9mb3JtYXQ7Ci0gc3RydWN0IHBfZm9ybWF0IHBfZm9ybWF0OworICBzdHJ1Y3QgdV9mb3JtYXQgdV9mb3JtYXQ7CisgIHN0cnVjdCBjX2Zvcm1hdCBjX2Zvcm1hdDsKKyAgc3RydWN0IHJfZm9ybWF0IHJfZm9ybWF0OworICBzdHJ1Y3QgcF9mb3JtYXQgcF9mb3JtYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmX2Zvcm1hdCBmX2Zvcm1hdDsKLSBzdHJ1Y3QgbWFfZm9ybWF0IG1hX2Zvcm1hdDsKLSBzdHJ1Y3QgYl9mb3JtYXQgYl9mb3JtYXQ7Ci0gc3RydWN0IHBzX2Zvcm1hdCBwc19mb3JtYXQ7CisgIHN0cnVjdCBmX2Zvcm1hdCBmX2Zvcm1hdDsKKyAgc3RydWN0IG1hX2Zvcm1hdCBtYV9mb3JtYXQ7CisgIHN0cnVjdCBiX2Zvcm1hdCBiX2Zvcm1hdDsKKyAgc3RydWN0IHBzX2Zvcm1hdCBwc19mb3JtYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB2X2Zvcm1hdCB2X2Zvcm1hdDsKLSBzdHJ1Y3QgZmJfZm9ybWF0IGZiX2Zvcm1hdDsKLSBzdHJ1Y3QgZnAwX2Zvcm1hdCBmcDBfZm9ybWF0OwotIHN0cnVjdCBtbV9mcDBfZm9ybWF0IG1tX2ZwMF9mb3JtYXQ7CisgIHN0cnVjdCB2X2Zvcm1hdCB2X2Zvcm1hdDsKKyAgc3RydWN0IHNwZWMzX2Zvcm1hdCBzcGVjM19mb3JtYXQ7CisgIHN0cnVjdCBmYl9mb3JtYXQgZmJfZm9ybWF0OworICBzdHJ1Y3QgZnAwX2Zvcm1hdCBmcDBfZm9ybWF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZnAxX2Zvcm1hdCBmcDFfZm9ybWF0OwotIHN0cnVjdCBtbV9mcDFfZm9ybWF0IG1tX2ZwMV9mb3JtYXQ7Ci0gc3RydWN0IG1tX2ZwMl9mb3JtYXQgbW1fZnAyX2Zvcm1hdDsKLSBzdHJ1Y3QgbW1fZnAzX2Zvcm1hdCBtbV9mcDNfZm9ybWF0OworICBzdHJ1Y3QgbW1fZnAwX2Zvcm1hdCBtbV9mcDBfZm9ybWF0OworICBzdHJ1Y3QgZnAxX2Zvcm1hdCBmcDFfZm9ybWF0OworICBzdHJ1Y3QgbW1fZnAxX2Zvcm1hdCBtbV9mcDFfZm9ybWF0OworICBzdHJ1Y3QgbW1fZnAyX2Zvcm1hdCBtbV9mcDJfZm9ybWF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgbW1fZnA0X2Zvcm1hdCBtbV9mcDRfZm9ybWF0OwotIHN0cnVjdCBtbV9mcDVfZm9ybWF0IG1tX2ZwNV9mb3JtYXQ7Ci0gc3RydWN0IGZwNl9mb3JtYXQgZnA2X2Zvcm1hdDsKLSBzdHJ1Y3QgbW1fZnA2X2Zvcm1hdCBtbV9mcDZfZm9ybWF0OworICBzdHJ1Y3QgbW1fZnAzX2Zvcm1hdCBtbV9mcDNfZm9ybWF0OworICBzdHJ1Y3QgbW1fZnA0X2Zvcm1hdCBtbV9mcDRfZm9ybWF0OworICBzdHJ1Y3QgbW1fZnA1X2Zvcm1hdCBtbV9mcDVfZm9ybWF0OworICBzdHJ1Y3QgZnA2X2Zvcm1hdCBmcDZfZm9ybWF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgbW1faV9mb3JtYXQgbW1faV9mb3JtYXQ7Ci0gc3RydWN0IG1tX21fZm9ybWF0IG1tX21fZm9ybWF0OwotIHN0cnVjdCBtbV94X2Zvcm1hdCBtbV94X2Zvcm1hdDsKLSBzdHJ1Y3QgbW1fYjBfZm9ybWF0IG1tX2IwX2Zvcm1hdDsKKyAgc3RydWN0IG1tX2ZwNl9mb3JtYXQgbW1fZnA2X2Zvcm1hdDsKKyAgc3RydWN0IG1tX2lfZm9ybWF0IG1tX2lfZm9ybWF0OworICBzdHJ1Y3QgbW1fbV9mb3JtYXQgbW1fbV9mb3JtYXQ7CisgIHN0cnVjdCBtbV94X2Zvcm1hdCBtbV94X2Zvcm1hdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IG1tX2IxX2Zvcm1hdCBtbV9iMV9mb3JtYXQ7Ci0gc3RydWN0IG1tMTZfbV9mb3JtYXQgbW0xNl9tX2Zvcm1hdCA7Ci0gc3RydWN0IG1tMTZfcmJfZm9ybWF0IG1tMTZfcmJfZm9ybWF0OwotIHN0cnVjdCBtbTE2X3IzX2Zvcm1hdCBtbTE2X3IzX2Zvcm1hdDsKKyAgc3RydWN0IG1tX2IwX2Zvcm1hdCBtbV9iMF9mb3JtYXQ7CisgIHN0cnVjdCBtbV9iMV9mb3JtYXQgbW1fYjFfZm9ybWF0OworICBzdHJ1Y3QgbW0xNl9tX2Zvcm1hdCBtbTE2X21fZm9ybWF0OworICBzdHJ1Y3QgbW0xNl9yYl9mb3JtYXQgbW0xNl9yYl9mb3JtYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBtbTE2X3I1X2Zvcm1hdCBtbTE2X3I1X2Zvcm1hdDsKKyAgc3RydWN0IG1tMTZfcjNfZm9ybWF0IG1tMTZfcjNfZm9ybWF0OworICBzdHJ1Y3QgbW0xNl9yNV9mb3JtYXQgbW0xNl9yNV9mb3JtYXQ7CiB9OwogdW5pb24gbWlwczE2ZV9pbnN0cnVjdGlvbiB7Ci0gdW5zaWduZWQgaW50IGZ1bGwgOiAxNjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IG0xNmVfcnIgcnI7Ci0gc3RydWN0IG0xNmVfamFsIGphbDsKLSBzdHJ1Y3QgbTE2ZV9pNjQgaTY0OwotIHN0cnVjdCBtMTZlX3JpNjQgcmk2NDsKKyAgdW5zaWduZWQgaW50IGZ1bGwgOiAxNjsKKyAgc3RydWN0IG0xNmVfcnIgcnI7CisgIHN0cnVjdCBtMTZlX2phbCBqYWw7CisgIHN0cnVjdCBtMTZlX2k2NCBpNjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBtMTZlX3JpIHJpOwotIHN0cnVjdCBtMTZlX3JyaSBycmk7Ci0gc3RydWN0IG0xNmVfaTggaTg7CisgIHN0cnVjdCBtMTZlX3JpNjQgcmk2NDsKKyAgc3RydWN0IG0xNmVfcmkgcmk7CisgIHN0cnVjdCBtMTZlX3JyaSBycmk7CisgIHN0cnVjdCBtMTZlX2k4IGk4OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9pb2N0bHMuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2lvY3Rscy5oCmluZGV4IDMyZTZlMzQuLjk3M2JjYzcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2lvY3Rscy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2lvY3Rscy5oCkBAIC04OCwzNyArODgsMzkgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDU0VUU1cyIF9JT1coJ1QnLCAweDJDLCBzdHJ1Y3QgdGVybWlvczIpCiAjZGVmaW5lIFRDU0VUU0YyIF9JT1coJ1QnLCAweDJELCBzdHJ1Y3QgdGVybWlvczIpCisjZGVmaW5lIFRJT0NHUlM0ODUgX0lPUignVCcsIDB4MkUsIHN0cnVjdCBzZXJpYWxfcnM0ODUpCisjZGVmaW5lIFRJT0NTUlM0ODUgX0lPV1IoJ1QnLCAweDJGLCBzdHJ1Y3Qgc2VyaWFsX3JzNDg1KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElPQ0dQVE4gX0lPUignVCcsIDB4MzAsIHVuc2lnbmVkIGludCkKICNkZWZpbmUgVElPQ1NQVExDSyBfSU9XKCdUJywgMHgzMSwgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElPQ0dERVYgX0lPUignVCcsIDB4MzIsIHVuc2lnbmVkIGludCkKICNkZWZpbmUgVElPQ1NJRyBfSU9XKCdUJywgMHgzNiwgaW50KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElPQ1ZIQU5HVVAgMHg1NDM3CiAjZGVmaW5lIFRJT0NHUEtUIF9JT1IoJ1QnLCAweDM4LCBpbnQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSU9DR1BUTENLIF9JT1IoJ1QnLCAweDM5LCBpbnQpCiAjZGVmaW5lIFRJT0NHRVhDTCBfSU9SKCdUJywgMHg0MCwgaW50KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElPQ1NDVFRZIDB4NTQ4MAogI2RlZmluZSBUSU9DR1NPRlRDQVIgMHg1NDgxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSU9DU1NPRlRDQVIgMHg1NDgyCiAjZGVmaW5lIFRJT0NMSU5VWCAweDU0ODMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJT0NHU0VSSUFMIDB4NTQ4NAogI2RlZmluZSBUSU9DU1NFUklBTCAweDU0ODUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDU0JSS1AgMHg1NDg2CiAjZGVmaW5lIFRJT0NTRVJDT05GSUcgMHg1NDg4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSU9DU0VSR1dJTEQgMHg1NDg5CiAjZGVmaW5lIFRJT0NTRVJTV0lMRCAweDU0OGEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJT0NHTENLVFJNSU9TIDB4NTQ4YgogI2RlZmluZSBUSU9DU0xDS1RSTUlPUyAweDU0OGMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJT0NTRVJHU1RSVUNUIDB4NTQ4ZAogI2RlZmluZSBUSU9DU0VSR0VUTFNSIDB4NTQ4ZQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElPQ1NFUkdFVE1VTFRJIDB4NTQ4ZgogI2RlZmluZSBUSU9DU0VSU0VUTVVMVEkgMHg1NDkwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSU9DTUlXQUlUIDB4NTQ5MQogI2RlZmluZSBUSU9DR0lDT1VOVCAweDU0OTIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2t2bS5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20va3ZtLmgKaW5kZXggNjkwODRlZS4uMDIwNmQxNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20va3ZtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20va3ZtLmgKQEAgLTIxLDIyICsyMSwyMiBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3Qga3ZtX3JlZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBncHJbMzJdOwotIF9fdTY0IGhpOwotIF9fdTY0IGxvOwotIF9fdTY0IHBjOworICBfX3U2NCBncHJbMzJdOworICBfX3U2NCBoaTsKKyAgX191NjQgbG87CisgIF9fdTY0IHBjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qga3ZtX2ZwdSB7Ci0gX191NjQgZnByWzMyXTsKLSBfX3UzMiBmaXI7CisgIF9fdTY0IGZwclszMl07CisgIF9fdTMyIGZpcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmNjcjsKLSBfX3UzMiBmZXhyOwotIF9fdTMyIGZlbnI7Ci0gX191MzIgZmNzcjsKKyAgX191MzIgZmNjcjsKKyAgX191MzIgZmV4cjsKKyAgX191MzIgZmVucjsKKyAgX191MzIgZmNzcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGFkOworICBfX3UzMiBwYWQ7CiB9OwogI2RlZmluZSBLVk1fUkVHX01JUFNfUjAgKEtWTV9SRUdfTUlQUyB8IEtWTV9SRUdfU0laRV9VNjQgfCAwKQogI2RlZmluZSBLVk1fUkVHX01JUFNfUjEgKEtWTV9SRUdfTUlQUyB8IEtWTV9SRUdfU0laRV9VNjQgfCAxKQpAQCAtODIsOCArODIsMTMgQEAKICNkZWZpbmUgS1ZNX1JFR19NSVBTX0xPIChLVk1fUkVHX01JUFMgfCBLVk1fUkVHX1NJWkVfVTY0IHwgMzMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUkVHX01JUFNfUEMgKEtWTV9SRUdfTUlQUyB8IEtWTV9SRUdfU0laRV9VNjQgfCAzNCkKKyNkZWZpbmUgS1ZNX1JFR19NSVBTX0NPVU5UX0NUTCAoS1ZNX1JFR19NSVBTIHwgS1ZNX1JFR19TSVpFX1U2NCB8IDB4MjAwMDAgfCAwKQorI2RlZmluZSBLVk1fUkVHX01JUFNfQ09VTlRfQ1RMX0RDIDB4MDAwMDAwMDEKKyNkZWZpbmUgS1ZNX1JFR19NSVBTX0NPVU5UX1JFU1VNRSAoS1ZNX1JFR19NSVBTIHwgS1ZNX1JFR19TSVpFX1U2NCB8IDB4MjAwMDAgfCAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX1JFR19NSVBTX0NPVU5UX0haIChLVk1fUkVHX01JUFMgfCBLVk1fUkVHX1NJWkVfVTY0IHwgMHgyMDAwMCB8IDIpCiBzdHJ1Y3Qga3ZtX2RlYnVnX2V4aXRfYXJjaCB7Ci0gX191NjQgZXBjOworICBfX3U2NCBlcGM7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fZ3Vlc3RfZGVidWdfYXJjaCB7CkBAIC05NCw4ICs5OSw4IEBACiBzdHJ1Y3Qga3ZtX3NyZWdzIHsKIH07CiBzdHJ1Y3Qga3ZtX21pcHNfaW50ZXJydXB0IHsKLSBfX3UzMiBjcHU7CisgIF9fdTMyIGNwdTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaXJxOworICBfX3UzMiBpcnE7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9rdm1fcGFyYS5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20va3ZtX3BhcmEuaAppbmRleCBlMTlmN2EwLi44MjVjMTJhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9rdm1fcGFyYS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL2t2bV9wYXJhLmgKQEAgLTE2LDQgKzE2LDYgQEAKICAqKioKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSNpbmNsdWRlIDxhc20tZ2VuZXJpYy9rdm1fcGFyYS5oPgorI2lmbmRlZiBfVUFQSV9BU01fTUlQU19LVk1fUEFSQV9ICisjZGVmaW5lIF9VQVBJX0FTTV9NSVBTX0tWTV9QQVJBX0gKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vbXNnYnVmLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9tc2didWYuaAppbmRleCBlZmFlMTQ4Li4zZTcwMGIzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9tc2didWYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9tc2didWYuaApAQCAtMTksMzEgKzE5LDMxIEBACiAjaWZuZGVmIF9BU01fTVNHQlVGX0gKICNkZWZpbmUgX0FTTV9NU0dCVUZfSAogc3RydWN0IG1zcWlkNjRfZHMgewotIHN0cnVjdCBpcGM2NF9wZXJtIG1zZ19wZXJtOworICBzdHJ1Y3QgaXBjNjRfcGVybSBtc2dfcGVybTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfdGltZV90IG1zZ19zdGltZTsKKyAgX19rZXJuZWxfdGltZV90IG1zZ19zdGltZTsKICNpZm5kZWYgX19taXBzNjQKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMTsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDE7CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfdGltZV90IG1zZ19ydGltZTsKKyAgX19rZXJuZWxfdGltZV90IG1zZ19ydGltZTsKICNpZm5kZWYgX19taXBzNjQKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMjsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDI7CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfdGltZV90IG1zZ19jdGltZTsKKyAgX19rZXJuZWxfdGltZV90IG1zZ19jdGltZTsKICNpZm5kZWYgX19taXBzNjQKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMzsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDM7CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBtc2dfY2J5dGVzOwotIHVuc2lnbmVkIGxvbmcgbXNnX3FudW07Ci0gdW5zaWduZWQgbG9uZyBtc2dfcWJ5dGVzOwotIF9fa2VybmVsX3BpZF90IG1zZ19sc3BpZDsKKyAgdW5zaWduZWQgbG9uZyBtc2dfY2J5dGVzOworICB1bnNpZ25lZCBsb25nIG1zZ19xbnVtOworICB1bnNpZ25lZCBsb25nIG1zZ19xYnl0ZXM7CisgIF9fa2VybmVsX3BpZF90IG1zZ19sc3BpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfcGlkX3QgbXNnX2xycGlkOwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQ0OwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQ1OworICBfX2tlcm5lbF9waWRfdCBtc2dfbHJwaWQ7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQ0OworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkNTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9wb3NpeF90eXBlcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vcG9zaXhfdHlwZXMuaAppbmRleCBlODU4MjFjLi4yNWE5ZTNjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9wb3NpeF90eXBlcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3Bvc2l4X3R5cGVzLmgKQEAgLTI0LDcgKzI0LDcgQEAKICNkZWZpbmUgX19rZXJuZWxfZGFkZHJfdCBfX2tlcm5lbF9kYWRkcl90CiAjaWYgX01JUFNfU1pMT05HID09IDMyCiB0eXBlZGVmIHN0cnVjdCB7Ci0gbG9uZyB2YWxbMl07CisgIGxvbmcgdmFsWzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19rZXJuZWxfZnNpZF90OwogI2RlZmluZSBfX2tlcm5lbF9mc2lkX3QgX19rZXJuZWxfZnNpZF90CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9wdHJhY2UuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3B0cmFjZS5oCmluZGV4IDAyOTZjZjMuLjQ4MDEwZTUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3B0cmFjZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3B0cmFjZS5oCkBAIC0xOCw3NiArMTgsNzcgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfVUFQSV9BU01fUFRSQUNFX0gKICNkZWZpbmUgX1VBUElfQVNNX1BUUkFDRV9ICisjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNkZWZpbmUgRlBSX0JBU0UgMzIKLSNkZWZpbmUgUEMgNjQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDIDY0CiAjZGVmaW5lIENBVVNFIDY1CiAjZGVmaW5lIEJBRFZBRERSIDY2CiAjZGVmaW5lIE1NSEkgNjcKLSNkZWZpbmUgTU1MTyA2OAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTU1MTyA2OAogI2RlZmluZSBGUENfQ1NSIDY5CiAjZGVmaW5lIEZQQ19FSVIgNzAKICNkZWZpbmUgRFNQX0JBU0UgNzEKLSNkZWZpbmUgRFNQX0NPTlRST0wgNzcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERTUF9DT05UUk9MIDc3CiAjZGVmaW5lIEFDWCA3OAogc3RydWN0IHB0X3JlZ3MgewotIHVuc2lnbmVkIGxvbmcgcmVnc1szMl07Ci0gdW5zaWduZWQgbG9uZyBjcDBfc3RhdHVzOworICBfX3U2NCByZWdzWzMyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBoaTsKLSB1bnNpZ25lZCBsb25nIGxvOwotIHVuc2lnbmVkIGxvbmcgY3AwX2JhZHZhZGRyOwotIHVuc2lnbmVkIGxvbmcgY3AwX2NhdXNlOworICBfX3U2NCBsbzsKKyAgX191NjQgaGk7CisgIF9fdTY0IGNwMF9lcGM7CisgIF9fdTY0IGNwMF9iYWR2YWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBjcDBfZXBjOwotfSBfX2F0dHJpYnV0ZV9fICgoYWxpZ25lZCAoOCkpKTsKKyAgX191NjQgY3AwX3N0YXR1czsKKyAgX191NjQgY3AwX2NhdXNlOworfSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiAjZGVmaW5lIFBUUkFDRV9HRVRSRUdTIDEyCi0jZGVmaW5lIFBUUkFDRV9TRVRSRUdTIDEzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQVFJBQ0VfU0VUUkVHUyAxMwogI2RlZmluZSBQVFJBQ0VfR0VURlBSRUdTIDE0CiAjZGVmaW5lIFBUUkFDRV9TRVRGUFJFR1MgMTUKICNkZWZpbmUgUFRSQUNFX09MRFNFVE9QVElPTlMgMjEKLSNkZWZpbmUgUFRSQUNFX0dFVF9USFJFQURfQVJFQSAyNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFRSQUNFX0dFVF9USFJFQURfQVJFQSAyNQogI2RlZmluZSBQVFJBQ0VfU0VUX1RIUkVBRF9BUkVBIDI2CiAjZGVmaW5lIFBUUkFDRV9QRUVLVEVYVF8zMjY0IDB4YzAKICNkZWZpbmUgUFRSQUNFX1BFRUtEQVRBXzMyNjQgMHhjMQotI2RlZmluZSBQVFJBQ0VfUE9LRVRFWFRfMzI2NCAweGMyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQVFJBQ0VfUE9LRVRFWFRfMzI2NCAweGMyCiAjZGVmaW5lIFBUUkFDRV9QT0tFREFUQV8zMjY0IDB4YzMKICNkZWZpbmUgUFRSQUNFX0dFVF9USFJFQURfQVJFQV8zMjY0IDB4YzQKIGVudW0gcHRfd2F0Y2hfc3R5bGUgewotIHB0X3dhdGNoX3N0eWxlX21pcHMzMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gcHRfd2F0Y2hfc3R5bGVfbWlwczY0CisgIHB0X3dhdGNoX3N0eWxlX21pcHMzMiwKKyAgcHRfd2F0Y2hfc3R5bGVfbWlwczY0CiB9Owogc3RydWN0IG1pcHMzMl93YXRjaF9yZWdzIHsKLSB1bnNpZ25lZCBpbnQgd2F0Y2hsb1s4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgd2F0Y2hoaVs4XTsKLSB1bnNpZ25lZCBzaG9ydCB3YXRjaF9tYXNrc1s4XTsKLSB1bnNpZ25lZCBpbnQgbnVtX3ZhbGlkOworICB1bnNpZ25lZCBpbnQgd2F0Y2hsb1s4XTsKKyAgdW5zaWduZWQgc2hvcnQgd2F0Y2hoaVs4XTsKKyAgdW5zaWduZWQgc2hvcnQgd2F0Y2hfbWFza3NbOF07CisgIHVuc2lnbmVkIGludCBudW1fdmFsaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG1pcHM2NF93YXRjaF9yZWdzIHsKLSB1bnNpZ25lZCBsb25nIGxvbmcgd2F0Y2hsb1s4XTsKLSB1bnNpZ25lZCBzaG9ydCB3YXRjaGhpWzhdOwotIHVuc2lnbmVkIHNob3J0IHdhdGNoX21hc2tzWzhdOworICB1bnNpZ25lZCBsb25nIGxvbmcgd2F0Y2hsb1s4XTsKKyAgdW5zaWduZWQgc2hvcnQgd2F0Y2hoaVs4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG51bV92YWxpZDsKKyAgdW5zaWduZWQgc2hvcnQgd2F0Y2hfbWFza3NbOF07CisgIHVuc2lnbmVkIGludCBudW1fdmFsaWQ7CiB9IF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKIHN0cnVjdCBwdF93YXRjaF9yZWdzIHsKLSBlbnVtIHB0X3dhdGNoX3N0eWxlIHN0eWxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IG1pcHMzMl93YXRjaF9yZWdzIG1pcHMzMjsKLSBzdHJ1Y3QgbWlwczY0X3dhdGNoX3JlZ3MgbWlwczY0OwotIH07CisgIGVudW0gcHRfd2F0Y2hfc3R5bGUgc3R5bGU7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgbWlwczMyX3dhdGNoX3JlZ3MgbWlwczMyOworICAgIHN0cnVjdCBtaXBzNjRfd2F0Y2hfcmVncyBtaXBzNjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB9OwogfTsKICNkZWZpbmUgUFRSQUNFX0dFVF9XQVRDSF9SRUdTIDB4ZDAKICNkZWZpbmUgUFRSQUNFX1NFVF9XQVRDSF9SRUdTIDB4ZDEKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vcmVnLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9yZWcuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jMGYwMDNlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vcmVnLmgKQEAgLTAsMCArMSwyMjMgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKgorICoqKiAgIFRoaXMgaGVhZGVyIHdhcyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBmcm9tIGEgTGludXgga2VybmVsIGhlYWRlcgorICoqKiAgIG9mIHRoZSBzYW1lIG5hbWUsIHRvIG1ha2UgaW5mb3JtYXRpb24gbmVjZXNzYXJ5IGZvciB1c2Vyc3BhY2UgdG8KKyAqKiogICBjYWxsIGludG8gdGhlIGtlcm5lbCBhdmFpbGFibGUgdG8gbGliYy4gIEl0IGNvbnRhaW5zIG9ubHkgY29uc3RhbnRzLAorICoqKiAgIHN0cnVjdHVyZXMsIGFuZCBtYWNyb3MgZ2VuZXJhdGVkIGZyb20gdGhlIG9yaWdpbmFsIGhlYWRlciwgYW5kIHRodXMsCisgKioqICAgY29udGFpbnMgbm8gY29weXJpZ2h0YWJsZSBpbmZvcm1hdGlvbi4KKyAqKioKKyAqKiogICBUbyBlZGl0IHRoZSBjb250ZW50IG9mIHRoaXMgaGVhZGVyLCBtb2RpZnkgdGhlIGNvcnJlc3BvbmRpbmcKKyAqKiogICBzb3VyY2UgZmlsZSAoZS5nLiB1bmRlciBleHRlcm5hbC9rZXJuZWwtaGVhZGVycy9vcmlnaW5hbC8pIHRoZW4KKyAqKiogICBydW4gYmlvbmljL2xpYmMva2VybmVsL3Rvb2xzL3VwZGF0ZV9hbGwucHkKKyAqKioKKyAqKiogICBBbnkgbWFudWFsIGNoYW5nZSBoZXJlIHdpbGwgYmUgbG9zdCB0aGUgbmV4dCB0aW1lIHRoaXMgc2NyaXB0IHdpbGwKKyAqKiogICBiZSBydW4uIFlvdSd2ZSBiZWVuIHdhcm5lZCEKKyAqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNpZm5kZWYgX19VQVBJX0FTTV9NSVBTX1JFR19ICisjZGVmaW5lIF9fVUFQSV9BU01fTUlQU19SRUdfSAorI2RlZmluZSBNSVBTMzJfRUZfUjAgNgorI2RlZmluZSBNSVBTMzJfRUZfUjEgNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzMyX0VGX1IyIDgKKyNkZWZpbmUgTUlQUzMyX0VGX1IzIDkKKyNkZWZpbmUgTUlQUzMyX0VGX1I0IDEwCisjZGVmaW5lIE1JUFMzMl9FRl9SNSAxMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzMyX0VGX1I2IDEyCisjZGVmaW5lIE1JUFMzMl9FRl9SNyAxMworI2RlZmluZSBNSVBTMzJfRUZfUjggMTQKKyNkZWZpbmUgTUlQUzMyX0VGX1I5IDE1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNSVBTMzJfRUZfUjEwIDE2CisjZGVmaW5lIE1JUFMzMl9FRl9SMTEgMTcKKyNkZWZpbmUgTUlQUzMyX0VGX1IxMiAxOAorI2RlZmluZSBNSVBTMzJfRUZfUjEzIDE5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNSVBTMzJfRUZfUjE0IDIwCisjZGVmaW5lIE1JUFMzMl9FRl9SMTUgMjEKKyNkZWZpbmUgTUlQUzMyX0VGX1IxNiAyMgorI2RlZmluZSBNSVBTMzJfRUZfUjE3IDIzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNSVBTMzJfRUZfUjE4IDI0CisjZGVmaW5lIE1JUFMzMl9FRl9SMTkgMjUKKyNkZWZpbmUgTUlQUzMyX0VGX1IyMCAyNgorI2RlZmluZSBNSVBTMzJfRUZfUjIxIDI3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNSVBTMzJfRUZfUjIyIDI4CisjZGVmaW5lIE1JUFMzMl9FRl9SMjMgMjkKKyNkZWZpbmUgTUlQUzMyX0VGX1IyNCAzMAorI2RlZmluZSBNSVBTMzJfRUZfUjI1IDMxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNSVBTMzJfRUZfUjI2IDMyCisjZGVmaW5lIE1JUFMzMl9FRl9SMjcgMzMKKyNkZWZpbmUgTUlQUzMyX0VGX1IyOCAzNAorI2RlZmluZSBNSVBTMzJfRUZfUjI5IDM1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNSVBTMzJfRUZfUjMwIDM2CisjZGVmaW5lIE1JUFMzMl9FRl9SMzEgMzcKKyNkZWZpbmUgTUlQUzMyX0VGX0xPIDM4CisjZGVmaW5lIE1JUFMzMl9FRl9ISSAzOQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzMyX0VGX0NQMF9FUEMgNDAKKyNkZWZpbmUgTUlQUzMyX0VGX0NQMF9CQURWQUREUiA0MQorI2RlZmluZSBNSVBTMzJfRUZfQ1AwX1NUQVRVUyA0MgorI2RlZmluZSBNSVBTMzJfRUZfQ1AwX0NBVVNFIDQzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNSVBTMzJfRUZfVU5VU0VEMCA0NAorI2RlZmluZSBNSVBTMzJfRUZfU0laRSAxODAKKyNkZWZpbmUgTUlQUzY0X0VGX1IwIDAKKyNkZWZpbmUgTUlQUzY0X0VGX1IxIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1JUFM2NF9FRl9SMiAyCisjZGVmaW5lIE1JUFM2NF9FRl9SMyAzCisjZGVmaW5lIE1JUFM2NF9FRl9SNCA0CisjZGVmaW5lIE1JUFM2NF9FRl9SNSA1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNSVBTNjRfRUZfUjYgNgorI2RlZmluZSBNSVBTNjRfRUZfUjcgNworI2RlZmluZSBNSVBTNjRfRUZfUjggOAorI2RlZmluZSBNSVBTNjRfRUZfUjkgOQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzY0X0VGX1IxMCAxMAorI2RlZmluZSBNSVBTNjRfRUZfUjExIDExCisjZGVmaW5lIE1JUFM2NF9FRl9SMTIgMTIKKyNkZWZpbmUgTUlQUzY0X0VGX1IxMyAxMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzY0X0VGX1IxNCAxNAorI2RlZmluZSBNSVBTNjRfRUZfUjE1IDE1CisjZGVmaW5lIE1JUFM2NF9FRl9SMTYgMTYKKyNkZWZpbmUgTUlQUzY0X0VGX1IxNyAxNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzY0X0VGX1IxOCAxOAorI2RlZmluZSBNSVBTNjRfRUZfUjE5IDE5CisjZGVmaW5lIE1JUFM2NF9FRl9SMjAgMjAKKyNkZWZpbmUgTUlQUzY0X0VGX1IyMSAyMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzY0X0VGX1IyMiAyMgorI2RlZmluZSBNSVBTNjRfRUZfUjIzIDIzCisjZGVmaW5lIE1JUFM2NF9FRl9SMjQgMjQKKyNkZWZpbmUgTUlQUzY0X0VGX1IyNSAyNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzY0X0VGX1IyNiAyNgorI2RlZmluZSBNSVBTNjRfRUZfUjI3IDI3CisjZGVmaW5lIE1JUFM2NF9FRl9SMjggMjgKKyNkZWZpbmUgTUlQUzY0X0VGX1IyOSAyOQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzY0X0VGX1IzMCAzMAorI2RlZmluZSBNSVBTNjRfRUZfUjMxIDMxCisjZGVmaW5lIE1JUFM2NF9FRl9MTyAzMgorI2RlZmluZSBNSVBTNjRfRUZfSEkgMzMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1JUFM2NF9FRl9DUDBfRVBDIDM0CisjZGVmaW5lIE1JUFM2NF9FRl9DUDBfQkFEVkFERFIgMzUKKyNkZWZpbmUgTUlQUzY0X0VGX0NQMF9TVEFUVVMgMzYKKyNkZWZpbmUgTUlQUzY0X0VGX0NQMF9DQVVTRSAzNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUlQUzY0X0VGX1NJWkUgMzA0CisjaWYgX01JUFNfU0lNID09IF9NSVBTX1NJTV9BQkkzMgorI2RlZmluZSBFRl9SMCBNSVBTMzJfRUZfUjAKKyNkZWZpbmUgRUZfUjEgTUlQUzMyX0VGX1IxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9SMiBNSVBTMzJfRUZfUjIKKyNkZWZpbmUgRUZfUjMgTUlQUzMyX0VGX1IzCisjZGVmaW5lIEVGX1I0IE1JUFMzMl9FRl9SNAorI2RlZmluZSBFRl9SNSBNSVBTMzJfRUZfUjUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVGX1I2IE1JUFMzMl9FRl9SNgorI2RlZmluZSBFRl9SNyBNSVBTMzJfRUZfUjcKKyNkZWZpbmUgRUZfUjggTUlQUzMyX0VGX1I4CisjZGVmaW5lIEVGX1I5IE1JUFMzMl9FRl9SOQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRUZfUjEwIE1JUFMzMl9FRl9SMTAKKyNkZWZpbmUgRUZfUjExIE1JUFMzMl9FRl9SMTEKKyNkZWZpbmUgRUZfUjEyIE1JUFMzMl9FRl9SMTIKKyNkZWZpbmUgRUZfUjEzIE1JUFMzMl9FRl9SMTMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVGX1IxNCBNSVBTMzJfRUZfUjE0CisjZGVmaW5lIEVGX1IxNSBNSVBTMzJfRUZfUjE1CisjZGVmaW5lIEVGX1IxNiBNSVBTMzJfRUZfUjE2CisjZGVmaW5lIEVGX1IxNyBNSVBTMzJfRUZfUjE3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9SMTggTUlQUzMyX0VGX1IxOAorI2RlZmluZSBFRl9SMTkgTUlQUzMyX0VGX1IxOQorI2RlZmluZSBFRl9SMjAgTUlQUzMyX0VGX1IyMAorI2RlZmluZSBFRl9SMjEgTUlQUzMyX0VGX1IyMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRUZfUjIyIE1JUFMzMl9FRl9SMjIKKyNkZWZpbmUgRUZfUjIzIE1JUFMzMl9FRl9SMjMKKyNkZWZpbmUgRUZfUjI0IE1JUFMzMl9FRl9SMjQKKyNkZWZpbmUgRUZfUjI1IE1JUFMzMl9FRl9SMjUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVGX1IyNiBNSVBTMzJfRUZfUjI2CisjZGVmaW5lIEVGX1IyNyBNSVBTMzJfRUZfUjI3CisjZGVmaW5lIEVGX1IyOCBNSVBTMzJfRUZfUjI4CisjZGVmaW5lIEVGX1IyOSBNSVBTMzJfRUZfUjI5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9SMzAgTUlQUzMyX0VGX1IzMAorI2RlZmluZSBFRl9SMzEgTUlQUzMyX0VGX1IzMQorI2RlZmluZSBFRl9MTyBNSVBTMzJfRUZfTE8KKyNkZWZpbmUgRUZfSEkgTUlQUzMyX0VGX0hJCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9DUDBfRVBDIE1JUFMzMl9FRl9DUDBfRVBDCisjZGVmaW5lIEVGX0NQMF9CQURWQUREUiBNSVBTMzJfRUZfQ1AwX0JBRFZBRERSCisjZGVmaW5lIEVGX0NQMF9TVEFUVVMgTUlQUzMyX0VGX0NQMF9TVEFUVVMKKyNkZWZpbmUgRUZfQ1AwX0NBVVNFIE1JUFMzMl9FRl9DUDBfQ0FVU0UKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVGX1VOVVNFRDAgTUlQUzMyX0VGX1VOVVNFRDAKKyNkZWZpbmUgRUZfU0laRSBNSVBTMzJfRUZfU0laRQorI2VsaWYgX01JUFNfU0lNPT1fTUlQU19TSU1fQUJJNjR8fF9NSVBTX1NJTT09X01JUFNfU0lNX05BQkkzMgorI2RlZmluZSBFRl9SMCBNSVBTNjRfRUZfUjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVGX1IxIE1JUFM2NF9FRl9SMQorI2RlZmluZSBFRl9SMiBNSVBTNjRfRUZfUjIKKyNkZWZpbmUgRUZfUjMgTUlQUzY0X0VGX1IzCisjZGVmaW5lIEVGX1I0IE1JUFM2NF9FRl9SNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRUZfUjUgTUlQUzY0X0VGX1I1CisjZGVmaW5lIEVGX1I2IE1JUFM2NF9FRl9SNgorI2RlZmluZSBFRl9SNyBNSVBTNjRfRUZfUjcKKyNkZWZpbmUgRUZfUjggTUlQUzY0X0VGX1I4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9SOSBNSVBTNjRfRUZfUjkKKyNkZWZpbmUgRUZfUjEwIE1JUFM2NF9FRl9SMTAKKyNkZWZpbmUgRUZfUjExIE1JUFM2NF9FRl9SMTEKKyNkZWZpbmUgRUZfUjEyIE1JUFM2NF9FRl9SMTIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVGX1IxMyBNSVBTNjRfRUZfUjEzCisjZGVmaW5lIEVGX1IxNCBNSVBTNjRfRUZfUjE0CisjZGVmaW5lIEVGX1IxNSBNSVBTNjRfRUZfUjE1CisjZGVmaW5lIEVGX1IxNiBNSVBTNjRfRUZfUjE2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9SMTcgTUlQUzY0X0VGX1IxNworI2RlZmluZSBFRl9SMTggTUlQUzY0X0VGX1IxOAorI2RlZmluZSBFRl9SMTkgTUlQUzY0X0VGX1IxOQorI2RlZmluZSBFRl9SMjAgTUlQUzY0X0VGX1IyMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRUZfUjIxIE1JUFM2NF9FRl9SMjEKKyNkZWZpbmUgRUZfUjIyIE1JUFM2NF9FRl9SMjIKKyNkZWZpbmUgRUZfUjIzIE1JUFM2NF9FRl9SMjMKKyNkZWZpbmUgRUZfUjI0IE1JUFM2NF9FRl9SMjQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVGX1IyNSBNSVBTNjRfRUZfUjI1CisjZGVmaW5lIEVGX1IyNiBNSVBTNjRfRUZfUjI2CisjZGVmaW5lIEVGX1IyNyBNSVBTNjRfRUZfUjI3CisjZGVmaW5lIEVGX1IyOCBNSVBTNjRfRUZfUjI4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFRl9SMjkgTUlQUzY0X0VGX1IyOQorI2RlZmluZSBFRl9SMzAgTUlQUzY0X0VGX1IzMAorI2RlZmluZSBFRl9SMzEgTUlQUzY0X0VGX1IzMQorI2RlZmluZSBFRl9MTyBNSVBTNjRfRUZfTE8KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVGX0hJIE1JUFM2NF9FRl9ISQorI2RlZmluZSBFRl9DUDBfRVBDIE1JUFM2NF9FRl9DUDBfRVBDCisjZGVmaW5lIEVGX0NQMF9CQURWQUREUiBNSVBTNjRfRUZfQ1AwX0JBRFZBRERSCisjZGVmaW5lIEVGX0NQMF9TVEFUVVMgTUlQUzY0X0VGX0NQMF9TVEFUVVMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVGX0NQMF9DQVVTRSBNSVBTNjRfRUZfQ1AwX0NBVVNFCisjZGVmaW5lIEVGX1NJWkUgTUlQUzY0X0VGX1NJWkUKKyNlbmRpZgorI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2VtYnVmLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zZW1idWYuaAppbmRleCBiNTI0ZjY4Li4wYThkNGQ5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zZW1idWYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zZW1idWYuaApAQCAtMTksMTMgKzE5LDEzIEBACiAjaWZuZGVmIF9BU01fU0VNQlVGX0gKICNkZWZpbmUgX0FTTV9TRU1CVUZfSAogc3RydWN0IHNlbWlkNjRfZHMgewotIHN0cnVjdCBpcGM2NF9wZXJtIHNlbV9wZXJtOworICBzdHJ1Y3QgaXBjNjRfcGVybSBzZW1fcGVybTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfdGltZV90IHNlbV9vdGltZTsKLSBfX2tlcm5lbF90aW1lX3Qgc2VtX2N0aW1lOwotIHVuc2lnbmVkIGxvbmcgc2VtX25zZW1zOwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQxOworICBfX2tlcm5lbF90aW1lX3Qgc2VtX290aW1lOworICBfX2tlcm5lbF90aW1lX3Qgc2VtX2N0aW1lOworICB1bnNpZ25lZCBsb25nIHNlbV9uc2VtczsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQyOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkMjsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NnaWRlZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NnaWRlZnMuaAppbmRleCBkNjNmMTVlLi5lOGI1ZjZmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zZ2lkZWZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2dpZGVmcy5oCkBAIC0xOSw3ICsxOSw3IEBACiAjaWZuZGVmIF9fQVNNX1NHSURFRlNfSAogI2RlZmluZSBfX0FTTV9TR0lERUZTX0gKICNpZm5kZWYgX19saW51eF9fCi0jZXJyb3IgVXNlIGEgTGludXggY29tcGlsZXIgb3IgZ2l2ZSB1cC4KKyNlcnJvciBVc2UgYSBMaW51eCBjb21waWxlciBvciBnaXZlIHVwIC4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKICNkZWZpbmUgX01JUFNfSVNBX01JUFMxIDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NobWJ1Zi5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2htYnVmLmgKaW5kZXggM2Y3ZDBiMS4uOGQ0MTY1MCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2htYnVmLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2htYnVmLmgKQEAgLTE5LDMyICsxOSwzMiBAQAogI2lmbmRlZiBfQVNNX1NITUJVRl9ICiAjZGVmaW5lIF9BU01fU0hNQlVGX0gKIHN0cnVjdCBzaG1pZDY0X2RzIHsKLSBzdHJ1Y3QgaXBjNjRfcGVybSBzaG1fcGVybTsKKyAgc3RydWN0IGlwYzY0X3Blcm0gc2htX3Blcm07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNpemVfdCBzaG1fc2Vnc3o7Ci0gX19rZXJuZWxfdGltZV90IHNobV9hdGltZTsKLSBfX2tlcm5lbF90aW1lX3Qgc2htX2R0aW1lOwotIF9fa2VybmVsX3RpbWVfdCBzaG1fY3RpbWU7CisgIHNpemVfdCBzaG1fc2Vnc3o7CisgIF9fa2VybmVsX3RpbWVfdCBzaG1fYXRpbWU7CisgIF9fa2VybmVsX3RpbWVfdCBzaG1fZHRpbWU7CisgIF9fa2VybmVsX3RpbWVfdCBzaG1fY3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3BpZF90IHNobV9jcGlkOwotIF9fa2VybmVsX3BpZF90IHNobV9scGlkOwotIHVuc2lnbmVkIGxvbmcgc2htX25hdHRjaDsKLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMTsKKyAgX19rZXJuZWxfcGlkX3Qgc2htX2NwaWQ7CisgIF9fa2VybmVsX3BpZF90IHNobV9scGlkOworICB1bnNpZ25lZCBsb25nIHNobV9uYXR0Y2g7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIF9fdW51c2VkMjsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDI7CiB9Owogc3RydWN0IHNobWluZm82NCB7Ci0gdW5zaWduZWQgbG9uZyBzaG1tYXg7CisgIHVuc2lnbmVkIGxvbmcgc2htbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHNobW1pbjsKLSB1bnNpZ25lZCBsb25nIHNobW1uaTsKLSB1bnNpZ25lZCBsb25nIHNobXNlZzsKLSB1bnNpZ25lZCBsb25nIHNobWFsbDsKKyAgdW5zaWduZWQgbG9uZyBzaG1taW47CisgIHVuc2lnbmVkIGxvbmcgc2htbW5pOworICB1bnNpZ25lZCBsb25nIHNobXNlZzsKKyAgdW5zaWduZWQgbG9uZyBzaG1hbGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQxOwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQyOwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQzOwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQ0OworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkMTsKKyAgdW5zaWduZWQgbG9uZyBfX3VudXNlZDI7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQzOworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zaWdjb250ZXh0LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zaWdjb250ZXh0LmgKaW5kZXggOGE4NzdkYi4uNTk4NzBiYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2lnY29udGV4dC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NpZ2NvbnRleHQuaApAQCAtMjMsMjggKzIzLDI4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmIF9NSVBTX1NJTSA9PSBfTUlQU19TSU1fQUJJMzIKIHN0cnVjdCBzaWdjb250ZXh0IHsKLSB1bnNpZ25lZCBpbnQgc2NfcmVnbWFzazsKLSB1bnNpZ25lZCBpbnQgc2Nfc3RhdHVzOworICB1bnNpZ25lZCBpbnQgc2NfcmVnbWFzazsKKyAgdW5zaWduZWQgaW50IHNjX3N0YXR1czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBsb25nIHNjX3BjOwotIHVuc2lnbmVkIGxvbmcgbG9uZyBzY19yZWdzWzMyXTsKLSB1bnNpZ25lZCBsb25nIGxvbmcgc2NfZnByZWdzWzMyXTsKLSB1bnNpZ25lZCBpbnQgc2NfYWN4OworICB1bnNpZ25lZCBsb25nIGxvbmcgc2NfcGM7CisgIHVuc2lnbmVkIGxvbmcgbG9uZyBzY19yZWdzWzMyXTsKKyAgdW5zaWduZWQgbG9uZyBsb25nIHNjX2ZwcmVnc1szMl07CisgIHVuc2lnbmVkIGludCBzY19hY3g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzY19mcGNfY3NyOwotIHVuc2lnbmVkIGludCBzY19mcGNfZWlyOwotIHVuc2lnbmVkIGludCBzY191c2VkX21hdGg7Ci0gdW5zaWduZWQgaW50IHNjX2RzcDsKKyAgdW5zaWduZWQgaW50IHNjX2ZwY19jc3I7CisgIHVuc2lnbmVkIGludCBzY19mcGNfZWlyOworICB1bnNpZ25lZCBpbnQgc2NfdXNlZF9tYXRoOworICB1bnNpZ25lZCBpbnQgc2NfZHNwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGxvbmcgc2NfbWRoaTsKLSB1bnNpZ25lZCBsb25nIGxvbmcgc2NfbWRsbzsKLSB1bnNpZ25lZCBsb25nIHNjX2hpMTsKLSB1bnNpZ25lZCBsb25nIHNjX2xvMTsKKyAgdW5zaWduZWQgbG9uZyBsb25nIHNjX21kaGk7CisgIHVuc2lnbmVkIGxvbmcgbG9uZyBzY19tZGxvOworICB1bnNpZ25lZCBsb25nIHNjX2hpMTsKKyAgdW5zaWduZWQgbG9uZyBzY19sbzE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc2NfaGkyOwotIHVuc2lnbmVkIGxvbmcgc2NfbG8yOwotIHVuc2lnbmVkIGxvbmcgc2NfaGkzOwotIHVuc2lnbmVkIGxvbmcgc2NfbG8zOworICB1bnNpZ25lZCBsb25nIHNjX2hpMjsKKyAgdW5zaWduZWQgbG9uZyBzY19sbzI7CisgIHVuc2lnbmVkIGxvbmcgc2NfaGkzOworICB1bnNpZ25lZCBsb25nIHNjX2xvMzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCkBAIC01MiwyNCArNTIsMjQgQEAKICNpbmNsdWRlIDxsaW51eC9wb3NpeF90eXBlcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzaWdjb250ZXh0IHsKLSBfX3U2NCBzY19yZWdzWzMyXTsKLSBfX3U2NCBzY19mcHJlZ3NbMzJdOwotIF9fdTY0IHNjX21kaGk7CisgIF9fdTY0IHNjX3JlZ3NbMzJdOworICBfX3U2NCBzY19mcHJlZ3NbMzJdOworICBfX3U2NCBzY19tZGhpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzY19oaTE7Ci0gX191NjQgc2NfaGkyOwotIF9fdTY0IHNjX2hpMzsKLSBfX3U2NCBzY19tZGxvOworICBfX3U2NCBzY19oaTE7CisgIF9fdTY0IHNjX2hpMjsKKyAgX191NjQgc2NfaGkzOworICBfX3U2NCBzY19tZGxvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzY19sbzE7Ci0gX191NjQgc2NfbG8yOwotIF9fdTY0IHNjX2xvMzsKLSBfX3U2NCBzY19wYzsKKyAgX191NjQgc2NfbG8xOworICBfX3U2NCBzY19sbzI7CisgIF9fdTY0IHNjX2xvMzsKKyAgX191NjQgc2NfcGM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNjX2ZwY19jc3I7Ci0gX191MzIgc2NfdXNlZF9tYXRoOwotIF9fdTMyIHNjX2RzcDsKLSBfX3UzMiBzY19yZXNlcnZlZDsKKyAgX191MzIgc2NfZnBjX2NzcjsKKyAgX191MzIgc2NfdXNlZF9tYXRoOworICBfX3UzMiBzY19kc3A7CisgIF9fdTMyIHNjX3Jlc2VydmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NpZ2luZm8uaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NpZ2luZm8uaAppbmRleCA1OTljODc1Li4yZjk1ZDE3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zaWdpbmZvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc2lnaW5mby5oCkBAIC0xOCw3ICsxOCw3IEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX1VBUElfQVNNX1NJR0lORk9fSAogI2RlZmluZSBfVUFQSV9BU01fU0lHSU5GT19ICi0jZGVmaW5lIF9fQVJDSF9TSUdFVl9QUkVBTUJMRV9TSVpFIChzaXplb2YobG9uZykgKyAyKnNpemVvZihpbnQpKQorI2RlZmluZSBfX0FSQ0hfU0lHRVZfUFJFQU1CTEVfU0laRSAoc2l6ZW9mKGxvbmcpICsgMiAqIHNpemVvZihpbnQpKQogI3VuZGVmIF9fQVJDSF9TSV9UUkFQTk8KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEhBVkVfQVJDSF9TSUdJTkZPX1QKQEAgLTI3LDcgKzI3LDcgQEAKICNpZiBfTUlQU19TWkxPTkcgPT0gMzIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fQVJDSF9TSV9QUkVBTUJMRV9TSVpFICgzICogc2l6ZW9mKGludCkpCi0jZWxpZiBfTUlQU19TWkxPTkcgPT0gNjQKKyNlbGlmIF9NSVBTX1NaTE9ORz09NjQKICNkZWZpbmUgX19BUkNIX1NJX1BSRUFNQkxFX1NJWkUgKDQgKiBzaXplb2YoaW50KSkKICNlbHNlCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMzcsNzggKzM3LDc4IEBACiAjaW5jbHVkZSA8YXNtLWdlbmVyaWMvc2lnaW5mby5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHNpZ2luZm8gewotIGludCBzaV9zaWdubzsKLSBpbnQgc2lfY29kZTsKLSBpbnQgc2lfZXJybm87CisgIGludCBzaV9zaWdubzsKKyAgaW50IHNpX2NvZGU7CisgIGludCBzaV9lcnJubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IF9fcGFkMFtTSV9NQVhfU0laRSAvIHNpemVvZihpbnQpIC0gU0lfUEFEX1NJWkUgLSAzXTsKLSB1bmlvbiB7Ci0gaW50IF9wYWRbU0lfUEFEX1NJWkVdOwotIHN0cnVjdCB7CisgIGludCBfX3BhZDBbU0lfTUFYX1NJWkUgLyBzaXplb2YoaW50KSAtIFNJX1BBRF9TSVpFIC0gM107CisgIHVuaW9uIHsKKyAgICBpbnQgX3BhZFtTSV9QQURfU0laRV07CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gcGlkX3QgX3BpZDsKLSBfX0FSQ0hfU0lfVUlEX1QgX3VpZDsKLSB9IF9raWxsOwotIHN0cnVjdCB7CisgICAgICBwaWRfdCBfcGlkOworICAgICAgX19BUkNIX1NJX1VJRF9UIF91aWQ7CisgICAgfSBfa2lsbDsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB0aW1lcl90IF90aWQ7Ci0gaW50IF9vdmVycnVuOwotIGNoYXIgX3BhZFtzaXplb2YoIF9fQVJDSF9TSV9VSURfVCkgLSBzaXplb2YoaW50KV07Ci0gc2lndmFsX3QgX3NpZ3ZhbDsKKyAgICAgIHRpbWVyX3QgX3RpZDsKKyAgICAgIGludCBfb3ZlcnJ1bjsKKyAgICAgIGNoYXIgX3BhZFtzaXplb2YoX19BUkNIX1NJX1VJRF9UKSAtIHNpemVvZihpbnQpXTsKKyAgICAgIHNpZ3ZhbF90IF9zaWd2YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBfc3lzX3ByaXZhdGU7Ci0gfSBfdGltZXI7Ci0gc3RydWN0IHsKLSBwaWRfdCBfcGlkOworICAgICAgaW50IF9zeXNfcHJpdmF0ZTsKKyAgICB9IF90aW1lcjsKKyAgICBzdHJ1Y3QgeworICAgICAgcGlkX3QgX3BpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19BUkNIX1NJX1VJRF9UIF91aWQ7Ci0gc2lndmFsX3QgX3NpZ3ZhbDsKLSB9IF9ydDsKLSBzdHJ1Y3QgeworICAgICAgX19BUkNIX1NJX1VJRF9UIF91aWQ7CisgICAgICBzaWd2YWxfdCBfc2lndmFsOworICAgIH0gX3J0OworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHBpZF90IF9waWQ7Ci0gX19BUkNIX1NJX1VJRF9UIF91aWQ7Ci0gaW50IF9zdGF0dXM7Ci0gY2xvY2tfdCBfdXRpbWU7CisgICAgICBwaWRfdCBfcGlkOworICAgICAgX19BUkNIX1NJX1VJRF9UIF91aWQ7CisgICAgICBpbnQgX3N0YXR1czsKKyAgICAgIGNsb2NrX3QgX3V0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjbG9ja190IF9zdGltZTsKLSB9IF9zaWdjaGxkOwotIHN0cnVjdCB7Ci0gcGlkX3QgX3BpZDsKKyAgICAgIGNsb2NrX3QgX3N0aW1lOworICAgIH0gX3NpZ2NobGQ7CisgICAgc3RydWN0IHsKKyAgICAgIHBpZF90IF9waWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNsb2NrX3QgX3V0aW1lOwotIGludCBfc3RhdHVzOwotIGNsb2NrX3QgX3N0aW1lOwotIH0gX2lyaXhfc2lnY2hsZDsKKyAgICAgIGNsb2NrX3QgX3V0aW1lOworICAgICAgaW50IF9zdGF0dXM7CisgICAgICBjbG9ja190IF9zdGltZTsKKyAgICB9IF9pcml4X3NpZ2NobGQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gdm9pZCBfX3VzZXIgKl9hZGRyOworICAgIHN0cnVjdCB7CisgICAgICB2b2lkIF9fdXNlciAqIF9hZGRyOwogI2lmZGVmIF9fQVJDSF9TSV9UUkFQTk8KLSBpbnQgX3RyYXBubzsKKyAgICAgIGludCBfdHJhcG5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgotIHNob3J0IF9hZGRyX2xzYjsKLSB9IF9zaWdmYXVsdDsKLSBzdHJ1Y3QgeworICAgICAgc2hvcnQgX2FkZHJfbHNiOworICAgIH0gX3NpZ2ZhdWx0OworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQVJDSF9TSV9CQU5EX1QgX2JhbmQ7Ci0gaW50IF9mZDsKLSB9IF9zaWdwb2xsOwotIHN0cnVjdCB7CisgICAgICBfX0FSQ0hfU0lfQkFORF9UIF9iYW5kOworICAgICAgaW50IF9mZDsKKyAgICB9IF9zaWdwb2xsOworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgX191c2VyICpfY2FsbF9hZGRyOwotIGludCBfc3lzY2FsbDsKLSB1bnNpZ25lZCBpbnQgX2FyY2g7Ci0gfSBfc2lnc3lzOworICAgICAgdm9pZCBfX3VzZXIgKiBfY2FsbF9hZGRyOworICAgICAgaW50IF9zeXNjYWxsOworICAgICAgdW5zaWduZWQgaW50IF9hcmNoOworICAgIH0gX3NpZ3N5czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBfc2lmaWVsZHM7CisgIH0gX3NpZmllbGRzOwogfSBzaWdpbmZvX3Q7CiAjdW5kZWYgU0lfQVNZTkNJTwogI3VuZGVmIFNJX1RJTUVSCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI3VuZGVmIFNJX01FU0dRCi0jZGVmaW5lIFNJX0FTWU5DSU8gLTIKLSNkZWZpbmUgU0lfVElNRVIgX19TSV9DT0RFKF9fU0lfVElNRVIsIC0zKQotI2RlZmluZSBTSV9NRVNHUSBfX1NJX0NPREUoX19TSV9NRVNHUSwgLTQpCisjZGVmaW5lIFNJX0FTWU5DSU8gLSAyCisjZGVmaW5lIFNJX1RJTUVSIF9fU0lfQ09ERShfX1NJX1RJTUVSLCAtIDMpCisjZGVmaW5lIFNJX01FU0dRIF9fU0lfQ09ERShfX1NJX01FU0dRLCAtIDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zaWduYWwuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NpZ25hbC5oCmluZGV4IGI3NzRhNjYuLmJhODhiNzAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NpZ25hbC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3NpZ25hbC5oCkBAIC0yNCw3ICsyNCw3IEBACiAjZGVmaW5lIF9OU0lHX0JQVyAoc2l6ZW9mKHVuc2lnbmVkIGxvbmcpICogOCkKICNkZWZpbmUgX05TSUdfV09SRFMgKF9LRVJORUxfX05TSUcgLyBfTlNJR19CUFcpCiB0eXBlZGVmIHN0cnVjdCB7Ci0gdW5zaWduZWQgbG9uZyBzaWdbX05TSUdfV09SRFNdOworICB1bnNpZ25lZCBsb25nIHNpZ1tfTlNJR19XT1JEU107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBzaWdzZXRfdDsKIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBvbGRfc2lnc2V0X3Q7CkBAIC05MywxNiArOTMsMTYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaW5jbHVkZSA8YXNtLWdlbmVyaWMvc2lnbmFsLWRlZnMuaD4KIHN0cnVjdCBzaWdhY3Rpb24gewotIHVuc2lnbmVkIGludCBzYV9mbGFnczsKLSBfX3NpZ2hhbmRsZXJfdCBzYV9oYW5kbGVyOworICB1bnNpZ25lZCBpbnQgc2FfZmxhZ3M7CisgIF9fc2lnaGFuZGxlcl90IHNhX2hhbmRsZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNpZ3NldF90IHNhX21hc2s7CisgIHNpZ3NldF90IHNhX21hc2s7CiB9OwogdHlwZWRlZiBzdHJ1Y3Qgc2lnYWx0c3RhY2sgewotIHZvaWQgX191c2VyICpzc19zcDsKKyAgdm9pZCBfX3VzZXIgKiBzc19zcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2l6ZV90IHNzX3NpemU7Ci0gaW50IHNzX2ZsYWdzOworICBzaXplX3Qgc3Nfc2l6ZTsKKyAgaW50IHNzX2ZsYWdzOwogfSBzdGFja190OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc3RhdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc3RhdC5oCmluZGV4IGE3MWVlY2IuLmNmMDVlNWMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3N0YXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zdGF0LmgKQEAgLTIzLDg2ICsyMyw4NiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZiBfTUlQU19TSU0gPT0gX01JUFNfU0lNX0FCSTMyIHx8IF9NSVBTX1NJTSA9PSBfTUlQU19TSU1fTkFCSTMyCiBzdHJ1Y3Qgc3RhdCB7Ci0gdW5zaWduZWQgc3RfZGV2OwotIGxvbmcgc3RfcGFkMVszXTsKKyAgdW5zaWduZWQgc3RfZGV2OworICBsb25nIHN0X3BhZDFbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGlub190IHN0X2lubzsKLSBtb2RlX3Qgc3RfbW9kZTsKLSBfX3UzMiBzdF9ubGluazsKLSB1aWRfdCBzdF91aWQ7CisgIGlub190IHN0X2lubzsKKyAgbW9kZV90IHN0X21vZGU7CisgIF9fdTMyIHN0X25saW5rOworICB1aWRfdCBzdF91aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGdpZF90IHN0X2dpZDsKLSB1bnNpZ25lZCBzdF9yZGV2OwotIGxvbmcgc3RfcGFkMlsyXTsKLSBfX2tlcm5lbF9vZmZfdCBzdF9zaXplOworICBnaWRfdCBzdF9naWQ7CisgIHVuc2lnbmVkIHN0X3JkZXY7CisgIGxvbmcgc3RfcGFkMlsyXTsKKyAgX19rZXJuZWxfb2ZmX3Qgc3Rfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBzdF9wYWQzOwotIHRpbWVfdCBzdF9hdGltZTsKLSBsb25nIHN0X2F0aW1lX25zZWM7Ci0gdGltZV90IHN0X210aW1lOworICBsb25nIHN0X3BhZDM7CisgIHRpbWVfdCBzdF9hdGltZTsKKyAgbG9uZyBzdF9hdGltZV9uc2VjOworICB0aW1lX3Qgc3RfbXRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgc3RfbXRpbWVfbnNlYzsKLSB0aW1lX3Qgc3RfY3RpbWU7Ci0gbG9uZyBzdF9jdGltZV9uc2VjOwotIGxvbmcgc3RfYmxrc2l6ZTsKKyAgbG9uZyBzdF9tdGltZV9uc2VjOworICB0aW1lX3Qgc3RfY3RpbWU7CisgIGxvbmcgc3RfY3RpbWVfbnNlYzsKKyAgbG9uZyBzdF9ibGtzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIHN0X2Jsb2NrczsKLSBsb25nIHN0X3BhZDRbMTRdOworICBsb25nIHN0X2Jsb2NrczsKKyAgbG9uZyBzdF9wYWQ0WzE0XTsKIH07CiBzdHJ1Y3Qgc3RhdDY0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzdF9kZXY7Ci0gdW5zaWduZWQgbG9uZyBzdF9wYWQwWzNdOwotIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9pbm87Ci0gbW9kZV90IHN0X21vZGU7CisgIHVuc2lnbmVkIGxvbmcgc3RfZGV2OworICB1bnNpZ25lZCBsb25nIHN0X3BhZDBbM107CisgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9pbm87CisgIG1vZGVfdCBzdF9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzdF9ubGluazsKLSB1aWRfdCBzdF91aWQ7Ci0gZ2lkX3Qgc3RfZ2lkOwotIHVuc2lnbmVkIGxvbmcgc3RfcmRldjsKKyAgX191MzIgc3Rfbmxpbms7CisgIHVpZF90IHN0X3VpZDsKKyAgZ2lkX3Qgc3RfZ2lkOworICB1bnNpZ25lZCBsb25nIHN0X3JkZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc3RfcGFkMVszXTsKLSBsb25nIGxvbmcgc3Rfc2l6ZTsKLSB0aW1lX3Qgc3RfYXRpbWU7Ci0gdW5zaWduZWQgbG9uZyBzdF9hdGltZV9uc2VjOworICB1bnNpZ25lZCBsb25nIHN0X3BhZDFbM107CisgIGxvbmcgbG9uZyBzdF9zaXplOworICB0aW1lX3Qgc3RfYXRpbWU7CisgIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWVfbnNlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdGltZV90IHN0X210aW1lOwotIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWVfbnNlYzsKLSB0aW1lX3Qgc3RfY3RpbWU7Ci0gdW5zaWduZWQgbG9uZyBzdF9jdGltZV9uc2VjOworICB0aW1lX3Qgc3RfbXRpbWU7CisgIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWVfbnNlYzsKKyAgdGltZV90IHN0X2N0aW1lOworICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lX25zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc3RfYmxrc2l6ZTsKLSB1bnNpZ25lZCBsb25nIHN0X3BhZDI7Ci0gbG9uZyBsb25nIHN0X2Jsb2NrczsKKyAgdW5zaWduZWQgbG9uZyBzdF9ibGtzaXplOworICB1bnNpZ25lZCBsb25nIHN0X3BhZDI7CisgIGxvbmcgbG9uZyBzdF9ibG9ja3M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgogI2lmIF9NSVBTX1NJTSA9PSBfTUlQU19TSU1fQUJJNjQKIHN0cnVjdCBzdGF0IHsKLSB1bnNpZ25lZCBpbnQgc3RfZGV2OworICB1bnNpZ25lZCBpbnQgc3RfZGV2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc3RfcGFkMFszXTsKLSB1bnNpZ25lZCBsb25nIHN0X2lubzsKLSBtb2RlX3Qgc3RfbW9kZTsKLSBfX3UzMiBzdF9ubGluazsKKyAgdW5zaWduZWQgaW50IHN0X3BhZDBbM107CisgIHVuc2lnbmVkIGxvbmcgc3RfaW5vOworICBtb2RlX3Qgc3RfbW9kZTsKKyAgX191MzIgc3Rfbmxpbms7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpZF90IHN0X3VpZDsKLSBnaWRfdCBzdF9naWQ7Ci0gdW5zaWduZWQgaW50IHN0X3JkZXY7Ci0gdW5zaWduZWQgaW50IHN0X3BhZDFbM107CisgIHVpZF90IHN0X3VpZDsKKyAgZ2lkX3Qgc3RfZ2lkOworICB1bnNpZ25lZCBpbnQgc3RfcmRldjsKKyAgdW5zaWduZWQgaW50IHN0X3BhZDFbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX29mZl90IHN0X3NpemU7Ci0gdW5zaWduZWQgaW50IHN0X2F0aW1lOwotIHVuc2lnbmVkIGludCBzdF9hdGltZV9uc2VjOwotIHVuc2lnbmVkIGludCBzdF9tdGltZTsKKyAgX19rZXJuZWxfb2ZmX3Qgc3Rfc2l6ZTsKKyAgdW5zaWduZWQgaW50IHN0X2F0aW1lOworICB1bnNpZ25lZCBpbnQgc3RfYXRpbWVfbnNlYzsKKyAgdW5zaWduZWQgaW50IHN0X210aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc3RfbXRpbWVfbnNlYzsKLSB1bnNpZ25lZCBpbnQgc3RfY3RpbWU7Ci0gdW5zaWduZWQgaW50IHN0X2N0aW1lX25zZWM7Ci0gdW5zaWduZWQgaW50IHN0X2Jsa3NpemU7CisgIHVuc2lnbmVkIGludCBzdF9tdGltZV9uc2VjOworICB1bnNpZ25lZCBpbnQgc3RfY3RpbWU7CisgIHVuc2lnbmVkIGludCBzdF9jdGltZV9uc2VjOworICB1bnNpZ25lZCBpbnQgc3RfYmxrc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN0X3BhZDI7Ci0gdW5zaWduZWQgbG9uZyBzdF9ibG9ja3M7CisgIHVuc2lnbmVkIGludCBzdF9wYWQyOworICB1bnNpZ25lZCBsb25nIHN0X2Jsb2NrczsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zdGF0ZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3N0YXRmcy5oCmluZGV4IDM5MGI3NTEuLjM2Y2MzZDUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3N0YXRmcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3N0YXRmcy5oCkBAIC0yMiw4MSArMjIsODEgQEAKICNpbmNsdWRlIDxhc20vc2dpZGVmcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzdGF0ZnMgewotIGxvbmcgZl90eXBlOworICBsb25nIGZfdHlwZTsKICNkZWZpbmUgZl9mc3R5cCBmX3R5cGUKLSBsb25nIGZfYnNpemU7CisgIGxvbmcgZl9ic2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBmX2Zyc2l6ZTsKLSBsb25nIGZfYmxvY2tzOwotIGxvbmcgZl9iZnJlZTsKLSBsb25nIGZfZmlsZXM7CisgIGxvbmcgZl9mcnNpemU7CisgIGxvbmcgZl9ibG9ja3M7CisgIGxvbmcgZl9iZnJlZTsKKyAgbG9uZyBmX2ZpbGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIGZfZmZyZWU7Ci0gbG9uZyBmX2JhdmFpbDsKLSBfX2tlcm5lbF9mc2lkX3QgZl9mc2lkOwotIGxvbmcgZl9uYW1lbGVuOworICBsb25nIGZfZmZyZWU7CisgIGxvbmcgZl9iYXZhaWw7CisgIF9fa2VybmVsX2ZzaWRfdCBmX2ZzaWQ7CisgIGxvbmcgZl9uYW1lbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIGZfZmxhZ3M7Ci0gbG9uZyBmX3NwYXJlWzVdOworICBsb25nIGZfZmxhZ3M7CisgIGxvbmcgZl9zcGFyZVs1XTsKIH07CiAjaWYgX01JUFNfU0lNID09IF9NSVBTX1NJTV9BQkkzMiB8fCBfTUlQU19TSU0gPT0gX01JUFNfU0lNX05BQkkzMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzdGF0ZnM2NCB7Ci0gX191MzIgZl90eXBlOwotIF9fdTMyIGZfYnNpemU7Ci0gX191MzIgZl9mcnNpemU7CisgIF9fdTMyIGZfdHlwZTsKKyAgX191MzIgZl9ic2l6ZTsKKyAgX191MzIgZl9mcnNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIF9fcGFkOwotIF9fdTY0IGZfYmxvY2tzOwotIF9fdTY0IGZfYmZyZWU7Ci0gX191NjQgZl9maWxlczsKKyAgX191MzIgX19wYWQ7CisgIF9fdTY0IGZfYmxvY2tzOworICBfX3U2NCBmX2JmcmVlOworICBfX3U2NCBmX2ZpbGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBmX2ZmcmVlOwotIF9fdTY0IGZfYmF2YWlsOwotIF9fa2VybmVsX2ZzaWRfdCBmX2ZzaWQ7Ci0gX191MzIgZl9uYW1lbGVuOworICBfX3U2NCBmX2ZmcmVlOworICBfX3U2NCBmX2JhdmFpbDsKKyAgX19rZXJuZWxfZnNpZF90IGZfZnNpZDsKKyAgX191MzIgZl9uYW1lbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmX2ZsYWdzOwotIF9fdTMyIGZfc3BhcmVbNV07CisgIF9fdTMyIGZfZmxhZ3M7CisgIF9fdTMyIGZfc3BhcmVbNV07CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmIF9NSVBTX1NJTSA9PSBfTUlQU19TSU1fQUJJNjQKIHN0cnVjdCBzdGF0ZnM2NCB7Ci0gbG9uZyBmX3R5cGU7Ci0gbG9uZyBmX2JzaXplOworICBsb25nIGZfdHlwZTsKKyAgbG9uZyBmX2JzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIGZfZnJzaXplOwotIGxvbmcgZl9ibG9ja3M7Ci0gbG9uZyBmX2JmcmVlOwotIGxvbmcgZl9maWxlczsKKyAgbG9uZyBmX2Zyc2l6ZTsKKyAgbG9uZyBmX2Jsb2NrczsKKyAgbG9uZyBmX2JmcmVlOworICBsb25nIGZfZmlsZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgZl9mZnJlZTsKLSBsb25nIGZfYmF2YWlsOwotIF9fa2VybmVsX2ZzaWRfdCBmX2ZzaWQ7Ci0gbG9uZyBmX25hbWVsZW47CisgIGxvbmcgZl9mZnJlZTsKKyAgbG9uZyBmX2JhdmFpbDsKKyAgX19rZXJuZWxfZnNpZF90IGZfZnNpZDsKKyAgbG9uZyBmX25hbWVsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgZl9mbGFnczsKLSBsb25nIGZfc3BhcmVbNV07CisgIGxvbmcgZl9mbGFnczsKKyAgbG9uZyBmX3NwYXJlWzVdOwogfTsKIHN0cnVjdCBjb21wYXRfc3RhdGZzNjQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmX3R5cGU7Ci0gX191MzIgZl9ic2l6ZTsKLSBfX3UzMiBmX2Zyc2l6ZTsKLSBfX3UzMiBfX3BhZDsKKyAgX191MzIgZl90eXBlOworICBfX3UzMiBmX2JzaXplOworICBfX3UzMiBmX2Zyc2l6ZTsKKyAgX191MzIgX19wYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGZfYmxvY2tzOwotIF9fdTY0IGZfYmZyZWU7Ci0gX191NjQgZl9maWxlczsKLSBfX3U2NCBmX2ZmcmVlOworICBfX3U2NCBmX2Jsb2NrczsKKyAgX191NjQgZl9iZnJlZTsKKyAgX191NjQgZl9maWxlczsKKyAgX191NjQgZl9mZnJlZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZl9iYXZhaWw7Ci0gX19rZXJuZWxfZnNpZF90IGZfZnNpZDsKLSBfX3UzMiBmX25hbWVsZW47Ci0gX191MzIgZl9mbGFnczsKKyAgX191NjQgZl9iYXZhaWw7CisgIF9fa2VybmVsX2ZzaWRfdCBmX2ZzaWQ7CisgIF9fdTMyIGZfbmFtZWxlbjsKKyAgX191MzIgZl9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZl9zcGFyZVs1XTsKKyAgX191MzIgZl9zcGFyZVs1XTsKIH07CiAjZW5kaWYKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc3dhYi5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vc3dhYi5oCmluZGV4IDQxNjYwZDAuLjA2MjlkMzYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3N3YWIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS9zd2FiLmgKQEAgLTIyLDcgKzIyLDcgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19TV0FCXzY0X1RIUlVfMzJfXwotI2lmIGRlZmluZWQoX19taXBzX2lzYV9yZXYpICYmIF9fbWlwc19pc2FfcmV2ID49IDIKKyNpZiBkZWZpbmVkKF9fbWlwc19pc2FfcmV2KSAmJiBfX21pcHNfaXNhX3JldiA+PSAyIHx8IGRlZmluZWQoX01JUFNfQVJDSF9MT09OR1NPTjNBKQogI2RlZmluZSBfX2FyY2hfc3dhYjE2IF9fYXJjaF9zd2FiMTYKICNkZWZpbmUgX19hcmNoX3N3YWIzMiBfX2FyY2hfc3dhYjMyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vdGVybWJpdHMuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3Rlcm1iaXRzLmgKaW5kZXggNTZjYWIyMS4uZjhmODYxMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vdGVybWJpdHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS90ZXJtYml0cy5oCkBAIC0yNiwzOCArMjYsMzggQEAKICNkZWZpbmUgTkNDUyAyMwogc3RydWN0IHRlcm1pb3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB0Y2ZsYWdfdCBjX2lmbGFnOwotIHRjZmxhZ190IGNfb2ZsYWc7Ci0gdGNmbGFnX3QgY19jZmxhZzsKLSB0Y2ZsYWdfdCBjX2xmbGFnOworICB0Y2ZsYWdfdCBjX2lmbGFnOworICB0Y2ZsYWdfdCBjX29mbGFnOworICB0Y2ZsYWdfdCBjX2NmbGFnOworICB0Y2ZsYWdfdCBjX2xmbGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjY190IGNfbGluZTsKLSBjY190IGNfY2NbTkNDU107CisgIGNjX3QgY19saW5lOworICBjY190IGNfY2NbTkNDU107CiB9Owogc3RydWN0IHRlcm1pb3MyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdGNmbGFnX3QgY19pZmxhZzsKLSB0Y2ZsYWdfdCBjX29mbGFnOwotIHRjZmxhZ190IGNfY2ZsYWc7Ci0gdGNmbGFnX3QgY19sZmxhZzsKKyAgdGNmbGFnX3QgY19pZmxhZzsKKyAgdGNmbGFnX3QgY19vZmxhZzsKKyAgdGNmbGFnX3QgY19jZmxhZzsKKyAgdGNmbGFnX3QgY19sZmxhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2NfdCBjX2xpbmU7Ci0gY2NfdCBjX2NjW05DQ1NdOwotIHNwZWVkX3QgY19pc3BlZWQ7Ci0gc3BlZWRfdCBjX29zcGVlZDsKKyAgY2NfdCBjX2xpbmU7CisgIGNjX3QgY19jY1tOQ0NTXTsKKyAgc3BlZWRfdCBjX2lzcGVlZDsKKyAgc3BlZWRfdCBjX29zcGVlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGt0ZXJtaW9zIHsKLSB0Y2ZsYWdfdCBjX2lmbGFnOwotIHRjZmxhZ190IGNfb2ZsYWc7CisgIHRjZmxhZ190IGNfaWZsYWc7CisgIHRjZmxhZ190IGNfb2ZsYWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHRjZmxhZ190IGNfY2ZsYWc7Ci0gdGNmbGFnX3QgY19sZmxhZzsKLSBjY190IGNfbGluZTsKLSBjY190IGNfY2NbTkNDU107CisgIHRjZmxhZ190IGNfY2ZsYWc7CisgIHRjZmxhZ190IGNfbGZsYWc7CisgIGNjX3QgY19saW5lOworICBjY190IGNfY2NbTkNDU107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNwZWVkX3QgY19pc3BlZWQ7Ci0gc3BlZWRfdCBjX29zcGVlZDsKKyAgc3BlZWRfdCBjX2lzcGVlZDsKKyAgc3BlZWRfdCBjX29zcGVlZDsKIH07CiAjZGVmaW5lIFZJTlRSIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS90ZXJtaW9zLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS90ZXJtaW9zLmgKaW5kZXggMTZkODIyYS4uNTE3NDI1NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vdGVybWlvcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3Rlcm1pb3MuaApAQCAtMjMsNTEgKzIzLDUxIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGFzbS9pb2N0bHMuaD4KIHN0cnVjdCBzZ3R0eWIgewotIGNoYXIgc2dfaXNwZWVkOwotIGNoYXIgc2dfb3NwZWVkOworICBjaGFyIHNnX2lzcGVlZDsKKyAgY2hhciBzZ19vc3BlZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgc2dfZXJhc2U7Ci0gY2hhciBzZ19raWxsOwotIGludCBzZ19mbGFnczsKKyAgY2hhciBzZ19lcmFzZTsKKyAgY2hhciBzZ19raWxsOworICBpbnQgc2dfZmxhZ3M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y2hhcnMgewotIGNoYXIgdF9pbnRyYzsKLSBjaGFyIHRfcXVpdGM7Ci0gY2hhciB0X3N0YXJ0YzsKKyAgY2hhciB0X2ludHJjOworICBjaGFyIHRfcXVpdGM7CisgIGNoYXIgdF9zdGFydGM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdF9zdG9wYzsKLSBjaGFyIHRfZW9mYzsKLSBjaGFyIHRfYnJrYzsKKyAgY2hhciB0X3N0b3BjOworICBjaGFyIHRfZW9mYzsKKyAgY2hhciB0X2Jya2M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBsdGNoYXJzIHsKLSBjaGFyIHRfc3VzcGM7Ci0gY2hhciB0X2RzdXNwYzsKLSBjaGFyIHRfcnBybnRjOworICBjaGFyIHRfc3VzcGM7CisgIGNoYXIgdF9kc3VzcGM7CisgIGNoYXIgdF9ycHJudGM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdF9mbHVzaGM7Ci0gY2hhciB0X3dlcmFzYzsKLSBjaGFyIHRfbG5leHRjOworICBjaGFyIHRfZmx1c2hjOworICBjaGFyIHRfd2VyYXNjOworICBjaGFyIHRfbG5leHRjOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgd2luc2l6ZSB7Ci0gdW5zaWduZWQgc2hvcnQgd3Nfcm93OwotIHVuc2lnbmVkIHNob3J0IHdzX2NvbDsKLSB1bnNpZ25lZCBzaG9ydCB3c194cGl4ZWw7CisgIHVuc2lnbmVkIHNob3J0IHdzX3JvdzsKKyAgdW5zaWduZWQgc2hvcnQgd3NfY29sOworICB1bnNpZ25lZCBzaG9ydCB3c194cGl4ZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHdzX3lwaXhlbDsKKyAgdW5zaWduZWQgc2hvcnQgd3NfeXBpeGVsOwogfTsKICNkZWZpbmUgTkNDIDgKIHN0cnVjdCB0ZXJtaW8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBjX2lmbGFnOwotIHVuc2lnbmVkIHNob3J0IGNfb2ZsYWc7Ci0gdW5zaWduZWQgc2hvcnQgY19jZmxhZzsKLSB1bnNpZ25lZCBzaG9ydCBjX2xmbGFnOworICB1bnNpZ25lZCBzaG9ydCBjX2lmbGFnOworICB1bnNpZ25lZCBzaG9ydCBjX29mbGFnOworICB1bnNpZ25lZCBzaG9ydCBjX2NmbGFnOworICB1bnNpZ25lZCBzaG9ydCBjX2xmbGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGNfbGluZTsKLSB1bnNpZ25lZCBjaGFyIGNfY2NbTkNDU107CisgIGNoYXIgY19saW5lOworICB1bnNpZ25lZCBjaGFyIGNfY2NbTkNDU107CiB9OwogI2RlZmluZSBUSU9DTV9MRSAweDAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3R5cGVzLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS1taXBzL2FzbS90eXBlcy5oCmluZGV4IDQ1ZmVhNmMuLjllZjdiN2MgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3R5cGVzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vdHlwZXMuaApAQCAtMTgsMTEgKzE4LDYgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfVUFQSV9BU01fVFlQRVNfSAogI2RlZmluZSBfVUFQSV9BU01fVFlQRVNfSAotI2lmIF9NSVBTX1NaTE9ORyA9PSA2NAotI2luY2x1ZGUgPGFzbS1nZW5lcmljL2ludC1sNjQuaD4KLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZWxzZQogI2luY2x1ZGUgPGFzbS1nZW5lcmljL2ludC1sbDY0Lmg+CiAjZW5kaWYKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3VuaXN0ZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vdW5pc3RkLmgKaW5kZXggMzdjM2RhMS4uMDRhNDViZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vdW5pc3RkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20tbWlwcy9hc20vdW5pc3RkLmgKQEAgLTQ1OSw4MDUgKzQ1OSw4MjMgQEAKICNkZWZpbmUgX19OUl9maW5pdF9tb2R1bGUgKF9fTlJfTGludXggKyAzNDgpCiAjZGVmaW5lIF9fTlJfc2NoZWRfc2V0YXR0ciAoX19OUl9MaW51eCArIDM0OSkKICNkZWZpbmUgX19OUl9zY2hlZF9nZXRhdHRyIChfX05SX0xpbnV4ICsgMzUwKQotI2RlZmluZSBfX05SX0xpbnV4X3N5c2NhbGxzIDM1MAorI2RlZmluZSBfX05SX3JlbmFtZWF0MiAoX19OUl9MaW51eCArIDM1MSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2VjY29tcCAoX19OUl9MaW51eCArIDM1MikKKyNkZWZpbmUgX19OUl9nZXRyYW5kb20gKF9fTlJfTGludXggKyAzNTMpCisjZGVmaW5lIF9fTlJfbWVtZmRfY3JlYXRlIChfX05SX0xpbnV4ICsgMzU0KQorI2RlZmluZSBfX05SX2JwZiAoX19OUl9MaW51eCArIDM1NSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfTGludXhfc3lzY2FsbHMgMzU1CiAjZW5kaWYKICNkZWZpbmUgX19OUl9PMzJfTGludXggNDAwMAotI2RlZmluZSBfX05SX08zMl9MaW51eF9zeXNjYWxscyAzNTAKLSNpZiBfTUlQU19TSU0gPT0gX01JUFNfU0lNX0FCSTY0CisjZGVmaW5lIF9fTlJfTzMyX0xpbnV4X3N5c2NhbGxzIDM1NQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNpZiBfTUlQU19TSU0gPT0gX01JUFNfU0lNX0FCSTY0CiAjZGVmaW5lIF9fTlJfTGludXggNTAwMAogI2RlZmluZSBfX05SX3JlYWQgKF9fTlJfTGludXggKyAwKQogI2RlZmluZSBfX05SX3dyaXRlIChfX05SX0xpbnV4ICsgMSkKLSNkZWZpbmUgX19OUl9vcGVuIChfX05SX0xpbnV4ICsgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfb3BlbiAoX19OUl9MaW51eCArIDIpCiAjZGVmaW5lIF9fTlJfY2xvc2UgKF9fTlJfTGludXggKyAzKQogI2RlZmluZSBfX05SX3N0YXQgKF9fTlJfTGludXggKyA0KQogI2RlZmluZSBfX05SX2ZzdGF0IChfX05SX0xpbnV4ICsgNSkKLSNkZWZpbmUgX19OUl9sc3RhdCAoX19OUl9MaW51eCArIDYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2xzdGF0IChfX05SX0xpbnV4ICsgNikKICNkZWZpbmUgX19OUl9wb2xsIChfX05SX0xpbnV4ICsgNykKICNkZWZpbmUgX19OUl9sc2VlayAoX19OUl9MaW51eCArIDgpCiAjZGVmaW5lIF9fTlJfbW1hcCAoX19OUl9MaW51eCArIDkpCi0jZGVmaW5lIF9fTlJfbXByb3RlY3QgKF9fTlJfTGludXggKyAxMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbXByb3RlY3QgKF9fTlJfTGludXggKyAxMCkKICNkZWZpbmUgX19OUl9tdW5tYXAgKF9fTlJfTGludXggKyAxMSkKICNkZWZpbmUgX19OUl9icmsgKF9fTlJfTGludXggKyAxMikKICNkZWZpbmUgX19OUl9ydF9zaWdhY3Rpb24gKF9fTlJfTGludXggKyAxMykKLSNkZWZpbmUgX19OUl9ydF9zaWdwcm9jbWFzayAoX19OUl9MaW51eCArIDE0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9ydF9zaWdwcm9jbWFzayAoX19OUl9MaW51eCArIDE0KQogI2RlZmluZSBfX05SX2lvY3RsIChfX05SX0xpbnV4ICsgMTUpCiAjZGVmaW5lIF9fTlJfcHJlYWQ2NCAoX19OUl9MaW51eCArIDE2KQogI2RlZmluZSBfX05SX3B3cml0ZTY0IChfX05SX0xpbnV4ICsgMTcpCi0jZGVmaW5lIF9fTlJfcmVhZHYgKF9fTlJfTGludXggKyAxOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfcmVhZHYgKF9fTlJfTGludXggKyAxOCkKICNkZWZpbmUgX19OUl93cml0ZXYgKF9fTlJfTGludXggKyAxOSkKICNkZWZpbmUgX19OUl9hY2Nlc3MgKF9fTlJfTGludXggKyAyMCkKICNkZWZpbmUgX19OUl9waXBlIChfX05SX0xpbnV4ICsgMjEpCi0jZGVmaW5lIF9fTlJfX25ld3NlbGVjdCAoX19OUl9MaW51eCArIDIyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9fbmV3c2VsZWN0IChfX05SX0xpbnV4ICsgMjIpCiAjZGVmaW5lIF9fTlJfc2NoZWRfeWllbGQgKF9fTlJfTGludXggKyAyMykKICNkZWZpbmUgX19OUl9tcmVtYXAgKF9fTlJfTGludXggKyAyNCkKICNkZWZpbmUgX19OUl9tc3luYyAoX19OUl9MaW51eCArIDI1KQotI2RlZmluZSBfX05SX21pbmNvcmUgKF9fTlJfTGludXggKyAyNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbWluY29yZSAoX19OUl9MaW51eCArIDI2KQogI2RlZmluZSBfX05SX21hZHZpc2UgKF9fTlJfTGludXggKyAyNykKICNkZWZpbmUgX19OUl9zaG1nZXQgKF9fTlJfTGludXggKyAyOCkKICNkZWZpbmUgX19OUl9zaG1hdCAoX19OUl9MaW51eCArIDI5KQotI2RlZmluZSBfX05SX3NobWN0bCAoX19OUl9MaW51eCArIDMwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zaG1jdGwgKF9fTlJfTGludXggKyAzMCkKICNkZWZpbmUgX19OUl9kdXAgKF9fTlJfTGludXggKyAzMSkKICNkZWZpbmUgX19OUl9kdXAyIChfX05SX0xpbnV4ICsgMzIpCiAjZGVmaW5lIF9fTlJfcGF1c2UgKF9fTlJfTGludXggKyAzMykKLSNkZWZpbmUgX19OUl9uYW5vc2xlZXAgKF9fTlJfTGludXggKyAzNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbmFub3NsZWVwIChfX05SX0xpbnV4ICsgMzQpCiAjZGVmaW5lIF9fTlJfZ2V0aXRpbWVyIChfX05SX0xpbnV4ICsgMzUpCiAjZGVmaW5lIF9fTlJfc2V0aXRpbWVyIChfX05SX0xpbnV4ICsgMzYpCiAjZGVmaW5lIF9fTlJfYWxhcm0gKF9fTlJfTGludXggKyAzNykKLSNkZWZpbmUgX19OUl9nZXRwaWQgKF9fTlJfTGludXggKyAzOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZ2V0cGlkIChfX05SX0xpbnV4ICsgMzgpCiAjZGVmaW5lIF9fTlJfc2VuZGZpbGUgKF9fTlJfTGludXggKyAzOSkKICNkZWZpbmUgX19OUl9zb2NrZXQgKF9fTlJfTGludXggKyA0MCkKICNkZWZpbmUgX19OUl9jb25uZWN0IChfX05SX0xpbnV4ICsgNDEpCi0jZGVmaW5lIF9fTlJfYWNjZXB0IChfX05SX0xpbnV4ICsgNDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2FjY2VwdCAoX19OUl9MaW51eCArIDQyKQogI2RlZmluZSBfX05SX3NlbmR0byAoX19OUl9MaW51eCArIDQzKQogI2RlZmluZSBfX05SX3JlY3Zmcm9tIChfX05SX0xpbnV4ICsgNDQpCiAjZGVmaW5lIF9fTlJfc2VuZG1zZyAoX19OUl9MaW51eCArIDQ1KQotI2RlZmluZSBfX05SX3JlY3Ztc2cgKF9fTlJfTGludXggKyA0NikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfcmVjdm1zZyAoX19OUl9MaW51eCArIDQ2KQogI2RlZmluZSBfX05SX3NodXRkb3duIChfX05SX0xpbnV4ICsgNDcpCiAjZGVmaW5lIF9fTlJfYmluZCAoX19OUl9MaW51eCArIDQ4KQogI2RlZmluZSBfX05SX2xpc3RlbiAoX19OUl9MaW51eCArIDQ5KQotI2RlZmluZSBfX05SX2dldHNvY2tuYW1lIChfX05SX0xpbnV4ICsgNTApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2dldHNvY2tuYW1lIChfX05SX0xpbnV4ICsgNTApCiAjZGVmaW5lIF9fTlJfZ2V0cGVlcm5hbWUgKF9fTlJfTGludXggKyA1MSkKICNkZWZpbmUgX19OUl9zb2NrZXRwYWlyIChfX05SX0xpbnV4ICsgNTIpCiAjZGVmaW5lIF9fTlJfc2V0c29ja29wdCAoX19OUl9MaW51eCArIDUzKQotI2RlZmluZSBfX05SX2dldHNvY2tvcHQgKF9fTlJfTGludXggKyA1NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZ2V0c29ja29wdCAoX19OUl9MaW51eCArIDU0KQogI2RlZmluZSBfX05SX2Nsb25lIChfX05SX0xpbnV4ICsgNTUpCiAjZGVmaW5lIF9fTlJfZm9yayAoX19OUl9MaW51eCArIDU2KQogI2RlZmluZSBfX05SX2V4ZWN2ZSAoX19OUl9MaW51eCArIDU3KQotI2RlZmluZSBfX05SX2V4aXQgKF9fTlJfTGludXggKyA1OCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZXhpdCAoX19OUl9MaW51eCArIDU4KQogI2RlZmluZSBfX05SX3dhaXQ0IChfX05SX0xpbnV4ICsgNTkpCiAjZGVmaW5lIF9fTlJfa2lsbCAoX19OUl9MaW51eCArIDYwKQogI2RlZmluZSBfX05SX3VuYW1lIChfX05SX0xpbnV4ICsgNjEpCi0jZGVmaW5lIF9fTlJfc2VtZ2V0IChfX05SX0xpbnV4ICsgNjIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NlbWdldCAoX19OUl9MaW51eCArIDYyKQogI2RlZmluZSBfX05SX3NlbW9wIChfX05SX0xpbnV4ICsgNjMpCiAjZGVmaW5lIF9fTlJfc2VtY3RsIChfX05SX0xpbnV4ICsgNjQpCiAjZGVmaW5lIF9fTlJfc2htZHQgKF9fTlJfTGludXggKyA2NSkKLSNkZWZpbmUgX19OUl9tc2dnZXQgKF9fTlJfTGludXggKyA2NikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbXNnZ2V0IChfX05SX0xpbnV4ICsgNjYpCiAjZGVmaW5lIF9fTlJfbXNnc25kIChfX05SX0xpbnV4ICsgNjcpCiAjZGVmaW5lIF9fTlJfbXNncmN2IChfX05SX0xpbnV4ICsgNjgpCiAjZGVmaW5lIF9fTlJfbXNnY3RsIChfX05SX0xpbnV4ICsgNjkpCi0jZGVmaW5lIF9fTlJfZmNudGwgKF9fTlJfTGludXggKyA3MCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZmNudGwgKF9fTlJfTGludXggKyA3MCkKICNkZWZpbmUgX19OUl9mbG9jayAoX19OUl9MaW51eCArIDcxKQogI2RlZmluZSBfX05SX2ZzeW5jIChfX05SX0xpbnV4ICsgNzIpCiAjZGVmaW5lIF9fTlJfZmRhdGFzeW5jIChfX05SX0xpbnV4ICsgNzMpCi0jZGVmaW5lIF9fTlJfdHJ1bmNhdGUgKF9fTlJfTGludXggKyA3NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfdHJ1bmNhdGUgKF9fTlJfTGludXggKyA3NCkKICNkZWZpbmUgX19OUl9mdHJ1bmNhdGUgKF9fTlJfTGludXggKyA3NSkKICNkZWZpbmUgX19OUl9nZXRkZW50cyAoX19OUl9MaW51eCArIDc2KQogI2RlZmluZSBfX05SX2dldGN3ZCAoX19OUl9MaW51eCArIDc3KQotI2RlZmluZSBfX05SX2NoZGlyIChfX05SX0xpbnV4ICsgNzgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2NoZGlyIChfX05SX0xpbnV4ICsgNzgpCiAjZGVmaW5lIF9fTlJfZmNoZGlyIChfX05SX0xpbnV4ICsgNzkpCiAjZGVmaW5lIF9fTlJfcmVuYW1lIChfX05SX0xpbnV4ICsgODApCiAjZGVmaW5lIF9fTlJfbWtkaXIgKF9fTlJfTGludXggKyA4MSkKLSNkZWZpbmUgX19OUl9ybWRpciAoX19OUl9MaW51eCArIDgyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9ybWRpciAoX19OUl9MaW51eCArIDgyKQogI2RlZmluZSBfX05SX2NyZWF0IChfX05SX0xpbnV4ICsgODMpCiAjZGVmaW5lIF9fTlJfbGluayAoX19OUl9MaW51eCArIDg0KQogI2RlZmluZSBfX05SX3VubGluayAoX19OUl9MaW51eCArIDg1KQotI2RlZmluZSBfX05SX3N5bWxpbmsgKF9fTlJfTGludXggKyA4NikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc3ltbGluayAoX19OUl9MaW51eCArIDg2KQogI2RlZmluZSBfX05SX3JlYWRsaW5rIChfX05SX0xpbnV4ICsgODcpCiAjZGVmaW5lIF9fTlJfY2htb2QgKF9fTlJfTGludXggKyA4OCkKICNkZWZpbmUgX19OUl9mY2htb2QgKF9fTlJfTGludXggKyA4OSkKLSNkZWZpbmUgX19OUl9jaG93biAoX19OUl9MaW51eCArIDkwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9jaG93biAoX19OUl9MaW51eCArIDkwKQogI2RlZmluZSBfX05SX2ZjaG93biAoX19OUl9MaW51eCArIDkxKQogI2RlZmluZSBfX05SX2xjaG93biAoX19OUl9MaW51eCArIDkyKQogI2RlZmluZSBfX05SX3VtYXNrIChfX05SX0xpbnV4ICsgOTMpCi0jZGVmaW5lIF9fTlJfZ2V0dGltZW9mZGF5IChfX05SX0xpbnV4ICsgOTQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2dldHRpbWVvZmRheSAoX19OUl9MaW51eCArIDk0KQogI2RlZmluZSBfX05SX2dldHJsaW1pdCAoX19OUl9MaW51eCArIDk1KQogI2RlZmluZSBfX05SX2dldHJ1c2FnZSAoX19OUl9MaW51eCArIDk2KQogI2RlZmluZSBfX05SX3N5c2luZm8gKF9fTlJfTGludXggKyA5NykKLSNkZWZpbmUgX19OUl90aW1lcyAoX19OUl9MaW51eCArIDk4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl90aW1lcyAoX19OUl9MaW51eCArIDk4KQogI2RlZmluZSBfX05SX3B0cmFjZSAoX19OUl9MaW51eCArIDk5KQogI2RlZmluZSBfX05SX2dldHVpZCAoX19OUl9MaW51eCArIDEwMCkKICNkZWZpbmUgX19OUl9zeXNsb2cgKF9fTlJfTGludXggKyAxMDEpCi0jZGVmaW5lIF9fTlJfZ2V0Z2lkIChfX05SX0xpbnV4ICsgMTAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9nZXRnaWQgKF9fTlJfTGludXggKyAxMDIpCiAjZGVmaW5lIF9fTlJfc2V0dWlkIChfX05SX0xpbnV4ICsgMTAzKQogI2RlZmluZSBfX05SX3NldGdpZCAoX19OUl9MaW51eCArIDEwNCkKICNkZWZpbmUgX19OUl9nZXRldWlkIChfX05SX0xpbnV4ICsgMTA1KQotI2RlZmluZSBfX05SX2dldGVnaWQgKF9fTlJfTGludXggKyAxMDYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2dldGVnaWQgKF9fTlJfTGludXggKyAxMDYpCiAjZGVmaW5lIF9fTlJfc2V0cGdpZCAoX19OUl9MaW51eCArIDEwNykKICNkZWZpbmUgX19OUl9nZXRwcGlkIChfX05SX0xpbnV4ICsgMTA4KQogI2RlZmluZSBfX05SX2dldHBncnAgKF9fTlJfTGludXggKyAxMDkpCi0jZGVmaW5lIF9fTlJfc2V0c2lkIChfX05SX0xpbnV4ICsgMTEwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZXRzaWQgKF9fTlJfTGludXggKyAxMTApCiAjZGVmaW5lIF9fTlJfc2V0cmV1aWQgKF9fTlJfTGludXggKyAxMTEpCiAjZGVmaW5lIF9fTlJfc2V0cmVnaWQgKF9fTlJfTGludXggKyAxMTIpCiAjZGVmaW5lIF9fTlJfZ2V0Z3JvdXBzIChfX05SX0xpbnV4ICsgMTEzKQotI2RlZmluZSBfX05SX3NldGdyb3VwcyAoX19OUl9MaW51eCArIDExNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2V0Z3JvdXBzIChfX05SX0xpbnV4ICsgMTE0KQogI2RlZmluZSBfX05SX3NldHJlc3VpZCAoX19OUl9MaW51eCArIDExNSkKICNkZWZpbmUgX19OUl9nZXRyZXN1aWQgKF9fTlJfTGludXggKyAxMTYpCiAjZGVmaW5lIF9fTlJfc2V0cmVzZ2lkIChfX05SX0xpbnV4ICsgMTE3KQotI2RlZmluZSBfX05SX2dldHJlc2dpZCAoX19OUl9MaW51eCArIDExOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZ2V0cmVzZ2lkIChfX05SX0xpbnV4ICsgMTE4KQogI2RlZmluZSBfX05SX2dldHBnaWQgKF9fTlJfTGludXggKyAxMTkpCiAjZGVmaW5lIF9fTlJfc2V0ZnN1aWQgKF9fTlJfTGludXggKyAxMjApCiAjZGVmaW5lIF9fTlJfc2V0ZnNnaWQgKF9fTlJfTGludXggKyAxMjEpCi0jZGVmaW5lIF9fTlJfZ2V0c2lkIChfX05SX0xpbnV4ICsgMTIyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9nZXRzaWQgKF9fTlJfTGludXggKyAxMjIpCiAjZGVmaW5lIF9fTlJfY2FwZ2V0IChfX05SX0xpbnV4ICsgMTIzKQogI2RlZmluZSBfX05SX2NhcHNldCAoX19OUl9MaW51eCArIDEyNCkKICNkZWZpbmUgX19OUl9ydF9zaWdwZW5kaW5nIChfX05SX0xpbnV4ICsgMTI1KQotI2RlZmluZSBfX05SX3J0X3NpZ3RpbWVkd2FpdCAoX19OUl9MaW51eCArIDEyNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfcnRfc2lndGltZWR3YWl0IChfX05SX0xpbnV4ICsgMTI2KQogI2RlZmluZSBfX05SX3J0X3NpZ3F1ZXVlaW5mbyAoX19OUl9MaW51eCArIDEyNykKICNkZWZpbmUgX19OUl9ydF9zaWdzdXNwZW5kIChfX05SX0xpbnV4ICsgMTI4KQogI2RlZmluZSBfX05SX3NpZ2FsdHN0YWNrIChfX05SX0xpbnV4ICsgMTI5KQotI2RlZmluZSBfX05SX3V0aW1lIChfX05SX0xpbnV4ICsgMTMwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl91dGltZSAoX19OUl9MaW51eCArIDEzMCkKICNkZWZpbmUgX19OUl9ta25vZCAoX19OUl9MaW51eCArIDEzMSkKICNkZWZpbmUgX19OUl9wZXJzb25hbGl0eSAoX19OUl9MaW51eCArIDEzMikKICNkZWZpbmUgX19OUl91c3RhdCAoX19OUl9MaW51eCArIDEzMykKLSNkZWZpbmUgX19OUl9zdGF0ZnMgKF9fTlJfTGludXggKyAxMzQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3N0YXRmcyAoX19OUl9MaW51eCArIDEzNCkKICNkZWZpbmUgX19OUl9mc3RhdGZzIChfX05SX0xpbnV4ICsgMTM1KQogI2RlZmluZSBfX05SX3N5c2ZzIChfX05SX0xpbnV4ICsgMTM2KQogI2RlZmluZSBfX05SX2dldHByaW9yaXR5IChfX05SX0xpbnV4ICsgMTM3KQotI2RlZmluZSBfX05SX3NldHByaW9yaXR5IChfX05SX0xpbnV4ICsgMTM4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZXRwcmlvcml0eSAoX19OUl9MaW51eCArIDEzOCkKICNkZWZpbmUgX19OUl9zY2hlZF9zZXRwYXJhbSAoX19OUl9MaW51eCArIDEzOSkKICNkZWZpbmUgX19OUl9zY2hlZF9nZXRwYXJhbSAoX19OUl9MaW51eCArIDE0MCkKICNkZWZpbmUgX19OUl9zY2hlZF9zZXRzY2hlZHVsZXIgKF9fTlJfTGludXggKyAxNDEpCi0jZGVmaW5lIF9fTlJfc2NoZWRfZ2V0c2NoZWR1bGVyIChfX05SX0xpbnV4ICsgMTQyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zY2hlZF9nZXRzY2hlZHVsZXIgKF9fTlJfTGludXggKyAxNDIpCiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0X3ByaW9yaXR5X21heCAoX19OUl9MaW51eCArIDE0MykKICNkZWZpbmUgX19OUl9zY2hlZF9nZXRfcHJpb3JpdHlfbWluIChfX05SX0xpbnV4ICsgMTQ0KQogI2RlZmluZSBfX05SX3NjaGVkX3JyX2dldF9pbnRlcnZhbCAoX19OUl9MaW51eCArIDE0NSkKLSNkZWZpbmUgX19OUl9tbG9jayAoX19OUl9MaW51eCArIDE0NikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbWxvY2sgKF9fTlJfTGludXggKyAxNDYpCiAjZGVmaW5lIF9fTlJfbXVubG9jayAoX19OUl9MaW51eCArIDE0NykKICNkZWZpbmUgX19OUl9tbG9ja2FsbCAoX19OUl9MaW51eCArIDE0OCkKICNkZWZpbmUgX19OUl9tdW5sb2NrYWxsIChfX05SX0xpbnV4ICsgMTQ5KQotI2RlZmluZSBfX05SX3ZoYW5ndXAgKF9fTlJfTGludXggKyAxNTApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3ZoYW5ndXAgKF9fTlJfTGludXggKyAxNTApCiAjZGVmaW5lIF9fTlJfcGl2b3Rfcm9vdCAoX19OUl9MaW51eCArIDE1MSkKICNkZWZpbmUgX19OUl9fc3lzY3RsIChfX05SX0xpbnV4ICsgMTUyKQogI2RlZmluZSBfX05SX3ByY3RsIChfX05SX0xpbnV4ICsgMTUzKQotI2RlZmluZSBfX05SX2FkanRpbWV4IChfX05SX0xpbnV4ICsgMTU0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9hZGp0aW1leCAoX19OUl9MaW51eCArIDE1NCkKICNkZWZpbmUgX19OUl9zZXRybGltaXQgKF9fTlJfTGludXggKyAxNTUpCiAjZGVmaW5lIF9fTlJfY2hyb290IChfX05SX0xpbnV4ICsgMTU2KQogI2RlZmluZSBfX05SX3N5bmMgKF9fTlJfTGludXggKyAxNTcpCi0jZGVmaW5lIF9fTlJfYWNjdCAoX19OUl9MaW51eCArIDE1OCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfYWNjdCAoX19OUl9MaW51eCArIDE1OCkKICNkZWZpbmUgX19OUl9zZXR0aW1lb2ZkYXkgKF9fTlJfTGludXggKyAxNTkpCiAjZGVmaW5lIF9fTlJfbW91bnQgKF9fTlJfTGludXggKyAxNjApCiAjZGVmaW5lIF9fTlJfdW1vdW50MiAoX19OUl9MaW51eCArIDE2MSkKLSNkZWZpbmUgX19OUl9zd2Fwb24gKF9fTlJfTGludXggKyAxNjIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3N3YXBvbiAoX19OUl9MaW51eCArIDE2MikKICNkZWZpbmUgX19OUl9zd2Fwb2ZmIChfX05SX0xpbnV4ICsgMTYzKQogI2RlZmluZSBfX05SX3JlYm9vdCAoX19OUl9MaW51eCArIDE2NCkKICNkZWZpbmUgX19OUl9zZXRob3N0bmFtZSAoX19OUl9MaW51eCArIDE2NSkKLSNkZWZpbmUgX19OUl9zZXRkb21haW5uYW1lIChfX05SX0xpbnV4ICsgMTY2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZXRkb21haW5uYW1lIChfX05SX0xpbnV4ICsgMTY2KQogI2RlZmluZSBfX05SX2NyZWF0ZV9tb2R1bGUgKF9fTlJfTGludXggKyAxNjcpCiAjZGVmaW5lIF9fTlJfaW5pdF9tb2R1bGUgKF9fTlJfTGludXggKyAxNjgpCiAjZGVmaW5lIF9fTlJfZGVsZXRlX21vZHVsZSAoX19OUl9MaW51eCArIDE2OSkKLSNkZWZpbmUgX19OUl9nZXRfa2VybmVsX3N5bXMgKF9fTlJfTGludXggKyAxNzApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2dldF9rZXJuZWxfc3ltcyAoX19OUl9MaW51eCArIDE3MCkKICNkZWZpbmUgX19OUl9xdWVyeV9tb2R1bGUgKF9fTlJfTGludXggKyAxNzEpCiAjZGVmaW5lIF9fTlJfcXVvdGFjdGwgKF9fTlJfTGludXggKyAxNzIpCiAjZGVmaW5lIF9fTlJfbmZzc2VydmN0bCAoX19OUl9MaW51eCArIDE3MykKLSNkZWZpbmUgX19OUl9nZXRwbXNnIChfX05SX0xpbnV4ICsgMTc0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9nZXRwbXNnIChfX05SX0xpbnV4ICsgMTc0KQogI2RlZmluZSBfX05SX3B1dHBtc2cgKF9fTlJfTGludXggKyAxNzUpCiAjZGVmaW5lIF9fTlJfYWZzX3N5c2NhbGwgKF9fTlJfTGludXggKyAxNzYpCiAjZGVmaW5lIF9fTlJfcmVzZXJ2ZWQxNzcgKF9fTlJfTGludXggKyAxNzcpCi0jZGVmaW5lIF9fTlJfZ2V0dGlkIChfX05SX0xpbnV4ICsgMTc4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9nZXR0aWQgKF9fTlJfTGludXggKyAxNzgpCiAjZGVmaW5lIF9fTlJfcmVhZGFoZWFkIChfX05SX0xpbnV4ICsgMTc5KQogI2RlZmluZSBfX05SX3NldHhhdHRyIChfX05SX0xpbnV4ICsgMTgwKQogI2RlZmluZSBfX05SX2xzZXR4YXR0ciAoX19OUl9MaW51eCArIDE4MSkKLSNkZWZpbmUgX19OUl9mc2V0eGF0dHIgKF9fTlJfTGludXggKyAxODIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2ZzZXR4YXR0ciAoX19OUl9MaW51eCArIDE4MikKICNkZWZpbmUgX19OUl9nZXR4YXR0ciAoX19OUl9MaW51eCArIDE4MykKICNkZWZpbmUgX19OUl9sZ2V0eGF0dHIgKF9fTlJfTGludXggKyAxODQpCiAjZGVmaW5lIF9fTlJfZmdldHhhdHRyIChfX05SX0xpbnV4ICsgMTg1KQotI2RlZmluZSBfX05SX2xpc3R4YXR0ciAoX19OUl9MaW51eCArIDE4NikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbGlzdHhhdHRyIChfX05SX0xpbnV4ICsgMTg2KQogI2RlZmluZSBfX05SX2xsaXN0eGF0dHIgKF9fTlJfTGludXggKyAxODcpCiAjZGVmaW5lIF9fTlJfZmxpc3R4YXR0ciAoX19OUl9MaW51eCArIDE4OCkKICNkZWZpbmUgX19OUl9yZW1vdmV4YXR0ciAoX19OUl9MaW51eCArIDE4OSkKLSNkZWZpbmUgX19OUl9scmVtb3ZleGF0dHIgKF9fTlJfTGludXggKyAxOTApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2xyZW1vdmV4YXR0ciAoX19OUl9MaW51eCArIDE5MCkKICNkZWZpbmUgX19OUl9mcmVtb3ZleGF0dHIgKF9fTlJfTGludXggKyAxOTEpCiAjZGVmaW5lIF9fTlJfdGtpbGwgKF9fTlJfTGludXggKyAxOTIpCiAjZGVmaW5lIF9fTlJfcmVzZXJ2ZWQxOTMgKF9fTlJfTGludXggKyAxOTMpCi0jZGVmaW5lIF9fTlJfZnV0ZXggKF9fTlJfTGludXggKyAxOTQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2Z1dGV4IChfX05SX0xpbnV4ICsgMTk0KQogI2RlZmluZSBfX05SX3NjaGVkX3NldGFmZmluaXR5IChfX05SX0xpbnV4ICsgMTk1KQogI2RlZmluZSBfX05SX3NjaGVkX2dldGFmZmluaXR5IChfX05SX0xpbnV4ICsgMTk2KQogI2RlZmluZSBfX05SX2NhY2hlZmx1c2ggKF9fTlJfTGludXggKyAxOTcpCi0jZGVmaW5lIF9fTlJfY2FjaGVjdGwgKF9fTlJfTGludXggKyAxOTgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2NhY2hlY3RsIChfX05SX0xpbnV4ICsgMTk4KQogI2RlZmluZSBfX05SX3N5c21pcHMgKF9fTlJfTGludXggKyAxOTkpCiAjZGVmaW5lIF9fTlJfaW9fc2V0dXAgKF9fTlJfTGludXggKyAyMDApCiAjZGVmaW5lIF9fTlJfaW9fZGVzdHJveSAoX19OUl9MaW51eCArIDIwMSkKLSNkZWZpbmUgX19OUl9pb19nZXRldmVudHMgKF9fTlJfTGludXggKyAyMDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2lvX2dldGV2ZW50cyAoX19OUl9MaW51eCArIDIwMikKICNkZWZpbmUgX19OUl9pb19zdWJtaXQgKF9fTlJfTGludXggKyAyMDMpCiAjZGVmaW5lIF9fTlJfaW9fY2FuY2VsIChfX05SX0xpbnV4ICsgMjA0KQogI2RlZmluZSBfX05SX2V4aXRfZ3JvdXAgKF9fTlJfTGludXggKyAyMDUpCi0jZGVmaW5lIF9fTlJfbG9va3VwX2Rjb29raWUgKF9fTlJfTGludXggKyAyMDYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2xvb2t1cF9kY29va2llIChfX05SX0xpbnV4ICsgMjA2KQogI2RlZmluZSBfX05SX2Vwb2xsX2NyZWF0ZSAoX19OUl9MaW51eCArIDIwNykKICNkZWZpbmUgX19OUl9lcG9sbF9jdGwgKF9fTlJfTGludXggKyAyMDgpCiAjZGVmaW5lIF9fTlJfZXBvbGxfd2FpdCAoX19OUl9MaW51eCArIDIwOSkKLSNkZWZpbmUgX19OUl9yZW1hcF9maWxlX3BhZ2VzIChfX05SX0xpbnV4ICsgMjEwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9yZW1hcF9maWxlX3BhZ2VzIChfX05SX0xpbnV4ICsgMjEwKQogI2RlZmluZSBfX05SX3J0X3NpZ3JldHVybiAoX19OUl9MaW51eCArIDIxMSkKICNkZWZpbmUgX19OUl9zZXRfdGlkX2FkZHJlc3MgKF9fTlJfTGludXggKyAyMTIpCiAjZGVmaW5lIF9fTlJfcmVzdGFydF9zeXNjYWxsIChfX05SX0xpbnV4ICsgMjEzKQotI2RlZmluZSBfX05SX3NlbXRpbWVkb3AgKF9fTlJfTGludXggKyAyMTQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NlbXRpbWVkb3AgKF9fTlJfTGludXggKyAyMTQpCiAjZGVmaW5lIF9fTlJfZmFkdmlzZTY0IChfX05SX0xpbnV4ICsgMjE1KQogI2RlZmluZSBfX05SX3RpbWVyX2NyZWF0ZSAoX19OUl9MaW51eCArIDIxNikKICNkZWZpbmUgX19OUl90aW1lcl9zZXR0aW1lIChfX05SX0xpbnV4ICsgMjE3KQotI2RlZmluZSBfX05SX3RpbWVyX2dldHRpbWUgKF9fTlJfTGludXggKyAyMTgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3RpbWVyX2dldHRpbWUgKF9fTlJfTGludXggKyAyMTgpCiAjZGVmaW5lIF9fTlJfdGltZXJfZ2V0b3ZlcnJ1biAoX19OUl9MaW51eCArIDIxOSkKICNkZWZpbmUgX19OUl90aW1lcl9kZWxldGUgKF9fTlJfTGludXggKyAyMjApCiAjZGVmaW5lIF9fTlJfY2xvY2tfc2V0dGltZSAoX19OUl9MaW51eCArIDIyMSkKLSNkZWZpbmUgX19OUl9jbG9ja19nZXR0aW1lIChfX05SX0xpbnV4ICsgMjIyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9jbG9ja19nZXR0aW1lIChfX05SX0xpbnV4ICsgMjIyKQogI2RlZmluZSBfX05SX2Nsb2NrX2dldHJlcyAoX19OUl9MaW51eCArIDIyMykKICNkZWZpbmUgX19OUl9jbG9ja19uYW5vc2xlZXAgKF9fTlJfTGludXggKyAyMjQpCiAjZGVmaW5lIF9fTlJfdGdraWxsIChfX05SX0xpbnV4ICsgMjI1KQotI2RlZmluZSBfX05SX3V0aW1lcyAoX19OUl9MaW51eCArIDIyNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfdXRpbWVzIChfX05SX0xpbnV4ICsgMjI2KQogI2RlZmluZSBfX05SX21iaW5kIChfX05SX0xpbnV4ICsgMjI3KQogI2RlZmluZSBfX05SX2dldF9tZW1wb2xpY3kgKF9fTlJfTGludXggKyAyMjgpCiAjZGVmaW5lIF9fTlJfc2V0X21lbXBvbGljeSAoX19OUl9MaW51eCArIDIyOSkKLSNkZWZpbmUgX19OUl9tcV9vcGVuIChfX05SX0xpbnV4ICsgMjMwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9tcV9vcGVuIChfX05SX0xpbnV4ICsgMjMwKQogI2RlZmluZSBfX05SX21xX3VubGluayAoX19OUl9MaW51eCArIDIzMSkKICNkZWZpbmUgX19OUl9tcV90aW1lZHNlbmQgKF9fTlJfTGludXggKyAyMzIpCiAjZGVmaW5lIF9fTlJfbXFfdGltZWRyZWNlaXZlIChfX05SX0xpbnV4ICsgMjMzKQotI2RlZmluZSBfX05SX21xX25vdGlmeSAoX19OUl9MaW51eCArIDIzNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbXFfbm90aWZ5IChfX05SX0xpbnV4ICsgMjM0KQogI2RlZmluZSBfX05SX21xX2dldHNldGF0dHIgKF9fTlJfTGludXggKyAyMzUpCiAjZGVmaW5lIF9fTlJfdnNlcnZlciAoX19OUl9MaW51eCArIDIzNikKICNkZWZpbmUgX19OUl93YWl0aWQgKF9fTlJfTGludXggKyAyMzcpCi0jZGVmaW5lIF9fTlJfYWRkX2tleSAoX19OUl9MaW51eCArIDIzOSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfYWRkX2tleSAoX19OUl9MaW51eCArIDIzOSkKICNkZWZpbmUgX19OUl9yZXF1ZXN0X2tleSAoX19OUl9MaW51eCArIDI0MCkKICNkZWZpbmUgX19OUl9rZXljdGwgKF9fTlJfTGludXggKyAyNDEpCiAjZGVmaW5lIF9fTlJfc2V0X3RocmVhZF9hcmVhIChfX05SX0xpbnV4ICsgMjQyKQotI2RlZmluZSBfX05SX2lub3RpZnlfaW5pdCAoX19OUl9MaW51eCArIDI0MykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfaW5vdGlmeV9pbml0IChfX05SX0xpbnV4ICsgMjQzKQogI2RlZmluZSBfX05SX2lub3RpZnlfYWRkX3dhdGNoIChfX05SX0xpbnV4ICsgMjQ0KQogI2RlZmluZSBfX05SX2lub3RpZnlfcm1fd2F0Y2ggKF9fTlJfTGludXggKyAyNDUpCiAjZGVmaW5lIF9fTlJfbWlncmF0ZV9wYWdlcyAoX19OUl9MaW51eCArIDI0NikKLSNkZWZpbmUgX19OUl9vcGVuYXQgKF9fTlJfTGludXggKyAyNDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX29wZW5hdCAoX19OUl9MaW51eCArIDI0NykKICNkZWZpbmUgX19OUl9ta2RpcmF0IChfX05SX0xpbnV4ICsgMjQ4KQogI2RlZmluZSBfX05SX21rbm9kYXQgKF9fTlJfTGludXggKyAyNDkpCiAjZGVmaW5lIF9fTlJfZmNob3duYXQgKF9fTlJfTGludXggKyAyNTApCi0jZGVmaW5lIF9fTlJfZnV0aW1lc2F0IChfX05SX0xpbnV4ICsgMjUxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9mdXRpbWVzYXQgKF9fTlJfTGludXggKyAyNTEpCiAjZGVmaW5lIF9fTlJfbmV3ZnN0YXRhdCAoX19OUl9MaW51eCArIDI1MikKICNkZWZpbmUgX19OUl91bmxpbmthdCAoX19OUl9MaW51eCArIDI1MykKICNkZWZpbmUgX19OUl9yZW5hbWVhdCAoX19OUl9MaW51eCArIDI1NCkKLSNkZWZpbmUgX19OUl9saW5rYXQgKF9fTlJfTGludXggKyAyNTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2xpbmthdCAoX19OUl9MaW51eCArIDI1NSkKICNkZWZpbmUgX19OUl9zeW1saW5rYXQgKF9fTlJfTGludXggKyAyNTYpCiAjZGVmaW5lIF9fTlJfcmVhZGxpbmthdCAoX19OUl9MaW51eCArIDI1NykKICNkZWZpbmUgX19OUl9mY2htb2RhdCAoX19OUl9MaW51eCArIDI1OCkKLSNkZWZpbmUgX19OUl9mYWNjZXNzYXQgKF9fTlJfTGludXggKyAyNTkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2ZhY2Nlc3NhdCAoX19OUl9MaW51eCArIDI1OSkKICNkZWZpbmUgX19OUl9wc2VsZWN0NiAoX19OUl9MaW51eCArIDI2MCkKICNkZWZpbmUgX19OUl9wcG9sbCAoX19OUl9MaW51eCArIDI2MSkKICNkZWZpbmUgX19OUl91bnNoYXJlIChfX05SX0xpbnV4ICsgMjYyKQotI2RlZmluZSBfX05SX3NwbGljZSAoX19OUl9MaW51eCArIDI2MykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc3BsaWNlIChfX05SX0xpbnV4ICsgMjYzKQogI2RlZmluZSBfX05SX3N5bmNfZmlsZV9yYW5nZSAoX19OUl9MaW51eCArIDI2NCkKICNkZWZpbmUgX19OUl90ZWUgKF9fTlJfTGludXggKyAyNjUpCiAjZGVmaW5lIF9fTlJfdm1zcGxpY2UgKF9fTlJfTGludXggKyAyNjYpCi0jZGVmaW5lIF9fTlJfbW92ZV9wYWdlcyAoX19OUl9MaW51eCArIDI2NykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfbW92ZV9wYWdlcyAoX19OUl9MaW51eCArIDI2NykKICNkZWZpbmUgX19OUl9zZXRfcm9idXN0X2xpc3QgKF9fTlJfTGludXggKyAyNjgpCiAjZGVmaW5lIF9fTlJfZ2V0X3JvYnVzdF9saXN0IChfX05SX0xpbnV4ICsgMjY5KQogI2RlZmluZSBfX05SX2tleGVjX2xvYWQgKF9fTlJfTGludXggKyAyNzApCi0jZGVmaW5lIF9fTlJfZ2V0Y3B1IChfX05SX0xpbnV4ICsgMjcxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9nZXRjcHUgKF9fTlJfTGludXggKyAyNzEpCiAjZGVmaW5lIF9fTlJfZXBvbGxfcHdhaXQgKF9fTlJfTGludXggKyAyNzIpCiAjZGVmaW5lIF9fTlJfaW9wcmlvX3NldCAoX19OUl9MaW51eCArIDI3MykKICNkZWZpbmUgX19OUl9pb3ByaW9fZ2V0IChfX05SX0xpbnV4ICsgMjc0KQotI2RlZmluZSBfX05SX3V0aW1lbnNhdCAoX19OUl9MaW51eCArIDI3NSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfdXRpbWVuc2F0IChfX05SX0xpbnV4ICsgMjc1KQogI2RlZmluZSBfX05SX3NpZ25hbGZkIChfX05SX0xpbnV4ICsgMjc2KQogI2RlZmluZSBfX05SX3RpbWVyZmQgKF9fTlJfTGludXggKyAyNzcpCiAjZGVmaW5lIF9fTlJfZXZlbnRmZCAoX19OUl9MaW51eCArIDI3OCkKLSNkZWZpbmUgX19OUl9mYWxsb2NhdGUgKF9fTlJfTGludXggKyAyNzkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2ZhbGxvY2F0ZSAoX19OUl9MaW51eCArIDI3OSkKICNkZWZpbmUgX19OUl90aW1lcmZkX2NyZWF0ZSAoX19OUl9MaW51eCArIDI4MCkKICNkZWZpbmUgX19OUl90aW1lcmZkX2dldHRpbWUgKF9fTlJfTGludXggKyAyODEpCiAjZGVmaW5lIF9fTlJfdGltZXJmZF9zZXR0aW1lIChfX05SX0xpbnV4ICsgMjgyKQotI2RlZmluZSBfX05SX3NpZ25hbGZkNCAoX19OUl9MaW51eCArIDI4MykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfc2lnbmFsZmQ0IChfX05SX0xpbnV4ICsgMjgzKQogI2RlZmluZSBfX05SX2V2ZW50ZmQyIChfX05SX0xpbnV4ICsgMjg0KQogI2RlZmluZSBfX05SX2Vwb2xsX2NyZWF0ZTEgKF9fTlJfTGludXggKyAyODUpCiAjZGVmaW5lIF9fTlJfZHVwMyAoX19OUl9MaW51eCArIDI4NikKLSNkZWZpbmUgX19OUl9waXBlMiAoX19OUl9MaW51eCArIDI4NykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfcGlwZTIgKF9fTlJfTGludXggKyAyODcpCiAjZGVmaW5lIF9fTlJfaW5vdGlmeV9pbml0MSAoX19OUl9MaW51eCArIDI4OCkKICNkZWZpbmUgX19OUl9wcmVhZHYgKF9fTlJfTGludXggKyAyODkpCiAjZGVmaW5lIF9fTlJfcHdyaXRldiAoX19OUl9MaW51eCArIDI5MCkKLSNkZWZpbmUgX19OUl9ydF90Z3NpZ3F1ZXVlaW5mbyAoX19OUl9MaW51eCArIDI5MSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfcnRfdGdzaWdxdWV1ZWluZm8gKF9fTlJfTGludXggKyAyOTEpCiAjZGVmaW5lIF9fTlJfcGVyZl9ldmVudF9vcGVuIChfX05SX0xpbnV4ICsgMjkyKQogI2RlZmluZSBfX05SX2FjY2VwdDQgKF9fTlJfTGludXggKyAyOTMpCiAjZGVmaW5lIF9fTlJfcmVjdm1tc2cgKF9fTlJfTGludXggKyAyOTQpCi0jZGVmaW5lIF9fTlJfZmFub3RpZnlfaW5pdCAoX19OUl9MaW51eCArIDI5NSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZmFub3RpZnlfaW5pdCAoX19OUl9MaW51eCArIDI5NSkKICNkZWZpbmUgX19OUl9mYW5vdGlmeV9tYXJrIChfX05SX0xpbnV4ICsgMjk2KQogI2RlZmluZSBfX05SX3BybGltaXQ2NCAoX19OUl9MaW51eCArIDI5NykKICNkZWZpbmUgX19OUl9uYW1lX3RvX2hhbmRsZV9hdCAoX19OUl9MaW51eCArIDI5OCkKLSNkZWZpbmUgX19OUl9vcGVuX2J5X2hhbmRsZV9hdCAoX19OUl9MaW51eCArIDI5OSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfb3Blbl9ieV9oYW5kbGVfYXQgKF9fTlJfTGludXggKyAyOTkpCiAjZGVmaW5lIF9fTlJfY2xvY2tfYWRqdGltZSAoX19OUl9MaW51eCArIDMwMCkKICNkZWZpbmUgX19OUl9zeW5jZnMgKF9fTlJfTGludXggKyAzMDEpCiAjZGVmaW5lIF9fTlJfc2VuZG1tc2cgKF9fTlJfTGludXggKyAzMDIpCi0jZGVmaW5lIF9fTlJfc2V0bnMgKF9fTlJfTGludXggKyAzMDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX3NldG5zIChfX05SX0xpbnV4ICsgMzAzKQogI2RlZmluZSBfX05SX3Byb2Nlc3Nfdm1fcmVhZHYgKF9fTlJfTGludXggKyAzMDQpCiAjZGVmaW5lIF9fTlJfcHJvY2Vzc192bV93cml0ZXYgKF9fTlJfTGludXggKyAzMDUpCiAjZGVmaW5lIF9fTlJfa2NtcCAoX19OUl9MaW51eCArIDMwNikKLSNkZWZpbmUgX19OUl9maW5pdF9tb2R1bGUgKF9fTlJfTGludXggKyAzMDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2Zpbml0X21vZHVsZSAoX19OUl9MaW51eCArIDMwNykKICNkZWZpbmUgX19OUl9nZXRkZW50czY0IChfX05SX0xpbnV4ICsgMzA4KQogI2RlZmluZSBfX05SX3NjaGVkX3NldGF0dHIgKF9fTlJfTGludXggKyAzMDkpCiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0YXR0ciAoX19OUl9MaW51eCArIDMxMCkKLSNkZWZpbmUgX19OUl9MaW51eF9zeXNjYWxscyAzMTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfcmVuYW1lYXQyIChfX05SX0xpbnV4ICsgMzExKQorI2RlZmluZSBfX05SX3NlY2NvbXAgKF9fTlJfTGludXggKyAzMTIpCisjZGVmaW5lIF9fTlJfZ2V0cmFuZG9tIChfX05SX0xpbnV4ICsgMzEzKQorI2RlZmluZSBfX05SX21lbWZkX2NyZWF0ZSAoX19OUl9MaW51eCArIDMxNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfYnBmIChfX05SX0xpbnV4ICsgMzE1KQorI2RlZmluZSBfX05SX0xpbnV4X3N5c2NhbGxzIDMxNQogI2VuZGlmCiAjZGVmaW5lIF9fTlJfNjRfTGludXggNTAwMAotI2RlZmluZSBfX05SXzY0X0xpbnV4X3N5c2NhbGxzIDMxMAotI2lmIF9NSVBTX1NJTSA9PSBfTUlQU19TSU1fTkFCSTMyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SXzY0X0xpbnV4X3N5c2NhbGxzIDMxNQorI2lmIF9NSVBTX1NJTSA9PSBfTUlQU19TSU1fTkFCSTMyCiAjZGVmaW5lIF9fTlJfTGludXggNjAwMAogI2RlZmluZSBfX05SX3JlYWQgKF9fTlJfTGludXggKyAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl93cml0ZSAoX19OUl9MaW51eCArIDEpCiAjZGVmaW5lIF9fTlJfb3BlbiAoX19OUl9MaW51eCArIDIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Nsb3NlIChfX05SX0xpbnV4ICsgMykKICNkZWZpbmUgX19OUl9zdGF0IChfX05SX0xpbnV4ICsgNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZnN0YXQgKF9fTlJfTGludXggKyA1KQogI2RlZmluZSBfX05SX2xzdGF0IChfX05SX0xpbnV4ICsgNikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcG9sbCAoX19OUl9MaW51eCArIDcpCiAjZGVmaW5lIF9fTlJfbHNlZWsgKF9fTlJfTGludXggKyA4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9tbWFwIChfX05SX0xpbnV4ICsgOSkKICNkZWZpbmUgX19OUl9tcHJvdGVjdCAoX19OUl9MaW51eCArIDEwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9tdW5tYXAgKF9fTlJfTGludXggKyAxMSkKICNkZWZpbmUgX19OUl9icmsgKF9fTlJfTGludXggKyAxMikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcnRfc2lnYWN0aW9uIChfX05SX0xpbnV4ICsgMTMpCiAjZGVmaW5lIF9fTlJfcnRfc2lncHJvY21hc2sgKF9fTlJfTGludXggKyAxNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfaW9jdGwgKF9fTlJfTGludXggKyAxNSkKICNkZWZpbmUgX19OUl9wcmVhZDY0IChfX05SX0xpbnV4ICsgMTYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3B3cml0ZTY0IChfX05SX0xpbnV4ICsgMTcpCiAjZGVmaW5lIF9fTlJfcmVhZHYgKF9fTlJfTGludXggKyAxOCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfd3JpdGV2IChfX05SX0xpbnV4ICsgMTkpCiAjZGVmaW5lIF9fTlJfYWNjZXNzIChfX05SX0xpbnV4ICsgMjApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3BpcGUgKF9fTlJfTGludXggKyAyMSkKICNkZWZpbmUgX19OUl9fbmV3c2VsZWN0IChfX05SX0xpbnV4ICsgMjIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NjaGVkX3lpZWxkIChfX05SX0xpbnV4ICsgMjMpCiAjZGVmaW5lIF9fTlJfbXJlbWFwIChfX05SX0xpbnV4ICsgMjQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21zeW5jIChfX05SX0xpbnV4ICsgMjUpCiAjZGVmaW5lIF9fTlJfbWluY29yZSAoX19OUl9MaW51eCArIDI2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9tYWR2aXNlIChfX05SX0xpbnV4ICsgMjcpCiAjZGVmaW5lIF9fTlJfc2htZ2V0IChfX05SX0xpbnV4ICsgMjgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NobWF0IChfX05SX0xpbnV4ICsgMjkpCiAjZGVmaW5lIF9fTlJfc2htY3RsIChfX05SX0xpbnV4ICsgMzApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2R1cCAoX19OUl9MaW51eCArIDMxKQogI2RlZmluZSBfX05SX2R1cDIgKF9fTlJfTGludXggKyAzMikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcGF1c2UgKF9fTlJfTGludXggKyAzMykKICNkZWZpbmUgX19OUl9uYW5vc2xlZXAgKF9fTlJfTGludXggKyAzNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZ2V0aXRpbWVyIChfX05SX0xpbnV4ICsgMzUpCiAjZGVmaW5lIF9fTlJfc2V0aXRpbWVyIChfX05SX0xpbnV4ICsgMzYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2FsYXJtIChfX05SX0xpbnV4ICsgMzcpCiAjZGVmaW5lIF9fTlJfZ2V0cGlkIChfX05SX0xpbnV4ICsgMzgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NlbmRmaWxlIChfX05SX0xpbnV4ICsgMzkpCiAjZGVmaW5lIF9fTlJfc29ja2V0IChfX05SX0xpbnV4ICsgNDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Nvbm5lY3QgKF9fTlJfTGludXggKyA0MSkKICNkZWZpbmUgX19OUl9hY2NlcHQgKF9fTlJfTGludXggKyA0MikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2VuZHRvIChfX05SX0xpbnV4ICsgNDMpCiAjZGVmaW5lIF9fTlJfcmVjdmZyb20gKF9fTlJfTGludXggKyA0NCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2VuZG1zZyAoX19OUl9MaW51eCArIDQ1KQogI2RlZmluZSBfX05SX3JlY3Ztc2cgKF9fTlJfTGludXggKyA0NikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2h1dGRvd24gKF9fTlJfTGludXggKyA0NykKICNkZWZpbmUgX19OUl9iaW5kIChfX05SX0xpbnV4ICsgNDgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2xpc3RlbiAoX19OUl9MaW51eCArIDQ5KQogI2RlZmluZSBfX05SX2dldHNvY2tuYW1lIChfX05SX0xpbnV4ICsgNTApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2dldHBlZXJuYW1lIChfX05SX0xpbnV4ICsgNTEpCiAjZGVmaW5lIF9fTlJfc29ja2V0cGFpciAoX19OUl9MaW51eCArIDUyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZXRzb2Nrb3B0IChfX05SX0xpbnV4ICsgNTMpCiAjZGVmaW5lIF9fTlJfZ2V0c29ja29wdCAoX19OUl9MaW51eCArIDU0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9jbG9uZSAoX19OUl9MaW51eCArIDU1KQogI2RlZmluZSBfX05SX2ZvcmsgKF9fTlJfTGludXggKyA1NikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZXhlY3ZlIChfX05SX0xpbnV4ICsgNTcpCiAjZGVmaW5lIF9fTlJfZXhpdCAoX19OUl9MaW51eCArIDU4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl93YWl0NCAoX19OUl9MaW51eCArIDU5KQogI2RlZmluZSBfX05SX2tpbGwgKF9fTlJfTGludXggKyA2MCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdW5hbWUgKF9fTlJfTGludXggKyA2MSkKICNkZWZpbmUgX19OUl9zZW1nZXQgKF9fTlJfTGludXggKyA2MikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2Vtb3AgKF9fTlJfTGludXggKyA2MykKICNkZWZpbmUgX19OUl9zZW1jdGwgKF9fTlJfTGludXggKyA2NCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2htZHQgKF9fTlJfTGludXggKyA2NSkKICNkZWZpbmUgX19OUl9tc2dnZXQgKF9fTlJfTGludXggKyA2NikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbXNnc25kIChfX05SX0xpbnV4ICsgNjcpCiAjZGVmaW5lIF9fTlJfbXNncmN2IChfX05SX0xpbnV4ICsgNjgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21zZ2N0bCAoX19OUl9MaW51eCArIDY5KQogI2RlZmluZSBfX05SX2ZjbnRsIChfX05SX0xpbnV4ICsgNzApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Zsb2NrIChfX05SX0xpbnV4ICsgNzEpCiAjZGVmaW5lIF9fTlJfZnN5bmMgKF9fTlJfTGludXggKyA3MikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZmRhdGFzeW5jIChfX05SX0xpbnV4ICsgNzMpCiAjZGVmaW5lIF9fTlJfdHJ1bmNhdGUgKF9fTlJfTGludXggKyA3NCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZnRydW5jYXRlIChfX05SX0xpbnV4ICsgNzUpCiAjZGVmaW5lIF9fTlJfZ2V0ZGVudHMgKF9fTlJfTGludXggKyA3NikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZ2V0Y3dkIChfX05SX0xpbnV4ICsgNzcpCiAjZGVmaW5lIF9fTlJfY2hkaXIgKF9fTlJfTGludXggKyA3OCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZmNoZGlyIChfX05SX0xpbnV4ICsgNzkpCiAjZGVmaW5lIF9fTlJfcmVuYW1lIChfX05SX0xpbnV4ICsgODApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21rZGlyIChfX05SX0xpbnV4ICsgODEpCiAjZGVmaW5lIF9fTlJfcm1kaXIgKF9fTlJfTGludXggKyA4MikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfY3JlYXQgKF9fTlJfTGludXggKyA4MykKICNkZWZpbmUgX19OUl9saW5rIChfX05SX0xpbnV4ICsgODQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3VubGluayAoX19OUl9MaW51eCArIDg1KQogI2RlZmluZSBfX05SX3N5bWxpbmsgKF9fTlJfTGludXggKyA4NikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcmVhZGxpbmsgKF9fTlJfTGludXggKyA4NykKICNkZWZpbmUgX19OUl9jaG1vZCAoX19OUl9MaW51eCArIDg4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9mY2htb2QgKF9fTlJfTGludXggKyA4OSkKICNkZWZpbmUgX19OUl9jaG93biAoX19OUl9MaW51eCArIDkwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9mY2hvd24gKF9fTlJfTGludXggKyA5MSkKICNkZWZpbmUgX19OUl9sY2hvd24gKF9fTlJfTGludXggKyA5MikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdW1hc2sgKF9fTlJfTGludXggKyA5MykKICNkZWZpbmUgX19OUl9nZXR0aW1lb2ZkYXkgKF9fTlJfTGludXggKyA5NCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZ2V0cmxpbWl0IChfX05SX0xpbnV4ICsgOTUpCiAjZGVmaW5lIF9fTlJfZ2V0cnVzYWdlIChfX05SX0xpbnV4ICsgOTYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3N5c2luZm8gKF9fTlJfTGludXggKyA5NykKICNkZWZpbmUgX19OUl90aW1lcyAoX19OUl9MaW51eCArIDk4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9wdHJhY2UgKF9fTlJfTGludXggKyA5OSkKICNkZWZpbmUgX19OUl9nZXR1aWQgKF9fTlJfTGludXggKyAxMDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3N5c2xvZyAoX19OUl9MaW51eCArIDEwMSkKICNkZWZpbmUgX19OUl9nZXRnaWQgKF9fTlJfTGludXggKyAxMDIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NldHVpZCAoX19OUl9MaW51eCArIDEwMykKICNkZWZpbmUgX19OUl9zZXRnaWQgKF9fTlJfTGludXggKyAxMDQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2dldGV1aWQgKF9fTlJfTGludXggKyAxMDUpCiAjZGVmaW5lIF9fTlJfZ2V0ZWdpZCAoX19OUl9MaW51eCArIDEwNikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2V0cGdpZCAoX19OUl9MaW51eCArIDEwNykKICNkZWZpbmUgX19OUl9nZXRwcGlkIChfX05SX0xpbnV4ICsgMTA4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9nZXRwZ3JwIChfX05SX0xpbnV4ICsgMTA5KQogI2RlZmluZSBfX05SX3NldHNpZCAoX19OUl9MaW51eCArIDExMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2V0cmV1aWQgKF9fTlJfTGludXggKyAxMTEpCiAjZGVmaW5lIF9fTlJfc2V0cmVnaWQgKF9fTlJfTGludXggKyAxMTIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2dldGdyb3VwcyAoX19OUl9MaW51eCArIDExMykKICNkZWZpbmUgX19OUl9zZXRncm91cHMgKF9fTlJfTGludXggKyAxMTQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NldHJlc3VpZCAoX19OUl9MaW51eCArIDExNSkKICNkZWZpbmUgX19OUl9nZXRyZXN1aWQgKF9fTlJfTGludXggKyAxMTYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NldHJlc2dpZCAoX19OUl9MaW51eCArIDExNykKICNkZWZpbmUgX19OUl9nZXRyZXNnaWQgKF9fTlJfTGludXggKyAxMTgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2dldHBnaWQgKF9fTlJfTGludXggKyAxMTkpCiAjZGVmaW5lIF9fTlJfc2V0ZnN1aWQgKF9fTlJfTGludXggKyAxMjApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NldGZzZ2lkIChfX05SX0xpbnV4ICsgMTIxKQogI2RlZmluZSBfX05SX2dldHNpZCAoX19OUl9MaW51eCArIDEyMikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfY2FwZ2V0IChfX05SX0xpbnV4ICsgMTIzKQogI2RlZmluZSBfX05SX2NhcHNldCAoX19OUl9MaW51eCArIDEyNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcnRfc2lncGVuZGluZyAoX19OUl9MaW51eCArIDEyNSkKICNkZWZpbmUgX19OUl9ydF9zaWd0aW1lZHdhaXQgKF9fTlJfTGludXggKyAxMjYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3J0X3NpZ3F1ZXVlaW5mbyAoX19OUl9MaW51eCArIDEyNykKICNkZWZpbmUgX19OUl9ydF9zaWdzdXNwZW5kIChfX05SX0xpbnV4ICsgMTI4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zaWdhbHRzdGFjayAoX19OUl9MaW51eCArIDEyOSkKICNkZWZpbmUgX19OUl91dGltZSAoX19OUl9MaW51eCArIDEzMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbWtub2QgKF9fTlJfTGludXggKyAxMzEpCiAjZGVmaW5lIF9fTlJfcGVyc29uYWxpdHkgKF9fTlJfTGludXggKyAxMzIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3VzdGF0IChfX05SX0xpbnV4ICsgMTMzKQogI2RlZmluZSBfX05SX3N0YXRmcyAoX19OUl9MaW51eCArIDEzNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZnN0YXRmcyAoX19OUl9MaW51eCArIDEzNSkKICNkZWZpbmUgX19OUl9zeXNmcyAoX19OUl9MaW51eCArIDEzNikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZ2V0cHJpb3JpdHkgKF9fTlJfTGludXggKyAxMzcpCiAjZGVmaW5lIF9fTlJfc2V0cHJpb3JpdHkgKF9fTlJfTGludXggKyAxMzgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NjaGVkX3NldHBhcmFtIChfX05SX0xpbnV4ICsgMTM5KQogI2RlZmluZSBfX05SX3NjaGVkX2dldHBhcmFtIChfX05SX0xpbnV4ICsgMTQwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zY2hlZF9zZXRzY2hlZHVsZXIgKF9fTlJfTGludXggKyAxNDEpCiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0c2NoZWR1bGVyIChfX05SX0xpbnV4ICsgMTQyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zY2hlZF9nZXRfcHJpb3JpdHlfbWF4IChfX05SX0xpbnV4ICsgMTQzKQogI2RlZmluZSBfX05SX3NjaGVkX2dldF9wcmlvcml0eV9taW4gKF9fTlJfTGludXggKyAxNDQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NjaGVkX3JyX2dldF9pbnRlcnZhbCAoX19OUl9MaW51eCArIDE0NSkKICNkZWZpbmUgX19OUl9tbG9jayAoX19OUl9MaW51eCArIDE0NikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbXVubG9jayAoX19OUl9MaW51eCArIDE0NykKICNkZWZpbmUgX19OUl9tbG9ja2FsbCAoX19OUl9MaW51eCArIDE0OCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbXVubG9ja2FsbCAoX19OUl9MaW51eCArIDE0OSkKICNkZWZpbmUgX19OUl92aGFuZ3VwIChfX05SX0xpbnV4ICsgMTUwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9waXZvdF9yb290IChfX05SX0xpbnV4ICsgMTUxKQogI2RlZmluZSBfX05SX19zeXNjdGwgKF9fTlJfTGludXggKyAxNTIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3ByY3RsIChfX05SX0xpbnV4ICsgMTUzKQogI2RlZmluZSBfX05SX2FkanRpbWV4IChfX05SX0xpbnV4ICsgMTU0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZXRybGltaXQgKF9fTlJfTGludXggKyAxNTUpCiAjZGVmaW5lIF9fTlJfY2hyb290IChfX05SX0xpbnV4ICsgMTU2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zeW5jIChfX05SX0xpbnV4ICsgMTU3KQogI2RlZmluZSBfX05SX2FjY3QgKF9fTlJfTGludXggKyAxNTgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NldHRpbWVvZmRheSAoX19OUl9MaW51eCArIDE1OSkKICNkZWZpbmUgX19OUl9tb3VudCAoX19OUl9MaW51eCArIDE2MCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdW1vdW50MiAoX19OUl9MaW51eCArIDE2MSkKICNkZWZpbmUgX19OUl9zd2Fwb24gKF9fTlJfTGludXggKyAxNjIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3N3YXBvZmYgKF9fTlJfTGludXggKyAxNjMpCiAjZGVmaW5lIF9fTlJfcmVib290IChfX05SX0xpbnV4ICsgMTY0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZXRob3N0bmFtZSAoX19OUl9MaW51eCArIDE2NSkKICNkZWZpbmUgX19OUl9zZXRkb21haW5uYW1lIChfX05SX0xpbnV4ICsgMTY2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9jcmVhdGVfbW9kdWxlIChfX05SX0xpbnV4ICsgMTY3KQogI2RlZmluZSBfX05SX2luaXRfbW9kdWxlIChfX05SX0xpbnV4ICsgMTY4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9kZWxldGVfbW9kdWxlIChfX05SX0xpbnV4ICsgMTY5KQogI2RlZmluZSBfX05SX2dldF9rZXJuZWxfc3ltcyAoX19OUl9MaW51eCArIDE3MCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcXVlcnlfbW9kdWxlIChfX05SX0xpbnV4ICsgMTcxKQogI2RlZmluZSBfX05SX3F1b3RhY3RsIChfX05SX0xpbnV4ICsgMTcyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9uZnNzZXJ2Y3RsIChfX05SX0xpbnV4ICsgMTczKQogI2RlZmluZSBfX05SX2dldHBtc2cgKF9fTlJfTGludXggKyAxNzQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3B1dHBtc2cgKF9fTlJfTGludXggKyAxNzUpCiAjZGVmaW5lIF9fTlJfYWZzX3N5c2NhbGwgKF9fTlJfTGludXggKyAxNzYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3Jlc2VydmVkMTc3IChfX05SX0xpbnV4ICsgMTc3KQogI2RlZmluZSBfX05SX2dldHRpZCAoX19OUl9MaW51eCArIDE3OCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcmVhZGFoZWFkIChfX05SX0xpbnV4ICsgMTc5KQogI2RlZmluZSBfX05SX3NldHhhdHRyIChfX05SX0xpbnV4ICsgMTgwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9sc2V0eGF0dHIgKF9fTlJfTGludXggKyAxODEpCiAjZGVmaW5lIF9fTlJfZnNldHhhdHRyIChfX05SX0xpbnV4ICsgMTgyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9nZXR4YXR0ciAoX19OUl9MaW51eCArIDE4MykKICNkZWZpbmUgX19OUl9sZ2V0eGF0dHIgKF9fTlJfTGludXggKyAxODQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2ZnZXR4YXR0ciAoX19OUl9MaW51eCArIDE4NSkKICNkZWZpbmUgX19OUl9saXN0eGF0dHIgKF9fTlJfTGludXggKyAxODYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2xsaXN0eGF0dHIgKF9fTlJfTGludXggKyAxODcpCiAjZGVmaW5lIF9fTlJfZmxpc3R4YXR0ciAoX19OUl9MaW51eCArIDE4OCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcmVtb3ZleGF0dHIgKF9fTlJfTGludXggKyAxODkpCiAjZGVmaW5lIF9fTlJfbHJlbW92ZXhhdHRyIChfX05SX0xpbnV4ICsgMTkwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9mcmVtb3ZleGF0dHIgKF9fTlJfTGludXggKyAxOTEpCiAjZGVmaW5lIF9fTlJfdGtpbGwgKF9fTlJfTGludXggKyAxOTIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3Jlc2VydmVkMTkzIChfX05SX0xpbnV4ICsgMTkzKQogI2RlZmluZSBfX05SX2Z1dGV4IChfX05SX0xpbnV4ICsgMTk0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zY2hlZF9zZXRhZmZpbml0eSAoX19OUl9MaW51eCArIDE5NSkKICNkZWZpbmUgX19OUl9zY2hlZF9nZXRhZmZpbml0eSAoX19OUl9MaW51eCArIDE5NikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfY2FjaGVmbHVzaCAoX19OUl9MaW51eCArIDE5NykKICNkZWZpbmUgX19OUl9jYWNoZWN0bCAoX19OUl9MaW51eCArIDE5OCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc3lzbWlwcyAoX19OUl9MaW51eCArIDE5OSkKICNkZWZpbmUgX19OUl9pb19zZXR1cCAoX19OUl9MaW51eCArIDIwMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfaW9fZGVzdHJveSAoX19OUl9MaW51eCArIDIwMSkKICNkZWZpbmUgX19OUl9pb19nZXRldmVudHMgKF9fTlJfTGludXggKyAyMDIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2lvX3N1Ym1pdCAoX19OUl9MaW51eCArIDIwMykKICNkZWZpbmUgX19OUl9pb19jYW5jZWwgKF9fTlJfTGludXggKyAyMDQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2V4aXRfZ3JvdXAgKF9fTlJfTGludXggKyAyMDUpCiAjZGVmaW5lIF9fTlJfbG9va3VwX2Rjb29raWUgKF9fTlJfTGludXggKyAyMDYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Vwb2xsX2NyZWF0ZSAoX19OUl9MaW51eCArIDIwNykKICNkZWZpbmUgX19OUl9lcG9sbF9jdGwgKF9fTlJfTGludXggKyAyMDgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Vwb2xsX3dhaXQgKF9fTlJfTGludXggKyAyMDkpCiAjZGVmaW5lIF9fTlJfcmVtYXBfZmlsZV9wYWdlcyAoX19OUl9MaW51eCArIDIxMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcnRfc2lncmV0dXJuIChfX05SX0xpbnV4ICsgMjExKQogI2RlZmluZSBfX05SX2ZjbnRsNjQgKF9fTlJfTGludXggKyAyMTIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NldF90aWRfYWRkcmVzcyAoX19OUl9MaW51eCArIDIxMykKICNkZWZpbmUgX19OUl9yZXN0YXJ0X3N5c2NhbGwgKF9fTlJfTGludXggKyAyMTQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NlbXRpbWVkb3AgKF9fTlJfTGludXggKyAyMTUpCiAjZGVmaW5lIF9fTlJfZmFkdmlzZTY0IChfX05SX0xpbnV4ICsgMjE2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zdGF0ZnM2NCAoX19OUl9MaW51eCArIDIxNykKICNkZWZpbmUgX19OUl9mc3RhdGZzNjQgKF9fTlJfTGludXggKyAyMTgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NlbmRmaWxlNjQgKF9fTlJfTGludXggKyAyMTkpCiAjZGVmaW5lIF9fTlJfdGltZXJfY3JlYXRlIChfX05SX0xpbnV4ICsgMjIwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl90aW1lcl9zZXR0aW1lIChfX05SX0xpbnV4ICsgMjIxKQogI2RlZmluZSBfX05SX3RpbWVyX2dldHRpbWUgKF9fTlJfTGludXggKyAyMjIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3RpbWVyX2dldG92ZXJydW4gKF9fTlJfTGludXggKyAyMjMpCiAjZGVmaW5lIF9fTlJfdGltZXJfZGVsZXRlIChfX05SX0xpbnV4ICsgMjI0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9jbG9ja19zZXR0aW1lIChfX05SX0xpbnV4ICsgMjI1KQogI2RlZmluZSBfX05SX2Nsb2NrX2dldHRpbWUgKF9fTlJfTGludXggKyAyMjYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Nsb2NrX2dldHJlcyAoX19OUl9MaW51eCArIDIyNykKICNkZWZpbmUgX19OUl9jbG9ja19uYW5vc2xlZXAgKF9fTlJfTGludXggKyAyMjgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3Rna2lsbCAoX19OUl9MaW51eCArIDIyOSkKICNkZWZpbmUgX19OUl91dGltZXMgKF9fTlJfTGludXggKyAyMzApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21iaW5kIChfX05SX0xpbnV4ICsgMjMxKQogI2RlZmluZSBfX05SX2dldF9tZW1wb2xpY3kgKF9fTlJfTGludXggKyAyMzIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NldF9tZW1wb2xpY3kgKF9fTlJfTGludXggKyAyMzMpCiAjZGVmaW5lIF9fTlJfbXFfb3BlbiAoX19OUl9MaW51eCArIDIzNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbXFfdW5saW5rIChfX05SX0xpbnV4ICsgMjM1KQogI2RlZmluZSBfX05SX21xX3RpbWVkc2VuZCAoX19OUl9MaW51eCArIDIzNikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbXFfdGltZWRyZWNlaXZlIChfX05SX0xpbnV4ICsgMjM3KQogI2RlZmluZSBfX05SX21xX25vdGlmeSAoX19OUl9MaW51eCArIDIzOCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbXFfZ2V0c2V0YXR0ciAoX19OUl9MaW51eCArIDIzOSkKICNkZWZpbmUgX19OUl92c2VydmVyIChfX05SX0xpbnV4ICsgMjQwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl93YWl0aWQgKF9fTlJfTGludXggKyAyNDEpCiAjZGVmaW5lIF9fTlJfYWRkX2tleSAoX19OUl9MaW51eCArIDI0MykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcmVxdWVzdF9rZXkgKF9fTlJfTGludXggKyAyNDQpCiAjZGVmaW5lIF9fTlJfa2V5Y3RsIChfX05SX0xpbnV4ICsgMjQ1KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZXRfdGhyZWFkX2FyZWEgKF9fTlJfTGludXggKyAyNDYpCiAjZGVmaW5lIF9fTlJfaW5vdGlmeV9pbml0IChfX05SX0xpbnV4ICsgMjQ3KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9pbm90aWZ5X2FkZF93YXRjaCAoX19OUl9MaW51eCArIDI0OCkKICNkZWZpbmUgX19OUl9pbm90aWZ5X3JtX3dhdGNoIChfX05SX0xpbnV4ICsgMjQ5KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9taWdyYXRlX3BhZ2VzIChfX05SX0xpbnV4ICsgMjUwKQogI2RlZmluZSBfX05SX29wZW5hdCAoX19OUl9MaW51eCArIDI1MSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbWtkaXJhdCAoX19OUl9MaW51eCArIDI1MikKICNkZWZpbmUgX19OUl9ta25vZGF0IChfX05SX0xpbnV4ICsgMjUzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9mY2hvd25hdCAoX19OUl9MaW51eCArIDI1NCkKICNkZWZpbmUgX19OUl9mdXRpbWVzYXQgKF9fTlJfTGludXggKyAyNTUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX25ld2ZzdGF0YXQgKF9fTlJfTGludXggKyAyNTYpCiAjZGVmaW5lIF9fTlJfdW5saW5rYXQgKF9fTlJfTGludXggKyAyNTcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3JlbmFtZWF0IChfX05SX0xpbnV4ICsgMjU4KQogI2RlZmluZSBfX05SX2xpbmthdCAoX19OUl9MaW51eCArIDI1OSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc3ltbGlua2F0IChfX05SX0xpbnV4ICsgMjYwKQogI2RlZmluZSBfX05SX3JlYWRsaW5rYXQgKF9fTlJfTGludXggKyAyNjEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2ZjaG1vZGF0IChfX05SX0xpbnV4ICsgMjYyKQogI2RlZmluZSBfX05SX2ZhY2Nlc3NhdCAoX19OUl9MaW51eCArIDI2MykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcHNlbGVjdDYgKF9fTlJfTGludXggKyAyNjQpCiAjZGVmaW5lIF9fTlJfcHBvbGwgKF9fTlJfTGludXggKyAyNjUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3Vuc2hhcmUgKF9fTlJfTGludXggKyAyNjYpCiAjZGVmaW5lIF9fTlJfc3BsaWNlIChfX05SX0xpbnV4ICsgMjY3KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zeW5jX2ZpbGVfcmFuZ2UgKF9fTlJfTGludXggKyAyNjgpCiAjZGVmaW5lIF9fTlJfdGVlIChfX05SX0xpbnV4ICsgMjY5KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl92bXNwbGljZSAoX19OUl9MaW51eCArIDI3MCkKICNkZWZpbmUgX19OUl9tb3ZlX3BhZ2VzIChfX05SX0xpbnV4ICsgMjcxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZXRfcm9idXN0X2xpc3QgKF9fTlJfTGludXggKyAyNzIpCiAjZGVmaW5lIF9fTlJfZ2V0X3JvYnVzdF9saXN0IChfX05SX0xpbnV4ICsgMjczKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9rZXhlY19sb2FkIChfX05SX0xpbnV4ICsgMjc0KQogI2RlZmluZSBfX05SX2dldGNwdSAoX19OUl9MaW51eCArIDI3NSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZXBvbGxfcHdhaXQgKF9fTlJfTGludXggKyAyNzYpCiAjZGVmaW5lIF9fTlJfaW9wcmlvX3NldCAoX19OUl9MaW51eCArIDI3NykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfaW9wcmlvX2dldCAoX19OUl9MaW51eCArIDI3OCkKICNkZWZpbmUgX19OUl91dGltZW5zYXQgKF9fTlJfTGludXggKyAyNzkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NpZ25hbGZkIChfX05SX0xpbnV4ICsgMjgwKQogI2RlZmluZSBfX05SX3RpbWVyZmQgKF9fTlJfTGludXggKyAyODEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2V2ZW50ZmQgKF9fTlJfTGludXggKyAyODIpCiAjZGVmaW5lIF9fTlJfZmFsbG9jYXRlIChfX05SX0xpbnV4ICsgMjgzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl90aW1lcmZkX2NyZWF0ZSAoX19OUl9MaW51eCArIDI4NCkKICNkZWZpbmUgX19OUl90aW1lcmZkX2dldHRpbWUgKF9fTlJfTGludXggKyAyODUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3RpbWVyZmRfc2V0dGltZSAoX19OUl9MaW51eCArIDI4NikKICNkZWZpbmUgX19OUl9zaWduYWxmZDQgKF9fTlJfTGludXggKyAyODcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2V2ZW50ZmQyIChfX05SX0xpbnV4ICsgMjg4KQogI2RlZmluZSBfX05SX2Vwb2xsX2NyZWF0ZTEgKF9fTlJfTGludXggKyAyODkpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2R1cDMgKF9fTlJfTGludXggKyAyOTApCiAjZGVmaW5lIF9fTlJfcGlwZTIgKF9fTlJfTGludXggKyAyOTEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2lub3RpZnlfaW5pdDEgKF9fTlJfTGludXggKyAyOTIpCiAjZGVmaW5lIF9fTlJfcHJlYWR2IChfX05SX0xpbnV4ICsgMjkzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9wd3JpdGV2IChfX05SX0xpbnV4ICsgMjk0KQogI2RlZmluZSBfX05SX3J0X3Rnc2lncXVldWVpbmZvIChfX05SX0xpbnV4ICsgMjk1KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9wZXJmX2V2ZW50X29wZW4gKF9fTlJfTGludXggKyAyOTYpCiAjZGVmaW5lIF9fTlJfYWNjZXB0NCAoX19OUl9MaW51eCArIDI5NykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcmVjdm1tc2cgKF9fTlJfTGludXggKyAyOTgpCiAjZGVmaW5lIF9fTlJfZ2V0ZGVudHM2NCAoX19OUl9MaW51eCArIDI5OSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZmFub3RpZnlfaW5pdCAoX19OUl9MaW51eCArIDMwMCkKICNkZWZpbmUgX19OUl9mYW5vdGlmeV9tYXJrIChfX05SX0xpbnV4ICsgMzAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9wcmxpbWl0NjQgKF9fTlJfTGludXggKyAzMDIpCiAjZGVmaW5lIF9fTlJfbmFtZV90b19oYW5kbGVfYXQgKF9fTlJfTGludXggKyAzMDMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX29wZW5fYnlfaGFuZGxlX2F0IChfX05SX0xpbnV4ICsgMzA0KQogI2RlZmluZSBfX05SX2Nsb2NrX2FkanRpbWUgKF9fTlJfTGludXggKyAzMDUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3N5bmNmcyAoX19OUl9MaW51eCArIDMwNikKICNkZWZpbmUgX19OUl9zZW5kbW1zZyAoX19OUl9MaW51eCArIDMwNykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2V0bnMgKF9fTlJfTGludXggKyAzMDgpCiAjZGVmaW5lIF9fTlJfcHJvY2Vzc192bV9yZWFkdiAoX19OUl9MaW51eCArIDMwOSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcHJvY2Vzc192bV93cml0ZXYgKF9fTlJfTGludXggKyAzMTApCiAjZGVmaW5lIF9fTlJfa2NtcCAoX19OUl9MaW51eCArIDMxMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZmluaXRfbW9kdWxlIChfX05SX0xpbnV4ICsgMzEyKQogI2RlZmluZSBfX05SX3NjaGVkX3NldGF0dHIgKF9fTlJfTGludXggKyAzMTMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NjaGVkX2dldGF0dHIgKF9fTlJfTGludXggKyAzMTQpCi0jZGVmaW5lIF9fTlJfTGludXhfc3lzY2FsbHMgMzE0CisjZGVmaW5lIF9fTlJfcmVuYW1lYXQyIChfX05SX0xpbnV4ICsgMzE1KQorI2RlZmluZSBfX05SX3NlY2NvbXAgKF9fTlJfTGludXggKyAzMTYpCisjZGVmaW5lIF9fTlJfZ2V0cmFuZG9tIChfX05SX0xpbnV4ICsgMzE3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9tZW1mZF9jcmVhdGUgKF9fTlJfTGludXggKyAzMTgpCisjZGVmaW5lIF9fTlJfYnBmIChfX05SX0xpbnV4ICsgMzE5KQorI2RlZmluZSBfX05SX0xpbnV4X3N5c2NhbGxzIDMxOQogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX04zMl9MaW51eCA2MDAwCi0jZGVmaW5lIF9fTlJfTjMyX0xpbnV4X3N5c2NhbGxzIDMxNAorI2RlZmluZSBfX05SX04zMl9MaW51eF9zeXNjYWxscyAzMTkKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vYS5vdXQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vYS5vdXQuaAppbmRleCBmYTI4N2I1Li5kMWE0NzQwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2Eub3V0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9hLm91dC5oCkBAIC0xOCwyMiArMTgsMjEgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfQVNNX1g4Nl9BX09VVF9ICiAjZGVmaW5lIF9BU01fWDg2X0FfT1VUX0gKLXN0cnVjdCBleGVjCi17CitzdHJ1Y3QgZXhlYyB7CisgIHVuc2lnbmVkIGludCBhX2luZm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBhX2luZm87Ci0gdW5zaWduZWQgYV90ZXh0OwotIHVuc2lnbmVkIGFfZGF0YTsKLSB1bnNpZ25lZCBhX2JzczsKKyAgdW5zaWduZWQgYV90ZXh0OworICB1bnNpZ25lZCBhX2RhdGE7CisgIHVuc2lnbmVkIGFfYnNzOworICB1bnNpZ25lZCBhX3N5bXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGFfc3ltczsKLSB1bnNpZ25lZCBhX2VudHJ5OwotIHVuc2lnbmVkIGFfdHJzaXplOwotIHVuc2lnbmVkIGFfZHJzaXplOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgYV9lbnRyeTsKKyAgdW5zaWduZWQgYV90cnNpemU7CisgIHVuc2lnbmVkIGFfZHJzaXplOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5fVFJTSVpFKGEpICgoYSkuYV90cnNpemUpCiAjZGVmaW5lIE5fRFJTSVpFKGEpICgoYSkuYV9kcnNpemUpCiAjZGVmaW5lIE5fU1lNU0laRShhKSAoKGEpLmFfc3ltcykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2Jvb3RwYXJhbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9ib290cGFyYW0uaAppbmRleCBiNTc2ODI1Li4yNzIwMWQ2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2Jvb3RwYXJhbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vYm9vdHBhcmFtLmgKQEAgLTI4LDE3ICsyOCwxNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFNRElTS19QUk9NUFRfRkxBRyAweDgwMDAKICNkZWZpbmUgUkFNRElTS19MT0FEX0ZMQUcgMHg0MDAwCi0jZGVmaW5lIExPQURFRF9ISUdIICgxPDwwKQotI2RlZmluZSBRVUlFVF9GTEFHICgxPDw1KQorI2RlZmluZSBMT0FERURfSElHSCAoMSA8PCAwKQorI2RlZmluZSBRVUlFVF9GTEFHICgxIDw8IDUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLRUVQX1NFR01FTlRTICgxPDw2KQotI2RlZmluZSBDQU5fVVNFX0hFQVAgKDE8PDcpCi0jZGVmaW5lIFhMRl9LRVJORUxfNjQgKDE8PDApCi0jZGVmaW5lIFhMRl9DQU5fQkVfTE9BREVEX0FCT1ZFXzRHICgxPDwxKQorI2RlZmluZSBLRUVQX1NFR01FTlRTICgxIDw8IDYpCisjZGVmaW5lIENBTl9VU0VfSEVBUCAoMSA8PCA3KQorI2RlZmluZSBYTEZfS0VSTkVMXzY0ICgxIDw8IDApCisjZGVmaW5lIFhMRl9DQU5fQkVfTE9BREVEX0FCT1ZFXzRHICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBYTEZfRUZJX0hBTkRPVkVSXzMyICgxPDwyKQotI2RlZmluZSBYTEZfRUZJX0hBTkRPVkVSXzY0ICgxPDwzKQotI2RlZmluZSBYTEZfRUZJX0tFWEVDICgxPDw0KQorI2RlZmluZSBYTEZfRUZJX0hBTkRPVkVSXzMyICgxIDw8IDIpCisjZGVmaW5lIFhMRl9FRklfSEFORE9WRVJfNjQgKDEgPDwgMykKKyNkZWZpbmUgWExGX0VGSV9LRVhFQyAoMSA8PCA0KQogI2lmbmRlZiBfX0FTU0VNQkxZX18KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KQEAgLTUxLDEzOCArNTEsMTM4IEBACiAjaW5jbHVkZSA8dmlkZW8vZWRpZC5oPgogc3RydWN0IHNldHVwX2RhdGEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBuZXh0OwotIF9fdTMyIHR5cGU7Ci0gX191MzIgbGVuOwotIF9fdTggZGF0YVswXTsKKyAgX191NjQgbmV4dDsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgbGVuOworICBfX3U4IGRhdGFbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzZXR1cF9oZWFkZXIgewotIF9fdTggc2V0dXBfc2VjdHM7Ci0gX191MTYgcm9vdF9mbGFnczsKKyAgX191OCBzZXR1cF9zZWN0czsKKyAgX191MTYgcm9vdF9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3lzc2l6ZTsKLSBfX3UxNiByYW1fc2l6ZTsKLSBfX3UxNiB2aWRfbW9kZTsKLSBfX3UxNiByb290X2RldjsKKyAgX191MzIgc3lzc2l6ZTsKKyAgX191MTYgcmFtX3NpemU7CisgIF9fdTE2IHZpZF9tb2RlOworICBfX3UxNiByb290X2RldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgYm9vdF9mbGFnOwotIF9fdTE2IGp1bXA7Ci0gX191MzIgaGVhZGVyOwotIF9fdTE2IHZlcnNpb247CisgIF9fdTE2IGJvb3RfZmxhZzsKKyAgX191MTYganVtcDsKKyAgX191MzIgaGVhZGVyOworICBfX3UxNiB2ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZWFsbW9kZV9zd3RjaDsKLSBfX3UxNiBzdGFydF9zeXM7Ci0gX191MTYga2VybmVsX3ZlcnNpb247Ci0gX191OCB0eXBlX29mX2xvYWRlcjsKKyAgX191MzIgcmVhbG1vZGVfc3d0Y2g7CisgIF9fdTE2IHN0YXJ0X3N5czsKKyAgX191MTYga2VybmVsX3ZlcnNpb247CisgIF9fdTggdHlwZV9vZl9sb2FkZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbG9hZGZsYWdzOwotIF9fdTE2IHNldHVwX21vdmVfc2l6ZTsKLSBfX3UzMiBjb2RlMzJfc3RhcnQ7Ci0gX191MzIgcmFtZGlza19pbWFnZTsKKyAgX191OCBsb2FkZmxhZ3M7CisgIF9fdTE2IHNldHVwX21vdmVfc2l6ZTsKKyAgX191MzIgY29kZTMyX3N0YXJ0OworICBfX3UzMiByYW1kaXNrX2ltYWdlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByYW1kaXNrX3NpemU7Ci0gX191MzIgYm9vdHNlY3Rfa2x1ZGdlOwotIF9fdTE2IGhlYXBfZW5kX3B0cjsKLSBfX3U4IGV4dF9sb2FkZXJfdmVyOworICBfX3UzMiByYW1kaXNrX3NpemU7CisgIF9fdTMyIGJvb3RzZWN0X2tsdWRnZTsKKyAgX191MTYgaGVhcF9lbmRfcHRyOworICBfX3U4IGV4dF9sb2FkZXJfdmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGV4dF9sb2FkZXJfdHlwZTsKLSBfX3UzMiBjbWRfbGluZV9wdHI7Ci0gX191MzIgaW5pdHJkX2FkZHJfbWF4OwotIF9fdTMyIGtlcm5lbF9hbGlnbm1lbnQ7CisgIF9fdTggZXh0X2xvYWRlcl90eXBlOworICBfX3UzMiBjbWRfbGluZV9wdHI7CisgIF9fdTMyIGluaXRyZF9hZGRyX21heDsKKyAgX191MzIga2VybmVsX2FsaWdubWVudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZWxvY2F0YWJsZV9rZXJuZWw7Ci0gX191OCBtaW5fYWxpZ25tZW50OwotIF9fdTE2IHhsb2FkZmxhZ3M7Ci0gX191MzIgY21kbGluZV9zaXplOworICBfX3U4IHJlbG9jYXRhYmxlX2tlcm5lbDsKKyAgX191OCBtaW5fYWxpZ25tZW50OworICBfX3UxNiB4bG9hZGZsYWdzOworICBfX3UzMiBjbWRsaW5lX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhcmR3YXJlX3N1YmFyY2g7Ci0gX191NjQgaGFyZHdhcmVfc3ViYXJjaF9kYXRhOwotIF9fdTMyIHBheWxvYWRfb2Zmc2V0OwotIF9fdTMyIHBheWxvYWRfbGVuZ3RoOworICBfX3UzMiBoYXJkd2FyZV9zdWJhcmNoOworICBfX3U2NCBoYXJkd2FyZV9zdWJhcmNoX2RhdGE7CisgIF9fdTMyIHBheWxvYWRfb2Zmc2V0OworICBfX3UzMiBwYXlsb2FkX2xlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc2V0dXBfZGF0YTsKLSBfX3U2NCBwcmVmX2FkZHJlc3M7Ci0gX191MzIgaW5pdF9zaXplOwotIF9fdTMyIGhhbmRvdmVyX29mZnNldDsKKyAgX191NjQgc2V0dXBfZGF0YTsKKyAgX191NjQgcHJlZl9hZGRyZXNzOworICBfX3UzMiBpbml0X3NpemU7CisgIF9fdTMyIGhhbmRvdmVyX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHN5c19kZXNjX3RhYmxlIHsKLSBfX3UxNiBsZW5ndGg7Ci0gX191OCB0YWJsZVsxNF07CisgIF9fdTE2IGxlbmd0aDsKKyAgX191OCB0YWJsZVsxNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBvbHBjX29md19oZWFkZXIgewotIF9fdTMyIG9md19tYWdpYzsKLSBfX3UzMiBvZndfdmVyc2lvbjsKKyAgX191MzIgb2Z3X21hZ2ljOworICBfX3UzMiBvZndfdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2lmX2hhbmRsZXI7Ci0gX191MzIgaXJxX2Rlc2NfdGFibGU7CisgIF9fdTMyIGNpZl9oYW5kbGVyOworICBfX3UzMiBpcnFfZGVzY190YWJsZTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgZWZpX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlZmlfbG9hZGVyX3NpZ25hdHVyZTsKLSBfX3UzMiBlZmlfc3lzdGFiOwotIF9fdTMyIGVmaV9tZW1kZXNjX3NpemU7Ci0gX191MzIgZWZpX21lbWRlc2NfdmVyc2lvbjsKKyAgX191MzIgZWZpX2xvYWRlcl9zaWduYXR1cmU7CisgIF9fdTMyIGVmaV9zeXN0YWI7CisgIF9fdTMyIGVmaV9tZW1kZXNjX3NpemU7CisgIF9fdTMyIGVmaV9tZW1kZXNjX3ZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGVmaV9tZW1tYXA7Ci0gX191MzIgZWZpX21lbW1hcF9zaXplOwotIF9fdTMyIGVmaV9zeXN0YWJfaGk7Ci0gX191MzIgZWZpX21lbW1hcF9oaTsKKyAgX191MzIgZWZpX21lbW1hcDsKKyAgX191MzIgZWZpX21lbW1hcF9zaXplOworICBfX3UzMiBlZmlfc3lzdGFiX2hpOworICBfX3UzMiBlZmlfbWVtbWFwX2hpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgYm9vdF9wYXJhbXMgewotIHN0cnVjdCBzY3JlZW5faW5mbyBzY3JlZW5faW5mbzsKLSBzdHJ1Y3QgYXBtX2Jpb3NfaW5mbyBhcG1fYmlvc19pbmZvOworICBzdHJ1Y3Qgc2NyZWVuX2luZm8gc2NyZWVuX2luZm87CisgIHN0cnVjdCBhcG1fYmlvc19pbmZvIGFwbV9iaW9zX2luZm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggX3BhZDJbNF07Ci0gX191NjQgdGJvb3RfYWRkcjsKLSBzdHJ1Y3QgaXN0X2luZm8gaXN0X2luZm87Ci0gX191OCBfcGFkM1sxNl07CisgIF9fdTggX3BhZDJbNF07CisgIF9fdTY0IHRib290X2FkZHI7CisgIHN0cnVjdCBpc3RfaW5mbyBpc3RfaW5mbzsKKyAgX191OCBfcGFkM1sxNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaGQwX2luZm9bMTZdOwotIF9fdTggaGQxX2luZm9bMTZdOwotIHN0cnVjdCBzeXNfZGVzY190YWJsZSBzeXNfZGVzY190YWJsZTsKLSBzdHJ1Y3Qgb2xwY19vZndfaGVhZGVyIG9scGNfb2Z3X2hlYWRlcjsKKyAgX191OCBoZDBfaW5mb1sxNl07CisgIF9fdTggaGQxX2luZm9bMTZdOworICBzdHJ1Y3Qgc3lzX2Rlc2NfdGFibGUgc3lzX2Rlc2NfdGFibGU7CisgIHN0cnVjdCBvbHBjX29md19oZWFkZXIgb2xwY19vZndfaGVhZGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBleHRfcmFtZGlza19pbWFnZTsKLSBfX3UzMiBleHRfcmFtZGlza19zaXplOwotIF9fdTMyIGV4dF9jbWRfbGluZV9wdHI7Ci0gX191OCBfcGFkNFsxMTZdOworICBfX3UzMiBleHRfcmFtZGlza19pbWFnZTsKKyAgX191MzIgZXh0X3JhbWRpc2tfc2l6ZTsKKyAgX191MzIgZXh0X2NtZF9saW5lX3B0cjsKKyAgX191OCBfcGFkNFsxMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZWRpZF9pbmZvIGVkaWRfaW5mbzsKLSBzdHJ1Y3QgZWZpX2luZm8gZWZpX2luZm87Ci0gX191MzIgYWx0X21lbV9rOwotIF9fdTMyIHNjcmF0Y2g7CisgIHN0cnVjdCBlZGlkX2luZm8gZWRpZF9pbmZvOworICBzdHJ1Y3QgZWZpX2luZm8gZWZpX2luZm87CisgIF9fdTMyIGFsdF9tZW1fazsKKyAgX191MzIgc2NyYXRjaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBlODIwX2VudHJpZXM7Ci0gX191OCBlZGRidWZfZW50cmllczsKLSBfX3U4IGVkZF9tYnJfc2lnX2J1Zl9lbnRyaWVzOwotIF9fdTgga2JkX3N0YXR1czsKKyAgX191OCBlODIwX2VudHJpZXM7CisgIF9fdTggZWRkYnVmX2VudHJpZXM7CisgIF9fdTggZWRkX21icl9zaWdfYnVmX2VudHJpZXM7CisgIF9fdTgga2JkX3N0YXR1czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBfcGFkNVszXTsKLSBfX3U4IHNlbnRpbmVsOwotIF9fdTggX3BhZDZbMV07Ci0gc3RydWN0IHNldHVwX2hlYWRlciBoZHI7CisgIF9fdTggX3BhZDVbM107CisgIF9fdTggc2VudGluZWw7CisgIF9fdTggX3BhZDZbMV07CisgIHN0cnVjdCBzZXR1cF9oZWFkZXIgaGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IF9wYWQ3WzB4MjkwLTB4MWYxLXNpemVvZihzdHJ1Y3Qgc2V0dXBfaGVhZGVyKV07Ci0gX191MzIgZWRkX21icl9zaWdfYnVmZmVyW0VERF9NQlJfU0lHX01BWF07Ci0gc3RydWN0IGU4MjBlbnRyeSBlODIwX21hcFtFODIwTUFYXTsKLSBfX3U4IF9wYWQ4WzQ4XTsKKyAgX191OCBfcGFkN1sweDI5MCAtIDB4MWYxIC0gc2l6ZW9mKHN0cnVjdCBzZXR1cF9oZWFkZXIpXTsKKyAgX191MzIgZWRkX21icl9zaWdfYnVmZmVyW0VERF9NQlJfU0lHX01BWF07CisgIHN0cnVjdCBlODIwZW50cnkgZTgyMF9tYXBbRTgyME1BWF07CisgIF9fdTggX3BhZDhbNDhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZWRkX2luZm8gZWRkYnVmW0VERE1BWE5SXTsKLSBfX3U4IF9wYWQ5WzI3Nl07CisgIHN0cnVjdCBlZGRfaW5mbyBlZGRidWZbRURETUFYTlJdOworICBfX3U4IF9wYWQ5WzI3Nl07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFg4Nl9TVUJBUkNIX1BDID0gMCwKLSBYODZfU1VCQVJDSF9MR1VFU1QsCi0gWDg2X1NVQkFSQ0hfWEVOLAotIFg4Nl9TVUJBUkNIX0lOVEVMX01JRCwKKyAgWDg2X1NVQkFSQ0hfUEMgPSAwLAorICBYODZfU1VCQVJDSF9MR1VFU1QsCisgIFg4Nl9TVUJBUkNIX1hFTiwKKyAgWDg2X1NVQkFSQ0hfSU5URUxfTUlELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYODZfU1VCQVJDSF9DRTQxMDAsCi0gWDg2X05SX1NVQkFSQ0hTLAorICBYODZfU1VCQVJDSF9DRTQxMDAsCisgIFg4Nl9OUl9TVUJBUkNIUywKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2RlYnVncmVnLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2RlYnVncmVnLmgKaW5kZXggYzhiMzBhNS4uMmM2MzcwNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9kZWJ1Z3JlZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vZGVidWdyZWcuaApAQCAtMjksNyArMjksNyBAQAogI2RlZmluZSBEUl9UUkFQMSAoMHgyKQogI2RlZmluZSBEUl9UUkFQMiAoMHg0KQogI2RlZmluZSBEUl9UUkFQMyAoMHg4KQotI2RlZmluZSBEUl9UUkFQX0JJVFMgKERSX1RSQVAwfERSX1RSQVAxfERSX1RSQVAyfERSX1RSQVAzKQorI2RlZmluZSBEUl9UUkFQX0JJVFMgKERSX1RSQVAwIHwgRFJfVFJBUDEgfCBEUl9UUkFQMiB8IERSX1RSQVAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJfU1RFUCAoMHg0MDAwKQogI2RlZmluZSBEUl9TV0lUQ0ggKDB4ODAwMCkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vZTgyMC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9lODIwLmgKaW5kZXggYjcwODRjZi4uZDRjYjM4OSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9lODIwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9lODIwLmgKQEAgLTM0LDE1ICszNCwxNSBAQAogI2lmbmRlZiBfX0FTU0VNQkxZX18KICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGU4MjBlbnRyeSB7Ci0gX191NjQgYWRkcjsKKyAgX191NjQgYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc2l6ZTsKLSBfX3UzMiB0eXBlOworICBfX3U2NCBzaXplOworICBfX3UzMiB0eXBlOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBlODIwbWFwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbnJfbWFwOwotIHN0cnVjdCBlODIwZW50cnkgbWFwW0U4MjBfWF9NQVhdOworICBfX3UzMiBucl9tYXA7CisgIHN0cnVjdCBlODIwZW50cnkgbWFwW0U4MjBfWF9NQVhdOwogfTsKICNkZWZpbmUgSVNBX1NUQVJUX0FERFJFU1MgMHhhMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vaHlwZXJ2LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2h5cGVydi5oCmluZGV4IDk2NWU4MGEuLmU4Njk1MDQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vaHlwZXJ2LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9oeXBlcnYuaApAQCAtMTE3LDEyICsxMTcsMTIgQEAKICNkZWZpbmUgSFZfWDY0X01TUl9IWVBFUkNBTExfRU5BQkxFIDB4MDAwMDAwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEhWX1g2NF9NU1JfSFlQRVJDQUxMX1BBR0VfQUREUkVTU19TSElGVCAxMgotI2RlZmluZSBIVl9YNjRfTVNSX0hZUEVSQ0FMTF9QQUdFX0FERFJFU1NfTUFTSyAgICh+KCgxdWxsIDw8IEhWX1g2NF9NU1JfSFlQRVJDQUxMX1BBR0VfQUREUkVTU19TSElGVCkgLSAxKSkKKyNkZWZpbmUgSFZfWDY0X01TUl9IWVBFUkNBTExfUEFHRV9BRERSRVNTX01BU0sgKH4oKDF1bGwgPDwgSFZfWDY0X01TUl9IWVBFUkNBTExfUEFHRV9BRERSRVNTX1NISUZUKSAtIDEpKQogI2RlZmluZSBIVl9YNjRfSFZfTk9USUZZX0xPTkdfU1BJTl9XQUlUIDB4MDAwOAogI2RlZmluZSBIVl9YNjRfTVNSX0FQSUNfQVNTSVNUX1BBR0VfRU5BQkxFIDB4MDAwMDAwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEhWX1g2NF9NU1JfQVBJQ19BU1NJU1RfUEFHRV9BRERSRVNTX1NISUZUIDEyCi0jZGVmaW5lIEhWX1g2NF9NU1JfQVBJQ19BU1NJU1RfUEFHRV9BRERSRVNTX01BU0sgICAofigoMXVsbCA8PCBIVl9YNjRfTVNSX0FQSUNfQVNTSVNUX1BBR0VfQUREUkVTU19TSElGVCkgLSAxKSkKKyNkZWZpbmUgSFZfWDY0X01TUl9BUElDX0FTU0lTVF9QQUdFX0FERFJFU1NfTUFTSyAofigoMXVsbCA8PCBIVl9YNjRfTVNSX0FQSUNfQVNTSVNUX1BBR0VfQUREUkVTU19TSElGVCkgLSAxKSkKICNkZWZpbmUgSFZfWDY0X01TUl9UU0NfUkVGRVJFTkNFX0VOQUJMRSAweDAwMDAwMDAxCiAjZGVmaW5lIEhWX1g2NF9NU1JfVFNDX1JFRkVSRU5DRV9BRERSRVNTX1NISUZUIDEyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTM4LDExICsxMzgsMTEgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEhWX1NUQVRVU19JTlNVRkZJQ0lFTlRfQlVGRkVSUyAxOQogdHlwZWRlZiBzdHJ1Y3QgX0hWX1JFRkVSRU5DRV9UU0NfUEFHRSB7Ci0gX191MzIgdHNjX3NlcXVlbmNlOwotIF9fdTMyIHJlczE7CisgIF9fdTMyIHRzY19zZXF1ZW5jZTsKKyAgX191MzIgcmVzMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdHNjX3NjYWxlOwotIF9fczY0IHRzY19vZmZzZXQ7Ci19IEhWX1JFRkVSRU5DRV9UU0NfUEFHRSwgKlBIVl9SRUZFUkVOQ0VfVFNDX1BBR0U7CisgIF9fdTY0IHRzY19zY2FsZTsKKyAgX19zNjQgdHNjX29mZnNldDsKK30gSFZfUkVGRVJFTkNFX1RTQ19QQUdFLCAqIFBIVl9SRUZFUkVOQ0VfVFNDX1BBR0U7CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2lzdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9pc3QuaAppbmRleCAzNmQzYzNkLi4yN2RiODlmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2lzdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vaXN0LmgKQEAgLTIxLDEwICsyMSwxMCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgaXN0X2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzaWduYXR1cmU7Ci0gX191MzIgY29tbWFuZDsKLSBfX3UzMiBldmVudDsKLSBfX3UzMiBwZXJmX2xldmVsOworICBfX3UzMiBzaWduYXR1cmU7CisgIF9fdTMyIGNvbW1hbmQ7CisgIF9fdTMyIGV2ZW50OworICBfX3UzMiBwZXJmX2xldmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20va3ZtLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2t2bS5oCmluZGV4IDIwMGQ4MTguLjZiNmI2ZjIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20va3ZtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9rdm0uaApAQCAtMzgsMzI2ICszOCwzMjkgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBGX1ZFQ1RPUiAxNAogI2RlZmluZSBNRl9WRUNUT1IgMTYKKyNkZWZpbmUgQUNfVkVDVE9SIDE3CiAjZGVmaW5lIE1DX1ZFQ1RPUiAxOAotI2RlZmluZSBfX0tWTV9IQVZFX1BJVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgWE1fVkVDVE9SIDE5CisjZGVmaW5lIFZFX1ZFQ1RPUiAyMAorI2RlZmluZSBfX0tWTV9IQVZFX1BJVAogI2RlZmluZSBfX0tWTV9IQVZFX0lPQVBJQworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19LVk1fSEFWRV9JUlFfTElORQogI2RlZmluZSBfX0tWTV9IQVZFX01TSQogI2RlZmluZSBfX0tWTV9IQVZFX1VTRVJfTk1JCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0tWTV9IQVZFX0dVRVNUX0RFQlVHCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0tWTV9IQVZFX01TSVgKICNkZWZpbmUgX19LVk1fSEFWRV9NQ0UKICNkZWZpbmUgX19LVk1fSEFWRV9QSVRfU1RBVEUyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0tWTV9IQVZFX1hFTl9IVk0KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fS1ZNX0hBVkVfVkNQVV9FVkVOVFMKICNkZWZpbmUgX19LVk1fSEFWRV9ERUJVR1JFR1MKICNkZWZpbmUgX19LVk1fSEFWRV9YU0FWRQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19LVk1fSEFWRV9YQ1JTCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0tWTV9IQVZFX1JFQURPTkxZX01FTQogI2RlZmluZSBLVk1fTlJfSU5URVJSVVBUUyAyNTYKIHN0cnVjdCBrdm1fbWVtb3J5X2FsaWFzIHsKKyAgX191MzIgc2xvdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2xvdDsKLSBfX3UzMiBmbGFnczsKLSBfX3U2NCBndWVzdF9waHlzX2FkZHI7Ci0gX191NjQgbWVtb3J5X3NpemU7CisgIF9fdTMyIGZsYWdzOworICBfX3U2NCBndWVzdF9waHlzX2FkZHI7CisgIF9fdTY0IG1lbW9yeV9zaXplOworICBfX3U2NCB0YXJnZXRfcGh5c19hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB0YXJnZXRfcGh5c19hZGRyOwogfTsKIHN0cnVjdCBrdm1fcGljX3N0YXRlIHsKLSBfX3U4IGxhc3RfaXJyOworICBfX3U4IGxhc3RfaXJyOworICBfX3U4IGlycjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpcnI7Ci0gX191OCBpbXI7Ci0gX191OCBpc3I7Ci0gX191OCBwcmlvcml0eV9hZGQ7CisgIF9fdTggaW1yOworICBfX3U4IGlzcjsKKyAgX191OCBwcmlvcml0eV9hZGQ7CisgIF9fdTggaXJxX2Jhc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaXJxX2Jhc2U7Ci0gX191OCByZWFkX3JlZ19zZWxlY3Q7Ci0gX191OCBwb2xsOwotIF9fdTggc3BlY2lhbF9tYXNrOworICBfX3U4IHJlYWRfcmVnX3NlbGVjdDsKKyAgX191OCBwb2xsOworICBfX3U4IHNwZWNpYWxfbWFzazsKKyAgX191OCBpbml0X3N0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGluaXRfc3RhdGU7Ci0gX191OCBhdXRvX2VvaTsKLSBfX3U4IHJvdGF0ZV9vbl9hdXRvX2VvaTsKLSBfX3U4IHNwZWNpYWxfZnVsbHlfbmVzdGVkX21vZGU7CisgIF9fdTggYXV0b19lb2k7CisgIF9fdTggcm90YXRlX29uX2F1dG9fZW9pOworICBfX3U4IHNwZWNpYWxfZnVsbHlfbmVzdGVkX21vZGU7CisgIF9fdTggaW5pdDQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW5pdDQ7Ci0gX191OCBlbGNyOwotIF9fdTggZWxjcl9tYXNrOworICBfX3U4IGVsY3I7CisgIF9fdTggZWxjcl9tYXNrOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9JT0FQSUNfTlVNX1BJTlMgMjQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX2lvYXBpY19zdGF0ZSB7Ci0gX191NjQgYmFzZV9hZGRyZXNzOwotIF9fdTMyIGlvcmVnc2VsOworICBfX3U2NCBiYXNlX2FkZHJlc3M7CisgIF9fdTMyIGlvcmVnc2VsOworICBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWQ7Ci0gX191MzIgaXJyOwotIF9fdTMyIHBhZDsKLSB1bmlvbiB7CisgIF9fdTMyIGlycjsKKyAgX191MzIgcGFkOworICB1bmlvbiB7CisgICAgX191NjQgYml0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYml0czsKLSBzdHJ1Y3QgewotIF9fdTggdmVjdG9yOwotIF9fdTggZGVsaXZlcnlfbW9kZTozOworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IHZlY3RvcjsKKyAgICAgIF9fdTggZGVsaXZlcnlfbW9kZSA6IDM7CisgICAgICBfX3U4IGRlc3RfbW9kZSA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGVzdF9tb2RlOjE7Ci0gX191OCBkZWxpdmVyeV9zdGF0dXM6MTsKLSBfX3U4IHBvbGFyaXR5OjE7Ci0gX191OCByZW1vdGVfaXJyOjE7CisgICAgICBfX3U4IGRlbGl2ZXJ5X3N0YXR1cyA6IDE7CisgICAgICBfX3U4IHBvbGFyaXR5IDogMTsKKyAgICAgIF9fdTggcmVtb3RlX2lyciA6IDE7CisgICAgICBfX3U4IHRyaWdfbW9kZSA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHJpZ19tb2RlOjE7Ci0gX191OCBtYXNrOjE7Ci0gX191OCByZXNlcnZlOjc7Ci0gX191OCByZXNlcnZlZFs0XTsKKyAgICAgIF9fdTggbWFzayA6IDE7CisgICAgICBfX3U4IHJlc2VydmUgOiA3OworICAgICAgX191OCByZXNlcnZlZFs0XTsKKyAgICAgIF9fdTggZGVzdF9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkZXN0X2lkOwotIH0gZmllbGRzOwotIH0gcmVkaXJ0YmxbS1ZNX0lPQVBJQ19OVU1fUElOU107CisgICAgfSBmaWVsZHM7CisgIH0gcmVkaXJ0YmxbS1ZNX0lPQVBJQ19OVU1fUElOU107CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0lSUUNISVBfUElDX01BU1RFUiAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fSVJRQ0hJUF9QSUNfU0xBVkUgMQogI2RlZmluZSBLVk1fSVJRQ0hJUF9JT0FQSUMgMgogI2RlZmluZSBLVk1fTlJfSVJRQ0hJUFMgMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fcmVncyB7Ci0gX191NjQgcmF4LCByYngsIHJjeCwgcmR4OwotIF9fdTY0IHJzaSwgcmRpLCByc3AsIHJicDsKLSBfX3U2NCByOCwgcjksIHIxMCwgcjExOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByMTIsIHIxMywgcjE0LCByMTU7Ci0gX191NjQgcmlwLCByZmxhZ3M7CisgIF9fdTY0IHJheCwgcmJ4LCByY3gsIHJkeDsKKyAgX191NjQgcnNpLCByZGksIHJzcCwgcmJwOworICBfX3U2NCByOCwgcjksIHIxMCwgcjExOworICBfX3U2NCByMTIsIHIxMywgcjE0LCByMTU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCByaXAsIHJmbGFnczsKIH07CiAjZGVmaW5lIEtWTV9BUElDX1JFR19TSVpFIDB4NDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9sYXBpY19zdGF0ZSB7Ci0gY2hhciByZWdzW0tWTV9BUElDX1JFR19TSVpFXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGNoYXIgcmVnc1tLVk1fQVBJQ19SRUdfU0laRV07CiB9Owogc3RydWN0IGt2bV9zZWdtZW50IHsKKyAgX191NjQgYmFzZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYmFzZTsKLSBfX3UzMiBsaW1pdDsKLSBfX3UxNiBzZWxlY3RvcjsKLSBfX3U4IHR5cGU7CisgIF9fdTMyIGxpbWl0OworICBfX3UxNiBzZWxlY3RvcjsKKyAgX191OCB0eXBlOworICBfX3U4IHByZXNlbnQsIGRwbCwgZGIsIHMsIGwsIGcsIGF2bDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwcmVzZW50LCBkcGwsIGRiLCBzLCBsLCBnLCBhdmw7Ci0gX191OCB1bnVzYWJsZTsKLSBfX3U4IHBhZGRpbmc7CisgIF9fdTggdW51c2FibGU7CisgIF9fdTggcGFkZGluZzsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9kdGFibGUgewotIF9fdTY0IGJhc2U7Ci0gX191MTYgbGltaXQ7Ci0gX191MTYgcGFkZGluZ1szXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IGJhc2U7CisgIF9fdTE2IGxpbWl0OworICBfX3UxNiBwYWRkaW5nWzNdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX3NyZWdzIHsKLSBzdHJ1Y3Qga3ZtX3NlZ21lbnQgY3MsIGRzLCBlcywgZnMsIGdzLCBzczsKLSBzdHJ1Y3Qga3ZtX3NlZ21lbnQgdHIsIGxkdDsKKyAgc3RydWN0IGt2bV9zZWdtZW50IGNzLCBkcywgZXMsIGZzLCBncywgc3M7CisgIHN0cnVjdCBrdm1fc2VnbWVudCB0ciwgbGR0OworICBzdHJ1Y3Qga3ZtX2R0YWJsZSBnZHQsIGlkdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGt2bV9kdGFibGUgZ2R0LCBpZHQ7Ci0gX191NjQgY3IwLCBjcjIsIGNyMywgY3I0LCBjcjg7Ci0gX191NjQgZWZlcjsKLSBfX3U2NCBhcGljX2Jhc2U7CisgIF9fdTY0IGNyMCwgY3IyLCBjcjMsIGNyNCwgY3I4OworICBfX3U2NCBlZmVyOworICBfX3U2NCBhcGljX2Jhc2U7CisgIF9fdTY0IGludGVycnVwdF9iaXRtYXBbKEtWTV9OUl9JTlRFUlJVUFRTICsgNjMpIC8gNjRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBpbnRlcnJ1cHRfYml0bWFwWyhLVk1fTlJfSU5URVJSVVBUUyArIDYzKSAvIDY0XTsKIH07CiBzdHJ1Y3Qga3ZtX2ZwdSB7Ci0gX191OCBmcHJbOF1bMTZdOworICBfX3U4IGZwcls4XVsxNl07CisgIF9fdTE2IGZjdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZmN3OwotIF9fdTE2IGZzdzsKLSBfX3U4IGZ0d3g7Ci0gX191OCBwYWQxOworICBfX3UxNiBmc3c7CisgIF9fdTggZnR3eDsKKyAgX191OCBwYWQxOworICBfX3UxNiBsYXN0X29wY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbGFzdF9vcGNvZGU7Ci0gX191NjQgbGFzdF9pcDsKLSBfX3U2NCBsYXN0X2RwOwotIF9fdTggeG1tWzE2XVsxNl07CisgIF9fdTY0IGxhc3RfaXA7CisgIF9fdTY0IGxhc3RfZHA7CisgIF9fdTggeG1tWzE2XVsxNl07CisgIF9fdTMyIG14Y3NyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBteGNzcjsKLSBfX3UzMiBwYWQyOworICBfX3UzMiBwYWQyOwogfTsKIHN0cnVjdCBrdm1fbXNyX2VudHJ5IHsKKyAgX191MzIgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGluZGV4OwotIF9fdTMyIHJlc2VydmVkOwotIF9fdTY0IGRhdGE7CisgIF9fdTMyIHJlc2VydmVkOworICBfX3U2NCBkYXRhOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX21zcnMgewotIF9fdTMyIG5tc3JzOwotIF9fdTMyIHBhZDsKLSBzdHJ1Y3Qga3ZtX21zcl9lbnRyeSBlbnRyaWVzWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgbm1zcnM7CisgIF9fdTMyIHBhZDsKKyAgc3RydWN0IGt2bV9tc3JfZW50cnkgZW50cmllc1swXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9tc3JfbGlzdCB7Ci0gX191MzIgbm1zcnM7Ci0gX191MzIgaW5kaWNlc1swXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIG5tc3JzOworICBfX3UzMiBpbmRpY2VzWzBdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX2NwdWlkX2VudHJ5IHsKLSBfX3UzMiBmdW5jdGlvbjsKLSBfX3UzMiBlYXg7CisgIF9fdTMyIGZ1bmN0aW9uOworICBfX3UzMiBlYXg7CisgIF9fdTMyIGVieDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZWJ4OwotIF9fdTMyIGVjeDsKLSBfX3UzMiBlZHg7Ci0gX191MzIgcGFkZGluZzsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGVjeDsKKyAgX191MzIgZWR4OworICBfX3UzMiBwYWRkaW5nOwogfTsKLXN0cnVjdCBrdm1fY3B1aWQgewotIF9fdTMyIG5lbnQ7Ci0gX191MzIgcGFkZGluZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGt2bV9jcHVpZF9lbnRyeSBlbnRyaWVzWzBdOworc3RydWN0IGt2bV9jcHVpZCB7CisgIF9fdTMyIG5lbnQ7CisgIF9fdTMyIHBhZGRpbmc7CisgIHN0cnVjdCBrdm1fY3B1aWRfZW50cnkgZW50cmllc1swXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGt2bV9jcHVpZF9lbnRyeTIgewotIF9fdTMyIGZ1bmN0aW9uOworICBfX3UzMiBmdW5jdGlvbjsKKyAgX191MzIgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGluZGV4OwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIGVheDsKLSBfX3UzMiBlYng7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBlYXg7CisgIF9fdTMyIGVieDsKKyAgX191MzIgZWN4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlY3g7Ci0gX191MzIgZWR4OwotIF9fdTMyIHBhZGRpbmdbM107CisgIF9fdTMyIGVkeDsKKyAgX191MzIgcGFkZGluZ1szXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ1BVSURfRkxBR19TSUdOSUZDQU5UX0lOREVYIEJJVCgwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NQVUlEX0ZMQUdfU1RBVEVGVUxfRlVOQyBCSVQoMSkKICNkZWZpbmUgS1ZNX0NQVUlEX0ZMQUdfU1RBVEVfUkVBRF9ORVhUIEJJVCgyKQogc3RydWN0IGt2bV9jcHVpZDIgeworICBfX3UzMiBuZW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBuZW50OwotIF9fdTMyIHBhZGRpbmc7Ci0gc3RydWN0IGt2bV9jcHVpZF9lbnRyeTIgZW50cmllc1swXTsKKyAgX191MzIgcGFkZGluZzsKKyAgc3RydWN0IGt2bV9jcHVpZF9lbnRyeTIgZW50cmllc1swXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9waXRfY2hhbm5lbF9zdGF0ZSB7Ci0gX191MzIgY291bnQ7Ci0gX191MTYgbGF0Y2hlZF9jb3VudDsKLSBfX3U4IGNvdW50X2xhdGNoZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc3RhdHVzX2xhdGNoZWQ7Ci0gX191OCBzdGF0dXM7Ci0gX191OCByZWFkX3N0YXRlOwotIF9fdTggd3JpdGVfc3RhdGU7CisgIF9fdTMyIGNvdW50OworICBfX3UxNiBsYXRjaGVkX2NvdW50OworICBfX3U4IGNvdW50X2xhdGNoZWQ7CisgIF9fdTggc3RhdHVzX2xhdGNoZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggd3JpdGVfbGF0Y2g7Ci0gX191OCByd19tb2RlOwotIF9fdTggbW9kZTsKLSBfX3U4IGJjZDsKKyAgX191OCBzdGF0dXM7CisgIF9fdTggcmVhZF9zdGF0ZTsKKyAgX191OCB3cml0ZV9zdGF0ZTsKKyAgX191OCB3cml0ZV9sYXRjaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBnYXRlOwotIF9fczY0IGNvdW50X2xvYWRfdGltZTsKKyAgX191OCByd19tb2RlOworICBfX3U4IG1vZGU7CisgIF9fdTggYmNkOworICBfX3U4IGdhdGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3M2NCBjb3VudF9sb2FkX3RpbWU7CiB9Owogc3RydWN0IGt2bV9kZWJ1Z19leGl0X2FyY2ggeworICBfX3UzMiBleGNlcHRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGV4Y2VwdGlvbjsKLSBfX3UzMiBwYWQ7Ci0gX191NjQgcGM7Ci0gX191NjQgZHI2OworICBfX3UzMiBwYWQ7CisgIF9fdTY0IHBjOworICBfX3U2NCBkcjY7CisgIF9fdTY0IGRyNzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZHI3OwogfTsKICNkZWZpbmUgS1ZNX0dVRVNUREJHX1VTRV9TV19CUCAweDAwMDEwMDAwCiAjZGVmaW5lIEtWTV9HVUVTVERCR19VU0VfSFdfQlAgMHgwMDAyMDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dVRVNUREJHX0lOSkVDVF9EQiAweDAwMDQwMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fR1VFU1REQkdfSU5KRUNUX0JQIDB4MDAwODAwMDAKIHN0cnVjdCBrdm1fZ3Vlc3RfZGVidWdfYXJjaCB7Ci0gX191NjQgZGVidWdyZWdbOF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBkZWJ1Z3JlZ1s4XTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9waXRfc3RhdGUgewotIHN0cnVjdCBrdm1fcGl0X2NoYW5uZWxfc3RhdGUgY2hhbm5lbHNbM107CisgIHN0cnVjdCBrdm1fcGl0X2NoYW5uZWxfc3RhdGUgY2hhbm5lbHNbM107CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1BJVF9GTEFHU19IUEVUX0xFR0FDWSAweDAwMDAwMDAxCi1zdHJ1Y3Qga3ZtX3BpdF9zdGF0ZTIgewotIHN0cnVjdCBrdm1fcGl0X2NoYW5uZWxfc3RhdGUgY2hhbm5lbHNbM107Ci0gX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzldOworc3RydWN0IGt2bV9waXRfc3RhdGUyIHsKKyAgc3RydWN0IGt2bV9waXRfY2hhbm5lbF9zdGF0ZSBjaGFubmVsc1szXTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHJlc2VydmVkWzldOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qga3ZtX3JlaW5qZWN0X2NvbnRyb2wgewotIF9fdTggcGl0X3JlaW5qZWN0OworICBfX3U4IHBpdF9yZWluamVjdDsKKyAgX191OCByZXNlcnZlZFszMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWRbMzFdOwogfTsKICNkZWZpbmUgS1ZNX1ZDUFVFVkVOVF9WQUxJRF9OTUlfUEVORElORyAweDAwMDAwMDAxCiAjZGVmaW5lIEtWTV9WQ1BVRVZFTlRfVkFMSURfU0lQSV9WRUNUT1IgMHgwMDAwMDAwMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1ZDUFVFVkVOVF9WQUxJRF9TSEFET1cgMHgwMDAwMDAwNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1g4Nl9TSEFET1dfSU5UX01PVl9TUyAweDAxCiAjZGVmaW5lIEtWTV9YODZfU0hBRE9XX0lOVF9TVEkgMHgwMgogc3RydWN0IGt2bV92Y3B1X2V2ZW50cyB7CisgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX191OCBpbmplY3RlZDsKLSBfX3U4IG5yOwotIF9fdTggaGFzX2Vycm9yX2NvZGU7CisgICAgX191OCBpbmplY3RlZDsKKyAgICBfX3U4IG5yOworICAgIF9fdTggaGFzX2Vycm9yX2NvZGU7CisgICAgX191OCBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGFkOwotIF9fdTMyIGVycm9yX2NvZGU7Ci0gfSBleGNlcHRpb247Ci0gc3RydWN0IHsKKyAgICBfX3UzMiBlcnJvcl9jb2RlOworICB9IGV4Y2VwdGlvbjsKKyAgc3RydWN0IHsKKyAgICBfX3U4IGluamVjdGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGluamVjdGVkOwotIF9fdTggbnI7Ci0gX191OCBzb2Z0OwotIF9fdTggc2hhZG93OworICAgIF9fdTggbnI7CisgICAgX191OCBzb2Z0OworICAgIF9fdTggc2hhZG93OworICB9IGludGVycnVwdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBpbnRlcnJ1cHQ7Ci0gc3RydWN0IHsKLSBfX3U4IGluamVjdGVkOwotIF9fdTggcGVuZGluZzsKKyAgc3RydWN0IHsKKyAgICBfX3U4IGluamVjdGVkOworICAgIF9fdTggcGVuZGluZzsKKyAgICBfX3U4IG1hc2tlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtYXNrZWQ7Ci0gX191OCBwYWQ7Ci0gfSBubWk7Ci0gX191MzIgc2lwaV92ZWN0b3I7CisgICAgX191OCBwYWQ7CisgIH0gbm1pOworICBfX3UzMiBzaXBpX3ZlY3RvcjsKKyAgX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHJlc2VydmVkWzEwXTsKKyAgX191MzIgcmVzZXJ2ZWRbMTBdOwogfTsKIHN0cnVjdCBrdm1fZGVidWdyZWdzIHsKKyAgX191NjQgZGJbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRiWzRdOwotIF9fdTY0IGRyNjsKLSBfX3U2NCBkcjc7Ci0gX191NjQgZmxhZ3M7CisgIF9fdTY0IGRyNjsKKyAgX191NjQgZHI3OworICBfX3U2NCBmbGFnczsKKyAgX191NjQgcmVzZXJ2ZWRbOV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc2VydmVkWzldOwogfTsKIHN0cnVjdCBrdm1feHNhdmUgewotIF9fdTMyIHJlZ2lvblsxMDI0XTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHJlZ2lvblsxMDI0XTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fTUFYX1hDUlMgMTYKIHN0cnVjdCBrdm1feGNyIHsKLSBfX3UzMiB4Y3I7CisgIF9fdTMyIHhjcjsKKyAgX191MzIgcmVzZXJ2ZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkOwotIF9fdTY0IHZhbHVlOworICBfX3U2NCB2YWx1ZTsKIH07CiBzdHJ1Y3Qga3ZtX3hjcnMgeworICBfX3UzMiBucl94Y3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBucl94Y3JzOwotIF9fdTMyIGZsYWdzOwotIHN0cnVjdCBrdm1feGNyIHhjcnNbS1ZNX01BWF9YQ1JTXTsKLSBfX3U2NCBwYWRkaW5nWzE2XTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGZsYWdzOworICBzdHJ1Y3Qga3ZtX3hjciB4Y3JzW0tWTV9NQVhfWENSU107CisgIF9fdTY0IHBhZGRpbmdbMTZdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX3N5bmNfcmVncyB7CiB9OwogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9rdm1fcGFyYS5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9rdm1fcGFyYS5oCmluZGV4IDdmYjVlZmUuLjk2OGQ1YmIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20va3ZtX3BhcmEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2t2bV9wYXJhLmgKQEAgLTQ2LDE1ICs0NiwxNSBAQAogI2RlZmluZSBNU1JfS1ZNX1BWX0VPSV9FTiAweDRiNTY0ZDA0CiBzdHJ1Y3Qga3ZtX3N0ZWFsX3RpbWUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzdGVhbDsKLSBfX3UzMiB2ZXJzaW9uOwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHBhZFsxMl07CisgIF9fdTY0IHN0ZWFsOworICBfX3UzMiB2ZXJzaW9uOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgcGFkWzEyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBLVk1fU1RFQUxfQUxJR05NRU5UX0JJVFMgNQotI2RlZmluZSBLVk1fU1RFQUxfVkFMSURfQklUUyAoKC0xVUxMIDw8IChLVk1fU1RFQUxfQUxJR05NRU5UX0JJVFMgKyAxKSkpCi0jZGVmaW5lIEtWTV9TVEVBTF9SRVNFUlZFRF9NQVNLICgoKDEgPDwgS1ZNX1NURUFMX0FMSUdOTUVOVF9CSVRTKSAtIDEgKSA8PCAxKQorI2RlZmluZSBLVk1fU1RFQUxfVkFMSURfQklUUyAoKC0gMVVMTCA8PCAoS1ZNX1NURUFMX0FMSUdOTUVOVF9CSVRTICsgMSkpKQorI2RlZmluZSBLVk1fU1RFQUxfUkVTRVJWRURfTUFTSyAoKCgxIDw8IEtWTV9TVEVBTF9BTElHTk1FTlRfQklUUykgLSAxKSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX01BWF9NTVVfT1BfQkFUQ0ggMzIKICNkZWZpbmUgS1ZNX0FTWU5DX1BGX0VOQUJMRUQgKDEgPDwgMCkKQEAgLTY0LDMyICs2NCwzMiBAQAogI2RlZmluZSBLVk1fTU1VX09QX0ZMVVNIX1RMQiAyCiAjZGVmaW5lIEtWTV9NTVVfT1BfUkVMRUFTRV9QVCAzCiBzdHJ1Y3Qga3ZtX21tdV9vcF9oZWFkZXIgewotIF9fdTMyIG9wOworICBfX3UzMiBvcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGFkOworICBfX3UzMiBwYWQ7CiB9Owogc3RydWN0IGt2bV9tbXVfb3Bfd3JpdGVfcHRlIHsKLSBzdHJ1Y3Qga3ZtX21tdV9vcF9oZWFkZXIgaGVhZGVyOworICBzdHJ1Y3Qga3ZtX21tdV9vcF9oZWFkZXIgaGVhZGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBwdGVfcGh5czsKLSBfX3U2NCBwdGVfdmFsOworICBfX3U2NCBwdGVfcGh5czsKKyAgX191NjQgcHRlX3ZhbDsKIH07CiBzdHJ1Y3Qga3ZtX21tdV9vcF9mbHVzaF90bGIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qga3ZtX21tdV9vcF9oZWFkZXIgaGVhZGVyOworICBzdHJ1Y3Qga3ZtX21tdV9vcF9oZWFkZXIgaGVhZGVyOwogfTsKIHN0cnVjdCBrdm1fbW11X29wX3JlbGVhc2VfcHQgewotIHN0cnVjdCBrdm1fbW11X29wX2hlYWRlciBoZWFkZXI7CisgIHN0cnVjdCBrdm1fbW11X29wX2hlYWRlciBoZWFkZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHB0X3BoeXM7CisgIF9fdTY0IHB0X3BoeXM7CiB9OwogI2RlZmluZSBLVk1fUFZfUkVBU09OX1BBR0VfTk9UX1BSRVNFTlQgMQogI2RlZmluZSBLVk1fUFZfUkVBU09OX1BBR0VfUkVBRFkgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fdmNwdV9wdl9hcGZfZGF0YSB7Ci0gX191MzIgcmVhc29uOwotIF9fdTggcGFkWzYwXTsKLSBfX3UzMiBlbmFibGVkOworICBfX3UzMiByZWFzb247CisgIF9fdTggcGFkWzYwXTsKKyAgX191MzIgZW5hYmxlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBLVk1fUFZfRU9JX0JJVCAwCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2t2bV9wZXJmLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2t2bV9wZXJmLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDMwMWRlMgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20va3ZtX3BlcmYuaApAQCAtMCwwICsxLDMxIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9BU01fWDg2X0tWTV9QRVJGX0gKKyNkZWZpbmUgX0FTTV9YODZfS1ZNX1BFUkZfSAorI2luY2x1ZGUgPGFzbS9zdm0uaD4KKyNpbmNsdWRlIDxhc20vdm14Lmg+CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2luY2x1ZGUgPGFzbS9rdm0uaD4KKyNkZWZpbmUgREVDT0RFX1NUUl9MRU4gMjAKKyNkZWZpbmUgVkNQVV9JRCAidmNwdV9pZCIKKyNkZWZpbmUgS1ZNX0VOVFJZX1RSQUNFICJrdm06a3ZtX2VudHJ5IgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0VYSVRfVFJBQ0UgImt2bTprdm1fZXhpdCIKKyNkZWZpbmUgS1ZNX0VYSVRfUkVBU09OICJleGl0X3JlYXNvbiIKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9sZHQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vbGR0LmgKaW5kZXggZmY4ODc2MC4uYzkwMWZlZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9sZHQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL2xkdC5oCkBAIC0yMywyMCArMjMsMjAgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZuZGVmIF9fQVNTRU1CTFlfXwogc3RydWN0IHVzZXJfZGVzYyB7Ci0gdW5zaWduZWQgaW50IGVudHJ5X251bWJlcjsKLSB1bnNpZ25lZCBpbnQgYmFzZV9hZGRyOworICB1bnNpZ25lZCBpbnQgZW50cnlfbnVtYmVyOworICB1bnNpZ25lZCBpbnQgYmFzZV9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbGltaXQ7Ci0gdW5zaWduZWQgaW50IHNlZ18zMmJpdDoxOwotIHVuc2lnbmVkIGludCBjb250ZW50czoyOwotIHVuc2lnbmVkIGludCByZWFkX2V4ZWNfb25seToxOworICB1bnNpZ25lZCBpbnQgbGltaXQ7CisgIHVuc2lnbmVkIGludCBzZWdfMzJiaXQgOiAxOworICB1bnNpZ25lZCBpbnQgY29udGVudHMgOiAyOworICB1bnNpZ25lZCBpbnQgcmVhZF9leGVjX29ubHkgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbGltaXRfaW5fcGFnZXM6MTsKLSB1bnNpZ25lZCBpbnQgc2VnX25vdF9wcmVzZW50OjE7Ci0gdW5zaWduZWQgaW50IHVzZWFibGU6MTsKKyAgdW5zaWduZWQgaW50IGxpbWl0X2luX3BhZ2VzIDogMTsKKyAgdW5zaWduZWQgaW50IHNlZ19ub3RfcHJlc2VudCA6IDE7CisgIHVuc2lnbmVkIGludCB1c2VhYmxlIDogMTsKICNpZmRlZiBfX3g4Nl82NF9fCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBsbToxOworICB1bnNpZ25lZCBpbnQgbG0gOiAxOwogI2VuZGlmCiB9OwogI2RlZmluZSBNT0RJRllfTERUX0NPTlRFTlRTX0RBVEEgMApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9tY2UuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vbWNlLmgKaW5kZXggNDhjMWIzNS4uZGNlNDE5NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9tY2UuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL21jZS5oCkBAIC0yMiwyOSArMjIsMjkgQEAKICNpbmNsdWRlIDxhc20vaW9jdGxzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG1jZSB7Ci0gX191NjQgc3RhdHVzOwotIF9fdTY0IG1pc2M7Ci0gX191NjQgYWRkcjsKKyAgX191NjQgc3RhdHVzOworICBfX3U2NCBtaXNjOworICBfX3U2NCBhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBtY2dzdGF0dXM7Ci0gX191NjQgaXA7Ci0gX191NjQgdHNjOwotIF9fdTY0IHRpbWU7CisgIF9fdTY0IG1jZ3N0YXR1czsKKyAgX191NjQgaXA7CisgIF9fdTY0IHRzYzsKKyAgX191NjQgdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjcHV2ZW5kb3I7Ci0gX191OCBpbmplY3RfZmxhZ3M7Ci0gX191MTYgcGFkOwotIF9fdTMyIGNwdWlkOworICBfX3U4IGNwdXZlbmRvcjsKKyAgX191OCBpbmplY3RfZmxhZ3M7CisgIF9fdTE2IHBhZDsKKyAgX191MzIgY3B1aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY3M7Ci0gX191OCBiYW5rOwotIF9fdTggY3B1OwotIF9fdTggZmluaXNoZWQ7CisgIF9fdTggY3M7CisgIF9fdTggYmFuazsKKyAgX191OCBjcHU7CisgIF9fdTggZmluaXNoZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGV4dGNwdTsKLSBfX3UzMiBzb2NrZXRpZDsKLSBfX3UzMiBhcGljaWQ7Ci0gX191NjQgbWNnY2FwOworICBfX3UzMiBleHRjcHU7CisgIF9fdTMyIHNvY2tldGlkOworICBfX3UzMiBhcGljaWQ7CisgIF9fdTY0IG1jZ2NhcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBNQ0VfR0VUX1JFQ09SRF9MRU4gX0lPUignTScsIDEsIGludCkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vbXNyLWluZGV4LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL21zci1pbmRleC5oCmluZGV4IDZlNGNhYzcuLjIyMWNlYzIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vbXNyLWluZGV4LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9tc3ItaW5kZXguaApAQCAtMzgsMTUgKzM4LDE1IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfRUZFUl9MTVNMRSAxMwogI2RlZmluZSBfRUZFUl9GRlhTUiAxNAotI2RlZmluZSBFRkVSX1NDRSAoMTw8X0VGRVJfU0NFKQotI2RlZmluZSBFRkVSX0xNRSAoMTw8X0VGRVJfTE1FKQorI2RlZmluZSBFRkVSX1NDRSAoMSA8PCBfRUZFUl9TQ0UpCisjZGVmaW5lIEVGRVJfTE1FICgxIDw8IF9FRkVSX0xNRSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEVGRVJfTE1BICgxPDxfRUZFUl9MTUEpCi0jZGVmaW5lIEVGRVJfTlggKDE8PF9FRkVSX05YKQotI2RlZmluZSBFRkVSX1NWTUUgKDE8PF9FRkVSX1NWTUUpCi0jZGVmaW5lIEVGRVJfTE1TTEUgKDE8PF9FRkVSX0xNU0xFKQorI2RlZmluZSBFRkVSX0xNQSAoMSA8PCBfRUZFUl9MTUEpCisjZGVmaW5lIEVGRVJfTlggKDEgPDwgX0VGRVJfTlgpCisjZGVmaW5lIEVGRVJfU1ZNRSAoMSA8PCBfRUZFUl9TVk1FKQorI2RlZmluZSBFRkVSX0xNU0xFICgxIDw8IF9FRkVSX0xNU0xFKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRUZFUl9GRlhTUiAoMTw8X0VGRVJfRkZYU1IpCisjZGVmaW5lIEVGRVJfRkZYU1IgKDEgPDwgX0VGRVJfRkZYU1IpCiAjZGVmaW5lIE1TUl9JQTMyX1BFUkZDVFIwIDB4MDAwMDAwYzEKICNkZWZpbmUgTVNSX0lBMzJfUEVSRkNUUjEgMHgwMDAwMDBjMgogI2RlZmluZSBNU1JfRlNCX0ZSRVEgMHgwMDAwMDBjZApAQCAtMTYyLDE1NCArMTYyLDE1OSBAQAogI2RlZmluZSBNU1JfUFAxX1BPTElDWSAweDAwMDAwNjQyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfQ09SRV9DMV9SRVMgMHgwMDAwMDY2MAorI2RlZmluZSBNU1JfQ0M2X0RFTU9USU9OX1BPTElDWV9DT05GSUcgMHgwMDAwMDY2OAorI2RlZmluZSBNU1JfTUM2X0RFTU9USU9OX1BPTElDWV9DT05GSUcgMHgwMDAwMDY2OQogI2RlZmluZSBNU1JfQU1ENjRfTUMwX01BU0sgMHhjMDAxMDA0NAotI2RlZmluZSBNU1JfSUEzMl9NQ3hfQ1RMKHgpIChNU1JfSUEzMl9NQzBfQ1RMICsgNCooeCkpCi0jZGVmaW5lIE1TUl9JQTMyX01DeF9TVEFUVVMoeCkgKE1TUl9JQTMyX01DMF9TVEFUVVMgKyA0Kih4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1TUl9JQTMyX01DeF9BRERSKHgpIChNU1JfSUEzMl9NQzBfQUREUiArIDQqKHgpKQotI2RlZmluZSBNU1JfSUEzMl9NQ3hfTUlTQyh4KSAoTVNSX0lBMzJfTUMwX01JU0MgKyA0Kih4KSkKKyNkZWZpbmUgTVNSX0lBMzJfTUN4X0NUTCh4KSAoTVNSX0lBMzJfTUMwX0NUTCArIDQgKiAoeCkpCisjZGVmaW5lIE1TUl9JQTMyX01DeF9TVEFUVVMoeCkgKE1TUl9JQTMyX01DMF9TVEFUVVMgKyA0ICogKHgpKQorI2RlZmluZSBNU1JfSUEzMl9NQ3hfQUREUih4KSAoTVNSX0lBMzJfTUMwX0FERFIgKyA0ICogKHgpKQorI2RlZmluZSBNU1JfSUEzMl9NQ3hfTUlTQyh4KSAoTVNSX0lBMzJfTUMwX01JU0MgKyA0ICogKHgpKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0FNRDY0X01DeF9NQVNLKHgpIChNU1JfQU1ENjRfTUMwX01BU0sgKyAoeCkpCiAjZGVmaW5lIE1TUl9JQTMyX01DMF9DVEwyIDB4MDAwMDAyODAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9JQTMyX01DeF9DVEwyKHgpIChNU1JfSUEzMl9NQzBfQ1RMMiArICh4KSkKICNkZWZpbmUgTVNSX1A2X1BFUkZDVFIwIDB4MDAwMDAwYzEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9QNl9QRVJGQ1RSMSAweDAwMDAwMGMyCiAjZGVmaW5lIE1TUl9QNl9FVk5UU0VMMCAweDAwMDAwMTg2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfUDZfRVZOVFNFTDEgMHgwMDAwMDE4NwogI2RlZmluZSBNU1JfS05DX1BFUkZDVFIwIDB4MDAwMDAwMjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9LTkNfUEVSRkNUUjEgMHgwMDAwMDAyMQogI2RlZmluZSBNU1JfS05DX0VWTlRTRUwwIDB4MDAwMDAwMjgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9LTkNfRVZOVFNFTDEgMHgwMDAwMDAyOQogI2RlZmluZSBNU1JfSUEzMl9QTUMwIDB4MDAwMDA0YzEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9BTUQ2NF9QQVRDSF9MRVZFTCAweDAwMDAwMDhiCiAjZGVmaW5lIE1TUl9BTUQ2NF9UU0NfUkFUSU8gMHhjMDAwMDEwNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0FNRDY0X05CX0NGRyAweGMwMDEwMDFmCiAjZGVmaW5lIE1TUl9BTUQ2NF9QQVRDSF9MT0FERVIgMHhjMDAxMDAyMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0FNRDY0X09TVldfSURfTEVOR1RIIDB4YzAwMTAxNDAKICNkZWZpbmUgTVNSX0FNRDY0X09TVldfU1RBVFVTIDB4YzAwMTAxNDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9BTUQ2NF9MU19DRkcgMHhjMDAxMTAyMAogI2RlZmluZSBNU1JfQU1ENjRfRENfQ0ZHIDB4YzAwMTEwMjIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9BTUQ2NF9CVV9DRkcyIDB4YzAwMTEwMmEKICNkZWZpbmUgTVNSX0FNRDY0X0lCU0ZFVENIQ1RMIDB4YzAwMTEwMzAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9BTUQ2NF9JQlNGRVRDSExJTkFEIDB4YzAwMTEwMzEKICNkZWZpbmUgTVNSX0FNRDY0X0lCU0ZFVENIUEhZU0FEIDB4YzAwMTEwMzIKLSNkZWZpbmUgTVNSX0FNRDY0X0lCU0ZFVENIX1JFR19DT1VOVCAzCi0jZGVmaW5lIE1TUl9BTUQ2NF9JQlNGRVRDSF9SRUdfTUFTSyAoKDFVTDw8TVNSX0FNRDY0X0lCU0ZFVENIX1JFR19DT1VOVCktMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9BTUQ2NF9JQlNGRVRDSF9SRUdfQ09VTlQgMworI2RlZmluZSBNU1JfQU1ENjRfSUJTRkVUQ0hfUkVHX01BU0sgKCgxVUwgPDwgTVNSX0FNRDY0X0lCU0ZFVENIX1JFR19DT1VOVCkgLSAxKQogI2RlZmluZSBNU1JfQU1ENjRfSUJTT1BDVEwgMHhjMDAxMTAzMwogI2RlZmluZSBNU1JfQU1ENjRfSUJTT1BSSVAgMHhjMDAxMTAzNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0FNRDY0X0lCU09QREFUQSAweGMwMDExMDM1CiAjZGVmaW5lIE1TUl9BTUQ2NF9JQlNPUERBVEEyIDB4YzAwMTEwMzYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9BTUQ2NF9JQlNPUERBVEEzIDB4YzAwMTEwMzcKICNkZWZpbmUgTVNSX0FNRDY0X0lCU0RDTElOQUQgMHhjMDAxMTAzOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0FNRDY0X0lCU0RDUEhZU0FEIDB4YzAwMTEwMzkKICNkZWZpbmUgTVNSX0FNRDY0X0lCU09QX1JFR19DT1VOVCA3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNU1JfQU1ENjRfSUJTT1BfUkVHX01BU0sgKCgxVUw8PE1TUl9BTUQ2NF9JQlNPUF9SRUdfQ09VTlQpLTEpCisjZGVmaW5lIE1TUl9BTUQ2NF9JQlNPUF9SRUdfTUFTSyAoKDFVTCA8PCBNU1JfQU1ENjRfSUJTT1BfUkVHX0NPVU5UKSAtIDEpCiAjZGVmaW5lIE1TUl9BTUQ2NF9JQlNDVEwgMHhjMDAxMTAzYQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0FNRDY0X0lCU0JSVEFSR0VUIDB4YzAwMTEwM2IKICNkZWZpbmUgTVNSX0FNRDY0X0lCU19SRUdfQ09VTlRfTUFYIDgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9GMTZIX0wySV9QRVJGX0NUTCAweGMwMDEwMjMwCiAjZGVmaW5lIE1TUl9GMTZIX0wySV9QRVJGX0NUUiAweGMwMDEwMjMxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfRjE1SF9QRVJGX0NUTCAweGMwMDEwMjAwCiAjZGVmaW5lIE1TUl9GMTVIX1BFUkZfQ1RSIDB4YzAwMTAyMDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9GMTVIX05CX1BFUkZfQ1RMIDB4YzAwMTAyNDAKICNkZWZpbmUgTVNSX0YxNUhfTkJfUEVSRl9DVFIgMHhjMDAxMDI0MQotI2RlZmluZSBNU1JfRkFNMTBIX01NSU9fQ09ORl9CQVNFIDB4YzAwMTAwNTgKLSNkZWZpbmUgRkFNMTBIX01NSU9fQ09ORl9FTkFCTEUgKDE8PDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfRkFNMTBIX01NSU9fQ09ORl9CQVNFIDB4YzAwMTAwNTgKKyNkZWZpbmUgRkFNMTBIX01NSU9fQ09ORl9FTkFCTEUgKDEgPDwgMCkKICNkZWZpbmUgRkFNMTBIX01NSU9fQ09ORl9CVVNSQU5HRV9NQVNLIDB4ZgogI2RlZmluZSBGQU0xMEhfTU1JT19DT05GX0JVU1JBTkdFX1NISUZUIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZBTTEwSF9NTUlPX0NPTkZfQkFTRV9NQVNLIDB4ZmZmZmZmZlVMTAogI2RlZmluZSBGQU0xMEhfTU1JT19DT05GX0JBU0VfU0hJRlQgMjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9GQU0xMEhfTk9ERV9JRCAweGMwMDExMDBjCiAjZGVmaW5lIE1TUl9LOF9UT1BfTUVNMSAweGMwMDEwMDFhCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSzhfVE9QX01FTTIgMHhjMDAxMDAxZAogI2RlZmluZSBNU1JfSzhfU1lTQ0ZHIDB4YzAwMTAwMTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9LOF9JTlRfUEVORElOR19NU0cgMHhjMDAxMDA1NQogI2RlZmluZSBLOF9JTlRQX0MxRV9BQ1RJVkVfTUFTSyAweDE4MDAwMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSzhfVFNFR19BRERSIDB4YzAwMTAxMTIKICNkZWZpbmUgSzhfTVRSUkZJWFJBTkdFX0RSQU1fRU5BQkxFIDB4MDAwNDAwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEs4X01UUlJGSVhSQU5HRV9EUkFNX01PRElGWSAweDAwMDgwMDAwCiAjZGVmaW5lIEs4X01UUlJfUkRNRU1fV1JNRU1fTUFTSyAweDE4MTgxODE4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSzdfRVZOVFNFTDAgMHhjMDAxMDAwMAogI2RlZmluZSBNU1JfSzdfUEVSRkNUUjAgMHhjMDAxMDAwNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0s3X0VWTlRTRUwxIDB4YzAwMTAwMDEKICNkZWZpbmUgTVNSX0s3X1BFUkZDVFIxIDB4YzAwMTAwMDUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9LN19FVk5UU0VMMiAweGMwMDEwMDAyCiAjZGVmaW5lIE1TUl9LN19QRVJGQ1RSMiAweGMwMDEwMDA2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSzdfRVZOVFNFTDMgMHhjMDAxMDAwMwogI2RlZmluZSBNU1JfSzdfUEVSRkNUUjMgMHhjMDAxMDAwNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0s3X0NMS19DVEwgMHhjMDAxMDAxYgogI2RlZmluZSBNU1JfSzdfSFdDUiAweGMwMDEwMDE1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSzdfRklEX1ZJRF9DVEwgMHhjMDAxMDA0MQogI2RlZmluZSBNU1JfSzdfRklEX1ZJRF9TVEFUVVMgMHhjMDAxMDA0MgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0s2X1dIQ1IgMHhjMDAwMDA4MgogI2RlZmluZSBNU1JfSzZfVVdDQ1IgMHhjMDAwMDA4NQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0s2X0VQTVIgMHhjMDAwMDA4NgogI2RlZmluZSBNU1JfSzZfUFNPUiAweGMwMDAwMDg3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSzZfUEZJUiAweGMwMDAwMDg4CiAjZGVmaW5lIE1TUl9JRFRfRkNSMSAweDAwMDAwMTA3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSURUX0ZDUjIgMHgwMDAwMDEwOAogI2RlZmluZSBNU1JfSURUX0ZDUjMgMHgwMDAwMDEwOQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0lEVF9GQ1I0IDB4MDAwMDAxMGEKICNkZWZpbmUgTVNSX0lEVF9NQ1IwIDB4MDAwMDAxMTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9JRFRfTUNSMSAweDAwMDAwMTExCiAjZGVmaW5lIE1TUl9JRFRfTUNSMiAweDAwMDAwMTEyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSURUX01DUjMgMHgwMDAwMDExMwogI2RlZmluZSBNU1JfSURUX01DUjQgMHgwMDAwMDExNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0lEVF9NQ1I1IDB4MDAwMDAxMTUKICNkZWZpbmUgTVNSX0lEVF9NQ1I2IDB4MDAwMDAxMTYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9JRFRfTUNSNyAweDAwMDAwMTE3CiAjZGVmaW5lIE1TUl9JRFRfTUNSX0NUUkwgMHgwMDAwMDEyMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX1ZJQV9GQ1IgMHgwMDAwMTEwNwogI2RlZmluZSBNU1JfVklBX0xPTkdIQVVMIDB4MDAwMDExMGEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9WSUFfUk5HIDB4MDAwMDExMGIKICNkZWZpbmUgTVNSX1ZJQV9CQ1IyIDB4MDAwMDExNDcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9UTVRBX0xPTkdSVU5fQ1RSTCAweDgwODY4MDEwCiAjZGVmaW5lIE1TUl9UTVRBX0xPTkdSVU5fRkxBR1MgMHg4MDg2ODAxMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX1RNVEFfTFJUSV9SRUFET1VUIDB4ODA4NjgwMTgKICNkZWZpbmUgTVNSX1RNVEFfTFJUSV9WT0xUX01IWiAweDgwODY4MDFhCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSUEzMl9QNV9NQ19BRERSIDB4MDAwMDAwMDAKICNkZWZpbmUgTVNSX0lBMzJfUDVfTUNfVFlQRSAweDAwMDAwMDAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSUEzMl9UU0MgMHgwMDAwMDAxMAogI2RlZmluZSBNU1JfSUEzMl9QTEFURk9STV9JRCAweDAwMDAwMDE3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfSUEzMl9FQkxfQ1JfUE9XRVJPTiAweDAwMDAwMDJhCiAjZGVmaW5lIE1TUl9FQkNfRlJFUVVFTkNZX0lEIDB4MDAwMDAwMmMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TUl9TTUlfQ09VTlQgMHgwMDAwMDAzNAogI2RlZmluZSBNU1JfSUEzMl9GRUFUVVJFX0NPTlRST0wgMHgwMDAwMDAzYQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0lBMzJfVFNDX0FESlVTVCAweDAwMDAwMDNiCi0jZGVmaW5lIEZFQVRVUkVfQ09OVFJPTF9MT0NLRUQgKDE8PDApCi0jZGVmaW5lIEZFQVRVUkVfQ09OVFJPTF9WTVhPTl9FTkFCTEVEX0lOU0lERV9TTVggKDE8PDEpCi0jZGVmaW5lIEZFQVRVUkVfQ09OVFJPTF9WTVhPTl9FTkFCTEVEX09VVFNJREVfU01YICgxPDwyKQorI2RlZmluZSBNU1JfSUEzMl9CTkRDRkdTIDB4MDAwMDBkOTAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9JQTMyX1hTUyAweDAwMDAwZGEwCisjZGVmaW5lIEZFQVRVUkVfQ09OVFJPTF9MT0NLRUQgKDEgPDwgMCkKKyNkZWZpbmUgRkVBVFVSRV9DT05UUk9MX1ZNWE9OX0VOQUJMRURfSU5TSURFX1NNWCAoMSA8PCAxKQorI2RlZmluZSBGRUFUVVJFX0NPTlRST0xfVk1YT05fRU5BQkxFRF9PVVRTSURFX1NNWCAoMSA8PCAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0lBMzJfQVBJQ0JBU0UgMHgwMDAwMDAxYgotI2RlZmluZSBNU1JfSUEzMl9BUElDQkFTRV9CU1AgKDE8PDgpCi0jZGVmaW5lIE1TUl9JQTMyX0FQSUNCQVNFX0VOQUJMRSAoMTw8MTEpCi0jZGVmaW5lIE1TUl9JQTMyX0FQSUNCQVNFX0JBU0UgKDB4ZmZmZmY8PDEyKQorI2RlZmluZSBNU1JfSUEzMl9BUElDQkFTRV9CU1AgKDEgPDwgOCkKKyNkZWZpbmUgTVNSX0lBMzJfQVBJQ0JBU0VfRU5BQkxFICgxIDw8IDExKQorI2RlZmluZSBNU1JfSUEzMl9BUElDQkFTRV9CQVNFICgweGZmZmZmIDw8IDEyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0lBMzJfVFNDREVBRExJTkUgMHgwMDAwMDZlMAogI2RlZmluZSBNU1JfSUEzMl9VQ09ERV9XUklURSAweDAwMDAwMDc5CkBAIC0zNjQsMjAxICszNjksMjMzIEBACiAjZGVmaW5lIFRIRVJNX0xPR19USFJFU0hPTEQwICgxIDw8IDcpCiAjZGVmaW5lIFRIRVJNX1NUQVRVU19USFJFU0hPTEQxICgxIDw8IDgpCiAjZGVmaW5lIFRIRVJNX0xPR19USFJFU0hPTEQxICgxIDw8IDkpCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0ZBU1RfU1RSSU5HICgxVUxMIDw8IDApCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0ZBU1RfU1RSSU5HX0JJVCAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9UQ0MgKDFVTEwgPDwgMSkKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRU1PTiAoMVVMTCA8PCA3KQotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9CVFNfVU5BVkFJTCAoMVVMTCA8PCAxMSkKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfUEVCU19VTkFWQUlMICgxVUxMIDw8IDEyKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9GQVNUX1NUUklORyAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9GQVNUX1NUUklOR19CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1RDQ19CSVQgMQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9UQ0MgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfVENDX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRU1PTl9CSVQgNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRU5IQU5DRURfU1BFRURTVEVQICgxVUxMIDw8IDE2KQotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9NV0FJVCAoMVVMTCA8PCAxOCkKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfTElNSVRfQ1BVSUQgKDFVTEwgPDwgMjIpCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1hUUFJfRElTQUJMRSAoMVVMTCA8PCAyMykKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRU1PTiAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9FTU9OX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfQlRTX1VOQVZBSUxfQklUIDExCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0JUU19VTkFWQUlMICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX0JUU19VTkFWQUlMX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfUEVCU19VTkFWQUlMX0JJVCAxMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfWERfRElTQUJMRSAoMVVMTCA8PCAzNCkKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfWDg3X0NPTVBBVCAoMVVMTCA8PCAyKQotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9UTTEgKDFVTEwgPDwgMykKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfU1BMSVRfTE9DS19ESVNBQkxFICgxVUxMIDw8IDQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1BFQlNfVU5BVkFJTCAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9QRUJTX1VOQVZBSUxfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9FTkhBTkNFRF9TUEVFRFNURVBfQklUIDE2CisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0VOSEFOQ0VEX1NQRUVEU1RFUCAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9FTkhBTkNFRF9TUEVFRFNURVBfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9NV0FJVF9CSVQgMTgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0wzQ0FDSEVfRElTQUJMRSAoMVVMTCA8PCA2KQotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9TVVBQUkVTU19MT0NLICgxVUxMIDw8IDgpCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1BSRUZFVENIX0RJU0FCTEUgKDFVTEwgPDwgOSkKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRkVSUiAoMVVMTCA8PCAxMCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfTVdBSVQgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfTVdBSVRfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9MSU1JVF9DUFVJRF9CSVQgMjIKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfTElNSVRfQ1BVSUQgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfTElNSVRfQ1BVSURfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9YVFBSX0RJU0FCTEVfQklUIDIzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9GRVJSX01VTFRJUExFWCAoMVVMTCA8PCAxMCkKLSNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfVE0yICgxVUxMIDw8IDEzKQotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9BREpfUFJFRl9ESVNBQkxFICgxVUxMIDw8IDE5KQotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9TUEVFRFNURVBfTE9DSyAoMVVMTCA8PCAyMCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfWFRQUl9ESVNBQkxFICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX1hUUFJfRElTQUJMRV9CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1hEX0RJU0FCTEVfQklUIDM0CisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1hEX0RJU0FCTEUgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfWERfRElTQUJMRV9CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1g4N19DT01QQVRfQklUIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0wxRF9DT05URVhUICgxVUxMIDw8IDI0KQotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9EQ1VfUFJFRl9ESVNBQkxFICgxVUxMIDw8IDM3KQotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9UVVJCT19ESVNBQkxFICgxVUxMIDw8IDM4KQotI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9JUF9QUkVGX0RJU0FCTEUgKDFVTEwgPDwgMzkpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1g4N19DT01QQVQgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfWDg3X0NPTVBBVF9CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1RNMV9CSVQgMworI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9UTTEgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfVE0xX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfU1BMSVRfTE9DS19ESVNBQkxFX0JJVCA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9TUExJVF9MT0NLX0RJU0FCTEUgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfU1BMSVRfTE9DS19ESVNBQkxFX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfTDNDQUNIRV9ESVNBQkxFX0JJVCA2CisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0wzQ0FDSEVfRElTQUJMRSAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9MM0NBQ0hFX0RJU0FCTEVfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9TVVBQUkVTU19MT0NLX0JJVCA4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9TVVBQUkVTU19MT0NLICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX1NVUFBSRVNTX0xPQ0tfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9QUkVGRVRDSF9ESVNBQkxFX0JJVCA5CisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX1BSRUZFVENIX0RJU0FCTEUgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfUFJFRkVUQ0hfRElTQUJMRV9CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0ZFUlJfQklUIDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9GRVJSICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX0ZFUlJfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9GRVJSX01VTFRJUExFWF9CSVQgMTAKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRkVSUl9NVUxUSVBMRVggKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfRkVSUl9NVUxUSVBMRVhfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9UTTJfQklUIDEzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9UTTIgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfVE0yX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfQURKX1BSRUZfRElTQUJMRV9CSVQgMTkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfQURKX1BSRUZfRElTQUJMRSAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9BREpfUFJFRl9ESVNBQkxFX0JJVCkKKyNkZWZpbmUgTVNSX0lBMzJfTUlTQ19FTkFCTEVfU1BFRURTVEVQX0xPQ0tfQklUIDIwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9TUEVFRFNURVBfTE9DSyAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9TUEVFRFNURVBfTE9DS19CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0wxRF9DT05URVhUX0JJVCAyNAorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9MMURfQ09OVEVYVCAoMVVMTCA8PCBNU1JfSUEzMl9NSVNDX0VOQUJMRV9MMURfQ09OVEVYVF9CSVQpCisjZGVmaW5lIE1TUl9JQTMyX01JU0NfRU5BQkxFX0RDVV9QUkVGX0RJU0FCTEVfQklUIDM3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9EQ1VfUFJFRl9ESVNBQkxFICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX0RDVV9QUkVGX0RJU0FCTEVfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9UVVJCT19ESVNBQkxFX0JJVCAzOAorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9UVVJCT19ESVNBQkxFICgxVUxMIDw8IE1TUl9JQTMyX01JU0NfRU5BQkxFX1RVUkJPX0RJU0FCTEVfQklUKQorI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9JUF9QUkVGX0RJU0FCTEVfQklUIDM5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9NSVNDX0VOQUJMRV9JUF9QUkVGX0RJU0FCTEUgKDFVTEwgPDwgTVNSX0lBMzJfTUlTQ19FTkFCTEVfSVBfUFJFRl9ESVNBQkxFX0JJVCkKICNkZWZpbmUgTVNSX0lBMzJfVFNDX0RFQURMSU5FIDB4MDAwMDA2RTAKICNkZWZpbmUgTVNSX0lBMzJfTUNHX0VBWCAweDAwMDAwMTgwCiAjZGVmaW5lIE1TUl9JQTMyX01DR19FQlggMHgwMDAwMDE4MQotI2RlZmluZSBNU1JfSUEzMl9NQ0dfRUNYIDB4MDAwMDAxODIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9JQTMyX01DR19FQ1ggMHgwMDAwMDE4MgogI2RlZmluZSBNU1JfSUEzMl9NQ0dfRURYIDB4MDAwMDAxODMKICNkZWZpbmUgTVNSX0lBMzJfTUNHX0VTSSAweDAwMDAwMTg0CiAjZGVmaW5lIE1TUl9JQTMyX01DR19FREkgMHgwMDAwMDE4NQotI2RlZmluZSBNU1JfSUEzMl9NQ0dfRUJQIDB4MDAwMDAxODYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9JQTMyX01DR19FQlAgMHgwMDAwMDE4NgogI2RlZmluZSBNU1JfSUEzMl9NQ0dfRVNQIDB4MDAwMDAxODcKICNkZWZpbmUgTVNSX0lBMzJfTUNHX0VGTEFHUyAweDAwMDAwMTg4CiAjZGVmaW5lIE1TUl9JQTMyX01DR19FSVAgMHgwMDAwMDE4OQotI2RlZmluZSBNU1JfSUEzMl9NQ0dfUkVTRVJWRUQgMHgwMDAwMDE4YQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX0lBMzJfTUNHX1JFU0VSVkVEIDB4MDAwMDAxOGEKICNkZWZpbmUgTVNSX1A0X0JQVV9QRVJGQ1RSMCAweDAwMDAwMzAwCiAjZGVmaW5lIE1TUl9QNF9CUFVfUEVSRkNUUjEgMHgwMDAwMDMwMQogI2RlZmluZSBNU1JfUDRfQlBVX1BFUkZDVFIyIDB4MDAwMDAzMDIKLSNkZWZpbmUgTVNSX1A0X0JQVV9QRVJGQ1RSMyAweDAwMDAwMzAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfUDRfQlBVX1BFUkZDVFIzIDB4MDAwMDAzMDMKICNkZWZpbmUgTVNSX1A0X01TX1BFUkZDVFIwIDB4MDAwMDAzMDQKICNkZWZpbmUgTVNSX1A0X01TX1BFUkZDVFIxIDB4MDAwMDAzMDUKICNkZWZpbmUgTVNSX1A0X01TX1BFUkZDVFIyIDB4MDAwMDAzMDYKLSNkZWZpbmUgTVNSX1A0X01TX1BFUkZDVFIzIDB4MDAwMDAzMDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9NU19QRVJGQ1RSMyAweDAwMDAwMzA3CiAjZGVmaW5lIE1TUl9QNF9GTEFNRV9QRVJGQ1RSMCAweDAwMDAwMzA4CiAjZGVmaW5lIE1TUl9QNF9GTEFNRV9QRVJGQ1RSMSAweDAwMDAwMzA5CiAjZGVmaW5lIE1TUl9QNF9GTEFNRV9QRVJGQ1RSMiAweDAwMDAwMzBhCi0jZGVmaW5lIE1TUl9QNF9GTEFNRV9QRVJGQ1RSMyAweDAwMDAwMzBiCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfUDRfRkxBTUVfUEVSRkNUUjMgMHgwMDAwMDMwYgogI2RlZmluZSBNU1JfUDRfSVFfUEVSRkNUUjAgMHgwMDAwMDMwYwogI2RlZmluZSBNU1JfUDRfSVFfUEVSRkNUUjEgMHgwMDAwMDMwZAogI2RlZmluZSBNU1JfUDRfSVFfUEVSRkNUUjIgMHgwMDAwMDMwZQotI2RlZmluZSBNU1JfUDRfSVFfUEVSRkNUUjMgMHgwMDAwMDMwZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X0lRX1BFUkZDVFIzIDB4MDAwMDAzMGYKICNkZWZpbmUgTVNSX1A0X0lRX1BFUkZDVFI0IDB4MDAwMDAzMTAKICNkZWZpbmUgTVNSX1A0X0lRX1BFUkZDVFI1IDB4MDAwMDAzMTEKICNkZWZpbmUgTVNSX1A0X0JQVV9DQ0NSMCAweDAwMDAwMzYwCi0jZGVmaW5lIE1TUl9QNF9CUFVfQ0NDUjEgMHgwMDAwMDM2MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X0JQVV9DQ0NSMSAweDAwMDAwMzYxCiAjZGVmaW5lIE1TUl9QNF9CUFVfQ0NDUjIgMHgwMDAwMDM2MgogI2RlZmluZSBNU1JfUDRfQlBVX0NDQ1IzIDB4MDAwMDAzNjMKICNkZWZpbmUgTVNSX1A0X01TX0NDQ1IwIDB4MDAwMDAzNjQKLSNkZWZpbmUgTVNSX1A0X01TX0NDQ1IxIDB4MDAwMDAzNjUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9NU19DQ0NSMSAweDAwMDAwMzY1CiAjZGVmaW5lIE1TUl9QNF9NU19DQ0NSMiAweDAwMDAwMzY2CiAjZGVmaW5lIE1TUl9QNF9NU19DQ0NSMyAweDAwMDAwMzY3CiAjZGVmaW5lIE1TUl9QNF9GTEFNRV9DQ0NSMCAweDAwMDAwMzY4Ci0jZGVmaW5lIE1TUl9QNF9GTEFNRV9DQ0NSMSAweDAwMDAwMzY5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfUDRfRkxBTUVfQ0NDUjEgMHgwMDAwMDM2OQogI2RlZmluZSBNU1JfUDRfRkxBTUVfQ0NDUjIgMHgwMDAwMDM2YQogI2RlZmluZSBNU1JfUDRfRkxBTUVfQ0NDUjMgMHgwMDAwMDM2YgogI2RlZmluZSBNU1JfUDRfSVFfQ0NDUjAgMHgwMDAwMDM2YwotI2RlZmluZSBNU1JfUDRfSVFfQ0NDUjEgMHgwMDAwMDM2ZAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X0lRX0NDQ1IxIDB4MDAwMDAzNmQKICNkZWZpbmUgTVNSX1A0X0lRX0NDQ1IyIDB4MDAwMDAzNmUKICNkZWZpbmUgTVNSX1A0X0lRX0NDQ1IzIDB4MDAwMDAzNmYKICNkZWZpbmUgTVNSX1A0X0lRX0NDQ1I0IDB4MDAwMDAzNzAKLSNkZWZpbmUgTVNSX1A0X0lRX0NDQ1I1IDB4MDAwMDAzNzEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9JUV9DQ0NSNSAweDAwMDAwMzcxCiAjZGVmaW5lIE1TUl9QNF9BTEZfRVNDUjAgMHgwMDAwMDNjYQogI2RlZmluZSBNU1JfUDRfQUxGX0VTQ1IxIDB4MDAwMDAzY2IKICNkZWZpbmUgTVNSX1A0X0JQVV9FU0NSMCAweDAwMDAwM2IyCi0jZGVmaW5lIE1TUl9QNF9CUFVfRVNDUjEgMHgwMDAwMDNiMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X0JQVV9FU0NSMSAweDAwMDAwM2IzCiAjZGVmaW5lIE1TUl9QNF9CU1VfRVNDUjAgMHgwMDAwMDNhMAogI2RlZmluZSBNU1JfUDRfQlNVX0VTQ1IxIDB4MDAwMDAzYTEKICNkZWZpbmUgTVNSX1A0X0NSVV9FU0NSMCAweDAwMDAwM2I4Ci0jZGVmaW5lIE1TUl9QNF9DUlVfRVNDUjEgMHgwMDAwMDNiOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X0NSVV9FU0NSMSAweDAwMDAwM2I5CiAjZGVmaW5lIE1TUl9QNF9DUlVfRVNDUjIgMHgwMDAwMDNjYwogI2RlZmluZSBNU1JfUDRfQ1JVX0VTQ1IzIDB4MDAwMDAzY2QKICNkZWZpbmUgTVNSX1A0X0NSVV9FU0NSNCAweDAwMDAwM2UwCi0jZGVmaW5lIE1TUl9QNF9DUlVfRVNDUjUgMHgwMDAwMDNlMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X0NSVV9FU0NSNSAweDAwMDAwM2UxCiAjZGVmaW5lIE1TUl9QNF9EQUNfRVNDUjAgMHgwMDAwMDNhOAogI2RlZmluZSBNU1JfUDRfREFDX0VTQ1IxIDB4MDAwMDAzYTkKICNkZWZpbmUgTVNSX1A0X0ZJUk1fRVNDUjAgMHgwMDAwMDNhNAotI2RlZmluZSBNU1JfUDRfRklSTV9FU0NSMSAweDAwMDAwM2E1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfUDRfRklSTV9FU0NSMSAweDAwMDAwM2E1CiAjZGVmaW5lIE1TUl9QNF9GTEFNRV9FU0NSMCAweDAwMDAwM2E2CiAjZGVmaW5lIE1TUl9QNF9GTEFNRV9FU0NSMSAweDAwMDAwM2E3CiAjZGVmaW5lIE1TUl9QNF9GU0JfRVNDUjAgMHgwMDAwMDNhMgotI2RlZmluZSBNU1JfUDRfRlNCX0VTQ1IxIDB4MDAwMDAzYTMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9GU0JfRVNDUjEgMHgwMDAwMDNhMwogI2RlZmluZSBNU1JfUDRfSVFfRVNDUjAgMHgwMDAwMDNiYQogI2RlZmluZSBNU1JfUDRfSVFfRVNDUjEgMHgwMDAwMDNiYgogI2RlZmluZSBNU1JfUDRfSVNfRVNDUjAgMHgwMDAwMDNiNAotI2RlZmluZSBNU1JfUDRfSVNfRVNDUjEgMHgwMDAwMDNiNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X0lTX0VTQ1IxIDB4MDAwMDAzYjUKICNkZWZpbmUgTVNSX1A0X0lUTEJfRVNDUjAgMHgwMDAwMDNiNgogI2RlZmluZSBNU1JfUDRfSVRMQl9FU0NSMSAweDAwMDAwM2I3CiAjZGVmaW5lIE1TUl9QNF9JWF9FU0NSMCAweDAwMDAwM2M4Ci0jZGVmaW5lIE1TUl9QNF9JWF9FU0NSMSAweDAwMDAwM2M5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfUDRfSVhfRVNDUjEgMHgwMDAwMDNjOQogI2RlZmluZSBNU1JfUDRfTU9CX0VTQ1IwIDB4MDAwMDAzYWEKICNkZWZpbmUgTVNSX1A0X01PQl9FU0NSMSAweDAwMDAwM2FiCiAjZGVmaW5lIE1TUl9QNF9NU19FU0NSMCAweDAwMDAwM2MwCi0jZGVmaW5lIE1TUl9QNF9NU19FU0NSMSAweDAwMDAwM2MxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfUDRfTVNfRVNDUjEgMHgwMDAwMDNjMQogI2RlZmluZSBNU1JfUDRfUE1IX0VTQ1IwIDB4MDAwMDAzYWMKICNkZWZpbmUgTVNSX1A0X1BNSF9FU0NSMSAweDAwMDAwM2FkCiAjZGVmaW5lIE1TUl9QNF9SQVRfRVNDUjAgMHgwMDAwMDNiYwotI2RlZmluZSBNU1JfUDRfUkFUX0VTQ1IxIDB4MDAwMDAzYmQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9QNF9SQVRfRVNDUjEgMHgwMDAwMDNiZAogI2RlZmluZSBNU1JfUDRfU0FBVF9FU0NSMCAweDAwMDAwM2FlCiAjZGVmaW5lIE1TUl9QNF9TQUFUX0VTQ1IxIDB4MDAwMDAzYWYKICNkZWZpbmUgTVNSX1A0X1NTVV9FU0NSMCAweDAwMDAwM2JlCi0jZGVmaW5lIE1TUl9QNF9TU1VfRVNDUjEgMHgwMDAwMDNiZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X1NTVV9FU0NSMSAweDAwMDAwM2JmCiAjZGVmaW5lIE1TUl9QNF9UQlBVX0VTQ1IwIDB4MDAwMDAzYzIKICNkZWZpbmUgTVNSX1A0X1RCUFVfRVNDUjEgMHgwMDAwMDNjMwogI2RlZmluZSBNU1JfUDRfVENfRVNDUjAgMHgwMDAwMDNjNAotI2RlZmluZSBNU1JfUDRfVENfRVNDUjEgMHgwMDAwMDNjNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX1A0X1RDX0VTQ1IxIDB4MDAwMDAzYzUKICNkZWZpbmUgTVNSX1A0X1UyTF9FU0NSMCAweDAwMDAwM2IwCiAjZGVmaW5lIE1TUl9QNF9VMkxfRVNDUjEgMHgwMDAwMDNiMQogI2RlZmluZSBNU1JfUDRfUEVCU19NQVRSSVhfVkVSVCAweDAwMDAwM2YyCi0jZGVmaW5lIE1TUl9DT1JFX1BFUkZfRklYRURfQ1RSMCAweDAwMDAwMzA5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfQ09SRV9QRVJGX0ZJWEVEX0NUUjAgMHgwMDAwMDMwOQogI2RlZmluZSBNU1JfQ09SRV9QRVJGX0ZJWEVEX0NUUjEgMHgwMDAwMDMwYQogI2RlZmluZSBNU1JfQ09SRV9QRVJGX0ZJWEVEX0NUUjIgMHgwMDAwMDMwYgogI2RlZmluZSBNU1JfQ09SRV9QRVJGX0ZJWEVEX0NUUl9DVFJMIDB4MDAwMDAzOGQKLSNkZWZpbmUgTVNSX0NPUkVfUEVSRl9HTE9CQUxfU1RBVFVTIDB4MDAwMDAzOGUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9DT1JFX1BFUkZfR0xPQkFMX1NUQVRVUyAweDAwMDAwMzhlCiAjZGVmaW5lIE1TUl9DT1JFX1BFUkZfR0xPQkFMX0NUUkwgMHgwMDAwMDM4ZgogI2RlZmluZSBNU1JfQ09SRV9QRVJGX0dMT0JBTF9PVkZfQ1RSTCAweDAwMDAwMzkwCiAjZGVmaW5lIE1TUl9HRU9ERV9CVVNDT05UX0NPTkYwIDB4MDAwMDE5MDAKLSNkZWZpbmUgTVNSX0lBMzJfVk1YX0JBU0lDIDB4MDAwMDA0ODAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9JQTMyX1ZNWF9CQVNJQyAweDAwMDAwNDgwCiAjZGVmaW5lIE1TUl9JQTMyX1ZNWF9QSU5CQVNFRF9DVExTIDB4MDAwMDA0ODEKICNkZWZpbmUgTVNSX0lBMzJfVk1YX1BST0NCQVNFRF9DVExTIDB4MDAwMDA0ODIKICNkZWZpbmUgTVNSX0lBMzJfVk1YX0VYSVRfQ1RMUyAweDAwMDAwNDgzCi0jZGVmaW5lIE1TUl9JQTMyX1ZNWF9FTlRSWV9DVExTIDB4MDAwMDA0ODQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1TUl9JQTMyX1ZNWF9FTlRSWV9DVExTIDB4MDAwMDA0ODQKICNkZWZpbmUgTVNSX0lBMzJfVk1YX01JU0MgMHgwMDAwMDQ4NQogI2RlZmluZSBNU1JfSUEzMl9WTVhfQ1IwX0ZJWEVEMCAweDAwMDAwNDg2CiAjZGVmaW5lIE1TUl9JQTMyX1ZNWF9DUjBfRklYRUQxIDB4MDAwMDA0ODcKLSNkZWZpbmUgTVNSX0lBMzJfVk1YX0NSNF9GSVhFRDAgMHgwMDAwMDQ4OAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVNSX0lBMzJfVk1YX0NSNF9GSVhFRDAgMHgwMDAwMDQ4OAogI2RlZmluZSBNU1JfSUEzMl9WTVhfQ1I0X0ZJWEVEMSAweDAwMDAwNDg5CiAjZGVmaW5lIE1TUl9JQTMyX1ZNWF9WTUNTX0VOVU0gMHgwMDAwMDQ4YQogI2RlZmluZSBNU1JfSUEzMl9WTVhfUFJPQ0JBU0VEX0NUTFMyIDB4MDAwMDA0OGIKLSNkZWZpbmUgTVNSX0lBMzJfVk1YX0VQVF9WUElEX0NBUCAweDAwMDAwNDhjCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9WTVhfRVBUX1ZQSURfQ0FQIDB4MDAwMDA0OGMKICNkZWZpbmUgTVNSX0lBMzJfVk1YX1RSVUVfUElOQkFTRURfQ1RMUyAweDAwMDAwNDhkCiAjZGVmaW5lIE1TUl9JQTMyX1ZNWF9UUlVFX1BST0NCQVNFRF9DVExTIDB4MDAwMDA0OGUKICNkZWZpbmUgTVNSX0lBMzJfVk1YX1RSVUVfRVhJVF9DVExTIDB4MDAwMDA0OGYKLSNkZWZpbmUgTVNSX0lBMzJfVk1YX1RSVUVfRU5UUllfQ1RMUyAweDAwMDAwNDkwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU1JfSUEzMl9WTVhfVFJVRV9FTlRSWV9DVExTIDB4MDAwMDA0OTAKICNkZWZpbmUgTVNSX0lBMzJfVk1YX1ZNRlVOQyAweDAwMDAwNDkxCiAjZGVmaW5lIFZNWF9CQVNJQ19WTUNTX1NJWkVfU0hJRlQgMzIKKyNkZWZpbmUgVk1YX0JBU0lDX1RSVUVfQ1RMUyAoMVVMTCA8PCA1NSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZNWF9CQVNJQ182NCAweDAwMDEwMDAwMDAwMDAwMDBMTFUKICNkZWZpbmUgVk1YX0JBU0lDX01FTV9UWVBFX1NISUZUIDUwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWTVhfQkFTSUNfTUVNX1RZUEVfTUFTSyAweDAwM2MwMDAwMDAwMDAwMDBMTFUKICNkZWZpbmUgVk1YX0JBU0lDX01FTV9UWVBFX1dCIDZMTFUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZNWF9CQVNJQ19JTk9VVCAweDAwNDAwMDAwMDAwMDAwMDBMTFUKICNkZWZpbmUgTVNSX0lBMzJfVk1YX01JU0NfVk1XUklURV9TSEFET1dfUk9fRklFTERTICgxVUxMIDw8IDI5KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNSX0lBMzJfVk1YX01JU0NfUFJFRU1QVElPTl9USU1FUl9TQ0FMRSAweDFGCiAjZGVmaW5lIE1TUl9WTV9DUiAweGMwMDEwMTE0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU1JfVk1fSUdOTkUgMHhjMDAxMDExNQogI2RlZmluZSBNU1JfVk1fSFNBVkVfUEEgMHhjMDAxMDExNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9tdHJyLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL210cnIuaAppbmRleCAxZmQxMDFjLi4xMzVmYTMzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL210cnIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL210cnIuaApAQCAtMjYsNTQgKzI2LDU0IEBACiAjaWZkZWYgX19pMzg2X18KIHN0cnVjdCBtdHJyX3NlbnRyeSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgYmFzZTsKLSB1bnNpZ25lZCBpbnQgc2l6ZTsKLSB1bnNpZ25lZCBpbnQgdHlwZTsKKyAgdW5zaWduZWQgbG9uZyBiYXNlOworICB1bnNpZ25lZCBpbnQgc2l6ZTsKKyAgdW5zaWduZWQgaW50IHR5cGU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtdHJyX2dlbnRyeSB7Ci0gdW5zaWduZWQgaW50IHJlZ251bTsKLSB1bnNpZ25lZCBsb25nIGJhc2U7Ci0gdW5zaWduZWQgaW50IHNpemU7CisgIHVuc2lnbmVkIGludCByZWdudW07CisgIHVuc2lnbmVkIGxvbmcgYmFzZTsKKyAgdW5zaWduZWQgaW50IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0eXBlOworICB1bnNpZ25lZCBpbnQgdHlwZTsKIH07CiAjZWxzZQogc3RydWN0IG10cnJfc2VudHJ5IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYmFzZTsKLSBfX3UzMiBzaXplOwotIF9fdTMyIHR5cGU7CisgIF9fdTY0IGJhc2U7CisgIF9fdTMyIHNpemU7CisgIF9fdTMyIHR5cGU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtdHJyX2dlbnRyeSB7Ci0gX191NjQgYmFzZTsKLSBfX3UzMiBzaXplOwotIF9fdTMyIHJlZ251bTsKKyAgX191NjQgYmFzZTsKKyAgX191MzIgc2l6ZTsKKyAgX191MzIgcmVnbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eXBlOwotIF9fdTMyIF9wYWQ7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIF9wYWQ7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG10cnJfdmFyX3JhbmdlIHsKLSBfX3UzMiBiYXNlX2xvOwotIF9fdTMyIGJhc2VfaGk7Ci0gX191MzIgbWFza19sbzsKKyAgX191MzIgYmFzZV9sbzsKKyAgX191MzIgYmFzZV9oaTsKKyAgX191MzIgbWFza19sbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWFza19oaTsKKyAgX191MzIgbWFza19oaTsKIH07CiB0eXBlZGVmIF9fdTggbXRycl90eXBlOwogI2RlZmluZSBNVFJSX05VTV9GSVhFRF9SQU5HRVMgODgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1UUlJfTUFYX1ZBUl9SQU5HRVMgMjU2CiBzdHJ1Y3QgbXRycl9zdGF0ZV90eXBlIHsKLSBzdHJ1Y3QgbXRycl92YXJfcmFuZ2UgdmFyX3Jhbmdlc1tNVFJSX01BWF9WQVJfUkFOR0VTXTsKLSBtdHJyX3R5cGUgZml4ZWRfcmFuZ2VzW01UUlJfTlVNX0ZJWEVEX1JBTkdFU107CisgIHN0cnVjdCBtdHJyX3Zhcl9yYW5nZSB2YXJfcmFuZ2VzW01UUlJfTUFYX1ZBUl9SQU5HRVNdOworICBtdHJyX3R5cGUgZml4ZWRfcmFuZ2VzW01UUlJfTlVNX0ZJWEVEX1JBTkdFU107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZW5hYmxlZDsKLSB1bnNpZ25lZCBjaGFyIGhhdmVfZml4ZWQ7Ci0gbXRycl90eXBlIGRlZl90eXBlOworICB1bnNpZ25lZCBjaGFyIGVuYWJsZWQ7CisgIHVuc2lnbmVkIGNoYXIgaGF2ZV9maXhlZDsKKyAgbXRycl90eXBlIGRlZl90eXBlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1UUlJwaHlzQmFzZV9NU1IocmVnKSAoMHgyMDAgKyAyICogKHJlZykpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3BlcmZfcmVncy5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9wZXJmX3JlZ3MuaAppbmRleCA2MWRiNGUwLi5hNjUxOTE5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3BlcmZfcmVncy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vcGVyZl9yZWdzLmgKQEAgLTE5LDM4ICsxOSwzOCBAQAogI2lmbmRlZiBfQVNNX1g4Nl9QRVJGX1JFR1NfSAogI2RlZmluZSBfQVNNX1g4Nl9QRVJGX1JFR1NfSAogZW51bSBwZXJmX2V2ZW50X3g4Nl9yZWdzIHsKLSBQRVJGX1JFR19YODZfQVgsCisgIFBFUkZfUkVHX1g4Nl9BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9SRUdfWDg2X0JYLAotIFBFUkZfUkVHX1g4Nl9DWCwKLSBQRVJGX1JFR19YODZfRFgsCi0gUEVSRl9SRUdfWDg2X1NJLAorICBQRVJGX1JFR19YODZfQlgsCisgIFBFUkZfUkVHX1g4Nl9DWCwKKyAgUEVSRl9SRUdfWDg2X0RYLAorICBQRVJGX1JFR19YODZfU0ksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfUkVHX1g4Nl9ESSwKLSBQRVJGX1JFR19YODZfQlAsCi0gUEVSRl9SRUdfWDg2X1NQLAotIFBFUkZfUkVHX1g4Nl9JUCwKKyAgUEVSRl9SRUdfWDg2X0RJLAorICBQRVJGX1JFR19YODZfQlAsCisgIFBFUkZfUkVHX1g4Nl9TUCwKKyAgUEVSRl9SRUdfWDg2X0lQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1JFR19YODZfRkxBR1MsCi0gUEVSRl9SRUdfWDg2X0NTLAotIFBFUkZfUkVHX1g4Nl9TUywKLSBQRVJGX1JFR19YODZfRFMsCisgIFBFUkZfUkVHX1g4Nl9GTEFHUywKKyAgUEVSRl9SRUdfWDg2X0NTLAorICBQRVJGX1JFR19YODZfU1MsCisgIFBFUkZfUkVHX1g4Nl9EUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9SRUdfWDg2X0VTLAotIFBFUkZfUkVHX1g4Nl9GUywKLSBQRVJGX1JFR19YODZfR1MsCi0gUEVSRl9SRUdfWDg2X1I4LAorICBQRVJGX1JFR19YODZfRVMsCisgIFBFUkZfUkVHX1g4Nl9GUywKKyAgUEVSRl9SRUdfWDg2X0dTLAorICBQRVJGX1JFR19YODZfUjgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfUkVHX1g4Nl9SOSwKLSBQRVJGX1JFR19YODZfUjEwLAotIFBFUkZfUkVHX1g4Nl9SMTEsCi0gUEVSRl9SRUdfWDg2X1IxMiwKKyAgUEVSRl9SRUdfWDg2X1I5LAorICBQRVJGX1JFR19YODZfUjEwLAorICBQRVJGX1JFR19YODZfUjExLAorICBQRVJGX1JFR19YODZfUjEyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1JFR19YODZfUjEzLAotIFBFUkZfUkVHX1g4Nl9SMTQsCi0gUEVSRl9SRUdfWDg2X1IxNSwKLSBQRVJGX1JFR19YODZfMzJfTUFYID0gUEVSRl9SRUdfWDg2X0dTICsgMSwKKyAgUEVSRl9SRUdfWDg2X1IxMywKKyAgUEVSRl9SRUdfWDg2X1IxNCwKKyAgUEVSRl9SRUdfWDg2X1IxNSwKKyAgUEVSRl9SRUdfWDg2XzMyX01BWCA9IFBFUkZfUkVHX1g4Nl9HUyArIDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfUkVHX1g4Nl82NF9NQVggPSBQRVJGX1JFR19YODZfUjE1ICsgMSwKKyAgUEVSRl9SRUdfWDg2XzY0X01BWCA9IFBFUkZfUkVHX1g4Nl9SMTUgKyAxLAogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9wcm9jZXNzb3ItZmxhZ3MuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vcHJvY2Vzc29yLWZsYWdzLmgKaW5kZXggYWVhZDc3OS4uM2MzNmRkYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9wcm9jZXNzb3ItZmxhZ3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3Byb2Nlc3Nvci1mbGFncy5oCkBAIC00Niw3ICs0Niw3IEBACiAjZGVmaW5lIFg4Nl9FRkxBR1NfT0YgX0JJVFVMKFg4Nl9FRkxBR1NfT0ZfQklUKQogI2RlZmluZSBYODZfRUZMQUdTX0lPUExfQklUIDEyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBYODZfRUZMQUdTX0lPUEwgKF9BQygzLFVMKSA8PCBYODZfRUZMQUdTX0lPUExfQklUKQorI2RlZmluZSBYODZfRUZMQUdTX0lPUEwgKF9BQygzLCBVTCkgPDwgWDg2X0VGTEFHU19JT1BMX0JJVCkKICNkZWZpbmUgWDg2X0VGTEFHU19OVF9CSVQgMTQKICNkZWZpbmUgWDg2X0VGTEFHU19OVCBfQklUVUwoWDg2X0VGTEFHU19OVF9CSVQpCiAjZGVmaW5lIFg4Nl9FRkxBR1NfUkZfQklUIDE2CkBAIC05OSw3ICs5OSw3IEBACiAjZGVmaW5lIFg4Nl9DUjNfUFdUIF9CSVRVTChYODZfQ1IzX1BXVF9CSVQpCiAjZGVmaW5lIFg4Nl9DUjNfUENEX0JJVCA0CiAjZGVmaW5lIFg4Nl9DUjNfUENEIF9CSVRVTChYODZfQ1IzX1BDRF9CSVQpCi0jZGVmaW5lIFg4Nl9DUjNfUENJRF9NQVNLIF9BQygweDAwMDAwZmZmLFVMKQorI2RlZmluZSBYODZfQ1IzX1BDSURfTUFTSyBfQUMoMHgwMDAwMGZmZiwgVUwpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYODZfQ1I0X1ZNRV9CSVQgMAogI2RlZmluZSBYODZfQ1I0X1ZNRSBfQklUVUwoWDg2X0NSNF9WTUVfQklUKQpAQCAtMTQ2LDcgKzE0Niw3IEBACiAjZGVmaW5lIFg4Nl9DUjRfU01BUF9CSVQgMjEKICNkZWZpbmUgWDg2X0NSNF9TTUFQIF9CSVRVTChYODZfQ1I0X1NNQVBfQklUKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgWDg2X0NSOF9UUFIgX0FDKDB4MDAwMDAwMGYsVUwpCisjZGVmaW5lIFg4Nl9DUjhfVFBSIF9BQygweDAwMDAwMDBmLCBVTCkKICNkZWZpbmUgQ1g4Nl9QQ1IwIDB4MjAKICNkZWZpbmUgQ1g4Nl9HQ1IgMHhiOAogI2RlZmluZSBDWDg2X0NDUjAgMHhjMApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9wdHJhY2UuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vcHRyYWNlLmgKaW5kZXggMmVmYjljNC4uODAyZDgwOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9wdHJhY2UuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3B0cmFjZS5oCkBAIC0yNiw1NyArMjYsNTcgQEAKICNpZmRlZiBfX2kzODZfXwogc3RydWN0IHB0X3JlZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIGVieDsKLSBsb25nIGVjeDsKLSBsb25nIGVkeDsKLSBsb25nIGVzaTsKKyAgbG9uZyBlYng7CisgIGxvbmcgZWN4OworICBsb25nIGVkeDsKKyAgbG9uZyBlc2k7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgZWRpOwotIGxvbmcgZWJwOwotIGxvbmcgZWF4OwotIGludCB4ZHM7CisgIGxvbmcgZWRpOworICBsb25nIGVicDsKKyAgbG9uZyBlYXg7CisgIGludCB4ZHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB4ZXM7Ci0gaW50IHhmczsKLSBpbnQgeGdzOwotIGxvbmcgb3JpZ19lYXg7CisgIGludCB4ZXM7CisgIGludCB4ZnM7CisgIGludCB4Z3M7CisgIGxvbmcgb3JpZ19lYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgZWlwOwotIGludCB4Y3M7Ci0gbG9uZyBlZmxhZ3M7Ci0gbG9uZyBlc3A7CisgIGxvbmcgZWlwOworICBpbnQgeGNzOworICBsb25nIGVmbGFnczsKKyAgbG9uZyBlc3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB4c3M7CisgIGludCB4c3M7CiB9OwogI2Vsc2UKIHN0cnVjdCBwdF9yZWdzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyByMTU7Ci0gdW5zaWduZWQgbG9uZyByMTQ7Ci0gdW5zaWduZWQgbG9uZyByMTM7Ci0gdW5zaWduZWQgbG9uZyByMTI7CisgIHVuc2lnbmVkIGxvbmcgcjE1OworICB1bnNpZ25lZCBsb25nIHIxNDsKKyAgdW5zaWduZWQgbG9uZyByMTM7CisgIHVuc2lnbmVkIGxvbmcgcjEyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHJicDsKLSB1bnNpZ25lZCBsb25nIHJieDsKLSB1bnNpZ25lZCBsb25nIHIxMTsKLSB1bnNpZ25lZCBsb25nIHIxMDsKKyAgdW5zaWduZWQgbG9uZyByYnA7CisgIHVuc2lnbmVkIGxvbmcgcmJ4OworICB1bnNpZ25lZCBsb25nIHIxMTsKKyAgdW5zaWduZWQgbG9uZyByMTA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgcjk7Ci0gdW5zaWduZWQgbG9uZyByODsKLSB1bnNpZ25lZCBsb25nIHJheDsKLSB1bnNpZ25lZCBsb25nIHJjeDsKKyAgdW5zaWduZWQgbG9uZyByOTsKKyAgdW5zaWduZWQgbG9uZyByODsKKyAgdW5zaWduZWQgbG9uZyByYXg7CisgIHVuc2lnbmVkIGxvbmcgcmN4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHJkeDsKLSB1bnNpZ25lZCBsb25nIHJzaTsKLSB1bnNpZ25lZCBsb25nIHJkaTsKLSB1bnNpZ25lZCBsb25nIG9yaWdfcmF4OworICB1bnNpZ25lZCBsb25nIHJkeDsKKyAgdW5zaWduZWQgbG9uZyByc2k7CisgIHVuc2lnbmVkIGxvbmcgcmRpOworICB1bnNpZ25lZCBsb25nIG9yaWdfcmF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHJpcDsKLSB1bnNpZ25lZCBsb25nIGNzOwotIHVuc2lnbmVkIGxvbmcgZWZsYWdzOwotIHVuc2lnbmVkIGxvbmcgcnNwOworICB1bnNpZ25lZCBsb25nIHJpcDsKKyAgdW5zaWduZWQgbG9uZyBjczsKKyAgdW5zaWduZWQgbG9uZyBlZmxhZ3M7CisgIHVuc2lnbmVkIGxvbmcgcnNwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHNzOworICB1bnNpZ25lZCBsb25nIHNzOwogfTsKICNlbmRpZgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3NlbWJ1Zi5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zZW1idWYuaAppbmRleCA0MWQzYjJhLi5iN2MwZGJlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3NlbWJ1Zi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc2VtYnVmLmgKQEAgLTE5LDE2ICsxOSwxNiBAQAogI2lmbmRlZiBfQVNNX1g4Nl9TRU1CVUZfSAogI2RlZmluZSBfQVNNX1g4Nl9TRU1CVUZfSAogc3RydWN0IHNlbWlkNjRfZHMgewotIHN0cnVjdCBpcGM2NF9wZXJtIHNlbV9wZXJtOworICBzdHJ1Y3QgaXBjNjRfcGVybSBzZW1fcGVybTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfdGltZV90IHNlbV9vdGltZTsKLSBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkMTsKLSBfX2tlcm5lbF90aW1lX3Qgc2VtX2N0aW1lOwotIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQyOworICBfX2tlcm5lbF90aW1lX3Qgc2VtX290aW1lOworICBfX2tlcm5lbF91bG9uZ190IF9fdW51c2VkMTsKKyAgX19rZXJuZWxfdGltZV90IHNlbV9jdGltZTsKKyAgX19rZXJuZWxfdWxvbmdfdCBfX3VudXNlZDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3Vsb25nX3Qgc2VtX25zZW1zOwotIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQzOwotIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQ0OworICBfX2tlcm5lbF91bG9uZ190IHNlbV9uc2VtczsKKyAgX19rZXJuZWxfdWxvbmdfdCBfX3VudXNlZDM7CisgIF9fa2VybmVsX3Vsb25nX3QgX191bnVzZWQ0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc2lnY29udGV4dC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zaWdjb250ZXh0LmgKaW5kZXggN2ZlMzEyOC4uYjkyNWQ0NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zaWdjb250ZXh0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zaWdjb250ZXh0LmgKQEAgLTI2LDE2OCArMjYsMTY4IEBACiAjZGVmaW5lIEZQX1hTVEFURV9NQUdJQzJfU0laRSBzaXplb2YoRlBfWFNUQVRFX01BR0lDMikKIHN0cnVjdCBfZnB4X3N3X2J5dGVzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWFnaWMxOwotIF9fdTMyIGV4dGVuZGVkX3NpemU7Ci0gX191NjQgeHN0YXRlX2J2OwotIF9fdTMyIHhzdGF0ZV9zaXplOworICBfX3UzMiBtYWdpYzE7CisgIF9fdTMyIGV4dGVuZGVkX3NpemU7CisgIF9fdTY0IHhzdGF0ZV9idjsKKyAgX191MzIgeHN0YXRlX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBhZGRpbmdbN107CisgIF9fdTMyIHBhZGRpbmdbN107CiB9OwogI2lmZGVmIF9faTM4Nl9fCiBzdHJ1Y3QgX2ZwcmVnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgc2lnbmlmaWNhbmRbNF07Ci0gdW5zaWduZWQgc2hvcnQgZXhwb25lbnQ7CisgIHVuc2lnbmVkIHNob3J0IHNpZ25pZmljYW5kWzRdOworICB1bnNpZ25lZCBzaG9ydCBleHBvbmVudDsKIH07CiBzdHJ1Y3QgX2ZweHJlZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHNpZ25pZmljYW5kWzRdOwotIHVuc2lnbmVkIHNob3J0IGV4cG9uZW50OwotIHVuc2lnbmVkIHNob3J0IHBhZGRpbmdbM107CisgIHVuc2lnbmVkIHNob3J0IHNpZ25pZmljYW5kWzRdOworICB1bnNpZ25lZCBzaG9ydCBleHBvbmVudDsKKyAgdW5zaWduZWQgc2hvcnQgcGFkZGluZ1szXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IF94bW1yZWcgewotIHVuc2lnbmVkIGxvbmcgZWxlbWVudFs0XTsKKyAgdW5zaWduZWQgbG9uZyBlbGVtZW50WzRdOwogfTsKIHN0cnVjdCBfZnBzdGF0ZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgY3c7Ci0gdW5zaWduZWQgbG9uZyBzdzsKLSB1bnNpZ25lZCBsb25nIHRhZzsKLSB1bnNpZ25lZCBsb25nIGlwb2ZmOworICB1bnNpZ25lZCBsb25nIGN3OworICB1bnNpZ25lZCBsb25nIHN3OworICB1bnNpZ25lZCBsb25nIHRhZzsKKyAgdW5zaWduZWQgbG9uZyBpcG9mZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBjc3NlbDsKLSB1bnNpZ25lZCBsb25nIGRhdGFvZmY7Ci0gdW5zaWduZWQgbG9uZyBkYXRhc2VsOwotIHN0cnVjdCBfZnByZWcgX3N0WzhdOworICB1bnNpZ25lZCBsb25nIGNzc2VsOworICB1bnNpZ25lZCBsb25nIGRhdGFvZmY7CisgIHVuc2lnbmVkIGxvbmcgZGF0YXNlbDsKKyAgc3RydWN0IF9mcHJlZyBfc3RbOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHN0YXR1czsKLSB1bnNpZ25lZCBzaG9ydCBtYWdpYzsKLSB1bnNpZ25lZCBsb25nIF9meHNyX2Vudls2XTsKLSB1bnNpZ25lZCBsb25nIG14Y3NyOworICB1bnNpZ25lZCBzaG9ydCBzdGF0dXM7CisgIHVuc2lnbmVkIHNob3J0IG1hZ2ljOworICB1bnNpZ25lZCBsb25nIF9meHNyX2Vudls2XTsKKyAgdW5zaWduZWQgbG9uZyBteGNzcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyByZXNlcnZlZDsKLSBzdHJ1Y3QgX2ZweHJlZyBfZnhzcl9zdFs4XTsKLSBzdHJ1Y3QgX3htbXJlZyBfeG1tWzhdOwotIHVuc2lnbmVkIGxvbmcgcGFkZGluZzFbNDRdOworICB1bnNpZ25lZCBsb25nIHJlc2VydmVkOworICBzdHJ1Y3QgX2ZweHJlZyBfZnhzcl9zdFs4XTsKKyAgc3RydWN0IF94bW1yZWcgX3htbVs4XTsKKyAgdW5zaWduZWQgbG9uZyBwYWRkaW5nMVs0NF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSB1bnNpZ25lZCBsb25nIHBhZGRpbmcyWzEyXTsKLSBzdHJ1Y3QgX2ZweF9zd19ieXRlcyBzd19yZXNlcnZlZDsKLSB9OworICB1bmlvbiB7CisgICAgdW5zaWduZWQgbG9uZyBwYWRkaW5nMlsxMl07CisgICAgc3RydWN0IF9mcHhfc3dfYnl0ZXMgc3dfcmVzZXJ2ZWQ7CisgIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgWDg2X0ZYU1JfTUFHSUMgMHgwMDAwCiBzdHJ1Y3Qgc2lnY29udGV4dCB7Ci0gdW5zaWduZWQgc2hvcnQgZ3MsIF9fZ3NoOworICB1bnNpZ25lZCBzaG9ydCBncywgX19nc2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGZzLCBfX2ZzaDsKLSB1bnNpZ25lZCBzaG9ydCBlcywgX19lc2g7Ci0gdW5zaWduZWQgc2hvcnQgZHMsIF9fZHNoOwotIHVuc2lnbmVkIGxvbmcgZWRpOworICB1bnNpZ25lZCBzaG9ydCBmcywgX19mc2g7CisgIHVuc2lnbmVkIHNob3J0IGVzLCBfX2VzaDsKKyAgdW5zaWduZWQgc2hvcnQgZHMsIF9fZHNoOworICB1bnNpZ25lZCBsb25nIGVkaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBlc2k7Ci0gdW5zaWduZWQgbG9uZyBlYnA7Ci0gdW5zaWduZWQgbG9uZyBlc3A7Ci0gdW5zaWduZWQgbG9uZyBlYng7CisgIHVuc2lnbmVkIGxvbmcgZXNpOworICB1bnNpZ25lZCBsb25nIGVicDsKKyAgdW5zaWduZWQgbG9uZyBlc3A7CisgIHVuc2lnbmVkIGxvbmcgZWJ4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGVkeDsKLSB1bnNpZ25lZCBsb25nIGVjeDsKLSB1bnNpZ25lZCBsb25nIGVheDsKLSB1bnNpZ25lZCBsb25nIHRyYXBubzsKKyAgdW5zaWduZWQgbG9uZyBlZHg7CisgIHVuc2lnbmVkIGxvbmcgZWN4OworICB1bnNpZ25lZCBsb25nIGVheDsKKyAgdW5zaWduZWQgbG9uZyB0cmFwbm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgZXJyOwotIHVuc2lnbmVkIGxvbmcgZWlwOwotIHVuc2lnbmVkIHNob3J0IGNzLCBfX2NzaDsKLSB1bnNpZ25lZCBsb25nIGVmbGFnczsKKyAgdW5zaWduZWQgbG9uZyBlcnI7CisgIHVuc2lnbmVkIGxvbmcgZWlwOworICB1bnNpZ25lZCBzaG9ydCBjcywgX19jc2g7CisgIHVuc2lnbmVkIGxvbmcgZWZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGVzcF9hdF9zaWduYWw7Ci0gdW5zaWduZWQgc2hvcnQgc3MsIF9fc3NoOwotIHN0cnVjdCBfZnBzdGF0ZSBfX3VzZXIgKmZwc3RhdGU7Ci0gdW5zaWduZWQgbG9uZyBvbGRtYXNrOworICB1bnNpZ25lZCBsb25nIGVzcF9hdF9zaWduYWw7CisgIHVuc2lnbmVkIHNob3J0IHNzLCBfX3NzaDsKKyAgc3RydWN0IF9mcHN0YXRlIF9fdXNlciAqIGZwc3RhdGU7CisgIHVuc2lnbmVkIGxvbmcgb2xkbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBjcjI7CisgIHVuc2lnbmVkIGxvbmcgY3IyOwogfTsKICNlbHNlCiBzdHJ1Y3QgX2Zwc3RhdGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBjd2Q7Ci0gX191MTYgc3dkOwotIF9fdTE2IHR3ZDsKLSBfX3UxNiBmb3A7CisgIF9fdTE2IGN3ZDsKKyAgX191MTYgc3dkOworICBfX3UxNiB0d2Q7CisgIF9fdTE2IGZvcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmlwOwotIF9fdTY0IHJkcDsKLSBfX3UzMiBteGNzcjsKLSBfX3UzMiBteGNzcl9tYXNrOworICBfX3U2NCByaXA7CisgIF9fdTY0IHJkcDsKKyAgX191MzIgbXhjc3I7CisgIF9fdTMyIG14Y3NyX21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN0X3NwYWNlWzMyXTsKLSBfX3UzMiB4bW1fc3BhY2VbNjRdOwotIF9fdTMyIHJlc2VydmVkMlsxMl07Ci0gdW5pb24geworICBfX3UzMiBzdF9zcGFjZVszMl07CisgIF9fdTMyIHhtbV9zcGFjZVs2NF07CisgIF9fdTMyIHJlc2VydmVkMlsxMl07CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWQzWzEyXTsKLSBzdHJ1Y3QgX2ZweF9zd19ieXRlcyBzd19yZXNlcnZlZDsKLSB9OworICAgIF9fdTMyIHJlc2VydmVkM1sxMl07CisgICAgc3RydWN0IF9mcHhfc3dfYnl0ZXMgc3dfcmVzZXJ2ZWQ7CisgIH07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzaWdjb250ZXh0IHsKLSBfX3U2NCByODsKLSBfX3U2NCByOTsKLSBfX3U2NCByMTA7CisgIF9fdTY0IHI4OworICBfX3U2NCByOTsKKyAgX191NjQgcjEwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByMTE7Ci0gX191NjQgcjEyOwotIF9fdTY0IHIxMzsKLSBfX3U2NCByMTQ7CisgIF9fdTY0IHIxMTsKKyAgX191NjQgcjEyOworICBfX3U2NCByMTM7CisgIF9fdTY0IHIxNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcjE1OwotIF9fdTY0IHJkaTsKLSBfX3U2NCByc2k7Ci0gX191NjQgcmJwOworICBfX3U2NCByMTU7CisgIF9fdTY0IHJkaTsKKyAgX191NjQgcnNpOworICBfX3U2NCByYnA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJieDsKLSBfX3U2NCByZHg7Ci0gX191NjQgcmF4OwotIF9fdTY0IHJjeDsKKyAgX191NjQgcmJ4OworICBfX3U2NCByZHg7CisgIF9fdTY0IHJheDsKKyAgX191NjQgcmN4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByc3A7Ci0gX191NjQgcmlwOwotIF9fdTY0IGVmbGFnczsKLSBfX3UxNiBjczsKKyAgX191NjQgcnNwOworICBfX3U2NCByaXA7CisgIF9fdTY0IGVmbGFnczsKKyAgX191MTYgY3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGdzOwotIF9fdTE2IGZzOwotIF9fdTE2IF9fcGFkMDsKLSBfX3U2NCBlcnI7CisgIF9fdTE2IGdzOworICBfX3UxNiBmczsKKyAgX191MTYgX19wYWQwOworICBfX3U2NCBlcnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHRyYXBubzsKLSBfX3U2NCBvbGRtYXNrOwotIF9fdTY0IGNyMjsKLSBzdHJ1Y3QgX2Zwc3RhdGUgX191c2VyICpmcHN0YXRlOworICBfX3U2NCB0cmFwbm87CisgIF9fdTY0IG9sZG1hc2s7CisgIF9fdTY0IGNyMjsKKyAgc3RydWN0IF9mcHN0YXRlIF9fdXNlciAqIGZwc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmZGVmIF9fSUxQMzJfXwotIF9fdTMyIF9fZnBzdGF0ZV9wYWQ7CisgIF9fdTMyIF9fZnBzdGF0ZV9wYWQ7CiAjZW5kaWYKLSBfX3U2NCByZXNlcnZlZDFbOF07CisgIF9fdTY0IHJlc2VydmVkMVs4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCiBzdHJ1Y3QgX3hzYXZlX2hkciB7Ci0gX191NjQgeHN0YXRlX2J2OworICBfX3U2NCB4c3RhdGVfYnY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc2VydmVkMVsyXTsKLSBfX3U2NCByZXNlcnZlZDJbNV07CisgIF9fdTY0IHJlc2VydmVkMVsyXTsKKyAgX191NjQgcmVzZXJ2ZWQyWzVdOwogfTsKIHN0cnVjdCBfeW1taF9zdGF0ZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHltbWhfc3BhY2VbNjRdOworICBfX3UzMiB5bW1oX3NwYWNlWzY0XTsKIH07CiBzdHJ1Y3QgX3hzdGF0ZSB7Ci0gc3RydWN0IF9mcHN0YXRlIGZwc3RhdGU7CisgIHN0cnVjdCBfZnBzdGF0ZSBmcHN0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgX3hzYXZlX2hkciB4c3RhdGVfaGRyOwotIHN0cnVjdCBfeW1taF9zdGF0ZSB5bW1oOworICBzdHJ1Y3QgX3hzYXZlX2hkciB4c3RhdGVfaGRyOworICBzdHJ1Y3QgX3ltbWhfc3RhdGUgeW1taDsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3NpZ2NvbnRleHQzMi5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zaWdjb250ZXh0MzIuaAppbmRleCAzNTU4NWRmLi44ZjM4ZGZkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3NpZ2NvbnRleHQzMi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc2lnY29udGV4dDMyLmgKQEAgLTIyLDc1ICsyMiw3NSBAQAogI2RlZmluZSBYODZfRlhTUl9NQUdJQyAweDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgX2ZwcmVnIHsKLSB1bnNpZ25lZCBzaG9ydCBzaWduaWZpY2FuZFs0XTsKLSB1bnNpZ25lZCBzaG9ydCBleHBvbmVudDsKKyAgdW5zaWduZWQgc2hvcnQgc2lnbmlmaWNhbmRbNF07CisgIHVuc2lnbmVkIHNob3J0IGV4cG9uZW50OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgX2ZweHJlZyB7Ci0gdW5zaWduZWQgc2hvcnQgc2lnbmlmaWNhbmRbNF07Ci0gdW5zaWduZWQgc2hvcnQgZXhwb25lbnQ7Ci0gdW5zaWduZWQgc2hvcnQgcGFkZGluZ1szXTsKKyAgdW5zaWduZWQgc2hvcnQgc2lnbmlmaWNhbmRbNF07CisgIHVuc2lnbmVkIHNob3J0IGV4cG9uZW50OworICB1bnNpZ25lZCBzaG9ydCBwYWRkaW5nWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgX3htbXJlZyB7Ci0gX191MzIgZWxlbWVudFs0XTsKKyAgX191MzIgZWxlbWVudFs0XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IF9mcHN0YXRlX2lhMzIgewotIF9fdTMyIGN3OwotIF9fdTMyIHN3OwotIF9fdTMyIHRhZzsKKyAgX191MzIgY3c7CisgIF9fdTMyIHN3OworICBfX3UzMiB0YWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlwb2ZmOwotIF9fdTMyIGNzc2VsOwotIF9fdTMyIGRhdGFvZmY7Ci0gX191MzIgZGF0YXNlbDsKKyAgX191MzIgaXBvZmY7CisgIF9fdTMyIGNzc2VsOworICBfX3UzMiBkYXRhb2ZmOworICBfX3UzMiBkYXRhc2VsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgX2ZwcmVnIF9zdFs4XTsKLSB1bnNpZ25lZCBzaG9ydCBzdGF0dXM7Ci0gdW5zaWduZWQgc2hvcnQgbWFnaWM7Ci0gX191MzIgX2Z4c3JfZW52WzZdOworICBzdHJ1Y3QgX2ZwcmVnIF9zdFs4XTsKKyAgdW5zaWduZWQgc2hvcnQgc3RhdHVzOworICB1bnNpZ25lZCBzaG9ydCBtYWdpYzsKKyAgX191MzIgX2Z4c3JfZW52WzZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBteGNzcjsKLSBfX3UzMiByZXNlcnZlZDsKLSBzdHJ1Y3QgX2ZweHJlZyBfZnhzcl9zdFs4XTsKLSBzdHJ1Y3QgX3htbXJlZyBfeG1tWzhdOworICBfX3UzMiBteGNzcjsKKyAgX191MzIgcmVzZXJ2ZWQ7CisgIHN0cnVjdCBfZnB4cmVnIF9meHNyX3N0WzhdOworICBzdHJ1Y3QgX3htbXJlZyBfeG1tWzhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwYWRkaW5nWzQ0XTsKLSB1bmlvbiB7Ci0gX191MzIgcGFkZGluZzJbMTJdOwotIHN0cnVjdCBfZnB4X3N3X2J5dGVzIHN3X3Jlc2VydmVkOworICBfX3UzMiBwYWRkaW5nWzQ0XTsKKyAgdW5pb24geworICAgIF9fdTMyIHBhZGRpbmcyWzEyXTsKKyAgICBzdHJ1Y3QgX2ZweF9zd19ieXRlcyBzd19yZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKKyAgfTsKIH07CiBzdHJ1Y3Qgc2lnY29udGV4dF9pYTMyIHsKLSB1bnNpZ25lZCBzaG9ydCBncywgX19nc2g7CisgIHVuc2lnbmVkIHNob3J0IGdzLCBfX2dzaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgZnMsIF9fZnNoOwotIHVuc2lnbmVkIHNob3J0IGVzLCBfX2VzaDsKLSB1bnNpZ25lZCBzaG9ydCBkcywgX19kc2g7Ci0gdW5zaWduZWQgaW50IGRpOworICB1bnNpZ25lZCBzaG9ydCBmcywgX19mc2g7CisgIHVuc2lnbmVkIHNob3J0IGVzLCBfX2VzaDsKKyAgdW5zaWduZWQgc2hvcnQgZHMsIF9fZHNoOworICB1bnNpZ25lZCBpbnQgZGk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzaTsKLSB1bnNpZ25lZCBpbnQgYnA7Ci0gdW5zaWduZWQgaW50IHNwOwotIHVuc2lnbmVkIGludCBieDsKKyAgdW5zaWduZWQgaW50IHNpOworICB1bnNpZ25lZCBpbnQgYnA7CisgIHVuc2lnbmVkIGludCBzcDsKKyAgdW5zaWduZWQgaW50IGJ4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZHg7Ci0gdW5zaWduZWQgaW50IGN4OwotIHVuc2lnbmVkIGludCBheDsKLSB1bnNpZ25lZCBpbnQgdHJhcG5vOworICB1bnNpZ25lZCBpbnQgZHg7CisgIHVuc2lnbmVkIGludCBjeDsKKyAgdW5zaWduZWQgaW50IGF4OworICB1bnNpZ25lZCBpbnQgdHJhcG5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZXJyOwotIHVuc2lnbmVkIGludCBpcDsKLSB1bnNpZ25lZCBzaG9ydCBjcywgX19jc2g7Ci0gdW5zaWduZWQgaW50IGZsYWdzOworICB1bnNpZ25lZCBpbnQgZXJyOworICB1bnNpZ25lZCBpbnQgaXA7CisgIHVuc2lnbmVkIHNob3J0IGNzLCBfX2NzaDsKKyAgdW5zaWduZWQgaW50IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc3BfYXRfc2lnbmFsOwotIHVuc2lnbmVkIHNob3J0IHNzLCBfX3NzaDsKLSB1bnNpZ25lZCBpbnQgZnBzdGF0ZTsKLSB1bnNpZ25lZCBpbnQgb2xkbWFzazsKKyAgdW5zaWduZWQgaW50IHNwX2F0X3NpZ25hbDsKKyAgdW5zaWduZWQgc2hvcnQgc3MsIF9fc3NoOworICB1bnNpZ25lZCBpbnQgZnBzdGF0ZTsKKyAgdW5zaWduZWQgaW50IG9sZG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBjcjI7CisgIHVuc2lnbmVkIGludCBjcjI7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3NpZ25hbC5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zaWduYWwuaAppbmRleCAzMDhjN2E5Li5kYmEyNjhmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3NpZ25hbC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc2lnbmFsLmgKQEAgLTkzLDMzICs5MywzMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZmRlZiBfX2kzODZfXwogc3RydWN0IHNpZ2FjdGlvbiB7Ci0gdW5pb24gewotIF9fc2lnaGFuZGxlcl90IF9zYV9oYW5kbGVyOworICB1bmlvbiB7CisgICAgX19zaWdoYW5kbGVyX3QgX3NhX2hhbmRsZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgKCpfc2Ffc2lnYWN0aW9uKShpbnQsIHN0cnVjdCBzaWdpbmZvICosIHZvaWQgKik7Ci0gfSBfdTsKLSBzaWdzZXRfdCBzYV9tYXNrOwotIHVuc2lnbmVkIGxvbmcgc2FfZmxhZ3M7CisgICAgdm9pZCgqIF9zYV9zaWdhY3Rpb24pIChpbnQsIHN0cnVjdCBzaWdpbmZvICosIHZvaWQgKik7CisgIH0gX3U7CisgIHNpZ3NldF90IHNhX21hc2s7CisgIHVuc2lnbmVkIGxvbmcgc2FfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgKCpzYV9yZXN0b3Jlcikodm9pZCk7CisgIHZvaWQoKiBzYV9yZXN0b3JlcikgKHZvaWQpOwogfTsKICNkZWZpbmUgc2FfaGFuZGxlciBfdS5fc2FfaGFuZGxlcgogI2RlZmluZSBzYV9zaWdhY3Rpb24gX3UuX3NhX3NpZ2FjdGlvbgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbHNlCiBzdHJ1Y3Qgc2lnYWN0aW9uIHsKLSBfX3NpZ2hhbmRsZXJfdCBzYV9oYW5kbGVyOwotIHVuc2lnbmVkIGxvbmcgc2FfZmxhZ3M7CisgIF9fc2lnaGFuZGxlcl90IHNhX2hhbmRsZXI7CisgIHVuc2lnbmVkIGxvbmcgc2FfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fc2lncmVzdG9yZV90IHNhX3Jlc3RvcmVyOwotIHNpZ3NldF90IHNhX21hc2s7CisgIF9fc2lncmVzdG9yZV90IHNhX3Jlc3RvcmVyOworICBzaWdzZXRfdCBzYV9tYXNrOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHNpZ2FsdHN0YWNrIHsKLSB2b2lkIF9fdXNlciAqc3Nfc3A7Ci0gaW50IHNzX2ZsYWdzOwotIHNpemVfdCBzc19zaXplOworICB2b2lkIF9fdXNlciAqIHNzX3NwOworICBpbnQgc3NfZmxhZ3M7CisgIHNpemVfdCBzc19zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gc3RhY2tfdDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zdGF0LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3N0YXQuaAppbmRleCBhZWJhY2JkLi5jMTFmZGZkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3N0YXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3N0YXQuaApAQCAtMjMsMTExICsyMywxMTQgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZkZWYgX19pMzg2X18KIHN0cnVjdCBzdGF0IHsKLSB1bnNpZ25lZCBsb25nIHN0X2RldjsKLSB1bnNpZ25lZCBsb25nIHN0X2lubzsKKyAgdW5zaWduZWQgbG9uZyBzdF9kZXY7CisgIHVuc2lnbmVkIGxvbmcgc3RfaW5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBzdF9tb2RlOwotIHVuc2lnbmVkIHNob3J0IHN0X25saW5rOwotIHVuc2lnbmVkIHNob3J0IHN0X3VpZDsKLSB1bnNpZ25lZCBzaG9ydCBzdF9naWQ7CisgIHVuc2lnbmVkIHNob3J0IHN0X21vZGU7CisgIHVuc2lnbmVkIHNob3J0IHN0X25saW5rOworICB1bnNpZ25lZCBzaG9ydCBzdF91aWQ7CisgIHVuc2lnbmVkIHNob3J0IHN0X2dpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzdF9yZGV2OwotIHVuc2lnbmVkIGxvbmcgc3Rfc2l6ZTsKLSB1bnNpZ25lZCBsb25nIHN0X2Jsa3NpemU7Ci0gdW5zaWduZWQgbG9uZyBzdF9ibG9ja3M7CisgIHVuc2lnbmVkIGxvbmcgc3RfcmRldjsKKyAgdW5zaWduZWQgbG9uZyBzdF9zaXplOworICB1bnNpZ25lZCBsb25nIHN0X2Jsa3NpemU7CisgIHVuc2lnbmVkIGxvbmcgc3RfYmxvY2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0X2F0aW1lOwotIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWVfbnNlYzsKLSB1bnNpZ25lZCBsb25nIHN0X210aW1lOwotIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWVfbnNlYzsKKyAgdW5zaWduZWQgbG9uZyBzdF9hdGltZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9hdGltZV9uc2VjOworICB1bnNpZ25lZCBsb25nIHN0X210aW1lOworICB1bnNpZ25lZCBsb25nIHN0X210aW1lX25zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWU7Ci0gdW5zaWduZWQgbG9uZyBzdF9jdGltZV9uc2VjOwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQ0OwotIHVuc2lnbmVkIGxvbmcgX191bnVzZWQ1OworICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lOworICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lX25zZWM7CisgIHVuc2lnbmVkIGxvbmcgX191bnVzZWQ0OworICB1bnNpZ25lZCBsb25nIF9fdW51c2VkNTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBJTklUX1NUUlVDVF9TVEFUX1BBRERJTkcoc3QpIGRvIHsgICBzdC5fX3VudXNlZDQgPSAwOyAgIHN0Ll9fdW51c2VkNSA9IDA7ICB9IHdoaWxlICgwKQorI2RlZmluZSBJTklUX1NUUlVDVF9TVEFUX1BBRERJTkcoc3QpIGRvIHsgc3QuX191bnVzZWQ0ID0gMDsgc3QuX191bnVzZWQ1ID0gMDsgXAorfSB3aGlsZSgwKQogI2RlZmluZSBTVEFUNjRfSEFTX0JST0tFTl9TVF9JTk8gMQogc3RydWN0IHN0YXQ2NCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9kZXY7Ci0gdW5zaWduZWQgY2hhciBfX3BhZDBbNF07Ci0gdW5zaWduZWQgbG9uZyBfX3N0X2lubzsKLSB1bnNpZ25lZCBpbnQgc3RfbW9kZTsKKyAgdW5zaWduZWQgbG9uZyBsb25nIHN0X2RldjsKKyAgdW5zaWduZWQgY2hhciBfX3BhZDBbNF07CisgIHVuc2lnbmVkIGxvbmcgX19zdF9pbm87CisgIHVuc2lnbmVkIGludCBzdF9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc3Rfbmxpbms7Ci0gdW5zaWduZWQgbG9uZyBzdF91aWQ7Ci0gdW5zaWduZWQgbG9uZyBzdF9naWQ7Ci0gdW5zaWduZWQgbG9uZyBsb25nIHN0X3JkZXY7CisgIHVuc2lnbmVkIGludCBzdF9ubGluazsKKyAgdW5zaWduZWQgbG9uZyBzdF91aWQ7CisgIHVuc2lnbmVkIGxvbmcgc3RfZ2lkOworICB1bnNpZ25lZCBsb25nIGxvbmcgc3RfcmRldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBfX3BhZDNbNF07Ci0gbG9uZyBsb25nIHN0X3NpemU7Ci0gdW5zaWduZWQgbG9uZyBzdF9ibGtzaXplOwotIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9ibG9ja3M7CisgIHVuc2lnbmVkIGNoYXIgX19wYWQzWzRdOworICBsb25nIGxvbmcgc3Rfc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBzdF9ibGtzaXplOworICB1bnNpZ25lZCBsb25nIGxvbmcgc3RfYmxvY2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0X2F0aW1lOwotIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWVfbnNlYzsKLSB1bnNpZ25lZCBsb25nIHN0X210aW1lOwotIHVuc2lnbmVkIGludCBzdF9tdGltZV9uc2VjOworICB1bnNpZ25lZCBsb25nIHN0X2F0aW1lOworICB1bnNpZ25lZCBsb25nIHN0X2F0aW1lX25zZWM7CisgIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWU7CisgIHVuc2lnbmVkIGludCBzdF9tdGltZV9uc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0X2N0aW1lOwotIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWVfbnNlYzsKLSB1bnNpZ25lZCBsb25nIGxvbmcgc3RfaW5vOworICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lOworICB1bnNpZ25lZCBsb25nIHN0X2N0aW1lX25zZWM7CisgIHVuc2lnbmVkIGxvbmcgbG9uZyBzdF9pbm87CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSU5JVF9TVFJVQ1RfU1RBVDY0X1BBRERJTkcoc3QpIGRvIHsgICBtZW1zZXQoJnN0Ll9fcGFkMCwgMCwgc2l6ZW9mKHN0Ll9fcGFkMCkpOyAgIG1lbXNldCgmc3QuX19wYWQzLCAwLCBzaXplb2Yoc3QuX19wYWQzKSk7ICB9IHdoaWxlICgwKQorI2RlZmluZSBJTklUX1NUUlVDVF9TVEFUNjRfUEFERElORyhzdCkgZG8geyBtZW1zZXQoJiBzdC5fX3BhZDAsIDAsIHNpemVvZihzdC5fX3BhZDApKTsgbWVtc2V0KCYgc3QuX19wYWQzLCAwLCBzaXplb2Yoc3QuX19wYWQzKSk7IFwKK30gd2hpbGUoMCkKICNlbHNlCiBzdHJ1Y3Qgc3RhdCB7Ci0gX19rZXJuZWxfdWxvbmdfdCBzdF9kZXY7CisgIF9fa2VybmVsX3Vsb25nX3Qgc3RfZGV2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF91bG9uZ190IHN0X2lubzsKLSBfX2tlcm5lbF91bG9uZ190IHN0X25saW5rOwotIHVuc2lnbmVkIGludCBzdF9tb2RlOwotIHVuc2lnbmVkIGludCBzdF91aWQ7CisgIF9fa2VybmVsX3Vsb25nX3Qgc3RfaW5vOworICBfX2tlcm5lbF91bG9uZ190IHN0X25saW5rOworICB1bnNpZ25lZCBpbnQgc3RfbW9kZTsKKyAgdW5zaWduZWQgaW50IHN0X3VpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN0X2dpZDsKLSB1bnNpZ25lZCBpbnQgX19wYWQwOwotIF9fa2VybmVsX3Vsb25nX3Qgc3RfcmRldjsKLSBfX2tlcm5lbF9sb25nX3Qgc3Rfc2l6ZTsKKyAgdW5zaWduZWQgaW50IHN0X2dpZDsKKyAgdW5zaWduZWQgaW50IF9fcGFkMDsKKyAgX19rZXJuZWxfdWxvbmdfdCBzdF9yZGV2OworICBfX2tlcm5lbF9sb25nX3Qgc3Rfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfbG9uZ190IHN0X2Jsa3NpemU7Ci0gX19rZXJuZWxfbG9uZ190IHN0X2Jsb2NrczsKLSBfX2tlcm5lbF91bG9uZ190IHN0X2F0aW1lOwotIF9fa2VybmVsX3Vsb25nX3Qgc3RfYXRpbWVfbnNlYzsKKyAgX19rZXJuZWxfbG9uZ190IHN0X2Jsa3NpemU7CisgIF9fa2VybmVsX2xvbmdfdCBzdF9ibG9ja3M7CisgIF9fa2VybmVsX3Vsb25nX3Qgc3RfYXRpbWU7CisgIF9fa2VybmVsX3Vsb25nX3Qgc3RfYXRpbWVfbnNlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfdWxvbmdfdCBzdF9tdGltZTsKLSBfX2tlcm5lbF91bG9uZ190IHN0X210aW1lX25zZWM7Ci0gX19rZXJuZWxfdWxvbmdfdCBzdF9jdGltZTsKLSBfX2tlcm5lbF91bG9uZ190IHN0X2N0aW1lX25zZWM7CisgIF9fa2VybmVsX3Vsb25nX3Qgc3RfbXRpbWU7CisgIF9fa2VybmVsX3Vsb25nX3Qgc3RfbXRpbWVfbnNlYzsKKyAgX19rZXJuZWxfdWxvbmdfdCBzdF9jdGltZTsKKyAgX19rZXJuZWxfdWxvbmdfdCBzdF9jdGltZV9uc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9sb25nX3QgX19saW51eF91bnVzZWRbM107CisgIF9fa2VybmVsX2xvbmdfdCBfX2xpbnV4X3VudXNlZFszXTsKIH07Ci0jZGVmaW5lIElOSVRfU1RSVUNUX1NUQVRfUEFERElORyhzdCkgZG8geyAgIHN0Ll9fcGFkMCA9IDA7ICAgc3QuX19saW51eF91bnVzZWRbMF0gPSAwOyAgIHN0Ll9fbGludXhfdW51c2VkWzFdID0gMDsgICBzdC5fX2xpbnV4X3VudXNlZFsyXSA9IDA7ICB9IHdoaWxlICgwKQorI2RlZmluZSBJTklUX1NUUlVDVF9TVEFUX1BBRERJTkcoc3QpIGRvIHsgc3QuX19wYWQwID0gMDsgc3QuX19saW51eF91bnVzZWRbMF0gPSAwOyBzdC5fX2xpbnV4X3VudXNlZFsxXSA9IDA7IHN0Ll9fbGludXhfdW51c2VkWzJdID0gMDsgXAorfSB3aGlsZSgwKQogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IF9fb2xkX2tlcm5lbF9zdGF0IHsKLSB1bnNpZ25lZCBzaG9ydCBzdF9kZXY7Ci0gdW5zaWduZWQgc2hvcnQgc3RfaW5vOwotIHVuc2lnbmVkIHNob3J0IHN0X21vZGU7CisgIHVuc2lnbmVkIHNob3J0IHN0X2RldjsKKyAgdW5zaWduZWQgc2hvcnQgc3RfaW5vOworICB1bnNpZ25lZCBzaG9ydCBzdF9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBzdF9ubGluazsKLSB1bnNpZ25lZCBzaG9ydCBzdF91aWQ7Ci0gdW5zaWduZWQgc2hvcnQgc3RfZ2lkOwotIHVuc2lnbmVkIHNob3J0IHN0X3JkZXY7CisgIHVuc2lnbmVkIHNob3J0IHN0X25saW5rOworICB1bnNpZ25lZCBzaG9ydCBzdF91aWQ7CisgIHVuc2lnbmVkIHNob3J0IHN0X2dpZDsKKyAgdW5zaWduZWQgc2hvcnQgc3RfcmRldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZkZWYgX19pMzg2X18KLSB1bnNpZ25lZCBsb25nIHN0X3NpemU7Ci0gdW5zaWduZWQgbG9uZyBzdF9hdGltZTsKLSB1bnNpZ25lZCBsb25nIHN0X210aW1lOworICB1bnNpZ25lZCBsb25nIHN0X3NpemU7CisgIHVuc2lnbmVkIGxvbmcgc3RfYXRpbWU7CisgIHVuc2lnbmVkIGxvbmcgc3RfbXRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWU7CisgIHVuc2lnbmVkIGxvbmcgc3RfY3RpbWU7CiAjZWxzZQotIHVuc2lnbmVkIGludCBzdF9zaXplOwotIHVuc2lnbmVkIGludCBzdF9hdGltZTsKKyAgdW5zaWduZWQgaW50IHN0X3NpemU7CisgIHVuc2lnbmVkIGludCBzdF9hdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN0X210aW1lOwotIHVuc2lnbmVkIGludCBzdF9jdGltZTsKKyAgdW5zaWduZWQgaW50IHN0X210aW1lOworICB1bnNpZ25lZCBpbnQgc3RfY3RpbWU7CiAjZW5kaWYKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zdGF0ZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc3RhdGZzLmgKaW5kZXggZWZjOGQwNi4uMzE3NDAzNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zdGF0ZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3N0YXRmcy5oCkBAIC0xOCw3ICsxOCw3IEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX0FTTV9YODZfU1RBVEZTX0gKICNkZWZpbmUgX0FTTV9YODZfU1RBVEZTX0gKLSNkZWZpbmUgQVJDSF9QQUNLX0NPTVBBVF9TVEFURlM2NCBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsYWxpZ25lZCg0KSkpCisjZGVmaW5lIEFSQ0hfUEFDS19DT01QQVRfU1RBVEZTNjQgX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSkKICNpbmNsdWRlIDxhc20tZ2VuZXJpYy9zdGF0ZnMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc3ZtLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3N2bS5oCmluZGV4IDg1MjMxZTguLjFlZTRmZDggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vc3ZtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS9zdm0uaApAQCAtMTA4LDcgKzEwOCw3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTVk1fRVhJVF9YU0VUQlYgMHgwOGQKICNkZWZpbmUgU1ZNX0VYSVRfTlBGIDB4NDAwCi0jZGVmaW5lIFNWTV9FWElUX0VSUiAtMQotI2RlZmluZSBTVk1fRVhJVF9SRUFTT05TICAgeyBTVk1fRVhJVF9SRUFEX0NSMCwgInJlYWRfY3IwIiB9LCAgIHsgU1ZNX0VYSVRfUkVBRF9DUjMsICJyZWFkX2NyMyIgfSwgICB7IFNWTV9FWElUX1JFQURfQ1I0LCAicmVhZF9jcjQiIH0sICAgeyBTVk1fRVhJVF9SRUFEX0NSOCwgInJlYWRfY3I4IiB9LCAgIHsgU1ZNX0VYSVRfV1JJVEVfQ1IwLCAid3JpdGVfY3IwIiB9LCAgIHsgU1ZNX0VYSVRfV1JJVEVfQ1IzLCAid3JpdGVfY3IzIiB9LCAgIHsgU1ZNX0VYSVRfV1JJVEVfQ1I0LCAid3JpdGVfY3I0IiB9LCAgIHsgU1ZNX0VYSVRfV1JJVEVfQ1I4LCAid3JpdGVfY3I4IiB9LCAgIHsgU1ZNX0VYSVRfUkVBRF9EUjAsICJyZWFkX2RyMCIgfSwgICB7IFNWTV9FWElUX1JFQURfRFIxLCAicmVhZF9kcjEiIH0sICAgeyBTVk1fRVhJVF9SRUFEX0RSMiwgInJlYWRfZHIyIiB9LCAgIHsgU1ZNX0VYSVRfUkVBRF9EUjMsICJyZWFkX2RyMyIgfSwgICB7IFNWTV9FWElUX1dSSVRFX0RSMCwgIndyaXRlX2RyMCIgfSwgICB7IFNWTV9FWElUX1dSSVRFX0RSMSwgIndyaXRlX2RyMSIgfSwgICB7IFNWTV9FWElUX1dSSVRFX0RSMiwgIndyaXRlX2RyMiIgfSwgICB7IFNWTV9FWElUX1dSSVRFX0RSMywgIndyaXRlX2RyMyIgfSwgICB7IFNWTV9FWElUX1dSSVRFX0RSNSwgIndyaXRlX2RyNSIgfSwgICB7IFNWTV9FWElUX1dSSVRFX0RSNywgIndyaXRlX2RyNyIgfSwgICB7IFNWTV9FWElUX0VYQ1BfQkFTRSArIERCX1ZFQ1RPUiwgIkRCIGV4Y3AiIH0sICAgeyBTVk1fRVhJVF9FWENQX0JBU0UgKyBCUF9WRUNUT1IsICJCUCBleGNwIiB9LCAgIHsgU1ZNX0VYSVRfRVhDUF9CQVNFICsgVURfVkVDVE9SLCAiVUQgZXhjcCIgfSwgICB7IFNWTV9FWElUX0VYQ1BfQkFTRSArIFBGX1ZFQ1RPUiwgIlBGIGV4Y3AiIH0sICAgeyBTVk1fRVhJVF9FWENQX0JBU0UgKyBOTV9WRUNUT1IsICJOTSBleGNwIiB9LCAgIHsgU1ZNX0VYSVRfRVhDUF9CQVNFICsgTUNfVkVDVE9SLCAiTUMgZXhjcCIgfSwgICB7IFNWTV9FWElUX0lOVFIsICJpbnRlcnJ1cHQiIH0sICAgeyBTVk1fRVhJVF9OTUksICJubWkiIH0sICAgeyBTVk1fRVhJVF9TTUksICJzbWkiIH0sICAgeyBTVk1fRVhJVF9JTklULCAiaW5pdCIgfSwgICB7IFNWTV9FWElUX1ZJTlRSLCAidmludHIiIH0sICAgeyBTVk1fRVhJVF9DUFVJRCwgImNwdWlkIiB9LCAgIHsgU1ZNX0VYSVRfSU5WRCwgImludmQiIH0sICAgeyBTVk1fRVhJVF9ITFQsICJobHQiIH0sICAgeyBTVk1fRVhJVF9JTlZMUEcsICJpbnZscGciIH0sICAgeyBTVk1fRVhJVF9JTlZMUEdBLCAiaW52bHBnYSIgfSwgICB7IFNWTV9FWElUX0lPSU8sICJpbyIgfSwgICB7IFNWTV9FWElUX01TUiwgIm1zciIgfSwgICB7IFNWTV9FWElUX1RBU0tfU1dJVENILCAidGFza19zd2l0Y2giIH0sICAgeyBTVk1fRVhJVF9TSFVURE9XTiwgInNodXRkb3duIiB9LCAgIHsgU1ZNX0VYSVRfVk1SVU4sICJ2bXJ1biIgfSwgICB7IFNWTV9FWElUX1ZNTUNBTEwsICJoeXBlcmNhbGwiIH0sICAgeyBTVk1fRVhJVF9WTUxPQUQsICJ2bWxvYWQiIH0sICAgeyBTVk1fRVhJVF9WTVNBVkUsICJ2bXNhdmUiIH0sICAgeyBTVk1fRVhJVF9TVEdJLCAic3RnaSIgfSwgICB7IFNWTV9FWElUX0NMR0ksICJjbGdpIiB9LCAgIHsgU1ZNX0VYSVRfU0tJTklULCAic2tpbml0IiB9LCAgIHsgU1ZNX0VYSVRfV0JJTlZELCAid2JpbnZkIiB9LCAgIHsgU1ZNX0VYSVRfTU9OSVRPUiwgIm1vbml0b3IiIH0sICAgeyBTVk1fRVhJVF9NV0FJVCwgIm13YWl0IiB9LCAgIHsgU1ZNX0VYSVRfWFNFVEJWLCAieHNldGJ2IiB9LCAgIHsgU1ZNX0VYSVRfTlBGLCAibnBmIiB9CisjZGVmaW5lIFNWTV9FWElUX0VSUiAtIDEKKyNkZWZpbmUgU1ZNX0VYSVRfUkVBU09OUyB7IFNWTV9FWElUX1JFQURfQ1IwLCAicmVhZF9jcjAiIH0sIHsgU1ZNX0VYSVRfUkVBRF9DUjMsICJyZWFkX2NyMyIgfSwgeyBTVk1fRVhJVF9SRUFEX0NSNCwgInJlYWRfY3I0IiB9LCB7IFNWTV9FWElUX1JFQURfQ1I4LCAicmVhZF9jcjgiIH0sIHsgU1ZNX0VYSVRfV1JJVEVfQ1IwLCAid3JpdGVfY3IwIiB9LCB7IFNWTV9FWElUX1dSSVRFX0NSMywgIndyaXRlX2NyMyIgfSwgeyBTVk1fRVhJVF9XUklURV9DUjQsICJ3cml0ZV9jcjQiIH0sIHsgU1ZNX0VYSVRfV1JJVEVfQ1I4LCAid3JpdGVfY3I4IiB9LCB7IFNWTV9FWElUX1JFQURfRFIwLCAicmVhZF9kcjAiIH0sIHsgU1ZNX0VYSVRfUkVBRF9EUjEsICJyZWFkX2RyMSIgfSwgeyBTVk1fRVhJVF9SRUFEX0RSMiwgInJlYWRfZHIyIiB9LCB7IFNWTV9FWElUX1JFQURfRFIzLCAicmVhZF9kcjMiIH0sIHsgU1ZNX0VYSVRfV1JJVEVfRFIwLCAid3JpdGVfZHIwIiB9LCB7IFNWTV9FWElUX1dSSVRFX0RSMSwgIndyaXRlX2RyMSIgfSwgeyBTVk1fRVhJVF9XUklURV9EUjIsICJ3cml0ZV9kcjIiIH0sIHsgU1ZNX0VYSVRfV1JJVEVfRFIzLCAid3JpdGVfZHIzIiB9LCB7IFNWTV9FWElUX1dSSVRFX0RSNSwgIndyaXRlX2RyNSIgfSwgeyBTVk1fRVhJVF9XUklURV9EUjcsICJ3cml0ZV9kcjciIH0sIHsgU1ZNX0VYSVRfRVhDUF9CQVNFICsgREJfVkVDVE9SLCAiREIgZXhjcCIgfSwgeyBTVk1fRVhJVF9FWENQX0JBU0UgKyBCUF9WRUNUT1IsICJCUCBleGNwIiB9LCB7IFNWTV9FWElUX0VYQ1BfQkFTRSArIFVEX1ZFQ1RPUiwgIlVEIGV4Y3AiIH0sIHsgU1ZNX0VYSVRfRVhDUF9CQVNFICsgUEZfVkVDVE9SLCAiUEYgZXhjcCIgfSwgeyBTVk1fRVhJVF9FWENQX0JBU0UgKyBOTV9WRUNUT1IsICJOTSBleGNwIiB9LCB7IFNWTV9FWElUX0VYQ1BfQkFTRSArIE1DX1ZFQ1RPUiwgIk1DIGV4Y3AiIH0sIHsgU1ZNX0VYSVRfSU5UUiwgImludGVycnVwdCIgfSwgeyBTVk1fRVhJVF9OTUksICJubWkiIH0sIHsgU1ZNX0VYSVRfU01JLCAic21pIiB9LCB7IFNWTV9FWElUX0lOSVQsICJpbml0IiB9LCB7IFNWTV9FWElUX1ZJTlRSLCAidmludHIiIH0sIHsgU1ZNX0VYSVRfQ1BVSUQsICJjcHVpZCIgfSwgeyBTVk1fRVhJVF9JTlZELCAiaW52ZCIgfSwgeyBTVk1fRVhJVF9ITFQsICJobHQiIH0sIHsgU1ZNX0VYSVRfSU5WTFBHLCAiaW52bHBnIiB9LCB7IFNWTV9FWElUX0lOVkxQR0EsICJpbnZscGdhIiB9LCB7IFNWTV9FWElUX0lPSU8sICJpbyIgfSwgeyBTVk1fRVhJVF9NU1IsICJtc3IiIH0sIHsgU1ZNX0VYSVRfVEFTS19TV0lUQ0gsICJ0YXNrX3N3aXRjaCIgfSwgeyBTVk1fRVhJVF9TSFVURE9XTiwgInNodXRkb3duIiB9LCB7IFNWTV9FWElUX1ZNUlVOLCAidm1ydW4iIH0sIHsgU1ZNX0VYSVRfVk1NQ0FMTCwgImh5cGVyY2FsbCIgfSwgeyBTVk1fRVhJVF9WTUxPQUQsICJ2bWxvYWQiIH0sIHsgU1ZNX0VYSVRfVk1TQVZFLCAidm1zYXZlIiB9LCB7IFNWTV9FWElUX1NUR0ksICJzdGdpIiB9LCB7IFNWTV9FWElUX0NMR0ksICJjbGdpIiB9LCB7IFNWTV9FWElUX1NLSU5JVCwgInNraW5pdCIgfSwgeyBTVk1fRVhJVF9XQklOVkQsICJ3YmludmQiIH0sIHsgU1ZNX0VYSVRfTU9OSVRPUiwgIm1vbml0b3IiIH0sIHsgU1ZNX0VYSVRfTVdBSVQsICJtd2FpdCIgfSwgeyBTVk1fRVhJVF9YU0VUQlYsICJ4c2V0YnYiIH0sIHsgU1ZNX0VYSVRfTlBGLCAibnBmIiB9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3VuaXN0ZF8zMi5oIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS91bmlzdGRfMzIuaAppbmRleCA0ODM4YWUxLi5jMWE3ZWY0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3VuaXN0ZF8zMi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdW5pc3RkXzMyLmgKQEAgLTQ1NCw1ICs0NTQsMTEgQEAKICNkZWZpbmUgX19OUl9maW5pdF9tb2R1bGUgMzUwCiAjZGVmaW5lIF9fTlJfc2NoZWRfc2V0YXR0ciAzNTEKICNkZWZpbmUgX19OUl9zY2hlZF9nZXRhdHRyIDM1MgotI2VuZGlmCisjZGVmaW5lIF9fTlJfcmVuYW1lYXQyIDM1MwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19OUl9zZWNjb21wIDM1NAorI2RlZmluZSBfX05SX2dldHJhbmRvbSAzNTUKKyNkZWZpbmUgX19OUl9tZW1mZF9jcmVhdGUgMzU2CisjZGVmaW5lIF9fTlJfYnBmIDM1NworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS91bmlzdGRfNjQuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdW5pc3RkXzY0LmgKaW5kZXggN2JkYjMwMS4uYzUzOGIyMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS91bmlzdGRfNjQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3VuaXN0ZF82NC5oCkBAIC00MTMsNCArNDEzLDEyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NjaGVkX3NldGF0dHIgMzE0CiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0YXR0ciAzMTUKKyNkZWZpbmUgX19OUl9yZW5hbWVhdDIgMzE2CisjZGVmaW5lIF9fTlJfc2VjY29tcCAzMTcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfZ2V0cmFuZG9tIDMxOAorI2RlZmluZSBfX05SX21lbWZkX2NyZWF0ZSAzMTkKKyNkZWZpbmUgX19OUl9rZXhlY19maWxlX2xvYWQgMzIwCisjZGVmaW5lIF9fTlJfYnBmIDMyMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS91bmlzdGRfeDMyLmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3VuaXN0ZF94MzIuaAppbmRleCBlZTUxZmI1Li5kODdkMDc0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3VuaXN0ZF94MzIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3VuaXN0ZF94MzIuaApAQCAtMjQ3LDExOSArMjQ3LDEyNCBAQAogI2RlZmluZSBfX05SX3NjaGVkX3NldGFmZmluaXR5IChfX1gzMl9TWVNDQUxMX0JJVCArIDIwMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2NoZWRfZ2V0YWZmaW5pdHkgKF9fWDMyX1NZU0NBTExfQklUICsgMjA0KQotI2RlZmluZSBfX05SX2lvX3NldHVwIChfX1gzMl9TWVNDQUxMX0JJVCArIDIwNikKICNkZWZpbmUgX19OUl9pb19kZXN0cm95IChfX1gzMl9TWVNDQUxMX0JJVCArIDIwNykKICNkZWZpbmUgX19OUl9pb19nZXRldmVudHMgKF9fWDMyX1NZU0NBTExfQklUICsgMjA4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19OUl9pb19zdWJtaXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjA5KQogI2RlZmluZSBfX05SX2lvX2NhbmNlbCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMTApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2xvb2t1cF9kY29va2llIChfX1gzMl9TWVNDQUxMX0JJVCArIDIxMikKICNkZWZpbmUgX19OUl9lcG9sbF9jcmVhdGUgKF9fWDMyX1NZU0NBTExfQklUICsgMjEzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9yZW1hcF9maWxlX3BhZ2VzIChfX1gzMl9TWVNDQUxMX0JJVCArIDIxNikKICNkZWZpbmUgX19OUl9nZXRkZW50czY0IChfX1gzMl9TWVNDQUxMX0JJVCArIDIxNykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2V0X3RpZF9hZGRyZXNzIChfX1gzMl9TWVNDQUxMX0JJVCArIDIxOCkKICNkZWZpbmUgX19OUl9yZXN0YXJ0X3N5c2NhbGwgKF9fWDMyX1NZU0NBTExfQklUICsgMjE5KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zZW10aW1lZG9wIChfX1gzMl9TWVNDQUxMX0JJVCArIDIyMCkKICNkZWZpbmUgX19OUl9mYWR2aXNlNjQgKF9fWDMyX1NZU0NBTExfQklUICsgMjIxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl90aW1lcl9zZXR0aW1lIChfX1gzMl9TWVNDQUxMX0JJVCArIDIyMykKICNkZWZpbmUgX19OUl90aW1lcl9nZXR0aW1lIChfX1gzMl9TWVNDQUxMX0JJVCArIDIyNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdGltZXJfZ2V0b3ZlcnJ1biAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMjUpCiAjZGVmaW5lIF9fTlJfdGltZXJfZGVsZXRlIChfX1gzMl9TWVNDQUxMX0JJVCArIDIyNikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfY2xvY2tfc2V0dGltZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMjcpCiAjZGVmaW5lIF9fTlJfY2xvY2tfZ2V0dGltZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMjgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Nsb2NrX2dldHJlcyAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMjkpCiAjZGVmaW5lIF9fTlJfY2xvY2tfbmFub3NsZWVwIChfX1gzMl9TWVNDQUxMX0JJVCArIDIzMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZXhpdF9ncm91cCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMzEpCiAjZGVmaW5lIF9fTlJfZXBvbGxfd2FpdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMzIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Vwb2xsX2N0bCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMzMpCiAjZGVmaW5lIF9fTlJfdGdraWxsIChfX1gzMl9TWVNDQUxMX0JJVCArIDIzNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfdXRpbWVzIChfX1gzMl9TWVNDQUxMX0JJVCArIDIzNSkKICNkZWZpbmUgX19OUl9tYmluZCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyMzcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NldF9tZW1wb2xpY3kgKF9fWDMyX1NZU0NBTExfQklUICsgMjM4KQogI2RlZmluZSBfX05SX2dldF9tZW1wb2xpY3kgKF9fWDMyX1NZU0NBTExfQklUICsgMjM5KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9tcV9vcGVuIChfX1gzMl9TWVNDQUxMX0JJVCArIDI0MCkKICNkZWZpbmUgX19OUl9tcV91bmxpbmsgKF9fWDMyX1NZU0NBTExfQklUICsgMjQxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9tcV90aW1lZHNlbmQgKF9fWDMyX1NZU0NBTExfQklUICsgMjQyKQogI2RlZmluZSBfX05SX21xX3RpbWVkcmVjZWl2ZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNDMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX21xX2dldHNldGF0dHIgKF9fWDMyX1NZU0NBTExfQklUICsgMjQ1KQogI2RlZmluZSBfX05SX2FkZF9rZXkgKF9fWDMyX1NZU0NBTExfQklUICsgMjQ4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9yZXF1ZXN0X2tleSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNDkpCiAjZGVmaW5lIF9fTlJfa2V5Y3RsIChfX1gzMl9TWVNDQUxMX0JJVCArIDI1MCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfaW9wcmlvX3NldCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNTEpCiAjZGVmaW5lIF9fTlJfaW9wcmlvX2dldCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNTIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2lub3RpZnlfaW5pdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNTMpCiAjZGVmaW5lIF9fTlJfaW5vdGlmeV9hZGRfd2F0Y2ggKF9fWDMyX1NZU0NBTExfQklUICsgMjU0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9pbm90aWZ5X3JtX3dhdGNoIChfX1gzMl9TWVNDQUxMX0JJVCArIDI1NSkKICNkZWZpbmUgX19OUl9taWdyYXRlX3BhZ2VzIChfX1gzMl9TWVNDQUxMX0JJVCArIDI1NikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfb3BlbmF0IChfX1gzMl9TWVNDQUxMX0JJVCArIDI1NykKICNkZWZpbmUgX19OUl9ta2RpcmF0IChfX1gzMl9TWVNDQUxMX0JJVCArIDI1OCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbWtub2RhdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNTkpCiAjZGVmaW5lIF9fTlJfZmNob3duYXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjYwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9mdXRpbWVzYXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjYxKQogI2RlZmluZSBfX05SX25ld2ZzdGF0YXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjYyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl91bmxpbmthdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNjMpCiAjZGVmaW5lIF9fTlJfcmVuYW1lYXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjY0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9saW5rYXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjY1KQogI2RlZmluZSBfX05SX3N5bWxpbmthdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNjYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3JlYWRsaW5rYXQgKF9fWDMyX1NZU0NBTExfQklUICsgMjY3KQogI2RlZmluZSBfX05SX2ZjaG1vZGF0IChfX1gzMl9TWVNDQUxMX0JJVCArIDI2OCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZmFjY2Vzc2F0IChfX1gzMl9TWVNDQUxMX0JJVCArIDI2OSkKICNkZWZpbmUgX19OUl9wc2VsZWN0NiAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyNzApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3Bwb2xsIChfX1gzMl9TWVNDQUxMX0JJVCArIDI3MSkKICNkZWZpbmUgX19OUl91bnNoYXJlIChfX1gzMl9TWVNDQUxMX0JJVCArIDI3MikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc3BsaWNlIChfX1gzMl9TWVNDQUxMX0JJVCArIDI3NSkKICNkZWZpbmUgX19OUl90ZWUgKF9fWDMyX1NZU0NBTExfQklUICsgMjc2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zeW5jX2ZpbGVfcmFuZ2UgKF9fWDMyX1NZU0NBTExfQklUICsgMjc3KQogI2RlZmluZSBfX05SX3V0aW1lbnNhdCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyODApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2Vwb2xsX3B3YWl0IChfX1gzMl9TWVNDQUxMX0JJVCArIDI4MSkKICNkZWZpbmUgX19OUl9zaWduYWxmZCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyODIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3RpbWVyZmRfY3JlYXRlIChfX1gzMl9TWVNDQUxMX0JJVCArIDI4MykKICNkZWZpbmUgX19OUl9ldmVudGZkIChfX1gzMl9TWVNDQUxMX0JJVCArIDI4NCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZmFsbG9jYXRlIChfX1gzMl9TWVNDQUxMX0JJVCArIDI4NSkKICNkZWZpbmUgX19OUl90aW1lcmZkX3NldHRpbWUgKF9fWDMyX1NZU0NBTExfQklUICsgMjg2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl90aW1lcmZkX2dldHRpbWUgKF9fWDMyX1NZU0NBTExfQklUICsgMjg3KQogI2RlZmluZSBfX05SX2FjY2VwdDQgKF9fWDMyX1NZU0NBTExfQklUICsgMjg4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19OUl9zaWduYWxmZDQgKF9fWDMyX1NZU0NBTExfQklUICsgMjg5KQogI2RlZmluZSBfX05SX2V2ZW50ZmQyIChfX1gzMl9TWVNDQUxMX0JJVCArIDI5MCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZXBvbGxfY3JlYXRlMSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyOTEpCiAjZGVmaW5lIF9fTlJfZHVwMyAoX19YMzJfU1lTQ0FMTF9CSVQgKyAyOTIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3BpcGUyIChfX1gzMl9TWVNDQUxMX0JJVCArIDI5MykKICNkZWZpbmUgX19OUl9pbm90aWZ5X2luaXQxIChfX1gzMl9TWVNDQUxMX0JJVCArIDI5NCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfcGVyZl9ldmVudF9vcGVuIChfX1gzMl9TWVNDQUxMX0JJVCArIDI5OCkKICNkZWZpbmUgX19OUl9mYW5vdGlmeV9pbml0IChfX1gzMl9TWVNDQUxMX0JJVCArIDMwMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfZmFub3RpZnlfbWFyayAoX19YMzJfU1lTQ0FMTF9CSVQgKyAzMDEpCiAjZGVmaW5lIF9fTlJfcHJsaW1pdDY0IChfX1gzMl9TWVNDQUxMX0JJVCArIDMwMikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfbmFtZV90b19oYW5kbGVfYXQgKF9fWDMyX1NZU0NBTExfQklUICsgMzAzKQogI2RlZmluZSBfX05SX29wZW5fYnlfaGFuZGxlX2F0IChfX1gzMl9TWVNDQUxMX0JJVCArIDMwNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfY2xvY2tfYWRqdGltZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAzMDUpCiAjZGVmaW5lIF9fTlJfc3luY2ZzIChfX1gzMl9TWVNDQUxMX0JJVCArIDMwNikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTlJfc2V0bnMgKF9fWDMyX1NZU0NBTExfQklUICsgMzA4KQogI2RlZmluZSBfX05SX2dldGNwdSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAzMDkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX2tjbXAgKF9fWDMyX1NZU0NBTExfQklUICsgMzEyKQogI2RlZmluZSBfX05SX2Zpbml0X21vZHVsZSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAzMTMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3NjaGVkX3NldGF0dHIgKF9fWDMyX1NZU0NBTExfQklUICsgMzE0KQogI2RlZmluZSBfX05SX3NjaGVkX2dldGF0dHIgKF9fWDMyX1NZU0NBTExfQklUICsgMzE1KQorI2RlZmluZSBfX05SX3JlbmFtZWF0MiAoX19YMzJfU1lTQ0FMTF9CSVQgKyAzMTYpCisjZGVmaW5lIF9fTlJfc2VjY29tcCAoX19YMzJfU1lTQ0FMTF9CSVQgKyAzMTcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX05SX2dldHJhbmRvbSAoX19YMzJfU1lTQ0FMTF9CSVQgKyAzMTgpCisjZGVmaW5lIF9fTlJfbWVtZmRfY3JlYXRlIChfX1gzMl9TWVNDQUxMX0JJVCArIDMxOSkKKyNkZWZpbmUgX19OUl9rZXhlY19maWxlX2xvYWQgKF9fWDMyX1NZU0NBTExfQklUICsgMzIwKQorI2RlZmluZSBfX05SX2JwZiAoX19YMzJfU1lTQ0FMTF9CSVQgKyAzMjEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05SX3J0X3NpZ2FjdGlvbiAoX19YMzJfU1lTQ0FMTF9CSVQgKyA1MTIpCiAjZGVmaW5lIF9fTlJfcnRfc2lncmV0dXJuIChfX1gzMl9TWVNDQUxMX0JJVCArIDUxMykKQEAgLTM5OSw1ICs0MDQsNyBAQAogI2RlZmluZSBfX05SX3Byb2Nlc3Nfdm1fd3JpdGV2IChfX1gzMl9TWVNDQUxMX0JJVCArIDU0MCkKICNkZWZpbmUgX19OUl9zZXRzb2Nrb3B0IChfX1gzMl9TWVNDQUxMX0JJVCArIDU0MSkKICNkZWZpbmUgX19OUl9nZXRzb2Nrb3B0IChfX1gzMl9TWVNDQUxMX0JJVCArIDU0MikKLSNlbmRpZgorI2RlZmluZSBfX05SX2lvX3NldHVwIChfX1gzMl9TWVNDQUxMX0JJVCArIDU0MykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fTlJfaW9fc3VibWl0IChfX1gzMl9TWVNDQUxMX0JJVCArIDU0NCkKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS92bTg2LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3ZtODYuaAppbmRleCA0MjUxM2NjLi5lYjUzNTA0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3ZtODYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3ZtODYuaApAQCAtNDgsNjggKzQ4LDY4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWTTg2X0dFVF9BTkRfUkVTRVRfSVJRIDYKIHN0cnVjdCB2bTg2X3JlZ3MgewotIGxvbmcgZWJ4OwotIGxvbmcgZWN4OworICBsb25nIGVieDsKKyAgbG9uZyBlY3g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgZWR4OwotIGxvbmcgZXNpOwotIGxvbmcgZWRpOwotIGxvbmcgZWJwOworICBsb25nIGVkeDsKKyAgbG9uZyBlc2k7CisgIGxvbmcgZWRpOworICBsb25nIGVicDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBlYXg7Ci0gbG9uZyBfX251bGxfZHM7Ci0gbG9uZyBfX251bGxfZXM7Ci0gbG9uZyBfX251bGxfZnM7CisgIGxvbmcgZWF4OworICBsb25nIF9fbnVsbF9kczsKKyAgbG9uZyBfX251bGxfZXM7CisgIGxvbmcgX19udWxsX2ZzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIF9fbnVsbF9nczsKLSBsb25nIG9yaWdfZWF4OwotIGxvbmcgZWlwOwotIHVuc2lnbmVkIHNob3J0IGNzLCBfX2NzaDsKKyAgbG9uZyBfX251bGxfZ3M7CisgIGxvbmcgb3JpZ19lYXg7CisgIGxvbmcgZWlwOworICB1bnNpZ25lZCBzaG9ydCBjcywgX19jc2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgZWZsYWdzOwotIGxvbmcgZXNwOwotIHVuc2lnbmVkIHNob3J0IHNzLCBfX3NzaDsKLSB1bnNpZ25lZCBzaG9ydCBlcywgX19lc2g7CisgIGxvbmcgZWZsYWdzOworICBsb25nIGVzcDsKKyAgdW5zaWduZWQgc2hvcnQgc3MsIF9fc3NoOworICB1bnNpZ25lZCBzaG9ydCBlcywgX19lc2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGRzLCBfX2RzaDsKLSB1bnNpZ25lZCBzaG9ydCBmcywgX19mc2g7Ci0gdW5zaWduZWQgc2hvcnQgZ3MsIF9fZ3NoOworICB1bnNpZ25lZCBzaG9ydCBkcywgX19kc2g7CisgIHVuc2lnbmVkIHNob3J0IGZzLCBfX2ZzaDsKKyAgdW5zaWduZWQgc2hvcnQgZ3MsIF9fZ3NoOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcmV2ZWN0b3JlZF9zdHJ1Y3QgewotIHVuc2lnbmVkIGxvbmcgX19tYXBbOF07CisgIHVuc2lnbmVkIGxvbmcgX19tYXBbOF07CiB9Owogc3RydWN0IHZtODZfc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHZtODZfcmVncyByZWdzOwotIHVuc2lnbmVkIGxvbmcgZmxhZ3M7Ci0gdW5zaWduZWQgbG9uZyBzY3JlZW5fYml0bWFwOwotIHVuc2lnbmVkIGxvbmcgY3B1X3R5cGU7CisgIHN0cnVjdCB2bTg2X3JlZ3MgcmVnczsKKyAgdW5zaWduZWQgbG9uZyBmbGFnczsKKyAgdW5zaWduZWQgbG9uZyBzY3JlZW5fYml0bWFwOworICB1bnNpZ25lZCBsb25nIGNwdV90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgcmV2ZWN0b3JlZF9zdHJ1Y3QgaW50X3JldmVjdG9yZWQ7Ci0gc3RydWN0IHJldmVjdG9yZWRfc3RydWN0IGludDIxX3JldmVjdG9yZWQ7CisgIHN0cnVjdCByZXZlY3RvcmVkX3N0cnVjdCBpbnRfcmV2ZWN0b3JlZDsKKyAgc3RydWN0IHJldmVjdG9yZWRfc3RydWN0IGludDIxX3JldmVjdG9yZWQ7CiB9OwogI2RlZmluZSBWTTg2X1NDUkVFTl9CSVRNQVAgMHgwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHZtODZwbHVzX2luZm9fc3RydWN0IHsKLSB1bnNpZ25lZCBsb25nIGZvcmNlX3JldHVybl9mb3JfcGljOjE7Ci0gdW5zaWduZWQgbG9uZyB2bTg2ZGJnX2FjdGl2ZToxOwotIHVuc2lnbmVkIGxvbmcgdm04NmRiZ19URnBlbmRpZzoxOworICB1bnNpZ25lZCBsb25nIGZvcmNlX3JldHVybl9mb3JfcGljIDogMTsKKyAgdW5zaWduZWQgbG9uZyB2bTg2ZGJnX2FjdGl2ZSA6IDE7CisgIHVuc2lnbmVkIGxvbmcgdm04NmRiZ19URnBlbmRpZyA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgdW51c2VkOjI4OwotIHVuc2lnbmVkIGxvbmcgaXNfdm04NnB1czoxOwotIHVuc2lnbmVkIGNoYXIgdm04NmRiZ19pbnR4eHRhYlszMl07CisgIHVuc2lnbmVkIGxvbmcgdW51c2VkIDogMjg7CisgIHVuc2lnbmVkIGxvbmcgaXNfdm04NnB1cyA6IDE7CisgIHVuc2lnbmVkIGNoYXIgdm04NmRiZ19pbnR4eHRhYlszMl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2bTg2cGx1c19zdHJ1Y3QgewotIHN0cnVjdCB2bTg2X3JlZ3MgcmVnczsKLSB1bnNpZ25lZCBsb25nIGZsYWdzOwotIHVuc2lnbmVkIGxvbmcgc2NyZWVuX2JpdG1hcDsKKyAgc3RydWN0IHZtODZfcmVncyByZWdzOworICB1bnNpZ25lZCBsb25nIGZsYWdzOworICB1bnNpZ25lZCBsb25nIHNjcmVlbl9iaXRtYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgY3B1X3R5cGU7Ci0gc3RydWN0IHJldmVjdG9yZWRfc3RydWN0IGludF9yZXZlY3RvcmVkOwotIHN0cnVjdCByZXZlY3RvcmVkX3N0cnVjdCBpbnQyMV9yZXZlY3RvcmVkOwotIHN0cnVjdCB2bTg2cGx1c19pbmZvX3N0cnVjdCB2bTg2cGx1czsKKyAgdW5zaWduZWQgbG9uZyBjcHVfdHlwZTsKKyAgc3RydWN0IHJldmVjdG9yZWRfc3RydWN0IGludF9yZXZlY3RvcmVkOworICBzdHJ1Y3QgcmV2ZWN0b3JlZF9zdHJ1Y3QgaW50MjFfcmV2ZWN0b3JlZDsKKyAgc3RydWN0IHZtODZwbHVzX2luZm9fc3RydWN0IHZtODZwbHVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdm14LmggYi9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3ZteC5oCmluZGV4IGUxMGUyYjYuLjY3MzFkM2MgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdm14LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS92bXguaApAQCAtNjgsMTEgKzY4LDEyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFWElUX1JFQVNPTl9JTlZFUFQgNTAKICNkZWZpbmUgRVhJVF9SRUFTT05fUFJFRU1QVElPTl9USU1FUiA1MgorI2RlZmluZSBFWElUX1JFQVNPTl9JTlZWUElEIDUzCiAjZGVmaW5lIEVYSVRfUkVBU09OX1dCSU5WRCA1NAotI2RlZmluZSBFWElUX1JFQVNPTl9YU0VUQlYgNTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVYSVRfUkVBU09OX1hTRVRCViA1NQogI2RlZmluZSBFWElUX1JFQVNPTl9BUElDX1dSSVRFIDU2CiAjZGVmaW5lIEVYSVRfUkVBU09OX0lOVlBDSUQgNTgKLSNkZWZpbmUgVk1YX0VYSVRfUkVBU09OUyAgIHsgRVhJVF9SRUFTT05fRVhDRVBUSU9OX05NSSwgIkVYQ0VQVElPTl9OTUkiIH0sICAgeyBFWElUX1JFQVNPTl9FWFRFUk5BTF9JTlRFUlJVUFQsICJFWFRFUk5BTF9JTlRFUlJVUFQiIH0sICAgeyBFWElUX1JFQVNPTl9UUklQTEVfRkFVTFQsICJUUklQTEVfRkFVTFQiIH0sICAgeyBFWElUX1JFQVNPTl9QRU5ESU5HX0lOVEVSUlVQVCwgIlBFTkRJTkdfSU5URVJSVVBUIiB9LCAgIHsgRVhJVF9SRUFTT05fTk1JX1dJTkRPVywgIk5NSV9XSU5ET1ciIH0sICAgeyBFWElUX1JFQVNPTl9UQVNLX1NXSVRDSCwgIlRBU0tfU1dJVENIIiB9LCAgIHsgRVhJVF9SRUFTT05fQ1BVSUQsICJDUFVJRCIgfSwgICB7IEVYSVRfUkVBU09OX0hMVCwgIkhMVCIgfSwgICB7IEVYSVRfUkVBU09OX0lOVkxQRywgIklOVkxQRyIgfSwgICB7IEVYSVRfUkVBU09OX1JEUE1DLCAiUkRQTUMiIH0sICAgeyBFWElUX1JFQVNPTl9SRFRTQywgIlJEVFNDIiB9LCAgIHsgRVhJVF9SRUFTT05fVk1DQUxMLCAiVk1DQUxMIiB9LCAgIHsgRVhJVF9SRUFTT05fVk1DTEVBUiwgIlZNQ0xFQVIiIH0sICAgeyBFWElUX1JFQVNPTl9WTUxBVU5DSCwgIlZNTEFVTkNIIiB9LCAgIHsgRVhJVF9SRUFTT05fVk1QVFJMRCwgIlZNUFRSTEQiIH0sICAgeyBFWElUX1JFQVNPTl9WTVBUUlNULCAiVk1QVFJTVCIgfSwgICB7IEVYSVRfUkVBU09OX1ZNUkVBRCwgIlZNUkVBRCIgfSwgICB7IEVYSVRfUkVBU09OX1ZNUkVTVU1FLCAiVk1SRVNVTUUiIH0sICAgeyBFWElUX1JFQVNPTl9WTVdSSVRFLCAiVk1XUklURSIgfSwgICB7IEVYSVRfUkVBU09OX1ZNT0ZGLCAiVk1PRkYiIH0sICAgeyBFWElUX1JFQVNPTl9WTU9OLCAiVk1PTiIgfSwgICB7IEVYSVRfUkVBU09OX0NSX0FDQ0VTUywgIkNSX0FDQ0VTUyIgfSwgICB7IEVYSVRfUkVBU09OX0RSX0FDQ0VTUywgIkRSX0FDQ0VTUyIgfSwgICB7IEVYSVRfUkVBU09OX0lPX0lOU1RSVUNUSU9OLCAiSU9fSU5TVFJVQ1RJT04iIH0sICAgeyBFWElUX1JFQVNPTl9NU1JfUkVBRCwgIk1TUl9SRUFEIiB9LCAgIHsgRVhJVF9SRUFTT05fTVNSX1dSSVRFLCAiTVNSX1dSSVRFIiB9LCAgIHsgRVhJVF9SRUFTT05fTVdBSVRfSU5TVFJVQ1RJT04sICJNV0FJVF9JTlNUUlVDVElPTiIgfSwgICB7IEVYSVRfUkVBU09OX01PTklUT1JfSU5TVFJVQ1RJT04sICJNT05JVE9SX0lOU1RSVUNUSU9OIiB9LCAgIHsgRVhJVF9SRUFTT05fUEFVU0VfSU5TVFJVQ1RJT04sICJQQVVTRV9JTlNUUlVDVElPTiIgfSwgICB7IEVYSVRfUkVBU09OX01DRV9EVVJJTkdfVk1FTlRSWSwgIk1DRV9EVVJJTkdfVk1FTlRSWSIgfSwgICB7IEVYSVRfUkVBU09OX1RQUl9CRUxPV19USFJFU0hPTEQsICJUUFJfQkVMT1dfVEhSRVNIT0xEIiB9LCAgIHsgRVhJVF9SRUFTT05fQVBJQ19BQ0NFU1MsICJBUElDX0FDQ0VTUyIgfSwgICB7IEVYSVRfUkVBU09OX0VQVF9WSU9MQVRJT04sICJFUFRfVklPTEFUSU9OIiB9LCAgIHsgRVhJVF9SRUFTT05fRVBUX01JU0NPTkZJRywgIkVQVF9NSVNDT05GSUciIH0sICAgeyBFWElUX1JFQVNPTl9JTlZFUFQsICJJTlZFUFQiIH0sICAgeyBFWElUX1JFQVNPTl9QUkVFTVBUSU9OX1RJTUVSLCAiUFJFRU1QVElPTl9USU1FUiIgfSwgICB7IEVYSVRfUkVBU09OX1dCSU5WRCwgIldCSU5WRCIgfSwgICB7IEVYSVRfUkVBU09OX0FQSUNfV1JJVEUsICJBUElDX1dSSVRFIiB9LCAgIHsgRVhJVF9SRUFTT05fRU9JX0lORFVDRUQsICJFT0lfSU5EVUNFRCIgfSwgICB7IEVYSVRfUkVBU09OX0lOVkFMSURfU1RBVEUsICJJTlZBTElEX1NUQVRFIiB9LCAgIHsgRVhJVF9SRUFTT05fSU5WRCwgIklOVkQiIH0sICAgeyBFWElUX1JFQVNPTl9JTlZQQ0lELCAiSU5WUENJRCIgfQotI2VuZGlmCisjZGVmaW5lIFZNWF9FWElUX1JFQVNPTlMgeyBFWElUX1JFQVNPTl9FWENFUFRJT05fTk1JLCAiRVhDRVBUSU9OX05NSSIgfSwgeyBFWElUX1JFQVNPTl9FWFRFUk5BTF9JTlRFUlJVUFQsICJFWFRFUk5BTF9JTlRFUlJVUFQiIH0sIHsgRVhJVF9SRUFTT05fVFJJUExFX0ZBVUxULCAiVFJJUExFX0ZBVUxUIiB9LCB7IEVYSVRfUkVBU09OX1BFTkRJTkdfSU5URVJSVVBULCAiUEVORElOR19JTlRFUlJVUFQiIH0sIHsgRVhJVF9SRUFTT05fTk1JX1dJTkRPVywgIk5NSV9XSU5ET1ciIH0sIHsgRVhJVF9SRUFTT05fVEFTS19TV0lUQ0gsICJUQVNLX1NXSVRDSCIgfSwgeyBFWElUX1JFQVNPTl9DUFVJRCwgIkNQVUlEIiB9LCB7IEVYSVRfUkVBU09OX0hMVCwgIkhMVCIgfSwgeyBFWElUX1JFQVNPTl9JTlZMUEcsICJJTlZMUEciIH0sIHsgRVhJVF9SRUFTT05fUkRQTUMsICJSRFBNQyIgfSwgeyBFWElUX1JFQVNPTl9SRFRTQywgIlJEVFNDIiB9LCB7IEVYSVRfUkVBU09OX1ZNQ0FMTCwgIlZNQ0FMTCIgfSwgeyBFWElUX1JFQVNPTl9WTUNMRUFSLCAiVk1DTEVBUiIgfSwgeyBFWElUX1JFQVNPTl9WTUxBVU5DSCwgIlZNTEFVTkNIIiB9LCB7IEVYSVRfUkVBU09OX1ZNUFRSTEQsICJWTVBUUkxEIiB9LCB7IEVYSVRfUkVBU09OX1ZNUFRSU1QsICJWTVBUUlNUIiB9LCB7IEVYSVRfUkVBU09OX1ZNUkVBRCwgIlZNUkVBRCIgfSwgeyBFWElUX1JFQVNPTl9WTVJFU1VNRSwgIlZNUkVTVU1FIiB9LCB7IEVYSVRfUkVBU09OX1ZNV1JJVEUsICJWTVdSSVRFIiB9LCB7IEVYSVRfUkVBU09OX1ZNT0ZGLCAiVk1PRkYiIH0sIHsgRVhJVF9SRUFTT05fVk1PTiwgIlZNT04iIH0sIHsgRVhJVF9SRUFTT05fQ1JfQUNDRVNTLCAiQ1JfQUNDRVNTIiB9LCB7IEVYSVRfUkVBU09OX0RSX0FDQ0VTUywgIkRSX0FDQ0VTUyIgfSwgeyBFWElUX1JFQVNPTl9JT19JTlNUUlVDVElPTiwgIklPX0lOU1RSVUNUSU9OIiB9LCB7IEVYSVRfUkVBU09OX01TUl9SRUFELCAiTVNSX1JFQUQiIH0sIHsgRVhJVF9SRUFTT05fTVNSX1dSSVRFLCAiTVNSX1dSSVRFIiB9LCB7IEVYSVRfUkVBU09OX01XQUlUX0lOU1RSVUNUSU9OLCAiTVdBSVRfSU5TVFJVQ1RJT04iIH0sIHsgRVhJVF9SRUFTT05fTU9OSVRPUl9JTlNUUlVDVElPTiwgIk1PTklUT1JfSU5TVFJVQ1RJT04iIH0sIHsgRVhJVF9SRUFTT05fUEFVU0VfSU5TVFJVQ1RJT04sICJQQVVTRV9JTlNUUlVDVElPTiIgfSwgeyBFWElUX1JFQVNPTl9NQ0VfRFVSSU5HX1ZNRU5UUlksICJNQ0VfRFVSSU5HX1ZNRU5UUlkiIH0sIHsgRVhJVF9SRUFTT05fVFBSX0JFTE9XX1RIUkVTSE9MRCwgIlRQUl9CRUxPV19USFJFU0hPTEQiIH0sIHsgRVhJVF9SRUFTT05fQVBJQ19BQ0NFU1MsICJBUElDX0FDQ0VTUyIgfSwgeyBFWElUX1JFQVNPTl9FUFRfVklPTEFUSU9OLCAiRVBUX1ZJT0xBVElPTiIgfSwgeyBFWElUX1JFQVNPTl9FUFRfTUlTQ09ORklHLCAiRVBUX01JU0NPTkZJRyIgfSwgeyBFWElUX1JFQVNPTl9JTlZFUFQsICJJTlZFUFQiIH0sIHsgRVhJVF9SRUFTT05fUFJFRU1QVElPTl9USU1FUiwgIlBSRUVNUFRJT05fVElNRVIiIH0sIHsgRVhJVF9SRUFTT05fV0JJTlZELCAiV0JJTlZEIiB9LCB7IEVYSVRfUkVBU09OX0FQSUNfV1JJVEUsICJBUElDX1dSSVRFIiB9LCB7IEVYSVRfUkVBU09OX0VPSV9JTkRVQ0VELCAiRU9JX0lORFVDRUQiIH0sIHsgRVhJVF9SRUFTT05fSU5WQUxJRF9TVEFURSwgIklOVkFMSURfU1RBVEUiIH0sIHsgRVhJVF9SRUFTT05fSU5WRCwgIklOVkQiIH0sIHsgRVhJVF9SRUFTT05fSU5WVlBJRCwgIklOVlZQSUQiIH0sIHsgRVhJVF9SRUFTT05fSU5WUENJRCwgIklOVlBDSUQiIH0KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdnN5c2NhbGwuaCBiL2xpYmMva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdnN5c2NhbGwuaAppbmRleCA0YTViM2FiLi45NWJmMmNhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2FzbS14ODYvYXNtL3ZzeXNjYWxsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9hc20teDg2L2FzbS92c3lzY2FsbC5oCkBAIC0xOSwxNiArMTksMTEgQEAKICNpZm5kZWYgX1VBUElfQVNNX1g4Nl9WU1lTQ0FMTF9ICiAjZGVmaW5lIF9VQVBJX0FTTV9YODZfVlNZU0NBTExfSAogZW51bSB2c3lzY2FsbF9udW0gewotIF9fTlJfdmdldHRpbWVvZmRheSwKKyAgX19OUl92Z2V0dGltZW9mZGF5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05SX3Z0aW1lLAotIF9fTlJfdmdldGNwdSwKKyAgX19OUl92dGltZSwKKyAgX19OUl92Z2V0Y3B1LAogfTsKLSNkZWZpbmUgVlNZU0NBTExfU1RBUlQgKC0xMFVMIDw8IDIwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVlNZU0NBTExfU0laRSAxMDI0Ci0jZGVmaW5lIFZTWVNDQUxMX0VORCAoLTJVTCA8PCAyMCkKLSNkZWZpbmUgVlNZU0NBTExfTUFQUEVEX1BBR0VTIDEKLSNkZWZpbmUgVlNZU0NBTExfQUREUih2c3lzY2FsbF9ucikgKFZTWVNDQUxMX1NUQVJUK1ZTWVNDQUxMX1NJWkUqKHZzeXNjYWxsX25yKSkKKyNkZWZpbmUgVlNZU0NBTExfQUREUiAoLSAxMFVMIDw8IDIwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vYXJtYWRhX2RybS5oIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vYXJtYWRhX2RybS5oCmluZGV4IGVmZDdkZDQuLjE2MGM0ZjggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvZHJtL2FybWFkYV9kcm0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2RybS9hcm1hZGFfZHJtLmgKQEAgLTIyLDMwICsyMiwzMCBAQAogI2RlZmluZSBEUk1fQVJNQURBX0dFTV9NTUFQIDB4MDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9BUk1BREFfR0VNX1BXUklURSAweDAzCi0jZGVmaW5lIEFSTUFEQV9JT0NUTChkaXIsIG5hbWUsIHN0cikgICBEUk1fIyNkaXIoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9BUk1BREFfIyNuYW1lLCBzdHJ1Y3QgZHJtX2FybWFkYV8jI3N0cikKKyNkZWZpbmUgQVJNQURBX0lPQ1RMKGRpcixuYW1lLHN0cikgRFJNXyAjI2RpcihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0FSTUFEQV8gIyNuYW1lLCBzdHJ1Y3QgZHJtX2FybWFkYV8gIyNzdHIpCiBzdHJ1Y3QgZHJtX2FybWFkYV9nZW1fY3JlYXRlIHsKLSB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3Qgc2l6ZTsKKyAgdWludDMyX3Qgc2l6ZTsKIH07Ci0jZGVmaW5lIERSTV9JT0NUTF9BUk1BREFfR0VNX0NSRUFURSAgIEFSTUFEQV9JT0NUTChJT1dSLCBHRU1fQ1JFQVRFLCBnZW1fY3JlYXRlKQorI2RlZmluZSBEUk1fSU9DVExfQVJNQURBX0dFTV9DUkVBVEUgQVJNQURBX0lPQ1RMKElPV1IsIEdFTV9DUkVBVEUsIGdlbV9jcmVhdGUpCiBzdHJ1Y3QgZHJtX2FybWFkYV9nZW1fbW1hcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBwYWQ7Ci0gdWludDY0X3Qgb2Zmc2V0OwotIHVpbnQ2NF90IHNpemU7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgcGFkOworICB1aW50NjRfdCBvZmZzZXQ7CisgIHVpbnQ2NF90IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGFkZHI7CisgIHVpbnQ2NF90IGFkZHI7CiB9OwotI2RlZmluZSBEUk1fSU9DVExfQVJNQURBX0dFTV9NTUFQICAgQVJNQURBX0lPQ1RMKElPV1IsIEdFTV9NTUFQLCBnZW1fbW1hcCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0FSTUFEQV9HRU1fTU1BUCBBUk1BREFfSU9DVEwoSU9XUiwgR0VNX01NQVAsIGdlbV9tbWFwKQogc3RydWN0IGRybV9hcm1hZGFfZ2VtX3B3cml0ZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IHB0cjsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3Qgb2Zmc2V0OwotIHVpbnQzMl90IHNpemU7CisgIHVpbnQ2NF90IHB0cjsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBvZmZzZXQ7CisgIHVpbnQzMl90IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgRFJNX0lPQ1RMX0FSTUFEQV9HRU1fUFdSSVRFICAgQVJNQURBX0lPQ1RMKElPVywgR0VNX1BXUklURSwgZ2VtX3B3cml0ZSkKKyNkZWZpbmUgRFJNX0lPQ1RMX0FSTUFEQV9HRU1fUFdSSVRFIEFSTUFEQV9JT0NUTChJT1csIEdFTV9QV1JJVEUsIGdlbV9wd3JpdGUpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL2RybS5oIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vZHJtLmgKaW5kZXggZWQ4NDhhOC4uOGVmYzdkNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vZHJtLmgKQEAgLTQ5LDM3NiArNDksMzc2IEBACiAjZGVmaW5lIF9EUk1fTE9DS19DT05UIDB4NDAwMDAwMDBVCiAjZGVmaW5lIF9EUk1fTE9DS19JU19IRUxEKGxvY2spICgobG9jaykgJiBfRFJNX0xPQ0tfSEVMRCkKICNkZWZpbmUgX0RSTV9MT0NLX0lTX0NPTlQobG9jaykgKChsb2NrKSAmIF9EUk1fTE9DS19DT05UKQotI2RlZmluZSBfRFJNX0xPQ0tJTkdfQ09OVEVYVChsb2NrKSAoKGxvY2spICYgfihfRFJNX0xPQ0tfSEVMRHxfRFJNX0xPQ0tfQ09OVCkpCisjZGVmaW5lIF9EUk1fTE9DS0lOR19DT05URVhUKGxvY2spICgobG9jaykgJiB+KF9EUk1fTE9DS19IRUxEIHwgX0RSTV9MT0NLX0NPTlQpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgdW5zaWduZWQgaW50IGRybV9jb250ZXh0X3Q7CiB0eXBlZGVmIHVuc2lnbmVkIGludCBkcm1fZHJhd2FibGVfdDsKIHR5cGVkZWYgdW5zaWduZWQgaW50IGRybV9tYWdpY190Owogc3RydWN0IGRybV9jbGlwX3JlY3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCB4MTsKLSB1bnNpZ25lZCBzaG9ydCB5MTsKLSB1bnNpZ25lZCBzaG9ydCB4MjsKLSB1bnNpZ25lZCBzaG9ydCB5MjsKKyAgdW5zaWduZWQgc2hvcnQgeDE7CisgIHVuc2lnbmVkIHNob3J0IHkxOworICB1bnNpZ25lZCBzaG9ydCB4MjsKKyAgdW5zaWduZWQgc2hvcnQgeTI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fZHJhd2FibGVfaW5mbyB7Ci0gdW5zaWduZWQgaW50IG51bV9yZWN0czsKLSBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCAqcmVjdHM7CisgIHVuc2lnbmVkIGludCBudW1fcmVjdHM7CisgIHN0cnVjdCBkcm1fY2xpcF9yZWN0ICogcmVjdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fdGV4X3JlZ2lvbiB7Ci0gdW5zaWduZWQgY2hhciBuZXh0OwotIHVuc2lnbmVkIGNoYXIgcHJldjsKKyAgdW5zaWduZWQgY2hhciBuZXh0OworICB1bnNpZ25lZCBjaGFyIHByZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgaW5fdXNlOwotIHVuc2lnbmVkIGNoYXIgcGFkZGluZzsKLSB1bnNpZ25lZCBpbnQgYWdlOworICB1bnNpZ25lZCBjaGFyIGluX3VzZTsKKyAgdW5zaWduZWQgY2hhciBwYWRkaW5nOworICB1bnNpZ25lZCBpbnQgYWdlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2h3X2xvY2sgewotIF9fdm9sYXRpbGVfXyB1bnNpZ25lZCBpbnQgbG9jazsKLSBjaGFyIHBhZGRpbmdbNjBdOworICBfX3ZvbGF0aWxlX18gdW5zaWduZWQgaW50IGxvY2s7CisgIGNoYXIgcGFkZGluZ1s2MF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fdmVyc2lvbiB7Ci0gaW50IHZlcnNpb25fbWFqb3I7Ci0gaW50IHZlcnNpb25fbWlub3I7Ci0gaW50IHZlcnNpb25fcGF0Y2hsZXZlbDsKKyAgaW50IHZlcnNpb25fbWFqb3I7CisgIGludCB2ZXJzaW9uX21pbm9yOworICBpbnQgdmVyc2lvbl9wYXRjaGxldmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaXplX3QgbmFtZV9sZW47Ci0gY2hhciBfX3VzZXIgKm5hbWU7Ci0gc2l6ZV90IGRhdGVfbGVuOwotIGNoYXIgX191c2VyICpkYXRlOworICBzaXplX3QgbmFtZV9sZW47CisgIGNoYXIgX191c2VyICogbmFtZTsKKyAgc2l6ZV90IGRhdGVfbGVuOworICBjaGFyIF9fdXNlciAqIGRhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNpemVfdCBkZXNjX2xlbjsKLSBjaGFyIF9fdXNlciAqZGVzYzsKKyAgc2l6ZV90IGRlc2NfbGVuOworICBjaGFyIF9fdXNlciAqIGRlc2M7CiB9Owogc3RydWN0IGRybV91bmlxdWUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaXplX3QgdW5pcXVlX2xlbjsKLSBjaGFyIF9fdXNlciAqdW5pcXVlOworICBzaXplX3QgdW5pcXVlX2xlbjsKKyAgY2hhciBfX3VzZXIgKiB1bmlxdWU7CiB9Owogc3RydWN0IGRybV9saXN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNvdW50OwotIHN0cnVjdCBkcm1fdmVyc2lvbiBfX3VzZXIgKnZlcnNpb247CisgIGludCBjb3VudDsKKyAgc3RydWN0IGRybV92ZXJzaW9uIF9fdXNlciAqIHZlcnNpb247CiB9Owogc3RydWN0IGRybV9ibG9jayB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB1bnVzZWQ7CisgIGludCB1bnVzZWQ7CiB9Owogc3RydWN0IGRybV9jb250cm9sIHsKLSBlbnVtIHsKKyAgZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERSTV9BRERfQ09NTUFORCwKLSBEUk1fUk1fQ09NTUFORCwKLSBEUk1fSU5TVF9IQU5ETEVSLAotIERSTV9VTklOU1RfSEFORExFUgorICAgIERSTV9BRERfQ09NTUFORCwKKyAgICBEUk1fUk1fQ09NTUFORCwKKyAgICBEUk1fSU5TVF9IQU5ETEVSLAorICAgIERSTV9VTklOU1RfSEFORExFUgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGZ1bmM7Ci0gaW50IGlycTsKKyAgfSBmdW5jOworICBpbnQgaXJxOwogfTsKIGVudW0gZHJtX21hcF90eXBlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX0RSTV9GUkFNRV9CVUZGRVIgPSAwLAotIF9EUk1fUkVHSVNURVJTID0gMSwKLSBfRFJNX1NITSA9IDIsCi0gX0RSTV9BR1AgPSAzLAorICBfRFJNX0ZSQU1FX0JVRkZFUiA9IDAsCisgIF9EUk1fUkVHSVNURVJTID0gMSwKKyAgX0RSTV9TSE0gPSAyLAorICBfRFJNX0FHUCA9IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9EUk1fU0NBVFRFUl9HQVRIRVIgPSA0LAotIF9EUk1fQ09OU0lTVEVOVCA9IDUsCisgIF9EUk1fU0NBVFRFUl9HQVRIRVIgPSA0LAorICBfRFJNX0NPTlNJU1RFTlQgPSA1LAogfTsKIGVudW0gZHJtX21hcF9mbGFncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9EUk1fUkVTVFJJQ1RFRCA9IDB4MDEsCi0gX0RSTV9SRUFEX09OTFkgPSAweDAyLAotIF9EUk1fTE9DS0VEID0gMHgwNCwKLSBfRFJNX0tFUk5FTCA9IDB4MDgsCisgIF9EUk1fUkVTVFJJQ1RFRCA9IDB4MDEsCisgIF9EUk1fUkVBRF9PTkxZID0gMHgwMiwKKyAgX0RSTV9MT0NLRUQgPSAweDA0LAorICBfRFJNX0tFUk5FTCA9IDB4MDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9EUk1fV1JJVEVfQ09NQklOSU5HID0gMHgxMCwKLSBfRFJNX0NPTlRBSU5TX0xPQ0sgPSAweDIwLAotIF9EUk1fUkVNT1ZBQkxFID0gMHg0MCwKLSBfRFJNX0RSSVZFUiA9IDB4ODAKKyAgX0RSTV9XUklURV9DT01CSU5JTkcgPSAweDEwLAorICBfRFJNX0NPTlRBSU5TX0xPQ0sgPSAweDIwLAorICBfRFJNX1JFTU9WQUJMRSA9IDB4NDAsCisgIF9EUk1fRFJJVkVSID0gMHg4MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX2N0eF9wcml2X21hcCB7Ci0gdW5zaWduZWQgaW50IGN0eF9pZDsKLSB2b2lkICpoYW5kbGU7CisgIHVuc2lnbmVkIGludCBjdHhfaWQ7CisgIHZvaWQgKiBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fbWFwIHsKLSB1bnNpZ25lZCBsb25nIG9mZnNldDsKLSB1bnNpZ25lZCBsb25nIHNpemU7CisgIHVuc2lnbmVkIGxvbmcgb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGVudW0gZHJtX21hcF90eXBlIHR5cGU7Ci0gZW51bSBkcm1fbWFwX2ZsYWdzIGZsYWdzOwotIHZvaWQgKmhhbmRsZTsKLSBpbnQgbXRycjsKKyAgZW51bSBkcm1fbWFwX3R5cGUgdHlwZTsKKyAgZW51bSBkcm1fbWFwX2ZsYWdzIGZsYWdzOworICB2b2lkICogaGFuZGxlOworICBpbnQgbXRycjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV9jbGllbnQgewotIGludCBpZHg7Ci0gaW50IGF1dGg7CisgIGludCBpZHg7CisgIGludCBhdXRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHBpZDsKLSB1bnNpZ25lZCBsb25nIHVpZDsKLSB1bnNpZ25lZCBsb25nIG1hZ2ljOwotIHVuc2lnbmVkIGxvbmcgaW9jczsKKyAgdW5zaWduZWQgbG9uZyBwaWQ7CisgIHVuc2lnbmVkIGxvbmcgdWlkOworICB1bnNpZ25lZCBsb25nIG1hZ2ljOworICB1bnNpZ25lZCBsb25nIGlvY3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZHJtX3N0YXRfdHlwZSB7Ci0gX0RSTV9TVEFUX0xPQ0ssCi0gX0RSTV9TVEFUX09QRU5TLAorICBfRFJNX1NUQVRfTE9DSywKKyAgX0RSTV9TVEFUX09QRU5TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfRFJNX1NUQVRfQ0xPU0VTLAotIF9EUk1fU1RBVF9JT0NUTFMsCi0gX0RSTV9TVEFUX0xPQ0tTLAotIF9EUk1fU1RBVF9VTkxPQ0tTLAorICBfRFJNX1NUQVRfQ0xPU0VTLAorICBfRFJNX1NUQVRfSU9DVExTLAorICBfRFJNX1NUQVRfTE9DS1MsCisgIF9EUk1fU1RBVF9VTkxPQ0tTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfRFJNX1NUQVRfVkFMVUUsCi0gX0RSTV9TVEFUX0JZVEUsCi0gX0RSTV9TVEFUX0NPVU5ULAotIF9EUk1fU1RBVF9JUlEsCisgIF9EUk1fU1RBVF9WQUxVRSwKKyAgX0RSTV9TVEFUX0JZVEUsCisgIF9EUk1fU1RBVF9DT1VOVCwKKyAgX0RSTV9TVEFUX0lSUSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX0RSTV9TVEFUX1BSSU1BUlksCi0gX0RSTV9TVEFUX1NFQ09OREFSWSwKLSBfRFJNX1NUQVRfRE1BLAotIF9EUk1fU1RBVF9TUEVDSUFMLAorICBfRFJNX1NUQVRfUFJJTUFSWSwKKyAgX0RSTV9TVEFUX1NFQ09OREFSWSwKKyAgX0RSTV9TVEFUX0RNQSwKKyAgX0RSTV9TVEFUX1NQRUNJQUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9EUk1fU1RBVF9NSVNTRUQKKyAgX0RSTV9TVEFUX01JU1NFRAogfTsKIHN0cnVjdCBkcm1fc3RhdHMgewotIHVuc2lnbmVkIGxvbmcgY291bnQ7CisgIHVuc2lnbmVkIGxvbmcgY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gdW5zaWduZWQgbG9uZyB2YWx1ZTsKLSBlbnVtIGRybV9zdGF0X3R5cGUgdHlwZTsKLSB9IGRhdGFbMTVdOworICBzdHJ1Y3QgeworICAgIHVuc2lnbmVkIGxvbmcgdmFsdWU7CisgICAgZW51bSBkcm1fc3RhdF90eXBlIHR5cGU7CisgIH0gZGF0YVsxNV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZHJtX2xvY2tfZmxhZ3MgewotIF9EUk1fTE9DS19SRUFEWSA9IDB4MDEsCi0gX0RSTV9MT0NLX1FVSUVTQ0VOVCA9IDB4MDIsCisgIF9EUk1fTE9DS19SRUFEWSA9IDB4MDEsCisgIF9EUk1fTE9DS19RVUlFU0NFTlQgPSAweDAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfRFJNX0xPQ0tfRkxVU0ggPSAweDA0LAotIF9EUk1fTE9DS19GTFVTSF9BTEwgPSAweDA4LAotIF9EUk1fSEFMVF9BTExfUVVFVUVTID0gMHgxMCwKLSBfRFJNX0hBTFRfQ1VSX1FVRVVFUyA9IDB4MjAKKyAgX0RSTV9MT0NLX0ZMVVNIID0gMHgwNCwKKyAgX0RSTV9MT0NLX0ZMVVNIX0FMTCA9IDB4MDgsCisgIF9EUk1fSEFMVF9BTExfUVVFVUVTID0gMHgxMCwKKyAgX0RSTV9IQUxUX0NVUl9RVUVVRVMgPSAweDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fbG9jayB7Ci0gaW50IGNvbnRleHQ7Ci0gZW51bSBkcm1fbG9ja19mbGFncyBmbGFnczsKKyAgaW50IGNvbnRleHQ7CisgIGVudW0gZHJtX2xvY2tfZmxhZ3MgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZHJtX2RtYV9mbGFncyB7Ci0gX0RSTV9ETUFfQkxPQ0sgPSAweDAxLAotIF9EUk1fRE1BX1dISUxFX0xPQ0tFRCA9IDB4MDIsCisgIF9EUk1fRE1BX0JMT0NLID0gMHgwMSwKKyAgX0RSTV9ETUFfV0hJTEVfTE9DS0VEID0gMHgwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX0RSTV9ETUFfUFJJT1JJVFkgPSAweDA0LAotIF9EUk1fRE1BX1dBSVQgPSAweDEwLAotIF9EUk1fRE1BX1NNQUxMRVJfT0sgPSAweDIwLAotIF9EUk1fRE1BX0xBUkdFUl9PSyA9IDB4NDAKKyAgX0RSTV9ETUFfUFJJT1JJVFkgPSAweDA0LAorICBfRFJNX0RNQV9XQUlUID0gMHgxMCwKKyAgX0RSTV9ETUFfU01BTExFUl9PSyA9IDB4MjAsCisgIF9EUk1fRE1BX0xBUkdFUl9PSyA9IDB4NDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV9idWZfZGVzYyB7Ci0gaW50IGNvdW50OwotIGludCBzaXplOworICBpbnQgY291bnQ7CisgIGludCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbG93X21hcms7Ci0gaW50IGhpZ2hfbWFyazsKLSBlbnVtIHsKLSBfRFJNX1BBR0VfQUxJR04gPSAweDAxLAorICBpbnQgbG93X21hcms7CisgIGludCBoaWdoX21hcms7CisgIGVudW0geworICAgIF9EUk1fUEFHRV9BTElHTiA9IDB4MDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9EUk1fQUdQX0JVRkZFUiA9IDB4MDIsCi0gX0RSTV9TR19CVUZGRVIgPSAweDA0LAotIF9EUk1fRkJfQlVGRkVSID0gMHgwOCwKLSBfRFJNX1BDSV9CVUZGRVJfUk8gPSAweDEwCisgICAgX0RSTV9BR1BfQlVGRkVSID0gMHgwMiwKKyAgICBfRFJNX1NHX0JVRkZFUiA9IDB4MDQsCisgICAgX0RSTV9GQl9CVUZGRVIgPSAweDA4LAorICAgIF9EUk1fUENJX0JVRkZFUl9STyA9IDB4MTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBmbGFnczsKLSB1bnNpZ25lZCBsb25nIGFncF9zdGFydDsKKyAgfSBmbGFnczsKKyAgdW5zaWduZWQgbG9uZyBhZ3Bfc3RhcnQ7CiB9Owogc3RydWN0IGRybV9idWZfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjb3VudDsKLSBzdHJ1Y3QgZHJtX2J1Zl9kZXNjIF9fdXNlciAqbGlzdDsKKyAgaW50IGNvdW50OworICBzdHJ1Y3QgZHJtX2J1Zl9kZXNjIF9fdXNlciAqIGxpc3Q7CiB9Owogc3RydWN0IGRybV9idWZfZnJlZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjb3VudDsKLSBpbnQgX191c2VyICpsaXN0OworICBpbnQgY291bnQ7CisgIGludCBfX3VzZXIgKiBsaXN0OwogfTsKIHN0cnVjdCBkcm1fYnVmX3B1YiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBpZHg7Ci0gaW50IHRvdGFsOwotIGludCB1c2VkOwotIHZvaWQgX191c2VyICphZGRyZXNzOworICBpbnQgaWR4OworICBpbnQgdG90YWw7CisgIGludCB1c2VkOworICB2b2lkIF9fdXNlciAqIGFkZHJlc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fYnVmX21hcCB7Ci0gaW50IGNvdW50OwotIHZvaWQgX191c2VyICp2aXJ0dWFsOworICBpbnQgY291bnQ7CisgIHZvaWQgX191c2VyICogdmlydHVhbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGRybV9idWZfcHViIF9fdXNlciAqbGlzdDsKKyAgc3RydWN0IGRybV9idWZfcHViIF9fdXNlciAqIGxpc3Q7CiB9Owogc3RydWN0IGRybV9kbWEgewotIGludCBjb250ZXh0OworICBpbnQgY29udGV4dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHNlbmRfY291bnQ7Ci0gaW50IF9fdXNlciAqc2VuZF9pbmRpY2VzOwotIGludCBfX3VzZXIgKnNlbmRfc2l6ZXM7Ci0gZW51bSBkcm1fZG1hX2ZsYWdzIGZsYWdzOworICBpbnQgc2VuZF9jb3VudDsKKyAgaW50IF9fdXNlciAqIHNlbmRfaW5kaWNlczsKKyAgaW50IF9fdXNlciAqIHNlbmRfc2l6ZXM7CisgIGVudW0gZHJtX2RtYV9mbGFncyBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHJlcXVlc3RfY291bnQ7Ci0gaW50IHJlcXVlc3Rfc2l6ZTsKLSBpbnQgX191c2VyICpyZXF1ZXN0X2luZGljZXM7Ci0gaW50IF9fdXNlciAqcmVxdWVzdF9zaXplczsKKyAgaW50IHJlcXVlc3RfY291bnQ7CisgIGludCByZXF1ZXN0X3NpemU7CisgIGludCBfX3VzZXIgKiByZXF1ZXN0X2luZGljZXM7CisgIGludCBfX3VzZXIgKiByZXF1ZXN0X3NpemVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZ3JhbnRlZF9jb3VudDsKKyAgaW50IGdyYW50ZWRfY291bnQ7CiB9OwogZW51bSBkcm1fY3R4X2ZsYWdzIHsKLSBfRFJNX0NPTlRFWFRfUFJFU0VSVkVEID0gMHgwMSwKKyAgX0RSTV9DT05URVhUX1BSRVNFUlZFRCA9IDB4MDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9EUk1fQ09OVEVYVF8yRE9OTFkgPSAweDAyCisgIF9EUk1fQ09OVEVYVF8yRE9OTFkgPSAweDAyCiB9Owogc3RydWN0IGRybV9jdHggewotIGRybV9jb250ZXh0X3QgaGFuZGxlOworICBkcm1fY29udGV4dF90IGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZW51bSBkcm1fY3R4X2ZsYWdzIGZsYWdzOworICBlbnVtIGRybV9jdHhfZmxhZ3MgZmxhZ3M7CiB9Owogc3RydWN0IGRybV9jdHhfcmVzIHsKLSBpbnQgY291bnQ7CisgIGludCBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGRybV9jdHggX191c2VyICpjb250ZXh0czsKKyAgc3RydWN0IGRybV9jdHggX191c2VyICogY29udGV4dHM7CiB9Owogc3RydWN0IGRybV9kcmF3IHsKLSBkcm1fZHJhd2FibGVfdCBoYW5kbGU7CisgIGRybV9kcmF3YWJsZV90IGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogdHlwZWRlZiBlbnVtIHsKLSBEUk1fRFJBV0FCTEVfQ0xJUFJFQ1RTLAorICBEUk1fRFJBV0FCTEVfQ0xJUFJFQ1RTLAogfSBkcm1fZHJhd2FibGVfaW5mb190eXBlX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV91cGRhdGVfZHJhdyB7Ci0gZHJtX2RyYXdhYmxlX3QgaGFuZGxlOwotIHVuc2lnbmVkIGludCB0eXBlOwotIHVuc2lnbmVkIGludCBudW07CisgIGRybV9kcmF3YWJsZV90IGhhbmRsZTsKKyAgdW5zaWduZWQgaW50IHR5cGU7CisgIHVuc2lnbmVkIGludCBudW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgbG9uZyBkYXRhOworICB1bnNpZ25lZCBsb25nIGxvbmcgZGF0YTsKIH07CiBzdHJ1Y3QgZHJtX2F1dGggewotIGRybV9tYWdpY190IG1hZ2ljOworICBkcm1fbWFnaWNfdCBtYWdpYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV9pcnFfYnVzaWQgewotIGludCBpcnE7Ci0gaW50IGJ1c251bTsKKyAgaW50IGlycTsKKyAgaW50IGJ1c251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGRldm51bTsKLSBpbnQgZnVuY251bTsKKyAgaW50IGRldm51bTsKKyAgaW50IGZ1bmNudW07CiB9OwogZW51bSBkcm1fdmJsYW5rX3NlcV90eXBlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX0RSTV9WQkxBTktfQUJTT0xVVEUgPSAweDAsCi0gX0RSTV9WQkxBTktfUkVMQVRJVkUgPSAweDEsCi0gX0RSTV9WQkxBTktfSElHSF9DUlRDX01BU0sgPSAweDAwMDAwMDNlLAotIF9EUk1fVkJMQU5LX0VWRU5UID0gMHg0MDAwMDAwLAorICBfRFJNX1ZCTEFOS19BQlNPTFVURSA9IDB4MCwKKyAgX0RSTV9WQkxBTktfUkVMQVRJVkUgPSAweDEsCisgIF9EUk1fVkJMQU5LX0hJR0hfQ1JUQ19NQVNLID0gMHgwMDAwMDAzZSwKKyAgX0RSTV9WQkxBTktfRVZFTlQgPSAweDQwMDAwMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9EUk1fVkJMQU5LX0ZMSVAgPSAweDgwMDAwMDAsCi0gX0RSTV9WQkxBTktfTkVYVE9OTUlTUyA9IDB4MTAwMDAwMDAsCi0gX0RSTV9WQkxBTktfU0VDT05EQVJZID0gMHgyMDAwMDAwMCwKLSBfRFJNX1ZCTEFOS19TSUdOQUwgPSAweDQwMDAwMDAwCisgIF9EUk1fVkJMQU5LX0ZMSVAgPSAweDgwMDAwMDAsCisgIF9EUk1fVkJMQU5LX05FWFRPTk1JU1MgPSAweDEwMDAwMDAwLAorICBfRFJNX1ZCTEFOS19TRUNPTkRBUlkgPSAweDIwMDAwMDAwLAorICBfRFJNX1ZCTEFOS19TSUdOQUwgPSAweDQwMDAwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgX0RSTV9WQkxBTktfSElHSF9DUlRDX1NISUZUIDEKICNkZWZpbmUgX0RSTV9WQkxBTktfVFlQRVNfTUFTSyAoX0RSTV9WQkxBTktfQUJTT0xVVEUgfCBfRFJNX1ZCTEFOS19SRUxBVElWRSkKLSNkZWZpbmUgX0RSTV9WQkxBTktfRkxBR1NfTUFTSyAoX0RSTV9WQkxBTktfRVZFTlQgfCBfRFJNX1ZCTEFOS19TSUdOQUwgfCAgIF9EUk1fVkJMQU5LX1NFQ09OREFSWSB8IF9EUk1fVkJMQU5LX05FWFRPTk1JU1MpCisjZGVmaW5lIF9EUk1fVkJMQU5LX0ZMQUdTX01BU0sgKF9EUk1fVkJMQU5LX0VWRU5UIHwgX0RSTV9WQkxBTktfU0lHTkFMIHwgX0RSTV9WQkxBTktfU0VDT05EQVJZIHwgX0RSTV9WQkxBTktfTkVYVE9OTUlTUykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX3dhaXRfdmJsYW5rX3JlcXVlc3QgewotIGVudW0gZHJtX3ZibGFua19zZXFfdHlwZSB0eXBlOwotIHVuc2lnbmVkIGludCBzZXF1ZW5jZTsKLSB1bnNpZ25lZCBsb25nIHNpZ25hbDsKKyAgZW51bSBkcm1fdmJsYW5rX3NlcV90eXBlIHR5cGU7CisgIHVuc2lnbmVkIGludCBzZXF1ZW5jZTsKKyAgdW5zaWduZWQgbG9uZyBzaWduYWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fd2FpdF92YmxhbmtfcmVwbHkgewotIGVudW0gZHJtX3ZibGFua19zZXFfdHlwZSB0eXBlOwotIHVuc2lnbmVkIGludCBzZXF1ZW5jZTsKKyAgZW51bSBkcm1fdmJsYW5rX3NlcV90eXBlIHR5cGU7CisgIHVuc2lnbmVkIGludCBzZXF1ZW5jZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyB0dmFsX3NlYzsKLSBsb25nIHR2YWxfdXNlYzsKKyAgbG9uZyB0dmFsX3NlYzsKKyAgbG9uZyB0dmFsX3VzZWM7CiB9OwogdW5pb24gZHJtX3dhaXRfdmJsYW5rIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGRybV93YWl0X3ZibGFua19yZXF1ZXN0IHJlcXVlc3Q7Ci0gc3RydWN0IGRybV93YWl0X3ZibGFua19yZXBseSByZXBseTsKKyAgc3RydWN0IGRybV93YWl0X3ZibGFua19yZXF1ZXN0IHJlcXVlc3Q7CisgIHN0cnVjdCBkcm1fd2FpdF92YmxhbmtfcmVwbHkgcmVwbHk7CiB9OwogI2RlZmluZSBfRFJNX1BSRV9NT0RFU0VUIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9EUk1fUE9TVF9NT0RFU0VUIDIKIHN0cnVjdCBkcm1fbW9kZXNldF9jdGwgewotIF9fdTMyIGNydGM7Ci0gX191MzIgY21kOworICBfX3UzMiBjcnRjOworICBfX3UzMiBjbWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fYWdwX21vZGUgewotIHVuc2lnbmVkIGxvbmcgbW9kZTsKKyAgdW5zaWduZWQgbG9uZyBtb2RlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2FncF9idWZmZXIgewotIHVuc2lnbmVkIGxvbmcgc2l6ZTsKLSB1bnNpZ25lZCBsb25nIGhhbmRsZTsKLSB1bnNpZ25lZCBsb25nIHR5cGU7CisgIHVuc2lnbmVkIGxvbmcgc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBoYW5kbGU7CisgIHVuc2lnbmVkIGxvbmcgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBwaHlzaWNhbDsKKyAgdW5zaWduZWQgbG9uZyBwaHlzaWNhbDsKIH07CiBzdHJ1Y3QgZHJtX2FncF9iaW5kaW5nIHsKLSB1bnNpZ25lZCBsb25nIGhhbmRsZTsKKyAgdW5zaWduZWQgbG9uZyBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIG9mZnNldDsKIH07CiBzdHJ1Y3QgZHJtX2FncF9pbmZvIHsKLSBpbnQgYWdwX3ZlcnNpb25fbWFqb3I7CisgIGludCBhZ3BfdmVyc2lvbl9tYWpvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGFncF92ZXJzaW9uX21pbm9yOwotIHVuc2lnbmVkIGxvbmcgbW9kZTsKLSB1bnNpZ25lZCBsb25nIGFwZXJ0dXJlX2Jhc2U7Ci0gdW5zaWduZWQgbG9uZyBhcGVydHVyZV9zaXplOworICBpbnQgYWdwX3ZlcnNpb25fbWlub3I7CisgIHVuc2lnbmVkIGxvbmcgbW9kZTsKKyAgdW5zaWduZWQgbG9uZyBhcGVydHVyZV9iYXNlOworICB1bnNpZ25lZCBsb25nIGFwZXJ0dXJlX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgbWVtb3J5X2FsbG93ZWQ7Ci0gdW5zaWduZWQgbG9uZyBtZW1vcnlfdXNlZDsKLSB1bnNpZ25lZCBzaG9ydCBpZF92ZW5kb3I7Ci0gdW5zaWduZWQgc2hvcnQgaWRfZGV2aWNlOworICB1bnNpZ25lZCBsb25nIG1lbW9yeV9hbGxvd2VkOworICB1bnNpZ25lZCBsb25nIG1lbW9yeV91c2VkOworICB1bnNpZ25lZCBzaG9ydCBpZF92ZW5kb3I7CisgIHVuc2lnbmVkIHNob3J0IGlkX2RldmljZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV9zY2F0dGVyX2dhdGhlciB7Ci0gdW5zaWduZWQgbG9uZyBzaXplOwotIHVuc2lnbmVkIGxvbmcgaGFuZGxlOworICB1bnNpZ25lZCBsb25nIHNpemU7CisgIHVuc2lnbmVkIGxvbmcgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX3NldF92ZXJzaW9uIHsKLSBpbnQgZHJtX2RpX21ham9yOwotIGludCBkcm1fZGlfbWlub3I7CisgIGludCBkcm1fZGlfbWFqb3I7CisgIGludCBkcm1fZGlfbWlub3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBkcm1fZGRfbWFqb3I7Ci0gaW50IGRybV9kZF9taW5vcjsKKyAgaW50IGRybV9kZF9tYWpvcjsKKyAgaW50IGRybV9kZF9taW5vcjsKIH07CiBzdHJ1Y3QgZHJtX2dlbV9jbG9zZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiBwYWQ7CisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgcGFkOwogfTsKIHN0cnVjdCBkcm1fZ2VtX2ZsaW5rIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaGFuZGxlOwotIF9fdTMyIG5hbWU7CisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgbmFtZTsKIH07CiBzdHJ1Y3QgZHJtX2dlbV9vcGVuIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbmFtZTsKLSBfX3UzMiBoYW5kbGU7Ci0gX191NjQgc2l6ZTsKKyAgX191MzIgbmFtZTsKKyAgX191MzIgaGFuZGxlOworICBfX3U2NCBzaXplOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9DQVBfRFVNQl9CVUZGRVIgMHgxCkBAIC00MzYsMjA1ICs0MzYsMjA2IEBACiAjZGVmaW5lIERSTV9DQVBfQ1VSU09SX0hFSUdIVCAweDkKIHN0cnVjdCBkcm1fZ2V0X2NhcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGNhcGFiaWxpdHk7Ci0gX191NjQgdmFsdWU7CisgIF9fdTY0IGNhcGFiaWxpdHk7CisgIF9fdTY0IHZhbHVlOwogfTsKICNkZWZpbmUgRFJNX0NMSUVOVF9DQVBfU1RFUkVPXzNEIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9DTElFTlRfQ0FQX1VOSVZFUlNBTF9QTEFORVMgMgogc3RydWN0IGRybV9zZXRfY2xpZW50X2NhcCB7Ci0gX191NjQgY2FwYWJpbGl0eTsKLSBfX3U2NCB2YWx1ZTsKLX07CisgIF9fdTY0IGNhcGFiaWxpdHk7CisgIF9fdTY0IHZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CiAjZGVmaW5lIERSTV9DTE9FWEVDIE9fQ0xPRVhFQwogc3RydWN0IGRybV9wcmltZV9oYW5kbGUgewotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBmZDsKKyAgX191MzIgZmxhZ3M7CisgIF9fczMyIGZkOwogfTsKICNpbmNsdWRlIDxkcm0vZHJtX21vZGUuaD4KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9CQVNFICdkJworI2RlZmluZSBEUk1fSU8obnIpIF9JTyhEUk1fSU9DVExfQkFTRSwgbnIpCisjZGVmaW5lIERSTV9JT1IobnIsdHlwZSkgX0lPUihEUk1fSU9DVExfQkFTRSwgbnIsIHR5cGUpCisjZGVmaW5lIERSTV9JT1cobnIsdHlwZSkgX0lPVyhEUk1fSU9DVExfQkFTRSwgbnIsIHR5cGUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU8obnIpIF9JTyhEUk1fSU9DVExfQkFTRSxucikKLSNkZWZpbmUgRFJNX0lPUihucix0eXBlKSBfSU9SKERSTV9JT0NUTF9CQVNFLG5yLHR5cGUpCi0jZGVmaW5lIERSTV9JT1cobnIsdHlwZSkgX0lPVyhEUk1fSU9DVExfQkFTRSxucix0eXBlKQotI2RlZmluZSBEUk1fSU9XUihucix0eXBlKSBfSU9XUihEUk1fSU9DVExfQkFTRSxucix0eXBlKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPV1IobnIsdHlwZSkgX0lPV1IoRFJNX0lPQ1RMX0JBU0UsIG5yLCB0eXBlKQogI2RlZmluZSBEUk1fSU9DVExfVkVSU0lPTiBEUk1fSU9XUigweDAwLCBzdHJ1Y3QgZHJtX3ZlcnNpb24pCiAjZGVmaW5lIERSTV9JT0NUTF9HRVRfVU5JUVVFIERSTV9JT1dSKDB4MDEsIHN0cnVjdCBkcm1fdW5pcXVlKQotI2RlZmluZSBEUk1fSU9DVExfR0VUX01BR0lDIERSTV9JT1IoIDB4MDIsIHN0cnVjdCBkcm1fYXV0aCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0lSUV9CVVNJRCBEUk1fSU9XUigweDAzLCBzdHJ1Y3QgZHJtX2lycV9idXNpZCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0dFVF9NQUdJQyBEUk1fSU9SKDB4MDIsIHN0cnVjdCBkcm1fYXV0aCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9JUlFfQlVTSUQgRFJNX0lPV1IoMHgwMywgc3RydWN0IGRybV9pcnFfYnVzaWQpCiAjZGVmaW5lIERSTV9JT0NUTF9HRVRfTUFQIERSTV9JT1dSKDB4MDQsIHN0cnVjdCBkcm1fbWFwKQogI2RlZmluZSBEUk1fSU9DVExfR0VUX0NMSUVOVCBEUk1fSU9XUigweDA1LCBzdHJ1Y3QgZHJtX2NsaWVudCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0dFVF9TVEFUUyBEUk1fSU9SKCAweDA2LCBzdHJ1Y3QgZHJtX3N0YXRzKQorI2RlZmluZSBEUk1fSU9DVExfR0VUX1NUQVRTIERSTV9JT1IoMHgwNiwgc3RydWN0IGRybV9zdGF0cykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9TRVRfVkVSU0lPTiBEUk1fSU9XUigweDA3LCBzdHJ1Y3QgZHJtX3NldF92ZXJzaW9uKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX01PREVTRVRfQ1RMIERSTV9JT1coMHgwOCwgc3RydWN0IGRybV9tb2Rlc2V0X2N0bCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0dFTV9DTE9TRSBEUk1fSU9XICgweDA5LCBzdHJ1Y3QgZHJtX2dlbV9jbG9zZSkKKyNkZWZpbmUgRFJNX0lPQ1RMX0dFTV9DTE9TRSBEUk1fSU9XKDB4MDksIHN0cnVjdCBkcm1fZ2VtX2Nsb3NlKQogI2RlZmluZSBEUk1fSU9DVExfR0VNX0ZMSU5LIERSTV9JT1dSKDB4MGEsIHN0cnVjdCBkcm1fZ2VtX2ZsaW5rKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX0dFTV9PUEVOIERSTV9JT1dSKDB4MGIsIHN0cnVjdCBkcm1fZ2VtX29wZW4pCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfR0VUX0NBUCBEUk1fSU9XUigweDBjLCBzdHJ1Y3QgZHJtX2dldF9jYXApCi0jZGVmaW5lIERSTV9JT0NUTF9TRVRfQ0xJRU5UX0NBUCBEUk1fSU9XKCAweDBkLCBzdHJ1Y3QgZHJtX3NldF9jbGllbnRfY2FwKQotI2RlZmluZSBEUk1fSU9DVExfU0VUX1VOSVFVRSBEUk1fSU9XKCAweDEwLCBzdHJ1Y3QgZHJtX3VuaXF1ZSkKLSNkZWZpbmUgRFJNX0lPQ1RMX0FVVEhfTUFHSUMgRFJNX0lPVyggMHgxMSwgc3RydWN0IGRybV9hdXRoKQorI2RlZmluZSBEUk1fSU9DVExfU0VUX0NMSUVOVF9DQVAgRFJNX0lPVygweDBkLCBzdHJ1Y3QgZHJtX3NldF9jbGllbnRfY2FwKQorI2RlZmluZSBEUk1fSU9DVExfU0VUX1VOSVFVRSBEUk1fSU9XKDB4MTAsIHN0cnVjdCBkcm1fdW5pcXVlKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX0FVVEhfTUFHSUMgRFJNX0lPVygweDExLCBzdHJ1Y3QgZHJtX2F1dGgpCiAjZGVmaW5lIERSTV9JT0NUTF9CTE9DSyBEUk1fSU9XUigweDEyLCBzdHJ1Y3QgZHJtX2Jsb2NrKQogI2RlZmluZSBEUk1fSU9DVExfVU5CTE9DSyBEUk1fSU9XUigweDEzLCBzdHJ1Y3QgZHJtX2Jsb2NrKQotI2RlZmluZSBEUk1fSU9DVExfQ09OVFJPTCBEUk1fSU9XKCAweDE0LCBzdHJ1Y3QgZHJtX2NvbnRyb2wpCisjZGVmaW5lIERSTV9JT0NUTF9DT05UUk9MIERSTV9JT1coMHgxNCwgc3RydWN0IGRybV9jb250cm9sKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX0FERF9NQVAgRFJNX0lPV1IoMHgxNSwgc3RydWN0IGRybV9tYXApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfQUREX0JVRlMgRFJNX0lPV1IoMHgxNiwgc3RydWN0IGRybV9idWZfZGVzYykKLSNkZWZpbmUgRFJNX0lPQ1RMX01BUktfQlVGUyBEUk1fSU9XKCAweDE3LCBzdHJ1Y3QgZHJtX2J1Zl9kZXNjKQorI2RlZmluZSBEUk1fSU9DVExfTUFSS19CVUZTIERSTV9JT1coMHgxNywgc3RydWN0IGRybV9idWZfZGVzYykKICNkZWZpbmUgRFJNX0lPQ1RMX0lORk9fQlVGUyBEUk1fSU9XUigweDE4LCBzdHJ1Y3QgZHJtX2J1Zl9pbmZvKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX01BUF9CVUZTIERSTV9JT1dSKDB4MTksIHN0cnVjdCBkcm1fYnVmX21hcCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0ZSRUVfQlVGUyBEUk1fSU9XKDB4MWEsIHN0cnVjdCBkcm1fYnVmX2ZyZWUpCisjZGVmaW5lIERSTV9JT0NUTF9STV9NQVAgRFJNX0lPVygweDFiLCBzdHJ1Y3QgZHJtX21hcCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1NFVF9TQVJFQV9DVFggRFJNX0lPVygweDFjLCBzdHJ1Y3QgZHJtX2N0eF9wcml2X21hcCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9GUkVFX0JVRlMgRFJNX0lPVyggMHgxYSwgc3RydWN0IGRybV9idWZfZnJlZSkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JNX01BUCBEUk1fSU9XKCAweDFiLCBzdHJ1Y3QgZHJtX21hcCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1NFVF9TQVJFQV9DVFggRFJNX0lPVyggMHgxYywgc3RydWN0IGRybV9jdHhfcHJpdl9tYXApCiAjZGVmaW5lIERSTV9JT0NUTF9HRVRfU0FSRUFfQ1RYIERSTV9JT1dSKDB4MWQsIHN0cnVjdCBkcm1fY3R4X3ByaXZfbWFwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX1NFVF9NQVNURVIgRFJNX0lPKDB4MWUpCiAjZGVmaW5lIERSTV9JT0NUTF9EUk9QX01BU1RFUiBEUk1fSU8oMHgxZikKICNkZWZpbmUgRFJNX0lPQ1RMX0FERF9DVFggRFJNX0lPV1IoMHgyMCwgc3RydWN0IGRybV9jdHgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfUk1fQ1RYIERSTV9JT1dSKDB4MjEsIHN0cnVjdCBkcm1fY3R4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX01PRF9DVFggRFJNX0lPVyggMHgyMiwgc3RydWN0IGRybV9jdHgpCisjZGVmaW5lIERSTV9JT0NUTF9NT0RfQ1RYIERSTV9JT1coMHgyMiwgc3RydWN0IGRybV9jdHgpCiAjZGVmaW5lIERSTV9JT0NUTF9HRVRfQ1RYIERSTV9JT1dSKDB4MjMsIHN0cnVjdCBkcm1fY3R4KQotI2RlZmluZSBEUk1fSU9DVExfU1dJVENIX0NUWCBEUk1fSU9XKCAweDI0LCBzdHJ1Y3QgZHJtX2N0eCkKLSNkZWZpbmUgRFJNX0lPQ1RMX05FV19DVFggRFJNX0lPVyggMHgyNSwgc3RydWN0IGRybV9jdHgpCisjZGVmaW5lIERSTV9JT0NUTF9TV0lUQ0hfQ1RYIERSTV9JT1coMHgyNCwgc3RydWN0IGRybV9jdHgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fSU9DVExfTkVXX0NUWCBEUk1fSU9XKDB4MjUsIHN0cnVjdCBkcm1fY3R4KQogI2RlZmluZSBEUk1fSU9DVExfUkVTX0NUWCBEUk1fSU9XUigweDI2LCBzdHJ1Y3QgZHJtX2N0eF9yZXMpCiAjZGVmaW5lIERSTV9JT0NUTF9BRERfRFJBVyBEUk1fSU9XUigweDI3LCBzdHJ1Y3QgZHJtX2RyYXcpCiAjZGVmaW5lIERSTV9JT0NUTF9STV9EUkFXIERSTV9JT1dSKDB4MjgsIHN0cnVjdCBkcm1fZHJhdykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9ETUEgRFJNX0lPV1IoMHgyOSwgc3RydWN0IGRybV9kbWEpCisjZGVmaW5lIERSTV9JT0NUTF9MT0NLIERSTV9JT1coMHgyYSwgc3RydWN0IGRybV9sb2NrKQorI2RlZmluZSBEUk1fSU9DVExfVU5MT0NLIERSTV9JT1coMHgyYiwgc3RydWN0IGRybV9sb2NrKQorI2RlZmluZSBEUk1fSU9DVExfRklOSVNIIERSTV9JT1coMHgyYywgc3RydWN0IGRybV9sb2NrKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX0xPQ0sgRFJNX0lPVyggMHgyYSwgc3RydWN0IGRybV9sb2NrKQotI2RlZmluZSBEUk1fSU9DVExfVU5MT0NLIERSTV9JT1coIDB4MmIsIHN0cnVjdCBkcm1fbG9jaykKLSNkZWZpbmUgRFJNX0lPQ1RMX0ZJTklTSCBEUk1fSU9XKCAweDJjLCBzdHJ1Y3QgZHJtX2xvY2spCiAjZGVmaW5lIERSTV9JT0NUTF9QUklNRV9IQU5ETEVfVE9fRkQgRFJNX0lPV1IoMHgyZCwgc3RydWN0IGRybV9wcmltZV9oYW5kbGUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfUFJJTUVfRkRfVE9fSEFORExFIERSTV9JT1dSKDB4MmUsIHN0cnVjdCBkcm1fcHJpbWVfaGFuZGxlKQotI2RlZmluZSBEUk1fSU9DVExfQUdQX0FDUVVJUkUgRFJNX0lPKCAweDMwKQotI2RlZmluZSBEUk1fSU9DVExfQUdQX1JFTEVBU0UgRFJNX0lPKCAweDMxKQotI2RlZmluZSBEUk1fSU9DVExfQUdQX0VOQUJMRSBEUk1fSU9XKCAweDMyLCBzdHJ1Y3QgZHJtX2FncF9tb2RlKQorI2RlZmluZSBEUk1fSU9DVExfQUdQX0FDUVVJUkUgRFJNX0lPKDB4MzApCisjZGVmaW5lIERSTV9JT0NUTF9BR1BfUkVMRUFTRSBEUk1fSU8oMHgzMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9BR1BfSU5GTyBEUk1fSU9SKCAweDMzLCBzdHJ1Y3QgZHJtX2FncF9pbmZvKQorI2RlZmluZSBEUk1fSU9DVExfQUdQX0VOQUJMRSBEUk1fSU9XKDB4MzIsIHN0cnVjdCBkcm1fYWdwX21vZGUpCisjZGVmaW5lIERSTV9JT0NUTF9BR1BfSU5GTyBEUk1fSU9SKDB4MzMsIHN0cnVjdCBkcm1fYWdwX2luZm8pCiAjZGVmaW5lIERSTV9JT0NUTF9BR1BfQUxMT0MgRFJNX0lPV1IoMHgzNCwgc3RydWN0IGRybV9hZ3BfYnVmZmVyKQotI2RlZmluZSBEUk1fSU9DVExfQUdQX0ZSRUUgRFJNX0lPVyggMHgzNSwgc3RydWN0IGRybV9hZ3BfYnVmZmVyKQotI2RlZmluZSBEUk1fSU9DVExfQUdQX0JJTkQgRFJNX0lPVyggMHgzNiwgc3RydWN0IGRybV9hZ3BfYmluZGluZykKKyNkZWZpbmUgRFJNX0lPQ1RMX0FHUF9GUkVFIERSTV9JT1coMHgzNSwgc3RydWN0IGRybV9hZ3BfYnVmZmVyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX0FHUF9VTkJJTkQgRFJNX0lPVyggMHgzNywgc3RydWN0IGRybV9hZ3BfYmluZGluZykKKyNkZWZpbmUgRFJNX0lPQ1RMX0FHUF9CSU5EIERSTV9JT1coMHgzNiwgc3RydWN0IGRybV9hZ3BfYmluZGluZykKKyNkZWZpbmUgRFJNX0lPQ1RMX0FHUF9VTkJJTkQgRFJNX0lPVygweDM3LCBzdHJ1Y3QgZHJtX2FncF9iaW5kaW5nKQogI2RlZmluZSBEUk1fSU9DVExfU0dfQUxMT0MgRFJNX0lPV1IoMHgzOCwgc3RydWN0IGRybV9zY2F0dGVyX2dhdGhlcikKLSNkZWZpbmUgRFJNX0lPQ1RMX1NHX0ZSRUUgRFJNX0lPVyggMHgzOSwgc3RydWN0IGRybV9zY2F0dGVyX2dhdGhlcikKLSNkZWZpbmUgRFJNX0lPQ1RMX1dBSVRfVkJMQU5LIERSTV9JT1dSKDB4M2EsIHVuaW9uIGRybV93YWl0X3ZibGFuaykKKyNkZWZpbmUgRFJNX0lPQ1RMX1NHX0ZSRUUgRFJNX0lPVygweDM5LCBzdHJ1Y3QgZHJtX3NjYXR0ZXJfZ2F0aGVyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX1dBSVRfVkJMQU5LIERSTV9JT1dSKDB4M2EsIHVuaW9uIGRybV93YWl0X3ZibGFuaykKICNkZWZpbmUgRFJNX0lPQ1RMX1VQREFURV9EUkFXIERSTV9JT1coMHgzZiwgc3RydWN0IGRybV91cGRhdGVfZHJhdykKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfR0VUUkVTT1VSQ0VTIERSTV9JT1dSKDB4QTAsIHN0cnVjdCBkcm1fbW9kZV9jYXJkX3JlcykKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfR0VUQ1JUQyBEUk1fSU9XUigweEExLCBzdHJ1Y3QgZHJtX21vZGVfY3J0YykKLSNkZWZpbmUgRFJNX0lPQ1RMX01PREVfU0VUQ1JUQyBEUk1fSU9XUigweEEyLCBzdHJ1Y3QgZHJtX21vZGVfY3J0YykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9NT0RFX1NFVENSVEMgRFJNX0lPV1IoMHhBMiwgc3RydWN0IGRybV9tb2RlX2NydGMpCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX0NVUlNPUiBEUk1fSU9XUigweEEzLCBzdHJ1Y3QgZHJtX21vZGVfY3Vyc29yKQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9HRVRHQU1NQSBEUk1fSU9XUigweEE0LCBzdHJ1Y3QgZHJtX21vZGVfY3J0Y19sdXQpCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX1NFVEdBTU1BIERSTV9JT1dSKDB4QTUsIHN0cnVjdCBkcm1fbW9kZV9jcnRjX2x1dCkKLSNkZWZpbmUgRFJNX0lPQ1RMX01PREVfR0VURU5DT0RFUiBEUk1fSU9XUigweEE2LCBzdHJ1Y3QgZHJtX21vZGVfZ2V0X2VuY29kZXIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fSU9DVExfTU9ERV9HRVRFTkNPREVSIERSTV9JT1dSKDB4QTYsIHN0cnVjdCBkcm1fbW9kZV9nZXRfZW5jb2RlcikKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfR0VUQ09OTkVDVE9SIERSTV9JT1dSKDB4QTcsIHN0cnVjdCBkcm1fbW9kZV9nZXRfY29ubmVjdG9yKQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9BVFRBQ0hNT0RFIERSTV9JT1dSKDB4QTgsIHN0cnVjdCBkcm1fbW9kZV9tb2RlX2NtZCkKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfREVUQUNITU9ERSBEUk1fSU9XUigweEE5LCBzdHJ1Y3QgZHJtX21vZGVfbW9kZV9jbWQpCi0jZGVmaW5lIERSTV9JT0NUTF9NT0RFX0dFVFBST1BFUlRZIERSTV9JT1dSKDB4QUEsIHN0cnVjdCBkcm1fbW9kZV9nZXRfcHJvcGVydHkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fSU9DVExfTU9ERV9HRVRQUk9QRVJUWSBEUk1fSU9XUigweEFBLCBzdHJ1Y3QgZHJtX21vZGVfZ2V0X3Byb3BlcnR5KQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9TRVRQUk9QRVJUWSBEUk1fSU9XUigweEFCLCBzdHJ1Y3QgZHJtX21vZGVfY29ubmVjdG9yX3NldF9wcm9wZXJ0eSkKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfR0VUUFJPUEJMT0IgRFJNX0lPV1IoMHhBQywgc3RydWN0IGRybV9tb2RlX2dldF9ibG9iKQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9HRVRGQiBEUk1fSU9XUigweEFELCBzdHJ1Y3QgZHJtX21vZGVfZmJfY21kKQotI2RlZmluZSBEUk1fSU9DVExfTU9ERV9BRERGQiBEUk1fSU9XUigweEFFLCBzdHJ1Y3QgZHJtX21vZGVfZmJfY21kKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX01PREVfQURERkIgRFJNX0lPV1IoMHhBRSwgc3RydWN0IGRybV9tb2RlX2ZiX2NtZCkKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfUk1GQiBEUk1fSU9XUigweEFGLCB1bnNpZ25lZCBpbnQpCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX1BBR0VfRkxJUCBEUk1fSU9XUigweEIwLCBzdHJ1Y3QgZHJtX21vZGVfY3J0Y19wYWdlX2ZsaXApCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX0RJUlRZRkIgRFJNX0lPV1IoMHhCMSwgc3RydWN0IGRybV9tb2RlX2ZiX2RpcnR5X2NtZCkKLSNkZWZpbmUgRFJNX0lPQ1RMX01PREVfQ1JFQVRFX0RVTUIgRFJNX0lPV1IoMHhCMiwgc3RydWN0IGRybV9tb2RlX2NyZWF0ZV9kdW1iKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX01PREVfQ1JFQVRFX0RVTUIgRFJNX0lPV1IoMHhCMiwgc3RydWN0IGRybV9tb2RlX2NyZWF0ZV9kdW1iKQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9NQVBfRFVNQiBEUk1fSU9XUigweEIzLCBzdHJ1Y3QgZHJtX21vZGVfbWFwX2R1bWIpCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX0RFU1RST1lfRFVNQiBEUk1fSU9XUigweEI0LCBzdHJ1Y3QgZHJtX21vZGVfZGVzdHJveV9kdW1iKQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9HRVRQTEFORVJFU09VUkNFUyBEUk1fSU9XUigweEI1LCBzdHJ1Y3QgZHJtX21vZGVfZ2V0X3BsYW5lX3JlcykKLSNkZWZpbmUgRFJNX0lPQ1RMX01PREVfR0VUUExBTkUgRFJNX0lPV1IoMHhCNiwgc3RydWN0IGRybV9tb2RlX2dldF9wbGFuZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9NT0RFX0dFVFBMQU5FIERSTV9JT1dSKDB4QjYsIHN0cnVjdCBkcm1fbW9kZV9nZXRfcGxhbmUpCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX1NFVFBMQU5FIERSTV9JT1dSKDB4QjcsIHN0cnVjdCBkcm1fbW9kZV9zZXRfcGxhbmUpCiAjZGVmaW5lIERSTV9JT0NUTF9NT0RFX0FEREZCMiBEUk1fSU9XUigweEI4LCBzdHJ1Y3QgZHJtX21vZGVfZmJfY21kMikKICNkZWZpbmUgRFJNX0lPQ1RMX01PREVfT0JKX0dFVFBST1BFUlRJRVMgRFJNX0lPV1IoMHhCOSwgc3RydWN0IGRybV9tb2RlX29ial9nZXRfcHJvcGVydGllcykKLSNkZWZpbmUgRFJNX0lPQ1RMX01PREVfT0JKX1NFVFBST1BFUlRZIERSTV9JT1dSKDB4QkEsIHN0cnVjdCBkcm1fbW9kZV9vYmpfc2V0X3Byb3BlcnR5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX01PREVfT0JKX1NFVFBST1BFUlRZIERSTV9JT1dSKDB4QkEsIHN0cnVjdCBkcm1fbW9kZV9vYmpfc2V0X3Byb3BlcnR5KQogI2RlZmluZSBEUk1fSU9DVExfTU9ERV9DVVJTT1IyIERSTV9JT1dSKDB4QkIsIHN0cnVjdCBkcm1fbW9kZV9jdXJzb3IyKQogI2RlZmluZSBEUk1fQ09NTUFORF9CQVNFIDB4NDAKICNkZWZpbmUgRFJNX0NPTU1BTkRfRU5EIDB4QTAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2V2ZW50IHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UzMiBsZW5ndGg7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGxlbmd0aDsKIH07Ci0jZGVmaW5lIERSTV9FVkVOVF9WQkxBTksgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0VWRU5UX1ZCTEFOSyAweDAxCiAjZGVmaW5lIERSTV9FVkVOVF9GTElQX0NPTVBMRVRFIDB4MDIKIHN0cnVjdCBkcm1fZXZlbnRfdmJsYW5rIHsKLSBzdHJ1Y3QgZHJtX2V2ZW50IGJhc2U7Ci0gX191NjQgdXNlcl9kYXRhOworICBzdHJ1Y3QgZHJtX2V2ZW50IGJhc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR2X3NlYzsKLSBfX3UzMiB0dl91c2VjOwotIF9fdTMyIHNlcXVlbmNlOwotIF9fdTMyIHJlc2VydmVkOworICBfX3U2NCB1c2VyX2RhdGE7CisgIF9fdTMyIHR2X3NlYzsKKyAgX191MzIgdHZfdXNlYzsKKyAgX191MzIgc2VxdWVuY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiByZXNlcnZlZDsKIH07CiB0eXBlZGVmIHN0cnVjdCBkcm1fY2xpcF9yZWN0IGRybV9jbGlwX3JlY3RfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9kcmF3YWJsZV9pbmZvIGRybV9kcmF3YWJsZV9pbmZvX3Q7Ci10eXBlZGVmIHN0cnVjdCBkcm1fdGV4X3JlZ2lvbiBkcm1fdGV4X3JlZ2lvbl90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3R5cGVkZWYgc3RydWN0IGRybV90ZXhfcmVnaW9uIGRybV90ZXhfcmVnaW9uX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1faHdfbG9jayBkcm1faHdfbG9ja190OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3ZlcnNpb24gZHJtX3ZlcnNpb25fdDsKIHR5cGVkZWYgc3RydWN0IGRybV91bmlxdWUgZHJtX3VuaXF1ZV90OwotdHlwZWRlZiBzdHJ1Y3QgZHJtX2xpc3QgZHJtX2xpc3RfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit0eXBlZGVmIHN0cnVjdCBkcm1fbGlzdCBkcm1fbGlzdF90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2Jsb2NrIGRybV9ibG9ja190OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2NvbnRyb2wgZHJtX2NvbnRyb2xfdDsKIHR5cGVkZWYgZW51bSBkcm1fbWFwX3R5cGUgZHJtX21hcF90eXBlX3Q7Ci10eXBlZGVmIGVudW0gZHJtX21hcF9mbGFncyBkcm1fbWFwX2ZsYWdzX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwordHlwZWRlZiBlbnVtIGRybV9tYXBfZmxhZ3MgZHJtX21hcF9mbGFnc190OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2N0eF9wcml2X21hcCBkcm1fY3R4X3ByaXZfbWFwX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fbWFwIGRybV9tYXBfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9jbGllbnQgZHJtX2NsaWVudF90OwotdHlwZWRlZiBlbnVtIGRybV9zdGF0X3R5cGUgZHJtX3N0YXRfdHlwZV90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3R5cGVkZWYgZW51bSBkcm1fc3RhdF90eXBlIGRybV9zdGF0X3R5cGVfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9zdGF0cyBkcm1fc3RhdHNfdDsKIHR5cGVkZWYgZW51bSBkcm1fbG9ja19mbGFncyBkcm1fbG9ja19mbGFnc190OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2xvY2sgZHJtX2xvY2tfdDsKLXR5cGVkZWYgZW51bSBkcm1fZG1hX2ZsYWdzIGRybV9kbWFfZmxhZ3NfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit0eXBlZGVmIGVudW0gZHJtX2RtYV9mbGFncyBkcm1fZG1hX2ZsYWdzX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fYnVmX2Rlc2MgZHJtX2J1Zl9kZXNjX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fYnVmX2luZm8gZHJtX2J1Zl9pbmZvX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fYnVmX2ZyZWUgZHJtX2J1Zl9mcmVlX3Q7Ci10eXBlZGVmIHN0cnVjdCBkcm1fYnVmX3B1YiBkcm1fYnVmX3B1Yl90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3R5cGVkZWYgc3RydWN0IGRybV9idWZfcHViIGRybV9idWZfcHViX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fYnVmX21hcCBkcm1fYnVmX21hcF90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2RtYSBkcm1fZG1hX3Q7CiB0eXBlZGVmIHVuaW9uIGRybV93YWl0X3ZibGFuayBkcm1fd2FpdF92YmxhbmtfdDsKLXR5cGVkZWYgc3RydWN0IGRybV9hZ3BfbW9kZSBkcm1fYWdwX21vZGVfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit0eXBlZGVmIHN0cnVjdCBkcm1fYWdwX21vZGUgZHJtX2FncF9tb2RlX3Q7CiB0eXBlZGVmIGVudW0gZHJtX2N0eF9mbGFncyBkcm1fY3R4X2ZsYWdzX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fY3R4IGRybV9jdHhfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9jdHhfcmVzIGRybV9jdHhfcmVzX3Q7Ci10eXBlZGVmIHN0cnVjdCBkcm1fZHJhdyBkcm1fZHJhd190OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3R5cGVkZWYgc3RydWN0IGRybV9kcmF3IGRybV9kcmF3X3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fdXBkYXRlX2RyYXcgZHJtX3VwZGF0ZV9kcmF3X3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fYXV0aCBkcm1fYXV0aF90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2lycV9idXNpZCBkcm1faXJxX2J1c2lkX3Q7Ci10eXBlZGVmIGVudW0gZHJtX3ZibGFua19zZXFfdHlwZSBkcm1fdmJsYW5rX3NlcV90eXBlX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwordHlwZWRlZiBlbnVtIGRybV92Ymxhbmtfc2VxX3R5cGUgZHJtX3ZibGFua19zZXFfdHlwZV90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2FncF9idWZmZXIgZHJtX2FncF9idWZmZXJfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9hZ3BfYmluZGluZyBkcm1fYWdwX2JpbmRpbmdfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9hZ3BfaW5mbyBkcm1fYWdwX2luZm9fdDsKLXR5cGVkZWYgc3RydWN0IGRybV9zY2F0dGVyX2dhdGhlciBkcm1fc2NhdHRlcl9nYXRoZXJfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit0eXBlZGVmIHN0cnVjdCBkcm1fc2NhdHRlcl9nYXRoZXIgZHJtX3NjYXR0ZXJfZ2F0aGVyX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fc2V0X3ZlcnNpb24gZHJtX3NldF92ZXJzaW9uX3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL2RybV9mb3VyY2MuaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2RybV9mb3VyY2MuaAppbmRleCBlNGFjZjE3Li40N2U5M2RkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9kcm1fZm91cmNjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vZHJtX2ZvdXJjYy5oCkBAIC0xOSw5ICsxOSw5IEBACiAjaWZuZGVmIERSTV9GT1VSQ0NfSAogI2RlZmluZSBEUk1fRk9VUkNDX0gKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgotI2RlZmluZSBmb3VyY2NfY29kZShhLCBiLCBjLCBkKSAoKF9fdTMyKShhKSB8ICgoX191MzIpKGIpIDw8IDgpIHwgICAoKF9fdTMyKShjKSA8PCAxNikgfCAoKF9fdTMyKShkKSA8PCAyNCkpCisjZGVmaW5lIGZvdXJjY19jb2RlKGEsYixjLGQpICgoX191MzIpIChhKSB8ICgoX191MzIpIChiKSA8PCA4KSB8ICgoX191MzIpIChjKSA8PCAxNikgfCAoKF9fdTMyKSAoZCkgPDwgMjQpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0ZPUk1BVF9CSUdfRU5ESUFOICgxPDwzMSkKKyNkZWZpbmUgRFJNX0ZPUk1BVF9CSUdfRU5ESUFOICgxIDw8IDMxKQogI2RlZmluZSBEUk1fRk9STUFUX0M4IGZvdXJjY19jb2RlKCdDJywgJzgnLCAnICcsICcgJykKICNkZWZpbmUgRFJNX0ZPUk1BVF9SR0IzMzIgZm91cmNjX2NvZGUoJ1InLCAnRycsICdCJywgJzgnKQogI2RlZmluZSBEUk1fRk9STUFUX0JHUjIzMyBmb3VyY2NfY29kZSgnQicsICdHJywgJ1InLCAnOCcpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9kcm1fbW9kZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vZHJtX21vZGUuaAppbmRleCBiYmUxYzhlLi5hYmQ5MmExIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9kcm1fbW9kZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2RybV9tb2RlLmgKQEAgLTI0LDQ1ICsyNCw0NSBAQAogI2RlZmluZSBEUk1fQ09OTkVDVE9SX05BTUVfTEVOIDMyCiAjZGVmaW5lIERSTV9ESVNQTEFZX01PREVfTEVOIDMyCiAjZGVmaW5lIERSTV9QUk9QX05BTUVfTEVOIDMyCi0jZGVmaW5lIERSTV9NT0RFX1RZUEVfQlVJTFRJTiAoMTw8MCkKKyNkZWZpbmUgRFJNX01PREVfVFlQRV9CVUlMVElOICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fTU9ERV9UWVBFX0NMT0NLX0MgKCgxPDwxKSB8IERSTV9NT0RFX1RZUEVfQlVJTFRJTikKLSNkZWZpbmUgRFJNX01PREVfVFlQRV9DUlRDX0MgKCgxPDwyKSB8IERSTV9NT0RFX1RZUEVfQlVJTFRJTikKLSNkZWZpbmUgRFJNX01PREVfVFlQRV9QUkVGRVJSRUQgKDE8PDMpCi0jZGVmaW5lIERSTV9NT0RFX1RZUEVfREVGQVVMVCAoMTw8NCkKKyNkZWZpbmUgRFJNX01PREVfVFlQRV9DTE9DS19DICgoMSA8PCAxKSB8IERSTV9NT0RFX1RZUEVfQlVJTFRJTikKKyNkZWZpbmUgRFJNX01PREVfVFlQRV9DUlRDX0MgKCgxIDw8IDIpIHwgRFJNX01PREVfVFlQRV9CVUlMVElOKQorI2RlZmluZSBEUk1fTU9ERV9UWVBFX1BSRUZFUlJFRCAoMSA8PCAzKQorI2RlZmluZSBEUk1fTU9ERV9UWVBFX0RFRkFVTFQgKDEgPDwgNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9NT0RFX1RZUEVfVVNFUkRFRiAoMTw8NSkKLSNkZWZpbmUgRFJNX01PREVfVFlQRV9EUklWRVIgKDE8PDYpCi0jZGVmaW5lIERSTV9NT0RFX0ZMQUdfUEhTWU5DICgxPDwwKQotI2RlZmluZSBEUk1fTU9ERV9GTEFHX05IU1lOQyAoMTw8MSkKKyNkZWZpbmUgRFJNX01PREVfVFlQRV9VU0VSREVGICgxIDw8IDUpCisjZGVmaW5lIERSTV9NT0RFX1RZUEVfRFJJVkVSICgxIDw8IDYpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfUEhTWU5DICgxIDw8IDApCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfTkhTWU5DICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fTU9ERV9GTEFHX1BWU1lOQyAoMTw8MikKLSNkZWZpbmUgRFJNX01PREVfRkxBR19OVlNZTkMgKDE8PDMpCi0jZGVmaW5lIERSTV9NT0RFX0ZMQUdfSU5URVJMQUNFICgxPDw0KQotI2RlZmluZSBEUk1fTU9ERV9GTEFHX0RCTFNDQU4gKDE8PDUpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfUFZTWU5DICgxIDw8IDIpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfTlZTWU5DICgxIDw8IDMpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfSU5URVJMQUNFICgxIDw8IDQpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfREJMU0NBTiAoMSA8PCA1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX01PREVfRkxBR19DU1lOQyAoMTw8NikKLSNkZWZpbmUgRFJNX01PREVfRkxBR19QQ1NZTkMgKDE8PDcpCi0jZGVmaW5lIERSTV9NT0RFX0ZMQUdfTkNTWU5DICgxPDw4KQotI2RlZmluZSBEUk1fTU9ERV9GTEFHX0hTS0VXICgxPDw5KQorI2RlZmluZSBEUk1fTU9ERV9GTEFHX0NTWU5DICgxIDw8IDYpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfUENTWU5DICgxIDw8IDcpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfTkNTWU5DICgxIDw8IDgpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfSFNLRVcgKDEgPDwgOSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9NT0RFX0ZMQUdfQkNBU1QgKDE8PDEwKQotI2RlZmluZSBEUk1fTU9ERV9GTEFHX1BJWE1VWCAoMTw8MTEpCi0jZGVmaW5lIERSTV9NT0RFX0ZMQUdfREJMQ0xLICgxPDwxMikKLSNkZWZpbmUgRFJNX01PREVfRkxBR19DTEtESVYyICgxPDwxMykKKyNkZWZpbmUgRFJNX01PREVfRkxBR19CQ0FTVCAoMSA8PCAxMCkKKyNkZWZpbmUgRFJNX01PREVfRkxBR19QSVhNVVggKDEgPDwgMTEpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfREJMQ0xLICgxIDw8IDEyKQorI2RlZmluZSBEUk1fTU9ERV9GTEFHX0NMS0RJVjIgKDEgPDwgMTMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX01BU0sgKDB4MWY8PDE0KQotI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX05PTkUgKDA8PDE0KQotI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX0ZSQU1FX1BBQ0tJTkcgKDE8PDE0KQotI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX0ZJRUxEX0FMVEVSTkFUSVZFICgyPDwxNCkKKyNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9NQVNLICgweDFmIDw8IDE0KQorI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX05PTkUgKDAgPDwgMTQpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfM0RfRlJBTUVfUEFDS0lORyAoMSA8PCAxNCkKKyNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9GSUVMRF9BTFRFUk5BVElWRSAoMiA8PCAxNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9NT0RFX0ZMQUdfM0RfTElORV9BTFRFUk5BVElWRSAoMzw8MTQpCi0jZGVmaW5lIERSTV9NT0RFX0ZMQUdfM0RfU0lERV9CWV9TSURFX0ZVTEwgKDQ8PDE0KQotI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX0xfREVQVEggKDU8PDE0KQotI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX0xfREVQVEhfR0ZYX0dGWF9ERVBUSCAoNjw8MTQpCisjZGVmaW5lIERSTV9NT0RFX0ZMQUdfM0RfTElORV9BTFRFUk5BVElWRSAoMyA8PCAxNCkKKyNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9TSURFX0JZX1NJREVfRlVMTCAoNCA8PCAxNCkKKyNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9MX0RFUFRIICg1IDw8IDE0KQorI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX0xfREVQVEhfR0ZYX0dGWF9ERVBUSCAoNiA8PCAxNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9NT0RFX0ZMQUdfM0RfVE9QX0FORF9CT1RUT00gKDc8PDE0KQotI2RlZmluZSBEUk1fTU9ERV9GTEFHXzNEX1NJREVfQllfU0lERV9IQUxGICg4PDwxNCkKKyNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9UT1BfQU5EX0JPVFRPTSAoNyA8PCAxNCkKKyNkZWZpbmUgRFJNX01PREVfRkxBR18zRF9TSURFX0JZX1NJREVfSEFMRiAoOCA8PCAxNCkKICNkZWZpbmUgRFJNX01PREVfRFBNU19PTiAwCiAjZGVmaW5lIERSTV9NT0RFX0RQTVNfU1RBTkRCWSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNzMsMTAwICs3MywxMDUgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9NT0RFX1NDQUxFX0NFTlRFUiAyCiAjZGVmaW5lIERSTV9NT0RFX1NDQUxFX0FTUEVDVCAzCisjZGVmaW5lIERSTV9NT0RFX1BJQ1RVUkVfQVNQRUNUX05PTkUgMAorI2RlZmluZSBEUk1fTU9ERV9QSUNUVVJFX0FTUEVDVF80XzMgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX01PREVfUElDVFVSRV9BU1BFQ1RfMTZfOSAyCiAjZGVmaW5lIERSTV9NT0RFX0RJVEhFUklOR19PRkYgMAogI2RlZmluZSBEUk1fTU9ERV9ESVRIRVJJTkdfT04gMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX01PREVfRElUSEVSSU5HX0FVVE8gMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX01PREVfRElSVFlfT0ZGIDAKICNkZWZpbmUgRFJNX01PREVfRElSVFlfT04gMQogI2RlZmluZSBEUk1fTU9ERV9ESVJUWV9BTk5PVEFURSAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9tb2RlX21vZGVpbmZvIHsKLSBfX3UzMiBjbG9jazsKLSBfX3UxNiBoZGlzcGxheSwgaHN5bmNfc3RhcnQsIGhzeW5jX2VuZCwgaHRvdGFsLCBoc2tldzsKLSBfX3UxNiB2ZGlzcGxheSwgdnN5bmNfc3RhcnQsIHZzeW5jX2VuZCwgdnRvdGFsLCB2c2NhbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdnJlZnJlc2g7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgdHlwZTsKLSBjaGFyIG5hbWVbRFJNX0RJU1BMQVlfTU9ERV9MRU5dOworICBfX3UzMiBjbG9jazsKKyAgX191MTYgaGRpc3BsYXksIGhzeW5jX3N0YXJ0LCBoc3luY19lbmQsIGh0b3RhbCwgaHNrZXc7CisgIF9fdTE2IHZkaXNwbGF5LCB2c3luY19zdGFydCwgdnN5bmNfZW5kLCB2dG90YWwsIHZzY2FuOworICBfX3UzMiB2cmVmcmVzaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGZsYWdzOworICBfX3UzMiB0eXBlOworICBjaGFyIG5hbWVbRFJNX0RJU1BMQVlfTU9ERV9MRU5dOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX21vZGVfY2FyZF9yZXMgewotIF9fdTY0IGZiX2lkX3B0cjsKLSBfX3U2NCBjcnRjX2lkX3B0cjsKKyAgX191NjQgZmJfaWRfcHRyOworICBfX3U2NCBjcnRjX2lkX3B0cjsKKyAgX191NjQgY29ubmVjdG9yX2lkX3B0cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY29ubmVjdG9yX2lkX3B0cjsKLSBfX3U2NCBlbmNvZGVyX2lkX3B0cjsKLSBfX3UzMiBjb3VudF9mYnM7Ci0gX191MzIgY291bnRfY3J0Y3M7CisgIF9fdTY0IGVuY29kZXJfaWRfcHRyOworICBfX3UzMiBjb3VudF9mYnM7CisgIF9fdTMyIGNvdW50X2NydGNzOworICBfX3UzMiBjb3VudF9jb25uZWN0b3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb3VudF9jb25uZWN0b3JzOwotIF9fdTMyIGNvdW50X2VuY29kZXJzOwotIF9fdTMyIG1pbl93aWR0aCwgbWF4X3dpZHRoOwotIF9fdTMyIG1pbl9oZWlnaHQsIG1heF9oZWlnaHQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBjb3VudF9lbmNvZGVyczsKKyAgX191MzIgbWluX3dpZHRoLCBtYXhfd2lkdGg7CisgIF9fdTMyIG1pbl9oZWlnaHQsIG1heF9oZWlnaHQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbW9kZV9jcnRjIHsKLSBfX3U2NCBzZXRfY29ubmVjdG9yc19wdHI7Ci0gX191MzIgY291bnRfY29ubmVjdG9yczsKKyAgX191NjQgc2V0X2Nvbm5lY3RvcnNfcHRyOworICBfX3UzMiBjb3VudF9jb25uZWN0b3JzOworICBfX3UzMiBjcnRjX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjcnRjX2lkOwotIF9fdTMyIGZiX2lkOwotIF9fdTMyIHgsIHk7Ci0gX191MzIgZ2FtbWFfc2l6ZTsKKyAgX191MzIgZmJfaWQ7CisgIF9fdTMyIHgsIHk7CisgIF9fdTMyIGdhbW1hX3NpemU7CisgIF9fdTMyIG1vZGVfdmFsaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1vZGVfdmFsaWQ7Ci0gc3RydWN0IGRybV9tb2RlX21vZGVpbmZvIG1vZGU7CisgIHN0cnVjdCBkcm1fbW9kZV9tb2RlaW5mbyBtb2RlOwogfTsKLSNkZWZpbmUgRFJNX01PREVfUFJFU0VOVF9UT1BfRklFTEQgKDE8PDApCisjZGVmaW5lIERSTV9NT0RFX1BSRVNFTlRfVE9QX0ZJRUxEICgxIDw8IDApCisjZGVmaW5lIERSTV9NT0RFX1BSRVNFTlRfQk9UVE9NX0ZJRUxEICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fTU9ERV9QUkVTRU5UX0JPVFRPTV9GSUVMRCAoMTw8MSkKIHN0cnVjdCBkcm1fbW9kZV9zZXRfcGxhbmUgewotIF9fdTMyIHBsYW5lX2lkOwotIF9fdTMyIGNydGNfaWQ7CisgIF9fdTMyIHBsYW5lX2lkOworICBfX3UzMiBjcnRjX2lkOworICBfX3UzMiBmYl9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmJfaWQ7Ci0gX191MzIgZmxhZ3M7Ci0gX19zMzIgY3J0Y194LCBjcnRjX3k7Ci0gX191MzIgY3J0Y193LCBjcnRjX2g7CisgIF9fdTMyIGZsYWdzOworICBfX3MzMiBjcnRjX3gsIGNydGNfeTsKKyAgX191MzIgY3J0Y193LCBjcnRjX2g7CisgIF9fdTMyIHNyY194LCBzcmNfeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3JjX3gsIHNyY195OwotIF9fdTMyIHNyY19oLCBzcmNfdzsKKyAgX191MzIgc3JjX2gsIHNyY193OwogfTsKIHN0cnVjdCBkcm1fbW9kZV9nZXRfcGxhbmUgeworICBfX3UzMiBwbGFuZV9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGxhbmVfaWQ7Ci0gX191MzIgY3J0Y19pZDsKLSBfX3UzMiBmYl9pZDsKLSBfX3UzMiBwb3NzaWJsZV9jcnRjczsKKyAgX191MzIgY3J0Y19pZDsKKyAgX191MzIgZmJfaWQ7CisgIF9fdTMyIHBvc3NpYmxlX2NydGNzOworICBfX3UzMiBnYW1tYV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBnYW1tYV9zaXplOwotIF9fdTMyIGNvdW50X2Zvcm1hdF90eXBlczsKLSBfX3U2NCBmb3JtYXRfdHlwZV9wdHI7CisgIF9fdTMyIGNvdW50X2Zvcm1hdF90eXBlczsKKyAgX191NjQgZm9ybWF0X3R5cGVfcHRyOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX21vZGVfZ2V0X3BsYW5lX3JlcyB7Ci0gX191NjQgcGxhbmVfaWRfcHRyOwotIF9fdTMyIGNvdW50X3BsYW5lczsKLX07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBwbGFuZV9pZF9wdHI7CisgIF9fdTMyIGNvdW50X3BsYW5lczsKK307CiAjZGVmaW5lIERSTV9NT0RFX0VOQ09ERVJfTk9ORSAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fTU9ERV9FTkNPREVSX0RBQyAxCiAjZGVmaW5lIERSTV9NT0RFX0VOQ09ERVJfVE1EUyAyCiAjZGVmaW5lIERSTV9NT0RFX0VOQ09ERVJfTFZEUyAzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fTU9ERV9FTkNPREVSX1RWREFDIDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9NT0RFX0VOQ09ERVJfVklSVFVBTCA1CiAjZGVmaW5lIERSTV9NT0RFX0VOQ09ERVJfRFNJIDYKKyNkZWZpbmUgRFJNX01PREVfRU5DT0RFUl9EUE1TVCA3CiBzdHJ1Y3QgZHJtX21vZGVfZ2V0X2VuY29kZXIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlbmNvZGVyX2lkOwotIF9fdTMyIGVuY29kZXJfdHlwZTsKLSBfX3UzMiBjcnRjX2lkOwotIF9fdTMyIHBvc3NpYmxlX2NydGNzOworICBfX3UzMiBlbmNvZGVyX2lkOworICBfX3UzMiBlbmNvZGVyX3R5cGU7CisgIF9fdTMyIGNydGNfaWQ7CisgIF9fdTMyIHBvc3NpYmxlX2NydGNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwb3NzaWJsZV9jbG9uZXM7CisgIF9fdTMyIHBvc3NpYmxlX2Nsb25lczsKIH07CiAjZGVmaW5lIERSTV9NT0RFX1NVQkNPTk5FQ1RPUl9BdXRvbWF0aWMgMAogI2RlZmluZSBEUk1fTU9ERV9TVUJDT05ORUNUT1JfVW5rbm93biAwCkBAIC0yMDEsMTg5ICsyMDYsMTk1IEBACiAjZGVmaW5lIERSTV9NT0RFX0NPTk5FQ1RPUl9EU0kgMTYKIHN0cnVjdCBkcm1fbW9kZV9nZXRfY29ubmVjdG9yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZW5jb2RlcnNfcHRyOwotIF9fdTY0IG1vZGVzX3B0cjsKLSBfX3U2NCBwcm9wc19wdHI7Ci0gX191NjQgcHJvcF92YWx1ZXNfcHRyOworICBfX3U2NCBlbmNvZGVyc19wdHI7CisgIF9fdTY0IG1vZGVzX3B0cjsKKyAgX191NjQgcHJvcHNfcHRyOworICBfX3U2NCBwcm9wX3ZhbHVlc19wdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNvdW50X21vZGVzOwotIF9fdTMyIGNvdW50X3Byb3BzOwotIF9fdTMyIGNvdW50X2VuY29kZXJzOwotIF9fdTMyIGVuY29kZXJfaWQ7CisgIF9fdTMyIGNvdW50X21vZGVzOworICBfX3UzMiBjb3VudF9wcm9wczsKKyAgX191MzIgY291bnRfZW5jb2RlcnM7CisgIF9fdTMyIGVuY29kZXJfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNvbm5lY3Rvcl9pZDsKLSBfX3UzMiBjb25uZWN0b3JfdHlwZTsKLSBfX3UzMiBjb25uZWN0b3JfdHlwZV9pZDsKLSBfX3UzMiBjb25uZWN0aW9uOworICBfX3UzMiBjb25uZWN0b3JfaWQ7CisgIF9fdTMyIGNvbm5lY3Rvcl90eXBlOworICBfX3UzMiBjb25uZWN0b3JfdHlwZV9pZDsKKyAgX191MzIgY29ubmVjdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbW1fd2lkdGgsIG1tX2hlaWdodDsKLSBfX3UzMiBzdWJwaXhlbDsKLSBfX3UzMiBwYWQ7CisgIF9fdTMyIG1tX3dpZHRoLCBtbV9oZWlnaHQ7CisgIF9fdTMyIHN1YnBpeGVsOworICBfX3UzMiBwYWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX01PREVfUFJPUF9QRU5ESU5HICgxPDwwKQotI2RlZmluZSBEUk1fTU9ERV9QUk9QX1JBTkdFICgxPDwxKQotI2RlZmluZSBEUk1fTU9ERV9QUk9QX0lNTVVUQUJMRSAoMTw8MikKLSNkZWZpbmUgRFJNX01PREVfUFJPUF9FTlVNICgxPDwzKQorI2RlZmluZSBEUk1fTU9ERV9QUk9QX1BFTkRJTkcgKDEgPDwgMCkKKyNkZWZpbmUgRFJNX01PREVfUFJPUF9SQU5HRSAoMSA8PCAxKQorI2RlZmluZSBEUk1fTU9ERV9QUk9QX0lNTVVUQUJMRSAoMSA8PCAyKQorI2RlZmluZSBEUk1fTU9ERV9QUk9QX0VOVU0gKDEgPDwgMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9NT0RFX1BST1BfQkxPQiAoMTw8NCkKLSNkZWZpbmUgRFJNX01PREVfUFJPUF9CSVRNQVNLICgxPDw1KQorI2RlZmluZSBEUk1fTU9ERV9QUk9QX0JMT0IgKDEgPDwgNCkKKyNkZWZpbmUgRFJNX01PREVfUFJPUF9CSVRNQVNLICgxIDw8IDUpCisjZGVmaW5lIERSTV9NT0RFX1BST1BfTEVHQUNZX1RZUEUgKERSTV9NT0RFX1BST1BfUkFOR0UgfCBEUk1fTU9ERV9QUk9QX0VOVU0gfCBEUk1fTU9ERV9QUk9QX0JMT0IgfCBEUk1fTU9ERV9QUk9QX0JJVE1BU0spCisjZGVmaW5lIERSTV9NT0RFX1BST1BfRVhURU5ERURfVFlQRSAweDAwMDBmZmMwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fTU9ERV9QUk9QX1RZUEUobikgKChuKSA8PCA2KQorI2RlZmluZSBEUk1fTU9ERV9QUk9QX09CSkVDVCBEUk1fTU9ERV9QUk9QX1RZUEUoMSkKKyNkZWZpbmUgRFJNX01PREVfUFJPUF9TSUdORURfUkFOR0UgRFJNX01PREVfUFJPUF9UWVBFKDIpCiBzdHJ1Y3QgZHJtX21vZGVfcHJvcGVydHlfZW51bSB7Ci0gX191NjQgdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVtEUk1fUFJPUF9OQU1FX0xFTl07CisgIF9fdTY0IHZhbHVlOworICBjaGFyIG5hbWVbRFJNX1BST1BfTkFNRV9MRU5dOwogfTsKIHN0cnVjdCBkcm1fbW9kZV9nZXRfcHJvcGVydHkgewotIF9fdTY0IHZhbHVlc19wdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGVudW1fYmxvYl9wdHI7Ci0gX191MzIgcHJvcF9pZDsKLSBfX3UzMiBmbGFnczsKLSBjaGFyIG5hbWVbRFJNX1BST1BfTkFNRV9MRU5dOworICBfX3U2NCB2YWx1ZXNfcHRyOworICBfX3U2NCBlbnVtX2Jsb2JfcHRyOworICBfX3UzMiBwcm9wX2lkOworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY291bnRfdmFsdWVzOwotIF9fdTMyIGNvdW50X2VudW1fYmxvYnM7CisgIGNoYXIgbmFtZVtEUk1fUFJPUF9OQU1FX0xFTl07CisgIF9fdTMyIGNvdW50X3ZhbHVlczsKKyAgX191MzIgY291bnRfZW51bV9ibG9iczsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9tb2RlX2Nvbm5lY3Rvcl9zZXRfcHJvcGVydHkgeworICBfX3U2NCB2YWx1ZTsKKyAgX191MzIgcHJvcF9pZDsKKyAgX191MzIgY29ubmVjdG9yX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB2YWx1ZTsKLSBfX3UzMiBwcm9wX2lkOwotIF9fdTMyIGNvbm5lY3Rvcl9pZDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9tb2RlX29ial9nZXRfcHJvcGVydGllcyB7Ci0gX191NjQgcHJvcHNfcHRyOwotIF9fdTY0IHByb3BfdmFsdWVzX3B0cjsKLSBfX3UzMiBjb3VudF9wcm9wczsKKyAgX191NjQgcHJvcHNfcHRyOworICBfX3U2NCBwcm9wX3ZhbHVlc19wdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG9ial9pZDsKLSBfX3UzMiBvYmpfdHlwZTsKKyAgX191MzIgY291bnRfcHJvcHM7CisgIF9fdTMyIG9ial9pZDsKKyAgX191MzIgb2JqX3R5cGU7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbW9kZV9vYmpfc2V0X3Byb3BlcnR5IHsKKyAgX191NjQgdmFsdWU7CisgIF9fdTMyIHByb3BfaWQ7CisgIF9fdTMyIG9ial9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdmFsdWU7Ci0gX191MzIgcHJvcF9pZDsKLSBfX3UzMiBvYmpfaWQ7Ci0gX191MzIgb2JqX3R5cGU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBvYmpfdHlwZTsKIH07CiBzdHJ1Y3QgZHJtX21vZGVfZ2V0X2Jsb2IgewotIF9fdTMyIGJsb2JfaWQ7Ci0gX191MzIgbGVuZ3RoOworICBfX3UzMiBibG9iX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkYXRhOworICBfX3UzMiBsZW5ndGg7CisgIF9fdTY0IGRhdGE7CiB9Owogc3RydWN0IGRybV9tb2RlX2ZiX2NtZCB7Ci0gX191MzIgZmJfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHdpZHRoLCBoZWlnaHQ7Ci0gX191MzIgcGl0Y2g7Ci0gX191MzIgYnBwOwotIF9fdTMyIGRlcHRoOworICBfX3UzMiBmYl9pZDsKKyAgX191MzIgd2lkdGgsIGhlaWdodDsKKyAgX191MzIgcGl0Y2g7CisgIF9fdTMyIGJwcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaGFuZGxlOworICBfX3UzMiBkZXB0aDsKKyAgX191MzIgaGFuZGxlOwogfTsKLSNkZWZpbmUgRFJNX01PREVfRkJfSU5URVJMQUNFRCAoMTw8MCkKKyNkZWZpbmUgRFJNX01PREVfRkJfSU5URVJMQUNFRCAoMSA8PCAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbW9kZV9mYl9jbWQyIHsKKyAgX191MzIgZmJfaWQ7CisgIF9fdTMyIHdpZHRoLCBoZWlnaHQ7CisgIF9fdTMyIHBpeGVsX2Zvcm1hdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmJfaWQ7Ci0gX191MzIgd2lkdGgsIGhlaWdodDsKLSBfX3UzMiBwaXhlbF9mb3JtYXQ7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBoYW5kbGVzWzRdOworICBfX3UzMiBwaXRjaGVzWzRdOworICBfX3UzMiBvZmZzZXRzWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoYW5kbGVzWzRdOwotIF9fdTMyIHBpdGNoZXNbNF07Ci0gX191MzIgb2Zmc2V0c1s0XTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fTU9ERV9GQl9ESVJUWV9BTk5PVEFURV9DT1BZIDB4MDEKICNkZWZpbmUgRFJNX01PREVfRkJfRElSVFlfQU5OT1RBVEVfRklMTCAweDAyCiAjZGVmaW5lIERSTV9NT0RFX0ZCX0RJUlRZX0ZMQUdTIDB4MDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9NT0RFX0ZCX0RJUlRZX01BWF9DTElQUyAyNTYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX21vZGVfZmJfZGlydHlfY21kIHsKLSBfX3UzMiBmYl9pZDsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBjb2xvcjsKKyAgX191MzIgZmJfaWQ7CisgIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBudW1fY2xpcHM7Ci0gX191NjQgY2xpcHNfcHRyOworICBfX3UzMiBjb2xvcjsKKyAgX191MzIgbnVtX2NsaXBzOworICBfX3U2NCBjbGlwc19wdHI7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbW9kZV9tb2RlX2NtZCB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNvbm5lY3Rvcl9pZDsKLSBzdHJ1Y3QgZHJtX21vZGVfbW9kZWluZm8gbW9kZTsKKyAgX191MzIgY29ubmVjdG9yX2lkOworICBzdHJ1Y3QgZHJtX21vZGVfbW9kZWluZm8gbW9kZTsKIH07Ci0jZGVmaW5lIERSTV9NT0RFX0NVUlNPUl9CTyAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fTU9ERV9DVVJTT1JfQk8gMHgwMQogI2RlZmluZSBEUk1fTU9ERV9DVVJTT1JfTU9WRSAweDAyCiAjZGVmaW5lIERSTV9NT0RFX0NVUlNPUl9GTEFHUyAweDAzCiBzdHJ1Y3QgZHJtX21vZGVfY3Vyc29yIHsKLSBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY3J0Y19pZDsKLSBfX3MzMiB4OwotIF9fczMyIHk7Ci0gX191MzIgd2lkdGg7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBjcnRjX2lkOworICBfX3MzMiB4OworICBfX3MzMiB5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoZWlnaHQ7Ci0gX191MzIgaGFuZGxlOworICBfX3UzMiB3aWR0aDsKKyAgX191MzIgaGVpZ2h0OworICBfX3UzMiBoYW5kbGU7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbW9kZV9jdXJzb3IyIHsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIGNydGNfaWQ7CisgIF9fczMyIHg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIGNydGNfaWQ7Ci0gX19zMzIgeDsKLSBfX3MzMiB5OworICBfX3MzMiB5OworICBfX3UzMiB3aWR0aDsKKyAgX191MzIgaGVpZ2h0OworICBfX3UzMiBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHdpZHRoOwotIF9fdTMyIGhlaWdodDsKLSBfX3UzMiBoYW5kbGU7Ci0gX19zMzIgaG90X3g7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIGhvdF95OworICBfX3MzMiBob3RfeDsKKyAgX19zMzIgaG90X3k7CiB9Owogc3RydWN0IGRybV9tb2RlX2NydGNfbHV0IHsKLSBfX3UzMiBjcnRjX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBnYW1tYV9zaXplOwotIF9fdTY0IHJlZDsKLSBfX3U2NCBncmVlbjsKLSBfX3U2NCBibHVlOworICBfX3UzMiBjcnRjX2lkOworICBfX3UzMiBnYW1tYV9zaXplOworICBfX3U2NCByZWQ7CisgIF9fdTY0IGdyZWVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgYmx1ZTsKIH07CiAjZGVmaW5lIERSTV9NT0RFX1BBR0VfRkxJUF9FVkVOVCAweDAxCiAjZGVmaW5lIERSTV9NT0RFX1BBR0VfRkxJUF9BU1lOQyAweDAyCi0jZGVmaW5lIERSTV9NT0RFX1BBR0VfRkxJUF9GTEFHUyAoRFJNX01PREVfUEFHRV9GTElQX0VWRU5UfERSTV9NT0RFX1BBR0VfRkxJUF9BU1lOQykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9NT0RFX1BBR0VfRkxJUF9GTEFHUyAoRFJNX01PREVfUEFHRV9GTElQX0VWRU5UIHwgRFJNX01PREVfUEFHRV9GTElQX0FTWU5DKQogc3RydWN0IGRybV9tb2RlX2NydGNfcGFnZV9mbGlwIHsKLSBfX3UzMiBjcnRjX2lkOwotIF9fdTMyIGZiX2lkOwotIF9fdTMyIGZsYWdzOworICBfX3UzMiBjcnRjX2lkOworICBfX3UzMiBmYl9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWQ7Ci0gX191NjQgdXNlcl9kYXRhOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTY0IHVzZXJfZGF0YTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9tb2RlX2NyZWF0ZV9kdW1iIHsKKyAgdWludDMyX3QgaGVpZ2h0OworICB1aW50MzJfdCB3aWR0aDsKKyAgdWludDMyX3QgYnBwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBoZWlnaHQ7Ci0gdWludDMyX3Qgd2lkdGg7Ci0gdWludDMyX3QgYnBwOwotIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBwaXRjaDsKKyAgdWludDY0X3Qgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IHBpdGNoOwotIHVpbnQ2NF90IHNpemU7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbW9kZV9tYXBfZHVtYiB7Ci0gX191MzIgaGFuZGxlOwotIF9fdTMyIHBhZDsKLSBfX3U2NCBvZmZzZXQ7CisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgb2Zmc2V0OwogfTsKIHN0cnVjdCBkcm1fbW9kZV9kZXN0cm95X2R1bWIgewotIHVpbnQzMl90IGhhbmRsZTsKLX07CisgIHVpbnQzMl90IGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9kcm1fc2FyZWEuaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2RybV9zYXJlYS5oCmluZGV4IGVjZjQ0NDAuLmNhMTljMmIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvZHJtL2RybV9zYXJlYS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2RybV9zYXJlYS5oCkBAIC0zNCwyNiArMzQsMjYgQEAKICNkZWZpbmUgU0FSRUFfTUFYX0RSQVdBQkxFUyAyNTYKICNkZWZpbmUgU0FSRUFfRFJBV0FCTEVfQ0xBSU1FRF9FTlRSWSAweDgwMDAwMDAwCiBzdHJ1Y3QgZHJtX3NhcmVhX2RyYXdhYmxlIHsKLSB1bnNpZ25lZCBpbnQgc3RhbXA7CisgIHVuc2lnbmVkIGludCBzdGFtcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGZsYWdzOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CiB9Owogc3RydWN0IGRybV9zYXJlYV9mcmFtZSB7Ci0gdW5zaWduZWQgaW50IHg7CisgIHVuc2lnbmVkIGludCB4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgeTsKLSB1bnNpZ25lZCBpbnQgd2lkdGg7Ci0gdW5zaWduZWQgaW50IGhlaWdodDsKLSB1bnNpZ25lZCBpbnQgZnVsbHNjcmVlbjsKKyAgdW5zaWduZWQgaW50IHk7CisgIHVuc2lnbmVkIGludCB3aWR0aDsKKyAgdW5zaWduZWQgaW50IGhlaWdodDsKKyAgdW5zaWduZWQgaW50IGZ1bGxzY3JlZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fc2FyZWEgewotIHN0cnVjdCBkcm1faHdfbG9jayBsb2NrOwotIHN0cnVjdCBkcm1faHdfbG9jayBkcmF3YWJsZV9sb2NrOworICBzdHJ1Y3QgZHJtX2h3X2xvY2sgbG9jazsKKyAgc3RydWN0IGRybV9od19sb2NrIGRyYXdhYmxlX2xvY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkcm1fc2FyZWFfZHJhd2FibGUgZHJhd2FibGVUYWJsZVtTQVJFQV9NQVhfRFJBV0FCTEVTXTsKLSBzdHJ1Y3QgZHJtX3NhcmVhX2ZyYW1lIGZyYW1lOwotIGRybV9jb250ZXh0X3QgZHVtbXlfY29udGV4dDsKKyAgc3RydWN0IGRybV9zYXJlYV9kcmF3YWJsZSBkcmF3YWJsZVRhYmxlW1NBUkVBX01BWF9EUkFXQUJMRVNdOworICBzdHJ1Y3QgZHJtX3NhcmVhX2ZyYW1lIGZyYW1lOworICBkcm1fY29udGV4dF90IGR1bW15X2NvbnRleHQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9zYXJlYV9kcmF3YWJsZSBkcm1fc2FyZWFfZHJhd2FibGVfdDsKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL2V4eW5vc19kcm0uaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2V4eW5vc19kcm0uaAppbmRleCAzOWIyMjhlLi40NzI5NGI3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9leHlub3NfZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vZXh5bm9zX2RybS5oCkBAIC0yMSwyNjEgKzIxLDI0MCBAQAogI2luY2x1ZGUgPGRybS9kcm0uaD4KIHN0cnVjdCBkcm1fZXh5bm9zX2dlbV9jcmVhdGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBzaXplOwotIHVuc2lnbmVkIGludCBmbGFnczsKLSB1bnNpZ25lZCBpbnQgaGFuZGxlOworICB1aW50NjRfdCBzaXplOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIHVuc2lnbmVkIGludCBoYW5kbGU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBkcm1fZXh5bm9zX2dlbV9tYXBfb2ZmIHsKLSB1bnNpZ25lZCBpbnQgaGFuZGxlOwotIHVuc2lnbmVkIGludCBwYWQ7Ci0gdWludDY0X3Qgb2Zmc2V0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX07Ci1zdHJ1Y3QgZHJtX2V4eW5vc19nZW1fbW1hcCB7Ci0gdW5zaWduZWQgaW50IGhhbmRsZTsKLSB1bnNpZ25lZCBpbnQgcGFkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBzaXplOwotIHVpbnQ2NF90IG1hcHBlZDsKLX07CiBzdHJ1Y3QgZHJtX2V4eW5vc19nZW1faW5mbyB7CisgIHVuc2lnbmVkIGludCBoYW5kbGU7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdWludDY0X3Qgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGhhbmRsZTsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gdWludDY0X3Qgc2l6ZTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9leHlub3NfdmlkaV9jb25uZWN0aW9uIHsKLSB1bnNpZ25lZCBpbnQgY29ubmVjdGlvbjsKLSB1bnNpZ25lZCBpbnQgZXh0ZW5zaW9uczsKLSB1aW50NjRfdCBlZGlkOworICB1bnNpZ25lZCBpbnQgY29ubmVjdGlvbjsKKyAgdW5zaWduZWQgaW50IGV4dGVuc2lvbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1aW50NjRfdCBlZGlkOwogfTsKIGVudW0gZV9kcm1fZXh5bm9zX2dlbV9tZW1fdHlwZSB7Ci0gRVhZTk9TX0JPX0NPTlRJRyA9IDAgPDwgMCwKLSBFWFlOT1NfQk9fTk9OQ09OVElHID0gMSA8PCAwLAorICBFWFlOT1NfQk9fQ09OVElHID0gMCA8PCAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFWFlOT1NfQk9fTk9OQ0FDSEFCTEUgPSAwIDw8IDEsCi0gRVhZTk9TX0JPX0NBQ0hBQkxFID0gMSA8PCAxLAotIEVYWU5PU19CT19XQyA9IDEgPDwgMiwKLSBFWFlOT1NfQk9fTUFTSyA9IEVYWU5PU19CT19OT05DT05USUcgfCBFWFlOT1NfQk9fQ0FDSEFCTEUgfAorICBFWFlOT1NfQk9fTk9OQ09OVElHID0gMSA8PCAwLAorICBFWFlOT1NfQk9fTk9OQ0FDSEFCTEUgPSAwIDw8IDEsCisgIEVYWU5PU19CT19DQUNIQUJMRSA9IDEgPDwgMSwKKyAgRVhZTk9TX0JPX1dDID0gMSA8PCAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFWFlOT1NfQk9fV0MKKyAgRVhZTk9TX0JPX01BU0sgPSBFWFlOT1NfQk9fTk9OQ09OVElHIHwgRVhZTk9TX0JPX0NBQ0hBQkxFIHwgRVhZTk9TX0JPX1dDCiB9Owogc3RydWN0IGRybV9leHlub3NfZzJkX2dldF92ZXIgewotIF9fdTMyIG1ham9yOworICBfX3UzMiBtYWpvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWlub3I7CisgIF9fdTMyIG1pbm9yOwogfTsKIHN0cnVjdCBkcm1fZXh5bm9zX2cyZF9jbWQgewotIF9fdTMyIG9mZnNldDsKKyAgX191MzIgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkYXRhOworICBfX3UzMiBkYXRhOwogfTsKIGVudW0gZHJtX2V4eW5vc19nMmRfYnVmX3R5cGUgewotIEcyRF9CVUZfVVNFUlBUUiA9IDEgPDwgMzEsCisgIEcyRF9CVUZfVVNFUlBUUiA9IDEgPDwgMzEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZHJtX2V4eW5vc19nMmRfZXZlbnRfdHlwZSB7Ci0gRzJEX0VWRU5UX05PVCwKLSBHMkRfRVZFTlRfTk9OU1RPUCwKKyAgRzJEX0VWRU5UX05PVCwKKyAgRzJEX0VWRU5UX05PTlNUT1AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEcyRF9FVkVOVF9TVE9QLAorICBHMkRfRVZFTlRfU1RPUCwKIH07CiBzdHJ1Y3QgZHJtX2V4eW5vc19nMmRfdXNlcnB0ciB7Ci0gdW5zaWduZWQgbG9uZyB1c2VycHRyOworICB1bnNpZ25lZCBsb25nIHVzZXJwdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBzaXplOwogfTsKIHN0cnVjdCBkcm1fZXh5bm9zX2cyZF9zZXRfY21kbGlzdCB7Ci0gX191NjQgY21kOworICBfX3U2NCBjbWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGNtZF9idWY7Ci0gX191MzIgY21kX25yOwotIF9fdTMyIGNtZF9idWZfbnI7Ci0gX191NjQgZXZlbnRfdHlwZTsKKyAgX191NjQgY21kX2J1ZjsKKyAgX191MzIgY21kX25yOworICBfX3UzMiBjbWRfYnVmX25yOworICBfX3U2NCBldmVudF90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1c2VyX2RhdGE7CisgIF9fdTY0IHVzZXJfZGF0YTsKIH07CiBzdHJ1Y3QgZHJtX2V4eW5vc19nMmRfZXhlYyB7Ci0gX191NjQgYXN5bmM7CisgIF9fdTY0IGFzeW5jOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGRybV9leHlub3Nfb3BzX2lkIHsKLSBFWFlOT1NfRFJNX09QU19TUkMsCi0gRVhZTk9TX0RSTV9PUFNfRFNULAorICBFWFlOT1NfRFJNX09QU19TUkMsCisgIEVYWU5PU19EUk1fT1BTX0RTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRVhZTk9TX0RSTV9PUFNfTUFYLAorICBFWFlOT1NfRFJNX09QU19NQVgsCiB9Owogc3RydWN0IGRybV9leHlub3Nfc3ogewotIF9fdTMyIGhzaXplOworICBfX3UzMiBoc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdnNpemU7CisgIF9fdTMyIHZzaXplOwogfTsKIHN0cnVjdCBkcm1fZXh5bm9zX3BvcyB7Ci0gX191MzIgeDsKKyAgX191MzIgeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgeTsKLSBfX3UzMiB3OwotIF9fdTMyIGg7CisgIF9fdTMyIHk7CisgIF9fdTMyIHc7CisgIF9fdTMyIGg7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gZHJtX2V4eW5vc19mbGlwIHsKLSBFWFlOT1NfRFJNX0ZMSVBfTk9ORSA9ICgwIDw8IDApLAotIEVYWU5PU19EUk1fRkxJUF9WRVJUSUNBTCA9ICgxIDw8IDApLAotIEVYWU5PU19EUk1fRkxJUF9IT1JJWk9OVEFMID0gKDEgPDwgMSksCisgIEVYWU5PU19EUk1fRkxJUF9OT05FID0gKDAgPDwgMCksCisgIEVYWU5PU19EUk1fRkxJUF9WRVJUSUNBTCA9ICgxIDw8IDApLAorICBFWFlOT1NfRFJNX0ZMSVBfSE9SSVpPTlRBTCA9ICgxIDw8IDEpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFWFlOT1NfRFJNX0ZMSVBfQk9USCA9IEVYWU5PU19EUk1fRkxJUF9WRVJUSUNBTCB8Ci0gRVhZTk9TX0RSTV9GTElQX0hPUklaT05UQUwsCisgIEVYWU5PU19EUk1fRkxJUF9CT1RIID0gRVhZTk9TX0RSTV9GTElQX1ZFUlRJQ0FMIHwgRVhZTk9TX0RSTV9GTElQX0hPUklaT05UQUwsCiB9OwogZW51bSBkcm1fZXh5bm9zX2RlZ3JlZSB7CisgIEVYWU5PU19EUk1fREVHUkVFXzAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVYWU5PU19EUk1fREVHUkVFXzAsCi0gRVhZTk9TX0RSTV9ERUdSRUVfOTAsCi0gRVhZTk9TX0RSTV9ERUdSRUVfMTgwLAotIEVYWU5PU19EUk1fREVHUkVFXzI3MCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEVYWU5PU19EUk1fREVHUkVFXzkwLAorICBFWFlOT1NfRFJNX0RFR1JFRV8xODAsCisgIEVYWU5PU19EUk1fREVHUkVFXzI3MCwKIH07Ci1lbnVtIGRybV9leHlub3NfcGxhbmVyIHsKLSBFWFlOT1NfRFJNX1BMQU5BUl9ZLAotIEVYWU5PU19EUk1fUExBTkFSX0NCLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFWFlOT1NfRFJNX1BMQU5BUl9DUiwKLSBFWFlOT1NfRFJNX1BMQU5BUl9NQVgsCitlbnVtIGRybV9leHlub3NfcGxhbmVyIHsKKyAgRVhZTk9TX0RSTV9QTEFOQVJfWSwKKyAgRVhZTk9TX0RSTV9QTEFOQVJfQ0IsCisgIEVYWU5PU19EUk1fUExBTkFSX0NSLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgRVhZTk9TX0RSTV9QTEFOQVJfTUFYLAogfTsKIHN0cnVjdCBkcm1fZXh5bm9zX2lwcF9wcm9wX2xpc3QgeworICBfX3UzMiB2ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB2ZXJzaW9uOwotIF9fdTMyIGlwcF9pZDsKLSBfX3UzMiBjb3VudDsKLSBfX3UzMiB3cml0ZWJhY2s7CisgIF9fdTMyIGlwcF9pZDsKKyAgX191MzIgY291bnQ7CisgIF9fdTMyIHdyaXRlYmFjazsKKyAgX191MzIgZmxpcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxpcDsKLSBfX3UzMiBkZWdyZWU7Ci0gX191MzIgY3NjOwotIF9fdTMyIGNyb3A7CisgIF9fdTMyIGRlZ3JlZTsKKyAgX191MzIgY3NjOworICBfX3UzMiBjcm9wOworICBfX3UzMiBzY2FsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2NhbGU7Ci0gX191MzIgcmVmcmVzaF9taW47Ci0gX191MzIgcmVmcmVzaF9tYXg7Ci0gX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTMyIHJlZnJlc2hfbWluOworICBfX3UzMiByZWZyZXNoX21heDsKKyAgX191MzIgcmVzZXJ2ZWQ7CisgIHN0cnVjdCBkcm1fZXh5bm9zX3N6IGNyb3BfbWluOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZHJtX2V4eW5vc19zeiBjcm9wX21pbjsKLSBzdHJ1Y3QgZHJtX2V4eW5vc19zeiBjcm9wX21heDsKLSBzdHJ1Y3QgZHJtX2V4eW5vc19zeiBzY2FsZV9taW47Ci0gc3RydWN0IGRybV9leHlub3Nfc3ogc2NhbGVfbWF4OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGRybV9leHlub3Nfc3ogY3JvcF9tYXg7CisgIHN0cnVjdCBkcm1fZXh5bm9zX3N6IHNjYWxlX21pbjsKKyAgc3RydWN0IGRybV9leHlub3Nfc3ogc2NhbGVfbWF4OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfY29uZmlnIHsKLSBlbnVtIGRybV9leHlub3Nfb3BzX2lkIG9wc19pZDsKLSBlbnVtIGRybV9leHlub3NfZmxpcCBmbGlwOworICBlbnVtIGRybV9leHlub3Nfb3BzX2lkIG9wc19pZDsKKyAgZW51bSBkcm1fZXh5bm9zX2ZsaXAgZmxpcDsKKyAgZW51bSBkcm1fZXh5bm9zX2RlZ3JlZSBkZWdyZWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGVudW0gZHJtX2V4eW5vc19kZWdyZWUgZGVncmVlOwotIF9fdTMyIGZtdDsKLSBzdHJ1Y3QgZHJtX2V4eW5vc19zeiBzejsKLSBzdHJ1Y3QgZHJtX2V4eW5vc19wb3MgcG9zOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZm10OworICBzdHJ1Y3QgZHJtX2V4eW5vc19zeiBzejsKKyAgc3RydWN0IGRybV9leHlub3NfcG9zIHBvczsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBkcm1fZXh5bm9zX2lwcF9jbWQgewotIElQUF9DTURfTk9ORSwKLSBJUFBfQ01EX00yTSwKKyAgSVBQX0NNRF9OT05FLAorICBJUFBfQ01EX00yTSwKKyAgSVBQX0NNRF9XQiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBQX0NNRF9XQiwKLSBJUFBfQ01EX09VVFBVVCwKLSBJUFBfQ01EX01BWCwKKyAgSVBQX0NNRF9PVVRQVVQsCisgIElQUF9DTURfTUFYLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfcHJvcGVydHkgewotIHN0cnVjdCBkcm1fZXh5bm9zX2lwcF9jb25maWcgY29uZmlnW0VYWU5PU19EUk1fT1BTX01BWF07Ci0gZW51bSBkcm1fZXh5bm9zX2lwcF9jbWQgY21kOwotIF9fdTMyIGlwcF9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcHJvcF9pZDsKLSBfX3UzMiByZWZyZXNoX3JhdGU7CisgIHN0cnVjdCBkcm1fZXh5bm9zX2lwcF9jb25maWcgY29uZmlnW0VYWU5PU19EUk1fT1BTX01BWF07CisgIGVudW0gZHJtX2V4eW5vc19pcHBfY21kIGNtZDsKKyAgX191MzIgaXBwX2lkOworICBfX3UzMiBwcm9wX2lkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcmVmcmVzaF9yYXRlOwogfTsKIGVudW0gZHJtX2V4eW5vc19pcHBfYnVmX3R5cGUgeworICBJUFBfQlVGX0VOUVVFVUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQUF9CVUZfRU5RVUVVRSwKLSBJUFBfQlVGX0RFUVVFVUUsCisgIElQUF9CVUZfREVRVUVVRSwKIH07CiBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfcXVldWVfYnVmIHsKKyAgZW51bSBkcm1fZXh5bm9zX29wc19pZCBvcHNfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGVudW0gZHJtX2V4eW5vc19vcHNfaWQgb3BzX2lkOwotIGVudW0gZHJtX2V4eW5vc19pcHBfYnVmX3R5cGUgYnVmX3R5cGU7Ci0gX191MzIgcHJvcF9pZDsKLSBfX3UzMiBidWZfaWQ7CisgIGVudW0gZHJtX2V4eW5vc19pcHBfYnVmX3R5cGUgYnVmX3R5cGU7CisgIF9fdTMyIHByb3BfaWQ7CisgIF9fdTMyIGJ1Zl9pZDsKKyAgX191MzIgaGFuZGxlW0VYWU5PU19EUk1fUExBTkFSX01BWF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhbmRsZVtFWFlOT1NfRFJNX1BMQU5BUl9NQVhdOwotIF9fdTMyIHJlc2VydmVkOwotIF9fdTY0IHVzZXJfZGF0YTsKKyAgX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTY0IHVzZXJfZGF0YTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBkcm1fZXh5bm9zX2lwcF9jdHJsIHsKLSBJUFBfQ1RSTF9QTEFZLAotIElQUF9DVFJMX1NUT1AsCi0gSVBQX0NUUkxfUEFVU0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQUF9DVFJMX1JFU1VNRSwKLSBJUFBfQ1RSTF9NQVgsCisgIElQUF9DVFJMX1BMQVksCisgIElQUF9DVFJMX1NUT1AsCisgIElQUF9DVFJMX1BBVVNFLAorICBJUFBfQ1RSTF9SRVNVTUUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJUFBfQ1RSTF9NQVgsCiB9Owogc3RydWN0IGRybV9leHlub3NfaXBwX2NtZF9jdHJsIHsKKyAgX191MzIgcHJvcF9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcHJvcF9pZDsKLSBlbnVtIGRybV9leHlub3NfaXBwX2N0cmwgY3RybDsKKyAgZW51bSBkcm1fZXh5bm9zX2lwcF9jdHJsIGN0cmw7CiB9OwogI2RlZmluZSBEUk1fRVhZTk9TX0dFTV9DUkVBVEUgMHgwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0VYWU5PU19HRU1fTUFQX09GRlNFVCAweDAxCi0jZGVmaW5lIERSTV9FWFlOT1NfR0VNX01NQVAgMHgwMgogI2RlZmluZSBEUk1fRVhZTk9TX0dFTV9HRVQgMHgwNAotI2RlZmluZSBEUk1fRVhZTk9TX1ZJRElfQ09OTkVDVElPTiAweDA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fRVhZTk9TX1ZJRElfQ09OTkVDVElPTiAweDA3CiAjZGVmaW5lIERSTV9FWFlOT1NfRzJEX0dFVF9WRVIgMHgyMAogI2RlZmluZSBEUk1fRVhZTk9TX0cyRF9TRVRfQ01ETElTVCAweDIxCiAjZGVmaW5lIERSTV9FWFlOT1NfRzJEX0VYRUMgMHgyMgotI2RlZmluZSBEUk1fRVhZTk9TX0lQUF9HRVRfUFJPUEVSVFkgMHgzMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0VYWU5PU19JUFBfR0VUX1BST1BFUlRZIDB4MzAKICNkZWZpbmUgRFJNX0VYWU5PU19JUFBfU0VUX1BST1BFUlRZIDB4MzEKICNkZWZpbmUgRFJNX0VYWU5PU19JUFBfUVVFVUVfQlVGIDB4MzIKICNkZWZpbmUgRFJNX0VYWU5PU19JUFBfQ01EX0NUUkwgMHgzMwotI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0dFTV9DUkVBVEUgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArICAgRFJNX0VYWU5PU19HRU1fQ1JFQVRFLCBzdHJ1Y3QgZHJtX2V4eW5vc19nZW1fY3JlYXRlKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX0VYWU5PU19HRU1fTUFQX09GRlNFVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgICBEUk1fRVhZTk9TX0dFTV9NQVBfT0ZGU0VULCBzdHJ1Y3QgZHJtX2V4eW5vc19nZW1fbWFwX29mZikKLSNkZWZpbmUgRFJNX0lPQ1RMX0VYWU5PU19HRU1fTU1BUCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgICBEUk1fRVhZTk9TX0dFTV9NTUFQLCBzdHJ1Y3QgZHJtX2V4eW5vc19nZW1fbW1hcCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0VYWU5PU19HRU1fR0VUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyAgIERSTV9FWFlOT1NfR0VNX0dFVCwgc3RydWN0IGRybV9leHlub3NfZ2VtX2luZm8pCi0jZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfVklESV9DT05ORUNUSU9OIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyAgIERSTV9FWFlOT1NfVklESV9DT05ORUNUSU9OLCBzdHJ1Y3QgZHJtX2V4eW5vc192aWRpX2Nvbm5lY3Rpb24pCisjZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfR0VNX0NSRUFURSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0VYWU5PU19HRU1fQ1JFQVRFLCBzdHJ1Y3QgZHJtX2V4eW5vc19nZW1fY3JlYXRlKQorI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0dFTV9HRVQgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9FWFlOT1NfR0VNX0dFVCwgc3RydWN0IGRybV9leHlub3NfZ2VtX2luZm8pCisjZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfVklESV9DT05ORUNUSU9OIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fRVhZTk9TX1ZJRElfQ09OTkVDVElPTiwgc3RydWN0IGRybV9leHlub3NfdmlkaV9jb25uZWN0aW9uKQorI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0cyRF9HRVRfVkVSIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fRVhZTk9TX0cyRF9HRVRfVkVSLCBzdHJ1Y3QgZHJtX2V4eW5vc19nMmRfZ2V0X3ZlcikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfRzJEX0dFVF9WRVIgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArICAgRFJNX0VYWU5PU19HMkRfR0VUX1ZFUiwgc3RydWN0IGRybV9leHlub3NfZzJkX2dldF92ZXIpCi0jZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfRzJEX1NFVF9DTURMSVNUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyAgIERSTV9FWFlOT1NfRzJEX1NFVF9DTURMSVNULCBzdHJ1Y3QgZHJtX2V4eW5vc19nMmRfc2V0X2NtZGxpc3QpCi0jZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfRzJEX0VYRUMgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArICAgRFJNX0VYWU5PU19HMkRfRVhFQywgc3RydWN0IGRybV9leHlub3NfZzJkX2V4ZWMpCi0jZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfSVBQX0dFVF9QUk9QRVJUWSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgICBEUk1fRVhZTk9TX0lQUF9HRVRfUFJPUEVSVFksIHN0cnVjdCBkcm1fZXh5bm9zX2lwcF9wcm9wX2xpc3QpCisjZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfRzJEX1NFVF9DTURMSVNUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fRVhZTk9TX0cyRF9TRVRfQ01ETElTVCwgc3RydWN0IGRybV9leHlub3NfZzJkX3NldF9jbWRsaXN0KQorI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0cyRF9FWEVDIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fRVhZTk9TX0cyRF9FWEVDLCBzdHJ1Y3QgZHJtX2V4eW5vc19nMmRfZXhlYykKKyNkZWZpbmUgRFJNX0lPQ1RMX0VYWU5PU19JUFBfR0VUX1BST1BFUlRZIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fRVhZTk9TX0lQUF9HRVRfUFJPUEVSVFksIHN0cnVjdCBkcm1fZXh5bm9zX2lwcF9wcm9wX2xpc3QpCisjZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfSVBQX1NFVF9QUk9QRVJUWSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0VYWU5PU19JUFBfU0VUX1BST1BFUlRZLCBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfcHJvcGVydHkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0lQUF9TRVRfUFJPUEVSVFkgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArICAgRFJNX0VYWU5PU19JUFBfU0VUX1BST1BFUlRZLCBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfcHJvcGVydHkpCi0jZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfSVBQX1FVRVVFX0JVRiBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgICBEUk1fRVhZTk9TX0lQUF9RVUVVRV9CVUYsIHN0cnVjdCBkcm1fZXh5bm9zX2lwcF9xdWV1ZV9idWYpCi0jZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfSVBQX0NNRF9DVFJMIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyAgIERSTV9FWFlOT1NfSVBQX0NNRF9DVFJMLCBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfY21kX2N0cmwpCisjZGVmaW5lIERSTV9JT0NUTF9FWFlOT1NfSVBQX1FVRVVFX0JVRiBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0VYWU5PU19JUFBfUVVFVUVfQlVGLCBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfcXVldWVfYnVmKQorI2RlZmluZSBEUk1fSU9DVExfRVhZTk9TX0lQUF9DTURfQ1RSTCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0VYWU5PU19JUFBfQ01EX0NUUkwsIHN0cnVjdCBkcm1fZXh5bm9zX2lwcF9jbWRfY3RybCkKICNkZWZpbmUgRFJNX0VYWU5PU19HMkRfRVZFTlQgMHg4MDAwMDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0VYWU5PU19JUFBfRVZFTlQgMHg4MDAwMDAwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fZXh5bm9zX2cyZF9ldmVudCB7Ci0gc3RydWN0IGRybV9ldmVudCBiYXNlOwotIF9fdTY0IHVzZXJfZGF0YTsKKyAgc3RydWN0IGRybV9ldmVudCBiYXNlOworICBfX3U2NCB1c2VyX2RhdGE7CisgIF9fdTMyIHR2X3NlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHZfc2VjOwotIF9fdTMyIHR2X3VzZWM7Ci0gX191MzIgY21kbGlzdF9ubzsKLSBfX3UzMiByZXNlcnZlZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHR2X3VzZWM7CisgIF9fdTMyIGNtZGxpc3Rfbm87CisgIF9fdTMyIHJlc2VydmVkOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2V4eW5vc19pcHBfZXZlbnQgewotIHN0cnVjdCBkcm1fZXZlbnQgYmFzZTsKLSBfX3U2NCB1c2VyX2RhdGE7CisgIHN0cnVjdCBkcm1fZXZlbnQgYmFzZTsKKyAgX191NjQgdXNlcl9kYXRhOworICBfX3UzMiB0dl9zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR2X3NlYzsKLSBfX3UzMiB0dl91c2VjOwotIF9fdTMyIHByb3BfaWQ7Ci0gX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTMyIHR2X3VzZWM7CisgIF9fdTMyIHByb3BfaWQ7CisgIF9fdTMyIHJlc2VydmVkOworICBfX3UzMiBidWZfaWRbRVhZTk9TX0RSTV9PUFNfTUFYXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYnVmX2lkW0VYWU5PU19EUk1fT1BTX01BWF07CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9pODEwX2RybS5oIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vaTgxMF9kcm0uaAppbmRleCA5NDY4MzNkLi5lYmUzMzMyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9pODEwX2RybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL2k4MTBfZHJtLmgKQEAgLTIyLDcgKzIyLDcgQEAKICNkZWZpbmUgX0k4MTBfREVGSU5FU18KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk4MTBfRE1BX0JVRl9PUkRFUiAxMgotI2RlZmluZSBJODEwX0RNQV9CVUZfU1ogKDE8PEk4MTBfRE1BX0JVRl9PUkRFUikKKyNkZWZpbmUgSTgxMF9ETUFfQlVGX1NaICgxIDw8IEk4MTBfRE1BX0JVRl9PUkRFUikKICNkZWZpbmUgSTgxMF9ETUFfQlVGX05SIDI1NgogI2RlZmluZSBJODEwX05SX1NBUkVBX0NMSVBSRUNUUyA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtOTMsODEgKzkzLDgxIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJODEwX0RFUFRIIDB4NAogdHlwZWRlZiBlbnVtIF9kcm1faTgxMF9pbml0X2Z1bmMgewotIEk4MTBfSU5JVF9ETUEgPSAweDAxLAotIEk4MTBfQ0xFQU5VUF9ETUEgPSAweDAyLAorICBJODEwX0lOSVRfRE1BID0gMHgwMSwKKyAgSTgxMF9DTEVBTlVQX0RNQSA9IDB4MDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEk4MTBfSU5JVF9ETUFfMV80ID0gMHgwMworICBJODEwX0lOSVRfRE1BXzFfNCA9IDB4MDMKIH0gZHJtX2k4MTBfaW5pdF9mdW5jX3Q7CiB0eXBlZGVmIHN0cnVjdCBfZHJtX2k4MTBfaW5pdCB7Ci0gZHJtX2k4MTBfaW5pdF9mdW5jX3QgZnVuYzsKKyAgZHJtX2k4MTBfaW5pdF9mdW5jX3QgZnVuYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG1taW9fb2Zmc2V0OwotIHVuc2lnbmVkIGludCBidWZmZXJzX29mZnNldDsKLSBpbnQgc2FyZWFfcHJpdl9vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IHJpbmdfc3RhcnQ7CisgIHVuc2lnbmVkIGludCBtbWlvX29mZnNldDsKKyAgdW5zaWduZWQgaW50IGJ1ZmZlcnNfb2Zmc2V0OworICBpbnQgc2FyZWFfcHJpdl9vZmZzZXQ7CisgIHVuc2lnbmVkIGludCByaW5nX3N0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmluZ19lbmQ7Ci0gdW5zaWduZWQgaW50IHJpbmdfc2l6ZTsKLSB1bnNpZ25lZCBpbnQgZnJvbnRfb2Zmc2V0OwotIHVuc2lnbmVkIGludCBiYWNrX29mZnNldDsKKyAgdW5zaWduZWQgaW50IHJpbmdfZW5kOworICB1bnNpZ25lZCBpbnQgcmluZ19zaXplOworICB1bnNpZ25lZCBpbnQgZnJvbnRfb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgYmFja19vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBkZXB0aF9vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IG92ZXJsYXlfb2Zmc2V0OwotIHVuc2lnbmVkIGludCBvdmVybGF5X3BoeXNpY2FsOwotIHVuc2lnbmVkIGludCB3OworICB1bnNpZ25lZCBpbnQgZGVwdGhfb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgb3ZlcmxheV9vZmZzZXQ7CisgIHVuc2lnbmVkIGludCBvdmVybGF5X3BoeXNpY2FsOworICB1bnNpZ25lZCBpbnQgdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGg7Ci0gdW5zaWduZWQgaW50IHBpdGNoOwotIHVuc2lnbmVkIGludCBwaXRjaF9iaXRzOworICB1bnNpZ25lZCBpbnQgaDsKKyAgdW5zaWduZWQgaW50IHBpdGNoOworICB1bnNpZ25lZCBpbnQgcGl0Y2hfYml0czsKIH0gZHJtX2k4MTBfaW5pdF90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IF9kcm1faTgxMF9wcmUxMl9pbml0IHsKLSBkcm1faTgxMF9pbml0X2Z1bmNfdCBmdW5jOwotIHVuc2lnbmVkIGludCBtbWlvX29mZnNldDsKLSB1bnNpZ25lZCBpbnQgYnVmZmVyc19vZmZzZXQ7CisgIGRybV9pODEwX2luaXRfZnVuY190IGZ1bmM7CisgIHVuc2lnbmVkIGludCBtbWlvX29mZnNldDsKKyAgdW5zaWduZWQgaW50IGJ1ZmZlcnNfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc2FyZWFfcHJpdl9vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IHJpbmdfc3RhcnQ7Ci0gdW5zaWduZWQgaW50IHJpbmdfZW5kOwotIHVuc2lnbmVkIGludCByaW5nX3NpemU7CisgIGludCBzYXJlYV9wcml2X29mZnNldDsKKyAgdW5zaWduZWQgaW50IHJpbmdfc3RhcnQ7CisgIHVuc2lnbmVkIGludCByaW5nX2VuZDsKKyAgdW5zaWduZWQgaW50IHJpbmdfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGZyb250X29mZnNldDsKLSB1bnNpZ25lZCBpbnQgYmFja19vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IGRlcHRoX29mZnNldDsKLSB1bnNpZ25lZCBpbnQgdzsKKyAgdW5zaWduZWQgaW50IGZyb250X29mZnNldDsKKyAgdW5zaWduZWQgaW50IGJhY2tfb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgZGVwdGhfb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGg7Ci0gdW5zaWduZWQgaW50IHBpdGNoOwotIHVuc2lnbmVkIGludCBwaXRjaF9iaXRzOworICB1bnNpZ25lZCBpbnQgaDsKKyAgdW5zaWduZWQgaW50IHBpdGNoOworICB1bnNpZ25lZCBpbnQgcGl0Y2hfYml0czsKIH0gZHJtX2k4MTBfcHJlMTJfaW5pdF90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IF9kcm1faTgxMF90ZXhfcmVnaW9uIHsKLSB1bnNpZ25lZCBjaGFyIG5leHQsIHByZXY7Ci0gdW5zaWduZWQgY2hhciBpbl91c2U7Ci0gaW50IGFnZTsKKyAgdW5zaWduZWQgY2hhciBuZXh0LCBwcmV2OworICB1bnNpZ25lZCBjaGFyIGluX3VzZTsKKyAgaW50IGFnZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV9pODEwX3RleF9yZWdpb25fdDsKIHR5cGVkZWYgc3RydWN0IF9kcm1faTgxMF9zYXJlYSB7Ci0gdW5zaWduZWQgaW50IENvbnRleHRTdGF0ZVtJODEwX0NUWF9TRVRVUF9TSVpFXTsKLSB1bnNpZ25lZCBpbnQgQnVmZmVyU3RhdGVbSTgxMF9ERVNUX1NFVFVQX1NJWkVdOworICB1bnNpZ25lZCBpbnQgQ29udGV4dFN0YXRlW0k4MTBfQ1RYX1NFVFVQX1NJWkVdOworICB1bnNpZ25lZCBpbnQgQnVmZmVyU3RhdGVbSTgxMF9ERVNUX1NFVFVQX1NJWkVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgVGV4U3RhdGVbMl1bSTgxMF9URVhfU0VUVVBfU0laRV07Ci0gdW5zaWduZWQgaW50IGRpcnR5OwotIHVuc2lnbmVkIGludCBuYm94OwotIHN0cnVjdCBkcm1fY2xpcF9yZWN0IGJveGVzW0k4MTBfTlJfU0FSRUFfQ0xJUFJFQ1RTXTsKKyAgdW5zaWduZWQgaW50IFRleFN0YXRlWzJdW0k4MTBfVEVYX1NFVFVQX1NJWkVdOworICB1bnNpZ25lZCBpbnQgZGlydHk7CisgIHVuc2lnbmVkIGludCBuYm94OworICBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBib3hlc1tJODEwX05SX1NBUkVBX0NMSVBSRUNUU107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRybV9pODEwX3RleF9yZWdpb25fdCB0ZXhMaXN0W0k4MTBfTlJfVEVYX1JFR0lPTlMgKyAxXTsKLSBpbnQgdGV4QWdlOwotIGludCBsYXN0X2VucXVldWU7Ci0gaW50IGxhc3RfZGlzcGF0Y2g7CisgIGRybV9pODEwX3RleF9yZWdpb25fdCB0ZXhMaXN0W0k4MTBfTlJfVEVYX1JFR0lPTlMgKyAxXTsKKyAgaW50IHRleEFnZTsKKyAgaW50IGxhc3RfZW5xdWV1ZTsKKyAgaW50IGxhc3RfZGlzcGF0Y2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBsYXN0X3F1aWVzY2VudDsKLSBpbnQgY3R4T3duZXI7Ci0gaW50IHZlcnRleF9wcmltOwotIGludCBwZl9lbmFibGVkOworICBpbnQgbGFzdF9xdWllc2NlbnQ7CisgIGludCBjdHhPd25lcjsKKyAgaW50IHZlcnRleF9wcmltOworICBpbnQgcGZfZW5hYmxlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBmX2FjdGl2ZTsKLSBpbnQgcGZfY3VycmVudF9wYWdlOworICBpbnQgcGZfYWN0aXZlOworICBpbnQgcGZfY3VycmVudF9wYWdlOwogfSBkcm1faTgxMF9zYXJlYV90OwogI2RlZmluZSBEUk1fSTgxMF9JTklUIDB4MDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xODgsNzQgKzE4OCw3NCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0k4MTBfUlNUQVRVUyAweDBkCiAjZGVmaW5lIERSTV9JODEwX0ZMSVAgMHgwZQotI2RlZmluZSBEUk1fSU9DVExfSTgxMF9JTklUIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9JTklULCBkcm1faTgxMF9pbml0X3QpCi0jZGVmaW5lIERSTV9JT0NUTF9JODEwX1ZFUlRFWCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfVkVSVEVYLCBkcm1faTgxMF92ZXJ0ZXhfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfSU5JVCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9JTklULCBkcm1faTgxMF9pbml0X3QpCisjZGVmaW5lIERSTV9JT0NUTF9JODEwX1ZFUlRFWCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9WRVJURVgsIGRybV9pODEwX3ZlcnRleF90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfQ0xFQVIgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX0NMRUFSLCBkcm1faTgxMF9jbGVhcl90KQotI2RlZmluZSBEUk1fSU9DVExfSTgxMF9GTFVTSCBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9GTFVTSCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfR0VUQUdFIERSTV9JTyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX0dFVEFHRSkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfQ0xFQVIgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfQ0xFQVIsIGRybV9pODEwX2NsZWFyX3QpCisjZGVmaW5lIERSTV9JT0NUTF9JODEwX0ZMVVNIIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfRkxVU0gpCisjZGVmaW5lIERSTV9JT0NUTF9JODEwX0dFVEFHRSBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX0dFVEFHRSkKICNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfR0VUQlVGIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9HRVRCVUYsIGRybV9pODEwX2RtYV90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfU1dBUCBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9TV0FQKQotI2RlZmluZSBEUk1fSU9DVExfSTgxMF9DT1BZIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9DT1BZLCBkcm1faTgxMF9jb3B5X3QpCi0jZGVmaW5lIERSTV9JT0NUTF9JODEwX0RPQ09QWSBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9ET0NPUFkpCi0jZGVmaW5lIERSTV9JT0NUTF9JODEwX09WMElORk8gRFJNX0lPUiggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX09WMElORk8sIGRybV9pODEwX292ZXJsYXlfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfU1dBUCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX1NXQVApCisjZGVmaW5lIERSTV9JT0NUTF9JODEwX0NPUFkgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfQ09QWSwgZHJtX2k4MTBfY29weV90KQorI2RlZmluZSBEUk1fSU9DVExfSTgxMF9ET0NPUFkgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9ET0NPUFkpCisjZGVmaW5lIERSTV9JT0NUTF9JODEwX09WMElORk8gRFJNX0lPUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfT1YwSU5GTywgZHJtX2k4MTBfb3ZlcmxheV90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfRlNUQVRVUyBEUk1fSU8gKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfRlNUQVRVUykKLSNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfT1YwRkxJUCBEUk1fSU8gKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfT1YwRkxJUCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfTUMgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX01DLCBkcm1faTgxMF9tY190KQotI2RlZmluZSBEUk1fSU9DVExfSTgxMF9SU1RBVFVTIERSTV9JTyAoIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9SU1RBVFVTKQorI2RlZmluZSBEUk1fSU9DVExfSTgxMF9GU1RBVFVTIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfRlNUQVRVUykKKyNkZWZpbmUgRFJNX0lPQ1RMX0k4MTBfT1YwRkxJUCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX09WMEZMSVApCisjZGVmaW5lIERSTV9JT0NUTF9JODEwX01DIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX01DLCBkcm1faTgxMF9tY190KQorI2RlZmluZSBEUk1fSU9DVExfSTgxMF9SU1RBVFVTIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k4MTBfUlNUQVRVUykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9JODEwX0ZMSVAgRFJNX0lPICggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JODEwX0ZMSVApCisjZGVmaW5lIERSTV9JT0NUTF9JODEwX0ZMSVAgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTgxMF9GTElQKQogdHlwZWRlZiBzdHJ1Y3QgX2RybV9pODEwX2NsZWFyIHsKLSBpbnQgY2xlYXJfY29sb3I7Ci0gaW50IGNsZWFyX2RlcHRoOworICBpbnQgY2xlYXJfY29sb3I7CisgIGludCBjbGVhcl9kZXB0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGZsYWdzOworICBpbnQgZmxhZ3M7CiB9IGRybV9pODEwX2NsZWFyX3Q7CiB0eXBlZGVmIHN0cnVjdCBfZHJtX2k4MTBfdmVydGV4IHsKLSBpbnQgaWR4OworICBpbnQgaWR4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdXNlZDsKLSBpbnQgZGlzY2FyZDsKKyAgaW50IHVzZWQ7CisgIGludCBkaXNjYXJkOwogfSBkcm1faTgxMF92ZXJ0ZXhfdDsKIHR5cGVkZWYgc3RydWN0IF9kcm1faTgxMF9jb3B5X3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgaWR4OwotIGludCB1c2VkOwotIHZvaWQgKmFkZHJlc3M7CisgIGludCBpZHg7CisgIGludCB1c2VkOworICB2b2lkICogYWRkcmVzczsKIH0gZHJtX2k4MTBfY29weV90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUFJfVFJJQU5HTEVTICgweDA8PDE4KQotI2RlZmluZSBQUl9UUklTVFJJUF8wICgweDE8PDE4KQotI2RlZmluZSBQUl9UUklTVFJJUF8xICgweDI8PDE4KQotI2RlZmluZSBQUl9UUklGQU4gKDB4Mzw8MTgpCisjZGVmaW5lIFBSX1RSSUFOR0xFUyAoMHgwIDw8IDE4KQorI2RlZmluZSBQUl9UUklTVFJJUF8wICgweDEgPDwgMTgpCisjZGVmaW5lIFBSX1RSSVNUUklQXzEgKDB4MiA8PCAxOCkKKyNkZWZpbmUgUFJfVFJJRkFOICgweDMgPDwgMTgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQUl9QT0xZR09OICgweDQ8PDE4KQotI2RlZmluZSBQUl9MSU5FUyAoMHg1PDwxOCkKLSNkZWZpbmUgUFJfTElORVNUUklQICgweDY8PDE4KQotI2RlZmluZSBQUl9SRUNUUyAoMHg3PDwxOCkKKyNkZWZpbmUgUFJfUE9MWUdPTiAoMHg0IDw8IDE4KQorI2RlZmluZSBQUl9MSU5FUyAoMHg1IDw8IDE4KQorI2RlZmluZSBQUl9MSU5FU1RSSVAgKDB4NiA8PCAxOCkKKyNkZWZpbmUgUFJfUkVDVFMgKDB4NyA8PCAxOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBSX01BU0sgKDB4Nzw8MTgpCisjZGVmaW5lIFBSX01BU0sgKDB4NyA8PCAxOCkKIHR5cGVkZWYgc3RydWN0IGRybV9pODEwX2RtYSB7Ci0gdm9pZCAqdmlydHVhbDsKLSBpbnQgcmVxdWVzdF9pZHg7CisgIHZvaWQgKiB2aXJ0dWFsOworICBpbnQgcmVxdWVzdF9pZHg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCByZXF1ZXN0X3NpemU7Ci0gaW50IGdyYW50ZWQ7CisgIGludCByZXF1ZXN0X3NpemU7CisgIGludCBncmFudGVkOwogfSBkcm1faTgxMF9kbWFfdDsKIHR5cGVkZWYgc3RydWN0IF9kcm1faTgxMF9vdmVybGF5X3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgb2Zmc2V0OwotIHVuc2lnbmVkIGludCBwaHlzaWNhbDsKKyAgdW5zaWduZWQgaW50IG9mZnNldDsKKyAgdW5zaWduZWQgaW50IHBoeXNpY2FsOwogfSBkcm1faTgxMF9vdmVybGF5X3Q7CiB0eXBlZGVmIHN0cnVjdCBfZHJtX2k4MTBfbWMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgaWR4OwotIGludCB1c2VkOwotIGludCBudW1fYmxvY2tzOwotIGludCAqbGVuZ3RoOworICBpbnQgaWR4OworICBpbnQgdXNlZDsKKyAgaW50IG51bV9ibG9ja3M7CisgIGludCAqIGxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGxhc3RfcmVuZGVyOworICB1bnNpZ25lZCBpbnQgbGFzdF9yZW5kZXI7CiB9IGRybV9pODEwX21jX3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL2k5MTVfZHJtLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS9pOTE1X2RybS5oCmluZGV4IDdiOTgxMGMuLjNkMTVmZWMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvZHJtL2k5MTVfZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vaTkxNV9kcm0uaApAQCAtMjcsOTYgKzI3LDk2IEBACiAjZGVmaW5lIEk5MTVfTE9HX01JTl9URVhfUkVHSU9OX1NJWkUgMTQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBfZHJtX2k5MTVfaW5pdCB7Ci0gZW51bSB7Ci0gSTkxNV9JTklUX0RNQSA9IDB4MDEsCi0gSTkxNV9DTEVBTlVQX0RNQSA9IDB4MDIsCisgIGVudW0geworICAgIEk5MTVfSU5JVF9ETUEgPSAweDAxLAorICAgIEk5MTVfQ0xFQU5VUF9ETUEgPSAweDAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJOTE1X1JFU1VNRV9ETUEgPSAweDAzCi0gfSBmdW5jOwotIHVuc2lnbmVkIGludCBtbWlvX29mZnNldDsKLSBpbnQgc2FyZWFfcHJpdl9vZmZzZXQ7CisgICAgSTkxNV9SRVNVTUVfRE1BID0gMHgwMworICB9IGZ1bmM7CisgIHVuc2lnbmVkIGludCBtbWlvX29mZnNldDsKKyAgaW50IHNhcmVhX3ByaXZfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmluZ19zdGFydDsKLSB1bnNpZ25lZCBpbnQgcmluZ19lbmQ7Ci0gdW5zaWduZWQgaW50IHJpbmdfc2l6ZTsKLSB1bnNpZ25lZCBpbnQgZnJvbnRfb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgcmluZ19zdGFydDsKKyAgdW5zaWduZWQgaW50IHJpbmdfZW5kOworICB1bnNpZ25lZCBpbnQgcmluZ19zaXplOworICB1bnNpZ25lZCBpbnQgZnJvbnRfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgYmFja19vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IGRlcHRoX29mZnNldDsKLSB1bnNpZ25lZCBpbnQgdzsKLSB1bnNpZ25lZCBpbnQgaDsKKyAgdW5zaWduZWQgaW50IGJhY2tfb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgZGVwdGhfb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgdzsKKyAgdW5zaWduZWQgaW50IGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBwaXRjaDsKLSB1bnNpZ25lZCBpbnQgcGl0Y2hfYml0czsKLSB1bnNpZ25lZCBpbnQgYmFja19waXRjaDsKLSB1bnNpZ25lZCBpbnQgZGVwdGhfcGl0Y2g7CisgIHVuc2lnbmVkIGludCBwaXRjaDsKKyAgdW5zaWduZWQgaW50IHBpdGNoX2JpdHM7CisgIHVuc2lnbmVkIGludCBiYWNrX3BpdGNoOworICB1bnNpZ25lZCBpbnQgZGVwdGhfcGl0Y2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBjcHA7Ci0gdW5zaWduZWQgaW50IGNoaXBzZXQ7CisgIHVuc2lnbmVkIGludCBjcHA7CisgIHVuc2lnbmVkIGludCBjaGlwc2V0OwogfSBkcm1faTkxNV9pbml0X3Q7CiB0eXBlZGVmIHN0cnVjdCBfZHJtX2k5MTVfc2FyZWEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZHJtX3RleF9yZWdpb24gdGV4TGlzdFtJOTE1X05SX1RFWF9SRUdJT05TICsgMV07Ci0gaW50IGxhc3RfdXBsb2FkOwotIGludCBsYXN0X2VucXVldWU7Ci0gaW50IGxhc3RfZGlzcGF0Y2g7CisgIHN0cnVjdCBkcm1fdGV4X3JlZ2lvbiB0ZXhMaXN0W0k5MTVfTlJfVEVYX1JFR0lPTlMgKyAxXTsKKyAgaW50IGxhc3RfdXBsb2FkOworICBpbnQgbGFzdF9lbnF1ZXVlOworICBpbnQgbGFzdF9kaXNwYXRjaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGN0eE93bmVyOwotIGludCB0ZXhBZ2U7Ci0gaW50IHBmX2VuYWJsZWQ7Ci0gaW50IHBmX2FjdGl2ZTsKKyAgaW50IGN0eE93bmVyOworICBpbnQgdGV4QWdlOworICBpbnQgcGZfZW5hYmxlZDsKKyAgaW50IHBmX2FjdGl2ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBmX2N1cnJlbnRfcGFnZTsKLSBpbnQgcGVyZl9ib3hlczsKLSBpbnQgd2lkdGgsIGhlaWdodDsKLSBkcm1faGFuZGxlX3QgZnJvbnRfaGFuZGxlOworICBpbnQgcGZfY3VycmVudF9wYWdlOworICBpbnQgcGVyZl9ib3hlczsKKyAgaW50IHdpZHRoLCBoZWlnaHQ7CisgIGRybV9oYW5kbGVfdCBmcm9udF9oYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBmcm9udF9vZmZzZXQ7Ci0gaW50IGZyb250X3NpemU7Ci0gZHJtX2hhbmRsZV90IGJhY2tfaGFuZGxlOwotIGludCBiYWNrX29mZnNldDsKKyAgaW50IGZyb250X29mZnNldDsKKyAgaW50IGZyb250X3NpemU7CisgIGRybV9oYW5kbGVfdCBiYWNrX2hhbmRsZTsKKyAgaW50IGJhY2tfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgYmFja19zaXplOwotIGRybV9oYW5kbGVfdCBkZXB0aF9oYW5kbGU7Ci0gaW50IGRlcHRoX29mZnNldDsKLSBpbnQgZGVwdGhfc2l6ZTsKKyAgaW50IGJhY2tfc2l6ZTsKKyAgZHJtX2hhbmRsZV90IGRlcHRoX2hhbmRsZTsKKyAgaW50IGRlcHRoX29mZnNldDsKKyAgaW50IGRlcHRoX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRybV9oYW5kbGVfdCB0ZXhfaGFuZGxlOwotIGludCB0ZXhfb2Zmc2V0OwotIGludCB0ZXhfc2l6ZTsKLSBpbnQgbG9nX3RleF9ncmFudWxhcml0eTsKKyAgZHJtX2hhbmRsZV90IHRleF9oYW5kbGU7CisgIGludCB0ZXhfb2Zmc2V0OworICBpbnQgdGV4X3NpemU7CisgIGludCBsb2dfdGV4X2dyYW51bGFyaXR5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcGl0Y2g7Ci0gaW50IHJvdGF0aW9uOwotIGludCByb3RhdGVkX29mZnNldDsKLSBpbnQgcm90YXRlZF9zaXplOworICBpbnQgcGl0Y2g7CisgIGludCByb3RhdGlvbjsKKyAgaW50IHJvdGF0ZWRfb2Zmc2V0OworICBpbnQgcm90YXRlZF9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcm90YXRlZF9waXRjaDsKLSBpbnQgdmlydHVhbFgsIHZpcnR1YWxZOwotIHVuc2lnbmVkIGludCBmcm9udF90aWxlZDsKLSB1bnNpZ25lZCBpbnQgYmFja190aWxlZDsKKyAgaW50IHJvdGF0ZWRfcGl0Y2g7CisgIGludCB2aXJ0dWFsWCwgdmlydHVhbFk7CisgIHVuc2lnbmVkIGludCBmcm9udF90aWxlZDsKKyAgdW5zaWduZWQgaW50IGJhY2tfdGlsZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBkZXB0aF90aWxlZDsKLSB1bnNpZ25lZCBpbnQgcm90YXRlZF90aWxlZDsKLSB1bnNpZ25lZCBpbnQgcm90YXRlZDJfdGlsZWQ7Ci0gaW50IHBpcGVBX3g7CisgIHVuc2lnbmVkIGludCBkZXB0aF90aWxlZDsKKyAgdW5zaWduZWQgaW50IHJvdGF0ZWRfdGlsZWQ7CisgIHVuc2lnbmVkIGludCByb3RhdGVkMl90aWxlZDsKKyAgaW50IHBpcGVBX3g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwaXBlQV95OwotIGludCBwaXBlQV93OwotIGludCBwaXBlQV9oOwotIGludCBwaXBlQl94OworICBpbnQgcGlwZUFfeTsKKyAgaW50IHBpcGVBX3c7CisgIGludCBwaXBlQV9oOworICBpbnQgcGlwZUJfeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBpcGVCX3k7Ci0gaW50IHBpcGVCX3c7Ci0gaW50IHBpcGVCX2g7Ci0gZHJtX2hhbmRsZV90IHVudXNlZF9oYW5kbGU7CisgIGludCBwaXBlQl95OworICBpbnQgcGlwZUJfdzsKKyAgaW50IHBpcGVCX2g7CisgIGRybV9oYW5kbGVfdCB1bnVzZWRfaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB1bnVzZWQxLCB1bnVzZWQyLCB1bnVzZWQzOwotIF9fdTMyIGZyb250X2JvX2hhbmRsZTsKLSBfX3UzMiBiYWNrX2JvX2hhbmRsZTsKLSBfX3UzMiB1bnVzZWRfYm9faGFuZGxlOworICBfX3UzMiB1bnVzZWQxLCB1bnVzZWQyLCB1bnVzZWQzOworICBfX3UzMiBmcm9udF9ib19oYW5kbGU7CisgIF9fdTMyIGJhY2tfYm9faGFuZGxlOworICBfX3UzMiB1bnVzZWRfYm9faGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkZXB0aF9ib19oYW5kbGU7CisgIF9fdTMyIGRlcHRoX2JvX2hhbmRsZTsKIH0gZHJtX2k5MTVfc2FyZWFfdDsKICNkZWZpbmUgcGxhbmVBX3ggcGlwZUFfeAogI2RlZmluZSBwbGFuZUFfeSBwaXBlQV95CkBAIC0xOTYsNTE1ICsxOTYsNTI5IEBACiAjZGVmaW5lIERSTV9JOTE1X1JFR19SRUFEIDB4MzEKICNkZWZpbmUgRFJNX0k5MTVfR0VUX1JFU0VUX1NUQVRTIDB4MzIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0lOSVQgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0lOSVQsIGRybV9pOTE1X2luaXRfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfRkxVU0ggRFJNX0lPICggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0ZMVVNIKQotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9GTElQIERSTV9JTyAoIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9GTElQKQotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9CQVRDSEJVRkZFUiBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfQkFUQ0hCVUZGRVIsIGRybV9pOTE1X2JhdGNoYnVmZmVyX3QpCisjZGVmaW5lIERSTV9JOTE1X0dFTV9VU0VSUFRSIDB4MzMKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfSU5JVCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9JTklULCBkcm1faTkxNV9pbml0X3QpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0ZMVVNIIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfRkxVU0gpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0ZMSVAgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9GTElQKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfQkFUQ0hCVUZGRVIgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfQkFUQ0hCVUZGRVIsIGRybV9pOTE1X2JhdGNoYnVmZmVyX3QpCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0lSUV9FTUlUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9JUlFfRU1JVCwgZHJtX2k5MTVfaXJxX2VtaXRfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfSVJRX1dBSVQgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0lSUV9XQUlULCBkcm1faTkxNV9pcnFfd2FpdF90KQorI2RlZmluZSBEUk1fSU9DVExfSTkxNV9JUlFfV0FJVCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9JUlFfV0FJVCwgZHJtX2k5MTVfaXJxX3dhaXRfdCkKICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VUUEFSQU0gRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFVFBBUkFNLCBkcm1faTkxNV9nZXRwYXJhbV90KQotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9TRVRQQVJBTSBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfU0VUUEFSQU0sIGRybV9pOTE1X3NldHBhcmFtX3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fSU9DVExfSTkxNV9TRVRQQVJBTSBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9TRVRQQVJBTSwgZHJtX2k5MTVfc2V0cGFyYW1fdCkKICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfQUxMT0MgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0FMTE9DLCBkcm1faTkxNV9tZW1fYWxsb2NfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfRlJFRSBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfRlJFRSwgZHJtX2k5MTVfbWVtX2ZyZWVfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfSU5JVF9IRUFQIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9JTklUX0hFQVAsIGRybV9pOTE1X21lbV9pbml0X2hlYXBfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfQ01EQlVGRkVSIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9DTURCVUZGRVIsIGRybV9pOTE1X2NtZGJ1ZmZlcl90KQorI2RlZmluZSBEUk1fSU9DVExfSTkxNV9GUkVFIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0ZSRUUsIGRybV9pOTE1X21lbV9mcmVlX3QpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0lOSVRfSEVBUCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9JTklUX0hFQVAsIGRybV9pOTE1X21lbV9pbml0X2hlYXBfdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0RFU1RST1lfSEVBUCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfREVTVFJPWV9IRUFQLCBkcm1faTkxNV9tZW1fZGVzdHJveV9oZWFwX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X1NFVF9WQkxBTktfUElQRSBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfU0VUX1ZCTEFOS19QSVBFLCBkcm1faTkxNV92YmxhbmtfcGlwZV90KQotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRVRfVkJMQU5LX1BJUEUgRFJNX0lPUiggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFVF9WQkxBTktfUElQRSwgZHJtX2k5MTVfdmJsYW5rX3BpcGVfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfQ01EQlVGRkVSIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0NNREJVRkZFUiwgZHJtX2k5MTVfY21kYnVmZmVyX3QpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0RFU1RST1lfSEVBUCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9ERVNUUk9ZX0hFQVAsIGRybV9pOTE1X21lbV9kZXN0cm95X2hlYXBfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfU0VUX1ZCTEFOS19QSVBFIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X1NFVF9WQkxBTktfUElQRSwgZHJtX2k5MTVfdmJsYW5rX3BpcGVfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VUX1ZCTEFOS19QSVBFIERSTV9JT1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFVF9WQkxBTktfUElQRSwgZHJtX2k5MTVfdmJsYW5rX3BpcGVfdCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X1ZCTEFOS19TV0FQIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9WQkxBTktfU1dBUCwgZHJtX2k5MTVfdmJsYW5rX3N3YXBfdCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0hXU19BRERSIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0hXU19BRERSLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2luaXQpCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9JTklUIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9JTklULCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2luaXQpCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9FWEVDQlVGRkVSIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9FWEVDQlVGRkVSLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIpCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9FWEVDQlVGRkVSMiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fRVhFQ0JVRkZFUjIsIHN0cnVjdCBkcm1faTkxNV9nZW1fZXhlY2J1ZmZlcjIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fRVhFQ0JVRkZFUjIgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX0VYRUNCVUZGRVIyLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIyKQogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fUElOIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fUElOLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3BpbikKICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1VOUElOIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9VTlBJTiwgc3RydWN0IGRybV9pOTE1X2dlbV91bnBpbikKICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX0JVU1kgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9CVVNZLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2J1c3kpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fU0VUX0NBQ0hJTkcgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX1NFVF9DQUNISU5HLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NhY2hpbmcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fR0VUX0NBQ0hJTkcgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9HRVRfQ0FDSElORywgc3RydWN0IGRybV9pOTE1X2dlbV9jYWNoaW5nKQotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fVEhST1RUTEUgRFJNX0lPICggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9USFJPVFRMRSkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1RIUk9UVExFIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX1RIUk9UVExFKQogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fRU5URVJWVCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9FTlRFUlZUKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX0xFQVZFVlQgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fTEVBVkVWVCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9DUkVBVEUgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9DUkVBVEUsIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlKQotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fUFJFQUQgRFJNX0lPVyAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9QUkVBRCwgc3RydWN0IGRybV9pOTE1X2dlbV9wcmVhZCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1BXUklURSBEUk1fSU9XIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX1BXUklURSwgc3RydWN0IGRybV9pOTE1X2dlbV9wd3JpdGUpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9QUkVBRCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fUFJFQUQsIHN0cnVjdCBkcm1faTkxNV9nZW1fcHJlYWQpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9QV1JJVEUgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX1BXUklURSwgc3RydWN0IGRybV9pOTE1X2dlbV9wd3JpdGUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fTU1BUCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX01NQVAsIHN0cnVjdCBkcm1faTkxNV9nZW1fbW1hcCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9NTUFQX0dUVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX01NQVBfR1RULCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX21tYXBfZ3R0KQotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fU0VUX0RPTUFJTiBEUk1fSU9XIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX1NFVF9ET01BSU4sIHN0cnVjdCBkcm1faTkxNV9nZW1fc2V0X2RvbWFpbikKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1NXX0ZJTklTSCBEUk1fSU9XIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX1NXX0ZJTklTSCwgc3RydWN0IGRybV9pOTE1X2dlbV9zd19maW5pc2gpCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9TRVRfVElMSU5HIERSTV9JT1dSIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX1NFVF9USUxJTkcsIHN0cnVjdCBkcm1faTkxNV9nZW1fc2V0X3RpbGluZykKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1NFVF9ET01BSU4gRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX1NFVF9ET01BSU4sIHN0cnVjdCBkcm1faTkxNV9nZW1fc2V0X2RvbWFpbikKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1NXX0ZJTklTSCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fU1dfRklOSVNILCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3N3X2ZpbmlzaCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9HRVRfVElMSU5HIERSTV9JT1dSIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX0dFVF9USUxJTkcsIHN0cnVjdCBkcm1faTkxNV9nZW1fZ2V0X3RpbGluZykKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX0dFVF9BUEVSVFVSRSBEUk1fSU9SIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX0dFVF9BUEVSVFVSRSwgc3RydWN0IGRybV9pOTE1X2dlbV9nZXRfYXBlcnR1cmUpCisjZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9TRVRfVElMSU5HIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fU0VUX1RJTElORywgc3RydWN0IGRybV9pOTE1X2dlbV9zZXRfdGlsaW5nKQorI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fR0VUX1RJTElORyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX0dFVF9USUxJTkcsIHN0cnVjdCBkcm1faTkxNV9nZW1fZ2V0X3RpbGluZykKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX0dFVF9BUEVSVFVSRSBEUk1fSU9SKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fR0VUX0FQRVJUVVJFLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2dldF9hcGVydHVyZSkKICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VUX1BJUEVfRlJPTV9DUlRDX0lEIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRVRfUElQRV9GUk9NX0NSVENfSUQsIHN0cnVjdCBkcm1faTkxNV9nZXRfcGlwZV9mcm9tX2NydGNfaWQpCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFTV9NQURWSVNFIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fTUFEVklTRSwgc3RydWN0IGRybV9pOTE1X2dlbV9tYWR2aXNlKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX01BRFZJU0UgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9NQURWSVNFLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX21hZHZpc2UpCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X09WRVJMQVlfUFVUX0lNQUdFIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X09WRVJMQVlfUFVUX0lNQUdFLCBzdHJ1Y3QgZHJtX2ludGVsX292ZXJsYXlfcHV0X2ltYWdlKQogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9PVkVSTEFZX0FUVFJTIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9PVkVSTEFZX0FUVFJTLCBzdHJ1Y3QgZHJtX2ludGVsX292ZXJsYXlfYXR0cnMpCiAjZGVmaW5lIERSTV9JT0NUTF9JOTE1X1NFVF9TUFJJVEVfQ09MT1JLRVkgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X1NFVF9TUFJJVEVfQ09MT1JLRVksIHN0cnVjdCBkcm1faW50ZWxfc3ByaXRlX2NvbG9ya2V5KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VUX1NQUklURV9DT0xPUktFWSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfU0VUX1NQUklURV9DT0xPUktFWSwgc3RydWN0IGRybV9pbnRlbF9zcHJpdGVfY29sb3JrZXkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fV0FJVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX1dBSVQsIHN0cnVjdCBkcm1faTkxNV9nZW1fd2FpdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX0NPTlRFWFRfQ1JFQVRFIERSTV9JT1dSIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfR0VNX0NPTlRFWFRfQ1JFQVRFLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NvbnRleHRfY3JlYXRlKQotI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fQ09OVEVYVF9ERVNUUk9ZIERSTV9JT1cgKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fQ09OVEVYVF9ERVNUUk9ZLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NvbnRleHRfZGVzdHJveSkKLSNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfUkVHX1JFQUQgRFJNX0lPV1IgKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9SRUdfUkVBRCwgc3RydWN0IGRybV9pOTE1X3JlZ19yZWFkKQorI2RlZmluZSBEUk1fSU9DVExfSTkxNV9HRU1fQ09OVEVYVF9DUkVBVEUgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9DT05URVhUX0NSRUFURSwgc3RydWN0IGRybV9pOTE1X2dlbV9jb250ZXh0X2NyZWF0ZSkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX0NPTlRFWFRfREVTVFJPWSBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRU1fQ09OVEVYVF9ERVNUUk9ZLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NvbnRleHRfZGVzdHJveSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9JOTE1X0dFVF9SRVNFVF9TVEFUUyBEUk1fSU9XUiAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFVF9SRVNFVF9TVEFUUywgc3RydWN0IGRybV9pOTE1X3Jlc2V0X3N0YXRzKQorI2RlZmluZSBEUk1fSU9DVExfSTkxNV9SRUdfUkVBRCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5MTVfUkVHX1JFQUQsIHN0cnVjdCBkcm1faTkxNV9yZWdfcmVhZCkKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VUX1JFU0VUX1NUQVRTIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fSTkxNV9HRVRfUkVTRVRfU1RBVFMsIHN0cnVjdCBkcm1faTkxNV9yZXNldF9zdGF0cykKKyNkZWZpbmUgRFJNX0lPQ1RMX0k5MTVfR0VNX1VTRVJQVFIgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9JOTE1X0dFTV9VU0VSUFRSLCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3VzZXJwdHIpCiB0eXBlZGVmIHN0cnVjdCBkcm1faTkxNV9iYXRjaGJ1ZmZlciB7Ci0gaW50IHN0YXJ0OwotIGludCB1c2VkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgRFIxOwotIGludCBEUjQ7Ci0gaW50IG51bV9jbGlwcmVjdHM7Ci0gc3RydWN0IGRybV9jbGlwX3JlY3QgX191c2VyICpjbGlwcmVjdHM7CisgIGludCBzdGFydDsKKyAgaW50IHVzZWQ7CisgIGludCBEUjE7CisgIGludCBEUjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgbnVtX2NsaXByZWN0czsKKyAgc3RydWN0IGRybV9jbGlwX3JlY3QgX191c2VyICogY2xpcHJlY3RzOwogfSBkcm1faTkxNV9iYXRjaGJ1ZmZlcl90OwogdHlwZWRlZiBzdHJ1Y3QgX2RybV9pOTE1X2NtZGJ1ZmZlciB7Ci0gY2hhciBfX3VzZXIgKmJ1ZjsKLSBpbnQgc3o7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBEUjE7Ci0gaW50IERSNDsKLSBpbnQgbnVtX2NsaXByZWN0czsKLSBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBfX3VzZXIgKmNsaXByZWN0czsKKyAgY2hhciBfX3VzZXIgKiBidWY7CisgIGludCBzejsKKyAgaW50IERSMTsKKyAgaW50IERSNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBudW1fY2xpcHJlY3RzOworICBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBfX3VzZXIgKiBjbGlwcmVjdHM7CiB9IGRybV9pOTE1X2NtZGJ1ZmZlcl90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX2k5MTVfaXJxX2VtaXQgewotIGludCBfX3VzZXIgKmlycV9zZXE7Ci19IGRybV9pOTE1X2lycV9lbWl0X3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgX191c2VyICogaXJxX3NlcTsKK30gZHJtX2k5MTVfaXJxX2VtaXRfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9pOTE1X2lycV93YWl0IHsKLSBpbnQgaXJxX3NlcTsKKyAgaW50IGlycV9zZXE7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1faTkxNV9pcnFfd2FpdF90OwogI2RlZmluZSBJOTE1X1BBUkFNX0lSUV9BQ1RJVkUgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9QQVJBTV9BTExPV19CQVRDSEJVRkZFUiAyCiAjZGVmaW5lIEk5MTVfUEFSQU1fTEFTVF9ESVNQQVRDSCAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X1BBUkFNX0NISVBTRVRfSUQgNAogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19HRU0gNQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9QQVJBTV9OVU1fRkVOQ0VTX0FWQUlMIDYKICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfT1ZFUkxBWSA3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19QQUdFRkxJUFBJTkcgOAogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19FWEVDQlVGMiA5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19CU0QgMTAKICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfQkxUIDExCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19SRUxBWEVEX0ZFTkNJTkcgMTIKICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfQ09IRVJFTlRfUklOR1MgMTMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX0VYRUNfQ09OU1RBTlRTIDE0CiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX1JFTEFYRURfREVMVEEgMTUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX0dFTjdfU09MX1JFU0VUIDE2CiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX0xMQyAxNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfQUxJQVNJTkdfUFBHVFQgMTgKICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfV0FJVF9USU1FT1VUIDE5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19TRU1BUEhPUkVTIDIwCiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX1BSSU1FX1ZNQVBfRkxVU0ggMjEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX1ZFQk9YIDIyCiAjZGVmaW5lIEk5MTVfUEFSQU1fSEFTX1NFQ1VSRV9CQVRDSEVTIDIzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19QSU5ORURfQkFUQ0hFUyAyNAogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19FWEVDX05PX1JFTE9DIDI1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X1BBUkFNX0hBU19FWEVDX0hBTkRMRV9MVVQgMjYKICNkZWZpbmUgSTkxNV9QQVJBTV9IQVNfV1QgMjcKLXR5cGVkZWYgc3RydWN0IGRybV9pOTE1X2dldHBhcmFtIHsKLSBpbnQgcGFyYW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBfX3VzZXIgKnZhbHVlOworI2RlZmluZSBJOTE1X1BBUkFNX0NNRF9QQVJTRVJfVkVSU0lPTiAyOAordHlwZWRlZiBzdHJ1Y3QgZHJtX2k5MTVfZ2V0cGFyYW0geworICBpbnQgcGFyYW07CisgIGludCBfX3VzZXIgKiB2YWx1ZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV9pOTE1X2dldHBhcmFtX3Q7CiAjZGVmaW5lIEk5MTVfU0VUUEFSQU1fVVNFX01JX0JBVENIQlVGRkVSX1NUQVJUIDEKICNkZWZpbmUgSTkxNV9TRVRQQVJBTV9URVhfTFJVX0xPR19HUkFOVUxBUklUWSAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X1NFVFBBUkFNX0FMTE9XX0JBVENIQlVGRkVSIDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfU0VUUEFSQU1fTlVNX1VTRURfRkVOQ0VTIDQKIHR5cGVkZWYgc3RydWN0IGRybV9pOTE1X3NldHBhcmFtIHsKLSBpbnQgcGFyYW07CisgIGludCBwYXJhbTsKKyAgaW50IHZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdmFsdWU7CiB9IGRybV9pOTE1X3NldHBhcmFtX3Q7CiAjZGVmaW5lIEk5MTVfTUVNX1JFR0lPTl9BR1AgMQogdHlwZWRlZiBzdHJ1Y3QgZHJtX2k5MTVfbWVtX2FsbG9jIHsKKyAgaW50IHJlZ2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHJlZ2lvbjsKLSBpbnQgYWxpZ25tZW50OwotIGludCBzaXplOwotIGludCBfX3VzZXIgKnJlZ2lvbl9vZmZzZXQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgYWxpZ25tZW50OworICBpbnQgc2l6ZTsKKyAgaW50IF9fdXNlciAqIHJlZ2lvbl9vZmZzZXQ7CiB9IGRybV9pOTE1X21lbV9hbGxvY190OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9pOTE1X21lbV9mcmVlIHsKLSBpbnQgcmVnaW9uOwotIGludCByZWdpb25fb2Zmc2V0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IHJlZ2lvbjsKKyAgaW50IHJlZ2lvbl9vZmZzZXQ7CiB9IGRybV9pOTE1X21lbV9mcmVlX3Q7Ci10eXBlZGVmIHN0cnVjdCBkcm1faTkxNV9tZW1faW5pdF9oZWFwIHsKLSBpbnQgcmVnaW9uOwotIGludCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc3RhcnQ7Cit0eXBlZGVmIHN0cnVjdCBkcm1faTkxNV9tZW1faW5pdF9oZWFwIHsKKyAgaW50IHJlZ2lvbjsKKyAgaW50IHNpemU7CisgIGludCBzdGFydDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV9pOTE1X21lbV9pbml0X2hlYXBfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9pOTE1X21lbV9kZXN0cm95X2hlYXAgewotIGludCByZWdpb247Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgcmVnaW9uOwogfSBkcm1faTkxNV9tZW1fZGVzdHJveV9oZWFwX3Q7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSTkxNV9WQkxBTktfUElQRV9BIDEKICNkZWZpbmUgRFJNX0k5MTVfVkJMQU5LX1BJUEVfQiAyCiB0eXBlZGVmIHN0cnVjdCBkcm1faTkxNV92YmxhbmtfcGlwZSB7CisgIGludCBwaXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcGlwZTsKIH0gZHJtX2k5MTVfdmJsYW5rX3BpcGVfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9pOTE1X3ZibGFua19zd2FwIHsKLSBkcm1fZHJhd2FibGVfdCBkcmF3YWJsZTsKKyAgZHJtX2RyYXdhYmxlX3QgZHJhd2FibGU7CisgIGVudW0gZHJtX3ZibGFua19zZXFfdHlwZSBzZXF0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBlbnVtIGRybV92Ymxhbmtfc2VxX3R5cGUgc2VxdHlwZTsKLSB1bnNpZ25lZCBpbnQgc2VxdWVuY2U7CisgIHVuc2lnbmVkIGludCBzZXF1ZW5jZTsKIH0gZHJtX2k5MTVfdmJsYW5rX3N3YXBfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9pOTE1X2h3c19hZGRyIHsKKyAgX191NjQgYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYWRkcjsKIH0gZHJtX2k5MTVfaHdzX2FkZHJfdDsKIHN0cnVjdCBkcm1faTkxNV9nZW1faW5pdCB7Ci0gX191NjQgZ3R0X3N0YXJ0OworICBfX3U2NCBndHRfc3RhcnQ7CisgIF9fdTY0IGd0dF9lbmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGd0dF9lbmQ7CiB9Owogc3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGUgewotIF9fdTY0IHNpemU7CisgIF9fdTY0IHNpemU7CisgIF9fdTMyIGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaGFuZGxlOwotIF9fdTMyIHBhZDsKKyAgX191MzIgcGFkOwogfTsKIHN0cnVjdCBkcm1faTkxNV9nZW1fcHJlYWQgeworICBfX3UzMiBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiBwYWQ7Ci0gX191NjQgb2Zmc2V0OwotIF9fdTY0IHNpemU7CisgIF9fdTMyIHBhZDsKKyAgX191NjQgb2Zmc2V0OworICBfX3U2NCBzaXplOworICBfX3U2NCBkYXRhX3B0cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZGF0YV9wdHI7CiB9Owogc3RydWN0IGRybV9pOTE1X2dlbV9wd3JpdGUgewotIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgaGFuZGxlOworICBfX3UzMiBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBhZDsKLSBfX3U2NCBvZmZzZXQ7Ci0gX191NjQgc2l6ZTsKLSBfX3U2NCBkYXRhX3B0cjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IG9mZnNldDsKKyAgX191NjQgc2l6ZTsKKyAgX191NjQgZGF0YV9wdHI7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1faTkxNV9nZW1fbW1hcCB7Ci0gX191MzIgaGFuZGxlOwotIF9fdTMyIHBhZDsKKyAgX191MzIgaGFuZGxlOworICBfX3UzMiBwYWQ7CisgIF9fdTY0IG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgb2Zmc2V0OwotIF9fdTY0IHNpemU7Ci0gX191NjQgYWRkcl9wdHI7CisgIF9fdTY0IHNpemU7CisgIF9fdTY0IGFkZHJfcHRyOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX21tYXBfZ3R0IHsKLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgcGFkOwotIF9fdTY0IG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgcGFkOworICBfX3U2NCBvZmZzZXQ7CiB9Owotc3RydWN0IGRybV9pOTE1X2dlbV9zZXRfZG9tYWluIHsKLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgcmVhZF9kb21haW5zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB3cml0ZV9kb21haW47CitzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3NldF9kb21haW4geworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIHJlYWRfZG9tYWluczsKKyAgX191MzIgd3JpdGVfZG9tYWluOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3N3X2ZpbmlzaCB7Ci0gX191MzIgaGFuZGxlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgaGFuZGxlOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlbG9jYXRpb25fZW50cnkgewotIF9fdTMyIHRhcmdldF9oYW5kbGU7Ci0gX191MzIgZGVsdGE7CisgIF9fdTMyIHRhcmdldF9oYW5kbGU7CisgIF9fdTMyIGRlbHRhOworICBfX3U2NCBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG9mZnNldDsKLSBfX3U2NCBwcmVzdW1lZF9vZmZzZXQ7Ci0gX191MzIgcmVhZF9kb21haW5zOwotIF9fdTMyIHdyaXRlX2RvbWFpbjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IHByZXN1bWVkX29mZnNldDsKKyAgX191MzIgcmVhZF9kb21haW5zOworICBfX3UzMiB3cml0ZV9kb21haW47CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9HRU1fRE9NQUlOX0NQVSAweDAwMDAwMDAxCiAjZGVmaW5lIEk5MTVfR0VNX0RPTUFJTl9SRU5ERVIgMHgwMDAwMDAwMgogI2RlZmluZSBJOTE1X0dFTV9ET01BSU5fU0FNUExFUiAweDAwMDAwMDA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X0dFTV9ET01BSU5fQ09NTUFORCAweDAwMDAwMDA4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X0dFTV9ET01BSU5fSU5TVFJVQ1RJT04gMHgwMDAwMDAxMAogI2RlZmluZSBJOTE1X0dFTV9ET01BSU5fVkVSVEVYIDB4MDAwMDAwMjAKICNkZWZpbmUgSTkxNV9HRU1fRE9NQUlOX0dUVCAweDAwMDAwMDQwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdCB7Ci0gX191MzIgaGFuZGxlOwotIF9fdTMyIHJlbG9jYXRpb25fY291bnQ7Ci0gX191NjQgcmVsb2NzX3B0cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYWxpZ25tZW50OwotIF9fdTY0IG9mZnNldDsKKyAgX191MzIgaGFuZGxlOworICBfX3UzMiByZWxvY2F0aW9uX2NvdW50OworICBfX3U2NCByZWxvY3NfcHRyOworICBfX3U2NCBhbGlnbm1lbnQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBvZmZzZXQ7CiB9Owogc3RydWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyIHsKKyAgX191NjQgYnVmZmVyc19wdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGJ1ZmZlcnNfcHRyOwotIF9fdTMyIGJ1ZmZlcl9jb3VudDsKLSBfX3UzMiBiYXRjaF9zdGFydF9vZmZzZXQ7Ci0gX191MzIgYmF0Y2hfbGVuOworICBfX3UzMiBidWZmZXJfY291bnQ7CisgIF9fdTMyIGJhdGNoX3N0YXJ0X29mZnNldDsKKyAgX191MzIgYmF0Y2hfbGVuOworICBfX3UzMiBEUjE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIERSMTsKLSBfX3UzMiBEUjQ7Ci0gX191MzIgbnVtX2NsaXByZWN0czsKLSBfX3U2NCBjbGlwcmVjdHNfcHRyOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgRFI0OworICBfX3UzMiBudW1fY2xpcHJlY3RzOworICBfX3U2NCBjbGlwcmVjdHNfcHRyOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNfb2JqZWN0MiB7Ci0gX191MzIgaGFuZGxlOwotIF9fdTMyIHJlbG9jYXRpb25fY291bnQ7CisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgcmVsb2NhdGlvbl9jb3VudDsKKyAgX191NjQgcmVsb2NzX3B0cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVsb2NzX3B0cjsKLSBfX3U2NCBhbGlnbm1lbnQ7Ci0gX191NjQgb2Zmc2V0OwotI2RlZmluZSBFWEVDX09CSkVDVF9ORUVEU19GRU5DRSAoMTw8MCkKKyAgX191NjQgYWxpZ25tZW50OworICBfX3U2NCBvZmZzZXQ7CisjZGVmaW5lIEVYRUNfT0JKRUNUX05FRURTX0ZFTkNFICgxIDw8IDApCisjZGVmaW5lIEVYRUNfT0JKRUNUX05FRURTX0dUVCAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRVhFQ19PQkpFQ1RfTkVFRFNfR1RUICgxPDwxKQotI2RlZmluZSBFWEVDX09CSkVDVF9XUklURSAoMTw8MikKLSNkZWZpbmUgX19FWEVDX09CSkVDVF9VTktOT1dOX0ZMQUdTIC0oRVhFQ19PQkpFQ1RfV1JJVEU8PDEpCi0gX191NjQgZmxhZ3M7CisjZGVmaW5lIEVYRUNfT0JKRUNUX1dSSVRFICgxIDw8IDIpCisjZGVmaW5lIF9fRVhFQ19PQkpFQ1RfVU5LTk9XTl9GTEFHUyAtIChFWEVDX09CSkVDVF9XUklURSA8PCAxKQorICBfX3U2NCBmbGFnczsKKyAgX191NjQgcnN2ZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJzdmQxOwotIF9fdTY0IHJzdmQyOworICBfX3U2NCByc3ZkMjsKIH07CiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIyIHsKKyAgX191NjQgYnVmZmVyc19wdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGJ1ZmZlcnNfcHRyOwotIF9fdTMyIGJ1ZmZlcl9jb3VudDsKLSBfX3UzMiBiYXRjaF9zdGFydF9vZmZzZXQ7Ci0gX191MzIgYmF0Y2hfbGVuOworICBfX3UzMiBidWZmZXJfY291bnQ7CisgIF9fdTMyIGJhdGNoX3N0YXJ0X29mZnNldDsKKyAgX191MzIgYmF0Y2hfbGVuOworICBfX3UzMiBEUjE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIERSMTsKLSBfX3UzMiBEUjQ7Ci0gX191MzIgbnVtX2NsaXByZWN0czsKLSBfX3U2NCBjbGlwcmVjdHNfcHRyOworICBfX3UzMiBEUjQ7CisgIF9fdTMyIG51bV9jbGlwcmVjdHM7CisgIF9fdTY0IGNsaXByZWN0c19wdHI7CisjZGVmaW5lIEk5MTVfRVhFQ19SSU5HX01BU0sgKDcgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEk5MTVfRVhFQ19SSU5HX01BU0sgKDc8PDApCi0jZGVmaW5lIEk5MTVfRVhFQ19ERUZBVUxUICgwPDwwKQotI2RlZmluZSBJOTE1X0VYRUNfUkVOREVSICgxPDwwKQotI2RlZmluZSBJOTE1X0VYRUNfQlNEICgyPDwwKQorI2RlZmluZSBJOTE1X0VYRUNfREVGQVVMVCAoMCA8PCAwKQorI2RlZmluZSBJOTE1X0VYRUNfUkVOREVSICgxIDw8IDApCisjZGVmaW5lIEk5MTVfRVhFQ19CU0QgKDIgPDwgMCkKKyNkZWZpbmUgSTkxNV9FWEVDX0JMVCAoMyA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSTkxNV9FWEVDX0JMVCAoMzw8MCkKLSNkZWZpbmUgSTkxNV9FWEVDX1ZFQk9YICg0PDwwKQotI2RlZmluZSBJOTE1X0VYRUNfQ09OU1RBTlRTX01BU0sgKDM8PDYpCi0jZGVmaW5lIEk5MTVfRVhFQ19DT05TVEFOVFNfUkVMX0dFTkVSQUwgKDA8PDYpCisjZGVmaW5lIEk5MTVfRVhFQ19WRUJPWCAoNCA8PCAwKQorI2RlZmluZSBJOTE1X0VYRUNfQ09OU1RBTlRTX01BU0sgKDMgPDwgNikKKyNkZWZpbmUgSTkxNV9FWEVDX0NPTlNUQU5UU19SRUxfR0VORVJBTCAoMCA8PCA2KQorI2RlZmluZSBJOTE1X0VYRUNfQ09OU1RBTlRTX0FCU09MVVRFICgxIDw8IDYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJOTE1X0VYRUNfQ09OU1RBTlRTX0FCU09MVVRFICgxPDw2KQotI2RlZmluZSBJOTE1X0VYRUNfQ09OU1RBTlRTX1JFTF9TVVJGQUNFICgyPDw2KQotIF9fdTY0IGZsYWdzOwotIF9fdTY0IHJzdmQxOworI2RlZmluZSBJOTE1X0VYRUNfQ09OU1RBTlRTX1JFTF9TVVJGQUNFICgyIDw8IDYpCisgIF9fdTY0IGZsYWdzOworICBfX3U2NCByc3ZkMTsKKyAgX191NjQgcnN2ZDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJzdmQyOwogfTsKLSNkZWZpbmUgSTkxNV9FWEVDX0dFTjdfU09MX1JFU0VUICgxPDw4KQotI2RlZmluZSBJOTE1X0VYRUNfU0VDVVJFICgxPDw5KQorI2RlZmluZSBJOTE1X0VYRUNfR0VON19TT0xfUkVTRVQgKDEgPDwgOCkKKyNkZWZpbmUgSTkxNV9FWEVDX1NFQ1VSRSAoMSA8PCA5KQorI2RlZmluZSBJOTE1X0VYRUNfSVNfUElOTkVEICgxIDw8IDEwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSTkxNV9FWEVDX0lTX1BJTk5FRCAoMTw8MTApCi0jZGVmaW5lIEk5MTVfRVhFQ19OT19SRUxPQyAoMTw8MTEpCi0jZGVmaW5lIEk5MTVfRVhFQ19IQU5ETEVfTFVUICgxPDwxMikKLSNkZWZpbmUgX19JOTE1X0VYRUNfVU5LTk9XTl9GTEFHUyAtKEk5MTVfRVhFQ19IQU5ETEVfTFVUPDwxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSTkxNV9FWEVDX05PX1JFTE9DICgxIDw8IDExKQorI2RlZmluZSBJOTE1X0VYRUNfSEFORExFX0xVVCAoMSA8PCAxMikKKyNkZWZpbmUgX19JOTE1X0VYRUNfVU5LTk9XTl9GTEFHUyAtIChJOTE1X0VYRUNfSEFORExFX0xVVCA8PCAxKQogI2RlZmluZSBJOTE1X0VYRUNfQ09OVEVYVF9JRF9NQVNLICgweGZmZmZmZmZmKQotI2RlZmluZSBpOTE1X2V4ZWNidWZmZXIyX3NldF9jb250ZXh0X2lkKGViMiwgY29udGV4dCkgICAoZWIyKS5yc3ZkMSA9IGNvbnRleHQgJiBJOTE1X0VYRUNfQ09OVEVYVF9JRF9NQVNLCi0jZGVmaW5lIGk5MTVfZXhlY2J1ZmZlcjJfZ2V0X2NvbnRleHRfaWQoZWIyKSAgICgoZWIyKS5yc3ZkMSAmIEk5MTVfRVhFQ19DT05URVhUX0lEX01BU0spCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBpOTE1X2V4ZWNidWZmZXIyX3NldF9jb250ZXh0X2lkKGViMixjb250ZXh0KSAoZWIyKS5yc3ZkMSA9IGNvbnRleHQgJiBJOTE1X0VYRUNfQ09OVEVYVF9JRF9NQVNLCisjZGVmaW5lIGk5MTVfZXhlY2J1ZmZlcjJfZ2V0X2NvbnRleHRfaWQoZWIyKSAoKGViMikucnN2ZDEgJiBJOTE1X0VYRUNfQ09OVEVYVF9JRF9NQVNLKQogc3RydWN0IGRybV9pOTE1X2dlbV9waW4geworICBfX3UzMiBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiBwYWQ7Ci0gX191NjQgYWxpZ25tZW50OwotIF9fdTY0IG9mZnNldDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHBhZDsKKyAgX191NjQgYWxpZ25tZW50OworICBfX3U2NCBvZmZzZXQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1faTkxNV9nZW1fdW5waW4gewotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiBwYWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIHBhZDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9pOTE1X2dlbV9idXN5IHsKLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgYnVzeTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgYnVzeTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X0NBQ0hJTkdfTk9ORSAwCiAjZGVmaW5lIEk5MTVfQ0FDSElOR19DQUNIRUQgMQogI2RlZmluZSBJOTE1X0NBQ0hJTkdfRElTUExBWSAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9pOTE1X2dlbV9jYWNoaW5nIHsKLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgY2FjaGluZzsKLX07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIGNhY2hpbmc7Cit9OwogI2RlZmluZSBJOTE1X1RJTElOR19OT05FIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfVElMSU5HX1ggMQogI2RlZmluZSBJOTE1X1RJTElOR19ZIDIKICNkZWZpbmUgSTkxNV9CSVRfNl9TV0laWkxFX05PTkUgMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9CSVRfNl9TV0laWkxFXzkgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9CSVRfNl9TV0laWkxFXzlfMTAgMgogI2RlZmluZSBJOTE1X0JJVF82X1NXSVpaTEVfOV8xMSAzCiAjZGVmaW5lIEk5MTVfQklUXzZfU1dJWlpMRV85XzEwXzExIDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfQklUXzZfU1dJWlpMRV9VTktOT1dOIDUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfQklUXzZfU1dJWlpMRV85XzE3IDYKICNkZWZpbmUgSTkxNV9CSVRfNl9TV0laWkxFXzlfMTBfMTcgNwogc3RydWN0IGRybV9pOTE1X2dlbV9zZXRfdGlsaW5nIHsKKyAgX191MzIgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgdGlsaW5nX21vZGU7Ci0gX191MzIgc3RyaWRlOwotIF9fdTMyIHN3aXp6bGVfbW9kZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHRpbGluZ19tb2RlOworICBfX3UzMiBzdHJpZGU7CisgIF9fdTMyIHN3aXp6bGVfbW9kZTsKIH07Ci1zdHJ1Y3QgZHJtX2k5MTVfZ2VtX2dldF90aWxpbmcgewotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiB0aWxpbmdfbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3dpenpsZV9tb2RlOworc3RydWN0IGRybV9pOTE1X2dlbV9nZXRfdGlsaW5nIHsKKyAgX191MzIgaGFuZGxlOworICBfX3UzMiB0aWxpbmdfbW9kZTsKKyAgX191MzIgc3dpenpsZV9tb2RlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2dldF9hcGVydHVyZSB7Ci0gX191NjQgYXBlcl9zaXplOworICBfX3U2NCBhcGVyX3NpemU7CisgIF9fdTY0IGFwZXJfYXZhaWxhYmxlX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGFwZXJfYXZhaWxhYmxlX3NpemU7CiB9Owogc3RydWN0IGRybV9pOTE1X2dldF9waXBlX2Zyb21fY3J0Y19pZCB7Ci0gX191MzIgY3J0Y19pZDsKKyAgX191MzIgY3J0Y19pZDsKKyAgX191MzIgcGlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGlwZTsKIH07CiAjZGVmaW5lIEk5MTVfTUFEVl9XSUxMTkVFRCAwCiAjZGVmaW5lIEk5MTVfTUFEVl9ET05UTkVFRCAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0k5MTVfTUFEVl9QVVJHRUQgMgotc3RydWN0IGRybV9pOTE1X2dlbV9tYWR2aXNlIHsKLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgbWFkdjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmV0YWluZWQ7CitzdHJ1Y3QgZHJtX2k5MTVfZ2VtX21hZHZpc2UgeworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIG1hZHY7CisgIF9fdTMyIHJldGFpbmVkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEk5MTVfT1ZFUkxBWV9UWVBFX01BU0sgMHhmZgogI2RlZmluZSBJOTE1X09WRVJMQVlfWVVWX1BMQU5BUiAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X09WRVJMQVlfWVVWX1BBQ0tFRCAweDAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X09WRVJMQVlfUkdCIDB4MDMKICNkZWZpbmUgSTkxNV9PVkVSTEFZX0RFUFRIX01BU0sgMHhmZjAwCiAjZGVmaW5lIEk5MTVfT1ZFUkxBWV9SR0IyNCAweDEwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfT1ZFUkxBWV9SR0IxNiAweDIwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfT1ZFUkxBWV9SR0IxNSAweDMwMDAKICNkZWZpbmUgSTkxNV9PVkVSTEFZX1lVVjQyMiAweDAxMDAKICNkZWZpbmUgSTkxNV9PVkVSTEFZX1lVVjQxMSAweDAyMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEk5MTVfT1ZFUkxBWV9ZVVY0MjAgMHgwMzAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X09WRVJMQVlfWVVWNDEwIDB4MDQwMAogI2RlZmluZSBJOTE1X09WRVJMQVlfU1dBUF9NQVNLIDB4ZmYwMDAwCiAjZGVmaW5lIEk5MTVfT1ZFUkxBWV9OT19TV0FQIDB4MDAwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X09WRVJMQVlfVVZfU1dBUCAweDAxMDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTkxNV9PVkVSTEFZX1lfU1dBUCAweDAyMDAwMAogI2RlZmluZSBJOTE1X09WRVJMQVlfWV9BTkRfVVZfU1dBUCAweDAzMDAwMAogI2RlZmluZSBJOTE1X09WRVJMQVlfRkxBR1NfTUFTSyAweGZmMDAwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJOTE1X09WRVJMQVlfRU5BQkxFIDB4MDEwMDAwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX2ludGVsX292ZXJsYXlfcHV0X2ltYWdlIHsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBib19oYW5kbGU7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBib19oYW5kbGU7CisgIF9fdTE2IHN0cmlkZV9ZOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzdHJpZGVfWTsKLSBfX3UxNiBzdHJpZGVfVVY7Ci0gX191MzIgb2Zmc2V0X1k7Ci0gX191MzIgb2Zmc2V0X1U7CisgIF9fdTE2IHN0cmlkZV9VVjsKKyAgX191MzIgb2Zmc2V0X1k7CisgIF9fdTMyIG9mZnNldF9VOworICBfX3UzMiBvZmZzZXRfVjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgb2Zmc2V0X1Y7Ci0gX191MTYgc3JjX3dpZHRoOwotIF9fdTE2IHNyY19oZWlnaHQ7Ci0gX191MTYgc3JjX3NjYW5fd2lkdGg7CisgIF9fdTE2IHNyY193aWR0aDsKKyAgX191MTYgc3JjX2hlaWdodDsKKyAgX191MTYgc3JjX3NjYW5fd2lkdGg7CisgIF9fdTE2IHNyY19zY2FuX2hlaWdodDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc3JjX3NjYW5faGVpZ2h0OwotIF9fdTMyIGNydGNfaWQ7Ci0gX191MTYgZHN0X3g7Ci0gX191MTYgZHN0X3k7CisgIF9fdTMyIGNydGNfaWQ7CisgIF9fdTE2IGRzdF94OworICBfX3UxNiBkc3RfeTsKKyAgX191MTYgZHN0X3dpZHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBkc3Rfd2lkdGg7Ci0gX191MTYgZHN0X2hlaWdodDsKKyAgX191MTYgZHN0X2hlaWdodDsKIH07Ci0jZGVmaW5lIEk5MTVfT1ZFUkxBWV9VUERBVEVfQVRUUlMgKDE8PDApCisjZGVmaW5lIEk5MTVfT1ZFUkxBWV9VUERBVEVfQVRUUlMgKDEgPDwgMCkKKyNkZWZpbmUgSTkxNV9PVkVSTEFZX1VQREFURV9HQU1NQSAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSTkxNV9PVkVSTEFZX1VQREFURV9HQU1NQSAoMTw8MSkKIHN0cnVjdCBkcm1faW50ZWxfb3ZlcmxheV9hdHRycyB7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgY29sb3Jfa2V5OworICBfX3UzMiBmbGFnczsKKyAgX191MzIgY29sb3Jfa2V5OworICBfX3MzMiBicmlnaHRuZXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBicmlnaHRuZXNzOwotIF9fdTMyIGNvbnRyYXN0OwotIF9fdTMyIHNhdHVyYXRpb247Ci0gX191MzIgZ2FtbWEwOworICBfX3UzMiBjb250cmFzdDsKKyAgX191MzIgc2F0dXJhdGlvbjsKKyAgX191MzIgZ2FtbWEwOworICBfX3UzMiBnYW1tYTE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGdhbW1hMTsKLSBfX3UzMiBnYW1tYTI7Ci0gX191MzIgZ2FtbWEzOwotIF9fdTMyIGdhbW1hNDsKKyAgX191MzIgZ2FtbWEyOworICBfX3UzMiBnYW1tYTM7CisgIF9fdTMyIGdhbW1hNDsKKyAgX191MzIgZ2FtbWE1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBnYW1tYTU7CiB9OwotI2RlZmluZSBJOTE1X1NFVF9DT0xPUktFWV9OT05FICgxPDwwKQotI2RlZmluZSBJOTE1X1NFVF9DT0xPUktFWV9ERVNUSU5BVElPTiAoMTw8MSkKKyNkZWZpbmUgSTkxNV9TRVRfQ09MT1JLRVlfTk9ORSAoMSA8PCAwKQorI2RlZmluZSBJOTE1X1NFVF9DT0xPUktFWV9ERVNUSU5BVElPTiAoMSA8PCAxKQorI2RlZmluZSBJOTE1X1NFVF9DT0xPUktFWV9TT1VSQ0UgKDEgPDwgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEk5MTVfU0VUX0NPTE9SS0VZX1NPVVJDRSAoMTw8MikKIHN0cnVjdCBkcm1faW50ZWxfc3ByaXRlX2NvbG9ya2V5IHsKLSBfX3UzMiBwbGFuZV9pZDsKLSBfX3UzMiBtaW5fdmFsdWU7CisgIF9fdTMyIHBsYW5lX2lkOworICBfX3UzMiBtaW5fdmFsdWU7CisgIF9fdTMyIGNoYW5uZWxfbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2hhbm5lbF9tYXNrOwotIF9fdTMyIG1heF92YWx1ZTsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgbWF4X3ZhbHVlOworICBfX3UzMiBmbGFnczsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9pOTE1X2dlbV93YWl0IHsKLSBfX3UzMiBib19oYW5kbGU7Ci0gX191MzIgZmxhZ3M7Ci0gX19zNjQgdGltZW91dF9uczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGJvX2hhbmRsZTsKKyAgX191MzIgZmxhZ3M7CisgIF9fczY0IHRpbWVvdXRfbnM7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1faTkxNV9nZW1fY29udGV4dF9jcmVhdGUgewotIF9fdTMyIGN0eF9pZDsKLSBfX3UzMiBwYWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBjdHhfaWQ7CisgIF9fdTMyIHBhZDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9pOTE1X2dlbV9jb250ZXh0X2Rlc3Ryb3kgewotIF9fdTMyIGN0eF9pZDsKLSBfX3UzMiBwYWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBjdHhfaWQ7CisgIF9fdTMyIHBhZDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9pOTE1X3JlZ19yZWFkIHsKLSBfX3U2NCBvZmZzZXQ7Ci0gX191NjQgdmFsOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgb2Zmc2V0OworICBfX3U2NCB2YWw7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1faTkxNV9yZXNldF9zdGF0cyB7Ci0gX191MzIgY3R4X2lkOwotIF9fdTMyIGZsYWdzOworICBfX3UzMiBjdHhfaWQ7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiByZXNldF9jb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXRfY291bnQ7Ci0gX191MzIgYmF0Y2hfYWN0aXZlOwotIF9fdTMyIGJhdGNoX3BlbmRpbmc7Ci0gX191MzIgcGFkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgYmF0Y2hfYWN0aXZlOworICBfX3UzMiBiYXRjaF9wZW5kaW5nOworICBfX3UzMiBwYWQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBkcm1faTkxNV9nZW1fdXNlcnB0ciB7CisgIF9fdTY0IHVzZXJfcHRyOworICBfX3U2NCB1c2VyX3NpemU7CisgIF9fdTMyIGZsYWdzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSTkxNV9VU0VSUFRSX1JFQURfT05MWSAweDEKKyNkZWZpbmUgSTkxNV9VU0VSUFRSX1VOU1lOQ0hST05JWkVEIDB4ODAwMDAwMDAKKyAgX191MzIgaGFuZGxlOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL21nYV9kcm0uaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL21nYV9kcm0uaAppbmRleCA4ZTQzZTRkLi5kZWQ0ZDg5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9tZ2FfZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vbWdhX2RybS5oCkBAIC0zMSwyMiArMzEsMjIgQEAKICNkZWZpbmUgTUdBX1dBUlBfVEdaRiAoTUdBX0YpCiAjZGVmaW5lIE1HQV9XQVJQX1RHWkEgKE1HQV9BKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTUdBX1dBUlBfVEdaQUYgKE1HQV9GfE1HQV9BKQorI2RlZmluZSBNR0FfV0FSUF9UR1pBRiAoTUdBX0YgfCBNR0FfQSkKICNkZWZpbmUgTUdBX1dBUlBfVEdaUyAoTUdBX1MpCi0jZGVmaW5lIE1HQV9XQVJQX1RHWlNGIChNR0FfU3xNR0FfRikKLSNkZWZpbmUgTUdBX1dBUlBfVEdaU0EgKE1HQV9TfE1HQV9BKQorI2RlZmluZSBNR0FfV0FSUF9UR1pTRiAoTUdBX1MgfCBNR0FfRikKKyNkZWZpbmUgTUdBX1dBUlBfVEdaU0EgKE1HQV9TIHwgTUdBX0EpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNR0FfV0FSUF9UR1pTQUYgKE1HQV9TfE1HQV9GfE1HQV9BKQorI2RlZmluZSBNR0FfV0FSUF9UR1pTQUYgKE1HQV9TIHwgTUdBX0YgfCBNR0FfQSkKICNkZWZpbmUgTUdBX1dBUlBfVDJHWiAoTUdBX1QyKQotI2RlZmluZSBNR0FfV0FSUF9UMkdaRiAoTUdBX1QyfE1HQV9GKQotI2RlZmluZSBNR0FfV0FSUF9UMkdaQSAoTUdBX1QyfE1HQV9BKQorI2RlZmluZSBNR0FfV0FSUF9UMkdaRiAoTUdBX1QyIHwgTUdBX0YpCisjZGVmaW5lIE1HQV9XQVJQX1QyR1pBIChNR0FfVDIgfCBNR0FfQSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1HQV9XQVJQX1QyR1pBRiAoTUdBX1QyfE1HQV9BfE1HQV9GKQotI2RlZmluZSBNR0FfV0FSUF9UMkdaUyAoTUdBX1QyfE1HQV9TKQotI2RlZmluZSBNR0FfV0FSUF9UMkdaU0YgKE1HQV9UMnxNR0FfU3xNR0FfRikKLSNkZWZpbmUgTUdBX1dBUlBfVDJHWlNBIChNR0FfVDJ8TUdBX1N8TUdBX0EpCisjZGVmaW5lIE1HQV9XQVJQX1QyR1pBRiAoTUdBX1QyIHwgTUdBX0EgfCBNR0FfRikKKyNkZWZpbmUgTUdBX1dBUlBfVDJHWlMgKE1HQV9UMiB8IE1HQV9TKQorI2RlZmluZSBNR0FfV0FSUF9UMkdaU0YgKE1HQV9UMiB8IE1HQV9TIHwgTUdBX0YpCisjZGVmaW5lIE1HQV9XQVJQX1QyR1pTQSAoTUdBX1QyIHwgTUdBX1MgfCBNR0FfQSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1HQV9XQVJQX1QyR1pTQUYgKE1HQV9UMnxNR0FfU3xNR0FfRnxNR0FfQSkKKyNkZWZpbmUgTUdBX1dBUlBfVDJHWlNBRiAoTUdBX1QyIHwgTUdBX1MgfCBNR0FfRiB8IE1HQV9BKQogI2RlZmluZSBNR0FfTUFYX0cyMDBfUElQRVMgOAogI2RlZmluZSBNR0FfTUFYX0c0MDBfUElQRVMgMTYKICNkZWZpbmUgTUdBX01BWF9XQVJQX1BJUEVTIE1HQV9NQVhfRzQwMF9QSVBFUwpAQCAtODYsODMgKzg2LDgzIEBACiAjZW5kaWYKIHR5cGVkZWYgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGRzdG9yZzsKLSB1bnNpZ25lZCBpbnQgbWFjY2VzczsKLSB1bnNpZ25lZCBpbnQgcGxud3Q7Ci0gdW5zaWduZWQgaW50IGR3Z2N0bDsKKyAgdW5zaWduZWQgaW50IGRzdG9yZzsKKyAgdW5zaWduZWQgaW50IG1hY2Nlc3M7CisgIHVuc2lnbmVkIGludCBwbG53dDsKKyAgdW5zaWduZWQgaW50IGR3Z2N0bDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGFscGhhY3RybDsKLSB1bnNpZ25lZCBpbnQgZm9nY29sb3I7Ci0gdW5zaWduZWQgaW50IHdmbGFnOwotIHVuc2lnbmVkIGludCB0ZHVhbHN0YWdlMDsKKyAgdW5zaWduZWQgaW50IGFscGhhY3RybDsKKyAgdW5zaWduZWQgaW50IGZvZ2NvbG9yOworICB1bnNpZ25lZCBpbnQgd2ZsYWc7CisgIHVuc2lnbmVkIGludCB0ZHVhbHN0YWdlMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHRkdWFsc3RhZ2UxOwotIHVuc2lnbmVkIGludCBmY29sOwotIHVuc2lnbmVkIGludCBzdGVuY2lsOwotIHVuc2lnbmVkIGludCBzdGVuY2lsY3RsOworICB1bnNpZ25lZCBpbnQgdGR1YWxzdGFnZTE7CisgIHVuc2lnbmVkIGludCBmY29sOworICB1bnNpZ25lZCBpbnQgc3RlbmNpbDsKKyAgdW5zaWduZWQgaW50IHN0ZW5jaWxjdGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fbWdhX2NvbnRleHRfcmVnc190OwogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGludCBwaXRjaDsKKyAgdW5zaWduZWQgaW50IHBpdGNoOwogfSBkcm1fbWdhX3NlcnZlcl9yZWdzX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGludCB0ZXhjdGw7Ci0gdW5zaWduZWQgaW50IHRleGN0bDI7Ci0gdW5zaWduZWQgaW50IHRleGZpbHRlcjsKKyAgdW5zaWduZWQgaW50IHRleGN0bDsKKyAgdW5zaWduZWQgaW50IHRleGN0bDI7CisgIHVuc2lnbmVkIGludCB0ZXhmaWx0ZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0ZXhib3JkZXJjb2w7Ci0gdW5zaWduZWQgaW50IHRleG9yZzsKLSB1bnNpZ25lZCBpbnQgdGV4d2lkdGg7Ci0gdW5zaWduZWQgaW50IHRleGhlaWdodDsKKyAgdW5zaWduZWQgaW50IHRleGJvcmRlcmNvbDsKKyAgdW5zaWduZWQgaW50IHRleG9yZzsKKyAgdW5zaWduZWQgaW50IHRleHdpZHRoOworICB1bnNpZ25lZCBpbnQgdGV4aGVpZ2h0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdGV4b3JnMTsKLSB1bnNpZ25lZCBpbnQgdGV4b3JnMjsKLSB1bnNpZ25lZCBpbnQgdGV4b3JnMzsKLSB1bnNpZ25lZCBpbnQgdGV4b3JnNDsKKyAgdW5zaWduZWQgaW50IHRleG9yZzE7CisgIHVuc2lnbmVkIGludCB0ZXhvcmcyOworICB1bnNpZ25lZCBpbnQgdGV4b3JnMzsKKyAgdW5zaWduZWQgaW50IHRleG9yZzQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fbWdhX3RleHR1cmVfcmVnc190OwogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGludCBoZWFkOwotIHVuc2lnbmVkIGludCB3cmFwOworICB1bnNpZ25lZCBpbnQgaGVhZDsKKyAgdW5zaWduZWQgaW50IHdyYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fbWdhX2FnZV90OwogdHlwZWRlZiBzdHJ1Y3QgX2RybV9tZ2Ffc2FyZWEgewotIGRybV9tZ2FfY29udGV4dF9yZWdzX3QgY29udGV4dF9zdGF0ZTsKLSBkcm1fbWdhX3NlcnZlcl9yZWdzX3Qgc2VydmVyX3N0YXRlOworICBkcm1fbWdhX2NvbnRleHRfcmVnc190IGNvbnRleHRfc3RhdGU7CisgIGRybV9tZ2Ffc2VydmVyX3JlZ3NfdCBzZXJ2ZXJfc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRybV9tZ2FfdGV4dHVyZV9yZWdzX3QgdGV4X3N0YXRlWzJdOwotIHVuc2lnbmVkIGludCB3YXJwX3BpcGU7Ci0gdW5zaWduZWQgaW50IGRpcnR5OwotIHVuc2lnbmVkIGludCB2ZXJ0c2l6ZTsKKyAgZHJtX21nYV90ZXh0dXJlX3JlZ3NfdCB0ZXhfc3RhdGVbMl07CisgIHVuc2lnbmVkIGludCB3YXJwX3BpcGU7CisgIHVuc2lnbmVkIGludCBkaXJ0eTsKKyAgdW5zaWduZWQgaW50IHZlcnRzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBib3hlc1tNR0FfTlJfU0FSRUFfQ0xJUFJFQ1RTXTsKLSB1bnNpZ25lZCBpbnQgbmJveDsKLSB1bnNpZ25lZCBpbnQgcmVxX2RyYXdhYmxlOwotIHVuc2lnbmVkIGludCByZXFfZHJhd19idWZmZXI7CisgIHN0cnVjdCBkcm1fY2xpcF9yZWN0IGJveGVzW01HQV9OUl9TQVJFQV9DTElQUkVDVFNdOworICB1bnNpZ25lZCBpbnQgbmJveDsKKyAgdW5zaWduZWQgaW50IHJlcV9kcmF3YWJsZTsKKyAgdW5zaWduZWQgaW50IHJlcV9kcmF3X2J1ZmZlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGV4cG9ydGVkX2RyYXdhYmxlOwotIHVuc2lnbmVkIGludCBleHBvcnRlZF9pbmRleDsKLSB1bnNpZ25lZCBpbnQgZXhwb3J0ZWRfc3RhbXA7Ci0gdW5zaWduZWQgaW50IGV4cG9ydGVkX2J1ZmZlcnM7CisgIHVuc2lnbmVkIGludCBleHBvcnRlZF9kcmF3YWJsZTsKKyAgdW5zaWduZWQgaW50IGV4cG9ydGVkX2luZGV4OworICB1bnNpZ25lZCBpbnQgZXhwb3J0ZWRfc3RhbXA7CisgIHVuc2lnbmVkIGludCBleHBvcnRlZF9idWZmZXJzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZXhwb3J0ZWRfbmZyb250OwotIHVuc2lnbmVkIGludCBleHBvcnRlZF9uYmFjazsKLSBpbnQgZXhwb3J0ZWRfYmFja194LCBleHBvcnRlZF9mcm9udF94LCBleHBvcnRlZF93OwotIGludCBleHBvcnRlZF9iYWNrX3ksIGV4cG9ydGVkX2Zyb250X3ksIGV4cG9ydGVkX2g7CisgIHVuc2lnbmVkIGludCBleHBvcnRlZF9uZnJvbnQ7CisgIHVuc2lnbmVkIGludCBleHBvcnRlZF9uYmFjazsKKyAgaW50IGV4cG9ydGVkX2JhY2tfeCwgZXhwb3J0ZWRfZnJvbnRfeCwgZXhwb3J0ZWRfdzsKKyAgaW50IGV4cG9ydGVkX2JhY2tfeSwgZXhwb3J0ZWRfZnJvbnRfeSwgZXhwb3J0ZWRfaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGRybV9jbGlwX3JlY3QgZXhwb3J0ZWRfYm94ZXNbTUdBX05SX1NBUkVBX0NMSVBSRUNUU107Ci0gdW5zaWduZWQgaW50IHN0YXR1c1s0XTsKLSB1bnNpZ25lZCBpbnQgbGFzdF93cmFwOwotIGRybV9tZ2FfYWdlX3QgbGFzdF9mcmFtZTsKKyAgc3RydWN0IGRybV9jbGlwX3JlY3QgZXhwb3J0ZWRfYm94ZXNbTUdBX05SX1NBUkVBX0NMSVBSRUNUU107CisgIHVuc2lnbmVkIGludCBzdGF0dXNbNF07CisgIHVuc2lnbmVkIGludCBsYXN0X3dyYXA7CisgIGRybV9tZ2FfYWdlX3QgbGFzdF9mcmFtZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGxhc3RfZW5xdWV1ZTsKLSB1bnNpZ25lZCBpbnQgbGFzdF9kaXNwYXRjaDsKLSB1bnNpZ25lZCBpbnQgbGFzdF9xdWllc2NlbnQ7Ci0gc3RydWN0IGRybV90ZXhfcmVnaW9uIHRleExpc3RbTUdBX05SX1RFWF9IRUFQU11bTUdBX05SX1RFWF9SRUdJT05TICsgMV07CisgIHVuc2lnbmVkIGludCBsYXN0X2VucXVldWU7CisgIHVuc2lnbmVkIGludCBsYXN0X2Rpc3BhdGNoOworICB1bnNpZ25lZCBpbnQgbGFzdF9xdWllc2NlbnQ7CisgIHN0cnVjdCBkcm1fdGV4X3JlZ2lvbiB0ZXhMaXN0W01HQV9OUl9URVhfSEVBUFNdW01HQV9OUl9URVhfUkVHSU9OUyArIDFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdGV4QWdlW01HQV9OUl9URVhfSEVBUFNdOwotIGludCBjdHhPd25lcjsKKyAgdW5zaWduZWQgaW50IHRleEFnZVtNR0FfTlJfVEVYX0hFQVBTXTsKKyAgaW50IGN0eE93bmVyOwogfSBkcm1fbWdhX3NhcmVhX3Q7CiAjZGVmaW5lIERSTV9NR0FfSU5JVCAweDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTgxLDExNSArMTgxLDExNSBAQAogI2RlZmluZSBEUk1fTUdBX1dBSVRfRkVOQ0UgMHgwYgogI2RlZmluZSBEUk1fTUdBX0RNQV9CT09UU1RSQVAgMHgwYwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX01HQV9JTklUIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTUdBX0lOSVQsIGRybV9tZ2FfaW5pdF90KQotI2RlZmluZSBEUk1fSU9DVExfTUdBX0ZMVVNIIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTUdBX0ZMVVNILCBzdHJ1Y3QgZHJtX2xvY2spCi0jZGVmaW5lIERSTV9JT0NUTF9NR0FfUkVTRVQgRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9SRVNFVCkKLSNkZWZpbmUgRFJNX0lPQ1RMX01HQV9TV0FQIERSTV9JTyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfU1dBUCkKKyNkZWZpbmUgRFJNX0lPQ1RMX01HQV9JTklUIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfSU5JVCwgZHJtX21nYV9pbml0X3QpCisjZGVmaW5lIERSTV9JT0NUTF9NR0FfRkxVU0ggRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9GTFVTSCwgc3RydWN0IGRybV9sb2NrKQorI2RlZmluZSBEUk1fSU9DVExfTUdBX1JFU0VUIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9SRVNFVCkKKyNkZWZpbmUgRFJNX0lPQ1RMX01HQV9TV0FQIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9TV0FQKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX01HQV9DTEVBUiBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9DTEVBUiwgZHJtX21nYV9jbGVhcl90KQotI2RlZmluZSBEUk1fSU9DVExfTUdBX1ZFUlRFWCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9WRVJURVgsIGRybV9tZ2FfdmVydGV4X3QpCi0jZGVmaW5lIERSTV9JT0NUTF9NR0FfSU5ESUNFUyBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9JTkRJQ0VTLCBkcm1fbWdhX2luZGljZXNfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX01HQV9JTE9BRCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9JTE9BRCwgZHJtX21nYV9pbG9hZF90KQorI2RlZmluZSBEUk1fSU9DVExfTUdBX0NMRUFSIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfQ0xFQVIsIGRybV9tZ2FfY2xlYXJfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX01HQV9WRVJURVggRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9WRVJURVgsIGRybV9tZ2FfdmVydGV4X3QpCisjZGVmaW5lIERSTV9JT0NUTF9NR0FfSU5ESUNFUyBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTUdBX0lORElDRVMsIGRybV9tZ2FfaW5kaWNlc190KQorI2RlZmluZSBEUk1fSU9DVExfTUdBX0lMT0FEIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfSUxPQUQsIGRybV9tZ2FfaWxvYWRfdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9NR0FfQkxJVCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9CTElULCBkcm1fbWdhX2JsaXRfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX01HQV9CTElUIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfQkxJVCwgZHJtX21nYV9ibGl0X3QpCiAjZGVmaW5lIERSTV9JT0NUTF9NR0FfR0VUUEFSQU0gRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfR0VUUEFSQU0sIGRybV9tZ2FfZ2V0cGFyYW1fdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX01HQV9TRVRfRkVOQ0UgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfU0VUX0ZFTkNFLCBfX3UzMikKKyNkZWZpbmUgRFJNX0lPQ1RMX01HQV9TRVRfRkVOQ0UgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX01HQV9TRVRfRkVOQ0UsIF9fdTMyKQogI2RlZmluZSBEUk1fSU9DVExfTUdBX1dBSVRfRkVOQ0UgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfV0FJVF9GRU5DRSwgX191MzIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfTUdBX0RNQV9CT09UU1RSQVAgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9NR0FfRE1BX0JPT1RTVFJBUCwgZHJtX21nYV9kbWFfYm9vdHN0cmFwX3QpCiB0eXBlZGVmIHN0cnVjdCBfZHJtX21nYV93YXJwX2luZGV4IHsKLSBpbnQgaW5zdGFsbGVkOwotIHVuc2lnbmVkIGxvbmcgcGh5c19hZGRyOworICBpbnQgaW5zdGFsbGVkOworICB1bnNpZ25lZCBsb25nIHBoeXNfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHNpemU7CisgIGludCBzaXplOwogfSBkcm1fbWdhX3dhcnBfaW5kZXhfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9tZ2FfaW5pdCB7Ci0gZW51bSB7CisgIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNR0FfSU5JVF9ETUEgPSAweDAxLAotIE1HQV9DTEVBTlVQX0RNQSA9IDB4MDIKLSB9IGZ1bmM7Ci0gdW5zaWduZWQgbG9uZyBzYXJlYV9wcml2X29mZnNldDsKKyAgICBNR0FfSU5JVF9ETUEgPSAweDAxLAorICAgIE1HQV9DTEVBTlVQX0RNQSA9IDB4MDIKKyAgfSBmdW5jOworICB1bnNpZ25lZCBsb25nIHNhcmVhX3ByaXZfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2hpcHNldDsKLSBpbnQgc2dyYW07Ci0gdW5zaWduZWQgaW50IG1hY2Nlc3M7Ci0gdW5zaWduZWQgaW50IGZiX2NwcDsKKyAgaW50IGNoaXBzZXQ7CisgIGludCBzZ3JhbTsKKyAgdW5zaWduZWQgaW50IG1hY2Nlc3M7CisgIHVuc2lnbmVkIGludCBmYl9jcHA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBmcm9udF9vZmZzZXQsIGZyb250X3BpdGNoOwotIHVuc2lnbmVkIGludCBiYWNrX29mZnNldCwgYmFja19waXRjaDsKLSB1bnNpZ25lZCBpbnQgZGVwdGhfY3BwOwotIHVuc2lnbmVkIGludCBkZXB0aF9vZmZzZXQsIGRlcHRoX3BpdGNoOworICB1bnNpZ25lZCBpbnQgZnJvbnRfb2Zmc2V0LCBmcm9udF9waXRjaDsKKyAgdW5zaWduZWQgaW50IGJhY2tfb2Zmc2V0LCBiYWNrX3BpdGNoOworICB1bnNpZ25lZCBpbnQgZGVwdGhfY3BwOworICB1bnNpZ25lZCBpbnQgZGVwdGhfb2Zmc2V0LCBkZXB0aF9waXRjaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHRleHR1cmVfb2Zmc2V0W01HQV9OUl9URVhfSEVBUFNdOwotIHVuc2lnbmVkIGludCB0ZXh0dXJlX3NpemVbTUdBX05SX1RFWF9IRUFQU107Ci0gdW5zaWduZWQgbG9uZyBmYl9vZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyBtbWlvX29mZnNldDsKKyAgdW5zaWduZWQgaW50IHRleHR1cmVfb2Zmc2V0W01HQV9OUl9URVhfSEVBUFNdOworICB1bnNpZ25lZCBpbnQgdGV4dHVyZV9zaXplW01HQV9OUl9URVhfSEVBUFNdOworICB1bnNpZ25lZCBsb25nIGZiX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBtbWlvX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzdGF0dXNfb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgd2FycF9vZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyBwcmltYXJ5X29mZnNldDsKLSB1bnNpZ25lZCBsb25nIGJ1ZmZlcnNfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIHN0YXR1c19vZmZzZXQ7CisgIHVuc2lnbmVkIGxvbmcgd2FycF9vZmZzZXQ7CisgIHVuc2lnbmVkIGxvbmcgcHJpbWFyeV9vZmZzZXQ7CisgIHVuc2lnbmVkIGxvbmcgYnVmZmVyc19vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fbWdhX2luaXRfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9tZ2FfZG1hX2Jvb3RzdHJhcCB7Ci0gdW5zaWduZWQgbG9uZyB0ZXh0dXJlX2hhbmRsZTsKLSBfX3UzMiB0ZXh0dXJlX3NpemU7CisgIHVuc2lnbmVkIGxvbmcgdGV4dHVyZV9oYW5kbGU7CisgIF9fdTMyIHRleHR1cmVfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcHJpbWFyeV9zaXplOwotIF9fdTMyIHNlY29uZGFyeV9iaW5fY291bnQ7Ci0gX191MzIgc2Vjb25kYXJ5X2Jpbl9zaXplOwotIF9fdTMyIGFncF9tb2RlOworICBfX3UzMiBwcmltYXJ5X3NpemU7CisgIF9fdTMyIHNlY29uZGFyeV9iaW5fY291bnQ7CisgIF9fdTMyIHNlY29uZGFyeV9iaW5fc2l6ZTsKKyAgX191MzIgYWdwX21vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYWdwX3NpemU7CisgIF9fdTggYWdwX3NpemU7CiB9IGRybV9tZ2FfZG1hX2Jvb3RzdHJhcF90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX21nYV9jbGVhciB7Ci0gdW5zaWduZWQgaW50IGZsYWdzOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBjbGVhcl9jb2xvcjsKLSB1bnNpZ25lZCBpbnQgY2xlYXJfZGVwdGg7Ci0gdW5zaWduZWQgaW50IGNvbG9yX21hc2s7Ci0gdW5zaWduZWQgaW50IGRlcHRoX21hc2s7CisgIHVuc2lnbmVkIGludCBjbGVhcl9jb2xvcjsKKyAgdW5zaWduZWQgaW50IGNsZWFyX2RlcHRoOworICB1bnNpZ25lZCBpbnQgY29sb3JfbWFzazsKKyAgdW5zaWduZWQgaW50IGRlcHRoX21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fbWdhX2NsZWFyX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fbWdhX3ZlcnRleCB7Ci0gaW50IGlkeDsKLSBpbnQgdXNlZDsKKyAgaW50IGlkeDsKKyAgaW50IHVzZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBkaXNjYXJkOworICBpbnQgZGlzY2FyZDsKIH0gZHJtX21nYV92ZXJ0ZXhfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9tZ2FfaW5kaWNlcyB7Ci0gaW50IGlkeDsKKyAgaW50IGlkeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN0YXJ0OwotIHVuc2lnbmVkIGludCBlbmQ7Ci0gaW50IGRpc2NhcmQ7CisgIHVuc2lnbmVkIGludCBzdGFydDsKKyAgdW5zaWduZWQgaW50IGVuZDsKKyAgaW50IGRpc2NhcmQ7CiB9IGRybV9tZ2FfaW5kaWNlc190OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9tZ2FfaWxvYWQgewotIGludCBpZHg7Ci0gdW5zaWduZWQgaW50IGRzdG9yZzsKLSB1bnNpZ25lZCBpbnQgbGVuZ3RoOworICBpbnQgaWR4OworICB1bnNpZ25lZCBpbnQgZHN0b3JnOworICB1bnNpZ25lZCBpbnQgbGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gZHJtX21nYV9pbG9hZF90OwogdHlwZWRlZiBzdHJ1Y3QgX2RybV9tZ2FfYmxpdCB7Ci0gdW5zaWduZWQgaW50IHBsYW5lbWFzazsKLSB1bnNpZ25lZCBpbnQgc3Jjb3JnOworICB1bnNpZ25lZCBpbnQgcGxhbmVtYXNrOworICB1bnNpZ25lZCBpbnQgc3Jjb3JnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZHN0b3JnOwotIGludCBzcmNfcGl0Y2gsIGRzdF9waXRjaDsKLSBpbnQgZGVsdGFfc3gsIGRlbHRhX3N5OwotIGludCBkZWx0YV9keCwgZGVsdGFfZHk7CisgIHVuc2lnbmVkIGludCBkc3Rvcmc7CisgIGludCBzcmNfcGl0Y2gsIGRzdF9waXRjaDsKKyAgaW50IGRlbHRhX3N4LCBkZWx0YV9zeTsKKyAgaW50IGRlbHRhX2R4LCBkZWx0YV9keTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGhlaWdodCwgeWRpcjsKLSBpbnQgc291cmNlX3BpdGNoLCBkZXN0X3BpdGNoOworICBpbnQgaGVpZ2h0LCB5ZGlyOworICBpbnQgc291cmNlX3BpdGNoLCBkZXN0X3BpdGNoOwogfSBkcm1fbWdhX2JsaXRfdDsKICNkZWZpbmUgTUdBX1BBUkFNX0lSUV9OUiAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNR0FfUEFSQU1fQ0FSRF9UWVBFIDIKIHR5cGVkZWYgc3RydWN0IGRybV9tZ2FfZ2V0cGFyYW0gewotIGludCBwYXJhbTsKLSB2b2lkIF9fdXNlciAqdmFsdWU7CisgIGludCBwYXJhbTsKKyAgdm9pZCBfX3VzZXIgKiB2YWx1ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV9tZ2FfZ2V0cGFyYW1fdDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vbXNtX2RybS5oIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vbXNtX2RybS5oCmluZGV4IDAzM2JiMzkuLjhkYjRiMGQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvZHJtL21zbV9kcm0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2RybS9tc21fZHJtLmgKQEAgLTI3LDk5ICsyNywxMDQgQEAKICNkZWZpbmUgTVNNX1BJUEVfM0QwIDB4MTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX21zbV90aW1lc3BlYyB7Ci0gaW50NjRfdCB0dl9zZWM7Ci0gaW50NjRfdCB0dl9uc2VjOworICBpbnQ2NF90IHR2X3NlYzsKKyAgaW50NjRfdCB0dl9uc2VjOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TTV9QQVJBTV9HUFVfSUQgMHgwMQogI2RlZmluZSBNU01fUEFSQU1fR01FTV9TSVpFIDB4MDIKKyNkZWZpbmUgTVNNX1BBUkFNX0NISVBfSUQgMHgwMwogc3RydWN0IGRybV9tc21fcGFyYW0gewotIHVpbnQzMl90IHBpcGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHBhcmFtOwotIHVpbnQ2NF90IHZhbHVlOworICB1aW50MzJfdCBwaXBlOworICB1aW50MzJfdCBwYXJhbTsKKyAgdWludDY0X3QgdmFsdWU7CiB9OwotI2RlZmluZSBNU01fQk9fU0NBTk9VVCAweDAwMDAwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNU01fQk9fU0NBTk9VVCAweDAwMDAwMDAxCiAjZGVmaW5lIE1TTV9CT19HUFVfUkVBRE9OTFkgMHgwMDAwMDAwMgogI2RlZmluZSBNU01fQk9fQ0FDSEVfTUFTSyAweDAwMGYwMDAwCiAjZGVmaW5lIE1TTV9CT19DQUNIRUQgMHgwMDAxMDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNNX0JPX1dDIDB4MDAwMjAwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TTV9CT19VTkNBQ0hFRCAweDAwMDQwMDAwCisjZGVmaW5lIE1TTV9CT19GTEFHUyAoTVNNX0JPX1NDQU5PVVQgfCBNU01fQk9fR1BVX1JFQURPTkxZIHwgTVNNX0JPX0NBQ0hFRCB8IE1TTV9CT19XQyB8IE1TTV9CT19VTkNBQ0hFRCkKIHN0cnVjdCBkcm1fbXNtX2dlbV9uZXcgewotIHVpbnQ2NF90IHNpemU7Ci0gdWludDMyX3QgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDY0X3Qgc2l6ZTsKKyAgdWludDMyX3QgZmxhZ3M7CisgIHVpbnQzMl90IGhhbmRsZTsKIH07Ci1zdHJ1Y3QgZHJtX21zbV9nZW1faW5mbyB7Ci0gdWludDMyX3QgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBwYWQ7Ci0gdWludDY0X3Qgb2Zmc2V0Oworc3RydWN0IGRybV9tc21fZ2VtX2luZm8geworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IHBhZDsKKyAgdWludDY0X3Qgb2Zmc2V0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE1TTV9QUkVQX1JFQUQgMHgwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNNX1BSRVBfV1JJVEUgMHgwMgogI2RlZmluZSBNU01fUFJFUF9OT1NZTkMgMHgwNAotc3RydWN0IGRybV9tc21fZ2VtX2NwdV9wcmVwIHsKLSB1aW50MzJfdCBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IG9wOwotIHN0cnVjdCBkcm1fbXNtX3RpbWVzcGVjIHRpbWVvdXQ7CisjZGVmaW5lIE1TTV9QUkVQX0ZMQUdTIChNU01fUFJFUF9SRUFEIHwgTVNNX1BSRVBfV1JJVEUgfCBNU01fUFJFUF9OT1NZTkMpCitzdHJ1Y3QgZHJtX21zbV9nZW1fY3B1X3ByZXAgeworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IG9wOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGRybV9tc21fdGltZXNwZWMgdGltZW91dDsKIH07CiBzdHJ1Y3QgZHJtX21zbV9nZW1fY3B1X2ZpbmkgeworICB1aW50MzJfdCBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKIH07CiBzdHJ1Y3QgZHJtX21zbV9nZW1fc3VibWl0X3JlbG9jIHsKLSB1aW50MzJfdCBzdWJtaXRfb2Zmc2V0OworICB1aW50MzJfdCBzdWJtaXRfb2Zmc2V0OworICB1aW50MzJfdCBvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3Qgb3I7Ci0gaW50MzJfdCBzaGlmdDsKLSB1aW50MzJfdCByZWxvY19pZHg7Ci0gdWludDY0X3QgcmVsb2Nfb2Zmc2V0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50MzJfdCBzaGlmdDsKKyAgdWludDMyX3QgcmVsb2NfaWR4OworICB1aW50NjRfdCByZWxvY19vZmZzZXQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNNX1NVQk1JVF9DTURfQlVGIDB4MDAwMQogI2RlZmluZSBNU01fU1VCTUlUX0NNRF9JQl9UQVJHRVRfQlVGIDB4MDAwMgogI2RlZmluZSBNU01fU1VCTUlUX0NNRF9DVFhfUkVTVE9SRV9CVUYgMHgwMDAzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9tc21fZ2VtX3N1Ym1pdF9jbWQgewotIHVpbnQzMl90IHR5cGU7Ci0gdWludDMyX3Qgc3VibWl0X2lkeDsKLSB1aW50MzJfdCBzdWJtaXRfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBzaXplOwotIHVpbnQzMl90IHBhZDsKLSB1aW50MzJfdCBucl9yZWxvY3M7Ci0gdWludDY0X3QgX191c2VyIHJlbG9jczsKKyAgdWludDMyX3QgdHlwZTsKKyAgdWludDMyX3Qgc3VibWl0X2lkeDsKKyAgdWludDMyX3Qgc3VibWl0X29mZnNldDsKKyAgdWludDMyX3Qgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQzMl90IHBhZDsKKyAgdWludDMyX3QgbnJfcmVsb2NzOworICB1aW50NjRfdCBfX3VzZXIgcmVsb2NzOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TTV9TVUJNSVRfQk9fUkVBRCAweDAwMDEKICNkZWZpbmUgTVNNX1NVQk1JVF9CT19XUklURSAweDAwMDIKKyNkZWZpbmUgTVNNX1NVQk1JVF9CT19GTEFHUyAoTVNNX1NVQk1JVF9CT19SRUFEIHwgTVNNX1NVQk1JVF9CT19XUklURSkKIHN0cnVjdCBkcm1fbXNtX2dlbV9zdWJtaXRfYm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBmbGFnczsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDY0X3QgcHJlc3VtZWQ7CisgIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQ2NF90IHByZXN1bWVkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX21zbV9nZW1fc3VibWl0IHsKLSB1aW50MzJfdCBwaXBlOwotIHVpbnQzMl90IGZlbmNlOwotIHVpbnQzMl90IG5yX2JvczsKKyAgdWludDMyX3QgcGlwZTsKKyAgdWludDMyX3QgZmVuY2U7CisgIHVpbnQzMl90IG5yX2JvczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgbnJfY21kczsKLSB1aW50NjRfdCBfX3VzZXIgYm9zOwotIHVpbnQ2NF90IF9fdXNlciBjbWRzOworICB1aW50MzJfdCBucl9jbWRzOworICB1aW50NjRfdCBfX3VzZXIgYm9zOworICB1aW50NjRfdCBfX3VzZXIgY21kczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9tc21fd2FpdF9mZW5jZSB7Ci0gdWludDMyX3QgZmVuY2U7Ci0gdWludDMyX3QgcGFkOwotIHN0cnVjdCBkcm1fbXNtX3RpbWVzcGVjIHRpbWVvdXQ7CisgIHVpbnQzMl90IGZlbmNlOworICB1aW50MzJfdCBwYWQ7CisgIHN0cnVjdCBkcm1fbXNtX3RpbWVzcGVjIHRpbWVvdXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRFJNX01TTV9HRVRfUEFSQU0gMHgwMApAQCAtMTM2LDkgKzE0MSw5IEBACiAjZGVmaW5lIERSTV9JT0NUTF9NU01fR0VNX05FVyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX01TTV9HRU1fTkVXLCBzdHJ1Y3QgZHJtX21zbV9nZW1fbmV3KQogI2RlZmluZSBEUk1fSU9DVExfTVNNX0dFTV9JTkZPIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTVNNX0dFTV9JTkZPLCBzdHJ1Y3QgZHJtX21zbV9nZW1faW5mbykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9NU01fR0VNX0NQVV9QUkVQIERSTV9JT1cgKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTVNNX0dFTV9DUFVfUFJFUCwgc3RydWN0IGRybV9tc21fZ2VtX2NwdV9wcmVwKQotI2RlZmluZSBEUk1fSU9DVExfTVNNX0dFTV9DUFVfRklOSSBEUk1fSU9XIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX01TTV9HRU1fQ1BVX0ZJTkksIHN0cnVjdCBkcm1fbXNtX2dlbV9jcHVfZmluaSkKKyNkZWZpbmUgRFJNX0lPQ1RMX01TTV9HRU1fQ1BVX1BSRVAgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX01TTV9HRU1fQ1BVX1BSRVAsIHN0cnVjdCBkcm1fbXNtX2dlbV9jcHVfcHJlcCkKKyNkZWZpbmUgRFJNX0lPQ1RMX01TTV9HRU1fQ1BVX0ZJTkkgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX01TTV9HRU1fQ1BVX0ZJTkksIHN0cnVjdCBkcm1fbXNtX2dlbV9jcHVfZmluaSkKICNkZWZpbmUgRFJNX0lPQ1RMX01TTV9HRU1fU1VCTUlUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fTVNNX0dFTV9TVUJNSVQsIHN0cnVjdCBkcm1fbXNtX2dlbV9zdWJtaXQpCi0jZGVmaW5lIERSTV9JT0NUTF9NU01fV0FJVF9GRU5DRSBEUk1fSU9XIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX01TTV9XQUlUX0ZFTkNFLCBzdHJ1Y3QgZHJtX21zbV93YWl0X2ZlbmNlKQorI2RlZmluZSBEUk1fSU9DVExfTVNNX1dBSVRfRkVOQ0UgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX01TTV9XQUlUX0ZFTkNFLCBzdHJ1Y3QgZHJtX21zbV93YWl0X2ZlbmNlKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vbm91dmVhdV9kcm0uaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL25vdXZlYXVfZHJtLmgKaW5kZXggMGEyOTAwZi4uMjkyNDhhMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vbm91dmVhdV9kcm0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2RybS9ub3V2ZWF1X2RybS5oCkBAIC0xOCw2ICsxOCwxMSBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9fTk9VVkVBVV9EUk1fSF9fCiAjZGVmaW5lIF9fTk9VVkVBVV9EUk1fSF9fCisjZGVmaW5lIERSTV9OT1VWRUFVX0VWRU5UX05WSUYgMHg4MDAwMDAwMAorI2RlZmluZSBOT1VWRUFVX0FCSTE2X0NMSUVOVCAweGZmZmZmZmZmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBOT1VWRUFVX0FCSTE2X0RFVklDRSAweGRkZGRkZGRkCisjZGVmaW5lIE5PVVZFQVVfQUJJMTZfQ0hBTihuKSAoMHhjY2NjMDAwMCB8IChuKSkKICNkZWZpbmUgTk9VVkVBVV9HRU1fRE9NQUlOX0NQVSAoMSA8PCAwKQogI2RlZmluZSBOT1VWRUFVX0dFTV9ET01BSU5fVlJBTSAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTMyLDM4ICszNywzOCBAQAogI2RlZmluZSBOT1VWRUFVX0dFTV9USUxFX05PTkNPTlRJRyAweDAwMDAwMDA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9ub3V2ZWF1X2dlbV9pbmZvIHsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgZG9tYWluOwotIHVpbnQ2NF90IHNpemU7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgZG9tYWluOworICB1aW50NjRfdCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBvZmZzZXQ7Ci0gdWludDY0X3QgbWFwX2hhbmRsZTsKLSB1aW50MzJfdCB0aWxlX21vZGU7Ci0gdWludDMyX3QgdGlsZV9mbGFnczsKKyAgdWludDY0X3Qgb2Zmc2V0OworICB1aW50NjRfdCBtYXBfaGFuZGxlOworICB1aW50MzJfdCB0aWxlX21vZGU7CisgIHVpbnQzMl90IHRpbGVfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1fbmV3IHsKLSBzdHJ1Y3QgZHJtX25vdXZlYXVfZ2VtX2luZm8gaW5mbzsKLSB1aW50MzJfdCBjaGFubmVsX2hpbnQ7CisgIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1faW5mbyBpbmZvOworICB1aW50MzJfdCBjaGFubmVsX2hpbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGFsaWduOworICB1aW50MzJfdCBhbGlnbjsKIH07CiAjZGVmaW5lIE5PVVZFQVVfR0VNX01BWF9CVUZGRVJTIDEwMjQKIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1fcHVzaGJ1Zl9ib19wcmVzdW1lZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHZhbGlkOwotIHVpbnQzMl90IGRvbWFpbjsKLSB1aW50NjRfdCBvZmZzZXQ7CisgIHVpbnQzMl90IHZhbGlkOworICB1aW50MzJfdCBkb21haW47CisgIHVpbnQ2NF90IG9mZnNldDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9ub3V2ZWF1X2dlbV9wdXNoYnVmX2JvIHsKLSB1aW50NjRfdCB1c2VyX3ByaXY7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IHJlYWRfZG9tYWluczsKKyAgdWludDY0X3QgdXNlcl9wcml2OworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IHJlYWRfZG9tYWluczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3Qgd3JpdGVfZG9tYWluczsKLSB1aW50MzJfdCB2YWxpZF9kb21haW5zOwotIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1fcHVzaGJ1Zl9ib19wcmVzdW1lZCBwcmVzdW1lZDsKKyAgdWludDMyX3Qgd3JpdGVfZG9tYWluczsKKyAgdWludDMyX3QgdmFsaWRfZG9tYWluczsKKyAgc3RydWN0IGRybV9ub3V2ZWF1X2dlbV9wdXNoYnVmX2JvX3ByZXN1bWVkIHByZXN1bWVkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5PVVZFQVVfR0VNX1JFTE9DX0xPVyAoMSA8PCAwKQpAQCAtNzIsNTEgKzc3LDUxIEBACiAjZGVmaW5lIE5PVVZFQVVfR0VNX01BWF9SRUxPQ1MgMTAyNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1fcHVzaGJ1Zl9yZWxvYyB7Ci0gdWludDMyX3QgcmVsb2NfYm9faW5kZXg7Ci0gdWludDMyX3QgcmVsb2NfYm9fb2Zmc2V0OwotIHVpbnQzMl90IGJvX2luZGV4OworICB1aW50MzJfdCByZWxvY19ib19pbmRleDsKKyAgdWludDMyX3QgcmVsb2NfYm9fb2Zmc2V0OworICB1aW50MzJfdCBib19pbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZmxhZ3M7Ci0gdWludDMyX3QgZGF0YTsKLSB1aW50MzJfdCB2b3I7Ci0gdWludDMyX3QgdG9yOworICB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgZGF0YTsKKyAgdWludDMyX3Qgdm9yOworICB1aW50MzJfdCB0b3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTk9VVkVBVV9HRU1fTUFYX1BVU0ggNTEyCiBzdHJ1Y3QgZHJtX25vdXZlYXVfZ2VtX3B1c2hidWZfcHVzaCB7Ci0gdWludDMyX3QgYm9faW5kZXg7CisgIHVpbnQzMl90IGJvX2luZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBwYWQ7Ci0gdWludDY0X3Qgb2Zmc2V0OwotIHVpbnQ2NF90IGxlbmd0aDsKKyAgdWludDMyX3QgcGFkOworICB1aW50NjRfdCBvZmZzZXQ7CisgIHVpbnQ2NF90IGxlbmd0aDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9ub3V2ZWF1X2dlbV9wdXNoYnVmIHsKLSB1aW50MzJfdCBjaGFubmVsOwotIHVpbnQzMl90IG5yX2J1ZmZlcnM7Ci0gdWludDY0X3QgYnVmZmVyczsKKyAgdWludDMyX3QgY2hhbm5lbDsKKyAgdWludDMyX3QgbnJfYnVmZmVyczsKKyAgdWludDY0X3QgYnVmZmVyczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgbnJfcmVsb2NzOwotIHVpbnQzMl90IG5yX3B1c2g7Ci0gdWludDY0X3QgcmVsb2NzOwotIHVpbnQ2NF90IHB1c2g7CisgIHVpbnQzMl90IG5yX3JlbG9jczsKKyAgdWludDMyX3QgbnJfcHVzaDsKKyAgdWludDY0X3QgcmVsb2NzOworICB1aW50NjRfdCBwdXNoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBzdWZmaXgwOwotIHVpbnQzMl90IHN1ZmZpeDE7Ci0gdWludDY0X3QgdnJhbV9hdmFpbGFibGU7Ci0gdWludDY0X3QgZ2FydF9hdmFpbGFibGU7CisgIHVpbnQzMl90IHN1ZmZpeDA7CisgIHVpbnQzMl90IHN1ZmZpeDE7CisgIHVpbnQ2NF90IHZyYW1fYXZhaWxhYmxlOworICB1aW50NjRfdCBnYXJ0X2F2YWlsYWJsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBOT1VWRUFVX0dFTV9DUFVfUFJFUF9OT1dBSVQgMHgwMDAwMDAwMQogI2RlZmluZSBOT1VWRUFVX0dFTV9DUFVfUFJFUF9XUklURSAweDAwMDAwMDA0CiBzdHJ1Y3QgZHJtX25vdXZlYXVfZ2VtX2NwdV9wcmVwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IGZsYWdzOwogfTsKIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1fY3B1X2ZpbmkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IGhhbmRsZTsKIH07CiAjZGVmaW5lIERSTV9OT1VWRUFVX0dFVFBBUkFNIDB4MDAKICNkZWZpbmUgRFJNX05PVVZFQVVfU0VUUEFSQU0gMHgwMQpAQCAtMTI3LDE3ICsxMzIsMTggQEAKICNkZWZpbmUgRFJNX05PVVZFQVVfTk9USUZJRVJPQkpfQUxMT0MgMHgwNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX05PVVZFQVVfR1BVT0JKX0ZSRUUgMHgwNgorI2RlZmluZSBEUk1fTk9VVkVBVV9OVklGIDB4MDcKICNkZWZpbmUgRFJNX05PVVZFQVVfR0VNX05FVyAweDQwCiAjZGVmaW5lIERSTV9OT1VWRUFVX0dFTV9QVVNIQlVGIDB4NDEKLSNkZWZpbmUgRFJNX05PVVZFQVVfR0VNX0NQVV9QUkVQIDB4NDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9OT1VWRUFVX0dFTV9DUFVfUFJFUCAweDQyCiAjZGVmaW5lIERSTV9OT1VWRUFVX0dFTV9DUFVfRklOSSAweDQzCiAjZGVmaW5lIERSTV9OT1VWRUFVX0dFTV9JTkZPIDB4NDQKICNkZWZpbmUgRFJNX0lPQ1RMX05PVVZFQVVfR0VNX05FVyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX05PVVZFQVVfR0VNX05FVywgc3RydWN0IGRybV9ub3V2ZWF1X2dlbV9uZXcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fSU9DVExfTk9VVkVBVV9HRU1fUFVTSEJVRiBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX05PVVZFQVVfR0VNX1BVU0hCVUYsIHN0cnVjdCBkcm1fbm91dmVhdV9nZW1fcHVzaGJ1ZikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9OT1VWRUFVX0dFTV9DUFVfUFJFUCBEUk1fSU9XIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX05PVVZFQVVfR0VNX0NQVV9QUkVQLCBzdHJ1Y3QgZHJtX25vdXZlYXVfZ2VtX2NwdV9wcmVwKQotI2RlZmluZSBEUk1fSU9DVExfTk9VVkVBVV9HRU1fQ1BVX0ZJTkkgRFJNX0lPVyAoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9OT1VWRUFVX0dFTV9DUFVfRklOSSwgc3RydWN0IGRybV9ub3V2ZWF1X2dlbV9jcHVfZmluaSkKKyNkZWZpbmUgRFJNX0lPQ1RMX05PVVZFQVVfR0VNX0NQVV9QUkVQIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9OT1VWRUFVX0dFTV9DUFVfUFJFUCwgc3RydWN0IGRybV9ub3V2ZWF1X2dlbV9jcHVfcHJlcCkKKyNkZWZpbmUgRFJNX0lPQ1RMX05PVVZFQVVfR0VNX0NQVV9GSU5JIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9OT1VWRUFVX0dFTV9DUFVfRklOSSwgc3RydWN0IGRybV9ub3V2ZWF1X2dlbV9jcHVfZmluaSkKICNkZWZpbmUgRFJNX0lPQ1RMX05PVVZFQVVfR0VNX0lORk8gRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9OT1VWRUFVX0dFTV9JTkZPLCBzdHJ1Y3QgZHJtX25vdXZlYXVfZ2VtX2luZm8pCi0jZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL29tYXBfZHJtLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS9vbWFwX2RybS5oCmluZGV4IDJkNGNiNTMuLmVmY2EwMDIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvZHJtL29tYXBfZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vb21hcF9kcm0uaApAQCAtMjIsOCArMjIsOCBAQAogI2RlZmluZSBPTUFQX1BBUkFNX0NISVBTRVRfSUQgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fb21hcF9wYXJhbSB7Ci0gdWludDY0X3QgcGFyYW07Ci0gdWludDY0X3QgdmFsdWU7CisgIHVpbnQ2NF90IHBhcmFtOworICB1aW50NjRfdCB2YWx1ZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBPTUFQX0JPX1NDQU5PVVQgMHgwMDAwMDAwMQpAQCAtMzksNDYgKzM5LDQ2IEBACiAjZGVmaW5lIE9NQVBfQk9fVElMRURfMzIgMHgwMDAwMDMwMAogI2RlZmluZSBPTUFQX0JPX1RJTEVEIChPTUFQX0JPX1RJTEVEXzggfCBPTUFQX0JPX1RJTEVEXzE2IHwgT01BUF9CT19USUxFRF8zMikKIHVuaW9uIG9tYXBfZ2VtX3NpemUgewotIHVpbnQzMl90IGJ5dGVzOworICB1aW50MzJfdCBieXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSB1aW50MTZfdCB3aWR0aDsKLSB1aW50MTZfdCBoZWlnaHQ7Ci0gfSB0aWxlZDsKKyAgc3RydWN0IHsKKyAgICB1aW50MTZfdCB3aWR0aDsKKyAgICB1aW50MTZfdCBoZWlnaHQ7CisgIH0gdGlsZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fb21hcF9nZW1fbmV3IHsKLSB1bmlvbiBvbWFwX2dlbV9zaXplIHNpemU7Ci0gdWludDMyX3QgZmxhZ3M7CisgIHVuaW9uIG9tYXBfZ2VtX3NpemUgc2l6ZTsKKyAgdWludDMyX3QgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBfX3BhZDsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBfX3BhZDsKIH07CiBlbnVtIG9tYXBfZ2VtX29wIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT01BUF9HRU1fUkVBRCA9IDB4MDEsCi0gT01BUF9HRU1fV1JJVEUgPSAweDAyLAorICBPTUFQX0dFTV9SRUFEID0gMHgwMSwKKyAgT01BUF9HRU1fV1JJVEUgPSAweDAyLAogfTsKIHN0cnVjdCBkcm1fb21hcF9nZW1fY3B1X3ByZXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3Qgb3A7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3Qgb3A7CiB9Owogc3RydWN0IGRybV9vbWFwX2dlbV9jcHVfZmluaSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBvcDsKLSB1aW50MzJfdCBucmVnaW9uczsKLSB1aW50MzJfdCBfX3BhZDsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBvcDsKKyAgdWludDMyX3QgbnJlZ2lvbnM7CisgIHVpbnQzMl90IF9fcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX29tYXBfZ2VtX2luZm8gewotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBwYWQ7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBvZmZzZXQ7Ci0gdWludDMyX3Qgc2l6ZTsKLSB1aW50MzJfdCBfX3BhZDsKKyAgdWludDY0X3Qgb2Zmc2V0OworICB1aW50MzJfdCBzaXplOworICB1aW50MzJfdCBfX3BhZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fT01BUF9HRVRfUEFSQU0gMHgwMApAQCAtOTEsMTAgKzkxLDEwIEBACiAjZGVmaW5lIERSTV9PTUFQX05VTV9JT0NUTFMgMHgwNwogI2RlZmluZSBEUk1fSU9DVExfT01BUF9HRVRfUEFSQU0gRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9PTUFQX0dFVF9QQVJBTSwgc3RydWN0IGRybV9vbWFwX3BhcmFtKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX09NQVBfU0VUX1BBUkFNIERSTV9JT1cgKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fT01BUF9TRVRfUEFSQU0sIHN0cnVjdCBkcm1fb21hcF9wYXJhbSkKKyNkZWZpbmUgRFJNX0lPQ1RMX09NQVBfU0VUX1BBUkFNIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9PTUFQX1NFVF9QQVJBTSwgc3RydWN0IGRybV9vbWFwX3BhcmFtKQogI2RlZmluZSBEUk1fSU9DVExfT01BUF9HRU1fTkVXIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fT01BUF9HRU1fTkVXLCBzdHJ1Y3QgZHJtX29tYXBfZ2VtX25ldykKLSNkZWZpbmUgRFJNX0lPQ1RMX09NQVBfR0VNX0NQVV9QUkVQIERSTV9JT1cgKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fT01BUF9HRU1fQ1BVX1BSRVAsIHN0cnVjdCBkcm1fb21hcF9nZW1fY3B1X3ByZXApCi0jZGVmaW5lIERSTV9JT0NUTF9PTUFQX0dFTV9DUFVfRklOSSBEUk1fSU9XIChEUk1fQ09NTUFORF9CQVNFICsgRFJNX09NQVBfR0VNX0NQVV9GSU5JLCBzdHJ1Y3QgZHJtX29tYXBfZ2VtX2NwdV9maW5pKQorI2RlZmluZSBEUk1fSU9DVExfT01BUF9HRU1fQ1BVX1BSRVAgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX09NQVBfR0VNX0NQVV9QUkVQLCBzdHJ1Y3QgZHJtX29tYXBfZ2VtX2NwdV9wcmVwKQorI2RlZmluZSBEUk1fSU9DVExfT01BUF9HRU1fQ1BVX0ZJTkkgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX09NQVBfR0VNX0NQVV9GSU5JLCBzdHJ1Y3QgZHJtX29tYXBfZ2VtX2NwdV9maW5pKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX09NQVBfR0VNX0lORk8gRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9PTUFQX0dFTV9JTkZPLCBzdHJ1Y3QgZHJtX29tYXBfZ2VtX2luZm8pCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL3F4bF9kcm0uaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL3F4bF9kcm0uaAppbmRleCA0ZjQ4NjY4Li4zODc4Yjc1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9xeGxfZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vcXhsX2RybS5oCkBAIC0zNCw4NSArMzQsODUgQEAKICNkZWZpbmUgRFJNX1FYTF9DTElFTlRDQVAgMHgwNQogI2RlZmluZSBEUk1fUVhMX0FMTE9DX1NVUkYgMHgwNgogc3RydWN0IGRybV9xeGxfYWxsb2MgewotIHVpbnQzMl90IHNpemU7CisgIHVpbnQzMl90IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgaGFuZGxlOwogfTsKIHN0cnVjdCBkcm1fcXhsX21hcCB7Ci0gdWludDY0X3Qgb2Zmc2V0OworICB1aW50NjRfdCBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBwYWQ7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgcGFkOwogfTsKICNkZWZpbmUgUVhMX1JFTE9DX1RZUEVfQk8gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUVhMX1JFTE9DX1RZUEVfU1VSRiAyCiBzdHJ1Y3QgZHJtX3F4bF9yZWxvYyB7Ci0gdWludDY0X3Qgc3JjX29mZnNldDsKLSB1aW50NjRfdCBkc3Rfb2Zmc2V0OworICB1aW50NjRfdCBzcmNfb2Zmc2V0OworICB1aW50NjRfdCBkc3Rfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBzcmNfaGFuZGxlOwotIHVpbnQzMl90IGRzdF9oYW5kbGU7Ci0gdWludDMyX3QgcmVsb2NfdHlwZTsKLSB1aW50MzJfdCBwYWQ7CisgIHVpbnQzMl90IHNyY19oYW5kbGU7CisgIHVpbnQzMl90IGRzdF9oYW5kbGU7CisgIHVpbnQzMl90IHJlbG9jX3R5cGU7CisgIHVpbnQzMl90IHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV9xeGxfY29tbWFuZCB7Ci0gdWludDY0X3QgX191c2VyIGNvbW1hbmQ7Ci0gdWludDY0X3QgX191c2VyIHJlbG9jczsKKyAgdWludDY0X3QgX191c2VyIGNvbW1hbmQ7CisgIHVpbnQ2NF90IF9fdXNlciByZWxvY3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHR5cGU7Ci0gdWludDMyX3QgY29tbWFuZF9zaXplOwotIHVpbnQzMl90IHJlbG9jc19udW07Ci0gdWludDMyX3QgcGFkOworICB1aW50MzJfdCB0eXBlOworICB1aW50MzJfdCBjb21tYW5kX3NpemU7CisgIHVpbnQzMl90IHJlbG9jc19udW07CisgIHVpbnQzMl90IHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV9xeGxfZXhlY2J1ZmZlciB7Ci0gdWludDMyX3QgZmxhZ3M7Ci0gdWludDMyX3QgY29tbWFuZHNfbnVtOworICB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgY29tbWFuZHNfbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBfX3VzZXIgY29tbWFuZHM7CisgIHVpbnQ2NF90IF9fdXNlciBjb21tYW5kczsKIH07CiBzdHJ1Y3QgZHJtX3F4bF91cGRhdGVfYXJlYSB7Ci0gdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHRvcDsKLSB1aW50MzJfdCBsZWZ0OwotIHVpbnQzMl90IGJvdHRvbTsKLSB1aW50MzJfdCByaWdodDsKKyAgdWludDMyX3QgdG9wOworICB1aW50MzJfdCBsZWZ0OworICB1aW50MzJfdCBib3R0b207CisgIHVpbnQzMl90IHJpZ2h0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBwYWQ7CisgIHVpbnQzMl90IHBhZDsKIH07CiAjZGVmaW5lIFFYTF9QQVJBTV9OVU1fU1VSRkFDRVMgMQogI2RlZmluZSBRWExfUEFSQU1fTUFYX1JFTE9DUyAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9xeGxfZ2V0cGFyYW0gewotIHVpbnQ2NF90IHBhcmFtOwotIHVpbnQ2NF90IHZhbHVlOworICB1aW50NjRfdCBwYXJhbTsKKyAgdWludDY0X3QgdmFsdWU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fcXhsX2NsaWVudGNhcCB7Ci0gdWludDMyX3QgaW5kZXg7Ci0gdWludDMyX3QgcGFkOworICB1aW50MzJfdCBpbmRleDsKKyAgdWludDMyX3QgcGFkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX3F4bF9hbGxvY19zdXJmIHsKLSB1aW50MzJfdCBmb3JtYXQ7Ci0gdWludDMyX3Qgd2lkdGg7Ci0gdWludDMyX3QgaGVpZ2h0OworICB1aW50MzJfdCBmb3JtYXQ7CisgIHVpbnQzMl90IHdpZHRoOworICB1aW50MzJfdCBoZWlnaHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludDMyX3Qgc3RyaWRlOwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBwYWQ7CisgIGludDMyX3Qgc3RyaWRlOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IHBhZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfUVhMX0FMTE9DICAgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9RWExfQUxMT0MsIHN0cnVjdCBkcm1fcXhsX2FsbG9jKQotI2RlZmluZSBEUk1fSU9DVExfUVhMX01BUCAgIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUVhMX01BUCwgc3RydWN0IGRybV9xeGxfbWFwKQotI2RlZmluZSBEUk1fSU9DVExfUVhMX0VYRUNCVUZGRVIgICBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUVhMX0VYRUNCVUZGRVIsICBzdHJ1Y3QgZHJtX3F4bF9leGVjYnVmZmVyKQotI2RlZmluZSBEUk1fSU9DVExfUVhMX1VQREFURV9BUkVBICAgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1FYTF9VUERBVEVfQVJFQSwgIHN0cnVjdCBkcm1fcXhsX3VwZGF0ZV9hcmVhKQorI2RlZmluZSBEUk1fSU9DVExfUVhMX0FMTE9DIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUVhMX0FMTE9DLCBzdHJ1Y3QgZHJtX3F4bF9hbGxvYykKKyNkZWZpbmUgRFJNX0lPQ1RMX1FYTF9NQVAgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9RWExfTUFQLCBzdHJ1Y3QgZHJtX3F4bF9tYXApCisjZGVmaW5lIERSTV9JT0NUTF9RWExfRVhFQ0JVRkZFUiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUVhMX0VYRUNCVUZGRVIsIHN0cnVjdCBkcm1fcXhsX2V4ZWNidWZmZXIpCisjZGVmaW5lIERSTV9JT0NUTF9RWExfVVBEQVRFX0FSRUEgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1FYTF9VUERBVEVfQVJFQSwgc3RydWN0IGRybV9xeGxfdXBkYXRlX2FyZWEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfUVhMX0dFVFBBUkFNICAgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9RWExfR0VUUEFSQU0sICBzdHJ1Y3QgZHJtX3F4bF9nZXRwYXJhbSkKLSNkZWZpbmUgRFJNX0lPQ1RMX1FYTF9DTElFTlRDQVAgICBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUVhMX0NMSUVOVENBUCwgIHN0cnVjdCBkcm1fcXhsX2NsaWVudGNhcCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1FYTF9BTExPQ19TVVJGICAgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9RWExfQUxMT0NfU1VSRiwgIHN0cnVjdCBkcm1fcXhsX2FsbG9jX3N1cmYpCisjZGVmaW5lIERSTV9JT0NUTF9RWExfR0VUUEFSQU0gRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9RWExfR0VUUEFSQU0sIHN0cnVjdCBkcm1fcXhsX2dldHBhcmFtKQorI2RlZmluZSBEUk1fSU9DVExfUVhMX0NMSUVOVENBUCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUVhMX0NMSUVOVENBUCwgc3RydWN0IGRybV9xeGxfY2xpZW50Y2FwKQorI2RlZmluZSBEUk1fSU9DVExfUVhMX0FMTE9DX1NVUkYgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9RWExfQUxMT0NfU1VSRiwgc3RydWN0IGRybV9xeGxfYWxsb2Nfc3VyZikKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL3IxMjhfZHJtLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS9yMTI4X2RybS5oCmluZGV4IDBiMmMxYzkuLjRlNjgzODEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvZHJtL3IxMjhfZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vcjEyOF9kcm0uaApAQCAtNjQsNjEgKzY0LDYxIEBACiAjZGVmaW5lIFIxMjhfTUFYX1RFWFRVUkVfVU5JVFMgMgogI2VuZGlmCiB0eXBlZGVmIHN0cnVjdCB7Ci0gdW5zaWduZWQgaW50IGRzdF9waXRjaF9vZmZzZXRfYzsKKyAgdW5zaWduZWQgaW50IGRzdF9waXRjaF9vZmZzZXRfYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGRwX2d1aV9tYXN0ZXJfY250bF9jOwotIHVuc2lnbmVkIGludCBzY190b3BfbGVmdF9jOwotIHVuc2lnbmVkIGludCBzY19ib3R0b21fcmlnaHRfYzsKLSB1bnNpZ25lZCBpbnQgel9vZmZzZXRfYzsKKyAgdW5zaWduZWQgaW50IGRwX2d1aV9tYXN0ZXJfY250bF9jOworICB1bnNpZ25lZCBpbnQgc2NfdG9wX2xlZnRfYzsKKyAgdW5zaWduZWQgaW50IHNjX2JvdHRvbV9yaWdodF9jOworICB1bnNpZ25lZCBpbnQgel9vZmZzZXRfYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHpfcGl0Y2hfYzsKLSB1bnNpZ25lZCBpbnQgel9zdGVuX2NudGxfYzsKLSB1bnNpZ25lZCBpbnQgdGV4X2NudGxfYzsKLSB1bnNpZ25lZCBpbnQgbWlzY18zZF9zdGF0ZV9jbnRsX3JlZzsKKyAgdW5zaWduZWQgaW50IHpfcGl0Y2hfYzsKKyAgdW5zaWduZWQgaW50IHpfc3Rlbl9jbnRsX2M7CisgIHVuc2lnbmVkIGludCB0ZXhfY250bF9jOworICB1bnNpZ25lZCBpbnQgbWlzY18zZF9zdGF0ZV9jbnRsX3JlZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHRleHR1cmVfY2xyX2NtcF9jbHJfYzsKLSB1bnNpZ25lZCBpbnQgdGV4dHVyZV9jbHJfY21wX21za19jOwotIHVuc2lnbmVkIGludCBmb2dfY29sb3JfYzsKLSB1bnNpZ25lZCBpbnQgdGV4X3NpemVfcGl0Y2hfYzsKKyAgdW5zaWduZWQgaW50IHRleHR1cmVfY2xyX2NtcF9jbHJfYzsKKyAgdW5zaWduZWQgaW50IHRleHR1cmVfY2xyX2NtcF9tc2tfYzsKKyAgdW5zaWduZWQgaW50IGZvZ19jb2xvcl9jOworICB1bnNpZ25lZCBpbnQgdGV4X3NpemVfcGl0Y2hfYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGNvbnN0YW50X2NvbG9yX2M7Ci0gdW5zaWduZWQgaW50IHBtNF92Y19mcHVfc2V0dXA7Ci0gdW5zaWduZWQgaW50IHNldHVwX2NudGw7Ci0gdW5zaWduZWQgaW50IGRwX3dyaXRlX21hc2s7CisgIHVuc2lnbmVkIGludCBjb25zdGFudF9jb2xvcl9jOworICB1bnNpZ25lZCBpbnQgcG00X3ZjX2ZwdV9zZXR1cDsKKyAgdW5zaWduZWQgaW50IHNldHVwX2NudGw7CisgIHVuc2lnbmVkIGludCBkcF93cml0ZV9tYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc3Rlbl9yZWZfbWFza19jOwotIHVuc2lnbmVkIGludCBwbGFuZV8zZF9tYXNrX2M7Ci0gdW5zaWduZWQgaW50IHdpbmRvd194eV9vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IHNjYWxlXzNkX2NudGw7CisgIHVuc2lnbmVkIGludCBzdGVuX3JlZl9tYXNrX2M7CisgIHVuc2lnbmVkIGludCBwbGFuZV8zZF9tYXNrX2M7CisgIHVuc2lnbmVkIGludCB3aW5kb3dfeHlfb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgc2NhbGVfM2RfY250bDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV9yMTI4X2NvbnRleHRfcmVnc190OwogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGludCB0ZXhfY250bDsKLSB1bnNpZ25lZCBpbnQgdGV4X2NvbWJpbmVfY250bDsKKyAgdW5zaWduZWQgaW50IHRleF9jbnRsOworICB1bnNpZ25lZCBpbnQgdGV4X2NvbWJpbmVfY250bDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHRleF9zaXplX3BpdGNoOwotIHVuc2lnbmVkIGludCB0ZXhfb2Zmc2V0W1IxMjhfTUFYX1RFWFRVUkVfTEVWRUxTXTsKLSB1bnNpZ25lZCBpbnQgdGV4X2JvcmRlcl9jb2xvcjsKKyAgdW5zaWduZWQgaW50IHRleF9zaXplX3BpdGNoOworICB1bnNpZ25lZCBpbnQgdGV4X29mZnNldFtSMTI4X01BWF9URVhUVVJFX0xFVkVMU107CisgIHVuc2lnbmVkIGludCB0ZXhfYm9yZGVyX2NvbG9yOwogfSBkcm1fcjEyOF90ZXh0dXJlX3JlZ3NfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1fcjEyOF9zYXJlYSB7Ci0gZHJtX3IxMjhfY29udGV4dF9yZWdzX3QgY29udGV4dF9zdGF0ZTsKLSBkcm1fcjEyOF90ZXh0dXJlX3JlZ3NfdCB0ZXhfc3RhdGVbUjEyOF9NQVhfVEVYVFVSRV9VTklUU107Ci0gdW5zaWduZWQgaW50IGRpcnR5OworICBkcm1fcjEyOF9jb250ZXh0X3JlZ3NfdCBjb250ZXh0X3N0YXRlOworICBkcm1fcjEyOF90ZXh0dXJlX3JlZ3NfdCB0ZXhfc3RhdGVbUjEyOF9NQVhfVEVYVFVSRV9VTklUU107CisgIHVuc2lnbmVkIGludCBkaXJ0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHZlcnRzaXplOwotIHVuc2lnbmVkIGludCB2Y19mb3JtYXQ7Ci0gc3RydWN0IGRybV9jbGlwX3JlY3QgYm94ZXNbUjEyOF9OUl9TQVJFQV9DTElQUkVDVFNdOwotIHVuc2lnbmVkIGludCBuYm94OworICB1bnNpZ25lZCBpbnQgdmVydHNpemU7CisgIHVuc2lnbmVkIGludCB2Y19mb3JtYXQ7CisgIHN0cnVjdCBkcm1fY2xpcF9yZWN0IGJveGVzW1IxMjhfTlJfU0FSRUFfQ0xJUFJFQ1RTXTsKKyAgdW5zaWduZWQgaW50IG5ib3g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBsYXN0X2ZyYW1lOwotIHVuc2lnbmVkIGludCBsYXN0X2Rpc3BhdGNoOwotIHN0cnVjdCBkcm1fdGV4X3JlZ2lvbiB0ZXhfbGlzdFtSMTI4X05SX1RFWF9IRUFQU11bUjEyOF9OUl9URVhfUkVHSU9OUyArIDFdOwotIHVuc2lnbmVkIGludCB0ZXhfYWdlW1IxMjhfTlJfVEVYX0hFQVBTXTsKKyAgdW5zaWduZWQgaW50IGxhc3RfZnJhbWU7CisgIHVuc2lnbmVkIGludCBsYXN0X2Rpc3BhdGNoOworICBzdHJ1Y3QgZHJtX3RleF9yZWdpb24gdGV4X2xpc3RbUjEyOF9OUl9URVhfSEVBUFNdW1IxMjhfTlJfVEVYX1JFR0lPTlMgKyAxXTsKKyAgdW5zaWduZWQgaW50IHRleF9hZ2VbUjEyOF9OUl9URVhfSEVBUFNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY3R4X293bmVyOwotIGludCBwZkFsbG93UGFnZUZsaXA7Ci0gaW50IHBmQ3VycmVudFBhZ2U7CisgIGludCBjdHhfb3duZXI7CisgIGludCBwZkFsbG93UGFnZUZsaXA7CisgIGludCBwZkN1cnJlbnRQYWdlOwogfSBkcm1fcjEyOF9zYXJlYV90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1IxMjhfSU5JVCAweDAwCkBAIC0xNDMsMTM4ICsxNDMsMTM4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUjEyOF9HRVRQQVJBTSAweDEyCiAjZGVmaW5lIERSTV9SMTI4X0ZMSVAgMHgxMwotI2RlZmluZSBEUk1fSU9DVExfUjEyOF9JTklUIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9JTklULCBkcm1fcjEyOF9pbml0X3QpCi0jZGVmaW5lIERSTV9JT0NUTF9SMTI4X0NDRV9TVEFSVCBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9DQ0VfU1RBUlQpCisjZGVmaW5lIERSTV9JT0NUTF9SMTI4X0lOSVQgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfSU5JVCwgZHJtX3IxMjhfaW5pdF90KQorI2RlZmluZSBEUk1fSU9DVExfUjEyOF9DQ0VfU1RBUlQgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9DQ0VfU1RBUlQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfUjEyOF9DQ0VfU1RPUCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfQ0NFX1NUT1AsIGRybV9yMTI4X2NjZV9zdG9wX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9SMTI4X0NDRV9SRVNFVCBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9DQ0VfUkVTRVQpCi0jZGVmaW5lIERSTV9JT0NUTF9SMTI4X0NDRV9JRExFIERSTV9JTyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0NDRV9JRExFKQotI2RlZmluZSBEUk1fSU9DVExfUjEyOF9SRVNFVCBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9SRVNFVCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfQ0NFX1NUT1AgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfQ0NFX1NUT1AsIGRybV9yMTI4X2NjZV9zdG9wX3QpCisjZGVmaW5lIERSTV9JT0NUTF9SMTI4X0NDRV9SRVNFVCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0NDRV9SRVNFVCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfQ0NFX0lETEUgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9DQ0VfSURMRSkKKyNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfUkVTRVQgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9SRVNFVCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9SMTI4X1NXQVAgRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfU1dBUCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfQ0xFQVIgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0NMRUFSLCBkcm1fcjEyOF9jbGVhcl90KQotI2RlZmluZSBEUk1fSU9DVExfUjEyOF9WRVJURVggRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X1ZFUlRFWCwgZHJtX3IxMjhfdmVydGV4X3QpCi0jZGVmaW5lIERSTV9JT0NUTF9SMTI4X0lORElDRVMgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0lORElDRVMsIGRybV9yMTI4X2luZGljZXNfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfU1dBUCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X1NXQVApCisjZGVmaW5lIERSTV9JT0NUTF9SMTI4X0NMRUFSIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0NMRUFSLCBkcm1fcjEyOF9jbGVhcl90KQorI2RlZmluZSBEUk1fSU9DVExfUjEyOF9WRVJURVggRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfVkVSVEVYLCBkcm1fcjEyOF92ZXJ0ZXhfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfSU5ESUNFUyBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9JTkRJQ0VTLCBkcm1fcjEyOF9pbmRpY2VzX3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfUjEyOF9CTElUIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9CTElULCBkcm1fcjEyOF9ibGl0X3QpCi0jZGVmaW5lIERSTV9JT0NUTF9SMTI4X0RFUFRIIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9ERVBUSCwgZHJtX3IxMjhfZGVwdGhfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfU1RJUFBMRSBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfU1RJUFBMRSwgZHJtX3IxMjhfc3RpcHBsZV90KQorI2RlZmluZSBEUk1fSU9DVExfUjEyOF9CTElUIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0JMSVQsIGRybV9yMTI4X2JsaXRfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfREVQVEggRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfREVQVEgsIGRybV9yMTI4X2RlcHRoX3QpCisjZGVmaW5lIERSTV9JT0NUTF9SMTI4X1NUSVBQTEUgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfU1RJUFBMRSwgZHJtX3IxMjhfc3RpcHBsZV90KQogI2RlZmluZSBEUk1fSU9DVExfUjEyOF9JTkRJUkVDVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfSU5ESVJFQ1QsIGRybV9yMTI4X2luZGlyZWN0X3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfUjEyOF9GVUxMU0NSRUVOIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9GVUxMU0NSRUVOLCBkcm1fcjEyOF9mdWxsc2NyZWVuX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9SMTI4X0NMRUFSMiBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1IxMjhfQ0xFQVIyLCBkcm1fcjEyOF9jbGVhcjJfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfR0VUUEFSQU0gRFJNX0lPV1IoIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9HRVRQQVJBTSwgZHJtX3IxMjhfZ2V0cGFyYW1fdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfRkxJUCBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9GTElQKQorI2RlZmluZSBEUk1fSU9DVExfUjEyOF9GVUxMU0NSRUVOIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0ZVTExTQ1JFRU4sIGRybV9yMTI4X2Z1bGxzY3JlZW5fdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfQ0xFQVIyIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0NMRUFSMiwgZHJtX3IxMjhfY2xlYXIyX3QpCisjZGVmaW5lIERSTV9JT0NUTF9SMTI4X0dFVFBBUkFNIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUjEyOF9HRVRQQVJBTSwgZHJtX3IxMjhfZ2V0cGFyYW1fdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1IxMjhfRkxJUCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SMTI4X0ZMSVApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3IxMjhfaW5pdCB7Ci0gZW51bSB7Ci0gUjEyOF9JTklUX0NDRSA9IDB4MDEsCi0gUjEyOF9DTEVBTlVQX0NDRSA9IDB4MDIKKyAgZW51bSB7CisgICAgUjEyOF9JTklUX0NDRSA9IDB4MDEsCisgICAgUjEyOF9DTEVBTlVQX0NDRSA9IDB4MDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBmdW5jOwotIHVuc2lnbmVkIGxvbmcgc2FyZWFfcHJpdl9vZmZzZXQ7Ci0gaW50IGlzX3BjaTsKLSBpbnQgY2NlX21vZGU7CisgIH0gZnVuYzsKKyAgdW5zaWduZWQgbG9uZyBzYXJlYV9wcml2X29mZnNldDsKKyAgaW50IGlzX3BjaTsKKyAgaW50IGNjZV9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2NlX3NlY3VyZTsKLSBpbnQgcmluZ19zaXplOwotIGludCB1c2VjX3RpbWVvdXQ7Ci0gdW5zaWduZWQgaW50IGZiX2JwcDsKKyAgaW50IGNjZV9zZWN1cmU7CisgIGludCByaW5nX3NpemU7CisgIGludCB1c2VjX3RpbWVvdXQ7CisgIHVuc2lnbmVkIGludCBmYl9icHA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBmcm9udF9vZmZzZXQsIGZyb250X3BpdGNoOwotIHVuc2lnbmVkIGludCBiYWNrX29mZnNldCwgYmFja19waXRjaDsKLSB1bnNpZ25lZCBpbnQgZGVwdGhfYnBwOwotIHVuc2lnbmVkIGludCBkZXB0aF9vZmZzZXQsIGRlcHRoX3BpdGNoOworICB1bnNpZ25lZCBpbnQgZnJvbnRfb2Zmc2V0LCBmcm9udF9waXRjaDsKKyAgdW5zaWduZWQgaW50IGJhY2tfb2Zmc2V0LCBiYWNrX3BpdGNoOworICB1bnNpZ25lZCBpbnQgZGVwdGhfYnBwOworICB1bnNpZ25lZCBpbnQgZGVwdGhfb2Zmc2V0LCBkZXB0aF9waXRjaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHNwYW5fb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgZmJfb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgbW1pb19vZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyByaW5nX29mZnNldDsKKyAgdW5zaWduZWQgaW50IHNwYW5fb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIGZiX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBtbWlvX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyByaW5nX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyByaW5nX3JwdHJfb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgYnVmZmVyc19vZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyBhZ3BfdGV4dHVyZXNfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIHJpbmdfcnB0cl9vZmZzZXQ7CisgIHVuc2lnbmVkIGxvbmcgYnVmZmVyc19vZmZzZXQ7CisgIHVuc2lnbmVkIGxvbmcgYWdwX3RleHR1cmVzX29mZnNldDsKIH0gZHJtX3IxMjhfaW5pdF90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9yMTI4X2NjZV9zdG9wIHsKLSBpbnQgZmx1c2g7Ci0gaW50IGlkbGU7CisgIGludCBmbHVzaDsKKyAgaW50IGlkbGU7CiB9IGRybV9yMTI4X2NjZV9zdG9wX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3IxMjhfY2xlYXIgewotIHVuc2lnbmVkIGludCBmbGFnczsKLSB1bnNpZ25lZCBpbnQgY2xlYXJfY29sb3I7Ci0gdW5zaWduZWQgaW50IGNsZWFyX2RlcHRoOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIHVuc2lnbmVkIGludCBjbGVhcl9jb2xvcjsKKyAgdW5zaWduZWQgaW50IGNsZWFyX2RlcHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY29sb3JfbWFzazsKLSB1bnNpZ25lZCBpbnQgZGVwdGhfbWFzazsKKyAgdW5zaWduZWQgaW50IGNvbG9yX21hc2s7CisgIHVuc2lnbmVkIGludCBkZXB0aF9tYXNrOwogfSBkcm1fcjEyOF9jbGVhcl90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3IxMjhfdmVydGV4IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHByaW07Ci0gaW50IGlkeDsKLSBpbnQgY291bnQ7Ci0gaW50IGRpc2NhcmQ7CisgIGludCBwcmltOworICBpbnQgaWR4OworICBpbnQgY291bnQ7CisgIGludCBkaXNjYXJkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gZHJtX3IxMjhfdmVydGV4X3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fcjEyOF9pbmRpY2VzIHsKLSBpbnQgcHJpbTsKLSBpbnQgaWR4OworICBpbnQgcHJpbTsKKyAgaW50IGlkeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHN0YXJ0OwotIGludCBlbmQ7Ci0gaW50IGRpc2NhcmQ7CisgIGludCBzdGFydDsKKyAgaW50IGVuZDsKKyAgaW50IGRpc2NhcmQ7CiB9IGRybV9yMTI4X2luZGljZXNfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1fcjEyOF9ibGl0IHsKLSBpbnQgaWR4OwotIGludCBwaXRjaDsKLSBpbnQgb2Zmc2V0OworICBpbnQgaWR4OworICBpbnQgcGl0Y2g7CisgIGludCBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBmb3JtYXQ7Ci0gdW5zaWduZWQgc2hvcnQgeCwgeTsKLSB1bnNpZ25lZCBzaG9ydCB3aWR0aCwgaGVpZ2h0OworICBpbnQgZm9ybWF0OworICB1bnNpZ25lZCBzaG9ydCB4LCB5OworICB1bnNpZ25lZCBzaG9ydCB3aWR0aCwgaGVpZ2h0OwogfSBkcm1fcjEyOF9ibGl0X3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3IxMjhfZGVwdGggewotIGVudW0gewotIFIxMjhfV1JJVEVfU1BBTiA9IDB4MDEsCi0gUjEyOF9XUklURV9QSVhFTFMgPSAweDAyLAorICBlbnVtIHsKKyAgICBSMTI4X1dSSVRFX1NQQU4gPSAweDAxLAorICAgIFIxMjhfV1JJVEVfUElYRUxTID0gMHgwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUjEyOF9SRUFEX1NQQU4gPSAweDAzLAotIFIxMjhfUkVBRF9QSVhFTFMgPSAweDA0Ci0gfSBmdW5jOwotIGludCBuOworICAgIFIxMjhfUkVBRF9TUEFOID0gMHgwMywKKyAgICBSMTI4X1JFQURfUElYRUxTID0gMHgwNAorICB9IGZ1bmM7CisgIGludCBuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgX191c2VyICp4OwotIGludCBfX3VzZXIgKnk7Ci0gdW5zaWduZWQgaW50IF9fdXNlciAqYnVmZmVyOwotIHVuc2lnbmVkIGNoYXIgX191c2VyICptYXNrOworICBpbnQgX191c2VyICogeDsKKyAgaW50IF9fdXNlciAqIHk7CisgIHVuc2lnbmVkIGludCBfX3VzZXIgKiBidWZmZXI7CisgIHVuc2lnbmVkIGNoYXIgX191c2VyICogbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV9yMTI4X2RlcHRoX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fcjEyOF9zdGlwcGxlIHsKLSB1bnNpZ25lZCBpbnQgX191c2VyICptYXNrOworICB1bnNpZ25lZCBpbnQgX191c2VyICogbWFzazsKIH0gZHJtX3IxMjhfc3RpcHBsZV90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9yMTI4X2luZGlyZWN0IHsKLSBpbnQgaWR4OwotIGludCBzdGFydDsKLSBpbnQgZW5kOworICBpbnQgaWR4OworICBpbnQgc3RhcnQ7CisgIGludCBlbmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBkaXNjYXJkOworICBpbnQgZGlzY2FyZDsKIH0gZHJtX3IxMjhfaW5kaXJlY3RfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9yMTI4X2Z1bGxzY3JlZW4gewotIGVudW0geworICBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUjEyOF9JTklUX0ZVTExTQ1JFRU4gPSAweDAxLAotIFIxMjhfQ0xFQU5VUF9GVUxMU0NSRUVOID0gMHgwMgotIH0gZnVuYzsKKyAgICBSMTI4X0lOSVRfRlVMTFNDUkVFTiA9IDB4MDEsCisgICAgUjEyOF9DTEVBTlVQX0ZVTExTQ1JFRU4gPSAweDAyCisgIH0gZnVuYzsKIH0gZHJtX3IxMjhfZnVsbHNjcmVlbl90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUjEyOF9QQVJBTV9JUlFfTlIgMQogdHlwZWRlZiBzdHJ1Y3QgZHJtX3IxMjhfZ2V0cGFyYW0gewotIGludCBwYXJhbTsKLSB2b2lkIF9fdXNlciAqdmFsdWU7CisgIGludCBwYXJhbTsKKyAgdm9pZCBfX3VzZXIgKiB2YWx1ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV9yMTI4X2dldHBhcmFtX3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL3JhZGVvbl9kcm0uaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL3JhZGVvbl9kcm0uaAppbmRleCBmZDBhM2E5Li42ZmI4NmYxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9yYWRlb25fZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vcmFkZW9uX2RybS5oCkBAIC0xNzksMzQgKzE3OSwzNCBAQAogI2RlZmluZSBSQURFT05fQ01EX1dBSVQgOAogI2RlZmluZSBSQURFT05fQ01EX1ZFQ0xJTkVBUiA5CiB0eXBlZGVmIHVuaW9uIHsKLSBpbnQgaTsKKyAgaW50IGk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgcGFkMCwgcGFkMSwgcGFkMjsKLSB9IGhlYWRlcjsKLSBzdHJ1Y3QgeworICBzdHJ1Y3QgeworICAgIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIHBhZDAsIHBhZDEsIHBhZDI7CisgIH0gaGVhZGVyOworICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBwYWNrZXRfaWQsIHBhZDAsIHBhZDE7Ci0gfSBwYWNrZXQ7Ci0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBvZmZzZXQsIHN0cmlkZSwgY291bnQ7CisgICAgdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgcGFja2V0X2lkLCBwYWQwLCBwYWQxOworICB9IHBhY2tldDsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBvZmZzZXQsIHN0cmlkZSwgY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gc2NhbGFyczsKLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIG9mZnNldCwgc3RyaWRlLCBjb3VudDsKLSB9IHZlY3RvcnM7CisgIH0gc2NhbGFyczsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBvZmZzZXQsIHN0cmlkZSwgY291bnQ7CisgIH0gdmVjdG9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBhZGRyX2xvLCBhZGRyX2hpLCBjb3VudDsKLSB9IHZlY2xpbmVhcjsKLSBzdHJ1Y3QgeworICBzdHJ1Y3QgeworICAgIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIGFkZHJfbG8sIGFkZHJfaGksIGNvdW50OworICB9IHZlY2xpbmVhcjsKKyAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgYnVmX2lkeCwgcGFkMCwgcGFkMTsKLSB9IGRtYTsKLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIGZsYWdzLCBwYWQwLCBwYWQxOworICAgIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIGJ1Zl9pZHgsIHBhZDAsIHBhZDE7CisgIH0gZG1hOworICBzdHJ1Y3QgeworICAgIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIGZsYWdzLCBwYWQwLCBwYWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHdhaXQ7CisgIH0gd2FpdDsKIH0gZHJtX3JhZGVvbl9jbWRfaGVhZGVyX3Q7CiAjZGVmaW5lIFJBREVPTl9XQUlUXzJEIDB4MQogI2RlZmluZSBSQURFT05fV0FJVF8zRCAweDIKQEAgLTIzNiw0MiArMjM2LDQyIEBACiAjZGVmaW5lIFIzMDBfQ01EX1I1MDBGUCA5CiB0eXBlZGVmIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHU7Ci0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBwYWQwLCBwYWQxLCBwYWQyOwotIH0gaGVhZGVyOworICB1bnNpZ25lZCBpbnQgdTsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBwYWQwLCBwYWQxLCBwYWQyOworICB9IGhlYWRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBjb3VudCwgcmVnbG8sIHJlZ2hpOwotIH0gcGFja2V0MDsKLSBzdHJ1Y3QgeworICBzdHJ1Y3QgeworICAgIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIGNvdW50LCByZWdsbywgcmVnaGk7CisgIH0gcGFja2V0MDsKKyAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgY291bnQsIGFkcmxvLCBhZHJoaTsKLSB9IHZwdTsKLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIHBhY2tldCwgcGFkMCwgcGFkMTsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBjb3VudCwgYWRybG8sIGFkcmhpOworICB9IHZwdTsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZF90eXBlLCBwYWNrZXQsIHBhZDAsIHBhZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gcGFja2V0MzsKLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIHBhY2tldDsKLSB1bnNpZ25lZCBzaG9ydCBjb3VudDsKKyAgfSBwYWNrZXQzOworICBzdHJ1Y3QgeworICAgIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIHBhY2tldDsKKyAgICB1bnNpZ25lZCBzaG9ydCBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBkZWxheTsKLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIGJ1Zl9pZHgsIHBhZDAsIHBhZDE7Ci0gfSBkbWE7CisgIH0gZGVsYXk7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgYnVmX2lkeCwgcGFkMCwgcGFkMTsKKyAgfSBkbWE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgZmxhZ3MsIHBhZDAsIHBhZDE7Ci0gfSB3YWl0OwotIHN0cnVjdCB7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgZmxhZ3MsIHBhZDAsIHBhZDE7CisgIH0gd2FpdDsKKyAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgcmVnLCBuX2J1ZnMsIGZsYWdzOwotIH0gc2NyYXRjaDsKLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgY21kX3R5cGUsIGNvdW50LCBhZHJsbywgYWRyaGlfZmxhZ3M7CisgICAgdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgcmVnLCBuX2J1ZnMsIGZsYWdzOworICB9IHNjcmF0Y2g7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgY2hhciBjbWRfdHlwZSwgY291bnQsIGFkcmxvLCBhZHJoaV9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSByNTAwZnA7CisgIH0gcjUwMGZwOwogfSBkcm1fcjMwMF9jbWRfaGVhZGVyX3Q7CiAjZGVmaW5lIFJBREVPTl9GUk9OVCAweDEKICNkZWZpbmUgUkFERU9OX0JBQ0sgMHgyCkBAIC0zMTQsNTIxICszMTQsNTUxIEBACiAjZGVmaW5lIFJBREVPTl9PRkZTRVRfTUFTSyAoUkFERU9OX09GRlNFVF9BTElHTiAtIDEpCiAjZW5kaWYKIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgcmVkOworICB1bnNpZ25lZCBpbnQgcmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZ3JlZW47Ci0gdW5zaWduZWQgaW50IGJsdWU7Ci0gdW5zaWduZWQgaW50IGFscGhhOworICB1bnNpZ25lZCBpbnQgZ3JlZW47CisgIHVuc2lnbmVkIGludCBibHVlOworICB1bnNpZ25lZCBpbnQgYWxwaGE7CiB9IHJhZGVvbl9jb2xvcl9yZWdzX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGludCBwcF9taXNjOwotIHVuc2lnbmVkIGludCBwcF9mb2dfY29sb3I7Ci0gdW5zaWduZWQgaW50IHJlX3NvbGlkX2NvbG9yOworICB1bnNpZ25lZCBpbnQgcHBfbWlzYzsKKyAgdW5zaWduZWQgaW50IHBwX2ZvZ19jb2xvcjsKKyAgdW5zaWduZWQgaW50IHJlX3NvbGlkX2NvbG9yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmIzZF9ibGVuZGNudGw7Ci0gdW5zaWduZWQgaW50IHJiM2RfZGVwdGhvZmZzZXQ7Ci0gdW5zaWduZWQgaW50IHJiM2RfZGVwdGhwaXRjaDsKLSB1bnNpZ25lZCBpbnQgcmIzZF96c3RlbmNpbGNudGw7CisgIHVuc2lnbmVkIGludCByYjNkX2JsZW5kY250bDsKKyAgdW5zaWduZWQgaW50IHJiM2RfZGVwdGhvZmZzZXQ7CisgIHVuc2lnbmVkIGludCByYjNkX2RlcHRocGl0Y2g7CisgIHVuc2lnbmVkIGludCByYjNkX3pzdGVuY2lsY250bDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHBwX2NudGw7Ci0gdW5zaWduZWQgaW50IHJiM2RfY250bDsKLSB1bnNpZ25lZCBpbnQgcmIzZF9jb2xvcm9mZnNldDsKLSB1bnNpZ25lZCBpbnQgcmVfd2lkdGhfaGVpZ2h0OworICB1bnNpZ25lZCBpbnQgcHBfY250bDsKKyAgdW5zaWduZWQgaW50IHJiM2RfY250bDsKKyAgdW5zaWduZWQgaW50IHJiM2RfY29sb3JvZmZzZXQ7CisgIHVuc2lnbmVkIGludCByZV93aWR0aF9oZWlnaHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCByYjNkX2NvbG9ycGl0Y2g7Ci0gdW5zaWduZWQgaW50IHNlX2NudGw7Ci0gdW5zaWduZWQgaW50IHNlX2Nvb3JkX2ZtdDsKLSB1bnNpZ25lZCBpbnQgcmVfbGluZV9wYXR0ZXJuOworICB1bnNpZ25lZCBpbnQgcmIzZF9jb2xvcnBpdGNoOworICB1bnNpZ25lZCBpbnQgc2VfY250bDsKKyAgdW5zaWduZWQgaW50IHNlX2Nvb3JkX2ZtdDsKKyAgdW5zaWduZWQgaW50IHJlX2xpbmVfcGF0dGVybjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJlX2xpbmVfc3RhdGU7Ci0gdW5zaWduZWQgaW50IHNlX2xpbmVfd2lkdGg7Ci0gdW5zaWduZWQgaW50IHBwX2x1bV9tYXRyaXg7Ci0gdW5zaWduZWQgaW50IHBwX3JvdF9tYXRyaXhfMDsKKyAgdW5zaWduZWQgaW50IHJlX2xpbmVfc3RhdGU7CisgIHVuc2lnbmVkIGludCBzZV9saW5lX3dpZHRoOworICB1bnNpZ25lZCBpbnQgcHBfbHVtX21hdHJpeDsKKyAgdW5zaWduZWQgaW50IHBwX3JvdF9tYXRyaXhfMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHBwX3JvdF9tYXRyaXhfMTsKLSB1bnNpZ25lZCBpbnQgcmIzZF9zdGVuY2lscmVmbWFzazsKLSB1bnNpZ25lZCBpbnQgcmIzZF9yb3BjbnRsOwotIHVuc2lnbmVkIGludCByYjNkX3BsYW5lbWFzazsKKyAgdW5zaWduZWQgaW50IHBwX3JvdF9tYXRyaXhfMTsKKyAgdW5zaWduZWQgaW50IHJiM2Rfc3RlbmNpbHJlZm1hc2s7CisgIHVuc2lnbmVkIGludCByYjNkX3JvcGNudGw7CisgIHVuc2lnbmVkIGludCByYjNkX3BsYW5lbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHNlX3Zwb3J0X3hzY2FsZTsKLSB1bnNpZ25lZCBpbnQgc2VfdnBvcnRfeG9mZnNldDsKLSB1bnNpZ25lZCBpbnQgc2VfdnBvcnRfeXNjYWxlOwotIHVuc2lnbmVkIGludCBzZV92cG9ydF95b2Zmc2V0OworICB1bnNpZ25lZCBpbnQgc2VfdnBvcnRfeHNjYWxlOworICB1bnNpZ25lZCBpbnQgc2VfdnBvcnRfeG9mZnNldDsKKyAgdW5zaWduZWQgaW50IHNlX3Zwb3J0X3lzY2FsZTsKKyAgdW5zaWduZWQgaW50IHNlX3Zwb3J0X3lvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzZV92cG9ydF96c2NhbGU7Ci0gdW5zaWduZWQgaW50IHNlX3Zwb3J0X3pvZmZzZXQ7Ci0gdW5zaWduZWQgaW50IHNlX2NudGxfc3RhdHVzOwotIHVuc2lnbmVkIGludCByZV90b3BfbGVmdDsKKyAgdW5zaWduZWQgaW50IHNlX3Zwb3J0X3pzY2FsZTsKKyAgdW5zaWduZWQgaW50IHNlX3Zwb3J0X3pvZmZzZXQ7CisgIHVuc2lnbmVkIGludCBzZV9jbnRsX3N0YXR1czsKKyAgdW5zaWduZWQgaW50IHJlX3RvcF9sZWZ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmVfbWlzYzsKKyAgdW5zaWduZWQgaW50IHJlX21pc2M7CiB9IGRybV9yYWRlb25fY29udGV4dF9yZWdzX3Q7CiB0eXBlZGVmIHN0cnVjdCB7Ci0gdW5zaWduZWQgaW50IHNlX3piaWFzX2ZhY3RvcjsKKyAgdW5zaWduZWQgaW50IHNlX3piaWFzX2ZhY3RvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHNlX3piaWFzX2NvbnN0YW50OworICB1bnNpZ25lZCBpbnQgc2VfemJpYXNfY29uc3RhbnQ7CiB9IGRybV9yYWRlb25fY29udGV4dDJfcmVnc190OwogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGludCBwcF90eGZpbHRlcjsKKyAgdW5zaWduZWQgaW50IHBwX3R4ZmlsdGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcHBfdHhmb3JtYXQ7Ci0gdW5zaWduZWQgaW50IHBwX3R4b2Zmc2V0OwotIHVuc2lnbmVkIGludCBwcF90eGNibGVuZDsKLSB1bnNpZ25lZCBpbnQgcHBfdHhhYmxlbmQ7CisgIHVuc2lnbmVkIGludCBwcF90eGZvcm1hdDsKKyAgdW5zaWduZWQgaW50IHBwX3R4b2Zmc2V0OworICB1bnNpZ25lZCBpbnQgcHBfdHhjYmxlbmQ7CisgIHVuc2lnbmVkIGludCBwcF90eGFibGVuZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHBwX3RmYWN0b3I7Ci0gdW5zaWduZWQgaW50IHBwX2JvcmRlcl9jb2xvcjsKKyAgdW5zaWduZWQgaW50IHBwX3RmYWN0b3I7CisgIHVuc2lnbmVkIGludCBwcF9ib3JkZXJfY29sb3I7CiB9IGRybV9yYWRlb25fdGV4dHVyZV9yZWdzX3Q7CiB0eXBlZGVmIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzdGFydDsKLSB1bnNpZ25lZCBpbnQgZmluaXNoOwotIHVuc2lnbmVkIGludCBwcmltOjg7Ci0gdW5zaWduZWQgaW50IHN0YXRlaWR4Ojg7CisgIHVuc2lnbmVkIGludCBzdGFydDsKKyAgdW5zaWduZWQgaW50IGZpbmlzaDsKKyAgdW5zaWduZWQgaW50IHByaW0gOiA4OworICB1bnNpZ25lZCBpbnQgc3RhdGVpZHggOiA4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbnVtdmVydHM6MTY7Ci0gdW5zaWduZWQgaW50IHZjX2Zvcm1hdDsKKyAgdW5zaWduZWQgaW50IG51bXZlcnRzIDogMTY7CisgIHVuc2lnbmVkIGludCB2Y19mb3JtYXQ7CiB9IGRybV9yYWRlb25fcHJpbV90OwogdHlwZWRlZiBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkcm1fcmFkZW9uX2NvbnRleHRfcmVnc190IGNvbnRleHQ7Ci0gZHJtX3JhZGVvbl90ZXh0dXJlX3JlZ3NfdCB0ZXhbUkFERU9OX01BWF9URVhUVVJFX1VOSVRTXTsKLSBkcm1fcmFkZW9uX2NvbnRleHQyX3JlZ3NfdCBjb250ZXh0MjsKLSB1bnNpZ25lZCBpbnQgZGlydHk7CisgIGRybV9yYWRlb25fY29udGV4dF9yZWdzX3QgY29udGV4dDsKKyAgZHJtX3JhZGVvbl90ZXh0dXJlX3JlZ3NfdCB0ZXhbUkFERU9OX01BWF9URVhUVVJFX1VOSVRTXTsKKyAgZHJtX3JhZGVvbl9jb250ZXh0Ml9yZWdzX3QgY29udGV4dDI7CisgIHVuc2lnbmVkIGludCBkaXJ0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV9yYWRlb25fc3RhdGVfdDsKIHR5cGVkZWYgc3RydWN0IHsKLSBkcm1fcmFkZW9uX2NvbnRleHRfcmVnc190IGNvbnRleHRfc3RhdGU7Ci0gZHJtX3JhZGVvbl90ZXh0dXJlX3JlZ3NfdCB0ZXhfc3RhdGVbUkFERU9OX01BWF9URVhUVVJFX1VOSVRTXTsKKyAgZHJtX3JhZGVvbl9jb250ZXh0X3JlZ3NfdCBjb250ZXh0X3N0YXRlOworICBkcm1fcmFkZW9uX3RleHR1cmVfcmVnc190IHRleF9zdGF0ZVtSQURFT05fTUFYX1RFWFRVUkVfVU5JVFNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZGlydHk7Ci0gdW5zaWduZWQgaW50IHZlcnRzaXplOwotIHVuc2lnbmVkIGludCB2Y19mb3JtYXQ7Ci0gc3RydWN0IGRybV9jbGlwX3JlY3QgYm94ZXNbUkFERU9OX05SX1NBUkVBX0NMSVBSRUNUU107CisgIHVuc2lnbmVkIGludCBkaXJ0eTsKKyAgdW5zaWduZWQgaW50IHZlcnRzaXplOworICB1bnNpZ25lZCBpbnQgdmNfZm9ybWF0OworICBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBib3hlc1tSQURFT05fTlJfU0FSRUFfQ0xJUFJFQ1RTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG5ib3g7Ci0gdW5zaWduZWQgaW50IGxhc3RfZnJhbWU7Ci0gdW5zaWduZWQgaW50IGxhc3RfZGlzcGF0Y2g7Ci0gdW5zaWduZWQgaW50IGxhc3RfY2xlYXI7CisgIHVuc2lnbmVkIGludCBuYm94OworICB1bnNpZ25lZCBpbnQgbGFzdF9mcmFtZTsKKyAgdW5zaWduZWQgaW50IGxhc3RfZGlzcGF0Y2g7CisgIHVuc2lnbmVkIGludCBsYXN0X2NsZWFyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZHJtX3RleF9yZWdpb24gdGV4X2xpc3RbUkFERU9OX05SX1RFWF9IRUFQU11bUkFERU9OX05SX1RFWF9SRUdJT05TICsKLSAxXTsKLSB1bnNpZ25lZCBpbnQgdGV4X2FnZVtSQURFT05fTlJfVEVYX0hFQVBTXTsKLSBpbnQgY3R4X293bmVyOworICBzdHJ1Y3QgZHJtX3RleF9yZWdpb24gdGV4X2xpc3RbUkFERU9OX05SX1RFWF9IRUFQU11bUkFERU9OX05SX1RFWF9SRUdJT05TICsgMV07CisgIHVuc2lnbmVkIGludCB0ZXhfYWdlW1JBREVPTl9OUl9URVhfSEVBUFNdOworICBpbnQgY3R4X293bmVyOworICBpbnQgcGZTdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBmU3RhdGU7Ci0gaW50IHBmQ3VycmVudFBhZ2U7Ci0gaW50IGNydGMyX2Jhc2U7Ci0gaW50IHRpbGluZ19lbmFibGVkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IHBmQ3VycmVudFBhZ2U7CisgIGludCBjcnRjMl9iYXNlOworICBpbnQgdGlsaW5nX2VuYWJsZWQ7CiB9IGRybV9yYWRlb25fc2FyZWFfdDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fQ1BfSU5JVCAweDAwCiAjZGVmaW5lIERSTV9SQURFT05fQ1BfU1RBUlQgMHgwMQogI2RlZmluZSBEUk1fUkFERU9OX0NQX1NUT1AgMHgwMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1JBREVPTl9DUF9SRVNFVCAweDAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX0NQX0lETEUgMHgwNAogI2RlZmluZSBEUk1fUkFERU9OX1JFU0VUIDB4MDUKICNkZWZpbmUgRFJNX1JBREVPTl9GVUxMU0NSRUVOIDB4MDYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fU1dBUCAweDA3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX0NMRUFSIDB4MDgKICNkZWZpbmUgRFJNX1JBREVPTl9WRVJURVggMHgwOQogI2RlZmluZSBEUk1fUkFERU9OX0lORElDRVMgMHgwQQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1JBREVPTl9OT1RfVVNFRAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1JBREVPTl9TVElQUExFIDB4MEMKICNkZWZpbmUgRFJNX1JBREVPTl9JTkRJUkVDVCAweDBECiAjZGVmaW5lIERSTV9SQURFT05fVEVYVFVSRSAweDBFCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX1ZFUlRFWDIgMHgwRgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1JBREVPTl9DTURCVUYgMHgxMAogI2RlZmluZSBEUk1fUkFERU9OX0dFVFBBUkFNIDB4MTEKICNkZWZpbmUgRFJNX1JBREVPTl9GTElQIDB4MTIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fQUxMT0MgMHgxMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1JBREVPTl9GUkVFIDB4MTQKICNkZWZpbmUgRFJNX1JBREVPTl9JTklUX0hFQVAgMHgxNQogI2RlZmluZSBEUk1fUkFERU9OX0lSUV9FTUlUIDB4MTYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fSVJRX1dBSVQgMHgxNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1JBREVPTl9DUF9SRVNVTUUgMHgxOAogI2RlZmluZSBEUk1fUkFERU9OX1NFVFBBUkFNIDB4MTkKICNkZWZpbmUgRFJNX1JBREVPTl9TVVJGX0FMTE9DIDB4MWEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fU1VSRl9GUkVFIDB4MWIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fR0VNX0lORk8gMHgxYwogI2RlZmluZSBEUk1fUkFERU9OX0dFTV9DUkVBVEUgMHgxZAogI2RlZmluZSBEUk1fUkFERU9OX0dFTV9NTUFQIDB4MWUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fR0VNX1BSRUFEIDB4MjEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fR0VNX1BXUklURSAweDIyCiAjZGVmaW5lIERSTV9SQURFT05fR0VNX1NFVF9ET01BSU4gMHgyMwogI2RlZmluZSBEUk1fUkFERU9OX0dFTV9XQUlUX0lETEUgMHgyNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1JBREVPTl9DUyAweDI2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX0lORk8gMHgyNwogI2RlZmluZSBEUk1fUkFERU9OX0dFTV9TRVRfVElMSU5HIDB4MjgKICNkZWZpbmUgRFJNX1JBREVPTl9HRU1fR0VUX1RJTElORyAweDI5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX0dFTV9CVVNZIDB4MmEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9SQURFT05fR0VNX1ZBIDB4MmIKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9DUF9JTklUIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0NQX0lOSVQsIGRybV9yYWRlb25faW5pdF90KQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0NQX1NUQVJUIERSTV9JTyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fQ1BfU1RBUlQpCisjZGVmaW5lIERSTV9SQURFT05fR0VNX09QIDB4MmMKKyNkZWZpbmUgRFJNX1JBREVPTl9HRU1fVVNFUlBUUiAweDJkCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fQ1BfSU5JVCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0NQX0lOSVQsIGRybV9yYWRlb25faW5pdF90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9DUF9TVE9QIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0NQX1NUT1AsIGRybV9yYWRlb25fY3Bfc3RvcF90KQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0NQX1JFU0VUIERSTV9JTyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fQ1BfUkVTRVQpCi0jZGVmaW5lIERSTV9JT0NUTF9SQURFT05fQ1BfSURMRSBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0NQX0lETEUpCi0jZGVmaW5lIERSTV9JT0NUTF9SQURFT05fUkVTRVQgRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9SRVNFVCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9DUF9TVEFSVCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fQ1BfU1RBUlQpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fQ1BfU1RPUCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0NQX1NUT1AsIGRybV9yYWRlb25fY3Bfc3RvcF90KQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0NQX1JFU0VUIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9DUF9SRVNFVCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9DUF9JRExFIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9DUF9JRExFKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9GVUxMU0NSRUVOIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0ZVTExTQ1JFRU4sIGRybV9yYWRlb25fZnVsbHNjcmVlbl90KQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX1NXQVAgRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9TV0FQKQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0NMRUFSIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0NMRUFSLCBkcm1fcmFkZW9uX2NsZWFyX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9SQURFT05fVkVSVEVYIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX1ZFUlRFWCwgZHJtX3JhZGVvbl92ZXJ0ZXhfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9SRVNFVCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fUkVTRVQpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fRlVMTFNDUkVFTiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0ZVTExTQ1JFRU4sIGRybV9yYWRlb25fZnVsbHNjcmVlbl90KQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX1NXQVAgRFJNX0lPKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX1NXQVApCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fQ0xFQVIgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9DTEVBUiwgZHJtX3JhZGVvbl9jbGVhcl90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9JTkRJQ0VTIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0lORElDRVMsIGRybV9yYWRlb25faW5kaWNlc190KQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX1NUSVBQTEUgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fU1RJUFBMRSwgZHJtX3JhZGVvbl9zdGlwcGxlX3QpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fVkVSVEVYIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fVkVSVEVYLCBkcm1fcmFkZW9uX3ZlcnRleF90KQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0lORElDRVMgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9JTkRJQ0VTLCBkcm1fcmFkZW9uX2luZGljZXNfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9TVElQUExFIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fU1RJUFBMRSwgZHJtX3JhZGVvbl9zdGlwcGxlX3QpCiAjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fSU5ESVJFQ1QgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fSU5ESVJFQ1QsIGRybV9yYWRlb25faW5kaXJlY3RfdCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fVEVYVFVSRSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9URVhUVVJFLCBkcm1fcmFkZW9uX3RleHR1cmVfdCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIERSTV9JT0NUTF9SQURFT05fVkVSVEVYMiBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9WRVJURVgyLCBkcm1fcmFkZW9uX3ZlcnRleDJfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9DTURCVUYgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fQ01EQlVGLCBkcm1fcmFkZW9uX2NtZF9idWZmZXJfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9WRVJURVgyIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fVkVSVEVYMiwgZHJtX3JhZGVvbl92ZXJ0ZXgyX3QpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fQ01EQlVGIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fQ01EQlVGLCBkcm1fcmFkZW9uX2NtZF9idWZmZXJfdCkKICNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9HRVRQQVJBTSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9HRVRQQVJBTSwgZHJtX3JhZGVvbl9nZXRwYXJhbV90KQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0ZMSVAgRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9GTElQKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9GTElQIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9GTElQKQogI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0FMTE9DIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0FMTE9DLCBkcm1fcmFkZW9uX21lbV9hbGxvY190KQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0ZSRUUgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fRlJFRSwgZHJtX3JhZGVvbl9tZW1fZnJlZV90KQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0lOSVRfSEVBUCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9JTklUX0hFQVAsIGRybV9yYWRlb25fbWVtX2luaXRfaGVhcF90KQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0ZSRUUgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9GUkVFLCBkcm1fcmFkZW9uX21lbV9mcmVlX3QpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fSU5JVF9IRUFQIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fSU5JVF9IRUFQLCBkcm1fcmFkZW9uX21lbV9pbml0X2hlYXBfdCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fSVJRX0VNSVQgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fSVJRX0VNSVQsIGRybV9yYWRlb25faXJxX2VtaXRfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9JUlFfV0FJVCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0lSUV9XQUlULCBkcm1fcmFkZW9uX2lycV93YWl0X3QpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fQ1BfUkVTVU1FIERSTV9JTyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9DUF9SRVNVTUUpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fU0VUUEFSQU0gRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9TRVRQQVJBTSwgZHJtX3JhZGVvbl9zZXRwYXJhbV90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9JUlFfV0FJVCBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9JUlFfV0FJVCwgZHJtX3JhZGVvbl9pcnFfd2FpdF90KQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0NQX1JFU1VNRSBEUk1fSU8oIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0NQX1JFU1VNRSkKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9TRVRQQVJBTSBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9TRVRQQVJBTSwgZHJtX3JhZGVvbl9zZXRwYXJhbV90KQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX1NVUkZfQUxMT0MgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fU1VSRl9BTExPQywgZHJtX3JhZGVvbl9zdXJmYWNlX2FsbG9jX3QpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX1NVUkZfRlJFRSBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9TVVJGX0ZSRUUsIGRybV9yYWRlb25fc3VyZmFjZV9mcmVlX3QpCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fU1VSRl9BTExPQyBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX1NVUkZfQUxMT0MsIGRybV9yYWRlb25fc3VyZmFjZV9hbGxvY190KQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX1NVUkZfRlJFRSBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX1NVUkZfRlJFRSwgZHJtX3JhZGVvbl9zdXJmYWNlX2ZyZWVfdCkKICNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9HRU1fSU5GTyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9HRU1fSU5GTywgc3RydWN0IGRybV9yYWRlb25fZ2VtX2luZm8pCiAjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fR0VNX0NSRUFURSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9HRU1fQ1JFQVRFLCBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fY3JlYXRlKQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0dFTV9NTUFQIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0dFTV9NTUFQLCBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fbW1hcCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fR0VNX01NQVAgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fR0VNX01NQVAsIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9tbWFwKQogI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0dFTV9QUkVBRCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9HRU1fUFJFQUQsIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9wcmVhZCkKICNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9HRU1fUFdSSVRFIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0dFTV9QV1JJVEUsIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9wd3JpdGUpCiAjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fR0VNX1NFVF9ET01BSU4gRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fR0VNX1NFVF9ET01BSU4sIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9zZXRfZG9tYWluKQotI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0dFTV9XQUlUX0lETEUgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9HRU1fV0FJVF9JRExFLCBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fd2FpdF9pZGxlKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9HRU1fV0FJVF9JRExFIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fR0VNX1dBSVRfSURMRSwgc3RydWN0IGRybV9yYWRlb25fZ2VtX3dhaXRfaWRsZSkKICNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9DUyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9DUywgc3RydWN0IGRybV9yYWRlb25fY3MpCiAjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fSU5GTyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9JTkZPLCBzdHJ1Y3QgZHJtX3JhZGVvbl9pbmZvKQogI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0dFTV9TRVRfVElMSU5HIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0dFTV9TRVRfVElMSU5HLCBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fc2V0X3RpbGluZykKLSNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9HRU1fR0VUX1RJTElORyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9HRU1fR0VUX1RJTElORywgc3RydWN0IGRybV9yYWRlb25fZ2VtX2dldF90aWxpbmcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0dFTV9HRVRfVElMSU5HIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0dFTV9HRVRfVElMSU5HLCBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fZ2V0X3RpbGluZykKICNkZWZpbmUgRFJNX0lPQ1RMX1JBREVPTl9HRU1fQlVTWSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9HRU1fQlVTWSwgc3RydWN0IGRybV9yYWRlb25fZ2VtX2J1c3kpCiAjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fR0VNX1ZBIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fUkFERU9OX0dFTV9WQSwgc3RydWN0IGRybV9yYWRlb25fZ2VtX3ZhKQorI2RlZmluZSBEUk1fSU9DVExfUkFERU9OX0dFTV9PUCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1JBREVPTl9HRU1fT1AsIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9vcCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9SQURFT05fR0VNX1VTRVJQVFIgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9SQURFT05fR0VNX1VTRVJQVFIsIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV91c2VycHRyKQogdHlwZWRlZiBzdHJ1Y3QgZHJtX3JhZGVvbl9pbml0IHsKLSBlbnVtIHsKKyAgZW51bSB7CisgICAgUkFERU9OX0lOSVRfQ1AgPSAweDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSQURFT05fSU5JVF9DUCA9IDB4MDEsCi0gUkFERU9OX0NMRUFOVVBfQ1AgPSAweDAyLAotIFJBREVPTl9JTklUX1IyMDBfQ1AgPSAweDAzLAotIFJBREVPTl9JTklUX1IzMDBfQ1AgPSAweDA0LAorICAgIFJBREVPTl9DTEVBTlVQX0NQID0gMHgwMiwKKyAgICBSQURFT05fSU5JVF9SMjAwX0NQID0gMHgwMywKKyAgICBSQURFT05fSU5JVF9SMzAwX0NQID0gMHgwNCwKKyAgICBSQURFT05fSU5JVF9SNjAwX0NQID0gMHgwNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSQURFT05fSU5JVF9SNjAwX0NQID0gMHgwNQotIH0gZnVuYzsKLSB1bnNpZ25lZCBsb25nIHNhcmVhX3ByaXZfb2Zmc2V0OwotIGludCBpc19wY2k7CisgIH0gZnVuYzsKKyAgdW5zaWduZWQgbG9uZyBzYXJlYV9wcml2X29mZnNldDsKKyAgaW50IGlzX3BjaTsKKyAgaW50IGNwX21vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjcF9tb2RlOwotIGludCBnYXJ0X3NpemU7Ci0gaW50IHJpbmdfc2l6ZTsKLSBpbnQgdXNlY190aW1lb3V0OworICBpbnQgZ2FydF9zaXplOworICBpbnQgcmluZ19zaXplOworICBpbnQgdXNlY190aW1lb3V0OworICB1bnNpZ25lZCBpbnQgZmJfYnBwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZmJfYnBwOwotIHVuc2lnbmVkIGludCBmcm9udF9vZmZzZXQsIGZyb250X3BpdGNoOwotIHVuc2lnbmVkIGludCBiYWNrX29mZnNldCwgYmFja19waXRjaDsKLSB1bnNpZ25lZCBpbnQgZGVwdGhfYnBwOworICB1bnNpZ25lZCBpbnQgZnJvbnRfb2Zmc2V0LCBmcm9udF9waXRjaDsKKyAgdW5zaWduZWQgaW50IGJhY2tfb2Zmc2V0LCBiYWNrX3BpdGNoOworICB1bnNpZ25lZCBpbnQgZGVwdGhfYnBwOworICB1bnNpZ25lZCBpbnQgZGVwdGhfb2Zmc2V0LCBkZXB0aF9waXRjaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGRlcHRoX29mZnNldCwgZGVwdGhfcGl0Y2g7Ci0gdW5zaWduZWQgbG9uZyBmYl9vZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyBtbWlvX29mZnNldDsKLSB1bnNpZ25lZCBsb25nIHJpbmdfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIGZiX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyBtbWlvX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyByaW5nX29mZnNldDsKKyAgdW5zaWduZWQgbG9uZyByaW5nX3JwdHJfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHJpbmdfcnB0cl9vZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyBidWZmZXJzX29mZnNldDsKLSB1bnNpZ25lZCBsb25nIGdhcnRfdGV4dHVyZXNfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIGJ1ZmZlcnNfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIGdhcnRfdGV4dHVyZXNfb2Zmc2V0OwogfSBkcm1fcmFkZW9uX2luaXRfdDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX2NwX3N0b3AgewotIGludCBmbHVzaDsKLSBpbnQgaWRsZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBmbHVzaDsKKyAgaW50IGlkbGU7CiB9IGRybV9yYWRlb25fY3Bfc3RvcF90OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25fZnVsbHNjcmVlbiB7Ci0gZW51bSB7Ci0gUkFERU9OX0lOSVRfRlVMTFNDUkVFTiA9IDB4MDEsCi0gUkFERU9OX0NMRUFOVVBfRlVMTFNDUkVFTiA9IDB4MDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBmdW5jOworICBlbnVtIHsKKyAgICBSQURFT05fSU5JVF9GVUxMU0NSRUVOID0gMHgwMSwKKyAgICBSQURFT05fQ0xFQU5VUF9GVUxMU0NSRUVOID0gMHgwMgorICB9IGZ1bmM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fcmFkZW9uX2Z1bGxzY3JlZW5fdDsKICNkZWZpbmUgQ0xFQVJfWDEgMAogI2RlZmluZSBDTEVBUl9ZMSAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDTEVBUl9YMiAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDTEVBUl9ZMiAzCiAjZGVmaW5lIENMRUFSX0RFUFRIIDQKIHR5cGVkZWYgdW5pb24gZHJtX3JhZGVvbl9jbGVhcl9yZWN0IHsKKyAgZmxvYXQgZls1XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZmxvYXQgZls1XTsKLSB1bnNpZ25lZCBpbnQgdWlbNV07CisgIHVuc2lnbmVkIGludCB1aVs1XTsKIH0gZHJtX3JhZGVvbl9jbGVhcl9yZWN0X3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX2NsZWFyIHsKKyAgdW5zaWduZWQgaW50IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gdW5zaWduZWQgaW50IGNsZWFyX2NvbG9yOwotIHVuc2lnbmVkIGludCBjbGVhcl9kZXB0aDsKLSB1bnNpZ25lZCBpbnQgY29sb3JfbWFzazsKKyAgdW5zaWduZWQgaW50IGNsZWFyX2NvbG9yOworICB1bnNpZ25lZCBpbnQgY2xlYXJfZGVwdGg7CisgIHVuc2lnbmVkIGludCBjb2xvcl9tYXNrOworICB1bnNpZ25lZCBpbnQgZGVwdGhfbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGRlcHRoX21hc2s7Ci0gZHJtX3JhZGVvbl9jbGVhcl9yZWN0X3QgX191c2VyICpkZXB0aF9ib3hlczsKKyAgZHJtX3JhZGVvbl9jbGVhcl9yZWN0X3QgX191c2VyICogZGVwdGhfYm94ZXM7CiB9IGRybV9yYWRlb25fY2xlYXJfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25fdmVydGV4IHsKKyAgaW50IHByaW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwcmltOwotIGludCBpZHg7Ci0gaW50IGNvdW50OwotIGludCBkaXNjYXJkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IGlkeDsKKyAgaW50IGNvdW50OworICBpbnQgZGlzY2FyZDsKIH0gZHJtX3JhZGVvbl92ZXJ0ZXhfdDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX2luZGljZXMgewotIGludCBwcmltOwotIGludCBpZHg7CisgIGludCBwcmltOworICBpbnQgaWR4OworICBpbnQgc3RhcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzdGFydDsKLSBpbnQgZW5kOwotIGludCBkaXNjYXJkOworICBpbnQgZW5kOworICBpbnQgZGlzY2FyZDsKIH0gZHJtX3JhZGVvbl9pbmRpY2VzX3Q7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3JhZGVvbl92ZXJ0ZXgyIHsKLSBpbnQgaWR4OwotIGludCBkaXNjYXJkOwotIGludCBucl9zdGF0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRybV9yYWRlb25fc3RhdGVfdCBfX3VzZXIgKnN0YXRlOwotIGludCBucl9wcmltczsKLSBkcm1fcmFkZW9uX3ByaW1fdCBfX3VzZXIgKnByaW07CisgIGludCBpZHg7CisgIGludCBkaXNjYXJkOworICBpbnQgbnJfc3RhdGVzOworICBkcm1fcmFkZW9uX3N0YXRlX3QgX191c2VyICogc3RhdGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgbnJfcHJpbXM7CisgIGRybV9yYWRlb25fcHJpbV90IF9fdXNlciAqIHByaW07CiB9IGRybV9yYWRlb25fdmVydGV4Ml90OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25fY21kX2J1ZmZlciB7Ci0gaW50IGJ1ZnN6OwotIGNoYXIgX191c2VyICpidWY7Ci0gaW50IG5ib3g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkcm1fY2xpcF9yZWN0IF9fdXNlciAqYm94ZXM7CisgIGludCBidWZzejsKKyAgY2hhciBfX3VzZXIgKiBidWY7CisgIGludCBuYm94OworICBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBfX3VzZXIgKiBib3hlczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV9yYWRlb25fY21kX2J1ZmZlcl90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3JhZGVvbl90ZXhfaW1hZ2UgewotIHVuc2lnbmVkIGludCB4LCB5OworICB1bnNpZ25lZCBpbnQgeCwgeTsKKyAgdW5zaWduZWQgaW50IHdpZHRoLCBoZWlnaHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB3aWR0aCwgaGVpZ2h0OwotIGNvbnN0IHZvaWQgX191c2VyICpkYXRhOworICBjb25zdCB2b2lkIF9fdXNlciAqIGRhdGE7CiB9IGRybV9yYWRlb25fdGV4X2ltYWdlX3Q7CiB0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX3RleHR1cmUgeworICB1bnNpZ25lZCBpbnQgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgb2Zmc2V0OwotIGludCBwaXRjaDsKLSBpbnQgZm9ybWF0OwotIGludCB3aWR0aDsKKyAgaW50IHBpdGNoOworICBpbnQgZm9ybWF0OworICBpbnQgd2lkdGg7CisgIGludCBoZWlnaHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBoZWlnaHQ7Ci0gZHJtX3JhZGVvbl90ZXhfaW1hZ2VfdCBfX3VzZXIgKmltYWdlOworICBkcm1fcmFkZW9uX3RleF9pbWFnZV90IF9fdXNlciAqIGltYWdlOwogfSBkcm1fcmFkZW9uX3RleHR1cmVfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25fc3RpcHBsZSB7CisgIHVuc2lnbmVkIGludCBfX3VzZXIgKiBtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgX191c2VyICptYXNrOwogfSBkcm1fcmFkZW9uX3N0aXBwbGVfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25faW5kaXJlY3QgewotIGludCBpZHg7CisgIGludCBpZHg7CisgIGludCBzdGFydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHN0YXJ0OwotIGludCBlbmQ7Ci0gaW50IGRpc2NhcmQ7CisgIGludCBlbmQ7CisgIGludCBkaXNjYXJkOwogfSBkcm1fcmFkZW9uX2luZGlyZWN0X3Q7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fQ0FSRF9QQ0kgMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX0NBUkRfQUdQIDEKICNkZWZpbmUgUkFERU9OX0NBUkRfUENJRSAyCiAjZGVmaW5lIFJBREVPTl9QQVJBTV9HQVJUX0JVRkZFUl9PRkZTRVQgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX1BBUkFNX0xBU1RfRlJBTUUgMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX1BBUkFNX0xBU1RfRElTUEFUQ0ggMwogI2RlZmluZSBSQURFT05fUEFSQU1fTEFTVF9DTEVBUiA0CiAjZGVmaW5lIFJBREVPTl9QQVJBTV9JUlFfTlIgNQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX1BBUkFNX0dBUlRfQkFTRSA2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fUEFSQU1fUkVHSVNURVJfSEFORExFIDcKICNkZWZpbmUgUkFERU9OX1BBUkFNX1NUQVRVU19IQU5ETEUgOAogI2RlZmluZSBSQURFT05fUEFSQU1fU0FSRUFfSEFORExFIDkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9QQVJBTV9HQVJUX1RFWF9IQU5ETEUgMTAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9QQVJBTV9TQ1JBVENIX09GRlNFVCAxMQogI2RlZmluZSBSQURFT05fUEFSQU1fQ0FSRF9UWVBFIDEyCiAjZGVmaW5lIFJBREVPTl9QQVJBTV9WQkxBTktfQ1JUQyAxMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX1BBUkFNX0ZCX0xPQ0FUSU9OIDE0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fUEFSQU1fTlVNX0dCX1BJUEVTIDE1CiAjZGVmaW5lIFJBREVPTl9QQVJBTV9ERVZJQ0VfSUQgMTYKICNkZWZpbmUgUkFERU9OX1BBUkFNX05VTV9aX1BJUEVTIDE3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3JhZGVvbl9nZXRwYXJhbSB7Ci0gaW50IHBhcmFtOwotIHZvaWQgX191c2VyICp2YWx1ZTsKLX0gZHJtX3JhZGVvbl9nZXRwYXJhbV90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IHBhcmFtOworICB2b2lkIF9fdXNlciAqIHZhbHVlOworfSBkcm1fcmFkZW9uX2dldHBhcmFtX3Q7CiAjZGVmaW5lIFJBREVPTl9NRU1fUkVHSU9OX0dBUlQgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX01FTV9SRUdJT05fRkIgMgogdHlwZWRlZiBzdHJ1Y3QgZHJtX3JhZGVvbl9tZW1fYWxsb2MgewotIGludCByZWdpb247CisgIGludCByZWdpb247CisgIGludCBhbGlnbm1lbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBhbGlnbm1lbnQ7Ci0gaW50IHNpemU7Ci0gaW50IF9fdXNlciAqcmVnaW9uX29mZnNldDsKKyAgaW50IHNpemU7CisgIGludCBfX3VzZXIgKiByZWdpb25fb2Zmc2V0OwogfSBkcm1fcmFkZW9uX21lbV9hbGxvY190OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25fbWVtX2ZyZWUgewotIGludCByZWdpb247Ci0gaW50IHJlZ2lvbl9vZmZzZXQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgcmVnaW9uOworICBpbnQgcmVnaW9uX29mZnNldDsKIH0gZHJtX3JhZGVvbl9tZW1fZnJlZV90OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25fbWVtX2luaXRfaGVhcCB7Ci0gaW50IHJlZ2lvbjsKLSBpbnQgc2l6ZTsKLSBpbnQgc3RhcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgcmVnaW9uOworICBpbnQgc2l6ZTsKKyAgaW50IHN0YXJ0OwogfSBkcm1fcmFkZW9uX21lbV9pbml0X2hlYXBfdDsKLXR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25faXJxX2VtaXQgewotIGludCBfX3VzZXIgKmlycV9zZXE7Ci19IGRybV9yYWRlb25faXJxX2VtaXRfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX2lycV9lbWl0IHsKKyAgaW50IF9fdXNlciAqIGlycV9zZXE7Cit9IGRybV9yYWRlb25faXJxX2VtaXRfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25faXJxX3dhaXQgewotIGludCBpcnFfc2VxOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IGlycV9zZXE7CiB9IGRybV9yYWRlb25faXJxX3dhaXRfdDsKIHR5cGVkZWYgc3RydWN0IGRybV9yYWRlb25fc2V0cGFyYW0geworICB1bnNpZ25lZCBpbnQgcGFyYW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBwYXJhbTsKLSBfX3M2NCB2YWx1ZTsKKyAgX19zNjQgdmFsdWU7CiB9IGRybV9yYWRlb25fc2V0cGFyYW1fdDsKICNkZWZpbmUgUkFERU9OX1NFVFBBUkFNX0ZCX0xPQ0FUSU9OIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9TRVRQQVJBTV9TV0lUQ0hfVElMSU5HIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9TRVRQQVJBTV9QQ0lHQVJUX0xPQ0FUSU9OIDMKICNkZWZpbmUgUkFERU9OX1NFVFBBUkFNX05FV19NRU1NQVAgNAogI2RlZmluZSBSQURFT05fU0VUUEFSQU1fUENJR0FSVF9UQUJMRV9TSVpFIDUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9TRVRQQVJBTV9WQkxBTktfQ1JUQyA2Ci10eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX3N1cmZhY2VfYWxsb2MgewotIHVuc2lnbmVkIGludCBhZGRyZXNzOwotIHVuc2lnbmVkIGludCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Cit0eXBlZGVmIHN0cnVjdCBkcm1fcmFkZW9uX3N1cmZhY2VfYWxsb2MgeworICB1bnNpZ25lZCBpbnQgYWRkcmVzczsKKyAgdW5zaWduZWQgaW50IHNpemU7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV9yYWRlb25fc3VyZmFjZV9hbGxvY190OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3JhZGVvbl9zdXJmYWNlX2ZyZWUgewotIHVuc2lnbmVkIGludCBhZGRyZXNzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IGFkZHJlc3M7CiB9IGRybV9yYWRlb25fc3VyZmFjZV9mcmVlX3Q7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fUkFERU9OX1ZCTEFOS19DUlRDMSAxCiAjZGVmaW5lIERSTV9SQURFT05fVkJMQU5LX0NSVEMyIDIKICNkZWZpbmUgUkFERU9OX0dFTV9ET01BSU5fQ1BVIDB4MQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX0dFTV9ET01BSU5fR1RUIDB4MgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX0dFTV9ET01BSU5fVlJBTSAweDQKIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9pbmZvIHsKLSB1aW50NjRfdCBnYXJ0X3NpemU7CisgIHVpbnQ2NF90IGdhcnRfc2l6ZTsKKyAgdWludDY0X3QgdnJhbV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCB2cmFtX3NpemU7Ci0gdWludDY0X3QgdnJhbV92aXNpYmxlOworICB1aW50NjRfdCB2cmFtX3Zpc2libGU7CiB9OwotI2RlZmluZSBSQURFT05fR0VNX05PX0JBQ0tJTkdfU1RPUkUgMQorI2RlZmluZSBSQURFT05fR0VNX05PX0JBQ0tJTkdfU1RPUkUgKDEgPDwgMCkKKyNkZWZpbmUgUkFERU9OX0dFTV9HVFRfVUMgKDEgPDwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJBREVPTl9HRU1fR1RUX1dDICgxIDw8IDIpCisjZGVmaW5lIFJBREVPTl9HRU1fQ1BVX0FDQ0VTUyAoMSA8PCAzKQorI2RlZmluZSBSQURFT05fR0VNX05PX0NQVV9BQ0NFU1MgKDEgPDwgNCkKIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9jcmVhdGUgewotIHVpbnQ2NF90IHNpemU7Ci0gdWludDY0X3QgYWxpZ25tZW50OwotIHVpbnQzMl90IGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgaW5pdGlhbF9kb21haW47Ci0gdWludDMyX3QgZmxhZ3M7CisgIHVpbnQ2NF90IHNpemU7CisgIHVpbnQ2NF90IGFsaWdubWVudDsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBpbml0aWFsX2RvbWFpbjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQzMl90IGZsYWdzOwogfTsKLSNkZWZpbmUgUkFERU9OX1RJTElOR19NQUNSTyAweDEKKyNkZWZpbmUgUkFERU9OX0dFTV9VU0VSUFRSX1JFQURPTkxZICgxIDw8IDApCisjZGVmaW5lIFJBREVPTl9HRU1fVVNFUlBUUl9BTk9OT05MWSAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUkFERU9OX0dFTV9VU0VSUFRSX1ZBTElEQVRFICgxIDw8IDIpCisjZGVmaW5lIFJBREVPTl9HRU1fVVNFUlBUUl9SRUdJU1RFUiAoMSA8PCAzKQorc3RydWN0IGRybV9yYWRlb25fZ2VtX3VzZXJwdHIgeworICB1aW50NjRfdCBhZGRyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDY0X3Qgc2l6ZTsKKyAgdWludDMyX3QgZmxhZ3M7CisgIHVpbnQzMl90IGhhbmRsZTsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBSQURFT05fVElMSU5HX01BQ1JPIDB4MQogI2RlZmluZSBSQURFT05fVElMSU5HX01JQ1JPIDB4MgogI2RlZmluZSBSQURFT05fVElMSU5HX1NXQVBfMTZCSVQgMHg0CiAjZGVmaW5lIFJBREVPTl9USUxJTkdfU1dBUF8zMkJJVCAweDgKLSNkZWZpbmUgUkFERU9OX1RJTElOR19TVVJGQUNFIDB4MTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJBREVPTl9USUxJTkdfU1VSRkFDRSAweDEwCiAjZGVmaW5lIFJBREVPTl9USUxJTkdfTUlDUk9fU1FVQVJFIDB4MjAKICNkZWZpbmUgUkFERU9OX1RJTElOR19FR19CQU5LV19TSElGVCA4CiAjZGVmaW5lIFJBREVPTl9USUxJTkdfRUdfQkFOS1dfTUFTSyAweGYKLSNkZWZpbmUgUkFERU9OX1RJTElOR19FR19CQU5LSF9TSElGVCAxMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUkFERU9OX1RJTElOR19FR19CQU5LSF9TSElGVCAxMgogI2RlZmluZSBSQURFT05fVElMSU5HX0VHX0JBTktIX01BU0sgMHhmCiAjZGVmaW5lIFJBREVPTl9USUxJTkdfRUdfTUFDUk9fVElMRV9BU1BFQ1RfU0hJRlQgMTYKICNkZWZpbmUgUkFERU9OX1RJTElOR19FR19NQUNST19USUxFX0FTUEVDVF9NQVNLIDB4ZgotI2RlZmluZSBSQURFT05fVElMSU5HX0VHX1RJTEVfU1BMSVRfU0hJRlQgMjQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJBREVPTl9USUxJTkdfRUdfVElMRV9TUExJVF9TSElGVCAyNAogI2RlZmluZSBSQURFT05fVElMSU5HX0VHX1RJTEVfU1BMSVRfTUFTSyAweGYKICNkZWZpbmUgUkFERU9OX1RJTElOR19FR19TVEVOQ0lMX1RJTEVfU1BMSVRfU0hJRlQgMjgKICNkZWZpbmUgUkFERU9OX1RJTElOR19FR19TVEVOQ0lMX1RJTEVfU1BMSVRfTUFTSyAweGYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fc2V0X3RpbGluZyB7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgdGlsaW5nX2ZsYWdzOworICB1aW50MzJfdCBwaXRjaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IHRpbGluZ19mbGFnczsKLSB1aW50MzJfdCBwaXRjaDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9yYWRlb25fZ2VtX2dldF90aWxpbmcgewotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCB0aWxpbmdfZmxhZ3M7Ci0gdWludDMyX3QgcGl0Y2g7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgdGlsaW5nX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDMyX3QgcGl0Y2g7CiB9Owogc3RydWN0IGRybV9yYWRlb25fZ2VtX21tYXAgewotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBwYWQ7CisgIHVpbnQzMl90IGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3Qgb2Zmc2V0OwotIHVpbnQ2NF90IHNpemU7Ci0gdWludDY0X3QgYWRkcl9wdHI7CisgIHVpbnQzMl90IHBhZDsKKyAgdWludDY0X3Qgb2Zmc2V0OworICB1aW50NjRfdCBzaXplOworICB1aW50NjRfdCBhZGRyX3B0cjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9zZXRfZG9tYWluIHsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgcmVhZF9kb21haW5zOwotIHVpbnQzMl90IHdyaXRlX2RvbWFpbjsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCByZWFkX2RvbWFpbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1aW50MzJfdCB3cml0ZV9kb21haW47CiB9Owogc3RydWN0IGRybV9yYWRlb25fZ2VtX3dhaXRfaWRsZSB7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IHBhZDsKKyAgdWludDMyX3QgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDMyX3QgcGFkOwogfTsKIHN0cnVjdCBkcm1fcmFkZW9uX2dlbV9idXN5IHsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgZG9tYWluOworICB1aW50MzJfdCBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1aW50MzJfdCBkb21haW47CiB9Owogc3RydWN0IGRybV9yYWRlb25fZ2VtX3ByZWFkIHsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgcGFkOworICB1aW50MzJfdCBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IG9mZnNldDsKLSB1aW50NjRfdCBzaXplOwotIHVpbnQ2NF90IGRhdGFfcHRyOworICB1aW50MzJfdCBwYWQ7CisgIHVpbnQ2NF90IG9mZnNldDsKKyAgdWludDY0X3Qgc2l6ZTsKKyAgdWludDY0X3QgZGF0YV9wdHI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHJtX3JhZGVvbl9nZW1fcHdyaXRlIHsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgcGFkOwotIHVpbnQ2NF90IG9mZnNldDsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IHNpemU7Ci0gdWludDY0X3QgZGF0YV9wdHI7CisgIHVpbnQ2NF90IG9mZnNldDsKKyAgdWludDY0X3Qgc2l6ZTsKKyAgdWludDY0X3QgZGF0YV9wdHI7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBkcm1fcmFkZW9uX2dlbV9vcCB7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3Qgb3A7CisgIHVpbnQ2NF90IHZhbHVlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CisjZGVmaW5lIFJBREVPTl9HRU1fT1BfR0VUX0lOSVRJQUxfRE9NQUlOIDAKKyNkZWZpbmUgUkFERU9OX0dFTV9PUF9TRVRfSU5JVElBTF9ET01BSU4gMQogI2RlZmluZSBSQURFT05fVkFfTUFQIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9WQV9VTk1BUCAyCkBAIC04NDMsMTIgKzg3MywxMiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX1ZNX1BBR0VfU05PT1BFRCAoMSA8PCA0KQogc3RydWN0IGRybV9yYWRlb25fZ2VtX3ZhIHsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3Qgb3BlcmF0aW9uOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IG9wZXJhdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3Qgdm1faWQ7Ci0gdWludDMyX3QgZmxhZ3M7Ci0gdWludDY0X3Qgb2Zmc2V0OworICB1aW50MzJfdCB2bV9pZDsKKyAgdWludDMyX3QgZmxhZ3M7CisgIHVpbnQ2NF90IG9mZnNldDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fQ0hVTktfSURfUkVMT0NTIDB4MDEKQEAgLTg2NCw2NyArODk0LDc3IEBACiAjZGVmaW5lIFJBREVPTl9DU19SSU5HX0NPTVBVVEUgMQogI2RlZmluZSBSQURFT05fQ1NfUklOR19ETUEgMgogI2RlZmluZSBSQURFT05fQ1NfUklOR19VVkQgMworI2RlZmluZSBSQURFT05fQ1NfUklOR19WQ0UgNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fcmFkZW9uX2NzX2NodW5rIHsKKyAgdWludDMyX3QgY2h1bmtfaWQ7CisgIHVpbnQzMl90IGxlbmd0aF9kdzsKKyAgdWludDY0X3QgY2h1bmtfZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgY2h1bmtfaWQ7Ci0gdWludDMyX3QgbGVuZ3RoX2R3OwotIHVpbnQ2NF90IGNodW5rX2RhdGE7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUkFERU9OX1JFTE9DX1BSSU9fTUFTSyAoMHhmIDw8IDApCiBzdHJ1Y3QgZHJtX3JhZGVvbl9jc19yZWxvYyB7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IHJlYWRfZG9tYWluczsKLSB1aW50MzJfdCB3cml0ZV9kb21haW47CisgIHVpbnQzMl90IGhhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZmxhZ3M7CisgIHVpbnQzMl90IHJlYWRfZG9tYWluczsKKyAgdWludDMyX3Qgd3JpdGVfZG9tYWluOworICB1aW50MzJfdCBmbGFnczsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9yYWRlb25fY3MgewotIHVpbnQzMl90IG51bV9jaHVua3M7CisgIHVpbnQzMl90IG51bV9jaHVua3M7CisgIHVpbnQzMl90IGNzX2lkOworICB1aW50NjRfdCBjaHVua3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGNzX2lkOwotIHVpbnQ2NF90IGNodW5rczsKLSB1aW50NjRfdCBnYXJ0X2xpbWl0OwotIHVpbnQ2NF90IHZyYW1fbGltaXQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1aW50NjRfdCBnYXJ0X2xpbWl0OworICB1aW50NjRfdCB2cmFtX2xpbWl0OwogfTsKICNkZWZpbmUgUkFERU9OX0lORk9fREVWSUNFX0lEIDB4MDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9JTkZPX05VTV9HQl9QSVBFUyAweDAxCiAjZGVmaW5lIFJBREVPTl9JTkZPX05VTV9aX1BJUEVTIDB4MDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9JTkZPX0FDQ0VMX1dPUktJTkcgMHgwMwogI2RlZmluZSBSQURFT05fSU5GT19DUlRDX0ZST01fSUQgMHgwNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX0lORk9fQUNDRUxfV09SS0lORzIgMHgwNQogI2RlZmluZSBSQURFT05fSU5GT19USUxJTkdfQ09ORklHIDB4MDYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9JTkZPX1dBTlRfSFlQRVJaIDB4MDcKICNkZWZpbmUgUkFERU9OX0lORk9fV0FOVF9DTUFTSyAweDA4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fSU5GT19DTE9DS19DUllTVEFMX0ZSRVEgMHgwOQogI2RlZmluZSBSQURFT05fSU5GT19OVU1fQkFDS0VORFMgMHgwYQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX0lORk9fTlVNX1RJTEVfUElQRVMgMHgwYgogI2RlZmluZSBSQURFT05fSU5GT19GVVNJT05fR0FSVF9XT1JLSU5HIDB4MGMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9JTkZPX0JBQ0tFTkRfTUFQIDB4MGQKICNkZWZpbmUgUkFERU9OX0lORk9fVkFfU1RBUlQgMHgwZQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX0lORk9fSUJfVk1fTUFYX1NJWkUgMHgwZgogI2RlZmluZSBSQURFT05fSU5GT19NQVhfUElQRVMgMHgxMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX0lORk9fVElNRVNUQU1QIDB4MTEKICNkZWZpbmUgUkFERU9OX0lORk9fTUFYX1NFIDB4MTIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJBREVPTl9JTkZPX01BWF9TSF9QRVJfU0UgMHgxMwogI2RlZmluZSBSQURFT05fSU5GT19GQVNURkJfV09SS0lORyAweDE0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSQURFT05fSU5GT19SSU5HX1dPUktJTkcgMHgxNQogI2RlZmluZSBSQURFT05fSU5GT19TSV9USUxFX01PREVfQVJSQVkgMHgxNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX0lORk9fU0lfQ1BfRE1BX0NPTVBVVEUgMHgxNwogI2RlZmluZSBSQURFT05fSU5GT19DSUtfTUFDUk9USUxFX01PREVfQVJSQVkgMHgxOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkFERU9OX0lORk9fU0lfQkFDS0VORF9FTkFCTEVEX01BU0sgMHgxOQogI2RlZmluZSBSQURFT05fSU5GT19NQVhfU0NMSyAweDFhCisjZGVmaW5lIFJBREVPTl9JTkZPX1ZDRV9GV19WRVJTSU9OIDB4MWIKKyNkZWZpbmUgUkFERU9OX0lORk9fVkNFX0ZCX1ZFUlNJT04gMHgxYworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUkFERU9OX0lORk9fTlVNX0JZVEVTX01PVkVEIDB4MWQKKyNkZWZpbmUgUkFERU9OX0lORk9fVlJBTV9VU0FHRSAweDFlCisjZGVmaW5lIFJBREVPTl9JTkZPX0dUVF9VU0FHRSAweDFmCisjZGVmaW5lIFJBREVPTl9JTkZPX0FDVElWRV9DVV9DT1VOVCAweDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV9yYWRlb25faW5mbyB7Ci0gdWludDMyX3QgcmVxdWVzdDsKLSB1aW50MzJfdCBwYWQ7Ci0gdWludDY0X3QgdmFsdWU7CisgIHVpbnQzMl90IHJlcXVlc3Q7CisgIHVpbnQzMl90IHBhZDsKKyAgdWludDY0X3QgdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgU0lfVElMRV9NT0RFX0NPTE9SX0xJTkVBUl9BTElHTkVEIDgKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL3NhdmFnZV9kcm0uaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL3NhdmFnZV9kcm0uaAppbmRleCA0YzFkMGY4Li5kYjg3M2I2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS9zYXZhZ2VfZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vc2F2YWdlX2RybS5oCkBAIC0yOSwxNTYgKzI5LDE1NSBAQAogI2RlZmluZSBTQVZBR0VfTE9HX01JTl9URVhfUkVHSU9OX1NJWkUgMTYKICNlbmRpZgogdHlwZWRlZiBzdHJ1Y3QgX2RybV9zYXZhZ2Vfc2FyZWEgewotIHN0cnVjdCBkcm1fdGV4X3JlZ2lvbiB0ZXhMaXN0W1NBVkFHRV9OUl9URVhfSEVBUFNdW1NBVkFHRV9OUl9URVhfUkVHSU9OUyArCisgIHN0cnVjdCBkcm1fdGV4X3JlZ2lvbiB0ZXhMaXN0W1NBVkFHRV9OUl9URVhfSEVBUFNdW1NBVkFHRV9OUl9URVhfUkVHSU9OUyArIDFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSAxXTsKLSB1bnNpZ25lZCBpbnQgdGV4QWdlW1NBVkFHRV9OUl9URVhfSEVBUFNdOwotIGludCBjdHhPd25lcjsKLX0gZHJtX3NhdmFnZV9zYXJlYV90LCAqZHJtX3NhdmFnZV9zYXJlYV9wdHI7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBpbnQgdGV4QWdlW1NBVkFHRV9OUl9URVhfSEVBUFNdOworICBpbnQgY3R4T3duZXI7Cit9IGRybV9zYXZhZ2Vfc2FyZWFfdCwgKiBkcm1fc2F2YWdlX3NhcmVhX3B0cjsKICNkZWZpbmUgRFJNX1NBVkFHRV9CQ0lfSU5JVCAweDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fU0FWQUdFX0JDSV9DTURCVUYgMHgwMQogI2RlZmluZSBEUk1fU0FWQUdFX0JDSV9FVkVOVF9FTUlUIDB4MDIKICNkZWZpbmUgRFJNX1NBVkFHRV9CQ0lfRVZFTlRfV0FJVCAweDAzCisjZGVmaW5lIERSTV9JT0NUTF9TQVZBR0VfQkNJX0lOSVQgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1NBVkFHRV9CQ0lfSU5JVCwgZHJtX3NhdmFnZV9pbml0X3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBEUk1fSU9DVExfU0FWQUdFX0JDSV9JTklUIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fU0FWQUdFX0JDSV9JTklULCBkcm1fc2F2YWdlX2luaXRfdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1NBVkFHRV9CQ0lfQ01EQlVGIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fU0FWQUdFX0JDSV9DTURCVUYsIGRybV9zYXZhZ2VfY21kYnVmX3QpCisjZGVmaW5lIERSTV9JT0NUTF9TQVZBR0VfQkNJX0NNREJVRiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fU0FWQUdFX0JDSV9DTURCVUYsIGRybV9zYXZhZ2VfY21kYnVmX3QpCiAjZGVmaW5lIERSTV9JT0NUTF9TQVZBR0VfQkNJX0VWRU5UX0VNSVQgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9TQVZBR0VfQkNJX0VWRU5UX0VNSVQsIGRybV9zYXZhZ2VfZXZlbnRfZW1pdF90KQotI2RlZmluZSBEUk1fSU9DVExfU0FWQUdFX0JDSV9FVkVOVF9XQUlUIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fU0FWQUdFX0JDSV9FVkVOVF9XQUlULCBkcm1fc2F2YWdlX2V2ZW50X3dhaXRfdCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERSTV9JT0NUTF9TQVZBR0VfQkNJX0VWRU5UX1dBSVQgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1NBVkFHRV9CQ0lfRVZFTlRfV0FJVCwgZHJtX3NhdmFnZV9ldmVudF93YWl0X3QpCiAjZGVmaW5lIFNBVkFHRV9ETUFfUENJIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBVkFHRV9ETUFfQUdQIDMKIHR5cGVkZWYgc3RydWN0IGRybV9zYXZhZ2VfaW5pdCB7Ci0gZW51bSB7CisgIGVudW0geworICAgIFNBVkFHRV9JTklUX0JDSSA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNBVkFHRV9JTklUX0JDSSA9IDEsCi0gU0FWQUdFX0NMRUFOVVBfQkNJID0gMgotIH0gZnVuYzsKLSB1bnNpZ25lZCBpbnQgc2FyZWFfcHJpdl9vZmZzZXQ7CisgICAgU0FWQUdFX0NMRUFOVVBfQkNJID0gMgorICB9IGZ1bmM7CisgIHVuc2lnbmVkIGludCBzYXJlYV9wcml2X29mZnNldDsKKyAgdW5zaWduZWQgaW50IGNvYl9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY29iX3NpemU7Ci0gdW5zaWduZWQgaW50IGJjaV90aHJlc2hvbGRfbG8sIGJjaV90aHJlc2hvbGRfaGk7Ci0gdW5zaWduZWQgaW50IGRtYV90eXBlOwotIHVuc2lnbmVkIGludCBmYl9icHA7CisgIHVuc2lnbmVkIGludCBiY2lfdGhyZXNob2xkX2xvLCBiY2lfdGhyZXNob2xkX2hpOworICB1bnNpZ25lZCBpbnQgZG1hX3R5cGU7CisgIHVuc2lnbmVkIGludCBmYl9icHA7CisgIHVuc2lnbmVkIGludCBmcm9udF9vZmZzZXQsIGZyb250X3BpdGNoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZnJvbnRfb2Zmc2V0LCBmcm9udF9waXRjaDsKLSB1bnNpZ25lZCBpbnQgYmFja19vZmZzZXQsIGJhY2tfcGl0Y2g7Ci0gdW5zaWduZWQgaW50IGRlcHRoX2JwcDsKLSB1bnNpZ25lZCBpbnQgZGVwdGhfb2Zmc2V0LCBkZXB0aF9waXRjaDsKKyAgdW5zaWduZWQgaW50IGJhY2tfb2Zmc2V0LCBiYWNrX3BpdGNoOworICB1bnNpZ25lZCBpbnQgZGVwdGhfYnBwOworICB1bnNpZ25lZCBpbnQgZGVwdGhfb2Zmc2V0LCBkZXB0aF9waXRjaDsKKyAgdW5zaWduZWQgaW50IHRleHR1cmVfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdGV4dHVyZV9vZmZzZXQ7Ci0gdW5zaWduZWQgaW50IHRleHR1cmVfc2l6ZTsKLSB1bnNpZ25lZCBsb25nIHN0YXR1c19vZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyBidWZmZXJzX29mZnNldDsKKyAgdW5zaWduZWQgaW50IHRleHR1cmVfc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBzdGF0dXNfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIGJ1ZmZlcnNfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIGFncF90ZXh0dXJlc19vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgYWdwX3RleHR1cmVzX29mZnNldDsKLSB1bnNpZ25lZCBsb25nIGNtZF9kbWFfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIGNtZF9kbWFfb2Zmc2V0OwogfSBkcm1fc2F2YWdlX2luaXRfdDsKIHR5cGVkZWYgdW5pb24gZHJtX3NhdmFnZV9jbWRfaGVhZGVyIGRybV9zYXZhZ2VfY21kX2hlYWRlcl90OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGRybV9zYXZhZ2VfY21kYnVmIHsKLSBkcm1fc2F2YWdlX2NtZF9oZWFkZXJfdCBfX3VzZXIgKmNtZF9hZGRyOwotIHVuc2lnbmVkIGludCBzaXplOwotIHVuc2lnbmVkIGludCBkbWFfaWR4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZGlzY2FyZDsKLSB1bnNpZ25lZCBpbnQgX191c2VyICp2Yl9hZGRyOwotIHVuc2lnbmVkIGludCB2Yl9zaXplOwotIHVuc2lnbmVkIGludCB2Yl9zdHJpZGU7CisgIGRybV9zYXZhZ2VfY21kX2hlYWRlcl90IF9fdXNlciAqIGNtZF9hZGRyOworICB1bnNpZ25lZCBpbnQgc2l6ZTsKKyAgdW5zaWduZWQgaW50IGRtYV9pZHg7CisgIGludCBkaXNjYXJkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZHJtX2NsaXBfcmVjdCBfX3VzZXIgKmJveF9hZGRyOwotIHVuc2lnbmVkIGludCBuYm94OworICB1bnNpZ25lZCBpbnQgX191c2VyICogdmJfYWRkcjsKKyAgdW5zaWduZWQgaW50IHZiX3NpemU7CisgIHVuc2lnbmVkIGludCB2Yl9zdHJpZGU7CisgIHN0cnVjdCBkcm1fY2xpcF9yZWN0IF9fdXNlciAqIGJveF9hZGRyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IG5ib3g7CiB9IGRybV9zYXZhZ2VfY21kYnVmX3Q7CiAjZGVmaW5lIFNBVkFHRV9XQUlUXzJEIDB4MQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0FWQUdFX1dBSVRfM0QgMHgyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQVZBR0VfV0FJVF9JUlEgMHg0CiB0eXBlZGVmIHN0cnVjdCBkcm1fc2F2YWdlX2V2ZW50IHsKLSB1bnNpZ25lZCBpbnQgY291bnQ7CisgIHVuc2lnbmVkIGludCBjb3VudDsKKyAgdW5zaWduZWQgaW50IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZmxhZ3M7CiB9IGRybV9zYXZhZ2VfZXZlbnRfZW1pdF90LCBkcm1fc2F2YWdlX2V2ZW50X3dhaXRfdDsKICNkZWZpbmUgU0FWQUdFX0NNRF9TVEFURSAwCiAjZGVmaW5lIFNBVkFHRV9DTURfRE1BX1BSSU0gMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0FWQUdFX0NNRF9WQl9QUklNIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBVkFHRV9DTURfRE1BX0lEWCAzCiAjZGVmaW5lIFNBVkFHRV9DTURfVkJfSURYIDQKICNkZWZpbmUgU0FWQUdFX0NNRF9DTEVBUiA1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQVZBR0VfQ01EX1NXQVAgNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0FWQUdFX1BSSU1fVFJJTElTVCAwCiAjZGVmaW5lIFNBVkFHRV9QUklNX1RSSVNUUklQIDEKICNkZWZpbmUgU0FWQUdFX1BSSU1fVFJJRkFOIDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBVkFHRV9QUklNX1RSSUxJU1RfMjAxIDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBVkFHRV9TS0lQX1ogMHgwMQogI2RlZmluZSBTQVZBR0VfU0tJUF9XIDB4MDIKICNkZWZpbmUgU0FWQUdFX1NLSVBfQzAgMHgwNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0FWQUdFX1NLSVBfQzEgMHgwOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0FWQUdFX1NLSVBfUzAgMHgxMAogI2RlZmluZSBTQVZBR0VfU0tJUF9UMCAweDIwCiAjZGVmaW5lIFNBVkFHRV9TS0lQX1NUMCAweDMwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQVZBR0VfU0tJUF9TMSAweDQwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQVZBR0VfU0tJUF9UMSAweDgwCiAjZGVmaW5lIFNBVkFHRV9TS0lQX1NUMSAweGMwCiAjZGVmaW5lIFNBVkFHRV9TS0lQX0FMTF9TM0QgMHgzZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0FWQUdFX1NLSVBfQUxMX1M0IDB4ZmYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBVkFHRV9GUk9OVCAweDEKICNkZWZpbmUgU0FWQUdFX0JBQ0sgMHgyCiAjZGVmaW5lIFNBVkFHRV9ERVBUSCAweDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB1bmlvbiBkcm1fc2F2YWdlX2NtZF9oZWFkZXIgewotIHN0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBjbWQ7Ci0gdW5zaWduZWQgY2hhciBwYWQwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBwYWQxOwotIHVuc2lnbmVkIHNob3J0IHBhZDI7Ci0gdW5zaWduZWQgc2hvcnQgcGFkMzsKLSB9IGNtZDsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZDsKKyAgICB1bnNpZ25lZCBjaGFyIHBhZDA7CisgICAgdW5zaWduZWQgc2hvcnQgcGFkMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGNtZDsKLSB1bnNpZ25lZCBjaGFyIGdsb2JhbDsKLSB1bnNpZ25lZCBzaG9ydCBjb3VudDsKKyAgICB1bnNpZ25lZCBzaG9ydCBwYWQyOworICAgIHVuc2lnbmVkIHNob3J0IHBhZDM7CisgIH0gY21kOworICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBzdGFydDsKLSB1bnNpZ25lZCBzaG9ydCBwYWQzOwotIH0gc3RhdGU7Ci0gc3RydWN0IHsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZDsKKyAgICB1bnNpZ25lZCBjaGFyIGdsb2JhbDsKKyAgICB1bnNpZ25lZCBzaG9ydCBjb3VudDsKKyAgICB1bnNpZ25lZCBzaG9ydCBzdGFydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBjbWQ7Ci0gdW5zaWduZWQgY2hhciBwcmltOwotIHVuc2lnbmVkIHNob3J0IHNraXA7Ci0gdW5zaWduZWQgc2hvcnQgY291bnQ7CisgICAgdW5zaWduZWQgc2hvcnQgcGFkMzsKKyAgfSBzdGF0ZTsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgc3RhcnQ7Ci0gfSBwcmltOwotIHN0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBjbWQ7CisgICAgdW5zaWduZWQgY2hhciBwcmltOworICAgIHVuc2lnbmVkIHNob3J0IHNraXA7CisgICAgdW5zaWduZWQgc2hvcnQgY291bnQ7CisgICAgdW5zaWduZWQgc2hvcnQgc3RhcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcHJpbTsKLSB1bnNpZ25lZCBzaG9ydCBza2lwOwotIHVuc2lnbmVkIHNob3J0IGNvdW50OwotIHVuc2lnbmVkIHNob3J0IHBhZDM7CisgIH0gcHJpbTsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBjaGFyIGNtZDsKKyAgICB1bnNpZ25lZCBjaGFyIHByaW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gaWR4OwotIHN0cnVjdCB7Ci0gdW5zaWduZWQgY2hhciBjbWQ7Ci0gdW5zaWduZWQgY2hhciBwYWQwOworICAgIHVuc2lnbmVkIHNob3J0IHNraXA7CisgICAgdW5zaWduZWQgc2hvcnQgY291bnQ7CisgICAgdW5zaWduZWQgc2hvcnQgcGFkMzsKKyAgfSBpZHg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHBhZDE7Ci0gdW5zaWduZWQgaW50IGZsYWdzOwotIH0gY2xlYXIwOwotIHN0cnVjdCB7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgY2hhciBjbWQ7CisgICAgdW5zaWduZWQgY2hhciBwYWQwOworICAgIHVuc2lnbmVkIHNob3J0IHBhZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBtYXNrOwotIHVuc2lnbmVkIGludCB2YWx1ZTsKLSB9IGNsZWFyMTsKKyAgICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIH0gY2xlYXIwOworICBzdHJ1Y3QgeworICAgIHVuc2lnbmVkIGludCBtYXNrOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICB1bnNpZ25lZCBpbnQgdmFsdWU7CisgIH0gY2xlYXIxOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS9zaXNfZHJtLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS9zaXNfZHJtLmgKaW5kZXggNDM3ODlhYy4uNWE5ZTg2OCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vc2lzX2RybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL3Npc19kcm0uaApAQCAtMjksMzAgKzI5LDMwIEBACiAjZGVmaW5lIERSTV9TSVNfQUdQX0ZSRUUgMHgxNQogI2RlZmluZSBEUk1fU0lTX0ZCX0lOSVQgMHgxNgogI2RlZmluZSBEUk1fSU9DVExfU0lTX0ZCX0FMTE9DIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fU0lTX0ZCX0FMTE9DLCBkcm1fc2lzX21lbV90KQotI2RlZmluZSBEUk1fSU9DVExfU0lTX0ZCX0ZSRUUgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9TSVNfRkJfRlJFRSwgZHJtX3Npc19tZW1fdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1NJU19GQl9GUkVFIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9TSVNfRkJfRlJFRSwgZHJtX3Npc19tZW1fdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9JT0NUTF9TSVNfQUdQX0lOSVQgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9TSVNfQUdQX0lOSVQsIGRybV9zaXNfYWdwX3QpCiAjZGVmaW5lIERSTV9JT0NUTF9TSVNfQUdQX0FMTE9DIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fU0lTX0FHUF9BTExPQywgZHJtX3Npc19tZW1fdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1NJU19BR1BfRlJFRSBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1NJU19BR1BfRlJFRSwgZHJtX3Npc19tZW1fdCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1NJU19GQl9JTklUIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fU0lTX0ZCX0lOSVQsIGRybV9zaXNfZmJfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1NJU19BR1BfRlJFRSBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fU0lTX0FHUF9GUkVFLCBkcm1fc2lzX21lbV90KQorI2RlZmluZSBEUk1fSU9DVExfU0lTX0ZCX0lOSVQgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1NJU19GQl9JTklULCBkcm1fc2lzX2ZiX3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgewotIGludCBjb250ZXh0OwotIHVuc2lnbmVkIGxvbmcgb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgc2l6ZTsKKyAgaW50IGNvbnRleHQ7CisgIHVuc2lnbmVkIGxvbmcgb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgZnJlZTsKKyAgdW5zaWduZWQgbG9uZyBmcmVlOwogfSBkcm1fc2lzX21lbV90OwogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGxvbmcgb2Zmc2V0LCBzaXplOworICB1bnNpZ25lZCBsb25nIG9mZnNldCwgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV9zaXNfYWdwX3Q7CiB0eXBlZGVmIHN0cnVjdCB7Ci0gdW5zaWduZWQgbG9uZyBvZmZzZXQsIHNpemU7CisgIHVuc2lnbmVkIGxvbmcgb2Zmc2V0LCBzaXplOwogfSBkcm1fc2lzX2ZiX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNpc19maWxlX3ByaXZhdGUgewotIHN0cnVjdCBsaXN0X2hlYWQgb2JqX2xpc3Q7CisgIHN0cnVjdCBsaXN0X2hlYWQgb2JqX2xpc3Q7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vdGVncmFfZHJtLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS90ZWdyYV9kcm0uaAppbmRleCA5MWQ3MWJlLi5lMjA3YzBjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS90ZWdyYV9kcm0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2RybS90ZWdyYV9kcm0uaApAQCAtMjMsMTExICsyMywxNDEgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9URUdSQV9HRU1fQ1JFQVRFX0JPVFRPTV9VUCAoMSA8PCAxKQogc3RydWN0IGRybV90ZWdyYV9nZW1fY3JlYXRlIHsKLSBfX3U2NCBzaXplOwotIF9fdTMyIGZsYWdzOworICBfX3U2NCBzaXplOworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaGFuZGxlOworICBfX3UzMiBoYW5kbGU7CiB9Owogc3RydWN0IGRybV90ZWdyYV9nZW1fbW1hcCB7Ci0gX191MzIgaGFuZGxlOworICBfX3UzMiBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG9mZnNldDsKKyAgX191MzIgb2Zmc2V0OwogfTsKIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0X3JlYWQgewotIF9fdTMyIGlkOworICBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdmFsdWU7CisgIF9fdTMyIHZhbHVlOwogfTsKIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0X2luY3IgewotIF9fdTMyIGlkOworICBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGFkOworICBfX3UzMiBwYWQ7CiB9Owogc3RydWN0IGRybV90ZWdyYV9zeW5jcHRfd2FpdCB7Ci0gX191MzIgaWQ7CisgIF9fdTMyIGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0aHJlc2g7Ci0gX191MzIgdGltZW91dDsKLSBfX3UzMiB2YWx1ZTsKKyAgX191MzIgdGhyZXNoOworICBfX3UzMiB0aW1lb3V0OworICBfX3UzMiB2YWx1ZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fVEVHUkFfTk9fVElNRU9VVCAoMHhmZmZmZmZmZikKIHN0cnVjdCBkcm1fdGVncmFfb3Blbl9jaGFubmVsIHsKLSBfX3UzMiBjbGllbnQ7Ci0gX191MzIgcGFkOworICBfX3UzMiBjbGllbnQ7CisgIF9fdTMyIHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY29udGV4dDsKKyAgX191NjQgY29udGV4dDsKIH07CiBzdHJ1Y3QgZHJtX3RlZ3JhX2Nsb3NlX2NoYW5uZWwgewotIF9fdTY0IGNvbnRleHQ7CisgIF9fdTY0IGNvbnRleHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fdGVncmFfZ2V0X3N5bmNwdCB7Ci0gX191NjQgY29udGV4dDsKLSBfX3UzMiBpbmRleDsKKyAgX191NjQgY29udGV4dDsKKyAgX191MzIgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlkOworICBfX3UzMiBpZDsKIH07CiBzdHJ1Y3QgZHJtX3RlZ3JhX2dldF9zeW5jcHRfYmFzZSB7Ci0gX191NjQgY29udGV4dDsKKyAgX191NjQgY29udGV4dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3luY3B0OwotIF9fdTMyIGlkOworICBfX3UzMiBzeW5jcHQ7CisgIF9fdTMyIGlkOwogfTsKIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWQ7Ci0gX191MzIgaW5jcnM7CisgIF9fdTMyIGlkOworICBfX3UzMiBpbmNyczsKIH07CiBzdHJ1Y3QgZHJtX3RlZ3JhX2NtZGJ1ZiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiBvZmZzZXQ7Ci0gX191MzIgd29yZHM7Ci0gX191MzIgcGFkOworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIG9mZnNldDsKKyAgX191MzIgd29yZHM7CisgIF9fdTMyIHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV90ZWdyYV9yZWxvYyB7Ci0gc3RydWN0IHsKLSBfX3UzMiBoYW5kbGU7CisgIHN0cnVjdCB7CisgICAgX191MzIgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBvZmZzZXQ7Ci0gfSBjbWRidWY7Ci0gc3RydWN0IHsKLSBfX3UzMiBoYW5kbGU7CisgICAgX191MzIgb2Zmc2V0OworICB9IGNtZGJ1ZjsKKyAgc3RydWN0IHsKKyAgICBfX3UzMiBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG9mZnNldDsKLSB9IHRhcmdldDsKLSBfX3UzMiBzaGlmdDsKLSBfX3UzMiBwYWQ7CisgICAgX191MzIgb2Zmc2V0OworICB9IHRhcmdldDsKKyAgX191MzIgc2hpZnQ7CisgIF9fdTMyIHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV90ZWdyYV93YWl0Y2hrIHsKLSBfX3UzMiBoYW5kbGU7Ci0gX191MzIgb2Zmc2V0OworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3luY3B0OwotIF9fdTMyIHRocmVzaDsKKyAgX191MzIgc3luY3B0OworICBfX3UzMiB0aHJlc2g7CiB9Owogc3RydWN0IGRybV90ZWdyYV9zdWJtaXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjb250ZXh0OwotIF9fdTMyIG51bV9zeW5jcHRzOwotIF9fdTMyIG51bV9jbWRidWZzOwotIF9fdTMyIG51bV9yZWxvY3M7CisgIF9fdTY0IGNvbnRleHQ7CisgIF9fdTMyIG51bV9zeW5jcHRzOworICBfX3UzMiBudW1fY21kYnVmczsKKyAgX191MzIgbnVtX3JlbG9jczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbnVtX3dhaXRjaGtzOwotIF9fdTMyIHdhaXRjaGtfbWFzazsKLSBfX3UzMiB0aW1lb3V0OwotIF9fdTMyIHBhZDsKKyAgX191MzIgbnVtX3dhaXRjaGtzOworICBfX3UzMiB3YWl0Y2hrX21hc2s7CisgIF9fdTMyIHRpbWVvdXQ7CisgIF9fdTY0IHN5bmNwdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHN5bmNwdHM7Ci0gX191NjQgY21kYnVmczsKLSBfX3U2NCByZWxvY3M7Ci0gX191NjQgd2FpdGNoa3M7CisgIF9fdTY0IGNtZGJ1ZnM7CisgIF9fdTY0IHJlbG9jczsKKyAgX191NjQgd2FpdGNoa3M7CisgIF9fdTMyIGZlbmNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmZW5jZTsKLSBfX3UzMiByZXNlcnZlZFs1XTsKKyAgX191MzIgcmVzZXJ2ZWRbNV07Cit9OworI2RlZmluZSBEUk1fVEVHUkFfR0VNX1RJTElOR19NT0RFX1BJVENIIDAKKyNkZWZpbmUgRFJNX1RFR1JBX0dFTV9USUxJTkdfTU9ERV9USUxFRCAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fVEVHUkFfR0VNX1RJTElOR19NT0RFX0JMT0NLIDIKK3N0cnVjdCBkcm1fdGVncmFfZ2VtX3NldF90aWxpbmcgeworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIG1vZGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiB2YWx1ZTsKKyAgX191MzIgcGFkOworfTsKK3N0cnVjdCBkcm1fdGVncmFfZ2VtX2dldF90aWxpbmcgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgaGFuZGxlOworICBfX3UzMiBtb2RlOworICBfX3UzMiB2YWx1ZTsKKyAgX191MzIgcGFkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CisjZGVmaW5lIERSTV9URUdSQV9HRU1fQk9UVE9NX1VQICgxIDw8IDApCisjZGVmaW5lIERSTV9URUdSQV9HRU1fRkxBR1MgKERSTV9URUdSQV9HRU1fQk9UVE9NX1VQKQorc3RydWN0IGRybV90ZWdyYV9nZW1fc2V0X2ZsYWdzIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgZmxhZ3M7Cit9Oworc3RydWN0IGRybV90ZWdyYV9nZW1fZ2V0X2ZsYWdzIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgZmxhZ3M7CiB9OwogI2RlZmluZSBEUk1fVEVHUkFfR0VNX0NSRUFURSAweDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTQyLDYgKzE3MiwxMSBAQAogI2RlZmluZSBEUk1fVEVHUkFfU1VCTUlUIDB4MDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9URUdSQV9HRVRfU1lOQ1BUX0JBU0UgMHgwOQorI2RlZmluZSBEUk1fVEVHUkFfR0VNX1NFVF9USUxJTkcgMHgwYQorI2RlZmluZSBEUk1fVEVHUkFfR0VNX0dFVF9USUxJTkcgMHgwYgorI2RlZmluZSBEUk1fVEVHUkFfR0VNX1NFVF9GTEFHUyAweDBjCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBEUk1fVEVHUkFfR0VNX0dFVF9GTEFHUyAweDBkCiAjZGVmaW5lIERSTV9JT0NUTF9URUdSQV9HRU1fQ1JFQVRFIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVEVHUkFfR0VNX0NSRUFURSwgc3RydWN0IGRybV90ZWdyYV9nZW1fY3JlYXRlKQogI2RlZmluZSBEUk1fSU9DVExfVEVHUkFfR0VNX01NQVAgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9URUdSQV9HRU1fTU1BUCwgc3RydWN0IGRybV90ZWdyYV9nZW1fbW1hcCkKICNkZWZpbmUgRFJNX0lPQ1RMX1RFR1JBX1NZTkNQVF9SRUFEIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVEVHUkFfU1lOQ1BUX1JFQUQsIHN0cnVjdCBkcm1fdGVncmFfc3luY3B0X3JlYWQpCkBAIC0xNTQsNSArMTg5LDEwIEBACiAjZGVmaW5lIERSTV9JT0NUTF9URUdSQV9HRVRfU1lOQ1BUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVEVHUkFfR0VUX1NZTkNQVCwgc3RydWN0IGRybV90ZWdyYV9nZXRfc3luY3B0KQogI2RlZmluZSBEUk1fSU9DVExfVEVHUkFfU1VCTUlUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVEVHUkFfU1VCTUlULCBzdHJ1Y3QgZHJtX3RlZ3JhX3N1Ym1pdCkKICNkZWZpbmUgRFJNX0lPQ1RMX1RFR1JBX0dFVF9TWU5DUFRfQkFTRSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1RFR1JBX0dFVF9TWU5DUFRfQkFTRSwgc3RydWN0IGRybV90ZWdyYV9nZXRfc3luY3B0X2Jhc2UpCisjZGVmaW5lIERSTV9JT0NUTF9URUdSQV9HRU1fU0VUX1RJTElORyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1RFR1JBX0dFTV9TRVRfVElMSU5HLCBzdHJ1Y3QgZHJtX3RlZ3JhX2dlbV9zZXRfdGlsaW5nKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRFJNX0lPQ1RMX1RFR1JBX0dFTV9HRVRfVElMSU5HIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVEVHUkFfR0VNX0dFVF9USUxJTkcsIHN0cnVjdCBkcm1fdGVncmFfZ2VtX2dldF90aWxpbmcpCisjZGVmaW5lIERSTV9JT0NUTF9URUdSQV9HRU1fU0VUX0ZMQUdTIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVEVHUkFfR0VNX1NFVF9GTEFHUywgc3RydWN0IGRybV90ZWdyYV9nZW1fc2V0X2ZsYWdzKQorI2RlZmluZSBEUk1fSU9DVExfVEVHUkFfR0VNX0dFVF9GTEFHUyBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1RFR1JBX0dFTV9HRVRfRkxBR1MsIHN0cnVjdCBkcm1fdGVncmFfZ2VtX2dldF9mbGFncykKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvZHJtL3ZpYV9kcm0uaCBiL2xpYmMva2VybmVsL3VhcGkvZHJtL3ZpYV9kcm0uaAppbmRleCA1MzIxYTVkLi44YmUwODZjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2RybS92aWFfZHJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9kcm0vdmlhX2RybS5oCkBAIC0yOCw3ICsyOCw3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSUFfTlJfWFZNQ19MT0NLUyA1CiAjZGVmaW5lIFZJQV9NQVhfQ0FDSEVMSU5FX1NJWkUgNjQKLSNkZWZpbmUgWFZNQ0xPQ0tQVFIoc2FQcml2LGxvY2tObykgICAoKHZvbGF0aWxlIHN0cnVjdCBkcm1faHdfbG9jayAqKSgoKCgodW5zaWduZWQgbG9uZykgKHNhUHJpdiktPlh2TUNMb2NrQXJlYSkgKyAgIChWSUFfTUFYX0NBQ0hFTElORV9TSVpFIC0gMSkpICYgICB+KFZJQV9NQVhfQ0FDSEVMSU5FX1NJWkUgLSAxKSkgKyAgIFZJQV9NQVhfQ0FDSEVMSU5FX1NJWkUqKGxvY2tObykpKQorI2RlZmluZSBYVk1DTE9DS1BUUihzYVByaXYsbG9ja05vKSAoKHZvbGF0aWxlIHN0cnVjdCBkcm1faHdfbG9jayAqKSAoKCgoKHVuc2lnbmVkIGxvbmcpIChzYVByaXYpLT5Ydk1DTG9ja0FyZWEpICsgKFZJQV9NQVhfQ0FDSEVMSU5FX1NJWkUgLSAxKSkgJiB+KFZJQV9NQVhfQ0FDSEVMSU5FX1NJWkUgLSAxKSkgKyBWSUFfTUFYX0NBQ0hFTElORV9TSVpFICogKGxvY2tObykpKQogI2RlZmluZSBWSUFfTlJfVEVYX1JFR0lPTlMgNjQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJQV9MT0dfTUlOX1RFWF9SRUdJT05fU0laRSAxNgpAQCAtNjQsMjAgKzY0LDIwIEBACiAjZGVmaW5lIERSTV9WSUFfRE1BX0JMSVQgMHgwZQogI2RlZmluZSBEUk1fVklBX0JMSVRfU1lOQyAweDBmCiAjZGVmaW5lIERSTV9JT0NUTF9WSUFfQUxMT0NNRU0gRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfQUxMT0NNRU0sIGRybV92aWFfbWVtX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9WSUFfRlJFRU1FTSBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9GUkVFTUVNLCBkcm1fdmlhX21lbV90KQorI2RlZmluZSBEUk1fSU9DVExfVklBX0ZSRUVNRU0gRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9GUkVFTUVNLCBkcm1fdmlhX21lbV90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX1ZJQV9BR1BfSU5JVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9BR1BfSU5JVCwgZHJtX3ZpYV9hZ3BfdCkKICNkZWZpbmUgRFJNX0lPQ1RMX1ZJQV9GQl9JTklUIERSTV9JT1dSKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVklBX0ZCX0lOSVQsIGRybV92aWFfZmJfdCkKICNkZWZpbmUgRFJNX0lPQ1RMX1ZJQV9NQVBfSU5JVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9NQVBfSU5JVCwgZHJtX3ZpYV9pbml0X3QpCi0jZGVmaW5lIERSTV9JT0NUTF9WSUFfREVDX0ZVVEVYIERSTV9JT1coIERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVklBX0RFQ19GVVRFWCwgZHJtX3ZpYV9mdXRleF90KQorI2RlZmluZSBEUk1fSU9DVExfVklBX0RFQ19GVVRFWCBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVklBX0RFQ19GVVRFWCwgZHJtX3ZpYV9mdXRleF90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX0lPQ1RMX1ZJQV9ETUFfSU5JVCBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9ETUFfSU5JVCwgZHJtX3ZpYV9kbWFfaW5pdF90KQotI2RlZmluZSBEUk1fSU9DVExfVklBX0NNREJVRkZFUiBEUk1fSU9XKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9DTURCVUZGRVIsIGRybV92aWFfY21kYnVmZmVyX3QpCi0jZGVmaW5lIERSTV9JT0NUTF9WSUFfRkxVU0ggRFJNX0lPKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9GTFVTSCkKLSNkZWZpbmUgRFJNX0lPQ1RMX1ZJQV9QQ0lDTUQgRFJNX0lPVyggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfUENJQ01ELCBkcm1fdmlhX2NtZGJ1ZmZlcl90KQorI2RlZmluZSBEUk1fSU9DVExfVklBX0NNREJVRkZFUiBEUk1fSU9XKERSTV9DT01NQU5EX0JBU0UgKyBEUk1fVklBX0NNREJVRkZFUiwgZHJtX3ZpYV9jbWRidWZmZXJfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1ZJQV9GTFVTSCBEUk1fSU8oRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfRkxVU0gpCisjZGVmaW5lIERSTV9JT0NUTF9WSUFfUENJQ01EIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfUENJQ01ELCBkcm1fdmlhX2NtZGJ1ZmZlcl90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRFJNX0lPQ1RMX1ZJQV9DTURCVUZfU0laRSBEUk1fSU9XUiggRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfQ01EQlVGX1NJWkUsICAgZHJtX3ZpYV9jbWRidWZfc2l6ZV90KQotI2RlZmluZSBEUk1fSU9DVExfVklBX1dBSVRfSVJRIERSTV9JT1dSKCBEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9XQUlUX0lSUSwgZHJtX3ZpYV9pcnF3YWl0X3QpCisjZGVmaW5lIERSTV9JT0NUTF9WSUFfQ01EQlVGX1NJWkUgRFJNX0lPV1IoRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfQ01EQlVGX1NJWkUsIGRybV92aWFfY21kYnVmX3NpemVfdCkKKyNkZWZpbmUgRFJNX0lPQ1RMX1ZJQV9XQUlUX0lSUSBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9XQUlUX0lSUSwgZHJtX3ZpYV9pcnF3YWl0X3QpCiAjZGVmaW5lIERSTV9JT0NUTF9WSUFfRE1BX0JMSVQgRFJNX0lPVyhEUk1fQ09NTUFORF9CQVNFICsgRFJNX1ZJQV9ETUFfQkxJVCwgZHJtX3ZpYV9kbWFibGl0X3QpCiAjZGVmaW5lIERSTV9JT0NUTF9WSUFfQkxJVF9TWU5DIERSTV9JT1coRFJNX0NPTU1BTkRfQkFTRSArIERSTV9WSUFfQkxJVF9TWU5DLCBkcm1fdmlhX2JsaXRzeW5jX3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtOTQsMTUyICs5NCwxNTIgQEAKICNkZWZpbmUgVklBX01FTV9NSVhFRCAzCiAjZGVmaW5lIFZJQV9NRU1fVU5LTk9XTiA0CiB0eXBlZGVmIHN0cnVjdCB7Ci0gX191MzIgb2Zmc2V0OworICBfX3UzMiBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNpemU7CisgIF9fdTMyIHNpemU7CiB9IGRybV92aWFfYWdwX3Q7CiB0eXBlZGVmIHN0cnVjdCB7Ci0gX191MzIgb2Zmc2V0OworICBfX3UzMiBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNpemU7CisgIF9fdTMyIHNpemU7CiB9IGRybV92aWFfZmJfdDsKIHR5cGVkZWYgc3RydWN0IHsKLSBfX3UzMiBjb250ZXh0OworICBfX3UzMiBjb250ZXh0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eXBlOwotIF9fdTMyIHNpemU7Ci0gdW5zaWduZWQgbG9uZyBpbmRleDsKLSB1bnNpZ25lZCBsb25nIG9mZnNldDsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBpbmRleDsKKyAgdW5zaWduZWQgbG9uZyBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBkcm1fdmlhX21lbV90OwogdHlwZWRlZiBzdHJ1Y3QgX2RybV92aWFfaW5pdCB7Ci0gZW51bSB7Ci0gVklBX0lOSVRfTUFQID0gMHgwMSwKKyAgZW51bSB7CisgICAgVklBX0lOSVRfTUFQID0gMHgwMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVklBX0NMRUFOVVBfTUFQID0gMHgwMgotIH0gZnVuYzsKLSB1bnNpZ25lZCBsb25nIHNhcmVhX3ByaXZfb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgZmJfb2Zmc2V0OworICAgIFZJQV9DTEVBTlVQX01BUCA9IDB4MDIKKyAgfSBmdW5jOworICB1bnNpZ25lZCBsb25nIHNhcmVhX3ByaXZfb2Zmc2V0OworICB1bnNpZ25lZCBsb25nIGZiX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBtbWlvX29mZnNldDsKLSB1bnNpZ25lZCBsb25nIGFncEFkZHI7CisgIHVuc2lnbmVkIGxvbmcgbW1pb19vZmZzZXQ7CisgIHVuc2lnbmVkIGxvbmcgYWdwQWRkcjsKIH0gZHJtX3ZpYV9pbml0X3Q7CiB0eXBlZGVmIHN0cnVjdCBfZHJtX3ZpYV9mdXRleCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGVudW0gewotIFZJQV9GVVRFWF9XQUlUID0gMHgwMCwKLSBWSUFfRlVURVhfV0FLRSA9IDBYMDEKLSB9IGZ1bmM7CisgIGVudW0geworICAgIFZJQV9GVVRFWF9XQUlUID0gMHgwMCwKKyAgICBWSUFfRlVURVhfV0FLRSA9IDBYMDEKKyAgfSBmdW5jOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtczsKLSBfX3UzMiBsb2NrOwotIF9fdTMyIHZhbDsKKyAgX191MzIgbXM7CisgIF9fdTMyIGxvY2s7CisgIF9fdTMyIHZhbDsKIH0gZHJtX3ZpYV9mdXRleF90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IF9kcm1fdmlhX2RtYV9pbml0IHsKLSBlbnVtIHsKLSBWSUFfSU5JVF9ETUEgPSAweDAxLAotIFZJQV9DTEVBTlVQX0RNQSA9IDB4MDIsCisgIGVudW0geworICAgIFZJQV9JTklUX0RNQSA9IDB4MDEsCisgICAgVklBX0NMRUFOVVBfRE1BID0gMHgwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVklBX0RNQV9JTklUSUFMSVpFRCA9IDB4MDMKLSB9IGZ1bmM7Ci0gdW5zaWduZWQgbG9uZyBvZmZzZXQ7Ci0gdW5zaWduZWQgbG9uZyBzaXplOworICAgIFZJQV9ETUFfSU5JVElBTElaRUQgPSAweDAzCisgIH0gZnVuYzsKKyAgdW5zaWduZWQgbG9uZyBvZmZzZXQ7CisgIHVuc2lnbmVkIGxvbmcgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyByZWdfcGF1c2VfYWRkcjsKKyAgdW5zaWduZWQgbG9uZyByZWdfcGF1c2VfYWRkcjsKIH0gZHJtX3ZpYV9kbWFfaW5pdF90OwogdHlwZWRlZiBzdHJ1Y3QgX2RybV92aWFfY21kYnVmZmVyIHsKLSBjaGFyIF9fdXNlciAqYnVmOworICBjaGFyIF9fdXNlciAqIGJ1ZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBzaXplOworICB1bnNpZ25lZCBsb25nIHNpemU7CiB9IGRybV92aWFfY21kYnVmZmVyX3Q7CiB0eXBlZGVmIHN0cnVjdCBfZHJtX3ZpYV90ZXhfcmVnaW9uIHsKLSB1bnNpZ25lZCBjaGFyIG5leHQsIHByZXY7CisgIHVuc2lnbmVkIGNoYXIgbmV4dCwgcHJldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBpblVzZTsKLSBpbnQgYWdlOworICB1bnNpZ25lZCBjaGFyIGluVXNlOworICBpbnQgYWdlOwogfSBkcm1fdmlhX3RleF9yZWdpb25fdDsKIHR5cGVkZWYgc3RydWN0IF9kcm1fdmlhX3NhcmVhIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGRpcnR5OwotIHVuc2lnbmVkIGludCBuYm94OwotIHN0cnVjdCBkcm1fY2xpcF9yZWN0IGJveGVzW1ZJQV9OUl9TQVJFQV9DTElQUkVDVFNdOwotIGRybV92aWFfdGV4X3JlZ2lvbl90IHRleExpc3RbVklBX05SX1RFWF9SRUdJT05TICsgMV07CisgIHVuc2lnbmVkIGludCBkaXJ0eTsKKyAgdW5zaWduZWQgaW50IG5ib3g7CisgIHN0cnVjdCBkcm1fY2xpcF9yZWN0IGJveGVzW1ZJQV9OUl9TQVJFQV9DTElQUkVDVFNdOworICBkcm1fdmlhX3RleF9yZWdpb25fdCB0ZXhMaXN0W1ZJQV9OUl9URVhfUkVHSU9OUyArIDFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdGV4QWdlOwotIGludCBjdHhPd25lcjsKLSBpbnQgdmVydGV4UHJpbTsKLSBjaGFyIFh2TUNMb2NrQXJlYVtWSUFfTUFYX0NBQ0hFTElORV9TSVpFICogKFZJQV9OUl9YVk1DX0xPQ0tTICsgMSldOworICBpbnQgdGV4QWdlOworICBpbnQgY3R4T3duZXI7CisgIGludCB2ZXJ0ZXhQcmltOworICBjaGFyIFh2TUNMb2NrQXJlYVtWSUFfTUFYX0NBQ0hFTElORV9TSVpFICogKFZJQV9OUl9YVk1DX0xPQ0tTICsgMSldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgWHZNQ0Rpc3BsYXlpbmdbVklBX05SX1hWTUNfUE9SVFNdOwotIHVuc2lnbmVkIGludCBYdk1DU3ViUGljT25bVklBX05SX1hWTUNfUE9SVFNdOwotIHVuc2lnbmVkIGludCBYdk1DQ3R4Tm9HcmFiYmVkOwotIHVuc2lnbmVkIGludCBwZkN1cnJlbnRPZmZzZXQ7CisgIHVuc2lnbmVkIGludCBYdk1DRGlzcGxheWluZ1tWSUFfTlJfWFZNQ19QT1JUU107CisgIHVuc2lnbmVkIGludCBYdk1DU3ViUGljT25bVklBX05SX1hWTUNfUE9SVFNdOworICB1bnNpZ25lZCBpbnQgWHZNQ0N0eE5vR3JhYmJlZDsKKyAgdW5zaWduZWQgaW50IHBmQ3VycmVudE9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGRybV92aWFfc2FyZWFfdDsKIHR5cGVkZWYgc3RydWN0IF9kcm1fdmlhX2NtZGJ1Zl9zaXplIHsKLSBlbnVtIHsKLSBWSUFfQ01EQlVGX1NQQUNFID0gMHgwMSwKKyAgZW51bSB7CisgICAgVklBX0NNREJVRl9TUEFDRSA9IDB4MDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZJQV9DTURCVUZfTEFHID0gMHgwMgotIH0gZnVuYzsKLSBpbnQgd2FpdDsKLSBfX3UzMiBzaXplOworICAgIFZJQV9DTURCVUZfTEFHID0gMHgwMgorICB9IGZ1bmM7CisgIGludCB3YWl0OworICBfX3UzMiBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gZHJtX3ZpYV9jbWRidWZfc2l6ZV90OwogdHlwZWRlZiBlbnVtIHsKLSBWSUFfSVJRX0FCU09MVVRFID0gMHgwLAotIFZJQV9JUlFfUkVMQVRJVkUgPSAweDEsCisgIFZJQV9JUlFfQUJTT0xVVEUgPSAweDAsCisgIFZJQV9JUlFfUkVMQVRJVkUgPSAweDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZJQV9JUlFfU0lHTkFMID0gMHgxMDAwMDAwMCwKLSBWSUFfSVJRX0ZPUkNFX1NFUVVFTkNFID0gMHgyMDAwMDAwMAorICBWSUFfSVJRX1NJR05BTCA9IDB4MTAwMDAwMDAsCisgIFZJQV9JUlFfRk9SQ0VfU0VRVUVOQ0UgPSAweDIwMDAwMDAwCiB9IHZpYV9pcnFfc2VxX3R5cGVfdDsKICNkZWZpbmUgVklBX0lSUV9GTEFHU19NQVNLIDB4RjAwMDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGRybV92aWFfaXJxcyB7Ci0gZHJtX3ZpYV9pcnFfaHF2MCA9IDAsCi0gZHJtX3ZpYV9pcnFfaHF2MSwKLSBkcm1fdmlhX2lycV9kbWEwX2RkLAorICBkcm1fdmlhX2lycV9ocXYwID0gMCwKKyAgZHJtX3ZpYV9pcnFfaHF2MSwKKyAgZHJtX3ZpYV9pcnFfZG1hMF9kZCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZHJtX3ZpYV9pcnFfZG1hMF90ZCwKLSBkcm1fdmlhX2lycV9kbWExX2RkLAotIGRybV92aWFfaXJxX2RtYTFfdGQsCi0gZHJtX3ZpYV9pcnFfbnVtCisgIGRybV92aWFfaXJxX2RtYTBfdGQsCisgIGRybV92aWFfaXJxX2RtYTFfZGQsCisgIGRybV92aWFfaXJxX2RtYTFfdGQsCisgIGRybV92aWFfaXJxX251bQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX3ZpYV93YWl0X2lycV9yZXF1ZXN0IHsKLSB1bnNpZ25lZCBpcnE7Ci0gdmlhX2lycV9zZXFfdHlwZV90IHR5cGU7CisgIHVuc2lnbmVkIGlycTsKKyAgdmlhX2lycV9zZXFfdHlwZV90IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNlcXVlbmNlOwotIF9fdTMyIHNpZ25hbDsKKyAgX191MzIgc2VxdWVuY2U7CisgIF9fdTMyIHNpZ25hbDsKIH07CiB0eXBlZGVmIHVuaW9uIGRybV92aWFfaXJxd2FpdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkcm1fdmlhX3dhaXRfaXJxX3JlcXVlc3QgcmVxdWVzdDsKLSBzdHJ1Y3QgZHJtX3dhaXRfdmJsYW5rX3JlcGx5IHJlcGx5OworICBzdHJ1Y3QgZHJtX3ZpYV93YWl0X2lycV9yZXF1ZXN0IHJlcXVlc3Q7CisgIHN0cnVjdCBkcm1fd2FpdF92YmxhbmtfcmVwbHkgcmVwbHk7CiB9IGRybV92aWFfaXJxd2FpdF90OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3ZpYV9ibGl0c3luYyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN5bmNfaGFuZGxlOwotIHVuc2lnbmVkIGVuZ2luZTsKKyAgX191MzIgc3luY19oYW5kbGU7CisgIHVuc2lnbmVkIGVuZ2luZTsKIH0gZHJtX3ZpYV9ibGl0c3luY190OwogdHlwZWRlZiBzdHJ1Y3QgZHJtX3ZpYV9kbWFibGl0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbnVtX2xpbmVzOwotIF9fdTMyIGxpbmVfbGVuZ3RoOwotIF9fdTMyIGZiX2FkZHI7Ci0gX191MzIgZmJfc3RyaWRlOworICBfX3UzMiBudW1fbGluZXM7CisgIF9fdTMyIGxpbmVfbGVuZ3RoOworICBfX3UzMiBmYl9hZGRyOworICBfX3UzMiBmYl9zdHJpZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgKm1lbV9hZGRyOwotIF9fdTMyIG1lbV9zdHJpZGU7Ci0gX191MzIgZmxhZ3M7Ci0gaW50IHRvX2ZiOworICB1bnNpZ25lZCBjaGFyICogbWVtX2FkZHI7CisgIF9fdTMyIG1lbV9zdHJpZGU7CisgIF9fdTMyIGZsYWdzOworICBpbnQgdG9fZmI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRybV92aWFfYmxpdHN5bmNfdCBzeW5jOworICBkcm1fdmlhX2JsaXRzeW5jX3Qgc3luYzsKIH0gZHJtX3ZpYV9kbWFibGl0X3Q7CiBzdHJ1Y3QgdmlhX2ZpbGVfcHJpdmF0ZSB7Ci0gc3RydWN0IGxpc3RfaGVhZCBvYmpfbGlzdDsKKyAgc3RydWN0IGxpc3RfaGVhZCBvYmpfbGlzdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2RybS92bXdnZnhfZHJtLmggYi9saWJjL2tlcm5lbC91YXBpL2RybS92bXdnZnhfZHJtLmgKaW5kZXggODQ5ZWY3ZC4uYzEyY2RkMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9kcm0vdm13Z2Z4X2RybS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvZHJtL3Ztd2dmeF9kcm0uaApAQCAtMTgsNyArMTgsNyBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9fVk1XR0ZYX0RSTV9IX18KICNkZWZpbmUgX19WTVdHRlhfRFJNX0hfXwotI2luY2x1ZGUgPGRybS5oPgorI2luY2x1ZGUgPGRybS9kcm0uaD4KICNkZWZpbmUgRFJNX1ZNV19NQVhfU1VSRkFDRV9GQUNFUyA2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fVk1XX01BWF9NSVBfTEVWRUxTIDI0CkBAIC02OCwzMDIgKzY4LDMwNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJNX1ZNV19QQVJBTV9NQVhfTU9CX01FTU9SWSA5CiAjZGVmaW5lIERSTV9WTVdfUEFSQU1fTUFYX01PQl9TSVpFIDEwCi1zdHJ1Y3QgZHJtX3Ztd19nZXRwYXJhbV9hcmcgewotIHVpbnQ2NF90IHZhbHVlOworZW51bSBkcm1fdm13X2hhbmRsZV90eXBlIHsKKyAgRFJNX1ZNV19IQU5ETEVfTEVHQUNZID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcGFyYW07Ci0gdWludDMyX3QgcGFkNjQ7CisgIERSTV9WTVdfSEFORExFX1BSSU1FID0gMQorfTsKK3N0cnVjdCBkcm1fdm13X2dldHBhcmFtX2FyZyB7CisgIHVpbnQ2NF90IHZhbHVlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDMyX3QgcGFyYW07CisgIHVpbnQzMl90IHBhZDY0OwogfTsKIHN0cnVjdCBkcm1fdm13X2NvbnRleHRfYXJnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50MzJfdCBjaWQ7Ci0gdWludDMyX3QgcGFkNjQ7CisgIGludDMyX3QgY2lkOworICB1aW50MzJfdCBwYWQ2NDsKIH07CiBzdHJ1Y3QgZHJtX3Ztd19zdXJmYWNlX2NyZWF0ZV9yZXEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBmbGFnczsKLSB1aW50MzJfdCBmb3JtYXQ7Ci0gdWludDMyX3QgbWlwX2xldmVsc1tEUk1fVk1XX01BWF9TVVJGQUNFX0ZBQ0VTXTsKLSB1aW50NjRfdCBzaXplX2FkZHI7CisgIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBmb3JtYXQ7CisgIHVpbnQzMl90IG1pcF9sZXZlbHNbRFJNX1ZNV19NQVhfU1VSRkFDRV9GQUNFU107CisgIHVpbnQ2NF90IHNpemVfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50MzJfdCBzaGFyZWFibGU7Ci0gaW50MzJfdCBzY2Fub3V0OworICBpbnQzMl90IHNoYXJlYWJsZTsKKyAgaW50MzJfdCBzY2Fub3V0OwogfTsKIHN0cnVjdCBkcm1fdm13X3N1cmZhY2VfYXJnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50MzJfdCBzaWQ7Ci0gdWludDMyX3QgcGFkNjQ7CisgIGludDMyX3Qgc2lkOworICBlbnVtIGRybV92bXdfaGFuZGxlX3R5cGUgaGFuZGxlX3R5cGU7CiB9Owogc3RydWN0IGRybV92bXdfc2l6ZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHdpZHRoOwotIHVpbnQzMl90IGhlaWdodDsKLSB1aW50MzJfdCBkZXB0aDsKLSB1aW50MzJfdCBwYWQ2NDsKKyAgdWludDMyX3Qgd2lkdGg7CisgIHVpbnQzMl90IGhlaWdodDsKKyAgdWludDMyX3QgZGVwdGg7CisgIHVpbnQzMl90IHBhZDY0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiB1bmlvbiBkcm1fdm13X3N1cmZhY2VfY3JlYXRlX2FyZyB7Ci0gc3RydWN0IGRybV92bXdfc3VyZmFjZV9hcmcgcmVwOwotIHN0cnVjdCBkcm1fdm13X3N1cmZhY2VfY3JlYXRlX3JlcSByZXE7CisgIHN0cnVjdCBkcm1fdm13X3N1cmZhY2VfYXJnIHJlcDsKKyAgc3RydWN0IGRybV92bXdfc3VyZmFjZV9jcmVhdGVfcmVxIHJlcTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogdW5pb24gZHJtX3Ztd19zdXJmYWNlX3JlZmVyZW5jZV9hcmcgewotIHN0cnVjdCBkcm1fdm13X3N1cmZhY2VfY3JlYXRlX3JlcSByZXA7Ci0gc3RydWN0IGRybV92bXdfc3VyZmFjZV9hcmcgcmVxOworICBzdHJ1Y3QgZHJtX3Ztd19zdXJmYWNlX2NyZWF0ZV9yZXEgcmVwOworICBzdHJ1Y3QgZHJtX3Ztd19zdXJmYWNlX2FyZyByZXE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRFJNX1ZNV19FWEVDQlVGX1ZFUlNJT04gMQogc3RydWN0IGRybV92bXdfZXhlY2J1Zl9hcmcgewotIHVpbnQ2NF90IGNvbW1hbmRzOworICB1aW50NjRfdCBjb21tYW5kczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgY29tbWFuZF9zaXplOwotIHVpbnQzMl90IHRocm90dGxlX3VzOwotIHVpbnQ2NF90IGZlbmNlX3JlcDsKLSB1aW50MzJfdCB2ZXJzaW9uOworICB1aW50MzJfdCBjb21tYW5kX3NpemU7CisgIHVpbnQzMl90IHRocm90dGxlX3VzOworICB1aW50NjRfdCBmZW5jZV9yZXA7CisgIHVpbnQzMl90IHZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBmbGFnczsKIH07CiBzdHJ1Y3QgZHJtX3Ztd19mZW5jZV9yZXAgewotIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBtYXNrOwotIHVpbnQzMl90IHNlcW5vOwotIHVpbnQzMl90IHBhc3NlZF9zZXFubzsKLSB1aW50MzJfdCBwYWQ2NDsKKyAgdWludDMyX3QgbWFzazsKKyAgdWludDMyX3Qgc2Vxbm87CisgIHVpbnQzMl90IHBhc3NlZF9zZXFubzsKKyAgdWludDMyX3QgcGFkNjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludDMyX3QgZXJyb3I7CisgIGludDMyX3QgZXJyb3I7CiB9Owogc3RydWN0IGRybV92bXdfYWxsb2NfZG1hYnVmX3JlcSB7Ci0gdWludDMyX3Qgc2l6ZTsKKyAgdWludDMyX3Qgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcGFkNjQ7CisgIHVpbnQzMl90IHBhZDY0OwogfTsKIHN0cnVjdCBkcm1fdm13X2RtYWJ1Zl9yZXAgewotIHVpbnQ2NF90IG1hcF9oYW5kbGU7CisgIHVpbnQ2NF90IG1hcF9oYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBjdXJfZ21yX2lkOwotIHVpbnQzMl90IGN1cl9nbXJfb2Zmc2V0OwotIHVpbnQzMl90IHBhZDY0OworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IGN1cl9nbXJfaWQ7CisgIHVpbnQzMl90IGN1cl9nbXJfb2Zmc2V0OworICB1aW50MzJfdCBwYWQ2NDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogdW5pb24gZHJtX3Ztd19hbGxvY19kbWFidWZfYXJnIHsKLSBzdHJ1Y3QgZHJtX3Ztd19hbGxvY19kbWFidWZfcmVxIHJlcTsKLSBzdHJ1Y3QgZHJtX3Ztd19kbWFidWZfcmVwIHJlcDsKKyAgc3RydWN0IGRybV92bXdfYWxsb2NfZG1hYnVmX3JlcSByZXE7CisgIHN0cnVjdCBkcm1fdm13X2RtYWJ1Zl9yZXAgcmVwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX3Ztd191bnJlZl9kbWFidWZfYXJnIHsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgcGFkNjQ7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgcGFkNjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fdm13X3JlY3QgewotIGludDMyX3QgeDsKLSBpbnQzMl90IHk7CisgIGludDMyX3QgeDsKKyAgaW50MzJfdCB5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCB3OwotIHVpbnQzMl90IGg7CisgIHVpbnQzMl90IHc7CisgIHVpbnQzMl90IGg7CiB9Owogc3RydWN0IGRybV92bXdfY29udHJvbF9zdHJlYW1fYXJnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3Qgc3RyZWFtX2lkOwotIHVpbnQzMl90IGVuYWJsZWQ7Ci0gdWludDMyX3QgZmxhZ3M7Ci0gdWludDMyX3QgY29sb3Jfa2V5OworICB1aW50MzJfdCBzdHJlYW1faWQ7CisgIHVpbnQzMl90IGVuYWJsZWQ7CisgIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBjb2xvcl9rZXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBvZmZzZXQ7Ci0gaW50MzJfdCBmb3JtYXQ7Ci0gdWludDMyX3Qgc2l6ZTsKKyAgdWludDMyX3QgaGFuZGxlOworICB1aW50MzJfdCBvZmZzZXQ7CisgIGludDMyX3QgZm9ybWF0OworICB1aW50MzJfdCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCB3aWR0aDsKLSB1aW50MzJfdCBoZWlnaHQ7Ci0gdWludDMyX3QgcGl0Y2hbM107Ci0gdWludDMyX3QgcGFkNjQ7CisgIHVpbnQzMl90IHdpZHRoOworICB1aW50MzJfdCBoZWlnaHQ7CisgIHVpbnQzMl90IHBpdGNoWzNdOworICB1aW50MzJfdCBwYWQ2NDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGRybV92bXdfcmVjdCBzcmM7Ci0gc3RydWN0IGRybV92bXdfcmVjdCBkc3Q7CisgIHN0cnVjdCBkcm1fdm13X3JlY3Qgc3JjOworICBzdHJ1Y3QgZHJtX3Ztd19yZWN0IGRzdDsKIH07CiAjZGVmaW5lIERSTV9WTVdfQ1VSU09SX0JZUEFTU19BTEwgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERSTV9WTVdfQ1VSU09SX0JZUEFTU19GTEFHUyAoMSkKIHN0cnVjdCBkcm1fdm13X2N1cnNvcl9ieXBhc3NfYXJnIHsKLSB1aW50MzJfdCBmbGFnczsKLSB1aW50MzJfdCBjcnRjX2lkOworICB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgY3J0Y19pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50MzJfdCB4cG9zOwotIGludDMyX3QgeXBvczsKLSBpbnQzMl90IHhob3Q7Ci0gaW50MzJfdCB5aG90OworICBpbnQzMl90IHhwb3M7CisgIGludDMyX3QgeXBvczsKKyAgaW50MzJfdCB4aG90OworICBpbnQzMl90IHlob3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fdm13X3N0cmVhbV9hcmcgewotIHVpbnQzMl90IHN0cmVhbV9pZDsKLSB1aW50MzJfdCBwYWQ2NDsKKyAgdWludDMyX3Qgc3RyZWFtX2lkOworICB1aW50MzJfdCBwYWQ2NDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGRybV92bXdfZ2V0XzNkX2NhcF9hcmcgewotIHVpbnQ2NF90IGJ1ZmZlcjsKLSB1aW50MzJfdCBtYXhfc2l6ZTsKKyAgdWludDY0X3QgYnVmZmVyOworICB1aW50MzJfdCBtYXhfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcGFkNjQ7CisgIHVpbnQzMl90IHBhZDY0OwogfTsKICNkZWZpbmUgRFJNX1ZNV19GRU5DRV9GTEFHX0VYRUMgKDEgPDwgMCkKICNkZWZpbmUgRFJNX1ZNV19GRU5DRV9GTEFHX1FVRVJZICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEUk1fVk1XX1dBSVRfT1BUSU9OX1VOUkVGICgxIDw8IDApCiBzdHJ1Y3QgZHJtX3Ztd19mZW5jZV93YWl0X2FyZyB7Ci0gdWludDMyX3QgaGFuZGxlOwotIGludDMyX3QgY29va2llX3ZhbGlkOworICB1aW50MzJfdCBoYW5kbGU7CisgIGludDMyX3QgY29va2llX3ZhbGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBrZXJuZWxfY29va2llOwotIHVpbnQ2NF90IHRpbWVvdXRfdXM7Ci0gaW50MzJfdCBsYXp5OwotIGludDMyX3QgZmxhZ3M7CisgIHVpbnQ2NF90IGtlcm5lbF9jb29raWU7CisgIHVpbnQ2NF90IHRpbWVvdXRfdXM7CisgIGludDMyX3QgbGF6eTsKKyAgaW50MzJfdCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50MzJfdCB3YWl0X29wdGlvbnM7Ci0gaW50MzJfdCBwYWQ2NDsKKyAgaW50MzJfdCB3YWl0X29wdGlvbnM7CisgIGludDMyX3QgcGFkNjQ7CiB9Owogc3RydWN0IGRybV92bXdfZmVuY2Vfc2lnbmFsZWRfYXJnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IGZsYWdzOwotIGludDMyX3Qgc2lnbmFsZWQ7Ci0gdWludDMyX3QgcGFzc2VkX3NlcW5vOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IGZsYWdzOworICBpbnQzMl90IHNpZ25hbGVkOworICB1aW50MzJfdCBwYXNzZWRfc2Vxbm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHNpZ25hbGVkX2ZsYWdzOwotIHVpbnQzMl90IHBhZDY0OworICB1aW50MzJfdCBzaWduYWxlZF9mbGFnczsKKyAgdWludDMyX3QgcGFkNjQ7CiB9Owogc3RydWN0IGRybV92bXdfZmVuY2VfYXJnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IHBhZDY0OworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IHBhZDY0OwogfTsKICNkZWZpbmUgRFJNX1ZNV19FVkVOVF9GRU5DRV9TSUdOQUxFRCAweDgwMDAwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV92bXdfZXZlbnRfZmVuY2UgewotIHN0cnVjdCBkcm1fZXZlbnQgYmFzZTsKLSB1aW50NjRfdCB1c2VyX2RhdGE7Ci0gdWludDMyX3QgdHZfc2VjOworICBzdHJ1Y3QgZHJtX2V2ZW50IGJhc2U7CisgIHVpbnQ2NF90IHVzZXJfZGF0YTsKKyAgdWludDMyX3QgdHZfc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCB0dl91c2VjOworICB1aW50MzJfdCB0dl91c2VjOwogfTsKICNkZWZpbmUgRFJNX1ZNV19GRV9GTEFHX1JFUV9USU1FICgxIDw8IDApCiBzdHJ1Y3QgZHJtX3Ztd19mZW5jZV9ldmVudF9hcmcgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBmZW5jZV9yZXA7Ci0gdWludDY0X3QgdXNlcl9kYXRhOwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBmbGFnczsKKyAgdWludDY0X3QgZmVuY2VfcmVwOworICB1aW50NjRfdCB1c2VyX2RhdGE7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fdm13X3ByZXNlbnRfYXJnIHsKLSB1aW50MzJfdCBmYl9pZDsKLSB1aW50MzJfdCBzaWQ7CisgIHVpbnQzMl90IGZiX2lkOworICB1aW50MzJfdCBzaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludDMyX3QgZGVzdF94OwotIGludDMyX3QgZGVzdF95OwotIHVpbnQ2NF90IGNsaXBzX3B0cjsKLSB1aW50MzJfdCBudW1fY2xpcHM7CisgIGludDMyX3QgZGVzdF94OworICBpbnQzMl90IGRlc3RfeTsKKyAgdWludDY0X3QgY2xpcHNfcHRyOworICB1aW50MzJfdCBudW1fY2xpcHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHBhZDY0OworICB1aW50MzJfdCBwYWQ2NDsKIH07CiBzdHJ1Y3QgZHJtX3Ztd19wcmVzZW50X3JlYWRiYWNrX2FyZyB7Ci0gdWludDMyX3QgZmJfaWQ7CisgIHVpbnQzMl90IGZiX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBudW1fY2xpcHM7Ci0gdWludDY0X3QgY2xpcHNfcHRyOwotIHVpbnQ2NF90IGZlbmNlX3JlcDsKKyAgdWludDMyX3QgbnVtX2NsaXBzOworICB1aW50NjRfdCBjbGlwc19wdHI7CisgIHVpbnQ2NF90IGZlbmNlX3JlcDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGRybV92bXdfdXBkYXRlX2xheW91dF9hcmcgewotIHVpbnQzMl90IG51bV9vdXRwdXRzOwotIHVpbnQzMl90IHBhZDY0OwotIHVpbnQ2NF90IHJlY3RzOworICB1aW50MzJfdCBudW1fb3V0cHV0czsKKyAgdWludDMyX3QgcGFkNjQ7CisgIHVpbnQ2NF90IHJlY3RzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGRybV92bXdfc2hhZGVyX3R5cGUgewotIGRybV92bXdfc2hhZGVyX3R5cGVfdnMgPSAwLAotIGRybV92bXdfc2hhZGVyX3R5cGVfcHMsCisgIGRybV92bXdfc2hhZGVyX3R5cGVfdnMgPSAwLAorICBkcm1fdm13X3NoYWRlcl90eXBlX3BzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkcm1fdm13X3NoYWRlcl90eXBlX2dzCisgIGRybV92bXdfc2hhZGVyX3R5cGVfZ3MKIH07CiBzdHJ1Y3QgZHJtX3Ztd19zaGFkZXJfY3JlYXRlX2FyZyB7Ci0gZW51bSBkcm1fdm13X3NoYWRlcl90eXBlIHNoYWRlcl90eXBlOworICBlbnVtIGRybV92bXdfc2hhZGVyX3R5cGUgc2hhZGVyX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHNpemU7Ci0gdWludDMyX3QgYnVmZmVyX2hhbmRsZTsKLSB1aW50MzJfdCBzaGFkZXJfaGFuZGxlOwotIHVpbnQ2NF90IG9mZnNldDsKKyAgdWludDMyX3Qgc2l6ZTsKKyAgdWludDMyX3QgYnVmZmVyX2hhbmRsZTsKKyAgdWludDMyX3Qgc2hhZGVyX2hhbmRsZTsKKyAgdWludDY0X3Qgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHJtX3Ztd19zaGFkZXJfYXJnIHsKLSB1aW50MzJfdCBoYW5kbGU7Ci0gdWludDMyX3QgcGFkNjQ7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgcGFkNjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZHJtX3Ztd19zdXJmYWNlX2ZsYWdzIHsKLSBkcm1fdm13X3N1cmZhY2VfZmxhZ19zaGFyZWFibGUgPSAoMSA8PCAwKSwKLSBkcm1fdm13X3N1cmZhY2VfZmxhZ19zY2Fub3V0ID0gKDEgPDwgMSksCisgIGRybV92bXdfc3VyZmFjZV9mbGFnX3NoYXJlYWJsZSA9ICgxIDw8IDApLAorICBkcm1fdm13X3N1cmZhY2VfZmxhZ19zY2Fub3V0ID0gKDEgPDwgMSksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRybV92bXdfc3VyZmFjZV9mbGFnX2NyZWF0ZV9idWZmZXIgPSAoMSA8PCAyKQorICBkcm1fdm13X3N1cmZhY2VfZmxhZ19jcmVhdGVfYnVmZmVyID0gKDEgPDwgMikKIH07CiBzdHJ1Y3QgZHJtX3Ztd19nYl9zdXJmYWNlX2NyZWF0ZV9yZXEgewotIHVpbnQzMl90IHN2Z2EzZF9mbGFnczsKKyAgdWludDMyX3Qgc3ZnYTNkX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBmb3JtYXQ7Ci0gdWludDMyX3QgbWlwX2xldmVsczsKLSBlbnVtIGRybV92bXdfc3VyZmFjZV9mbGFncyBkcm1fc3VyZmFjZV9mbGFnczsKLSB1aW50MzJfdCBtdWx0aXNhbXBsZV9jb3VudDsKKyAgdWludDMyX3QgZm9ybWF0OworICB1aW50MzJfdCBtaXBfbGV2ZWxzOworICBlbnVtIGRybV92bXdfc3VyZmFjZV9mbGFncyBkcm1fc3VyZmFjZV9mbGFnczsKKyAgdWludDMyX3QgbXVsdGlzYW1wbGVfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGF1dG9nZW5fZmlsdGVyOwotIHVpbnQzMl90IGJ1ZmZlcl9oYW5kbGU7Ci0gdWludDMyX3QgcGFkNjQ7Ci0gc3RydWN0IGRybV92bXdfc2l6ZSBiYXNlX3NpemU7CisgIHVpbnQzMl90IGF1dG9nZW5fZmlsdGVyOworICB1aW50MzJfdCBidWZmZXJfaGFuZGxlOworICB1aW50MzJfdCBwYWQ2NDsKKyAgc3RydWN0IGRybV92bXdfc2l6ZSBiYXNlX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkcm1fdm13X2diX3N1cmZhY2VfY3JlYXRlX3JlcCB7Ci0gdWludDMyX3QgaGFuZGxlOwotIHVpbnQzMl90IGJhY2t1cF9zaXplOworICB1aW50MzJfdCBoYW5kbGU7CisgIHVpbnQzMl90IGJhY2t1cF9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBidWZmZXJfaGFuZGxlOwotIHVpbnQzMl90IGJ1ZmZlcl9zaXplOwotIHVpbnQ2NF90IGJ1ZmZlcl9tYXBfaGFuZGxlOworICB1aW50MzJfdCBidWZmZXJfaGFuZGxlOworICB1aW50MzJfdCBidWZmZXJfc2l6ZTsKKyAgdWludDY0X3QgYnVmZmVyX21hcF9oYW5kbGU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHVuaW9uIGRybV92bXdfZ2Jfc3VyZmFjZV9jcmVhdGVfYXJnIHsKLSBzdHJ1Y3QgZHJtX3Ztd19nYl9zdXJmYWNlX2NyZWF0ZV9yZXAgcmVwOwotIHN0cnVjdCBkcm1fdm13X2diX3N1cmZhY2VfY3JlYXRlX3JlcSByZXE7CisgIHN0cnVjdCBkcm1fdm13X2diX3N1cmZhY2VfY3JlYXRlX3JlcCByZXA7CisgIHN0cnVjdCBkcm1fdm13X2diX3N1cmZhY2VfY3JlYXRlX3JlcSByZXE7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkcm1fdm13X2diX3N1cmZhY2VfcmVmX3JlcCB7Ci0gc3RydWN0IGRybV92bXdfZ2Jfc3VyZmFjZV9jcmVhdGVfcmVxIGNyZXE7Ci0gc3RydWN0IGRybV92bXdfZ2Jfc3VyZmFjZV9jcmVhdGVfcmVwIGNyZXA7CisgIHN0cnVjdCBkcm1fdm13X2diX3N1cmZhY2VfY3JlYXRlX3JlcSBjcmVxOworICBzdHJ1Y3QgZHJtX3Ztd19nYl9zdXJmYWNlX2NyZWF0ZV9yZXAgY3JlcDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdW5pb24gZHJtX3Ztd19nYl9zdXJmYWNlX3JlZmVyZW5jZV9hcmcgewotIHN0cnVjdCBkcm1fdm13X2diX3N1cmZhY2VfcmVmX3JlcCByZXA7Ci0gc3RydWN0IGRybV92bXdfc3VyZmFjZV9hcmcgcmVxOworICBzdHJ1Y3QgZHJtX3Ztd19nYl9zdXJmYWNlX3JlZl9yZXAgcmVwOworICBzdHJ1Y3QgZHJtX3Ztd19zdXJmYWNlX2FyZyByZXE7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gZHJtX3Ztd19zeW5jY3B1X2ZsYWdzIHsKLSBkcm1fdm13X3N5bmNjcHVfcmVhZCA9ICgxIDw8IDApLAotIGRybV92bXdfc3luY2NwdV93cml0ZSA9ICgxIDw8IDEpLAotIGRybV92bXdfc3luY2NwdV9kb250YmxvY2sgPSAoMSA8PCAyKSwKKyAgZHJtX3Ztd19zeW5jY3B1X3JlYWQgPSAoMSA8PCAwKSwKKyAgZHJtX3Ztd19zeW5jY3B1X3dyaXRlID0gKDEgPDwgMSksCisgIGRybV92bXdfc3luY2NwdV9kb250YmxvY2sgPSAoMSA8PCAyKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZHJtX3Ztd19zeW5jY3B1X2FsbG93X2NzID0gKDEgPDwgMykKKyAgZHJtX3Ztd19zeW5jY3B1X2FsbG93X2NzID0gKDEgPDwgMykKIH07CiBlbnVtIGRybV92bXdfc3luY2NwdV9vcCB7Ci0gZHJtX3Ztd19zeW5jY3B1X2dyYWIsCisgIGRybV92bXdfc3luY2NwdV9ncmFiLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkcm1fdm13X3N5bmNjcHVfcmVsZWFzZQorICBkcm1fdm13X3N5bmNjcHVfcmVsZWFzZQogfTsKIHN0cnVjdCBkcm1fdm13X3N5bmNjcHVfYXJnIHsKLSBlbnVtIGRybV92bXdfc3luY2NwdV9vcCBvcDsKKyAgZW51bSBkcm1fdm13X3N5bmNjcHVfb3Agb3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGVudW0gZHJtX3Ztd19zeW5jY3B1X2ZsYWdzIGZsYWdzOwotIHVpbnQzMl90IGhhbmRsZTsKLSB1aW50MzJfdCBwYWQ2NDsKKyAgZW51bSBkcm1fdm13X3N5bmNjcHVfZmxhZ3MgZmxhZ3M7CisgIHVpbnQzMl90IGhhbmRsZTsKKyAgdWludDMyX3QgcGFkNjQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hLm91dC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hLm91dC5oCmluZGV4IDU2MmM5MGIuLmY2OWViNzMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYS5vdXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Eub3V0LmgKQEAgLTI3LDQ2ICsyNyw0NiBAQAogZW51bSBtYWNoaW5lX3R5cGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZmRlZiBNX09MRFNVTjIKLSBNX19PTERTVU4yID0gTV9PTERTVU4yLAorICBNX19PTERTVU4yID0gTV9PTERTVU4yLAogI2Vsc2UKLSBNX09MRFNVTjIgPSAwLAorICBNX09MRFNVTjIgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgogI2lmZGVmIE1fNjgwMTAKLSBNX182ODAxMCA9IE1fNjgwMTAsCisgIE1fXzY4MDEwID0gTV82ODAxMCwKICNlbHNlCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1fNjgwMTAgPSAxLAorICBNXzY4MDEwID0gMSwKICNlbmRpZgogI2lmZGVmIE1fNjgwMjAKLSBNX182ODAyMCA9IE1fNjgwMjAsCisgIE1fXzY4MDIwID0gTV82ODAyMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZWxzZQotIE1fNjgwMjAgPSAyLAorICBNXzY4MDIwID0gMiwKICNlbmRpZgogI2lmZGVmIE1fU1BBUkMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTV9fU1BBUkMgPSBNX1NQQVJDLAorICBNX19TUEFSQyA9IE1fU1BBUkMsCiAjZWxzZQotIE1fU1BBUkMgPSAzLAorICBNX1NQQVJDID0gMywKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNXzM4NiA9IDEwMCwKLSBNX01JUFMxID0gMTUxLAotIE1fTUlQUzIgPSAxNTIKKyAgTV8zODYgPSAxMDAsCisgIE1fTUlQUzEgPSAxNTEsCisgIE1fTUlQUzIgPSAxNTIKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmbmRlZiBOX01BR0lDCiAjZGVmaW5lIE5fTUFHSUMoZXhlYykgKChleGVjKS5hX2luZm8gJiAweGZmZmYpCiAjZW5kaWYKLSNkZWZpbmUgTl9NQUNIVFlQRShleGVjKSAoKGVudW0gbWFjaGluZV90eXBlKSgoKGV4ZWMpLmFfaW5mbyA+PiAxNikgJiAweGZmKSkKKyNkZWZpbmUgTl9NQUNIVFlQRShleGVjKSAoKGVudW0gbWFjaGluZV90eXBlKSAoKChleGVjKS5hX2luZm8gPj4gMTYpICYgMHhmZikpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOX0ZMQUdTKGV4ZWMpICgoKGV4ZWMpLmFfaW5mbyA+PiAyNCkgJiAweGZmKQotI2RlZmluZSBOX1NFVF9JTkZPKGV4ZWMsIG1hZ2ljLCB0eXBlLCBmbGFncykgICAoKGV4ZWMpLmFfaW5mbyA9ICgobWFnaWMpICYgMHhmZmZmKSAgIHwgKCgoaW50KSh0eXBlKSAmIDB4ZmYpIDw8IDE2KSAgIHwgKCgoZmxhZ3MpICYgMHhmZikgPDwgMjQpKQotI2RlZmluZSBOX1NFVF9NQUdJQyhleGVjLCBtYWdpYykgICAoKGV4ZWMpLmFfaW5mbyA9ICgoKGV4ZWMpLmFfaW5mbyAmIDB4ZmZmZjAwMDApIHwgKChtYWdpYykgJiAweGZmZmYpKSkKLSNkZWZpbmUgTl9TRVRfTUFDSFRZUEUoZXhlYywgbWFjaHR5cGUpICAgKChleGVjKS5hX2luZm8gPSAgICgoZXhlYykuYV9pbmZvJjB4ZmYwMGZmZmYpIHwgKCgoKGludCkobWFjaHR5cGUpKSYweGZmKSA8PCAxNikpCisjZGVmaW5lIE5fU0VUX0lORk8oZXhlYyxtYWdpYyx0eXBlLGZsYWdzKSAoKGV4ZWMpLmFfaW5mbyA9ICgobWFnaWMpICYgMHhmZmZmKSB8ICgoKGludCkgKHR5cGUpICYgMHhmZikgPDwgMTYpIHwgKCgoZmxhZ3MpICYgMHhmZikgPDwgMjQpKQorI2RlZmluZSBOX1NFVF9NQUdJQyhleGVjLG1hZ2ljKSAoKGV4ZWMpLmFfaW5mbyA9ICgoKGV4ZWMpLmFfaW5mbyAmIDB4ZmZmZjAwMDApIHwgKChtYWdpYykgJiAweGZmZmYpKSkKKyNkZWZpbmUgTl9TRVRfTUFDSFRZUEUoZXhlYyxtYWNodHlwZSkgKChleGVjKS5hX2luZm8gPSAoKGV4ZWMpLmFfaW5mbyAmIDB4ZmYwMGZmZmYpIHwgKCgoKGludCkgKG1hY2h0eXBlKSkgJiAweGZmKSA8PCAxNikpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBOX1NFVF9GTEFHUyhleGVjLCBmbGFncykgICAoKGV4ZWMpLmFfaW5mbyA9ICAgKChleGVjKS5hX2luZm8mMHgwMGZmZmZmZikgfCAoKChmbGFncykgJiAweGZmKSA8PCAyNCkpCisjZGVmaW5lIE5fU0VUX0ZMQUdTKGV4ZWMsZmxhZ3MpICgoZXhlYykuYV9pbmZvID0gKChleGVjKS5hX2luZm8gJiAweDAwZmZmZmZmKSB8ICgoKGZsYWdzKSAmIDB4ZmYpIDw8IDI0KSkKICNkZWZpbmUgT01BR0lDIDA0MDcKICNkZWZpbmUgTk1BR0lDIDA0MTAKICNkZWZpbmUgWk1BR0lDIDA0MTMKQEAgLTc0LDEyICs3NCwxMiBAQAogI2RlZmluZSBRTUFHSUMgMDMxNAogI2RlZmluZSBDTUFHSUMgMDQyMQogI2lmbmRlZiBOX0JBRE1BRwotI2RlZmluZSBOX0JBRE1BRyh4KSAoTl9NQUdJQyh4KSAhPSBPTUFHSUMgICAmJiBOX01BR0lDKHgpICE9IE5NQUdJQyAgICYmIE5fTUFHSUMoeCkgIT0gWk1BR0lDICAgJiYgTl9NQUdJQyh4KSAhPSBRTUFHSUMpCisjZGVmaW5lIE5fQkFETUFHKHgpIChOX01BR0lDKHgpICE9IE9NQUdJQyAmJiBOX01BR0lDKHgpICE9IE5NQUdJQyAmJiBOX01BR0lDKHgpICE9IFpNQUdJQyAmJiBOX01BR0lDKHgpICE9IFFNQUdJQykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKLSNkZWZpbmUgX05fSERST0ZGKHgpICgxMDI0IC0gc2l6ZW9mIChzdHJ1Y3QgZXhlYykpCisjZGVmaW5lIF9OX0hEUk9GRih4KSAoMTAyNCAtIHNpemVvZihzdHJ1Y3QgZXhlYykpCiAjaWZuZGVmIE5fVFhUT0ZGCi0jZGVmaW5lIE5fVFhUT0ZGKHgpICAgKE5fTUFHSUMoeCkgPT0gWk1BR0lDID8gX05fSERST0ZGKCh4KSkgKyBzaXplb2YgKHN0cnVjdCBleGVjKSA6ICAgKE5fTUFHSUMoeCkgPT0gUU1BR0lDID8gMCA6IHNpemVvZiAoc3RydWN0IGV4ZWMpKSkKKyNkZWZpbmUgTl9UWFRPRkYoeCkgKE5fTUFHSUMoeCkgPT0gWk1BR0lDID8gX05fSERST0ZGKCh4KSkgKyBzaXplb2Yoc3RydWN0IGV4ZWMpIDogKE5fTUFHSUMoeCkgPT0gUU1BR0lDID8gMCA6IHNpemVvZihzdHJ1Y3QgZXhlYykpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgogI2lmbmRlZiBOX0RBVE9GRgpAQCAtMTM0LDEwICsxMzQsMTAgQEAKICNlbmRpZgogI2VuZGlmCiAjZGVmaW5lIF9OX1NFR01FTlRfUk9VTkQoeCkgQUxJR04oeCwgU0VHTUVOVF9TSVpFKQotI2RlZmluZSBfTl9UWFRFTkRBRERSKHgpIChOX1RYVEFERFIoeCkrKHgpLmFfdGV4dCkKKyNkZWZpbmUgX05fVFhURU5EQUREUih4KSAoTl9UWFRBRERSKHgpICsgKHgpLmFfdGV4dCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZuZGVmIE5fREFUQUREUgotI2RlZmluZSBOX0RBVEFERFIoeCkgICAoTl9NQUdJQyh4KT09T01BR0lDPyAoX05fVFhURU5EQUREUih4KSkgICA6IChfTl9TRUdNRU5UX1JPVU5EIChfTl9UWFRFTkRBRERSKHgpKSkpCisjZGVmaW5lIE5fREFUQUREUih4KSAoTl9NQUdJQyh4KSA9PSBPTUFHSUMgPyAoX05fVFhURU5EQUREUih4KSkgOiAoX05fU0VHTUVOVF9ST1VORChfTl9UWFRFTkRBRERSKHgpKSkpCiAjZW5kaWYKICNpZm5kZWYgTl9CU1NBRERSCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTQ2LDE3ICsxNDYsMTcgQEAKICNpZm5kZWYgTl9OTElTVF9ERUNMQVJFRAogc3RydWN0IG5saXN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIGNoYXIgKm5fbmFtZTsKLSBzdHJ1Y3Qgbmxpc3QgKm5fbmV4dDsKLSBsb25nIG5fc3RyeDsKKyAgdW5pb24geworICAgIGNoYXIgKiBuX25hbWU7CisgICAgc3RydWN0IG5saXN0ICogbl9uZXh0OworICAgIGxvbmcgbl9zdHJ4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IG5fdW47Ci0gdW5zaWduZWQgY2hhciBuX3R5cGU7Ci0gY2hhciBuX290aGVyOwotIHNob3J0IG5fZGVzYzsKKyAgfSBuX3VuOworICB1bnNpZ25lZCBjaGFyIG5fdHlwZTsKKyAgY2hhciBuX290aGVyOworICBzaG9ydCBuX2Rlc2M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgbl92YWx1ZTsKKyAgdW5zaWduZWQgbG9uZyBuX3ZhbHVlOwogfTsKICNlbmRpZgogI2lmbmRlZiBOX1VOREYKQEAgLTIwMiwyNSArMjAyLDI0IEBACiAjZGVmaW5lIE5fU0VUViAweDFDCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmbmRlZiBOX1JFTE9DQVRJT05fSU5GT19ERUNMQVJFRAotc3RydWN0IHJlbG9jYXRpb25faW5mbwotewotIGludCByX2FkZHJlc3M7CitzdHJ1Y3QgcmVsb2NhdGlvbl9pbmZvIHsKKyAgaW50IHJfYWRkcmVzczsKKyAgdW5zaWduZWQgaW50IHJfc3ltYm9sbnVtIDogMjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCByX3N5bWJvbG51bToyNDsKLSB1bnNpZ25lZCBpbnQgcl9wY3JlbDoxOwotIHVuc2lnbmVkIGludCByX2xlbmd0aDoyOwotIHVuc2lnbmVkIGludCByX2V4dGVybjoxOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IHJfcGNyZWwgOiAxOworICB1bnNpZ25lZCBpbnQgcl9sZW5ndGggOiAyOworICB1bnNpZ25lZCBpbnQgcl9leHRlcm4gOiAxOwogI2lmZGVmIE5TMzJLCi0gdW5zaWduZWQgcl9ic3I6MTsKLSB1bnNpZ25lZCByX2Rpc3A6MTsKLSB1bnNpZ25lZCByX3BhZDoyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgcl9ic3IgOiAxOworICB1bnNpZ25lZCByX2Rpc3AgOiAxOworICB1bnNpZ25lZCByX3BhZCA6IDI7CiAjZWxzZQotIHVuc2lnbmVkIGludCByX3BhZDo0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IHJfcGFkIDogNDsKICNlbmRpZgogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hY2N0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FjY3QuaAppbmRleCBjMTQ4ODZhLi40ZWIzYzkyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FjY3QuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FjY3QuaApAQCAtMjYsODAgKzI2LDc4IEBACiB0eXBlZGVmIF9fdTMyIGNvbXAyX3Q7CiAjZGVmaW5lIEFDQ1RfQ09NTSAxNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBhY2N0Ci17Ci0gY2hhciBhY19mbGFnOwotIGNoYXIgYWNfdmVyc2lvbjsKK3N0cnVjdCBhY2N0IHsKKyAgY2hhciBhY19mbGFnOworICBjaGFyIGFjX3ZlcnNpb247CisgIF9fdTE2IGFjX3VpZDE2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBhY191aWQxNjsKLSBfX3UxNiBhY19naWQxNjsKLSBfX3UxNiBhY190dHk7Ci0gX191MzIgYWNfYnRpbWU7CisgIF9fdTE2IGFjX2dpZDE2OworICBfX3UxNiBhY190dHk7CisgIF9fdTMyIGFjX2J0aW1lOworICBjb21wX3QgYWNfdXRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNvbXBfdCBhY191dGltZTsKLSBjb21wX3QgYWNfc3RpbWU7Ci0gY29tcF90IGFjX2V0aW1lOwotIGNvbXBfdCBhY19tZW07CisgIGNvbXBfdCBhY19zdGltZTsKKyAgY29tcF90IGFjX2V0aW1lOworICBjb21wX3QgYWNfbWVtOworICBjb21wX3QgYWNfaW87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNvbXBfdCBhY19pbzsKLSBjb21wX3QgYWNfcnc7Ci0gY29tcF90IGFjX21pbmZsdDsKLSBjb21wX3QgYWNfbWFqZmx0OworICBjb21wX3QgYWNfcnc7CisgIGNvbXBfdCBhY19taW5mbHQ7CisgIGNvbXBfdCBhY19tYWpmbHQ7CisgIGNvbXBfdCBhY19zd2FwczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY29tcF90IGFjX3N3YXBzOwotIF9fdTE2IGFjX2FoejsKLSBfX3UzMiBhY19leGl0Y29kZTsKLSBjaGFyIGFjX2NvbW1bQUNDVF9DT01NICsgMV07CisgIF9fdTE2IGFjX2FoejsKKyAgX191MzIgYWNfZXhpdGNvZGU7CisgIGNoYXIgYWNfY29tbVtBQ0NUX0NPTU0gKyAxXTsKKyAgX191OCBhY19ldGltZV9oaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBhY19ldGltZV9oaTsKLSBfX3UxNiBhY19ldGltZV9sbzsKLSBfX3UzMiBhY191aWQ7Ci0gX191MzIgYWNfZ2lkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgYWNfZXRpbWVfbG87CisgIF9fdTMyIGFjX3VpZDsKKyAgX191MzIgYWNfZ2lkOwogfTsKLXN0cnVjdCBhY2N0X3YzCi17Ci0gY2hhciBhY19mbGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGFjX3ZlcnNpb247Ci0gX191MTYgYWNfdHR5OwotIF9fdTMyIGFjX2V4aXRjb2RlOwotIF9fdTMyIGFjX3VpZDsKK3N0cnVjdCBhY2N0X3YzIHsKKyAgY2hhciBhY19mbGFnOworICBjaGFyIGFjX3ZlcnNpb247CisgIF9fdTE2IGFjX3R0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYWNfZ2lkOwotIF9fdTMyIGFjX3BpZDsKLSBfX3UzMiBhY19wcGlkOwotIF9fdTMyIGFjX2J0aW1lOworICBfX3UzMiBhY19leGl0Y29kZTsKKyAgX191MzIgYWNfdWlkOworICBfX3UzMiBhY19naWQ7CisgIF9fdTMyIGFjX3BpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZmxvYXQgYWNfZXRpbWU7Ci0gY29tcF90IGFjX3V0aW1lOwotIGNvbXBfdCBhY19zdGltZTsKLSBjb21wX3QgYWNfbWVtOworICBfX3UzMiBhY19wcGlkOworICBfX3UzMiBhY19idGltZTsKKyAgZmxvYXQgYWNfZXRpbWU7CisgIGNvbXBfdCBhY191dGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY29tcF90IGFjX2lvOwotIGNvbXBfdCBhY19ydzsKLSBjb21wX3QgYWNfbWluZmx0OwotIGNvbXBfdCBhY19tYWpmbHQ7CisgIGNvbXBfdCBhY19zdGltZTsKKyAgY29tcF90IGFjX21lbTsKKyAgY29tcF90IGFjX2lvOworICBjb21wX3QgYWNfcnc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNvbXBfdCBhY19zd2FwczsKLSBjaGFyIGFjX2NvbW1bQUNDVF9DT01NXTsKKyAgY29tcF90IGFjX21pbmZsdDsKKyAgY29tcF90IGFjX21hamZsdDsKKyAgY29tcF90IGFjX3N3YXBzOworICBjaGFyIGFjX2NvbW1bQUNDVF9DT01NXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBBRk9SSyAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBU1UgMHgwMgogI2RlZmluZSBBQ09NUEFUIDB4MDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFDT1JFIDB4MDgKICNkZWZpbmUgQVhTSUcgMHgxMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZiBkZWZpbmVkKF9fQllURV9PUkRFUikgPyBfX0JZVEVfT1JERVIgPT0gX19CSUdfRU5ESUFOIDogZGVmaW5lZChfX0JJR19FTkRJQU4pCiAjZGVmaW5lIEFDQ1RfQllURU9SREVSIDB4ODAKLSNlbGlmIGRlZmluZWQoX19CWVRFX09SREVSKSA/IF9fQllURV9PUkRFUiA9PSBfX0xJVFRMRV9FTkRJQU4gOiBkZWZpbmVkKF9fTElUVExFX0VORElBTikKLSNkZWZpbmUgQUNDVF9CWVRFT1JERVIgMHgwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbGlmIGRlZmluZWQoX19CWVRFX09SREVSKT9fX0JZVEVfT1JERVI9PV9fTElUVExFX0VORElBTjpkZWZpbmVkKF9fTElUVExFX0VORElBTikKKyNkZWZpbmUgQUNDVF9CWVRFT1JERVIgMHgwMAogI2Vsc2UKICNlcnJvciB1bnNwZWNpZmllZCBlbmRpYW5uZXNzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCiAjZGVmaW5lIEFDQ1RfVkVSU0lPTiAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBSFogKEhaKQogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hZGIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWRiLmgKaW5kZXggMTYxNDA4Ni4uYjFkZmQzMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hZGIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FkYi5oCkBAIC0yMSw4ICsyMSw4IEBACiAjZGVmaW5lIEFEQl9CVVNSRVNFVCAwCiAjZGVmaW5lIEFEQl9GTFVTSChpZCkgKDB4MDEgfCAoKGlkKSA8PCA0KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFEQl9XUklURVJFRyhpZCwgcmVnKSAoMHgwOCB8IChyZWcpIHwgKChpZCkgPDwgNCkpCi0jZGVmaW5lIEFEQl9SRUFEUkVHKGlkLCByZWcpICgweDBDIHwgKHJlZykgfCAoKGlkKSA8PCA0KSkKKyNkZWZpbmUgQURCX1dSSVRFUkVHKGlkLHJlZykgKDB4MDggfCAocmVnKSB8ICgoaWQpIDw8IDQpKQorI2RlZmluZSBBREJfUkVBRFJFRyhpZCxyZWcpICgweDBDIHwgKHJlZykgfCAoKGlkKSA8PCA0KSkKICNkZWZpbmUgQURCX0RPTkdMRSAxCiAjZGVmaW5lIEFEQl9LRVlCT0FSRCAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hZGZzX2ZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FkZnNfZnMuaAppbmRleCA4YWNjOGM2Li5lNWFkMDRlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FkZnNfZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FkZnNfZnMuaApAQCAtMjIsMzcgKzIyLDM3IEBACiAjaW5jbHVkZSA8bGludXgvbWFnaWMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYWRmc19kaXNjcmVjb3JkIHsKLSBfX3U4IGxvZzJzZWNzaXplOwotIF9fdTggc2Vjc3BlcnRyYWNrOwotIF9fdTggaGVhZHM7CisgIF9fdTggbG9nMnNlY3NpemU7CisgIF9fdTggc2Vjc3BlcnRyYWNrOworICBfX3U4IGhlYWRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRlbnNpdHk7Ci0gX191OCBpZGxlbjsKLSBfX3U4IGxvZzJicG1iOwotIF9fdTggc2tldzsKKyAgX191OCBkZW5zaXR5OworICBfX3U4IGlkbGVuOworICBfX3U4IGxvZzJicG1iOworICBfX3U4IHNrZXc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYm9vdG9wdGlvbjsKLSBfX3U4IGxvd3NlY3RvcjsKLSBfX3U4IG56b25lczsKLSBfX2xlMTYgem9uZV9zcGFyZTsKKyAgX191OCBib290b3B0aW9uOworICBfX3U4IGxvd3NlY3RvcjsKKyAgX191OCBuem9uZXM7CisgIF9fbGUxNiB6b25lX3NwYXJlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgcm9vdDsKLSBfX2xlMzIgZGlzY19zaXplOwotIF9fbGUxNiBkaXNjX2lkOwotIF9fdTggZGlzY19uYW1lWzEwXTsKKyAgX19sZTMyIHJvb3Q7CisgIF9fbGUzMiBkaXNjX3NpemU7CisgIF9fbGUxNiBkaXNjX2lkOworICBfX3U4IGRpc2NfbmFtZVsxMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBkaXNjX3R5cGU7Ci0gX19sZTMyIGRpc2Nfc2l6ZV9oaWdoOwotIF9fdTggbG9nMnNoYXJlc2l6ZTo0OwotIF9fdTggdW51c2VkNDA6NDsKKyAgX19sZTMyIGRpc2NfdHlwZTsKKyAgX19sZTMyIGRpc2Nfc2l6ZV9oaWdoOworICBfX3U4IGxvZzJzaGFyZXNpemUgOiA0OworICBfX3U4IHVudXNlZDQwIDogNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiaWdfZmxhZzoxOwotIF9fdTggdW51c2VkNDE6MTsKLSBfX3U4IG56b25lc19oaWdoOwotIF9fbGUzMiBmb3JtYXRfdmVyc2lvbjsKKyAgX191OCBiaWdfZmxhZyA6IDE7CisgIF9fdTggdW51c2VkNDEgOiAxOworICBfX3U4IG56b25lc19oaWdoOworICBfX2xlMzIgZm9ybWF0X3ZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiByb290X3NpemU7Ci0gX191OCB1bnVzZWQ1Mls2MCAtIDUyXTsKKyAgX19sZTMyIHJvb3Rfc2l6ZTsKKyAgX191OCB1bnVzZWQ1Mls2MCAtIDUyXTsKIH07CiAjZGVmaW5lIEFERlNfRElTQ1JFQ09SRCAoMHhjMDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hZmZzX2hhcmRibG9ja3MuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWZmc19oYXJkYmxvY2tzLmgKaW5kZXggMGY1NmI4MS4uMGE2MTg4NyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hZmZzX2hhcmRibG9ja3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FmZnNfaGFyZGJsb2Nrcy5oCkBAIC0yMSw2OSArMjEsNjkgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IFJpZ2lkRGlza0Jsb2NrIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmRiX0lEOwotIF9fYmUzMiByZGJfU3VtbWVkTG9uZ3M7Ci0gX19zMzIgcmRiX0Noa1N1bTsKLSBfX3UzMiByZGJfSG9zdElEOworICBfX3UzMiByZGJfSUQ7CisgIF9fYmUzMiByZGJfU3VtbWVkTG9uZ3M7CisgIF9fczMyIHJkYl9DaGtTdW07CisgIF9fdTMyIHJkYl9Ib3N0SUQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiByZGJfQmxvY2tCeXRlczsKLSBfX3UzMiByZGJfRmxhZ3M7Ci0gX191MzIgcmRiX0JhZEJsb2NrTGlzdDsKLSBfX2JlMzIgcmRiX1BhcnRpdGlvbkxpc3Q7CisgIF9fYmUzMiByZGJfQmxvY2tCeXRlczsKKyAgX191MzIgcmRiX0ZsYWdzOworICBfX3UzMiByZGJfQmFkQmxvY2tMaXN0OworICBfX2JlMzIgcmRiX1BhcnRpdGlvbkxpc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJkYl9GaWxlU3lzSGVhZGVyTGlzdDsKLSBfX3UzMiByZGJfRHJpdmVJbml0OwotIF9fdTMyIHJkYl9SZXNlcnZlZDFbNl07Ci0gX191MzIgcmRiX0N5bGluZGVyczsKKyAgX191MzIgcmRiX0ZpbGVTeXNIZWFkZXJMaXN0OworICBfX3UzMiByZGJfRHJpdmVJbml0OworICBfX3UzMiByZGJfUmVzZXJ2ZWQxWzZdOworICBfX3UzMiByZGJfQ3lsaW5kZXJzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZGJfU2VjdG9yczsKLSBfX3UzMiByZGJfSGVhZHM7Ci0gX191MzIgcmRiX0ludGVybGVhdmU7Ci0gX191MzIgcmRiX1Bhcms7CisgIF9fdTMyIHJkYl9TZWN0b3JzOworICBfX3UzMiByZGJfSGVhZHM7CisgIF9fdTMyIHJkYl9JbnRlcmxlYXZlOworICBfX3UzMiByZGJfUGFyazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmRiX1Jlc2VydmVkMlszXTsKLSBfX3UzMiByZGJfV3JpdGVQcmVDb21wOwotIF9fdTMyIHJkYl9SZWR1Y2VkV3JpdGU7Ci0gX191MzIgcmRiX1N0ZXBSYXRlOworICBfX3UzMiByZGJfUmVzZXJ2ZWQyWzNdOworICBfX3UzMiByZGJfV3JpdGVQcmVDb21wOworICBfX3UzMiByZGJfUmVkdWNlZFdyaXRlOworICBfX3UzMiByZGJfU3RlcFJhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJkYl9SZXNlcnZlZDNbNV07Ci0gX191MzIgcmRiX1JEQkJsb2Nrc0xvOwotIF9fdTMyIHJkYl9SREJCbG9ja3NIaTsKLSBfX3UzMiByZGJfTG9DeWxpbmRlcjsKKyAgX191MzIgcmRiX1Jlc2VydmVkM1s1XTsKKyAgX191MzIgcmRiX1JEQkJsb2Nrc0xvOworICBfX3UzMiByZGJfUkRCQmxvY2tzSGk7CisgIF9fdTMyIHJkYl9Mb0N5bGluZGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZGJfSGlDeWxpbmRlcjsKLSBfX3UzMiByZGJfQ3lsQmxvY2tzOwotIF9fdTMyIHJkYl9BdXRvUGFya1NlY29uZHM7Ci0gX191MzIgcmRiX0hpZ2hSRFNLQmxvY2s7CisgIF9fdTMyIHJkYl9IaUN5bGluZGVyOworICBfX3UzMiByZGJfQ3lsQmxvY2tzOworICBfX3UzMiByZGJfQXV0b1BhcmtTZWNvbmRzOworICBfX3UzMiByZGJfSGlnaFJEU0tCbG9jazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmRiX1Jlc2VydmVkNDsKLSBjaGFyIHJkYl9EaXNrVmVuZG9yWzhdOwotIGNoYXIgcmRiX0Rpc2tQcm9kdWN0WzE2XTsKLSBjaGFyIHJkYl9EaXNrUmV2aXNpb25bNF07CisgIF9fdTMyIHJkYl9SZXNlcnZlZDQ7CisgIGNoYXIgcmRiX0Rpc2tWZW5kb3JbOF07CisgIGNoYXIgcmRiX0Rpc2tQcm9kdWN0WzE2XTsKKyAgY2hhciByZGJfRGlza1JldmlzaW9uWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHJkYl9Db250cm9sbGVyVmVuZG9yWzhdOwotIGNoYXIgcmRiX0NvbnRyb2xsZXJQcm9kdWN0WzE2XTsKLSBjaGFyIHJkYl9Db250cm9sbGVyUmV2aXNpb25bNF07Ci0gX191MzIgcmRiX1Jlc2VydmVkNVsxMF07CisgIGNoYXIgcmRiX0NvbnRyb2xsZXJWZW5kb3JbOF07CisgIGNoYXIgcmRiX0NvbnRyb2xsZXJQcm9kdWN0WzE2XTsKKyAgY2hhciByZGJfQ29udHJvbGxlclJldmlzaW9uWzRdOworICBfX3UzMiByZGJfUmVzZXJ2ZWQ1WzEwXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBJRE5BTUVfUklHSURESVNLIDB4NTI0NDUzNEIKIHN0cnVjdCBQYXJ0aXRpb25CbG9jayB7Ci0gX19iZTMyIHBiX0lEOworICBfX2JlMzIgcGJfSUQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBwYl9TdW1tZWRMb25nczsKLSBfX3MzMiBwYl9DaGtTdW07Ci0gX191MzIgcGJfSG9zdElEOwotIF9fYmUzMiBwYl9OZXh0OworICBfX2JlMzIgcGJfU3VtbWVkTG9uZ3M7CisgIF9fczMyIHBiX0Noa1N1bTsKKyAgX191MzIgcGJfSG9zdElEOworICBfX2JlMzIgcGJfTmV4dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGJfRmxhZ3M7Ci0gX191MzIgcGJfUmVzZXJ2ZWQxWzJdOwotIF9fdTMyIHBiX0RldkZsYWdzOwotIF9fdTggcGJfRHJpdmVOYW1lWzMyXTsKKyAgX191MzIgcGJfRmxhZ3M7CisgIF9fdTMyIHBiX1Jlc2VydmVkMVsyXTsKKyAgX191MzIgcGJfRGV2RmxhZ3M7CisgIF9fdTggcGJfRHJpdmVOYW1lWzMyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGJfUmVzZXJ2ZWQyWzE1XTsKLSBfX2JlMzIgcGJfRW52aXJvbm1lbnRbMTddOwotIF9fdTMyIHBiX0VSZXNlcnZlZFsxNV07CisgIF9fdTMyIHBiX1Jlc2VydmVkMlsxNV07CisgIF9fYmUzMiBwYl9FbnZpcm9ubWVudFsxN107CisgIF9fdTMyIHBiX0VSZXNlcnZlZFsxNV07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUROQU1FX1BBUlRJVElPTiAweDUwNDE1MjU0CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FncGdhcnQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWdwZ2FydC5oCmluZGV4IGY3MzViOTUuLjBiMTAzY2MgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWdwZ2FydC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWdwZ2FydC5oCkBAIC0xOSwyMCArMTksMjAgQEAKICNpZm5kZWYgX1VBUElfQUdQX0gKICNkZWZpbmUgX1VBUElfQUdQX0gKICNkZWZpbmUgQUdQSU9DX0JBU0UgJ0EnCi0jZGVmaW5lIEFHUElPQ19JTkZPIF9JT1IgKEFHUElPQ19CQVNFLCAwLCBzdHJ1Y3QgYWdwX2luZm8qKQorI2RlZmluZSBBR1BJT0NfSU5GTyBfSU9SKEFHUElPQ19CQVNFLCAwLCBzdHJ1Y3QgYWdwX2luZm8gKikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFHUElPQ19BQ1FVSVJFIF9JTyAoQUdQSU9DX0JBU0UsIDEpCi0jZGVmaW5lIEFHUElPQ19SRUxFQVNFIF9JTyAoQUdQSU9DX0JBU0UsIDIpCi0jZGVmaW5lIEFHUElPQ19TRVRVUCBfSU9XIChBR1BJT0NfQkFTRSwgMywgc3RydWN0IGFncF9zZXR1cCopCi0jZGVmaW5lIEFHUElPQ19SRVNFUlZFIF9JT1cgKEFHUElPQ19CQVNFLCA0LCBzdHJ1Y3QgYWdwX3JlZ2lvbiopCisjZGVmaW5lIEFHUElPQ19BQ1FVSVJFIF9JTyhBR1BJT0NfQkFTRSwgMSkKKyNkZWZpbmUgQUdQSU9DX1JFTEVBU0UgX0lPKEFHUElPQ19CQVNFLCAyKQorI2RlZmluZSBBR1BJT0NfU0VUVVAgX0lPVyhBR1BJT0NfQkFTRSwgMywgc3RydWN0IGFncF9zZXR1cCAqKQorI2RlZmluZSBBR1BJT0NfUkVTRVJWRSBfSU9XKEFHUElPQ19CQVNFLCA0LCBzdHJ1Y3QgYWdwX3JlZ2lvbiAqKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQUdQSU9DX1BST1RFQ1QgX0lPVyAoQUdQSU9DX0JBU0UsIDUsIHN0cnVjdCBhZ3BfcmVnaW9uKikKLSNkZWZpbmUgQUdQSU9DX0FMTE9DQVRFIF9JT1dSKEFHUElPQ19CQVNFLCA2LCBzdHJ1Y3QgYWdwX2FsbG9jYXRlKikKLSNkZWZpbmUgQUdQSU9DX0RFQUxMT0NBVEUgX0lPVyAoQUdQSU9DX0JBU0UsIDcsIGludCkKLSNkZWZpbmUgQUdQSU9DX0JJTkQgX0lPVyAoQUdQSU9DX0JBU0UsIDgsIHN0cnVjdCBhZ3BfYmluZCopCisjZGVmaW5lIEFHUElPQ19QUk9URUNUIF9JT1coQUdQSU9DX0JBU0UsIDUsIHN0cnVjdCBhZ3BfcmVnaW9uICopCisjZGVmaW5lIEFHUElPQ19BTExPQ0FURSBfSU9XUihBR1BJT0NfQkFTRSwgNiwgc3RydWN0IGFncF9hbGxvY2F0ZSAqKQorI2RlZmluZSBBR1BJT0NfREVBTExPQ0FURSBfSU9XKEFHUElPQ19CQVNFLCA3LCBpbnQpCisjZGVmaW5lIEFHUElPQ19CSU5EIF9JT1coQUdQSU9DX0JBU0UsIDgsIHN0cnVjdCBhZ3BfYmluZCAqKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQUdQSU9DX1VOQklORCBfSU9XIChBR1BJT0NfQkFTRSwgOSwgc3RydWN0IGFncF91bmJpbmQqKQotI2RlZmluZSBBR1BJT0NfQ0hJUFNFVF9GTFVTSCBfSU8gKEFHUElPQ19CQVNFLCAxMCkKKyNkZWZpbmUgQUdQSU9DX1VOQklORCBfSU9XKEFHUElPQ19CQVNFLCA5LCBzdHJ1Y3QgYWdwX3VuYmluZCAqKQorI2RlZmluZSBBR1BJT0NfQ0hJUFNFVF9GTFVTSCBfSU8oQUdQSU9DX0JBU0UsIDEwKQogI2RlZmluZSBBR1BfREVWSUNFICIvZGV2L2FncGdhcnQiCiAjaWZuZGVmIFRSVUUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC00NCw1NSArNDQsNTUgQEAKICNlbmRpZgogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgYWdwX3ZlcnNpb24gewotIF9fdTE2IG1ham9yOworICBfX3UxNiBtYWpvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbWlub3I7CisgIF9fdTE2IG1pbm9yOwogfTsKIHR5cGVkZWYgc3RydWN0IF9hZ3BfaW5mbyB7Ci0gc3RydWN0IGFncF92ZXJzaW9uIHZlcnNpb247CisgIHN0cnVjdCBhZ3BfdmVyc2lvbiB2ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBicmlkZ2VfaWQ7Ci0gX191MzIgYWdwX21vZGU7Ci0gdW5zaWduZWQgbG9uZyBhcGVyX2Jhc2U7Ci0gc2l6ZV90IGFwZXJfc2l6ZTsKKyAgX191MzIgYnJpZGdlX2lkOworICBfX3UzMiBhZ3BfbW9kZTsKKyAgdW5zaWduZWQgbG9uZyBhcGVyX2Jhc2U7CisgIHNpemVfdCBhcGVyX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNpemVfdCBwZ190b3RhbDsKLSBzaXplX3QgcGdfc3lzdGVtOwotIHNpemVfdCBwZ191c2VkOworICBzaXplX3QgcGdfdG90YWw7CisgIHNpemVfdCBwZ19zeXN0ZW07CisgIHNpemVfdCBwZ191c2VkOwogfSBhZ3BfaW5mbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBfYWdwX3NldHVwIHsKLSBfX3UzMiBhZ3BfbW9kZTsKKyAgX191MzIgYWdwX21vZGU7CiB9IGFncF9zZXR1cDsKIHR5cGVkZWYgc3RydWN0IF9hZ3Bfc2VnbWVudCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX29mZl90IHBnX3N0YXJ0OwotIF9fa2VybmVsX3NpemVfdCBwZ19jb3VudDsKLSBpbnQgcHJvdDsKKyAgX19rZXJuZWxfb2ZmX3QgcGdfc3RhcnQ7CisgIF9fa2VybmVsX3NpemVfdCBwZ19jb3VudDsKKyAgaW50IHByb3Q7CiB9IGFncF9zZWdtZW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IF9hZ3BfcmVnaW9uIHsKLSBfX2tlcm5lbF9waWRfdCBwaWQ7Ci0gX19rZXJuZWxfc2l6ZV90IHNlZ19jb3VudDsKLSBzdHJ1Y3QgX2FncF9zZWdtZW50ICpzZWdfbGlzdDsKKyAgX19rZXJuZWxfcGlkX3QgcGlkOworICBfX2tlcm5lbF9zaXplX3Qgc2VnX2NvdW50OworICBzdHJ1Y3QgX2FncF9zZWdtZW50ICogc2VnX2xpc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBhZ3BfcmVnaW9uOwogdHlwZWRlZiBzdHJ1Y3QgX2FncF9hbGxvY2F0ZSB7Ci0gaW50IGtleTsKLSBfX2tlcm5lbF9zaXplX3QgcGdfY291bnQ7CisgIGludCBrZXk7CisgIF9fa2VybmVsX3NpemVfdCBwZ19jb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UzMiBwaHlzaWNhbDsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgcGh5c2ljYWw7CiB9IGFncF9hbGxvY2F0ZTsKIHR5cGVkZWYgc3RydWN0IF9hZ3BfYmluZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBrZXk7Ci0gX19rZXJuZWxfb2ZmX3QgcGdfc3RhcnQ7CisgIGludCBrZXk7CisgIF9fa2VybmVsX29mZl90IHBnX3N0YXJ0OwogfSBhZ3BfYmluZDsKIHR5cGVkZWYgc3RydWN0IF9hZ3BfdW5iaW5kIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGtleTsKLSBfX3UzMiBwcmlvcml0eTsKKyAgaW50IGtleTsKKyAgX191MzIgcHJpb3JpdHk7CiB9IGFncF91bmJpbmQ7CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Fpb19hYmkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWlvX2FiaS5oCmluZGV4IGFlMDJiZjcuLjY4N2M0MzUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWlvX2FiaS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYWlvX2FiaS5oCkBAIC0yMyw0OCArMjMsNDggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIF9fa2VybmVsX3Vsb25nX3QgYWlvX2NvbnRleHRfdDsKIGVudW0gewotIElPQ0JfQ01EX1BSRUFEID0gMCwKLSBJT0NCX0NNRF9QV1JJVEUgPSAxLAorICBJT0NCX0NNRF9QUkVBRCA9IDAsCisgIElPQ0JfQ01EX1BXUklURSA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElPQ0JfQ01EX0ZTWU5DID0gMiwKLSBJT0NCX0NNRF9GRFNZTkMgPSAzLAotIElPQ0JfQ01EX05PT1AgPSA2LAotIElPQ0JfQ01EX1BSRUFEViA9IDcsCisgIElPQ0JfQ01EX0ZTWU5DID0gMiwKKyAgSU9DQl9DTURfRkRTWU5DID0gMywKKyAgSU9DQl9DTURfTk9PUCA9IDYsCisgIElPQ0JfQ01EX1BSRUFEViA9IDcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElPQ0JfQ01EX1BXUklURVYgPSA4LAorICBJT0NCX0NNRF9QV1JJVEVWID0gOCwKIH07CiAjZGVmaW5lIElPQ0JfRkxBR19SRVNGRCAoMSA8PCAwKQogc3RydWN0IGlvX2V2ZW50IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZGF0YTsKLSBfX3U2NCBvYmo7Ci0gX19zNjQgcmVzOwotIF9fczY0IHJlczI7CisgIF9fdTY0IGRhdGE7CisgIF9fdTY0IG9iajsKKyAgX19zNjQgcmVzOworICBfX3M2NCByZXMyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjaWYgZGVmaW5lZChfX0JZVEVfT1JERVIpID8gX19CWVRFX09SREVSID09IF9fTElUVExFX0VORElBTiA6IGRlZmluZWQoX19MSVRUTEVfRU5ESUFOKQogI2RlZmluZSBQQURERUQoeCx5KSB4LCB5Ci0jZWxpZiBkZWZpbmVkKF9fQllURV9PUkRFUikgPyBfX0JZVEVfT1JERVIgPT0gX19CSUdfRU5ESUFOIDogZGVmaW5lZChfX0JJR19FTkRJQU4pCisjZWxpZiBkZWZpbmVkKF9fQllURV9PUkRFUik/X19CWVRFX09SREVSPT1fX0JJR19FTkRJQU46ZGVmaW5lZChfX0JJR19FTkRJQU4pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQQURERUQoeCx5KSB5LCB4CiAjZWxzZQotI2Vycm9yIGVkaXQgZm9yIHlvdXIgb2RkIGJ5dGVvcmRlci4KKyNlcnJvciBlZGl0IGZvciB5b3VyIG9kZCBieXRlb3JkZXIgLgogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlvY2IgewotIF9fdTY0IGFpb19kYXRhOwotIF9fdTMyIFBBRERFRChhaW9fa2V5LCBhaW9fcmVzZXJ2ZWQxKTsKLSBfX3UxNiBhaW9fbGlvX29wY29kZTsKKyAgX191NjQgYWlvX2RhdGE7CisgIF9fdTMyIFBBRERFRChhaW9fa2V5LCBhaW9fcmVzZXJ2ZWQxKTsKKyAgX191MTYgYWlvX2xpb19vcGNvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczE2IGFpb19yZXFwcmlvOwotIF9fdTMyIGFpb19maWxkZXM7Ci0gX191NjQgYWlvX2J1ZjsKLSBfX3U2NCBhaW9fbmJ5dGVzOworICBfX3MxNiBhaW9fcmVxcHJpbzsKKyAgX191MzIgYWlvX2ZpbGRlczsKKyAgX191NjQgYWlvX2J1ZjsKKyAgX191NjQgYWlvX25ieXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zNjQgYWlvX29mZnNldDsKLSBfX3U2NCBhaW9fcmVzZXJ2ZWQyOwotIF9fdTMyIGFpb19mbGFnczsKLSBfX3UzMiBhaW9fcmVzZmQ7CisgIF9fczY0IGFpb19vZmZzZXQ7CisgIF9fdTY0IGFpb19yZXNlcnZlZDI7CisgIF9fdTMyIGFpb19mbGFnczsKKyAgX191MzIgYWlvX3Jlc2ZkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjdW5kZWYgSUZCSUcKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYW5kcm9pZF9hbGFybS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hbmRyb2lkX2FsYXJtLmgKaW5kZXggZDAxMTFiMi4uODAxYTAxZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hbmRyb2lkX2FsYXJtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hbmRyb2lkX2FsYXJtLmgKQEAgLTIyLDM3ICsyMiwzNCBAQAogI2luY2x1ZGUgPGxpbnV4L3RpbWUuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGFuZHJvaWRfYWxhcm1fdHlwZSB7Ci0gQU5EUk9JRF9BTEFSTV9SVENfV0FLRVVQLAotIEFORFJPSURfQUxBUk1fUlRDLAotIEFORFJPSURfQUxBUk1fRUxBUFNFRF9SRUFMVElNRV9XQUtFVVAsCisgIEFORFJPSURfQUxBUk1fUlRDX1dBS0VVUCwKKyAgQU5EUk9JRF9BTEFSTV9SVEMsCisgIEFORFJPSURfQUxBUk1fRUxBUFNFRF9SRUFMVElNRV9XQUtFVVAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEFORFJPSURfQUxBUk1fRUxBUFNFRF9SRUFMVElNRSwKLSBBTkRST0lEX0FMQVJNX1NZU1RFTVRJTUUsCi0gQU5EUk9JRF9BTEFSTV9UWVBFX0NPVU5ULAorICBBTkRST0lEX0FMQVJNX0VMQVBTRURfUkVBTFRJTUUsCisgIEFORFJPSURfQUxBUk1fU1lTVEVNVElNRSwKKyAgQU5EUk9JRF9BTEFSTV9UWVBFX0NPVU5ULAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGFuZHJvaWRfYWxhcm1fcmV0dXJuX2ZsYWdzIHsKLSBBTkRST0lEX0FMQVJNX1JUQ19XQUtFVVBfTUFTSyA9IDFVIDw8IEFORFJPSURfQUxBUk1fUlRDX1dBS0VVUCwKLSBBTkRST0lEX0FMQVJNX1JUQ19NQVNLID0gMVUgPDwgQU5EUk9JRF9BTEFSTV9SVEMsCi0gQU5EUk9JRF9BTEFSTV9FTEFQU0VEX1JFQUxUSU1FX1dBS0VVUF9NQVNLID0KKyAgQU5EUk9JRF9BTEFSTV9SVENfV0FLRVVQX01BU0sgPSAxVSA8PCBBTkRST0lEX0FMQVJNX1JUQ19XQUtFVVAsCisgIEFORFJPSURfQUxBUk1fUlRDX01BU0sgPSAxVSA8PCBBTkRST0lEX0FMQVJNX1JUQywKKyAgQU5EUk9JRF9BTEFSTV9FTEFQU0VEX1JFQUxUSU1FX1dBS0VVUF9NQVNLID0gMVUgPDwgQU5EUk9JRF9BTEFSTV9FTEFQU0VEX1JFQUxUSU1FX1dBS0VVUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gMVUgPDwgQU5EUk9JRF9BTEFSTV9FTEFQU0VEX1JFQUxUSU1FX1dBS0VVUCwKLSBBTkRST0lEX0FMQVJNX0VMQVBTRURfUkVBTFRJTUVfTUFTSyA9Ci0gMVUgPDwgQU5EUk9JRF9BTEFSTV9FTEFQU0VEX1JFQUxUSU1FLAotIEFORFJPSURfQUxBUk1fU1lTVEVNVElNRV9NQVNLID0gMVUgPDwgQU5EUk9JRF9BTEFSTV9TWVNURU1USU1FLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBBTkRST0lEX0FMQVJNX1RJTUVfQ0hBTkdFX01BU0sgPSAxVSA8PCAxNgorICBBTkRST0lEX0FMQVJNX0VMQVBTRURfUkVBTFRJTUVfTUFTSyA9IDFVIDw8IEFORFJPSURfQUxBUk1fRUxBUFNFRF9SRUFMVElNRSwKKyAgQU5EUk9JRF9BTEFSTV9TWVNURU1USU1FX01BU0sgPSAxVSA8PCBBTkRST0lEX0FMQVJNX1NZU1RFTVRJTUUsCisgIEFORFJPSURfQUxBUk1fVElNRV9DSEFOR0VfTUFTSyA9IDFVIDw8IDE2CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQU5EUk9JRF9BTEFSTV9DTEVBUih0eXBlKSBfSU8oJ2EnLCAwIHwgKCh0eXBlKSA8PCA0KSkKICNkZWZpbmUgQU5EUk9JRF9BTEFSTV9XQUlUIF9JTygnYScsIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBTEFSTV9JT1coYywgdHlwZSwgc2l6ZSkgX0lPVygnYScsIChjKSB8ICgodHlwZSkgPDwgNCksIHNpemUpCisjZGVmaW5lIEFMQVJNX0lPVyhjLHR5cGUsc2l6ZSkgX0lPVygnYScsIChjKSB8ICgodHlwZSkgPDwgNCksIHNpemUpCiAjZGVmaW5lIEFORFJPSURfQUxBUk1fU0VUKHR5cGUpIEFMQVJNX0lPVygyLCB0eXBlLCBzdHJ1Y3QgdGltZXNwZWMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBTkRST0lEX0FMQVJNX1NFVF9BTkRfV0FJVCh0eXBlKSBBTEFSTV9JT1coMywgdHlwZSwgc3RydWN0IHRpbWVzcGVjKQogI2RlZmluZSBBTkRST0lEX0FMQVJNX0dFVF9USU1FKHR5cGUpIEFMQVJNX0lPVyg0LCB0eXBlLCBzdHJ1Y3QgdGltZXNwZWMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBTkRST0lEX0FMQVJNX1NFVF9SVEMgX0lPVygnYScsIDUsIHN0cnVjdCB0aW1lc3BlYykKICNkZWZpbmUgQU5EUk9JRF9BTEFSTV9CQVNFX0NNRChjbWQpIChjbWQgJiB+KF9JT0MoMCwgMCwgMHhmMCwgMCkpKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQU5EUk9JRF9BTEFSTV9JT0NUTF9UT19UWVBFKGNtZCkgKF9JT0NfTlIoY21kKSA+PiA0KQogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hcG1fYmlvcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hcG1fYmlvcy5oCmluZGV4IGYzYjYxMzAuLmU2YjE3YWQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXBtX2Jpb3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FwbV9iaW9zLmgKQEAgLTIzLDE3ICsyMywxNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgdW5zaWduZWQgc2hvcnQgYXBtX2V2ZW50aW5mb190Owogc3RydWN0IGFwbV9iaW9zX2luZm8gewotIF9fdTE2IHZlcnNpb247Ci0gX191MTYgY3NlZzsKKyAgX191MTYgdmVyc2lvbjsKKyAgX191MTYgY3NlZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgb2Zmc2V0OwotIF9fdTE2IGNzZWdfMTY7Ci0gX191MTYgZHNlZzsKLSBfX3UxNiBmbGFnczsKKyAgX191MzIgb2Zmc2V0OworICBfX3UxNiBjc2VnXzE2OworICBfX3UxNiBkc2VnOworICBfX3UxNiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgY3NlZ19sZW47Ci0gX191MTYgY3NlZ18xNl9sZW47Ci0gX191MTYgZHNlZ19sZW47CisgIF9fdTE2IGNzZWdfbGVuOworICBfX3UxNiBjc2VnXzE2X2xlbjsKKyAgX191MTYgZHNlZ19sZW47CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVBNX1NUQVRFX1JFQURZIDB4MDAwMApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hc2htZW0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXNobWVtLmgKaW5kZXggYTFmODc2MC4uNDcxMWVmMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hc2htZW0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2FzaG1lbS5oCkBAIC0yOCw4ICsyOCw4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBU0hNRU1fSVNfUElOTkVEIDEKIHN0cnVjdCBhc2htZW1fcGluIHsKLSBfX3UzMiBvZmZzZXQ7Ci0gX191MzIgbGVuOworICBfX3UzMiBvZmZzZXQ7CisgIF9fdTMyIGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBfX0FTSE1FTUlPQyAweDc3CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0YWxrLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0YWxrLmgKaW5kZXggYjM1N2I5MS4uNzE1NDQyMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdGFsay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRhbGsuaApAQCAtMjYsMzEgKzI2LDMxIEBACiAjZGVmaW5lIEFUUE9SVF9SRVNFUlZFRCAxMjgKICNkZWZpbmUgQVRQT1JUX0xBU1QgMjU0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBVEFERFJfQU5ZTkVUIChfX3UxNikwCi0jZGVmaW5lIEFUQUREUl9BTllOT0RFIChfX3U4KTAKLSNkZWZpbmUgQVRBRERSX0FOWVBPUlQgKF9fdTgpMAotI2RlZmluZSBBVEFERFJfQkNBU1QgKF9fdTgpMjU1CisjZGVmaW5lIEFUQUREUl9BTllORVQgKF9fdTE2KSAwCisjZGVmaW5lIEFUQUREUl9BTllOT0RFIChfX3U4KSAwCisjZGVmaW5lIEFUQUREUl9BTllQT1JUIChfX3U4KSAwCisjZGVmaW5lIEFUQUREUl9CQ0FTVCAoX191OCkgMjU1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBERFBfTUFYU1ogNTg3CiAjZGVmaW5lIEREUF9NQVhIT1BTIDE1CiAjZGVmaW5lIFNJT0NBVEFMS0RJRkFERFIgKFNJT0NQUk9UT1BSSVZBVEUgKyAwKQogc3RydWN0IGF0YWxrX2FkZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgc19uZXQ7Ci0gX191OCBzX25vZGU7CisgIF9fYmUxNiBzX25ldDsKKyAgX191OCBzX25vZGU7CiB9Owogc3RydWN0IHNvY2thZGRyX2F0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2F0X2ZhbWlseTsKLSBfX3U4IHNhdF9wb3J0OwotIHN0cnVjdCBhdGFsa19hZGRyIHNhdF9hZGRyOwotIGNoYXIgc2F0X3plcm9bOF07CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHNhdF9mYW1pbHk7CisgIF9fdTggc2F0X3BvcnQ7CisgIHN0cnVjdCBhdGFsa19hZGRyIHNhdF9hZGRyOworICBjaGFyIHNhdF96ZXJvWzhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgYXRhbGtfbmV0cmFuZ2UgewotIF9fdTggbnJfcGhhc2U7Ci0gX19iZTE2IG5yX2ZpcnN0bmV0OworICBfX3U4IG5yX3BoYXNlOworICBfX2JlMTYgbnJfZmlyc3RuZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBucl9sYXN0bmV0OworICBfX2JlMTYgbnJfbGFzdG5ldDsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bS5oCmluZGV4IGQ4OWIwYWYuLjAyYmY5ODkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG0uaApAQCAtNDYsMTcgKzQ2LDE3IEBACiAjZGVmaW5lIEFUTV9BQUwzNCAzCiAjZGVmaW5lIEFUTV9BQUw1IDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fU09fRU5DT0RFKGwsbix0KSAoKCgobCkgJiAweDFGRikgPDwgMjIpIHwgKChuKSA8PCAxNikgfCAgIHNpemVvZih0KSkKKyNkZWZpbmUgX19TT19FTkNPREUobCxuLHQpICgoKChsKSAmIDB4MUZGKSA8PCAyMikgfCAoKG4pIDw8IDE2KSB8IHNpemVvZih0KSkKICNkZWZpbmUgX19TT19MRVZFTF9NQVRDSChjLG0pICgoKGMpID4+IDIyKSA9PSAoKG0pICYgMHgxRkYpKQogI2RlZmluZSBfX1NPX05VTUJFUihjKSAoKChjKSA+PiAxNikgJiAweDNmKQogI2RlZmluZSBfX1NPX1NJWkUoYykgKChjKSAmIDB4M2ZmZikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNPX1NFVENMUCBfX1NPX0VOQ09ERShTT0xfQVRNLDAsaW50KQotI2RlZmluZSBTT19DSVJBTkdFIF9fU09fRU5DT0RFKFNPTF9BVE0sMSxzdHJ1Y3QgYXRtX2NpcmFuZ2UpCi0jZGVmaW5lIFNPX0FUTVFPUyBfX1NPX0VOQ09ERShTT0xfQVRNLDIsc3RydWN0IGF0bV9xb3MpCi0jZGVmaW5lIFNPX0FUTVNBUCBfX1NPX0VOQ09ERShTT0xfQVRNLDMsc3RydWN0IGF0bV9zYXApCisjZGVmaW5lIFNPX1NFVENMUCBfX1NPX0VOQ09ERShTT0xfQVRNLCAwLCBpbnQpCisjZGVmaW5lIFNPX0NJUkFOR0UgX19TT19FTkNPREUoU09MX0FUTSwgMSwgc3RydWN0IGF0bV9jaXJhbmdlKQorI2RlZmluZSBTT19BVE1RT1MgX19TT19FTkNPREUoU09MX0FUTSwgMiwgc3RydWN0IGF0bV9xb3MpCisjZGVmaW5lIFNPX0FUTVNBUCBfX1NPX0VOQ09ERShTT0xfQVRNLCAzLCBzdHJ1Y3QgYXRtX3NhcCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNPX0FUTVBWQyBfX1NPX0VOQ09ERShTT0xfQVRNLDQsc3RydWN0IHNvY2thZGRyX2F0bXB2YykKKyNkZWZpbmUgU09fQVRNUFZDIF9fU09fRU5DT0RFKFNPTF9BVE0sIDQsIHN0cnVjdCBzb2NrYWRkcl9hdG1wdmMpCiAjZGVmaW5lIFNPX01VTFRJUE9JTlQgX19TT19FTkNPREUoU09MX0FUTSwgNSwgaW50KQogI2RlZmluZSBBVE1fSERSX0dGQ19NQVNLIDB4ZjAwMDAwMDAKICNkZWZpbmUgQVRNX0hEUl9HRkNfU0hJRlQgMjgKQEAgLTg3LDU2ICs4Nyw1NiBAQAogI2RlZmluZSBBVE1fQUJSIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFUTV9BTllDTEFTUyA1Ci0jZGVmaW5lIEFUTV9NQVhfUENSIC0xCisjZGVmaW5lIEFUTV9NQVhfUENSIC0gMQogc3RydWN0IGF0bV90cmFmcHJtIHsKLSB1bnNpZ25lZCBjaGFyIHRyYWZmaWNfY2xhc3M7CisgIHVuc2lnbmVkIGNoYXIgdHJhZmZpY19jbGFzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG1heF9wY3I7Ci0gaW50IHBjcjsKLSBpbnQgbWluX3BjcjsKLSBpbnQgbWF4X2NkdjsKKyAgaW50IG1heF9wY3I7CisgIGludCBwY3I7CisgIGludCBtaW5fcGNyOworICBpbnQgbWF4X2NkdjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG1heF9zZHU7Ci0gdW5zaWduZWQgaW50IGljcjsKLSB1bnNpZ25lZCBpbnQgdGJlOwotIHVuc2lnbmVkIGludCBmcnR0IDogMjQ7CisgIGludCBtYXhfc2R1OworICB1bnNpZ25lZCBpbnQgaWNyOworICB1bnNpZ25lZCBpbnQgdGJlOworICB1bnNpZ25lZCBpbnQgZnJ0dCA6IDI0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmlmIDogNDsKLSB1bnNpZ25lZCBpbnQgcmRmIDogNDsKLSB1bnNpZ25lZCBpbnQgbnJtX3ByZXMgOjE7Ci0gdW5zaWduZWQgaW50IHRybV9wcmVzIDoxOworICB1bnNpZ25lZCBpbnQgcmlmIDogNDsKKyAgdW5zaWduZWQgaW50IHJkZiA6IDQ7CisgIHVuc2lnbmVkIGludCBucm1fcHJlcyA6IDE7CisgIHVuc2lnbmVkIGludCB0cm1fcHJlcyA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBhZHRmX3ByZXMgOjE7Ci0gdW5zaWduZWQgaW50IGNkZl9wcmVzIDoxOwotIHVuc2lnbmVkIGludCBucm0gOjM7Ci0gdW5zaWduZWQgaW50IHRybSA6MzsKKyAgdW5zaWduZWQgaW50IGFkdGZfcHJlcyA6IDE7CisgIHVuc2lnbmVkIGludCBjZGZfcHJlcyA6IDE7CisgIHVuc2lnbmVkIGludCBucm0gOiAzOworICB1bnNpZ25lZCBpbnQgdHJtIDogMzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGFkdGYgOjEwOwotIHVuc2lnbmVkIGludCBjZGYgOjM7Ci0gdW5zaWduZWQgaW50IHNwYXJlIDo5OworICB1bnNpZ25lZCBpbnQgYWR0ZiA6IDEwOworICB1bnNpZ25lZCBpbnQgY2RmIDogMzsKKyAgdW5zaWduZWQgaW50IHNwYXJlIDogOTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGF0bV9xb3MgewotIHN0cnVjdCBhdG1fdHJhZnBybSB0eHRwOwotIHN0cnVjdCBhdG1fdHJhZnBybSByeHRwIF9fQVRNX0FQSV9BTElHTjsKLSB1bnNpZ25lZCBjaGFyIGFhbCBfX0FUTV9BUElfQUxJR047CisgIHN0cnVjdCBhdG1fdHJhZnBybSB0eHRwOworICBzdHJ1Y3QgYXRtX3RyYWZwcm0gcnh0cCBfX0FUTV9BUElfQUxJR047CisgIHVuc2lnbmVkIGNoYXIgYWFsIF9fQVRNX0FQSV9BTElHTjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBBVE1fSVRGX0FOWSAtMQotI2RlZmluZSBBVE1fVlBJX0FOWSAtMQotI2RlZmluZSBBVE1fVkNJX0FOWSAtMQorI2RlZmluZSBBVE1fSVRGX0FOWSAtIDEKKyNkZWZpbmUgQVRNX1ZQSV9BTlkgLSAxCisjZGVmaW5lIEFUTV9WQ0lfQU5ZIC0gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVRNX1ZQSV9VTlNQRUMgLTIKLSNkZWZpbmUgQVRNX1ZDSV9VTlNQRUMgLTIKKyNkZWZpbmUgQVRNX1ZQSV9VTlNQRUMgLSAyCisjZGVmaW5lIEFUTV9WQ0lfVU5TUEVDIC0gMgogc3RydWN0IHNvY2thZGRyX2F0bXB2YyB7Ci0gdW5zaWduZWQgc2hvcnQgc2FwX2ZhbWlseTsKKyAgdW5zaWduZWQgc2hvcnQgc2FwX2ZhbWlseTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBzaG9ydCBpdGY7Ci0gc2hvcnQgdnBpOwotIGludCB2Y2k7CisgIHN0cnVjdCB7CisgICAgc2hvcnQgaXRmOworICAgIHNob3J0IHZwaTsKKyAgICBpbnQgdmNpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHNhcF9hZGRyIF9fQVRNX0FQSV9BTElHTjsKKyAgfSBzYXBfYWRkciBfX0FUTV9BUElfQUxJR047CiB9OwogI2RlZmluZSBBVE1fRVNBX0xFTiAyMAogI2RlZmluZSBBVE1fRTE2NF9MRU4gMTIKQEAgLTE1NywyMSArMTU3LDIxIEBACiAjZGVmaW5lIEFUTV9MSUpfTkogMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzb2NrYWRkcl9hdG1zdmMgewotIHVuc2lnbmVkIHNob3J0IHNhc19mYW1pbHk7Ci0gc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIHBydltBVE1fRVNBX0xFTl07CisgIHVuc2lnbmVkIHNob3J0IHNhc19mYW1pbHk7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgY2hhciBwcnZbQVRNX0VTQV9MRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHB1YltBVE1fRTE2NF9MRU4rMV07Ci0gY2hhciBsaWpfdHlwZTsKLSBfX3UzMiBsaWpfaWQ7Ci0gfSBzYXNfYWRkciBfX0FUTV9BUElfQUxJR047CisgICAgY2hhciBwdWJbQVRNX0UxNjRfTEVOICsgMV07CisgICAgY2hhciBsaWpfdHlwZTsKKyAgICBfX3UzMiBsaWpfaWQ7CisgIH0gc2FzX2FkZHIgX19BVE1fQVBJX0FMSUdOOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgYXRtaWZfc2lvYyB7Ci0gaW50IG51bWJlcjsKLSBpbnQgbGVuZ3RoOworICBpbnQgbnVtYmVyOworICBpbnQgbGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2b2lkIF9fdXNlciAqYXJnOworICB2b2lkIF9fdXNlciAqIGFyZzsKIH07CiB0eXBlZGVmIHVuc2lnbmVkIHNob3J0IGF0bV9iYWNrZW5kX3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX2VuaS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1fZW5pLmgKaW5kZXggOTUwYThhMC4uYTY1OGQ2NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1fZW5pLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1fZW5pLmgKQEAgLTIxLDkgKzIxLDkgQEAKICNpbmNsdWRlIDxsaW51eC9hdG1pb2MuaD4KIHN0cnVjdCBlbmlfbXVsdGlwbGllcnMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdHgscng7CisgIGludCB0eCwgcng7CiB9OwotI2RlZmluZSBFTklfTUVNRFVNUCBfSU9XKCdhJyxBVE1JT0NfU0FSUFJWLHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBFTklfU0VUTVVMVCBfSU9XKCdhJyxBVE1JT0NfU0FSUFJWKzcsc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEVOSV9NRU1EVU1QIF9JT1coJ2EnLCBBVE1JT0NfU0FSUFJWLCBzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgRU5JX1NFVE1VTFQgX0lPVygnYScsIEFUTUlPQ19TQVJQUlYgKyA3LCBzdHJ1Y3QgYXRtaWZfc2lvYykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX2hlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV9oZS5oCmluZGV4IGM2MmY0NTYuLjgwOWFjNjEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX2hlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1faGUuaApAQCAtMjcsOCArMjcsOCBAQAogI2RlZmluZSBIRV9SRUdUWVBFX01CT1ggNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBoZV9pb2N0bF9yZWcgewotIHVuc2lnbmVkIGFkZHIsIHZhbDsKLSBjaGFyIHR5cGU7CisgIHVuc2lnbmVkIGFkZHIsIHZhbDsKKyAgY2hhciB0eXBlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX2lkdDc3MTA1LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV9pZHQ3NzEwNS5oCmluZGV4IGM1NjE2NGUuLmRjMmM5YzEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX2lkdDc3MTA1LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1faWR0NzcxMDUuaApAQCAtMjMsMTMgKzIzLDEzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L2F0bWRldi5oPgogc3RydWN0IGlkdDc3MTA1X3N0YXRzIHsKLSBfX3UzMiBzeW1ib2xfZXJyb3JzOwotIF9fdTMyIHR4X2NlbGxzOworICBfX3UzMiBzeW1ib2xfZXJyb3JzOworICBfX3UzMiB0eF9jZWxsczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcnhfY2VsbHM7Ci0gX191MzIgcnhfaGVjX2Vycm9yczsKKyAgX191MzIgcnhfY2VsbHM7CisgIF9fdTMyIHJ4X2hlY19lcnJvcnM7CiB9OwotI2RlZmluZSBJRFQ3NzEwNV9HRVRTVEFUIF9JT1coJ2EnLEFUTUlPQ19QSFlQUlYrMixzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgSURUNzcxMDVfR0VUU1RBVCBfSU9XKCdhJywgQVRNSU9DX1BIWVBSViArIDIsIHN0cnVjdCBhdG1pZl9zaW9jKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSURUNzcxMDVfR0VUU1RBVFogX0lPVygnYScsQVRNSU9DX1BIWVBSViszLHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBJRFQ3NzEwNV9HRVRTVEFUWiBfSU9XKCdhJywgQVRNSU9DX1BIWVBSViArIDMsIHN0cnVjdCBhdG1pZl9zaW9jKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV9uaWNzdGFyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV9uaWNzdGFyLmgKaW5kZXggYzA1OTc1MS4uYWZmZWRkYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1fbmljc3Rhci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX25pY3N0YXIuaApAQCAtMjEsMjggKzIxLDI1IEBACiAjaW5jbHVkZSA8bGludXgvYXRtYXBpLmg+CiAjaW5jbHVkZSA8bGludXgvYXRtaW9jLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBOU19HRVRQU1RBVCBfSU9XUignYScsQVRNSU9DX1NBUlBSVisxLHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBOU19TRVRCVUZMRVYgX0lPVygnYScsQVRNSU9DX1NBUlBSVisyLHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBOU19BREpCVUZMRVYgX0lPKCdhJyxBVE1JT0NfU0FSUFJWKzMpCi10eXBlZGVmIHN0cnVjdCBidWZfbnIKKyNkZWZpbmUgTlNfR0VUUFNUQVQgX0lPV1IoJ2EnLCBBVE1JT0NfU0FSUFJWICsgMSwgc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIE5TX1NFVEJVRkxFViBfSU9XKCdhJywgQVRNSU9DX1NBUlBSViArIDIsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBOU19BREpCVUZMRVYgX0lPKCdhJywgQVRNSU9DX1NBUlBSViArIDMpCit0eXBlZGVmIHN0cnVjdCBidWZfbnIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSB1bnNpZ25lZCBtaW47Ci0gdW5zaWduZWQgaW5pdDsKLSB1bnNpZ25lZCBtYXg7CisgIHVuc2lnbmVkIG1pbjsKKyAgdW5zaWduZWQgaW5pdDsKKyAgdW5zaWduZWQgbWF4OworfSBidWZfbnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfWJ1Zl9ucjsKLXR5cGVkZWYgc3RydWN0IHBvb2xfbGV2ZWxzCi17Ci0gaW50IGJ1ZnR5cGU7Cit0eXBlZGVmIHN0cnVjdCBwb29sX2xldmVscyB7CisgIGludCBidWZ0eXBlOworICBpbnQgY291bnQ7CisgIGJ1Zl9uciBsZXZlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNvdW50OwotIGJ1Zl9uciBsZXZlbDsKIH0gcG9vbF9sZXZlbHM7CiAjZGVmaW5lIE5TX0JVRlRZUEVfU01BTEwgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTlNfQlVGVFlQRV9MQVJHRSAyCiAjZGVmaW5lIE5TX0JVRlRZUEVfSFVHRSAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOU19CVUZUWVBFX0lPVkVDIDQKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX3RjcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1fdGNwLmgKaW5kZXggYzY1MDBjOS4uNjY2NTY3NSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1fdGNwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1fdGNwLmgKQEAgLTI0LDI3ICsyNCwyNyBAQAogI2luY2x1ZGUgPGxpbnV4L2F0bWlvYy5oPgogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgYXRtdGNwX2hkciB7Ci0gX191MTYgdnBpOworICBfX3UxNiB2cGk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHZjaTsKLSBfX3UzMiBsZW5ndGg7CisgIF9fdTE2IHZjaTsKKyAgX191MzIgbGVuZ3RoOwogfTsKICNkZWZpbmUgQVRNVENQX0hEUl9NQUdJQyAofjApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVE1UQ1BfQ1RSTF9PUEVOIDEKICNkZWZpbmUgQVRNVENQX0NUUkxfQ0xPU0UgMgogc3RydWN0IGF0bXRjcF9jb250cm9sIHsKLSBzdHJ1Y3QgYXRtdGNwX2hkciBoZHI7CisgIHN0cnVjdCBhdG10Y3BfaGRyIGhkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHR5cGU7Ci0gYXRtX2twdHJfdCB2Y2M7Ci0gc3RydWN0IHNvY2thZGRyX2F0bXB2YyBhZGRyOwotIHN0cnVjdCBhdG1fcW9zIHFvczsKKyAgaW50IHR5cGU7CisgIGF0bV9rcHRyX3QgdmNjOworICBzdHJ1Y3Qgc29ja2FkZHJfYXRtcHZjIGFkZHI7CisgIHN0cnVjdCBhdG1fcW9zIHFvczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHJlc3VsdDsKKyAgaW50IHJlc3VsdDsKIH0gX19BVE1fQVBJX0FMSUdOOwotI2RlZmluZSBTSU9DU0lGQVRNVENQIF9JTygnYScsQVRNSU9DX0lURikKLSNkZWZpbmUgQVRNVENQX0NSRUFURSBfSU8oJ2EnLEFUTUlPQ19JVEYrMTQpCisjZGVmaW5lIFNJT0NTSUZBVE1UQ1AgX0lPKCdhJywgQVRNSU9DX0lURikKKyNkZWZpbmUgQVRNVENQX0NSRUFURSBfSU8oJ2EnLCBBVE1JT0NfSVRGICsgMTQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBVE1UQ1BfUkVNT1ZFIF9JTygnYScsQVRNSU9DX0lURisxNSkKKyNkZWZpbmUgQVRNVENQX1JFTU9WRSBfSU8oJ2EnLCBBVE1JT0NfSVRGICsgMTUpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX3phdG0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtX3phdG0uaAppbmRleCAwYzgwYWQ5Li4zNDc1NWJiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bV96YXRtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1femF0bS5oCkBAIC0yMSwzMyArMjEsMzMgQEAKICNpbmNsdWRlIDxsaW51eC9hdG1hcGkuaD4KICNpbmNsdWRlIDxsaW51eC9hdG1pb2MuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFpBVE1fR0VUUE9PTCBfSU9XKCdhJyxBVE1JT0NfU0FSUFJWKzEsc3RydWN0IGF0bWlmX3Npb2MpCi0jZGVmaW5lIFpBVE1fR0VUUE9PTFogX0lPVygnYScsQVRNSU9DX1NBUlBSVisyLHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBaQVRNX1NFVFBPT0wgX0lPVygnYScsQVRNSU9DX1NBUlBSViszLHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBaQVRNX0dFVFBPT0wgX0lPVygnYScsIEFUTUlPQ19TQVJQUlYgKyAxLCBzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgWkFUTV9HRVRQT09MWiBfSU9XKCdhJywgQVRNSU9DX1NBUlBSViArIDIsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBaQVRNX1NFVFBPT0wgX0lPVygnYScsIEFUTUlPQ19TQVJQUlYgKyAzLCBzdHJ1Y3QgYXRtaWZfc2lvYykKIHN0cnVjdCB6YXRtX3Bvb2xfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCByZWZfY291bnQ7Ci0gaW50IGxvd193YXRlcixoaWdoX3dhdGVyOwotIGludCBycWFfY291bnQscnF1X2NvdW50OwotIGludCBvZmZzZXQsbmV4dF9vZmY7CisgIGludCByZWZfY291bnQ7CisgIGludCBsb3dfd2F0ZXIsIGhpZ2hfd2F0ZXI7CisgIGludCBycWFfY291bnQsIHJxdV9jb3VudDsKKyAgaW50IG9mZnNldCwgbmV4dF9vZmY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBuZXh0X2NudCxuZXh0X3RocmVzOworICBpbnQgbmV4dF9jbnQsIG5leHRfdGhyZXM7CiB9Owogc3RydWN0IHphdG1fcG9vbF9yZXEgewotIGludCBwb29sX251bTsKKyAgaW50IHBvb2xfbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgemF0bV9wb29sX2luZm8gaW5mbzsKKyAgc3RydWN0IHphdG1fcG9vbF9pbmZvIGluZm87CiB9Owogc3RydWN0IHphdG1fdF9oaXN0IHsKLSBzdHJ1Y3QgdGltZXZhbCByZWFsOworICBzdHJ1Y3QgdGltZXZhbCByZWFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdGltZXZhbCBleHBlY3RlZDsKKyAgc3RydWN0IHRpbWV2YWwgZXhwZWN0ZWQ7CiB9OwogI2RlZmluZSBaQVRNX09BTV9QT09MIDAKICNkZWZpbmUgWkFUTV9BQUwwX1BPT0wgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWkFUTV9BQUw1X1BPT0xfQkFTRSAyCi0jZGVmaW5lIFpBVE1fTEFTVF9QT09MIFpBVE1fQUFMNV9QT09MX0JBU0UrMTAKKyNkZWZpbmUgWkFUTV9MQVNUX1BPT0wgWkFUTV9BQUw1X1BPT0xfQkFTRSArIDEwCiAjZGVmaW5lIFpBVE1fVElNRVJfSElTVE9SWV9TSVpFIDE2CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWFwaS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1hcGkuaAppbmRleCAxNmU4ZmRmLi45NGZmMGEwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWFwaS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtYXBpLmgKQEAgLTI0LDYgKzI0LDggQEAKICNlbHNlCiAjZGVmaW5lIF9fQVRNX0FQSV9BTElHTgogI2VuZGlmCi10eXBlZGVmIHN0cnVjdCB7IHVuc2lnbmVkIGNoYXIgX1s4XTsgfSBfX0FUTV9BUElfQUxJR04gYXRtX2twdHJfdDsKK3R5cGVkZWYgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGNoYXIgX1s4XTsKK30gX19BVE1fQVBJX0FMSUdOIGF0bV9rcHRyX3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtYXJwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWFycC5oCmluZGV4IGVlZDk4MmMuLjU1NzRjNDcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtYXJwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1hcnAuaApAQCAtMjQsMjUgKzI0LDI1IEBACiAjaW5jbHVkZSA8bGludXgvYXRtaW9jLmg+CiAjZGVmaW5lIEFUTUFSUF9SRVRSWV9ERUxBWSAzMAogI2RlZmluZSBBVE1BUlBfTUFYX1VOUkVTX1BBQ0tFVFMgNQotI2RlZmluZSBBVE1BUlBEX0NUUkwgX0lPKCdhJyxBVE1JT0NfQ0xJUCsxKQorI2RlZmluZSBBVE1BUlBEX0NUUkwgX0lPKCdhJywgQVRNSU9DX0NMSVAgKyAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVRNQVJQX01LSVAgX0lPKCdhJyxBVE1JT0NfQ0xJUCsyKQotI2RlZmluZSBBVE1BUlBfU0VURU5UUlkgX0lPKCdhJyxBVE1JT0NfQ0xJUCszKQotI2RlZmluZSBBVE1BUlBfRU5DQVAgX0lPKCdhJyxBVE1JT0NfQ0xJUCs1KQorI2RlZmluZSBBVE1BUlBfTUtJUCBfSU8oJ2EnLCBBVE1JT0NfQ0xJUCArIDIpCisjZGVmaW5lIEFUTUFSUF9TRVRFTlRSWSBfSU8oJ2EnLCBBVE1JT0NfQ0xJUCArIDMpCisjZGVmaW5lIEFUTUFSUF9FTkNBUCBfSU8oJ2EnLCBBVE1JT0NfQ0xJUCArIDUpCiBlbnVtIGF0bWFycF9jdHJsX3R5cGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBhY3RfaW52YWxpZCwKLSBhY3RfbmVlZCwKLSBhY3RfdXAsCi0gYWN0X2Rvd24sCisgIGFjdF9pbnZhbGlkLAorICBhY3RfbmVlZCwKKyAgYWN0X3VwLAorICBhY3RfZG93biwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYWN0X2NoYW5nZQorICBhY3RfY2hhbmdlCiB9Owogc3RydWN0IGF0bWFycF9jdHJsIHsKLSBlbnVtIGF0bWFycF9jdHJsX3R5cGUgdHlwZTsKKyAgZW51bSBhdG1hcnBfY3RybF90eXBlIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBpdGZfbnVtOwotIF9fYmUzMiBpcDsKKyAgaW50IGl0Zl9udW07CisgIF9fYmUzMiBpcDsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWJyMjY4NC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1icjI2ODQuaAppbmRleCAxYjFiOWM1Li45MjQyN2Y1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWJyMjY4NC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtYnIyNjg0LmgKQEAgLTI4LDcgKzI4LDcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJSMjY4NF9NRURJQV9GRERJICgzKQogI2RlZmluZSBCUjI2ODRfTUVESUFfODAyXzYgKDQpCi0jZGVmaW5lIEJSMjY4NF9GTEFHX1JPVVRFRCAoMTw8MTYpCisjZGVmaW5lIEJSMjY4NF9GTEFHX1JPVVRFRCAoMSA8PCAxNikKICNkZWZpbmUgQlIyNjg0X0ZDU0lOX05PICgwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlIyNjg0X0ZDU0lOX0lHTk9SRSAoMSkKQEAgLTQ0LDExICs0NCwxMSBAQAogI2RlZmluZSBCUjI2ODRfUEFZTE9BRF9ST1VURUQgKDApCiAjZGVmaW5lIEJSMjY4NF9QQVlMT0FEX0JSSURHRUQgKDEpCiBzdHJ1Y3QgYXRtX25ld2lmX2JyMjY4NCB7Ci0gYXRtX2JhY2tlbmRfdCBiYWNrZW5kX251bTsKKyAgYXRtX2JhY2tlbmRfdCBiYWNrZW5kX251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG1lZGlhOwotIGNoYXIgaWZuYW1lW0lGTkFNU0laXTsKLSBpbnQgbXR1OworICBpbnQgbWVkaWE7CisgIGNoYXIgaWZuYW1lW0lGTkFNU0laXTsKKyAgaW50IG10dTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCUjI2ODRfRklORF9CWU5PVEhJTkcgKDApCkBAIC01Niw0MyArNTYsNDMgQEAKICNkZWZpbmUgQlIyNjg0X0ZJTkRfQllJRk5BTUUgKDIpCiBzdHJ1Y3QgYnIyNjg0X2lmX3NwZWMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbWV0aG9kOwotIHVuaW9uIHsKLSBjaGFyIGlmbmFtZVtJRk5BTVNJWl07Ci0gaW50IGRldm51bTsKKyAgaW50IG1ldGhvZDsKKyAgdW5pb24geworICAgIGNoYXIgaWZuYW1lW0lGTkFNU0laXTsKKyAgICBpbnQgZGV2bnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHNwZWM7CisgIH0gc3BlYzsKIH07CiBzdHJ1Y3QgYXRtX2JhY2tlbmRfYnIyNjg0IHsKLSBhdG1fYmFja2VuZF90IGJhY2tlbmRfbnVtOworICBhdG1fYmFja2VuZF90IGJhY2tlbmRfbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgYnIyNjg0X2lmX3NwZWMgaWZzcGVjOwotIGludCBmY3NfaW47Ci0gaW50IGZjc19vdXQ7Ci0gaW50IGZjc19hdXRvOworICBzdHJ1Y3QgYnIyNjg0X2lmX3NwZWMgaWZzcGVjOworICBpbnQgZmNzX2luOworICBpbnQgZmNzX291dDsKKyAgaW50IGZjc19hdXRvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZW5jYXBzOwotIGludCBoYXNfdnBpaWQ7Ci0gX191OCB2cG5faWRbN107Ci0gaW50IHNlbmRfcGFkZGluZzsKKyAgaW50IGVuY2FwczsKKyAgaW50IGhhc192cGlpZDsKKyAgX191OCB2cG5faWRbN107CisgIGludCBzZW5kX3BhZGRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBtaW5fc2l6ZTsKKyAgaW50IG1pbl9zaXplOwogfTsKIHN0cnVjdCBicjI2ODRfZmlsdGVyIHsKLSBfX2JlMzIgcHJlZml4OworICBfX2JlMzIgcHJlZml4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgbmV0bWFzazsKKyAgX19iZTMyIG5ldG1hc2s7CiB9Owogc3RydWN0IGJyMjY4NF9maWx0ZXJfc2V0IHsKLSBzdHJ1Y3QgYnIyNjg0X2lmX3NwZWMgaWZzcGVjOworICBzdHJ1Y3QgYnIyNjg0X2lmX3NwZWMgaWZzcGVjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgYnIyNjg0X2ZpbHRlciBmaWx0ZXI7CisgIHN0cnVjdCBicjI2ODRfZmlsdGVyIGZpbHRlcjsKIH07CiBlbnVtIGJyMjY4NF9wYXlsb2FkIHsKLSBwX3JvdXRlZCA9IEJSMjY4NF9QQVlMT0FEX1JPVVRFRCwKKyAgcF9yb3V0ZWQgPSBCUjI2ODRfUEFZTE9BRF9ST1VURUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHBfYnJpZGdlZCA9IEJSMjY4NF9QQVlMT0FEX0JSSURHRUQsCisgIHBfYnJpZGdlZCA9IEJSMjY4NF9QQVlMT0FEX0JSSURHRUQsCiB9OwotI2RlZmluZSBCUjI2ODRfU0VURklMVCBfSU9XKCAnYScsIEFUTUlPQ19CQUNLRU5EICsgMCwgICBzdHJ1Y3QgYnIyNjg0X2ZpbHRlcl9zZXQpCisjZGVmaW5lIEJSMjY4NF9TRVRGSUxUIF9JT1coJ2EnLCBBVE1JT0NfQkFDS0VORCArIDAsIHN0cnVjdCBicjI2ODRfZmlsdGVyX3NldCkKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtY2xpcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1jbGlwLmgKaW5kZXggMzQ2ZTQwMi4uYTI2NmI4MyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1jbGlwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1jbGlwLmgKQEAgLTI2LDUgKzI2LDUgQEAKICNkZWZpbmUgQ0xJUF9ERUZBVUxUX0lETEVUSU1FUiAxMjAwCiAjZGVmaW5lIENMSVBfQ0hFQ0tfSU5URVJWQUwgMTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNJT0NNS0NMSVAgX0lPKCdhJyxBVE1JT0NfQ0xJUCkKKyNkZWZpbmUgU0lPQ01LQ0xJUCBfSU8oJ2EnLCBBVE1JT0NfQ0xJUCkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1kZXYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtZGV2LmgKaW5kZXggODllOGJjZS4uZmVkNzVkMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1kZXYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWRldi5oCkBAIC0yMyw1NiArMjMsNTYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaW5jbHVkZSA8bGludXgvYXRtaW9jLmg+CiAjZGVmaW5lIEVTSV9MRU4gNgotI2RlZmluZSBBVE1fT0MzX1BDUiAoMTU1NTIwMDAwLzI3MCoyNjAvOC81MykKLSNkZWZpbmUgQVRNXzI1X1BDUiAoKDI1NjAwMDAwLzgtODAwMCkvNTQpCisjZGVmaW5lIEFUTV9PQzNfUENSICgxNTU1MjAwMDAgLyAyNzAgKiAyNjAgLyA4IC8gNTMpCisjZGVmaW5lIEFUTV8yNV9QQ1IgKCgyNTYwMDAwMCAvIDggLSA4MDAwKSAvIDU0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVRNX09DMTJfUENSICg2MjIwODAwMDAvMTA4MCoxMDQwLzgvNTMpCi0jZGVmaW5lIEFUTV9EUzNfUENSICg4MDAwKjEyKQotI2RlZmluZSBfX0FBTF9TVEFUX0lURU1TICAgX19IQU5ETEVfSVRFTSh0eCk7ICAgICBfX0hBTkRMRV9JVEVNKHR4X2Vycik7ICAgICBfX0hBTkRMRV9JVEVNKHJ4KTsgICAgIF9fSEFORExFX0lURU0ocnhfZXJyKTsgICAgIF9fSEFORExFX0lURU0ocnhfZHJvcCk7CisjZGVmaW5lIEFUTV9PQzEyX1BDUiAoNjIyMDgwMDAwIC8gMTA4MCAqIDEwNDAgLyA4IC8gNTMpCisjZGVmaW5lIEFUTV9EUzNfUENSICg4MDAwICogMTIpCisjZGVmaW5lIF9fQUFMX1NUQVRfSVRFTVMgX19IQU5ETEVfSVRFTSh0eCk7IF9fSEFORExFX0lURU0odHhfZXJyKTsgX19IQU5ETEVfSVRFTShyeCk7IF9fSEFORExFX0lURU0ocnhfZXJyKTsgX19IQU5ETEVfSVRFTShyeF9kcm9wKTsKIHN0cnVjdCBhdG1fYWFsX3N0YXRzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fSEFORExFX0lURU0oaSkgaW50IGkKLSBfX0FBTF9TVEFUX0lURU1TCisgIF9fQUFMX1NUQVRfSVRFTVMKICN1bmRlZiBfX0hBTkRMRV9JVEVNCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBhdG1fZGV2X3N0YXRzIHsKLSBzdHJ1Y3QgYXRtX2FhbF9zdGF0cyBhYWwwOwotIHN0cnVjdCBhdG1fYWFsX3N0YXRzIGFhbDM0OwotIHN0cnVjdCBhdG1fYWFsX3N0YXRzIGFhbDU7CisgIHN0cnVjdCBhdG1fYWFsX3N0YXRzIGFhbDA7CisgIHN0cnVjdCBhdG1fYWFsX3N0YXRzIGFhbDM0OworICBzdHJ1Y3QgYXRtX2FhbF9zdGF0cyBhYWw1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19BVE1fQVBJX0FMSUdOOwotI2RlZmluZSBBVE1fR0VUTElOS1JBVEUgX0lPVygnYScsQVRNSU9DX0lURisxLHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBBVE1fR0VUTkFNRVMgX0lPVygnYScsQVRNSU9DX0lURiszLHN0cnVjdCBhdG1faW9idWYpCi0jZGVmaW5lIEFUTV9HRVRUWVBFIF9JT1coJ2EnLEFUTUlPQ19JVEYrNCxzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgQVRNX0dFVExJTktSQVRFIF9JT1coJ2EnLCBBVE1JT0NfSVRGICsgMSwgc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9HRVROQU1FUyBfSU9XKCdhJywgQVRNSU9DX0lURiArIDMsIHN0cnVjdCBhdG1faW9idWYpCisjZGVmaW5lIEFUTV9HRVRUWVBFIF9JT1coJ2EnLCBBVE1JT0NfSVRGICsgNCwgc3RydWN0IGF0bWlmX3Npb2MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBVE1fR0VURVNJIF9JT1coJ2EnLEFUTUlPQ19JVEYrNSxzdHJ1Y3QgYXRtaWZfc2lvYykKLSNkZWZpbmUgQVRNX0dFVEFERFIgX0lPVygnYScsQVRNSU9DX0lURis2LHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBBVE1fUlNUQUREUiBfSU9XKCdhJyxBVE1JT0NfSVRGKzcsc3RydWN0IGF0bWlmX3Npb2MpCi0jZGVmaW5lIEFUTV9BRERBRERSIF9JT1coJ2EnLEFUTUlPQ19JVEYrOCxzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgQVRNX0dFVEVTSSBfSU9XKCdhJywgQVRNSU9DX0lURiArIDUsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBBVE1fR0VUQUREUiBfSU9XKCdhJywgQVRNSU9DX0lURiArIDYsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBBVE1fUlNUQUREUiBfSU9XKCdhJywgQVRNSU9DX0lURiArIDcsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBBVE1fQUREQUREUiBfSU9XKCdhJywgQVRNSU9DX0lURiArIDgsIHN0cnVjdCBhdG1pZl9zaW9jKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVRNX0RFTEFERFIgX0lPVygnYScsQVRNSU9DX0lURis5LHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBBVE1fR0VUQ0lSQU5HRSBfSU9XKCdhJyxBVE1JT0NfSVRGKzEwLHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBBVE1fU0VUQ0lSQU5HRSBfSU9XKCdhJyxBVE1JT0NfSVRGKzExLHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBBVE1fU0VURVNJIF9JT1coJ2EnLEFUTUlPQ19JVEYrMTIsc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9ERUxBRERSIF9JT1coJ2EnLCBBVE1JT0NfSVRGICsgOSwgc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9HRVRDSVJBTkdFIF9JT1coJ2EnLCBBVE1JT0NfSVRGICsgMTAsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBBVE1fU0VUQ0lSQU5HRSBfSU9XKCdhJywgQVRNSU9DX0lURiArIDExLCBzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgQVRNX1NFVEVTSSBfSU9XKCdhJywgQVRNSU9DX0lURiArIDEyLCBzdHJ1Y3QgYXRtaWZfc2lvYykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFUTV9TRVRFU0lGIF9JT1coJ2EnLEFUTUlPQ19JVEYrMTMsc3RydWN0IGF0bWlmX3Npb2MpCi0jZGVmaW5lIEFUTV9BRERMRUNTQUREUiBfSU9XKCdhJywgQVRNSU9DX0lURisxNCwgc3RydWN0IGF0bWlmX3Npb2MpCi0jZGVmaW5lIEFUTV9ERUxMRUNTQUREUiBfSU9XKCdhJywgQVRNSU9DX0lURisxNSwgc3RydWN0IGF0bWlmX3Npb2MpCi0jZGVmaW5lIEFUTV9HRVRMRUNTQUREUiBfSU9XKCdhJywgQVRNSU9DX0lURisxNiwgc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9TRVRFU0lGIF9JT1coJ2EnLCBBVE1JT0NfSVRGICsgMTMsIHN0cnVjdCBhdG1pZl9zaW9jKQorI2RlZmluZSBBVE1fQURETEVDU0FERFIgX0lPVygnYScsIEFUTUlPQ19JVEYgKyAxNCwgc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9ERUxMRUNTQUREUiBfSU9XKCdhJywgQVRNSU9DX0lURiArIDE1LCBzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgQVRNX0dFVExFQ1NBRERSIF9JT1coJ2EnLCBBVE1JT0NfSVRGICsgMTYsIHN0cnVjdCBhdG1pZl9zaW9jKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVRNX0dFVFNUQVQgX0lPVygnYScsQVRNSU9DX1NBUkNPTSswLHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBBVE1fR0VUU1RBVFogX0lPVygnYScsQVRNSU9DX1NBUkNPTSsxLHN0cnVjdCBhdG1pZl9zaW9jKQotI2RlZmluZSBBVE1fR0VUTE9PUCBfSU9XKCdhJyxBVE1JT0NfU0FSQ09NKzIsc3RydWN0IGF0bWlmX3Npb2MpCi0jZGVmaW5lIEFUTV9TRVRMT09QIF9JT1coJ2EnLEFUTUlPQ19TQVJDT00rMyxzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgQVRNX0dFVFNUQVQgX0lPVygnYScsIEFUTUlPQ19TQVJDT00gKyAwLCBzdHJ1Y3QgYXRtaWZfc2lvYykKKyNkZWZpbmUgQVRNX0dFVFNUQVRaIF9JT1coJ2EnLCBBVE1JT0NfU0FSQ09NICsgMSwgc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9HRVRMT09QIF9JT1coJ2EnLCBBVE1JT0NfU0FSQ09NICsgMiwgc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9TRVRMT09QIF9JT1coJ2EnLCBBVE1JT0NfU0FSQ09NICsgMywgc3RydWN0IGF0bWlmX3Npb2MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBVE1fUVVFUllMT09QIF9JT1coJ2EnLEFUTUlPQ19TQVJDT00rNCxzdHJ1Y3QgYXRtaWZfc2lvYykKLSNkZWZpbmUgQVRNX1NFVFNDIF9JT1coJ2EnLEFUTUlPQ19TUEVDSUFMKzEsaW50KQotI2RlZmluZSBBVE1fU0VUQkFDS0VORCBfSU9XKCdhJyxBVE1JT0NfU1BFQ0lBTCsyLGF0bV9iYWNrZW5kX3QpCi0jZGVmaW5lIEFUTV9ORVdCQUNLRU5ESUYgX0lPVygnYScsQVRNSU9DX1NQRUNJQUwrMyxhdG1fYmFja2VuZF90KQorI2RlZmluZSBBVE1fUVVFUllMT09QIF9JT1coJ2EnLCBBVE1JT0NfU0FSQ09NICsgNCwgc3RydWN0IGF0bWlmX3Npb2MpCisjZGVmaW5lIEFUTV9TRVRTQyBfSU9XKCdhJywgQVRNSU9DX1NQRUNJQUwgKyAxLCBpbnQpCisjZGVmaW5lIEFUTV9TRVRCQUNLRU5EIF9JT1coJ2EnLCBBVE1JT0NfU1BFQ0lBTCArIDIsIGF0bV9iYWNrZW5kX3QpCisjZGVmaW5lIEFUTV9ORVdCQUNLRU5ESUYgX0lPVygnYScsIEFUTUlPQ19TUEVDSUFMICsgMywgYXRtX2JhY2tlbmRfdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFUTV9BRERQQVJUWSBfSU9XKCdhJywgQVRNSU9DX1NQRUNJQUwrNCxzdHJ1Y3QgYXRtX2lvYnVmKQotI2RlZmluZSBBVE1fRFJPUFBBUlRZIF9JT1coJ2EnLCBBVE1JT0NfU1BFQ0lBTCs1LGludCkKKyNkZWZpbmUgQVRNX0FERFBBUlRZIF9JT1coJ2EnLCBBVE1JT0NfU1BFQ0lBTCArIDQsIHN0cnVjdCBhdG1faW9idWYpCisjZGVmaW5lIEFUTV9EUk9QUEFSVFkgX0lPVygnYScsIEFUTUlPQ19TUEVDSUFMICsgNSwgaW50KQogI2RlZmluZSBBVE1fQkFDS0VORF9SQVcgMAogI2RlZmluZSBBVE1fQkFDS0VORF9QUFAgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTEwMiwxNCArMTAyLDE0IEBACiAjZGVmaW5lIEFUTV9MTV9STVRfQU5BTE9HIF9fQVRNX0xNX01LUk1UKF9fQVRNX0xNX0FOQUxPRykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYXRtX2lvYnVmIHsKLSBpbnQgbGVuZ3RoOwotIHZvaWQgX191c2VyICpidWZmZXI7CisgIGludCBsZW5ndGg7CisgIHZvaWQgX191c2VyICogYnVmZmVyOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFUTV9DSV9NQVggLTEKKyNkZWZpbmUgQVRNX0NJX01BWCAtIDEKIHN0cnVjdCBhdG1fY2lyYW5nZSB7Ci0gc2lnbmVkIGNoYXIgdnBpX2JpdHM7Ci0gc2lnbmVkIGNoYXIgdmNpX2JpdHM7CisgIHNpZ25lZCBjaGFyIHZwaV9iaXRzOworICBzaWduZWQgY2hhciB2Y2lfYml0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBBVE1fU0NfUlggMTAyNApAQCAtMTIzLDcgKzEyMyw3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVE1fTUZfREVDX1NIUCAxNgogI2RlZmluZSBBVE1fTUZfQldEIDMyCi0jZGVmaW5lIEFUTV9NRl9TRVQgKEFUTV9NRl9JTkNfUlNWIHwgQVRNX01GX0lOQ19TSFAgfCBBVE1fTUZfREVDX1JTViB8ICAgQVRNX01GX0RFQ19TSFAgfCBBVE1fTUZfQldEKQorI2RlZmluZSBBVE1fTUZfU0VUIChBVE1fTUZfSU5DX1JTViB8IEFUTV9NRl9JTkNfU0hQIHwgQVRNX01GX0RFQ19SU1YgfCBBVE1fTUZfREVDX1NIUCB8IEFUTV9NRl9CV0QpCiAjZGVmaW5lIEFUTV9WU19JRExFIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFUTV9WU19DT05ORUNURUQgMQpAQCAtMTMyLDcgKzEzMiw3IEBACiAjZGVmaW5lIEFUTV9WU19JTlVTRSA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVE1fVlNfQk9VTkQgNQotI2RlZmluZSBBVE1fVlMyVFhUX01BUCAgICJJRExFIiwgIkNPTk5FQ1RFRCIsICJDTE9TSU5HIiwgIkxJU1RFTiIsICJJTlVTRSIsICJCT1VORCIKLSNkZWZpbmUgQVRNX1ZGMlRYVF9NQVAgICAiQUREUiIsICJSRUFEWSIsICJQQVJUSUFMIiwgIlJFR0lTIiwgICAiUkVMRUFTRUQiLCAiSEFTUU9TIiwgIkxJU1RFTiIsICJNRVRBIiwgICAiMjU2IiwgIjUxMiIsICIxMDI0IiwgIjIwNDgiLCAgICJTRVNTSU9OIiwgIkhBU1NBUCIsICJCT1VORCIsICJDTE9TRSIKKyNkZWZpbmUgQVRNX1ZTMlRYVF9NQVAgIklETEUiLCAiQ09OTkVDVEVEIiwgIkNMT1NJTkciLCAiTElTVEVOIiwgIklOVVNFIiwgIkJPVU5EIgorI2RlZmluZSBBVE1fVkYyVFhUX01BUCAiQUREUiIsICJSRUFEWSIsICJQQVJUSUFMIiwgIlJFR0lTIiwgIlJFTEVBU0VEIiwgIkhBU1FPUyIsICJMSVNURU4iLCAiTUVUQSIsICIyNTYiLCAiNTEyIiwgIjEwMjQiLCAiMjA0OCIsICJTRVNTSU9OIiwgIkhBU1NBUCIsICJCT1VORCIsICJDTE9TRSIKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtbGVjLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bWxlYy5oCmluZGV4IDc2ZTEwYmEuLmE0NGQ0N2EgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtbGVjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1sZWMuaApAQCAtMjYsNzggKzI2LDc4IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNkZWZpbmUgQVRNTEVDX0NUUkwgX0lPKCdhJywgQVRNSU9DX0xBTkUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBVE1MRUNfREFUQSBfSU8oJ2EnLCBBVE1JT0NfTEFORSsxKQotI2RlZmluZSBBVE1MRUNfTUNBU1QgX0lPKCdhJywgQVRNSU9DX0xBTkUrMikKKyNkZWZpbmUgQVRNTEVDX0RBVEEgX0lPKCdhJywgQVRNSU9DX0xBTkUgKyAxKQorI2RlZmluZSBBVE1MRUNfTUNBU1QgX0lPKCdhJywgQVRNSU9DX0xBTkUgKyAyKQogI2RlZmluZSBNQVhfTEVDX0lURiA0OAogdHlwZWRlZiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbF9zZXRfbWFjX2FkZHIsCi0gbF9kZWxfbWFjX2FkZHIsCi0gbF9zdmNfc2V0dXAsCi0gbF9hZGRyX2RlbGV0ZSwKKyAgbF9zZXRfbWFjX2FkZHIsCisgIGxfZGVsX21hY19hZGRyLAorICBsX3N2Y19zZXR1cCwKKyAgbF9hZGRyX2RlbGV0ZSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbF90b3BvbG9neV9jaGFuZ2UsCi0gbF9mbHVzaF9jb21wbGV0ZSwKLSBsX2FycF91cGRhdGUsCi0gbF9uYXJwX3JlcSwKKyAgbF90b3BvbG9neV9jaGFuZ2UsCisgIGxfZmx1c2hfY29tcGxldGUsCisgIGxfYXJwX3VwZGF0ZSwKKyAgbF9uYXJwX3JlcSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbF9jb25maWcsCi0gbF9mbHVzaF90cmFuX2lkLAotIGxfc2V0X2xlY2lkLAotIGxfYXJwX3htdCwKKyAgbF9jb25maWcsCisgIGxfZmx1c2hfdHJhbl9pZCwKKyAgbF9zZXRfbGVjaWQsCisgIGxfYXJwX3htdCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbF9yZGVzY19hcnBfeG10LAotIGxfYXNzb2NpYXRlX3JlcSwKLSBsX3Nob3VsZF9icmlkZ2UKKyAgbF9yZGVzY19hcnBfeG10LAorICBsX2Fzc29jaWF0ZV9yZXEsCisgIGxfc2hvdWxkX2JyaWRnZQogfSBhdG1sZWNfbXNnX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVE1MRUNfTVNHX1RZUEVfTUFYIGxfc2hvdWxkX2JyaWRnZQogc3RydWN0IGF0bWxlY19jb25maWdfbXNnIHsKLSB1bnNpZ25lZCBpbnQgbWF4aW11bV91bmtub3duX2ZyYW1lX2NvdW50OwotIHVuc2lnbmVkIGludCBtYXhfdW5rbm93bl9mcmFtZV90aW1lOworICB1bnNpZ25lZCBpbnQgbWF4aW11bV91bmtub3duX2ZyYW1lX2NvdW50OworICB1bnNpZ25lZCBpbnQgbWF4X3Vua25vd25fZnJhbWVfdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgbWF4X3JldHJ5X2NvdW50OwotIHVuc2lnbmVkIGludCBhZ2luZ190aW1lOwotIHVuc2lnbmVkIGludCBmb3J3YXJkX2RlbGF5X3RpbWU7Ci0gdW5zaWduZWQgaW50IGFycF9yZXNwb25zZV90aW1lOworICB1bnNpZ25lZCBzaG9ydCBtYXhfcmV0cnlfY291bnQ7CisgIHVuc2lnbmVkIGludCBhZ2luZ190aW1lOworICB1bnNpZ25lZCBpbnQgZm9yd2FyZF9kZWxheV90aW1lOworICB1bnNpZ25lZCBpbnQgYXJwX3Jlc3BvbnNlX3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBmbHVzaF90aW1lb3V0OwotIHVuc2lnbmVkIGludCBwYXRoX3N3aXRjaGluZ19kZWxheTsKLSB1bnNpZ25lZCBpbnQgbGFuZV92ZXJzaW9uOwotIGludCBtdHU7CisgIHVuc2lnbmVkIGludCBmbHVzaF90aW1lb3V0OworICB1bnNpZ25lZCBpbnQgcGF0aF9zd2l0Y2hpbmdfZGVsYXk7CisgIHVuc2lnbmVkIGludCBsYW5lX3ZlcnNpb247CisgIGludCBtdHU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBpc19wcm94eTsKKyAgaW50IGlzX3Byb3h5OwogfTsKIHN0cnVjdCBhdG1sZWNfbXNnIHsKLSBhdG1sZWNfbXNnX3R5cGUgdHlwZTsKKyAgYXRtbGVjX21zZ190eXBlIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzaXplb2Z0bHZzOwotIHVuaW9uIHsKLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgbWFjX2FkZHJbRVRIX0FMRU5dOworICBpbnQgc2l6ZW9mdGx2czsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICB1bnNpZ25lZCBjaGFyIG1hY19hZGRyW0VUSF9BTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBhdG1fYWRkcltBVE1fRVNBX0xFTl07Ci0gdW5zaWduZWQgaW50IGZsYWc7Ci0gdW5zaWduZWQgaW50IHRhcmdldGxlc3NfbGVfYXJwOwotIHVuc2lnbmVkIGludCBub19zb3VyY2VfbGVfbmFycDsKKyAgICAgIHVuc2lnbmVkIGNoYXIgYXRtX2FkZHJbQVRNX0VTQV9MRU5dOworICAgICAgdW5zaWduZWQgaW50IGZsYWc7CisgICAgICB1bnNpZ25lZCBpbnQgdGFyZ2V0bGVzc19sZV9hcnA7CisgICAgICB1bnNpZ25lZCBpbnQgbm9fc291cmNlX2xlX25hcnA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gbm9ybWFsOwotIHN0cnVjdCBhdG1sZWNfY29uZmlnX21zZyBjb25maWc7Ci0gc3RydWN0IHsKLSBfX3UxNiBsZWNfaWQ7CisgICAgfSBub3JtYWw7CisgICAgc3RydWN0IGF0bWxlY19jb25maWdfbXNnIGNvbmZpZzsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MTYgbGVjX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0cmFuX2lkOwotIHVuc2lnbmVkIGNoYXIgbWFjX2FkZHJbRVRIX0FMRU5dOwotIHVuc2lnbmVkIGNoYXIgYXRtX2FkZHJbQVRNX0VTQV9MRU5dOwotIH0gcHJveHk7CisgICAgICBfX3UzMiB0cmFuX2lkOworICAgICAgdW5zaWduZWQgY2hhciBtYWNfYWRkcltFVEhfQUxFTl07CisgICAgICB1bnNpZ25lZCBjaGFyIGF0bV9hZGRyW0FUTV9FU0FfTEVOXTsKKyAgICB9IHByb3h5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGNvbnRlbnQ7CisgIH0gY29udGVudDsKIH0gX19BVE1fQVBJX0FMSUdOOwogc3RydWN0IGF0bWxlY19pb2MgewotIGludCBkZXZfbnVtOworICBpbnQgZGV2X251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBhdG1fYWRkcltBVE1fRVNBX0xFTl07Ci0gdW5zaWduZWQgY2hhciByZWNlaXZlOworICB1bnNpZ25lZCBjaGFyIGF0bV9hZGRyW0FUTV9FU0FfTEVOXTsKKyAgdW5zaWduZWQgY2hhciByZWNlaXZlOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtbXBjLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bW1wYy5oCmluZGV4IGE5NDYwMzAuLjdmZTYwYmQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtbXBjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1tcGMuaApAQCAtMjQsNzEgKzI0LDcxIEBACiAjaW5jbHVkZSA8bGludXgvYXRtLmg+CiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNkZWZpbmUgQVRNTVBDX0NUUkwgX0lPKCdhJywgQVRNSU9DX01QT0EpCi0jZGVmaW5lIEFUTU1QQ19EQVRBIF9JTygnYScsIEFUTUlPQ19NUE9BKzEpCisjZGVmaW5lIEFUTU1QQ19EQVRBIF9JTygnYScsIEFUTUlPQ19NUE9BICsgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1QQ19TT0NLRVRfSU5HUkVTUyAxCiAjZGVmaW5lIE1QQ19TT0NLRVRfRUdSRVNTIDIKIHN0cnVjdCBhdG1tcGNfaW9jIHsKLSBpbnQgZGV2X251bTsKKyAgaW50IGRldl9udW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBpcGFkZHI7Ci0gaW50IHR5cGU7CisgIF9fYmUzMiBpcGFkZHI7CisgIGludCB0eXBlOwogfTsKIHR5cGVkZWYgc3RydWN0IGluX2N0cmxfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggTGFzdF9OSFJQX0NJRV9jb2RlOwotIF9fdTggTGFzdF9RMjkzMV9jYXVzZV92YWx1ZTsKLSBfX3U4IGVnX01QQ19BVE1fYWRkcltBVE1fRVNBX0xFTl07Ci0gX19iZTMyIHRhZzsKKyAgX191OCBMYXN0X05IUlBfQ0lFX2NvZGU7CisgIF9fdTggTGFzdF9RMjkzMV9jYXVzZV92YWx1ZTsKKyAgX191OCBlZ19NUENfQVRNX2FkZHJbQVRNX0VTQV9MRU5dOworICBfX2JlMzIgdGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgaW5fZHN0X2lwOwotIF9fdTE2IGhvbGRpbmdfdGltZTsKLSBfX3UzMiByZXF1ZXN0X2lkOworICBfX2JlMzIgaW5fZHN0X2lwOworICBfX3UxNiBob2xkaW5nX3RpbWU7CisgIF9fdTMyIHJlcXVlc3RfaWQ7CiB9IGluX2N0cmxfaW5mbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBlZ19jdHJsX2luZm8gewotIF9fdTggRExMX2hlYWRlclsyNTZdOwotIF9fdTggREhfbGVuZ3RoOwotIF9fYmUzMiBjYWNoZV9pZDsKKyAgX191OCBETExfaGVhZGVyWzI1Nl07CisgIF9fdTggREhfbGVuZ3RoOworICBfX2JlMzIgY2FjaGVfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiB0YWc7Ci0gX19iZTMyIG1wc19pcDsKLSBfX2JlMzIgZWdfZHN0X2lwOwotIF9fdTggaW5fTVBDX2RhdGFfQVRNX2FkZHJbQVRNX0VTQV9MRU5dOworICBfX2JlMzIgdGFnOworICBfX2JlMzIgbXBzX2lwOworICBfX2JlMzIgZWdfZHN0X2lwOworICBfX3U4IGluX01QQ19kYXRhX0FUTV9hZGRyW0FUTV9FU0FfTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgaG9sZGluZ190aW1lOworICBfX3UxNiBob2xkaW5nX3RpbWU7CiB9IGVnX2N0cmxfaW5mbzsKIHN0cnVjdCBtcGNfcGFyYW1ldGVycyB7Ci0gX191MTYgbXBjX3AxOworICBfX3UxNiBtcGNfcDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG1wY19wMjsKLSBfX3U4IG1wY19wM1s4XTsKLSBfX3UxNiBtcGNfcDQ7Ci0gX191MTYgbXBjX3A1OworICBfX3UxNiBtcGNfcDI7CisgIF9fdTggbXBjX3AzWzhdOworICBfX3UxNiBtcGNfcDQ7CisgIF9fdTE2IG1wY19wNTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbXBjX3A2OwotfSA7CisgIF9fdTE2IG1wY19wNjsKK307CiBzdHJ1Y3Qga19tZXNzYWdlIHsKLSBfX3UxNiB0eXBlOworICBfX3UxNiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgaXBfbWFzazsKLSBfX3U4IE1QU19jdHJsW0FUTV9FU0FfTEVOXTsKLSB1bmlvbiB7Ci0gaW5fY3RybF9pbmZvIGluX2luZm87CisgIF9fYmUzMiBpcF9tYXNrOworICBfX3U4IE1QU19jdHJsW0FUTV9FU0FfTEVOXTsKKyAgdW5pb24geworICAgIGluX2N0cmxfaW5mbyBpbl9pbmZvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBlZ19jdHJsX2luZm8gZWdfaW5mbzsKLSBzdHJ1Y3QgbXBjX3BhcmFtZXRlcnMgcGFyYW1zOwotIH0gY29udGVudDsKLSBzdHJ1Y3QgYXRtX3FvcyBxb3M7CisgICAgZWdfY3RybF9pbmZvIGVnX2luZm87CisgICAgc3RydWN0IG1wY19wYXJhbWV0ZXJzIHBhcmFtczsKKyAgfSBjb250ZW50OworICBzdHJ1Y3QgYXRtX3FvcyBxb3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX0FUTV9BUElfQUxJR047CiBzdHJ1Y3QgbGxjX3NuYXBfaGRyIHsKLSBfX3U4IGRzYXA7Ci0gX191OCBzc2FwOworICBfX3U4IGRzYXA7CisgIF9fdTggc3NhcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB1aTsKLSBfX3U4IG9yZ1szXTsKLSBfX3U4IHR5cGVbMl07CisgIF9fdTggdWk7CisgIF9fdTggb3JnWzNdOworICBfX3U4IHR5cGVbMl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVExWX01QT0FfREVWSUNFX1RZUEUgMHgwMGEwM2UyYQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1wcHAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtcHBwLmgKaW5kZXggOThlMmUzMS4uNjMzOWQ1YiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1wcHAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bXBwcC5oCkBAIC0yNCw4ICsyNCw4IEBACiAjZGVmaW5lIFBQUE9BVE1fRU5DQVBTX1ZDICgxKQogI2RlZmluZSBQUFBPQVRNX0VOQ0FQU19MTEMgKDIpCiBzdHJ1Y3QgYXRtX2JhY2tlbmRfcHBwIHsKLSBhdG1fYmFja2VuZF90IGJhY2tlbmRfbnVtOworICBhdG1fYmFja2VuZF90IGJhY2tlbmRfbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZW5jYXBzOworICBpbnQgZW5jYXBzOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1zYXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtc2FwLmgKaW5kZXggODVlODAyMC4uN2RjYzI3MyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1zYXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bXNhcC5oCkBAIC03NCw1MSArNzQsNTEgQEAKICNkZWZpbmUgQVRNX01DX0gyMjEgNQogI2RlZmluZSBBVE1fTUFYX0hMSSA4CiBzdHJ1Y3QgYXRtX2JsbGkgewotIHVuc2lnbmVkIGNoYXIgbDJfcHJvdG87CisgIHVuc2lnbmVkIGNoYXIgbDJfcHJvdG87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgbW9kZTsKLSB1bnNpZ25lZCBjaGFyIHdpbmRvdzsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICB1bnNpZ25lZCBjaGFyIG1vZGU7CisgICAgICB1bnNpZ25lZCBjaGFyIHdpbmRvdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBpdHU7Ci0gdW5zaWduZWQgY2hhciB1c2VyOwotIH0gbDI7Ci0gdW5zaWduZWQgY2hhciBsM19wcm90bzsKKyAgICB9IGl0dTsKKyAgICB1bnNpZ25lZCBjaGFyIHVzZXI7CisgIH0gbDI7CisgIHVuc2lnbmVkIGNoYXIgbDNfcHJvdG87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgbW9kZTsKLSB1bnNpZ25lZCBjaGFyIGRlZl9zaXplOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIHVuc2lnbmVkIGNoYXIgbW9kZTsKKyAgICAgIHVuc2lnbmVkIGNoYXIgZGVmX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgd2luZG93OwotIH0gaXR1OwotIHVuc2lnbmVkIGNoYXIgdXNlcjsKLSBzdHJ1Y3QgeworICAgICAgdW5zaWduZWQgY2hhciB3aW5kb3c7CisgICAgfSBpdHU7CisgICAgdW5zaWduZWQgY2hhciB1c2VyOworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgdGVybV90eXBlOwotIHVuc2lnbmVkIGNoYXIgZndfbXB4X2NhcDsKLSB1bnNpZ25lZCBjaGFyIGJ3X21weF9jYXA7Ci0gfSBoMzEwOworICAgICAgdW5zaWduZWQgY2hhciB0ZXJtX3R5cGU7CisgICAgICB1bnNpZ25lZCBjaGFyIGZ3X21weF9jYXA7CisgICAgICB1bnNpZ25lZCBjaGFyIGJ3X21weF9jYXA7CisgICAgfSBoMzEwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGNoYXIgaXBpOwotIHVuc2lnbmVkIGNoYXIgc25hcFs1XTsKLSB9IHRyOTU3NzsKKyAgICBzdHJ1Y3QgeworICAgICAgdW5zaWduZWQgY2hhciBpcGk7CisgICAgICB1bnNpZ25lZCBjaGFyIHNuYXBbNV07CisgICAgfSB0cjk1Nzc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gbDM7CisgIH0gbDM7CiB9IF9fQVRNX0FQSV9BTElHTjsKIHN0cnVjdCBhdG1fYmhsaSB7Ci0gdW5zaWduZWQgY2hhciBobF90eXBlOworICB1bnNpZ25lZCBjaGFyIGhsX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgaGxfbGVuZ3RoOwotIHVuc2lnbmVkIGNoYXIgaGxfaW5mb1tBVE1fTUFYX0hMSV07CisgIHVuc2lnbmVkIGNoYXIgaGxfbGVuZ3RoOworICB1bnNpZ25lZCBjaGFyIGhsX2luZm9bQVRNX01BWF9ITEldOwogfTsKICNkZWZpbmUgQVRNX01BWF9CTExJIDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYXRtX3NhcCB7Ci0gc3RydWN0IGF0bV9iaGxpIGJobGk7Ci0gc3RydWN0IGF0bV9ibGxpIGJsbGlbQVRNX01BWF9CTExJXSBfX0FUTV9BUElfQUxJR047CisgIHN0cnVjdCBhdG1fYmhsaSBiaGxpOworICBzdHJ1Y3QgYXRtX2JsbGkgYmxsaVtBVE1fTUFYX0JMTEldIF9fQVRNX0FQSV9BTElHTjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bXN2Yy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdG1zdmMuaAppbmRleCAyODU5NzdjLi4yZGYwODcwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F0bXN2Yy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXRtc3ZjLmgKQEAgLTIyLDI3ICsyMiw0NCBAQAogI2luY2x1ZGUgPGxpbnV4L2F0bS5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxsaW51eC9hdG1pb2MuaD4KLSNkZWZpbmUgQVRNU0lHRF9DVFJMIF9JTygnYScsQVRNSU9DX1NQRUNJQUwpCi1lbnVtIGF0bXN2Y19tc2dfdHlwZSB7IGFzX2NhdGNoX251bGwsIGFzX2JpbmQsIGFzX2Nvbm5lY3QsIGFzX2FjY2VwdCwgYXNfcmVqZWN0LAotIGFzX2xpc3RlbiwgYXNfb2theSwgYXNfZXJyb3IsIGFzX2luZGljYXRlLCBhc19jbG9zZSwKKyNkZWZpbmUgQVRNU0lHRF9DVFJMIF9JTygnYScsIEFUTUlPQ19TUEVDSUFMKQorZW51bSBhdG1zdmNfbXNnX3R5cGUgeworICBhc19jYXRjaF9udWxsLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBhc19pdGZfbm90aWZ5LCBhc19tb2RpZnksIGFzX2lkZW50aWZ5LCBhc190ZXJtaW5hdGUsCi0gYXNfYWRkcGFydHksIGFzX2Ryb3BwYXJ0eSB9OworICBhc19iaW5kLAorICBhc19jb25uZWN0LAorICBhc19hY2NlcHQsCisgIGFzX3JlamVjdCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGFzX2xpc3RlbiwKKyAgYXNfb2theSwKKyAgYXNfZXJyb3IsCisgIGFzX2luZGljYXRlLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgYXNfY2xvc2UsCisgIGFzX2l0Zl9ub3RpZnksCisgIGFzX21vZGlmeSwKKyAgYXNfaWRlbnRpZnksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBhc190ZXJtaW5hdGUsCisgIGFzX2FkZHBhcnR5LAorICBhc19kcm9wcGFydHkKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGF0bXN2Y19tc2cgewotIGVudW0gYXRtc3ZjX21zZ190eXBlIHR5cGU7CisgIGVudW0gYXRtc3ZjX21zZ190eXBlIHR5cGU7CisgIGF0bV9rcHRyX3QgdmNjOworICBhdG1fa3B0cl90IGxpc3Rlbl92Y2M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGF0bV9rcHRyX3QgdmNjOwotIGF0bV9rcHRyX3QgbGlzdGVuX3ZjYzsKLSBpbnQgcmVwbHk7Ci0gc3RydWN0IHNvY2thZGRyX2F0bXB2YyBwdmM7CisgIGludCByZXBseTsKKyAgc3RydWN0IHNvY2thZGRyX2F0bXB2YyBwdmM7CisgIHN0cnVjdCBzb2NrYWRkcl9hdG1zdmMgbG9jYWw7CisgIHN0cnVjdCBhdG1fcW9zIHFvczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNvY2thZGRyX2F0bXN2YyBsb2NhbDsKLSBzdHJ1Y3QgYXRtX3FvcyBxb3M7Ci0gc3RydWN0IGF0bV9zYXAgc2FwOwotIHVuc2lnbmVkIGludCBzZXNzaW9uOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHJfYXRtc3ZjIHN2YzsKKyAgc3RydWN0IGF0bV9zYXAgc2FwOworICB1bnNpZ25lZCBpbnQgc2Vzc2lvbjsKKyAgc3RydWN0IHNvY2thZGRyX2F0bXN2YyBzdmM7CiB9IF9fQVRNX0FQSV9BTElHTjsKLSNkZWZpbmUgU0VMRUNUX1RPUF9QQ1IodHApICgodHApLnBjciA/ICh0cCkucGNyIDogICAodHApLm1heF9wY3IgJiYgKHRwKS5tYXhfcGNyICE9IEFUTV9NQVhfUENSID8gKHRwKS5tYXhfcGNyIDogICAodHApLm1pbl9wY3IgPyAodHApLm1pbl9wY3IgOiBBVE1fTUFYX1BDUikKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0VMRUNUX1RPUF9QQ1IodHApICgodHApLnBjciA/ICh0cCkucGNyIDogKHRwKS5tYXhfcGNyICYmICh0cCkubWF4X3BjciAhPSBBVE1fTUFYX1BDUiA/ICh0cCkubWF4X3BjciA6ICh0cCkubWluX3BjciA/ICh0cCkubWluX3BjciA6IEFUTV9NQVhfUENSKQorI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F1ZGl0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F1ZGl0LmgKaW5kZXggYjUwNjUxMi4uZGE2Yzc0NiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdWRpdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXVkaXQuaApAQCAtNDYsMjg0ICs0NiwyOTQgQEAKICNkZWZpbmUgQVVESVRfU0VUX0ZFQVRVUkUgMTAxOAogI2RlZmluZSBBVURJVF9HRVRfRkVBVFVSRSAxMDE5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBVURJVF9GRUFUVVJFX0NIQU5HRSAxMDIwCiAjZGVmaW5lIEFVRElUX0ZJUlNUX1VTRVJfTVNHIDExMDAKICNkZWZpbmUgQVVESVRfVVNFUl9BVkMgMTEwNwogI2RlZmluZSBBVURJVF9VU0VSX1RUWSAxMTI0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9MQVNUX1VTRVJfTVNHIDExOTkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX0ZJUlNUX1VTRVJfTVNHMiAyMTAwCiAjZGVmaW5lIEFVRElUX0xBU1RfVVNFUl9NU0cyIDI5OTkKICNkZWZpbmUgQVVESVRfREFFTU9OX1NUQVJUIDEyMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX0RBRU1PTl9FTkQgMTIwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfREFFTU9OX0FCT1JUIDEyMDIKICNkZWZpbmUgQVVESVRfREFFTU9OX0NPTkZJRyAxMjAzCiAjZGVmaW5lIEFVRElUX1NZU0NBTEwgMTMwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfUEFUSCAxMzAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9JUEMgMTMwMwogI2RlZmluZSBBVURJVF9TT0NLRVRDQUxMIDEzMDQKICNkZWZpbmUgQVVESVRfQ09ORklHX0NIQU5HRSAxMzA1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9TT0NLQUREUiAxMzA2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9DV0QgMTMwNwogI2RlZmluZSBBVURJVF9FWEVDVkUgMTMwOQogI2RlZmluZSBBVURJVF9JUENfU0VUX1BFUk0gMTMxMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfTVFfT1BFTiAxMzEyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9NUV9TRU5EUkVDViAxMzEzCiAjZGVmaW5lIEFVRElUX01RX05PVElGWSAxMzE0CiAjZGVmaW5lIEFVRElUX01RX0dFVFNFVEFUVFIgMTMxNQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfS0VSTkVMX09USEVSIDEzMTYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX0ZEX1BBSVIgMTMxNwogI2RlZmluZSBBVURJVF9PQkpfUElEIDEzMTgKICNkZWZpbmUgQVVESVRfVFRZIDEzMTkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX0VPRSAxMzIwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9CUFJNX0ZDQVBTIDEzMjEKICNkZWZpbmUgQVVESVRfQ0FQU0VUIDEzMjIKICNkZWZpbmUgQVVESVRfTU1BUCAxMzIzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9ORVRGSUxURVJfUEtUIDEzMjQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElUX05FVEZJTFRFUl9DRkcgMTMyNQogI2RlZmluZSBBVURJVF9TRUNDT01QIDEzMjYKLSNkZWZpbmUgQVVESVRfQVZDIDE0MDAKKyNkZWZpbmUgQVVESVRfUFJPQ1RJVExFIDEzMjcKKyNkZWZpbmUgQVVESVRfRkVBVFVSRV9DSEFOR0UgMTMyOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfQVZDIDE0MDAKICNkZWZpbmUgQVVESVRfU0VMSU5VWF9FUlIgMTQwMQogI2RlZmluZSBBVURJVF9BVkNfUEFUSCAxNDAyCiAjZGVmaW5lIEFVRElUX01BQ19QT0xJQ1lfTE9BRCAxNDAzCi0jZGVmaW5lIEFVRElUX01BQ19TVEFUVVMgMTQwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfTUFDX1NUQVRVUyAxNDA0CiAjZGVmaW5lIEFVRElUX01BQ19DT05GSUdfQ0hBTkdFIDE0MDUKICNkZWZpbmUgQVVESVRfTUFDX1VOTEJMX0FMTE9XIDE0MDYKICNkZWZpbmUgQVVESVRfTUFDX0NJUFNPVjRfQUREIDE0MDcKLSNkZWZpbmUgQVVESVRfTUFDX0NJUFNPVjRfREVMIDE0MDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX01BQ19DSVBTT1Y0X0RFTCAxNDA4CiAjZGVmaW5lIEFVRElUX01BQ19NQVBfQUREIDE0MDkKICNkZWZpbmUgQVVESVRfTUFDX01BUF9ERUwgMTQxMAogI2RlZmluZSBBVURJVF9NQUNfSVBTRUNfQUREU0EgMTQxMQotI2RlZmluZSBBVURJVF9NQUNfSVBTRUNfREVMU0EgMTQxMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfTUFDX0lQU0VDX0RFTFNBIDE0MTIKICNkZWZpbmUgQVVESVRfTUFDX0lQU0VDX0FERFNQRCAxNDEzCiAjZGVmaW5lIEFVRElUX01BQ19JUFNFQ19ERUxTUEQgMTQxNAogI2RlZmluZSBBVURJVF9NQUNfSVBTRUNfRVZFTlQgMTQxNQotI2RlZmluZSBBVURJVF9NQUNfVU5MQkxfU1RDQUREIDE0MTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX01BQ19VTkxCTF9TVENBREQgMTQxNgogI2RlZmluZSBBVURJVF9NQUNfVU5MQkxfU1RDREVMIDE0MTcKICNkZWZpbmUgQVVESVRfRklSU1RfS0VSTl9BTk9NX01TRyAxNzAwCiAjZGVmaW5lIEFVRElUX0xBU1RfS0VSTl9BTk9NX01TRyAxNzk5Ci0jZGVmaW5lIEFVRElUX0FOT01fUFJPTUlTQ1VPVVMgMTcwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfQU5PTV9QUk9NSVNDVU9VUyAxNzAwCiAjZGVmaW5lIEFVRElUX0FOT01fQUJFTkQgMTcwMQogI2RlZmluZSBBVURJVF9BTk9NX0xJTksgMTcwMgogI2RlZmluZSBBVURJVF9JTlRFR1JJVFlfREFUQSAxODAwCi0jZGVmaW5lIEFVRElUX0lOVEVHUklUWV9NRVRBREFUQSAxODAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9JTlRFR1JJVFlfTUVUQURBVEEgMTgwMQogI2RlZmluZSBBVURJVF9JTlRFR1JJVFlfU1RBVFVTIDE4MDIKICNkZWZpbmUgQVVESVRfSU5URUdSSVRZX0hBU0ggMTgwMwogI2RlZmluZSBBVURJVF9JTlRFR1JJVFlfUENSIDE4MDQKLSNkZWZpbmUgQVVESVRfSU5URUdSSVRZX1JVTEUgMTgwNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfSU5URUdSSVRZX1JVTEUgMTgwNQogI2RlZmluZSBBVURJVF9LRVJORUwgMjAwMAogI2RlZmluZSBBVURJVF9GSUxURVJfVVNFUiAweDAwCiAjZGVmaW5lIEFVRElUX0ZJTFRFUl9UQVNLIDB4MDEKLSNkZWZpbmUgQVVESVRfRklMVEVSX0VOVFJZIDB4MDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0ZJTFRFUl9FTlRSWSAweDAyCiAjZGVmaW5lIEFVRElUX0ZJTFRFUl9XQVRDSCAweDAzCiAjZGVmaW5lIEFVRElUX0ZJTFRFUl9FWElUIDB4MDQKICNkZWZpbmUgQVVESVRfRklMVEVSX1RZUEUgMHgwNQotI2RlZmluZSBBVURJVF9OUl9GSUxURVJTIDYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX05SX0ZJTFRFUlMgNgogI2RlZmluZSBBVURJVF9GSUxURVJfUFJFUEVORCAweDEwCiAjZGVmaW5lIEFVRElUX05FVkVSIDAKICNkZWZpbmUgQVVESVRfUE9TU0lCTEUgMQotI2RlZmluZSBBVURJVF9BTFdBWVMgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfQUxXQVlTIDIKICNkZWZpbmUgQVVESVRfTUFYX0ZJRUxEUyA2NAogI2RlZmluZSBBVURJVF9NQVhfS0VZX0xFTiAyNTYKICNkZWZpbmUgQVVESVRfQklUTUFTS19TSVpFIDY0Ci0jZGVmaW5lIEFVRElUX1dPUkQobnIpICgoX191MzIpKChucikvMzIpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVVESVRfQklUKG5yKSAoMSA8PCAoKG5yKSAtIEFVRElUX1dPUkQobnIpKjMyKSkKKyNkZWZpbmUgQVVESVRfV09SRChucikgKChfX3UzMikgKChucikgLyAzMikpCisjZGVmaW5lIEFVRElUX0JJVChucikgKDEgPDwgKChucikgLSBBVURJVF9XT1JEKG5yKSAqIDMyKSkKICNkZWZpbmUgQVVESVRfU1lTQ0FMTF9DTEFTU0VTIDE2CiAjZGVmaW5lIEFVRElUX0NMQVNTX0RJUl9XUklURSAwCi0jZGVmaW5lIEFVRElUX0NMQVNTX0RJUl9XUklURV8zMiAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9DTEFTU19ESVJfV1JJVEVfMzIgMQogI2RlZmluZSBBVURJVF9DTEFTU19DSEFUVFIgMgogI2RlZmluZSBBVURJVF9DTEFTU19DSEFUVFJfMzIgMwogI2RlZmluZSBBVURJVF9DTEFTU19SRUFEIDQKLSNkZWZpbmUgQVVESVRfQ0xBU1NfUkVBRF8zMiA1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9DTEFTU19SRUFEXzMyIDUKICNkZWZpbmUgQVVESVRfQ0xBU1NfV1JJVEUgNgogI2RlZmluZSBBVURJVF9DTEFTU19XUklURV8zMiA3CiAjZGVmaW5lIEFVRElUX0NMQVNTX1NJR05BTCA4Ci0jZGVmaW5lIEFVRElUX0NMQVNTX1NJR05BTF8zMiA5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9DTEFTU19TSUdOQUxfMzIgOQogI2RlZmluZSBBVURJVF9VTlVTRURfQklUUyAweDA3RkZGQzAwCiAjZGVmaW5lIEFVRElUX0NPTVBBUkVfVUlEX1RPX09CSl9VSUQgMQogI2RlZmluZSBBVURJVF9DT01QQVJFX0dJRF9UT19PQkpfR0lEIDIKLSNkZWZpbmUgQVVESVRfQ09NUEFSRV9FVUlEX1RPX09CSl9VSUQgMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfQ09NUEFSRV9FVUlEX1RPX09CSl9VSUQgMwogI2RlZmluZSBBVURJVF9DT01QQVJFX0VHSURfVE9fT0JKX0dJRCA0CiAjZGVmaW5lIEFVRElUX0NPTVBBUkVfQVVJRF9UT19PQkpfVUlEIDUKICNkZWZpbmUgQVVESVRfQ09NUEFSRV9TVUlEX1RPX09CSl9VSUQgNgotI2RlZmluZSBBVURJVF9DT01QQVJFX1NHSURfVE9fT0JKX0dJRCA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9DT01QQVJFX1NHSURfVE9fT0JKX0dJRCA3CiAjZGVmaW5lIEFVRElUX0NPTVBBUkVfRlNVSURfVE9fT0JKX1VJRCA4CiAjZGVmaW5lIEFVRElUX0NPTVBBUkVfRlNHSURfVE9fT0JKX0dJRCA5CiAjZGVmaW5lIEFVRElUX0NPTVBBUkVfVUlEX1RPX0FVSUQgMTAKLSNkZWZpbmUgQVVESVRfQ09NUEFSRV9VSURfVE9fRVVJRCAxMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfQ09NUEFSRV9VSURfVE9fRVVJRCAxMQogI2RlZmluZSBBVURJVF9DT01QQVJFX1VJRF9UT19GU1VJRCAxMgogI2RlZmluZSBBVURJVF9DT01QQVJFX1VJRF9UT19TVUlEIDEzCiAjZGVmaW5lIEFVRElUX0NPTVBBUkVfQVVJRF9UT19GU1VJRCAxNAotI2RlZmluZSBBVURJVF9DT01QQVJFX0FVSURfVE9fU1VJRCAxNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfQ09NUEFSRV9BVUlEX1RPX1NVSUQgMTUKICNkZWZpbmUgQVVESVRfQ09NUEFSRV9BVUlEX1RPX0VVSUQgMTYKICNkZWZpbmUgQVVESVRfQ09NUEFSRV9FVUlEX1RPX1NVSUQgMTcKICNkZWZpbmUgQVVESVRfQ09NUEFSRV9FVUlEX1RPX0ZTVUlEIDE4Ci0jZGVmaW5lIEFVRElUX0NPTVBBUkVfU1VJRF9UT19GU1VJRCAxOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfQ09NUEFSRV9TVUlEX1RPX0ZTVUlEIDE5CiAjZGVmaW5lIEFVRElUX0NPTVBBUkVfR0lEX1RPX0VHSUQgMjAKICNkZWZpbmUgQVVESVRfQ09NUEFSRV9HSURfVE9fRlNHSUQgMjEKICNkZWZpbmUgQVVESVRfQ09NUEFSRV9HSURfVE9fU0dJRCAyMgotI2RlZmluZSBBVURJVF9DT01QQVJFX0VHSURfVE9fRlNHSUQgMjMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0NPTVBBUkVfRUdJRF9UT19GU0dJRCAyMwogI2RlZmluZSBBVURJVF9DT01QQVJFX0VHSURfVE9fU0dJRCAyNAogI2RlZmluZSBBVURJVF9DT01QQVJFX1NHSURfVE9fRlNHSUQgMjUKICNkZWZpbmUgQVVESVRfTUFYX0ZJRUxEX0NPTVBBUkUgQVVESVRfQ09NUEFSRV9TR0lEX1RPX0ZTR0lECi0jZGVmaW5lIEFVRElUX1BJRCAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9QSUQgMAogI2RlZmluZSBBVURJVF9VSUQgMQogI2RlZmluZSBBVURJVF9FVUlEIDIKICNkZWZpbmUgQVVESVRfU1VJRCAzCi0jZGVmaW5lIEFVRElUX0ZTVUlEIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0ZTVUlEIDQKICNkZWZpbmUgQVVESVRfR0lEIDUKICNkZWZpbmUgQVVESVRfRUdJRCA2CiAjZGVmaW5lIEFVRElUX1NHSUQgNwotI2RlZmluZSBBVURJVF9GU0dJRCA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBVURJVF9GU0dJRCA4CiAjZGVmaW5lIEFVRElUX0xPR0lOVUlEIDkKICNkZWZpbmUgQVVESVRfUEVSUyAxMAogI2RlZmluZSBBVURJVF9BUkNIIDExCi0jZGVmaW5lIEFVRElUX01TR1RZUEUgMTIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX01TR1RZUEUgMTIKICNkZWZpbmUgQVVESVRfU1VCSl9VU0VSIDEzCiAjZGVmaW5lIEFVRElUX1NVQkpfUk9MRSAxNAogI2RlZmluZSBBVURJVF9TVUJKX1RZUEUgMTUKLSNkZWZpbmUgQVVESVRfU1VCSl9TRU4gMTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX1NVQkpfU0VOIDE2CiAjZGVmaW5lIEFVRElUX1NVQkpfQ0xSIDE3CiAjZGVmaW5lIEFVRElUX1BQSUQgMTgKICNkZWZpbmUgQVVESVRfT0JKX1VTRVIgMTkKLSNkZWZpbmUgQVVESVRfT0JKX1JPTEUgMjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX09CSl9ST0xFIDIwCiAjZGVmaW5lIEFVRElUX09CSl9UWVBFIDIxCiAjZGVmaW5lIEFVRElUX09CSl9MRVZfTE9XIDIyCiAjZGVmaW5lIEFVRElUX09CSl9MRVZfSElHSCAyMwotI2RlZmluZSBBVURJVF9MT0dJTlVJRF9TRVQgMjQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0xPR0lOVUlEX1NFVCAyNAogI2RlZmluZSBBVURJVF9ERVZNQUpPUiAxMDAKICNkZWZpbmUgQVVESVRfREVWTUlOT1IgMTAxCiAjZGVmaW5lIEFVRElUX0lOT0RFIDEwMgotI2RlZmluZSBBVURJVF9FWElUIDEwMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfRVhJVCAxMDMKICNkZWZpbmUgQVVESVRfU1VDQ0VTUyAxMDQKICNkZWZpbmUgQVVESVRfV0FUQ0ggMTA1CiAjZGVmaW5lIEFVRElUX1BFUk0gMTA2Ci0jZGVmaW5lIEFVRElUX0RJUiAxMDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0RJUiAxMDcKICNkZWZpbmUgQVVESVRfRklMRVRZUEUgMTA4CiAjZGVmaW5lIEFVRElUX09CSl9VSUQgMTA5CiAjZGVmaW5lIEFVRElUX09CSl9HSUQgMTEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9GSUVMRF9DT01QQVJFIDExMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfQVJHMCAyMDAKLSNkZWZpbmUgQVVESVRfQVJHMSAoQVVESVRfQVJHMCsxKQotI2RlZmluZSBBVURJVF9BUkcyIChBVURJVF9BUkcwKzIpCi0jZGVmaW5lIEFVRElUX0FSRzMgKEFVRElUX0FSRzArMykKKyNkZWZpbmUgQVVESVRfQVJHMSAoQVVESVRfQVJHMCArIDEpCisjZGVmaW5lIEFVRElUX0FSRzIgKEFVRElUX0FSRzAgKyAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfQVJHMyAoQVVESVRfQVJHMCArIDMpCiAjZGVmaW5lIEFVRElUX0ZJTFRFUktFWSAyMTAKICNkZWZpbmUgQVVESVRfTkVHQVRFIDB4ODAwMDAwMDAKICNkZWZpbmUgQVVESVRfQklUX01BU0sgMHgwODAwMDAwMAotI2RlZmluZSBBVURJVF9MRVNTX1RIQU4gMHgxMDAwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfTEVTU19USEFOIDB4MTAwMDAwMDAKICNkZWZpbmUgQVVESVRfR1JFQVRFUl9USEFOIDB4MjAwMDAwMDAKICNkZWZpbmUgQVVESVRfTk9UX0VRVUFMIDB4MzAwMDAwMDAKICNkZWZpbmUgQVVESVRfRVFVQUwgMHg0MDAwMDAwMAotI2RlZmluZSBBVURJVF9CSVRfVEVTVCAoQVVESVRfQklUX01BU0t8QVVESVRfRVFVQUwpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBVURJVF9MRVNTX1RIQU5fT1JfRVFVQUwgKEFVRElUX0xFU1NfVEhBTnxBVURJVF9FUVVBTCkKLSNkZWZpbmUgQVVESVRfR1JFQVRFUl9USEFOX09SX0VRVUFMIChBVURJVF9HUkVBVEVSX1RIQU58QVVESVRfRVFVQUwpCi0jZGVmaW5lIEFVRElUX09QRVJBVE9SUyAoQVVESVRfRVFVQUx8QVVESVRfTk9UX0VRVUFMfEFVRElUX0JJVF9NQVNLKQorI2RlZmluZSBBVURJVF9CSVRfVEVTVCAoQVVESVRfQklUX01BU0sgfCBBVURJVF9FUVVBTCkKKyNkZWZpbmUgQVVESVRfTEVTU19USEFOX09SX0VRVUFMIChBVURJVF9MRVNTX1RIQU4gfCBBVURJVF9FUVVBTCkKKyNkZWZpbmUgQVVESVRfR1JFQVRFUl9USEFOX09SX0VRVUFMIChBVURJVF9HUkVBVEVSX1RIQU4gfCBBVURJVF9FUVVBTCkKKyNkZWZpbmUgQVVESVRfT1BFUkFUT1JTIChBVURJVF9FUVVBTCB8IEFVRElUX05PVF9FUVVBTCB8IEFVRElUX0JJVF9NQVNLKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0geworICBBdWRpdF9lcXVhbCwKKyAgQXVkaXRfbm90X2VxdWFsLAorICBBdWRpdF9iaXRtYXNrLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBBdWRpdF9lcXVhbCwKLSBBdWRpdF9ub3RfZXF1YWwsCi0gQXVkaXRfYml0bWFzaywKLSBBdWRpdF9iaXR0ZXN0LAorICBBdWRpdF9iaXR0ZXN0LAorICBBdWRpdF9sdCwKKyAgQXVkaXRfZ3QsCisgIEF1ZGl0X2xlLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBBdWRpdF9sdCwKLSBBdWRpdF9ndCwKLSBBdWRpdF9sZSwKLSBBdWRpdF9nZSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQXVkaXRfYmFkCisgIEF1ZGl0X2dlLAorICBBdWRpdF9iYWQKIH07CiAjZGVmaW5lIEFVRElUX1NUQVRVU19FTkFCTEVEIDB4MDAwMQotI2RlZmluZSBBVURJVF9TVEFUVVNfRkFJTFVSRSAweDAwMDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX1NUQVRVU19GQUlMVVJFIDB4MDAwMgogI2RlZmluZSBBVURJVF9TVEFUVVNfUElEIDB4MDAwNAogI2RlZmluZSBBVURJVF9TVEFUVVNfUkFURV9MSU1JVCAweDAwMDgKICNkZWZpbmUgQVVESVRfU1RBVFVTX0JBQ0tMT0dfTElNSVQgMHgwMDEwCi0jZGVmaW5lIEFVRElUX1NUQVRVU19CQUNLTE9HX1dBSVRfVElNRSAweDAwMjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX1NUQVRVU19CQUNLTE9HX1dBSVRfVElNRSAweDAwMjAKICNkZWZpbmUgQVVESVRfVkVSU0lPTl9CQUNLTE9HX0xJTUlUIDEKICNkZWZpbmUgQVVESVRfVkVSU0lPTl9CQUNLTE9HX1dBSVRfVElNRSAyCiAjZGVmaW5lIEFVRElUX1ZFUlNJT05fTEFURVNUIEFVRElUX1ZFUlNJT05fQkFDS0xPR19XQUlUX1RJTUUKLSNkZWZpbmUgQVVESVRfRkFJTF9TSUxFTlQgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfRkFJTF9TSUxFTlQgMAogI2RlZmluZSBBVURJVF9GQUlMX1BSSU5USyAxCiAjZGVmaW5lIEFVRElUX0ZBSUxfUEFOSUMgMgorI2RlZmluZSBfX0FVRElUX0FSQ0hfQ09OVkVOVElPTl9NQVNLIDB4MzAwMDAwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fQVVESVRfQVJDSF9DT05WRU5USU9OX01JUFM2NF9OMzIgMHgyMDAwMDAwMAogI2RlZmluZSBfX0FVRElUX0FSQ0hfNjRCSVQgMHg4MDAwMDAwMAogI2RlZmluZSBfX0FVRElUX0FSQ0hfTEUgMHg0MDAwMDAwMAorI2RlZmluZSBBVURJVF9BUkNIX0FBUkNINjQgKEVNX0FBUkNINjQgfCBfX0FVRElUX0FSQ0hfNjRCSVQgfCBfX0FVRElUX0FSQ0hfTEUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBVURJVF9BUkNIX0FMUEhBIChFTV9BTFBIQXxfX0FVRElUX0FSQ0hfNjRCSVR8X19BVURJVF9BUkNIX0xFKQotI2RlZmluZSBBVURJVF9BUkNIX0FSTSAoRU1fQVJNfF9fQVVESVRfQVJDSF9MRSkKKyNkZWZpbmUgQVVESVRfQVJDSF9BTFBIQSAoRU1fQUxQSEEgfCBfX0FVRElUX0FSQ0hfNjRCSVQgfCBfX0FVRElUX0FSQ0hfTEUpCisjZGVmaW5lIEFVRElUX0FSQ0hfQVJNIChFTV9BUk0gfCBfX0FVRElUX0FSQ0hfTEUpCiAjZGVmaW5lIEFVRElUX0FSQ0hfQVJNRUIgKEVNX0FSTSkKLSNkZWZpbmUgQVVESVRfQVJDSF9DUklTIChFTV9DUklTfF9fQVVESVRfQVJDSF9MRSkKKyNkZWZpbmUgQVVESVRfQVJDSF9DUklTIChFTV9DUklTIHwgX19BVURJVF9BUkNIX0xFKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfQVJDSF9GUlYgKEVNX0ZSVikKLSNkZWZpbmUgQVVESVRfQVJDSF9JMzg2IChFTV8zODZ8X19BVURJVF9BUkNIX0xFKQotI2RlZmluZSBBVURJVF9BUkNIX0lBNjQgKEVNX0lBXzY0fF9fQVVESVRfQVJDSF82NEJJVHxfX0FVRElUX0FSQ0hfTEUpCisjZGVmaW5lIEFVRElUX0FSQ0hfSTM4NiAoRU1fMzg2IHwgX19BVURJVF9BUkNIX0xFKQorI2RlZmluZSBBVURJVF9BUkNIX0lBNjQgKEVNX0lBXzY0IHwgX19BVURJVF9BUkNIXzY0QklUIHwgX19BVURJVF9BUkNIX0xFKQogI2RlZmluZSBBVURJVF9BUkNIX00zMlIgKEVNX00zMlIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9BUkNIX002OEsgKEVNXzY4SykKKyNkZWZpbmUgQVVESVRfQVJDSF9NSUNST0JMQVpFIChFTV9NSUNST0JMQVpFKQogI2RlZmluZSBBVURJVF9BUkNIX01JUFMgKEVNX01JUFMpCi0jZGVmaW5lIEFVRElUX0FSQ0hfTUlQU0VMIChFTV9NSVBTfF9fQVVESVRfQVJDSF9MRSkKLSNkZWZpbmUgQVVESVRfQVJDSF9NSVBTNjQgKEVNX01JUFN8X19BVURJVF9BUkNIXzY0QklUKQorI2RlZmluZSBBVURJVF9BUkNIX01JUFNFTCAoRU1fTUlQUyB8IF9fQVVESVRfQVJDSF9MRSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFVRElUX0FSQ0hfTUlQU0VMNjQgKEVNX01JUFN8X19BVURJVF9BUkNIXzY0QklUfF9fQVVESVRfQVJDSF9MRSkKKyNkZWZpbmUgQVVESVRfQVJDSF9NSVBTNjQgKEVNX01JUFMgfCBfX0FVRElUX0FSQ0hfNjRCSVQpCisjZGVmaW5lIEFVRElUX0FSQ0hfTUlQUzY0TjMyIChFTV9NSVBTIHwgX19BVURJVF9BUkNIXzY0QklUIHwgX19BVURJVF9BUkNIX0NPTlZFTlRJT05fTUlQUzY0X04zMikKKyNkZWZpbmUgQVVESVRfQVJDSF9NSVBTRUw2NCAoRU1fTUlQUyB8IF9fQVVESVRfQVJDSF82NEJJVCB8IF9fQVVESVRfQVJDSF9MRSkKKyNkZWZpbmUgQVVESVRfQVJDSF9NSVBTRUw2NE4zMiAoRU1fTUlQUyB8IF9fQVVESVRfQVJDSF82NEJJVCB8IF9fQVVESVRfQVJDSF9MRSB8IF9fQVVESVRfQVJDSF9DT05WRU5USU9OX01JUFM2NF9OMzIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9BUkNIX09QRU5SSVNDIChFTV9PUEVOUklTQykKICNkZWZpbmUgQVVESVRfQVJDSF9QQVJJU0MgKEVNX1BBUklTQykKLSNkZWZpbmUgQVVESVRfQVJDSF9QQVJJU0M2NCAoRU1fUEFSSVNDfF9fQVVESVRfQVJDSF82NEJJVCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFVRElUX0FSQ0hfUEFSSVNDNjQgKEVNX1BBUklTQyB8IF9fQVVESVRfQVJDSF82NEJJVCkKICNkZWZpbmUgQVVESVRfQVJDSF9QUEMgKEVNX1BQQykKLSNkZWZpbmUgQVVESVRfQVJDSF9QUEM2NCAoRU1fUFBDNjR8X19BVURJVF9BUkNIXzY0QklUKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVESVRfQVJDSF9QUEM2NCAoRU1fUFBDNjQgfCBfX0FVRElUX0FSQ0hfNjRCSVQpCisjZGVmaW5lIEFVRElUX0FSQ0hfUFBDNjRMRSAoRU1fUFBDNjQgfCBfX0FVRElUX0FSQ0hfNjRCSVQgfCBfX0FVRElUX0FSQ0hfTEUpCiAjZGVmaW5lIEFVRElUX0FSQ0hfUzM5MCAoRU1fUzM5MCkKLSNkZWZpbmUgQVVESVRfQVJDSF9TMzkwWCAoRU1fUzM5MHxfX0FVRElUX0FSQ0hfNjRCSVQpCisjZGVmaW5lIEFVRElUX0FSQ0hfUzM5MFggKEVNX1MzOTAgfCBfX0FVRElUX0FSQ0hfNjRCSVQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJVF9BUkNIX1NIIChFTV9TSCkKLSNkZWZpbmUgQVVESVRfQVJDSF9TSEVMIChFTV9TSHxfX0FVRElUX0FSQ0hfTEUpCi0jZGVmaW5lIEFVRElUX0FSQ0hfU0g2NCAoRU1fU0h8X19BVURJVF9BUkNIXzY0QklUKQotI2RlZmluZSBBVURJVF9BUkNIX1NIRUw2NCAoRU1fU0h8X19BVURJVF9BUkNIXzY0QklUfF9fQVVESVRfQVJDSF9MRSkKKyNkZWZpbmUgQVVESVRfQVJDSF9TSEVMIChFTV9TSCB8IF9fQVVESVRfQVJDSF9MRSkKKyNkZWZpbmUgQVVESVRfQVJDSF9TSDY0IChFTV9TSCB8IF9fQVVESVRfQVJDSF82NEJJVCkKKyNkZWZpbmUgQVVESVRfQVJDSF9TSEVMNjQgKEVNX1NIIHwgX19BVURJVF9BUkNIXzY0QklUIHwgX19BVURJVF9BUkNIX0xFKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfQVJDSF9TUEFSQyAoRU1fU1BBUkMpCi0jZGVmaW5lIEFVRElUX0FSQ0hfU1BBUkM2NCAoRU1fU1BBUkNWOXxfX0FVRElUX0FSQ0hfNjRCSVQpCi0jZGVmaW5lIEFVRElUX0FSQ0hfWDg2XzY0IChFTV9YODZfNjR8X19BVURJVF9BUkNIXzY0QklUfF9fQVVESVRfQVJDSF9MRSkKKyNkZWZpbmUgQVVESVRfQVJDSF9TUEFSQzY0IChFTV9TUEFSQ1Y5IHwgX19BVURJVF9BUkNIXzY0QklUKQorI2RlZmluZSBBVURJVF9BUkNIX1g4Nl82NCAoRU1fWDg2XzY0IHwgX19BVURJVF9BUkNIXzY0QklUIHwgX19BVURJVF9BUkNIX0xFKQogI2RlZmluZSBBVURJVF9QRVJNX0VYRUMgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfUEVSTV9XUklURSAyCkBAIC0zMzEsNjQgKzM0MSw2MSBAQAogI2RlZmluZSBBVURJVF9QRVJNX0FUVFIgOAogI2RlZmluZSBBVURJVF9NRVNTQUdFX1RFWFRfTUFYIDg1NjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgYXVkaXRfc3RhdHVzIHsKLSBfX3UzMiBtYXNrOwotIF9fdTMyIGVuYWJsZWQ7Ci0gX191MzIgZmFpbHVyZTsKK2VudW0gYXVkaXRfbmxncnBzIHsKKyAgQVVESVRfTkxHUlBfTk9ORSwKKyAgQVVESVRfTkxHUlBfUkVBRExPRywKKyAgX19BVURJVF9OTEdSUF9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGlkOwotIF9fdTMyIHJhdGVfbGltaXQ7Ci0gX191MzIgYmFja2xvZ19saW1pdDsKLSBfX3UzMiBsb3N0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBiYWNrbG9nOwotIF9fdTMyIHZlcnNpb247Ci0gX191MzIgYmFja2xvZ193YWl0X3RpbWU7CiB9OworI2RlZmluZSBBVURJVF9OTEdSUF9NQVggKF9fQVVESVRfTkxHUlBfTUFYIC0gMSkKK3N0cnVjdCBhdWRpdF9zdGF0dXMgeworICBfX3UzMiBtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZW5hYmxlZDsKKyAgX191MzIgZmFpbHVyZTsKKyAgX191MzIgcGlkOworICBfX3UzMiByYXRlX2xpbWl0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgYmFja2xvZ19saW1pdDsKKyAgX191MzIgbG9zdDsKKyAgX191MzIgYmFja2xvZzsKKyAgX191MzIgdmVyc2lvbjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGJhY2tsb2dfd2FpdF90aW1lOworfTsKIHN0cnVjdCBhdWRpdF9mZWF0dXJlcyB7CiAjZGVmaW5lIEFVRElUX0ZFQVRVUkVfVkVSU0lPTiAxCi0gX191MzIgdmVyczsKLSBfX3UzMiBtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmZWF0dXJlczsKLSBfX3UzMiBsb2NrOworICBfX3UzMiB2ZXJzOworICBfX3UzMiBtYXNrOworICBfX3UzMiBmZWF0dXJlczsKKyAgX191MzIgbG9jazsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBBVURJVF9GRUFUVVJFX09OTFlfVU5TRVRfTE9HSU5VSUQgMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESVRfRkVBVFVSRV9MT0dJTlVJRF9JTU1VVEFCTEUgMQogI2RlZmluZSBBVURJVF9MQVNUX0ZFQVRVUkUgQVVESVRfRkVBVFVSRV9MT0dJTlVJRF9JTU1VVEFCTEUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIGF1ZGl0X2ZlYXR1cmVfdmFsaWQoeCkgKCh4KSA+PSAwICYmICh4KSA8PSBBVURJVF9MQVNUX0ZFQVRVUkUpCiAjZGVmaW5lIEFVRElUX0ZFQVRVUkVfVE9fTUFTSyh4KSAoMSA8PCAoKHgpICYgMzEpKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBhdWRpdF90dHlfc3RhdHVzIHsKLSBfX3UzMiBlbmFibGVkOwotIF9fdTMyIGxvZ19wYXNzd2Q7Ci19OworICBfX3UzMiBlbmFibGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVVESVRfVUlEX1VOU0VUICh1bnNpZ25lZCBpbnQpLTEKKyAgX191MzIgbG9nX3Bhc3N3ZDsKK307CisjZGVmaW5lIEFVRElUX1VJRF9VTlNFVCAodW5zaWduZWQgaW50KSAtIDEKIHN0cnVjdCBhdWRpdF9ydWxlX2RhdGEgewotIF9fdTMyIGZsYWdzOwotIF9fdTMyIGFjdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmllbGRfY291bnQ7Ci0gX191MzIgbWFza1tBVURJVF9CSVRNQVNLX1NJWkVdOwotIF9fdTMyIGZpZWxkc1tBVURJVF9NQVhfRklFTERTXTsKLSBfX3UzMiB2YWx1ZXNbQVVESVRfTUFYX0ZJRUxEU107CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBhY3Rpb247CisgIF9fdTMyIGZpZWxkX2NvdW50OworICBfX3UzMiBtYXNrW0FVRElUX0JJVE1BU0tfU0laRV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZpZWxkZmxhZ3NbQVVESVRfTUFYX0ZJRUxEU107Ci0gX191MzIgYnVmbGVuOwotIGNoYXIgYnVmWzBdOworICBfX3UzMiBmaWVsZHNbQVVESVRfTUFYX0ZJRUxEU107CisgIF9fdTMyIHZhbHVlc1tBVURJVF9NQVhfRklFTERTXTsKKyAgX191MzIgZmllbGRmbGFnc1tBVURJVF9NQVhfRklFTERTXTsKKyAgX191MzIgYnVmbGVuOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgY2hhciBidWZbMF07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBhdWRpdF9ydWxlIHsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBhY3Rpb247Ci0gX191MzIgZmllbGRfY291bnQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1hc2tbQVVESVRfQklUTUFTS19TSVpFXTsKLSBfX3UzMiBmaWVsZHNbQVVESVRfTUFYX0ZJRUxEU107Ci0gX191MzIgdmFsdWVzW0FVRElUX01BWF9GSUVMRFNdOwotfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXV0b19mcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdXRvX2ZzLmgKaW5kZXggYTE5NTM3NS4uYjNiMDQ1ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdXRvX2ZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdXRvX2ZzLmgKQEAgLTM0LDMxICszNCwzMSBAQAogI2RlZmluZSBhdXRvZnNfcHR5cGVfbWlzc2luZyAwCiAjZGVmaW5lIGF1dG9mc19wdHlwZV9leHBpcmUgMQogc3RydWN0IGF1dG9mc19wYWNrZXRfaGRyIHsKLSBpbnQgcHJvdG9fdmVyc2lvbjsKKyAgaW50IHByb3RvX3ZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0eXBlOworICBpbnQgdHlwZTsKIH07CiBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9taXNzaW5nIHsKLSBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9oZHIgaGRyOworICBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9oZHIgaGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBhdXRvZnNfd3F0X3Qgd2FpdF9xdWV1ZV90b2tlbjsKLSBpbnQgbGVuOwotIGNoYXIgbmFtZVtOQU1FX01BWCsxXTsKKyAgYXV0b2ZzX3dxdF90IHdhaXRfcXVldWVfdG9rZW47CisgIGludCBsZW47CisgIGNoYXIgbmFtZVtOQU1FX01BWCArIDFdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9leHBpcmUgewotIHN0cnVjdCBhdXRvZnNfcGFja2V0X2hkciBoZHI7Ci0gaW50IGxlbjsKLSBjaGFyIG5hbWVbTkFNRV9NQVgrMV07CisgIHN0cnVjdCBhdXRvZnNfcGFja2V0X2hkciBoZHI7CisgIGludCBsZW47CisgIGNoYXIgbmFtZVtOQU1FX01BWCArIDFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIEFVVE9GU19JT0NfUkVBRFkgX0lPKDB4OTMsMHg2MCkKLSNkZWZpbmUgQVVUT0ZTX0lPQ19GQUlMIF9JTygweDkzLDB4NjEpCi0jZGVmaW5lIEFVVE9GU19JT0NfQ0FUQVRPTklDIF9JTygweDkzLDB4NjIpCisjZGVmaW5lIEFVVE9GU19JT0NfUkVBRFkgX0lPKDB4OTMsIDB4NjApCisjZGVmaW5lIEFVVE9GU19JT0NfRkFJTCBfSU8oMHg5MywgMHg2MSkKKyNkZWZpbmUgQVVUT0ZTX0lPQ19DQVRBVE9OSUMgX0lPKDB4OTMsIDB4NjIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBVVRPRlNfSU9DX1BST1RPVkVSIF9JT1IoMHg5MywweDYzLGludCkKLSNkZWZpbmUgQVVUT0ZTX0lPQ19TRVRUSU1FT1VUMzIgX0lPV1IoMHg5MywweDY0LGNvbXBhdF91bG9uZ190KQotI2RlZmluZSBBVVRPRlNfSU9DX1NFVFRJTUVPVVQgX0lPV1IoMHg5MywweDY0LHVuc2lnbmVkIGxvbmcpCi0jZGVmaW5lIEFVVE9GU19JT0NfRVhQSVJFIF9JT1IoMHg5MywweDY1LHN0cnVjdCBhdXRvZnNfcGFja2V0X2V4cGlyZSkKKyNkZWZpbmUgQVVUT0ZTX0lPQ19QUk9UT1ZFUiBfSU9SKDB4OTMsIDB4NjMsIGludCkKKyNkZWZpbmUgQVVUT0ZTX0lPQ19TRVRUSU1FT1VUMzIgX0lPV1IoMHg5MywgMHg2NCwgY29tcGF0X3Vsb25nX3QpCisjZGVmaW5lIEFVVE9GU19JT0NfU0VUVElNRU9VVCBfSU9XUigweDkzLCAweDY0LCB1bnNpZ25lZCBsb25nKQorI2RlZmluZSBBVVRPRlNfSU9DX0VYUElSRSBfSU9SKDB4OTMsIDB4NjUsIHN0cnVjdCBhdXRvZnNfcGFja2V0X2V4cGlyZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXV0b19mczQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYXV0b19mczQuaAppbmRleCBjN2E3ODdiLi5lMmNkMzM3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F1dG9fZnM0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9hdXRvX2ZzNC5oCkBAIC0zOCwxMCArMzgsMTAgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVVE9GU19UWVBFX09GRlNFVCA0VQogZW51bSBhdXRvZnNfbm90aWZ5IHsKLSBORllfTk9ORSwKLSBORllfTU9VTlQsCisgIE5GWV9OT05FLAorICBORllfTU9VTlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GWV9FWFBJUkUKKyAgTkZZX0VYUElSRQogfTsKICNkZWZpbmUgYXV0b2ZzX3B0eXBlX2V4cGlyZV9tdWx0aSAyCiAjZGVmaW5lIGF1dG9mc19wdHlwZV9taXNzaW5nX2luZGlyZWN0IDMKQEAgLTUxLDMzICs1MSwzMyBAQAogI2RlZmluZSBhdXRvZnNfcHR5cGVfZXhwaXJlX2RpcmVjdCA2CiBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9leHBpcmVfbXVsdGkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9oZHIgaGRyOwotIGF1dG9mc193cXRfdCB3YWl0X3F1ZXVlX3Rva2VuOwotIGludCBsZW47Ci0gY2hhciBuYW1lW05BTUVfTUFYKzFdOworICBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9oZHIgaGRyOworICBhdXRvZnNfd3F0X3Qgd2FpdF9xdWV1ZV90b2tlbjsKKyAgaW50IGxlbjsKKyAgY2hhciBuYW1lW05BTUVfTUFYICsgMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHVuaW9uIGF1dG9mc19wYWNrZXRfdW5pb24gewotIHN0cnVjdCBhdXRvZnNfcGFja2V0X2hkciBoZHI7Ci0gc3RydWN0IGF1dG9mc19wYWNrZXRfbWlzc2luZyBtaXNzaW5nOworICBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9oZHIgaGRyOworICBzdHJ1Y3QgYXV0b2ZzX3BhY2tldF9taXNzaW5nIG1pc3Npbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBhdXRvZnNfcGFja2V0X2V4cGlyZSBleHBpcmU7Ci0gc3RydWN0IGF1dG9mc19wYWNrZXRfZXhwaXJlX211bHRpIGV4cGlyZV9tdWx0aTsKKyAgc3RydWN0IGF1dG9mc19wYWNrZXRfZXhwaXJlIGV4cGlyZTsKKyAgc3RydWN0IGF1dG9mc19wYWNrZXRfZXhwaXJlX211bHRpIGV4cGlyZV9tdWx0aTsKIH07CiBzdHJ1Y3QgYXV0b2ZzX3Y1X3BhY2tldCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBhdXRvZnNfcGFja2V0X2hkciBoZHI7Ci0gYXV0b2ZzX3dxdF90IHdhaXRfcXVldWVfdG9rZW47Ci0gX191MzIgZGV2OwotIF9fdTY0IGlubzsKKyAgc3RydWN0IGF1dG9mc19wYWNrZXRfaGRyIGhkcjsKKyAgYXV0b2ZzX3dxdF90IHdhaXRfcXVldWVfdG9rZW47CisgIF9fdTMyIGRldjsKKyAgX191NjQgaW5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB1aWQ7Ci0gX191MzIgZ2lkOwotIF9fdTMyIHBpZDsKLSBfX3UzMiB0Z2lkOworICBfX3UzMiB1aWQ7CisgIF9fdTMyIGdpZDsKKyAgX191MzIgcGlkOworICBfX3UzMiB0Z2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsZW47Ci0gY2hhciBuYW1lW05BTUVfTUFYKzFdOworICBfX3UzMiBsZW47CisgIGNoYXIgbmFtZVtOQU1FX01BWCArIDFdOwogfTsKIHR5cGVkZWYgc3RydWN0IGF1dG9mc192NV9wYWNrZXQgYXV0b2ZzX3BhY2tldF9taXNzaW5nX2luZGlyZWN0X3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtODYsMTkgKzg2LDE5IEBACiB0eXBlZGVmIHN0cnVjdCBhdXRvZnNfdjVfcGFja2V0IGF1dG9mc19wYWNrZXRfZXhwaXJlX2RpcmVjdF90OwogdW5pb24gYXV0b2ZzX3Y1X3BhY2tldF91bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBhdXRvZnNfcGFja2V0X2hkciBoZHI7Ci0gc3RydWN0IGF1dG9mc192NV9wYWNrZXQgdjVfcGFja2V0OwotIGF1dG9mc19wYWNrZXRfbWlzc2luZ19pbmRpcmVjdF90IG1pc3NpbmdfaW5kaXJlY3Q7Ci0gYXV0b2ZzX3BhY2tldF9leHBpcmVfaW5kaXJlY3RfdCBleHBpcmVfaW5kaXJlY3Q7CisgIHN0cnVjdCBhdXRvZnNfcGFja2V0X2hkciBoZHI7CisgIHN0cnVjdCBhdXRvZnNfdjVfcGFja2V0IHY1X3BhY2tldDsKKyAgYXV0b2ZzX3BhY2tldF9taXNzaW5nX2luZGlyZWN0X3QgbWlzc2luZ19pbmRpcmVjdDsKKyAgYXV0b2ZzX3BhY2tldF9leHBpcmVfaW5kaXJlY3RfdCBleHBpcmVfaW5kaXJlY3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGF1dG9mc19wYWNrZXRfbWlzc2luZ19kaXJlY3RfdCBtaXNzaW5nX2RpcmVjdDsKLSBhdXRvZnNfcGFja2V0X2V4cGlyZV9kaXJlY3RfdCBleHBpcmVfZGlyZWN0OworICBhdXRvZnNfcGFja2V0X21pc3NpbmdfZGlyZWN0X3QgbWlzc2luZ19kaXJlY3Q7CisgIGF1dG9mc19wYWNrZXRfZXhwaXJlX2RpcmVjdF90IGV4cGlyZV9kaXJlY3Q7CiB9OwotI2RlZmluZSBBVVRPRlNfSU9DX0VYUElSRV9NVUxUSSBfSU9XKDB4OTMsMHg2NixpbnQpCisjZGVmaW5lIEFVVE9GU19JT0NfRVhQSVJFX01VTFRJIF9JT1coMHg5MywgMHg2NiwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVUT0ZTX0lPQ19FWFBJUkVfSU5ESVJFQ1QgQVVUT0ZTX0lPQ19FWFBJUkVfTVVMVEkKICNkZWZpbmUgQVVUT0ZTX0lPQ19FWFBJUkVfRElSRUNUIEFVVE9GU19JT0NfRVhQSVJFX01VTFRJCi0jZGVmaW5lIEFVVE9GU19JT0NfUFJPVE9TVUJWRVIgX0lPUigweDkzLDB4NjcsaW50KQotI2RlZmluZSBBVVRPRlNfSU9DX0FTS1VNT1VOVCBfSU9SKDB4OTMsMHg3MCxpbnQpCisjZGVmaW5lIEFVVE9GU19JT0NfUFJPVE9TVUJWRVIgX0lPUigweDkzLCAweDY3LCBpbnQpCisjZGVmaW5lIEFVVE9GU19JT0NfQVNLVU1PVU5UIF9JT1IoMHg5MywgMHg3MCwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9heDI1LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F4MjUuaAppbmRleCAzM2E3NjM4Li44MzkwN2MyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F4MjUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2F4MjUuaApAQCAtMzcsOTUgKzM3LDk1IEBACiAjZGVmaW5lIEFYMjVfSUFNRElHSSAxMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVgyNV9LSUxMIDk5Ci0jZGVmaW5lIFNJT0NBWDI1R0VUVUlEIChTSU9DUFJPVE9QUklWQVRFKzApCi0jZGVmaW5lIFNJT0NBWDI1QUREVUlEIChTSU9DUFJPVE9QUklWQVRFKzEpCi0jZGVmaW5lIFNJT0NBWDI1REVMVUlEIChTSU9DUFJPVE9QUklWQVRFKzIpCisjZGVmaW5lIFNJT0NBWDI1R0VUVUlEIChTSU9DUFJPVE9QUklWQVRFICsgMCkKKyNkZWZpbmUgU0lPQ0FYMjVBRERVSUQgKFNJT0NQUk9UT1BSSVZBVEUgKyAxKQorI2RlZmluZSBTSU9DQVgyNURFTFVJRCAoU0lPQ1BST1RPUFJJVkFURSArIDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTSU9DQVgyNU5PVUlEIChTSU9DUFJPVE9QUklWQVRFKzMpCi0jZGVmaW5lIFNJT0NBWDI1T1BUUlQgKFNJT0NQUk9UT1BSSVZBVEUrNykKLSNkZWZpbmUgU0lPQ0FYMjVDVExDT04gKFNJT0NQUk9UT1BSSVZBVEUrOCkKLSNkZWZpbmUgU0lPQ0FYMjVHRVRJTkZPT0xEIChTSU9DUFJPVE9QUklWQVRFKzkpCisjZGVmaW5lIFNJT0NBWDI1Tk9VSUQgKFNJT0NQUk9UT1BSSVZBVEUgKyAzKQorI2RlZmluZSBTSU9DQVgyNU9QVFJUIChTSU9DUFJPVE9QUklWQVRFICsgNykKKyNkZWZpbmUgU0lPQ0FYMjVDVExDT04gKFNJT0NQUk9UT1BSSVZBVEUgKyA4KQorI2RlZmluZSBTSU9DQVgyNUdFVElORk9PTEQgKFNJT0NQUk9UT1BSSVZBVEUgKyA5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0lPQ0FYMjVBRERGV0QgKFNJT0NQUk9UT1BSSVZBVEUrMTApCi0jZGVmaW5lIFNJT0NBWDI1REVMRldEIChTSU9DUFJPVE9QUklWQVRFKzExKQotI2RlZmluZSBTSU9DQVgyNURFVkNUTCAoU0lPQ1BST1RPUFJJVkFURSsxMikKLSNkZWZpbmUgU0lPQ0FYMjVHRVRJTkZPIChTSU9DUFJPVE9QUklWQVRFKzEzKQorI2RlZmluZSBTSU9DQVgyNUFEREZXRCAoU0lPQ1BST1RPUFJJVkFURSArIDEwKQorI2RlZmluZSBTSU9DQVgyNURFTEZXRCAoU0lPQ1BST1RPUFJJVkFURSArIDExKQorI2RlZmluZSBTSU9DQVgyNURFVkNUTCAoU0lPQ1BST1RPUFJJVkFURSArIDEyKQorI2RlZmluZSBTSU9DQVgyNUdFVElORk8gKFNJT0NQUk9UT1BSSVZBVEUgKyAxMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFYMjVfU0VUX1JUX0lQTU9ERSAyCiAjZGVmaW5lIEFYMjVfTk9VSURfREVGQVVMVCAwCiAjZGVmaW5lIEFYMjVfTk9VSURfQkxPQ0sgMQogdHlwZWRlZiBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGF4MjVfY2FsbFs3XTsKKyAgY2hhciBheDI1X2NhbGxbN107CiB9IGF4MjVfYWRkcmVzczsKIHN0cnVjdCBzb2NrYWRkcl9heDI1IHsKLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzYXgyNV9mYW1pbHk7CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHNheDI1X2ZhbWlseTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYXgyNV9hZGRyZXNzIHNheDI1X2NhbGw7Ci0gaW50IHNheDI1X25kaWdpczsKKyAgYXgyNV9hZGRyZXNzIHNheDI1X2NhbGw7CisgIGludCBzYXgyNV9uZGlnaXM7CiB9OwogI2RlZmluZSBzYXgyNV91aWQgc2F4MjVfbmRpZ2lzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ1bGxfc29ja2FkZHJfYXgyNSB7Ci0gc3RydWN0IHNvY2thZGRyX2F4MjUgZnNhX2F4MjU7Ci0gYXgyNV9hZGRyZXNzIGZzYV9kaWdpcGVhdGVyW0FYMjVfTUFYX0RJR0lTXTsKKyAgc3RydWN0IHNvY2thZGRyX2F4MjUgZnNhX2F4MjU7CisgIGF4MjVfYWRkcmVzcyBmc2FfZGlnaXBlYXRlcltBWDI1X01BWF9ESUdJU107CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBheDI1X3JvdXRlc19zdHJ1Y3QgewotIGF4MjVfYWRkcmVzcyBwb3J0X2FkZHI7Ci0gYXgyNV9hZGRyZXNzIGRlc3RfYWRkcjsKLSB1bnNpZ25lZCBjaGFyIGRpZ2lfY291bnQ7CisgIGF4MjVfYWRkcmVzcyBwb3J0X2FkZHI7CisgIGF4MjVfYWRkcmVzcyBkZXN0X2FkZHI7CisgIHVuc2lnbmVkIGNoYXIgZGlnaV9jb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYXgyNV9hZGRyZXNzIGRpZ2lfYWRkcltBWDI1X01BWF9ESUdJU107CisgIGF4MjVfYWRkcmVzcyBkaWdpX2FkZHJbQVgyNV9NQVhfRElHSVNdOwogfTsKIHN0cnVjdCBheDI1X3JvdXRlX29wdF9zdHJ1Y3QgewotIGF4MjVfYWRkcmVzcyBwb3J0X2FkZHI7CisgIGF4MjVfYWRkcmVzcyBwb3J0X2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGF4MjVfYWRkcmVzcyBkZXN0X2FkZHI7Ci0gaW50IGNtZDsKLSBpbnQgYXJnOworICBheDI1X2FkZHJlc3MgZGVzdF9hZGRyOworICBpbnQgY21kOworICBpbnQgYXJnOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYXgyNV9jdGxfc3RydWN0IHsKLSBheDI1X2FkZHJlc3MgcG9ydF9hZGRyOwotIGF4MjVfYWRkcmVzcyBzb3VyY2VfYWRkcjsKLSBheDI1X2FkZHJlc3MgZGVzdF9hZGRyOworICBheDI1X2FkZHJlc3MgcG9ydF9hZGRyOworICBheDI1X2FkZHJlc3Mgc291cmNlX2FkZHI7CisgIGF4MjVfYWRkcmVzcyBkZXN0X2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBjbWQ7Ci0gdW5zaWduZWQgbG9uZyBhcmc7Ci0gdW5zaWduZWQgY2hhciBkaWdpX2NvdW50OwotIGF4MjVfYWRkcmVzcyBkaWdpX2FkZHJbQVgyNV9NQVhfRElHSVNdOworICB1bnNpZ25lZCBpbnQgY21kOworICB1bnNpZ25lZCBsb25nIGFyZzsKKyAgdW5zaWduZWQgY2hhciBkaWdpX2NvdW50OworICBheDI1X2FkZHJlc3MgZGlnaV9hZGRyW0FYMjVfTUFYX0RJR0lTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGF4MjVfaW5mb19zdHJ1Y3RfZGVwcmVjYXRlZCB7Ci0gdW5zaWduZWQgaW50IG4yLCBuMmNvdW50OwotIHVuc2lnbmVkIGludCB0MSwgdDF0aW1lcjsKKyAgdW5zaWduZWQgaW50IG4yLCBuMmNvdW50OworICB1bnNpZ25lZCBpbnQgdDEsIHQxdGltZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0MiwgdDJ0aW1lcjsKLSB1bnNpZ25lZCBpbnQgdDMsIHQzdGltZXI7Ci0gdW5zaWduZWQgaW50IGlkbGUsIGlkbGV0aW1lcjsKLSB1bnNpZ25lZCBpbnQgc3RhdGU7CisgIHVuc2lnbmVkIGludCB0MiwgdDJ0aW1lcjsKKyAgdW5zaWduZWQgaW50IHQzLCB0M3RpbWVyOworICB1bnNpZ25lZCBpbnQgaWRsZSwgaWRsZXRpbWVyOworICB1bnNpZ25lZCBpbnQgc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCByY3ZfcSwgc25kX3E7CisgIHVuc2lnbmVkIGludCByY3ZfcSwgc25kX3E7CiB9Owogc3RydWN0IGF4MjVfaW5mb19zdHJ1Y3QgewotIHVuc2lnbmVkIGludCBuMiwgbjJjb3VudDsKKyAgdW5zaWduZWQgaW50IG4yLCBuMmNvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdDEsIHQxdGltZXI7Ci0gdW5zaWduZWQgaW50IHQyLCB0MnRpbWVyOwotIHVuc2lnbmVkIGludCB0MywgdDN0aW1lcjsKLSB1bnNpZ25lZCBpbnQgaWRsZSwgaWRsZXRpbWVyOworICB1bnNpZ25lZCBpbnQgdDEsIHQxdGltZXI7CisgIHVuc2lnbmVkIGludCB0MiwgdDJ0aW1lcjsKKyAgdW5zaWduZWQgaW50IHQzLCB0M3RpbWVyOworICB1bnNpZ25lZCBpbnQgaWRsZSwgaWRsZXRpbWVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc3RhdGU7Ci0gdW5zaWduZWQgaW50IHJjdl9xLCBzbmRfcTsKLSB1bnNpZ25lZCBpbnQgdnMsIHZyLCB2YSwgdnNfbWF4OwotIHVuc2lnbmVkIGludCBwYWNsZW47CisgIHVuc2lnbmVkIGludCBzdGF0ZTsKKyAgdW5zaWduZWQgaW50IHJjdl9xLCBzbmRfcTsKKyAgdW5zaWduZWQgaW50IHZzLCB2ciwgdmEsIHZzX21heDsKKyAgdW5zaWduZWQgaW50IHBhY2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHdpbmRvdzsKKyAgdW5zaWduZWQgaW50IHdpbmRvdzsKIH07CiBzdHJ1Y3QgYXgyNV9md2Rfc3RydWN0IHsKLSBheDI1X2FkZHJlc3MgcG9ydF9mcm9tOworICBheDI1X2FkZHJlc3MgcG9ydF9mcm9tOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBheDI1X2FkZHJlc3MgcG9ydF90bzsKKyAgYXgyNV9hZGRyZXNzIHBvcnRfdG87CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2IxbGxpLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2IxbGxpLmgKaW5kZXggZTQwMzIzYi4uZjNmZDE0MCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iMWxsaS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYjFsbGkuaApAQCAtMTksMzUgKzE5LDM1IEBACiAjaWZuZGVmIF9CMUxMSV9IXwogI2RlZmluZSBfQjFMTElfSF8KIHR5cGVkZWYgc3RydWN0IGF2bWIxX3Q0ZmlsZSB7Ci0gaW50IGxlbjsKKyAgaW50IGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciAqZGF0YTsKKyAgdW5zaWduZWQgY2hhciAqIGRhdGE7CiB9IGF2bWIxX3Q0ZmlsZTsKIHR5cGVkZWYgc3RydWN0IGF2bWIxX2xvYWRkZWYgewotIGludCBjb250cjsKKyAgaW50IGNvbnRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBhdm1iMV90NGZpbGUgdDRmaWxlOworICBhdm1iMV90NGZpbGUgdDRmaWxlOwogfSBhdm1iMV9sb2FkZGVmOwogdHlwZWRlZiBzdHJ1Y3QgYXZtYjFfbG9hZGFuZGNvbmZpZ2RlZiB7Ci0gaW50IGNvbnRyOworICBpbnQgY29udHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGF2bWIxX3Q0ZmlsZSB0NGZpbGU7Ci0gYXZtYjFfdDRmaWxlIHQ0Y29uZmlnOworICBhdm1iMV90NGZpbGUgdDRmaWxlOworICBhdm1iMV90NGZpbGUgdDRjb25maWc7CiB9IGF2bWIxX2xvYWRhbmRjb25maWdkZWY7CiB0eXBlZGVmIHN0cnVjdCBhdm1iMV9yZXNldGRlZiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjb250cjsKKyAgaW50IGNvbnRyOwogfSBhdm1iMV9yZXNldGRlZjsKIHR5cGVkZWYgc3RydWN0IGF2bWIxX2dldGRlZiB7Ci0gaW50IGNvbnRyOworICBpbnQgY29udHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjYXJkdHlwZTsKLSBpbnQgY2FyZHN0YXRlOworICBpbnQgY2FyZHR5cGU7CisgIGludCBjYXJkc3RhdGU7CiB9IGF2bWIxX2dldGRlZjsKIHR5cGVkZWYgc3RydWN0IGF2bWIxX2NhcmRkZWYgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcG9ydDsKLSBpbnQgaXJxOworICBpbnQgcG9ydDsKKyAgaW50IGlycTsKIH0gYXZtYjFfY2FyZGRlZjsKICNkZWZpbmUgQVZNX0NBUkRUWVBFX0IxIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC01NiwxMCArNTYsMTAgQEAKICNkZWZpbmUgQVZNX0NBUkRUWVBFX00yIDMKIHR5cGVkZWYgc3RydWN0IGF2bWIxX2V4dGNhcmRkZWYgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcG9ydDsKLSBpbnQgaXJxOwotIGludCBjYXJkdHlwZTsKLSBpbnQgY2FyZG5yOworICBpbnQgcG9ydDsKKyAgaW50IGlycTsKKyAgaW50IGNhcmR0eXBlOworICBpbnQgY2FyZG5yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gYXZtYjFfZXh0Y2FyZGRlZjsKICNkZWZpbmUgQVZNQjFfTE9BRCAwCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JheWNvbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iYXljb20uaAppbmRleCA0MzY4NDZhLi43ZjM0NDFiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JheWNvbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmF5Y29tLmgKQEAgLTE5LDE3ICsxOSwxNyBAQAogI2lmbmRlZiBfQkFZQ09NX0gKICNkZWZpbmUgX0JBWUNPTV9ICiBzdHJ1Y3QgYmF5Y29tX2RlYnVnX2RhdGEgewotIHVuc2lnbmVkIGxvbmcgZGVidWcxOworICB1bnNpZ25lZCBsb25nIGRlYnVnMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBkZWJ1ZzI7Ci0gbG9uZyBkZWJ1ZzM7CisgIHVuc2lnbmVkIGxvbmcgZGVidWcyOworICBsb25nIGRlYnVnMzsKIH07CiBzdHJ1Y3QgYmF5Y29tX2lvY3RsIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNtZDsKLSB1bmlvbiB7Ci0gc3RydWN0IGJheWNvbV9kZWJ1Z19kYXRhIGRiZzsKLSB9IGRhdGE7CisgIGludCBjbWQ7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgYmF5Y29tX2RlYnVnX2RhdGEgZGJnOworICB9IGRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQkFZQ09NQ1RMX0dFVERFQlVHIDB4OTIKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmNhY2hlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JjYWNoZS5oCmluZGV4IDRkMWQ0NTQuLmVmZTY5MmMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmNhY2hlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iY2FjaGUuaApAQCAtMTksMjAgKzE5LDI4IEBACiAjaWZuZGVmIF9MSU5VWF9CQ0FDSEVfSAogI2RlZmluZSBfTElOVVhfQkNBQ0hFX0gKICNpbmNsdWRlIDxhc20vdHlwZXMuaD4KLSNkZWZpbmUgQklUTUFTSyhuYW1lLCB0eXBlLCBmaWVsZCwgb2Zmc2V0LCBzaXplKSAgc3RhdGljIGlubGluZSBfX3U2NCBuYW1lKGNvbnN0IHR5cGUgKmspICB7IHJldHVybiAoay0+ZmllbGQgPj4gb2Zmc2V0KSAmIH4ofjBVTEwgPDwgc2l6ZSk7IH0gICAgc3RhdGljIGlubGluZSB2b2lkIFNFVF8jI25hbWUodHlwZSAqaywgX191NjQgdikgIHsgICBrLT5maWVsZCAmPSB+KH4ofjBVTEwgPDwgc2l6ZSkgPDwgb2Zmc2V0KTsgICBrLT5maWVsZCB8PSAodiAmIH4ofjBVTEwgPDwgc2l6ZSkpIDw8IG9mZnNldDsgIH0KKyNkZWZpbmUgQklUTUFTSyhuYW1lLHR5cGUsZmllbGQsb2Zmc2V0LHNpemUpIHN0YXRpYyBpbmxpbmUgX191NjQgbmFtZShjb25zdCB0eXBlICogaykgXAoreyByZXR1cm4oay0+ZmllbGQgPj4gb2Zmc2V0KSAmIH4ofjBVTEwgPDwgc2l6ZSk7IH0gc3RhdGljIGlubGluZSB2b2lkIFNFVF8gIyNuYW1lKHR5cGUgKiBrLCBfX3U2NCB2KSBcCit7IGstPmZpZWxkICY9IH4ofih+MFVMTCA8PCBzaXplKSA8PCBvZmZzZXQpOyBrLT5maWVsZCB8PSAodiAmIH4ofjBVTEwgPDwgc2l6ZSkpIDw8IG9mZnNldDsgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBia2V5IHsKLSBfX3U2NCBoaWdoOwotIF9fdTY0IGxvdzsKLSBfX3U2NCBwdHJbXTsKKyAgX191NjQgaGlnaDsKKyAgX191NjQgbG93OworICBfX3U2NCBwdHJbXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBLRVlfRklFTEQobmFtZSwgZmllbGQsIG9mZnNldCwgc2l6ZSkgICBCSVRNQVNLKG5hbWUsIHN0cnVjdCBia2V5LCBmaWVsZCwgb2Zmc2V0LCBzaXplKQotI2RlZmluZSBQVFJfRklFTEQobmFtZSwgb2Zmc2V0LCBzaXplKSAgc3RhdGljIGlubGluZSBfX3U2NCBuYW1lKGNvbnN0IHN0cnVjdCBia2V5ICprLCB1bnNpZ25lZCBpKSAgeyByZXR1cm4gKGstPnB0cltpXSA+PiBvZmZzZXQpICYgfih+MFVMTCA8PCBzaXplKTsgfSAgICBzdGF0aWMgaW5saW5lIHZvaWQgU0VUXyMjbmFtZShzdHJ1Y3QgYmtleSAqaywgdW5zaWduZWQgaSwgX191NjQgdikgIHsgICBrLT5wdHJbaV0gJj0gfih+KH4wVUxMIDw8IHNpemUpIDw8IG9mZnNldCk7ICAgay0+cHRyW2ldIHw9ICh2ICYgfih+MFVMTCA8PCBzaXplKSkgPDwgb2Zmc2V0OyAgfQorI2RlZmluZSBLRVlfRklFTEQobmFtZSxmaWVsZCxvZmZzZXQsc2l6ZSkgQklUTUFTSyhuYW1lLCBzdHJ1Y3QgYmtleSwgZmllbGQsIG9mZnNldCwgc2l6ZSkKKyNkZWZpbmUgUFRSX0ZJRUxEKG5hbWUsb2Zmc2V0LHNpemUpIHN0YXRpYyBpbmxpbmUgX191NjQgbmFtZShjb25zdCBzdHJ1Y3QgYmtleSAqIGssIHVuc2lnbmVkIGkpIFwKK3sgcmV0dXJuKGstPnB0cltpXSA+PiBvZmZzZXQpICYgfih+MFVMTCA8PCBzaXplKTsgfSBzdGF0aWMgaW5saW5lIHZvaWQgU0VUXyAjI25hbWUoc3RydWN0IGJrZXkgKiBrLCB1bnNpZ25lZCBpLCBfX3U2NCB2KSBcCit7IGstPnB0cltpXSAmPSB+KH4ofjBVTEwgPDwgc2l6ZSkgPDwgb2Zmc2V0KTsgay0+cHRyW2ldIHw9ICh2ICYgfih+MFVMTCA8PCBzaXplKSkgPDwgb2Zmc2V0OyBcCit9CiAjZGVmaW5lIEtFWV9TSVpFX0JJVFMgMTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtFWV9NQVhfVTY0UyA4Ci0jZGVmaW5lIEtFWShpbm9kZSwgb2Zmc2V0LCBzaXplKSAgKChzdHJ1Y3QgYmtleSkgeyAgIC5oaWdoID0gKDFVTEwgPDwgNjMpIHwgKChfX3U2NCkgKHNpemUpIDw8IDIwKSB8IChpbm9kZSksICAgLmxvdyA9IChvZmZzZXQpICB9KQorI2RlZmluZSBLRVkoaW5vZGUsb2Zmc2V0LHNpemUpIFwKKygoc3RydWN0IGJrZXkpIHsuaGlnaCA9ICgxVUxMIDw8IDYzKSB8ICgoX191NjQpIChzaXplKSA8PCAyMCkgfCAoaW5vZGUpLC5sb3cgPSAob2Zmc2V0KSBcCit9KQogI2RlZmluZSBaRVJPX0tFWSBLRVkoMCwgMCwgMCkKICNkZWZpbmUgTUFYX0tFWV9JTk9ERSAofih+MCA8PCAyMCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNDMsMTEgKzUxLDExIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQVFJfREVWX0JJVFMgMTIKICNkZWZpbmUgUFRSX0NIRUNLX0RFViAoKDEgPDwgUFRSX0RFVl9CSVRTKSAtIDEpCi0jZGVmaW5lIFBUUihnZW4sIG9mZnNldCwgZGV2KSAgICgoKChfX3U2NCkgZGV2KSA8PCA1MSkgfCAoKF9fdTY0KSBvZmZzZXQpIDw8IDggfCBnZW4pCi0jZGVmaW5lIGJrZXlfY29weShfZGVzdCwgX3NyYykgbWVtY3B5KF9kZXN0LCBfc3JjLCBia2V5X2J5dGVzKF9zcmMpKQorI2RlZmluZSBQVFIoZ2VuLG9mZnNldCxkZXYpICgoKChfX3U2NCkgZGV2KSA8PCA1MSkgfCAoKF9fdTY0KSBvZmZzZXQpIDw8IDggfCBnZW4pCisjZGVmaW5lIGJrZXlfY29weShfZGVzdCxfc3JjKSBtZW1jcHkoX2Rlc3QsIF9zcmMsIGJrZXlfYnl0ZXMoX3NyYykpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCS0VZX1BBRCA4Ci0jZGVmaW5lIEJLRVlfUEFEREVEKGtleSkgICB1bmlvbiB7IHN0cnVjdCBia2V5IGtleTsgX191NjQga2V5ICMjIF9wYWRbQktFWV9QQURdOyB9CisjZGVmaW5lIEJLRVlfUEFEREVEKGtleSkgdW5pb24geyBzdHJ1Y3QgYmtleSBrZXk7IF9fdTY0IGtleSAjI19wYWRbQktFWV9QQURdOyB9CiAjZGVmaW5lIEJDQUNIRV9TQl9WRVJTSU9OX0NERVYgMAogI2RlZmluZSBCQ0FDSEVfU0JfVkVSU0lPTl9CREVWIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC02Myw0NiArNzEsNDYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJERVZfREFUQV9TVEFSVF9ERUZBVUxUIDE2CiBzdHJ1Y3QgY2FjaGVfc2IgewotIF9fdTY0IGNzdW07Ci0gX191NjQgb2Zmc2V0OworICBfX3U2NCBjc3VtOworICBfX3U2NCBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHZlcnNpb247Ci0gX191OCBtYWdpY1sxNl07Ci0gX191OCB1dWlkWzE2XTsKLSB1bmlvbiB7CisgIF9fdTY0IHZlcnNpb247CisgIF9fdTggbWFnaWNbMTZdOworICBfX3U4IHV1aWRbMTZdOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2V0X3V1aWRbMTZdOwotIF9fdTY0IHNldF9tYWdpYzsKLSB9OwotIF9fdTggbGFiZWxbU0JfTEFCRUxfU0laRV07CisgICAgX191OCBzZXRfdXVpZFsxNl07CisgICAgX191NjQgc2V0X21hZ2ljOworICB9OworICBfX3U4IGxhYmVsW1NCX0xBQkVMX1NJWkVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBmbGFnczsKLSBfX3U2NCBzZXE7Ci0gX191NjQgcGFkWzhdOwotIHVuaW9uIHsKKyAgX191NjQgZmxhZ3M7CisgIF9fdTY0IHNlcTsKKyAgX191NjQgcGFkWzhdOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX191NjQgbmJ1Y2tldHM7Ci0gX191MTYgYmxvY2tfc2l6ZTsKLSBfX3UxNiBidWNrZXRfc2l6ZTsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgbmJ1Y2tldHM7CisgICAgICBfX3UxNiBibG9ja19zaXplOworICAgICAgX191MTYgYnVja2V0X3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG5yX2luX3NldDsKLSBfX3UxNiBucl90aGlzX2RldjsKLSB9OwotIHN0cnVjdCB7CisgICAgICBfX3UxNiBucl9pbl9zZXQ7CisgICAgICBfX3UxNiBucl90aGlzX2RldjsKKyAgICB9OworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRhdGFfb2Zmc2V0OwotIH07Ci0gfTsKLSBfX3UzMiBsYXN0X21vdW50OworICAgICAgX191NjQgZGF0YV9vZmZzZXQ7CisgICAgfTsKKyAgfTsKKyAgX191MzIgbGFzdF9tb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZmlyc3RfYnVja2V0OwotIHVuaW9uIHsKLSBfX3UxNiBuam91cm5hbF9idWNrZXRzOwotIF9fdTE2IGtleXM7CisgIF9fdTE2IGZpcnN0X2J1Y2tldDsKKyAgdW5pb24geworICAgIF9fdTE2IG5qb3VybmFsX2J1Y2tldHM7CisgICAgX191MTYga2V5czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKLSBfX3U2NCBkW1NCX0pPVVJOQUxfQlVDS0VUU107CisgIH07CisgIF9fdTY0IGRbU0JfSk9VUk5BTF9CVUNLRVRTXTsKIH07CiAjZGVmaW5lIENBQ0hFX1JFUExBQ0VNRU5UX0xSVSAwVQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTEyNyw4MyArMTM1LDgzIEBACiAjZGVmaW5lIEJDQUNIRV9KU0VUX1ZFUlNJT04gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBqc2V0IHsKLSBfX3U2NCBjc3VtOwotIF9fdTY0IG1hZ2ljOwotIF9fdTY0IHNlcTsKKyAgX191NjQgY3N1bTsKKyAgX191NjQgbWFnaWM7CisgIF9fdTY0IHNlcTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdmVyc2lvbjsKLSBfX3UzMiBrZXlzOwotIF9fdTY0IGxhc3Rfc2VxOwotIEJLRVlfUEFEREVEKHV1aWRfYnVja2V0KTsKKyAgX191MzIgdmVyc2lvbjsKKyAgX191MzIga2V5czsKKyAgX191NjQgbGFzdF9zZXE7CisgIEJLRVlfUEFEREVEKHV1aWRfYnVja2V0KTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQktFWV9QQURERUQoYnRyZWVfcm9vdCk7Ci0gX191MTYgYnRyZWVfbGV2ZWw7Ci0gX191MTYgcGFkWzNdOwotIF9fdTY0IHByaW9fYnVja2V0W01BWF9DQUNIRVNfUEVSX1NFVF07CisgIEJLRVlfUEFEREVEKGJ0cmVlX3Jvb3QpOworICBfX3UxNiBidHJlZV9sZXZlbDsKKyAgX191MTYgcGFkWzNdOworICBfX3U2NCBwcmlvX2J1Y2tldFtNQVhfQ0FDSEVTX1BFUl9TRVRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IGJrZXkgc3RhcnRbMF07Ci0gX191NjQgZFswXTsKLSB9OworICB1bmlvbiB7CisgICAgc3RydWN0IGJrZXkgc3RhcnRbMF07CisgICAgX191NjQgZFswXTsKKyAgfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHByaW9fc2V0IHsKLSBfX3U2NCBjc3VtOwotIF9fdTY0IG1hZ2ljOworICBfX3U2NCBjc3VtOworICBfX3U2NCBtYWdpYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc2VxOwotIF9fdTMyIHZlcnNpb247Ci0gX191MzIgcGFkOwotIF9fdTY0IG5leHRfYnVja2V0OworICBfX3U2NCBzZXE7CisgIF9fdTMyIHZlcnNpb247CisgIF9fdTMyIHBhZDsKKyAgX191NjQgbmV4dF9idWNrZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBidWNrZXRfZGlzayB7Ci0gX191MTYgcHJpbzsKLSBfX3U4IGdlbjsKLSB9IF9fYXR0cmlidXRlKChwYWNrZWQpKSBkYXRhW107CisgIHN0cnVjdCBidWNrZXRfZGlzayB7CisgICAgX191MTYgcHJpbzsKKyAgICBfX3U4IGdlbjsKKyAgfSBfX2F0dHJpYnV0ZSgocGFja2VkKSkgZGF0YVtdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdXVpZF9lbnRyeSB7Ci0gdW5pb24gewotIHN0cnVjdCB7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHV1aWRbMTZdOwotIF9fdTggbGFiZWxbMzJdOwotIF9fdTMyIGZpcnN0X3JlZzsKLSBfX3UzMiBsYXN0X3JlZzsKKyAgICAgIF9fdTggdXVpZFsxNl07CisgICAgICBfX3U4IGxhYmVsWzMyXTsKKyAgICAgIF9fdTMyIGZpcnN0X3JlZzsKKyAgICAgIF9fdTMyIGxhc3RfcmVnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbnZhbGlkYXRlZDsKLSBfX3UzMiBmbGFnczsKLSBfX3U2NCBzZWN0b3JzOwotIH07CisgICAgICBfX3UzMiBpbnZhbGlkYXRlZDsKKyAgICAgIF9fdTMyIGZsYWdzOworICAgICAgX191NjQgc2VjdG9yczsKKyAgICB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBhZFsxMjhdOwotIH07CisgICAgX191OCBwYWRbMTI4XTsKKyAgfTsKIH07CiAjZGVmaW5lIEJDQUNIRV9CU0VUX0NTVU0gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQkNBQ0hFX0JTRVRfVkVSU0lPTiAxCiBzdHJ1Y3QgYnNldCB7Ci0gX191NjQgY3N1bTsKLSBfX3U2NCBtYWdpYzsKKyAgX191NjQgY3N1bTsKKyAgX191NjQgbWFnaWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNlcTsKLSBfX3UzMiB2ZXJzaW9uOwotIF9fdTMyIGtleXM7Ci0gdW5pb24geworICBfX3U2NCBzZXE7CisgIF9fdTMyIHZlcnNpb247CisgIF9fdTMyIGtleXM7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGJrZXkgc3RhcnRbMF07Ci0gX191NjQgZFswXTsKLSB9OworICAgIHN0cnVjdCBia2V5IHN0YXJ0WzBdOworICAgIF9fdTY0IGRbMF07CisgIH07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1dWlkX2VudHJ5X3YwIHsKLSBfX3U4IHV1aWRbMTZdOwotIF9fdTggbGFiZWxbMzJdOwotIF9fdTMyIGZpcnN0X3JlZzsKKyAgX191OCB1dWlkWzE2XTsKKyAgX191OCBsYWJlbFszMl07CisgIF9fdTMyIGZpcnN0X3JlZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGFzdF9yZWc7Ci0gX191MzIgaW52YWxpZGF0ZWQ7Ci0gX191MzIgcGFkOworICBfX3UzMiBsYXN0X3JlZzsKKyAgX191MzIgaW52YWxpZGF0ZWQ7CisgIF9fdTMyIHBhZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JjbTkzM3h4X2hjcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iY205MzN4eF9oY3MuaAppbmRleCAwNzQyOTk1Li5iZWFmODI3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JjbTkzM3h4X2hjcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmNtOTMzeHhfaGNzLmgKQEAgLTIxLDE5ICsyMSwxOSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgYmNtX2hjcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG1hZ2ljOwotIF9fdTE2IGNvbnRyb2w7Ci0gX191MTYgcmV2X21hajsKLSBfX3UxNiByZXZfbWluOworICBfX3UxNiBtYWdpYzsKKyAgX191MTYgY29udHJvbDsKKyAgX191MTYgcmV2X21hajsKKyAgX191MTYgcmV2X21pbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYnVpbGRfZGF0ZTsKLSBfX3UzMiBmaWxlbGVuOwotIF9fdTMyIGxkYWRkcmVzczsKLSBjaGFyIGZpbGVuYW1lWzY0XTsKKyAgX191MzIgYnVpbGRfZGF0ZTsKKyAgX191MzIgZmlsZWxlbjsKKyAgX191MzIgbGRhZGRyZXNzOworICBjaGFyIGZpbGVuYW1lWzY0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgaGNzOwotIF9fdTE2IGhlcl96bmFldF9jaHRvOwotIF9fdTMyIGNyYzsKKyAgX191MTYgaGNzOworICBfX3UxNiBoZXJfem5hZXRfY2h0bzsKKyAgX191MzIgY3JjOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmZzX2ZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Jmc19mcy5oCmluZGV4IDc1ZmRlNzcuLmUyZTA2MTUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmZzX2ZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iZnNfZnMuaApAQCAtMjEsNyArMjEsNyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjZGVmaW5lIEJGU19CU0laRV9CSVRTIDkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJGU19CU0laRSAoMTw8QkZTX0JTSVpFX0JJVFMpCisjZGVmaW5lIEJGU19CU0laRSAoMSA8PCBCRlNfQlNJWkVfQklUUykKICNkZWZpbmUgQkZTX01BR0lDIDB4MUJBREZBQ0UKICNkZWZpbmUgQkZTX1JPT1RfSU5PIDIKICNkZWZpbmUgQkZTX0lOT0RFU19QRVJfQkxPQ0sgOApAQCAtMjksNTUgKzI5LDU1IEBACiAjZGVmaW5lIEJGU19WRElSIDJMCiAjZGVmaW5lIEJGU19WUkVHIDFMCiBzdHJ1Y3QgYmZzX2lub2RlIHsKLSBfX2xlMTYgaV9pbm87CisgIF9fbGUxNiBpX2lubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgaV91bnVzZWQ7Ci0gX19sZTMyIGlfc2Jsb2NrOwotIF9fbGUzMiBpX2VibG9jazsKLSBfX2xlMzIgaV9lb2Zmc2V0OworICBfX3UxNiBpX3VudXNlZDsKKyAgX19sZTMyIGlfc2Jsb2NrOworICBfX2xlMzIgaV9lYmxvY2s7CisgIF9fbGUzMiBpX2VvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBpX3Z0eXBlOwotIF9fbGUzMiBpX21vZGU7Ci0gX19sZTMyIGlfdWlkOwotIF9fbGUzMiBpX2dpZDsKKyAgX19sZTMyIGlfdnR5cGU7CisgIF9fbGUzMiBpX21vZGU7CisgIF9fbGUzMiBpX3VpZDsKKyAgX19sZTMyIGlfZ2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgaV9ubGluazsKLSBfX2xlMzIgaV9hdGltZTsKLSBfX2xlMzIgaV9tdGltZTsKLSBfX2xlMzIgaV9jdGltZTsKKyAgX19sZTMyIGlfbmxpbms7CisgIF9fbGUzMiBpX2F0aW1lOworICBfX2xlMzIgaV9tdGltZTsKKyAgX19sZTMyIGlfY3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlfcGFkZGluZ1s0XTsKKyAgX191MzIgaV9wYWRkaW5nWzRdOwogfTsKICNkZWZpbmUgQkZTX05BTUVMRU4gMTQKICNkZWZpbmUgQkZTX0RJUkVOVF9TSVpFIDE2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCRlNfRElSU19QRVJfQkxPQ0sgMzIKIHN0cnVjdCBiZnNfZGlyZW50IHsKLSBfX2xlMTYgaW5vOwotIGNoYXIgbmFtZVtCRlNfTkFNRUxFTl07CisgIF9fbGUxNiBpbm87CisgIGNoYXIgbmFtZVtCRlNfTkFNRUxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBiZnNfc3VwZXJfYmxvY2sgewotIF9fbGUzMiBzX21hZ2ljOwotIF9fbGUzMiBzX3N0YXJ0OworICBfX2xlMzIgc19tYWdpYzsKKyAgX19sZTMyIHNfc3RhcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBzX2VuZDsKLSBfX2xlMzIgc19mcm9tOwotIF9fbGUzMiBzX3RvOwotIF9fczMyIHNfYmZyb207CisgIF9fbGUzMiBzX2VuZDsKKyAgX19sZTMyIHNfZnJvbTsKKyAgX19sZTMyIHNfdG87CisgIF9fczMyIHNfYmZyb207CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIHNfYnRvOwotIGNoYXIgc19mc25hbWVbNl07Ci0gY2hhciBzX3ZvbHVtZVs2XTsKLSBfX3UzMiBzX3BhZGRpbmdbMTE4XTsKKyAgX19zMzIgc19idG87CisgIGNoYXIgc19mc25hbWVbNl07CisgIGNoYXIgc192b2x1bWVbNl07CisgIF9fdTMyIHNfcGFkZGluZ1sxMThdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIEJGU19PRkYySU5PKG9mZnNldCkgICAoKCgob2Zmc2V0KSAtIEJGU19CU0laRSkgLyBzaXplb2Yoc3RydWN0IGJmc19pbm9kZSkpICsgQkZTX1JPT1RfSU5PKQotI2RlZmluZSBCRlNfSU5PMk9GRihpbm8pICAgKChfX3UzMikoKChpbm8pIC0gQkZTX1JPT1RfSU5PKSAqIHNpemVvZihzdHJ1Y3QgYmZzX2lub2RlKSkgKyBCRlNfQlNJWkUpCi0jZGVmaW5lIEJGU19OWkZJTEVTSVpFKGlwKSAgICgobGUzMl90b19jcHUoKGlwKS0+aV9lb2Zmc2V0KSArIDEpIC0gbGUzMl90b19jcHUoKGlwKS0+aV9zYmxvY2spICogQkZTX0JTSVpFKQorI2RlZmluZSBCRlNfT0ZGMklOTyhvZmZzZXQpICgoKChvZmZzZXQpIC0gQkZTX0JTSVpFKSAvIHNpemVvZihzdHJ1Y3QgYmZzX2lub2RlKSkgKyBCRlNfUk9PVF9JTk8pCisjZGVmaW5lIEJGU19JTk8yT0ZGKGlubykgKChfX3UzMikgKCgoaW5vKSAtIEJGU19ST09UX0lOTykgKiBzaXplb2Yoc3RydWN0IGJmc19pbm9kZSkpICsgQkZTX0JTSVpFKQorI2RlZmluZSBCRlNfTlpGSUxFU0laRShpcCkgKChsZTMyX3RvX2NwdSgoaXApLT5pX2VvZmZzZXQpICsgMSkgLSBsZTMyX3RvX2NwdSgoaXApLT5pX3NibG9jaykgKiBCRlNfQlNJWkUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCRlNfRklMRVNJWkUoaXApICAgKChpcCktPmlfc2Jsb2NrID09IDAgPyAwIDogQkZTX05aRklMRVNJWkUoaXApKQotI2RlZmluZSBCRlNfRklMRUJMT0NLUyhpcCkgICAoKGlwKS0+aV9zYmxvY2sgPT0gMCA/IDAgOiAobGUzMl90b19jcHUoKGlwKS0+aV9lYmxvY2spICsgMSkgLSBsZTMyX3RvX2NwdSgoaXApLT5pX3NibG9jaykpCi0jZGVmaW5lIEJGU19VTkNMRUFOKGJmc19zYiwgc2IpICAgKChsZTMyX3RvX2NwdShiZnNfc2ItPnNfZnJvbSkgIT0gLTEpICYmIChsZTMyX3RvX2NwdShiZnNfc2ItPnNfdG8pICE9IC0xKSAmJiAhKHNiLT5zX2ZsYWdzICYgTVNfUkRPTkxZKSkKKyNkZWZpbmUgQkZTX0ZJTEVTSVpFKGlwKSAoKGlwKS0+aV9zYmxvY2sgPT0gMCA/IDAgOiBCRlNfTlpGSUxFU0laRShpcCkpCisjZGVmaW5lIEJGU19GSUxFQkxPQ0tTKGlwKSAoKGlwKS0+aV9zYmxvY2sgPT0gMCA/IDAgOiAobGUzMl90b19jcHUoKGlwKS0+aV9lYmxvY2spICsgMSkgLSBsZTMyX3RvX2NwdSgoaXApLT5pX3NibG9jaykpCisjZGVmaW5lIEJGU19VTkNMRUFOKGJmc19zYixzYikgKChsZTMyX3RvX2NwdShiZnNfc2ItPnNfZnJvbSkgIT0gLSAxKSAmJiAobGUzMl90b19jcHUoYmZzX3NiLT5zX3RvKSAhPSAtIDEpICYmICEgKHNiLT5zX2ZsYWdzICYgTVNfUkRPTkxZKSkKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmluZGVyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JpbmRlci5oCmluZGV4IDAyMTAxYWIuLmFmM2NlYTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmluZGVyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9iaW5kZXIuaApAQCAtMTksMjEgKzE5LDIxIEBACiAjaWZuZGVmIF9VQVBJX0xJTlVYX0JJTkRFUl9ICiAjZGVmaW5lIF9VQVBJX0xJTlVYX0JJTkRFUl9ICiAjaW5jbHVkZSA8bGludXgvaW9jdGwuaD4KLSNkZWZpbmUgQl9QQUNLX0NIQVJTKGMxLCBjMiwgYzMsIGM0KSAgICgoKChjMSk8PDI0KSkgfCAoKChjMik8PDE2KSkgfCAoKChjMyk8PDgpKSB8IChjNCkpCisjZGVmaW5lIEJfUEFDS19DSEFSUyhjMSxjMixjMyxjNCkgKCgoKGMxKSA8PCAyNCkpIHwgKCgoYzIpIDw8IDE2KSkgfCAoKChjMykgPDwgOCkpIHwgKGM0KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJfVFlQRV9MQVJHRSAweDg1CiBlbnVtIHsKLSBCSU5ERVJfVFlQRV9CSU5ERVIgPSBCX1BBQ0tfQ0hBUlMoJ3MnLCAnYicsICcqJywgQl9UWVBFX0xBUkdFKSwKLSBCSU5ERVJfVFlQRV9XRUFLX0JJTkRFUiA9IEJfUEFDS19DSEFSUygndycsICdiJywgJyonLCBCX1RZUEVfTEFSR0UpLAorICBCSU5ERVJfVFlQRV9CSU5ERVIgPSBCX1BBQ0tfQ0hBUlMoJ3MnLCAnYicsICcqJywgQl9UWVBFX0xBUkdFKSwKKyAgQklOREVSX1RZUEVfV0VBS19CSU5ERVIgPSBCX1BBQ0tfQ0hBUlMoJ3cnLCAnYicsICcqJywgQl9UWVBFX0xBUkdFKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQklOREVSX1RZUEVfSEFORExFID0gQl9QQUNLX0NIQVJTKCdzJywgJ2gnLCAnKicsIEJfVFlQRV9MQVJHRSksCi0gQklOREVSX1RZUEVfV0VBS19IQU5ETEUgPSBCX1BBQ0tfQ0hBUlMoJ3cnLCAnaCcsICcqJywgQl9UWVBFX0xBUkdFKSwKLSBCSU5ERVJfVFlQRV9GRCA9IEJfUEFDS19DSEFSUygnZicsICdkJywgJyonLCBCX1RZUEVfTEFSR0UpLAorICBCSU5ERVJfVFlQRV9IQU5ETEUgPSBCX1BBQ0tfQ0hBUlMoJ3MnLCAnaCcsICcqJywgQl9UWVBFX0xBUkdFKSwKKyAgQklOREVSX1RZUEVfV0VBS19IQU5ETEUgPSBCX1BBQ0tfQ0hBUlMoJ3cnLCAnaCcsICcqJywgQl9UWVBFX0xBUkdFKSwKKyAgQklOREVSX1RZUEVfRkQgPSBCX1BBQ0tfQ0hBUlMoJ2YnLCAnZCcsICcqJywgQl9UWVBFX0xBUkdFKSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gRkxBVF9CSU5ERVJfRkxBR19QUklPUklUWV9NQVNLID0gMHhmZiwKLSBGTEFUX0JJTkRFUl9GTEFHX0FDQ0VQVFNfRkRTID0gMHgxMDAsCisgIEZMQVRfQklOREVSX0ZMQUdfUFJJT1JJVFlfTUFTSyA9IDB4ZmYsCisgIEZMQVRfQklOREVSX0ZMQUdfQUNDRVBUU19GRFMgPSAweDEwMCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmZGVmIEJJTkRFUl9JUENfMzJCSVQKQEAgLTQ2LDI4ICs0NiwyOCBAQAogI2VuZGlmCiBzdHJ1Y3QgZmxhdF9iaW5kZXJfb2JqZWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UzMiBmbGFnczsKLSB1bmlvbiB7Ci0gYmluZGVyX3VpbnRwdHJfdCBiaW5kZXI7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGZsYWdzOworICB1bmlvbiB7CisgICAgYmluZGVyX3VpbnRwdHJfdCBiaW5kZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhbmRsZTsKLSB9OwotIGJpbmRlcl91aW50cHRyX3QgY29va2llOworICAgIF9fdTMyIGhhbmRsZTsKKyAgfTsKKyAgYmluZGVyX3VpbnRwdHJfdCBjb29raWU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBiaW5kZXJfd3JpdGVfcmVhZCB7Ci0gYmluZGVyX3NpemVfdCB3cml0ZV9zaXplOwotIGJpbmRlcl9zaXplX3Qgd3JpdGVfY29uc3VtZWQ7Ci0gYmluZGVyX3VpbnRwdHJfdCB3cml0ZV9idWZmZXI7CisgIGJpbmRlcl9zaXplX3Qgd3JpdGVfc2l6ZTsKKyAgYmluZGVyX3NpemVfdCB3cml0ZV9jb25zdW1lZDsKKyAgYmluZGVyX3VpbnRwdHJfdCB3cml0ZV9idWZmZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGJpbmRlcl9zaXplX3QgcmVhZF9zaXplOwotIGJpbmRlcl9zaXplX3QgcmVhZF9jb25zdW1lZDsKLSBiaW5kZXJfdWludHB0cl90IHJlYWRfYnVmZmVyOworICBiaW5kZXJfc2l6ZV90IHJlYWRfc2l6ZTsKKyAgYmluZGVyX3NpemVfdCByZWFkX2NvbnN1bWVkOworICBiaW5kZXJfdWludHB0cl90IHJlYWRfYnVmZmVyOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYmluZGVyX3ZlcnNpb24gewotIF9fczMyIHByb3RvY29sX3ZlcnNpb247CisgIF9fczMyIHByb3RvY29sX3ZlcnNpb247CiB9OwogI2lmZGVmIEJJTkRFUl9JUENfMzJCSVQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC04NiwxMDUgKzg2LDEwNSBAQAogI2RlZmluZSBCSU5ERVJfVkVSU0lPTiBfSU9XUignYicsIDksIHN0cnVjdCBiaW5kZXJfdmVyc2lvbikKIGVudW0gdHJhbnNhY3Rpb25fZmxhZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBURl9PTkVfV0FZID0gMHgwMSwKLSBURl9ST09UX09CSkVDVCA9IDB4MDQsCi0gVEZfU1RBVFVTX0NPREUgPSAweDA4LAotIFRGX0FDQ0VQVF9GRFMgPSAweDEwLAorICBURl9PTkVfV0FZID0gMHgwMSwKKyAgVEZfUk9PVF9PQkpFQ1QgPSAweDA0LAorICBURl9TVEFUVVNfQ09ERSA9IDB4MDgsCisgIFRGX0FDQ0VQVF9GRFMgPSAweDEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgYmluZGVyX3RyYW5zYWN0aW9uX2RhdGEgewotIHVuaW9uIHsKLSBfX3UzMiBoYW5kbGU7CisgIHVuaW9uIHsKKyAgICBfX3UzMiBoYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGJpbmRlcl91aW50cHRyX3QgcHRyOwotIH0gdGFyZ2V0OwotIGJpbmRlcl91aW50cHRyX3QgY29va2llOwotIF9fdTMyIGNvZGU7CisgICAgYmluZGVyX3VpbnRwdHJfdCBwdHI7CisgIH0gdGFyZ2V0OworICBiaW5kZXJfdWludHB0cl90IGNvb2tpZTsKKyAgX191MzIgY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7Ci0gcGlkX3Qgc2VuZGVyX3BpZDsKLSB1aWRfdCBzZW5kZXJfZXVpZDsKLSBiaW5kZXJfc2l6ZV90IGRhdGFfc2l6ZTsKKyAgX191MzIgZmxhZ3M7CisgIHBpZF90IHNlbmRlcl9waWQ7CisgIHVpZF90IHNlbmRlcl9ldWlkOworICBiaW5kZXJfc2l6ZV90IGRhdGFfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYmluZGVyX3NpemVfdCBvZmZzZXRzX3NpemU7Ci0gdW5pb24gewotIHN0cnVjdCB7Ci0gYmluZGVyX3VpbnRwdHJfdCBidWZmZXI7CisgIGJpbmRlcl9zaXplX3Qgb2Zmc2V0c19zaXplOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIGJpbmRlcl91aW50cHRyX3QgYnVmZmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBiaW5kZXJfdWludHB0cl90IG9mZnNldHM7Ci0gfSBwdHI7Ci0gX191OCBidWZbOF07Ci0gfSBkYXRhOworICAgICAgYmluZGVyX3VpbnRwdHJfdCBvZmZzZXRzOworICAgIH0gcHRyOworICAgIF9fdTggYnVmWzhdOworICB9IGRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBiaW5kZXJfcHRyX2Nvb2tpZSB7Ci0gYmluZGVyX3VpbnRwdHJfdCBwdHI7Ci0gYmluZGVyX3VpbnRwdHJfdCBjb29raWU7CisgIGJpbmRlcl91aW50cHRyX3QgcHRyOworICBiaW5kZXJfdWludHB0cl90IGNvb2tpZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGJpbmRlcl9oYW5kbGVfY29va2llIHsKLSBfX3UzMiBoYW5kbGU7Ci0gYmluZGVyX3VpbnRwdHJfdCBjb29raWU7CisgIF9fdTMyIGhhbmRsZTsKKyAgYmluZGVyX3VpbnRwdHJfdCBjb29raWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKK30gX19wYWNrZWQ7CiBzdHJ1Y3QgYmluZGVyX3ByaV9kZXNjIHsKLSBfX3MzMiBwcmlvcml0eTsKLSBfX3UzMiBkZXNjOworICBfX3MzMiBwcmlvcml0eTsKKyAgX191MzIgZGVzYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGJpbmRlcl9wcmlfcHRyX2Nvb2tpZSB7Ci0gX19zMzIgcHJpb3JpdHk7Ci0gYmluZGVyX3VpbnRwdHJfdCBwdHI7CisgIF9fczMyIHByaW9yaXR5OworICBiaW5kZXJfdWludHB0cl90IHB0cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYmluZGVyX3VpbnRwdHJfdCBjb29raWU7CisgIGJpbmRlcl91aW50cHRyX3QgY29va2llOwogfTsKIGVudW0gYmluZGVyX2RyaXZlcl9yZXR1cm5fcHJvdG9jb2wgewotIEJSX0VSUk9SID0gX0lPUigncicsIDAsIF9fczMyKSwKKyAgQlJfRVJST1IgPSBfSU9SKCdyJywgMCwgX19zMzIpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCUl9PSyA9IF9JTygncicsIDEpLAotIEJSX1RSQU5TQUNUSU9OID0gX0lPUigncicsIDIsIHN0cnVjdCBiaW5kZXJfdHJhbnNhY3Rpb25fZGF0YSksCi0gQlJfUkVQTFkgPSBfSU9SKCdyJywgMywgc3RydWN0IGJpbmRlcl90cmFuc2FjdGlvbl9kYXRhKSwKLSBCUl9BQ1FVSVJFX1JFU1VMVCA9IF9JT1IoJ3InLCA0LCBfX3MzMiksCisgIEJSX09LID0gX0lPKCdyJywgMSksCisgIEJSX1RSQU5TQUNUSU9OID0gX0lPUigncicsIDIsIHN0cnVjdCBiaW5kZXJfdHJhbnNhY3Rpb25fZGF0YSksCisgIEJSX1JFUExZID0gX0lPUigncicsIDMsIHN0cnVjdCBiaW5kZXJfdHJhbnNhY3Rpb25fZGF0YSksCisgIEJSX0FDUVVJUkVfUkVTVUxUID0gX0lPUigncicsIDQsIF9fczMyKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQlJfREVBRF9SRVBMWSA9IF9JTygncicsIDUpLAotIEJSX1RSQU5TQUNUSU9OX0NPTVBMRVRFID0gX0lPKCdyJywgNiksCi0gQlJfSU5DUkVGUyA9IF9JT1IoJ3InLCA3LCBzdHJ1Y3QgYmluZGVyX3B0cl9jb29raWUpLAotIEJSX0FDUVVJUkUgPSBfSU9SKCdyJywgOCwgc3RydWN0IGJpbmRlcl9wdHJfY29va2llKSwKKyAgQlJfREVBRF9SRVBMWSA9IF9JTygncicsIDUpLAorICBCUl9UUkFOU0FDVElPTl9DT01QTEVURSA9IF9JTygncicsIDYpLAorICBCUl9JTkNSRUZTID0gX0lPUigncicsIDcsIHN0cnVjdCBiaW5kZXJfcHRyX2Nvb2tpZSksCisgIEJSX0FDUVVJUkUgPSBfSU9SKCdyJywgOCwgc3RydWN0IGJpbmRlcl9wdHJfY29va2llKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQlJfUkVMRUFTRSA9IF9JT1IoJ3InLCA5LCBzdHJ1Y3QgYmluZGVyX3B0cl9jb29raWUpLAotIEJSX0RFQ1JFRlMgPSBfSU9SKCdyJywgMTAsIHN0cnVjdCBiaW5kZXJfcHRyX2Nvb2tpZSksCi0gQlJfQVRURU1QVF9BQ1FVSVJFID0gX0lPUigncicsIDExLCBzdHJ1Y3QgYmluZGVyX3ByaV9wdHJfY29va2llKSwKLSBCUl9OT09QID0gX0lPKCdyJywgMTIpLAorICBCUl9SRUxFQVNFID0gX0lPUigncicsIDksIHN0cnVjdCBiaW5kZXJfcHRyX2Nvb2tpZSksCisgIEJSX0RFQ1JFRlMgPSBfSU9SKCdyJywgMTAsIHN0cnVjdCBiaW5kZXJfcHRyX2Nvb2tpZSksCisgIEJSX0FUVEVNUFRfQUNRVUlSRSA9IF9JT1IoJ3InLCAxMSwgc3RydWN0IGJpbmRlcl9wcmlfcHRyX2Nvb2tpZSksCisgIEJSX05PT1AgPSBfSU8oJ3InLCAxMiksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJSX1NQQVdOX0xPT1BFUiA9IF9JTygncicsIDEzKSwKLSBCUl9GSU5JU0hFRCA9IF9JTygncicsIDE0KSwKLSBCUl9ERUFEX0JJTkRFUiA9IF9JT1IoJ3InLCAxNSwgYmluZGVyX3VpbnRwdHJfdCksCi0gQlJfQ0xFQVJfREVBVEhfTk9USUZJQ0FUSU9OX0RPTkUgPSBfSU9SKCdyJywgMTYsIGJpbmRlcl91aW50cHRyX3QpLAorICBCUl9TUEFXTl9MT09QRVIgPSBfSU8oJ3InLCAxMyksCisgIEJSX0ZJTklTSEVEID0gX0lPKCdyJywgMTQpLAorICBCUl9ERUFEX0JJTkRFUiA9IF9JT1IoJ3InLCAxNSwgYmluZGVyX3VpbnRwdHJfdCksCisgIEJSX0NMRUFSX0RFQVRIX05PVElGSUNBVElPTl9ET05FID0gX0lPUigncicsIDE2LCBiaW5kZXJfdWludHB0cl90KSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQlJfRkFJTEVEX1JFUExZID0gX0lPKCdyJywgMTcpLAorICBCUl9GQUlMRURfUkVQTFkgPSBfSU8oJ3InLCAxNyksCiB9OwogZW51bSBiaW5kZXJfZHJpdmVyX2NvbW1hbmRfcHJvdG9jb2wgewotIEJDX1RSQU5TQUNUSU9OID0gX0lPVygnYycsIDAsIHN0cnVjdCBiaW5kZXJfdHJhbnNhY3Rpb25fZGF0YSksCisgIEJDX1RSQU5TQUNUSU9OID0gX0lPVygnYycsIDAsIHN0cnVjdCBiaW5kZXJfdHJhbnNhY3Rpb25fZGF0YSksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJDX1JFUExZID0gX0lPVygnYycsIDEsIHN0cnVjdCBiaW5kZXJfdHJhbnNhY3Rpb25fZGF0YSksCi0gQkNfQUNRVUlSRV9SRVNVTFQgPSBfSU9XKCdjJywgMiwgX19zMzIpLAotIEJDX0ZSRUVfQlVGRkVSID0gX0lPVygnYycsIDMsIGJpbmRlcl91aW50cHRyX3QpLAotIEJDX0lOQ1JFRlMgPSBfSU9XKCdjJywgNCwgX191MzIpLAorICBCQ19SRVBMWSA9IF9JT1coJ2MnLCAxLCBzdHJ1Y3QgYmluZGVyX3RyYW5zYWN0aW9uX2RhdGEpLAorICBCQ19BQ1FVSVJFX1JFU1VMVCA9IF9JT1coJ2MnLCAyLCBfX3MzMiksCisgIEJDX0ZSRUVfQlVGRkVSID0gX0lPVygnYycsIDMsIGJpbmRlcl91aW50cHRyX3QpLAorICBCQ19JTkNSRUZTID0gX0lPVygnYycsIDQsIF9fdTMyKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQkNfQUNRVUlSRSA9IF9JT1coJ2MnLCA1LCBfX3UzMiksCi0gQkNfUkVMRUFTRSA9IF9JT1coJ2MnLCA2LCBfX3UzMiksCi0gQkNfREVDUkVGUyA9IF9JT1coJ2MnLCA3LCBfX3UzMiksCi0gQkNfSU5DUkVGU19ET05FID0gX0lPVygnYycsIDgsIHN0cnVjdCBiaW5kZXJfcHRyX2Nvb2tpZSksCisgIEJDX0FDUVVJUkUgPSBfSU9XKCdjJywgNSwgX191MzIpLAorICBCQ19SRUxFQVNFID0gX0lPVygnYycsIDYsIF9fdTMyKSwKKyAgQkNfREVDUkVGUyA9IF9JT1coJ2MnLCA3LCBfX3UzMiksCisgIEJDX0lOQ1JFRlNfRE9ORSA9IF9JT1coJ2MnLCA4LCBzdHJ1Y3QgYmluZGVyX3B0cl9jb29raWUpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCQ19BQ1FVSVJFX0RPTkUgPSBfSU9XKCdjJywgOSwgc3RydWN0IGJpbmRlcl9wdHJfY29va2llKSwKLSBCQ19BVFRFTVBUX0FDUVVJUkUgPSBfSU9XKCdjJywgMTAsIHN0cnVjdCBiaW5kZXJfcHJpX2Rlc2MpLAotIEJDX1JFR0lTVEVSX0xPT1BFUiA9IF9JTygnYycsIDExKSwKLSBCQ19FTlRFUl9MT09QRVIgPSBfSU8oJ2MnLCAxMiksCisgIEJDX0FDUVVJUkVfRE9ORSA9IF9JT1coJ2MnLCA5LCBzdHJ1Y3QgYmluZGVyX3B0cl9jb29raWUpLAorICBCQ19BVFRFTVBUX0FDUVVJUkUgPSBfSU9XKCdjJywgMTAsIHN0cnVjdCBiaW5kZXJfcHJpX2Rlc2MpLAorICBCQ19SRUdJU1RFUl9MT09QRVIgPSBfSU8oJ2MnLCAxMSksCisgIEJDX0VOVEVSX0xPT1BFUiA9IF9JTygnYycsIDEyKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQkNfRVhJVF9MT09QRVIgPSBfSU8oJ2MnLCAxMyksCi0gQkNfUkVRVUVTVF9ERUFUSF9OT1RJRklDQVRJT04gPSBfSU9XKCdjJywgMTQsIHN0cnVjdCBiaW5kZXJfaGFuZGxlX2Nvb2tpZSksCi0gQkNfQ0xFQVJfREVBVEhfTk9USUZJQ0FUSU9OID0gX0lPVygnYycsIDE1LCBzdHJ1Y3QgYmluZGVyX2hhbmRsZV9jb29raWUpLAotIEJDX0RFQURfQklOREVSX0RPTkUgPSBfSU9XKCdjJywgMTYsIGJpbmRlcl91aW50cHRyX3QpLAorICBCQ19FWElUX0xPT1BFUiA9IF9JTygnYycsIDEzKSwKKyAgQkNfUkVRVUVTVF9ERUFUSF9OT1RJRklDQVRJT04gPSBfSU9XKCdjJywgMTQsIHN0cnVjdCBiaW5kZXJfaGFuZGxlX2Nvb2tpZSksCisgIEJDX0NMRUFSX0RFQVRIX05PVElGSUNBVElPTiA9IF9JT1coJ2MnLCAxNSwgc3RydWN0IGJpbmRlcl9oYW5kbGVfY29va2llKSwKKyAgQkNfREVBRF9CSU5ERVJfRE9ORSA9IF9JT1coJ2MnLCAxNiwgYmluZGVyX3VpbnRwdHJfdCksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ibGtwZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ibGtwZy5oCmluZGV4IDhiODA4MDkuLjM1Yjk3MzAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmxrcGcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Jsa3BnLmgKQEAgLTIxLDEzICsyMSwxMyBAQAogI2luY2x1ZGUgPGxpbnV4L2NvbXBpbGVyLmg+CiAjaW5jbHVkZSA8bGludXgvaW9jdGwuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJMS1BHIF9JTygweDEyLDEwNSkKKyNkZWZpbmUgQkxLUEcgX0lPKDB4MTIsIDEwNSkKIHN0cnVjdCBibGtwZ19pb2N0bF9hcmcgewotIGludCBvcDsKLSBpbnQgZmxhZ3M7CisgIGludCBvcDsKKyAgaW50IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZGF0YWxlbjsKLSB2b2lkIF9fdXNlciAqZGF0YTsKKyAgaW50IGRhdGFsZW47CisgIHZvaWQgX191c2VyICogZGF0YTsKIH07CiAjZGVmaW5lIEJMS1BHX0FERF9QQVJUSVRJT04gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTM3LDEyICszNywxMiBAQAogI2RlZmluZSBCTEtQR19WT0xOQU1FTFRIIDY0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGJsa3BnX3BhcnRpdGlvbiB7Ci0gbG9uZyBsb25nIHN0YXJ0OwotIGxvbmcgbG9uZyBsZW5ndGg7Ci0gaW50IHBubzsKKyAgbG9uZyBsb25nIHN0YXJ0OworICBsb25nIGxvbmcgbGVuZ3RoOworICBpbnQgcG5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGRldm5hbWVbQkxLUEdfREVWTkFNRUxUSF07Ci0gY2hhciB2b2xuYW1lW0JMS1BHX1ZPTE5BTUVMVEhdOworICBjaGFyIGRldm5hbWVbQkxLUEdfREVWTkFNRUxUSF07CisgIGNoYXIgdm9sbmFtZVtCTEtQR19WT0xOQU1FTFRIXTsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Jsa3RyYWNlX2FwaS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ibGt0cmFjZV9hcGkuaAppbmRleCBkODQxN2JjLi5hYWNlZTE1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Jsa3RyYWNlX2FwaS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYmxrdHJhY2VfYXBpLmgKQEAgLTIxLDYwICsyMSw2MCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIGJsa3RyYWNlX2NhdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJMS19UQ19SRUFEID0gMSA8PCAwLAotIEJMS19UQ19XUklURSA9IDEgPDwgMSwKLSBCTEtfVENfRkxVU0ggPSAxIDw8IDIsCi0gQkxLX1RDX1NZTkMgPSAxIDw8IDMsCisgIEJMS19UQ19SRUFEID0gMSA8PCAwLAorICBCTEtfVENfV1JJVEUgPSAxIDw8IDEsCisgIEJMS19UQ19GTFVTSCA9IDEgPDwgMiwKKyAgQkxLX1RDX1NZTkMgPSAxIDw8IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJMS19UQ19TWU5DSU8gPSBCTEtfVENfU1lOQywKLSBCTEtfVENfUVVFVUUgPSAxIDw8IDQsCi0gQkxLX1RDX1JFUVVFVUUgPSAxIDw8IDUsCi0gQkxLX1RDX0lTU1VFID0gMSA8PCA2LAorICBCTEtfVENfU1lOQ0lPID0gQkxLX1RDX1NZTkMsCisgIEJMS19UQ19RVUVVRSA9IDEgPDwgNCwKKyAgQkxLX1RDX1JFUVVFVUUgPSAxIDw8IDUsCisgIEJMS19UQ19JU1NVRSA9IDEgPDwgNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQkxLX1RDX0NPTVBMRVRFID0gMSA8PCA3LAotIEJMS19UQ19GUyA9IDEgPDwgOCwKLSBCTEtfVENfUEMgPSAxIDw8IDksCi0gQkxLX1RDX05PVElGWSA9IDEgPDwgMTAsCisgIEJMS19UQ19DT01QTEVURSA9IDEgPDwgNywKKyAgQkxLX1RDX0ZTID0gMSA8PCA4LAorICBCTEtfVENfUEMgPSAxIDw8IDksCisgIEJMS19UQ19OT1RJRlkgPSAxIDw8IDEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCTEtfVENfQUhFQUQgPSAxIDw8IDExLAotIEJMS19UQ19NRVRBID0gMSA8PCAxMiwKLSBCTEtfVENfRElTQ0FSRCA9IDEgPDwgMTMsCi0gQkxLX1RDX0RSVl9EQVRBID0gMSA8PCAxNCwKKyAgQkxLX1RDX0FIRUFEID0gMSA8PCAxMSwKKyAgQkxLX1RDX01FVEEgPSAxIDw8IDEyLAorICBCTEtfVENfRElTQ0FSRCA9IDEgPDwgMTMsCisgIEJMS19UQ19EUlZfREFUQSA9IDEgPDwgMTQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJMS19UQ19GVUEgPSAxIDw8IDE1LAotIEJMS19UQ19FTkQgPSAxIDw8IDE1LAorICBCTEtfVENfRlVBID0gMSA8PCAxNSwKKyAgQkxLX1RDX0VORCA9IDEgPDwgMTUsCiB9OwogI2RlZmluZSBCTEtfVENfU0hJRlQgKDE2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQkxLX1RDX0FDVChhY3QpICgoYWN0KSA8PCBCTEtfVENfU0hJRlQpCiBlbnVtIGJsa3RyYWNlX2FjdCB7Ci0gX19CTEtfVEFfUVVFVUUgPSAxLAotIF9fQkxLX1RBX0JBQ0tNRVJHRSwKKyAgX19CTEtfVEFfUVVFVUUgPSAxLAorICBfX0JMS19UQV9CQUNLTUVSR0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQkxLX1RBX0ZST05UTUVSR0UsCi0gX19CTEtfVEFfR0VUUlEsCi0gX19CTEtfVEFfU0xFRVBSUSwKLSBfX0JMS19UQV9SRVFVRVVFLAorICBfX0JMS19UQV9GUk9OVE1FUkdFLAorICBfX0JMS19UQV9HRVRSUSwKKyAgX19CTEtfVEFfU0xFRVBSUSwKKyAgX19CTEtfVEFfUkVRVUVVRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19CTEtfVEFfSVNTVUUsCi0gX19CTEtfVEFfQ09NUExFVEUsCi0gX19CTEtfVEFfUExVRywKLSBfX0JMS19UQV9VTlBMVUdfSU8sCisgIF9fQkxLX1RBX0lTU1VFLAorICBfX0JMS19UQV9DT01QTEVURSwKKyAgX19CTEtfVEFfUExVRywKKyAgX19CTEtfVEFfVU5QTFVHX0lPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0JMS19UQV9VTlBMVUdfVElNRVIsCi0gX19CTEtfVEFfSU5TRVJULAotIF9fQkxLX1RBX1NQTElULAotIF9fQkxLX1RBX0JPVU5DRSwKKyAgX19CTEtfVEFfVU5QTFVHX1RJTUVSLAorICBfX0JMS19UQV9JTlNFUlQsCisgIF9fQkxLX1RBX1NQTElULAorICBfX0JMS19UQV9CT1VOQ0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQkxLX1RBX1JFTUFQLAotIF9fQkxLX1RBX0FCT1JULAotIF9fQkxLX1RBX0RSVl9EQVRBLAorICBfX0JMS19UQV9SRU1BUCwKKyAgX19CTEtfVEFfQUJPUlQsCisgIF9fQkxLX1RBX0RSVl9EQVRBLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGJsa3RyYWNlX25vdGlmeSB7Ci0gX19CTEtfVE5fUFJPQ0VTUyA9IDAsCi0gX19CTEtfVE5fVElNRVNUQU1QLAotIF9fQkxLX1ROX01FU1NBR0UsCisgIF9fQkxLX1ROX1BST0NFU1MgPSAwLAorICBfX0JMS19UTl9USU1FU1RBTVAsCisgIF9fQkxLX1ROX01FU1NBR0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQkxLX1RBX1FVRVVFIChfX0JMS19UQV9RVUVVRSB8IEJMS19UQ19BQ1QoQkxLX1RDX1FVRVVFKSkKQEAgLTg2LDcgKzg2LDcgQEAKICNkZWZpbmUgQkxLX1RBX1JFUVVFVUUgKF9fQkxLX1RBX1JFUVVFVUUgfCBCTEtfVENfQUNUKEJMS19UQ19SRVFVRVVFKSkKICNkZWZpbmUgQkxLX1RBX0lTU1VFIChfX0JMS19UQV9JU1NVRSB8IEJMS19UQ19BQ1QoQkxLX1RDX0lTU1VFKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJMS19UQV9DT01QTEVURSAoX19CTEtfVEFfQ09NUExFVEV8IEJMS19UQ19BQ1QoQkxLX1RDX0NPTVBMRVRFKSkKKyNkZWZpbmUgQkxLX1RBX0NPTVBMRVRFIChfX0JMS19UQV9DT01QTEVURSB8IEJMS19UQ19BQ1QoQkxLX1RDX0NPTVBMRVRFKSkKICNkZWZpbmUgQkxLX1RBX1BMVUcgKF9fQkxLX1RBX1BMVUcgfCBCTEtfVENfQUNUKEJMS19UQ19RVUVVRSkpCiAjZGVmaW5lIEJMS19UQV9VTlBMVUdfSU8gKF9fQkxLX1RBX1VOUExVR19JTyB8IEJMS19UQ19BQ1QoQkxLX1RDX1FVRVVFKSkKICNkZWZpbmUgQkxLX1RBX1VOUExVR19USU1FUiAoX19CTEtfVEFfVU5QTFVHX1RJTUVSIHwgQkxLX1RDX0FDVChCTEtfVENfUVVFVUUpKQpAQCAtMTA2LDQ0ICsxMDYsNDQgQEAKICNkZWZpbmUgQkxLX0lPX1RSQUNFX1ZFUlNJT04gMHgwNwogc3RydWN0IGJsa19pb190cmFjZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1hZ2ljOwotIF9fdTMyIHNlcXVlbmNlOwotIF9fdTY0IHRpbWU7Ci0gX191NjQgc2VjdG9yOworICBfX3UzMiBtYWdpYzsKKyAgX191MzIgc2VxdWVuY2U7CisgIF9fdTY0IHRpbWU7CisgIF9fdTY0IHNlY3RvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYnl0ZXM7Ci0gX191MzIgYWN0aW9uOwotIF9fdTMyIHBpZDsKLSBfX3UzMiBkZXZpY2U7CisgIF9fdTMyIGJ5dGVzOworICBfX3UzMiBhY3Rpb247CisgIF9fdTMyIHBpZDsKKyAgX191MzIgZGV2aWNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjcHU7Ci0gX191MTYgZXJyb3I7Ci0gX191MTYgcGR1X2xlbjsKKyAgX191MzIgY3B1OworICBfX3UxNiBlcnJvcjsKKyAgX191MTYgcGR1X2xlbjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGJsa19pb190cmFjZV9yZW1hcCB7Ci0gX19iZTMyIGRldmljZV9mcm9tOwotIF9fYmUzMiBkZXZpY2VfdG87Ci0gX19iZTY0IHNlY3Rvcl9mcm9tOworICBfX2JlMzIgZGV2aWNlX2Zyb207CisgIF9fYmUzMiBkZXZpY2VfdG87CisgIF9fYmU2NCBzZWN0b3JfZnJvbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gQmxrdHJhY2Vfc2V0dXAgPSAxLAotIEJsa3RyYWNlX3J1bm5pbmcsCisgIEJsa3RyYWNlX3NldHVwID0gMSwKKyAgQmxrdHJhY2VfcnVubmluZywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQmxrdHJhY2Vfc3RvcHBlZCwKKyAgQmxrdHJhY2Vfc3RvcHBlZCwKIH07CiAjZGVmaW5lIEJMS1RSQUNFX0JERVZfU0laRSAzMgogc3RydWN0IGJsa191c2VyX3RyYWNlX3NldHVwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBuYW1lW0JMS1RSQUNFX0JERVZfU0laRV07Ci0gX191MTYgYWN0X21hc2s7Ci0gX191MzIgYnVmX3NpemU7Ci0gX191MzIgYnVmX25yOworICBjaGFyIG5hbWVbQkxLVFJBQ0VfQkRFVl9TSVpFXTsKKyAgX191MTYgYWN0X21hc2s7CisgIF9fdTMyIGJ1Zl9zaXplOworICBfX3UzMiBidWZfbnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHN0YXJ0X2xiYTsKLSBfX3U2NCBlbmRfbGJhOwotIF9fdTMyIHBpZDsKKyAgX191NjQgc3RhcnRfbGJhOworICBfX3U2NCBlbmRfbGJhOworICBfX3UzMiBwaWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9icGYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnBmLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2M5ZjZkNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnBmLmgKQEAgLTAsMCArMSwxMjQgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKgorICoqKiAgIFRoaXMgaGVhZGVyIHdhcyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBmcm9tIGEgTGludXgga2VybmVsIGhlYWRlcgorICoqKiAgIG9mIHRoZSBzYW1lIG5hbWUsIHRvIG1ha2UgaW5mb3JtYXRpb24gbmVjZXNzYXJ5IGZvciB1c2Vyc3BhY2UgdG8KKyAqKiogICBjYWxsIGludG8gdGhlIGtlcm5lbCBhdmFpbGFibGUgdG8gbGliYy4gIEl0IGNvbnRhaW5zIG9ubHkgY29uc3RhbnRzLAorICoqKiAgIHN0cnVjdHVyZXMsIGFuZCBtYWNyb3MgZ2VuZXJhdGVkIGZyb20gdGhlIG9yaWdpbmFsIGhlYWRlciwgYW5kIHRodXMsCisgKioqICAgY29udGFpbnMgbm8gY29weXJpZ2h0YWJsZSBpbmZvcm1hdGlvbi4KKyAqKioKKyAqKiogICBUbyBlZGl0IHRoZSBjb250ZW50IG9mIHRoaXMgaGVhZGVyLCBtb2RpZnkgdGhlIGNvcnJlc3BvbmRpbmcKKyAqKiogICBzb3VyY2UgZmlsZSAoZS5nLiB1bmRlciBleHRlcm5hbC9rZXJuZWwtaGVhZGVycy9vcmlnaW5hbC8pIHRoZW4KKyAqKiogICBydW4gYmlvbmljL2xpYmMva2VybmVsL3Rvb2xzL3VwZGF0ZV9hbGwucHkKKyAqKioKKyAqKiogICBBbnkgbWFudWFsIGNoYW5nZSBoZXJlIHdpbGwgYmUgbG9zdCB0aGUgbmV4dCB0aW1lIHRoaXMgc2NyaXB0IHdpbGwKKyAqKiogICBiZSBydW4uIFlvdSd2ZSBiZWVuIHdhcm5lZCEKKyAqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNpZm5kZWYgX1VBUElfX0xJTlVYX0JQRl9IX18KKyNkZWZpbmUgX1VBUElfX0xJTlVYX0JQRl9IX18KKyNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgorI2luY2x1ZGUgPGxpbnV4L2JwZl9jb21tb24uaD4KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJQRl9BTFU2NCAweDA3CisjZGVmaW5lIEJQRl9EVyAweDE4CisjZGVmaW5lIEJQRl9YQUREIDB4YzAKKyNkZWZpbmUgQlBGX01PViAweGIwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCUEZfQVJTSCAweGMwCisjZGVmaW5lIEJQRl9FTkQgMHhkMAorI2RlZmluZSBCUEZfVE9fTEUgMHgwMAorI2RlZmluZSBCUEZfVE9fQkUgMHgwOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlBGX0ZST01fTEUgQlBGX1RPX0xFCisjZGVmaW5lIEJQRl9GUk9NX0JFIEJQRl9UT19CRQorI2RlZmluZSBCUEZfSk5FIDB4NTAKKyNkZWZpbmUgQlBGX0pTR1QgMHg2MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlBGX0pTR0UgMHg3MAorI2RlZmluZSBCUEZfQ0FMTCAweDgwCisjZGVmaW5lIEJQRl9FWElUIDB4OTAKK2VudW0geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgQlBGX1JFR18wID0gMCwKKyAgQlBGX1JFR18xLAorICBCUEZfUkVHXzIsCisgIEJQRl9SRUdfMywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEJQRl9SRUdfNCwKKyAgQlBGX1JFR181LAorICBCUEZfUkVHXzYsCisgIEJQRl9SRUdfNywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEJQRl9SRUdfOCwKKyAgQlBGX1JFR185LAorICBCUEZfUkVHXzEwLAorICBfX01BWF9CUEZfUkVHLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CisjZGVmaW5lIE1BWF9CUEZfUkVHIF9fTUFYX0JQRl9SRUcKK3N0cnVjdCBicGZfaW5zbiB7CisgIF9fdTggY29kZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggZHN0X3JlZyA6IDQ7CisgIF9fdTggc3JjX3JlZyA6IDQ7CisgIF9fczE2IG9mZjsKKyAgX19zMzIgaW1tOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIGJwZl9jbWQgeworICBCUEZfTUFQX0NSRUFURSwKKyAgQlBGX01BUF9MT09LVVBfRUxFTSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEJQRl9NQVBfVVBEQVRFX0VMRU0sCisgIEJQRl9NQVBfREVMRVRFX0VMRU0sCisgIEJQRl9NQVBfR0VUX05FWFRfS0VZLAorICBCUEZfUFJPR19MT0FELAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIGJwZl9tYXBfdHlwZSB7CisgIEJQRl9NQVBfVFlQRV9VTlNQRUMsCit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0gYnBmX3Byb2dfdHlwZSB7CisgIEJQRl9QUk9HX1RZUEVfVU5TUEVDLAorfTsKK3VuaW9uIGJwZl9hdHRyIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCB7CisgICAgX191MzIgbWFwX3R5cGU7CisgICAgX191MzIga2V5X3NpemU7CisgICAgX191MzIgdmFsdWVfc2l6ZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgX191MzIgbWF4X2VudHJpZXM7CisgIH07CisgIHN0cnVjdCB7CisgICAgX191MzIgbWFwX2ZkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICBfX2FsaWduZWRfdTY0IGtleTsKKyAgICB1bmlvbiB7CisgICAgICBfX2FsaWduZWRfdTY0IHZhbHVlOworICAgICAgX19hbGlnbmVkX3U2NCBuZXh0X2tleTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgfTsKKyAgfTsKKyAgc3RydWN0IHsKKyAgICBfX3UzMiBwcm9nX3R5cGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIF9fdTMyIGluc25fY250OworICAgIF9fYWxpZ25lZF91NjQgaW5zbnM7CisgICAgX19hbGlnbmVkX3U2NCBsaWNlbnNlOworICAgIF9fdTMyIGxvZ19sZXZlbDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgX191MzIgbG9nX3NpemU7CisgICAgX19hbGlnbmVkX3U2NCBsb2dfYnVmOworICB9OworfSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworZW51bSBicGZfZnVuY19pZCB7CisgIEJQRl9GVU5DX3Vuc3BlYywKKyAgX19CUEZfRlVOQ19NQVhfSUQsCit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9icGZfY29tbW9uLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JwZl9jb21tb24uaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MzE1YWFlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9icGZfY29tbW9uLmgKQEAgLTAsMCArMSw3NSBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqCisgKioqICAgVGhpcyBoZWFkZXIgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gYSBMaW51eCBrZXJuZWwgaGVhZGVyCisgKioqICAgb2YgdGhlIHNhbWUgbmFtZSwgdG8gbWFrZSBpbmZvcm1hdGlvbiBuZWNlc3NhcnkgZm9yIHVzZXJzcGFjZSB0bworICoqKiAgIGNhbGwgaW50byB0aGUga2VybmVsIGF2YWlsYWJsZSB0byBsaWJjLiAgSXQgY29udGFpbnMgb25seSBjb25zdGFudHMsCisgKioqICAgc3RydWN0dXJlcywgYW5kIG1hY3JvcyBnZW5lcmF0ZWQgZnJvbSB0aGUgb3JpZ2luYWwgaGVhZGVyLCBhbmQgdGh1cywKKyAqKiogICBjb250YWlucyBubyBjb3B5cmlnaHRhYmxlIGluZm9ybWF0aW9uLgorICoqKgorICoqKiAgIFRvIGVkaXQgdGhlIGNvbnRlbnQgb2YgdGhpcyBoZWFkZXIsIG1vZGlmeSB0aGUgY29ycmVzcG9uZGluZworICoqKiAgIHNvdXJjZSBmaWxlIChlLmcuIHVuZGVyIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzL29yaWdpbmFsLykgdGhlbgorICoqKiAgIHJ1biBiaW9uaWMvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorICoqKgorICoqKiAgIEFueSBtYW51YWwgY2hhbmdlIGhlcmUgd2lsbCBiZSBsb3N0IHRoZSBuZXh0IHRpbWUgdGhpcyBzY3JpcHQgd2lsbAorICoqKiAgIGJlIHJ1bi4gWW91J3ZlIGJlZW4gd2FybmVkIQorICoqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfVUFQSV9fTElOVVhfQlBGX0NPTU1PTl9IX18KKyNkZWZpbmUgX1VBUElfX0xJTlVYX0JQRl9DT01NT05fSF9fCisjZGVmaW5lIEJQRl9DTEFTUyhjb2RlKSAoKGNvZGUpICYgMHgwNykKKyNkZWZpbmUgQlBGX0xEIDB4MDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJQRl9MRFggMHgwMQorI2RlZmluZSBCUEZfU1QgMHgwMgorI2RlZmluZSBCUEZfU1RYIDB4MDMKKyNkZWZpbmUgQlBGX0FMVSAweDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCUEZfSk1QIDB4MDUKKyNkZWZpbmUgQlBGX1JFVCAweDA2CisjZGVmaW5lIEJQRl9NSVNDIDB4MDcKKyNkZWZpbmUgQlBGX1NJWkUoY29kZSkgKChjb2RlKSAmIDB4MTgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCUEZfVyAweDAwCisjZGVmaW5lIEJQRl9IIDB4MDgKKyNkZWZpbmUgQlBGX0IgMHgxMAorI2RlZmluZSBCUEZfTU9ERShjb2RlKSAoKGNvZGUpICYgMHhlMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJQRl9JTU0gMHgwMAorI2RlZmluZSBCUEZfQUJTIDB4MjAKKyNkZWZpbmUgQlBGX0lORCAweDQwCisjZGVmaW5lIEJQRl9NRU0gMHg2MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlBGX0xFTiAweDgwCisjZGVmaW5lIEJQRl9NU0ggMHhhMAorI2RlZmluZSBCUEZfT1AoY29kZSkgKChjb2RlKSAmIDB4ZjApCisjZGVmaW5lIEJQRl9BREQgMHgwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlBGX1NVQiAweDEwCisjZGVmaW5lIEJQRl9NVUwgMHgyMAorI2RlZmluZSBCUEZfRElWIDB4MzAKKyNkZWZpbmUgQlBGX09SIDB4NDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJQRl9BTkQgMHg1MAorI2RlZmluZSBCUEZfTFNIIDB4NjAKKyNkZWZpbmUgQlBGX1JTSCAweDcwCisjZGVmaW5lIEJQRl9ORUcgMHg4MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlBGX01PRCAweDkwCisjZGVmaW5lIEJQRl9YT1IgMHhhMAorI2RlZmluZSBCUEZfSkEgMHgwMAorI2RlZmluZSBCUEZfSkVRIDB4MTAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJQRl9KR1QgMHgyMAorI2RlZmluZSBCUEZfSkdFIDB4MzAKKyNkZWZpbmUgQlBGX0pTRVQgMHg0MAorI2RlZmluZSBCUEZfU1JDKGNvZGUpICgoY29kZSkgJiAweDA4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlBGX0sgMHgwMAorI2RlZmluZSBCUEZfWCAweDA4CisjaWZuZGVmIEJQRl9NQVhJTlNOUworI2RlZmluZSBCUEZfTUFYSU5TTlMgNDA5NgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgorI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JwcWV0aGVyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JwcWV0aGVyLmgKaW5kZXggZDFjNjVhOC4uMDljMDBkMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9icHFldGhlci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnBxZXRoZXIuaApAQCAtMjIsMjggKzIyLDI4IEBACiAjaW5jbHVkZSA8bGludXgvaWZfZXRoZXIuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKLSNkZWZpbmUgU0lPQ1NCUFFFVEhPUFQgKFNJT0NERVZQUklWQVRFKzApCi0jZGVmaW5lIFNJT0NTQlBRRVRIQUREUiAoU0lPQ0RFVlBSSVZBVEUrMSkKKyNkZWZpbmUgU0lPQ1NCUFFFVEhPUFQgKFNJT0NERVZQUklWQVRFICsgMCkKKyNkZWZpbmUgU0lPQ1NCUFFFVEhBRERSIChTSU9DREVWUFJJVkFURSArIDEpCiBzdHJ1Y3QgYnBxX2V0aGFkZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGRlc3RpbmF0aW9uW0VUSF9BTEVOXTsKLSB1bnNpZ25lZCBjaGFyIGFjY2VwdFtFVEhfQUxFTl07CisgIHVuc2lnbmVkIGNoYXIgZGVzdGluYXRpb25bRVRIX0FMRU5dOworICB1bnNpZ25lZCBjaGFyIGFjY2VwdFtFVEhfQUxFTl07CiB9OwogI2RlZmluZSBTSU9DR0JQUUVUSFBBUkFNIDB4NTAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0lPQ1NCUFFFVEhQQVJBTSAweDUwMDEKIHN0cnVjdCBicHFfcmVxIHsKLSBpbnQgY21kOwotIGludCBzcGVlZDsKKyAgaW50IGNtZDsKKyAgaW50IHNwZWVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2xvY2ttb2RlOwotIGludCB0eGRlbGF5OwotIHVuc2lnbmVkIGNoYXIgcGVyc2lzdDsKLSBpbnQgc2xvdGltZTsKKyAgaW50IGNsb2NrbW9kZTsKKyAgaW50IHR4ZGVsYXk7CisgIHVuc2lnbmVkIGNoYXIgcGVyc2lzdDsKKyAgaW50IHNsb3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzcXVlbGRlbGF5OwotIGludCBkbWFjaGFuOwotIGludCBpcnE7CisgIGludCBzcXVlbGRlbGF5OworICBpbnQgZG1hY2hhbjsKKyAgaW50IGlycTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JzZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ic2cuaAppbmRleCBhNGRmNTJhLi44MGNjODdjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2JzZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnNnLmgKQEAgLTI2LDQ4ICsyNiw0OSBAQAogI2RlZmluZSBCU0dfU1VCX1BST1RPQ09MX1NDU0lfVFJBTlNQT1JUIDIKICNkZWZpbmUgQlNHX0ZMQUdfUV9BVF9UQUlMIDB4MTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJTR19GTEFHX1FfQVRfSEVBRCAweDIwCiBzdHJ1Y3Qgc2dfaW9fdjQgewotIF9fczMyIGd1YXJkOwotIF9fdTMyIHByb3RvY29sOwotIF9fdTMyIHN1YnByb3RvY29sOworICBfX3MzMiBndWFyZDsKKyAgX191MzIgcHJvdG9jb2w7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlcXVlc3RfbGVuOwotIF9fdTY0IHJlcXVlc3Q7Ci0gX191NjQgcmVxdWVzdF90YWc7Ci0gX191MzIgcmVxdWVzdF9hdHRyOworICBfX3UzMiBzdWJwcm90b2NvbDsKKyAgX191MzIgcmVxdWVzdF9sZW47CisgIF9fdTY0IHJlcXVlc3Q7CisgIF9fdTY0IHJlcXVlc3RfdGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXF1ZXN0X3ByaW9yaXR5OwotIF9fdTMyIHJlcXVlc3RfZXh0cmE7Ci0gX191MzIgbWF4X3Jlc3BvbnNlX2xlbjsKLSBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgcmVxdWVzdF9hdHRyOworICBfX3UzMiByZXF1ZXN0X3ByaW9yaXR5OworICBfX3UzMiByZXF1ZXN0X2V4dHJhOworICBfX3UzMiBtYXhfcmVzcG9uc2VfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkb3V0X2lvdmVjX2NvdW50OwotIF9fdTMyIGRvdXRfeGZlcl9sZW47Ci0gX191MzIgZGluX2lvdmVjX2NvdW50OwotIF9fdTMyIGRpbl94ZmVyX2xlbjsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTMyIGRvdXRfaW92ZWNfY291bnQ7CisgIF9fdTMyIGRvdXRfeGZlcl9sZW47CisgIF9fdTMyIGRpbl9pb3ZlY19jb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZG91dF94ZmVycDsKLSBfX3U2NCBkaW5feGZlcnA7Ci0gX191MzIgdGltZW91dDsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgZGluX3hmZXJfbGVuOworICBfX3U2NCBkb3V0X3hmZXJwOworICBfX3U2NCBkaW5feGZlcnA7CisgIF9fdTMyIHRpbWVvdXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHVzcl9wdHI7Ci0gX191MzIgc3BhcmVfaW47Ci0gX191MzIgZHJpdmVyX3N0YXR1czsKLSBfX3UzMiB0cmFuc3BvcnRfc3RhdHVzOworICBfX3UzMiBmbGFnczsKKyAgX191NjQgdXNyX3B0cjsKKyAgX191MzIgc3BhcmVfaW47CisgIF9fdTMyIGRyaXZlcl9zdGF0dXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRldmljZV9zdGF0dXM7Ci0gX191MzIgcmV0cnlfZGVsYXk7Ci0gX191MzIgaW5mbzsKLSBfX3UzMiBkdXJhdGlvbjsKKyAgX191MzIgdHJhbnNwb3J0X3N0YXR1czsKKyAgX191MzIgZGV2aWNlX3N0YXR1czsKKyAgX191MzIgcmV0cnlfZGVsYXk7CisgIF9fdTMyIGluZm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc3BvbnNlX2xlbjsKLSBfX3MzMiBkaW5fcmVzaWQ7Ci0gX19zMzIgZG91dF9yZXNpZDsKLSBfX3U2NCBnZW5lcmF0ZWRfdGFnOworICBfX3UzMiBkdXJhdGlvbjsKKyAgX191MzIgcmVzcG9uc2VfbGVuOworICBfX3MzMiBkaW5fcmVzaWQ7CisgIF9fczMyIGRvdXRfcmVzaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNwYXJlX291dDsKLSBfX3UzMiBwYWRkaW5nOworICBfX3U2NCBnZW5lcmF0ZWRfdGFnOworICBfX3UzMiBzcGFyZV9vdXQ7CisgIF9fdTMyIHBhZGRpbmc7CiB9OwotI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2J0cmZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2J0cmZzLmgKaW5kZXggMTFmOTUwZi4uODA0N2Y2YSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9idHJmcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnRyZnMuaApAQCAtMjYsOCArMjYsOCBAQAogI2RlZmluZSBCVFJGU19QQVRIX05BTUVfTUFYIDQwODcKIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczY0IGZkOwotIGNoYXIgbmFtZVtCVFJGU19QQVRIX05BTUVfTUFYICsgMV07CisgIF9fczY0IGZkOworICBjaGFyIG5hbWVbQlRSRlNfUEFUSF9OQU1FX01BWCArIDFdOwogfTsKICNkZWZpbmUgQlRSRlNfREVWSUNFX1BBVEhfTkFNRV9NQVggMTAyNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTM3LDQ1MyArMzcsNDY4IEBACiAjZGVmaW5lIEJUUkZTX0ZTSURfU0laRSAxNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlRSRlNfVVVJRF9TSVpFIDE2CisjZGVmaW5lIEJUUkZTX1VVSURfVU5QQVJTRURfU0laRSAzNwogI2RlZmluZSBCVFJGU19RR1JPVVBfSU5IRVJJVF9TRVRfTElNSVRTICgxVUxMIDw8IDApCiBzdHJ1Y3QgYnRyZnNfcWdyb3VwX2xpbWl0IHsKLSBfX3U2NCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbWF4X3JmZXI7Ci0gX191NjQgbWF4X2V4Y2w7Ci0gX191NjQgcnN2X3JmZXI7Ci0gX191NjQgcnN2X2V4Y2w7CisgIF9fdTY0IGZsYWdzOworICBfX3U2NCBtYXhfcmZlcjsKKyAgX191NjQgbWF4X2V4Y2w7CisgIF9fdTY0IHJzdl9yZmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgcnN2X2V4Y2w7CiB9Owogc3RydWN0IGJ0cmZzX3Fncm91cF9pbmhlcml0IHsKLSBfX3U2NCBmbGFnczsKLSBfX3U2NCBudW1fcWdyb3VwczsKKyAgX191NjQgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG51bV9yZWZfY29waWVzOwotIF9fdTY0IG51bV9leGNsX2NvcGllczsKLSBzdHJ1Y3QgYnRyZnNfcWdyb3VwX2xpbWl0IGxpbTsKLSBfX3U2NCBxZ3JvdXBzWzBdOworICBfX3U2NCBudW1fcWdyb3VwczsKKyAgX191NjQgbnVtX3JlZl9jb3BpZXM7CisgIF9fdTY0IG51bV9leGNsX2NvcGllczsKKyAgc3RydWN0IGJ0cmZzX3Fncm91cF9saW1pdCBsaW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBxZ3JvdXBzWzBdOwogfTsKIHN0cnVjdCBidHJmc19pb2N0bF9xZ3JvdXBfbGltaXRfYXJncyB7Ci0gX191NjQgcWdyb3VwaWQ7Ci0gc3RydWN0IGJ0cmZzX3Fncm91cF9saW1pdCBsaW07CisgIF9fdTY0IHFncm91cGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGJ0cmZzX3Fncm91cF9saW1pdCBsaW07CiB9OwogI2RlZmluZSBCVFJGU19TVUJWT0xfTkFNRV9NQVggNDAzOQogc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzX3YyIHsKLSBfX3M2NCBmZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdHJhbnNpZDsKLSBfX3U2NCBmbGFnczsKLSB1bmlvbiB7Ci0gc3RydWN0IHsKKyAgX19zNjQgZmQ7CisgIF9fdTY0IHRyYW5zaWQ7CisgIF9fdTY0IGZsYWdzOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNpemU7Ci0gc3RydWN0IGJ0cmZzX3Fncm91cF9pbmhlcml0IF9fdXNlciAqcWdyb3VwX2luaGVyaXQ7Ci0gfTsKLSBfX3U2NCB1bnVzZWRbNF07CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IHNpemU7CisgICAgICBzdHJ1Y3QgYnRyZnNfcWdyb3VwX2luaGVyaXQgX191c2VyICogcWdyb3VwX2luaGVyaXQ7CisgICAgfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKLSBjaGFyIG5hbWVbQlRSRlNfU1VCVk9MX05BTUVfTUFYICsgMV07CisgICAgX191NjQgdW51c2VkWzRdOworICB9OworICBjaGFyIG5hbWVbQlRSRlNfU1VCVk9MX05BTUVfTUFYICsgMV07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBidHJmc19zY3J1Yl9wcm9ncmVzcyB7CisgIF9fdTY0IGRhdGFfZXh0ZW50c19zY3J1YmJlZDsKKyAgX191NjQgdHJlZV9leHRlbnRzX3NjcnViYmVkOworICBfX3U2NCBkYXRhX2J5dGVzX3NjcnViYmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkYXRhX2V4dGVudHNfc2NydWJiZWQ7Ci0gX191NjQgdHJlZV9leHRlbnRzX3NjcnViYmVkOwotIF9fdTY0IGRhdGFfYnl0ZXNfc2NydWJiZWQ7Ci0gX191NjQgdHJlZV9ieXRlc19zY3J1YmJlZDsKKyAgX191NjQgdHJlZV9ieXRlc19zY3J1YmJlZDsKKyAgX191NjQgcmVhZF9lcnJvcnM7CisgIF9fdTY0IGNzdW1fZXJyb3JzOworICBfX3U2NCB2ZXJpZnlfZXJyb3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZWFkX2Vycm9yczsKLSBfX3U2NCBjc3VtX2Vycm9yczsKLSBfX3U2NCB2ZXJpZnlfZXJyb3JzOwotIF9fdTY0IG5vX2NzdW07CisgIF9fdTY0IG5vX2NzdW07CisgIF9fdTY0IGNzdW1fZGlzY2FyZHM7CisgIF9fdTY0IHN1cGVyX2Vycm9yczsKKyAgX191NjQgbWFsbG9jX2Vycm9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY3N1bV9kaXNjYXJkczsKLSBfX3U2NCBzdXBlcl9lcnJvcnM7Ci0gX191NjQgbWFsbG9jX2Vycm9yczsKLSBfX3U2NCB1bmNvcnJlY3RhYmxlX2Vycm9yczsKKyAgX191NjQgdW5jb3JyZWN0YWJsZV9lcnJvcnM7CisgIF9fdTY0IGNvcnJlY3RlZF9lcnJvcnM7CisgIF9fdTY0IGxhc3RfcGh5c2ljYWw7CisgIF9fdTY0IHVudmVyaWZpZWRfZXJyb3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjb3JyZWN0ZWRfZXJyb3JzOwotIF9fdTY0IGxhc3RfcGh5c2ljYWw7Ci0gX191NjQgdW52ZXJpZmllZF9lcnJvcnM7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlRSRlNfU0NSVUJfUkVBRE9OTFkgMQogc3RydWN0IGJ0cmZzX2lvY3RsX3NjcnViX2FyZ3MgewotIF9fdTY0IGRldmlkOwotIF9fdTY0IHN0YXJ0OworICBfX3U2NCBkZXZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZW5kOwotIF9fdTY0IGZsYWdzOwotIHN0cnVjdCBidHJmc19zY3J1Yl9wcm9ncmVzcyBwcm9ncmVzczsKLSBfX3U2NCB1bnVzZWRbKDEwMjQtMzItc2l6ZW9mKHN0cnVjdCBidHJmc19zY3J1Yl9wcm9ncmVzcykpLzhdOworICBfX3U2NCBzdGFydDsKKyAgX191NjQgZW5kOworICBfX3U2NCBmbGFnczsKKyAgc3RydWN0IGJ0cmZzX3NjcnViX3Byb2dyZXNzIHByb2dyZXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgdW51c2VkWygxMDI0IC0gMzIgLSBzaXplb2Yoc3RydWN0IGJ0cmZzX3NjcnViX3Byb2dyZXNzKSkgLyA4XTsKIH07CiAjZGVmaW5lIEJUUkZTX0lPQ1RMX0RFVl9SRVBMQUNFX0NPTlRfUkVBRElOR19GUk9NX1NSQ0RFVl9NT0RFX0FMV0FZUyAwCiAjZGVmaW5lIEJUUkZTX0lPQ1RMX0RFVl9SRVBMQUNFX0NPTlRfUkVBRElOR19GUk9NX1NSQ0RFVl9NT0RFX0FWT0lEIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYnRyZnNfaW9jdGxfZGV2X3JlcGxhY2Vfc3RhcnRfcGFyYW1zIHsKKyAgX191NjQgc3JjZGV2aWQ7CisgIF9fdTY0IGNvbnRfcmVhZGluZ19mcm9tX3NyY2Rldl9tb2RlOworICBfX3U4IHNyY2Rldl9uYW1lW0JUUkZTX0RFVklDRV9QQVRIX05BTUVfTUFYICsgMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNyY2RldmlkOwotIF9fdTY0IGNvbnRfcmVhZGluZ19mcm9tX3NyY2Rldl9tb2RlOwotIF9fdTggc3JjZGV2X25hbWVbQlRSRlNfREVWSUNFX1BBVEhfTkFNRV9NQVggKyAxXTsKLSBfX3U4IHRndGRldl9uYW1lW0JUUkZTX0RFVklDRV9QQVRIX05BTUVfTUFYICsgMV07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHRndGRldl9uYW1lW0JUUkZTX0RFVklDRV9QQVRIX05BTUVfTUFYICsgMV07CiB9OwogI2RlZmluZSBCVFJGU19JT0NUTF9ERVZfUkVQTEFDRV9TVEFURV9ORVZFUl9TVEFSVEVEIDAKICNkZWZpbmUgQlRSRlNfSU9DVExfREVWX1JFUExBQ0VfU1RBVEVfU1RBUlRFRCAxCi0jZGVmaW5lIEJUUkZTX0lPQ1RMX0RFVl9SRVBMQUNFX1NUQVRFX0ZJTklTSEVEIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUUkZTX0lPQ1RMX0RFVl9SRVBMQUNFX1NUQVRFX0ZJTklTSEVEIDIKICNkZWZpbmUgQlRSRlNfSU9DVExfREVWX1JFUExBQ0VfU1RBVEVfQ0FOQ0VMRUQgMwogI2RlZmluZSBCVFJGU19JT0NUTF9ERVZfUkVQTEFDRV9TVEFURV9TVVNQRU5ERUQgNAogc3RydWN0IGJ0cmZzX2lvY3RsX2Rldl9yZXBsYWNlX3N0YXR1c19wYXJhbXMgewotIF9fdTY0IHJlcGxhY2Vfc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHByb2dyZXNzXzEwMDA7Ci0gX191NjQgdGltZV9zdGFydGVkOwotIF9fdTY0IHRpbWVfc3RvcHBlZDsKLSBfX3U2NCBudW1fd3JpdGVfZXJyb3JzOworICBfX3U2NCByZXBsYWNlX3N0YXRlOworICBfX3U2NCBwcm9ncmVzc18xMDAwOworICBfX3U2NCB0aW1lX3N0YXJ0ZWQ7CisgIF9fdTY0IHRpbWVfc3RvcHBlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbnVtX3VuY29ycmVjdGFibGVfcmVhZF9lcnJvcnM7CisgIF9fdTY0IG51bV93cml0ZV9lcnJvcnM7CisgIF9fdTY0IG51bV91bmNvcnJlY3RhYmxlX3JlYWRfZXJyb3JzOwogfTsKICNkZWZpbmUgQlRSRlNfSU9DVExfREVWX1JFUExBQ0VfQ01EX1NUQVJUIDAKLSNkZWZpbmUgQlRSRlNfSU9DVExfREVWX1JFUExBQ0VfQ01EX1NUQVRVUyAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVFJGU19JT0NUTF9ERVZfUkVQTEFDRV9DTURfU1RBVFVTIDEKICNkZWZpbmUgQlRSRlNfSU9DVExfREVWX1JFUExBQ0VfQ01EX0NBTkNFTCAyCiAjZGVmaW5lIEJUUkZTX0lPQ1RMX0RFVl9SRVBMQUNFX1JFU1VMVF9OT19FUlJPUiAwCiAjZGVmaW5lIEJUUkZTX0lPQ1RMX0RFVl9SRVBMQUNFX1JFU1VMVF9OT1RfU1RBUlRFRCAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVFJGU19JT0NUTF9ERVZfUkVQTEFDRV9SRVNVTFRfQUxSRUFEWV9TVEFSVEVEIDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYnRyZnNfaW9jdGxfZGV2X3JlcGxhY2VfYXJncyB7Ci0gX191NjQgY21kOwotIF9fdTY0IHJlc3VsdDsKLSB1bmlvbiB7CisgIF9fdTY0IGNtZDsKKyAgX191NjQgcmVzdWx0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgYnRyZnNfaW9jdGxfZGV2X3JlcGxhY2Vfc3RhcnRfcGFyYW1zIHN0YXJ0OwotIHN0cnVjdCBidHJmc19pb2N0bF9kZXZfcmVwbGFjZV9zdGF0dXNfcGFyYW1zIHN0YXR1czsKLSB9OwotIF9fdTY0IHNwYXJlWzY0XTsKKyAgdW5pb24geworICAgIHN0cnVjdCBidHJmc19pb2N0bF9kZXZfcmVwbGFjZV9zdGFydF9wYXJhbXMgc3RhcnQ7CisgICAgc3RydWN0IGJ0cmZzX2lvY3RsX2Rldl9yZXBsYWNlX3N0YXR1c19wYXJhbXMgc3RhdHVzOworICB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgc3BhcmVbNjRdOwogfTsKIHN0cnVjdCBidHJmc19pb2N0bF9kZXZfaW5mb19hcmdzIHsKLSBfX3U2NCBkZXZpZDsKLSBfX3U4IHV1aWRbQlRSRlNfVVVJRF9TSVpFXTsKKyAgX191NjQgZGV2aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGJ5dGVzX3VzZWQ7Ci0gX191NjQgdG90YWxfYnl0ZXM7Ci0gX191NjQgdW51c2VkWzM3OV07Ci0gX191OCBwYXRoW0JUUkZTX0RFVklDRV9QQVRIX05BTUVfTUFYXTsKKyAgX191OCB1dWlkW0JUUkZTX1VVSURfU0laRV07CisgIF9fdTY0IGJ5dGVzX3VzZWQ7CisgIF9fdTY0IHRvdGFsX2J5dGVzOworICBfX3U2NCB1bnVzZWRbMzc5XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcGF0aFtCVFJGU19ERVZJQ0VfUEFUSF9OQU1FX01BWF07CiB9Owogc3RydWN0IGJ0cmZzX2lvY3RsX2ZzX2luZm9fYXJncyB7Ci0gX191NjQgbWF4X2lkOwotIF9fdTY0IG51bV9kZXZpY2VzOworICBfX3U2NCBtYXhfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZnNpZFtCVFJGU19GU0lEX1NJWkVdOwotIF9fdTY0IHJlc2VydmVkWzEyNF07CisgIF9fdTY0IG51bV9kZXZpY2VzOworICBfX3U4IGZzaWRbQlRSRlNfRlNJRF9TSVpFXTsKKyAgX191MzIgbm9kZXNpemU7CisgIF9fdTMyIHNlY3RvcnNpemU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBjbG9uZV9hbGlnbm1lbnQ7CisgIF9fdTMyIHJlc2VydmVkMzI7CisgIF9fdTY0IHJlc2VydmVkWzEyMl07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBidHJmc19pb2N0bF9mZWF0dXJlX2ZsYWdzIHsKKyAgX191NjQgY29tcGF0X2ZsYWdzOworICBfX3U2NCBjb21wYXRfcm9fZmxhZ3M7CisgIF9fdTY0IGluY29tcGF0X2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjb21wYXRfZmxhZ3M7Ci0gX191NjQgY29tcGF0X3JvX2ZsYWdzOwotIF9fdTY0IGluY29tcGF0X2ZsYWdzOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUUkZTX0JBTEFOQ0VfQ1RMX1BBVVNFIDEKICNkZWZpbmUgQlRSRlNfQkFMQU5DRV9DVExfQ0FOQ0VMIDIKIHN0cnVjdCBidHJmc19iYWxhbmNlX2FyZ3MgewotIF9fdTY0IHByb2ZpbGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1c2FnZTsKLSBfX3U2NCBkZXZpZDsKLSBfX3U2NCBwc3RhcnQ7Ci0gX191NjQgcGVuZDsKKyAgX191NjQgcHJvZmlsZXM7CisgIF9fdTY0IHVzYWdlOworICBfX3U2NCBkZXZpZDsKKyAgX191NjQgcHN0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB2c3RhcnQ7Ci0gX191NjQgdmVuZDsKLSBfX3U2NCB0YXJnZXQ7Ci0gX191NjQgZmxhZ3M7CisgIF9fdTY0IHBlbmQ7CisgIF9fdTY0IHZzdGFydDsKKyAgX191NjQgdmVuZDsKKyAgX191NjQgdGFyZ2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1bnVzZWRbOF07Ci19IF9fYXR0cmlidXRlX18gKChfX3BhY2tlZF9fKSk7CisgIF9fdTY0IGZsYWdzOworICBfX3U2NCBsaW1pdDsKKyAgX191NjQgdW51c2VkWzddOworfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGJ0cmZzX2JhbGFuY2VfcHJvZ3Jlc3MgewotIF9fdTY0IGV4cGVjdGVkOworICBfX3U2NCBleHBlY3RlZDsKKyAgX191NjQgY29uc2lkZXJlZDsKKyAgX191NjQgY29tcGxldGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjb25zaWRlcmVkOwotIF9fdTY0IGNvbXBsZXRlZDsKIH07CiAjZGVmaW5lIEJUUkZTX0JBTEFOQ0VfU1RBVEVfUlVOTklORyAoMVVMTCA8PCAwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlRSRlNfQkFMQU5DRV9TVEFURV9QQVVTRV9SRVEgKDFVTEwgPDwgMSkKICNkZWZpbmUgQlRSRlNfQkFMQU5DRV9TVEFURV9DQU5DRUxfUkVRICgxVUxMIDw8IDIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGJ0cmZzX2lvY3RsX2JhbGFuY2VfYXJncyB7Ci0gX191NjQgZmxhZ3M7CisgIF9fdTY0IGZsYWdzOworICBfX3U2NCBzdGF0ZTsKKyAgc3RydWN0IGJ0cmZzX2JhbGFuY2VfYXJncyBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzdGF0ZTsKLSBzdHJ1Y3QgYnRyZnNfYmFsYW5jZV9hcmdzIGRhdGE7Ci0gc3RydWN0IGJ0cmZzX2JhbGFuY2VfYXJncyBtZXRhOwotIHN0cnVjdCBidHJmc19iYWxhbmNlX2FyZ3Mgc3lzOworICBzdHJ1Y3QgYnRyZnNfYmFsYW5jZV9hcmdzIG1ldGE7CisgIHN0cnVjdCBidHJmc19iYWxhbmNlX2FyZ3Mgc3lzOworICBzdHJ1Y3QgYnRyZnNfYmFsYW5jZV9wcm9ncmVzcyBzdGF0OworICBfX3U2NCB1bnVzZWRbNzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgYnRyZnNfYmFsYW5jZV9wcm9ncmVzcyBzdGF0OwotIF9fdTY0IHVudXNlZFs3Ml07CiB9OwogI2RlZmluZSBCVFJGU19JTk9fTE9PS1VQX1BBVEhfTUFYIDQwODAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYnRyZnNfaW9jdGxfaW5vX2xvb2t1cF9hcmdzIHsKLSBfX3U2NCB0cmVlaWQ7Ci0gX191NjQgb2JqZWN0aWQ7Ci0gY2hhciBuYW1lW0JUUkZTX0lOT19MT09LVVBfUEFUSF9NQVhdOworICBfX3U2NCB0cmVlaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBvYmplY3RpZDsKKyAgY2hhciBuYW1lW0JUUkZTX0lOT19MT09LVVBfUEFUSF9NQVhdOwogfTsKIHN0cnVjdCBidHJmc19pb2N0bF9zZWFyY2hfa2V5IHsKLSBfX3U2NCB0cmVlX2lkOwotIF9fdTY0IG1pbl9vYmplY3RpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbWF4X29iamVjdGlkOwotIF9fdTY0IG1pbl9vZmZzZXQ7Ci0gX191NjQgbWF4X29mZnNldDsKLSBfX3U2NCBtaW5fdHJhbnNpZDsKKyAgX191NjQgdHJlZV9pZDsKKyAgX191NjQgbWluX29iamVjdGlkOworICBfX3U2NCBtYXhfb2JqZWN0aWQ7CisgIF9fdTY0IG1pbl9vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG1heF90cmFuc2lkOwotIF9fdTMyIG1pbl90eXBlOwotIF9fdTMyIG1heF90eXBlOwotIF9fdTMyIG5yX2l0ZW1zOworICBfX3U2NCBtYXhfb2Zmc2V0OworICBfX3U2NCBtaW5fdHJhbnNpZDsKKyAgX191NjQgbWF4X3RyYW5zaWQ7CisgIF9fdTMyIG1pbl90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB1bnVzZWQ7Ci0gX191NjQgdW51c2VkMTsKLSBfX3U2NCB1bnVzZWQyOwotIF9fdTY0IHVudXNlZDM7CisgIF9fdTMyIG1heF90eXBlOworICBfX3UzMiBucl9pdGVtczsKKyAgX191MzIgdW51c2VkOworICBfX3U2NCB1bnVzZWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1bnVzZWQ0OworICBfX3U2NCB1bnVzZWQyOworICBfX3U2NCB1bnVzZWQzOworICBfX3U2NCB1bnVzZWQ0OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2VhcmNoX2hlYWRlciB7Ci0gX191NjQgdHJhbnNpZDsKKyAgX191NjQgdHJhbnNpZDsKKyAgX191NjQgb2JqZWN0aWQ7CisgIF9fdTY0IG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgb2JqZWN0aWQ7Ci0gX191NjQgb2Zmc2V0OwotIF9fdTMyIHR5cGU7Ci0gX191MzIgbGVuOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgdHlwZTsKKyAgX191MzIgbGVuOwogfTsKICNkZWZpbmUgQlRSRlNfU0VBUkNIX0FSR1NfQlVGU0laRSAoNDA5NiAtIHNpemVvZihzdHJ1Y3QgYnRyZnNfaW9jdGxfc2VhcmNoX2tleSkpCi1zdHJ1Y3QgYnRyZnNfaW9jdGxfc2VhcmNoX2FyZ3MgewotIHN0cnVjdCBidHJmc19pb2N0bF9zZWFyY2hfa2V5IGtleTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBidWZbQlRSRlNfU0VBUkNIX0FSR1NfQlVGU0laRV07CitzdHJ1Y3QgYnRyZnNfaW9jdGxfc2VhcmNoX2FyZ3MgeworICBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2VhcmNoX2tleSBrZXk7CisgIGNoYXIgYnVmW0JUUkZTX1NFQVJDSF9BUkdTX0JVRlNJWkVdOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgYnRyZnNfaW9jdGxfc2VhcmNoX2FyZ3NfdjIgeworICBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2VhcmNoX2tleSBrZXk7CisgIF9fdTY0IGJ1Zl9zaXplOworICBfX3U2NCBidWZbMF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBidHJmc19pb2N0bF9jbG9uZV9yYW5nZV9hcmdzIHsKLSBfX3M2NCBzcmNfZmQ7CisgIF9fczY0IHNyY19mZDsKKyAgX191NjQgc3JjX29mZnNldCwgc3JjX2xlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc3JjX29mZnNldCwgc3JjX2xlbmd0aDsKLSBfX3U2NCBkZXN0X29mZnNldDsKKyAgX191NjQgZGVzdF9vZmZzZXQ7CiB9OwogI2RlZmluZSBCVFJGU19ERUZSQUdfUkFOR0VfQ09NUFJFU1MgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlRSRlNfREVGUkFHX1JBTkdFX1NUQVJUX0lPIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUUkZTX1NBTUVfREFUQV9ESUZGRVJTIDEKIHN0cnVjdCBidHJmc19pb2N0bF9zYW1lX2V4dGVudF9pbmZvIHsKLSBfX3M2NCBmZDsKKyAgX19zNjQgZmQ7CisgIF9fdTY0IGxvZ2ljYWxfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBsb2dpY2FsX29mZnNldDsKLSBfX3U2NCBieXRlc19kZWR1cGVkOwotIF9fczMyIHN0YXR1czsKLSBfX3UzMiByZXNlcnZlZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IGJ5dGVzX2RlZHVwZWQ7CisgIF9fczMyIHN0YXR1czsKKyAgX191MzIgcmVzZXJ2ZWQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBidHJmc19pb2N0bF9zYW1lX2FyZ3MgewotIF9fdTY0IGxvZ2ljYWxfb2Zmc2V0OwotIF9fdTY0IGxlbmd0aDsKKyAgX191NjQgbG9naWNhbF9vZmZzZXQ7CisgIF9fdTY0IGxlbmd0aDsKKyAgX191MTYgZGVzdF9jb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZGVzdF9jb3VudDsKLSBfX3UxNiByZXNlcnZlZDE7Ci0gX191MzIgcmVzZXJ2ZWQyOwotIHN0cnVjdCBidHJmc19pb2N0bF9zYW1lX2V4dGVudF9pbmZvIGluZm9bMF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiByZXNlcnZlZDE7CisgIF9fdTMyIHJlc2VydmVkMjsKKyAgc3RydWN0IGJ0cmZzX2lvY3RsX3NhbWVfZXh0ZW50X2luZm8gaW5mb1swXTsKIH07Ci1zdHJ1Y3QgYnRyZnNfaW9jdGxfc3BhY2VfaW5mbyB7Ci0gX191NjQgZmxhZ3M7Ci0gX191NjQgdG90YWxfYnl0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHVzZWRfYnl0ZXM7CitzdHJ1Y3QgYnRyZnNfaW9jdGxfc3BhY2VfaW5mbyB7CisgIF9fdTY0IGZsYWdzOworICBfX3U2NCB0b3RhbF9ieXRlczsKKyAgX191NjQgdXNlZF9ieXRlczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGJ0cmZzX2lvY3RsX3NwYWNlX2FyZ3MgewotIF9fdTY0IHNwYWNlX3Nsb3RzOworICBfX3U2NCBzcGFjZV9zbG90czsKKyAgX191NjQgdG90YWxfc3BhY2VzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB0b3RhbF9zcGFjZXM7Ci0gc3RydWN0IGJ0cmZzX2lvY3RsX3NwYWNlX2luZm8gc3BhY2VzWzBdOworICBzdHJ1Y3QgYnRyZnNfaW9jdGxfc3BhY2VfaW5mbyBzcGFjZXNbMF07CiB9Owogc3RydWN0IGJ0cmZzX2RhdGFfY29udGFpbmVyIHsKKyAgX191MzIgYnl0ZXNfbGVmdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYnl0ZXNfbGVmdDsKLSBfX3UzMiBieXRlc19taXNzaW5nOwotIF9fdTMyIGVsZW1fY250OwotIF9fdTMyIGVsZW1fbWlzc2VkOworICBfX3UzMiBieXRlc19taXNzaW5nOworICBfX3UzMiBlbGVtX2NudDsKKyAgX191MzIgZWxlbV9taXNzZWQ7CisgIF9fdTY0IHZhbFswXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdmFsWzBdOwogfTsKIHN0cnVjdCBidHJmc19pb2N0bF9pbm9fcGF0aF9hcmdzIHsKLSBfX3U2NCBpbnVtOworICBfX3U2NCBpbnVtOworICBfX3U2NCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzaXplOwotIF9fdTY0IHJlc2VydmVkWzRdOwotIF9fdTY0IGZzcGF0aDsKKyAgX191NjQgcmVzZXJ2ZWRbNF07CisgIF9fdTY0IGZzcGF0aDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGJ0cmZzX2lvY3RsX2xvZ2ljYWxfaW5vX2FyZ3MgewotIF9fdTY0IGxvZ2ljYWw7Ci0gX191NjQgc2l6ZTsKLSBfX3U2NCByZXNlcnZlZFs0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgaW5vZGVzOworICBfX3U2NCBsb2dpY2FsOworICBfX3U2NCBzaXplOworICBfX3U2NCByZXNlcnZlZFs0XTsKKyAgX191NjQgaW5vZGVzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGJ0cmZzX2Rldl9zdGF0X3ZhbHVlcyB7Ci0gQlRSRlNfREVWX1NUQVRfV1JJVEVfRVJSUywKKyAgQlRSRlNfREVWX1NUQVRfV1JJVEVfRVJSUywKKyAgQlRSRlNfREVWX1NUQVRfUkVBRF9FUlJTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCVFJGU19ERVZfU1RBVF9SRUFEX0VSUlMsCi0gQlRSRlNfREVWX1NUQVRfRkxVU0hfRVJSUywKLSBCVFJGU19ERVZfU1RBVF9DT1JSVVBUSU9OX0VSUlMsCi0gQlRSRlNfREVWX1NUQVRfR0VORVJBVElPTl9FUlJTLAorICBCVFJGU19ERVZfU1RBVF9GTFVTSF9FUlJTLAorICBCVFJGU19ERVZfU1RBVF9DT1JSVVBUSU9OX0VSUlMsCisgIEJUUkZTX0RFVl9TVEFUX0dFTkVSQVRJT05fRVJSUywKKyAgQlRSRlNfREVWX1NUQVRfVkFMVUVTX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCVFJGU19ERVZfU1RBVF9WQUxVRVNfTUFYCiB9OwogI2RlZmluZSBCVFJGU19ERVZfU1RBVFNfUkVTRVQgKDFVTEwgPDwgMCkKIHN0cnVjdCBidHJmc19pb2N0bF9nZXRfZGV2X3N0YXRzIHsKKyAgX191NjQgZGV2aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRldmlkOwotIF9fdTY0IG5yX2l0ZW1zOwotIF9fdTY0IGZsYWdzOwotIF9fdTY0IHZhbHVlc1tCVFJGU19ERVZfU1RBVF9WQUxVRVNfTUFYXTsKKyAgX191NjQgbnJfaXRlbXM7CisgIF9fdTY0IGZsYWdzOworICBfX3U2NCB2YWx1ZXNbQlRSRlNfREVWX1NUQVRfVkFMVUVTX01BWF07CisgIF9fdTY0IHVudXNlZFsxMjggLSAyIC0gQlRSRlNfREVWX1NUQVRfVkFMVUVTX01BWF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHVudXNlZFsxMjggLSAyIC0gQlRSRlNfREVWX1NUQVRfVkFMVUVTX01BWF07CiB9OwogI2RlZmluZSBCVFJGU19RVU9UQV9DVExfRU5BQkxFIDEKICNkZWZpbmUgQlRSRlNfUVVPVEFfQ1RMX0RJU0FCTEUgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlRSRlNfUVVPVEFfQ1RMX1JFU0NBTl9fTk9UVVNFRCAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGJ0cmZzX2lvY3RsX3F1b3RhX2N0bF9hcmdzIHsKLSBfX3U2NCBjbWQ7Ci0gX191NjQgc3RhdHVzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgY21kOworICBfX3U2NCBzdGF0dXM7CiB9Owotc3RydWN0IGJ0cmZzX2lvY3RsX3F1b3RhX3Jlc2Nhbl9hcmdzIHsKLSBfX3U2NCBmbGFnczsKLSBfX3U2NCBwcm9ncmVzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzZXJ2ZWRbNl07CitzdHJ1Y3QgYnRyZnNfaW9jdGxfcXVvdGFfcmVzY2FuX2FyZ3MgeworICBfX3U2NCBmbGFnczsKKyAgX191NjQgcHJvZ3Jlc3M7CisgIF9fdTY0IHJlc2VydmVkWzZdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgYnRyZnNfaW9jdGxfcWdyb3VwX2Fzc2lnbl9hcmdzIHsKLSBfX3U2NCBhc3NpZ247CisgIF9fdTY0IGFzc2lnbjsKKyAgX191NjQgc3JjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzcmM7Ci0gX191NjQgZHN0OworICBfX3U2NCBkc3Q7CiB9Owogc3RydWN0IGJ0cmZzX2lvY3RsX3Fncm91cF9jcmVhdGVfYXJncyB7CisgIF9fdTY0IGNyZWF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY3JlYXRlOwotIF9fdTY0IHFncm91cGlkOworICBfX3U2NCBxZ3JvdXBpZDsKIH07CiBzdHJ1Y3QgYnRyZnNfaW9jdGxfdGltZXNwZWMgeworICBfX3U2NCBzZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNlYzsKLSBfX3UzMiBuc2VjOworICBfX3UzMiBuc2VjOwogfTsKIHN0cnVjdCBidHJmc19pb2N0bF9yZWNlaXZlZF9zdWJ2b2xfYXJncyB7CisgIGNoYXIgdXVpZFtCVFJGU19VVUlEX1NJWkVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHV1aWRbQlRSRlNfVVVJRF9TSVpFXTsKLSBfX3U2NCBzdHJhbnNpZDsKLSBfX3U2NCBydHJhbnNpZDsKLSBzdHJ1Y3QgYnRyZnNfaW9jdGxfdGltZXNwZWMgc3RpbWU7CisgIF9fdTY0IHN0cmFuc2lkOworICBfX3U2NCBydHJhbnNpZDsKKyAgc3RydWN0IGJ0cmZzX2lvY3RsX3RpbWVzcGVjIHN0aW1lOworICBzdHJ1Y3QgYnRyZnNfaW9jdGxfdGltZXNwZWMgcnRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBidHJmc19pb2N0bF90aW1lc3BlYyBydGltZTsKLSBfX3U2NCBmbGFnczsKLSBfX3U2NCByZXNlcnZlZFsxNl07CisgIF9fdTY0IGZsYWdzOworICBfX3U2NCByZXNlcnZlZFsxNl07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlRSRlNfU0VORF9GTEFHX05PX0ZJTEVfREFUQSAweDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUUkZTX1NFTkRfRkxBR19PTUlUX1NUUkVBTV9IRUFERVIgMHgyCiAjZGVmaW5lIEJUUkZTX1NFTkRfRkxBR19PTUlUX0VORF9DTUQgMHg0Ci0jZGVmaW5lIEJUUkZTX1NFTkRfRkxBR19NQVNLICAgKEJUUkZTX1NFTkRfRkxBR19OT19GSUxFX0RBVEEgfCAgIEJUUkZTX1NFTkRfRkxBR19PTUlUX1NUUkVBTV9IRUFERVIgfCAgIEJUUkZTX1NFTkRfRkxBR19PTUlUX0VORF9DTUQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVFJGU19TRU5EX0ZMQUdfTUFTSyAoQlRSRlNfU0VORF9GTEFHX05PX0ZJTEVfREFUQSB8IEJUUkZTX1NFTkRfRkxBR19PTUlUX1NUUkVBTV9IRUFERVIgfCBCVFJGU19TRU5EX0ZMQUdfT01JVF9FTkRfQ01EKQogc3RydWN0IGJ0cmZzX2lvY3RsX3NlbmRfYXJncyB7Ci0gX19zNjQgc2VuZF9mZDsKLSBfX3U2NCBjbG9uZV9zb3VyY2VzX2NvdW50OwotIF9fdTY0IF9fdXNlciAqY2xvbmVfc291cmNlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcGFyZW50X3Jvb3Q7Ci0gX191NjQgZmxhZ3M7Ci0gX191NjQgcmVzZXJ2ZWRbNF07CisgIF9fczY0IHNlbmRfZmQ7CisgIF9fdTY0IGNsb25lX3NvdXJjZXNfY291bnQ7CisgIF9fdTY0IF9fdXNlciAqIGNsb25lX3NvdXJjZXM7CisgIF9fdTY0IHBhcmVudF9yb290OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgZmxhZ3M7CisgIF9fdTY0IHJlc2VydmVkWzRdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGJ0cmZzX2Vycl9jb2RlIHsKLSBub3R1c2VkLAotIEJUUkZTX0VSUk9SX0RFVl9SQUlEMV9NSU5fTk9UX01FVCwKLSBCVFJGU19FUlJPUl9ERVZfUkFJRDEwX01JTl9OT1RfTUVULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCVFJGU19FUlJPUl9ERVZfUkFJRDVfTUlOX05PVF9NRVQsCi0gQlRSRlNfRVJST1JfREVWX1JBSUQ2X01JTl9OT1RfTUVULAotIEJUUkZTX0VSUk9SX0RFVl9UR1RfUkVQTEFDRSwKLSBCVFJGU19FUlJPUl9ERVZfTUlTU0lOR19OT1RfRk9VTkQsCisgIG5vdHVzZWQsCisgIEJUUkZTX0VSUk9SX0RFVl9SQUlEMV9NSU5fTk9UX01FVCwKKyAgQlRSRlNfRVJST1JfREVWX1JBSUQxMF9NSU5fTk9UX01FVCwKKyAgQlRSRlNfRVJST1JfREVWX1JBSUQ1X01JTl9OT1RfTUVULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCVFJGU19FUlJPUl9ERVZfT05MWV9XUklUQUJMRSwKLSBCVFJGU19FUlJPUl9ERVZfRVhDTF9SVU5fSU5fUFJPR1JFU1MKKyAgQlRSRlNfRVJST1JfREVWX1JBSUQ2X01JTl9OT1RfTUVULAorICBCVFJGU19FUlJPUl9ERVZfVEdUX1JFUExBQ0UsCisgIEJUUkZTX0VSUk9SX0RFVl9NSVNTSU5HX05PVF9GT1VORCwKKyAgQlRSRlNfRVJST1JfREVWX09OTFlfV1JJVEFCTEUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBCVFJGU19FUlJPUl9ERVZfRVhDTF9SVU5fSU5fUFJPR1JFU1MKIH07Ci0jZGVmaW5lIEJUUkZTX0lPQ19TTkFQX0NSRUFURSBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAxLCAgIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX1NOQVBfQ1JFQVRFIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDEsIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX0RFRlJBRyBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAyLCBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCVFJGU19JT0NfREVGUkFHIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDIsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfUkVTSVpFIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDMsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfU0NBTl9ERVYgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgNCwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19SRVNJWkUgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMywgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfU0NBTl9ERVYgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgNCwgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzKQogI2RlZmluZSBCVFJGU19JT0NfVFJBTlNfU1RBUlQgX0lPKEJUUkZTX0lPQ1RMX01BR0lDLCA2KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlRSRlNfSU9DX1RSQU5TX0VORCBfSU8oQlRSRlNfSU9DVExfTUFHSUMsIDcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVFJGU19JT0NfU1lOQyBfSU8oQlRSRlNfSU9DVExfTUFHSUMsIDgpCiAjZGVmaW5lIEJUUkZTX0lPQ19DTE9ORSBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCA5LCBpbnQpCi0jZGVmaW5lIEJUUkZTX0lPQ19BRERfREVWIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDEwLCAgIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX0FERF9ERVYgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMTAsIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX1JNX0RFViBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAxMSwgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlRSRlNfSU9DX1JNX0RFViBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAxMSwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MpCi0jZGVmaW5lIEJUUkZTX0lPQ19CQUxBTkNFIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDEyLCAgIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKLSNkZWZpbmUgQlRSRlNfSU9DX0NMT05FX1JBTkdFIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDEzLCAgIHN0cnVjdCBidHJmc19pb2N0bF9jbG9uZV9yYW5nZV9hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfU1VCVk9MX0NSRUFURSBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAxNCwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19CQUxBTkNFIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDEyLCBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19DTE9ORV9SQU5HRSBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAxMywgc3RydWN0IGJ0cmZzX2lvY3RsX2Nsb25lX3JhbmdlX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19TVUJWT0xfQ1JFQVRFIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDE0LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19TTkFQX0RFU1RST1kgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMTUsIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJUUkZTX0lPQ19TTkFQX0RFU1RST1kgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMTUsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfREVGUkFHX1JBTkdFIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDE2LCAgIHN0cnVjdCBidHJmc19pb2N0bF9kZWZyYWdfcmFuZ2VfYXJncykKLSNkZWZpbmUgQlRSRlNfSU9DX1RSRUVfU0VBUkNIIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAxNywgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2VhcmNoX2FyZ3MpCi0jZGVmaW5lIEJUUkZTX0lPQ19JTk9fTE9PS1VQIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAxOCwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfaW5vX2xvb2t1cF9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfREVGUkFHX1JBTkdFIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDE2LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfZGVmcmFnX3JhbmdlX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19UUkVFX1NFQVJDSCBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMTcsIHN0cnVjdCBidHJmc19pb2N0bF9zZWFyY2hfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX1RSRUVfU0VBUkNIX1YyIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAxNywgc3RydWN0IGJ0cmZzX2lvY3RsX3NlYXJjaF9hcmdzX3YyKQorI2RlZmluZSBCVFJGU19JT0NfSU5PX0xPT0tVUCBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMTgsIHN0cnVjdCBidHJmc19pb2N0bF9pbm9fbG9va3VwX2FyZ3MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVFJGU19JT0NfREVGQVVMVF9TVUJWT0wgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMTksIF9fdTY0KQotI2RlZmluZSBCVFJGU19JT0NfU1BBQ0VfSU5GTyBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMjAsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3NwYWNlX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19TUEFDRV9JTkZPIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAyMCwgc3RydWN0IGJ0cmZzX2lvY3RsX3NwYWNlX2FyZ3MpCiAjZGVmaW5lIEJUUkZTX0lPQ19TVEFSVF9TWU5DIF9JT1IoQlRSRlNfSU9DVExfTUFHSUMsIDI0LCBfX3U2NCkKICNkZWZpbmUgQlRSRlNfSU9DX1dBSVRfU1lOQyBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAyMiwgX191NjQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCVFJGU19JT0NfU05BUF9DUkVBVEVfVjIgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgMjMsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzX3YyKQotI2RlZmluZSBCVFJGU19JT0NfU1VCVk9MX0NSRUFURV9WMiBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAyNCwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfdm9sX2FyZ3NfdjIpCisjZGVmaW5lIEJUUkZTX0lPQ19TTkFQX0NSRUFURV9WMiBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAyMywgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzX3YyKQorI2RlZmluZSBCVFJGU19JT0NfU1VCVk9MX0NSRUFURV9WMiBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAyNCwgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzX3YyKQogI2RlZmluZSBCVFJGU19JT0NfU1VCVk9MX0dFVEZMQUdTIF9JT1IoQlRSRlNfSU9DVExfTUFHSUMsIDI1LCBfX3U2NCkKICNkZWZpbmUgQlRSRlNfSU9DX1NVQlZPTF9TRVRGTEFHUyBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAyNiwgX191NjQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCVFJGU19JT0NfU0NSVUIgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDI3LCAgIHN0cnVjdCBidHJmc19pb2N0bF9zY3J1Yl9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfU0NSVUIgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDI3LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2NydWJfYXJncykKICNkZWZpbmUgQlRSRlNfSU9DX1NDUlVCX0NBTkNFTCBfSU8oQlRSRlNfSU9DVExfTUFHSUMsIDI4KQotI2RlZmluZSBCVFJGU19JT0NfU0NSVUJfUFJPR1JFU1MgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDI5LCAgIHN0cnVjdCBidHJmc19pb2N0bF9zY3J1Yl9hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfREVWX0lORk8gX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDMwLCAgIHN0cnVjdCBidHJmc19pb2N0bF9kZXZfaW5mb19hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfU0NSVUJfUFJPR1JFU1MgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDI5LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2NydWJfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX0RFVl9JTkZPIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAzMCwgc3RydWN0IGJ0cmZzX2lvY3RsX2Rldl9pbmZvX2FyZ3MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCVFJGU19JT0NfRlNfSU5GTyBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCAzMSwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfZnNfaW5mb19hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfQkFMQU5DRV9WMiBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMzIsICAgc3RydWN0IGJ0cmZzX2lvY3RsX2JhbGFuY2VfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX0ZTX0lORk8gX0lPUihCVFJGU19JT0NUTF9NQUdJQywgMzEsIHN0cnVjdCBidHJmc19pb2N0bF9mc19pbmZvX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19CQUxBTkNFX1YyIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAzMiwgc3RydWN0IGJ0cmZzX2lvY3RsX2JhbGFuY2VfYXJncykKICNkZWZpbmUgQlRSRlNfSU9DX0JBTEFOQ0VfQ1RMIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDMzLCBpbnQpCi0jZGVmaW5lIEJUUkZTX0lPQ19CQUxBTkNFX1BST0dSRVNTIF9JT1IoQlRSRlNfSU9DVExfTUFHSUMsIDM0LCAgIHN0cnVjdCBidHJmc19pb2N0bF9iYWxhbmNlX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19CQUxBTkNFX1BST0dSRVNTIF9JT1IoQlRSRlNfSU9DVExfTUFHSUMsIDM0LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfYmFsYW5jZV9hcmdzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlRSRlNfSU9DX0lOT19QQVRIUyBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMzUsICAgc3RydWN0IGJ0cmZzX2lvY3RsX2lub19wYXRoX2FyZ3MpCi0jZGVmaW5lIEJUUkZTX0lPQ19MT0dJQ0FMX0lOTyBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgMzYsICAgc3RydWN0IGJ0cmZzX2lvY3RsX2lub19wYXRoX2FyZ3MpCi0jZGVmaW5lIEJUUkZTX0lPQ19TRVRfUkVDRUlWRURfU1VCVk9MIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAzNywgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfcmVjZWl2ZWRfc3Vidm9sX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19JTk9fUEFUSFMgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDM1LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfaW5vX3BhdGhfYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX0xPR0lDQUxfSU5PIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAzNiwgc3RydWN0IGJ0cmZzX2lvY3RsX2lub19wYXRoX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19TRVRfUkVDRUlWRURfU1VCVk9MIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCAzNywgc3RydWN0IGJ0cmZzX2lvY3RsX3JlY2VpdmVkX3N1YnZvbF9hcmdzKQogI2RlZmluZSBCVFJGU19JT0NfU0VORCBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCAzOCwgc3RydWN0IGJ0cmZzX2lvY3RsX3NlbmRfYXJncykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJUUkZTX0lPQ19ERVZJQ0VTX1JFQURZIF9JT1IoQlRSRlNfSU9DVExfTUFHSUMsIDM5LCAgIHN0cnVjdCBidHJmc19pb2N0bF92b2xfYXJncykKLSNkZWZpbmUgQlRSRlNfSU9DX1FVT1RBX0NUTCBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgNDAsICAgc3RydWN0IGJ0cmZzX2lvY3RsX3F1b3RhX2N0bF9hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfUUdST1VQX0FTU0lHTiBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCA0MSwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfcWdyb3VwX2Fzc2lnbl9hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfUUdST1VQX0NSRUFURSBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCA0MiwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfcWdyb3VwX2NyZWF0ZV9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfREVWSUNFU19SRUFEWSBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCAzOSwgc3RydWN0IGJ0cmZzX2lvY3RsX3ZvbF9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfUVVPVEFfQ1RMIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCA0MCwgc3RydWN0IGJ0cmZzX2lvY3RsX3F1b3RhX2N0bF9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfUUdST1VQX0FTU0lHTiBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCA0MSwgc3RydWN0IGJ0cmZzX2lvY3RsX3Fncm91cF9hc3NpZ25fYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX1FHUk9VUF9DUkVBVEUgX0lPVyhCVFJGU19JT0NUTF9NQUdJQywgNDIsIHN0cnVjdCBidHJmc19pb2N0bF9xZ3JvdXBfY3JlYXRlX2FyZ3MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCVFJGU19JT0NfUUdST1VQX0xJTUlUIF9JT1IoQlRSRlNfSU9DVExfTUFHSUMsIDQzLCAgIHN0cnVjdCBidHJmc19pb2N0bF9xZ3JvdXBfbGltaXRfYXJncykKLSNkZWZpbmUgQlRSRlNfSU9DX1FVT1RBX1JFU0NBTiBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCA0NCwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfcXVvdGFfcmVzY2FuX2FyZ3MpCi0jZGVmaW5lIEJUUkZTX0lPQ19RVU9UQV9SRVNDQU5fU1RBVFVTIF9JT1IoQlRSRlNfSU9DVExfTUFHSUMsIDQ1LCAgIHN0cnVjdCBidHJmc19pb2N0bF9xdW90YV9yZXNjYW5fYXJncykKKyNkZWZpbmUgQlRSRlNfSU9DX1FHUk9VUF9MSU1JVCBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCA0Mywgc3RydWN0IGJ0cmZzX2lvY3RsX3Fncm91cF9saW1pdF9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfUVVPVEFfUkVTQ0FOIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDQ0LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfcXVvdGFfcmVzY2FuX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19RVU9UQV9SRVNDQU5fU1RBVFVTIF9JT1IoQlRSRlNfSU9DVExfTUFHSUMsIDQ1LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfcXVvdGFfcmVzY2FuX2FyZ3MpCiAjZGVmaW5lIEJUUkZTX0lPQ19RVU9UQV9SRVNDQU5fV0FJVCBfSU8oQlRSRlNfSU9DVExfTUFHSUMsIDQ2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlRSRlNfSU9DX0dFVF9GU0xBQkVMIF9JT1IoQlRSRlNfSU9DVExfTUFHSUMsIDQ5LCAgIGNoYXJbQlRSRlNfTEFCRUxfU0laRV0pCi0jZGVmaW5lIEJUUkZTX0lPQ19TRVRfRlNMQUJFTCBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCA1MCwgICBjaGFyW0JUUkZTX0xBQkVMX1NJWkVdKQotI2RlZmluZSBCVFJGU19JT0NfR0VUX0RFVl9TVEFUUyBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgNTIsICAgc3RydWN0IGJ0cmZzX2lvY3RsX2dldF9kZXZfc3RhdHMpCi0jZGVmaW5lIEJUUkZTX0lPQ19ERVZfUkVQTEFDRSBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgNTMsICAgc3RydWN0IGJ0cmZzX2lvY3RsX2Rldl9yZXBsYWNlX2FyZ3MpCisjZGVmaW5lIEJUUkZTX0lPQ19HRVRfRlNMQUJFTCBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCA0OSwgY2hhcltCVFJGU19MQUJFTF9TSVpFXSkKKyNkZWZpbmUgQlRSRlNfSU9DX1NFVF9GU0xBQkVMIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDUwLCBjaGFyW0JUUkZTX0xBQkVMX1NJWkVdKQorI2RlZmluZSBCVFJGU19JT0NfR0VUX0RFVl9TVEFUUyBfSU9XUihCVFJGU19JT0NUTF9NQUdJQywgNTIsIHN0cnVjdCBidHJmc19pb2N0bF9nZXRfZGV2X3N0YXRzKQorI2RlZmluZSBCVFJGU19JT0NfREVWX1JFUExBQ0UgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDUzLCBzdHJ1Y3QgYnRyZnNfaW9jdGxfZGV2X3JlcGxhY2VfYXJncykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJUUkZTX0lPQ19GSUxFX0VYVEVOVF9TQU1FIF9JT1dSKEJUUkZTX0lPQ1RMX01BR0lDLCA1NCwgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2FtZV9hcmdzKQotI2RlZmluZSBCVFJGU19JT0NfR0VUX0ZFQVRVUkVTIF9JT1IoQlRSRlNfSU9DVExfTUFHSUMsIDU3LCAgIHN0cnVjdCBidHJmc19pb2N0bF9mZWF0dXJlX2ZsYWdzKQotI2RlZmluZSBCVFJGU19JT0NfU0VUX0ZFQVRVUkVTIF9JT1coQlRSRlNfSU9DVExfTUFHSUMsIDU3LCAgIHN0cnVjdCBidHJmc19pb2N0bF9mZWF0dXJlX2ZsYWdzWzJdKQotI2RlZmluZSBCVFJGU19JT0NfR0VUX1NVUFBPUlRFRF9GRUFUVVJFUyBfSU9SKEJUUkZTX0lPQ1RMX01BR0lDLCA1NywgICBzdHJ1Y3QgYnRyZnNfaW9jdGxfZmVhdHVyZV9mbGFnc1szXSkKKyNkZWZpbmUgQlRSRlNfSU9DX0ZJTEVfRVhURU5UX1NBTUUgX0lPV1IoQlRSRlNfSU9DVExfTUFHSUMsIDU0LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfc2FtZV9hcmdzKQorI2RlZmluZSBCVFJGU19JT0NfR0VUX0ZFQVRVUkVTIF9JT1IoQlRSRlNfSU9DVExfTUFHSUMsIDU3LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfZmVhdHVyZV9mbGFncykKKyNkZWZpbmUgQlRSRlNfSU9DX1NFVF9GRUFUVVJFUyBfSU9XKEJUUkZTX0lPQ1RMX01BR0lDLCA1Nywgc3RydWN0IGJ0cmZzX2lvY3RsX2ZlYXR1cmVfZmxhZ3NbMl0pCisjZGVmaW5lIEJUUkZTX0lPQ19HRVRfU1VQUE9SVEVEX0ZFQVRVUkVTIF9JT1IoQlRSRlNfSU9DVExfTUFHSUMsIDU3LCBzdHJ1Y3QgYnRyZnNfaW9jdGxfZmVhdHVyZV9mbGFnc1szXSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnl0ZW9yZGVyL2JpZ19lbmRpYW4uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnl0ZW9yZGVyL2JpZ19lbmRpYW4uaAppbmRleCAzMTRiODc1Li45NWRhNTBmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2J5dGVvcmRlci9iaWdfZW5kaWFuLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ieXRlb3JkZXIvYmlnX2VuZGlhbi5oCkBAIC0yOCw0MSArMjgsNDEgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNpbmNsdWRlIDxsaW51eC9zd2FiLmg+Ci0jZGVmaW5lIF9fY29uc3RhbnRfaHRvbmwoeCkgKChfX2ZvcmNlIF9fYmUzMikoX191MzIpKHgpKQotI2RlZmluZSBfX2NvbnN0YW50X250b2hsKHgpICgoX19mb3JjZSBfX3UzMikoX19iZTMyKSh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9odG9ubCh4KSAoKF9fZm9yY2UgX19iZTMyKSAoX191MzIpICh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9udG9obCh4KSAoKF9fZm9yY2UgX191MzIpIChfX2JlMzIpICh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fY29uc3RhbnRfaHRvbnMoeCkgKChfX2ZvcmNlIF9fYmUxNikoX191MTYpKHgpKQotI2RlZmluZSBfX2NvbnN0YW50X250b2hzKHgpICgoX19mb3JjZSBfX3UxNikoX19iZTE2KSh4KSkKLSNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fbGU2NCh4KSAoKF9fZm9yY2UgX19sZTY0KV9fX2NvbnN0YW50X3N3YWI2NCgoeCkpKQotI2RlZmluZSBfX2NvbnN0YW50X2xlNjRfdG9fY3B1KHgpIF9fX2NvbnN0YW50X3N3YWI2NCgoX19mb3JjZSBfX3U2NCkoX19sZTY0KSh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9odG9ucyh4KSAoKF9fZm9yY2UgX19iZTE2KSAoX191MTYpICh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9udG9ocyh4KSAoKF9fZm9yY2UgX191MTYpIChfX2JlMTYpICh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fbGU2NCh4KSAoKF9fZm9yY2UgX19sZTY0KSBfX19jb25zdGFudF9zd2FiNjQoKHgpKSkKKyNkZWZpbmUgX19jb25zdGFudF9sZTY0X3RvX2NwdSh4KSBfX19jb25zdGFudF9zd2FiNjQoKF9fZm9yY2UgX191NjQpIChfX2xlNjQpICh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2xlMzIoeCkgKChfX2ZvcmNlIF9fbGUzMilfX19jb25zdGFudF9zd2FiMzIoKHgpKSkKLSNkZWZpbmUgX19jb25zdGFudF9sZTMyX3RvX2NwdSh4KSBfX19jb25zdGFudF9zd2FiMzIoKF9fZm9yY2UgX191MzIpKF9fbGUzMikoeCkpCi0jZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2xlMTYoeCkgKChfX2ZvcmNlIF9fbGUxNilfX19jb25zdGFudF9zd2FiMTYoKHgpKSkKLSNkZWZpbmUgX19jb25zdGFudF9sZTE2X3RvX2NwdSh4KSBfX19jb25zdGFudF9zd2FiMTYoKF9fZm9yY2UgX191MTYpKF9fbGUxNikoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2xlMzIoeCkgKChfX2ZvcmNlIF9fbGUzMikgX19fY29uc3RhbnRfc3dhYjMyKCh4KSkpCisjZGVmaW5lIF9fY29uc3RhbnRfbGUzMl90b19jcHUoeCkgX19fY29uc3RhbnRfc3dhYjMyKChfX2ZvcmNlIF9fdTMyKSAoX19sZTMyKSAoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2xlMTYoeCkgKChfX2ZvcmNlIF9fbGUxNikgX19fY29uc3RhbnRfc3dhYjE2KCh4KSkpCisjZGVmaW5lIF9fY29uc3RhbnRfbGUxNl90b19jcHUoeCkgX19fY29uc3RhbnRfc3dhYjE2KChfX2ZvcmNlIF9fdTE2KSAoX19sZTE2KSAoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19iZTY0KHgpICgoX19mb3JjZSBfX2JlNjQpKF9fdTY0KSh4KSkKLSNkZWZpbmUgX19jb25zdGFudF9iZTY0X3RvX2NwdSh4KSAoKF9fZm9yY2UgX191NjQpKF9fYmU2NCkoeCkpCi0jZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoeCkgKChfX2ZvcmNlIF9fYmUzMikoX191MzIpKHgpKQotI2RlZmluZSBfX2NvbnN0YW50X2JlMzJfdG9fY3B1KHgpICgoX19mb3JjZSBfX3UzMikoX19iZTMyKSh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fYmU2NCh4KSAoKF9fZm9yY2UgX19iZTY0KSAoX191NjQpICh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9iZTY0X3RvX2NwdSh4KSAoKF9fZm9yY2UgX191NjQpIChfX2JlNjQpICh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fYmUzMih4KSAoKF9fZm9yY2UgX19iZTMyKSAoX191MzIpICh4KSkKKyNkZWZpbmUgX19jb25zdGFudF9iZTMyX3RvX2NwdSh4KSAoKF9fZm9yY2UgX191MzIpIChfX2JlMzIpICh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2JlMTYoeCkgKChfX2ZvcmNlIF9fYmUxNikoX191MTYpKHgpKQotI2RlZmluZSBfX2NvbnN0YW50X2JlMTZfdG9fY3B1KHgpICgoX19mb3JjZSBfX3UxNikoX19iZTE2KSh4KSkKLSNkZWZpbmUgX19jcHVfdG9fbGU2NCh4KSAoKF9fZm9yY2UgX19sZTY0KV9fc3dhYjY0KCh4KSkpCi0jZGVmaW5lIF9fbGU2NF90b19jcHUoeCkgX19zd2FiNjQoKF9fZm9yY2UgX191NjQpKF9fbGU2NCkoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2JlMTYoeCkgKChfX2ZvcmNlIF9fYmUxNikgKF9fdTE2KSAoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfYmUxNl90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTE2KSAoX19iZTE2KSAoeCkpCisjZGVmaW5lIF9fY3B1X3RvX2xlNjQoeCkgKChfX2ZvcmNlIF9fbGU2NCkgX19zd2FiNjQoKHgpKSkKKyNkZWZpbmUgX19sZTY0X3RvX2NwdSh4KSBfX3N3YWI2NCgoX19mb3JjZSBfX3U2NCkgKF9fbGU2NCkgKHgpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19jcHVfdG9fbGUzMih4KSAoKF9fZm9yY2UgX19sZTMyKV9fc3dhYjMyKCh4KSkpCi0jZGVmaW5lIF9fbGUzMl90b19jcHUoeCkgX19zd2FiMzIoKF9fZm9yY2UgX191MzIpKF9fbGUzMikoeCkpCi0jZGVmaW5lIF9fY3B1X3RvX2xlMTYoeCkgKChfX2ZvcmNlIF9fbGUxNilfX3N3YWIxNigoeCkpKQotI2RlZmluZSBfX2xlMTZfdG9fY3B1KHgpIF9fc3dhYjE2KChfX2ZvcmNlIF9fdTE2KShfX2xlMTYpKHgpKQorI2RlZmluZSBfX2NwdV90b19sZTMyKHgpICgoX19mb3JjZSBfX2xlMzIpIF9fc3dhYjMyKCh4KSkpCisjZGVmaW5lIF9fbGUzMl90b19jcHUoeCkgX19zd2FiMzIoKF9fZm9yY2UgX191MzIpIChfX2xlMzIpICh4KSkKKyNkZWZpbmUgX19jcHVfdG9fbGUxNih4KSAoKF9fZm9yY2UgX19sZTE2KSBfX3N3YWIxNigoeCkpKQorI2RlZmluZSBfX2xlMTZfdG9fY3B1KHgpIF9fc3dhYjE2KChfX2ZvcmNlIF9fdTE2KSAoX19sZTE2KSAoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX2NwdV90b19iZTY0KHgpICgoX19mb3JjZSBfX2JlNjQpKF9fdTY0KSh4KSkKLSNkZWZpbmUgX19iZTY0X3RvX2NwdSh4KSAoKF9fZm9yY2UgX191NjQpKF9fYmU2NCkoeCkpCi0jZGVmaW5lIF9fY3B1X3RvX2JlMzIoeCkgKChfX2ZvcmNlIF9fYmUzMikoX191MzIpKHgpKQotI2RlZmluZSBfX2JlMzJfdG9fY3B1KHgpICgoX19mb3JjZSBfX3UzMikoX19iZTMyKSh4KSkKKyNkZWZpbmUgX19jcHVfdG9fYmU2NCh4KSAoKF9fZm9yY2UgX19iZTY0KSAoX191NjQpICh4KSkKKyNkZWZpbmUgX19iZTY0X3RvX2NwdSh4KSAoKF9fZm9yY2UgX191NjQpIChfX2JlNjQpICh4KSkKKyNkZWZpbmUgX19jcHVfdG9fYmUzMih4KSAoKF9fZm9yY2UgX19iZTMyKSAoX191MzIpICh4KSkKKyNkZWZpbmUgX19iZTMyX3RvX2NwdSh4KSAoKF9fZm9yY2UgX191MzIpIChfX2JlMzIpICh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fY3B1X3RvX2JlMTYoeCkgKChfX2ZvcmNlIF9fYmUxNikoX191MTYpKHgpKQotI2RlZmluZSBfX2JlMTZfdG9fY3B1KHgpICgoX19mb3JjZSBfX3UxNikoX19iZTE2KSh4KSkKKyNkZWZpbmUgX19jcHVfdG9fYmUxNih4KSAoKF9fZm9yY2UgX19iZTE2KSAoX191MTYpICh4KSkKKyNkZWZpbmUgX19iZTE2X3RvX2NwdSh4KSAoKF9fZm9yY2UgX191MTYpIChfX2JlMTYpICh4KSkKICNkZWZpbmUgX19jcHVfdG9fbGU2NHMoeCkgX19zd2FiNjRzKCh4KSkKICNkZWZpbmUgX19sZTY0X3RvX2NwdXMoeCkgX19zd2FiNjRzKCh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC03MSwxMSArNzEsMTEgQEAKICNkZWZpbmUgX19jcHVfdG9fbGUxNnMoeCkgX19zd2FiMTZzKCh4KSkKICNkZWZpbmUgX19sZTE2X3RvX2NwdXMoeCkgX19zd2FiMTZzKCh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fY3B1X3RvX2JlNjRzKHgpIGRvIHsgKHZvaWQpKHgpOyB9IHdoaWxlICgwKQotI2RlZmluZSBfX2JlNjRfdG9fY3B1cyh4KSBkbyB7ICh2b2lkKSh4KTsgfSB3aGlsZSAoMCkKLSNkZWZpbmUgX19jcHVfdG9fYmUzMnMoeCkgZG8geyAodm9pZCkoeCk7IH0gd2hpbGUgKDApCi0jZGVmaW5lIF9fYmUzMl90b19jcHVzKHgpIGRvIHsgKHZvaWQpKHgpOyB9IHdoaWxlICgwKQorI2RlZmluZSBfX2NwdV90b19iZTY0cyh4KSBkbyB7ICh2b2lkKSAoeCk7IH0gd2hpbGUoMCkKKyNkZWZpbmUgX19iZTY0X3RvX2NwdXMoeCkgZG8geyAodm9pZCkgKHgpOyB9IHdoaWxlKDApCisjZGVmaW5lIF9fY3B1X3RvX2JlMzJzKHgpIGRvIHsgKHZvaWQpICh4KTsgfSB3aGlsZSgwKQorI2RlZmluZSBfX2JlMzJfdG9fY3B1cyh4KSBkbyB7ICh2b2lkKSAoeCk7IH0gd2hpbGUoMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fY3B1X3RvX2JlMTZzKHgpIGRvIHsgKHZvaWQpKHgpOyB9IHdoaWxlICgwKQotI2RlZmluZSBfX2JlMTZfdG9fY3B1cyh4KSBkbyB7ICh2b2lkKSh4KTsgfSB3aGlsZSAoMCkKKyNkZWZpbmUgX19jcHVfdG9fYmUxNnMoeCkgZG8geyAodm9pZCkgKHgpOyB9IHdoaWxlKDApCisjZGVmaW5lIF9fYmUxNl90b19jcHVzKHgpIGRvIHsgKHZvaWQpICh4KTsgfSB3aGlsZSgwKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2J5dGVvcmRlci9saXR0bGVfZW5kaWFuLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2J5dGVvcmRlci9saXR0bGVfZW5kaWFuLmgKaW5kZXggZjk1NDNkNC4uNjg0ZWU1ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ieXRlb3JkZXIvbGl0dGxlX2VuZGlhbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvYnl0ZW9yZGVyL2xpdHRsZV9lbmRpYW4uaApAQCAtMjgsNDggKzI4LDQ4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjaW5jbHVkZSA8bGludXgvc3dhYi5oPgotI2RlZmluZSBfX2NvbnN0YW50X2h0b25sKHgpICgoX19mb3JjZSBfX2JlMzIpX19fY29uc3RhbnRfc3dhYjMyKCh4KSkpCi0jZGVmaW5lIF9fY29uc3RhbnRfbnRvaGwoeCkgX19fY29uc3RhbnRfc3dhYjMyKChfX2ZvcmNlIF9fYmUzMikoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfaHRvbmwoeCkgKChfX2ZvcmNlIF9fYmUzMikgX19fY29uc3RhbnRfc3dhYjMyKCh4KSkpCisjZGVmaW5lIF9fY29uc3RhbnRfbnRvaGwoeCkgX19fY29uc3RhbnRfc3dhYjMyKChfX2ZvcmNlIF9fYmUzMikgKHgpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19jb25zdGFudF9odG9ucyh4KSAoKF9fZm9yY2UgX19iZTE2KV9fX2NvbnN0YW50X3N3YWIxNigoeCkpKQotI2RlZmluZSBfX2NvbnN0YW50X250b2hzKHgpIF9fX2NvbnN0YW50X3N3YWIxNigoX19mb3JjZSBfX2JlMTYpKHgpKQotI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19sZTY0KHgpICgoX19mb3JjZSBfX2xlNjQpKF9fdTY0KSh4KSkKLSNkZWZpbmUgX19jb25zdGFudF9sZTY0X3RvX2NwdSh4KSAoKF9fZm9yY2UgX191NjQpKF9fbGU2NCkoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfaHRvbnMoeCkgKChfX2ZvcmNlIF9fYmUxNikgX19fY29uc3RhbnRfc3dhYjE2KCh4KSkpCisjZGVmaW5lIF9fY29uc3RhbnRfbnRvaHMoeCkgX19fY29uc3RhbnRfc3dhYjE2KChfX2ZvcmNlIF9fYmUxNikgKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19sZTY0KHgpICgoX19mb3JjZSBfX2xlNjQpIChfX3U2NCkgKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2xlNjRfdG9fY3B1KHgpICgoX19mb3JjZSBfX3U2NCkgKF9fbGU2NCkgKHgpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fbGUzMih4KSAoKF9fZm9yY2UgX19sZTMyKShfX3UzMikoeCkpCi0jZGVmaW5lIF9fY29uc3RhbnRfbGUzMl90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTMyKShfX2xlMzIpKHgpKQotI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19sZTE2KHgpICgoX19mb3JjZSBfX2xlMTYpKF9fdTE2KSh4KSkKLSNkZWZpbmUgX19jb25zdGFudF9sZTE2X3RvX2NwdSh4KSAoKF9fZm9yY2UgX191MTYpKF9fbGUxNikoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2xlMzIoeCkgKChfX2ZvcmNlIF9fbGUzMikgKF9fdTMyKSAoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfbGUzMl90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTMyKSAoX19sZTMyKSAoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfY3B1X3RvX2xlMTYoeCkgKChfX2ZvcmNlIF9fbGUxNikgKF9fdTE2KSAoeCkpCisjZGVmaW5lIF9fY29uc3RhbnRfbGUxNl90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTE2KSAoX19sZTE2KSAoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19iZTY0KHgpICgoX19mb3JjZSBfX2JlNjQpX19fY29uc3RhbnRfc3dhYjY0KCh4KSkpCi0jZGVmaW5lIF9fY29uc3RhbnRfYmU2NF90b19jcHUoeCkgX19fY29uc3RhbnRfc3dhYjY0KChfX2ZvcmNlIF9fdTY0KShfX2JlNjQpKHgpKQotI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19iZTMyKHgpICgoX19mb3JjZSBfX2JlMzIpX19fY29uc3RhbnRfc3dhYjMyKCh4KSkpCi0jZGVmaW5lIF9fY29uc3RhbnRfYmUzMl90b19jcHUoeCkgX19fY29uc3RhbnRfc3dhYjMyKChfX2ZvcmNlIF9fdTMyKShfX2JlMzIpKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19iZTY0KHgpICgoX19mb3JjZSBfX2JlNjQpIF9fX2NvbnN0YW50X3N3YWI2NCgoeCkpKQorI2RlZmluZSBfX2NvbnN0YW50X2JlNjRfdG9fY3B1KHgpIF9fX2NvbnN0YW50X3N3YWI2NCgoX19mb3JjZSBfX3U2NCkgKF9fYmU2NCkgKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19iZTMyKHgpICgoX19mb3JjZSBfX2JlMzIpIF9fX2NvbnN0YW50X3N3YWIzMigoeCkpKQorI2RlZmluZSBfX2NvbnN0YW50X2JlMzJfdG9fY3B1KHgpIF9fX2NvbnN0YW50X3N3YWIzMigoX19mb3JjZSBfX3UzMikgKF9fYmUzMikgKHgpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19jb25zdGFudF9jcHVfdG9fYmUxNih4KSAoKF9fZm9yY2UgX19iZTE2KV9fX2NvbnN0YW50X3N3YWIxNigoeCkpKQotI2RlZmluZSBfX2NvbnN0YW50X2JlMTZfdG9fY3B1KHgpIF9fX2NvbnN0YW50X3N3YWIxNigoX19mb3JjZSBfX3UxNikoX19iZTE2KSh4KSkKLSNkZWZpbmUgX19jcHVfdG9fbGU2NCh4KSAoKF9fZm9yY2UgX19sZTY0KShfX3U2NCkoeCkpCi0jZGVmaW5lIF9fbGU2NF90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTY0KShfX2xlNjQpKHgpKQorI2RlZmluZSBfX2NvbnN0YW50X2NwdV90b19iZTE2KHgpICgoX19mb3JjZSBfX2JlMTYpIF9fX2NvbnN0YW50X3N3YWIxNigoeCkpKQorI2RlZmluZSBfX2NvbnN0YW50X2JlMTZfdG9fY3B1KHgpIF9fX2NvbnN0YW50X3N3YWIxNigoX19mb3JjZSBfX3UxNikgKF9fYmUxNikgKHgpKQorI2RlZmluZSBfX2NwdV90b19sZTY0KHgpICgoX19mb3JjZSBfX2xlNjQpIChfX3U2NCkgKHgpKQorI2RlZmluZSBfX2xlNjRfdG9fY3B1KHgpICgoX19mb3JjZSBfX3U2NCkgKF9fbGU2NCkgKHgpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX19jcHVfdG9fbGUzMih4KSAoKF9fZm9yY2UgX19sZTMyKShfX3UzMikoeCkpCi0jZGVmaW5lIF9fbGUzMl90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTMyKShfX2xlMzIpKHgpKQotI2RlZmluZSBfX2NwdV90b19sZTE2KHgpICgoX19mb3JjZSBfX2xlMTYpKF9fdTE2KSh4KSkKLSNkZWZpbmUgX19sZTE2X3RvX2NwdSh4KSAoKF9fZm9yY2UgX191MTYpKF9fbGUxNikoeCkpCisjZGVmaW5lIF9fY3B1X3RvX2xlMzIoeCkgKChfX2ZvcmNlIF9fbGUzMikgKF9fdTMyKSAoeCkpCisjZGVmaW5lIF9fbGUzMl90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTMyKSAoX19sZTMyKSAoeCkpCisjZGVmaW5lIF9fY3B1X3RvX2xlMTYoeCkgKChfX2ZvcmNlIF9fbGUxNikgKF9fdTE2KSAoeCkpCisjZGVmaW5lIF9fbGUxNl90b19jcHUoeCkgKChfX2ZvcmNlIF9fdTE2KSAoX19sZTE2KSAoeCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX2NwdV90b19iZTY0KHgpICgoX19mb3JjZSBfX2JlNjQpX19zd2FiNjQoKHgpKSkKLSNkZWZpbmUgX19iZTY0X3RvX2NwdSh4KSBfX3N3YWI2NCgoX19mb3JjZSBfX3U2NCkoX19iZTY0KSh4KSkKLSNkZWZpbmUgX19jcHVfdG9fYmUzMih4KSAoKF9fZm9yY2UgX19iZTMyKV9fc3dhYjMyKCh4KSkpCi0jZGVmaW5lIF9fYmUzMl90b19jcHUoeCkgX19zd2FiMzIoKF9fZm9yY2UgX191MzIpKF9fYmUzMikoeCkpCisjZGVmaW5lIF9fY3B1X3RvX2JlNjQoeCkgKChfX2ZvcmNlIF9fYmU2NCkgX19zd2FiNjQoKHgpKSkKKyNkZWZpbmUgX19iZTY0X3RvX2NwdSh4KSBfX3N3YWI2NCgoX19mb3JjZSBfX3U2NCkgKF9fYmU2NCkgKHgpKQorI2RlZmluZSBfX2NwdV90b19iZTMyKHgpICgoX19mb3JjZSBfX2JlMzIpIF9fc3dhYjMyKCh4KSkpCisjZGVmaW5lIF9fYmUzMl90b19jcHUoeCkgX19zd2FiMzIoKF9fZm9yY2UgX191MzIpIChfX2JlMzIpICh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fY3B1X3RvX2JlMTYoeCkgKChfX2ZvcmNlIF9fYmUxNilfX3N3YWIxNigoeCkpKQotI2RlZmluZSBfX2JlMTZfdG9fY3B1KHgpIF9fc3dhYjE2KChfX2ZvcmNlIF9fdTE2KShfX2JlMTYpKHgpKQotI2RlZmluZSBfX2NwdV90b19sZTY0cyh4KSBkbyB7ICh2b2lkKSh4KTsgfSB3aGlsZSAoMCkKLSNkZWZpbmUgX19sZTY0X3RvX2NwdXMoeCkgZG8geyAodm9pZCkoeCk7IH0gd2hpbGUgKDApCisjZGVmaW5lIF9fY3B1X3RvX2JlMTYoeCkgKChfX2ZvcmNlIF9fYmUxNikgX19zd2FiMTYoKHgpKSkKKyNkZWZpbmUgX19iZTE2X3RvX2NwdSh4KSBfX3N3YWIxNigoX19mb3JjZSBfX3UxNikgKF9fYmUxNikgKHgpKQorI2RlZmluZSBfX2NwdV90b19sZTY0cyh4KSBkbyB7ICh2b2lkKSAoeCk7IH0gd2hpbGUoMCkKKyNkZWZpbmUgX19sZTY0X3RvX2NwdXMoeCkgZG8geyAodm9pZCkgKHgpOyB9IHdoaWxlKDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX2NwdV90b19sZTMycyh4KSBkbyB7ICh2b2lkKSh4KTsgfSB3aGlsZSAoMCkKLSNkZWZpbmUgX19sZTMyX3RvX2NwdXMoeCkgZG8geyAodm9pZCkoeCk7IH0gd2hpbGUgKDApCi0jZGVmaW5lIF9fY3B1X3RvX2xlMTZzKHgpIGRvIHsgKHZvaWQpKHgpOyB9IHdoaWxlICgwKQotI2RlZmluZSBfX2xlMTZfdG9fY3B1cyh4KSBkbyB7ICh2b2lkKSh4KTsgfSB3aGlsZSAoMCkKKyNkZWZpbmUgX19jcHVfdG9fbGUzMnMoeCkgZG8geyAodm9pZCkgKHgpOyB9IHdoaWxlKDApCisjZGVmaW5lIF9fbGUzMl90b19jcHVzKHgpIGRvIHsgKHZvaWQpICh4KTsgfSB3aGlsZSgwKQorI2RlZmluZSBfX2NwdV90b19sZTE2cyh4KSBkbyB7ICh2b2lkKSAoeCk7IH0gd2hpbGUoMCkKKyNkZWZpbmUgX19sZTE2X3RvX2NwdXMoeCkgZG8geyAodm9pZCkgKHgpOyB9IHdoaWxlKDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX2NwdV90b19iZTY0cyh4KSBfX3N3YWI2NHMoKHgpKQogI2RlZmluZSBfX2JlNjRfdG9fY3B1cyh4KSBfX3N3YWI2NHMoKHgpKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYWlmL2NhaWZfc29ja2V0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NhaWYvY2FpZl9zb2NrZXQuaAppbmRleCA3MjE4ODY2Li44Nzk2MjNjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NhaWYvY2FpZl9zb2NrZXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NhaWYvY2FpZl9zb2NrZXQuaApAQCAtMjIsNzkgKzIyLDc5IEBACiAjaW5jbHVkZSA8bGludXgvc29ja2V0Lmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBjYWlmX2xpbmtfc2VsZWN0b3IgewotIENBSUZfTElOS19ISUdIX0JBTkRXLAotIENBSUZfTElOS19MT1dfTEFURU5DWQorICBDQUlGX0xJTktfSElHSF9CQU5EVywKKyAgQ0FJRl9MSU5LX0xPV19MQVRFTkNZCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gY2FpZl9jaGFubmVsX3ByaW9yaXR5IHsKLSBDQUlGX1BSSU9fTUlOID0gMHgwMSwKLSBDQUlGX1BSSU9fTE9XID0gMHgwNCwKLSBDQUlGX1BSSU9fTk9STUFMID0gMHgwZiwKKyAgQ0FJRl9QUklPX01JTiA9IDB4MDEsCisgIENBSUZfUFJJT19MT1cgPSAweDA0LAorICBDQUlGX1BSSU9fTk9STUFMID0gMHgwZiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ0FJRl9QUklPX0hJR0ggPSAweDE0LAotIENBSUZfUFJJT19NQVggPSAweDFGCisgIENBSUZfUFJJT19ISUdIID0gMHgxNCwKKyAgQ0FJRl9QUklPX01BWCA9IDB4MUYKIH07CiBlbnVtIGNhaWZfcHJvdG9jb2xfdHlwZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENBSUZQUk9UT19BVCwKLSBDQUlGUFJPVE9fREFUQUdSQU0sCi0gQ0FJRlBST1RPX0RBVEFHUkFNX0xPT1AsCi0gQ0FJRlBST1RPX1VUSUwsCisgIENBSUZQUk9UT19BVCwKKyAgQ0FJRlBST1RPX0RBVEFHUkFNLAorICBDQUlGUFJPVE9fREFUQUdSQU1fTE9PUCwKKyAgQ0FJRlBST1RPX1VUSUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENBSUZQUk9UT19SRk0sCi0gQ0FJRlBST1RPX0RFQlVHLAotIF9DQUlGUFJPVE9fTUFYCisgIENBSUZQUk9UT19SRk0sCisgIENBSUZQUk9UT19ERUJVRywKKyAgX0NBSUZQUk9UT19NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQUlGUFJPVE9fTUFYIF9DQUlGUFJPVE9fTUFYCiBlbnVtIGNhaWZfYXRfdHlwZSB7Ci0gQ0FJRl9BVFRZUEVfUExBSU4gPSAyCisgIENBSUZfQVRUWVBFX1BMQUlOID0gMgogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGNhaWZfZGVidWdfdHlwZSB7Ci0gQ0FJRl9ERUJVR19UUkFDRV9JTlRFUkFDVElWRSA9IDAsCi0gQ0FJRl9ERUJVR19UUkFDRSwKLSBDQUlGX0RFQlVHX0lOVEVSQUNUSVZFLAorICBDQUlGX0RFQlVHX1RSQUNFX0lOVEVSQUNUSVZFID0gMCwKKyAgQ0FJRl9ERUJVR19UUkFDRSwKKyAgQ0FJRl9ERUJVR19JTlRFUkFDVElWRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBjYWlmX2RlYnVnX3NlcnZpY2UgewotIENBSUZfUkFESU9fREVCVUdfU0VSVklDRSA9IDEsCi0gQ0FJRl9BUFBfREVCVUdfU0VSVklDRQorICBDQUlGX1JBRElPX0RFQlVHX1NFUlZJQ0UgPSAxLAorICBDQUlGX0FQUF9ERUJVR19TRVJWSUNFCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzb2NrYWRkcl9jYWlmIHsKLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBmYW1pbHk7Ci0gdW5pb24geworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBmYW1pbHk7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX3U4IHR5cGU7Ci0gfSBhdDsKLSBzdHJ1Y3QgeworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IHR5cGU7CisgICAgfSBhdDsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHNlcnZpY2VbMTZdOwotIH0gdXRpbDsKLSB1bmlvbiB7Ci0gX191MzIgY29ubmVjdGlvbl9pZDsKKyAgICAgIGNoYXIgc2VydmljZVsxNl07CisgICAgfSB1dGlsOworICAgIHVuaW9uIHsKKyAgICAgIF9fdTMyIGNvbm5lY3Rpb25faWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbnNhcGk7Ci0gfSBkZ207Ci0gc3RydWN0IHsKLSBfX3UzMiBjb25uZWN0aW9uX2lkOworICAgICAgX191OCBuc2FwaTsKKyAgICB9IGRnbTsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MzIgY29ubmVjdGlvbl9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciB2b2x1bWVbMTZdOwotIH0gcmZtOwotIHN0cnVjdCB7Ci0gX191OCB0eXBlOworICAgICAgY2hhciB2b2x1bWVbMTZdOworICAgIH0gcmZtOworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2VydmljZTsKLSB9IGRiZzsKLSB9IHU7CisgICAgICBfX3U4IHNlcnZpY2U7CisgICAgfSBkYmc7CisgIH0gdTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBjYWlmX3NvY2tldF9vcHRzIHsKLSBDQUlGU09fTElOS19TRUxFQ1QgPSAxMjcsCi0gQ0FJRlNPX1JFUV9QQVJBTSA9IDEyOCwKLSBDQUlGU09fUlNQX1BBUkFNID0gMTI5LAorICBDQUlGU09fTElOS19TRUxFQ1QgPSAxMjcsCisgIENBSUZTT19SRVFfUEFSQU0gPSAxMjgsCisgIENBSUZTT19SU1BfUEFSQU0gPSAxMjksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYWlmL2lmX2NhaWYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FpZi9pZl9jYWlmLmgKaW5kZXggYTIzN2QwYi4uMjkwNGVhYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYWlmL2lmX2NhaWYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NhaWYvaWZfY2FpZi5oCkBAIC0yMywxMyArMjMsMTMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaW5jbHVkZSA8bGludXgvc29ja2V0Lmg+CiBlbnVtIGlmbGFfY2FpZiB7Ci0gX19JRkxBX0NBSUZfVU5TUEVDLAotIElGTEFfQ0FJRl9JUFY0X0NPTk5JRCwKKyAgX19JRkxBX0NBSUZfVU5TUEVDLAorICBJRkxBX0NBSUZfSVBWNF9DT05OSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfQ0FJRl9JUFY2X0NPTk5JRCwKLSBJRkxBX0NBSUZfTE9PUEJBQ0ssCi0gX19JRkxBX0NBSUZfTUFYCisgIElGTEFfQ0FJRl9JUFY2X0NPTk5JRCwKKyAgSUZMQV9DQUlGX0xPT1BCQUNLLAorICBfX0lGTEFfQ0FJRl9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJRkxBX0NBSUZfTUFYIChfX0lGTEFfQ0FJRl9NQVgtMSkKKyNkZWZpbmUgSUZMQV9DQUlGX01BWCAoX19JRkxBX0NBSUZfTUFYIC0gMSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuLmgKaW5kZXggOTU0OWJiZi4uNGM0ZjJjNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nhbi5oCkBAIC0xNiw4ICsxNiw4IEBACiAgKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0jaWZuZGVmIENBTl9ICi0jZGVmaW5lIENBTl9ICisjaWZuZGVmIF9VQVBJX0NBTl9ICisjZGVmaW5lIF9VQVBJX0NBTl9ICiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNpbmNsdWRlIDxsaW51eC9zb2NrZXQuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0zOSwyMiArMzksMjIgQEAKICNkZWZpbmUgQ0FORkRfTUFYX0RMQyAxNQogI2RlZmluZSBDQU5GRF9NQVhfRExFTiA2NAogc3RydWN0IGNhbl9mcmFtZSB7Ci0gY2FuaWRfdCBjYW5faWQ7CisgIGNhbmlkX3QgY2FuX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNhbl9kbGM7Ci0gX191OCBkYXRhW0NBTl9NQVhfRExFTl0gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICBfX3U4IGNhbl9kbGM7CisgIF9fdTggZGF0YVtDQU5fTUFYX0RMRU5dIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKIH07CiAjZGVmaW5lIENBTkZEX0JSUyAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQU5GRF9FU0kgMHgwMgogc3RydWN0IGNhbmZkX2ZyYW1lIHsKLSBjYW5pZF90IGNhbl9pZDsKLSBfX3U4IGxlbjsKKyAgY2FuaWRfdCBjYW5faWQ7CisgIF9fdTggbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsYWdzOwotIF9fdTggX19yZXMwOwotIF9fdTggX19yZXMxOwotIF9fdTggZGF0YVtDQU5GRF9NQVhfRExFTl0gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICBfX3U4IGZsYWdzOworICBfX3U4IF9fcmVzMDsKKyAgX191OCBfX3JlczE7CisgIF9fdTggZGF0YVtDQU5GRF9NQVhfRExFTl0gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIENBTl9NVFUgKHNpemVvZihzdHJ1Y3QgY2FuX2ZyYW1lKSkKQEAgLTcxLDE4ICs3MSwyMCBAQAogI2RlZmluZSBTT0xfQ0FOX0JBU0UgMTAwCiBzdHJ1Y3Qgc29ja2FkZHJfY2FuIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfc2FfZmFtaWx5X3QgY2FuX2ZhbWlseTsKLSBpbnQgY2FuX2lmaW5kZXg7Ci0gdW5pb24gewotIHN0cnVjdCB7IGNhbmlkX3QgcnhfaWQsIHR4X2lkOyB9IHRwOworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBjYW5fZmFtaWx5OworICBpbnQgY2FuX2lmaW5kZXg7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGNhbl9hZGRyOworICAgICAgY2FuaWRfdCByeF9pZCwgdHhfaWQ7CisgICAgfSB0cDsKKyAgfSBjYW5fYWRkcjsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNhbl9maWx0ZXIgewotIGNhbmlkX3QgY2FuX2lkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjYW5pZF90IGNhbl9tYXNrOworICBjYW5pZF90IGNhbl9pZDsKKyAgY2FuaWRfdCBjYW5fbWFzazsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQU5fSU5WX0ZJTFRFUiAweDIwMDAwMDAwVQogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vYmNtLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nhbi9iY20uaAppbmRleCBmY2ExMjMyLi4yNWQ3MWU4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nhbi9iY20uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nhbi9iY20uaApAQCAtMTYsMzggKzE2LDM4IEBACiAgKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0jaWZuZGVmIENBTl9CQ01fSAotI2RlZmluZSBDQU5fQkNNX0gKKyNpZm5kZWYgX1VBUElfQ0FOX0JDTV9ICisjZGVmaW5lIF9VQVBJX0NBTl9CQ01fSAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjaW5jbHVkZSA8bGludXgvY2FuLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGJjbV9tc2dfaGVhZCB7Ci0gX191MzIgb3Bjb2RlOwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIGNvdW50OworICBfX3UzMiBvcGNvZGU7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRpbWV2YWwgaXZhbDEsIGl2YWwyOwotIGNhbmlkX3QgY2FuX2lkOwotIF9fdTMyIG5mcmFtZXM7Ci0gc3RydWN0IGNhbl9mcmFtZSBmcmFtZXNbMF07CisgIHN0cnVjdCB0aW1ldmFsIGl2YWwxLCBpdmFsMjsKKyAgY2FuaWRfdCBjYW5faWQ7CisgIF9fdTMyIG5mcmFtZXM7CisgIHN0cnVjdCBjYW5fZnJhbWUgZnJhbWVzWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBUWF9TRVRVUCA9IDEsCi0gVFhfREVMRVRFLAorICBUWF9TRVRVUCA9IDEsCisgIFRYX0RFTEVURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVFhfUkVBRCwKLSBUWF9TRU5ELAotIFJYX1NFVFVQLAotIFJYX0RFTEVURSwKKyAgVFhfUkVBRCwKKyAgVFhfU0VORCwKKyAgUlhfU0VUVVAsCisgIFJYX0RFTEVURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlhfUkVBRCwKLSBUWF9TVEFUVVMsCi0gVFhfRVhQSVJFRCwKLSBSWF9TVEFUVVMsCisgIFJYX1JFQUQsCisgIFRYX1NUQVRVUywKKyAgVFhfRVhQSVJFRCwKKyAgUlhfU1RBVFVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSWF9USU1FT1VULAotIFJYX0NIQU5HRUQKKyAgUlhfVElNRU9VVCwKKyAgUlhfQ0hBTkdFRAogfTsKICNkZWZpbmUgU0VUVElNRVIgMHgwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vZXJyb3IuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuL2Vycm9yLmgKaW5kZXggMjQzNmFjZS4uNDZhZjc1OCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vZXJyb3IuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nhbi9lcnJvci5oCkBAIC0xNiw4ICsxNiw4IEBACiAgKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0jaWZuZGVmIENBTl9FUlJPUl9ICi0jZGVmaW5lIENBTl9FUlJPUl9ICisjaWZuZGVmIF9VQVBJX0NBTl9FUlJPUl9ICisjZGVmaW5lIF9VQVBJX0NBTl9FUlJPUl9ICiAjZGVmaW5lIENBTl9FUlJfRExDIDgKICNkZWZpbmUgQ0FOX0VSUl9UWF9USU1FT1VUIDB4MDAwMDAwMDFVCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vZ3cuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuL2d3LmgKaW5kZXggZGQ4MGQ0OC4uMzc3MDNmZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vZ3cuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nhbi9ndy5oCkBAIC0xNiw0NCArMTYsNDQgQEAKICAqKioKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSNpZm5kZWYgQ0FOX0dXX0gKLSNkZWZpbmUgQ0FOX0dXX0gKKyNpZm5kZWYgX1VBUElfQ0FOX0dXX0gKKyNkZWZpbmUgX1VBUElfQ0FOX0dXX0gKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogI2luY2x1ZGUgPGxpbnV4L2Nhbi5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBydGNhbm1zZyB7Ci0gX191OCBjYW5fZmFtaWx5OwotIF9fdTggZ3d0eXBlOwotIF9fdTE2IGZsYWdzOworICBfX3U4IGNhbl9mYW1pbHk7CisgIF9fdTggZ3d0eXBlOworICBfX3UxNiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gQ0dXX1RZUEVfVU5TUEVDLAotIENHV19UWVBFX0NBTl9DQU4sCisgIENHV19UWVBFX1VOU1BFQywKKyAgQ0dXX1RZUEVfQ0FOX0NBTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19DR1dfVFlQRV9NQVgKKyAgX19DR1dfVFlQRV9NQVgKIH07CiAjZGVmaW5lIENHV19UWVBFX01BWCAoX19DR1dfVFlQRV9NQVggLSAxKQogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENHV19VTlNQRUMsCi0gQ0dXX01PRF9BTkQsCi0gQ0dXX01PRF9PUiwKLSBDR1dfTU9EX1hPUiwKKyAgQ0dXX1VOU1BFQywKKyAgQ0dXX01PRF9BTkQsCisgIENHV19NT0RfT1IsCisgIENHV19NT0RfWE9SLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDR1dfTU9EX1NFVCwKLSBDR1dfQ1NfWE9SLAotIENHV19DU19DUkM4LAotIENHV19IQU5ETEVELAorICBDR1dfTU9EX1NFVCwKKyAgQ0dXX0NTX1hPUiwKKyAgQ0dXX0NTX0NSQzgsCisgIENHV19IQU5ETEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDR1dfRFJPUFBFRCwKLSBDR1dfU1JDX0lGLAotIENHV19EU1RfSUYsCi0gQ0dXX0ZJTFRFUiwKKyAgQ0dXX0RST1BQRUQsCisgIENHV19TUkNfSUYsCisgIENHV19EU1RfSUYsCisgIENHV19GSUxURVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENHV19ERUxFVEVELAotIENHV19MSU1fSE9QUywKLSBfX0NHV19NQVgKKyAgQ0dXX0RFTEVURUQsCisgIENHV19MSU1fSE9QUywKKyAgX19DR1dfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0dXX01BWCAoX19DR1dfTUFYIC0gMSkKQEAgLTY5LDQxICs2OSw0MSBAQAogI2RlZmluZSBDR1dfRlJBTUVfTU9EUyAzCiAjZGVmaW5lIE1BWF9NT0RGVU5DVElPTlMgKENHV19NT0RfRlVOQ1MgKiBDR1dfRlJBTUVfTU9EUykKIHN0cnVjdCBjZ3dfZnJhbWVfbW9kIHsKLSBzdHJ1Y3QgY2FuX2ZyYW1lIGNmOworICBzdHJ1Y3QgY2FuX2ZyYW1lIGNmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG1vZHR5cGU7CisgIF9fdTggbW9kdHlwZTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIENHV19NT0RBVFRSX0xFTiBzaXplb2Yoc3RydWN0IGNnd19mcmFtZV9tb2QpCiBzdHJ1Y3QgY2d3X2NzdW1feG9yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zOCBmcm9tX2lkeDsKLSBfX3M4IHRvX2lkeDsKLSBfX3M4IHJlc3VsdF9pZHg7Ci0gX191OCBpbml0X3hvcl92YWw7CisgIF9fczggZnJvbV9pZHg7CisgIF9fczggdG9faWR4OworICBfX3M4IHJlc3VsdF9pZHg7CisgIF9fdTggaW5pdF94b3JfdmFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgY2d3X2NzdW1fY3JjOCB7Ci0gX19zOCBmcm9tX2lkeDsKLSBfX3M4IHRvX2lkeDsKKyAgX19zOCBmcm9tX2lkeDsKKyAgX19zOCB0b19pZHg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczggcmVzdWx0X2lkeDsKLSBfX3U4IGluaXRfY3JjX3ZhbDsKLSBfX3U4IGZpbmFsX3hvcl92YWw7Ci0gX191OCBjcmN0YWJbMjU2XTsKKyAgX19zOCByZXN1bHRfaWR4OworICBfX3U4IGluaXRfY3JjX3ZhbDsKKyAgX191OCBmaW5hbF94b3JfdmFsOworICBfX3U4IGNyY3RhYlsyNTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHByb2ZpbGU7Ci0gX191OCBwcm9maWxlX2RhdGFbMjBdOworICBfX3U4IHByb2ZpbGU7CisgIF9fdTggcHJvZmlsZV9kYXRhWzIwXTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIENHV19DU19YT1JfTEVOIHNpemVvZihzdHJ1Y3QgY2d3X2NzdW1feG9yKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0dXX0NTX0NSQzhfTEVOIHNpemVvZihzdHJ1Y3QgY2d3X2NzdW1fY3JjOCkKIGVudW0gewotIENHV19DUkM4UFJGX1VOU1BFQywKLSBDR1dfQ1JDOFBSRl8xVTgsCisgIENHV19DUkM4UFJGX1VOU1BFQywKKyAgQ0dXX0NSQzhQUkZfMVU4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDR1dfQ1JDOFBSRl8xNlU4LAotIENHV19DUkM4UFJGX1NGRklEX1hPUiwKLSBfX0NHV19DUkM4UFJGX01BWAorICBDR1dfQ1JDOFBSRl8xNlU4LAorICBDR1dfQ1JDOFBSRl9TRkZJRF9YT1IsCisgIF9fQ0dXX0NSQzhQUkZfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0dXX0NSQzhQUkZfTUFYIChfX0NHV19DUkM4UFJGX01BWCAtIDEpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nhbi9uZXRsaW5rLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nhbi9uZXRsaW5rLmgKaW5kZXggZGY4YTE5Yy4uYTFjMzE1OSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vbmV0bGluay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuL25ldGxpbmsuaApAQCAtMTYsNTkgKzE2LDU5IEBACiAgKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0jaWZuZGVmIENBTl9ORVRMSU5LX0gKLSNkZWZpbmUgQ0FOX05FVExJTktfSAorI2lmbmRlZiBfVUFQSV9DQU5fTkVUTElOS19ICisjZGVmaW5lIF9VQVBJX0NBTl9ORVRMSU5LX0gKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGNhbl9iaXR0aW1pbmcgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBiaXRyYXRlOwotIF9fdTMyIHNhbXBsZV9wb2ludDsKLSBfX3UzMiB0cTsKLSBfX3UzMiBwcm9wX3NlZzsKKyAgX191MzIgYml0cmF0ZTsKKyAgX191MzIgc2FtcGxlX3BvaW50OworICBfX3UzMiB0cTsKKyAgX191MzIgcHJvcF9zZWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBoYXNlX3NlZzE7Ci0gX191MzIgcGhhc2Vfc2VnMjsKLSBfX3UzMiBzanc7Ci0gX191MzIgYnJwOworICBfX3UzMiBwaGFzZV9zZWcxOworICBfX3UzMiBwaGFzZV9zZWcyOworICBfX3UzMiBzanc7CisgIF9fdTMyIGJycDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGNhbl9iaXR0aW1pbmdfY29uc3QgewotIGNoYXIgbmFtZVsxNl07Ci0gX191MzIgdHNlZzFfbWluOworICBjaGFyIG5hbWVbMTZdOworICBfX3UzMiB0c2VnMV9taW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRzZWcxX21heDsKLSBfX3UzMiB0c2VnMl9taW47Ci0gX191MzIgdHNlZzJfbWF4OwotIF9fdTMyIHNqd19tYXg7CisgIF9fdTMyIHRzZWcxX21heDsKKyAgX191MzIgdHNlZzJfbWluOworICBfX3UzMiB0c2VnMl9tYXg7CisgIF9fdTMyIHNqd19tYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJycF9taW47Ci0gX191MzIgYnJwX21heDsKLSBfX3UzMiBicnBfaW5jOworICBfX3UzMiBicnBfbWluOworICBfX3UzMiBicnBfbWF4OworICBfX3UzMiBicnBfaW5jOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY2FuX2Nsb2NrIHsKLSBfX3UzMiBmcmVxOworICBfX3UzMiBmcmVxOwogfTsKIGVudW0gY2FuX3N0YXRlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ0FOX1NUQVRFX0VSUk9SX0FDVElWRSA9IDAsCi0gQ0FOX1NUQVRFX0VSUk9SX1dBUk5JTkcsCi0gQ0FOX1NUQVRFX0VSUk9SX1BBU1NJVkUsCi0gQ0FOX1NUQVRFX0JVU19PRkYsCisgIENBTl9TVEFURV9FUlJPUl9BQ1RJVkUgPSAwLAorICBDQU5fU1RBVEVfRVJST1JfV0FSTklORywKKyAgQ0FOX1NUQVRFX0VSUk9SX1BBU1NJVkUsCisgIENBTl9TVEFURV9CVVNfT0ZGLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDQU5fU1RBVEVfU1RPUFBFRCwKLSBDQU5fU1RBVEVfU0xFRVBJTkcsCi0gQ0FOX1NUQVRFX01BWAorICBDQU5fU1RBVEVfU1RPUFBFRCwKKyAgQ0FOX1NUQVRFX1NMRUVQSU5HLAorICBDQU5fU1RBVEVfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjYW5fYmVycl9jb3VudGVyIHsKLSBfX3UxNiB0eGVycjsKLSBfX3UxNiByeGVycjsKKyAgX191MTYgdHhlcnI7CisgIF9fdTE2IHJ4ZXJyOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY2FuX2N0cmxtb2RlIHsKLSBfX3UzMiBtYXNrOwotIF9fdTMyIGZsYWdzOworICBfX3UzMiBtYXNrOworICBfX3UzMiBmbGFnczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQU5fQ1RSTE1PREVfTE9PUEJBQ0sgMHgwMQpAQCAtNzcsMzAgKzc3LDM3IEBACiAjZGVmaW5lIENBTl9DVFJMTU9ERV9PTkVfU0hPVCAweDA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQU5fQ1RSTE1PREVfQkVSUl9SRVBPUlRJTkcgMHgxMAorI2RlZmluZSBDQU5fQ1RSTE1PREVfRkQgMHgyMAorI2RlZmluZSBDQU5fQ1RSTE1PREVfUFJFU1VNRV9BQ0sgMHg0MAorI2RlZmluZSBDQU5fQ1RSTE1PREVfRkRfTk9OX0lTTyAweDgwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNhbl9kZXZpY2Vfc3RhdHMgewotIF9fdTMyIGJ1c19lcnJvcjsKLSBfX3UzMiBlcnJvcl93YXJuaW5nOworICBfX3UzMiBidXNfZXJyb3I7CisgIF9fdTMyIGVycm9yX3dhcm5pbmc7CisgIF9fdTMyIGVycm9yX3Bhc3NpdmU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGVycm9yX3Bhc3NpdmU7Ci0gX191MzIgYnVzX29mZjsKLSBfX3UzMiBhcmJpdHJhdGlvbl9sb3N0OwotIF9fdTMyIHJlc3RhcnRzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgYnVzX29mZjsKKyAgX191MzIgYXJiaXRyYXRpb25fbG9zdDsKKyAgX191MzIgcmVzdGFydHM7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIElGTEFfQ0FOX1VOU1BFQywKLSBJRkxBX0NBTl9CSVRUSU1JTkcsCisgIElGTEFfQ0FOX1VOU1BFQywKKyAgSUZMQV9DQU5fQklUVElNSU5HLAorICBJRkxBX0NBTl9CSVRUSU1JTkdfQ09OU1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfQ0FOX0JJVFRJTUlOR19DT05TVCwKLSBJRkxBX0NBTl9DTE9DSywKLSBJRkxBX0NBTl9TVEFURSwKLSBJRkxBX0NBTl9DVFJMTU9ERSwKKyAgSUZMQV9DQU5fQ0xPQ0ssCisgIElGTEFfQ0FOX1NUQVRFLAorICBJRkxBX0NBTl9DVFJMTU9ERSwKKyAgSUZMQV9DQU5fUkVTVEFSVF9NUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9DQU5fUkVTVEFSVF9NUywKLSBJRkxBX0NBTl9SRVNUQVJULAotIElGTEFfQ0FOX0JFUlJfQ09VTlRFUiwKLSBfX0lGTEFfQ0FOX01BWAorICBJRkxBX0NBTl9SRVNUQVJULAorICBJRkxBX0NBTl9CRVJSX0NPVU5URVIsCisgIElGTEFfQ0FOX0RBVEFfQklUVElNSU5HLAorICBJRkxBX0NBTl9EQVRBX0JJVFRJTUlOR19DT05TVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fSUZMQV9DQU5fTUFYCiB9OwogI2RlZmluZSBJRkxBX0NBTl9NQVggKF9fSUZMQV9DQU5fTUFYIC0gMSkKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FuL3Jhdy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vcmF3LmgKaW5kZXggOWQ0MGM5MC4uYTcwZDg4MSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vcmF3LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYW4vcmF3LmgKQEAgLTE2LDE4ICsxNiwxOCBAQAogICoqKgogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotI2lmbmRlZiBDQU5fUkFXX0gKLSNkZWZpbmUgQ0FOX1JBV19ICisjaWZuZGVmIF9VQVBJX0NBTl9SQVdfSAorI2RlZmluZSBfVUFQSV9DQU5fUkFXX0gKICNpbmNsdWRlIDxsaW51eC9jYW4uaD4KICNkZWZpbmUgU09MX0NBTl9SQVcgKFNPTF9DQU5fQkFTRSArIENBTl9SQVcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gQ0FOX1JBV19GSUxURVIgPSAxLAotIENBTl9SQVdfRVJSX0ZJTFRFUiwKLSBDQU5fUkFXX0xPT1BCQUNLLAorICBDQU5fUkFXX0ZJTFRFUiA9IDEsCisgIENBTl9SQVdfRVJSX0ZJTFRFUiwKKyAgQ0FOX1JBV19MT09QQkFDSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ0FOX1JBV19SRUNWX09XTl9NU0dTLAotIENBTl9SQVdfRkRfRlJBTUVTLAorICBDQU5fUkFXX1JFQ1ZfT1dOX01TR1MsCisgIENBTl9SQVdfRkRfRlJBTUVTLAogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2FwYWJpbGl0eS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYXBhYmlsaXR5LmgKaW5kZXggYzBhYjRkOS4uNmNlZDZlMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYXBhYmlsaXR5LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYXBhYmlsaXR5LmgKQEAgLTI5LDE2ICsyOSwxNiBAQAogI2RlZmluZSBfTElOVVhfQ0FQQUJJTElUWV9WRVJTSU9OXzMgMHgyMDA4MDUyMgogI2RlZmluZSBfTElOVVhfQ0FQQUJJTElUWV9VMzJTXzMgMgogdHlwZWRlZiBzdHJ1Y3QgX191c2VyX2NhcF9oZWFkZXJfc3RydWN0IHsKLSBfX3UzMiB2ZXJzaW9uOworICBfX3UzMiB2ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcGlkOwotfSBfX3VzZXIgKmNhcF91c2VyX2hlYWRlcl90OworICBpbnQgcGlkOworfSBfX3VzZXIgKiBjYXBfdXNlcl9oZWFkZXJfdDsKIHR5cGVkZWYgc3RydWN0IF9fdXNlcl9jYXBfZGF0YV9zdHJ1Y3QgewotIF9fdTMyIGVmZmVjdGl2ZTsKKyAgX191MzIgZWZmZWN0aXZlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwZXJtaXR0ZWQ7Ci0gX191MzIgaW5oZXJpdGFibGU7Ci19IF9fdXNlciAqY2FwX3VzZXJfZGF0YV90OworICBfX3UzMiBwZXJtaXR0ZWQ7CisgIF9fdTMyIGluaGVyaXRhYmxlOworfSBfX3VzZXIgKiBjYXBfdXNlcl9kYXRhX3Q7CiAjZGVmaW5lIFZGU19DQVBfUkVWSVNJT05fTUFTSyAweEZGMDAwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWRlNfQ0FQX1JFVklTSU9OX1NISUZUIDI0CkBAIC00NywyMiArNDcsMjIgQEAKICNkZWZpbmUgVkZTX0NBUF9SRVZJU0lPTl8xIDB4MDEwMDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZGU19DQVBfVTMyXzEgMQotI2RlZmluZSBYQVRUUl9DQVBTX1NaXzEgKHNpemVvZihfX2xlMzIpKigxICsgMipWRlNfQ0FQX1UzMl8xKSkKKyNkZWZpbmUgWEFUVFJfQ0FQU19TWl8xIChzaXplb2YoX19sZTMyKSAqICgxICsgMiAqIFZGU19DQVBfVTMyXzEpKQogI2RlZmluZSBWRlNfQ0FQX1JFVklTSU9OXzIgMHgwMjAwMDAwMAogI2RlZmluZSBWRlNfQ0FQX1UzMl8yIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFhBVFRSX0NBUFNfU1pfMiAoc2l6ZW9mKF9fbGUzMikqKDEgKyAyKlZGU19DQVBfVTMyXzIpKQorI2RlZmluZSBYQVRUUl9DQVBTX1NaXzIgKHNpemVvZihfX2xlMzIpICogKDEgKyAyICogVkZTX0NBUF9VMzJfMikpCiAjZGVmaW5lIFhBVFRSX0NBUFNfU1ogWEFUVFJfQ0FQU19TWl8yCiAjZGVmaW5lIFZGU19DQVBfVTMyIFZGU19DQVBfVTMyXzIKICNkZWZpbmUgVkZTX0NBUF9SRVZJU0lPTiBWRlNfQ0FQX1JFVklTSU9OXzIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdmZzX2NhcF9kYXRhIHsKLSBfX2xlMzIgbWFnaWNfZXRjOwotIHN0cnVjdCB7Ci0gX19sZTMyIHBlcm1pdHRlZDsKKyAgX19sZTMyIG1hZ2ljX2V0YzsKKyAgc3RydWN0IHsKKyAgICBfX2xlMzIgcGVybWl0dGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgaW5oZXJpdGFibGU7Ci0gfSBkYXRhW1ZGU19DQVBfVTMyXTsKKyAgICBfX2xlMzIgaW5oZXJpdGFibGU7CisgIH0gZGF0YVtWRlNfQ0FQX1UzMl07CiB9OwogI2RlZmluZSBfTElOVVhfQ0FQQUJJTElUWV9WRVJTSU9OIF9MSU5VWF9DQVBBQklMSVRZX1ZFUlNJT05fMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTExMyw5ICsxMTMsMTEgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENBUF9XQUtFX0FMQVJNIDM1CiAjZGVmaW5lIENBUF9CTE9DS19TVVNQRU5EIDM2Ci0jZGVmaW5lIENBUF9MQVNUX0NBUCBDQVBfQkxPQ0tfU1VTUEVORAotI2RlZmluZSBjYXBfdmFsaWQoeCkgKCh4KSA+PSAwICYmICh4KSA8PSBDQVBfTEFTVF9DQVApCisjZGVmaW5lIENBUF9BVURJVF9SRUFEIDM3CisjZGVmaW5lIENBUF9MQVNUX0NBUCBDQVBfQVVESVRfUkVBRAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgY2FwX3ZhbGlkKHgpICgoeCkgPj0gMCAmJiAoeCkgPD0gQ0FQX0xBU1RfQ0FQKQogI2RlZmluZSBDQVBfVE9fSU5ERVgoeCkgKCh4KSA+PiA1KQogI2RlZmluZSBDQVBfVE9fTUFTSyh4KSAoMSA8PCAoKHgpICYgMzEpKQogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jYXBpLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NhcGkuaAppbmRleCBhNTYyMmVhLi40NjRjMjZmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NhcGkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NhcGkuaApAQCAtMjMsNjcgKzIzLDY3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L2tlcm5lbGNhcGkuaD4KIHR5cGVkZWYgc3RydWN0IGNhcGlfcmVnaXN0ZXJfcGFyYW1zIHsKLSBfX3UzMiBsZXZlbDNjbnQ7Ci0gX191MzIgZGF0YWJsa2NudDsKKyAgX191MzIgbGV2ZWwzY250OworICBfX3UzMiBkYXRhYmxrY250OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkYXRhYmxrbGVuOworICBfX3UzMiBkYXRhYmxrbGVuOwogfSBjYXBpX3JlZ2lzdGVyX3BhcmFtczsKLSNkZWZpbmUgQ0FQSV9SRUdJU1RFUiBfSU9XKCdDJywweDAxLHN0cnVjdCBjYXBpX3JlZ2lzdGVyX3BhcmFtcykKKyNkZWZpbmUgQ0FQSV9SRUdJU1RFUiBfSU9XKCdDJywgMHgwMSwgc3RydWN0IGNhcGlfcmVnaXN0ZXJfcGFyYW1zKQogI2RlZmluZSBDQVBJX01BTlVGQUNUVVJFUl9MRU4gNjQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENBUElfR0VUX01BTlVGQUNUVVJFUiBfSU9XUignQycsMHgwNixpbnQpCisjZGVmaW5lIENBUElfR0VUX01BTlVGQUNUVVJFUiBfSU9XUignQycsIDB4MDYsIGludCkKIHR5cGVkZWYgc3RydWN0IGNhcGlfdmVyc2lvbiB7Ci0gX191MzIgbWFqb3J2ZXJzaW9uOwotIF9fdTMyIG1pbm9ydmVyc2lvbjsKKyAgX191MzIgbWFqb3J2ZXJzaW9uOworICBfX3UzMiBtaW5vcnZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1ham9ybWFudXZlcnNpb247Ci0gX191MzIgbWlub3JtYW51dmVyc2lvbjsKKyAgX191MzIgbWFqb3JtYW51dmVyc2lvbjsKKyAgX191MzIgbWlub3JtYW51dmVyc2lvbjsKIH0gY2FwaV92ZXJzaW9uOwotI2RlZmluZSBDQVBJX0dFVF9WRVJTSU9OIF9JT1dSKCdDJywweDA3LHN0cnVjdCBjYXBpX3ZlcnNpb24pCisjZGVmaW5lIENBUElfR0VUX1ZFUlNJT04gX0lPV1IoJ0MnLCAweDA3LCBzdHJ1Y3QgY2FwaV92ZXJzaW9uKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0FQSV9TRVJJQUxfTEVOIDgKLSNkZWZpbmUgQ0FQSV9HRVRfU0VSSUFMIF9JT1dSKCdDJywweDA4LGludCkKKyNkZWZpbmUgQ0FQSV9HRVRfU0VSSUFMIF9JT1dSKCdDJywgMHgwOCwgaW50KQogdHlwZWRlZiBzdHJ1Y3QgY2FwaV9wcm9maWxlIHsKLSBfX3UxNiBuY29udHJvbGxlcjsKKyAgX191MTYgbmNvbnRyb2xsZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG5iY2hhbm5lbDsKLSBfX3UzMiBnb3B0aW9uczsKLSBfX3UzMiBzdXBwb3J0MTsKLSBfX3UzMiBzdXBwb3J0MjsKKyAgX191MTYgbmJjaGFubmVsOworICBfX3UzMiBnb3B0aW9uczsKKyAgX191MzIgc3VwcG9ydDE7CisgIF9fdTMyIHN1cHBvcnQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzdXBwb3J0MzsKLSBfX3UzMiByZXNlcnZlZFs2XTsKLSBfX3UzMiBtYW51WzVdOworICBfX3UzMiBzdXBwb3J0MzsKKyAgX191MzIgcmVzZXJ2ZWRbNl07CisgIF9fdTMyIG1hbnVbNV07CiB9IGNhcGlfcHJvZmlsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENBUElfR0VUX1BST0ZJTEUgX0lPV1IoJ0MnLDB4MDksc3RydWN0IGNhcGlfcHJvZmlsZSkKKyNkZWZpbmUgQ0FQSV9HRVRfUFJPRklMRSBfSU9XUignQycsIDB4MDksIHN0cnVjdCBjYXBpX3Byb2ZpbGUpCiB0eXBlZGVmIHN0cnVjdCBjYXBpX21hbnVmYWN0dXJlcl9jbWQgewotIHVuc2lnbmVkIGxvbmcgY21kOwotIHZvaWQgX191c2VyICpkYXRhOworICB1bnNpZ25lZCBsb25nIGNtZDsKKyAgdm9pZCBfX3VzZXIgKiBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gY2FwaV9tYW51ZmFjdHVyZXJfY21kOwotI2RlZmluZSBDQVBJX01BTlVGQUNUVVJFUl9DTUQgX0lPV1IoJ0MnLDB4MjAsIHN0cnVjdCBjYXBpX21hbnVmYWN0dXJlcl9jbWQpCi0jZGVmaW5lIENBUElfR0VUX0VSUkNPREUgX0lPUignQycsMHgyMSwgX191MTYpCi0jZGVmaW5lIENBUElfSU5TVEFMTEVEIF9JT1IoJ0MnLDB4MjIsIF9fdTE2KQorI2RlZmluZSBDQVBJX01BTlVGQUNUVVJFUl9DTUQgX0lPV1IoJ0MnLCAweDIwLCBzdHJ1Y3QgY2FwaV9tYW51ZmFjdHVyZXJfY21kKQorI2RlZmluZSBDQVBJX0dFVF9FUlJDT0RFIF9JT1IoJ0MnLCAweDIxLCBfX3UxNikKKyNkZWZpbmUgQ0FQSV9JTlNUQUxMRUQgX0lPUignQycsIDB4MjIsIF9fdTE2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgdW5pb24gY2FwaV9pb2N0bF9zdHJ1Y3QgewotIF9fdTMyIGNvbnRyOwotIGNhcGlfcmVnaXN0ZXJfcGFyYW1zIHJwYXJhbXM7Ci0gX191OCBtYW51ZmFjdHVyZXJbQ0FQSV9NQU5VRkFDVFVSRVJfTEVOXTsKKyAgX191MzIgY29udHI7CisgIGNhcGlfcmVnaXN0ZXJfcGFyYW1zIHJwYXJhbXM7CisgIF9fdTggbWFudWZhY3R1cmVyW0NBUElfTUFOVUZBQ1RVUkVSX0xFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNhcGlfdmVyc2lvbiB2ZXJzaW9uOwotIF9fdTggc2VyaWFsW0NBUElfU0VSSUFMX0xFTl07Ci0gY2FwaV9wcm9maWxlIHByb2ZpbGU7Ci0gY2FwaV9tYW51ZmFjdHVyZXJfY21kIGNtZDsKKyAgY2FwaV92ZXJzaW9uIHZlcnNpb247CisgIF9fdTggc2VyaWFsW0NBUElfU0VSSUFMX0xFTl07CisgIGNhcGlfcHJvZmlsZSBwcm9maWxlOworICBjYXBpX21hbnVmYWN0dXJlcl9jbWQgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBlcnJjb2RlOworICBfX3UxNiBlcnJjb2RlOwogfSBjYXBpX2lvY3RsX3N0cnVjdDsKICNkZWZpbmUgQ0FQSUZMQUdfSElHSEpBQ0tJTkcgMHgwMDAxCi0jZGVmaW5lIENBUElfR0VUX0ZMQUdTIF9JT1IoJ0MnLDB4MjMsIHVuc2lnbmVkKQorI2RlZmluZSBDQVBJX0dFVF9GTEFHUyBfSU9SKCdDJywgMHgyMywgdW5zaWduZWQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX1NFVF9GTEFHUyBfSU9SKCdDJywweDI0LCB1bnNpZ25lZCkKLSNkZWZpbmUgQ0FQSV9DTFJfRkxBR1MgX0lPUignQycsMHgyNSwgdW5zaWduZWQpCi0jZGVmaW5lIENBUElfTkNDSV9PUEVOQ09VTlQgX0lPUignQycsMHgyNiwgdW5zaWduZWQpCi0jZGVmaW5lIENBUElfTkNDSV9HRVRVTklUIF9JT1IoJ0MnLDB4MjcsIHVuc2lnbmVkKQorI2RlZmluZSBDQVBJX1NFVF9GTEFHUyBfSU9SKCdDJywgMHgyNCwgdW5zaWduZWQpCisjZGVmaW5lIENBUElfQ0xSX0ZMQUdTIF9JT1IoJ0MnLCAweDI1LCB1bnNpZ25lZCkKKyNkZWZpbmUgQ0FQSV9OQ0NJX09QRU5DT1VOVCBfSU9SKCdDJywgMHgyNiwgdW5zaWduZWQpCisjZGVmaW5lIENBUElfTkNDSV9HRVRVTklUIF9JT1IoJ0MnLCAweDI3LCB1bnNpZ25lZCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2Npc3NfZGVmcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jY2lzc19kZWZzLmgKaW5kZXggMGZiYTc3Mi4uYWYwNzVmOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jY2lzc19kZWZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jY2lzc19kZWZzLmgKQEAgLTYyLDg2ICs2Miw4NiBAQAogI3ByYWdtYSBwYWNrKDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiB1bmlvbiBfU0NTSTNBZGRyX3N0cnVjdCB7Ci0gc3RydWN0IHsKLSBCWVRFIERldjsKLSBCWVRFIEJ1czo2OworICBzdHJ1Y3QgeworICAgIEJZVEUgRGV2OworICAgIEJZVEUgQnVzIDogNjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQllURSBNb2RlOjI7Ci0gfSBQZXJpcERldjsKLSBzdHJ1Y3QgewotIEJZVEUgRGV2TFNCOworICAgIEJZVEUgTW9kZSA6IDI7CisgIH0gUGVyaXBEZXY7CisgIHN0cnVjdCB7CisgICAgQllURSBEZXZMU0I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJZVEUgRGV2TVNCOjY7Ci0gQllURSBNb2RlOjI7Ci0gfSBMb2dEZXY7Ci0gc3RydWN0IHsKKyAgICBCWVRFIERldk1TQiA6IDY7CisgICAgQllURSBNb2RlIDogMjsKKyAgfSBMb2dEZXY7CisgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJZVEUgRGV2OjU7Ci0gQllURSBCdXM6MzsKLSBCWVRFIFRhcmc6NjsKLSBCWVRFIE1vZGU6MjsKKyAgICBCWVRFIERldiA6IDU7CisgICAgQllURSBCdXMgOiAzOworICAgIEJZVEUgVGFyZyA6IDY7CisgICAgQllURSBNb2RlIDogMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBMb2dVbml0OworICB9IExvZ1VuaXQ7CiB9IFNDU0kzQWRkcl9zdHJ1Y3Q7CiB0eXBlZGVmIHN0cnVjdCBfUGh5c0RldkFkZHJfc3RydWN0IHsKLSBEV09SRCBUYXJnZXRJZDoyNDsKKyAgRFdPUkQgVGFyZ2V0SWQgOiAyNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRFdPUkQgQnVzOjY7Ci0gRFdPUkQgTW9kZToyOwotIFNDU0kzQWRkcl9zdHJ1Y3QgVGFyZ2V0WzJdOworICBEV09SRCBCdXMgOiA2OworICBEV09SRCBNb2RlIDogMjsKKyAgU0NTSTNBZGRyX3N0cnVjdCBUYXJnZXRbMl07CiB9IFBoeXNEZXZBZGRyX3N0cnVjdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBfTG9nRGV2QWRkcl9zdHJ1Y3QgewotIERXT1JEIFZvbElkOjMwOwotIERXT1JEIE1vZGU6MjsKLSBCWVRFIHJlc2VydmVkWzRdOworICBEV09SRCBWb2xJZCA6IDMwOworICBEV09SRCBNb2RlIDogMjsKKyAgQllURSByZXNlcnZlZFs0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IExvZ0RldkFkZHJfc3RydWN0OwogdHlwZWRlZiB1bmlvbiBfTFVOQWRkcl9zdHJ1Y3QgewotIEJZVEUgTHVuQWRkckJ5dGVzWzhdOwotIFNDU0kzQWRkcl9zdHJ1Y3QgU0NTSTNMdW5bNF07CisgIEJZVEUgTHVuQWRkckJ5dGVzWzhdOworICBTQ1NJM0FkZHJfc3RydWN0IFNDU0kzTHVuWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQaHlzRGV2QWRkcl9zdHJ1Y3QgUGh5c0RldjsKLSBMb2dEZXZBZGRyX3N0cnVjdCBMb2dEZXY7CisgIFBoeXNEZXZBZGRyX3N0cnVjdCBQaHlzRGV2OworICBMb2dEZXZBZGRyX3N0cnVjdCBMb2dEZXY7CiB9IExVTkFkZHJfc3RydWN0OwogdHlwZWRlZiBzdHJ1Y3QgX1JlcXVlc3RCbG9ja19zdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCWVRFIENEQkxlbjsKLSBzdHJ1Y3QgewotIEJZVEUgVHlwZTozOwotIEJZVEUgQXR0cmlidXRlOjM7CisgIEJZVEUgQ0RCTGVuOworICBzdHJ1Y3QgeworICAgIEJZVEUgVHlwZSA6IDM7CisgICAgQllURSBBdHRyaWJ1dGUgOiAzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCWVRFIERpcmVjdGlvbjoyOwotIH0gVHlwZTsKLSBIV09SRCBUaW1lb3V0OwotIEJZVEUgQ0RCWzE2XTsKKyAgICBCWVRFIERpcmVjdGlvbiA6IDI7CisgIH0gVHlwZTsKKyAgSFdPUkQgVGltZW91dDsKKyAgQllURSBDREJbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gUmVxdWVzdEJsb2NrX3N0cnVjdDsKLXR5cGVkZWYgdW5pb24gX01vcmVFcnJJbmZvX3N0cnVjdHsKLSBzdHJ1Y3QgewotIEJZVEUgUmVzZXJ2ZWRbM107Cit0eXBlZGVmIHVuaW9uIF9Nb3JlRXJySW5mb19zdHJ1Y3QgeworICBzdHJ1Y3QgeworICAgIEJZVEUgUmVzZXJ2ZWRbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJZVEUgVHlwZTsKLSBEV09SRCBFcnJvckluZm87Ci0gfSBDb21tb25fSW5mbzsKLSBzdHJ1Y3R7CisgICAgQllURSBUeXBlOworICAgIERXT1JEIEVycm9ySW5mbzsKKyAgfSBDb21tb25fSW5mbzsKKyAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQllURSBSZXNlcnZlZFsyXTsKLSBCWVRFIG9mZmVuc2Vfc2l6ZTsKLSBCWVRFIG9mZmVuc2VfbnVtOwotIERXT1JEIG9mZmVuc2VfdmFsdWU7CisgICAgQllURSBSZXNlcnZlZFsyXTsKKyAgICBCWVRFIG9mZmVuc2Vfc2l6ZTsKKyAgICBCWVRFIG9mZmVuc2VfbnVtOworICAgIERXT1JEIG9mZmVuc2VfdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gSW52YWxpZF9DbWQ7CisgIH0gSW52YWxpZF9DbWQ7CiB9IE1vcmVFcnJJbmZvX3N0cnVjdDsKIHR5cGVkZWYgc3RydWN0IF9FcnJvckluZm9fc3RydWN0IHsKLSBCWVRFIFNjc2lTdGF0dXM7CisgIEJZVEUgU2NzaVN0YXR1czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQllURSBTZW5zZUxlbjsKLSBIV09SRCBDb21tYW5kU3RhdHVzOwotIERXT1JEIFJlc2lkdWFsQ250OwotIE1vcmVFcnJJbmZvX3N0cnVjdCBNb3JlRXJySW5mbzsKKyAgQllURSBTZW5zZUxlbjsKKyAgSFdPUkQgQ29tbWFuZFN0YXR1czsKKyAgRFdPUkQgUmVzaWR1YWxDbnQ7CisgIE1vcmVFcnJJbmZvX3N0cnVjdCBNb3JlRXJySW5mbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQllURSBTZW5zZUluZm9bU0VOU0VJTkZPQllURVNdOworICBCWVRFIFNlbnNlSW5mb1tTRU5TRUlORk9CWVRFU107CiB9IEVycm9ySW5mb19zdHJ1Y3Q7CiAjcHJhZ21hIHBhY2soKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NjaXNzX2lvY3RsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NjaXNzX2lvY3RsLmgKaW5kZXggMTExOTBiOS4uYWI2ZTMyNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jY2lzc19pb2N0bC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2Npc3NfaW9jdGwuaApAQCAtMjMsNzggKzIzLDc2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L2NjaXNzX2RlZnMuaD4KICNkZWZpbmUgQ0NJU1NfSU9DX01BR0lDICdCJwotdHlwZWRlZiBzdHJ1Y3QgX2NjaXNzX3BjaV9pbmZvX3N0cnVjdAotewordHlwZWRlZiBzdHJ1Y3QgX2NjaXNzX3BjaV9pbmZvX3N0cnVjdCB7CisgIHVuc2lnbmVkIGNoYXIgYnVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGJ1czsKLSB1bnNpZ25lZCBjaGFyIGRldl9mbjsKLSB1bnNpZ25lZCBzaG9ydCBkb21haW47Ci0gX191MzIgYm9hcmRfaWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBjaGFyIGRldl9mbjsKKyAgdW5zaWduZWQgc2hvcnQgZG9tYWluOworICBfX3UzMiBib2FyZF9pZDsKIH0gY2Npc3NfcGNpX2luZm9fc3RydWN0OwotdHlwZWRlZiBzdHJ1Y3QgX2NjaXNzX2NvYWxpbnRfc3RydWN0Ci17Ci0gX191MzIgZGVsYXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNvdW50OwordHlwZWRlZiBzdHJ1Y3QgX2NjaXNzX2NvYWxpbnRfc3RydWN0IHsKKyAgX191MzIgZGVsYXk7CisgIF9fdTMyIGNvdW50OwogfSBjY2lzc19jb2FsaW50X3N0cnVjdDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIGNoYXIgTm9kZU5hbWVfdHlwZVsxNl07CiB0eXBlZGVmIF9fdTMyIEhlYXJ0YmVhdF90eXBlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0lTU19QQVJTQ1NJVTIgMHgwMDAxCiAjZGVmaW5lIENJU1NfUEFSQ1NDSVUzIDB4MDAwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0lTU19GSUJSRTFHIDB4MDEwMAogI2RlZmluZSBDSVNTX0ZJQlJFMkcgMHgwMjAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBfX3UzMiBCdXNUeXBlc190eXBlOwogdHlwZWRlZiBjaGFyIEZpcm13YXJlVmVyX3R5cGVbNF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBfX3UzMiBEcml2ZXJWZXJfdHlwZTsKICNkZWZpbmUgTUFYX0tNQUxMT0NfU0laRSAxMjgwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBfSU9DVExfQ29tbWFuZF9zdHJ1Y3QgewotIExVTkFkZHJfc3RydWN0IExVTl9pbmZvOwotIFJlcXVlc3RCbG9ja19zdHJ1Y3QgUmVxdWVzdDsKLSBFcnJvckluZm9fc3RydWN0IGVycm9yX2luZm87CisgIExVTkFkZHJfc3RydWN0IExVTl9pbmZvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBXT1JEIGJ1Zl9zaXplOwotIEJZVEUgX191c2VyICpidWY7CisgIFJlcXVlc3RCbG9ja19zdHJ1Y3QgUmVxdWVzdDsKKyAgRXJyb3JJbmZvX3N0cnVjdCBlcnJvcl9pbmZvOworICBXT1JEIGJ1Zl9zaXplOworICBCWVRFIF9fdXNlciAqIGJ1ZjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IElPQ1RMX0NvbW1hbmRfc3RydWN0OwogdHlwZWRlZiBzdHJ1Y3QgX0JJR19JT0NUTF9Db21tYW5kX3N0cnVjdCB7CisgIExVTkFkZHJfc3RydWN0IExVTl9pbmZvOworICBSZXF1ZXN0QmxvY2tfc3RydWN0IFJlcXVlc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExVTkFkZHJfc3RydWN0IExVTl9pbmZvOwotIFJlcXVlc3RCbG9ja19zdHJ1Y3QgUmVxdWVzdDsKLSBFcnJvckluZm9fc3RydWN0IGVycm9yX2luZm87Ci0gRFdPUkQgbWFsbG9jX3NpemU7CisgIEVycm9ySW5mb19zdHJ1Y3QgZXJyb3JfaW5mbzsKKyAgRFdPUkQgbWFsbG9jX3NpemU7CisgIERXT1JEIGJ1Zl9zaXplOworICBCWVRFIF9fdXNlciAqIGJ1ZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRFdPUkQgYnVmX3NpemU7Ci0gQllURSBfX3VzZXIgKmJ1ZjsKIH0gQklHX0lPQ1RMX0NvbW1hbmRfc3RydWN0OwotdHlwZWRlZiBzdHJ1Y3QgX0xvZ3ZvbEluZm9fc3RydWN0ewordHlwZWRlZiBzdHJ1Y3QgX0xvZ3ZvbEluZm9fc3RydWN0IHsKKyAgX191MzIgTHVuSUQ7CisgIGludCBudW1fb3BlbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIEx1bklEOwotIGludCBudW1fb3BlbnM7Ci0gaW50IG51bV9wYXJ0czsKKyAgaW50IG51bV9wYXJ0czsKIH0gTG9ndm9sSW5mb19zdHJ1Y3Q7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQ0lTU19HRVRQQ0lJTkZPIF9JT1IoQ0NJU1NfSU9DX01BR0lDLCAxLCBjY2lzc19wY2lfaW5mb19zdHJ1Y3QpCiAjZGVmaW5lIENDSVNTX0dFVElOVElORk8gX0lPUihDQ0lTU19JT0NfTUFHSUMsIDIsIGNjaXNzX2NvYWxpbnRfc3RydWN0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0NJU1NfU0VUSU5USU5GTyBfSU9XKENDSVNTX0lPQ19NQUdJQywgMywgY2Npc3NfY29hbGludF9zdHJ1Y3QpCiAjZGVmaW5lIENDSVNTX0dFVE5PREVOQU1FIF9JT1IoQ0NJU1NfSU9DX01BR0lDLCA0LCBOb2RlTmFtZV90eXBlKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0NJU1NfU0VUTk9ERU5BTUUgX0lPVyhDQ0lTU19JT0NfTUFHSUMsIDUsIE5vZGVOYW1lX3R5cGUpCiAjZGVmaW5lIENDSVNTX0dFVEhFQVJUQkVBVCBfSU9SKENDSVNTX0lPQ19NQUdJQywgNiwgSGVhcnRiZWF0X3R5cGUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQ0lTU19HRVRCVVNUWVBFUyBfSU9SKENDSVNTX0lPQ19NQUdJQywgNywgQnVzVHlwZXNfdHlwZSkKICNkZWZpbmUgQ0NJU1NfR0VURklSTVZFUiBfSU9SKENDSVNTX0lPQ19NQUdJQywgOCwgRmlybXdhcmVWZXJfdHlwZSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENDSVNTX0dFVERSSVZWRVIgX0lPUihDQ0lTU19JT0NfTUFHSUMsIDksIERyaXZlclZlcl90eXBlKQogI2RlZmluZSBDQ0lTU19SRVZBTElEVk9MUyBfSU8oQ0NJU1NfSU9DX01BR0lDLCAxMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENDSVNTX1BBU1NUSFJVIF9JT1dSKENDSVNTX0lPQ19NQUdJQywgMTEsIElPQ1RMX0NvbW1hbmRfc3RydWN0KQogI2RlZmluZSBDQ0lTU19ERVJFR0RJU0sgX0lPKENDSVNTX0lPQ19NQUdJQywgMTIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQ0lTU19SRUdORVdESVNLIF9JT1coQ0NJU1NfSU9DX01BR0lDLCAxMywgaW50KQogI2RlZmluZSBDQ0lTU19SRUdORVdEIF9JTyhDQ0lTU19JT0NfTUFHSUMsIDE0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0NJU1NfUkVTQ0FORElTSyBfSU8oQ0NJU1NfSU9DX01BR0lDLCAxNikKICNkZWZpbmUgQ0NJU1NfR0VUTFVOSU5GTyBfSU9SKENDSVNTX0lPQ19NQUdJQywgMTcsIExvZ3ZvbEluZm9fc3RydWN0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0NJU1NfQklHX1BBU1NUSFJVIF9JT1dSKENDSVNTX0lPQ19NQUdJQywgMTgsIEJJR19JT0NUTF9Db21tYW5kX3N0cnVjdCkKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2Ryb20uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2Ryb20uaAppbmRleCBkOWQwMDZkLi5kNGQwODJhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nkcm9tLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jZHJvbS5oCkBAIC03OSw3NTIgKzc5LDczNSBAQAogI2RlZmluZSBDRFJPTV9TRU5EX1BBQ0tFVCAweDUzOTMKICNkZWZpbmUgQ0RST01fTkVYVF9XUklUQUJMRSAweDUzOTQKICNkZWZpbmUgQ0RST01fTEFTVF9XUklUVEVOIDB4NTM5NQotc3RydWN0IGNkcm9tX21zZjAKK3N0cnVjdCBjZHJvbV9tc2YwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gX191OCBtaW51dGU7Ci0gX191OCBzZWNvbmQ7Ci0gX191OCBmcmFtZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19OwotdW5pb24gY2Ryb21fYWRkcgotewotIHN0cnVjdCBjZHJvbV9tc2YwIG1zZjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGxiYTsKLX07Ci1zdHJ1Y3QgY2Ryb21fbXNmCi17Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY2Rtc2ZfbWluMDsKLSBfX3U4IGNkbXNmX3NlYzA7Ci0gX191OCBjZG1zZl9mcmFtZTA7Ci0gX191OCBjZG1zZl9taW4xOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNkbXNmX3NlYzE7Ci0gX191OCBjZG1zZl9mcmFtZTE7Ci19Owotc3RydWN0IGNkcm9tX3RpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIF9fdTggY2R0aV90cmswOwotIF9fdTggY2R0aV9pbmQwOwotIF9fdTggY2R0aV90cmsxOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNkdGlfaW5kMTsKLX07Ci1zdHJ1Y3QgY2Ryb21fdG9jaGRyCi17Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY2R0aF90cmswOwotIF9fdTggY2R0aF90cmsxOwotfTsKLXN0cnVjdCBjZHJvbV92b2xjdHJsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIF9fdTggY2hhbm5lbDA7Ci0gX191OCBjaGFubmVsMTsKLSBfX3U4IGNoYW5uZWwyOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNoYW5uZWwzOwotfTsKLXN0cnVjdCBjZHJvbV9zdWJjaG5sCi17Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY2RzY19mb3JtYXQ7Ci0gX191OCBjZHNjX2F1ZGlvc3RhdHVzOwotIF9fdTggY2RzY19hZHI6IDQ7Ci0gX191OCBjZHNjX2N0cmw6IDQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY2RzY190cms7Ci0gX191OCBjZHNjX2luZDsKLSB1bmlvbiBjZHJvbV9hZGRyIGNkc2NfYWJzYWRkcjsKLSB1bmlvbiBjZHJvbV9hZGRyIGNkc2NfcmVsYWRkcjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19Owotc3RydWN0IGNkcm9tX3RvY2VudHJ5Ci17Ci0gX191OCBjZHRlX3RyYWNrOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNkdGVfYWRyIDo0OwotIF9fdTggY2R0ZV9jdHJsIDo0OwotIF9fdTggY2R0ZV9mb3JtYXQ7Ci0gdW5pb24gY2Ryb21fYWRkciBjZHRlX2FkZHI7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY2R0ZV9kYXRhbW9kZTsKLX07Ci1zdHJ1Y3QgY2Ryb21fcmVhZAotewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2RyZWFkX2xiYTsKLSBjaGFyICpjZHJlYWRfYnVmYWRkcjsKLSBpbnQgY2RyZWFkX2J1ZmxlbjsKKyAgX191OCBtaW51dGU7CisgIF9fdTggc2Vjb25kOworICBfX3U4IGZyYW1lOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgY2Ryb21fcmVhZF9hdWRpbwotewotIHVuaW9uIGNkcm9tX2FkZHIgYWRkcjsKLSBfX3U4IGFkZHJfZm9ybWF0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbmZyYW1lczsKLSBfX3U4IF9fdXNlciAqYnVmOwordW5pb24gY2Ryb21fYWRkciB7CisgIHN0cnVjdCBjZHJvbV9tc2YwIG1zZjsKKyAgaW50IGxiYTsKIH07Ci1zdHJ1Y3QgY2Ryb21fbXVsdGlzZXNzaW9uCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIHVuaW9uIGNkcm9tX2FkZHIgYWRkcjsKLSBfX3U4IHhhX2ZsYWc7Ci0gX191OCBhZGRyX2Zvcm1hdDsKK3N0cnVjdCBjZHJvbV9tc2YgeworICBfX3U4IGNkbXNmX21pbjA7CisgIF9fdTggY2Rtc2Zfc2VjMDsKKyAgX191OCBjZG1zZl9mcmFtZTA7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGNkbXNmX21pbjE7CisgIF9fdTggY2Rtc2Zfc2VjMTsKKyAgX191OCBjZG1zZl9mcmFtZTE7Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBjZHJvbV90aSB7CisgIF9fdTggY2R0aV90cmswOworICBfX3U4IGNkdGlfaW5kMDsKKyAgX191OCBjZHRpX3RyazE7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGNkdGlfaW5kMTsKK307CitzdHJ1Y3QgY2Ryb21fdG9jaGRyIHsKKyAgX191OCBjZHRoX3RyazA7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGNkdGhfdHJrMTsKK307CitzdHJ1Y3QgY2Ryb21fdm9sY3RybCB7CisgIF9fdTggY2hhbm5lbDA7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGNoYW5uZWwxOworICBfX3U4IGNoYW5uZWwyOworICBfX3U4IGNoYW5uZWwzOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgY2Ryb21fc3ViY2hubCB7CisgIF9fdTggY2RzY19mb3JtYXQ7CisgIF9fdTggY2RzY19hdWRpb3N0YXR1czsKKyAgX191OCBjZHNjX2FkciA6IDQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGNkc2NfY3RybCA6IDQ7CisgIF9fdTggY2RzY190cms7CisgIF9fdTggY2RzY19pbmQ7CisgIHVuaW9uIGNkcm9tX2FkZHIgY2RzY19hYnNhZGRyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5pb24gY2Ryb21fYWRkciBjZHNjX3JlbGFkZHI7Cit9Oworc3RydWN0IGNkcm9tX3RvY2VudHJ5IHsKKyAgX191OCBjZHRlX3RyYWNrOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBjZHRlX2FkciA6IDQ7CisgIF9fdTggY2R0ZV9jdHJsIDogNDsKKyAgX191OCBjZHRlX2Zvcm1hdDsKKyAgdW5pb24gY2Ryb21fYWRkciBjZHRlX2FkZHI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGNkdGVfZGF0YW1vZGU7Cit9Oworc3RydWN0IGNkcm9tX3JlYWQgeworICBpbnQgY2RyZWFkX2xiYTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGNoYXIgKiBjZHJlYWRfYnVmYWRkcjsKKyAgaW50IGNkcmVhZF9idWZsZW47Cit9Oworc3RydWN0IGNkcm9tX3JlYWRfYXVkaW8geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5pb24gY2Ryb21fYWRkciBhZGRyOworICBfX3U4IGFkZHJfZm9ybWF0OworICBpbnQgbmZyYW1lczsKKyAgX191OCBfX3VzZXIgKiBidWY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLXN0cnVjdCBjZHJvbV9tY24KLXsKLSBfX3U4IG1lZGl1bV9jYXRhbG9nX251bWJlclsxNF07CitzdHJ1Y3QgY2Ryb21fbXVsdGlzZXNzaW9uIHsKKyAgdW5pb24gY2Ryb21fYWRkciBhZGRyOworICBfX3U4IHhhX2ZsYWc7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGFkZHJfZm9ybWF0OworfTsKK3N0cnVjdCBjZHJvbV9tY24geworICBfX3U4IG1lZGl1bV9jYXRhbG9nX251bWJlclsxNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLXN0cnVjdCBjZHJvbV9ibGsKLXsKLSB1bnNpZ25lZCBmcm9tOworc3RydWN0IGNkcm9tX2JsayB7CisgIHVuc2lnbmVkIGZyb207CisgIHVuc2lnbmVkIHNob3J0IGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgbGVuOwogfTsKICNkZWZpbmUgQ0RST01fUEFDS0VUX1NJWkUgMTIKICNkZWZpbmUgQ0dDX0RBVEFfVU5LTk9XTiAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDR0NfREFUQV9XUklURSAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDR0NfREFUQV9SRUFEIDIKICNkZWZpbmUgQ0dDX0RBVEFfTk9ORSAzCi1zdHJ1Y3QgY2Ryb21fZ2VuZXJpY19jb21tYW5kCitzdHJ1Y3QgY2Ryb21fZ2VuZXJpY19jb21tYW5kIHsKKyAgdW5zaWduZWQgY2hhciBjbWRbQ0RST01fUEFDS0VUX1NJWkVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSB1bnNpZ25lZCBjaGFyIGNtZFtDRFJPTV9QQUNLRVRfU0laRV07Ci0gdW5zaWduZWQgY2hhciBfX3VzZXIgKmJ1ZmZlcjsKLSB1bnNpZ25lZCBpbnQgYnVmbGVuOworICB1bnNpZ25lZCBjaGFyIF9fdXNlciAqIGJ1ZmZlcjsKKyAgdW5zaWduZWQgaW50IGJ1ZmxlbjsKKyAgaW50IHN0YXQ7CisgIHN0cnVjdCByZXF1ZXN0X3NlbnNlIF9fdXNlciAqIHNlbnNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc3RhdDsKLSBzdHJ1Y3QgcmVxdWVzdF9zZW5zZSBfX3VzZXIgKnNlbnNlOwotIHVuc2lnbmVkIGNoYXIgZGF0YV9kaXJlY3Rpb247Ci0gaW50IHF1aWV0OworICB1bnNpZ25lZCBjaGFyIGRhdGFfZGlyZWN0aW9uOworICBpbnQgcXVpZXQ7CisgIGludCB0aW1lb3V0OworICB2b2lkIF9fdXNlciAqIHJlc2VydmVkWzFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdGltZW91dDsKLSB2b2lkIF9fdXNlciAqcmVzZXJ2ZWRbMV07CiB9OwogI2RlZmluZSBDRF9NSU5TIDc0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRF9TRUNTIDYwCiAjZGVmaW5lIENEX0ZSQU1FUyA3NQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RfU1lOQ19TSVpFIDEyCiAjZGVmaW5lIENEX01TRl9PRkZTRVQgMTUwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRF9DSFVOS19TSVpFIDI0CiAjZGVmaW5lIENEX05VTV9PRl9DSFVOS1MgOTgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEX0ZSQU1FU0laRV9TVUIgOTYKICNkZWZpbmUgQ0RfSEVBRF9TSVpFIDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEX1NVQkhFQURfU0laRSA4CiAjZGVmaW5lIENEX0VEQ19TSVpFIDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEX1pFUk9fU0laRSA4CiAjZGVmaW5lIENEX0VDQ19TSVpFIDI3NgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RfRlJBTUVTSVpFIDIwNDgKICNkZWZpbmUgQ0RfRlJBTUVTSVpFX1JBVyAyMzUyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRF9GUkFNRVNJWkVfUkFXRVIgMjY0NgotI2RlZmluZSBDRF9GUkFNRVNJWkVfUkFXMSAoQ0RfRlJBTUVTSVpFX1JBVy1DRF9TWU5DX1NJWkUpCisjZGVmaW5lIENEX0ZSQU1FU0laRV9SQVcxIChDRF9GUkFNRVNJWkVfUkFXIC0gQ0RfU1lOQ19TSVpFKQorI2RlZmluZSBDRF9GUkFNRVNJWkVfUkFXMCAoQ0RfRlJBTUVTSVpFX1JBVyAtIENEX1NZTkNfU0laRSAtIENEX0hFQURfU0laRSkKKyNkZWZpbmUgQ0RfWEFfSEVBRCAoQ0RfSEVBRF9TSVpFICsgQ0RfU1VCSEVBRF9TSVpFKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0RfRlJBTUVTSVpFX1JBVzAgKENEX0ZSQU1FU0laRV9SQVctQ0RfU1lOQ19TSVpFLUNEX0hFQURfU0laRSkKLSNkZWZpbmUgQ0RfWEFfSEVBRCAoQ0RfSEVBRF9TSVpFK0NEX1NVQkhFQURfU0laRSkKLSNkZWZpbmUgQ0RfWEFfVEFJTCAoQ0RfRURDX1NJWkUrQ0RfRUNDX1NJWkUpCi0jZGVmaW5lIENEX1hBX1NZTkNfSEVBRCAoQ0RfU1lOQ19TSVpFK0NEX1hBX0hFQUQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBDRF9YQV9UQUlMIChDRF9FRENfU0laRSArIENEX0VDQ19TSVpFKQorI2RlZmluZSBDRF9YQV9TWU5DX0hFQUQgKENEX1NZTkNfU0laRSArIENEX1hBX0hFQUQpCiAjZGVmaW5lIENEUk9NX0xCQSAweDAxCiAjZGVmaW5lIENEUk9NX01TRiAweDAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRFJPTV9EQVRBX1RSQUNLIDB4MDQKICNkZWZpbmUgQ0RST01fTEVBRE9VVCAweEFBCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRFJPTV9BVURJT19JTlZBTElEIDB4MDAKICNkZWZpbmUgQ0RST01fQVVESU9fUExBWSAweDExCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRFJPTV9BVURJT19QQVVTRUQgMHgxMgogI2RlZmluZSBDRFJPTV9BVURJT19DT01QTEVURUQgMHgxMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RST01fQVVESU9fRVJST1IgMHgxNAogI2RlZmluZSBDRFJPTV9BVURJT19OT19TVEFUVVMgMHgxNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RDX0NMT1NFX1RSQVkgMHgxCiAjZGVmaW5lIENEQ19PUEVOX1RSQVkgMHgyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRENfTE9DSyAweDQKICNkZWZpbmUgQ0RDX1NFTEVDVF9TUEVFRCAweDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEQ19TRUxFQ1RfRElTQyAweDEwCiAjZGVmaW5lIENEQ19NVUxUSV9TRVNTSU9OIDB4MjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEQ19NQ04gMHg0MAogI2RlZmluZSBDRENfTUVESUFfQ0hBTkdFRCAweDgwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRENfUExBWV9BVURJTyAweDEwMAogI2RlZmluZSBDRENfUkVTRVQgMHgyMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEQ19EUklWRV9TVEFUVVMgMHg4MDAKICNkZWZpbmUgQ0RDX0dFTkVSSUNfUEFDS0VUIDB4MTAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RDX0NEX1IgMHgyMDAwCiAjZGVmaW5lIENEQ19DRF9SVyAweDQwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEQ19EVkQgMHg4MDAwCiAjZGVmaW5lIENEQ19EVkRfUiAweDEwMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRENfRFZEX1JBTSAweDIwMDAwCiAjZGVmaW5lIENEQ19NT19EUklWRSAweDQwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRENfTVJXIDB4ODAwMDAKICNkZWZpbmUgQ0RDX01SV19XIDB4MTAwMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRENfUkFNIDB4MjAwMDAwCiAjZGVmaW5lIENEU19OT19JTkZPIDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEU19OT19ESVNDIDEKICNkZWZpbmUgQ0RTX1RSQVlfT1BFTiAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDRFNfRFJJVkVfTk9UX1JFQURZIDMKICNkZWZpbmUgQ0RTX0RJU0NfT0sgNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RTX0FVRElPIDEwMAogI2RlZmluZSBDRFNfREFUQV8xIDEwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RTX0RBVEFfMiAxMDIKICNkZWZpbmUgQ0RTX1hBXzJfMSAxMDMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEU19YQV8yXzIgMTA0CiAjZGVmaW5lIENEU19NSVhFRCAxMDUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENET19BVVRPX0NMT1NFIDB4MQogI2RlZmluZSBDRE9fQVVUT19FSkVDVCAweDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENET19VU0VfRkZMQUdTIDB4NAogI2RlZmluZSBDRE9fTE9DSyAweDgKLSNkZWZpbmUgQ0RPX0NIRUNLX1RZUEUgMHgxMAotI2RlZmluZSBDRFNMX05PTkUgKElOVF9NQVgtMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIENET19DSEVDS19UWVBFIDB4MTAKKyNkZWZpbmUgQ0RTTF9OT05FIChJTlRfTUFYIC0gMSkKICNkZWZpbmUgQ0RTTF9DVVJSRU5UIElOVF9NQVgKICNkZWZpbmUgQ0RfUEFSVF9NQVggNjQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENEX1BBUlRfTUFTSyAoQ0RfUEFSVF9NQVggLSAxKQogI2RlZmluZSBHUENNRF9CTEFOSyAweGExCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9DTE9TRV9UUkFDSyAweDViCiAjZGVmaW5lIEdQQ01EX0ZMVVNIX0NBQ0hFIDB4MzUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX0ZPUk1BVF9VTklUIDB4MDQKICNkZWZpbmUgR1BDTURfR0VUX0NPTkZJR1VSQVRJT04gMHg0NgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfR0VUX0VWRU5UX1NUQVRVU19OT1RJRklDQVRJT04gMHg0YQogI2RlZmluZSBHUENNRF9HRVRfUEVSRk9STUFOQ0UgMHhhYworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfSU5RVUlSWSAweDEyCiAjZGVmaW5lIEdQQ01EX0xPQURfVU5MT0FEIDB4YTYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX01FQ0hBTklTTV9TVEFUVVMgMHhiZAogI2RlZmluZSBHUENNRF9NT0RFX1NFTEVDVF8xMCAweDU1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9NT0RFX1NFTlNFXzEwIDB4NWEKICNkZWZpbmUgR1BDTURfUEFVU0VfUkVTVU1FIDB4NGIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1BMQVlfQVVESU9fMTAgMHg0NQogI2RlZmluZSBHUENNRF9QTEFZX0FVRElPX01TRiAweDQ3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9QTEFZX0FVRElPX1RJIDB4NDgKICNkZWZpbmUgR1BDTURfUExBWV9DRCAweGJjCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9QUkVWRU5UX0FMTE9XX01FRElVTV9SRU1PVkFMIDB4MWUKICNkZWZpbmUgR1BDTURfUkVBRF8xMCAweDI4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9SRUFEXzEyIDB4YTgKICNkZWZpbmUgR1BDTURfUkVBRF9CVUZGRVIgMHgzYwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfUkVBRF9CVUZGRVJfQ0FQQUNJVFkgMHg1YwogI2RlZmluZSBHUENNRF9SRUFEX0NEVkRfQ0FQQUNJVFkgMHgyNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfUkVBRF9DRCAweGJlCiAjZGVmaW5lIEdQQ01EX1JFQURfQ0RfTVNGIDB4YjkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1JFQURfRElTQ19JTkZPIDB4NTEKICNkZWZpbmUgR1BDTURfUkVBRF9EVkRfU1RSVUNUVVJFIDB4YWQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1JFQURfRk9STUFUX0NBUEFDSVRJRVMgMHgyMwogI2RlZmluZSBHUENNRF9SRUFEX0hFQURFUiAweDQ0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9SRUFEX1RSQUNLX1JaT05FX0lORk8gMHg1MgogI2RlZmluZSBHUENNRF9SRUFEX1NVQkNIQU5ORUwgMHg0MgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfUkVBRF9UT0NfUE1BX0FUSVAgMHg0MwogI2RlZmluZSBHUENNRF9SRVBBSVJfUlpPTkVfVFJBQ0sgMHg1OAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfUkVQT1JUX0tFWSAweGE0CiAjZGVmaW5lIEdQQ01EX1JFUVVFU1RfU0VOU0UgMHgwMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfUkVTRVJWRV9SWk9ORV9UUkFDSyAweDUzCiAjZGVmaW5lIEdQQ01EX1NFTkRfQ1VFX1NIRUVUIDB4NWQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1NDQU4gMHhiYQogI2RlZmluZSBHUENNRF9TRUVLIDB4MmIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1NFTkRfRFZEX1NUUlVDVFVSRSAweGJmCiAjZGVmaW5lIEdQQ01EX1NFTkRfRVZFTlQgMHhhMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfU0VORF9LRVkgMHhhMwogI2RlZmluZSBHUENNRF9TRU5EX09QQyAweDU0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9TRVRfUkVBRF9BSEVBRCAweGE3CiAjZGVmaW5lIEdQQ01EX1NFVF9TVFJFQU1JTkcgMHhiNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfU1RBUlRfU1RPUF9VTklUIDB4MWIKICNkZWZpbmUgR1BDTURfU1RPUF9QTEFZX1NDQU4gMHg0ZQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfVEVTVF9VTklUX1JFQURZIDB4MDAKICNkZWZpbmUgR1BDTURfVkVSSUZZXzEwIDB4MmYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdQQ01EX1dSSVRFXzEwIDB4MmEKICNkZWZpbmUgR1BDTURfV1JJVEVfMTIgMHhhYQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfV1JJVEVfQU5EX1ZFUklGWV8xMCAweDJlCiAjZGVmaW5lIEdQQ01EX1dSSVRFX0JVRkZFUiAweDNiCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUENNRF9TRVRfU1BFRUQgMHhiYgogI2RlZmluZSBHUENNRF9QTEFZQVVESU9fVEkgMHg0OAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BDTURfR0VUX01FRElBX1NUQVRVUyAweGRhCiAjZGVmaW5lIEdQTU9ERV9WRU5ET1JfUEFHRSAweDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUE1PREVfUl9XX0VSUk9SX1BBR0UgMHgwMQogI2RlZmluZSBHUE1PREVfV1JJVEVfUEFSTVNfUEFHRSAweDA1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUE1PREVfV0NBQ0hJTkdfUEFHRSAweDA4CiAjZGVmaW5lIEdQTU9ERV9BVURJT19DVExfUEFHRSAweDBlCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUE1PREVfUE9XRVJfUEFHRSAweDFhCiAjZGVmaW5lIEdQTU9ERV9GQVVMVF9GQUlMX1BBR0UgMHgxYworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR1BNT0RFX1RPX1BST1RFQ1RfUEFHRSAweDFkCiAjZGVmaW5lIEdQTU9ERV9DQVBBQklMSVRJRVNfUEFHRSAweDJhCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHUE1PREVfQUxMX1BBR0VTIDB4M2YKICNkZWZpbmUgR1BNT0RFX0NEUk9NX1BBR0UgMHgwZAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFZEX1NUUlVDVF9QSFlTSUNBTCAweDAwCiAjZGVmaW5lIERWRF9TVFJVQ1RfQ09QWVJJR0hUIDB4MDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERWRF9TVFJVQ1RfRElTQ0tFWSAweDAyCiAjZGVmaW5lIERWRF9TVFJVQ1RfQkNBIDB4MDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERWRF9TVFJVQ1RfTUFOVUZBQ1QgMHgwNAogc3RydWN0IGR2ZF9sYXllciB7CisgIF9fdTggYm9va192ZXJzaW9uIDogNDsKKyAgX191OCBib29rX3R5cGUgOiA0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJvb2tfdmVyc2lvbiA6IDQ7Ci0gX191OCBib29rX3R5cGUgOiA0OwotIF9fdTggbWluX3JhdGUgOiA0OwotIF9fdTggZGlzY19zaXplIDogNDsKKyAgX191OCBtaW5fcmF0ZSA6IDQ7CisgIF9fdTggZGlzY19zaXplIDogNDsKKyAgX191OCBsYXllcl90eXBlIDogNDsKKyAgX191OCB0cmFja19wYXRoIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBsYXllcl90eXBlIDogNDsKLSBfX3U4IHRyYWNrX3BhdGggOiAxOwotIF9fdTggbmxheWVycyA6IDI7Ci0gX191OCB0cmFja19kZW5zaXR5IDogNDsKKyAgX191OCBubGF5ZXJzIDogMjsKKyAgX191OCB0cmFja19kZW5zaXR5IDogNDsKKyAgX191OCBsaW5lYXJfZGVuc2l0eSA6IDQ7CisgIF9fdTggYmNhIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBsaW5lYXJfZGVuc2l0eSA6IDQ7Ci0gX191OCBiY2EgOiAxOwotIF9fdTMyIHN0YXJ0X3NlY3RvcjsKLSBfX3UzMiBlbmRfc2VjdG9yOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlbmRfc2VjdG9yX2wwOworICBfX3UzMiBzdGFydF9zZWN0b3I7CisgIF9fdTMyIGVuZF9zZWN0b3I7CisgIF9fdTMyIGVuZF9zZWN0b3JfbDA7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFZEX0xBWUVSUyA0CiBzdHJ1Y3QgZHZkX3BoeXNpY2FsIHsKKyAgX191OCB0eXBlOworICBfX3U4IGxheWVyX251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0eXBlOwotIF9fdTggbGF5ZXJfbnVtOwotIHN0cnVjdCBkdmRfbGF5ZXIgbGF5ZXJbRFZEX0xBWUVSU107CisgIHN0cnVjdCBkdmRfbGF5ZXIgbGF5ZXJbRFZEX0xBWUVSU107CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkdmRfY29weXJpZ2h0IHsKLSBfX3U4IHR5cGU7Ci0gX191OCBsYXllcl9udW07Ci0gX191OCBjcHN0OworICBfX3U4IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcm1pOworICBfX3U4IGxheWVyX251bTsKKyAgX191OCBjcHN0OworICBfX3U4IHJtaTsKIH07Ci1zdHJ1Y3QgZHZkX2Rpc2NrZXkgewotIF9fdTggdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgYWdpZCA6IDI7Ci0gX191OCB2YWx1ZVsyMDQ4XTsKK3N0cnVjdCBkdmRfZGlzY2tleSB7CisgIF9fdTggdHlwZTsKKyAgdW5zaWduZWQgYWdpZCA6IDI7CisgIF9fdTggdmFsdWVbMjA0OF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkdmRfYmNhIHsKKyAgX191OCB0eXBlOworICBpbnQgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHR5cGU7Ci0gaW50IGxlbjsKLSBfX3U4IHZhbHVlWzE4OF07CisgIF9fdTggdmFsdWVbMTg4XTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGR2ZF9tYW51ZmFjdCB7Ci0gX191OCB0eXBlOwotIF9fdTggbGF5ZXJfbnVtOwotIGludCBsZW47CisgIF9fdTggdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB2YWx1ZVsyMDQ4XTsKKyAgX191OCBsYXllcl9udW07CisgIGludCBsZW47CisgIF9fdTggdmFsdWVbMjA0OF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgdW5pb24gewotIF9fdTggdHlwZTsKKyAgX191OCB0eXBlOworICBzdHJ1Y3QgZHZkX3BoeXNpY2FsIHBoeXNpY2FsOworICBzdHJ1Y3QgZHZkX2NvcHlyaWdodCBjb3B5cmlnaHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkdmRfcGh5c2ljYWwgcGh5c2ljYWw7Ci0gc3RydWN0IGR2ZF9jb3B5cmlnaHQgY29weXJpZ2h0OwotIHN0cnVjdCBkdmRfZGlzY2tleSBkaXNja2V5OwotIHN0cnVjdCBkdmRfYmNhIGJjYTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGR2ZF9tYW51ZmFjdCBtYW51ZmFjdDsKKyAgc3RydWN0IGR2ZF9kaXNja2V5IGRpc2NrZXk7CisgIHN0cnVjdCBkdmRfYmNhIGJjYTsKKyAgc3RydWN0IGR2ZF9tYW51ZmFjdCBtYW51ZmFjdDsKIH0gZHZkX3N0cnVjdDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERWRF9MVV9TRU5EX0FHSUQgMAogI2RlZmluZSBEVkRfSE9TVF9TRU5EX0NIQUxMRU5HRSAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEVkRfTFVfU0VORF9LRVkxIDIKICNkZWZpbmUgRFZEX0xVX1NFTkRfQ0hBTExFTkdFIDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERWRF9IT1NUX1NFTkRfS0VZMiA0CiAjZGVmaW5lIERWRF9BVVRIX0VTVEFCTElTSEVEIDUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERWRF9BVVRIX0ZBSUxVUkUgNgogI2RlZmluZSBEVkRfTFVfU0VORF9USVRMRV9LRVkgNworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFZEX0xVX1NFTkRfQVNGIDgKICNkZWZpbmUgRFZEX0lOVkFMSURBVEVfQUdJRCA5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEVkRfTFVfU0VORF9SUENfU1RBVEUgMTAKICNkZWZpbmUgRFZEX0hPU1RfU0VORF9SUENfU1RBVEUgMTEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIF9fdTggZHZkX2tleVs1XTsKIHR5cGVkZWYgX191OCBkdmRfY2hhbGxlbmdlWzEwXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHZkX2x1X3NlbmRfYWdpZCB7Ci0gX191OCB0eXBlOwotIHVuc2lnbmVkIGFnaWQgOiAyOworICBfX3U4IHR5cGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBhZ2lkIDogMjsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGR2ZF9ob3N0X3NlbmRfY2hhbGxlbmdlIHsKLSBfX3U4IHR5cGU7Ci0gdW5zaWduZWQgYWdpZCA6IDI7Ci0gZHZkX2NoYWxsZW5nZSBjaGFsOworICBfX3U4IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBhZ2lkIDogMjsKKyAgZHZkX2NoYWxsZW5nZSBjaGFsOwogfTsKIHN0cnVjdCBkdmRfc2VuZF9rZXkgewotIF9fdTggdHlwZTsKLSB1bnNpZ25lZCBhZ2lkIDogMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZHZkX2tleSBrZXk7CisgIF9fdTggdHlwZTsKKyAgdW5zaWduZWQgYWdpZCA6IDI7CisgIGR2ZF9rZXkga2V5OwogfTsKLXN0cnVjdCBkdmRfbHVfc2VuZF9jaGFsbGVuZ2UgewotIF9fdTggdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgYWdpZCA6IDI7Ci0gZHZkX2NoYWxsZW5nZSBjaGFsOworc3RydWN0IGR2ZF9sdV9zZW5kX2NoYWxsZW5nZSB7CisgIF9fdTggdHlwZTsKKyAgdW5zaWduZWQgYWdpZCA6IDI7CisgIGR2ZF9jaGFsbGVuZ2UgY2hhbDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBEVkRfQ1BNX05PX0NPUFlSSUdIVCAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEVkRfQ1BNX0NPUFlSSUdIVEVEIDEKICNkZWZpbmUgRFZEX0NQX1NFQ19OT05FIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERWRF9DUF9TRUNfRVhJU1QgMQogI2RlZmluZSBEVkRfQ0dNU19VTlJFU1RSSUNURUQgMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFZEX0NHTVNfU0lOR0xFIDIKICNkZWZpbmUgRFZEX0NHTVNfUkVTVFJJQ1RFRCAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGR2ZF9sdV9zZW5kX3RpdGxlX2tleSB7Ci0gX191OCB0eXBlOworICBfX3U4IHR5cGU7CisgIHVuc2lnbmVkIGFnaWQgOiAyOworICBkdmRfa2V5IHRpdGxlX2tleTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgYWdpZCA6IDI7Ci0gZHZkX2tleSB0aXRsZV9rZXk7Ci0gaW50IGxiYTsKLSB1bnNpZ25lZCBjcG0gOiAxOworICBpbnQgbGJhOworICB1bnNpZ25lZCBjcG0gOiAxOworICB1bnNpZ25lZCBjcF9zZWMgOiAxOworICB1bnNpZ25lZCBjZ21zIDogMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY3Bfc2VjIDogMTsKLSB1bnNpZ25lZCBjZ21zIDogMjsKIH07CiBzdHJ1Y3QgZHZkX2x1X3NlbmRfYXNmIHsKKyAgX191OCB0eXBlOworICB1bnNpZ25lZCBhZ2lkIDogMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0eXBlOwotIHVuc2lnbmVkIGFnaWQgOiAyOwotIHVuc2lnbmVkIGFzZiA6IDE7CisgIHVuc2lnbmVkIGFzZiA6IDE7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkdmRfaG9zdF9zZW5kX3JwY3N0YXRlIHsKLSBfX3U4IHR5cGU7Ci0gX191OCBwZHJjOworICBfX3U4IHR5cGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHBkcmM7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkdmRfbHVfc2VuZF9ycGNzdGF0ZSB7Ci0gX191OCB0eXBlIDogMjsKLSBfX3U4IHZyYSA6IDM7Ci0gX191OCB1Y2NhIDogMzsKKyAgX191OCB0eXBlIDogMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZWdpb25fbWFzazsKLSBfX3U4IHJwY19zY2hlbWU7CisgIF9fdTggdnJhIDogMzsKKyAgX191OCB1Y2NhIDogMzsKKyAgX191OCByZWdpb25fbWFzazsKKyAgX191OCBycGNfc2NoZW1lOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiB0eXBlZGVmIHVuaW9uIHsKKyAgX191OCB0eXBlOworICBzdHJ1Y3QgZHZkX2x1X3NlbmRfYWdpZCBsc2E7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHlwZTsKLSBzdHJ1Y3QgZHZkX2x1X3NlbmRfYWdpZCBsc2E7Ci0gc3RydWN0IGR2ZF9ob3N0X3NlbmRfY2hhbGxlbmdlIGhzYzsKLSBzdHJ1Y3QgZHZkX3NlbmRfa2V5IGxzazsKKyAgc3RydWN0IGR2ZF9ob3N0X3NlbmRfY2hhbGxlbmdlIGhzYzsKKyAgc3RydWN0IGR2ZF9zZW5kX2tleSBsc2s7CisgIHN0cnVjdCBkdmRfbHVfc2VuZF9jaGFsbGVuZ2UgbHNjOworICBzdHJ1Y3QgZHZkX3NlbmRfa2V5IGhzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGR2ZF9sdV9zZW5kX2NoYWxsZW5nZSBsc2M7Ci0gc3RydWN0IGR2ZF9zZW5kX2tleSBoc2s7Ci0gc3RydWN0IGR2ZF9sdV9zZW5kX3RpdGxlX2tleSBsc3RrOwotIHN0cnVjdCBkdmRfbHVfc2VuZF9hc2YgbHNhc2Y7CisgIHN0cnVjdCBkdmRfbHVfc2VuZF90aXRsZV9rZXkgbHN0azsKKyAgc3RydWN0IGR2ZF9sdV9zZW5kX2FzZiBsc2FzZjsKKyAgc3RydWN0IGR2ZF9ob3N0X3NlbmRfcnBjc3RhdGUgaHJwY3M7CisgIHN0cnVjdCBkdmRfbHVfc2VuZF9ycGNzdGF0ZSBscnBjczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGR2ZF9ob3N0X3NlbmRfcnBjc3RhdGUgaHJwY3M7Ci0gc3RydWN0IGR2ZF9sdV9zZW5kX3JwY3N0YXRlIGxycGNzOwogfSBkdmRfYXV0aGluZm87CiBzdHJ1Y3QgcmVxdWVzdF9zZW5zZSB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAotIF9fdTggdmFsaWQgOiAxOwotIF9fdTggZXJyb3JfY29kZSA6IDc7CisgIF9fdTggdmFsaWQgOiAxOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBlcnJvcl9jb2RlIDogNzsKKyNlbGlmIGRlZmluZWQoX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxEKQorICBfX3U4IGVycm9yX2NvZGUgOiA3OworICBfX3U4IHZhbGlkIDogMTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKKyAgX191OCBzZWdtZW50X251bWJlcjsKKyNpZmRlZiBfX0JJR19FTkRJQU5fQklURklFTEQKKyAgX191OCByZXNlcnZlZDEgOiAyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBpbGkgOiAxOworICBfX3U4IHJlc2VydmVkMiA6IDE7CisgIF9fdTggc2Vuc2Vfa2V5IDogNDsKICNlbGlmIGRlZmluZWQoX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxEKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGVycm9yX2NvZGUgOiA3OwotIF9fdTggdmFsaWQgOiAxOworICBfX3U4IHNlbnNlX2tleSA6IDQ7CisgIF9fdTggcmVzZXJ2ZWQyIDogMTsKKyAgX191OCBpbGkgOiAxOworICBfX3U4IHJlc2VydmVkMSA6IDI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCi0gX191OCBzZWdtZW50X251bWJlcjsKKyAgX191OCBpbmZvcm1hdGlvbls0XTsKKyAgX191OCBhZGRfc2Vuc2VfbGVuOworICBfX3U4IGNvbW1hbmRfaW5mb1s0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jaWZkZWYgX19CSUdfRU5ESUFOX0JJVEZJRUxECi0gX191OCByZXNlcnZlZDEgOiAyOwotIF9fdTggaWxpIDogMTsKLSBfX3U4IHJlc2VydmVkMiA6IDE7CisgIF9fdTggYXNjOworICBfX3U4IGFzY3E7CisgIF9fdTggZnJ1YzsKKyAgX191OCBza3NbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2Vuc2Vfa2V5IDogNDsKLSNlbGlmIGRlZmluZWQoX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxEKQotIF9fdTggc2Vuc2Vfa2V5IDogNDsKLSBfX3U4IHJlc2VydmVkMiA6IDE7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaWxpIDogMTsKLSBfX3U4IHJlc2VydmVkMSA6IDI7Ci0jZW5kaWYKLSBfX3U4IGluZm9ybWF0aW9uWzRdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGFkZF9zZW5zZV9sZW47Ci0gX191OCBjb21tYW5kX2luZm9bNF07Ci0gX191OCBhc2M7Ci0gX191OCBhc2NxOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZydWM7Ci0gX191OCBza3NbM107Ci0gX191OCBhc2JbNDZdOworICBfX3U4IGFzYls0Nl07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RGX1JXUlQgMHgwMDIwCiAjZGVmaW5lIENERl9IV0RNIDB4MDAyNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RGX01SVyAweDAwMjgKICNkZWZpbmUgQ0RNX01SV19OT1RNUlcgMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0RNX01SV19CR0ZPUk1BVF9JTkFDVElWRSAxCiAjZGVmaW5lIENETV9NUldfQkdGT1JNQVRfQUNUSVZFIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENETV9NUldfQkdGT1JNQVRfQ09NUExFVEUgMwogI2RlZmluZSBNUldfTEJBX0RNQSAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNUldfTEJBX0dBQSAxCiAjZGVmaW5lIE1SV19NT0RFX1BDX1BSRTEgMHgyYworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVJXX01PREVfUEMgMHgwMwogc3RydWN0IG1yd19mZWF0dXJlX2Rlc2MgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgZmVhdHVyZV9jb2RlOworICBfX2JlMTYgZmVhdHVyZV9jb2RlOwogI2lmZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAotIF9fdTggcmVzZXJ2ZWQxIDogMjsKLSBfX3U4IGZlYXR1cmVfdmVyc2lvbiA6IDQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGVyc2lzdGVudCA6IDE7Ci0gX191OCBjdXJyIDogMTsKLSNlbGlmIGRlZmluZWQoX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxEKQotIF9fdTggY3VyciA6IDE7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGVyc2lzdGVudCA6IDE7Ci0gX191OCBmZWF0dXJlX3ZlcnNpb24gOiA0OwotIF9fdTggcmVzZXJ2ZWQxIDogMjsKLSNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGFkZF9sZW47Ci0jaWZkZWYgX19CSUdfRU5ESUFOX0JJVEZJRUxECi0gX191OCByZXNlcnZlZDIgOiA3OwotIF9fdTggd3JpdGUgOiAxOworICBfX3U4IHJlc2VydmVkMSA6IDI7CisgIF9fdTggZmVhdHVyZV92ZXJzaW9uIDogNDsKKyAgX191OCBwZXJzaXN0ZW50IDogMTsKKyAgX191OCBjdXJyIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZWxpZiBkZWZpbmVkKF9fTElUVExFX0VORElBTl9CSVRGSUVMRCkKLSBfX3U4IHdyaXRlIDogMTsKLSBfX3U4IHJlc2VydmVkMiA6IDc7Ci0jZW5kaWYKKyAgX191OCBjdXJyIDogMTsKKyAgX191OCBwZXJzaXN0ZW50IDogMTsKKyAgX191OCBmZWF0dXJlX3ZlcnNpb24gOiA0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlc2VydmVkMzsKLSBfX3U4IHJlc2VydmVkNDsKLSBfX3U4IHJlc2VydmVkNTsKKyAgX191OCByZXNlcnZlZDEgOiAyOworI2VuZGlmCisgIF9fdTggYWRkX2xlbjsKKyNpZmRlZiBfX0JJR19FTkRJQU5fQklURklFTEQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcmVzZXJ2ZWQyIDogNzsKKyAgX191OCB3cml0ZSA6IDE7CisjZWxpZiBkZWZpbmVkKF9fTElUVExFX0VORElBTl9CSVRGSUVMRCkKKyAgX191OCB3cml0ZSA6IDE7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHJlc2VydmVkMiA6IDc7CisjZW5kaWYKKyAgX191OCByZXNlcnZlZDM7CisgIF9fdTggcmVzZXJ2ZWQ0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCByZXNlcnZlZDU7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCByd3J0X2ZlYXR1cmVfZGVzYyB7Ci0gX19iZTE2IGZlYXR1cmVfY29kZTsKKyAgX19iZTE2IGZlYXR1cmVfY29kZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZkZWYgX19CSUdfRU5ESUFOX0JJVEZJRUxECi0gX191OCByZXNlcnZlZDEgOiAyOworICBfX3U4IHJlc2VydmVkMSA6IDI7CisgIF9fdTggZmVhdHVyZV92ZXJzaW9uIDogNDsKKyAgX191OCBwZXJzaXN0ZW50IDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmZWF0dXJlX3ZlcnNpb24gOiA0OwotIF9fdTggcGVyc2lzdGVudCA6IDE7Ci0gX191OCBjdXJyIDogMTsKKyAgX191OCBjdXJyIDogMTsKICNlbGlmIGRlZmluZWQoX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxEKQorICBfX3U4IGN1cnIgOiAxOworICBfX3U4IHBlcnNpc3RlbnQgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGN1cnIgOiAxOwotIF9fdTggcGVyc2lzdGVudCA6IDE7Ci0gX191OCBmZWF0dXJlX3ZlcnNpb24gOiA0OwotIF9fdTggcmVzZXJ2ZWQxIDogMjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggZmVhdHVyZV92ZXJzaW9uIDogNDsKKyAgX191OCByZXNlcnZlZDEgOiAyOwogI2VuZGlmCi0gX191OCBhZGRfbGVuOwotIF9fdTMyIGxhc3RfbGJhOwotIF9fdTMyIGJsb2NrX3NpemU7CisgIF9fdTggYWRkX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgYmxvY2tpbmc7CisgIF9fdTMyIGxhc3RfbGJhOworICBfX3UzMiBibG9ja19zaXplOworICBfX3UxNiBibG9ja2luZzsKICNpZmRlZiBfX0JJR19FTkRJQU5fQklURklFTEQKLSBfX3U4IHJlc2VydmVkMiA6IDc7Ci0gX191OCBwYWdlX3ByZXNlbnQgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCByZXNlcnZlZDIgOiA3OworICBfX3U4IHBhZ2VfcHJlc2VudCA6IDE7CiAjZWxpZiBkZWZpbmVkKF9fTElUVExFX0VORElBTl9CSVRGSUVMRCkKLSBfX3U4IHBhZ2VfcHJlc2VudCA6IDE7Ci0gX191OCByZXNlcnZlZDIgOiA3OwotI2VuZGlmCisgIF9fdTggcGFnZV9wcmVzZW50IDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZDM7CisgIF9fdTggcmVzZXJ2ZWQyIDogNzsKKyNlbmRpZgorICBfX3U4IHJlc2VydmVkMzsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgewotIF9fYmUxNiBkaXNjX2luZm9ybWF0aW9uX2xlbmd0aDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fYmUxNiBkaXNjX2luZm9ybWF0aW9uX2xlbmd0aDsKICNpZmRlZiBfX0JJR19FTkRJQU5fQklURklFTEQKLSBfX3U4IHJlc2VydmVkMSA6IDM7Ci0gX191OCBlcmFzYWJsZSA6IDE7Ci0gX191OCBib3JkZXJfc3RhdHVzIDogMjsKKyAgX191OCByZXNlcnZlZDEgOiAzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRpc2Nfc3RhdHVzIDogMjsKKyAgX191OCBlcmFzYWJsZSA6IDE7CisgIF9fdTggYm9yZGVyX3N0YXR1cyA6IDI7CisgIF9fdTggZGlzY19zdGF0dXMgOiAyOwogI2VsaWYgZGVmaW5lZChfX0xJVFRMRV9FTkRJQU5fQklURklFTEQpCi0gX191OCBkaXNjX3N0YXR1cyA6IDI7Ci0gX191OCBib3JkZXJfc3RhdHVzIDogMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBlcmFzYWJsZSA6IDE7Ci0gX191OCByZXNlcnZlZDEgOiAzOworICBfX3U4IGRpc2Nfc3RhdHVzIDogMjsKKyAgX191OCBib3JkZXJfc3RhdHVzIDogMjsKKyAgX191OCBlcmFzYWJsZSA6IDE7CisgIF9fdTggcmVzZXJ2ZWQxIDogMzsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZWxzZQogI2Vycm9yICJQbGVhc2UgZml4IDxhc20vYnl0ZW9yZGVyLmg+IgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgotIF9fdTggbl9maXJzdF90cmFjazsKLSBfX3U4IG5fc2Vzc2lvbnNfbHNiOwotIF9fdTggZmlyc3RfdHJhY2tfbHNiOworICBfX3U4IG5fZmlyc3RfdHJhY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbGFzdF90cmFja19sc2I7CisgIF9fdTggbl9zZXNzaW9uc19sc2I7CisgIF9fdTggZmlyc3RfdHJhY2tfbHNiOworICBfX3U4IGxhc3RfdHJhY2tfbHNiOwogI2lmZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAotIF9fdTggZGlkX3YgOiAxOwotIF9fdTggZGJjX3YgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHVydSA6IDE7Ci0gX191OCByZXNlcnZlZDIgOiAyOwotIF9fdTggZGJpdCA6IDE7Ci0gX191OCBtcndfc3RhdHVzIDogMjsKKyAgX191OCBkaWRfdiA6IDE7CisgIF9fdTggZGJjX3YgOiAxOworICBfX3U4IHVydSA6IDE7CisgIF9fdTggcmVzZXJ2ZWQyIDogMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggZGJpdCA6IDE7CisgIF9fdTggbXJ3X3N0YXR1cyA6IDI7CiAjZWxpZiBkZWZpbmVkKF9fTElUVExFX0VORElBTl9CSVRGSUVMRCkKLSBfX3U4IG1yd19zdGF0dXMgOiAyOwotIF9fdTggZGJpdCA6IDE7Ci0gX191OCByZXNlcnZlZDIgOiAyOworICBfX3U4IG1yd19zdGF0dXMgOiAyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHVydSA6IDE7Ci0gX191OCBkYmNfdiA6IDE7Ci0gX191OCBkaWRfdiA6IDE7CisgIF9fdTggZGJpdCA6IDE7CisgIF9fdTggcmVzZXJ2ZWQyIDogMjsKKyAgX191OCB1cnUgOiAxOworICBfX3U4IGRiY192IDogMTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggZGlkX3YgOiAxOwogI2VuZGlmCisgIF9fdTggZGlzY190eXBlOworICBfX3U4IG5fc2Vzc2lvbnNfbXNiOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRpc2NfdHlwZTsKLSBfX3U4IG5fc2Vzc2lvbnNfbXNiOwotIF9fdTggZmlyc3RfdHJhY2tfbXNiOwotIF9fdTggbGFzdF90cmFja19tc2I7CisgIF9fdTggZmlyc3RfdHJhY2tfbXNiOworICBfX3U4IGxhc3RfdHJhY2tfbXNiOworICBfX3UzMiBkaXNjX2lkOworICBfX3UzMiBsZWFkX2luOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkaXNjX2lkOwotIF9fdTMyIGxlYWRfaW47Ci0gX191MzIgbGVhZF9vdXQ7Ci0gX191OCBkaXNjX2Jhcl9jb2RlWzhdOworICBfX3UzMiBsZWFkX291dDsKKyAgX191OCBkaXNjX2Jhcl9jb2RlWzhdOworICBfX3U4IHJlc2VydmVkMzsKKyAgX191OCBuX29wYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZDM7Ci0gX191OCBuX29wYzsKIH0gZGlzY19pbmZvcm1hdGlvbjsKIHR5cGVkZWYgc3RydWN0IHsKKyAgX19iZTE2IHRyYWNrX2luZm9ybWF0aW9uX2xlbmd0aDsKKyAgX191OCB0cmFja19sc2I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiB0cmFja19pbmZvcm1hdGlvbl9sZW5ndGg7Ci0gX191OCB0cmFja19sc2I7Ci0gX191OCBzZXNzaW9uX2xzYjsKLSBfX3U4IHJlc2VydmVkMTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggc2Vzc2lvbl9sc2I7CisgIF9fdTggcmVzZXJ2ZWQxOwogI2lmZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAotIF9fdTggcmVzZXJ2ZWQyIDogMjsKLSBfX3U4IGRhbWFnZSA6IDE7Ci0gX191OCBjb3B5IDogMTsKKyAgX191OCByZXNlcnZlZDIgOiAyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHRyYWNrX21vZGUgOiA0OwotIF9fdTggcnQgOiAxOwotIF9fdTggYmxhbmsgOiAxOwotIF9fdTggcGFja2V0IDogMTsKKyAgX191OCBkYW1hZ2UgOiAxOworICBfX3U4IGNvcHkgOiAxOworICBfX3U4IHRyYWNrX21vZGUgOiA0OworICBfX3U4IHJ0IDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmcCA6IDE7Ci0gX191OCBkYXRhX21vZGUgOiA0OwotIF9fdTggcmVzZXJ2ZWQzIDogNjsKLSBfX3U4IGxyYV92IDogMTsKKyAgX191OCBibGFuayA6IDE7CisgIF9fdTggcGFja2V0IDogMTsKKyAgX191OCBmcCA6IDE7CisgIF9fdTggZGF0YV9tb2RlIDogNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBud2FfdiA6IDE7CisgIF9fdTggcmVzZXJ2ZWQzIDogNjsKKyAgX191OCBscmFfdiA6IDE7CisgIF9fdTggbndhX3YgOiAxOwogI2VsaWYgZGVmaW5lZChfX0xJVFRMRV9FTkRJQU5fQklURklFTEQpCi0gX191OCB0cmFja19tb2RlIDogNDsKLSBfX3U4IGNvcHkgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRhbWFnZSA6IDE7Ci0gX191OCByZXNlcnZlZDIgOiAyOwotIF9fdTggZGF0YV9tb2RlIDogNDsKLSBfX3U4IGZwIDogMTsKKyAgX191OCB0cmFja19tb2RlIDogNDsKKyAgX191OCBjb3B5IDogMTsKKyAgX191OCBkYW1hZ2UgOiAxOworICBfX3U4IHJlc2VydmVkMiA6IDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGFja2V0IDogMTsKLSBfX3U4IGJsYW5rIDogMTsKLSBfX3U4IHJ0IDogMTsKLSBfX3U4IG53YV92IDogMTsKKyAgX191OCBkYXRhX21vZGUgOiA0OworICBfX3U4IGZwIDogMTsKKyAgX191OCBwYWNrZXQgOiAxOworICBfX3U4IGJsYW5rIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBscmFfdiA6IDE7Ci0gX191OCByZXNlcnZlZDMgOiA2OworICBfX3U4IHJ0IDogMTsKKyAgX191OCBud2FfdiA6IDE7CisgIF9fdTggbHJhX3YgOiAxOworICBfX3U4IHJlc2VydmVkMyA6IDY7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCi0gX19iZTMyIHRyYWNrX3N0YXJ0OworICBfX2JlMzIgdHJhY2tfc3RhcnQ7CisgIF9fYmUzMiBuZXh0X3dyaXRhYmxlOworICBfX2JlMzIgZnJlZV9ibG9ja3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBuZXh0X3dyaXRhYmxlOwotIF9fYmUzMiBmcmVlX2Jsb2NrczsKLSBfX2JlMzIgZml4ZWRfcGFja2V0X3NpemU7Ci0gX19iZTMyIHRyYWNrX3NpemU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBsYXN0X3JlY19hZGRyZXNzOworICBfX2JlMzIgZml4ZWRfcGFja2V0X3NpemU7CisgIF9fYmUzMiB0cmFja19zaXplOworICBfX2JlMzIgbGFzdF9yZWNfYWRkcmVzczsKIH0gdHJhY2tfaW5mb3JtYXRpb247CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZlYXR1cmVfaGVhZGVyIHsKLSBfX3UzMiBkYXRhX2xlbjsKKyAgX191MzIgZGF0YV9sZW47CisgIF9fdTggcmVzZXJ2ZWQxOworICBfX3U4IHJlc2VydmVkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZDE7Ci0gX191OCByZXNlcnZlZDI7Ci0gX191MTYgY3Vycl9wcm9maWxlOworICBfX3UxNiBjdXJyX3Byb2ZpbGU7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtb2RlX3BhZ2VfaGVhZGVyIHsKLSBfX2JlMTYgbW9kZV9kYXRhX2xlbmd0aDsKLSBfX3U4IG1lZGl1bV90eXBlOwotIF9fdTggcmVzZXJ2ZWQxOworICBfX2JlMTYgbW9kZV9kYXRhX2xlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZDI7Ci0gX191OCByZXNlcnZlZDM7Ci0gX19iZTE2IGRlc2NfbGVuZ3RoOworICBfX3U4IG1lZGl1bV90eXBlOworICBfX3U4IHJlc2VydmVkMTsKKyAgX191OCByZXNlcnZlZDI7CisgIF9fdTggcmVzZXJ2ZWQzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19iZTE2IGRlc2NfbGVuZ3RoOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgcm1fZmVhdHVyZV9kZXNjIHsKLSBfX2JlMTYgZmVhdHVyZV9jb2RlOwotI2lmZGVmIF9fQklHX0VORElBTl9CSVRGSUVMRAotIF9fdTggcmVzZXJ2ZWQxOjI7CisgIF9fYmUxNiBmZWF0dXJlX2NvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmVhdHVyZV92ZXJzaW9uOjQ7Ci0gX191OCBwZXJzaXN0ZW50OjE7Ci0gX191OCBjdXJyOjE7CisjaWZkZWYgX19CSUdfRU5ESUFOX0JJVEZJRUxECisgIF9fdTggcmVzZXJ2ZWQxIDogMjsKKyAgX191OCBmZWF0dXJlX3ZlcnNpb24gOiA0OworICBfX3U4IHBlcnNpc3RlbnQgOiAxOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBjdXJyIDogMTsKKyNlbGlmIGRlZmluZWQoX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxEKQorICBfX3U4IGN1cnIgOiAxOworICBfX3U4IHBlcnNpc3RlbnQgOiAxOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBmZWF0dXJlX3ZlcnNpb24gOiA0OworICBfX3U4IHJlc2VydmVkMSA6IDI7CisjZW5kaWYKKyAgX191OCBhZGRfbGVuOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNpZmRlZiBfX0JJR19FTkRJQU5fQklURklFTEQKKyAgX191OCBtZWNoX3R5cGUgOiAzOworICBfX3U4IGxvYWQgOiAxOworICBfX3U4IGVqZWN0IDogMTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcHZudF9qbXByIDogMTsKKyAgX191OCBkYm1sIDogMTsKKyAgX191OCBsb2NrIDogMTsKICNlbGlmIGRlZmluZWQoX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxEKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGN1cnI6MTsKLSBfX3U4IHBlcnNpc3RlbnQ6MTsKLSBfX3U4IGZlYXR1cmVfdmVyc2lvbjo0OwotIF9fdTggcmVzZXJ2ZWQxOjI7CisgIF9fdTggbG9jayA6IDE7CisgIF9fdTggZGJtbCA6IDE7CisgIF9fdTggcHZudF9qbXByIDogMTsKKyAgX191OCBlamVjdCA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGxvYWQgOiAxOworICBfX3U4IG1lY2hfdHlwZSA6IDM7CiAjZW5kaWYKLSBfX3U4IGFkZF9sZW47Ci0jaWZkZWYgX19CSUdfRU5ESUFOX0JJVEZJRUxECi0gX191OCBtZWNoX3R5cGU6MzsKKyAgX191OCByZXNlcnZlZDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbG9hZDoxOwotIF9fdTggZWplY3Q6MTsKLSBfX3U4IHB2bnRfam1wcjoxOwotIF9fdTggZGJtbDoxOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGxvY2s6MTsKLSNlbGlmIGRlZmluZWQoX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxEKQotIF9fdTggbG9jazoxOwotIF9fdTggZGJtbDoxOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHB2bnRfam1wcjoxOwotIF9fdTggZWplY3Q6MTsKLSBfX3U4IGxvYWQ6MTsKLSBfX3U4IG1lY2hfdHlwZTozOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNlbmRpZgotIF9fdTggcmVzZXJ2ZWQyOwotIF9fdTggcmVzZXJ2ZWQzOwotIF9fdTggcmVzZXJ2ZWQ0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCByZXNlcnZlZDM7CisgIF9fdTggcmVzZXJ2ZWQ0OwogfTsKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2dyb3Vwc3RhdHMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2dyb3Vwc3RhdHMuaAppbmRleCAwNGRmYmNiLi4wMzc5NGU0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nncm91cHN0YXRzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jZ3JvdXBzdGF0cy5oCkBAIC0yMiwzNCArMjIsMzQgQEAKICNpbmNsdWRlIDxsaW51eC90YXNrc3RhdHMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY2dyb3Vwc3RhdHMgewotIF9fdTY0IG5yX3NsZWVwaW5nOwotIF9fdTY0IG5yX3J1bm5pbmc7Ci0gX191NjQgbnJfc3RvcHBlZDsKKyAgX191NjQgbnJfc2xlZXBpbmc7CisgIF9fdTY0IG5yX3J1bm5pbmc7CisgIF9fdTY0IG5yX3N0b3BwZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG5yX3VuaW50ZXJydXB0aWJsZTsKLSBfX3U2NCBucl9pb193YWl0OworICBfX3U2NCBucl91bmludGVycnVwdGlibGU7CisgIF9fdTY0IG5yX2lvX3dhaXQ7CiB9OwogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENHUk9VUFNUQVRTX0NNRF9VTlNQRUMgPSBfX1RBU0tTVEFUU19DTURfTUFYLAotIENHUk9VUFNUQVRTX0NNRF9HRVQsCi0gQ0dST1VQU1RBVFNfQ01EX05FVywKLSBfX0NHUk9VUFNUQVRTX0NNRF9NQVgsCisgIENHUk9VUFNUQVRTX0NNRF9VTlNQRUMgPSBfX1RBU0tTVEFUU19DTURfTUFYLAorICBDR1JPVVBTVEFUU19DTURfR0VULAorICBDR1JPVVBTVEFUU19DTURfTkVXLAorICBfX0NHUk9VUFNUQVRTX0NNRF9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQ0dST1VQU1RBVFNfQ01EX01BWCAoX19DR1JPVVBTVEFUU19DTURfTUFYIC0gMSkKIGVudW0gewotIENHUk9VUFNUQVRTX1RZUEVfVU5TUEVDID0gMCwKKyAgQ0dST1VQU1RBVFNfVFlQRV9VTlNQRUMgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDR1JPVVBTVEFUU19UWVBFX0NHUk9VUF9TVEFUUywKLSBfX0NHUk9VUFNUQVRTX1RZUEVfTUFYLAorICBDR1JPVVBTVEFUU19UWVBFX0NHUk9VUF9TVEFUUywKKyAgX19DR1JPVVBTVEFUU19UWVBFX01BWCwKIH07CiAjZGVmaW5lIENHUk9VUFNUQVRTX1RZUEVfTUFYIChfX0NHUk9VUFNUQVRTX1RZUEVfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBDR1JPVVBTVEFUU19DTURfQVRUUl9VTlNQRUMgPSAwLAotIENHUk9VUFNUQVRTX0NNRF9BVFRSX0ZELAotIF9fQ0dST1VQU1RBVFNfQ01EX0FUVFJfTUFYLAorICBDR1JPVVBTVEFUU19DTURfQVRUUl9VTlNQRUMgPSAwLAorICBDR1JPVVBTVEFUU19DTURfQVRUUl9GRCwKKyAgX19DR1JPVVBTVEFUU19DTURfQVRUUl9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQ0dST1VQU1RBVFNfQ01EX0FUVFJfTUFYIChfX0NHUk9VUFNUQVRTX0NNRF9BVFRSX01BWCAtIDEpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NoaW8uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2hpby5oCmluZGV4IDUyNmVlMDIuLjllMzRkZGYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2hpby5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY2hpby5oCkBAIC0yNyw2MiArMjcsNjIgQEAKICNkZWZpbmUgQ0hFVF9WNCA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNoYW5nZXJfcGFyYW1zIHsKLSBpbnQgY3BfY3VycGlja2VyOwotIGludCBjcF9ucGlja2VyczsKLSBpbnQgY3BfbnNsb3RzOworICBpbnQgY3BfY3VycGlja2VyOworICBpbnQgY3BfbnBpY2tlcnM7CisgIGludCBjcF9uc2xvdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjcF9ucG9ydGFsczsKLSBpbnQgY3BfbmRyaXZlczsKKyAgaW50IGNwX25wb3J0YWxzOworICBpbnQgY3BfbmRyaXZlczsKIH07CiBzdHJ1Y3QgY2hhbmdlcl92ZW5kb3JfcGFyYW1zIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGN2cF9uMTsKLSBjaGFyIGN2cF9sYWJlbDFbMTZdOwotIGludCBjdnBfbjI7Ci0gY2hhciBjdnBfbGFiZWwyWzE2XTsKKyAgaW50IGN2cF9uMTsKKyAgY2hhciBjdnBfbGFiZWwxWzE2XTsKKyAgaW50IGN2cF9uMjsKKyAgY2hhciBjdnBfbGFiZWwyWzE2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGN2cF9uMzsKLSBjaGFyIGN2cF9sYWJlbDNbMTZdOwotIGludCBjdnBfbjQ7Ci0gY2hhciBjdnBfbGFiZWw0WzE2XTsKKyAgaW50IGN2cF9uMzsKKyAgY2hhciBjdnBfbGFiZWwzWzE2XTsKKyAgaW50IGN2cF9uNDsKKyAgY2hhciBjdnBfbGFiZWw0WzE2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHJlc2VydmVkWzhdOworICBpbnQgcmVzZXJ2ZWRbOF07CiB9Owogc3RydWN0IGNoYW5nZXJfbW92ZSB7Ci0gaW50IGNtX2Zyb210eXBlOworICBpbnQgY21fZnJvbXR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjbV9mcm9tdW5pdDsKLSBpbnQgY21fdG90eXBlOwotIGludCBjbV90b3VuaXQ7Ci0gaW50IGNtX2ZsYWdzOworICBpbnQgY21fZnJvbXVuaXQ7CisgIGludCBjbV90b3R5cGU7CisgIGludCBjbV90b3VuaXQ7CisgIGludCBjbV9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBDTV9JTlZFUlQgMQogc3RydWN0IGNoYW5nZXJfZXhjaGFuZ2UgewotIGludCBjZV9zcmN0eXBlOworICBpbnQgY2Vfc3JjdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNlX3NyY3VuaXQ7Ci0gaW50IGNlX2Zkc3R0eXBlOwotIGludCBjZV9mZHN0dW5pdDsKLSBpbnQgY2Vfc2RzdHR5cGU7CisgIGludCBjZV9zcmN1bml0OworICBpbnQgY2VfZmRzdHR5cGU7CisgIGludCBjZV9mZHN0dW5pdDsKKyAgaW50IGNlX3Nkc3R0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2Vfc2RzdHVuaXQ7Ci0gaW50IGNlX2ZsYWdzOworICBpbnQgY2Vfc2RzdHVuaXQ7CisgIGludCBjZV9mbGFnczsKIH07CiAjZGVmaW5lIENFX0lOVkVSVDEgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0VfSU5WRVJUMiAyCiBzdHJ1Y3QgY2hhbmdlcl9wb3NpdGlvbiB7Ci0gaW50IGNwX3R5cGU7Ci0gaW50IGNwX3VuaXQ7CisgIGludCBjcF90eXBlOworICBpbnQgY3BfdW5pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNwX2ZsYWdzOworICBpbnQgY3BfZmxhZ3M7CiB9OwogI2RlZmluZSBDUF9JTlZFUlQgMQogc3RydWN0IGNoYW5nZXJfZWxlbWVudF9zdGF0dXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2VzX3R5cGU7Ci0gdW5zaWduZWQgY2hhciBfX3VzZXIgKmNlc19kYXRhOworICBpbnQgY2VzX3R5cGU7CisgIHVuc2lnbmVkIGNoYXIgX191c2VyICogY2VzX2RhdGE7CiB9OwogI2RlZmluZSBDRVNUQVRVU19GVUxMIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC05MywyMCArOTMsMjAgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENFU1RBVFVTX0lORU5BQiAweDIwCiBzdHJ1Y3QgY2hhbmdlcl9nZXRfZWxlbWVudCB7Ci0gaW50IGNnZV90eXBlOwotIGludCBjZ2VfdW5pdDsKKyAgaW50IGNnZV90eXBlOworICBpbnQgY2dlX3VuaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjZ2Vfc3RhdHVzOwotIGludCBjZ2VfZXJybm87Ci0gaW50IGNnZV9zcmN0eXBlOwotIGludCBjZ2Vfc3JjdW5pdDsKKyAgaW50IGNnZV9zdGF0dXM7CisgIGludCBjZ2VfZXJybm87CisgIGludCBjZ2Vfc3JjdHlwZTsKKyAgaW50IGNnZV9zcmN1bml0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2dlX2lkOwotIGludCBjZ2VfbHVuOwotIGNoYXIgY2dlX3B2b2x0YWdbMzZdOwotIGNoYXIgY2dlX2F2b2x0YWdbMzZdOworICBpbnQgY2dlX2lkOworICBpbnQgY2dlX2x1bjsKKyAgY2hhciBjZ2VfcHZvbHRhZ1szNl07CisgIGNoYXIgY2dlX2F2b2x0YWdbMzZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2dlX2ZsYWdzOworICBpbnQgY2dlX2ZsYWdzOwogfTsKICNkZWZpbmUgQ0dFX0VSUk5PIDB4MDEKICNkZWZpbmUgQ0dFX0lOVkVSVCAweDAyCkBAIC0xMTcsMjcgKzExNywyNyBAQAogI2RlZmluZSBDR0VfQVZPTFRBRyAweDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNoYW5nZXJfc2V0X3ZvbHRhZyB7Ci0gaW50IGNzdl90eXBlOwotIGludCBjc3ZfdW5pdDsKLSBjaGFyIGNzdl92b2x0YWdbMzZdOworICBpbnQgY3N2X3R5cGU7CisgIGludCBjc3ZfdW5pdDsKKyAgY2hhciBjc3Zfdm9sdGFnWzM2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNzdl9mbGFnczsKKyAgaW50IGNzdl9mbGFnczsKIH07CiAjZGVmaW5lIENTVl9QVk9MVEFHIDB4MDEKICNkZWZpbmUgQ1NWX0FWT0xUQUcgMHgwMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1NWX0NMRUFSVEFHIDB4MDQKLSNkZWZpbmUgQ0hJT01PVkUgX0lPVygnYycsIDEsc3RydWN0IGNoYW5nZXJfbW92ZSkKLSNkZWZpbmUgQ0hJT0VYQ0hBTkdFIF9JT1coJ2MnLCAyLHN0cnVjdCBjaGFuZ2VyX2V4Y2hhbmdlKQotI2RlZmluZSBDSElPUE9TSVRJT04gX0lPVygnYycsIDMsc3RydWN0IGNoYW5nZXJfcG9zaXRpb24pCisjZGVmaW5lIENISU9NT1ZFIF9JT1coJ2MnLCAxLCBzdHJ1Y3QgY2hhbmdlcl9tb3ZlKQorI2RlZmluZSBDSElPRVhDSEFOR0UgX0lPVygnYycsIDIsIHN0cnVjdCBjaGFuZ2VyX2V4Y2hhbmdlKQorI2RlZmluZSBDSElPUE9TSVRJT04gX0lPVygnYycsIDMsIHN0cnVjdCBjaGFuZ2VyX3Bvc2l0aW9uKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0hJT0dQSUNLRVIgX0lPUignYycsIDQsaW50KQotI2RlZmluZSBDSElPU1BJQ0tFUiBfSU9XKCdjJywgNSxpbnQpCi0jZGVmaW5lIENISU9HUEFSQU1TIF9JT1IoJ2MnLCA2LHN0cnVjdCBjaGFuZ2VyX3BhcmFtcykKLSNkZWZpbmUgQ0hJT0dTVEFUVVMgX0lPVygnYycsIDgsc3RydWN0IGNoYW5nZXJfZWxlbWVudF9zdGF0dXMpCisjZGVmaW5lIENISU9HUElDS0VSIF9JT1IoJ2MnLCA0LCBpbnQpCisjZGVmaW5lIENISU9TUElDS0VSIF9JT1coJ2MnLCA1LCBpbnQpCisjZGVmaW5lIENISU9HUEFSQU1TIF9JT1IoJ2MnLCA2LCBzdHJ1Y3QgY2hhbmdlcl9wYXJhbXMpCisjZGVmaW5lIENISU9HU1RBVFVTIF9JT1coJ2MnLCA4LCBzdHJ1Y3QgY2hhbmdlcl9lbGVtZW50X3N0YXR1cykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENISU9HRUxFTSBfSU9XKCdjJywxNixzdHJ1Y3QgY2hhbmdlcl9nZXRfZWxlbWVudCkKLSNkZWZpbmUgQ0hJT0lOSVRFTEVNIF9JTygnYycsMTcpCi0jZGVmaW5lIENISU9TVk9MVEFHIF9JT1coJ2MnLDE4LHN0cnVjdCBjaGFuZ2VyX3NldF92b2x0YWcpCi0jZGVmaW5lIENISU9HVlBBUkFNUyBfSU9SKCdjJywxOSxzdHJ1Y3QgY2hhbmdlcl92ZW5kb3JfcGFyYW1zKQorI2RlZmluZSBDSElPR0VMRU0gX0lPVygnYycsIDE2LCBzdHJ1Y3QgY2hhbmdlcl9nZXRfZWxlbWVudCkKKyNkZWZpbmUgQ0hJT0lOSVRFTEVNIF9JTygnYycsIDE3KQorI2RlZmluZSBDSElPU1ZPTFRBRyBfSU9XKCdjJywgMTgsIHN0cnVjdCBjaGFuZ2VyX3NldF92b2x0YWcpCisjZGVmaW5lIENISU9HVlBBUkFNUyBfSU9SKCdjJywgMTksIHN0cnVjdCBjaGFuZ2VyX3ZlbmRvcl9wYXJhbXMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jbTQwMDBfY3MuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY200MDAwX2NzLmgKaW5kZXggOTlmZTcwMS4uYjE4NWM3NSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jbTQwMDBfY3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NtNDAwMF9jcy5oCkBAIC0yNCwzMiArMjQsMzIgQEAKICNkZWZpbmUgTUFYX0FUUiAzMwogI2RlZmluZSBDTTQwMDBfTUFYX0RFViA0CiB0eXBlZGVmIHN0cnVjdCBhdHJlcSB7Ci0gX19zMzIgYXRyX2xlbjsKKyAgX19zMzIgYXRyX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBhdHJbNjRdOwotIF9fczMyIHBvd2VyX2FjdDsKLSB1bnNpZ25lZCBjaGFyIGJJRlNEOwotIHVuc2lnbmVkIGNoYXIgYklGU0M7CisgIHVuc2lnbmVkIGNoYXIgYXRyWzY0XTsKKyAgX19zMzIgcG93ZXJfYWN0OworICB1bnNpZ25lZCBjaGFyIGJJRlNEOworICB1bnNpZ25lZCBjaGFyIGJJRlNDOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gYXRyZXFfdDsKIHR5cGVkZWYgc3RydWN0IHB0c3JlcSB7Ci0gX191MzIgcHJvdG9jb2w7Ci0gdW5zaWduZWQgY2hhciBmbGFnczsKKyAgX191MzIgcHJvdG9jb2w7CisgIHVuc2lnbmVkIGNoYXIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcHRzMTsKLSB1bnNpZ25lZCBjaGFyIHB0czI7Ci0gdW5zaWduZWQgY2hhciBwdHMzOworICB1bnNpZ25lZCBjaGFyIHB0czE7CisgIHVuc2lnbmVkIGNoYXIgcHRzMjsKKyAgdW5zaWduZWQgY2hhciBwdHMzOwogfSBwdHNyZXFfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENNX0lPQ19NQUdJQyAnYycKICNkZWZpbmUgQ01fSU9DX01BWE5SIDI1NQotI2RlZmluZSBDTV9JT0NHU1RBVFVTIF9JT1IgKENNX0lPQ19NQUdJQywgMCwgdW5zaWduZWQgY2hhciAqKQorI2RlZmluZSBDTV9JT0NHU1RBVFVTIF9JT1IoQ01fSU9DX01BR0lDLCAwLCB1bnNpZ25lZCBjaGFyICopCiAjZGVmaW5lIENNX0lPQ0dBVFIgX0lPV1IoQ01fSU9DX01BR0lDLCAxLCBhdHJlcV90ICopCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDTV9JT0NTUFRTIF9JT1cgKENNX0lPQ19NQUdJQywgMiwgcHRzcmVxX3QgKikKLSNkZWZpbmUgQ01fSU9DU1JEUiBfSU8gKENNX0lPQ19NQUdJQywgMykKLSNkZWZpbmUgQ01fSU9DQVJET0ZGIF9JTyAoQ01fSU9DX01BR0lDLCA0KQotI2RlZmluZSBDTV9JT1NEQkdMVkwgX0lPVyhDTV9JT0NfTUFHSUMsIDI1MCwgaW50KikKKyNkZWZpbmUgQ01fSU9DU1BUUyBfSU9XKENNX0lPQ19NQUdJQywgMiwgcHRzcmVxX3QgKikKKyNkZWZpbmUgQ01fSU9DU1JEUiBfSU8oQ01fSU9DX01BR0lDLCAzKQorI2RlZmluZSBDTV9JT0NBUkRPRkYgX0lPKENNX0lPQ19NQUdJQywgNCkKKyNkZWZpbmUgQ01fSU9TREJHTFZMIF9JT1coQ01fSU9DX01BR0lDLCAyNTAsIGludCAqKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ01fQ0FSRF9JTlNFUlRFRCAweDAxCiAjZGVmaW5lIENNX0NBUkRfUE9XRVJFRCAweDAyCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NuX3Byb2MuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY25fcHJvYy5oCmluZGV4IGFlNGQ3NDEuLmVkZWI0MjQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY25fcHJvYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY25fcHJvYy5oCkBAIC0yMSw5MSArMjEsOTEgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSBwcm9jX2NuX21jYXN0X29wIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUFJPQ19DTl9NQ0FTVF9MSVNURU4gPSAxLAotIFBST0NfQ05fTUNBU1RfSUdOT1JFID0gMgorICBQUk9DX0NOX01DQVNUX0xJU1RFTiA9IDEsCisgIFBST0NfQ05fTUNBU1RfSUdOT1JFID0gMgogfTsKIHN0cnVjdCBwcm9jX2V2ZW50IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZW51bSB3aGF0IHsKLSBQUk9DX0VWRU5UX05PTkUgPSAweDAwMDAwMDAwLAotIFBST0NfRVZFTlRfRk9SSyA9IDB4MDAwMDAwMDEsCi0gUFJPQ19FVkVOVF9FWEVDID0gMHgwMDAwMDAwMiwKKyAgZW51bSB3aGF0IHsKKyAgICBQUk9DX0VWRU5UX05PTkUgPSAweDAwMDAwMDAwLAorICAgIFBST0NfRVZFTlRfRk9SSyA9IDB4MDAwMDAwMDEsCisgICAgUFJPQ19FVkVOVF9FWEVDID0gMHgwMDAwMDAwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUFJPQ19FVkVOVF9VSUQgPSAweDAwMDAwMDA0LAotIFBST0NfRVZFTlRfR0lEID0gMHgwMDAwMDA0MCwKLSBQUk9DX0VWRU5UX1NJRCA9IDB4MDAwMDAwODAsCi0gUFJPQ19FVkVOVF9QVFJBQ0UgPSAweDAwMDAwMTAwLAorICAgIFBST0NfRVZFTlRfVUlEID0gMHgwMDAwMDAwNCwKKyAgICBQUk9DX0VWRU5UX0dJRCA9IDB4MDAwMDAwNDAsCisgICAgUFJPQ19FVkVOVF9TSUQgPSAweDAwMDAwMDgwLAorICAgIFBST0NfRVZFTlRfUFRSQUNFID0gMHgwMDAwMDEwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUFJPQ19FVkVOVF9DT01NID0gMHgwMDAwMDIwMCwKLSBQUk9DX0VWRU5UX0NPUkVEVU1QID0gMHg0MDAwMDAwMCwKLSBQUk9DX0VWRU5UX0VYSVQgPSAweDgwMDAwMDAwCi0gfSB3aGF0OworICAgIFBST0NfRVZFTlRfQ09NTSA9IDB4MDAwMDAyMDAsCisgICAgUFJPQ19FVkVOVF9DT1JFRFVNUCA9IDB4NDAwMDAwMDAsCisgICAgUFJPQ19FVkVOVF9FWElUID0gMHg4MDAwMDAwMAorICB9IHdoYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNwdTsKLSBfX3U2NCBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSkgdGltZXN0YW1wX25zOwotIHVuaW9uIHsKLSBzdHJ1Y3QgeworICBfX3UzMiBjcHU7CisgIF9fdTY0IF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKSB0aW1lc3RhbXBfbnM7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlcnI7Ci0gfSBhY2s7Ci0gc3RydWN0IGZvcmtfcHJvY19ldmVudCB7Ci0gX19rZXJuZWxfcGlkX3QgcGFyZW50X3BpZDsKKyAgICAgIF9fdTMyIGVycjsKKyAgICB9IGFjazsKKyAgICBzdHJ1Y3QgZm9ya19wcm9jX2V2ZW50IHsKKyAgICAgIF9fa2VybmVsX3BpZF90IHBhcmVudF9waWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3BpZF90IHBhcmVudF90Z2lkOwotIF9fa2VybmVsX3BpZF90IGNoaWxkX3BpZDsKLSBfX2tlcm5lbF9waWRfdCBjaGlsZF90Z2lkOwotIH0gZm9yazsKKyAgICAgIF9fa2VybmVsX3BpZF90IHBhcmVudF90Z2lkOworICAgICAgX19rZXJuZWxfcGlkX3QgY2hpbGRfcGlkOworICAgICAgX19rZXJuZWxfcGlkX3QgY2hpbGRfdGdpZDsKKyAgICB9IGZvcms7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBleGVjX3Byb2NfZXZlbnQgewotIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfcGlkOwotIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfdGdpZDsKLSB9IGV4ZWM7CisgICAgc3RydWN0IGV4ZWNfcHJvY19ldmVudCB7CisgICAgICBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3BpZDsKKyAgICAgIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfdGdpZDsKKyAgICB9IGV4ZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpZF9wcm9jX2V2ZW50IHsKLSBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3BpZDsKLSBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3RnaWQ7Ci0gdW5pb24geworICAgIHN0cnVjdCBpZF9wcm9jX2V2ZW50IHsKKyAgICAgIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfcGlkOworICAgICAgX19rZXJuZWxfcGlkX3QgcHJvY2Vzc190Z2lkOworICAgICAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBydWlkOwotIF9fdTMyIHJnaWQ7Ci0gfSByOwotIHVuaW9uIHsKKyAgICAgICAgX191MzIgcnVpZDsKKyAgICAgICAgX191MzIgcmdpZDsKKyAgICAgIH0gcjsKKyAgICAgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZXVpZDsKLSBfX3UzMiBlZ2lkOwotIH0gZTsKLSB9IGlkOworICAgICAgICBfX3UzMiBldWlkOworICAgICAgICBfX3UzMiBlZ2lkOworICAgICAgfSBlOworICAgIH0gaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzaWRfcHJvY19ldmVudCB7Ci0gX19rZXJuZWxfcGlkX3QgcHJvY2Vzc19waWQ7Ci0gX19rZXJuZWxfcGlkX3QgcHJvY2Vzc190Z2lkOwotIH0gc2lkOworICAgIHN0cnVjdCBzaWRfcHJvY19ldmVudCB7CisgICAgICBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3BpZDsKKyAgICAgIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfdGdpZDsKKyAgICB9IHNpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHB0cmFjZV9wcm9jX2V2ZW50IHsKLSBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3BpZDsKLSBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3RnaWQ7Ci0gX19rZXJuZWxfcGlkX3QgdHJhY2VyX3BpZDsKKyAgICBzdHJ1Y3QgcHRyYWNlX3Byb2NfZXZlbnQgeworICAgICAgX19rZXJuZWxfcGlkX3QgcHJvY2Vzc19waWQ7CisgICAgICBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3RnaWQ7CisgICAgICBfX2tlcm5lbF9waWRfdCB0cmFjZXJfcGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9waWRfdCB0cmFjZXJfdGdpZDsKLSB9IHB0cmFjZTsKLSBzdHJ1Y3QgY29tbV9wcm9jX2V2ZW50IHsKLSBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3BpZDsKKyAgICAgIF9fa2VybmVsX3BpZF90IHRyYWNlcl90Z2lkOworICAgIH0gcHRyYWNlOworICAgIHN0cnVjdCBjb21tX3Byb2NfZXZlbnQgeworICAgICAgX19rZXJuZWxfcGlkX3QgcHJvY2Vzc19waWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfdGdpZDsKLSBjaGFyIGNvbW1bMTZdOwotIH0gY29tbTsKLSBzdHJ1Y3QgY29yZWR1bXBfcHJvY19ldmVudCB7CisgICAgICBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3RnaWQ7CisgICAgICBjaGFyIGNvbW1bMTZdOworICAgIH0gY29tbTsKKyAgICBzdHJ1Y3QgY29yZWR1bXBfcHJvY19ldmVudCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfcGlkOwotIF9fa2VybmVsX3BpZF90IHByb2Nlc3NfdGdpZDsKLSB9IGNvcmVkdW1wOwotIHN0cnVjdCBleGl0X3Byb2NfZXZlbnQgeworICAgICAgX19rZXJuZWxfcGlkX3QgcHJvY2Vzc19waWQ7CisgICAgICBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3RnaWQ7CisgICAgfSBjb3JlZHVtcDsKKyAgICBzdHJ1Y3QgZXhpdF9wcm9jX2V2ZW50IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfcGlkX3QgcHJvY2Vzc19waWQ7Ci0gX19rZXJuZWxfcGlkX3QgcHJvY2Vzc190Z2lkOwotIF9fdTMyIGV4aXRfY29kZSwgZXhpdF9zaWduYWw7Ci0gfSBleGl0OworICAgICAgX19rZXJuZWxfcGlkX3QgcHJvY2Vzc19waWQ7CisgICAgICBfX2tlcm5lbF9waWRfdCBwcm9jZXNzX3RnaWQ7CisgICAgICBfX3UzMiBleGl0X2NvZGUsIGV4aXRfc2lnbmFsOworICAgIH0gZXhpdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBldmVudF9kYXRhOworICB9IGV2ZW50X2RhdGE7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NvZGEuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29kYS5oCmluZGV4IDRkNTgxNzkuLmRmZTdiOTEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29kYS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29kYS5oCkBAIC00NCw5ICs0NCw5IEBACiAjZW5kaWYKICNkZWZpbmUgaW5saW5lCiBzdHJ1Y3QgdGltZXNwZWMgewotIGxvbmcgdHNfc2VjOworICBsb25nIHRzX3NlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyB0c19uc2VjOworICBsb25nIHRzX25zZWM7CiB9OwogI2Vsc2UKICNpbmNsdWRlIDxzeXMvdGltZS5oPgpAQCAtNjksOSArNjksOSBAQAogI2VuZGlmCiAjaWZkZWYgX19DWUdXSU4zMl9fCiBzdHJ1Y3QgdGltZXNwZWMgewotIHRpbWVfdCB0dl9zZWM7CisgIHRpbWVfdCB0dl9zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgdHZfbnNlYzsKKyAgbG9uZyB0dl9uc2VjOwogfTsKICNlbmRpZgogI2lmbmRlZiBfX0JJVF9UWVBFU19ERUZJTkVEX18KQEAgLTEwOCwxNiArMTA4LDE2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfVkVOVVNfRElSRU5UX1RfIDEKIHN0cnVjdCB2ZW51c19kaXJlbnQgewotIHVfaW50MzJfdCBkX2ZpbGVubzsKLSB1X2ludDE2X3QgZF9yZWNsZW47CisgIHVfaW50MzJfdCBkX2ZpbGVubzsKKyAgdV9pbnQxNl90IGRfcmVjbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1X2ludDhfdCBkX3R5cGU7Ci0gdV9pbnQ4X3QgZF9uYW1sZW47Ci0gY2hhciBkX25hbWVbQ09EQV9NQVhOQU1MRU4gKyAxXTsKKyAgdV9pbnQ4X3QgZF90eXBlOworICB1X2ludDhfdCBkX25hbWxlbjsKKyAgY2hhciBkX25hbWVbQ09EQV9NQVhOQU1MRU4gKyAxXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI3VuZGVmIERJUlNJWgotI2RlZmluZSBESVJTSVooZHApICgoc2l6ZW9mIChzdHJ1Y3QgdmVudXNfZGlyZW50KSAtIChDT0RBX01BWE5BTUxFTisxKSkgKyAgICgoKGRwKS0+ZF9uYW1sZW4rMSArIDMpICZ+IDMpKQorI2RlZmluZSBESVJTSVooZHApICgoc2l6ZW9mKHN0cnVjdCB2ZW51c19kaXJlbnQpIC0gKENPREFfTUFYTkFNTEVOICsgMSkpICsgKCgoZHApLT5kX25hbWxlbiArIDEgKyAzKSAmIH4zKSkKICNkZWZpbmUgQ0RUX1VOS05PV04gMAogI2RlZmluZSBDRFRfRklGTyAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTQxLDQ4NiArMTQxLDQ5OSBAQAogI2VuZGlmCiBzdHJ1Y3QgQ29kYUZpZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVfaW50MzJfdCBvcGFxdWVbNF07CisgIHVfaW50MzJfdCBvcGFxdWVbNF07CiB9OwotI2RlZmluZSBjb2RhX2YyaShmaWQpICAoZmlkID8gKGZpZC0+b3BhcXVlWzNdIF4gKGZpZC0+b3BhcXVlWzJdPDwxMCkgXiAoZmlkLT5vcGFxdWVbMV08PDIwKSBeIGZpZC0+b3BhcXVlWzBdKSA6IDApCisjZGVmaW5lIGNvZGFfZjJpKGZpZCkgKGZpZCA/IChmaWQtPm9wYXF1ZVszXSBeIChmaWQtPm9wYXF1ZVsyXSA8PCAxMCkgXiAoZmlkLT5vcGFxdWVbMV0gPDwgMjApIF4gZmlkLT5vcGFxdWVbMF0pIDogMCkKICNpZm5kZWYgX1ZFTlVTX1ZBVFRSX1RfCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfVkVOVVNfVkFUVFJfVF8KLWVudW0gY29kYV92dHlwZSB7IENfVk5PTiwgQ19WUkVHLCBDX1ZESVIsIENfVkJMSywgQ19WQ0hSLCBDX1ZMTkssIENfVlNPQ0ssIENfVkZJRk8sIENfVkJBRCB9Owotc3RydWN0IGNvZGFfdmF0dHIgewotIGxvbmcgdmFfdHlwZTsKK2VudW0gY29kYV92dHlwZSB7CisgIENfVk5PTiwKKyAgQ19WUkVHLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1X3Nob3J0IHZhX21vZGU7Ci0gc2hvcnQgdmFfbmxpbms7Ci0gdnVpZF90IHZhX3VpZDsKLSB2Z2lkX3QgdmFfZ2lkOworICBDX1ZESVIsCisgIENfVkJMSywKKyAgQ19WQ0hSLAorICBDX1ZMTkssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgdmFfZmlsZWlkOwotIHVfcXVhZF90IHZhX3NpemU7Ci0gbG9uZyB2YV9ibG9ja3NpemU7Ci0gc3RydWN0IHRpbWVzcGVjIHZhX2F0aW1lOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdGltZXNwZWMgdmFfbXRpbWU7Ci0gc3RydWN0IHRpbWVzcGVjIHZhX2N0aW1lOwotIHVfbG9uZyB2YV9nZW47Ci0gdV9sb25nIHZhX2ZsYWdzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjZGV2X3QgdmFfcmRldjsKLSB1X3F1YWRfdCB2YV9ieXRlczsKLSB1X3F1YWRfdCB2YV9maWxlcmV2OworICBDX1ZTT0NLLAorICBDX1ZGSUZPLAorICBDX1ZCQUQKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGNvZGFfdmF0dHIgeworICBsb25nIHZhX3R5cGU7CisgIHVfc2hvcnQgdmFfbW9kZTsKKyAgc2hvcnQgdmFfbmxpbms7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB2dWlkX3QgdmFfdWlkOworICB2Z2lkX3QgdmFfZ2lkOworICBsb25nIHZhX2ZpbGVpZDsKKyAgdV9xdWFkX3QgdmFfc2l6ZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGxvbmcgdmFfYmxvY2tzaXplOworICBzdHJ1Y3QgdGltZXNwZWMgdmFfYXRpbWU7CisgIHN0cnVjdCB0aW1lc3BlYyB2YV9tdGltZTsKKyAgc3RydWN0IHRpbWVzcGVjIHZhX2N0aW1lOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdV9sb25nIHZhX2dlbjsKKyAgdV9sb25nIHZhX2ZsYWdzOworICBjZGV2X3QgdmFfcmRldjsKKyAgdV9xdWFkX3QgdmFfYnl0ZXM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1X3F1YWRfdCB2YV9maWxlcmV2OworfTsKICNlbmRpZgogc3RydWN0IGNvZGFfc3RhdGZzIHsKLSBpbnQzMl90IGZfYmxvY2tzOwotIGludDMyX3QgZl9iZnJlZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50MzJfdCBmX2JhdmFpbDsKLSBpbnQzMl90IGZfZmlsZXM7Ci0gaW50MzJfdCBmX2ZmcmVlOworICBpbnQzMl90IGZfYmxvY2tzOworICBpbnQzMl90IGZfYmZyZWU7CisgIGludDMyX3QgZl9iYXZhaWw7CisgIGludDMyX3QgZl9maWxlczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludDMyX3QgZl9mZnJlZTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0RBX1JPT1QgMgogI2RlZmluZSBDT0RBX09QRU5fQllfRkQgMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09EQV9PUEVOIDQKICNkZWZpbmUgQ09EQV9DTE9TRSA1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0RBX0lPQ1RMIDYKICNkZWZpbmUgQ09EQV9HRVRBVFRSIDcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPREFfU0VUQVRUUiA4CiAjZGVmaW5lIENPREFfQUNDRVNTIDkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPREFfTE9PS1VQIDEwCiAjZGVmaW5lIENPREFfQ1JFQVRFIDExCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0RBX1JFTU9WRSAxMgogI2RlZmluZSBDT0RBX0xJTksgMTMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPREFfUkVOQU1FIDE0CiAjZGVmaW5lIENPREFfTUtESVIgMTUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPREFfUk1ESVIgMTYKICNkZWZpbmUgQ09EQV9TWU1MSU5LIDE4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0RBX1JFQURMSU5LIDE5CiAjZGVmaW5lIENPREFfRlNZTkMgMjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPREFfVkdFVCAyMgogI2RlZmluZSBDT0RBX1NJR05BTCAyMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09EQV9SRVBMQUNFIDI0CiAjZGVmaW5lIENPREFfRkxVU0ggMjUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPREFfUFVSR0VVU0VSIDI2CiAjZGVmaW5lIENPREFfWkFQRklMRSAyNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09EQV9aQVBESVIgMjgKICNkZWZpbmUgQ09EQV9QVVJHRUZJRCAzMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09EQV9PUEVOX0JZX1BBVEggMzEKICNkZWZpbmUgQ09EQV9SRVNPTFZFIDMyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0RBX1JFSU5URUdSQVRFIDMzCiAjZGVmaW5lIENPREFfU1RBVEZTIDM0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0RBX1NUT1JFIDM1CiAjZGVmaW5lIENPREFfUkVMRUFTRSAzNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09EQV9OQ0FMTFMgMzcKICNkZWZpbmUgRE9XTkNBTEwob3Bjb2RlKSAob3Bjb2RlID49IENPREFfUkVQTEFDRSAmJiBvcGNvZGUgPD0gQ09EQV9QVVJHRUZJRCkKLSNkZWZpbmUgVkNfTUFYREFUQVNJWkUgODE5MgotI2RlZmluZSBWQ19NQVhNU0dTSVpFIHNpemVvZih1bmlvbiBpbnB1dEFyZ3MpK3NpemVvZih1bmlvbiBvdXRwdXRBcmdzKSArICBWQ19NQVhEQVRBU0laRQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVkNfTUFYREFUQVNJWkUgODE5MgorI2RlZmluZSBWQ19NQVhNU0dTSVpFIHNpemVvZih1bmlvbiBpbnB1dEFyZ3MpICsgc2l6ZW9mKHVuaW9uIG91dHB1dEFyZ3MpICsgVkNfTUFYREFUQVNJWkUKICNkZWZpbmUgQ0lPQ19LRVJORUxfVkVSU0lPTiBfSU9XUignYycsIDEwLCBzaXplX3QpCiAjZGVmaW5lIENPREFfS0VSTkVMX1ZFUlNJT04gMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb2RhX2luX2hkciB7Ci0gdV9pbnQzMl90IG9wY29kZTsKKyAgdV9pbnQzMl90IG9wY29kZTsKKyAgdV9pbnQzMl90IHVuaXF1ZTsKKyAgcGlkX3QgcGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1X2ludDMyX3QgdW5pcXVlOwotIHBpZF90IHBpZDsKLSBwaWRfdCBwZ2lkOwotIHZ1aWRfdCB1aWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBwaWRfdCBwZ2lkOworICB2dWlkX3QgdWlkOwogfTsKIHN0cnVjdCBjb2RhX291dF9oZHIgewotIHVfaW50MzJfdCBvcGNvZGU7Ci0gdV9pbnQzMl90IHVuaXF1ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdV9pbnQzMl90IHJlc3VsdDsKKyAgdV9pbnQzMl90IG9wY29kZTsKKyAgdV9pbnQzMl90IHVuaXF1ZTsKKyAgdV9pbnQzMl90IHJlc3VsdDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvZGFfcm9vdF9vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CisgIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7CisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CiB9Owotc3RydWN0IGNvZGFfcm9vdF9pbiB7Ci0gc3RydWN0IGNvZGFfaW5faGRyIGluOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBjb2RhX3Jvb3RfaW4geworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaW47CiB9Owogc3RydWN0IGNvZGFfb3Blbl9pbiB7Ci0gc3RydWN0IGNvZGFfaW5faGRyIGloOwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBmbGFnczsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOworICBpbnQgZmxhZ3M7CiB9Owotc3RydWN0IGNvZGFfb3Blbl9vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNkZXZfdCBkZXY7Ci0gaW5vX3QgaW5vZGU7CitzdHJ1Y3QgY29kYV9vcGVuX291dCB7CisgIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7CisgIGNkZXZfdCBkZXY7CisgIGlub190IGlub2RlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgY29kYV9zdG9yZV9pbiB7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfaW5faGRyIGloOwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7Ci0gaW50IGZsYWdzOworICBpbnQgZmxhZ3M7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb2RhX3N0b3JlX291dCB7Ci0gc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7CisgIHN0cnVjdCBjb2RhX291dF9oZHIgb3V0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgY29kYV9yZWxlYXNlX2luIHsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKLSBpbnQgZmxhZ3M7CisgIGludCBmbGFnczsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvZGFfcmVsZWFzZV9vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb3V0OworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGNvZGFfY2xvc2VfaW4geworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwotIGludCBmbGFnczsKKyAgaW50IGZsYWdzOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY29kYV9jbG9zZV9vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb3V0OworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGNvZGFfaW9jdGxfaW4geworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwotIGludCBjbWQ7Ci0gaW50IGxlbjsKKyAgaW50IGNtZDsKKyAgaW50IGxlbjsKKyAgaW50IHJ3ZmxhZzsKKyAgY2hhciAqIGRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCByd2ZsYWc7Ci0gY2hhciAqZGF0YTsKIH07CiBzdHJ1Y3QgY29kYV9pb2N0bF9vdXQgeworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworICBpbnQgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOwotIGludCBsZW47Ci0gY2FkZHJfdCBkYXRhOworICBjYWRkcl90IGRhdGE7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb2RhX2dldGF0dHJfaW4gewotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwotfTsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKK307CiBzdHJ1Y3QgY29kYV9nZXRhdHRyX291dCB7Ci0gc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKLSBzdHJ1Y3QgY29kYV92YXR0ciBhdHRyOworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGNvZGFfdmF0dHIgYXR0cjsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvZGFfc2V0YXR0cl9pbiB7Ci0gc3RydWN0IGNvZGFfaW5faGRyIGloOwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7Ci0gc3RydWN0IGNvZGFfdmF0dHIgYXR0cjsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKKyAgc3RydWN0IGNvZGFfdmF0dHIgYXR0cjsKIH07CiBzdHJ1Y3QgY29kYV9zZXRhdHRyX291dCB7Ci0gc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvZGFfYWNjZXNzX2luIHsKLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKLSBpbnQgZmxhZ3M7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CisgIGludCBmbGFnczsKIH07CiBzdHJ1Y3QgY29kYV9hY2Nlc3Nfb3V0IHsKLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKLX07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKK307CiAjZGVmaW5lIENMVV9DQVNFX1NFTlNJVElWRSAweDAxCiAjZGVmaW5lIENMVV9DQVNFX0lOU0VOU0lUSVZFIDB4MDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY29kYV9sb29rdXBfaW4gewotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOworICBpbnQgbmFtZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IENvZGFGaWQgVkZpZDsKLSBpbnQgbmFtZTsKLSBpbnQgZmxhZ3M7CisgIGludCBmbGFnczsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvZGFfbG9va3VwX291dCB7Ci0gc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwotIGludCB2dHlwZTsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CisgIGludCB2dHlwZTsKIH07CiBzdHJ1Y3QgY29kYV9jcmVhdGVfaW4gewotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV92YXR0ciBhdHRyOwotIGludCBleGNsOwotIGludCBtb2RlOwotIGludCBuYW1lOworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CisgIHN0cnVjdCBjb2RhX3ZhdHRyIGF0dHI7CisgIGludCBleGNsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IG1vZGU7CisgIGludCBuYW1lOwogfTsKIHN0cnVjdCBjb2RhX2NyZWF0ZV9vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfdmF0dHIgYXR0cjsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKKyAgc3RydWN0IGNvZGFfdmF0dHIgYXR0cjsKIH07Ci1zdHJ1Y3QgY29kYV9yZW1vdmVfaW4gewotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IENvZGFGaWQgVkZpZDsKLSBpbnQgbmFtZTsKK3N0cnVjdCBjb2RhX3JlbW92ZV9pbiB7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKKyAgaW50IG5hbWU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBjb2RhX3JlbW92ZV9vdXQgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb2RhX2xpbmtfaW4gewotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgQ29kYUZpZCBzb3VyY2VGaWQ7CisgIHN0cnVjdCBDb2RhRmlkIGRlc3RGaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBDb2RhRmlkIHNvdXJjZUZpZDsKLSBzdHJ1Y3QgQ29kYUZpZCBkZXN0RmlkOwotIGludCB0bmFtZTsKKyAgaW50IHRuYW1lOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY29kYV9saW5rX291dCB7Ci0gc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7CisgIHN0cnVjdCBjb2RhX291dF9oZHIgb3V0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgY29kYV9yZW5hbWVfaW4geworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CisgIHN0cnVjdCBDb2RhRmlkIHNvdXJjZUZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfaW5faGRyIGloOwotIHN0cnVjdCBDb2RhRmlkIHNvdXJjZUZpZDsKLSBpbnQgc3JjbmFtZTsKLSBzdHJ1Y3QgQ29kYUZpZCBkZXN0RmlkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZGVzdG5hbWU7CisgIGludCBzcmNuYW1lOworICBzdHJ1Y3QgQ29kYUZpZCBkZXN0RmlkOworICBpbnQgZGVzdG5hbWU7CiB9Owotc3RydWN0IGNvZGFfcmVuYW1lX291dCB7Ci0gc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGNvZGFfcmVuYW1lX291dCB7CisgIHN0cnVjdCBjb2RhX291dF9oZHIgb3V0OwogfTsKIHN0cnVjdCBjb2RhX21rZGlyX2luIHsKLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfdmF0dHIgYXR0cjsKLSBpbnQgbmFtZTsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOworICBzdHJ1Y3QgY29kYV92YXR0ciBhdHRyOworICBpbnQgbmFtZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGNvZGFfbWtkaXJfb3V0IHsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwotIHN0cnVjdCBjb2RhX3ZhdHRyIGF0dHI7CisgIHN0cnVjdCBjb2RhX3ZhdHRyIGF0dHI7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb2RhX3JtZGlyX2luIHsKLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKLSBpbnQgbmFtZTsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKKyAgaW50IG5hbWU7CiB9Owogc3RydWN0IGNvZGFfcm1kaXJfb3V0IHsKLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBjb2RhX291dF9oZHIgb3V0OwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY29kYV9zeW1saW5rX2luIHsKLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKLSBpbnQgc3JjbmFtZTsKKyAgc3RydWN0IGNvZGFfaW5faGRyIGloOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV92YXR0ciBhdHRyOwotIGludCB0bmFtZTsKKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKKyAgaW50IHNyY25hbWU7CisgIHN0cnVjdCBjb2RhX3ZhdHRyIGF0dHI7CisgIGludCB0bmFtZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGNvZGFfc3ltbGlua19vdXQgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvdXQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjb2RhX3JlYWRsaW5rX2luIHsKLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKKyAgc3RydWN0IENvZGFGaWQgVkZpZDsKIH07Ci1zdHJ1Y3QgY29kYV9yZWFkbGlua19vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjb3VudDsKLSBjYWRkcl90IGRhdGE7CitzdHJ1Y3QgY29kYV9yZWFkbGlua19vdXQgeworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworICBpbnQgY291bnQ7CisgIGNhZGRyX3QgZGF0YTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGNvZGFfZnN5bmNfaW4geworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOwogfTsKIHN0cnVjdCBjb2RhX2ZzeW5jX291dCB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX291dF9oZHIgb3V0OworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG91dDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvZGFfdmdldF9pbiB7Ci0gc3RydWN0IGNvZGFfaW5faGRyIGloOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgQ29kYUZpZCBWRmlkOworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CiB9Owotc3RydWN0IGNvZGFfdmdldF9vdXQgewotIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBDb2RhRmlkIFZGaWQ7Ci0gaW50IHZ0eXBlOworc3RydWN0IGNvZGFfdmdldF9vdXQgeworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworICBzdHJ1Y3QgQ29kYUZpZCBWRmlkOworICBpbnQgdnR5cGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBjb2RhX3B1cmdldXNlcl9vdXQgeworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworICB2dWlkX3QgdWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOwotIHZ1aWRfdCB1aWQ7CiB9Owogc3RydWN0IGNvZGFfemFwZmlsZV9vdXQgeworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworICBzdHJ1Y3QgQ29kYUZpZCBDb2RhRmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOwotIHN0cnVjdCBDb2RhRmlkIENvZGFGaWQ7CiB9Owogc3RydWN0IGNvZGFfemFwZGlyX291dCB7CisgIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7CisgIHN0cnVjdCBDb2RhRmlkIENvZGFGaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7Ci0gc3RydWN0IENvZGFGaWQgQ29kYUZpZDsKIH07CiBzdHJ1Y3QgY29kYV9wdXJnZWZpZF9vdXQgeworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworICBzdHJ1Y3QgQ29kYUZpZCBDb2RhRmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOwotIHN0cnVjdCBDb2RhRmlkIENvZGFGaWQ7CiB9Owogc3RydWN0IGNvZGFfcmVwbGFjZV9vdXQgeworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworICBzdHJ1Y3QgQ29kYUZpZCBOZXdGaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7Ci0gc3RydWN0IENvZGFGaWQgTmV3RmlkOwotIHN0cnVjdCBDb2RhRmlkIE9sZEZpZDsKKyAgc3RydWN0IENvZGFGaWQgT2xkRmlkOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY29kYV9vcGVuX2J5X2ZkX2luIHsKLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKLSBpbnQgZmxhZ3M7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CisgIGludCBmbGFnczsKIH07CiBzdHJ1Y3QgY29kYV9vcGVuX2J5X2ZkX291dCB7Ci0gc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKLSBpbnQgZmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworICBpbnQgZmQ7CiB9Owogc3RydWN0IGNvZGFfb3Blbl9ieV9wYXRoX2luIHsKLSBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7Ci0gc3RydWN0IENvZGFGaWQgVkZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGZsYWdzOworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CisgIHN0cnVjdCBDb2RhRmlkIFZGaWQ7CisgIGludCBmbGFnczsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvZGFfb3Blbl9ieV9wYXRoX291dCB7Ci0gc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBhdGg7CisgIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7CisgIGludCBwYXRoOwogfTsKLXN0cnVjdCBjb2RhX3N0YXRmc19pbiB7Ci0gc3RydWN0IGNvZGFfaW5faGRyIGluOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBjb2RhX3N0YXRmc19pbiB7CisgIHN0cnVjdCBjb2RhX2luX2hkciBpbjsKIH07CiBzdHJ1Y3QgY29kYV9zdGF0ZnNfb3V0IHsKLSBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOwotIHN0cnVjdCBjb2RhX3N0YXRmcyBzdGF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGNvZGFfb3V0X2hkciBvaDsKKyAgc3RydWN0IGNvZGFfc3RhdGZzIHN0YXQ7CiB9OwogI2RlZmluZSBDT0RBX05PQ0FDSEUgMHg4MDAwMDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHVuaW9uIGlucHV0QXJncyB7Ci0gc3RydWN0IGNvZGFfaW5faGRyIGloOworICBzdHJ1Y3QgY29kYV9pbl9oZHIgaWg7CisgIHN0cnVjdCBjb2RhX29wZW5faW4gY29kYV9vcGVuOworICBzdHJ1Y3QgY29kYV9zdG9yZV9pbiBjb2RhX3N0b3JlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9vcGVuX2luIGNvZGFfb3BlbjsKLSBzdHJ1Y3QgY29kYV9zdG9yZV9pbiBjb2RhX3N0b3JlOwotIHN0cnVjdCBjb2RhX3JlbGVhc2VfaW4gY29kYV9yZWxlYXNlOwotIHN0cnVjdCBjb2RhX2Nsb3NlX2luIGNvZGFfY2xvc2U7CisgIHN0cnVjdCBjb2RhX3JlbGVhc2VfaW4gY29kYV9yZWxlYXNlOworICBzdHJ1Y3QgY29kYV9jbG9zZV9pbiBjb2RhX2Nsb3NlOworICBzdHJ1Y3QgY29kYV9pb2N0bF9pbiBjb2RhX2lvY3RsOworICBzdHJ1Y3QgY29kYV9nZXRhdHRyX2luIGNvZGFfZ2V0YXR0cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfaW9jdGxfaW4gY29kYV9pb2N0bDsKLSBzdHJ1Y3QgY29kYV9nZXRhdHRyX2luIGNvZGFfZ2V0YXR0cjsKLSBzdHJ1Y3QgY29kYV9zZXRhdHRyX2luIGNvZGFfc2V0YXR0cjsKLSBzdHJ1Y3QgY29kYV9hY2Nlc3NfaW4gY29kYV9hY2Nlc3M7CisgIHN0cnVjdCBjb2RhX3NldGF0dHJfaW4gY29kYV9zZXRhdHRyOworICBzdHJ1Y3QgY29kYV9hY2Nlc3NfaW4gY29kYV9hY2Nlc3M7CisgIHN0cnVjdCBjb2RhX2xvb2t1cF9pbiBjb2RhX2xvb2t1cDsKKyAgc3RydWN0IGNvZGFfY3JlYXRlX2luIGNvZGFfY3JlYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9sb29rdXBfaW4gY29kYV9sb29rdXA7Ci0gc3RydWN0IGNvZGFfY3JlYXRlX2luIGNvZGFfY3JlYXRlOwotIHN0cnVjdCBjb2RhX3JlbW92ZV9pbiBjb2RhX3JlbW92ZTsKLSBzdHJ1Y3QgY29kYV9saW5rX2luIGNvZGFfbGluazsKKyAgc3RydWN0IGNvZGFfcmVtb3ZlX2luIGNvZGFfcmVtb3ZlOworICBzdHJ1Y3QgY29kYV9saW5rX2luIGNvZGFfbGluazsKKyAgc3RydWN0IGNvZGFfcmVuYW1lX2luIGNvZGFfcmVuYW1lOworICBzdHJ1Y3QgY29kYV9ta2Rpcl9pbiBjb2RhX21rZGlyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9yZW5hbWVfaW4gY29kYV9yZW5hbWU7Ci0gc3RydWN0IGNvZGFfbWtkaXJfaW4gY29kYV9ta2RpcjsKLSBzdHJ1Y3QgY29kYV9ybWRpcl9pbiBjb2RhX3JtZGlyOwotIHN0cnVjdCBjb2RhX3N5bWxpbmtfaW4gY29kYV9zeW1saW5rOworICBzdHJ1Y3QgY29kYV9ybWRpcl9pbiBjb2RhX3JtZGlyOworICBzdHJ1Y3QgY29kYV9zeW1saW5rX2luIGNvZGFfc3ltbGluazsKKyAgc3RydWN0IGNvZGFfcmVhZGxpbmtfaW4gY29kYV9yZWFkbGluazsKKyAgc3RydWN0IGNvZGFfZnN5bmNfaW4gY29kYV9mc3luYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfcmVhZGxpbmtfaW4gY29kYV9yZWFkbGluazsKLSBzdHJ1Y3QgY29kYV9mc3luY19pbiBjb2RhX2ZzeW5jOwotIHN0cnVjdCBjb2RhX3ZnZXRfaW4gY29kYV92Z2V0OwotIHN0cnVjdCBjb2RhX29wZW5fYnlfZmRfaW4gY29kYV9vcGVuX2J5X2ZkOworICBzdHJ1Y3QgY29kYV92Z2V0X2luIGNvZGFfdmdldDsKKyAgc3RydWN0IGNvZGFfb3Blbl9ieV9mZF9pbiBjb2RhX29wZW5fYnlfZmQ7CisgIHN0cnVjdCBjb2RhX29wZW5fYnlfcGF0aF9pbiBjb2RhX29wZW5fYnlfcGF0aDsKKyAgc3RydWN0IGNvZGFfc3RhdGZzX2luIGNvZGFfc3RhdGZzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9vcGVuX2J5X3BhdGhfaW4gY29kYV9vcGVuX2J5X3BhdGg7Ci0gc3RydWN0IGNvZGFfc3RhdGZzX2luIGNvZGFfc3RhdGZzOwogfTsKIHVuaW9uIG91dHB1dEFyZ3MgeworICBzdHJ1Y3QgY29kYV9vdXRfaGRyIG9oOworICBzdHJ1Y3QgY29kYV9yb290X291dCBjb2RhX3Jvb3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX291dF9oZHIgb2g7Ci0gc3RydWN0IGNvZGFfcm9vdF9vdXQgY29kYV9yb290OwotIHN0cnVjdCBjb2RhX29wZW5fb3V0IGNvZGFfb3BlbjsKLSBzdHJ1Y3QgY29kYV9pb2N0bF9vdXQgY29kYV9pb2N0bDsKKyAgc3RydWN0IGNvZGFfb3Blbl9vdXQgY29kYV9vcGVuOworICBzdHJ1Y3QgY29kYV9pb2N0bF9vdXQgY29kYV9pb2N0bDsKKyAgc3RydWN0IGNvZGFfZ2V0YXR0cl9vdXQgY29kYV9nZXRhdHRyOworICBzdHJ1Y3QgY29kYV9sb29rdXBfb3V0IGNvZGFfbG9va3VwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9nZXRhdHRyX291dCBjb2RhX2dldGF0dHI7Ci0gc3RydWN0IGNvZGFfbG9va3VwX291dCBjb2RhX2xvb2t1cDsKLSBzdHJ1Y3QgY29kYV9jcmVhdGVfb3V0IGNvZGFfY3JlYXRlOwotIHN0cnVjdCBjb2RhX21rZGlyX291dCBjb2RhX21rZGlyOworICBzdHJ1Y3QgY29kYV9jcmVhdGVfb3V0IGNvZGFfY3JlYXRlOworICBzdHJ1Y3QgY29kYV9ta2Rpcl9vdXQgY29kYV9ta2RpcjsKKyAgc3RydWN0IGNvZGFfcmVhZGxpbmtfb3V0IGNvZGFfcmVhZGxpbms7CisgIHN0cnVjdCBjb2RhX3ZnZXRfb3V0IGNvZGFfdmdldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfcmVhZGxpbmtfb3V0IGNvZGFfcmVhZGxpbms7Ci0gc3RydWN0IGNvZGFfdmdldF9vdXQgY29kYV92Z2V0OwotIHN0cnVjdCBjb2RhX3B1cmdldXNlcl9vdXQgY29kYV9wdXJnZXVzZXI7Ci0gc3RydWN0IGNvZGFfemFwZmlsZV9vdXQgY29kYV96YXBmaWxlOworICBzdHJ1Y3QgY29kYV9wdXJnZXVzZXJfb3V0IGNvZGFfcHVyZ2V1c2VyOworICBzdHJ1Y3QgY29kYV96YXBmaWxlX291dCBjb2RhX3phcGZpbGU7CisgIHN0cnVjdCBjb2RhX3phcGRpcl9vdXQgY29kYV96YXBkaXI7CisgIHN0cnVjdCBjb2RhX3B1cmdlZmlkX291dCBjb2RhX3B1cmdlZmlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV96YXBkaXJfb3V0IGNvZGFfemFwZGlyOwotIHN0cnVjdCBjb2RhX3B1cmdlZmlkX291dCBjb2RhX3B1cmdlZmlkOwotIHN0cnVjdCBjb2RhX3JlcGxhY2Vfb3V0IGNvZGFfcmVwbGFjZTsKLSBzdHJ1Y3QgY29kYV9vcGVuX2J5X2ZkX291dCBjb2RhX29wZW5fYnlfZmQ7CisgIHN0cnVjdCBjb2RhX3JlcGxhY2Vfb3V0IGNvZGFfcmVwbGFjZTsKKyAgc3RydWN0IGNvZGFfb3Blbl9ieV9mZF9vdXQgY29kYV9vcGVuX2J5X2ZkOworICBzdHJ1Y3QgY29kYV9vcGVuX2J5X3BhdGhfb3V0IGNvZGFfb3Blbl9ieV9wYXRoOworICBzdHJ1Y3QgY29kYV9zdGF0ZnNfb3V0IGNvZGFfc3RhdGZzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY29kYV9vcGVuX2J5X3BhdGhfb3V0IGNvZGFfb3Blbl9ieV9wYXRoOwotIHN0cnVjdCBjb2RhX3N0YXRmc19vdXQgY29kYV9zdGF0ZnM7CiB9OwogdW5pb24gY29kYV9kb3duY2FsbHMgeworICBzdHJ1Y3QgY29kYV9wdXJnZXVzZXJfb3V0IHB1cmdldXNlcjsKKyAgc3RydWN0IGNvZGFfemFwZmlsZV9vdXQgemFwZmlsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGNvZGFfcHVyZ2V1c2VyX291dCBwdXJnZXVzZXI7Ci0gc3RydWN0IGNvZGFfemFwZmlsZV9vdXQgemFwZmlsZTsKLSBzdHJ1Y3QgY29kYV96YXBkaXJfb3V0IHphcGRpcjsKLSBzdHJ1Y3QgY29kYV9wdXJnZWZpZF9vdXQgcHVyZ2VmaWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBjb2RhX3JlcGxhY2Vfb3V0IHJlcGxhY2U7CisgIHN0cnVjdCBjb2RhX3phcGRpcl9vdXQgemFwZGlyOworICBzdHJ1Y3QgY29kYV9wdXJnZWZpZF9vdXQgcHVyZ2VmaWQ7CisgIHN0cnVjdCBjb2RhX3JlcGxhY2Vfb3V0IHJlcGxhY2U7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUElPQ1BBUk1fTUFTSyAweDAwMDBmZmZmCiBzdHJ1Y3QgVmljZUlvY3RsIHsKKyAgdm9pZCBfX3VzZXIgKiBpbjsKKyAgdm9pZCBfX3VzZXIgKiBvdXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgX191c2VyICppbjsKLSB2b2lkIF9fdXNlciAqb3V0OwotIHVfc2hvcnQgaW5fc2l6ZTsKLSB1X3Nob3J0IG91dF9zaXplOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdV9zaG9ydCBpbl9zaXplOworICB1X3Nob3J0IG91dF9zaXplOwogfTsKIHN0cnVjdCBQaW9jdGxEYXRhIHsKLSBjb25zdCBjaGFyIF9fdXNlciAqcGF0aDsKLSBpbnQgZm9sbG93OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgVmljZUlvY3RsIHZpOworICBjb25zdCBjaGFyIF9fdXNlciAqIHBhdGg7CisgIGludCBmb2xsb3c7CisgIHN0cnVjdCBWaWNlSW9jdGwgdmk7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09EQV9DT05UUk9MICIuQ09OVFJPTCIKICNkZWZpbmUgQ09EQV9DT05UUk9MTEVOIDgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENUTF9JTk8gLTEKKyNkZWZpbmUgQ1RMX0lOTyAtIDEKICNkZWZpbmUgQ09EQV9NT1VOVF9WRVJTSU9OIDEKLXN0cnVjdCBjb2RhX21vdW50X2RhdGEgewotIGludCB2ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZmQ7CitzdHJ1Y3QgY29kYV9tb3VudF9kYXRhIHsKKyAgaW50IHZlcnNpb247CisgIGludCBmZDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NvZGFfcHNkZXYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29kYV9wc2Rldi5oCmluZGV4IDc5ZGEwNDIuLjZlNDYzMmYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29kYV9wc2Rldi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29kYV9wc2Rldi5oCkBAIC0yMywxNiArMjMsMTYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1BWF9DT0RBREVWUyA1CiBzdHJ1Y3QgdXBjX3JlcSB7Ci0gc3RydWN0IGxpc3RfaGVhZCB1Y19jaGFpbjsKLSBjYWRkcl90IHVjX2RhdGE7CisgIHN0cnVjdCBsaXN0X2hlYWQgdWNfY2hhaW47CisgIGNhZGRyX3QgdWNfZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdV9zaG9ydCB1Y19mbGFnczsKLSB1X3Nob3J0IHVjX2luU2l6ZTsKLSB1X3Nob3J0IHVjX291dFNpemU7Ci0gdV9zaG9ydCB1Y19vcGNvZGU7CisgIHVfc2hvcnQgdWNfZmxhZ3M7CisgIHVfc2hvcnQgdWNfaW5TaXplOworICB1X3Nob3J0IHVjX291dFNpemU7CisgIHVfc2hvcnQgdWNfb3Bjb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdWNfdW5pcXVlOwotIHdhaXRfcXVldWVfaGVhZF90IHVjX3NsZWVwOworICBpbnQgdWNfdW5pcXVlOworICB3YWl0X3F1ZXVlX2hlYWRfdCB1Y19zbGVlcDsKIH07CiAjZGVmaW5lIENPREFfUkVRX0FTWU5DIDB4MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29mZi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jb2ZmLmgKaW5kZXggY2RiYjhkOC4uODc2OTFkYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jb2ZmLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jb2ZmLmgKQEAgLTE5LDI0ICsxOSwyNCBAQAogI2RlZmluZSBFX1NZTU5NTEVOIDgKICNkZWZpbmUgRV9GSUxOTUxFTiAxNAogI2RlZmluZSBFX0RJTU5VTSA0Ci0jZGVmaW5lIENPRkZfU0hPUlRfTChwcykgKChzaG9ydCkoKCh1bnNpZ25lZCBzaG9ydCkoKHVuc2lnbmVkIGNoYXIpcHNbMV0pPDw4KXwgICgodW5zaWduZWQgc2hvcnQpKCh1bnNpZ25lZCBjaGFyKXBzWzBdKSkpKQorI2RlZmluZSBDT0ZGX1NIT1JUX0wocHMpICgoc2hvcnQpICgoKHVuc2lnbmVkIHNob3J0KSAoKHVuc2lnbmVkIGNoYXIpIHBzWzFdKSA8PCA4KSB8ICgodW5zaWduZWQgc2hvcnQpICgodW5zaWduZWQgY2hhcikgcHNbMF0pKSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDT0ZGX0xPTkdfTChwcykgKCgobG9uZykoKCh1bnNpZ25lZCBsb25nKSgodW5zaWduZWQgY2hhcilwc1szXSk8PDI0KSB8ICAoKHVuc2lnbmVkIGxvbmcpKCh1bnNpZ25lZCBjaGFyKXBzWzJdKTw8MTYpIHwgICgodW5zaWduZWQgbG9uZykoKHVuc2lnbmVkIGNoYXIpcHNbMV0pPDw4KSB8ICAoKHVuc2lnbmVkIGxvbmcpKCh1bnNpZ25lZCBjaGFyKXBzWzBdKSkpKSkKLSNkZWZpbmUgQ09GRl9TSE9SVF9IKHBzKSAoKHNob3J0KSgoKHVuc2lnbmVkIHNob3J0KSgodW5zaWduZWQgY2hhcilwc1swXSk8PDgpfCAgKCh1bnNpZ25lZCBzaG9ydCkoKHVuc2lnbmVkIGNoYXIpcHNbMV0pKSkpCi0jZGVmaW5lIENPRkZfTE9OR19IKHBzKSAoKChsb25nKSgoKHVuc2lnbmVkIGxvbmcpKCh1bnNpZ25lZCBjaGFyKXBzWzBdKTw8MjQpIHwgICgodW5zaWduZWQgbG9uZykoKHVuc2lnbmVkIGNoYXIpcHNbMV0pPDwxNikgfCAgKCh1bnNpZ25lZCBsb25nKSgodW5zaWduZWQgY2hhcilwc1syXSk8PDgpIHwgICgodW5zaWduZWQgbG9uZykoKHVuc2lnbmVkIGNoYXIpcHNbM10pKSkpKQorI2RlZmluZSBDT0ZGX0xPTkdfTChwcykgKCgobG9uZykgKCgodW5zaWduZWQgbG9uZykgKCh1bnNpZ25lZCBjaGFyKSBwc1szXSkgPDwgMjQpIHwgKCh1bnNpZ25lZCBsb25nKSAoKHVuc2lnbmVkIGNoYXIpIHBzWzJdKSA8PCAxNikgfCAoKHVuc2lnbmVkIGxvbmcpICgodW5zaWduZWQgY2hhcikgcHNbMV0pIDw8IDgpIHwgKCh1bnNpZ25lZCBsb25nKSAoKHVuc2lnbmVkIGNoYXIpIHBzWzBdKSkpKSkKKyNkZWZpbmUgQ09GRl9TSE9SVF9IKHBzKSAoKHNob3J0KSAoKCh1bnNpZ25lZCBzaG9ydCkgKCh1bnNpZ25lZCBjaGFyKSBwc1swXSkgPDwgOCkgfCAoKHVuc2lnbmVkIHNob3J0KSAoKHVuc2lnbmVkIGNoYXIpIHBzWzFdKSkpKQorI2RlZmluZSBDT0ZGX0xPTkdfSChwcykgKCgobG9uZykgKCgodW5zaWduZWQgbG9uZykgKCh1bnNpZ25lZCBjaGFyKSBwc1swXSkgPDwgMjQpIHwgKCh1bnNpZ25lZCBsb25nKSAoKHVuc2lnbmVkIGNoYXIpIHBzWzFdKSA8PCAxNikgfCAoKHVuc2lnbmVkIGxvbmcpICgodW5zaWduZWQgY2hhcikgcHNbMl0pIDw8IDgpIHwgKCh1bnNpZ25lZCBsb25nKSAoKHVuc2lnbmVkIGNoYXIpIHBzWzNdKSkpKSkKICNkZWZpbmUgQ09GRl9MT05HKHYpIENPRkZfTE9OR19MKHYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX1NIT1JUKHYpIENPRkZfU0hPUlRfTCh2KQogc3RydWN0IENPRkZfZmlsZWhkciB7Ci0gY2hhciBmX21hZ2ljWzJdOwotIGNoYXIgZl9uc2Nuc1syXTsKKyAgY2hhciBmX21hZ2ljWzJdOworICBjaGFyIGZfbnNjbnNbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgZl90aW1kYXRbNF07Ci0gY2hhciBmX3N5bXB0cls0XTsKLSBjaGFyIGZfbnN5bXNbNF07Ci0gY2hhciBmX29wdGhkclsyXTsKKyAgY2hhciBmX3RpbWRhdFs0XTsKKyAgY2hhciBmX3N5bXB0cls0XTsKKyAgY2hhciBmX25zeW1zWzRdOworICBjaGFyIGZfb3B0aGRyWzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGZfZmxhZ3NbMl07CisgIGNoYXIgZl9mbGFnc1syXTsKIH07CiAjZGVmaW5lIENPRkZfRl9SRUxGTEcgMDAwMDAwMQogI2RlZmluZSBDT0ZGX0ZfRVhFQyAwMDAwMDAyCkBAIC01OCwxODYgKzU4LDE4MiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9GSUxIRFIgc3RydWN0IENPRkZfZmlsZWhkcgogI2RlZmluZSBDT0ZGX0ZJTEhTWiBzaXplb2YoQ09GRl9GSUxIRFIpCi10eXBlZGVmIHN0cnVjdAotewordHlwZWRlZiBzdHJ1Y3QgeworICBjaGFyIG1hZ2ljWzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG1hZ2ljWzJdOwotIGNoYXIgdnN0YW1wWzJdOwotIGNoYXIgdHNpemVbNF07Ci0gY2hhciBkc2l6ZVs0XTsKKyAgY2hhciB2c3RhbXBbMl07CisgIGNoYXIgdHNpemVbNF07CisgIGNoYXIgZHNpemVbNF07CisgIGNoYXIgYnNpemVbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgYnNpemVbNF07Ci0gY2hhciBlbnRyeVs0XTsKLSBjaGFyIHRleHRfc3RhcnRbNF07Ci0gY2hhciBkYXRhX3N0YXJ0WzRdOworICBjaGFyIGVudHJ5WzRdOworICBjaGFyIHRleHRfc3RhcnRbNF07CisgIGNoYXIgZGF0YV9zdGFydFs0XTsKK30gQ09GRl9BT1VUSERSOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX0KLUNPRkZfQU9VVEhEUjsKICNkZWZpbmUgQ09GRl9BT1VUU1ogKHNpemVvZihDT0ZGX0FPVVRIRFIpKQogI2RlZmluZSBDT0ZGX1NUTUFHSUMgMDQwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9PTUFHSUMgMDQwNAogI2RlZmluZSBDT0ZGX0pNQUdJQyAwNDA3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX0RNQUdJQyAwNDEwCiAjZGVmaW5lIENPRkZfWk1BR0lDIDA0MTMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPRkZfU0hNQUdJQyAwNDQzCiBzdHJ1Y3QgQ09GRl9zY25oZHIgewotIGNoYXIgc19uYW1lWzhdOwotIGNoYXIgc19wYWRkcls0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBzX3ZhZGRyWzRdOwotIGNoYXIgc19zaXplWzRdOwotIGNoYXIgc19zY25wdHJbNF07Ci0gY2hhciBzX3JlbHB0cls0XTsKKyAgY2hhciBzX25hbWVbOF07CisgIGNoYXIgc19wYWRkcls0XTsKKyAgY2hhciBzX3ZhZGRyWzRdOworICBjaGFyIHNfc2l6ZVs0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBzX2xubm9wdHJbNF07Ci0gY2hhciBzX25yZWxvY1syXTsKLSBjaGFyIHNfbmxubm9bMl07Ci0gY2hhciBzX2ZsYWdzWzRdOworICBjaGFyIHNfc2NucHRyWzRdOworICBjaGFyIHNfcmVscHRyWzRdOworICBjaGFyIHNfbG5ub3B0cls0XTsKKyAgY2hhciBzX25yZWxvY1syXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGNoYXIgc19ubG5ub1syXTsKKyAgY2hhciBzX2ZsYWdzWzRdOwogfTsKICNkZWZpbmUgQ09GRl9TQ05IRFIgc3RydWN0IENPRkZfc2NuaGRyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX1NDTkhTWiBzaXplb2YoQ09GRl9TQ05IRFIpCiAjZGVmaW5lIENPRkZfVEVYVCAiLnRleHQiCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX0RBVEEgIi5kYXRhIgogI2RlZmluZSBDT0ZGX0JTUyAiLmJzcyIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPRkZfQ09NTUVOVCAiLmNvbW1lbnQiCiAjZGVmaW5lIENPRkZfTElCICIubGliIgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9TRUNUX1RFWFQgMAogI2RlZmluZSBDT0ZGX1NFQ1RfREFUQSAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX1NFQ1RfQlNTIDIKICNkZWZpbmUgQ09GRl9TRUNUX1JFUUQgMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9TVFlQX1JFRyAweDAwCiAjZGVmaW5lIENPRkZfU1RZUF9EU0VDVCAweDAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX1NUWVBfTk9MT0FEIDB4MDIKICNkZWZpbmUgQ09GRl9TVFlQX0dST1VQIDB4MDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPRkZfU1RZUF9QQUQgMHgwOAogI2RlZmluZSBDT0ZGX1NUWVBfQ09QWSAweDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX1NUWVBfVEVYVCAweDIwCiAjZGVmaW5lIENPRkZfU1RZUF9EQVRBIDB4NDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENPRkZfU1RZUF9CU1MgMHg4MAogI2RlZmluZSBDT0ZGX1NUWVBfSU5GTyAweDIwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ09GRl9TVFlQX09WRVIgMHg0MDAKICNkZWZpbmUgQ09GRl9TVFlQX0xJQiAweDgwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBDT0ZGX3NsaWIgewotIGNoYXIgc2xfZW50c3pbNF07Ci0gY2hhciBzbF9wYXRobmR4WzRdOwotfTsKKyAgY2hhciBzbF9lbnRzels0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGNoYXIgc2xfcGF0aG5keFs0XTsKK307CiAjZGVmaW5lIENPRkZfU0xJQkhEIHN0cnVjdCBDT0ZGX3NsaWIKICNkZWZpbmUgQ09GRl9TTElCU1ogc2l6ZW9mKENPRkZfU0xJQkhEKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBDT0ZGX2xpbmVubyB7Ci0gdW5pb24geworICB1bmlvbiB7CisgICAgY2hhciBsX3N5bW5keFs0XTsKKyAgICBjaGFyIGxfcGFkZHJbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbF9zeW1uZHhbNF07Ci0gY2hhciBsX3BhZGRyWzRdOwotIH0gbF9hZGRyOwotIGNoYXIgbF9sbm5vWzJdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgfSBsX2FkZHI7CisgIGNoYXIgbF9sbm5vWzJdOwogfTsKICNkZWZpbmUgQ09GRl9MSU5FTk8gc3RydWN0IENPRkZfbGluZW5vCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX0xJTkVTWiA2CiAjZGVmaW5lIENPRkZfRV9TWU1OTUxFTiA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX0VfRklMTk1MRU4gMTQKICNkZWZpbmUgQ09GRl9FX0RJTU5VTSA0Ci1zdHJ1Y3QgQ09GRl9zeW1lbnQKLXsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIGNoYXIgZV9uYW1lW0VfU1lNTk1MRU5dOwotIHN0cnVjdCB7Ci0gY2hhciBlX3plcm9lc1s0XTsKK3N0cnVjdCBDT0ZGX3N5bWVudCB7CisgIHVuaW9uIHsKKyAgICBjaGFyIGVfbmFtZVtFX1NZTU5NTEVOXTsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGVfb2Zmc2V0WzRdOwotIH0gZTsKLSB9IGU7Ci0gY2hhciBlX3ZhbHVlWzRdOworICAgICAgY2hhciBlX3plcm9lc1s0XTsKKyAgICAgIGNoYXIgZV9vZmZzZXRbNF07CisgICAgfSBlOworICB9IGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgZV9zY251bVsyXTsKLSBjaGFyIGVfdHlwZVsyXTsKLSBjaGFyIGVfc2NsYXNzWzFdOwotIGNoYXIgZV9udW1hdXhbMV07CisgIGNoYXIgZV92YWx1ZVs0XTsKKyAgY2hhciBlX3NjbnVtWzJdOworICBjaGFyIGVfdHlwZVsyXTsKKyAgY2hhciBlX3NjbGFzc1sxXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGNoYXIgZV9udW1hdXhbMV07CiB9OwogI2RlZmluZSBDT0ZGX05fQlRNQVNLICgweGYpCiAjZGVmaW5lIENPRkZfTl9UTUFTSyAoMHgzMCkKLSNkZWZpbmUgQ09GRl9OX0JUU0hGVCAoNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIENPRkZfTl9CVFNIRlQgKDQpCiAjZGVmaW5lIENPRkZfTl9UU0hJRlQgKDIpCiB1bmlvbiBDT0ZGX2F1eGVudCB7Ci0gc3RydWN0IHsKLSBjaGFyIHhfdGFnbmR4WzRdOworICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IHsKLSBjaGFyIHhfbG5ub1syXTsKLSBjaGFyIHhfc2l6ZVsyXTsKKyAgICBjaGFyIHhfdGFnbmR4WzRdOworICAgIHVuaW9uIHsKKyAgICAgIHN0cnVjdCB7CisgICAgICAgIGNoYXIgeF9sbm5vWzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHhfbG5zejsKLSBjaGFyIHhfZnNpemVbNF07Ci0gfSB4X21pc2M7Ci0gdW5pb24geworICAgICAgICBjaGFyIHhfc2l6ZVsyXTsKKyAgICAgIH0geF9sbnN6OworICAgICAgY2hhciB4X2ZzaXplWzRdOworICAgIH0geF9taXNjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIGNoYXIgeF9sbm5vcHRyWzRdOwotIGNoYXIgeF9lbmRuZHhbNF07Ci0gfSB4X2ZjbjsKKyAgICB1bmlvbiB7CisgICAgICBzdHJ1Y3QgeworICAgICAgICBjaGFyIHhfbG5ub3B0cls0XTsKKyAgICAgICAgY2hhciB4X2VuZG5keFs0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBjaGFyIHhfZGltZW5bRV9ESU1OVU1dWzJdOwotIH0geF9hcnk7Ci0gfSB4X2ZjbmFyeTsKKyAgICAgIH0geF9mY247CisgICAgICBzdHJ1Y3QgeworICAgICAgICBjaGFyIHhfZGltZW5bRV9ESU1OVU1dWzJdOworICAgICAgfSB4X2FyeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciB4X3R2bmR4WzJdOwotIH0geF9zeW07Ci0gdW5pb24gewotIGNoYXIgeF9mbmFtZVtFX0ZJTE5NTEVOXTsKKyAgICB9IHhfZmNuYXJ5OworICAgIGNoYXIgeF90dm5keFsyXTsKKyAgfSB4X3N5bTsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIGNoYXIgeF96ZXJvZXNbNF07Ci0gY2hhciB4X29mZnNldFs0XTsKLSB9IHhfbjsKKyAgICBjaGFyIHhfZm5hbWVbRV9GSUxOTUxFTl07CisgICAgc3RydWN0IHsKKyAgICAgIGNoYXIgeF96ZXJvZXNbNF07CisgICAgICBjaGFyIHhfb2Zmc2V0WzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHhfZmlsZTsKLSBzdHJ1Y3QgewotIGNoYXIgeF9zY25sZW5bNF07Ci0gY2hhciB4X25yZWxvY1syXTsKKyAgICB9IHhfbjsKKyAgfSB4X2ZpbGU7CisgIHN0cnVjdCB7CisgICAgY2hhciB4X3Njbmxlbls0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciB4X25saW5ub1syXTsKLSB9IHhfc2NuOwotIHN0cnVjdCB7Ci0gY2hhciB4X3R2ZmlsbFs0XTsKKyAgICBjaGFyIHhfbnJlbG9jWzJdOworICAgIGNoYXIgeF9ubGlubm9bMl07CisgIH0geF9zY247CisgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgeF90dmxlblsyXTsKLSBjaGFyIHhfdHZyYW5bMl1bMl07Ci0gfSB4X3R2OworICAgIGNoYXIgeF90dmZpbGxbNF07CisgICAgY2hhciB4X3R2bGVuWzJdOworICAgIGNoYXIgeF90dnJhblsyXVsyXTsKKyAgfSB4X3R2OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDT0ZGX1NZTUVOVCBzdHJ1Y3QgQ09GRl9zeW1lbnQKICNkZWZpbmUgQ09GRl9TWU1FU1ogMTgKICNkZWZpbmUgQ09GRl9BVVhFTlQgdW5pb24gQ09GRl9hdXhlbnQKLSNkZWZpbmUgQ09GRl9BVVhFU1ogMTgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIENPRkZfQVVYRVNaIDE4CiAjZGVmaW5lIENPRkZfRVRFWFQgImV0ZXh0Igogc3RydWN0IENPRkZfcmVsb2MgewotIGNoYXIgcl92YWRkcls0XTsKLSBjaGFyIHJfc3ltbmR4WzRdOworICBjaGFyIHJfdmFkZHJbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcl90eXBlWzJdOworICBjaGFyIHJfc3ltbmR4WzRdOworICBjaGFyIHJfdHlwZVsyXTsKIH07CiAjZGVmaW5lIENPRkZfUkVMT0Mgc3RydWN0IENPRkZfcmVsb2MKLSNkZWZpbmUgQ09GRl9SRUxTWiAxMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQ09GRl9SRUxTWiAxMAogI2RlZmluZSBDT0ZGX0RFRl9EQVRBX1NFQ1RJT05fQUxJR05NRU5UIDQKICNkZWZpbmUgQ09GRl9ERUZfQlNTX1NFQ1RJT05fQUxJR05NRU5UIDQKICNkZWZpbmUgQ09GRl9ERUZfVEVYVF9TRUNUSU9OX0FMSUdOTUVOVCA0Ci0jZGVmaW5lIENPRkZfREVGX1NFQ1RJT05fQUxJR05NRU5UIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIENPRkZfREVGX1NFQ1RJT05fQUxJR05NRU5UIDQKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29ubmVjdG9yLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Nvbm5lY3Rvci5oCmluZGV4IGNiNWU5ZTYuLmI5YzQ3OGIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29ubmVjdG9yLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jb25uZWN0b3IuaApAQCAtNDcsMTggKzQ3LDE4IEBACiAjZGVmaW5lIENPTk5FQ1RPUl9NQVhfTVNHX1NJWkUgMTYzODQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY2JfaWQgewotIF9fdTMyIGlkeDsKLSBfX3UzMiB2YWw7CisgIF9fdTMyIGlkeDsKKyAgX191MzIgdmFsOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY25fbXNnIHsKLSBzdHJ1Y3QgY2JfaWQgaWQ7Ci0gX191MzIgc2VxOwotIF9fdTMyIGFjazsKKyAgc3RydWN0IGNiX2lkIGlkOworICBfX3UzMiBzZXE7CisgIF9fdTMyIGFjazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbGVuOwotIF9fdTE2IGZsYWdzOwotIF9fdTggZGF0YVswXTsKKyAgX191MTYgbGVuOworICBfX3UxNiBmbGFnczsKKyAgX191OCBkYXRhWzBdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29uc3QuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY29uc3QuaAppbmRleCA5YTg1YmU3Li4yNTQzNWVkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NvbnN0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jb25zdC5oCkBAIC0yMywxMiArMjMsMTIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9BVChULFgpIFgKICNlbHNlCi0jZGVmaW5lIF9fQUMoWCxZKSAoWCMjWSkKLSNkZWZpbmUgX0FDKFgsWSkgX19BQyhYLFkpCisjZGVmaW5lIF9fQUMoWCxZKSAoWCAjI1kpCisjZGVmaW5lIF9BQyhYLFkpIF9fQUMoWCwgWSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9BVChULFgpICgoVCkoWCkpCisjZGVmaW5lIF9BVChULFgpICgoVCkgKFgpKQogI2VuZGlmCi0jZGVmaW5lIF9CSVRVTCh4KSAoX0FDKDEsVUwpIDw8ICh4KSkKLSNkZWZpbmUgX0JJVFVMTCh4KSAoX0FDKDEsVUxMKSA8PCAoeCkpCisjZGVmaW5lIF9CSVRVTCh4KSAoX0FDKDEsIFVMKSA8PCAoeCkpCisjZGVmaW5lIF9CSVRVTEwoeCkgKF9BQygxLCBVTEwpIDw8ICh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY3JhbWZzX2ZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2NyYW1mc19mcy5oCmluZGV4IDgwNzAzY2MuLjk3MGM0NGIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY3JhbWZzX2ZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jcmFtZnNfZnMuaApAQCAtMzIsMjkgKzMyLDI5IEBACiAjZGVmaW5lIENSQU1GU19NQVhQQVRITEVOICgoKDEgPDwgQ1JBTUZTX05BTUVMRU5fV0lEVEgpIC0gMSkgPDwgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY3JhbWZzX2lub2RlIHsKLSBfX3UzMiBtb2RlOkNSQU1GU19NT0RFX1dJRFRILCB1aWQ6Q1JBTUZTX1VJRF9XSURUSDsKLSBfX3UzMiBzaXplOkNSQU1GU19TSVpFX1dJRFRILCBnaWQ6Q1JBTUZTX0dJRF9XSURUSDsKLSBfX3UzMiBuYW1lbGVuOkNSQU1GU19OQU1FTEVOX1dJRFRILCBvZmZzZXQ6Q1JBTUZTX09GRlNFVF9XSURUSDsKKyAgX191MzIgbW9kZSA6IENSQU1GU19NT0RFX1dJRFRILCB1aWQgOiBDUkFNRlNfVUlEX1dJRFRIOworICBfX3UzMiBzaXplIDogQ1JBTUZTX1NJWkVfV0lEVEgsIGdpZCA6IENSQU1GU19HSURfV0lEVEg7CisgIF9fdTMyIG5hbWVsZW4gOiBDUkFNRlNfTkFNRUxFTl9XSURUSCwgb2Zmc2V0IDogQ1JBTUZTX09GRlNFVF9XSURUSDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGNyYW1mc19pbmZvIHsKLSBfX3UzMiBjcmM7Ci0gX191MzIgZWRpdGlvbjsKKyAgX191MzIgY3JjOworICBfX3UzMiBlZGl0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBibG9ja3M7Ci0gX191MzIgZmlsZXM7CisgIF9fdTMyIGJsb2NrczsKKyAgX191MzIgZmlsZXM7CiB9Owogc3RydWN0IGNyYW1mc19zdXBlciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1hZ2ljOwotIF9fdTMyIHNpemU7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgZnV0dXJlOworICBfX3UzMiBtYWdpYzsKKyAgX191MzIgc2l6ZTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIGZ1dHVyZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzaWduYXR1cmVbMTZdOwotIHN0cnVjdCBjcmFtZnNfaW5mbyBmc2lkOwotIF9fdTggbmFtZVsxNl07Ci0gc3RydWN0IGNyYW1mc19pbm9kZSByb290OworICBfX3U4IHNpZ25hdHVyZVsxNl07CisgIHN0cnVjdCBjcmFtZnNfaW5mbyBmc2lkOworICBfX3U4IG5hbWVbMTZdOworICBzdHJ1Y3QgY3JhbWZzX2lub2RlIHJvb3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQ1JBTUZTX0ZMQUdfRlNJRF9WRVJTSU9OXzIgMHgwMDAwMDAwMQpAQCAtNjMsNiArNjMsNiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1JBTUZTX0ZMQUdfV1JPTkdfU0lHTkFUVVJFIDB4MDAwMDAyMDAKICNkZWZpbmUgQ1JBTUZTX0ZMQUdfU0hJRlRFRF9ST09UX09GRlNFVCAweDAwMDAwNDAwCi0jZGVmaW5lIENSQU1GU19TVVBQT1JURURfRkxBR1MgKCAweDAwMDAwMGZmICAgfCBDUkFNRlNfRkxBR19IT0xFUyAgIHwgQ1JBTUZTX0ZMQUdfV1JPTkdfU0lHTkFUVVJFICAgfCBDUkFNRlNfRkxBR19TSElGVEVEX1JPT1RfT0ZGU0VUICkKKyNkZWZpbmUgQ1JBTUZTX1NVUFBPUlRFRF9GTEFHUyAoMHgwMDAwMDBmZiB8IENSQU1GU19GTEFHX0hPTEVTIHwgQ1JBTUZTX0ZMQUdfV1JPTkdfU0lHTkFUVVJFIHwgQ1JBTUZTX0ZMQUdfU0hJRlRFRF9ST09UX09GRlNFVCkKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY3ljbGFkZXMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvY3ljbGFkZXMuaAppbmRleCA1NWM3NDVlLi43MDEyZmQwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2N5Y2xhZGVzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jeWNsYWRlcy5oCkBAIC0yMSwyMyArMjEsMjMgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGN5Y2xhZGVzX21vbml0b3IgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGludF9jb3VudDsKLSB1bnNpZ25lZCBsb25nIGNoYXJfY291bnQ7Ci0gdW5zaWduZWQgbG9uZyBjaGFyX21heDsKLSB1bnNpZ25lZCBsb25nIGNoYXJfbGFzdDsKKyAgdW5zaWduZWQgbG9uZyBpbnRfY291bnQ7CisgIHVuc2lnbmVkIGxvbmcgY2hhcl9jb3VudDsKKyAgdW5zaWduZWQgbG9uZyBjaGFyX21heDsKKyAgdW5zaWduZWQgbG9uZyBjaGFyX2xhc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBjeWNsYWRlc19pZGxlX3N0YXRzIHsKLSBfX2tlcm5lbF90aW1lX3QgaW5fdXNlOwotIF9fa2VybmVsX3RpbWVfdCByZWN2X2lkbGU7CisgIF9fa2VybmVsX3RpbWVfdCBpbl91c2U7CisgIF9fa2VybmVsX3RpbWVfdCByZWN2X2lkbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3RpbWVfdCB4bWl0X2lkbGU7Ci0gdW5zaWduZWQgbG9uZyByZWN2X2J5dGVzOwotIHVuc2lnbmVkIGxvbmcgeG1pdF9ieXRlczsKLSB1bnNpZ25lZCBsb25nIG92ZXJydW5zOworICBfX2tlcm5lbF90aW1lX3QgeG1pdF9pZGxlOworICB1bnNpZ25lZCBsb25nIHJlY3ZfYnl0ZXM7CisgIHVuc2lnbmVkIGxvbmcgeG1pdF9ieXRlczsKKyAgdW5zaWduZWQgbG9uZyBvdmVycnVuczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBmcmFtZV9lcnJzOwotIHVuc2lnbmVkIGxvbmcgcGFyaXR5X2VycnM7CisgIHVuc2lnbmVkIGxvbmcgZnJhbWVfZXJyczsKKyAgdW5zaWduZWQgbG9uZyBwYXJpdHlfZXJyczsKIH07CiAjZGVmaW5lIENZQ0xBREVTX01BR0lDIDB4NDM1OQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTY0LDE0ICs2NCwxNCBAQAogI2RlZmluZSBDWVNFVFdBSVQgMHg0MzU5MTIKICNkZWZpbmUgQ1lHRVRXQUlUIDB4NDM1OTEzCiAjZGVmaW5lIENaSU9DICgnTScgPDwgOCkKLSNkZWZpbmUgQ1pfTkJPQVJEUyAoQ1pJT0N8MHhmYSkKKyNkZWZpbmUgQ1pfTkJPQVJEUyAoQ1pJT0MgfCAweGZhKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ1pfQk9PVF9TVEFSVCAoQ1pJT0N8MHhmYikKLSNkZWZpbmUgQ1pfQk9PVF9EQVRBIChDWklPQ3wweGZjKQotI2RlZmluZSBDWl9CT09UX0VORCAoQ1pJT0N8MHhmZCkKLSNkZWZpbmUgQ1pfVEVTVCAoQ1pJT0N8MHhmZSkKKyNkZWZpbmUgQ1pfQk9PVF9TVEFSVCAoQ1pJT0MgfCAweGZiKQorI2RlZmluZSBDWl9CT09UX0RBVEEgKENaSU9DIHwgMHhmYykKKyNkZWZpbmUgQ1pfQk9PVF9FTkQgKENaSU9DIHwgMHhmZCkKKyNkZWZpbmUgQ1pfVEVTVCAoQ1pJT0MgfCAweGZlKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ1pfREVGX1BPTEwgKEhaLzI1KQorI2RlZmluZSBDWl9ERUZfUE9MTCAoSFogLyAyNSkKICNkZWZpbmUgTUFYX0JPQVJEIDQKICNkZWZpbmUgTUFYX0RFViAyNTYKICNkZWZpbmUgQ1laX01BWF9TUEVFRCA5MjE2MDAKQEAgLTc5LDE0ICs3OSwxNCBAQAogI2RlZmluZSBDWVpfRklGT19TSVpFIDE2CiAjZGVmaW5lIENZWl9CT09UX05XT1JEUyAweDEwMAogc3RydWN0IENZWl9CT09UX0NUUkwgewotIHVuc2lnbmVkIHNob3J0IG5ib2FyZDsKKyAgdW5zaWduZWQgc2hvcnQgbmJvYXJkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc3RhdHVzW01BWF9CT0FSRF07Ci0gaW50IG5jaGFubmVsW01BWF9CT0FSRF07Ci0gaW50IGZ3X3JldltNQVhfQk9BUkRdOwotIHVuc2lnbmVkIGxvbmcgb2Zmc2V0OworICBpbnQgc3RhdHVzW01BWF9CT0FSRF07CisgIGludCBuY2hhbm5lbFtNQVhfQk9BUkRdOworICBpbnQgZndfcmV2W01BWF9CT0FSRF07CisgIHVuc2lnbmVkIGxvbmcgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGRhdGFbQ1laX0JPT1RfTldPUkRTXTsKKyAgdW5zaWduZWQgbG9uZyBkYXRhW0NZWl9CT09UX05XT1JEU107CiB9OwogI2lmbmRlZiBEUF9XSU5ET1dfU0laRQogI2RlZmluZSBEUF9XSU5ET1dfU0laRSAoMHgwMDA4MDAwMCkKQEAgLTk0LDY2ICs5NCw2NiBAQAogI2RlZmluZSBaRV9EUF9XSU5ET1dfU0laRSAoMHgwMDEwMDAwMCkKICNkZWZpbmUgQ1RSTF9XSU5ET1dfU0laRSAoMHgwMDAwMDA4MCkKIHN0cnVjdCBDVVNUT01fUkVHIHsKLSBfX3UzMiBmcGdhX2lkOworICBfX3UzMiBmcGdhX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmcGdhX3ZlcnNpb247Ci0gX191MzIgY3B1X3N0YXJ0OwotIF9fdTMyIGNwdV9zdG9wOwotIF9fdTMyIG1pc2NfcmVnOworICBfX3UzMiBmcGdhX3ZlcnNpb247CisgIF9fdTMyIGNwdV9zdGFydDsKKyAgX191MzIgY3B1X3N0b3A7CisgIF9fdTMyIG1pc2NfcmVnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZHRfbW9kZTsKLSBfX3UzMiB1YXJ0X2lycV9zdGF0dXM7Ci0gX191MzIgY2xlYXJfdGltZXIwX2lycTsKLSBfX3UzMiBjbGVhcl90aW1lcjFfaXJxOworICBfX3UzMiBpZHRfbW9kZTsKKyAgX191MzIgdWFydF9pcnFfc3RhdHVzOworICBfX3UzMiBjbGVhcl90aW1lcjBfaXJxOworICBfX3UzMiBjbGVhcl90aW1lcjFfaXJxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjbGVhcl90aW1lcjJfaXJxOwotIF9fdTMyIHRlc3RfcmVnaXN0ZXI7Ci0gX191MzIgdGVzdF9jb3VudDsKLSBfX3UzMiB0aW1lcl9zZWxlY3Q7CisgIF9fdTMyIGNsZWFyX3RpbWVyMl9pcnE7CisgIF9fdTMyIHRlc3RfcmVnaXN0ZXI7CisgIF9fdTMyIHRlc3RfY291bnQ7CisgIF9fdTMyIHRpbWVyX3NlbGVjdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcHJfdWFydF9pcnFfc3RhdHVzOwotIF9fdTMyIHJhbV93YWl0X3N0YXRlOwotIF9fdTMyIHVhcnRfd2FpdF9zdGF0ZTsKLSBfX3UzMiB0aW1lcl93YWl0X3N0YXRlOworICBfX3UzMiBwcl91YXJ0X2lycV9zdGF0dXM7CisgIF9fdTMyIHJhbV93YWl0X3N0YXRlOworICBfX3UzMiB1YXJ0X3dhaXRfc3RhdGU7CisgIF9fdTMyIHRpbWVyX3dhaXRfc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGFja193YWl0X3N0YXRlOworICBfX3UzMiBhY2tfd2FpdF9zdGF0ZTsKIH07CiBzdHJ1Y3QgUlVOVElNRV85MDYwIHsKLSBfX3UzMiBsb2NfYWRkcl9yYW5nZTsKKyAgX191MzIgbG9jX2FkZHJfcmFuZ2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxvY19hZGRyX2Jhc2U7Ci0gX191MzIgbG9jX2FyYml0cjsKLSBfX3UzMiBlbmRpYW5fZGVzY3I7Ci0gX191MzIgbG9jX3JvbV9yYW5nZTsKKyAgX191MzIgbG9jX2FkZHJfYmFzZTsKKyAgX191MzIgbG9jX2FyYml0cjsKKyAgX191MzIgZW5kaWFuX2Rlc2NyOworICBfX3UzMiBsb2Nfcm9tX3JhbmdlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsb2Nfcm9tX2Jhc2U7Ci0gX191MzIgbG9jX2J1c19kZXNjcjsKLSBfX3UzMiBsb2NfcmFuZ2VfbXN0OwotIF9fdTMyIGxvY19iYXNlX21zdDsKKyAgX191MzIgbG9jX3JvbV9iYXNlOworICBfX3UzMiBsb2NfYnVzX2Rlc2NyOworICBfX3UzMiBsb2NfcmFuZ2VfbXN0OworICBfX3UzMiBsb2NfYmFzZV9tc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxvY19yYW5nZV9pbzsKLSBfX3UzMiBwY2lfYmFzZV9tc3Q7Ci0gX191MzIgcGNpX2NvbmZfaW87Ci0gX191MzIgZmlsbGVyMTsKKyAgX191MzIgbG9jX3JhbmdlX2lvOworICBfX3UzMiBwY2lfYmFzZV9tc3Q7CisgIF9fdTMyIHBjaV9jb25mX2lvOworICBfX3UzMiBmaWxsZXIxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmaWxsZXIyOwotIF9fdTMyIGZpbGxlcjM7Ci0gX191MzIgZmlsbGVyNDsKLSBfX3UzMiBtYWlsX2JveF8wOworICBfX3UzMiBmaWxsZXIyOworICBfX3UzMiBmaWxsZXIzOworICBfX3UzMiBmaWxsZXI0OworICBfX3UzMiBtYWlsX2JveF8wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYWlsX2JveF8xOwotIF9fdTMyIG1haWxfYm94XzI7Ci0gX191MzIgbWFpbF9ib3hfMzsKLSBfX3UzMiBmaWxsZXI1OworICBfX3UzMiBtYWlsX2JveF8xOworICBfX3UzMiBtYWlsX2JveF8yOworICBfX3UzMiBtYWlsX2JveF8zOworICBfX3UzMiBmaWxsZXI1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmaWxsZXI2OwotIF9fdTMyIGZpbGxlcjc7Ci0gX191MzIgZmlsbGVyODsKLSBfX3UzMiBwY2lfZG9vcmJlbGw7CisgIF9fdTMyIGZpbGxlcjY7CisgIF9fdTMyIGZpbGxlcjc7CisgIF9fdTMyIGZpbGxlcjg7CisgIF9fdTMyIHBjaV9kb29yYmVsbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbG9jX2Rvb3JiZWxsOwotIF9fdTMyIGludHJfY3RybF9zdGF0OwotIF9fdTMyIGluaXRfY3RybDsKKyAgX191MzIgbG9jX2Rvb3JiZWxsOworICBfX3UzMiBpbnRyX2N0cmxfc3RhdDsKKyAgX191MzIgaW5pdF9jdHJsOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFdJTl9SQU0gMHgwMDAwMDAwMUwKQEAgLTE3Niw4ICsxNzYsOCBAQAogI2RlZmluZSBaRl9USU5BQ1QgWkZfVElOQUNUX0RFRgogc3RydWN0IEZJUk1fSUQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzaWduYXR1cmU7Ci0gX191MzIgemZ3Y3RybF9hZGRyOworICBfX3UzMiBzaWduYXR1cmU7CisgIF9fdTMyIHpmd2N0cmxfYWRkcjsKIH07CiAjZGVmaW5lIENfT1NfTElOVVggMHgwMDAwMDAzMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTI5OSw3OSArMjk5LDc5IEBACiAjZGVmaW5lIENfQ01fRkFUQUwgMHg5MQogI2RlZmluZSBDX0NNX0hXX1JFU0VUIDB4OTIKIHN0cnVjdCBDSF9DVFJMIHsKLSBfX3UzMiBvcF9tb2RlOworICBfX3UzMiBvcF9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbnRyX2VuYWJsZTsKLSBfX3UzMiBzd19mbG93OwotIF9fdTMyIGZsb3dfc3RhdHVzOwotIF9fdTMyIGNvbW1fYmF1ZDsKKyAgX191MzIgaW50cl9lbmFibGU7CisgIF9fdTMyIHN3X2Zsb3c7CisgIF9fdTMyIGZsb3dfc3RhdHVzOworICBfX3UzMiBjb21tX2JhdWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNvbW1fcGFyaXR5OwotIF9fdTMyIGNvbW1fZGF0YV9sOwotIF9fdTMyIGNvbW1fZmxhZ3M7Ci0gX191MzIgaHdfZmxvdzsKKyAgX191MzIgY29tbV9wYXJpdHk7CisgIF9fdTMyIGNvbW1fZGF0YV9sOworICBfX3UzMiBjb21tX2ZsYWdzOworICBfX3UzMiBod19mbG93OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByc19jb250cm9sOwotIF9fdTMyIHJzX3N0YXR1czsKLSBfX3UzMiBmbG93X3hvbjsKLSBfX3UzMiBmbG93X3hvZmY7CisgIF9fdTMyIHJzX2NvbnRyb2w7CisgIF9fdTMyIHJzX3N0YXR1czsKKyAgX191MzIgZmxvd194b247CisgIF9fdTMyIGZsb3dfeG9mZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaHdfb3ZlcmZsb3c7Ci0gX191MzIgc3dfb3ZlcmZsb3c7Ci0gX191MzIgY29tbV9lcnJvcjsKLSBfX3UzMiBpY2hhcjsKKyAgX191MzIgaHdfb3ZlcmZsb3c7CisgIF9fdTMyIHN3X292ZXJmbG93OworICBfX3UzMiBjb21tX2Vycm9yOworICBfX3UzMiBpY2hhcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmlsbGVyWzddOworICBfX3UzMiBmaWxsZXJbN107CiB9Owogc3RydWN0IEJVRl9DVFJMIHsKLSBfX3UzMiBmbGFnX2RtYTsKKyAgX191MzIgZmxhZ19kbWE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR4X2J1ZmFkZHI7Ci0gX191MzIgdHhfYnVmc2l6ZTsKLSBfX3UzMiB0eF90aHJlc2hvbGQ7Ci0gX191MzIgdHhfZ2V0OworICBfX3UzMiB0eF9idWZhZGRyOworICBfX3UzMiB0eF9idWZzaXplOworICBfX3UzMiB0eF90aHJlc2hvbGQ7CisgIF9fdTMyIHR4X2dldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHhfcHV0OwotIF9fdTMyIHJ4X2J1ZmFkZHI7Ci0gX191MzIgcnhfYnVmc2l6ZTsKLSBfX3UzMiByeF90aHJlc2hvbGQ7CisgIF9fdTMyIHR4X3B1dDsKKyAgX191MzIgcnhfYnVmYWRkcjsKKyAgX191MzIgcnhfYnVmc2l6ZTsKKyAgX191MzIgcnhfdGhyZXNob2xkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByeF9nZXQ7Ci0gX191MzIgcnhfcHV0OwotIF9fdTMyIGZpbGxlcls1XTsKKyAgX191MzIgcnhfZ2V0OworICBfX3UzMiByeF9wdXQ7CisgIF9fdTMyIGZpbGxlcls1XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IEJPQVJEX0NUUkwgewotIF9fdTMyIG5fY2hhbm5lbDsKLSBfX3UzMiBmd192ZXJzaW9uOwotIF9fdTMyIG9wX3N5c3RlbTsKKyAgX191MzIgbl9jaGFubmVsOworICBfX3UzMiBmd192ZXJzaW9uOworICBfX3UzMiBvcF9zeXN0ZW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRyX3ZlcnNpb247Ci0gX191MzIgaW5hY3Rpdml0eTsKLSBfX3UzMiBoY21kX2NoYW5uZWw7Ci0gX191MzIgaGNtZF9wYXJhbTsKKyAgX191MzIgZHJfdmVyc2lvbjsKKyAgX191MzIgaW5hY3Rpdml0eTsKKyAgX191MzIgaGNtZF9jaGFubmVsOworICBfX3UzMiBoY21kX3BhcmFtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmd2NtZF9jaGFubmVsOwotIF9fdTMyIGZ3Y21kX3BhcmFtOwotIF9fdTMyIHpmX2ludF9xdWV1ZV9hZGRyOwotIF9fdTMyIGZpbGxlcls2XTsKKyAgX191MzIgZndjbWRfY2hhbm5lbDsKKyAgX191MzIgZndjbWRfcGFyYW07CisgIF9fdTMyIHpmX2ludF9xdWV1ZV9hZGRyOworICBfX3UzMiBmaWxsZXJbNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgUVVFVUVfU0laRSAoMTAqTUFYX0NIQU4pCisjZGVmaW5lIFFVRVVFX1NJWkUgKDEwICogTUFYX0NIQU4pCiBzdHJ1Y3QgSU5UX1FVRVVFIHsKLSB1bnNpZ25lZCBjaGFyIGludHJfY29kZVtRVUVVRV9TSVpFXTsKKyAgdW5zaWduZWQgY2hhciBpbnRyX2NvZGVbUVVFVUVfU0laRV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgY2hhbm5lbFtRVUVVRV9TSVpFXTsKLSB1bnNpZ25lZCBsb25nIHBhcmFtW1FVRVVFX1NJWkVdOwotIHVuc2lnbmVkIGxvbmcgcHV0OwotIHVuc2lnbmVkIGxvbmcgZ2V0OworICB1bnNpZ25lZCBsb25nIGNoYW5uZWxbUVVFVUVfU0laRV07CisgIHVuc2lnbmVkIGxvbmcgcGFyYW1bUVVFVUVfU0laRV07CisgIHVuc2lnbmVkIGxvbmcgcHV0OworICB1bnNpZ25lZCBsb25nIGdldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IFpGV19DVFJMIHsKLSBzdHJ1Y3QgQk9BUkRfQ1RSTCBib2FyZF9jdHJsOwotIHN0cnVjdCBDSF9DVFJMIGNoX2N0cmxbTUFYX0NIQU5dOworICBzdHJ1Y3QgQk9BUkRfQ1RSTCBib2FyZF9jdHJsOworICBzdHJ1Y3QgQ0hfQ1RSTCBjaF9jdHJsW01BWF9DSEFOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IEJVRl9DVFJMIGJ1Zl9jdHJsW01BWF9DSEFOXTsKKyAgc3RydWN0IEJVRl9DVFJMIGJ1Zl9jdHJsW01BWF9DSEFOXTsKIH07CiAjZW5kaWYKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jeWN4X2NmbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9jeWN4X2NmbS5oCmluZGV4IDJkOTkzMWUuLjhhYTBkYjAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvY3ljeF9jZm0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2N5Y3hfY2ZtLmgKQEAgLTM4LDM3ICszOCwzNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0ZJRF9YMjVfMlggNTIwMAogc3RydWN0IGN5Y3hfZndfaW5mbyB7Ci0gdW5zaWduZWQgc2hvcnQgY29kZWlkOwotIHVuc2lnbmVkIHNob3J0IHZlcnNpb247CisgIHVuc2lnbmVkIHNob3J0IGNvZGVpZDsKKyAgdW5zaWduZWQgc2hvcnQgdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgYWRhcHRlcltDRk1fTUFYX0NZQ1hdOwotIHVuc2lnbmVkIGxvbmcgbWVtc2l6ZTsKLSB1bnNpZ25lZCBzaG9ydCByZXNlcnZlZFsyXTsKLSB1bnNpZ25lZCBzaG9ydCBzdGFydG9mZnM7CisgIHVuc2lnbmVkIHNob3J0IGFkYXB0ZXJbQ0ZNX01BWF9DWUNYXTsKKyAgdW5zaWduZWQgbG9uZyBtZW1zaXplOworICB1bnNpZ25lZCBzaG9ydCByZXNlcnZlZFsyXTsKKyAgdW5zaWduZWQgc2hvcnQgc3RhcnRvZmZzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCB3aW5vZmZzOwotIHVuc2lnbmVkIHNob3J0IGNvZGVvZmZzOwotIHVuc2lnbmVkIGxvbmcgY29kZXNpemU7Ci0gdW5zaWduZWQgc2hvcnQgZGF0YW9mZnM7CisgIHVuc2lnbmVkIHNob3J0IHdpbm9mZnM7CisgIHVuc2lnbmVkIHNob3J0IGNvZGVvZmZzOworICB1bnNpZ25lZCBsb25nIGNvZGVzaXplOworICB1bnNpZ25lZCBzaG9ydCBkYXRhb2ZmczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBkYXRhc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBkYXRhc2l6ZTsKIH07CiBzdHJ1Y3QgY3ljeF9maXJtd2FyZSB7Ci0gY2hhciBzaWduYXR1cmVbODBdOworICBjaGFyIHNpZ25hdHVyZVs4MF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHZlcnNpb247Ci0gdW5zaWduZWQgc2hvcnQgY2hlY2tzdW07Ci0gdW5zaWduZWQgc2hvcnQgcmVzZXJ2ZWRbNl07Ci0gY2hhciBkZXNjcltDRk1fREVTQ1JfTEVOXTsKKyAgdW5zaWduZWQgc2hvcnQgdmVyc2lvbjsKKyAgdW5zaWduZWQgc2hvcnQgY2hlY2tzdW07CisgIHVuc2lnbmVkIHNob3J0IHJlc2VydmVkWzZdOworICBjaGFyIGRlc2NyW0NGTV9ERVNDUl9MRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgY3ljeF9md19pbmZvIGluZm87Ci0gdW5zaWduZWQgY2hhciBpbWFnZVswXTsKKyAgc3RydWN0IGN5Y3hfZndfaW5mbyBpbmZvOworICB1bnNpZ25lZCBjaGFyIGltYWdlWzBdOwogfTsKIHN0cnVjdCBjeWN4X2Z3X2hlYWRlciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgcmVzZXRfc2l6ZTsKLSB1bnNpZ25lZCBsb25nIGRhdGFfc2l6ZTsKLSB1bnNpZ25lZCBsb25nIGNvZGVfc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyByZXNldF9zaXplOworICB1bnNpZ25lZCBsb25nIGRhdGFfc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBjb2RlX3NpemU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kY2JubC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kY2JubC5oCmluZGV4IDY5YjIwYWYuLjI2MjNiOGUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGNibmwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RjYm5sLmgKQEAgLTI3LDUyICsyNyw1MiBAQAogI2RlZmluZSBJRUVFXzgwMjFRQVpfVFNBX1ZFTkRPUiAyNTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWVlZV9ldHMgewotIF9fdTggd2lsbGluZzsKLSBfX3U4IGV0c19jYXA7Ci0gX191OCBjYnM7CisgIF9fdTggd2lsbGluZzsKKyAgX191OCBldHNfY2FwOworICBfX3U4IGNiczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0Y190eF9id1tJRUVFXzgwMjFRQVpfTUFYX1RDU107Ci0gX191OCB0Y19yeF9id1tJRUVFXzgwMjFRQVpfTUFYX1RDU107Ci0gX191OCB0Y190c2FbSUVFRV84MDIxUUFaX01BWF9UQ1NdOwotIF9fdTggcHJpb190Y1tJRUVFXzgwMjFRQVpfTUFYX1RDU107CisgIF9fdTggdGNfdHhfYndbSUVFRV84MDIxUUFaX01BWF9UQ1NdOworICBfX3U4IHRjX3J4X2J3W0lFRUVfODAyMVFBWl9NQVhfVENTXTsKKyAgX191OCB0Y190c2FbSUVFRV84MDIxUUFaX01BWF9UQ1NdOworICBfX3U4IHByaW9fdGNbSUVFRV84MDIxUUFaX01BWF9UQ1NdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHRjX3JlY29fYndbSUVFRV84MDIxUUFaX01BWF9UQ1NdOwotIF9fdTggdGNfcmVjb190c2FbSUVFRV84MDIxUUFaX01BWF9UQ1NdOwotIF9fdTggcmVjb19wcmlvX3RjW0lFRUVfODAyMVFBWl9NQVhfVENTXTsKKyAgX191OCB0Y19yZWNvX2J3W0lFRUVfODAyMVFBWl9NQVhfVENTXTsKKyAgX191OCB0Y19yZWNvX3RzYVtJRUVFXzgwMjFRQVpfTUFYX1RDU107CisgIF9fdTggcmVjb19wcmlvX3RjW0lFRUVfODAyMVFBWl9NQVhfVENTXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGllZWVfbWF4cmF0ZSB7Ci0gX191NjQgdGNfbWF4cmF0ZVtJRUVFXzgwMjFRQVpfTUFYX1RDU107CisgIF9fdTY0IHRjX21heHJhdGVbSUVFRV84MDIxUUFaX01BWF9UQ1NdOwogfTsKIHN0cnVjdCBpZWVlX3BmYyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGZjX2NhcDsKLSBfX3U4IHBmY19lbjsKLSBfX3U4IG1iYzsKLSBfX3UxNiBkZWxheTsKKyAgX191OCBwZmNfY2FwOworICBfX3U4IHBmY19lbjsKKyAgX191OCBtYmM7CisgIF9fdTE2IGRlbGF5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXF1ZXN0c1tJRUVFXzgwMjFRQVpfTUFYX1RDU107Ci0gX191NjQgaW5kaWNhdGlvbnNbSUVFRV84MDIxUUFaX01BWF9UQ1NdOworICBfX3U2NCByZXF1ZXN0c1tJRUVFXzgwMjFRQVpfTUFYX1RDU107CisgIF9fdTY0IGluZGljYXRpb25zW0lFRUVfODAyMVFBWl9NQVhfVENTXTsKIH07CiAjZGVmaW5lIENFRV9EQ0JYX01BWF9QR1MgOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0VFX0RDQlhfTUFYX1BSSU8gOAogc3RydWN0IGNlZV9wZyB7Ci0gX191OCB3aWxsaW5nOwotIF9fdTggZXJyb3I7CisgIF9fdTggd2lsbGluZzsKKyAgX191OCBlcnJvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwZ19lbjsKLSBfX3U4IHRjc19zdXBwb3J0ZWQ7Ci0gX191OCBwZ19id1tDRUVfRENCWF9NQVhfUEdTXTsKLSBfX3U4IHByaW9fcGdbQ0VFX0RDQlhfTUFYX1BHU107CisgIF9fdTggcGdfZW47CisgIF9fdTggdGNzX3N1cHBvcnRlZDsKKyAgX191OCBwZ19id1tDRUVfRENCWF9NQVhfUEdTXTsKKyAgX191OCBwcmlvX3BnW0NFRV9EQ0JYX01BWF9QR1NdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgY2VlX3BmYyB7Ci0gX191OCB3aWxsaW5nOwotIF9fdTggZXJyb3I7CisgIF9fdTggd2lsbGluZzsKKyAgX191OCBlcnJvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwZmNfZW47Ci0gX191OCB0Y3Nfc3VwcG9ydGVkOworICBfX3U4IHBmY19lbjsKKyAgX191OCB0Y3Nfc3VwcG9ydGVkOwogfTsKICNkZWZpbmUgSUVFRV84MDIxUUFaX0FQUF9TRUxfRVRIRVJUWVBFIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC04MSwyMjAgKzgxLDIyMCBAQAogI2RlZmluZSBJRUVFXzgwMjFRQVpfQVBQX1NFTF9BTlkgNAogc3RydWN0IGRjYl9hcHAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNlbGVjdG9yOwotIF9fdTggcHJpb3JpdHk7Ci0gX191MTYgcHJvdG9jb2w7CisgIF9fdTggc2VsZWN0b3I7CisgIF9fdTggcHJpb3JpdHk7CisgIF9fdTE2IHByb3RvY29sOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZGNiX3BlZXJfYXBwX2luZm8gewotIF9fdTggd2lsbGluZzsKLSBfX3U4IGVycm9yOworICBfX3U4IHdpbGxpbmc7CisgIF9fdTggZXJyb3I7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkY2Jtc2cgewotIF9fdTggZGNiX2ZhbWlseTsKLSBfX3U4IGNtZDsKLSBfX3UxNiBkY2JfcGFkOworICBfX3U4IGRjYl9mYW1pbHk7CisgIF9fdTggY21kOworICBfX3UxNiBkY2JfcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGRjYm5sX2NvbW1hbmRzIHsKLSBEQ0JfQ01EX1VOREVGSU5FRCwKLSBEQ0JfQ01EX0dTVEFURSwKKyAgRENCX0NNRF9VTkRFRklORUQsCisgIERDQl9DTURfR1NUQVRFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQ01EX1NTVEFURSwKLSBEQ0JfQ01EX1BHVFhfR0NGRywKLSBEQ0JfQ01EX1BHVFhfU0NGRywKLSBEQ0JfQ01EX1BHUlhfR0NGRywKKyAgRENCX0NNRF9TU1RBVEUsCisgIERDQl9DTURfUEdUWF9HQ0ZHLAorICBEQ0JfQ01EX1BHVFhfU0NGRywKKyAgRENCX0NNRF9QR1JYX0dDRkcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9DTURfUEdSWF9TQ0ZHLAotIERDQl9DTURfUEZDX0dDRkcsCi0gRENCX0NNRF9QRkNfU0NGRywKLSBEQ0JfQ01EX1NFVF9BTEwsCisgIERDQl9DTURfUEdSWF9TQ0ZHLAorICBEQ0JfQ01EX1BGQ19HQ0ZHLAorICBEQ0JfQ01EX1BGQ19TQ0ZHLAorICBEQ0JfQ01EX1NFVF9BTEwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9DTURfR1BFUk1fSFdBRERSLAotIERDQl9DTURfR0NBUCwKLSBEQ0JfQ01EX0dOVU1UQ1MsCi0gRENCX0NNRF9TTlVNVENTLAorICBEQ0JfQ01EX0dQRVJNX0hXQUREUiwKKyAgRENCX0NNRF9HQ0FQLAorICBEQ0JfQ01EX0dOVU1UQ1MsCisgIERDQl9DTURfU05VTVRDUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0NNRF9QRkNfR1NUQVRFLAotIERDQl9DTURfUEZDX1NTVEFURSwKLSBEQ0JfQ01EX0JDTl9HQ0ZHLAotIERDQl9DTURfQkNOX1NDRkcsCisgIERDQl9DTURfUEZDX0dTVEFURSwKKyAgRENCX0NNRF9QRkNfU1NUQVRFLAorICBEQ0JfQ01EX0JDTl9HQ0ZHLAorICBEQ0JfQ01EX0JDTl9TQ0ZHLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQ01EX0dBUFAsCi0gRENCX0NNRF9TQVBQLAotIERDQl9DTURfSUVFRV9TRVQsCi0gRENCX0NNRF9JRUVFX0dFVCwKKyAgRENCX0NNRF9HQVBQLAorICBEQ0JfQ01EX1NBUFAsCisgIERDQl9DTURfSUVFRV9TRVQsCisgIERDQl9DTURfSUVFRV9HRVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9DTURfR0RDQlgsCi0gRENCX0NNRF9TRENCWCwKLSBEQ0JfQ01EX0dGRUFUQ0ZHLAotIERDQl9DTURfU0ZFQVRDRkcsCisgIERDQl9DTURfR0RDQlgsCisgIERDQl9DTURfU0RDQlgsCisgIERDQl9DTURfR0ZFQVRDRkcsCisgIERDQl9DTURfU0ZFQVRDRkcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9DTURfQ0VFX0dFVCwKLSBEQ0JfQ01EX0lFRUVfREVMLAotIF9fRENCX0NNRF9FTlVNX01BWCwKLSBEQ0JfQ01EX01BWCA9IF9fRENCX0NNRF9FTlVNX01BWCAtIDEsCisgIERDQl9DTURfQ0VFX0dFVCwKKyAgRENCX0NNRF9JRUVFX0RFTCwKKyAgX19EQ0JfQ01EX0VOVU1fTUFYLAorICBEQ0JfQ01EX01BWCA9IF9fRENCX0NNRF9FTlVNX01BWCAtIDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZGNibmxfYXR0cnMgewotIERDQl9BVFRSX1VOREVGSU5FRCwKLSBEQ0JfQVRUUl9JRk5BTUUsCisgIERDQl9BVFRSX1VOREVGSU5FRCwKKyAgRENCX0FUVFJfSUZOQU1FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQVRUUl9TVEFURSwKLSBEQ0JfQVRUUl9QRkNfU1RBVEUsCi0gRENCX0FUVFJfUEZDX0NGRywKLSBEQ0JfQVRUUl9OVU1fVEMsCisgIERDQl9BVFRSX1NUQVRFLAorICBEQ0JfQVRUUl9QRkNfU1RBVEUsCisgIERDQl9BVFRSX1BGQ19DRkcsCisgIERDQl9BVFRSX05VTV9UQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0FUVFJfUEdfQ0ZHLAotIERDQl9BVFRSX1NFVF9BTEwsCi0gRENCX0FUVFJfUEVSTV9IV0FERFIsCi0gRENCX0FUVFJfQ0FQLAorICBEQ0JfQVRUUl9QR19DRkcsCisgIERDQl9BVFRSX1NFVF9BTEwsCisgIERDQl9BVFRSX1BFUk1fSFdBRERSLAorICBEQ0JfQVRUUl9DQVAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9BVFRSX05VTVRDUywKLSBEQ0JfQVRUUl9CQ04sCi0gRENCX0FUVFJfQVBQLAotIERDQl9BVFRSX0lFRUUsCisgIERDQl9BVFRSX05VTVRDUywKKyAgRENCX0FUVFJfQkNOLAorICBEQ0JfQVRUUl9BUFAsCisgIERDQl9BVFRSX0lFRUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9BVFRSX0RDQlgsCi0gRENCX0FUVFJfRkVBVENGRywKLSBEQ0JfQVRUUl9DRUUsCi0gX19EQ0JfQVRUUl9FTlVNX01BWCwKKyAgRENCX0FUVFJfRENCWCwKKyAgRENCX0FUVFJfRkVBVENGRywKKyAgRENCX0FUVFJfQ0VFLAorICBfX0RDQl9BVFRSX0VOVU1fTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQVRUUl9NQVggPSBfX0RDQl9BVFRSX0VOVU1fTUFYIC0gMSwKKyAgRENCX0FUVFJfTUFYID0gX19EQ0JfQVRUUl9FTlVNX01BWCAtIDEsCiB9OwogZW51bSBpZWVlX2F0dHJzIHsKLSBEQ0JfQVRUUl9JRUVFX1VOU1BFQywKKyAgRENCX0FUVFJfSUVFRV9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9BVFRSX0lFRUVfRVRTLAotIERDQl9BVFRSX0lFRUVfUEZDLAotIERDQl9BVFRSX0lFRUVfQVBQX1RBQkxFLAotIERDQl9BVFRSX0lFRUVfUEVFUl9FVFMsCisgIERDQl9BVFRSX0lFRUVfRVRTLAorICBEQ0JfQVRUUl9JRUVFX1BGQywKKyAgRENCX0FUVFJfSUVFRV9BUFBfVEFCTEUsCisgIERDQl9BVFRSX0lFRUVfUEVFUl9FVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9BVFRSX0lFRUVfUEVFUl9QRkMsCi0gRENCX0FUVFJfSUVFRV9QRUVSX0FQUCwKLSBEQ0JfQVRUUl9JRUVFX01BWFJBVEUsCi0gX19EQ0JfQVRUUl9JRUVFX01BWAorICBEQ0JfQVRUUl9JRUVFX1BFRVJfUEZDLAorICBEQ0JfQVRUUl9JRUVFX1BFRVJfQVBQLAorICBEQ0JfQVRUUl9JRUVFX01BWFJBVEUsCisgIF9fRENCX0FUVFJfSUVFRV9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBEQ0JfQVRUUl9JRUVFX01BWCAoX19EQ0JfQVRUUl9JRUVFX01BWCAtIDEpCiBlbnVtIGllZWVfYXR0cnNfYXBwIHsKLSBEQ0JfQVRUUl9JRUVFX0FQUF9VTlNQRUMsCisgIERDQl9BVFRSX0lFRUVfQVBQX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0FUVFJfSUVFRV9BUFAsCi0gX19EQ0JfQVRUUl9JRUVFX0FQUF9NQVgKKyAgRENCX0FUVFJfSUVFRV9BUFAsCisgIF9fRENCX0FUVFJfSUVFRV9BUFBfTUFYCiB9OwogI2RlZmluZSBEQ0JfQVRUUl9JRUVFX0FQUF9NQVggKF9fRENCX0FUVFJfSUVFRV9BUFBfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGNlZV9hdHRycyB7Ci0gRENCX0FUVFJfQ0VFX1VOU1BFQywKLSBEQ0JfQVRUUl9DRUVfUEVFUl9QRywKLSBEQ0JfQVRUUl9DRUVfUEVFUl9QRkMsCisgIERDQl9BVFRSX0NFRV9VTlNQRUMsCisgIERDQl9BVFRSX0NFRV9QRUVSX1BHLAorICBEQ0JfQVRUUl9DRUVfUEVFUl9QRkMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9BVFRSX0NFRV9QRUVSX0FQUF9UQUJMRSwKLSBEQ0JfQVRUUl9DRUVfVFhfUEcsCi0gRENCX0FUVFJfQ0VFX1JYX1BHLAotIERDQl9BVFRSX0NFRV9QRkMsCisgIERDQl9BVFRSX0NFRV9QRUVSX0FQUF9UQUJMRSwKKyAgRENCX0FUVFJfQ0VFX1RYX1BHLAorICBEQ0JfQVRUUl9DRUVfUlhfUEcsCisgIERDQl9BVFRSX0NFRV9QRkMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9BVFRSX0NFRV9BUFBfVEFCTEUsCi0gRENCX0FUVFJfQ0VFX0ZFQVQsCi0gX19EQ0JfQVRUUl9DRUVfTUFYCisgIERDQl9BVFRSX0NFRV9BUFBfVEFCTEUsCisgIERDQl9BVFRSX0NFRV9GRUFULAorICBfX0RDQl9BVFRSX0NFRV9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEQ0JfQVRUUl9DRUVfTUFYIChfX0RDQl9BVFRSX0NFRV9NQVggLSAxKQogZW51bSBwZWVyX2FwcF9hdHRyIHsKLSBEQ0JfQVRUUl9DRUVfUEVFUl9BUFBfVU5TUEVDLAotIERDQl9BVFRSX0NFRV9QRUVSX0FQUF9JTkZPLAorICBEQ0JfQVRUUl9DRUVfUEVFUl9BUFBfVU5TUEVDLAorICBEQ0JfQVRUUl9DRUVfUEVFUl9BUFBfSU5GTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0FUVFJfQ0VFX1BFRVJfQVBQLAotIF9fRENCX0FUVFJfQ0VFX1BFRVJfQVBQX01BWAorICBEQ0JfQVRUUl9DRUVfUEVFUl9BUFAsCisgIF9fRENCX0FUVFJfQ0VFX1BFRVJfQVBQX01BWAogfTsKICNkZWZpbmUgRENCX0FUVFJfQ0VFX1BFRVJfQVBQX01BWCAoX19EQ0JfQVRUUl9DRUVfUEVFUl9BUFBfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGNlZV9hdHRyc19hcHAgewotIERDQl9BVFRSX0NFRV9BUFBfVU5TUEVDLAotIERDQl9BVFRSX0NFRV9BUFAsCi0gX19EQ0JfQVRUUl9DRUVfQVBQX01BWAorICBEQ0JfQVRUUl9DRUVfQVBQX1VOU1BFQywKKyAgRENCX0FUVFJfQ0VFX0FQUCwKKyAgX19EQ0JfQVRUUl9DRUVfQVBQX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIERDQl9BVFRSX0NFRV9BUFBfTUFYIChfX0RDQl9BVFRSX0NFRV9BUFBfTUFYIC0gMSkKIGVudW0gZGNibmxfcGZjX3VwX2F0dHJzIHsKLSBEQ0JfUEZDX1VQX0FUVFJfVU5ERUZJTkVELAorICBEQ0JfUEZDX1VQX0FUVFJfVU5ERUZJTkVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfUEZDX1VQX0FUVFJfMCwKLSBEQ0JfUEZDX1VQX0FUVFJfMSwKLSBEQ0JfUEZDX1VQX0FUVFJfMiwKLSBEQ0JfUEZDX1VQX0FUVFJfMywKKyAgRENCX1BGQ19VUF9BVFRSXzAsCisgIERDQl9QRkNfVVBfQVRUUl8xLAorICBEQ0JfUEZDX1VQX0FUVFJfMiwKKyAgRENCX1BGQ19VUF9BVFRSXzMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9QRkNfVVBfQVRUUl80LAotIERDQl9QRkNfVVBfQVRUUl81LAotIERDQl9QRkNfVVBfQVRUUl82LAotIERDQl9QRkNfVVBfQVRUUl83LAorICBEQ0JfUEZDX1VQX0FUVFJfNCwKKyAgRENCX1BGQ19VUF9BVFRSXzUsCisgIERDQl9QRkNfVVBfQVRUUl82LAorICBEQ0JfUEZDX1VQX0FUVFJfNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX1BGQ19VUF9BVFRSX0FMTCwKLSBfX0RDQl9QRkNfVVBfQVRUUl9FTlVNX01BWCwKLSBEQ0JfUEZDX1VQX0FUVFJfTUFYID0gX19EQ0JfUEZDX1VQX0FUVFJfRU5VTV9NQVggLSAxLAorICBEQ0JfUEZDX1VQX0FUVFJfQUxMLAorICBfX0RDQl9QRkNfVVBfQVRUUl9FTlVNX01BWCwKKyAgRENCX1BGQ19VUF9BVFRSX01BWCA9IF9fRENCX1BGQ19VUF9BVFRSX0VOVU1fTUFYIC0gMSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBkY2JubF9wZ19hdHRycyB7Ci0gRENCX1BHX0FUVFJfVU5ERUZJTkVELAotIERDQl9QR19BVFRSX1RDXzAsCi0gRENCX1BHX0FUVFJfVENfMSwKKyAgRENCX1BHX0FUVFJfVU5ERUZJTkVELAorICBEQ0JfUEdfQVRUUl9UQ18wLAorICBEQ0JfUEdfQVRUUl9UQ18xLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfUEdfQVRUUl9UQ18yLAotIERDQl9QR19BVFRSX1RDXzMsCi0gRENCX1BHX0FUVFJfVENfNCwKLSBEQ0JfUEdfQVRUUl9UQ181LAorICBEQ0JfUEdfQVRUUl9UQ18yLAorICBEQ0JfUEdfQVRUUl9UQ18zLAorICBEQ0JfUEdfQVRUUl9UQ180LAorICBEQ0JfUEdfQVRUUl9UQ181LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfUEdfQVRUUl9UQ182LAotIERDQl9QR19BVFRSX1RDXzcsCi0gRENCX1BHX0FUVFJfVENfTUFYLAotIERDQl9QR19BVFRSX1RDX0FMTCwKKyAgRENCX1BHX0FUVFJfVENfNiwKKyAgRENCX1BHX0FUVFJfVENfNywKKyAgRENCX1BHX0FUVFJfVENfTUFYLAorICBEQ0JfUEdfQVRUUl9UQ19BTEwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9QR19BVFRSX0JXX0lEXzAsCi0gRENCX1BHX0FUVFJfQldfSURfMSwKLSBEQ0JfUEdfQVRUUl9CV19JRF8yLAotIERDQl9QR19BVFRSX0JXX0lEXzMsCisgIERDQl9QR19BVFRSX0JXX0lEXzAsCisgIERDQl9QR19BVFRSX0JXX0lEXzEsCisgIERDQl9QR19BVFRSX0JXX0lEXzIsCisgIERDQl9QR19BVFRSX0JXX0lEXzMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9QR19BVFRSX0JXX0lEXzQsCi0gRENCX1BHX0FUVFJfQldfSURfNSwKLSBEQ0JfUEdfQVRUUl9CV19JRF82LAotIERDQl9QR19BVFRSX0JXX0lEXzcsCisgIERDQl9QR19BVFRSX0JXX0lEXzQsCisgIERDQl9QR19BVFRSX0JXX0lEXzUsCisgIERDQl9QR19BVFRSX0JXX0lEXzYsCisgIERDQl9QR19BVFRSX0JXX0lEXzcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9QR19BVFRSX0JXX0lEX01BWCwKLSBEQ0JfUEdfQVRUUl9CV19JRF9BTEwsCi0gX19EQ0JfUEdfQVRUUl9FTlVNX01BWCwKLSBEQ0JfUEdfQVRUUl9NQVggPSBfX0RDQl9QR19BVFRSX0VOVU1fTUFYIC0gMSwKKyAgRENCX1BHX0FUVFJfQldfSURfTUFYLAorICBEQ0JfUEdfQVRUUl9CV19JRF9BTEwsCisgIF9fRENCX1BHX0FUVFJfRU5VTV9NQVgsCisgIERDQl9QR19BVFRSX01BWCA9IF9fRENCX1BHX0FUVFJfRU5VTV9NQVggLSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGRjYm5sX3RjX2F0dHJzIHsKLSBEQ0JfVENfQVRUUl9QQVJBTV9VTkRFRklORUQsCi0gRENCX1RDX0FUVFJfUEFSQU1fUEdJRCwKKyAgRENCX1RDX0FUVFJfUEFSQU1fVU5ERUZJTkVELAorICBEQ0JfVENfQVRUUl9QQVJBTV9QR0lELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfVENfQVRUUl9QQVJBTV9VUF9NQVBQSU5HLAotIERDQl9UQ19BVFRSX1BBUkFNX1NUUklDVF9QUklPLAotIERDQl9UQ19BVFRSX1BBUkFNX0JXX1BDVCwKLSBEQ0JfVENfQVRUUl9QQVJBTV9BTEwsCisgIERDQl9UQ19BVFRSX1BBUkFNX1VQX01BUFBJTkcsCisgIERDQl9UQ19BVFRSX1BBUkFNX1NUUklDVF9QUklPLAorICBEQ0JfVENfQVRUUl9QQVJBTV9CV19QQ1QsCisgIERDQl9UQ19BVFRSX1BBUkFNX0FMTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19EQ0JfVENfQVRUUl9QQVJBTV9FTlVNX01BWCwKLSBEQ0JfVENfQVRUUl9QQVJBTV9NQVggPSBfX0RDQl9UQ19BVFRSX1BBUkFNX0VOVU1fTUFYIC0gMSwKKyAgX19EQ0JfVENfQVRUUl9QQVJBTV9FTlVNX01BWCwKKyAgRENCX1RDX0FUVFJfUEFSQU1fTUFYID0gX19EQ0JfVENfQVRUUl9QQVJBTV9FTlVNX01BWCAtIDEsCiB9OwogZW51bSBkY2JubF9jYXBfYXR0cnMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQ0FQX0FUVFJfVU5ERUZJTkVELAotIERDQl9DQVBfQVRUUl9BTEwsCi0gRENCX0NBUF9BVFRSX1BHLAotIERDQl9DQVBfQVRUUl9QRkMsCisgIERDQl9DQVBfQVRUUl9VTkRFRklORUQsCisgIERDQl9DQVBfQVRUUl9BTEwsCisgIERDQl9DQVBfQVRUUl9QRywKKyAgRENCX0NBUF9BVFRSX1BGQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0NBUF9BVFRSX1VQMlRDLAotIERDQl9DQVBfQVRUUl9QR19UQ1MsCi0gRENCX0NBUF9BVFRSX1BGQ19UQ1MsCi0gRENCX0NBUF9BVFRSX0dTUCwKKyAgRENCX0NBUF9BVFRSX1VQMlRDLAorICBEQ0JfQ0FQX0FUVFJfUEdfVENTLAorICBEQ0JfQ0FQX0FUVFJfUEZDX1RDUywKKyAgRENCX0NBUF9BVFRSX0dTUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0NBUF9BVFRSX0JDTiwKLSBEQ0JfQ0FQX0FUVFJfRENCWCwKLSBfX0RDQl9DQVBfQVRUUl9FTlVNX01BWCwKLSBEQ0JfQ0FQX0FUVFJfTUFYID0gX19EQ0JfQ0FQX0FUVFJfRU5VTV9NQVggLSAxLAorICBEQ0JfQ0FQX0FUVFJfQkNOLAorICBEQ0JfQ0FQX0FUVFJfRENCWCwKKyAgX19EQ0JfQ0FQX0FUVFJfRU5VTV9NQVgsCisgIERDQl9DQVBfQVRUUl9NQVggPSBfX0RDQl9DQVBfQVRUUl9FTlVNX01BWCAtIDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRENCX0NBUF9EQ0JYX0hPU1QgMHgwMQpAQCAtMzA0LDY3ICszMDQsNjcgQEAKICNkZWZpbmUgRENCX0NBUF9EQ0JYX1ZFUl9JRUVFIDB4MDgKICNkZWZpbmUgRENCX0NBUF9EQ0JYX1NUQVRJQyAweDEwCiBlbnVtIGRjYm5sX251bXRjc19hdHRycyB7Ci0gRENCX05VTVRDU19BVFRSX1VOREVGSU5FRCwKKyAgRENCX05VTVRDU19BVFRSX1VOREVGSU5FRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX05VTVRDU19BVFRSX0FMTCwKLSBEQ0JfTlVNVENTX0FUVFJfUEcsCi0gRENCX05VTVRDU19BVFRSX1BGQywKLSBfX0RDQl9OVU1UQ1NfQVRUUl9FTlVNX01BWCwKKyAgRENCX05VTVRDU19BVFRSX0FMTCwKKyAgRENCX05VTVRDU19BVFRSX1BHLAorICBEQ0JfTlVNVENTX0FUVFJfUEZDLAorICBfX0RDQl9OVU1UQ1NfQVRUUl9FTlVNX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX05VTVRDU19BVFRSX01BWCA9IF9fRENCX05VTVRDU19BVFRSX0VOVU1fTUFYIC0gMSwKKyAgRENCX05VTVRDU19BVFRSX01BWCA9IF9fRENCX05VTVRDU19BVFRSX0VOVU1fTUFYIC0gMSwKIH07Ci1lbnVtIGRjYm5sX2Jjbl9hdHRyc3sKLSBEQ0JfQkNOX0FUVFJfVU5ERUZJTkVEID0gMCwKK2VudW0gZGNibmxfYmNuX2F0dHJzIHsKKyAgRENCX0JDTl9BVFRSX1VOREVGSU5FRCA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9CQ05fQVRUUl9SUF8wLAotIERDQl9CQ05fQVRUUl9SUF8xLAotIERDQl9CQ05fQVRUUl9SUF8yLAotIERDQl9CQ05fQVRUUl9SUF8zLAorICBEQ0JfQkNOX0FUVFJfUlBfMCwKKyAgRENCX0JDTl9BVFRSX1JQXzEsCisgIERDQl9CQ05fQVRUUl9SUF8yLAorICBEQ0JfQkNOX0FUVFJfUlBfMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0JDTl9BVFRSX1JQXzQsCi0gRENCX0JDTl9BVFRSX1JQXzUsCi0gRENCX0JDTl9BVFRSX1JQXzYsCi0gRENCX0JDTl9BVFRSX1JQXzcsCisgIERDQl9CQ05fQVRUUl9SUF80LAorICBEQ0JfQkNOX0FUVFJfUlBfNSwKKyAgRENCX0JDTl9BVFRSX1JQXzYsCisgIERDQl9CQ05fQVRUUl9SUF83LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0JfQkNOX0FUVFJfUlBfQUxMLAotIERDQl9CQ05fQVRUUl9CQ05BXzAsCi0gRENCX0JDTl9BVFRSX0JDTkFfMSwKLSBEQ0JfQkNOX0FUVFJfQUxQSEEsCisgIERDQl9CQ05fQVRUUl9SUF9BTEwsCisgIERDQl9CQ05fQVRUUl9CQ05BXzAsCisgIERDQl9CQ05fQVRUUl9CQ05BXzEsCisgIERDQl9CQ05fQVRUUl9BTFBIQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0JDTl9BVFRSX0JFVEEsCi0gRENCX0JDTl9BVFRSX0dELAotIERDQl9CQ05fQVRUUl9HSSwKLSBEQ0JfQkNOX0FUVFJfVE1BWCwKKyAgRENCX0JDTl9BVFRSX0JFVEEsCisgIERDQl9CQ05fQVRUUl9HRCwKKyAgRENCX0JDTl9BVFRSX0dJLAorICBEQ0JfQkNOX0FUVFJfVE1BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0JDTl9BVFRSX1RELAotIERDQl9CQ05fQVRUUl9STUlOLAotIERDQl9CQ05fQVRUUl9XLAotIERDQl9CQ05fQVRUUl9SRCwKKyAgRENCX0JDTl9BVFRSX1RELAorICBEQ0JfQkNOX0FUVFJfUk1JTiwKKyAgRENCX0JDTl9BVFRSX1csCisgIERDQl9CQ05fQVRUUl9SRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0JDTl9BVFRSX1JVLAotIERDQl9CQ05fQVRUUl9XUlRULAotIERDQl9CQ05fQVRUUl9SSSwKLSBEQ0JfQkNOX0FUVFJfQywKKyAgRENCX0JDTl9BVFRSX1JVLAorICBEQ0JfQkNOX0FUVFJfV1JUVCwKKyAgRENCX0JDTl9BVFRSX1JJLAorICBEQ0JfQkNOX0FUVFJfQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0JDTl9BVFRSX0FMTCwKLSBfX0RDQl9CQ05fQVRUUl9FTlVNX01BWCwKLSBEQ0JfQkNOX0FUVFJfTUFYID0gX19EQ0JfQkNOX0FUVFJfRU5VTV9NQVggLSAxLAorICBEQ0JfQkNOX0FUVFJfQUxMLAorICBfX0RDQl9CQ05fQVRUUl9FTlVNX01BWCwKKyAgRENCX0JDTl9BVFRSX01BWCA9IF9fRENCX0JDTl9BVFRSX0VOVU1fTUFYIC0gMSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBkY2JfZ2VuZXJhbF9hdHRyX3ZhbHVlcyB7Ci0gRENCX0FUVFJfVkFMVUVfVU5ERUZJTkVEID0gMHhmZgorICBEQ0JfQVRUUl9WQUxVRV9VTkRFRklORUQgPSAweGZmCiB9OwogI2RlZmluZSBEQ0JfQVBQX0lEVFlQRV9FVEhUWVBFIDB4MDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERDQl9BUFBfSURUWVBFX1BPUlROVU0gMHgwMQogZW51bSBkY2JubF9hcHBfYXR0cnMgewotIERDQl9BUFBfQVRUUl9VTkRFRklORUQsCi0gRENCX0FQUF9BVFRSX0lEVFlQRSwKKyAgRENCX0FQUF9BVFRSX1VOREVGSU5FRCwKKyAgRENCX0FQUF9BVFRSX0lEVFlQRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0FQUF9BVFRSX0lELAotIERDQl9BUFBfQVRUUl9QUklPUklUWSwKLSBfX0RDQl9BUFBfQVRUUl9FTlVNX01BWCwKLSBEQ0JfQVBQX0FUVFJfTUFYID0gX19EQ0JfQVBQX0FUVFJfRU5VTV9NQVggLSAxLAorICBEQ0JfQVBQX0FUVFJfSUQsCisgIERDQl9BUFBfQVRUUl9QUklPUklUWSwKKyAgX19EQ0JfQVBQX0FUVFJfRU5VTV9NQVgsCisgIERDQl9BUFBfQVRUUl9NQVggPSBfX0RDQl9BUFBfQVRUUl9FTlVNX01BWCAtIDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRENCX0ZFQVRDRkdfRVJST1IgMHgwMQpAQCAtMzczLDE0ICszNzMsMTQgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERDQl9GRUFUQ0ZHX0FEVkVSVElTRSAweDA4CiBlbnVtIGRjYm5sX2ZlYXRjZmdfYXR0cnMgewotIERDQl9GRUFUQ0ZHX0FUVFJfVU5ERUZJTkVELAotIERDQl9GRUFUQ0ZHX0FUVFJfQUxMLAorICBEQ0JfRkVBVENGR19BVFRSX1VOREVGSU5FRCwKKyAgRENCX0ZFQVRDRkdfQVRUUl9BTEwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQl9GRUFUQ0ZHX0FUVFJfUEcsCi0gRENCX0ZFQVRDRkdfQVRUUl9QRkMsCi0gRENCX0ZFQVRDRkdfQVRUUl9BUFAsCi0gX19EQ0JfRkVBVENGR19BVFRSX0VOVU1fTUFYLAorICBEQ0JfRkVBVENGR19BVFRSX1BHLAorICBEQ0JfRkVBVENGR19BVFRSX1BGQywKKyAgRENCX0ZFQVRDRkdfQVRUUl9BUFAsCisgIF9fRENCX0ZFQVRDRkdfQVRUUl9FTlVNX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENCX0ZFQVRDRkdfQVRUUl9NQVggPSBfX0RDQl9GRUFUQ0ZHX0FUVFJfRU5VTV9NQVggLSAxLAorICBEQ0JfRkVBVENGR19BVFRSX01BWCA9IF9fRENCX0ZFQVRDRkdfQVRUUl9FTlVNX01BWCAtIDEsCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RjY3AuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGNjcC5oCmluZGV4IDY2OTVmYjYuLmRjNGU3MGUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGNjcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGNjcC5oCkBAIC0yMiwxNjMgKzIyLDE1MyBAQAogI2luY2x1ZGUgPGFzbS9ieXRlb3JkZXIuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZGNjcF9oZHIgewotIF9fYmUxNiBkY2NwaF9zcG9ydCwKLSBkY2NwaF9kcG9ydDsKLSBfX3U4IGRjY3BoX2RvZmY7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX2JlMTYgZGNjcGhfc3BvcnQsIGRjY3BoX2Rwb3J0OworICBfX3U4IGRjY3BoX2RvZmY7CiAjaWZkZWYgX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxECi0gX191OCBkY2NwaF9jc2Nvdjo0LAotIGRjY3BoX2NjdmFsOjQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGRjY3BoX2NzY292IDogNCwgZGNjcGhfY2N2YWwgOiA0OwogI2VsaWYgZGVmaW5lZChfX0JJR19FTkRJQU5fQklURklFTEQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGNjcGhfY2N2YWw6NCwKLSBkY2NwaF9jc2Nvdjo0OworICBfX3U4IGRjY3BoX2NjdmFsIDogNCwgZGNjcGhfY3Njb3YgOiA0OwogI2Vsc2UKLSNlcnJvciAiQWRqdXN0IHlvdXIgPGFzbS9ieXRlb3JkZXIuaD4gZGVmaW5lcyIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZXJyb3IgIkFkanVzdCB5b3VyIDxhc20vYnl0ZW9yZGVyLmg+IGRlZmluZXMiCiAjZW5kaWYKLSBfX3N1bTE2IGRjY3BoX2NoZWNrc3VtOworICBfX3N1bTE2IGRjY3BoX2NoZWNrc3VtOwogI2lmZGVmIF9fTElUVExFX0VORElBTl9CSVRGSUVMRAotIF9fdTggZGNjcGhfeDoxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkY2NwaF90eXBlOjQsCi0gZGNjcGhfcmVzZXJ2ZWQ6MzsKKyAgX191OCBkY2NwaF94IDogMSwgZGNjcGhfdHlwZSA6IDQsIGRjY3BoX3Jlc2VydmVkIDogMzsKICNlbGlmIGRlZmluZWQoX19CSUdfRU5ESUFOX0JJVEZJRUxEKQotIF9fdTggZGNjcGhfcmVzZXJ2ZWQ6MywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZGNjcGhfdHlwZTo0LAotIGRjY3BoX3g6MTsKKyAgX191OCBkY2NwaF9yZXNlcnZlZCA6IDMsIGRjY3BoX3R5cGUgOiA0LCBkY2NwaF94IDogMTsKICNlbHNlCi0jZXJyb3IgIkFkanVzdCB5b3VyIDxhc20vYnl0ZW9yZGVyLmg+IGRlZmluZXMiCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2Vycm9yICJBZGp1c3QgeW91ciA8YXNtL2J5dGVvcmRlci5oPiBkZWZpbmVzIgogI2VuZGlmCi0gX191OCBkY2NwaF9zZXEyOwotIF9fYmUxNiBkY2NwaF9zZXE7CisgIF9fdTggZGNjcGhfc2VxMjsKKyAgX19iZTE2IGRjY3BoX3NlcTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkY2NwX2hkcl9leHQgewotIF9fYmUzMiBkY2NwaF9zZXFfbG93OworICBfX2JlMzIgZGNjcGhfc2VxX2xvdzsKIH07Ci1zdHJ1Y3QgZGNjcF9oZHJfcmVxdWVzdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBkY2NwaF9yZXFfc2VydmljZTsKK3N0cnVjdCBkY2NwX2hkcl9yZXF1ZXN0IHsKKyAgX19iZTMyIGRjY3BoX3JlcV9zZXJ2aWNlOwogfTsKIHN0cnVjdCBkY2NwX2hkcl9hY2tfYml0cyB7Ci0gX19iZTE2IGRjY3BoX3Jlc2VydmVkMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGRjY3BoX2Fja19ucl9oaWdoOwotIF9fYmUzMiBkY2NwaF9hY2tfbnJfbG93OworICBfX2JlMTYgZGNjcGhfcmVzZXJ2ZWQxOworICBfX2JlMTYgZGNjcGhfYWNrX25yX2hpZ2g7CisgIF9fYmUzMiBkY2NwaF9hY2tfbnJfbG93OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZGNjcF9oZHJfcmVzcG9uc2UgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZGNjcF9oZHJfYWNrX2JpdHMgZGNjcGhfcmVzcF9hY2s7Ci0gX19iZTMyIGRjY3BoX3Jlc3Bfc2VydmljZTsKKyAgc3RydWN0IGRjY3BfaGRyX2Fja19iaXRzIGRjY3BoX3Jlc3BfYWNrOworICBfX2JlMzIgZGNjcGhfcmVzcF9zZXJ2aWNlOwogfTsKLXN0cnVjdCBkY2NwX2hkcl9yZXNldCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkY2NwX2hkcl9hY2tfYml0cyBkY2NwaF9yZXNldF9hY2s7Ci0gX191OCBkY2NwaF9yZXNldF9jb2RlLAotIGRjY3BoX3Jlc2V0X2RhdGFbM107CitzdHJ1Y3QgZGNjcF9oZHJfcmVzZXQgeworICBzdHJ1Y3QgZGNjcF9oZHJfYWNrX2JpdHMgZGNjcGhfcmVzZXRfYWNrOworICBfX3U4IGRjY3BoX3Jlc2V0X2NvZGUsIGRjY3BoX3Jlc2V0X2RhdGFbM107CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gZGNjcF9wa3RfdHlwZSB7Ci0gRENDUF9QS1RfUkVRVUVTVCA9IDAsCi0gRENDUF9QS1RfUkVTUE9OU0UsCi0gRENDUF9QS1RfREFUQSwKKyAgRENDUF9QS1RfUkVRVUVTVCA9IDAsCisgIERDQ1BfUEtUX1JFU1BPTlNFLAorICBEQ0NQX1BLVF9EQVRBLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0NQX1BLVF9BQ0ssCi0gRENDUF9QS1RfREFUQUFDSywKLSBEQ0NQX1BLVF9DTE9TRVJFUSwKLSBEQ0NQX1BLVF9DTE9TRSwKKyAgRENDUF9QS1RfQUNLLAorICBEQ0NQX1BLVF9EQVRBQUNLLAorICBEQ0NQX1BLVF9DTE9TRVJFUSwKKyAgRENDUF9QS1RfQ0xPU0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQ1BfUEtUX1JFU0VULAotIERDQ1BfUEtUX1NZTkMsCi0gRENDUF9QS1RfU1lOQ0FDSywKLSBEQ0NQX1BLVF9JTlZBTElELAorICBEQ0NQX1BLVF9SRVNFVCwKKyAgRENDUF9QS1RfU1lOQywKKyAgRENDUF9QS1RfU1lOQ0FDSywKKyAgRENDUF9QS1RfSU5WQUxJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBEQ0NQX05SX1BLVF9UWVBFUyBEQ0NQX1BLVF9JTlZBTElECiBlbnVtIGRjY3BfcmVzZXRfY29kZXMgewotIERDQ1BfUkVTRVRfQ09ERV9VTlNQRUNJRklFRCA9IDAsCisgIERDQ1BfUkVTRVRfQ09ERV9VTlNQRUNJRklFRCA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQ1BfUkVTRVRfQ09ERV9DTE9TRUQsCi0gRENDUF9SRVNFVF9DT0RFX0FCT1JURUQsCi0gRENDUF9SRVNFVF9DT0RFX05PX0NPTk5FQ1RJT04sCi0gRENDUF9SRVNFVF9DT0RFX1BBQ0tFVF9FUlJPUiwKKyAgRENDUF9SRVNFVF9DT0RFX0NMT1NFRCwKKyAgRENDUF9SRVNFVF9DT0RFX0FCT1JURUQsCisgIERDQ1BfUkVTRVRfQ09ERV9OT19DT05ORUNUSU9OLAorICBEQ0NQX1JFU0VUX0NPREVfUEFDS0VUX0VSUk9SLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0NQX1JFU0VUX0NPREVfT1BUSU9OX0VSUk9SLAotIERDQ1BfUkVTRVRfQ09ERV9NQU5EQVRPUllfRVJST1IsCi0gRENDUF9SRVNFVF9DT0RFX0NPTk5FQ1RJT05fUkVGVVNFRCwKLSBEQ0NQX1JFU0VUX0NPREVfQkFEX1NFUlZJQ0VfQ09ERSwKKyAgRENDUF9SRVNFVF9DT0RFX09QVElPTl9FUlJPUiwKKyAgRENDUF9SRVNFVF9DT0RFX01BTkRBVE9SWV9FUlJPUiwKKyAgRENDUF9SRVNFVF9DT0RFX0NPTk5FQ1RJT05fUkVGVVNFRCwKKyAgRENDUF9SRVNFVF9DT0RFX0JBRF9TRVJWSUNFX0NPREUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQ1BfUkVTRVRfQ09ERV9UT09fQlVTWSwKLSBEQ0NQX1JFU0VUX0NPREVfQkFEX0lOSVRfQ09PS0lFLAotIERDQ1BfUkVTRVRfQ09ERV9BR0dSRVNTSU9OX1BFTkFMVFksCi0gRENDUF9NQVhfUkVTRVRfQ09ERVMKKyAgRENDUF9SRVNFVF9DT0RFX1RPT19CVVNZLAorICBEQ0NQX1JFU0VUX0NPREVfQkFEX0lOSVRfQ09PS0lFLAorICBEQ0NQX1JFU0VUX0NPREVfQUdHUkVTU0lPTl9QRU5BTFRZLAorICBEQ0NQX01BWF9SRVNFVF9DT0RFUwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBEQ0NQT19QQURESU5HID0gMCwKLSBEQ0NQT19NQU5EQVRPUlkgPSAxLAorICBEQ0NQT19QQURESU5HID0gMCwKKyAgRENDUE9fTUFOREFUT1JZID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENDUE9fTUlOX1JFU0VSVkVEID0gMywKLSBEQ0NQT19NQVhfUkVTRVJWRUQgPSAzMSwKLSBEQ0NQT19DSEFOR0VfTCA9IDMyLAotIERDQ1BPX0NPTkZJUk1fTCA9IDMzLAorICBEQ0NQT19NSU5fUkVTRVJWRUQgPSAzLAorICBEQ0NQT19NQVhfUkVTRVJWRUQgPSAzMSwKKyAgRENDUE9fQ0hBTkdFX0wgPSAzMiwKKyAgRENDUE9fQ09ORklSTV9MID0gMzMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQ1BPX0NIQU5HRV9SID0gMzQsCi0gRENDUE9fQ09ORklSTV9SID0gMzUsCi0gRENDUE9fTkRQX0NPVU5UID0gMzcsCi0gRENDUE9fQUNLX1ZFQ1RPUl8wID0gMzgsCisgIERDQ1BPX0NIQU5HRV9SID0gMzQsCisgIERDQ1BPX0NPTkZJUk1fUiA9IDM1LAorICBEQ0NQT19ORFBfQ09VTlQgPSAzNywKKyAgRENDUE9fQUNLX1ZFQ1RPUl8wID0gMzgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQ1BPX0FDS19WRUNUT1JfMSA9IDM5LAotIERDQ1BPX1RJTUVTVEFNUCA9IDQxLAotIERDQ1BPX1RJTUVTVEFNUF9FQ0hPID0gNDIsCi0gRENDUE9fRUxBUFNFRF9USU1FID0gNDMsCisgIERDQ1BPX0FDS19WRUNUT1JfMSA9IDM5LAorICBEQ0NQT19USU1FU1RBTVAgPSA0MSwKKyAgRENDUE9fVElNRVNUQU1QX0VDSE8gPSA0MiwKKyAgRENDUE9fRUxBUFNFRF9USU1FID0gNDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQ1BPX01BWCA9IDQ1LAotIERDQ1BPX01JTl9SWF9DQ0lEX1NQRUNJRklDID0gMTI4LAotIERDQ1BPX01BWF9SWF9DQ0lEX1NQRUNJRklDID0gMTkxLAotIERDQ1BPX01JTl9UWF9DQ0lEX1NQRUNJRklDID0gMTkyLAorICBEQ0NQT19NQVggPSA0NSwKKyAgRENDUE9fTUlOX1JYX0NDSURfU1BFQ0lGSUMgPSAxMjgsCisgIERDQ1BPX01BWF9SWF9DQ0lEX1NQRUNJRklDID0gMTkxLAorICBEQ0NQT19NSU5fVFhfQ0NJRF9TUEVDSUZJQyA9IDE5MiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENDUE9fTUFYX1RYX0NDSURfU1BFQ0lGSUMgPSAyNTUsCisgIERDQ1BPX01BWF9UWF9DQ0lEX1NQRUNJRklDID0gMjU1LAogfTsKICNkZWZpbmUgRENDUF9TSU5HTEVfT1BUX01BWExFTiAyNTMKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0NQQ19DQ0lEMiA9IDIsCi0gRENDUENfQ0NJRDMgPSAzLAorICBEQ0NQQ19DQ0lEMiA9IDIsCisgIERDQ1BDX0NDSUQzID0gMywKIH07CiBlbnVtIGRjY3BfZmVhdHVyZV9udW1iZXJzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENDUEZfUkVTRVJWRUQgPSAwLAotIERDQ1BGX0NDSUQgPSAxLAotIERDQ1BGX1NIT1JUX1NFUU5PUyA9IDIsCi0gRENDUEZfU0VRVUVOQ0VfV0lORE9XID0gMywKKyAgRENDUEZfUkVTRVJWRUQgPSAwLAorICBEQ0NQRl9DQ0lEID0gMSwKKyAgRENDUEZfU0hPUlRfU0VRTk9TID0gMiwKKyAgRENDUEZfU0VRVUVOQ0VfV0lORE9XID0gMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENDUEZfRUNOX0lOQ0FQQUJMRSA9IDQsCi0gRENDUEZfQUNLX1JBVElPID0gNSwKLSBEQ0NQRl9TRU5EX0FDS19WRUNUT1IgPSA2LAotIERDQ1BGX1NFTkRfTkRQX0NPVU5UID0gNywKKyAgRENDUEZfRUNOX0lOQ0FQQUJMRSA9IDQsCisgIERDQ1BGX0FDS19SQVRJTyA9IDUsCisgIERDQ1BGX1NFTkRfQUNLX1ZFQ1RPUiA9IDYsCisgIERDQ1BGX1NFTkRfTkRQX0NPVU5UID0gNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRENDUEZfTUlOX0NTVU1fQ09WRVIgPSA4LAotIERDQ1BGX0RBVEFfQ0hFQ0tTVU0gPSA5LAotIERDQ1BGX01JTl9DQ0lEX1NQRUNJRklDID0gMTI4LAotIERDQ1BGX1NFTkRfTEVWX1JBVEUgPSAxOTIsCisgIERDQ1BGX01JTl9DU1VNX0NPVkVSID0gOCwKKyAgRENDUEZfREFUQV9DSEVDS1NVTSA9IDksCisgIERDQ1BGX01JTl9DQ0lEX1NQRUNJRklDID0gMTI4LAorICBEQ0NQRl9TRU5EX0xFVl9SQVRFID0gMTkyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBEQ0NQRl9NQVhfQ0NJRF9TUEVDSUZJQyA9IDI1NSwKKyAgRENDUEZfTUFYX0NDSURfU1BFQ0lGSUMgPSAyNTUsCiB9OwogZW51bSBkY2NwX2Ntc2dfdHlwZSB7Ci0gRENDUF9TQ01fUFJJT1JJVFkgPSAxLAorICBEQ0NQX1NDTV9QUklPUklUWSA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQ1BfU0NNX1FQT0xJQ1lfTUFYID0gMHhGRkZGLAotIERDQ1BfU0NNX01BWAorICBEQ0NQX1NDTV9RUE9MSUNZX01BWCA9IDB4RkZGRiwKKyAgRENDUF9TQ01fTUFYCiB9OwogZW51bSBkY2NwX3BhY2tldF9kZXF1ZXVlaW5nX3BvbGljeSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERDQ1BRX1BPTElDWV9TSU1QTEUsCi0gRENDUFFfUE9MSUNZX1BSSU8sCi0gRENDUFFfUE9MSUNZX01BWAorICBEQ0NQUV9QT0xJQ1lfU0lNUExFLAorICBEQ0NQUV9QT0xJQ1lfUFJJTywKKyAgRENDUFFfUE9MSUNZX01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERDQ1BfU09DS09QVF9QQUNLRVRfU0laRSAxCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RsbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG0uaAppbmRleCBkMTkyODJjLi5lMWFjNDMzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RsbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtLmgKQEAgLTI3LDExICsyNywxMSBAQAogI2RlZmluZSBETE1fU0JGX0FMVE1PREUgMHgwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkbG1fbGtzYiB7Ci0gaW50IHNiX3N0YXR1czsKLSBfX3UzMiBzYl9sa2lkOwotIGNoYXIgc2JfZmxhZ3M7CisgIGludCBzYl9zdGF0dXM7CisgIF9fdTMyIHNiX2xraWQ7CisgIGNoYXIgc2JfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgKiBzYl9sdmJwdHI7CisgIGNoYXIgKiBzYl9sdmJwdHI7CiB9OwogI2RlZmluZSBETE1fTFNGTF9USU1FV0FSTiAweDAwMDAwMDAyCiAjZGVmaW5lIERMTV9MU0ZMX0ZTIDB4MDAwMDAwMDQKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtX2RldmljZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG1fZGV2aWNlLmgKaW5kZXggNzU2N2UwYy4uYzQ5NmQ4ZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG1fZGV2aWNlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG1fZGV2aWNlLmgKQEAgLTI3LDY3ICsyNyw2NyBAQAogI2RlZmluZSBETE1fREVWSUNFX1ZFUlNJT05fUEFUQ0ggMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkbG1fbG9ja19wYXJhbXMgewotIF9fdTggbW9kZTsKLSBfX3U4IG5hbWVsZW47Ci0gX191MTYgdW51c2VkOworICBfX3U4IG1vZGU7CisgIF9fdTggbmFtZWxlbjsKKyAgX191MTYgdW51c2VkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBsa2lkOwotIF9fdTMyIHBhcmVudDsKLSBfX3U2NCB4aWQ7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBsa2lkOworICBfX3UzMiBwYXJlbnQ7CisgIF9fdTY0IHhpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdGltZW91dDsKLSB2b2lkIF9fdXNlciAqY2FzdHBhcmFtOwotIHZvaWQgX191c2VyICpjYXN0YWRkcjsKLSB2b2lkIF9fdXNlciAqYmFzdHBhcmFtOworICBfX3U2NCB0aW1lb3V0OworICB2b2lkIF9fdXNlciAqIGNhc3RwYXJhbTsKKyAgdm9pZCBfX3VzZXIgKiBjYXN0YWRkcjsKKyAgdm9pZCBfX3VzZXIgKiBiYXN0cGFyYW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgX191c2VyICpiYXN0YWRkcjsKLSBzdHJ1Y3QgZGxtX2xrc2IgX191c2VyICpsa3NiOwotIGNoYXIgbHZiW0RMTV9VU0VSX0xWQl9MRU5dOwotIGNoYXIgbmFtZVswXTsKKyAgdm9pZCBfX3VzZXIgKiBiYXN0YWRkcjsKKyAgc3RydWN0IGRsbV9sa3NiIF9fdXNlciAqIGxrc2I7CisgIGNoYXIgbHZiW0RMTV9VU0VSX0xWQl9MRU5dOworICBjaGFyIG5hbWVbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkbG1fbHNwYWNlX3BhcmFtcyB7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgbWlub3I7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBtaW5vcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBuYW1lWzBdOworICBjaGFyIG5hbWVbMF07CiB9Owogc3RydWN0IGRsbV9wdXJnZV9wYXJhbXMgewotIF9fdTMyIG5vZGVpZDsKKyAgX191MzIgbm9kZWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwaWQ7CisgIF9fdTMyIHBpZDsKIH07CiBzdHJ1Y3QgZGxtX3dyaXRlX3JlcXVlc3QgewotIF9fdTMyIHZlcnNpb25bM107CisgIF9fdTMyIHZlcnNpb25bM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY21kOwotIF9fdTggaXM2NGJpdDsKLSBfX3U4IHVudXNlZFsyXTsKLSB1bmlvbiB7CisgIF9fdTggY21kOworICBfX3U4IGlzNjRiaXQ7CisgIF9fdTggdW51c2VkWzJdOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBkbG1fbG9ja19wYXJhbXMgbG9jazsKLSBzdHJ1Y3QgZGxtX2xzcGFjZV9wYXJhbXMgbHNwYWNlOwotIHN0cnVjdCBkbG1fcHVyZ2VfcGFyYW1zIHB1cmdlOwotIH0gaTsKKyAgICBzdHJ1Y3QgZGxtX2xvY2tfcGFyYW1zIGxvY2s7CisgICAgc3RydWN0IGRsbV9sc3BhY2VfcGFyYW1zIGxzcGFjZTsKKyAgICBzdHJ1Y3QgZGxtX3B1cmdlX3BhcmFtcyBwdXJnZTsKKyAgfSBpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZGxtX2RldmljZV92ZXJzaW9uIHsKLSBfX3UzMiB2ZXJzaW9uWzNdOworICBfX3UzMiB2ZXJzaW9uWzNdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZGxtX2xvY2tfcmVzdWx0IHsKLSBfX3UzMiB2ZXJzaW9uWzNdOwotIF9fdTMyIGxlbmd0aDsKLSB2b2lkIF9fdXNlciAqIHVzZXJfYXN0YWRkcjsKKyAgX191MzIgdmVyc2lvblszXTsKKyAgX191MzIgbGVuZ3RoOworICB2b2lkIF9fdXNlciAqIHVzZXJfYXN0YWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCBfX3VzZXIgKiB1c2VyX2FzdHBhcmFtOwotIHN0cnVjdCBkbG1fbGtzYiBfX3VzZXIgKiB1c2VyX2xrc2I7Ci0gc3RydWN0IGRsbV9sa3NiIGxrc2I7Ci0gX191OCBiYXN0X21vZGU7CisgIHZvaWQgX191c2VyICogdXNlcl9hc3RwYXJhbTsKKyAgc3RydWN0IGRsbV9sa3NiIF9fdXNlciAqIHVzZXJfbGtzYjsKKyAgc3RydWN0IGRsbV9sa3NiIGxrc2I7CisgIF9fdTggYmFzdF9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHVudXNlZFszXTsKLSBfX3UzMiBsdmJfb2Zmc2V0OworICBfX3U4IHVudXNlZFszXTsKKyAgX191MzIgbHZiX29mZnNldDsKIH07CiAjZGVmaW5lIERMTV9VU0VSX0xPQ0sgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtX25ldGxpbmsuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtX25ldGxpbmsuaAppbmRleCAyZWExMjYxLi5lMmJmNmIyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RsbV9uZXRsaW5rLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG1fbmV0bGluay5oCkBAIC0yMSw0NCArMjEsNDQgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERMTV9TVEFUVVNfV0FJVElORyA9IDEsCi0gRExNX1NUQVRVU19HUkFOVEVEID0gMiwKLSBETE1fU1RBVFVTX0NPTlZFUlQgPSAzLAorICBETE1fU1RBVFVTX1dBSVRJTkcgPSAxLAorICBETE1fU1RBVFVTX0dSQU5URUQgPSAyLAorICBETE1fU1RBVFVTX0NPTlZFUlQgPSAzLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERMTV9MT0NLX0RBVEFfVkVSU0lPTiAxCiBzdHJ1Y3QgZGxtX2xvY2tfZGF0YSB7Ci0gX191MTYgdmVyc2lvbjsKLSBfX3UzMiBsb2Nrc3BhY2VfaWQ7CisgIF9fdTE2IHZlcnNpb247CisgIF9fdTMyIGxvY2tzcGFjZV9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG5vZGVpZDsKLSBpbnQgb3ducGlkOwotIF9fdTMyIGlkOwotIF9fdTMyIHJlbWlkOworICBpbnQgbm9kZWlkOworICBpbnQgb3ducGlkOworICBfX3UzMiBpZDsKKyAgX191MzIgcmVtaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHhpZDsKLSBfX3M4IHN0YXR1czsKLSBfX3M4IGdybW9kZTsKLSBfX3M4IHJxbW9kZTsKKyAgX191NjQgeGlkOworICBfX3M4IHN0YXR1czsKKyAgX19zOCBncm1vZGU7CisgIF9fczggcnFtb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHRpbWVzdGFtcDsKLSBpbnQgcmVzb3VyY2VfbmFtZWxlbjsKLSBjaGFyIHJlc291cmNlX25hbWVbRExNX1JFU05BTUVfTUFYTEVOXTsKKyAgdW5zaWduZWQgbG9uZyB0aW1lc3RhbXA7CisgIGludCByZXNvdXJjZV9uYW1lbGVuOworICBjaGFyIHJlc291cmNlX25hbWVbRExNX1JFU05BTUVfTUFYTEVOXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gRExNX0NNRF9VTlNQRUMgPSAwLAotIERMTV9DTURfSEVMTE8sCi0gRExNX0NNRF9USU1FT1VULAorICBETE1fQ01EX1VOU1BFQyA9IDAsCisgIERMTV9DTURfSEVMTE8sCisgIERMTV9DTURfVElNRU9VVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19ETE1fQ01EX01BWCwKKyAgX19ETE1fQ01EX01BWCwKIH07CiAjZGVmaW5lIERMTV9DTURfTUFYIChfX0RMTV9DTURfTUFYIC0gMSkKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBETE1fVFlQRV9VTlNQRUMgPSAwLAotIERMTV9UWVBFX0xPQ0ssCi0gX19ETE1fVFlQRV9NQVgsCisgIERMTV9UWVBFX1VOU1BFQyA9IDAsCisgIERMTV9UWVBFX0xPQ0ssCisgIF9fRExNX1RZUEVfTUFYLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERMTV9UWVBFX01BWCAoX19ETE1fVFlQRV9NQVggLSAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG1fcGxvY2suaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtX3Bsb2NrLmgKaW5kZXggMTk0NmVmOS4uNDI1YmUzNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG1fcGxvY2suaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RsbV9wbG9jay5oCkBAIC0yNiwyOSArMjYsMjkgQEAKICNkZWZpbmUgRExNX1BMT0NLX1ZFUlNJT05fUEFUQ0ggMAogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERMTV9QTE9DS19PUF9MT0NLID0gMSwKLSBETE1fUExPQ0tfT1BfVU5MT0NLLAotIERMTV9QTE9DS19PUF9HRVQsCisgIERMTV9QTE9DS19PUF9MT0NLID0gMSwKKyAgRExNX1BMT0NLX09QX1VOTE9DSywKKyAgRExNX1BMT0NLX09QX0dFVCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETE1fUExPQ0tfRkxfQ0xPU0UgMQogc3RydWN0IGRsbV9wbG9ja19pbmZvIHsKLSBfX3UzMiB2ZXJzaW9uWzNdOwotIF9fdTggb3B0eXBlOworICBfX3UzMiB2ZXJzaW9uWzNdOworICBfX3U4IG9wdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBleDsKLSBfX3U4IHdhaXQ7Ci0gX191OCBmbGFnczsKLSBfX3UzMiBwaWQ7CisgIF9fdTggZXg7CisgIF9fdTggd2FpdDsKKyAgX191OCBmbGFnczsKKyAgX191MzIgcGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBub2RlaWQ7Ci0gX19zMzIgcnY7Ci0gX191MzIgZnNpZDsKLSBfX3U2NCBudW1iZXI7CisgIF9fczMyIG5vZGVpZDsKKyAgX19zMzIgcnY7CisgIF9fdTMyIGZzaWQ7CisgIF9fdTY0IG51bWJlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc3RhcnQ7Ci0gX191NjQgZW5kOwotIF9fdTY0IG93bmVyOworICBfX3U2NCBzdGFydDsKKyAgX191NjQgZW5kOworICBfX3U2NCBvd25lcjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RsbWNvbnN0YW50cy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbG1jb25zdGFudHMuaAppbmRleCBlMjRkNDJjLi40NzcxZDkyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RsbWNvbnN0YW50cy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZGxtY29uc3RhbnRzLmgKQEAgLTIxLDcgKzIxLDcgQEAKICNkZWZpbmUgRExNX0xPQ0tTUEFDRV9MRU4gNjQKICNkZWZpbmUgRExNX1JFU05BTUVfTUFYTEVOIDY0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBETE1fTE9DS19JViAoLTEpCisjZGVmaW5lIERMTV9MT0NLX0lWICgtIDEpCiAjZGVmaW5lIERMTV9MT0NLX05MIDAKICNkZWZpbmUgRExNX0xPQ0tfQ1IgMQogI2RlZmluZSBETE1fTE9DS19DVyAyCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RtLWlvY3RsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RtLWlvY3RsLmgKaW5kZXggZmJiNGNkOS4uOTFkY2NjMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbS1pb2N0bC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZG0taW9jdGwuaApAQCAtMjcsNzYgKzI3LDc2IEBACiAjZGVmaW5lIERNX1VVSURfTEVOIDEyOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkbV9pb2N0bCB7Ci0gX191MzIgdmVyc2lvblszXTsKLSBfX3UzMiBkYXRhX3NpemU7Ci0gX191MzIgZGF0YV9zdGFydDsKKyAgX191MzIgdmVyc2lvblszXTsKKyAgX191MzIgZGF0YV9zaXplOworICBfX3UzMiBkYXRhX3N0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0YXJnZXRfY291bnQ7Ci0gX19zMzIgb3Blbl9jb3VudDsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBldmVudF9ucjsKKyAgX191MzIgdGFyZ2V0X2NvdW50OworICBfX3MzMiBvcGVuX2NvdW50OworICBfX3UzMiBmbGFnczsKKyAgX191MzIgZXZlbnRfbnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBhZGRpbmc7Ci0gX191NjQgZGV2OwotIGNoYXIgbmFtZVtETV9OQU1FX0xFTl07Ci0gY2hhciB1dWlkW0RNX1VVSURfTEVOXTsKKyAgX191MzIgcGFkZGluZzsKKyAgX191NjQgZGV2OworICBjaGFyIG5hbWVbRE1fTkFNRV9MRU5dOworICBjaGFyIHV1aWRbRE1fVVVJRF9MRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGRhdGFbN107CisgIGNoYXIgZGF0YVs3XTsKIH07CiBzdHJ1Y3QgZG1fdGFyZ2V0X3NwZWMgewotIF9fdTY0IHNlY3Rvcl9zdGFydDsKKyAgX191NjQgc2VjdG9yX3N0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBsZW5ndGg7Ci0gX19zMzIgc3RhdHVzOwotIF9fdTMyIG5leHQ7Ci0gY2hhciB0YXJnZXRfdHlwZVtETV9NQVhfVFlQRV9OQU1FXTsKKyAgX191NjQgbGVuZ3RoOworICBfX3MzMiBzdGF0dXM7CisgIF9fdTMyIG5leHQ7CisgIGNoYXIgdGFyZ2V0X3R5cGVbRE1fTUFYX1RZUEVfTkFNRV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkbV90YXJnZXRfZGVwcyB7Ci0gX191MzIgY291bnQ7Ci0gX191MzIgcGFkZGluZzsKKyAgX191MzIgY291bnQ7CisgIF9fdTMyIHBhZGRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRldlswXTsKKyAgX191NjQgZGV2WzBdOwogfTsKIHN0cnVjdCBkbV9uYW1lX2xpc3QgewotIF9fdTY0IGRldjsKKyAgX191NjQgZGV2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBuZXh0OwotIGNoYXIgbmFtZVswXTsKKyAgX191MzIgbmV4dDsKKyAgY2hhciBuYW1lWzBdOwogfTsKIHN0cnVjdCBkbV90YXJnZXRfdmVyc2lvbnMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBuZXh0OwotIF9fdTMyIHZlcnNpb25bM107Ci0gY2hhciBuYW1lWzBdOworICBfX3UzMiBuZXh0OworICBfX3UzMiB2ZXJzaW9uWzNdOworICBjaGFyIG5hbWVbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkbV90YXJnZXRfbXNnIHsKLSBfX3U2NCBzZWN0b3I7Ci0gY2hhciBtZXNzYWdlWzBdOworICBfX3U2NCBzZWN0b3I7CisgIGNoYXIgbWVzc2FnZVswXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gRE1fVkVSU0lPTl9DTUQgPSAwLAotIERNX1JFTU9WRV9BTExfQ01ELAotIERNX0xJU1RfREVWSUNFU19DTUQsCisgIERNX1ZFUlNJT05fQ01EID0gMCwKKyAgRE1fUkVNT1ZFX0FMTF9DTUQsCisgIERNX0xJU1RfREVWSUNFU19DTUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERNX0RFVl9DUkVBVEVfQ01ELAotIERNX0RFVl9SRU1PVkVfQ01ELAotIERNX0RFVl9SRU5BTUVfQ01ELAotIERNX0RFVl9TVVNQRU5EX0NNRCwKKyAgRE1fREVWX0NSRUFURV9DTUQsCisgIERNX0RFVl9SRU1PVkVfQ01ELAorICBETV9ERVZfUkVOQU1FX0NNRCwKKyAgRE1fREVWX1NVU1BFTkRfQ01ELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBETV9ERVZfU1RBVFVTX0NNRCwKLSBETV9ERVZfV0FJVF9DTUQsCi0gRE1fVEFCTEVfTE9BRF9DTUQsCi0gRE1fVEFCTEVfQ0xFQVJfQ01ELAorICBETV9ERVZfU1RBVFVTX0NNRCwKKyAgRE1fREVWX1dBSVRfQ01ELAorICBETV9UQUJMRV9MT0FEX0NNRCwKKyAgRE1fVEFCTEVfQ0xFQVJfQ01ELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBETV9UQUJMRV9ERVBTX0NNRCwKLSBETV9UQUJMRV9TVEFUVVNfQ01ELAotIERNX0xJU1RfVkVSU0lPTlNfQ01ELAotIERNX1RBUkdFVF9NU0dfQ01ELAorICBETV9UQUJMRV9ERVBTX0NNRCwKKyAgRE1fVEFCTEVfU1RBVFVTX0NNRCwKKyAgRE1fTElTVF9WRVJTSU9OU19DTUQsCisgIERNX1RBUkdFVF9NU0dfQ01ELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBETV9ERVZfU0VUX0dFT01FVFJZX0NNRAorICBETV9ERVZfU0VUX0dFT01FVFJZX0NNRAogfTsKICNkZWZpbmUgRE1fSU9DVEwgMHhmZAogI2RlZmluZSBETV9WRVJTSU9OIF9JT1dSKERNX0lPQ1RMLCBETV9WRVJTSU9OX0NNRCwgc3RydWN0IGRtX2lvY3RsKQpAQCAtMTIxLDkgKzEyMSw5IEBACiAjZGVmaW5lIERNX0RFVl9TRVRfR0VPTUVUUlkgX0lPV1IoRE1fSU9DVEwsIERNX0RFVl9TRVRfR0VPTUVUUllfQ01ELCBzdHJ1Y3QgZG1faW9jdGwpCiAjZGVmaW5lIERNX1ZFUlNJT05fTUFKT1IgNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRE1fVkVSU0lPTl9NSU5PUiAyNworI2RlZmluZSBETV9WRVJTSU9OX01JTk9SIDI4CiAjZGVmaW5lIERNX1ZFUlNJT05fUEFUQ0hMRVZFTCAwCi0jZGVmaW5lIERNX1ZFUlNJT05fRVhUUkEgIi1pb2N0bCAoMjAxMy0xMC0zMCkiCisjZGVmaW5lIERNX1ZFUlNJT05fRVhUUkEgIi1pb2N0bCgyMDE0LTA5LTE3KSIKICNkZWZpbmUgRE1fUkVBRE9OTFlfRkxBRyAoMSA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRE1fU1VTUEVORF9GTEFHICgxIDw8IDEpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RtLWxvZy11c2Vyc3BhY2UuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZG0tbG9nLXVzZXJzcGFjZS5oCmluZGV4IDQ3ZDQ1ZjcuLjFjZTAwZjIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZG0tbG9nLXVzZXJzcGFjZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZG0tbG9nLXVzZXJzcGFjZS5oCkBAIC00MiwyMCArNDIsMjAgQEAKICNkZWZpbmUgRE1fVUxPR19JU19SRU1PVEVfUkVDT1ZFUklORyAxNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRE1fVUxPR19SRVFVRVNUX01BU0sgMHhGRgotI2RlZmluZSBETV9VTE9HX1JFUVVFU1RfVFlQRShyZXF1ZXN0X3R5cGUpICAgKERNX1VMT0dfUkVRVUVTVF9NQVNLICYgKHJlcXVlc3RfdHlwZSkpCisjZGVmaW5lIERNX1VMT0dfUkVRVUVTVF9UWVBFKHJlcXVlc3RfdHlwZSkgKERNX1VMT0dfUkVRVUVTVF9NQVNLICYgKHJlcXVlc3RfdHlwZSkpCiAjZGVmaW5lIERNX1VMT0dfUkVRVUVTVF9WRVJTSU9OIDMKIHN0cnVjdCBkbV91bG9nX3JlcXVlc3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBsdWlkOwotIGNoYXIgdXVpZFtETV9VVUlEX0xFTl07Ci0gY2hhciBwYWRkaW5nWzNdOwotIHVpbnQzMl90IHZlcnNpb247CisgIHVpbnQ2NF90IGx1aWQ7CisgIGNoYXIgdXVpZFtETV9VVUlEX0xFTl07CisgIGNoYXIgcGFkZGluZ1szXTsKKyAgdWludDMyX3QgdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50MzJfdCBlcnJvcjsKLSB1aW50MzJfdCBzZXE7Ci0gdWludDMyX3QgcmVxdWVzdF90eXBlOwotIHVpbnQzMl90IGRhdGFfc2l6ZTsKKyAgaW50MzJfdCBlcnJvcjsKKyAgdWludDMyX3Qgc2VxOworICB1aW50MzJfdCByZXF1ZXN0X3R5cGU7CisgIHVpbnQzMl90IGRhdGFfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBkYXRhWzBdOworICBjaGFyIGRhdGFbMF07CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RuLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RuLmgKaW5kZXggMDEzYTAzZi4uNWUyMWJkOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZG4uaApAQCAtNzYsNTcgKzc2LDU3IEBACiAjZGVmaW5lIFNERl9VSUNQUk9YWSA0CiBzdHJ1Y3QgZG5fbmFkZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgYV9sZW47Ci0gX191OCBhX2FkZHJbRE5fTUFYQURETF07CisgIF9fbGUxNiBhX2xlbjsKKyAgX191OCBhX2FkZHJbRE5fTUFYQURETF07CiB9Owogc3RydWN0IHNvY2thZGRyX2RuIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2RuX2ZhbWlseTsKLSBfX3U4IHNkbl9mbGFnczsKLSBfX3U4IHNkbl9vYmpudW07Ci0gX19sZTE2IHNkbl9vYmpuYW1lbDsKKyAgX191MTYgc2RuX2ZhbWlseTsKKyAgX191OCBzZG5fZmxhZ3M7CisgIF9fdTggc2RuX29iam51bTsKKyAgX19sZTE2IHNkbl9vYmpuYW1lbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzZG5fb2JqbmFtZVtETl9NQVhPQkpMXTsKLSBzdHJ1Y3QgZG5fbmFkZHIgc2RuX2FkZDsKKyAgX191OCBzZG5fb2JqbmFtZVtETl9NQVhPQkpMXTsKKyAgc3RydWN0IGRuX25hZGRyIHNkbl9hZGQ7CiB9OwogI2RlZmluZSBzZG5fbm9kZWFkZHJsIHNkbl9hZGQuYV9sZW4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIHNkbl9ub2RlYWRkciBzZG5fYWRkLmFfYWRkcgogc3RydWN0IG9wdGRhdGFfZG4gewotIF9fbGUxNiBvcHRfc3RhdHVzOworICBfX2xlMTYgb3B0X3N0YXR1czsKICNkZWZpbmUgb3B0X3N0cyBvcHRfc3RhdHVzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiBvcHRfb3B0bDsKLSBfX3U4IG9wdF9kYXRhWzE2XTsKKyAgX19sZTE2IG9wdF9vcHRsOworICBfX3U4IG9wdF9kYXRhWzE2XTsKIH07CiBzdHJ1Y3QgYWNjZXNzZGF0YV9kbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYWNjX2FjY2w7Ci0gX191OCBhY2NfYWNjW0ROX01BWEFDQ0xdOwotIF9fdTggYWNjX3Bhc3NsOwotIF9fdTggYWNjX3Bhc3NbRE5fTUFYQUNDTF07CisgIF9fdTggYWNjX2FjY2w7CisgIF9fdTggYWNjX2FjY1tETl9NQVhBQ0NMXTsKKyAgX191OCBhY2NfcGFzc2w7CisgIF9fdTggYWNjX3Bhc3NbRE5fTUFYQUNDTF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYWNjX3VzZXJsOwotIF9fdTggYWNjX3VzZXJbRE5fTUFYQUNDTF07CisgIF9fdTggYWNjX3VzZXJsOworICBfX3U4IGFjY191c2VyW0ROX01BWEFDQ0xdOwogfTsKIHN0cnVjdCBsaW5raW5mb19kbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGlkbl9zZWdzaXplOwotIF9fdTggaWRuX2xpbmtzdGF0ZTsKKyAgX191MTYgaWRuX3NlZ3NpemU7CisgIF9fdTggaWRuX2xpbmtzdGF0ZTsKIH07CiB1bmlvbiBldGhlcmFkZHJlc3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRuZV9hZGRyW0VUSF9BTEVOXTsKLSBzdHJ1Y3QgewotIF9fdTggZG5lX2hpb3JkWzRdOwotIF9fdTggZG5lX25vZGVhZGRyWzJdOworICBfX3U4IGRuZV9hZGRyW0VUSF9BTEVOXTsKKyAgc3RydWN0IHsKKyAgICBfX3U4IGRuZV9oaW9yZFs0XTsKKyAgICBfX3U4IGRuZV9ub2RlYWRkclsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBkbmVfcmVtb3RlOworICB9IGRuZV9yZW1vdGU7CiB9Owogc3RydWN0IGRuX2FkZHIgewotIF9fbGUxNiBkbmFfZmFtaWx5OworICBfX2xlMTYgZG5hX2ZhbWlseTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gZXRoZXJhZGRyZXNzIGRuYV9uZXRhZGRyOworICB1bmlvbiBldGhlcmFkZHJlc3MgZG5hX25ldGFkZHI7CiB9OwogI2RlZmluZSBERUNORVRfSU9DVExfQkFTRSAweDg5CiAjZGVmaW5lIFNJT0NTTkVUQUREUiBfSU9XKERFQ05FVF9JT0NUTF9CQVNFLCAweGUwLCBzdHJ1Y3QgZG5fbmFkZHIpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RxYmxrX3hmcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kcWJsa194ZnMuaAppbmRleCAzMWIzOWQ2Li4zOTZlNjk3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2RxYmxrX3hmcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHFibGtfeGZzLmgKQEAgLTE5LDkgKzE5LDkgQEAKICNpZm5kZWYgX0xJTlVYX0RRQkxLX1hGU19ICiAjZGVmaW5lIF9MSU5VWF9EUUJMS19YRlNfSAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+Ci0jZGVmaW5lIFhRTV9DTUQoeCkgKCgnWCc8PDgpKyh4KSkKKyNkZWZpbmUgWFFNX0NNRCh4KSAoKCdYJyA8PCA4KSArICh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFhRTV9DT01NQU5EKHgpICgoKHgpICYgKDB4ZmY8PDgpKSA9PSAoJ1gnPDw4KSkKKyNkZWZpbmUgWFFNX0NPTU1BTkQoeCkgKCgoeCkgJiAoMHhmZiA8PCA4KSkgPT0gKCdYJyA8PCA4KSkKICNkZWZpbmUgWFFNX1VTUlFVT1RBIDAKICNkZWZpbmUgWFFNX0dSUFFVT1RBIDEKICNkZWZpbmUgWFFNX1BSSlFVT1RBIDIKQEAgLTM5LDEyMCArMzksMTIwIEBACiAjZGVmaW5lIFFfWEdFVFFTVEFUViBYUU1fQ01EKDgpCiAjZGVmaW5lIEZTX0RRVU9UX1ZFUlNJT04gMQogdHlwZWRlZiBzdHJ1Y3QgZnNfZGlza19xdW90YSB7Ci0gX19zOCBkX3ZlcnNpb247CisgIF9fczggZF92ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3M4IGRfZmxhZ3M7Ci0gX191MTYgZF9maWVsZG1hc2s7Ci0gX191MzIgZF9pZDsKLSBfX3U2NCBkX2Jsa19oYXJkbGltaXQ7CisgIF9fczggZF9mbGFnczsKKyAgX191MTYgZF9maWVsZG1hc2s7CisgIF9fdTMyIGRfaWQ7CisgIF9fdTY0IGRfYmxrX2hhcmRsaW1pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZF9ibGtfc29mdGxpbWl0OwotIF9fdTY0IGRfaW5vX2hhcmRsaW1pdDsKLSBfX3U2NCBkX2lub19zb2Z0bGltaXQ7Ci0gX191NjQgZF9iY291bnQ7CisgIF9fdTY0IGRfYmxrX3NvZnRsaW1pdDsKKyAgX191NjQgZF9pbm9faGFyZGxpbWl0OworICBfX3U2NCBkX2lub19zb2Z0bGltaXQ7CisgIF9fdTY0IGRfYmNvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkX2ljb3VudDsKLSBfX3MzMiBkX2l0aW1lcjsKLSBfX3MzMiBkX2J0aW1lcjsKLSBfX3UxNiBkX2l3YXJuczsKKyAgX191NjQgZF9pY291bnQ7CisgIF9fczMyIGRfaXRpbWVyOworICBfX3MzMiBkX2J0aW1lcjsKKyAgX191MTYgZF9pd2FybnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGRfYndhcm5zOwotIF9fczMyIGRfcGFkZGluZzI7Ci0gX191NjQgZF9ydGJfaGFyZGxpbWl0OwotIF9fdTY0IGRfcnRiX3NvZnRsaW1pdDsKKyAgX191MTYgZF9id2FybnM7CisgIF9fczMyIGRfcGFkZGluZzI7CisgIF9fdTY0IGRfcnRiX2hhcmRsaW1pdDsKKyAgX191NjQgZF9ydGJfc29mdGxpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkX3J0YmNvdW50OwotIF9fczMyIGRfcnRidGltZXI7Ci0gX191MTYgZF9ydGJ3YXJuczsKLSBfX3MxNiBkX3BhZGRpbmczOworICBfX3U2NCBkX3J0YmNvdW50OworICBfX3MzMiBkX3J0YnRpbWVyOworICBfX3UxNiBkX3J0Yndhcm5zOworICBfX3MxNiBkX3BhZGRpbmczOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGRfcGFkZGluZzRbOF07CisgIGNoYXIgZF9wYWRkaW5nNFs4XTsKIH0gZnNfZGlza19xdW90YV90OwotI2RlZmluZSBGU19EUV9JU09GVCAoMTw8MCkKLSNkZWZpbmUgRlNfRFFfSUhBUkQgKDE8PDEpCisjZGVmaW5lIEZTX0RRX0lTT0ZUICgxIDw8IDApCisjZGVmaW5lIEZTX0RRX0lIQVJEICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBGU19EUV9CU09GVCAoMTw8MikKLSNkZWZpbmUgRlNfRFFfQkhBUkQgKDE8PDMpCi0jZGVmaW5lIEZTX0RRX1JUQlNPRlQgKDE8PDQpCi0jZGVmaW5lIEZTX0RRX1JUQkhBUkQgKDE8PDUpCisjZGVmaW5lIEZTX0RRX0JTT0ZUICgxIDw8IDIpCisjZGVmaW5lIEZTX0RRX0JIQVJEICgxIDw8IDMpCisjZGVmaW5lIEZTX0RRX1JUQlNPRlQgKDEgPDwgNCkKKyNkZWZpbmUgRlNfRFFfUlRCSEFSRCAoMSA8PCA1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRlNfRFFfTElNSVRfTUFTSyAoRlNfRFFfSVNPRlQgfCBGU19EUV9JSEFSRCB8IEZTX0RRX0JTT0ZUIHwgICBGU19EUV9CSEFSRCB8IEZTX0RRX1JUQlNPRlQgfCBGU19EUV9SVEJIQVJEKQotI2RlZmluZSBGU19EUV9CVElNRVIgKDE8PDYpCi0jZGVmaW5lIEZTX0RRX0lUSU1FUiAoMTw8NykKLSNkZWZpbmUgRlNfRFFfUlRCVElNRVIgKDE8PDgpCisjZGVmaW5lIEZTX0RRX0xJTUlUX01BU0sgKEZTX0RRX0lTT0ZUIHwgRlNfRFFfSUhBUkQgfCBGU19EUV9CU09GVCB8IEZTX0RRX0JIQVJEIHwgRlNfRFFfUlRCU09GVCB8IEZTX0RRX1JUQkhBUkQpCisjZGVmaW5lIEZTX0RRX0JUSU1FUiAoMSA8PCA2KQorI2RlZmluZSBGU19EUV9JVElNRVIgKDEgPDwgNykKKyNkZWZpbmUgRlNfRFFfUlRCVElNRVIgKDEgPDwgOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTX0RRX1RJTUVSX01BU0sgKEZTX0RRX0JUSU1FUiB8IEZTX0RRX0lUSU1FUiB8IEZTX0RRX1JUQlRJTUVSKQotI2RlZmluZSBGU19EUV9CV0FSTlMgKDE8PDkpCi0jZGVmaW5lIEZTX0RRX0lXQVJOUyAoMTw8MTApCi0jZGVmaW5lIEZTX0RRX1JUQldBUk5TICgxPDwxMSkKKyNkZWZpbmUgRlNfRFFfQldBUk5TICgxIDw8IDkpCisjZGVmaW5lIEZTX0RRX0lXQVJOUyAoMSA8PCAxMCkKKyNkZWZpbmUgRlNfRFFfUlRCV0FSTlMgKDEgPDwgMTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19EUV9XQVJOU19NQVNLIChGU19EUV9CV0FSTlMgfCBGU19EUV9JV0FSTlMgfCBGU19EUV9SVEJXQVJOUykKLSNkZWZpbmUgRlNfRFFfQkNPVU5UICgxPDwxMikKLSNkZWZpbmUgRlNfRFFfSUNPVU5UICgxPDwxMykKLSNkZWZpbmUgRlNfRFFfUlRCQ09VTlQgKDE8PDE0KQorI2RlZmluZSBGU19EUV9CQ09VTlQgKDEgPDwgMTIpCisjZGVmaW5lIEZTX0RRX0lDT1VOVCAoMSA8PCAxMykKKyNkZWZpbmUgRlNfRFFfUlRCQ09VTlQgKDEgPDwgMTQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19EUV9BQ0NUX01BU0sgKEZTX0RRX0JDT1VOVCB8IEZTX0RRX0lDT1VOVCB8IEZTX0RRX1JUQkNPVU5UKQotI2RlZmluZSBGU19RVU9UQV9VRFFfQUNDVCAoMTw8MCkKLSNkZWZpbmUgRlNfUVVPVEFfVURRX0VORkQgKDE8PDEpCi0jZGVmaW5lIEZTX1FVT1RBX0dEUV9BQ0NUICgxPDwyKQorI2RlZmluZSBGU19RVU9UQV9VRFFfQUNDVCAoMSA8PCAwKQorI2RlZmluZSBGU19RVU9UQV9VRFFfRU5GRCAoMSA8PCAxKQorI2RlZmluZSBGU19RVU9UQV9HRFFfQUNDVCAoMSA8PCAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRlNfUVVPVEFfR0RRX0VORkQgKDE8PDMpCi0jZGVmaW5lIEZTX1FVT1RBX1BEUV9BQ0NUICgxPDw0KQotI2RlZmluZSBGU19RVU9UQV9QRFFfRU5GRCAoMTw8NSkKLSNkZWZpbmUgRlNfVVNFUl9RVU9UQSAoMTw8MCkKKyNkZWZpbmUgRlNfUVVPVEFfR0RRX0VORkQgKDEgPDwgMykKKyNkZWZpbmUgRlNfUVVPVEFfUERRX0FDQ1QgKDEgPDwgNCkKKyNkZWZpbmUgRlNfUVVPVEFfUERRX0VORkQgKDEgPDwgNSkKKyNkZWZpbmUgRlNfVVNFUl9RVU9UQSAoMSA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRlNfUFJPSl9RVU9UQSAoMTw8MSkKLSNkZWZpbmUgRlNfR1JPVVBfUVVPVEEgKDE8PDIpCisjZGVmaW5lIEZTX1BST0pfUVVPVEEgKDEgPDwgMSkKKyNkZWZpbmUgRlNfR1JPVVBfUVVPVEEgKDEgPDwgMikKICNkZWZpbmUgRlNfUVNUQVRfVkVSU0lPTiAxCiB0eXBlZGVmIHN0cnVjdCBmc19xZmlsZXN0YXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBxZnNfaW5vOwotIF9fdTY0IHFmc19uYmxrczsKLSBfX3UzMiBxZnNfbmV4dGVudHM7CisgIF9fdTY0IHFmc19pbm87CisgIF9fdTY0IHFmc19uYmxrczsKKyAgX191MzIgcWZzX25leHRlbnRzOwogfSBmc19xZmlsZXN0YXRfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBmc19xdW90YV9zdGF0IHsKLSBfX3M4IHFzX3ZlcnNpb247Ci0gX191MTYgcXNfZmxhZ3M7Ci0gX19zOCBxc19wYWQ7CisgIF9fczggcXNfdmVyc2lvbjsKKyAgX191MTYgcXNfZmxhZ3M7CisgIF9fczggcXNfcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBmc19xZmlsZXN0YXRfdCBxc191cXVvdGE7Ci0gZnNfcWZpbGVzdGF0X3QgcXNfZ3F1b3RhOwotIF9fdTMyIHFzX2luY29yZWRxczsKLSBfX3MzMiBxc19idGltZWxpbWl0OworICBmc19xZmlsZXN0YXRfdCBxc191cXVvdGE7CisgIGZzX3FmaWxlc3RhdF90IHFzX2dxdW90YTsKKyAgX191MzIgcXNfaW5jb3JlZHFzOworICBfX3MzMiBxc19idGltZWxpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBxc19pdGltZWxpbWl0OwotIF9fczMyIHFzX3J0YnRpbWVsaW1pdDsKLSBfX3UxNiBxc19id2FybmxpbWl0OwotIF9fdTE2IHFzX2l3YXJubGltaXQ7CisgIF9fczMyIHFzX2l0aW1lbGltaXQ7CisgIF9fczMyIHFzX3J0YnRpbWVsaW1pdDsKKyAgX191MTYgcXNfYndhcm5saW1pdDsKKyAgX191MTYgcXNfaXdhcm5saW1pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGZzX3F1b3RhX3N0YXRfdDsKICNkZWZpbmUgRlNfUVNUQVRWX1ZFUlNJT04xIDEKIHN0cnVjdCBmc19xZmlsZXN0YXR2IHsKLSBfX3U2NCBxZnNfaW5vOworICBfX3U2NCBxZnNfaW5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBxZnNfbmJsa3M7Ci0gX191MzIgcWZzX25leHRlbnRzOwotIF9fdTMyIHFmc19wYWQ7CisgIF9fdTY0IHFmc19uYmxrczsKKyAgX191MzIgcWZzX25leHRlbnRzOworICBfX3UzMiBxZnNfcGFkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnNfcXVvdGFfc3RhdHYgewotIF9fczggcXNfdmVyc2lvbjsKLSBfX3U4IHFzX3BhZDE7Ci0gX191MTYgcXNfZmxhZ3M7CisgIF9fczggcXNfdmVyc2lvbjsKKyAgX191OCBxc19wYWQxOworICBfX3UxNiBxc19mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcXNfaW5jb3JlZHFzOwotIHN0cnVjdCBmc19xZmlsZXN0YXR2IHFzX3VxdW90YTsKLSBzdHJ1Y3QgZnNfcWZpbGVzdGF0diBxc19ncXVvdGE7Ci0gc3RydWN0IGZzX3FmaWxlc3RhdHYgcXNfcHF1b3RhOworICBfX3UzMiBxc19pbmNvcmVkcXM7CisgIHN0cnVjdCBmc19xZmlsZXN0YXR2IHFzX3VxdW90YTsKKyAgc3RydWN0IGZzX3FmaWxlc3RhdHYgcXNfZ3F1b3RhOworICBzdHJ1Y3QgZnNfcWZpbGVzdGF0diBxc19wcXVvdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIHFzX2J0aW1lbGltaXQ7Ci0gX19zMzIgcXNfaXRpbWVsaW1pdDsKLSBfX3MzMiBxc19ydGJ0aW1lbGltaXQ7Ci0gX191MTYgcXNfYndhcm5saW1pdDsKKyAgX19zMzIgcXNfYnRpbWVsaW1pdDsKKyAgX19zMzIgcXNfaXRpbWVsaW1pdDsKKyAgX19zMzIgcXNfcnRidGltZWxpbWl0OworICBfX3UxNiBxc19id2FybmxpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBxc19pd2FybmxpbWl0OwotIF9fdTY0IHFzX3BhZDJbOF07CisgIF9fdTE2IHFzX2l3YXJubGltaXQ7CisgIF9fdTY0IHFzX3BhZDJbOF07CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvYXVkaW8uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL2F1ZGlvLmgKaW5kZXggNWUxYjFhNC4uNjZjMmVlZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvYXVkaW8uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9hdWRpby5oCkBAIC0yMSw4NCArMjEsODMgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogdHlwZWRlZiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQVVESU9fU09VUkNFX0RFTVVYLAotIEFVRElPX1NPVVJDRV9NRU1PUlkKKyAgQVVESU9fU09VUkNFX0RFTVVYLAorICBBVURJT19TT1VSQ0VfTUVNT1JZCiB9IGF1ZGlvX3N0cmVhbV9zb3VyY2VfdDsKIHR5cGVkZWYgZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEFVRElPX1NUT1BQRUQsCi0gQVVESU9fUExBWUlORywKLSBBVURJT19QQVVTRUQKKyAgQVVESU9fU1RPUFBFRCwKKyAgQVVESU9fUExBWUlORywKKyAgQVVESU9fUEFVU0VECiB9IGF1ZGlvX3BsYXlfc3RhdGVfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIGVudW0gewotIEFVRElPX1NURVJFTywKLSBBVURJT19NT05PX0xFRlQsCi0gQVVESU9fTU9OT19SSUdIVCwKKyAgQVVESU9fU1RFUkVPLAorICBBVURJT19NT05PX0xFRlQsCisgIEFVRElPX01PTk9fUklHSFQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEFVRElPX01PTk8sCi0gQVVESU9fU1RFUkVPX1NXQVBQRUQKKyAgQVVESU9fTU9OTywKKyAgQVVESU9fU1RFUkVPX1NXQVBQRUQKIH0gYXVkaW9fY2hhbm5lbF9zZWxlY3RfdDsKIHR5cGVkZWYgc3RydWN0IGF1ZGlvX21peGVyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHZvbHVtZV9sZWZ0OwotIHVuc2lnbmVkIGludCB2b2x1bWVfcmlnaHQ7CisgIHVuc2lnbmVkIGludCB2b2x1bWVfbGVmdDsKKyAgdW5zaWduZWQgaW50IHZvbHVtZV9yaWdodDsKIH0gYXVkaW9fbWl4ZXJfdDsKIHR5cGVkZWYgc3RydWN0IGF1ZGlvX3N0YXR1cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBBVl9zeW5jX3N0YXRlOwotIGludCBtdXRlX3N0YXRlOwotIGF1ZGlvX3BsYXlfc3RhdGVfdCBwbGF5X3N0YXRlOwotIGF1ZGlvX3N0cmVhbV9zb3VyY2VfdCBzdHJlYW1fc291cmNlOworICBpbnQgQVZfc3luY19zdGF0ZTsKKyAgaW50IG11dGVfc3RhdGU7CisgIGF1ZGlvX3BsYXlfc3RhdGVfdCBwbGF5X3N0YXRlOworICBhdWRpb19zdHJlYW1fc291cmNlX3Qgc3RyZWFtX3NvdXJjZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYXVkaW9fY2hhbm5lbF9zZWxlY3RfdCBjaGFubmVsX3NlbGVjdDsKLSBpbnQgYnlwYXNzX21vZGU7Ci0gYXVkaW9fbWl4ZXJfdCBtaXhlcl9zdGF0ZTsKKyAgYXVkaW9fY2hhbm5lbF9zZWxlY3RfdCBjaGFubmVsX3NlbGVjdDsKKyAgaW50IGJ5cGFzc19tb2RlOworICBhdWRpb19taXhlcl90IG1peGVyX3N0YXRlOwogfSBhdWRpb19zdGF0dXNfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi10eXBlZGVmCi1zdHJ1Y3QgYXVkaW9fa2FyYW9rZSB7Ci0gaW50IHZvY2FsMTsKLSBpbnQgdm9jYWwyOwordHlwZWRlZiBzdHJ1Y3QgYXVkaW9fa2FyYW9rZSB7CisgIGludCB2b2NhbDE7CisgIGludCB2b2NhbDI7CisgIGludCBtZWxvZHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBtZWxvZHk7CiB9IGF1ZGlvX2thcmFva2VfdDsKIHR5cGVkZWYgX191MTYgYXVkaW9fYXR0cmlidXRlc190OwogI2RlZmluZSBBVURJT19DQVBfRFRTIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElPX0NBUF9MUENNIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElPX0NBUF9NUDEgNAogI2RlZmluZSBBVURJT19DQVBfTVAyIDgKICNkZWZpbmUgQVVESU9fQ0FQX01QMyAxNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESU9fQ0FQX0FBQyAzMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESU9fQ0FQX09HRyA2NAogI2RlZmluZSBBVURJT19DQVBfU0REUyAxMjgKICNkZWZpbmUgQVVESU9fQ0FQX0FDMyAyNTYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElPX1NUT1AgX0lPKCdvJywgMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElPX1BMQVkgX0lPKCdvJywgMikKICNkZWZpbmUgQVVESU9fUEFVU0UgX0lPKCdvJywgMykKICNkZWZpbmUgQVVESU9fQ09OVElOVUUgX0lPKCdvJywgNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElPX1NFTEVDVF9TT1VSQ0UgX0lPKCdvJywgNSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElPX1NFVF9NVVRFIF9JTygnbycsIDYpCiAjZGVmaW5lIEFVRElPX1NFVF9BVl9TWU5DIF9JTygnbycsIDcpCiAjZGVmaW5lIEFVRElPX1NFVF9CWVBBU1NfTU9ERSBfSU8oJ28nLCA4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESU9fQ0hBTk5FTF9TRUxFQ1QgX0lPKCdvJywgOSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElPX0dFVF9TVEFUVVMgX0lPUignbycsIDEwLCBhdWRpb19zdGF0dXNfdCkKICNkZWZpbmUgQVVESU9fR0VUX0NBUEFCSUxJVElFUyBfSU9SKCdvJywgMTEsIHVuc2lnbmVkIGludCkKICNkZWZpbmUgQVVESU9fQ0xFQVJfQlVGRkVSIF9JTygnbycsIDEyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESU9fU0VUX0lEIF9JTygnbycsIDEzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVVESU9fU0VUX01JWEVSIF9JT1coJ28nLCAxNCwgYXVkaW9fbWl4ZXJfdCkKICNkZWZpbmUgQVVESU9fU0VUX1NUUkVBTVRZUEUgX0lPKCdvJywgMTUpCiAjZGVmaW5lIEFVRElPX1NFVF9FWFRfSUQgX0lPKCdvJywgMTYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBVURJT19TRVRfQVRUUklCVVRFUyBfSU9XKCdvJywgMTcsIGF1ZGlvX2F0dHJpYnV0ZXNfdCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFVRElPX1NFVF9LQVJBT0tFIF9JT1coJ28nLCAxOCwgYXVkaW9fa2FyYW9rZV90KQogI2RlZmluZSBBVURJT19HRVRfUFRTIF9JT1IoJ28nLCAxOSwgX191NjQpCiAjZGVmaW5lIEFVRElPX0JJTElOR1VBTF9DSEFOTkVMX1NFTEVDVCBfSU8oJ28nLCAyMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9jYS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvY2EuaAppbmRleCAxMzliZDJkLi4yZWVkNjU2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9jYS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL2NhLmgKQEAgLTE5LDU0ICsxOSw1NCBAQAogI2lmbmRlZiBfRFZCQ0FfSF8KICNkZWZpbmUgX0RWQkNBX0hfCiB0eXBlZGVmIHN0cnVjdCBjYV9zbG90X2luZm8gewotIGludCBudW07CisgIGludCBudW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0eXBlOworICBpbnQgdHlwZTsKICNkZWZpbmUgQ0FfQ0kgMQogI2RlZmluZSBDQV9DSV9MSU5LIDIKICNkZWZpbmUgQ0FfQ0lfUEhZUyA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQV9ERVNDUiA4CiAjZGVmaW5lIENBX1NDIDEyOAotIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgaW50IGZsYWdzOwogI2RlZmluZSBDQV9DSV9NT0RVTEVfUFJFU0VOVCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDQV9DSV9NT0RVTEVfUkVBRFkgMgogfSBjYV9zbG90X2luZm9fdDsKIHR5cGVkZWYgc3RydWN0IGNhX2Rlc2NyX2luZm8gewotIHVuc2lnbmVkIGludCBudW07CisgIHVuc2lnbmVkIGludCBudW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0eXBlOworICB1bnNpZ25lZCBpbnQgdHlwZTsKICNkZWZpbmUgQ0FfRUNEIDEKICNkZWZpbmUgQ0FfTkRTIDIKICNkZWZpbmUgQ0FfRFNTIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGNhX2Rlc2NyX2luZm9fdDsKIHR5cGVkZWYgc3RydWN0IGNhX2NhcHMgewotIHVuc2lnbmVkIGludCBzbG90X251bTsKLSB1bnNpZ25lZCBpbnQgc2xvdF90eXBlOworICB1bnNpZ25lZCBpbnQgc2xvdF9udW07CisgIHVuc2lnbmVkIGludCBzbG90X3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBkZXNjcl9udW07Ci0gdW5zaWduZWQgaW50IGRlc2NyX3R5cGU7CisgIHVuc2lnbmVkIGludCBkZXNjcl9udW07CisgIHVuc2lnbmVkIGludCBkZXNjcl90eXBlOwogfSBjYV9jYXBzX3Q7CiB0eXBlZGVmIHN0cnVjdCBjYV9tc2cgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgaW5kZXg7Ci0gdW5zaWduZWQgaW50IHR5cGU7Ci0gdW5zaWduZWQgaW50IGxlbmd0aDsKLSB1bnNpZ25lZCBjaGFyIG1zZ1syNTZdOworICB1bnNpZ25lZCBpbnQgaW5kZXg7CisgIHVuc2lnbmVkIGludCB0eXBlOworICB1bnNpZ25lZCBpbnQgbGVuZ3RoOworICB1bnNpZ25lZCBjaGFyIG1zZ1syNTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gY2FfbXNnX3Q7CiB0eXBlZGVmIHN0cnVjdCBjYV9kZXNjciB7Ci0gdW5zaWduZWQgaW50IGluZGV4OwotIHVuc2lnbmVkIGludCBwYXJpdHk7CisgIHVuc2lnbmVkIGludCBpbmRleDsKKyAgdW5zaWduZWQgaW50IHBhcml0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBjd1s4XTsKKyAgdW5zaWduZWQgY2hhciBjd1s4XTsKIH0gY2FfZGVzY3JfdDsKIHR5cGVkZWYgc3RydWN0IGNhX3BpZCB7Ci0gdW5zaWduZWQgaW50IHBpZDsKKyAgdW5zaWduZWQgaW50IHBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGluZGV4OworICBpbnQgaW5kZXg7CiB9IGNhX3BpZF90OwogI2RlZmluZSBDQV9SRVNFVCBfSU8oJ28nLCAxMjgpCiAjZGVmaW5lIENBX0dFVF9DQVAgX0lPUignbycsIDEyOSwgY2FfY2Fwc190KQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvZG14LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9kbXguaAppbmRleCBiOTM3ODJhLi44ZTFkNzE4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9kbXguaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9kbXguaApAQCAtMjIsMTI0ICsyMiwxMTcgQEAKICNpbmNsdWRlIDx0aW1lLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETVhfRklMVEVSX1NJWkUgMTYKLXR5cGVkZWYgZW51bQotewotIERNWF9PVVRfREVDT0RFUiwKK3R5cGVkZWYgZW51bSB7CisgIERNWF9PVVRfREVDT0RFUiwKKyAgRE1YX09VVF9UQVAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERNWF9PVVRfVEFQLAotIERNWF9PVVRfVFNfVEFQLAotIERNWF9PVVRfVFNERU1VWF9UQVAKKyAgRE1YX09VVF9UU19UQVAsCisgIERNWF9PVVRfVFNERU1VWF9UQVAKIH0gZG14X291dHB1dF90OwordHlwZWRlZiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi10eXBlZGVmIGVudW0KLXsKLSBETVhfSU5fRlJPTlRFTkQsCi0gRE1YX0lOX0RWUgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgRE1YX0lOX0ZST05URU5ELAorICBETVhfSU5fRFZSCiB9IGRteF9pbnB1dF90OwotdHlwZWRlZiBlbnVtIGRteF90c19wZXMKLXsKLSBETVhfUEVTX0FVRElPMCwKK3R5cGVkZWYgZW51bSBkbXhfdHNfcGVzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRE1YX1BFU19WSURFTzAsCi0gRE1YX1BFU19URUxFVEVYVDAsCi0gRE1YX1BFU19TVUJUSVRMRTAsCi0gRE1YX1BFU19QQ1IwLAorICBETVhfUEVTX0FVRElPMCwKKyAgRE1YX1BFU19WSURFTzAsCisgIERNWF9QRVNfVEVMRVRFWFQwLAorICBETVhfUEVTX1NVQlRJVExFMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRE1YX1BFU19BVURJTzEsCi0gRE1YX1BFU19WSURFTzEsCi0gRE1YX1BFU19URUxFVEVYVDEsCi0gRE1YX1BFU19TVUJUSVRMRTEsCisgIERNWF9QRVNfUENSMCwKKyAgRE1YX1BFU19BVURJTzEsCisgIERNWF9QRVNfVklERU8xLAorICBETVhfUEVTX1RFTEVURVhUMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRE1YX1BFU19QQ1IxLAotIERNWF9QRVNfQVVESU8yLAotIERNWF9QRVNfVklERU8yLAotIERNWF9QRVNfVEVMRVRFWFQyLAorICBETVhfUEVTX1NVQlRJVExFMSwKKyAgRE1YX1BFU19QQ1IxLAorICBETVhfUEVTX0FVRElPMiwKKyAgRE1YX1BFU19WSURFTzIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERNWF9QRVNfU1VCVElUTEUyLAotIERNWF9QRVNfUENSMiwKLSBETVhfUEVTX0FVRElPMywKLSBETVhfUEVTX1ZJREVPMywKKyAgRE1YX1BFU19URUxFVEVYVDIsCisgIERNWF9QRVNfU1VCVElUTEUyLAorICBETVhfUEVTX1BDUjIsCisgIERNWF9QRVNfQVVESU8zLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBETVhfUEVTX1RFTEVURVhUMywKLSBETVhfUEVTX1NVQlRJVExFMywKLSBETVhfUEVTX1BDUjMsCi0gRE1YX1BFU19PVEhFUgorICBETVhfUEVTX1ZJREVPMywKKyAgRE1YX1BFU19URUxFVEVYVDMsCisgIERNWF9QRVNfU1VCVElUTEUzLAorICBETVhfUEVTX1BDUjMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBETVhfUEVTX09USEVSCiB9IGRteF9wZXNfdHlwZV90OwogI2RlZmluZSBETVhfUEVTX0FVRElPIERNWF9QRVNfQVVESU8wCiAjZGVmaW5lIERNWF9QRVNfVklERU8gRE1YX1BFU19WSURFTzAKLSNkZWZpbmUgRE1YX1BFU19URUxFVEVYVCBETVhfUEVTX1RFTEVURVhUMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRE1YX1BFU19URUxFVEVYVCBETVhfUEVTX1RFTEVURVhUMAogI2RlZmluZSBETVhfUEVTX1NVQlRJVExFIERNWF9QRVNfU1VCVElUTEUwCiAjZGVmaW5lIERNWF9QRVNfUENSIERNWF9QRVNfUENSMAotdHlwZWRlZiBzdHJ1Y3QgZG14X2ZpbHRlcgotewordHlwZWRlZiBzdHJ1Y3QgZG14X2ZpbHRlciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmlsdGVyW0RNWF9GSUxURVJfU0laRV07Ci0gX191OCBtYXNrW0RNWF9GSUxURVJfU0laRV07Ci0gX191OCBtb2RlW0RNWF9GSUxURVJfU0laRV07CisgIF9fdTggZmlsdGVyW0RNWF9GSUxURVJfU0laRV07CisgIF9fdTggbWFza1tETVhfRklMVEVSX1NJWkVdOworICBfX3U4IG1vZGVbRE1YX0ZJTFRFUl9TSVpFXTsKIH0gZG14X2ZpbHRlcl90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBkbXhfc2N0X2ZpbHRlcl9wYXJhbXMKLXsKLSBfX3UxNiBwaWQ7Ci0gZG14X2ZpbHRlcl90IGZpbHRlcjsKK3N0cnVjdCBkbXhfc2N0X2ZpbHRlcl9wYXJhbXMgeworICBfX3UxNiBwaWQ7CisgIGRteF9maWx0ZXJfdCBmaWx0ZXI7CisgIF9fdTMyIHRpbWVvdXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRpbWVvdXQ7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGZsYWdzOwogI2RlZmluZSBETVhfQ0hFQ0tfQ1JDIDEKICNkZWZpbmUgRE1YX09ORVNIT1QgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRE1YX0lNTUVESUFURV9TVEFSVCA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETVhfS0VSTkVMX0NMSUVOVCAweDgwMDAKIH07Ci1zdHJ1Y3QgZG14X3Blc19maWx0ZXJfcGFyYW1zCitzdHJ1Y3QgZG14X3Blc19maWx0ZXJfcGFyYW1zIHsKKyAgX191MTYgcGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBfX3UxNiBwaWQ7Ci0gZG14X2lucHV0X3QgaW5wdXQ7Ci0gZG14X291dHB1dF90IG91dHB1dDsKKyAgZG14X2lucHV0X3QgaW5wdXQ7CisgIGRteF9vdXRwdXRfdCBvdXRwdXQ7CisgIGRteF9wZXNfdHlwZV90IHBlc190eXBlOworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZG14X3Blc190eXBlX3QgcGVzX3R5cGU7Ci0gX191MzIgZmxhZ3M7CiB9OwogdHlwZWRlZiBzdHJ1Y3QgZG14X2NhcHMgeworICBfX3UzMiBjYXBzOworICBpbnQgbnVtX2RlY29kZXJzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjYXBzOwotIGludCBudW1fZGVjb2RlcnM7CiB9IGRteF9jYXBzX3Q7CiB0eXBlZGVmIGVudW0geworICBETVhfU09VUkNFX0ZST05UMCA9IDAsCisgIERNWF9TT1VSQ0VfRlJPTlQxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBETVhfU09VUkNFX0ZST05UMCA9IDAsCi0gRE1YX1NPVVJDRV9GUk9OVDEsCi0gRE1YX1NPVVJDRV9GUk9OVDIsCi0gRE1YX1NPVVJDRV9GUk9OVDMsCisgIERNWF9TT1VSQ0VfRlJPTlQyLAorICBETVhfU09VUkNFX0ZST05UMywKKyAgRE1YX1NPVVJDRV9EVlIwID0gMTYsCisgIERNWF9TT1VSQ0VfRFZSMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRE1YX1NPVVJDRV9EVlIwID0gMTYsCi0gRE1YX1NPVVJDRV9EVlIxLAotIERNWF9TT1VSQ0VfRFZSMiwKLSBETVhfU09VUkNFX0RWUjMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIERNWF9TT1VSQ0VfRFZSMiwKKyAgRE1YX1NPVVJDRV9EVlIzCiB9IGRteF9zb3VyY2VfdDsKIHN0cnVjdCBkbXhfc3RjIHsKLSB1bnNpZ25lZCBpbnQgbnVtOwotIHVuc2lnbmVkIGludCBiYXNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzdGM7CisgIHVuc2lnbmVkIGludCBudW07CisgIHVuc2lnbmVkIGludCBiYXNlOworICBfX3U2NCBzdGM7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRE1YX1NUQVJUIF9JTygnbycsIDQxKQogI2RlZmluZSBETVhfU1RPUCBfSU8oJ28nLCA0MikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERNWF9TRVRfRklMVEVSIF9JT1coJ28nLCA0Mywgc3RydWN0IGRteF9zY3RfZmlsdGVyX3BhcmFtcykKICNkZWZpbmUgRE1YX1NFVF9QRVNfRklMVEVSIF9JT1coJ28nLCA0NCwgc3RydWN0IGRteF9wZXNfZmlsdGVyX3BhcmFtcykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERNWF9TRVRfQlVGRkVSX1NJWkUgX0lPKCdvJywgNDUpCiAjZGVmaW5lIERNWF9HRVRfUEVTX1BJRFMgX0lPUignbycsIDQ3LCBfX3UxNls1XSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERNWF9HRVRfQ0FQUyBfSU9SKCdvJywgNDgsIGRteF9jYXBzX3QpCiAjZGVmaW5lIERNWF9TRVRfU09VUkNFIF9JT1coJ28nLCA0OSwgZG14X3NvdXJjZV90KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRE1YX0dFVF9TVEMgX0lPV1IoJ28nLCA1MCwgc3RydWN0IGRteF9zdGMpCiAjZGVmaW5lIERNWF9BRERfUElEIF9JT1coJ28nLCA1MSwgX191MTYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETVhfUkVNT1ZFX1BJRCBfSU9XKCdvJywgNTIsIF9fdTE2KQogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvZnJvbnRlbmQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL2Zyb250ZW5kLmgKaW5kZXggM2Q3MTczMy4uYTk3ZDVlNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvZnJvbnRlbmQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9mcm9udGVuZC5oCkBAIC0yMSwyNTMgKzIxLDI1MyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiB0eXBlZGVmIGVudW0gZmVfdHlwZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZFX1FQU0ssCi0gRkVfUUFNLAotIEZFX09GRE0sCi0gRkVfQVRTQworICBGRV9RUFNLLAorICBGRV9RQU0sCisgIEZFX09GRE0sCisgIEZFX0FUU0MKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGZlX3R5cGVfdDsKIHR5cGVkZWYgZW51bSBmZV9jYXBzIHsKLSBGRV9JU19TVFVQSUQgPSAwLAotIEZFX0NBTl9JTlZFUlNJT05fQVVUTyA9IDB4MSwKKyAgRkVfSVNfU1RVUElEID0gMCwKKyAgRkVfQ0FOX0lOVkVSU0lPTl9BVVRPID0gMHgxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGRV9DQU5fRkVDXzFfMiA9IDB4MiwKLSBGRV9DQU5fRkVDXzJfMyA9IDB4NCwKLSBGRV9DQU5fRkVDXzNfNCA9IDB4OCwKLSBGRV9DQU5fRkVDXzRfNSA9IDB4MTAsCisgIEZFX0NBTl9GRUNfMV8yID0gMHgyLAorICBGRV9DQU5fRkVDXzJfMyA9IDB4NCwKKyAgRkVfQ0FOX0ZFQ18zXzQgPSAweDgsCisgIEZFX0NBTl9GRUNfNF81ID0gMHgxMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkVfQ0FOX0ZFQ181XzYgPSAweDIwLAotIEZFX0NBTl9GRUNfNl83ID0gMHg0MCwKLSBGRV9DQU5fRkVDXzdfOCA9IDB4ODAsCi0gRkVfQ0FOX0ZFQ184XzkgPSAweDEwMCwKKyAgRkVfQ0FOX0ZFQ181XzYgPSAweDIwLAorICBGRV9DQU5fRkVDXzZfNyA9IDB4NDAsCisgIEZFX0NBTl9GRUNfN184ID0gMHg4MCwKKyAgRkVfQ0FOX0ZFQ184XzkgPSAweDEwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkVfQ0FOX0ZFQ19BVVRPID0gMHgyMDAsCi0gRkVfQ0FOX1FQU0sgPSAweDQwMCwKLSBGRV9DQU5fUUFNXzE2ID0gMHg4MDAsCi0gRkVfQ0FOX1FBTV8zMiA9IDB4MTAwMCwKKyAgRkVfQ0FOX0ZFQ19BVVRPID0gMHgyMDAsCisgIEZFX0NBTl9RUFNLID0gMHg0MDAsCisgIEZFX0NBTl9RQU1fMTYgPSAweDgwMCwKKyAgRkVfQ0FOX1FBTV8zMiA9IDB4MTAwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkVfQ0FOX1FBTV82NCA9IDB4MjAwMCwKLSBGRV9DQU5fUUFNXzEyOCA9IDB4NDAwMCwKLSBGRV9DQU5fUUFNXzI1NiA9IDB4ODAwMCwKLSBGRV9DQU5fUUFNX0FVVE8gPSAweDEwMDAwLAorICBGRV9DQU5fUUFNXzY0ID0gMHgyMDAwLAorICBGRV9DQU5fUUFNXzEyOCA9IDB4NDAwMCwKKyAgRkVfQ0FOX1FBTV8yNTYgPSAweDgwMDAsCisgIEZFX0NBTl9RQU1fQVVUTyA9IDB4MTAwMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZFX0NBTl9UUkFOU01JU1NJT05fTU9ERV9BVVRPID0gMHgyMDAwMCwKLSBGRV9DQU5fQkFORFdJRFRIX0FVVE8gPSAweDQwMDAwLAotIEZFX0NBTl9HVUFSRF9JTlRFUlZBTF9BVVRPID0gMHg4MDAwMCwKLSBGRV9DQU5fSElFUkFSQ0hZX0FVVE8gPSAweDEwMDAwMCwKKyAgRkVfQ0FOX1RSQU5TTUlTU0lPTl9NT0RFX0FVVE8gPSAweDIwMDAwLAorICBGRV9DQU5fQkFORFdJRFRIX0FVVE8gPSAweDQwMDAwLAorICBGRV9DQU5fR1VBUkRfSU5URVJWQUxfQVVUTyA9IDB4ODAwMDAsCisgIEZFX0NBTl9ISUVSQVJDSFlfQVVUTyA9IDB4MTAwMDAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGRV9DQU5fOFZTQiA9IDB4MjAwMDAwLAotIEZFX0NBTl8xNlZTQiA9IDB4NDAwMDAwLAotIEZFX0hBU19FWFRFTkRFRF9DQVBTID0gMHg4MDAwMDAsCi0gRkVfQ0FOX01VTFRJU1RSRUFNID0gMHg0MDAwMDAwLAorICBGRV9DQU5fOFZTQiA9IDB4MjAwMDAwLAorICBGRV9DQU5fMTZWU0IgPSAweDQwMDAwMCwKKyAgRkVfSEFTX0VYVEVOREVEX0NBUFMgPSAweDgwMDAwMCwKKyAgRkVfQ0FOX01VTFRJU1RSRUFNID0gMHg0MDAwMDAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGRV9DQU5fVFVSQk9fRkVDID0gMHg4MDAwMDAwLAotIEZFX0NBTl8yR19NT0RVTEFUSU9OID0gMHgxMDAwMDAwMCwKLSBGRV9ORUVEU19CRU5ESU5HID0gMHgyMDAwMDAwMCwKLSBGRV9DQU5fUkVDT1ZFUiA9IDB4NDAwMDAwMDAsCisgIEZFX0NBTl9UVVJCT19GRUMgPSAweDgwMDAwMDAsCisgIEZFX0NBTl8yR19NT0RVTEFUSU9OID0gMHgxMDAwMDAwMCwKKyAgRkVfTkVFRFNfQkVORElORyA9IDB4MjAwMDAwMDAsCisgIEZFX0NBTl9SRUNPVkVSID0gMHg0MDAwMDAwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkVfQ0FOX01VVEVfVFMgPSAweDgwMDAwMDAwCisgIEZFX0NBTl9NVVRFX1RTID0gMHg4MDAwMDAwMAogfSBmZV9jYXBzX3Q7CiBzdHJ1Y3QgZHZiX2Zyb250ZW5kX2luZm8gewotIGNoYXIgbmFtZVsxMjhdOworICBjaGFyIG5hbWVbMTI4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZmVfdHlwZV90IHR5cGU7Ci0gX191MzIgZnJlcXVlbmN5X21pbjsKLSBfX3UzMiBmcmVxdWVuY3lfbWF4OwotIF9fdTMyIGZyZXF1ZW5jeV9zdGVwc2l6ZTsKKyAgZmVfdHlwZV90IHR5cGU7CisgIF9fdTMyIGZyZXF1ZW5jeV9taW47CisgIF9fdTMyIGZyZXF1ZW5jeV9tYXg7CisgIF9fdTMyIGZyZXF1ZW5jeV9zdGVwc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZnJlcXVlbmN5X3RvbGVyYW5jZTsKLSBfX3UzMiBzeW1ib2xfcmF0ZV9taW47Ci0gX191MzIgc3ltYm9sX3JhdGVfbWF4OwotIF9fdTMyIHN5bWJvbF9yYXRlX3RvbGVyYW5jZTsKKyAgX191MzIgZnJlcXVlbmN5X3RvbGVyYW5jZTsKKyAgX191MzIgc3ltYm9sX3JhdGVfbWluOworICBfX3UzMiBzeW1ib2xfcmF0ZV9tYXg7CisgIF9fdTMyIHN5bWJvbF9yYXRlX3RvbGVyYW5jZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbm90aWZpZXJfZGVsYXk7Ci0gZmVfY2Fwc190IGNhcHM7CisgIF9fdTMyIG5vdGlmaWVyX2RlbGF5OworICBmZV9jYXBzX3QgY2FwczsKIH07CiBzdHJ1Y3QgZHZiX2Rpc2VxY19tYXN0ZXJfY21kIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtc2cgWzZdOwotIF9fdTggbXNnX2xlbjsKKyAgX191OCBtc2dbNl07CisgIF9fdTggbXNnX2xlbjsKIH07CiBzdHJ1Y3QgZHZiX2Rpc2VxY19zbGF2ZV9yZXBseSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbXNnIFs0XTsKLSBfX3U4IG1zZ19sZW47Ci0gaW50IHRpbWVvdXQ7CisgIF9fdTggbXNnWzRdOworICBfX3U4IG1zZ19sZW47CisgIGludCB0aW1lb3V0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIGVudW0gZmVfc2VjX3ZvbHRhZ2UgewotIFNFQ19WT0xUQUdFXzEzLAotIFNFQ19WT0xUQUdFXzE4LAotIFNFQ19WT0xUQUdFX09GRgorICBTRUNfVk9MVEFHRV8xMywKKyAgU0VDX1ZPTFRBR0VfMTgsCisgIFNFQ19WT0xUQUdFX09GRgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gZmVfc2VjX3ZvbHRhZ2VfdDsKIHR5cGVkZWYgZW51bSBmZV9zZWNfdG9uZV9tb2RlIHsKLSBTRUNfVE9ORV9PTiwKLSBTRUNfVE9ORV9PRkYKKyAgU0VDX1RPTkVfT04sCisgIFNFQ19UT05FX09GRgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gZmVfc2VjX3RvbmVfbW9kZV90OwogdHlwZWRlZiBlbnVtIGZlX3NlY19taW5pX2NtZCB7Ci0gU0VDX01JTklfQSwKLSBTRUNfTUlOSV9CCisgIFNFQ19NSU5JX0EsCisgIFNFQ19NSU5JX0IKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGZlX3NlY19taW5pX2NtZF90OwogdHlwZWRlZiBlbnVtIGZlX3N0YXR1cyB7Ci0gRkVfSEFTX1NJR05BTCA9IDB4MDEsCi0gRkVfSEFTX0NBUlJJRVIgPSAweDAyLAorICBGRV9IQVNfU0lHTkFMID0gMHgwMSwKKyAgRkVfSEFTX0NBUlJJRVIgPSAweDAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGRV9IQVNfVklURVJCSSA9IDB4MDQsCi0gRkVfSEFTX1NZTkMgPSAweDA4LAotIEZFX0hBU19MT0NLID0gMHgxMCwKLSBGRV9USU1FRE9VVCA9IDB4MjAsCisgIEZFX0hBU19WSVRFUkJJID0gMHgwNCwKKyAgRkVfSEFTX1NZTkMgPSAweDA4LAorICBGRV9IQVNfTE9DSyA9IDB4MTAsCisgIEZFX1RJTUVET1VUID0gMHgyMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkVfUkVJTklUID0gMHg0MCwKKyAgRkVfUkVJTklUID0gMHg0MCwKIH0gZmVfc3RhdHVzX3Q7CiB0eXBlZGVmIGVudW0gZmVfc3BlY3RyYWxfaW52ZXJzaW9uIHsKLSBJTlZFUlNJT05fT0ZGLAorICBJTlZFUlNJT05fT0ZGLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJTlZFUlNJT05fT04sCi0gSU5WRVJTSU9OX0FVVE8KKyAgSU5WRVJTSU9OX09OLAorICBJTlZFUlNJT05fQVVUTwogfSBmZV9zcGVjdHJhbF9pbnZlcnNpb25fdDsKIHR5cGVkZWYgZW51bSBmZV9jb2RlX3JhdGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGRUNfTk9ORSA9IDAsCi0gRkVDXzFfMiwKLSBGRUNfMl8zLAotIEZFQ18zXzQsCisgIEZFQ19OT05FID0gMCwKKyAgRkVDXzFfMiwKKyAgRkVDXzJfMywKKyAgRkVDXzNfNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkVDXzRfNSwKLSBGRUNfNV82LAotIEZFQ182XzcsCi0gRkVDXzdfOCwKKyAgRkVDXzRfNSwKKyAgRkVDXzVfNiwKKyAgRkVDXzZfNywKKyAgRkVDXzdfOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkVDXzhfOSwKLSBGRUNfQVVUTywKLSBGRUNfM181LAotIEZFQ185XzEwLAorICBGRUNfOF85LAorICBGRUNfQVVUTywKKyAgRkVDXzNfNSwKKyAgRkVDXzlfMTAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZFQ18yXzUsCisgIEZFQ18yXzUsCiB9IGZlX2NvZGVfcmF0ZV90OwogdHlwZWRlZiBlbnVtIGZlX21vZHVsYXRpb24gewotIFFQU0ssCisgIFFQU0ssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFFBTV8xNiwKLSBRQU1fMzIsCi0gUUFNXzY0LAotIFFBTV8xMjgsCisgIFFBTV8xNiwKKyAgUUFNXzMyLAorICBRQU1fNjQsCisgIFFBTV8xMjgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFFBTV8yNTYsCi0gUUFNX0FVVE8sCi0gVlNCXzgsCi0gVlNCXzE2LAorICBRQU1fMjU2LAorICBRQU1fQVVUTywKKyAgVlNCXzgsCisgIFZTQl8xNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUFNLXzgsCi0gQVBTS18xNiwKLSBBUFNLXzMyLAotIERRUFNLLAorICBQU0tfOCwKKyAgQVBTS18xNiwKKyAgQVBTS18zMiwKKyAgRFFQU0ssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFFBTV80X05SLAorICBRQU1fNF9OUiwKIH0gZmVfbW9kdWxhdGlvbl90OwogdHlwZWRlZiBlbnVtIGZlX3RyYW5zbWl0X21vZGUgewotIFRSQU5TTUlTU0lPTl9NT0RFXzJLLAorICBUUkFOU01JU1NJT05fTU9ERV8ySywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVFJBTlNNSVNTSU9OX01PREVfOEssCi0gVFJBTlNNSVNTSU9OX01PREVfQVVUTywKLSBUUkFOU01JU1NJT05fTU9ERV80SywKLSBUUkFOU01JU1NJT05fTU9ERV8xSywKKyAgVFJBTlNNSVNTSU9OX01PREVfOEssCisgIFRSQU5TTUlTU0lPTl9NT0RFX0FVVE8sCisgIFRSQU5TTUlTU0lPTl9NT0RFXzRLLAorICBUUkFOU01JU1NJT05fTU9ERV8xSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVFJBTlNNSVNTSU9OX01PREVfMTZLLAotIFRSQU5TTUlTU0lPTl9NT0RFXzMySywKLSBUUkFOU01JU1NJT05fTU9ERV9DMSwKLSBUUkFOU01JU1NJT05fTU9ERV9DMzc4MCwKKyAgVFJBTlNNSVNTSU9OX01PREVfMTZLLAorICBUUkFOU01JU1NJT05fTU9ERV8zMkssCisgIFRSQU5TTUlTU0lPTl9NT0RFX0MxLAorICBUUkFOU01JU1NJT05fTU9ERV9DMzc4MCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGZlX3RyYW5zbWl0X21vZGVfdDsKIHR5cGVkZWYgZW51bSBmZV9iYW5kd2lkdGggewotIEJBTkRXSURUSF84X01IWiwKLSBCQU5EV0lEVEhfN19NSFosCisgIEJBTkRXSURUSF84X01IWiwKKyAgQkFORFdJRFRIXzdfTUhaLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCQU5EV0lEVEhfNl9NSFosCi0gQkFORFdJRFRIX0FVVE8sCi0gQkFORFdJRFRIXzVfTUhaLAotIEJBTkRXSURUSF8xMF9NSFosCisgIEJBTkRXSURUSF82X01IWiwKKyAgQkFORFdJRFRIX0FVVE8sCisgIEJBTkRXSURUSF81X01IWiwKKyAgQkFORFdJRFRIXzEwX01IWiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQkFORFdJRFRIXzFfNzEyX01IWiwKKyAgQkFORFdJRFRIXzFfNzEyX01IWiwKIH0gZmVfYmFuZHdpZHRoX3Q7CiB0eXBlZGVmIGVudW0gZmVfZ3VhcmRfaW50ZXJ2YWwgewotIEdVQVJEX0lOVEVSVkFMXzFfMzIsCisgIEdVQVJEX0lOVEVSVkFMXzFfMzIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEdVQVJEX0lOVEVSVkFMXzFfMTYsCi0gR1VBUkRfSU5URVJWQUxfMV84LAotIEdVQVJEX0lOVEVSVkFMXzFfNCwKLSBHVUFSRF9JTlRFUlZBTF9BVVRPLAorICBHVUFSRF9JTlRFUlZBTF8xXzE2LAorICBHVUFSRF9JTlRFUlZBTF8xXzgsCisgIEdVQVJEX0lOVEVSVkFMXzFfNCwKKyAgR1VBUkRfSU5URVJWQUxfQVVUTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gR1VBUkRfSU5URVJWQUxfMV8xMjgsCi0gR1VBUkRfSU5URVJWQUxfMTlfMTI4LAotIEdVQVJEX0lOVEVSVkFMXzE5XzI1NiwKLSBHVUFSRF9JTlRFUlZBTF9QTjQyMCwKKyAgR1VBUkRfSU5URVJWQUxfMV8xMjgsCisgIEdVQVJEX0lOVEVSVkFMXzE5XzEyOCwKKyAgR1VBUkRfSU5URVJWQUxfMTlfMjU2LAorICBHVUFSRF9JTlRFUlZBTF9QTjQyMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gR1VBUkRfSU5URVJWQUxfUE41OTUsCi0gR1VBUkRfSU5URVJWQUxfUE45NDUsCisgIEdVQVJEX0lOVEVSVkFMX1BONTk1LAorICBHVUFSRF9JTlRFUlZBTF9QTjk0NSwKIH0gZmVfZ3VhcmRfaW50ZXJ2YWxfdDsKIHR5cGVkZWYgZW51bSBmZV9oaWVyYXJjaHkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBISUVSQVJDSFlfTk9ORSwKLSBISUVSQVJDSFlfMSwKLSBISUVSQVJDSFlfMiwKLSBISUVSQVJDSFlfNCwKKyAgSElFUkFSQ0hZX05PTkUsCisgIEhJRVJBUkNIWV8xLAorICBISUVSQVJDSFlfMiwKKyAgSElFUkFSQ0hZXzQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhJRVJBUkNIWV9BVVRPCisgIEhJRVJBUkNIWV9BVVRPCiB9IGZlX2hpZXJhcmNoeV90OwogZW51bSBmZV9pbnRlcmxlYXZpbmcgewotIElOVEVSTEVBVklOR19OT05FLAorICBJTlRFUkxFQVZJTkdfTk9ORSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSU5URVJMRUFWSU5HX0FVVE8sCi0gSU5URVJMRUFWSU5HXzI0MCwKLSBJTlRFUkxFQVZJTkdfNzIwLAorICBJTlRFUkxFQVZJTkdfQVVUTywKKyAgSU5URVJMRUFWSU5HXzI0MCwKKyAgSU5URVJMRUFWSU5HXzcyMCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGR2Yl9xcHNrX3BhcmFtZXRlcnMgewotIF9fdTMyIHN5bWJvbF9yYXRlOwotIGZlX2NvZGVfcmF0ZV90IGZlY19pbm5lcjsKKyAgX191MzIgc3ltYm9sX3JhdGU7CisgIGZlX2NvZGVfcmF0ZV90IGZlY19pbm5lcjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGR2Yl9xYW1fcGFyYW1ldGVycyB7Ci0gX191MzIgc3ltYm9sX3JhdGU7Ci0gZmVfY29kZV9yYXRlX3QgZmVjX2lubmVyOwotIGZlX21vZHVsYXRpb25fdCBtb2R1bGF0aW9uOworICBfX3UzMiBzeW1ib2xfcmF0ZTsKKyAgZmVfY29kZV9yYXRlX3QgZmVjX2lubmVyOworICBmZV9tb2R1bGF0aW9uX3QgbW9kdWxhdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGR2Yl92c2JfcGFyYW1ldGVycyB7Ci0gZmVfbW9kdWxhdGlvbl90IG1vZHVsYXRpb247CisgIGZlX21vZHVsYXRpb25fdCBtb2R1bGF0aW9uOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZHZiX29mZG1fcGFyYW1ldGVycyB7Ci0gZmVfYmFuZHdpZHRoX3QgYmFuZHdpZHRoOwotIGZlX2NvZGVfcmF0ZV90IGNvZGVfcmF0ZV9IUDsKLSBmZV9jb2RlX3JhdGVfdCBjb2RlX3JhdGVfTFA7CisgIGZlX2JhbmR3aWR0aF90IGJhbmR3aWR0aDsKKyAgZmVfY29kZV9yYXRlX3QgY29kZV9yYXRlX0hQOworICBmZV9jb2RlX3JhdGVfdCBjb2RlX3JhdGVfTFA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGZlX21vZHVsYXRpb25fdCBjb25zdGVsbGF0aW9uOwotIGZlX3RyYW5zbWl0X21vZGVfdCB0cmFuc21pc3Npb25fbW9kZTsKLSBmZV9ndWFyZF9pbnRlcnZhbF90IGd1YXJkX2ludGVydmFsOwotIGZlX2hpZXJhcmNoeV90IGhpZXJhcmNoeV9pbmZvcm1hdGlvbjsKKyAgZmVfbW9kdWxhdGlvbl90IGNvbnN0ZWxsYXRpb247CisgIGZlX3RyYW5zbWl0X21vZGVfdCB0cmFuc21pc3Npb25fbW9kZTsKKyAgZmVfZ3VhcmRfaW50ZXJ2YWxfdCBndWFyZF9pbnRlcnZhbDsKKyAgZmVfaGllcmFyY2h5X3QgaGllcmFyY2h5X2luZm9ybWF0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZHZiX2Zyb250ZW5kX3BhcmFtZXRlcnMgewotIF9fdTMyIGZyZXF1ZW5jeTsKLSBmZV9zcGVjdHJhbF9pbnZlcnNpb25fdCBpbnZlcnNpb247CisgIF9fdTMyIGZyZXF1ZW5jeTsKKyAgZmVfc3BlY3RyYWxfaW52ZXJzaW9uX3QgaW52ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IGR2Yl9xcHNrX3BhcmFtZXRlcnMgcXBzazsKLSBzdHJ1Y3QgZHZiX3FhbV9wYXJhbWV0ZXJzIHFhbTsKLSBzdHJ1Y3QgZHZiX29mZG1fcGFyYW1ldGVycyBvZmRtOworICB1bmlvbiB7CisgICAgc3RydWN0IGR2Yl9xcHNrX3BhcmFtZXRlcnMgcXBzazsKKyAgICBzdHJ1Y3QgZHZiX3FhbV9wYXJhbWV0ZXJzIHFhbTsKKyAgICBzdHJ1Y3QgZHZiX29mZG1fcGFyYW1ldGVycyBvZmRtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZHZiX3ZzYl9wYXJhbWV0ZXJzIHZzYjsKLSB9IHU7CisgICAgc3RydWN0IGR2Yl92c2JfcGFyYW1ldGVycyB2c2I7CisgIH0gdTsKIH07CiBzdHJ1Y3QgZHZiX2Zyb250ZW5kX2V2ZW50IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZmVfc3RhdHVzX3Qgc3RhdHVzOwotIHN0cnVjdCBkdmJfZnJvbnRlbmRfcGFyYW1ldGVycyBwYXJhbWV0ZXJzOworICBmZV9zdGF0dXNfdCBzdGF0dXM7CisgIHN0cnVjdCBkdmJfZnJvbnRlbmRfcGFyYW1ldGVycyBwYXJhbWV0ZXJzOwogfTsKICNkZWZpbmUgRFRWX1VOREVGSU5FRCAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMzYxLDEzNSArMzYxLDEzNSBAQAogI2RlZmluZSBEVFZfTUFYX0NPTU1BTkQgRFRWX1NUQVRfVE9UQUxfQkxPQ0tfQ09VTlQKIHR5cGVkZWYgZW51bSBmZV9waWxvdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBJTE9UX09OLAotIFBJTE9UX09GRiwKLSBQSUxPVF9BVVRPLAorICBQSUxPVF9PTiwKKyAgUElMT1RfT0ZGLAorICBQSUxPVF9BVVRPLAogfSBmZV9waWxvdF90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgZW51bSBmZV9yb2xsb2ZmIHsKLSBST0xMT0ZGXzM1LAotIFJPTExPRkZfMjAsCi0gUk9MTE9GRl8yNSwKKyAgUk9MTE9GRl8zNSwKKyAgUk9MTE9GRl8yMCwKKyAgUk9MTE9GRl8yNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUk9MTE9GRl9BVVRPLAorICBST0xMT0ZGX0FVVE8sCiB9IGZlX3JvbGxvZmZfdDsKIHR5cGVkZWYgZW51bSBmZV9kZWxpdmVyeV9zeXN0ZW0gewotIFNZU19VTkRFRklORUQsCisgIFNZU19VTkRFRklORUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNZU19EVkJDX0FOTkVYX0EsCi0gU1lTX0RWQkNfQU5ORVhfQiwKLSBTWVNfRFZCVCwKLSBTWVNfRFNTLAorICBTWVNfRFZCQ19BTk5FWF9BLAorICBTWVNfRFZCQ19BTk5FWF9CLAorICBTWVNfRFZCVCwKKyAgU1lTX0RTUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU1lTX0RWQlMsCi0gU1lTX0RWQlMyLAotIFNZU19EVkJILAotIFNZU19JU0RCVCwKKyAgU1lTX0RWQlMsCisgIFNZU19EVkJTMiwKKyAgU1lTX0RWQkgsCisgIFNZU19JU0RCVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU1lTX0lTREJTLAotIFNZU19JU0RCQywKLSBTWVNfQVRTQywKLSBTWVNfQVRTQ01ILAorICBTWVNfSVNEQlMsCisgIFNZU19JU0RCQywKKyAgU1lTX0FUU0MsCisgIFNZU19BVFNDTUgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNZU19EVE1CLAotIFNZU19DTU1CLAotIFNZU19EQUIsCi0gU1lTX0RWQlQyLAorICBTWVNfRFRNQiwKKyAgU1lTX0NNTUIsCisgIFNZU19EQUIsCisgIFNZU19EVkJUMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU1lTX1RVUkJPLAotIFNZU19EVkJDX0FOTkVYX0MsCisgIFNZU19UVVJCTywKKyAgU1lTX0RWQkNfQU5ORVhfQywKIH0gZmVfZGVsaXZlcnlfc3lzdGVtX3Q7CiAjZGVmaW5lIFNZU19EVkJDX0FOTkVYX0FDIFNZU19EVkJDX0FOTkVYX0EKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNZU19ETUJUSCBTWVNfRFRNQgogZW51bSBhdHNjbWhfc2NjY19ibG9ja19tb2RlIHsKLSBBVFNDTUhfU0NDQ19CTEtfU0VQID0gMCwKLSBBVFNDTUhfU0NDQ19CTEtfQ09NQiA9IDEsCisgIEFUU0NNSF9TQ0NDX0JMS19TRVAgPSAwLAorICBBVFNDTUhfU0NDQ19CTEtfQ09NQiA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEFUU0NNSF9TQ0NDX0JMS19SRVMgPSAyLAorICBBVFNDTUhfU0NDQ19CTEtfUkVTID0gMiwKIH07CiBlbnVtIGF0c2NtaF9zY2NjX2NvZGVfbW9kZSB7Ci0gQVRTQ01IX1NDQ0NfQ09ERV9ITEYgPSAwLAorICBBVFNDTUhfU0NDQ19DT0RFX0hMRiA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEFUU0NNSF9TQ0NDX0NPREVfUVRSID0gMSwKLSBBVFNDTUhfU0NDQ19DT0RFX1JFUyA9IDIsCisgIEFUU0NNSF9TQ0NDX0NPREVfUVRSID0gMSwKKyAgQVRTQ01IX1NDQ0NfQ09ERV9SRVMgPSAyLAogfTsKIGVudW0gYXRzY21oX3JzX2ZyYW1lX2Vuc2VtYmxlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQVRTQ01IX1JTRlJBTUVfRU5TX1BSSSA9IDAsCi0gQVRTQ01IX1JTRlJBTUVfRU5TX1NFQyA9IDEsCisgIEFUU0NNSF9SU0ZSQU1FX0VOU19QUkkgPSAwLAorICBBVFNDTUhfUlNGUkFNRV9FTlNfU0VDID0gMSwKIH07CiBlbnVtIGF0c2NtaF9yc19mcmFtZV9tb2RlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQVRTQ01IX1JTRlJBTUVfUFJJX09OTFkgPSAwLAotIEFUU0NNSF9SU0ZSQU1FX1BSSV9TRUMgPSAxLAotIEFUU0NNSF9SU0ZSQU1FX1JFUyA9IDIsCisgIEFUU0NNSF9SU0ZSQU1FX1BSSV9PTkxZID0gMCwKKyAgQVRTQ01IX1JTRlJBTUVfUFJJX1NFQyA9IDEsCisgIEFUU0NNSF9SU0ZSQU1FX1JFUyA9IDIsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gYXRzY21oX3JzX2NvZGVfbW9kZSB7Ci0gQVRTQ01IX1JTQ09ERV8yMTFfMTg3ID0gMCwKLSBBVFNDTUhfUlNDT0RFXzIyM18xODcgPSAxLAotIEFUU0NNSF9SU0NPREVfMjM1XzE4NyA9IDIsCisgIEFUU0NNSF9SU0NPREVfMjExXzE4NyA9IDAsCisgIEFUU0NNSF9SU0NPREVfMjIzXzE4NyA9IDEsCisgIEFUU0NNSF9SU0NPREVfMjM1XzE4NyA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEFUU0NNSF9SU0NPREVfUkVTID0gMywKKyAgQVRTQ01IX1JTQ09ERV9SRVMgPSAzLAogfTsKICNkZWZpbmUgTk9fU1RSRUFNX0lEX0ZJTFRFUiAofjBVKQogI2RlZmluZSBMTkFfQVVUTyAofjBVKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBkdHZfY21kc19oIHsKLSBjaGFyICpuYW1lOwotIF9fdTMyIGNtZDsKLSBfX3UzMiBzZXQ6MTsKKyAgY2hhciAqIG5hbWU7CisgIF9fdTMyIGNtZDsKKyAgX191MzIgc2V0IDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYnVmZmVyOjE7Ci0gX191MzIgcmVzZXJ2ZWQ6MzA7CisgIF9fdTMyIGJ1ZmZlciA6IDE7CisgIF9fdTMyIHJlc2VydmVkIDogMzA7CiB9OwogZW51bSBmZWNhcF9zY2FsZV9wYXJhbXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGRV9TQ0FMRV9OT1RfQVZBSUxBQkxFID0gMCwKLSBGRV9TQ0FMRV9ERUNJQkVMLAotIEZFX1NDQUxFX1JFTEFUSVZFLAotIEZFX1NDQUxFX0NPVU5URVIKKyAgRkVfU0NBTEVfTk9UX0FWQUlMQUJMRSA9IDAsCisgIEZFX1NDQUxFX0RFQ0lCRUwsCisgIEZFX1NDQUxFX1JFTEFUSVZFLAorICBGRV9TQ0FMRV9DT1VOVEVSCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBkdHZfc3RhdHMgewotIF9fdTggc2NhbGU7Ci0gdW5pb24geworICBfX3U4IHNjYWxlOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHV2YWx1ZTsKLSBfX3M2NCBzdmFsdWU7Ci0gfTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICAgIF9fdTY0IHV2YWx1ZTsKKyAgICBfX3M2NCBzdmFsdWU7CisgIH07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUFYX0RUVl9TVEFUUyA0CiBzdHJ1Y3QgZHR2X2ZlX3N0YXRzIHsKLSBfX3U4IGxlbjsKLSBzdHJ1Y3QgZHR2X3N0YXRzIHN0YXRbTUFYX0RUVl9TVEFUU107CisgIF9fdTggbGVuOworICBzdHJ1Y3QgZHR2X3N0YXRzIHN0YXRbTUFYX0RUVl9TVEFUU107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGR0dl9wcm9wZXJ0eSB7Ci0gX191MzIgY21kOwotIF9fdTMyIHJlc2VydmVkWzNdOworICBfX3UzMiBjbWQ7CisgIF9fdTMyIHJlc2VydmVkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gX191MzIgZGF0YTsKLSBzdHJ1Y3QgZHR2X2ZlX3N0YXRzIHN0OwotIHN0cnVjdCB7CisgIHVuaW9uIHsKKyAgICBfX3UzMiBkYXRhOworICAgIHN0cnVjdCBkdHZfZmVfc3RhdHMgc3Q7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkYXRhWzMyXTsKLSBfX3UzMiBsZW47Ci0gX191MzIgcmVzZXJ2ZWQxWzNdOwotIHZvaWQgKnJlc2VydmVkMjsKKyAgICAgIF9fdTggZGF0YVszMl07CisgICAgICBfX3UzMiBsZW47CisgICAgICBfX3UzMiByZXNlcnZlZDFbM107CisgICAgICB2b2lkICogcmVzZXJ2ZWQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGJ1ZmZlcjsKLSB9IHU7Ci0gaW50IHJlc3VsdDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICAgIH0gYnVmZmVyOworICB9IHU7CisgIGludCByZXN1bHQ7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFRWX0lPQ1RMX01BWF9NU0dTIDY0CiBzdHJ1Y3QgZHR2X3Byb3BlcnRpZXMgewotIF9fdTMyIG51bTsKLSBzdHJ1Y3QgZHR2X3Byb3BlcnR5ICpwcm9wczsKKyAgX191MzIgbnVtOworICBzdHJ1Y3QgZHR2X3Byb3BlcnR5ICogcHJvcHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRkVfU0VUX1BST1BFUlRZIF9JT1coJ28nLCA4Miwgc3RydWN0IGR0dl9wcm9wZXJ0aWVzKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvbmV0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9uZXQuaAppbmRleCA0ODMwOGQ3Li5mMDg1ZGMzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9uZXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi9uZXQuaApAQCAtMjEsOSArMjEsOSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgZHZiX25ldF9pZiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHBpZDsKLSBfX3UxNiBpZl9udW07Ci0gX191OCBmZWVkdHlwZTsKKyAgX191MTYgcGlkOworICBfX3UxNiBpZl9udW07CisgIF9fdTggZmVlZHR5cGU7CiAjZGVmaW5lIERWQl9ORVRfRkVFRFRZUEVfTVBFIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERWQl9ORVRfRkVFRFRZUEVfVUxFIDEKQEAgLTMzLDggKzMzLDggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5FVF9HRVRfSUYgX0lPV1IoJ28nLCA1NCwgc3RydWN0IGR2Yl9uZXRfaWYpCiBzdHJ1Y3QgX19kdmJfbmV0X2lmX29sZCB7Ci0gX191MTYgcGlkOwotIF9fdTE2IGlmX251bTsKKyAgX191MTYgcGlkOworICBfX3UxNiBpZl9udW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgX19ORVRfQUREX0lGX09MRCBfSU9XUignbycsIDUyLCBzdHJ1Y3QgX19kdmJfbmV0X2lmX29sZCkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL29zZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvb3NkLmgKaW5kZXggMDRkNjczZC4uOWFhYjk4ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvb3NkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvb3NkLmgKQEAgLTIxLDc4ICsyMSw3OCBAQAogI2luY2x1ZGUgPGxpbnV4L2NvbXBpbGVyLmg+CiB0eXBlZGVmIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPU0RfQ2xvc2U9MSwKLSBPU0RfT3BlbiwKLSBPU0RfU2hvdywKLSBPU0RfSGlkZSwKKyAgT1NEX0Nsb3NlID0gMSwKKyAgT1NEX09wZW4sCisgIE9TRF9TaG93LAorICBPU0RfSGlkZSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1NEX0NsZWFyLAotIE9TRF9GaWxsLAotIE9TRF9TZXRDb2xvciwKLSBPU0RfU2V0UGFsZXR0ZSwKKyAgT1NEX0NsZWFyLAorICBPU0RfRmlsbCwKKyAgT1NEX1NldENvbG9yLAorICBPU0RfU2V0UGFsZXR0ZSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1NEX1NldFRyYW5zLAotIE9TRF9TZXRQaXhlbCwKLSBPU0RfR2V0UGl4ZWwsCi0gT1NEX1NldFJvdywKKyAgT1NEX1NldFRyYW5zLAorICBPU0RfU2V0UGl4ZWwsCisgIE9TRF9HZXRQaXhlbCwKKyAgT1NEX1NldFJvdywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1NEX1NldEJsb2NrLAotIE9TRF9GaWxsUm93LAotIE9TRF9GaWxsQmxvY2ssCi0gT1NEX0xpbmUsCisgIE9TRF9TZXRCbG9jaywKKyAgT1NEX0ZpbGxSb3csCisgIE9TRF9GaWxsQmxvY2ssCisgIE9TRF9MaW5lLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPU0RfUXVlcnksCi0gT1NEX1Rlc3QsCi0gT1NEX1RleHQsCi0gT1NEX1NldFdpbmRvdywKKyAgT1NEX1F1ZXJ5LAorICBPU0RfVGVzdCwKKyAgT1NEX1RleHQsCisgIE9TRF9TZXRXaW5kb3csCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9TRF9Nb3ZlV2luZG93LAotIE9TRF9PcGVuUmF3LAorICBPU0RfTW92ZVdpbmRvdywKKyAgT1NEX09wZW5SYXcsCiB9IE9TRF9Db21tYW5kOwogdHlwZWRlZiBzdHJ1Y3Qgb3NkX2NtZF9zIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1NEX0NvbW1hbmQgY21kOwotIGludCB4MDsKLSBpbnQgeTA7Ci0gaW50IHgxOworICBPU0RfQ29tbWFuZCBjbWQ7CisgIGludCB4MDsKKyAgaW50IHkwOworICBpbnQgeDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB5MTsKLSBpbnQgY29sb3I7Ci0gdm9pZCBfX3VzZXIgKmRhdGE7CisgIGludCB5MTsKKyAgaW50IGNvbG9yOworICB2b2lkIF9fdXNlciAqIGRhdGE7CiB9IG9zZF9jbWRfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIGVudW0gewotIE9TRF9CSVRNQVAxLAotIE9TRF9CSVRNQVAyLAotIE9TRF9CSVRNQVA0LAorICBPU0RfQklUTUFQMSwKKyAgT1NEX0JJVE1BUDIsCisgIE9TRF9CSVRNQVA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPU0RfQklUTUFQOCwKLSBPU0RfQklUTUFQMUhSLAotIE9TRF9CSVRNQVAySFIsCi0gT1NEX0JJVE1BUDRIUiwKKyAgT1NEX0JJVE1BUDgsCisgIE9TRF9CSVRNQVAxSFIsCisgIE9TRF9CSVRNQVAySFIsCisgIE9TRF9CSVRNQVA0SFIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9TRF9CSVRNQVA4SFIsCi0gT1NEX1lDUkNCNDIyLAotIE9TRF9ZQ1JDQjQ0NCwKLSBPU0RfWUNSQ0I0NDRIUiwKKyAgT1NEX0JJVE1BUDhIUiwKKyAgT1NEX1lDUkNCNDIyLAorICBPU0RfWUNSQ0I0NDQsCisgIE9TRF9ZQ1JDQjQ0NEhSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPU0RfVklERU9UU0laRSwKLSBPU0RfVklERU9IU0laRSwKLSBPU0RfVklERU9RU0laRSwKLSBPU0RfVklERU9EU0laRSwKKyAgT1NEX1ZJREVPVFNJWkUsCisgIE9TRF9WSURFT0hTSVpFLAorICBPU0RfVklERU9RU0laRSwKKyAgT1NEX1ZJREVPRFNJWkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9TRF9WSURFT1RIU0laRSwKLSBPU0RfVklERU9UUVNJWkUsCi0gT1NEX1ZJREVPVERTSVpFLAotIE9TRF9WSURFT05TSVpFLAorICBPU0RfVklERU9USFNJWkUsCisgIE9TRF9WSURFT1RRU0laRSwKKyAgT1NEX1ZJREVPVERTSVpFLAorICBPU0RfVklERU9OU0laRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1NEX0NVUlNPUgorICBPU0RfQ1VSU09SCiB9IG9zZF9yYXdfd2luZG93X3Q7CiB0eXBlZGVmIHN0cnVjdCBvc2RfY2FwX3MgewotIGludCBjbWQ7CisgIGludCBjbWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBPU0RfQ0FQX01FTVNJWkUgMQotIGxvbmcgdmFsOworICBsb25nIHZhbDsKIH0gb3NkX2NhcF90OwogI2RlZmluZSBPU0RfU0VORF9DTUQgX0lPVygnbycsIDE2MCwgb3NkX2NtZF90KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL3ZpZGVvLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2R2Yi92aWRlby5oCmluZGV4IDdmNmQxMDkuLmM4OTEwYmQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZHZiL3ZpZGVvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9kdmIvdmlkZW8uaApAQCAtMjMsNDYgKzIzLDQ2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPHRpbWUuaD4KIHR5cGVkZWYgZW51bSB7Ci0gVklERU9fRk9STUFUXzRfMywKLSBWSURFT19GT1JNQVRfMTZfOSwKKyAgVklERU9fRk9STUFUXzRfMywKKyAgVklERU9fRk9STUFUXzE2XzksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZJREVPX0ZPUk1BVF8yMjFfMQorICBWSURFT19GT1JNQVRfMjIxXzEKIH0gdmlkZW9fZm9ybWF0X3Q7CiB0eXBlZGVmIGVudW0gewotIFZJREVPX1NZU1RFTV9QQUwsCisgIFZJREVPX1NZU1RFTV9QQUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZJREVPX1NZU1RFTV9OVFNDLAotIFZJREVPX1NZU1RFTV9QQUxOLAotIFZJREVPX1NZU1RFTV9QQUxOYywKLSBWSURFT19TWVNURU1fUEFMTSwKKyAgVklERU9fU1lTVEVNX05UU0MsCisgIFZJREVPX1NZU1RFTV9QQUxOLAorICBWSURFT19TWVNURU1fUEFMTmMsCisgIFZJREVPX1NZU1RFTV9QQUxNLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWSURFT19TWVNURU1fTlRTQzYwLAotIFZJREVPX1NZU1RFTV9QQUw2MCwKLSBWSURFT19TWVNURU1fUEFMTTYwCisgIFZJREVPX1NZU1RFTV9OVFNDNjAsCisgIFZJREVPX1NZU1RFTV9QQUw2MCwKKyAgVklERU9fU1lTVEVNX1BBTE02MAogfSB2aWRlb19zeXN0ZW1fdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIGVudW0gewotIFZJREVPX1BBTl9TQ0FOLAotIFZJREVPX0xFVFRFUl9CT1gsCi0gVklERU9fQ0VOVEVSX0NVVF9PVVQKKyAgVklERU9fUEFOX1NDQU4sCisgIFZJREVPX0xFVFRFUl9CT1gsCisgIFZJREVPX0NFTlRFUl9DVVRfT1VUCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSB2aWRlb19kaXNwbGF5Zm9ybWF0X3Q7CiB0eXBlZGVmIHN0cnVjdCB7Ci0gaW50IHc7Ci0gaW50IGg7CisgIGludCB3OworICBpbnQgaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdmlkZW9fZm9ybWF0X3QgYXNwZWN0X3JhdGlvOworICB2aWRlb19mb3JtYXRfdCBhc3BlY3RfcmF0aW87CiB9IHZpZGVvX3NpemVfdDsKIHR5cGVkZWYgZW51bSB7Ci0gVklERU9fU09VUkNFX0RFTVVYLAorICBWSURFT19TT1VSQ0VfREVNVVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZJREVPX1NPVVJDRV9NRU1PUlkKKyAgVklERU9fU09VUkNFX01FTU9SWQogfSB2aWRlb19zdHJlYW1fc291cmNlX3Q7CiB0eXBlZGVmIGVudW0gewotIFZJREVPX1NUT1BQRUQsCisgIFZJREVPX1NUT1BQRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZJREVPX1BMQVlJTkcsCi0gVklERU9fRlJFRVpFRAorICBWSURFT19QTEFZSU5HLAorICBWSURFT19GUkVFWkVECiB9IHZpZGVvX3BsYXlfc3RhdGVfdDsKICNkZWZpbmUgVklERU9fQ01EX1BMQVkgKDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNzcsMjMgKzc3LDIzIEBACiAjZGVmaW5lIFZJREVPX1BMQVlfRk1UX0dPUCAoMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdmlkZW9fY29tbWFuZCB7Ci0gX191MzIgY21kOwotIF9fdTMyIGZsYWdzOwotIHVuaW9uIHsKKyAgX191MzIgY21kOworICBfX3UzMiBmbGFnczsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fdTY0IHB0czsKLSB9IHN0b3A7Ci0gc3RydWN0IHsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgcHRzOworICAgIH0gc3RvcDsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBzcGVlZDsKLSBfX3UzMiBmb3JtYXQ7Ci0gfSBwbGF5OwotIHN0cnVjdCB7CisgICAgICBfX3MzMiBzcGVlZDsKKyAgICAgIF9fdTMyIGZvcm1hdDsKKyAgICB9IHBsYXk7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGF0YVsxNl07Ci0gfSByYXc7Ci0gfTsKKyAgICAgIF9fdTMyIGRhdGFbMTZdOworICAgIH0gcmF3OworICB9OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX1ZTWU5DX0ZJRUxEX1VOS05PV04gKDApCkBAIC0xMDIsMTA3ICsxMDIsMTA1IEBACiAjZGVmaW5lIFZJREVPX1ZTWU5DX0ZJRUxEX1BST0dSRVNTSVZFICgzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2aWRlb19ldmVudCB7Ci0gX19zMzIgdHlwZTsKKyAgX19zMzIgdHlwZTsKICNkZWZpbmUgVklERU9fRVZFTlRfU0laRV9DSEFOR0VEIDEKICNkZWZpbmUgVklERU9fRVZFTlRfRlJBTUVfUkFURV9DSEFOR0VEIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX0VWRU5UX0RFQ09ERVJfU1RPUFBFRCAzCiAjZGVmaW5lIFZJREVPX0VWRU5UX1ZTWU5DIDQKLSBfX2tlcm5lbF90aW1lX3QgdGltZXN0YW1wOwotIHVuaW9uIHsKKyAgX19rZXJuZWxfdGltZV90IHRpbWVzdGFtcDsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2aWRlb19zaXplX3Qgc2l6ZTsKLSB1bnNpZ25lZCBpbnQgZnJhbWVfcmF0ZTsKLSB1bnNpZ25lZCBjaGFyIHZzeW5jX2ZpZWxkOwotIH0gdTsKKyAgICB2aWRlb19zaXplX3Qgc2l6ZTsKKyAgICB1bnNpZ25lZCBpbnQgZnJhbWVfcmF0ZTsKKyAgICB1bnNpZ25lZCBjaGFyIHZzeW5jX2ZpZWxkOworICB9IHU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB2aWRlb19zdGF0dXMgewotIGludCB2aWRlb19ibGFuazsKLSB2aWRlb19wbGF5X3N0YXRlX3QgcGxheV9zdGF0ZTsKKyAgaW50IHZpZGVvX2JsYW5rOworICB2aWRlb19wbGF5X3N0YXRlX3QgcGxheV9zdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdmlkZW9fc3RyZWFtX3NvdXJjZV90IHN0cmVhbV9zb3VyY2U7Ci0gdmlkZW9fZm9ybWF0X3QgdmlkZW9fZm9ybWF0OwotIHZpZGVvX2Rpc3BsYXlmb3JtYXRfdCBkaXNwbGF5X2Zvcm1hdDsKKyAgdmlkZW9fc3RyZWFtX3NvdXJjZV90IHN0cmVhbV9zb3VyY2U7CisgIHZpZGVvX2Zvcm1hdF90IHZpZGVvX2Zvcm1hdDsKKyAgdmlkZW9fZGlzcGxheWZvcm1hdF90IGRpc3BsYXlfZm9ybWF0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdmlkZW9fc3RpbGxfcGljdHVyZSB7Ci0gY2hhciBfX3VzZXIgKmlGcmFtZTsKLSBfX3MzMiBzaXplOworICBjaGFyIF9fdXNlciAqIGlGcmFtZTsKKyAgX19zMzIgc2l6ZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotdHlwZWRlZgotc3RydWN0IHZpZGVvX2hpZ2hsaWdodCB7Ci0gaW50IGFjdGl2ZTsKLSBfX3U4IGNvbnRyYXN0MTsKK3R5cGVkZWYgc3RydWN0IHZpZGVvX2hpZ2hsaWdodCB7CisgIGludCBhY3RpdmU7CisgIF9fdTggY29udHJhc3QxOworICBfX3U4IGNvbnRyYXN0MjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjb250cmFzdDI7Ci0gX191OCBjb2xvcjE7Ci0gX191OCBjb2xvcjI7Ci0gX191MzIgeXBvczsKKyAgX191OCBjb2xvcjE7CisgIF9fdTggY29sb3IyOworICBfX3UzMiB5cG9zOworICBfX3UzMiB4cG9zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB4cG9zOwogfSB2aWRlb19oaWdobGlnaHRfdDsKIHR5cGVkZWYgc3RydWN0IHZpZGVvX3NwdSB7Ci0gaW50IGFjdGl2ZTsKKyAgaW50IGFjdGl2ZTsKKyAgaW50IHN0cmVhbV9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHN0cmVhbV9pZDsKIH0gdmlkZW9fc3B1X3Q7CiB0eXBlZGVmIHN0cnVjdCB2aWRlb19zcHVfcGFsZXR0ZSB7Ci0gaW50IGxlbmd0aDsKKyAgaW50IGxlbmd0aDsKKyAgX191OCBfX3VzZXIgKiBwYWxldHRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IF9fdXNlciAqcGFsZXR0ZTsKIH0gdmlkZW9fc3B1X3BhbGV0dGVfdDsKIHR5cGVkZWYgc3RydWN0IHZpZGVvX25hdmlfcGFjayB7Ci0gaW50IGxlbmd0aDsKKyAgaW50IGxlbmd0aDsKKyAgX191OCBkYXRhWzEwMjRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRhdGFbMTAyNF07CiB9IHZpZGVvX25hdmlfcGFja190OwogdHlwZWRlZiBfX3UxNiB2aWRlb19hdHRyaWJ1dGVzX3Q7CiAjZGVmaW5lIFZJREVPX0NBUF9NUEVHMSAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19DQVBfTVBFRzIgMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklERU9fQ0FQX1NZUyA0CiAjZGVmaW5lIFZJREVPX0NBUF9QUk9HIDgKICNkZWZpbmUgVklERU9fQ0FQX1NQVSAxNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklERU9fQ0FQX05BVkkgMzIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX0NBUF9DU1MgNjQKICNkZWZpbmUgVklERU9fU1RPUCBfSU8oJ28nLCAyMSkKICNkZWZpbmUgVklERU9fUExBWSBfSU8oJ28nLCAyMikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX0ZSRUVaRSBfSU8oJ28nLCAyMykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX0NPTlRJTlVFIF9JTygnbycsIDI0KQogI2RlZmluZSBWSURFT19TRUxFQ1RfU09VUkNFIF9JTygnbycsIDI1KQogI2RlZmluZSBWSURFT19TRVRfQkxBTksgX0lPKCdvJywgMjYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19HRVRfU1RBVFVTIF9JT1IoJ28nLCAyNywgc3RydWN0IHZpZGVvX3N0YXR1cykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX0dFVF9FVkVOVCBfSU9SKCdvJywgMjgsIHN0cnVjdCB2aWRlb19ldmVudCkKICNkZWZpbmUgVklERU9fU0VUX0RJU1BMQVlfRk9STUFUIF9JTygnbycsIDI5KQogI2RlZmluZSBWSURFT19TVElMTFBJQ1RVUkUgX0lPVygnbycsIDMwLCBzdHJ1Y3QgdmlkZW9fc3RpbGxfcGljdHVyZSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX0ZBU1RfRk9SV0FSRCBfSU8oJ28nLCAzMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX1NMT1dNT1RJT04gX0lPKCdvJywgMzIpCiAjZGVmaW5lIFZJREVPX0dFVF9DQVBBQklMSVRJRVMgX0lPUignbycsIDMzLCB1bnNpZ25lZCBpbnQpCiAjZGVmaW5lIFZJREVPX0NMRUFSX0JVRkZFUiBfSU8oJ28nLCAzNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX1NFVF9JRCBfSU8oJ28nLCAzNSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX1NFVF9TVFJFQU1UWVBFIF9JTygnbycsIDM2KQogI2RlZmluZSBWSURFT19TRVRfRk9STUFUIF9JTygnbycsIDM3KQogI2RlZmluZSBWSURFT19TRVRfU1lTVEVNIF9JTygnbycsIDM4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklERU9fU0VUX0hJR0hMSUdIVCBfSU9XKCdvJywgMzksIHZpZGVvX2hpZ2hsaWdodF90KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklERU9fU0VUX1NQVSBfSU9XKCdvJywgNTAsIHZpZGVvX3NwdV90KQogI2RlZmluZSBWSURFT19TRVRfU1BVX1BBTEVUVEUgX0lPVygnbycsIDUxLCB2aWRlb19zcHVfcGFsZXR0ZV90KQogI2RlZmluZSBWSURFT19HRVRfTkFWSSBfSU9SKCdvJywgNTIsIHZpZGVvX25hdmlfcGFja190KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklERU9fU0VUX0FUVFJJQlVURVMgX0lPKCdvJywgNTMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19HRVRfU0laRSBfSU9SKCdvJywgNTUsIHZpZGVvX3NpemVfdCkKICNkZWZpbmUgVklERU9fR0VUX0ZSQU1FX1JBVEUgX0lPUignbycsIDU2LCB1bnNpZ25lZCBpbnQpCiAjZGVmaW5lIFZJREVPX0dFVF9QVFMgX0lPUignbycsIDU3LCBfX3U2NCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJREVPX0dFVF9GUkFNRV9DT1VOVCBfSU9SKCdvJywgNTgsIF9fdTY0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklERU9fQ09NTUFORCBfSU9XUignbycsIDU5LCBzdHJ1Y3QgdmlkZW9fY29tbWFuZCkKICNkZWZpbmUgVklERU9fVFJZX0NPTU1BTkQgX0lPV1IoJ28nLCA2MCwgc3RydWN0IHZpZGVvX2NvbW1hbmQpCiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VkZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lZGQuaAppbmRleCBjZGUxZGU5Li4xMzhkZTJjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VkZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWRkLmgKQEAgLTU2LDE0NSArNTYsMTQ1IEBACiAjZGVmaW5lIEVERF9JTkZPX1VTRV9JTlQxM19GTjUwICgxIDw8IDcpCiBzdHJ1Y3QgZWRkX2RldmljZV9wYXJhbXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBsZW5ndGg7Ci0gX191MTYgaW5mb19mbGFnczsKLSBfX3UzMiBudW1fZGVmYXVsdF9jeWxpbmRlcnM7Ci0gX191MzIgbnVtX2RlZmF1bHRfaGVhZHM7CisgIF9fdTE2IGxlbmd0aDsKKyAgX191MTYgaW5mb19mbGFnczsKKyAgX191MzIgbnVtX2RlZmF1bHRfY3lsaW5kZXJzOworICBfX3UzMiBudW1fZGVmYXVsdF9oZWFkczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2VjdG9yc19wZXJfdHJhY2s7Ci0gX191NjQgbnVtYmVyX29mX3NlY3RvcnM7Ci0gX191MTYgYnl0ZXNfcGVyX3NlY3RvcjsKLSBfX3UzMiBkcHRlX3B0cjsKKyAgX191MzIgc2VjdG9yc19wZXJfdHJhY2s7CisgIF9fdTY0IG51bWJlcl9vZl9zZWN0b3JzOworICBfX3UxNiBieXRlc19wZXJfc2VjdG9yOworICBfX3UzMiBkcHRlX3B0cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYga2V5OwotIF9fdTggZGV2aWNlX3BhdGhfaW5mb19sZW5ndGg7Ci0gX191OCByZXNlcnZlZDI7Ci0gX191MTYgcmVzZXJ2ZWQzOworICBfX3UxNiBrZXk7CisgIF9fdTggZGV2aWNlX3BhdGhfaW5mb19sZW5ndGg7CisgIF9fdTggcmVzZXJ2ZWQyOworICBfX3UxNiByZXNlcnZlZDM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaG9zdF9idXNfdHlwZVs0XTsKLSBfX3U4IGludGVyZmFjZV90eXBlWzhdOwotIHVuaW9uIHsKLSBzdHJ1Y3QgeworICBfX3U4IGhvc3RfYnVzX3R5cGVbNF07CisgIF9fdTggaW50ZXJmYWNlX3R5cGVbOF07CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBiYXNlX2FkZHJlc3M7Ci0gX191MTYgcmVzZXJ2ZWQxOwotIF9fdTMyIHJlc2VydmVkMjsKLSB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKSBpc2E7CisgICAgICBfX3UxNiBiYXNlX2FkZHJlc3M7CisgICAgICBfX3UxNiByZXNlcnZlZDE7CisgICAgICBfX3UzMiByZXNlcnZlZDI7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBpc2E7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX191OCBidXM7Ci0gX191OCBzbG90OwotIF9fdTggZnVuY3Rpb247CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTggYnVzOworICAgICAgX191OCBzbG90OworICAgICAgX191OCBmdW5jdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjaGFubmVsOwotIF9fdTMyIHJlc2VydmVkOwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIHBjaTsKLSBzdHJ1Y3QgeworICAgICAgX191OCBjaGFubmVsOworICAgICAgX191MzIgcmVzZXJ2ZWQ7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBwY2k7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzZXJ2ZWQ7Ci0gfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkgaWJuZDsKLSBzdHJ1Y3QgewotIF9fdTY0IHJlc2VydmVkOworICAgICAgX191NjQgcmVzZXJ2ZWQ7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBpYm5kOworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCByZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkgeHByczsKLSBzdHJ1Y3QgewotIF9fdTY0IHJlc2VydmVkOwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIGh0cHQ7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSB4cHJzOworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCByZXNlcnZlZDsKKyAgICB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIGh0cHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX191NjQgcmVzZXJ2ZWQ7Ci0gfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkgdW5rbm93bjsKLSB9IGludGVyZmFjZV9wYXRoOworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCByZXNlcnZlZDsKKyAgICB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIHVua25vd247CisgIH0gaW50ZXJmYWNlX3BhdGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBzdHJ1Y3QgewotIF9fdTggZGV2aWNlOwotIF9fdTggcmVzZXJ2ZWQxOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTggZGV2aWNlOworICAgICAgX191OCByZXNlcnZlZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHJlc2VydmVkMjsKLSBfX3UzMiByZXNlcnZlZDM7Ci0gX191NjQgcmVzZXJ2ZWQ0OwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIGF0YTsKKyAgICAgIF9fdTE2IHJlc2VydmVkMjsKKyAgICAgIF9fdTMyIHJlc2VydmVkMzsKKyAgICAgIF9fdTY0IHJlc2VydmVkNDsKKyAgICB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX3U4IGRldmljZTsKLSBfX3U4IGx1bjsKLSBfX3U4IHJlc2VydmVkMTsKKyAgICBzdHJ1Y3QgeworICAgICAgX191OCBkZXZpY2U7CisgICAgICBfX3U4IGx1bjsKKyAgICAgIF9fdTggcmVzZXJ2ZWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlc2VydmVkMjsKLSBfX3UzMiByZXNlcnZlZDM7Ci0gX191NjQgcmVzZXJ2ZWQ0OwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIGF0YXBpOworICAgICAgX191OCByZXNlcnZlZDI7CisgICAgICBfX3UzMiByZXNlcnZlZDM7CisgICAgICBfX3U2NCByZXNlcnZlZDQ7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBhdGFwaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX3UxNiBpZDsKLSBfX3U2NCBsdW47Ci0gX191MTYgcmVzZXJ2ZWQxOworICAgIHN0cnVjdCB7CisgICAgICBfX3UxNiBpZDsKKyAgICAgIF9fdTY0IGx1bjsKKyAgICAgIF9fdTE2IHJlc2VydmVkMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWQyOwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIHNjc2k7Ci0gc3RydWN0IHsKLSBfX3U2NCBzZXJpYWxfbnVtYmVyOworICAgICAgX191MzIgcmVzZXJ2ZWQyOworICAgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgc2NzaTsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgc2VyaWFsX251bWJlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzZXJ2ZWQ7Ci0gfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkgdXNiOwotIHN0cnVjdCB7Ci0gX191NjQgZXVpOworICAgICAgX191NjQgcmVzZXJ2ZWQ7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSB1c2I7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IGV1aTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzZXJ2ZWQ7Ci0gfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkgaTEzOTQ7Ci0gc3RydWN0IHsKLSBfX3U2NCB3d2lkOworICAgICAgX191NjQgcmVzZXJ2ZWQ7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBpMTM5NDsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgd3dpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbHVuOwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIGZpYnJlOwotIHN0cnVjdCB7Ci0gX191NjQgaWRlbnRpdHlfdGFnOworICAgICAgX191NjQgbHVuOworICAgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgZmlicmU7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IGlkZW50aXR5X3RhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzZXJ2ZWQ7Ci0gfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkgaTJvOwotIHN0cnVjdCB7Ci0gX191MzIgYXJyYXlfbnVtYmVyOworICAgICAgX191NjQgcmVzZXJ2ZWQ7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBpMm87CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTMyIGFycmF5X251bWJlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWQxOwotIF9fdTY0IHJlc2VydmVkMjsKLSB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKSByYWlkOwotIHN0cnVjdCB7CisgICAgICBfX3UzMiByZXNlcnZlZDE7CisgICAgICBfX3U2NCByZXNlcnZlZDI7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSByYWlkOworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGV2aWNlOwotIF9fdTggcmVzZXJ2ZWQxOwotIF9fdTE2IHJlc2VydmVkMjsKLSBfX3UzMiByZXNlcnZlZDM7CisgICAgICBfX3U4IGRldmljZTsKKyAgICAgIF9fdTggcmVzZXJ2ZWQxOworICAgICAgX191MTYgcmVzZXJ2ZWQyOworICAgICAgX191MzIgcmVzZXJ2ZWQzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXNlcnZlZDQ7Ci0gfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkgc2F0YTsKLSBzdHJ1Y3QgewotIF9fdTY0IHJlc2VydmVkMTsKKyAgICAgIF9fdTY0IHJlc2VydmVkNDsKKyAgICB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIHNhdGE7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IHJlc2VydmVkMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzZXJ2ZWQyOwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIHVua25vd247Ci0gfSBkZXZpY2VfcGF0aDsKLSBfX3U4IHJlc2VydmVkNDsKKyAgICAgIF9fdTY0IHJlc2VydmVkMjsKKyAgICB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIHVua25vd247CisgIH0gZGV2aWNlX3BhdGg7CisgIF9fdTggcmVzZXJ2ZWQ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNoZWNrc3VtOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggY2hlY2tzdW07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGVkZF9pbmZvIHsKLSBfX3U4IGRldmljZTsKKyAgX191OCBkZXZpY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdmVyc2lvbjsKLSBfX3UxNiBpbnRlcmZhY2Vfc3VwcG9ydDsKLSBfX3UxNiBsZWdhY3lfbWF4X2N5bGluZGVyOwotIF9fdTggbGVnYWN5X21heF9oZWFkOworICBfX3U4IHZlcnNpb247CisgIF9fdTE2IGludGVyZmFjZV9zdXBwb3J0OworICBfX3UxNiBsZWdhY3lfbWF4X2N5bGluZGVyOworICBfX3U4IGxlZ2FjeV9tYXhfaGVhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBsZWdhY3lfc2VjdG9yc19wZXJfdHJhY2s7Ci0gc3RydWN0IGVkZF9kZXZpY2VfcGFyYW1zIHBhcmFtczsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGxlZ2FjeV9zZWN0b3JzX3Blcl90cmFjazsKKyAgc3RydWN0IGVkZF9kZXZpY2VfcGFyYW1zIHBhcmFtczsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgZWRkIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG1icl9zaWduYXR1cmVbRUREX01CUl9TSUdfTUFYXTsKLSBzdHJ1Y3QgZWRkX2luZm8gZWRkX2luZm9bRURETUFYTlJdOwotIHVuc2lnbmVkIGNoYXIgbWJyX3NpZ25hdHVyZV9ucjsKLSB1bnNpZ25lZCBjaGFyIGVkZF9pbmZvX25yOworICB1bnNpZ25lZCBpbnQgbWJyX3NpZ25hdHVyZVtFRERfTUJSX1NJR19NQVhdOworICBzdHJ1Y3QgZWRkX2luZm8gZWRkX2luZm9bRURETUFYTlJdOworICB1bnNpZ25lZCBjaGFyIG1icl9zaWduYXR1cmVfbnI7CisgIHVuc2lnbmVkIGNoYXIgZWRkX2luZm9fbnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lZnNfZnNfc2IuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWZzX2ZzX3NiLmgKaW5kZXggMWUyNTcxMC4uODdmZDQxNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lZnNfZnNfc2IuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Vmc19mc19zYi5oCkBAIC0yOCw0NCArMjgsNDQgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVGU19ST09USU5PREUgMgogc3RydWN0IGVmc19zdXBlciB7Ci0gX19iZTMyIGZzX3NpemU7Ci0gX19iZTMyIGZzX2ZpcnN0Y2c7CisgIF9fYmUzMiBmc19zaXplOworICBfX2JlMzIgZnNfZmlyc3RjZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGZzX2NnZnNpemU7Ci0gX19iZTE2IGZzX2NnaXNpemU7Ci0gX19iZTE2IGZzX3NlY3RvcnM7Ci0gX19iZTE2IGZzX2hlYWRzOworICBfX2JlMzIgZnNfY2dmc2l6ZTsKKyAgX19iZTE2IGZzX2NnaXNpemU7CisgIF9fYmUxNiBmc19zZWN0b3JzOworICBfX2JlMTYgZnNfaGVhZHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBmc19uY2c7Ci0gX19iZTE2IGZzX2RpcnR5OwotIF9fYmUzMiBmc190aW1lOwotIF9fYmUzMiBmc19tYWdpYzsKKyAgX19iZTE2IGZzX25jZzsKKyAgX19iZTE2IGZzX2RpcnR5OworICBfX2JlMzIgZnNfdGltZTsKKyAgX19iZTMyIGZzX21hZ2ljOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGZzX2ZuYW1lWzZdOwotIGNoYXIgZnNfZnBhY2tbNl07Ci0gX19iZTMyIGZzX2Jtc2l6ZTsKLSBfX2JlMzIgZnNfdGZyZWU7CisgIGNoYXIgZnNfZm5hbWVbNl07CisgIGNoYXIgZnNfZnBhY2tbNl07CisgIF9fYmUzMiBmc19ibXNpemU7CisgIF9fYmUzMiBmc190ZnJlZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGZzX3Rpbm9kZTsKLSBfX2JlMzIgZnNfYm1ibG9jazsKLSBfX2JlMzIgZnNfcmVwbHNiOwotIF9fYmUzMiBmc19sYXN0aWFsbG9jOworICBfX2JlMzIgZnNfdGlub2RlOworICBfX2JlMzIgZnNfYm1ibG9jazsKKyAgX19iZTMyIGZzX3JlcGxzYjsKKyAgX19iZTMyIGZzX2xhc3RpYWxsb2M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgZnNfc3BhcmVbMjBdOwotIF9fYmUzMiBmc19jaGVja3N1bTsKKyAgY2hhciBmc19zcGFyZVsyMF07CisgIF9fYmUzMiBmc19jaGVja3N1bTsKIH07CiBzdHJ1Y3QgZWZzX3NiX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmc19tYWdpYzsKLSBfX3UzMiBmc19zdGFydDsKLSBfX3UzMiBmaXJzdF9ibG9jazsKLSBfX3UzMiB0b3RhbF9ibG9ja3M7CisgIF9fdTMyIGZzX21hZ2ljOworICBfX3UzMiBmc19zdGFydDsKKyAgX191MzIgZmlyc3RfYmxvY2s7CisgIF9fdTMyIHRvdGFsX2Jsb2NrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZ3JvdXBfc2l6ZTsKLSBfX3UzMiBkYXRhX2ZyZWU7Ci0gX191MzIgaW5vZGVfZnJlZTsKLSBfX3UxNiBpbm9kZV9ibG9ja3M7CisgIF9fdTMyIGdyb3VwX3NpemU7CisgIF9fdTMyIGRhdGFfZnJlZTsKKyAgX191MzIgaW5vZGVfZnJlZTsKKyAgX191MTYgaW5vZGVfYmxvY2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB0b3RhbF9ncm91cHM7CisgIF9fdTE2IHRvdGFsX2dyb3VwczsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWxmLWVtLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VsZi1lbS5oCmluZGV4IDFlODZjNWMuLjhmZTkzOWEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWxmLWVtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lbGYtZW0uaApAQCAtNTEsMTYgKzUxLDE4IEBACiAjZGVmaW5lIEVNX00zMlIgODgKICNkZWZpbmUgRU1fTU4xMDMwMCA4OQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRU1fT1BFTlJJU0MgOTIKICNkZWZpbmUgRU1fQkxBQ0tGSU4gMTA2CiAjZGVmaW5lIEVNX1RJX0M2MDAwIDE0MAogI2RlZmluZSBFTV9BQVJDSDY0IDE4MwotI2RlZmluZSBFTV9GUlYgMHg1NDQxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFTV9GUlYgMHg1NDQxCiAjZGVmaW5lIEVNX0FWUjMyIDB4MThhZAogI2RlZmluZSBFTV9BTFBIQSAweDkwMjYKICNkZWZpbmUgRU1fQ1lHTlVTX1Y4NTAgMHg5MDgwCi0jZGVmaW5lIEVNX0NZR05VU19NMzJSIDB4OTA0MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRU1fQ1lHTlVTX00zMlIgMHg5MDQxCiAjZGVmaW5lIEVNX1MzOTBfT0xEIDB4QTM5MAogI2RlZmluZSBFTV9DWUdOVVNfTU4xMDMwMCAweGJlZWYKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWxmLWZkcGljLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VsZi1mZHBpYy5oCmluZGV4IDQ0NDE4OTAuLjQ1YTU2ZTQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWxmLWZkcGljLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lbGYtZmRwaWMuaApAQCAtMjIsMTYgKzIyLDE2IEBACiAjZGVmaW5lIFBUX0dOVV9TVEFDSyAoUFRfTE9PUyArIDB4NDc0ZTU1MSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZWxmMzJfZmRwaWNfbG9hZHNlZyB7Ci0gRWxmMzJfQWRkciBhZGRyOwotIEVsZjMyX0FkZHIgcF92YWRkcjsKLSBFbGYzMl9Xb3JkIHBfbWVtc3o7CisgIEVsZjMyX0FkZHIgYWRkcjsKKyAgRWxmMzJfQWRkciBwX3ZhZGRyOworICBFbGYzMl9Xb3JkIHBfbWVtc3o7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBlbGYzMl9mZHBpY19sb2FkbWFwIHsKLSBFbGYzMl9IYWxmIHZlcnNpb247Ci0gRWxmMzJfSGFsZiBuc2VnczsKKyAgRWxmMzJfSGFsZiB2ZXJzaW9uOworICBFbGYzMl9IYWxmIG5zZWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZWxmMzJfZmRwaWNfbG9hZHNlZyBzZWdzW107CisgIHN0cnVjdCBlbGYzMl9mZHBpY19sb2Fkc2VnIHNlZ3NbXTsKIH07CiAjZGVmaW5lIEVMRjMyX0ZEUElDX0xPQURNQVBfVkVSU0lPTiAweDAwMDAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lbGYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWxmLmgKaW5kZXggMGUwZDcyNS4uNGU0Mjc1OCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lbGYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VsZi5oCkBAIC0xMzgsMjIgKzEzOCwyMiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRUxGNjRfU1RfQklORCh4KSBFTEZfU1RfQklORCh4KQogI2RlZmluZSBFTEY2NF9TVF9UWVBFKHgpIEVMRl9TVF9UWVBFKHgpCi10eXBlZGVmIHN0cnVjdCBkeW5hbWljewotIEVsZjMyX1N3b3JkIGRfdGFnOwordHlwZWRlZiBzdHJ1Y3QgZHluYW1pYyB7CisgIEVsZjMyX1N3b3JkIGRfdGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbnsKLSBFbGYzMl9Td29yZCBkX3ZhbDsKLSBFbGYzMl9BZGRyIGRfcHRyOwotIH0gZF91bjsKKyAgdW5pb24geworICAgIEVsZjMyX1N3b3JkIGRfdmFsOworICAgIEVsZjMyX0FkZHIgZF9wdHI7CisgIH0gZF91bjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IEVsZjMyX0R5bjsKIHR5cGVkZWYgc3RydWN0IHsKLSBFbGY2NF9TeHdvcmQgZF90YWc7Ci0gdW5pb24geworICBFbGY2NF9TeHdvcmQgZF90YWc7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRWxmNjRfWHdvcmQgZF92YWw7Ci0gRWxmNjRfQWRkciBkX3B0cjsKLSB9IGRfdW47CisgICAgRWxmNjRfWHdvcmQgZF92YWw7CisgICAgRWxmNjRfQWRkciBkX3B0cjsKKyAgfSBkX3VuOwogfSBFbGY2NF9EeW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFTEYzMl9SX1NZTSh4KSAoKHgpID4+IDgpCkBAIC0xNjIsMTE2ICsxNjIsMTE2IEBACiAjZGVmaW5lIEVMRjY0X1JfVFlQRShpKSAoKGkpICYgMHhmZmZmZmZmZikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBlbGYzMl9yZWwgewotIEVsZjMyX0FkZHIgcl9vZmZzZXQ7Ci0gRWxmMzJfV29yZCByX2luZm87CisgIEVsZjMyX0FkZHIgcl9vZmZzZXQ7CisgIEVsZjMyX1dvcmQgcl9pbmZvOwogfSBFbGYzMl9SZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZWxmNjRfcmVsIHsKLSBFbGY2NF9BZGRyIHJfb2Zmc2V0OwotIEVsZjY0X1h3b3JkIHJfaW5mbzsKKyAgRWxmNjRfQWRkciByX29mZnNldDsKKyAgRWxmNjRfWHdvcmQgcl9pbmZvOwogfSBFbGY2NF9SZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotdHlwZWRlZiBzdHJ1Y3QgZWxmMzJfcmVsYXsKLSBFbGYzMl9BZGRyIHJfb2Zmc2V0OwotIEVsZjMyX1dvcmQgcl9pbmZvOwotIEVsZjMyX1N3b3JkIHJfYWRkZW5kOwordHlwZWRlZiBzdHJ1Y3QgZWxmMzJfcmVsYSB7CisgIEVsZjMyX0FkZHIgcl9vZmZzZXQ7CisgIEVsZjMyX1dvcmQgcl9pbmZvOworICBFbGYzMl9Td29yZCByX2FkZGVuZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IEVsZjMyX1JlbGE7CiB0eXBlZGVmIHN0cnVjdCBlbGY2NF9yZWxhIHsKLSBFbGY2NF9BZGRyIHJfb2Zmc2V0OwotIEVsZjY0X1h3b3JkIHJfaW5mbzsKKyAgRWxmNjRfQWRkciByX29mZnNldDsKKyAgRWxmNjRfWHdvcmQgcl9pbmZvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGY2NF9TeHdvcmQgcl9hZGRlbmQ7CisgIEVsZjY0X1N4d29yZCByX2FkZGVuZDsKIH0gRWxmNjRfUmVsYTsKLXR5cGVkZWYgc3RydWN0IGVsZjMyX3N5bXsKLSBFbGYzMl9Xb3JkIHN0X25hbWU7Cit0eXBlZGVmIHN0cnVjdCBlbGYzMl9zeW0geworICBFbGYzMl9Xb3JkIHN0X25hbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjMyX0FkZHIgc3RfdmFsdWU7Ci0gRWxmMzJfV29yZCBzdF9zaXplOwotIHVuc2lnbmVkIGNoYXIgc3RfaW5mbzsKLSB1bnNpZ25lZCBjaGFyIHN0X290aGVyOworICBFbGYzMl9BZGRyIHN0X3ZhbHVlOworICBFbGYzMl9Xb3JkIHN0X3NpemU7CisgIHVuc2lnbmVkIGNoYXIgc3RfaW5mbzsKKyAgdW5zaWduZWQgY2hhciBzdF9vdGhlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRWxmMzJfSGFsZiBzdF9zaG5keDsKKyAgRWxmMzJfSGFsZiBzdF9zaG5keDsKIH0gRWxmMzJfU3ltOwogdHlwZWRlZiBzdHJ1Y3QgZWxmNjRfc3ltIHsKLSBFbGY2NF9Xb3JkIHN0X25hbWU7CisgIEVsZjY0X1dvcmQgc3RfbmFtZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBzdF9pbmZvOwotIHVuc2lnbmVkIGNoYXIgc3Rfb3RoZXI7Ci0gRWxmNjRfSGFsZiBzdF9zaG5keDsKLSBFbGY2NF9BZGRyIHN0X3ZhbHVlOworICB1bnNpZ25lZCBjaGFyIHN0X2luZm87CisgIHVuc2lnbmVkIGNoYXIgc3Rfb3RoZXI7CisgIEVsZjY0X0hhbGYgc3Rfc2huZHg7CisgIEVsZjY0X0FkZHIgc3RfdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjY0X1h3b3JkIHN0X3NpemU7CisgIEVsZjY0X1h3b3JkIHN0X3NpemU7CiB9IEVsZjY0X1N5bTsKICNkZWZpbmUgRUlfTklERU5UIDE2Ci10eXBlZGVmIHN0cnVjdCBlbGYzMl9oZHJ7Cit0eXBlZGVmIHN0cnVjdCBlbGYzMl9oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGVfaWRlbnRbRUlfTklERU5UXTsKLSBFbGYzMl9IYWxmIGVfdHlwZTsKLSBFbGYzMl9IYWxmIGVfbWFjaGluZTsKLSBFbGYzMl9Xb3JkIGVfdmVyc2lvbjsKKyAgdW5zaWduZWQgY2hhciBlX2lkZW50W0VJX05JREVOVF07CisgIEVsZjMyX0hhbGYgZV90eXBlOworICBFbGYzMl9IYWxmIGVfbWFjaGluZTsKKyAgRWxmMzJfV29yZCBlX3ZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjMyX0FkZHIgZV9lbnRyeTsKLSBFbGYzMl9PZmYgZV9waG9mZjsKLSBFbGYzMl9PZmYgZV9zaG9mZjsKLSBFbGYzMl9Xb3JkIGVfZmxhZ3M7CisgIEVsZjMyX0FkZHIgZV9lbnRyeTsKKyAgRWxmMzJfT2ZmIGVfcGhvZmY7CisgIEVsZjMyX09mZiBlX3Nob2ZmOworICBFbGYzMl9Xb3JkIGVfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjMyX0hhbGYgZV9laHNpemU7Ci0gRWxmMzJfSGFsZiBlX3BoZW50c2l6ZTsKLSBFbGYzMl9IYWxmIGVfcGhudW07Ci0gRWxmMzJfSGFsZiBlX3NoZW50c2l6ZTsKKyAgRWxmMzJfSGFsZiBlX2Voc2l6ZTsKKyAgRWxmMzJfSGFsZiBlX3BoZW50c2l6ZTsKKyAgRWxmMzJfSGFsZiBlX3BobnVtOworICBFbGYzMl9IYWxmIGVfc2hlbnRzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGYzMl9IYWxmIGVfc2hudW07Ci0gRWxmMzJfSGFsZiBlX3Noc3RybmR4OworICBFbGYzMl9IYWxmIGVfc2hudW07CisgIEVsZjMyX0hhbGYgZV9zaHN0cm5keDsKIH0gRWxmMzJfRWhkcjsKIHR5cGVkZWYgc3RydWN0IGVsZjY0X2hkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZV9pZGVudFtFSV9OSURFTlRdOwotIEVsZjY0X0hhbGYgZV90eXBlOwotIEVsZjY0X0hhbGYgZV9tYWNoaW5lOwotIEVsZjY0X1dvcmQgZV92ZXJzaW9uOworICB1bnNpZ25lZCBjaGFyIGVfaWRlbnRbRUlfTklERU5UXTsKKyAgRWxmNjRfSGFsZiBlX3R5cGU7CisgIEVsZjY0X0hhbGYgZV9tYWNoaW5lOworICBFbGY2NF9Xb3JkIGVfdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRWxmNjRfQWRkciBlX2VudHJ5OwotIEVsZjY0X09mZiBlX3Bob2ZmOwotIEVsZjY0X09mZiBlX3Nob2ZmOwotIEVsZjY0X1dvcmQgZV9mbGFnczsKKyAgRWxmNjRfQWRkciBlX2VudHJ5OworICBFbGY2NF9PZmYgZV9waG9mZjsKKyAgRWxmNjRfT2ZmIGVfc2hvZmY7CisgIEVsZjY0X1dvcmQgZV9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRWxmNjRfSGFsZiBlX2Voc2l6ZTsKLSBFbGY2NF9IYWxmIGVfcGhlbnRzaXplOwotIEVsZjY0X0hhbGYgZV9waG51bTsKLSBFbGY2NF9IYWxmIGVfc2hlbnRzaXplOworICBFbGY2NF9IYWxmIGVfZWhzaXplOworICBFbGY2NF9IYWxmIGVfcGhlbnRzaXplOworICBFbGY2NF9IYWxmIGVfcGhudW07CisgIEVsZjY0X0hhbGYgZV9zaGVudHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjY0X0hhbGYgZV9zaG51bTsKLSBFbGY2NF9IYWxmIGVfc2hzdHJuZHg7CisgIEVsZjY0X0hhbGYgZV9zaG51bTsKKyAgRWxmNjRfSGFsZiBlX3Noc3RybmR4OwogfSBFbGY2NF9FaGRyOwogI2RlZmluZSBQRl9SIDB4NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUEZfVyAweDIKICNkZWZpbmUgUEZfWCAweDEKLXR5cGVkZWYgc3RydWN0IGVsZjMyX3BoZHJ7Ci0gRWxmMzJfV29yZCBwX3R5cGU7Cit0eXBlZGVmIHN0cnVjdCBlbGYzMl9waGRyIHsKKyAgRWxmMzJfV29yZCBwX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjMyX09mZiBwX29mZnNldDsKLSBFbGYzMl9BZGRyIHBfdmFkZHI7Ci0gRWxmMzJfQWRkciBwX3BhZGRyOwotIEVsZjMyX1dvcmQgcF9maWxlc3o7CisgIEVsZjMyX09mZiBwX29mZnNldDsKKyAgRWxmMzJfQWRkciBwX3ZhZGRyOworICBFbGYzMl9BZGRyIHBfcGFkZHI7CisgIEVsZjMyX1dvcmQgcF9maWxlc3o7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjMyX1dvcmQgcF9tZW1zejsKLSBFbGYzMl9Xb3JkIHBfZmxhZ3M7Ci0gRWxmMzJfV29yZCBwX2FsaWduOworICBFbGYzMl9Xb3JkIHBfbWVtc3o7CisgIEVsZjMyX1dvcmQgcF9mbGFnczsKKyAgRWxmMzJfV29yZCBwX2FsaWduOwogfSBFbGYzMl9QaGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGVsZjY0X3BoZHIgewotIEVsZjY0X1dvcmQgcF90eXBlOwotIEVsZjY0X1dvcmQgcF9mbGFnczsKLSBFbGY2NF9PZmYgcF9vZmZzZXQ7CisgIEVsZjY0X1dvcmQgcF90eXBlOworICBFbGY2NF9Xb3JkIHBfZmxhZ3M7CisgIEVsZjY0X09mZiBwX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRWxmNjRfQWRkciBwX3ZhZGRyOwotIEVsZjY0X0FkZHIgcF9wYWRkcjsKLSBFbGY2NF9Yd29yZCBwX2ZpbGVzejsKLSBFbGY2NF9Yd29yZCBwX21lbXN6OworICBFbGY2NF9BZGRyIHBfdmFkZHI7CisgIEVsZjY0X0FkZHIgcF9wYWRkcjsKKyAgRWxmNjRfWHdvcmQgcF9maWxlc3o7CisgIEVsZjY0X1h3b3JkIHBfbWVtc3o7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjY0X1h3b3JkIHBfYWxpZ247CisgIEVsZjY0X1h3b3JkIHBfYWxpZ247CiB9IEVsZjY0X1BoZHI7CiAjZGVmaW5lIFNIVF9OVUxMIDAKICNkZWZpbmUgU0hUX1BST0dCSVRTIDEKQEAgLTMwOSwzNCArMzA5LDM0IEBACiAjZGVmaW5lIFNITl9DT01NT04gMHhmZmYyCiAjZGVmaW5lIFNITl9ISVJFU0VSVkUgMHhmZmZmCiB0eXBlZGVmIHN0cnVjdCBlbGYzMl9zaGRyIHsKLSBFbGYzMl9Xb3JkIHNoX25hbWU7CisgIEVsZjMyX1dvcmQgc2hfbmFtZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRWxmMzJfV29yZCBzaF90eXBlOwotIEVsZjMyX1dvcmQgc2hfZmxhZ3M7Ci0gRWxmMzJfQWRkciBzaF9hZGRyOwotIEVsZjMyX09mZiBzaF9vZmZzZXQ7CisgIEVsZjMyX1dvcmQgc2hfdHlwZTsKKyAgRWxmMzJfV29yZCBzaF9mbGFnczsKKyAgRWxmMzJfQWRkciBzaF9hZGRyOworICBFbGYzMl9PZmYgc2hfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGYzMl9Xb3JkIHNoX3NpemU7Ci0gRWxmMzJfV29yZCBzaF9saW5rOwotIEVsZjMyX1dvcmQgc2hfaW5mbzsKLSBFbGYzMl9Xb3JkIHNoX2FkZHJhbGlnbjsKKyAgRWxmMzJfV29yZCBzaF9zaXplOworICBFbGYzMl9Xb3JkIHNoX2xpbms7CisgIEVsZjMyX1dvcmQgc2hfaW5mbzsKKyAgRWxmMzJfV29yZCBzaF9hZGRyYWxpZ247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjMyX1dvcmQgc2hfZW50c2l6ZTsKKyAgRWxmMzJfV29yZCBzaF9lbnRzaXplOwogfSBFbGYzMl9TaGRyOwogdHlwZWRlZiBzdHJ1Y3QgZWxmNjRfc2hkciB7Ci0gRWxmNjRfV29yZCBzaF9uYW1lOworICBFbGY2NF9Xb3JkIHNoX25hbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjY0X1dvcmQgc2hfdHlwZTsKLSBFbGY2NF9Yd29yZCBzaF9mbGFnczsKLSBFbGY2NF9BZGRyIHNoX2FkZHI7Ci0gRWxmNjRfT2ZmIHNoX29mZnNldDsKKyAgRWxmNjRfV29yZCBzaF90eXBlOworICBFbGY2NF9Yd29yZCBzaF9mbGFnczsKKyAgRWxmNjRfQWRkciBzaF9hZGRyOworICBFbGY2NF9PZmYgc2hfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGY2NF9Yd29yZCBzaF9zaXplOwotIEVsZjY0X1dvcmQgc2hfbGluazsKLSBFbGY2NF9Xb3JkIHNoX2luZm87Ci0gRWxmNjRfWHdvcmQgc2hfYWRkcmFsaWduOworICBFbGY2NF9Yd29yZCBzaF9zaXplOworICBFbGY2NF9Xb3JkIHNoX2xpbms7CisgIEVsZjY0X1dvcmQgc2hfaW5mbzsKKyAgRWxmNjRfWHdvcmQgc2hfYWRkcmFsaWduOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFbGY2NF9Yd29yZCBzaF9lbnRzaXplOworICBFbGY2NF9Yd29yZCBzaF9lbnRzaXplOwogfSBFbGY2NF9TaGRyOwogI2RlZmluZSBFSV9NQUcwIDAKICNkZWZpbmUgRUlfTUFHMSAxCkBAIC00MDQsMjYgKzQwNCwyOCBAQAogI2RlZmluZSBOVF9TMzkwX0xBU1RfQlJFQUsgMHgzMDYKICNkZWZpbmUgTlRfUzM5MF9TWVNURU1fQ0FMTCAweDMwNwogI2RlZmluZSBOVF9TMzkwX1REQiAweDMwOAotI2RlZmluZSBOVF9BUk1fVkZQIDB4NDAwCisjZGVmaW5lIE5UX1MzOTBfVlhSU19MT1cgMHgzMDkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE5UX1MzOTBfVlhSU19ISUdIIDB4MzBhCisjZGVmaW5lIE5UX0FSTV9WRlAgMHg0MDAKICNkZWZpbmUgTlRfQVJNX1RMUyAweDQwMQogI2RlZmluZSBOVF9BUk1fSFdfQlJFQUsgMHg0MDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5UX0FSTV9IV19XQVRDSCAweDQwMwogI2RlZmluZSBOVF9NRVRBR19DQlVGIDB4NTAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOVF9NRVRBR19SUElQRSAweDUwMQogI2RlZmluZSBOVF9NRVRBR19UTFMgMHg1MDIKLXR5cGVkZWYgc3RydWN0IGVsZjMyX25vdGUgewotIEVsZjMyX1dvcmQgbl9uYW1lc3o7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjMyX1dvcmQgbl9kZXNjc3o7Ci0gRWxmMzJfV29yZCBuX3R5cGU7Cit0eXBlZGVmIHN0cnVjdCBlbGYzMl9ub3RlIHsKKyAgRWxmMzJfV29yZCBuX25hbWVzejsKKyAgRWxmMzJfV29yZCBuX2Rlc2NzejsKKyAgRWxmMzJfV29yZCBuX3R5cGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBFbGYzMl9OaGRyOwogdHlwZWRlZiBzdHJ1Y3QgZWxmNjRfbm90ZSB7CisgIEVsZjY0X1dvcmQgbl9uYW1lc3o7CisgIEVsZjY0X1dvcmQgbl9kZXNjc3o7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVsZjY0X1dvcmQgbl9uYW1lc3o7Ci0gRWxmNjRfV29yZCBuX2Rlc2NzejsKLSBFbGY2NF9Xb3JkIG5fdHlwZTsKKyAgRWxmNjRfV29yZCBuX3R5cGU7CiB9IEVsZjY0X05oZHI7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VsZmNvcmUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWxmY29yZS5oCmluZGV4IDBlMjMzOGUuLmRiZjJjODQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWxmY29yZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZWxmY29yZS5oCkBAIC0yNiw2MCArMjYsNTYgQEAKICNpbmNsdWRlIDxsaW51eC9lbGYuaD4KICNpbmNsdWRlIDxsaW51eC9mcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBlbGZfc2lnaW5mbwotewotIGludCBzaV9zaWdubzsKLSBpbnQgc2lfY29kZTsKK3N0cnVjdCBlbGZfc2lnaW5mbyB7CisgIGludCBzaV9zaWdubzsKKyAgaW50IHNpX2NvZGU7CisgIGludCBzaV9lcnJubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHNpX2Vycm5vOwogfTsKIHR5cGVkZWYgZWxmX2dyZWdfdCBncmVnX3Q7CiB0eXBlZGVmIGVsZl9ncmVnc2V0X3QgZ3JlZ3NldF90OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgZWxmX2ZwcmVnc2V0X3QgZnByZWdzZXRfdDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIGVsZl9mcHhyZWdzZXRfdCBmcHhyZWdzZXRfdDsKICNkZWZpbmUgTkdSRUcgRUxGX05HUkVHCi1zdHJ1Y3QgZWxmX3Byc3RhdHVzCitzdHJ1Y3QgZWxmX3Byc3RhdHVzIHsKKyAgc3RydWN0IGVsZl9zaWdpbmZvIHByX2luZm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIHN0cnVjdCBlbGZfc2lnaW5mbyBwcl9pbmZvOwotIHNob3J0IHByX2N1cnNpZzsKLSB1bnNpZ25lZCBsb25nIHByX3NpZ3BlbmQ7CisgIHNob3J0IHByX2N1cnNpZzsKKyAgdW5zaWduZWQgbG9uZyBwcl9zaWdwZW5kOworICB1bnNpZ25lZCBsb25nIHByX3NpZ2hvbGQ7CisgIHBpZF90IHByX3BpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBwcl9zaWdob2xkOwotIHBpZF90IHByX3BpZDsKLSBwaWRfdCBwcl9wcGlkOwotIHBpZF90IHByX3BncnA7CisgIHBpZF90IHByX3BwaWQ7CisgIHBpZF90IHByX3BncnA7CisgIHBpZF90IHByX3NpZDsKKyAgc3RydWN0IHRpbWV2YWwgcHJfdXRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHBpZF90IHByX3NpZDsKLSBzdHJ1Y3QgdGltZXZhbCBwcl91dGltZTsKLSBzdHJ1Y3QgdGltZXZhbCBwcl9zdGltZTsKLSBzdHJ1Y3QgdGltZXZhbCBwcl9jdXRpbWU7CisgIHN0cnVjdCB0aW1ldmFsIHByX3N0aW1lOworICBzdHJ1Y3QgdGltZXZhbCBwcl9jdXRpbWU7CisgIHN0cnVjdCB0aW1ldmFsIHByX2NzdGltZTsKKyAgZWxmX2dyZWdzZXRfdCBwcl9yZWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB0aW1ldmFsIHByX2NzdGltZTsKLSBlbGZfZ3JlZ3NldF90IHByX3JlZzsKLSBpbnQgcHJfZnB2YWxpZDsKKyAgaW50IHByX2ZwdmFsaWQ7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRUxGX1BSQVJHU1ogKDgwKQotc3RydWN0IGVsZl9wcnBzaW5mbwotewotIGNoYXIgcHJfc3RhdGU7CitzdHJ1Y3QgZWxmX3BycHNpbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBwcl9zbmFtZTsKLSBjaGFyIHByX3pvbWI7Ci0gY2hhciBwcl9uaWNlOwotIHVuc2lnbmVkIGxvbmcgcHJfZmxhZzsKKyAgY2hhciBwcl9zdGF0ZTsKKyAgY2hhciBwcl9zbmFtZTsKKyAgY2hhciBwcl96b21iOworICBjaGFyIHByX25pY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3VpZF90IHByX3VpZDsKLSBfX2tlcm5lbF9naWRfdCBwcl9naWQ7Ci0gcGlkX3QgcHJfcGlkLCBwcl9wcGlkLCBwcl9wZ3JwLCBwcl9zaWQ7Ci0gY2hhciBwcl9mbmFtZVsxNl07CisgIHVuc2lnbmVkIGxvbmcgcHJfZmxhZzsKKyAgX19rZXJuZWxfdWlkX3QgcHJfdWlkOworICBfX2tlcm5lbF9naWRfdCBwcl9naWQ7CisgIHBpZF90IHByX3BpZCwgcHJfcHBpZCwgcHJfcGdycCwgcHJfc2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHByX3BzYXJnc1tFTEZfUFJBUkdTWl07CisgIGNoYXIgcHJfZm5hbWVbMTZdOworICBjaGFyIHByX3BzYXJnc1tFTEZfUFJBUkdTWl07CiB9OwogdHlwZWRlZiBzdHJ1Y3QgZWxmX3Byc3RhdHVzIHByc3RhdHVzX3Q7Ci10eXBlZGVmIHN0cnVjdCBlbGZfcHJwc2luZm8gcHJwc2luZm9fdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit0eXBlZGVmIHN0cnVjdCBlbGZfcHJwc2luZm8gcHJwc2luZm9fdDsKICNkZWZpbmUgUFJBUkdTWiBFTEZfUFJBUkdTWgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VycnF1ZXVlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2VycnF1ZXVlLmgKaW5kZXggYjhmZDNiNC4uZGQ1N2EyOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9lcnJxdWV1ZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZXJycXVldWUuaApAQCAtMjEsMTQgKzIxLDE0IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBzb2NrX2V4dGVuZGVkX2VyciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGVlX2Vycm5vOwotIF9fdTggZWVfb3JpZ2luOwotIF9fdTggZWVfdHlwZTsKLSBfX3U4IGVlX2NvZGU7CisgIF9fdTMyIGVlX2Vycm5vOworICBfX3U4IGVlX29yaWdpbjsKKyAgX191OCBlZV90eXBlOworICBfX3U4IGVlX2NvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZWVfcGFkOwotIF9fdTMyIGVlX2luZm87Ci0gX191MzIgZWVfZGF0YTsKKyAgX191OCBlZV9wYWQ7CisgIF9fdTMyIGVlX2luZm87CisgIF9fdTMyIGVlX2RhdGE7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09fRUVfT1JJR0lOX05PTkUgMApAQCAtMzgsNiArMzgsMTYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPX0VFX09SSUdJTl9UWFNUQVRVUyA0CiAjZGVmaW5lIFNPX0VFX09SSUdJTl9USU1FU1RBTVBJTkcgU09fRUVfT1JJR0lOX1RYU1RBVFVTCi0jZGVmaW5lIFNPX0VFX09GRkVOREVSKGVlKSAoKHN0cnVjdCBzb2NrYWRkciopKChlZSkrMSkpCisjZGVmaW5lIFNPX0VFX09GRkVOREVSKGVlKSAoKHN0cnVjdCBzb2NrYWRkciAqKSAoKGVlKSArIDEpKQorc3RydWN0IHNjbV90aW1lc3RhbXBpbmcgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IHRpbWVzcGVjIHRzWzNdOworfTsKK2VudW0geworICBTQ01fVFNUQU1QX1NORCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNDTV9UU1RBTVBfU0NIRUQsCisgIFNDTV9UU1RBTVBfQUNLLAorfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZXRodG9vbC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ldGh0b29sLmgKaW5kZXggYjZmMTMyNy4uMWEwMGM3ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ldGh0b29sLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ldGh0b29sLmgKQEAgLTIyLDI3ICsyMiwyNyBAQAogI2luY2x1ZGUgPGxpbnV4L2lmX2V0aGVyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGV0aHRvb2xfY21kIHsKLSBfX3UzMiBjbWQ7Ci0gX191MzIgc3VwcG9ydGVkOwotIF9fdTMyIGFkdmVydGlzaW5nOworICBfX3UzMiBjbWQ7CisgIF9fdTMyIHN1cHBvcnRlZDsKKyAgX191MzIgYWR2ZXJ0aXNpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNwZWVkOwotIF9fdTggZHVwbGV4OwotIF9fdTggcG9ydDsKLSBfX3U4IHBoeV9hZGRyZXNzOworICBfX3UxNiBzcGVlZDsKKyAgX191OCBkdXBsZXg7CisgIF9fdTggcG9ydDsKKyAgX191OCBwaHlfYWRkcmVzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0cmFuc2NlaXZlcjsKLSBfX3U4IGF1dG9uZWc7Ci0gX191OCBtZGlvX3N1cHBvcnQ7Ci0gX191MzIgbWF4dHhwa3Q7CisgIF9fdTggdHJhbnNjZWl2ZXI7CisgIF9fdTggYXV0b25lZzsKKyAgX191OCBtZGlvX3N1cHBvcnQ7CisgIF9fdTMyIG1heHR4cGt0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXhyeHBrdDsKLSBfX3UxNiBzcGVlZF9oaTsKLSBfX3U4IGV0aF90cF9tZGl4OwotIF9fdTggZXRoX3RwX21kaXhfY3RybDsKKyAgX191MzIgbWF4cnhwa3Q7CisgIF9fdTE2IHNwZWVkX2hpOworICBfX3U4IGV0aF90cF9tZGl4OworICBfX3U4IGV0aF90cF9tZGl4X2N0cmw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxwX2FkdmVydGlzaW5nOwotIF9fdTMyIHJlc2VydmVkWzJdOworICBfX3UzMiBscF9hZHZlcnRpc2luZzsKKyAgX191MzIgcmVzZXJ2ZWRbMl07CiB9OwogI2RlZmluZSBFVEhfTURJT19TVVBQT1JUU19DMjIgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTUxLDYzMyArNTEsNjc5IEBACiAjZGVmaW5lIEVUSFRPT0xfQlVTSU5GT19MRU4gMzIKIHN0cnVjdCBldGh0b29sX2RydmluZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjbWQ7Ci0gY2hhciBkcml2ZXJbMzJdOwotIGNoYXIgdmVyc2lvblszMl07Ci0gY2hhciBmd192ZXJzaW9uW0VUSFRPT0xfRldWRVJTX0xFTl07CisgIF9fdTMyIGNtZDsKKyAgY2hhciBkcml2ZXJbMzJdOworICBjaGFyIHZlcnNpb25bMzJdOworICBjaGFyIGZ3X3ZlcnNpb25bRVRIVE9PTF9GV1ZFUlNfTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBidXNfaW5mb1tFVEhUT09MX0JVU0lORk9fTEVOXTsKLSBjaGFyIHJlc2VydmVkMVszMl07Ci0gY2hhciByZXNlcnZlZDJbMTJdOwotIF9fdTMyIG5fcHJpdl9mbGFnczsKKyAgY2hhciBidXNfaW5mb1tFVEhUT09MX0JVU0lORk9fTEVOXTsKKyAgY2hhciByZXNlcnZlZDFbMzJdOworICBjaGFyIHJlc2VydmVkMlsxMl07CisgIF9fdTMyIG5fcHJpdl9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbl9zdGF0czsKLSBfX3UzMiB0ZXN0aW5mb19sZW47Ci0gX191MzIgZWVkdW1wX2xlbjsKLSBfX3UzMiByZWdkdW1wX2xlbjsKKyAgX191MzIgbl9zdGF0czsKKyAgX191MzIgdGVzdGluZm9fbGVuOworICBfX3UzMiBlZWR1bXBfbGVuOworICBfX3UzMiByZWdkdW1wX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBTT1BBU1NfTUFYIDYKIHN0cnVjdCBldGh0b29sX3dvbGluZm8gewotIF9fdTMyIGNtZDsKKyAgX191MzIgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzdXBwb3J0ZWQ7Ci0gX191MzIgd29sb3B0czsKLSBfX3U4IHNvcGFzc1tTT1BBU1NfTUFYXTsKKyAgX191MzIgc3VwcG9ydGVkOworICBfX3UzMiB3b2xvcHRzOworICBfX3U4IHNvcGFzc1tTT1BBU1NfTUFYXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGV0aHRvb2xfdmFsdWUgewotIF9fdTMyIGNtZDsKLSBfX3UzMiBkYXRhOworICBfX3UzMiBjbWQ7CisgIF9fdTMyIGRhdGE7Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0gdHVuYWJsZV9pZCB7CisgIEVUSFRPT0xfSURfVU5TUEVDLAorICBFVEhUT09MX1JYX0NPUFlCUkVBSywKKyAgRVRIVE9PTF9UWF9DT1BZQlJFQUssCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK2VudW0gdHVuYWJsZV90eXBlX2lkIHsKKyAgRVRIVE9PTF9UVU5BQkxFX1VOU1BFQywKKyAgRVRIVE9PTF9UVU5BQkxFX1U4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgRVRIVE9PTF9UVU5BQkxFX1UxNiwKKyAgRVRIVE9PTF9UVU5BQkxFX1UzMiwKKyAgRVRIVE9PTF9UVU5BQkxFX1U2NCwKKyAgRVRIVE9PTF9UVU5BQkxFX1NUUklORywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEVUSFRPT0xfVFVOQUJMRV9TOCwKKyAgRVRIVE9PTF9UVU5BQkxFX1MxNiwKKyAgRVRIVE9PTF9UVU5BQkxFX1MzMiwKKyAgRVRIVE9PTF9UVU5BQkxFX1M2NCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9Oworc3RydWN0IGV0aHRvb2xfdHVuYWJsZSB7CisgIF9fdTMyIGNtZDsKKyAgX191MzIgaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiB0eXBlX2lkOworICBfX3UzMiBsZW47CisgIHZvaWQgKiBkYXRhWzBdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZXRodG9vbF9yZWdzIHsKLSBfX3UzMiBjbWQ7Ci0gX191MzIgdmVyc2lvbjsKLSBfX3UzMiBsZW47CisgIF9fdTMyIGNtZDsKKyAgX191MzIgdmVyc2lvbjsKKyAgX191MzIgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRhdGFbMF07CisgIF9fdTggZGF0YVswXTsKIH07CiBzdHJ1Y3QgZXRodG9vbF9lZXByb20gewotIF9fdTMyIGNtZDsKKyAgX191MzIgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYWdpYzsKLSBfX3UzMiBvZmZzZXQ7Ci0gX191MzIgbGVuOwotIF9fdTggZGF0YVswXTsKKyAgX191MzIgbWFnaWM7CisgIF9fdTMyIG9mZnNldDsKKyAgX191MzIgbGVuOworICBfX3U4IGRhdGFbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBldGh0b29sX2VlZSB7Ci0gX191MzIgY21kOwotIF9fdTMyIHN1cHBvcnRlZDsKKyAgX191MzIgY21kOworICBfX3UzMiBzdXBwb3J0ZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGFkdmVydGlzZWQ7Ci0gX191MzIgbHBfYWR2ZXJ0aXNlZDsKLSBfX3UzMiBlZWVfYWN0aXZlOwotIF9fdTMyIGVlZV9lbmFibGVkOworICBfX3UzMiBhZHZlcnRpc2VkOworICBfX3UzMiBscF9hZHZlcnRpc2VkOworICBfX3UzMiBlZWVfYWN0aXZlOworICBfX3UzMiBlZWVfZW5hYmxlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHhfbHBpX2VuYWJsZWQ7Ci0gX191MzIgdHhfbHBpX3RpbWVyOwotIF9fdTMyIHJlc2VydmVkWzJdOworICBfX3UzMiB0eF9scGlfZW5hYmxlZDsKKyAgX191MzIgdHhfbHBpX3RpbWVyOworICBfX3UzMiByZXNlcnZlZFsyXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGV0aHRvb2xfbW9kaW5mbyB7Ci0gX191MzIgY21kOwotIF9fdTMyIHR5cGU7Ci0gX191MzIgZWVwcm9tX2xlbjsKKyAgX191MzIgY21kOworICBfX3UzMiB0eXBlOworICBfX3UzMiBlZXByb21fbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNlcnZlZFs4XTsKKyAgX191MzIgcmVzZXJ2ZWRbOF07CiB9Owogc3RydWN0IGV0aHRvb2xfY29hbGVzY2UgewotIF9fdTMyIGNtZDsKKyAgX191MzIgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByeF9jb2FsZXNjZV91c2VjczsKLSBfX3UzMiByeF9tYXhfY29hbGVzY2VkX2ZyYW1lczsKLSBfX3UzMiByeF9jb2FsZXNjZV91c2Vjc19pcnE7Ci0gX191MzIgcnhfbWF4X2NvYWxlc2NlZF9mcmFtZXNfaXJxOworICBfX3UzMiByeF9jb2FsZXNjZV91c2VjczsKKyAgX191MzIgcnhfbWF4X2NvYWxlc2NlZF9mcmFtZXM7CisgIF9fdTMyIHJ4X2NvYWxlc2NlX3VzZWNzX2lycTsKKyAgX191MzIgcnhfbWF4X2NvYWxlc2NlZF9mcmFtZXNfaXJxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eF9jb2FsZXNjZV91c2VjczsKLSBfX3UzMiB0eF9tYXhfY29hbGVzY2VkX2ZyYW1lczsKLSBfX3UzMiB0eF9jb2FsZXNjZV91c2Vjc19pcnE7Ci0gX191MzIgdHhfbWF4X2NvYWxlc2NlZF9mcmFtZXNfaXJxOworICBfX3UzMiB0eF9jb2FsZXNjZV91c2VjczsKKyAgX191MzIgdHhfbWF4X2NvYWxlc2NlZF9mcmFtZXM7CisgIF9fdTMyIHR4X2NvYWxlc2NlX3VzZWNzX2lycTsKKyAgX191MzIgdHhfbWF4X2NvYWxlc2NlZF9mcmFtZXNfaXJxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzdGF0c19ibG9ja19jb2FsZXNjZV91c2VjczsKLSBfX3UzMiB1c2VfYWRhcHRpdmVfcnhfY29hbGVzY2U7Ci0gX191MzIgdXNlX2FkYXB0aXZlX3R4X2NvYWxlc2NlOwotIF9fdTMyIHBrdF9yYXRlX2xvdzsKKyAgX191MzIgc3RhdHNfYmxvY2tfY29hbGVzY2VfdXNlY3M7CisgIF9fdTMyIHVzZV9hZGFwdGl2ZV9yeF9jb2FsZXNjZTsKKyAgX191MzIgdXNlX2FkYXB0aXZlX3R4X2NvYWxlc2NlOworICBfX3UzMiBwa3RfcmF0ZV9sb3c7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJ4X2NvYWxlc2NlX3VzZWNzX2xvdzsKLSBfX3UzMiByeF9tYXhfY29hbGVzY2VkX2ZyYW1lc19sb3c7Ci0gX191MzIgdHhfY29hbGVzY2VfdXNlY3NfbG93OwotIF9fdTMyIHR4X21heF9jb2FsZXNjZWRfZnJhbWVzX2xvdzsKKyAgX191MzIgcnhfY29hbGVzY2VfdXNlY3NfbG93OworICBfX3UzMiByeF9tYXhfY29hbGVzY2VkX2ZyYW1lc19sb3c7CisgIF9fdTMyIHR4X2NvYWxlc2NlX3VzZWNzX2xvdzsKKyAgX191MzIgdHhfbWF4X2NvYWxlc2NlZF9mcmFtZXNfbG93OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwa3RfcmF0ZV9oaWdoOwotIF9fdTMyIHJ4X2NvYWxlc2NlX3VzZWNzX2hpZ2g7Ci0gX191MzIgcnhfbWF4X2NvYWxlc2NlZF9mcmFtZXNfaGlnaDsKLSBfX3UzMiB0eF9jb2FsZXNjZV91c2Vjc19oaWdoOworICBfX3UzMiBwa3RfcmF0ZV9oaWdoOworICBfX3UzMiByeF9jb2FsZXNjZV91c2Vjc19oaWdoOworICBfX3UzMiByeF9tYXhfY29hbGVzY2VkX2ZyYW1lc19oaWdoOworICBfX3UzMiB0eF9jb2FsZXNjZV91c2Vjc19oaWdoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eF9tYXhfY29hbGVzY2VkX2ZyYW1lc19oaWdoOwotIF9fdTMyIHJhdGVfc2FtcGxlX2ludGVydmFsOworICBfX3UzMiB0eF9tYXhfY29hbGVzY2VkX2ZyYW1lc19oaWdoOworICBfX3UzMiByYXRlX3NhbXBsZV9pbnRlcnZhbDsKIH07CiBzdHJ1Y3QgZXRodG9vbF9yaW5ncGFyYW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjbWQ7Ci0gX191MzIgcnhfbWF4X3BlbmRpbmc7Ci0gX191MzIgcnhfbWluaV9tYXhfcGVuZGluZzsKLSBfX3UzMiByeF9qdW1ib19tYXhfcGVuZGluZzsKKyAgX191MzIgY21kOworICBfX3UzMiByeF9tYXhfcGVuZGluZzsKKyAgX191MzIgcnhfbWluaV9tYXhfcGVuZGluZzsKKyAgX191MzIgcnhfanVtYm9fbWF4X3BlbmRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR4X21heF9wZW5kaW5nOwotIF9fdTMyIHJ4X3BlbmRpbmc7Ci0gX191MzIgcnhfbWluaV9wZW5kaW5nOwotIF9fdTMyIHJ4X2p1bWJvX3BlbmRpbmc7CisgIF9fdTMyIHR4X21heF9wZW5kaW5nOworICBfX3UzMiByeF9wZW5kaW5nOworICBfX3UzMiByeF9taW5pX3BlbmRpbmc7CisgIF9fdTMyIHJ4X2p1bWJvX3BlbmRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR4X3BlbmRpbmc7CisgIF9fdTMyIHR4X3BlbmRpbmc7CiB9Owogc3RydWN0IGV0aHRvb2xfY2hhbm5lbHMgewotIF9fdTMyIGNtZDsKKyAgX191MzIgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXhfcng7Ci0gX191MzIgbWF4X3R4OwotIF9fdTMyIG1heF9vdGhlcjsKLSBfX3UzMiBtYXhfY29tYmluZWQ7CisgIF9fdTMyIG1heF9yeDsKKyAgX191MzIgbWF4X3R4OworICBfX3UzMiBtYXhfb3RoZXI7CisgIF9fdTMyIG1heF9jb21iaW5lZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcnhfY291bnQ7Ci0gX191MzIgdHhfY291bnQ7Ci0gX191MzIgb3RoZXJfY291bnQ7Ci0gX191MzIgY29tYmluZWRfY291bnQ7CisgIF9fdTMyIHJ4X2NvdW50OworICBfX3UzMiB0eF9jb3VudDsKKyAgX191MzIgb3RoZXJfY291bnQ7CisgIF9fdTMyIGNvbWJpbmVkX2NvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZXRodG9vbF9wYXVzZXBhcmFtIHsKLSBfX3UzMiBjbWQ7Ci0gX191MzIgYXV0b25lZzsKKyAgX191MzIgY21kOworICBfX3UzMiBhdXRvbmVnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByeF9wYXVzZTsKLSBfX3UzMiB0eF9wYXVzZTsKKyAgX191MzIgcnhfcGF1c2U7CisgIF9fdTMyIHR4X3BhdXNlOwogfTsKICNkZWZpbmUgRVRIX0dTVFJJTkdfTEVOIDMyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBldGh0b29sX3N0cmluZ3NldCB7Ci0gRVRIX1NTX1RFU1QgPSAwLAotIEVUSF9TU19TVEFUUywKLSBFVEhfU1NfUFJJVl9GTEFHUywKKyAgRVRIX1NTX1RFU1QgPSAwLAorICBFVEhfU1NfU1RBVFMsCisgIEVUSF9TU19QUklWX0ZMQUdTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFVEhfU1NfTlRVUExFX0ZJTFRFUlMsCi0gRVRIX1NTX0ZFQVRVUkVTLAorICBFVEhfU1NfTlRVUExFX0ZJTFRFUlMsCisgIEVUSF9TU19GRUFUVVJFUywKIH07CiBzdHJ1Y3QgZXRodG9vbF9nc3RyaW5ncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNtZDsKLSBfX3UzMiBzdHJpbmdfc2V0OwotIF9fdTMyIGxlbjsKLSBfX3U4IGRhdGFbMF07CisgIF9fdTMyIGNtZDsKKyAgX191MzIgc3RyaW5nX3NldDsKKyAgX191MzIgbGVuOworICBfX3U4IGRhdGFbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBldGh0b29sX3NzZXRfaW5mbyB7Ci0gX191MzIgY21kOwotIF9fdTMyIHJlc2VydmVkOworICBfX3UzMiBjbWQ7CisgIF9fdTMyIHJlc2VydmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzc2V0X21hc2s7Ci0gX191MzIgZGF0YVswXTsKKyAgX191NjQgc3NldF9tYXNrOworICBfX3UzMiBkYXRhWzBdOwogfTsKIGVudW0gZXRodG9vbF90ZXN0X2ZsYWdzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRVRIX1RFU1RfRkxfT0ZGTElORSA9ICgxIDw8IDApLAotIEVUSF9URVNUX0ZMX0ZBSUxFRCA9ICgxIDw8IDEpLAotIEVUSF9URVNUX0ZMX0VYVEVSTkFMX0xCID0gKDEgPDwgMiksCi0gRVRIX1RFU1RfRkxfRVhURVJOQUxfTEJfRE9ORSA9ICgxIDw8IDMpLAorICBFVEhfVEVTVF9GTF9PRkZMSU5FID0gKDEgPDwgMCksCisgIEVUSF9URVNUX0ZMX0ZBSUxFRCA9ICgxIDw8IDEpLAorICBFVEhfVEVTVF9GTF9FWFRFUk5BTF9MQiA9ICgxIDw8IDIpLAorICBFVEhfVEVTVF9GTF9FWFRFUk5BTF9MQl9ET05FID0gKDEgPDwgMyksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBldGh0b29sX3Rlc3QgewotIF9fdTMyIGNtZDsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgY21kOworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWQ7Ci0gX191MzIgbGVuOwotIF9fdTY0IGRhdGFbMF07CisgIF9fdTMyIHJlc2VydmVkOworICBfX3UzMiBsZW47CisgIF9fdTY0IGRhdGFbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBldGh0b29sX3N0YXRzIHsKLSBfX3UzMiBjbWQ7Ci0gX191MzIgbl9zdGF0czsKLSBfX3U2NCBkYXRhWzBdOworICBfX3UzMiBjbWQ7CisgIF9fdTMyIG5fc3RhdHM7CisgIF9fdTY0IGRhdGFbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBldGh0b29sX3Blcm1fYWRkciB7Ci0gX191MzIgY21kOwotIF9fdTMyIHNpemU7CisgIF9fdTMyIGNtZDsKKyAgX191MzIgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkYXRhWzBdOworICBfX3U4IGRhdGFbMF07CiB9OwogZW51bSBldGh0b29sX2ZsYWdzIHsKLSBFVEhfRkxBR19UWFZMQU4gPSAoMSA8PCA3KSwKKyAgRVRIX0ZMQUdfVFhWTEFOID0gKDEgPDwgNyksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVUSF9GTEFHX1JYVkxBTiA9ICgxIDw8IDgpLAotIEVUSF9GTEFHX0xSTyA9ICgxIDw8IDE1KSwKLSBFVEhfRkxBR19OVFVQTEUgPSAoMSA8PCAyNyksCi0gRVRIX0ZMQUdfUlhIQVNIID0gKDEgPDwgMjgpLAorICBFVEhfRkxBR19SWFZMQU4gPSAoMSA8PCA4KSwKKyAgRVRIX0ZMQUdfTFJPID0gKDEgPDwgMTUpLAorICBFVEhfRkxBR19OVFVQTEUgPSAoMSA8PCAyNyksCisgIEVUSF9GTEFHX1JYSEFTSCA9ICgxIDw8IDI4KSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGV0aHRvb2xfdGNwaXA0X3NwZWMgewotIF9fYmUzMiBpcDRzcmM7Ci0gX19iZTMyIGlwNGRzdDsKKyAgX19iZTMyIGlwNHNyYzsKKyAgX19iZTMyIGlwNGRzdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHBzcmM7Ci0gX19iZTE2IHBkc3Q7Ci0gX191OCB0b3M7CisgIF9fYmUxNiBwc3JjOworICBfX2JlMTYgcGRzdDsKKyAgX191OCB0b3M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBldGh0b29sX2FoX2VzcGlwNF9zcGVjIHsKLSBfX2JlMzIgaXA0c3JjOwotIF9fYmUzMiBpcDRkc3Q7Ci0gX19iZTMyIHNwaTsKKyAgX19iZTMyIGlwNHNyYzsKKyAgX19iZTMyIGlwNGRzdDsKKyAgX19iZTMyIHNwaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0b3M7CisgIF9fdTggdG9zOwogfTsKICNkZWZpbmUgRVRIX1JYX05GQ19JUDQgMQogc3RydWN0IGV0aHRvb2xfdXNyaXA0X3NwZWMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgaXA0c3JjOwotIF9fYmUzMiBpcDRkc3Q7Ci0gX19iZTMyIGw0XzRfYnl0ZXM7Ci0gX191OCB0b3M7CisgIF9fYmUzMiBpcDRzcmM7CisgIF9fYmUzMiBpcDRkc3Q7CisgIF9fYmUzMiBsNF80X2J5dGVzOworICBfX3U4IHRvczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpcF92ZXI7Ci0gX191OCBwcm90bzsKKyAgX191OCBpcF92ZXI7CisgIF9fdTggcHJvdG87CiB9OwogdW5pb24gZXRodG9vbF9mbG93X3VuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGV0aHRvb2xfdGNwaXA0X3NwZWMgdGNwX2lwNF9zcGVjOwotIHN0cnVjdCBldGh0b29sX3RjcGlwNF9zcGVjIHVkcF9pcDRfc3BlYzsKLSBzdHJ1Y3QgZXRodG9vbF90Y3BpcDRfc3BlYyBzY3RwX2lwNF9zcGVjOwotIHN0cnVjdCBldGh0b29sX2FoX2VzcGlwNF9zcGVjIGFoX2lwNF9zcGVjOworICBzdHJ1Y3QgZXRodG9vbF90Y3BpcDRfc3BlYyB0Y3BfaXA0X3NwZWM7CisgIHN0cnVjdCBldGh0b29sX3RjcGlwNF9zcGVjIHVkcF9pcDRfc3BlYzsKKyAgc3RydWN0IGV0aHRvb2xfdGNwaXA0X3NwZWMgc2N0cF9pcDRfc3BlYzsKKyAgc3RydWN0IGV0aHRvb2xfYWhfZXNwaXA0X3NwZWMgYWhfaXA0X3NwZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBldGh0b29sX2FoX2VzcGlwNF9zcGVjIGVzcF9pcDRfc3BlYzsKLSBzdHJ1Y3QgZXRodG9vbF91c3JpcDRfc3BlYyB1c3JfaXA0X3NwZWM7Ci0gc3RydWN0IGV0aGhkciBldGhlcl9zcGVjOwotIF9fdTggaGRhdGFbNTJdOworICBzdHJ1Y3QgZXRodG9vbF9haF9lc3BpcDRfc3BlYyBlc3BfaXA0X3NwZWM7CisgIHN0cnVjdCBldGh0b29sX3VzcmlwNF9zcGVjIHVzcl9pcDRfc3BlYzsKKyAgc3RydWN0IGV0aGhkciBldGhlcl9zcGVjOworICBfX3U4IGhkYXRhWzUyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGV0aHRvb2xfZmxvd19leHQgewotIF9fdTggcGFkZGluZ1syXTsKLSB1bnNpZ25lZCBjaGFyIGhfZGVzdFtFVEhfQUxFTl07CisgIF9fdTggcGFkZGluZ1syXTsKKyAgdW5zaWduZWQgY2hhciBoX2Rlc3RbRVRIX0FMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgdmxhbl9ldHlwZTsKLSBfX2JlMTYgdmxhbl90Y2k7Ci0gX19iZTMyIGRhdGFbMl07CisgIF9fYmUxNiB2bGFuX2V0eXBlOworICBfX2JlMTYgdmxhbl90Y2k7CisgIF9fYmUzMiBkYXRhWzJdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZXRodG9vbF9yeF9mbG93X3NwZWMgewotIF9fdTMyIGZsb3dfdHlwZTsKLSB1bmlvbiBldGh0b29sX2Zsb3dfdW5pb24gaF91OwotIHN0cnVjdCBldGh0b29sX2Zsb3dfZXh0IGhfZXh0OworICBfX3UzMiBmbG93X3R5cGU7CisgIHVuaW9uIGV0aHRvb2xfZmxvd191bmlvbiBoX3U7CisgIHN0cnVjdCBldGh0b29sX2Zsb3dfZXh0IGhfZXh0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiBldGh0b29sX2Zsb3dfdW5pb24gbV91OwotIHN0cnVjdCBldGh0b29sX2Zsb3dfZXh0IG1fZXh0OwotIF9fdTY0IHJpbmdfY29va2llOwotIF9fdTMyIGxvY2F0aW9uOworICB1bmlvbiBldGh0b29sX2Zsb3dfdW5pb24gbV91OworICBzdHJ1Y3QgZXRodG9vbF9mbG93X2V4dCBtX2V4dDsKKyAgX191NjQgcmluZ19jb29raWU7CisgIF9fdTMyIGxvY2F0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZXRodG9vbF9yeG5mYyB7Ci0gX191MzIgY21kOwotIF9fdTMyIGZsb3dfdHlwZTsKKyAgX191MzIgY21kOworICBfX3UzMiBmbG93X3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRhdGE7Ci0gc3RydWN0IGV0aHRvb2xfcnhfZmxvd19zcGVjIGZzOwotIF9fdTMyIHJ1bGVfY250OwotIF9fdTMyIHJ1bGVfbG9jc1swXTsKKyAgX191NjQgZGF0YTsKKyAgc3RydWN0IGV0aHRvb2xfcnhfZmxvd19zcGVjIGZzOworICBfX3UzMiBydWxlX2NudDsKKyAgX191MzIgcnVsZV9sb2NzWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZXRodG9vbF9yeGZoX2luZGlyIHsKLSBfX3UzMiBjbWQ7Ci0gX191MzIgc2l6ZTsKKyAgX191MzIgY21kOworICBfX3UzMiBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByaW5nX2luZGV4WzBdOworICBfX3UzMiByaW5nX2luZGV4WzBdOwogfTsKK3N0cnVjdCBldGh0b29sX3J4ZmggeworICBfX3UzMiBjbWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiByc3NfY29udGV4dDsKKyAgX191MzIgaW5kaXJfc2l6ZTsKKyAgX191MzIga2V5X3NpemU7CisgIF9fdTMyIHJzdmRbMl07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiByc3NfY29uZmlnWzBdOworfTsKKyNkZWZpbmUgRVRIX1JYRkhfSU5ESVJfTk9fQ0hBTkdFIDB4ZmZmZmZmZmYKIHN0cnVjdCBldGh0b29sX3J4X250dXBsZV9mbG93X3NwZWMgewotIF9fdTMyIGZsb3dfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCBldGh0b29sX3RjcGlwNF9zcGVjIHRjcF9pcDRfc3BlYzsKLSBzdHJ1Y3QgZXRodG9vbF90Y3BpcDRfc3BlYyB1ZHBfaXA0X3NwZWM7Ci0gc3RydWN0IGV0aHRvb2xfdGNwaXA0X3NwZWMgc2N0cF9pcDRfc3BlYzsKKyAgX191MzIgZmxvd190eXBlOworICB1bmlvbiB7CisgICAgc3RydWN0IGV0aHRvb2xfdGNwaXA0X3NwZWMgdGNwX2lwNF9zcGVjOworICAgIHN0cnVjdCBldGh0b29sX3RjcGlwNF9zcGVjIHVkcF9pcDRfc3BlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGV0aHRvb2xfYWhfZXNwaXA0X3NwZWMgYWhfaXA0X3NwZWM7Ci0gc3RydWN0IGV0aHRvb2xfYWhfZXNwaXA0X3NwZWMgZXNwX2lwNF9zcGVjOwotIHN0cnVjdCBldGh0b29sX3VzcmlwNF9zcGVjIHVzcl9pcDRfc3BlYzsKLSBzdHJ1Y3QgZXRoaGRyIGV0aGVyX3NwZWM7CisgICAgc3RydWN0IGV0aHRvb2xfdGNwaXA0X3NwZWMgc2N0cF9pcDRfc3BlYzsKKyAgICBzdHJ1Y3QgZXRodG9vbF9haF9lc3BpcDRfc3BlYyBhaF9pcDRfc3BlYzsKKyAgICBzdHJ1Y3QgZXRodG9vbF9haF9lc3BpcDRfc3BlYyBlc3BfaXA0X3NwZWM7CisgICAgc3RydWN0IGV0aHRvb2xfdXNyaXA0X3NwZWMgdXNyX2lwNF9zcGVjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGhkYXRhWzcyXTsKLSB9IGhfdSwgbV91OwotIF9fdTE2IHZsYW5fdGFnOwotIF9fdTE2IHZsYW5fdGFnX21hc2s7CisgICAgc3RydWN0IGV0aGhkciBldGhlcl9zcGVjOworICAgIF9fdTggaGRhdGFbNzJdOworICB9IGhfdSwgbV91OworICBfX3UxNiB2bGFuX3RhZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZGF0YTsKLSBfX3U2NCBkYXRhX21hc2s7Ci0gX19zMzIgYWN0aW9uOwotI2RlZmluZSBFVEhUT09MX1JYTlRVUExFX0FDVElPTl9EUk9QICgtMSkKKyAgX191MTYgdmxhbl90YWdfbWFzazsKKyAgX191NjQgZGF0YTsKKyAgX191NjQgZGF0YV9tYXNrOworICBfX3MzMiBhY3Rpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBFVEhUT09MX1JYTlRVUExFX0FDVElPTl9DTEVBUiAoLTIpCisjZGVmaW5lIEVUSFRPT0xfUlhOVFVQTEVfQUNUSU9OX0RST1AgKC0gMSkKKyNkZWZpbmUgRVRIVE9PTF9SWE5UVVBMRV9BQ1RJT05fQ0xFQVIgKC0gMikKIH07CiBzdHJ1Y3QgZXRodG9vbF9yeF9udHVwbGUgewotIF9fdTMyIGNtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGV0aHRvb2xfcnhfbnR1cGxlX2Zsb3dfc3BlYyBmczsKKyAgX191MzIgY21kOworICBzdHJ1Y3QgZXRodG9vbF9yeF9udHVwbGVfZmxvd19zcGVjIGZzOwogfTsKICNkZWZpbmUgRVRIVE9PTF9GTEFTSF9NQVhfRklMRU5BTUUgMTI4Ci1lbnVtIGV0aHRvb2xfZmxhc2hfb3BfdHlwZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVUSFRPT0xfRkxBU0hfQUxMX1JFR0lPTlMgPSAwLAorZW51bSBldGh0b29sX2ZsYXNoX29wX3R5cGUgeworICBFVEhUT09MX0ZMQVNIX0FMTF9SRUdJT05TID0gMCwKIH07CiBzdHJ1Y3QgZXRodG9vbF9mbGFzaCB7Ci0gX191MzIgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZWdpb247Ci0gY2hhciBkYXRhW0VUSFRPT0xfRkxBU0hfTUFYX0ZJTEVOQU1FXTsKKyAgX191MzIgY21kOworICBfX3UzMiByZWdpb247CisgIGNoYXIgZGF0YVtFVEhUT09MX0ZMQVNIX01BWF9GSUxFTkFNRV07Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBldGh0b29sX2R1bXAgeworICBfX3UzMiBjbWQ7CisgIF9fdTMyIHZlcnNpb247CisgIF9fdTMyIGZsYWc7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBsZW47CisgIF9fdTggZGF0YVswXTsKIH07CiAjZGVmaW5lIEVUSF9GV19EVU1QX0RJU0FCTEUgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBldGh0b29sX2R1bXAgewotIF9fdTMyIGNtZDsKLSBfX3UzMiB2ZXJzaW9uOwotIF9fdTMyIGZsYWc7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxlbjsKLSBfX3U4IGRhdGFbMF07Ci19Owogc3RydWN0IGV0aHRvb2xfZ2V0X2ZlYXR1cmVzX2Jsb2NrIHsKKyAgX191MzIgYXZhaWxhYmxlOworICBfX3UzMiByZXF1ZXN0ZWQ7CisgIF9fdTMyIGFjdGl2ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYXZhaWxhYmxlOwotIF9fdTMyIHJlcXVlc3RlZDsKLSBfX3UzMiBhY3RpdmU7Ci0gX191MzIgbmV2ZXJfY2hhbmdlZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIG5ldmVyX2NoYW5nZWQ7CiB9Owogc3RydWN0IGV0aHRvb2xfZ2ZlYXR1cmVzIHsKLSBfX3UzMiBjbWQ7Ci0gX191MzIgc2l6ZTsKKyAgX191MzIgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZXRodG9vbF9nZXRfZmVhdHVyZXNfYmxvY2sgZmVhdHVyZXNbMF07CisgIF9fdTMyIHNpemU7CisgIHN0cnVjdCBldGh0b29sX2dldF9mZWF0dXJlc19ibG9jayBmZWF0dXJlc1swXTsKIH07CiBzdHJ1Y3QgZXRodG9vbF9zZXRfZmVhdHVyZXNfYmxvY2sgewotIF9fdTMyIHZhbGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXF1ZXN0ZWQ7CisgIF9fdTMyIHZhbGlkOworICBfX3UzMiByZXF1ZXN0ZWQ7CiB9Owogc3RydWN0IGV0aHRvb2xfc2ZlYXR1cmVzIHsKLSBfX3UzMiBjbWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNpemU7Ci0gc3RydWN0IGV0aHRvb2xfc2V0X2ZlYXR1cmVzX2Jsb2NrIGZlYXR1cmVzWzBdOworICBfX3UzMiBjbWQ7CisgIF9fdTMyIHNpemU7CisgIHN0cnVjdCBldGh0b29sX3NldF9mZWF0dXJlc19ibG9jayBmZWF0dXJlc1swXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGV0aHRvb2xfdHNfaW5mbyB7CisgIF9fdTMyIGNtZDsKKyAgX191MzIgc29fdGltZXN0YW1waW5nOworICBfX3MzMiBwaGNfaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNtZDsKLSBfX3UzMiBzb190aW1lc3RhbXBpbmc7Ci0gX19zMzIgcGhjX2luZGV4OwotIF9fdTMyIHR4X3R5cGVzOworICBfX3UzMiB0eF90eXBlczsKKyAgX191MzIgdHhfcmVzZXJ2ZWRbM107CisgIF9fdTMyIHJ4X2ZpbHRlcnM7CisgIF9fdTMyIHJ4X3Jlc2VydmVkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eF9yZXNlcnZlZFszXTsKLSBfX3UzMiByeF9maWx0ZXJzOwotIF9fdTMyIHJ4X3Jlc2VydmVkWzNdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGV0aHRvb2xfc2ZlYXR1cmVzX3JldHZhbF9iaXRzIHsKLSBFVEhUT09MX0ZfVU5TVVBQT1JURURfX0JJVCwKLSBFVEhUT09MX0ZfV0lTSF9fQklULAotIEVUSFRPT0xfRl9DT01QQVRfX0JJVCwKKyAgRVRIVE9PTF9GX1VOU1VQUE9SVEVEX19CSVQsCisgIEVUSFRPT0xfRl9XSVNIX19CSVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBFVEhUT09MX0ZfQ09NUEFUX19CSVQsCiB9OwogI2RlZmluZSBFVEhUT09MX0ZfVU5TVVBQT1JURUQgKDEgPDwgRVRIVE9PTF9GX1VOU1VQUE9SVEVEX19CSVQpCiAjZGVmaW5lIEVUSFRPT0xfRl9XSVNIICgxIDw8IEVUSFRPT0xfRl9XSVNIX19CSVQpCi0jZGVmaW5lIEVUSFRPT0xfRl9DT01QQVQgKDEgPDwgRVRIVE9PTF9GX0NPTVBBVF9fQklUKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9GX0NPTVBBVCAoMSA8PCBFVEhUT09MX0ZfQ09NUEFUX19CSVQpCiAjZGVmaW5lIEVUSFRPT0xfR1NFVCAweDAwMDAwMDAxCiAjZGVmaW5lIEVUSFRPT0xfU1NFVCAweDAwMDAwMDAyCiAjZGVmaW5lIEVUSFRPT0xfR0RSVklORk8gMHgwMDAwMDAwMwotI2RlZmluZSBFVEhUT09MX0dSRUdTIDB4MDAwMDAwMDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfR1JFR1MgMHgwMDAwMDAwNAogI2RlZmluZSBFVEhUT09MX0dXT0wgMHgwMDAwMDAwNQogI2RlZmluZSBFVEhUT09MX1NXT0wgMHgwMDAwMDAwNgogI2RlZmluZSBFVEhUT09MX0dNU0dMVkwgMHgwMDAwMDAwNwotI2RlZmluZSBFVEhUT09MX1NNU0dMVkwgMHgwMDAwMDAwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9TTVNHTFZMIDB4MDAwMDAwMDgKICNkZWZpbmUgRVRIVE9PTF9OV0FZX1JTVCAweDAwMDAwMDA5CiAjZGVmaW5lIEVUSFRPT0xfR0xJTksgMHgwMDAwMDAwYQogI2RlZmluZSBFVEhUT09MX0dFRVBST00gMHgwMDAwMDAwYgotI2RlZmluZSBFVEhUT09MX1NFRVBST00gMHgwMDAwMDAwYwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9TRUVQUk9NIDB4MDAwMDAwMGMKICNkZWZpbmUgRVRIVE9PTF9HQ09BTEVTQ0UgMHgwMDAwMDAwZQogI2RlZmluZSBFVEhUT09MX1NDT0FMRVNDRSAweDAwMDAwMDBmCiAjZGVmaW5lIEVUSFRPT0xfR1JJTkdQQVJBTSAweDAwMDAwMDEwCi0jZGVmaW5lIEVUSFRPT0xfU1JJTkdQQVJBTSAweDAwMDAwMDExCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFVEhUT09MX1NSSU5HUEFSQU0gMHgwMDAwMDAxMQogI2RlZmluZSBFVEhUT09MX0dQQVVTRVBBUkFNIDB4MDAwMDAwMTIKICNkZWZpbmUgRVRIVE9PTF9TUEFVU0VQQVJBTSAweDAwMDAwMDEzCiAjZGVmaW5lIEVUSFRPT0xfR1JYQ1NVTSAweDAwMDAwMDE0Ci0jZGVmaW5lIEVUSFRPT0xfU1JYQ1NVTSAweDAwMDAwMDE1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFVEhUT09MX1NSWENTVU0gMHgwMDAwMDAxNQogI2RlZmluZSBFVEhUT09MX0dUWENTVU0gMHgwMDAwMDAxNgogI2RlZmluZSBFVEhUT09MX1NUWENTVU0gMHgwMDAwMDAxNwogI2RlZmluZSBFVEhUT09MX0dTRyAweDAwMDAwMDE4Ci0jZGVmaW5lIEVUSFRPT0xfU1NHIDB4MDAwMDAwMTkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfU1NHIDB4MDAwMDAwMTkKICNkZWZpbmUgRVRIVE9PTF9URVNUIDB4MDAwMDAwMWEKICNkZWZpbmUgRVRIVE9PTF9HU1RSSU5HUyAweDAwMDAwMDFiCiAjZGVmaW5lIEVUSFRPT0xfUEhZU19JRCAweDAwMDAwMDFjCi0jZGVmaW5lIEVUSFRPT0xfR1NUQVRTIDB4MDAwMDAwMWQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfR1NUQVRTIDB4MDAwMDAwMWQKICNkZWZpbmUgRVRIVE9PTF9HVFNPIDB4MDAwMDAwMWUKICNkZWZpbmUgRVRIVE9PTF9TVFNPIDB4MDAwMDAwMWYKICNkZWZpbmUgRVRIVE9PTF9HUEVSTUFERFIgMHgwMDAwMDAyMAotI2RlZmluZSBFVEhUT09MX0dVRk8gMHgwMDAwMDAyMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9HVUZPIDB4MDAwMDAwMjEKICNkZWZpbmUgRVRIVE9PTF9TVUZPIDB4MDAwMDAwMjIKICNkZWZpbmUgRVRIVE9PTF9HR1NPIDB4MDAwMDAwMjMKICNkZWZpbmUgRVRIVE9PTF9TR1NPIDB4MDAwMDAwMjQKLSNkZWZpbmUgRVRIVE9PTF9HRkxBR1MgMHgwMDAwMDAyNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9HRkxBR1MgMHgwMDAwMDAyNQogI2RlZmluZSBFVEhUT09MX1NGTEFHUyAweDAwMDAwMDI2CiAjZGVmaW5lIEVUSFRPT0xfR1BGTEFHUyAweDAwMDAwMDI3CiAjZGVmaW5lIEVUSFRPT0xfU1BGTEFHUyAweDAwMDAwMDI4Ci0jZGVmaW5lIEVUSFRPT0xfR1JYRkggMHgwMDAwMDAyOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9HUlhGSCAweDAwMDAwMDI5CiAjZGVmaW5lIEVUSFRPT0xfU1JYRkggMHgwMDAwMDAyYQogI2RlZmluZSBFVEhUT09MX0dHUk8gMHgwMDAwMDAyYgogI2RlZmluZSBFVEhUT09MX1NHUk8gMHgwMDAwMDAyYwotI2RlZmluZSBFVEhUT09MX0dSWFJJTkdTIDB4MDAwMDAwMmQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfR1JYUklOR1MgMHgwMDAwMDAyZAogI2RlZmluZSBFVEhUT09MX0dSWENMU1JMQ05UIDB4MDAwMDAwMmUKICNkZWZpbmUgRVRIVE9PTF9HUlhDTFNSVUxFIDB4MDAwMDAwMmYKICNkZWZpbmUgRVRIVE9PTF9HUlhDTFNSTEFMTCAweDAwMDAwMDMwCi0jZGVmaW5lIEVUSFRPT0xfU1JYQ0xTUkxERUwgMHgwMDAwMDAzMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9TUlhDTFNSTERFTCAweDAwMDAwMDMxCiAjZGVmaW5lIEVUSFRPT0xfU1JYQ0xTUkxJTlMgMHgwMDAwMDAzMgogI2RlZmluZSBFVEhUT09MX0ZMQVNIREVWIDB4MDAwMDAwMzMKICNkZWZpbmUgRVRIVE9PTF9SRVNFVCAweDAwMDAwMDM0Ci0jZGVmaW5lIEVUSFRPT0xfU1JYTlRVUExFIDB4MDAwMDAwMzUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSFRPT0xfU1JYTlRVUExFIDB4MDAwMDAwMzUKICNkZWZpbmUgRVRIVE9PTF9HUlhOVFVQTEUgMHgwMDAwMDAzNgogI2RlZmluZSBFVEhUT09MX0dTU0VUX0lORk8gMHgwMDAwMDAzNwogI2RlZmluZSBFVEhUT09MX0dSWEZISU5ESVIgMHgwMDAwMDAzOAotI2RlZmluZSBFVEhUT09MX1NSWEZISU5ESVIgMHgwMDAwMDAzOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9TUlhGSElORElSIDB4MDAwMDAwMzkKICNkZWZpbmUgRVRIVE9PTF9HRkVBVFVSRVMgMHgwMDAwMDAzYQogI2RlZmluZSBFVEhUT09MX1NGRUFUVVJFUyAweDAwMDAwMDNiCiAjZGVmaW5lIEVUSFRPT0xfR0NIQU5ORUxTIDB4MDAwMDAwM2MKLSNkZWZpbmUgRVRIVE9PTF9TQ0hBTk5FTFMgMHgwMDAwMDAzZAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9TQ0hBTk5FTFMgMHgwMDAwMDAzZAogI2RlZmluZSBFVEhUT09MX1NFVF9EVU1QIDB4MDAwMDAwM2UKICNkZWZpbmUgRVRIVE9PTF9HRVRfRFVNUF9GTEFHIDB4MDAwMDAwM2YKICNkZWZpbmUgRVRIVE9PTF9HRVRfRFVNUF9EQVRBIDB4MDAwMDAwNDAKLSNkZWZpbmUgRVRIVE9PTF9HRVRfVFNfSU5GTyAweDAwMDAwMDQxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFVEhUT09MX0dFVF9UU19JTkZPIDB4MDAwMDAwNDEKICNkZWZpbmUgRVRIVE9PTF9HTU9EVUxFSU5GTyAweDAwMDAwMDQyCiAjZGVmaW5lIEVUSFRPT0xfR01PRFVMRUVFUFJPTSAweDAwMDAwMDQzCiAjZGVmaW5lIEVUSFRPT0xfR0VFRSAweDAwMDAwMDQ0Ci0jZGVmaW5lIEVUSFRPT0xfU0VFRSAweDAwMDAwMDQ1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBFVEhUT09MX1NFRUUgMHgwMDAwMDA0NQorI2RlZmluZSBFVEhUT09MX0dSU1NIIDB4MDAwMDAwNDYKKyNkZWZpbmUgRVRIVE9PTF9TUlNTSCAweDAwMDAwMDQ3CisjZGVmaW5lIEVUSFRPT0xfR1RVTkFCTEUgMHgwMDAwMDA0OAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIVE9PTF9TVFVOQUJMRSAweDAwMDAwMDQ5CiAjZGVmaW5lIFNQQVJDX0VUSF9HU0VUIEVUSFRPT0xfR1NFVAogI2RlZmluZSBTUEFSQ19FVEhfU1NFVCBFVEhUT09MX1NTRVQKICNkZWZpbmUgU1VQUE9SVEVEXzEwYmFzZVRfSGFsZiAoMSA8PCAwKQotI2RlZmluZSBTVVBQT1JURURfMTBiYXNlVF9GdWxsICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTVVBQT1JURURfMTBiYXNlVF9GdWxsICgxIDw8IDEpCiAjZGVmaW5lIFNVUFBPUlRFRF8xMDBiYXNlVF9IYWxmICgxIDw8IDIpCiAjZGVmaW5lIFNVUFBPUlRFRF8xMDBiYXNlVF9GdWxsICgxIDw8IDMpCiAjZGVmaW5lIFNVUFBPUlRFRF8xMDAwYmFzZVRfSGFsZiAoMSA8PCA0KQotI2RlZmluZSBTVVBQT1JURURfMTAwMGJhc2VUX0Z1bGwgKDEgPDwgNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNVUFBPUlRFRF8xMDAwYmFzZVRfRnVsbCAoMSA8PCA1KQogI2RlZmluZSBTVVBQT1JURURfQXV0b25lZyAoMSA8PCA2KQogI2RlZmluZSBTVVBQT1JURURfVFAgKDEgPDwgNykKICNkZWZpbmUgU1VQUE9SVEVEX0FVSSAoMSA8PCA4KQotI2RlZmluZSBTVVBQT1JURURfTUlJICgxIDw8IDkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTVVBQT1JURURfTUlJICgxIDw8IDkpCiAjZGVmaW5lIFNVUFBPUlRFRF9GSUJSRSAoMSA8PCAxMCkKICNkZWZpbmUgU1VQUE9SVEVEX0JOQyAoMSA8PCAxMSkKICNkZWZpbmUgU1VQUE9SVEVEXzEwMDAwYmFzZVRfRnVsbCAoMSA8PCAxMikKLSNkZWZpbmUgU1VQUE9SVEVEX1BhdXNlICgxIDw8IDEzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU1VQUE9SVEVEX1BhdXNlICgxIDw8IDEzKQogI2RlZmluZSBTVVBQT1JURURfQXN5bV9QYXVzZSAoMSA8PCAxNCkKICNkZWZpbmUgU1VQUE9SVEVEXzI1MDBiYXNlWF9GdWxsICgxIDw8IDE1KQogI2RlZmluZSBTVVBQT1JURURfQmFja3BsYW5lICgxIDw8IDE2KQotI2RlZmluZSBTVVBQT1JURURfMTAwMGJhc2VLWF9GdWxsICgxIDw8IDE3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU1VQUE9SVEVEXzEwMDBiYXNlS1hfRnVsbCAoMSA8PCAxNykKICNkZWZpbmUgU1VQUE9SVEVEXzEwMDAwYmFzZUtYNF9GdWxsICgxIDw8IDE4KQogI2RlZmluZSBTVVBQT1JURURfMTAwMDBiYXNlS1JfRnVsbCAoMSA8PCAxOSkKICNkZWZpbmUgU1VQUE9SVEVEXzEwMDAwYmFzZVJfRkVDICgxIDw8IDIwKQotI2RlZmluZSBTVVBQT1JURURfMjAwMDBiYXNlTUxEMl9GdWxsICgxIDw8IDIxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU1VQUE9SVEVEXzIwMDAwYmFzZU1MRDJfRnVsbCAoMSA8PCAyMSkKICNkZWZpbmUgU1VQUE9SVEVEXzIwMDAwYmFzZUtSMl9GdWxsICgxIDw8IDIyKQogI2RlZmluZSBTVVBQT1JURURfNDAwMDBiYXNlS1I0X0Z1bGwgKDEgPDwgMjMpCiAjZGVmaW5lIFNVUFBPUlRFRF80MDAwMGJhc2VDUjRfRnVsbCAoMSA8PCAyNCkKLSNkZWZpbmUgU1VQUE9SVEVEXzQwMDAwYmFzZVNSNF9GdWxsICgxIDw8IDI1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU1VQUE9SVEVEXzQwMDAwYmFzZVNSNF9GdWxsICgxIDw8IDI1KQogI2RlZmluZSBTVVBQT1JURURfNDAwMDBiYXNlTFI0X0Z1bGwgKDEgPDwgMjYpCiAjZGVmaW5lIEFEVkVSVElTRURfMTBiYXNlVF9IYWxmICgxIDw8IDApCiAjZGVmaW5lIEFEVkVSVElTRURfMTBiYXNlVF9GdWxsICgxIDw8IDEpCi0jZGVmaW5lIEFEVkVSVElTRURfMTAwYmFzZVRfSGFsZiAoMSA8PCAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQURWRVJUSVNFRF8xMDBiYXNlVF9IYWxmICgxIDw8IDIpCiAjZGVmaW5lIEFEVkVSVElTRURfMTAwYmFzZVRfRnVsbCAoMSA8PCAzKQogI2RlZmluZSBBRFZFUlRJU0VEXzEwMDBiYXNlVF9IYWxmICgxIDw8IDQpCiAjZGVmaW5lIEFEVkVSVElTRURfMTAwMGJhc2VUX0Z1bGwgKDEgPDwgNSkKLSNkZWZpbmUgQURWRVJUSVNFRF9BdXRvbmVnICgxIDw8IDYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBRFZFUlRJU0VEX0F1dG9uZWcgKDEgPDwgNikKICNkZWZpbmUgQURWRVJUSVNFRF9UUCAoMSA8PCA3KQogI2RlZmluZSBBRFZFUlRJU0VEX0FVSSAoMSA8PCA4KQogI2RlZmluZSBBRFZFUlRJU0VEX01JSSAoMSA8PCA5KQotI2RlZmluZSBBRFZFUlRJU0VEX0ZJQlJFICgxIDw8IDEwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQURWRVJUSVNFRF9GSUJSRSAoMSA8PCAxMCkKICNkZWZpbmUgQURWRVJUSVNFRF9CTkMgKDEgPDwgMTEpCiAjZGVmaW5lIEFEVkVSVElTRURfMTAwMDBiYXNlVF9GdWxsICgxIDw8IDEyKQogI2RlZmluZSBBRFZFUlRJU0VEX1BhdXNlICgxIDw8IDEzKQotI2RlZmluZSBBRFZFUlRJU0VEX0FzeW1fUGF1c2UgKDEgPDwgMTQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBRFZFUlRJU0VEX0FzeW1fUGF1c2UgKDEgPDwgMTQpCiAjZGVmaW5lIEFEVkVSVElTRURfMjUwMGJhc2VYX0Z1bGwgKDEgPDwgMTUpCiAjZGVmaW5lIEFEVkVSVElTRURfQmFja3BsYW5lICgxIDw8IDE2KQogI2RlZmluZSBBRFZFUlRJU0VEXzEwMDBiYXNlS1hfRnVsbCAoMSA8PCAxNykKLSNkZWZpbmUgQURWRVJUSVNFRF8xMDAwMGJhc2VLWDRfRnVsbCAoMSA8PCAxOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFEVkVSVElTRURfMTAwMDBiYXNlS1g0X0Z1bGwgKDEgPDwgMTgpCiAjZGVmaW5lIEFEVkVSVElTRURfMTAwMDBiYXNlS1JfRnVsbCAoMSA8PCAxOSkKICNkZWZpbmUgQURWRVJUSVNFRF8xMDAwMGJhc2VSX0ZFQyAoMSA8PCAyMCkKICNkZWZpbmUgQURWRVJUSVNFRF8yMDAwMGJhc2VNTEQyX0Z1bGwgKDEgPDwgMjEpCi0jZGVmaW5lIEFEVkVSVElTRURfMjAwMDBiYXNlS1IyX0Z1bGwgKDEgPDwgMjIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBBRFZFUlRJU0VEXzIwMDAwYmFzZUtSMl9GdWxsICgxIDw8IDIyKQogI2RlZmluZSBBRFZFUlRJU0VEXzQwMDAwYmFzZUtSNF9GdWxsICgxIDw8IDIzKQogI2RlZmluZSBBRFZFUlRJU0VEXzQwMDAwYmFzZUNSNF9GdWxsICgxIDw8IDI0KQogI2RlZmluZSBBRFZFUlRJU0VEXzQwMDAwYmFzZVNSNF9GdWxsICgxIDw8IDI1KQotI2RlZmluZSBBRFZFUlRJU0VEXzQwMDAwYmFzZUxSNF9GdWxsICgxIDw8IDI2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQURWRVJUSVNFRF80MDAwMGJhc2VMUjRfRnVsbCAoMSA8PCAyNikKICNkZWZpbmUgU1BFRURfMTAgMTAKICNkZWZpbmUgU1BFRURfMTAwIDEwMAogI2RlZmluZSBTUEVFRF8xMDAwIDEwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNQRUVEXzI1MDAgMjUwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU1BFRURfMTAwMDAgMTAwMDAKLSNkZWZpbmUgU1BFRURfVU5LTk9XTiAtMQorI2RlZmluZSBTUEVFRF9VTktOT1dOIC0gMQogI2RlZmluZSBEVVBMRVhfSEFMRiAweDAwCi0jZGVmaW5lIERVUExFWF9GVUxMIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERVUExFWF9GVUxMIDB4MDEKICNkZWZpbmUgRFVQTEVYX1VOS05PV04gMHhmZgogI2RlZmluZSBQT1JUX1RQIDB4MDAKICNkZWZpbmUgUE9SVF9BVUkgMHgwMQotI2RlZmluZSBQT1JUX01JSSAweDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQT1JUX01JSSAweDAyCiAjZGVmaW5lIFBPUlRfRklCUkUgMHgwMwogI2RlZmluZSBQT1JUX0JOQyAweDA0CiAjZGVmaW5lIFBPUlRfREEgMHgwNQotI2RlZmluZSBQT1JUX05PTkUgMHhlZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUE9SVF9OT05FIDB4ZWYKICNkZWZpbmUgUE9SVF9PVEhFUiAweGZmCiAjZGVmaW5lIFhDVlJfSU5URVJOQUwgMHgwMAogI2RlZmluZSBYQ1ZSX0VYVEVSTkFMIDB4MDEKLSNkZWZpbmUgWENWUl9EVU1NWTEgMHgwMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgWENWUl9EVU1NWTEgMHgwMgogI2RlZmluZSBYQ1ZSX0RVTU1ZMiAweDAzCiAjZGVmaW5lIFhDVlJfRFVNTVkzIDB4MDQKICNkZWZpbmUgQVVUT05FR19ESVNBQkxFIDB4MDAKLSNkZWZpbmUgQVVUT05FR19FTkFCTEUgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVVUT05FR19FTkFCTEUgMHgwMQogI2RlZmluZSBFVEhfVFBfTURJX0lOVkFMSUQgMHgwMAogI2RlZmluZSBFVEhfVFBfTURJIDB4MDEKICNkZWZpbmUgRVRIX1RQX01ESV9YIDB4MDIKLSNkZWZpbmUgRVRIX1RQX01ESV9BVVRPIDB4MDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSF9UUF9NRElfQVVUTyAweDAzCiAjZGVmaW5lIFdBS0VfUEhZICgxIDw8IDApCiAjZGVmaW5lIFdBS0VfVUNBU1QgKDEgPDwgMSkKICNkZWZpbmUgV0FLRV9NQ0FTVCAoMSA8PCAyKQotI2RlZmluZSBXQUtFX0JDQVNUICgxIDw8IDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBXQUtFX0JDQVNUICgxIDw8IDMpCiAjZGVmaW5lIFdBS0VfQVJQICgxIDw8IDQpCiAjZGVmaW5lIFdBS0VfTUFHSUMgKDEgPDwgNSkKICNkZWZpbmUgV0FLRV9NQUdJQ1NFQ1VSRSAoMSA8PCA2KQotI2RlZmluZSBUQ1BfVjRfRkxPVyAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUQ1BfVjRfRkxPVyAweDAxCiAjZGVmaW5lIFVEUF9WNF9GTE9XIDB4MDIKICNkZWZpbmUgU0NUUF9WNF9GTE9XIDB4MDMKICNkZWZpbmUgQUhfRVNQX1Y0X0ZMT1cgMHgwNAotI2RlZmluZSBUQ1BfVjZfRkxPVyAweDA1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUQ1BfVjZfRkxPVyAweDA1CiAjZGVmaW5lIFVEUF9WNl9GTE9XIDB4MDYKICNkZWZpbmUgU0NUUF9WNl9GTE9XIDB4MDcKICNkZWZpbmUgQUhfRVNQX1Y2X0ZMT1cgMHgwOAotI2RlZmluZSBBSF9WNF9GTE9XIDB4MDkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEFIX1Y0X0ZMT1cgMHgwOQogI2RlZmluZSBFU1BfVjRfRkxPVyAweDBhCiAjZGVmaW5lIEFIX1Y2X0ZMT1cgMHgwYgogI2RlZmluZSBFU1BfVjZfRkxPVyAweDBjCi0jZGVmaW5lIElQX1VTRVJfRkxPVyAweDBkCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJUF9VU0VSX0ZMT1cgMHgwZAogI2RlZmluZSBJUFY0X0ZMT1cgMHgxMAogI2RlZmluZSBJUFY2X0ZMT1cgMHgxMQogI2RlZmluZSBFVEhFUl9GTE9XIDB4MTIKLSNkZWZpbmUgRkxPV19FWFQgMHg4MDAwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRkxPV19FWFQgMHg4MDAwMDAwMAogI2RlZmluZSBGTE9XX01BQ19FWFQgMHg0MDAwMDAwMAogI2RlZmluZSBSWEhfTDJEQSAoMSA8PCAxKQogI2RlZmluZSBSWEhfVkxBTiAoMSA8PCAyKQotI2RlZmluZSBSWEhfTDNfUFJPVE8gKDEgPDwgMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJYSF9MM19QUk9UTyAoMSA8PCAzKQogI2RlZmluZSBSWEhfSVBfU1JDICgxIDw8IDQpCiAjZGVmaW5lIFJYSF9JUF9EU1QgKDEgPDwgNSkKICNkZWZpbmUgUlhIX0w0X0JfMF8xICgxIDw8IDYpCi0jZGVmaW5lIFJYSF9MNF9CXzJfMyAoMSA8PCA3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUlhIX0w0X0JfMl8zICgxIDw8IDcpCiAjZGVmaW5lIFJYSF9ESVNDQVJEICgxIDw8IDMxKQogI2RlZmluZSBSWF9DTFNfRkxPV19ESVNDIDB4ZmZmZmZmZmZmZmZmZmZmZlVMTAogI2RlZmluZSBSWF9DTFNfTE9DX1NQRUNJQUwgMHg4MDAwMDAwMAotI2RlZmluZSBSWF9DTFNfTE9DX0FOWSAweGZmZmZmZmZmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBSWF9DTFNfTE9DX0FOWSAweGZmZmZmZmZmCiAjZGVmaW5lIFJYX0NMU19MT0NfRklSU1QgMHhmZmZmZmZmZQogI2RlZmluZSBSWF9DTFNfTE9DX0xBU1QgMHhmZmZmZmZmZAogI2RlZmluZSBFVEhfTU9EVUxFX1NGRl84MDc5IDB4MQotI2RlZmluZSBFVEhfTU9EVUxFX1NGRl84MDc5X0xFTiAyNTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSF9NT0RVTEVfU0ZGXzgwNzlfTEVOIDI1NgogI2RlZmluZSBFVEhfTU9EVUxFX1NGRl84NDcyIDB4MgogI2RlZmluZSBFVEhfTU9EVUxFX1NGRl84NDcyX0xFTiA1MTIKIGVudW0gZXRodG9vbF9yZXNldF9mbGFncyB7Ci0gRVRIX1JFU0VUX01HTVQgPSAxIDw8IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVUSF9SRVNFVF9JUlEgPSAxIDw8IDEsCi0gRVRIX1JFU0VUX0RNQSA9IDEgPDwgMiwKLSBFVEhfUkVTRVRfRklMVEVSID0gMSA8PCAzLAotIEVUSF9SRVNFVF9PRkZMT0FEID0gMSA8PCA0LAorICBFVEhfUkVTRVRfTUdNVCA9IDEgPDwgMCwKKyAgRVRIX1JFU0VUX0lSUSA9IDEgPDwgMSwKKyAgRVRIX1JFU0VUX0RNQSA9IDEgPDwgMiwKKyAgRVRIX1JFU0VUX0ZJTFRFUiA9IDEgPDwgMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRVRIX1JFU0VUX01BQyA9IDEgPDwgNSwKLSBFVEhfUkVTRVRfUEhZID0gMSA8PCA2LAotIEVUSF9SRVNFVF9SQU0gPSAxIDw8IDcsCi0gRVRIX1JFU0VUX0RFRElDQVRFRCA9IDB4MDAwMGZmZmYsCisgIEVUSF9SRVNFVF9PRkZMT0FEID0gMSA8PCA0LAorICBFVEhfUkVTRVRfTUFDID0gMSA8PCA1LAorICBFVEhfUkVTRVRfUEhZID0gMSA8PCA2LAorICBFVEhfUkVTRVRfUkFNID0gMSA8PCA3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFVEhfUkVTRVRfQUxMID0gMHhmZmZmZmZmZiwKKyAgRVRIX1JFU0VUX0RFRElDQVRFRCA9IDB4MDAwMGZmZmYsCisgIEVUSF9SRVNFVF9BTEwgPSAweGZmZmZmZmZmLAogfTsKICNkZWZpbmUgRVRIX1JFU0VUX1NIQVJFRF9TSElGVCAxNgotI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2V2ZW50cG9sbC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ldmVudHBvbGwuaAppbmRleCA5YjVhYWRiLi45ZjMyOWY3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2V2ZW50cG9sbC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZXZlbnRwb2xsLmgKQEAgLTM3LDggKzM3LDggQEAKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBlcG9sbF9ldmVudCB7Ci0gX191MzIgZXZlbnRzOwotIF9fdTY0IGRhdGE7CisgIF9fdTMyIGV2ZW50czsKKyAgX191NjQgZGF0YTsKIH0gRVBPTExfUEFDS0VEOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mYWxsb2MuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmFsbG9jLmgKaW5kZXggODBhNGMyOS4uOWVhMGIyNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mYWxsb2MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZhbGxvYy5oCkBAIC0yMiw0ICsyMiw3IEBACiAjZGVmaW5lIEZBTExPQ19GTF9QVU5DSF9IT0xFIDB4MDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZBTExPQ19GTF9OT19ISURFX1NUQUxFIDB4MDQKKyNkZWZpbmUgRkFMTE9DX0ZMX0NPTExBUFNFX1JBTkdFIDB4MDgKKyNkZWZpbmUgRkFMTE9DX0ZMX1pFUk9fUkFOR0UgMHgxMAogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mYW5vdGlmeS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mYW5vdGlmeS5oCmluZGV4IDZiMzRhN2MuLjBlMzRjYzcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmFub3RpZnkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Zhbm90aWZ5LmgKQEAgLTM5LDExICszOSwxMSBAQAogI2RlZmluZSBGQU5fQ0xBU1NfTk9USUYgMHgwMDAwMDAwMAogI2RlZmluZSBGQU5fQ0xBU1NfQ09OVEVOVCAweDAwMDAwMDA0CiAjZGVmaW5lIEZBTl9DTEFTU19QUkVfQ09OVEVOVCAweDAwMDAwMDA4Ci0jZGVmaW5lIEZBTl9BTExfQ0xBU1NfQklUUyAoRkFOX0NMQVNTX05PVElGIHwgRkFOX0NMQVNTX0NPTlRFTlQgfCAgIEZBTl9DTEFTU19QUkVfQ09OVEVOVCkKKyNkZWZpbmUgRkFOX0FMTF9DTEFTU19CSVRTIChGQU5fQ0xBU1NfTk9USUYgfCBGQU5fQ0xBU1NfQ09OVEVOVCB8IEZBTl9DTEFTU19QUkVfQ09OVEVOVCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZBTl9VTkxJTUlURURfUVVFVUUgMHgwMDAwMDAxMAogI2RlZmluZSBGQU5fVU5MSU1JVEVEX01BUktTIDB4MDAwMDAwMjAKLSNkZWZpbmUgRkFOX0FMTF9JTklUX0ZMQUdTIChGQU5fQ0xPRVhFQyB8IEZBTl9OT05CTE9DSyB8ICAgRkFOX0FMTF9DTEFTU19CSVRTIHwgRkFOX1VOTElNSVRFRF9RVUVVRSB8ICBGQU5fVU5MSU1JVEVEX01BUktTKQorI2RlZmluZSBGQU5fQUxMX0lOSVRfRkxBR1MgKEZBTl9DTE9FWEVDIHwgRkFOX05PTkJMT0NLIHwgRkFOX0FMTF9DTEFTU19CSVRTIHwgRkFOX1VOTElNSVRFRF9RVUVVRSB8IEZBTl9VTkxJTUlURURfTUFSS1MpCiAjZGVmaW5lIEZBTl9NQVJLX0FERCAweDAwMDAwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGQU5fTUFSS19SRU1PVkUgMHgwMDAwMDAwMgpAQCAtNTQsMzUgKzU0LDM1IEBACiAjZGVmaW5lIEZBTl9NQVJLX0lHTk9SRURfTUFTSyAweDAwMDAwMDIwCiAjZGVmaW5lIEZBTl9NQVJLX0lHTk9SRURfU1VSVl9NT0RJRlkgMHgwMDAwMDA0MAogI2RlZmluZSBGQU5fTUFSS19GTFVTSCAweDAwMDAwMDgwCi0jZGVmaW5lIEZBTl9BTExfTUFSS19GTEFHUyAoRkFOX01BUktfQUREIHwgIEZBTl9NQVJLX1JFTU9WRSB8ICBGQU5fTUFSS19ET05UX0ZPTExPVyB8ICBGQU5fTUFSS19PTkxZRElSIHwgIEZBTl9NQVJLX01PVU5UIHwgIEZBTl9NQVJLX0lHTk9SRURfTUFTSyB8ICBGQU5fTUFSS19JR05PUkVEX1NVUlZfTU9ESUZZIHwgIEZBTl9NQVJLX0ZMVVNIKQorI2RlZmluZSBGQU5fQUxMX01BUktfRkxBR1MgKEZBTl9NQVJLX0FERCB8IEZBTl9NQVJLX1JFTU9WRSB8IEZBTl9NQVJLX0RPTlRfRk9MTE9XIHwgRkFOX01BUktfT05MWURJUiB8IEZBTl9NQVJLX01PVU5UIHwgRkFOX01BUktfSUdOT1JFRF9NQVNLIHwgRkFOX01BUktfSUdOT1JFRF9TVVJWX01PRElGWSB8IEZBTl9NQVJLX0ZMVVNIKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRkFOX0FMTF9FVkVOVFMgKEZBTl9BQ0NFU1MgfCAgRkFOX01PRElGWSB8ICBGQU5fQ0xPU0UgfCAgRkFOX09QRU4pCi0jZGVmaW5lIEZBTl9BTExfUEVSTV9FVkVOVFMgKEZBTl9PUEVOX1BFUk0gfCAgRkFOX0FDQ0VTU19QRVJNKQotI2RlZmluZSBGQU5fQUxMX09VVEdPSU5HX0VWRU5UUyAoRkFOX0FMTF9FVkVOVFMgfCAgRkFOX0FMTF9QRVJNX0VWRU5UUyB8ICBGQU5fUV9PVkVSRkxPVykKKyNkZWZpbmUgRkFOX0FMTF9FVkVOVFMgKEZBTl9BQ0NFU1MgfCBGQU5fTU9ESUZZIHwgRkFOX0NMT1NFIHwgRkFOX09QRU4pCisjZGVmaW5lIEZBTl9BTExfUEVSTV9FVkVOVFMgKEZBTl9PUEVOX1BFUk0gfCBGQU5fQUNDRVNTX1BFUk0pCisjZGVmaW5lIEZBTl9BTExfT1VUR09JTkdfRVZFTlRTIChGQU5fQUxMX0VWRU5UUyB8IEZBTl9BTExfUEVSTV9FVkVOVFMgfCBGQU5fUV9PVkVSRkxPVykKICNkZWZpbmUgRkFOT1RJRllfTUVUQURBVEFfVkVSU0lPTiAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZhbm90aWZ5X2V2ZW50X21ldGFkYXRhIHsKLSBfX3UzMiBldmVudF9sZW47Ci0gX191OCB2ZXJzOwotIF9fdTggcmVzZXJ2ZWQ7CisgIF9fdTMyIGV2ZW50X2xlbjsKKyAgX191OCB2ZXJzOworICBfX3U4IHJlc2VydmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBtZXRhZGF0YV9sZW47Ci0gX19hbGlnbmVkX3U2NCBtYXNrOwotIF9fczMyIGZkOwotIF9fczMyIHBpZDsKKyAgX191MTYgbWV0YWRhdGFfbGVuOworICBfX2FsaWduZWRfdTY0IG1hc2s7CisgIF9fczMyIGZkOworICBfX3MzMiBwaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmYW5vdGlmeV9yZXNwb25zZSB7Ci0gX19zMzIgZmQ7Ci0gX191MzIgcmVzcG9uc2U7CisgIF9fczMyIGZkOworICBfX3UzMiByZXNwb25zZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBGQU5fQUxMT1cgMHgwMQogI2RlZmluZSBGQU5fREVOWSAweDAyCi0jZGVmaW5lIEZBTl9OT0ZEIC0xCisjZGVmaW5lIEZBTl9OT0ZEIC0gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkFOX0VWRU5UX01FVEFEQVRBX0xFTiAoc2l6ZW9mKHN0cnVjdCBmYW5vdGlmeV9ldmVudF9tZXRhZGF0YSkpCi0jZGVmaW5lIEZBTl9FVkVOVF9ORVhUKG1ldGEsIGxlbikgKChsZW4pIC09IChtZXRhKS0+ZXZlbnRfbGVuLCAgIChzdHJ1Y3QgZmFub3RpZnlfZXZlbnRfbWV0YWRhdGEqKSgoKGNoYXIgKikobWV0YSkpICsgICAobWV0YSktPmV2ZW50X2xlbikpCi0jZGVmaW5lIEZBTl9FVkVOVF9PSyhtZXRhLCBsZW4pICgobG9uZykobGVuKSA+PSAobG9uZylGQU5fRVZFTlRfTUVUQURBVEFfTEVOICYmICAgKGxvbmcpKG1ldGEpLT5ldmVudF9sZW4gPj0gKGxvbmcpRkFOX0VWRU5UX01FVEFEQVRBX0xFTiAmJiAgIChsb25nKShtZXRhKS0+ZXZlbnRfbGVuIDw9IChsb25nKShsZW4pKQorI2RlZmluZSBGQU5fRVZFTlRfTkVYVChtZXRhLGxlbikgKChsZW4pIC09IChtZXRhKS0+ZXZlbnRfbGVuLCAoc3RydWN0IGZhbm90aWZ5X2V2ZW50X21ldGFkYXRhICopICgoKGNoYXIgKikgKG1ldGEpKSArIChtZXRhKS0+ZXZlbnRfbGVuKSkKKyNkZWZpbmUgRkFOX0VWRU5UX09LKG1ldGEsbGVuKSAoKGxvbmcpIChsZW4pID49IChsb25nKSBGQU5fRVZFTlRfTUVUQURBVEFfTEVOICYmIChsb25nKSAobWV0YSktPmV2ZW50X2xlbiA+PSAobG9uZykgRkFOX0VWRU5UX01FVEFEQVRBX0xFTiAmJiAobG9uZykgKG1ldGEpLT5ldmVudF9sZW4gPD0gKGxvbmcpIChsZW4pKQogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mYi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mYi5oCmluZGV4IDE2YjM3NTUuLjM5YmIzZjQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZiLmgKQEAgLTE4MywzMSArMTgzLDMxIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGQl9DQVBfRk9VUkNDIDEKIHN0cnVjdCBmYl9maXhfc2NyZWVuaW5mbyB7Ci0gY2hhciBpZFsxNl07Ci0gdW5zaWduZWQgbG9uZyBzbWVtX3N0YXJ0OworICBjaGFyIGlkWzE2XTsKKyAgdW5zaWduZWQgbG9uZyBzbWVtX3N0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzbWVtX2xlbjsKLSBfX3UzMiB0eXBlOwotIF9fdTMyIHR5cGVfYXV4OwotIF9fdTMyIHZpc3VhbDsKKyAgX191MzIgc21lbV9sZW47CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIHR5cGVfYXV4OworICBfX3UzMiB2aXN1YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHhwYW5zdGVwOwotIF9fdTE2IHlwYW5zdGVwOwotIF9fdTE2IHl3cmFwc3RlcDsKLSBfX3UzMiBsaW5lX2xlbmd0aDsKKyAgX191MTYgeHBhbnN0ZXA7CisgIF9fdTE2IHlwYW5zdGVwOworICBfX3UxNiB5d3JhcHN0ZXA7CisgIF9fdTMyIGxpbmVfbGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIG1taW9fc3RhcnQ7Ci0gX191MzIgbW1pb19sZW47Ci0gX191MzIgYWNjZWw7Ci0gX191MTYgY2FwYWJpbGl0aWVzOworICB1bnNpZ25lZCBsb25nIG1taW9fc3RhcnQ7CisgIF9fdTMyIG1taW9fbGVuOworICBfX3UzMiBhY2NlbDsKKyAgX191MTYgY2FwYWJpbGl0aWVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiByZXNlcnZlZFsyXTsKKyAgX191MTYgcmVzZXJ2ZWRbMl07CiB9Owogc3RydWN0IGZiX2JpdGZpZWxkIHsKLSBfX3UzMiBvZmZzZXQ7CisgIF9fdTMyIG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGVuZ3RoOwotIF9fdTMyIG1zYl9yaWdodDsKKyAgX191MzIgbGVuZ3RoOworICBfX3UzMiBtc2JfcmlnaHQ7CiB9OwogI2RlZmluZSBGQl9OT05TVERfSEFNIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0yNDcsNjEgKzI0Nyw2MSBAQAogI2RlZmluZSBGQl9ST1RBVEVfVUQgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkJfUk9UQVRFX0NDVyAzCi0jZGVmaW5lIFBJQ09TMktIWihhKSAoMTAwMDAwMDAwMFVMLyhhKSkKLSNkZWZpbmUgS0haMlBJQ09TKGEpICgxMDAwMDAwMDAwVUwvKGEpKQorI2RlZmluZSBQSUNPUzJLSFooYSkgKDEwMDAwMDAwMDBVTCAvIChhKSkKKyNkZWZpbmUgS0haMlBJQ09TKGEpICgxMDAwMDAwMDAwVUwgLyAoYSkpCiBzdHJ1Y3QgZmJfdmFyX3NjcmVlbmluZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB4cmVzOwotIF9fdTMyIHlyZXM7Ci0gX191MzIgeHJlc192aXJ0dWFsOwotIF9fdTMyIHlyZXNfdmlydHVhbDsKKyAgX191MzIgeHJlczsKKyAgX191MzIgeXJlczsKKyAgX191MzIgeHJlc192aXJ0dWFsOworICBfX3UzMiB5cmVzX3ZpcnR1YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHhvZmZzZXQ7Ci0gX191MzIgeW9mZnNldDsKLSBfX3UzMiBiaXRzX3Blcl9waXhlbDsKLSBfX3UzMiBncmF5c2NhbGU7CisgIF9fdTMyIHhvZmZzZXQ7CisgIF9fdTMyIHlvZmZzZXQ7CisgIF9fdTMyIGJpdHNfcGVyX3BpeGVsOworICBfX3UzMiBncmF5c2NhbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmYl9iaXRmaWVsZCByZWQ7Ci0gc3RydWN0IGZiX2JpdGZpZWxkIGdyZWVuOwotIHN0cnVjdCBmYl9iaXRmaWVsZCBibHVlOwotIHN0cnVjdCBmYl9iaXRmaWVsZCB0cmFuc3A7CisgIHN0cnVjdCBmYl9iaXRmaWVsZCByZWQ7CisgIHN0cnVjdCBmYl9iaXRmaWVsZCBncmVlbjsKKyAgc3RydWN0IGZiX2JpdGZpZWxkIGJsdWU7CisgIHN0cnVjdCBmYl9iaXRmaWVsZCB0cmFuc3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5vbnN0ZDsKLSBfX3UzMiBhY3RpdmF0ZTsKLSBfX3UzMiBoZWlnaHQ7Ci0gX191MzIgd2lkdGg7CisgIF9fdTMyIG5vbnN0ZDsKKyAgX191MzIgYWN0aXZhdGU7CisgIF9fdTMyIGhlaWdodDsKKyAgX191MzIgd2lkdGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGFjY2VsX2ZsYWdzOwotIF9fdTMyIHBpeGNsb2NrOwotIF9fdTMyIGxlZnRfbWFyZ2luOwotIF9fdTMyIHJpZ2h0X21hcmdpbjsKKyAgX191MzIgYWNjZWxfZmxhZ3M7CisgIF9fdTMyIHBpeGNsb2NrOworICBfX3UzMiBsZWZ0X21hcmdpbjsKKyAgX191MzIgcmlnaHRfbWFyZ2luOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB1cHBlcl9tYXJnaW47Ci0gX191MzIgbG93ZXJfbWFyZ2luOwotIF9fdTMyIGhzeW5jX2xlbjsKLSBfX3UzMiB2c3luY19sZW47CisgIF9fdTMyIHVwcGVyX21hcmdpbjsKKyAgX191MzIgbG93ZXJfbWFyZ2luOworICBfX3UzMiBoc3luY19sZW47CisgIF9fdTMyIHZzeW5jX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3luYzsKLSBfX3UzMiB2bW9kZTsKLSBfX3UzMiByb3RhdGU7Ci0gX191MzIgY29sb3JzcGFjZTsKKyAgX191MzIgc3luYzsKKyAgX191MzIgdm1vZGU7CisgIF9fdTMyIHJvdGF0ZTsKKyAgX191MzIgY29sb3JzcGFjZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbNF07CisgIF9fdTMyIHJlc2VydmVkWzRdOwogfTsKIHN0cnVjdCBmYl9jbWFwIHsKLSBfX3UzMiBzdGFydDsKKyAgX191MzIgc3RhcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxlbjsKLSBfX3UxNiAqcmVkOwotIF9fdTE2ICpncmVlbjsKLSBfX3UxNiAqYmx1ZTsKKyAgX191MzIgbGVuOworICBfX3UxNiAqIHJlZDsKKyAgX191MTYgKiBncmVlbjsKKyAgX191MTYgKiBibHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiAqdHJhbnNwOworICBfX3UxNiAqIHRyYW5zcDsKIH07CiBzdHJ1Y3QgZmJfY29uMmZibWFwIHsKLSBfX3UzMiBjb25zb2xlOworICBfX3UzMiBjb25zb2xlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmcmFtZWJ1ZmZlcjsKKyAgX191MzIgZnJhbWVidWZmZXI7CiB9OwogI2RlZmluZSBWRVNBX05PX0JMQU5LSU5HIDAKICNkZWZpbmUgVkVTQV9WU1lOQ19TVVNQRU5EIDEKQEAgLTMwOSwxMiArMzA5LDEyIEBACiAjZGVmaW5lIFZFU0FfSFNZTkNfU1VTUEVORCAyCiAjZGVmaW5lIFZFU0FfUE9XRVJET1dOIDMKIGVudW0gewotIEZCX0JMQU5LX1VOQkxBTksgPSBWRVNBX05PX0JMQU5LSU5HLAorICBGQl9CTEFOS19VTkJMQU5LID0gVkVTQV9OT19CTEFOS0lORywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkJfQkxBTktfTk9STUFMID0gVkVTQV9OT19CTEFOS0lORyArIDEsCi0gRkJfQkxBTktfVlNZTkNfU1VTUEVORCA9IFZFU0FfVlNZTkNfU1VTUEVORCArIDEsCi0gRkJfQkxBTktfSFNZTkNfU1VTUEVORCA9IFZFU0FfSFNZTkNfU1VTUEVORCArIDEsCi0gRkJfQkxBTktfUE9XRVJET1dOID0gVkVTQV9QT1dFUkRPV04gKyAxCisgIEZCX0JMQU5LX05PUk1BTCA9IFZFU0FfTk9fQkxBTktJTkcgKyAxLAorICBGQl9CTEFOS19WU1lOQ19TVVNQRU5EID0gVkVTQV9WU1lOQ19TVVNQRU5EICsgMSwKKyAgRkJfQkxBTktfSFNZTkNfU1VTUEVORCA9IFZFU0FfSFNZTkNfU1VTUEVORCArIDEsCisgIEZCX0JMQU5LX1BPV0VSRE9XTiA9IFZFU0FfUE9XRVJET1dOICsgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEZCX1ZCTEFOS19WQkxBTktJTkcgMHgwMDEKQEAgLTMyOSw0OSArMzI5LDQ5IEBACiAjZGVmaW5lIEZCX1ZCTEFOS19WU1lOQ0lORyAweDA4MAogI2RlZmluZSBGQl9WQkxBTktfSEFWRV9WU1lOQyAweDEwMAogc3RydWN0IGZiX3ZibGFuayB7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb3VudDsKLSBfX3UzMiB2Y291bnQ7Ci0gX191MzIgaGNvdW50OwotIF9fdTMyIHJlc2VydmVkWzRdOworICBfX3UzMiBjb3VudDsKKyAgX191MzIgdmNvdW50OworICBfX3UzMiBoY291bnQ7CisgIF9fdTMyIHJlc2VydmVkWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFJPUF9DT1BZIDAKICNkZWZpbmUgUk9QX1hPUiAxCiBzdHJ1Y3QgZmJfY29weWFyZWEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkeDsKLSBfX3UzMiBkeTsKLSBfX3UzMiB3aWR0aDsKLSBfX3UzMiBoZWlnaHQ7CisgIF9fdTMyIGR4OworICBfX3UzMiBkeTsKKyAgX191MzIgd2lkdGg7CisgIF9fdTMyIGhlaWdodDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3g7Ci0gX191MzIgc3k7CisgIF9fdTMyIHN4OworICBfX3UzMiBzeTsKIH07CiBzdHJ1Y3QgZmJfZmlsbHJlY3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkeDsKLSBfX3UzMiBkeTsKLSBfX3UzMiB3aWR0aDsKLSBfX3UzMiBoZWlnaHQ7CisgIF9fdTMyIGR4OworICBfX3UzMiBkeTsKKyAgX191MzIgd2lkdGg7CisgIF9fdTMyIGhlaWdodDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY29sb3I7Ci0gX191MzIgcm9wOworICBfX3UzMiBjb2xvcjsKKyAgX191MzIgcm9wOwogfTsKIHN0cnVjdCBmYl9pbWFnZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGR4OwotIF9fdTMyIGR5OwotIF9fdTMyIHdpZHRoOwotIF9fdTMyIGhlaWdodDsKKyAgX191MzIgZHg7CisgIF9fdTMyIGR5OworICBfX3UzMiB3aWR0aDsKKyAgX191MzIgaGVpZ2h0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmZ19jb2xvcjsKLSBfX3UzMiBiZ19jb2xvcjsKLSBfX3U4IGRlcHRoOwotIGNvbnN0IGNoYXIgKmRhdGE7CisgIF9fdTMyIGZnX2NvbG9yOworICBfX3UzMiBiZ19jb2xvcjsKKyAgX191OCBkZXB0aDsKKyAgY29uc3QgY2hhciAqIGRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmYl9jbWFwIGNtYXA7CisgIHN0cnVjdCBmYl9jbWFwIGNtYXA7CiB9OwogI2RlZmluZSBGQl9DVVJfU0VUSU1BR0UgMHgwMQogI2RlZmluZSBGQl9DVVJfU0VUUE9TIDB4MDIKQEAgLTM4MywxNyArMzgzLDE3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGQl9DVVJfU0VUQUxMIDB4RkYKIHN0cnVjdCBmYmN1cnBvcyB7Ci0gX191MTYgeCwgeTsKKyAgX191MTYgeCwgeTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZiX2N1cnNvciB7Ci0gX191MTYgc2V0OwotIF9fdTE2IGVuYWJsZTsKLSBfX3UxNiByb3A7CisgIF9fdTE2IHNldDsKKyAgX191MTYgZW5hYmxlOworICBfX3UxNiByb3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNvbnN0IGNoYXIgKm1hc2s7Ci0gc3RydWN0IGZiY3VycG9zIGhvdDsKLSBzdHJ1Y3QgZmJfaW1hZ2UgaW1hZ2U7CisgIGNvbnN0IGNoYXIgKiBtYXNrOworICBzdHJ1Y3QgZmJjdXJwb3MgaG90OworICBzdHJ1Y3QgZmJfaW1hZ2UgaW1hZ2U7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mY250bC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mY250bC5oCmluZGV4IGZjMThkODcuLmI4ODhkYzkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmNudGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZjbnRsLmgKQEAgLTI0LDI1ICsyNCwzMiBAQAogI2RlZmluZSBGX0dFVExFQVNFIChGX0xJTlVYX1NQRUNJRklDX0JBU0UgKyAxKQogI2RlZmluZSBGX0NBTkNFTExLIChGX0xJTlVYX1NQRUNJRklDX0JBU0UgKyA1KQogI2RlZmluZSBGX0RVUEZEX0NMT0VYRUMgKEZfTElOVVhfU1BFQ0lGSUNfQkFTRSArIDYpCi0jZGVmaW5lIEZfTk9USUZZIChGX0xJTlVYX1NQRUNJRklDX0JBU0UrMikKKyNkZWZpbmUgRl9OT1RJRlkgKEZfTElOVVhfU1BFQ0lGSUNfQkFTRSArIDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGX1NFVFBJUEVfU1ogKEZfTElOVVhfU1BFQ0lGSUNfQkFTRSArIDcpCiAjZGVmaW5lIEZfR0VUUElQRV9TWiAoRl9MSU5VWF9TUEVDSUZJQ19CQVNFICsgOCkKKyNkZWZpbmUgRl9BRERfU0VBTFMgKEZfTElOVVhfU1BFQ0lGSUNfQkFTRSArIDkpCisjZGVmaW5lIEZfR0VUX1NFQUxTIChGX0xJTlVYX1NQRUNJRklDX0JBU0UgKyAxMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZfU0VBTF9TRUFMIDB4MDAwMQorI2RlZmluZSBGX1NFQUxfU0hSSU5LIDB4MDAwMgorI2RlZmluZSBGX1NFQUxfR1JPVyAweDAwMDQKKyNkZWZpbmUgRl9TRUFMX1dSSVRFIDB4MDAwOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRE5fQUNDRVNTIDB4MDAwMDAwMDEKICNkZWZpbmUgRE5fTU9ESUZZIDB4MDAwMDAwMDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEROX0NSRUFURSAweDAwMDAwMDA0CiAjZGVmaW5lIEROX0RFTEVURSAweDAwMDAwMDA4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBETl9SRU5BTUUgMHgwMDAwMDAxMAogI2RlZmluZSBETl9BVFRSSUIgMHgwMDAwMDAyMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRE5fTVVMVElTSE9UIDB4ODAwMDAwMDAKLSNkZWZpbmUgQVRfRkRDV0QgLTEwMAorI2RlZmluZSBBVF9GRENXRCAtIDEwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVRfU1lNTElOS19OT0ZPTExPVyAweDEwMAogI2RlZmluZSBBVF9SRU1PVkVESVIgMHgyMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFUX1NZTUxJTktfRk9MTE9XIDB4NDAwCiAjZGVmaW5lIEFUX05PX0FVVE9NT1VOVCAweDgwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVRfRU1QVFlfUEFUSCAweDEwMDAKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmQuaAppbmRleCBjZmM4MmE2Li4wYjk3YmMyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mZC5oCkBAIC0yMiwxMiArMjIsNyBAQAogI2luY2x1ZGUgPGxpbnV4L2NvbXBpbGVyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZsb3BweV9zdHJ1Y3QgewotIHVuc2lnbmVkIGludCBzaXplLAotIHNlY3QsCi0gaGVhZCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdHJhY2ssCi0gc3RyZXRjaDsKKyAgdW5zaWduZWQgaW50IHNpemUsIHNlY3QsIGhlYWQsIHRyYWNrLCBzdHJldGNoOwogI2RlZmluZSBGRF9TVFJFVENIIDEKICNkZWZpbmUgRkRfU1dBUFNJREVTIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0zNiwyMTkgKzMxLDIxMCBAQAogI2RlZmluZSBGRF9NS1NFQ1RCQVNFKHMpICgoKHMpIF4gMSkgPDwgMikKICNkZWZpbmUgRkRfU0VDVEJBU0UoZmxvcHB5KSAoKCgoZmxvcHB5KS0+c3RyZXRjaCAmIEZEX1NFQ1RCQVNFTUFTSykgPj4gMikgXiAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGdhcCwKLSByYXRlLAorICB1bnNpZ25lZCBjaGFyIGdhcCwgcmF0ZSwKICNkZWZpbmUgRkRfMk0gMHg0CiAjZGVmaW5lIEZEX1NJWkVDT0RFTUFTSyAweDM4CisjZGVmaW5lIEZEX1NJWkVDT0RFKGZsb3BweSkgKCgoKChmbG9wcHkpLT5yYXRlICYgRkRfU0laRUNPREVNQVNLKSA+PiAzKSArIDIpICUgOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEZEX1NJWkVDT0RFKGZsb3BweSkgKCgoKChmbG9wcHkpLT5yYXRlJkZEX1NJWkVDT0RFTUFTSyk+PiAzKSsgMikgJTgpCi0jZGVmaW5lIEZEX1NFQ1RTSVpFKGZsb3BweSkgKCAoZmxvcHB5KS0+cmF0ZSAmIEZEXzJNID8gICA1MTIgOiAxMjggPDwgRkRfU0laRUNPREUoZmxvcHB5KSApCisjZGVmaW5lIEZEX1NFQ1RTSVpFKGZsb3BweSkgKChmbG9wcHkpLT5yYXRlICYgRkRfMk0gPyA1MTIgOiAxMjggPDwgRkRfU0laRUNPREUoZmxvcHB5KSkKICNkZWZpbmUgRkRfUEVSUCAweDQwCi0gc3BlYzEsCisgIHNwZWMxLCBmbXRfZ2FwOworICBjb25zdCBjaGFyICogbmFtZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZm10X2dhcDsKLSBjb25zdCBjaGFyICogbmFtZTsKIH07CiAjZGVmaW5lIEZEQ0xSUFJNIF9JTygyLCAweDQxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkRTRVRQUk0gX0lPVygyLCAweDQyLCBzdHJ1Y3QgZmxvcHB5X3N0cnVjdCkKICNkZWZpbmUgRkRTRVRNRURJQVBSTSBGRFNFVFBSTQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkRERUZQUk0gX0lPVygyLCAweDQzLCBzdHJ1Y3QgZmxvcHB5X3N0cnVjdCkKICNkZWZpbmUgRkRHRVRQUk0gX0lPUigyLCAweDA0LCBzdHJ1Y3QgZmxvcHB5X3N0cnVjdCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZEREVGTUVESUFQUk0gRkRERUZQUk0KICNkZWZpbmUgRkRHRVRNRURJQVBSTSBGREdFVFBSTQotI2RlZmluZSBGRE1TR09OIF9JTygyLDB4NDUpCi0jZGVmaW5lIEZETVNHT0ZGIF9JTygyLDB4NDYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGRE1TR09OIF9JTygyLCAweDQ1KQorI2RlZmluZSBGRE1TR09GRiBfSU8oMiwgMHg0NikKICNkZWZpbmUgRkRfRklMTF9CWVRFIDB4RjYKIHN0cnVjdCBmb3JtYXRfZGVzY3IgewotIHVuc2lnbmVkIGludCBkZXZpY2UsaGVhZCx0cmFjazsKLX07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBGREZNVEJFRyBfSU8oMiwweDQ3KQotI2RlZmluZSBGREZNVFRSSyBfSU9XKDIsMHg0OCwgc3RydWN0IGZvcm1hdF9kZXNjcikKLSNkZWZpbmUgRkRGTVRFTkQgX0lPKDIsMHg0OSkKKyAgdW5zaWduZWQgaW50IGRldmljZSwgaGVhZCwgdHJhY2s7Cit9OworI2RlZmluZSBGREZNVEJFRyBfSU8oMiwgMHg0NykKKyNkZWZpbmUgRkRGTVRUUksgX0lPVygyLCAweDQ4LCBzdHJ1Y3QgZm9ybWF0X2Rlc2NyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRkRGTVRFTkQgX0lPKDIsIDB4NDkpCiBzdHJ1Y3QgZmxvcHB5X21heF9lcnJvcnMgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQKLSBhYm9ydCwKLSByZWFkX3RyYWNrLAotIHJlc2V0LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSByZWNhbCwKLSByZXBvcnRpbmc7CisgIHVuc2lnbmVkIGludCBhYm9ydCwgcmVhZF90cmFjaywgcmVzZXQsIHJlY2FsLCByZXBvcnRpbmc7CiB9OwotI2RlZmluZSBGRFNFVEVNU0dUUkVTSCBfSU8oMiwweDRhKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRkRGTFVTSCBfSU8oMiwweDRiKQorI2RlZmluZSBGRFNFVEVNU0dUUkVTSCBfSU8oMiwgMHg0YSkKKyNkZWZpbmUgRkRGTFVTSCBfSU8oMiwgMHg0YikKICNkZWZpbmUgRkRTRVRNQVhFUlJTIF9JT1coMiwgMHg0Yywgc3RydWN0IGZsb3BweV9tYXhfZXJyb3JzKQogI2RlZmluZSBGREdFVE1BWEVSUlMgX0lPUigyLCAweDBlLCBzdHJ1Y3QgZmxvcHB5X21heF9lcnJvcnMpCi10eXBlZGVmIGNoYXIgZmxvcHB5X2RyaXZlX25hbWVbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3R5cGVkZWYgY2hhciBmbG9wcHlfZHJpdmVfbmFtZVsxNl07CiAjZGVmaW5lIEZER0VURFJWVFlQIF9JT1IoMiwgMHgwZiwgZmxvcHB5X2RyaXZlX25hbWUpCiBzdHJ1Y3QgZmxvcHB5X2RyaXZlX3BhcmFtcyB7Ci0gc2lnbmVkIGNoYXIgY21vczsKLSB1bnNpZ25lZCBsb25nIG1heF9kdHI7CisgIHNpZ25lZCBjaGFyIGNtb3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgaGx0OwotIHVuc2lnbmVkIGxvbmcgaHV0OwotIHVuc2lnbmVkIGxvbmcgc3J0OwotIHVuc2lnbmVkIGxvbmcgc3BpbnVwOworICB1bnNpZ25lZCBsb25nIG1heF9kdHI7CisgIHVuc2lnbmVkIGxvbmcgaGx0OworICB1bnNpZ25lZCBsb25nIGh1dDsKKyAgdW5zaWduZWQgbG9uZyBzcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgc3BpbmRvd247Ci0gdW5zaWduZWQgY2hhciBzcGluZG93bl9vZmZzZXQ7Ci0gdW5zaWduZWQgY2hhciBzZWxlY3RfZGVsYXk7Ci0gdW5zaWduZWQgY2hhciBycHM7CisgIHVuc2lnbmVkIGxvbmcgc3BpbnVwOworICB1bnNpZ25lZCBsb25nIHNwaW5kb3duOworICB1bnNpZ25lZCBjaGFyIHNwaW5kb3duX29mZnNldDsKKyAgdW5zaWduZWQgY2hhciBzZWxlY3RfZGVsYXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgdHJhY2tzOwotIHVuc2lnbmVkIGxvbmcgdGltZW91dDsKLSB1bnNpZ25lZCBjaGFyIGludGVybGVhdmVfc2VjdDsKLSBzdHJ1Y3QgZmxvcHB5X21heF9lcnJvcnMgbWF4X2Vycm9yczsKKyAgdW5zaWduZWQgY2hhciBycHM7CisgIHVuc2lnbmVkIGNoYXIgdHJhY2tzOworICB1bnNpZ25lZCBsb25nIHRpbWVvdXQ7CisgIHVuc2lnbmVkIGNoYXIgaW50ZXJsZWF2ZV9zZWN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGZsYWdzOworICBzdHJ1Y3QgZmxvcHB5X21heF9lcnJvcnMgbWF4X2Vycm9yczsKKyAgY2hhciBmbGFnczsKICNkZWZpbmUgRlREX01TRyAweDEwCiAjZGVmaW5lIEZEX0JST0tFTl9EQ0wgMHgyMAotI2RlZmluZSBGRF9ERUJVRyAweDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGRF9ERUJVRyAweDAyCiAjZGVmaW5lIEZEX1NJTEVOVF9EQ0xfQ0xFQVIgMHg0CiAjZGVmaW5lIEZEX0lOVkVSVEVEX0RDTCAweDgwCi0gY2hhciByZWFkX3RyYWNrOwotIHNob3J0IGF1dG9kZXRlY3RbOF07CisgIGNoYXIgcmVhZF90cmFjazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNoZWNrZnJlcTsKLSBpbnQgbmF0aXZlX2Zvcm1hdDsKKyAgc2hvcnQgYXV0b2RldGVjdFs4XTsKKyAgaW50IGNoZWNrZnJlcTsKKyAgaW50IG5hdGl2ZV9mb3JtYXQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0geworICBGRF9ORUVEX1RXQURETEVfQklULAorICBGRF9WRVJJRllfQklULAorICBGRF9ESVNLX05FV0NIQU5HRV9CSVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZEX05FRURfVFdBRERMRV9CSVQsCi0gRkRfVkVSSUZZX0JJVCwKLSBGRF9ESVNLX05FV0NIQU5HRV9CSVQsCi0gRkRfVU5VU0VEX0JJVCwKKyAgRkRfVU5VU0VEX0JJVCwKKyAgRkRfRElTS19DSEFOR0VEX0JJVCwKKyAgRkRfRElTS19XUklUQUJMRV9CSVQsCisgIEZEX09QRU5fU0hPVUxEX0ZBSUxfQklUCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZEX0RJU0tfQ0hBTkdFRF9CSVQsCi0gRkRfRElTS19XUklUQUJMRV9CSVQsCi0gRkRfT1BFTl9TSE9VTERfRkFJTF9CSVQKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRFNFVERSVlBSTSBfSU9XKDIsIDB4OTAsIHN0cnVjdCBmbG9wcHlfZHJpdmVfcGFyYW1zKQogI2RlZmluZSBGREdFVERSVlBSTSBfSU9SKDIsIDB4MTEsIHN0cnVjdCBmbG9wcHlfZHJpdmVfcGFyYW1zKQogc3RydWN0IGZsb3BweV9kcml2ZV9zdHJ1Y3QgewotIHVuc2lnbmVkIGxvbmcgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBsb25nIGZsYWdzOwogI2RlZmluZSBGRF9ORUVEX1RXQURETEUgKDEgPDwgRkRfTkVFRF9UV0FERExFX0JJVCkKICNkZWZpbmUgRkRfVkVSSUZZICgxIDw8IEZEX1ZFUklGWV9CSVQpCiAjZGVmaW5lIEZEX0RJU0tfTkVXQ0hBTkdFICgxIDw8IEZEX0RJU0tfTkVXQ0hBTkdFX0JJVCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZEX0RJU0tfQ0hBTkdFRCAoMSA8PCBGRF9ESVNLX0NIQU5HRURfQklUKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkRfRElTS19XUklUQUJMRSAoMSA8PCBGRF9ESVNLX1dSSVRBQkxFX0JJVCkKLSB1bnNpZ25lZCBsb25nIHNwaW51cF9kYXRlOwotIHVuc2lnbmVkIGxvbmcgc2VsZWN0X2RhdGU7Ci0gdW5zaWduZWQgbG9uZyBmaXJzdF9yZWFkX2RhdGU7CisgIHVuc2lnbmVkIGxvbmcgc3BpbnVwX2RhdGU7CisgIHVuc2lnbmVkIGxvbmcgc2VsZWN0X2RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IHByb2JlZF9mb3JtYXQ7Ci0gc2hvcnQgdHJhY2s7Ci0gc2hvcnQgbWF4YmxvY2s7Ci0gc2hvcnQgbWF4dHJhY2s7CisgIHVuc2lnbmVkIGxvbmcgZmlyc3RfcmVhZF9kYXRlOworICBzaG9ydCBwcm9iZWRfZm9ybWF0OworICBzaG9ydCB0cmFjazsKKyAgc2hvcnQgbWF4YmxvY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBnZW5lcmF0aW9uOwotIGludCBrZWVwX2RhdGE7Ci0gaW50IGZkX3JlZjsKLSBpbnQgZmRfZGV2aWNlOworICBzaG9ydCBtYXh0cmFjazsKKyAgaW50IGdlbmVyYXRpb247CisgIGludCBrZWVwX2RhdGE7CisgIGludCBmZF9yZWY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgbGFzdF9jaGVja2VkOwotIGNoYXIgKmRtYWJ1ZjsKLSBpbnQgYnVmYmxvY2tzOworICBpbnQgZmRfZGV2aWNlOworICB1bnNpZ25lZCBsb25nIGxhc3RfY2hlY2tlZDsKKyAgY2hhciAqIGRtYWJ1ZjsKKyAgaW50IGJ1ZmJsb2NrczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkRHRVREUlZTVEFUIF9JT1IoMiwgMHgxMiwgc3RydWN0IGZsb3BweV9kcml2ZV9zdHJ1Y3QpCiAjZGVmaW5lIEZEUE9MTERSVlNUQVQgX0lPUigyLCAweDEzLCBzdHJ1Y3QgZmxvcHB5X2RyaXZlX3N0cnVjdCkKIGVudW0gcmVzZXRfbW9kZSB7Ci0gRkRfUkVTRVRfSUZfTkVFREVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGRF9SRVNFVF9JRl9SQVdDTUQsCi0gRkRfUkVTRVRfQUxXQVlTCisgIEZEX1JFU0VUX0lGX05FRURFRCwKKyAgRkRfUkVTRVRfSUZfUkFXQ01ELAorICBGRF9SRVNFVF9BTFdBWVMKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRFJFU0VUIF9JTygyLCAweDU0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmbG9wcHlfZmRjX3N0YXRlIHsKLSBpbnQgc3BlYzE7Ci0gaW50IHNwZWMyOwotIGludCBkdHI7CisgIGludCBzcGVjMTsKKyAgaW50IHNwZWMyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHZlcnNpb247Ci0gdW5zaWduZWQgY2hhciBkb3I7Ci0gdW5zaWduZWQgbG9uZyBhZGRyZXNzOwotIHVuc2lnbmVkIGludCByYXdjbWQ6MjsKKyAgaW50IGR0cjsKKyAgdW5zaWduZWQgY2hhciB2ZXJzaW9uOworICB1bnNpZ25lZCBjaGFyIGRvcjsKKyAgdW5zaWduZWQgbG9uZyBhZGRyZXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmVzZXQ6MTsKLSB1bnNpZ25lZCBpbnQgbmVlZF9jb25maWd1cmU6MTsKLSB1bnNpZ25lZCBpbnQgcGVycF9tb2RlOjI7Ci0gdW5zaWduZWQgaW50IGhhc19maWZvOjE7CisgIHVuc2lnbmVkIGludCByYXdjbWQgOiAyOworICB1bnNpZ25lZCBpbnQgcmVzZXQgOiAxOworICB1bnNpZ25lZCBpbnQgbmVlZF9jb25maWd1cmUgOiAxOworICB1bnNpZ25lZCBpbnQgcGVycF9tb2RlIDogMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGRyaXZlcl92ZXJzaW9uOworICB1bnNpZ25lZCBpbnQgaGFzX2ZpZm8gOiAxOworICB1bnNpZ25lZCBpbnQgZHJpdmVyX3ZlcnNpb247CiAjZGVmaW5lIEZEX0RSSVZFUl9WRVJTSU9OIDB4MTAwCi0gdW5zaWduZWQgY2hhciB0cmFja1s0XTsKLX07CisgIHVuc2lnbmVkIGNoYXIgdHJhY2tbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKICNkZWZpbmUgRkRHRVRGRENTVEFUIF9JT1IoMiwgMHgxNSwgc3RydWN0IGZsb3BweV9mZGNfc3RhdGUpCiBzdHJ1Y3QgZmxvcHB5X3dyaXRlX2Vycm9ycyB7Ci0gdW5zaWduZWQgaW50IHdyaXRlX2Vycm9yczsKLSB1bnNpZ25lZCBsb25nIGZpcnN0X2Vycm9yX3NlY3RvcjsKKyAgdW5zaWduZWQgaW50IHdyaXRlX2Vycm9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGZpcnN0X2Vycm9yX2dlbmVyYXRpb247Ci0gdW5zaWduZWQgbG9uZyBsYXN0X2Vycm9yX3NlY3RvcjsKLSBpbnQgbGFzdF9lcnJvcl9nZW5lcmF0aW9uOwotIHVuc2lnbmVkIGludCBiYWRuZXNzOworICB1bnNpZ25lZCBsb25nIGZpcnN0X2Vycm9yX3NlY3RvcjsKKyAgaW50IGZpcnN0X2Vycm9yX2dlbmVyYXRpb247CisgIHVuc2lnbmVkIGxvbmcgbGFzdF9lcnJvcl9zZWN0b3I7CisgIGludCBsYXN0X2Vycm9yX2dlbmVyYXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBpbnQgYmFkbmVzczsKIH07CiAjZGVmaW5lIEZEV0VSUk9SQ0xSIF9JTygyLCAweDU2KQogI2RlZmluZSBGRFdFUlJPUkdFVCBfSU9SKDIsIDB4MTcsIHN0cnVjdCBmbG9wcHlfd3JpdGVfZXJyb3JzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkRIQVZFQkFUQ0hFRFJBV0NNRAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmbG9wcHlfcmF3X2NtZCB7Ci0gdW5zaWduZWQgaW50IGZsYWdzOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CiAjZGVmaW5lIEZEX1JBV19SRUFEIDEKLSNkZWZpbmUgRkRfUkFXX1dSSVRFIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZEX1JBV19XUklURSAyCiAjZGVmaW5lIEZEX1JBV19OT19NT1RPUiA0CiAjZGVmaW5lIEZEX1JBV19ESVNLX0NIQU5HRSA0CiAjZGVmaW5lIEZEX1JBV19JTlRSIDgKLSNkZWZpbmUgRkRfUkFXX1NQSU4gMHgxMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRkRfUkFXX1NQSU4gMHgxMAogI2RlZmluZSBGRF9SQVdfTk9fTU9UT1JfQUZURVIgMHgyMAogI2RlZmluZSBGRF9SQVdfTkVFRF9ESVNLIDB4NDAKICNkZWZpbmUgRkRfUkFXX05FRURfU0VFSyAweDgwCi0jZGVmaW5lIEZEX1JBV19NT1JFIDB4MTAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGRF9SQVdfTU9SRSAweDEwMAogI2RlZmluZSBGRF9SQVdfU1RPUF9JRl9GQUlMVVJFIDB4MjAwCiAjZGVmaW5lIEZEX1JBV19TVE9QX0lGX1NVQ0NFU1MgMHg0MDAKICNkZWZpbmUgRkRfUkFXX1NPRlRGQUlMVVJFIDB4ODAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRF9SQVdfRkFJTFVSRSAweDEwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRF9SQVdfSEFSREZBSUxVUkUgMHgyMDAwMAotIHZvaWQgX191c2VyICpkYXRhOwotIGNoYXIgKmtlcm5lbF9kYXRhOwotIHN0cnVjdCBmbG9wcHlfcmF3X2NtZCAqbmV4dDsKKyAgdm9pZCBfX3VzZXIgKiBkYXRhOworICBjaGFyICoga2VybmVsX2RhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgbGVuZ3RoOwotIGxvbmcgcGh5c19sZW5ndGg7Ci0gaW50IGJ1ZmZlcl9sZW5ndGg7Ci0gdW5zaWduZWQgY2hhciByYXRlOworICBzdHJ1Y3QgZmxvcHB5X3Jhd19jbWQgKiBuZXh0OworICBsb25nIGxlbmd0aDsKKyAgbG9uZyBwaHlzX2xlbmd0aDsKKyAgaW50IGJ1ZmZlcl9sZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgY21kX2NvdW50OwotIHVuc2lnbmVkIGNoYXIgY21kWzE2XTsKLSB1bnNpZ25lZCBjaGFyIHJlcGx5X2NvdW50OwotIHVuc2lnbmVkIGNoYXIgcmVwbHlbMTZdOworICB1bnNpZ25lZCBjaGFyIHJhdGU7CisgIHVuc2lnbmVkIGNoYXIgY21kX2NvdW50OworICB1bnNpZ25lZCBjaGFyIGNtZFsxNl07CisgIHVuc2lnbmVkIGNoYXIgcmVwbHlfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0cmFjazsKLSBpbnQgcmVzdWx0Y29kZTsKLSBpbnQgcmVzZXJ2ZWQxOwotIGludCByZXNlcnZlZDI7CisgIHVuc2lnbmVkIGNoYXIgcmVwbHlbMTZdOworICBpbnQgdHJhY2s7CisgIGludCByZXN1bHRjb2RlOworICBpbnQgcmVzZXJ2ZWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IHJlc2VydmVkMjsKIH07CiAjZGVmaW5lIEZEUkFXQ01EIF9JTygyLCAweDU4KQogI2RlZmluZSBGRFRXQURETEUgX0lPKDIsIDB4NTkpCi0jZGVmaW5lIEZERUpFQ1QgX0lPKDIsIDB4NWEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGREVKRUNUIF9JTygyLCAweDVhKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZkcmVnLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZkcmVnLmgKaW5kZXggZDQ0YmQ1NC4uYzRmM2Y1YyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mZHJlZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmRyZWcuaApAQCAtMjQsMTIgKzI0LDEyIEBACiAjZWxzZQogI2RlZmluZSBGRF9JT1BPUlQgMHgzZjAKICNlbmRpZgotI2RlZmluZSBGRF9TVEFUVVMgKDQgKyBGRF9JT1BPUlQgKQorI2RlZmluZSBGRF9TVEFUVVMgKDQgKyBGRF9JT1BPUlQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBGRF9EQVRBICg1ICsgRkRfSU9QT1JUICkKLSNkZWZpbmUgRkRfRE9SICgyICsgRkRfSU9QT1JUICkKLSNkZWZpbmUgRkRfRElSICg3ICsgRkRfSU9QT1JUICkKLSNkZWZpbmUgRkRfRENSICg3ICsgRkRfSU9QT1JUICkKKyNkZWZpbmUgRkRfREFUQSAoNSArIEZEX0lPUE9SVCkKKyNkZWZpbmUgRkRfRE9SICgyICsgRkRfSU9QT1JUKQorI2RlZmluZSBGRF9ESVIgKDcgKyBGRF9JT1BPUlQpCisjZGVmaW5lIEZEX0RDUiAoNyArIEZEX0lPUE9SVCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNUQVRVU19CVVNZTUFTSyAweDBGCiAjZGVmaW5lIFNUQVRVU19CVVNZIDB4MTAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmliX3J1bGVzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZpYl9ydWxlcy5oCmluZGV4IGFmZTZiYzAuLjQ5OTUzZWYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmliX3J1bGVzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9maWJfcnVsZXMuaApAQCAtMzEsNjAgKzMxLDYwIEBACiAjZGVmaW5lIEZJQl9SVUxFX0ZJTkRfU0FERFIgMHgwMDAxMDAwMAogc3RydWN0IGZpYl9ydWxlX2hkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmFtaWx5OwotIF9fdTggZHN0X2xlbjsKLSBfX3U4IHNyY19sZW47Ci0gX191OCB0b3M7CisgIF9fdTggZmFtaWx5OworICBfX3U4IGRzdF9sZW47CisgIF9fdTggc3JjX2xlbjsKKyAgX191OCB0b3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdGFibGU7Ci0gX191OCByZXMxOwotIF9fdTggcmVzMjsKLSBfX3U4IGFjdGlvbjsKKyAgX191OCB0YWJsZTsKKyAgX191OCByZXMxOworICBfX3U4IHJlczI7CisgIF9fdTggYWN0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmbGFnczsKKyAgX191MzIgZmxhZ3M7CiB9OwogZW51bSB7Ci0gRlJBX1VOU1BFQywKKyAgRlJBX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlJBX0RTVCwKLSBGUkFfU1JDLAotIEZSQV9JSUZOQU1FLAorICBGUkFfRFNULAorICBGUkFfU1JDLAorICBGUkFfSUlGTkFNRSwKICNkZWZpbmUgRlJBX0lGTkFNRSBGUkFfSUlGTkFNRQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGUkFfR09UTywKLSBGUkFfVU5VU0VEMiwKLSBGUkFfUFJJT1JJVFksCi0gRlJBX1VOVVNFRDMsCisgIEZSQV9HT1RPLAorICBGUkFfVU5VU0VEMiwKKyAgRlJBX1BSSU9SSVRZLAorICBGUkFfVU5VU0VEMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlJBX1VOVVNFRDQsCi0gRlJBX1VOVVNFRDUsCi0gRlJBX0ZXTUFSSywKLSBGUkFfRkxPVywKKyAgRlJBX1VOVVNFRDQsCisgIEZSQV9VTlVTRUQ1LAorICBGUkFfRldNQVJLLAorICBGUkFfRkxPVywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlJBX1VOVVNFRDYsCi0gRlJBX1NVUFBSRVNTX0lGR1JPVVAsCi0gRlJBX1NVUFBSRVNTX1BSRUZJWExFTiwKLSBGUkFfVEFCTEUsCisgIEZSQV9VTlVTRUQ2LAorICBGUkFfU1VQUFJFU1NfSUZHUk9VUCwKKyAgRlJBX1NVUFBSRVNTX1BSRUZJWExFTiwKKyAgRlJBX1RBQkxFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGUkFfRldNQVNLLAotIEZSQV9PSUZOQU1FLAotIF9fRlJBX01BWAorICBGUkFfRldNQVNLLAorICBGUkFfT0lGTkFNRSwKKyAgX19GUkFfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlJBX01BWCAoX19GUkFfTUFYIC0gMSkKIGVudW0gewotIEZSX0FDVF9VTlNQRUMsCi0gRlJfQUNUX1RPX1RCTCwKKyAgRlJfQUNUX1VOU1BFQywKKyAgRlJfQUNUX1RPX1RCTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlJfQUNUX0dPVE8sCi0gRlJfQUNUX05PUCwKLSBGUl9BQ1RfUkVTMywKLSBGUl9BQ1RfUkVTNCwKKyAgRlJfQUNUX0dPVE8sCisgIEZSX0FDVF9OT1AsCisgIEZSX0FDVF9SRVMzLAorICBGUl9BQ1RfUkVTNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlJfQUNUX0JMQUNLSE9MRSwKLSBGUl9BQ1RfVU5SRUFDSEFCTEUsCi0gRlJfQUNUX1BST0hJQklULAotIF9fRlJfQUNUX01BWCwKKyAgRlJfQUNUX0JMQUNLSE9MRSwKKyAgRlJfQUNUX1VOUkVBQ0hBQkxFLAorICBGUl9BQ1RfUFJPSElCSVQsCisgIF9fRlJfQUNUX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBGUl9BQ1RfTUFYIChfX0ZSX0FDVF9NQVggLSAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9maWVtYXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmllbWFwLmgKaW5kZXggZTRiNDZjMi4uZDQxYTg3ZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9maWVtYXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZpZW1hcC5oCkBAIC0yMSwyNCArMjEsMjQgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGZpZW1hcF9leHRlbnQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBmZV9sb2dpY2FsOwotIF9fdTY0IGZlX3BoeXNpY2FsOwotIF9fdTY0IGZlX2xlbmd0aDsKLSBfX3U2NCBmZV9yZXNlcnZlZDY0WzJdOworICBfX3U2NCBmZV9sb2dpY2FsOworICBfX3U2NCBmZV9waHlzaWNhbDsKKyAgX191NjQgZmVfbGVuZ3RoOworICBfX3U2NCBmZV9yZXNlcnZlZDY0WzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmZV9mbGFnczsKLSBfX3UzMiBmZV9yZXNlcnZlZFszXTsKKyAgX191MzIgZmVfZmxhZ3M7CisgIF9fdTMyIGZlX3Jlc2VydmVkWzNdOwogfTsKIHN0cnVjdCBmaWVtYXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBmbV9zdGFydDsKLSBfX3U2NCBmbV9sZW5ndGg7Ci0gX191MzIgZm1fZmxhZ3M7Ci0gX191MzIgZm1fbWFwcGVkX2V4dGVudHM7CisgIF9fdTY0IGZtX3N0YXJ0OworICBfX3U2NCBmbV9sZW5ndGg7CisgIF9fdTMyIGZtX2ZsYWdzOworICBfX3UzMiBmbV9tYXBwZWRfZXh0ZW50czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZm1fZXh0ZW50X2NvdW50OwotIF9fdTMyIGZtX3Jlc2VydmVkOwotIHN0cnVjdCBmaWVtYXBfZXh0ZW50IGZtX2V4dGVudHNbMF07CisgIF9fdTMyIGZtX2V4dGVudF9jb3VudDsKKyAgX191MzIgZm1fcmVzZXJ2ZWQ7CisgIHN0cnVjdCBmaWVtYXBfZXh0ZW50IGZtX2V4dGVudHNbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRklFTUFQX01BWF9PRkZTRVQgKH4wVUxMKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9maWx0ZXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmlsdGVyLmgKaW5kZXggOGI3NTI3MC4uNDc2MWY5ZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9maWx0ZXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZpbHRlci5oCkBAIC0yMSwxMTAgKzIxLDU5IEBACiAjaW5jbHVkZSA8bGludXgvY29tcGlsZXIuaD4KICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNpbmNsdWRlIDxsaW51eC9icGZfY29tbW9uLmg+CiAjZGVmaW5lIEJQRl9NQUpPUl9WRVJTSU9OIDEKICNkZWZpbmUgQlBGX01JTk9SX1ZFUlNJT04gMQogc3RydWN0IHNvY2tfZmlsdGVyIHsKLSBfX3UxNiBjb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGp0OwotIF9fdTggamY7Ci0gX191MzIgazsKKyAgX191MTYgY29kZTsKKyAgX191OCBqdDsKKyAgX191OCBqZjsKKyAgX191MzIgazsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzb2NrX2Zwcm9nIHsKLSB1bnNpZ25lZCBzaG9ydCBsZW47Ci0gc3RydWN0IHNvY2tfZmlsdGVyIF9fdXNlciAqZmlsdGVyOworICB1bnNpZ25lZCBzaG9ydCBsZW47CisgIHN0cnVjdCBzb2NrX2ZpbHRlciBfX3VzZXIgKiBmaWx0ZXI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJQRl9DTEFTUyhjb2RlKSAoKGNvZGUpICYgMHgwNykKLSNkZWZpbmUgQlBGX0xEIDB4MDAKLSNkZWZpbmUgQlBGX0xEWCAweDAxCi0jZGVmaW5lIEJQRl9TVCAweDAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCUEZfU1RYIDB4MDMKLSNkZWZpbmUgQlBGX0FMVSAweDA0Ci0jZGVmaW5lIEJQRl9KTVAgMHgwNQotI2RlZmluZSBCUEZfUkVUIDB4MDYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJQRl9NSVNDIDB4MDcKLSNkZWZpbmUgQlBGX1NJWkUoY29kZSkgKChjb2RlKSAmIDB4MTgpCi0jZGVmaW5lIEJQRl9XIDB4MDAKLSNkZWZpbmUgQlBGX0ggMHgwOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlBGX0IgMHgxMAotI2RlZmluZSBCUEZfTU9ERShjb2RlKSAoKGNvZGUpICYgMHhlMCkKLSNkZWZpbmUgQlBGX0lNTSAweDAwCi0jZGVmaW5lIEJQRl9BQlMgMHgyMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlBGX0lORCAweDQwCi0jZGVmaW5lIEJQRl9NRU0gMHg2MAotI2RlZmluZSBCUEZfTEVOIDB4ODAKLSNkZWZpbmUgQlBGX01TSCAweGEwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCUEZfT1AoY29kZSkgKChjb2RlKSAmIDB4ZjApCi0jZGVmaW5lIEJQRl9BREQgMHgwMAotI2RlZmluZSBCUEZfU1VCIDB4MTAKLSNkZWZpbmUgQlBGX01VTCAweDIwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCUEZfRElWIDB4MzAKLSNkZWZpbmUgQlBGX09SIDB4NDAKLSNkZWZpbmUgQlBGX0FORCAweDUwCi0jZGVmaW5lIEJQRl9MU0ggMHg2MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlBGX1JTSCAweDcwCi0jZGVmaW5lIEJQRl9ORUcgMHg4MAotI2RlZmluZSBCUEZfTU9EIDB4OTAKLSNkZWZpbmUgQlBGX1hPUiAweGEwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCUEZfSkEgMHgwMAotI2RlZmluZSBCUEZfSkVRIDB4MTAKLSNkZWZpbmUgQlBGX0pHVCAweDIwCi0jZGVmaW5lIEJQRl9KR0UgMHgzMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQlBGX0pTRVQgMHg0MAotI2RlZmluZSBCUEZfU1JDKGNvZGUpICgoY29kZSkgJiAweDA4KQotI2RlZmluZSBCUEZfSyAweDAwCi0jZGVmaW5lIEJQRl9YIDB4MDgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJQRl9SVkFMKGNvZGUpICgoY29kZSkgJiAweDE4KQogI2RlZmluZSBCUEZfQSAweDEwCiAjZGVmaW5lIEJQRl9NSVNDT1AoY29kZSkgKChjb2RlKSAmIDB4ZjgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCUEZfVEFYIDB4MDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJQRl9UWEEgMHg4MAotI2lmbmRlZiBCUEZfTUFYSU5TTlMKLSNkZWZpbmUgQlBGX01BWElOU05TIDQwOTYKLSNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZm5kZWYgQlBGX1NUTVQKLSNkZWZpbmUgQlBGX1NUTVQoY29kZSwgaykgeyAodW5zaWduZWQgc2hvcnQpKGNvZGUpLCAwLCAwLCBrIH0KKyNkZWZpbmUgQlBGX1NUTVQoY29kZSxrKSB7ICh1bnNpZ25lZCBzaG9ydCkgKGNvZGUpLCAwLCAwLCBrIH0KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKICNpZm5kZWYgQlBGX0pVTVAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJQRl9KVU1QKGNvZGUsIGssIGp0LCBqZikgeyAodW5zaWduZWQgc2hvcnQpKGNvZGUpLCBqdCwgamYsIGsgfQorI2RlZmluZSBCUEZfSlVNUChjb2RlLGssanQsamYpIHsgKHVuc2lnbmVkIHNob3J0KSAoY29kZSksIGp0LCBqZiwgayB9CiAjZW5kaWYKLSNkZWZpbmUgQlBGX01FTVdPUkRTIDE2Ci0jZGVmaW5lIFNLRl9BRF9PRkYgKC0weDEwMDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCUEZfTUVNV09SRFMgMTYKKyNkZWZpbmUgU0tGX0FEX09GRiAoLSAweDEwMDApCiAjZGVmaW5lIFNLRl9BRF9QUk9UT0NPTCAwCiAjZGVmaW5lIFNLRl9BRF9QS1RUWVBFIDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNLRl9BRF9JRklOREVYIDgKICNkZWZpbmUgU0tGX0FEX05MQVRUUiAxMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0tGX0FEX05MQVRUUl9ORVNUIDE2CiAjZGVmaW5lIFNLRl9BRF9NQVJLIDIwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTS0ZfQURfUVVFVUUgMjQKICNkZWZpbmUgU0tGX0FEX0hBVFlQRSAyOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0tGX0FEX1JYSEFTSCAzMgogI2RlZmluZSBTS0ZfQURfQ1BVIDM2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTS0ZfQURfQUxVX1hPUl9YIDQwCiAjZGVmaW5lIFNLRl9BRF9WTEFOX1RBRyA0NAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0tGX0FEX1ZMQU5fVEFHX1BSRVNFTlQgNDgKICNkZWZpbmUgU0tGX0FEX1BBWV9PRkZTRVQgNTIKLSNkZWZpbmUgU0tGX0FEX01BWCA1NgotI2RlZmluZSBTS0ZfTkVUX09GRiAoLTB4MTAwMDAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0tGX0xMX09GRiAoLTB4MjAwMDAwKQorI2RlZmluZSBTS0ZfQURfUkFORE9NIDU2CisjZGVmaW5lIFNLRl9BRF9NQVggNjAKKyNkZWZpbmUgU0tGX05FVF9PRkYgKC0gMHgxMDAwMDApCisjZGVmaW5lIFNLRl9MTF9PRkYgKC0gMHgyMDAwMDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZpcmV3aXJlLWNkZXYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmlyZXdpcmUtY2Rldi5oCmluZGV4IDEzNDJiMDYuLjdjZjkwNTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmlyZXdpcmUtY2Rldi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmlyZXdpcmUtY2Rldi5oCkBAIC0zNiwxMDMgKzM2LDEwMyBAQAogI2RlZmluZSBGV19DREVWX0VWRU5UX0lTT19JTlRFUlJVUFRfTVVMVElDSEFOTkVMIDB4MDkKIHN0cnVjdCBmd19jZGV2X2V2ZW50X2NvbW1vbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGNsb3N1cmU7Ci0gX191MzIgdHlwZTsKKyAgX191NjQgY2xvc3VyZTsKKyAgX191MzIgdHlwZTsKIH07CiBzdHJ1Y3QgZndfY2Rldl9ldmVudF9idXNfcmVzZXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjbG9zdXJlOwotIF9fdTMyIHR5cGU7Ci0gX191MzIgbm9kZV9pZDsKLSBfX3UzMiBsb2NhbF9ub2RlX2lkOworICBfX3U2NCBjbG9zdXJlOworICBfX3UzMiB0eXBlOworICBfX3UzMiBub2RlX2lkOworICBfX3UzMiBsb2NhbF9ub2RlX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBibV9ub2RlX2lkOwotIF9fdTMyIGlybV9ub2RlX2lkOwotIF9fdTMyIHJvb3Rfbm9kZV9pZDsKLSBfX3UzMiBnZW5lcmF0aW9uOworICBfX3UzMiBibV9ub2RlX2lkOworICBfX3UzMiBpcm1fbm9kZV9pZDsKKyAgX191MzIgcm9vdF9ub2RlX2lkOworICBfX3UzMiBnZW5lcmF0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZndfY2Rldl9ldmVudF9yZXNwb25zZSB7Ci0gX191NjQgY2xvc3VyZTsKLSBfX3UzMiB0eXBlOworICBfX3U2NCBjbG9zdXJlOworICBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByY29kZTsKLSBfX3UzMiBsZW5ndGg7Ci0gX191MzIgZGF0YVswXTsKKyAgX191MzIgcmNvZGU7CisgIF9fdTMyIGxlbmd0aDsKKyAgX191MzIgZGF0YVswXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ3X2NkZXZfZXZlbnRfcmVxdWVzdCB7Ci0gX191NjQgY2xvc3VyZTsKLSBfX3UzMiB0eXBlOwotIF9fdTMyIHRjb2RlOworICBfX3U2NCBjbG9zdXJlOworICBfX3UzMiB0eXBlOworICBfX3UzMiB0Y29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgb2Zmc2V0OwotIF9fdTMyIGhhbmRsZTsKLSBfX3UzMiBsZW5ndGg7Ci0gX191MzIgZGF0YVswXTsKKyAgX191NjQgb2Zmc2V0OworICBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIGxlbmd0aDsKKyAgX191MzIgZGF0YVswXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZ3X2NkZXZfZXZlbnRfcmVxdWVzdDIgewotIF9fdTY0IGNsb3N1cmU7Ci0gX191MzIgdHlwZTsKKyAgX191NjQgY2xvc3VyZTsKKyAgX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGNvZGU7Ci0gX191NjQgb2Zmc2V0OwotIF9fdTMyIHNvdXJjZV9ub2RlX2lkOwotIF9fdTMyIGRlc3RpbmF0aW9uX25vZGVfaWQ7CisgIF9fdTMyIHRjb2RlOworICBfX3U2NCBvZmZzZXQ7CisgIF9fdTMyIHNvdXJjZV9ub2RlX2lkOworICBfX3UzMiBkZXN0aW5hdGlvbl9ub2RlX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjYXJkOwotIF9fdTMyIGdlbmVyYXRpb247Ci0gX191MzIgaGFuZGxlOwotIF9fdTMyIGxlbmd0aDsKKyAgX191MzIgY2FyZDsKKyAgX191MzIgZ2VuZXJhdGlvbjsKKyAgX191MzIgaGFuZGxlOworICBfX3UzMiBsZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRhdGFbMF07CisgIF9fdTMyIGRhdGFbMF07CiB9Owogc3RydWN0IGZ3X2NkZXZfZXZlbnRfaXNvX2ludGVycnVwdCB7Ci0gX191NjQgY2xvc3VyZTsKKyAgX191NjQgY2xvc3VyZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UzMiBjeWNsZTsKLSBfX3UzMiBoZWFkZXJfbGVuZ3RoOwotIF9fdTMyIGhlYWRlclswXTsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgY3ljbGU7CisgIF9fdTMyIGhlYWRlcl9sZW5ndGg7CisgIF9fdTMyIGhlYWRlclswXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZ3X2NkZXZfZXZlbnRfaXNvX2ludGVycnVwdF9tYyB7Ci0gX191NjQgY2xvc3VyZTsKLSBfX3UzMiB0eXBlOworICBfX3U2NCBjbG9zdXJlOworICBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb21wbGV0ZWQ7CisgIF9fdTMyIGNvbXBsZXRlZDsKIH07CiBzdHJ1Y3QgZndfY2Rldl9ldmVudF9pc29fcmVzb3VyY2UgewotIF9fdTY0IGNsb3N1cmU7CisgIF9fdTY0IGNsb3N1cmU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR5cGU7Ci0gX191MzIgaGFuZGxlOwotIF9fczMyIGNoYW5uZWw7Ci0gX19zMzIgYmFuZHdpZHRoOworICBfX3UzMiB0eXBlOworICBfX3UzMiBoYW5kbGU7CisgIF9fczMyIGNoYW5uZWw7CisgIF9fczMyIGJhbmR3aWR0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZ3X2NkZXZfZXZlbnRfcGh5X3BhY2tldCB7Ci0gX191NjQgY2xvc3VyZTsKLSBfX3UzMiB0eXBlOworICBfX3U2NCBjbG9zdXJlOworICBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByY29kZTsKLSBfX3UzMiBsZW5ndGg7Ci0gX191MzIgZGF0YVswXTsKKyAgX191MzIgcmNvZGU7CisgIF9fdTMyIGxlbmd0aDsKKyAgX191MzIgZGF0YVswXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdW5pb24gZndfY2Rldl9ldmVudCB7Ci0gc3RydWN0IGZ3X2NkZXZfZXZlbnRfY29tbW9uIGNvbW1vbjsKLSBzdHJ1Y3QgZndfY2Rldl9ldmVudF9idXNfcmVzZXQgYnVzX3Jlc2V0OwotIHN0cnVjdCBmd19jZGV2X2V2ZW50X3Jlc3BvbnNlIHJlc3BvbnNlOworICBzdHJ1Y3QgZndfY2Rldl9ldmVudF9jb21tb24gY29tbW9uOworICBzdHJ1Y3QgZndfY2Rldl9ldmVudF9idXNfcmVzZXQgYnVzX3Jlc2V0OworICBzdHJ1Y3QgZndfY2Rldl9ldmVudF9yZXNwb25zZSByZXNwb25zZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGZ3X2NkZXZfZXZlbnRfcmVxdWVzdCByZXF1ZXN0OwotIHN0cnVjdCBmd19jZGV2X2V2ZW50X3JlcXVlc3QyIHJlcXVlc3QyOwotIHN0cnVjdCBmd19jZGV2X2V2ZW50X2lzb19pbnRlcnJ1cHQgaXNvX2ludGVycnVwdDsKLSBzdHJ1Y3QgZndfY2Rldl9ldmVudF9pc29faW50ZXJydXB0X21jIGlzb19pbnRlcnJ1cHRfbWM7CisgIHN0cnVjdCBmd19jZGV2X2V2ZW50X3JlcXVlc3QgcmVxdWVzdDsKKyAgc3RydWN0IGZ3X2NkZXZfZXZlbnRfcmVxdWVzdDIgcmVxdWVzdDI7CisgIHN0cnVjdCBmd19jZGV2X2V2ZW50X2lzb19pbnRlcnJ1cHQgaXNvX2ludGVycnVwdDsKKyAgc3RydWN0IGZ3X2NkZXZfZXZlbnRfaXNvX2ludGVycnVwdF9tYyBpc29faW50ZXJydXB0X21jOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZndfY2Rldl9ldmVudF9pc29fcmVzb3VyY2UgaXNvX3Jlc291cmNlOwotIHN0cnVjdCBmd19jZGV2X2V2ZW50X3BoeV9wYWNrZXQgcGh5X3BhY2tldDsKKyAgc3RydWN0IGZ3X2NkZXZfZXZlbnRfaXNvX3Jlc291cmNlIGlzb19yZXNvdXJjZTsKKyAgc3RydWN0IGZ3X2NkZXZfZXZlbnRfcGh5X3BhY2tldCBwaHlfcGFja2V0OwogfTsKICNkZWZpbmUgRldfQ0RFVl9JT0NfR0VUX0lORk8gX0lPV1IoJyMnLCAweDAwLCBzdHJ1Y3QgZndfY2Rldl9nZXRfaW5mbykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xNjcsODEgKzE2Nyw4MSBAQAogI2RlZmluZSBGV19DREVWX0lPQ19GTFVTSF9JU08gX0lPVygnIycsIDB4MTgsIHN0cnVjdCBmd19jZGV2X2ZsdXNoX2lzbykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZndfY2Rldl9nZXRfaW5mbyB7Ci0gX191MzIgdmVyc2lvbjsKLSBfX3UzMiByb21fbGVuZ3RoOwotIF9fdTY0IHJvbTsKKyAgX191MzIgdmVyc2lvbjsKKyAgX191MzIgcm9tX2xlbmd0aDsKKyAgX191NjQgcm9tOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBidXNfcmVzZXQ7Ci0gX191NjQgYnVzX3Jlc2V0X2Nsb3N1cmU7Ci0gX191MzIgY2FyZDsKKyAgX191NjQgYnVzX3Jlc2V0OworICBfX3U2NCBidXNfcmVzZXRfY2xvc3VyZTsKKyAgX191MzIgY2FyZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ3X2NkZXZfc2VuZF9yZXF1ZXN0IHsKLSBfX3UzMiB0Y29kZTsKLSBfX3UzMiBsZW5ndGg7Ci0gX191NjQgb2Zmc2V0OworICBfX3UzMiB0Y29kZTsKKyAgX191MzIgbGVuZ3RoOworICBfX3U2NCBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGNsb3N1cmU7Ci0gX191NjQgZGF0YTsKLSBfX3UzMiBnZW5lcmF0aW9uOworICBfX3U2NCBjbG9zdXJlOworICBfX3U2NCBkYXRhOworICBfX3UzMiBnZW5lcmF0aW9uOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZndfY2Rldl9zZW5kX3Jlc3BvbnNlIHsKLSBfX3UzMiByY29kZTsKLSBfX3UzMiBsZW5ndGg7Ci0gX191NjQgZGF0YTsKKyAgX191MzIgcmNvZGU7CisgIF9fdTMyIGxlbmd0aDsKKyAgX191NjQgZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaGFuZGxlOworICBfX3UzMiBoYW5kbGU7CiB9Owogc3RydWN0IGZ3X2NkZXZfYWxsb2NhdGUgewotIF9fdTY0IG9mZnNldDsKKyAgX191NjQgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjbG9zdXJlOwotIF9fdTMyIGxlbmd0aDsKLSBfX3UzMiBoYW5kbGU7Ci0gX191NjQgcmVnaW9uX2VuZDsKKyAgX191NjQgY2xvc3VyZTsKKyAgX191MzIgbGVuZ3RoOworICBfX3UzMiBoYW5kbGU7CisgIF9fdTY0IHJlZ2lvbl9lbmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmd19jZGV2X2RlYWxsb2NhdGUgewotIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgaGFuZGxlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZXX0NERVZfTE9OR19SRVNFVCAwCiAjZGVmaW5lIEZXX0NERVZfU0hPUlRfUkVTRVQgMQogc3RydWN0IGZ3X2NkZXZfaW5pdGlhdGVfYnVzX3Jlc2V0IHsKLSBfX3UzMiB0eXBlOworICBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZndfY2Rldl9hZGRfZGVzY3JpcHRvciB7Ci0gX191MzIgaW1tZWRpYXRlOwotIF9fdTMyIGtleTsKKyAgX191MzIgaW1tZWRpYXRlOworICBfX3UzMiBrZXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRhdGE7Ci0gX191MzIgbGVuZ3RoOwotIF9fdTMyIGhhbmRsZTsKKyAgX191NjQgZGF0YTsKKyAgX191MzIgbGVuZ3RoOworICBfX3UzMiBoYW5kbGU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmd19jZGV2X3JlbW92ZV9kZXNjcmlwdG9yIHsKLSBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIGhhbmRsZTsKIH07CiAjZGVmaW5lIEZXX0NERVZfSVNPX0NPTlRFWFRfVFJBTlNNSVQgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRldfQ0RFVl9JU09fQ09OVEVYVF9SRUNFSVZFIDEKICNkZWZpbmUgRldfQ0RFVl9JU09fQ09OVEVYVF9SRUNFSVZFX01VTFRJQ0hBTk5FTCAyCiBzdHJ1Y3QgZndfY2Rldl9jcmVhdGVfaXNvX2NvbnRleHQgewotIF9fdTMyIHR5cGU7CisgIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhlYWRlcl9zaXplOwotIF9fdTMyIGNoYW5uZWw7Ci0gX191MzIgc3BlZWQ7Ci0gX191NjQgY2xvc3VyZTsKKyAgX191MzIgaGVhZGVyX3NpemU7CisgIF9fdTMyIGNoYW5uZWw7CisgIF9fdTMyIHNwZWVkOworICBfX3U2NCBjbG9zdXJlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIGhhbmRsZTsKIH07CiBzdHJ1Y3QgZndfY2Rldl9zZXRfaXNvX2NoYW5uZWxzIHsKLSBfX3U2NCBjaGFubmVsczsKKyAgX191NjQgY2hhbm5lbHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgaGFuZGxlOwogfTsKICNkZWZpbmUgRldfQ0RFVl9JU09fUEFZTE9BRF9MRU5HVEgodikgKHYpCiAjZGVmaW5lIEZXX0NERVZfSVNPX0lOVEVSUlVQVCAoMSA8PCAxNikKQEAgLTI1MywxNiArMjUzLDE2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGV19DREVWX0lTT19IRUFERVJfTEVOR1RIKHYpICgodikgPDwgMjQpCiBzdHJ1Y3QgZndfY2Rldl9pc29fcGFja2V0IHsKLSBfX3UzMiBjb250cm9sOwotIF9fdTMyIGhlYWRlclswXTsKKyAgX191MzIgY29udHJvbDsKKyAgX191MzIgaGVhZGVyWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZndfY2Rldl9xdWV1ZV9pc28gewotIF9fdTY0IHBhY2tldHM7Ci0gX191NjQgZGF0YTsKKyAgX191NjQgcGFja2V0czsKKyAgX191NjQgZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2l6ZTsKLSBfX3UzMiBoYW5kbGU7CisgIF9fdTMyIHNpemU7CisgIF9fdTMyIGhhbmRsZTsKIH07CiAjZGVmaW5lIEZXX0NERVZfSVNPX0NPTlRFWFRfTUFUQ0hfVEFHMCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMjcyLDYxICsyNzIsNjEgQEAKICNkZWZpbmUgRldfQ0RFVl9JU09fQ09OVEVYVF9NQVRDSF9BTExfVEFHUyAxNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmd19jZGV2X3N0YXJ0X2lzbyB7Ci0gX19zMzIgY3ljbGU7Ci0gX191MzIgc3luYzsKLSBfX3UzMiB0YWdzOworICBfX3MzMiBjeWNsZTsKKyAgX191MzIgc3luYzsKKyAgX191MzIgdGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaGFuZGxlOworICBfX3UzMiBoYW5kbGU7CiB9Owogc3RydWN0IGZ3X2NkZXZfc3RvcF9pc28gewotIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZndfY2Rldl9mbHVzaF9pc28gewotIF9fdTMyIGhhbmRsZTsKKyAgX191MzIgaGFuZGxlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZndfY2Rldl9nZXRfY3ljbGVfdGltZXIgewotIF9fdTY0IGxvY2FsX3RpbWU7Ci0gX191MzIgY3ljbGVfdGltZXI7CisgIF9fdTY0IGxvY2FsX3RpbWU7CisgIF9fdTMyIGN5Y2xlX3RpbWVyOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZndfY2Rldl9nZXRfY3ljbGVfdGltZXIyIHsKLSBfX3M2NCB0dl9zZWM7Ci0gX19zMzIgdHZfbnNlYzsKLSBfX3MzMiBjbGtfaWQ7CisgIF9fczY0IHR2X3NlYzsKKyAgX19zMzIgdHZfbnNlYzsKKyAgX19zMzIgY2xrX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjeWNsZV90aW1lcjsKKyAgX191MzIgY3ljbGVfdGltZXI7CiB9Owogc3RydWN0IGZ3X2NkZXZfYWxsb2NhdGVfaXNvX3Jlc291cmNlIHsKLSBfX3U2NCBjbG9zdXJlOworICBfX3U2NCBjbG9zdXJlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjaGFubmVsczsKLSBfX3UzMiBiYW5kd2lkdGg7Ci0gX191MzIgaGFuZGxlOworICBfX3U2NCBjaGFubmVsczsKKyAgX191MzIgYmFuZHdpZHRoOworICBfX3UzMiBoYW5kbGU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmd19jZGV2X3NlbmRfc3RyZWFtX3BhY2tldCB7Ci0gX191MzIgbGVuZ3RoOwotIF9fdTMyIHRhZzsKLSBfX3UzMiBjaGFubmVsOworICBfX3UzMiBsZW5ndGg7CisgIF9fdTMyIHRhZzsKKyAgX191MzIgY2hhbm5lbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3k7Ci0gX191NjQgY2xvc3VyZTsKLSBfX3U2NCBkYXRhOwotIF9fdTMyIGdlbmVyYXRpb247CisgIF9fdTMyIHN5OworICBfX3U2NCBjbG9zdXJlOworICBfX3U2NCBkYXRhOworICBfX3UzMiBnZW5lcmF0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcGVlZDsKKyAgX191MzIgc3BlZWQ7CiB9Owogc3RydWN0IGZ3X2NkZXZfc2VuZF9waHlfcGFja2V0IHsKLSBfX3U2NCBjbG9zdXJlOworICBfX3U2NCBjbG9zdXJlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkYXRhWzJdOwotIF9fdTMyIGdlbmVyYXRpb247CisgIF9fdTMyIGRhdGFbMl07CisgIF9fdTMyIGdlbmVyYXRpb247CiB9Owogc3RydWN0IGZ3X2NkZXZfcmVjZWl2ZV9waHlfcGFja2V0cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGNsb3N1cmU7CisgIF9fdTY0IGNsb3N1cmU7CiB9OwogI2RlZmluZSBGV19DREVWX1ZFUlNJT04gMwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZsYXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmxhdC5oCmluZGV4IDk5NDVhZTMuLjMwMWZkYTMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmxhdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZmxhdC5oCkBAIC0yMiwyMSArMjIsMjEgQEAKICNkZWZpbmUgTUFYX1NIQVJFRF9MSUJTICgxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmbGF0X2hkciB7Ci0gY2hhciBtYWdpY1s0XTsKLSB1bnNpZ25lZCBsb25nIHJldjsKLSB1bnNpZ25lZCBsb25nIGVudHJ5OworICBjaGFyIG1hZ2ljWzRdOworICB1bnNpZ25lZCBsb25nIHJldjsKKyAgdW5zaWduZWQgbG9uZyBlbnRyeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBkYXRhX3N0YXJ0OwotIHVuc2lnbmVkIGxvbmcgZGF0YV9lbmQ7Ci0gdW5zaWduZWQgbG9uZyBic3NfZW5kOwotIHVuc2lnbmVkIGxvbmcgc3RhY2tfc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBkYXRhX3N0YXJ0OworICB1bnNpZ25lZCBsb25nIGRhdGFfZW5kOworICB1bnNpZ25lZCBsb25nIGJzc19lbmQ7CisgIHVuc2lnbmVkIGxvbmcgc3RhY2tfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyByZWxvY19zdGFydDsKLSB1bnNpZ25lZCBsb25nIHJlbG9jX2NvdW50OwotIHVuc2lnbmVkIGxvbmcgZmxhZ3M7Ci0gdW5zaWduZWQgbG9uZyBidWlsZF9kYXRlOworICB1bnNpZ25lZCBsb25nIHJlbG9jX3N0YXJ0OworICB1bnNpZ25lZCBsb25nIHJlbG9jX2NvdW50OworICB1bnNpZ25lZCBsb25nIGZsYWdzOworICB1bnNpZ25lZCBsb25nIGJ1aWxkX2RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgZmlsbGVyWzVdOworICB1bnNpZ25lZCBsb25nIGZpbGxlcls1XTsKIH07CiAjZGVmaW5lIEZMQVRfRkxBR19SQU0gMHgwMDAxCiAjZGVmaW5lIEZMQVRfRkxBR19HT1RQSUMgMHgwMDAyCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZvdS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mb3UuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMzFhNGFkCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mb3UuaApAQCAtMCwwICsxLDUwIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9VQVBJX0xJTlVYX0ZPVV9ICisjZGVmaW5lIF9VQVBJX0xJTlVYX0ZPVV9ICisjZGVmaW5lIEZPVV9HRU5MX05BTUUgImZvdSIKKyNkZWZpbmUgRk9VX0dFTkxfVkVSU0lPTiAweDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIHsKKyAgRk9VX0FUVFJfVU5TUEVDLAorICBGT1VfQVRUUl9QT1JULAorICBGT1VfQVRUUl9BRiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEZPVV9BVFRSX0lQUFJPVE8sCisgIEZPVV9BVFRSX1RZUEUsCisgIF9fRk9VX0FUVFJfTUFYLAorfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZPVV9BVFRSX01BWCAoX19GT1VfQVRUUl9NQVggLSAxKQorZW51bSB7CisgIEZPVV9DTURfVU5TUEVDLAorICBGT1VfQ01EX0FERCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEZPVV9DTURfREVMLAorICBfX0ZPVV9DTURfTUFYLAorfTsKK2VudW0geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgRk9VX0VOQ0FQX1VOU1BFQywKKyAgRk9VX0VOQ0FQX0RJUkVDVCwKKyAgRk9VX0VOQ0FQX0dVRSwKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGT1VfQ01EX01BWCAoX19GT1VfQ01EX01BWCAtIDEpCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZnMuaAppbmRleCBkNmZjNzMwLi5iZWQyNDA1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mcy5oCkBAIC0yNyw3ICsyNyw3IEBACiAjZGVmaW5lIElOUl9PUEVOX01BWCA0MDk2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCTE9DS19TSVpFX0JJVFMgMTAKLSNkZWZpbmUgQkxPQ0tfU0laRSAoMTw8QkxPQ0tfU0laRV9CSVRTKQorI2RlZmluZSBCTE9DS19TSVpFICgxIDw8IEJMT0NLX1NJWkVfQklUUykKICNkZWZpbmUgU0VFS19TRVQgMAogI2RlZmluZSBTRUVLX0NVUiAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMzYsMTUxICszNiwxNTUgQEAKICNkZWZpbmUgU0VFS19IT0xFIDQKICNkZWZpbmUgU0VFS19NQVggU0VFS19IT0xFCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBSRU5BTUVfTk9SRVBMQUNFICgxIDw8IDApCisjZGVmaW5lIFJFTkFNRV9FWENIQU5HRSAoMSA8PCAxKQorI2RlZmluZSBSRU5BTUVfV0hJVEVPVVQgKDEgPDwgMikKIHN0cnVjdCBmc3RyaW1fcmFuZ2UgewotIF9fdTY0IHN0YXJ0OwotIF9fdTY0IGxlbjsKLSBfX3U2NCBtaW5sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBzdGFydDsKKyAgX191NjQgbGVuOworICBfX3U2NCBtaW5sZW47CiB9Owotc3RydWN0IGZpbGVzX3N0YXRfc3RydWN0IHsKLSB1bnNpZ25lZCBsb25nIG5yX2ZpbGVzOwotIHVuc2lnbmVkIGxvbmcgbnJfZnJlZV9maWxlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBtYXhfZmlsZXM7CitzdHJ1Y3QgZmlsZXNfc3RhdF9zdHJ1Y3QgeworICB1bnNpZ25lZCBsb25nIG5yX2ZpbGVzOworICB1bnNpZ25lZCBsb25nIG5yX2ZyZWVfZmlsZXM7CisgIHVuc2lnbmVkIGxvbmcgbWF4X2ZpbGVzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaW5vZGVzX3N0YXRfdCB7Ci0gbG9uZyBucl9pbm9kZXM7CisgIGxvbmcgbnJfaW5vZGVzOworICBsb25nIG5yX3VudXNlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBucl91bnVzZWQ7Ci0gbG9uZyBkdW1teVs1XTsKKyAgbG9uZyBkdW1teVs1XTsKIH07CiAjZGVmaW5lIE5SX0ZJTEUgODE5MgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNfUkRPTkxZIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TX05PU1VJRCAyCiAjZGVmaW5lIE1TX05PREVWIDQKICNkZWZpbmUgTVNfTk9FWEVDIDgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TX1NZTkNIUk9OT1VTIDE2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU19SRU1PVU5UIDMyCiAjZGVmaW5lIE1TX01BTkRMT0NLIDY0CiAjZGVmaW5lIE1TX0RJUlNZTkMgMTI4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU19OT0FUSU1FIDEwMjQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TX05PRElSQVRJTUUgMjA0OAogI2RlZmluZSBNU19CSU5EIDQwOTYKICNkZWZpbmUgTVNfTU9WRSA4MTkyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU19SRUMgMTYzODQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TX1ZFUkJPU0UgMzI3NjgKICNkZWZpbmUgTVNfU0lMRU5UIDMyNzY4Ci0jZGVmaW5lIE1TX1BPU0lYQUNMICgxPDwxNikKKyNkZWZpbmUgTVNfUE9TSVhBQ0wgKDEgPDwgMTYpCisjZGVmaW5lIE1TX1VOQklOREFCTEUgKDEgPDwgMTcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNU19VTkJJTkRBQkxFICgxPDwxNykKLSNkZWZpbmUgTVNfUFJJVkFURSAoMTw8MTgpCi0jZGVmaW5lIE1TX1NMQVZFICgxPDwxOSkKLSNkZWZpbmUgTVNfU0hBUkVEICgxPDwyMCkKKyNkZWZpbmUgTVNfUFJJVkFURSAoMSA8PCAxOCkKKyNkZWZpbmUgTVNfU0xBVkUgKDEgPDwgMTkpCisjZGVmaW5lIE1TX1NIQVJFRCAoMSA8PCAyMCkKKyNkZWZpbmUgTVNfUkVMQVRJTUUgKDEgPDwgMjEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNU19SRUxBVElNRSAoMTw8MjEpCi0jZGVmaW5lIE1TX0tFUk5NT1VOVCAoMTw8MjIpCi0jZGVmaW5lIE1TX0lfVkVSU0lPTiAoMTw8MjMpCi0jZGVmaW5lIE1TX1NUUklDVEFUSU1FICgxPDwyNCkKKyNkZWZpbmUgTVNfS0VSTk1PVU5UICgxIDw8IDIyKQorI2RlZmluZSBNU19JX1ZFUlNJT04gKDEgPDwgMjMpCisjZGVmaW5lIE1TX1NUUklDVEFUSU1FICgxIDw8IDI0KQorI2RlZmluZSBNU19OT1NFQyAoMSA8PCAyOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1TX05PU0VDICgxPDwyOCkKLSNkZWZpbmUgTVNfQk9STiAoMTw8MjkpCi0jZGVmaW5lIE1TX0FDVElWRSAoMTw8MzApCi0jZGVmaW5lIE1TX05PVVNFUiAoMTw8MzEpCisjZGVmaW5lIE1TX0JPUk4gKDEgPDwgMjkpCisjZGVmaW5lIE1TX0FDVElWRSAoMSA8PCAzMCkKKyNkZWZpbmUgTVNfTk9VU0VSICgxIDw8IDMxKQorI2RlZmluZSBNU19STVRfTUFTSyAoTVNfUkRPTkxZIHwgTVNfU1lOQ0hST05PVVMgfCBNU19NQU5ETE9DSyB8IE1TX0lfVkVSU0lPTikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1TX1JNVF9NQVNLIChNU19SRE9OTFl8TVNfU1lOQ0hST05PVVN8TVNfTUFORExPQ0t8TVNfSV9WRVJTSU9OKQogI2RlZmluZSBNU19NR0NfVkFMIDB4QzBFRDAwMDAKICNkZWZpbmUgTVNfTUdDX01TSyAweGZmZmYwMDAwCi0jZGVmaW5lIEJMS1JPU0VUIF9JTygweDEyLDkzKQorI2RlZmluZSBCTEtST1NFVCBfSU8oMHgxMiwgOTMpCisjZGVmaW5lIEJMS1JPR0VUIF9JTygweDEyLCA5NCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJMS1JPR0VUIF9JTygweDEyLDk0KQotI2RlZmluZSBCTEtSUlBBUlQgX0lPKDB4MTIsOTUpCi0jZGVmaW5lIEJMS0dFVFNJWkUgX0lPKDB4MTIsOTYpCi0jZGVmaW5lIEJMS0ZMU0JVRiBfSU8oMHgxMiw5NykKKyNkZWZpbmUgQkxLUlJQQVJUIF9JTygweDEyLCA5NSkKKyNkZWZpbmUgQkxLR0VUU0laRSBfSU8oMHgxMiwgOTYpCisjZGVmaW5lIEJMS0ZMU0JVRiBfSU8oMHgxMiwgOTcpCisjZGVmaW5lIEJMS1JBU0VUIF9JTygweDEyLCA5OCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJMS1JBU0VUIF9JTygweDEyLDk4KQotI2RlZmluZSBCTEtSQUdFVCBfSU8oMHgxMiw5OSkKLSNkZWZpbmUgQkxLRlJBU0VUIF9JTygweDEyLDEwMCkKLSNkZWZpbmUgQkxLRlJBR0VUIF9JTygweDEyLDEwMSkKKyNkZWZpbmUgQkxLUkFHRVQgX0lPKDB4MTIsIDk5KQorI2RlZmluZSBCTEtGUkFTRVQgX0lPKDB4MTIsIDEwMCkKKyNkZWZpbmUgQkxLRlJBR0VUIF9JTygweDEyLCAxMDEpCisjZGVmaW5lIEJMS1NFQ1RTRVQgX0lPKDB4MTIsIDEwMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJMS1NFQ1RTRVQgX0lPKDB4MTIsMTAyKQotI2RlZmluZSBCTEtTRUNUR0VUIF9JTygweDEyLDEwMykKLSNkZWZpbmUgQkxLU1NaR0VUIF9JTygweDEyLDEwNCkKLSNkZWZpbmUgQkxLQlNaR0VUIF9JT1IoMHgxMiwxMTIsc2l6ZV90KQorI2RlZmluZSBCTEtTRUNUR0VUIF9JTygweDEyLCAxMDMpCisjZGVmaW5lIEJMS1NTWkdFVCBfSU8oMHgxMiwgMTA0KQorI2RlZmluZSBCTEtCU1pHRVQgX0lPUigweDEyLCAxMTIsIHNpemVfdCkKKyNkZWZpbmUgQkxLQlNaU0VUIF9JT1coMHgxMiwgMTEzLCBzaXplX3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCTEtCU1pTRVQgX0lPVygweDEyLDExMyxzaXplX3QpCi0jZGVmaW5lIEJMS0dFVFNJWkU2NCBfSU9SKDB4MTIsMTE0LHNpemVfdCkKLSNkZWZpbmUgQkxLVFJBQ0VTRVRVUCBfSU9XUigweDEyLDExNSxzdHJ1Y3QgYmxrX3VzZXJfdHJhY2Vfc2V0dXApCi0jZGVmaW5lIEJMS1RSQUNFU1RBUlQgX0lPKDB4MTIsMTE2KQorI2RlZmluZSBCTEtHRVRTSVpFNjQgX0lPUigweDEyLCAxMTQsIHNpemVfdCkKKyNkZWZpbmUgQkxLVFJBQ0VTRVRVUCBfSU9XUigweDEyLCAxMTUsIHN0cnVjdCBibGtfdXNlcl90cmFjZV9zZXR1cCkKKyNkZWZpbmUgQkxLVFJBQ0VTVEFSVCBfSU8oMHgxMiwgMTE2KQorI2RlZmluZSBCTEtUUkFDRVNUT1AgX0lPKDB4MTIsIDExNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJMS1RSQUNFU1RPUCBfSU8oMHgxMiwxMTcpCi0jZGVmaW5lIEJMS1RSQUNFVEVBUkRPV04gX0lPKDB4MTIsMTE4KQotI2RlZmluZSBCTEtESVNDQVJEIF9JTygweDEyLDExOSkKLSNkZWZpbmUgQkxLSU9NSU4gX0lPKDB4MTIsMTIwKQorI2RlZmluZSBCTEtUUkFDRVRFQVJET1dOIF9JTygweDEyLCAxMTgpCisjZGVmaW5lIEJMS0RJU0NBUkQgX0lPKDB4MTIsIDExOSkKKyNkZWZpbmUgQkxLSU9NSU4gX0lPKDB4MTIsIDEyMCkKKyNkZWZpbmUgQkxLSU9PUFQgX0lPKDB4MTIsIDEyMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJMS0lPT1BUIF9JTygweDEyLDEyMSkKLSNkZWZpbmUgQkxLQUxJR05PRkYgX0lPKDB4MTIsMTIyKQotI2RlZmluZSBCTEtQQlNaR0VUIF9JTygweDEyLDEyMykKLSNkZWZpbmUgQkxLRElTQ0FSRFpFUk9FUyBfSU8oMHgxMiwxMjQpCisjZGVmaW5lIEJMS0FMSUdOT0ZGIF9JTygweDEyLCAxMjIpCisjZGVmaW5lIEJMS1BCU1pHRVQgX0lPKDB4MTIsIDEyMykKKyNkZWZpbmUgQkxLRElTQ0FSRFpFUk9FUyBfSU8oMHgxMiwgMTI0KQorI2RlZmluZSBCTEtTRUNESVNDQVJEIF9JTygweDEyLCAxMjUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBCTEtTRUNESVNDQVJEIF9JTygweDEyLDEyNSkKLSNkZWZpbmUgQkxLUk9UQVRJT05BTCBfSU8oMHgxMiwxMjYpCi0jZGVmaW5lIEJMS1pFUk9PVVQgX0lPKDB4MTIsMTI3KQorI2RlZmluZSBCTEtST1RBVElPTkFMIF9JTygweDEyLCAxMjYpCisjZGVmaW5lIEJMS1pFUk9PVVQgX0lPKDB4MTIsIDEyNykKICNkZWZpbmUgQk1BUF9JT0NUTCAxCisjZGVmaW5lIEZJQk1BUCBfSU8oMHgwMCwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEZJQk1BUCBfSU8oMHgwMCwxKQotI2RlZmluZSBGSUdFVEJTWiBfSU8oMHgwMCwyKQorI2RlZmluZSBGSUdFVEJTWiBfSU8oMHgwMCwgMikKICNkZWZpbmUgRklGUkVFWkUgX0lPV1IoJ1gnLCAxMTksIGludCkKICNkZWZpbmUgRklUSEFXIF9JT1dSKCdYJywgMTIwLCBpbnQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGSVRSSU0gX0lPV1IoJ1gnLCAxMjEsIHN0cnVjdCBmc3RyaW1fcmFuZ2UpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19JT0NfR0VURkxBR1MgX0lPUignZicsIDEsIGxvbmcpCiAjZGVmaW5lIEZTX0lPQ19TRVRGTEFHUyBfSU9XKCdmJywgMiwgbG9uZykKICNkZWZpbmUgRlNfSU9DX0dFVFZFUlNJT04gX0lPUigndicsIDEsIGxvbmcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19JT0NfU0VUVkVSU0lPTiBfSU9XKCd2JywgMiwgbG9uZykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTX0lPQ19GSUVNQVAgX0lPV1IoJ2YnLCAxMSwgc3RydWN0IGZpZW1hcCkKICNkZWZpbmUgRlNfSU9DMzJfR0VURkxBR1MgX0lPUignZicsIDEsIGludCkKICNkZWZpbmUgRlNfSU9DMzJfU0VURkxBR1MgX0lPVygnZicsIDIsIGludCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTX0lPQzMyX0dFVFZFUlNJT04gX0lPUigndicsIDEsIGludCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTX0lPQzMyX1NFVFZFUlNJT04gX0lPVygndicsIDIsIGludCkKICNkZWZpbmUgRlNfU0VDUk1fRkwgMHgwMDAwMDAwMQogI2RlZmluZSBGU19VTlJNX0ZMIDB4MDAwMDAwMDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTX0NPTVBSX0ZMIDB4MDAwMDAwMDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTX1NZTkNfRkwgMHgwMDAwMDAwOAogI2RlZmluZSBGU19JTU1VVEFCTEVfRkwgMHgwMDAwMDAxMAogI2RlZmluZSBGU19BUFBFTkRfRkwgMHgwMDAwMDAyMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlNfTk9EVU1QX0ZMIDB4MDAwMDAwNDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTX05PQVRJTUVfRkwgMHgwMDAwMDA4MAogI2RlZmluZSBGU19ESVJUWV9GTCAweDAwMDAwMTAwCiAjZGVmaW5lIEZTX0NPTVBSQkxLX0ZMIDB4MDAwMDAyMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTX05PQ09NUF9GTCAweDAwMDAwNDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19FQ09NUFJfRkwgMHgwMDAwMDgwMAogI2RlZmluZSBGU19CVFJFRV9GTCAweDAwMDAxMDAwCiAjZGVmaW5lIEZTX0lOREVYX0ZMIDB4MDAwMDEwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTX0lNQUdJQ19GTCAweDAwMDAyMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19KT1VSTkFMX0RBVEFfRkwgMHgwMDAwNDAwMAogI2RlZmluZSBGU19OT1RBSUxfRkwgMHgwMDAwODAwMAogI2RlZmluZSBGU19ESVJTWU5DX0ZMIDB4MDAwMTAwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTX1RPUERJUl9GTCAweDAwMDIwMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGU19FWFRFTlRfRkwgMHgwMDA4MDAwMAogI2RlZmluZSBGU19ESVJFQ1RJT19GTCAweDAwMTAwMDAwCiAjZGVmaW5lIEZTX05PQ09XX0ZMIDB4MDA4MDAwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTX1JFU0VSVkVEX0ZMIDB4ODAwMDAwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTX0ZMX1VTRVJfVklTSUJMRSAweDAwMDNERkZGCiAjZGVmaW5lIEZTX0ZMX1VTRVJfTU9ESUZJQUJMRSAweDAwMDM4MEZGCiAjZGVmaW5lIFNZTkNfRklMRV9SQU5HRV9XQUlUX0JFRk9SRSAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTWU5DX0ZJTEVfUkFOR0VfV1JJVEUgMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU1lOQ19GSUxFX1JBTkdFX1dBSVRfQUZURVIgNAogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZzbF9oeXBlcnZpc29yLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ZzbF9oeXBlcnZpc29yLmgKaW5kZXggZDU3NjRkNC4uODQxZjMyYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mc2xfaHlwZXJ2aXNvci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZnNsX2h5cGVydmlzb3IuaApAQCAtMjEsNjUgKzIxLDY1IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBmc2xfaHZfaW9jdGxfcmVzdGFydCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJldDsKLSBfX3UzMiBwYXJ0aXRpb247CisgIF9fdTMyIHJldDsKKyAgX191MzIgcGFydGl0aW9uOwogfTsKIHN0cnVjdCBmc2xfaHZfaW9jdGxfc3RhdHVzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmV0OwotIF9fdTMyIHBhcnRpdGlvbjsKLSBfX3UzMiBzdGF0dXM7CisgIF9fdTMyIHJldDsKKyAgX191MzIgcGFydGl0aW9uOworICBfX3UzMiBzdGF0dXM7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmc2xfaHZfaW9jdGxfc3RhcnQgewotIF9fdTMyIHJldDsKLSBfX3UzMiBwYXJ0aXRpb247Ci0gX191MzIgZW50cnlfcG9pbnQ7CisgIF9fdTMyIHJldDsKKyAgX191MzIgcGFydGl0aW9uOworICBfX3UzMiBlbnRyeV9wb2ludDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbG9hZDsKKyAgX191MzIgbG9hZDsKIH07CiBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3N0b3AgewotIF9fdTMyIHJldDsKKyAgX191MzIgcmV0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwYXJ0aXRpb247CisgIF9fdTMyIHBhcnRpdGlvbjsKIH07CiBzdHJ1Y3QgZnNsX2h2X2lvY3RsX21lbWNweSB7Ci0gX191MzIgcmV0OworICBfX3UzMiByZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNvdXJjZTsKLSBfX3UzMiB0YXJnZXQ7Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0gX191NjQgbG9jYWxfdmFkZHI7CisgIF9fdTMyIHNvdXJjZTsKKyAgX191MzIgdGFyZ2V0OworICBfX3UzMiByZXNlcnZlZDsKKyAgX191NjQgbG9jYWxfdmFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlbW90ZV9wYWRkcjsKLSBfX3U2NCBjb3VudDsKKyAgX191NjQgcmVtb3RlX3BhZGRyOworICBfX3U2NCBjb3VudDsKIH07CiBzdHJ1Y3QgZnNsX2h2X2lvY3RsX2Rvb3JiZWxsIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmV0OwotIF9fdTMyIGRvb3JiZWxsOworICBfX3UzMiByZXQ7CisgIF9fdTMyIGRvb3JiZWxsOwogfTsKIHN0cnVjdCBmc2xfaHZfaW9jdGxfcHJvcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJldDsKLSBfX3UzMiBoYW5kbGU7Ci0gX191NjQgcGF0aDsKLSBfX3U2NCBwcm9wbmFtZTsKKyAgX191MzIgcmV0OworICBfX3UzMiBoYW5kbGU7CisgIF9fdTY0IHBhdGg7CisgIF9fdTY0IHByb3BuYW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBwcm9wdmFsOwotIF9fdTMyIHByb3BsZW47Ci0gX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTY0IHByb3B2YWw7CisgIF9fdTMyIHByb3BsZW47CisgIF9fdTMyIHJlc2VydmVkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZTTF9IVl9JT0NUTF9UWVBFIDB4QUYKLSNkZWZpbmUgRlNMX0hWX0lPQ1RMX1BBUlRJVElPTl9SRVNUQVJUICAgX0lPV1IoRlNMX0hWX0lPQ1RMX1RZUEUsIDEsIHN0cnVjdCBmc2xfaHZfaW9jdGxfcmVzdGFydCkKLSNkZWZpbmUgRlNMX0hWX0lPQ1RMX1BBUlRJVElPTl9HRVRfU1RBVFVTICAgX0lPV1IoRlNMX0hWX0lPQ1RMX1RZUEUsIDIsIHN0cnVjdCBmc2xfaHZfaW9jdGxfc3RhdHVzKQotI2RlZmluZSBGU0xfSFZfSU9DVExfUEFSVElUSU9OX1NUQVJUICAgX0lPV1IoRlNMX0hWX0lPQ1RMX1RZUEUsIDMsIHN0cnVjdCBmc2xfaHZfaW9jdGxfc3RhcnQpCisjZGVmaW5lIEZTTF9IVl9JT0NUTF9QQVJUSVRJT05fUkVTVEFSVCBfSU9XUihGU0xfSFZfSU9DVExfVFlQRSwgMSwgc3RydWN0IGZzbF9odl9pb2N0bF9yZXN0YXJ0KQorI2RlZmluZSBGU0xfSFZfSU9DVExfUEFSVElUSU9OX0dFVF9TVEFUVVMgX0lPV1IoRlNMX0hWX0lPQ1RMX1RZUEUsIDIsIHN0cnVjdCBmc2xfaHZfaW9jdGxfc3RhdHVzKQorI2RlZmluZSBGU0xfSFZfSU9DVExfUEFSVElUSU9OX1NUQVJUIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCAzLCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3N0YXJ0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRlNMX0hWX0lPQ1RMX1BBUlRJVElPTl9TVE9QICAgX0lPV1IoRlNMX0hWX0lPQ1RMX1RZUEUsIDQsIHN0cnVjdCBmc2xfaHZfaW9jdGxfc3RvcCkKLSNkZWZpbmUgRlNMX0hWX0lPQ1RMX01FTUNQWSAgIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCA1LCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX21lbWNweSkKLSNkZWZpbmUgRlNMX0hWX0lPQ1RMX0RPT1JCRUxMICAgX0lPV1IoRlNMX0hWX0lPQ1RMX1RZUEUsIDYsIHN0cnVjdCBmc2xfaHZfaW9jdGxfZG9vcmJlbGwpCi0jZGVmaW5lIEZTTF9IVl9JT0NUTF9HRVRQUk9QICAgX0lPV1IoRlNMX0hWX0lPQ1RMX1RZUEUsIDcsIHN0cnVjdCBmc2xfaHZfaW9jdGxfcHJvcCkKKyNkZWZpbmUgRlNMX0hWX0lPQ1RMX1BBUlRJVElPTl9TVE9QIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCA0LCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3N0b3ApCisjZGVmaW5lIEZTTF9IVl9JT0NUTF9NRU1DUFkgX0lPV1IoRlNMX0hWX0lPQ1RMX1RZUEUsIDUsIHN0cnVjdCBmc2xfaHZfaW9jdGxfbWVtY3B5KQorI2RlZmluZSBGU0xfSFZfSU9DVExfRE9PUkJFTEwgX0lPV1IoRlNMX0hWX0lPQ1RMX1RZUEUsIDYsIHN0cnVjdCBmc2xfaHZfaW9jdGxfZG9vcmJlbGwpCisjZGVmaW5lIEZTTF9IVl9JT0NUTF9HRVRQUk9QIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCA3LCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3Byb3ApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBGU0xfSFZfSU9DVExfU0VUUFJPUCAgIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCA4LCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3Byb3ApCisjZGVmaW5lIEZTTF9IVl9JT0NUTF9TRVRQUk9QIF9JT1dSKEZTTF9IVl9JT0NUTF9UWVBFLCA4LCBzdHJ1Y3QgZnNsX2h2X2lvY3RsX3Byb3ApCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZnVzZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mdXNlLmgKaW5kZXggODEzNWQ0Ny4uNGYwZDZkMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mdXNlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mdXNlLmgKQEAgLTIxLDUyICsyMSw1MiBAQAogI2luY2x1ZGUgPHN0ZGludC5oPgogI2RlZmluZSBGVVNFX0tFUk5FTF9WRVJTSU9OIDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEZVU0VfS0VSTkVMX01JTk9SX1ZFUlNJT04gMjIKKyNkZWZpbmUgRlVTRV9LRVJORUxfTUlOT1JfVkVSU0lPTiAyMwogI2RlZmluZSBGVVNFX1JPT1RfSUQgMQogc3RydWN0IGZ1c2VfYXR0ciB7Ci0gdWludDY0X3QgaW5vOworICB1aW50NjRfdCBpbm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IHNpemU7Ci0gdWludDY0X3QgYmxvY2tzOwotIHVpbnQ2NF90IGF0aW1lOwotIHVpbnQ2NF90IG10aW1lOworICB1aW50NjRfdCBzaXplOworICB1aW50NjRfdCBibG9ja3M7CisgIHVpbnQ2NF90IGF0aW1lOworICB1aW50NjRfdCBtdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgY3RpbWU7Ci0gdWludDMyX3QgYXRpbWVuc2VjOwotIHVpbnQzMl90IG10aW1lbnNlYzsKLSB1aW50MzJfdCBjdGltZW5zZWM7CisgIHVpbnQ2NF90IGN0aW1lOworICB1aW50MzJfdCBhdGltZW5zZWM7CisgIHVpbnQzMl90IG10aW1lbnNlYzsKKyAgdWludDMyX3QgY3RpbWVuc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBtb2RlOwotIHVpbnQzMl90IG5saW5rOwotIHVpbnQzMl90IHVpZDsKLSB1aW50MzJfdCBnaWQ7CisgIHVpbnQzMl90IG1vZGU7CisgIHVpbnQzMl90IG5saW5rOworICB1aW50MzJfdCB1aWQ7CisgIHVpbnQzMl90IGdpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcmRldjsKLSB1aW50MzJfdCBibGtzaXplOwotIHVpbnQzMl90IHBhZGRpbmc7CisgIHVpbnQzMl90IHJkZXY7CisgIHVpbnQzMl90IGJsa3NpemU7CisgIHVpbnQzMl90IHBhZGRpbmc7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmdXNlX2tzdGF0ZnMgewotIHVpbnQ2NF90IGJsb2NrczsKLSB1aW50NjRfdCBiZnJlZTsKLSB1aW50NjRfdCBiYXZhaWw7CisgIHVpbnQ2NF90IGJsb2NrczsKKyAgdWludDY0X3QgYmZyZWU7CisgIHVpbnQ2NF90IGJhdmFpbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgZmlsZXM7Ci0gdWludDY0X3QgZmZyZWU7Ci0gdWludDMyX3QgYnNpemU7Ci0gdWludDMyX3QgbmFtZWxlbjsKKyAgdWludDY0X3QgZmlsZXM7CisgIHVpbnQ2NF90IGZmcmVlOworICB1aW50MzJfdCBic2l6ZTsKKyAgdWludDMyX3QgbmFtZWxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZnJzaXplOwotIHVpbnQzMl90IHBhZGRpbmc7Ci0gdWludDMyX3Qgc3BhcmVbNl07CisgIHVpbnQzMl90IGZyc2l6ZTsKKyAgdWludDMyX3QgcGFkZGluZzsKKyAgdWludDMyX3Qgc3BhcmVbNl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmdXNlX2ZpbGVfbG9jayB7Ci0gdWludDY0X3Qgc3RhcnQ7Ci0gdWludDY0X3QgZW5kOwotIHVpbnQzMl90IHR5cGU7CisgIHVpbnQ2NF90IHN0YXJ0OworICB1aW50NjRfdCBlbmQ7CisgIHVpbnQzMl90IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHBpZDsKKyAgdWludDMyX3QgcGlkOwogfTsKICNkZWZpbmUgRkFUVFJfTU9ERSAoMSA8PCAwKQogI2RlZmluZSBGQVRUUl9VSUQgKDEgPDwgMSkKQEAgLTgxLDQ5NCArODEsNTEwIEBACiAjZGVmaW5lIEZBVFRSX01USU1FX05PVyAoMSA8PCA4KQogI2RlZmluZSBGQVRUUl9MT0NLT1dORVIgKDEgPDwgOSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZBVFRSX0NUSU1FICgxIDw8IDEwKQogI2RlZmluZSBGT1BFTl9ESVJFQ1RfSU8gKDEgPDwgMCkKICNkZWZpbmUgRk9QRU5fS0VFUF9DQUNIRSAoMSA8PCAxKQogI2RlZmluZSBGT1BFTl9OT05TRUVLQUJMRSAoMSA8PCAyKQotI2RlZmluZSBGVVNFX0FTWU5DX1JFQUQgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZVU0VfQVNZTkNfUkVBRCAoMSA8PCAwKQogI2RlZmluZSBGVVNFX1BPU0lYX0xPQ0tTICgxIDw8IDEpCiAjZGVmaW5lIEZVU0VfRklMRV9PUFMgKDEgPDwgMikKICNkZWZpbmUgRlVTRV9BVE9NSUNfT19UUlVOQyAoMSA8PCAzKQotI2RlZmluZSBGVVNFX0VYUE9SVF9TVVBQT1JUICgxIDw8IDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGVVNFX0VYUE9SVF9TVVBQT1JUICgxIDw8IDQpCiAjZGVmaW5lIEZVU0VfQklHX1dSSVRFUyAoMSA8PCA1KQogI2RlZmluZSBGVVNFX0RPTlRfTUFTSyAoMSA8PCA2KQogI2RlZmluZSBGVVNFX1NQTElDRV9XUklURSAoMSA8PCA3KQotI2RlZmluZSBGVVNFX1NQTElDRV9NT1ZFICgxIDw8IDgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGVVNFX1NQTElDRV9NT1ZFICgxIDw8IDgpCiAjZGVmaW5lIEZVU0VfU1BMSUNFX1JFQUQgKDEgPDwgOSkKICNkZWZpbmUgRlVTRV9GTE9DS19MT0NLUyAoMSA8PCAxMCkKICNkZWZpbmUgRlVTRV9IQVNfSU9DVExfRElSICgxIDw8IDExKQotI2RlZmluZSBGVVNFX0FVVE9fSU5WQUxfREFUQSAoMSA8PCAxMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZVU0VfQVVUT19JTlZBTF9EQVRBICgxIDw8IDEyKQogI2RlZmluZSBGVVNFX0RPX1JFQURESVJQTFVTICgxIDw8IDEzKQogI2RlZmluZSBGVVNFX1JFQURESVJQTFVTX0FVVE8gKDEgPDwgMTQpCiAjZGVmaW5lIEZVU0VfQVNZTkNfRElPICgxIDw8IDE1KQotI2RlZmluZSBDVVNFX1VOUkVTVFJJQ1RFRF9JT0NUTCAoMSA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRlVTRV9XUklURUJBQ0tfQ0FDSEUgKDEgPDwgMTYpCisjZGVmaW5lIEZVU0VfTk9fT1BFTl9TVVBQT1JUICgxIDw8IDE3KQorI2RlZmluZSBDVVNFX1VOUkVTVFJJQ1RFRF9JT0NUTCAoMSA8PCAwKQogI2RlZmluZSBGVVNFX1JFTEVBU0VfRkxVU0ggKDEgPDwgMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZVU0VfUkVMRUFTRV9GTE9DS19VTkxPQ0sgKDEgPDwgMSkKICNkZWZpbmUgRlVTRV9HRVRBVFRSX0ZIICgxIDw8IDApCiAjZGVmaW5lIEZVU0VfTEtfRkxPQ0sgKDEgPDwgMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZVU0VfV1JJVEVfQ0FDSEUgKDEgPDwgMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZVU0VfV1JJVEVfTE9DS09XTkVSICgxIDw8IDEpCiAjZGVmaW5lIEZVU0VfUkVBRF9MT0NLT1dORVIgKDEgPDwgMSkKICNkZWZpbmUgRlVTRV9JT0NUTF9DT01QQVQgKDEgPDwgMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZVU0VfSU9DVExfVU5SRVNUUklDVEVEICgxIDw8IDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGVVNFX0lPQ1RMX1JFVFJZICgxIDw8IDIpCiAjZGVmaW5lIEZVU0VfSU9DVExfMzJCSVQgKDEgPDwgMykKICNkZWZpbmUgRlVTRV9JT0NUTF9ESVIgKDEgPDwgNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZVU0VfSU9DVExfTUFYX0lPViAyNTYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZVU0VfUE9MTF9TQ0hFRFVMRV9OT1RJRlkgKDEgPDwgMCkKIGVudW0gZnVzZV9vcGNvZGUgewotIEZVU0VfTE9PS1VQID0gMSwKKyAgRlVTRV9MT09LVVAgPSAxLAorICBGVVNFX0ZPUkdFVCA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZVU0VfRk9SR0VUID0gMiwKLSBGVVNFX0dFVEFUVFIgPSAzLAotIEZVU0VfU0VUQVRUUiA9IDQsCi0gRlVTRV9SRUFETElOSyA9IDUsCisgIEZVU0VfR0VUQVRUUiA9IDMsCisgIEZVU0VfU0VUQVRUUiA9IDQsCisgIEZVU0VfUkVBRExJTksgPSA1LAorICBGVVNFX1NZTUxJTksgPSA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGVVNFX1NZTUxJTksgPSA2LAotIEZVU0VfTUtOT0QgPSA4LAotIEZVU0VfTUtESVIgPSA5LAotIEZVU0VfVU5MSU5LID0gMTAsCisgIEZVU0VfTUtOT0QgPSA4LAorICBGVVNFX01LRElSID0gOSwKKyAgRlVTRV9VTkxJTksgPSAxMCwKKyAgRlVTRV9STURJUiA9IDExLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGVVNFX1JNRElSID0gMTEsCi0gRlVTRV9SRU5BTUUgPSAxMiwKLSBGVVNFX0xJTksgPSAxMywKLSBGVVNFX09QRU4gPSAxNCwKKyAgRlVTRV9SRU5BTUUgPSAxMiwKKyAgRlVTRV9MSU5LID0gMTMsCisgIEZVU0VfT1BFTiA9IDE0LAorICBGVVNFX1JFQUQgPSAxNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlVTRV9SRUFEID0gMTUsCi0gRlVTRV9XUklURSA9IDE2LAotIEZVU0VfU1RBVEZTID0gMTcsCi0gRlVTRV9SRUxFQVNFID0gMTgsCisgIEZVU0VfV1JJVEUgPSAxNiwKKyAgRlVTRV9TVEFURlMgPSAxNywKKyAgRlVTRV9SRUxFQVNFID0gMTgsCisgIEZVU0VfRlNZTkMgPSAyMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlVTRV9GU1lOQyA9IDIwLAotIEZVU0VfU0VUWEFUVFIgPSAyMSwKLSBGVVNFX0dFVFhBVFRSID0gMjIsCi0gRlVTRV9MSVNUWEFUVFIgPSAyMywKKyAgRlVTRV9TRVRYQVRUUiA9IDIxLAorICBGVVNFX0dFVFhBVFRSID0gMjIsCisgIEZVU0VfTElTVFhBVFRSID0gMjMsCisgIEZVU0VfUkVNT1ZFWEFUVFIgPSAyNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlVTRV9SRU1PVkVYQVRUUiA9IDI0LAotIEZVU0VfRkxVU0ggPSAyNSwKLSBGVVNFX0lOSVQgPSAyNiwKLSBGVVNFX09QRU5ESVIgPSAyNywKKyAgRlVTRV9GTFVTSCA9IDI1LAorICBGVVNFX0lOSVQgPSAyNiwKKyAgRlVTRV9PUEVORElSID0gMjcsCisgIEZVU0VfUkVBRERJUiA9IDI4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGVVNFX1JFQURESVIgPSAyOCwKLSBGVVNFX1JFTEVBU0VESVIgPSAyOSwKLSBGVVNFX0ZTWU5DRElSID0gMzAsCi0gRlVTRV9HRVRMSyA9IDMxLAorICBGVVNFX1JFTEVBU0VESVIgPSAyOSwKKyAgRlVTRV9GU1lOQ0RJUiA9IDMwLAorICBGVVNFX0dFVExLID0gMzEsCisgIEZVU0VfU0VUTEsgPSAzMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlVTRV9TRVRMSyA9IDMyLAotIEZVU0VfU0VUTEtXID0gMzMsCi0gRlVTRV9BQ0NFU1MgPSAzNCwKLSBGVVNFX0NSRUFURSA9IDM1LAorICBGVVNFX1NFVExLVyA9IDMzLAorICBGVVNFX0FDQ0VTUyA9IDM0LAorICBGVVNFX0NSRUFURSA9IDM1LAorICBGVVNFX0lOVEVSUlVQVCA9IDM2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGVVNFX0lOVEVSUlVQVCA9IDM2LAotIEZVU0VfQk1BUCA9IDM3LAotIEZVU0VfREVTVFJPWSA9IDM4LAotIEZVU0VfSU9DVEwgPSAzOSwKKyAgRlVTRV9CTUFQID0gMzcsCisgIEZVU0VfREVTVFJPWSA9IDM4LAorICBGVVNFX0lPQ1RMID0gMzksCisgIEZVU0VfUE9MTCA9IDQwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGVVNFX1BPTEwgPSA0MCwKLSBGVVNFX05PVElGWV9SRVBMWSA9IDQxLAotIEZVU0VfQkFUQ0hfRk9SR0VUID0gNDIsCi0gRlVTRV9GQUxMT0NBVEUgPSA0MywKKyAgRlVTRV9OT1RJRllfUkVQTFkgPSA0MSwKKyAgRlVTRV9CQVRDSF9GT1JHRVQgPSA0MiwKKyAgRlVTRV9GQUxMT0NBVEUgPSA0MywKKyAgRlVTRV9SRUFERElSUExVUyA9IDQ0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGVVNFX1JFQURESVJQTFVTID0gNDQsCi0gQ1VTRV9JTklUID0gNDA5NiwKKyAgRlVTRV9SRU5BTUUyID0gNDUsCisgIENVU0VfSU5JVCA9IDQwOTYsCiB9OwogZW51bSBmdXNlX25vdGlmeV9jb2RlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlVTRV9OT1RJRllfUE9MTCA9IDEsCi0gRlVTRV9OT1RJRllfSU5WQUxfSU5PREUgPSAyLAotIEZVU0VfTk9USUZZX0lOVkFMX0VOVFJZID0gMywKLSBGVVNFX05PVElGWV9TVE9SRSA9IDQsCisgIEZVU0VfTk9USUZZX1BPTEwgPSAxLAorICBGVVNFX05PVElGWV9JTlZBTF9JTk9ERSA9IDIsCisgIEZVU0VfTk9USUZZX0lOVkFMX0VOVFJZID0gMywKKyAgRlVTRV9OT1RJRllfU1RPUkUgPSA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGVVNFX05PVElGWV9SRVRSSUVWRSA9IDUsCi0gRlVTRV9OT1RJRllfREVMRVRFID0gNiwKLSBGVVNFX05PVElGWV9DT0RFX01BWCwKKyAgRlVTRV9OT1RJRllfUkVUUklFVkUgPSA1LAorICBGVVNFX05PVElGWV9ERUxFVEUgPSA2LAorICBGVVNFX05PVElGWV9DT0RFX01BWCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGVVNFX01JTl9SRUFEX0JVRkZFUiA4MTkyCiAjZGVmaW5lIEZVU0VfQ09NUEFUX0VOVFJZX09VVF9TSVpFIDEyMAogc3RydWN0IGZ1c2VfZW50cnlfb3V0IHsKLSB1aW50NjRfdCBub2RlaWQ7CisgIHVpbnQ2NF90IG5vZGVpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgZ2VuZXJhdGlvbjsKLSB1aW50NjRfdCBlbnRyeV92YWxpZDsKLSB1aW50NjRfdCBhdHRyX3ZhbGlkOwotIHVpbnQzMl90IGVudHJ5X3ZhbGlkX25zZWM7CisgIHVpbnQ2NF90IGdlbmVyYXRpb247CisgIHVpbnQ2NF90IGVudHJ5X3ZhbGlkOworICB1aW50NjRfdCBhdHRyX3ZhbGlkOworICB1aW50MzJfdCBlbnRyeV92YWxpZF9uc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBhdHRyX3ZhbGlkX25zZWM7Ci0gc3RydWN0IGZ1c2VfYXR0ciBhdHRyOworICB1aW50MzJfdCBhdHRyX3ZhbGlkX25zZWM7CisgIHN0cnVjdCBmdXNlX2F0dHIgYXR0cjsKIH07CiBzdHJ1Y3QgZnVzZV9mb3JnZXRfaW4gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBubG9va3VwOworICB1aW50NjRfdCBubG9va3VwOwogfTsKIHN0cnVjdCBmdXNlX2ZvcmdldF9vbmUgewotIHVpbnQ2NF90IG5vZGVpZDsKKyAgdWludDY0X3Qgbm9kZWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBubG9va3VwOworICB1aW50NjRfdCBubG9va3VwOwogfTsKIHN0cnVjdCBmdXNlX2JhdGNoX2ZvcmdldF9pbiB7Ci0gdWludDMyX3QgY291bnQ7CisgIHVpbnQzMl90IGNvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBkdW1teTsKKyAgdWludDMyX3QgZHVtbXk7CiB9Owogc3RydWN0IGZ1c2VfZ2V0YXR0cl9pbiB7Ci0gdWludDMyX3QgZ2V0YXR0cl9mbGFnczsKKyAgdWludDMyX3QgZ2V0YXR0cl9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZHVtbXk7Ci0gdWludDY0X3QgZmg7CisgIHVpbnQzMl90IGR1bW15OworICB1aW50NjRfdCBmaDsKIH07CiAjZGVmaW5lIEZVU0VfQ09NUEFUX0FUVFJfT1VUX1NJWkUgOTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9hdHRyX291dCB7Ci0gdWludDY0X3QgYXR0cl92YWxpZDsKLSB1aW50MzJfdCBhdHRyX3ZhbGlkX25zZWM7Ci0gdWludDMyX3QgZHVtbXk7CisgIHVpbnQ2NF90IGF0dHJfdmFsaWQ7CisgIHVpbnQzMl90IGF0dHJfdmFsaWRfbnNlYzsKKyAgdWludDMyX3QgZHVtbXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmdXNlX2F0dHIgYXR0cjsKKyAgc3RydWN0IGZ1c2VfYXR0ciBhdHRyOwogfTsKICNkZWZpbmUgRlVTRV9DT01QQVRfTUtOT0RfSU5fU0laRSA4CiBzdHJ1Y3QgZnVzZV9ta25vZF9pbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IG1vZGU7Ci0gdWludDMyX3QgcmRldjsKLSB1aW50MzJfdCB1bWFzazsKLSB1aW50MzJfdCBwYWRkaW5nOworICB1aW50MzJfdCBtb2RlOworICB1aW50MzJfdCByZGV2OworICB1aW50MzJfdCB1bWFzazsKKyAgdWludDMyX3QgcGFkZGluZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZ1c2VfbWtkaXJfaW4gewotIHVpbnQzMl90IG1vZGU7Ci0gdWludDMyX3QgdW1hc2s7CisgIHVpbnQzMl90IG1vZGU7CisgIHVpbnQzMl90IHVtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZnVzZV9yZW5hbWVfaW4gewotIHVpbnQ2NF90IG5ld2RpcjsKKyAgdWludDY0X3QgbmV3ZGlyOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgZnVzZV9yZW5hbWUyX2luIHsKKyAgdWludDY0X3QgbmV3ZGlyOworICB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgcGFkZGluZzsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9Owogc3RydWN0IGZ1c2VfbGlua19pbiB7Ci0gdWludDY0X3Qgb2xkbm9kZWlkOworICB1aW50NjRfdCBvbGRub2RlaWQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmdXNlX3NldGF0dHJfaW4geworICB1aW50MzJfdCB2YWxpZDsKKyAgdWludDMyX3QgcGFkZGluZzsKKyAgdWludDY0X3QgZmg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHZhbGlkOwotIHVpbnQzMl90IHBhZGRpbmc7Ci0gdWludDY0X3QgZmg7Ci0gdWludDY0X3Qgc2l6ZTsKKyAgdWludDY0X3Qgc2l6ZTsKKyAgdWludDY0X3QgbG9ja19vd25lcjsKKyAgdWludDY0X3QgYXRpbWU7CisgIHVpbnQ2NF90IG10aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBsb2NrX293bmVyOwotIHVpbnQ2NF90IGF0aW1lOwotIHVpbnQ2NF90IG10aW1lOwotIHVpbnQ2NF90IHVudXNlZDI7CisgIHVpbnQ2NF90IGN0aW1lOworICB1aW50MzJfdCBhdGltZW5zZWM7CisgIHVpbnQzMl90IG10aW1lbnNlYzsKKyAgdWludDMyX3QgY3RpbWVuc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBhdGltZW5zZWM7Ci0gdWludDMyX3QgbXRpbWVuc2VjOwotIHVpbnQzMl90IHVudXNlZDM7Ci0gdWludDMyX3QgbW9kZTsKKyAgdWludDMyX3QgbW9kZTsKKyAgdWludDMyX3QgdW51c2VkNDsKKyAgdWludDMyX3QgdWlkOworICB1aW50MzJfdCBnaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHVudXNlZDQ7Ci0gdWludDMyX3QgdWlkOwotIHVpbnQzMl90IGdpZDsKLSB1aW50MzJfdCB1bnVzZWQ1OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDMyX3QgdW51c2VkNTsKIH07CiBzdHJ1Y3QgZnVzZV9vcGVuX2luIHsKLSB1aW50MzJfdCBmbGFnczsKLSB1aW50MzJfdCB1bnVzZWQ7CisgIHVpbnQzMl90IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDMyX3QgdW51c2VkOwogfTsKIHN0cnVjdCBmdXNlX2NyZWF0ZV9pbiB7Ci0gdWludDMyX3QgZmxhZ3M7Ci0gdWludDMyX3QgbW9kZTsKKyAgdWludDMyX3QgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHVtYXNrOwotIHVpbnQzMl90IHBhZGRpbmc7CisgIHVpbnQzMl90IG1vZGU7CisgIHVpbnQzMl90IHVtYXNrOworICB1aW50MzJfdCBwYWRkaW5nOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9vcGVuX291dCB7CisgIHVpbnQ2NF90IGZoOworICB1aW50MzJfdCBvcGVuX2ZsYWdzOworICB1aW50MzJfdCBwYWRkaW5nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBmaDsKLSB1aW50MzJfdCBvcGVuX2ZsYWdzOwotIHVpbnQzMl90IHBhZGRpbmc7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmdXNlX3JlbGVhc2VfaW4gewotIHVpbnQ2NF90IGZoOwotIHVpbnQzMl90IGZsYWdzOwotIHVpbnQzMl90IHJlbGVhc2VfZmxhZ3M7CisgIHVpbnQ2NF90IGZoOworICB1aW50MzJfdCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgbG9ja19vd25lcjsKKyAgdWludDMyX3QgcmVsZWFzZV9mbGFnczsKKyAgdWludDY0X3QgbG9ja19vd25lcjsKIH07CiBzdHJ1Y3QgZnVzZV9mbHVzaF9pbiB7Ci0gdWludDY0X3QgZmg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHVudXNlZDsKLSB1aW50MzJfdCBwYWRkaW5nOwotIHVpbnQ2NF90IGxvY2tfb3duZXI7CisgIHVpbnQ2NF90IGZoOworICB1aW50MzJfdCB1bnVzZWQ7CisgIHVpbnQzMl90IHBhZGRpbmc7CisgIHVpbnQ2NF90IGxvY2tfb3duZXI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9yZWFkX2luIHsKLSB1aW50NjRfdCBmaDsKLSB1aW50NjRfdCBvZmZzZXQ7Ci0gdWludDMyX3Qgc2l6ZTsKKyAgdWludDY0X3QgZmg7CisgIHVpbnQ2NF90IG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcmVhZF9mbGFnczsKLSB1aW50NjRfdCBsb2NrX293bmVyOwotIHVpbnQzMl90IGZsYWdzOwotIHVpbnQzMl90IHBhZGRpbmc7CisgIHVpbnQzMl90IHNpemU7CisgIHVpbnQzMl90IHJlYWRfZmxhZ3M7CisgIHVpbnQ2NF90IGxvY2tfb3duZXI7CisgIHVpbnQzMl90IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDMyX3QgcGFkZGluZzsKIH07CiAjZGVmaW5lIEZVU0VfQ09NUEFUX1dSSVRFX0lOX1NJWkUgMjQKIHN0cnVjdCBmdXNlX3dyaXRlX2luIHsKLSB1aW50NjRfdCBmaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3Qgb2Zmc2V0OwotIHVpbnQzMl90IHNpemU7Ci0gdWludDMyX3Qgd3JpdGVfZmxhZ3M7Ci0gdWludDY0X3QgbG9ja19vd25lcjsKKyAgdWludDY0X3QgZmg7CisgIHVpbnQ2NF90IG9mZnNldDsKKyAgdWludDMyX3Qgc2l6ZTsKKyAgdWludDMyX3Qgd3JpdGVfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGZsYWdzOwotIHVpbnQzMl90IHBhZGRpbmc7CisgIHVpbnQ2NF90IGxvY2tfb3duZXI7CisgIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBwYWRkaW5nOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV93cml0ZV9vdXQgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBzaXplOwotIHVpbnQzMl90IHBhZGRpbmc7CisgIHVpbnQzMl90IHNpemU7CisgIHVpbnQzMl90IHBhZGRpbmc7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlVTRV9DT01QQVRfU1RBVEZTX1NJWkUgNDgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9zdGF0ZnNfb3V0IHsKLSBzdHJ1Y3QgZnVzZV9rc3RhdGZzIHN0OworICBzdHJ1Y3QgZnVzZV9rc3RhdGZzIHN0OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9mc3luY19pbiB7CisgIHVpbnQ2NF90IGZoOworICB1aW50MzJfdCBmc3luY19mbGFnczsKKyAgdWludDMyX3QgcGFkZGluZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgZmg7Ci0gdWludDMyX3QgZnN5bmNfZmxhZ3M7Ci0gdWludDMyX3QgcGFkZGluZzsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ1c2Vfc2V0eGF0dHJfaW4gewotIHVpbnQzMl90IHNpemU7Ci0gdWludDMyX3QgZmxhZ3M7Ci19OworICB1aW50MzJfdCBzaXplOworICB1aW50MzJfdCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9Owogc3RydWN0IGZ1c2VfZ2V0eGF0dHJfaW4gewotIHVpbnQzMl90IHNpemU7Ci0gdWludDMyX3QgcGFkZGluZzsKLX07CisgIHVpbnQzMl90IHNpemU7CisgIHVpbnQzMl90IHBhZGRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKIHN0cnVjdCBmdXNlX2dldHhhdHRyX291dCB7Ci0gdWludDMyX3Qgc2l6ZTsKLSB1aW50MzJfdCBwYWRkaW5nOwotfTsKKyAgdWludDMyX3Qgc2l6ZTsKKyAgdWludDMyX3QgcGFkZGluZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9Owogc3RydWN0IGZ1c2VfbGtfaW4gewotIHVpbnQ2NF90IGZoOwotIHVpbnQ2NF90IG93bmVyOwotIHN0cnVjdCBmdXNlX2ZpbGVfbG9jayBsazsKKyAgdWludDY0X3QgZmg7CisgIHVpbnQ2NF90IG93bmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBsa19mbGFnczsKLSB1aW50MzJfdCBwYWRkaW5nOworICBzdHJ1Y3QgZnVzZV9maWxlX2xvY2sgbGs7CisgIHVpbnQzMl90IGxrX2ZsYWdzOworICB1aW50MzJfdCBwYWRkaW5nOwogfTsKLXN0cnVjdCBmdXNlX2xrX291dCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmdXNlX2ZpbGVfbG9jayBsazsKK3N0cnVjdCBmdXNlX2xrX291dCB7CisgIHN0cnVjdCBmdXNlX2ZpbGVfbG9jayBsazsKIH07CiBzdHJ1Y3QgZnVzZV9hY2Nlc3NfaW4gewotIHVpbnQzMl90IG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHBhZGRpbmc7CisgIHVpbnQzMl90IG1hc2s7CisgIHVpbnQzMl90IHBhZGRpbmc7CiB9Owogc3RydWN0IGZ1c2VfaW5pdF9pbiB7Ci0gdWludDMyX3QgbWFqb3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IG1pbm9yOwotIHVpbnQzMl90IG1heF9yZWFkYWhlYWQ7Ci0gdWludDMyX3QgZmxhZ3M7CisgIHVpbnQzMl90IG1ham9yOworICB1aW50MzJfdCBtaW5vcjsKKyAgdWludDMyX3QgbWF4X3JlYWRhaGVhZDsKKyAgdWludDMyX3QgZmxhZ3M7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZVU0VfQ09NUEFUX0lOSVRfT1VUX1NJWkUgOAorI2RlZmluZSBGVVNFX0NPTVBBVF8yMl9JTklUX09VVF9TSVpFIDI0CiBzdHJ1Y3QgZnVzZV9pbml0X291dCB7Ci0gdWludDMyX3QgbWFqb3I7Ci0gdWludDMyX3QgbWlub3I7Ci0gdWludDMyX3QgbWF4X3JlYWRhaGVhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZmxhZ3M7Ci0gdWludDE2X3QgbWF4X2JhY2tncm91bmQ7Ci0gdWludDE2X3QgY29uZ2VzdGlvbl90aHJlc2hvbGQ7Ci0gdWludDMyX3QgbWF4X3dyaXRlOworICB1aW50MzJfdCBtYWpvcjsKKyAgdWludDMyX3QgbWlub3I7CisgIHVpbnQzMl90IG1heF9yZWFkYWhlYWQ7CisgIHVpbnQzMl90IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDE2X3QgbWF4X2JhY2tncm91bmQ7CisgIHVpbnQxNl90IGNvbmdlc3Rpb25fdGhyZXNob2xkOworICB1aW50MzJfdCBtYXhfd3JpdGU7CisgIHVpbnQzMl90IHRpbWVfZ3JhbjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVpbnQzMl90IHVudXNlZFs5XTsKIH07CiAjZGVmaW5lIENVU0VfSU5JVF9JTkZPX01BWCA0MDk2CiBzdHJ1Y3QgY3VzZV9pbml0X2luIHsKLSB1aW50MzJfdCBtYWpvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgbWlub3I7Ci0gdWludDMyX3QgdW51c2VkOwotIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBtYWpvcjsKKyAgdWludDMyX3QgbWlub3I7CisgIHVpbnQzMl90IHVudXNlZDsKKyAgdWludDMyX3QgZmxhZ3M7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgY3VzZV9pbml0X291dCB7Ci0gdWludDMyX3QgbWFqb3I7Ci0gdWludDMyX3QgbWlub3I7Ci0gdWludDMyX3QgdW51c2VkOworICB1aW50MzJfdCBtYWpvcjsKKyAgdWludDMyX3QgbWlub3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGZsYWdzOwotIHVpbnQzMl90IG1heF9yZWFkOwotIHVpbnQzMl90IG1heF93cml0ZTsKLSB1aW50MzJfdCBkZXZfbWFqb3I7CisgIHVpbnQzMl90IHVudXNlZDsKKyAgdWludDMyX3QgZmxhZ3M7CisgIHVpbnQzMl90IG1heF9yZWFkOworICB1aW50MzJfdCBtYXhfd3JpdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGRldl9taW5vcjsKLSB1aW50MzJfdCBzcGFyZVsxMF07CisgIHVpbnQzMl90IGRldl9tYWpvcjsKKyAgdWludDMyX3QgZGV2X21pbm9yOworICB1aW50MzJfdCBzcGFyZVsxMF07CiB9Owotc3RydWN0IGZ1c2VfaW50ZXJydXB0X2luIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgdW5pcXVlOworc3RydWN0IGZ1c2VfaW50ZXJydXB0X2luIHsKKyAgdWludDY0X3QgdW5pcXVlOwogfTsKIHN0cnVjdCBmdXNlX2JtYXBfaW4gewotIHVpbnQ2NF90IGJsb2NrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBibG9ja3NpemU7Ci0gdWludDMyX3QgcGFkZGluZzsKKyAgdWludDY0X3QgYmxvY2s7CisgIHVpbnQzMl90IGJsb2Nrc2l6ZTsKKyAgdWludDMyX3QgcGFkZGluZzsKIH07Ci1zdHJ1Y3QgZnVzZV9ibWFwX291dCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGJsb2NrOworc3RydWN0IGZ1c2VfYm1hcF9vdXQgeworICB1aW50NjRfdCBibG9jazsKIH07CiBzdHJ1Y3QgZnVzZV9pb2N0bF9pbiB7Ci0gdWludDY0X3QgZmg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGZsYWdzOwotIHVpbnQzMl90IGNtZDsKLSB1aW50NjRfdCBhcmc7Ci0gdWludDMyX3QgaW5fc2l6ZTsKKyAgdWludDY0X3QgZmg7CisgIHVpbnQzMl90IGZsYWdzOworICB1aW50MzJfdCBjbWQ7CisgIHVpbnQ2NF90IGFyZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3Qgb3V0X3NpemU7CisgIHVpbnQzMl90IGluX3NpemU7CisgIHVpbnQzMl90IG91dF9zaXplOwogfTsKIHN0cnVjdCBmdXNlX2lvY3RsX2lvdmVjIHsKLSB1aW50NjRfdCBiYXNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBsZW47CisgIHVpbnQ2NF90IGJhc2U7CisgIHVpbnQ2NF90IGxlbjsKIH07CiBzdHJ1Y3QgZnVzZV9pb2N0bF9vdXQgewotIGludDMyX3QgcmVzdWx0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBmbGFnczsKLSB1aW50MzJfdCBpbl9pb3ZzOwotIHVpbnQzMl90IG91dF9pb3ZzOworICBpbnQzMl90IHJlc3VsdDsKKyAgdWludDMyX3QgZmxhZ3M7CisgIHVpbnQzMl90IGluX2lvdnM7CisgIHVpbnQzMl90IG91dF9pb3ZzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ1c2VfcG9sbF9pbiB7Ci0gdWludDY0X3QgZmg7Ci0gdWludDY0X3Qga2g7Ci0gdWludDMyX3QgZmxhZ3M7CisgIHVpbnQ2NF90IGZoOworICB1aW50NjRfdCBraDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZXZlbnRzOworICB1aW50MzJfdCBmbGFnczsKKyAgdWludDMyX3QgZXZlbnRzOwogfTsKIHN0cnVjdCBmdXNlX3BvbGxfb3V0IHsKLSB1aW50MzJfdCByZXZlbnRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBwYWRkaW5nOworICB1aW50MzJfdCByZXZlbnRzOworICB1aW50MzJfdCBwYWRkaW5nOwogfTsKIHN0cnVjdCBmdXNlX25vdGlmeV9wb2xsX3dha2V1cF9vdXQgewotIHVpbnQ2NF90IGtoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDY0X3Qga2g7CiB9Owogc3RydWN0IGZ1c2VfZmFsbG9jYXRlX2luIHsKLSB1aW50NjRfdCBmaDsKLSB1aW50NjRfdCBvZmZzZXQ7CisgIHVpbnQ2NF90IGZoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBsZW5ndGg7Ci0gdWludDMyX3QgbW9kZTsKLSB1aW50MzJfdCBwYWRkaW5nOworICB1aW50NjRfdCBvZmZzZXQ7CisgIHVpbnQ2NF90IGxlbmd0aDsKKyAgdWludDMyX3QgbW9kZTsKKyAgdWludDMyX3QgcGFkZGluZzsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmdXNlX2luX2hlYWRlciB7Ci0gdWludDMyX3QgbGVuOwotIHVpbnQzMl90IG9wY29kZTsKLSB1aW50NjRfdCB1bmlxdWU7CisgIHVpbnQzMl90IGxlbjsKKyAgdWludDMyX3Qgb3Bjb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBub2RlaWQ7Ci0gdWludDMyX3QgdWlkOwotIHVpbnQzMl90IGdpZDsKLSB1aW50MzJfdCBwaWQ7CisgIHVpbnQ2NF90IHVuaXF1ZTsKKyAgdWludDY0X3Qgbm9kZWlkOworICB1aW50MzJfdCB1aWQ7CisgIHVpbnQzMl90IGdpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcGFkZGluZzsKKyAgdWludDMyX3QgcGlkOworICB1aW50MzJfdCBwYWRkaW5nOwogfTsKIHN0cnVjdCBmdXNlX291dF9oZWFkZXIgewotIHVpbnQzMl90IGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50MzJfdCBlcnJvcjsKLSB1aW50NjRfdCB1bmlxdWU7CisgIHVpbnQzMl90IGxlbjsKKyAgaW50MzJfdCBlcnJvcjsKKyAgdWludDY0X3QgdW5pcXVlOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9kaXJlbnQgeworICB1aW50NjRfdCBpbm87CisgIHVpbnQ2NF90IG9mZjsKKyAgdWludDMyX3QgbmFtZWxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgaW5vOwotIHVpbnQ2NF90IG9mZjsKLSB1aW50MzJfdCBuYW1lbGVuOwotIHVpbnQzMl90IHR5cGU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVtdOworICB1aW50MzJfdCB0eXBlOworICBjaGFyIG5hbWVbXTsKIH07CiAjZGVmaW5lIEZVU0VfTkFNRV9PRkZTRVQgb2Zmc2V0b2Yoc3RydWN0IGZ1c2VfZGlyZW50LCBuYW1lKQotI2RlZmluZSBGVVNFX0RJUkVOVF9BTElHTih4KSAgICgoKHgpICsgc2l6ZW9mKHVpbnQ2NF90KSAtIDEpICYgfihzaXplb2YodWludDY0X3QpIC0gMSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBGVVNFX0RJUkVOVF9TSVpFKGQpICAgRlVTRV9ESVJFTlRfQUxJR04oRlVTRV9OQU1FX09GRlNFVCArIChkKS0+bmFtZWxlbikKKyNkZWZpbmUgRlVTRV9ESVJFTlRfQUxJR04oeCkgKCgoeCkgKyBzaXplb2YodWludDY0X3QpIC0gMSkgJiB+KHNpemVvZih1aW50NjRfdCkgLSAxKSkKKyNkZWZpbmUgRlVTRV9ESVJFTlRfU0laRShkKSBGVVNFX0RJUkVOVF9BTElHTihGVVNFX05BTUVfT0ZGU0VUICsgKGQpLT5uYW1lbGVuKQogc3RydWN0IGZ1c2VfZGlyZW50cGx1cyB7Ci0gc3RydWN0IGZ1c2VfZW50cnlfb3V0IGVudHJ5X291dDsKLSBzdHJ1Y3QgZnVzZV9kaXJlbnQgZGlyZW50OworICBzdHJ1Y3QgZnVzZV9lbnRyeV9vdXQgZW50cnlfb3V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGZ1c2VfZGlyZW50IGRpcmVudDsKIH07Ci0jZGVmaW5lIEZVU0VfTkFNRV9PRkZTRVRfRElSRU5UUExVUyAgIG9mZnNldG9mKHN0cnVjdCBmdXNlX2RpcmVudHBsdXMsIGRpcmVudC5uYW1lKQotI2RlZmluZSBGVVNFX0RJUkVOVFBMVVNfU0laRShkKSAgIEZVU0VfRElSRU5UX0FMSUdOKEZVU0VfTkFNRV9PRkZTRVRfRElSRU5UUExVUyArIChkKS0+ZGlyZW50Lm5hbWVsZW4pCisjZGVmaW5lIEZVU0VfTkFNRV9PRkZTRVRfRElSRU5UUExVUyBvZmZzZXRvZihzdHJ1Y3QgZnVzZV9kaXJlbnRwbHVzLCBkaXJlbnQubmFtZSkKKyNkZWZpbmUgRlVTRV9ESVJFTlRQTFVTX1NJWkUoZCkgRlVTRV9ESVJFTlRfQUxJR04oRlVTRV9OQU1FX09GRlNFVF9ESVJFTlRQTFVTICsgKGQpLT5kaXJlbnQubmFtZWxlbikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZnVzZV9ub3RpZnlfaW52YWxfaW5vZGVfb3V0IHsKKyAgdWludDY0X3QgaW5vOworICBpbnQ2NF90IG9mZjsKKyAgaW50NjRfdCBsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGlubzsKLSBpbnQ2NF90IG9mZjsKLSBpbnQ2NF90IGxlbjsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZ1c2Vfbm90aWZ5X2ludmFsX2VudHJ5X291dCB7Ci0gdWludDY0X3QgcGFyZW50OwotIHVpbnQzMl90IG5hbWVsZW47Ci0gdWludDMyX3QgcGFkZGluZzsKKyAgdWludDY0X3QgcGFyZW50OworICB1aW50MzJfdCBuYW1lbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDMyX3QgcGFkZGluZzsKIH07CiBzdHJ1Y3QgZnVzZV9ub3RpZnlfZGVsZXRlX291dCB7Ci0gdWludDY0X3QgcGFyZW50OwotIHVpbnQ2NF90IGNoaWxkOworICB1aW50NjRfdCBwYXJlbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IG5hbWVsZW47Ci0gdWludDMyX3QgcGFkZGluZzsKKyAgdWludDY0X3QgY2hpbGQ7CisgIHVpbnQzMl90IG5hbWVsZW47CisgIHVpbnQzMl90IHBhZGRpbmc7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmdXNlX25vdGlmeV9zdG9yZV9vdXQgeworICB1aW50NjRfdCBub2RlaWQ7CisgIHVpbnQ2NF90IG9mZnNldDsKKyAgdWludDMyX3Qgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3Qgbm9kZWlkOwotIHVpbnQ2NF90IG9mZnNldDsKLSB1aW50MzJfdCBzaXplOwotIHVpbnQzMl90IHBhZGRpbmc7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1aW50MzJfdCBwYWRkaW5nOwogfTsKIHN0cnVjdCBmdXNlX25vdGlmeV9yZXRyaWV2ZV9vdXQgewotIHVpbnQ2NF90IG5vdGlmeV91bmlxdWU7Ci0gdWludDY0X3Qgbm9kZWlkOworICB1aW50NjRfdCBub3RpZnlfdW5pcXVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBvZmZzZXQ7Ci0gdWludDMyX3Qgc2l6ZTsKLSB1aW50MzJfdCBwYWRkaW5nOworICB1aW50NjRfdCBub2RlaWQ7CisgIHVpbnQ2NF90IG9mZnNldDsKKyAgdWludDMyX3Qgc2l6ZTsKKyAgdWludDMyX3QgcGFkZGluZzsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmdXNlX25vdGlmeV9yZXRyaWV2ZV9pbiB7Ci0gdWludDY0X3QgZHVtbXkxOwotIHVpbnQ2NF90IG9mZnNldDsKLSB1aW50MzJfdCBzaXplOworICB1aW50NjRfdCBkdW1teTE7CisgIHVpbnQ2NF90IG9mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZHVtbXkyOwotIHVpbnQ2NF90IGR1bW15MzsKLSB1aW50NjRfdCBkdW1teTQ7CisgIHVpbnQzMl90IHNpemU7CisgIHVpbnQzMl90IGR1bW15MjsKKyAgdWludDY0X3QgZHVtbXkzOworICB1aW50NjRfdCBkdW1teTQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZnV0ZXguaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZnV0ZXguaAppbmRleCAzNzFjMGVhLi5lMDNiM2Y4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2Z1dGV4LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9mdXRleC5oCkBAIC01MywxNyArNTMsMTcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZVVEVYX1dBSVRfQklUU0VUX1BSSVZBVEUgKEZVVEVYX1dBSVRfQklUU0VUIHwgRlVURVhfUFJJVkFURV9GTEFHKQogI2RlZmluZSBGVVRFWF9XQUtFX0JJVFNFVF9QUklWQVRFIChGVVRFWF9XQUtFX0JJVFNFVCB8IEZVVEVYX1BSSVZBVEVfRkxBRykKLSNkZWZpbmUgRlVURVhfV0FJVF9SRVFVRVVFX1BJX1BSSVZBVEUgKEZVVEVYX1dBSVRfUkVRVUVVRV9QSSB8ICAgRlVURVhfUFJJVkFURV9GTEFHKQotI2RlZmluZSBGVVRFWF9DTVBfUkVRVUVVRV9QSV9QUklWQVRFIChGVVRFWF9DTVBfUkVRVUVVRV9QSSB8ICAgRlVURVhfUFJJVkFURV9GTEFHKQorI2RlZmluZSBGVVRFWF9XQUlUX1JFUVVFVUVfUElfUFJJVkFURSAoRlVURVhfV0FJVF9SRVFVRVVFX1BJIHwgRlVURVhfUFJJVkFURV9GTEFHKQorI2RlZmluZSBGVVRFWF9DTVBfUkVRVUVVRV9QSV9QUklWQVRFIChGVVRFWF9DTVBfUkVRVUVVRV9QSSB8IEZVVEVYX1BSSVZBVEVfRkxBRykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgcm9idXN0X2xpc3QgewotIHN0cnVjdCByb2J1c3RfbGlzdCBfX3VzZXIgKm5leHQ7CisgIHN0cnVjdCByb2J1c3RfbGlzdCBfX3VzZXIgKiBuZXh0OwogfTsKIHN0cnVjdCByb2J1c3RfbGlzdF9oZWFkIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHJvYnVzdF9saXN0IGxpc3Q7Ci0gbG9uZyBmdXRleF9vZmZzZXQ7Ci0gc3RydWN0IHJvYnVzdF9saXN0IF9fdXNlciAqbGlzdF9vcF9wZW5kaW5nOworICBzdHJ1Y3Qgcm9idXN0X2xpc3QgbGlzdDsKKyAgbG9uZyBmdXRleF9vZmZzZXQ7CisgIHN0cnVjdCByb2J1c3RfbGlzdCBfX3VzZXIgKiBsaXN0X29wX3BlbmRpbmc7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlVURVhfV0FJVEVSUyAweDgwMDAwMDAwCkBAIC04Nyw1ICs4Nyw1IEBACiAjZGVmaW5lIEZVVEVYX09QX0NNUF9HVCA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGVVRFWF9PUF9DTVBfR0UgNQotI2RlZmluZSBGVVRFWF9PUChvcCwgb3BhcmcsIGNtcCwgY21wYXJnKSAgICgoKG9wICYgMHhmKSA8PCAyOCkgfCAoKGNtcCAmIDB4ZikgPDwgMjQpICAgfCAoKG9wYXJnICYgMHhmZmYpIDw8IDEyKSB8IChjbXBhcmcgJiAweGZmZikpCisjZGVmaW5lIEZVVEVYX09QKG9wLG9wYXJnLGNtcCxjbXBhcmcpICgoKG9wICYgMHhmKSA8PCAyOCkgfCAoKGNtcCAmIDB4ZikgPDwgMjQpIHwgKChvcGFyZyAmIDB4ZmZmKSA8PCAxMikgfCAoY21wYXJnICYgMHhmZmYpKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2dlbl9zdGF0cy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9nZW5fc3RhdHMuaAppbmRleCBlMWNhNzNmLi45ZGM5YjMyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2dlbl9zdGF0cy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZ2VuX3N0YXRzLmgKQEAgLTIxLDQ5ICsyMSw0OSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1NUQVRTX1VOU1BFQywKLSBUQ0FfU1RBVFNfQkFTSUMsCi0gVENBX1NUQVRTX1JBVEVfRVNULAotIFRDQV9TVEFUU19RVUVVRSwKKyAgVENBX1NUQVRTX1VOU1BFQywKKyAgVENBX1NUQVRTX0JBU0lDLAorICBUQ0FfU1RBVFNfUkFURV9FU1QsCisgIFRDQV9TVEFUU19RVUVVRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1NUQVRTX0FQUCwKLSBUQ0FfU1RBVFNfUkFURV9FU1Q2NCwKLSBfX1RDQV9TVEFUU19NQVgsCisgIFRDQV9TVEFUU19BUFAsCisgIFRDQV9TVEFUU19SQVRFX0VTVDY0LAorICBfX1RDQV9TVEFUU19NQVgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX1NUQVRTX01BWCAoX19UQ0FfU1RBVFNfTUFYIC0gMSkKIHN0cnVjdCBnbmV0X3N0YXRzX2Jhc2ljIHsKLSBfX3U2NCBieXRlczsKLSBfX3UzMiBwYWNrZXRzOworICBfX3U2NCBieXRlczsKKyAgX191MzIgcGFja2V0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGduZXRfc3RhdHNfYmFzaWNfcGFja2VkIHsKLSBfX3U2NCBieXRlczsKLSBfX3UzMiBwYWNrZXRzOworICBfX3U2NCBieXRlczsKKyAgX191MzIgcGFja2V0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgZ25ldF9zdGF0c19yYXRlX2VzdCB7Ci0gX191MzIgYnBzOwotIF9fdTMyIHBwczsKKyAgX191MzIgYnBzOworICBfX3UzMiBwcHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBnbmV0X3N0YXRzX3JhdGVfZXN0NjQgewotIF9fdTY0IGJwczsKLSBfX3U2NCBwcHM7CisgIF9fdTY0IGJwczsKKyAgX191NjQgcHBzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZ25ldF9zdGF0c19xdWV1ZSB7Ci0gX191MzIgcWxlbjsKLSBfX3UzMiBiYWNrbG9nOworICBfX3UzMiBxbGVuOworICBfX3UzMiBiYWNrbG9nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkcm9wczsKLSBfX3UzMiByZXF1ZXVlczsKLSBfX3UzMiBvdmVybGltaXRzOworICBfX3UzMiBkcm9wczsKKyAgX191MzIgcmVxdWV1ZXM7CisgIF9fdTMyIG92ZXJsaW1pdHM7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBnbmV0X2VzdGltYXRvciB7Ci0gc2lnbmVkIGNoYXIgaW50ZXJ2YWw7Ci0gdW5zaWduZWQgY2hhciBld21hX2xvZzsKKyAgc2lnbmVkIGNoYXIgaW50ZXJ2YWw7CisgIHVuc2lnbmVkIGNoYXIgZXdtYV9sb2c7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9nZW5ldGxpbmsuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZ2VuZXRsaW5rLmgKaW5kZXggYzA2OWVmZC4uNWRhYTRhNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9nZW5ldGxpbmsuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2dlbmV0bGluay5oCkBAIC0yNiw5ICsyNiw5IEBACiAjZGVmaW5lIEdFTkxfTUFYX0lEIDEwMjMKIHN0cnVjdCBnZW5sbXNnaGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjbWQ7Ci0gX191OCB2ZXJzaW9uOwotIF9fdTE2IHJlc2VydmVkOworICBfX3U4IGNtZDsKKyAgX191OCB2ZXJzaW9uOworICBfX3UxNiByZXNlcnZlZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRU5MX0hEUkxFTiBOTE1TR19BTElHTihzaXplb2Yoc3RydWN0IGdlbmxtc2doZHIpKQpAQCAtNDMsNTIgKzQzLDUyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRU5MX0lEX1BNQ1JBSUQgKE5MTVNHX01JTl9UWVBFICsgMikKIGVudW0gewotIENUUkxfQ01EX1VOU1BFQywKLSBDVFJMX0NNRF9ORVdGQU1JTFksCisgIENUUkxfQ01EX1VOU1BFQywKKyAgQ1RSTF9DTURfTkVXRkFNSUxZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVFJMX0NNRF9ERUxGQU1JTFksCi0gQ1RSTF9DTURfR0VURkFNSUxZLAotIENUUkxfQ01EX05FV09QUywKLSBDVFJMX0NNRF9ERUxPUFMsCisgIENUUkxfQ01EX0RFTEZBTUlMWSwKKyAgQ1RSTF9DTURfR0VURkFNSUxZLAorICBDVFJMX0NNRF9ORVdPUFMsCisgIENUUkxfQ01EX0RFTE9QUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RSTF9DTURfR0VUT1BTLAotIENUUkxfQ01EX05FV01DQVNUX0dSUCwKLSBDVFJMX0NNRF9ERUxNQ0FTVF9HUlAsCi0gQ1RSTF9DTURfR0VUTUNBU1RfR1JQLAorICBDVFJMX0NNRF9HRVRPUFMsCisgIENUUkxfQ01EX05FV01DQVNUX0dSUCwKKyAgQ1RSTF9DTURfREVMTUNBU1RfR1JQLAorICBDVFJMX0NNRF9HRVRNQ0FTVF9HUlAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQ1RSTF9DTURfTUFYLAorICBfX0NUUkxfQ01EX01BWCwKIH07CiAjZGVmaW5lIENUUkxfQ01EX01BWCAoX19DVFJMX0NNRF9NQVggLSAxKQogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUUkxfQVRUUl9VTlNQRUMsCi0gQ1RSTF9BVFRSX0ZBTUlMWV9JRCwKLSBDVFJMX0FUVFJfRkFNSUxZX05BTUUsCi0gQ1RSTF9BVFRSX1ZFUlNJT04sCisgIENUUkxfQVRUUl9VTlNQRUMsCisgIENUUkxfQVRUUl9GQU1JTFlfSUQsCisgIENUUkxfQVRUUl9GQU1JTFlfTkFNRSwKKyAgQ1RSTF9BVFRSX1ZFUlNJT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUUkxfQVRUUl9IRFJTSVpFLAotIENUUkxfQVRUUl9NQVhBVFRSLAotIENUUkxfQVRUUl9PUFMsCi0gQ1RSTF9BVFRSX01DQVNUX0dST1VQUywKKyAgQ1RSTF9BVFRSX0hEUlNJWkUsCisgIENUUkxfQVRUUl9NQVhBVFRSLAorICBDVFJMX0FUVFJfT1BTLAorICBDVFJMX0FUVFJfTUNBU1RfR1JPVVBTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUUkxfQVRUUl9NQVgsCisgIF9fQ1RSTF9BVFRSX01BWCwKIH07CiAjZGVmaW5lIENUUkxfQVRUUl9NQVggKF9fQ1RSTF9BVFRSX01BWCAtIDEpCiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RSTF9BVFRSX09QX1VOU1BFQywKLSBDVFJMX0FUVFJfT1BfSUQsCi0gQ1RSTF9BVFRSX09QX0ZMQUdTLAotIF9fQ1RSTF9BVFRSX09QX01BWCwKKyAgQ1RSTF9BVFRSX09QX1VOU1BFQywKKyAgQ1RSTF9BVFRSX09QX0lELAorICBDVFJMX0FUVFJfT1BfRkxBR1MsCisgIF9fQ1RSTF9BVFRSX09QX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBDVFJMX0FUVFJfT1BfTUFYIChfX0NUUkxfQVRUUl9PUF9NQVggLSAxKQogZW51bSB7Ci0gQ1RSTF9BVFRSX01DQVNUX0dSUF9VTlNQRUMsCisgIENUUkxfQVRUUl9NQ0FTVF9HUlBfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVFJMX0FUVFJfTUNBU1RfR1JQX05BTUUsCi0gQ1RSTF9BVFRSX01DQVNUX0dSUF9JRCwKLSBfX0NUUkxfQVRUUl9NQ0FTVF9HUlBfTUFYLAorICBDVFJMX0FUVFJfTUNBU1RfR1JQX05BTUUsCisgIENUUkxfQVRUUl9NQ0FTVF9HUlBfSUQsCisgIF9fQ1RSTF9BVFRSX01DQVNUX0dSUF9NQVgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RSTF9BVFRSX01DQVNUX0dSUF9NQVggKF9fQ1RSTF9BVFRSX01DQVNUX0dSUF9NQVggLSAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9nZW53cWUvZ2Vud3FlX2NhcmQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZ2Vud3FlL2dlbndxZV9jYXJkLmgKaW5kZXggYzgzMWNmYy4uYzljMTE4NiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9nZW53cWUvZ2Vud3FlX2NhcmQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2dlbndxZS9nZW53cWVfY2FyZC5oCkBAIC0zOSw3ICszOSw3IEBACiAjZGVmaW5lIElPX0VYVEVOREVEX0RJQUdfU0VMRUNUT1IgMHgwMDAwMDA3MAogI2RlZmluZSBJT19FWFRFTkRFRF9ESUFHX1JFQURfTUJYIDB4MDAwMDAwNzgKICNkZWZpbmUgSU9fRVhURU5ERURfRElBR19NQVAocmluZykgKDB4MDAwMDA1MDAgfCAoKHJpbmcpIDw8IDMpKQotI2RlZmluZSBHRU5XUUVfRVhURU5ERURfRElBR19TRUxFQ1RPUihyaW5nLCB0cmFjZSkgKCgocmluZykgPDwgOCkgfCAodHJhY2UpKQorI2RlZmluZSBHRU5XUUVfRVhURU5ERURfRElBR19TRUxFQ1RPUihyaW5nLHRyYWNlKSAoKChyaW5nKSA8PCA4KSB8ICh0cmFjZSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJT19TTFVfVU5JVENGRyAweDAwMDAwMDAwCiAjZGVmaW5lIElPX1NMVV9VTklUQ0ZHX1RZUEVfTUFTSyAweDAwMDAwMDAwMGZmMDAwMDAKQEAgLTk0LDExICs5NCwxMSBAQAogI2RlZmluZSBJT19TTENfVkZfRlJFRV9SVU5OSU5HX1RJTUVSIDB4MDAwNTAxMDgKICNkZWZpbmUgSU9fUEZfU0xDX1ZJUlRVQUxfUkVHSU9OIDB4MDAwNTAwMDAKICNkZWZpbmUgSU9fUEZfU0xDX1ZJUlRVQUxfV0lORE9XIDB4MDAwNjAwMDAKLSNkZWZpbmUgSU9fUEZfU0xDX0pPQlBFTkQobikgKDB4MDAwNjEwMDAgKyA4KihuKSkKKyNkZWZpbmUgSU9fUEZfU0xDX0pPQlBFTkQobikgKDB4MDAwNjEwMDAgKyA4ICogKG4pKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSU9fU0xDX0pPQlBFTkQobikgSU9fUEZfU0xDX0pPQlBFTkQobikKLSNkZWZpbmUgSU9fU0xVX1NMQ19QQVJTRV9UUkFQKG4pICgweDAwMDExMDAwICsgOCoobikpCi0jZGVmaW5lIElPX1NMVV9TTENfRElTUF9UUkFQKG4pICgweDAwMDExMjAwICsgOCoobikpCisjZGVmaW5lIElPX1NMVV9TTENfUEFSU0VfVFJBUChuKSAoMHgwMDAxMTAwMCArIDggKiAobikpCisjZGVmaW5lIElPX1NMVV9TTENfRElTUF9UUkFQKG4pICgweDAwMDExMjAwICsgOCAqIChuKSkKICNkZWZpbmUgSU9fU0xDX0NGR1JFR19HRklSIDB4MDAwMjAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdGSVJfRVJSX1RSSUdHRVIgMHgwMDAwZmZmZgpAQCAtMTc3LDggKzE3Nyw4IEBACiAjZGVmaW5lIElPX0FQUF9ERUJVR19SRUdfMTggMHgwMjAxMDA4OAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBnZW53cWVfcmVnX2lvIHsKLSBfX3U2NCBudW07Ci0gX191NjQgdmFsNjQ7CisgIF9fdTY0IG51bTsKKyAgX191NjQgdmFsNjQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSU9fSUxMRUdBTF9WQUxVRSAweGZmZmZmZmZmZmZmZmZmZmZ1bGwKQEAgLTIyNCwxMDggKzIyNCwxMTAgQEAKICNkZWZpbmUgU0xDTURfTU9WRV9GTEFTSF9GTEFHX1BBUlRJVElPTiAoMSA8PCA0KQogI2RlZmluZSBTTENNRF9NT1ZFX0ZMQVNIX0ZMQUdfRVJBU0UgKDEgPDwgNSkKIGVudW0gZ2Vud3FlX2NhcmRfc3RhdGUgewotIEdFTldRRV9DQVJEX1VOVVNFRCA9IDAsCisgIEdFTldRRV9DQVJEX1VOVVNFRCA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEdFTldRRV9DQVJEX1VTRUQgPSAxLAotIEdFTldRRV9DQVJEX0ZBVEFMX0VSUk9SID0gMiwKLSBHRU5XUUVfQ0FSRF9TVEFURV9NQVgsCisgIEdFTldRRV9DQVJEX1VTRUQgPSAxLAorICBHRU5XUUVfQ0FSRF9GQVRBTF9FUlJPUiA9IDIsCisgIEdFTldRRV9DQVJEX1JFTE9BRF9CSVRTVFJFQU0gPSAzLAorICBHRU5XUUVfQ0FSRF9TVEFURV9NQVgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZ2Vud3FlX2JpdHN0cmVhbSB7Ci0gX191NjQgZGF0YV9hZGRyOwotIF9fdTMyIHNpemU7Ci0gX191MzIgY3JjOworICBfX3U2NCBkYXRhX2FkZHI7CisgIF9fdTMyIHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHRhcmdldF9hZGRyOwotIF9fdTMyIHBhcnRpdGlvbjsKLSBfX3UzMiB1aWQ7Ci0gX191NjQgc2x1X2lkOworICBfX3UzMiBjcmM7CisgIF9fdTY0IHRhcmdldF9hZGRyOworICBfX3UzMiBwYXJ0aXRpb247CisgIF9fdTMyIHVpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYXBwX2lkOwotIF9fdTE2IHJldGM7Ci0gX191MTYgYXR0bjsKLSBfX3UzMiBwcm9ncmVzczsKKyAgX191NjQgc2x1X2lkOworICBfX3U2NCBhcHBfaWQ7CisgIF9fdTE2IHJldGM7CisgIF9fdTE2IGF0dG47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBwcm9ncmVzczsKIH07CiAjZGVmaW5lIEREQ0JfTEVOR1RIIDI1NgogI2RlZmluZSBERENCX0FTSVZfTEVOR1RIIDEwNAotI2RlZmluZSBERENCX0FTSVZfTEVOR1RIX0FUUyA5NgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRERDQl9BU0lWX0xFTkdUSF9BVFMgOTYKICNkZWZpbmUgRERDQl9BU1ZfTEVOR1RIIDY0CiAjZGVmaW5lIEREQ0JfRklYVVBTIDEyCiBzdHJ1Y3QgZ2Vud3FlX2RlYnVnX2RhdGEgewotIGNoYXIgZHJpdmVyX3ZlcnNpb25bNjRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzbHVfdW5pdGNmZzsKLSBfX3U2NCBhcHBfdW5pdGNmZzsKLSBfX3U4IGRkY2JfYmVmb3JlW0REQ0JfTEVOR1RIXTsKLSBfX3U4IGRkY2JfcHJldltERENCX0xFTkdUSF07CisgIGNoYXIgZHJpdmVyX3ZlcnNpb25bNjRdOworICBfX3U2NCBzbHVfdW5pdGNmZzsKKyAgX191NjQgYXBwX3VuaXRjZmc7CisgIF9fdTggZGRjYl9iZWZvcmVbRERDQl9MRU5HVEhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRkY2JfZmluaXNoZWRbRERDQl9MRU5HVEhdOworICBfX3U4IGRkY2JfcHJldltERENCX0xFTkdUSF07CisgIF9fdTggZGRjYl9maW5pc2hlZFtERENCX0xFTkdUSF07CiB9OwogI2RlZmluZSBBVFNfVFlQRV9EQVRBIDB4MHVsbAotI2RlZmluZSBBVFNfVFlQRV9GTEFUX1JEIDB4NHVsbAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQVRTX1RZUEVfRkxBVF9SRCAweDR1bGwKICNkZWZpbmUgQVRTX1RZUEVfRkxBVF9SRFdSIDB4NXVsbAogI2RlZmluZSBBVFNfVFlQRV9TR0xfUkQgMHg2dWxsCiAjZGVmaW5lIEFUU19UWVBFX1NHTF9SRFdSIDB4N3VsbAotI2RlZmluZSBBVFNfU0VUX0ZMQUdTKF9zdHJ1Y3QsIF9maWVsZCwgX2ZsYWdzKSAgICgoKF9mbGFncykgJiAweGYpIDw8ICg0NCAtICg0ICogKG9mZnNldG9mKF9zdHJ1Y3QsIF9maWVsZCkgLyA4KSkpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQVRTX0dFVF9GTEFHUyhfYXRzLCBfYnl0ZV9vZmZzKSAgICgoKF9hdHMpID4+ICg0NCAtICg0ICogKChfYnl0ZV9vZmZzKSAvIDgpKSkpICYgMHhmKQorI2RlZmluZSBBVFNfU0VUX0ZMQUdTKF9zdHJ1Y3QsX2ZpZWxkLF9mbGFncykgKCgoX2ZsYWdzKSAmIDB4ZikgPDwgKDQ0IC0gKDQgKiAob2Zmc2V0b2YoX3N0cnVjdCwgX2ZpZWxkKSAvIDgpKSkpCisjZGVmaW5lIEFUU19HRVRfRkxBR1MoX2F0cyxfYnl0ZV9vZmZzKSAoKChfYXRzKSA+PiAoNDQgLSAoNCAqICgoX2J5dGVfb2ZmcykgLyA4KSkpKSAmIDB4ZikKIHN0cnVjdCBnZW53cWVfZGRjYl9jbWQgewotIF9fdTY0IG5leHRfYWRkcjsKLSBfX3U2NCBmbGFnczsKKyAgX191NjQgbmV4dF9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGFjZnVuYzsKLSBfX3U4IGNtZDsKLSBfX3U4IGFzaXZfbGVuZ3RoOwotIF9fdTggYXN2X2xlbmd0aDsKKyAgX191NjQgZmxhZ3M7CisgIF9fdTggYWNmdW5jOworICBfX3U4IGNtZDsKKyAgX191OCBhc2l2X2xlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgY21kb3B0czsKLSBfX3UxNiByZXRjOwotIF9fdTE2IGF0dG47Ci0gX191MTYgdmNyYzsKKyAgX191OCBhc3ZfbGVuZ3RoOworICBfX3UxNiBjbWRvcHRzOworICBfX3UxNiByZXRjOworICBfX3UxNiBhdHRuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwcm9ncmVzczsKLSBfX3U2NCBkZXF1ZV90czsKLSBfX3U2NCBjbXBsdF90czsKLSBfX3U2NCBkaXNwX3RzOworICBfX3UxNiB2Y3JjOworICBfX3UzMiBwcm9ncmVzczsKKyAgX191NjQgZGVxdWVfdHM7CisgIF9fdTY0IGNtcGx0X3RzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkZGF0YV9hZGRyOwotIF9fdTggYXN2W0REQ0JfQVNWX0xFTkdUSF07Ci0gdW5pb24gewotIHN0cnVjdCB7CisgIF9fdTY0IGRpc3BfdHM7CisgIF9fdTY0IGRkYXRhX2FkZHI7CisgIF9fdTggYXN2W0REQ0JfQVNWX0xFTkdUSF07CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYXRzOwotIF9fdTggYXNpdltERENCX0FTSVZfTEVOR1RIX0FUU107Ci0gfTsKLSBfX3U4IF9fYXNpdltERENCX0FTSVZfTEVOR1RIXTsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgYXRzOworICAgICAgX191OCBhc2l2W0REQ0JfQVNJVl9MRU5HVEhfQVRTXTsKKyAgICB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OworICAgIF9fdTggX19hc2l2W0REQ0JfQVNJVl9MRU5HVEhdOworICB9OwogfTsKICNkZWZpbmUgR0VOV1FFX0lPQ19DT0RFIDB4YTUKLSNkZWZpbmUgR0VOV1FFX1JFQURfUkVHNjQgX0lPUihHRU5XUUVfSU9DX0NPREUsIDMwLCBzdHJ1Y3QgZ2Vud3FlX3JlZ19pbykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEdFTldRRV9SRUFEX1JFRzY0IF9JT1IoR0VOV1FFX0lPQ19DT0RFLCAzMCwgc3RydWN0IGdlbndxZV9yZWdfaW8pCiAjZGVmaW5lIEdFTldRRV9XUklURV9SRUc2NCBfSU9XKEdFTldRRV9JT0NfQ09ERSwgMzEsIHN0cnVjdCBnZW53cWVfcmVnX2lvKQogI2RlZmluZSBHRU5XUUVfUkVBRF9SRUczMiBfSU9SKEdFTldRRV9JT0NfQ09ERSwgMzIsIHN0cnVjdCBnZW53cWVfcmVnX2lvKQogI2RlZmluZSBHRU5XUUVfV1JJVEVfUkVHMzIgX0lPVyhHRU5XUUVfSU9DX0NPREUsIDMzLCBzdHJ1Y3QgZ2Vud3FlX3JlZ19pbykKLSNkZWZpbmUgR0VOV1FFX1JFQURfUkVHMTYgX0lPUihHRU5XUUVfSU9DX0NPREUsIDM0LCBzdHJ1Y3QgZ2Vud3FlX3JlZ19pbykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEdFTldRRV9SRUFEX1JFRzE2IF9JT1IoR0VOV1FFX0lPQ19DT0RFLCAzNCwgc3RydWN0IGdlbndxZV9yZWdfaW8pCiAjZGVmaW5lIEdFTldRRV9XUklURV9SRUcxNiBfSU9XKEdFTldRRV9JT0NfQ09ERSwgMzUsIHN0cnVjdCBnZW53cWVfcmVnX2lvKQogI2RlZmluZSBHRU5XUUVfR0VUX0NBUkRfU1RBVEUgX0lPUihHRU5XUUVfSU9DX0NPREUsIDM2LCBlbnVtIGdlbndxZV9jYXJkX3N0YXRlKQogc3RydWN0IGdlbndxZV9tZW0gewotIF9fdTY0IGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNpemU7Ci0gX191NjQgZGlyZWN0aW9uOwotIF9fdTY0IGZsYWdzOworICBfX3U2NCBhZGRyOworICBfX3U2NCBzaXplOworICBfX3U2NCBkaXJlY3Rpb247CisgIF9fdTY0IGZsYWdzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRU5XUUVfUElOX01FTSBfSU9XUihHRU5XUUVfSU9DX0NPREUsIDQwLCBzdHJ1Y3QgZ2Vud3FlX21lbSkKICNkZWZpbmUgR0VOV1FFX1VOUElOX01FTSBfSU9XUihHRU5XUUVfSU9DX0NPREUsIDQxLCBzdHJ1Y3QgZ2Vud3FlX21lbSkKLSNkZWZpbmUgR0VOV1FFX0VYRUNVVEVfRERDQiAgIF9JT1dSKEdFTldRRV9JT0NfQ09ERSwgNTAsIHN0cnVjdCBnZW53cWVfZGRjYl9jbWQpCi0jZGVmaW5lIEdFTldRRV9FWEVDVVRFX1JBV19ERENCICAgX0lPV1IoR0VOV1FFX0lPQ19DT0RFLCA1MSwgc3RydWN0IGdlbndxZV9kZGNiX2NtZCkKKyNkZWZpbmUgR0VOV1FFX0VYRUNVVEVfRERDQiBfSU9XUihHRU5XUUVfSU9DX0NPREUsIDUwLCBzdHJ1Y3QgZ2Vud3FlX2RkY2JfY21kKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgR0VOV1FFX0VYRUNVVEVfUkFXX0REQ0IgX0lPV1IoR0VOV1FFX0lPQ19DT0RFLCA1MSwgc3RydWN0IGdlbndxZV9kZGNiX2NtZCkKICNkZWZpbmUgR0VOV1FFX1NMVV9VUERBVEUgX0lPV1IoR0VOV1FFX0lPQ19DT0RFLCA4MCwgc3RydWN0IGdlbndxZV9iaXRzdHJlYW0pCiAjZGVmaW5lIEdFTldRRV9TTFVfUkVBRCBfSU9XUihHRU5XUUVfSU9DX0NPREUsIDgxLCBzdHJ1Y3QgZ2Vud3FlX2JpdHN0cmVhbSkKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvZ2ZzMl9vbmRpc2suaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvZ2ZzMl9vbmRpc2suaAppbmRleCBhMzEwNmJhLi5mY2I1OTkzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2dmczJfb25kaXNrLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9nZnMyX29uZGlzay5oCkBAIC0yNiw3ICsyNiw3IEBACiAjZGVmaW5lIEdGUzJfTU9VTlRfTE9DSyAwCiAjZGVmaW5lIEdGUzJfTElWRV9MT0NLIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEdGUzJfVFJBTlNfTE9DSyAyCisjZGVmaW5lIEdGUzJfRlJFRVpFX0xPQ0sgMgogI2RlZmluZSBHRlMyX1JFTkFNRV9MT0NLIDMKICNkZWZpbmUgR0ZTMl9DT05UUk9MX0xPQ0sgNAogI2RlZmluZSBHRlMyX01PVU5URURfTE9DSyA1CkBAIC01Niw4ICs1Niw4IEBACiAjZGVmaW5lIEdGUzJfRk9STUFUX01VTFRJIDE5MDAKIHN0cnVjdCBnZnMyX2ludW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlNjQgbm9fZm9ybWFsX2lubzsKLSBfX2JlNjQgbm9fYWRkcjsKKyAgX19iZTY0IG5vX2Zvcm1hbF9pbm87CisgIF9fYmU2NCBub19hZGRyOwogfTsKICNkZWZpbmUgR0ZTMl9NRVRBVFlQRV9OT05FIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC03OCw1MyArNzgsNTMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdGUzJfTUVUQVRZUEVfUUMgMTQKIHN0cnVjdCBnZnMyX21ldGFfaGVhZGVyIHsKLSBfX2JlMzIgbWhfbWFnaWM7Ci0gX19iZTMyIG1oX3R5cGU7CisgIF9fYmUzMiBtaF9tYWdpYzsKKyAgX19iZTMyIG1oX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmU2NCBfX3BhZDA7Ci0gX19iZTMyIG1oX2Zvcm1hdDsKLSB1bmlvbiB7Ci0gX19iZTMyIG1oX2ppZDsKKyAgX19iZTY0IF9fcGFkMDsKKyAgX19iZTMyIG1oX2Zvcm1hdDsKKyAgdW5pb24geworICAgIF9fYmUzMiBtaF9qaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBfX3BhZDE7Ci0gfTsKKyAgICBfX2JlMzIgX19wYWQxOworICB9OwogfTsKICNkZWZpbmUgR0ZTMl9TQl9BRERSIDEyOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR0ZTMl9TQl9MT0NLIDAKICNkZWZpbmUgR0ZTMl9MT0NLTkFNRV9MRU4gNjQKIHN0cnVjdCBnZnMyX3NiIHsKLSBzdHJ1Y3QgZ2ZzMl9tZXRhX2hlYWRlciBzYl9oZWFkZXI7CisgIHN0cnVjdCBnZnMyX21ldGFfaGVhZGVyIHNiX2hlYWRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHNiX2ZzX2Zvcm1hdDsKLSBfX2JlMzIgc2JfbXVsdGlob3N0X2Zvcm1hdDsKLSBfX3UzMiBfX3BhZDA7Ci0gX19iZTMyIHNiX2JzaXplOworICBfX2JlMzIgc2JfZnNfZm9ybWF0OworICBfX2JlMzIgc2JfbXVsdGlob3N0X2Zvcm1hdDsKKyAgX191MzIgX19wYWQwOworICBfX2JlMzIgc2JfYnNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBzYl9ic2l6ZV9zaGlmdDsKLSBfX3UzMiBfX3BhZDE7Ci0gc3RydWN0IGdmczJfaW51bSBzYl9tYXN0ZXJfZGlyOwotIHN0cnVjdCBnZnMyX2ludW0gX19wYWQyOworICBfX2JlMzIgc2JfYnNpemVfc2hpZnQ7CisgIF9fdTMyIF9fcGFkMTsKKyAgc3RydWN0IGdmczJfaW51bSBzYl9tYXN0ZXJfZGlyOworICBzdHJ1Y3QgZ2ZzMl9pbnVtIF9fcGFkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGdmczJfaW51bSBzYl9yb290X2RpcjsKLSBjaGFyIHNiX2xvY2twcm90b1tHRlMyX0xPQ0tOQU1FX0xFTl07Ci0gY2hhciBzYl9sb2NrdGFibGVbR0ZTMl9MT0NLTkFNRV9MRU5dOwotIHN0cnVjdCBnZnMyX2ludW0gX19wYWQzOworICBzdHJ1Y3QgZ2ZzMl9pbnVtIHNiX3Jvb3RfZGlyOworICBjaGFyIHNiX2xvY2twcm90b1tHRlMyX0xPQ0tOQU1FX0xFTl07CisgIGNoYXIgc2JfbG9ja3RhYmxlW0dGUzJfTE9DS05BTUVfTEVOXTsKKyAgc3RydWN0IGdmczJfaW51bSBfX3BhZDM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBnZnMyX2ludW0gX19wYWQ0OworICBzdHJ1Y3QgZ2ZzMl9pbnVtIF9fcGFkNDsKICNkZWZpbmUgR0ZTMl9IQVNfVVVJRCAxCi0gX191OCBzYl91dWlkWzE2XTsKKyAgX191OCBzYl91dWlkWzE2XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGdmczJfcmluZGV4IHsKLSBfX2JlNjQgcmlfYWRkcjsKLSBfX2JlMzIgcmlfbGVuZ3RoOwotIF9fdTMyIF9fcGFkOworICBfX2JlNjQgcmlfYWRkcjsKKyAgX19iZTMyIHJpX2xlbmd0aDsKKyAgX191MzIgX19wYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmU2NCByaV9kYXRhMDsKLSBfX2JlMzIgcmlfZGF0YTsKLSBfX2JlMzIgcmlfYml0Ynl0ZXM7Ci0gX191OCByaV9yZXNlcnZlZFs2NF07CisgIF9fYmU2NCByaV9kYXRhMDsKKyAgX19iZTMyIHJpX2RhdGE7CisgIF9fYmUzMiByaV9iaXRieXRlczsKKyAgX191OCByaV9yZXNlcnZlZFs2NF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgR0ZTMl9OQkJZIDQKQEAgLTE0MywzMyArMTQzLDMzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRlMyX1JHRl9UUklNTUVEIDB4MDAwMDAwMTAKIHN0cnVjdCBnZnMyX3JncnBfbHZiIHsKLSBfX2JlMzIgcmxfbWFnaWM7Ci0gX19iZTMyIHJsX2ZsYWdzOworICBfX2JlMzIgcmxfbWFnaWM7CisgIF9fYmUzMiBybF9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHJsX2ZyZWU7Ci0gX19iZTMyIHJsX2Rpbm9kZXM7Ci0gX19iZTY0IHJsX2lnZW5lcmF0aW9uOwotIF9fYmUzMiBybF91bmxpbmtlZDsKKyAgX19iZTMyIHJsX2ZyZWU7CisgIF9fYmUzMiBybF9kaW5vZGVzOworICBfX2JlNjQgcmxfaWdlbmVyYXRpb247CisgIF9fYmUzMiBybF91bmxpbmtlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIF9fcGFkOworICBfX2JlMzIgX19wYWQ7CiB9Owogc3RydWN0IGdmczJfcmdycCB7Ci0gc3RydWN0IGdmczJfbWV0YV9oZWFkZXIgcmdfaGVhZGVyOworICBzdHJ1Y3QgZ2ZzMl9tZXRhX2hlYWRlciByZ19oZWFkZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiByZ19mbGFnczsKLSBfX2JlMzIgcmdfZnJlZTsKLSBfX2JlMzIgcmdfZGlub2RlczsKLSBfX2JlMzIgX19wYWQ7CisgIF9fYmUzMiByZ19mbGFnczsKKyAgX19iZTMyIHJnX2ZyZWU7CisgIF9fYmUzMiByZ19kaW5vZGVzOworICBfX2JlMzIgX19wYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmU2NCByZ19pZ2VuZXJhdGlvbjsKLSBfX3U4IHJnX3Jlc2VydmVkWzgwXTsKKyAgX19iZTY0IHJnX2lnZW5lcmF0aW9uOworICBfX3U4IHJnX3Jlc2VydmVkWzgwXTsKIH07CiBzdHJ1Y3QgZ2ZzMl9xdW90YSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmU2NCBxdV9saW1pdDsKLSBfX2JlNjQgcXVfd2FybjsKLSBfX2JlNjQgcXVfdmFsdWU7Ci0gX191OCBxdV9yZXNlcnZlZFs2NF07CisgIF9fYmU2NCBxdV9saW1pdDsKKyAgX19iZTY0IHF1X3dhcm47CisgIF9fYmU2NCBxdV92YWx1ZTsKKyAgX191OCBxdV9yZXNlcnZlZFs2NF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgR0ZTMl9NQVhfTUVUQV9IRUlHSFQgMTAKQEAgLTE3OCwyMyArMTc4LDIzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRjJEVChzaWYpICgoKHNpZikgJiBTX0lGTVQpID4+IDEyKQogZW51bSB7Ci0gZ2ZzMmZsX0pkYXRhID0gMCwKLSBnZnMyZmxfRXhIYXNoID0gMSwKKyAgZ2ZzMmZsX0pkYXRhID0gMCwKKyAgZ2ZzMmZsX0V4SGFzaCA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGdmczJmbF9VbnVzZWQgPSAyLAotIGdmczJmbF9FYUluZGlyZWN0ID0gMywKLSBnZnMyZmxfRGlyZWN0aW8gPSA0LAotIGdmczJmbF9JbW11dGFibGUgPSA1LAorICBnZnMyZmxfVW51c2VkID0gMiwKKyAgZ2ZzMmZsX0VhSW5kaXJlY3QgPSAzLAorICBnZnMyZmxfRGlyZWN0aW8gPSA0LAorICBnZnMyZmxfSW1tdXRhYmxlID0gNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZ2ZzMmZsX0FwcGVuZE9ubHkgPSA2LAotIGdmczJmbF9Ob0F0aW1lID0gNywKLSBnZnMyZmxfU3luYyA9IDgsCi0gZ2ZzMmZsX1N5c3RlbSA9IDksCisgIGdmczJmbF9BcHBlbmRPbmx5ID0gNiwKKyAgZ2ZzMmZsX05vQXRpbWUgPSA3LAorICBnZnMyZmxfU3luYyA9IDgsCisgIGdmczJmbF9TeXN0ZW0gPSA5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBnZnMyZmxfVG9wTGV2ZWwgPSAxMCwKLSBnZnMyZmxfVHJ1bmNJblByb2cgPSAyOSwKLSBnZnMyZmxfSW5oZXJpdERpcmVjdGlvID0gMzAsCi0gZ2ZzMmZsX0luaGVyaXRKZGF0YSA9IDMxLAorICBnZnMyZmxfVG9wTGV2ZWwgPSAxMCwKKyAgZ2ZzMmZsX1RydW5jSW5Qcm9nID0gMjksCisgIGdmczJmbF9Jbmhlcml0RGlyZWN0aW8gPSAzMCwKKyAgZ2ZzMmZsX0luaGVyaXRKZGF0YSA9IDMxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEdGUzJfRElGX0pEQVRBIDB4MDAwMDAwMDEKQEAgLTIxNiwxNTMgKzIxNiwxNjAgQEAKICNkZWZpbmUgR0ZTMl9ESUZfSU5IRVJJVF9KREFUQSAweDgwMDAwMDAwCiBzdHJ1Y3QgZ2ZzMl9kaW5vZGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZ2ZzMl9tZXRhX2hlYWRlciBkaV9oZWFkZXI7Ci0gc3RydWN0IGdmczJfaW51bSBkaV9udW07Ci0gX19iZTMyIGRpX21vZGU7Ci0gX19iZTMyIGRpX3VpZDsKKyAgc3RydWN0IGdmczJfbWV0YV9oZWFkZXIgZGlfaGVhZGVyOworICBzdHJ1Y3QgZ2ZzMl9pbnVtIGRpX251bTsKKyAgX19iZTMyIGRpX21vZGU7CisgIF9fYmUzMiBkaV91aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBkaV9naWQ7Ci0gX19iZTMyIGRpX25saW5rOwotIF9fYmU2NCBkaV9zaXplOwotIF9fYmU2NCBkaV9ibG9ja3M7CisgIF9fYmUzMiBkaV9naWQ7CisgIF9fYmUzMiBkaV9ubGluazsKKyAgX19iZTY0IGRpX3NpemU7CisgIF9fYmU2NCBkaV9ibG9ja3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmU2NCBkaV9hdGltZTsKLSBfX2JlNjQgZGlfbXRpbWU7Ci0gX19iZTY0IGRpX2N0aW1lOwotIF9fYmUzMiBkaV9tYWpvcjsKKyAgX19iZTY0IGRpX2F0aW1lOworICBfX2JlNjQgZGlfbXRpbWU7CisgIF9fYmU2NCBkaV9jdGltZTsKKyAgX19iZTMyIGRpX21ham9yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgZGlfbWlub3I7Ci0gX19iZTY0IGRpX2dvYWxfbWV0YTsKLSBfX2JlNjQgZGlfZ29hbF9kYXRhOwotIF9fYmU2NCBkaV9nZW5lcmF0aW9uOworICBfX2JlMzIgZGlfbWlub3I7CisgIF9fYmU2NCBkaV9nb2FsX21ldGE7CisgIF9fYmU2NCBkaV9nb2FsX2RhdGE7CisgIF9fYmU2NCBkaV9nZW5lcmF0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgZGlfZmxhZ3M7Ci0gX19iZTMyIGRpX3BheWxvYWRfZm9ybWF0OwotIF9fdTE2IF9fcGFkMTsKLSBfX2JlMTYgZGlfaGVpZ2h0OworICBfX2JlMzIgZGlfZmxhZ3M7CisgIF9fYmUzMiBkaV9wYXlsb2FkX2Zvcm1hdDsKKyAgX191MTYgX19wYWQxOworICBfX2JlMTYgZGlfaGVpZ2h0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBfX3BhZDI7Ci0gX191MTYgX19wYWQzOwotIF9fYmUxNiBkaV9kZXB0aDsKLSBfX2JlMzIgZGlfZW50cmllczsKKyAgX191MzIgX19wYWQyOworICBfX3UxNiBfX3BhZDM7CisgIF9fYmUxNiBkaV9kZXB0aDsKKyAgX19iZTMyIGRpX2VudHJpZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBnZnMyX2ludW0gX19wYWQ0OwotIF9fYmU2NCBkaV9lYXR0cjsKLSBfX2JlMzIgZGlfYXRpbWVfbnNlYzsKLSBfX2JlMzIgZGlfbXRpbWVfbnNlYzsKKyAgc3RydWN0IGdmczJfaW51bSBfX3BhZDQ7CisgIF9fYmU2NCBkaV9lYXR0cjsKKyAgX19iZTMyIGRpX2F0aW1lX25zZWM7CisgIF9fYmUzMiBkaV9tdGltZV9uc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgZGlfY3RpbWVfbnNlYzsKLSBfX3U4IGRpX3Jlc2VydmVkWzQ0XTsKKyAgX19iZTMyIGRpX2N0aW1lX25zZWM7CisgIF9fdTggZGlfcmVzZXJ2ZWRbNDRdOwogfTsKICNkZWZpbmUgR0ZTMl9GTkFNRVNJWkUgMjU1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRlMyX0RJUkVOVF9TSVpFKG5hbWVfbGVuKSAoKHNpemVvZihzdHJ1Y3QgZ2ZzMl9kaXJlbnQpICsgKG5hbWVfbGVuKSArIDcpICYgfjcpCiBzdHJ1Y3QgZ2ZzMl9kaXJlbnQgewotIHN0cnVjdCBnZnMyX2ludW0gZGVfaW51bTsKLSBfX2JlMzIgZGVfaGFzaDsKKyAgc3RydWN0IGdmczJfaW51bSBkZV9pbnVtOworICBfX2JlMzIgZGVfaGFzaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGRlX3JlY19sZW47Ci0gX19iZTE2IGRlX25hbWVfbGVuOwotIF9fYmUxNiBkZV90eXBlOwotIF9fdTggX19wYWRbMTRdOworICBfX2JlMTYgZGVfcmVjX2xlbjsKKyAgX19iZTE2IGRlX25hbWVfbGVuOworICBfX2JlMTYgZGVfdHlwZTsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICBfX3U4IF9fcGFkWzE0XTsKKyAgICBzdHJ1Y3QgeworICAgICAgX19iZTE2IGRlX3JhaGVhZDsKKyAgICAgIF9fdTggcGFkMlsxMl07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIH07CisgIH07CiB9Owogc3RydWN0IGdmczJfbGVhZiB7Ci0gc3RydWN0IGdmczJfbWV0YV9oZWFkZXIgbGZfaGVhZGVyOwotIF9fYmUxNiBsZl9kZXB0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGxmX2VudHJpZXM7Ci0gX19iZTMyIGxmX2RpcmVudF9mb3JtYXQ7Ci0gX19iZTY0IGxmX25leHQ7Ci0gdW5pb24geworICBzdHJ1Y3QgZ2ZzMl9tZXRhX2hlYWRlciBsZl9oZWFkZXI7CisgIF9fYmUxNiBsZl9kZXB0aDsKKyAgX19iZTE2IGxmX2VudHJpZXM7CisgIF9fYmUzMiBsZl9kaXJlbnRfZm9ybWF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGxmX3Jlc2VydmVkWzY0XTsKLSBzdHJ1Y3QgewotIF9fYmU2NCBsZl9pbm9kZTsKLSBfX2JlMzIgbGZfZGlzdDsKKyAgX19iZTY0IGxmX25leHQ7CisgIHVuaW9uIHsKKyAgICBfX3U4IGxmX3Jlc2VydmVkWzY0XTsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgbGZfbnNlYzsKLSBfX2JlNjQgbGZfc2VjOwotIF9fdTggbGZfcmVzZXJ2ZWQyWzQwXTsKLSB9OworICAgICAgX19iZTY0IGxmX2lub2RlOworICAgICAgX19iZTMyIGxmX2Rpc3Q7CisgICAgICBfX2JlMzIgbGZfbnNlYzsKKyAgICAgIF9fYmU2NCBsZl9zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07CisgICAgICBfX3U4IGxmX3Jlc2VydmVkMls0MF07CisgICAgfTsKKyAgfTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRlMyX0VBX01BWF9OQU1FX0xFTiAyNTUKICNkZWZpbmUgR0ZTMl9FQV9NQVhfREFUQV9MRU4gNjU1MzYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdGUzJfRUFUWVBFX1VOVVNFRCAwCiAjZGVmaW5lIEdGUzJfRUFUWVBFX1VTUiAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRlMyX0VBVFlQRV9TWVMgMgogI2RlZmluZSBHRlMyX0VBVFlQRV9TRUNVUklUWSAzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRlMyX0VBVFlQRV9MQVNUIDMKICNkZWZpbmUgR0ZTMl9FQVRZUEVfVkFMSUQoeCkgKCh4KSA8PSBHRlMyX0VBVFlQRV9MQVNUKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgR0ZTMl9FQUZMQUdfTEFTVCAweDAxCiBzdHJ1Y3QgZ2ZzMl9lYV9oZWFkZXIgeworICBfX2JlMzIgZWFfcmVjX2xlbjsKKyAgX19iZTMyIGVhX2RhdGFfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgZWFfcmVjX2xlbjsKLSBfX2JlMzIgZWFfZGF0YV9sZW47Ci0gX191OCBlYV9uYW1lX2xlbjsKLSBfX3U4IGVhX3R5cGU7CisgIF9fdTggZWFfbmFtZV9sZW47CisgIF9fdTggZWFfdHlwZTsKKyAgX191OCBlYV9mbGFnczsKKyAgX191OCBlYV9udW1fcHRyczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBlYV9mbGFnczsKLSBfX3U4IGVhX251bV9wdHJzOwotIF9fdTMyIF9fcGFkOworICBfX3UzMiBfX3BhZDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRlMyX0xPR19IRUFEX1VOTU9VTlQgMHgwMDAwMDAwMQogc3RydWN0IGdmczJfbG9nX2hlYWRlciB7Ci0gc3RydWN0IGdmczJfbWV0YV9oZWFkZXIgbGhfaGVhZGVyOwotIF9fYmU2NCBsaF9zZXF1ZW5jZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGxoX2ZsYWdzOwotIF9fYmUzMiBsaF90YWlsOwotIF9fYmUzMiBsaF9ibGtubzsKLSBfX2JlMzIgbGhfaGFzaDsKKyAgc3RydWN0IGdmczJfbWV0YV9oZWFkZXIgbGhfaGVhZGVyOworICBfX2JlNjQgbGhfc2VxdWVuY2U7CisgIF9fYmUzMiBsaF9mbGFnczsKKyAgX19iZTMyIGxoX3RhaWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX2JlMzIgbGhfYmxrbm87CisgIF9fYmUzMiBsaF9oYXNoOwogfTsKICNkZWZpbmUgR0ZTMl9MT0dfREVTQ19NRVRBREFUQSAzMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEdGUzJfTE9HX0RFU0NfUkVWT0tFIDMwMQogI2RlZmluZSBHRlMyX0xPR19ERVNDX0pEQVRBIDMwMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBnZnMyX2xvZ19kZXNjcmlwdG9yIHsKLSBzdHJ1Y3QgZ2ZzMl9tZXRhX2hlYWRlciBsZF9oZWFkZXI7Ci0gX19iZTMyIGxkX3R5cGU7Ci0gX19iZTMyIGxkX2xlbmd0aDsKKyAgc3RydWN0IGdmczJfbWV0YV9oZWFkZXIgbGRfaGVhZGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgbGRfZGF0YTE7Ci0gX19iZTMyIGxkX2RhdGEyOwotIF9fdTggbGRfcmVzZXJ2ZWRbMzJdOworICBfX2JlMzIgbGRfdHlwZTsKKyAgX19iZTMyIGxkX2xlbmd0aDsKKyAgX19iZTMyIGxkX2RhdGExOworICBfX2JlMzIgbGRfZGF0YTI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGxkX3Jlc2VydmVkWzMyXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRlMyX0lOVU1fUVVBTlRVTSAxMDQ4NTc2CiBzdHJ1Y3QgZ2ZzMl9pbnVtX3JhbmdlIHsKLSBfX2JlNjQgaXJfc3RhcnQ7Ci0gX19iZTY0IGlyX2xlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fYmU2NCBpcl9zdGFydDsKKyAgX19iZTY0IGlyX2xlbmd0aDsKIH07CiBzdHJ1Y3QgZ2ZzMl9zdGF0ZnNfY2hhbmdlIHsKLSBfX2JlNjQgc2NfdG90YWw7Ci0gX19iZTY0IHNjX2ZyZWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmU2NCBzY19kaW5vZGVzOworICBfX2JlNjQgc2NfdG90YWw7CisgIF9fYmU2NCBzY19mcmVlOworICBfX2JlNjQgc2NfZGlub2RlczsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHRlMyX1FDRl9VU0VSIDB4MDAwMDAwMDEKIHN0cnVjdCBnZnMyX3F1b3RhX2NoYW5nZSB7CisgIF9fYmU2NCBxY19jaGFuZ2U7CisgIF9fYmUzMiBxY19mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTY0IHFjX2NoYW5nZTsKLSBfX2JlMzIgcWNfZmxhZ3M7Ci0gX19iZTMyIHFjX2lkOworICBfX2JlMzIgcWNfaWQ7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBnZnMyX3F1b3RhX2x2YiB7Ci0gX19iZTMyIHFiX21hZ2ljOwotIF9fdTMyIF9fcGFkOwotIF9fYmU2NCBxYl9saW1pdDsKKyAgX19iZTMyIHFiX21hZ2ljOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlNjQgcWJfd2FybjsKLSBfX2JlNjQgcWJfdmFsdWU7CisgIF9fdTMyIF9fcGFkOworICBfX2JlNjQgcWJfbGltaXQ7CisgIF9fYmU2NCBxYl93YXJuOworICBfX2JlNjQgcWJfdmFsdWU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaGFzaF9pbmZvLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hhc2hfaW5mby5oCmluZGV4IGZkMzU0M2MuLjU1MmUwNDggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaGFzaF9pbmZvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oYXNoX2luZm8uaApAQCAtMTksMjggKzE5LDI4IEBACiAjaWZuZGVmIF9VQVBJX0xJTlVYX0hBU0hfSU5GT19ICiAjZGVmaW5lIF9VQVBJX0xJTlVYX0hBU0hfSU5GT19ICiBlbnVtIGhhc2hfYWxnbyB7Ci0gSEFTSF9BTEdPX01ENCwKKyAgSEFTSF9BTEdPX01ENCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSEFTSF9BTEdPX01ENSwKLSBIQVNIX0FMR09fU0hBMSwKLSBIQVNIX0FMR09fUklQRV9NRF8xNjAsCi0gSEFTSF9BTEdPX1NIQTI1NiwKKyAgSEFTSF9BTEdPX01ENSwKKyAgSEFTSF9BTEdPX1NIQTEsCisgIEhBU0hfQUxHT19SSVBFX01EXzE2MCwKKyAgSEFTSF9BTEdPX1NIQTI1NiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSEFTSF9BTEdPX1NIQTM4NCwKLSBIQVNIX0FMR09fU0hBNTEyLAotIEhBU0hfQUxHT19TSEEyMjQsCi0gSEFTSF9BTEdPX1JJUEVfTURfMTI4LAorICBIQVNIX0FMR09fU0hBMzg0LAorICBIQVNIX0FMR09fU0hBNTEyLAorICBIQVNIX0FMR09fU0hBMjI0LAorICBIQVNIX0FMR09fUklQRV9NRF8xMjgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhBU0hfQUxHT19SSVBFX01EXzI1NiwKLSBIQVNIX0FMR09fUklQRV9NRF8zMjAsCi0gSEFTSF9BTEdPX1dQXzI1NiwKLSBIQVNIX0FMR09fV1BfMzg0LAorICBIQVNIX0FMR09fUklQRV9NRF8yNTYsCisgIEhBU0hfQUxHT19SSVBFX01EXzMyMCwKKyAgSEFTSF9BTEdPX1dQXzI1NiwKKyAgSEFTSF9BTEdPX1dQXzM4NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSEFTSF9BTEdPX1dQXzUxMiwKLSBIQVNIX0FMR09fVEdSXzEyOCwKLSBIQVNIX0FMR09fVEdSXzE2MCwKLSBIQVNIX0FMR09fVEdSXzE5MiwKKyAgSEFTSF9BTEdPX1dQXzUxMiwKKyAgSEFTSF9BTEdPX1RHUl8xMjgsCisgIEhBU0hfQUxHT19UR1JfMTYwLAorICBIQVNIX0FMR09fVEdSXzE5MiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSEFTSF9BTEdPX19MQVNUCisgIEhBU0hfQUxHT19fTEFTVAogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oZGxjL2lvY3RsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hkbGMvaW9jdGwuaAppbmRleCBjNDdkOTFlLi4zN2ZmNWM3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hkbGMvaW9jdGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hkbGMvaW9jdGwuaApAQCAtNTIsNDcgKzUyLDQ3IEBACiAjaWZuZGVmIF9fQVNTRU1CTFlfXwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgY2xvY2tfcmF0ZTsKLSB1bnNpZ25lZCBpbnQgY2xvY2tfdHlwZTsKLSB1bnNpZ25lZCBzaG9ydCBsb29wYmFjazsKKyAgdW5zaWduZWQgaW50IGNsb2NrX3JhdGU7CisgIHVuc2lnbmVkIGludCBjbG9ja190eXBlOworICB1bnNpZ25lZCBzaG9ydCBsb29wYmFjazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IHN5bmNfc2VyaWFsX3NldHRpbmdzOwogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGludCBjbG9ja19yYXRlOwotIHVuc2lnbmVkIGludCBjbG9ja190eXBlOworICB1bnNpZ25lZCBpbnQgY2xvY2tfcmF0ZTsKKyAgdW5zaWduZWQgaW50IGNsb2NrX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGxvb3BiYWNrOwotIHVuc2lnbmVkIGludCBzbG90X21hcDsKKyAgdW5zaWduZWQgc2hvcnQgbG9vcGJhY2s7CisgIHVuc2lnbmVkIGludCBzbG90X21hcDsKIH0gdGUxX3NldHRpbmdzOwogdHlwZWRlZiBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBlbmNvZGluZzsKLSB1bnNpZ25lZCBzaG9ydCBwYXJpdHk7CisgIHVuc2lnbmVkIHNob3J0IGVuY29kaW5nOworICB1bnNpZ25lZCBzaG9ydCBwYXJpdHk7CiB9IHJhd19oZGxjX3Byb3RvOwogdHlwZWRlZiBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdDM5MTsKLSB1bnNpZ25lZCBpbnQgdDM5MjsKLSB1bnNpZ25lZCBpbnQgbjM5MTsKLSB1bnNpZ25lZCBpbnQgbjM5MjsKKyAgdW5zaWduZWQgaW50IHQzOTE7CisgIHVuc2lnbmVkIGludCB0MzkyOworICB1bnNpZ25lZCBpbnQgbjM5MTsKKyAgdW5zaWduZWQgaW50IG4zOTI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBuMzkzOwotIHVuc2lnbmVkIHNob3J0IGxtaTsKLSB1bnNpZ25lZCBzaG9ydCBkY2U7CisgIHVuc2lnbmVkIGludCBuMzkzOworICB1bnNpZ25lZCBzaG9ydCBsbWk7CisgIHVuc2lnbmVkIHNob3J0IGRjZTsKIH0gZnJfcHJvdG87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGludCBkbGNpOworICB1bnNpZ25lZCBpbnQgZGxjaTsKIH0gZnJfcHJvdG9fcHZjOwogdHlwZWRlZiBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZGxjaTsKLSBjaGFyIG1hc3RlcltJRk5BTVNJWl07Ci19ZnJfcHJvdG9fcHZjX2luZm87CisgIHVuc2lnbmVkIGludCBkbGNpOworICBjaGFyIG1hc3RlcltJRk5BTVNJWl07Cit9IGZyX3Byb3RvX3B2Y19pbmZvOwogdHlwZWRlZiBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgaW50ZXJ2YWw7Ci0gdW5zaWduZWQgaW50IHRpbWVvdXQ7CisgIHVuc2lnbmVkIGludCBpbnRlcnZhbDsKKyAgdW5zaWduZWQgaW50IHRpbWVvdXQ7CiB9IGNpc2NvX3Byb3RvOwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oZGxjZHJ2LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hkbGNkcnYuaAppbmRleCBhMzcyMDFkLi5kYWRjNDMzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hkbGNkcnYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hkbGNkcnYuaApAQCAtMTksNTcgKzE5LDU3IEBACiAjaWZuZGVmIF9VQVBJX0hETENEUlZfSAogI2RlZmluZSBfVUFQSV9IRExDRFJWX0gKIHN0cnVjdCBoZGxjZHJ2X3BhcmFtcyB7Ci0gaW50IGlvYmFzZTsKKyAgaW50IGlvYmFzZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGlycTsKLSBpbnQgZG1hOwotIGludCBkbWEyOwotIGludCBzZXJpb2Jhc2U7CisgIGludCBpcnE7CisgIGludCBkbWE7CisgIGludCBkbWEyOworICBpbnQgc2VyaW9iYXNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcGFyaW9iYXNlOwotIGludCBtaWRpaW9iYXNlOworICBpbnQgcGFyaW9iYXNlOworICBpbnQgbWlkaWlvYmFzZTsKIH07CiBzdHJ1Y3QgaGRsY2Rydl9jaGFubmVsX3BhcmFtcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0eF9kZWxheTsKLSBpbnQgdHhfdGFpbDsKLSBpbnQgc2xvdHRpbWU7Ci0gaW50IHBwZXJzaXN0OworICBpbnQgdHhfZGVsYXk7CisgIGludCB0eF90YWlsOworICBpbnQgc2xvdHRpbWU7CisgIGludCBwcGVyc2lzdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGZ1bGxkdXA7CisgIGludCBmdWxsZHVwOwogfTsKIHN0cnVjdCBoZGxjZHJ2X29sZF9jaGFubmVsX3N0YXRlIHsKLSBpbnQgcHR0OworICBpbnQgcHR0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZGNkOwotIGludCBwdHRfa2V5ZWQ7CisgIGludCBkY2Q7CisgIGludCBwdHRfa2V5ZWQ7CiB9Owogc3RydWN0IGhkbGNkcnZfY2hhbm5lbF9zdGF0ZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwdHQ7Ci0gaW50IGRjZDsKLSBpbnQgcHR0X2tleWVkOwotIHVuc2lnbmVkIGxvbmcgdHhfcGFja2V0czsKKyAgaW50IHB0dDsKKyAgaW50IGRjZDsKKyAgaW50IHB0dF9rZXllZDsKKyAgdW5zaWduZWQgbG9uZyB0eF9wYWNrZXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHR4X2Vycm9yczsKLSB1bnNpZ25lZCBsb25nIHJ4X3BhY2tldHM7Ci0gdW5zaWduZWQgbG9uZyByeF9lcnJvcnM7CisgIHVuc2lnbmVkIGxvbmcgdHhfZXJyb3JzOworICB1bnNpZ25lZCBsb25nIHJ4X3BhY2tldHM7CisgIHVuc2lnbmVkIGxvbmcgcnhfZXJyb3JzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaGRsY2Rydl9pb2N0bCB7Ci0gaW50IGNtZDsKLSB1bmlvbiB7Ci0gc3RydWN0IGhkbGNkcnZfcGFyYW1zIG1wOworICBpbnQgY21kOworICB1bmlvbiB7CisgICAgc3RydWN0IGhkbGNkcnZfcGFyYW1zIG1wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaGRsY2Rydl9jaGFubmVsX3BhcmFtcyBjcDsKLSBzdHJ1Y3QgaGRsY2Rydl9jaGFubmVsX3N0YXRlIGNzOwotIHN0cnVjdCBoZGxjZHJ2X29sZF9jaGFubmVsX3N0YXRlIG9jczsKLSB1bnNpZ25lZCBpbnQgY2FsaWJyYXRlOworICAgIHN0cnVjdCBoZGxjZHJ2X2NoYW5uZWxfcGFyYW1zIGNwOworICAgIHN0cnVjdCBoZGxjZHJ2X2NoYW5uZWxfc3RhdGUgY3M7CisgICAgc3RydWN0IGhkbGNkcnZfb2xkX2NoYW5uZWxfc3RhdGUgb2NzOworICAgIHVuc2lnbmVkIGludCBjYWxpYnJhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgYml0czsKLSBjaGFyIG1vZGVuYW1lWzEyOF07Ci0gY2hhciBkcml2ZXJuYW1lWzMyXTsKLSB9IGRhdGE7CisgICAgdW5zaWduZWQgY2hhciBiaXRzOworICAgIGNoYXIgbW9kZW5hbWVbMTI4XTsKKyAgICBjaGFyIGRyaXZlcm5hbWVbMzJdOworICB9IGRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSERMQ0RSVkNUTF9HRVRNT0RFTVBBUiAwCkBAIC04OSwxMyArODksMTMgQEAKICNkZWZpbmUgSERMQ0RSVkNUTF9TRVRNT0RFIDQxCiAjZGVmaW5lIEhETENEUlZDVExfTU9ERUxJU1QgNDIKICNkZWZpbmUgSERMQ0RSVkNUTF9EUklWRVJOQU1FIDQzCi0jZGVmaW5lIEhETENEUlZfUEFSTUFTS19JT0JBU0UgKDE8PDApCisjZGVmaW5lIEhETENEUlZfUEFSTUFTS19JT0JBU0UgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEhETENEUlZfUEFSTUFTS19JUlEgKDE8PDEpCi0jZGVmaW5lIEhETENEUlZfUEFSTUFTS19ETUEgKDE8PDIpCi0jZGVmaW5lIEhETENEUlZfUEFSTUFTS19ETUEyICgxPDwzKQotI2RlZmluZSBIRExDRFJWX1BBUk1BU0tfU0VSSU9CQVNFICgxPDw0KQorI2RlZmluZSBIRExDRFJWX1BBUk1BU0tfSVJRICgxIDw8IDEpCisjZGVmaW5lIEhETENEUlZfUEFSTUFTS19ETUEgKDEgPDwgMikKKyNkZWZpbmUgSERMQ0RSVl9QQVJNQVNLX0RNQTIgKDEgPDwgMykKKyNkZWZpbmUgSERMQ0RSVl9QQVJNQVNLX1NFUklPQkFTRSAoMSA8PCA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSERMQ0RSVl9QQVJNQVNLX1BBUklPQkFTRSAoMTw8NSkKLSNkZWZpbmUgSERMQ0RSVl9QQVJNQVNLX01JRElJT0JBU0UgKDE8PDYpCisjZGVmaW5lIEhETENEUlZfUEFSTUFTS19QQVJJT0JBU0UgKDEgPDwgNSkKKyNkZWZpbmUgSERMQ0RSVl9QQVJNQVNLX01JRElJT0JBU0UgKDEgPDwgNikKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oZHJlZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oZHJlZy5oCmluZGV4IDY5YWZlMGQuLjMwMGUwMTMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaGRyZWcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hkcmVnLmgKQEAgLTI0LDcgKzI0LDcgQEAKICNkZWZpbmUgSERJT19EUklWRV9IT0JfSERSX1NJWkUgKDggKiBzaXplb2YoX191OCkpCiAjZGVmaW5lIEhESU9fRFJJVkVfVEFTS19IRFJfU0laRSAoOCAqIHNpemVvZihfX3U4KSkKICNkZWZpbmUgSURFX0RSSVZFX1RBU0tfTk9fREFUQSAwCi0jZGVmaW5lIElERV9EUklWRV9UQVNLX0lOVkFMSUQgLTEKKyNkZWZpbmUgSURFX0RSSVZFX1RBU0tfSU5WQUxJRCAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElERV9EUklWRV9UQVNLX1NFVF9YRkVSIDEKICNkZWZpbmUgSURFX0RSSVZFX1RBU0tfSU4gMgpAQCAtMzksODEgKzM5LDgxIEBACiB0eXBlZGVmIHVuc2lnbmVkIGNoYXIgdGFza19pb3JlZ190OwogdHlwZWRlZiB1bnNpZ25lZCBsb25nIHNhdGFfaW9yZWdfdDsKIHR5cGVkZWYgdW5pb24gaWRlX3JlZ192YWxpZF9zIHsKLSB1bnNpZ25lZCBhbGwgOiAxNjsKKyAgdW5zaWduZWQgYWxsIDogMTY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gdW5zaWduZWQgZGF0YSA6IDE7Ci0gdW5zaWduZWQgZXJyb3JfZmVhdHVyZSA6IDE7Ci0gdW5zaWduZWQgc2VjdG9yIDogMTsKKyAgc3RydWN0IHsKKyAgICB1bnNpZ25lZCBkYXRhIDogMTsKKyAgICB1bnNpZ25lZCBlcnJvcl9mZWF0dXJlIDogMTsKKyAgICB1bnNpZ25lZCBzZWN0b3IgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBuc2VjdG9yIDogMTsKLSB1bnNpZ25lZCBsY3lsIDogMTsKLSB1bnNpZ25lZCBoY3lsIDogMTsKLSB1bnNpZ25lZCBzZWxlY3QgOiAxOworICAgIHVuc2lnbmVkIG5zZWN0b3IgOiAxOworICAgIHVuc2lnbmVkIGxjeWwgOiAxOworICAgIHVuc2lnbmVkIGhjeWwgOiAxOworICAgIHVuc2lnbmVkIHNlbGVjdCA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHN0YXR1c19jb21tYW5kIDogMTsKLSB1bnNpZ25lZCBkYXRhX2hvYiA6IDE7Ci0gdW5zaWduZWQgZXJyb3JfZmVhdHVyZV9ob2IgOiAxOwotIHVuc2lnbmVkIHNlY3Rvcl9ob2IgOiAxOworICAgIHVuc2lnbmVkIHN0YXR1c19jb21tYW5kIDogMTsKKyAgICB1bnNpZ25lZCBkYXRhX2hvYiA6IDE7CisgICAgdW5zaWduZWQgZXJyb3JfZmVhdHVyZV9ob2IgOiAxOworICAgIHVuc2lnbmVkIHNlY3Rvcl9ob2IgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBuc2VjdG9yX2hvYiA6IDE7Ci0gdW5zaWduZWQgbGN5bF9ob2IgOiAxOwotIHVuc2lnbmVkIGhjeWxfaG9iIDogMTsKLSB1bnNpZ25lZCBzZWxlY3RfaG9iIDogMTsKKyAgICB1bnNpZ25lZCBuc2VjdG9yX2hvYiA6IDE7CisgICAgdW5zaWduZWQgbGN5bF9ob2IgOiAxOworICAgIHVuc2lnbmVkIGhjeWxfaG9iIDogMTsKKyAgICB1bnNpZ25lZCBzZWxlY3RfaG9iIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY29udHJvbF9ob2IgOiAxOwotIH0gYjsKKyAgICB1bnNpZ25lZCBjb250cm9sX2hvYiA6IDE7CisgIH0gYjsKIH0gaWRlX3JlZ192YWxpZF90OwogdHlwZWRlZiBzdHJ1Y3QgaWRlX3Rhc2tfcmVxdWVzdF9zIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpb19wb3J0c1s4XTsKLSBfX3U4IGhvYl9wb3J0c1s4XTsKLSBpZGVfcmVnX3ZhbGlkX3Qgb3V0X2ZsYWdzOwotIGlkZV9yZWdfdmFsaWRfdCBpbl9mbGFnczsKKyAgX191OCBpb19wb3J0c1s4XTsKKyAgX191OCBob2JfcG9ydHNbOF07CisgIGlkZV9yZWdfdmFsaWRfdCBvdXRfZmxhZ3M7CisgIGlkZV9yZWdfdmFsaWRfdCBpbl9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGRhdGFfcGhhc2U7Ci0gaW50IHJlcV9jbWQ7Ci0gdW5zaWduZWQgbG9uZyBvdXRfc2l6ZTsKLSB1bnNpZ25lZCBsb25nIGluX3NpemU7CisgIGludCBkYXRhX3BoYXNlOworICBpbnQgcmVxX2NtZDsKKyAgdW5zaWduZWQgbG9uZyBvdXRfc2l6ZTsKKyAgdW5zaWduZWQgbG9uZyBpbl9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gaWRlX3Rhc2tfcmVxdWVzdF90OwogdHlwZWRlZiBzdHJ1Y3QgaWRlX2lvY3RsX3JlcXVlc3RfcyB7Ci0gaWRlX3Rhc2tfcmVxdWVzdF90ICp0YXNrX3JlcXVlc3Q7Ci0gdW5zaWduZWQgY2hhciAqb3V0X2J1ZmZlcjsKKyAgaWRlX3Rhc2tfcmVxdWVzdF90ICogdGFza19yZXF1ZXN0OworICB1bnNpZ25lZCBjaGFyICogb3V0X2J1ZmZlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciAqaW5fYnVmZmVyOworICB1bnNpZ25lZCBjaGFyICogaW5fYnVmZmVyOwogfSBpZGVfaW9jdGxfcmVxdWVzdF90Owogc3RydWN0IGhkX2RyaXZlX2NtZF9oZHIgewotIF9fdTggY29tbWFuZDsKKyAgX191OCBjb21tYW5kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNlY3Rvcl9udW1iZXI7Ci0gX191OCBmZWF0dXJlOwotIF9fdTggc2VjdG9yX2NvdW50OworICBfX3U4IHNlY3Rvcl9udW1iZXI7CisgIF9fdTggZmVhdHVyZTsKKyAgX191OCBzZWN0b3JfY291bnQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGhkX2RyaXZlX3Rhc2tfaGRyIHsKLSBfX3U4IGRhdGE7Ci0gX191OCBmZWF0dXJlOwotIF9fdTggc2VjdG9yX2NvdW50OworICBfX3U4IGRhdGE7CisgIF9fdTggZmVhdHVyZTsKKyAgX191OCBzZWN0b3JfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2VjdG9yX251bWJlcjsKLSBfX3U4IGxvd19jeWxpbmRlcjsKLSBfX3U4IGhpZ2hfY3lsaW5kZXI7Ci0gX191OCBkZXZpY2VfaGVhZDsKKyAgX191OCBzZWN0b3JfbnVtYmVyOworICBfX3U4IGxvd19jeWxpbmRlcjsKKyAgX191OCBoaWdoX2N5bGluZGVyOworICBfX3U4IGRldmljZV9oZWFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNvbW1hbmQ7CisgIF9fdTggY29tbWFuZDsKIH0gdGFza19zdHJ1Y3RfdDsKIHR5cGVkZWYgc3RydWN0IGhkX2RyaXZlX2hvYl9oZHIgewotIF9fdTggZGF0YTsKKyAgX191OCBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZlYXR1cmU7Ci0gX191OCBzZWN0b3JfY291bnQ7Ci0gX191OCBzZWN0b3JfbnVtYmVyOwotIF9fdTggbG93X2N5bGluZGVyOworICBfX3U4IGZlYXR1cmU7CisgIF9fdTggc2VjdG9yX2NvdW50OworICBfX3U4IHNlY3Rvcl9udW1iZXI7CisgIF9fdTggbG93X2N5bGluZGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGhpZ2hfY3lsaW5kZXI7Ci0gX191OCBkZXZpY2VfaGVhZDsKLSBfX3U4IGNvbnRyb2w7CisgIF9fdTggaGlnaF9jeWxpbmRlcjsKKyAgX191OCBkZXZpY2VfaGVhZDsKKyAgX191OCBjb250cm9sOwogfSBob2Jfc3RydWN0X3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQVNLRklMRV9OT19EQVRBIDB4MDAwMApAQCAtMzEyLDExICszMTIsMTEgQEAKICNkZWZpbmUgU0VDVVJJVFlfRElTQUJMRV9QQVNTV09SRCAweEJGCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGhkX2dlb21ldHJ5IHsKLSB1bnNpZ25lZCBjaGFyIGhlYWRzOwotIHVuc2lnbmVkIGNoYXIgc2VjdG9yczsKLSB1bnNpZ25lZCBzaG9ydCBjeWxpbmRlcnM7CisgIHVuc2lnbmVkIGNoYXIgaGVhZHM7CisgIHVuc2lnbmVkIGNoYXIgc2VjdG9yczsKKyAgdW5zaWduZWQgc2hvcnQgY3lsaW5kZXJzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHN0YXJ0OworICB1bnNpZ25lZCBsb25nIHN0YXJ0OwogfTsKICNkZWZpbmUgSERJT19HRVRHRU8gMHgwMzAxCiAjZGVmaW5lIEhESU9fR0VUX1VOTUFTS0lOVFIgMHgwMzAyCkBAIC0zNjYsMTEyICszNjYsMTEyIEBACiAjZGVmaW5lIEhESU9fU0VUX0FERFJFU1MgMHgwMzJmCiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQlVTU1RBVEVfT0ZGID0gMCwKLSBCVVNTVEFURV9PTiwKLSBCVVNTVEFURV9UUklTVEFURQorICBCVVNTVEFURV9PRkYgPSAwLAorICBCVVNTVEFURV9PTiwKKyAgQlVTU1RBVEVfVFJJU1RBVEUKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX05FV19IRF9EUklWRV9JRAogc3RydWN0IGhkX2RyaXZlaWQgewotIHVuc2lnbmVkIHNob3J0IGNvbmZpZzsKLSB1bnNpZ25lZCBzaG9ydCBjeWxzOworICB1bnNpZ25lZCBzaG9ydCBjb25maWc7CisgIHVuc2lnbmVkIHNob3J0IGN5bHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHJlc2VydmVkMjsKLSB1bnNpZ25lZCBzaG9ydCBoZWFkczsKLSB1bnNpZ25lZCBzaG9ydCB0cmFja19ieXRlczsKLSB1bnNpZ25lZCBzaG9ydCBzZWN0b3JfYnl0ZXM7CisgIHVuc2lnbmVkIHNob3J0IHJlc2VydmVkMjsKKyAgdW5zaWduZWQgc2hvcnQgaGVhZHM7CisgIHVuc2lnbmVkIHNob3J0IHRyYWNrX2J5dGVzOworICB1bnNpZ25lZCBzaG9ydCBzZWN0b3JfYnl0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHNlY3RvcnM7Ci0gdW5zaWduZWQgc2hvcnQgdmVuZG9yMDsKLSB1bnNpZ25lZCBzaG9ydCB2ZW5kb3IxOwotIHVuc2lnbmVkIHNob3J0IHZlbmRvcjI7CisgIHVuc2lnbmVkIHNob3J0IHNlY3RvcnM7CisgIHVuc2lnbmVkIHNob3J0IHZlbmRvcjA7CisgIHVuc2lnbmVkIHNob3J0IHZlbmRvcjE7CisgIHVuc2lnbmVkIHNob3J0IHZlbmRvcjI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgc2VyaWFsX25vWzIwXTsKLSB1bnNpZ25lZCBzaG9ydCBidWZfdHlwZTsKLSB1bnNpZ25lZCBzaG9ydCBidWZfc2l6ZTsKLSB1bnNpZ25lZCBzaG9ydCBlY2NfYnl0ZXM7CisgIHVuc2lnbmVkIGNoYXIgc2VyaWFsX25vWzIwXTsKKyAgdW5zaWduZWQgc2hvcnQgYnVmX3R5cGU7CisgIHVuc2lnbmVkIHNob3J0IGJ1Zl9zaXplOworICB1bnNpZ25lZCBzaG9ydCBlY2NfYnl0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZndfcmV2WzhdOwotIHVuc2lnbmVkIGNoYXIgbW9kZWxbNDBdOwotIHVuc2lnbmVkIGNoYXIgbWF4X211bHRzZWN0OwotIHVuc2lnbmVkIGNoYXIgdmVuZG9yMzsKKyAgdW5zaWduZWQgY2hhciBmd19yZXZbOF07CisgIHVuc2lnbmVkIGNoYXIgbW9kZWxbNDBdOworICB1bnNpZ25lZCBjaGFyIG1heF9tdWx0c2VjdDsKKyAgdW5zaWduZWQgY2hhciB2ZW5kb3IzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBkd29yZF9pbzsKLSB1bnNpZ25lZCBjaGFyIHZlbmRvcjQ7Ci0gdW5zaWduZWQgY2hhciBjYXBhYmlsaXR5OwotIHVuc2lnbmVkIHNob3J0IHJlc2VydmVkNTA7CisgIHVuc2lnbmVkIHNob3J0IGR3b3JkX2lvOworICB1bnNpZ25lZCBjaGFyIHZlbmRvcjQ7CisgIHVuc2lnbmVkIGNoYXIgY2FwYWJpbGl0eTsKKyAgdW5zaWduZWQgc2hvcnQgcmVzZXJ2ZWQ1MDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciB2ZW5kb3I1OwotIHVuc2lnbmVkIGNoYXIgdFBJTzsKLSB1bnNpZ25lZCBjaGFyIHZlbmRvcjY7Ci0gdW5zaWduZWQgY2hhciB0RE1BOworICB1bnNpZ25lZCBjaGFyIHZlbmRvcjU7CisgIHVuc2lnbmVkIGNoYXIgdFBJTzsKKyAgdW5zaWduZWQgY2hhciB2ZW5kb3I2OworICB1bnNpZ25lZCBjaGFyIHRETUE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGZpZWxkX3ZhbGlkOwotIHVuc2lnbmVkIHNob3J0IGN1cl9jeWxzOwotIHVuc2lnbmVkIHNob3J0IGN1cl9oZWFkczsKLSB1bnNpZ25lZCBzaG9ydCBjdXJfc2VjdG9yczsKKyAgdW5zaWduZWQgc2hvcnQgZmllbGRfdmFsaWQ7CisgIHVuc2lnbmVkIHNob3J0IGN1cl9jeWxzOworICB1bnNpZ25lZCBzaG9ydCBjdXJfaGVhZHM7CisgIHVuc2lnbmVkIHNob3J0IGN1cl9zZWN0b3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBjdXJfY2FwYWNpdHkwOwotIHVuc2lnbmVkIHNob3J0IGN1cl9jYXBhY2l0eTE7Ci0gdW5zaWduZWQgY2hhciBtdWx0c2VjdDsKLSB1bnNpZ25lZCBjaGFyIG11bHRzZWN0X3ZhbGlkOworICB1bnNpZ25lZCBzaG9ydCBjdXJfY2FwYWNpdHkwOworICB1bnNpZ25lZCBzaG9ydCBjdXJfY2FwYWNpdHkxOworICB1bnNpZ25lZCBjaGFyIG11bHRzZWN0OworICB1bnNpZ25lZCBjaGFyIG11bHRzZWN0X3ZhbGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbGJhX2NhcGFjaXR5OwotIHVuc2lnbmVkIHNob3J0IGRtYV8xd29yZDsKLSB1bnNpZ25lZCBzaG9ydCBkbWFfbXdvcmQ7Ci0gdW5zaWduZWQgc2hvcnQgZWlkZV9waW9fbW9kZXM7CisgIHVuc2lnbmVkIGludCBsYmFfY2FwYWNpdHk7CisgIHVuc2lnbmVkIHNob3J0IGRtYV8xd29yZDsKKyAgdW5zaWduZWQgc2hvcnQgZG1hX213b3JkOworICB1bnNpZ25lZCBzaG9ydCBlaWRlX3Bpb19tb2RlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgZWlkZV9kbWFfbWluOwotIHVuc2lnbmVkIHNob3J0IGVpZGVfZG1hX3RpbWU7Ci0gdW5zaWduZWQgc2hvcnQgZWlkZV9waW87Ci0gdW5zaWduZWQgc2hvcnQgZWlkZV9waW9faW9yZHk7CisgIHVuc2lnbmVkIHNob3J0IGVpZGVfZG1hX21pbjsKKyAgdW5zaWduZWQgc2hvcnQgZWlkZV9kbWFfdGltZTsKKyAgdW5zaWduZWQgc2hvcnQgZWlkZV9waW87CisgIHVuc2lnbmVkIHNob3J0IGVpZGVfcGlvX2lvcmR5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCB3b3JkczY5XzcwWzJdOwotIHVuc2lnbmVkIHNob3J0IHdvcmRzNzFfNzRbNF07Ci0gdW5zaWduZWQgc2hvcnQgcXVldWVfZGVwdGg7Ci0gdW5zaWduZWQgc2hvcnQgd29yZHM3Nl83OVs0XTsKKyAgdW5zaWduZWQgc2hvcnQgd29yZHM2OV83MFsyXTsKKyAgdW5zaWduZWQgc2hvcnQgd29yZHM3MV83NFs0XTsKKyAgdW5zaWduZWQgc2hvcnQgcXVldWVfZGVwdGg7CisgIHVuc2lnbmVkIHNob3J0IHdvcmRzNzZfNzlbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IG1ham9yX3Jldl9udW07Ci0gdW5zaWduZWQgc2hvcnQgbWlub3JfcmV2X251bTsKLSB1bnNpZ25lZCBzaG9ydCBjb21tYW5kX3NldF8xOwotIHVuc2lnbmVkIHNob3J0IGNvbW1hbmRfc2V0XzI7CisgIHVuc2lnbmVkIHNob3J0IG1ham9yX3Jldl9udW07CisgIHVuc2lnbmVkIHNob3J0IG1pbm9yX3Jldl9udW07CisgIHVuc2lnbmVkIHNob3J0IGNvbW1hbmRfc2V0XzE7CisgIHVuc2lnbmVkIHNob3J0IGNvbW1hbmRfc2V0XzI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGNmc3NlOwotIHVuc2lnbmVkIHNob3J0IGNmc19lbmFibGVfMTsKLSB1bnNpZ25lZCBzaG9ydCBjZnNfZW5hYmxlXzI7Ci0gdW5zaWduZWQgc2hvcnQgY3NmX2RlZmF1bHQ7CisgIHVuc2lnbmVkIHNob3J0IGNmc3NlOworICB1bnNpZ25lZCBzaG9ydCBjZnNfZW5hYmxlXzE7CisgIHVuc2lnbmVkIHNob3J0IGNmc19lbmFibGVfMjsKKyAgdW5zaWduZWQgc2hvcnQgY3NmX2RlZmF1bHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGRtYV91bHRyYTsKLSB1bnNpZ25lZCBzaG9ydCB0cnNldWM7Ci0gdW5zaWduZWQgc2hvcnQgdHJzRXVjOwotIHVuc2lnbmVkIHNob3J0IEN1ckFQTXZhbHVlczsKKyAgdW5zaWduZWQgc2hvcnQgZG1hX3VsdHJhOworICB1bnNpZ25lZCBzaG9ydCB0cnNldWM7CisgIHVuc2lnbmVkIHNob3J0IHRyc0V1YzsKKyAgdW5zaWduZWQgc2hvcnQgQ3VyQVBNdmFsdWVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBtcHJjOwotIHVuc2lnbmVkIHNob3J0IGh3X2NvbmZpZzsKLSB1bnNpZ25lZCBzaG9ydCBhY291c3RpYzsKLSB1bnNpZ25lZCBzaG9ydCBtc3JxczsKKyAgdW5zaWduZWQgc2hvcnQgbXByYzsKKyAgdW5zaWduZWQgc2hvcnQgaHdfY29uZmlnOworICB1bnNpZ25lZCBzaG9ydCBhY291c3RpYzsKKyAgdW5zaWduZWQgc2hvcnQgbXNycXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHN4ZmVydDsKLSB1bnNpZ25lZCBzaG9ydCBzYWw7Ci0gdW5zaWduZWQgaW50IHNwZzsKLSB1bnNpZ25lZCBsb25nIGxvbmcgbGJhX2NhcGFjaXR5XzI7CisgIHVuc2lnbmVkIHNob3J0IHN4ZmVydDsKKyAgdW5zaWduZWQgc2hvcnQgc2FsOworICB1bnNpZ25lZCBpbnQgc3BnOworICB1bnNpZ25lZCBsb25nIGxvbmcgbGJhX2NhcGFjaXR5XzI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHdvcmRzMTA0XzEyNVsyMl07Ci0gdW5zaWduZWQgc2hvcnQgbGFzdF9sdW47Ci0gdW5zaWduZWQgc2hvcnQgd29yZDEyNzsKLSB1bnNpZ25lZCBzaG9ydCBkbGY7CisgIHVuc2lnbmVkIHNob3J0IHdvcmRzMTA0XzEyNVsyMl07CisgIHVuc2lnbmVkIHNob3J0IGxhc3RfbHVuOworICB1bnNpZ25lZCBzaG9ydCB3b3JkMTI3OworICB1bnNpZ25lZCBzaG9ydCBkbGY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGNzZm87Ci0gdW5zaWduZWQgc2hvcnQgd29yZHMxMzBfMTU1WzI2XTsKLSB1bnNpZ25lZCBzaG9ydCB3b3JkMTU2OwotIHVuc2lnbmVkIHNob3J0IHdvcmRzMTU3XzE1OVszXTsKKyAgdW5zaWduZWQgc2hvcnQgY3NmbzsKKyAgdW5zaWduZWQgc2hvcnQgd29yZHMxMzBfMTU1WzI2XTsKKyAgdW5zaWduZWQgc2hvcnQgd29yZDE1NjsKKyAgdW5zaWduZWQgc2hvcnQgd29yZHMxNTdfMTU5WzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBjZmFfcG93ZXI7Ci0gdW5zaWduZWQgc2hvcnQgd29yZHMxNjFfMTc1WzE1XTsKLSB1bnNpZ25lZCBzaG9ydCB3b3JkczE3Nl8yMDVbMzBdOwotIHVuc2lnbmVkIHNob3J0IHdvcmRzMjA2XzI1NFs0OV07CisgIHVuc2lnbmVkIHNob3J0IGNmYV9wb3dlcjsKKyAgdW5zaWduZWQgc2hvcnQgd29yZHMxNjFfMTc1WzE1XTsKKyAgdW5zaWduZWQgc2hvcnQgd29yZHMxNzZfMjA1WzMwXTsKKyAgdW5zaWduZWQgc2hvcnQgd29yZHMyMDZfMjU0WzQ5XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgaW50ZWdyaXR5X3dvcmQ7CisgIHVuc2lnbmVkIHNob3J0IGludGVncml0eV93b3JkOwogfTsKICNkZWZpbmUgSURFX05JQ0VfRFNDX09WRVJMQVAgKDApCiAjZGVmaW5lIElERV9OSUNFX0FUQVBJX09WRVJMQVAgKDEpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hpZGRldi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oaWRkZXYuaAppbmRleCBlNDI2MGZlLi42ZjQ5NGIxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hpZGRldi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaGlkZGV2LmgKQEAgLTIxLDQwICsyMSw0MCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgaGlkZGV2X2V2ZW50IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaGlkOwotIHNpZ25lZCBpbnQgdmFsdWU7CisgIHVuc2lnbmVkIGhpZDsKKyAgc2lnbmVkIGludCB2YWx1ZTsKIH07CiBzdHJ1Y3QgaGlkZGV2X2RldmluZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBidXN0eXBlOwotIF9fdTMyIGJ1c251bTsKLSBfX3UzMiBkZXZudW07Ci0gX191MzIgaWZudW07CisgIF9fdTMyIGJ1c3R5cGU7CisgIF9fdTMyIGJ1c251bTsKKyAgX191MzIgZGV2bnVtOworICBfX3UzMiBpZm51bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMTYgdmVuZG9yOwotIF9fczE2IHByb2R1Y3Q7Ci0gX19zMTYgdmVyc2lvbjsKLSBfX3UzMiBudW1fYXBwbGljYXRpb25zOworICBfX3MxNiB2ZW5kb3I7CisgIF9fczE2IHByb2R1Y3Q7CisgIF9fczE2IHZlcnNpb247CisgIF9fdTMyIG51bV9hcHBsaWNhdGlvbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBoaWRkZXZfY29sbGVjdGlvbl9pbmZvIHsKLSBfX3UzMiBpbmRleDsKLSBfX3UzMiB0eXBlOworICBfX3UzMiBpbmRleDsKKyAgX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdXNhZ2U7Ci0gX191MzIgbGV2ZWw7CisgIF9fdTMyIHVzYWdlOworICBfX3UzMiBsZXZlbDsKIH07CiAjZGVmaW5lIEhJRF9TVFJJTkdfU0laRSAyNTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaGlkZGV2X3N0cmluZ19kZXNjcmlwdG9yIHsKLSBfX3MzMiBpbmRleDsKLSBjaGFyIHZhbHVlW0hJRF9TVFJJTkdfU0laRV07CisgIF9fczMyIGluZGV4OworICBjaGFyIHZhbHVlW0hJRF9TVFJJTkdfU0laRV07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBoaWRkZXZfcmVwb3J0X2luZm8gewotIF9fdTMyIHJlcG9ydF90eXBlOwotIF9fdTMyIHJlcG9ydF9pZDsKLSBfX3UzMiBudW1fZmllbGRzOworICBfX3UzMiByZXBvcnRfdHlwZTsKKyAgX191MzIgcmVwb3J0X2lkOworICBfX3UzMiBudW1fZmllbGRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEhJRF9SRVBPUlRfSURfVU5LTk9XTiAweGZmZmZmZmZmCkBAIC03MSwyMyArNzEsMjMgQEAKICNkZWZpbmUgSElEX1JFUE9SVF9UWVBFX01BWCAzCiBzdHJ1Y3QgaGlkZGV2X2ZpZWxkX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXBvcnRfdHlwZTsKLSBfX3UzMiByZXBvcnRfaWQ7Ci0gX191MzIgZmllbGRfaW5kZXg7Ci0gX191MzIgbWF4dXNhZ2U7CisgIF9fdTMyIHJlcG9ydF90eXBlOworICBfX3UzMiByZXBvcnRfaWQ7CisgIF9fdTMyIGZpZWxkX2luZGV4OworICBfX3UzMiBtYXh1c2FnZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7Ci0gX191MzIgcGh5c2ljYWw7Ci0gX191MzIgbG9naWNhbDsKLSBfX3UzMiBhcHBsaWNhdGlvbjsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHBoeXNpY2FsOworICBfX3UzMiBsb2dpY2FsOworICBfX3UzMiBhcHBsaWNhdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgbG9naWNhbF9taW5pbXVtOwotIF9fczMyIGxvZ2ljYWxfbWF4aW11bTsKLSBfX3MzMiBwaHlzaWNhbF9taW5pbXVtOwotIF9fczMyIHBoeXNpY2FsX21heGltdW07CisgIF9fczMyIGxvZ2ljYWxfbWluaW11bTsKKyAgX19zMzIgbG9naWNhbF9tYXhpbXVtOworICBfX3MzMiBwaHlzaWNhbF9taW5pbXVtOworICBfX3MzMiBwaHlzaWNhbF9tYXhpbXVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB1bml0X2V4cG9uZW50OwotIF9fdTMyIHVuaXQ7CisgIF9fdTMyIHVuaXRfZXhwb25lbnQ7CisgIF9fdTMyIHVuaXQ7CiB9OwogI2RlZmluZSBISURfRklFTERfQ09OU1RBTlQgMHgwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xMDIsMjEgKzEwMiwyMSBAQAogI2RlZmluZSBISURfRklFTERfQlVGRkVSRURfQllURSAweDEwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBoaWRkZXZfdXNhZ2VfcmVmIHsKLSBfX3UzMiByZXBvcnRfdHlwZTsKLSBfX3UzMiByZXBvcnRfaWQ7Ci0gX191MzIgZmllbGRfaW5kZXg7CisgIF9fdTMyIHJlcG9ydF90eXBlOworICBfX3UzMiByZXBvcnRfaWQ7CisgIF9fdTMyIGZpZWxkX2luZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB1c2FnZV9pbmRleDsKLSBfX3UzMiB1c2FnZV9jb2RlOwotIF9fczMyIHZhbHVlOworICBfX3UzMiB1c2FnZV9pbmRleDsKKyAgX191MzIgdXNhZ2VfY29kZTsKKyAgX19zMzIgdmFsdWU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSElEX01BWF9NVUxUSV9VU0FHRVMgMTAyNAogc3RydWN0IGhpZGRldl91c2FnZV9yZWZfbXVsdGkgewotIHN0cnVjdCBoaWRkZXZfdXNhZ2VfcmVmIHVyZWY7Ci0gX191MzIgbnVtX3ZhbHVlczsKKyAgc3RydWN0IGhpZGRldl91c2FnZV9yZWYgdXJlZjsKKyAgX191MzIgbnVtX3ZhbHVlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgdmFsdWVzW0hJRF9NQVhfTVVMVElfVVNBR0VTXTsKKyAgX19zMzIgdmFsdWVzW0hJRF9NQVhfTVVMVElfVVNBR0VTXTsKIH07CiAjZGVmaW5lIEhJRF9GSUVMRF9JTkRFWF9OT05FIDB4ZmZmZmZmZmYKICNkZWZpbmUgSElEX1ZFUlNJT04gMHgwMTAwMDQKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaGlkcmF3LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hpZHJhdy5oCmluZGV4IDBmZmFjZWEuLjdkNjBkMGQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaGlkcmF3LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oaWRyYXcuaApAQCAtMjIsMTQgKzIyLDE0IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaGlkcmF3X3JlcG9ydF9kZXNjcmlwdG9yIHsKLSBfX3UzMiBzaXplOwotIF9fdTggdmFsdWVbSElEX01BWF9ERVNDUklQVE9SX1NJWkVdOworICBfX3UzMiBzaXplOworICBfX3U4IHZhbHVlW0hJRF9NQVhfREVTQ1JJUFRPUl9TSVpFXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGhpZHJhd19kZXZpbmZvIHsKLSBfX3UzMiBidXN0eXBlOwotIF9fczE2IHZlbmRvcjsKLSBfX3MxNiBwcm9kdWN0OworICBfX3UzMiBidXN0eXBlOworICBfX3MxNiB2ZW5kb3I7CisgIF9fczE2IHByb2R1Y3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSElESU9DR1JERVNDU0laRSBfSU9SKCdIJywgMHgwMSwgaW50KQpAQCAtMzgsOCArMzgsOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSElESU9DR1JBV05BTUUobGVuKSBfSU9DKF9JT0NfUkVBRCwgJ0gnLCAweDA0LCBsZW4pCiAjZGVmaW5lIEhJRElPQ0dSQVdQSFlTKGxlbikgX0lPQyhfSU9DX1JFQUQsICdIJywgMHgwNSwgbGVuKQotI2RlZmluZSBISURJT0NTRkVBVFVSRShsZW4pIF9JT0MoX0lPQ19XUklURXxfSU9DX1JFQUQsICdIJywgMHgwNiwgbGVuKQotI2RlZmluZSBISURJT0NHRkVBVFVSRShsZW4pIF9JT0MoX0lPQ19XUklURXxfSU9DX1JFQUQsICdIJywgMHgwNywgbGVuKQorI2RlZmluZSBISURJT0NTRkVBVFVSRShsZW4pIF9JT0MoX0lPQ19XUklURSB8IF9JT0NfUkVBRCwgJ0gnLCAweDA2LCBsZW4pCisjZGVmaW5lIEhJRElPQ0dGRUFUVVJFKGxlbikgX0lPQyhfSU9DX1dSSVRFIHwgX0lPQ19SRUFELCAnSCcsIDB4MDcsIGxlbikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEhJRFJBV19GSVJTVF9NSU5PUiAwCiAjZGVmaW5lIEhJRFJBV19NQVhfREVWSUNFUyA2NApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ocGV0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hwZXQuaAppbmRleCAxOTI1NDI4Li45OGJmNzI1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hwZXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hwZXQuaApAQCAtMjEsMTAgKzIxLDEwIEBACiAjaW5jbHVkZSA8bGludXgvY29tcGlsZXIuaD4KIHN0cnVjdCBocGV0X2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGhpX2lyZXFmcmVxOwotIHVuc2lnbmVkIGxvbmcgaGlfZmxhZ3M7Ci0gdW5zaWduZWQgc2hvcnQgaGlfaHBldDsKLSB1bnNpZ25lZCBzaG9ydCBoaV90aW1lcjsKKyAgdW5zaWduZWQgbG9uZyBoaV9pcmVxZnJlcTsKKyAgdW5zaWduZWQgbG9uZyBoaV9mbGFnczsKKyAgdW5zaWduZWQgc2hvcnQgaGlfaHBldDsKKyAgdW5zaWduZWQgc2hvcnQgaGlfdGltZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSFBFVF9JTkZPX1BFUklPRElDIDB4MDAxMApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oc2kvaHNpX2NoYXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaHNpL2hzaV9jaGFyLmgKaW5kZXggOWM5N2UyOS4uYmNlYWJmYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oc2kvaHNpX2NoYXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hzaS9oc2lfY2hhci5oCkBAIC0xOSwxMCArMTksMTAgQEAKICNpZm5kZWYgX19IU0lfQ0hBUl9ICiAjZGVmaW5lIF9fSFNJX0NIQVJfSAogI2RlZmluZSBIU0lfQ0hBUl9NQUdJQyAnaycKLSNkZWZpbmUgSFNDX0lPVyhudW0sIGR0eXBlKSBfSU9XKEhTSV9DSEFSX01BR0lDLCBudW0sIGR0eXBlKQorI2RlZmluZSBIU0NfSU9XKG51bSxkdHlwZSkgX0lPVyhIU0lfQ0hBUl9NQUdJQywgbnVtLCBkdHlwZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEhTQ19JT1IobnVtLCBkdHlwZSkgX0lPUihIU0lfQ0hBUl9NQUdJQywgbnVtLCBkdHlwZSkKLSNkZWZpbmUgSFNDX0lPV1IobnVtLCBkdHlwZSkgX0lPV1IoSFNJX0NIQVJfTUFHSUMsIG51bSwgZHR5cGUpCisjZGVmaW5lIEhTQ19JT1IobnVtLGR0eXBlKSBfSU9SKEhTSV9DSEFSX01BR0lDLCBudW0sIGR0eXBlKQorI2RlZmluZSBIU0NfSU9XUihudW0sZHR5cGUpIF9JT1dSKEhTSV9DSEFSX01BR0lDLCBudW0sIGR0eXBlKQogI2RlZmluZSBIU0NfSU8obnVtKSBfSU8oSFNJX0NIQVJfTUFHSUMsIG51bSkKICNkZWZpbmUgSFNDX1JFU0VUIEhTQ19JTygxNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC00MywxNyArNDMsMTcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEhTQ19BUkJfUFJJTyAxCiBzdHJ1Y3QgaHNjX3J4X2NvbmZpZyB7Ci0gdWludDMyX3QgbW9kZTsKLSB1aW50MzJfdCBmbG93OworICB1aW50MzJfdCBtb2RlOworICB1aW50MzJfdCBmbG93OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBjaGFubmVsczsKKyAgdWludDMyX3QgY2hhbm5lbHM7CiB9Owogc3RydWN0IGhzY190eF9jb25maWcgewotIHVpbnQzMl90IG1vZGU7CisgIHVpbnQzMl90IG1vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGNoYW5uZWxzOwotIHVpbnQzMl90IHNwZWVkOwotIHVpbnQzMl90IGFyYl9tb2RlOworICB1aW50MzJfdCBjaGFubmVsczsKKyAgdWludDMyX3Qgc3BlZWQ7CisgIHVpbnQzMl90IGFyYl9tb2RlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaHNyX25ldGxpbmsuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaHNyX25ldGxpbmsuaAppbmRleCBiZjQ3ZDY0Li43MjhjZTM2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2hzcl9uZXRsaW5rLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9oc3JfbmV0bGluay5oCkBAIC0xOSwzNSArMTksMzUgQEAKICNpZm5kZWYgX19VQVBJX0hTUl9ORVRMSU5LX0gKICNkZWZpbmUgX19VQVBJX0hTUl9ORVRMSU5LX0gKIGVudW0gewotIEhTUl9BX1VOU1BFQywKKyAgSFNSX0FfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBIU1JfQV9OT0RFX0FERFIsCi0gSFNSX0FfSUZJTkRFWCwKLSBIU1JfQV9JRjFfQUdFLAotIEhTUl9BX0lGMl9BR0UsCisgIEhTUl9BX05PREVfQUREUiwKKyAgSFNSX0FfSUZJTkRFWCwKKyAgSFNSX0FfSUYxX0FHRSwKKyAgSFNSX0FfSUYyX0FHRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSFNSX0FfTk9ERV9BRERSX0IsCi0gSFNSX0FfSUYxX1NFUSwKLSBIU1JfQV9JRjJfU0VRLAotIEhTUl9BX0lGMV9JRklOREVYLAorICBIU1JfQV9OT0RFX0FERFJfQiwKKyAgSFNSX0FfSUYxX1NFUSwKKyAgSFNSX0FfSUYyX1NFUSwKKyAgSFNSX0FfSUYxX0lGSU5ERVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEhTUl9BX0lGMl9JRklOREVYLAotIEhTUl9BX0FERFJfQl9JRklOREVYLAotIF9fSFNSX0FfTUFYLAorICBIU1JfQV9JRjJfSUZJTkRFWCwKKyAgSFNSX0FfQUREUl9CX0lGSU5ERVgsCisgIF9fSFNSX0FfTUFYLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEhTUl9BX01BWCAoX19IU1JfQV9NQVggLSAxKQogZW51bSB7Ci0gSFNSX0NfVU5TUEVDLAotIEhTUl9DX1JJTkdfRVJST1IsCisgIEhTUl9DX1VOU1BFQywKKyAgSFNSX0NfUklOR19FUlJPUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSFNSX0NfTk9ERV9ET1dOLAotIEhTUl9DX0dFVF9OT0RFX1NUQVRVUywKLSBIU1JfQ19TRVRfTk9ERV9TVEFUVVMsCi0gSFNSX0NfR0VUX05PREVfTElTVCwKKyAgSFNSX0NfTk9ERV9ET1dOLAorICBIU1JfQ19HRVRfTk9ERV9TVEFUVVMsCisgIEhTUl9DX1NFVF9OT0RFX1NUQVRVUywKKyAgSFNSX0NfR0VUX05PREVfTElTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSFNSX0NfU0VUX05PREVfTElTVCwKLSBfX0hTUl9DX01BWCwKKyAgSFNSX0NfU0VUX05PREVfTElTVCwKKyAgX19IU1JfQ19NQVgsCiB9OwogI2RlZmluZSBIU1JfQ19NQVggKF9fSFNSX0NfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2h3X2JyZWFrcG9pbnQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaHdfYnJlYWtwb2ludC5oCmluZGV4IDJmNjEwNjIuLmZlY2Y0NDkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaHdfYnJlYWtwb2ludC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaHdfYnJlYWtwb2ludC5oCkBAIC0xOSwyNyArMTksMjcgQEAKICNpZm5kZWYgX1VBUElfTElOVVhfSFdfQlJFQUtQT0lOVF9ICiAjZGVmaW5lIF9VQVBJX0xJTlVYX0hXX0JSRUFLUE9JTlRfSAogZW51bSB7Ci0gSFdfQlJFQUtQT0lOVF9MRU5fMSA9IDEsCisgIEhXX0JSRUFLUE9JTlRfTEVOXzEgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBIV19CUkVBS1BPSU5UX0xFTl8yID0gMiwKLSBIV19CUkVBS1BPSU5UX0xFTl80ID0gNCwKLSBIV19CUkVBS1BPSU5UX0xFTl84ID0gOCwKKyAgSFdfQlJFQUtQT0lOVF9MRU5fMiA9IDIsCisgIEhXX0JSRUFLUE9JTlRfTEVOXzQgPSA0LAorICBIV19CUkVBS1BPSU5UX0xFTl84ID0gOCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gSFdfQlJFQUtQT0lOVF9FTVBUWSA9IDAsCi0gSFdfQlJFQUtQT0lOVF9SID0gMSwKLSBIV19CUkVBS1BPSU5UX1cgPSAyLAorICBIV19CUkVBS1BPSU5UX0VNUFRZID0gMCwKKyAgSFdfQlJFQUtQT0lOVF9SID0gMSwKKyAgSFdfQlJFQUtQT0lOVF9XID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSFdfQlJFQUtQT0lOVF9SVyA9IEhXX0JSRUFLUE9JTlRfUiB8IEhXX0JSRUFLUE9JTlRfVywKLSBIV19CUkVBS1BPSU5UX1ggPSA0LAotIEhXX0JSRUFLUE9JTlRfSU5WQUxJRCA9IEhXX0JSRUFLUE9JTlRfUlcgfCBIV19CUkVBS1BPSU5UX1gsCisgIEhXX0JSRUFLUE9JTlRfUlcgPSBIV19CUkVBS1BPSU5UX1IgfCBIV19CUkVBS1BPSU5UX1csCisgIEhXX0JSRUFLUE9JTlRfWCA9IDQsCisgIEhXX0JSRUFLUE9JTlRfSU5WQUxJRCA9IEhXX0JSRUFLUE9JTlRfUlcgfCBIV19CUkVBS1BPSU5UX1gsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gYnBfdHlwZV9pZHggewotIFRZUEVfSU5TVCA9IDAsCi0gVFlQRV9EQVRBID0gMSwKLSBUWVBFX01BWAorICBUWVBFX0lOU1QgPSAwLAorICBUWVBFX0RBVEEgPSAxLAorICBUWVBFX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaHlwZXJ2LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2h5cGVydi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ5YjQ4ZWUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2h5cGVydi5oCkBAIC0wLDAgKzEsMjM0IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9VQVBJX0hZUEVSVl9ICisjZGVmaW5lIF9VQVBJX0hZUEVSVl9ICisjaW5jbHVkZSA8bGludXgvdXVpZC5oPgorI2RlZmluZSBVVElMX0ZXX01JTk9SIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFVUSUxfV1MySzhfRldfTUFKT1IgMQorI2RlZmluZSBVVElMX1dTMks4X0ZXX1ZFUlNJT04gKFVUSUxfV1MySzhfRldfTUFKT1IgPDwgMTYgfCBVVElMX0ZXX01JTk9SKQorI2RlZmluZSBVVElMX0ZXX01BSk9SIDMKKyNkZWZpbmUgVVRJTF9GV19WRVJTSU9OIChVVElMX0ZXX01BSk9SIDw8IDE2IHwgVVRJTF9GV19NSU5PUikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZTU19PUF9SRUdJU1RFUiAxMjgKK2VudW0gaHZfdnNzX29wIHsKKyAgVlNTX09QX0NSRUFURSA9IDAsCisgIFZTU19PUF9ERUxFVEUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWU1NfT1BfSE9UX0JBQ0tVUCwKKyAgVlNTX09QX0dFVF9ETV9JTkZPLAorICBWU1NfT1BfQlVfQ09NUExFVEUsCisgIFZTU19PUF9GUkVFWkUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWU1NfT1BfVEhBVywKKyAgVlNTX09QX0FVVE9fUkVDT1ZFUiwKKyAgVlNTX09QX0NPVU5UCit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBodl92c3NfaGRyIHsKKyAgX191OCBvcGVyYXRpb247CisgIF9fdTggcmVzZXJ2ZWRbN107Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVlNTX0hCVV9OT19BVVRPX1JFQ09WRVJZIDB4MDAwMDAwMDUKK3N0cnVjdCBodl92c3NfY2hlY2tfZmVhdHVyZSB7CisgIF9fdTMyIGZsYWdzOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgaHZfdnNzX2NoZWNrX2RtX2luZm8geworICBfX3UzMiBmbGFnczsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CitzdHJ1Y3QgaHZfdnNzX21zZyB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bmlvbiB7CisgICAgc3RydWN0IGh2X3Zzc19oZHIgdnNzX2hkcjsKKyAgICBpbnQgZXJyb3I7CisgIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bmlvbiB7CisgICAgc3RydWN0IGh2X3Zzc19jaGVja19mZWF0dXJlIHZzc19jZjsKKyAgICBzdHJ1Y3QgaHZfdnNzX2NoZWNrX2RtX2luZm8gZG1faW5mbzsKKyAgfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworI2RlZmluZSBGQ09QWV9WRVJTSU9OXzAgMAorI2RlZmluZSBGQ09QWV9DVVJSRU5UX1ZFUlNJT04gRkNPUFlfVkVSU0lPTl8wCisjZGVmaW5lIFdfTUFYX1BBVEggMjYwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworZW51bSBodl9mY29weV9vcCB7CisgIFNUQVJUX0ZJTEVfQ09QWSA9IDAsCisgIFdSSVRFX1RPX0ZJTEUsCisgIENPTVBMRVRFX0ZDT1BZLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgQ0FOQ0VMX0ZDT1BZLAorfTsKK3N0cnVjdCBodl9mY29weV9oZHIgeworICBfX3UzMiBvcGVyYXRpb247CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1dWlkX2xlIHNlcnZpY2VfaWQwOworICB1dWlkX2xlIHNlcnZpY2VfaWQxOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKyNkZWZpbmUgT1ZFUl9XUklURSAweDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIENSRUFURV9QQVRIIDB4Mgorc3RydWN0IGh2X3N0YXJ0X2Zjb3B5IHsKKyAgc3RydWN0IGh2X2Zjb3B5X2hkciBoZHI7CisgIF9fdTE2IGZpbGVfbmFtZVtXX01BWF9QQVRIXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IHBhdGhfbmFtZVtXX01BWF9QQVRIXTsKKyAgX191MzIgY29weV9mbGFnczsKKyAgX191NjQgZmlsZV9zaXplOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIERBVEFfRlJBR01FTlQgKDYgKiAxMDI0KQorc3RydWN0IGh2X2RvX2Zjb3B5IHsKKyAgc3RydWN0IGh2X2Zjb3B5X2hkciBoZHI7CisgIF9fdTMyIHBhZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IG9mZnNldDsKKyAgX191MzIgc2l6ZTsKKyAgX191OCBkYXRhW0RBVEFfRlJBR01FTlRdOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEhWX0tWUF9FWENIQU5HRV9NQVhfVkFMVUVfU0laRSAoMjA0OCkKKyNkZWZpbmUgSFZfS1ZQX0VYQ0hBTkdFX01BWF9LRVlfU0laRSAoNTEyKQorI2RlZmluZSBSRUdfU1ogMQorI2RlZmluZSBSRUdfVTMyIDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJFR19VNjQgOAorI2RlZmluZSBLVlBfT1BfUkVHSVNURVIgNAorI2RlZmluZSBLVlBfT1BfUkVHSVNURVIxIDEwMAorZW51bSBodl9rdnBfZXhjaGdfb3AgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgS1ZQX09QX0dFVCA9IDAsCisgIEtWUF9PUF9TRVQsCisgIEtWUF9PUF9ERUxFVEUsCisgIEtWUF9PUF9FTlVNRVJBVEUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBLVlBfT1BfR0VUX0lQX0lORk8sCisgIEtWUF9PUF9TRVRfSVBfSU5GTywKKyAgS1ZQX09QX0NPVU5UCit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0gaHZfa3ZwX2V4Y2hnX3Bvb2wgeworICBLVlBfUE9PTF9FWFRFUk5BTCA9IDAsCisgIEtWUF9QT09MX0dVRVNULAorICBLVlBfUE9PTF9BVVRPLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgS1ZQX1BPT0xfQVVUT19FWFRFUk5BTCwKKyAgS1ZQX1BPT0xfQVVUT19JTlRFUk5BTCwKKyAgS1ZQX1BPT0xfQ09VTlQKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBIVl9TX09LIDB4MDAwMDAwMDAKKyNkZWZpbmUgSFZfRV9GQUlMIDB4ODAwMDQwMDUKKyNkZWZpbmUgSFZfU19DT05UIDB4ODAwNzAxMDMKKyNkZWZpbmUgSFZfRVJST1JfTk9UX1NVUFBPUlRFRCAweDgwMDcwMDMyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBIVl9FUlJPUl9NQUNISU5FX0xPQ0tFRCAweDgwMDcwNEY3CisjZGVmaW5lIEhWX0VSUk9SX0RFVklDRV9OT1RfQ09OTkVDVEVEIDB4ODAwNzA0OEYKKyNkZWZpbmUgSFZfSU5WQUxJREFSRyAweDgwMDcwMDU3CisjZGVmaW5lIEhWX0dVSURfTk9URk9VTkQgMHg4MDA0MTAwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSFZfRVJST1JfQUxSRUFEWV9FWElTVFMgMHg4MDA3MDA1MAorI2RlZmluZSBBRERSX0ZBTUlMWV9OT05FIDB4MDAKKyNkZWZpbmUgQUREUl9GQU1JTFlfSVBWNCAweDAxCisjZGVmaW5lIEFERFJfRkFNSUxZX0lQVjYgMHgwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUFYX0FEQVBURVJfSURfU0laRSAxMjgKKyNkZWZpbmUgTUFYX0lQX0FERFJfU0laRSAxMDI0CisjZGVmaW5lIE1BWF9HQVRFV0FZX1NJWkUgNTEyCitzdHJ1Y3QgaHZfa3ZwX2lwYWRkcl92YWx1ZSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBhZGFwdGVyX2lkW01BWF9BREFQVEVSX0lEX1NJWkVdOworICBfX3U4IGFkZHJfZmFtaWx5OworICBfX3U4IGRoY3BfZW5hYmxlZDsKKyAgX191MTYgaXBfYWRkcltNQVhfSVBfQUREUl9TSVpFXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IHN1Yl9uZXRbTUFYX0lQX0FERFJfU0laRV07CisgIF9fdTE2IGdhdGVfd2F5W01BWF9HQVRFV0FZX1NJWkVdOworICBfX3UxNiBkbnNfYWRkcltNQVhfSVBfQUREUl9TSVpFXTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGh2X2t2cF9oZHIgeworICBfX3U4IG9wZXJhdGlvbjsKKyAgX191OCBwb29sOworICBfX3UxNiBwYWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKK3N0cnVjdCBodl9rdnBfZXhjaGdfbXNnX3ZhbHVlIHsKKyAgX191MzIgdmFsdWVfdHlwZTsKKyAgX191MzIga2V5X3NpemU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiB2YWx1ZV9zaXplOworICBfX3U4IGtleVtIVl9LVlBfRVhDSEFOR0VfTUFYX0tFWV9TSVpFXTsKKyAgdW5pb24geworICAgIF9fdTggdmFsdWVbSFZfS1ZQX0VYQ0hBTkdFX01BWF9WQUxVRV9TSVpFXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgX191MzIgdmFsdWVfdTMyOworICAgIF9fdTY0IHZhbHVlX3U2NDsKKyAgfTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGh2X2t2cF9tc2dfZW51bWVyYXRlIHsKKyAgX191MzIgaW5kZXg7CisgIHN0cnVjdCBodl9rdnBfZXhjaGdfbXNnX3ZhbHVlIGRhdGE7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBodl9rdnBfbXNnX2dldCB7CisgIHN0cnVjdCBodl9rdnBfZXhjaGdfbXNnX3ZhbHVlIGRhdGE7Cit9Oworc3RydWN0IGh2X2t2cF9tc2dfc2V0IHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBodl9rdnBfZXhjaGdfbXNnX3ZhbHVlIGRhdGE7Cit9Oworc3RydWN0IGh2X2t2cF9tc2dfZGVsZXRlIHsKKyAgX191MzIga2V5X3NpemU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGtleVtIVl9LVlBfRVhDSEFOR0VfTUFYX0tFWV9TSVpFXTsKK307CitzdHJ1Y3QgaHZfa3ZwX3JlZ2lzdGVyIHsKKyAgX191OCB2ZXJzaW9uW0hWX0tWUF9FWENIQU5HRV9NQVhfS0VZX1NJWkVdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitzdHJ1Y3QgaHZfa3ZwX21zZyB7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgaHZfa3ZwX2hkciBrdnBfaGRyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICBpbnQgZXJyb3I7CisgIH07CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgaHZfa3ZwX21zZ19nZXQga3ZwX2dldDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgc3RydWN0IGh2X2t2cF9tc2dfc2V0IGt2cF9zZXQ7CisgICAgc3RydWN0IGh2X2t2cF9tc2dfZGVsZXRlIGt2cF9kZWxldGU7CisgICAgc3RydWN0IGh2X2t2cF9tc2dfZW51bWVyYXRlIGt2cF9lbnVtX2RhdGE7CisgICAgc3RydWN0IGh2X2t2cF9pcGFkZHJfdmFsdWUga3ZwX2lwX3ZhbDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgc3RydWN0IGh2X2t2cF9yZWdpc3RlciBrdnBfcmVnaXN0ZXI7CisgIH0gYm9keTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CitzdHJ1Y3QgaHZfa3ZwX2lwX21zZyB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IG9wZXJhdGlvbjsKKyAgX191OCBwb29sOworICBzdHJ1Y3QgaHZfa3ZwX2lwYWRkcl92YWx1ZSBrdnBfaXBfdmFsOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaTJjLWRldi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pMmMtZGV2LmgKaW5kZXggOTJkYjUzZC4uNjI2ZjRlZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pMmMtZGV2LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pMmMtZGV2LmgKQEAgLTMzLDE2ICszMywxNiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSTJDX1NNQlVTIDB4MDcyMAogc3RydWN0IGkyY19zbWJ1c19pb2N0bF9kYXRhIHsKLSBfX3U4IHJlYWRfd3JpdGU7Ci0gX191OCBjb21tYW5kOworICBfX3U4IHJlYWRfd3JpdGU7CisgIF9fdTggY29tbWFuZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2l6ZTsKLSB1bmlvbiBpMmNfc21idXNfZGF0YSBfX3VzZXIgKmRhdGE7CisgIF9fdTMyIHNpemU7CisgIHVuaW9uIGkyY19zbWJ1c19kYXRhIF9fdXNlciAqIGRhdGE7CiB9Owogc3RydWN0IGkyY19yZHdyX2lvY3RsX2RhdGEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaTJjX21zZyBfX3VzZXIgKm1zZ3M7Ci0gX191MzIgbm1zZ3M7CisgIHN0cnVjdCBpMmNfbXNnIF9fdXNlciAqIG1zZ3M7CisgIF9fdTMyIG5tc2dzOwogfTsKICNkZWZpbmUgSTJDX1JEUldfSU9DVExfTUFYX01TR1MgNDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2kyYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pMmMuaAppbmRleCAxODdmOTJmLi5iOWE3YmY4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2kyYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaTJjLmgKQEAgLTIxLDggKzIxLDggQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGkyY19tc2cgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBhZGRyOwotIF9fdTE2IGZsYWdzOworICBfX3UxNiBhZGRyOworICBfX3UxNiBmbGFnczsKICNkZWZpbmUgSTJDX01fVEVOIDB4MDAxMAogI2RlZmluZSBJMkNfTV9SRCAweDAwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0zMyw4ICszMyw4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJMkNfTV9OT19SRF9BQ0sgMHgwODAwCiAjZGVmaW5lIEkyQ19NX1JFQ1ZfTEVOIDB4MDQwMAotIF9fdTE2IGxlbjsKLSBfX3U4ICpidWY7CisgIF9fdTE2IGxlbjsKKyAgX191OCAqIGJ1ZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBJMkNfRlVOQ19JMkMgMHgwMDAwMDAwMQpAQCAtNTksMjAgKzU5LDIwIEBACiAjZGVmaW5lIEkyQ19GVU5DX1NNQlVTX1dSSVRFX0JMT0NLX0RBVEEgMHgwMjAwMDAwMAogI2RlZmluZSBJMkNfRlVOQ19TTUJVU19SRUFEX0kyQ19CTE9DSyAweDA0MDAwMDAwCiAjZGVmaW5lIEkyQ19GVU5DX1NNQlVTX1dSSVRFX0kyQ19CTE9DSyAweDA4MDAwMDAwCi0jZGVmaW5lIEkyQ19GVU5DX1NNQlVTX0JZVEUgKEkyQ19GVU5DX1NNQlVTX1JFQURfQllURSB8ICAgSTJDX0ZVTkNfU01CVVNfV1JJVEVfQllURSkKKyNkZWZpbmUgSTJDX0ZVTkNfU01CVVNfQllURSAoSTJDX0ZVTkNfU01CVVNfUkVBRF9CWVRFIHwgSTJDX0ZVTkNfU01CVVNfV1JJVEVfQllURSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEkyQ19GVU5DX1NNQlVTX0JZVEVfREFUQSAoSTJDX0ZVTkNfU01CVVNfUkVBRF9CWVRFX0RBVEEgfCAgIEkyQ19GVU5DX1NNQlVTX1dSSVRFX0JZVEVfREFUQSkKLSNkZWZpbmUgSTJDX0ZVTkNfU01CVVNfV09SRF9EQVRBIChJMkNfRlVOQ19TTUJVU19SRUFEX1dPUkRfREFUQSB8ICAgSTJDX0ZVTkNfU01CVVNfV1JJVEVfV09SRF9EQVRBKQotI2RlZmluZSBJMkNfRlVOQ19TTUJVU19CTE9DS19EQVRBIChJMkNfRlVOQ19TTUJVU19SRUFEX0JMT0NLX0RBVEEgfCAgIEkyQ19GVU5DX1NNQlVTX1dSSVRFX0JMT0NLX0RBVEEpCi0jZGVmaW5lIEkyQ19GVU5DX1NNQlVTX0kyQ19CTE9DSyAoSTJDX0ZVTkNfU01CVVNfUkVBRF9JMkNfQkxPQ0sgfCAgIEkyQ19GVU5DX1NNQlVTX1dSSVRFX0kyQ19CTE9DSykKKyNkZWZpbmUgSTJDX0ZVTkNfU01CVVNfQllURV9EQVRBIChJMkNfRlVOQ19TTUJVU19SRUFEX0JZVEVfREFUQSB8IEkyQ19GVU5DX1NNQlVTX1dSSVRFX0JZVEVfREFUQSkKKyNkZWZpbmUgSTJDX0ZVTkNfU01CVVNfV09SRF9EQVRBIChJMkNfRlVOQ19TTUJVU19SRUFEX1dPUkRfREFUQSB8IEkyQ19GVU5DX1NNQlVTX1dSSVRFX1dPUkRfREFUQSkKKyNkZWZpbmUgSTJDX0ZVTkNfU01CVVNfQkxPQ0tfREFUQSAoSTJDX0ZVTkNfU01CVVNfUkVBRF9CTE9DS19EQVRBIHwgSTJDX0ZVTkNfU01CVVNfV1JJVEVfQkxPQ0tfREFUQSkKKyNkZWZpbmUgSTJDX0ZVTkNfU01CVVNfSTJDX0JMT0NLIChJMkNfRlVOQ19TTUJVU19SRUFEX0kyQ19CTE9DSyB8IEkyQ19GVU5DX1NNQlVTX1dSSVRFX0kyQ19CTE9DSykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEkyQ19GVU5DX1NNQlVTX0VNVUwgKEkyQ19GVU5DX1NNQlVTX1FVSUNLIHwgICBJMkNfRlVOQ19TTUJVU19CWVRFIHwgICBJMkNfRlVOQ19TTUJVU19CWVRFX0RBVEEgfCAgIEkyQ19GVU5DX1NNQlVTX1dPUkRfREFUQSB8ICAgSTJDX0ZVTkNfU01CVVNfUFJPQ19DQUxMIHwgICBJMkNfRlVOQ19TTUJVU19XUklURV9CTE9DS19EQVRBIHwgICBJMkNfRlVOQ19TTUJVU19JMkNfQkxPQ0sgfCAgIEkyQ19GVU5DX1NNQlVTX1BFQykKKyNkZWZpbmUgSTJDX0ZVTkNfU01CVVNfRU1VTCAoSTJDX0ZVTkNfU01CVVNfUVVJQ0sgfCBJMkNfRlVOQ19TTUJVU19CWVRFIHwgSTJDX0ZVTkNfU01CVVNfQllURV9EQVRBIHwgSTJDX0ZVTkNfU01CVVNfV09SRF9EQVRBIHwgSTJDX0ZVTkNfU01CVVNfUFJPQ19DQUxMIHwgSTJDX0ZVTkNfU01CVVNfV1JJVEVfQkxPQ0tfREFUQSB8IEkyQ19GVU5DX1NNQlVTX0kyQ19CTE9DSyB8IEkyQ19GVU5DX1NNQlVTX1BFQykKICNkZWZpbmUgSTJDX1NNQlVTX0JMT0NLX01BWCAzMgogdW5pb24gaTJjX3NtYnVzX2RhdGEgewotIF9fdTggYnl0ZTsKKyAgX191OCBieXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB3b3JkOwotIF9fdTggYmxvY2tbSTJDX1NNQlVTX0JMT0NLX01BWCArIDJdOworICBfX3UxNiB3b3JkOworICBfX3U4IGJsb2NrW0kyQ19TTUJVU19CTE9DS19NQVggKyAyXTsKIH07CiAjZGVmaW5lIEkyQ19TTUJVU19SRUFEIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2kyby1kZXYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaTJvLWRldi5oCmluZGV4IGUwMjQ5OTcuLjkzMjhjYWQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaTJvLWRldi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaTJvLWRldi5oCkBAIC0yMyw5NyArMjMsOTcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNkZWZpbmUgSTJPX01BR0lDX05VTUJFUiAnaScKLSNkZWZpbmUgSTJPR0VUSU9QUyBfSU9SKEkyT19NQUdJQ19OVU1CRVIsMCxfX3U4W01BWF9JMk9fQ09OVFJPTExFUlNdKQotI2RlZmluZSBJMk9IUlRHRVQgX0lPV1IoSTJPX01BR0lDX05VTUJFUiwxLHN0cnVjdCBpMm9fY21kX2hydGxjdCkKKyNkZWZpbmUgSTJPR0VUSU9QUyBfSU9SKEkyT19NQUdJQ19OVU1CRVIsIDAsIF9fdThbTUFYX0kyT19DT05UUk9MTEVSU10pCisjZGVmaW5lIEkyT0hSVEdFVCBfSU9XUihJMk9fTUFHSUNfTlVNQkVSLCAxLCBzdHJ1Y3QgaTJvX2NtZF9ocnRsY3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJMk9MQ1RHRVQgX0lPV1IoSTJPX01BR0lDX05VTUJFUiwyLHN0cnVjdCBpMm9fY21kX2hydGxjdCkKLSNkZWZpbmUgSTJPUEFSTVNFVCBfSU9XUihJMk9fTUFHSUNfTlVNQkVSLDMsc3RydWN0IGkyb19jbWRfcHNldGdldCkKLSNkZWZpbmUgSTJPUEFSTUdFVCBfSU9XUihJMk9fTUFHSUNfTlVNQkVSLDQsc3RydWN0IGkyb19jbWRfcHNldGdldCkKLSNkZWZpbmUgSTJPU1dETCBfSU9XUihJMk9fTUFHSUNfTlVNQkVSLDUsc3RydWN0IGkyb19zd194ZmVyKQorI2RlZmluZSBJMk9MQ1RHRVQgX0lPV1IoSTJPX01BR0lDX05VTUJFUiwgMiwgc3RydWN0IGkyb19jbWRfaHJ0bGN0KQorI2RlZmluZSBJMk9QQVJNU0VUIF9JT1dSKEkyT19NQUdJQ19OVU1CRVIsIDMsIHN0cnVjdCBpMm9fY21kX3BzZXRnZXQpCisjZGVmaW5lIEkyT1BBUk1HRVQgX0lPV1IoSTJPX01BR0lDX05VTUJFUiwgNCwgc3RydWN0IGkyb19jbWRfcHNldGdldCkKKyNkZWZpbmUgSTJPU1dETCBfSU9XUihJMk9fTUFHSUNfTlVNQkVSLCA1LCBzdHJ1Y3QgaTJvX3N3X3hmZXIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJMk9TV1VMIF9JT1dSKEkyT19NQUdJQ19OVU1CRVIsNixzdHJ1Y3QgaTJvX3N3X3hmZXIpCi0jZGVmaW5lIEkyT1NXREVMIF9JT1dSKEkyT19NQUdJQ19OVU1CRVIsNyxzdHJ1Y3QgaTJvX3N3X3hmZXIpCi0jZGVmaW5lIEkyT1ZBTElEQVRFIF9JT1IoSTJPX01BR0lDX05VTUJFUiw4LF9fdTMyKQotI2RlZmluZSBJMk9IVE1MIF9JT1dSKEkyT19NQUdJQ19OVU1CRVIsOSxzdHJ1Y3QgaTJvX2h0bWwpCisjZGVmaW5lIEkyT1NXVUwgX0lPV1IoSTJPX01BR0lDX05VTUJFUiwgNiwgc3RydWN0IGkyb19zd194ZmVyKQorI2RlZmluZSBJMk9TV0RFTCBfSU9XUihJMk9fTUFHSUNfTlVNQkVSLCA3LCBzdHJ1Y3QgaTJvX3N3X3hmZXIpCisjZGVmaW5lIEkyT1ZBTElEQVRFIF9JT1IoSTJPX01BR0lDX05VTUJFUiwgOCwgX191MzIpCisjZGVmaW5lIEkyT0hUTUwgX0lPV1IoSTJPX01BR0lDX05VTUJFUiwgOSwgc3RydWN0IGkyb19odG1sKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSTJPRVZUUkVHIF9JT1coSTJPX01BR0lDX05VTUJFUiwxMCxzdHJ1Y3QgaTJvX2V2dF9pZCkKLSNkZWZpbmUgSTJPRVZUR0VUIF9JT1IoSTJPX01BR0lDX05VTUJFUiwxMSxzdHJ1Y3QgaTJvX2V2dF9pbmZvKQotI2RlZmluZSBJMk9QQVNTVEhSVSBfSU9SKEkyT19NQUdJQ19OVU1CRVIsMTIsc3RydWN0IGkyb19jbWRfcGFzc3RocnUpCi0jZGVmaW5lIEkyT1BBU1NUSFJVMzIgX0lPUihJMk9fTUFHSUNfTlVNQkVSLDEyLHN0cnVjdCBpMm9fY21kX3Bhc3N0aHJ1MzIpCisjZGVmaW5lIEkyT0VWVFJFRyBfSU9XKEkyT19NQUdJQ19OVU1CRVIsIDEwLCBzdHJ1Y3QgaTJvX2V2dF9pZCkKKyNkZWZpbmUgSTJPRVZUR0VUIF9JT1IoSTJPX01BR0lDX05VTUJFUiwgMTEsIHN0cnVjdCBpMm9fZXZ0X2luZm8pCisjZGVmaW5lIEkyT1BBU1NUSFJVIF9JT1IoSTJPX01BR0lDX05VTUJFUiwgMTIsIHN0cnVjdCBpMm9fY21kX3Bhc3N0aHJ1KQorI2RlZmluZSBJMk9QQVNTVEhSVTMyIF9JT1IoSTJPX01BR0lDX05VTUJFUiwgMTIsIHN0cnVjdCBpMm9fY21kX3Bhc3N0aHJ1MzIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGkyb19jbWRfcGFzc3RocnUzMiB7Ci0gdW5zaWduZWQgaW50IGlvcDsKLSBfX3UzMiBtc2c7CisgIHVuc2lnbmVkIGludCBpb3A7CisgIF9fdTMyIG1zZzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGkyb19jbWRfcGFzc3RocnUgewotIHVuc2lnbmVkIGludCBpb3A7Ci0gdm9pZCBfX3VzZXIgKm1zZzsKKyAgdW5zaWduZWQgaW50IGlvcDsKKyAgdm9pZCBfX3VzZXIgKiBtc2c7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpMm9fY21kX2hydGxjdCB7Ci0gdW5zaWduZWQgaW50IGlvcDsKLSB2b2lkIF9fdXNlciAqcmVzYnVmOwotIHVuc2lnbmVkIGludCBfX3VzZXIgKnJlc2xlbjsKKyAgdW5zaWduZWQgaW50IGlvcDsKKyAgdm9pZCBfX3VzZXIgKiByZXNidWY7CisgIHVuc2lnbmVkIGludCBfX3VzZXIgKiByZXNsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpMm9fY21kX3BzZXRnZXQgewotIHVuc2lnbmVkIGludCBpb3A7Ci0gdW5zaWduZWQgaW50IHRpZDsKKyAgdW5zaWduZWQgaW50IGlvcDsKKyAgdW5zaWduZWQgaW50IHRpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCBfX3VzZXIgKm9wYnVmOwotIHVuc2lnbmVkIGludCBvcGxlbjsKLSB2b2lkIF9fdXNlciAqcmVzYnVmOwotIHVuc2lnbmVkIGludCBfX3VzZXIgKnJlc2xlbjsKKyAgdm9pZCBfX3VzZXIgKiBvcGJ1ZjsKKyAgdW5zaWduZWQgaW50IG9wbGVuOworICB2b2lkIF9fdXNlciAqIHJlc2J1ZjsKKyAgdW5zaWduZWQgaW50IF9fdXNlciAqIHJlc2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGkyb19zd194ZmVyIHsKLSB1bnNpZ25lZCBpbnQgaW9wOwotIHVuc2lnbmVkIGNoYXIgZmxhZ3M7CisgIHVuc2lnbmVkIGludCBpb3A7CisgIHVuc2lnbmVkIGNoYXIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgc3dfdHlwZTsKLSB1bnNpZ25lZCBpbnQgc3dfaWQ7Ci0gdm9pZCBfX3VzZXIgKmJ1ZjsKLSB1bnNpZ25lZCBpbnQgX191c2VyICpzd2xlbjsKKyAgdW5zaWduZWQgY2hhciBzd190eXBlOworICB1bnNpZ25lZCBpbnQgc3dfaWQ7CisgIHZvaWQgX191c2VyICogYnVmOworICB1bnNpZ25lZCBpbnQgX191c2VyICogc3dsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBfX3VzZXIgKm1heGZyYWc7Ci0gdW5zaWduZWQgaW50IF9fdXNlciAqY3VyZnJhZzsKKyAgdW5zaWduZWQgaW50IF9fdXNlciAqIG1heGZyYWc7CisgIHVuc2lnbmVkIGludCBfX3VzZXIgKiBjdXJmcmFnOwogfTsKIHN0cnVjdCBpMm9faHRtbCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBpb3A7Ci0gdW5zaWduZWQgaW50IHRpZDsKLSB1bnNpZ25lZCBpbnQgcGFnZTsKLSB2b2lkIF9fdXNlciAqcmVzYnVmOworICB1bnNpZ25lZCBpbnQgaW9wOworICB1bnNpZ25lZCBpbnQgdGlkOworICB1bnNpZ25lZCBpbnQgcGFnZTsKKyAgdm9pZCBfX3VzZXIgKiByZXNidWY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBfX3VzZXIgKnJlc2xlbjsKLSB2b2lkIF9fdXNlciAqcWJ1ZjsKLSB1bnNpZ25lZCBpbnQgcWxlbjsKKyAgdW5zaWduZWQgaW50IF9fdXNlciAqIHJlc2xlbjsKKyAgdm9pZCBfX3VzZXIgKiBxYnVmOworICB1bnNpZ25lZCBpbnQgcWxlbjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJMk9fRVZUX1FfTEVOIDMyCiBzdHJ1Y3QgaTJvX2V2dF9pZCB7Ci0gdW5zaWduZWQgaW50IGlvcDsKLSB1bnNpZ25lZCBpbnQgdGlkOworICB1bnNpZ25lZCBpbnQgaW9wOworICB1bnNpZ25lZCBpbnQgdGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZXZ0X21hc2s7CisgIHVuc2lnbmVkIGludCBldnRfbWFzazsKIH07CiAjZGVmaW5lIEkyT19FVlRfREFUQV9TSVpFIDg4CiBzdHJ1Y3QgaTJvX2V2dF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGkyb19ldnRfaWQgaWQ7Ci0gdW5zaWduZWQgY2hhciBldnRfZGF0YVtJMk9fRVZUX0RBVEFfU0laRV07Ci0gdW5zaWduZWQgaW50IGRhdGFfc2l6ZTsKKyAgc3RydWN0IGkyb19ldnRfaWQgaWQ7CisgIHVuc2lnbmVkIGNoYXIgZXZ0X2RhdGFbSTJPX0VWVF9EQVRBX1NJWkVdOworICB1bnNpZ25lZCBpbnQgZGF0YV9zaXplOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaTJvX2V2dF9nZXQgewotIHN0cnVjdCBpMm9fZXZ0X2luZm8gaW5mbzsKLSBpbnQgcGVuZGluZzsKLSBpbnQgbG9zdDsKKyAgc3RydWN0IGkyb19ldnRfaW5mbyBpbmZvOworICBpbnQgcGVuZGluZzsKKyAgaW50IGxvc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHR5cGVkZWYgc3RydWN0IGkyb19zZ19pb19oZHIgewotIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgaW50IGZsYWdzOwogfSBpMm9fc2dfaW9faGRyX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJMk9fQlVTX0xPQ0FMIDAKQEAgLTEyNywxNDEgKzEyNywxNDEgQEAKICNkZWZpbmUgSTJPX0JVU19VTktOT1dOIDB4ODAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBfaTJvX3BjaV9idXMgewotIF9fdTggUGNpRnVuY3Rpb25OdW1iZXI7Ci0gX191OCBQY2lEZXZpY2VOdW1iZXI7Ci0gX191OCBQY2lCdXNOdW1iZXI7CisgIF9fdTggUGNpRnVuY3Rpb25OdW1iZXI7CisgIF9fdTggUGNpRGV2aWNlTnVtYmVyOworICBfX3U4IFBjaUJ1c051bWJlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZDsKLSBfX3UxNiBQY2lWZW5kb3JJRDsKLSBfX3UxNiBQY2lEZXZpY2VJRDsKKyAgX191OCByZXNlcnZlZDsKKyAgX191MTYgUGNpVmVuZG9ySUQ7CisgIF9fdTE2IFBjaURldmljZUlEOwogfSBpMm9fcGNpX2J1czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBfaTJvX2xvY2FsX2J1cyB7Ci0gX191MTYgTGJCYXNlSU9Qb3J0OwotIF9fdTE2IHJlc2VydmVkOwotIF9fdTMyIExiQmFzZU1lbW9yeUFkZHJlc3M7CisgIF9fdTE2IExiQmFzZUlPUG9ydDsKKyAgX191MTYgcmVzZXJ2ZWQ7CisgIF9fdTMyIExiQmFzZU1lbW9yeUFkZHJlc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBpMm9fbG9jYWxfYnVzOwogdHlwZWRlZiBzdHJ1Y3QgX2kyb19pc2FfYnVzIHsKLSBfX3UxNiBJc2FCYXNlSU9Qb3J0OwotIF9fdTggQ1NOOworICBfX3UxNiBJc2FCYXNlSU9Qb3J0OworICBfX3U4IENTTjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZDsKLSBfX3UzMiBJc2FCYXNlTWVtb3J5QWRkcmVzczsKKyAgX191OCByZXNlcnZlZDsKKyAgX191MzIgSXNhQmFzZU1lbW9yeUFkZHJlc3M7CiB9IGkyb19pc2FfYnVzOwogdHlwZWRlZiBzdHJ1Y3QgX2kyb19laXNhX2J1c19pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgRWlzYUJhc2VJT1BvcnQ7Ci0gX191OCByZXNlcnZlZDsKLSBfX3U4IEVpc2FTbG90TnVtYmVyOwotIF9fdTMyIEVpc2FCYXNlTWVtb3J5QWRkcmVzczsKKyAgX191MTYgRWlzYUJhc2VJT1BvcnQ7CisgIF9fdTggcmVzZXJ2ZWQ7CisgIF9fdTggRWlzYVNsb3ROdW1iZXI7CisgIF9fdTMyIEVpc2FCYXNlTWVtb3J5QWRkcmVzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGkyb19laXNhX2J1czsKIHR5cGVkZWYgc3RydWN0IF9pMm9fbWNhX2J1cyB7Ci0gX191MTYgTWNhQmFzZUlPUG9ydDsKLSBfX3U4IHJlc2VydmVkOworICBfX3UxNiBNY2FCYXNlSU9Qb3J0OworICBfX3U4IHJlc2VydmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IE1jYVNsb3ROdW1iZXI7Ci0gX191MzIgTWNhQmFzZU1lbW9yeUFkZHJlc3M7CisgIF9fdTggTWNhU2xvdE51bWJlcjsKKyAgX191MzIgTWNhQmFzZU1lbW9yeUFkZHJlc3M7CiB9IGkyb19tY2FfYnVzOwogdHlwZWRlZiBzdHJ1Y3QgX2kyb19vdGhlcl9idXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBCYXNlSU9Qb3J0OwotIF9fdTE2IHJlc2VydmVkOwotIF9fdTMyIEJhc2VNZW1vcnlBZGRyZXNzOworICBfX3UxNiBCYXNlSU9Qb3J0OworICBfX3UxNiByZXNlcnZlZDsKKyAgX191MzIgQmFzZU1lbW9yeUFkZHJlc3M7CiB9IGkyb19vdGhlcl9idXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgX2kyb19ocnRfZW50cnkgewotIF9fdTMyIGFkYXB0ZXJfaWQ7Ci0gX191MzIgcGFyZW50X3RpZDoxMjsKLSBfX3UzMiBzdGF0ZTo0OworICBfX3UzMiBhZGFwdGVyX2lkOworICBfX3UzMiBwYXJlbnRfdGlkIDogMTI7CisgIF9fdTMyIHN0YXRlIDogNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYnVzX251bTo4OwotIF9fdTMyIGJ1c190eXBlOjg7Ci0gdW5pb24gewotIGkyb19wY2lfYnVzIHBjaV9idXM7CisgIF9fdTMyIGJ1c19udW0gOiA4OworICBfX3UzMiBidXNfdHlwZSA6IDg7CisgIHVuaW9uIHsKKyAgICBpMm9fcGNpX2J1cyBwY2lfYnVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpMm9fbG9jYWxfYnVzIGxvY2FsX2J1czsKLSBpMm9faXNhX2J1cyBpc2FfYnVzOwotIGkyb19laXNhX2J1cyBlaXNhX2J1czsKLSBpMm9fbWNhX2J1cyBtY2FfYnVzOworICAgIGkyb19sb2NhbF9idXMgbG9jYWxfYnVzOworICAgIGkyb19pc2FfYnVzIGlzYV9idXM7CisgICAgaTJvX2Vpc2FfYnVzIGVpc2FfYnVzOworICAgIGkyb19tY2FfYnVzIG1jYV9idXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGkyb19vdGhlcl9idXMgb3RoZXJfYnVzOwotIH0gYnVzOworICAgIGkyb19vdGhlcl9idXMgb3RoZXJfYnVzOworICB9IGJ1czsKIH0gaTJvX2hydF9lbnRyeTsKIHR5cGVkZWYgc3RydWN0IF9pMm9faHJ0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbnVtX2VudHJpZXM7Ci0gX191OCBlbnRyeV9sZW47Ci0gX191OCBocnRfdmVyc2lvbjsKLSBfX3UzMiBjaGFuZ2VfaW5kOworICBfX3UxNiBudW1fZW50cmllczsKKyAgX191OCBlbnRyeV9sZW47CisgIF9fdTggaHJ0X3ZlcnNpb247CisgIF9fdTMyIGNoYW5nZV9pbmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGkyb19ocnRfZW50cnkgaHJ0X2VudHJ5WzFdOworICBpMm9faHJ0X2VudHJ5IGhydF9lbnRyeVsxXTsKIH0gaTJvX2hydDsKIHR5cGVkZWYgc3RydWN0IF9pMm9fbGN0X2VudHJ5IHsKLSBfX3UzMiBlbnRyeV9zaXplOjE2OworICBfX3UzMiBlbnRyeV9zaXplIDogMTY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRpZDoxMjsKLSBfX3UzMiByZXNlcnZlZDo0OwotIF9fdTMyIGNoYW5nZV9pbmQ7Ci0gX191MzIgZGV2aWNlX2ZsYWdzOworICBfX3UzMiB0aWQgOiAxMjsKKyAgX191MzIgcmVzZXJ2ZWQgOiA0OworICBfX3UzMiBjaGFuZ2VfaW5kOworICBfX3UzMiBkZXZpY2VfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNsYXNzX2lkOjEyOwotIF9fdTMyIHZlcnNpb246NDsKLSBfX3UzMiB2ZW5kb3JfaWQ6MTY7Ci0gX191MzIgc3ViX2NsYXNzOworICBfX3UzMiBjbGFzc19pZCA6IDEyOworICBfX3UzMiB2ZXJzaW9uIDogNDsKKyAgX191MzIgdmVuZG9yX2lkIDogMTY7CisgIF9fdTMyIHN1Yl9jbGFzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdXNlcl90aWQ6MTI7Ci0gX191MzIgcGFyZW50X3RpZDoxMjsKLSBfX3UzMiBiaW9zX2luZm86ODsKLSBfX3U4IGlkZW50aXR5X3RhZ1s4XTsKKyAgX191MzIgdXNlcl90aWQgOiAxMjsKKyAgX191MzIgcGFyZW50X3RpZCA6IDEyOworICBfX3UzMiBiaW9zX2luZm8gOiA4OworICBfX3U4IGlkZW50aXR5X3RhZ1s4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZXZlbnRfY2FwYWJpbGl0aWVzOworICBfX3UzMiBldmVudF9jYXBhYmlsaXRpZXM7CiB9IGkyb19sY3RfZW50cnk7CiB0eXBlZGVmIHN0cnVjdCBfaTJvX2xjdCB7Ci0gX191MzIgdGFibGVfc2l6ZToxNjsKKyAgX191MzIgdGFibGVfc2l6ZSA6IDE2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBib290X3RpZDoxMjsKLSBfX3UzMiBsY3RfdmVyOjQ7Ci0gX191MzIgaW9wX2ZsYWdzOwotIF9fdTMyIGNoYW5nZV9pbmQ7CisgIF9fdTMyIGJvb3RfdGlkIDogMTI7CisgIF9fdTMyIGxjdF92ZXIgOiA0OworICBfX3UzMiBpb3BfZmxhZ3M7CisgIF9fdTMyIGNoYW5nZV9pbmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGkyb19sY3RfZW50cnkgbGN0X2VudHJ5WzFdOworICBpMm9fbGN0X2VudHJ5IGxjdF9lbnRyeVsxXTsKIH0gaTJvX2xjdDsKIHR5cGVkZWYgc3RydWN0IF9pMm9fc3RhdHVzX2Jsb2NrIHsKLSBfX3UxNiBvcmdfaWQ7CisgIF9fdTE2IG9yZ19pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcmVzZXJ2ZWQ7Ci0gX191MTYgaW9wX2lkOjEyOwotIF9fdTE2IHJlc2VydmVkMTo0OwotIF9fdTE2IGhvc3RfdW5pdF9pZDsKKyAgX191MTYgcmVzZXJ2ZWQ7CisgIF9fdTE2IGlvcF9pZCA6IDEyOworICBfX3UxNiByZXNlcnZlZDEgOiA0OworICBfX3UxNiBob3N0X3VuaXRfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNlZ21lbnRfbnVtYmVyOjEyOwotIF9fdTE2IGkyb192ZXJzaW9uOjQ7Ci0gX191OCBpb3Bfc3RhdGU7Ci0gX191OCBtc2dfdHlwZTsKKyAgX191MTYgc2VnbWVudF9udW1iZXIgOiAxMjsKKyAgX191MTYgaTJvX3ZlcnNpb24gOiA0OworICBfX3U4IGlvcF9zdGF0ZTsKKyAgX191OCBtc2dfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgaW5ib3VuZF9mcmFtZV9zaXplOwotIF9fdTggaW5pdF9jb2RlOwotIF9fdTggcmVzZXJ2ZWQyOwotIF9fdTMyIG1heF9pbmJvdW5kX2ZyYW1lczsKKyAgX191MTYgaW5ib3VuZF9mcmFtZV9zaXplOworICBfX3U4IGluaXRfY29kZTsKKyAgX191OCByZXNlcnZlZDI7CisgIF9fdTMyIG1heF9pbmJvdW5kX2ZyYW1lczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY3VyX2luYm91bmRfZnJhbWVzOwotIF9fdTMyIG1heF9vdXRib3VuZF9mcmFtZXM7Ci0gY2hhciBwcm9kdWN0X2lkWzI0XTsKLSBfX3UzMiBleHBlY3RlZF9sY3Rfc2l6ZTsKKyAgX191MzIgY3VyX2luYm91bmRfZnJhbWVzOworICBfX3UzMiBtYXhfb3V0Ym91bmRfZnJhbWVzOworICBjaGFyIHByb2R1Y3RfaWRbMjRdOworICBfX3UzMiBleHBlY3RlZF9sY3Rfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW9wX2NhcGFiaWxpdGllczsKLSBfX3UzMiBkZXNpcmVkX21lbV9zaXplOwotIF9fdTMyIGN1cnJlbnRfbWVtX3NpemU7Ci0gX191MzIgY3VycmVudF9tZW1fYmFzZTsKKyAgX191MzIgaW9wX2NhcGFiaWxpdGllczsKKyAgX191MzIgZGVzaXJlZF9tZW1fc2l6ZTsKKyAgX191MzIgY3VycmVudF9tZW1fc2l6ZTsKKyAgX191MzIgY3VycmVudF9tZW1fYmFzZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGVzaXJlZF9pb19zaXplOwotIF9fdTMyIGN1cnJlbnRfaW9fc2l6ZTsKLSBfX3UzMiBjdXJyZW50X2lvX2Jhc2U7Ci0gX191MzIgcmVzZXJ2ZWQzOjI0OworICBfX3UzMiBkZXNpcmVkX2lvX3NpemU7CisgIF9fdTMyIGN1cnJlbnRfaW9fc2l6ZTsKKyAgX191MzIgY3VycmVudF9pb19iYXNlOworICBfX3UzMiByZXNlcnZlZDMgOiAyNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY21kX3N0YXR1czo4OworICBfX3UzMiBjbWRfc3RhdHVzIDogODsKIH0gaTJvX3N0YXR1c19ibG9jazsKICNkZWZpbmUgSTJPX0VWVF9JTkRfU1RBVEVfQ0hBTkdFIDB4ODAwMDAwMDAKICNkZWZpbmUgSTJPX0VWVF9JTkRfR0VORVJBTF9XQVJOSU5HIDB4NDAwMDAwMDAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaThrLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2k4ay5oCmluZGV4IGNjNWMxNmUuLmFmYzczMjggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaThrLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pOGsuaApAQCAtMjEsMTIgKzIxLDEyIEBACiAjZGVmaW5lIEk4S19QUk9DICIvcHJvYy9pOGsiCiAjZGVmaW5lIEk4S19QUk9DX0ZNVCAiMS4wIgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSThLX0JJT1NfVkVSU0lPTiBfSU9SICgnaScsIDB4ODAsIGludCkKLSNkZWZpbmUgSThLX01BQ0hJTkVfSUQgX0lPUiAoJ2knLCAweDgxLCBpbnQpCi0jZGVmaW5lIEk4S19QT1dFUl9TVEFUVVMgX0lPUiAoJ2knLCAweDgyLCBzaXplX3QpCi0jZGVmaW5lIEk4S19GTl9TVEFUVVMgX0lPUiAoJ2knLCAweDgzLCBzaXplX3QpCisjZGVmaW5lIEk4S19CSU9TX1ZFUlNJT04gX0lPUignaScsIDB4ODAsIGludCkKKyNkZWZpbmUgSThLX01BQ0hJTkVfSUQgX0lPUignaScsIDB4ODEsIGludCkKKyNkZWZpbmUgSThLX1BPV0VSX1NUQVRVUyBfSU9SKCdpJywgMHg4Miwgc2l6ZV90KQorI2RlZmluZSBJOEtfRk5fU1RBVFVTIF9JT1IoJ2knLCAweDgzLCBzaXplX3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJOEtfR0VUX1RFTVAgX0lPUiAoJ2knLCAweDg0LCBzaXplX3QpCisjZGVmaW5lIEk4S19HRVRfVEVNUCBfSU9SKCdpJywgMHg4NCwgc2l6ZV90KQogI2RlZmluZSBJOEtfR0VUX1NQRUVEIF9JT1dSKCdpJywgMHg4NSwgc2l6ZV90KQogI2RlZmluZSBJOEtfR0VUX0ZBTiBfSU9XUignaScsIDB4ODYsIHNpemVfdCkKICNkZWZpbmUgSThLX1NFVF9GQU4gX0lPV1IoJ2knLCAweDg3LCBzaXplX3QpCkBAIC0zNywxMiArMzcsMTMgQEAKICNkZWZpbmUgSThLX0ZBTl9MT1cgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSThLX0ZBTl9ISUdIIDIKLSNkZWZpbmUgSThLX0ZBTl9NQVggSThLX0ZBTl9ISUdICisjZGVmaW5lIEk4S19GQU5fVFVSQk8gMworI2RlZmluZSBJOEtfRkFOX01BWCBJOEtfRkFOX1RVUkJPCiAjZGVmaW5lIEk4S19WT0xfVVAgMQotI2RlZmluZSBJOEtfVk9MX0RPV04gMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSThLX1ZPTF9ET1dOIDIKICNkZWZpbmUgSThLX1ZPTF9NVVRFIDQKICNkZWZpbmUgSThLX0FDIDEKICNkZWZpbmUgSThLX0JBVFRFUlkgMAotI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ljbXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWNtcC5oCmluZGV4IDFjZjlkN2IuLjM3NzAzNTYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWNtcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWNtcC5oCkBAIC02NywyOCArNjcsMjggQEAKICNkZWZpbmUgSUNNUF9FWENfRlJBR1RJTUUgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpY21waGRyIHsKLSBfX3U4IHR5cGU7Ci0gX191OCBjb2RlOwotIF9fc3VtMTYgY2hlY2tzdW07CisgIF9fdTggdHlwZTsKKyAgX191OCBjb2RlOworICBfX3N1bTE2IGNoZWNrc3VtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IHsKLSBfX2JlMTYgaWQ7Ci0gX19iZTE2IHNlcXVlbmNlOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fYmUxNiBpZDsKKyAgICAgIF9fYmUxNiBzZXF1ZW5jZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBlY2hvOwotIF9fYmUzMiBnYXRld2F5OwotIHN0cnVjdCB7Ci0gX19iZTE2IF9fbGludXhfdW51c2VkOworICAgIH0gZWNobzsKKyAgICBfX2JlMzIgZ2F0ZXdheTsKKyAgICBzdHJ1Y3QgeworICAgICAgX19iZTE2IF9fbGludXhfdW51c2VkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgbXR1OwotIH0gZnJhZzsKLSB9IHVuOworICAgICAgX19iZTE2IG10dTsKKyAgICB9IGZyYWc7CisgIH0gdW47CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUNNUF9GSUxURVIgMQogc3RydWN0IGljbXBfZmlsdGVyIHsKLSBfX3UzMiBkYXRhOworICBfX3UzMiBkYXRhOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWNtcHY2LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2ljbXB2Ni5oCmluZGV4IDU0MmVjYTUuLjA2YzY2ZmEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWNtcHY2LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pY21wdjYuaApAQCAtMjIsMTQzICsyMiwxMjQgQEAKICNpbmNsdWRlIDxhc20vYnl0ZW9yZGVyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGljbXA2aGRyIHsKLSBfX3U4IGljbXA2X3R5cGU7Ci0gX191OCBpY21wNl9jb2RlOwotIF9fc3VtMTYgaWNtcDZfY2tzdW07CisgIF9fdTggaWNtcDZfdHlwZTsKKyAgX191OCBpY21wNl9jb2RlOworICBfX3N1bTE2IGljbXA2X2Nrc3VtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gX19iZTMyIHVuX2RhdGEzMlsxXTsKLSBfX2JlMTYgdW5fZGF0YTE2WzJdOwotIF9fdTggdW5fZGF0YThbNF07CisgIHVuaW9uIHsKKyAgICBfX2JlMzIgdW5fZGF0YTMyWzFdOworICAgIF9fYmUxNiB1bl9kYXRhMTZbMl07CisgICAgX191OCB1bl9kYXRhOFs0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGljbXB2Nl9lY2hvIHsKLSBfX2JlMTYgaWRlbnRpZmllcjsKLSBfX2JlMTYgc2VxdWVuY2U7Ci0gfSB1X2VjaG87CisgICAgc3RydWN0IGljbXB2Nl9lY2hvIHsKKyAgICAgIF9fYmUxNiBpZGVudGlmaWVyOworICAgICAgX19iZTE2IHNlcXVlbmNlOworICAgIH0gdV9lY2hvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaWNtcHY2X25kX2FkdnQgeworICAgIHN0cnVjdCBpY21wdjZfbmRfYWR2dCB7CiAjaWZkZWYgX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxECi0gX191MzIgcmVzZXJ2ZWQ6NSwKLSBvdmVycmlkZToxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzb2xpY2l0ZWQ6MSwKLSByb3V0ZXI6MSwKLSByZXNlcnZlZDI6MjQ7CisgICAgICBfX3UzMiByZXNlcnZlZCA6IDUsIG92ZXJyaWRlIDogMSwgc29saWNpdGVkIDogMSwgcm91dGVyIDogMSwgcmVzZXJ2ZWQyIDogMjQ7CiAjZWxpZiBkZWZpbmVkKF9fQklHX0VORElBTl9CSVRGSUVMRCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcm91dGVyOjEsCi0gc29saWNpdGVkOjEsCi0gb3ZlcnJpZGU6MSwKLSByZXNlcnZlZDoyOTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgICBfX3UzMiByb3V0ZXIgOiAxLCBzb2xpY2l0ZWQgOiAxLCBvdmVycmlkZSA6IDEsIHJlc2VydmVkIDogMjk7CiAjZWxzZQogI2Vycm9yICJQbGVhc2UgZml4IDxhc20vYnl0ZW9yZGVyLmg+IgogI2VuZGlmCi0gfSB1X25kX2FkdnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpY21wdjZfbmRfcmEgewotIF9fdTggaG9wX2xpbWl0OworICAgIH0gdV9uZF9hZHZ0OworICAgIHN0cnVjdCBpY21wdjZfbmRfcmEgeworICAgICAgX191OCBob3BfbGltaXQ7CiAjaWZkZWYgX19MSVRUTEVfRU5ESUFOX0JJVEZJRUxECi0gX191OCByZXNlcnZlZDozLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSByb3V0ZXJfcHJlZjoyLAotIGhvbWVfYWdlbnQ6MSwKLSBvdGhlcjoxLAotIG1hbmFnZWQ6MTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgICBfX3U4IHJlc2VydmVkIDogMywgcm91dGVyX3ByZWYgOiAyLCBob21lX2FnZW50IDogMSwgb3RoZXIgOiAxLCBtYW5hZ2VkIDogMTsKICNlbGlmIGRlZmluZWQoX19CSUdfRU5ESUFOX0JJVEZJRUxEKQotIF9fdTggbWFuYWdlZDoxLAotIG90aGVyOjEsCi0gaG9tZV9hZ2VudDoxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSByb3V0ZXJfcHJlZjoyLAotIHJlc2VydmVkOjM7CisgICAgICBfX3U4IG1hbmFnZWQgOiAxLCBvdGhlciA6IDEsIGhvbWVfYWdlbnQgOiAxLCByb3V0ZXJfcHJlZiA6IDIsIHJlc2VydmVkIDogMzsKICNlbHNlCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2Vycm9yICJQbGVhc2UgZml4IDxhc20vYnl0ZW9yZGVyLmg+IgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgotIF9fYmUxNiBydF9saWZldGltZTsKLSB9IHVfbmRfcmE7Ci0gfSBpY21wNl9kYXRhdW47CisgICAgICBfX2JlMTYgcnRfbGlmZXRpbWU7CisgICAgfSB1X25kX3JhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgfSBpY21wNl9kYXRhdW47CiAjZGVmaW5lIGljbXA2X2lkZW50aWZpZXIgaWNtcDZfZGF0YXVuLnVfZWNoby5pZGVudGlmaWVyCiAjZGVmaW5lIGljbXA2X3NlcXVlbmNlIGljbXA2X2RhdGF1bi51X2VjaG8uc2VxdWVuY2UKICNkZWZpbmUgaWNtcDZfcG9pbnRlciBpY21wNl9kYXRhdW4udW5fZGF0YTMyWzBdCi0jZGVmaW5lIGljbXA2X210dSBpY21wNl9kYXRhdW4udW5fZGF0YTMyWzBdCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBpY21wNl9tdHUgaWNtcDZfZGF0YXVuLnVuX2RhdGEzMlswXQogI2RlZmluZSBpY21wNl91bnVzZWQgaWNtcDZfZGF0YXVuLnVuX2RhdGEzMlswXQogI2RlZmluZSBpY21wNl9tYXhkZWxheSBpY21wNl9kYXRhdW4udW5fZGF0YTE2WzBdCiAjZGVmaW5lIGljbXA2X3JvdXRlciBpY21wNl9kYXRhdW4udV9uZF9hZHZ0LnJvdXRlcgotI2RlZmluZSBpY21wNl9zb2xpY2l0ZWQgaWNtcDZfZGF0YXVuLnVfbmRfYWR2dC5zb2xpY2l0ZWQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIGljbXA2X3NvbGljaXRlZCBpY21wNl9kYXRhdW4udV9uZF9hZHZ0LnNvbGljaXRlZAogI2RlZmluZSBpY21wNl9vdmVycmlkZSBpY21wNl9kYXRhdW4udV9uZF9hZHZ0Lm92ZXJyaWRlCiAjZGVmaW5lIGljbXA2X25kaXNjcmVzZXJ2ZWQgaWNtcDZfZGF0YXVuLnVfbmRfYWR2dC5yZXNlcnZlZAogI2RlZmluZSBpY21wNl9ob3BfbGltaXQgaWNtcDZfZGF0YXVuLnVfbmRfcmEuaG9wX2xpbWl0Ci0jZGVmaW5lIGljbXA2X2FkZHJjb25mX21hbmFnZWQgaWNtcDZfZGF0YXVuLnVfbmRfcmEubWFuYWdlZAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgaWNtcDZfYWRkcmNvbmZfbWFuYWdlZCBpY21wNl9kYXRhdW4udV9uZF9yYS5tYW5hZ2VkCiAjZGVmaW5lIGljbXA2X2FkZHJjb25mX290aGVyIGljbXA2X2RhdGF1bi51X25kX3JhLm90aGVyCiAjZGVmaW5lIGljbXA2X3J0X2xpZmV0aW1lIGljbXA2X2RhdGF1bi51X25kX3JhLnJ0X2xpZmV0aW1lCiAjZGVmaW5lIGljbXA2X3JvdXRlcl9wcmVmIGljbXA2X2RhdGF1bi51X25kX3JhLnJvdXRlcl9wcmVmCi19OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CiAjZGVmaW5lIElDTVBWNl9ST1VURVJfUFJFRl9MT1cgMHgzCiAjZGVmaW5lIElDTVBWNl9ST1VURVJfUFJFRl9NRURJVU0gMHgwCiAjZGVmaW5lIElDTVBWNl9ST1VURVJfUFJFRl9ISUdIIDB4MQotI2RlZmluZSBJQ01QVjZfUk9VVEVSX1BSRUZfSU5WQUxJRCAweDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElDTVBWNl9ST1VURVJfUFJFRl9JTlZBTElEIDB4MgogI2RlZmluZSBJQ01QVjZfREVTVF9VTlJFQUNIIDEKICNkZWZpbmUgSUNNUFY2X1BLVF9UT09CSUcgMgogI2RlZmluZSBJQ01QVjZfVElNRV9FWENFRUQgMwotI2RlZmluZSBJQ01QVjZfUEFSQU1QUk9CIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElDTVBWNl9QQVJBTVBST0IgNAogI2RlZmluZSBJQ01QVjZfSU5GT01TR19NQVNLIDB4ODAKICNkZWZpbmUgSUNNUFY2X0VDSE9fUkVRVUVTVCAxMjgKICNkZWZpbmUgSUNNUFY2X0VDSE9fUkVQTFkgMTI5Ci0jZGVmaW5lIElDTVBWNl9NR01fUVVFUlkgMTMwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJQ01QVjZfTUdNX1FVRVJZIDEzMAogI2RlZmluZSBJQ01QVjZfTUdNX1JFUE9SVCAxMzEKICNkZWZpbmUgSUNNUFY2X01HTV9SRURVQ1RJT04gMTMyCiAjZGVmaW5lIElDTVBWNl9OSV9RVUVSWSAxMzkKLSNkZWZpbmUgSUNNUFY2X05JX1JFUExZIDE0MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSUNNUFY2X05JX1JFUExZIDE0MAogI2RlZmluZSBJQ01QVjZfTUxEMl9SRVBPUlQgMTQzCiAjZGVmaW5lIElDTVBWNl9ESEFBRF9SRVFVRVNUIDE0NAogI2RlZmluZSBJQ01QVjZfREhBQURfUkVQTFkgMTQ1Ci0jZGVmaW5lIElDTVBWNl9NT0JJTEVfUFJFRklYX1NPTCAxNDYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElDTVBWNl9NT0JJTEVfUFJFRklYX1NPTCAxNDYKICNkZWZpbmUgSUNNUFY2X01PQklMRV9QUkVGSVhfQURWIDE0NwogI2RlZmluZSBJQ01QVjZfTk9ST1VURSAwCiAjZGVmaW5lIElDTVBWNl9BRE1fUFJPSElCSVRFRCAxCi0jZGVmaW5lIElDTVBWNl9OT1RfTkVJR0hCT1VSIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElDTVBWNl9OT1RfTkVJR0hCT1VSIDIKICNkZWZpbmUgSUNNUFY2X0FERFJfVU5SRUFDSCAzCiAjZGVmaW5lIElDTVBWNl9QT1JUX1VOUkVBQ0ggNAogI2RlZmluZSBJQ01QVjZfUE9MSUNZX0ZBSUwgNQotI2RlZmluZSBJQ01QVjZfUkVKRUNUX1JPVVRFIDYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElDTVBWNl9SRUpFQ1RfUk9VVEUgNgogI2RlZmluZSBJQ01QVjZfRVhDX0hPUExJTUlUIDAKICNkZWZpbmUgSUNNUFY2X0VYQ19GUkFHVElNRSAxCiAjZGVmaW5lIElDTVBWNl9IRFJfRklFTEQgMAotI2RlZmluZSBJQ01QVjZfVU5LX05FWFRIRFIgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSUNNUFY2X1VOS19ORVhUSERSIDEKICNkZWZpbmUgSUNNUFY2X1VOS19PUFRJT04gMgogI2RlZmluZSBJQ01QVjZfRklMVEVSIDEKICNkZWZpbmUgSUNNUFY2X0ZJTFRFUl9CTE9DSyAxCi0jZGVmaW5lIElDTVBWNl9GSUxURVJfUEFTUyAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJQ01QVjZfRklMVEVSX1BBU1MgMgogI2RlZmluZSBJQ01QVjZfRklMVEVSX0JMT0NLT1RIRVJTIDMKICNkZWZpbmUgSUNNUFY2X0ZJTFRFUl9QQVNTT05MWSA0CiBzdHJ1Y3QgaWNtcDZfZmlsdGVyIHsKLSBfX3UzMiBkYXRhWzhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZGF0YVs4XTsKIH07CiAjZGVmaW5lIE1MRDJfTU9ERV9JU19JTkNMVURFIDEKICNkZWZpbmUgTUxEMl9NT0RFX0lTX0VYQ0xVREUgMgotI2RlZmluZSBNTEQyX0NIQU5HRV9UT19JTkNMVURFIDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1MRDJfQ0hBTkdFX1RPX0lOQ0xVREUgMwogI2RlZmluZSBNTEQyX0NIQU5HRV9UT19FWENMVURFIDQKICNkZWZpbmUgTUxEMl9BTExPV19ORVdfU09VUkNFUyA1CiAjZGVmaW5lIE1MRDJfQkxPQ0tfT0xEX1NPVVJDRVMgNgotI2RlZmluZSBNTEQyX0FMTF9NQ1JfSU5JVCB7IHsgeyAweGZmLDB4MDIsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwweDE2IH0gfSB9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNTEQyX0FMTF9NQ1JfSU5JVCB7IHsgeyAweGZmLCAweDAyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAweDE2IH0gfSB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWYuaAppbmRleCA0ZWNhODRkLi5mN2I0ZTIyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZi5oCkBAIC0yNiwxODYgKzI2LDE4NCBAQAogI2RlZmluZSBJRkFMSUFTWiAyNTYKICNpbmNsdWRlIDxsaW51eC9oZGxjL2lvY3RsLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJRkZfVVAgMHgxCi0jZGVmaW5lIElGRl9CUk9BRENBU1QgMHgyCi0jZGVmaW5lIElGRl9ERUJVRyAweDQKLSNkZWZpbmUgSUZGX0xPT1BCQUNLIDB4OAorZW51bSBuZXRfZGV2aWNlX2ZsYWdzIHsKKyAgSUZGX1VQID0gMSA8PCAwLAorICBJRkZfQlJPQURDQVNUID0gMSA8PCAxLAorICBJRkZfREVCVUcgPSAxIDw8IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJRkZfUE9JTlRPUE9JTlQgMHgxMAotI2RlZmluZSBJRkZfTk9UUkFJTEVSUyAweDIwCi0jZGVmaW5lIElGRl9SVU5OSU5HIDB4NDAKLSNkZWZpbmUgSUZGX05PQVJQIDB4ODAKKyAgSUZGX0xPT1BCQUNLID0gMSA8PCAzLAorICBJRkZfUE9JTlRPUE9JTlQgPSAxIDw8IDQsCisgIElGRl9OT1RSQUlMRVJTID0gMSA8PCA1LAorICBJRkZfUlVOTklORyA9IDEgPDwgNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElGRl9QUk9NSVNDIDB4MTAwCi0jZGVmaW5lIElGRl9BTExNVUxUSSAweDIwMAotI2RlZmluZSBJRkZfTUFTVEVSIDB4NDAwCi0jZGVmaW5lIElGRl9TTEFWRSAweDgwMAorICBJRkZfTk9BUlAgPSAxIDw8IDcsCisgIElGRl9QUk9NSVNDID0gMSA8PCA4LAorICBJRkZfQUxMTVVMVEkgPSAxIDw8IDksCisgIElGRl9NQVNURVIgPSAxIDw8IDEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUZGX01VTFRJQ0FTVCAweDEwMDAKLSNkZWZpbmUgSUZGX1BPUlRTRUwgMHgyMDAwCi0jZGVmaW5lIElGRl9BVVRPTUVESUEgMHg0MDAwCi0jZGVmaW5lIElGRl9EWU5BTUlDIDB4ODAwMAorICBJRkZfU0xBVkUgPSAxIDw8IDExLAorICBJRkZfTVVMVElDQVNUID0gMSA8PCAxMiwKKyAgSUZGX1BPUlRTRUwgPSAxIDw8IDEzLAorICBJRkZfQVVUT01FRElBID0gMSA8PCAxNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElGRl9MT1dFUl9VUCAweDEwMDAwCi0jZGVmaW5lIElGRl9ET1JNQU5UIDB4MjAwMDAKLSNkZWZpbmUgSUZGX0VDSE8gMHg0MDAwMAotI2RlZmluZSBJRkZfVk9MQVRJTEUgKElGRl9MT09QQkFDS3xJRkZfUE9JTlRPUE9JTlR8SUZGX0JST0FEQ0FTVHxJRkZfRUNIT3wgIElGRl9NQVNURVJ8SUZGX1NMQVZFfElGRl9SVU5OSU5HfElGRl9MT1dFUl9VUHxJRkZfRE9STUFOVCkKKyAgSUZGX0RZTkFNSUMgPSAxIDw8IDE1LAorICBJRkZfTE9XRVJfVVAgPSAxIDw8IDE2LAorICBJRkZfRE9STUFOVCA9IDEgPDwgMTcsCisgIElGRl9FQ0hPID0gMSA8PCAxOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElGRl84MDJfMVFfVkxBTiAweDEKLSNkZWZpbmUgSUZGX0VCUklER0UgMHgyCi0jZGVmaW5lIElGRl9TTEFWRV9JTkFDVElWRSAweDQKLSNkZWZpbmUgSUZGX01BU1RFUl84MDIzQUQgMHg4Cit9OworI2RlZmluZSBJRkZfVVAgSUZGX1VQCisjZGVmaW5lIElGRl9CUk9BRENBU1QgSUZGX0JST0FEQ0FTVAorI2RlZmluZSBJRkZfREVCVUcgSUZGX0RFQlVHCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJRkZfTUFTVEVSX0FMQiAweDEwCi0jZGVmaW5lIElGRl9CT05ESU5HIDB4MjAKLSNkZWZpbmUgSUZGX1NMQVZFX05FRURBUlAgMHg0MAotI2RlZmluZSBJRkZfSVNBVEFQIDB4ODAKKyNkZWZpbmUgSUZGX0xPT1BCQUNLIElGRl9MT09QQkFDSworI2RlZmluZSBJRkZfUE9JTlRPUE9JTlQgSUZGX1BPSU5UT1BPSU5UCisjZGVmaW5lIElGRl9OT1RSQUlMRVJTIElGRl9OT1RSQUlMRVJTCisjZGVmaW5lIElGRl9SVU5OSU5HIElGRl9SVU5OSU5HCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJRkZfTUFTVEVSX0FSUE1PTiAweDEwMAotI2RlZmluZSBJRkZfV0FOX0hETEMgMHgyMDAKLSNkZWZpbmUgSUZGX1hNSVRfRFNUX1JFTEVBU0UgMHg0MDAKLSNkZWZpbmUgSUZGX0RPTlRfQlJJREdFIDB4ODAwCisjZGVmaW5lIElGRl9OT0FSUCBJRkZfTk9BUlAKKyNkZWZpbmUgSUZGX1BST01JU0MgSUZGX1BST01JU0MKKyNkZWZpbmUgSUZGX0FMTE1VTFRJIElGRl9BTExNVUxUSQorI2RlZmluZSBJRkZfTUFTVEVSIElGRl9NQVNURVIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElGRl9ESVNBQkxFX05FVFBPTEwgMHgxMDAwCi0jZGVmaW5lIElGRl9NQUNWTEFOX1BPUlQgMHgyMDAwCi0jZGVmaW5lIElGRl9CUklER0VfUE9SVCAweDQwMDAKLSNkZWZpbmUgSUZGX09WU19EQVRBUEFUSCAweDgwMDAKKyNkZWZpbmUgSUZGX1NMQVZFIElGRl9TTEFWRQorI2RlZmluZSBJRkZfTVVMVElDQVNUIElGRl9NVUxUSUNBU1QKKyNkZWZpbmUgSUZGX1BPUlRTRUwgSUZGX1BPUlRTRUwKKyNkZWZpbmUgSUZGX0FVVE9NRURJQSBJRkZfQVVUT01FRElBCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJRkZfVFhfU0tCX1NIQVJJTkcgMHgxMDAwMAotI2RlZmluZSBJRkZfVU5JQ0FTVF9GTFQgMHgyMDAwMAotI2RlZmluZSBJRkZfVEVBTV9QT1JUIDB4NDAwMDAKLSNkZWZpbmUgSUZGX1NVUFBfTk9GQ1MgMHg4MDAwMAorI2RlZmluZSBJRkZfRFlOQU1JQyBJRkZfRFlOQU1JQworI2RlZmluZSBJRkZfTE9XRVJfVVAgSUZGX0xPV0VSX1VQCisjZGVmaW5lIElGRl9ET1JNQU5UIElGRl9ET1JNQU5UCisjZGVmaW5lIElGRl9FQ0hPIElGRl9FQ0hPCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJRkZfTElWRV9BRERSX0NIQU5HRSAweDEwMDAwMAotI2RlZmluZSBJRkZfTUFDVkxBTiAweDIwMDAwMAorI2RlZmluZSBJRkZfVk9MQVRJTEUgKElGRl9MT09QQkFDSyB8IElGRl9QT0lOVE9QT0lOVCB8IElGRl9CUk9BRENBU1QgfCBJRkZfRUNITyB8IElGRl9NQVNURVIgfCBJRkZfU0xBVkUgfCBJRkZfUlVOTklORyB8IElGRl9MT1dFUl9VUCB8IElGRl9ET1JNQU5UKQogI2RlZmluZSBJRl9HRVRfSUZBQ0UgMHgwMDAxCiAjZGVmaW5lIElGX0dFVF9QUk9UTyAweDAwMDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGX0lGQUNFX1YzNSAweDEwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGX0lGQUNFX1YyNCAweDEwMDEKICNkZWZpbmUgSUZfSUZBQ0VfWDIxIDB4MTAwMgogI2RlZmluZSBJRl9JRkFDRV9UMSAweDEwMDMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGX0lGQUNFX0UxIDB4MTAwNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZfSUZBQ0VfU1lOQ19TRVJJQUwgMHgxMDA1CiAjZGVmaW5lIElGX0lGQUNFX1gyMUQgMHgxMDA2CiAjZGVmaW5lIElGX1BST1RPX0hETEMgMHgyMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRl9QUk9UT19QUFAgMHgyMDAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRl9QUk9UT19DSVNDTyAweDIwMDIKICNkZWZpbmUgSUZfUFJPVE9fRlIgMHgyMDAzCiAjZGVmaW5lIElGX1BST1RPX0ZSX0FERF9QVkMgMHgyMDA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRl9QUk9UT19GUl9ERUxfUFZDIDB4MjAwNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZfUFJPVE9fWDI1IDB4MjAwNgogI2RlZmluZSBJRl9QUk9UT19IRExDX0VUSCAweDIwMDcKICNkZWZpbmUgSUZfUFJPVE9fRlJfQUREX0VUSF9QVkMgMHgyMDA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRl9QUk9UT19GUl9ERUxfRVRIX1BWQyAweDIwMDkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGX1BST1RPX0ZSX1BWQyAweDIwMEEKICNkZWZpbmUgSUZfUFJPVE9fRlJfRVRIX1BWQyAweDIwMEIKICNkZWZpbmUgSUZfUFJPVE9fUkFXIDB4MjAwQworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJRl9PUEVSX1VOS05PV04sCisgIElGX09QRVJfTk9UUFJFU0VOVCwKKyAgSUZfT1BFUl9ET1dOLAorICBJRl9PUEVSX0xPV0VSTEFZRVJET1dOLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSUZfT1BFUl9URVNUSU5HLAorICBJRl9PUEVSX0RPUk1BTlQsCisgIElGX09QRVJfVVAsCit9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIElGX09QRVJfVU5LTk9XTiwKLSBJRl9PUEVSX05PVFBSRVNFTlQsCi0gSUZfT1BFUl9ET1dOLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRl9PUEVSX0xPV0VSTEFZRVJET1dOLAotIElGX09QRVJfVEVTVElORywKLSBJRl9PUEVSX0RPUk1BTlQsCi0gSUZfT1BFUl9VUCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElGX0xJTktfTU9ERV9ERUZBVUxULAorICBJRl9MSU5LX01PREVfRE9STUFOVCwKIH07Ci1lbnVtIHsKLSBJRl9MSU5LX01PREVfREVGQVVMVCwKLSBJRl9MSU5LX01PREVfRE9STUFOVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19Owogc3RydWN0IGlmbWFwIHsKLSB1bnNpZ25lZCBsb25nIG1lbV9zdGFydDsKLSB1bnNpZ25lZCBsb25nIG1lbV9lbmQ7CisgIHVuc2lnbmVkIGxvbmcgbWVtX3N0YXJ0OworICB1bnNpZ25lZCBsb25nIG1lbV9lbmQ7CisgIHVuc2lnbmVkIHNob3J0IGJhc2VfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgYmFzZV9hZGRyOwotIHVuc2lnbmVkIGNoYXIgaXJxOwotIHVuc2lnbmVkIGNoYXIgZG1hOwotIHVuc2lnbmVkIGNoYXIgcG9ydDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGNoYXIgaXJxOworICB1bnNpZ25lZCBjaGFyIGRtYTsKKyAgdW5zaWduZWQgY2hhciBwb3J0OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWZfc2V0dGluZ3MgewotIHVuc2lnbmVkIGludCB0eXBlOwotIHVuc2lnbmVkIGludCBzaXplOworICB1bnNpZ25lZCBpbnQgdHlwZTsKKyAgdW5zaWduZWQgaW50IHNpemU7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHJhd19oZGxjX3Byb3RvIF9fdXNlciAqcmF3X2hkbGM7Ci0gY2lzY29fcHJvdG8gX191c2VyICpjaXNjbzsKLSBmcl9wcm90byBfX3VzZXIgKmZyOworICAgIHJhd19oZGxjX3Byb3RvIF9fdXNlciAqIHJhd19oZGxjOworICAgIGNpc2NvX3Byb3RvIF9fdXNlciAqIGNpc2NvOworICAgIGZyX3Byb3RvIF9fdXNlciAqIGZyOworICAgIGZyX3Byb3RvX3B2YyBfX3VzZXIgKiBmcl9wdmM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGZyX3Byb3RvX3B2YyBfX3VzZXIgKmZyX3B2YzsKLSBmcl9wcm90b19wdmNfaW5mbyBfX3VzZXIgKmZyX3B2Y19pbmZvOwotIHN5bmNfc2VyaWFsX3NldHRpbmdzIF9fdXNlciAqc3luYzsKLSB0ZTFfc2V0dGluZ3MgX191c2VyICp0ZTE7CisgICAgZnJfcHJvdG9fcHZjX2luZm8gX191c2VyICogZnJfcHZjX2luZm87CisgICAgc3luY19zZXJpYWxfc2V0dGluZ3MgX191c2VyICogc3luYzsKKyAgICB0ZTFfc2V0dGluZ3MgX191c2VyICogdGUxOworICB9IGlmc19pZnN1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGlmc19pZnN1OwogfTsKIHN0cnVjdCBpZnJlcSB7CiAjZGVmaW5lIElGSFdBRERSTEVOIDYKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbgotIHsKLSBjaGFyIGlmcm5fbmFtZVtJRk5BTVNJWl07Ci0gfSBpZnJfaWZybjsKKyAgICBjaGFyIGlmcm5fbmFtZVtJRk5BTVNJWl07CisgIH0gaWZyX2lmcm47CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3Qgc29ja2FkZHIgaWZydV9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IHNvY2thZGRyIGlmcnVfYWRkcjsKLSBzdHJ1Y3Qgc29ja2FkZHIgaWZydV9kc3RhZGRyOwotIHN0cnVjdCBzb2NrYWRkciBpZnJ1X2Jyb2FkYWRkcjsKKyAgICBzdHJ1Y3Qgc29ja2FkZHIgaWZydV9kc3RhZGRyOworICAgIHN0cnVjdCBzb2NrYWRkciBpZnJ1X2Jyb2FkYWRkcjsKKyAgICBzdHJ1Y3Qgc29ja2FkZHIgaWZydV9uZXRtYXNrOworICAgIHN0cnVjdCBzb2NrYWRkciBpZnJ1X2h3YWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNvY2thZGRyIGlmcnVfbmV0bWFzazsKLSBzdHJ1Y3Qgc29ja2FkZHIgaWZydV9od2FkZHI7Ci0gc2hvcnQgaWZydV9mbGFnczsKLSBpbnQgaWZydV9pdmFsdWU7CisgICAgc2hvcnQgaWZydV9mbGFnczsKKyAgICBpbnQgaWZydV9pdmFsdWU7CisgICAgaW50IGlmcnVfbXR1OworICAgIHN0cnVjdCBpZm1hcCBpZnJ1X21hcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGlmcnVfbXR1OwotIHN0cnVjdCBpZm1hcCBpZnJ1X21hcDsKLSBjaGFyIGlmcnVfc2xhdmVbSUZOQU1TSVpdOwotIGNoYXIgaWZydV9uZXduYW1lW0lGTkFNU0laXTsKKyAgICBjaGFyIGlmcnVfc2xhdmVbSUZOQU1TSVpdOworICAgIGNoYXIgaWZydV9uZXduYW1lW0lGTkFNU0laXTsKKyAgICB2b2lkIF9fdXNlciAqIGlmcnVfZGF0YTsKKyAgICBzdHJ1Y3QgaWZfc2V0dGluZ3MgaWZydV9zZXR0aW5nczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCBfX3VzZXIgKiBpZnJ1X2RhdGE7Ci0gc3RydWN0IGlmX3NldHRpbmdzIGlmcnVfc2V0dGluZ3M7Ci0gfSBpZnJfaWZydTsKKyAgfSBpZnJfaWZydTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBpZnJfbmFtZSBpZnJfaWZybi5pZnJuX25hbWUKICNkZWZpbmUgaWZyX2h3YWRkciBpZnJfaWZydS5pZnJ1X2h3YWRkcgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgaWZyX2FkZHIgaWZyX2lmcnUuaWZydV9hZGRyCiAjZGVmaW5lIGlmcl9kc3RhZGRyIGlmcl9pZnJ1LmlmcnVfZHN0YWRkcgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgaWZyX2Jyb2FkYWRkciBpZnJfaWZydS5pZnJ1X2Jyb2FkYWRkcgogI2RlZmluZSBpZnJfbmV0bWFzayBpZnJfaWZydS5pZnJ1X25ldG1hc2sKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIGlmcl9mbGFncyBpZnJfaWZydS5pZnJ1X2ZsYWdzCiAjZGVmaW5lIGlmcl9tZXRyaWMgaWZyX2lmcnUuaWZydV9pdmFsdWUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIGlmcl9tdHUgaWZyX2lmcnUuaWZydV9tdHUKICNkZWZpbmUgaWZyX21hcCBpZnJfaWZydS5pZnJ1X21hcAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgaWZyX3NsYXZlIGlmcl9pZnJ1LmlmcnVfc2xhdmUKICNkZWZpbmUgaWZyX2RhdGEgaWZyX2lmcnUuaWZydV9kYXRhCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBpZnJfaWZpbmRleCBpZnJfaWZydS5pZnJ1X2l2YWx1ZQogI2RlZmluZSBpZnJfYmFuZHdpZHRoIGlmcl9pZnJ1LmlmcnVfaXZhbHVlCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBpZnJfcWxlbiBpZnJfaWZydS5pZnJ1X2l2YWx1ZQogI2RlZmluZSBpZnJfbmV3bmFtZSBpZnJfaWZydS5pZnJ1X25ld25hbWUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIGlmcl9zZXR0aW5ncyBpZnJfaWZydS5pZnJ1X3NldHRpbmdzCiBzdHJ1Y3QgaWZjb25mIHsKLSBpbnQgaWZjX2xlbjsKLSB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgX191c2VyICppZmN1X2J1ZjsKLSBzdHJ1Y3QgaWZyZXEgX191c2VyICppZmN1X3JlcTsKLSB9IGlmY19pZmN1OworICBpbnQgaWZjX2xlbjsKKyAgdW5pb24geworICAgIGNoYXIgX191c2VyICogaWZjdV9idWY7CisgICAgc3RydWN0IGlmcmVxIF9fdXNlciAqIGlmY3VfcmVxOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgfSBpZmNfaWZjdTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBpZmNfYnVmIGlmY19pZmN1LmlmY3VfYnVmCiAjZGVmaW5lIGlmY19yZXEgaWZjX2lmY3UuaWZjdV9yZXEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYWRkci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9hZGRyLmgKaW5kZXggZTA4YTE3Ni4uNWQ4ZDY2NyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9hZGRyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9hZGRyLmgKQEAgLTIyLDI3ICsyMiwyNyBAQAogI2luY2x1ZGUgPGxpbnV4L25ldGxpbmsuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWZhZGRybXNnIHsKLSBfX3U4IGlmYV9mYW1pbHk7Ci0gX191OCBpZmFfcHJlZml4bGVuOwotIF9fdTggaWZhX2ZsYWdzOworICBfX3U4IGlmYV9mYW1pbHk7CisgIF9fdTggaWZhX3ByZWZpeGxlbjsKKyAgX191OCBpZmFfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaWZhX3Njb3BlOwotIF9fdTMyIGlmYV9pbmRleDsKKyAgX191OCBpZmFfc2NvcGU7CisgIF9fdTMyIGlmYV9pbmRleDsKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZBX1VOU1BFQywKLSBJRkFfQUREUkVTUywKLSBJRkFfTE9DQUwsCi0gSUZBX0xBQkVMLAorICBJRkFfVU5TUEVDLAorICBJRkFfQUREUkVTUywKKyAgSUZBX0xPQ0FMLAorICBJRkFfTEFCRUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGQV9CUk9BRENBU1QsCi0gSUZBX0FOWUNBU1QsCi0gSUZBX0NBQ0hFSU5GTywKLSBJRkFfTVVMVElDQVNULAorICBJRkFfQlJPQURDQVNULAorICBJRkFfQU5ZQ0FTVCwKKyAgSUZBX0NBQ0hFSU5GTywKKyAgSUZBX01VTFRJQ0FTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZBX0ZMQUdTLAotIF9fSUZBX01BWCwKKyAgSUZBX0ZMQUdTLAorICBfX0lGQV9NQVgsCiB9OwogI2RlZmluZSBJRkFfTUFYIChfX0lGQV9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTYxLDEzICs2MSwxMyBAQAogI2RlZmluZSBJRkFfRl9OT1BSRUZJWFJPVVRFIDB4MjAwCiBzdHJ1Y3QgaWZhX2NhY2hlaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlmYV9wcmVmZXJlZDsKLSBfX3UzMiBpZmFfdmFsaWQ7Ci0gX191MzIgY3N0YW1wOwotIF9fdTMyIHRzdGFtcDsKKyAgX191MzIgaWZhX3ByZWZlcmVkOworICBfX3UzMiBpZmFfdmFsaWQ7CisgIF9fdTMyIGNzdGFtcDsKKyAgX191MzIgdHN0YW1wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIElGQV9SVEEocikgKChzdHJ1Y3QgcnRhdHRyKikoKChjaGFyKikocikpICsgTkxNU0dfQUxJR04oc2l6ZW9mKHN0cnVjdCBpZmFkZHJtc2cpKSkpCi0jZGVmaW5lIElGQV9QQVlMT0FEKG4pIE5MTVNHX1BBWUxPQUQobixzaXplb2Yoc3RydWN0IGlmYWRkcm1zZykpCisjZGVmaW5lIElGQV9SVEEocikgKChzdHJ1Y3QgcnRhdHRyICopICgoKGNoYXIgKikgKHIpKSArIE5MTVNHX0FMSUdOKHNpemVvZihzdHJ1Y3QgaWZhZGRybXNnKSkpKQorI2RlZmluZSBJRkFfUEFZTE9BRChuKSBOTE1TR19QQVlMT0FEKG4sIHNpemVvZihzdHJ1Y3QgaWZhZGRybXNnKSkKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYWRkcmxhYmVsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2FkZHJsYWJlbC5oCmluZGV4IDM4NDBhMTIuLjI2NmFhZGUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYWRkcmxhYmVsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9hZGRybGFiZWwuaApAQCAtMjEsMTkgKzIxLDE5IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBpZmFkZHJsYmxtc2cgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGlmYWxfZmFtaWx5OwotIF9fdTggX19pZmFsX3Jlc2VydmVkOwotIF9fdTggaWZhbF9wcmVmaXhsZW47Ci0gX191OCBpZmFsX2ZsYWdzOworICBfX3U4IGlmYWxfZmFtaWx5OworICBfX3U4IF9faWZhbF9yZXNlcnZlZDsKKyAgX191OCBpZmFsX3ByZWZpeGxlbjsKKyAgX191OCBpZmFsX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZmFsX2luZGV4OwotIF9fdTMyIGlmYWxfc2VxOworICBfX3UzMiBpZmFsX2luZGV4OworICBfX3UzMiBpZmFsX3NlcTsKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZBTF9BRERSRVNTID0gMSwKLSBJRkFMX0xBQkVMID0gMiwKLSBfX0lGQUxfTUFYCisgIElGQUxfQUREUkVTUyA9IDEsCisgIElGQUxfTEFCRUwgPSAyLAorICBfX0lGQUxfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZBTF9NQVggKF9fSUZBTF9NQVggLSAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9hbGcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYWxnLmgKaW5kZXggMzVmMTYxYy4uZWFiZDg4NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9hbGcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2FsZy5oCkBAIC0yMSwxNyArMjEsMTcgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHNvY2thZGRyX2FsZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhbGdfZmFtaWx5OwotIF9fdTggc2FsZ190eXBlWzE0XTsKLSBfX3UzMiBzYWxnX2ZlYXQ7Ci0gX191MzIgc2FsZ19tYXNrOworICBfX3UxNiBzYWxnX2ZhbWlseTsKKyAgX191OCBzYWxnX3R5cGVbMTRdOworICBfX3UzMiBzYWxnX2ZlYXQ7CisgIF9fdTMyIHNhbGdfbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzYWxnX25hbWVbNjRdOworICBfX3U4IHNhbGdfbmFtZVs2NF07CiB9Owogc3RydWN0IGFmX2FsZ19pdiB7Ci0gX191MzIgaXZsZW47CisgIF9fdTMyIGl2bGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGl2WzBdOworICBfX3U4IGl2WzBdOwogfTsKICNkZWZpbmUgQUxHX1NFVF9LRVkgMQogI2RlZmluZSBBTEdfU0VUX0lWIDIKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYXJjbmV0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2FyY25ldC5oCmluZGV4IDI3YzE1ZWEuLmQwMTBjN2UgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYXJjbmV0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9hcmNuZXQuaApAQCAtNDIsNTUgKzQyLDUzIEBACiAjZGVmaW5lIEFSQ05FVF9BTEVOIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYXJjX3JmYzEyMDEgewotIF9fdTggcHJvdG87Ci0gX191OCBzcGxpdF9mbGFnOwotIF9fYmUxNiBzZXF1ZW5jZTsKKyAgX191OCBwcm90bzsKKyAgX191OCBzcGxpdF9mbGFnOworICBfX2JlMTYgc2VxdWVuY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGF5bG9hZFswXTsKKyAgX191OCBwYXlsb2FkWzBdOwogfTsKICNkZWZpbmUgUkZDMTIwMV9IRFJfU0laRSA0CiBzdHJ1Y3QgYXJjX3JmYzEwNTEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHByb3RvOwotIF9fdTggcGF5bG9hZFswXTsKKyAgX191OCBwcm90bzsKKyAgX191OCBwYXlsb2FkWzBdOwogfTsKICNkZWZpbmUgUkZDMTA1MV9IRFJfU0laRSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGFyY19ldGhfZW5jYXAgewotIF9fdTggcHJvdG87Ci0gc3RydWN0IGV0aGhkciBldGg7Ci0gX191OCBwYXlsb2FkWzBdOworICBfX3U4IHByb3RvOworICBzdHJ1Y3QgZXRoaGRyIGV0aDsKKyAgX191OCBwYXlsb2FkWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEVUSF9FTkNBUF9IRFJfU0laRSAxNAogc3RydWN0IGFyY19jYXAgewotIF9fdTggcHJvdG87CisgIF9fdTggcHJvdG87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY29va2llW3NpemVvZihpbnQpXTsKLSB1bmlvbiB7Ci0gX191OCBhY2s7Ci0gX191OCByYXdbMF07CisgIF9fdTggY29va2llW3NpemVvZihpbnQpXTsKKyAgdW5pb24geworICAgIF9fdTggYWNrOworICAgIF9fdTggcmF3WzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IG1lczsKKyAgfSBtZXM7CiB9Owogc3RydWN0IGFyY19oYXJkd2FyZSB7Ci0gX191OCBzb3VyY2UsCisgIF9fdTggc291cmNlLCBkZXN0LCBvZmZzZXRbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRlc3QsCi0gb2Zmc2V0WzJdOwogfTsKICNkZWZpbmUgQVJDX0hEUl9TSVpFIDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgYXJjaGRyIHsKLSBzdHJ1Y3QgYXJjX2hhcmR3YXJlIGhhcmQ7Ci0gdW5pb24gewotIHN0cnVjdCBhcmNfcmZjMTIwMSByZmMxMjAxOworICBzdHJ1Y3QgYXJjX2hhcmR3YXJlIGhhcmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBhcmNfcmZjMTA1MSByZmMxMDUxOwotIHN0cnVjdCBhcmNfZXRoX2VuY2FwIGV0aF9lbmNhcDsKLSBzdHJ1Y3QgYXJjX2NhcCBjYXA7Ci0gX191OCByYXdbMF07CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgYXJjX3JmYzEyMDEgcmZjMTIwMTsKKyAgICBzdHJ1Y3QgYXJjX3JmYzEwNTEgcmZjMTA1MTsKKyAgICBzdHJ1Y3QgYXJjX2V0aF9lbmNhcCBldGhfZW5jYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gc29mdDsKKyAgICBzdHJ1Y3QgYXJjX2NhcCBjYXA7CisgICAgX191OCByYXdbMF07CisgIH0gc29mdDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2FycC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9hcnAuaAppbmRleCAwOWVjMDFkLi40M2YyZTdkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2FycC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYXJwLmgKQEAgLTExMSwxOSArMTExLDE5IEBACiAjZGVmaW5lIEFSUE9QX05BSyAxMAogc3RydWN0IGFycHJlcSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzb2NrYWRkciBhcnBfcGE7Ci0gc3RydWN0IHNvY2thZGRyIGFycF9oYTsKLSBpbnQgYXJwX2ZsYWdzOwotIHN0cnVjdCBzb2NrYWRkciBhcnBfbmV0bWFzazsKKyAgc3RydWN0IHNvY2thZGRyIGFycF9wYTsKKyAgc3RydWN0IHNvY2thZGRyIGFycF9oYTsKKyAgaW50IGFycF9mbGFnczsKKyAgc3RydWN0IHNvY2thZGRyIGFycF9uZXRtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGFycF9kZXZbMTZdOworICBjaGFyIGFycF9kZXZbMTZdOwogfTsKIHN0cnVjdCBhcnByZXFfb2xkIHsKLSBzdHJ1Y3Qgc29ja2FkZHIgYXJwX3BhOworICBzdHJ1Y3Qgc29ja2FkZHIgYXJwX3BhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHIgYXJwX2hhOwotIGludCBhcnBfZmxhZ3M7Ci0gc3RydWN0IHNvY2thZGRyIGFycF9uZXRtYXNrOworICBzdHJ1Y3Qgc29ja2FkZHIgYXJwX2hhOworICBpbnQgYXJwX2ZsYWdzOworICBzdHJ1Y3Qgc29ja2FkZHIgYXJwX25ldG1hc2s7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVRGX0NPTSAweDAyCkBAIC0xMzQsMTIgKzEzNCwxMiBAQAogI2RlZmluZSBBVEZfTkVUTUFTSyAweDIwCiAjZGVmaW5lIEFURl9ET05UUFVCIDB4NDAKIHN0cnVjdCBhcnBoZHIgewotIF9fYmUxNiBhcl9ocmQ7CisgIF9fYmUxNiBhcl9ocmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBhcl9wcm87Ci0gdW5zaWduZWQgY2hhciBhcl9obG47Ci0gdW5zaWduZWQgY2hhciBhcl9wbG47Ci0gX19iZTE2IGFyX29wOworICBfX2JlMTYgYXJfcHJvOworICB1bnNpZ25lZCBjaGFyIGFyX2hsbjsKKyAgdW5zaWduZWQgY2hhciBhcl9wbG47CisgIF9fYmUxNiBhcl9vcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2JvbmRpbmcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYm9uZGluZy5oCmluZGV4IGMyZmFlNDIuLjI4OTIwMTUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYm9uZGluZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYm9uZGluZy5oCkBAIC01OSwyNyArNTksMjcgQEAKICNkZWZpbmUgQk9ORF9YTUlUX1BPTElDWV9FTkNBUDIzIDMKICNkZWZpbmUgQk9ORF9YTUlUX1BPTElDWV9FTkNBUDM0IDQKIHR5cGVkZWYgc3RydWN0IGlmYm9uZCB7Ci0gX19zMzIgYm9uZF9tb2RlOworICBfX3MzMiBib25kX21vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIG51bV9zbGF2ZXM7Ci0gX19zMzIgbWlpbW9uOworICBfX3MzMiBudW1fc2xhdmVzOworICBfX3MzMiBtaWltb247CiB9IGlmYm9uZDsKIHR5cGVkZWYgc3RydWN0IGlmc2xhdmUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBzbGF2ZV9pZDsKLSBjaGFyIHNsYXZlX25hbWVbSUZOQU1TSVpdOwotIF9fczggbGluazsKLSBfX3M4IHN0YXRlOworICBfX3MzMiBzbGF2ZV9pZDsKKyAgY2hhciBzbGF2ZV9uYW1lW0lGTkFNU0laXTsKKyAgX19zOCBsaW5rOworICBfX3M4IHN0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsaW5rX2ZhaWx1cmVfY291bnQ7CisgIF9fdTMyIGxpbmtfZmFpbHVyZV9jb3VudDsKIH0gaWZzbGF2ZTsKIHN0cnVjdCBhZF9pbmZvIHsKLSBfX3UxNiBhZ2dyZWdhdG9yX2lkOworICBfX3UxNiBhZ2dyZWdhdG9yX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBwb3J0czsKLSBfX3UxNiBhY3Rvcl9rZXk7Ci0gX191MTYgcGFydG5lcl9rZXk7Ci0gX191OCBwYXJ0bmVyX3N5c3RlbVtFVEhfQUxFTl07CisgIF9fdTE2IHBvcnRzOworICBfX3UxNiBhY3Rvcl9rZXk7CisgIF9fdTE2IHBhcnRuZXJfa2V5OworICBfX3U4IHBhcnRuZXJfc3lzdGVtW0VUSF9BTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2JyaWRnZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9icmlkZ2UuaAppbmRleCAzNjY5MTJlLi4xMzk0YjZmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2JyaWRnZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfYnJpZGdlLmgKQEAgLTIxLDE4MCArMjEsMTgxIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNpbmNsdWRlIDxsaW51eC9pZl9ldGhlci5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNpbmNsdWRlIDxsaW51eC9pbjYuaD4KICNkZWZpbmUgU1lTRlNfQlJJREdFX0FUVFIgImJyaWRnZSIKICNkZWZpbmUgU1lTRlNfQlJJREdFX0ZEQiAiYnJmb3J3YXJkIgogI2RlZmluZSBTWVNGU19CUklER0VfUE9SVF9TVUJESVIgImJyaWYiCi0jZGVmaW5lIFNZU0ZTX0JSSURHRV9QT1JUX0FUVFIgImJycG9ydCIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNZU0ZTX0JSSURHRV9QT1JUX0FUVFIgImJycG9ydCIKICNkZWZpbmUgU1lTRlNfQlJJREdFX1BPUlRfTElOSyAiYnJpZGdlIgogI2RlZmluZSBCUkNUTF9WRVJTSU9OIDEKICNkZWZpbmUgQlJDVExfR0VUX1ZFUlNJT04gMAotI2RlZmluZSBCUkNUTF9HRVRfQlJJREdFUyAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCUkNUTF9HRVRfQlJJREdFUyAxCiAjZGVmaW5lIEJSQ1RMX0FERF9CUklER0UgMgogI2RlZmluZSBCUkNUTF9ERUxfQlJJREdFIDMKICNkZWZpbmUgQlJDVExfQUREX0lGIDQKLSNkZWZpbmUgQlJDVExfREVMX0lGIDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJSQ1RMX0RFTF9JRiA1CiAjZGVmaW5lIEJSQ1RMX0dFVF9CUklER0VfSU5GTyA2CiAjZGVmaW5lIEJSQ1RMX0dFVF9QT1JUX0xJU1QgNwogI2RlZmluZSBCUkNUTF9TRVRfQlJJREdFX0ZPUldBUkRfREVMQVkgOAotI2RlZmluZSBCUkNUTF9TRVRfQlJJREdFX0hFTExPX1RJTUUgOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlJDVExfU0VUX0JSSURHRV9IRUxMT19USU1FIDkKICNkZWZpbmUgQlJDVExfU0VUX0JSSURHRV9NQVhfQUdFIDEwCiAjZGVmaW5lIEJSQ1RMX1NFVF9BR0VJTkdfVElNRSAxMQogI2RlZmluZSBCUkNUTF9TRVRfR0NfSU5URVJWQUwgMTIKLSNkZWZpbmUgQlJDVExfR0VUX1BPUlRfSU5GTyAxMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlJDVExfR0VUX1BPUlRfSU5GTyAxMwogI2RlZmluZSBCUkNUTF9TRVRfQlJJREdFX1NUUF9TVEFURSAxNAogI2RlZmluZSBCUkNUTF9TRVRfQlJJREdFX1BSSU9SSVRZIDE1CiAjZGVmaW5lIEJSQ1RMX1NFVF9QT1JUX1BSSU9SSVRZIDE2Ci0jZGVmaW5lIEJSQ1RMX1NFVF9QQVRIX0NPU1QgMTcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJSQ1RMX1NFVF9QQVRIX0NPU1QgMTcKICNkZWZpbmUgQlJDVExfR0VUX0ZEQl9FTlRSSUVTIDE4CiAjZGVmaW5lIEJSX1NUQVRFX0RJU0FCTEVEIDAKICNkZWZpbmUgQlJfU1RBVEVfTElTVEVOSU5HIDEKLSNkZWZpbmUgQlJfU1RBVEVfTEVBUk5JTkcgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlJfU1RBVEVfTEVBUk5JTkcgMgogI2RlZmluZSBCUl9TVEFURV9GT1JXQVJESU5HIDMKICNkZWZpbmUgQlJfU1RBVEVfQkxPQ0tJTkcgNAogc3RydWN0IF9fYnJpZGdlX2luZm8gewotIF9fdTY0IGRlc2lnbmF0ZWRfcm9vdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYnJpZGdlX2lkOwotIF9fdTMyIHJvb3RfcGF0aF9jb3N0OwotIF9fdTMyIG1heF9hZ2U7Ci0gX191MzIgaGVsbG9fdGltZTsKKyAgX191NjQgZGVzaWduYXRlZF9yb290OworICBfX3U2NCBicmlkZ2VfaWQ7CisgIF9fdTMyIHJvb3RfcGF0aF9jb3N0OworICBfX3UzMiBtYXhfYWdlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmb3J3YXJkX2RlbGF5OwotIF9fdTMyIGJyaWRnZV9tYXhfYWdlOwotIF9fdTMyIGJyaWRnZV9oZWxsb190aW1lOwotIF9fdTMyIGJyaWRnZV9mb3J3YXJkX2RlbGF5OworICBfX3UzMiBoZWxsb190aW1lOworICBfX3UzMiBmb3J3YXJkX2RlbGF5OworICBfX3UzMiBicmlkZ2VfbWF4X2FnZTsKKyAgX191MzIgYnJpZGdlX2hlbGxvX3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdG9wb2xvZ3lfY2hhbmdlOwotIF9fdTggdG9wb2xvZ3lfY2hhbmdlX2RldGVjdGVkOwotIF9fdTggcm9vdF9wb3J0OwotIF9fdTggc3RwX2VuYWJsZWQ7CisgIF9fdTMyIGJyaWRnZV9mb3J3YXJkX2RlbGF5OworICBfX3U4IHRvcG9sb2d5X2NoYW5nZTsKKyAgX191OCB0b3BvbG9neV9jaGFuZ2VfZGV0ZWN0ZWQ7CisgIF9fdTggcm9vdF9wb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhZ2VpbmdfdGltZTsKLSBfX3UzMiBnY19pbnRlcnZhbDsKLSBfX3UzMiBoZWxsb190aW1lcl92YWx1ZTsKLSBfX3UzMiB0Y25fdGltZXJfdmFsdWU7CisgIF9fdTggc3RwX2VuYWJsZWQ7CisgIF9fdTMyIGFnZWluZ190aW1lOworICBfX3UzMiBnY19pbnRlcnZhbDsKKyAgX191MzIgaGVsbG9fdGltZXJfdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRvcG9sb2d5X2NoYW5nZV90aW1lcl92YWx1ZTsKLSBfX3UzMiBnY190aW1lcl92YWx1ZTsKKyAgX191MzIgdGNuX3RpbWVyX3ZhbHVlOworICBfX3UzMiB0b3BvbG9neV9jaGFuZ2VfdGltZXJfdmFsdWU7CisgIF9fdTMyIGdjX3RpbWVyX3ZhbHVlOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgX19wb3J0X2luZm8geworICBfX3U2NCBkZXNpZ25hdGVkX3Jvb3Q7CisgIF9fdTY0IGRlc2lnbmF0ZWRfYnJpZGdlOworICBfX3UxNiBwb3J0X2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkZXNpZ25hdGVkX3Jvb3Q7Ci0gX191NjQgZGVzaWduYXRlZF9icmlkZ2U7Ci0gX191MTYgcG9ydF9pZDsKLSBfX3UxNiBkZXNpZ25hdGVkX3BvcnQ7CisgIF9fdTE2IGRlc2lnbmF0ZWRfcG9ydDsKKyAgX191MzIgcGF0aF9jb3N0OworICBfX3UzMiBkZXNpZ25hdGVkX2Nvc3Q7CisgIF9fdTggc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBhdGhfY29zdDsKLSBfX3UzMiBkZXNpZ25hdGVkX2Nvc3Q7Ci0gX191OCBzdGF0ZTsKLSBfX3U4IHRvcF9jaGFuZ2VfYWNrOworICBfX3U4IHRvcF9jaGFuZ2VfYWNrOworICBfX3U4IGNvbmZpZ19wZW5kaW5nOworICBfX3U4IHVudXNlZDA7CisgIF9fdTMyIG1lc3NhZ2VfYWdlX3RpbWVyX3ZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNvbmZpZ19wZW5kaW5nOwotIF9fdTggdW51c2VkMDsKLSBfX3UzMiBtZXNzYWdlX2FnZV90aW1lcl92YWx1ZTsKLSBfX3UzMiBmb3J3YXJkX2RlbGF5X3RpbWVyX3ZhbHVlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBob2xkX3RpbWVyX3ZhbHVlOworICBfX3UzMiBmb3J3YXJkX2RlbGF5X3RpbWVyX3ZhbHVlOworICBfX3UzMiBob2xkX3RpbWVyX3ZhbHVlOwogfTsKIHN0cnVjdCBfX2ZkYl9lbnRyeSB7Ci0gX191OCBtYWNfYWRkcltFVEhfQUxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcG9ydF9ubzsKLSBfX3U4IGlzX2xvY2FsOwotIF9fdTMyIGFnZWluZ190aW1lcl92YWx1ZTsKLSBfX3U4IHBvcnRfaGk7CisgIF9fdTggbWFjX2FkZHJbRVRIX0FMRU5dOworICBfX3U4IHBvcnRfbm87CisgIF9fdTggaXNfbG9jYWw7CisgIF9fdTMyIGFnZWluZ190aW1lcl92YWx1ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwYWQwOwotIF9fdTE2IHVudXNlZDsKKyAgX191OCBwb3J0X2hpOworICBfX3U4IHBhZDA7CisgIF9fdTE2IHVudXNlZDsKIH07Ci0jZGVmaW5lIEJSSURHRV9GTEFHU19NQVNURVIgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlJJREdFX0ZMQUdTX01BU1RFUiAxCiAjZGVmaW5lIEJSSURHRV9GTEFHU19TRUxGIDIKICNkZWZpbmUgQlJJREdFX01PREVfVkVCIDAKICNkZWZpbmUgQlJJREdFX01PREVfVkVQQSAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7CisgIElGTEFfQlJJREdFX0ZMQUdTLAorICBJRkxBX0JSSURHRV9NT0RFLAorICBJRkxBX0JSSURHRV9WTEFOX0lORk8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfQlJJREdFX0ZMQUdTLAotIElGTEFfQlJJREdFX01PREUsCi0gSUZMQV9CUklER0VfVkxBTl9JTkZPLAotIF9fSUZMQV9CUklER0VfTUFYLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19JRkxBX0JSSURHRV9NQVgsCiB9OwogI2RlZmluZSBJRkxBX0JSSURHRV9NQVggKF9fSUZMQV9CUklER0VfTUFYIC0gMSkKLSNkZWZpbmUgQlJJREdFX1ZMQU5fSU5GT19NQVNURVIgKDE8PDApCi0jZGVmaW5lIEJSSURHRV9WTEFOX0lORk9fUFZJRCAoMTw8MSkKKyNkZWZpbmUgQlJJREdFX1ZMQU5fSU5GT19NQVNURVIgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEJSSURHRV9WTEFOX0lORk9fVU5UQUdHRUQgKDE8PDIpCisjZGVmaW5lIEJSSURHRV9WTEFOX0lORk9fUFZJRCAoMSA8PCAxKQorI2RlZmluZSBCUklER0VfVkxBTl9JTkZPX1VOVEFHR0VEICgxIDw8IDIpCiBzdHJ1Y3QgYnJpZGdlX3ZsYW5faW5mbyB7Ci0gX191MTYgZmxhZ3M7Ci0gX191MTYgdmlkOworICBfX3UxNiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IHZpZDsKIH07CiBlbnVtIHsKLSBNREJBX1VOU1BFQywKLSBNREJBX01EQiwKKyAgTURCQV9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1EQkFfUk9VVEVSLAotIF9fTURCQV9NQVgsCisgIE1EQkFfTURCLAorICBNREJBX1JPVVRFUiwKKyAgX19NREJBX01BWCwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNREJBX01BWCAoX19NREJBX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gTURCQV9NREJfVU5TUEVDLAotIE1EQkFfTURCX0VOVFJZLAotIF9fTURCQV9NREJfTUFYLAorICBNREJBX01EQl9VTlNQRUMsCisgIE1EQkFfTURCX0VOVFJZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19NREJBX01EQl9NQVgsCiB9OwogI2RlZmluZSBNREJBX01EQl9NQVggKF9fTURCQV9NREJfTUFYIC0gMSkKIGVudW0gewotIE1EQkFfTURCX0VOVFJZX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTURCQV9NREJfRU5UUllfSU5GTywKLSBfX01EQkFfTURCX0VOVFJZX01BWCwKKyAgTURCQV9NREJfRU5UUllfVU5TUEVDLAorICBNREJBX01EQl9FTlRSWV9JTkZPLAorICBfX01EQkFfTURCX0VOVFJZX01BWCwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNREJBX01EQl9FTlRSWV9NQVggKF9fTURCQV9NREJfRU5UUllfTUFYIC0gMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBNREJBX1JPVVRFUl9VTlNQRUMsCi0gTURCQV9ST1VURVJfUE9SVCwKLSBfX01EQkFfUk9VVEVSX01BWCwKKyAgTURCQV9ST1VURVJfVU5TUEVDLAorICBNREJBX1JPVVRFUl9QT1JULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19NREJBX1JPVVRFUl9NQVgsCiB9OwogI2RlZmluZSBNREJBX1JPVVRFUl9NQVggKF9fTURCQV9ST1VURVJfTUFYIC0gMSkKIHN0cnVjdCBicl9wb3J0X21zZyB7Ci0gX191OCBmYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlmaW5kZXg7CisgIF9fdTggZmFtaWx5OworICBfX3UzMiBpZmluZGV4OwogfTsKIHN0cnVjdCBicl9tZGJfZW50cnkgewotIF9fdTMyIGlmaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBpZmluZGV4OwogI2RlZmluZSBNREJfVEVNUE9SQVJZIDAKICNkZWZpbmUgTURCX1BFUk1BTkVOVCAxCi0gX191OCBzdGF0ZTsKLSBzdHJ1Y3QgeworICBfX3U4IHN0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gX19iZTMyIGlwNDsKLSBzdHJ1Y3QgaW42X2FkZHIgaXA2OwotIH0gdTsKKyAgc3RydWN0IHsKKyAgICB1bmlvbiB7CisgICAgICBfX2JlMzIgaXA0OworICAgICAgc3RydWN0IGluNl9hZGRyIGlwNjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHByb3RvOwotIH0gYWRkcjsKKyAgICB9IHU7CisgICAgX19iZTE2IHByb3RvOworICB9IGFkZHI7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0geworICBNREJBX1NFVF9FTlRSWV9VTlNQRUMsCisgIE1EQkFfU0VUX0VOVFJZLAorICBfX01EQkFfU0VUX0VOVFJZX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTURCQV9TRVRfRU5UUllfVU5TUEVDLAotIE1EQkFfU0VUX0VOVFJZLAotIF9fTURCQV9TRVRfRU5UUllfTUFYLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1EQkFfU0VUX0VOVFJZX01BWCAoX19NREJBX1NFVF9FTlRSWV9NQVggLSAxKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2NhYmxlbW9kZW0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfY2FibGVtb2RlbS5oCmluZGV4IDcxNmI5M2YuLjQ1MDM5ZTUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfY2FibGVtb2RlbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfY2FibGVtb2RlbS5oCkBAIC0xOCwxMiArMTgsMTIgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfTElOVVhfQ0FCTEVNT0RFTV9IXwogI2RlZmluZSBfTElOVVhfQ0FCTEVNT0RFTV9IXwotI2RlZmluZSBTSU9DR0NNU1RBVFMgKFNJT0NERVZQUklWQVRFKzApCi0jZGVmaW5lIFNJT0NHQ01GSVJNV0FSRSAoU0lPQ0RFVlBSSVZBVEUrMSkKKyNkZWZpbmUgU0lPQ0dDTVNUQVRTIChTSU9DREVWUFJJVkFURSArIDApCisjZGVmaW5lIFNJT0NHQ01GSVJNV0FSRSAoU0lPQ0RFVlBSSVZBVEUgKyAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0lPQ0dDTUZSRVFVRU5DWSAoU0lPQ0RFVlBSSVZBVEUrMikKLSNkZWZpbmUgU0lPQ1NDTUZSRVFVRU5DWSAoU0lPQ0RFVlBSSVZBVEUrMykKLSNkZWZpbmUgU0lPQ0dDTVBJRFMgKFNJT0NERVZQUklWQVRFKzQpCi0jZGVmaW5lIFNJT0NTQ01QSURTIChTSU9DREVWUFJJVkFURSs1KQorI2RlZmluZSBTSU9DR0NNRlJFUVVFTkNZIChTSU9DREVWUFJJVkFURSArIDIpCisjZGVmaW5lIFNJT0NTQ01GUkVRVUVOQ1kgKFNJT0NERVZQUklWQVRFICsgMykKKyNkZWZpbmUgU0lPQ0dDTVBJRFMgKFNJT0NERVZQUklWQVRFICsgNCkKKyNkZWZpbmUgU0lPQ1NDTVBJRFMgKFNJT0NERVZQUklWQVRFICsgNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfZXFsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2VxbC5oCmluZGV4IDQxMTIwMTEuLjU1YzgwM2YgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfZXFsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9lcWwuaApAQCAtMzIsMTkgKzMyLDE5IEBACiAjZGVmaW5lIEVRTF9TRVRNQVNUUkNGRyAoU0lPQ0RFVlBSSVZBVEUgKyA1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IG1hc3Rlcl9jb25maWcgewotIGNoYXIgbWFzdGVyX25hbWVbMTZdOwotIGludCBtYXhfc2xhdmVzOwotIGludCBtaW5fc2xhdmVzOworICBjaGFyIG1hc3Rlcl9uYW1lWzE2XTsKKyAgaW50IG1heF9zbGF2ZXM7CisgIGludCBtaW5fc2xhdmVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gbWFzdGVyX2NvbmZpZ190OwogdHlwZWRlZiBzdHJ1Y3Qgc2xhdmVfY29uZmlnIHsKLSBjaGFyIHNsYXZlX25hbWVbMTZdOwotIGxvbmcgcHJpb3JpdHk7CisgIGNoYXIgc2xhdmVfbmFtZVsxNl07CisgIGxvbmcgcHJpb3JpdHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBzbGF2ZV9jb25maWdfdDsKIHR5cGVkZWYgc3RydWN0IHNsYXZpbmdfcmVxdWVzdCB7Ci0gY2hhciBzbGF2ZV9uYW1lWzE2XTsKLSBsb25nIHByaW9yaXR5OworICBjaGFyIHNsYXZlX25hbWVbMTZdOworICBsb25nIHByaW9yaXR5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gc2xhdmluZ19yZXF1ZXN0X3Q7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfZXRoZXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfZXRoZXIuaAppbmRleCA2MTBmNzBiLi5iYzAzMmNjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2V0aGVyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9ldGhlci5oCkBAIC02MiwxMiArNjIsMTIgQEAKICNkZWZpbmUgRVRIX1BfU0xPVyAweDg4MDkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QX1dDQ1AgMHg4ODNFCi0jZGVmaW5lIEVUSF9QX1BQUF9ESVNDIDB4ODg2MwotI2RlZmluZSBFVEhfUF9QUFBfU0VTIDB4ODg2NAogI2RlZmluZSBFVEhfUF9NUExTX1VDIDB4ODg0NwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRVRIX1BfTVBMU19NQyAweDg4NDgKICNkZWZpbmUgRVRIX1BfQVRNTVBPQSAweDg4NGMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEVUSF9QX1BQUF9ESVNDIDB4ODg2MworI2RlZmluZSBFVEhfUF9QUFBfU0VTIDB4ODg2NAogI2RlZmluZSBFVEhfUF9MSU5LX0NUTCAweDg4NmMKICNkZWZpbmUgRVRIX1BfQVRNRkFURSAweDg4ODQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC04Niw0OCArODYsNTEgQEAKICNkZWZpbmUgRVRIX1BfVERMUyAweDg5MEQKICNkZWZpbmUgRVRIX1BfRklQIDB4ODkxNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVRIX1BfODAyMjEgMHg4OTE3CisjZGVmaW5lIEVUSF9QX0xPT1BCQUNLIDB4OTAwMAogI2RlZmluZSBFVEhfUF9RSU5RMSAweDkxMDAKICNkZWZpbmUgRVRIX1BfUUlOUTIgMHg5MjAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFVEhfUF9RSU5RMyAweDkzMDAKICNkZWZpbmUgRVRIX1BfRURTQSAweERBREEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QX0FGX0lVQ1YgMHhGQkZCCiAjZGVmaW5lIEVUSF9QXzgwMl8zX01JTiAweDA2MDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QXzgwMl8zIDB4MDAwMQogI2RlZmluZSBFVEhfUF9BWDI1IDB4MDAwMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRVRIX1BfQUxMIDB4MDAwMwogI2RlZmluZSBFVEhfUF84MDJfMiAweDAwMDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QX1NOQVAgMHgwMDA1CiAjZGVmaW5lIEVUSF9QX0REQ01QIDB4MDAwNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRVRIX1BfV0FOX1BQUCAweDAwMDcKICNkZWZpbmUgRVRIX1BfUFBQX01QIDB4MDAwOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRVRIX1BfTE9DQUxUQUxLIDB4MDAwOQogI2RlZmluZSBFVEhfUF9DQU4gMHgwMDBDCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFVEhfUF9DQU5GRCAweDAwMEQKICNkZWZpbmUgRVRIX1BfUFBQVEFMSyAweDAwMTAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QX1RSXzgwMl8yIDB4MDAxMQogI2RlZmluZSBFVEhfUF9NT0JJVEVYIDB4MDAxNQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRVRIX1BfQ09OVFJPTCAweDAwMTYKICNkZWZpbmUgRVRIX1BfSVJEQSAweDAwMTcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QX0VDT05FVCAweDAwMTgKICNkZWZpbmUgRVRIX1BfSERMQyAweDAwMTkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVUSF9QX0FSQ05FVCAweDAwMUEKICNkZWZpbmUgRVRIX1BfRFNBIDB4MDAxQgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRVRIX1BfVFJBSUxFUiAweDAwMUMKICNkZWZpbmUgRVRIX1BfUEhPTkVUIDB4MDBGNQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRVRIX1BfSUVFRTgwMjE1NCAweDAwRjYKICNkZWZpbmUgRVRIX1BfQ0FJRiAweDAwRjcKLXN0cnVjdCBldGhoZHIgewotIHVuc2lnbmVkIGNoYXIgaF9kZXN0W0VUSF9BTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBoX3NvdXJjZVtFVEhfQUxFTl07Ci0gX19iZTE2IGhfcHJvdG87CisjZGVmaW5lIEVUSF9QX1hEU0EgMHgwMEY4CitzdHJ1Y3QgZXRoaGRyIHsKKyAgdW5zaWduZWQgY2hhciBoX2Rlc3RbRVRIX0FMRU5dOworICB1bnNpZ25lZCBjaGFyIGhfc291cmNlW0VUSF9BTEVOXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fYmUxNiBoX3Byb3RvOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfZmMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfZmMuaAppbmRleCA1MjdjMTVlLi43NTg0ZmEyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2ZjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9mYy5oCkBAIC0yMSwyMyArMjEsMjMgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogI2RlZmluZSBGQ19BTEVOIDYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEZDX0hMRU4gKHNpemVvZihzdHJ1Y3QgZmNoX2hkcikrc2l6ZW9mKHN0cnVjdCBmY2xsYykpCisjZGVmaW5lIEZDX0hMRU4gKHNpemVvZihzdHJ1Y3QgZmNoX2hkcikgKyBzaXplb2Yoc3RydWN0IGZjbGxjKSkKICNkZWZpbmUgRkNfSURfTEVOIDMKICNkZWZpbmUgRVhURU5ERURfU0FQIDB4QUEKICNkZWZpbmUgVUlfQ01EIDB4MDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmNoX2hkciB7Ci0gX191OCBkYWRkcltGQ19BTEVOXTsKLSBfX3U4IHNhZGRyW0ZDX0FMRU5dOworICBfX3U4IGRhZGRyW0ZDX0FMRU5dOworICBfX3U4IHNhZGRyW0ZDX0FMRU5dOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmNsbGMgewotIF9fdTggZHNhcDsKLSBfX3U4IHNzYXA7Ci0gX191OCBsbGM7CisgIF9fdTggZHNhcDsKKyAgX191OCBzc2FwOworICBfX3U4IGxsYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwcm90aWRbM107Ci0gX19iZTE2IGV0aGVydHlwZTsKKyAgX191OCBwcm90aWRbM107CisgIF9fYmUxNiBldGhlcnR5cGU7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9mZGRpLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2ZkZGkuaAppbmRleCA2OTlhZTQ0Li5lNzJlZDdmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2ZkZGkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2ZkZGkuaApAQCAtMzEsNjQgKzMxLDYzIEBACiAjZGVmaW5lIEZERElfS19MTENfWkxFTiAxMwogI2RlZmluZSBGRERJX0tfTExDX0xFTiA0NDkxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGRERJX0tfT1VJX0xFTiAzCiAjZGVmaW5lIEZERElfRkNfS19WT0lEIDB4MDAKICNkZWZpbmUgRkRESV9GQ19LX05PTl9SRVNUUklDVEVEX1RPS0VOIDB4ODAKICNkZWZpbmUgRkRESV9GQ19LX1JFU1RSSUNURURfVE9LRU4gMHhDMAotI2RlZmluZSBGRERJX0ZDX0tfU01UX01JTiAweDQxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBGRERJX0ZDX0tfU01UX01JTiAweDQxCiAjZGVmaW5lIEZERElfRkNfS19TTVRfTUFYIDB4NEYKICNkZWZpbmUgRkRESV9GQ19LX01BQ19NSU4gMHhDMQogI2RlZmluZSBGRERJX0ZDX0tfTUFDX01BWCAweENGCi0jZGVmaW5lIEZERElfRkNfS19BU1lOQ19MTENfTUlOIDB4NTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZERElfRkNfS19BU1lOQ19MTENfTUlOIDB4NTAKICNkZWZpbmUgRkRESV9GQ19LX0FTWU5DX0xMQ19ERUYgMHg1NAogI2RlZmluZSBGRERJX0ZDX0tfQVNZTkNfTExDX01BWCAweDVGCiAjZGVmaW5lIEZERElfRkNfS19TWU5DX0xMQ19NSU4gMHhEMAotI2RlZmluZSBGRERJX0ZDX0tfU1lOQ19MTENfTUFYIDB4RDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZERElfRkNfS19TWU5DX0xMQ19NQVggMHhENwogI2RlZmluZSBGRERJX0ZDX0tfSU1QTEVNRU5UT1JfTUlOIDB4NjAKICNkZWZpbmUgRkRESV9GQ19LX0lNUExFTUVOVE9SX01BWCAweDZGCiAjZGVmaW5lIEZERElfRkNfS19SRVNFUlZFRF9NSU4gMHg3MAotI2RlZmluZSBGRERJX0ZDX0tfUkVTRVJWRURfTUFYIDB4N0YKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEZERElfRkNfS19SRVNFUlZFRF9NQVggMHg3RgogI2RlZmluZSBGRERJX0VYVEVOREVEX1NBUCAweEFBCiAjZGVmaW5lIEZERElfVUlfQ01EIDB4MDMKIHN0cnVjdCBmZGRpXzgwMjJfMV9oZHIgewotIF9fdTggZHNhcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzc2FwOwotIF9fdTggY3RybDsKKyAgX191OCBkc2FwOworICBfX3U4IHNzYXA7CisgIF9fdTggY3RybDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZkZGlfODAyMl8yX2hkciB7CisgIF9fdTggZHNhcDsKKyAgX191OCBzc2FwOworICBfX3U4IGN0cmxfMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkc2FwOwotIF9fdTggc3NhcDsKLSBfX3U4IGN0cmxfMTsKLSBfX3U4IGN0cmxfMjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggY3RybF8yOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKLSNkZWZpbmUgRkRESV9LX09VSV9MRU4gMwogc3RydWN0IGZkZGlfc25hcF9oZHIgewotIF9fdTggZHNhcDsKKyAgX191OCBkc2FwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNzYXA7Ci0gX191OCBjdHJsOwotIF9fdTggb3VpW0ZERElfS19PVUlfTEVOXTsKLSBfX2JlMTYgZXRoZXJ0eXBlOworICBfX3U4IHNzYXA7CisgIF9fdTggY3RybDsKKyAgX191OCBvdWlbRkRESV9LX09VSV9MRU5dOworICBfX2JlMTYgZXRoZXJ0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgZmRkaWhkciB7Ci0gX191OCBmYzsKLSBfX3U4IGRhZGRyW0ZERElfS19BTEVOXTsKKyAgX191OCBmYzsKKyAgX191OCBkYWRkcltGRERJX0tfQUxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2FkZHJbRkRESV9LX0FMRU5dOwotIHVuaW9uCi0gewotIHN0cnVjdCBmZGRpXzgwMjJfMV9oZHIgbGxjXzgwMjJfMTsKKyAgX191OCBzYWRkcltGRERJX0tfQUxFTl07CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgZmRkaV84MDIyXzFfaGRyIGxsY184MDIyXzE7CisgICAgc3RydWN0IGZkZGlfODAyMl8yX2hkciBsbGNfODAyMl8yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgZmRkaV84MDIyXzJfaGRyIGxsY184MDIyXzI7Ci0gc3RydWN0IGZkZGlfc25hcF9oZHIgbGxjX3NuYXA7Ci0gfSBoZHI7CisgICAgc3RydWN0IGZkZGlfc25hcF9oZHIgbGxjX3NuYXA7CisgIH0gaGRyOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2ZyYWQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfZnJhZC5oCmluZGV4IDNmYWFlNTkuLjg1NTNjMWMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfZnJhZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfZnJhZC5oCkBAIC0xOSw3OCArMTksNzYgQEAKICNpZm5kZWYgX1VBUElfRlJBRF9IXwogI2RlZmluZSBfVUFQSV9GUkFEX0hfCiAjaW5jbHVkZSA8bGludXgvaWYuaD4KLXN0cnVjdCBkbGNpX2FkZAorc3RydWN0IGRsY2lfYWRkIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gY2hhciBkZXZuYW1lW0lGTkFNU0laXTsKLSBzaG9ydCBkbGNpOworICBjaGFyIGRldm5hbWVbSUZOQU1TSVpdOworICBzaG9ydCBkbGNpOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERMQ0lfR0VUX0NPTkYgKFNJT0NERVZQUklWQVRFICsgMikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERMQ0lfU0VUX0NPTkYgKFNJT0NERVZQUklWQVRFICsgMykKIHN0cnVjdCBkbGNpX2NvbmYgewotIHNob3J0IGZsYWdzOworICBzaG9ydCBmbGFnczsKKyAgc2hvcnQgQ0lSX2Z3ZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgQ0lSX2Z3ZDsKLSBzaG9ydCBCY19md2Q7Ci0gc2hvcnQgQmVfZndkOwotIHNob3J0IENJUl9id2Q7CisgIHNob3J0IEJjX2Z3ZDsKKyAgc2hvcnQgQmVfZndkOworICBzaG9ydCBDSVJfYndkOworICBzaG9ydCBCY19id2Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IEJjX2J3ZDsKLSBzaG9ydCBCZV9id2Q7Ci0gc2hvcnQgVGNfZndkOwotIHNob3J0IFRjX2J3ZDsKKyAgc2hvcnQgQmVfYndkOworICBzaG9ydCBUY19md2Q7CisgIHNob3J0IFRjX2J3ZDsKKyAgc2hvcnQgVGZfbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCBUZl9tYXg7Ci0gc2hvcnQgVGJfbWF4OworICBzaG9ydCBUYl9tYXg7CiB9OwogI2RlZmluZSBETENJX0dFVF9TTEFWRSAoU0lPQ0RFVlBSSVZBVEUgKyA0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRExDSV9JR05PUkVfQ0lSX09VVCAweDAwMDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERMQ0lfQUNDT1VOVF9DSVJfSU4gMHgwMDAyCiAjZGVmaW5lIERMQ0lfQlVGRkVSX0lGIDB4MDAwOAogI2RlZmluZSBETENJX1ZBTElEX0ZMQUdTIDB4MDAwQgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlJBRF9HRVRfQ09ORiAoU0lPQ0RFVlBSSVZBVEUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGUkFEX1NFVF9DT05GIChTSU9DREVWUFJJVkFURSArIDEpCiAjZGVmaW5lIEZSQURfTEFTVF9JT0NUTCBGUkFEX1NFVF9DT05GCi1zdHJ1Y3QgZnJhZF9jb25mCitzdHJ1Y3QgZnJhZF9jb25mIHsKKyAgc2hvcnQgc3RhdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gc2hvcnQgc3RhdGlvbjsKLSBzaG9ydCBmbGFnczsKLSBzaG9ydCBrYmF1ZDsKKyAgc2hvcnQgZmxhZ3M7CisgIHNob3J0IGtiYXVkOworICBzaG9ydCBjbG9ja2luZzsKKyAgc2hvcnQgbXR1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCBjbG9ja2luZzsKLSBzaG9ydCBtdHU7Ci0gc2hvcnQgVDM5MTsKLSBzaG9ydCBUMzkyOworICBzaG9ydCBUMzkxOworICBzaG9ydCBUMzkyOworICBzaG9ydCBOMzkxOworICBzaG9ydCBOMzkyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCBOMzkxOwotIHNob3J0IE4zOTI7Ci0gc2hvcnQgTjM5MzsKLSBzaG9ydCBDSVJfZndkOworICBzaG9ydCBOMzkzOworICBzaG9ydCBDSVJfZndkOworICBzaG9ydCBCY19md2Q7CisgIHNob3J0IEJlX2Z3ZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgQmNfZndkOwotIHNob3J0IEJlX2Z3ZDsKLSBzaG9ydCBDSVJfYndkOwotIHNob3J0IEJjX2J3ZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgQmVfYndkOworICBzaG9ydCBDSVJfYndkOworICBzaG9ydCBCY19id2Q7CisgIHNob3J0IEJlX2J3ZDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGUkFEX1NUQVRJT05fQ1BFIDB4MDAwMAogI2RlZmluZSBGUkFEX1NUQVRJT05fTk9ERSAweDAwMDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZSQURfVFhfSUdOT1JFX0NJUiAweDAwMDEKICNkZWZpbmUgRlJBRF9SWF9BQ0NPVU5UX0NJUiAweDAwMDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZSQURfRFJPUF9BQk9SVEVEIDB4MDAwNAogI2RlZmluZSBGUkFEX0JVRkZFUklGIDB4MDAwOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlJBRF9TVEFUUyAweDAwMTAKICNkZWZpbmUgRlJBRF9NQ0kgMHgwMTAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGUkFEX0FVVE9ETENJIDB4ODAwMAogI2RlZmluZSBGUkFEX1ZBTElEX0ZMQUdTIDB4ODExRgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlJBRF9DTE9DS19JTlQgMHgwMDAxCiAjZGVmaW5lIEZSQURfQ0xPQ0tfRVhUIDB4MDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9oaXBwaS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9oaXBwaS5oCmluZGV4IDdiZDBiMTYuLmE1ZWFmYzYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfaGlwcGkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX2hpcHBpLmgKQEAgLTMxLDc4ICszMSw3NSBAQAogI2RlZmluZSBISVBQSV9VSV9DTUQgMHgwMwogc3RydWN0IGhpcG5ldF9zdGF0aXN0aWNzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHJ4X3BhY2tldHM7Ci0gaW50IHR4X3BhY2tldHM7Ci0gaW50IHJ4X2Vycm9yczsKLSBpbnQgdHhfZXJyb3JzOworICBpbnQgcnhfcGFja2V0czsKKyAgaW50IHR4X3BhY2tldHM7CisgIGludCByeF9lcnJvcnM7CisgIGludCB0eF9lcnJvcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCByeF9kcm9wcGVkOwotIGludCB0eF9kcm9wcGVkOwotIGludCByeF9sZW5ndGhfZXJyb3JzOwotIGludCByeF9vdmVyX2Vycm9yczsKKyAgaW50IHJ4X2Ryb3BwZWQ7CisgIGludCB0eF9kcm9wcGVkOworICBpbnQgcnhfbGVuZ3RoX2Vycm9yczsKKyAgaW50IHJ4X292ZXJfZXJyb3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcnhfY3JjX2Vycm9yczsKLSBpbnQgcnhfZnJhbWVfZXJyb3JzOwotIGludCByeF9maWZvX2Vycm9yczsKLSBpbnQgcnhfbWlzc2VkX2Vycm9yczsKKyAgaW50IHJ4X2NyY19lcnJvcnM7CisgIGludCByeF9mcmFtZV9lcnJvcnM7CisgIGludCByeF9maWZvX2Vycm9yczsKKyAgaW50IHJ4X21pc3NlZF9lcnJvcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0eF9hYm9ydGVkX2Vycm9yczsKLSBpbnQgdHhfY2Fycmllcl9lcnJvcnM7Ci0gaW50IHR4X2ZpZm9fZXJyb3JzOwotIGludCB0eF9oZWFydGJlYXRfZXJyb3JzOworICBpbnQgdHhfYWJvcnRlZF9lcnJvcnM7CisgIGludCB0eF9jYXJyaWVyX2Vycm9yczsKKyAgaW50IHR4X2ZpZm9fZXJyb3JzOworICBpbnQgdHhfaGVhcnRiZWF0X2Vycm9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHR4X3dpbmRvd19lcnJvcnM7CisgIGludCB0eF93aW5kb3dfZXJyb3JzOwogfTsKIHN0cnVjdCBoaXBwaV9mcF9oZHIgewotIF9fYmUzMiBmaXhlZDsKKyAgX19iZTMyIGZpeGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgZDJfc2l6ZTsKKyAgX19iZTMyIGQyX3NpemU7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGhpcHBpX2xlX2hkciB7CiAjaWZkZWYgX19CSUdfRU5ESUFOX0JJVEZJRUxECiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmM6MzsKLSBfX3U4IGRvdWJsZV93aWRlOjE7Ci0gX191OCBtZXNzYWdlX3R5cGU6NDsKKyAgX191OCBmYyA6IDM7CisgIF9fdTggZG91YmxlX3dpZGUgOiAxOworICBfX3U4IG1lc3NhZ2VfdHlwZSA6IDQ7CiAjZWxpZiBkZWZpbmVkKF9fTElUVExFX0VORElBTl9CSVRGSUVMRCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtZXNzYWdlX3R5cGU6NDsKLSBfX3U4IGRvdWJsZV93aWRlOjE7Ci0gX191OCBmYzozOworICBfX3U4IG1lc3NhZ2VfdHlwZSA6IDQ7CisgIF9fdTggZG91YmxlX3dpZGUgOiAxOworICBfX3U4IGZjIDogMzsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRlc3Rfc3dpdGNoX2FkZHJbM107CisgIF9fdTggZGVzdF9zd2l0Y2hfYWRkclszXTsKICNpZmRlZiBfX0JJR19FTkRJQU5fQklURklFTEQKLSBfX3U4IGRlc3RfYWRkcl90eXBlOjQsCi0gc3JjX2FkZHJfdHlwZTo0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBkZXN0X2FkZHJfdHlwZSA6IDQsIHNyY19hZGRyX3R5cGUgOiA0OwogI2VsaWYgZGVmaW5lZChfX0xJVFRMRV9FTkRJQU5fQklURklFTEQpCi0gX191OCBzcmNfYWRkcl90eXBlOjQsCi0gZGVzdF9hZGRyX3R5cGU6NDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggc3JjX2FkZHJfdHlwZSA6IDQsIGRlc3RfYWRkcl90eXBlIDogNDsKICNlbmRpZgorICBfX3U4IHNyY19zd2l0Y2hfYWRkclszXTsKKyAgX191MTYgcmVzZXJ2ZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc3JjX3N3aXRjaF9hZGRyWzNdOwotIF9fdTE2IHJlc2VydmVkOwotIF9fdTggZGFkZHJbSElQUElfQUxFTl07Ci0gX191MTYgbG9jYWxseV9hZG1pbmlzdGVyZWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2FkZHJbSElQUElfQUxFTl07CisgIF9fdTggZGFkZHJbSElQUElfQUxFTl07CisgIF9fdTE2IGxvY2FsbHlfYWRtaW5pc3RlcmVkOworICBfX3U4IHNhZGRyW0hJUFBJX0FMRU5dOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEhJUFBJX09VSV9MRU4gMwogc3RydWN0IGhpcHBpX3NuYXBfaGRyIHsKKyAgX191OCBkc2FwOworICBfX3U4IHNzYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZHNhcDsKLSBfX3U4IHNzYXA7Ci0gX191OCBjdHJsOwotIF9fdTggb3VpW0hJUFBJX09VSV9MRU5dOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgZXRoZXJ0eXBlOworICBfX3U4IGN0cmw7CisgIF9fdTggb3VpW0hJUFBJX09VSV9MRU5dOworICBfX2JlMTYgZXRoZXJ0eXBlOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKLXN0cnVjdCBoaXBwaV9oZHIgewotIHN0cnVjdCBoaXBwaV9mcF9oZHIgZnA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBoaXBwaV9sZV9oZHIgbGU7Ci0gc3RydWN0IGhpcHBpX3NuYXBfaGRyIHNuYXA7CitzdHJ1Y3QgaGlwcGlfaGRyIHsKKyAgc3RydWN0IGhpcHBpX2ZwX2hkciBmcDsKKyAgc3RydWN0IGhpcHBpX2xlX2hkciBsZTsKKyAgc3RydWN0IGhpcHBpX3NuYXBfaGRyIHNuYXA7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfbGluay5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9saW5rLmgKaW5kZXggYWE1M2YwZS4uZmZjZjNmMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9saW5rLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9saW5rLmgKQEAgLTIyLDQ4NyArMjIsNTI5IEBACiAjaW5jbHVkZSA8bGludXgvbmV0bGluay5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBydG5sX2xpbmtfc3RhdHMgewotIF9fdTMyIHJ4X3BhY2tldHM7Ci0gX191MzIgdHhfcGFja2V0czsKLSBfX3UzMiByeF9ieXRlczsKKyAgX191MzIgcnhfcGFja2V0czsKKyAgX191MzIgdHhfcGFja2V0czsKKyAgX191MzIgcnhfYnl0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR4X2J5dGVzOwotIF9fdTMyIHJ4X2Vycm9yczsKLSBfX3UzMiB0eF9lcnJvcnM7Ci0gX191MzIgcnhfZHJvcHBlZDsKKyAgX191MzIgdHhfYnl0ZXM7CisgIF9fdTMyIHJ4X2Vycm9yczsKKyAgX191MzIgdHhfZXJyb3JzOworICBfX3UzMiByeF9kcm9wcGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eF9kcm9wcGVkOwotIF9fdTMyIG11bHRpY2FzdDsKLSBfX3UzMiBjb2xsaXNpb25zOwotIF9fdTMyIHJ4X2xlbmd0aF9lcnJvcnM7CisgIF9fdTMyIHR4X2Ryb3BwZWQ7CisgIF9fdTMyIG11bHRpY2FzdDsKKyAgX191MzIgY29sbGlzaW9uczsKKyAgX191MzIgcnhfbGVuZ3RoX2Vycm9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcnhfb3Zlcl9lcnJvcnM7Ci0gX191MzIgcnhfY3JjX2Vycm9yczsKLSBfX3UzMiByeF9mcmFtZV9lcnJvcnM7Ci0gX191MzIgcnhfZmlmb19lcnJvcnM7CisgIF9fdTMyIHJ4X292ZXJfZXJyb3JzOworICBfX3UzMiByeF9jcmNfZXJyb3JzOworICBfX3UzMiByeF9mcmFtZV9lcnJvcnM7CisgIF9fdTMyIHJ4X2ZpZm9fZXJyb3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByeF9taXNzZWRfZXJyb3JzOwotIF9fdTMyIHR4X2Fib3J0ZWRfZXJyb3JzOwotIF9fdTMyIHR4X2NhcnJpZXJfZXJyb3JzOwotIF9fdTMyIHR4X2ZpZm9fZXJyb3JzOworICBfX3UzMiByeF9taXNzZWRfZXJyb3JzOworICBfX3UzMiB0eF9hYm9ydGVkX2Vycm9yczsKKyAgX191MzIgdHhfY2Fycmllcl9lcnJvcnM7CisgIF9fdTMyIHR4X2ZpZm9fZXJyb3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eF9oZWFydGJlYXRfZXJyb3JzOwotIF9fdTMyIHR4X3dpbmRvd19lcnJvcnM7Ci0gX191MzIgcnhfY29tcHJlc3NlZDsKLSBfX3UzMiB0eF9jb21wcmVzc2VkOworICBfX3UzMiB0eF9oZWFydGJlYXRfZXJyb3JzOworICBfX3UzMiB0eF93aW5kb3dfZXJyb3JzOworICBfX3UzMiByeF9jb21wcmVzc2VkOworICBfX3UzMiB0eF9jb21wcmVzc2VkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgcnRubF9saW5rX3N0YXRzNjQgewotIF9fdTY0IHJ4X3BhY2tldHM7Ci0gX191NjQgdHhfcGFja2V0czsKKyAgX191NjQgcnhfcGFja2V0czsKKyAgX191NjQgdHhfcGFja2V0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcnhfYnl0ZXM7Ci0gX191NjQgdHhfYnl0ZXM7Ci0gX191NjQgcnhfZXJyb3JzOwotIF9fdTY0IHR4X2Vycm9yczsKKyAgX191NjQgcnhfYnl0ZXM7CisgIF9fdTY0IHR4X2J5dGVzOworICBfX3U2NCByeF9lcnJvcnM7CisgIF9fdTY0IHR4X2Vycm9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcnhfZHJvcHBlZDsKLSBfX3U2NCB0eF9kcm9wcGVkOwotIF9fdTY0IG11bHRpY2FzdDsKLSBfX3U2NCBjb2xsaXNpb25zOworICBfX3U2NCByeF9kcm9wcGVkOworICBfX3U2NCB0eF9kcm9wcGVkOworICBfX3U2NCBtdWx0aWNhc3Q7CisgIF9fdTY0IGNvbGxpc2lvbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJ4X2xlbmd0aF9lcnJvcnM7Ci0gX191NjQgcnhfb3Zlcl9lcnJvcnM7Ci0gX191NjQgcnhfY3JjX2Vycm9yczsKLSBfX3U2NCByeF9mcmFtZV9lcnJvcnM7CisgIF9fdTY0IHJ4X2xlbmd0aF9lcnJvcnM7CisgIF9fdTY0IHJ4X292ZXJfZXJyb3JzOworICBfX3U2NCByeF9jcmNfZXJyb3JzOworICBfX3U2NCByeF9mcmFtZV9lcnJvcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJ4X2ZpZm9fZXJyb3JzOwotIF9fdTY0IHJ4X21pc3NlZF9lcnJvcnM7Ci0gX191NjQgdHhfYWJvcnRlZF9lcnJvcnM7Ci0gX191NjQgdHhfY2Fycmllcl9lcnJvcnM7CisgIF9fdTY0IHJ4X2ZpZm9fZXJyb3JzOworICBfX3U2NCByeF9taXNzZWRfZXJyb3JzOworICBfX3U2NCB0eF9hYm9ydGVkX2Vycm9yczsKKyAgX191NjQgdHhfY2Fycmllcl9lcnJvcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHR4X2ZpZm9fZXJyb3JzOwotIF9fdTY0IHR4X2hlYXJ0YmVhdF9lcnJvcnM7Ci0gX191NjQgdHhfd2luZG93X2Vycm9yczsKLSBfX3U2NCByeF9jb21wcmVzc2VkOworICBfX3U2NCB0eF9maWZvX2Vycm9yczsKKyAgX191NjQgdHhfaGVhcnRiZWF0X2Vycm9yczsKKyAgX191NjQgdHhfd2luZG93X2Vycm9yczsKKyAgX191NjQgcnhfY29tcHJlc3NlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdHhfY29tcHJlc3NlZDsKKyAgX191NjQgdHhfY29tcHJlc3NlZDsKIH07CiBzdHJ1Y3QgcnRubF9saW5rX2lmbWFwIHsKLSBfX3U2NCBtZW1fc3RhcnQ7CisgIF9fdTY0IG1lbV9zdGFydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbWVtX2VuZDsKLSBfX3U2NCBiYXNlX2FkZHI7Ci0gX191MTYgaXJxOwotIF9fdTggZG1hOworICBfX3U2NCBtZW1fZW5kOworICBfX3U2NCBiYXNlX2FkZHI7CisgIF9fdTE2IGlycTsKKyAgX191OCBkbWE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcG9ydDsKKyAgX191OCBwb3J0OwogfTsKIGVudW0gewotIElGTEFfVU5TUEVDLAorICBJRkxBX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9BRERSRVNTLAotIElGTEFfQlJPQURDQVNULAotIElGTEFfSUZOQU1FLAotIElGTEFfTVRVLAorICBJRkxBX0FERFJFU1MsCisgIElGTEFfQlJPQURDQVNULAorICBJRkxBX0lGTkFNRSwKKyAgSUZMQV9NVFUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfTElOSywKLSBJRkxBX1FESVNDLAotIElGTEFfU1RBVFMsCi0gSUZMQV9DT1NULAorICBJRkxBX0xJTkssCisgIElGTEFfUURJU0MsCisgIElGTEFfU1RBVFMsCisgIElGTEFfQ09TVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGTEFfQ09TVCBJRkxBX0NPU1QKLSBJRkxBX1BSSU9SSVRZLAorICBJRkxBX1BSSU9SSVRZLAogI2RlZmluZSBJRkxBX1BSSU9SSVRZIElGTEFfUFJJT1JJVFkKLSBJRkxBX01BU1RFUiwKKyAgSUZMQV9NQVNURVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRkxBX01BU1RFUiBJRkxBX01BU1RFUgotIElGTEFfV0lSRUxFU1MsCisgIElGTEFfV0lSRUxFU1MsCiAjZGVmaW5lIElGTEFfV0lSRUxFU1MgSUZMQV9XSVJFTEVTUwotIElGTEFfUFJPVElORk8sCisgIElGTEFfUFJPVElORk8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRkxBX1BST1RJTkZPIElGTEFfUFJPVElORk8KLSBJRkxBX1RYUUxFTiwKKyAgSUZMQV9UWFFMRU4sCiAjZGVmaW5lIElGTEFfVFhRTEVOIElGTEFfVFhRTEVOCi0gSUZMQV9NQVAsCisgIElGTEFfTUFQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZMQV9NQVAgSUZMQV9NQVAKLSBJRkxBX1dFSUdIVCwKKyAgSUZMQV9XRUlHSFQsCiAjZGVmaW5lIElGTEFfV0VJR0hUIElGTEFfV0VJR0hUCi0gSUZMQV9PUEVSU1RBVEUsCisgIElGTEFfT1BFUlNUQVRFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0xJTktNT0RFLAotIElGTEFfTElOS0lORk8sCisgIElGTEFfTElOS01PREUsCisgIElGTEFfTElOS0lORk8sCiAjZGVmaW5lIElGTEFfTElOS0lORk8gSUZMQV9MSU5LSU5GTwotIElGTEFfTkVUX05TX1BJRCwKKyAgSUZMQV9ORVRfTlNfUElELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0lGQUxJQVMsCi0gSUZMQV9OVU1fVkYsCi0gSUZMQV9WRklORk9fTElTVCwKLSBJRkxBX1NUQVRTNjQsCisgIElGTEFfSUZBTElBUywKKyAgSUZMQV9OVU1fVkYsCisgIElGTEFfVkZJTkZPX0xJU1QsCisgIElGTEFfU1RBVFM2NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9WRl9QT1JUUywKLSBJRkxBX1BPUlRfU0VMRiwKLSBJRkxBX0FGX1NQRUMsCi0gSUZMQV9HUk9VUCwKKyAgSUZMQV9WRl9QT1JUUywKKyAgSUZMQV9QT1JUX1NFTEYsCisgIElGTEFfQUZfU1BFQywKKyAgSUZMQV9HUk9VUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9ORVRfTlNfRkQsCi0gSUZMQV9FWFRfTUFTSywKLSBJRkxBX1BST01JU0NVSVRZLAorICBJRkxBX05FVF9OU19GRCwKKyAgSUZMQV9FWFRfTUFTSywKKyAgSUZMQV9QUk9NSVNDVUlUWSwKICNkZWZpbmUgSUZMQV9QUk9NSVNDVUlUWSBJRkxBX1BST01JU0NVSVRZCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfTlVNX1RYX1FVRVVFUywKLSBJRkxBX05VTV9SWF9RVUVVRVMsCi0gSUZMQV9DQVJSSUVSLAotIElGTEFfUEhZU19QT1JUX0lELAorICBJRkxBX05VTV9UWF9RVUVVRVMsCisgIElGTEFfTlVNX1JYX1FVRVVFUywKKyAgSUZMQV9DQVJSSUVSLAorICBJRkxBX1BIWVNfUE9SVF9JRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19JRkxBX01BWAorICBJRkxBX0NBUlJJRVJfQ0hBTkdFUywKKyAgX19JRkxBX01BWAogfTsKICNkZWZpbmUgSUZMQV9NQVggKF9fSUZMQV9NQVggLSAxKQotI2RlZmluZSBJRkxBX1JUQShyKSAoKHN0cnVjdCBydGF0dHIqKSgoKGNoYXIqKShyKSkgKyBOTE1TR19BTElHTihzaXplb2Yoc3RydWN0IGlmaW5mb21zZykpKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElGTEFfUEFZTE9BRChuKSBOTE1TR19QQVlMT0FEKG4sc2l6ZW9mKHN0cnVjdCBpZmluZm9tc2cpKQorI2RlZmluZSBJRkxBX1JUQShyKSAoKHN0cnVjdCBydGF0dHIgKikgKCgoY2hhciAqKSAocikpICsgTkxNU0dfQUxJR04oc2l6ZW9mKHN0cnVjdCBpZmluZm9tc2cpKSkpCisjZGVmaW5lIElGTEFfUEFZTE9BRChuKSBOTE1TR19QQVlMT0FEKG4sIHNpemVvZihzdHJ1Y3QgaWZpbmZvbXNnKSkKIGVudW0gewotIElGTEFfSU5FVF9VTlNQRUMsCi0gSUZMQV9JTkVUX0NPTkYsCisgIElGTEFfSU5FVF9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fSUZMQV9JTkVUX01BWCwKKyAgSUZMQV9JTkVUX0NPTkYsCisgIF9fSUZMQV9JTkVUX01BWCwKIH07CiAjZGVmaW5lIElGTEFfSU5FVF9NQVggKF9fSUZMQV9JTkVUX01BWCAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7CisgIElGTEFfSU5FVDZfVU5TUEVDLAorICBJRkxBX0lORVQ2X0ZMQUdTLAorICBJRkxBX0lORVQ2X0NPTkYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfSU5FVDZfVU5TUEVDLAotIElGTEFfSU5FVDZfRkxBR1MsCi0gSUZMQV9JTkVUNl9DT05GLAotIElGTEFfSU5FVDZfU1RBVFMsCisgIElGTEFfSU5FVDZfU1RBVFMsCisgIElGTEFfSU5FVDZfTUNBU1QsCisgIElGTEFfSU5FVDZfQ0FDSEVJTkZPLAorICBJRkxBX0lORVQ2X0lDTVA2U1RBVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfSU5FVDZfTUNBU1QsCi0gSUZMQV9JTkVUNl9DQUNIRUlORk8sCi0gSUZMQV9JTkVUNl9JQ01QNlNUQVRTLAotIElGTEFfSU5FVDZfVE9LRU4sCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fSUZMQV9JTkVUNl9NQVgKKyAgSUZMQV9JTkVUNl9UT0tFTiwKKyAgSUZMQV9JTkVUNl9BRERSX0dFTl9NT0RFLAorICBfX0lGTEFfSU5FVDZfTUFYCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZMQV9JTkVUNl9NQVggKF9fSUZMQV9JTkVUNl9NQVggLSAxKQotZW51bSB7CitlbnVtIGluNl9hZGRyX2dlbl9tb2RlIHsKKyAgSU42X0FERFJfR0VOX01PREVfRVVJNjQsCisgIElONl9BRERSX0dFTl9NT0RFX05PTkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJSSURHRV9NT0RFX1VOU1BFQywKLSBCUklER0VfTU9ERV9IQUlSUElOLAogfTsKIGVudW0geworICBJRkxBX0JSX1VOU1BFQywKKyAgSUZMQV9CUl9GT1JXQVJEX0RFTEFZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0JSUE9SVF9VTlNQRUMsCi0gSUZMQV9CUlBPUlRfU1RBVEUsCi0gSUZMQV9CUlBPUlRfUFJJT1JJVFksCi0gSUZMQV9CUlBPUlRfQ09TVCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9CUlBPUlRfTU9ERSwKLSBJRkxBX0JSUE9SVF9HVUFSRCwKLSBJRkxBX0JSUE9SVF9QUk9URUNULAotIElGTEFfQlJQT1JUX0ZBU1RfTEVBVkUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfQlJQT1JUX0xFQVJOSU5HLAotIElGTEFfQlJQT1JUX1VOSUNBU1RfRkxPT0QsCi0gX19JRkxBX0JSUE9SVF9NQVgKKyAgSUZMQV9CUl9IRUxMT19USU1FLAorICBJRkxBX0JSX01BWF9BR0UsCisgIF9fSUZMQV9CUl9NQVgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSUZMQV9CUl9NQVggKF9fSUZMQV9CUl9NQVggLSAxKQorZW51bSB7CisgIEJSSURHRV9NT0RFX1VOU1BFQywKKyAgQlJJREdFX01PREVfSEFJUlBJTiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworZW51bSB7CisgIElGTEFfQlJQT1JUX1VOU1BFQywKKyAgSUZMQV9CUlBPUlRfU1RBVEUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJRkxBX0JSUE9SVF9QUklPUklUWSwKKyAgSUZMQV9CUlBPUlRfQ09TVCwKKyAgSUZMQV9CUlBPUlRfTU9ERSwKKyAgSUZMQV9CUlBPUlRfR1VBUkQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJRkxBX0JSUE9SVF9QUk9URUNULAorICBJRkxBX0JSUE9SVF9GQVNUX0xFQVZFLAorICBJRkxBX0JSUE9SVF9MRUFSTklORywKKyAgSUZMQV9CUlBPUlRfVU5JQ0FTVF9GTE9PRCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fSUZMQV9CUlBPUlRfTUFYCit9OwogI2RlZmluZSBJRkxBX0JSUE9SVF9NQVggKF9fSUZMQV9CUlBPUlRfTUFYIC0gMSkKIHN0cnVjdCBpZmxhX2NhY2hlaW5mbyB7Ci0gX191MzIgbWF4X3JlYXNtX2xlbjsKLSBfX3UzMiB0c3RhbXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlYWNoYWJsZV90aW1lOwotIF9fdTMyIHJldHJhbnNfdGltZTsKKyAgX191MzIgbWF4X3JlYXNtX2xlbjsKKyAgX191MzIgdHN0YW1wOworICBfX3UzMiByZWFjaGFibGVfdGltZTsKKyAgX191MzIgcmV0cmFuc190aW1lOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKKyAgSUZMQV9JTkZPX1VOU1BFQywKKyAgSUZMQV9JTkZPX0tJTkQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfSU5GT19VTlNQRUMsCi0gSUZMQV9JTkZPX0tJTkQsCi0gSUZMQV9JTkZPX0RBVEEsCi0gSUZMQV9JTkZPX1hTVEFUUywKKyAgSUZMQV9JTkZPX0RBVEEsCisgIElGTEFfSU5GT19YU1RBVFMsCisgIElGTEFfSU5GT19TTEFWRV9LSU5ELAorICBJRkxBX0lORk9fU0xBVkVfREFUQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9JTkZPX1NMQVZFX0tJTkQsCi0gSUZMQV9JTkZPX1NMQVZFX0RBVEEsCi0gX19JRkxBX0lORk9fTUFYLAorICBfX0lGTEFfSU5GT19NQVgsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZMQV9JTkZPX01BWCAoX19JRkxBX0lORk9fTUFYIC0gMSkKIGVudW0gewotIElGTEFfVkxBTl9VTlNQRUMsCi0gSUZMQV9WTEFOX0lELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX1ZMQU5fRkxBR1MsCi0gSUZMQV9WTEFOX0VHUkVTU19RT1MsCi0gSUZMQV9WTEFOX0lOR1JFU1NfUU9TLAotIElGTEFfVkxBTl9QUk9UT0NPTCwKKyAgSUZMQV9WTEFOX1VOU1BFQywKKyAgSUZMQV9WTEFOX0lELAorICBJRkxBX1ZMQU5fRkxBR1MsCisgIElGTEFfVkxBTl9FR1JFU1NfUU9TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0lGTEFfVkxBTl9NQVgsCisgIElGTEFfVkxBTl9JTkdSRVNTX1FPUywKKyAgSUZMQV9WTEFOX1BST1RPQ09MLAorICBfX0lGTEFfVkxBTl9NQVgsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZMQV9WTEFOX01BWCAoX19JRkxBX1ZMQU5fTUFYIC0gMSkKIHN0cnVjdCBpZmxhX3ZsYW5fZmxhZ3MgeworICBfX3UzMiBmbGFnczsKKyAgX191MzIgbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7Ci0gX191MzIgbWFzazsKIH07CiBlbnVtIHsKKyAgSUZMQV9WTEFOX1FPU19VTlNQRUMsCisgIElGTEFfVkxBTl9RT1NfTUFQUElORywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9WTEFOX1FPU19VTlNQRUMsCi0gSUZMQV9WTEFOX1FPU19NQVBQSU5HLAotIF9fSUZMQV9WTEFOX1FPU19NQVgKKyAgX19JRkxBX1ZMQU5fUU9TX01BWAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGTEFfVkxBTl9RT1NfTUFYIChfX0lGTEFfVkxBTl9RT1NfTUFYIC0gMSkKIHN0cnVjdCBpZmxhX3ZsYW5fcW9zX21hcHBpbmcgewotIF9fdTMyIGZyb207Ci0gX191MzIgdG87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBmcm9tOworICBfX3UzMiB0bzsKIH07CiBlbnVtIHsKLSBJRkxBX01BQ1ZMQU5fVU5TUEVDLAotIElGTEFfTUFDVkxBTl9NT0RFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX01BQ1ZMQU5fRkxBR1MsCi0gX19JRkxBX01BQ1ZMQU5fTUFYLAorICBJRkxBX01BQ1ZMQU5fVU5TUEVDLAorICBJRkxBX01BQ1ZMQU5fTU9ERSwKKyAgSUZMQV9NQUNWTEFOX0ZMQUdTLAorICBJRkxBX01BQ1ZMQU5fTUFDQUREUl9NT0RFLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSUZMQV9NQUNWTEFOX01BQ0FERFIsCisgIElGTEFfTUFDVkxBTl9NQUNBRERSX0RBVEEsCisgIElGTEFfTUFDVkxBTl9NQUNBRERSX0NPVU5ULAorICBfX0lGTEFfTUFDVkxBTl9NQVgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSUZMQV9NQUNWTEFOX01BWCAoX19JRkxBX01BQ1ZMQU5fTUFYIC0gMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG1hY3ZsYW5fbW9kZSB7Ci0gTUFDVkxBTl9NT0RFX1BSSVZBVEUgPSAxLAotIE1BQ1ZMQU5fTU9ERV9WRVBBID0gMiwKLSBNQUNWTEFOX01PREVfQlJJREdFID0gNCwKKyAgTUFDVkxBTl9NT0RFX1BSSVZBVEUgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNQUNWTEFOX01PREVfUEFTU1RIUlUgPSA4LAorICBNQUNWTEFOX01PREVfVkVQQSA9IDIsCisgIE1BQ1ZMQU5fTU9ERV9CUklER0UgPSA0LAorICBNQUNWTEFOX01PREVfUEFTU1RIUlUgPSA4LAorICBNQUNWTEFOX01PREVfU09VUkNFID0gMTYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK2VudW0gbWFjdmxhbl9tYWNhZGRyX21vZGUgeworICBNQUNWTEFOX01BQ0FERFJfQURELAorICBNQUNWTEFOX01BQ0FERFJfREVMLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTUFDVkxBTl9NQUNBRERSX0ZMVVNILAorICBNQUNWTEFOX01BQ0FERFJfU0VULAogfTsKICNkZWZpbmUgTUFDVkxBTl9GTEFHX05PUFJPTUlTQyAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7CisgIElGTEFfVlhMQU5fVU5TUEVDLAorICBJRkxBX1ZYTEFOX0lELAorICBJRkxBX1ZYTEFOX0dST1VQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX1ZYTEFOX1VOU1BFQywKLSBJRkxBX1ZYTEFOX0lELAotIElGTEFfVlhMQU5fR1JPVVAsCi0gSUZMQV9WWExBTl9MSU5LLAorICBJRkxBX1ZYTEFOX0xJTkssCisgIElGTEFfVlhMQU5fTE9DQUwsCisgIElGTEFfVlhMQU5fVFRMLAorICBJRkxBX1ZYTEFOX1RPUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9WWExBTl9MT0NBTCwKLSBJRkxBX1ZYTEFOX1RUTCwKLSBJRkxBX1ZYTEFOX1RPUywKLSBJRkxBX1ZYTEFOX0xFQVJOSU5HLAorICBJRkxBX1ZYTEFOX0xFQVJOSU5HLAorICBJRkxBX1ZYTEFOX0FHRUlORywKKyAgSUZMQV9WWExBTl9MSU1JVCwKKyAgSUZMQV9WWExBTl9QT1JUX1JBTkdFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX1ZYTEFOX0FHRUlORywKLSBJRkxBX1ZYTEFOX0xJTUlULAotIElGTEFfVlhMQU5fUE9SVF9SQU5HRSwKLSBJRkxBX1ZYTEFOX1BST1hZLAorICBJRkxBX1ZYTEFOX1BST1hZLAorICBJRkxBX1ZYTEFOX1JTQywKKyAgSUZMQV9WWExBTl9MMk1JU1MsCisgIElGTEFfVlhMQU5fTDNNSVNTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX1ZYTEFOX1JTQywKLSBJRkxBX1ZYTEFOX0wyTUlTUywKLSBJRkxBX1ZYTEFOX0wzTUlTUywKLSBJRkxBX1ZYTEFOX1BPUlQsCisgIElGTEFfVlhMQU5fUE9SVCwKKyAgSUZMQV9WWExBTl9HUk9VUDYsCisgIElGTEFfVlhMQU5fTE9DQUw2LAorICBJRkxBX1ZYTEFOX1VEUF9DU1VNLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX1ZYTEFOX0dST1VQNiwKLSBJRkxBX1ZYTEFOX0xPQ0FMNiwKLSBfX0lGTEFfVlhMQU5fTUFYCisgIElGTEFfVlhMQU5fVURQX1pFUk9fQ1NVTTZfVFgsCisgIElGTEFfVlhMQU5fVURQX1pFUk9fQ1NVTTZfUlgsCisgIF9fSUZMQV9WWExBTl9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRkxBX1ZYTEFOX01BWCAoX19JRkxBX1ZYTEFOX01BWCAtIDEpCiBzdHJ1Y3QgaWZsYV92eGxhbl9wb3J0X3JhbmdlIHsKLSBfX2JlMTYgbG93OwotIF9fYmUxNiBoaWdoOworICBfX2JlMTYgbG93OworICBfX2JlMTYgaGlnaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gSUZMQV9CT05EX1VOU1BFQywKLSBJRkxBX0JPTkRfTU9ERSwKKyAgSUZMQV9CT05EX1VOU1BFQywKKyAgSUZMQV9CT05EX01PREUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfQk9ORF9BQ1RJVkVfU0xBVkUsCi0gSUZMQV9CT05EX01JSU1PTiwKLSBJRkxBX0JPTkRfVVBERUxBWSwKLSBJRkxBX0JPTkRfRE9XTkRFTEFZLAorICBJRkxBX0JPTkRfQUNUSVZFX1NMQVZFLAorICBJRkxBX0JPTkRfTUlJTU9OLAorICBJRkxBX0JPTkRfVVBERUxBWSwKKyAgSUZMQV9CT05EX0RPV05ERUxBWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9CT05EX1VTRV9DQVJSSUVSLAotIElGTEFfQk9ORF9BUlBfSU5URVJWQUwsCi0gSUZMQV9CT05EX0FSUF9JUF9UQVJHRVQsCi0gSUZMQV9CT05EX0FSUF9WQUxJREFURSwKKyAgSUZMQV9CT05EX1VTRV9DQVJSSUVSLAorICBJRkxBX0JPTkRfQVJQX0lOVEVSVkFMLAorICBJRkxBX0JPTkRfQVJQX0lQX1RBUkdFVCwKKyAgSUZMQV9CT05EX0FSUF9WQUxJREFURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9CT05EX0FSUF9BTExfVEFSR0VUUywKLSBJRkxBX0JPTkRfUFJJTUFSWSwKLSBJRkxBX0JPTkRfUFJJTUFSWV9SRVNFTEVDVCwKLSBJRkxBX0JPTkRfRkFJTF9PVkVSX01BQywKKyAgSUZMQV9CT05EX0FSUF9BTExfVEFSR0VUUywKKyAgSUZMQV9CT05EX1BSSU1BUlksCisgIElGTEFfQk9ORF9QUklNQVJZX1JFU0VMRUNULAorICBJRkxBX0JPTkRfRkFJTF9PVkVSX01BQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9CT05EX1hNSVRfSEFTSF9QT0xJQ1ksCi0gSUZMQV9CT05EX1JFU0VORF9JR01QLAotIElGTEFfQk9ORF9OVU1fUEVFUl9OT1RJRiwKLSBJRkxBX0JPTkRfQUxMX1NMQVZFU19BQ1RJVkUsCisgIElGTEFfQk9ORF9YTUlUX0hBU0hfUE9MSUNZLAorICBJRkxBX0JPTkRfUkVTRU5EX0lHTVAsCisgIElGTEFfQk9ORF9OVU1fUEVFUl9OT1RJRiwKKyAgSUZMQV9CT05EX0FMTF9TTEFWRVNfQUNUSVZFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0JPTkRfTUlOX0xJTktTLAotIElGTEFfQk9ORF9MUF9JTlRFUlZBTCwKLSBJRkxBX0JPTkRfUEFDS0VUU19QRVJfU0xBVkUsCi0gSUZMQV9CT05EX0FEX0xBQ1BfUkFURSwKKyAgSUZMQV9CT05EX01JTl9MSU5LUywKKyAgSUZMQV9CT05EX0xQX0lOVEVSVkFMLAorICBJRkxBX0JPTkRfUEFDS0VUU19QRVJfU0xBVkUsCisgIElGTEFfQk9ORF9BRF9MQUNQX1JBVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfQk9ORF9BRF9TRUxFQ1QsCi0gSUZMQV9CT05EX0FEX0lORk8sCi0gX19JRkxBX0JPTkRfTUFYLAorICBJRkxBX0JPTkRfQURfU0VMRUNULAorICBJRkxBX0JPTkRfQURfSU5GTywKKyAgX19JRkxBX0JPTkRfTUFYLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElGTEFfQk9ORF9NQVggKF9fSUZMQV9CT05EX01BWCAtIDEpCiBlbnVtIHsKLSBJRkxBX0JPTkRfQURfSU5GT19VTlNQRUMsCi0gSUZMQV9CT05EX0FEX0lORk9fQUdHUkVHQVRPUiwKKyAgSUZMQV9CT05EX0FEX0lORk9fVU5TUEVDLAorICBJRkxBX0JPTkRfQURfSU5GT19BR0dSRUdBVE9SLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0JPTkRfQURfSU5GT19OVU1fUE9SVFMsCi0gSUZMQV9CT05EX0FEX0lORk9fQUNUT1JfS0VZLAotIElGTEFfQk9ORF9BRF9JTkZPX1BBUlRORVJfS0VZLAotIElGTEFfQk9ORF9BRF9JTkZPX1BBUlRORVJfTUFDLAorICBJRkxBX0JPTkRfQURfSU5GT19OVU1fUE9SVFMsCisgIElGTEFfQk9ORF9BRF9JTkZPX0FDVE9SX0tFWSwKKyAgSUZMQV9CT05EX0FEX0lORk9fUEFSVE5FUl9LRVksCisgIElGTEFfQk9ORF9BRF9JTkZPX1BBUlRORVJfTUFDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0lGTEFfQk9ORF9BRF9JTkZPX01BWCwKKyAgX19JRkxBX0JPTkRfQURfSU5GT19NQVgsCiB9OwogI2RlZmluZSBJRkxBX0JPTkRfQURfSU5GT19NQVggKF9fSUZMQV9CT05EX0FEX0lORk9fTUFYIC0gMSkKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0JPTkRfU0xBVkVfVU5TUEVDLAotIElGTEFfQk9ORF9TTEFWRV9TVEFURSwKLSBJRkxBX0JPTkRfU0xBVkVfTUlJX1NUQVRVUywKLSBJRkxBX0JPTkRfU0xBVkVfTElOS19GQUlMVVJFX0NPVU5ULAorICBJRkxBX0JPTkRfU0xBVkVfVU5TUEVDLAorICBJRkxBX0JPTkRfU0xBVkVfU1RBVEUsCisgIElGTEFfQk9ORF9TTEFWRV9NSUlfU1RBVFVTLAorICBJRkxBX0JPTkRfU0xBVkVfTElOS19GQUlMVVJFX0NPVU5ULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0JPTkRfU0xBVkVfUEVSTV9IV0FERFIsCi0gSUZMQV9CT05EX1NMQVZFX1FVRVVFX0lELAotIElGTEFfQk9ORF9TTEFWRV9BRF9BR0dSRUdBVE9SX0lELAotIF9fSUZMQV9CT05EX1NMQVZFX01BWCwKKyAgSUZMQV9CT05EX1NMQVZFX1BFUk1fSFdBRERSLAorICBJRkxBX0JPTkRfU0xBVkVfUVVFVUVfSUQsCisgIElGTEFfQk9ORF9TTEFWRV9BRF9BR0dSRUdBVE9SX0lELAorICBfX0lGTEFfQk9ORF9TTEFWRV9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSUZMQV9CT05EX1NMQVZFX01BWCAoX19JRkxBX0JPTkRfU0xBVkVfTUFYIC0gMSkKIGVudW0gewotIElGTEFfVkZfSU5GT19VTlNQRUMsCisgIElGTEFfVkZfSU5GT19VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfVkZfSU5GTywKLSBfX0lGTEFfVkZfSU5GT19NQVgsCisgIElGTEFfVkZfSU5GTywKKyAgX19JRkxBX1ZGX0lORk9fTUFYLAogfTsKICNkZWZpbmUgSUZMQV9WRl9JTkZPX01BWCAoX19JRkxBX1ZGX0lORk9fTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJRkxBX1ZGX1VOU1BFQywKLSBJRkxBX1ZGX01BQywKLSBJRkxBX1ZGX1ZMQU4sCisgIElGTEFfVkZfVU5TUEVDLAorICBJRkxBX1ZGX01BQywKKyAgSUZMQV9WRl9WTEFOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX1ZGX1RYX1JBVEUsCi0gSUZMQV9WRl9TUE9PRkNISywKLSBJRkxBX1ZGX0xJTktfU1RBVEUsCi0gX19JRkxBX1ZGX01BWCwKKyAgSUZMQV9WRl9UWF9SQVRFLAorICBJRkxBX1ZGX1NQT09GQ0hLLAorICBJRkxBX1ZGX0xJTktfU1RBVEUsCisgIElGTEFfVkZfUkFURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fSUZMQV9WRl9NQVgsCiB9OwogI2RlZmluZSBJRkxBX1ZGX01BWCAoX19JRkxBX1ZGX01BWCAtIDEpCiBzdHJ1Y3QgaWZsYV92Zl9tYWMgewotIF9fdTMyIHZmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG1hY1szMl07CisgIF9fdTMyIHZmOworICBfX3U4IG1hY1szMl07CiB9Owogc3RydWN0IGlmbGFfdmZfdmxhbiB7Ci0gX191MzIgdmY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHZsYW47Ci0gX191MzIgcW9zOworICBfX3UzMiB2ZjsKKyAgX191MzIgdmxhbjsKKyAgX191MzIgcW9zOwogfTsKLXN0cnVjdCBpZmxhX3ZmX3R4X3JhdGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB2ZjsKLSBfX3UzMiByYXRlOworc3RydWN0IGlmbGFfdmZfdHhfcmF0ZSB7CisgIF9fdTMyIHZmOworICBfX3UzMiByYXRlOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgaWZsYV92Zl9yYXRlIHsKKyAgX191MzIgdmY7CisgIF9fdTMyIG1pbl90eF9yYXRlOworICBfX3UzMiBtYXhfdHhfcmF0ZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGlmbGFfdmZfc3Bvb2ZjaGsgeworICBfX3UzMiB2ZjsKKyAgX191MzIgc2V0dGluZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdmY7Ci0gX191MzIgc2V0dGluZzsKIH07CiBlbnVtIHsKKyAgSUZMQV9WRl9MSU5LX1NUQVRFX0FVVE8sCisgIElGTEFfVkZfTElOS19TVEFURV9FTkFCTEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfVkZfTElOS19TVEFURV9BVVRPLAotIElGTEFfVkZfTElOS19TVEFURV9FTkFCTEUsCi0gSUZMQV9WRl9MSU5LX1NUQVRFX0RJU0FCTEUsCi0gX19JRkxBX1ZGX0xJTktfU1RBVEVfTUFYLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSUZMQV9WRl9MSU5LX1NUQVRFX0RJU0FCTEUsCisgIF9fSUZMQV9WRl9MSU5LX1NUQVRFX01BWCwKIH07CiBzdHJ1Y3QgaWZsYV92Zl9saW5rX3N0YXRlIHsKLSBfX3UzMiB2ZjsKLSBfX3UzMiBsaW5rX3N0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgdmY7CisgIF9fdTMyIGxpbmtfc3RhdGU7CiB9OwogZW51bSB7Ci0gSUZMQV9WRl9QT1JUX1VOU1BFQywKLSBJRkxBX1ZGX1BPUlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fSUZMQV9WRl9QT1JUX01BWCwKKyAgSUZMQV9WRl9QT1JUX1VOU1BFQywKKyAgSUZMQV9WRl9QT1JULAorICBfX0lGTEFfVkZfUE9SVF9NQVgsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZMQV9WRl9QT1JUX01BWCAoX19JRkxBX1ZGX1BPUlRfTUFYIC0gMSkKIGVudW0geworICBJRkxBX1BPUlRfVU5TUEVDLAorICBJRkxBX1BPUlRfVkYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfUE9SVF9VTlNQRUMsCi0gSUZMQV9QT1JUX1ZGLAotIElGTEFfUE9SVF9QUk9GSUxFLAotIElGTEFfUE9SVF9WU0lfVFlQRSwKKyAgSUZMQV9QT1JUX1BST0ZJTEUsCisgIElGTEFfUE9SVF9WU0lfVFlQRSwKKyAgSUZMQV9QT1JUX0lOU1RBTkNFX1VVSUQsCisgIElGTEFfUE9SVF9IT1NUX1VVSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfUE9SVF9JTlNUQU5DRV9VVUlELAotIElGTEFfUE9SVF9IT1NUX1VVSUQsCi0gSUZMQV9QT1JUX1JFUVVFU1QsCi0gSUZMQV9QT1JUX1JFU1BPTlNFLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0lGTEFfUE9SVF9NQVgsCisgIElGTEFfUE9SVF9SRVFVRVNULAorICBJRkxBX1BPUlRfUkVTUE9OU0UsCisgIF9fSUZMQV9QT1JUX01BWCwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJRkxBX1BPUlRfTUFYIChfX0lGTEFfUE9SVF9NQVggLSAxKQogI2RlZmluZSBQT1JUX1BST0ZJTEVfTUFYIDQwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQT1JUX1VVSURfTUFYIDE2Ci0jZGVmaW5lIFBPUlRfU0VMRl9WRiAtMQotZW51bSB7Ci0gUE9SVF9SRVFVRVNUX1BSRUFTU09DSUFURSA9IDAsCisjZGVmaW5lIFBPUlRfU0VMRl9WRiAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUE9SVF9SRVFVRVNUX1BSRUFTU09DSUFURV9SUiwKLSBQT1JUX1JFUVVFU1RfQVNTT0NJQVRFLAotIFBPUlRfUkVRVUVTVF9ESVNBU1NPQ0lBVEUsCitlbnVtIHsKKyAgUE9SVF9SRVFVRVNUX1BSRUFTU09DSUFURSA9IDAsCisgIFBPUlRfUkVRVUVTVF9QUkVBU1NPQ0lBVEVfUlIsCisgIFBPUlRfUkVRVUVTVF9BU1NPQ0lBVEUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBQT1JUX1JFUVVFU1RfRElTQVNTT0NJQVRFLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBQT1JUX1ZEUF9SRVNQT05TRV9TVUNDRVNTID0gMCwKLSBQT1JUX1ZEUF9SRVNQT05TRV9JTlZBTElEX0ZPUk1BVCwKLSBQT1JUX1ZEUF9SRVNQT05TRV9JTlNVRkZJQ0lFTlRfUkVTT1VSQ0VTLAorICBQT1JUX1ZEUF9SRVNQT05TRV9TVUNDRVNTID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUE9SVF9WRFBfUkVTUE9OU0VfVU5VU0VEX1ZUSUQsCi0gUE9SVF9WRFBfUkVTUE9OU0VfVlRJRF9WSU9MQVRJT04sCi0gUE9SVF9WRFBfUkVTUE9OU0VfVlRJRF9WRVJTSU9OX1ZJT0FMVElPTiwKLSBQT1JUX1ZEUF9SRVNQT05TRV9PVVRfT0ZfU1lOQywKKyAgUE9SVF9WRFBfUkVTUE9OU0VfSU5WQUxJRF9GT1JNQVQsCisgIFBPUlRfVkRQX1JFU1BPTlNFX0lOU1VGRklDSUVOVF9SRVNPVVJDRVMsCisgIFBPUlRfVkRQX1JFU1BPTlNFX1VOVVNFRF9WVElELAorICBQT1JUX1ZEUF9SRVNQT05TRV9WVElEX1ZJT0xBVElPTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUE9SVF9QUk9GSUxFX1JFU1BPTlNFX1NVQ0NFU1MgPSAweDEwMCwKLSBQT1JUX1BST0ZJTEVfUkVTUE9OU0VfSU5QUk9HUkVTUywKLSBQT1JUX1BST0ZJTEVfUkVTUE9OU0VfSU5WQUxJRCwKLSBQT1JUX1BST0ZJTEVfUkVTUE9OU0VfQkFEU1RBVEUsCisgIFBPUlRfVkRQX1JFU1BPTlNFX1ZUSURfVkVSU0lPTl9WSU9BTFRJT04sCisgIFBPUlRfVkRQX1JFU1BPTlNFX09VVF9PRl9TWU5DLAorICBQT1JUX1BST0ZJTEVfUkVTUE9OU0VfU1VDQ0VTUyA9IDB4MTAwLAorICBQT1JUX1BST0ZJTEVfUkVTUE9OU0VfSU5QUk9HUkVTUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUE9SVF9QUk9GSUxFX1JFU1BPTlNFX0lOU1VGRklDSUVOVF9SRVNPVVJDRVMsCi0gUE9SVF9QUk9GSUxFX1JFU1BPTlNFX0VSUk9SLAorICBQT1JUX1BST0ZJTEVfUkVTUE9OU0VfSU5WQUxJRCwKKyAgUE9SVF9QUk9GSUxFX1JFU1BPTlNFX0JBRFNUQVRFLAorICBQT1JUX1BST0ZJTEVfUkVTUE9OU0VfSU5TVUZGSUNJRU5UX1JFU09VUkNFUywKKyAgUE9SVF9QUk9GSUxFX1JFU1BPTlNFX0VSUk9SLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWZsYV9wb3J0X3ZzaSB7CisgIF9fdTggdnNpX21ncl9pZDsKKyAgX191OCB2c2lfdHlwZV9pZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB2c2lfbWdyX2lkOwotIF9fdTggdnNpX3R5cGVfaWRbM107Ci0gX191OCB2c2lfdHlwZV92ZXJzaW9uOwotIF9fdTggcGFkWzNdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCB2c2lfdHlwZV92ZXJzaW9uOworICBfX3U4IHBhZFszXTsKIH07CiBlbnVtIHsKLSBJRkxBX0lQT0lCX1VOU1BFQywKLSBJRkxBX0lQT0lCX1BLRVksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfSVBPSUJfTU9ERSwKLSBJRkxBX0lQT0lCX1VNQ0FTVCwKLSBfX0lGTEFfSVBPSUJfTUFYCisgIElGTEFfSVBPSUJfVU5TUEVDLAorICBJRkxBX0lQT0lCX1BLRVksCisgIElGTEFfSVBPSUJfTU9ERSwKKyAgSUZMQV9JUE9JQl9VTUNBU1QsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX0lGTEFfSVBPSUJfTUFYCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIElQT0lCX01PREVfREFUQUdSQU0gPSAwLAotIElQT0lCX01PREVfQ09OTkVDVEVEID0gMSwKLX07CisgIElQT0lCX01PREVfREFUQUdSQU0gPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVBPSUJfTU9ERV9DT05ORUNURUQgPSAxLAorfTsKICNkZWZpbmUgSUZMQV9JUE9JQl9NQVggKF9fSUZMQV9JUE9JQl9NQVggLSAxKQogZW51bSB7Ci0gSUZMQV9IU1JfVU5TUEVDLAotIElGTEFfSFNSX1NMQVZFMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9IU1JfU0xBVkUyLAotIElGTEFfSFNSX01VTFRJQ0FTVF9TUEVDLAotIElGTEFfSFNSX1NVUEVSVklTSU9OX0FERFIsCi0gSUZMQV9IU1JfU0VRX05SLAorICBJRkxBX0hTUl9VTlNQRUMsCisgIElGTEFfSFNSX1NMQVZFMSwKKyAgSUZMQV9IU1JfU0xBVkUyLAorICBJRkxBX0hTUl9NVUxUSUNBU1RfU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19JRkxBX0hTUl9NQVgsCisgIElGTEFfSFNSX1NVUEVSVklTSU9OX0FERFIsCisgIElGTEFfSFNSX1NFUV9OUiwKKyAgX19JRkxBX0hTUl9NQVgsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZMQV9IU1JfTUFYIChfX0lGTEFfSFNSX01BWCAtIDEpCiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BhY2tldC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wYWNrZXQuaAppbmRleCAxMzNjNzdiLi42ZTlhZTZhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BhY2tldC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcGFja2V0LmgKQEAgLTIxLDIwICsyMSwyMCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3Qgc29ja2FkZHJfcGt0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgc3BrdF9mYW1pbHk7Ci0gdW5zaWduZWQgY2hhciBzcGt0X2RldmljZVsxNF07Ci0gX19iZTE2IHNwa3RfcHJvdG9jb2w7CisgIHVuc2lnbmVkIHNob3J0IHNwa3RfZmFtaWx5OworICB1bnNpZ25lZCBjaGFyIHNwa3RfZGV2aWNlWzE0XTsKKyAgX19iZTE2IHNwa3RfcHJvdG9jb2w7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzb2NrYWRkcl9sbCB7Ci0gdW5zaWduZWQgc2hvcnQgc2xsX2ZhbWlseTsKLSBfX2JlMTYgc2xsX3Byb3RvY29sOwotIGludCBzbGxfaWZpbmRleDsKKyAgdW5zaWduZWQgc2hvcnQgc2xsX2ZhbWlseTsKKyAgX19iZTE2IHNsbF9wcm90b2NvbDsKKyAgaW50IHNsbF9pZmluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBzbGxfaGF0eXBlOwotIHVuc2lnbmVkIGNoYXIgc2xsX3BrdHR5cGU7Ci0gdW5zaWduZWQgY2hhciBzbGxfaGFsZW47Ci0gdW5zaWduZWQgY2hhciBzbGxfYWRkcls4XTsKKyAgdW5zaWduZWQgc2hvcnQgc2xsX2hhdHlwZTsKKyAgdW5zaWduZWQgY2hhciBzbGxfcGt0dHlwZTsKKyAgdW5zaWduZWQgY2hhciBzbGxfaGFsZW47CisgIHVuc2lnbmVkIGNoYXIgc2xsX2FkZHJbOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgUEFDS0VUX0hPU1QgMApAQCAtODMsMzEgKzgzLDMxIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQQUNLRVRfRkFOT1VUX0ZMQUdfREVGUkFHIDB4ODAwMAogc3RydWN0IHRwYWNrZXRfc3RhdHMgewotIHVuc2lnbmVkIGludCB0cF9wYWNrZXRzOwotIHVuc2lnbmVkIGludCB0cF9kcm9wczsKKyAgdW5zaWduZWQgaW50IHRwX3BhY2tldHM7CisgIHVuc2lnbmVkIGludCB0cF9kcm9wczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHRwYWNrZXRfc3RhdHNfdjMgewotIHVuc2lnbmVkIGludCB0cF9wYWNrZXRzOwotIHVuc2lnbmVkIGludCB0cF9kcm9wczsKKyAgdW5zaWduZWQgaW50IHRwX3BhY2tldHM7CisgIHVuc2lnbmVkIGludCB0cF9kcm9wczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHRwX2ZyZWV6ZV9xX2NudDsKKyAgdW5zaWduZWQgaW50IHRwX2ZyZWV6ZV9xX2NudDsKIH07CiB1bmlvbiB0cGFja2V0X3N0YXRzX3UgewotIHN0cnVjdCB0cGFja2V0X3N0YXRzIHN0YXRzMTsKKyAgc3RydWN0IHRwYWNrZXRfc3RhdHMgc3RhdHMxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdHBhY2tldF9zdGF0c192MyBzdGF0czM7CisgIHN0cnVjdCB0cGFja2V0X3N0YXRzX3YzIHN0YXRzMzsKIH07CiBzdHJ1Y3QgdHBhY2tldF9hdXhkYXRhIHsKLSBfX3UzMiB0cF9zdGF0dXM7CisgIF9fdTMyIHRwX3N0YXR1czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHBfbGVuOwotIF9fdTMyIHRwX3NuYXBsZW47Ci0gX191MTYgdHBfbWFjOwotIF9fdTE2IHRwX25ldDsKKyAgX191MzIgdHBfbGVuOworICBfX3UzMiB0cF9zbmFwbGVuOworICBfX3UxNiB0cF9tYWM7CisgIF9fdTE2IHRwX25ldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgdHBfdmxhbl90Y2k7Ci0gX191MTYgdHBfdmxhbl90cGlkOworICBfX3UxNiB0cF92bGFuX3RjaTsKKyAgX191MTYgdHBfdmxhbl90cGlkOwogfTsKICNkZWZpbmUgVFBfU1RBVFVTX0tFUk5FTCAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTMxLDEyNyArMTMxLDEyNyBAQAogI2RlZmluZSBUUF9GVF9SRVFfRklMTF9SWEhBU0ggMHgxCiBzdHJ1Y3QgdHBhY2tldF9oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHRwX3N0YXR1czsKLSB1bnNpZ25lZCBpbnQgdHBfbGVuOwotIHVuc2lnbmVkIGludCB0cF9zbmFwbGVuOwotIHVuc2lnbmVkIHNob3J0IHRwX21hYzsKKyAgdW5zaWduZWQgbG9uZyB0cF9zdGF0dXM7CisgIHVuc2lnbmVkIGludCB0cF9sZW47CisgIHVuc2lnbmVkIGludCB0cF9zbmFwbGVuOworICB1bnNpZ25lZCBzaG9ydCB0cF9tYWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHRwX25ldDsKLSB1bnNpZ25lZCBpbnQgdHBfc2VjOwotIHVuc2lnbmVkIGludCB0cF91c2VjOworICB1bnNpZ25lZCBzaG9ydCB0cF9uZXQ7CisgIHVuc2lnbmVkIGludCB0cF9zZWM7CisgIHVuc2lnbmVkIGludCB0cF91c2VjOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRQQUNLRVRfQUxJR05NRU5UIDE2Ci0jZGVmaW5lIFRQQUNLRVRfQUxJR04oeCkgKCgoeCkrVFBBQ0tFVF9BTElHTk1FTlQtMSkmfihUUEFDS0VUX0FMSUdOTUVOVC0xKSkKKyNkZWZpbmUgVFBBQ0tFVF9BTElHTih4KSAoKCh4KSArIFRQQUNLRVRfQUxJR05NRU5UIC0gMSkgJiB+KFRQQUNLRVRfQUxJR05NRU5UIC0gMSkpCiAjZGVmaW5lIFRQQUNLRVRfSERSTEVOIChUUEFDS0VUX0FMSUdOKHNpemVvZihzdHJ1Y3QgdHBhY2tldF9oZHIpKSArIHNpemVvZihzdHJ1Y3Qgc29ja2FkZHJfbGwpKQogc3RydWN0IHRwYWNrZXQyX2hkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRwX3N0YXR1czsKLSBfX3UzMiB0cF9sZW47Ci0gX191MzIgdHBfc25hcGxlbjsKLSBfX3UxNiB0cF9tYWM7CisgIF9fdTMyIHRwX3N0YXR1czsKKyAgX191MzIgdHBfbGVuOworICBfX3UzMiB0cF9zbmFwbGVuOworICBfX3UxNiB0cF9tYWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHRwX25ldDsKLSBfX3UzMiB0cF9zZWM7Ci0gX191MzIgdHBfbnNlYzsKLSBfX3UxNiB0cF92bGFuX3RjaTsKKyAgX191MTYgdHBfbmV0OworICBfX3UzMiB0cF9zZWM7CisgIF9fdTMyIHRwX25zZWM7CisgIF9fdTE2IHRwX3ZsYW5fdGNpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB0cF92bGFuX3RwaWQ7Ci0gX191OCB0cF9wYWRkaW5nWzRdOworICBfX3UxNiB0cF92bGFuX3RwaWQ7CisgIF9fdTggdHBfcGFkZGluZ1s0XTsKIH07CiBzdHJ1Y3QgdHBhY2tldF9oZHJfdmFyaWFudDEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0cF9yeGhhc2g7Ci0gX191MzIgdHBfdmxhbl90Y2k7Ci0gX191MTYgdHBfdmxhbl90cGlkOwotIF9fdTE2IHRwX3BhZGRpbmc7CisgIF9fdTMyIHRwX3J4aGFzaDsKKyAgX191MzIgdHBfdmxhbl90Y2k7CisgIF9fdTE2IHRwX3ZsYW5fdHBpZDsKKyAgX191MTYgdHBfcGFkZGluZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHRwYWNrZXQzX2hkciB7Ci0gX191MzIgdHBfbmV4dF9vZmZzZXQ7Ci0gX191MzIgdHBfc2VjOworICBfX3UzMiB0cF9uZXh0X29mZnNldDsKKyAgX191MzIgdHBfc2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0cF9uc2VjOwotIF9fdTMyIHRwX3NuYXBsZW47Ci0gX191MzIgdHBfbGVuOwotIF9fdTMyIHRwX3N0YXR1czsKKyAgX191MzIgdHBfbnNlYzsKKyAgX191MzIgdHBfc25hcGxlbjsKKyAgX191MzIgdHBfbGVuOworICBfX3UzMiB0cF9zdGF0dXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHRwX21hYzsKLSBfX3UxNiB0cF9uZXQ7Ci0gdW5pb24gewotIHN0cnVjdCB0cGFja2V0X2hkcl92YXJpYW50MSBodjE7CisgIF9fdTE2IHRwX21hYzsKKyAgX191MTYgdHBfbmV0OworICB1bmlvbiB7CisgICAgc3RydWN0IHRwYWNrZXRfaGRyX3ZhcmlhbnQxIGh2MTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKLSBfX3U4IHRwX3BhZGRpbmdbOF07CisgIH07CisgIF9fdTggdHBfcGFkZGluZ1s4XTsKIH07CiBzdHJ1Y3QgdHBhY2tldF9iZF90cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0c19zZWM7Ci0gdW5pb24gewotIHVuc2lnbmVkIGludCB0c191c2VjOwotIHVuc2lnbmVkIGludCB0c19uc2VjOworICB1bnNpZ25lZCBpbnQgdHNfc2VjOworICB1bmlvbiB7CisgICAgdW5zaWduZWQgaW50IHRzX3VzZWM7CisgICAgdW5zaWduZWQgaW50IHRzX25zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07CisgIH07CiB9Owogc3RydWN0IHRwYWNrZXRfaGRyX3YxIHsKLSBfX3UzMiBibG9ja19zdGF0dXM7CisgIF9fdTMyIGJsb2NrX3N0YXR1czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbnVtX3BrdHM7Ci0gX191MzIgb2Zmc2V0X3RvX2ZpcnN0X3BrdDsKLSBfX3UzMiBibGtfbGVuOwotIF9fYWxpZ25lZF91NjQgc2VxX251bTsKKyAgX191MzIgbnVtX3BrdHM7CisgIF9fdTMyIG9mZnNldF90b19maXJzdF9wa3Q7CisgIF9fdTMyIGJsa19sZW47CisgIF9fYWxpZ25lZF91NjQgc2VxX251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRwYWNrZXRfYmRfdHMgdHNfZmlyc3RfcGt0LCB0c19sYXN0X3BrdDsKKyAgc3RydWN0IHRwYWNrZXRfYmRfdHMgdHNfZmlyc3RfcGt0LCB0c19sYXN0X3BrdDsKIH07CiB1bmlvbiB0cGFja2V0X2JkX2hlYWRlcl91IHsKLSBzdHJ1Y3QgdHBhY2tldF9oZHJfdjEgYmgxOworICBzdHJ1Y3QgdHBhY2tldF9oZHJfdjEgYmgxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdHBhY2tldF9ibG9ja19kZXNjIHsKLSBfX3UzMiB2ZXJzaW9uOwotIF9fdTMyIG9mZnNldF90b19wcml2OworICBfX3UzMiB2ZXJzaW9uOworICBfX3UzMiBvZmZzZXRfdG9fcHJpdjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gdHBhY2tldF9iZF9oZWFkZXJfdSBoZHI7CisgIHVuaW9uIHRwYWNrZXRfYmRfaGVhZGVyX3UgaGRyOwogfTsKICNkZWZpbmUgVFBBQ0tFVDJfSERSTEVOIChUUEFDS0VUX0FMSUdOKHNpemVvZihzdHJ1Y3QgdHBhY2tldDJfaGRyKSkgKyBzaXplb2Yoc3RydWN0IHNvY2thZGRyX2xsKSkKICNkZWZpbmUgVFBBQ0tFVDNfSERSTEVOIChUUEFDS0VUX0FMSUdOKHNpemVvZihzdHJ1Y3QgdHBhY2tldDNfaGRyKSkgKyBzaXplb2Yoc3RydWN0IHNvY2thZGRyX2xsKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHRwYWNrZXRfdmVyc2lvbnMgewotIFRQQUNLRVRfVjEsCi0gVFBBQ0tFVF9WMiwKLSBUUEFDS0VUX1YzCisgIFRQQUNLRVRfVjEsCisgIFRQQUNLRVRfVjIsCisgIFRQQUNLRVRfVjMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHRwYWNrZXRfcmVxIHsKLSB1bnNpZ25lZCBpbnQgdHBfYmxvY2tfc2l6ZTsKLSB1bnNpZ25lZCBpbnQgdHBfYmxvY2tfbnI7CisgIHVuc2lnbmVkIGludCB0cF9ibG9ja19zaXplOworICB1bnNpZ25lZCBpbnQgdHBfYmxvY2tfbnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0cF9mcmFtZV9zaXplOwotIHVuc2lnbmVkIGludCB0cF9mcmFtZV9ucjsKKyAgdW5zaWduZWQgaW50IHRwX2ZyYW1lX3NpemU7CisgIHVuc2lnbmVkIGludCB0cF9mcmFtZV9ucjsKIH07CiBzdHJ1Y3QgdHBhY2tldF9yZXEzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHRwX2Jsb2NrX3NpemU7Ci0gdW5zaWduZWQgaW50IHRwX2Jsb2NrX25yOwotIHVuc2lnbmVkIGludCB0cF9mcmFtZV9zaXplOwotIHVuc2lnbmVkIGludCB0cF9mcmFtZV9ucjsKKyAgdW5zaWduZWQgaW50IHRwX2Jsb2NrX3NpemU7CisgIHVuc2lnbmVkIGludCB0cF9ibG9ja19ucjsKKyAgdW5zaWduZWQgaW50IHRwX2ZyYW1lX3NpemU7CisgIHVuc2lnbmVkIGludCB0cF9mcmFtZV9ucjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHRwX3JldGlyZV9ibGtfdG92OwotIHVuc2lnbmVkIGludCB0cF9zaXplb2ZfcHJpdjsKLSB1bnNpZ25lZCBpbnQgdHBfZmVhdHVyZV9yZXFfd29yZDsKKyAgdW5zaWduZWQgaW50IHRwX3JldGlyZV9ibGtfdG92OworICB1bnNpZ25lZCBpbnQgdHBfc2l6ZW9mX3ByaXY7CisgIHVuc2lnbmVkIGludCB0cF9mZWF0dXJlX3JlcV93b3JkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB1bmlvbiB0cGFja2V0X3JlcV91IHsKLSBzdHJ1Y3QgdHBhY2tldF9yZXEgcmVxOwotIHN0cnVjdCB0cGFja2V0X3JlcTMgcmVxMzsKKyAgc3RydWN0IHRwYWNrZXRfcmVxIHJlcTsKKyAgc3RydWN0IHRwYWNrZXRfcmVxMyByZXEzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcGFja2V0X21yZXEgewotIGludCBtcl9pZmluZGV4OwotIHVuc2lnbmVkIHNob3J0IG1yX3R5cGU7Ci0gdW5zaWduZWQgc2hvcnQgbXJfYWxlbjsKKyAgaW50IG1yX2lmaW5kZXg7CisgIHVuc2lnbmVkIHNob3J0IG1yX3R5cGU7CisgIHVuc2lnbmVkIHNob3J0IG1yX2FsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgbXJfYWRkcmVzc1s4XTsKKyAgdW5zaWduZWQgY2hhciBtcl9hZGRyZXNzWzhdOwogfTsKICNkZWZpbmUgUEFDS0VUX01SX01VTFRJQ0FTVCAwCiAjZGVmaW5lIFBBQ0tFVF9NUl9QUk9NSVNDIDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcGxpcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wbGlwLmgKaW5kZXggMjJhNDllMC4uNDI2MjFkNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wbGlwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wbGlwLmgKQEAgLTIyLDkgKzIyLDkgQEAKICNkZWZpbmUgU0lPQ0RFVlBMSVAgU0lPQ0RFVlBSSVZBVEUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcGxpcGNvbmYgewotIHVuc2lnbmVkIHNob3J0IHBjbWQ7Ci0gdW5zaWduZWQgbG9uZyBuaWJibGU7Ci0gdW5zaWduZWQgbG9uZyB0cmlnZ2VyOworICB1bnNpZ25lZCBzaG9ydCBwY21kOworICB1bnNpZ25lZCBsb25nIG5pYmJsZTsKKyAgdW5zaWduZWQgbG9uZyB0cmlnZ2VyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFBMSVBfR0VUX1RJTUVPVVQgMHgxCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG9sMnRwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG9sMnRwLmgKaW5kZXggNjYxYzU2ZC4uMzZiOGNlZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wcHBvbDJ0cC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcHBwb2wydHAuaApAQCAtMjEsNTQgKzIxLDU0IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBwcHBvbDJ0cF9hZGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfcGlkX3QgcGlkOwotIGludCBmZDsKLSBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkcjsKLSBfX3UxNiBzX3R1bm5lbCwgc19zZXNzaW9uOworICBfX2tlcm5lbF9waWRfdCBwaWQ7CisgIGludCBmZDsKKyAgc3RydWN0IHNvY2thZGRyX2luIGFkZHI7CisgIF9fdTE2IHNfdHVubmVsLCBzX3Nlc3Npb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGRfdHVubmVsLCBkX3Nlc3Npb247CisgIF9fdTE2IGRfdHVubmVsLCBkX3Nlc3Npb247CiB9Owogc3RydWN0IHBwcG9sMnRwaW42X2FkZHIgewotIF9fa2VybmVsX3BpZF90IHBpZDsKKyAgX19rZXJuZWxfcGlkX3QgcGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZmQ7Ci0gX191MTYgc190dW5uZWwsIHNfc2Vzc2lvbjsKLSBfX3UxNiBkX3R1bm5lbCwgZF9zZXNzaW9uOwotIHN0cnVjdCBzb2NrYWRkcl9pbjYgYWRkcjsKKyAgaW50IGZkOworICBfX3UxNiBzX3R1bm5lbCwgc19zZXNzaW9uOworICBfX3UxNiBkX3R1bm5lbCwgZF9zZXNzaW9uOworICBzdHJ1Y3Qgc29ja2FkZHJfaW42IGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBwcHBvbDJ0cHYzX2FkZHIgewotIF9fa2VybmVsX3BpZF90IHBpZDsKLSBpbnQgZmQ7CisgIF9fa2VybmVsX3BpZF90IHBpZDsKKyAgaW50IGZkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkcjsKLSBfX3UzMiBzX3R1bm5lbCwgc19zZXNzaW9uOwotIF9fdTMyIGRfdHVubmVsLCBkX3Nlc3Npb247CisgIHN0cnVjdCBzb2NrYWRkcl9pbiBhZGRyOworICBfX3UzMiBzX3R1bm5lbCwgc19zZXNzaW9uOworICBfX3UzMiBkX3R1bm5lbCwgZF9zZXNzaW9uOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcHBwb2wydHB2M2luNl9hZGRyIHsKLSBfX2tlcm5lbF9waWRfdCBwaWQ7Ci0gaW50IGZkOwotIF9fdTMyIHNfdHVubmVsLCBzX3Nlc3Npb247CisgIF9fa2VybmVsX3BpZF90IHBpZDsKKyAgaW50IGZkOworICBfX3UzMiBzX3R1bm5lbCwgc19zZXNzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkX3R1bm5lbCwgZF9zZXNzaW9uOwotIHN0cnVjdCBzb2NrYWRkcl9pbjYgYWRkcjsKKyAgX191MzIgZF90dW5uZWwsIGRfc2Vzc2lvbjsKKyAgc3RydWN0IHNvY2thZGRyX2luNiBhZGRyOwogfTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQUFBPTDJUUF9TT19ERUJVRyA9IDEsCi0gUFBQT0wyVFBfU09fUkVDVlNFUSA9IDIsCi0gUFBQT0wyVFBfU09fU0VORFNFUSA9IDMsCi0gUFBQT0wyVFBfU09fTE5TTU9ERSA9IDQsCisgIFBQUE9MMlRQX1NPX0RFQlVHID0gMSwKKyAgUFBQT0wyVFBfU09fUkVDVlNFUSA9IDIsCisgIFBQUE9MMlRQX1NPX1NFTkRTRVEgPSAzLAorICBQUFBPTDJUUF9TT19MTlNNT0RFID0gNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUFBQT0wyVFBfU09fUkVPUkRFUlRPID0gNSwKKyAgUFBQT0wyVFBfU09fUkVPUkRFUlRPID0gNSwKIH07CiBlbnVtIHsKLSBQUFBPTDJUUF9NU0dfREVCVUcgPSAoMSA8PCAwKSwKKyAgUFBQT0wyVFBfTVNHX0RFQlVHID0gKDEgPDwgMCksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBQUE9MMlRQX01TR19DT05UUk9MID0gKDEgPDwgMSksCi0gUFBQT0wyVFBfTVNHX1NFUSA9ICgxIDw8IDIpLAotIFBQUE9MMlRQX01TR19EQVRBID0gKDEgPDwgMyksCisgIFBQUE9MMlRQX01TR19DT05UUk9MID0gKDEgPDwgMSksCisgIFBQUE9MMlRQX01TR19TRVEgPSAoMSA8PCAyKSwKKyAgUFBQT0wyVFBfTVNHX0RBVEEgPSAoMSA8PCAzKSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG9sYWMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcHBwb2xhYy5oCmluZGV4IDg0YTE0OTkuLjMwM2E4OTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcHBwb2xhYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcHBwb2xhYy5oCkBAIC0yMiwxMyArMjIsMTMgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzb2NrYWRkcl9wcHBvbGFjIHsKLSBzYV9mYW1pbHlfdCBzYV9mYW1pbHk7Ci0gdW5zaWduZWQgaW50IHNhX3Byb3RvY29sOwotIGludCB1ZHBfc29ja2V0OworICBzYV9mYW1pbHlfdCBzYV9mYW1pbHk7CisgIHVuc2lnbmVkIGludCBzYV9wcm90b2NvbDsKKyAgaW50IHVkcF9zb2NrZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSB7Ci0gX191MTYgdHVubmVsLCBzZXNzaW9uOwotIH0gbG9jYWwsIHJlbW90ZTsKKyAgc3RydWN0IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIHsKKyAgICBfX3UxNiB0dW5uZWwsIHNlc3Npb247CisgIH0gbG9jYWwsIHJlbW90ZTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG9wbnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcHBwb3Bucy5oCmluZGV4IGRkMjlhOGIuLmJkOTZlOTQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcHBwb3Bucy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcHBwb3Bucy5oCkBAIC0yMiwxMiArMjIsMTIgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzb2NrYWRkcl9wcHBvcG5zIHsKLSBzYV9mYW1pbHlfdCBzYV9mYW1pbHk7Ci0gdW5zaWduZWQgaW50IHNhX3Byb3RvY29sOwotIGludCB0Y3Bfc29ja2V0OworICBzYV9mYW1pbHlfdCBzYV9mYW1pbHk7CisgIHVuc2lnbmVkIGludCBzYV9wcm90b2NvbDsKKyAgaW50IHRjcF9zb2NrZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGxvY2FsOwotIF9fdTE2IHJlbW90ZTsKKyAgX191MTYgbG9jYWw7CisgIF9fdTE2IHJlbW90ZTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG94LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3BwcG94LmgKaW5kZXggM2JjMmRkYi4uN2I0ZGJkMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl9wcHBveC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfcHBwb3guaApAQCAtMzIsMTQgKzMyLDE0IEBACiB0eXBlZGVmIF9fYmUxNiBzaWRfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcHBwb2VfYWRkciB7Ci0gc2lkX3Qgc2lkOwotIHVuc2lnbmVkIGNoYXIgcmVtb3RlW0VUSF9BTEVOXTsKLSBjaGFyIGRldltJRk5BTVNJWl07CisgIHNpZF90IHNpZDsKKyAgdW5zaWduZWQgY2hhciByZW1vdGVbRVRIX0FMRU5dOworICBjaGFyIGRldltJRk5BTVNJWl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBwcHRwX2FkZHIgewotIF9fdTE2IGNhbGxfaWQ7Ci0gc3RydWN0IGluX2FkZHIgc2luX2FkZHI7CisgIF9fdTE2IGNhbGxfaWQ7CisgIHN0cnVjdCBpbl9hZGRyIHNpbl9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFBYX1BST1RPX09FIDAKQEAgLTQ4LDQyICs0OCw0MiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUFhfTUFYX1BST1RPIDMKIHN0cnVjdCBzb2NrYWRkcl9wcHBveCB7Ci0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OwotIHVuc2lnbmVkIGludCBzYV9wcm90b2NvbDsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OworICB1bnNpZ25lZCBpbnQgc2FfcHJvdG9jb2w7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBzdHJ1Y3QgcHBwb2VfYWRkciBwcHBvZTsKLSBzdHJ1Y3QgcHB0cF9hZGRyIHBwdHA7Ci0gfSBzYV9hZGRyOworICB1bmlvbiB7CisgICAgc3RydWN0IHBwcG9lX2FkZHIgcHBwb2U7CisgICAgc3RydWN0IHBwdHBfYWRkciBwcHRwOworICB9IHNhX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX3BhY2tlZDsKIHN0cnVjdCBzb2NrYWRkcl9wcHBvbDJ0cCB7Ci0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OwotIHVuc2lnbmVkIGludCBzYV9wcm90b2NvbDsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OworICB1bnNpZ25lZCBpbnQgc2FfcHJvdG9jb2w7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBwcHBvbDJ0cF9hZGRyIHBwcG9sMnRwOworICBzdHJ1Y3QgcHBwb2wydHBfYWRkciBwcHBvbDJ0cDsKIH0gX19wYWNrZWQ7CiBzdHJ1Y3Qgc29ja2FkZHJfcHBwb2wydHBpbjYgewotIF9fa2VybmVsX3NhX2ZhbWlseV90IHNhX2ZhbWlseTsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc2FfcHJvdG9jb2w7Ci0gc3RydWN0IHBwcG9sMnRwaW42X2FkZHIgcHBwb2wydHA7CisgIHVuc2lnbmVkIGludCBzYV9wcm90b2NvbDsKKyAgc3RydWN0IHBwcG9sMnRwaW42X2FkZHIgcHBwb2wydHA7CiB9IF9fcGFja2VkOwogc3RydWN0IHNvY2thZGRyX3BwcG9sMnRwdjMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzYV9mYW1pbHk7Ci0gdW5zaWduZWQgaW50IHNhX3Byb3RvY29sOwotIHN0cnVjdCBwcHBvbDJ0cHYzX2FkZHIgcHBwb2wydHA7CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHNhX2ZhbWlseTsKKyAgdW5zaWduZWQgaW50IHNhX3Byb3RvY29sOworICBzdHJ1Y3QgcHBwb2wydHB2M19hZGRyIHBwcG9sMnRwOwogfSBfX3BhY2tlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc29ja2FkZHJfcHBwb2wydHB2M2luNiB7Ci0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2FfZmFtaWx5OwotIHVuc2lnbmVkIGludCBzYV9wcm90b2NvbDsKLSBzdHJ1Y3QgcHBwb2wydHB2M2luNl9hZGRyIHBwcG9sMnRwOworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzYV9mYW1pbHk7CisgIHVuc2lnbmVkIGludCBzYV9wcm90b2NvbDsKKyAgc3RydWN0IHBwcG9sMnRwdjNpbjZfYWRkciBwcHBvbDJ0cDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fcGFja2VkOwotI2RlZmluZSBQUFBPRUlPQ1NGV0QgX0lPVygweEIxICwwLCBzaXplX3QpCi0jZGVmaW5lIFBQUE9FSU9DREZXRCBfSU8oMHhCMSAsMSkKKyNkZWZpbmUgUFBQT0VJT0NTRldEIF9JT1coMHhCMSwgMCwgc2l6ZV90KQorI2RlZmluZSBQUFBPRUlPQ0RGV0QgX0lPKDB4QjEsIDEpCiAjZGVmaW5lIFBBRElfQ09ERSAweDA5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQQURPX0NPREUgMHgwNwpAQCAtOTIsMTEgKzkyLDExIEBACiAjZGVmaW5lIFBBRFRfQ09ERSAweGE3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHBwcG9lX3RhZyB7Ci0gX19iZTE2IHRhZ190eXBlOwotIF9fYmUxNiB0YWdfbGVuOwotIGNoYXIgdGFnX2RhdGFbMF07CisgIF9fYmUxNiB0YWdfdHlwZTsKKyAgX19iZTE2IHRhZ19sZW47CisgIGNoYXIgdGFnX2RhdGFbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBQVFRfRU9MIF9fY3B1X3RvX2JlMTYoMHgwMDAwKQogI2RlZmluZSBQVFRfU1JWX05BTUUgX19jcHVfdG9fYmUxNigweDAxMDEpCiAjZGVmaW5lIFBUVF9BQ19OQU1FIF9fY3B1X3RvX2JlMTYoMHgwMTAyKQpAQCAtMTEyLDIxICsxMTIsMjEgQEAKIHN0cnVjdCBwcHBvZV9oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZmRlZiBfX0xJVFRMRV9FTkRJQU5fQklURklFTEQKLSBfX3U4IHR5cGUgOiA0OwotIF9fdTggdmVyIDogNDsKKyAgX191OCB0eXBlIDogNDsKKyAgX191OCB2ZXIgOiA0OwogI2VsaWYgZGVmaW5lZChfX0JJR19FTkRJQU5fQklURklFTEQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdmVyIDogNDsKLSBfX3U4IHR5cGUgOiA0OworICBfX3U4IHZlciA6IDQ7CisgIF9fdTggdHlwZSA6IDQ7CiAjZWxzZQogI2Vycm9yICJQbGVhc2UgZml4IDxhc20vYnl0ZW9yZGVyLmg+IgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgotIF9fdTggY29kZTsKLSBfX2JlMTYgc2lkOwotIF9fYmUxNiBsZW5ndGg7CisgIF9fdTggY29kZTsKKyAgX19iZTE2IHNpZDsKKyAgX19iZTE2IGxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHBwcG9lX3RhZyB0YWdbMF07CisgIHN0cnVjdCBwcHBvZV90YWcgdGFnWzBdOwogfSBfX3BhY2tlZDsKICNkZWZpbmUgUFBQT0VfU0VTX0hMRU4gOAogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3NsaXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfc2xpcC5oCmluZGV4IDc4NjNmMmMuLjhjZDcxNGUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfc2xpcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfc2xpcC5oCkBAIC0yNiwxMCArMjYsMTAgQEAKICNkZWZpbmUgU0xfT1BUX0FEQVBUSVZFIDgKICNkZWZpbmUgU0lPQ1NLRUVQQUxJVkUgKFNJT0NERVZQUklWQVRFKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0lPQ0dLRUVQQUxJVkUgKFNJT0NERVZQUklWQVRFKzEpCi0jZGVmaW5lIFNJT0NTT1VURklMTCAoU0lPQ0RFVlBSSVZBVEUrMikKLSNkZWZpbmUgU0lPQ0dPVVRGSUxMIChTSU9DREVWUFJJVkFURSszKQotI2RlZmluZSBTSU9DU0xFQVNFIChTSU9DREVWUFJJVkFURSs0KQorI2RlZmluZSBTSU9DR0tFRVBBTElWRSAoU0lPQ0RFVlBSSVZBVEUgKyAxKQorI2RlZmluZSBTSU9DU09VVEZJTEwgKFNJT0NERVZQUklWQVRFICsgMikKKyNkZWZpbmUgU0lPQ0dPVVRGSUxMIChTSU9DREVWUFJJVkFURSArIDMpCisjZGVmaW5lIFNJT0NTTEVBU0UgKFNJT0NERVZQUklWQVRFICsgNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNJT0NHTEVBU0UgKFNJT0NERVZQUklWQVRFKzUpCisjZGVmaW5lIFNJT0NHTEVBU0UgKFNJT0NERVZQUklWQVRFICsgNSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl90ZWFtLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3RlYW0uaAppbmRleCBlNzcyZDZkLi4wZDczZjFlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3RlYW0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3RlYW0uaApAQCAtMjEsNjcgKzIxLDY3IEBACiAjZGVmaW5lIFRFQU1fU1RSSU5HX01BWF9MRU4gMzIKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBURUFNX0NNRF9OT09QLAotIFRFQU1fQ01EX09QVElPTlNfU0VULAotIFRFQU1fQ01EX09QVElPTlNfR0VULAotIFRFQU1fQ01EX1BPUlRfTElTVF9HRVQsCisgIFRFQU1fQ01EX05PT1AsCisgIFRFQU1fQ01EX09QVElPTlNfU0VULAorICBURUFNX0NNRF9PUFRJT05TX0dFVCwKKyAgVEVBTV9DTURfUE9SVF9MSVNUX0dFVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19URUFNX0NNRF9NQVgsCi0gVEVBTV9DTURfTUFYID0gKF9fVEVBTV9DTURfTUFYIC0gMSksCisgIF9fVEVBTV9DTURfTUFYLAorICBURUFNX0NNRF9NQVggPSAoX19URUFNX0NNRF9NQVggLSAxKSwKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVEVBTV9BVFRSX1VOU1BFQywKLSBURUFNX0FUVFJfVEVBTV9JRklOREVYLAotIFRFQU1fQVRUUl9MSVNUX09QVElPTiwKLSBURUFNX0FUVFJfTElTVF9QT1JULAorICBURUFNX0FUVFJfVU5TUEVDLAorICBURUFNX0FUVFJfVEVBTV9JRklOREVYLAorICBURUFNX0FUVFJfTElTVF9PUFRJT04sCisgIFRFQU1fQVRUUl9MSVNUX1BPUlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVEVBTV9BVFRSX01BWCwKLSBURUFNX0FUVFJfTUFYID0gX19URUFNX0FUVFJfTUFYIC0gMSwKKyAgX19URUFNX0FUVFJfTUFYLAorICBURUFNX0FUVFJfTUFYID0gX19URUFNX0FUVFJfTUFYIC0gMSwKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVEVBTV9BVFRSX0lURU1fT1BUSU9OX1VOU1BFQywKLSBURUFNX0FUVFJfSVRFTV9PUFRJT04sCi0gX19URUFNX0FUVFJfSVRFTV9PUFRJT05fTUFYLAotIFRFQU1fQVRUUl9JVEVNX09QVElPTl9NQVggPSBfX1RFQU1fQVRUUl9JVEVNX09QVElPTl9NQVggLSAxLAorICBURUFNX0FUVFJfSVRFTV9PUFRJT05fVU5TUEVDLAorICBURUFNX0FUVFJfSVRFTV9PUFRJT04sCisgIF9fVEVBTV9BVFRSX0lURU1fT1BUSU9OX01BWCwKKyAgVEVBTV9BVFRSX0lURU1fT1BUSU9OX01BWCA9IF9fVEVBTV9BVFRSX0lURU1fT1BUSU9OX01BWCAtIDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFRFQU1fQVRUUl9PUFRJT05fVU5TUEVDLAotIFRFQU1fQVRUUl9PUFRJT05fTkFNRSwKKyAgVEVBTV9BVFRSX09QVElPTl9VTlNQRUMsCisgIFRFQU1fQVRUUl9PUFRJT05fTkFNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVEVBTV9BVFRSX09QVElPTl9DSEFOR0VELAotIFRFQU1fQVRUUl9PUFRJT05fVFlQRSwKLSBURUFNX0FUVFJfT1BUSU9OX0RBVEEsCi0gVEVBTV9BVFRSX09QVElPTl9SRU1PVkVELAorICBURUFNX0FUVFJfT1BUSU9OX0NIQU5HRUQsCisgIFRFQU1fQVRUUl9PUFRJT05fVFlQRSwKKyAgVEVBTV9BVFRSX09QVElPTl9EQVRBLAorICBURUFNX0FUVFJfT1BUSU9OX1JFTU9WRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRFQU1fQVRUUl9PUFRJT05fUE9SVF9JRklOREVYLAotIFRFQU1fQVRUUl9PUFRJT05fQVJSQVlfSU5ERVgsCi0gX19URUFNX0FUVFJfT1BUSU9OX01BWCwKLSBURUFNX0FUVFJfT1BUSU9OX01BWCA9IF9fVEVBTV9BVFRSX09QVElPTl9NQVggLSAxLAorICBURUFNX0FUVFJfT1BUSU9OX1BPUlRfSUZJTkRFWCwKKyAgVEVBTV9BVFRSX09QVElPTl9BUlJBWV9JTkRFWCwKKyAgX19URUFNX0FUVFJfT1BUSU9OX01BWCwKKyAgVEVBTV9BVFRSX09QVElPTl9NQVggPSBfX1RFQU1fQVRUUl9PUFRJT05fTUFYIC0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gVEVBTV9BVFRSX0lURU1fUE9SVF9VTlNQRUMsCi0gVEVBTV9BVFRSX0lURU1fUE9SVCwKKyAgVEVBTV9BVFRSX0lURU1fUE9SVF9VTlNQRUMsCisgIFRFQU1fQVRUUl9JVEVNX1BPUlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVEVBTV9BVFRSX0lURU1fUE9SVF9NQVgsCi0gVEVBTV9BVFRSX0lURU1fUE9SVF9NQVggPSBfX1RFQU1fQVRUUl9JVEVNX1BPUlRfTUFYIC0gMSwKKyAgX19URUFNX0FUVFJfSVRFTV9QT1JUX01BWCwKKyAgVEVBTV9BVFRSX0lURU1fUE9SVF9NQVggPSBfX1RFQU1fQVRUUl9JVEVNX1BPUlRfTUFYIC0gMSwKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVEVBTV9BVFRSX1BPUlRfVU5TUEVDLAotIFRFQU1fQVRUUl9QT1JUX0lGSU5ERVgsCi0gVEVBTV9BVFRSX1BPUlRfQ0hBTkdFRCwKLSBURUFNX0FUVFJfUE9SVF9MSU5LVVAsCisgIFRFQU1fQVRUUl9QT1JUX1VOU1BFQywKKyAgVEVBTV9BVFRSX1BPUlRfSUZJTkRFWCwKKyAgVEVBTV9BVFRSX1BPUlRfQ0hBTkdFRCwKKyAgVEVBTV9BVFRSX1BPUlRfTElOS1VQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBURUFNX0FUVFJfUE9SVF9TUEVFRCwKLSBURUFNX0FUVFJfUE9SVF9EVVBMRVgsCi0gVEVBTV9BVFRSX1BPUlRfUkVNT1ZFRCwKLSBfX1RFQU1fQVRUUl9QT1JUX01BWCwKKyAgVEVBTV9BVFRSX1BPUlRfU1BFRUQsCisgIFRFQU1fQVRUUl9QT1JUX0RVUExFWCwKKyAgVEVBTV9BVFRSX1BPUlRfUkVNT1ZFRCwKKyAgX19URUFNX0FUVFJfUE9SVF9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRFQU1fQVRUUl9QT1JUX01BWCA9IF9fVEVBTV9BVFRSX1BPUlRfTUFYIC0gMSwKKyAgVEVBTV9BVFRSX1BPUlRfTUFYID0gX19URUFNX0FUVFJfUE9SVF9NQVggLSAxLAogfTsKICNkZWZpbmUgVEVBTV9HRU5MX05BTUUgInRlYW0iCiAjZGVmaW5lIFRFQU1fR0VOTF9WRVJTSU9OIDB4MQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl90dW4uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfdHVuLmgKaW5kZXggZjhmODBiOS4uZGQyZGMyYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl90dW4uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3R1bi5oCkBAIC04NCwxNiArODQsMTYgQEAKICNkZWZpbmUgVFVOX0ZfVUZPIDB4MTAKICNkZWZpbmUgVFVOX1BLVF9TVFJJUCAweDAwMDEKIHN0cnVjdCB0dW5fcGkgewotIF9fdTE2IGZsYWdzOworICBfX3UxNiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHByb3RvOworICBfX2JlMTYgcHJvdG87CiB9OwogI2RlZmluZSBUVU5fRkxUX0FMTE1VTFRJIDB4MDAwMQogc3RydWN0IHR1bl9maWx0ZXIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBmbGFnczsKLSBfX3UxNiBjb3VudDsKLSBfX3U4IGFkZHJbMF1bRVRIX0FMRU5dOworICBfX3UxNiBmbGFnczsKKyAgX191MTYgY291bnQ7CisgIF9fdTggYWRkclswXVtFVEhfQUxFTl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl90dW5uZWwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfdHVubmVsLmgKaW5kZXggNjdjZTVjZS4uZmVhMzQyOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZl90dW5uZWwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3R1bm5lbC5oCkBAIC00Nyw5MyArNDcsMTEyIEBACiAjZGVmaW5lIEdSRV9WRVJTSU9OIF9fY3B1X3RvX2JlMTYoMHgwMDA3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcF90dW5uZWxfcGFybSB7Ci0gY2hhciBuYW1lW0lGTkFNU0laXTsKLSBpbnQgbGluazsKLSBfX2JlMTYgaV9mbGFnczsKKyAgY2hhciBuYW1lW0lGTkFNU0laXTsKKyAgaW50IGxpbms7CisgIF9fYmUxNiBpX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgb19mbGFnczsKLSBfX2JlMzIgaV9rZXk7Ci0gX19iZTMyIG9fa2V5OwotIHN0cnVjdCBpcGhkciBpcGg7CisgIF9fYmUxNiBvX2ZsYWdzOworICBfX2JlMzIgaV9rZXk7CisgIF9fYmUzMiBvX2tleTsKKyAgc3RydWN0IGlwaGRyIGlwaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gSUZMQV9JUFRVTl9VTlNQRUMsCi0gSUZMQV9JUFRVTl9MSU5LLAorICBJRkxBX0lQVFVOX1VOU1BFQywKKyAgSUZMQV9JUFRVTl9MSU5LLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0lQVFVOX0xPQ0FMLAotIElGTEFfSVBUVU5fUkVNT1RFLAotIElGTEFfSVBUVU5fVFRMLAotIElGTEFfSVBUVU5fVE9TLAorICBJRkxBX0lQVFVOX0xPQ0FMLAorICBJRkxBX0lQVFVOX1JFTU9URSwKKyAgSUZMQV9JUFRVTl9UVEwsCisgIElGTEFfSVBUVU5fVE9TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0lQVFVOX0VOQ0FQX0xJTUlULAotIElGTEFfSVBUVU5fRkxPV0lORk8sCi0gSUZMQV9JUFRVTl9GTEFHUywKLSBJRkxBX0lQVFVOX1BST1RPLAorICBJRkxBX0lQVFVOX0VOQ0FQX0xJTUlULAorICBJRkxBX0lQVFVOX0ZMT1dJTkZPLAorICBJRkxBX0lQVFVOX0ZMQUdTLAorICBJRkxBX0lQVFVOX1BST1RPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0lQVFVOX1BNVFVESVNDLAotIElGTEFfSVBUVU5fNlJEX1BSRUZJWCwKLSBJRkxBX0lQVFVOXzZSRF9SRUxBWV9QUkVGSVgsCi0gSUZMQV9JUFRVTl82UkRfUFJFRklYTEVOLAorICBJRkxBX0lQVFVOX1BNVFVESVNDLAorICBJRkxBX0lQVFVOXzZSRF9QUkVGSVgsCisgIElGTEFfSVBUVU5fNlJEX1JFTEFZX1BSRUZJWCwKKyAgSUZMQV9JUFRVTl82UkRfUFJFRklYTEVOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0lQVFVOXzZSRF9SRUxBWV9QUkVGSVhMRU4sCi0gX19JRkxBX0lQVFVOX01BWCwKKyAgSUZMQV9JUFRVTl82UkRfUkVMQVlfUFJFRklYTEVOLAorICBJRkxBX0lQVFVOX0VOQ0FQX1RZUEUsCisgIElGTEFfSVBUVU5fRU5DQVBfRkxBR1MsCisgIElGTEFfSVBUVU5fRU5DQVBfU1BPUlQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJRkxBX0lQVFVOX0VOQ0FQX0RQT1JULAorICBfX0lGTEFfSVBUVU5fTUFYLAogfTsKICNkZWZpbmUgSUZMQV9JUFRVTl9NQVggKF9fSUZMQV9JUFRVTl9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0gdHVubmVsX2VuY2FwX3R5cGVzIHsKKyAgVFVOTkVMX0VOQ0FQX05PTkUsCisgIFRVTk5FTF9FTkNBUF9GT1UsCisgIFRVTk5FTF9FTkNBUF9HVUUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKKyNkZWZpbmUgVFVOTkVMX0VOQ0FQX0ZMQUdfQ1NVTSAoMSA8PCAwKQorI2RlZmluZSBUVU5ORUxfRU5DQVBfRkxBR19DU1VNNiAoMSA8PCAxKQogI2RlZmluZSBTSVRfSVNBVEFQIDB4MDAwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcF90dW5uZWxfcHJsIHsKLSBfX2JlMzIgYWRkcjsKLSBfX3UxNiBmbGFnczsKKyAgX19iZTMyIGFkZHI7CisgIF9fdTE2IGZsYWdzOworICBfX3UxNiBfX3Jlc2VydmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBfX3Jlc2VydmVkOwotIF9fdTMyIGRhdGFsZW47Ci0gX191MzIgX19yZXNlcnZlZDI7CisgIF9fdTMyIGRhdGFsZW47CisgIF9fdTMyIF9fcmVzZXJ2ZWQyOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBSTF9ERUZBVUxUIDB4MDAwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcF90dW5uZWxfNnJkIHsKLSBzdHJ1Y3QgaW42X2FkZHIgcHJlZml4OwotIF9fYmUzMiByZWxheV9wcmVmaXg7CisgIHN0cnVjdCBpbjZfYWRkciBwcmVmaXg7CisgIF9fYmUzMiByZWxheV9wcmVmaXg7CisgIF9fdTE2IHByZWZpeGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcHJlZml4bGVuOwotIF9fdTE2IHJlbGF5X3ByZWZpeGxlbjsKKyAgX191MTYgcmVsYXlfcHJlZml4bGVuOwogfTsKIGVudW0geworICBJRkxBX0dSRV9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfR1JFX1VOU1BFQywKLSBJRkxBX0dSRV9MSU5LLAotIElGTEFfR1JFX0lGTEFHUywKLSBJRkxBX0dSRV9PRkxBR1MsCisgIElGTEFfR1JFX0xJTkssCisgIElGTEFfR1JFX0lGTEFHUywKKyAgSUZMQV9HUkVfT0ZMQUdTLAorICBJRkxBX0dSRV9JS0VZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJRkxBX0dSRV9JS0VZLAotIElGTEFfR1JFX09LRVksCi0gSUZMQV9HUkVfTE9DQUwsCi0gSUZMQV9HUkVfUkVNT1RFLAorICBJRkxBX0dSRV9PS0VZLAorICBJRkxBX0dSRV9MT0NBTCwKKyAgSUZMQV9HUkVfUkVNT1RFLAorICBJRkxBX0dSRV9UVEwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfR1JFX1RUTCwKLSBJRkxBX0dSRV9UT1MsCi0gSUZMQV9HUkVfUE1UVURJU0MsCi0gSUZMQV9HUkVfRU5DQVBfTElNSVQsCisgIElGTEFfR1JFX1RPUywKKyAgSUZMQV9HUkVfUE1UVURJU0MsCisgIElGTEFfR1JFX0VOQ0FQX0xJTUlULAorICBJRkxBX0dSRV9GTE9XSU5GTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9HUkVfRkxPV0lORk8sCi0gSUZMQV9HUkVfRkxBR1MsCi0gX19JRkxBX0dSRV9NQVgsCisgIElGTEFfR1JFX0ZMQUdTLAorICBJRkxBX0dSRV9FTkNBUF9UWVBFLAorICBJRkxBX0dSRV9FTkNBUF9GTEFHUywKKyAgSUZMQV9HUkVfRU5DQVBfU1BPUlQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJRkxBX0dSRV9FTkNBUF9EUE9SVCwKKyAgX19JRkxBX0dSRV9NQVgsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUZMQV9HUkVfTUFYIChfX0lGTEFfR1JFX01BWCAtIDEpCi0jZGVmaW5lIFZUSV9JU1ZUSSAweDAwMDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZUSV9JU1ZUSSAoKF9fZm9yY2UgX19iZTE2KSAweDAwMDEpCiBlbnVtIHsKLSBJRkxBX1ZUSV9VTlNQRUMsCisgIElGTEFfVlRJX1VOU1BFQywKKyAgSUZMQV9WVElfTElOSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUZMQV9WVElfTElOSywKLSBJRkxBX1ZUSV9JS0VZLAotIElGTEFfVlRJX09LRVksCi0gSUZMQV9WVElfTE9DQUwsCisgIElGTEFfVlRJX0lLRVksCisgIElGTEFfVlRJX09LRVksCisgIElGTEFfVlRJX0xPQ0FMLAorICBJRkxBX1ZUSV9SRU1PVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGTEFfVlRJX1JFTU9URSwKLSBfX0lGTEFfVlRJX01BWCwKKyAgX19JRkxBX1ZUSV9NQVgsCiB9OwogI2RlZmluZSBJRkxBX1ZUSV9NQVggKF9fSUZMQV9WVElfTUFYIC0gMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lmX3ZsYW4uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfdmxhbi5oCmluZGV4IDRjZjNjMTUuLjg1YTMyMzkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfdmxhbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaWZfdmxhbi5oCkBAIC0xOSw1MSArMTksNTEgQEAKICNpZm5kZWYgX1VBUElfTElOVVhfSUZfVkxBTl9IXwogI2RlZmluZSBfVUFQSV9MSU5VWF9JRl9WTEFOX0hfCiBlbnVtIHZsYW5faW9jdGxfY21kcyB7Ci0gQUREX1ZMQU5fQ01ELAorICBBRERfVkxBTl9DTUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERFTF9WTEFOX0NNRCwKLSBTRVRfVkxBTl9JTkdSRVNTX1BSSU9SSVRZX0NNRCwKLSBTRVRfVkxBTl9FR1JFU1NfUFJJT1JJVFlfQ01ELAotIEdFVF9WTEFOX0lOR1JFU1NfUFJJT1JJVFlfQ01ELAorICBERUxfVkxBTl9DTUQsCisgIFNFVF9WTEFOX0lOR1JFU1NfUFJJT1JJVFlfQ01ELAorICBTRVRfVkxBTl9FR1JFU1NfUFJJT1JJVFlfQ01ELAorICBHRVRfVkxBTl9JTkdSRVNTX1BSSU9SSVRZX0NNRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gR0VUX1ZMQU5fRUdSRVNTX1BSSU9SSVRZX0NNRCwKLSBTRVRfVkxBTl9OQU1FX1RZUEVfQ01ELAotIFNFVF9WTEFOX0ZMQUdfQ01ELAotIEdFVF9WTEFOX1JFQUxERVZfTkFNRV9DTUQsCisgIEdFVF9WTEFOX0VHUkVTU19QUklPUklUWV9DTUQsCisgIFNFVF9WTEFOX05BTUVfVFlQRV9DTUQsCisgIFNFVF9WTEFOX0ZMQUdfQ01ELAorICBHRVRfVkxBTl9SRUFMREVWX05BTUVfQ01ELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBHRVRfVkxBTl9WSURfQ01ECisgIEdFVF9WTEFOX1ZJRF9DTUQKIH07CiBlbnVtIHZsYW5fZmxhZ3MgewotIFZMQU5fRkxBR19SRU9SREVSX0hEUiA9IDB4MSwKKyAgVkxBTl9GTEFHX1JFT1JERVJfSERSID0gMHgxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWTEFOX0ZMQUdfR1ZSUCA9IDB4MiwKLSBWTEFOX0ZMQUdfTE9PU0VfQklORElORyA9IDB4NCwKLSBWTEFOX0ZMQUdfTVZSUCA9IDB4OCwKKyAgVkxBTl9GTEFHX0dWUlAgPSAweDIsCisgIFZMQU5fRkxBR19MT09TRV9CSU5ESU5HID0gMHg0LAorICBWTEFOX0ZMQUdfTVZSUCA9IDB4OCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB2bGFuX25hbWVfdHlwZXMgewotIFZMQU5fTkFNRV9UWVBFX1BMVVNfVklELAotIFZMQU5fTkFNRV9UWVBFX1JBV19QTFVTX1ZJRCwKLSBWTEFOX05BTUVfVFlQRV9QTFVTX1ZJRF9OT19QQUQsCisgIFZMQU5fTkFNRV9UWVBFX1BMVVNfVklELAorICBWTEFOX05BTUVfVFlQRV9SQVdfUExVU19WSUQsCisgIFZMQU5fTkFNRV9UWVBFX1BMVVNfVklEX05PX1BBRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVkxBTl9OQU1FX1RZUEVfUkFXX1BMVVNfVklEX05PX1BBRCwKLSBWTEFOX05BTUVfVFlQRV9ISUdIRVNUCisgIFZMQU5fTkFNRV9UWVBFX1JBV19QTFVTX1ZJRF9OT19QQUQsCisgIFZMQU5fTkFNRV9UWVBFX0hJR0hFU1QKIH07CiBzdHJ1Y3Qgdmxhbl9pb2N0bF9hcmdzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNtZDsKLSBjaGFyIGRldmljZTFbMjRdOwotIHVuaW9uIHsKLSBjaGFyIGRldmljZTJbMjRdOworICBpbnQgY21kOworICBjaGFyIGRldmljZTFbMjRdOworICB1bmlvbiB7CisgICAgY2hhciBkZXZpY2UyWzI0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IFZJRDsKLSB1bnNpZ25lZCBpbnQgc2tiX3ByaW9yaXR5OwotIHVuc2lnbmVkIGludCBuYW1lX3R5cGU7Ci0gdW5zaWduZWQgaW50IGJpbmRfdHlwZTsKKyAgICBpbnQgVklEOworICAgIHVuc2lnbmVkIGludCBza2JfcHJpb3JpdHk7CisgICAgdW5zaWduZWQgaW50IG5hbWVfdHlwZTsKKyAgICB1bnNpZ25lZCBpbnQgYmluZF90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZmxhZzsKLSB9IHU7Ci0gc2hvcnQgdmxhbl9xb3M7CisgICAgdW5zaWduZWQgaW50IGZsYWc7CisgIH0gdTsKKyAgc2hvcnQgdmxhbl9xb3M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pZ21wLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lnbXAuaAppbmRleCBkZmE4Y2EyLi5jMjBlMTM1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lnbXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lnbXAuaApAQCAtMjIsMTEgKzIyLDExIEBACiAjaW5jbHVkZSA8YXNtL2J5dGVvcmRlci5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpZ21waGRyIHsKLSBfX3U4IHR5cGU7Ci0gX191OCBjb2RlOwotIF9fc3VtMTYgY3N1bTsKKyAgX191OCB0eXBlOworICBfX3U4IGNvZGU7CisgIF9fc3VtMTYgY3N1bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGdyb3VwOworICBfX2JlMzIgZ3JvdXA7CiB9OwogI2RlZmluZSBJR01QVjNfTU9ERV9JU19JTkNMVURFIDEKICNkZWZpbmUgSUdNUFYzX01PREVfSVNfRVhDTFVERSAyCkBAIC0zNyw0NyArMzcsNDIgQEAKICNkZWZpbmUgSUdNUFYzX0JMT0NLX09MRF9TT1VSQ0VTIDYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWdtcHYzX2dyZWMgewotIF9fdTggZ3JlY190eXBlOwotIF9fdTggZ3JlY19hdXh3b3JkczsKLSBfX2JlMTYgZ3JlY19uc3JjczsKKyAgX191OCBncmVjX3R5cGU7CisgIF9fdTggZ3JlY19hdXh3b3JkczsKKyAgX19iZTE2IGdyZWNfbnNyY3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBncmVjX21jYTsKLSBfX2JlMzIgZ3JlY19zcmNbMF07CisgIF9fYmUzMiBncmVjX21jYTsKKyAgX19iZTMyIGdyZWNfc3JjWzBdOwogfTsKIHN0cnVjdCBpZ21wdjNfcmVwb3J0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0eXBlOwotIF9fdTggcmVzdjE7Ci0gX19iZTE2IGNzdW07Ci0gX19iZTE2IHJlc3YyOworICBfX3U4IHR5cGU7CisgIF9fdTggcmVzdjE7CisgIF9fYmUxNiBjc3VtOworICBfX2JlMTYgcmVzdjI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBuZ3JlYzsKLSBzdHJ1Y3QgaWdtcHYzX2dyZWMgZ3JlY1swXTsKKyAgX19iZTE2IG5ncmVjOworICBzdHJ1Y3QgaWdtcHYzX2dyZWMgZ3JlY1swXTsKIH07CiBzdHJ1Y3QgaWdtcHYzX3F1ZXJ5IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0eXBlOwotIF9fdTggY29kZTsKLSBfX2JlMTYgY3N1bTsKLSBfX2JlMzIgZ3JvdXA7CisgIF9fdTggdHlwZTsKKyAgX191OCBjb2RlOworICBfX2JlMTYgY3N1bTsKKyAgX19iZTMyIGdyb3VwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZmRlZiBfX0xJVFRMRV9FTkRJQU5fQklURklFTEQKLSBfX3U4IHFydjozLAotIHN1cHByZXNzOjEsCi0gcmVzdjo0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBxcnYgOiAzLCBzdXBwcmVzcyA6IDEsIHJlc3YgOiA0OwogI2VsaWYgZGVmaW5lZChfX0JJR19FTkRJQU5fQklURklFTEQpCi0gX191OCByZXN2OjQsCi0gc3VwcHJlc3M6MSwKLSBxcnY6MzsKKyAgX191OCByZXN2IDogNCwgc3VwcHJlc3MgOiAxLCBxcnYgOiAzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbHNlCiAjZXJyb3IgIlBsZWFzZSBmaXggPGFzbS9ieXRlb3JkZXIuaD4iCiAjZW5kaWYKLSBfX3U4IHFxaWM7CisgIF9fdTggcXFpYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IG5zcmNzOwotIF9fYmUzMiBzcmNzWzBdOworICBfX2JlMTYgbnNyY3M7CisgIF9fYmUzMiBzcmNzWzBdOwogfTsKICNkZWZpbmUgSUdNUF9IT1NUX01FTUJFUlNISVBfUVVFUlkgMHgxMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW4uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW4uaAppbmRleCBlOTAyMDliLi42YTZkMTZlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2luLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbi5oCkBAIC0yMiw3MSArMjIsNzEgQEAKICNpbmNsdWRlIDxsaW51eC9zb2NrZXQuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJUFBST1RPX0lQID0gMCwKKyAgSVBQUk9UT19JUCA9IDAsCiAjZGVmaW5lIElQUFJPVE9fSVAgSVBQUk9UT19JUAotIElQUFJPVE9fSUNNUCA9IDEsCisgIElQUFJPVE9fSUNNUCA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFBST1RPX0lDTVAgSVBQUk9UT19JQ01QCi0gSVBQUk9UT19JR01QID0gMiwKKyAgSVBQUk9UT19JR01QID0gMiwKICNkZWZpbmUgSVBQUk9UT19JR01QIElQUFJPVE9fSUdNUAotIElQUFJPVE9fSVBJUCA9IDQsCisgIElQUFJPVE9fSVBJUCA9IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFBST1RPX0lQSVAgSVBQUk9UT19JUElQCi0gSVBQUk9UT19UQ1AgPSA2LAorICBJUFBST1RPX1RDUCA9IDYsCiAjZGVmaW5lIElQUFJPVE9fVENQIElQUFJPVE9fVENQCi0gSVBQUk9UT19FR1AgPSA4LAorICBJUFBST1RPX0VHUCA9IDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFBST1RPX0VHUCBJUFBST1RPX0VHUAotIElQUFJPVE9fUFVQID0gMTIsCisgIElQUFJPVE9fUFVQID0gMTIsCiAjZGVmaW5lIElQUFJPVE9fUFVQIElQUFJPVE9fUFVQCi0gSVBQUk9UT19VRFAgPSAxNywKKyAgSVBQUk9UT19VRFAgPSAxNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQUFJPVE9fVURQIElQUFJPVE9fVURQCi0gSVBQUk9UT19JRFAgPSAyMiwKKyAgSVBQUk9UT19JRFAgPSAyMiwKICNkZWZpbmUgSVBQUk9UT19JRFAgSVBQUk9UT19JRFAKLSBJUFBST1RPX1RQID0gMjksCisgIElQUFJPVE9fVFAgPSAyOSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQUFJPVE9fVFAgSVBQUk9UT19UUAotIElQUFJPVE9fRENDUCA9IDMzLAorICBJUFBST1RPX0RDQ1AgPSAzMywKICNkZWZpbmUgSVBQUk9UT19EQ0NQIElQUFJPVE9fRENDUAotIElQUFJPVE9fSVBWNiA9IDQxLAorICBJUFBST1RPX0lQVjYgPSA0MSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQUFJPVE9fSVBWNiBJUFBST1RPX0lQVjYKLSBJUFBST1RPX1JTVlAgPSA0NiwKKyAgSVBQUk9UT19SU1ZQID0gNDYsCiAjZGVmaW5lIElQUFJPVE9fUlNWUCBJUFBST1RPX1JTVlAKLSBJUFBST1RPX0dSRSA9IDQ3LAorICBJUFBST1RPX0dSRSA9IDQ3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBQUk9UT19HUkUgSVBQUk9UT19HUkUKLSBJUFBST1RPX0VTUCA9IDUwLAorICBJUFBST1RPX0VTUCA9IDUwLAogI2RlZmluZSBJUFBST1RPX0VTUCBJUFBST1RPX0VTUAotIElQUFJPVE9fQUggPSA1MSwKKyAgSVBQUk9UT19BSCA9IDUxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBQUk9UT19BSCBJUFBST1RPX0FICi0gSVBQUk9UT19NVFAgPSA5MiwKKyAgSVBQUk9UT19NVFAgPSA5MiwKICNkZWZpbmUgSVBQUk9UT19NVFAgSVBQUk9UT19NVFAKLSBJUFBST1RPX0JFRVRQSCA9IDk0LAorICBJUFBST1RPX0JFRVRQSCA9IDk0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBQUk9UT19CRUVUUEggSVBQUk9UT19CRUVUUEgKLSBJUFBST1RPX0VOQ0FQID0gOTgsCisgIElQUFJPVE9fRU5DQVAgPSA5OCwKICNkZWZpbmUgSVBQUk9UT19FTkNBUCBJUFBST1RPX0VOQ0FQCi0gSVBQUk9UT19QSU0gPSAxMDMsCisgIElQUFJPVE9fUElNID0gMTAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBQUk9UT19QSU0gSVBQUk9UT19QSU0KLSBJUFBST1RPX0NPTVAgPSAxMDgsCisgIElQUFJPVE9fQ09NUCA9IDEwOCwKICNkZWZpbmUgSVBQUk9UT19DT01QIElQUFJPVE9fQ09NUAotIElQUFJPVE9fU0NUUCA9IDEzMiwKKyAgSVBQUk9UT19TQ1RQID0gMTMyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBQUk9UT19TQ1RQIElQUFJPVE9fU0NUUAotIElQUFJPVE9fVURQTElURSA9IDEzNiwKKyAgSVBQUk9UT19VRFBMSVRFID0gMTM2LAogI2RlZmluZSBJUFBST1RPX1VEUExJVEUgSVBQUk9UT19VRFBMSVRFCi0gSVBQUk9UT19SQVcgPSAyNTUsCisgIElQUFJPVE9fUkFXID0gMjU1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBQUk9UT19SQVcgSVBQUk9UT19SQVcKLSBJUFBST1RPX01BWAorICBJUFBST1RPX01BWAogfTsKIHN0cnVjdCBpbl9hZGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHNfYWRkcjsKKyAgX19iZTMyIHNfYWRkcjsKIH07CiAjZGVmaW5lIElQX1RPUyAxCiAjZGVmaW5lIElQX1RUTCAyCkBAIC0xMjQsOTkgKzEyNCw5OSBAQAogI2RlZmluZSBJUF9QTVRVRElTQ19ETyAyCiAjZGVmaW5lIElQX1BNVFVESVNDX1BST0JFIDMKICNkZWZpbmUgSVBfUE1UVURJU0NfSU5URVJGQUNFIDQKLSNkZWZpbmUgSVBfTVVMVElDQVNUX0lGIDMyCisjZGVmaW5lIElQX1BNVFVESVNDX09NSVQgNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSVBfTVVMVElDQVNUX0lGIDMyCiAjZGVmaW5lIElQX01VTFRJQ0FTVF9UVEwgMzMKICNkZWZpbmUgSVBfTVVMVElDQVNUX0xPT1AgMzQKICNkZWZpbmUgSVBfQUREX01FTUJFUlNISVAgMzUKLSNkZWZpbmUgSVBfRFJPUF9NRU1CRVJTSElQIDM2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJUF9EUk9QX01FTUJFUlNISVAgMzYKICNkZWZpbmUgSVBfVU5CTE9DS19TT1VSQ0UgMzcKICNkZWZpbmUgSVBfQkxPQ0tfU09VUkNFIDM4CiAjZGVmaW5lIElQX0FERF9TT1VSQ0VfTUVNQkVSU0hJUCAzOQotI2RlZmluZSBJUF9EUk9QX1NPVVJDRV9NRU1CRVJTSElQIDQwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJUF9EUk9QX1NPVVJDRV9NRU1CRVJTSElQIDQwCiAjZGVmaW5lIElQX01TRklMVEVSIDQxCiAjZGVmaW5lIE1DQVNUX0pPSU5fR1JPVVAgNDIKICNkZWZpbmUgTUNBU1RfQkxPQ0tfU09VUkNFIDQzCi0jZGVmaW5lIE1DQVNUX1VOQkxPQ0tfU09VUkNFIDQ0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNQ0FTVF9VTkJMT0NLX1NPVVJDRSA0NAogI2RlZmluZSBNQ0FTVF9MRUFWRV9HUk9VUCA0NQogI2RlZmluZSBNQ0FTVF9KT0lOX1NPVVJDRV9HUk9VUCA0NgogI2RlZmluZSBNQ0FTVF9MRUFWRV9TT1VSQ0VfR1JPVVAgNDcKLSNkZWZpbmUgTUNBU1RfTVNGSUxURVIgNDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1DQVNUX01TRklMVEVSIDQ4CiAjZGVmaW5lIElQX01VTFRJQ0FTVF9BTEwgNDkKICNkZWZpbmUgSVBfVU5JQ0FTVF9JRiA1MAogI2RlZmluZSBNQ0FTVF9FWENMVURFIDAKLSNkZWZpbmUgTUNBU1RfSU5DTFVERSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNQ0FTVF9JTkNMVURFIDEKICNkZWZpbmUgSVBfREVGQVVMVF9NVUxUSUNBU1RfVFRMIDEKICNkZWZpbmUgSVBfREVGQVVMVF9NVUxUSUNBU1RfTE9PUCAxCiBzdHJ1Y3QgaXBfbXJlcSB7Ci0gc3RydWN0IGluX2FkZHIgaW1yX211bHRpYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluX2FkZHIgaW1yX2ludGVyZmFjZTsKKyAgc3RydWN0IGluX2FkZHIgaW1yX211bHRpYWRkcjsKKyAgc3RydWN0IGluX2FkZHIgaW1yX2ludGVyZmFjZTsKIH07CiBzdHJ1Y3QgaXBfbXJlcW4gewotIHN0cnVjdCBpbl9hZGRyIGltcl9tdWx0aWFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpbl9hZGRyIGltcl9hZGRyZXNzOwotIGludCBpbXJfaWZpbmRleDsKKyAgc3RydWN0IGluX2FkZHIgaW1yX211bHRpYWRkcjsKKyAgc3RydWN0IGluX2FkZHIgaW1yX2FkZHJlc3M7CisgIGludCBpbXJfaWZpbmRleDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwX21yZXFfc291cmNlIHsKKyAgX19iZTMyIGltcl9tdWx0aWFkZHI7CisgIF9fYmUzMiBpbXJfaW50ZXJmYWNlOworICBfX2JlMzIgaW1yX3NvdXJjZWFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBpbXJfbXVsdGlhZGRyOwotIF9fYmUzMiBpbXJfaW50ZXJmYWNlOwotIF9fYmUzMiBpbXJfc291cmNlYWRkcjsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwX21zZmlsdGVyIHsKLSBfX2JlMzIgaW1zZl9tdWx0aWFkZHI7Ci0gX19iZTMyIGltc2ZfaW50ZXJmYWNlOwotIF9fdTMyIGltc2ZfZm1vZGU7CisgIF9fYmUzMiBpbXNmX211bHRpYWRkcjsKKyAgX19iZTMyIGltc2ZfaW50ZXJmYWNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbXNmX251bXNyYzsKLSBfX2JlMzIgaW1zZl9zbGlzdFsxXTsKKyAgX191MzIgaW1zZl9mbW9kZTsKKyAgX191MzIgaW1zZl9udW1zcmM7CisgIF9fYmUzMiBpbXNmX3NsaXN0WzFdOwogfTsKLSNkZWZpbmUgSVBfTVNGSUxURVJfU0laRShudW1zcmMpICAgKHNpemVvZihzdHJ1Y3QgaXBfbXNmaWx0ZXIpIC0gc2l6ZW9mKF9fdTMyKSAgICsgKG51bXNyYykgKiBzaXplb2YoX191MzIpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSVBfTVNGSUxURVJfU0laRShudW1zcmMpIChzaXplb2Yoc3RydWN0IGlwX21zZmlsdGVyKSAtIHNpemVvZihfX3UzMikgKyAobnVtc3JjKSAqIHNpemVvZihfX3UzMikpCiBzdHJ1Y3QgZ3JvdXBfcmVxIHsKLSBfX3UzMiBncl9pbnRlcmZhY2U7Ci0gc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UgZ3JfZ3JvdXA7CisgIF9fdTMyIGdyX2ludGVyZmFjZTsKKyAgc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UgZ3JfZ3JvdXA7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZ3JvdXBfc291cmNlX3JlcSB7Ci0gX191MzIgZ3NyX2ludGVyZmFjZTsKLSBzdHJ1Y3QgX19rZXJuZWxfc29ja2FkZHJfc3RvcmFnZSBnc3JfZ3JvdXA7Ci0gc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UgZ3NyX3NvdXJjZTsKKyAgX191MzIgZ3NyX2ludGVyZmFjZTsKKyAgc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UgZ3NyX2dyb3VwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UgZ3NyX3NvdXJjZTsKIH07CiBzdHJ1Y3QgZ3JvdXBfZmlsdGVyIHsKLSBfX3UzMiBnZl9pbnRlcmZhY2U7Ci0gc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UgZ2ZfZ3JvdXA7CisgIF9fdTMyIGdmX2ludGVyZmFjZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZ2ZfZm1vZGU7Ci0gX191MzIgZ2ZfbnVtc3JjOwotIHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlIGdmX3NsaXN0WzFdOworICBzdHJ1Y3QgX19rZXJuZWxfc29ja2FkZHJfc3RvcmFnZSBnZl9ncm91cDsKKyAgX191MzIgZ2ZfZm1vZGU7CisgIF9fdTMyIGdmX251bXNyYzsKKyAgc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UgZ2Zfc2xpc3RbMV07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEdST1VQX0ZJTFRFUl9TSVpFKG51bXNyYykgICAoc2l6ZW9mKHN0cnVjdCBncm91cF9maWx0ZXIpIC0gc2l6ZW9mKHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlKSAgICsgKG51bXNyYykgKiBzaXplb2Yoc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UpKQorI2RlZmluZSBHUk9VUF9GSUxURVJfU0laRShudW1zcmMpIChzaXplb2Yoc3RydWN0IGdyb3VwX2ZpbHRlcikgLSBzaXplb2Yoc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UpICsgKG51bXNyYykgKiBzaXplb2Yoc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UpKQogc3RydWN0IGluX3BrdGluZm8gewotIGludCBpcGlfaWZpbmRleDsKLSBzdHJ1Y3QgaW5fYWRkciBpcGlfc3BlY19kc3Q7CisgIGludCBpcGlfaWZpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluX2FkZHIgaXBpX2FkZHI7CisgIHN0cnVjdCBpbl9hZGRyIGlwaV9zcGVjX2RzdDsKKyAgc3RydWN0IGluX2FkZHIgaXBpX2FkZHI7CiB9OwogI2RlZmluZSBfX1NPQ0tfU0laRV9fIDE2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNvY2thZGRyX2luIHsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2luX2ZhbWlseTsKKyAgX19iZTE2IHNpbl9wb3J0OworICBzdHJ1Y3QgaW5fYWRkciBzaW5fYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2luX2ZhbWlseTsKLSBfX2JlMTYgc2luX3BvcnQ7Ci0gc3RydWN0IGluX2FkZHIgc2luX2FkZHI7Ci0gdW5zaWduZWQgY2hhciBfX3BhZFtfX1NPQ0tfU0laRV9fIC0gc2l6ZW9mKHNob3J0IGludCkgLQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaXplb2YodW5zaWduZWQgc2hvcnQgaW50KSAtIHNpemVvZihzdHJ1Y3QgaW5fYWRkcildOworICB1bnNpZ25lZCBjaGFyIF9fcGFkW19fU09DS19TSVpFX18gLSBzaXplb2Yoc2hvcnQgaW50KSAtIHNpemVvZih1bnNpZ25lZCBzaG9ydCBpbnQpIC0gc2l6ZW9mKHN0cnVjdCBpbl9hZGRyKV07CiB9OwogI2RlZmluZSBzaW5femVybyBfX3BhZAogI2RlZmluZSBJTl9DTEFTU0EoYSkgKCgoKGxvbmcgaW50KSAoYSkpICYgMHg4MDAwMDAwMCkgPT0gMCkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW42LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2luNi5oCmluZGV4IDY0MWE2OWIuLmU1NGJjMzMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW42LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbjYuaApAQCAtMjMsMTUgKzIzLDE1IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmIF9fVUFQSV9ERUZfSU42X0FERFIKIHN0cnVjdCBpbjZfYWRkciB7Ci0gdW5pb24gewotIF9fdTggdTZfYWRkcjhbMTZdOworICB1bmlvbiB7CisgICAgX191OCB1Nl9hZGRyOFsxNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmIF9fVUFQSV9ERUZfSU42X0FERFJfQUxUCi0gX19iZTE2IHU2X2FkZHIxNls4XTsKLSBfX2JlMzIgdTZfYWRkcjMyWzRdOworICAgIF9fYmUxNiB1Nl9hZGRyMTZbOF07CisgICAgX19iZTMyIHU2X2FkZHIzMls0XTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGluNl91OworICB9IGluNl91OwogI2RlZmluZSBzNl9hZGRyIGluNl91LnU2X2FkZHI4CiAjaWYgX19VQVBJX0RFRl9JTjZfQUREUl9BTFQKICNkZWZpbmUgczZfYWRkcjE2IGluNl91LnU2X2FkZHIxNgpAQCAtNDMsMzUgKzQzLDM1IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmIF9fVUFQSV9ERUZfU09DS0FERFJfSU42CiBzdHJ1Y3Qgc29ja2FkZHJfaW42IHsKLSB1bnNpZ25lZCBzaG9ydCBpbnQgc2luNl9mYW1pbHk7Ci0gX19iZTE2IHNpbjZfcG9ydDsKKyAgdW5zaWduZWQgc2hvcnQgaW50IHNpbjZfZmFtaWx5OworICBfX2JlMTYgc2luNl9wb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgc2luNl9mbG93aW5mbzsKLSBzdHJ1Y3QgaW42X2FkZHIgc2luNl9hZGRyOwotIF9fdTMyIHNpbjZfc2NvcGVfaWQ7CisgIF9fYmUzMiBzaW42X2Zsb3dpbmZvOworICBzdHJ1Y3QgaW42X2FkZHIgc2luNl9hZGRyOworICBfX3UzMiBzaW42X3Njb3BlX2lkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKICNpZiBfX1VBUElfREVGX0lQVjZfTVJFUQogc3RydWN0IGlwdjZfbXJlcSB7Ci0gc3RydWN0IGluNl9hZGRyIGlwdjZtcl9tdWx0aWFkZHI7CisgIHN0cnVjdCBpbjZfYWRkciBpcHY2bXJfbXVsdGlhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgaXB2Nm1yX2lmaW5kZXg7CisgIGludCBpcHY2bXJfaWZpbmRleDsKIH07CiAjZW5kaWYKICNkZWZpbmUgaXB2Nm1yX2FjYWRkciBpcHY2bXJfbXVsdGlhZGRyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGluNl9mbG93bGFiZWxfcmVxIHsKLSBzdHJ1Y3QgaW42X2FkZHIgZmxyX2RzdDsKLSBfX2JlMzIgZmxyX2xhYmVsOwotIF9fdTggZmxyX2FjdGlvbjsKKyAgc3RydWN0IGluNl9hZGRyIGZscl9kc3Q7CisgIF9fYmUzMiBmbHJfbGFiZWw7CisgIF9fdTggZmxyX2FjdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmbHJfc2hhcmU7Ci0gX191MTYgZmxyX2ZsYWdzOwotIF9fdTE2IGZscl9leHBpcmVzOwotIF9fdTE2IGZscl9saW5nZXI7CisgIF9fdTggZmxyX3NoYXJlOworICBfX3UxNiBmbHJfZmxhZ3M7CisgIF9fdTE2IGZscl9leHBpcmVzOworICBfX3UxNiBmbHJfbGluZ2VyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBfX2Zscl9wYWQ7CisgIF9fdTMyIF9fZmxyX3BhZDsKIH07CiAjZGVmaW5lIElQVjZfRkxfQV9HRVQgMAogI2RlZmluZSBJUFY2X0ZMX0FfUFVUIDEKQEAgLTEyOCw2NyArMTI4LDcyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFY2X1RMVl9KVU1CTyAxOTQKICNkZWZpbmUgSVBWNl9UTFZfSEFPIDIwMQorI2lmIF9fVUFQSV9ERUZfSVBWNl9PUFRJT05TCiAjZGVmaW5lIElQVjZfQUREUkZPUk0gMQotI2RlZmluZSBJUFY2XzIyOTJQS1RJTkZPIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElQVjZfMjI5MlBLVElORk8gMgogI2RlZmluZSBJUFY2XzIyOTJIT1BPUFRTIDMKICNkZWZpbmUgSVBWNl8yMjkyRFNUT1BUUyA0CiAjZGVmaW5lIElQVjZfMjI5MlJUSERSIDUKLSNkZWZpbmUgSVBWNl8yMjkyUEtUT1BUSU9OUyA2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJUFY2XzIyOTJQS1RPUFRJT05TIDYKICNkZWZpbmUgSVBWNl9DSEVDS1NVTSA3CiAjZGVmaW5lIElQVjZfMjI5MkhPUExJTUlUIDgKICNkZWZpbmUgSVBWNl9ORVhUSE9QIDkKLSNkZWZpbmUgSVBWNl9BVVRISERSIDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJUFY2X0FVVEhIRFIgMTAKICNkZWZpbmUgSVBWNl9GTE9XSU5GTyAxMQogI2RlZmluZSBJUFY2X1VOSUNBU1RfSE9QUyAxNgogI2RlZmluZSBJUFY2X01VTFRJQ0FTVF9JRiAxNwotI2RlZmluZSBJUFY2X01VTFRJQ0FTVF9IT1BTIDE4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJUFY2X01VTFRJQ0FTVF9IT1BTIDE4CiAjZGVmaW5lIElQVjZfTVVMVElDQVNUX0xPT1AgMTkKICNkZWZpbmUgSVBWNl9BRERfTUVNQkVSU0hJUCAyMAogI2RlZmluZSBJUFY2X0RST1BfTUVNQkVSU0hJUCAyMQotI2RlZmluZSBJUFY2X1JPVVRFUl9BTEVSVCAyMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSVBWNl9ST1VURVJfQUxFUlQgMjIKICNkZWZpbmUgSVBWNl9NVFVfRElTQ09WRVIgMjMKICNkZWZpbmUgSVBWNl9NVFUgMjQKICNkZWZpbmUgSVBWNl9SRUNWRVJSIDI1Ci0jZGVmaW5lIElQVjZfVjZPTkxZIDI2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJUFY2X1Y2T05MWSAyNgogI2RlZmluZSBJUFY2X0pPSU5fQU5ZQ0FTVCAyNwogI2RlZmluZSBJUFY2X0xFQVZFX0FOWUNBU1QgMjgKICNkZWZpbmUgSVBWNl9QTVRVRElTQ19ET05UIDAKLSNkZWZpbmUgSVBWNl9QTVRVRElTQ19XQU5UIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElQVjZfUE1UVURJU0NfV0FOVCAxCiAjZGVmaW5lIElQVjZfUE1UVURJU0NfRE8gMgogI2RlZmluZSBJUFY2X1BNVFVESVNDX1BST0JFIDMKICNkZWZpbmUgSVBWNl9QTVRVRElTQ19JTlRFUkZBQ0UgNAotI2RlZmluZSBJUFY2X0ZMT1dMQUJFTF9NR1IgMzIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElQVjZfUE1UVURJU0NfT01JVCA1CisjZGVmaW5lIElQVjZfRkxPV0xBQkVMX01HUiAzMgogI2RlZmluZSBJUFY2X0ZMT1dJTkZPX1NFTkQgMzMKICNkZWZpbmUgSVBWNl9JUFNFQ19QT0xJQ1kgMzQKLSNkZWZpbmUgSVBWNl9YRlJNX1BPTElDWSAzNQotI2RlZmluZSBJUFY2X1JFQ1ZQS1RJTkZPIDQ5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJUFY2X1hGUk1fUE9MSUNZIDM1CisjZW5kaWYKKyNkZWZpbmUgSVBWNl9SRUNWUEtUSU5GTyA0OQogI2RlZmluZSBJUFY2X1BLVElORk8gNTAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVjZfUkVDVkhPUExJTUlUIDUxCiAjZGVmaW5lIElQVjZfSE9QTElNSVQgNTIKICNkZWZpbmUgSVBWNl9SRUNWSE9QT1BUUyA1MwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBWNl9IT1BPUFRTIDU0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFY2X1JUSERSRFNUT1BUUyA1NQogI2RlZmluZSBJUFY2X1JFQ1ZSVEhEUiA1NgogI2RlZmluZSBJUFY2X1JUSERSIDU3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFY2X1JFQ1ZEU1RPUFRTIDU4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFY2X0RTVE9QVFMgNTkKICNkZWZpbmUgSVBWNl9SRUNWUEFUSE1UVSA2MAogI2RlZmluZSBJUFY2X1BBVEhNVFUgNjEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVjZfRE9OVEZSQUcgNjIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVjZfUkVDVlRDTEFTUyA2NgogI2RlZmluZSBJUFY2X1RDTEFTUyA2NworI2RlZmluZSBJUFY2X0FVVE9GTE9XTEFCRUwgNzAKICNkZWZpbmUgSVBWNl9BRERSX1BSRUZFUkVOQ0VTIDcyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFY2X1BSRUZFUl9TUkNfVE1QIDB4MDAwMQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbl9yb3V0ZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbl9yb3V0ZS5oCmluZGV4IDUwOTEzYTkuLjkzODk2NDggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW5fcm91dGUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2luX3JvdXRlLmgKQEAgLTM5LDcgKzM5LDcgQEAKICNkZWZpbmUgUlRDRl9NVUxUSUNBU1QgMHgyMDAwMDAwMAogI2RlZmluZSBSVENGX1JFSkVDVCAweDQwMDAwMDAwCiAjZGVmaW5lIFJUQ0ZfTE9DQUwgMHg4MDAwMDAwMAotI2RlZmluZSBSVENGX05BVCAoUlRDRl9ETkFUfFJUQ0ZfU05BVCkKKyNkZWZpbmUgUlRDRl9OQVQgKFJUQ0ZfRE5BVCB8IFJUQ0ZfU05BVCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFJUX1RPUyh0b3MpICgodG9zKSZJUFRPU19UT1NfTUFTSykKKyNkZWZpbmUgUlRfVE9TKHRvcykgKCh0b3MpICYgSVBUT1NfVE9TX01BU0spCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW5ldF9kaWFnLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2luZXRfZGlhZy5oCmluZGV4IGI1NTA0YTkuLjQ0N2Q5MjggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW5ldF9kaWFnLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbmV0X2RpYWcuaApAQCAtMjQsMTE1ICsyNCwxMjUgQEAKICNkZWZpbmUgRENDUERJQUdfR0VUU09DSyAxOQogI2RlZmluZSBJTkVUX0RJQUdfR0VUU09DS19NQVggMjQKIHN0cnVjdCBpbmV0X2RpYWdfc29ja2lkIHsKLSBfX2JlMTYgaWRpYWdfc3BvcnQ7CisgIF9fYmUxNiBpZGlhZ19zcG9ydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGlkaWFnX2Rwb3J0OwotIF9fYmUzMiBpZGlhZ19zcmNbNF07Ci0gX19iZTMyIGlkaWFnX2RzdFs0XTsKLSBfX3UzMiBpZGlhZ19pZjsKKyAgX19iZTE2IGlkaWFnX2Rwb3J0OworICBfX2JlMzIgaWRpYWdfc3JjWzRdOworICBfX2JlMzIgaWRpYWdfZHN0WzRdOworICBfX3UzMiBpZGlhZ19pZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWRpYWdfY29va2llWzJdOworICBfX3UzMiBpZGlhZ19jb29raWVbMl07CiAjZGVmaW5lIElORVRfRElBR19OT0NPT0tJRSAofjBVKQogfTsKIHN0cnVjdCBpbmV0X2RpYWdfcmVxIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpZGlhZ19mYW1pbHk7Ci0gX191OCBpZGlhZ19zcmNfbGVuOwotIF9fdTggaWRpYWdfZHN0X2xlbjsKLSBfX3U4IGlkaWFnX2V4dDsKKyAgX191OCBpZGlhZ19mYW1pbHk7CisgIF9fdTggaWRpYWdfc3JjX2xlbjsKKyAgX191OCBpZGlhZ19kc3RfbGVuOworICBfX3U4IGlkaWFnX2V4dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluZXRfZGlhZ19zb2NraWQgaWQ7Ci0gX191MzIgaWRpYWdfc3RhdGVzOwotIF9fdTMyIGlkaWFnX2RiczsKKyAgc3RydWN0IGluZXRfZGlhZ19zb2NraWQgaWQ7CisgIF9fdTMyIGlkaWFnX3N0YXRlczsKKyAgX191MzIgaWRpYWdfZGJzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaW5ldF9kaWFnX3JlcV92MiB7Ci0gX191OCBzZGlhZ19mYW1pbHk7Ci0gX191OCBzZGlhZ19wcm90b2NvbDsKLSBfX3U4IGlkaWFnX2V4dDsKKyAgX191OCBzZGlhZ19mYW1pbHk7CisgIF9fdTggc2RpYWdfcHJvdG9jb2w7CisgIF9fdTggaWRpYWdfZXh0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBhZDsKLSBfX3UzMiBpZGlhZ19zdGF0ZXM7Ci0gc3RydWN0IGluZXRfZGlhZ19zb2NraWQgaWQ7CisgIF9fdTggcGFkOworICBfX3UzMiBpZGlhZ19zdGF0ZXM7CisgIHN0cnVjdCBpbmV0X2RpYWdfc29ja2lkIGlkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJTkVUX0RJQUdfUkVRX05PTkUsCi0gSU5FVF9ESUFHX1JFUV9CWVRFQ09ERSwKKyAgSU5FVF9ESUFHX1JFUV9OT05FLAorICBJTkVUX0RJQUdfUkVRX0JZVEVDT0RFLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElORVRfRElBR19SRVFfTUFYIElORVRfRElBR19SRVFfQllURUNPREUKIHN0cnVjdCBpbmV0X2RpYWdfYmNfb3AgewotIHVuc2lnbmVkIGNoYXIgY29kZTsKLSB1bnNpZ25lZCBjaGFyIHllczsKKyAgdW5zaWduZWQgY2hhciBjb2RlOworICB1bnNpZ25lZCBjaGFyIHllczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgbm87CisgIHVuc2lnbmVkIHNob3J0IG5vOwogfTsKIGVudW0gewotIElORVRfRElBR19CQ19OT1AsCisgIElORVRfRElBR19CQ19OT1AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElORVRfRElBR19CQ19KTVAsCi0gSU5FVF9ESUFHX0JDX1NfR0UsCi0gSU5FVF9ESUFHX0JDX1NfTEUsCi0gSU5FVF9ESUFHX0JDX0RfR0UsCisgIElORVRfRElBR19CQ19KTVAsCisgIElORVRfRElBR19CQ19TX0dFLAorICBJTkVUX0RJQUdfQkNfU19MRSwKKyAgSU5FVF9ESUFHX0JDX0RfR0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElORVRfRElBR19CQ19EX0xFLAotIElORVRfRElBR19CQ19BVVRPLAotIElORVRfRElBR19CQ19TX0NPTkQsCi0gSU5FVF9ESUFHX0JDX0RfQ09ORCwKKyAgSU5FVF9ESUFHX0JDX0RfTEUsCisgIElORVRfRElBR19CQ19BVVRPLAorICBJTkVUX0RJQUdfQkNfU19DT05ELAorICBJTkVUX0RJQUdfQkNfRF9DT05ELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaW5ldF9kaWFnX2hvc3Rjb25kIHsKLSBfX3U4IGZhbWlseTsKLSBfX3U4IHByZWZpeF9sZW47CisgIF9fdTggZmFtaWx5OworICBfX3U4IHByZWZpeF9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwb3J0OwotIF9fYmUzMiBhZGRyWzBdOworICBpbnQgcG9ydDsKKyAgX19iZTMyIGFkZHJbMF07CiB9Owogc3RydWN0IGluZXRfZGlhZ19tc2cgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGlkaWFnX2ZhbWlseTsKLSBfX3U4IGlkaWFnX3N0YXRlOwotIF9fdTggaWRpYWdfdGltZXI7Ci0gX191OCBpZGlhZ19yZXRyYW5zOworICBfX3U4IGlkaWFnX2ZhbWlseTsKKyAgX191OCBpZGlhZ19zdGF0ZTsKKyAgX191OCBpZGlhZ190aW1lcjsKKyAgX191OCBpZGlhZ19yZXRyYW5zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaW5ldF9kaWFnX3NvY2tpZCBpZDsKLSBfX3UzMiBpZGlhZ19leHBpcmVzOwotIF9fdTMyIGlkaWFnX3JxdWV1ZTsKLSBfX3UzMiBpZGlhZ193cXVldWU7CisgIHN0cnVjdCBpbmV0X2RpYWdfc29ja2lkIGlkOworICBfX3UzMiBpZGlhZ19leHBpcmVzOworICBfX3UzMiBpZGlhZ19ycXVldWU7CisgIF9fdTMyIGlkaWFnX3dxdWV1ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWRpYWdfdWlkOwotIF9fdTMyIGlkaWFnX2lub2RlOworICBfX3UzMiBpZGlhZ191aWQ7CisgIF9fdTMyIGlkaWFnX2lub2RlOwogfTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJTkVUX0RJQUdfTk9ORSwKLSBJTkVUX0RJQUdfTUVNSU5GTywKLSBJTkVUX0RJQUdfSU5GTywKLSBJTkVUX0RJQUdfVkVHQVNJTkZPLAorICBJTkVUX0RJQUdfTk9ORSwKKyAgSU5FVF9ESUFHX01FTUlORk8sCisgIElORVRfRElBR19JTkZPLAorICBJTkVUX0RJQUdfVkVHQVNJTkZPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJTkVUX0RJQUdfQ09ORywKLSBJTkVUX0RJQUdfVE9TLAotIElORVRfRElBR19UQ0xBU1MsCi0gSU5FVF9ESUFHX1NLTUVNSU5GTywKKyAgSU5FVF9ESUFHX0NPTkcsCisgIElORVRfRElBR19UT1MsCisgIElORVRfRElBR19UQ0xBU1MsCisgIElORVRfRElBR19TS01FTUlORk8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElORVRfRElBR19TSFVURE9XTiwKKyAgSU5FVF9ESUFHX1NIVVRET1dOLAorICBJTkVUX0RJQUdfRENUQ1BJTkZPLAogfTsKLSNkZWZpbmUgSU5FVF9ESUFHX01BWCBJTkVUX0RJQUdfU0hVVERPV04KKyNkZWZpbmUgSU5FVF9ESUFHX01BWCBJTkVUX0RJQUdfRENUQ1BJTkZPCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGluZXRfZGlhZ19tZW1pbmZvIHsKKyAgX191MzIgaWRpYWdfcm1lbTsKKyAgX191MzIgaWRpYWdfd21lbTsKKyAgX191MzIgaWRpYWdfZm1lbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWRpYWdfcm1lbTsKLSBfX3UzMiBpZGlhZ193bWVtOwotIF9fdTMyIGlkaWFnX2ZtZW07Ci0gX191MzIgaWRpYWdfdG1lbTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGlkaWFnX3RtZW07CiB9Owogc3RydWN0IHRjcHZlZ2FzX2luZm8gewotIF9fdTMyIHRjcHZfZW5hYmxlZDsKLSBfX3UzMiB0Y3B2X3J0dGNudDsKKyAgX191MzIgdGNwdl9lbmFibGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0Y3B2X3J0dDsKLSBfX3UzMiB0Y3B2X21pbnJ0dDsKKyAgX191MzIgdGNwdl9ydHRjbnQ7CisgIF9fdTMyIHRjcHZfcnR0OworICBfX3UzMiB0Y3B2X21pbnJ0dDsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IHRjcF9kY3RjcF9pbmZvIHsKKyAgX191MTYgZGN0Y3BfZW5hYmxlZDsKKyAgX191MTYgZGN0Y3BfY2Vfc3RhdGU7CisgIF9fdTMyIGRjdGNwX2FscGhhOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZGN0Y3BfYWJfZWNuOworICBfX3UzMiBkY3RjcF9hYl90b3Q7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbm90aWZ5LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lub3RpZnkuaAppbmRleCBmOWIwMjBhLi44OTMwYmUzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lub3RpZnkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lub3RpZnkuaApAQCAtMjIsMTIgKzIyLDEyIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaW5vdGlmeV9ldmVudCB7Ci0gX19zMzIgd2Q7Ci0gX191MzIgbWFzazsKLSBfX3UzMiBjb29raWU7CisgIF9fczMyIHdkOworICBfX3UzMiBtYXNrOworICBfX3UzMiBjb29raWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxlbjsKLSBjaGFyIG5hbWVbMF07CisgIF9fdTMyIGxlbjsKKyAgY2hhciBuYW1lWzBdOwogfTsKICNkZWZpbmUgSU5fQUNDRVNTIDB4MDAwMDAwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC01OCw3ICs1OCw3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJTl9JU0RJUiAweDQwMDAwMDAwCiAjZGVmaW5lIElOX09ORVNIT1QgMHg4MDAwMDAwMAotI2RlZmluZSBJTl9BTExfRVZFTlRTIChJTl9BQ0NFU1MgfCBJTl9NT0RJRlkgfCBJTl9BVFRSSUIgfCBJTl9DTE9TRV9XUklURSB8ICAgSU5fQ0xPU0VfTk9XUklURSB8IElOX09QRU4gfCBJTl9NT1ZFRF9GUk9NIHwgICBJTl9NT1ZFRF9UTyB8IElOX0RFTEVURSB8IElOX0NSRUFURSB8IElOX0RFTEVURV9TRUxGIHwgICBJTl9NT1ZFX1NFTEYpCisjZGVmaW5lIElOX0FMTF9FVkVOVFMgKElOX0FDQ0VTUyB8IElOX01PRElGWSB8IElOX0FUVFJJQiB8IElOX0NMT1NFX1dSSVRFIHwgSU5fQ0xPU0VfTk9XUklURSB8IElOX09QRU4gfCBJTl9NT1ZFRF9GUk9NIHwgSU5fTU9WRURfVE8gfCBJTl9ERUxFVEUgfCBJTl9DUkVBVEUgfCBJTl9ERUxFVEVfU0VMRiB8IElOX01PVkVfU0VMRikKICNkZWZpbmUgSU5fQ0xPRVhFQyBPX0NMT0VYRUMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElOX05PTkJMT0NLIE9fTk9OQkxPQ0sKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW5wdXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW5wdXQuaAppbmRleCBiOWQ1YjJhLi44OGExZjBlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lucHV0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pbnB1dC5oCkBAIC0yNCw0MCArMjQsNDAgQEAKICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGlucHV0X2V2ZW50IHsKLSBzdHJ1Y3QgdGltZXZhbCB0aW1lOworICBzdHJ1Y3QgdGltZXZhbCB0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB0eXBlOwotIF9fdTE2IGNvZGU7Ci0gX19zMzIgdmFsdWU7CisgIF9fdTE2IHR5cGU7CisgIF9fdTE2IGNvZGU7CisgIF9fczMyIHZhbHVlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVWX1ZFUlNJT04gMHgwMTAwMDEKIHN0cnVjdCBpbnB1dF9pZCB7Ci0gX191MTYgYnVzdHlwZTsKLSBfX3UxNiB2ZW5kb3I7CisgIF9fdTE2IGJ1c3R5cGU7CisgIF9fdTE2IHZlbmRvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcHJvZHVjdDsKLSBfX3UxNiB2ZXJzaW9uOworICBfX3UxNiBwcm9kdWN0OworICBfX3UxNiB2ZXJzaW9uOwogfTsKIHN0cnVjdCBpbnB1dF9hYnNpbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgdmFsdWU7Ci0gX19zMzIgbWluaW11bTsKLSBfX3MzMiBtYXhpbXVtOwotIF9fczMyIGZ1eno7CisgIF9fczMyIHZhbHVlOworICBfX3MzMiBtaW5pbXVtOworICBfX3MzMiBtYXhpbXVtOworICBfX3MzMiBmdXp6OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBmbGF0OwotIF9fczMyIHJlc29sdXRpb247CisgIF9fczMyIGZsYXQ7CisgIF9fczMyIHJlc29sdXRpb247CiB9Owogc3RydWN0IGlucHV0X2tleW1hcF9lbnRyeSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJTlBVVF9LRVlNQVBfQllfSU5ERVggKDEgPDwgMCkKLSBfX3U4IGZsYWdzOwotIF9fdTggbGVuOwotIF9fdTE2IGluZGV4OworICBfX3U4IGZsYWdzOworICBfX3U4IGxlbjsKKyAgX191MTYgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGtleWNvZGU7Ci0gX191OCBzY2FuY29kZVszMl07CisgIF9fdTMyIGtleWNvZGU7CisgIF9fdTggc2NhbmNvZGVbMzJdOwogfTsKICNkZWZpbmUgRVZJT0NHVkVSU0lPTiBfSU9SKCdFJywgMHgwMSwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTk4LDk2MyArOTgsOTcyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJTlBVVF9QUk9QX1NFTUlfTVQgMHgwMwogI2RlZmluZSBJTlBVVF9QUk9QX1RPUEJVVFRPTlBBRCAweDA0CisjZGVmaW5lIElOUFVUX1BST1BfUE9JTlRJTkdfU1RJQ0sgMHgwNQogI2RlZmluZSBJTlBVVF9QUk9QX01BWCAweDFmCi0jZGVmaW5lIElOUFVUX1BST1BfQ05UIChJTlBVVF9QUk9QX01BWCArIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJTlBVVF9QUk9QX0NOVCAoSU5QVVRfUFJPUF9NQVggKyAxKQogI2RlZmluZSBFVl9TWU4gMHgwMAogI2RlZmluZSBFVl9LRVkgMHgwMQogI2RlZmluZSBFVl9SRUwgMHgwMgotI2RlZmluZSBFVl9BQlMgMHgwMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVZfQUJTIDB4MDMKICNkZWZpbmUgRVZfTVNDIDB4MDQKICNkZWZpbmUgRVZfU1cgMHgwNQogI2RlZmluZSBFVl9MRUQgMHgxMQotI2RlZmluZSBFVl9TTkQgMHgxMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRVZfU05EIDB4MTIKICNkZWZpbmUgRVZfUkVQIDB4MTQKICNkZWZpbmUgRVZfRkYgMHgxNQogI2RlZmluZSBFVl9QV1IgMHgxNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRVZfRkZfU1RBVFVTIDB4MTcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVWX01BWCAweDFmCi0jZGVmaW5lIEVWX0NOVCAoRVZfTUFYKzEpCisjZGVmaW5lIEVWX0NOVCAoRVZfTUFYICsgMSkKICNkZWZpbmUgU1lOX1JFUE9SVCAwCi0jZGVmaW5lIFNZTl9DT05GSUcgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU1lOX0NPTkZJRyAxCiAjZGVmaW5lIFNZTl9NVF9SRVBPUlQgMgogI2RlZmluZSBTWU5fRFJPUFBFRCAzCiAjZGVmaW5lIFNZTl9NQVggMHhmCi0jZGVmaW5lIFNZTl9DTlQgKFNZTl9NQVgrMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNZTl9DTlQgKFNZTl9NQVggKyAxKQogI2RlZmluZSBLRVlfUkVTRVJWRUQgMAogI2RlZmluZSBLRVlfRVNDIDEKICNkZWZpbmUgS0VZXzEgMgotI2RlZmluZSBLRVlfMiAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfMiAzCiAjZGVmaW5lIEtFWV8zIDQKICNkZWZpbmUgS0VZXzQgNQogI2RlZmluZSBLRVlfNSA2Ci0jZGVmaW5lIEtFWV82IDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV82IDcKICNkZWZpbmUgS0VZXzcgOAogI2RlZmluZSBLRVlfOCA5CiAjZGVmaW5lIEtFWV85IDEwCi0jZGVmaW5lIEtFWV8wIDExCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfMCAxMQogI2RlZmluZSBLRVlfTUlOVVMgMTIKICNkZWZpbmUgS0VZX0VRVUFMIDEzCiAjZGVmaW5lIEtFWV9CQUNLU1BBQ0UgMTQKLSNkZWZpbmUgS0VZX1RBQiAxNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1RBQiAxNQogI2RlZmluZSBLRVlfUSAxNgogI2RlZmluZSBLRVlfVyAxNwogI2RlZmluZSBLRVlfRSAxOAotI2RlZmluZSBLRVlfUiAxOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1IgMTkKICNkZWZpbmUgS0VZX1QgMjAKICNkZWZpbmUgS0VZX1kgMjEKICNkZWZpbmUgS0VZX1UgMjIKLSNkZWZpbmUgS0VZX0kgMjMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9JIDIzCiAjZGVmaW5lIEtFWV9PIDI0CiAjZGVmaW5lIEtFWV9QIDI1CiAjZGVmaW5lIEtFWV9MRUZUQlJBQ0UgMjYKLSNkZWZpbmUgS0VZX1JJR0hUQlJBQ0UgMjcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9SSUdIVEJSQUNFIDI3CiAjZGVmaW5lIEtFWV9FTlRFUiAyOAogI2RlZmluZSBLRVlfTEVGVENUUkwgMjkKICNkZWZpbmUgS0VZX0EgMzAKLSNkZWZpbmUgS0VZX1MgMzEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9TIDMxCiAjZGVmaW5lIEtFWV9EIDMyCiAjZGVmaW5lIEtFWV9GIDMzCiAjZGVmaW5lIEtFWV9HIDM0Ci0jZGVmaW5lIEtFWV9IIDM1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfSCAzNQogI2RlZmluZSBLRVlfSiAzNgogI2RlZmluZSBLRVlfSyAzNwogI2RlZmluZSBLRVlfTCAzOAotI2RlZmluZSBLRVlfU0VNSUNPTE9OIDM5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfU0VNSUNPTE9OIDM5CiAjZGVmaW5lIEtFWV9BUE9TVFJPUEhFIDQwCiAjZGVmaW5lIEtFWV9HUkFWRSA0MQogI2RlZmluZSBLRVlfTEVGVFNISUZUIDQyCi0jZGVmaW5lIEtFWV9CQUNLU0xBU0ggNDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9CQUNLU0xBU0ggNDMKICNkZWZpbmUgS0VZX1ogNDQKICNkZWZpbmUgS0VZX1ggNDUKICNkZWZpbmUgS0VZX0MgNDYKLSNkZWZpbmUgS0VZX1YgNDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9WIDQ3CiAjZGVmaW5lIEtFWV9CIDQ4CiAjZGVmaW5lIEtFWV9OIDQ5CiAjZGVmaW5lIEtFWV9NIDUwCi0jZGVmaW5lIEtFWV9DT01NQSA1MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0NPTU1BIDUxCiAjZGVmaW5lIEtFWV9ET1QgNTIKICNkZWZpbmUgS0VZX1NMQVNIIDUzCiAjZGVmaW5lIEtFWV9SSUdIVFNISUZUIDU0Ci0jZGVmaW5lIEtFWV9LUEFTVEVSSVNLIDU1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfS1BBU1RFUklTSyA1NQogI2RlZmluZSBLRVlfTEVGVEFMVCA1NgogI2RlZmluZSBLRVlfU1BBQ0UgNTcKICNkZWZpbmUgS0VZX0NBUFNMT0NLIDU4Ci0jZGVmaW5lIEtFWV9GMSA1OQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0YxIDU5CiAjZGVmaW5lIEtFWV9GMiA2MAogI2RlZmluZSBLRVlfRjMgNjEKICNkZWZpbmUgS0VZX0Y0IDYyCi0jZGVmaW5lIEtFWV9GNSA2MwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0Y1IDYzCiAjZGVmaW5lIEtFWV9GNiA2NAogI2RlZmluZSBLRVlfRjcgNjUKICNkZWZpbmUgS0VZX0Y4IDY2Ci0jZGVmaW5lIEtFWV9GOSA2NwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0Y5IDY3CiAjZGVmaW5lIEtFWV9GMTAgNjgKICNkZWZpbmUgS0VZX05VTUxPQ0sgNjkKICNkZWZpbmUgS0VZX1NDUk9MTExPQ0sgNzAKLSNkZWZpbmUgS0VZX0tQNyA3MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0tQNyA3MQogI2RlZmluZSBLRVlfS1A4IDcyCiAjZGVmaW5lIEtFWV9LUDkgNzMKICNkZWZpbmUgS0VZX0tQTUlOVVMgNzQKLSNkZWZpbmUgS0VZX0tQNCA3NQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0tQNCA3NQogI2RlZmluZSBLRVlfS1A1IDc2CiAjZGVmaW5lIEtFWV9LUDYgNzcKICNkZWZpbmUgS0VZX0tQUExVUyA3OAotI2RlZmluZSBLRVlfS1AxIDc5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfS1AxIDc5CiAjZGVmaW5lIEtFWV9LUDIgODAKICNkZWZpbmUgS0VZX0tQMyA4MQogI2RlZmluZSBLRVlfS1AwIDgyCi0jZGVmaW5lIEtFWV9LUERPVCA4MwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0tQRE9UIDgzCiAjZGVmaW5lIEtFWV9aRU5LQUtVSEFOS0FLVSA4NQogI2RlZmluZSBLRVlfMTAyTkQgODYKICNkZWZpbmUgS0VZX0YxMSA4NwotI2RlZmluZSBLRVlfRjEyIDg4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfRjEyIDg4CiAjZGVmaW5lIEtFWV9STyA4OQogI2RlZmluZSBLRVlfS0FUQUtBTkEgOTAKICNkZWZpbmUgS0VZX0hJUkFHQU5BIDkxCi0jZGVmaW5lIEtFWV9IRU5LQU4gOTIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9IRU5LQU4gOTIKICNkZWZpbmUgS0VZX0tBVEFLQU5BSElSQUdBTkEgOTMKICNkZWZpbmUgS0VZX01VSEVOS0FOIDk0CiAjZGVmaW5lIEtFWV9LUEpQQ09NTUEgOTUKLSNkZWZpbmUgS0VZX0tQRU5URVIgOTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9LUEVOVEVSIDk2CiAjZGVmaW5lIEtFWV9SSUdIVENUUkwgOTcKICNkZWZpbmUgS0VZX0tQU0xBU0ggOTgKICNkZWZpbmUgS0VZX1NZU1JRIDk5Ci0jZGVmaW5lIEtFWV9SSUdIVEFMVCAxMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9SSUdIVEFMVCAxMDAKICNkZWZpbmUgS0VZX0xJTkVGRUVEIDEwMQogI2RlZmluZSBLRVlfSE9NRSAxMDIKICNkZWZpbmUgS0VZX1VQIDEwMwotI2RlZmluZSBLRVlfUEFHRVVQIDEwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1BBR0VVUCAxMDQKICNkZWZpbmUgS0VZX0xFRlQgMTA1CiAjZGVmaW5lIEtFWV9SSUdIVCAxMDYKICNkZWZpbmUgS0VZX0VORCAxMDcKLSNkZWZpbmUgS0VZX0RPV04gMTA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfRE9XTiAxMDgKICNkZWZpbmUgS0VZX1BBR0VET1dOIDEwOQogI2RlZmluZSBLRVlfSU5TRVJUIDExMAogI2RlZmluZSBLRVlfREVMRVRFIDExMQotI2RlZmluZSBLRVlfTUFDUk8gMTEyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfTUFDUk8gMTEyCiAjZGVmaW5lIEtFWV9NVVRFIDExMwogI2RlZmluZSBLRVlfVk9MVU1FRE9XTiAxMTQKICNkZWZpbmUgS0VZX1ZPTFVNRVVQIDExNQotI2RlZmluZSBLRVlfUE9XRVIgMTE2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfUE9XRVIgMTE2CiAjZGVmaW5lIEtFWV9LUEVRVUFMIDExNwogI2RlZmluZSBLRVlfS1BQTFVTTUlOVVMgMTE4CiAjZGVmaW5lIEtFWV9QQVVTRSAxMTkKLSNkZWZpbmUgS0VZX1NDQUxFIDEyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1NDQUxFIDEyMAogI2RlZmluZSBLRVlfS1BDT01NQSAxMjEKICNkZWZpbmUgS0VZX0hBTkdFVUwgMTIyCiAjZGVmaW5lIEtFWV9IQU5HVUVMIEtFWV9IQU5HRVVMCi0jZGVmaW5lIEtFWV9IQU5KQSAxMjMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9IQU5KQSAxMjMKICNkZWZpbmUgS0VZX1lFTiAxMjQKICNkZWZpbmUgS0VZX0xFRlRNRVRBIDEyNQogI2RlZmluZSBLRVlfUklHSFRNRVRBIDEyNgotI2RlZmluZSBLRVlfQ09NUE9TRSAxMjcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9DT01QT1NFIDEyNwogI2RlZmluZSBLRVlfU1RPUCAxMjgKICNkZWZpbmUgS0VZX0FHQUlOIDEyOQogI2RlZmluZSBLRVlfUFJPUFMgMTMwCi0jZGVmaW5lIEtFWV9VTkRPIDEzMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1VORE8gMTMxCiAjZGVmaW5lIEtFWV9GUk9OVCAxMzIKICNkZWZpbmUgS0VZX0NPUFkgMTMzCiAjZGVmaW5lIEtFWV9PUEVOIDEzNAotI2RlZmluZSBLRVlfUEFTVEUgMTM1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfUEFTVEUgMTM1CiAjZGVmaW5lIEtFWV9GSU5EIDEzNgogI2RlZmluZSBLRVlfQ1VUIDEzNwogI2RlZmluZSBLRVlfSEVMUCAxMzgKLSNkZWZpbmUgS0VZX01FTlUgMTM5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfTUVOVSAxMzkKICNkZWZpbmUgS0VZX0NBTEMgMTQwCiAjZGVmaW5lIEtFWV9TRVRVUCAxNDEKICNkZWZpbmUgS0VZX1NMRUVQIDE0MgotI2RlZmluZSBLRVlfV0FLRVVQIDE0MwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1dBS0VVUCAxNDMKICNkZWZpbmUgS0VZX0ZJTEUgMTQ0CiAjZGVmaW5lIEtFWV9TRU5ERklMRSAxNDUKICNkZWZpbmUgS0VZX0RFTEVURUZJTEUgMTQ2Ci0jZGVmaW5lIEtFWV9YRkVSIDE0NwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1hGRVIgMTQ3CiAjZGVmaW5lIEtFWV9QUk9HMSAxNDgKICNkZWZpbmUgS0VZX1BST0cyIDE0OQogI2RlZmluZSBLRVlfV1dXIDE1MAotI2RlZmluZSBLRVlfTVNET1MgMTUxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfTVNET1MgMTUxCiAjZGVmaW5lIEtFWV9DT0ZGRUUgMTUyCiAjZGVmaW5lIEtFWV9TQ1JFRU5MT0NLIEtFWV9DT0ZGRUUKICNkZWZpbmUgS0VZX0RJUkVDVElPTiAxNTMKLSNkZWZpbmUgS0VZX0NZQ0xFV0lORE9XUyAxNTQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9DWUNMRVdJTkRPV1MgMTU0CiAjZGVmaW5lIEtFWV9NQUlMIDE1NQogI2RlZmluZSBLRVlfQk9PS01BUktTIDE1NgogI2RlZmluZSBLRVlfQ09NUFVURVIgMTU3Ci0jZGVmaW5lIEtFWV9CQUNLIDE1OAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0JBQ0sgMTU4CiAjZGVmaW5lIEtFWV9GT1JXQVJEIDE1OQogI2RlZmluZSBLRVlfQ0xPU0VDRCAxNjAKICNkZWZpbmUgS0VZX0VKRUNUQ0QgMTYxCi0jZGVmaW5lIEtFWV9FSkVDVENMT1NFQ0QgMTYyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfRUpFQ1RDTE9TRUNEIDE2MgogI2RlZmluZSBLRVlfTkVYVFNPTkcgMTYzCiAjZGVmaW5lIEtFWV9QTEFZUEFVU0UgMTY0CiAjZGVmaW5lIEtFWV9QUkVWSU9VU1NPTkcgMTY1Ci0jZGVmaW5lIEtFWV9TVE9QQ0QgMTY2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfU1RPUENEIDE2NgogI2RlZmluZSBLRVlfUkVDT1JEIDE2NwogI2RlZmluZSBLRVlfUkVXSU5EIDE2OAogI2RlZmluZSBLRVlfUEhPTkUgMTY5Ci0jZGVmaW5lIEtFWV9JU08gMTcwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfSVNPIDE3MAogI2RlZmluZSBLRVlfQ09ORklHIDE3MQogI2RlZmluZSBLRVlfSE9NRVBBR0UgMTcyCiAjZGVmaW5lIEtFWV9SRUZSRVNIIDE3MwotI2RlZmluZSBLRVlfRVhJVCAxNzQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9FWElUIDE3NAogI2RlZmluZSBLRVlfTU9WRSAxNzUKICNkZWZpbmUgS0VZX0VESVQgMTc2CiAjZGVmaW5lIEtFWV9TQ1JPTExVUCAxNzcKLSNkZWZpbmUgS0VZX1NDUk9MTERPV04gMTc4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfU0NST0xMRE9XTiAxNzgKICNkZWZpbmUgS0VZX0tQTEVGVFBBUkVOIDE3OQogI2RlZmluZSBLRVlfS1BSSUdIVFBBUkVOIDE4MAogI2RlZmluZSBLRVlfTkVXIDE4MQotI2RlZmluZSBLRVlfUkVETyAxODIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9SRURPIDE4MgogI2RlZmluZSBLRVlfRjEzIDE4MwogI2RlZmluZSBLRVlfRjE0IDE4NAogI2RlZmluZSBLRVlfRjE1IDE4NQotI2RlZmluZSBLRVlfRjE2IDE4NgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0YxNiAxODYKICNkZWZpbmUgS0VZX0YxNyAxODcKICNkZWZpbmUgS0VZX0YxOCAxODgKICNkZWZpbmUgS0VZX0YxOSAxODkKLSNkZWZpbmUgS0VZX0YyMCAxOTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9GMjAgMTkwCiAjZGVmaW5lIEtFWV9GMjEgMTkxCiAjZGVmaW5lIEtFWV9GMjIgMTkyCiAjZGVmaW5lIEtFWV9GMjMgMTkzCi0jZGVmaW5lIEtFWV9GMjQgMTk0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfRjI0IDE5NAogI2RlZmluZSBLRVlfUExBWUNEIDIwMAogI2RlZmluZSBLRVlfUEFVU0VDRCAyMDEKICNkZWZpbmUgS0VZX1BST0czIDIwMgotI2RlZmluZSBLRVlfUFJPRzQgMjAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfUFJPRzQgMjAzCiAjZGVmaW5lIEtFWV9EQVNIQk9BUkQgMjA0CiAjZGVmaW5lIEtFWV9TVVNQRU5EIDIwNQogI2RlZmluZSBLRVlfQ0xPU0UgMjA2Ci0jZGVmaW5lIEtFWV9QTEFZIDIwNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1BMQVkgMjA3CiAjZGVmaW5lIEtFWV9GQVNURk9SV0FSRCAyMDgKICNkZWZpbmUgS0VZX0JBU1NCT09TVCAyMDkKICNkZWZpbmUgS0VZX1BSSU5UIDIxMAotI2RlZmluZSBLRVlfSFAgMjExCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfSFAgMjExCiAjZGVmaW5lIEtFWV9DQU1FUkEgMjEyCiAjZGVmaW5lIEtFWV9TT1VORCAyMTMKICNkZWZpbmUgS0VZX1FVRVNUSU9OIDIxNAotI2RlZmluZSBLRVlfRU1BSUwgMjE1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfRU1BSUwgMjE1CiAjZGVmaW5lIEtFWV9DSEFUIDIxNgogI2RlZmluZSBLRVlfU0VBUkNIIDIxNwogI2RlZmluZSBLRVlfQ09OTkVDVCAyMTgKLSNkZWZpbmUgS0VZX0ZJTkFOQ0UgMjE5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfRklOQU5DRSAyMTkKICNkZWZpbmUgS0VZX1NQT1JUIDIyMAogI2RlZmluZSBLRVlfU0hPUCAyMjEKICNkZWZpbmUgS0VZX0FMVEVSQVNFIDIyMgotI2RlZmluZSBLRVlfQ0FOQ0VMIDIyMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0NBTkNFTCAyMjMKICNkZWZpbmUgS0VZX0JSSUdIVE5FU1NET1dOIDIyNAogI2RlZmluZSBLRVlfQlJJR0hUTkVTU1VQIDIyNQogI2RlZmluZSBLRVlfTUVESUEgMjI2Ci0jZGVmaW5lIEtFWV9TV0lUQ0hWSURFT01PREUgMjI3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfU1dJVENIVklERU9NT0RFIDIyNwogI2RlZmluZSBLRVlfS0JESUxMVU1UT0dHTEUgMjI4CiAjZGVmaW5lIEtFWV9LQkRJTExVTURPV04gMjI5CiAjZGVmaW5lIEtFWV9LQkRJTExVTVVQIDIzMAotI2RlZmluZSBLRVlfU0VORCAyMzEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9TRU5EIDIzMQogI2RlZmluZSBLRVlfUkVQTFkgMjMyCiAjZGVmaW5lIEtFWV9GT1JXQVJETUFJTCAyMzMKICNkZWZpbmUgS0VZX1NBVkUgMjM0Ci0jZGVmaW5lIEtFWV9ET0NVTUVOVFMgMjM1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfRE9DVU1FTlRTIDIzNQogI2RlZmluZSBLRVlfQkFUVEVSWSAyMzYKICNkZWZpbmUgS0VZX0JMVUVUT09USCAyMzcKICNkZWZpbmUgS0VZX1dMQU4gMjM4Ci0jZGVmaW5lIEtFWV9VV0IgMjM5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfVVdCIDIzOQogI2RlZmluZSBLRVlfVU5LTk9XTiAyNDAKICNkZWZpbmUgS0VZX1ZJREVPX05FWFQgMjQxCiAjZGVmaW5lIEtFWV9WSURFT19QUkVWIDI0MgotI2RlZmluZSBLRVlfQlJJR0hUTkVTU19DWUNMRSAyNDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9CUklHSFRORVNTX0NZQ0xFIDI0MwogI2RlZmluZSBLRVlfQlJJR0hUTkVTU19BVVRPIDI0NAogI2RlZmluZSBLRVlfQlJJR0hUTkVTU19aRVJPIEtFWV9CUklHSFRORVNTX0FVVE8KICNkZWZpbmUgS0VZX0RJU1BMQVlfT0ZGIDI0NQotI2RlZmluZSBLRVlfV1dBTiAyNDYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9XV0FOIDI0NgogI2RlZmluZSBLRVlfV0lNQVggS0VZX1dXQU4KICNkZWZpbmUgS0VZX1JGS0lMTCAyNDcKICNkZWZpbmUgS0VZX01JQ01VVEUgMjQ4Ci0jZGVmaW5lIEJUTl9NSVNDIDB4MTAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVE5fTUlTQyAweDEwMAogI2RlZmluZSBCVE5fMCAweDEwMAogI2RlZmluZSBCVE5fMSAweDEwMQogI2RlZmluZSBCVE5fMiAweDEwMgotI2RlZmluZSBCVE5fMyAweDEwMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROXzMgMHgxMDMKICNkZWZpbmUgQlROXzQgMHgxMDQKICNkZWZpbmUgQlROXzUgMHgxMDUKICNkZWZpbmUgQlROXzYgMHgxMDYKLSNkZWZpbmUgQlROXzcgMHgxMDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUTl83IDB4MTA3CiAjZGVmaW5lIEJUTl84IDB4MTA4CiAjZGVmaW5lIEJUTl85IDB4MTA5CiAjZGVmaW5lIEJUTl9NT1VTRSAweDExMAotI2RlZmluZSBCVE5fTEVGVCAweDExMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX0xFRlQgMHgxMTAKICNkZWZpbmUgQlROX1JJR0hUIDB4MTExCiAjZGVmaW5lIEJUTl9NSURETEUgMHgxMTIKICNkZWZpbmUgQlROX1NJREUgMHgxMTMKLSNkZWZpbmUgQlROX0VYVFJBIDB4MTE0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVE5fRVhUUkEgMHgxMTQKICNkZWZpbmUgQlROX0ZPUldBUkQgMHgxMTUKICNkZWZpbmUgQlROX0JBQ0sgMHgxMTYKICNkZWZpbmUgQlROX1RBU0sgMHgxMTcKLSNkZWZpbmUgQlROX0pPWVNUSUNLIDB4MTIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVE5fSk9ZU1RJQ0sgMHgxMjAKICNkZWZpbmUgQlROX1RSSUdHRVIgMHgxMjAKICNkZWZpbmUgQlROX1RIVU1CIDB4MTIxCiAjZGVmaW5lIEJUTl9USFVNQjIgMHgxMjIKLSNkZWZpbmUgQlROX1RPUCAweDEyMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX1RPUCAweDEyMwogI2RlZmluZSBCVE5fVE9QMiAweDEyNAogI2RlZmluZSBCVE5fUElOS0lFIDB4MTI1CiAjZGVmaW5lIEJUTl9CQVNFIDB4MTI2Ci0jZGVmaW5lIEJUTl9CQVNFMiAweDEyNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX0JBU0UyIDB4MTI3CiAjZGVmaW5lIEJUTl9CQVNFMyAweDEyOAogI2RlZmluZSBCVE5fQkFTRTQgMHgxMjkKICNkZWZpbmUgQlROX0JBU0U1IDB4MTJhCi0jZGVmaW5lIEJUTl9CQVNFNiAweDEyYgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX0JBU0U2IDB4MTJiCiAjZGVmaW5lIEJUTl9ERUFEIDB4MTJmCiAjZGVmaW5lIEJUTl9HQU1FUEFEIDB4MTMwCiAjZGVmaW5lIEJUTl9TT1VUSCAweDEzMAotI2RlZmluZSBCVE5fQSBCVE5fU09VVEgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUTl9BIEJUTl9TT1VUSAogI2RlZmluZSBCVE5fRUFTVCAweDEzMQogI2RlZmluZSBCVE5fQiBCVE5fRUFTVAogI2RlZmluZSBCVE5fQyAweDEzMgotI2RlZmluZSBCVE5fTk9SVEggMHgxMzMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUTl9OT1JUSCAweDEzMwogI2RlZmluZSBCVE5fWCBCVE5fTk9SVEgKICNkZWZpbmUgQlROX1dFU1QgMHgxMzQKICNkZWZpbmUgQlROX1kgQlROX1dFU1QKLSNkZWZpbmUgQlROX1ogMHgxMzUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUTl9aIDB4MTM1CiAjZGVmaW5lIEJUTl9UTCAweDEzNgogI2RlZmluZSBCVE5fVFIgMHgxMzcKICNkZWZpbmUgQlROX1RMMiAweDEzOAotI2RlZmluZSBCVE5fVFIyIDB4MTM5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVE5fVFIyIDB4MTM5CiAjZGVmaW5lIEJUTl9TRUxFQ1QgMHgxM2EKICNkZWZpbmUgQlROX1NUQVJUIDB4MTNiCiAjZGVmaW5lIEJUTl9NT0RFIDB4MTNjCi0jZGVmaW5lIEJUTl9USFVNQkwgMHgxM2QKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEJUTl9USFVNQkwgMHgxM2QKICNkZWZpbmUgQlROX1RIVU1CUiAweDEzZQogI2RlZmluZSBCVE5fRElHSSAweDE0MAogI2RlZmluZSBCVE5fVE9PTF9QRU4gMHgxNDAKLSNkZWZpbmUgQlROX1RPT0xfUlVCQkVSIDB4MTQxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVE5fVE9PTF9SVUJCRVIgMHgxNDEKICNkZWZpbmUgQlROX1RPT0xfQlJVU0ggMHgxNDIKICNkZWZpbmUgQlROX1RPT0xfUEVOQ0lMIDB4MTQzCiAjZGVmaW5lIEJUTl9UT09MX0FJUkJSVVNIIDB4MTQ0Ci0jZGVmaW5lIEJUTl9UT09MX0ZJTkdFUiAweDE0NQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX1RPT0xfRklOR0VSIDB4MTQ1CiAjZGVmaW5lIEJUTl9UT09MX01PVVNFIDB4MTQ2CiAjZGVmaW5lIEJUTl9UT09MX0xFTlMgMHgxNDcKICNkZWZpbmUgQlROX1RPT0xfUVVJTlRUQVAgMHgxNDgKLSNkZWZpbmUgQlROX1RPVUNIIDB4MTRhCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVE5fVE9VQ0ggMHgxNGEKICNkZWZpbmUgQlROX1NUWUxVUyAweDE0YgogI2RlZmluZSBCVE5fU1RZTFVTMiAweDE0YwogI2RlZmluZSBCVE5fVE9PTF9ET1VCTEVUQVAgMHgxNGQKLSNkZWZpbmUgQlROX1RPT0xfVFJJUExFVEFQIDB4MTRlCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBCVE5fVE9PTF9UUklQTEVUQVAgMHgxNGUKICNkZWZpbmUgQlROX1RPT0xfUVVBRFRBUCAweDE0ZgogI2RlZmluZSBCVE5fV0hFRUwgMHgxNTAKICNkZWZpbmUgQlROX0dFQVJfRE9XTiAweDE1MAotI2RlZmluZSBCVE5fR0VBUl9VUCAweDE1MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX0dFQVJfVVAgMHgxNTEKICNkZWZpbmUgS0VZX09LIDB4MTYwCiAjZGVmaW5lIEtFWV9TRUxFQ1QgMHgxNjEKICNkZWZpbmUgS0VZX0dPVE8gMHgxNjIKLSNkZWZpbmUgS0VZX0NMRUFSIDB4MTYzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfQ0xFQVIgMHgxNjMKICNkZWZpbmUgS0VZX1BPV0VSMiAweDE2NAogI2RlZmluZSBLRVlfT1BUSU9OIDB4MTY1CiAjZGVmaW5lIEtFWV9JTkZPIDB4MTY2Ci0jZGVmaW5lIEtFWV9USU1FIDB4MTY3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfVElNRSAweDE2NwogI2RlZmluZSBLRVlfVkVORE9SIDB4MTY4CiAjZGVmaW5lIEtFWV9BUkNISVZFIDB4MTY5CiAjZGVmaW5lIEtFWV9QUk9HUkFNIDB4MTZhCi0jZGVmaW5lIEtFWV9DSEFOTkVMIDB4MTZiCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfQ0hBTk5FTCAweDE2YgogI2RlZmluZSBLRVlfRkFWT1JJVEVTIDB4MTZjCiAjZGVmaW5lIEtFWV9FUEcgMHgxNmQKICNkZWZpbmUgS0VZX1BWUiAweDE2ZQotI2RlZmluZSBLRVlfTUhQIDB4MTZmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfTUhQIDB4MTZmCiAjZGVmaW5lIEtFWV9MQU5HVUFHRSAweDE3MAogI2RlZmluZSBLRVlfVElUTEUgMHgxNzEKICNkZWZpbmUgS0VZX1NVQlRJVExFIDB4MTcyCi0jZGVmaW5lIEtFWV9BTkdMRSAweDE3MwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0FOR0xFIDB4MTczCiAjZGVmaW5lIEtFWV9aT09NIDB4MTc0CiAjZGVmaW5lIEtFWV9NT0RFIDB4MTc1CiAjZGVmaW5lIEtFWV9LRVlCT0FSRCAweDE3NgotI2RlZmluZSBLRVlfU0NSRUVOIDB4MTc3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfU0NSRUVOIDB4MTc3CiAjZGVmaW5lIEtFWV9QQyAweDE3OAogI2RlZmluZSBLRVlfVFYgMHgxNzkKICNkZWZpbmUgS0VZX1RWMiAweDE3YQotI2RlZmluZSBLRVlfVkNSIDB4MTdiCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfVkNSIDB4MTdiCiAjZGVmaW5lIEtFWV9WQ1IyIDB4MTdjCiAjZGVmaW5lIEtFWV9TQVQgMHgxN2QKICNkZWZpbmUgS0VZX1NBVDIgMHgxN2UKLSNkZWZpbmUgS0VZX0NEIDB4MTdmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfQ0QgMHgxN2YKICNkZWZpbmUgS0VZX1RBUEUgMHgxODAKICNkZWZpbmUgS0VZX1JBRElPIDB4MTgxCiAjZGVmaW5lIEtFWV9UVU5FUiAweDE4MgotI2RlZmluZSBLRVlfUExBWUVSIDB4MTgzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfUExBWUVSIDB4MTgzCiAjZGVmaW5lIEtFWV9URVhUIDB4MTg0CiAjZGVmaW5lIEtFWV9EVkQgMHgxODUKICNkZWZpbmUgS0VZX0FVWCAweDE4NgotI2RlZmluZSBLRVlfTVAzIDB4MTg3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfTVAzIDB4MTg3CiAjZGVmaW5lIEtFWV9BVURJTyAweDE4OAogI2RlZmluZSBLRVlfVklERU8gMHgxODkKICNkZWZpbmUgS0VZX0RJUkVDVE9SWSAweDE4YQotI2RlZmluZSBLRVlfTElTVCAweDE4YgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0xJU1QgMHgxOGIKICNkZWZpbmUgS0VZX01FTU8gMHgxOGMKICNkZWZpbmUgS0VZX0NBTEVOREFSIDB4MThkCiAjZGVmaW5lIEtFWV9SRUQgMHgxOGUKLSNkZWZpbmUgS0VZX0dSRUVOIDB4MThmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfR1JFRU4gMHgxOGYKICNkZWZpbmUgS0VZX1lFTExPVyAweDE5MAogI2RlZmluZSBLRVlfQkxVRSAweDE5MQogI2RlZmluZSBLRVlfQ0hBTk5FTFVQIDB4MTkyCi0jZGVmaW5lIEtFWV9DSEFOTkVMRE9XTiAweDE5MwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0NIQU5ORUxET1dOIDB4MTkzCiAjZGVmaW5lIEtFWV9GSVJTVCAweDE5NAogI2RlZmluZSBLRVlfTEFTVCAweDE5NQogI2RlZmluZSBLRVlfQUIgMHgxOTYKLSNkZWZpbmUgS0VZX05FWFQgMHgxOTcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9ORVhUIDB4MTk3CiAjZGVmaW5lIEtFWV9SRVNUQVJUIDB4MTk4CiAjZGVmaW5lIEtFWV9TTE9XIDB4MTk5CiAjZGVmaW5lIEtFWV9TSFVGRkxFIDB4MTlhCi0jZGVmaW5lIEtFWV9CUkVBSyAweDE5YgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0JSRUFLIDB4MTliCiAjZGVmaW5lIEtFWV9QUkVWSU9VUyAweDE5YwogI2RlZmluZSBLRVlfRElHSVRTIDB4MTlkCiAjZGVmaW5lIEtFWV9URUVOIDB4MTllCi0jZGVmaW5lIEtFWV9UV0VOIDB4MTlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfVFdFTiAweDE5ZgogI2RlZmluZSBLRVlfVklERU9QSE9ORSAweDFhMAogI2RlZmluZSBLRVlfR0FNRVMgMHgxYTEKICNkZWZpbmUgS0VZX1pPT01JTiAweDFhMgotI2RlZmluZSBLRVlfWk9PTU9VVCAweDFhMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1pPT01PVVQgMHgxYTMKICNkZWZpbmUgS0VZX1pPT01SRVNFVCAweDFhNAogI2RlZmluZSBLRVlfV09SRFBST0NFU1NPUiAweDFhNQogI2RlZmluZSBLRVlfRURJVE9SIDB4MWE2Ci0jZGVmaW5lIEtFWV9TUFJFQURTSEVFVCAweDFhNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX1NQUkVBRFNIRUVUIDB4MWE3CiAjZGVmaW5lIEtFWV9HUkFQSElDU0VESVRPUiAweDFhOAogI2RlZmluZSBLRVlfUFJFU0VOVEFUSU9OIDB4MWE5CiAjZGVmaW5lIEtFWV9EQVRBQkFTRSAweDFhYQotI2RlZmluZSBLRVlfTkVXUyAweDFhYgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX05FV1MgMHgxYWIKICNkZWZpbmUgS0VZX1ZPSUNFTUFJTCAweDFhYwogI2RlZmluZSBLRVlfQUREUkVTU0JPT0sgMHgxYWQKICNkZWZpbmUgS0VZX01FU1NFTkdFUiAweDFhZQotI2RlZmluZSBLRVlfRElTUExBWVRPR0dMRSAweDFhZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0RJU1BMQVlUT0dHTEUgMHgxYWYKICNkZWZpbmUgS0VZX0JSSUdIVE5FU1NfVE9HR0xFIEtFWV9ESVNQTEFZVE9HR0xFCiAjZGVmaW5lIEtFWV9TUEVMTENIRUNLIDB4MWIwCiAjZGVmaW5lIEtFWV9MT0dPRkYgMHgxYjEKLSNkZWZpbmUgS0VZX0RPTExBUiAweDFiMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0RPTExBUiAweDFiMgogI2RlZmluZSBLRVlfRVVSTyAweDFiMwogI2RlZmluZSBLRVlfRlJBTUVCQUNLIDB4MWI0CiAjZGVmaW5lIEtFWV9GUkFNRUZPUldBUkQgMHgxYjUKLSNkZWZpbmUgS0VZX0NPTlRFWFRfTUVOVSAweDFiNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0NPTlRFWFRfTUVOVSAweDFiNgogI2RlZmluZSBLRVlfTUVESUFfUkVQRUFUIDB4MWI3CiAjZGVmaW5lIEtFWV8xMENIQU5ORUxTVVAgMHgxYjgKICNkZWZpbmUgS0VZXzEwQ0hBTk5FTFNET1dOIDB4MWI5Ci0jZGVmaW5lIEtFWV9JTUFHRVMgMHgxYmEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9JTUFHRVMgMHgxYmEKICNkZWZpbmUgS0VZX0RFTF9FT0wgMHgxYzAKICNkZWZpbmUgS0VZX0RFTF9FT1MgMHgxYzEKICNkZWZpbmUgS0VZX0lOU19MSU5FIDB4MWMyCi0jZGVmaW5lIEtFWV9ERUxfTElORSAweDFjMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0RFTF9MSU5FIDB4MWMzCiAjZGVmaW5lIEtFWV9GTiAweDFkMAogI2RlZmluZSBLRVlfRk5fRVNDIDB4MWQxCiAjZGVmaW5lIEtFWV9GTl9GMSAweDFkMgotI2RlZmluZSBLRVlfRk5fRjIgMHgxZDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9GTl9GMiAweDFkMwogI2RlZmluZSBLRVlfRk5fRjMgMHgxZDQKICNkZWZpbmUgS0VZX0ZOX0Y0IDB4MWQ1CiAjZGVmaW5lIEtFWV9GTl9GNSAweDFkNgotI2RlZmluZSBLRVlfRk5fRjYgMHgxZDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9GTl9GNiAweDFkNwogI2RlZmluZSBLRVlfRk5fRjcgMHgxZDgKICNkZWZpbmUgS0VZX0ZOX0Y4IDB4MWQ5CiAjZGVmaW5lIEtFWV9GTl9GOSAweDFkYQotI2RlZmluZSBLRVlfRk5fRjEwIDB4MWRiCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfRk5fRjEwIDB4MWRiCiAjZGVmaW5lIEtFWV9GTl9GMTEgMHgxZGMKICNkZWZpbmUgS0VZX0ZOX0YxMiAweDFkZAogI2RlZmluZSBLRVlfRk5fMSAweDFkZQotI2RlZmluZSBLRVlfRk5fMiAweDFkZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0ZOXzIgMHgxZGYKICNkZWZpbmUgS0VZX0ZOX0QgMHgxZTAKICNkZWZpbmUgS0VZX0ZOX0UgMHgxZTEKICNkZWZpbmUgS0VZX0ZOX0YgMHgxZTIKLSNkZWZpbmUgS0VZX0ZOX1MgMHgxZTMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9GTl9TIDB4MWUzCiAjZGVmaW5lIEtFWV9GTl9CIDB4MWU0CiAjZGVmaW5lIEtFWV9CUkxfRE9UMSAweDFmMQogI2RlZmluZSBLRVlfQlJMX0RPVDIgMHgxZjIKLSNkZWZpbmUgS0VZX0JSTF9ET1QzIDB4MWYzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfQlJMX0RPVDMgMHgxZjMKICNkZWZpbmUgS0VZX0JSTF9ET1Q0IDB4MWY0CiAjZGVmaW5lIEtFWV9CUkxfRE9UNSAweDFmNQogI2RlZmluZSBLRVlfQlJMX0RPVDYgMHgxZjYKLSNkZWZpbmUgS0VZX0JSTF9ET1Q3IDB4MWY3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfQlJMX0RPVDcgMHgxZjcKICNkZWZpbmUgS0VZX0JSTF9ET1Q4IDB4MWY4CiAjZGVmaW5lIEtFWV9CUkxfRE9UOSAweDFmOQogI2RlZmluZSBLRVlfQlJMX0RPVDEwIDB4MWZhCi0jZGVmaW5lIEtFWV9OVU1FUklDXzAgMHgyMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9OVU1FUklDXzAgMHgyMDAKICNkZWZpbmUgS0VZX05VTUVSSUNfMSAweDIwMQogI2RlZmluZSBLRVlfTlVNRVJJQ18yIDB4MjAyCiAjZGVmaW5lIEtFWV9OVU1FUklDXzMgMHgyMDMKLSNkZWZpbmUgS0VZX05VTUVSSUNfNCAweDIwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX05VTUVSSUNfNCAweDIwNAogI2RlZmluZSBLRVlfTlVNRVJJQ181IDB4MjA1CiAjZGVmaW5lIEtFWV9OVU1FUklDXzYgMHgyMDYKICNkZWZpbmUgS0VZX05VTUVSSUNfNyAweDIwNwotI2RlZmluZSBLRVlfTlVNRVJJQ184IDB4MjA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfTlVNRVJJQ184IDB4MjA4CiAjZGVmaW5lIEtFWV9OVU1FUklDXzkgMHgyMDkKICNkZWZpbmUgS0VZX05VTUVSSUNfU1RBUiAweDIwYQogI2RlZmluZSBLRVlfTlVNRVJJQ19QT1VORCAweDIwYgotI2RlZmluZSBLRVlfQ0FNRVJBX0ZPQ1VTIDB4MjEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfQ0FNRVJBX0ZPQ1VTIDB4MjEwCiAjZGVmaW5lIEtFWV9XUFNfQlVUVE9OIDB4MjExCiAjZGVmaW5lIEtFWV9UT1VDSFBBRF9UT0dHTEUgMHgyMTIKICNkZWZpbmUgS0VZX1RPVUNIUEFEX09OIDB4MjEzCi0jZGVmaW5lIEtFWV9UT1VDSFBBRF9PRkYgMHgyMTQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9UT1VDSFBBRF9PRkYgMHgyMTQKICNkZWZpbmUgS0VZX0NBTUVSQV9aT09NSU4gMHgyMTUKICNkZWZpbmUgS0VZX0NBTUVSQV9aT09NT1VUIDB4MjE2CiAjZGVmaW5lIEtFWV9DQU1FUkFfVVAgMHgyMTcKLSNkZWZpbmUgS0VZX0NBTUVSQV9ET1dOIDB4MjE4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfQ0FNRVJBX0RPV04gMHgyMTgKICNkZWZpbmUgS0VZX0NBTUVSQV9MRUZUIDB4MjE5CiAjZGVmaW5lIEtFWV9DQU1FUkFfUklHSFQgMHgyMWEKICNkZWZpbmUgS0VZX0FUVEVOREFOVF9PTiAweDIxYgotI2RlZmluZSBLRVlfQVRURU5EQU5UX09GRiAweDIxYwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0FUVEVOREFOVF9PRkYgMHgyMWMKICNkZWZpbmUgS0VZX0FUVEVOREFOVF9UT0dHTEUgMHgyMWQKICNkZWZpbmUgS0VZX0xJR0hUU19UT0dHTEUgMHgyMWUKICNkZWZpbmUgQlROX0RQQURfVVAgMHgyMjAKLSNkZWZpbmUgQlROX0RQQURfRE9XTiAweDIyMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQlROX0RQQURfRE9XTiAweDIyMQogI2RlZmluZSBCVE5fRFBBRF9MRUZUIDB4MjIyCiAjZGVmaW5lIEJUTl9EUEFEX1JJR0hUIDB4MjIzCiAjZGVmaW5lIEtFWV9BTFNfVE9HR0xFIDB4MjMwCi0jZGVmaW5lIEtFWV9CVVRUT05DT05GSUcgMHgyNDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtFWV9CVVRUT05DT05GSUcgMHgyNDAKICNkZWZpbmUgS0VZX1RBU0tNQU5BR0VSIDB4MjQxCiAjZGVmaW5lIEtFWV9KT1VSTkFMIDB4MjQyCiAjZGVmaW5lIEtFWV9DT05UUk9MUEFORUwgMHgyNDMKLSNkZWZpbmUgS0VZX0FQUFNFTEVDVCAweDI0NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0FQUFNFTEVDVCAweDI0NAogI2RlZmluZSBLRVlfU0NSRUVOU0FWRVIgMHgyNDUKICNkZWZpbmUgS0VZX1ZPSUNFQ09NTUFORCAweDI0NgogI2RlZmluZSBLRVlfQlJJR0hUTkVTU19NSU4gMHgyNTAKLSNkZWZpbmUgS0VZX0JSSUdIVE5FU1NfTUFYIDB4MjUxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVlfQlJJR0hUTkVTU19NQVggMHgyNTEKKyNkZWZpbmUgS0VZX0tCRElOUFVUQVNTSVNUX1BSRVYgMHgyNjAKKyNkZWZpbmUgS0VZX0tCRElOUFVUQVNTSVNUX05FWFQgMHgyNjEKKyNkZWZpbmUgS0VZX0tCRElOUFVUQVNTSVNUX1BSRVZHUk9VUCAweDI2MgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0tCRElOUFVUQVNTSVNUX05FWFRHUk9VUCAweDI2MworI2RlZmluZSBLRVlfS0JESU5QVVRBU1NJU1RfQUNDRVBUIDB4MjY0CisjZGVmaW5lIEtFWV9LQkRJTlBVVEFTU0lTVF9DQU5DRUwgMHgyNjUKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkgMHgyYzAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMSAweDJjMAogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTIgMHgyYzEKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkzIDB4MmMyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTQgMHgyYzMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZNSAweDJjNAogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTYgMHgyYzUKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFk3IDB4MmM2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTggMHgyYzcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZOSAweDJjOAogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTEwIDB4MmM5CiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMTEgMHgyY2EKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMTIgMHgyY2IKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMTMgMHgyY2MKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkxNCAweDJjZAogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTE1IDB4MmNlCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTE2IDB4MmNmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTE3IDB4MmQwCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMTggMHgyZDEKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkxOSAweDJkMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkyMCAweDJkMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkyMSAweDJkNAogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTIyIDB4MmQ1CiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMjMgMHgyZDYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMjQgMHgyZDcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMjUgMHgyZDgKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkyNiAweDJkOQogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTI3IDB4MmRhCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTI4IDB4MmRiCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTI5IDB4MmRjCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMzAgMHgyZGQKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkzMSAweDJkZQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkzMiAweDJkZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkzMyAweDJlMAogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTM0IDB4MmUxCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMzUgMHgyZTIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMzYgMHgyZTMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJUTl9UUklHR0VSX0hBUFBZMzcgMHgyZTQKICNkZWZpbmUgQlROX1RSSUdHRVJfSEFQUFkzOCAweDJlNQogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTM5IDB4MmU2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVE5fVFJJR0dFUl9IQVBQWTQwIDB4MmU3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLRVlfTUlOX0lOVEVSRVNUSU5HIEtFWV9NVVRFCiAjZGVmaW5lIEtFWV9NQVggMHgyZmYKLSNkZWZpbmUgS0VZX0NOVCAoS0VZX01BWCsxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS0VZX0NOVCAoS0VZX01BWCArIDEpCiAjZGVmaW5lIFJFTF9YIDB4MDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJFTF9ZIDB4MDEKICNkZWZpbmUgUkVMX1ogMHgwMgogI2RlZmluZSBSRUxfUlggMHgwMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkVMX1JZIDB4MDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJFTF9SWiAweDA1CiAjZGVmaW5lIFJFTF9IV0hFRUwgMHgwNgogI2RlZmluZSBSRUxfRElBTCAweDA3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSRUxfV0hFRUwgMHgwOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUkVMX01JU0MgMHgwOQogI2RlZmluZSBSRUxfTUFYIDB4MGYKLSNkZWZpbmUgUkVMX0NOVCAoUkVMX01BWCsxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUkVMX0NOVCAoUkVMX01BWCArIDEpCiAjZGVmaW5lIEFCU19YIDB4MDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19ZIDB4MDEKICNkZWZpbmUgQUJTX1ogMHgwMgogI2RlZmluZSBBQlNfUlggMHgwMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUJTX1JZIDB4MDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19SWiAweDA1CiAjZGVmaW5lIEFCU19USFJPVFRMRSAweDA2CiAjZGVmaW5lIEFCU19SVURERVIgMHgwNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUJTX1dIRUVMIDB4MDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19HQVMgMHgwOQogI2RlZmluZSBBQlNfQlJBS0UgMHgwYQogI2RlZmluZSBBQlNfSEFUMFggMHgxMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUJTX0hBVDBZIDB4MTEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19IQVQxWCAweDEyCiAjZGVmaW5lIEFCU19IQVQxWSAweDEzCiAjZGVmaW5lIEFCU19IQVQyWCAweDE0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfSEFUMlkgMHgxNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUJTX0hBVDNYIDB4MTYKICNkZWZpbmUgQUJTX0hBVDNZIDB4MTcKICNkZWZpbmUgQUJTX1BSRVNTVVJFIDB4MTgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19ESVNUQU5DRSAweDE5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfVElMVF9YIDB4MWEKICNkZWZpbmUgQUJTX1RJTFRfWSAweDFiCiAjZGVmaW5lIEFCU19UT09MX1dJRFRIIDB4MWMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19WT0xVTUUgMHgyMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUJTX01JU0MgMHgyOAogI2RlZmluZSBBQlNfTVRfU0xPVCAweDJmCiAjZGVmaW5lIEFCU19NVF9UT1VDSF9NQUpPUiAweDMwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfTVRfVE9VQ0hfTUlOT1IgMHgzMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUJTX01UX1dJRFRIX01BSk9SIDB4MzIKICNkZWZpbmUgQUJTX01UX1dJRFRIX01JTk9SIDB4MzMKICNkZWZpbmUgQUJTX01UX09SSUVOVEFUSU9OIDB4MzQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19NVF9QT1NJVElPTl9YIDB4MzUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19NVF9QT1NJVElPTl9ZIDB4MzYKICNkZWZpbmUgQUJTX01UX1RPT0xfVFlQRSAweDM3CiAjZGVmaW5lIEFCU19NVF9CTE9CX0lEIDB4MzgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19NVF9UUkFDS0lOR19JRCAweDM5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBQlNfTVRfUFJFU1NVUkUgMHgzYQogI2RlZmluZSBBQlNfTVRfRElTVEFOQ0UgMHgzYgogI2RlZmluZSBBQlNfTVRfVE9PTF9YIDB4M2MKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFCU19NVF9UT09MX1kgMHgzZAotI2RlZmluZSBBQlNfTUFYIDB4M2YKLSNkZWZpbmUgQUJTX0NOVCAoQUJTX01BWCsxKQotI2RlZmluZSBTV19MSUQgMHgwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQUJTX01BWCAweDNmCisjZGVmaW5lIEFCU19DTlQgKEFCU19NQVggKyAxKQorI2RlZmluZSBTV19MSUQgMHgwMAogI2RlZmluZSBTV19UQUJMRVRfTU9ERSAweDAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTV19IRUFEUEhPTkVfSU5TRVJUIDB4MDIKICNkZWZpbmUgU1dfUkZLSUxMX0FMTCAweDAzCiAjZGVmaW5lIFNXX1JBRElPIFNXX1JGS0lMTF9BTEwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNXX01JQ1JPUEhPTkVfSU5TRVJUIDB4MDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNXX0RPQ0sgMHgwNQogI2RlZmluZSBTV19MSU5FT1VUX0lOU0VSVCAweDA2CiAjZGVmaW5lIFNXX0pBQ0tfUEhZU0lDQUxfSU5TRVJUIDB4MDcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNXX1ZJREVPT1VUX0lOU0VSVCAweDA4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTV19DQU1FUkFfTEVOU19DT1ZFUiAweDA5CiAjZGVmaW5lIFNXX0tFWVBBRF9TTElERSAweDBhCiAjZGVmaW5lIFNXX0ZST05UX1BST1hJTUlUWSAweDBiCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTV19ST1RBVEVfTE9DSyAweDBjCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTV19MSU5FSU5fSU5TRVJUIDB4MGQKICNkZWZpbmUgU1dfTVVURV9ERVZJQ0UgMHgwZQogI2RlZmluZSBTV19NQVggMHgwZgorI2RlZmluZSBTV19DTlQgKFNXX01BWCArIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTV19DTlQgKFNXX01BWCsxKQogI2RlZmluZSBNU0NfU0VSSUFMIDB4MDAKICNkZWZpbmUgTVNDX1BVTFNFTEVEIDB4MDEKICNkZWZpbmUgTVNDX0dFU1RVUkUgMHgwMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVNDX1JBVyAweDAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU0NfU0NBTiAweDA0CiAjZGVmaW5lIE1TQ19USU1FU1RBTVAgMHgwNQogI2RlZmluZSBNU0NfTUFYIDB4MDcKKyNkZWZpbmUgTVNDX0NOVCAoTVNDX01BWCArIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNU0NfQ05UIChNU0NfTUFYKzEpCiAjZGVmaW5lIExFRF9OVU1MIDB4MDAKICNkZWZpbmUgTEVEX0NBUFNMIDB4MDEKICNkZWZpbmUgTEVEX1NDUk9MTEwgMHgwMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTEVEX0NPTVBPU0UgMHgwMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTEVEX0tBTkEgMHgwNAogI2RlZmluZSBMRURfU0xFRVAgMHgwNQogI2RlZmluZSBMRURfU1VTUEVORCAweDA2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMRURfTVVURSAweDA3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMRURfTUlTQyAweDA4CiAjZGVmaW5lIExFRF9NQUlMIDB4MDkKICNkZWZpbmUgTEVEX0NIQVJHSU5HIDB4MGEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExFRF9NQVggMHgwZgotI2RlZmluZSBMRURfQ05UIChMRURfTUFYKzEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBMRURfQ05UIChMRURfTUFYICsgMSkKICNkZWZpbmUgUkVQX0RFTEFZIDB4MDAKICNkZWZpbmUgUkVQX1BFUklPRCAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSRVBfTUFYIDB4MDEKLSNkZWZpbmUgUkVQX0NOVCAoUkVQX01BWCsxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUkVQX0NOVCAoUkVQX01BWCArIDEpCiAjZGVmaW5lIFNORF9DTElDSyAweDAwCiAjZGVmaW5lIFNORF9CRUxMIDB4MDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORF9UT05FIDB4MDIKLSNkZWZpbmUgU05EX01BWCAweDA3Ci0jZGVmaW5lIFNORF9DTlQgKFNORF9NQVgrMSkKLSNkZWZpbmUgSURfQlVTIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORF9NQVggMHgwNworI2RlZmluZSBTTkRfQ05UIChTTkRfTUFYICsgMSkKKyNkZWZpbmUgSURfQlVTIDAKICNkZWZpbmUgSURfVkVORE9SIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElEX1BST0RVQ1QgMgogI2RlZmluZSBJRF9WRVJTSU9OIDMKICNkZWZpbmUgQlVTX1BDSSAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVVNfSVNBUE5QIDB4MDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJVU19VU0IgMHgwMwogI2RlZmluZSBCVVNfSElMIDB4MDQKICNkZWZpbmUgQlVTX0JMVUVUT09USCAweDA1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVVNfVklSVFVBTCAweDA2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVVNfSVNBIDB4MTAKICNkZWZpbmUgQlVTX0k4MDQyIDB4MTEKICNkZWZpbmUgQlVTX1hUS0JEIDB4MTIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJVU19SUzIzMiAweDEzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVVNfR0FNRVBPUlQgMHgxNAogI2RlZmluZSBCVVNfUEFSUE9SVCAweDE1CiAjZGVmaW5lIEJVU19BTUlHQSAweDE2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCVVNfQURCIDB4MTcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJVU19JMkMgMHgxOAogI2RlZmluZSBCVVNfSE9TVCAweDE5CiAjZGVmaW5lIEJVU19HU0MgMHgxQQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQlVTX0FUQVJJIDB4MUIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJVU19TUEkgMHgxQwogI2RlZmluZSBNVF9UT09MX0ZJTkdFUiAwCiAjZGVmaW5lIE1UX1RPT0xfUEVOIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1UX1RPT0xfTUFYIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZGX1NUQVRVU19TVE9QUEVEIDB4MDAKICNkZWZpbmUgRkZfU1RBVFVTX1BMQVlJTkcgMHgwMQogI2RlZmluZSBGRl9TVEFUVVNfTUFYIDB4MDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmZfcmVwbGF5IHsKLSBfX3UxNiBsZW5ndGg7Ci0gX191MTYgZGVsYXk7Ci19OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgbGVuZ3RoOworICBfX3UxNiBkZWxheTsKK307CiBzdHJ1Y3QgZmZfdHJpZ2dlciB7Ci0gX191MTYgYnV0dG9uOwotIF9fdTE2IGludGVydmFsOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgYnV0dG9uOworICBfX3UxNiBpbnRlcnZhbDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZmX2VudmVsb3BlIHsKLSBfX3UxNiBhdHRhY2tfbGVuZ3RoOwotIF9fdTE2IGF0dGFja19sZXZlbDsKLSBfX3UxNiBmYWRlX2xlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZmFkZV9sZXZlbDsKKyAgX191MTYgYXR0YWNrX2xlbmd0aDsKKyAgX191MTYgYXR0YWNrX2xldmVsOworICBfX3UxNiBmYWRlX2xlbmd0aDsKKyAgX191MTYgZmFkZV9sZXZlbDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZmX2NvbnN0YW50X2VmZmVjdCB7Ci0gX19zMTYgbGV2ZWw7CisgIF9fczE2IGxldmVsOworICBzdHJ1Y3QgZmZfZW52ZWxvcGUgZW52ZWxvcGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmZl9lbnZlbG9wZSBlbnZlbG9wZTsKIH07CiBzdHJ1Y3QgZmZfcmFtcF9lZmZlY3QgewotIF9fczE2IHN0YXJ0X2xldmVsOworICBfX3MxNiBzdGFydF9sZXZlbDsKKyAgX19zMTYgZW5kX2xldmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MxNiBlbmRfbGV2ZWw7Ci0gc3RydWN0IGZmX2VudmVsb3BlIGVudmVsb3BlOworICBzdHJ1Y3QgZmZfZW52ZWxvcGUgZW52ZWxvcGU7CiB9Owogc3RydWN0IGZmX2NvbmRpdGlvbl9lZmZlY3QgeworICBfX3UxNiByaWdodF9zYXR1cmF0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiByaWdodF9zYXR1cmF0aW9uOwotIF9fdTE2IGxlZnRfc2F0dXJhdGlvbjsKLSBfX3MxNiByaWdodF9jb2VmZjsKLSBfX3MxNiBsZWZ0X2NvZWZmOworICBfX3UxNiBsZWZ0X3NhdHVyYXRpb247CisgIF9fczE2IHJpZ2h0X2NvZWZmOworICBfX3MxNiBsZWZ0X2NvZWZmOworICBfX3UxNiBkZWFkYmFuZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZGVhZGJhbmQ7Ci0gX19zMTYgY2VudGVyOworICBfX3MxNiBjZW50ZXI7CiB9Owogc3RydWN0IGZmX3BlcmlvZGljX2VmZmVjdCB7CisgIF9fdTE2IHdhdmVmb3JtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB3YXZlZm9ybTsKLSBfX3UxNiBwZXJpb2Q7Ci0gX19zMTYgbWFnbml0dWRlOwotIF9fczE2IG9mZnNldDsKKyAgX191MTYgcGVyaW9kOworICBfX3MxNiBtYWduaXR1ZGU7CisgIF9fczE2IG9mZnNldDsKKyAgX191MTYgcGhhc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHBoYXNlOwotIHN0cnVjdCBmZl9lbnZlbG9wZSBlbnZlbG9wZTsKLSBfX3UzMiBjdXN0b21fbGVuOwotIF9fczE2IF9fdXNlciAqY3VzdG9tX2RhdGE7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgZmZfZW52ZWxvcGUgZW52ZWxvcGU7CisgIF9fdTMyIGN1c3RvbV9sZW47CisgIF9fczE2IF9fdXNlciAqIGN1c3RvbV9kYXRhOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmZfcnVtYmxlX2VmZmVjdCB7Ci0gX191MTYgc3Ryb25nX21hZ25pdHVkZTsKLSBfX3UxNiB3ZWFrX21hZ25pdHVkZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IHN0cm9uZ19tYWduaXR1ZGU7CisgIF9fdTE2IHdlYWtfbWFnbml0dWRlOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmZfZWZmZWN0IHsKLSBfX3UxNiB0eXBlOwotIF9fczE2IGlkOworICBfX3UxNiB0eXBlOworICBfX3MxNiBpZDsKKyAgX191MTYgZGlyZWN0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBkaXJlY3Rpb247Ci0gc3RydWN0IGZmX3RyaWdnZXIgdHJpZ2dlcjsKLSBzdHJ1Y3QgZmZfcmVwbGF5IHJlcGxheTsKLSB1bmlvbiB7CisgIHN0cnVjdCBmZl90cmlnZ2VyIHRyaWdnZXI7CisgIHN0cnVjdCBmZl9yZXBsYXkgcmVwbGF5OworICB1bmlvbiB7CisgICAgc3RydWN0IGZmX2NvbnN0YW50X2VmZmVjdCBjb25zdGFudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGZmX2NvbnN0YW50X2VmZmVjdCBjb25zdGFudDsKLSBzdHJ1Y3QgZmZfcmFtcF9lZmZlY3QgcmFtcDsKLSBzdHJ1Y3QgZmZfcGVyaW9kaWNfZWZmZWN0IHBlcmlvZGljOwotIHN0cnVjdCBmZl9jb25kaXRpb25fZWZmZWN0IGNvbmRpdGlvblsyXTsKKyAgICBzdHJ1Y3QgZmZfcmFtcF9lZmZlY3QgcmFtcDsKKyAgICBzdHJ1Y3QgZmZfcGVyaW9kaWNfZWZmZWN0IHBlcmlvZGljOworICAgIHN0cnVjdCBmZl9jb25kaXRpb25fZWZmZWN0IGNvbmRpdGlvblsyXTsKKyAgICBzdHJ1Y3QgZmZfcnVtYmxlX2VmZmVjdCBydW1ibGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmZl9ydW1ibGVfZWZmZWN0IHJ1bWJsZTsKLSB9IHU7CisgIH0gdTsKIH07CiAjZGVmaW5lIEZGX1JVTUJMRSAweDUwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRl9QRVJJT0RJQyAweDUxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRl9DT05TVEFOVCAweDUyCiAjZGVmaW5lIEZGX1NQUklORyAweDUzCiAjZGVmaW5lIEZGX0ZSSUNUSU9OIDB4NTQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZGX0RBTVBFUiAweDU1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRl9JTkVSVElBIDB4NTYKICNkZWZpbmUgRkZfUkFNUCAweDU3CiAjZGVmaW5lIEZGX0VGRkVDVF9NSU4gRkZfUlVNQkxFCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRl9FRkZFQ1RfTUFYIEZGX1JBTVAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZGX1NRVUFSRSAweDU4CiAjZGVmaW5lIEZGX1RSSUFOR0xFIDB4NTkKICNkZWZpbmUgRkZfU0lORSAweDVhCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRl9TQVdfVVAgMHg1YgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkZfU0FXX0RPV04gMHg1YwogI2RlZmluZSBGRl9DVVNUT00gMHg1ZAogI2RlZmluZSBGRl9XQVZFRk9STV9NSU4gRkZfU1FVQVJFCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRl9XQVZFRk9STV9NQVggRkZfQ1VTVE9NCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGRl9HQUlOIDB4NjAKICNkZWZpbmUgRkZfQVVUT0NFTlRFUiAweDYxCiAjZGVmaW5lIEZGX01BWCAweDdmCisjZGVmaW5lIEZGX0NOVCAoRkZfTUFYICsgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEZGX0NOVCAoRkZfTUFYKzEpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW9uLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lvbi5oCmluZGV4IDVhZjM5ZDAuLjQxOTM3NjMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW9uLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pb24uaApAQCAtMjMsNTAgKzIzLDUwIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBpbnQgaW9uX3VzZXJfaGFuZGxlX3Q7CiBlbnVtIGlvbl9oZWFwX3R5cGUgewotIElPTl9IRUFQX1RZUEVfU1lTVEVNLAotIElPTl9IRUFQX1RZUEVfU1lTVEVNX0NPTlRJRywKKyAgSU9OX0hFQVBfVFlQRV9TWVNURU0sCisgIElPTl9IRUFQX1RZUEVfU1lTVEVNX0NPTlRJRywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSU9OX0hFQVBfVFlQRV9DQVJWRU9VVCwKLSBJT05fSEVBUF9UWVBFX0NIVU5LLAotIElPTl9IRUFQX1RZUEVfRE1BLAotIElPTl9IRUFQX1RZUEVfQ1VTVE9NLAorICBJT05fSEVBUF9UWVBFX0NBUlZFT1VULAorICBJT05fSEVBUF9UWVBFX0NIVU5LLAorICBJT05fSEVBUF9UWVBFX0RNQSwKKyAgSU9OX0hFQVBfVFlQRV9DVVNUT00sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElPTl9OVU1fSEVBUFMgPSAxNiwKKyAgSU9OX05VTV9IRUFQUyA9IDE2LAogfTsKICNkZWZpbmUgSU9OX0hFQVBfU1lTVEVNX01BU0sgKDEgPDwgSU9OX0hFQVBfVFlQRV9TWVNURU0pCiAjZGVmaW5lIElPTl9IRUFQX1NZU1RFTV9DT05USUdfTUFTSyAoMSA8PCBJT05fSEVBUF9UWVBFX1NZU1RFTV9DT05USUcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJT05fSEVBUF9DQVJWRU9VVF9NQVNLICgxIDw8IElPTl9IRUFQX1RZUEVfQ0FSVkVPVVQpCiAjZGVmaW5lIElPTl9IRUFQX1RZUEVfRE1BX01BU0sgKDEgPDwgSU9OX0hFQVBfVFlQRV9ETUEpCi0jZGVmaW5lIElPTl9OVU1fSEVBUF9JRFMgc2l6ZW9mKHVuc2lnbmVkIGludCkgKiA4CisjZGVmaW5lIElPTl9OVU1fSEVBUF9JRFMgKHNpemVvZih1bnNpZ25lZCBpbnQpICogOCkKICNkZWZpbmUgSU9OX0ZMQUdfQ0FDSEVEIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElPTl9GTEFHX0NBQ0hFRF9ORUVEU19TWU5DIDIKIHN0cnVjdCBpb25fYWxsb2NhdGlvbl9kYXRhIHsKLSBzaXplX3QgbGVuOwotIHNpemVfdCBhbGlnbjsKKyAgc2l6ZV90IGxlbjsKKyAgc2l6ZV90IGFsaWduOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgaGVhcF9pZF9tYXNrOwotIHVuc2lnbmVkIGludCBmbGFnczsKLSBpb25fdXNlcl9oYW5kbGVfdCBoYW5kbGU7CisgIHVuc2lnbmVkIGludCBoZWFwX2lkX21hc2s7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgaW9uX3VzZXJfaGFuZGxlX3QgaGFuZGxlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaW9uX2ZkX2RhdGEgewotIGlvbl91c2VyX2hhbmRsZV90IGhhbmRsZTsKLSBpbnQgZmQ7CisgIGlvbl91c2VyX2hhbmRsZV90IGhhbmRsZTsKKyAgaW50IGZkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaW9uX2hhbmRsZV9kYXRhIHsKLSBpb25fdXNlcl9oYW5kbGVfdCBoYW5kbGU7CisgIGlvbl91c2VyX2hhbmRsZV90IGhhbmRsZTsKIH07CiBzdHJ1Y3QgaW9uX2N1c3RvbV9kYXRhIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGNtZDsKLSB1bnNpZ25lZCBsb25nIGFyZzsKKyAgdW5zaWduZWQgaW50IGNtZDsKKyAgdW5zaWduZWQgbG9uZyBhcmc7CiB9OwogI2RlZmluZSBJT05fSU9DX01BR0lDICdJJwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSU9OX0lPQ19BTExPQyBfSU9XUihJT05fSU9DX01BR0lDLCAwLCAgIHN0cnVjdCBpb25fYWxsb2NhdGlvbl9kYXRhKQorI2RlZmluZSBJT05fSU9DX0FMTE9DIF9JT1dSKElPTl9JT0NfTUFHSUMsIDAsIHN0cnVjdCBpb25fYWxsb2NhdGlvbl9kYXRhKQogI2RlZmluZSBJT05fSU9DX0ZSRUUgX0lPV1IoSU9OX0lPQ19NQUdJQywgMSwgc3RydWN0IGlvbl9oYW5kbGVfZGF0YSkKICNkZWZpbmUgSU9OX0lPQ19NQVAgX0lPV1IoSU9OX0lPQ19NQUdJQywgMiwgc3RydWN0IGlvbl9mZF9kYXRhKQogI2RlZmluZSBJT05fSU9DX1NIQVJFIF9JT1dSKElPTl9JT0NfTUFHSUMsIDQsIHN0cnVjdCBpb25fZmRfZGF0YSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW9uX3Rlc3QuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW9uX3Rlc3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZmYzNWE3Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pb25fdGVzdC5oCkBAIC0wLDAgKzEsMzggQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKgorICoqKiAgIFRoaXMgaGVhZGVyIHdhcyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBmcm9tIGEgTGludXgga2VybmVsIGhlYWRlcgorICoqKiAgIG9mIHRoZSBzYW1lIG5hbWUsIHRvIG1ha2UgaW5mb3JtYXRpb24gbmVjZXNzYXJ5IGZvciB1c2Vyc3BhY2UgdG8KKyAqKiogICBjYWxsIGludG8gdGhlIGtlcm5lbCBhdmFpbGFibGUgdG8gbGliYy4gIEl0IGNvbnRhaW5zIG9ubHkgY29uc3RhbnRzLAorICoqKiAgIHN0cnVjdHVyZXMsIGFuZCBtYWNyb3MgZ2VuZXJhdGVkIGZyb20gdGhlIG9yaWdpbmFsIGhlYWRlciwgYW5kIHRodXMsCisgKioqICAgY29udGFpbnMgbm8gY29weXJpZ2h0YWJsZSBpbmZvcm1hdGlvbi4KKyAqKioKKyAqKiogICBUbyBlZGl0IHRoZSBjb250ZW50IG9mIHRoaXMgaGVhZGVyLCBtb2RpZnkgdGhlIGNvcnJlc3BvbmRpbmcKKyAqKiogICBzb3VyY2UgZmlsZSAoZS5nLiB1bmRlciBleHRlcm5hbC9rZXJuZWwtaGVhZGVycy9vcmlnaW5hbC8pIHRoZW4KKyAqKiogICBydW4gYmlvbmljL2xpYmMva2VybmVsL3Rvb2xzL3VwZGF0ZV9hbGwucHkKKyAqKioKKyAqKiogICBBbnkgbWFudWFsIGNoYW5nZSBoZXJlIHdpbGwgYmUgbG9zdCB0aGUgbmV4dCB0aW1lIHRoaXMgc2NyaXB0IHdpbGwKKyAqKiogICBiZSBydW4uIFlvdSd2ZSBiZWVuIHdhcm5lZCEKKyAqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNpZm5kZWYgX1VBUElfTElOVVhfSU9OX1RFU1RfSAorI2RlZmluZSBfVUFQSV9MSU5VWF9JT05fVEVTVF9ICisjaW5jbHVkZSA8bGludXgvaW9jdGwuaD4KKyNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBpb25fdGVzdF9yd19kYXRhIHsKKyAgX191NjQgcHRyOworICBfX3U2NCBvZmZzZXQ7CisgIF9fdTY0IHNpemU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgd3JpdGU7CisgIGludCBfX3BhZGRpbmc7Cit9OworI2RlZmluZSBJT05fSU9DX01BR0lDICdJJworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSU9OX0lPQ19URVNUX1NFVF9GRCBfSU8oSU9OX0lPQ19NQUdJQywgMHhmMCkKKyNkZWZpbmUgSU9OX0lPQ19URVNUX0RNQV9NQVBQSU5HIF9JT1coSU9OX0lPQ19NQUdJQywgMHhmMSwgc3RydWN0IGlvbl90ZXN0X3J3X2RhdGEpCisjZGVmaW5lIElPTl9JT0NfVEVTVF9LRVJORUxfTUFQUElORyBfSU9XKElPTl9JT0NfTUFHSUMsIDB4ZjIsIHN0cnVjdCBpb25fdGVzdF9yd19kYXRhKQorI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pb3ByaW8uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaW9wcmlvLmgKaW5kZXggY2NkYjNiMC4uNTg4NmU3NyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pb3ByaW8uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lvcHJpby5oCkBAIC0yNCwyMiArMjQsMjIgQEAKICNkZWZpbmUgSU9QUklPX1BSSU9fTUFTSyAoKDFVTCA8PCBJT1BSSU9fQ0xBU1NfU0hJRlQpIC0gMSkKICNkZWZpbmUgSU9QUklPX1BSSU9fQ0xBU1MobWFzaykgKChtYXNrKSA+PiBJT1BSSU9fQ0xBU1NfU0hJRlQpCiAjZGVmaW5lIElPUFJJT19QUklPX0RBVEEobWFzaykgKChtYXNrKSAmIElPUFJJT19QUklPX01BU0spCi0jZGVmaW5lIElPUFJJT19QUklPX1ZBTFVFKGNsYXNzLCBkYXRhKSAoKChjbGFzcykgPDwgSU9QUklPX0NMQVNTX1NISUZUKSB8IGRhdGEpCisjZGVmaW5lIElPUFJJT19QUklPX1ZBTFVFKGNsYXNzLGRhdGEpICgoKGNsYXNzKSA8PCBJT1BSSU9fQ0xBU1NfU0hJRlQpIHwgZGF0YSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIGlvcHJpb192YWxpZChtYXNrKSAoSU9QUklPX1BSSU9fQ0xBU1MoKG1hc2spKSAhPSBJT1BSSU9fQ0xBU1NfTk9ORSkKIGVudW0gewotIElPUFJJT19DTEFTU19OT05FLAotIElPUFJJT19DTEFTU19SVCwKKyAgSU9QUklPX0NMQVNTX05PTkUsCisgIElPUFJJT19DTEFTU19SVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSU9QUklPX0NMQVNTX0JFLAotIElPUFJJT19DTEFTU19JRExFLAorICBJT1BSSU9fQ0xBU1NfQkUsCisgIElPUFJJT19DTEFTU19JRExFLAogfTsKICNkZWZpbmUgSU9QUklPX0JFX05SICg4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIElPUFJJT19XSE9fUFJPQ0VTUyA9IDEsCi0gSU9QUklPX1dIT19QR1JQLAotIElPUFJJT19XSE9fVVNFUiwKKyAgSU9QUklPX1dIT19QUk9DRVNTID0gMSwKKyAgSU9QUklPX1dIT19QR1JQLAorICBJT1BSSU9fV0hPX1VTRVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSU9QUklPX05PUk0gKDQpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwLmgKaW5kZXggZmMwYmQ3OC4uODU2N2QyNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXAuaApAQCAtMjIsMTQgKzIyLDE0IEBACiAjaW5jbHVkZSA8YXNtL2J5dGVvcmRlci5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBUT1NfVE9TX01BU0sgMHgxRQotI2RlZmluZSBJUFRPU19UT1ModG9zKSAoKHRvcykmSVBUT1NfVE9TX01BU0spCisjZGVmaW5lIElQVE9TX1RPUyh0b3MpICgodG9zKSAmIElQVE9TX1RPU19NQVNLKQogI2RlZmluZSBJUFRPU19MT1dERUxBWSAweDEwCiAjZGVmaW5lIElQVE9TX1RIUk9VR0hQVVQgMHgwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBUT1NfUkVMSUFCSUxJVFkgMHgwNAogI2RlZmluZSBJUFRPU19NSU5DT1NUIDB4MDIKICNkZWZpbmUgSVBUT1NfUFJFQ19NQVNLIDB4RTAKLSNkZWZpbmUgSVBUT1NfUFJFQyh0b3MpICgodG9zKSZJUFRPU19QUkVDX01BU0spCisjZGVmaW5lIElQVE9TX1BSRUModG9zKSAoKHRvcykgJiBJUFRPU19QUkVDX01BU0spCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFRPU19QUkVDX05FVENPTlRST0wgMHhlMAogI2RlZmluZSBJUFRPU19QUkVDX0lOVEVSTkVUQ09OVFJPTCAweGMwCkBAIC00NCwyNyArNDQsMjcgQEAKICNkZWZpbmUgSVBPUFRfQ09QWSAweDgwCiAjZGVmaW5lIElQT1BUX0NMQVNTX01BU0sgMHg2MAogI2RlZmluZSBJUE9QVF9OVU1CRVJfTUFTSyAweDFmCi0jZGVmaW5lIElQT1BUX0NPUElFRChvKSAoKG8pJklQT1BUX0NPUFkpCisjZGVmaW5lIElQT1BUX0NPUElFRChvKSAoKG8pICYgSVBPUFRfQ09QWSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElQT1BUX0NMQVNTKG8pICgobykmSVBPUFRfQ0xBU1NfTUFTSykKLSNkZWZpbmUgSVBPUFRfTlVNQkVSKG8pICgobykmSVBPUFRfTlVNQkVSX01BU0spCisjZGVmaW5lIElQT1BUX0NMQVNTKG8pICgobykgJiBJUE9QVF9DTEFTU19NQVNLKQorI2RlZmluZSBJUE9QVF9OVU1CRVIobykgKChvKSAmIElQT1BUX05VTUJFUl9NQVNLKQogI2RlZmluZSBJUE9QVF9DT05UUk9MIDB4MDAKICNkZWZpbmUgSVBPUFRfUkVTRVJWRUQxIDB4MjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQT1BUX01FQVNVUkVNRU5UIDB4NDAKICNkZWZpbmUgSVBPUFRfUkVTRVJWRUQyIDB4NjAKLSNkZWZpbmUgSVBPUFRfRU5EICgwIHxJUE9QVF9DT05UUk9MKQotI2RlZmluZSBJUE9QVF9OT09QICgxIHxJUE9QVF9DT05UUk9MKQorI2RlZmluZSBJUE9QVF9FTkQgKDAgfCBJUE9QVF9DT05UUk9MKQorI2RlZmluZSBJUE9QVF9OT09QICgxIHwgSVBPUFRfQ09OVFJPTCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElQT1BUX1NFQyAoMiB8SVBPUFRfQ09OVFJPTHxJUE9QVF9DT1BZKQotI2RlZmluZSBJUE9QVF9MU1JSICgzIHxJUE9QVF9DT05UUk9MfElQT1BUX0NPUFkpCi0jZGVmaW5lIElQT1BUX1RJTUVTVEFNUCAoNCB8SVBPUFRfTUVBU1VSRU1FTlQpCi0jZGVmaW5lIElQT1BUX0NJUFNPICg2IHxJUE9QVF9DT05UUk9MfElQT1BUX0NPUFkpCisjZGVmaW5lIElQT1BUX1NFQyAoMiB8IElQT1BUX0NPTlRST0wgfCBJUE9QVF9DT1BZKQorI2RlZmluZSBJUE9QVF9MU1JSICgzIHwgSVBPUFRfQ09OVFJPTCB8IElQT1BUX0NPUFkpCisjZGVmaW5lIElQT1BUX1RJTUVTVEFNUCAoNCB8IElQT1BUX01FQVNVUkVNRU5UKQorI2RlZmluZSBJUE9QVF9DSVBTTyAoNiB8IElQT1BUX0NPTlRST0wgfCBJUE9QVF9DT1BZKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVBPUFRfUlIgKDcgfElQT1BUX0NPTlRST0wpCi0jZGVmaW5lIElQT1BUX1NJRCAoOCB8SVBPUFRfQ09OVFJPTHxJUE9QVF9DT1BZKQotI2RlZmluZSBJUE9QVF9TU1JSICg5IHxJUE9QVF9DT05UUk9MfElQT1BUX0NPUFkpCi0jZGVmaW5lIElQT1BUX1JBICgyMHxJUE9QVF9DT05UUk9MfElQT1BUX0NPUFkpCisjZGVmaW5lIElQT1BUX1JSICg3IHwgSVBPUFRfQ09OVFJPTCkKKyNkZWZpbmUgSVBPUFRfU0lEICg4IHwgSVBPUFRfQ09OVFJPTCB8IElQT1BUX0NPUFkpCisjZGVmaW5lIElQT1BUX1NTUlIgKDkgfCBJUE9QVF9DT05UUk9MIHwgSVBPUFRfQ09QWSkKKyNkZWZpbmUgSVBPUFRfUkEgKDIwIHwgSVBPUFRfQ09OVFJPTCB8IElQT1BUX0NPUFkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFZFUlNJT04gNAogI2RlZmluZSBNQVhUVEwgMjU1CkBAIC04Nyw5OCArODcsOTQgQEAKIHN0cnVjdCBpcGhkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmZGVmIF9fTElUVExFX0VORElBTl9CSVRGSUVMRAotIF9fdTggaWhsOjQsCi0gdmVyc2lvbjo0OwotI2VsaWYgZGVmaW5lZCAoX19CSUdfRU5ESUFOX0JJVEZJRUxEKQorICBfX3U4IGlobCA6IDQsIHZlcnNpb24gOiA0OworI2VsaWYgZGVmaW5lZChfX0JJR19FTkRJQU5fQklURklFTEQpCisgIF9fdTggdmVyc2lvbiA6IDQsIGlobCA6IDQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdmVyc2lvbjo0LAotIGlobDo0OwogI2Vsc2UKICNlcnJvciAiUGxlYXNlIGZpeCA8YXNtL2J5dGVvcmRlci5oPiIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKLSBfX3U4IHRvczsKLSBfX2JlMTYgdG90X2xlbjsKLSBfX2JlMTYgaWQ7CisgIF9fdTggdG9zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgZnJhZ19vZmY7Ci0gX191OCB0dGw7Ci0gX191OCBwcm90b2NvbDsKLSBfX3N1bTE2IGNoZWNrOworICBfX2JlMTYgdG90X2xlbjsKKyAgX19iZTE2IGlkOworICBfX2JlMTYgZnJhZ19vZmY7CisgIF9fdTggdHRsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgc2FkZHI7Ci0gX19iZTMyIGRhZGRyOworICBfX3U4IHByb3RvY29sOworICBfX3N1bTE2IGNoZWNrOworICBfX2JlMzIgc2FkZHI7CisgIF9fYmUzMiBkYWRkcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGlwX2F1dGhfaGRyIHsKKyAgX191OCBuZXh0aGRyOworICBfX3U4IGhkcmxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBuZXh0aGRyOwotIF9fdTggaGRybGVuOwotIF9fYmUxNiByZXNlcnZlZDsKLSBfX2JlMzIgc3BpOworICBfX2JlMTYgcmVzZXJ2ZWQ7CisgIF9fYmUzMiBzcGk7CisgIF9fYmUzMiBzZXFfbm87CisgIF9fdTggYXV0aF9kYXRhWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgc2VxX25vOwotIF9fdTggYXV0aF9kYXRhWzBdOwogfTsKIHN0cnVjdCBpcF9lc3BfaGRyIHsKKyAgX19iZTMyIHNwaTsKKyAgX19iZTMyIHNlcV9ubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHNwaTsKLSBfX2JlMzIgc2VxX25vOwotIF9fdTggZW5jX2RhdGFbMF07CisgIF9fdTggZW5jX2RhdGFbMF07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcF9jb21wX2hkciB7Ci0gX191OCBuZXh0aGRyOwotIF9fdTggZmxhZ3M7Ci0gX19iZTE2IGNwaTsKKyAgX191OCBuZXh0aGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBmbGFnczsKKyAgX19iZTE2IGNwaTsKIH07CiBzdHJ1Y3QgaXBfYmVldF9waGRyIHsKLSBfX3U4IG5leHRoZHI7Ci0gX191OCBoZHJsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGFkbGVuOwotIF9fdTggcmVzZXJ2ZWQ7CisgIF9fdTggbmV4dGhkcjsKKyAgX191OCBoZHJsZW47CisgIF9fdTggcGFkbGVuOworICBfX3U4IHJlc2VydmVkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci1lbnVtCitlbnVtIHsKKyAgSVBWNF9ERVZDT05GX0ZPUldBUkRJTkcgPSAxLAorICBJUFY0X0RFVkNPTkZfTUNfRk9SV0FSRElORywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gSVBWNF9ERVZDT05GX0ZPUldBUkRJTkc9MSwKLSBJUFY0X0RFVkNPTkZfTUNfRk9SV0FSRElORywKLSBJUFY0X0RFVkNPTkZfUFJPWFlfQVJQLAorICBJUFY0X0RFVkNPTkZfUFJPWFlfQVJQLAorICBJUFY0X0RFVkNPTkZfQUNDRVBUX1JFRElSRUNUUywKKyAgSVBWNF9ERVZDT05GX1NFQ1VSRV9SRURJUkVDVFMsCisgIElQVjRfREVWQ09ORl9TRU5EX1JFRElSRUNUUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWNF9ERVZDT05GX0FDQ0VQVF9SRURJUkVDVFMsCi0gSVBWNF9ERVZDT05GX1NFQ1VSRV9SRURJUkVDVFMsCi0gSVBWNF9ERVZDT05GX1NFTkRfUkVESVJFQ1RTLAotIElQVjRfREVWQ09ORl9TSEFSRURfTUVESUEsCisgIElQVjRfREVWQ09ORl9TSEFSRURfTUVESUEsCisgIElQVjRfREVWQ09ORl9SUF9GSUxURVIsCisgIElQVjRfREVWQ09ORl9BQ0NFUFRfU09VUkNFX1JPVVRFLAorICBJUFY0X0RFVkNPTkZfQk9PVFBfUkVMQVksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVjRfREVWQ09ORl9SUF9GSUxURVIsCi0gSVBWNF9ERVZDT05GX0FDQ0VQVF9TT1VSQ0VfUk9VVEUsCi0gSVBWNF9ERVZDT05GX0JPT1RQX1JFTEFZLAotIElQVjRfREVWQ09ORl9MT0dfTUFSVElBTlMsCisgIElQVjRfREVWQ09ORl9MT0dfTUFSVElBTlMsCisgIElQVjRfREVWQ09ORl9UQUcsCisgIElQVjRfREVWQ09ORl9BUlBGSUxURVIsCisgIElQVjRfREVWQ09ORl9NRURJVU1fSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVjRfREVWQ09ORl9UQUcsCi0gSVBWNF9ERVZDT05GX0FSUEZJTFRFUiwKLSBJUFY0X0RFVkNPTkZfTUVESVVNX0lELAotIElQVjRfREVWQ09ORl9OT1hGUk0sCisgIElQVjRfREVWQ09ORl9OT1hGUk0sCisgIElQVjRfREVWQ09ORl9OT1BPTElDWSwKKyAgSVBWNF9ERVZDT05GX0ZPUkNFX0lHTVBfVkVSU0lPTiwKKyAgSVBWNF9ERVZDT05GX0FSUF9BTk5PVU5DRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWNF9ERVZDT05GX05PUE9MSUNZLAotIElQVjRfREVWQ09ORl9GT1JDRV9JR01QX1ZFUlNJT04sCi0gSVBWNF9ERVZDT05GX0FSUF9BTk5PVU5DRSwKLSBJUFY0X0RFVkNPTkZfQVJQX0lHTk9SRSwKKyAgSVBWNF9ERVZDT05GX0FSUF9JR05PUkUsCisgIElQVjRfREVWQ09ORl9QUk9NT1RFX1NFQ09OREFSSUVTLAorICBJUFY0X0RFVkNPTkZfQVJQX0FDQ0VQVCwKKyAgSVBWNF9ERVZDT05GX0FSUF9OT1RJRlksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVjRfREVWQ09ORl9QUk9NT1RFX1NFQ09OREFSSUVTLAotIElQVjRfREVWQ09ORl9BUlBfQUNDRVBULAotIElQVjRfREVWQ09ORl9BUlBfTk9USUZZLAotIElQVjRfREVWQ09ORl9BQ0NFUFRfTE9DQUwsCisgIElQVjRfREVWQ09ORl9BQ0NFUFRfTE9DQUwsCisgIElQVjRfREVWQ09ORl9TUkNfVk1BUkssCisgIElQVjRfREVWQ09ORl9QUk9YWV9BUlBfUFZMQU4sCisgIElQVjRfREVWQ09ORl9ST1VURV9MT0NBTE5FVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWNF9ERVZDT05GX1NSQ19WTUFSSywKLSBJUFY0X0RFVkNPTkZfUFJPWFlfQVJQX1BWTEFOLAotIElQVjRfREVWQ09ORl9ST1VURV9MT0NBTE5FVCwKLSBJUFY0X0RFVkNPTkZfSUdNUFYyX1VOU09MSUNJVEVEX1JFUE9SVF9JTlRFUlZBTCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWNF9ERVZDT05GX0lHTVBWM19VTlNPTElDSVRFRF9SRVBPUlRfSU5URVJWQUwsCi0gX19JUFY0X0RFVkNPTkZfTUFYCisgIElQVjRfREVWQ09ORl9JR01QVjJfVU5TT0xJQ0lURURfUkVQT1JUX0lOVEVSVkFMLAorICBJUFY0X0RFVkNPTkZfSUdNUFYzX1VOU09MSUNJVEVEX1JFUE9SVF9JTlRFUlZBTCwKKyAgX19JUFY0X0RFVkNPTkZfTUFYCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBWNF9ERVZDT05GX01BWCAoX19JUFY0X0RFVkNPTkZfTUFYIC0gMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXA2X3R1bm5lbC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcDZfdHVubmVsLmgKaW5kZXggOTZmMTAwNi4uY2ZlZDBjOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcDZfdHVubmVsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcDZfdHVubmVsLmgKQEAgLTMxLDM1ICszMSwzNSBAQAogI2RlZmluZSBJUDZfVE5MX0ZfVVNFX09SSUdfRldNQVJLIDB4MjAKIHN0cnVjdCBpcDZfdG5sX3Bhcm0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5hbWVbSUZOQU1TSVpdOwotIGludCBsaW5rOwotIF9fdTggcHJvdG87Ci0gX191OCBlbmNhcF9saW1pdDsKKyAgY2hhciBuYW1lW0lGTkFNU0laXTsKKyAgaW50IGxpbms7CisgIF9fdTggcHJvdG87CisgIF9fdTggZW5jYXBfbGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaG9wX2xpbWl0OwotIF9fYmUzMiBmbG93aW5mbzsKLSBfX3UzMiBmbGFnczsKLSBzdHJ1Y3QgaW42X2FkZHIgbGFkZHI7CisgIF9fdTggaG9wX2xpbWl0OworICBfX2JlMzIgZmxvd2luZm87CisgIF9fdTMyIGZsYWdzOworICBzdHJ1Y3QgaW42X2FkZHIgbGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpbjZfYWRkciByYWRkcjsKKyAgc3RydWN0IGluNl9hZGRyIHJhZGRyOwogfTsKIHN0cnVjdCBpcDZfdG5sX3Bhcm0yIHsKLSBjaGFyIG5hbWVbSUZOQU1TSVpdOworICBjaGFyIG5hbWVbSUZOQU1TSVpdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbGluazsKLSBfX3U4IHByb3RvOwotIF9fdTggZW5jYXBfbGltaXQ7Ci0gX191OCBob3BfbGltaXQ7CisgIGludCBsaW5rOworICBfX3U4IHByb3RvOworICBfX3U4IGVuY2FwX2xpbWl0OworICBfX3U4IGhvcF9saW1pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGZsb3dpbmZvOwotIF9fdTMyIGZsYWdzOwotIHN0cnVjdCBpbjZfYWRkciBsYWRkcjsKLSBzdHJ1Y3QgaW42X2FkZHIgcmFkZHI7CisgIF9fYmUzMiBmbG93aW5mbzsKKyAgX191MzIgZmxhZ3M7CisgIHN0cnVjdCBpbjZfYWRkciBsYWRkcjsKKyAgc3RydWN0IGluNl9hZGRyIHJhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgaV9mbGFnczsKLSBfX2JlMTYgb19mbGFnczsKLSBfX2JlMzIgaV9rZXk7Ci0gX19iZTMyIG9fa2V5OworICBfX2JlMTYgaV9mbGFnczsKKyAgX19iZTE2IG9fZmxhZ3M7CisgIF9fYmUzMiBpX2tleTsKKyAgX19iZTMyIG9fa2V5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXBfdnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXBfdnMuaAppbmRleCAzYWEwZjg0Li4yMjc0YzRkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwX3ZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcF92cy5oCkBAIC0yMSw3ICsyMSw3IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNkZWZpbmUgSVBfVlNfVkVSU0lPTl9DT0RFIDB4MDEwMjAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBOVkVSU0lPTih2ZXJzaW9uKSAgICh2ZXJzaW9uID4+IDE2KSAmIDB4RkYsICAgKHZlcnNpb24gPj4gOCkgJiAweEZGLCAgIHZlcnNpb24gJiAweEZGCisjZGVmaW5lIE5WRVJTSU9OKHZlcnNpb24pICh2ZXJzaW9uID4+IDE2KSAmIDB4RkYsICh2ZXJzaW9uID4+IDgpICYgMHhGRiwgdmVyc2lvbiAmIDB4RkYKICNkZWZpbmUgSVBfVlNfU1ZDX0ZfUEVSU0lTVEVOVCAweDAwMDEKICNkZWZpbmUgSVBfVlNfU1ZDX0ZfSEFTSEVEIDB4MDAwMgogI2RlZmluZSBJUF9WU19TVkNfRl9PTkVQQUNLRVQgMHgwMDA0CkBAIC0zOCwzOCArMzgsMzggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQX1ZTX1NUQVRFX01BU1RFUiAweDAwMDEKICNkZWZpbmUgSVBfVlNfU1RBVEVfQkFDS1VQIDB4MDAwMgotI2RlZmluZSBJUF9WU19CQVNFX0NUTCAoNjQrMTAyNCs2NCkKKyNkZWZpbmUgSVBfVlNfQkFTRV9DVEwgKDY0ICsgMTAyNCArIDY0KQogI2RlZmluZSBJUF9WU19TT19TRVRfTk9ORSBJUF9WU19CQVNFX0NUTAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVBfVlNfU09fU0VUX0lOU0VSVCAoSVBfVlNfQkFTRV9DVEwrMSkKLSNkZWZpbmUgSVBfVlNfU09fU0VUX0FERCAoSVBfVlNfQkFTRV9DVEwrMikKLSNkZWZpbmUgSVBfVlNfU09fU0VUX0VESVQgKElQX1ZTX0JBU0VfQ1RMKzMpCi0jZGVmaW5lIElQX1ZTX1NPX1NFVF9ERUwgKElQX1ZTX0JBU0VfQ1RMKzQpCisjZGVmaW5lIElQX1ZTX1NPX1NFVF9JTlNFUlQgKElQX1ZTX0JBU0VfQ1RMICsgMSkKKyNkZWZpbmUgSVBfVlNfU09fU0VUX0FERCAoSVBfVlNfQkFTRV9DVEwgKyAyKQorI2RlZmluZSBJUF9WU19TT19TRVRfRURJVCAoSVBfVlNfQkFTRV9DVEwgKyAzKQorI2RlZmluZSBJUF9WU19TT19TRVRfREVMIChJUF9WU19CQVNFX0NUTCArIDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJUF9WU19TT19TRVRfRkxVU0ggKElQX1ZTX0JBU0VfQ1RMKzUpCi0jZGVmaW5lIElQX1ZTX1NPX1NFVF9MSVNUIChJUF9WU19CQVNFX0NUTCs2KQotI2RlZmluZSBJUF9WU19TT19TRVRfQUREREVTVCAoSVBfVlNfQkFTRV9DVEwrNykKLSNkZWZpbmUgSVBfVlNfU09fU0VUX0RFTERFU1QgKElQX1ZTX0JBU0VfQ1RMKzgpCisjZGVmaW5lIElQX1ZTX1NPX1NFVF9GTFVTSCAoSVBfVlNfQkFTRV9DVEwgKyA1KQorI2RlZmluZSBJUF9WU19TT19TRVRfTElTVCAoSVBfVlNfQkFTRV9DVEwgKyA2KQorI2RlZmluZSBJUF9WU19TT19TRVRfQUREREVTVCAoSVBfVlNfQkFTRV9DVEwgKyA3KQorI2RlZmluZSBJUF9WU19TT19TRVRfREVMREVTVCAoSVBfVlNfQkFTRV9DVEwgKyA4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVBfVlNfU09fU0VUX0VESVRERVNUIChJUF9WU19CQVNFX0NUTCs5KQotI2RlZmluZSBJUF9WU19TT19TRVRfVElNRU9VVCAoSVBfVlNfQkFTRV9DVEwrMTApCi0jZGVmaW5lIElQX1ZTX1NPX1NFVF9TVEFSVERBRU1PTiAoSVBfVlNfQkFTRV9DVEwrMTEpCi0jZGVmaW5lIElQX1ZTX1NPX1NFVF9TVE9QREFFTU9OIChJUF9WU19CQVNFX0NUTCsxMikKKyNkZWZpbmUgSVBfVlNfU09fU0VUX0VESVRERVNUIChJUF9WU19CQVNFX0NUTCArIDkpCisjZGVmaW5lIElQX1ZTX1NPX1NFVF9USU1FT1VUIChJUF9WU19CQVNFX0NUTCArIDEwKQorI2RlZmluZSBJUF9WU19TT19TRVRfU1RBUlREQUVNT04gKElQX1ZTX0JBU0VfQ1RMICsgMTEpCisjZGVmaW5lIElQX1ZTX1NPX1NFVF9TVE9QREFFTU9OIChJUF9WU19CQVNFX0NUTCArIDEyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVBfVlNfU09fU0VUX1JFU1RPUkUgKElQX1ZTX0JBU0VfQ1RMKzEzKQotI2RlZmluZSBJUF9WU19TT19TRVRfU0FWRSAoSVBfVlNfQkFTRV9DVEwrMTQpCi0jZGVmaW5lIElQX1ZTX1NPX1NFVF9aRVJPIChJUF9WU19CQVNFX0NUTCsxNSkKKyNkZWZpbmUgSVBfVlNfU09fU0VUX1JFU1RPUkUgKElQX1ZTX0JBU0VfQ1RMICsgMTMpCisjZGVmaW5lIElQX1ZTX1NPX1NFVF9TQVZFIChJUF9WU19CQVNFX0NUTCArIDE0KQorI2RlZmluZSBJUF9WU19TT19TRVRfWkVSTyAoSVBfVlNfQkFTRV9DVEwgKyAxNSkKICNkZWZpbmUgSVBfVlNfU09fU0VUX01BWCBJUF9WU19TT19TRVRfWkVSTwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBfVlNfU09fR0VUX1ZFUlNJT04gSVBfVlNfQkFTRV9DVEwKLSNkZWZpbmUgSVBfVlNfU09fR0VUX0lORk8gKElQX1ZTX0JBU0VfQ1RMKzEpCi0jZGVmaW5lIElQX1ZTX1NPX0dFVF9TRVJWSUNFUyAoSVBfVlNfQkFTRV9DVEwrMikKLSNkZWZpbmUgSVBfVlNfU09fR0VUX1NFUlZJQ0UgKElQX1ZTX0JBU0VfQ1RMKzMpCisjZGVmaW5lIElQX1ZTX1NPX0dFVF9JTkZPIChJUF9WU19CQVNFX0NUTCArIDEpCisjZGVmaW5lIElQX1ZTX1NPX0dFVF9TRVJWSUNFUyAoSVBfVlNfQkFTRV9DVEwgKyAyKQorI2RlZmluZSBJUF9WU19TT19HRVRfU0VSVklDRSAoSVBfVlNfQkFTRV9DVEwgKyAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVBfVlNfU09fR0VUX0RFU1RTIChJUF9WU19CQVNFX0NUTCs0KQotI2RlZmluZSBJUF9WU19TT19HRVRfREVTVCAoSVBfVlNfQkFTRV9DVEwrNSkKLSNkZWZpbmUgSVBfVlNfU09fR0VUX1RJTUVPVVQgKElQX1ZTX0JBU0VfQ1RMKzYpCi0jZGVmaW5lIElQX1ZTX1NPX0dFVF9EQUVNT04gKElQX1ZTX0JBU0VfQ1RMKzcpCisjZGVmaW5lIElQX1ZTX1NPX0dFVF9ERVNUUyAoSVBfVlNfQkFTRV9DVEwgKyA0KQorI2RlZmluZSBJUF9WU19TT19HRVRfREVTVCAoSVBfVlNfQkFTRV9DVEwgKyA1KQorI2RlZmluZSBJUF9WU19TT19HRVRfVElNRU9VVCAoSVBfVlNfQkFTRV9DVEwgKyA2KQorI2RlZmluZSBJUF9WU19TT19HRVRfREFFTU9OIChJUF9WU19CQVNFX0NUTCArIDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUF9WU19TT19HRVRfTUFYIElQX1ZTX1NPX0dFVF9EQUVNT04KICNkZWZpbmUgSVBfVlNfQ09OTl9GX0ZXRF9NQVNLIDB4MDAwNwpAQCAtOTIsMjQwICs5MiwyNDIgQEAKICNkZWZpbmUgSVBfVlNfQ09OTl9GX1RFTVBMQVRFIDB4MTAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBfVlNfQ09OTl9GX09ORV9QQUNLRVQgMHgyMDAwCi0jZGVmaW5lIElQX1ZTX0NPTk5fRl9CQUNLVVBfTUFTSyAoSVBfVlNfQ09OTl9GX0ZXRF9NQVNLIHwgICBJUF9WU19DT05OX0ZfTk9PVVRQVVQgfCAgIElQX1ZTX0NPTk5fRl9JTkFDVElWRSB8ICAgSVBfVlNfQ09OTl9GX1NFUV9NQVNLIHwgICBJUF9WU19DT05OX0ZfTk9fQ1BPUlQgfCAgIElQX1ZTX0NPTk5fRl9URU1QTEFURSAgICkKLSNkZWZpbmUgSVBfVlNfQ09OTl9GX0JBQ0tVUF9VUERfTUFTSyAoSVBfVlNfQ09OTl9GX0lOQUNUSVZFIHwgICBJUF9WU19DT05OX0ZfU0VRX01BU0spCisjZGVmaW5lIElQX1ZTX0NPTk5fRl9CQUNLVVBfTUFTSyAoSVBfVlNfQ09OTl9GX0ZXRF9NQVNLIHwgSVBfVlNfQ09OTl9GX05PT1VUUFVUIHwgSVBfVlNfQ09OTl9GX0lOQUNUSVZFIHwgSVBfVlNfQ09OTl9GX1NFUV9NQVNLIHwgSVBfVlNfQ09OTl9GX05PX0NQT1JUIHwgSVBfVlNfQ09OTl9GX1RFTVBMQVRFKQorI2RlZmluZSBJUF9WU19DT05OX0ZfQkFDS1VQX1VQRF9NQVNLIChJUF9WU19DT05OX0ZfSU5BQ1RJVkUgfCBJUF9WU19DT05OX0ZfU0VRX01BU0spCiAjZGVmaW5lIElQX1ZTX0NPTk5fRl9ORkNUICgxIDw8IDE2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVBfVlNfQ09OTl9GX0RFU1RfTUFTSyAoSVBfVlNfQ09OTl9GX0ZXRF9NQVNLIHwgICBJUF9WU19DT05OX0ZfT05FX1BBQ0tFVCB8ICAgSVBfVlNfQ09OTl9GX05GQ1QgfCAgIDApCisjZGVmaW5lIElQX1ZTX0NPTk5fRl9ERVNUX01BU0sgKElQX1ZTX0NPTk5fRl9GV0RfTUFTSyB8IElQX1ZTX0NPTk5fRl9PTkVfUEFDS0VUIHwgSVBfVlNfQ09OTl9GX05GQ1QgfCAwKQogI2RlZmluZSBJUF9WU19TQ0hFRE5BTUVfTUFYTEVOIDE2CiAjZGVmaW5lIElQX1ZTX1BFTkFNRV9NQVhMRU4gMTYKICNkZWZpbmUgSVBfVlNfSUZOQU1FX01BWExFTiAxNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBfVlNfUEVEQVRBX01BWExFTiAyNTUKIHN0cnVjdCBpcF92c19zZXJ2aWNlX3VzZXIgewotIF9fdTE2IHByb3RvY29sOwotIF9fYmUzMiBhZGRyOworICBfX3UxNiBwcm90b2NvbDsKKyAgX19iZTMyIGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBwb3J0OwotIF9fdTMyIGZ3bWFyazsKLSBjaGFyIHNjaGVkX25hbWVbSVBfVlNfU0NIRUROQU1FX01BWExFTl07Ci0gdW5zaWduZWQgaW50IGZsYWdzOworICBfX2JlMTYgcG9ydDsKKyAgX191MzIgZndtYXJrOworICBjaGFyIHNjaGVkX25hbWVbSVBfVlNfU0NIRUROQU1FX01BWExFTl07CisgIHVuc2lnbmVkIGludCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHRpbWVvdXQ7Ci0gX19iZTMyIG5ldG1hc2s7CisgIHVuc2lnbmVkIGludCB0aW1lb3V0OworICBfX2JlMzIgbmV0bWFzazsKIH07CiBzdHJ1Y3QgaXBfdnNfZGVzdF91c2VyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGFkZHI7Ci0gX19iZTE2IHBvcnQ7Ci0gdW5zaWduZWQgaW50IGNvbm5fZmxhZ3M7Ci0gaW50IHdlaWdodDsKKyAgX19iZTMyIGFkZHI7CisgIF9fYmUxNiBwb3J0OworICB1bnNpZ25lZCBpbnQgY29ubl9mbGFnczsKKyAgaW50IHdlaWdodDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdV90aHJlc2hvbGQ7Ci0gX191MzIgbF90aHJlc2hvbGQ7CisgIF9fdTMyIHVfdGhyZXNob2xkOworICBfX3UzMiBsX3RocmVzaG9sZDsKIH07CiBzdHJ1Y3QgaXBfdnNfc3RhdHNfdXNlciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNvbm5zOwotIF9fdTMyIGlucGt0czsKLSBfX3UzMiBvdXRwa3RzOwotIF9fdTY0IGluYnl0ZXM7CisgIF9fdTMyIGNvbm5zOworICBfX3UzMiBpbnBrdHM7CisgIF9fdTMyIG91dHBrdHM7CisgIF9fdTY0IGluYnl0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG91dGJ5dGVzOwotIF9fdTMyIGNwczsKLSBfX3UzMiBpbnBwczsKLSBfX3UzMiBvdXRwcHM7CisgIF9fdTY0IG91dGJ5dGVzOworICBfX3UzMiBjcHM7CisgIF9fdTMyIGlucHBzOworICBfX3UzMiBvdXRwcHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGluYnBzOwotIF9fdTMyIG91dGJwczsKKyAgX191MzIgaW5icHM7CisgIF9fdTMyIG91dGJwczsKIH07CiBzdHJ1Y3QgaXBfdnNfZ2V0aW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB2ZXJzaW9uOwotIHVuc2lnbmVkIGludCBzaXplOwotIHVuc2lnbmVkIGludCBudW1fc2VydmljZXM7CisgIHVuc2lnbmVkIGludCB2ZXJzaW9uOworICB1bnNpZ25lZCBpbnQgc2l6ZTsKKyAgdW5zaWduZWQgaW50IG51bV9zZXJ2aWNlczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwX3ZzX3NlcnZpY2VfZW50cnkgewotIF9fdTE2IHByb3RvY29sOwotIF9fYmUzMiBhZGRyOwotIF9fYmUxNiBwb3J0OworICBfX3UxNiBwcm90b2NvbDsKKyAgX19iZTMyIGFkZHI7CisgIF9fYmUxNiBwb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmd21hcms7Ci0gY2hhciBzY2hlZF9uYW1lW0lQX1ZTX1NDSEVETkFNRV9NQVhMRU5dOwotIHVuc2lnbmVkIGludCBmbGFnczsKLSB1bnNpZ25lZCBpbnQgdGltZW91dDsKKyAgX191MzIgZndtYXJrOworICBjaGFyIHNjaGVkX25hbWVbSVBfVlNfU0NIRUROQU1FX01BWExFTl07CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgaW50IHRpbWVvdXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBuZXRtYXNrOwotIHVuc2lnbmVkIGludCBudW1fZGVzdHM7Ci0gc3RydWN0IGlwX3ZzX3N0YXRzX3VzZXIgc3RhdHM7CisgIF9fYmUzMiBuZXRtYXNrOworICB1bnNpZ25lZCBpbnQgbnVtX2Rlc3RzOworICBzdHJ1Y3QgaXBfdnNfc3RhdHNfdXNlciBzdGF0czsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwX3ZzX2Rlc3RfZW50cnkgewotIF9fYmUzMiBhZGRyOwotIF9fYmUxNiBwb3J0OwotIHVuc2lnbmVkIGludCBjb25uX2ZsYWdzOworICBfX2JlMzIgYWRkcjsKKyAgX19iZTE2IHBvcnQ7CisgIHVuc2lnbmVkIGludCBjb25uX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgd2VpZ2h0OwotIF9fdTMyIHVfdGhyZXNob2xkOwotIF9fdTMyIGxfdGhyZXNob2xkOwotIF9fdTMyIGFjdGl2ZWNvbm5zOworICBpbnQgd2VpZ2h0OworICBfX3UzMiB1X3RocmVzaG9sZDsKKyAgX191MzIgbF90aHJlc2hvbGQ7CisgIF9fdTMyIGFjdGl2ZWNvbm5zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbmFjdGNvbm5zOwotIF9fdTMyIHBlcnNpc3Rjb25uczsKLSBzdHJ1Y3QgaXBfdnNfc3RhdHNfdXNlciBzdGF0czsKKyAgX191MzIgaW5hY3Rjb25uczsKKyAgX191MzIgcGVyc2lzdGNvbm5zOworICBzdHJ1Y3QgaXBfdnNfc3RhdHNfdXNlciBzdGF0czsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwX3ZzX2dldF9kZXN0cyB7Ci0gX191MTYgcHJvdG9jb2w7Ci0gX19iZTMyIGFkZHI7Ci0gX19iZTE2IHBvcnQ7CisgIF9fdTE2IHByb3RvY29sOworICBfX2JlMzIgYWRkcjsKKyAgX19iZTE2IHBvcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZ3bWFyazsKLSB1bnNpZ25lZCBpbnQgbnVtX2Rlc3RzOwotIHN0cnVjdCBpcF92c19kZXN0X2VudHJ5IGVudHJ5dGFibGVbMF07CisgIF9fdTMyIGZ3bWFyazsKKyAgdW5zaWduZWQgaW50IG51bV9kZXN0czsKKyAgc3RydWN0IGlwX3ZzX2Rlc3RfZW50cnkgZW50cnl0YWJsZVswXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwX3ZzX2dldF9zZXJ2aWNlcyB7Ci0gdW5zaWduZWQgaW50IG51bV9zZXJ2aWNlczsKLSBzdHJ1Y3QgaXBfdnNfc2VydmljZV9lbnRyeSBlbnRyeXRhYmxlWzBdOworICB1bnNpZ25lZCBpbnQgbnVtX3NlcnZpY2VzOworICBzdHJ1Y3QgaXBfdnNfc2VydmljZV9lbnRyeSBlbnRyeXRhYmxlWzBdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXBfdnNfdGltZW91dF91c2VyIHsKLSBpbnQgdGNwX3RpbWVvdXQ7Ci0gaW50IHRjcF9maW5fdGltZW91dDsKLSBpbnQgdWRwX3RpbWVvdXQ7CisgIGludCB0Y3BfdGltZW91dDsKKyAgaW50IHRjcF9maW5fdGltZW91dDsKKyAgaW50IHVkcF90aW1lb3V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaXBfdnNfZGFlbW9uX3VzZXIgewotIGludCBzdGF0ZTsKLSBjaGFyIG1jYXN0X2lmbltJUF9WU19JRk5BTUVfTUFYTEVOXTsKKyAgaW50IHN0YXRlOworICBjaGFyIG1jYXN0X2lmbltJUF9WU19JRk5BTUVfTUFYTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHN5bmNpZDsKKyAgaW50IHN5bmNpZDsKIH07CiAjZGVmaW5lIElQVlNfR0VOTF9OQU1FICJJUFZTIgogI2RlZmluZSBJUFZTX0dFTkxfVkVSU0lPTiAweDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXBfdnNfZmxhZ3MgewotIF9fdTMyIGZsYWdzOwotIF9fdTMyIG1hc2s7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBtYXNrOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJUFZTX0NNRF9VTlNQRUMgPSAwLAotIElQVlNfQ01EX05FV19TRVJWSUNFLAotIElQVlNfQ01EX1NFVF9TRVJWSUNFLAorICBJUFZTX0NNRF9VTlNQRUMgPSAwLAorICBJUFZTX0NNRF9ORVdfU0VSVklDRSwKKyAgSVBWU19DTURfU0VUX1NFUlZJQ0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVlNfQ01EX0RFTF9TRVJWSUNFLAotIElQVlNfQ01EX0dFVF9TRVJWSUNFLAotIElQVlNfQ01EX05FV19ERVNULAotIElQVlNfQ01EX1NFVF9ERVNULAorICBJUFZTX0NNRF9ERUxfU0VSVklDRSwKKyAgSVBWU19DTURfR0VUX1NFUlZJQ0UsCisgIElQVlNfQ01EX05FV19ERVNULAorICBJUFZTX0NNRF9TRVRfREVTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWU19DTURfREVMX0RFU1QsCi0gSVBWU19DTURfR0VUX0RFU1QsCi0gSVBWU19DTURfTkVXX0RBRU1PTiwKLSBJUFZTX0NNRF9ERUxfREFFTU9OLAorICBJUFZTX0NNRF9ERUxfREVTVCwKKyAgSVBWU19DTURfR0VUX0RFU1QsCisgIElQVlNfQ01EX05FV19EQUVNT04sCisgIElQVlNfQ01EX0RFTF9EQUVNT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVlNfQ01EX0dFVF9EQUVNT04sCi0gSVBWU19DTURfU0VUX0NPTkZJRywKLSBJUFZTX0NNRF9HRVRfQ09ORklHLAotIElQVlNfQ01EX1NFVF9JTkZPLAorICBJUFZTX0NNRF9HRVRfREFFTU9OLAorICBJUFZTX0NNRF9TRVRfQ09ORklHLAorICBJUFZTX0NNRF9HRVRfQ09ORklHLAorICBJUFZTX0NNRF9TRVRfSU5GTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWU19DTURfR0VUX0lORk8sCi0gSVBWU19DTURfWkVSTywKLSBJUFZTX0NNRF9GTFVTSCwKLSBfX0lQVlNfQ01EX01BWCwKKyAgSVBWU19DTURfR0VUX0lORk8sCisgIElQVlNfQ01EX1pFUk8sCisgIElQVlNfQ01EX0ZMVVNILAorICBfX0lQVlNfQ01EX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBJUFZTX0NNRF9NQVggKF9fSVBWU19DTURfTUFYIC0gMSkKIGVudW0gewotIElQVlNfQ01EX0FUVFJfVU5TUEVDID0gMCwKKyAgSVBWU19DTURfQVRUUl9VTlNQRUMgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFZTX0NNRF9BVFRSX1NFUlZJQ0UsCi0gSVBWU19DTURfQVRUUl9ERVNULAotIElQVlNfQ01EX0FUVFJfREFFTU9OLAotIElQVlNfQ01EX0FUVFJfVElNRU9VVF9UQ1AsCisgIElQVlNfQ01EX0FUVFJfU0VSVklDRSwKKyAgSVBWU19DTURfQVRUUl9ERVNULAorICBJUFZTX0NNRF9BVFRSX0RBRU1PTiwKKyAgSVBWU19DTURfQVRUUl9USU1FT1VUX1RDUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWU19DTURfQVRUUl9USU1FT1VUX1RDUF9GSU4sCi0gSVBWU19DTURfQVRUUl9USU1FT1VUX1VEUCwKLSBfX0lQVlNfQ01EX0FUVFJfTUFYLAorICBJUFZTX0NNRF9BVFRSX1RJTUVPVVRfVENQX0ZJTiwKKyAgSVBWU19DTURfQVRUUl9USU1FT1VUX1VEUCwKKyAgX19JUFZTX0NNRF9BVFRSX01BWCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFZTX0NNRF9BVFRSX01BWCAoX19JUFZTX0NNRF9BVFRSX01BWCAtIDEpCiBlbnVtIHsKLSBJUFZTX1NWQ19BVFRSX1VOU1BFQyA9IDAsCi0gSVBWU19TVkNfQVRUUl9BRiwKKyAgSVBWU19TVkNfQVRUUl9VTlNQRUMgPSAwLAorICBJUFZTX1NWQ19BVFRSX0FGLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFZTX1NWQ19BVFRSX1BST1RPQ09MLAotIElQVlNfU1ZDX0FUVFJfQUREUiwKLSBJUFZTX1NWQ19BVFRSX1BPUlQsCi0gSVBWU19TVkNfQVRUUl9GV01BUkssCisgIElQVlNfU1ZDX0FUVFJfUFJPVE9DT0wsCisgIElQVlNfU1ZDX0FUVFJfQUREUiwKKyAgSVBWU19TVkNfQVRUUl9QT1JULAorICBJUFZTX1NWQ19BVFRSX0ZXTUFSSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWU19TVkNfQVRUUl9TQ0hFRF9OQU1FLAotIElQVlNfU1ZDX0FUVFJfRkxBR1MsCi0gSVBWU19TVkNfQVRUUl9USU1FT1VULAotIElQVlNfU1ZDX0FUVFJfTkVUTUFTSywKKyAgSVBWU19TVkNfQVRUUl9TQ0hFRF9OQU1FLAorICBJUFZTX1NWQ19BVFRSX0ZMQUdTLAorICBJUFZTX1NWQ19BVFRSX1RJTUVPVVQsCisgIElQVlNfU1ZDX0FUVFJfTkVUTUFTSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWU19TVkNfQVRUUl9TVEFUUywKLSBJUFZTX1NWQ19BVFRSX1BFX05BTUUsCi0gX19JUFZTX1NWQ19BVFRSX01BWCwKKyAgSVBWU19TVkNfQVRUUl9TVEFUUywKKyAgSVBWU19TVkNfQVRUUl9QRV9OQU1FLAorICBfX0lQVlNfU1ZDX0FUVFJfTUFYLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVlNfU1ZDX0FUVFJfTUFYIChfX0lQVlNfU1ZDX0FUVFJfTUFYIC0gMSkKIGVudW0gewotIElQVlNfREVTVF9BVFRSX1VOU1BFQyA9IDAsCi0gSVBWU19ERVNUX0FUVFJfQUREUiwKKyAgSVBWU19ERVNUX0FUVFJfVU5TUEVDID0gMCwKKyAgSVBWU19ERVNUX0FUVFJfQUREUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWU19ERVNUX0FUVFJfUE9SVCwKLSBJUFZTX0RFU1RfQVRUUl9GV0RfTUVUSE9ELAotIElQVlNfREVTVF9BVFRSX1dFSUdIVCwKLSBJUFZTX0RFU1RfQVRUUl9VX1RIUkVTSCwKKyAgSVBWU19ERVNUX0FUVFJfUE9SVCwKKyAgSVBWU19ERVNUX0FUVFJfRldEX01FVEhPRCwKKyAgSVBWU19ERVNUX0FUVFJfV0VJR0hULAorICBJUFZTX0RFU1RfQVRUUl9VX1RIUkVTSCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWU19ERVNUX0FUVFJfTF9USFJFU0gsCi0gSVBWU19ERVNUX0FUVFJfQUNUSVZFX0NPTk5TLAotIElQVlNfREVTVF9BVFRSX0lOQUNUX0NPTk5TLAotIElQVlNfREVTVF9BVFRSX1BFUlNJU1RfQ09OTlMsCisgIElQVlNfREVTVF9BVFRSX0xfVEhSRVNILAorICBJUFZTX0RFU1RfQVRUUl9BQ1RJVkVfQ09OTlMsCisgIElQVlNfREVTVF9BVFRSX0lOQUNUX0NPTk5TLAorICBJUFZTX0RFU1RfQVRUUl9QRVJTSVNUX0NPTk5TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFZTX0RFU1RfQVRUUl9TVEFUUywKLSBfX0lQVlNfREVTVF9BVFRSX01BWCwKKyAgSVBWU19ERVNUX0FUVFJfU1RBVFMsCisgIElQVlNfREVTVF9BVFRSX0FERFJfRkFNSUxZLAorICBfX0lQVlNfREVTVF9BVFRSX01BWCwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFZTX0RFU1RfQVRUUl9NQVggKF9fSVBWU19ERVNUX0FUVFJfTUFYIC0gMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJUFZTX0RBRU1PTl9BVFRSX1VOU1BFQyA9IDAsCi0gSVBWU19EQUVNT05fQVRUUl9TVEFURSwKLSBJUFZTX0RBRU1PTl9BVFRSX01DQVNUX0lGTiwKKyAgSVBWU19EQUVNT05fQVRUUl9VTlNQRUMgPSAwLAorICBJUFZTX0RBRU1PTl9BVFRSX1NUQVRFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFZTX0RBRU1PTl9BVFRSX1NZTkNfSUQsCi0gX19JUFZTX0RBRU1PTl9BVFRSX01BWCwKKyAgSVBWU19EQUVNT05fQVRUUl9NQ0FTVF9JRk4sCisgIElQVlNfREFFTU9OX0FUVFJfU1lOQ19JRCwKKyAgX19JUFZTX0RBRU1PTl9BVFRSX01BWCwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFZTX0RBRU1PTl9BVFRSX01BWCAoX19JUFZTX0RBRU1PTl9BVFRSX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gSVBWU19TVEFUU19BVFRSX1VOU1BFQyA9IDAsCi0gSVBWU19TVEFUU19BVFRSX0NPTk5TLAotIElQVlNfU1RBVFNfQVRUUl9JTlBLVFMsCisgIElQVlNfU1RBVFNfQVRUUl9VTlNQRUMgPSAwLAorICBJUFZTX1NUQVRTX0FUVFJfQ09OTlMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVlNfU1RBVFNfQVRUUl9PVVRQS1RTLAotIElQVlNfU1RBVFNfQVRUUl9JTkJZVEVTLAotIElQVlNfU1RBVFNfQVRUUl9PVVRCWVRFUywKLSBJUFZTX1NUQVRTX0FUVFJfQ1BTLAorICBJUFZTX1NUQVRTX0FUVFJfSU5QS1RTLAorICBJUFZTX1NUQVRTX0FUVFJfT1VUUEtUUywKKyAgSVBWU19TVEFUU19BVFRSX0lOQllURVMsCisgIElQVlNfU1RBVFNfQVRUUl9PVVRCWVRFUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBWU19TVEFUU19BVFRSX0lOUFBTLAotIElQVlNfU1RBVFNfQVRUUl9PVVRQUFMsCi0gSVBWU19TVEFUU19BVFRSX0lOQlBTLAotIElQVlNfU1RBVFNfQVRUUl9PVVRCUFMsCisgIElQVlNfU1RBVFNfQVRUUl9DUFMsCisgIElQVlNfU1RBVFNfQVRUUl9JTlBQUywKKyAgSVBWU19TVEFUU19BVFRSX09VVFBQUywKKyAgSVBWU19TVEFUU19BVFRSX0lOQlBTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0lQVlNfU1RBVFNfQVRUUl9NQVgsCisgIElQVlNfU1RBVFNfQVRUUl9PVVRCUFMsCisgIF9fSVBWU19TVEFUU19BVFRSX01BWCwKIH07CiAjZGVmaW5lIElQVlNfU1RBVFNfQVRUUl9NQVggKF9fSVBWU19TVEFUU19BVFRSX01BWCAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7CisgIElQVlNfSU5GT19BVFRSX1VOU1BFQyA9IDAsCisgIElQVlNfSU5GT19BVFRSX1ZFUlNJT04sCisgIElQVlNfSU5GT19BVFRSX0NPTk5fVEFCX1NJWkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVlNfSU5GT19BVFRSX1VOU1BFQyA9IDAsCi0gSVBWU19JTkZPX0FUVFJfVkVSU0lPTiwKLSBJUFZTX0lORk9fQVRUUl9DT05OX1RBQl9TSVpFLAotIF9fSVBWU19JTkZPX0FUVFJfTUFYLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19JUFZTX0lORk9fQVRUUl9NQVgsCiB9OwogI2RlZmluZSBJUFZTX0lORk9fQVRUUl9NQVggKF9fSVBWU19JTkZPX0FUVFJfTUFYIC0gMSkKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXBjLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwYy5oCmluZGV4IDMzN2VhNzcuLjY3MzQ1Y2UgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXBjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcGMuaApAQCAtMjEsNTQgKzIxLDUzIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNkZWZpbmUgSVBDX1BSSVZBVEUgKChfX2tlcm5lbF9rZXlfdCkgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgaXBjX3Blcm0KLXsKLSBfX2tlcm5lbF9rZXlfdCBrZXk7Ci0gX19rZXJuZWxfdWlkX3QgdWlkOworc3RydWN0IGlwY19wZXJtIHsKKyAgX19rZXJuZWxfa2V5X3Qga2V5OworICBfX2tlcm5lbF91aWRfdCB1aWQ7CisgIF9fa2VybmVsX2dpZF90IGdpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfZ2lkX3QgZ2lkOwotIF9fa2VybmVsX3VpZF90IGN1aWQ7Ci0gX19rZXJuZWxfZ2lkX3QgY2dpZDsKLSBfX2tlcm5lbF9tb2RlX3QgbW9kZTsKKyAgX19rZXJuZWxfdWlkX3QgY3VpZDsKKyAgX19rZXJuZWxfZ2lkX3QgY2dpZDsKKyAgX19rZXJuZWxfbW9kZV90IG1vZGU7CisgIHVuc2lnbmVkIHNob3J0IHNlcTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgc2VxOwogfTsKICNpbmNsdWRlIDxhc20vaXBjYnVmLmg+CiAjZGVmaW5lIElQQ19DUkVBVCAwMDAwMTAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBDX0VYQ0wgMDAwMDIwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQQ19OT1dBSVQgMDAwMDQwMDAKICNkZWZpbmUgSVBDX0RJUEMgMDAwMTAwMDAKICNkZWZpbmUgSVBDX09XTiAwMDAyMDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBDX1JNSUQgMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBDX1NFVCAxCiAjZGVmaW5lIElQQ19TVEFUIDIKICNkZWZpbmUgSVBDX0lORk8gMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBDX09MRCAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUENfNjQgMHgwMTAwCiBzdHJ1Y3QgaXBjX2tsdWRnZSB7Ci0gc3RydWN0IG1zZ2J1ZiBfX3VzZXIgKm1zZ3A7CisgIHN0cnVjdCBtc2didWYgX191c2VyICogbXNncDsKKyAgbG9uZyBtc2d0eXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgbXNndHlwOwogfTsKICNkZWZpbmUgU0VNT1AgMQogI2RlZmluZSBTRU1HRVQgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VNQ1RMIDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFTVRJTUVET1AgNAogI2RlZmluZSBNU0dTTkQgMTEKICNkZWZpbmUgTVNHUkNWIDEyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU0dHRVQgMTMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1TR0NUTCAxNAogI2RlZmluZSBTSE1BVCAyMQogI2RlZmluZSBTSE1EVCAyMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0hNR0VUIDIzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTSE1DVEwgMjQKICNkZWZpbmUgRElQQyAyNQotI2RlZmluZSBJUENDQUxMKHZlcnNpb24sb3ApICgodmVyc2lvbik8PDE2IHwgKG9wKSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIElQQ0NBTEwodmVyc2lvbixvcCkgKCh2ZXJzaW9uKSA8PCAxNiB8IChvcCkpCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwbWkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXBtaS5oCmluZGV4IDVlZGMxMTguLmRkMWIwYWQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXBtaS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXBtaS5oCkBAIC0yMyw1OCArMjMsNTggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQTUlfTUFYX0FERFJfU0laRSAzMgogc3RydWN0IGlwbWlfYWRkciB7Ci0gaW50IGFkZHJfdHlwZTsKLSBzaG9ydCBjaGFubmVsOworICBpbnQgYWRkcl90eXBlOworICBzaG9ydCBjaGFubmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGRhdGFbSVBNSV9NQVhfQUREUl9TSVpFXTsKKyAgY2hhciBkYXRhW0lQTUlfTUFYX0FERFJfU0laRV07CiB9OwogI2RlZmluZSBJUE1JX1NZU1RFTV9JTlRFUkZBQ0VfQUREUl9UWVBFIDB4MGMKIHN0cnVjdCBpcG1pX3N5c3RlbV9pbnRlcmZhY2VfYWRkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBhZGRyX3R5cGU7Ci0gc2hvcnQgY2hhbm5lbDsKLSB1bnNpZ25lZCBjaGFyIGx1bjsKKyAgaW50IGFkZHJfdHlwZTsKKyAgc2hvcnQgY2hhbm5lbDsKKyAgdW5zaWduZWQgY2hhciBsdW47CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBNSV9JUE1CX0FERFJfVFlQRSAweDAxCiAjZGVmaW5lIElQTUlfSVBNQl9CUk9BRENBU1RfQUREUl9UWVBFIDB4NDEKIHN0cnVjdCBpcG1pX2lwbWJfYWRkciB7Ci0gaW50IGFkZHJfdHlwZTsKKyAgaW50IGFkZHJfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgY2hhbm5lbDsKLSB1bnNpZ25lZCBjaGFyIHNsYXZlX2FkZHI7Ci0gdW5zaWduZWQgY2hhciBsdW47CisgIHNob3J0IGNoYW5uZWw7CisgIHVuc2lnbmVkIGNoYXIgc2xhdmVfYWRkcjsKKyAgdW5zaWduZWQgY2hhciBsdW47CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBNSV9MQU5fQUREUl9UWVBFIDB4MDQKIHN0cnVjdCBpcG1pX2xhbl9hZGRyIHsKLSBpbnQgYWRkcl90eXBlOwotIHNob3J0IGNoYW5uZWw7CisgIGludCBhZGRyX3R5cGU7CisgIHNob3J0IGNoYW5uZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcHJpdmlsZWdlOwotIHVuc2lnbmVkIGNoYXIgc2Vzc2lvbl9oYW5kbGU7Ci0gdW5zaWduZWQgY2hhciByZW1vdGVfU1dJRDsKLSB1bnNpZ25lZCBjaGFyIGxvY2FsX1NXSUQ7CisgIHVuc2lnbmVkIGNoYXIgcHJpdmlsZWdlOworICB1bnNpZ25lZCBjaGFyIHNlc3Npb25faGFuZGxlOworICB1bnNpZ25lZCBjaGFyIHJlbW90ZV9TV0lEOworICB1bnNpZ25lZCBjaGFyIGxvY2FsX1NXSUQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgbHVuOworICB1bnNpZ25lZCBjaGFyIGx1bjsKIH07CiAjZGVmaW5lIElQTUlfQk1DX0NIQU5ORUwgMHhmCiAjZGVmaW5lIElQTUlfTlVNX0NIQU5ORUxTIDB4MTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQTUlfQ0hBTl9BTEwgKH4wKQogc3RydWN0IGlwbWlfbXNnIHsKLSB1bnNpZ25lZCBjaGFyIG5ldGZuOwotIHVuc2lnbmVkIGNoYXIgY21kOworICB1bnNpZ25lZCBjaGFyIG5ldGZuOworICB1bnNpZ25lZCBjaGFyIGNtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgZGF0YV9sZW47Ci0gdW5zaWduZWQgY2hhciBfX3VzZXIgKmRhdGE7CisgIHVuc2lnbmVkIHNob3J0IGRhdGFfbGVuOworICB1bnNpZ25lZCBjaGFyIF9fdXNlciAqIGRhdGE7CiB9Owogc3RydWN0IGtlcm5lbF9pcG1pX21zZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgbmV0Zm47Ci0gdW5zaWduZWQgY2hhciBjbWQ7Ci0gdW5zaWduZWQgc2hvcnQgZGF0YV9sZW47Ci0gdW5zaWduZWQgY2hhciAqZGF0YTsKKyAgdW5zaWduZWQgY2hhciBuZXRmbjsKKyAgdW5zaWduZWQgY2hhciBjbWQ7CisgIHVuc2lnbmVkIHNob3J0IGRhdGFfbGVuOworICB1bnNpZ25lZCBjaGFyICogZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBJUE1JX0lOVkFMSURfQ01EX0NPTVBMRVRJT05fQ09ERSAweEMxCkBAIC05Myw3MiArOTMsNzIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQTUlfSU9DX01BR0lDICdpJwogc3RydWN0IGlwbWlfcmVxIHsKLSB1bnNpZ25lZCBjaGFyIF9fdXNlciAqYWRkcjsKLSB1bnNpZ25lZCBpbnQgYWRkcl9sZW47CisgIHVuc2lnbmVkIGNoYXIgX191c2VyICogYWRkcjsKKyAgdW5zaWduZWQgaW50IGFkZHJfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIG1zZ2lkOwotIHN0cnVjdCBpcG1pX21zZyBtc2c7CisgIGxvbmcgbXNnaWQ7CisgIHN0cnVjdCBpcG1pX21zZyBtc2c7CiB9OwotI2RlZmluZSBJUE1JQ1RMX1NFTkRfQ09NTUFORCBfSU9SKElQTUlfSU9DX01BR0lDLCAxMywgICBzdHJ1Y3QgaXBtaV9yZXEpCisjZGVmaW5lIElQTUlDVExfU0VORF9DT01NQU5EIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDEzLCBzdHJ1Y3QgaXBtaV9yZXEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwbWlfcmVxX3NldHRpbWUgewotIHN0cnVjdCBpcG1pX3JlcSByZXE7Ci0gaW50IHJldHJpZXM7Ci0gdW5zaWduZWQgaW50IHJldHJ5X3RpbWVfbXM7CisgIHN0cnVjdCBpcG1pX3JlcSByZXE7CisgIGludCByZXRyaWVzOworICB1bnNpZ25lZCBpbnQgcmV0cnlfdGltZV9tczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBJUE1JQ1RMX1NFTkRfQ09NTUFORF9TRVRUSU1FIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDIxLCAgIHN0cnVjdCBpcG1pX3JlcV9zZXR0aW1lKQorI2RlZmluZSBJUE1JQ1RMX1NFTkRfQ09NTUFORF9TRVRUSU1FIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDIxLCBzdHJ1Y3QgaXBtaV9yZXFfc2V0dGltZSkKIHN0cnVjdCBpcG1pX3JlY3YgewotIGludCByZWN2X3R5cGU7CisgIGludCByZWN2X3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgX191c2VyICphZGRyOwotIHVuc2lnbmVkIGludCBhZGRyX2xlbjsKLSBsb25nIG1zZ2lkOwotIHN0cnVjdCBpcG1pX21zZyBtc2c7CisgIHVuc2lnbmVkIGNoYXIgX191c2VyICogYWRkcjsKKyAgdW5zaWduZWQgaW50IGFkZHJfbGVuOworICBsb25nIG1zZ2lkOworICBzdHJ1Y3QgaXBtaV9tc2cgbXNnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIElQTUlDVExfUkVDRUlWRV9NU0cgX0lPV1IoSVBNSV9JT0NfTUFHSUMsIDEyLCAgIHN0cnVjdCBpcG1pX3JlY3YpCi0jZGVmaW5lIElQTUlDVExfUkVDRUlWRV9NU0dfVFJVTkMgX0lPV1IoSVBNSV9JT0NfTUFHSUMsIDExLCAgIHN0cnVjdCBpcG1pX3JlY3YpCisjZGVmaW5lIElQTUlDVExfUkVDRUlWRV9NU0cgX0lPV1IoSVBNSV9JT0NfTUFHSUMsIDEyLCBzdHJ1Y3QgaXBtaV9yZWN2KQorI2RlZmluZSBJUE1JQ1RMX1JFQ0VJVkVfTVNHX1RSVU5DIF9JT1dSKElQTUlfSU9DX01BR0lDLCAxMSwgc3RydWN0IGlwbWlfcmVjdikKIHN0cnVjdCBpcG1pX2NtZHNwZWMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIG5ldGZuOwotIHVuc2lnbmVkIGNoYXIgY21kOworICB1bnNpZ25lZCBjaGFyIG5ldGZuOworICB1bnNpZ25lZCBjaGFyIGNtZDsKIH07Ci0jZGVmaW5lIElQTUlDVExfUkVHSVNURVJfRk9SX0NNRCBfSU9SKElQTUlfSU9DX01BR0lDLCAxNCwgICBzdHJ1Y3QgaXBtaV9jbWRzcGVjKQorI2RlZmluZSBJUE1JQ1RMX1JFR0lTVEVSX0ZPUl9DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMTQsIHN0cnVjdCBpcG1pX2NtZHNwZWMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJUE1JQ1RMX1VOUkVHSVNURVJfRk9SX0NNRCBfSU9SKElQTUlfSU9DX01BR0lDLCAxNSwgICBzdHJ1Y3QgaXBtaV9jbWRzcGVjKQorI2RlZmluZSBJUE1JQ1RMX1VOUkVHSVNURVJfRk9SX0NNRCBfSU9SKElQTUlfSU9DX01BR0lDLCAxNSwgc3RydWN0IGlwbWlfY21kc3BlYykKIHN0cnVjdCBpcG1pX2NtZHNwZWNfY2hhbnMgewotIHVuc2lnbmVkIGludCBuZXRmbjsKLSB1bnNpZ25lZCBpbnQgY21kOworICB1bnNpZ25lZCBpbnQgbmV0Zm47CisgIHVuc2lnbmVkIGludCBjbWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBjaGFuczsKKyAgdW5zaWduZWQgaW50IGNoYW5zOwogfTsKLSNkZWZpbmUgSVBNSUNUTF9SRUdJU1RFUl9GT1JfQ01EX0NIQU5TIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDI4LCAgIHN0cnVjdCBpcG1pX2NtZHNwZWNfY2hhbnMpCi0jZGVmaW5lIElQTUlDVExfVU5SRUdJU1RFUl9GT1JfQ01EX0NIQU5TIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDI5LCAgIHN0cnVjdCBpcG1pX2NtZHNwZWNfY2hhbnMpCisjZGVmaW5lIElQTUlDVExfUkVHSVNURVJfRk9SX0NNRF9DSEFOUyBfSU9SKElQTUlfSU9DX01BR0lDLCAyOCwgc3RydWN0IGlwbWlfY21kc3BlY19jaGFucykKKyNkZWZpbmUgSVBNSUNUTF9VTlJFR0lTVEVSX0ZPUl9DTURfQ0hBTlMgX0lPUihJUE1JX0lPQ19NQUdJQywgMjksIHN0cnVjdCBpcG1pX2NtZHNwZWNfY2hhbnMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUE1JQ1RMX1NFVF9HRVRTX0VWRU5UU19DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMTYsIGludCkKIHN0cnVjdCBpcG1pX2NoYW5uZWxfbHVuX2FkZHJlc3Nfc2V0IHsKLSB1bnNpZ25lZCBzaG9ydCBjaGFubmVsOwotIHVuc2lnbmVkIGNoYXIgdmFsdWU7CisgIHVuc2lnbmVkIHNob3J0IGNoYW5uZWw7CisgIHVuc2lnbmVkIGNoYXIgdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgSVBNSUNUTF9TRVRfTVlfQ0hBTk5FTF9BRERSRVNTX0NNRCAgIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDI0LCBzdHJ1Y3QgaXBtaV9jaGFubmVsX2x1bl9hZGRyZXNzX3NldCkKLSNkZWZpbmUgSVBNSUNUTF9HRVRfTVlfQ0hBTk5FTF9BRERSRVNTX0NNRCAgIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDI1LCBzdHJ1Y3QgaXBtaV9jaGFubmVsX2x1bl9hZGRyZXNzX3NldCkKLSNkZWZpbmUgSVBNSUNUTF9TRVRfTVlfQ0hBTk5FTF9MVU5fQ01EICAgX0lPUihJUE1JX0lPQ19NQUdJQywgMjYsIHN0cnVjdCBpcG1pX2NoYW5uZWxfbHVuX2FkZHJlc3Nfc2V0KQorI2RlZmluZSBJUE1JQ1RMX1NFVF9NWV9DSEFOTkVMX0FERFJFU1NfQ01EIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDI0LCBzdHJ1Y3QgaXBtaV9jaGFubmVsX2x1bl9hZGRyZXNzX3NldCkKKyNkZWZpbmUgSVBNSUNUTF9HRVRfTVlfQ0hBTk5FTF9BRERSRVNTX0NNRCBfSU9SKElQTUlfSU9DX01BR0lDLCAyNSwgc3RydWN0IGlwbWlfY2hhbm5lbF9sdW5fYWRkcmVzc19zZXQpCisjZGVmaW5lIElQTUlDVExfU0VUX01ZX0NIQU5ORUxfTFVOX0NNRCBfSU9SKElQTUlfSU9DX01BR0lDLCAyNiwgc3RydWN0IGlwbWlfY2hhbm5lbF9sdW5fYWRkcmVzc19zZXQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJUE1JQ1RMX0dFVF9NWV9DSEFOTkVMX0xVTl9DTUQgICBfSU9SKElQTUlfSU9DX01BR0lDLCAyNywgc3RydWN0IGlwbWlfY2hhbm5lbF9sdW5fYWRkcmVzc19zZXQpCisjZGVmaW5lIElQTUlDVExfR0VUX01ZX0NIQU5ORUxfTFVOX0NNRCBfSU9SKElQTUlfSU9DX01BR0lDLCAyNywgc3RydWN0IGlwbWlfY2hhbm5lbF9sdW5fYWRkcmVzc19zZXQpCiAjZGVmaW5lIElQTUlDVExfU0VUX01ZX0FERFJFU1NfQ01EIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDE3LCB1bnNpZ25lZCBpbnQpCiAjZGVmaW5lIElQTUlDVExfR0VUX01ZX0FERFJFU1NfQ01EIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDE4LCB1bnNpZ25lZCBpbnQpCiAjZGVmaW5lIElQTUlDVExfU0VUX01ZX0xVTl9DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMTksIHVuc2lnbmVkIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQTUlDVExfR0VUX01ZX0xVTl9DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMjAsIHVuc2lnbmVkIGludCkKIHN0cnVjdCBpcG1pX3RpbWluZ19wYXJtcyB7Ci0gaW50IHJldHJpZXM7Ci0gdW5zaWduZWQgaW50IHJldHJ5X3RpbWVfbXM7CisgIGludCByZXRyaWVzOworICB1bnNpZ25lZCBpbnQgcmV0cnlfdGltZV9tczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBJUE1JQ1RMX1NFVF9USU1JTkdfUEFSTVNfQ01EIF9JT1IoSVBNSV9JT0NfTUFHSUMsIDIyLCAgIHN0cnVjdCBpcG1pX3RpbWluZ19wYXJtcykKLSNkZWZpbmUgSVBNSUNUTF9HRVRfVElNSU5HX1BBUk1TX0NNRCBfSU9SKElQTUlfSU9DX01BR0lDLCAyMywgICBzdHJ1Y3QgaXBtaV90aW1pbmdfcGFybXMpCisjZGVmaW5lIElQTUlDVExfU0VUX1RJTUlOR19QQVJNU19DTUQgX0lPUihJUE1JX0lPQ19NQUdJQywgMjIsIHN0cnVjdCBpcG1pX3RpbWluZ19wYXJtcykKKyNkZWZpbmUgSVBNSUNUTF9HRVRfVElNSU5HX1BBUk1TX0NNRCBfSU9SKElQTUlfSU9DX01BR0lDLCAyMywgc3RydWN0IGlwbWlfdGltaW5nX3Bhcm1zKQogI2RlZmluZSBJUE1JQ1RMX0dFVF9NQUlOVEVOQU5DRV9NT0RFX0NNRCBfSU9SKElQTUlfSU9DX01BR0lDLCAzMCwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBNSUNUTF9TRVRfTUFJTlRFTkFOQ0VfTU9ERV9DTUQgX0lPVyhJUE1JX0lPQ19NQUdJQywgMzEsIGludCkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXBzZWMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXBzZWMuaAppbmRleCBlOTc1OGViLi5kMjA3Y2YwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lwc2VjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcHNlYy5oCkBAIC0yNCwzNyArMjQsMzcgQEAKICNkZWZpbmUgSVBTRUNfVUxQUk9UT19BTlkgMjU1CiAjZGVmaW5lIElQU0VDX1BST1RPX0FOWSAyNTUKIGVudW0gewotIElQU0VDX01PREVfQU5ZID0gMCwKKyAgSVBTRUNfTU9ERV9BTlkgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFQ19NT0RFX1RSQU5TUE9SVCA9IDEsCi0gSVBTRUNfTU9ERV9UVU5ORUwgPSAyLAotIElQU0VDX01PREVfQkVFVCA9IDMKKyAgSVBTRUNfTU9ERV9UUkFOU1BPUlQgPSAxLAorICBJUFNFQ19NT0RFX1RVTk5FTCA9IDIsCisgIElQU0VDX01PREVfQkVFVCA9IDMKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gSVBTRUNfRElSX0FOWSA9IDAsCi0gSVBTRUNfRElSX0lOQk9VTkQgPSAxLAotIElQU0VDX0RJUl9PVVRCT1VORCA9IDIsCisgIElQU0VDX0RJUl9BTlkgPSAwLAorICBJUFNFQ19ESVJfSU5CT1VORCA9IDEsCisgIElQU0VDX0RJUl9PVVRCT1VORCA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VDX0RJUl9GV0QgPSAzLAotIElQU0VDX0RJUl9NQVggPSA0LAotIElQU0VDX0RJUl9JTlZBTElEID0gNQorICBJUFNFQ19ESVJfRldEID0gMywKKyAgSVBTRUNfRElSX01BWCA9IDQsCisgIElQU0VDX0RJUl9JTlZBTElEID0gNQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJUFNFQ19QT0xJQ1lfRElTQ0FSRCA9IDAsCi0gSVBTRUNfUE9MSUNZX05PTkUgPSAxLAotIElQU0VDX1BPTElDWV9JUFNFQyA9IDIsCisgIElQU0VDX1BPTElDWV9ESVNDQVJEID0gMCwKKyAgSVBTRUNfUE9MSUNZX05PTkUgPSAxLAorICBJUFNFQ19QT0xJQ1lfSVBTRUMgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFQ19QT0xJQ1lfRU5UUlVTVCA9IDMsCi0gSVBTRUNfUE9MSUNZX0JZUEFTUyA9IDQKKyAgSVBTRUNfUE9MSUNZX0VOVFJVU1QgPSAzLAorICBJUFNFQ19QT0xJQ1lfQllQQVNTID0gNAogfTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFQ19MRVZFTF9ERUZBVUxUID0gMCwKLSBJUFNFQ19MRVZFTF9VU0UgPSAxLAotIElQU0VDX0xFVkVMX1JFUVVJUkUgPSAyLAotIElQU0VDX0xFVkVMX1VOSVFVRSA9IDMKKyAgSVBTRUNfTEVWRUxfREVGQVVMVCA9IDAsCisgIElQU0VDX0xFVkVMX1VTRSA9IDEsCisgIElQU0VDX0xFVkVMX1JFUVVJUkUgPSAyLAorICBJUFNFQ19MRVZFTF9VTklRVUUgPSAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSVBTRUNfTUFOVUFMX1JFUUlEX01BWCAweDNmZmYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXB2Ni5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcHY2LmgKaW5kZXggYmZlNjJjZi4uMzQyNWY1YSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcHY2LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcHY2LmgKQEAgLTI0LDM2ICsyNCwzNiBAQAogI2luY2x1ZGUgPGFzbS9ieXRlb3JkZXIuaD4KICNkZWZpbmUgSVBWNl9NSU5fTVRVIDEyODAKIHN0cnVjdCBpbjZfcGt0aW5mbyB7Ci0gc3RydWN0IGluNl9hZGRyIGlwaTZfYWRkcjsKKyAgc3RydWN0IGluNl9hZGRyIGlwaTZfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGlwaTZfaWZpbmRleDsKKyAgaW50IGlwaTZfaWZpbmRleDsKIH07CiBzdHJ1Y3QgaXA2X210dWluZm8gewotIHN0cnVjdCBzb2NrYWRkcl9pbjYgaXA2bV9hZGRyOworICBzdHJ1Y3Qgc29ja2FkZHJfaW42IGlwNm1fYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaXA2bV9tdHU7CisgIF9fdTMyIGlwNm1fbXR1OwogfTsKIHN0cnVjdCBpbjZfaWZyZXEgewotIHN0cnVjdCBpbjZfYWRkciBpZnI2X2FkZHI7CisgIHN0cnVjdCBpbjZfYWRkciBpZnI2X2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlmcjZfcHJlZml4bGVuOwotIGludCBpZnI2X2lmaW5kZXg7CisgIF9fdTMyIGlmcjZfcHJlZml4bGVuOworICBpbnQgaWZyNl9pZmluZGV4OwogfTsKICNkZWZpbmUgSVBWNl9TUkNSVF9TVFJJQ1QgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBWNl9TUkNSVF9UWVBFXzAgMAogI2RlZmluZSBJUFY2X1NSQ1JUX1RZUEVfMiAyCiBzdHJ1Y3QgaXB2Nl9ydF9oZHIgewotIF9fdTggbmV4dGhkcjsKKyAgX191OCBuZXh0aGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGhkcmxlbjsKLSBfX3U4IHR5cGU7Ci0gX191OCBzZWdtZW50c19sZWZ0OworICBfX3U4IGhkcmxlbjsKKyAgX191OCB0eXBlOworICBfX3U4IHNlZ21lbnRzX2xlZnQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcHY2X29wdF9oZHIgewotIF9fdTggbmV4dGhkcjsKLSBfX3U4IGhkcmxlbjsKKyAgX191OCBuZXh0aGRyOworICBfX3U4IGhkcmxlbjsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBpcHY2X2Rlc3RvcHRfaGRyIGlwdjZfb3B0X2hkcgpAQCAtNjEsOTAgKzYxLDg5IEBACiAjZGVmaW5lIElQVjZfT1BUX1JPVVRFUkFMRVJUX01MRCAweDAwMDAKIHN0cnVjdCBydDBfaGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGlwdjZfcnRfaGRyIHJ0X2hkcjsKLSBfX3UzMiByZXNlcnZlZDsKLSBzdHJ1Y3QgaW42X2FkZHIgYWRkclswXTsKKyAgc3RydWN0IGlwdjZfcnRfaGRyIHJ0X2hkcjsKKyAgX191MzIgcmVzZXJ2ZWQ7CisgIHN0cnVjdCBpbjZfYWRkciBhZGRyWzBdOwogI2RlZmluZSBydDBfdHlwZSBydF9oZHIudHlwZQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgcnQyX2hkciB7Ci0gc3RydWN0IGlwdjZfcnRfaGRyIHJ0X2hkcjsKLSBfX3UzMiByZXNlcnZlZDsKKyAgc3RydWN0IGlwdjZfcnRfaGRyIHJ0X2hkcjsKKyAgX191MzIgcmVzZXJ2ZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpbjZfYWRkciBhZGRyOworICBzdHJ1Y3QgaW42X2FkZHIgYWRkcjsKICNkZWZpbmUgcnQyX3R5cGUgcnRfaGRyLnR5cGUKIH07CiBzdHJ1Y3QgaXB2Nl9kZXN0b3B0X2hhbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHlwZTsKLSBfX3U4IGxlbmd0aDsKLSBzdHJ1Y3QgaW42X2FkZHIgYWRkcjsKKyAgX191OCB0eXBlOworICBfX3U4IGxlbmd0aDsKKyAgc3RydWN0IGluNl9hZGRyIGFkZHI7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcHY2aGRyIHsKICNpZmRlZiBfX0xJVFRMRV9FTkRJQU5fQklURklFTEQKLSBfX3U4IHByaW9yaXR5OjQsCi0gdmVyc2lvbjo0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBwcmlvcml0eSA6IDQsIHZlcnNpb24gOiA0OwogI2VsaWYgZGVmaW5lZChfX0JJR19FTkRJQU5fQklURklFTEQpCi0gX191OCB2ZXJzaW9uOjQsCi0gcHJpb3JpdHk6NDsKLSNlbHNlCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHZlcnNpb24gOiA0LCBwcmlvcml0eSA6IDQ7CisjZWxzZQogI2Vycm9yICJQbGVhc2UgZml4IDxhc20vYnl0ZW9yZGVyLmg+IgogI2VuZGlmCi0gX191OCBmbG93X2xibFszXTsKLSBfX2JlMTYgcGF5bG9hZF9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbmV4dGhkcjsKLSBfX3U4IGhvcF9saW1pdDsKLSBzdHJ1Y3QgaW42X2FkZHIgc2FkZHI7Ci0gc3RydWN0IGluNl9hZGRyIGRhZGRyOworICBfX3U4IGZsb3dfbGJsWzNdOworICBfX2JlMTYgcGF5bG9hZF9sZW47CisgIF9fdTggbmV4dGhkcjsKKyAgX191OCBob3BfbGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgaW42X2FkZHIgc2FkZHI7CisgIHN0cnVjdCBpbjZfYWRkciBkYWRkcjsKIH07CiBlbnVtIHsKLSBERVZDT05GX0ZPUldBUkRJTkcgPSAwLAotIERFVkNPTkZfSE9QTElNSVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERFVkNPTkZfTVRVNiwKLSBERVZDT05GX0FDQ0VQVF9SQSwKLSBERVZDT05GX0FDQ0VQVF9SRURJUkVDVFMsCi0gREVWQ09ORl9BVVRPQ09ORiwKKyAgREVWQ09ORl9GT1JXQVJESU5HID0gMCwKKyAgREVWQ09ORl9IT1BMSU1JVCwKKyAgREVWQ09ORl9NVFU2LAorICBERVZDT05GX0FDQ0VQVF9SQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gREVWQ09ORl9EQURfVFJBTlNNSVRTLAotIERFVkNPTkZfUlRSX1NPTElDSVRTLAotIERFVkNPTkZfUlRSX1NPTElDSVRfSU5URVJWQUwsCi0gREVWQ09ORl9SVFJfU09MSUNJVF9ERUxBWSwKKyAgREVWQ09ORl9BQ0NFUFRfUkVESVJFQ1RTLAorICBERVZDT05GX0FVVE9DT05GLAorICBERVZDT05GX0RBRF9UUkFOU01JVFMsCisgIERFVkNPTkZfUlRSX1NPTElDSVRTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBERVZDT05GX1VTRV9URU1QQUREUiwKLSBERVZDT05GX1RFTVBfVkFMSURfTEZULAotIERFVkNPTkZfVEVNUF9QUkVGRVJFRF9MRlQsCi0gREVWQ09ORl9SRUdFTl9NQVhfUkVUUlksCisgIERFVkNPTkZfUlRSX1NPTElDSVRfSU5URVJWQUwsCisgIERFVkNPTkZfUlRSX1NPTElDSVRfREVMQVksCisgIERFVkNPTkZfVVNFX1RFTVBBRERSLAorICBERVZDT05GX1RFTVBfVkFMSURfTEZULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBERVZDT05GX01BWF9ERVNZTkNfRkFDVE9SLAotIERFVkNPTkZfTUFYX0FERFJFU1NFUywKLSBERVZDT05GX0ZPUkNFX01MRF9WRVJTSU9OLAotIERFVkNPTkZfQUNDRVBUX1JBX0RFRlJUUiwKKyAgREVWQ09ORl9URU1QX1BSRUZFUkVEX0xGVCwKKyAgREVWQ09ORl9SRUdFTl9NQVhfUkVUUlksCisgIERFVkNPTkZfTUFYX0RFU1lOQ19GQUNUT1IsCisgIERFVkNPTkZfTUFYX0FERFJFU1NFUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gREVWQ09ORl9BQ0NFUFRfUkFfUElORk8sCi0gREVWQ09ORl9BQ0NFUFRfUkFfUlRSX1BSRUYsCi0gREVWQ09ORl9SVFJfUFJPQkVfSU5URVJWQUwsCi0gREVWQ09ORl9BQ0NFUFRfUkFfUlRfSU5GT19NQVhfUExFTiwKKyAgREVWQ09ORl9GT1JDRV9NTERfVkVSU0lPTiwKKyAgREVWQ09ORl9BQ0NFUFRfUkFfREVGUlRSLAorICBERVZDT05GX0FDQ0VQVF9SQV9QSU5GTywKKyAgREVWQ09ORl9BQ0NFUFRfUkFfUlRSX1BSRUYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERFVkNPTkZfUFJPWFlfTkRQLAotIERFVkNPTkZfT1BUSU1JU1RJQ19EQUQsCi0gREVWQ09ORl9BQ0NFUFRfU09VUkNFX1JPVVRFLAotIERFVkNPTkZfTUNfRk9SV0FSRElORywKKyAgREVWQ09ORl9SVFJfUFJPQkVfSU5URVJWQUwsCisgIERFVkNPTkZfQUNDRVBUX1JBX1JUX0lORk9fTUFYX1BMRU4sCisgIERFVkNPTkZfUFJPWFlfTkRQLAorICBERVZDT05GX09QVElNSVNUSUNfREFELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBERVZDT05GX0RJU0FCTEVfSVBWNiwKLSBERVZDT05GX0FDQ0VQVF9EQUQsCi0gREVWQ09ORl9GT1JDRV9UTExBTywKLSBERVZDT05GX05ESVNDX05PVElGWSwKKyAgREVWQ09ORl9BQ0NFUFRfU09VUkNFX1JPVVRFLAorICBERVZDT05GX01DX0ZPUldBUkRJTkcsCisgIERFVkNPTkZfRElTQUJMRV9JUFY2LAorICBERVZDT05GX0FDQ0VQVF9EQUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERFVkNPTkZfTUxEVjFfVU5TT0xJQ0lURURfUkVQT1JUX0lOVEVSVkFMLAotIERFVkNPTkZfTUxEVjJfVU5TT0xJQ0lURURfUkVQT1JUX0lOVEVSVkFMLAotIERFVkNPTkZfU1VQUFJFU1NfRlJBR19ORElTQywKLSBERVZDT05GX01BWAorICBERVZDT05GX0ZPUkNFX1RMTEFPLAorICBERVZDT05GX05ESVNDX05PVElGWSwKKyAgREVWQ09ORl9NTERWMV9VTlNPTElDSVRFRF9SRVBPUlRfSU5URVJWQUwsCisgIERFVkNPTkZfTUxEVjJfVU5TT0xJQ0lURURfUkVQT1JUX0lOVEVSVkFMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgREVWQ09ORl9TVVBQUkVTU19GUkFHX05ESVNDLAorICBERVZDT05GX0FDQ0VQVF9SQV9GUk9NX0xPQ0FMLAorICBERVZDT05GX01BWAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXB2Nl9yb3V0ZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcHY2X3JvdXRlLmgKaW5kZXggMDQwYTNkYi4uZmY3NDk4NiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcHY2X3JvdXRlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcHY2X3JvdXRlLmgKQEAgLTM4LDE4ICszOCwxOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRGX0xPQ0FMIDB4ODAwMDAwMDAKIHN0cnVjdCBpbjZfcnRtc2cgewotIHN0cnVjdCBpbjZfYWRkciBydG1zZ19kc3Q7Ci0gc3RydWN0IGluNl9hZGRyIHJ0bXNnX3NyYzsKKyAgc3RydWN0IGluNl9hZGRyIHJ0bXNnX2RzdDsKKyAgc3RydWN0IGluNl9hZGRyIHJ0bXNnX3NyYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluNl9hZGRyIHJ0bXNnX2dhdGV3YXk7Ci0gX191MzIgcnRtc2dfdHlwZTsKLSBfX3UxNiBydG1zZ19kc3RfbGVuOwotIF9fdTE2IHJ0bXNnX3NyY19sZW47CisgIHN0cnVjdCBpbjZfYWRkciBydG1zZ19nYXRld2F5OworICBfX3UzMiBydG1zZ190eXBlOworICBfX3UxNiBydG1zZ19kc3RfbGVuOworICBfX3UxNiBydG1zZ19zcmNfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBydG1zZ19tZXRyaWM7Ci0gdW5zaWduZWQgbG9uZyBydG1zZ19pbmZvOwotIF9fdTMyIHJ0bXNnX2ZsYWdzOwotIGludCBydG1zZ19pZmluZGV4OworICBfX3UzMiBydG1zZ19tZXRyaWM7CisgIHVuc2lnbmVkIGxvbmcgcnRtc2dfaW5mbzsKKyAgX191MzIgcnRtc2dfZmxhZ3M7CisgIGludCBydG1zZ19pZmluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFJUTVNHX05FV0RFVklDRSAweDExCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lweC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcHguaAppbmRleCA2MWVmYjQ4Li40NzA4NmZlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lweC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXB4LmgKQEAgLTI2LDEzICsyNiwxMyBAQAogI2RlZmluZSBJUFhfTVRVIDU3Ngogc3RydWN0IHNvY2thZGRyX2lweCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3NhX2ZhbWlseV90IHNpcHhfZmFtaWx5OwotIF9fYmUxNiBzaXB4X3BvcnQ7Ci0gX19iZTMyIHNpcHhfbmV0d29yazsKLSB1bnNpZ25lZCBjaGFyIHNpcHhfbm9kZVtJUFhfTk9ERV9MRU5dOworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzaXB4X2ZhbWlseTsKKyAgX19iZTE2IHNpcHhfcG9ydDsKKyAgX19iZTMyIHNpcHhfbmV0d29yazsKKyAgdW5zaWduZWQgY2hhciBzaXB4X25vZGVbSVBYX05PREVfTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzaXB4X3R5cGU7Ci0gdW5zaWduZWQgY2hhciBzaXB4X3plcm87CisgIF9fdTggc2lweF90eXBlOworICB1bnNpZ25lZCBjaGFyIHNpcHhfemVybzsKIH07CiAjZGVmaW5lIHNpcHhfc3BlY2lhbCBzaXB4X3BvcnQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC00MSwxNSArNDEsMTUgQEAKICNkZWZpbmUgSVBYX0NSVElURiAxCiBzdHJ1Y3QgaXB4X3JvdXRlX2RlZmluaXRpb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgaXB4X25ldHdvcms7Ci0gX19iZTMyIGlweF9yb3V0ZXJfbmV0d29yazsKLSB1bnNpZ25lZCBjaGFyIGlweF9yb3V0ZXJfbm9kZVtJUFhfTk9ERV9MRU5dOworICBfX2JlMzIgaXB4X25ldHdvcms7CisgIF9fYmUzMiBpcHhfcm91dGVyX25ldHdvcms7CisgIHVuc2lnbmVkIGNoYXIgaXB4X3JvdXRlcl9ub2RlW0lQWF9OT0RFX0xFTl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcHhfaW50ZXJmYWNlX2RlZmluaXRpb24gewotIF9fYmUzMiBpcHhfbmV0d29yazsKLSB1bnNpZ25lZCBjaGFyIGlweF9kZXZpY2VbMTZdOwotIHVuc2lnbmVkIGNoYXIgaXB4X2RsaW5rX3R5cGU7CisgIF9fYmUzMiBpcHhfbmV0d29yazsKKyAgdW5zaWduZWQgY2hhciBpcHhfZGV2aWNlWzE2XTsKKyAgdW5zaWduZWQgY2hhciBpcHhfZGxpbmtfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQWF9GUkFNRV9OT05FIDAKICNkZWZpbmUgSVBYX0ZSQU1FX1NOQVAgMQpAQCAtNTgsMjcgKzU4LDI3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFhfRlJBTUVfODAyMyA0CiAjZGVmaW5lIElQWF9GUkFNRV9UUl84MDIyIDUKLSB1bnNpZ25lZCBjaGFyIGlweF9zcGVjaWFsOworICB1bnNpZ25lZCBjaGFyIGlweF9zcGVjaWFsOwogI2RlZmluZSBJUFhfU1BFQ0lBTF9OT05FIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQWF9QUklNQVJZIDEKICNkZWZpbmUgSVBYX0lOVEVSTkFMIDIKLSB1bnNpZ25lZCBjaGFyIGlweF9ub2RlW0lQWF9OT0RFX0xFTl07CisgIHVuc2lnbmVkIGNoYXIgaXB4X25vZGVbSVBYX05PREVfTEVOXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlweF9jb25maWdfZGF0YSB7Ci0gdW5zaWduZWQgY2hhciBpcHhjZmdfYXV0b19zZWxlY3RfcHJpbWFyeTsKLSB1bnNpZ25lZCBjaGFyIGlweGNmZ19hdXRvX2NyZWF0ZV9pbnRlcmZhY2VzOworICB1bnNpZ25lZCBjaGFyIGlweGNmZ19hdXRvX3NlbGVjdF9wcmltYXJ5OworICB1bnNpZ25lZCBjaGFyIGlweGNmZ19hdXRvX2NyZWF0ZV9pbnRlcmZhY2VzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXB4X3JvdXRlX2RlZiB7Ci0gX19iZTMyIGlweF9uZXR3b3JrOwotIF9fYmUzMiBpcHhfcm91dGVyX25ldHdvcms7CisgIF9fYmUzMiBpcHhfbmV0d29yazsKKyAgX19iZTMyIGlweF9yb3V0ZXJfbmV0d29yazsKICNkZWZpbmUgSVBYX1JPVVRFX05PX1JPVVRFUiAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgaXB4X3JvdXRlcl9ub2RlW0lQWF9OT0RFX0xFTl07Ci0gdW5zaWduZWQgY2hhciBpcHhfZGV2aWNlWzE2XTsKLSB1bnNpZ25lZCBzaG9ydCBpcHhfZmxhZ3M7CisgIHVuc2lnbmVkIGNoYXIgaXB4X3JvdXRlcl9ub2RlW0lQWF9OT0RFX0xFTl07CisgIHVuc2lnbmVkIGNoYXIgaXB4X2RldmljZVsxNl07CisgIHVuc2lnbmVkIHNob3J0IGlweF9mbGFnczsKICNkZWZpbmUgSVBYX1JUX1NOQVAgOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBYX1JUXzgwMjIgNApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pcmRhLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lyZGEuaAppbmRleCA3MThkYmFmLi5kYWM2ZDFmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lyZGEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lyZGEuaApAQCAtNTMsMzAgKzUzLDMwIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDU19VTklDT0RFIDB4ZmYKIHR5cGVkZWYgZW51bSB7Ci0gSVJEQV9URUtSQU1fRE9OR0xFID0gMCwKLSBJUkRBX0VTSV9ET05HTEUgPSAxLAorICBJUkRBX1RFS1JBTV9ET05HTEUgPSAwLAorICBJUkRBX0VTSV9ET05HTEUgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUkRBX0FDVElTWVNfRE9OR0xFID0gMiwKLSBJUkRBX0FDVElTWVNfUExVU19ET05HTEUgPSAzLAotIElSREFfR0lSQklMX0RPTkdMRSA9IDQsCi0gSVJEQV9MSVRFTElOS19ET05HTEUgPSA1LAorICBJUkRBX0FDVElTWVNfRE9OR0xFID0gMiwKKyAgSVJEQV9BQ1RJU1lTX1BMVVNfRE9OR0xFID0gMywKKyAgSVJEQV9HSVJCSUxfRE9OR0xFID0gNCwKKyAgSVJEQV9MSVRFTElOS19ET05HTEUgPSA1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUkRBX0FJUlBPUlRfRE9OR0xFID0gNiwKLSBJUkRBX09MRF9CRUxLSU5fRE9OR0xFID0gNywKLSBJUkRBX0VQNzIxMV9JUiA9IDgsCi0gSVJEQV9NQ1AyMTIwX0RPTkdMRSA9IDksCisgIElSREFfQUlSUE9SVF9ET05HTEUgPSA2LAorICBJUkRBX09MRF9CRUxLSU5fRE9OR0xFID0gNywKKyAgSVJEQV9FUDcyMTFfSVIgPSA4LAorICBJUkRBX01DUDIxMjBfRE9OR0xFID0gOSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVJEQV9BQ1QyMDBMX0RPTkdMRSA9IDEwLAotIElSREFfTUE2MDBfRE9OR0xFID0gMTEsCi0gSVJEQV9UT0lNMzIzMl9ET05HTEUgPSAxMiwKLSBJUkRBX0VQNzIxMV9ET05HTEUgPSAxMywKKyAgSVJEQV9BQ1QyMDBMX0RPTkdMRSA9IDEwLAorICBJUkRBX01BNjAwX0RPTkdMRSA9IDExLAorICBJUkRBX1RPSU0zMjMyX0RPTkdMRSA9IDEyLAorICBJUkRBX0VQNzIxMV9ET05HTEUgPSAxMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IElSREFfRE9OR0xFOwogZW51bSB7Ci0gSVJEQVBST1RPX1VOSVREQVRBID0gMCwKLSBJUkRBUFJPVE9fVUxUUkEgPSAxLAorICBJUkRBUFJPVE9fVU5JVERBVEEgPSAwLAorICBJUkRBUFJPVE9fVUxUUkEgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUkRBUFJPVE9fTUFYCisgIElSREFQUk9UT19NQVgKIH07CiAjZGVmaW5lIFNPTF9JUkxNUCAyNjYKICNkZWZpbmUgU09MX0lSVFRQIDI2NgpAQCAtMTEyLDQ3ICsxMTIsNDcgQEAKICNkZWZpbmUgTFNBUF9BTlkgMHhmZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzb2NrYWRkcl9pcmRhIHsKLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzaXJfZmFtaWx5OwotIF9fdTggc2lyX2xzYXBfc2VsOwotIF9fdTMyIHNpcl9hZGRyOworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzaXJfZmFtaWx5OworICBfX3U4IHNpcl9sc2FwX3NlbDsKKyAgX191MzIgc2lyX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgc2lyX25hbWVbMjVdOworICBjaGFyIHNpcl9uYW1lWzI1XTsKIH07CiBzdHJ1Y3QgaXJkYV9kZXZpY2VfaW5mbyB7Ci0gX191MzIgc2FkZHI7CisgIF9fdTMyIHNhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkYWRkcjsKLSBjaGFyIGluZm9bMjJdOwotIF9fdTggY2hhcnNldDsKLSBfX3U4IGhpbnRzWzJdOworICBfX3UzMiBkYWRkcjsKKyAgY2hhciBpbmZvWzIyXTsKKyAgX191OCBjaGFyc2V0OworICBfX3U4IGhpbnRzWzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaXJkYV9kZXZpY2VfbGlzdCB7Ci0gX191MzIgbGVuOwotIHN0cnVjdCBpcmRhX2RldmljZV9pbmZvIGRldlsxXTsKKyAgX191MzIgbGVuOworICBzdHJ1Y3QgaXJkYV9kZXZpY2VfaW5mbyBkZXZbMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpcmRhX2lhc19zZXQgewotIGNoYXIgaXJkYV9jbGFzc19uYW1lW0lBU19FWFBPUlRfQ0xBU1NOQU1FXTsKLSBjaGFyIGlyZGFfYXR0cmliX25hbWVbSUFTX0VYUE9SVF9BVFRSSUJOQU1FXTsKKyAgY2hhciBpcmRhX2NsYXNzX25hbWVbSUFTX0VYUE9SVF9DTEFTU05BTUVdOworICBjaGFyIGlyZGFfYXR0cmliX25hbWVbSUFTX0VYUE9SVF9BVFRSSUJOQU1FXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGlyZGFfYXR0cmliX3R5cGU7Ci0gdW5pb24gewotIHVuc2lnbmVkIGludCBpcmRhX2F0dHJpYl9pbnQ7Ci0gc3RydWN0IHsKKyAgdW5zaWduZWQgaW50IGlyZGFfYXR0cmliX3R5cGU7CisgIHVuaW9uIHsKKyAgICB1bnNpZ25lZCBpbnQgaXJkYV9hdHRyaWJfaW50OworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGxlbjsKLSBfX3U4IG9jdGV0X3NlcVtJQVNfTUFYX09DVEVUX1NUUklOR107Ci0gfSBpcmRhX2F0dHJpYl9vY3RldF9zZXE7Ci0gc3RydWN0IHsKKyAgICAgIHVuc2lnbmVkIHNob3J0IGxlbjsKKyAgICAgIF9fdTggb2N0ZXRfc2VxW0lBU19NQVhfT0NURVRfU1RSSU5HXTsKKyAgICB9IGlyZGFfYXR0cmliX29jdGV0X3NlcTsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGxlbjsKLSBfX3U4IGNoYXJzZXQ7Ci0gX191OCBzdHJpbmdbSUFTX01BWF9TVFJJTkddOwotIH0gaXJkYV9hdHRyaWJfc3RyaW5nOworICAgICAgX191OCBsZW47CisgICAgICBfX3U4IGNoYXJzZXQ7CisgICAgICBfX3U4IHN0cmluZ1tJQVNfTUFYX1NUUklOR107CisgICAgfSBpcmRhX2F0dHJpYl9zdHJpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gYXR0cmlidXRlOwotIF9fdTMyIGRhZGRyOworICB9IGF0dHJpYnV0ZTsKKyAgX191MzIgZGFkZHI7CiB9OwogI2RlZmluZSBTSU9DU0RPTkdMRSAoU0lPQ0RFVlBSSVZBVEUgKyAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTE2OSwzNiArMTY5LDM2IEBACiAjZGVmaW5lIFNJT0NHUU9TIChTSU9DREVWUFJJVkFURSArIDkpCiAjZGVmaW5lIElSTkFNU0laIDE2CiBzdHJ1Y3QgaWZfaXJkYV9xb3MgewotIHVuc2lnbmVkIGxvbmcgYmF1ZHJhdGU7CisgIHVuc2lnbmVkIGxvbmcgYmF1ZHJhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGRhdGFfc2l6ZTsKLSB1bnNpZ25lZCBzaG9ydCB3aW5kb3dfc2l6ZTsKLSB1bnNpZ25lZCBzaG9ydCBtaW5fdHVybl90aW1lOwotIHVuc2lnbmVkIHNob3J0IG1heF90dXJuX3RpbWU7CisgIHVuc2lnbmVkIHNob3J0IGRhdGFfc2l6ZTsKKyAgdW5zaWduZWQgc2hvcnQgd2luZG93X3NpemU7CisgIHVuc2lnbmVkIHNob3J0IG1pbl90dXJuX3RpbWU7CisgIHVuc2lnbmVkIHNob3J0IG1heF90dXJuX3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgYWRkX2JvZnM7Ci0gdW5zaWduZWQgY2hhciBsaW5rX2Rpc2M7CisgIHVuc2lnbmVkIGNoYXIgYWRkX2JvZnM7CisgIHVuc2lnbmVkIGNoYXIgbGlua19kaXNjOwogfTsKIHN0cnVjdCBpZl9pcmRhX2xpbmUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGR0cjsKLSBfX3U4IHJ0czsKKyAgX191OCBkdHI7CisgIF9fdTggcnRzOwogfTsKIHN0cnVjdCBpZl9pcmRhX3JlcSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBjaGFyIGlmcm5fbmFtZVtJUk5BTVNJWl07Ci0gfSBpZnJfaWZybjsKLSB1bmlvbiB7CisgIHVuaW9uIHsKKyAgICBjaGFyIGlmcm5fbmFtZVtJUk5BTVNJWl07CisgIH0gaWZyX2lmcm47CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGlmX2lyZGFfbGluZSBpZnJ1X2xpbmU7Ci0gc3RydWN0IGlmX2lyZGFfcW9zIGlmcnVfcW9zOwotIHVuc2lnbmVkIHNob3J0IGlmcnVfZmxhZ3M7Ci0gdW5zaWduZWQgaW50IGlmcnVfcmVjZWl2aW5nOworICAgIHN0cnVjdCBpZl9pcmRhX2xpbmUgaWZydV9saW5lOworICAgIHN0cnVjdCBpZl9pcmRhX3FvcyBpZnJ1X3FvczsKKyAgICB1bnNpZ25lZCBzaG9ydCBpZnJ1X2ZsYWdzOworICAgIHVuc2lnbmVkIGludCBpZnJ1X3JlY2VpdmluZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGlmcnVfbW9kZTsKLSB1bnNpZ25lZCBpbnQgaWZydV9kb25nbGU7Ci0gfSBpZnJfaWZydTsKKyAgICB1bnNpZ25lZCBpbnQgaWZydV9tb2RlOworICAgIHVuc2lnbmVkIGludCBpZnJ1X2RvbmdsZTsKKyAgfSBpZnJfaWZydTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBpZnJfYmF1ZHJhdGUgaWZyX2lmcnUuaWZydV9xb3MuYmF1ZHJhdGUKQEAgLTIxMiwxOSArMjEyLDE5IEBACiAjZGVmaW5lIElSREFfTkxfVkVSU0lPTiAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBpcmRhX25sX2NvbW1hbmRzIHsKLSBJUkRBX05MX0NNRF9VTlNQRUMsCi0gSVJEQV9OTF9DTURfU0VUX01PREUsCi0gSVJEQV9OTF9DTURfR0VUX01PREUsCisgIElSREFfTkxfQ01EX1VOU1BFQywKKyAgSVJEQV9OTF9DTURfU0VUX01PREUsCisgIElSREFfTkxfQ01EX0dFVF9NT0RFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0lSREFfTkxfQ01EX0FGVEVSX0xBU1QKKyAgX19JUkRBX05MX0NNRF9BRlRFUl9MQVNUCiB9OwogI2RlZmluZSBJUkRBX05MX0NNRF9NQVggKF9fSVJEQV9OTF9DTURfQUZURVJfTEFTVCAtIDEpCiBlbnVtIG5sODAyMTFfYXR0cnMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUkRBX05MX0FUVFJfVU5TUEVDLAotIElSREFfTkxfQVRUUl9JRk5BTUUsCi0gSVJEQV9OTF9BVFRSX01PREUsCi0gX19JUkRBX05MX0FUVFJfQUZURVJfTEFTVAorICBJUkRBX05MX0FUVFJfVU5TUEVDLAorICBJUkRBX05MX0FUVFJfSUZOQU1FLAorICBJUkRBX05MX0FUVFJfTU9ERSwKKyAgX19JUkRBX05MX0FUVFJfQUZURVJfTEFTVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIElSREFfTkxfQVRUUl9NQVggKF9fSVJEQV9OTF9BVFRSX0FGVEVSX0xBU1QgLSAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pc2RuLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lzZG4uaAppbmRleCAxMjliMmQ0Li40OTA4ZjNhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lzZG4uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lzZG4uaApAQCAtMjMsNDIgKzIzLDQyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJU0ROX01BWF9EUklWRVJTIDMyCiAjZGVmaW5lIElTRE5fTUFYX0NIQU5ORUxTIDY0Ci0jZGVmaW5lIElJT0NORVRBSUYgX0lPKCdJJywxKQotI2RlZmluZSBJSU9DTkVURElGIF9JTygnSScsMikKKyNkZWZpbmUgSUlPQ05FVEFJRiBfSU8oJ0knLCAxKQorI2RlZmluZSBJSU9DTkVURElGIF9JTygnSScsIDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJSU9DTkVUU0NGIF9JTygnSScsMykKLSNkZWZpbmUgSUlPQ05FVEdDRiBfSU8oJ0knLDQpCi0jZGVmaW5lIElJT0NORVRBTk0gX0lPKCdJJyw1KQotI2RlZmluZSBJSU9DTkVURE5NIF9JTygnSScsNikKKyNkZWZpbmUgSUlPQ05FVFNDRiBfSU8oJ0knLCAzKQorI2RlZmluZSBJSU9DTkVUR0NGIF9JTygnSScsIDQpCisjZGVmaW5lIElJT0NORVRBTk0gX0lPKCdJJywgNSkKKyNkZWZpbmUgSUlPQ05FVEROTSBfSU8oJ0knLCA2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUlPQ05FVEdOTSBfSU8oJ0knLDcpCi0jZGVmaW5lIElJT0NHRVRTRVQgX0lPKCdJJyw4KQotI2RlZmluZSBJSU9DU0VUU0VUIF9JTygnSScsOSkKLSNkZWZpbmUgSUlPQ1NFVFZFUiBfSU8oJ0knLDEwKQorI2RlZmluZSBJSU9DTkVUR05NIF9JTygnSScsIDcpCisjZGVmaW5lIElJT0NHRVRTRVQgX0lPKCdJJywgOCkKKyNkZWZpbmUgSUlPQ1NFVFNFVCBfSU8oJ0knLCA5KQorI2RlZmluZSBJSU9DU0VUVkVSIF9JTygnSScsIDEwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUlPQ05FVEhVUCBfSU8oJ0knLDExKQotI2RlZmluZSBJSU9DU0VUR1NUIF9JTygnSScsMTIpCi0jZGVmaW5lIElJT0NTRVRCUkogX0lPKCdJJywxMykKLSNkZWZpbmUgSUlPQ1NJR1BSRiBfSU8oJ0knLDE0KQorI2RlZmluZSBJSU9DTkVUSFVQIF9JTygnSScsIDExKQorI2RlZmluZSBJSU9DU0VUR1NUIF9JTygnSScsIDEyKQorI2RlZmluZSBJSU9DU0VUQlJKIF9JTygnSScsIDEzKQorI2RlZmluZSBJSU9DU0lHUFJGIF9JTygnSScsIDE0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUlPQ0dFVFBSRiBfSU8oJ0knLDE1KQotI2RlZmluZSBJSU9DU0VUUFJGIF9JTygnSScsMTYpCi0jZGVmaW5lIElJT0NHRVRNQVAgX0lPKCdJJywxNykKLSNkZWZpbmUgSUlPQ1NFVE1BUCBfSU8oJ0knLDE4KQorI2RlZmluZSBJSU9DR0VUUFJGIF9JTygnSScsIDE1KQorI2RlZmluZSBJSU9DU0VUUFJGIF9JTygnSScsIDE2KQorI2RlZmluZSBJSU9DR0VUTUFQIF9JTygnSScsIDE3KQorI2RlZmluZSBJSU9DU0VUTUFQIF9JTygnSScsIDE4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUlPQ05FVEFTTCBfSU8oJ0knLDE5KQotI2RlZmluZSBJSU9DTkVURElMIF9JTygnSScsMjApCi0jZGVmaW5lIElJT0NHRVRDUFMgX0lPKCdJJywyMSkKLSNkZWZpbmUgSUlPQ0dFVERWUiBfSU8oJ0knLDIyKQorI2RlZmluZSBJSU9DTkVUQVNMIF9JTygnSScsIDE5KQorI2RlZmluZSBJSU9DTkVURElMIF9JTygnSScsIDIwKQorI2RlZmluZSBJSU9DR0VUQ1BTIF9JTygnSScsIDIxKQorI2RlZmluZSBJSU9DR0VURFZSIF9JTygnSScsIDIyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUlPQ05FVExDUiBfSU8oJ0knLDIzKQotI2RlZmluZSBJSU9DTkVURFdSU0VUIF9JTygnSScsMjQpCi0jZGVmaW5lIElJT0NORVRBTE4gX0lPKCdJJywzMikKLSNkZWZpbmUgSUlPQ05FVERMTiBfSU8oJ0knLDMzKQorI2RlZmluZSBJSU9DTkVUTENSIF9JTygnSScsIDIzKQorI2RlZmluZSBJSU9DTkVURFdSU0VUIF9JTygnSScsIDI0KQorI2RlZmluZSBJSU9DTkVUQUxOIF9JTygnSScsIDMyKQorI2RlZmluZSBJSU9DTkVURExOIF9JTygnSScsIDMzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUlPQ05FVEdQTiBfSU8oJ0knLDM0KQotI2RlZmluZSBJSU9DREJHVkFSIF9JTygnSScsMTI3KQotI2RlZmluZSBJSU9DRFJWQ1RMIF9JTygnSScsMTI4KQorI2RlZmluZSBJSU9DTkVUR1BOIF9JTygnSScsIDM0KQorI2RlZmluZSBJSU9DREJHVkFSIF9JTygnSScsIDEyNykKKyNkZWZpbmUgSUlPQ0RSVkNUTCBfSU8oJ0knLCAxMjgpCiAjZGVmaW5lIFNJT0NHS0VFUFBFUklPRCAoU0lPQ0RFVlBSSVZBVEUgKyAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0lPQ1NLRUVQUEVSSU9EIChTSU9DREVWUFJJVkFURSArIDEpCkBAIC05OCw0OCArOTgsNDggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElORl9EViAweDAxCiB0eXBlZGVmIHN0cnVjdCB7Ci0gY2hhciBkcnZpZFsyNV07Ci0gdW5zaWduZWQgbG9uZyBhcmc7CisgIGNoYXIgZHJ2aWRbMjVdOworICB1bnNpZ25lZCBsb25nIGFyZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IGlzZG5faW9jdGxfc3RydWN0OwogdHlwZWRlZiBzdHJ1Y3QgewotIGNoYXIgbmFtZVsxMF07Ci0gY2hhciBwaG9uZVtJU0ROX01TTkxFTl07CisgIGNoYXIgbmFtZVsxMF07CisgIGNoYXIgcGhvbmVbSVNETl9NU05MRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgb3V0Z29pbmc7CisgIGludCBvdXRnb2luZzsKIH0gaXNkbl9uZXRfaW9jdGxfcGhvbmU7CiB0eXBlZGVmIHN0cnVjdCB7Ci0gY2hhciBuYW1lWzEwXTsKKyAgY2hhciBuYW1lWzEwXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBtYXN0ZXJbMTBdOwotIGNoYXIgc2xhdmVbMTBdOwotIGNoYXIgZWF6WzI1Nl07Ci0gY2hhciBkcnZpZFsyNV07CisgIGNoYXIgbWFzdGVyWzEwXTsKKyAgY2hhciBzbGF2ZVsxMF07CisgIGNoYXIgZWF6WzI1Nl07CisgIGNoYXIgZHJ2aWRbMjVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgb25odGltZTsKLSBpbnQgY2hhcmdlOwotIGludCBsMl9wcm90bzsKLSBpbnQgbDNfcHJvdG87CisgIGludCBvbmh0aW1lOworICBpbnQgY2hhcmdlOworICBpbnQgbDJfcHJvdG87CisgIGludCBsM19wcm90bzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBfZW5jYXA7Ci0gaW50IGV4Y2x1c2l2ZTsKLSBpbnQgZGlhbG1heDsKLSBpbnQgc2xhdmVkZWxheTsKKyAgaW50IHBfZW5jYXA7CisgIGludCBleGNsdXNpdmU7CisgIGludCBkaWFsbWF4OworICBpbnQgc2xhdmVkZWxheTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNiZGVsYXk7Ci0gaW50IGNoYXJnZWh1cDsKLSBpbnQgaWh1cDsKLSBpbnQgc2VjdXJlOworICBpbnQgY2JkZWxheTsKKyAgaW50IGNoYXJnZWh1cDsKKyAgaW50IGlodXA7CisgIGludCBzZWN1cmU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjYWxsYmFjazsKLSBpbnQgY2JodXA7Ci0gaW50IHBwcGJpbmQ7Ci0gaW50IGNoYXJnZWludDsKKyAgaW50IGNhbGxiYWNrOworICBpbnQgY2JodXA7CisgIGludCBwcHBiaW5kOworICBpbnQgY2hhcmdlaW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdHJpZ2dlcmNwczsKLSBpbnQgZGlhbHRpbWVvdXQ7Ci0gaW50IGRpYWx3YWl0OwotIGludCBkaWFsbW9kZTsKKyAgaW50IHRyaWdnZXJjcHM7CisgIGludCBkaWFsdGltZW91dDsKKyAgaW50IGRpYWx3YWl0OworICBpbnQgZGlhbG1vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBpc2RuX25ldF9pb2N0bF9jZmc7CiAjZGVmaW5lIElTRE5fTkVUX0RJQUxNT0RFX01BU0sgMHhDMApAQCAtMTQ3LDUgKzE0Nyw1IEBACiAjZGVmaW5lIElTRE5fTkVUX0RNX01BTlVBTCAweDQwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJU0ROX05FVF9ETV9BVVRPIDB4ODAKLSNkZWZpbmUgSVNETl9ORVRfRElBTE1PREUoeCkgKCgmKHgpKS0+ZmxhZ3MgJiBJU0ROX05FVF9ESUFMTU9ERV9NQVNLKQorI2RlZmluZSBJU0ROX05FVF9ESUFMTU9ERSh4KSAoKCYgKHgpKS0+ZmxhZ3MgJiBJU0ROX05FVF9ESUFMTU9ERV9NQVNLKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lzZG4vY2FwaWNtZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pc2RuL2NhcGljbWQuaAppbmRleCBhZDYwNjc5Li5kZDIxM2IwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lzZG4vY2FwaWNtZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXNkbi9jYXBpY21kLmgKQEAgLTE5LDkgKzE5LDkgQEAKICNpZm5kZWYgX19DQVBJQ01EX0hfXwogI2RlZmluZSBfX0NBUElDTURfSF9fCiAjZGVmaW5lIENBUElfTVNHX0JBU0VMRU4gOAotI2RlZmluZSBDQVBJX0RBVEFfQjNfUkVRX0xFTiAoQ0FQSV9NU0dfQkFTRUxFTis0KzQrMisyKzIpCisjZGVmaW5lIENBUElfREFUQV9CM19SRVFfTEVOIChDQVBJX01TR19CQVNFTEVOICsgNCArIDQgKyAyICsgMiArIDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX0RBVEFfQjNfUkVTUF9MRU4gKENBUElfTVNHX0JBU0VMRU4rNCsyKQorI2RlZmluZSBDQVBJX0RBVEFfQjNfUkVTUF9MRU4gKENBUElfTVNHX0JBU0VMRU4gKyA0ICsgMikKICNkZWZpbmUgQ0FQSV9BTEVSVCAweDAxCiAjZGVmaW5lIENBUElfQ09OTkVDVCAweDAyCiAjZGVmaW5lIENBUElfQ09OTkVDVF9BQ1RJVkUgMHgwMwpAQCAtNDYsNzAgKzQ2LDcwIEBACiAjZGVmaW5lIENBUElfSU5EIDB4ODIKICNkZWZpbmUgQ0FQSV9SRVNQIDB4ODMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENBUElDTUQoY21kLHN1YmNtZCkgKCgoY21kKTw8OCl8KHN1YmNtZCkpCi0jZGVmaW5lIENBUElfRElTQ09OTkVDVF9SRVEgQ0FQSUNNRChDQVBJX0RJU0NPTk5FQ1QsQ0FQSV9SRVEpCi0jZGVmaW5lIENBUElfRElTQ09OTkVDVF9DT05GIENBUElDTUQoQ0FQSV9ESVNDT05ORUNULENBUElfQ09ORikKLSNkZWZpbmUgQ0FQSV9ESVNDT05ORUNUX0lORCBDQVBJQ01EKENBUElfRElTQ09OTkVDVCxDQVBJX0lORCkKKyNkZWZpbmUgQ0FQSUNNRChjbWQsc3ViY21kKSAoKChjbWQpIDw8IDgpIHwgKHN1YmNtZCkpCisjZGVmaW5lIENBUElfRElTQ09OTkVDVF9SRVEgQ0FQSUNNRChDQVBJX0RJU0NPTk5FQ1QsIENBUElfUkVRKQorI2RlZmluZSBDQVBJX0RJU0NPTk5FQ1RfQ09ORiBDQVBJQ01EKENBUElfRElTQ09OTkVDVCwgQ0FQSV9DT05GKQorI2RlZmluZSBDQVBJX0RJU0NPTk5FQ1RfSU5EIENBUElDTUQoQ0FQSV9ESVNDT05ORUNULCBDQVBJX0lORCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENBUElfRElTQ09OTkVDVF9SRVNQIENBUElDTUQoQ0FQSV9ESVNDT05ORUNULENBUElfUkVTUCkKLSNkZWZpbmUgQ0FQSV9BTEVSVF9SRVEgQ0FQSUNNRChDQVBJX0FMRVJULENBUElfUkVRKQotI2RlZmluZSBDQVBJX0FMRVJUX0NPTkYgQ0FQSUNNRChDQVBJX0FMRVJULENBUElfQ09ORikKLSNkZWZpbmUgQ0FQSV9DT05ORUNUX1JFUSBDQVBJQ01EKENBUElfQ09OTkVDVCxDQVBJX1JFUSkKKyNkZWZpbmUgQ0FQSV9ESVNDT05ORUNUX1JFU1AgQ0FQSUNNRChDQVBJX0RJU0NPTk5FQ1QsIENBUElfUkVTUCkKKyNkZWZpbmUgQ0FQSV9BTEVSVF9SRVEgQ0FQSUNNRChDQVBJX0FMRVJULCBDQVBJX1JFUSkKKyNkZWZpbmUgQ0FQSV9BTEVSVF9DT05GIENBUElDTUQoQ0FQSV9BTEVSVCwgQ0FQSV9DT05GKQorI2RlZmluZSBDQVBJX0NPTk5FQ1RfUkVRIENBUElDTUQoQ0FQSV9DT05ORUNULCBDQVBJX1JFUSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENBUElfQ09OTkVDVF9DT05GIENBUElDTUQoQ0FQSV9DT05ORUNULENBUElfQ09ORikKLSNkZWZpbmUgQ0FQSV9DT05ORUNUX0lORCBDQVBJQ01EKENBUElfQ09OTkVDVCxDQVBJX0lORCkKLSNkZWZpbmUgQ0FQSV9DT05ORUNUX1JFU1AgQ0FQSUNNRChDQVBJX0NPTk5FQ1QsQ0FQSV9SRVNQKQotI2RlZmluZSBDQVBJX0NPTk5FQ1RfQUNUSVZFX1JFUSBDQVBJQ01EKENBUElfQ09OTkVDVF9BQ1RJVkUsQ0FQSV9SRVEpCisjZGVmaW5lIENBUElfQ09OTkVDVF9DT05GIENBUElDTUQoQ0FQSV9DT05ORUNULCBDQVBJX0NPTkYpCisjZGVmaW5lIENBUElfQ09OTkVDVF9JTkQgQ0FQSUNNRChDQVBJX0NPTk5FQ1QsIENBUElfSU5EKQorI2RlZmluZSBDQVBJX0NPTk5FQ1RfUkVTUCBDQVBJQ01EKENBUElfQ09OTkVDVCwgQ0FQSV9SRVNQKQorI2RlZmluZSBDQVBJX0NPTk5FQ1RfQUNUSVZFX1JFUSBDQVBJQ01EKENBUElfQ09OTkVDVF9BQ1RJVkUsIENBUElfUkVRKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0FQSV9DT05ORUNUX0FDVElWRV9DT05GIENBUElDTUQoQ0FQSV9DT05ORUNUX0FDVElWRSxDQVBJX0NPTkYpCi0jZGVmaW5lIENBUElfQ09OTkVDVF9BQ1RJVkVfSU5EIENBUElDTUQoQ0FQSV9DT05ORUNUX0FDVElWRSxDQVBJX0lORCkKLSNkZWZpbmUgQ0FQSV9DT05ORUNUX0FDVElWRV9SRVNQIENBUElDTUQoQ0FQSV9DT05ORUNUX0FDVElWRSxDQVBJX1JFU1ApCi0jZGVmaW5lIENBUElfU0VMRUNUX0JfUFJPVE9DT0xfUkVRIENBUElDTUQoQ0FQSV9TRUxFQ1RfQl9QUk9UT0NPTCxDQVBJX1JFUSkKKyNkZWZpbmUgQ0FQSV9DT05ORUNUX0FDVElWRV9DT05GIENBUElDTUQoQ0FQSV9DT05ORUNUX0FDVElWRSwgQ0FQSV9DT05GKQorI2RlZmluZSBDQVBJX0NPTk5FQ1RfQUNUSVZFX0lORCBDQVBJQ01EKENBUElfQ09OTkVDVF9BQ1RJVkUsIENBUElfSU5EKQorI2RlZmluZSBDQVBJX0NPTk5FQ1RfQUNUSVZFX1JFU1AgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQUNUSVZFLCBDQVBJX1JFU1ApCisjZGVmaW5lIENBUElfU0VMRUNUX0JfUFJPVE9DT0xfUkVRIENBUElDTUQoQ0FQSV9TRUxFQ1RfQl9QUk9UT0NPTCwgQ0FQSV9SRVEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX1NFTEVDVF9CX1BST1RPQ09MX0NPTkYgQ0FQSUNNRChDQVBJX1NFTEVDVF9CX1BST1RPQ09MLENBUElfQ09ORikKLSNkZWZpbmUgQ0FQSV9DT05ORUNUX0IzX0FDVElWRV9SRVEgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjNfQUNUSVZFLENBUElfUkVRKQotI2RlZmluZSBDQVBJX0NPTk5FQ1RfQjNfQUNUSVZFX0NPTkYgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjNfQUNUSVZFLENBUElfQ09ORikKLSNkZWZpbmUgQ0FQSV9DT05ORUNUX0IzX0FDVElWRV9JTkQgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjNfQUNUSVZFLENBUElfSU5EKQorI2RlZmluZSBDQVBJX1NFTEVDVF9CX1BST1RPQ09MX0NPTkYgQ0FQSUNNRChDQVBJX1NFTEVDVF9CX1BST1RPQ09MLCBDQVBJX0NPTkYpCisjZGVmaW5lIENBUElfQ09OTkVDVF9CM19BQ1RJVkVfUkVRIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzX0FDVElWRSwgQ0FQSV9SRVEpCisjZGVmaW5lIENBUElfQ09OTkVDVF9CM19BQ1RJVkVfQ09ORiBDQVBJQ01EKENBUElfQ09OTkVDVF9CM19BQ1RJVkUsIENBUElfQ09ORikKKyNkZWZpbmUgQ0FQSV9DT05ORUNUX0IzX0FDVElWRV9JTkQgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjNfQUNUSVZFLCBDQVBJX0lORCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENBUElfQ09OTkVDVF9CM19BQ1RJVkVfUkVTUCBDQVBJQ01EKENBUElfQ09OTkVDVF9CM19BQ1RJVkUsQ0FQSV9SRVNQKQotI2RlZmluZSBDQVBJX0NPTk5FQ1RfQjNfUkVRIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzLENBUElfUkVRKQotI2RlZmluZSBDQVBJX0NPTk5FQ1RfQjNfQ09ORiBDQVBJQ01EKENBUElfQ09OTkVDVF9CMyxDQVBJX0NPTkYpCi0jZGVmaW5lIENBUElfQ09OTkVDVF9CM19JTkQgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjMsQ0FQSV9JTkQpCisjZGVmaW5lIENBUElfQ09OTkVDVF9CM19BQ1RJVkVfUkVTUCBDQVBJQ01EKENBUElfQ09OTkVDVF9CM19BQ1RJVkUsIENBUElfUkVTUCkKKyNkZWZpbmUgQ0FQSV9DT05ORUNUX0IzX1JFUSBDQVBJQ01EKENBUElfQ09OTkVDVF9CMywgQ0FQSV9SRVEpCisjZGVmaW5lIENBUElfQ09OTkVDVF9CM19DT05GIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzLCBDQVBJX0NPTkYpCisjZGVmaW5lIENBUElfQ09OTkVDVF9CM19JTkQgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjMsIENBUElfSU5EKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0FQSV9DT05ORUNUX0IzX1JFU1AgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjMsQ0FQSV9SRVNQKQotI2RlZmluZSBDQVBJX0NPTk5FQ1RfQjNfVDkwX0FDVElWRV9JTkQgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjNfVDkwX0FDVElWRSxDQVBJX0lORCkKLSNkZWZpbmUgQ0FQSV9DT05ORUNUX0IzX1Q5MF9BQ1RJVkVfUkVTUCBDQVBJQ01EKENBUElfQ09OTkVDVF9CM19UOTBfQUNUSVZFLENBUElfUkVTUCkKLSNkZWZpbmUgQ0FQSV9EQVRBX0IzX1JFUSBDQVBJQ01EKENBUElfREFUQV9CMyxDQVBJX1JFUSkKKyNkZWZpbmUgQ0FQSV9DT05ORUNUX0IzX1JFU1AgQ0FQSUNNRChDQVBJX0NPTk5FQ1RfQjMsIENBUElfUkVTUCkKKyNkZWZpbmUgQ0FQSV9DT05ORUNUX0IzX1Q5MF9BQ1RJVkVfSU5EIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzX1Q5MF9BQ1RJVkUsIENBUElfSU5EKQorI2RlZmluZSBDQVBJX0NPTk5FQ1RfQjNfVDkwX0FDVElWRV9SRVNQIENBUElDTUQoQ0FQSV9DT05ORUNUX0IzX1Q5MF9BQ1RJVkUsIENBUElfUkVTUCkKKyNkZWZpbmUgQ0FQSV9EQVRBX0IzX1JFUSBDQVBJQ01EKENBUElfREFUQV9CMywgQ0FQSV9SRVEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX0RBVEFfQjNfQ09ORiBDQVBJQ01EKENBUElfREFUQV9CMyxDQVBJX0NPTkYpCi0jZGVmaW5lIENBUElfREFUQV9CM19JTkQgQ0FQSUNNRChDQVBJX0RBVEFfQjMsQ0FQSV9JTkQpCi0jZGVmaW5lIENBUElfREFUQV9CM19SRVNQIENBUElDTUQoQ0FQSV9EQVRBX0IzLENBUElfUkVTUCkKLSNkZWZpbmUgQ0FQSV9ESVNDT05ORUNUX0IzX1JFUSBDQVBJQ01EKENBUElfRElTQ09OTkVDVF9CMyxDQVBJX1JFUSkKKyNkZWZpbmUgQ0FQSV9EQVRBX0IzX0NPTkYgQ0FQSUNNRChDQVBJX0RBVEFfQjMsIENBUElfQ09ORikKKyNkZWZpbmUgQ0FQSV9EQVRBX0IzX0lORCBDQVBJQ01EKENBUElfREFUQV9CMywgQ0FQSV9JTkQpCisjZGVmaW5lIENBUElfREFUQV9CM19SRVNQIENBUElDTUQoQ0FQSV9EQVRBX0IzLCBDQVBJX1JFU1ApCisjZGVmaW5lIENBUElfRElTQ09OTkVDVF9CM19SRVEgQ0FQSUNNRChDQVBJX0RJU0NPTk5FQ1RfQjMsIENBUElfUkVRKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQ0FQSV9ESVNDT05ORUNUX0IzX0NPTkYgQ0FQSUNNRChDQVBJX0RJU0NPTk5FQ1RfQjMsQ0FQSV9DT05GKQotI2RlZmluZSBDQVBJX0RJU0NPTk5FQ1RfQjNfSU5EIENBUElDTUQoQ0FQSV9ESVNDT05ORUNUX0IzLENBUElfSU5EKQotI2RlZmluZSBDQVBJX0RJU0NPTk5FQ1RfQjNfUkVTUCBDQVBJQ01EKENBUElfRElTQ09OTkVDVF9CMyxDQVBJX1JFU1ApCi0jZGVmaW5lIENBUElfUkVTRVRfQjNfUkVRIENBUElDTUQoQ0FQSV9SRVNFVF9CMyxDQVBJX1JFUSkKKyNkZWZpbmUgQ0FQSV9ESVNDT05ORUNUX0IzX0NPTkYgQ0FQSUNNRChDQVBJX0RJU0NPTk5FQ1RfQjMsIENBUElfQ09ORikKKyNkZWZpbmUgQ0FQSV9ESVNDT05ORUNUX0IzX0lORCBDQVBJQ01EKENBUElfRElTQ09OTkVDVF9CMywgQ0FQSV9JTkQpCisjZGVmaW5lIENBUElfRElTQ09OTkVDVF9CM19SRVNQIENBUElDTUQoQ0FQSV9ESVNDT05ORUNUX0IzLCBDQVBJX1JFU1ApCisjZGVmaW5lIENBUElfUkVTRVRfQjNfUkVRIENBUElDTUQoQ0FQSV9SRVNFVF9CMywgQ0FQSV9SRVEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX1JFU0VUX0IzX0NPTkYgQ0FQSUNNRChDQVBJX1JFU0VUX0IzLENBUElfQ09ORikKLSNkZWZpbmUgQ0FQSV9SRVNFVF9CM19JTkQgQ0FQSUNNRChDQVBJX1JFU0VUX0IzLENBUElfSU5EKQotI2RlZmluZSBDQVBJX1JFU0VUX0IzX1JFU1AgQ0FQSUNNRChDQVBJX1JFU0VUX0IzLENBUElfUkVTUCkKLSNkZWZpbmUgQ0FQSV9MSVNURU5fUkVRIENBUElDTUQoQ0FQSV9MSVNURU4sQ0FQSV9SRVEpCisjZGVmaW5lIENBUElfUkVTRVRfQjNfQ09ORiBDQVBJQ01EKENBUElfUkVTRVRfQjMsIENBUElfQ09ORikKKyNkZWZpbmUgQ0FQSV9SRVNFVF9CM19JTkQgQ0FQSUNNRChDQVBJX1JFU0VUX0IzLCBDQVBJX0lORCkKKyNkZWZpbmUgQ0FQSV9SRVNFVF9CM19SRVNQIENBUElDTUQoQ0FQSV9SRVNFVF9CMywgQ0FQSV9SRVNQKQorI2RlZmluZSBDQVBJX0xJU1RFTl9SRVEgQ0FQSUNNRChDQVBJX0xJU1RFTiwgQ0FQSV9SRVEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX0xJU1RFTl9DT05GIENBUElDTUQoQ0FQSV9MSVNURU4sQ0FQSV9DT05GKQotI2RlZmluZSBDQVBJX01BTlVGQUNUVVJFUl9SRVEgQ0FQSUNNRChDQVBJX01BTlVGQUNUVVJFUixDQVBJX1JFUSkKLSNkZWZpbmUgQ0FQSV9NQU5VRkFDVFVSRVJfQ09ORiBDQVBJQ01EKENBUElfTUFOVUZBQ1RVUkVSLENBUElfQ09ORikKLSNkZWZpbmUgQ0FQSV9NQU5VRkFDVFVSRVJfSU5EIENBUElDTUQoQ0FQSV9NQU5VRkFDVFVSRVIsQ0FQSV9JTkQpCisjZGVmaW5lIENBUElfTElTVEVOX0NPTkYgQ0FQSUNNRChDQVBJX0xJU1RFTiwgQ0FQSV9DT05GKQorI2RlZmluZSBDQVBJX01BTlVGQUNUVVJFUl9SRVEgQ0FQSUNNRChDQVBJX01BTlVGQUNUVVJFUiwgQ0FQSV9SRVEpCisjZGVmaW5lIENBUElfTUFOVUZBQ1RVUkVSX0NPTkYgQ0FQSUNNRChDQVBJX01BTlVGQUNUVVJFUiwgQ0FQSV9DT05GKQorI2RlZmluZSBDQVBJX01BTlVGQUNUVVJFUl9JTkQgQ0FQSUNNRChDQVBJX01BTlVGQUNUVVJFUiwgQ0FQSV9JTkQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX01BTlVGQUNUVVJFUl9SRVNQIENBUElDTUQoQ0FQSV9NQU5VRkFDVFVSRVIsQ0FQSV9SRVNQKQotI2RlZmluZSBDQVBJX0ZBQ0lMSVRZX1JFUSBDQVBJQ01EKENBUElfRkFDSUxJVFksQ0FQSV9SRVEpCi0jZGVmaW5lIENBUElfRkFDSUxJVFlfQ09ORiBDQVBJQ01EKENBUElfRkFDSUxJVFksQ0FQSV9DT05GKQotI2RlZmluZSBDQVBJX0ZBQ0lMSVRZX0lORCBDQVBJQ01EKENBUElfRkFDSUxJVFksQ0FQSV9JTkQpCisjZGVmaW5lIENBUElfTUFOVUZBQ1RVUkVSX1JFU1AgQ0FQSUNNRChDQVBJX01BTlVGQUNUVVJFUiwgQ0FQSV9SRVNQKQorI2RlZmluZSBDQVBJX0ZBQ0lMSVRZX1JFUSBDQVBJQ01EKENBUElfRkFDSUxJVFksIENBUElfUkVRKQorI2RlZmluZSBDQVBJX0ZBQ0lMSVRZX0NPTkYgQ0FQSUNNRChDQVBJX0ZBQ0lMSVRZLCBDQVBJX0NPTkYpCisjZGVmaW5lIENBUElfRkFDSUxJVFlfSU5EIENBUElDTUQoQ0FQSV9GQUNJTElUWSwgQ0FQSV9JTkQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBDQVBJX0ZBQ0lMSVRZX1JFU1AgQ0FQSUNNRChDQVBJX0ZBQ0lMSVRZLENBUElfUkVTUCkKLSNkZWZpbmUgQ0FQSV9JTkZPX1JFUSBDQVBJQ01EKENBUElfSU5GTyxDQVBJX1JFUSkKLSNkZWZpbmUgQ0FQSV9JTkZPX0NPTkYgQ0FQSUNNRChDQVBJX0lORk8sQ0FQSV9DT05GKQotI2RlZmluZSBDQVBJX0lORk9fSU5EIENBUElDTUQoQ0FQSV9JTkZPLENBUElfSU5EKQorI2RlZmluZSBDQVBJX0ZBQ0lMSVRZX1JFU1AgQ0FQSUNNRChDQVBJX0ZBQ0lMSVRZLCBDQVBJX1JFU1ApCisjZGVmaW5lIENBUElfSU5GT19SRVEgQ0FQSUNNRChDQVBJX0lORk8sIENBUElfUkVRKQorI2RlZmluZSBDQVBJX0lORk9fQ09ORiBDQVBJQ01EKENBUElfSU5GTywgQ0FQSV9DT05GKQorI2RlZmluZSBDQVBJX0lORk9fSU5EIENBUElDTUQoQ0FQSV9JTkZPLCBDQVBJX0lORCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIENBUElfSU5GT19SRVNQIENBUElDTUQoQ0FQSV9JTkZPLENBUElfUkVTUCkKKyNkZWZpbmUgQ0FQSV9JTkZPX1JFU1AgQ0FQSUNNRChDQVBJX0lORk8sIENBUElfUkVTUCkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pc2RuX3BwcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pc2RuX3BwcC5oCmluZGV4IGNlMDhmMmYuLjcxMmEwNzYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXNkbl9wcHAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lzZG5fcHBwLmgKQEAgLTIzLDUxICsyMyw0OSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ0FMTFRZUEVfQ0FMTEJBQ0sgMHg0CiAjZGVmaW5lIElQUFBfVkVSU0lPTiAiMi4yLjAiCi1zdHJ1Y3QgcHBwY2FsbGluZm8KLXsKK3N0cnVjdCBwcHBjYWxsaW5mbyB7CisgIGludCBjYWxsdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNhbGx0eXBlOwotIHVuc2lnbmVkIGNoYXIgbG9jYWxfbnVtWzY0XTsKLSB1bnNpZ25lZCBjaGFyIHJlbW90ZV9udW1bNjRdOwotIGludCBjaGFyZ2VfdW5pdHM7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBjaGFyIGxvY2FsX251bVs2NF07CisgIHVuc2lnbmVkIGNoYXIgcmVtb3RlX251bVs2NF07CisgIGludCBjaGFyZ2VfdW5pdHM7CiB9OwotI2RlZmluZSBQUFBJT0NHQ0FMTElORk8gX0lPV1IoJ3QnLDEyOCxzdHJ1Y3QgcHBwY2FsbGluZm8pCi0jZGVmaW5lIFBQUElPQ0JVTkRMRSBfSU9XKCd0JywxMjksaW50KQotI2RlZmluZSBQUFBJT0NHTVBGTEFHUyBfSU9SKCd0JywxMzAsaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUFBQSU9DU01QRkxBR1MgX0lPVygndCcsMTMxLGludCkKLSNkZWZpbmUgUFBQSU9DU01QTVRVIF9JT1coJ3QnLDEzMixpbnQpCi0jZGVmaW5lIFBQUElPQ1NNUE1SVSBfSU9XKCd0JywxMzMsaW50KQotI2RlZmluZSBQUFBJT0NHQ09NUFJFU1NPUlMgX0lPUigndCcsMTM0LHVuc2lnbmVkIGxvbmcgWzhdKQorI2RlZmluZSBQUFBJT0NHQ0FMTElORk8gX0lPV1IoJ3QnLCAxMjgsIHN0cnVjdCBwcHBjYWxsaW5mbykKKyNkZWZpbmUgUFBQSU9DQlVORExFIF9JT1coJ3QnLCAxMjksIGludCkKKyNkZWZpbmUgUFBQSU9DR01QRkxBR1MgX0lPUigndCcsIDEzMCwgaW50KQorI2RlZmluZSBQUFBJT0NTTVBGTEFHUyBfSU9XKCd0JywgMTMxLCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQUFBJT0NTQ09NUFJFU1NPUiBfSU9XKCd0JywxMzUsaW50KQotI2RlZmluZSBQUFBJT0NHSUZOQU1FIF9JT1IoJ3QnLDEzNiwgY2hhciBbSUZOQU1TSVpdICkKKyNkZWZpbmUgUFBQSU9DU01QTVRVIF9JT1coJ3QnLCAxMzIsIGludCkKKyNkZWZpbmUgUFBQSU9DU01QTVJVIF9JT1coJ3QnLCAxMzMsIGludCkKKyNkZWZpbmUgUFBQSU9DR0NPTVBSRVNTT1JTIF9JT1IoJ3QnLCAxMzQsIHVuc2lnbmVkIGxvbmdbOF0pCisjZGVmaW5lIFBQUElPQ1NDT01QUkVTU09SIF9JT1coJ3QnLCAxMzUsIGludCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBQUElPQ0dJRk5BTUUgX0lPUigndCcsIDEzNiwgY2hhcltJRk5BTVNJWl0pCiAjZGVmaW5lIFNDX01QX1BST1QgMHgwMDAwMDIwMAogI2RlZmluZSBTQ19SRUpfTVBfUFJPVCAweDAwMDAwNDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQ19PVVRfU0hPUlRfU0VRIDB4MDAwMDA4MDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNDX0lOX1NIT1JUX1NFUSAweDAwMDA0MDAwCiAjZGVmaW5lIFNDX0RFQ09NUF9PTiAweDAxCiAjZGVmaW5lIFNDX0NPTVBfT04gMHgwMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0NfREVDT01QX0RJU0NBUkQgMHgwNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0NfQ09NUF9ESVNDQVJEIDB4MDgKICNkZWZpbmUgU0NfTElOS19ERUNPTVBfT04gMHgxMAogI2RlZmluZSBTQ19MSU5LX0NPTVBfT04gMHgyMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0NfTElOS19ERUNPTVBfRElTQ0FSRCAweDQwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQ19MSU5LX0NPTVBfRElTQ0FSRCAweDgwCiAjZGVmaW5lIElTRE5fUFBQX0NPTVBfTUFYX09QVElPTlMgMTYKICNkZWZpbmUgSVBQUF9DT01QX0ZMQUdfWE1JVCAweDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQUFBfQ09NUF9GTEFHX0xJTksgMHgyCi1zdHJ1Y3QgaXNkbl9wcHBfY29tcF9kYXRhIHsKLSBpbnQgbnVtOwotIHVuc2lnbmVkIGNoYXIgb3B0aW9uc1tJU0ROX1BQUF9DT01QX01BWF9PUFRJT05TXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG9wdGxlbjsKLSBpbnQgZmxhZ3M7CitzdHJ1Y3QgaXNkbl9wcHBfY29tcF9kYXRhIHsKKyAgaW50IG51bTsKKyAgdW5zaWduZWQgY2hhciBvcHRpb25zW0lTRE5fUFBQX0NPTVBfTUFYX09QVElPTlNdOworICBpbnQgb3B0bGVuOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IGZsYWdzOwogfTsKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXNvX2ZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2lzb19mcy5oCmluZGV4IDBiN2I3NDIuLmRjN2ExN2QgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXNvX2ZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pc29fZnMuaApAQCAtMjEsMTMgKzIxLDEzIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNpbmNsdWRlIDxsaW51eC9tYWdpYy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVNPRENMKGZyb20sIHRvKSAodG8gLSBmcm9tICsgMSkKKyNkZWZpbmUgSVNPRENMKGZyb20sdG8pICh0byAtIGZyb20gKyAxKQogc3RydWN0IGlzb192b2x1bWVfZGVzY3JpcHRvciB7Ci0gY2hhciB0eXBlW0lTT0RDTCgxLDEpXTsKLSBjaGFyIGlkW0lTT0RDTCgyLDYpXTsKKyAgY2hhciB0eXBlW0lTT0RDTCgxLCAxKV07CisgIGNoYXIgaWRbSVNPRENMKDIsIDYpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciB2ZXJzaW9uW0lTT0RDTCg3LDcpXTsKLSBjaGFyIGRhdGFbSVNPRENMKDgsMjA0OCldOworICBjaGFyIHZlcnNpb25bSVNPRENMKDcsIDcpXTsKKyAgY2hhciBkYXRhW0lTT0RDTCg4LCAyMDQ4KV07CiB9OwogI2RlZmluZSBJU09fVkRfUFJJTUFSWSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMzYsMTQ4ICszNiwxNDggQEAKICNkZWZpbmUgSVNPX1NUQU5EQVJEX0lEICJDRDAwMSIKIHN0cnVjdCBpc29fcHJpbWFyeV9kZXNjcmlwdG9yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciB0eXBlIFtJU09EQ0wgKCAxLCAxKV07Ci0gY2hhciBpZCBbSVNPRENMICggMiwgNildOwotIGNoYXIgdmVyc2lvbiBbSVNPRENMICggNywgNyldOwotIGNoYXIgdW51c2VkMSBbSVNPRENMICggOCwgOCldOworICBjaGFyIHR5cGVbSVNPRENMKDEsIDEpXTsKKyAgY2hhciBpZFtJU09EQ0woMiwgNildOworICBjaGFyIHZlcnNpb25bSVNPRENMKDcsIDcpXTsKKyAgY2hhciB1bnVzZWQxW0lTT0RDTCg4LCA4KV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgc3lzdGVtX2lkIFtJU09EQ0wgKCA5LCA0MCldOwotIGNoYXIgdm9sdW1lX2lkIFtJU09EQ0wgKCA0MSwgNzIpXTsKLSBjaGFyIHVudXNlZDIgW0lTT0RDTCAoIDczLCA4MCldOwotIGNoYXIgdm9sdW1lX3NwYWNlX3NpemUgW0lTT0RDTCAoIDgxLCA4OCldOworICBjaGFyIHN5c3RlbV9pZFtJU09EQ0woOSwgNDApXTsKKyAgY2hhciB2b2x1bWVfaWRbSVNPRENMKDQxLCA3MildOworICBjaGFyIHVudXNlZDJbSVNPRENMKDczLCA4MCldOworICBjaGFyIHZvbHVtZV9zcGFjZV9zaXplW0lTT0RDTCg4MSwgODgpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciB1bnVzZWQzIFtJU09EQ0wgKCA4OSwgMTIwKV07Ci0gY2hhciB2b2x1bWVfc2V0X3NpemUgW0lTT0RDTCAoMTIxLCAxMjQpXTsKLSBjaGFyIHZvbHVtZV9zZXF1ZW5jZV9udW1iZXIgW0lTT0RDTCAoMTI1LCAxMjgpXTsKLSBjaGFyIGxvZ2ljYWxfYmxvY2tfc2l6ZSBbSVNPRENMICgxMjksIDEzMildOworICBjaGFyIHVudXNlZDNbSVNPRENMKDg5LCAxMjApXTsKKyAgY2hhciB2b2x1bWVfc2V0X3NpemVbSVNPRENMKDEyMSwgMTI0KV07CisgIGNoYXIgdm9sdW1lX3NlcXVlbmNlX251bWJlcltJU09EQ0woMTI1LCAxMjgpXTsKKyAgY2hhciBsb2dpY2FsX2Jsb2NrX3NpemVbSVNPRENMKDEyOSwgMTMyKV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcGF0aF90YWJsZV9zaXplIFtJU09EQ0wgKDEzMywgMTQwKV07Ci0gY2hhciB0eXBlX2xfcGF0aF90YWJsZSBbSVNPRENMICgxNDEsIDE0NCldOwotIGNoYXIgb3B0X3R5cGVfbF9wYXRoX3RhYmxlIFtJU09EQ0wgKDE0NSwgMTQ4KV07Ci0gY2hhciB0eXBlX21fcGF0aF90YWJsZSBbSVNPRENMICgxNDksIDE1MildOworICBjaGFyIHBhdGhfdGFibGVfc2l6ZVtJU09EQ0woMTMzLCAxNDApXTsKKyAgY2hhciB0eXBlX2xfcGF0aF90YWJsZVtJU09EQ0woMTQxLCAxNDQpXTsKKyAgY2hhciBvcHRfdHlwZV9sX3BhdGhfdGFibGVbSVNPRENMKDE0NSwgMTQ4KV07CisgIGNoYXIgdHlwZV9tX3BhdGhfdGFibGVbSVNPRENMKDE0OSwgMTUyKV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgb3B0X3R5cGVfbV9wYXRoX3RhYmxlIFtJU09EQ0wgKDE1MywgMTU2KV07Ci0gY2hhciByb290X2RpcmVjdG9yeV9yZWNvcmQgW0lTT0RDTCAoMTU3LCAxOTApXTsKLSBjaGFyIHZvbHVtZV9zZXRfaWQgW0lTT0RDTCAoMTkxLCAzMTgpXTsKLSBjaGFyIHB1Ymxpc2hlcl9pZCBbSVNPRENMICgzMTksIDQ0NildOworICBjaGFyIG9wdF90eXBlX21fcGF0aF90YWJsZVtJU09EQ0woMTUzLCAxNTYpXTsKKyAgY2hhciByb290X2RpcmVjdG9yeV9yZWNvcmRbSVNPRENMKDE1NywgMTkwKV07CisgIGNoYXIgdm9sdW1lX3NldF9pZFtJU09EQ0woMTkxLCAzMTgpXTsKKyAgY2hhciBwdWJsaXNoZXJfaWRbSVNPRENMKDMxOSwgNDQ2KV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcHJlcGFyZXJfaWQgW0lTT0RDTCAoNDQ3LCA1NzQpXTsKLSBjaGFyIGFwcGxpY2F0aW9uX2lkIFtJU09EQ0wgKDU3NSwgNzAyKV07Ci0gY2hhciBjb3B5cmlnaHRfZmlsZV9pZCBbSVNPRENMICg3MDMsIDczOSldOwotIGNoYXIgYWJzdHJhY3RfZmlsZV9pZCBbSVNPRENMICg3NDAsIDc3NildOworICBjaGFyIHByZXBhcmVyX2lkW0lTT0RDTCg0NDcsIDU3NCldOworICBjaGFyIGFwcGxpY2F0aW9uX2lkW0lTT0RDTCg1NzUsIDcwMildOworICBjaGFyIGNvcHlyaWdodF9maWxlX2lkW0lTT0RDTCg3MDMsIDczOSldOworICBjaGFyIGFic3RyYWN0X2ZpbGVfaWRbSVNPRENMKDc0MCwgNzc2KV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgYmlibGlvZ3JhcGhpY19maWxlX2lkIFtJU09EQ0wgKDc3NywgODEzKV07Ci0gY2hhciBjcmVhdGlvbl9kYXRlIFtJU09EQ0wgKDgxNCwgODMwKV07Ci0gY2hhciBtb2RpZmljYXRpb25fZGF0ZSBbSVNPRENMICg4MzEsIDg0NyldOwotIGNoYXIgZXhwaXJhdGlvbl9kYXRlIFtJU09EQ0wgKDg0OCwgODY0KV07CisgIGNoYXIgYmlibGlvZ3JhcGhpY19maWxlX2lkW0lTT0RDTCg3NzcsIDgxMyldOworICBjaGFyIGNyZWF0aW9uX2RhdGVbSVNPRENMKDgxNCwgODMwKV07CisgIGNoYXIgbW9kaWZpY2F0aW9uX2RhdGVbSVNPRENMKDgzMSwgODQ3KV07CisgIGNoYXIgZXhwaXJhdGlvbl9kYXRlW0lTT0RDTCg4NDgsIDg2NCldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGVmZmVjdGl2ZV9kYXRlIFtJU09EQ0wgKDg2NSwgODgxKV07Ci0gY2hhciBmaWxlX3N0cnVjdHVyZV92ZXJzaW9uIFtJU09EQ0wgKDg4MiwgODgyKV07Ci0gY2hhciB1bnVzZWQ0IFtJU09EQ0wgKDg4MywgODgzKV07Ci0gY2hhciBhcHBsaWNhdGlvbl9kYXRhIFtJU09EQ0wgKDg4NCwgMTM5NSldOworICBjaGFyIGVmZmVjdGl2ZV9kYXRlW0lTT0RDTCg4NjUsIDg4MSldOworICBjaGFyIGZpbGVfc3RydWN0dXJlX3ZlcnNpb25bSVNPRENMKDg4MiwgODgyKV07CisgIGNoYXIgdW51c2VkNFtJU09EQ0woODgzLCA4ODMpXTsKKyAgY2hhciBhcHBsaWNhdGlvbl9kYXRhW0lTT0RDTCg4ODQsIDEzOTUpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciB1bnVzZWQ1IFtJU09EQ0wgKDEzOTYsIDIwNDgpXTsKKyAgY2hhciB1bnVzZWQ1W0lTT0RDTCgxMzk2LCAyMDQ4KV07CiB9Owogc3RydWN0IGlzb19zdXBwbGVtZW50YXJ5X2Rlc2NyaXB0b3IgewotIGNoYXIgdHlwZSBbSVNPRENMICggMSwgMSldOworICBjaGFyIHR5cGVbSVNPRENMKDEsIDEpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBpZCBbSVNPRENMICggMiwgNildOwotIGNoYXIgdmVyc2lvbiBbSVNPRENMICggNywgNyldOwotIGNoYXIgZmxhZ3MgW0lTT0RDTCAoIDgsIDgpXTsKLSBjaGFyIHN5c3RlbV9pZCBbSVNPRENMICggOSwgNDApXTsKKyAgY2hhciBpZFtJU09EQ0woMiwgNildOworICBjaGFyIHZlcnNpb25bSVNPRENMKDcsIDcpXTsKKyAgY2hhciBmbGFnc1tJU09EQ0woOCwgOCldOworICBjaGFyIHN5c3RlbV9pZFtJU09EQ0woOSwgNDApXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciB2b2x1bWVfaWQgW0lTT0RDTCAoIDQxLCA3MildOwotIGNoYXIgdW51c2VkMiBbSVNPRENMICggNzMsIDgwKV07Ci0gY2hhciB2b2x1bWVfc3BhY2Vfc2l6ZSBbSVNPRENMICggODEsIDg4KV07Ci0gY2hhciBlc2NhcGUgW0lTT0RDTCAoIDg5LCAxMjApXTsKKyAgY2hhciB2b2x1bWVfaWRbSVNPRENMKDQxLCA3MildOworICBjaGFyIHVudXNlZDJbSVNPRENMKDczLCA4MCldOworICBjaGFyIHZvbHVtZV9zcGFjZV9zaXplW0lTT0RDTCg4MSwgODgpXTsKKyAgY2hhciBlc2NhcGVbSVNPRENMKDg5LCAxMjApXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciB2b2x1bWVfc2V0X3NpemUgW0lTT0RDTCAoMTIxLCAxMjQpXTsKLSBjaGFyIHZvbHVtZV9zZXF1ZW5jZV9udW1iZXIgW0lTT0RDTCAoMTI1LCAxMjgpXTsKLSBjaGFyIGxvZ2ljYWxfYmxvY2tfc2l6ZSBbSVNPRENMICgxMjksIDEzMildOwotIGNoYXIgcGF0aF90YWJsZV9zaXplIFtJU09EQ0wgKDEzMywgMTQwKV07CisgIGNoYXIgdm9sdW1lX3NldF9zaXplW0lTT0RDTCgxMjEsIDEyNCldOworICBjaGFyIHZvbHVtZV9zZXF1ZW5jZV9udW1iZXJbSVNPRENMKDEyNSwgMTI4KV07CisgIGNoYXIgbG9naWNhbF9ibG9ja19zaXplW0lTT0RDTCgxMjksIDEzMildOworICBjaGFyIHBhdGhfdGFibGVfc2l6ZVtJU09EQ0woMTMzLCAxNDApXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciB0eXBlX2xfcGF0aF90YWJsZSBbSVNPRENMICgxNDEsIDE0NCldOwotIGNoYXIgb3B0X3R5cGVfbF9wYXRoX3RhYmxlIFtJU09EQ0wgKDE0NSwgMTQ4KV07Ci0gY2hhciB0eXBlX21fcGF0aF90YWJsZSBbSVNPRENMICgxNDksIDE1MildOwotIGNoYXIgb3B0X3R5cGVfbV9wYXRoX3RhYmxlIFtJU09EQ0wgKDE1MywgMTU2KV07CisgIGNoYXIgdHlwZV9sX3BhdGhfdGFibGVbSVNPRENMKDE0MSwgMTQ0KV07CisgIGNoYXIgb3B0X3R5cGVfbF9wYXRoX3RhYmxlW0lTT0RDTCgxNDUsIDE0OCldOworICBjaGFyIHR5cGVfbV9wYXRoX3RhYmxlW0lTT0RDTCgxNDksIDE1MildOworICBjaGFyIG9wdF90eXBlX21fcGF0aF90YWJsZVtJU09EQ0woMTUzLCAxNTYpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciByb290X2RpcmVjdG9yeV9yZWNvcmQgW0lTT0RDTCAoMTU3LCAxOTApXTsKLSBjaGFyIHZvbHVtZV9zZXRfaWQgW0lTT0RDTCAoMTkxLCAzMTgpXTsKLSBjaGFyIHB1Ymxpc2hlcl9pZCBbSVNPRENMICgzMTksIDQ0NildOwotIGNoYXIgcHJlcGFyZXJfaWQgW0lTT0RDTCAoNDQ3LCA1NzQpXTsKKyAgY2hhciByb290X2RpcmVjdG9yeV9yZWNvcmRbSVNPRENMKDE1NywgMTkwKV07CisgIGNoYXIgdm9sdW1lX3NldF9pZFtJU09EQ0woMTkxLCAzMTgpXTsKKyAgY2hhciBwdWJsaXNoZXJfaWRbSVNPRENMKDMxOSwgNDQ2KV07CisgIGNoYXIgcHJlcGFyZXJfaWRbSVNPRENMKDQ0NywgNTc0KV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgYXBwbGljYXRpb25faWQgW0lTT0RDTCAoNTc1LCA3MDIpXTsKLSBjaGFyIGNvcHlyaWdodF9maWxlX2lkIFtJU09EQ0wgKDcwMywgNzM5KV07Ci0gY2hhciBhYnN0cmFjdF9maWxlX2lkIFtJU09EQ0wgKDc0MCwgNzc2KV07Ci0gY2hhciBiaWJsaW9ncmFwaGljX2ZpbGVfaWQgW0lTT0RDTCAoNzc3LCA4MTMpXTsKKyAgY2hhciBhcHBsaWNhdGlvbl9pZFtJU09EQ0woNTc1LCA3MDIpXTsKKyAgY2hhciBjb3B5cmlnaHRfZmlsZV9pZFtJU09EQ0woNzAzLCA3MzkpXTsKKyAgY2hhciBhYnN0cmFjdF9maWxlX2lkW0lTT0RDTCg3NDAsIDc3NildOworICBjaGFyIGJpYmxpb2dyYXBoaWNfZmlsZV9pZFtJU09EQ0woNzc3LCA4MTMpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBjcmVhdGlvbl9kYXRlIFtJU09EQ0wgKDgxNCwgODMwKV07Ci0gY2hhciBtb2RpZmljYXRpb25fZGF0ZSBbSVNPRENMICg4MzEsIDg0NyldOwotIGNoYXIgZXhwaXJhdGlvbl9kYXRlIFtJU09EQ0wgKDg0OCwgODY0KV07Ci0gY2hhciBlZmZlY3RpdmVfZGF0ZSBbSVNPRENMICg4NjUsIDg4MSldOworICBjaGFyIGNyZWF0aW9uX2RhdGVbSVNPRENMKDgxNCwgODMwKV07CisgIGNoYXIgbW9kaWZpY2F0aW9uX2RhdGVbSVNPRENMKDgzMSwgODQ3KV07CisgIGNoYXIgZXhwaXJhdGlvbl9kYXRlW0lTT0RDTCg4NDgsIDg2NCldOworICBjaGFyIGVmZmVjdGl2ZV9kYXRlW0lTT0RDTCg4NjUsIDg4MSldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGZpbGVfc3RydWN0dXJlX3ZlcnNpb24gW0lTT0RDTCAoODgyLCA4ODIpXTsKLSBjaGFyIHVudXNlZDQgW0lTT0RDTCAoODgzLCA4ODMpXTsKLSBjaGFyIGFwcGxpY2F0aW9uX2RhdGEgW0lTT0RDTCAoODg0LCAxMzk1KV07Ci0gY2hhciB1bnVzZWQ1IFtJU09EQ0wgKDEzOTYsIDIwNDgpXTsKKyAgY2hhciBmaWxlX3N0cnVjdHVyZV92ZXJzaW9uW0lTT0RDTCg4ODIsIDg4MildOworICBjaGFyIHVudXNlZDRbSVNPRENMKDg4MywgODgzKV07CisgIGNoYXIgYXBwbGljYXRpb25fZGF0YVtJU09EQ0woODg0LCAxMzk1KV07CisgIGNoYXIgdW51c2VkNVtJU09EQ0woMTM5NiwgMjA0OCldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEhTX1NUQU5EQVJEX0lEICJDRFJPTSIKIHN0cnVjdCBoc192b2x1bWVfZGVzY3JpcHRvciB7Ci0gY2hhciBmb28gW0lTT0RDTCAoIDEsIDgpXTsKKyAgY2hhciBmb29bSVNPRENMKDEsIDgpXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciB0eXBlIFtJU09EQ0wgKCA5LCA5KV07Ci0gY2hhciBpZCBbSVNPRENMICggMTAsIDE0KV07Ci0gY2hhciB2ZXJzaW9uIFtJU09EQ0wgKCAxNSwgMTUpXTsKLSBjaGFyIGRhdGFbSVNPRENMKDE2LDIwNDgpXTsKKyAgY2hhciB0eXBlW0lTT0RDTCg5LCA5KV07CisgIGNoYXIgaWRbSVNPRENMKDEwLCAxNCldOworICBjaGFyIHZlcnNpb25bSVNPRENMKDE1LCAxNSldOworICBjaGFyIGRhdGFbSVNPRENMKDE2LCAyMDQ4KV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBoc19wcmltYXJ5X2Rlc2NyaXB0b3IgewotIGNoYXIgZm9vIFtJU09EQ0wgKCAxLCA4KV07Ci0gY2hhciB0eXBlIFtJU09EQ0wgKCA5LCA5KV07CisgIGNoYXIgZm9vW0lTT0RDTCgxLCA4KV07CisgIGNoYXIgdHlwZVtJU09EQ0woOSwgOSldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGlkIFtJU09EQ0wgKCAxMCwgMTQpXTsKLSBjaGFyIHZlcnNpb24gW0lTT0RDTCAoIDE1LCAxNSldOwotIGNoYXIgdW51c2VkMSBbSVNPRENMICggMTYsIDE2KV07Ci0gY2hhciBzeXN0ZW1faWQgW0lTT0RDTCAoIDE3LCA0OCldOworICBjaGFyIGlkW0lTT0RDTCgxMCwgMTQpXTsKKyAgY2hhciB2ZXJzaW9uW0lTT0RDTCgxNSwgMTUpXTsKKyAgY2hhciB1bnVzZWQxW0lTT0RDTCgxNiwgMTYpXTsKKyAgY2hhciBzeXN0ZW1faWRbSVNPRENMKDE3LCA0OCldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHZvbHVtZV9pZCBbSVNPRENMICggNDksIDgwKV07Ci0gY2hhciB1bnVzZWQyIFtJU09EQ0wgKCA4MSwgODgpXTsKLSBjaGFyIHZvbHVtZV9zcGFjZV9zaXplIFtJU09EQ0wgKCA4OSwgOTYpXTsKLSBjaGFyIHVudXNlZDMgW0lTT0RDTCAoIDk3LCAxMjgpXTsKKyAgY2hhciB2b2x1bWVfaWRbSVNPRENMKDQ5LCA4MCldOworICBjaGFyIHVudXNlZDJbSVNPRENMKDgxLCA4OCldOworICBjaGFyIHZvbHVtZV9zcGFjZV9zaXplW0lTT0RDTCg4OSwgOTYpXTsKKyAgY2hhciB1bnVzZWQzW0lTT0RDTCg5NywgMTI4KV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdm9sdW1lX3NldF9zaXplIFtJU09EQ0wgKDEyOSwgMTMyKV07Ci0gY2hhciB2b2x1bWVfc2VxdWVuY2VfbnVtYmVyIFtJU09EQ0wgKDEzMywgMTM2KV07Ci0gY2hhciBsb2dpY2FsX2Jsb2NrX3NpemUgW0lTT0RDTCAoMTM3LCAxNDApXTsKLSBjaGFyIHBhdGhfdGFibGVfc2l6ZSBbSVNPRENMICgxNDEsIDE0OCldOworICBjaGFyIHZvbHVtZV9zZXRfc2l6ZVtJU09EQ0woMTI5LCAxMzIpXTsKKyAgY2hhciB2b2x1bWVfc2VxdWVuY2VfbnVtYmVyW0lTT0RDTCgxMzMsIDEzNildOworICBjaGFyIGxvZ2ljYWxfYmxvY2tfc2l6ZVtJU09EQ0woMTM3LCAxNDApXTsKKyAgY2hhciBwYXRoX3RhYmxlX3NpemVbSVNPRENMKDE0MSwgMTQ4KV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdHlwZV9sX3BhdGhfdGFibGUgW0lTT0RDTCAoMTQ5LCAxNTIpXTsKLSBjaGFyIHVudXNlZDQgW0lTT0RDTCAoMTUzLCAxODApXTsKLSBjaGFyIHJvb3RfZGlyZWN0b3J5X3JlY29yZCBbSVNPRENMICgxODEsIDIxNCldOworICBjaGFyIHR5cGVfbF9wYXRoX3RhYmxlW0lTT0RDTCgxNDksIDE1MildOworICBjaGFyIHVudXNlZDRbSVNPRENMKDE1MywgMTgwKV07CisgIGNoYXIgcm9vdF9kaXJlY3RvcnlfcmVjb3JkW0lTT0RDTCgxODEsIDIxNCldOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgaXNvX3BhdGhfdGFibGV7Ci0gdW5zaWduZWQgY2hhciBuYW1lX2xlblsyXTsKLSBjaGFyIGV4dGVudFs0XTsKLSBjaGFyIHBhcmVudFsyXTsKK3N0cnVjdCBpc29fcGF0aF90YWJsZSB7CisgIHVuc2lnbmVkIGNoYXIgbmFtZV9sZW5bMl07CisgIGNoYXIgZXh0ZW50WzRdOworICBjaGFyIHBhcmVudFsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBuYW1lWzBdOworICBjaGFyIG5hbWVbMF07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGlzb19kaXJlY3RvcnlfcmVjb3JkIHsKLSBjaGFyIGxlbmd0aCBbSVNPRENMICgxLCAxKV07CisgIGNoYXIgbGVuZ3RoW0lTT0RDTCgxLCAxKV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgZXh0X2F0dHJfbGVuZ3RoIFtJU09EQ0wgKDIsIDIpXTsKLSBjaGFyIGV4dGVudCBbSVNPRENMICgzLCAxMCldOwotIGNoYXIgc2l6ZSBbSVNPRENMICgxMSwgMTgpXTsKLSBjaGFyIGRhdGUgW0lTT0RDTCAoMTksIDI1KV07CisgIGNoYXIgZXh0X2F0dHJfbGVuZ3RoW0lTT0RDTCgyLCAyKV07CisgIGNoYXIgZXh0ZW50W0lTT0RDTCgzLCAxMCldOworICBjaGFyIHNpemVbSVNPRENMKDExLCAxOCldOworICBjaGFyIGRhdGVbSVNPRENMKDE5LCAyNSldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGZsYWdzIFtJU09EQ0wgKDI2LCAyNildOwotIGNoYXIgZmlsZV91bml0X3NpemUgW0lTT0RDTCAoMjcsIDI3KV07Ci0gY2hhciBpbnRlcmxlYXZlIFtJU09EQ0wgKDI4LCAyOCldOwotIGNoYXIgdm9sdW1lX3NlcXVlbmNlX251bWJlciBbSVNPRENMICgyOSwgMzIpXTsKKyAgY2hhciBmbGFnc1tJU09EQ0woMjYsIDI2KV07CisgIGNoYXIgZmlsZV91bml0X3NpemVbSVNPRENMKDI3LCAyNyldOworICBjaGFyIGludGVybGVhdmVbSVNPRENMKDI4LCAyOCldOworICBjaGFyIHZvbHVtZV9zZXF1ZW5jZV9udW1iZXJbSVNPRENMKDI5LCAzMildOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIG5hbWVfbGVuIFtJU09EQ0wgKDMzLCAzMyldOwotIGNoYXIgbmFtZSBbMF07CisgIHVuc2lnbmVkIGNoYXIgbmFtZV9sZW5bSVNPRENMKDMzLCAzMyldOworICBjaGFyIG5hbWVbMF07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBJU09GU19CTE9DS19CSVRTIDExCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pdnR2LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2l2dHYuaAppbmRleCBkMWU2MjAxLi4zNTBjNmI3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2l2dHYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2l2dHYuaApAQCAtMjMsMjAgKzIzLDIwIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L3ZpZGVvZGV2Mi5oPgogc3RydWN0IGl2dHZfZG1hX2ZyYW1lIHsKLSBlbnVtIHY0bDJfYnVmX3R5cGUgdHlwZTsKLSBfX3UzMiBwaXhlbGZvcm1hdDsKKyAgZW51bSB2NGwyX2J1Zl90eXBlIHR5cGU7CisgIF9fdTMyIHBpeGVsZm9ybWF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2b2lkIF9fdXNlciAqeV9zb3VyY2U7Ci0gdm9pZCBfX3VzZXIgKnV2X3NvdXJjZTsKLSBzdHJ1Y3QgdjRsMl9yZWN0IHNyYzsKLSBzdHJ1Y3QgdjRsMl9yZWN0IGRzdDsKKyAgdm9pZCBfX3VzZXIgKiB5X3NvdXJjZTsKKyAgdm9pZCBfX3VzZXIgKiB1dl9zb3VyY2U7CisgIHN0cnVjdCB2NGwyX3JlY3Qgc3JjOworICBzdHJ1Y3QgdjRsMl9yZWN0IGRzdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3JjX3dpZHRoOwotIF9fdTMyIHNyY19oZWlnaHQ7CisgIF9fdTMyIHNyY193aWR0aDsKKyAgX191MzIgc3JjX2hlaWdodDsKIH07Ci0jZGVmaW5lIElWVFZfSU9DX0RNQV9GUkFNRSBfSU9XICgnVicsIEJBU0VfVklESU9DX1BSSVZBVEUrMCwgc3RydWN0IGl2dHZfZG1hX2ZyYW1lKQorI2RlZmluZSBJVlRWX0lPQ19ETUFfRlJBTUUgX0lPVygnVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyAwLCBzdHJ1Y3QgaXZ0dl9kbWFfZnJhbWUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJVlRWX0lPQ19QQVNTVEhST1VHSF9NT0RFIF9JT1cgKCdWJywgQkFTRV9WSURJT0NfUFJJVkFURSsxLCBpbnQpCisjZGVmaW5lIElWVFZfSU9DX1BBU1NUSFJPVUdIX01PREUgX0lPVygnVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyAxLCBpbnQpCiAjZGVmaW5lIElWVFZfU0xJQ0VEX1RZUEVfVEVMRVRFWFRfQiBWNEwyX01QRUdfVkJJX0lWVFZfVEVMRVRFWFRfQgogI2RlZmluZSBJVlRWX1NMSUNFRF9UWVBFX0NBUFRJT05fNTI1IFY0TDJfTVBFR19WQklfSVZUVl9DQVBUSU9OXzUyNQogI2RlZmluZSBJVlRWX1NMSUNFRF9UWVBFX1dTU182MjUgVjRMMl9NUEVHX1ZCSV9JVlRWX1dTU182MjUKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXZ0dmZiLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2l2dHZmYi5oCmluZGV4IDkwYTU4ODEuLjc0OWFlODMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvaXZ0dmZiLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9pdnR2ZmIuaApAQCAtMjIsMTAgKzIyLDEwIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXZ0dmZiX2RtYV9mcmFtZSB7Ci0gdm9pZCBfX3VzZXIgKnNvdXJjZTsKLSB1bnNpZ25lZCBsb25nIGRlc3Rfb2Zmc2V0OwotIGludCBjb3VudDsKKyAgdm9pZCBfX3VzZXIgKiBzb3VyY2U7CisgIHVuc2lnbmVkIGxvbmcgZGVzdF9vZmZzZXQ7CisgIGludCBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBJVlRWRkJfSU9DX0RNQV9GUkFNRSBfSU9XKCdWJywgQkFTRV9WSURJT0NfUFJJVkFURSswLCBzdHJ1Y3QgaXZ0dmZiX2RtYV9mcmFtZSkKKyNkZWZpbmUgSVZUVkZCX0lPQ19ETUFfRlJBTUUgX0lPVygnVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyAwLCBzdHJ1Y3QgaXZ0dmZiX2RtYV9mcmFtZSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9peGp1c2VyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2l4anVzZXIuaAppbmRleCBjYTVkZDM4Li5jYjJlYTQ1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2l4anVzZXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2l4anVzZXIuaApAQCAtMTksNyArMTksNyBAQAogI2lmbmRlZiBfX0xJTlVYX0lYSlVTRVJfSAogI2RlZmluZSBfX0xJTlVYX0lYSlVTRVJfSAogI2luY2x1ZGUgPGxpbnV4L3RlbGVwaG9ueS5oPgotI2RlZmluZSBJWEpDVExfRFNQX1JFU0VUIF9JTyAoJ3EnLCAweEMwKQorI2RlZmluZSBJWEpDVExfRFNQX1JFU0VUIF9JTygncScsIDB4QzApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJWEpDVExfUklORyBQSE9ORV9SSU5HCiAjZGVmaW5lIElYSkNUTF9IT09LU1RBVEUgUEhPTkVfSE9PS1NUQVRFCkBAIC0yOCwxNSArMjgsMTUgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElYSkNUTF9SSU5HX1NUQVJUIFBIT05FX1JJTkdfU1RBUlQKICNkZWZpbmUgSVhKQ1RMX1JJTkdfU1RPUCBQSE9ORV9SSU5HX1NUT1AKLSNkZWZpbmUgSVhKQ1RMX0NBUkRUWVBFIF9JT1IgKCdxJywgMHhDMSwgaW50KQotI2RlZmluZSBJWEpDVExfU0VSSUFMIF9JT1IgKCdxJywgMHhDMiwgaW50KQorI2RlZmluZSBJWEpDVExfQ0FSRFRZUEUgX0lPUigncScsIDB4QzEsIGludCkKKyNkZWZpbmUgSVhKQ1RMX1NFUklBTCBfSU9SKCdxJywgMHhDMiwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVhKQ1RMX0RTUF9UWVBFIF9JT1IgKCdxJywgMHhDMywgaW50KQotI2RlZmluZSBJWEpDVExfRFNQX1ZFUlNJT04gX0lPUiAoJ3EnLCAweEM0LCBpbnQpCi0jZGVmaW5lIElYSkNUTF9WRVJTSU9OIF9JT1IgKCdxJywgMHhEQSwgY2hhciAqKQotI2RlZmluZSBJWEpDVExfRFNQX0lETEUgX0lPICgncScsIDB4QzUpCisjZGVmaW5lIElYSkNUTF9EU1BfVFlQRSBfSU9SKCdxJywgMHhDMywgaW50KQorI2RlZmluZSBJWEpDVExfRFNQX1ZFUlNJT04gX0lPUigncScsIDB4QzQsIGludCkKKyNkZWZpbmUgSVhKQ1RMX1ZFUlNJT04gX0lPUigncScsIDB4REEsIGNoYXIgKikKKyNkZWZpbmUgSVhKQ1RMX0RTUF9JRExFIF9JTygncScsIDB4QzUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJWEpDVExfVEVTVFJBTSBfSU8gKCdxJywgMHhDNikKKyNkZWZpbmUgSVhKQ1RMX1RFU1RSQU0gX0lPKCdxJywgMHhDNikKICNkZWZpbmUgSVhKQ1RMX1JFQ19DT0RFQyBQSE9ORV9SRUNfQ09ERUMKICNkZWZpbmUgSVhKQ1RMX1JFQ19TVEFSVCBQSE9ORV9SRUNfU1RBUlQKICNkZWZpbmUgSVhKQ1RMX1JFQ19TVE9QIFBIT05FX1JFQ19TVE9QCkBAIC00NywyMzEgKzQ3LDMyMSBAQAogI2RlZmluZSBJWEpDVExfUkVDX0xFVkVMIFBIT05FX1JFQ19MRVZFTAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgZW51bSB7Ci0gZjMwMF82NDAgPSA0LCBmMzAwXzUwMCwgZjExMDAsIGYzNTAsIGY0MDAsIGY0ODAsIGY0NDAsIGY2MjAsIGYyMF81MCwKLSBmMTMzXzIwMCwgZjMwMCwgZjMwMF80MjAsIGYzMzAsIGYzMDBfNDI1LCBmMzMwXzQ0MCwgZjM0MCwgZjM1MF80MDAsCi0gZjM1MF80NDAsIGYzNTBfNDUwLCBmMzYwLCBmMzgwXzQyMCwgZjM5MiwgZjQwMF80MjUsIGY0MDBfNDQwLCBmNDAwXzQ1MCwKKyAgZjMwMF82NDAgPSA0LAorICBmMzAwXzUwMCwKKyAgZjExMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGY0MjAsIGY0MjUsIGY0MjVfNDUwLCBmNDI1XzQ3NSwgZjQzNSwgZjQ0MF80NTAsIGY0NDBfNDgwLCBmNDQ1LCBmNDUwLAotIGY0NTIsIGY0NzUsIGY0ODBfNjIwLCBmNDk0LCBmNTAwLCBmNTIwLCBmNTIzLCBmNTI1LCBmNTQwXzY2MCwgZjU4NywKLSBmNTkwLCBmNjAwLCBmNjYwLCBmNzAwLCBmNzQwLCBmNzUwLCBmNzUwXzE0NTAsIGY3NzAsIGY4MDAsIGY4MTYsIGY4NTAsCi0gZjg1N18xNjQ1LCBmOTAwLCBmOTAwXzEzMDAsIGY5MzVfMTIxNSwgZjk0MV8xNDc3LCBmOTQyLCBmOTUwLCBmOTUwXzE0MDAsCisgIGYzNTAsCisgIGY0MDAsCisgIGY0ODAsCisgIGY0NDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGY5NzUsIGYxMDAwLCBmMTAyMCwgZjEwNTAsIGYxMTAwXzE3NTAsIGYxMTQwLCBmMTIwMCwgZjEyMDksIGYxMzMwLCBmMTMzNiwKLSBsZjEzNjYsIGYxMzgwLCBmMTQwMCwgZjE0NzcsIGYxNjAwLCBmMTYzM18xNjM4LCBmMTgwMCwgZjE4NjAKKyAgZjYyMCwKKyAgZjIwXzUwLAorICBmMTMzXzIwMCwKKyAgZjMwMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGYzMDBfNDIwLAorICBmMzMwLAorICBmMzAwXzQyNSwKKyAgZjMzMF80NDAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBmMzQwLAorICBmMzUwXzQwMCwKKyAgZjM1MF80NDAsCisgIGYzNTBfNDUwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZjM2MCwKKyAgZjM4MF80MjAsCisgIGYzOTIsCisgIGY0MDBfNDI1LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZjQwMF80NDAsCisgIGY0MDBfNDUwLAorICBmNDIwLAorICBmNDI1LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZjQyNV80NTAsCisgIGY0MjVfNDc1LAorICBmNDM1LAorICBmNDQwXzQ1MCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGY0NDBfNDgwLAorICBmNDQ1LAorICBmNDUwLAorICBmNDUyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZjQ3NSwKKyAgZjQ4MF82MjAsCisgIGY0OTQsCisgIGY1MDAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBmNTIwLAorICBmNTIzLAorICBmNTI1LAorICBmNTQwXzY2MCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGY1ODcsCisgIGY1OTAsCisgIGY2MDAsCisgIGY2NjAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBmNzAwLAorICBmNzQwLAorICBmNzUwLAorICBmNzUwXzE0NTAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBmNzcwLAorICBmODAwLAorICBmODE2LAorICBmODUwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZjg1N18xNjQ1LAorICBmOTAwLAorICBmOTAwXzEzMDAsCisgIGY5MzVfMTIxNSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGY5NDFfMTQ3NywKKyAgZjk0MiwKKyAgZjk1MCwKKyAgZjk1MF8xNDAwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZjk3NSwKKyAgZjEwMDAsCisgIGYxMDIwLAorICBmMTA1MCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGYxMTAwXzE3NTAsCisgIGYxMTQwLAorICBmMTIwMCwKKyAgZjEyMDksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBmMTMzMCwKKyAgZjEzMzYsCisgIGxmMTM2NiwKKyAgZjEzODAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBmMTQwMCwKKyAgZjE0NzcsCisgIGYxNjAwLAorICBmMTYzM18xNjM4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgZjE4MDAsCisgIGYxODYwCiB9IElYSl9GSUxURVJfRlJFUTsKIHR5cGVkZWYgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGZpbHRlcjsKLSBJWEpfRklMVEVSX0ZSRVEgZnJlcTsKLSBjaGFyIGVuYWJsZTsKKyAgdW5zaWduZWQgaW50IGZpbHRlcjsKKyAgSVhKX0ZJTFRFUl9GUkVRIGZyZXE7CisgIGNoYXIgZW5hYmxlOwogfSBJWEpfRklMVEVSOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSBjaGFyIGVuYWJsZTsKLSBjaGFyIGVuX2ZpbHRlcjsKLSB1bnNpZ25lZCBpbnQgZmlsdGVyOworICBjaGFyIGVuYWJsZTsKKyAgY2hhciBlbl9maWx0ZXI7CisgIHVuc2lnbmVkIGludCBmaWx0ZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBvbjE7Ci0gdW5zaWduZWQgaW50IG9mZjE7Ci0gdW5zaWduZWQgaW50IG9uMjsKLSB1bnNpZ25lZCBpbnQgb2ZmMjsKKyAgdW5zaWduZWQgaW50IG9uMTsKKyAgdW5zaWduZWQgaW50IG9mZjE7CisgIHVuc2lnbmVkIGludCBvbjI7CisgIHVuc2lnbmVkIGludCBvZmYyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgb24zOwotIHVuc2lnbmVkIGludCBvZmYzOworICB1bnNpZ25lZCBpbnQgb24zOworICB1bnNpZ25lZCBpbnQgb2ZmMzsKIH0gSVhKX0ZJTFRFUl9DQURFTkNFOwotI2RlZmluZSBJWEpDVExfU0VUX0ZJTFRFUiBfSU9XICgncScsIDB4QzcsIElYSl9GSUxURVIgKikKKyNkZWZpbmUgSVhKQ1RMX1NFVF9GSUxURVIgX0lPVygncScsIDB4QzcsIElYSl9GSUxURVIgKikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElYSkNUTF9TRVRfRklMVEVSX1JBVyBfSU9XICgncScsIDB4REQsIElYSl9GSUxURVJfUkFXICopCi0jZGVmaW5lIElYSkNUTF9HRVRfRklMVEVSX0hJU1QgX0lPVyAoJ3EnLCAweEM4LCBpbnQpCi0jZGVmaW5lIElYSkNUTF9GSUxURVJfQ0FERU5DRSBfSU9XICgncScsIDB4RDYsIElYSl9GSUxURVJfQ0FERU5DRSAqKQotI2RlZmluZSBJWEpDVExfUExBWV9DSUQgX0lPICgncScsIDB4RDcpCisjZGVmaW5lIElYSkNUTF9TRVRfRklMVEVSX1JBVyBfSU9XKCdxJywgMHhERCwgSVhKX0ZJTFRFUl9SQVcgKikKKyNkZWZpbmUgSVhKQ1RMX0dFVF9GSUxURVJfSElTVCBfSU9XKCdxJywgMHhDOCwgaW50KQorI2RlZmluZSBJWEpDVExfRklMVEVSX0NBREVOQ0UgX0lPVygncScsIDB4RDYsIElYSl9GSUxURVJfQ0FERU5DRSAqKQorI2RlZmluZSBJWEpDVExfUExBWV9DSUQgX0lPKCdxJywgMHhENykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIGVudW0gewotIGh6MjAgPSAweDdmZmEsCi0gaHo1MCA9IDB4N2ZlNSwKLSBoejEzMyA9IDB4N2Y0YywKKyAgaHoyMCA9IDB4N2ZmYSwKKyAgaHo1MCA9IDB4N2ZlNSwKKyAgaHoxMzMgPSAweDdmNGMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6MjAwID0gMHg3ZTZiLAotIGh6MjYxID0gMHg3ZDUwLAotIGh6Mjc3ID0gMHg3Y2ZhLAotIGh6MjkzID0gMHg3YzlmLAorICBoejIwMCA9IDB4N2U2YiwKKyAgaHoyNjEgPSAweDdkNTAsCisgIGh6Mjc3ID0gMHg3Y2ZhLAorICBoejI5MyA9IDB4N2M5ZiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHozMDAgPSAweDdjNzUsCi0gaHozMTEgPSAweDdjMzIsCi0gaHozMjkgPSAweDdiYmYsCi0gaHozMzAgPSAweDdiYjgsCisgIGh6MzAwID0gMHg3Yzc1LAorICBoejMxMSA9IDB4N2MzMiwKKyAgaHozMjkgPSAweDdiYmYsCisgIGh6MzMwID0gMHg3YmI4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejM0MCA9IDB4N2I3NSwKLSBoejM0OSA9IDB4N2IzNywKLSBoejM1MCA9IDB4N2IzMCwKLSBoejM2MCA9IDB4N2FlOSwKKyAgaHozNDAgPSAweDdiNzUsCisgIGh6MzQ5ID0gMHg3YjM3LAorICBoejM1MCA9IDB4N2IzMCwKKyAgaHozNjAgPSAweDdhZTksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6MzY5ID0gMHg3YWE4LAotIGh6MzgwID0gMHg3YTU2LAotIGh6MzkyID0gMHg3OWZhLAotIGh6NDAwID0gMHg3OWJiLAorICBoejM2OSA9IDB4N2FhOCwKKyAgaHozODAgPSAweDdhNTYsCisgIGh6MzkyID0gMHg3OWZhLAorICBoejQwMCA9IDB4NzliYiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHo0MTUgPSAweDc5NDEsCi0gaHo0MjAgPSAweDc5MTgsCi0gaHo0MjUgPSAweDc4ZWUsCi0gaHo0MzUgPSAweDc4OTksCisgIGh6NDE1ID0gMHg3OTQxLAorICBoejQyMCA9IDB4NzkxOCwKKyAgaHo0MjUgPSAweDc4ZWUsCisgIGh6NDM1ID0gMHg3ODk5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejQ0MCA9IDB4Nzg2ZCwKLSBoejQ0NSA9IDB4Nzg0MiwKLSBoejQ1MCA9IDB4NzgxNSwKLSBoejQ1MiA9IDB4NzgwMywKKyAgaHo0NDAgPSAweDc4NmQsCisgIGh6NDQ1ID0gMHg3ODQyLAorICBoejQ1MCA9IDB4NzgxNSwKKyAgaHo0NTIgPSAweDc4MDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6NDY2ID0gMHg3Nzg0LAotIGh6NDc1ID0gMHg3NzMxLAotIGh6NDgwID0gMHg3NzAxLAotIGh6NDkzID0gMHg3Njg1LAorICBoejQ2NiA9IDB4Nzc4NCwKKyAgaHo0NzUgPSAweDc3MzEsCisgIGh6NDgwID0gMHg3NzAxLAorICBoejQ5MyA9IDB4NzY4NSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHo0OTQgPSAweDc2N2IsCi0gaHo1MDAgPSAweDc2NDAsCi0gaHo1MjAgPSAweDc1NzgsCi0gaHo1MjMgPSAweDc1NTksCisgIGh6NDk0ID0gMHg3NjdiLAorICBoejUwMCA9IDB4NzY0MCwKKyAgaHo1MjAgPSAweDc1NzgsCisgIGh6NTIzID0gMHg3NTU5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejUyNSA9IDB4NzU0NCwKLSBoejU0MCA9IDB4NzRhNywKLSBoejU1NCA9IDB4NzQxMSwKLSBoejU4NyA9IDB4NzJhMSwKKyAgaHo1MjUgPSAweDc1NDQsCisgIGh6NTQwID0gMHg3NGE3LAorICBoejU1NCA9IDB4NzQxMSwKKyAgaHo1ODcgPSAweDcyYTEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6NTkwID0gMHg3MjdmLAotIGh6NjAwID0gMHg3MjBiLAotIGh6NjIwID0gMHg3MTFlLAotIGh6NjIyID0gMHg3MTA2LAorICBoejU5MCA9IDB4NzI3ZiwKKyAgaHo2MDAgPSAweDcyMGIsCisgIGh6NjIwID0gMHg3MTFlLAorICBoejYyMiA9IDB4NzEwNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHo2NTkgPSAweDZmM2IsCi0gaHo2NjAgPSAweDZmMmUsCi0gaHo2OTggPSAweDZkM2QsCi0gaHo3MDAgPSAweDZkMjIsCisgIGh6NjU5ID0gMHg2ZjNiLAorICBoejY2MCA9IDB4NmYyZSwKKyAgaHo2OTggPSAweDZkM2QsCisgIGh6NzAwID0gMHg2ZDIyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejczOSA9IDB4NmIwOSwKLSBoejc0MCA9IDB4NmFmYSwKLSBoejc1MCA9IDB4NmE2YywKLSBoejc3MCA9IDB4Njk0YiwKKyAgaHo3MzkgPSAweDZiMDksCisgIGh6NzQwID0gMHg2YWZhLAorICBoejc1MCA9IDB4NmE2YywKKyAgaHo3NzAgPSAweDY5NGIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6NzgzID0gMHg2ODhiLAotIGh6ODAwID0gMHg2NzhkLAotIGh6ODE2ID0gMHg2Njk4LAotIGh6ODMwID0gMHg2NWJmLAorICBoejc4MyA9IDB4Njg4YiwKKyAgaHo4MDAgPSAweDY3OGQsCisgIGh6ODE2ID0gMHg2Njk4LAorICBoejgzMCA9IDB4NjViZiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHo4NTAgPSAweDY0ODQsCi0gaHo4NTcgPSAweDY0MTQsCi0gaHo4ODAgPSAweDYyOWYsCi0gaHo5MDAgPSAweDYxNTQsCisgIGh6ODUwID0gMHg2NDg0LAorICBoejg1NyA9IDB4NjQxNCwKKyAgaHo4ODAgPSAweDYyOWYsCisgIGh6OTAwID0gMHg2MTU0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejkzMiA9IDB4NWYzNSwKLSBoejkzNSA9IDB4NWYwMSwKLSBoejk0MSA9IDB4NWU5YSwKLSBoejk0MiA9IDB4NWU4OCwKKyAgaHo5MzIgPSAweDVmMzUsCisgIGh6OTM1ID0gMHg1ZjAxLAorICBoejk0MSA9IDB4NWU5YSwKKyAgaHo5NDIgPSAweDVlODgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6OTUwID0gMHg1ZGZkLAotIGh6OTc1ID0gMHg1YzQ0LAotIGh6MTAwMCA9IDB4NWE4MSwKLSBoejEwMjAgPSAweDU5MTIsCisgIGh6OTUwID0gMHg1ZGZkLAorICBoejk3NSA9IDB4NWM0NCwKKyAgaHoxMDAwID0gMHg1YTgxLAorICBoejEwMjAgPSAweDU5MTIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6MTA1MCA9IDB4NTZlMiwKLSBoejExMDAgPSAweDUzMjAsCi0gaHoxMTQwID0gMHg1MDA3LAotIGh6MTIwMCA9IDB4NGIzYiwKKyAgaHoxMDUwID0gMHg1NmUyLAorICBoejExMDAgPSAweDUzMjAsCisgIGh6MTE0MCA9IDB4NTAwNywKKyAgaHoxMjAwID0gMHg0YjNiLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejEyMDkgPSAweDRhODAsCi0gaHoxMjE1ID0gMHg0YTAyLAotIGh6MTI1MCA9IDB4NDcxYywKLSBoejEzMDAgPSAweDQyZTAsCisgIGh6MTIwOSA9IDB4NGE4MCwKKyAgaHoxMjE1ID0gMHg0YTAyLAorICBoejEyNTAgPSAweDQ3MWMsCisgIGh6MTMwMCA9IDB4NDJlMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHoxMzMwID0gMHg0MDQ5LAotIGh6MTMzNiA9IDB4M2ZjNCwKLSBoejEzNjYgPSAweDNkMjIsCi0gaHoxMzgwID0gMHgzYmU0LAorICBoejEzMzAgPSAweDQwNDksCisgIGh6MTMzNiA9IDB4M2ZjNCwKKyAgaHoxMzY2ID0gMHgzZDIyLAorICBoejEzODAgPSAweDNiZTQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGh6MTQwMCA9IDB4M2ExYiwKLSBoejE0NTAgPSAweDM1OTYsCi0gaHoxNDc3ID0gMHgzMzFjLAotIGh6MTUwMCA9IDB4MzBmYiwKKyAgaHoxNDAwID0gMHgzYTFiLAorICBoejE0NTAgPSAweDM1OTYsCisgIGh6MTQ3NyA9IDB4MzMxYywKKyAgaHoxNTAwID0gMHgzMGZiLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejE2MDAgPSAweDI3OGQsCi0gaHoxNjMzID0gMHgyNDYyLAotIGh6MTYzOCA9IDB4MjNlNywKLSBoejE2NDUgPSAweDIzM2EsCisgIGh6MTYwMCA9IDB4Mjc4ZCwKKyAgaHoxNjMzID0gMHgyNDYyLAorICBoejE2MzggPSAweDIzZTcsCisgIGh6MTY0NSA9IDB4MjMzYSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaHoxNzUwID0gMHgxOGY4LAotIGh6MTgwMCA9IDB4MTQwNSwKLSBoejE4NjAgPSAweGUwYiwKLSBoejIxMDAgPSAweGY1ZjYsCisgIGh6MTc1MCA9IDB4MThmOCwKKyAgaHoxODAwID0gMHgxNDA1LAorICBoejE4NjAgPSAweGUwYiwKKyAgaHoyMTAwID0gMHhmNWY2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBoejIxMzAgPSAweGYyZjUsCi0gaHoyNDUwID0gMHhkM2IzLAotIGh6Mjc1MCA9IDB4YjhlNAorICBoejIxMzAgPSAweGYyZjUsCisgIGh6MjQ1MCA9IDB4ZDNiMywKKyAgaHoyNzUwID0gMHhiOGU0CiB9IElYSl9GUkVROwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgZW51bSB7Ci0gQzEgPSBoejI2MSwKLSBDUzEgPSBoejI3NywKLSBEMSA9IGh6MjkzLAorICBDMSA9IGh6MjYxLAorICBDUzEgPSBoejI3NywKKyAgRDEgPSBoejI5MywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRFMxID0gaHozMTEsCi0gRTEgPSBoejMyOSwKLSBGMSA9IGh6MzQ5LAotIEZTMSA9IGh6MzY5LAorICBEUzEgPSBoejMxMSwKKyAgRTEgPSBoejMyOSwKKyAgRjEgPSBoejM0OSwKKyAgRlMxID0gaHozNjksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEcxID0gaHozOTIsCi0gR1MxID0gaHo0MTUsCi0gQTEgPSBoejQ0MCwKLSBBUzEgPSBoejQ2NiwKKyAgRzEgPSBoejM5MiwKKyAgR1MxID0gaHo0MTUsCisgIEExID0gaHo0NDAsCisgIEFTMSA9IGh6NDY2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBCMSA9IGh6NDkzLAotIEMyID0gaHo1MjMsCi0gQ1MyID0gaHo1NTQsCi0gRDIgPSBoejU4NywKKyAgQjEgPSBoejQ5MywKKyAgQzIgPSBoejUyMywKKyAgQ1MyID0gaHo1NTQsCisgIEQyID0gaHo1ODcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERTMiA9IGh6NjIyLAotIEUyID0gaHo2NTksCi0gRjIgPSBoejY5OCwKLSBGUzIgPSBoejczOSwKKyAgRFMyID0gaHo2MjIsCisgIEUyID0gaHo2NTksCisgIEYyID0gaHo2OTgsCisgIEZTMiA9IGh6NzM5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBHMiA9IGh6NzgzLAotIEdTMiA9IGh6ODMwLAotIEEyID0gaHo4ODAsCi0gQVMyID0gaHo5MzIsCisgIEcyID0gaHo3ODMsCisgIEdTMiA9IGh6ODMwLAorICBBMiA9IGh6ODgwLAorICBBUzIgPSBoejkzMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IElYSl9OT1RFOwogdHlwZWRlZiBzdHJ1Y3QgewotIGludCB0b25lX2luZGV4OwotIGludCBmcmVxMDsKKyAgaW50IHRvbmVfaW5kZXg7CisgIGludCBmcmVxMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGdhaW4wOwotIGludCBmcmVxMTsKLSBpbnQgZ2FpbjE7CisgIGludCBnYWluMDsKKyAgaW50IGZyZXExOworICBpbnQgZ2FpbjE7CiB9IElYSl9UT05FOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVhKQ1RMX0lOSVRfVE9ORSBfSU9XICgncScsIDB4QzksIElYSl9UT05FICopCisjZGVmaW5lIElYSkNUTF9JTklUX1RPTkUgX0lPVygncScsIDB4QzksIElYSl9UT05FICopCiB0eXBlZGVmIHN0cnVjdCB7Ci0gaW50IGluZGV4OwotIGludCB0b25lX29uX3RpbWU7CisgIGludCBpbmRleDsKKyAgaW50IHRvbmVfb25fdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHRvbmVfb2ZmX3RpbWU7Ci0gaW50IGZyZXEwOwotIGludCBnYWluMDsKLSBpbnQgZnJlcTE7CisgIGludCB0b25lX29mZl90aW1lOworICBpbnQgZnJlcTA7CisgIGludCBnYWluMDsKKyAgaW50IGZyZXExOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZ2FpbjE7CisgIGludCBnYWluMTsKIH0gSVhKX0NBREVOQ0VfRUxFTUVOVDsKIHR5cGVkZWYgZW51bSB7Ci0gUExBWV9PTkNFLAorICBQTEFZX09OQ0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJFUEVBVF9MQVNUX0VMRU1FTlQsCi0gUkVQRUFUX0FMTAorICBSRVBFQVRfTEFTVF9FTEVNRU5ULAorICBSRVBFQVRfQUxMCiB9IElYSl9DQURFTkNFX1RFUk07CiB0eXBlZGVmIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBlbGVtZW50c191c2VkOwotIElYSl9DQURFTkNFX1RFUk0gdGVybWluYXRpb247Ci0gSVhKX0NBREVOQ0VfRUxFTUVOVCBfX3VzZXIgKmNlOworICBpbnQgZWxlbWVudHNfdXNlZDsKKyAgSVhKX0NBREVOQ0VfVEVSTSB0ZXJtaW5hdGlvbjsKKyAgSVhKX0NBREVOQ0VfRUxFTUVOVCBfX3VzZXIgKiBjZTsKIH0gSVhKX0NBREVOQ0U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJWEpDVExfVE9ORV9DQURFTkNFIF9JT1cgKCdxJywgMHhDQSwgSVhKX0NBREVOQ0UgKikKKyNkZWZpbmUgSVhKQ1RMX1RPTkVfQ0FERU5DRSBfSU9XKCdxJywgMHhDQSwgSVhKX0NBREVOQ0UgKikKICNkZWZpbmUgSVhKQ1RMX1BMQVlfQ09ERUMgUEhPTkVfUExBWV9DT0RFQwogI2RlZmluZSBJWEpDVExfUExBWV9TVEFSVCBQSE9ORV9QTEFZX1NUQVJUCiAjZGVmaW5lIElYSkNUTF9QTEFZX1NUT1AgUEhPTkVfUExBWV9TVE9QCkBAIC0yNzksMTAgKzM2OSwxMCBAQAogI2RlZmluZSBJWEpDVExfUExBWV9ERVBUSCBQSE9ORV9QTEFZX0RFUFRICiAjZGVmaW5lIElYSkNUTF9QTEFZX1ZPTFVNRSBQSE9ORV9QTEFZX1ZPTFVNRQogI2RlZmluZSBJWEpDVExfUExBWV9MRVZFTCBQSE9ORV9QTEFZX0xFVkVMCi0jZGVmaW5lIElYSkNUTF9BRUNfU1RBUlQgX0lPVyAoJ3EnLCAweENCLCBpbnQpCisjZGVmaW5lIElYSkNUTF9BRUNfU1RBUlQgX0lPVygncScsIDB4Q0IsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElYSkNUTF9BRUNfU1RPUCBfSU8gKCdxJywgMHhDQykKLSNkZWZpbmUgSVhKQ1RMX0FFQ19HRVRfTEVWRUwgX0lPICgncScsIDB4Q0QpCisjZGVmaW5lIElYSkNUTF9BRUNfU1RPUCBfSU8oJ3EnLCAweENDKQorI2RlZmluZSBJWEpDVExfQUVDX0dFVF9MRVZFTCBfSU8oJ3EnLCAweENEKQogI2RlZmluZSBBRUNfT0ZGIDAKICNkZWZpbmUgQUVDX0xPVyAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMzA5LDkgKzM5OSw5IEBACiAjZGVmaW5lIElYSkNUTF9SSU5HQkFDSyBQSE9ORV9SSU5HQkFDSwogI2RlZmluZSBJWEpDVExfRElBTFRPTkUgUEhPTkVfRElBTFRPTkUKICNkZWZpbmUgSVhKQ1RMX0NQVF9TVE9QIFBIT05FX0NQVF9TVE9QCi0jZGVmaW5lIElYSkNUTF9TRVRfTEVEIF9JT1cgKCdxJywgMHhDRSwgaW50KQorI2RlZmluZSBJWEpDVExfU0VUX0xFRCBfSU9XKCdxJywgMHhDRSwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVhKQ1RMX01JWEVSIF9JT1cgKCdxJywgMHhDRiwgaW50KQorI2RlZmluZSBJWEpDVExfTUlYRVIgX0lPVygncScsIDB4Q0YsIGludCkKICNkZWZpbmUgTUlYRVJfTUFTVEVSX0wgMHgwMDAwCiAjZGVmaW5lIE1JWEVSX01BU1RFUl9SIDB4MDEwMAogI2RlZmluZSBBVFQwMERCIDB4MDAKQEAgLTQxNyw3ICs1MDcsNyBAQAogI2RlZmluZSBQT1RTX0FUVF8yOERCIDB4MDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBPVFNfTVVURSAweDgwCi0jZGVmaW5lIElYSkNUTF9EQUFfQ09FRkZfU0VUIF9JT1cgKCdxJywgMHhEMCwgaW50KQorI2RlZmluZSBJWEpDVExfREFBX0NPRUZGX1NFVCBfSU9XKCdxJywgMHhEMCwgaW50KQogI2RlZmluZSBEQUFfVVMgMQogI2RlZmluZSBEQUFfVUsgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTQyNiw3ICs1MTYsNyBAQAogI2RlZmluZSBEQUFfQVVTVFJBTElBIDUKICNkZWZpbmUgREFBX0pBUEFOIDYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElYSkNUTF9QT1JUIF9JT1cgKCdxJywgMHhEMSwgaW50KQorI2RlZmluZSBJWEpDVExfUE9SVCBfSU9XKCdxJywgMHhEMSwgaW50KQogI2RlZmluZSBQT1JUX1FVRVJZIDAKICNkZWZpbmUgUE9SVF9QT1RTIDEKICNkZWZpbmUgUE9SVF9QU1ROIDIKQEAgLTQ0MSw3ICs1MzEsNyBAQAogI2RlZmluZSBQU1ROX09GRl9IT09LIDIKICNkZWZpbmUgUFNUTl9QVUxTRV9ESUFMIDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElYSkNUTF9EQUFfQUdBSU4gX0lPVyAoJ3EnLCAweEQyLCBpbnQpCisjZGVmaW5lIElYSkNUTF9EQUFfQUdBSU4gX0lPVygncScsIDB4RDIsIGludCkKICNkZWZpbmUgQUdSUjAwREIgMHgwMAogI2RlZmluZSBBR1JSM181REIgMHgxMAogI2RlZmluZSBBR1JSMDZEQiAweDMwCkBAIC00NTEsNTUgKzU0MSw2MyBAQAogI2RlZmluZSBBR1gzXzVEQiAweDA4CiAjZGVmaW5lIEFHWF8yXzVCIDB4MEMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElYSkNUTF9QU1ROX0xJTkVURVNUIF9JTyAoJ3EnLCAweEQzKQotI2RlZmluZSBJWEpDVExfQ0lEIF9JT1IgKCdxJywgMHhENCwgUEhPTkVfQ0lEICopCi0jZGVmaW5lIElYSkNUTF9WTVdJIF9JT1IgKCdxJywgMHhEOCwgaW50KQotI2RlZmluZSBJWEpDVExfQ0lEQ1cgX0lPVyAoJ3EnLCAweEQ5LCBQSE9ORV9DSUQgKikKKyNkZWZpbmUgSVhKQ1RMX1BTVE5fTElORVRFU1QgX0lPKCdxJywgMHhEMykKKyNkZWZpbmUgSVhKQ1RMX0NJRCBfSU9SKCdxJywgMHhENCwgUEhPTkVfQ0lEICopCisjZGVmaW5lIElYSkNUTF9WTVdJIF9JT1IoJ3EnLCAweEQ4LCBpbnQpCisjZGVmaW5lIElYSkNUTF9DSURDVyBfSU9XKCdxJywgMHhEOSwgUEhPTkVfQ0lEICopCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJWEpDVExfV0lOS19EVVJBVElPTiBQSE9ORV9XSU5LX0RVUkFUSU9OCi0jZGVmaW5lIElYSkNUTF9QT1RTX1BTVE4gX0lPVyAoJ3EnLCAweEQ1LCBpbnQpCi0jZGVmaW5lIElYSkNUTF9IWiBfSU9XICgncScsIDB4RTAsIGludCkKLSNkZWZpbmUgSVhKQ1RMX1JBVEUgX0lPVyAoJ3EnLCAweEUxLCBpbnQpCisjZGVmaW5lIElYSkNUTF9QT1RTX1BTVE4gX0lPVygncScsIDB4RDUsIGludCkKKyNkZWZpbmUgSVhKQ1RMX0haIF9JT1coJ3EnLCAweEUwLCBpbnQpCisjZGVmaW5lIElYSkNUTF9SQVRFIF9JT1coJ3EnLCAweEUxLCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJWEpDVExfRlJBTUVTX1JFQUQgX0lPUiAoJ3EnLCAweEUyLCB1bnNpZ25lZCBsb25nKQotI2RlZmluZSBJWEpDVExfRlJBTUVTX1dSSVRURU4gX0lPUiAoJ3EnLCAweEUzLCB1bnNpZ25lZCBsb25nKQotI2RlZmluZSBJWEpDVExfUkVBRF9XQUlUIF9JT1IgKCdxJywgMHhFNCwgdW5zaWduZWQgbG9uZykKLSNkZWZpbmUgSVhKQ1RMX1dSSVRFX1dBSVQgX0lPUiAoJ3EnLCAweEU1LCB1bnNpZ25lZCBsb25nKQorI2RlZmluZSBJWEpDVExfRlJBTUVTX1JFQUQgX0lPUigncScsIDB4RTIsIHVuc2lnbmVkIGxvbmcpCisjZGVmaW5lIElYSkNUTF9GUkFNRVNfV1JJVFRFTiBfSU9SKCdxJywgMHhFMywgdW5zaWduZWQgbG9uZykKKyNkZWZpbmUgSVhKQ1RMX1JFQURfV0FJVCBfSU9SKCdxJywgMHhFNCwgdW5zaWduZWQgbG9uZykKKyNkZWZpbmUgSVhKQ1RMX1dSSVRFX1dBSVQgX0lPUigncScsIDB4RTUsIHVuc2lnbmVkIGxvbmcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJWEpDVExfRFJZQlVGRkVSX1JFQUQgX0lPUiAoJ3EnLCAweEU2LCB1bnNpZ25lZCBsb25nKQotI2RlZmluZSBJWEpDVExfRFJZQlVGRkVSX0NMRUFSIF9JTyAoJ3EnLCAweEU3KQotI2RlZmluZSBJWEpDVExfRFRNRl9QUkVTQ0FMRSBfSU9XICgncScsIDB4RTgsIGludCkKKyNkZWZpbmUgSVhKQ1RMX0RSWUJVRkZFUl9SRUFEIF9JT1IoJ3EnLCAweEU2LCB1bnNpZ25lZCBsb25nKQorI2RlZmluZSBJWEpDVExfRFJZQlVGRkVSX0NMRUFSIF9JTygncScsIDB4RTcpCisjZGVmaW5lIElYSkNUTF9EVE1GX1BSRVNDQUxFIF9JT1coJ3EnLCAweEU4LCBpbnQpCiB0eXBlZGVmIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTSUdfRFRNRl9SRUFEWSwKLSBTSUdfSE9PS1NUQVRFLAotIFNJR19GTEFTSCwKLSBTSUdfUFNUTl9SSU5HLAorICBTSUdfRFRNRl9SRUFEWSwKKyAgU0lHX0hPT0tTVEFURSwKKyAgU0lHX0ZMQVNILAorICBTSUdfUFNUTl9SSU5HLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTSUdfQ0FMTEVSX0lELAotIFNJR19QU1ROX1dJTkssCi0gU0lHX0YwLCBTSUdfRjEsIFNJR19GMiwgU0lHX0YzLAotIFNJR19GQzAsIFNJR19GQzEsIFNJR19GQzIsIFNJR19GQzMsCisgIFNJR19DQUxMRVJfSUQsCisgIFNJR19QU1ROX1dJTkssCisgIFNJR19GMCwKKyAgU0lHX0YxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTSUdfUkVBRF9SRUFEWSA9IDMzLAotIFNJR19XUklURV9SRUFEWSA9IDM0CisgIFNJR19GMiwKKyAgU0lHX0YzLAorICBTSUdfRkMwLAorICBTSUdfRkMxLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU0lHX0ZDMiwKKyAgU0lHX0ZDMywKKyAgU0lHX1JFQURfUkVBRFkgPSAzMywKKyAgU0lHX1dSSVRFX1JFQURZID0gMzQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IElYSl9TSUdFVkVOVDsKIHR5cGVkZWYgc3RydWN0IHsKKyAgdW5zaWduZWQgaW50IGV2ZW50OworICBpbnQgc2lnbmFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZXZlbnQ7Ci0gaW50IHNpZ25hbDsKIH0gSVhKX1NJR0RFRjsKLSNkZWZpbmUgSVhKQ1RMX1NJR0NUTCBfSU9XICgncScsIDB4RTksIElYSl9TSUdERUYgKikKKyNkZWZpbmUgSVhKQ1RMX1NJR0NUTCBfSU9XKCdxJywgMHhFOSwgSVhKX1NJR0RFRiAqKQorI2RlZmluZSBJWEpDVExfU0NfUlhHIF9JT1coJ3EnLCAweEVBLCBpbnQpCisjZGVmaW5lIElYSkNUTF9TQ19UWEcgX0lPVygncScsIDB4RUIsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElYSkNUTF9TQ19SWEcgX0lPVyAoJ3EnLCAweEVBLCBpbnQpCi0jZGVmaW5lIElYSkNUTF9TQ19UWEcgX0lPVyAoJ3EnLCAweEVCLCBpbnQpCi0jZGVmaW5lIElYSkNUTF9JTlRFUkNPTV9TVEFSVCBfSU9XICgncScsIDB4RkQsIGludCkKLSNkZWZpbmUgSVhKQ1RMX0lOVEVSQ09NX1NUT1AgX0lPVyAoJ3EnLCAweEZFLCBpbnQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBJWEpDVExfSU5URVJDT01fU1RBUlQgX0lPVygncScsIDB4RkQsIGludCkKKyNkZWZpbmUgSVhKQ1RMX0lOVEVSQ09NX1NUT1AgX0lPVygncScsIDB4RkUsIGludCkKIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBpbnQgZmlsdGVyOwotIGNoYXIgZW5hYmxlOwotIHVuc2lnbmVkIGludCBjb2VmZlsxOV07CisgIHVuc2lnbmVkIGludCBmaWx0ZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBjaGFyIGVuYWJsZTsKKyAgdW5zaWduZWQgaW50IGNvZWZmWzE5XTsKIH0gSVhKX0ZJTFRFUl9SQVc7CiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2pmZnMyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2pmZnMyLmgKaW5kZXggZGEzY2U4Mi4uYjdkNDE5MCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9qZmZzMi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvamZmczIuaApAQCAtNjgsMTM5ICs2OCwxMzIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEpGRlMyX0lOT19GTEFHX1VTRVJDT01QUiAyCiB0eXBlZGVmIHN0cnVjdCB7Ci0gX191MzIgdjMyOworICBfX3UzMiB2MzI7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIGppbnQzMl90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSBfX3UzMiBtOworICBfX3UzMiBtOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBqbW9kZV90OwogdHlwZWRlZiBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB2MTY7CisgIF9fdTE2IHYxNjsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgamludDE2X3Q7Ci1zdHJ1Y3QgamZmczJfdW5rbm93bl9ub2RlCi17CitzdHJ1Y3QgamZmczJfdW5rbm93bl9ub2RlIHsKKyAgamludDE2X3QgbWFnaWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGppbnQxNl90IG1hZ2ljOwotIGppbnQxNl90IG5vZGV0eXBlOwotIGppbnQzMl90IHRvdGxlbjsKLSBqaW50MzJfdCBoZHJfY3JjOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgamludDE2X3Qgbm9kZXR5cGU7CisgIGppbnQzMl90IHRvdGxlbjsKKyAgamludDMyX3QgaGRyX2NyYzsKIH07Ci1zdHJ1Y3QgamZmczJfcmF3X2RpcmVudAotewotIGppbnQxNl90IG1hZ2ljOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBqaW50MTZfdCBub2RldHlwZTsKLSBqaW50MzJfdCB0b3RsZW47Ci0gamludDMyX3QgaGRyX2NyYzsKLSBqaW50MzJfdCBwaW5vOworc3RydWN0IGpmZnMyX3Jhd19kaXJlbnQgeworICBqaW50MTZfdCBtYWdpYzsKKyAgamludDE2X3Qgbm9kZXR5cGU7CisgIGppbnQzMl90IHRvdGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gamludDMyX3QgdmVyc2lvbjsKLSBqaW50MzJfdCBpbm87Ci0gamludDMyX3QgbWN0aW1lOwotIF9fdTggbnNpemU7CisgIGppbnQzMl90IGhkcl9jcmM7CisgIGppbnQzMl90IHBpbm87CisgIGppbnQzMl90IHZlcnNpb247CisgIGppbnQzMl90IGlubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0eXBlOwotIF9fdTggdW51c2VkWzJdOwotIGppbnQzMl90IG5vZGVfY3JjOwotIGppbnQzMl90IG5hbWVfY3JjOworICBqaW50MzJfdCBtY3RpbWU7CisgIF9fdTggbnNpemU7CisgIF9fdTggdHlwZTsKKyAgX191OCB1bnVzZWRbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbmFtZVswXTsKKyAgamludDMyX3Qgbm9kZV9jcmM7CisgIGppbnQzMl90IG5hbWVfY3JjOworICBfX3U4IG5hbWVbMF07CiB9Owotc3RydWN0IGpmZnMyX3Jhd19pbm9kZQotewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBqaW50MTZfdCBtYWdpYzsKLSBqaW50MTZfdCBub2RldHlwZTsKLSBqaW50MzJfdCB0b3RsZW47Ci0gamludDMyX3QgaGRyX2NyYzsKK3N0cnVjdCBqZmZzMl9yYXdfaW5vZGUgeworICBqaW50MTZfdCBtYWdpYzsKKyAgamludDE2X3Qgbm9kZXR5cGU7CisgIGppbnQzMl90IHRvdGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gamludDMyX3QgaW5vOwotIGppbnQzMl90IHZlcnNpb247Ci0gam1vZGVfdCBtb2RlOwotIGppbnQxNl90IHVpZDsKKyAgamludDMyX3QgaGRyX2NyYzsKKyAgamludDMyX3QgaW5vOworICBqaW50MzJfdCB2ZXJzaW9uOworICBqbW9kZV90IG1vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGppbnQxNl90IGdpZDsKLSBqaW50MzJfdCBpc2l6ZTsKLSBqaW50MzJfdCBhdGltZTsKLSBqaW50MzJfdCBtdGltZTsKKyAgamludDE2X3QgdWlkOworICBqaW50MTZfdCBnaWQ7CisgIGppbnQzMl90IGlzaXplOworICBqaW50MzJfdCBhdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gamludDMyX3QgY3RpbWU7Ci0gamludDMyX3Qgb2Zmc2V0OwotIGppbnQzMl90IGNzaXplOwotIGppbnQzMl90IGRzaXplOworICBqaW50MzJfdCBtdGltZTsKKyAgamludDMyX3QgY3RpbWU7CisgIGppbnQzMl90IG9mZnNldDsKKyAgamludDMyX3QgY3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY29tcHI7Ci0gX191OCB1c2VyY29tcHI7Ci0gamludDE2X3QgZmxhZ3M7Ci0gamludDMyX3QgZGF0YV9jcmM7CisgIGppbnQzMl90IGRzaXplOworICBfX3U4IGNvbXByOworICBfX3U4IHVzZXJjb21wcjsKKyAgamludDE2X3QgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGppbnQzMl90IG5vZGVfY3JjOwotIF9fdTggZGF0YVswXTsKKyAgamludDMyX3QgZGF0YV9jcmM7CisgIGppbnQzMl90IG5vZGVfY3JjOworICBfX3U4IGRhdGFbMF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBqZmZzMl9yYXdfeGF0dHIgeworICBqaW50MTZfdCBtYWdpYzsKKyAgamludDE2X3Qgbm9kZXR5cGU7CisgIGppbnQzMl90IHRvdGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gamludDE2X3QgbWFnaWM7Ci0gamludDE2X3Qgbm9kZXR5cGU7Ci0gamludDMyX3QgdG90bGVuOwotIGppbnQzMl90IGhkcl9jcmM7CisgIGppbnQzMl90IGhkcl9jcmM7CisgIGppbnQzMl90IHhpZDsKKyAgamludDMyX3QgdmVyc2lvbjsKKyAgX191OCB4cHJlZml4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBqaW50MzJfdCB4aWQ7Ci0gamludDMyX3QgdmVyc2lvbjsKLSBfX3U4IHhwcmVmaXg7Ci0gX191OCBuYW1lX2xlbjsKKyAgX191OCBuYW1lX2xlbjsKKyAgamludDE2X3QgdmFsdWVfbGVuOworICBqaW50MzJfdCBkYXRhX2NyYzsKKyAgamludDMyX3Qgbm9kZV9jcmM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGppbnQxNl90IHZhbHVlX2xlbjsKLSBqaW50MzJfdCBkYXRhX2NyYzsKLSBqaW50MzJfdCBub2RlX2NyYzsKLSBfX3U4IGRhdGFbMF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGRhdGFbMF07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwotc3RydWN0IGpmZnMyX3Jhd194cmVmCi17Ci0gamludDE2X3QgbWFnaWM7CitzdHJ1Y3QgamZmczJfcmF3X3hyZWYgeworICBqaW50MTZfdCBtYWdpYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gamludDE2X3Qgbm9kZXR5cGU7Ci0gamludDMyX3QgdG90bGVuOwotIGppbnQzMl90IGhkcl9jcmM7Ci0gamludDMyX3QgaW5vOworICBqaW50MTZfdCBub2RldHlwZTsKKyAgamludDMyX3QgdG90bGVuOworICBqaW50MzJfdCBoZHJfY3JjOworICBqaW50MzJfdCBpbm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGppbnQzMl90IHhpZDsKLSBqaW50MzJfdCB4c2Vxbm87Ci0gamludDMyX3Qgbm9kZV9jcmM7CisgIGppbnQzMl90IHhpZDsKKyAgamludDMyX3QgeHNlcW5vOworICBqaW50MzJfdCBub2RlX2NyYzsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IGpmZnMyX3Jhd19zdW1tYXJ5Ci17Ci0gamludDE2X3QgbWFnaWM7Ci0gamludDE2X3Qgbm9kZXR5cGU7CitzdHJ1Y3QgamZmczJfcmF3X3N1bW1hcnkgeworICBqaW50MTZfdCBtYWdpYzsKKyAgamludDE2X3Qgbm9kZXR5cGU7CisgIGppbnQzMl90IHRvdGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gamludDMyX3QgdG90bGVuOwotIGppbnQzMl90IGhkcl9jcmM7Ci0gamludDMyX3Qgc3VtX251bTsKLSBqaW50MzJfdCBjbG5fbWtyOworICBqaW50MzJfdCBoZHJfY3JjOworICBqaW50MzJfdCBzdW1fbnVtOworICBqaW50MzJfdCBjbG5fbWtyOworICBqaW50MzJfdCBwYWRkZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGppbnQzMl90IHBhZGRlZDsKLSBqaW50MzJfdCBzdW1fY3JjOwotIGppbnQzMl90IG5vZGVfY3JjOwotIGppbnQzMl90IHN1bVswXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGppbnQzMl90IHN1bV9jcmM7CisgIGppbnQzMl90IG5vZGVfY3JjOworICBqaW50MzJfdCBzdW1bMF07CiB9OwotdW5pb24gamZmczJfbm9kZV91bmlvbgotewotIHN0cnVjdCBqZmZzMl9yYXdfaW5vZGUgaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGpmZnMyX3Jhd19kaXJlbnQgZDsKLSBzdHJ1Y3QgamZmczJfcmF3X3hhdHRyIHg7Ci0gc3RydWN0IGpmZnMyX3Jhd194cmVmIHI7Ci0gc3RydWN0IGpmZnMyX3Jhd19zdW1tYXJ5IHM7Cit1bmlvbiBqZmZzMl9ub2RlX3VuaW9uIHsKKyAgc3RydWN0IGpmZnMyX3Jhd19pbm9kZSBpOworICBzdHJ1Y3QgamZmczJfcmF3X2RpcmVudCBkOworICBzdHJ1Y3QgamZmczJfcmF3X3hhdHRyIHg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBqZmZzMl91bmtub3duX25vZGUgdTsKKyAgc3RydWN0IGpmZnMyX3Jhd194cmVmIHI7CisgIHN0cnVjdCBqZmZzMl9yYXdfc3VtbWFyeSBzOworICBzdHJ1Y3QgamZmczJfdW5rbm93bl9ub2RlIHU7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHVuaW9uIGpmZnMyX2RldmljZV9ub2RlIHsKLSBqaW50MTZfdCBvbGRfaWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGppbnQzMl90IG5ld19pZDsKKyAgamludDE2X3Qgb2xkX2lkOworICBqaW50MzJfdCBuZXdfaWQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9qb3lzdGljay5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9qb3lzdGljay5oCmluZGV4IGE1MmQzOGIuLjk5MzNlNjkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvam95c3RpY2suaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2pveXN0aWNrLmgKQEAgLTI3LDExICsyNywxMSBAQAogI2RlZmluZSBKU19FVkVOVF9JTklUIDB4ODAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QganNfZXZlbnQgewotIF9fdTMyIHRpbWU7Ci0gX19zMTYgdmFsdWU7Ci0gX191OCB0eXBlOworICBfX3UzMiB0aW1lOworICBfX3MxNiB2YWx1ZTsKKyAgX191OCB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG51bWJlcjsKKyAgX191OCBudW1iZXI7CiB9OwogI2RlZmluZSBKU0lPQ0dWRVJTSU9OIF9JT1IoJ2onLCAweDAxLCBfX3UzMikKICNkZWZpbmUgSlNJT0NHQVhFUyBfSU9SKCdqJywgMHgxMSwgX191OCkKQEAgLTQ5LDEwICs0OSwxMCBAQAogI2RlZmluZSBKU19DT1JSX05PTkUgMHgwMAogI2RlZmluZSBKU19DT1JSX0JST0tFTiAweDAxCiBzdHJ1Y3QganNfY29yciB7Ci0gX19zMzIgY29lZls4XTsKKyAgX19zMzIgY29lZls4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMTYgcHJlYzsKLSBfX3UxNiB0eXBlOworICBfX3MxNiBwcmVjOworICBfX3UxNiB0eXBlOwogfTsKICNkZWZpbmUgSlNfUkVUVVJOIHNpemVvZihzdHJ1Y3QgSlNfREFUQV9UWVBFKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTc5LDMwICs3OSwzMCBAQAogI2RlZmluZSBKU19HRVRfQUxMIDcKICNkZWZpbmUgSlNfU0VUX0FMTCA4CiBzdHJ1Y3QgSlNfREFUQV9UWVBFIHsKLSBfX3MzMiBidXR0b25zOworICBfX3MzMiBidXR0b25zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiB4OwotIF9fczMyIHk7CisgIF9fczMyIHg7CisgIF9fczMyIHk7CiB9Owogc3RydWN0IEpTX0RBVEFfU0FWRV9UWVBFXzMyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgSlNfVElNRU9VVDsKLSBfX3MzMiBCVVNZOwotIF9fczMyIEpTX0VYUElSRVRJTUU7Ci0gX19zMzIgSlNfVElNRUxJTUlUOworICBfX3MzMiBKU19USU1FT1VUOworICBfX3MzMiBCVVNZOworICBfX3MzMiBKU19FWFBJUkVUSU1FOworICBfX3MzMiBKU19USU1FTElNSVQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBKU19EQVRBX1RZUEUgSlNfU0FWRTsKLSBzdHJ1Y3QgSlNfREFUQV9UWVBFIEpTX0NPUlI7CisgIHN0cnVjdCBKU19EQVRBX1RZUEUgSlNfU0FWRTsKKyAgc3RydWN0IEpTX0RBVEFfVFlQRSBKU19DT1JSOwogfTsKIHN0cnVjdCBKU19EQVRBX1NBVkVfVFlQRV82NCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIEpTX1RJTUVPVVQ7Ci0gX19zMzIgQlVTWTsKLSBfX3M2NCBKU19FWFBJUkVUSU1FOwotIF9fczY0IEpTX1RJTUVMSU1JVDsKKyAgX19zMzIgSlNfVElNRU9VVDsKKyAgX19zMzIgQlVTWTsKKyAgX19zNjQgSlNfRVhQSVJFVElNRTsKKyAgX19zNjQgSlNfVElNRUxJTUlUOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgSlNfREFUQV9UWVBFIEpTX1NBVkU7Ci0gc3RydWN0IEpTX0RBVEFfVFlQRSBKU19DT1JSOworICBzdHJ1Y3QgSlNfREFUQV9UWVBFIEpTX1NBVkU7CisgIHN0cnVjdCBKU19EQVRBX1RZUEUgSlNfQ09SUjsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tkLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tkLmgKaW5kZXggYzFmZDExYy4uYTAwMGNkOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva2QuaApAQCAtMjcsOSArMjcsOSBAQAogI2RlZmluZSBQSU9fRk9OVFggMHg0QjZDCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGNvbnNvbGVmb250ZGVzYyB7Ci0gdW5zaWduZWQgc2hvcnQgY2hhcmNvdW50OwotIHVuc2lnbmVkIHNob3J0IGNoYXJoZWlnaHQ7Ci0gY2hhciBfX3VzZXIgKmNoYXJkYXRhOworICB1bnNpZ25lZCBzaG9ydCBjaGFyY291bnQ7CisgIHVuc2lnbmVkIHNob3J0IGNoYXJoZWlnaHQ7CisgIGNoYXIgX191c2VyICogY2hhcmRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgUElPX0ZPTlRSRVNFVCAweDRCNkQKQEAgLTc0LDIyICs3NCwyMiBAQAogI2RlZmluZSBQSU9fVU5JU0NSTk1BUCAweDRCNkEKICNkZWZpbmUgR0lPX1VOSU1BUCAweDRCNjYKIHN0cnVjdCB1bmlwYWlyIHsKLSB1bnNpZ25lZCBzaG9ydCB1bmljb2RlOworICB1bnNpZ25lZCBzaG9ydCB1bmljb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBmb250cG9zOworICB1bnNpZ25lZCBzaG9ydCBmb250cG9zOwogfTsKIHN0cnVjdCB1bmltYXBkZXNjIHsKLSB1bnNpZ25lZCBzaG9ydCBlbnRyeV9jdDsKKyAgdW5zaWduZWQgc2hvcnQgZW50cnlfY3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB1bmlwYWlyIF9fdXNlciAqZW50cmllczsKKyAgc3RydWN0IHVuaXBhaXIgX191c2VyICogZW50cmllczsKIH07CiAjZGVmaW5lIFBJT19VTklNQVAgMHg0QjY3CiAjZGVmaW5lIFBJT19VTklNQVBDTFIgMHg0QjY4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVuaW1hcGluaXQgewotIHVuc2lnbmVkIHNob3J0IGFkdmlzZWRfaGFzaHNpemU7Ci0gdW5zaWduZWQgc2hvcnQgYWR2aXNlZF9oYXNoc3RlcDsKLSB1bnNpZ25lZCBzaG9ydCBhZHZpc2VkX2hhc2hsZXZlbDsKKyAgdW5zaWduZWQgc2hvcnQgYWR2aXNlZF9oYXNoc2l6ZTsKKyAgdW5zaWduZWQgc2hvcnQgYWR2aXNlZF9oYXNoc3RlcDsKKyAgdW5zaWduZWQgc2hvcnQgYWR2aXNlZF9oYXNobGV2ZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVU5JX0RJUkVDVF9CQVNFIDB4RjAwMApAQCAtMTE2LDkgKzExNiw5IEBACiAjZGVmaW5lIEtEU0tCTEVEIDB4NEI2NQogc3RydWN0IGtiZW50cnkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGtiX3RhYmxlOwotIHVuc2lnbmVkIGNoYXIga2JfaW5kZXg7Ci0gdW5zaWduZWQgc2hvcnQga2JfdmFsdWU7CisgIHVuc2lnbmVkIGNoYXIga2JfdGFibGU7CisgIHVuc2lnbmVkIGNoYXIga2JfaW5kZXg7CisgIHVuc2lnbmVkIHNob3J0IGtiX3ZhbHVlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtfTk9STVRBQiAweDAwCkBAIC0xMjksMzcgKzEyOSwzNyBAQAogI2RlZmluZSBLREdLQkVOVCAweDRCNDYKICNkZWZpbmUgS0RTS0JFTlQgMHg0QjQ3CiBzdHJ1Y3Qga2JzZW50cnkgewotIHVuc2lnbmVkIGNoYXIga2JfZnVuYzsKKyAgdW5zaWduZWQgY2hhciBrYl9mdW5jOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGtiX3N0cmluZ1s1MTJdOworICB1bnNpZ25lZCBjaGFyIGtiX3N0cmluZ1s1MTJdOwogfTsKICNkZWZpbmUgS0RHS0JTRU5UIDB4NEI0OAogI2RlZmluZSBLRFNLQlNFTlQgMHg0QjQ5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGtiZGlhY3IgewotIHVuc2lnbmVkIGNoYXIgZGlhY3IsIGJhc2UsIHJlc3VsdDsKKyAgdW5zaWduZWQgY2hhciBkaWFjciwgYmFzZSwgcmVzdWx0OwogfTsKIHN0cnVjdCBrYmRpYWNycyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBrYl9jbnQ7Ci0gc3RydWN0IGtiZGlhY3Iga2JkaWFjclsyNTZdOworICB1bnNpZ25lZCBpbnQga2JfY250OworICBzdHJ1Y3Qga2JkaWFjciBrYmRpYWNyWzI1Nl07CiB9OwogI2RlZmluZSBLREdLQkRJQUNSIDB4NEI0QQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS0RTS0JESUFDUiAweDRCNEIKIHN0cnVjdCBrYmRpYWNydWMgewotIHVuc2lnbmVkIGludCBkaWFjciwgYmFzZSwgcmVzdWx0OworICB1bnNpZ25lZCBpbnQgZGlhY3IsIGJhc2UsIHJlc3VsdDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGtiZGlhY3JzdWMgewotIHVuc2lnbmVkIGludCBrYl9jbnQ7Ci0gc3RydWN0IGtiZGlhY3J1YyBrYmRpYWNydWNbMjU2XTsKKyAgdW5zaWduZWQgaW50IGtiX2NudDsKKyAgc3RydWN0IGtiZGlhY3J1YyBrYmRpYWNydWNbMjU2XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLREdLQkRJQUNSVUMgMHg0QkZBCiAjZGVmaW5lIEtEU0tCRElBQ1JVQyAweDRCRkIKIHN0cnVjdCBrYmtleWNvZGUgewotIHVuc2lnbmVkIGludCBzY2FuY29kZSwga2V5Y29kZTsKKyAgdW5zaWduZWQgaW50IHNjYW5jb2RlLCBrZXljb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEtER0VUS0VZQ09ERSAweDRCNEMKQEAgLTE2NywyNiArMTY3LDI2IEBACiAjZGVmaW5lIEtEU0lHQUNDRVBUIDB4NEI0RQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrYmRfcmVwZWF0IHsKLSBpbnQgZGVsYXk7Ci0gaW50IHBlcmlvZDsKKyAgaW50IGRlbGF5OworICBpbnQgcGVyaW9kOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtES0JEUkVQIDB4NEI1MgogI2RlZmluZSBLREZPTlRPUCAweDRCNzIKIHN0cnVjdCBjb25zb2xlX2ZvbnRfb3AgewotIHVuc2lnbmVkIGludCBvcDsKKyAgdW5zaWduZWQgaW50IG9wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gdW5zaWduZWQgaW50IHdpZHRoLCBoZWlnaHQ7Ci0gdW5zaWduZWQgaW50IGNoYXJjb3VudDsKLSB1bnNpZ25lZCBjaGFyIF9fdXNlciAqZGF0YTsKKyAgdW5zaWduZWQgaW50IGZsYWdzOworICB1bnNpZ25lZCBpbnQgd2lkdGgsIGhlaWdodDsKKyAgdW5zaWduZWQgaW50IGNoYXJjb3VudDsKKyAgdW5zaWduZWQgY2hhciBfX3VzZXIgKiBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgY29uc29sZV9mb250IHsKLSB1bnNpZ25lZCBpbnQgd2lkdGgsIGhlaWdodDsKLSB1bnNpZ25lZCBpbnQgY2hhcmNvdW50OworICB1bnNpZ25lZCBpbnQgd2lkdGgsIGhlaWdodDsKKyAgdW5zaWduZWQgaW50IGNoYXJjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciAqZGF0YTsKKyAgdW5zaWduZWQgY2hhciAqIGRhdGE7CiB9OwogI2RlZmluZSBLRF9GT05UX09QX1NFVCAwCiAjZGVmaW5lIEtEX0ZPTlRfT1BfR0VUIDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva2Rldl90LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tkZXZfdC5oCmluZGV4IDdjYjFkNjkuLmY0YzA0MzYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva2Rldl90LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZGV2X3QuaApAQCAtMTgsOCArMTgsOCBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9VQVBJX0xJTlVYX0tERVZfVF9ICiAjZGVmaW5lIF9VQVBJX0xJTlVYX0tERVZfVF9ICi0jZGVmaW5lIE1BSk9SKGRldikgKChkZXYpPj44KQorI2RlZmluZSBNQUpPUihkZXYpICgoZGV2KSA+PiA4KQogI2RlZmluZSBNSU5PUihkZXYpICgoZGV2KSAmIDB4ZmYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNS0RFVihtYSxtaSkgKChtYSk8PDggfCAobWkpKQorI2RlZmluZSBNS0RFVihtYSxtaSkgKChtYSkgPDwgOCB8IChtaSkpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva2VybmVsLXBhZ2UtZmxhZ3MuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva2VybmVsLXBhZ2UtZmxhZ3MuaAppbmRleCBjNGQwNWNjLi5jZTMwYmU3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tlcm5lbC1wYWdlLWZsYWdzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXJuZWwtcGFnZS1mbGFncy5oCkBAIC00Nyw0ICs0Nyw1IEBACiAjZGVmaW5lIEtQRl9LU00gMjEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtQRl9USFAgMjIKKyNkZWZpbmUgS1BGX0JBTExPT04gMjMKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXJuZWwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva2VybmVsLmgKaW5kZXggYzRjMGRkYy4uZWI5NDkwZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXJuZWwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tlcm5lbC5oCkBAIC0xOSw3ICsxOSw3IEBACiAjaWZuZGVmIF9VQVBJX0xJTlVYX0tFUk5FTF9ICiAjZGVmaW5lIF9VQVBJX0xJTlVYX0tFUk5FTF9ICiAjaW5jbHVkZSA8bGludXgvc3lzaW5mby5oPgotI2RlZmluZSBfX0FMSUdOX0tFUk5FTCh4LCBhKSBfX0FMSUdOX0tFUk5FTF9NQVNLKHgsICh0eXBlb2YoeCkpKGEpIC0gMSkKKyNkZWZpbmUgX19BTElHTl9LRVJORUwoeCxhKSBfX0FMSUdOX0tFUk5FTF9NQVNLKHgsICh0eXBlb2YoeCkpIChhKSAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX0FMSUdOX0tFUk5FTF9NQVNLKHgsIG1hc2spICgoKHgpICsgKG1hc2spKSAmIH4obWFzaykpCisjZGVmaW5lIF9fQUxJR05fS0VSTkVMX01BU0soeCxtYXNrKSAoKCh4KSArIChtYXNrKSkgJiB+KG1hc2spKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tlcm5lbGNhcGkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva2VybmVsY2FwaS5oCmluZGV4IGY1ZTM5NzQuLmE4NGZjZjggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva2VybmVsY2FwaS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva2VybmVsY2FwaS5oCkBAIC0yMywxNyArMjMsMTcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENBUElfTUFYREFUQVdJTkRPVyA4CiB0eXBlZGVmIHN0cnVjdCBrY2FwaV9mbGFnZGVmIHsKLSBpbnQgY29udHI7Ci0gaW50IGZsYWc7CisgIGludCBjb250cjsKKyAgaW50IGZsYWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBrY2FwaV9mbGFnZGVmOwogdHlwZWRlZiBzdHJ1Y3Qga2NhcGlfY2FyZGRlZiB7Ci0gY2hhciBkcml2ZXJbMzJdOwotIHVuc2lnbmVkIGludCBwb3J0OworICBjaGFyIGRyaXZlclszMl07CisgIHVuc2lnbmVkIGludCBwb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpcnE7Ci0gdW5zaWduZWQgaW50IG1lbWJhc2U7Ci0gaW50IGNhcmRucjsKKyAgdW5zaWduZWQgaXJxOworICB1bnNpZ25lZCBpbnQgbWVtYmFzZTsKKyAgaW50IGNhcmRucjsKIH0ga2NhcGlfY2FyZGRlZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtDQVBJX0NNRF9UUkFDRSAxMApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXhlYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXhlYy5oCmluZGV4IGExN2RjMjMuLmUxNjM4NWUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva2V4ZWMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tleGVjLmgKQEAgLTIzLDI4ICsyMywzMiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS0VYRUNfUFJFU0VSVkVfQ09OVEVYVCAweDAwMDAwMDAyCiAjZGVmaW5lIEtFWEVDX0FSQ0hfTUFTSyAweGZmZmYwMDAwCi0jZGVmaW5lIEtFWEVDX0FSQ0hfREVGQVVMVCAoIDAgPDwgMTYpCi0jZGVmaW5lIEtFWEVDX0FSQ0hfMzg2ICggMyA8PCAxNikKKyNkZWZpbmUgS0VYRUNfRklMRV9VTkxPQUQgMHgwMDAwMDAwMQorI2RlZmluZSBLRVhFQ19GSUxFX09OX0NSQVNIIDB4MDAwMDAwMDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtFWEVDX0FSQ0hfNjhLICggNCA8PCAxNikKKyNkZWZpbmUgS0VYRUNfRklMRV9OT19JTklUUkFNRlMgMHgwMDAwMDAwNAorI2RlZmluZSBLRVhFQ19BUkNIX0RFRkFVTFQgKDAgPDwgMTYpCisjZGVmaW5lIEtFWEVDX0FSQ0hfMzg2ICgzIDw8IDE2KQorI2RlZmluZSBLRVhFQ19BUkNIXzY4SyAoNCA8PCAxNikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtFWEVDX0FSQ0hfWDg2XzY0ICg2MiA8PCAxNikKICNkZWZpbmUgS0VYRUNfQVJDSF9QUEMgKDIwIDw8IDE2KQogI2RlZmluZSBLRVhFQ19BUkNIX1BQQzY0ICgyMSA8PCAxNikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtFWEVDX0FSQ0hfSUFfNjQgKDUwIDw8IDE2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS0VYRUNfQVJDSF9BUk0gKDQwIDw8IDE2KQogI2RlZmluZSBLRVhFQ19BUkNIX1MzOTAgKDIyIDw8IDE2KQogI2RlZmluZSBLRVhFQ19BUkNIX1NIICg0MiA8PCAxNikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtFWEVDX0FSQ0hfTUlQU19MRSAoMTAgPDwgMTYpCi0jZGVmaW5lIEtFWEVDX0FSQ0hfTUlQUyAoIDggPDwgMTYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLRVhFQ19BUkNIX01JUFMgKDggPDwgMTYpCiAjZGVmaW5lIEtFWEVDX1NFR01FTlRfTUFYIDE2CiBzdHJ1Y3Qga2V4ZWNfc2VnbWVudCB7CisgIGNvbnN0IHZvaWQgKiBidWY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNvbnN0IHZvaWQgKmJ1ZjsKLSBzaXplX3QgYnVmc3o7Ci0gY29uc3Qgdm9pZCAqbWVtOwotIHNpemVfdCBtZW1zejsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHNpemVfdCBidWZzejsKKyAgY29uc3Qgdm9pZCAqIG1lbTsKKyAgc2l6ZV90IG1lbXN6OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva2V5Ym9hcmQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva2V5Ym9hcmQuaAppbmRleCAwMzU4OTIwLi44ZGUwZmQ3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tleWJvYXJkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXlib2FyZC5oCkBAIC01Nyw0NjQgKzU3LDQ2NCBAQAogI2RlZmluZSBLVF9ERUFEMiAxMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1RfQlJMIDE0Ci0jZGVmaW5lIEsodCx2KSAoKCh0KTw8OCl8KHYpKQorI2RlZmluZSBLKHQsdikgKCgodCkgPDwgOCkgfCAodikpCiAjZGVmaW5lIEtUWVAoeCkgKCh4KSA+PiA4KQogI2RlZmluZSBLVkFMKHgpICgoeCkgJiAweGZmKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMSBLKEtUX0ZOLDApCi0jZGVmaW5lIEtfRjIgSyhLVF9GTiwxKQotI2RlZmluZSBLX0YzIEsoS1RfRk4sMikKLSNkZWZpbmUgS19GNCBLKEtUX0ZOLDMpCisjZGVmaW5lIEtfRjEgSyhLVF9GTiwgMCkKKyNkZWZpbmUgS19GMiBLKEtUX0ZOLCAxKQorI2RlZmluZSBLX0YzIEsoS1RfRk4sIDIpCisjZGVmaW5lIEtfRjQgSyhLVF9GTiwgMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjUgSyhLVF9GTiw0KQotI2RlZmluZSBLX0Y2IEsoS1RfRk4sNSkKLSNkZWZpbmUgS19GNyBLKEtUX0ZOLDYpCi0jZGVmaW5lIEtfRjggSyhLVF9GTiw3KQorI2RlZmluZSBLX0Y1IEsoS1RfRk4sIDQpCisjZGVmaW5lIEtfRjYgSyhLVF9GTiwgNSkKKyNkZWZpbmUgS19GNyBLKEtUX0ZOLCA2KQorI2RlZmluZSBLX0Y4IEsoS1RfRk4sIDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0Y5IEsoS1RfRk4sOCkKLSNkZWZpbmUgS19GMTAgSyhLVF9GTiw5KQotI2RlZmluZSBLX0YxMSBLKEtUX0ZOLDEwKQotI2RlZmluZSBLX0YxMiBLKEtUX0ZOLDExKQorI2RlZmluZSBLX0Y5IEsoS1RfRk4sIDgpCisjZGVmaW5lIEtfRjEwIEsoS1RfRk4sIDkpCisjZGVmaW5lIEtfRjExIEsoS1RfRk4sIDEwKQorI2RlZmluZSBLX0YxMiBLKEtUX0ZOLCAxMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjEzIEsoS1RfRk4sMTIpCi0jZGVmaW5lIEtfRjE0IEsoS1RfRk4sMTMpCi0jZGVmaW5lIEtfRjE1IEsoS1RfRk4sMTQpCi0jZGVmaW5lIEtfRjE2IEsoS1RfRk4sMTUpCisjZGVmaW5lIEtfRjEzIEsoS1RfRk4sIDEyKQorI2RlZmluZSBLX0YxNCBLKEtUX0ZOLCAxMykKKyNkZWZpbmUgS19GMTUgSyhLVF9GTiwgMTQpCisjZGVmaW5lIEtfRjE2IEsoS1RfRk4sIDE1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMTcgSyhLVF9GTiwxNikKLSNkZWZpbmUgS19GMTggSyhLVF9GTiwxNykKLSNkZWZpbmUgS19GMTkgSyhLVF9GTiwxOCkKLSNkZWZpbmUgS19GMjAgSyhLVF9GTiwxOSkKKyNkZWZpbmUgS19GMTcgSyhLVF9GTiwgMTYpCisjZGVmaW5lIEtfRjE4IEsoS1RfRk4sIDE3KQorI2RlZmluZSBLX0YxOSBLKEtUX0ZOLCAxOCkKKyNkZWZpbmUgS19GMjAgSyhLVF9GTiwgMTkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0ZJTkQgSyhLVF9GTiwyMCkKLSNkZWZpbmUgS19JTlNFUlQgSyhLVF9GTiwyMSkKLSNkZWZpbmUgS19SRU1PVkUgSyhLVF9GTiwyMikKLSNkZWZpbmUgS19TRUxFQ1QgSyhLVF9GTiwyMykKKyNkZWZpbmUgS19GSU5EIEsoS1RfRk4sIDIwKQorI2RlZmluZSBLX0lOU0VSVCBLKEtUX0ZOLCAyMSkKKyNkZWZpbmUgS19SRU1PVkUgSyhLVF9GTiwgMjIpCisjZGVmaW5lIEtfU0VMRUNUIEsoS1RfRk4sIDIzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19QR1VQIEsoS1RfRk4sMjQpCi0jZGVmaW5lIEtfUEdETiBLKEtUX0ZOLDI1KQotI2RlZmluZSBLX01BQ1JPIEsoS1RfRk4sMjYpCi0jZGVmaW5lIEtfSEVMUCBLKEtUX0ZOLDI3KQorI2RlZmluZSBLX1BHVVAgSyhLVF9GTiwgMjQpCisjZGVmaW5lIEtfUEdETiBLKEtUX0ZOLCAyNSkKKyNkZWZpbmUgS19NQUNSTyBLKEtUX0ZOLCAyNikKKyNkZWZpbmUgS19IRUxQIEsoS1RfRk4sIDI3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19ETyBLKEtUX0ZOLDI4KQotI2RlZmluZSBLX1BBVVNFIEsoS1RfRk4sMjkpCi0jZGVmaW5lIEtfRjIxIEsoS1RfRk4sMzApCi0jZGVmaW5lIEtfRjIyIEsoS1RfRk4sMzEpCisjZGVmaW5lIEtfRE8gSyhLVF9GTiwgMjgpCisjZGVmaW5lIEtfUEFVU0UgSyhLVF9GTiwgMjkpCisjZGVmaW5lIEtfRjIxIEsoS1RfRk4sIDMwKQorI2RlZmluZSBLX0YyMiBLKEtUX0ZOLCAzMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjIzIEsoS1RfRk4sMzIpCi0jZGVmaW5lIEtfRjI0IEsoS1RfRk4sMzMpCi0jZGVmaW5lIEtfRjI1IEsoS1RfRk4sMzQpCi0jZGVmaW5lIEtfRjI2IEsoS1RfRk4sMzUpCisjZGVmaW5lIEtfRjIzIEsoS1RfRk4sIDMyKQorI2RlZmluZSBLX0YyNCBLKEtUX0ZOLCAzMykKKyNkZWZpbmUgS19GMjUgSyhLVF9GTiwgMzQpCisjZGVmaW5lIEtfRjI2IEsoS1RfRk4sIDM1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMjcgSyhLVF9GTiwzNikKLSNkZWZpbmUgS19GMjggSyhLVF9GTiwzNykKLSNkZWZpbmUgS19GMjkgSyhLVF9GTiwzOCkKLSNkZWZpbmUgS19GMzAgSyhLVF9GTiwzOSkKKyNkZWZpbmUgS19GMjcgSyhLVF9GTiwgMzYpCisjZGVmaW5lIEtfRjI4IEsoS1RfRk4sIDM3KQorI2RlZmluZSBLX0YyOSBLKEtUX0ZOLCAzOCkKKyNkZWZpbmUgS19GMzAgSyhLVF9GTiwgMzkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YzMSBLKEtUX0ZOLDQwKQotI2RlZmluZSBLX0YzMiBLKEtUX0ZOLDQxKQotI2RlZmluZSBLX0YzMyBLKEtUX0ZOLDQyKQotI2RlZmluZSBLX0YzNCBLKEtUX0ZOLDQzKQorI2RlZmluZSBLX0YzMSBLKEtUX0ZOLCA0MCkKKyNkZWZpbmUgS19GMzIgSyhLVF9GTiwgNDEpCisjZGVmaW5lIEtfRjMzIEsoS1RfRk4sIDQyKQorI2RlZmluZSBLX0YzNCBLKEtUX0ZOLCA0MykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjM1IEsoS1RfRk4sNDQpCi0jZGVmaW5lIEtfRjM2IEsoS1RfRk4sNDUpCi0jZGVmaW5lIEtfRjM3IEsoS1RfRk4sNDYpCi0jZGVmaW5lIEtfRjM4IEsoS1RfRk4sNDcpCisjZGVmaW5lIEtfRjM1IEsoS1RfRk4sIDQ0KQorI2RlZmluZSBLX0YzNiBLKEtUX0ZOLCA0NSkKKyNkZWZpbmUgS19GMzcgSyhLVF9GTiwgNDYpCisjZGVmaW5lIEtfRjM4IEsoS1RfRk4sIDQ3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GMzkgSyhLVF9GTiw0OCkKLSNkZWZpbmUgS19GNDAgSyhLVF9GTiw0OSkKLSNkZWZpbmUgS19GNDEgSyhLVF9GTiw1MCkKLSNkZWZpbmUgS19GNDIgSyhLVF9GTiw1MSkKKyNkZWZpbmUgS19GMzkgSyhLVF9GTiwgNDgpCisjZGVmaW5lIEtfRjQwIEsoS1RfRk4sIDQ5KQorI2RlZmluZSBLX0Y0MSBLKEtUX0ZOLCA1MCkKKyNkZWZpbmUgS19GNDIgSyhLVF9GTiwgNTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0Y0MyBLKEtUX0ZOLDUyKQotI2RlZmluZSBLX0Y0NCBLKEtUX0ZOLDUzKQotI2RlZmluZSBLX0Y0NSBLKEtUX0ZOLDU0KQotI2RlZmluZSBLX0Y0NiBLKEtUX0ZOLDU1KQorI2RlZmluZSBLX0Y0MyBLKEtUX0ZOLCA1MikKKyNkZWZpbmUgS19GNDQgSyhLVF9GTiwgNTMpCisjZGVmaW5lIEtfRjQ1IEsoS1RfRk4sIDU0KQorI2RlZmluZSBLX0Y0NiBLKEtUX0ZOLCA1NSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjQ3IEsoS1RfRk4sNTYpCi0jZGVmaW5lIEtfRjQ4IEsoS1RfRk4sNTcpCi0jZGVmaW5lIEtfRjQ5IEsoS1RfRk4sNTgpCi0jZGVmaW5lIEtfRjUwIEsoS1RfRk4sNTkpCisjZGVmaW5lIEtfRjQ3IEsoS1RfRk4sIDU2KQorI2RlZmluZSBLX0Y0OCBLKEtUX0ZOLCA1NykKKyNkZWZpbmUgS19GNDkgSyhLVF9GTiwgNTgpCisjZGVmaW5lIEtfRjUwIEsoS1RfRk4sIDU5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GNTEgSyhLVF9GTiw2MCkKLSNkZWZpbmUgS19GNTIgSyhLVF9GTiw2MSkKLSNkZWZpbmUgS19GNTMgSyhLVF9GTiw2MikKLSNkZWZpbmUgS19GNTQgSyhLVF9GTiw2MykKKyNkZWZpbmUgS19GNTEgSyhLVF9GTiwgNjApCisjZGVmaW5lIEtfRjUyIEsoS1RfRk4sIDYxKQorI2RlZmluZSBLX0Y1MyBLKEtUX0ZOLCA2MikKKyNkZWZpbmUgS19GNTQgSyhLVF9GTiwgNjMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0Y1NSBLKEtUX0ZOLDY0KQotI2RlZmluZSBLX0Y1NiBLKEtUX0ZOLDY1KQotI2RlZmluZSBLX0Y1NyBLKEtUX0ZOLDY2KQotI2RlZmluZSBLX0Y1OCBLKEtUX0ZOLDY3KQorI2RlZmluZSBLX0Y1NSBLKEtUX0ZOLCA2NCkKKyNkZWZpbmUgS19GNTYgSyhLVF9GTiwgNjUpCisjZGVmaW5lIEtfRjU3IEsoS1RfRk4sIDY2KQorI2RlZmluZSBLX0Y1OCBLKEtUX0ZOLCA2NykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjU5IEsoS1RfRk4sNjgpCi0jZGVmaW5lIEtfRjYwIEsoS1RfRk4sNjkpCi0jZGVmaW5lIEtfRjYxIEsoS1RfRk4sNzApCi0jZGVmaW5lIEtfRjYyIEsoS1RfRk4sNzEpCisjZGVmaW5lIEtfRjU5IEsoS1RfRk4sIDY4KQorI2RlZmluZSBLX0Y2MCBLKEtUX0ZOLCA2OSkKKyNkZWZpbmUgS19GNjEgSyhLVF9GTiwgNzApCisjZGVmaW5lIEtfRjYyIEsoS1RfRk4sIDcxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GNjMgSyhLVF9GTiw3MikKLSNkZWZpbmUgS19GNjQgSyhLVF9GTiw3MykKLSNkZWZpbmUgS19GNjUgSyhLVF9GTiw3NCkKLSNkZWZpbmUgS19GNjYgSyhLVF9GTiw3NSkKKyNkZWZpbmUgS19GNjMgSyhLVF9GTiwgNzIpCisjZGVmaW5lIEtfRjY0IEsoS1RfRk4sIDczKQorI2RlZmluZSBLX0Y2NSBLKEtUX0ZOLCA3NCkKKyNkZWZpbmUgS19GNjYgSyhLVF9GTiwgNzUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0Y2NyBLKEtUX0ZOLDc2KQotI2RlZmluZSBLX0Y2OCBLKEtUX0ZOLDc3KQotI2RlZmluZSBLX0Y2OSBLKEtUX0ZOLDc4KQotI2RlZmluZSBLX0Y3MCBLKEtUX0ZOLDc5KQorI2RlZmluZSBLX0Y2NyBLKEtUX0ZOLCA3NikKKyNkZWZpbmUgS19GNjggSyhLVF9GTiwgNzcpCisjZGVmaW5lIEtfRjY5IEsoS1RfRk4sIDc4KQorI2RlZmluZSBLX0Y3MCBLKEtUX0ZOLCA3OSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjcxIEsoS1RfRk4sODApCi0jZGVmaW5lIEtfRjcyIEsoS1RfRk4sODEpCi0jZGVmaW5lIEtfRjczIEsoS1RfRk4sODIpCi0jZGVmaW5lIEtfRjc0IEsoS1RfRk4sODMpCisjZGVmaW5lIEtfRjcxIEsoS1RfRk4sIDgwKQorI2RlZmluZSBLX0Y3MiBLKEtUX0ZOLCA4MSkKKyNkZWZpbmUgS19GNzMgSyhLVF9GTiwgODIpCisjZGVmaW5lIEtfRjc0IEsoS1RfRk4sIDgzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GNzUgSyhLVF9GTiw4NCkKLSNkZWZpbmUgS19GNzYgSyhLVF9GTiw4NSkKLSNkZWZpbmUgS19GNzcgSyhLVF9GTiw4NikKLSNkZWZpbmUgS19GNzggSyhLVF9GTiw4NykKKyNkZWZpbmUgS19GNzUgSyhLVF9GTiwgODQpCisjZGVmaW5lIEtfRjc2IEsoS1RfRk4sIDg1KQorI2RlZmluZSBLX0Y3NyBLKEtUX0ZOLCA4NikKKyNkZWZpbmUgS19GNzggSyhLVF9GTiwgODcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0Y3OSBLKEtUX0ZOLDg4KQotI2RlZmluZSBLX0Y4MCBLKEtUX0ZOLDg5KQotI2RlZmluZSBLX0Y4MSBLKEtUX0ZOLDkwKQotI2RlZmluZSBLX0Y4MiBLKEtUX0ZOLDkxKQorI2RlZmluZSBLX0Y3OSBLKEtUX0ZOLCA4OCkKKyNkZWZpbmUgS19GODAgSyhLVF9GTiwgODkpCisjZGVmaW5lIEtfRjgxIEsoS1RfRk4sIDkwKQorI2RlZmluZSBLX0Y4MiBLKEtUX0ZOLCA5MSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjgzIEsoS1RfRk4sOTIpCi0jZGVmaW5lIEtfRjg0IEsoS1RfRk4sOTMpCi0jZGVmaW5lIEtfRjg1IEsoS1RfRk4sOTQpCi0jZGVmaW5lIEtfRjg2IEsoS1RfRk4sOTUpCisjZGVmaW5lIEtfRjgzIEsoS1RfRk4sIDkyKQorI2RlZmluZSBLX0Y4NCBLKEtUX0ZOLCA5MykKKyNkZWZpbmUgS19GODUgSyhLVF9GTiwgOTQpCisjZGVmaW5lIEtfRjg2IEsoS1RfRk4sIDk1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GODcgSyhLVF9GTiw5NikKLSNkZWZpbmUgS19GODggSyhLVF9GTiw5NykKLSNkZWZpbmUgS19GODkgSyhLVF9GTiw5OCkKLSNkZWZpbmUgS19GOTAgSyhLVF9GTiw5OSkKKyNkZWZpbmUgS19GODcgSyhLVF9GTiwgOTYpCisjZGVmaW5lIEtfRjg4IEsoS1RfRk4sIDk3KQorI2RlZmluZSBLX0Y4OSBLKEtUX0ZOLCA5OCkKKyNkZWZpbmUgS19GOTAgSyhLVF9GTiwgOTkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0Y5MSBLKEtUX0ZOLDEwMCkKLSNkZWZpbmUgS19GOTIgSyhLVF9GTiwxMDEpCi0jZGVmaW5lIEtfRjkzIEsoS1RfRk4sMTAyKQotI2RlZmluZSBLX0Y5NCBLKEtUX0ZOLDEwMykKKyNkZWZpbmUgS19GOTEgSyhLVF9GTiwgMTAwKQorI2RlZmluZSBLX0Y5MiBLKEtUX0ZOLCAxMDEpCisjZGVmaW5lIEtfRjkzIEsoS1RfRk4sIDEwMikKKyNkZWZpbmUgS19GOTQgSyhLVF9GTiwgMTAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19GOTUgSyhLVF9GTiwxMDQpCi0jZGVmaW5lIEtfRjk2IEsoS1RfRk4sMTA1KQotI2RlZmluZSBLX0Y5NyBLKEtUX0ZOLDEwNikKLSNkZWZpbmUgS19GOTggSyhLVF9GTiwxMDcpCisjZGVmaW5lIEtfRjk1IEsoS1RfRk4sIDEwNCkKKyNkZWZpbmUgS19GOTYgSyhLVF9GTiwgMTA1KQorI2RlZmluZSBLX0Y5NyBLKEtUX0ZOLCAxMDYpCisjZGVmaW5lIEtfRjk4IEsoS1RfRk4sIDEwNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfRjk5IEsoS1RfRk4sMTA4KQotI2RlZmluZSBLX0YxMDAgSyhLVF9GTiwxMDkpCi0jZGVmaW5lIEtfRjEwMSBLKEtUX0ZOLDExMCkKLSNkZWZpbmUgS19GMTAyIEsoS1RfRk4sMTExKQorI2RlZmluZSBLX0Y5OSBLKEtUX0ZOLCAxMDgpCisjZGVmaW5lIEtfRjEwMCBLKEtUX0ZOLCAxMDkpCisjZGVmaW5lIEtfRjEwMSBLKEtUX0ZOLCAxMTApCisjZGVmaW5lIEtfRjEwMiBLKEtUX0ZOLCAxMTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxMDMgSyhLVF9GTiwxMTIpCi0jZGVmaW5lIEtfRjEwNCBLKEtUX0ZOLDExMykKLSNkZWZpbmUgS19GMTA1IEsoS1RfRk4sMTE0KQotI2RlZmluZSBLX0YxMDYgSyhLVF9GTiwxMTUpCisjZGVmaW5lIEtfRjEwMyBLKEtUX0ZOLCAxMTIpCisjZGVmaW5lIEtfRjEwNCBLKEtUX0ZOLCAxMTMpCisjZGVmaW5lIEtfRjEwNSBLKEtUX0ZOLCAxMTQpCisjZGVmaW5lIEtfRjEwNiBLKEtUX0ZOLCAxMTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxMDcgSyhLVF9GTiwxMTYpCi0jZGVmaW5lIEtfRjEwOCBLKEtUX0ZOLDExNykKLSNkZWZpbmUgS19GMTA5IEsoS1RfRk4sMTE4KQotI2RlZmluZSBLX0YxMTAgSyhLVF9GTiwxMTkpCisjZGVmaW5lIEtfRjEwNyBLKEtUX0ZOLCAxMTYpCisjZGVmaW5lIEtfRjEwOCBLKEtUX0ZOLCAxMTcpCisjZGVmaW5lIEtfRjEwOSBLKEtUX0ZOLCAxMTgpCisjZGVmaW5lIEtfRjExMCBLKEtUX0ZOLCAxMTkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxMTEgSyhLVF9GTiwxMjApCi0jZGVmaW5lIEtfRjExMiBLKEtUX0ZOLDEyMSkKLSNkZWZpbmUgS19GMTEzIEsoS1RfRk4sMTIyKQotI2RlZmluZSBLX0YxMTQgSyhLVF9GTiwxMjMpCisjZGVmaW5lIEtfRjExMSBLKEtUX0ZOLCAxMjApCisjZGVmaW5lIEtfRjExMiBLKEtUX0ZOLCAxMjEpCisjZGVmaW5lIEtfRjExMyBLKEtUX0ZOLCAxMjIpCisjZGVmaW5lIEtfRjExNCBLKEtUX0ZOLCAxMjMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxMTUgSyhLVF9GTiwxMjQpCi0jZGVmaW5lIEtfRjExNiBLKEtUX0ZOLDEyNSkKLSNkZWZpbmUgS19GMTE3IEsoS1RfRk4sMTI2KQotI2RlZmluZSBLX0YxMTggSyhLVF9GTiwxMjcpCisjZGVmaW5lIEtfRjExNSBLKEtUX0ZOLCAxMjQpCisjZGVmaW5lIEtfRjExNiBLKEtUX0ZOLCAxMjUpCisjZGVmaW5lIEtfRjExNyBLKEtUX0ZOLCAxMjYpCisjZGVmaW5lIEtfRjExOCBLKEtUX0ZOLCAxMjcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxMTkgSyhLVF9GTiwxMjgpCi0jZGVmaW5lIEtfRjEyMCBLKEtUX0ZOLDEyOSkKLSNkZWZpbmUgS19GMTIxIEsoS1RfRk4sMTMwKQotI2RlZmluZSBLX0YxMjIgSyhLVF9GTiwxMzEpCisjZGVmaW5lIEtfRjExOSBLKEtUX0ZOLCAxMjgpCisjZGVmaW5lIEtfRjEyMCBLKEtUX0ZOLCAxMjkpCisjZGVmaW5lIEtfRjEyMSBLKEtUX0ZOLCAxMzApCisjZGVmaW5lIEtfRjEyMiBLKEtUX0ZOLCAxMzEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxMjMgSyhLVF9GTiwxMzIpCi0jZGVmaW5lIEtfRjEyNCBLKEtUX0ZOLDEzMykKLSNkZWZpbmUgS19GMTI1IEsoS1RfRk4sMTM0KQotI2RlZmluZSBLX0YxMjYgSyhLVF9GTiwxMzUpCisjZGVmaW5lIEtfRjEyMyBLKEtUX0ZOLCAxMzIpCisjZGVmaW5lIEtfRjEyNCBLKEtUX0ZOLCAxMzMpCisjZGVmaW5lIEtfRjEyNSBLKEtUX0ZOLCAxMzQpCisjZGVmaW5lIEtfRjEyNiBLKEtUX0ZOLCAxMzUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxMjcgSyhLVF9GTiwxMzYpCi0jZGVmaW5lIEtfRjEyOCBLKEtUX0ZOLDEzNykKLSNkZWZpbmUgS19GMTI5IEsoS1RfRk4sMTM4KQotI2RlZmluZSBLX0YxMzAgSyhLVF9GTiwxMzkpCisjZGVmaW5lIEtfRjEyNyBLKEtUX0ZOLCAxMzYpCisjZGVmaW5lIEtfRjEyOCBLKEtUX0ZOLCAxMzcpCisjZGVmaW5lIEtfRjEyOSBLKEtUX0ZOLCAxMzgpCisjZGVmaW5lIEtfRjEzMCBLKEtUX0ZOLCAxMzkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxMzEgSyhLVF9GTiwxNDApCi0jZGVmaW5lIEtfRjEzMiBLKEtUX0ZOLDE0MSkKLSNkZWZpbmUgS19GMTMzIEsoS1RfRk4sMTQyKQotI2RlZmluZSBLX0YxMzQgSyhLVF9GTiwxNDMpCisjZGVmaW5lIEtfRjEzMSBLKEtUX0ZOLCAxNDApCisjZGVmaW5lIEtfRjEzMiBLKEtUX0ZOLCAxNDEpCisjZGVmaW5lIEtfRjEzMyBLKEtUX0ZOLCAxNDIpCisjZGVmaW5lIEtfRjEzNCBLKEtUX0ZOLCAxNDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxMzUgSyhLVF9GTiwxNDQpCi0jZGVmaW5lIEtfRjEzNiBLKEtUX0ZOLDE0NSkKLSNkZWZpbmUgS19GMTM3IEsoS1RfRk4sMTQ2KQotI2RlZmluZSBLX0YxMzggSyhLVF9GTiwxNDcpCisjZGVmaW5lIEtfRjEzNSBLKEtUX0ZOLCAxNDQpCisjZGVmaW5lIEtfRjEzNiBLKEtUX0ZOLCAxNDUpCisjZGVmaW5lIEtfRjEzNyBLKEtUX0ZOLCAxNDYpCisjZGVmaW5lIEtfRjEzOCBLKEtUX0ZOLCAxNDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxMzkgSyhLVF9GTiwxNDgpCi0jZGVmaW5lIEtfRjE0MCBLKEtUX0ZOLDE0OSkKLSNkZWZpbmUgS19GMTQxIEsoS1RfRk4sMTUwKQotI2RlZmluZSBLX0YxNDIgSyhLVF9GTiwxNTEpCisjZGVmaW5lIEtfRjEzOSBLKEtUX0ZOLCAxNDgpCisjZGVmaW5lIEtfRjE0MCBLKEtUX0ZOLCAxNDkpCisjZGVmaW5lIEtfRjE0MSBLKEtUX0ZOLCAxNTApCisjZGVmaW5lIEtfRjE0MiBLKEtUX0ZOLCAxNTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxNDMgSyhLVF9GTiwxNTIpCi0jZGVmaW5lIEtfRjE0NCBLKEtUX0ZOLDE1MykKLSNkZWZpbmUgS19GMTQ1IEsoS1RfRk4sMTU0KQotI2RlZmluZSBLX0YxNDYgSyhLVF9GTiwxNTUpCisjZGVmaW5lIEtfRjE0MyBLKEtUX0ZOLCAxNTIpCisjZGVmaW5lIEtfRjE0NCBLKEtUX0ZOLCAxNTMpCisjZGVmaW5lIEtfRjE0NSBLKEtUX0ZOLCAxNTQpCisjZGVmaW5lIEtfRjE0NiBLKEtUX0ZOLCAxNTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxNDcgSyhLVF9GTiwxNTYpCi0jZGVmaW5lIEtfRjE0OCBLKEtUX0ZOLDE1NykKLSNkZWZpbmUgS19GMTQ5IEsoS1RfRk4sMTU4KQotI2RlZmluZSBLX0YxNTAgSyhLVF9GTiwxNTkpCisjZGVmaW5lIEtfRjE0NyBLKEtUX0ZOLCAxNTYpCisjZGVmaW5lIEtfRjE0OCBLKEtUX0ZOLCAxNTcpCisjZGVmaW5lIEtfRjE0OSBLKEtUX0ZOLCAxNTgpCisjZGVmaW5lIEtfRjE1MCBLKEtUX0ZOLCAxNTkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxNTEgSyhLVF9GTiwxNjApCi0jZGVmaW5lIEtfRjE1MiBLKEtUX0ZOLDE2MSkKLSNkZWZpbmUgS19GMTUzIEsoS1RfRk4sMTYyKQotI2RlZmluZSBLX0YxNTQgSyhLVF9GTiwxNjMpCisjZGVmaW5lIEtfRjE1MSBLKEtUX0ZOLCAxNjApCisjZGVmaW5lIEtfRjE1MiBLKEtUX0ZOLCAxNjEpCisjZGVmaW5lIEtfRjE1MyBLKEtUX0ZOLCAxNjIpCisjZGVmaW5lIEtfRjE1NCBLKEtUX0ZOLCAxNjMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxNTUgSyhLVF9GTiwxNjQpCi0jZGVmaW5lIEtfRjE1NiBLKEtUX0ZOLDE2NSkKLSNkZWZpbmUgS19GMTU3IEsoS1RfRk4sMTY2KQotI2RlZmluZSBLX0YxNTggSyhLVF9GTiwxNjcpCisjZGVmaW5lIEtfRjE1NSBLKEtUX0ZOLCAxNjQpCisjZGVmaW5lIEtfRjE1NiBLKEtUX0ZOLCAxNjUpCisjZGVmaW5lIEtfRjE1NyBLKEtUX0ZOLCAxNjYpCisjZGVmaW5lIEtfRjE1OCBLKEtUX0ZOLCAxNjcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxNTkgSyhLVF9GTiwxNjgpCi0jZGVmaW5lIEtfRjE2MCBLKEtUX0ZOLDE2OSkKLSNkZWZpbmUgS19GMTYxIEsoS1RfRk4sMTcwKQotI2RlZmluZSBLX0YxNjIgSyhLVF9GTiwxNzEpCisjZGVmaW5lIEtfRjE1OSBLKEtUX0ZOLCAxNjgpCisjZGVmaW5lIEtfRjE2MCBLKEtUX0ZOLCAxNjkpCisjZGVmaW5lIEtfRjE2MSBLKEtUX0ZOLCAxNzApCisjZGVmaW5lIEtfRjE2MiBLKEtUX0ZOLCAxNzEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxNjMgSyhLVF9GTiwxNzIpCi0jZGVmaW5lIEtfRjE2NCBLKEtUX0ZOLDE3MykKLSNkZWZpbmUgS19GMTY1IEsoS1RfRk4sMTc0KQotI2RlZmluZSBLX0YxNjYgSyhLVF9GTiwxNzUpCisjZGVmaW5lIEtfRjE2MyBLKEtUX0ZOLCAxNzIpCisjZGVmaW5lIEtfRjE2NCBLKEtUX0ZOLCAxNzMpCisjZGVmaW5lIEtfRjE2NSBLKEtUX0ZOLCAxNzQpCisjZGVmaW5lIEtfRjE2NiBLKEtUX0ZOLCAxNzUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxNjcgSyhLVF9GTiwxNzYpCi0jZGVmaW5lIEtfRjE2OCBLKEtUX0ZOLDE3NykKLSNkZWZpbmUgS19GMTY5IEsoS1RfRk4sMTc4KQotI2RlZmluZSBLX0YxNzAgSyhLVF9GTiwxNzkpCisjZGVmaW5lIEtfRjE2NyBLKEtUX0ZOLCAxNzYpCisjZGVmaW5lIEtfRjE2OCBLKEtUX0ZOLCAxNzcpCisjZGVmaW5lIEtfRjE2OSBLKEtUX0ZOLCAxNzgpCisjZGVmaW5lIEtfRjE3MCBLKEtUX0ZOLCAxNzkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxNzEgSyhLVF9GTiwxODApCi0jZGVmaW5lIEtfRjE3MiBLKEtUX0ZOLDE4MSkKLSNkZWZpbmUgS19GMTczIEsoS1RfRk4sMTgyKQotI2RlZmluZSBLX0YxNzQgSyhLVF9GTiwxODMpCisjZGVmaW5lIEtfRjE3MSBLKEtUX0ZOLCAxODApCisjZGVmaW5lIEtfRjE3MiBLKEtUX0ZOLCAxODEpCisjZGVmaW5lIEtfRjE3MyBLKEtUX0ZOLCAxODIpCisjZGVmaW5lIEtfRjE3NCBLKEtUX0ZOLCAxODMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxNzUgSyhLVF9GTiwxODQpCi0jZGVmaW5lIEtfRjE3NiBLKEtUX0ZOLDE4NSkKLSNkZWZpbmUgS19GMTc3IEsoS1RfRk4sMTg2KQotI2RlZmluZSBLX0YxNzggSyhLVF9GTiwxODcpCisjZGVmaW5lIEtfRjE3NSBLKEtUX0ZOLCAxODQpCisjZGVmaW5lIEtfRjE3NiBLKEtUX0ZOLCAxODUpCisjZGVmaW5lIEtfRjE3NyBLKEtUX0ZOLCAxODYpCisjZGVmaW5lIEtfRjE3OCBLKEtUX0ZOLCAxODcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxNzkgSyhLVF9GTiwxODgpCi0jZGVmaW5lIEtfRjE4MCBLKEtUX0ZOLDE4OSkKLSNkZWZpbmUgS19GMTgxIEsoS1RfRk4sMTkwKQotI2RlZmluZSBLX0YxODIgSyhLVF9GTiwxOTEpCisjZGVmaW5lIEtfRjE3OSBLKEtUX0ZOLCAxODgpCisjZGVmaW5lIEtfRjE4MCBLKEtUX0ZOLCAxODkpCisjZGVmaW5lIEtfRjE4MSBLKEtUX0ZOLCAxOTApCisjZGVmaW5lIEtfRjE4MiBLKEtUX0ZOLCAxOTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxODMgSyhLVF9GTiwxOTIpCi0jZGVmaW5lIEtfRjE4NCBLKEtUX0ZOLDE5MykKLSNkZWZpbmUgS19GMTg1IEsoS1RfRk4sMTk0KQotI2RlZmluZSBLX0YxODYgSyhLVF9GTiwxOTUpCisjZGVmaW5lIEtfRjE4MyBLKEtUX0ZOLCAxOTIpCisjZGVmaW5lIEtfRjE4NCBLKEtUX0ZOLCAxOTMpCisjZGVmaW5lIEtfRjE4NSBLKEtUX0ZOLCAxOTQpCisjZGVmaW5lIEtfRjE4NiBLKEtUX0ZOLCAxOTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxODcgSyhLVF9GTiwxOTYpCi0jZGVmaW5lIEtfRjE4OCBLKEtUX0ZOLDE5NykKLSNkZWZpbmUgS19GMTg5IEsoS1RfRk4sMTk4KQotI2RlZmluZSBLX0YxOTAgSyhLVF9GTiwxOTkpCisjZGVmaW5lIEtfRjE4NyBLKEtUX0ZOLCAxOTYpCisjZGVmaW5lIEtfRjE4OCBLKEtUX0ZOLCAxOTcpCisjZGVmaW5lIEtfRjE4OSBLKEtUX0ZOLCAxOTgpCisjZGVmaW5lIEtfRjE5MCBLKEtUX0ZOLCAxOTkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxOTEgSyhLVF9GTiwyMDApCi0jZGVmaW5lIEtfRjE5MiBLKEtUX0ZOLDIwMSkKLSNkZWZpbmUgS19GMTkzIEsoS1RfRk4sMjAyKQotI2RlZmluZSBLX0YxOTQgSyhLVF9GTiwyMDMpCisjZGVmaW5lIEtfRjE5MSBLKEtUX0ZOLCAyMDApCisjZGVmaW5lIEtfRjE5MiBLKEtUX0ZOLCAyMDEpCisjZGVmaW5lIEtfRjE5MyBLKEtUX0ZOLCAyMDIpCisjZGVmaW5lIEtfRjE5NCBLKEtUX0ZOLCAyMDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxOTUgSyhLVF9GTiwyMDQpCi0jZGVmaW5lIEtfRjE5NiBLKEtUX0ZOLDIwNSkKLSNkZWZpbmUgS19GMTk3IEsoS1RfRk4sMjA2KQotI2RlZmluZSBLX0YxOTggSyhLVF9GTiwyMDcpCisjZGVmaW5lIEtfRjE5NSBLKEtUX0ZOLCAyMDQpCisjZGVmaW5lIEtfRjE5NiBLKEtUX0ZOLCAyMDUpCisjZGVmaW5lIEtfRjE5NyBLKEtUX0ZOLCAyMDYpCisjZGVmaW5lIEtfRjE5OCBLKEtUX0ZOLCAyMDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YxOTkgSyhLVF9GTiwyMDgpCi0jZGVmaW5lIEtfRjIwMCBLKEtUX0ZOLDIwOSkKLSNkZWZpbmUgS19GMjAxIEsoS1RfRk4sMjEwKQotI2RlZmluZSBLX0YyMDIgSyhLVF9GTiwyMTEpCisjZGVmaW5lIEtfRjE5OSBLKEtUX0ZOLCAyMDgpCisjZGVmaW5lIEtfRjIwMCBLKEtUX0ZOLCAyMDkpCisjZGVmaW5lIEtfRjIwMSBLKEtUX0ZOLCAyMTApCisjZGVmaW5lIEtfRjIwMiBLKEtUX0ZOLCAyMTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YyMDMgSyhLVF9GTiwyMTIpCi0jZGVmaW5lIEtfRjIwNCBLKEtUX0ZOLDIxMykKLSNkZWZpbmUgS19GMjA1IEsoS1RfRk4sMjE0KQotI2RlZmluZSBLX0YyMDYgSyhLVF9GTiwyMTUpCisjZGVmaW5lIEtfRjIwMyBLKEtUX0ZOLCAyMTIpCisjZGVmaW5lIEtfRjIwNCBLKEtUX0ZOLCAyMTMpCisjZGVmaW5lIEtfRjIwNSBLKEtUX0ZOLCAyMTQpCisjZGVmaW5lIEtfRjIwNiBLKEtUX0ZOLCAyMTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YyMDcgSyhLVF9GTiwyMTYpCi0jZGVmaW5lIEtfRjIwOCBLKEtUX0ZOLDIxNykKLSNkZWZpbmUgS19GMjA5IEsoS1RfRk4sMjE4KQotI2RlZmluZSBLX0YyMTAgSyhLVF9GTiwyMTkpCisjZGVmaW5lIEtfRjIwNyBLKEtUX0ZOLCAyMTYpCisjZGVmaW5lIEtfRjIwOCBLKEtUX0ZOLCAyMTcpCisjZGVmaW5lIEtfRjIwOSBLKEtUX0ZOLCAyMTgpCisjZGVmaW5lIEtfRjIxMCBLKEtUX0ZOLCAyMTkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YyMTEgSyhLVF9GTiwyMjApCi0jZGVmaW5lIEtfRjIxMiBLKEtUX0ZOLDIyMSkKLSNkZWZpbmUgS19GMjEzIEsoS1RfRk4sMjIyKQotI2RlZmluZSBLX0YyMTQgSyhLVF9GTiwyMjMpCisjZGVmaW5lIEtfRjIxMSBLKEtUX0ZOLCAyMjApCisjZGVmaW5lIEtfRjIxMiBLKEtUX0ZOLCAyMjEpCisjZGVmaW5lIEtfRjIxMyBLKEtUX0ZOLCAyMjIpCisjZGVmaW5lIEtfRjIxNCBLKEtUX0ZOLCAyMjMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YyMTUgSyhLVF9GTiwyMjQpCi0jZGVmaW5lIEtfRjIxNiBLKEtUX0ZOLDIyNSkKLSNkZWZpbmUgS19GMjE3IEsoS1RfRk4sMjI2KQotI2RlZmluZSBLX0YyMTggSyhLVF9GTiwyMjcpCisjZGVmaW5lIEtfRjIxNSBLKEtUX0ZOLCAyMjQpCisjZGVmaW5lIEtfRjIxNiBLKEtUX0ZOLCAyMjUpCisjZGVmaW5lIEtfRjIxNyBLKEtUX0ZOLCAyMjYpCisjZGVmaW5lIEtfRjIxOCBLKEtUX0ZOLCAyMjcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YyMTkgSyhLVF9GTiwyMjgpCi0jZGVmaW5lIEtfRjIyMCBLKEtUX0ZOLDIyOSkKLSNkZWZpbmUgS19GMjIxIEsoS1RfRk4sMjMwKQotI2RlZmluZSBLX0YyMjIgSyhLVF9GTiwyMzEpCisjZGVmaW5lIEtfRjIxOSBLKEtUX0ZOLCAyMjgpCisjZGVmaW5lIEtfRjIyMCBLKEtUX0ZOLCAyMjkpCisjZGVmaW5lIEtfRjIyMSBLKEtUX0ZOLCAyMzApCisjZGVmaW5lIEtfRjIyMiBLKEtUX0ZOLCAyMzEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YyMjMgSyhLVF9GTiwyMzIpCi0jZGVmaW5lIEtfRjIyNCBLKEtUX0ZOLDIzMykKLSNkZWZpbmUgS19GMjI1IEsoS1RfRk4sMjM0KQotI2RlZmluZSBLX0YyMjYgSyhLVF9GTiwyMzUpCisjZGVmaW5lIEtfRjIyMyBLKEtUX0ZOLCAyMzIpCisjZGVmaW5lIEtfRjIyNCBLKEtUX0ZOLCAyMzMpCisjZGVmaW5lIEtfRjIyNSBLKEtUX0ZOLCAyMzQpCisjZGVmaW5lIEtfRjIyNiBLKEtUX0ZOLCAyMzUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YyMjcgSyhLVF9GTiwyMzYpCi0jZGVmaW5lIEtfRjIyOCBLKEtUX0ZOLDIzNykKLSNkZWZpbmUgS19GMjI5IEsoS1RfRk4sMjM4KQotI2RlZmluZSBLX0YyMzAgSyhLVF9GTiwyMzkpCisjZGVmaW5lIEtfRjIyNyBLKEtUX0ZOLCAyMzYpCisjZGVmaW5lIEtfRjIyOCBLKEtUX0ZOLCAyMzcpCisjZGVmaW5lIEtfRjIyOSBLKEtUX0ZOLCAyMzgpCisjZGVmaW5lIEtfRjIzMCBLKEtUX0ZOLCAyMzkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YyMzEgSyhLVF9GTiwyNDApCi0jZGVmaW5lIEtfRjIzMiBLKEtUX0ZOLDI0MSkKLSNkZWZpbmUgS19GMjMzIEsoS1RfRk4sMjQyKQotI2RlZmluZSBLX0YyMzQgSyhLVF9GTiwyNDMpCisjZGVmaW5lIEtfRjIzMSBLKEtUX0ZOLCAyNDApCisjZGVmaW5lIEtfRjIzMiBLKEtUX0ZOLCAyNDEpCisjZGVmaW5lIEtfRjIzMyBLKEtUX0ZOLCAyNDIpCisjZGVmaW5lIEtfRjIzNCBLKEtUX0ZOLCAyNDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YyMzUgSyhLVF9GTiwyNDQpCi0jZGVmaW5lIEtfRjIzNiBLKEtUX0ZOLDI0NSkKLSNkZWZpbmUgS19GMjM3IEsoS1RfRk4sMjQ2KQotI2RlZmluZSBLX0YyMzggSyhLVF9GTiwyNDcpCisjZGVmaW5lIEtfRjIzNSBLKEtUX0ZOLCAyNDQpCisjZGVmaW5lIEtfRjIzNiBLKEtUX0ZOLCAyNDUpCisjZGVmaW5lIEtfRjIzNyBLKEtUX0ZOLCAyNDYpCisjZGVmaW5lIEtfRjIzOCBLKEtUX0ZOLCAyNDcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YyMzkgSyhLVF9GTiwyNDgpCi0jZGVmaW5lIEtfRjI0MCBLKEtUX0ZOLDI0OSkKLSNkZWZpbmUgS19GMjQxIEsoS1RfRk4sMjUwKQotI2RlZmluZSBLX0YyNDIgSyhLVF9GTiwyNTEpCisjZGVmaW5lIEtfRjIzOSBLKEtUX0ZOLCAyNDgpCisjZGVmaW5lIEtfRjI0MCBLKEtUX0ZOLCAyNDkpCisjZGVmaW5lIEtfRjI0MSBLKEtUX0ZOLCAyNTApCisjZGVmaW5lIEtfRjI0MiBLKEtUX0ZOLCAyNTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0YyNDMgSyhLVF9GTiwyNTIpCi0jZGVmaW5lIEtfRjI0NCBLKEtUX0ZOLDI1MykKLSNkZWZpbmUgS19GMjQ1IEsoS1RfRk4sMjU0KQotI2RlZmluZSBLX1VORE8gSyhLVF9GTiwyNTUpCisjZGVmaW5lIEtfRjI0MyBLKEtUX0ZOLCAyNTIpCisjZGVmaW5lIEtfRjI0NCBLKEtUX0ZOLCAyNTMpCisjZGVmaW5lIEtfRjI0NSBLKEtUX0ZOLCAyNTQpCisjZGVmaW5lIEtfVU5ETyBLKEtUX0ZOLCAyNTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0hPTEUgSyhLVF9TUEVDLDApCi0jZGVmaW5lIEtfRU5URVIgSyhLVF9TUEVDLDEpCi0jZGVmaW5lIEtfU0hfUkVHUyBLKEtUX1NQRUMsMikKLSNkZWZpbmUgS19TSF9NRU0gSyhLVF9TUEVDLDMpCisjZGVmaW5lIEtfSE9MRSBLKEtUX1NQRUMsIDApCisjZGVmaW5lIEtfRU5URVIgSyhLVF9TUEVDLCAxKQorI2RlZmluZSBLX1NIX1JFR1MgSyhLVF9TUEVDLCAyKQorI2RlZmluZSBLX1NIX01FTSBLKEtUX1NQRUMsIDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX1NIX1NUQVQgSyhLVF9TUEVDLDQpCi0jZGVmaW5lIEtfQlJFQUsgSyhLVF9TUEVDLDUpCi0jZGVmaW5lIEtfQ09OUyBLKEtUX1NQRUMsNikKLSNkZWZpbmUgS19DQVBTIEsoS1RfU1BFQyw3KQorI2RlZmluZSBLX1NIX1NUQVQgSyhLVF9TUEVDLCA0KQorI2RlZmluZSBLX0JSRUFLIEsoS1RfU1BFQywgNSkKKyNkZWZpbmUgS19DT05TIEsoS1RfU1BFQywgNikKKyNkZWZpbmUgS19DQVBTIEsoS1RfU1BFQywgNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfTlVNIEsoS1RfU1BFQyw4KQotI2RlZmluZSBLX0hPTEQgSyhLVF9TUEVDLDkpCi0jZGVmaW5lIEtfU0NST0xMRk9SVyBLKEtUX1NQRUMsMTApCi0jZGVmaW5lIEtfU0NST0xMQkFDSyBLKEtUX1NQRUMsMTEpCisjZGVmaW5lIEtfTlVNIEsoS1RfU1BFQywgOCkKKyNkZWZpbmUgS19IT0xEIEsoS1RfU1BFQywgOSkKKyNkZWZpbmUgS19TQ1JPTExGT1JXIEsoS1RfU1BFQywgMTApCisjZGVmaW5lIEtfU0NST0xMQkFDSyBLKEtUX1NQRUMsIDExKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19CT09UIEsoS1RfU1BFQywxMikKLSNkZWZpbmUgS19DQVBTT04gSyhLVF9TUEVDLDEzKQotI2RlZmluZSBLX0NPTVBPU0UgSyhLVF9TUEVDLDE0KQotI2RlZmluZSBLX1NBSyBLKEtUX1NQRUMsMTUpCisjZGVmaW5lIEtfQk9PVCBLKEtUX1NQRUMsIDEyKQorI2RlZmluZSBLX0NBUFNPTiBLKEtUX1NQRUMsIDEzKQorI2RlZmluZSBLX0NPTVBPU0UgSyhLVF9TUEVDLCAxNCkKKyNkZWZpbmUgS19TQUsgSyhLVF9TUEVDLCAxNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfREVDUkNPTlNPTEUgSyhLVF9TUEVDLDE2KQotI2RlZmluZSBLX0lOQ1JDT05TT0xFIEsoS1RfU1BFQywxNykKLSNkZWZpbmUgS19TUEFXTkNPTlNPTEUgSyhLVF9TUEVDLDE4KQotI2RlZmluZSBLX0JBUkVOVU1MT0NLIEsoS1RfU1BFQywxOSkKKyNkZWZpbmUgS19ERUNSQ09OU09MRSBLKEtUX1NQRUMsIDE2KQorI2RlZmluZSBLX0lOQ1JDT05TT0xFIEsoS1RfU1BFQywgMTcpCisjZGVmaW5lIEtfU1BBV05DT05TT0xFIEsoS1RfU1BFQywgMTgpCisjZGVmaW5lIEtfQkFSRU5VTUxPQ0sgSyhLVF9TUEVDLCAxOSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfQUxMT0NBVEVEIEsoS1RfU1BFQywxMjYpCi0jZGVmaW5lIEtfTk9TVUNITUFQIEsoS1RfU1BFQywxMjcpCi0jZGVmaW5lIEtfUDAgSyhLVF9QQUQsMCkKLSNkZWZpbmUgS19QMSBLKEtUX1BBRCwxKQorI2RlZmluZSBLX0FMTE9DQVRFRCBLKEtUX1NQRUMsIDEyNikKKyNkZWZpbmUgS19OT1NVQ0hNQVAgSyhLVF9TUEVDLCAxMjcpCisjZGVmaW5lIEtfUDAgSyhLVF9QQUQsIDApCisjZGVmaW5lIEtfUDEgSyhLVF9QQUQsIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX1AyIEsoS1RfUEFELDIpCi0jZGVmaW5lIEtfUDMgSyhLVF9QQUQsMykKLSNkZWZpbmUgS19QNCBLKEtUX1BBRCw0KQotI2RlZmluZSBLX1A1IEsoS1RfUEFELDUpCisjZGVmaW5lIEtfUDIgSyhLVF9QQUQsIDIpCisjZGVmaW5lIEtfUDMgSyhLVF9QQUQsIDMpCisjZGVmaW5lIEtfUDQgSyhLVF9QQUQsIDQpCisjZGVmaW5lIEtfUDUgSyhLVF9QQUQsIDUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX1A2IEsoS1RfUEFELDYpCi0jZGVmaW5lIEtfUDcgSyhLVF9QQUQsNykKLSNkZWZpbmUgS19QOCBLKEtUX1BBRCw4KQotI2RlZmluZSBLX1A5IEsoS1RfUEFELDkpCisjZGVmaW5lIEtfUDYgSyhLVF9QQUQsIDYpCisjZGVmaW5lIEtfUDcgSyhLVF9QQUQsIDcpCisjZGVmaW5lIEtfUDggSyhLVF9QQUQsIDgpCisjZGVmaW5lIEtfUDkgSyhLVF9QQUQsIDkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX1BQTFVTIEsoS1RfUEFELDEwKQotI2RlZmluZSBLX1BNSU5VUyBLKEtUX1BBRCwxMSkKLSNkZWZpbmUgS19QU1RBUiBLKEtUX1BBRCwxMikKLSNkZWZpbmUgS19QU0xBU0ggSyhLVF9QQUQsMTMpCisjZGVmaW5lIEtfUFBMVVMgSyhLVF9QQUQsIDEwKQorI2RlZmluZSBLX1BNSU5VUyBLKEtUX1BBRCwgMTEpCisjZGVmaW5lIEtfUFNUQVIgSyhLVF9QQUQsIDEyKQorI2RlZmluZSBLX1BTTEFTSCBLKEtUX1BBRCwgMTMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX1BFTlRFUiBLKEtUX1BBRCwxNCkKLSNkZWZpbmUgS19QQ09NTUEgSyhLVF9QQUQsMTUpCi0jZGVmaW5lIEtfUERPVCBLKEtUX1BBRCwxNikKLSNkZWZpbmUgS19QUExVU01JTlVTIEsoS1RfUEFELDE3KQorI2RlZmluZSBLX1BFTlRFUiBLKEtUX1BBRCwgMTQpCisjZGVmaW5lIEtfUENPTU1BIEsoS1RfUEFELCAxNSkKKyNkZWZpbmUgS19QRE9UIEsoS1RfUEFELCAxNikKKyNkZWZpbmUgS19QUExVU01JTlVTIEsoS1RfUEFELCAxNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfUFBBUkVOTCBLKEtUX1BBRCwxOCkKLSNkZWZpbmUgS19QUEFSRU5SIEsoS1RfUEFELDE5KQorI2RlZmluZSBLX1BQQVJFTkwgSyhLVF9QQUQsIDE4KQorI2RlZmluZSBLX1BQQVJFTlIgSyhLVF9QQUQsIDE5KQogI2RlZmluZSBOUl9QQUQgMjAKLSNkZWZpbmUgS19ER1JBVkUgSyhLVF9ERUFELDApCisjZGVmaW5lIEtfREdSQVZFIEsoS1RfREVBRCwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfREFDVVRFIEsoS1RfREVBRCwxKQotI2RlZmluZSBLX0RDSVJDTSBLKEtUX0RFQUQsMikKLSNkZWZpbmUgS19EVElMREUgSyhLVF9ERUFELDMpCi0jZGVmaW5lIEtfRERJRVJFIEsoS1RfREVBRCw0KQorI2RlZmluZSBLX0RBQ1VURSBLKEtUX0RFQUQsIDEpCisjZGVmaW5lIEtfRENJUkNNIEsoS1RfREVBRCwgMikKKyNkZWZpbmUgS19EVElMREUgSyhLVF9ERUFELCAzKQorI2RlZmluZSBLX0RESUVSRSBLKEtUX0RFQUQsIDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0RDRURJTCBLKEtUX0RFQUQsNSkKKyNkZWZpbmUgS19EQ0VESUwgSyhLVF9ERUFELCA1KQogI2RlZmluZSBOUl9ERUFEIDYKLSNkZWZpbmUgS19ET1dOIEsoS1RfQ1VSLDApCi0jZGVmaW5lIEtfTEVGVCBLKEtUX0NVUiwxKQorI2RlZmluZSBLX0RPV04gSyhLVF9DVVIsIDApCisjZGVmaW5lIEtfTEVGVCBLKEtUX0NVUiwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfUklHSFQgSyhLVF9DVVIsMikKLSNkZWZpbmUgS19VUCBLKEtUX0NVUiwzKQotI2RlZmluZSBLX1NISUZUIEsoS1RfU0hJRlQsS0dfU0hJRlQpCi0jZGVmaW5lIEtfQ1RSTCBLKEtUX1NISUZULEtHX0NUUkwpCisjZGVmaW5lIEtfUklHSFQgSyhLVF9DVVIsIDIpCisjZGVmaW5lIEtfVVAgSyhLVF9DVVIsIDMpCisjZGVmaW5lIEtfU0hJRlQgSyhLVF9TSElGVCwgS0dfU0hJRlQpCisjZGVmaW5lIEtfQ1RSTCBLKEtUX1NISUZULCBLR19DVFJMKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19BTFQgSyhLVF9TSElGVCxLR19BTFQpCi0jZGVmaW5lIEtfQUxUR1IgSyhLVF9TSElGVCxLR19BTFRHUikKLSNkZWZpbmUgS19TSElGVEwgSyhLVF9TSElGVCxLR19TSElGVEwpCi0jZGVmaW5lIEtfU0hJRlRSIEsoS1RfU0hJRlQsS0dfU0hJRlRSKQorI2RlZmluZSBLX0FMVCBLKEtUX1NISUZULCBLR19BTFQpCisjZGVmaW5lIEtfQUxUR1IgSyhLVF9TSElGVCwgS0dfQUxUR1IpCisjZGVmaW5lIEtfU0hJRlRMIEsoS1RfU0hJRlQsIEtHX1NISUZUTCkKKyNkZWZpbmUgS19TSElGVFIgSyhLVF9TSElGVCwgS0dfU0hJRlRSKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19DVFJMTCBLKEtUX1NISUZULEtHX0NUUkxMKQotI2RlZmluZSBLX0NUUkxSIEsoS1RfU0hJRlQsS0dfQ1RSTFIpCi0jZGVmaW5lIEtfQ0FQU1NISUZUIEsoS1RfU0hJRlQsS0dfQ0FQU1NISUZUKQotI2RlZmluZSBLX0FTQzAgSyhLVF9BU0NJSSwwKQorI2RlZmluZSBLX0NUUkxMIEsoS1RfU0hJRlQsIEtHX0NUUkxMKQorI2RlZmluZSBLX0NUUkxSIEsoS1RfU0hJRlQsIEtHX0NUUkxSKQorI2RlZmluZSBLX0NBUFNTSElGVCBLKEtUX1NISUZULCBLR19DQVBTU0hJRlQpCisjZGVmaW5lIEtfQVNDMCBLKEtUX0FTQ0lJLCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19BU0MxIEsoS1RfQVNDSUksMSkKLSNkZWZpbmUgS19BU0MyIEsoS1RfQVNDSUksMikKLSNkZWZpbmUgS19BU0MzIEsoS1RfQVNDSUksMykKLSNkZWZpbmUgS19BU0M0IEsoS1RfQVNDSUksNCkKKyNkZWZpbmUgS19BU0MxIEsoS1RfQVNDSUksIDEpCisjZGVmaW5lIEtfQVNDMiBLKEtUX0FTQ0lJLCAyKQorI2RlZmluZSBLX0FTQzMgSyhLVF9BU0NJSSwgMykKKyNkZWZpbmUgS19BU0M0IEsoS1RfQVNDSUksIDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0FTQzUgSyhLVF9BU0NJSSw1KQotI2RlZmluZSBLX0FTQzYgSyhLVF9BU0NJSSw2KQotI2RlZmluZSBLX0FTQzcgSyhLVF9BU0NJSSw3KQotI2RlZmluZSBLX0FTQzggSyhLVF9BU0NJSSw4KQorI2RlZmluZSBLX0FTQzUgSyhLVF9BU0NJSSwgNSkKKyNkZWZpbmUgS19BU0M2IEsoS1RfQVNDSUksIDYpCisjZGVmaW5lIEtfQVNDNyBLKEtUX0FTQ0lJLCA3KQorI2RlZmluZSBLX0FTQzggSyhLVF9BU0NJSSwgOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfQVNDOSBLKEtUX0FTQ0lJLDkpCi0jZGVmaW5lIEtfSEVYMCBLKEtUX0FTQ0lJLDEwKQotI2RlZmluZSBLX0hFWDEgSyhLVF9BU0NJSSwxMSkKLSNkZWZpbmUgS19IRVgyIEsoS1RfQVNDSUksMTIpCisjZGVmaW5lIEtfQVNDOSBLKEtUX0FTQ0lJLCA5KQorI2RlZmluZSBLX0hFWDAgSyhLVF9BU0NJSSwgMTApCisjZGVmaW5lIEtfSEVYMSBLKEtUX0FTQ0lJLCAxMSkKKyNkZWZpbmUgS19IRVgyIEsoS1RfQVNDSUksIDEyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19IRVgzIEsoS1RfQVNDSUksMTMpCi0jZGVmaW5lIEtfSEVYNCBLKEtUX0FTQ0lJLDE0KQotI2RlZmluZSBLX0hFWDUgSyhLVF9BU0NJSSwxNSkKLSNkZWZpbmUgS19IRVg2IEsoS1RfQVNDSUksMTYpCisjZGVmaW5lIEtfSEVYMyBLKEtUX0FTQ0lJLCAxMykKKyNkZWZpbmUgS19IRVg0IEsoS1RfQVNDSUksIDE0KQorI2RlZmluZSBLX0hFWDUgSyhLVF9BU0NJSSwgMTUpCisjZGVmaW5lIEtfSEVYNiBLKEtUX0FTQ0lJLCAxNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfSEVYNyBLKEtUX0FTQ0lJLDE3KQotI2RlZmluZSBLX0hFWDggSyhLVF9BU0NJSSwxOCkKLSNkZWZpbmUgS19IRVg5IEsoS1RfQVNDSUksMTkpCi0jZGVmaW5lIEtfSEVYYSBLKEtUX0FTQ0lJLDIwKQorI2RlZmluZSBLX0hFWDcgSyhLVF9BU0NJSSwgMTcpCisjZGVmaW5lIEtfSEVYOCBLKEtUX0FTQ0lJLCAxOCkKKyNkZWZpbmUgS19IRVg5IEsoS1RfQVNDSUksIDE5KQorI2RlZmluZSBLX0hFWGEgSyhLVF9BU0NJSSwgMjApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0hFWGIgSyhLVF9BU0NJSSwyMSkKLSNkZWZpbmUgS19IRVhjIEsoS1RfQVNDSUksMjIpCi0jZGVmaW5lIEtfSEVYZCBLKEtUX0FTQ0lJLDIzKQotI2RlZmluZSBLX0hFWGUgSyhLVF9BU0NJSSwyNCkKKyNkZWZpbmUgS19IRVhiIEsoS1RfQVNDSUksIDIxKQorI2RlZmluZSBLX0hFWGMgSyhLVF9BU0NJSSwgMjIpCisjZGVmaW5lIEtfSEVYZCBLKEtUX0FTQ0lJLCAyMykKKyNkZWZpbmUgS19IRVhlIEsoS1RfQVNDSUksIDI0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19IRVhmIEsoS1RfQVNDSUksMjUpCisjZGVmaW5lIEtfSEVYZiBLKEtUX0FTQ0lJLCAyNSkKICNkZWZpbmUgTlJfQVNDSUkgMjYKLSNkZWZpbmUgS19TSElGVExPQ0sgSyhLVF9MT0NLLEtHX1NISUZUKQotI2RlZmluZSBLX0NUUkxMT0NLIEsoS1RfTE9DSyxLR19DVFJMKQorI2RlZmluZSBLX1NISUZUTE9DSyBLKEtUX0xPQ0ssIEtHX1NISUZUKQorI2RlZmluZSBLX0NUUkxMT0NLIEsoS1RfTE9DSywgS0dfQ1RSTCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfQUxUTE9DSyBLKEtUX0xPQ0ssS0dfQUxUKQotI2RlZmluZSBLX0FMVEdSTE9DSyBLKEtUX0xPQ0ssS0dfQUxUR1IpCi0jZGVmaW5lIEtfU0hJRlRMTE9DSyBLKEtUX0xPQ0ssS0dfU0hJRlRMKQotI2RlZmluZSBLX1NISUZUUkxPQ0sgSyhLVF9MT0NLLEtHX1NISUZUUikKKyNkZWZpbmUgS19BTFRMT0NLIEsoS1RfTE9DSywgS0dfQUxUKQorI2RlZmluZSBLX0FMVEdSTE9DSyBLKEtUX0xPQ0ssIEtHX0FMVEdSKQorI2RlZmluZSBLX1NISUZUTExPQ0sgSyhLVF9MT0NLLCBLR19TSElGVEwpCisjZGVmaW5lIEtfU0hJRlRSTE9DSyBLKEtUX0xPQ0ssIEtHX1NISUZUUikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtfQ1RSTExMT0NLIEsoS1RfTE9DSyxLR19DVFJMTCkKLSNkZWZpbmUgS19DVFJMUkxPQ0sgSyhLVF9MT0NLLEtHX0NUUkxSKQotI2RlZmluZSBLX0NBUFNTSElGVExPQ0sgSyhLVF9MT0NLLEtHX0NBUFNTSElGVCkKLSNkZWZpbmUgS19TSElGVF9TTE9DSyBLKEtUX1NMT0NLLEtHX1NISUZUKQorI2RlZmluZSBLX0NUUkxMTE9DSyBLKEtUX0xPQ0ssIEtHX0NUUkxMKQorI2RlZmluZSBLX0NUUkxSTE9DSyBLKEtUX0xPQ0ssIEtHX0NUUkxSKQorI2RlZmluZSBLX0NBUFNTSElGVExPQ0sgSyhLVF9MT0NLLCBLR19DQVBTU0hJRlQpCisjZGVmaW5lIEtfU0hJRlRfU0xPQ0sgSyhLVF9TTE9DSywgS0dfU0hJRlQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLX0NUUkxfU0xPQ0sgSyhLVF9TTE9DSyxLR19DVFJMKQotI2RlZmluZSBLX0FMVF9TTE9DSyBLKEtUX1NMT0NLLEtHX0FMVCkKLSNkZWZpbmUgS19BTFRHUl9TTE9DSyBLKEtUX1NMT0NLLEtHX0FMVEdSKQotI2RlZmluZSBLX1NISUZUTF9TTE9DSyBLKEtUX1NMT0NLLEtHX1NISUZUTCkKKyNkZWZpbmUgS19DVFJMX1NMT0NLIEsoS1RfU0xPQ0ssIEtHX0NUUkwpCisjZGVmaW5lIEtfQUxUX1NMT0NLIEsoS1RfU0xPQ0ssIEtHX0FMVCkKKyNkZWZpbmUgS19BTFRHUl9TTE9DSyBLKEtUX1NMT0NLLCBLR19BTFRHUikKKyNkZWZpbmUgS19TSElGVExfU0xPQ0sgSyhLVF9TTE9DSywgS0dfU0hJRlRMKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS19TSElGVFJfU0xPQ0sgSyhLVF9TTE9DSyxLR19TSElGVFIpCi0jZGVmaW5lIEtfQ1RSTExfU0xPQ0sgSyhLVF9TTE9DSyxLR19DVFJMTCkKLSNkZWZpbmUgS19DVFJMUl9TTE9DSyBLKEtUX1NMT0NLLEtHX0NUUkxSKQotI2RlZmluZSBLX0NBUFNTSElGVF9TTE9DSyBLKEtUX1NMT0NLLEtHX0NBUFNTSElGVCkKKyNkZWZpbmUgS19TSElGVFJfU0xPQ0sgSyhLVF9TTE9DSywgS0dfU0hJRlRSKQorI2RlZmluZSBLX0NUUkxMX1NMT0NLIEsoS1RfU0xPQ0ssIEtHX0NUUkxMKQorI2RlZmluZSBLX0NUUkxSX1NMT0NLIEsoS1RfU0xPQ0ssIEtHX0NUUkxSKQorI2RlZmluZSBLX0NBUFNTSElGVF9TTE9DSyBLKEtUX1NMT0NLLCBLR19DQVBTU0hJRlQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOUl9MT0NLIDkKICNkZWZpbmUgS19CUkxfQkxBTksgSyhLVF9CUkwsIDApCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tleWNob3JkLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tleWNob3JkLmgKaW5kZXggZDEzMjYyYi4uNWZkMzkxMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXljaG9yZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva2V5Y2hvcmQuaApAQCAtMjIsMTAgKzIyLDEwIEBACiAjZGVmaW5lIEtFWUNIT1JEX1ZFUlNJT04gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpbnB1dF9rZXljaG9yZCB7Ci0gX191MTYgdmVyc2lvbjsKLSBfX3UxNiBpZDsKLSBfX3UxNiBjb3VudDsKKyAgX191MTYgdmVyc2lvbjsKKyAgX191MTYgaWQ7CisgIF9fdTE2IGNvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBrZXljb2Rlc1tdOworICBfX3UxNiBrZXljb2Rlc1tdOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXljdGwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva2V5Y3RsLmgKaW5kZXggOTQxZTBkNS4uMTUyY2E1OSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rZXljdGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2tleWN0bC5oCkBAIC0xOCwxNyArMTgsMTcgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfTElOVVhfS0VZQ1RMX0gKICNkZWZpbmUgX0xJTlVYX0tFWUNUTF9ICi0jZGVmaW5lIEtFWV9TUEVDX1RIUkVBRF9LRVlSSU5HIC0xCi0jZGVmaW5lIEtFWV9TUEVDX1BST0NFU1NfS0VZUklORyAtMgorI2RlZmluZSBLRVlfU1BFQ19USFJFQURfS0VZUklORyAtIDEKKyNkZWZpbmUgS0VZX1NQRUNfUFJPQ0VTU19LRVlSSU5HIC0gMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS0VZX1NQRUNfU0VTU0lPTl9LRVlSSU5HIC0zCi0jZGVmaW5lIEtFWV9TUEVDX1VTRVJfS0VZUklORyAtNAotI2RlZmluZSBLRVlfU1BFQ19VU0VSX1NFU1NJT05fS0VZUklORyAtNQotI2RlZmluZSBLRVlfU1BFQ19HUk9VUF9LRVlSSU5HIC02CisjZGVmaW5lIEtFWV9TUEVDX1NFU1NJT05fS0VZUklORyAtIDMKKyNkZWZpbmUgS0VZX1NQRUNfVVNFUl9LRVlSSU5HIC0gNAorI2RlZmluZSBLRVlfU1BFQ19VU0VSX1NFU1NJT05fS0VZUklORyAtIDUKKyNkZWZpbmUgS0VZX1NQRUNfR1JPVVBfS0VZUklORyAtIDYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtFWV9TUEVDX1JFUUtFWV9BVVRIX0tFWSAtNwotI2RlZmluZSBLRVlfU1BFQ19SRVFVRVNUT1JfS0VZUklORyAtOAotI2RlZmluZSBLRVlfUkVRS0VZX0RFRkxfTk9fQ0hBTkdFIC0xCisjZGVmaW5lIEtFWV9TUEVDX1JFUUtFWV9BVVRIX0tFWSAtIDcKKyNkZWZpbmUgS0VZX1NQRUNfUkVRVUVTVE9SX0tFWVJJTkcgLSA4CisjZGVmaW5lIEtFWV9SRVFLRVlfREVGTF9OT19DSEFOR0UgLSAxCiAjZGVmaW5lIEtFWV9SRVFLRVlfREVGTF9ERUZBVUxUIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtFWV9SRVFLRVlfREVGTF9USFJFQURfS0VZUklORyAxCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2t2bS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rdm0uaAppbmRleCBlNjRmOWI1Li44NzBmYTY2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2t2bS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgva3ZtLmgKQEAgLTY3LDc3ICs2Nyw3NyBAQAogI2RlZmluZSBLVk1fVFJDX1BQQ19JTlNUUiAoS1ZNX1RSQ19IQU5ETEVSICsgMHgxOSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX3VzZXJfdHJhY2Vfc2V0dXAgewotIF9fdTMyIGJ1Zl9zaXplOwotIF9fdTMyIGJ1Zl9ucjsKKyAgX191MzIgYnVmX3NpemU7CisgIF9fdTMyIGJ1Zl9ucjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBfX0tWTV9ERVBSRUNBVEVEX01BSU5fV18weDA2ICAgX0lPVyhLVk1JTywgMHgwNiwgc3RydWN0IGt2bV91c2VyX3RyYWNlX3NldHVwKQorI2RlZmluZSBfX0tWTV9ERVBSRUNBVEVEX01BSU5fV18weDA2IF9JT1coS1ZNSU8sIDB4MDYsIHN0cnVjdCBrdm1fdXNlcl90cmFjZV9zZXR1cCkKICNkZWZpbmUgX19LVk1fREVQUkVDQVRFRF9NQUlOXzB4MDcgX0lPKEtWTUlPLCAweDA3KQogI2RlZmluZSBfX0tWTV9ERVBSRUNBVEVEX01BSU5fMHgwOCBfSU8oS1ZNSU8sIDB4MDgpCiAjZGVmaW5lIF9fS1ZNX0RFUFJFQ0FURURfVk1fUl8weDcwIF9JT1IoS1ZNSU8sIDB4NzAsIHN0cnVjdCBrdm1fYXNzaWduZWRfaXJxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fYnJlYWtwb2ludCB7Ci0gX191MzIgZW5hYmxlZDsKLSBfX3UzMiBwYWRkaW5nOwotIF9fdTY0IGFkZHJlc3M7CisgIF9fdTMyIGVuYWJsZWQ7CisgIF9fdTMyIHBhZGRpbmc7CisgIF9fdTY0IGFkZHJlc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBrdm1fZGVidWdfZ3Vlc3QgewotIF9fdTMyIGVuYWJsZWQ7Ci0gX191MzIgcGFkOworICBfX3UzMiBlbmFibGVkOworICBfX3UzMiBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBrdm1fYnJlYWtwb2ludCBicmVha3BvaW50c1s0XTsKLSBfX3UzMiBzaW5nbGVzdGVwOworICBzdHJ1Y3Qga3ZtX2JyZWFrcG9pbnQgYnJlYWtwb2ludHNbNF07CisgIF9fdTMyIHNpbmdsZXN0ZXA7CiB9OwogI2RlZmluZSBfX0tWTV9ERVBSRUNBVEVEX1ZDUFVfV18weDg3IF9JT1coS1ZNSU8sIDB4ODcsIHN0cnVjdCBrdm1fZGVidWdfZ3Vlc3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9tZW1vcnlfcmVnaW9uIHsKLSBfX3UzMiBzbG90OwotIF9fdTMyIGZsYWdzOwotIF9fdTY0IGd1ZXN0X3BoeXNfYWRkcjsKKyAgX191MzIgc2xvdDsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTY0IGd1ZXN0X3BoeXNfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbWVtb3J5X3NpemU7CisgIF9fdTY0IG1lbW9yeV9zaXplOwogfTsKIHN0cnVjdCBrdm1fdXNlcnNwYWNlX21lbW9yeV9yZWdpb24gewotIF9fdTMyIHNsb3Q7CisgIF9fdTMyIHNsb3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIF9fdTY0IGd1ZXN0X3BoeXNfYWRkcjsKLSBfX3U2NCBtZW1vcnlfc2l6ZTsKLSBfX3U2NCB1c2Vyc3BhY2VfYWRkcjsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTY0IGd1ZXN0X3BoeXNfYWRkcjsKKyAgX191NjQgbWVtb3J5X3NpemU7CisgIF9fdTY0IHVzZXJzcGFjZV9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEtWTV9NRU1fTE9HX0RJUlRZX1BBR0VTICgxVUwgPDwgMCkKICNkZWZpbmUgS1ZNX01FTV9SRUFET05MWSAoMVVMIDw8IDEpCiBzdHJ1Y3Qga3ZtX2lycV9sZXZlbCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBfX3UzMiBpcnE7Ci0gX19zMzIgc3RhdHVzOwotIH07CisgIHVuaW9uIHsKKyAgICBfX3UzMiBpcnE7CisgICAgX19zMzIgc3RhdHVzOworICB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsZXZlbDsKKyAgX191MzIgbGV2ZWw7CiB9Owogc3RydWN0IGt2bV9pcnFjaGlwIHsKLSBfX3UzMiBjaGlwX2lkOworICBfX3UzMiBjaGlwX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwYWQ7Ci0gdW5pb24gewotIGNoYXIgZHVtbXlbNTEyXTsKKyAgX191MzIgcGFkOworICB1bmlvbiB7CisgICAgY2hhciBkdW1teVs1MTJdOwogI2lmZGVmIF9fS1ZNX0hBVkVfUElUCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBrdm1fcGljX3N0YXRlIHBpYzsKKyAgICBzdHJ1Y3Qga3ZtX3BpY19zdGF0ZSBwaWM7CiAjZW5kaWYKICNpZmRlZiBfX0tWTV9IQVZFX0lPQVBJQwotIHN0cnVjdCBrdm1faW9hcGljX3N0YXRlIGlvYXBpYzsKKyAgICBzdHJ1Y3Qga3ZtX2lvYXBpY19zdGF0ZSBpb2FwaWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCi0gfSBjaGlwOworICB9IGNoaXA7CiB9Owogc3RydWN0IGt2bV9waXRfY29uZmlnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7Ci0gX191MzIgcGFkWzE1XTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHBhZFsxNV07CiB9OwogI2RlZmluZSBLVk1fUElUX1NQRUFLRVJfRFVNTVkgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTE3MSw4NDQgKzE3MSw5NjMgQEAKICNkZWZpbmUgS1ZNX0VYSVRfUzM5MF9UU0NIIDIyCiAjZGVmaW5lIEtWTV9FWElUX0VQUiAyMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0VYSVRfU1lTVEVNX0VWRU5UIDI0CiAjZGVmaW5lIEtWTV9JTlRFUk5BTF9FUlJPUl9FTVVMQVRJT04gMQogI2RlZmluZSBLVk1fSU5URVJOQUxfRVJST1JfU0lNVUxfRVggMgogI2RlZmluZSBLVk1fSU5URVJOQUxfRVJST1JfREVMSVZFUllfRVYgMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fcnVuIHsKKyAgX191OCByZXF1ZXN0X2ludGVycnVwdF93aW5kb3c7CisgIF9fdTggcGFkZGluZzFbN107CisgIF9fdTMyIGV4aXRfcmVhc29uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlcXVlc3RfaW50ZXJydXB0X3dpbmRvdzsKLSBfX3U4IHBhZGRpbmcxWzddOwotIF9fdTMyIGV4aXRfcmVhc29uOwotIF9fdTggcmVhZHlfZm9yX2ludGVycnVwdF9pbmplY3Rpb247CisgIF9fdTggcmVhZHlfZm9yX2ludGVycnVwdF9pbmplY3Rpb247CisgIF9fdTggaWZfZmxhZzsKKyAgX191OCBwYWRkaW5nMlsyXTsKKyAgX191NjQgY3I4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGlmX2ZsYWc7Ci0gX191OCBwYWRkaW5nMlsyXTsKLSBfX3U2NCBjcjg7Ci0gX191NjQgYXBpY19iYXNlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgYXBpY19iYXNlOwogI2lmZGVmIF9fS1ZNX1MzOTAKLSBfX3U2NCBwc3dfbWFzazsKLSBfX3U2NCBwc3dfYWRkcjsKKyAgX191NjQgcHN3X21hc2s7CisgIF9fdTY0IHBzd19hZGRyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgorICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IGhhcmR3YXJlX2V4aXRfcmVhc29uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IHsKLSBfX3U2NCBoYXJkd2FyZV9leGl0X3JlYXNvbjsKLSB9IGh3OworICAgIH0gaHc7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IGhhcmR3YXJlX2VudHJ5X2ZhaWx1cmVfcmVhc29uOworICAgIH0gZmFpbF9lbnRyeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX3U2NCBoYXJkd2FyZV9lbnRyeV9mYWlsdXJlX3JlYXNvbjsKLSB9IGZhaWxfZW50cnk7Ci0gc3RydWN0IHsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MzIgZXhjZXB0aW9uOworICAgICAgX191MzIgZXJyb3JfY29kZTsKKyAgICB9IGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBleGNlcHRpb247Ci0gX191MzIgZXJyb3JfY29kZTsKLSB9IGV4OwotIHN0cnVjdCB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIHN0cnVjdCB7CiAjZGVmaW5lIEtWTV9FWElUX0lPX0lOIDAKICNkZWZpbmUgS1ZNX0VYSVRfSU9fT1VUIDEKLSBfX3U4IGRpcmVjdGlvbjsKLSBfX3U4IHNpemU7CisgICAgICBfX3U4IGRpcmVjdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcG9ydDsKLSBfX3UzMiBjb3VudDsKLSBfX3U2NCBkYXRhX29mZnNldDsKLSB9IGlvOworICAgICAgX191OCBzaXplOworICAgICAgX191MTYgcG9ydDsKKyAgICAgIF9fdTMyIGNvdW50OworICAgICAgX191NjQgZGF0YV9vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gc3RydWN0IGt2bV9kZWJ1Z19leGl0X2FyY2ggYXJjaDsKLSB9IGRlYnVnOwotIHN0cnVjdCB7CisgICAgfSBpbzsKKyAgICBzdHJ1Y3QgeworICAgICAgc3RydWN0IGt2bV9kZWJ1Z19leGl0X2FyY2ggYXJjaDsKKyAgICB9IGRlYnVnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBwaHlzX2FkZHI7Ci0gX191OCBkYXRhWzhdOwotIF9fdTMyIGxlbjsKLSBfX3U4IGlzX3dyaXRlOworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCBwaHlzX2FkZHI7CisgICAgICBfX3U4IGRhdGFbOF07CisgICAgICBfX3UzMiBsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gbW1pbzsKLSBzdHJ1Y3QgewotIF9fdTY0IG5yOwotIF9fdTY0IGFyZ3NbNl07CisgICAgICBfX3U4IGlzX3dyaXRlOworICAgIH0gbW1pbzsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgbnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJldDsKLSBfX3UzMiBsb25nbW9kZTsKLSBfX3UzMiBwYWQ7Ci0gfSBoeXBlcmNhbGw7CisgICAgICBfX3U2NCBhcmdzWzZdOworICAgICAgX191NjQgcmV0OworICAgICAgX191MzIgbG9uZ21vZGU7CisgICAgICBfX3UzMiBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX191NjQgcmlwOwotIF9fdTMyIGlzX3dyaXRlOwotIF9fdTMyIHBhZDsKKyAgICB9IGh5cGVyY2FsbDsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgcmlwOworICAgICAgX191MzIgaXNfd3JpdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gdHByX2FjY2VzczsKLSBzdHJ1Y3QgewotIF9fdTggaWNwdGNvZGU7Ci0gX191MTYgaXBhOworICAgICAgX191MzIgcGFkOworICAgIH0gdHByX2FjY2VzczsKKyAgICBzdHJ1Y3QgeworICAgICAgX191OCBpY3B0Y29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaXBiOwotIH0gczM5MF9zaWVpYzsKKyAgICAgIF9fdTE2IGlwYTsKKyAgICAgIF9fdTMyIGlwYjsKKyAgICB9IHMzOTBfc2llaWM7CiAjZGVmaW5lIEtWTV9TMzkwX1JFU0VUX1BPUiAxCi0jZGVmaW5lIEtWTV9TMzkwX1JFU0VUX0NMRUFSIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9TMzkwX1JFU0VUX0NMRUFSIDIKICNkZWZpbmUgS1ZNX1MzOTBfUkVTRVRfU1VCU1lTVEVNIDQKICNkZWZpbmUgS1ZNX1MzOTBfUkVTRVRfQ1BVX0lOSVQgOAogI2RlZmluZSBLVk1fUzM5MF9SRVNFVF9JUEwgMTYKLSBfX3U2NCBzMzkwX3Jlc2V0X2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fdTY0IHRyYW5zX2V4Y19jb2RlOwotIF9fdTMyIHBnbV9jb2RlOwotIH0gczM5MF91Y29udHJvbDsKKyAgICBfX3U2NCBzMzkwX3Jlc2V0X2ZsYWdzOworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCB0cmFuc19leGNfY29kZTsKKyAgICAgIF9fdTMyIHBnbV9jb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fdTMyIGRjcm47Ci0gX191MzIgZGF0YTsKLSBfX3U4IGlzX3dyaXRlOworICAgIH0gczM5MF91Y29udHJvbDsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MzIgZGNybjsKKyAgICAgIF9fdTMyIGRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZGNyOwotIHN0cnVjdCB7Ci0gX191MzIgc3ViZXJyb3I7Ci0gX191MzIgbmRhdGE7CisgICAgICBfX3U4IGlzX3dyaXRlOworICAgIH0gZGNyOworICAgIHN0cnVjdCB7CisgICAgICBfX3UzMiBzdWJlcnJvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZGF0YVsxNl07Ci0gfSBpbnRlcm5hbDsKLSBzdHJ1Y3QgewotIF9fdTY0IGdwcnNbMzJdOworICAgICAgX191MzIgbmRhdGE7CisgICAgICBfX3U2NCBkYXRhWzE2XTsKKyAgICB9IGludGVybmFsOworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gb3NpOwotIHN0cnVjdCB7Ci0gX191NjQgbnI7Ci0gX191NjQgcmV0OworICAgICAgX191NjQgZ3Byc1szMl07CisgICAgfSBvc2k7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IG5yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBhcmdzWzldOwotIH0gcGFwcl9oY2FsbDsKLSBzdHJ1Y3QgewotIF9fdTE2IHN1YmNoYW5uZWxfaWQ7CisgICAgICBfX3U2NCByZXQ7CisgICAgICBfX3U2NCBhcmdzWzldOworICAgIH0gcGFwcl9oY2FsbDsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzdWJjaGFubmVsX25yOwotIF9fdTMyIGlvX2ludF9wYXJtOwotIF9fdTMyIGlvX2ludF93b3JkOwotIF9fdTMyIGlwYjsKKyAgICAgIF9fdTE2IHN1YmNoYW5uZWxfaWQ7CisgICAgICBfX3UxNiBzdWJjaGFubmVsX25yOworICAgICAgX191MzIgaW9faW50X3Bhcm07CisgICAgICBfX3UzMiBpb19pbnRfd29yZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkZXF1ZXVlZDsKLSB9IHMzOTBfdHNjaDsKLSBzdHJ1Y3QgewotIF9fdTMyIGVwcjsKKyAgICAgIF9fdTMyIGlwYjsKKyAgICAgIF9fdTggZGVxdWV1ZWQ7CisgICAgfSBzMzkwX3RzY2g7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBlcHI7Ci0gY2hhciBwYWRkaW5nWzI1Nl07Ci0gfTsKLSBfX3U2NCBrdm1fdmFsaWRfcmVnczsKKyAgICAgIF9fdTMyIGVwcjsKKyAgICB9IGVwcjsKKyAgICBzdHJ1Y3QgeworI2RlZmluZSBLVk1fU1lTVEVNX0VWRU5UX1NIVVRET1dOIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQga3ZtX2RpcnR5X3JlZ3M7Ci0gdW5pb24gewotIHN0cnVjdCBrdm1fc3luY19yZWdzIHJlZ3M7Ci0gY2hhciBwYWRkaW5nWzEwMjRdOworI2RlZmluZSBLVk1fU1lTVEVNX0VWRU5UX1JFU0VUIDIKKyAgICAgIF9fdTMyIHR5cGU7CisgICAgICBfX3U2NCBmbGFnczsKKyAgICB9IHN5c3RlbV9ldmVudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBzOworICAgIGNoYXIgcGFkZGluZ1syNTZdOworICB9OworICBfX3U2NCBrdm1fdmFsaWRfcmVnczsKKyAgX191NjQga3ZtX2RpcnR5X3JlZ3M7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bmlvbiB7CisgICAgc3RydWN0IGt2bV9zeW5jX3JlZ3MgcmVnczsKKyAgICBjaGFyIHBhZGRpbmdbMTAyNF07CisgIH0gczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGt2bV9jb2FsZXNjZWRfbW1pb196b25lIHsKLSBfX3U2NCBhZGRyOworICBfX3U2NCBhZGRyOworICBfX3UzMiBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzaXplOwotIF9fdTMyIHBhZDsKKyAgX191MzIgcGFkOwogfTsKIHN0cnVjdCBrdm1fY29hbGVzY2VkX21taW8geworICBfX3U2NCBwaHlzX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHBoeXNfYWRkcjsKLSBfX3UzMiBsZW47Ci0gX191MzIgcGFkOwotIF9fdTggZGF0YVs4XTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGxlbjsKKyAgX191MzIgcGFkOworICBfX3U4IGRhdGFbOF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fY29hbGVzY2VkX21taW9fcmluZyB7Ci0gX191MzIgZmlyc3QsIGxhc3Q7Ci0gc3RydWN0IGt2bV9jb2FsZXNjZWRfbW1pbyBjb2FsZXNjZWRfbW1pb1swXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGZpcnN0LCBsYXN0OworICBzdHJ1Y3Qga3ZtX2NvYWxlc2NlZF9tbWlvIGNvYWxlc2NlZF9tbWlvWzBdOwogfTsKLSNkZWZpbmUgS1ZNX0NPQUxFU0NFRF9NTUlPX01BWCAgICgoUEFHRV9TSVpFIC0gc2l6ZW9mKHN0cnVjdCBrdm1fY29hbGVzY2VkX21taW9fcmluZykpIC8gICBzaXplb2Yoc3RydWN0IGt2bV9jb2FsZXNjZWRfbW1pbykpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fQ09BTEVTQ0VEX01NSU9fTUFYICgoUEFHRV9TSVpFIC0gc2l6ZW9mKHN0cnVjdCBrdm1fY29hbGVzY2VkX21taW9fcmluZykpIC8gc2l6ZW9mKHN0cnVjdCBrdm1fY29hbGVzY2VkX21taW8pKQogc3RydWN0IGt2bV90cmFuc2xhdGlvbiB7Ci0gX191NjQgbGluZWFyX2FkZHJlc3M7CisgIF9fdTY0IGxpbmVhcl9hZGRyZXNzOworICBfX3U2NCBwaHlzaWNhbF9hZGRyZXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBwaHlzaWNhbF9hZGRyZXNzOwotIF9fdTggdmFsaWQ7Ci0gX191OCB3cml0ZWFibGU7Ci0gX191OCB1c2VybW9kZTsKKyAgX191OCB2YWxpZDsKKyAgX191OCB3cml0ZWFibGU7CisgIF9fdTggdXNlcm1vZGU7CisgIF9fdTggcGFkWzVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBhZFs1XTsKIH07CiBzdHJ1Y3Qga3ZtX2ludGVycnVwdCB7Ci0gX191MzIgaXJxOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgaXJxOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX2RpcnR5X2xvZyB7Ci0gX191MzIgc2xvdDsKLSBfX3UzMiBwYWRkaW5nMTsKKyAgX191MzIgc2xvdDsKKyAgX191MzIgcGFkZGluZzE7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHZvaWQgX191c2VyICpkaXJ0eV9iaXRtYXA7Ci0gX191NjQgcGFkZGluZzI7Ci0gfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgdm9pZCBfX3VzZXIgKiBkaXJ0eV9iaXRtYXA7CisgICAgX191NjQgcGFkZGluZzI7CisgIH07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fc2lnbmFsX21hc2sgewotIF9fdTMyIGxlbjsKLSBfX3U4IHNpZ3NldFswXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGxlbjsKKyAgX191OCBzaWdzZXRbMF07CiB9Owotc3RydWN0IGt2bV90cHJfYWNjZXNzX2N0bCB7Ci0gX191MzIgZW5hYmxlZDsKLSBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbOF07CitzdHJ1Y3Qga3ZtX3Rwcl9hY2Nlc3NfY3RsIHsKKyAgX191MzIgZW5hYmxlZDsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHJlc2VydmVkWzhdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qga3ZtX3ZhcGljX2FkZHIgewotIF9fdTY0IHZhcGljX2FkZHI7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCB2YXBpY19hZGRyOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9NUF9TVEFURV9SVU5OQUJMRSAwCiAjZGVmaW5lIEtWTV9NUF9TVEFURV9VTklOSVRJQUxJWkVEIDEKICNkZWZpbmUgS1ZNX01QX1NUQVRFX0lOSVRfUkVDRUlWRUQgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX01QX1NUQVRFX0hBTFRFRCAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fTVBfU1RBVEVfU0lQSV9SRUNFSVZFRCA0CisjZGVmaW5lIEtWTV9NUF9TVEFURV9TVE9QUEVEIDUKKyNkZWZpbmUgS1ZNX01QX1NUQVRFX0NIRUNLX1NUT1AgNgorI2RlZmluZSBLVk1fTVBfU1RBVEVfT1BFUkFUSU5HIDcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9NUF9TVEFURV9MT0FEIDgKIHN0cnVjdCBrdm1fbXBfc3RhdGUgewotIF9fdTMyIG1wX3N0YXRlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgbXBfc3RhdGU7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fczM5MF9wc3cgewotIF9fdTY0IG1hc2s7Ci0gX191NjQgYWRkcjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IG1hc2s7CisgIF9fdTY0IGFkZHI7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1MzOTBfU0lHUF9TVE9QIDB4ZmZmZTAwMDB1CiAjZGVmaW5lIEtWTV9TMzkwX1BST0dSQU1fSU5UIDB4ZmZmZTAwMDF1CiAjZGVmaW5lIEtWTV9TMzkwX1NJR1BfU0VUX1BSRUZJWCAweGZmZmUwMDAydQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1MzOTBfUkVTVEFSVCAweGZmZmUwMDAzdQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX1MzOTBfSU5UX1BGQVVMVF9JTklUIDB4ZmZmZTAwMDR1CisjZGVmaW5lIEtWTV9TMzkwX0lOVF9QRkFVTFRfRE9ORSAweGZmZmUwMDA1dQogI2RlZmluZSBLVk1fUzM5MF9NQ0hLIDB4ZmZmZTEwMDB1CisjZGVmaW5lIEtWTV9TMzkwX0lOVF9DTE9DS19DT01QIDB4ZmZmZjEwMDR1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fUzM5MF9JTlRfQ1BVX1RJTUVSIDB4ZmZmZjEwMDV1CiAjZGVmaW5lIEtWTV9TMzkwX0lOVF9WSVJUSU8gMHhmZmZmMjYwM3UKICNkZWZpbmUgS1ZNX1MzOTBfSU5UX1NFUlZJQ0UgMHhmZmZmMjQwMXUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9TMzkwX0lOVF9FTUVSR0VOQ1kgMHhmZmZmMTIwMXUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9TMzkwX0lOVF9FWFRFUk5BTF9DQUxMIDB4ZmZmZjEyMDJ1Ci0jZGVmaW5lIEtWTV9TMzkwX0lOVF9JTyhhaSxjc3NpZCxzc2lkLHNjaGlkKSAgICgoKHNjaGlkKSkgfCAgICgoc3NpZCkgPDwgMTYpIHwgICAoKGNzc2lkKSA8PCAxOCkgfCAgICgoYWkpIDw8IDI2KSkKKyNkZWZpbmUgS1ZNX1MzOTBfSU5UX0lPKGFpLGNzc2lkLHNzaWQsc2NoaWQpICgoKHNjaGlkKSkgfCAoKHNzaWQpIDw8IDE2KSB8ICgoY3NzaWQpIDw8IDE4KSB8ICgoYWkpIDw8IDI2KSkKICNkZWZpbmUgS1ZNX1MzOTBfSU5UX0lPX01JTiAweDAwMDAwMDAwdQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1MzOTBfSU5UX0lPX01BWCAweGZmZmRmZmZmdQotc3RydWN0IGt2bV9zMzkwX2ludGVycnVwdCB7Ci0gX191MzIgdHlwZTsKLSBfX3UzMiBwYXJtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBwYXJtNjQ7CitzdHJ1Y3Qga3ZtX3MzOTBfaW50ZXJydXB0IHsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgcGFybTsKKyAgX191NjQgcGFybTY0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CitzdHJ1Y3Qga3ZtX3MzOTBfaW9faW5mbyB7CisgIF9fdTE2IHN1YmNoYW5uZWxfaWQ7CisgIF9fdTE2IHN1YmNoYW5uZWxfbnI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBpb19pbnRfcGFybTsKKyAgX191MzIgaW9faW50X3dvcmQ7Cit9Oworc3RydWN0IGt2bV9zMzkwX2V4dF9pbmZvIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGV4dF9wYXJhbXM7CisgIF9fdTMyIHBhZDsKKyAgX191NjQgZXh0X3BhcmFtczI7Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBrdm1fczM5MF9wZ21faW5mbyB7CisgIF9fdTY0IHRyYW5zX2V4Y19jb2RlOworICBfX3U2NCBtb25fY29kZTsKKyAgX191NjQgcGVyX2FkZHJlc3M7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBkYXRhX2V4Y19jb2RlOworICBfX3UxNiBjb2RlOworICBfX3UxNiBtb25fY2xhc3NfbnI7CisgIF9fdTggcGVyX2NvZGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHBlcl9hdG1pZDsKKyAgX191OCBleGNfYWNjZXNzX2lkOworICBfX3U4IHBlcl9hY2Nlc3NfaWQ7CisgIF9fdTggb3BfYWNjZXNzX2lkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBwYWRbM107Cit9Oworc3RydWN0IGt2bV9zMzkwX3ByZWZpeF9pbmZvIHsKKyAgX191MzIgYWRkcmVzczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9Oworc3RydWN0IGt2bV9zMzkwX2V4dGNhbGxfaW5mbyB7CisgIF9fdTE2IGNvZGU7Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBrdm1fczM5MF9lbWVyZ19pbmZvIHsKKyAgX191MTYgY29kZTsKK307CitzdHJ1Y3Qga3ZtX3MzOTBfbWNoa19pbmZvIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IGNyMTQ7CisgIF9fdTY0IG1jaWM7CisgIF9fdTY0IGZhaWxpbmdfc3RvcmFnZV9hZGRyZXNzOworICBfX3UzMiBleHRfZGFtYWdlX2NvZGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBwYWQ7CisgIF9fdTggZml4ZWRfbG9nb3V0WzE2XTsKK307CitzdHJ1Y3Qga3ZtX3MzOTBfaXJxIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IHR5cGU7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3Qga3ZtX3MzOTBfaW9faW5mbyBpbzsKKyAgICBzdHJ1Y3Qga3ZtX3MzOTBfZXh0X2luZm8gZXh0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICBzdHJ1Y3Qga3ZtX3MzOTBfcGdtX2luZm8gcGdtOworICAgIHN0cnVjdCBrdm1fczM5MF9lbWVyZ19pbmZvIGVtZXJnOworICAgIHN0cnVjdCBrdm1fczM5MF9leHRjYWxsX2luZm8gZXh0Y2FsbDsKKyAgICBzdHJ1Y3Qga3ZtX3MzOTBfcHJlZml4X2luZm8gcHJlZml4OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICBzdHJ1Y3Qga3ZtX3MzOTBfbWNoa19pbmZvIG1jaGs7CisgICAgY2hhciByZXNlcnZlZFs2NF07CisgIH0gdTsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fR1VFU1REQkdfRU5BQkxFIDB4MDAwMDAwMDEKICNkZWZpbmUgS1ZNX0dVRVNUREJHX1NJTkdMRVNURVAgMHgwMDAwMDAwMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fZ3Vlc3RfZGVidWcgewotIF9fdTMyIGNvbnRyb2w7Ci0gX191MzIgcGFkOwotIHN0cnVjdCBrdm1fZ3Vlc3RfZGVidWdfYXJjaCBhcmNoOworICBfX3UzMiBjb250cm9sOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcGFkOworICBzdHJ1Y3Qga3ZtX2d1ZXN0X2RlYnVnX2FyY2ggYXJjaDsKIH07CiBlbnVtIHsKLSBrdm1faW9ldmVudGZkX2ZsYWdfbnJfZGF0YW1hdGNoLAotIGt2bV9pb2V2ZW50ZmRfZmxhZ19ucl9waW8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGt2bV9pb2V2ZW50ZmRfZmxhZ19ucl9kZWFzc2lnbiwKLSBrdm1faW9ldmVudGZkX2ZsYWdfbnJfdmlydGlvX2Njd19ub3RpZnksCi0ga3ZtX2lvZXZlbnRmZF9mbGFnX25yX21heCwKKyAga3ZtX2lvZXZlbnRmZF9mbGFnX25yX2RhdGFtYXRjaCwKKyAga3ZtX2lvZXZlbnRmZF9mbGFnX25yX3BpbywKKyAga3ZtX2lvZXZlbnRmZF9mbGFnX25yX2RlYXNzaWduLAorICBrdm1faW9ldmVudGZkX2ZsYWdfbnJfdmlydGlvX2Njd19ub3RpZnksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBrdm1faW9ldmVudGZkX2ZsYWdfbnJfZmFzdF9tbWlvLAorICBrdm1faW9ldmVudGZkX2ZsYWdfbnJfbWF4LAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9JT0VWRU5URkRfRkxBR19EQVRBTUFUQ0ggKDEgPDwga3ZtX2lvZXZlbnRmZF9mbGFnX25yX2RhdGFtYXRjaCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9JT0VWRU5URkRfRkxBR19QSU8gKDEgPDwga3ZtX2lvZXZlbnRmZF9mbGFnX25yX3BpbykKICNkZWZpbmUgS1ZNX0lPRVZFTlRGRF9GTEFHX0RFQVNTSUdOICgxIDw8IGt2bV9pb2V2ZW50ZmRfZmxhZ19ucl9kZWFzc2lnbikKLSNkZWZpbmUgS1ZNX0lPRVZFTlRGRF9GTEFHX1ZJUlRJT19DQ1dfTk9USUZZICAgKDEgPDwga3ZtX2lvZXZlbnRmZF9mbGFnX25yX3ZpcnRpb19jY3dfbm90aWZ5KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0lPRVZFTlRGRF9GTEFHX1ZJUlRJT19DQ1dfTk9USUZZICgxIDw8IGt2bV9pb2V2ZW50ZmRfZmxhZ19ucl92aXJ0aW9fY2N3X25vdGlmeSkKICNkZWZpbmUgS1ZNX0lPRVZFTlRGRF9WQUxJRF9GTEFHX01BU0sgKCgxIDw8IGt2bV9pb2V2ZW50ZmRfZmxhZ19ucl9tYXgpIC0gMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX2lvZXZlbnRmZCB7Ci0gX191NjQgZGF0YW1hdGNoOwotIF9fdTY0IGFkZHI7CisgIF9fdTY0IGRhdGFtYXRjaDsKKyAgX191NjQgYWRkcjsKKyAgX191MzIgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsZW47Ci0gX19zMzIgZmQ7Ci0gX191MzIgZmxhZ3M7Ci0gX191OCBwYWRbMzZdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19zMzIgZmQ7CisgIF9fdTMyIGZsYWdzOworICBfX3U4IHBhZFszNl07CiB9Owotc3RydWN0IGt2bV9lbmFibGVfY2FwIHsKLSBfX3UzMiBjYXA7Ci0gX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGFyZ3NbNF07Ci0gX191OCBwYWRbNjRdOworc3RydWN0IGt2bV9lbmFibGVfY2FwIHsKKyAgX191MzIgY2FwOworICBfX3UzMiBmbGFnczsKKyAgX191NjQgYXJnc1s0XTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcGFkWzY0XTsKIH07CiBzdHJ1Y3Qga3ZtX3BwY19wdmluZm8geworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7Ci0gX191MzIgaGNhbGxbNF07Ci0gX191OCBwYWRbMTA4XTsKKyAgX191MzIgaGNhbGxbNF07CisgIF9fdTggcGFkWzEwOF07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1BQQ19QQUdFX1NJWkVTX01BWF9TWiA4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9wcGNfb25lX3BhZ2Vfc2l6ZSB7Ci0gX191MzIgcGFnZV9zaGlmdDsKLSBfX3UzMiBwdGVfZW5jOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcGFnZV9zaGlmdDsKKyAgX191MzIgcHRlX2VuYzsKIH07Ci1zdHJ1Y3Qga3ZtX3BwY19vbmVfc2VnX3BhZ2Vfc2l6ZSB7Ci0gX191MzIgcGFnZV9zaGlmdDsKLSBfX3UzMiBzbGJfZW5jOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qga3ZtX3BwY19vbmVfcGFnZV9zaXplIGVuY1tLVk1fUFBDX1BBR0VfU0laRVNfTUFYX1NaXTsKK3N0cnVjdCBrdm1fcHBjX29uZV9zZWdfcGFnZV9zaXplIHsKKyAgX191MzIgcGFnZV9zaGlmdDsKKyAgX191MzIgc2xiX2VuYzsKKyAgc3RydWN0IGt2bV9wcGNfb25lX3BhZ2Vfc2l6ZSBlbmNbS1ZNX1BQQ19QQUdFX1NJWkVTX01BWF9TWl07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgS1ZNX1BQQ19QQUdFX1NJWkVTX1JFQUwgMHgwMDAwMDAwMQogI2RlZmluZSBLVk1fUFBDXzFUX1NFR01FTlRTIDB4MDAwMDAwMDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX3BwY19zbW11X2luZm8gewotIF9fdTY0IGZsYWdzOwotIF9fdTMyIHNsYl9zaXplOwotIF9fdTMyIHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGt2bV9wcGNfb25lX3NlZ19wYWdlX3NpemUgc3BzW0tWTV9QUENfUEFHRV9TSVpFU19NQVhfU1pdOworICBfX3U2NCBmbGFnczsKKyAgX191MzIgc2xiX3NpemU7CisgIF9fdTMyIHBhZDsKKyAgc3RydWN0IGt2bV9wcGNfb25lX3NlZ19wYWdlX3NpemUgc3BzW0tWTV9QUENfUEFHRV9TSVpFU19NQVhfU1pdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIEtWTV9QUENfUFZJTkZPX0ZMQUdTX0VWX0lETEUgKDE8PDApCisjZGVmaW5lIEtWTV9QUENfUFZJTkZPX0ZMQUdTX0VWX0lETEUgKDEgPDwgMCkKICNkZWZpbmUgS1ZNSU8gMHhBRQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1ZNX1MzOTBfVUNPTlRST0wgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1ZNX1BQQ19IViAxCiAjZGVmaW5lIEtWTV9WTV9QUENfUFIgMgogI2RlZmluZSBLVk1fUzM5MF9TSUVfUEFHRV9PRkZTRVQgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9BUElfVkVSU0lPTiBfSU8oS1ZNSU8sIDB4MDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ1JFQVRFX1ZNIF9JTyhLVk1JTywgMHgwMSkKICNkZWZpbmUgS1ZNX0dFVF9NU1JfSU5ERVhfTElTVCBfSU9XUihLVk1JTywgMHgwMiwgc3RydWN0IGt2bV9tc3JfbGlzdCkKICNkZWZpbmUgS1ZNX1MzOTBfRU5BQkxFX1NJRSBfSU8oS1ZNSU8sIDB4MDYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0hFQ0tfRVhURU5TSU9OIF9JTyhLVk1JTywgMHgwMykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9HRVRfVkNQVV9NTUFQX1NJWkUgX0lPKEtWTUlPLCAweDA0KQogI2RlZmluZSBLVk1fR0VUX1NVUFBPUlRFRF9DUFVJRCBfSU9XUihLVk1JTywgMHgwNSwgc3RydWN0IGt2bV9jcHVpZDIpCiAjZGVmaW5lIEtWTV9UUkFDRV9FTkFCTEUgX19LVk1fREVQUkVDQVRFRF9NQUlOX1dfMHgwNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1RSQUNFX1BBVVNFIF9fS1ZNX0RFUFJFQ0FURURfTUFJTl8weDA3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fVFJBQ0VfRElTQUJMRSBfX0tWTV9ERVBSRUNBVEVEX01BSU5fMHgwOAogI2RlZmluZSBLVk1fR0VUX0VNVUxBVEVEX0NQVUlEIF9JT1dSKEtWTUlPLCAweDA5LCBzdHJ1Y3Qga3ZtX2NwdWlkMikKICNkZWZpbmUgS1ZNX0NBUF9JUlFDSElQIDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9DQVBfSExUIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9DQVBfTU1VX1NIQURPV19DQUNIRV9DT05UUk9MIDIKICNkZWZpbmUgS1ZNX0NBUF9VU0VSX01FTU9SWSAzCiAjZGVmaW5lIEtWTV9DQVBfU0VUX1RTU19BRERSIDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9DQVBfVkFQSUMgNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NBUF9FWFRfQ1BVSUQgNwogI2RlZmluZSBLVk1fQ0FQX0NMT0NLU09VUkNFIDgKICNkZWZpbmUgS1ZNX0NBUF9OUl9WQ1BVUyA5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX05SX01FTVNMT1RTIDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX1BJVCAxMQogI2RlZmluZSBLVk1fQ0FQX05PUF9JT19ERUxBWSAxMgogI2RlZmluZSBLVk1fQ0FQX1BWX01NVSAxMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NBUF9NUF9TVEFURSAxNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NBUF9DT0FMRVNDRURfTU1JTyAxNQogI2RlZmluZSBLVk1fQ0FQX1NZTkNfTU1VIDE2CiAjZGVmaW5lIEtWTV9DQVBfREVWSUNFX0FTU0lHTk1FTlQgMTcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9DQVBfSU9NTVUgMTgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaWZkZWYgX19LVk1fSEFWRV9NU0kKICNkZWZpbmUgS1ZNX0NBUF9ERVZJQ0VfTVNJIDIwCiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9DQVBfREVTVFJPWV9NRU1PUllfUkVHSU9OX1dPUktTIDIxCi0jaWZkZWYgX19LVk1fSEFWRV9VU0VSX05NSQotI2RlZmluZSBLVk1fQ0FQX1VTRVJfTk1JIDIyCi0jZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9DQVBfVVNFUl9OTUkgMjIKICNpZmRlZiBfX0tWTV9IQVZFX0dVRVNUX0RFQlVHCiAjZGVmaW5lIEtWTV9DQVBfU0VUX0dVRVNUX0RFQlVHIDIzCiAjZW5kaWYKLSNpZmRlZiBfX0tWTV9IQVZFX1BJVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNpZmRlZiBfX0tWTV9IQVZFX1BJVAogI2RlZmluZSBLVk1fQ0FQX1JFSU5KRUNUX0NPTlRST0wgMjQKICNlbmRpZgogI2RlZmluZSBLVk1fQ0FQX0lSUV9ST1VUSU5HIDI1Ci0jZGVmaW5lIEtWTV9DQVBfSVJRX0lOSkVDVF9TVEFUVVMgMjYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9DQVBfSVJRX0lOSkVDVF9TVEFUVVMgMjYKICNkZWZpbmUgS1ZNX0NBUF9ERVZJQ0VfREVBU1NJR05NRU5UIDI3CiAjaWZkZWYgX19LVk1fSEFWRV9NU0lYCiAjZGVmaW5lIEtWTV9DQVBfREVWSUNFX01TSVggMjgKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgogI2RlZmluZSBLVk1fQ0FQX0FTU0lHTl9ERVZfSVJRIDI5CiAjZGVmaW5lIEtWTV9DQVBfSk9JTl9NRU1PUllfUkVHSU9OU19XT1JLUyAzMAogI2lmZGVmIF9fS1ZNX0hBVkVfTUNFCi0jZGVmaW5lIEtWTV9DQVBfTUNFIDMxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fQ0FQX01DRSAzMQogI2VuZGlmCiAjZGVmaW5lIEtWTV9DQVBfSVJRRkQgMzIKICNpZmRlZiBfX0tWTV9IQVZFX1BJVAotI2RlZmluZSBLVk1fQ0FQX1BJVDIgMzMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9DQVBfUElUMiAzMwogI2VuZGlmCiAjZGVmaW5lIEtWTV9DQVBfU0VUX0JPT1RfQ1BVX0lEIDM0CiAjaWZkZWYgX19LVk1fSEFWRV9QSVRfU1RBVEUyCi0jZGVmaW5lIEtWTV9DQVBfUElUX1NUQVRFMiAzNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NBUF9QSVRfU1RBVEUyIDM1CiAjZW5kaWYKICNkZWZpbmUgS1ZNX0NBUF9JT0VWRU5URkQgMzYKICNkZWZpbmUgS1ZNX0NBUF9TRVRfSURFTlRJVFlfTUFQX0FERFIgMzcKLSNpZmRlZiBfX0tWTV9IQVZFX1hFTl9IVk0KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjaWZkZWYgX19LVk1fSEFWRV9YRU5fSFZNCiAjZGVmaW5lIEtWTV9DQVBfWEVOX0hWTSAzOAogI2VuZGlmCiAjZGVmaW5lIEtWTV9DQVBfQURKVVNUX0NMT0NLIDM5Ci0jZGVmaW5lIEtWTV9DQVBfSU5URVJOQUxfRVJST1JfREFUQSA0MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NBUF9JTlRFUk5BTF9FUlJPUl9EQVRBIDQwCiAjaWZkZWYgX19LVk1fSEFWRV9WQ1BVX0VWRU5UUwogI2RlZmluZSBLVk1fQ0FQX1ZDUFVfRVZFTlRTIDQxCiAjZW5kaWYKLSNkZWZpbmUgS1ZNX0NBUF9TMzkwX1BTVyA0MgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NBUF9TMzkwX1BTVyA0MgogI2RlZmluZSBLVk1fQ0FQX1BQQ19TRUdTVEFURSA0MwogI2RlZmluZSBLVk1fQ0FQX0hZUEVSViA0NAogI2RlZmluZSBLVk1fQ0FQX0hZUEVSVl9WQVBJQyA0NQotI2RlZmluZSBLVk1fQ0FQX0hZUEVSVl9TUElOIDQ2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fQ0FQX0hZUEVSVl9TUElOIDQ2CiAjZGVmaW5lIEtWTV9DQVBfUENJX1NFR01FTlQgNDcKICNkZWZpbmUgS1ZNX0NBUF9QUENfUEFJUkVEX1NJTkdMRVMgNDgKICNkZWZpbmUgS1ZNX0NBUF9JTlRSX1NIQURPVyA0OQotI2lmZGVmIF9fS1ZNX0hBVkVfREVCVUdSRUdTCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2lmZGVmIF9fS1ZNX0hBVkVfREVCVUdSRUdTCiAjZGVmaW5lIEtWTV9DQVBfREVCVUdSRUdTIDUwCiAjZW5kaWYKICNkZWZpbmUgS1ZNX0NBUF9YODZfUk9CVVNUX1NJTkdMRVNURVAgNTEKLSNkZWZpbmUgS1ZNX0NBUF9QUENfT1NJIDUyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fQ0FQX1BQQ19PU0kgNTIKICNkZWZpbmUgS1ZNX0NBUF9QUENfVU5TRVRfSVJRIDUzCiAjZGVmaW5lIEtWTV9DQVBfRU5BQkxFX0NBUCA1NAogI2lmZGVmIF9fS1ZNX0hBVkVfWFNBVkUKLSNkZWZpbmUgS1ZNX0NBUF9YU0FWRSA1NQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NBUF9YU0FWRSA1NQogI2VuZGlmCiAjaWZkZWYgX19LVk1fSEFWRV9YQ1JTCiAjZGVmaW5lIEtWTV9DQVBfWENSUyA1NgotI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCiAjZGVmaW5lIEtWTV9DQVBfUFBDX0dFVF9QVklORk8gNTcKICNkZWZpbmUgS1ZNX0NBUF9QUENfSVJRX0xFVkVMIDU4CiAjZGVmaW5lIEtWTV9DQVBfQVNZTkNfUEYgNTkKLSNkZWZpbmUgS1ZNX0NBUF9UU0NfQ09OVFJPTCA2MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NBUF9UU0NfQ09OVFJPTCA2MAogI2RlZmluZSBLVk1fQ0FQX0dFVF9UU0NfS0haIDYxCiAjZGVmaW5lIEtWTV9DQVBfUFBDX0JPT0tFX1NSRUdTIDYyCiAjZGVmaW5lIEtWTV9DQVBfU1BBUFJfVENFIDYzCi0jZGVmaW5lIEtWTV9DQVBfUFBDX1NNVCA2NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NBUF9QUENfU01UIDY0CiAjZGVmaW5lIEtWTV9DQVBfUFBDX1JNQSA2NQogI2RlZmluZSBLVk1fQ0FQX01BWF9WQ1BVUyA2NgogI2RlZmluZSBLVk1fQ0FQX1BQQ19ISU9SIDY3Ci0jZGVmaW5lIEtWTV9DQVBfUFBDX1BBUFIgNjgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9DQVBfUFBDX1BBUFIgNjgKICNkZWZpbmUgS1ZNX0NBUF9TV19UTEIgNjkKICNkZWZpbmUgS1ZNX0NBUF9PTkVfUkVHIDcwCiAjZGVmaW5lIEtWTV9DQVBfUzM5MF9HTUFQIDcxCi0jZGVmaW5lIEtWTV9DQVBfVFNDX0RFQURMSU5FX1RJTUVSIDcyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fQ0FQX1RTQ19ERUFETElORV9USU1FUiA3MgogI2RlZmluZSBLVk1fQ0FQX1MzOTBfVUNPTlRST0wgNzMKICNkZWZpbmUgS1ZNX0NBUF9TWU5DX1JFR1MgNzQKICNkZWZpbmUgS1ZNX0NBUF9QQ0lfMl8zIDc1Ci0jZGVmaW5lIEtWTV9DQVBfS1ZNQ0xPQ0tfQ1RSTCA3NgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NBUF9LVk1DTE9DS19DVFJMIDc2CiAjZGVmaW5lIEtWTV9DQVBfU0lHTkFMX01TSSA3NwogI2RlZmluZSBLVk1fQ0FQX1BQQ19HRVRfU01NVV9JTkZPIDc4CiAjZGVmaW5lIEtWTV9DQVBfUzM5MF9DT1cgNzkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9DQVBfUFBDX0FMTE9DX0hUQUIgODAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jaWZkZWYgX19LVk1fSEFWRV9SRUFET05MWV9NRU0KICNkZWZpbmUgS1ZNX0NBUF9SRUFET05MWV9NRU0gODEKLSNlbmRpZgogI2RlZmluZSBLVk1fQ0FQX0lSUUZEX1JFU0FNUExFIDgyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX1BQQ19CT09LRV9XQVRDSERPRyA4MworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0NBUF9QUENfSFRBQl9GRCA4NAogI2RlZmluZSBLVk1fQ0FQX1MzOTBfQ1NTX1NVUFBPUlQgODUKICNkZWZpbmUgS1ZNX0NBUF9QUENfRVBSIDg2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX0FSTV9QU0NJIDg3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX0FSTV9TRVRfREVWSUNFX0FERFIgODgKICNkZWZpbmUgS1ZNX0NBUF9ERVZJQ0VfQ1RSTCA4OQogI2RlZmluZSBLVk1fQ0FQX0lSUV9NUElDIDkwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX1BQQ19SVEFTIDkxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX0lSUV9YSUNTIDkyCiAjZGVmaW5lIEtWTV9DQVBfQVJNX0VMMV8zMkJJVCA5MwogI2RlZmluZSBLVk1fQ0FQX1NQQVBSX01VTFRJVENFIDk0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX0VYVF9FTVVMX0NQVUlEIDk1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQ0FQX0hZUEVSVl9USU1FIDk2CisjZGVmaW5lIEtWTV9DQVBfSU9BUElDX1BPTEFSSVRZX0lHTk9SRUQgOTcKKyNkZWZpbmUgS1ZNX0NBUF9FTkFCTEVfQ0FQX1ZNIDk4CisjZGVmaW5lIEtWTV9DQVBfUzM5MF9JUlFDSElQIDk5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fQ0FQX0lPRVZFTlRGRF9OT19MRU5HVEggMTAwCisjZGVmaW5lIEtWTV9DQVBfVk1fQVRUUklCVVRFUyAxMDEKKyNkZWZpbmUgS1ZNX0NBUF9BUk1fUFNDSV8wXzIgMTAyCisjZGVmaW5lIEtWTV9DQVBfUFBDX0ZJWFVQX0hDQUxMIDEwMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0NBUF9QUENfRU5BQkxFX0hDQUxMIDEwNAorI2RlZmluZSBLVk1fQ0FQX0NIRUNLX0VYVEVOU0lPTl9WTSAxMDUKICNpZmRlZiBLVk1fQ0FQX0lSUV9ST1VUSU5HCiBzdHJ1Y3Qga3ZtX2lycV9yb3V0aW5nX2lycWNoaXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpcnFjaGlwOwotIF9fdTMyIHBpbjsKKyAgX191MzIgaXJxY2hpcDsKKyAgX191MzIgcGluOwogfTsKIHN0cnVjdCBrdm1faXJxX3JvdXRpbmdfbXNpIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYWRkcmVzc19sbzsKLSBfX3UzMiBhZGRyZXNzX2hpOwotIF9fdTMyIGRhdGE7Ci0gX191MzIgcGFkOworICBfX3UzMiBhZGRyZXNzX2xvOworICBfX3UzMiBhZGRyZXNzX2hpOworICBfX3UzMiBkYXRhOworICBfX3UzMiBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKK3N0cnVjdCBrdm1faXJxX3JvdXRpbmdfczM5MF9hZGFwdGVyIHsKKyAgX191NjQgaW5kX2FkZHI7CisgIF9fdTY0IHN1bW1hcnlfYWRkcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IGluZF9vZmZzZXQ7CisgIF9fdTMyIHN1bW1hcnlfb2Zmc2V0OworICBfX3UzMiBhZGFwdGVyX2lkOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9JUlFfUk9VVElOR19JUlFDSElQIDEKICNkZWZpbmUgS1ZNX0lSUV9ST1VUSU5HX01TSSAyCisjZGVmaW5lIEtWTV9JUlFfUk9VVElOR19TMzkwX0FEQVBURVIgMwogc3RydWN0IGt2bV9pcnFfcm91dGluZ19lbnRyeSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGdzaTsKLSBfX3UzMiB0eXBlOwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHBhZDsKKyAgX191MzIgZ3NpOworICBfX3UzMiB0eXBlOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IGt2bV9pcnFfcm91dGluZ19pcnFjaGlwIGlycWNoaXA7Ci0gc3RydWN0IGt2bV9pcnFfcm91dGluZ19tc2kgbXNpOwotIF9fdTMyIHBhZFs4XTsKKyAgdW5pb24geworICAgIHN0cnVjdCBrdm1faXJxX3JvdXRpbmdfaXJxY2hpcCBpcnFjaGlwOworICAgIHN0cnVjdCBrdm1faXJxX3JvdXRpbmdfbXNpIG1zaTsKKyAgICBzdHJ1Y3Qga3ZtX2lycV9yb3V0aW5nX3MzOTBfYWRhcHRlciBhZGFwdGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHU7CisgICAgX191MzIgcGFkWzhdOworICB9IHU7CiB9Owogc3RydWN0IGt2bV9pcnFfcm91dGluZyB7Ci0gX191MzIgbnI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIHN0cnVjdCBrdm1faXJxX3JvdXRpbmdfZW50cnkgZW50cmllc1swXTsKKyAgX191MzIgbnI7CisgIF9fdTMyIGZsYWdzOworICBzdHJ1Y3Qga3ZtX2lycV9yb3V0aW5nX2VudHJ5IGVudHJpZXNbMF07CiB9OwotI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCiAjaWZkZWYgS1ZNX0NBUF9NQ0UKIHN0cnVjdCBrdm1feDg2X21jZSB7Ci0gX191NjQgc3RhdHVzOwotIF9fdTY0IGFkZHI7CisgIF9fdTY0IHN0YXR1czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbWlzYzsKLSBfX3U2NCBtY2dfc3RhdHVzOwotIF9fdTggYmFuazsKLSBfX3U4IHBhZDFbN107CisgIF9fdTY0IGFkZHI7CisgIF9fdTY0IG1pc2M7CisgIF9fdTY0IG1jZ19zdGF0dXM7CisgIF9fdTggYmFuazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcGFkMlszXTsKKyAgX191OCBwYWQxWzddOworICBfX3U2NCBwYWQyWzNdOwogfTsKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZmRlZiBLVk1fQ0FQX1hFTl9IVk0KLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX3hlbl9odm1fY29uZmlnIHsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBtc3I7Ci0gX191NjQgYmxvYl9hZGRyXzMyOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgbXNyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBibG9iX2FkZHJfNjQ7Ci0gX191OCBibG9iX3NpemVfMzI7Ci0gX191OCBibG9iX3NpemVfNjQ7Ci0gX191OCBwYWQyWzMwXTsKKyAgX191NjQgYmxvYl9hZGRyXzMyOworICBfX3U2NCBibG9iX2FkZHJfNjQ7CisgIF9fdTggYmxvYl9zaXplXzMyOworICBfX3U4IGJsb2Jfc2l6ZV82NDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcGFkMlszMF07CiB9OwogI2VuZGlmCiAjZGVmaW5lIEtWTV9JUlFGRF9GTEFHX0RFQVNTSUdOICgxIDw8IDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fSVJRRkRfRkxBR19SRVNBTVBMRSAoMSA8PCAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1faXJxZmQgewotIF9fdTMyIGZkOwotIF9fdTMyIGdzaTsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgZmQ7CisgIF9fdTMyIGdzaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzYW1wbGVmZDsKLSBfX3U4IHBhZFsxNl07CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiByZXNhbXBsZWZkOworICBfX3U4IHBhZFsxNl07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fY2xvY2tfZGF0YSB7CisgIF9fdTY0IGNsb2NrOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgcGFkWzldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBjbG9jazsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBwYWRbOV07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX01NVV9GU0xfQk9PS0VfTk9IViAwCiAjZGVmaW5lIEtWTV9NTVVfRlNMX0JPT0tFX0hWIDEKIHN0cnVjdCBrdm1fY29uZmlnX3RsYiB7Ci0gX191NjQgcGFyYW1zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBhcnJheTsKLSBfX3UzMiBtbXVfdHlwZTsKLSBfX3UzMiBhcnJheV9sZW47CisgIF9fdTY0IHBhcmFtczsKKyAgX191NjQgYXJyYXk7CisgIF9fdTMyIG1tdV90eXBlOworICBfX3UzMiBhcnJheV9sZW47CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX2RpcnR5X3RsYiB7Ci0gX191NjQgYml0bWFwOwotIF9fdTMyIG51bV9kaXJ0eTsKLX07CisgIF9fdTY0IGJpdG1hcDsKKyAgX191MzIgbnVtX2RpcnR5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CiAjZGVmaW5lIEtWTV9SRUdfQVJDSF9NQVNLIDB4ZmYwMDAwMDAwMDAwMDAwMFVMTAogI2RlZmluZSBLVk1fUkVHX0dFTkVSSUMgMHgwMDAwMDAwMDAwMDAwMDAwVUxMCiAjZGVmaW5lIEtWTV9SRUdfUFBDIDB4MTAwMDAwMDAwMDAwMDAwMFVMTAotI2RlZmluZSBLVk1fUkVHX1g4NiAweDIwMDAwMDAwMDAwMDAwMDBVTEwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9SRUdfWDg2IDB4MjAwMDAwMDAwMDAwMDAwMFVMTAogI2RlZmluZSBLVk1fUkVHX0lBNjQgMHgzMDAwMDAwMDAwMDAwMDAwVUxMCiAjZGVmaW5lIEtWTV9SRUdfQVJNIDB4NDAwMDAwMDAwMDAwMDAwMFVMTAogI2RlZmluZSBLVk1fUkVHX1MzOTAgMHg1MDAwMDAwMDAwMDAwMDAwVUxMCi0jZGVmaW5lIEtWTV9SRUdfQVJNNjQgMHg2MDAwMDAwMDAwMDAwMDAwVUxMCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fUkVHX0FSTTY0IDB4NjAwMDAwMDAwMDAwMDAwMFVMTAogI2RlZmluZSBLVk1fUkVHX01JUFMgMHg3MDAwMDAwMDAwMDAwMDAwVUxMCiAjZGVmaW5lIEtWTV9SRUdfU0laRV9TSElGVCA1MgogI2RlZmluZSBLVk1fUkVHX1NJWkVfTUFTSyAweDAwZjAwMDAwMDAwMDAwMDBVTEwKLSNkZWZpbmUgS1ZNX1JFR19TSVpFX1U4IDB4MDAwMDAwMDAwMDAwMDAwMFVMTAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX1JFR19TSVpFX1U4IDB4MDAwMDAwMDAwMDAwMDAwMFVMTAogI2RlZmluZSBLVk1fUkVHX1NJWkVfVTE2IDB4MDAxMDAwMDAwMDAwMDAwMFVMTAogI2RlZmluZSBLVk1fUkVHX1NJWkVfVTMyIDB4MDAyMDAwMDAwMDAwMDAwMFVMTAogI2RlZmluZSBLVk1fUkVHX1NJWkVfVTY0IDB4MDAzMDAwMDAwMDAwMDAwMFVMTAotI2RlZmluZSBLVk1fUkVHX1NJWkVfVTEyOCAweDAwNDAwMDAwMDAwMDAwMDBVTEwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9SRUdfU0laRV9VMTI4IDB4MDA0MDAwMDAwMDAwMDAwMFVMTAogI2RlZmluZSBLVk1fUkVHX1NJWkVfVTI1NiAweDAwNTAwMDAwMDAwMDAwMDBVTEwKICNkZWZpbmUgS1ZNX1JFR19TSVpFX1U1MTIgMHgwMDYwMDAwMDAwMDAwMDAwVUxMCiAjZGVmaW5lIEtWTV9SRUdfU0laRV9VMTAyNCAweDAwNzAwMDAwMDAwMDAwMDBVTEwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX3JlZ19saXN0IHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbjsKLSBfX3U2NCByZWdbMF07CisgIF9fdTY0IG47CisgIF9fdTY0IHJlZ1swXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9vbmVfcmVnIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgaWQ7Ci0gX191NjQgYWRkcjsKKyAgX191NjQgaWQ7CisgIF9fdTY0IGFkZHI7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBrdm1fbXNpIHsKKyAgX191MzIgYWRkcmVzc19sbzsKKyAgX191MzIgYWRkcmVzc19oaTsKKyAgX191MzIgZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYWRkcmVzc19sbzsKLSBfX3UzMiBhZGRyZXNzX2hpOwotIF9fdTMyIGRhdGE7Ci0gX191MzIgZmxhZ3M7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGFkWzE2XTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTggcGFkWzE2XTsKIH07CiBzdHJ1Y3Qga3ZtX2FybV9kZXZpY2VfYWRkciB7Ci0gX191NjQgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGFkZHI7CisgIF9fdTY0IGlkOworICBfX3U2NCBhZGRyOwogfTsKICNkZWZpbmUgS1ZNX0NSRUFURV9ERVZJQ0VfVEVTVCAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9jcmVhdGVfZGV2aWNlIHsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgZmQ7CisgIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eXBlOwotIF9fdTMyIGZkOwotIF9fdTMyIGZsYWdzOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qga3ZtX2RldmljZV9hdHRyIHsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBncm91cDsKLSBfX3U2NCBhdHRyOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgZ3JvdXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGFkZHI7CisgIF9fdTY0IGF0dHI7CisgIF9fdTY0IGFkZHI7CiB9OwotI2RlZmluZSBLVk1fREVWX1RZUEVfRlNMX01QSUNfMjAgMQotI2RlZmluZSBLVk1fREVWX1RZUEVfRlNMX01QSUNfNDIgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS1ZNX0RFVl9UWVBFX1hJQ1MgMwotI2RlZmluZSBLVk1fREVWX1RZUEVfVkZJTyA0CiAjZGVmaW5lIEtWTV9ERVZfVkZJT19HUk9VUCAxCi0jZGVmaW5lIEtWTV9ERVZfVkZJT19HUk9VUF9BREQgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0RFVl9WRklPX0dST1VQX0FERCAxCiAjZGVmaW5lIEtWTV9ERVZfVkZJT19HUk9VUF9ERUwgMgotI2RlZmluZSBLVk1fREVWX1RZUEVfQVJNX1ZHSUNfVjIgNQorZW51bSBrdm1fZGV2aWNlX3R5cGUgeworICBLVk1fREVWX1RZUEVfRlNMX01QSUNfMjAgPSAxLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0RFVl9UWVBFX0ZTTF9NUElDXzIwIEtWTV9ERVZfVFlQRV9GU0xfTVBJQ18yMAorICBLVk1fREVWX1RZUEVfRlNMX01QSUNfNDIsCisjZGVmaW5lIEtWTV9ERVZfVFlQRV9GU0xfTVBJQ180MiBLVk1fREVWX1RZUEVfRlNMX01QSUNfNDIKKyAgS1ZNX0RFVl9UWVBFX1hJQ1MsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fREVWX1RZUEVfWElDUyBLVk1fREVWX1RZUEVfWElDUworICBLVk1fREVWX1RZUEVfVkZJTywKKyNkZWZpbmUgS1ZNX0RFVl9UWVBFX1ZGSU8gS1ZNX0RFVl9UWVBFX1ZGSU8KKyAgS1ZNX0RFVl9UWVBFX0FSTV9WR0lDX1YyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgS1ZNX0RFVl9UWVBFX0FSTV9WR0lDX1YyIEtWTV9ERVZfVFlQRV9BUk1fVkdJQ19WMgorICBLVk1fREVWX1RZUEVfRkxJQywKKyNkZWZpbmUgS1ZNX0RFVl9UWVBFX0ZMSUMgS1ZNX0RFVl9UWVBFX0ZMSUMKKyAgS1ZNX0RFVl9UWVBFX01BWCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OwogI2RlZmluZSBLVk1fU0VUX01FTU9SWV9SRUdJT04gX0lPVyhLVk1JTywgMHg0MCwgc3RydWN0IGt2bV9tZW1vcnlfcmVnaW9uKQogI2RlZmluZSBLVk1fQ1JFQVRFX1ZDUFUgX0lPKEtWTUlPLCAweDQxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9ESVJUWV9MT0cgX0lPVyhLVk1JTywgMHg0Miwgc3RydWN0IGt2bV9kaXJ0eV9sb2cpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fU0VUX01FTU9SWV9BTElBUyBfSU9XKEtWTUlPLCAweDQzLCBzdHJ1Y3Qga3ZtX21lbW9yeV9hbGlhcykKICNkZWZpbmUgS1ZNX1NFVF9OUl9NTVVfUEFHRVMgX0lPKEtWTUlPLCAweDQ0KQogI2RlZmluZSBLVk1fR0VUX05SX01NVV9QQUdFUyBfSU8oS1ZNSU8sIDB4NDUpCisjZGVmaW5lIEtWTV9TRVRfVVNFUl9NRU1PUllfUkVHSU9OIF9JT1coS1ZNSU8sIDB4NDYsIHN0cnVjdCBrdm1fdXNlcnNwYWNlX21lbW9yeV9yZWdpb24pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBLVk1fU0VUX1VTRVJfTUVNT1JZX1JFR0lPTiBfSU9XKEtWTUlPLCAweDQ2LCAgIHN0cnVjdCBrdm1fdXNlcnNwYWNlX21lbW9yeV9yZWdpb24pCiAjZGVmaW5lIEtWTV9TRVRfVFNTX0FERFIgX0lPKEtWTUlPLCAweDQ3KQogI2RlZmluZSBLVk1fU0VUX0lERU5USVRZX01BUF9BRERSIF9JT1coS1ZNSU8sIDB4NDgsIF9fdTY0KQogc3RydWN0IGt2bV9zMzkwX3VjYXNfbWFwcGluZyB7CisgIF9fdTY0IHVzZXJfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdXNlcl9hZGRyOwotIF9fdTY0IHZjcHVfYWRkcjsKLSBfX3U2NCBsZW5ndGg7CisgIF9fdTY0IHZjcHVfYWRkcjsKKyAgX191NjQgbGVuZ3RoOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9TMzkwX1VDQVNfTUFQIF9JT1coS1ZNSU8sIDB4NTAsIHN0cnVjdCBrdm1fczM5MF91Y2FzX21hcHBpbmcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fUzM5MF9VQ0FTX1VOTUFQIF9JT1coS1ZNSU8sIDB4NTEsIHN0cnVjdCBrdm1fczM5MF91Y2FzX21hcHBpbmcpCiAjZGVmaW5lIEtWTV9TMzkwX1ZDUFVfRkFVTFQgX0lPVyhLVk1JTywgMHg1MiwgdW5zaWduZWQgbG9uZykKICNkZWZpbmUgS1ZNX0NSRUFURV9JUlFDSElQIF9JTyhLVk1JTywgMHg2MCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9JUlFfTElORSBfSU9XKEtWTUlPLCAweDYxLCBzdHJ1Y3Qga3ZtX2lycV9sZXZlbCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9HRVRfSVJRQ0hJUCBfSU9XUihLVk1JTywgMHg2Miwgc3RydWN0IGt2bV9pcnFjaGlwKQogI2RlZmluZSBLVk1fU0VUX0lSUUNISVAgX0lPUihLVk1JTywgMHg2Mywgc3RydWN0IGt2bV9pcnFjaGlwKQogI2RlZmluZSBLVk1fQ1JFQVRFX1BJVCBfSU8oS1ZNSU8sIDB4NjQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fR0VUX1BJVCBfSU9XUihLVk1JTywgMHg2NSwgc3RydWN0IGt2bV9waXRfc3RhdGUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fU0VUX1BJVCBfSU9SKEtWTUlPLCAweDY2LCBzdHJ1Y3Qga3ZtX3BpdF9zdGF0ZSkKICNkZWZpbmUgS1ZNX0lSUV9MSU5FX1NUQVRVUyBfSU9XUihLVk1JTywgMHg2Nywgc3RydWN0IGt2bV9pcnFfbGV2ZWwpCi0jZGVmaW5lIEtWTV9SRUdJU1RFUl9DT0FMRVNDRURfTU1JTyAgIF9JT1coS1ZNSU8sIDB4NjcsIHN0cnVjdCBrdm1fY29hbGVzY2VkX21taW9fem9uZSkKKyNkZWZpbmUgS1ZNX1JFR0lTVEVSX0NPQUxFU0NFRF9NTUlPIF9JT1coS1ZNSU8sIDB4NjcsIHN0cnVjdCBrdm1fY29hbGVzY2VkX21taW9fem9uZSkKKyNkZWZpbmUgS1ZNX1VOUkVHSVNURVJfQ09BTEVTQ0VEX01NSU8gX0lPVyhLVk1JTywgMHg2OCwgc3RydWN0IGt2bV9jb2FsZXNjZWRfbW1pb196b25lKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS1ZNX1VOUkVHSVNURVJfQ09BTEVTQ0VEX01NSU8gICBfSU9XKEtWTUlPLCAweDY4LCBzdHJ1Y3Qga3ZtX2NvYWxlc2NlZF9tbWlvX3pvbmUpCi0jZGVmaW5lIEtWTV9BU1NJR05fUENJX0RFVklDRSBfSU9SKEtWTUlPLCAweDY5LCAgIHN0cnVjdCBrdm1fYXNzaWduZWRfcGNpX2RldikKKyNkZWZpbmUgS1ZNX0FTU0lHTl9QQ0lfREVWSUNFIF9JT1IoS1ZNSU8sIDB4NjksIHN0cnVjdCBrdm1fYXNzaWduZWRfcGNpX2RldikKICNkZWZpbmUgS1ZNX1NFVF9HU0lfUk9VVElORyBfSU9XKEtWTUlPLCAweDZhLCBzdHJ1Y3Qga3ZtX2lycV9yb3V0aW5nKQogI2RlZmluZSBLVk1fQVNTSUdOX0lSUSBfX0tWTV9ERVBSRUNBVEVEX1ZNX1JfMHg3MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FTU0lHTl9ERVZfSVJRIF9JT1coS1ZNSU8sIDB4NzAsIHN0cnVjdCBrdm1fYXNzaWduZWRfaXJxKQotI2RlZmluZSBLVk1fUkVJTkpFQ1RfQ09OVFJPTCBfSU8oS1ZNSU8sIDB4NzEpCi0jZGVmaW5lIEtWTV9ERUFTU0lHTl9QQ0lfREVWSUNFIF9JT1coS1ZNSU8sIDB4NzIsICAgc3RydWN0IGt2bV9hc3NpZ25lZF9wY2lfZGV2KQotI2RlZmluZSBLVk1fQVNTSUdOX1NFVF9NU0lYX05SIF9JT1coS1ZNSU8sIDB4NzMsICAgc3RydWN0IGt2bV9hc3NpZ25lZF9tc2l4X25yKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgS1ZNX0FTU0lHTl9TRVRfTVNJWF9FTlRSWSBfSU9XKEtWTUlPLCAweDc0LCAgIHN0cnVjdCBrdm1fYXNzaWduZWRfbXNpeF9lbnRyeSkKKyNkZWZpbmUgS1ZNX1JFSU5KRUNUX0NPTlRST0wgX0lPKEtWTUlPLCAweDcxKQorI2RlZmluZSBLVk1fREVBU1NJR05fUENJX0RFVklDRSBfSU9XKEtWTUlPLCAweDcyLCBzdHJ1Y3Qga3ZtX2Fzc2lnbmVkX3BjaV9kZXYpCisjZGVmaW5lIEtWTV9BU1NJR05fU0VUX01TSVhfTlIgX0lPVyhLVk1JTywgMHg3Mywgc3RydWN0IGt2bV9hc3NpZ25lZF9tc2l4X25yKQorI2RlZmluZSBLVk1fQVNTSUdOX1NFVF9NU0lYX0VOVFJZIF9JT1coS1ZNSU8sIDB4NzQsIHN0cnVjdCBrdm1fYXNzaWduZWRfbXNpeF9lbnRyeSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9ERUFTU0lHTl9ERVZfSVJRIF9JT1coS1ZNSU8sIDB4NzUsIHN0cnVjdCBrdm1fYXNzaWduZWRfaXJxKQogI2RlZmluZSBLVk1fSVJRRkQgX0lPVyhLVk1JTywgMHg3Niwgc3RydWN0IGt2bV9pcnFmZCkKICNkZWZpbmUgS1ZNX0NSRUFURV9QSVQyIF9JT1coS1ZNSU8sIDB4NzcsIHN0cnVjdCBrdm1fcGl0X2NvbmZpZykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9TRVRfQk9PVF9DUFVfSUQgX0lPKEtWTUlPLCAweDc4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0lPRVZFTlRGRCBfSU9XKEtWTUlPLCAweDc5LCBzdHJ1Y3Qga3ZtX2lvZXZlbnRmZCkKICNkZWZpbmUgS1ZNX1hFTl9IVk1fQ09ORklHIF9JT1coS1ZNSU8sIDB4N2EsIHN0cnVjdCBrdm1feGVuX2h2bV9jb25maWcpCiAjZGVmaW5lIEtWTV9TRVRfQ0xPQ0sgX0lPVyhLVk1JTywgMHg3Yiwgc3RydWN0IGt2bV9jbG9ja19kYXRhKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9DTE9DSyBfSU9SKEtWTUlPLCAweDdjLCBzdHJ1Y3Qga3ZtX2Nsb2NrX2RhdGEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fR0VUX1BJVDIgX0lPUihLVk1JTywgMHg5Ziwgc3RydWN0IGt2bV9waXRfc3RhdGUyKQogI2RlZmluZSBLVk1fU0VUX1BJVDIgX0lPVyhLVk1JTywgMHhhMCwgc3RydWN0IGt2bV9waXRfc3RhdGUyKQogI2RlZmluZSBLVk1fUFBDX0dFVF9QVklORk8gX0lPVyhLVk1JTywgMHhhMSwgc3RydWN0IGt2bV9wcGNfcHZpbmZvKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1NFVF9UU0NfS0haIF9JTyhLVk1JTywgMHhhMikKLSNkZWZpbmUgS1ZNX0dFVF9UU0NfS0haIF9JTyhLVk1JTywgMHhhMykKLSNkZWZpbmUgS1ZNX0FTU0lHTl9TRVRfSU5UWF9NQVNLIF9JT1coS1ZNSU8sIDB4YTQsICAgc3RydWN0IGt2bV9hc3NpZ25lZF9wY2lfZGV2KQotI2RlZmluZSBLVk1fU0lHTkFMX01TSSBfSU9XKEtWTUlPLCAweGE1LCBzdHJ1Y3Qga3ZtX21zaSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEtWTV9HRVRfVFNDX0tIWiBfSU8oS1ZNSU8sIDB4YTMpCisjZGVmaW5lIEtWTV9BU1NJR05fU0VUX0lOVFhfTUFTSyBfSU9XKEtWTUlPLCAweGE0LCBzdHJ1Y3Qga3ZtX2Fzc2lnbmVkX3BjaV9kZXYpCisjZGVmaW5lIEtWTV9TSUdOQUxfTVNJIF9JT1coS1ZNSU8sIDB4YTUsIHN0cnVjdCBrdm1fbXNpKQogI2RlZmluZSBLVk1fUFBDX0dFVF9TTU1VX0lORk8gX0lPUihLVk1JTywgMHhhNiwgc3RydWN0IGt2bV9wcGNfc21tdV9pbmZvKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1BQQ19BTExPQ0FURV9IVEFCIF9JT1dSKEtWTUlPLCAweGE3LCBfX3UzMikKICNkZWZpbmUgS1ZNX0NSRUFURV9TUEFQUl9UQ0UgX0lPVyhLVk1JTywgMHhhOCwgc3RydWN0IGt2bV9jcmVhdGVfc3BhcHJfdGNlKQogI2RlZmluZSBLVk1fQUxMT0NBVEVfUk1BIF9JT1IoS1ZNSU8sIDB4YTksIHN0cnVjdCBrdm1fYWxsb2NhdGVfcm1hKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1BQQ19HRVRfSFRBQl9GRCBfSU9XKEtWTUlPLCAweGFhLCBzdHJ1Y3Qga3ZtX2dldF9odGFiX2ZkKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0FSTV9TRVRfREVWSUNFX0FERFIgX0lPVyhLVk1JTywgMHhhYiwgc3RydWN0IGt2bV9hcm1fZGV2aWNlX2FkZHIpCiAjZGVmaW5lIEtWTV9QUENfUlRBU19ERUZJTkVfVE9LRU4gX0lPVyhLVk1JTywgMHhhYywgc3RydWN0IGt2bV9ydGFzX3Rva2VuX2FyZ3MpCiAjZGVmaW5lIEtWTV9DUkVBVEVfREVWSUNFIF9JT1dSKEtWTUlPLCAweGUwLCBzdHJ1Y3Qga3ZtX2NyZWF0ZV9kZXZpY2UpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fU0VUX0RFVklDRV9BVFRSIF9JT1coS1ZNSU8sIDB4ZTEsIHN0cnVjdCBrdm1fZGV2aWNlX2F0dHIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fR0VUX0RFVklDRV9BVFRSIF9JT1coS1ZNSU8sIDB4ZTIsIHN0cnVjdCBrdm1fZGV2aWNlX2F0dHIpCiAjZGVmaW5lIEtWTV9IQVNfREVWSUNFX0FUVFIgX0lPVyhLVk1JTywgMHhlMywgc3RydWN0IGt2bV9kZXZpY2VfYXR0cikKICNkZWZpbmUgS1ZNX1JVTiBfSU8oS1ZNSU8sIDB4ODApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fR0VUX1JFR1MgX0lPUihLVk1JTywgMHg4MSwgc3RydWN0IGt2bV9yZWdzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1NFVF9SRUdTIF9JT1coS1ZNSU8sIDB4ODIsIHN0cnVjdCBrdm1fcmVncykKICNkZWZpbmUgS1ZNX0dFVF9TUkVHUyBfSU9SKEtWTUlPLCAweDgzLCBzdHJ1Y3Qga3ZtX3NyZWdzKQogI2RlZmluZSBLVk1fU0VUX1NSRUdTIF9JT1coS1ZNSU8sIDB4ODQsIHN0cnVjdCBrdm1fc3JlZ3MpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fVFJBTlNMQVRFIF9JT1dSKEtWTUlPLCAweDg1LCBzdHJ1Y3Qga3ZtX3RyYW5zbGF0aW9uKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0lOVEVSUlVQVCBfSU9XKEtWTUlPLCAweDg2LCBzdHJ1Y3Qga3ZtX2ludGVycnVwdCkKICNkZWZpbmUgS1ZNX0RFQlVHX0dVRVNUIF9fS1ZNX0RFUFJFQ0FURURfVkNQVV9XXzB4ODcKICNkZWZpbmUgS1ZNX0dFVF9NU1JTIF9JT1dSKEtWTUlPLCAweDg4LCBzdHJ1Y3Qga3ZtX21zcnMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fU0VUX01TUlMgX0lPVyhLVk1JTywgMHg4OSwgc3RydWN0IGt2bV9tc3JzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1NFVF9DUFVJRCBfSU9XKEtWTUlPLCAweDhhLCBzdHJ1Y3Qga3ZtX2NwdWlkKQogI2RlZmluZSBLVk1fU0VUX1NJR05BTF9NQVNLIF9JT1coS1ZNSU8sIDB4OGIsIHN0cnVjdCBrdm1fc2lnbmFsX21hc2spCiAjZGVmaW5lIEtWTV9HRVRfRlBVIF9JT1IoS1ZNSU8sIDB4OGMsIHN0cnVjdCBrdm1fZnB1KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1NFVF9GUFUgX0lPVyhLVk1JTywgMHg4ZCwgc3RydWN0IGt2bV9mcHUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fR0VUX0xBUElDIF9JT1IoS1ZNSU8sIDB4OGUsIHN0cnVjdCBrdm1fbGFwaWNfc3RhdGUpCiAjZGVmaW5lIEtWTV9TRVRfTEFQSUMgX0lPVyhLVk1JTywgMHg4Ziwgc3RydWN0IGt2bV9sYXBpY19zdGF0ZSkKICNkZWZpbmUgS1ZNX1NFVF9DUFVJRDIgX0lPVyhLVk1JTywgMHg5MCwgc3RydWN0IGt2bV9jcHVpZDIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fR0VUX0NQVUlEMiBfSU9XUihLVk1JTywgMHg5MSwgc3RydWN0IGt2bV9jcHVpZDIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fVFBSX0FDQ0VTU19SRVBPUlRJTkcgX0lPV1IoS1ZNSU8sIDB4OTIsIHN0cnVjdCBrdm1fdHByX2FjY2Vzc19jdGwpCiAjZGVmaW5lIEtWTV9TRVRfVkFQSUNfQUREUiBfSU9XKEtWTUlPLCAweDkzLCBzdHJ1Y3Qga3ZtX3ZhcGljX2FkZHIpCiAjZGVmaW5lIEtWTV9TMzkwX0lOVEVSUlVQVCBfSU9XKEtWTUlPLCAweDk0LCBzdHJ1Y3Qga3ZtX3MzOTBfaW50ZXJydXB0KQorI2RlZmluZSBLVk1fUzM5MF9TVE9SRV9TVEFUVVNfTk9BRERSICgtIDF1bCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEtWTV9TMzkwX1NUT1JFX1NUQVRVU19OT0FERFIgKC0xdWwpCi0jZGVmaW5lIEtWTV9TMzkwX1NUT1JFX1NUQVRVU19QUkVGSVhFRCAoLTJ1bCkKKyNkZWZpbmUgS1ZNX1MzOTBfU1RPUkVfU1RBVFVTX1BSRUZJWEVEICgtIDJ1bCkKICNkZWZpbmUgS1ZNX1MzOTBfU1RPUkVfU1RBVFVTIF9JT1coS1ZNSU8sIDB4OTUsIHVuc2lnbmVkIGxvbmcpCiAjZGVmaW5lIEtWTV9TMzkwX1NFVF9JTklUSUFMX1BTVyBfSU9XKEtWTUlPLCAweDk2LCBzdHJ1Y3Qga3ZtX3MzOTBfcHN3KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX1MzOTBfSU5JVElBTF9SRVNFVCBfSU8oS1ZNSU8sIDB4OTcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fR0VUX01QX1NUQVRFIF9JT1IoS1ZNSU8sIDB4OTgsIHN0cnVjdCBrdm1fbXBfc3RhdGUpCiAjZGVmaW5lIEtWTV9TRVRfTVBfU1RBVEUgX0lPVyhLVk1JTywgMHg5OSwgc3RydWN0IGt2bV9tcF9zdGF0ZSkKICNkZWZpbmUgS1ZNX05NSSBfSU8oS1ZNSU8sIDB4OWEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fU0VUX0dVRVNUX0RFQlVHIF9JT1coS1ZNSU8sIDB4OWIsIHN0cnVjdCBrdm1fZ3Vlc3RfZGVidWcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fWDg2X1NFVFVQX01DRSBfSU9XKEtWTUlPLCAweDljLCBfX3U2NCkKICNkZWZpbmUgS1ZNX1g4Nl9HRVRfTUNFX0NBUF9TVVBQT1JURUQgX0lPUihLVk1JTywgMHg5ZCwgX191NjQpCiAjZGVmaW5lIEtWTV9YODZfU0VUX01DRSBfSU9XKEtWTUlPLCAweDllLCBzdHJ1Y3Qga3ZtX3g4Nl9tY2UpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fSUE2NF9WQ1BVX0dFVF9TVEFDSyBfSU9SKEtWTUlPLCAweDlhLCB2b2lkICopCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fSUE2NF9WQ1BVX1NFVF9TVEFDSyBfSU9XKEtWTUlPLCAweDliLCB2b2lkICopCiAjZGVmaW5lIEtWTV9HRVRfVkNQVV9FVkVOVFMgX0lPUihLVk1JTywgMHg5Ziwgc3RydWN0IGt2bV92Y3B1X2V2ZW50cykKICNkZWZpbmUgS1ZNX1NFVF9WQ1BVX0VWRU5UUyBfSU9XKEtWTUlPLCAweGEwLCBzdHJ1Y3Qga3ZtX3ZjcHVfZXZlbnRzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9ERUJVR1JFR1MgX0lPUihLVk1JTywgMHhhMSwgc3RydWN0IGt2bV9kZWJ1Z3JlZ3MpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fU0VUX0RFQlVHUkVHUyBfSU9XKEtWTUlPLCAweGEyLCBzdHJ1Y3Qga3ZtX2RlYnVncmVncykKICNkZWZpbmUgS1ZNX0VOQUJMRV9DQVAgX0lPVyhLVk1JTywgMHhhMywgc3RydWN0IGt2bV9lbmFibGVfY2FwKQogI2RlZmluZSBLVk1fR0VUX1hTQVZFIF9JT1IoS1ZNSU8sIDB4YTQsIHN0cnVjdCBrdm1feHNhdmUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fU0VUX1hTQVZFIF9JT1coS1ZNSU8sIDB4YTUsIHN0cnVjdCBrdm1feHNhdmUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fR0VUX1hDUlMgX0lPUihLVk1JTywgMHhhNiwgc3RydWN0IGt2bV94Y3JzKQogI2RlZmluZSBLVk1fU0VUX1hDUlMgX0lPVyhLVk1JTywgMHhhNywgc3RydWN0IGt2bV94Y3JzKQogI2RlZmluZSBLVk1fRElSVFlfVExCIF9JT1coS1ZNSU8sIDB4YWEsIHN0cnVjdCBrdm1fZGlydHlfdGxiKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0dFVF9PTkVfUkVHIF9JT1coS1ZNSU8sIDB4YWIsIHN0cnVjdCBrdm1fb25lX3JlZykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9TRVRfT05FX1JFRyBfSU9XKEtWTUlPLCAweGFjLCBzdHJ1Y3Qga3ZtX29uZV9yZWcpCiAjZGVmaW5lIEtWTV9LVk1DTE9DS19DVFJMIF9JTyhLVk1JTywgMHhhZCkKICNkZWZpbmUgS1ZNX0FSTV9WQ1BVX0lOSVQgX0lPVyhLVk1JTywgMHhhZSwgc3RydWN0IGt2bV92Y3B1X2luaXQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fQVJNX1BSRUZFUlJFRF9UQVJHRVQgX0lPUihLVk1JTywgMHhhZiwgc3RydWN0IGt2bV92Y3B1X2luaXQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fR0VUX1JFR19MSVNUIF9JT1dSKEtWTUlPLCAweGIwLCBzdHJ1Y3Qga3ZtX3JlZ19saXN0KQogI2RlZmluZSBLVk1fREVWX0FTU0lHTl9FTkFCTEVfSU9NTVUgKDEgPDwgMCkKICNkZWZpbmUgS1ZNX0RFVl9BU1NJR05fUENJXzJfMyAoMSA8PCAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX0RFVl9BU1NJR05fTUFTS19JTlRYICgxIDw8IDIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9hc3NpZ25lZF9wY2lfZGV2IHsKLSBfX3UzMiBhc3NpZ25lZF9kZXZfaWQ7Ci0gX191MzIgYnVzbnI7CisgIF9fdTMyIGFzc2lnbmVkX2Rldl9pZDsKKyAgX191MzIgYnVzbnI7CisgIF9fdTMyIGRldmZuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkZXZmbjsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBzZWducjsKLSB1bmlvbiB7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBzZWducjsKKyAgdW5pb24geworICAgIF9fdTMyIHJlc2VydmVkWzExXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbMTFdOwotIH07CisgIH07CiB9OwogI2RlZmluZSBLVk1fREVWX0lSUV9IT1NUX0lOVFggKDEgPDwgMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9ERVZfSVJRX0hPU1RfTVNJICgxIDw8IDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fREVWX0lSUV9IT1NUX01TSVggKDEgPDwgMikKICNkZWZpbmUgS1ZNX0RFVl9JUlFfR1VFU1RfSU5UWCAoMSA8PCA4KQogI2RlZmluZSBLVk1fREVWX0lSUV9HVUVTVF9NU0kgKDEgPDwgOSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEtWTV9ERVZfSVJRX0dVRVNUX01TSVggKDEgPDwgMTApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBLVk1fREVWX0lSUV9IT1NUX01BU0sgMHgwMGZmCiAjZGVmaW5lIEtWTV9ERVZfSVJRX0dVRVNUX01BU0sgMHhmZjAwCiBzdHJ1Y3Qga3ZtX2Fzc2lnbmVkX2lycSB7CisgIF9fdTMyIGFzc2lnbmVkX2Rldl9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYXNzaWduZWRfZGV2X2lkOwotIF9fdTMyIGhvc3RfaXJxOwotIF9fdTMyIGd1ZXN0X2lycTsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgaG9zdF9pcnE7CisgIF9fdTMyIGd1ZXN0X2lycTsKKyAgX191MzIgZmxhZ3M7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIF9fdTMyIHJlc2VydmVkWzEyXTsKLSB9OworICAgIF9fdTMyIHJlc2VydmVkWzEyXTsKKyAgfTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGt2bV9hc3NpZ25lZF9tc2l4X25yIHsKLSBfX3UzMiBhc3NpZ25lZF9kZXZfaWQ7Ci0gX191MTYgZW50cnlfbnI7Ci0gX191MTYgcGFkZGluZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGFzc2lnbmVkX2Rldl9pZDsKKyAgX191MTYgZW50cnlfbnI7CisgIF9fdTE2IHBhZGRpbmc7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgS1ZNX01BWF9NU0lYX1BFUl9ERVYgMjU2CiBzdHJ1Y3Qga3ZtX2Fzc2lnbmVkX21zaXhfZW50cnkgewotIF9fdTMyIGFzc2lnbmVkX2Rldl9pZDsKKyAgX191MzIgYXNzaWduZWRfZGV2X2lkOworICBfX3UzMiBnc2k7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGdzaTsKLSBfX3UxNiBlbnRyeTsKLSBfX3UxNiBwYWRkaW5nWzNdOworICBfX3UxNiBlbnRyeTsKKyAgX191MTYgcGFkZGluZ1szXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rdm1fcGFyYS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9rdm1fcGFyYS5oCmluZGV4IGQ5NzM5OTYuLmJlMDViODUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgva3ZtX3BhcmEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2t2bV9wYXJhLmgKQEAgLTI5LDYgKzI5LDEwIEBACiAjZGVmaW5lIEtWTV9IQ19GRUFUVVJFUyAzCiAjZGVmaW5lIEtWTV9IQ19QUENfTUFQX01BR0lDX1BBR0UgNAogI2RlZmluZSBLVk1fSENfS0lDS19DUFUgNQotI2luY2x1ZGUgPGFzbS9rdm1fcGFyYS5oPgorI2RlZmluZSBLVk1fSENfTUlQU19HRVRfQ0xPQ0tfRlJFUSA2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBLVk1fSENfTUlQU19FWElUX1ZNIDcKKyNkZWZpbmUgS1ZNX0hDX01JUFNfQ09OU09MRV9PVVRQVVQgOAorI2luY2x1ZGUgPGFzbS9rdm1fcGFyYS5oPgogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9sMnRwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2wydHAuaAppbmRleCA4MThjZGE0Li40ZWFmN2FkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2wydHAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2wydHAuaApAQCAtMjYsMTM0ICsyNiwxMzMgQEAKICNkZWZpbmUgX19TT0NLX1NJWkVfXyAxNgogc3RydWN0IHNvY2thZGRyX2wydHBpcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3NhX2ZhbWlseV90IGwydHBfZmFtaWx5OwotIF9fYmUxNiBsMnRwX3VudXNlZDsKLSBzdHJ1Y3QgaW5fYWRkciBsMnRwX2FkZHI7Ci0gX191MzIgbDJ0cF9jb25uX2lkOworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBsMnRwX2ZhbWlseTsKKyAgX19iZTE2IGwydHBfdW51c2VkOworICBzdHJ1Y3QgaW5fYWRkciBsMnRwX2FkZHI7CisgIF9fdTMyIGwydHBfY29ubl9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBfX3BhZFtzaXplb2Yoc3RydWN0IHNvY2thZGRyKSAtCi0gc2l6ZW9mKF9fa2VybmVsX3NhX2ZhbWlseV90KSAtCi0gc2l6ZW9mKF9fYmUxNikgLSBzaXplb2Yoc3RydWN0IGluX2FkZHIpIC0KLSBzaXplb2YoX191MzIpXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGNoYXIgX19wYWRbc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcikgLSBzaXplb2YoX19rZXJuZWxfc2FfZmFtaWx5X3QpIC0gc2l6ZW9mKF9fYmUxNikgLSBzaXplb2Yoc3RydWN0IGluX2FkZHIpIC0gc2l6ZW9mKF9fdTMyKV07CiB9Owogc3RydWN0IHNvY2thZGRyX2wydHBpcDYgewotIF9fa2VybmVsX3NhX2ZhbWlseV90IGwydHBfZmFtaWx5OwotIF9fYmUxNiBsMnRwX3VudXNlZDsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3QgbDJ0cF9mYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBsMnRwX2Zsb3dpbmZvOwotIHN0cnVjdCBpbjZfYWRkciBsMnRwX2FkZHI7Ci0gX191MzIgbDJ0cF9zY29wZV9pZDsKLSBfX3UzMiBsMnRwX2Nvbm5faWQ7CisgIF9fYmUxNiBsMnRwX3VudXNlZDsKKyAgX19iZTMyIGwydHBfZmxvd2luZm87CisgIHN0cnVjdCBpbjZfYWRkciBsMnRwX2FkZHI7CisgIF9fdTMyIGwydHBfc2NvcGVfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBsMnRwX2Nvbm5faWQ7CiB9OwogZW51bSB7Ci0gTDJUUF9DTURfTk9PUCwKLSBMMlRQX0NNRF9UVU5ORUxfQ1JFQVRFLAorICBMMlRQX0NNRF9OT09QLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMMlRQX0NNRF9UVU5ORUxfREVMRVRFLAotIEwyVFBfQ01EX1RVTk5FTF9NT0RJRlksCi0gTDJUUF9DTURfVFVOTkVMX0dFVCwKLSBMMlRQX0NNRF9TRVNTSU9OX0NSRUFURSwKKyAgTDJUUF9DTURfVFVOTkVMX0NSRUFURSwKKyAgTDJUUF9DTURfVFVOTkVMX0RFTEVURSwKKyAgTDJUUF9DTURfVFVOTkVMX01PRElGWSwKKyAgTDJUUF9DTURfVFVOTkVMX0dFVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTDJUUF9DTURfU0VTU0lPTl9ERUxFVEUsCi0gTDJUUF9DTURfU0VTU0lPTl9NT0RJRlksCi0gTDJUUF9DTURfU0VTU0lPTl9HRVQsCi0gX19MMlRQX0NNRF9NQVgsCisgIEwyVFBfQ01EX1NFU1NJT05fQ1JFQVRFLAorICBMMlRQX0NNRF9TRVNTSU9OX0RFTEVURSwKKyAgTDJUUF9DTURfU0VTU0lPTl9NT0RJRlksCisgIEwyVFBfQ01EX1NFU1NJT05fR0VULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19MMlRQX0NNRF9NQVgsCiB9OwogI2RlZmluZSBMMlRQX0NNRF9NQVggKF9fTDJUUF9DTURfTUFYIC0gMSkKIGVudW0gewotIEwyVFBfQVRUUl9OT05FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMMlRQX0FUVFJfUFdfVFlQRSwKLSBMMlRQX0FUVFJfRU5DQVBfVFlQRSwKLSBMMlRQX0FUVFJfT0ZGU0VULAotIEwyVFBfQVRUUl9EQVRBX1NFUSwKKyAgTDJUUF9BVFRSX05PTkUsCisgIEwyVFBfQVRUUl9QV19UWVBFLAorICBMMlRQX0FUVFJfRU5DQVBfVFlQRSwKKyAgTDJUUF9BVFRSX09GRlNFVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTDJUUF9BVFRSX0wyU1BFQ19UWVBFLAotIEwyVFBfQVRUUl9MMlNQRUNfTEVOLAotIEwyVFBfQVRUUl9QUk9UT19WRVJTSU9OLAotIEwyVFBfQVRUUl9JRk5BTUUsCisgIEwyVFBfQVRUUl9EQVRBX1NFUSwKKyAgTDJUUF9BVFRSX0wyU1BFQ19UWVBFLAorICBMMlRQX0FUVFJfTDJTUEVDX0xFTiwKKyAgTDJUUF9BVFRSX1BST1RPX1ZFUlNJT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEwyVFBfQVRUUl9DT05OX0lELAotIEwyVFBfQVRUUl9QRUVSX0NPTk5fSUQsCi0gTDJUUF9BVFRSX1NFU1NJT05fSUQsCi0gTDJUUF9BVFRSX1BFRVJfU0VTU0lPTl9JRCwKKyAgTDJUUF9BVFRSX0lGTkFNRSwKKyAgTDJUUF9BVFRSX0NPTk5fSUQsCisgIEwyVFBfQVRUUl9QRUVSX0NPTk5fSUQsCisgIEwyVFBfQVRUUl9TRVNTSU9OX0lELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMMlRQX0FUVFJfVURQX0NTVU0sCi0gTDJUUF9BVFRSX1ZMQU5fSUQsCi0gTDJUUF9BVFRSX0NPT0tJRSwKLSBMMlRQX0FUVFJfUEVFUl9DT09LSUUsCisgIEwyVFBfQVRUUl9QRUVSX1NFU1NJT05fSUQsCisgIEwyVFBfQVRUUl9VRFBfQ1NVTSwKKyAgTDJUUF9BVFRSX1ZMQU5fSUQsCisgIEwyVFBfQVRUUl9DT09LSUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEwyVFBfQVRUUl9ERUJVRywKLSBMMlRQX0FUVFJfUkVDVl9TRVEsCi0gTDJUUF9BVFRSX1NFTkRfU0VRLAotIEwyVFBfQVRUUl9MTlNfTU9ERSwKKyAgTDJUUF9BVFRSX1BFRVJfQ09PS0lFLAorICBMMlRQX0FUVFJfREVCVUcsCisgIEwyVFBfQVRUUl9SRUNWX1NFUSwKKyAgTDJUUF9BVFRSX1NFTkRfU0VRLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMMlRQX0FUVFJfVVNJTkdfSVBTRUMsCi0gTDJUUF9BVFRSX1JFQ1ZfVElNRU9VVCwKLSBMMlRQX0FUVFJfRkQsCi0gTDJUUF9BVFRSX0lQX1NBRERSLAorICBMMlRQX0FUVFJfTE5TX01PREUsCisgIEwyVFBfQVRUUl9VU0lOR19JUFNFQywKKyAgTDJUUF9BVFRSX1JFQ1ZfVElNRU9VVCwKKyAgTDJUUF9BVFRSX0ZELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMMlRQX0FUVFJfSVBfREFERFIsCi0gTDJUUF9BVFRSX1VEUF9TUE9SVCwKLSBMMlRQX0FUVFJfVURQX0RQT1JULAotIEwyVFBfQVRUUl9NVFUsCisgIEwyVFBfQVRUUl9JUF9TQUREUiwKKyAgTDJUUF9BVFRSX0lQX0RBRERSLAorICBMMlRQX0FUVFJfVURQX1NQT1JULAorICBMMlRQX0FUVFJfVURQX0RQT1JULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMMlRQX0FUVFJfTVJVLAotIEwyVFBfQVRUUl9TVEFUUywKLSBMMlRQX0FUVFJfSVA2X1NBRERSLAotIEwyVFBfQVRUUl9JUDZfREFERFIsCisgIEwyVFBfQVRUUl9NVFUsCisgIEwyVFBfQVRUUl9NUlUsCisgIEwyVFBfQVRUUl9TVEFUUywKKyAgTDJUUF9BVFRSX0lQNl9TQUREUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19MMlRQX0FUVFJfTUFYLAorICBMMlRQX0FUVFJfSVA2X0RBRERSLAorICBMMlRQX0FUVFJfVURQX1pFUk9fQ1NVTTZfVFgsCisgIEwyVFBfQVRUUl9VRFBfWkVST19DU1VNNl9SWCwKKyAgX19MMlRQX0FUVFJfTUFYLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEwyVFBfQVRUUl9NQVggKF9fTDJUUF9BVFRSX01BWCAtIDEpCiBlbnVtIHsKKyAgTDJUUF9BVFRSX1NUQVRTX05PTkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEwyVFBfQVRUUl9TVEFUU19OT05FLAotIEwyVFBfQVRUUl9UWF9QQUNLRVRTLAotIEwyVFBfQVRUUl9UWF9CWVRFUywKLSBMMlRQX0FUVFJfVFhfRVJST1JTLAorICBMMlRQX0FUVFJfVFhfUEFDS0VUUywKKyAgTDJUUF9BVFRSX1RYX0JZVEVTLAorICBMMlRQX0FUVFJfVFhfRVJST1JTLAorICBMMlRQX0FUVFJfUlhfUEFDS0VUUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTDJUUF9BVFRSX1JYX1BBQ0tFVFMsCi0gTDJUUF9BVFRSX1JYX0JZVEVTLAotIEwyVFBfQVRUUl9SWF9TRVFfRElTQ0FSRFMsCi0gTDJUUF9BVFRSX1JYX09PU19QQUNLRVRTLAorICBMMlRQX0FUVFJfUlhfQllURVMsCisgIEwyVFBfQVRUUl9SWF9TRVFfRElTQ0FSRFMsCisgIEwyVFBfQVRUUl9SWF9PT1NfUEFDS0VUUywKKyAgTDJUUF9BVFRSX1JYX0VSUk9SUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTDJUUF9BVFRSX1JYX0VSUk9SUywKLSBfX0wyVFBfQVRUUl9TVEFUU19NQVgsCisgIF9fTDJUUF9BVFRSX1NUQVRTX01BWCwKIH07CiAjZGVmaW5lIEwyVFBfQVRUUl9TVEFUU19NQVggKF9fTDJUUF9BVFRSX1NUQVRTX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBsMnRwX3B3dHlwZSB7Ci0gTDJUUF9QV1RZUEVfTk9ORSA9IDB4MDAwMCwKLSBMMlRQX1BXVFlQRV9FVEhfVkxBTiA9IDB4MDAwNCwKLSBMMlRQX1BXVFlQRV9FVEggPSAweDAwMDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEwyVFBfUFdUWVBFX1BQUCA9IDB4MDAwNywKLSBMMlRQX1BXVFlQRV9QUFBfQUMgPSAweDAwMDgsCi0gTDJUUF9QV1RZUEVfSVAgPSAweDAwMGIsCi0gX19MMlRQX1BXVFlQRV9NQVgKKyAgTDJUUF9QV1RZUEVfTk9ORSA9IDB4MDAwMCwKKyAgTDJUUF9QV1RZUEVfRVRIX1ZMQU4gPSAweDAwMDQsCisgIEwyVFBfUFdUWVBFX0VUSCA9IDB4MDAwNSwKKyAgTDJUUF9QV1RZUEVfUFBQID0gMHgwMDA3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTDJUUF9QV1RZUEVfUFBQX0FDID0gMHgwMDA4LAorICBMMlRQX1BXVFlQRV9JUCA9IDB4MDAwYiwKKyAgX19MMlRQX1BXVFlQRV9NQVgKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBsMnRwX2wyc3BlY190eXBlIHsKLSBMMlRQX0wyU1BFQ1RZUEVfTk9ORSwKLSBMMlRQX0wyU1BFQ1RZUEVfREVGQVVMVCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEwyVFBfTDJTUEVDVFlQRV9OT05FLAorICBMMlRQX0wyU1BFQ1RZUEVfREVGQVVMVCwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBsMnRwX2VuY2FwX3R5cGUgewotIEwyVFBfRU5DQVBUWVBFX1VEUCwKLSBMMlRQX0VOQ0FQVFlQRV9JUCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEwyVFBfRU5DQVBUWVBFX1VEUCwKKyAgTDJUUF9FTkNBUFRZUEVfSVAsCiB9OwotZW51bSBsMnRwX3NlcW1vZGUgewotIEwyVFBfU0VRX05PTkUgPSAwLAotIEwyVFBfU0VRX0lQID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTDJUUF9TRVFfQUxMID0gMiwKK2VudW0gbDJ0cF9zZXFtb2RlIHsKKyAgTDJUUF9TRVFfTk9ORSA9IDAsCisgIEwyVFBfU0VRX0lQID0gMSwKKyAgTDJUUF9TRVFfQUxMID0gMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBMMlRQX0dFTkxfTkFNRSAibDJ0cCIKICNkZWZpbmUgTDJUUF9HRU5MX1ZFUlNJT04gMHgxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9saWJjLWNvbXBhdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9saWJjLWNvbXBhdC5oCmluZGV4IDgyNmI3NjMuLmI2NmViZTIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbGliYy1jb21wYXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2xpYmMtY29tcGF0LmgKQEAgLTMyLDIyICszMiwzMyBAQAogI2RlZmluZSBfX1VBUElfREVGX0lQVjZfTVJFUSAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX1VBUElfREVGX0lQUFJPVE9fVjYgMAorI2RlZmluZSBfX1VBUElfREVGX0lQVjZfT1BUSU9OUyAwCiAjZWxzZQogI2RlZmluZSBfX1VBUElfREVGX0lONl9BRERSIDEKLSNkZWZpbmUgX19VQVBJX0RFRl9JTjZfQUREUl9BTFQgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgX19VQVBJX0RFRl9JTjZfQUREUl9BTFQgMQogI2RlZmluZSBfX1VBUElfREVGX1NPQ0tBRERSX0lONiAxCiAjZGVmaW5lIF9fVUFQSV9ERUZfSVBWNl9NUkVRIDEKICNkZWZpbmUgX19VQVBJX0RFRl9JUFBST1RPX1Y2IDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIF9fVUFQSV9ERUZfSVBWNl9PUFRJT05TIDEKICNlbmRpZgorI2lmZGVmIF9TWVNfWEFUVFJfSAorI2RlZmluZSBfX1VBUElfREVGX1hBVFRSIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZWxzZQorI2RlZmluZSBfX1VBUElfREVGX1hBVFRSIDEKKyNlbmRpZgorI2Vsc2UKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fVUFQSV9ERUZfSU42X0FERFIgMQogI2RlZmluZSBfX1VBUElfREVGX0lONl9BRERSX0FMVCAxCiAjZGVmaW5lIF9fVUFQSV9ERUZfU09DS0FERFJfSU42IDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fVUFQSV9ERUZfSVBWNl9NUkVRIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fVUFQSV9ERUZfSVBQUk9UT19WNiAxCi0jZW5kaWYKKyNkZWZpbmUgX19VQVBJX0RFRl9JUFY2X09QVElPTlMgMQorI2RlZmluZSBfX1VBUElfREVGX1hBVFRSIDEKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9sbGMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbGxjLmgKaW5kZXggMGU3ZGIwMC4uNzAwN2I1NyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9sbGMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2xsYy5oCkBAIC0yMiw3NSArMjIsNzMgQEAKICNkZWZpbmUgX19MTENfU09DS19TSVpFX18gMTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc29ja2FkZHJfbGxjIHsKLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzbGxjX2ZhbWlseTsKLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzbGxjX2FycGhyZDsKLSB1bnNpZ25lZCBjaGFyIHNsbGNfdGVzdDsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3Qgc2xsY19mYW1pbHk7CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHNsbGNfYXJwaHJkOworICB1bnNpZ25lZCBjaGFyIHNsbGNfdGVzdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBzbGxjX3hpZDsKLSB1bnNpZ25lZCBjaGFyIHNsbGNfdWE7Ci0gdW5zaWduZWQgY2hhciBzbGxjX3NhcDsKLSB1bnNpZ25lZCBjaGFyIHNsbGNfbWFjW0lGSFdBRERSTEVOXTsKKyAgdW5zaWduZWQgY2hhciBzbGxjX3hpZDsKKyAgdW5zaWduZWQgY2hhciBzbGxjX3VhOworICB1bnNpZ25lZCBjaGFyIHNsbGNfc2FwOworICB1bnNpZ25lZCBjaGFyIHNsbGNfbWFjW0lGSFdBRERSTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBfX3BhZFtfX0xMQ19TT0NLX1NJWkVfXyAtCi0gc2l6ZW9mKF9fa2VybmVsX3NhX2ZhbWlseV90KSAqIDIgLQotIHNpemVvZih1bnNpZ25lZCBjaGFyKSAqIDQgLSBJRkhXQUREUkxFTl07CisgIHVuc2lnbmVkIGNoYXIgX19wYWRbX19MTENfU09DS19TSVpFX18gLSBzaXplb2YoX19rZXJuZWxfc2FfZmFtaWx5X3QpICogMiAtIHNpemVvZih1bnNpZ25lZCBjaGFyKSAqIDQgLSBJRkhXQUREUkxFTl07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbGxjX3NvY2tvcHRzIHsKLSBMTENfT1BUX1VOS05PV04gPSAwLAotIExMQ19PUFRfUkVUUlksCi0gTExDX09QVF9TSVpFLAorICBMTENfT1BUX1VOS05PV04gPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMTENfT1BUX0FDS19UTVJfRVhQLAotIExMQ19PUFRfUF9UTVJfRVhQLAotIExMQ19PUFRfUkVKX1RNUl9FWFAsCi0gTExDX09QVF9CVVNZX1RNUl9FWFAsCisgIExMQ19PUFRfUkVUUlksCisgIExMQ19PUFRfU0laRSwKKyAgTExDX09QVF9BQ0tfVE1SX0VYUCwKKyAgTExDX09QVF9QX1RNUl9FWFAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExMQ19PUFRfVFhfV0lOLAotIExMQ19PUFRfUlhfV0lOLAotIExMQ19PUFRfUEtUSU5GTywKLSBMTENfT1BUX01BWAorICBMTENfT1BUX1JFSl9UTVJfRVhQLAorICBMTENfT1BUX0JVU1lfVE1SX0VYUCwKKyAgTExDX09QVF9UWF9XSU4sCisgIExMQ19PUFRfUlhfV0lOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTExDX09QVF9QS1RJTkZPLAorICBMTENfT1BUX01BWAogfTsKICNkZWZpbmUgTExDX09QVF9NQVhfUkVUUlkgMTAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMTENfT1BUX01BWF9TSVpFIDQxOTYKICNkZWZpbmUgTExDX09QVF9NQVhfV0lOIDEyNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTExDX09QVF9NQVhfQUNLX1RNUl9FWFAgNjAKICNkZWZpbmUgTExDX09QVF9NQVhfUF9UTVJfRVhQIDYwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMTENfT1BUX01BWF9SRUpfVE1SX0VYUCA2MAogI2RlZmluZSBMTENfT1BUX01BWF9CVVNZX1RNUl9FWFAgNjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExMQ19TQVBfTlVMTCAweDAwCiAjZGVmaW5lIExMQ19TQVBfTExDIDB4MDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExMQ19TQVBfU05BIDB4MDQKICNkZWZpbmUgTExDX1NBUF9QTk0gMHgwRQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTExDX1NBUF9JUCAweDA2CiAjZGVmaW5lIExMQ19TQVBfQlNQQU4gMHg0MgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTExDX1NBUF9NTVMgMHg0RQogI2RlZmluZSBMTENfU0FQXzgyMDggMHg3RQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTExDX1NBUF8zQ09NIDB4ODAKICNkZWZpbmUgTExDX1NBUF9QUk8gMHg4RQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTExDX1NBUF9TTkFQIDB4QUEKICNkZWZpbmUgTExDX1NBUF9CQU5ZQU4gMHhCQwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTExDX1NBUF9JUFggMHhFMAogI2RlZmluZSBMTENfU0FQX05FVEJFVUkgMHhGMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTExDX1NBUF9MQU5NR1IgMHhGNAogI2RlZmluZSBMTENfU0FQX0lNUEwgMHhGOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTExDX1NBUF9ESVNDIDB4RkMKICNkZWZpbmUgTExDX1NBUF9PU0kgMHhGRQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTExDX1NBUF9MQVIgMHhEQwogI2RlZmluZSBMTENfU0FQX1JNIDB4RDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIExMQ19TQVBfR0xPQkFMIDB4RkYKIHN0cnVjdCBsbGNfcGt0aW5mbyB7Ci0gaW50IGxwaV9pZmluZGV4OwotIHVuc2lnbmVkIGNoYXIgbHBpX3NhcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBscGlfbWFjW0lGSFdBRERSTEVOXTsKKyAgaW50IGxwaV9pZmluZGV4OworICB1bnNpZ25lZCBjaGFyIGxwaV9zYXA7CisgIHVuc2lnbmVkIGNoYXIgbHBpX21hY1tJRkhXQUREUkxFTl07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9sb29wLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2xvb3AuaAppbmRleCAxNGE0NjAyLi5jMDg4MWY0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2xvb3AuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L2xvb3AuaApAQCAtMjIsNDggKzIyLDQ4IEBACiAjZGVmaW5lIExPX0tFWV9TSVpFIDMyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gTE9fRkxBR1NfUkVBRF9PTkxZID0gMSwKLSBMT19GTEFHU19BVVRPQ0xFQVIgPSA0LAotIExPX0ZMQUdTX1BBUlRTQ0FOID0gOCwKKyAgTE9fRkxBR1NfUkVBRF9PTkxZID0gMSwKKyAgTE9fRkxBR1NfQVVUT0NMRUFSID0gNCwKKyAgTE9fRkxBR1NfUEFSVFNDQU4gPSA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjaW5jbHVkZSA8YXNtL3Bvc2l4X3R5cGVzLmg+CiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBsb29wX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbG9fbnVtYmVyOwotIF9fa2VybmVsX29sZF9kZXZfdCBsb19kZXZpY2U7Ci0gdW5zaWduZWQgbG9uZyBsb19pbm9kZTsKLSBfX2tlcm5lbF9vbGRfZGV2X3QgbG9fcmRldmljZTsKKyAgaW50IGxvX251bWJlcjsKKyAgX19rZXJuZWxfb2xkX2Rldl90IGxvX2RldmljZTsKKyAgdW5zaWduZWQgbG9uZyBsb19pbm9kZTsKKyAgX19rZXJuZWxfb2xkX2Rldl90IGxvX3JkZXZpY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBsb19vZmZzZXQ7Ci0gaW50IGxvX2VuY3J5cHRfdHlwZTsKLSBpbnQgbG9fZW5jcnlwdF9rZXlfc2l6ZTsKLSBpbnQgbG9fZmxhZ3M7CisgIGludCBsb19vZmZzZXQ7CisgIGludCBsb19lbmNyeXB0X3R5cGU7CisgIGludCBsb19lbmNyeXB0X2tleV9zaXplOworICBpbnQgbG9fZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbG9fbmFtZVtMT19OQU1FX1NJWkVdOwotIHVuc2lnbmVkIGNoYXIgbG9fZW5jcnlwdF9rZXlbTE9fS0VZX1NJWkVdOwotIHVuc2lnbmVkIGxvbmcgbG9faW5pdFsyXTsKLSBjaGFyIHJlc2VydmVkWzRdOworICBjaGFyIGxvX25hbWVbTE9fTkFNRV9TSVpFXTsKKyAgdW5zaWduZWQgY2hhciBsb19lbmNyeXB0X2tleVtMT19LRVlfU0laRV07CisgIHVuc2lnbmVkIGxvbmcgbG9faW5pdFsyXTsKKyAgY2hhciByZXNlcnZlZFs0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGxvb3BfaW5mbzY0IHsKLSBfX3U2NCBsb19kZXZpY2U7Ci0gX191NjQgbG9faW5vZGU7CisgIF9fdTY0IGxvX2RldmljZTsKKyAgX191NjQgbG9faW5vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGxvX3JkZXZpY2U7Ci0gX191NjQgbG9fb2Zmc2V0OwotIF9fdTY0IGxvX3NpemVsaW1pdDsKLSBfX3UzMiBsb19udW1iZXI7CisgIF9fdTY0IGxvX3JkZXZpY2U7CisgIF9fdTY0IGxvX29mZnNldDsKKyAgX191NjQgbG9fc2l6ZWxpbWl0OworICBfX3UzMiBsb19udW1iZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxvX2VuY3J5cHRfdHlwZTsKLSBfX3UzMiBsb19lbmNyeXB0X2tleV9zaXplOwotIF9fdTMyIGxvX2ZsYWdzOwotIF9fdTggbG9fZmlsZV9uYW1lW0xPX05BTUVfU0laRV07CisgIF9fdTMyIGxvX2VuY3J5cHRfdHlwZTsKKyAgX191MzIgbG9fZW5jcnlwdF9rZXlfc2l6ZTsKKyAgX191MzIgbG9fZmxhZ3M7CisgIF9fdTggbG9fZmlsZV9uYW1lW0xPX05BTUVfU0laRV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbG9fY3J5cHRfbmFtZVtMT19OQU1FX1NJWkVdOwotIF9fdTggbG9fZW5jcnlwdF9rZXlbTE9fS0VZX1NJWkVdOwotIF9fdTY0IGxvX2luaXRbMl07CisgIF9fdTggbG9fY3J5cHRfbmFtZVtMT19OQU1FX1NJWkVdOworICBfX3U4IGxvX2VuY3J5cHRfa2V5W0xPX0tFWV9TSVpFXTsKKyAgX191NjQgbG9faW5pdFsyXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMT19DUllQVF9OT05FIDAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWFqb3IuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWFqb3IuaAppbmRleCBkMDdkMDY1Li5iMmE5NThiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21ham9yLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tYWpvci5oCkBAIC0xNjksNyArMTY5LDcgQEAKICNkZWZpbmUgU0NTSV9ESVNLMTVfTUFKT1IgMTM1CiAjZGVmaW5lIFVOSVg5OF9QVFlfTUFTVEVSX01BSk9SIDEyOAogI2RlZmluZSBVTklYOThfUFRZX01BSk9SX0NPVU5UIDgKLSNkZWZpbmUgVU5JWDk4X1BUWV9TTEFWRV9NQUpPUiAoVU5JWDk4X1BUWV9NQVNURVJfTUFKT1IrVU5JWDk4X1BUWV9NQUpPUl9DT1VOVCkKKyNkZWZpbmUgVU5JWDk4X1BUWV9TTEFWRV9NQUpPUiAoVU5JWDk4X1BUWV9NQVNURVJfTUFKT1IgKyBVTklYOThfUFRZX01BSk9SX0NPVU5UKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFJCRF9NQUpPUiAxNDcKICNkZWZpbmUgUlRGX01BSk9SIDE1MApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tYXBfdG9fN3NlZ21lbnQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWFwX3RvXzdzZWdtZW50LmgKaW5kZXggOTM4MjljZS4uMTU1NmNjNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tYXBfdG9fN3NlZ21lbnQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21hcF90b183c2VnbWVudC5oCkBAIC0zMSwyNCArMzEsMjQgQEAKICNkZWZpbmUgQklUX1NFRzdfUkVTRVJWRUQgNwogc3RydWN0IHNlZzdfY29udmVyc2lvbl9tYXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHRhYmxlWzEyOF07CisgIHVuc2lnbmVkIGNoYXIgdGFibGVbMTI4XTsKIH07Ci0jZGVmaW5lIFNFRzdfQ09OVkVSU0lPTl9NQVAoX25hbWUsIF9tYXApICAgc3RydWN0IHNlZzdfY29udmVyc2lvbl9tYXAgX25hbWUgPSB7IC50YWJsZSA9IHsgX21hcCB9IH0KKyNkZWZpbmUgU0VHN19DT05WRVJTSU9OX01BUChfbmFtZSxfbWFwKSBzdHJ1Y3Qgc2VnN19jb252ZXJzaW9uX21hcCBfbmFtZSA9IHsudGFibGUgPSB7IF9tYXAgfSB9CiAjZGVmaW5lIE1BUF9UT19TRUc3X1NZU0ZTX0ZJTEUgIm1hcF9zZWc3IgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX1NFRzcobCxhLGIsYyxkLGUsZixnKSAgICggYTw8QklUX1NFRzdfQSB8IGI8PEJJVF9TRUc3X0IgfCBjPDxCSVRfU0VHN19DIHwgZDw8QklUX1NFRzdfRCB8ICAgZTw8QklUX1NFRzdfRSB8IGY8PEJJVF9TRUc3X0YgfCBnPDxCSVRfU0VHN19HICkKLSNkZWZpbmUgX01BUF8wXzMyX0FTQ0lJX1NFRzdfTk9OX1BSSU5UQUJMRSAgIDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLAotI2RlZmluZSBfTUFQXzMzXzQ3X0FTQ0lJX1NFRzdfU1lNQk9MICAgX1NFRzcoJyEnLDAsMCwwLDAsMSwxLDApLCBfU0VHNygnIicsMCwxLDAsMCwwLDEsMCksIF9TRUc3KCcjJywwLDEsMSwwLDEsMSwwKSwgIF9TRUc3KCckJywxLDAsMSwxLDAsMSwxKSwgX1NFRzcoJyUnLDAsMCwxLDAsMCwxLDApLCBfU0VHNygnJicsMSwwLDEsMSwxLDEsMSksICBfU0VHNygnXCcnLDAsMCwwLDAsMCwxLDApLF9TRUc3KCcoJywxLDAsMCwxLDEsMSwwKSwgX1NFRzcoJyknLDEsMSwxLDEsMCwwLDApLCAgX1NFRzcoJyonLDAsMSwxLDAsMSwxLDEpLCBfU0VHNygnKycsMCwxLDEsMCwwLDAsMSksIF9TRUc3KCcsJywwLDAsMCwwLDEsMCwwKSwgIF9TRUc3KCctJywwLDAsMCwwLDAsMCwxKSwgX1NFRzcoJy4nLDAsMCwwLDAsMSwwLDApLCBfU0VHNygnLycsMCwxLDAsMCwxLDAsMSksCi0jZGVmaW5lIF9NQVBfNDhfNTdfQVNDSUlfU0VHN19OVU1FUklDICAgX1NFRzcoJzAnLDEsMSwxLDEsMSwxLDApLCBfU0VHNygnMScsMCwxLDEsMCwwLDAsMCksIF9TRUc3KCcyJywxLDEsMCwxLDEsMCwxKSwgIF9TRUc3KCczJywxLDEsMSwxLDAsMCwxKSwgX1NFRzcoJzQnLDAsMSwxLDAsMCwxLDEpLCBfU0VHNygnNScsMSwwLDEsMSwwLDEsMSksICBfU0VHNygnNicsMSwwLDEsMSwxLDEsMSksIF9TRUc3KCc3JywxLDEsMSwwLDAsMCwwKSwgX1NFRzcoJzgnLDEsMSwxLDEsMSwxLDEpLCAgX1NFRzcoJzknLDEsMSwxLDEsMCwxLDEpLAorI2RlZmluZSBfU0VHNyhsLGEsYixjLGQsZSxmLGcpIChhIDw8IEJJVF9TRUc3X0EgfCBiIDw8IEJJVF9TRUc3X0IgfCBjIDw8IEJJVF9TRUc3X0MgfCBkIDw8IEJJVF9TRUc3X0QgfCBlIDw8IEJJVF9TRUc3X0UgfCBmIDw8IEJJVF9TRUc3X0YgfCBnIDw8IEJJVF9TRUc3X0cpCisjZGVmaW5lIF9NQVBfMF8zMl9BU0NJSV9TRUc3X05PTl9QUklOVEFCTEUgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwKKyNkZWZpbmUgX01BUF8zM180N19BU0NJSV9TRUc3X1NZTUJPTCBfU0VHNygnIScsIDAsIDAsIDAsIDAsIDEsIDEsIDApLCBfU0VHNygnIicsIDAsIDEsIDAsIDAsIDAsIDEsIDApLCBfU0VHNygnIycsIDAsIDEsIDEsIDAsIDEsIDEsIDApLCBfU0VHNygnJCcsIDEsIDAsIDEsIDEsIDAsIDEsIDEpLCBfU0VHNygnJScsIDAsIDAsIDEsIDAsIDAsIDEsIDApLCBfU0VHNygnJicsIDEsIDAsIDEsIDEsIDEsIDEsIDEpLCBfU0VHNygnXCcnLCAwLCAwLCAwLCAwLCAwLCAxLCAwKSwgX1NFRzcoJygnLCAxLCAwLCAwLCAxLCAxLCAxLCAwKSwgX1NFRzcoJyknLCAxLCAxLCAxLCAxLCAwLCAwLCAwKSwgX1NFRzcoJyonLCAwLCAxLCAxLCAwLCAxLCAxLCAxKSwgX1NFRzcoJysnLCAwLCAxLCAxLCAwLCAwLCAwLCAxKSwgX1NFRzcoJywnLCAwLCAwLCAwLCAwLCAxLCAwLCAwKSwgX1NFRzcoJy0nLCAwLCAwLCAwLCAwLCAwLCAwLCAxKSwgX1NFRzcoJy4nLCAwLCAwLCAwLCAwLCAxLCAwLCAwKSwgX1NFRzcoJy8nLCAwLCAxLCAwLCAwLCAxLCAwLCAxKSwKKyNkZWZpbmUgX01BUF80OF81N19BU0NJSV9TRUc3X05VTUVSSUMgX1NFRzcoJzAnLCAxLCAxLCAxLCAxLCAxLCAxLCAwKSwgX1NFRzcoJzEnLCAwLCAxLCAxLCAwLCAwLCAwLCAwKSwgX1NFRzcoJzInLCAxLCAxLCAwLCAxLCAxLCAwLCAxKSwgX1NFRzcoJzMnLCAxLCAxLCAxLCAxLCAwLCAwLCAxKSwgX1NFRzcoJzQnLCAwLCAxLCAxLCAwLCAwLCAxLCAxKSwgX1NFRzcoJzUnLCAxLCAwLCAxLCAxLCAwLCAxLCAxKSwgX1NFRzcoJzYnLCAxLCAwLCAxLCAxLCAxLCAxLCAxKSwgX1NFRzcoJzcnLCAxLCAxLCAxLCAwLCAwLCAwLCAwKSwgX1NFRzcoJzgnLCAxLCAxLCAxLCAxLCAxLCAxLCAxKSwgX1NFRzcoJzknLCAxLCAxLCAxLCAxLCAwLCAxLCAxKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9NQVBfNThfNjRfQVNDSUlfU0VHN19TWU1CT0wgICBfU0VHNygnOicsMCwwLDAsMSwwLDAsMSksIF9TRUc3KCc7JywwLDAsMCwxLDAsMCwxKSwgX1NFRzcoJzwnLDEsMCwwLDAsMCwxLDEpLCAgX1NFRzcoJz0nLDAsMCwwLDEsMCwwLDEpLCBfU0VHNygnPicsMSwxLDAsMCwwLDAsMSksIF9TRUc3KCc/JywxLDEsMSwwLDAsMSwwKSwgIF9TRUc3KCdAJywxLDEsMCwxLDEsMSwxKSwKLSNkZWZpbmUgX01BUF82NV85MF9BU0NJSV9TRUc3X0FMUEhBX1VQUFIgICBfU0VHNygnQScsMSwxLDEsMCwxLDEsMSksIF9TRUc3KCdCJywxLDEsMSwxLDEsMSwxKSwgX1NFRzcoJ0MnLDEsMCwwLDEsMSwxLDApLCAgX1NFRzcoJ0QnLDEsMSwxLDEsMSwxLDApLCBfU0VHNygnRScsMSwwLDAsMSwxLDEsMSksIF9TRUc3KCdGJywxLDAsMCwwLDEsMSwxKSwgIF9TRUc3KCdHJywxLDEsMSwxLDAsMSwxKSwgX1NFRzcoJ0gnLDAsMSwxLDAsMSwxLDEpLCBfU0VHNygnSScsMCwxLDEsMCwwLDAsMCksICBfU0VHNygnSicsMCwxLDEsMSwwLDAsMCksIF9TRUc3KCdLJywwLDEsMSwwLDEsMSwxKSwgX1NFRzcoJ0wnLDAsMCwwLDEsMSwxLDApLCAgX1NFRzcoJ00nLDEsMSwxLDAsMSwxLDApLCBfU0VHNygnTicsMSwxLDEsMCwxLDEsMCksIF9TRUc3KCdPJywxLDEsMSwxLDEsMSwwKSwgIF9TRUc3KCdQJywxLDEsMCwwLDEsMSwxKSwgX1NFRzcoJ1EnLDEsMSwxLDEsMSwxLDApLCBfU0VHNygnUicsMSwxLDEsMCwxLDEsMSksICBfU0VHNygnUycsMSwwLDEsMSwwLDEsMSksIF9TRUc3KCdUJywwLDAsMCwxLDEsMSwxKSwgX1NFRzcoJ1UnLDAsMSwxLDEsMSwxLDApLCAgX1NFRzcoJ1YnLDAsMSwxLDEsMSwxLDApLCBfU0VHNygnVycsMCwxLDEsMSwxLDEsMSksIF9TRUc3KCdYJywwLDEsMSwwLDEsMSwxKSwgIF9TRUc3KCdZJywwLDEsMSwwLDAsMSwxKSwgX1NFRzcoJ1onLDEsMSwwLDEsMSwwLDEpLAotI2RlZmluZSBfTUFQXzkxXzk2X0FTQ0lJX1NFRzdfU1lNQk9MICAgX1NFRzcoJ1snLDEsMCwwLDEsMSwxLDApLCBfU0VHNygnXFwnLDAsMCwxLDAsMCwxLDEpLF9TRUc3KCddJywxLDEsMSwxLDAsMCwwKSwgIF9TRUc3KCdeJywxLDEsMCwwLDAsMSwwKSwgX1NFRzcoJ18nLDAsMCwwLDEsMCwwLDApLCBfU0VHNygnYCcsMCwxLDAsMCwwLDAsMCksCi0jZGVmaW5lIF9NQVBfOTdfMTIyX0FTQ0lJX1NFRzdfQUxQSEFfTE9XRVIgICBfU0VHNygnQScsMSwxLDEsMCwxLDEsMSksIF9TRUc3KCdiJywwLDAsMSwxLDEsMSwxKSwgX1NFRzcoJ2MnLDAsMCwwLDEsMSwwLDEpLCAgX1NFRzcoJ2QnLDAsMSwxLDEsMSwwLDEpLCBfU0VHNygnRScsMSwwLDAsMSwxLDEsMSksIF9TRUc3KCdGJywxLDAsMCwwLDEsMSwxKSwgIF9TRUc3KCdHJywxLDEsMSwxLDAsMSwxKSwgX1NFRzcoJ2gnLDAsMCwxLDAsMSwxLDEpLCBfU0VHNygnaScsMCwwLDEsMCwwLDAsMCksICBfU0VHNygnaicsMCwwLDEsMSwwLDAsMCksIF9TRUc3KCdrJywwLDAsMSwwLDEsMSwxKSwgX1NFRzcoJ0wnLDAsMCwwLDEsMSwxLDApLCAgX1NFRzcoJ00nLDEsMSwxLDAsMSwxLDApLCBfU0VHNygnbicsMCwwLDEsMCwxLDAsMSksIF9TRUc3KCdvJywwLDAsMSwxLDEsMCwxKSwgIF9TRUc3KCdQJywxLDEsMCwwLDEsMSwxKSwgX1NFRzcoJ3EnLDEsMSwxLDAsMCwxLDEpLCBfU0VHNygncicsMCwwLDAsMCwxLDAsMSksICBfU0VHNygnUycsMSwwLDEsMSwwLDEsMSksIF9TRUc3KCdUJywwLDAsMCwxLDEsMSwxKSwgX1NFRzcoJ3UnLDAsMCwxLDEsMSwwLDApLCAgX1NFRzcoJ3YnLDAsMCwxLDEsMSwwLDApLCBfU0VHNygnVycsMCwxLDEsMSwxLDEsMSksIF9TRUc3KCdYJywwLDEsMSwwLDEsMSwxKSwgIF9TRUc3KCd5JywwLDEsMSwxLDAsMSwxKSwgX1NFRzcoJ1onLDEsMSwwLDEsMSwwLDEpLAorI2RlZmluZSBfTUFQXzU4XzY0X0FTQ0lJX1NFRzdfU1lNQk9MIF9TRUc3KCc6JywgMCwgMCwgMCwgMSwgMCwgMCwgMSksIF9TRUc3KCc7JywgMCwgMCwgMCwgMSwgMCwgMCwgMSksIF9TRUc3KCc8JywgMSwgMCwgMCwgMCwgMCwgMSwgMSksIF9TRUc3KCc9JywgMCwgMCwgMCwgMSwgMCwgMCwgMSksIF9TRUc3KCc+JywgMSwgMSwgMCwgMCwgMCwgMCwgMSksIF9TRUc3KCc/JywgMSwgMSwgMSwgMCwgMCwgMSwgMCksIF9TRUc3KCdAJywgMSwgMSwgMCwgMSwgMSwgMSwgMSksCisjZGVmaW5lIF9NQVBfNjVfOTBfQVNDSUlfU0VHN19BTFBIQV9VUFBSIF9TRUc3KCdBJywgMSwgMSwgMSwgMCwgMSwgMSwgMSksIF9TRUc3KCdCJywgMSwgMSwgMSwgMSwgMSwgMSwgMSksIF9TRUc3KCdDJywgMSwgMCwgMCwgMSwgMSwgMSwgMCksIF9TRUc3KCdEJywgMSwgMSwgMSwgMSwgMSwgMSwgMCksIF9TRUc3KCdFJywgMSwgMCwgMCwgMSwgMSwgMSwgMSksIF9TRUc3KCdGJywgMSwgMCwgMCwgMCwgMSwgMSwgMSksIF9TRUc3KCdHJywgMSwgMSwgMSwgMSwgMCwgMSwgMSksIF9TRUc3KCdIJywgMCwgMSwgMSwgMCwgMSwgMSwgMSksIF9TRUc3KCdJJywgMCwgMSwgMSwgMCwgMCwgMCwgMCksIF9TRUc3KCdKJywgMCwgMSwgMSwgMSwgMCwgMCwgMCksIF9TRUc3KCdLJywgMCwgMSwgMSwgMCwgMSwgMSwgMSksIF9TRUc3KCdMJywgMCwgMCwgMCwgMSwgMSwgMSwgMCksIF9TRUc3KCdNJywgMSwgMSwgMSwgMCwgMSwgMSwgMCksIF9TRUc3KCdOJywgMSwgMSwgMSwgMCwgMSwgMSwgMCksIF9TRUc3KCdPJywgMSwgMSwgMSwgMSwgMSwgMSwgMCksIF9TRUc3KCdQJywgMSwgMSwgMCwgMCwgMSwgMSwgMSksIF9TRUc3KCdRJywgMSwgMSwgMSwgMSwgMSwgMSwgMCksIF9TRUc3KCdSJywgMSwgMSwgMSwgMCwgMSwgMSwgMSksIF9TRUc3KCdTJywgMSwgMCwgMSwgMSwgMCwgMSwgMSksIF9TRUc3KCdUJywgMCwgMCwgMCwgMSwgMSwgMSwgMSksIF9TRUc3KCdVJywgMCwgMSwgMSwgMSwgMSwgMSwgMCksIF9TRUc3KCdWJywgMCwgMSwgMSwgMSwgMSwgMSwgMCksIF9TRUc3KCdXJywgMCwgMSwgMSwgMSwgMSwgMSwgMSksIF9TRUc3KCdYJywgMCwgMSwgMSwgMCwgMSwgMSwgMSksIF9TRUc3KCdZJywgMCwgMSwgMSwgMCwgMCwgMSwgMSksIF9TRUc3KCdaJywgMSwgMSwgMCwgMSwgMSwgMCwgMSksCisjZGVmaW5lIF9NQVBfOTFfOTZfQVNDSUlfU0VHN19TWU1CT0wgX1NFRzcoJ1snLCAxLCAwLCAwLCAxLCAxLCAxLCAwKSwgX1NFRzcoJ1xcJywgMCwgMCwgMSwgMCwgMCwgMSwgMSksIF9TRUc3KCddJywgMSwgMSwgMSwgMSwgMCwgMCwgMCksIF9TRUc3KCdeJywgMSwgMSwgMCwgMCwgMCwgMSwgMCksIF9TRUc3KCdfJywgMCwgMCwgMCwgMSwgMCwgMCwgMCksIF9TRUc3KCdgJywgMCwgMSwgMCwgMCwgMCwgMCwgMCksCisjZGVmaW5lIF9NQVBfOTdfMTIyX0FTQ0lJX1NFRzdfQUxQSEFfTE9XRVIgX1NFRzcoJ0EnLCAxLCAxLCAxLCAwLCAxLCAxLCAxKSwgX1NFRzcoJ2InLCAwLCAwLCAxLCAxLCAxLCAxLCAxKSwgX1NFRzcoJ2MnLCAwLCAwLCAwLCAxLCAxLCAwLCAxKSwgX1NFRzcoJ2QnLCAwLCAxLCAxLCAxLCAxLCAwLCAxKSwgX1NFRzcoJ0UnLCAxLCAwLCAwLCAxLCAxLCAxLCAxKSwgX1NFRzcoJ0YnLCAxLCAwLCAwLCAwLCAxLCAxLCAxKSwgX1NFRzcoJ0cnLCAxLCAxLCAxLCAxLCAwLCAxLCAxKSwgX1NFRzcoJ2gnLCAwLCAwLCAxLCAwLCAxLCAxLCAxKSwgX1NFRzcoJ2knLCAwLCAwLCAxLCAwLCAwLCAwLCAwKSwgX1NFRzcoJ2onLCAwLCAwLCAxLCAxLCAwLCAwLCAwKSwgX1NFRzcoJ2snLCAwLCAwLCAxLCAwLCAxLCAxLCAxKSwgX1NFRzcoJ0wnLCAwLCAwLCAwLCAxLCAxLCAxLCAwKSwgX1NFRzcoJ00nLCAxLCAxLCAxLCAwLCAxLCAxLCAwKSwgX1NFRzcoJ24nLCAwLCAwLCAxLCAwLCAxLCAwLCAxKSwgX1NFRzcoJ28nLCAwLCAwLCAxLCAxLCAxLCAwLCAxKSwgX1NFRzcoJ1AnLCAxLCAxLCAwLCAwLCAxLCAxLCAxKSwgX1NFRzcoJ3EnLCAxLCAxLCAxLCAwLCAwLCAxLCAxKSwgX1NFRzcoJ3InLCAwLCAwLCAwLCAwLCAxLCAwLCAxKSwgX1NFRzcoJ1MnLCAxLCAwLCAxLCAxLCAwLCAxLCAxKSwgX1NFRzcoJ1QnLCAwLCAwLCAwLCAxLCAxLCAxLCAxKSwgX1NFRzcoJ3UnLCAwLCAwLCAxLCAxLCAxLCAwLCAwKSwgX1NFRzcoJ3YnLCAwLCAwLCAxLCAxLCAxLCAwLCAwKSwgX1NFRzcoJ1cnLCAwLCAxLCAxLCAxLCAxLCAxLCAxKSwgX1NFRzcoJ1gnLCAwLCAxLCAxLCAwLCAxLCAxLCAxKSwgX1NFRzcoJ3knLCAwLCAxLCAxLCAxLCAwLCAxLCAxKSwgX1NFRzcoJ1onLCAxLCAxLCAwLCAxLCAxLCAwLCAxKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9NQVBfMTIzXzEyNl9BU0NJSV9TRUc3X1NZTUJPTCAgIF9TRUc3KCd7JywxLDAsMCwxLDEsMSwwKSwgX1NFRzcoJ3wnLDAsMCwwLDAsMSwxLDApLCBfU0VHNygnfScsMSwxLDEsMSwwLDAsMCksICBfU0VHNygnficsMSwwLDAsMCwwLDAsMCksCi0jZGVmaW5lIE1BUF9BU0NJSTdTRUdfQUxQSEFOVU0gICBfTUFQXzBfMzJfQVNDSUlfU0VHN19OT05fUFJJTlRBQkxFICAgX01BUF8zM180N19BU0NJSV9TRUc3X1NZTUJPTCAgIF9NQVBfNDhfNTdfQVNDSUlfU0VHN19OVU1FUklDICAgX01BUF81OF82NF9BU0NJSV9TRUc3X1NZTUJPTCAgIF9NQVBfNjVfOTBfQVNDSUlfU0VHN19BTFBIQV9VUFBSICAgX01BUF85MV85Nl9BU0NJSV9TRUc3X1NZTUJPTCAgIF9NQVBfOTdfMTIyX0FTQ0lJX1NFRzdfQUxQSEFfTE9XRVIgICBfTUFQXzEyM18xMjZfQVNDSUlfU0VHN19TWU1CT0wKLSNkZWZpbmUgTUFQX0FTQ0lJN1NFR19BTFBIQU5VTV9MQyAgIF9NQVBfMF8zMl9BU0NJSV9TRUc3X05PTl9QUklOVEFCTEUgICBfTUFQXzMzXzQ3X0FTQ0lJX1NFRzdfU1lNQk9MICAgX01BUF80OF81N19BU0NJSV9TRUc3X05VTUVSSUMgICBfTUFQXzU4XzY0X0FTQ0lJX1NFRzdfU1lNQk9MICAgX01BUF85N18xMjJfQVNDSUlfU0VHN19BTFBIQV9MT1dFUiAgIF9NQVBfOTFfOTZfQVNDSUlfU0VHN19TWU1CT0wgICBfTUFQXzk3XzEyMl9BU0NJSV9TRUc3X0FMUEhBX0xPV0VSICAgX01BUF8xMjNfMTI2X0FTQ0lJX1NFRzdfU1lNQk9MCi0jZGVmaW5lIFNFRzdfREVGQVVMVF9NQVAoX25hbWUpICAgU0VHN19DT05WRVJTSU9OX01BUChfbmFtZSxNQVBfQVNDSUk3U0VHX0FMUEhBTlVNKQorI2RlZmluZSBfTUFQXzEyM18xMjZfQVNDSUlfU0VHN19TWU1CT0wgX1NFRzcoJ3snLCAxLCAwLCAwLCAxLCAxLCAxLCAwKSwgX1NFRzcoJ3wnLCAwLCAwLCAwLCAwLCAxLCAxLCAwKSwgX1NFRzcoJ30nLCAxLCAxLCAxLCAxLCAwLCAwLCAwKSwgX1NFRzcoJ34nLCAxLCAwLCAwLCAwLCAwLCAwLCAwKSwKKyNkZWZpbmUgTUFQX0FTQ0lJN1NFR19BTFBIQU5VTSBfTUFQXzBfMzJfQVNDSUlfU0VHN19OT05fUFJJTlRBQkxFIF9NQVBfMzNfNDdfQVNDSUlfU0VHN19TWU1CT0wgX01BUF80OF81N19BU0NJSV9TRUc3X05VTUVSSUMgX01BUF81OF82NF9BU0NJSV9TRUc3X1NZTUJPTCBfTUFQXzY1XzkwX0FTQ0lJX1NFRzdfQUxQSEFfVVBQUiBfTUFQXzkxXzk2X0FTQ0lJX1NFRzdfU1lNQk9MIF9NQVBfOTdfMTIyX0FTQ0lJX1NFRzdfQUxQSEFfTE9XRVIgX01BUF8xMjNfMTI2X0FTQ0lJX1NFRzdfU1lNQk9MCisjZGVmaW5lIE1BUF9BU0NJSTdTRUdfQUxQSEFOVU1fTEMgX01BUF8wXzMyX0FTQ0lJX1NFRzdfTk9OX1BSSU5UQUJMRSBfTUFQXzMzXzQ3X0FTQ0lJX1NFRzdfU1lNQk9MIF9NQVBfNDhfNTdfQVNDSUlfU0VHN19OVU1FUklDIF9NQVBfNThfNjRfQVNDSUlfU0VHN19TWU1CT0wgX01BUF85N18xMjJfQVNDSUlfU0VHN19BTFBIQV9MT1dFUiBfTUFQXzkxXzk2X0FTQ0lJX1NFRzdfU1lNQk9MIF9NQVBfOTdfMTIyX0FTQ0lJX1NFRzdfQUxQSEFfTE9XRVIgX01BUF8xMjNfMTI2X0FTQ0lJX1NFRzdfU1lNQk9MCisjZGVmaW5lIFNFRzdfREVGQVVMVF9NQVAoX25hbWUpIFNFRzdfQ09OVkVSU0lPTl9NQVAoX25hbWUsIE1BUF9BU0NJSTdTRUdfQUxQSEFOVU0pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21hdHJveGZiLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21hdHJveGZiLmgKaW5kZXggY2E4MzNhNS4uYjQzNzA4NiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tYXRyb3hmYi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWF0cm94ZmIuaApAQCAtMjQsMzMgKzI0LDMzIEBACiAjaW5jbHVkZSA8bGludXgvdmlkZW9kZXYyLmg+CiAjaW5jbHVkZSA8bGludXgvZmIuaD4KIHN0cnVjdCBtYXRyb3hpb2Nfb3V0cHV0X21vZGUgewotIF9fdTMyIG91dHB1dDsKKyAgX191MzIgb3V0cHV0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUFUUk9YRkJfT1VUUFVUX1BSSU1BUlkgMHgwMDAwCiAjZGVmaW5lIE1BVFJPWEZCX09VVFBVVF9TRUNPTkRBUlkgMHgwMDAxCiAjZGVmaW5lIE1BVFJPWEZCX09VVFBVVF9ERlAgMHgwMDAyCi0gX191MzIgbW9kZTsKKyAgX191MzIgbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1BVFJPWEZCX09VVFBVVF9NT0RFX1BBTCAweDAwMDEKICNkZWZpbmUgTUFUUk9YRkJfT1VUUFVUX01PREVfTlRTQyAweDAwMDIKICNkZWZpbmUgTUFUUk9YRkJfT1VUUFVUX01PREVfTU9OSVRPUiAweDAwODAKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNQVRST1hGQl9TRVRfT1VUUFVUX01PREUgX0lPVygnbicsMHhGQSxzaXplX3QpCi0jZGVmaW5lIE1BVFJPWEZCX0dFVF9PVVRQVVRfTU9ERSBfSU9XUignbicsMHhGQSxzaXplX3QpCisjZGVmaW5lIE1BVFJPWEZCX1NFVF9PVVRQVVRfTU9ERSBfSU9XKCduJywgMHhGQSwgc2l6ZV90KQorI2RlZmluZSBNQVRST1hGQl9HRVRfT1VUUFVUX01PREUgX0lPV1IoJ24nLCAweEZBLCBzaXplX3QpCiAjZGVmaW5lIE1BVFJPWEZCX09VVFBVVF9DT05OX1BSSU1BUlkgKDEgPDwgTUFUUk9YRkJfT1VUUFVUX1BSSU1BUlkpCiAjZGVmaW5lIE1BVFJPWEZCX09VVFBVVF9DT05OX1NFQ09OREFSWSAoMSA8PCBNQVRST1hGQl9PVVRQVVRfU0VDT05EQVJZKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUFUUk9YRkJfT1VUUFVUX0NPTk5fREZQICgxIDw8IE1BVFJPWEZCX09VVFBVVF9ERlApCi0jZGVmaW5lIE1BVFJPWEZCX1NFVF9PVVRQVVRfQ09OTkVDVElPTiBfSU9XKCduJywweEY4LHNpemVfdCkKLSNkZWZpbmUgTUFUUk9YRkJfR0VUX09VVFBVVF9DT05ORUNUSU9OIF9JT1IoJ24nLDB4Rjgsc2l6ZV90KQotI2RlZmluZSBNQVRST1hGQl9HRVRfQVZBSUxBQkxFX09VVFBVVFMgX0lPUignbicsMHhGOSxzaXplX3QpCisjZGVmaW5lIE1BVFJPWEZCX1NFVF9PVVRQVVRfQ09OTkVDVElPTiBfSU9XKCduJywgMHhGOCwgc2l6ZV90KQorI2RlZmluZSBNQVRST1hGQl9HRVRfT1VUUFVUX0NPTk5FQ1RJT04gX0lPUignbicsIDB4RjgsIHNpemVfdCkKKyNkZWZpbmUgTUFUUk9YRkJfR0VUX0FWQUlMQUJMRV9PVVRQVVRTIF9JT1IoJ24nLCAweEY5LCBzaXplX3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNQVRST1hGQl9HRVRfQUxMX09VVFBVVFMgX0lPUignbicsMHhGQixzaXplX3QpCisjZGVmaW5lIE1BVFJPWEZCX0dFVF9BTExfT1VUUFVUUyBfSU9SKCduJywgMHhGQiwgc2l6ZV90KQogZW51bSBtYXRyb3hmYl9jdHJsX2lkIHsKLSBNQVRST1hGQl9DSURfVEVTVE9VVCA9IFY0TDJfQ0lEX1BSSVZBVEVfQkFTRSwKLSBNQVRST1hGQl9DSURfREVGTElDS0VSLAorICBNQVRST1hGQl9DSURfVEVTVE9VVCA9IFY0TDJfQ0lEX1BSSVZBVEVfQkFTRSwKKyAgTUFUUk9YRkJfQ0lEX0RFRkxJQ0tFUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTUFUUk9YRkJfQ0lEX0xBU1QKKyAgTUFUUk9YRkJfQ0lEX0xBU1QKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWRpby5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZGlvLmgKaW5kZXggMzE5NjcwZS4uNzc2NmQxMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZGlvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZGlvLmgKQEAgLTI3Miw1ICsyNzIsNSBAQAogI2RlZmluZSBNRElPX1BIWV9JRF9QUlRBRCAweDAzZTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1ESU9fUEhZX0lEX0RFVkFEIDB4MDAxZgotI2RlZmluZSBNRElPX1BIWV9JRF9DNDVfTUFTSyAgIChNRElPX1BIWV9JRF9DNDUgfCBNRElPX1BIWV9JRF9QUlRBRCB8IE1ESU9fUEhZX0lEX0RFVkFEKQorI2RlZmluZSBNRElPX1BIWV9JRF9DNDVfTUFTSyAoTURJT19QSFlfSURfQzQ1IHwgTURJT19QSFlfSURfUFJUQUQgfCBNRElPX1BIWV9JRF9ERVZBRCkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZWRpYS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZWRpYS5oCmluZGV4IDRiYTU0YWEuLjVhZDEzMzAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWVkaWEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21lZGlhLmgKQEAgLTI0LDE2ICsyNCwxNiBAQAogI2luY2x1ZGUgPGxpbnV4L3ZlcnNpb24uaD4KICNkZWZpbmUgTUVESUFfQVBJX1ZFUlNJT04gS0VSTkVMX1ZFUlNJT04oMCwgMSwgMCkKIHN0cnVjdCBtZWRpYV9kZXZpY2VfaW5mbyB7Ci0gY2hhciBkcml2ZXJbMTZdOworICBjaGFyIGRyaXZlclsxNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbW9kZWxbMzJdOwotIGNoYXIgc2VyaWFsWzQwXTsKLSBjaGFyIGJ1c19pbmZvWzMyXTsKLSBfX3UzMiBtZWRpYV92ZXJzaW9uOworICBjaGFyIG1vZGVsWzMyXTsKKyAgY2hhciBzZXJpYWxbNDBdOworICBjaGFyIGJ1c19pbmZvWzMyXTsKKyAgX191MzIgbWVkaWFfdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaHdfcmV2aXNpb247Ci0gX191MzIgZHJpdmVyX3ZlcnNpb247Ci0gX191MzIgcmVzZXJ2ZWRbMzFdOworICBfX3UzMiBod19yZXZpc2lvbjsKKyAgX191MzIgZHJpdmVyX3ZlcnNpb247CisgIF9fdTMyIHJlc2VydmVkWzMxXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNRURJQV9FTlRfSURfRkxBR19ORVhUICgxIDw8IDMxKQpAQCAtNTYsNDkgKzU2LDQ5IEBACiAjZGVmaW5lIE1FRElBX0VOVF9GTF9ERUZBVUxUICgxIDw8IDApCiBzdHJ1Y3QgbWVkaWFfZW50aXR5X2Rlc2MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZDsKLSBjaGFyIG5hbWVbMzJdOwotIF9fdTMyIHR5cGU7Ci0gX191MzIgcmV2aXNpb247CisgIF9fdTMyIGlkOworICBjaGFyIG5hbWVbMzJdOworICBfX3UzMiB0eXBlOworICBfX3UzMiByZXZpc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7Ci0gX191MzIgZ3JvdXBfaWQ7Ci0gX191MTYgcGFkczsKLSBfX3UxNiBsaW5rczsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIGdyb3VwX2lkOworICBfX3UxNiBwYWRzOworICBfX3UxNiBsaW5rczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbNF07Ci0gdW5pb24gewotIHN0cnVjdCB7Ci0gX191MzIgbWFqb3I7CisgIF9fdTMyIHJlc2VydmVkWzRdOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTMyIG1ham9yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtaW5vcjsKLSB9IHY0bDsKLSBzdHJ1Y3QgewotIF9fdTMyIG1ham9yOworICAgICAgX191MzIgbWlub3I7CisgICAgfSB2NGw7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTMyIG1ham9yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtaW5vcjsKLSB9IGZiOwotIHN0cnVjdCB7Ci0gX191MzIgY2FyZDsKKyAgICAgIF9fdTMyIG1pbm9yOworICAgIH0gZmI7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTMyIGNhcmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRldmljZTsKLSBfX3UzMiBzdWJkZXZpY2U7Ci0gfSBhbHNhOwotIGludCBkdmI7CisgICAgICBfX3UzMiBkZXZpY2U7CisgICAgICBfX3UzMiBzdWJkZXZpY2U7CisgICAgfSBhbHNhOworICAgIGludCBkdmI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmF3WzE4NF07Ci0gfTsKKyAgICBfX3U4IHJhd1sxODRdOworICB9OwogfTsKICNkZWZpbmUgTUVESUFfUEFEX0ZMX1NJTksgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1FRElBX1BBRF9GTF9TT1VSQ0UgKDEgPDwgMSkKICNkZWZpbmUgTUVESUFfUEFEX0ZMX01VU1RfQ09OTkVDVCAoMSA8PCAyKQogc3RydWN0IG1lZGlhX3BhZF9kZXNjIHsKLSBfX3UzMiBlbnRpdHk7CisgIF9fdTMyIGVudGl0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgaW5kZXg7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgcmVzZXJ2ZWRbMl07CisgIF9fdTE2IGluZGV4OworICBfX3UzMiBmbGFnczsKKyAgX191MzIgcmVzZXJ2ZWRbMl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUVESUFfTE5LX0ZMX0VOQUJMRUQgKDEgPDwgMCkKQEAgLTEwNiwxOCArMTA2LDE4IEBACiAjZGVmaW5lIE1FRElBX0xOS19GTF9EWU5BTUlDICgxIDw8IDIpCiBzdHJ1Y3QgbWVkaWFfbGlua19kZXNjIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IG1lZGlhX3BhZF9kZXNjIHNvdXJjZTsKLSBzdHJ1Y3QgbWVkaWFfcGFkX2Rlc2Mgc2luazsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiByZXNlcnZlZFsyXTsKKyAgc3RydWN0IG1lZGlhX3BhZF9kZXNjIHNvdXJjZTsKKyAgc3RydWN0IG1lZGlhX3BhZF9kZXNjIHNpbms7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiByZXNlcnZlZFsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG1lZGlhX2xpbmtzX2VudW0gewotIF9fdTMyIGVudGl0eTsKLSBzdHJ1Y3QgbWVkaWFfcGFkX2Rlc2MgX191c2VyICpwYWRzOworICBfX3UzMiBlbnRpdHk7CisgIHN0cnVjdCBtZWRpYV9wYWRfZGVzYyBfX3VzZXIgKiBwYWRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgbWVkaWFfbGlua19kZXNjIF9fdXNlciAqbGlua3M7Ci0gX191MzIgcmVzZXJ2ZWRbNF07CisgIHN0cnVjdCBtZWRpYV9saW5rX2Rlc2MgX191c2VyICogbGlua3M7CisgIF9fdTMyIHJlc2VydmVkWzRdOwogfTsKICNkZWZpbmUgTUVESUFfSU9DX0RFVklDRV9JTkZPIF9JT1dSKCd8JywgMHgwMCwgc3RydWN0IG1lZGlhX2RldmljZV9pbmZvKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWVpLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21laS5oCmluZGV4IDFhMzhlMWMuLmFjODAzMWYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWVpLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZWkuaApAQCAtMTksMjAgKzE5LDIwIEBACiAjaWZuZGVmIF9MSU5VWF9NRUlfSAogI2RlZmluZSBfTElOVVhfTUVJX0gKICNpbmNsdWRlIDxsaW51eC91dWlkLmg+Ci0jZGVmaW5lIElPQ1RMX01FSV9DT05ORUNUX0NMSUVOVCAgIF9JT1dSKCdIJyAsIDB4MDEsIHN0cnVjdCBtZWlfY29ubmVjdF9jbGllbnRfZGF0YSkKKyNkZWZpbmUgSU9DVExfTUVJX0NPTk5FQ1RfQ0xJRU5UIF9JT1dSKCdIJywgMHgwMSwgc3RydWN0IG1laV9jb25uZWN0X2NsaWVudF9kYXRhKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtZWlfY2xpZW50IHsKLSBfX3UzMiBtYXhfbXNnX2xlbmd0aDsKLSBfX3U4IHByb3RvY29sX3ZlcnNpb247Ci0gX191OCByZXNlcnZlZFszXTsKKyAgX191MzIgbWF4X21zZ19sZW5ndGg7CisgIF9fdTggcHJvdG9jb2xfdmVyc2lvbjsKKyAgX191OCByZXNlcnZlZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG1laV9jb25uZWN0X2NsaWVudF9kYXRhIHsKLSB1bmlvbiB7Ci0gdXVpZF9sZSBpbl9jbGllbnRfdXVpZDsKKyAgdW5pb24geworICAgIHV1aWRfbGUgaW5fY2xpZW50X3V1aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBtZWlfY2xpZW50IG91dF9jbGllbnRfcHJvcGVydGllczsKLSB9OworICAgIHN0cnVjdCBtZWlfY2xpZW50IG91dF9jbGllbnRfcHJvcGVydGllczsKKyAgfTsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21lbWZkLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21lbWZkLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjAxMWRhYgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWVtZmQuaApAQCAtMCwwICsxLDI0IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9VQVBJX0xJTlVYX01FTUZEX0gKKyNkZWZpbmUgX1VBUElfTElOVVhfTUVNRkRfSAorI2RlZmluZSBNRkRfQ0xPRVhFQyAweDAwMDFVCisjZGVmaW5lIE1GRF9BTExPV19TRUFMSU5HIDB4MDAwMlUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWVtcG9saWN5LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21lbXBvbGljeS5oCmluZGV4IDcwYThhOGYuLmEyMDhmNDIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWVtcG9saWN5LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZW1wb2xpY3kuaApAQCAtMjEsMzcgKzIxLDM3IEBACiAjaW5jbHVkZSA8bGludXgvZXJybm8uaD4KIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNUE9MX0RFRkFVTFQsCi0gTVBPTF9QUkVGRVJSRUQsCi0gTVBPTF9CSU5ELAotIE1QT0xfSU5URVJMRUFWRSwKKyAgTVBPTF9ERUZBVUxULAorICBNUE9MX1BSRUZFUlJFRCwKKyAgTVBPTF9CSU5ELAorICBNUE9MX0lOVEVSTEVBVkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1QT0xfTE9DQUwsCi0gTVBPTF9NQVgsCisgIE1QT0xfTE9DQUwsCisgIE1QT0xfTUFYLAogfTsKIGVudW0gbXBvbF9yZWJpbmRfc3RlcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1QT0xfUkVCSU5EX09OQ0UsCi0gTVBPTF9SRUJJTkRfU1RFUDEsCi0gTVBPTF9SRUJJTkRfU1RFUDIsCi0gTVBPTF9SRUJJTkRfTlNURVAsCisgIE1QT0xfUkVCSU5EX09OQ0UsCisgIE1QT0xfUkVCSU5EX1NURVAxLAorICBNUE9MX1JFQklORF9TVEVQMiwKKyAgTVBPTF9SRUJJTkRfTlNURVAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTVBPTF9GX1NUQVRJQ19OT0RFUyAoMSA8PCAxNSkKICNkZWZpbmUgTVBPTF9GX1JFTEFUSVZFX05PREVTICgxIDw8IDE0KQogI2RlZmluZSBNUE9MX01PREVfRkxBR1MgKE1QT0xfRl9TVEFUSUNfTk9ERVMgfCBNUE9MX0ZfUkVMQVRJVkVfTk9ERVMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNUE9MX0ZfTk9ERSAoMTw8MCkKLSNkZWZpbmUgTVBPTF9GX0FERFIgKDE8PDEpCi0jZGVmaW5lIE1QT0xfRl9NRU1TX0FMTE9XRUQgKDE8PDIpCi0jZGVmaW5lIE1QT0xfTUZfU1RSSUNUICgxPDwwKQorI2RlZmluZSBNUE9MX0ZfTk9ERSAoMSA8PCAwKQorI2RlZmluZSBNUE9MX0ZfQUREUiAoMSA8PCAxKQorI2RlZmluZSBNUE9MX0ZfTUVNU19BTExPV0VEICgxIDw8IDIpCisjZGVmaW5lIE1QT0xfTUZfU1RSSUNUICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNUE9MX01GX01PVkUgKDE8PDEpCi0jZGVmaW5lIE1QT0xfTUZfTU9WRV9BTEwgKDE8PDIpCi0jZGVmaW5lIE1QT0xfTUZfTEFaWSAoMTw8MykKLSNkZWZpbmUgTVBPTF9NRl9JTlRFUk5BTCAoMTw8NCkKKyNkZWZpbmUgTVBPTF9NRl9NT1ZFICgxIDw8IDEpCisjZGVmaW5lIE1QT0xfTUZfTU9WRV9BTEwgKDEgPDwgMikKKyNkZWZpbmUgTVBPTF9NRl9MQVpZICgxIDw8IDMpCisjZGVmaW5lIE1QT0xfTUZfSU5URVJOQUwgKDEgPDwgNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1QT0xfTUZfVkFMSUQgKE1QT0xfTUZfU1RSSUNUIHwgICBNUE9MX01GX01PVkUgfCAgIE1QT0xfTUZfTU9WRV9BTEwpCisjZGVmaW5lIE1QT0xfTUZfVkFMSUQgKE1QT0xfTUZfU1RSSUNUIHwgTVBPTF9NRl9NT1ZFIHwgTVBPTF9NRl9NT1ZFX0FMTCkKICNkZWZpbmUgTVBPTF9GX1NIQVJFRCAoMSA8PCAwKQogI2RlZmluZSBNUE9MX0ZfTE9DQUwgKDEgPDwgMSkKICNkZWZpbmUgTVBPTF9GX1JFQklORElORyAoMSA8PCAyKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tZXllLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21leWUuaAppbmRleCA3MzNhODZhLi5hMjNlOWZhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21leWUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21leWUuaApAQCAtMTksMjIgKzE5LDIyIEBACiAjaWZuZGVmIF9NRVlFX0hfCiAjZGVmaW5lIF9NRVlFX0hfCiBzdHJ1Y3QgbWV5ZV9wYXJhbXMgewotIHVuc2lnbmVkIGNoYXIgc3Vic2FtcGxlOworICB1bnNpZ25lZCBjaGFyIHN1YnNhbXBsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBxdWFsaXR5OwotIHVuc2lnbmVkIGNoYXIgc2hhcnBuZXNzOwotIHVuc2lnbmVkIGNoYXIgYWdjOwotIHVuc2lnbmVkIGNoYXIgcGljdHVyZTsKKyAgdW5zaWduZWQgY2hhciBxdWFsaXR5OworICB1bnNpZ25lZCBjaGFyIHNoYXJwbmVzczsKKyAgdW5zaWduZWQgY2hhciBhZ2M7CisgIHVuc2lnbmVkIGNoYXIgcGljdHVyZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBmcmFtZXJhdGU7CisgIHVuc2lnbmVkIGNoYXIgZnJhbWVyYXRlOwogfTsKLSNkZWZpbmUgTUVZRUlPQ19HX1BBUkFNUyBfSU9SICgndicsIEJBU0VfVklESU9DX1BSSVZBVEUrMCwgc3RydWN0IG1leWVfcGFyYW1zKQotI2RlZmluZSBNRVlFSU9DX1NfUEFSQU1TIF9JT1cgKCd2JywgQkFTRV9WSURJT0NfUFJJVkFURSsxLCBzdHJ1Y3QgbWV5ZV9wYXJhbXMpCisjZGVmaW5lIE1FWUVJT0NfR19QQVJBTVMgX0lPUigndicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyAwLCBzdHJ1Y3QgbWV5ZV9wYXJhbXMpCisjZGVmaW5lIE1FWUVJT0NfU19QQVJBTVMgX0lPVygndicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyAxLCBzdHJ1Y3QgbWV5ZV9wYXJhbXMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNRVlFSU9DX1FCVUZfQ0FQVCBfSU9XICgndicsIEJBU0VfVklESU9DX1BSSVZBVEUrMiwgaW50KQotI2RlZmluZSBNRVlFSU9DX1NZTkMgX0lPV1IoJ3YnLCBCQVNFX1ZJRElPQ19QUklWQVRFKzMsIGludCkKLSNkZWZpbmUgTUVZRUlPQ19TVElMTENBUFQgX0lPICgndicsIEJBU0VfVklESU9DX1BSSVZBVEUrNCkKLSNkZWZpbmUgTUVZRUlPQ19TVElMTEpDQVBUIF9JT1IgKCd2JywgQkFTRV9WSURJT0NfUFJJVkFURSs1LCBpbnQpCisjZGVmaW5lIE1FWUVJT0NfUUJVRl9DQVBUIF9JT1coJ3YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMiwgaW50KQorI2RlZmluZSBNRVlFSU9DX1NZTkMgX0lPV1IoJ3YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMywgaW50KQorI2RlZmluZSBNRVlFSU9DX1NUSUxMQ0FQVCBfSU8oJ3YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgNCkKKyNkZWZpbmUgTUVZRUlPQ19TVElMTEpDQVBUIF9JT1IoJ3YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgNSwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfTUVZRV9BR0MgKFY0TDJfQ0lEX1VTRVJfTUVZRV9CQVNFICsgMCkKICNkZWZpbmUgVjRMMl9DSURfTUVZRV9QSUNUVVJFIChWNEwyX0NJRF9VU0VSX01FWUVfQkFTRSArIDEpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21pY19jb21tb24uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWljX2NvbW1vbi5oCmluZGV4IDMwZDgzMDguLjVhMTczNWMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWljX2NvbW1vbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWljX2NvbW1vbi5oCkBAIC0xOSw1MSArMTksNTEgQEAKICNpZm5kZWYgX19NSUNfQ09NTU9OX0hfCiAjZGVmaW5lIF9fTUlDX0NPTU1PTl9IXwogI2luY2x1ZGUgPGxpbnV4L3ZpcnRpb19yaW5nLmg+Ci0jZGVmaW5lIF9fbWljX2FsaWduKGEsIHgpICgoKGEpICsgKHgpIC0gMSkgJiB+KCh4KSAtIDEpKQorI2RlZmluZSBfX21pY19hbGlnbihhLHgpICgoKGEpICsgKHgpIC0gMSkgJiB+KCh4KSAtIDEpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtaWNfZGV2aWNlX2Rlc2MgewotIF9fczggdHlwZTsKLSBfX3U4IG51bV92cTsKLSBfX3U4IGZlYXR1cmVfbGVuOworICBfX3M4IHR5cGU7CisgIF9fdTggbnVtX3ZxOworICBfX3U4IGZlYXR1cmVfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNvbmZpZ19sZW47Ci0gX191OCBzdGF0dXM7Ci0gX19sZTY0IGNvbmZpZ1swXTsKLX0gX19hdHRyaWJ1dGVfXyAoKGFsaWduZWQoOCkpKTsKKyAgX191OCBjb25maWdfbGVuOworICBfX3U4IHN0YXR1czsKKyAgX19sZTY0IGNvbmZpZ1swXTsKK30gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtaWNfZGV2aWNlX2N0cmwgewotIF9fbGU2NCB2ZGV2OwotIF9fdTggY29uZmlnX2NoYW5nZTsKLSBfX3U4IHZkZXZfcmVzZXQ7CisgIF9fbGU2NCB2ZGV2OworICBfX3U4IGNvbmZpZ19jaGFuZ2U7CisgIF9fdTggdmRldl9yZXNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBndWVzdF9hY2s7Ci0gX191OCBob3N0X2FjazsKLSBfX3U4IHVzZWRfYWRkcmVzc191cGRhdGVkOwotIF9fczggYzJoX3ZkZXZfZGI7CisgIF9fdTggZ3Vlc3RfYWNrOworICBfX3U4IGhvc3RfYWNrOworICBfX3U4IHVzZWRfYWRkcmVzc191cGRhdGVkOworICBfX3M4IGMyaF92ZGV2X2RiOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3M4IGgyY192ZGV2X2RiOwotfSBfX2F0dHJpYnV0ZV9fICgoYWxpZ25lZCg4KSkpOworICBfX3M4IGgyY192ZGV2X2RiOworfSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiBzdHJ1Y3QgbWljX2Jvb3RwYXJhbSB7Ci0gX19sZTMyIG1hZ2ljOworICBfX2xlMzIgbWFnaWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczggYzJoX3NodXRkb3duX2RiOwotIF9fczggaDJjX3NodXRkb3duX2RiOwotIF9fczggaDJjX2NvbmZpZ19kYjsKLSBfX3U4IHNodXRkb3duX3N0YXR1czsKKyAgX19zOCBjMmhfc2h1dGRvd25fZGI7CisgIF9fczggaDJjX3NodXRkb3duX2RiOworICBfX3M4IGgyY19jb25maWdfZGI7CisgIF9fdTggc2h1dGRvd25fc3RhdHVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNodXRkb3duX2NhcmQ7Ci19IF9fYXR0cmlidXRlX18gKChhbGlnbmVkKDgpKSk7CisgIF9fdTggc2h1dGRvd25fY2FyZDsKK30gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogc3RydWN0IG1pY19kZXZpY2VfcGFnZSB7Ci0gc3RydWN0IG1pY19ib290cGFyYW0gYm9vdHBhcmFtOworICBzdHJ1Y3QgbWljX2Jvb3RwYXJhbSBib290cGFyYW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBtaWNfZGV2aWNlX2Rlc2MgZGVzY1swXTsKKyAgc3RydWN0IG1pY19kZXZpY2VfZGVzYyBkZXNjWzBdOwogfTsKIHN0cnVjdCBtaWNfdnFjb25maWcgewotIF9fbGU2NCBhZGRyZXNzOworICBfX2xlNjQgYWRkcmVzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTY0IHVzZWRfYWRkcmVzczsKLSBfX2xlMTYgbnVtOwotfSBfX2F0dHJpYnV0ZV9fICgoYWxpZ25lZCg4KSkpOworICBfX2xlNjQgdXNlZF9hZGRyZXNzOworICBfX2xlMTYgbnVtOworfSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiAjZGVmaW5lIE1JQ19WSVJUSU9fUklOR19BTElHTiA0MDk2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNSUNfTUFYX1ZSSU5HUyA0CkBAIC03MiwxNiArNzIsMTYgQEAKICNkZWZpbmUgTUlDX01BWF9ERVNDX0JMS19TSVpFIDI1NgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBfbWljX3ZyaW5nX2luZm8gewotIF9fdTE2IGF2YWlsX2lkeDsKLSBfX2xlMzIgbWFnaWM7CisgIF9fdTE2IGF2YWlsX2lkeDsKKyAgX19sZTMyIG1hZ2ljOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbWljX3ZyaW5nIHsKLSBzdHJ1Y3QgdnJpbmcgdnI7Ci0gc3RydWN0IF9taWNfdnJpbmdfaW5mbyAqaW5mbzsKLSB2b2lkICp2YTsKKyAgc3RydWN0IHZyaW5nIHZyOworICBzdHJ1Y3QgX21pY192cmluZ19pbmZvICogaW5mbzsKKyAgdm9pZCAqIHZhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbGVuOworICBpbnQgbGVuOwogfTsKICNkZWZpbmUgbWljX2FsaWduZWRfZGVzY19zaXplKGQpIF9fbWljX2FsaWduKG1pY19kZXNjX3NpemUoZCksIDgpCiAjaWZuZGVmIElOVEVMX01JQ19DQVJECkBAIC05MSwyNCArOTEsMjQgQEAKICNkZWZpbmUgTUlDX01BR0lDIDB4YzBmZmVlMDAKIGVudW0gbWljX3N0YXRlcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1JQ19PRkZMSU5FID0gMCwKLSBNSUNfT05MSU5FLAotIE1JQ19TSFVUVElOR19ET1dOLAotIE1JQ19SRVNFVF9GQUlMRUQsCisgIE1JQ19PRkZMSU5FID0gMCwKKyAgTUlDX09OTElORSwKKyAgTUlDX1NIVVRUSU5HX0RPV04sCisgIE1JQ19SRVNFVF9GQUlMRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1JQ19TVVNQRU5ESU5HLAotIE1JQ19TVVNQRU5ERUQsCi0gTUlDX0xBU1QKKyAgTUlDX1NVU1BFTkRJTkcsCisgIE1JQ19TVVNQRU5ERUQsCisgIE1JQ19MQVNUCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbWljX3N0YXR1cyB7Ci0gTUlDX05PUCA9IDAsCi0gTUlDX0NSQVNIRUQsCi0gTUlDX0hBTFRFRCwKKyAgTUlDX05PUCA9IDAsCisgIE1JQ19DUkFTSEVELAorICBNSUNfSEFMVEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNSUNfUE9XRVJfT0ZGLAotIE1JQ19SRVNUQVJULAotIE1JQ19TVEFUVVNfTEFTVAorICBNSUNfUE9XRVJfT0ZGLAorICBNSUNfUkVTVEFSVCwKKyAgTUlDX1NUQVRVU19MQVNUCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9taWNfaW9jdGwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWljX2lvY3RsLmgKaW5kZXggOWViMWFkMi4uODNjYmY2NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9taWNfaW9jdGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21pY19pb2N0bC5oCkBAIC0yMSwxMiArMjEsMTIgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IG1pY19jb3B5X2Rlc2MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaW92ZWMgKmlvdjsKLSBfX3UzMiBpb3ZjbnQ7Ci0gX191OCB2cl9pZHg7Ci0gX191OCB1cGRhdGVfdXNlZDsKKyAgc3RydWN0IGlvdmVjICogaW92OworICBfX3UzMiBpb3ZjbnQ7CisgIF9fdTggdnJfaWR4OworICBfX3U4IHVwZGF0ZV91c2VkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBvdXRfbGVuOworICBfX3UzMiBvdXRfbGVuOwogfTsKICNkZWZpbmUgTUlDX1ZJUlRJT19BRERfREVWSUNFIF9JT1dSKCdzJywgMSwgc3RydWN0IG1pY19kZXZpY2VfZGVzYyAqKQogI2RlZmluZSBNSUNfVklSVElPX0NPUFlfREVTQyBfSU9XUigncycsIDIsIHN0cnVjdCBtaWNfY29weV9kZXNjICopCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21paS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9taWkuaAppbmRleCBkMGY5NDBlLi43YWNjMjM0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21paS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWlpLmgKQEAgLTEwMyw4ICsxMDMsOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQURWRVJUSVNFX0xQQUNLIDB4NDAwMAogI2RlZmluZSBBRFZFUlRJU0VfTlBBR0UgMHg4MDAwCi0jZGVmaW5lIEFEVkVSVElTRV9GVUxMIChBRFZFUlRJU0VfMTAwRlVMTCB8IEFEVkVSVElTRV8xMEZVTEwgfCAgIEFEVkVSVElTRV9DU01BKQotI2RlZmluZSBBRFZFUlRJU0VfQUxMIChBRFZFUlRJU0VfMTBIQUxGIHwgQURWRVJUSVNFXzEwRlVMTCB8ICAgQURWRVJUSVNFXzEwMEhBTEYgfCBBRFZFUlRJU0VfMTAwRlVMTCkKKyNkZWZpbmUgQURWRVJUSVNFX0ZVTEwgKEFEVkVSVElTRV8xMDBGVUxMIHwgQURWRVJUSVNFXzEwRlVMTCB8IEFEVkVSVElTRV9DU01BKQorI2RlZmluZSBBRFZFUlRJU0VfQUxMIChBRFZFUlRJU0VfMTBIQUxGIHwgQURWRVJUSVNFXzEwRlVMTCB8IEFEVkVSVElTRV8xMDBIQUxGIHwgQURWRVJUSVNFXzEwMEZVTEwpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBMUEFfU0xDVCAweDAwMWYKICNkZWZpbmUgTFBBXzEwSEFMRiAweDAwMjAKQEAgLTE2MiwxMCArMTYyLDEwIEBACiAjZGVmaW5lIE1JSV9NTURfQ1RSTF9JTkNSX09OX1dUIDB4QzAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtaWlfaW9jdGxfZGF0YSB7Ci0gX191MTYgcGh5X2lkOwotIF9fdTE2IHJlZ19udW07Ci0gX191MTYgdmFsX2luOworICBfX3UxNiBwaHlfaWQ7CisgIF9fdTE2IHJlZ19udW07CisgIF9fdTE2IHZhbF9pbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgdmFsX291dDsKKyAgX191MTYgdmFsX291dDsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWluaXhfZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbWluaXhfZnMuaAppbmRleCA3ZTY3NGZlLi5jMTlkNGY2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21pbml4X2ZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9taW5peF9mcy5oCkBAIC0yOSw3NSArMjksNzUgQEAKICNkZWZpbmUgTUlOSVhfWl9NQVBfU0xPVFMgNjQKICNkZWZpbmUgTUlOSVhfVkFMSURfRlMgMHgwMDAxCiAjZGVmaW5lIE1JTklYX0VSUk9SX0ZTIDB4MDAwMgotI2RlZmluZSBNSU5JWF9JTk9ERVNfUEVSX0JMT0NLICgoQkxPQ0tfU0laRSkvKHNpemVvZiAoc3RydWN0IG1pbml4X2lub2RlKSkpCisjZGVmaW5lIE1JTklYX0lOT0RFU19QRVJfQkxPQ0sgKChCTE9DS19TSVpFKSAvIChzaXplb2Yoc3RydWN0IG1pbml4X2lub2RlKSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG1pbml4X2lub2RlIHsKLSBfX3UxNiBpX21vZGU7Ci0gX191MTYgaV91aWQ7Ci0gX191MzIgaV9zaXplOworICBfX3UxNiBpX21vZGU7CisgIF9fdTE2IGlfdWlkOworICBfX3UzMiBpX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlfdGltZTsKLSBfX3U4IGlfZ2lkOwotIF9fdTggaV9ubGlua3M7Ci0gX191MTYgaV96b25lWzldOworICBfX3UzMiBpX3RpbWU7CisgIF9fdTggaV9naWQ7CisgIF9fdTggaV9ubGlua3M7CisgIF9fdTE2IGlfem9uZVs5XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG1pbml4Ml9pbm9kZSB7Ci0gX191MTYgaV9tb2RlOwotIF9fdTE2IGlfbmxpbmtzOworICBfX3UxNiBpX21vZGU7CisgIF9fdTE2IGlfbmxpbmtzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBpX3VpZDsKLSBfX3UxNiBpX2dpZDsKLSBfX3UzMiBpX3NpemU7Ci0gX191MzIgaV9hdGltZTsKKyAgX191MTYgaV91aWQ7CisgIF9fdTE2IGlfZ2lkOworICBfX3UzMiBpX3NpemU7CisgIF9fdTMyIGlfYXRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlfbXRpbWU7Ci0gX191MzIgaV9jdGltZTsKLSBfX3UzMiBpX3pvbmVbMTBdOworICBfX3UzMiBpX210aW1lOworICBfX3UzMiBpX2N0aW1lOworICBfX3UzMiBpX3pvbmVbMTBdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbWluaXhfc3VwZXJfYmxvY2sgewotIF9fdTE2IHNfbmlub2RlczsKLSBfX3UxNiBzX256b25lczsKLSBfX3UxNiBzX2ltYXBfYmxvY2tzOworICBfX3UxNiBzX25pbm9kZXM7CisgIF9fdTE2IHNfbnpvbmVzOworICBfX3UxNiBzX2ltYXBfYmxvY2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzX3ptYXBfYmxvY2tzOwotIF9fdTE2IHNfZmlyc3RkYXRhem9uZTsKLSBfX3UxNiBzX2xvZ196b25lX3NpemU7Ci0gX191MzIgc19tYXhfc2l6ZTsKKyAgX191MTYgc196bWFwX2Jsb2NrczsKKyAgX191MTYgc19maXJzdGRhdGF6b25lOworICBfX3UxNiBzX2xvZ196b25lX3NpemU7CisgIF9fdTMyIHNfbWF4X3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNfbWFnaWM7Ci0gX191MTYgc19zdGF0ZTsKLSBfX3UzMiBzX3pvbmVzOworICBfX3UxNiBzX21hZ2ljOworICBfX3UxNiBzX3N0YXRlOworICBfX3UzMiBzX3pvbmVzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbWluaXgzX3N1cGVyX2Jsb2NrIHsKLSBfX3UzMiBzX25pbm9kZXM7Ci0gX191MTYgc19wYWQwOwotIF9fdTE2IHNfaW1hcF9ibG9ja3M7CisgIF9fdTMyIHNfbmlub2RlczsKKyAgX191MTYgc19wYWQwOworICBfX3UxNiBzX2ltYXBfYmxvY2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzX3ptYXBfYmxvY2tzOwotIF9fdTE2IHNfZmlyc3RkYXRhem9uZTsKLSBfX3UxNiBzX2xvZ196b25lX3NpemU7Ci0gX191MTYgc19wYWQxOworICBfX3UxNiBzX3ptYXBfYmxvY2tzOworICBfX3UxNiBzX2ZpcnN0ZGF0YXpvbmU7CisgIF9fdTE2IHNfbG9nX3pvbmVfc2l6ZTsKKyAgX191MTYgc19wYWQxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzX21heF9zaXplOwotIF9fdTMyIHNfem9uZXM7Ci0gX191MTYgc19tYWdpYzsKLSBfX3UxNiBzX3BhZDI7CisgIF9fdTMyIHNfbWF4X3NpemU7CisgIF9fdTMyIHNfem9uZXM7CisgIF9fdTE2IHNfbWFnaWM7CisgIF9fdTE2IHNfcGFkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc19ibG9ja3NpemU7Ci0gX191OCBzX2Rpc2tfdmVyc2lvbjsKKyAgX191MTYgc19ibG9ja3NpemU7CisgIF9fdTggc19kaXNrX3ZlcnNpb247CiB9Owogc3RydWN0IG1pbml4X2Rpcl9lbnRyeSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGlub2RlOwotIGNoYXIgbmFtZVswXTsKKyAgX191MTYgaW5vZGU7CisgIGNoYXIgbmFtZVswXTsKIH07CiBzdHJ1Y3QgbWluaXgzX2Rpcl9lbnRyeSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlub2RlOwotIGNoYXIgbmFtZVswXTsKKyAgX191MzIgaW5vZGU7CisgIGNoYXIgbmFtZVswXTsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21tYy9pb2N0bC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tbWMvaW9jdGwuaAppbmRleCAxYmQwMjA0Li43NjFmMWQ3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21tYy9pb2N0bC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbW1jL2lvY3RsLmgKQEAgLTIxLDI1ICsyMSwyNSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgbW1jX2lvY19jbWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgd3JpdGVfZmxhZzsKLSBpbnQgaXNfYWNtZDsKLSBfX3UzMiBvcGNvZGU7Ci0gX191MzIgYXJnOworICBpbnQgd3JpdGVfZmxhZzsKKyAgaW50IGlzX2FjbWQ7CisgIF9fdTMyIG9wY29kZTsKKyAgX191MzIgYXJnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNwb25zZVs0XTsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gdW5zaWduZWQgaW50IGJsa3N6OwotIHVuc2lnbmVkIGludCBibG9ja3M7CisgIF9fdTMyIHJlc3BvbnNlWzRdOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIHVuc2lnbmVkIGludCBibGtzejsKKyAgdW5zaWduZWQgaW50IGJsb2NrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHBvc3RzbGVlcF9taW5fdXM7Ci0gdW5zaWduZWQgaW50IHBvc3RzbGVlcF9tYXhfdXM7Ci0gdW5zaWduZWQgaW50IGRhdGFfdGltZW91dF9uczsKLSB1bnNpZ25lZCBpbnQgY21kX3RpbWVvdXRfbXM7CisgIHVuc2lnbmVkIGludCBwb3N0c2xlZXBfbWluX3VzOworICB1bnNpZ25lZCBpbnQgcG9zdHNsZWVwX21heF91czsKKyAgdW5zaWduZWQgaW50IGRhdGFfdGltZW91dF9uczsKKyAgdW5zaWduZWQgaW50IGNtZF90aW1lb3V0X21zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBfX3BhZDsKLSBfX3U2NCBkYXRhX3B0cjsKKyAgX191MzIgX19wYWQ7CisgIF9fdTY0IGRhdGFfcHRyOwogfTsKLSNkZWZpbmUgbW1jX2lvY19jbWRfc2V0X2RhdGEoaWMsIHB0cikgaWMuZGF0YV9wdHIgPSAoX191NjQpKHVuc2lnbmVkIGxvbmcpIHB0cgorI2RlZmluZSBtbWNfaW9jX2NtZF9zZXRfZGF0YShpYyxwdHIpIGljLmRhdGFfcHRyID0gKF9fdTY0KSAodW5zaWduZWQgbG9uZykgcHRyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNTUNfSU9DX0NNRCBfSU9XUihNTUNfQkxPQ0tfTUFKT1IsIDAsIHN0cnVjdCBtbWNfaW9jX2NtZCkKICNkZWZpbmUgTU1DX0lPQ19NQVhfQllURVMgKDUxMkwgKiAyNTYpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21wbHMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXBscy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0YjQyNzkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21wbHMuaApAQCAtMCwwICsxLDM4IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9VQVBJX01QTFNfSAorI2RlZmluZSBfVUFQSV9NUExTX0gKKyNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgorI2luY2x1ZGUgPGFzbS9ieXRlb3JkZXIuaD4KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgbXBsc19sYWJlbCB7CisgIF9fYmUzMiBlbnRyeTsKK307CisjZGVmaW5lIE1QTFNfTFNfTEFCRUxfTUFTSyAweEZGRkZGMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNUExTX0xTX0xBQkVMX1NISUZUIDEyCisjZGVmaW5lIE1QTFNfTFNfVENfTUFTSyAweDAwMDAwRTAwCisjZGVmaW5lIE1QTFNfTFNfVENfU0hJRlQgOQorI2RlZmluZSBNUExTX0xTX1NfTUFTSyAweDAwMDAwMTAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBNUExTX0xTX1NfU0hJRlQgOAorI2RlZmluZSBNUExTX0xTX1RUTF9NQVNLIDB4MDAwMDAwRkYKKyNkZWZpbmUgTVBMU19MU19UVExfU0hJRlQgMAorI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tcXVldWUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXF1ZXVlLmgKaW5kZXggNDU5OWNkYy4uNDVmM2ExOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tcXVldWUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21xdWV1ZS5oCkBAIC0yMiwxMiArMjIsMTIgQEAKICNkZWZpbmUgTVFfQllURVNfTUFYIDgxOTIwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtcV9hdHRyIHsKLSBfX2tlcm5lbF9sb25nX3QgbXFfZmxhZ3M7Ci0gX19rZXJuZWxfbG9uZ190IG1xX21heG1zZzsKLSBfX2tlcm5lbF9sb25nX3QgbXFfbXNnc2l6ZTsKKyAgX19rZXJuZWxfbG9uZ190IG1xX2ZsYWdzOworICBfX2tlcm5lbF9sb25nX3QgbXFfbWF4bXNnOworICBfX2tlcm5lbF9sb25nX3QgbXFfbXNnc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfbG9uZ190IG1xX2N1cm1zZ3M7Ci0gX19rZXJuZWxfbG9uZ190IF9fcmVzZXJ2ZWRbNF07CisgIF9fa2VybmVsX2xvbmdfdCBtcV9jdXJtc2dzOworICBfX2tlcm5lbF9sb25nX3QgX19yZXNlcnZlZFs0XTsKIH07CiAjZGVmaW5lIE5PVElGWV9OT05FIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21yb3V0ZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tcm91dGUuaAppbmRleCA1NTA3NzBmLi5iYWU1ZDcxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21yb3V0ZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXJvdXRlLmgKQEAgLTIzLDUwICsyMyw1MCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVJUX0JBU0UgMjAwCiAjZGVmaW5lIE1SVF9JTklUIChNUlRfQkFTRSkKLSNkZWZpbmUgTVJUX0RPTkUgKE1SVF9CQVNFKzEpCi0jZGVmaW5lIE1SVF9BRERfVklGIChNUlRfQkFTRSsyKQorI2RlZmluZSBNUlRfRE9ORSAoTVJUX0JBU0UgKyAxKQorI2RlZmluZSBNUlRfQUREX1ZJRiAoTVJUX0JBU0UgKyAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVJUX0RFTF9WSUYgKE1SVF9CQVNFKzMpCi0jZGVmaW5lIE1SVF9BRERfTUZDIChNUlRfQkFTRSs0KQotI2RlZmluZSBNUlRfREVMX01GQyAoTVJUX0JBU0UrNSkKLSNkZWZpbmUgTVJUX1ZFUlNJT04gKE1SVF9CQVNFKzYpCisjZGVmaW5lIE1SVF9ERUxfVklGIChNUlRfQkFTRSArIDMpCisjZGVmaW5lIE1SVF9BRERfTUZDIChNUlRfQkFTRSArIDQpCisjZGVmaW5lIE1SVF9ERUxfTUZDIChNUlRfQkFTRSArIDUpCisjZGVmaW5lIE1SVF9WRVJTSU9OIChNUlRfQkFTRSArIDYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNUlRfQVNTRVJUIChNUlRfQkFTRSs3KQotI2RlZmluZSBNUlRfUElNIChNUlRfQkFTRSs4KQotI2RlZmluZSBNUlRfVEFCTEUgKE1SVF9CQVNFKzkpCi0jZGVmaW5lIE1SVF9BRERfTUZDX1BST1hZIChNUlRfQkFTRSsxMCkKKyNkZWZpbmUgTVJUX0FTU0VSVCAoTVJUX0JBU0UgKyA3KQorI2RlZmluZSBNUlRfUElNIChNUlRfQkFTRSArIDgpCisjZGVmaW5lIE1SVF9UQUJMRSAoTVJUX0JBU0UgKyA5KQorI2RlZmluZSBNUlRfQUREX01GQ19QUk9YWSAoTVJUX0JBU0UgKyAxMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1SVF9ERUxfTUZDX1BST1hZIChNUlRfQkFTRSsxMSkKLSNkZWZpbmUgTVJUX01BWCAoTVJUX0JBU0UrMTEpCisjZGVmaW5lIE1SVF9ERUxfTUZDX1BST1hZIChNUlRfQkFTRSArIDExKQorI2RlZmluZSBNUlRfTUFYIChNUlRfQkFTRSArIDExKQogI2RlZmluZSBTSU9DR0VUVklGQ05UIFNJT0NQUk9UT1BSSVZBVEUKLSNkZWZpbmUgU0lPQ0dFVFNHQ05UIChTSU9DUFJPVE9QUklWQVRFKzEpCisjZGVmaW5lIFNJT0NHRVRTR0NOVCAoU0lPQ1BST1RPUFJJVkFURSArIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTSU9DR0VUUlBGIChTSU9DUFJPVE9QUklWQVRFKzIpCisjZGVmaW5lIFNJT0NHRVRSUEYgKFNJT0NQUk9UT1BSSVZBVEUgKyAyKQogI2RlZmluZSBNQVhWSUZTIDMyCiB0eXBlZGVmIHVuc2lnbmVkIGxvbmcgdmlmYml0bWFwX3Q7CiB0eXBlZGVmIHVuc2lnbmVkIHNob3J0IHZpZmlfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFMTF9WSUZTICgodmlmaV90KSgtMSkpCi0jZGVmaW5lIFZJRk1fU0VUKG4sbSkgKChtKXw9KDE8PChuKSkpCi0jZGVmaW5lIFZJRk1fQ0xSKG4sbSkgKChtKSY9figxPDwobikpKQotI2RlZmluZSBWSUZNX0lTU0VUKG4sbSkgKChtKSYoMTw8KG4pKSkKKyNkZWZpbmUgQUxMX1ZJRlMgKCh2aWZpX3QpICgtIDEpKQorI2RlZmluZSBWSUZNX1NFVChuLG0pICgobSkgfD0gKDEgPDwgKG4pKSkKKyNkZWZpbmUgVklGTV9DTFIobixtKSAoKG0pICY9IH4oMSA8PCAobikpKQorI2RlZmluZSBWSUZNX0lTU0VUKG4sbSkgKChtKSAmICgxIDw8IChuKSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWSUZNX0NMUkFMTChtKSAoKG0pPTApCi0jZGVmaW5lIFZJRk1fQ09QWShtZnJvbSxtdG8pICgobXRvKT0obWZyb20pKQotI2RlZmluZSBWSUZNX1NBTUUobTEsbTIpICgobTEpPT0obTIpKQorI2RlZmluZSBWSUZNX0NMUkFMTChtKSAoKG0pID0gMCkKKyNkZWZpbmUgVklGTV9DT1BZKG1mcm9tLG10bykgKChtdG8pID0gKG1mcm9tKSkKKyNkZWZpbmUgVklGTV9TQU1FKG0xLG0yKSAoKG0xKSA9PSAobTIpKQogc3RydWN0IHZpZmN0bCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZpZmlfdCB2aWZjX3ZpZmk7Ci0gdW5zaWduZWQgY2hhciB2aWZjX2ZsYWdzOwotIHVuc2lnbmVkIGNoYXIgdmlmY190aHJlc2hvbGQ7Ci0gdW5zaWduZWQgaW50IHZpZmNfcmF0ZV9saW1pdDsKKyAgdmlmaV90IHZpZmNfdmlmaTsKKyAgdW5zaWduZWQgY2hhciB2aWZjX2ZsYWdzOworICB1bnNpZ25lZCBjaGFyIHZpZmNfdGhyZXNob2xkOworICB1bnNpZ25lZCBpbnQgdmlmY19yYXRlX2xpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IGluX2FkZHIgdmlmY19sY2xfYWRkcjsKLSBpbnQgdmlmY19sY2xfaWZpbmRleDsKLSB9OworICB1bmlvbiB7CisgICAgc3RydWN0IGluX2FkZHIgdmlmY19sY2xfYWRkcjsKKyAgICBpbnQgdmlmY19sY2xfaWZpbmRleDsKKyAgfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluX2FkZHIgdmlmY19ybXRfYWRkcjsKKyAgc3RydWN0IGluX2FkZHIgdmlmY19ybXRfYWRkcjsKIH07CiAjZGVmaW5lIFZJRkZfVFVOTkVMIDB4MQogI2RlZmluZSBWSUZGX1NSQ1JUIDB4MgpAQCAtNzQsNDYgKzc0LDQ2IEBACiAjZGVmaW5lIFZJRkZfUkVHSVNURVIgMHg0CiAjZGVmaW5lIFZJRkZfVVNFX0lGSU5ERVggMHg4CiBzdHJ1Y3QgbWZjY3RsIHsKLSBzdHJ1Y3QgaW5fYWRkciBtZmNjX29yaWdpbjsKKyAgc3RydWN0IGluX2FkZHIgbWZjY19vcmlnaW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpbl9hZGRyIG1mY2NfbWNhc3RncnA7Ci0gdmlmaV90IG1mY2NfcGFyZW50OwotIHVuc2lnbmVkIGNoYXIgbWZjY190dGxzW01BWFZJRlNdOwotIHVuc2lnbmVkIGludCBtZmNjX3BrdF9jbnQ7CisgIHN0cnVjdCBpbl9hZGRyIG1mY2NfbWNhc3RncnA7CisgIHZpZmlfdCBtZmNjX3BhcmVudDsKKyAgdW5zaWduZWQgY2hhciBtZmNjX3R0bHNbTUFYVklGU107CisgIHVuc2lnbmVkIGludCBtZmNjX3BrdF9jbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBtZmNjX2J5dGVfY250OwotIHVuc2lnbmVkIGludCBtZmNjX3dyb25nX2lmOwotIGludCBtZmNjX2V4cGlyZTsKKyAgdW5zaWduZWQgaW50IG1mY2NfYnl0ZV9jbnQ7CisgIHVuc2lnbmVkIGludCBtZmNjX3dyb25nX2lmOworICBpbnQgbWZjY19leHBpcmU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzaW9jX3NnX3JlcSB7Ci0gc3RydWN0IGluX2FkZHIgc3JjOwotIHN0cnVjdCBpbl9hZGRyIGdycDsKLSB1bnNpZ25lZCBsb25nIHBrdGNudDsKKyAgc3RydWN0IGluX2FkZHIgc3JjOworICBzdHJ1Y3QgaW5fYWRkciBncnA7CisgIHVuc2lnbmVkIGxvbmcgcGt0Y250OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGJ5dGVjbnQ7Ci0gdW5zaWduZWQgbG9uZyB3cm9uZ19pZjsKKyAgdW5zaWduZWQgbG9uZyBieXRlY250OworICB1bnNpZ25lZCBsb25nIHdyb25nX2lmOwogfTsKIHN0cnVjdCBzaW9jX3ZpZl9yZXEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2aWZpX3QgdmlmaTsKLSB1bnNpZ25lZCBsb25nIGljb3VudDsKLSB1bnNpZ25lZCBsb25nIG9jb3VudDsKLSB1bnNpZ25lZCBsb25nIGlieXRlczsKKyAgdmlmaV90IHZpZmk7CisgIHVuc2lnbmVkIGxvbmcgaWNvdW50OworICB1bnNpZ25lZCBsb25nIG9jb3VudDsKKyAgdW5zaWduZWQgbG9uZyBpYnl0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgb2J5dGVzOworICB1bnNpZ25lZCBsb25nIG9ieXRlczsKIH07CiBzdHJ1Y3QgaWdtcG1zZyB7Ci0gX191MzIgdW51c2VkMSx1bnVzZWQyOworICBfX3UzMiB1bnVzZWQxLCB1bnVzZWQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGltX21zZ3R5cGU7Ci0gdW5zaWduZWQgY2hhciBpbV9tYno7Ci0gdW5zaWduZWQgY2hhciBpbV92aWY7Ci0gdW5zaWduZWQgY2hhciB1bnVzZWQzOworICB1bnNpZ25lZCBjaGFyIGltX21zZ3R5cGU7CisgIHVuc2lnbmVkIGNoYXIgaW1fbWJ6OworICB1bnNpZ25lZCBjaGFyIGltX3ZpZjsKKyAgdW5zaWduZWQgY2hhciB1bnVzZWQzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaW5fYWRkciBpbV9zcmMsaW1fZHN0OworICBzdHJ1Y3QgaW5fYWRkciBpbV9zcmMsIGltX2RzdDsKIH07Ci0jZGVmaW5lIE1GQ19BU1NFUlRfVEhSRVNIICgzKkhaKQorI2RlZmluZSBNRkNfQVNTRVJUX1RIUkVTSCAoMyAqIEhaKQogI2RlZmluZSBJR01QTVNHX05PQ0FDSEUgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUdNUE1TR19XUk9OR1ZJRiAyCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21yb3V0ZTYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXJvdXRlNi5oCmluZGV4IGM5ZjMxNjQuLjhhM2MzNjMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXJvdXRlNi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXJvdXRlNi5oCkBAIC0yMywzMCArMjMsMzAgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1SVDZfQkFTRSAyMDAKICNkZWZpbmUgTVJUNl9JTklUIChNUlQ2X0JBU0UpCi0jZGVmaW5lIE1SVDZfRE9ORSAoTVJUNl9CQVNFKzEpCi0jZGVmaW5lIE1SVDZfQUREX01JRiAoTVJUNl9CQVNFKzIpCisjZGVmaW5lIE1SVDZfRE9ORSAoTVJUNl9CQVNFICsgMSkKKyNkZWZpbmUgTVJUNl9BRERfTUlGIChNUlQ2X0JBU0UgKyAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVJUNl9ERUxfTUlGIChNUlQ2X0JBU0UrMykKLSNkZWZpbmUgTVJUNl9BRERfTUZDIChNUlQ2X0JBU0UrNCkKLSNkZWZpbmUgTVJUNl9ERUxfTUZDIChNUlQ2X0JBU0UrNSkKLSNkZWZpbmUgTVJUNl9WRVJTSU9OIChNUlQ2X0JBU0UrNikKKyNkZWZpbmUgTVJUNl9ERUxfTUlGIChNUlQ2X0JBU0UgKyAzKQorI2RlZmluZSBNUlQ2X0FERF9NRkMgKE1SVDZfQkFTRSArIDQpCisjZGVmaW5lIE1SVDZfREVMX01GQyAoTVJUNl9CQVNFICsgNSkKKyNkZWZpbmUgTVJUNl9WRVJTSU9OIChNUlQ2X0JBU0UgKyA2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVJUNl9BU1NFUlQgKE1SVDZfQkFTRSs3KQotI2RlZmluZSBNUlQ2X1BJTSAoTVJUNl9CQVNFKzgpCi0jZGVmaW5lIE1SVDZfVEFCTEUgKE1SVDZfQkFTRSs5KQotI2RlZmluZSBNUlQ2X0FERF9NRkNfUFJPWFkgKE1SVDZfQkFTRSsxMCkKKyNkZWZpbmUgTVJUNl9BU1NFUlQgKE1SVDZfQkFTRSArIDcpCisjZGVmaW5lIE1SVDZfUElNIChNUlQ2X0JBU0UgKyA4KQorI2RlZmluZSBNUlQ2X1RBQkxFIChNUlQ2X0JBU0UgKyA5KQorI2RlZmluZSBNUlQ2X0FERF9NRkNfUFJPWFkgKE1SVDZfQkFTRSArIDEwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTVJUNl9ERUxfTUZDX1BST1hZIChNUlQ2X0JBU0UrMTEpCi0jZGVmaW5lIE1SVDZfTUFYIChNUlQ2X0JBU0UrMTEpCisjZGVmaW5lIE1SVDZfREVMX01GQ19QUk9YWSAoTVJUNl9CQVNFICsgMTEpCisjZGVmaW5lIE1SVDZfTUFYIChNUlQ2X0JBU0UgKyAxMSkKICNkZWZpbmUgU0lPQ0dFVE1JRkNOVF9JTjYgU0lPQ1BST1RPUFJJVkFURQotI2RlZmluZSBTSU9DR0VUU0dDTlRfSU42IChTSU9DUFJPVE9QUklWQVRFKzEpCisjZGVmaW5lIFNJT0NHRVRTR0NOVF9JTjYgKFNJT0NQUk9UT1BSSVZBVEUgKyAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0lPQ0dFVFJQRiAoU0lPQ1BST1RPUFJJVkFURSsyKQorI2RlZmluZSBTSU9DR0VUUlBGIChTSU9DUFJPVE9QUklWQVRFICsgMikKICNkZWZpbmUgTUFYTUlGUyAzMgogdHlwZWRlZiB1bnNpZ25lZCBsb25nIG1pZmJpdG1hcF90OwogdHlwZWRlZiB1bnNpZ25lZCBzaG9ydCBtaWZpX3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBBTExfTUlGUyAoKG1pZmlfdCkoLTEpKQorI2RlZmluZSBBTExfTUlGUyAoKG1pZmlfdCkgKC0gMSkpCiAjaWZuZGVmIElGX1NFVFNJWkUKICNkZWZpbmUgSUZfU0VUU0laRSAyNTYKICNlbmRpZgpAQCAtNTgsNDggKzU4LDQ4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCiB0eXBlZGVmIHN0cnVjdCBpZl9zZXQgewotIGlmX21hc2sgaWZzX2JpdHNbRElWX1JPVU5EX1VQKElGX1NFVFNJWkUsIE5JRkJJVFMpXTsKKyAgaWZfbWFzayBpZnNfYml0c1tESVZfUk9VTkRfVVAoSUZfU0VUU0laRSwgTklGQklUUyldOwogfSBpZl9zZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJRl9TRVQobiwgcCkgKChwKS0+aWZzX2JpdHNbKG4pL05JRkJJVFNdIHw9ICgxIDw8ICgobikgJSBOSUZCSVRTKSkpCi0jZGVmaW5lIElGX0NMUihuLCBwKSAoKHApLT5pZnNfYml0c1sobikvTklGQklUU10gJj0gfigxIDw8ICgobikgJSBOSUZCSVRTKSkpCi0jZGVmaW5lIElGX0lTU0VUKG4sIHApICgocCktPmlmc19iaXRzWyhuKS9OSUZCSVRTXSAmICgxIDw8ICgobikgJSBOSUZCSVRTKSkpCi0jZGVmaW5lIElGX0NPUFkoZiwgdCkgYmNvcHkoZiwgdCwgc2l6ZW9mKCooZikpKQorI2RlZmluZSBJRl9TRVQobixwKSAoKHApLT5pZnNfYml0c1sobikgLyBOSUZCSVRTXSB8PSAoMSA8PCAoKG4pICUgTklGQklUUykpKQorI2RlZmluZSBJRl9DTFIobixwKSAoKHApLT5pZnNfYml0c1sobikgLyBOSUZCSVRTXSAmPSB+KDEgPDwgKChuKSAlIE5JRkJJVFMpKSkKKyNkZWZpbmUgSUZfSVNTRVQobixwKSAoKHApLT5pZnNfYml0c1sobikgLyBOSUZCSVRTXSAmICgxIDw8ICgobikgJSBOSUZCSVRTKSkpCisjZGVmaW5lIElGX0NPUFkoZix0KSBiY29weShmLCB0LCBzaXplb2YoKiAoZikpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUZfWkVSTyhwKSBiemVybyhwLCBzaXplb2YoKihwKSkpCisjZGVmaW5lIElGX1pFUk8ocCkgYnplcm8ocCwgc2l6ZW9mKCogKHApKSkKIHN0cnVjdCBtaWY2Y3RsIHsKLSBtaWZpX3QgbWlmNmNfbWlmaTsKLSB1bnNpZ25lZCBjaGFyIG1pZjZjX2ZsYWdzOworICBtaWZpX3QgbWlmNmNfbWlmaTsKKyAgdW5zaWduZWQgY2hhciBtaWY2Y19mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciB2aWZjX3RocmVzaG9sZDsKLSBfX3UxNiBtaWY2Y19waWZpOwotIHVuc2lnbmVkIGludCB2aWZjX3JhdGVfbGltaXQ7CisgIHVuc2lnbmVkIGNoYXIgdmlmY190aHJlc2hvbGQ7CisgIF9fdTE2IG1pZjZjX3BpZmk7CisgIHVuc2lnbmVkIGludCB2aWZjX3JhdGVfbGltaXQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUlGRl9SRUdJU1RFUiAweDEKIHN0cnVjdCBtZjZjY3RsIHsKLSBzdHJ1Y3Qgc29ja2FkZHJfaW42IG1mNmNjX29yaWdpbjsKLSBzdHJ1Y3Qgc29ja2FkZHJfaW42IG1mNmNjX21jYXN0Z3JwOworICBzdHJ1Y3Qgc29ja2FkZHJfaW42IG1mNmNjX29yaWdpbjsKKyAgc3RydWN0IHNvY2thZGRyX2luNiBtZjZjY19tY2FzdGdycDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbWlmaV90IG1mNmNjX3BhcmVudDsKLSBzdHJ1Y3QgaWZfc2V0IG1mNmNjX2lmc2V0OworICBtaWZpX3QgbWY2Y2NfcGFyZW50OworICBzdHJ1Y3QgaWZfc2V0IG1mNmNjX2lmc2V0OwogfTsKIHN0cnVjdCBzaW9jX3NnX3JlcTYgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHJfaW42IHNyYzsKLSBzdHJ1Y3Qgc29ja2FkZHJfaW42IGdycDsKLSB1bnNpZ25lZCBsb25nIHBrdGNudDsKLSB1bnNpZ25lZCBsb25nIGJ5dGVjbnQ7CisgIHN0cnVjdCBzb2NrYWRkcl9pbjYgc3JjOworICBzdHJ1Y3Qgc29ja2FkZHJfaW42IGdycDsKKyAgdW5zaWduZWQgbG9uZyBwa3RjbnQ7CisgIHVuc2lnbmVkIGxvbmcgYnl0ZWNudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyB3cm9uZ19pZjsKKyAgdW5zaWduZWQgbG9uZyB3cm9uZ19pZjsKIH07CiBzdHJ1Y3Qgc2lvY19taWZfcmVxNiB7Ci0gbWlmaV90IG1pZmk7CisgIG1pZmlfdCBtaWZpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGljb3VudDsKLSB1bnNpZ25lZCBsb25nIG9jb3VudDsKLSB1bnNpZ25lZCBsb25nIGlieXRlczsKLSB1bnNpZ25lZCBsb25nIG9ieXRlczsKKyAgdW5zaWduZWQgbG9uZyBpY291bnQ7CisgIHVuc2lnbmVkIGxvbmcgb2NvdW50OworICB1bnNpZ25lZCBsb25nIGlieXRlczsKKyAgdW5zaWduZWQgbG9uZyBvYnl0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBtcnQ2bXNnIHsKQEAgLTEwNywxMiArMTA3LDEyIEBACiAjZGVmaW5lIE1SVDZNU0dfV1JPTkdNSUYgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVJUNk1TR19XSE9MRVBLVCAzCi0gX191OCBpbTZfbWJ6OwotIF9fdTggaW02X21zZ3R5cGU7Ci0gX191MTYgaW02X21pZjsKKyAgX191OCBpbTZfbWJ6OworICBfX3U4IGltNl9tc2d0eXBlOworICBfX3UxNiBpbTZfbWlmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbTZfcGFkOwotIHN0cnVjdCBpbjZfYWRkciBpbTZfc3JjLCBpbTZfZHN0OworICBfX3UzMiBpbTZfcGFkOworICBzdHJ1Y3QgaW42X2FkZHIgaW02X3NyYywgaW02X2RzdDsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21zZG9zX2ZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21zZG9zX2ZzLmgKaW5kZXggZjExOTBhZC4uYmFhMTg1MCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tc2Rvc19mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXNkb3NfZnMuaApAQCAtNTcsMjEgKzU3LDIxIEBACiAjZGVmaW5lIENBU0VfTE9XRVJfRVhUIDE2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBERUxFVEVEX0ZMQUcgMHhlNQotI2RlZmluZSBJU19GUkVFKG4pICghKihuKSB8fCAqKG4pID09IERFTEVURURfRkxBRykKKyNkZWZpbmUgSVNfRlJFRShuKSAoISAqIChuKSB8fCAqIChuKSA9PSBERUxFVEVEX0ZMQUcpCiAjZGVmaW5lIEZBVF9MRk5fTEVOIDI1NQogI2RlZmluZSBNU0RPU19OQU1FIDExCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNU0RPU19TTE9UUyAyMQogI2RlZmluZSBNU0RPU19ET1QgIi4gICAgICAgICAgIgogI2RlZmluZSBNU0RPU19ET1RET1QgIi4uICAgICAgICAgIgotI2RlZmluZSBGQVRfRklSU1RfRU5UKHMsIHgpICgoTVNET1NfU0IocyktPmZhdF9iaXRzID09IDMyID8gMHgwRkZGRkYwMCA6ICAgTVNET1NfU0IocyktPmZhdF9iaXRzID09IDE2ID8gMHhGRjAwIDogMHhGMDApIHwgKHgpKQorI2RlZmluZSBGQVRfRklSU1RfRU5UKHMseCkgKChNU0RPU19TQihzKS0+ZmF0X2JpdHMgPT0gMzIgPyAweDBGRkZGRjAwIDogTVNET1NfU0IocyktPmZhdF9iaXRzID09IDE2ID8gMHhGRjAwIDogMHhGMDApIHwgKHgpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkFUX1NUQVJUX0VOVCAyCiAjZGVmaW5lIE1BWF9GQVQxMiAweEZGNAogI2RlZmluZSBNQVhfRkFUMTYgMHhGRkY0CiAjZGVmaW5lIE1BWF9GQVQzMiAweDBGRkZGRkY2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNQVhfRkFUKHMpIChNU0RPU19TQihzKS0+ZmF0X2JpdHMgPT0gMzIgPyBNQVhfRkFUMzIgOiAgIE1TRE9TX1NCKHMpLT5mYXRfYml0cyA9PSAxNiA/IE1BWF9GQVQxNiA6IE1BWF9GQVQxMikKKyNkZWZpbmUgTUFYX0ZBVChzKSAoTVNET1NfU0IocyktPmZhdF9iaXRzID09IDMyID8gTUFYX0ZBVDMyIDogTVNET1NfU0IocyktPmZhdF9iaXRzID09IDE2ID8gTUFYX0ZBVDE2IDogTUFYX0ZBVDEyKQogI2RlZmluZSBCQURfRkFUMTIgMHhGRjcKICNkZWZpbmUgQkFEX0ZBVDE2IDB4RkZGNwogI2RlZmluZSBCQURfRkFUMzIgMHgwRkZGRkZGNwpAQCAtODYsMTQgKzg2LDE0IEBACiAjZGVmaW5lIEZBVF9GU0lORk9fU0lHMSAweDQxNjE1MjUyCiAjZGVmaW5lIEZBVF9GU0lORk9fU0lHMiAweDYxNDE3MjcyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBJU19GU0lORk8oeCkgKGxlMzJfdG9fY3B1KCh4KS0+c2lnbmF0dXJlMSkgPT0gRkFUX0ZTSU5GT19TSUcxICAgJiYgbGUzMl90b19jcHUoKHgpLT5zaWduYXR1cmUyKSA9PSBGQVRfRlNJTkZPX1NJRzIpCisjZGVmaW5lIElTX0ZTSU5GTyh4KSAobGUzMl90b19jcHUoKHgpLT5zaWduYXR1cmUxKSA9PSBGQVRfRlNJTkZPX1NJRzEgJiYgbGUzMl90b19jcHUoKHgpLT5zaWduYXR1cmUyKSA9PSBGQVRfRlNJTkZPX1NJRzIpCiAjZGVmaW5lIEZBVF9TVEFURV9ESVJUWSAweDAxCiBzdHJ1Y3QgX19mYXRfZGlyZW50IHsKLSBsb25nIGRfaW5vOworICBsb25nIGRfaW5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9vZmZfdCBkX29mZjsKLSB1bnNpZ25lZCBzaG9ydCBkX3JlY2xlbjsKLSBjaGFyIGRfbmFtZVsyNTZdOworICBfX2tlcm5lbF9vZmZfdCBkX29mZjsKKyAgdW5zaWduZWQgc2hvcnQgZF9yZWNsZW47CisgIGNoYXIgZF9uYW1lWzI1Nl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVkZBVF9JT0NUTF9SRUFERElSX0JPVEggX0lPUigncicsIDEsIHN0cnVjdCBfX2ZhdF9kaXJlbnRbMl0pCkBAIC0xMDMsOTIgKzEwMyw5MiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkFUX0lPQ1RMX0dFVF9WT0xVTUVfSUQgX0lPUigncicsIDB4MTMsIF9fdTMyKQogc3RydWN0IGZhdF9ib290X3NlY3RvciB7Ci0gX191OCBpZ25vcmVkWzNdOwotIF9fdTggc3lzdGVtX2lkWzhdOworICBfX3U4IGlnbm9yZWRbM107CisgIF9fdTggc3lzdGVtX2lkWzhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNlY3Rvcl9zaXplWzJdOwotIF9fdTggc2VjX3Blcl9jbHVzOwotIF9fbGUxNiByZXNlcnZlZDsKLSBfX3U4IGZhdHM7CisgIF9fdTggc2VjdG9yX3NpemVbMl07CisgIF9fdTggc2VjX3Blcl9jbHVzOworICBfX2xlMTYgcmVzZXJ2ZWQ7CisgIF9fdTggZmF0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkaXJfZW50cmllc1syXTsKLSBfX3U4IHNlY3RvcnNbMl07Ci0gX191OCBtZWRpYTsKLSBfX2xlMTYgZmF0X2xlbmd0aDsKKyAgX191OCBkaXJfZW50cmllc1syXTsKKyAgX191OCBzZWN0b3JzWzJdOworICBfX3U4IG1lZGlhOworICBfX2xlMTYgZmF0X2xlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHNlY3NfdHJhY2s7Ci0gX19sZTE2IGhlYWRzOwotIF9fbGUzMiBoaWRkZW47Ci0gX19sZTMyIHRvdGFsX3NlY3Q7CisgIF9fbGUxNiBzZWNzX3RyYWNrOworICBfX2xlMTYgaGVhZHM7CisgIF9fbGUzMiBoaWRkZW47CisgIF9fbGUzMiB0b3RhbF9zZWN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IHsKLSBfX3U4IGRyaXZlX251bWJlcjsKLSBfX3U4IHN0YXRlOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTggZHJpdmVfbnVtYmVyOworICAgICAgX191OCBzdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzaWduYXR1cmU7Ci0gX191OCB2b2xfaWRbNF07Ci0gX191OCB2b2xfbGFiZWxbMTFdOwotIF9fdTggZnNfdHlwZVs4XTsKKyAgICAgIF9fdTggc2lnbmF0dXJlOworICAgICAgX191OCB2b2xfaWRbNF07CisgICAgICBfX3U4IHZvbF9sYWJlbFsxMV07CisgICAgICBfX3U4IGZzX3R5cGVbOF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZmF0MTY7Ci0gc3RydWN0IHsKLSBfX2xlMzIgbGVuZ3RoOwotIF9fbGUxNiBmbGFnczsKKyAgICB9IGZhdDE2OworICAgIHN0cnVjdCB7CisgICAgICBfX2xlMzIgbGVuZ3RoOworICAgICAgX19sZTE2IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHZlcnNpb25bMl07Ci0gX19sZTMyIHJvb3RfY2x1c3RlcjsKLSBfX2xlMTYgaW5mb19zZWN0b3I7Ci0gX19sZTE2IGJhY2t1cF9ib290OworICAgICAgX191OCB2ZXJzaW9uWzJdOworICAgICAgX19sZTMyIHJvb3RfY2x1c3RlcjsKKyAgICAgIF9fbGUxNiBpbmZvX3NlY3RvcjsKKyAgICAgIF9fbGUxNiBiYWNrdXBfYm9vdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHJlc2VydmVkMls2XTsKLSBfX3U4IGRyaXZlX251bWJlcjsKLSBfX3U4IHN0YXRlOwotIF9fdTggc2lnbmF0dXJlOworICAgICAgX19sZTE2IHJlc2VydmVkMls2XTsKKyAgICAgIF9fdTggZHJpdmVfbnVtYmVyOworICAgICAgX191OCBzdGF0ZTsKKyAgICAgIF9fdTggc2lnbmF0dXJlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHZvbF9pZFs0XTsKLSBfX3U4IHZvbF9sYWJlbFsxMV07Ci0gX191OCBmc190eXBlWzhdOwotIH0gZmF0MzI7CisgICAgICBfX3U4IHZvbF9pZFs0XTsKKyAgICAgIF9fdTggdm9sX2xhYmVsWzExXTsKKyAgICAgIF9fdTggZnNfdHlwZVs4XTsKKyAgICB9IGZhdDMyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OworICB9OwogfTsKIHN0cnVjdCBmYXRfYm9vdF9mc2luZm8gewotIF9fbGUzMiBzaWduYXR1cmUxOworICBfX2xlMzIgc2lnbmF0dXJlMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIHJlc2VydmVkMVsxMjBdOwotIF9fbGUzMiBzaWduYXR1cmUyOwotIF9fbGUzMiBmcmVlX2NsdXN0ZXJzOwotIF9fbGUzMiBuZXh0X2NsdXN0ZXI7CisgIF9fbGUzMiByZXNlcnZlZDFbMTIwXTsKKyAgX19sZTMyIHNpZ25hdHVyZTI7CisgIF9fbGUzMiBmcmVlX2NsdXN0ZXJzOworICBfX2xlMzIgbmV4dF9jbHVzdGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgcmVzZXJ2ZWQyWzRdOworICBfX2xlMzIgcmVzZXJ2ZWQyWzRdOwogfTsKIHN0cnVjdCBtc2Rvc19kaXJfZW50cnkgewotIF9fdTggbmFtZVtNU0RPU19OQU1FXTsKKyAgX191OCBuYW1lW01TRE9TX05BTUVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGF0dHI7Ci0gX191OCBsY2FzZTsKLSBfX3U4IGN0aW1lX2NzOwotIF9fbGUxNiBjdGltZTsKKyAgX191OCBhdHRyOworICBfX3U4IGxjYXNlOworICBfX3U4IGN0aW1lX2NzOworICBfX2xlMTYgY3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiBjZGF0ZTsKLSBfX2xlMTYgYWRhdGU7Ci0gX19sZTE2IHN0YXJ0aGk7Ci0gX19sZTE2IHRpbWUsZGF0ZSxzdGFydDsKKyAgX19sZTE2IGNkYXRlOworICBfX2xlMTYgYWRhdGU7CisgIF9fbGUxNiBzdGFydGhpOworICBfX2xlMTYgdGltZSwgZGF0ZSwgc3RhcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBzaXplOworICBfX2xlMzIgc2l6ZTsKIH07CiBzdHJ1Y3QgbXNkb3NfZGlyX3Nsb3QgewotIF9fdTggaWQ7CisgIF9fdTggaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbmFtZTBfNFsxMF07Ci0gX191OCBhdHRyOwotIF9fdTggcmVzZXJ2ZWQ7Ci0gX191OCBhbGlhc19jaGVja3N1bTsKKyAgX191OCBuYW1lMF80WzEwXTsKKyAgX191OCBhdHRyOworICBfX3U4IHJlc2VydmVkOworICBfX3U4IGFsaWFzX2NoZWNrc3VtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG5hbWU1XzEwWzEyXTsKLSBfX2xlMTYgc3RhcnQ7Ci0gX191OCBuYW1lMTFfMTJbNF07CisgIF9fdTggbmFtZTVfMTBbMTJdOworICBfX2xlMTYgc3RhcnQ7CisgIF9fdTggbmFtZTExXzEyWzRdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXNnLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L21zZy5oCmluZGV4IDhkN2M2MDYuLmFiOTRlZjYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXNnLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tc2cuaApAQCAtMjcsNDEgKzI3LDQxIEBACiAjZGVmaW5lIE1TR19DT1BZIDA0MDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtc3FpZF9kcyB7Ci0gc3RydWN0IGlwY19wZXJtIG1zZ19wZXJtOwotIHN0cnVjdCBtc2cgKm1zZ19maXJzdDsKLSBzdHJ1Y3QgbXNnICptc2dfbGFzdDsKKyAgc3RydWN0IGlwY19wZXJtIG1zZ19wZXJtOworICBzdHJ1Y3QgbXNnICogbXNnX2ZpcnN0OworICBzdHJ1Y3QgbXNnICogbXNnX2xhc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3RpbWVfdCBtc2dfc3RpbWU7Ci0gX19rZXJuZWxfdGltZV90IG1zZ19ydGltZTsKLSBfX2tlcm5lbF90aW1lX3QgbXNnX2N0aW1lOwotIHVuc2lnbmVkIGxvbmcgbXNnX2xjYnl0ZXM7CisgIF9fa2VybmVsX3RpbWVfdCBtc2dfc3RpbWU7CisgIF9fa2VybmVsX3RpbWVfdCBtc2dfcnRpbWU7CisgIF9fa2VybmVsX3RpbWVfdCBtc2dfY3RpbWU7CisgIHVuc2lnbmVkIGxvbmcgbXNnX2xjYnl0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgbXNnX2xxYnl0ZXM7Ci0gdW5zaWduZWQgc2hvcnQgbXNnX2NieXRlczsKLSB1bnNpZ25lZCBzaG9ydCBtc2dfcW51bTsKLSB1bnNpZ25lZCBzaG9ydCBtc2dfcWJ5dGVzOworICB1bnNpZ25lZCBsb25nIG1zZ19scWJ5dGVzOworICB1bnNpZ25lZCBzaG9ydCBtc2dfY2J5dGVzOworICB1bnNpZ25lZCBzaG9ydCBtc2dfcW51bTsKKyAgdW5zaWduZWQgc2hvcnQgbXNnX3FieXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfaXBjX3BpZF90IG1zZ19sc3BpZDsKLSBfX2tlcm5lbF9pcGNfcGlkX3QgbXNnX2xycGlkOworICBfX2tlcm5lbF9pcGNfcGlkX3QgbXNnX2xzcGlkOworICBfX2tlcm5lbF9pcGNfcGlkX3QgbXNnX2xycGlkOwogfTsKICNpbmNsdWRlIDxhc20vbXNnYnVmLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG1zZ2J1ZiB7Ci0gX19rZXJuZWxfbG9uZ190IG10eXBlOwotIGNoYXIgbXRleHRbMV07CisgIF9fa2VybmVsX2xvbmdfdCBtdHlwZTsKKyAgY2hhciBtdGV4dFsxXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG1zZ2luZm8gewotIGludCBtc2dwb29sOwotIGludCBtc2dtYXA7Ci0gaW50IG1zZ21heDsKKyAgaW50IG1zZ3Bvb2w7CisgIGludCBtc2dtYXA7CisgIGludCBtc2dtYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBtc2dtbmI7Ci0gaW50IG1zZ21uaTsKLSBpbnQgbXNnc3N6OwotIGludCBtc2d0cWw7CisgIGludCBtc2dtbmI7CisgIGludCBtc2dtbmk7CisgIGludCBtc2dzc3o7CisgIGludCBtc2d0cWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IG1zZ3NlZzsKKyAgdW5zaWduZWQgc2hvcnQgbXNnc2VnOwogfTsKICNkZWZpbmUgTVNHX01FTV9TQ0FMRSAzMgogI2RlZmluZSBNU0dNTkkgMTYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbXRpby5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tdGlvLmgKaW5kZXggYjRiZWJmOS4uOWUwNTdkNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tdGlvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9tdGlvLmgKQEAgLTIyLDggKzIyLDggQEAKICNpbmNsdWRlIDxsaW51eC9pb2N0bC5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBtdG9wIHsKLSBzaG9ydCBtdF9vcDsKLSBpbnQgbXRfY291bnQ7CisgIHNob3J0IG10X29wOworICBpbnQgbXRfY291bnQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTVRSRVNFVCAwCkBAIC02OCwxNSArNjgsMTUgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1UV0VPRkkgMzUKIHN0cnVjdCBtdGdldCB7Ci0gbG9uZyBtdF90eXBlOwotIGxvbmcgbXRfcmVzaWQ7CisgIGxvbmcgbXRfdHlwZTsKKyAgbG9uZyBtdF9yZXNpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbG9uZyBtdF9kc3JlZzsKLSBsb25nIG10X2dzdGF0OwotIGxvbmcgbXRfZXJyZWc7Ci0gX19rZXJuZWxfZGFkZHJfdCBtdF9maWxlbm87CisgIGxvbmcgbXRfZHNyZWc7CisgIGxvbmcgbXRfZ3N0YXQ7CisgIGxvbmcgbXRfZXJyZWc7CisgIF9fa2VybmVsX2RhZGRyX3QgbXRfZmlsZW5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9kYWRkcl90IG10X2Jsa25vOworICBfX2tlcm5lbF9kYWRkcl90IG10X2Jsa25vOwogfTsKICNkZWZpbmUgTVRfSVNVTktOT1dOIDB4MDEKICNkZWZpbmUgTVRfSVNRSUMwMiAweDAyCkBAIC0xMDYsNyArMTA2LDcgQEAKICNkZWZpbmUgTVRfSVNGVEFQRV9GTEFHIDB4ODAwMDAwCiBzdHJ1Y3QgbXRwb3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIG10X2Jsa25vOworICBsb25nIG10X2Jsa25vOwogfTsKICNkZWZpbmUgTVRJT0NUT1AgX0lPVygnbScsIDEsIHN0cnVjdCBtdG9wKQogI2RlZmluZSBNVElPQ0dFVCBfSU9SKCdtJywgMiwgc3RydWN0IG10Z2V0KQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uX3IzOTY0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25fcjM5NjQuaAppbmRleCBlMWNmZjMxLi5jOTIyYWNmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25fcjM5NjQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25fcjM5NjQuaApAQCAtMzIsMTggKzMyLDIyIEBACiAjZGVmaW5lIFIzOTY0X1NJR19OT05FIDB4MDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUjM5NjRfVVNFX1NJR0lPIDB4MTAwMAotZW51bSB7UjM5NjRfTVNHX0FDSz0xLCBSMzk2NF9NU0dfREFUQSB9OworZW51bSB7CisgIFIzOTY0X01TR19BQ0sgPSAxLAorICBSMzk2NF9NU0dfREFUQQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CiAjZGVmaW5lIFIzOTY0X01BWF9NU0dfQ09VTlQgMzIKICNkZWZpbmUgUjM5NjRfT0sgMAorI2RlZmluZSBSMzk2NF9UWF9GQUlMIC0gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUjM5NjRfVFhfRkFJTCAtMQotI2RlZmluZSBSMzk2NF9PVkVSRkxPVyAtMgorI2RlZmluZSBSMzk2NF9PVkVSRkxPVyAtIDIKIHN0cnVjdCByMzk2NF9jbGllbnRfbWVzc2FnZSB7Ci0gaW50IG1zZ19pZDsKKyAgaW50IG1zZ19pZDsKKyAgaW50IGFyZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGFyZzsKLSBpbnQgZXJyb3JfY29kZTsKKyAgaW50IGVycm9yX2NvZGU7CiB9OwogI2RlZmluZSBSMzk2NF9NVFUgMjU2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uYmQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmJkLmgKaW5kZXggNTM3MzZlOS4uNTg4ZmJkOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uYmQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25iZC5oCkBAIC0xOSwyNyArMTksMjcgQEAKICNpZm5kZWYgX1VBUElMSU5VWF9OQkRfSAogI2RlZmluZSBfVUFQSUxJTlVYX05CRF9ICiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KLSNkZWZpbmUgTkJEX1NFVF9TT0NLIF9JTyggMHhhYiwgMCApCisjZGVmaW5lIE5CRF9TRVRfU09DSyBfSU8oMHhhYiwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE5CRF9TRVRfQkxLU0laRSBfSU8oIDB4YWIsIDEgKQotI2RlZmluZSBOQkRfU0VUX1NJWkUgX0lPKCAweGFiLCAyICkKLSNkZWZpbmUgTkJEX0RPX0lUIF9JTyggMHhhYiwgMyApCi0jZGVmaW5lIE5CRF9DTEVBUl9TT0NLIF9JTyggMHhhYiwgNCApCisjZGVmaW5lIE5CRF9TRVRfQkxLU0laRSBfSU8oMHhhYiwgMSkKKyNkZWZpbmUgTkJEX1NFVF9TSVpFIF9JTygweGFiLCAyKQorI2RlZmluZSBOQkRfRE9fSVQgX0lPKDB4YWIsIDMpCisjZGVmaW5lIE5CRF9DTEVBUl9TT0NLIF9JTygweGFiLCA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTkJEX0NMRUFSX1FVRSBfSU8oIDB4YWIsIDUgKQotI2RlZmluZSBOQkRfUFJJTlRfREVCVUcgX0lPKCAweGFiLCA2ICkKLSNkZWZpbmUgTkJEX1NFVF9TSVpFX0JMT0NLUyBfSU8oIDB4YWIsIDcgKQotI2RlZmluZSBOQkRfRElTQ09OTkVDVCBfSU8oIDB4YWIsIDggKQorI2RlZmluZSBOQkRfQ0xFQVJfUVVFIF9JTygweGFiLCA1KQorI2RlZmluZSBOQkRfUFJJTlRfREVCVUcgX0lPKDB4YWIsIDYpCisjZGVmaW5lIE5CRF9TRVRfU0laRV9CTE9DS1MgX0lPKDB4YWIsIDcpCisjZGVmaW5lIE5CRF9ESVNDT05ORUNUIF9JTygweGFiLCA4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTkJEX1NFVF9USU1FT1VUIF9JTyggMHhhYiwgOSApCi0jZGVmaW5lIE5CRF9TRVRfRkxBR1MgX0lPKCAweGFiLCAxMCkKKyNkZWZpbmUgTkJEX1NFVF9USU1FT1VUIF9JTygweGFiLCA5KQorI2RlZmluZSBOQkRfU0VUX0ZMQUdTIF9JTygweGFiLCAxMCkKIGVudW0gewotIE5CRF9DTURfUkVBRCA9IDAsCisgIE5CRF9DTURfUkVBRCA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5CRF9DTURfV1JJVEUgPSAxLAotIE5CRF9DTURfRElTQyA9IDIsCi0gTkJEX0NNRF9GTFVTSCA9IDMsCi0gTkJEX0NNRF9UUklNID0gNAorICBOQkRfQ01EX1dSSVRFID0gMSwKKyAgTkJEX0NNRF9ESVNDID0gMiwKKyAgTkJEX0NNRF9GTFVTSCA9IDMsCisgIE5CRF9DTURfVFJJTSA9IDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBOQkRfRkxBR19IQVNfRkxBR1MgKDEgPDwgMCkKQEAgLTUyLDE4ICs1MiwxOCBAQAogI2RlZmluZSBOQkRfUkVQTFlfTUFHSUMgMHg2NzQ0NjY5OAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuYmRfcmVxdWVzdCB7Ci0gX19iZTMyIG1hZ2ljOwotIF9fYmUzMiB0eXBlOwotIGNoYXIgaGFuZGxlWzhdOworICBfX2JlMzIgbWFnaWM7CisgIF9fYmUzMiB0eXBlOworICBjaGFyIGhhbmRsZVs4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTY0IGZyb207Ci0gX19iZTMyIGxlbjsKKyAgX19iZTY0IGZyb207CisgIF9fYmUzMiBsZW47CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IG5iZF9yZXBseSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBtYWdpYzsKLSBfX2JlMzIgZXJyb3I7Ci0gY2hhciBoYW5kbGVbOF07CisgIF9fYmUzMiBtYWdpYzsKKyAgX19iZTMyIGVycm9yOworICBjaGFyIGhhbmRsZVs4XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25jcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uY3AuaAppbmRleCBlMmNkN2Q0Li5iODdjZGJhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25jcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmNwLmgKQEAgLTI3LDE0ICsyNywxNCBAQAogI2RlZmluZSBOQ1BfREVBTExPQ19TTE9UX1JFUVVFU1QgKDB4NTU1NSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmNwX3JlcXVlc3RfaGVhZGVyIHsKLSBfX3UxNiB0eXBlOwotIF9fdTggc2VxdWVuY2U7Ci0gX191OCBjb25uX2xvdzsKKyAgX191MTYgdHlwZTsKKyAgX191OCBzZXF1ZW5jZTsKKyAgX191OCBjb25uX2xvdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0YXNrOwotIF9fdTggY29ubl9oaWdoOwotIF9fdTggZnVuY3Rpb247Ci0gX191OCBkYXRhWzBdOworICBfX3U4IHRhc2s7CisgIF9fdTggY29ubl9oaWdoOworICBfX3U4IGZ1bmN0aW9uOworICBfX3U4IGRhdGFbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgTkNQX1JFUExZICgweDMzMzMpCkBAIC00MiwzMSArNDIsMzEgQEAKICNkZWZpbmUgTkNQX1BPU0lUSVZFX0FDSyAoMHg5OTk5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuY3BfcmVwbHlfaGVhZGVyIHsKLSBfX3UxNiB0eXBlOwotIF9fdTggc2VxdWVuY2U7Ci0gX191OCBjb25uX2xvdzsKKyAgX191MTYgdHlwZTsKKyAgX191OCBzZXF1ZW5jZTsKKyAgX191OCBjb25uX2xvdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0YXNrOwotIF9fdTggY29ubl9oaWdoOwotIF9fdTggY29tcGxldGlvbl9jb2RlOwotIF9fdTggY29ubmVjdGlvbl9zdGF0ZTsKKyAgX191OCB0YXNrOworICBfX3U4IGNvbm5faGlnaDsKKyAgX191OCBjb21wbGV0aW9uX2NvZGU7CisgIF9fdTggY29ubmVjdGlvbl9zdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkYXRhWzBdOworICBfX3U4IGRhdGFbMF07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBOQ1BfVk9MTkFNRV9MRU4gKDE2KQogI2RlZmluZSBOQ1BfTlVNQkVSX09GX1ZPTFVNRVMgKDI1NikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmNwX3ZvbHVtZV9pbmZvIHsKLSBfX3UzMiB0b3RhbF9ibG9ja3M7Ci0gX191MzIgZnJlZV9ibG9ja3M7Ci0gX191MzIgcHVyZ2VhYmxlX2Jsb2NrczsKKyAgX191MzIgdG90YWxfYmxvY2tzOworICBfX3UzMiBmcmVlX2Jsb2NrczsKKyAgX191MzIgcHVyZ2VhYmxlX2Jsb2NrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbm90X3lldF9wdXJnZWFibGVfYmxvY2tzOwotIF9fdTMyIHRvdGFsX2Rpcl9lbnRyaWVzOwotIF9fdTMyIGF2YWlsYWJsZV9kaXJfZW50cmllczsKLSBfX3U4IHNlY3RvcnNfcGVyX2Jsb2NrOworICBfX3UzMiBub3RfeWV0X3B1cmdlYWJsZV9ibG9ja3M7CisgIF9fdTMyIHRvdGFsX2Rpcl9lbnRyaWVzOworICBfX3UzMiBhdmFpbGFibGVfZGlyX2VudHJpZXM7CisgIF9fdTggc2VjdG9yc19wZXJfYmxvY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdm9sdW1lX25hbWVbTkNQX1ZPTE5BTUVfTEVOICsgMV07CisgIGNoYXIgdm9sdW1lX25hbWVbTkNQX1ZPTE5BTUVfTEVOICsgMV07CiB9OwogI2RlZmluZSBBUl9SRUFEIChjcHVfdG9fbGUxNigxKSkKICNkZWZpbmUgQVJfV1JJVEUgKGNwdV90b19sZTE2KDIpKQpAQCAtMTMzLDQzICsxMzMsNDMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKIHN0cnVjdCBud19uZnNfaW5mbyB7Ci0gX191MzIgbW9kZTsKLSBfX3UzMiByZGV2OworICBfX3UzMiBtb2RlOworICBfX3UzMiByZGV2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgbndfaW5mb19zdHJ1Y3QgewotIF9fdTMyIHNwYWNlQWxsb2M7Ci0gX19sZTMyIGF0dHJpYnV0ZXM7CisgIF9fdTMyIHNwYWNlQWxsb2M7CisgIF9fbGUzMiBhdHRyaWJ1dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBmbGFnczsKLSBfX2xlMzIgZGF0YVN0cmVhbVNpemU7Ci0gX19sZTMyIHRvdGFsU3RyZWFtU2l6ZTsKLSBfX3UxNiBudW1iZXJPZlN0cmVhbXM7CisgIF9fdTE2IGZsYWdzOworICBfX2xlMzIgZGF0YVN0cmVhbVNpemU7CisgIF9fbGUzMiB0b3RhbFN0cmVhbVNpemU7CisgIF9fdTE2IG51bWJlck9mU3RyZWFtczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IGNyZWF0aW9uVGltZTsKLSBfX2xlMTYgY3JlYXRpb25EYXRlOwotIF9fdTMyIGNyZWF0b3JJRDsKLSBfX2xlMTYgbW9kaWZ5VGltZTsKKyAgX19sZTE2IGNyZWF0aW9uVGltZTsKKyAgX19sZTE2IGNyZWF0aW9uRGF0ZTsKKyAgX191MzIgY3JlYXRvcklEOworICBfX2xlMTYgbW9kaWZ5VGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IG1vZGlmeURhdGU7Ci0gX191MzIgbW9kaWZpZXJJRDsKLSBfX2xlMTYgbGFzdEFjY2Vzc0RhdGU7Ci0gX191MTYgYXJjaGl2ZVRpbWU7CisgIF9fbGUxNiBtb2RpZnlEYXRlOworICBfX3UzMiBtb2RpZmllcklEOworICBfX2xlMTYgbGFzdEFjY2Vzc0RhdGU7CisgIF9fdTE2IGFyY2hpdmVUaW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBhcmNoaXZlRGF0ZTsKLSBfX3UzMiBhcmNoaXZlcklEOwotIF9fdTE2IGluaGVyaXRlZFJpZ2h0c01hc2s7Ci0gX19sZTMyIGRpckVudE51bTsKKyAgX191MTYgYXJjaGl2ZURhdGU7CisgIF9fdTMyIGFyY2hpdmVySUQ7CisgIF9fdTE2IGluaGVyaXRlZFJpZ2h0c01hc2s7CisgIF9fbGUzMiBkaXJFbnROdW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBEb3NEaXJOdW07Ci0gX191MzIgdm9sTnVtYmVyOwotIF9fdTMyIEVBRGF0YVNpemU7Ci0gX191MzIgRUFLZXlDb3VudDsKKyAgX19sZTMyIERvc0Rpck51bTsKKyAgX191MzIgdm9sTnVtYmVyOworICBfX3UzMiBFQURhdGFTaXplOworICBfX3UzMiBFQUtleUNvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBFQUtleVNpemU7Ci0gX191MzIgTlNDcmVhdG9yOwotIF9fdTggbmFtZUxlbjsKLSBfX3U4IGVudHJ5TmFtZVsyNTZdOworICBfX3UzMiBFQUtleVNpemU7CisgIF9fdTMyIE5TQ3JlYXRvcjsKKyAgX191OCBuYW1lTGVuOworICBfX3U4IGVudHJ5TmFtZVsyNTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIERNX0FUVFJJQlVURVMgKGNwdV90b19sZTMyKDB4MDIpKQpAQCAtMTg5LDMwICsxODksMzAgQEAKICNkZWZpbmUgRE1fSU5IRVJJVEVEX1JJR0hUU19NQVNLIChjcHVfdG9fbGUzMigweDEwMDApKQogI2RlZmluZSBETV9NQVhJTVVNX1NQQUNFIChjcHVfdG9fbGUzMigweDIwMDApKQogc3RydWN0IG53X21vZGlmeV9kb3NfaW5mbyB7Ci0gX19sZTMyIGF0dHJpYnV0ZXM7CisgIF9fbGUzMiBhdHRyaWJ1dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgY3JlYXRpb25EYXRlOwotIF9fbGUxNiBjcmVhdGlvblRpbWU7Ci0gX191MzIgY3JlYXRvcklEOwotIF9fbGUxNiBtb2RpZnlEYXRlOworICBfX2xlMTYgY3JlYXRpb25EYXRlOworICBfX2xlMTYgY3JlYXRpb25UaW1lOworICBfX3UzMiBjcmVhdG9ySUQ7CisgIF9fbGUxNiBtb2RpZnlEYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgbW9kaWZ5VGltZTsKLSBfX3UzMiBtb2RpZmllcklEOwotIF9fdTE2IGFyY2hpdmVEYXRlOwotIF9fdTE2IGFyY2hpdmVUaW1lOworICBfX2xlMTYgbW9kaWZ5VGltZTsKKyAgX191MzIgbW9kaWZpZXJJRDsKKyAgX191MTYgYXJjaGl2ZURhdGU7CisgIF9fdTE2IGFyY2hpdmVUaW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhcmNoaXZlcklEOwotIF9fbGUxNiBsYXN0QWNjZXNzRGF0ZTsKLSBfX3UxNiBpbmhlcml0YW5jZUdyYW50TWFzazsKLSBfX3UxNiBpbmhlcml0YW5jZVJldm9rZU1hc2s7CisgIF9fdTMyIGFyY2hpdmVySUQ7CisgIF9fbGUxNiBsYXN0QWNjZXNzRGF0ZTsKKyAgX191MTYgaW5oZXJpdGFuY2VHcmFudE1hc2s7CisgIF9fdTE2IGluaGVyaXRhbmNlUmV2b2tlTWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4aW11bVNwYWNlOworICBfX3UzMiBtYXhpbXVtU3BhY2U7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IG53X3NlYXJjaF9zZXF1ZW5jZSB7Ci0gX191OCB2b2xOdW1iZXI7CisgIF9fdTggdm9sTnVtYmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkaXJCYXNlOwotIF9fdTMyIHNlcXVlbmNlOworICBfX3UzMiBkaXJCYXNlOworICBfX3UzMiBzZXF1ZW5jZTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25jcF9mcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uY3BfZnMuaAppbmRleCA4NzkyMTQ0Li5iNGNlYTEzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25jcF9mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmNwX2ZzLmgKQEAgLTI3LDEyMiArMjcsMTE0IEBACiAjaW5jbHVkZSA8bGludXgvbmNwX25vLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5jcF9pb2N0bF9yZXF1ZXN0IHsKLSB1bnNpZ25lZCBpbnQgZnVuY3Rpb247Ci0gdW5zaWduZWQgaW50IHNpemU7Ci0gY2hhciBfX3VzZXIgKmRhdGE7CisgIHVuc2lnbmVkIGludCBmdW5jdGlvbjsKKyAgdW5zaWduZWQgaW50IHNpemU7CisgIGNoYXIgX191c2VyICogZGF0YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG5jcF9mc19pbmZvIHsKLSBpbnQgdmVyc2lvbjsKLSBzdHJ1Y3Qgc29ja2FkZHJfaXB4IGFkZHI7CisgIGludCB2ZXJzaW9uOworICBzdHJ1Y3Qgc29ja2FkZHJfaXB4IGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3VpZF90IG1vdW50ZWRfdWlkOwotIGludCBjb25uZWN0aW9uOwotIGludCBidWZmZXJfc2l6ZTsKLSBpbnQgdm9sdW1lX251bWJlcjsKKyAgX19rZXJuZWxfdWlkX3QgbW91bnRlZF91aWQ7CisgIGludCBjb25uZWN0aW9uOworICBpbnQgYnVmZmVyX3NpemU7CisgIGludCB2b2x1bWVfbnVtYmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgZGlyZWN0b3J5X2lkOworICBfX2xlMzIgZGlyZWN0b3J5X2lkOwogfTsKIHN0cnVjdCBuY3BfZnNfaW5mb192MiB7Ci0gaW50IHZlcnNpb247CisgIGludCB2ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIG1vdW50ZWRfdWlkOwotIHVuc2lnbmVkIGludCBjb25uZWN0aW9uOwotIHVuc2lnbmVkIGludCBidWZmZXJfc2l6ZTsKLSB1bnNpZ25lZCBpbnQgdm9sdW1lX251bWJlcjsKKyAgdW5zaWduZWQgbG9uZyBtb3VudGVkX3VpZDsKKyAgdW5zaWduZWQgaW50IGNvbm5lY3Rpb247CisgIHVuc2lnbmVkIGludCBidWZmZXJfc2l6ZTsKKyAgdW5zaWduZWQgaW50IHZvbHVtZV9udW1iZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBkaXJlY3RvcnlfaWQ7Ci0gX191MzIgZHVtbXkxOwotIF9fdTMyIGR1bW15MjsKLSBfX3UzMiBkdW1teTM7CisgIF9fbGUzMiBkaXJlY3RvcnlfaWQ7CisgIF9fdTMyIGR1bW15MTsKKyAgX191MzIgZHVtbXkyOworICBfX3UzMiBkdW1teTM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLXN0cnVjdCBuY3Bfc2lnbl9pbml0Ci17Ci0gY2hhciBzaWduX3Jvb3RbOF07CitzdHJ1Y3QgbmNwX3NpZ25faW5pdCB7CisgIGNoYXIgc2lnbl9yb290WzhdOworICBjaGFyIHNpZ25fbGFzdFsxNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgc2lnbl9sYXN0WzE2XTsKIH07Ci1zdHJ1Y3QgbmNwX2xvY2tfaW9jdGwKLXsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgbmNwX2xvY2tfaW9jdGwgewogI2RlZmluZSBOQ1BfTE9DS19MT0cgMAogI2RlZmluZSBOQ1BfTE9DS19TSCAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOQ1BfTE9DS19FWCAyCiAjZGVmaW5lIE5DUF9MT0NLX0NMRUFSIDI1NgorICBpbnQgY21kOworICBpbnQgb3JpZ2luOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY21kOwotIGludCBvcmlnaW47Ci0gdW5zaWduZWQgaW50IG9mZnNldDsKLSB1bnNpZ25lZCBpbnQgbGVuZ3RoOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IG9mZnNldDsKKyAgdW5zaWduZWQgaW50IGxlbmd0aDsKICNkZWZpbmUgTkNQX0xPQ0tfREVGQVVMVF9USU1FT1VUIDE4CiAjZGVmaW5lIE5DUF9MT0NLX01BWF9USU1FT1VUIDE4MAotIGludCB0aW1lb3V0OwotfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgbmNwX3NldHJvb3RfaW9jdGwKLXsKLSBpbnQgdm9sTnVtYmVyOwotIGludCBuYW1lc3BhY2U7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBkaXJFbnROdW07CisgIGludCB0aW1lb3V0OwogfTsKLXN0cnVjdCBuY3Bfb2JqZWN0bmFtZV9pb2N0bAoteworc3RydWN0IG5jcF9zZXRyb290X2lvY3RsIHsKKyAgaW50IHZvbE51bWJlcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBuYW1lc3BhY2U7CisgIF9fbGUzMiBkaXJFbnROdW07Cit9Oworc3RydWN0IG5jcF9vYmplY3RuYW1lX2lvY3RsIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5DUF9BVVRIX05PTkUgMHgwMAogI2RlZmluZSBOQ1BfQVVUSF9CSU5EIDB4MzEKICNkZWZpbmUgTkNQX0FVVEhfTkRTIDB4MzIKLSBpbnQgYXV0aF90eXBlOworICBpbnQgYXV0aF90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaXplX3Qgb2JqZWN0X25hbWVfbGVuOwotIHZvaWQgX191c2VyICogb2JqZWN0X25hbWU7CisgIHNpemVfdCBvYmplY3RfbmFtZV9sZW47CisgIHZvaWQgX191c2VyICogb2JqZWN0X25hbWU7CiB9Owotc3RydWN0IG5jcF9wcml2YXRlZGF0YV9pb2N0bAorc3RydWN0IG5jcF9wcml2YXRlZGF0YV9pb2N0bCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIHNpemVfdCBsZW47Ci0gdm9pZCBfX3VzZXIgKiBkYXRhOworICBzaXplX3QgbGVuOworICB2b2lkIF9fdXNlciAqIGRhdGE7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkNQX0lPQ1NOQU1FX0xFTiAyMAotc3RydWN0IG5jcF9ubHNfaW9jdGwKLXsKLSB1bnNpZ25lZCBjaGFyIGNvZGVwYWdlW05DUF9JT0NTTkFNRV9MRU4rMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgaW9jaGFyc2V0W05DUF9JT0NTTkFNRV9MRU4rMV07CitzdHJ1Y3QgbmNwX25sc19pb2N0bCB7CisgIHVuc2lnbmVkIGNoYXIgY29kZXBhZ2VbTkNQX0lPQ1NOQU1FX0xFTiArIDFdOworICB1bnNpZ25lZCBjaGFyIGlvY2hhcnNldFtOQ1BfSU9DU05BTUVfTEVOICsgMV07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkNQX0lPQ19OQ1BSRVFVRVNUIF9JT1IoJ24nLCAxLCBzdHJ1Y3QgbmNwX2lvY3RsX3JlcXVlc3QpCiAjZGVmaW5lIE5DUF9JT0NfR0VUTU9VTlRVSUQgX0lPVygnbicsIDIsIF9fa2VybmVsX29sZF91aWRfdCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5DUF9JT0NfR0VUTU9VTlRVSUQyIF9JT1coJ24nLCAyLCB1bnNpZ25lZCBsb25nKQogI2RlZmluZSBOQ1BfSU9DX0NPTk5fTE9HR0VEX0lOIF9JTygnbicsIDMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOQ1BfR0VUX0ZTX0lORk9fVkVSU0lPTiAoMSkKICNkZWZpbmUgTkNQX0lPQ19HRVRfRlNfSU5GTyBfSU9XUignbicsIDQsIHN0cnVjdCBuY3BfZnNfaW5mbykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5DUF9HRVRfRlNfSU5GT19WRVJTSU9OX1YyICgyKQogI2RlZmluZSBOQ1BfSU9DX0dFVF9GU19JTkZPX1YyIF9JT1dSKCduJywgNCwgc3RydWN0IG5jcF9mc19pbmZvX3YyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkNQX0lPQ19TSUdOX0lOSVQgX0lPUignbicsIDUsIHN0cnVjdCBuY3Bfc2lnbl9pbml0KQogI2RlZmluZSBOQ1BfSU9DX1NJR05fV0FOVEVEIF9JT1IoJ24nLCA2LCBpbnQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOQ1BfSU9DX1NFVF9TSUdOX1dBTlRFRCBfSU9XKCduJywgNiwgaW50KQogI2RlZmluZSBOQ1BfSU9DX0xPQ0tVTkxPQ0sgX0lPUignbicsIDcsIHN0cnVjdCBuY3BfbG9ja19pb2N0bCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5DUF9JT0NfR0VUUk9PVCBfSU9XKCduJywgOCwgc3RydWN0IG5jcF9zZXRyb290X2lvY3RsKQogI2RlZmluZSBOQ1BfSU9DX1NFVFJPT1QgX0lPUignbicsIDgsIHN0cnVjdCBuY3Bfc2V0cm9vdF9pb2N0bCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5DUF9JT0NfR0VUT0JKRUNUTkFNRSBfSU9XUignbicsIDksIHN0cnVjdCBuY3Bfb2JqZWN0bmFtZV9pb2N0bCkKICNkZWZpbmUgTkNQX0lPQ19TRVRPQkpFQ1ROQU1FIF9JT1IoJ24nLCA5LCBzdHJ1Y3QgbmNwX29iamVjdG5hbWVfaW9jdGwpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOQ1BfSU9DX0dFVFBSSVZBVEVEQVRBIF9JT1dSKCduJywgMTAsIHN0cnVjdCBuY3BfcHJpdmF0ZWRhdGFfaW9jdGwpCiAjZGVmaW5lIE5DUF9JT0NfU0VUUFJJVkFURURBVEEgX0lPUignbicsIDEwLCBzdHJ1Y3QgbmNwX3ByaXZhdGVkYXRhX2lvY3RsKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkNQX0lPQ19HRVRDSEFSU0VUUyBfSU9XUignbicsIDExLCBzdHJ1Y3QgbmNwX25sc19pb2N0bCkKICNkZWZpbmUgTkNQX0lPQ19TRVRDSEFSU0VUUyBfSU9SKCduJywgMTEsIHN0cnVjdCBuY3BfbmxzX2lvY3RsKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkNQX0lPQ19HRVRERU5UUllUVEwgX0lPVygnbicsIDEyLCBfX3UzMikKICNkZWZpbmUgTkNQX0lPQ19TRVRERU5UUllUVEwgX0lPUignbicsIDEyLCBfX3UzMikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5DUF9QQUNLRVRfU0laRSA0MDcwCiAjZGVmaW5lIE5DUF9NQVhQQVRITEVOIDI1NQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkNQX01BWE5BTUVMRU4gMTQKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmNwX21vdW50LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25jcF9tb3VudC5oCmluZGV4IGVlM2U4NGYuLjA2MWZjOWMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmNwX21vdW50LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uY3BfbW91bnQuaApAQCAtMzMsMzggKzMzLDM4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOQ1BfTU9VTlRfTkZTX0VYVFJBUyAweDAwODAKIHN0cnVjdCBuY3BfbW91bnRfZGF0YSB7Ci0gaW50IHZlcnNpb247Ci0gdW5zaWduZWQgaW50IG5jcF9mZDsKKyAgaW50IHZlcnNpb247CisgIHVuc2lnbmVkIGludCBuY3BfZmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3VpZF90IG1vdW50ZWRfdWlkOwotIF9fa2VybmVsX3BpZF90IHdkb2dfcGlkOwotIHVuc2lnbmVkIGNoYXIgbW91bnRlZF92b2xbTkNQX1ZPTE5BTUVfTEVOICsgMV07Ci0gdW5zaWduZWQgaW50IHRpbWVfb3V0OworICBfX2tlcm5lbF91aWRfdCBtb3VudGVkX3VpZDsKKyAgX19rZXJuZWxfcGlkX3Qgd2RvZ19waWQ7CisgIHVuc2lnbmVkIGNoYXIgbW91bnRlZF92b2xbTkNQX1ZPTE5BTUVfTEVOICsgMV07CisgIHVuc2lnbmVkIGludCB0aW1lX291dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJldHJ5X2NvdW50OwotIHVuc2lnbmVkIGludCBmbGFnczsKLSBfX2tlcm5lbF91aWRfdCB1aWQ7Ci0gX19rZXJuZWxfZ2lkX3QgZ2lkOworICB1bnNpZ25lZCBpbnQgcmV0cnlfY291bnQ7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgX19rZXJuZWxfdWlkX3QgdWlkOworICBfX2tlcm5lbF9naWRfdCBnaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX21vZGVfdCBmaWxlX21vZGU7Ci0gX19rZXJuZWxfbW9kZV90IGRpcl9tb2RlOworICBfX2tlcm5lbF9tb2RlX3QgZmlsZV9tb2RlOworICBfX2tlcm5lbF9tb2RlX3QgZGlyX21vZGU7CiB9OwogI2RlZmluZSBOQ1BfTU9VTlRfVkVSU0lPTl9WNCAoNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmNwX21vdW50X2RhdGFfdjQgewotIGludCB2ZXJzaW9uOwotIHVuc2lnbmVkIGxvbmcgZmxhZ3M7Ci0gdW5zaWduZWQgbG9uZyBtb3VudGVkX3VpZDsKKyAgaW50IHZlcnNpb247CisgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7CisgIHVuc2lnbmVkIGxvbmcgbW91bnRlZF91aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgd2RvZ19waWQ7Ci0gdW5zaWduZWQgaW50IG5jcF9mZDsKLSB1bnNpZ25lZCBpbnQgdGltZV9vdXQ7Ci0gdW5zaWduZWQgaW50IHJldHJ5X2NvdW50OworICBsb25nIHdkb2dfcGlkOworICB1bnNpZ25lZCBpbnQgbmNwX2ZkOworICB1bnNpZ25lZCBpbnQgdGltZV9vdXQ7CisgIHVuc2lnbmVkIGludCByZXRyeV9jb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyB1aWQ7Ci0gdW5zaWduZWQgbG9uZyBnaWQ7Ci0gdW5zaWduZWQgbG9uZyBmaWxlX21vZGU7Ci0gdW5zaWduZWQgbG9uZyBkaXJfbW9kZTsKKyAgdW5zaWduZWQgbG9uZyB1aWQ7CisgIHVuc2lnbmVkIGxvbmcgZ2lkOworICB1bnNpZ25lZCBsb25nIGZpbGVfbW9kZTsKKyAgdW5zaWduZWQgbG9uZyBkaXJfbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBOQ1BfTU9VTlRfVkVSU0lPTl9WNSAoNSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmNwX25vLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25jcF9uby5oCmluZGV4IDk2NjllODguLjE3NTE0MTMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmNwX25vLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uY3Bfbm8uaApAQCAtMjcsMTIgKzI3LDEyIEBACiAjZGVmaW5lIGFBUkNIIChfX2NwdV90b19sZTMyKDB4MjApKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgYVNIQVJFRCAoX19jcHVfdG9fbGUzMigweDgwKSkKLSNkZWZpbmUgYURPTlRTVUJBTExPQ0FURSAoX19jcHVfdG9fbGUzMigxTDw8MTEpKQotI2RlZmluZSBhVFJBTlNBQ1RJT05BTCAoX19jcHVfdG9fbGUzMigxTDw8MTIpKQotI2RlZmluZSBhUFVSR0UgKF9fY3B1X3RvX2xlMzIoMUw8PDE2KSkKKyNkZWZpbmUgYURPTlRTVUJBTExPQ0FURSAoX19jcHVfdG9fbGUzMigxTCA8PCAxMSkpCisjZGVmaW5lIGFUUkFOU0FDVElPTkFMIChfX2NwdV90b19sZTMyKDFMIDw8IDEyKSkKKyNkZWZpbmUgYVBVUkdFIChfX2NwdV90b19sZTMyKDFMIDw8IDE2KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIGFSRU5BTUVJTkhJQklUIChfX2NwdV90b19sZTMyKDFMPDwxNykpCi0jZGVmaW5lIGFERUxFVEVJTkhJQklUIChfX2NwdV90b19sZTMyKDFMPDwxOCkpCi0jZGVmaW5lIGFET05UQ09NUFJFU1MgKF9fY3B1X3RvX2xlMzIoMUw8PDI3KSkKKyNkZWZpbmUgYVJFTkFNRUlOSElCSVQgKF9fY3B1X3RvX2xlMzIoMUwgPDwgMTcpKQorI2RlZmluZSBhREVMRVRFSU5ISUJJVCAoX19jcHVfdG9fbGUzMigxTCA8PCAxOCkpCisjZGVmaW5lIGFET05UQ09NUFJFU1MgKF9fY3B1X3RvX2xlMzIoMUwgPDwgMjcpKQogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZWlnaGJvdXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmVpZ2hib3VyLmgKaW5kZXggZDg0ZGUwYy4uYzczYzdmNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZWlnaGJvdXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25laWdoYm91ci5oCkBAIC0yMiwxMzMgKzIyLDEzNCBAQAogI2luY2x1ZGUgPGxpbnV4L25ldGxpbmsuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmRtc2cgewotIF9fdTggbmRtX2ZhbWlseTsKLSBfX3U4IG5kbV9wYWQxOwotIF9fdTE2IG5kbV9wYWQyOworICBfX3U4IG5kbV9mYW1pbHk7CisgIF9fdTggbmRtX3BhZDE7CisgIF9fdTE2IG5kbV9wYWQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBuZG1faWZpbmRleDsKLSBfX3UxNiBuZG1fc3RhdGU7Ci0gX191OCBuZG1fZmxhZ3M7Ci0gX191OCBuZG1fdHlwZTsKKyAgX19zMzIgbmRtX2lmaW5kZXg7CisgIF9fdTE2IG5kbV9zdGF0ZTsKKyAgX191OCBuZG1fZmxhZ3M7CisgIF9fdTggbmRtX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIE5EQV9VTlNQRUMsCi0gTkRBX0RTVCwKKyAgTkRBX1VOU1BFQywKKyAgTkRBX0RTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkRBX0xMQUREUiwKLSBOREFfQ0FDSEVJTkZPLAotIE5EQV9QUk9CRVMsCi0gTkRBX1ZMQU4sCisgIE5EQV9MTEFERFIsCisgIE5EQV9DQUNIRUlORk8sCisgIE5EQV9QUk9CRVMsCisgIE5EQV9WTEFOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOREFfUE9SVCwKLSBOREFfVk5JLAotIE5EQV9JRklOREVYLAotIF9fTkRBX01BWAorICBOREFfUE9SVCwKKyAgTkRBX1ZOSSwKKyAgTkRBX0lGSU5ERVgsCisgIE5EQV9NQVNURVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX05EQV9NQVgKIH07CiAjZGVmaW5lIE5EQV9NQVggKF9fTkRBX01BWCAtIDEpCiAjZGVmaW5lIE5URl9VU0UgMHgwMQotI2RlZmluZSBOVEZfUFJPWFkgMHgwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTlRGX1BST1hZIDB4MDgKICNkZWZpbmUgTlRGX1JPVVRFUiAweDgwCiAjZGVmaW5lIE5URl9TRUxGIDB4MDIKICNkZWZpbmUgTlRGX01BU1RFUiAweDA0Ci0jZGVmaW5lIE5VRF9JTkNPTVBMRVRFIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE5VRF9JTkNPTVBMRVRFIDB4MDEKICNkZWZpbmUgTlVEX1JFQUNIQUJMRSAweDAyCiAjZGVmaW5lIE5VRF9TVEFMRSAweDA0CiAjZGVmaW5lIE5VRF9ERUxBWSAweDA4Ci0jZGVmaW5lIE5VRF9QUk9CRSAweDEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBOVURfUFJPQkUgMHgxMAogI2RlZmluZSBOVURfRkFJTEVEIDB4MjAKICNkZWZpbmUgTlVEX05PQVJQIDB4NDAKICNkZWZpbmUgTlVEX1BFUk1BTkVOVCAweDgwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOVURfTk9ORSAweDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5kYV9jYWNoZWluZm8gewotIF9fdTMyIG5kbV9jb25maXJtZWQ7Ci0gX191MzIgbmRtX3VzZWQ7Ci0gX191MzIgbmRtX3VwZGF0ZWQ7CisgIF9fdTMyIG5kbV9jb25maXJtZWQ7CisgIF9fdTMyIG5kbV91c2VkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBuZG1fcmVmY250OworICBfX3UzMiBuZG1fdXBkYXRlZDsKKyAgX191MzIgbmRtX3JlZmNudDsKIH07CiBzdHJ1Y3QgbmR0X3N0YXRzIHsKLSBfX3U2NCBuZHRzX2FsbG9jczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbmR0c19kZXN0cm95czsKLSBfX3U2NCBuZHRzX2hhc2hfZ3Jvd3M7Ci0gX191NjQgbmR0c19yZXNfZmFpbGVkOwotIF9fdTY0IG5kdHNfbG9va3VwczsKKyAgX191NjQgbmR0c19hbGxvY3M7CisgIF9fdTY0IG5kdHNfZGVzdHJveXM7CisgIF9fdTY0IG5kdHNfaGFzaF9ncm93czsKKyAgX191NjQgbmR0c19yZXNfZmFpbGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBuZHRzX2hpdHM7Ci0gX191NjQgbmR0c19yY3ZfcHJvYmVzX21jYXN0OwotIF9fdTY0IG5kdHNfcmN2X3Byb2Jlc191Y2FzdDsKLSBfX3U2NCBuZHRzX3BlcmlvZGljX2djX3J1bnM7CisgIF9fdTY0IG5kdHNfbG9va3VwczsKKyAgX191NjQgbmR0c19oaXRzOworICBfX3U2NCBuZHRzX3Jjdl9wcm9iZXNfbWNhc3Q7CisgIF9fdTY0IG5kdHNfcmN2X3Byb2Jlc191Y2FzdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbmR0c19mb3JjZWRfZ2NfcnVuczsKKyAgX191NjQgbmR0c19wZXJpb2RpY19nY19ydW5zOworICBfX3U2NCBuZHRzX2ZvcmNlZF9nY19ydW5zOwogfTsKIGVudW0gewotIE5EVFBBX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkRUUEFfSUZJTkRFWCwKLSBORFRQQV9SRUZDTlQsCi0gTkRUUEFfUkVBQ0hBQkxFX1RJTUUsCi0gTkRUUEFfQkFTRV9SRUFDSEFCTEVfVElNRSwKKyAgTkRUUEFfVU5TUEVDLAorICBORFRQQV9JRklOREVYLAorICBORFRQQV9SRUZDTlQsCisgIE5EVFBBX1JFQUNIQUJMRV9USU1FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORFRQQV9SRVRSQU5TX1RJTUUsCi0gTkRUUEFfR0NfU1RBTEVUSU1FLAotIE5EVFBBX0RFTEFZX1BST0JFX1RJTUUsCi0gTkRUUEFfUVVFVUVfTEVOLAorICBORFRQQV9CQVNFX1JFQUNIQUJMRV9USU1FLAorICBORFRQQV9SRVRSQU5TX1RJTUUsCisgIE5EVFBBX0dDX1NUQUxFVElNRSwKKyAgTkRUUEFfREVMQVlfUFJPQkVfVElNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkRUUEFfQVBQX1BST0JFUywKLSBORFRQQV9VQ0FTVF9QUk9CRVMsCi0gTkRUUEFfTUNBU1RfUFJPQkVTLAotIE5EVFBBX0FOWUNBU1RfREVMQVksCisgIE5EVFBBX1FVRVVFX0xFTiwKKyAgTkRUUEFfQVBQX1BST0JFUywKKyAgTkRUUEFfVUNBU1RfUFJPQkVTLAorICBORFRQQV9NQ0FTVF9QUk9CRVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5EVFBBX1BST1hZX0RFTEFZLAotIE5EVFBBX1BST1hZX1FMRU4sCi0gTkRUUEFfTE9DS1RJTUUsCi0gTkRUUEFfUVVFVUVfTEVOQllURVMsCisgIE5EVFBBX0FOWUNBU1RfREVMQVksCisgIE5EVFBBX1BST1hZX0RFTEFZLAorICBORFRQQV9QUk9YWV9RTEVOLAorICBORFRQQV9MT0NLVElNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19ORFRQQV9NQVgKKyAgTkRUUEFfUVVFVUVfTEVOQllURVMsCisgIF9fTkRUUEFfTUFYCiB9OwogI2RlZmluZSBORFRQQV9NQVggKF9fTkRUUEFfTUFYIC0gMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmR0bXNnIHsKKyAgX191OCBuZHRtX2ZhbWlseTsKKyAgX191OCBuZHRtX3BhZDE7CisgIF9fdTE2IG5kdG1fcGFkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBuZHRtX2ZhbWlseTsKLSBfX3U4IG5kdG1fcGFkMTsKLSBfX3UxNiBuZHRtX3BhZDI7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuZHRfY29uZmlnIHsKLSBfX3UxNiBuZHRjX2tleV9sZW47Ci0gX191MTYgbmR0Y19lbnRyeV9zaXplOwotIF9fdTMyIG5kdGNfZW50cmllczsKKyAgX191MTYgbmR0Y19rZXlfbGVuOworICBfX3UxNiBuZHRjX2VudHJ5X3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5kdGNfbGFzdF9mbHVzaDsKLSBfX3UzMiBuZHRjX2xhc3RfcmFuZDsKLSBfX3UzMiBuZHRjX2hhc2hfcm5kOwotIF9fdTMyIG5kdGNfaGFzaF9tYXNrOworICBfX3UzMiBuZHRjX2VudHJpZXM7CisgIF9fdTMyIG5kdGNfbGFzdF9mbHVzaDsKKyAgX191MzIgbmR0Y19sYXN0X3JhbmQ7CisgIF9fdTMyIG5kdGNfaGFzaF9ybmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5kdGNfaGFzaF9jaGFpbl9nYzsKLSBfX3UzMiBuZHRjX3Byb3h5X3FsZW47CisgIF9fdTMyIG5kdGNfaGFzaF9tYXNrOworICBfX3UzMiBuZHRjX2hhc2hfY2hhaW5fZ2M7CisgIF9fdTMyIG5kdGNfcHJveHlfcWxlbjsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7CisgIE5EVEFfVU5TUEVDLAorICBORFRBX05BTUUsCisgIE5EVEFfVEhSRVNIMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkRUQV9VTlNQRUMsCi0gTkRUQV9OQU1FLAotIE5EVEFfVEhSRVNIMSwKLSBORFRBX1RIUkVTSDIsCisgIE5EVEFfVEhSRVNIMiwKKyAgTkRUQV9USFJFU0gzLAorICBORFRBX0NPTkZJRywKKyAgTkRUQV9QQVJNUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkRUQV9USFJFU0gzLAotIE5EVEFfQ09ORklHLAotIE5EVEFfUEFSTVMsCi0gTkRUQV9TVEFUUywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkRUQV9HQ19JTlRFUlZBTCwKLSBfX05EVEFfTUFYCisgIE5EVEFfU1RBVFMsCisgIE5EVEFfR0NfSU5URVJWQUwsCisgIF9fTkRUQV9NQVgKIH07Ci0jZGVmaW5lIE5EVEFfTUFYIChfX05EVEFfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE5EVEFfTUFYIChfX05EVEFfTUFYIC0gMSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0LmgKaW5kZXggMGRjMTQ4MS4uMGVmYjY4ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldC5oCkBAIC00OCwxMiArNDgsMTIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNZU19TRU5ETU1TRyAyMAogdHlwZWRlZiBlbnVtIHsKLSBTU19GUkVFID0gMCwKLSBTU19VTkNPTk5FQ1RFRCwKKyAgU1NfRlJFRSA9IDAsCisgIFNTX1VOQ09OTkVDVEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTU19DT05ORUNUSU5HLAotIFNTX0NPTk5FQ1RFRCwKLSBTU19ESVNDT05ORUNUSU5HCisgIFNTX0NPTk5FQ1RJTkcsCisgIFNTX0NPTk5FQ1RFRCwKKyAgU1NfRElTQ09OTkVDVElORwogfSBzb2NrZXRfc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX1NPX0FDQ0VQVENPTiAoMSA8PCAxNikKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0X2Ryb3Btb24uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0X2Ryb3Btb24uaAppbmRleCBhZjBiOTc2Li5hZWYxODEzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldF9kcm9wbW9uLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRfZHJvcG1vbi5oCkBAIC0yMiw0NyArMjIsNDggQEAKICNpbmNsdWRlIDxsaW51eC9uZXRsaW5rLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5ldF9kbV9kcm9wX3BvaW50IHsKLSBfX3U4IHBjWzhdOwotIF9fdTMyIGNvdW50OworICBfX3U4IHBjWzhdOworICBfX3UzMiBjb3VudDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBpc19kcm9wX3BvaW50X2h3KHgpIGRvIHsgIGludCBfX19faSwgX19fX2o7ICBmb3IgKF9fX19pID0gMDsgX19fX2kgPCA4OyBpIF9fX19pKyspICBfX19faiB8PSB4W19fX19pXTsgIF9fX19qOyB9IHdoaWxlICgwKQorI2RlZmluZSBpc19kcm9wX3BvaW50X2h3KHgpIGRvIHsgaW50IF9fX19pLCBfX19fajsgZm9yKF9fX19pID0gMDsgX19fX2kgPCA4OyBpIF9fX19pICsrKSBfX19faiB8PSB4W19fX19pXTsgX19fX2o7IFwKK30gd2hpbGUoMCkKICNkZWZpbmUgTkVUX0RNX0NGR19WRVJTSU9OIDAKICNkZWZpbmUgTkVUX0RNX0NGR19BTEVSVF9DT1VOVCAxCiAjZGVmaW5lIE5FVF9ETV9DRkdfQUxFUlRfREVMQVkgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkVUX0RNX0NGR19NQVggMwogc3RydWN0IG5ldF9kbV9jb25maWdfZW50cnkgewotIF9fdTMyIHR5cGU7Ci0gX191NjQgZGF0YSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgIF9fdTMyIHR5cGU7CisgIF9fdTY0IGRhdGEgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgbmV0X2RtX2NvbmZpZ19tc2cgewotIF9fdTMyIGVudHJpZXM7Ci0gc3RydWN0IG5ldF9kbV9jb25maWdfZW50cnkgb3B0aW9uc1swXTsKKyAgX191MzIgZW50cmllczsKKyAgc3RydWN0IG5ldF9kbV9jb25maWdfZW50cnkgb3B0aW9uc1swXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG5ldF9kbV9hbGVydF9tc2cgewotIF9fdTMyIGVudHJpZXM7Ci0gc3RydWN0IG5ldF9kbV9kcm9wX3BvaW50IHBvaW50c1swXTsKKyAgX191MzIgZW50cmllczsKKyAgc3RydWN0IG5ldF9kbV9kcm9wX3BvaW50IHBvaW50c1swXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG5ldF9kbV91c2VyX21zZyB7Ci0gdW5pb24gewotIHN0cnVjdCBuZXRfZG1fY29uZmlnX21zZyB1c2VyOworICB1bmlvbiB7CisgICAgc3RydWN0IG5ldF9kbV9jb25maWdfbXNnIHVzZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBuZXRfZG1fYWxlcnRfbXNnIGFsZXJ0OwotIH0gdTsKKyAgICBzdHJ1Y3QgbmV0X2RtX2FsZXJ0X21zZyBhbGVydDsKKyAgfSB1OwogfTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfRE1fQ01EX1VOU1BFQyA9IDAsCi0gTkVUX0RNX0NNRF9BTEVSVCwKLSBORVRfRE1fQ01EX0NPTkZJRywKLSBORVRfRE1fQ01EX1NUQVJULAorICBORVRfRE1fQ01EX1VOU1BFQyA9IDAsCisgIE5FVF9ETV9DTURfQUxFUlQsCisgIE5FVF9ETV9DTURfQ09ORklHLAorICBORVRfRE1fQ01EX1NUQVJULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfRE1fQ01EX1NUT1AsCi0gX05FVF9ETV9DTURfTUFYLAorICBORVRfRE1fQ01EX1NUT1AsCisgIF9ORVRfRE1fQ01EX01BWCwKIH07CiAjZGVmaW5lIE5FVF9ETV9DTURfTUFYIChfTkVUX0RNX0NNRF9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0X3RzdGFtcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRfdHN0YW1wLmgKaW5kZXggMWU5ZmZkNy4uNWRmZDJhYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRfdHN0YW1wLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRfdHN0YW1wLmgKQEAgLTIxLDUxICsyMSw1NCBAQAogI2luY2x1ZGUgPGxpbnV4L3NvY2tldC5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNPRl9USU1FU1RBTVBJTkdfVFhfSEFSRFdBUkUgPSAoMTw8MCksCi0gU09GX1RJTUVTVEFNUElOR19UWF9TT0ZUV0FSRSA9ICgxPDwxKSwKLSBTT0ZfVElNRVNUQU1QSU5HX1JYX0hBUkRXQVJFID0gKDE8PDIpLAotIFNPRl9USU1FU1RBTVBJTkdfUlhfU09GVFdBUkUgPSAoMTw8MyksCisgIFNPRl9USU1FU1RBTVBJTkdfVFhfSEFSRFdBUkUgPSAoMSA8PCAwKSwKKyAgU09GX1RJTUVTVEFNUElOR19UWF9TT0ZUV0FSRSA9ICgxIDw8IDEpLAorICBTT0ZfVElNRVNUQU1QSU5HX1JYX0hBUkRXQVJFID0gKDEgPDwgMiksCisgIFNPRl9USU1FU1RBTVBJTkdfUlhfU09GVFdBUkUgPSAoMSA8PCAzKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU09GX1RJTUVTVEFNUElOR19TT0ZUV0FSRSA9ICgxPDw0KSwKLSBTT0ZfVElNRVNUQU1QSU5HX1NZU19IQVJEV0FSRSA9ICgxPDw1KSwKLSBTT0ZfVElNRVNUQU1QSU5HX1JBV19IQVJEV0FSRSA9ICgxPDw2KSwKLSBTT0ZfVElNRVNUQU1QSU5HX01BU0sgPQorICBTT0ZfVElNRVNUQU1QSU5HX1NPRlRXQVJFID0gKDEgPDwgNCksCisgIFNPRl9USU1FU1RBTVBJTkdfU1lTX0hBUkRXQVJFID0gKDEgPDwgNSksCisgIFNPRl9USU1FU1RBTVBJTkdfUkFXX0hBUkRXQVJFID0gKDEgPDwgNiksCisgIFNPRl9USU1FU1RBTVBJTkdfT1BUX0lEID0gKDEgPDwgNyksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIChTT0ZfVElNRVNUQU1QSU5HX1JBV19IQVJEV0FSRSAtIDEpIHwKLSBTT0ZfVElNRVNUQU1QSU5HX1JBV19IQVJEV0FSRQorICBTT0ZfVElNRVNUQU1QSU5HX1RYX1NDSEVEID0gKDEgPDwgOCksCisgIFNPRl9USU1FU1RBTVBJTkdfVFhfQUNLID0gKDEgPDwgOSksCisgIFNPRl9USU1FU1RBTVBJTkdfTEFTVCA9IFNPRl9USU1FU1RBTVBJTkdfVFhfQUNLLAorICBTT0ZfVElNRVNUQU1QSU5HX01BU0sgPSAoU09GX1RJTUVTVEFNUElOR19MQVNUIC0gMSkgfCBTT0ZfVElNRVNUQU1QSU5HX0xBU1QKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGh3dHN0YW1wX2NvbmZpZyB7CisgIGludCBmbGFnczsKKyAgaW50IHR4X3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBmbGFnczsKLSBpbnQgdHhfdHlwZTsKLSBpbnQgcnhfZmlsdGVyOworICBpbnQgcnhfZmlsdGVyOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGh3dHN0YW1wX3R4X3R5cGVzIHsKLSBIV1RTVEFNUF9UWF9PRkYsCi0gSFdUU1RBTVBfVFhfT04sCi0gSFdUU1RBTVBfVFhfT05FU1RFUF9TWU5DLAorICBIV1RTVEFNUF9UWF9PRkYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBIV1RTVEFNUF9UWF9PTiwKKyAgSFdUU1RBTVBfVFhfT05FU1RFUF9TWU5DLAogfTsKIGVudW0gaHd0c3RhbXBfcnhfZmlsdGVycyB7Ci0gSFdUU1RBTVBfRklMVEVSX05PTkUsCi0gSFdUU1RBTVBfRklMVEVSX0FMTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSFdUU1RBTVBfRklMVEVSX1NPTUUsCi0gSFdUU1RBTVBfRklMVEVSX1BUUF9WMV9MNF9FVkVOVCwKLSBIV1RTVEFNUF9GSUxURVJfUFRQX1YxX0w0X1NZTkMsCi0gSFdUU1RBTVBfRklMVEVSX1BUUF9WMV9MNF9ERUxBWV9SRVEsCisgIEhXVFNUQU1QX0ZJTFRFUl9OT05FLAorICBIV1RTVEFNUF9GSUxURVJfQUxMLAorICBIV1RTVEFNUF9GSUxURVJfU09NRSwKKyAgSFdUU1RBTVBfRklMVEVSX1BUUF9WMV9MNF9FVkVOVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9MNF9FVkVOVCwKLSBIV1RTVEFNUF9GSUxURVJfUFRQX1YyX0w0X1NZTkMsCi0gSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9MNF9ERUxBWV9SRVEsCi0gSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9MMl9FVkVOVCwKKyAgSFdUU1RBTVBfRklMVEVSX1BUUF9WMV9MNF9TWU5DLAorICBIV1RTVEFNUF9GSUxURVJfUFRQX1YxX0w0X0RFTEFZX1JFUSwKKyAgSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9MNF9FVkVOVCwKKyAgSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9MNF9TWU5DLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBIV1RTVEFNUF9GSUxURVJfUFRQX1YyX0wyX1NZTkMsCi0gSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9MMl9ERUxBWV9SRVEsCi0gSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9FVkVOVCwKLSBIV1RTVEFNUF9GSUxURVJfUFRQX1YyX1NZTkMsCisgIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjJfTDRfREVMQVlfUkVRLAorICBIV1RTVEFNUF9GSUxURVJfUFRQX1YyX0wyX0VWRU5ULAorICBIV1RTVEFNUF9GSUxURVJfUFRQX1YyX0wyX1NZTkMsCisgIEhXVFNUQU1QX0ZJTFRFUl9QVFBfVjJfTDJfREVMQVlfUkVRLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBIV1RTVEFNUF9GSUxURVJfUFRQX1YyX0RFTEFZX1JFUSwKKyAgSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9FVkVOVCwKKyAgSFdUU1RBTVBfRklMVEVSX1BUUF9WMl9TWU5DLAorICBIV1RTVEFNUF9GSUxURVJfUFRQX1YyX0RFTEFZX1JFUSwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGNvbmYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0Y29uZi5oCmluZGV4IDJiZjA5ZDEuLmE5YmYyMTYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0Y29uZi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0Y29uZi5oCkBAIC0yMiwyMiArMjIsMjIgQEAKICNpbmNsdWRlIDxsaW51eC9uZXRsaW5rLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5ldGNvbmZtc2cgewotIF9fdTggbmNtX2ZhbWlseTsKKyAgX191OCBuY21fZmFtaWx5OwogfTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRDT05GQV9VTlNQRUMsCi0gTkVUQ09ORkFfSUZJTkRFWCwKLSBORVRDT05GQV9GT1JXQVJESU5HLAotIE5FVENPTkZBX1JQX0ZJTFRFUiwKKyAgTkVUQ09ORkFfVU5TUEVDLAorICBORVRDT05GQV9JRklOREVYLAorICBORVRDT05GQV9GT1JXQVJESU5HLAorICBORVRDT05GQV9SUF9GSUxURVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVENPTkZBX01DX0ZPUldBUkRJTkcsCi0gTkVUQ09ORkFfUFJPWFlfTkVJR0gsCi0gX19ORVRDT05GQV9NQVgKKyAgTkVUQ09ORkFfTUNfRk9SV0FSRElORywKKyAgTkVUQ09ORkFfUFJPWFlfTkVJR0gsCisgIF9fTkVUQ09ORkFfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkVUQ09ORkFfTUFYIChfX05FVENPTkZBX01BWCAtIDEpCi0jZGVmaW5lIE5FVENPTkZBX0lGSU5ERVhfQUxMIC0xCi0jZGVmaW5lIE5FVENPTkZBX0lGSU5ERVhfREVGQVVMVCAtMgorI2RlZmluZSBORVRDT05GQV9JRklOREVYX0FMTCAtIDEKKyNkZWZpbmUgTkVUQ09ORkFfSUZJTkRFWF9ERUZBVUxUIC0gMgogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRkZXZpY2UuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZGV2aWNlLmgKaW5kZXggZjI0NzJmYy4uNWIzMGFiOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRkZXZpY2UuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGRldmljZS5oCkBAIC0yNiwxNSArMjYsMjYgQEAKICNkZWZpbmUgTUFYX0FERFJfTEVOIDMyCiAjZGVmaW5lIElOSVRfTkVUREVWX0dST1VQIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE5FVF9OQU1FX1VOS05PV04gMAorI2RlZmluZSBORVRfTkFNRV9FTlVNIDEKKyNkZWZpbmUgTkVUX05BTUVfUFJFRElDVEFCTEUgMgorI2RlZmluZSBORVRfTkFNRV9VU0VSIDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE5FVF9OQU1FX1JFTkFNRUQgNAogZW51bSB7Ci0gSUZfUE9SVF9VTktOT1dOID0gMCwKLSBJRl9QT1JUXzEwQkFTRTIsCi0gSUZfUE9SVF8xMEJBU0VULAorICBJRl9QT1JUX1VOS05PV04gPSAwLAorICBJRl9QT1JUXzEwQkFTRTIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElGX1BPUlRfQVVJLAotIElGX1BPUlRfMTAwQkFTRVQsCi0gSUZfUE9SVF8xMDBCQVNFVFgsCi0gSUZfUE9SVF8xMDBCQVNFRlgKKyAgSUZfUE9SVF8xMEJBU0VULAorICBJRl9QT1JUX0FVSSwKKyAgSUZfUE9SVF8xMDBCQVNFVCwKKyAgSUZfUE9SVF8xMDBCQVNFVFgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJRl9QT1JUXzEwMEJBU0VGWAogfTsKKyNkZWZpbmUgTkVUX0FERFJfUEVSTSAwCisjZGVmaW5lIE5FVF9BRERSX1JBTkRPTSAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBORVRfQUREUl9TVE9MRU4gMgorI2RlZmluZSBORVRfQUREUl9TRVQgMwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIuaAppbmRleCA3ODA0MzIxLi5iMDRkYWE0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyLmgKQEAgLTM3LDQwICszNyw0MCBAQAogI2RlZmluZSBORl9WRVJESUNUX1FCSVRTIDE2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORl9RVUVVRV9OUih4KSAoKCgoeCkgPDwgMTYpICYgTkZfVkVSRElDVF9RTUFTSykgfCBORl9RVUVVRSkKLSNkZWZpbmUgTkZfRFJPUF9FUlIoeCkgKCgoLXgpIDw8IDE2KSB8IE5GX0RST1ApCisjZGVmaW5lIE5GX0RST1BfRVJSKHgpICgoKC0geCkgPDwgMTYpIHwgTkZfRFJPUCkKICNkZWZpbmUgTkZDX1VOS05PV04gMHg0MDAwCiAjZGVmaW5lIE5GQ19BTFRFUkVEIDB4ODAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZfVkVSRElDVF9CSVRTIDE2CiBlbnVtIG5mX2luZXRfaG9va3MgewotIE5GX0lORVRfUFJFX1JPVVRJTkcsCi0gTkZfSU5FVF9MT0NBTF9JTiwKKyAgTkZfSU5FVF9QUkVfUk9VVElORywKKyAgTkZfSU5FVF9MT0NBTF9JTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZfSU5FVF9GT1JXQVJELAotIE5GX0lORVRfTE9DQUxfT1VULAotIE5GX0lORVRfUE9TVF9ST1VUSU5HLAotIE5GX0lORVRfTlVNSE9PS1MKKyAgTkZfSU5FVF9GT1JXQVJELAorICBORl9JTkVUX0xPQ0FMX09VVCwKKyAgTkZfSU5FVF9QT1NUX1JPVVRJTkcsCisgIE5GX0lORVRfTlVNSE9PS1MKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gTkZQUk9UT19VTlNQRUMgPSAwLAotIE5GUFJPVE9fSU5FVCA9IDEsCisgIE5GUFJPVE9fVU5TUEVDID0gMCwKKyAgTkZQUk9UT19JTkVUID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZQUk9UT19JUFY0ID0gMiwKLSBORlBST1RPX0FSUCA9IDMsCi0gTkZQUk9UT19CUklER0UgPSA3LAotIE5GUFJPVE9fSVBWNiA9IDEwLAorICBORlBST1RPX0lQVjQgPSAyLAorICBORlBST1RPX0FSUCA9IDMsCisgIE5GUFJPVE9fQlJJREdFID0gNywKKyAgTkZQUk9UT19JUFY2ID0gMTAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GUFJPVE9fREVDTkVUID0gMTIsCi0gTkZQUk9UT19OVU1QUk9UTywKKyAgTkZQUk9UT19ERUNORVQgPSAxMiwKKyAgTkZQUk9UT19OVU1QUk9UTywKIH07CiB1bmlvbiBuZl9pbmV0X2FkZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhbGxbNF07Ci0gX19iZTMyIGlwOwotIF9fYmUzMiBpcDZbNF07Ci0gc3RydWN0IGluX2FkZHIgaW47CisgIF9fdTMyIGFsbFs0XTsKKyAgX19iZTMyIGlwOworICBfX2JlMzIgaXA2WzRdOworICBzdHJ1Y3QgaW5fYWRkciBpbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluNl9hZGRyIGluNjsKKyAgc3RydWN0IGluNl9hZGRyIGluNjsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0LmgKaW5kZXggZDg1Yzg1Yi4uODIxMGE3NCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0LmgKQEAgLTI0LDI1MSArMjQsMjc2IEBACiAjZGVmaW5lIElQU0VUX01BWF9DT01NRU5UX1NJWkUgMjU1CiAjZGVmaW5lIElQU0VUX01BWE5BTUVMRU4gMzIKIGVudW0gaXBzZXRfY21kIHsKLSBJUFNFVF9DTURfTk9ORSwKKyAgSVBTRVRfQ01EX05PTkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0NNRF9QUk9UT0NPTCwKLSBJUFNFVF9DTURfQ1JFQVRFLAotIElQU0VUX0NNRF9ERVNUUk9ZLAotIElQU0VUX0NNRF9GTFVTSCwKKyAgSVBTRVRfQ01EX1BST1RPQ09MLAorICBJUFNFVF9DTURfQ1JFQVRFLAorICBJUFNFVF9DTURfREVTVFJPWSwKKyAgSVBTRVRfQ01EX0ZMVVNILAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9DTURfUkVOQU1FLAotIElQU0VUX0NNRF9TV0FQLAotIElQU0VUX0NNRF9MSVNULAotIElQU0VUX0NNRF9TQVZFLAorICBJUFNFVF9DTURfUkVOQU1FLAorICBJUFNFVF9DTURfU1dBUCwKKyAgSVBTRVRfQ01EX0xJU1QsCisgIElQU0VUX0NNRF9TQVZFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9DTURfQURELAotIElQU0VUX0NNRF9ERUwsCi0gSVBTRVRfQ01EX1RFU1QsCi0gSVBTRVRfQ01EX0hFQURFUiwKKyAgSVBTRVRfQ01EX0FERCwKKyAgSVBTRVRfQ01EX0RFTCwKKyAgSVBTRVRfQ01EX1RFU1QsCisgIElQU0VUX0NNRF9IRUFERVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0NNRF9UWVBFLAotIElQU0VUX01TR19NQVgsCi0gSVBTRVRfQ01EX1JFU1RPUkUgPSBJUFNFVF9NU0dfTUFYLAotIElQU0VUX0NNRF9IRUxQLAorICBJUFNFVF9DTURfVFlQRSwKKyAgSVBTRVRfTVNHX01BWCwKKyAgSVBTRVRfQ01EX1JFU1RPUkUgPSBJUFNFVF9NU0dfTUFYLAorICBJUFNFVF9DTURfSEVMUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfQ01EX1ZFUlNJT04sCi0gSVBTRVRfQ01EX1FVSVQsCi0gSVBTRVRfQ01EX01BWCwKLSBJUFNFVF9DTURfQ09NTUlUID0gSVBTRVRfQ01EX01BWCwKKyAgSVBTRVRfQ01EX1ZFUlNJT04sCisgIElQU0VUX0NNRF9RVUlULAorICBJUFNFVF9DTURfTUFYLAorICBJUFNFVF9DTURfQ09NTUlUID0gSVBTRVRfQ01EX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gSVBTRVRfQVRUUl9VTlNQRUMsCi0gSVBTRVRfQVRUUl9QUk9UT0NPTCwKKyAgSVBTRVRfQVRUUl9VTlNQRUMsCisgIElQU0VUX0FUVFJfUFJPVE9DT0wsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0FUVFJfU0VUTkFNRSwKLSBJUFNFVF9BVFRSX1RZUEVOQU1FLAotIElQU0VUX0FUVFJfU0VUTkFNRTIgPSBJUFNFVF9BVFRSX1RZUEVOQU1FLAotIElQU0VUX0FUVFJfUkVWSVNJT04sCisgIElQU0VUX0FUVFJfU0VUTkFNRSwKKyAgSVBTRVRfQVRUUl9UWVBFTkFNRSwKKyAgSVBTRVRfQVRUUl9TRVROQU1FMiA9IElQU0VUX0FUVFJfVFlQRU5BTUUsCisgIElQU0VUX0FUVFJfUkVWSVNJT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0FUVFJfRkFNSUxZLAotIElQU0VUX0FUVFJfRkxBR1MsCi0gSVBTRVRfQVRUUl9EQVRBLAotIElQU0VUX0FUVFJfQURULAorICBJUFNFVF9BVFRSX0ZBTUlMWSwKKyAgSVBTRVRfQVRUUl9GTEFHUywKKyAgSVBTRVRfQVRUUl9EQVRBLAorICBJUFNFVF9BVFRSX0FEVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfQVRUUl9MSU5FTk8sCi0gSVBTRVRfQVRUUl9QUk9UT0NPTF9NSU4sCi0gSVBTRVRfQVRUUl9SRVZJU0lPTl9NSU4gPSBJUFNFVF9BVFRSX1BST1RPQ09MX01JTiwKLSBfX0lQU0VUX0FUVFJfQ01EX01BWCwKKyAgSVBTRVRfQVRUUl9MSU5FTk8sCisgIElQU0VUX0FUVFJfUFJPVE9DT0xfTUlOLAorICBJUFNFVF9BVFRSX1JFVklTSU9OX01JTiA9IElQU0VUX0FUVFJfUFJPVE9DT0xfTUlOLAorICBfX0lQU0VUX0FUVFJfQ01EX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBJUFNFVF9BVFRSX0NNRF9NQVggKF9fSVBTRVRfQVRUUl9DTURfTUFYIC0gMSkKIGVudW0gewotIElQU0VUX0FUVFJfSVAgPSBJUFNFVF9BVFRSX1VOU1BFQyArIDEsCisgIElQU0VUX0FUVFJfSVAgPSBJUFNFVF9BVFRSX1VOU1BFQyArIDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0FUVFJfSVBfRlJPTSA9IElQU0VUX0FUVFJfSVAsCi0gSVBTRVRfQVRUUl9JUF9UTywKLSBJUFNFVF9BVFRSX0NJRFIsCi0gSVBTRVRfQVRUUl9QT1JULAorICBJUFNFVF9BVFRSX0lQX0ZST00gPSBJUFNFVF9BVFRSX0lQLAorICBJUFNFVF9BVFRSX0lQX1RPLAorICBJUFNFVF9BVFRSX0NJRFIsCisgIElQU0VUX0FUVFJfUE9SVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfQVRUUl9QT1JUX0ZST00gPSBJUFNFVF9BVFRSX1BPUlQsCi0gSVBTRVRfQVRUUl9QT1JUX1RPLAotIElQU0VUX0FUVFJfVElNRU9VVCwKLSBJUFNFVF9BVFRSX1BST1RPLAorICBJUFNFVF9BVFRSX1BPUlRfRlJPTSA9IElQU0VUX0FUVFJfUE9SVCwKKyAgSVBTRVRfQVRUUl9QT1JUX1RPLAorICBJUFNFVF9BVFRSX1RJTUVPVVQsCisgIElQU0VUX0FUVFJfUFJPVE8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0FUVFJfQ0FEVF9GTEFHUywKLSBJUFNFVF9BVFRSX0NBRFRfTElORU5PID0gSVBTRVRfQVRUUl9MSU5FTk8sCi0gSVBTRVRfQVRUUl9DQURUX01BWCA9IDE2LAotIElQU0VUX0FUVFJfR0MsCisgIElQU0VUX0FUVFJfQ0FEVF9GTEFHUywKKyAgSVBTRVRfQVRUUl9DQURUX0xJTkVOTyA9IElQU0VUX0FUVFJfTElORU5PLAorICBJUFNFVF9BVFRSX01BUkssCisgIElQU0VUX0FUVFJfTUFSS01BU0ssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0FUVFJfSEFTSFNJWkUsCi0gSVBTRVRfQVRUUl9NQVhFTEVNLAotIElQU0VUX0FUVFJfTkVUTUFTSywKLSBJUFNFVF9BVFRSX1BST0JFUywKKyAgSVBTRVRfQVRUUl9DQURUX01BWCA9IDE2LAorICBJUFNFVF9BVFRSX0dDLAorICBJUFNFVF9BVFRSX0hBU0hTSVpFLAorICBJUFNFVF9BVFRSX01BWEVMRU0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0FUVFJfUkVTSVpFLAotIElQU0VUX0FUVFJfU0laRSwKLSBJUFNFVF9BVFRSX0VMRU1FTlRTLAotIElQU0VUX0FUVFJfUkVGRVJFTkNFUywKKyAgSVBTRVRfQVRUUl9ORVRNQVNLLAorICBJUFNFVF9BVFRSX1BST0JFUywKKyAgSVBTRVRfQVRUUl9SRVNJWkUsCisgIElQU0VUX0FUVFJfU0laRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfQVRUUl9NRU1TSVpFLAotIF9fSVBTRVRfQVRUUl9DUkVBVEVfTUFYLAorICBJUFNFVF9BVFRSX0VMRU1FTlRTLAorICBJUFNFVF9BVFRSX1JFRkVSRU5DRVMsCisgIElQU0VUX0FUVFJfTUVNU0laRSwKKyAgX19JUFNFVF9BVFRSX0NSRUFURV9NQVgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSVBTRVRfQVRUUl9DUkVBVEVfTUFYIChfX0lQU0VUX0FUVFJfQ1JFQVRFX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gSVBTRVRfQVRUUl9FVEhFUiA9IElQU0VUX0FUVFJfQ0FEVF9NQVggKyAxLAotIElQU0VUX0FUVFJfTkFNRSwKLSBJUFNFVF9BVFRSX05BTUVSRUYsCisgIElQU0VUX0FUVFJfRVRIRVIgPSBJUFNFVF9BVFRSX0NBRFRfTUFYICsgMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfQVRUUl9JUDIsCi0gSVBTRVRfQVRUUl9DSURSMiwKLSBJUFNFVF9BVFRSX0lQMl9UTywKLSBJUFNFVF9BVFRSX0lGQUNFLAorICBJUFNFVF9BVFRSX05BTUUsCisgIElQU0VUX0FUVFJfTkFNRVJFRiwKKyAgSVBTRVRfQVRUUl9JUDIsCisgIElQU0VUX0FUVFJfQ0lEUjIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0FUVFJfQllURVMsCi0gSVBTRVRfQVRUUl9QQUNLRVRTLAotIElQU0VUX0FUVFJfQ09NTUVOVCwKLSBfX0lQU0VUX0FUVFJfQURUX01BWCwKKyAgSVBTRVRfQVRUUl9JUDJfVE8sCisgIElQU0VUX0FUVFJfSUZBQ0UsCisgIElQU0VUX0FUVFJfQllURVMsCisgIElQU0VUX0FUVFJfUEFDS0VUUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElQU0VUX0FUVFJfQ09NTUVOVCwKKyAgSVBTRVRfQVRUUl9TS0JNQVJLLAorICBJUFNFVF9BVFRSX1NLQlBSSU8sCisgIElQU0VUX0FUVFJfU0tCUVVFVUUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX0lQU0VUX0FUVFJfQURUX01BWCwKIH07CiAjZGVmaW5lIElQU0VUX0FUVFJfQURUX01BWCAoX19JUFNFVF9BVFRSX0FEVF9NQVggLSAxKQogZW51bSB7Ci0gSVBTRVRfQVRUUl9JUEFERFJfSVBWNCA9IElQU0VUX0FUVFJfVU5TUEVDICsgMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfQVRUUl9JUEFERFJfSVBWNiwKLSBfX0lQU0VUX0FUVFJfSVBBRERSX01BWCwKKyAgSVBTRVRfQVRUUl9JUEFERFJfSVBWNCA9IElQU0VUX0FUVFJfVU5TUEVDICsgMSwKKyAgSVBTRVRfQVRUUl9JUEFERFJfSVBWNiwKKyAgX19JUFNFVF9BVFRSX0lQQUREUl9NQVgsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBTRVRfQVRUUl9JUEFERFJfTUFYIChfX0lQU0VUX0FUVFJfSVBBRERSX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBpcHNldF9lcnJubyB7Ci0gSVBTRVRfRVJSX1BSSVZBVEUgPSA0MDk2LAotIElQU0VUX0VSUl9QUk9UT0NPTCwKLSBJUFNFVF9FUlJfRklORF9UWVBFLAorICBJUFNFVF9FUlJfUFJJVkFURSA9IDQwOTYsCisgIElQU0VUX0VSUl9QUk9UT0NPTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRVJSX01BWF9TRVRTLAotIElQU0VUX0VSUl9CVVNZLAotIElQU0VUX0VSUl9FWElTVF9TRVROQU1FMiwKLSBJUFNFVF9FUlJfVFlQRV9NSVNNQVRDSCwKKyAgSVBTRVRfRVJSX0ZJTkRfVFlQRSwKKyAgSVBTRVRfRVJSX01BWF9TRVRTLAorICBJUFNFVF9FUlJfQlVTWSwKKyAgSVBTRVRfRVJSX0VYSVNUX1NFVE5BTUUyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9FUlJfRVhJU1QsCi0gSVBTRVRfRVJSX0lOVkFMSURfQ0lEUiwKLSBJUFNFVF9FUlJfSU5WQUxJRF9ORVRNQVNLLAotIElQU0VUX0VSUl9JTlZBTElEX0ZBTUlMWSwKKyAgSVBTRVRfRVJSX1RZUEVfTUlTTUFUQ0gsCisgIElQU0VUX0VSUl9FWElTVCwKKyAgSVBTRVRfRVJSX0lOVkFMSURfQ0lEUiwKKyAgSVBTRVRfRVJSX0lOVkFMSURfTkVUTUFTSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRVJSX1RJTUVPVVQsCi0gSVBTRVRfRVJSX1JFRkVSRU5DRUQsCi0gSVBTRVRfRVJSX0lQQUREUl9JUFY0LAotIElQU0VUX0VSUl9JUEFERFJfSVBWNiwKKyAgSVBTRVRfRVJSX0lOVkFMSURfRkFNSUxZLAorICBJUFNFVF9FUlJfVElNRU9VVCwKKyAgSVBTRVRfRVJSX1JFRkVSRU5DRUQsCisgIElQU0VUX0VSUl9JUEFERFJfSVBWNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRVJSX0NPVU5URVIsCi0gSVBTRVRfRVJSX0NPTU1FTlQsCi0gSVBTRVRfRVJSX1RZUEVfU1BFQ0lGSUMgPSA0MzUyLAorICBJUFNFVF9FUlJfSVBBRERSX0lQVjYsCisgIElQU0VUX0VSUl9DT1VOVEVSLAorICBJUFNFVF9FUlJfQ09NTUVOVCwKKyAgSVBTRVRfRVJSX0lOVkFMSURfTUFSS01BU0ssCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJUFNFVF9FUlJfU0tCSU5GTywKKyAgSVBTRVRfRVJSX1RZUEVfU1BFQ0lGSUMgPSA0MzUyLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGlwc2V0X2NtZF9mbGFncyB7Ci0gSVBTRVRfRkxBR19CSVRfRVhJU1QgPSAwLAotIElQU0VUX0ZMQUdfRVhJU1QgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9FWElTVCksCi0gSVBTRVRfRkxBR19CSVRfTElTVF9TRVROQU1FID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRkxBR19MSVNUX1NFVE5BTUUgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9MSVNUX1NFVE5BTUUpLAotIElQU0VUX0ZMQUdfQklUX0xJU1RfSEVBREVSID0gMiwKLSBJUFNFVF9GTEFHX0xJU1RfSEVBREVSID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfTElTVF9IRUFERVIpLAotIElQU0VUX0ZMQUdfQklUX1NLSVBfQ09VTlRFUl9VUERBVEUgPSAzLAorICBJUFNFVF9GTEFHX0JJVF9FWElTVCA9IDAsCisgIElQU0VUX0ZMQUdfRVhJU1QgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9FWElTVCksCisgIElQU0VUX0ZMQUdfQklUX0xJU1RfU0VUTkFNRSA9IDEsCisgIElQU0VUX0ZMQUdfTElTVF9TRVROQU1FID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfTElTVF9TRVROQU1FKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRkxBR19TS0lQX0NPVU5URVJfVVBEQVRFID0KLSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9TS0lQX0NPVU5URVJfVVBEQVRFKSwKLSBJUFNFVF9GTEFHX0JJVF9TS0lQX1NVQkNPVU5URVJfVVBEQVRFID0gNCwKLSBJUFNFVF9GTEFHX1NLSVBfU1VCQ09VTlRFUl9VUERBVEUgPQorICBJUFNFVF9GTEFHX0JJVF9MSVNUX0hFQURFUiA9IDIsCisgIElQU0VUX0ZMQUdfTElTVF9IRUFERVIgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9MSVNUX0hFQURFUiksCisgIElQU0VUX0ZMQUdfQklUX1NLSVBfQ09VTlRFUl9VUERBVEUgPSAzLAorICBJUFNFVF9GTEFHX1NLSVBfQ09VTlRFUl9VUERBVEUgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9TS0lQX0NPVU5URVJfVVBEQVRFKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gKDEgPDwgSVBTRVRfRkxBR19CSVRfU0tJUF9TVUJDT1VOVEVSX1VQREFURSksCi0gSVBTRVRfRkxBR19CSVRfTUFUQ0hfQ09VTlRFUlMgPSA1LAotIElQU0VUX0ZMQUdfTUFUQ0hfQ09VTlRFUlMgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9NQVRDSF9DT1VOVEVSUyksCi0gSVBTRVRfRkxBR19CSVRfUkVUVVJOX05PTUFUQ0ggPSA3LAorICBJUFNFVF9GTEFHX0JJVF9TS0lQX1NVQkNPVU5URVJfVVBEQVRFID0gNCwKKyAgSVBTRVRfRkxBR19TS0lQX1NVQkNPVU5URVJfVVBEQVRFID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfU0tJUF9TVUJDT1VOVEVSX1VQREFURSksCisgIElQU0VUX0ZMQUdfQklUX01BVENIX0NPVU5URVJTID0gNSwKKyAgSVBTRVRfRkxBR19NQVRDSF9DT1VOVEVSUyA9ICgxIDw8IElQU0VUX0ZMQUdfQklUX01BVENIX0NPVU5URVJTKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRkxBR19SRVRVUk5fTk9NQVRDSCA9ICgxIDw8IElQU0VUX0ZMQUdfQklUX1JFVFVSTl9OT01BVENIKSwKLSBJUFNFVF9GTEFHX0NNRF9NQVggPSAxNSwKKyAgSVBTRVRfRkxBR19CSVRfUkVUVVJOX05PTUFUQ0ggPSA3LAorICBJUFNFVF9GTEFHX1JFVFVSTl9OT01BVENIID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfUkVUVVJOX05PTUFUQ0gpLAorICBJUFNFVF9GTEFHX0JJVF9NQVBfU0tCTUFSSyA9IDgsCisgIElQU0VUX0ZMQUdfTUFQX1NLQk1BUksgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9NQVBfU0tCTUFSSyksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJUFNFVF9GTEFHX0JJVF9NQVBfU0tCUFJJTyA9IDksCisgIElQU0VUX0ZMQUdfTUFQX1NLQlBSSU8gPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9NQVBfU0tCUFJJTyksCisgIElQU0VUX0ZMQUdfQklUX01BUF9TS0JRVUVVRSA9IDEwLAorICBJUFNFVF9GTEFHX01BUF9TS0JRVUVVRSA9ICgxIDw8IElQU0VUX0ZMQUdfQklUX01BUF9TS0JRVUVVRSksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJUFNFVF9GTEFHX0NNRF9NQVggPSAxNSwKIH07CiBlbnVtIGlwc2V0X2NhZHRfZmxhZ3MgeworICBJUFNFVF9GTEFHX0JJVF9CRUZPUkUgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9GTEFHX0JJVF9CRUZPUkUgPSAwLAotIElQU0VUX0ZMQUdfQkVGT1JFID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfQkVGT1JFKSwKLSBJUFNFVF9GTEFHX0JJVF9QSFlTREVWID0gMSwKLSBJUFNFVF9GTEFHX1BIWVNERVYgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9QSFlTREVWKSwKKyAgSVBTRVRfRkxBR19CRUZPUkUgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9CRUZPUkUpLAorICBJUFNFVF9GTEFHX0JJVF9QSFlTREVWID0gMSwKKyAgSVBTRVRfRkxBR19QSFlTREVWID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfUEhZU0RFViksCisgIElQU0VUX0ZMQUdfQklUX05PTUFUQ0ggPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9GTEFHX0JJVF9OT01BVENIID0gMiwKLSBJUFNFVF9GTEFHX05PTUFUQ0ggPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9OT01BVENIKSwKLSBJUFNFVF9GTEFHX0JJVF9XSVRIX0NPVU5URVJTID0gMywKLSBJUFNFVF9GTEFHX1dJVEhfQ09VTlRFUlMgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9XSVRIX0NPVU5URVJTKSwKKyAgSVBTRVRfRkxBR19OT01BVENIID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfTk9NQVRDSCksCisgIElQU0VUX0ZMQUdfQklUX1dJVEhfQ09VTlRFUlMgPSAzLAorICBJUFNFVF9GTEFHX1dJVEhfQ09VTlRFUlMgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9XSVRIX0NPVU5URVJTKSwKKyAgSVBTRVRfRkxBR19CSVRfV0lUSF9DT01NRU5UID0gNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRkxBR19CSVRfV0lUSF9DT01NRU5UID0gNCwKLSBJUFNFVF9GTEFHX1dJVEhfQ09NTUVOVCA9ICgxIDw8IElQU0VUX0ZMQUdfQklUX1dJVEhfQ09NTUVOVCksCi0gSVBTRVRfRkxBR19DQURUX01BWCA9IDE1LAorICBJUFNFVF9GTEFHX1dJVEhfQ09NTUVOVCA9ICgxIDw8IElQU0VUX0ZMQUdfQklUX1dJVEhfQ09NTUVOVCksCisgIElQU0VUX0ZMQUdfQklUX1dJVEhfRk9SQ0VBREQgPSA1LAorICBJUFNFVF9GTEFHX1dJVEhfRk9SQ0VBREQgPSAoMSA8PCBJUFNFVF9GTEFHX0JJVF9XSVRIX0ZPUkNFQUREKSwKKyAgSVBTRVRfRkxBR19CSVRfV0lUSF9TS0JJTkZPID0gNiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElQU0VUX0ZMQUdfV0lUSF9TS0JJTkZPID0gKDEgPDwgSVBTRVRfRkxBR19CSVRfV0lUSF9TS0JJTkZPKSwKKyAgSVBTRVRfRkxBR19DQURUX01BWCA9IDE1LAorfTsKK2VudW0gaXBzZXRfY3JlYXRlX2ZsYWdzIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElQU0VUX0NSRUFURV9GTEFHX0JJVF9GT1JDRUFERCA9IDAsCisgIElQU0VUX0NSRUFURV9GTEFHX0ZPUkNFQUREID0gKDEgPDwgSVBTRVRfQ1JFQVRFX0ZMQUdfQklUX0ZPUkNFQUREKSwKKyAgSVBTRVRfQ1JFQVRFX0ZMQUdfQklUX01BWCA9IDcsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gaXBzZXRfYWR0IHsKLSBJUFNFVF9BREQsCi0gSVBTRVRfREVMLAotIElQU0VUX1RFU1QsCisgIElQU0VUX0FERCwKKyAgSVBTRVRfREVMLAorICBJUFNFVF9URVNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9BRFRfTUFYLAotIElQU0VUX0NSRUFURSA9IElQU0VUX0FEVF9NQVgsCi0gSVBTRVRfQ0FEVF9NQVgsCisgIElQU0VUX0FEVF9NQVgsCisgIElQU0VUX0NSRUFURSA9IElQU0VUX0FEVF9NQVgsCisgIElQU0VUX0NBRFRfTUFYLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIF9fdTE2IGlwX3NldF9pZF90OwogI2RlZmluZSBJUFNFVF9JTlZBTElEX0lEIDY1NTM1CiBlbnVtIGlwX3NldF9kaW0gewotIElQU0VUX0RJTV9aRVJPID0gMCwKKyAgSVBTRVRfRElNX1pFUk8gPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9ESU1fT05FLAotIElQU0VUX0RJTV9UV08sCi0gSVBTRVRfRElNX1RIUkVFLAotIElQU0VUX0RJTV9NQVggPSA2LAorICBJUFNFVF9ESU1fT05FLAorICBJUFNFVF9ESU1fVFdPLAorICBJUFNFVF9ESU1fVEhSRUUsCisgIElQU0VUX0RJTV9NQVggPSA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9CSVRfUkVUVVJOX05PTUFUQ0ggPSA3LAorICBJUFNFVF9CSVRfUkVUVVJOX05PTUFUQ0ggPSA3LAogfTsKIGVudW0gaXBfc2V0X2tvcHQgewotIElQU0VUX0lOVl9NQVRDSCA9ICgxIDw8IElQU0VUX0RJTV9aRVJPKSwKKyAgSVBTRVRfSU5WX01BVENIID0gKDEgPDwgSVBTRVRfRElNX1pFUk8pLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9ESU1fT05FX1NSQyA9ICgxIDw8IElQU0VUX0RJTV9PTkUpLAotIElQU0VUX0RJTV9UV09fU1JDID0gKDEgPDwgSVBTRVRfRElNX1RXTyksCi0gSVBTRVRfRElNX1RIUkVFX1NSQyA9ICgxIDw8IElQU0VUX0RJTV9USFJFRSksCi0gSVBTRVRfUkVUVVJOX05PTUFUQ0ggPSAoMSA8PCBJUFNFVF9CSVRfUkVUVVJOX05PTUFUQ0gpLAorICBJUFNFVF9ESU1fT05FX1NSQyA9ICgxIDw8IElQU0VUX0RJTV9PTkUpLAorICBJUFNFVF9ESU1fVFdPX1NSQyA9ICgxIDw8IElQU0VUX0RJTV9UV08pLAorICBJUFNFVF9ESU1fVEhSRUVfU1JDID0gKDEgPDwgSVBTRVRfRElNX1RIUkVFKSwKKyAgSVBTRVRfUkVUVVJOX05PTUFUQ0ggPSAoMSA8PCBJUFNFVF9CSVRfUkVUVVJOX05PTUFUQ0gpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBJUFNFVF9DT1VOVEVSX05PTkUgPSAwLAotIElQU0VUX0NPVU5URVJfRVEsCisgIElQU0VUX0NPVU5URVJfTk9ORSA9IDAsCisgIElQU0VUX0NPVU5URVJfRVEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0NPVU5URVJfTkUsCi0gSVBTRVRfQ09VTlRFUl9MVCwKLSBJUFNFVF9DT1VOVEVSX0dULAorICBJUFNFVF9DT1VOVEVSX05FLAorICBJUFNFVF9DT1VOVEVSX0xULAorICBJUFNFVF9DT1VOVEVSX0dULAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXBfc2V0X2NvdW50ZXJfbWF0Y2ggewotIF9fdTggb3A7Ci0gX191NjQgdmFsdWU7CisgIF9fdTggb3A7CisgIF9fdTY0IHZhbHVlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPX0lQX1NFVCA4MwogdW5pb24gaXBfc2V0X25hbWVfaW5kZXggewotIGNoYXIgbmFtZVtJUFNFVF9NQVhOQU1FTEVOXTsKLSBpcF9zZXRfaWRfdCBpbmRleDsKKyAgY2hhciBuYW1lW0lQU0VUX01BWE5BTUVMRU5dOworICBpcF9zZXRfaWRfdCBpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBJUF9TRVRfT1BfR0VUX0JZTkFNRSAweDAwMDAwMDA2CiBzdHJ1Y3QgaXBfc2V0X3JlcV9nZXRfc2V0IHsKLSB1bnNpZ25lZCBpbnQgb3A7CisgIHVuc2lnbmVkIGludCBvcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHZlcnNpb247Ci0gdW5pb24gaXBfc2V0X25hbWVfaW5kZXggc2V0OworICB1bnNpZ25lZCBpbnQgdmVyc2lvbjsKKyAgdW5pb24gaXBfc2V0X25hbWVfaW5kZXggc2V0OwogfTsKICNkZWZpbmUgSVBfU0VUX09QX0dFVF9CWUlOREVYIDB4MDAwMDAwMDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQX1NFVF9PUF9HRVRfRk5BTUUgMHgwMDAwMDAwOAogc3RydWN0IGlwX3NldF9yZXFfZ2V0X3NldF9mYW1pbHkgewotIHVuc2lnbmVkIGludCBvcDsKLSB1bnNpZ25lZCBpbnQgdmVyc2lvbjsKKyAgdW5zaWduZWQgaW50IG9wOworICB1bnNpZ25lZCBpbnQgdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGZhbWlseTsKLSB1bmlvbiBpcF9zZXRfbmFtZV9pbmRleCBzZXQ7CisgIHVuc2lnbmVkIGludCBmYW1pbHk7CisgIHVuaW9uIGlwX3NldF9uYW1lX2luZGV4IHNldDsKIH07CiAjZGVmaW5lIElQX1NFVF9PUF9WRVJTSU9OIDB4MDAwMDAxMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXBfc2V0X3JlcV92ZXJzaW9uIHsKLSB1bnNpZ25lZCBpbnQgb3A7Ci0gdW5zaWduZWQgaW50IHZlcnNpb247CisgIHVuc2lnbmVkIGludCBvcDsKKyAgdW5zaWduZWQgaW50IHZlcnNpb247CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2JpdG1hcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2JpdG1hcC5oCmluZGV4IDAzYTM5MmYuLmVkY2FlNGMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldF9iaXRtYXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9pcHNldC9pcF9zZXRfYml0bWFwLmgKQEAgLTE5LDggKzE5LDggQEAKICNpZm5kZWYgX1VBUElfX0lQX1NFVF9CSVRNQVBfSAogI2RlZmluZSBfVUFQSV9fSVBfU0VUX0JJVE1BUF9ICiBlbnVtIHsKLSBJUFNFVF9FUlJfQklUTUFQX1JBTkdFID0gSVBTRVRfRVJSX1RZUEVfU1BFQ0lGSUMsCisgIElQU0VUX0VSUl9CSVRNQVBfUkFOR0UgPSBJUFNFVF9FUlJfVFlQRV9TUEVDSUZJQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRVJSX0JJVE1BUF9SQU5HRV9TSVpFLAorICBJUFNFVF9FUlJfQklUTUFQX1JBTkdFX1NJWkUsCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9pcHNldC9pcF9zZXRfaGFzaC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2hhc2guaAppbmRleCAzNGE0NmY5Li5kZDc2NWZjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9pcHNldC9pcF9zZXRfaGFzaC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldF9oYXNoLmgKQEAgLTE5LDEzICsxOSwxMyBAQAogI2lmbmRlZiBfVUFQSV9fSVBfU0VUX0hBU0hfSAogI2RlZmluZSBfVUFQSV9fSVBfU0VUX0hBU0hfSAogZW51bSB7Ci0gSVBTRVRfRVJSX0hBU0hfRlVMTCA9IElQU0VUX0VSUl9UWVBFX1NQRUNJRklDLAorICBJUFNFVF9FUlJfSEFTSF9GVUxMID0gSVBTRVRfRVJSX1RZUEVfU1BFQ0lGSUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0VSUl9IQVNIX0VMRU0sCi0gSVBTRVRfRVJSX0lOVkFMSURfUFJPVE8sCi0gSVBTRVRfRVJSX01JU1NJTkdfUFJPVE8sCi0gSVBTRVRfRVJSX0hBU0hfUkFOR0VfVU5TVVBQT1JURUQsCisgIElQU0VUX0VSUl9IQVNIX0VMRU0sCisgIElQU0VUX0VSUl9JTlZBTElEX1BST1RPLAorICBJUFNFVF9FUlJfTUlTU0lOR19QUk9UTywKKyAgSVBTRVRfRVJSX0hBU0hfUkFOR0VfVU5TVVBQT1JURUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU0VUX0VSUl9IQVNIX1JBTkdFLAorICBJUFNFVF9FUlJfSEFTSF9SQU5HRSwKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldF9saXN0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9pcHNldC9pcF9zZXRfbGlzdC5oCmluZGV4IDgzYTI2ZDAuLjYyMzU3NGMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL2lwc2V0L2lwX3NldF9saXN0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2xpc3QuaApAQCAtMTksMTMgKzE5LDEzIEBACiAjaWZuZGVmIF9VQVBJX19JUF9TRVRfTElTVF9ICiAjZGVmaW5lIF9VQVBJX19JUF9TRVRfTElTVF9ICiBlbnVtIHsKLSBJUFNFVF9FUlJfTkFNRSA9IElQU0VUX0VSUl9UWVBFX1NQRUNJRklDLAorICBJUFNFVF9FUlJfTkFNRSA9IElQU0VUX0VSUl9UWVBFX1NQRUNJRklDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNFVF9FUlJfTE9PUCwKLSBJUFNFVF9FUlJfQkVGT1JFLAotIElQU0VUX0VSUl9OQU1FUkVGLAotIElQU0VUX0VSUl9MSVNUX0ZVTEwsCisgIElQU0VUX0VSUl9MT09QLAorICBJUFNFVF9FUlJfQkVGT1JFLAorICBJUFNFVF9FUlJfTkFNRVJFRiwKKyAgSVBTRVRfRVJSX0xJU1RfRlVMTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTRVRfRVJSX1JFRl9FWElTVCwKKyAgSVBTRVRfRVJSX1JFRl9FWElTVCwKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19jb21tb24uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19jb21tb24uaAppbmRleCAwNWUyZDFmLi41N2NiYjkwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfY29tbW9uLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX2NvbW1vbi5oCkBAIC0xOSwxNiArMTksMTYgQEAKICNpZm5kZWYgX1VBUElfTkZfQ09OTlRSQUNLX0NPTU1PTl9ICiAjZGVmaW5lIF9VQVBJX05GX0NPTk5UUkFDS19DT01NT05fSAogZW51bSBpcF9jb25udHJhY2tfaW5mbyB7Ci0gSVBfQ1RfRVNUQUJMSVNIRUQsCisgIElQX0NUX0VTVEFCTElTSEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUF9DVF9SRUxBVEVELAotIElQX0NUX05FVywKLSBJUF9DVF9JU19SRVBMWSwKLSBJUF9DVF9FU1RBQkxJU0hFRF9SRVBMWSA9IElQX0NUX0VTVEFCTElTSEVEICsgSVBfQ1RfSVNfUkVQTFksCisgIElQX0NUX1JFTEFURUQsCisgIElQX0NUX05FVywKKyAgSVBfQ1RfSVNfUkVQTFksCisgIElQX0NUX0VTVEFCTElTSEVEX1JFUExZID0gSVBfQ1RfRVNUQUJMSVNIRUQgKyBJUF9DVF9JU19SRVBMWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBfQ1RfUkVMQVRFRF9SRVBMWSA9IElQX0NUX1JFTEFURUQgKyBJUF9DVF9JU19SRVBMWSwKLSBJUF9DVF9ORVdfUkVQTFkgPSBJUF9DVF9ORVcgKyBJUF9DVF9JU19SRVBMWSwKLSBJUF9DVF9OVU1CRVIgPSBJUF9DVF9JU19SRVBMWSAqIDIgLSAxCisgIElQX0NUX1JFTEFURURfUkVQTFkgPSBJUF9DVF9SRUxBVEVEICsgSVBfQ1RfSVNfUkVQTFksCisgIElQX0NUX05FV19SRVBMWSA9IElQX0NUX05FVyArIElQX0NUX0lTX1JFUExZLAorICBJUF9DVF9OVU1CRVIgPSBJUF9DVF9JU19SRVBMWSAqIDIgLSAxCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZfQ1RfU1RBVEVfSU5WQUxJRF9CSVQgKDEgPDwgMCkKQEAgLTM2LDY1ICszNiw2NSBAQAogI2RlZmluZSBORl9DVF9TVEFURV9VTlRSQUNLRURfQklUICgxIDw8IChJUF9DVF9OVU1CRVIgKyAxKSkKIGVudW0gaXBfY29ubnRyYWNrX3N0YXR1cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU19FWFBFQ1RFRF9CSVQgPSAwLAotIElQU19FWFBFQ1RFRCA9ICgxIDw8IElQU19FWFBFQ1RFRF9CSVQpLAotIElQU19TRUVOX1JFUExZX0JJVCA9IDEsCi0gSVBTX1NFRU5fUkVQTFkgPSAoMSA8PCBJUFNfU0VFTl9SRVBMWV9CSVQpLAorICBJUFNfRVhQRUNURURfQklUID0gMCwKKyAgSVBTX0VYUEVDVEVEID0gKDEgPDwgSVBTX0VYUEVDVEVEX0JJVCksCisgIElQU19TRUVOX1JFUExZX0JJVCA9IDEsCisgIElQU19TRUVOX1JFUExZID0gKDEgPDwgSVBTX1NFRU5fUkVQTFlfQklUKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTX0FTU1VSRURfQklUID0gMiwKLSBJUFNfQVNTVVJFRCA9ICgxIDw8IElQU19BU1NVUkVEX0JJVCksCi0gSVBTX0NPTkZJUk1FRF9CSVQgPSAzLAotIElQU19DT05GSVJNRUQgPSAoMSA8PCBJUFNfQ09ORklSTUVEX0JJVCksCisgIElQU19BU1NVUkVEX0JJVCA9IDIsCisgIElQU19BU1NVUkVEID0gKDEgPDwgSVBTX0FTU1VSRURfQklUKSwKKyAgSVBTX0NPTkZJUk1FRF9CSVQgPSAzLAorICBJUFNfQ09ORklSTUVEID0gKDEgPDwgSVBTX0NPTkZJUk1FRF9CSVQpLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNfU1JDX05BVF9CSVQgPSA0LAotIElQU19TUkNfTkFUID0gKDEgPDwgSVBTX1NSQ19OQVRfQklUKSwKLSBJUFNfRFNUX05BVF9CSVQgPSA1LAotIElQU19EU1RfTkFUID0gKDEgPDwgSVBTX0RTVF9OQVRfQklUKSwKKyAgSVBTX1NSQ19OQVRfQklUID0gNCwKKyAgSVBTX1NSQ19OQVQgPSAoMSA8PCBJUFNfU1JDX05BVF9CSVQpLAorICBJUFNfRFNUX05BVF9CSVQgPSA1LAorICBJUFNfRFNUX05BVCA9ICgxIDw8IElQU19EU1RfTkFUX0JJVCksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU19OQVRfTUFTSyA9IChJUFNfRFNUX05BVCB8IElQU19TUkNfTkFUKSwKLSBJUFNfU0VRX0FESlVTVF9CSVQgPSA2LAotIElQU19TRVFfQURKVVNUID0gKDEgPDwgSVBTX1NFUV9BREpVU1RfQklUKSwKLSBJUFNfU1JDX05BVF9ET05FX0JJVCA9IDcsCisgIElQU19OQVRfTUFTSyA9IChJUFNfRFNUX05BVCB8IElQU19TUkNfTkFUKSwKKyAgSVBTX1NFUV9BREpVU1RfQklUID0gNiwKKyAgSVBTX1NFUV9BREpVU1QgPSAoMSA8PCBJUFNfU0VRX0FESlVTVF9CSVQpLAorICBJUFNfU1JDX05BVF9ET05FX0JJVCA9IDcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU19TUkNfTkFUX0RPTkUgPSAoMSA8PCBJUFNfU1JDX05BVF9ET05FX0JJVCksCi0gSVBTX0RTVF9OQVRfRE9ORV9CSVQgPSA4LAotIElQU19EU1RfTkFUX0RPTkUgPSAoMSA8PCBJUFNfRFNUX05BVF9ET05FX0JJVCksCi0gSVBTX05BVF9ET05FX01BU0sgPSAoSVBTX0RTVF9OQVRfRE9ORSB8IElQU19TUkNfTkFUX0RPTkUpLAorICBJUFNfU1JDX05BVF9ET05FID0gKDEgPDwgSVBTX1NSQ19OQVRfRE9ORV9CSVQpLAorICBJUFNfRFNUX05BVF9ET05FX0JJVCA9IDgsCisgIElQU19EU1RfTkFUX0RPTkUgPSAoMSA8PCBJUFNfRFNUX05BVF9ET05FX0JJVCksCisgIElQU19OQVRfRE9ORV9NQVNLID0gKElQU19EU1RfTkFUX0RPTkUgfCBJUFNfU1JDX05BVF9ET05FKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTX0RZSU5HX0JJVCA9IDksCi0gSVBTX0RZSU5HID0gKDEgPDwgSVBTX0RZSU5HX0JJVCksCi0gSVBTX0ZJWEVEX1RJTUVPVVRfQklUID0gMTAsCi0gSVBTX0ZJWEVEX1RJTUVPVVQgPSAoMSA8PCBJUFNfRklYRURfVElNRU9VVF9CSVQpLAorICBJUFNfRFlJTkdfQklUID0gOSwKKyAgSVBTX0RZSU5HID0gKDEgPDwgSVBTX0RZSU5HX0JJVCksCisgIElQU19GSVhFRF9USU1FT1VUX0JJVCA9IDEwLAorICBJUFNfRklYRURfVElNRU9VVCA9ICgxIDw8IElQU19GSVhFRF9USU1FT1VUX0JJVCksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU19URU1QTEFURV9CSVQgPSAxMSwKLSBJUFNfVEVNUExBVEUgPSAoMSA8PCBJUFNfVEVNUExBVEVfQklUKSwKLSBJUFNfVU5UUkFDS0VEX0JJVCA9IDEyLAotIElQU19VTlRSQUNLRUQgPSAoMSA8PCBJUFNfVU5UUkFDS0VEX0JJVCksCisgIElQU19URU1QTEFURV9CSVQgPSAxMSwKKyAgSVBTX1RFTVBMQVRFID0gKDEgPDwgSVBTX1RFTVBMQVRFX0JJVCksCisgIElQU19VTlRSQUNLRURfQklUID0gMTIsCisgIElQU19VTlRSQUNLRUQgPSAoMSA8PCBJUFNfVU5UUkFDS0VEX0JJVCksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU19IRUxQRVJfQklUID0gMTMsCi0gSVBTX0hFTFBFUiA9ICgxIDw8IElQU19IRUxQRVJfQklUKSwKKyAgSVBTX0hFTFBFUl9CSVQgPSAxMywKKyAgSVBTX0hFTFBFUiA9ICgxIDw8IElQU19IRUxQRVJfQklUKSwKIH07CiBlbnVtIGlwX2Nvbm50cmFja19ldmVudHMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUENUX05FVywKLSBJUENUX1JFTEFURUQsCi0gSVBDVF9ERVNUUk9ZLAotIElQQ1RfUkVQTFksCisgIElQQ1RfTkVXLAorICBJUENUX1JFTEFURUQsCisgIElQQ1RfREVTVFJPWSwKKyAgSVBDVF9SRVBMWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBDVF9BU1NVUkVELAotIElQQ1RfUFJPVE9JTkZPLAotIElQQ1RfSEVMUEVSLAotIElQQ1RfTUFSSywKKyAgSVBDVF9BU1NVUkVELAorICBJUENUX1BST1RPSU5GTywKKyAgSVBDVF9IRUxQRVIsCisgIElQQ1RfTUFSSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBDVF9TRVFBREosCi0gSVBDVF9OQVRTRVFBREogPSBJUENUX1NFUUFESiwKLSBJUENUX1NFQ01BUkssCi0gSVBDVF9MQUJFTCwKKyAgSVBDVF9TRVFBREosCisgIElQQ1RfTkFUU0VRQURKID0gSVBDVF9TRVFBREosCisgIElQQ1RfU0VDTUFSSywKKyAgSVBDVF9MQUJFTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBpcF9jb25udHJhY2tfZXhwZWN0X2V2ZW50cyB7Ci0gSVBFWFBfTkVXLAotIElQRVhQX0RFU1RST1ksCisgIElQRVhQX05FVywKKyAgSVBFWFBfREVTVFJPWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBORl9DVF9FWFBFQ1RfUEVSTUFORU5UIDB4MQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX2Z0cC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX2Z0cC5oCmluZGV4IDFmMGUzYzAuLjIzOTU1ZDMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19mdHAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfZnRwLmgKQEAgLTE5LDExICsxOSwxMSBAQAogI2lmbmRlZiBfVUFQSV9ORl9DT05OVFJBQ0tfRlRQX0gKICNkZWZpbmUgX1VBUElfTkZfQ09OTlRSQUNLX0ZUUF9ICiBlbnVtIG5mX2N0X2Z0cF90eXBlIHsKLSBORl9DVF9GVFBfUE9SVCwKKyAgTkZfQ1RfRlRQX1BPUlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GX0NUX0ZUUF9QQVNWLAotIE5GX0NUX0ZUUF9FUFJULAotIE5GX0NUX0ZUUF9FUFNWLAorICBORl9DVF9GVFBfUEFTViwKKyAgTkZfQ1RfRlRQX0VQUlQsCisgIE5GX0NUX0ZUUF9FUFNWLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19zY3RwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfc2N0cC5oCmluZGV4IDM3YzRlNjkuLmYzMGM1OGUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19zY3RwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3NjdHAuaApAQCAtMjEsMjEgKzIxLDIxIEBACiAjaW5jbHVkZSA8bGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja190dXBsZV9jb21tb24uaD4KIGVudW0gc2N0cF9jb25udHJhY2sgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTQ1RQX0NPTk5UUkFDS19OT05FLAotIFNDVFBfQ09OTlRSQUNLX0NMT1NFRCwKLSBTQ1RQX0NPTk5UUkFDS19DT09LSUVfV0FJVCwKLSBTQ1RQX0NPTk5UUkFDS19DT09LSUVfRUNIT0VELAorICBTQ1RQX0NPTk5UUkFDS19OT05FLAorICBTQ1RQX0NPTk5UUkFDS19DTE9TRUQsCisgIFNDVFBfQ09OTlRSQUNLX0NPT0tJRV9XQUlULAorICBTQ1RQX0NPTk5UUkFDS19DT09LSUVfRUNIT0VELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTQ1RQX0NPTk5UUkFDS19FU1RBQkxJU0hFRCwKLSBTQ1RQX0NPTk5UUkFDS19TSFVURE9XTl9TRU5ULAotIFNDVFBfQ09OTlRSQUNLX1NIVVRET1dOX1JFQ0QsCi0gU0NUUF9DT05OVFJBQ0tfU0hVVERPV05fQUNLX1NFTlQsCisgIFNDVFBfQ09OTlRSQUNLX0VTVEFCTElTSEVELAorICBTQ1RQX0NPTk5UUkFDS19TSFVURE9XTl9TRU5ULAorICBTQ1RQX0NPTk5UUkFDS19TSFVURE9XTl9SRUNELAorICBTQ1RQX0NPTk5UUkFDS19TSFVURE9XTl9BQ0tfU0VOVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9DT05OVFJBQ0tfTUFYCisgIFNDVFBfQ09OTlRSQUNLX01BWAogfTsKIHN0cnVjdCBpcF9jdF9zY3RwIHsKLSBlbnVtIHNjdHBfY29ubnRyYWNrIHN0YXRlOworICBlbnVtIHNjdHBfY29ubnRyYWNrIHN0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgdnRhZ1tJUF9DVF9ESVJfTUFYXTsKKyAgX19iZTMyIHZ0YWdbSVBfQ1RfRElSX01BWF07CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfdGNwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfdGNwLmgKaW5kZXggM2Q3OWViMy4uMWFmMDBkMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3RjcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja190Y3AuaApAQCAtMjEsMjUgKzIxLDI1IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0gdGNwX2Nvbm50cmFjayB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDUF9DT05OVFJBQ0tfTk9ORSwKLSBUQ1BfQ09OTlRSQUNLX1NZTl9TRU5ULAotIFRDUF9DT05OVFJBQ0tfU1lOX1JFQ1YsCi0gVENQX0NPTk5UUkFDS19FU1RBQkxJU0hFRCwKKyAgVENQX0NPTk5UUkFDS19OT05FLAorICBUQ1BfQ09OTlRSQUNLX1NZTl9TRU5ULAorICBUQ1BfQ09OTlRSQUNLX1NZTl9SRUNWLAorICBUQ1BfQ09OTlRSQUNLX0VTVEFCTElTSEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ1BfQ09OTlRSQUNLX0ZJTl9XQUlULAotIFRDUF9DT05OVFJBQ0tfQ0xPU0VfV0FJVCwKLSBUQ1BfQ09OTlRSQUNLX0xBU1RfQUNLLAotIFRDUF9DT05OVFJBQ0tfVElNRV9XQUlULAorICBUQ1BfQ09OTlRSQUNLX0ZJTl9XQUlULAorICBUQ1BfQ09OTlRSQUNLX0NMT1NFX1dBSVQsCisgIFRDUF9DT05OVFJBQ0tfTEFTVF9BQ0ssCisgIFRDUF9DT05OVFJBQ0tfVElNRV9XQUlULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ1BfQ09OTlRSQUNLX0NMT1NFLAotIFRDUF9DT05OVFJBQ0tfTElTVEVOLAorICBUQ1BfQ09OTlRSQUNLX0NMT1NFLAorICBUQ1BfQ09OTlRSQUNLX0xJU1RFTiwKICNkZWZpbmUgVENQX0NPTk5UUkFDS19TWU5fU0VOVDIgVENQX0NPTk5UUkFDS19MSVNURU4KLSBUQ1BfQ09OTlRSQUNLX01BWCwKKyAgVENQX0NPTk5UUkFDS19NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDUF9DT05OVFJBQ0tfSUdOT1JFLAotIFRDUF9DT05OVFJBQ0tfUkVUUkFOUywKLSBUQ1BfQ09OTlRSQUNLX1VOQUNLLAotIFRDUF9DT05OVFJBQ0tfVElNRU9VVF9NQVgKKyAgVENQX0NPTk5UUkFDS19JR05PUkUsCisgIFRDUF9DT05OVFJBQ0tfUkVUUkFOUywKKyAgVENQX0NPTk5UUkFDS19VTkFDSywKKyAgVENQX0NPTk5UUkFDS19USU1FT1VUX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIElQX0NUX1RDUF9GTEFHX1dJTkRPV19TQ0FMRSAweDAxCkBAIC01MSw4ICs1MSw4IEBACiAjZGVmaW5lIElQX0NUX1RDUF9GTEFHX01BWEFDS19TRVQgMHgyMAogc3RydWN0IG5mX2N0X3RjcF9mbGFncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmxhZ3M7Ci0gX191OCBtYXNrOworICBfX3U4IGZsYWdzOworICBfX3U4IG1hc2s7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3R1cGxlX2NvbW1vbi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3R1cGxlX2NvbW1vbi5oCmluZGV4IDlmNjUxNWUuLjg1NjZlODYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX2Nvbm50cmFja190dXBsZV9jb21tb24uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfdHVwbGVfY29tbW9uLmgKQEAgLTE5LDM2ICsxOSwzNiBAQAogI2lmbmRlZiBfTkZfQ09OTlRSQUNLX1RVUExFX0NPTU1PTl9ICiAjZGVmaW5lIF9ORl9DT05OVFJBQ0tfVFVQTEVfQ09NTU9OX0gKIGVudW0gaXBfY29ubnRyYWNrX2RpciB7Ci0gSVBfQ1RfRElSX09SSUdJTkFMLAorICBJUF9DVF9ESVJfT1JJR0lOQUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQX0NUX0RJUl9SRVBMWSwKLSBJUF9DVF9ESVJfTUFYCisgIElQX0NUX0RJUl9SRVBMWSwKKyAgSVBfQ1RfRElSX01BWAogfTsKIHVuaW9uIG5mX2Nvbm50cmFja19tYW5fcHJvdG8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgYWxsOwotIHN0cnVjdCB7Ci0gX19iZTE2IHBvcnQ7Ci0gfSB0Y3A7CisgIF9fYmUxNiBhbGw7CisgIHN0cnVjdCB7CisgICAgX19iZTE2IHBvcnQ7CisgIH0gdGNwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fYmUxNiBwb3J0OwotIH0gdWRwOwotIHN0cnVjdCB7CisgIHN0cnVjdCB7CisgICAgX19iZTE2IHBvcnQ7CisgIH0gdWRwOworICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgaWQ7Ci0gfSBpY21wOwotIHN0cnVjdCB7Ci0gX19iZTE2IHBvcnQ7CisgICAgX19iZTE2IGlkOworICB9IGljbXA7CisgIHN0cnVjdCB7CisgICAgX19iZTE2IHBvcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZGNjcDsKLSBzdHJ1Y3QgewotIF9fYmUxNiBwb3J0OwotIH0gc2N0cDsKKyAgfSBkY2NwOworICBzdHJ1Y3QgeworICAgIF9fYmUxNiBwb3J0OworICB9IHNjdHA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX19iZTE2IGtleTsKLSB9IGdyZTsKKyAgc3RydWN0IHsKKyAgICBfX2JlMTYga2V5OworICB9IGdyZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVElORk8yRElSKGN0aW5mbykgKChjdGluZm8pID49IElQX0NUX0lTX1JFUExZID8gSVBfQ1RfRElSX1JFUExZIDogSVBfQ1RfRElSX09SSUdJTkFMKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfbmF0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9uYXQuaAppbmRleCBiMzk5ODg4Li42YzExMTgzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9uYXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl9uYXQuaApAQCAtMjcsMjggKzI3LDI5IEBACiAjZGVmaW5lIE5GX05BVF9SQU5HRV9QRVJTSVNURU5UICgxIDw8IDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORl9OQVRfUkFOR0VfUFJPVE9fUkFORE9NX0ZVTExZICgxIDw8IDQpCi0jZGVmaW5lIE5GX05BVF9SQU5HRV9QUk9UT19SQU5ET01fQUxMICAgKE5GX05BVF9SQU5HRV9QUk9UT19SQU5ET00gfCBORl9OQVRfUkFOR0VfUFJPVE9fUkFORE9NX0ZVTExZKQorI2RlZmluZSBORl9OQVRfUkFOR0VfUFJPVE9fUkFORE9NX0FMTCAoTkZfTkFUX1JBTkdFX1BST1RPX1JBTkRPTSB8IE5GX05BVF9SQU5HRV9QUk9UT19SQU5ET01fRlVMTFkpCisjZGVmaW5lIE5GX05BVF9SQU5HRV9NQVNLIChORl9OQVRfUkFOR0VfTUFQX0lQUyB8IE5GX05BVF9SQU5HRV9QUk9UT19TUEVDSUZJRUQgfCBORl9OQVRfUkFOR0VfUFJPVE9fUkFORE9NIHwgTkZfTkFUX1JBTkdFX1BFUlNJU1RFTlQgfCBORl9OQVRfUkFOR0VfUFJPVE9fUkFORE9NX0ZVTExZKQogc3RydWN0IG5mX25hdF9pcHY0X3JhbmdlIHsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBtaW5faXA7Ci0gX19iZTMyIG1heF9pcDsKLSB1bmlvbiBuZl9jb25udHJhY2tfbWFuX3Byb3RvIG1pbjsKLSB1bmlvbiBuZl9jb25udHJhY2tfbWFuX3Byb3RvIG1heDsKKyAgdW5zaWduZWQgaW50IGZsYWdzOworICBfX2JlMzIgbWluX2lwOworICBfX2JlMzIgbWF4X2lwOworICB1bmlvbiBuZl9jb25udHJhY2tfbWFuX3Byb3RvIG1pbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuaW9uIG5mX2Nvbm50cmFja19tYW5fcHJvdG8gbWF4OwogfTsKIHN0cnVjdCBuZl9uYXRfaXB2NF9tdWx0aV9yYW5nZV9jb21wYXQgewotIHVuc2lnbmVkIGludCByYW5nZXNpemU7Ci0gc3RydWN0IG5mX25hdF9pcHY0X3JhbmdlIHJhbmdlWzFdOworICB1bnNpZ25lZCBpbnQgcmFuZ2VzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IG5mX25hdF9pcHY0X3JhbmdlIHJhbmdlWzFdOwogfTsKIHN0cnVjdCBuZl9uYXRfcmFuZ2UgewotIHVuc2lnbmVkIGludCBmbGFnczsKLSB1bmlvbiBuZl9pbmV0X2FkZHIgbWluX2FkZHI7CisgIHVuc2lnbmVkIGludCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gbmZfaW5ldF9hZGRyIG1heF9hZGRyOwotIHVuaW9uIG5mX2Nvbm50cmFja19tYW5fcHJvdG8gbWluX3Byb3RvOwotIHVuaW9uIG5mX2Nvbm50cmFja19tYW5fcHJvdG8gbWF4X3Byb3RvOworICB1bmlvbiBuZl9pbmV0X2FkZHIgbWluX2FkZHI7CisgIHVuaW9uIG5mX2luZXRfYWRkciBtYXhfYWRkcjsKKyAgdW5pb24gbmZfY29ubnRyYWNrX21hbl9wcm90byBtaW5fcHJvdG87CisgIHVuaW9uIG5mX2Nvbm50cmFja19tYW5fcHJvdG8gbWF4X3Byb3RvOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl90YWJsZXMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX3RhYmxlcy5oCmluZGV4IDM0NjMyZGQuLjU4OTg0YWYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX3RhYmxlcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX3RhYmxlcy5oCkBAIC0xOSwzOTkgKzE5LDQzNCBAQAogI2lmbmRlZiBfTElOVVhfTkZfVEFCTEVTX0gKICNkZWZpbmUgX0xJTlVYX05GX1RBQkxFU19ICiAjZGVmaW5lIE5GVF9DSEFJTl9NQVhOQU1FTEVOIDMyCisjZGVmaW5lIE5GVF9VU0VSREFUQV9NQVhMRU4gMjU2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfcmVnaXN0ZXJzIHsKKyAgTkZUX1JFR19WRVJESUNULAorICBORlRfUkVHXzEsCisgIE5GVF9SRUdfMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUX1JFR19WRVJESUNULAotIE5GVF9SRUdfMSwKLSBORlRfUkVHXzIsCi0gTkZUX1JFR18zLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRfUkVHXzQsCi0gX19ORlRfUkVHX01BWAorICBORlRfUkVHXzMsCisgIE5GVF9SRUdfNCwKKyAgX19ORlRfUkVHX01BWAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GVF9SRUdfTUFYIChfX05GVF9SRUdfTUFYIC0gMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF92ZXJkaWN0cyB7Ci0gTkZUX0NPTlRJTlVFID0gLTEsCi0gTkZUX0JSRUFLID0gLTIsCi0gTkZUX0pVTVAgPSAtMywKKyAgTkZUX0NPTlRJTlVFID0gLSAxLAorICBORlRfQlJFQUsgPSAtIDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9HT1RPID0gLTQsCi0gTkZUX1JFVFVSTiA9IC01LAorICBORlRfSlVNUCA9IC0gMywKKyAgTkZUX0dPVE8gPSAtIDQsCisgIE5GVF9SRVRVUk4gPSAtIDUsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZfdGFibGVzX21zZ190eXBlcyB7CisgIE5GVF9NU0dfTkVXVEFCTEUsCisgIE5GVF9NU0dfR0VUVEFCTEUsCisgIE5GVF9NU0dfREVMVEFCTEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9NU0dfTkVXVEFCTEUsCi0gTkZUX01TR19HRVRUQUJMRSwKLSBORlRfTVNHX0RFTFRBQkxFLAotIE5GVF9NU0dfTkVXQ0hBSU4sCisgIE5GVF9NU0dfTkVXQ0hBSU4sCisgIE5GVF9NU0dfR0VUQ0hBSU4sCisgIE5GVF9NU0dfREVMQ0hBSU4sCisgIE5GVF9NU0dfTkVXUlVMRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUX01TR19HRVRDSEFJTiwKLSBORlRfTVNHX0RFTENIQUlOLAotIE5GVF9NU0dfTkVXUlVMRSwKLSBORlRfTVNHX0dFVFJVTEUsCisgIE5GVF9NU0dfR0VUUlVMRSwKKyAgTkZUX01TR19ERUxSVUxFLAorICBORlRfTVNHX05FV1NFVCwKKyAgTkZUX01TR19HRVRTRVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9NU0dfREVMUlVMRSwKLSBORlRfTVNHX05FV1NFVCwKLSBORlRfTVNHX0dFVFNFVCwKLSBORlRfTVNHX0RFTFNFVCwKKyAgTkZUX01TR19ERUxTRVQsCisgIE5GVF9NU0dfTkVXU0VURUxFTSwKKyAgTkZUX01TR19HRVRTRVRFTEVNLAorICBORlRfTVNHX0RFTFNFVEVMRU0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9NU0dfTkVXU0VURUxFTSwKLSBORlRfTVNHX0dFVFNFVEVMRU0sCi0gTkZUX01TR19ERUxTRVRFTEVNLAotIE5GVF9NU0dfTUFYLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkZUX01TR19ORVdHRU4sCisgIE5GVF9NU0dfR0VUR0VOLAorICBORlRfTVNHX01BWCwKIH07Ci1lbnVtIG5mdF9saXN0X2F0dHJpYnV0ZXMgewotIE5GVEFfTElTVF9VTlBFQywKLSBORlRBX0xJU1RfRUxFTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19ORlRBX0xJU1RfTUFYCitlbnVtIG5mdF9saXN0X2F0dHJpYnV0ZXMgeworICBORlRBX0xJU1RfVU5QRUMsCisgIE5GVEFfTElTVF9FTEVNLAorICBfX05GVEFfTElTVF9NQVgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBORlRBX0xJU1RfTUFYIChfX05GVEFfTElTVF9NQVggLSAxKQogZW51bSBuZnRfaG9va19hdHRyaWJ1dGVzIHsKKyAgTkZUQV9IT09LX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9IT09LX1VOU1BFQywKLSBORlRBX0hPT0tfSE9PS05VTSwKLSBORlRBX0hPT0tfUFJJT1JJVFksCi0gX19ORlRBX0hPT0tfTUFYCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRBX0hPT0tfSE9PS05VTSwKKyAgTkZUQV9IT09LX1BSSU9SSVRZLAorICBfX05GVEFfSE9PS19NQVgKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlRBX0hPT0tfTUFYIChfX05GVEFfSE9PS19NQVggLSAxKQogZW51bSBuZnRfdGFibGVfZmxhZ3MgewotIE5GVF9UQUJMRV9GX0RPUk1BTlQgPSAweDEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRfVEFCTEVfRl9ET1JNQU5UID0gMHgxLAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF90YWJsZV9hdHRyaWJ1dGVzIHsKLSBORlRBX1RBQkxFX1VOU1BFQywKLSBORlRBX1RBQkxFX05BTUUsCisgIE5GVEFfVEFCTEVfVU5TUEVDLAorICBORlRBX1RBQkxFX05BTUUsCisgIE5GVEFfVEFCTEVfRkxBR1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfVEFCTEVfRkxBR1MsCi0gTkZUQV9UQUJMRV9VU0UsCi0gX19ORlRBX1RBQkxFX01BWAorICBORlRBX1RBQkxFX1VTRSwKKyAgX19ORlRBX1RBQkxFX01BWAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GVEFfVEFCTEVfTUFYIChfX05GVEFfVEFCTEVfTUFYIC0gMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF9jaGFpbl9hdHRyaWJ1dGVzIHsKLSBORlRBX0NIQUlOX1VOU1BFQywKLSBORlRBX0NIQUlOX1RBQkxFLAorICBORlRBX0NIQUlOX1VOU1BFQywKKyAgTkZUQV9DSEFJTl9UQUJMRSwKKyAgTkZUQV9DSEFJTl9IQU5ETEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfQ0hBSU5fSEFORExFLAotIE5GVEFfQ0hBSU5fTkFNRSwKLSBORlRBX0NIQUlOX0hPT0ssCi0gTkZUQV9DSEFJTl9QT0xJQ1ksCisgIE5GVEFfQ0hBSU5fTkFNRSwKKyAgTkZUQV9DSEFJTl9IT09LLAorICBORlRBX0NIQUlOX1BPTElDWSwKKyAgTkZUQV9DSEFJTl9VU0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfQ0hBSU5fVVNFLAotIE5GVEFfQ0hBSU5fVFlQRSwKLSBORlRBX0NIQUlOX0NPVU5URVJTLAotIF9fTkZUQV9DSEFJTl9NQVgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVEFfQ0hBSU5fVFlQRSwKKyAgTkZUQV9DSEFJTl9DT1VOVEVSUywKKyAgX19ORlRBX0NIQUlOX01BWAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GVEFfQ0hBSU5fTUFYIChfX05GVEFfQ0hBSU5fTUFYIC0gMSkKIGVudW0gbmZ0X3J1bGVfYXR0cmlidXRlcyB7Ci0gTkZUQV9SVUxFX1VOU1BFQywKKyAgTkZUQV9SVUxFX1VOU1BFQywKKyAgTkZUQV9SVUxFX1RBQkxFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX1JVTEVfVEFCTEUsCi0gTkZUQV9SVUxFX0NIQUlOLAotIE5GVEFfUlVMRV9IQU5ETEUsCi0gTkZUQV9SVUxFX0VYUFJFU1NJT05TLAorICBORlRBX1JVTEVfQ0hBSU4sCisgIE5GVEFfUlVMRV9IQU5ETEUsCisgIE5GVEFfUlVMRV9FWFBSRVNTSU9OUywKKyAgTkZUQV9SVUxFX0NPTVBBVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9SVUxFX0NPTVBBVCwKLSBORlRBX1JVTEVfUE9TSVRJT04sCi0gX19ORlRBX1JVTEVfTUFYCisgIE5GVEFfUlVMRV9QT1NJVElPTiwKKyAgTkZUQV9SVUxFX1VTRVJEQVRBLAorICBfX05GVEFfUlVMRV9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlRBX1JVTEVfTUFYIChfX05GVEFfUlVMRV9NQVggLSAxKQogZW51bSBuZnRfcnVsZV9jb21wYXRfZmxhZ3MgewotIE5GVF9SVUxFX0NPTVBBVF9GX0lOViA9ICgxIDw8IDEpLAotIE5GVF9SVUxFX0NPTVBBVF9GX01BU0sgPSBORlRfUlVMRV9DT01QQVRfRl9JTlYsCisgIE5GVF9SVUxFX0NPTVBBVF9GX0lOViA9ICgxIDw8IDEpLAorICBORlRfUlVMRV9DT01QQVRfRl9NQVNLID0gTkZUX1JVTEVfQ09NUEFUX0ZfSU5WLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG5mdF9ydWxlX2NvbXBhdF9hdHRyaWJ1dGVzIHsKLSBORlRBX1JVTEVfQ09NUEFUX1VOU1BFQywKLSBORlRBX1JVTEVfQ09NUEFUX1BST1RPLAorICBORlRBX1JVTEVfQ09NUEFUX1VOU1BFQywKKyAgTkZUQV9SVUxFX0NPTVBBVF9QUk9UTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9SVUxFX0NPTVBBVF9GTEFHUywKLSBfX05GVEFfUlVMRV9DT01QQVRfTUFYCisgIE5GVEFfUlVMRV9DT01QQVRfRkxBR1MsCisgIF9fTkZUQV9SVUxFX0NPTVBBVF9NQVgKIH07CiAjZGVmaW5lIE5GVEFfUlVMRV9DT01QQVRfTUFYIChfX05GVEFfUlVMRV9DT01QQVRfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF9zZXRfZmxhZ3MgewotIE5GVF9TRVRfQU5PTllNT1VTID0gMHgxLAotIE5GVF9TRVRfQ09OU1RBTlQgPSAweDIsCi0gTkZUX1NFVF9JTlRFUlZBTCA9IDB4NCwKKyAgTkZUX1NFVF9BTk9OWU1PVVMgPSAweDEsCisgIE5GVF9TRVRfQ09OU1RBTlQgPSAweDIsCisgIE5GVF9TRVRfSU5URVJWQUwgPSAweDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9TRVRfTUFQID0gMHg4LAorICBORlRfU0VUX01BUCA9IDB4OCwKIH07CitlbnVtIG5mdF9zZXRfcG9saWNpZXMgeworICBORlRfU0VUX1BPTF9QRVJGT1JNQU5DRSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVF9TRVRfUE9MX01FTU9SWSwKK307CitlbnVtIG5mdF9zZXRfZGVzY19hdHRyaWJ1dGVzIHsKKyAgTkZUQV9TRVRfREVTQ19VTlNQRUMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRBX1NFVF9ERVNDX1NJWkUsCisgIF9fTkZUQV9TRVRfREVTQ19NQVgKK307CisjZGVmaW5lIE5GVEFfU0VUX0RFU0NfTUFYIChfX05GVEFfU0VUX0RFU0NfTUFYIC0gMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF9zZXRfYXR0cmlidXRlcyB7Ci0gTkZUQV9TRVRfVU5TUEVDLAorICBORlRBX1NFVF9VTlNQRUMsCisgIE5GVEFfU0VUX1RBQkxFLAorICBORlRBX1NFVF9OQU1FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX1NFVF9UQUJMRSwKLSBORlRBX1NFVF9OQU1FLAotIE5GVEFfU0VUX0ZMQUdTLAotIE5GVEFfU0VUX0tFWV9UWVBFLAorICBORlRBX1NFVF9GTEFHUywKKyAgTkZUQV9TRVRfS0VZX1RZUEUsCisgIE5GVEFfU0VUX0tFWV9MRU4sCisgIE5GVEFfU0VUX0RBVEFfVFlQRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9TRVRfS0VZX0xFTiwKLSBORlRBX1NFVF9EQVRBX1RZUEUsCi0gTkZUQV9TRVRfREFUQV9MRU4sCi0gX19ORlRBX1NFVF9NQVgKKyAgTkZUQV9TRVRfREFUQV9MRU4sCisgIE5GVEFfU0VUX1BPTElDWSwKKyAgTkZUQV9TRVRfREVTQywKKyAgTkZUQV9TRVRfSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX05GVEFfU0VUX01BWAogfTsKICNkZWZpbmUgTkZUQV9TRVRfTUFYIChfX05GVEFfU0VUX01BWCAtIDEpCiBlbnVtIG5mdF9zZXRfZWxlbV9mbGFncyB7Ci0gTkZUX1NFVF9FTEVNX0lOVEVSVkFMX0VORCA9IDB4MSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVF9TRVRfRUxFTV9JTlRFUlZBTF9FTkQgPSAweDEsCiB9OwogZW51bSBuZnRfc2V0X2VsZW1fYXR0cmlidXRlcyB7Ci0gTkZUQV9TRVRfRUxFTV9VTlNQRUMsCi0gTkZUQV9TRVRfRUxFTV9LRVksCisgIE5GVEFfU0VUX0VMRU1fVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX1NFVF9FTEVNX0RBVEEsCi0gTkZUQV9TRVRfRUxFTV9GTEFHUywKLSBfX05GVEFfU0VUX0VMRU1fTUFYCisgIE5GVEFfU0VUX0VMRU1fS0VZLAorICBORlRBX1NFVF9FTEVNX0RBVEEsCisgIE5GVEFfU0VUX0VMRU1fRkxBR1MsCisgIF9fTkZUQV9TRVRfRUxFTV9NQVgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZUQV9TRVRfRUxFTV9NQVggKF9fTkZUQV9TRVRfRUxFTV9NQVggLSAxKQogZW51bSBuZnRfc2V0X2VsZW1fbGlzdF9hdHRyaWJ1dGVzIHsKLSBORlRBX1NFVF9FTEVNX0xJU1RfVU5TUEVDLAotIE5GVEFfU0VUX0VMRU1fTElTVF9UQUJMRSwKKyAgTkZUQV9TRVRfRUxFTV9MSVNUX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9TRVRfRUxFTV9MSVNUX1NFVCwKLSBORlRBX1NFVF9FTEVNX0xJU1RfRUxFTUVOVFMsCi0gX19ORlRBX1NFVF9FTEVNX0xJU1RfTUFYCisgIE5GVEFfU0VUX0VMRU1fTElTVF9UQUJMRSwKKyAgTkZUQV9TRVRfRUxFTV9MSVNUX1NFVCwKKyAgTkZUQV9TRVRfRUxFTV9MSVNUX0VMRU1FTlRTLAorICBORlRBX1NFVF9FTEVNX0xJU1RfU0VUX0lELAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19ORlRBX1NFVF9FTEVNX0xJU1RfTUFYCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZUQV9TRVRfRUxFTV9MSVNUX01BWCAoX19ORlRBX1NFVF9FTEVNX0xJU1RfTUFYIC0gMSkKIGVudW0gbmZ0X2RhdGFfdHlwZXMgewotIE5GVF9EQVRBX1ZBTFVFLAotIE5GVF9EQVRBX1ZFUkRJQ1QgPSAweGZmZmZmZjAwVSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVF9EQVRBX1ZBTFVFLAorICBORlRfREFUQV9WRVJESUNUID0gMHhmZmZmZmYwMFUsCiB9OwogI2RlZmluZSBORlRfREFUQV9SRVNFUlZFRF9NQVNLIDB4ZmZmZmZmMDBVCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfZGF0YV9hdHRyaWJ1dGVzIHsKLSBORlRBX0RBVEFfVU5TUEVDLAorICBORlRBX0RBVEFfVU5TUEVDLAorICBORlRBX0RBVEFfVkFMVUUsCisgIE5GVEFfREFUQV9WRVJESUNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX0RBVEFfVkFMVUUsCi0gTkZUQV9EQVRBX1ZFUkRJQ1QsCi0gX19ORlRBX0RBVEFfTUFYCisgIF9fTkZUQV9EQVRBX01BWAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GVEFfREFUQV9NQVggKF9fTkZUQV9EQVRBX01BWCAtIDEpCiBlbnVtIG5mdF92ZXJkaWN0X2F0dHJpYnV0ZXMgewotIE5GVEFfVkVSRElDVF9VTlNQRUMsCi0gTkZUQV9WRVJESUNUX0NPREUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfVkVSRElDVF9DSEFJTiwKLSBfX05GVEFfVkVSRElDVF9NQVgKKyAgTkZUQV9WRVJESUNUX1VOU1BFQywKKyAgTkZUQV9WRVJESUNUX0NPREUsCisgIE5GVEFfVkVSRElDVF9DSEFJTiwKKyAgX19ORlRBX1ZFUkRJQ1RfTUFYCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTkZUQV9WRVJESUNUX01BWCAoX19ORlRBX1ZFUkRJQ1RfTUFYIC0gMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF9leHByX2F0dHJpYnV0ZXMgewotIE5GVEFfRVhQUl9VTlNQRUMsCi0gTkZUQV9FWFBSX05BTUUsCi0gTkZUQV9FWFBSX0RBVEEsCisgIE5GVEFfRVhQUl9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkZUQV9FWFBSX01BWAorICBORlRBX0VYUFJfTkFNRSwKKyAgTkZUQV9FWFBSX0RBVEEsCisgIF9fTkZUQV9FWFBSX01BWAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GVEFfRVhQUl9NQVggKF9fTkZUQV9FWFBSX01BWCAtIDEpCiBlbnVtIG5mdF9pbW1lZGlhdGVfYXR0cmlidXRlcyB7CisgIE5GVEFfSU1NRURJQVRFX1VOU1BFQywKKyAgTkZUQV9JTU1FRElBVEVfRFJFRywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9JTU1FRElBVEVfVU5TUEVDLAotIE5GVEFfSU1NRURJQVRFX0RSRUcsCi0gTkZUQV9JTU1FRElBVEVfREFUQSwKLSBfX05GVEFfSU1NRURJQVRFX01BWAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkZUQV9JTU1FRElBVEVfREFUQSwKKyAgX19ORlRBX0lNTUVESUFURV9NQVgKIH07CiAjZGVmaW5lIE5GVEFfSU1NRURJQVRFX01BWCAoX19ORlRBX0lNTUVESUFURV9NQVggLSAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZ0X2JpdHdpc2VfYXR0cmlidXRlcyB7Ci0gTkZUQV9CSVRXSVNFX1VOU1BFQywKKyAgTkZUQV9CSVRXSVNFX1VOU1BFQywKKyAgTkZUQV9CSVRXSVNFX1NSRUcsCisgIE5GVEFfQklUV0lTRV9EUkVHLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX0JJVFdJU0VfU1JFRywKLSBORlRBX0JJVFdJU0VfRFJFRywKLSBORlRBX0JJVFdJU0VfTEVOLAotIE5GVEFfQklUV0lTRV9NQVNLLAorICBORlRBX0JJVFdJU0VfTEVOLAorICBORlRBX0JJVFdJU0VfTUFTSywKKyAgTkZUQV9CSVRXSVNFX1hPUiwKKyAgX19ORlRBX0JJVFdJU0VfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfQklUV0lTRV9YT1IsCi0gX19ORlRBX0JJVFdJU0VfTUFYCiB9OwogI2RlZmluZSBORlRBX0JJVFdJU0VfTUFYIChfX05GVEFfQklUV0lTRV9NQVggLSAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZ0X2J5dGVvcmRlcl9vcHMgewotIE5GVF9CWVRFT1JERVJfTlRPSCwKLSBORlRfQllURU9SREVSX0hUT04sCisgIE5GVF9CWVRFT1JERVJfTlRPSCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVF9CWVRFT1JERVJfSFRPTiwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfYnl0ZW9yZGVyX2F0dHJpYnV0ZXMgewotIE5GVEFfQllURU9SREVSX1VOU1BFQywKLSBORlRBX0JZVEVPUkRFUl9TUkVHLAotIE5GVEFfQllURU9SREVSX0RSRUcsCisgIE5GVEFfQllURU9SREVSX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9CWVRFT1JERVJfT1AsCi0gTkZUQV9CWVRFT1JERVJfTEVOLAotIE5GVEFfQllURU9SREVSX1NJWkUsCi0gX19ORlRBX0JZVEVPUkRFUl9NQVgKKyAgTkZUQV9CWVRFT1JERVJfU1JFRywKKyAgTkZUQV9CWVRFT1JERVJfRFJFRywKKyAgTkZUQV9CWVRFT1JERVJfT1AsCisgIE5GVEFfQllURU9SREVSX0xFTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVEFfQllURU9SREVSX1NJWkUsCisgIF9fTkZUQV9CWVRFT1JERVJfTUFYCiB9OwogI2RlZmluZSBORlRBX0JZVEVPUkRFUl9NQVggKF9fTkZUQV9CWVRFT1JERVJfTUFYIC0gMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF9jbXBfb3BzIHsKLSBORlRfQ01QX0VRLAorICBORlRfQ01QX0VRLAorICBORlRfQ01QX05FUSwKKyAgTkZUX0NNUF9MVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUX0NNUF9ORVEsCi0gTkZUX0NNUF9MVCwKLSBORlRfQ01QX0xURSwKLSBORlRfQ01QX0dULAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRfQ01QX0dURSwKKyAgTkZUX0NNUF9MVEUsCisgIE5GVF9DTVBfR1QsCisgIE5GVF9DTVBfR1RFLAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF9jbXBfYXR0cmlidXRlcyB7Ci0gTkZUQV9DTVBfVU5TUEVDLAorICBORlRBX0NNUF9VTlNQRUMsCisgIE5GVEFfQ01QX1NSRUcsCisgIE5GVEFfQ01QX09QLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX0NNUF9TUkVHLAotIE5GVEFfQ01QX09QLAotIE5GVEFfQ01QX0RBVEEsCi0gX19ORlRBX0NNUF9NQVgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVEFfQ01QX0RBVEEsCisgIF9fTkZUQV9DTVBfTUFYCiB9OwogI2RlZmluZSBORlRBX0NNUF9NQVggKF9fTkZUQV9DTVBfTUFYIC0gMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdF9sb29rdXBfYXR0cmlidXRlcyB7Ci0gTkZUQV9MT09LVVBfVU5TUEVDLAorICBORlRBX0xPT0tVUF9VTlNQRUMsCisgIE5GVEFfTE9PS1VQX1NFVCwKKyAgTkZUQV9MT09LVVBfU1JFRywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9MT09LVVBfU0VULAotIE5GVEFfTE9PS1VQX1NSRUcsCi0gTkZUQV9MT09LVVBfRFJFRywKLSBfX05GVEFfTE9PS1VQX01BWAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkZUQV9MT09LVVBfRFJFRywKKyAgTkZUQV9MT09LVVBfU0VUX0lELAorICBfX05GVEFfTE9PS1VQX01BWAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GVEFfTE9PS1VQX01BWCAoX19ORlRBX0xPT0tVUF9NQVggLSAxKQogZW51bSBuZnRfcGF5bG9hZF9iYXNlcyB7Ci0gTkZUX1BBWUxPQURfTExfSEVBREVSLAorICBORlRfUEFZTE9BRF9MTF9IRUFERVIsCisgIE5GVF9QQVlMT0FEX05FVFdPUktfSEVBREVSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRfUEFZTE9BRF9ORVRXT1JLX0hFQURFUiwKLSBORlRfUEFZTE9BRF9UUkFOU1BPUlRfSEVBREVSLAorICBORlRfUEFZTE9BRF9UUkFOU1BPUlRfSEVBREVSLAogfTsKIGVudW0gbmZ0X3BheWxvYWRfYXR0cmlidXRlcyB7CisgIE5GVEFfUEFZTE9BRF9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfUEFZTE9BRF9VTlNQRUMsCi0gTkZUQV9QQVlMT0FEX0RSRUcsCi0gTkZUQV9QQVlMT0FEX0JBU0UsCi0gTkZUQV9QQVlMT0FEX09GRlNFVCwKKyAgTkZUQV9QQVlMT0FEX0RSRUcsCisgIE5GVEFfUEFZTE9BRF9CQVNFLAorICBORlRBX1BBWUxPQURfT0ZGU0VULAorICBORlRBX1BBWUxPQURfTEVOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX1BBWUxPQURfTEVOLAotIF9fTkZUQV9QQVlMT0FEX01BWAorICBfX05GVEFfUEFZTE9BRF9NQVgKIH07CiAjZGVmaW5lIE5GVEFfUEFZTE9BRF9NQVggKF9fTkZUQV9QQVlMT0FEX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfZXh0aGRyX2F0dHJpYnV0ZXMgewotIE5GVEFfRVhUSERSX1VOU1BFQywKLSBORlRBX0VYVEhEUl9EUkVHLAotIE5GVEFfRVhUSERSX1RZUEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfRVhUSERSX09GRlNFVCwKLSBORlRBX0VYVEhEUl9MRU4sCi0gX19ORlRBX0VYVEhEUl9NQVgKKyAgTkZUQV9FWFRIRFJfVU5TUEVDLAorICBORlRBX0VYVEhEUl9EUkVHLAorICBORlRBX0VYVEhEUl9UWVBFLAorICBORlRBX0VYVEhEUl9PRkZTRVQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRBX0VYVEhEUl9MRU4sCisgIF9fTkZUQV9FWFRIRFJfTUFYCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZUQV9FWFRIRFJfTUFYIChfX05GVEFfRVhUSERSX01BWCAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfbWV0YV9rZXlzIHsKLSBORlRfTUVUQV9MRU4sCi0gTkZUX01FVEFfUFJPVE9DT0wsCisgIE5GVF9NRVRBX0xFTiwKKyAgTkZUX01FVEFfUFJPVE9DT0wsCisgIE5GVF9NRVRBX1BSSU9SSVRZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRfTUVUQV9QUklPUklUWSwKLSBORlRfTUVUQV9NQVJLLAotIE5GVF9NRVRBX0lJRiwKLSBORlRfTUVUQV9PSUYsCisgIE5GVF9NRVRBX01BUkssCisgIE5GVF9NRVRBX0lJRiwKKyAgTkZUX01FVEFfT0lGLAorICBORlRfTUVUQV9JSUZOQU1FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRfTUVUQV9JSUZOQU1FLAotIE5GVF9NRVRBX09JRk5BTUUsCi0gTkZUX01FVEFfSUlGVFlQRSwKLSBORlRfTUVUQV9PSUZUWVBFLAorICBORlRfTUVUQV9PSUZOQU1FLAorICBORlRfTUVUQV9JSUZUWVBFLAorICBORlRfTUVUQV9PSUZUWVBFLAorICBORlRfTUVUQV9TS1VJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUX01FVEFfU0tVSUQsCi0gTkZUX01FVEFfU0tHSUQsCi0gTkZUX01FVEFfTkZUUkFDRSwKLSBORlRfTUVUQV9SVENMQVNTSUQsCisgIE5GVF9NRVRBX1NLR0lELAorICBORlRfTUVUQV9ORlRSQUNFLAorICBORlRfTUVUQV9SVENMQVNTSUQsCisgIE5GVF9NRVRBX1NFQ01BUkssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9NRVRBX1NFQ01BUkssCi0gTkZUX01FVEFfTkZQUk9UTywKLSBORlRfTUVUQV9MNFBST1RPLAorICBORlRfTUVUQV9ORlBST1RPLAorICBORlRfTUVUQV9MNFBST1RPLAorICBORlRfTUVUQV9CUklfSUlGTkFNRSwKKyAgTkZUX01FVEFfQlJJX09JRk5BTUUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORlRfTUVUQV9QS1RUWVBFLAorICBORlRfTUVUQV9DUFUsCisgIE5GVF9NRVRBX0lJRkdST1VQLAorICBORlRfTUVUQV9PSUZHUk9VUCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZ0X21ldGFfYXR0cmlidXRlcyB7Ci0gTkZUQV9NRVRBX1VOU1BFQywKLSBORlRBX01FVEFfRFJFRywKLSBORlRBX01FVEFfS0VZLAorICBORlRBX01FVEFfVU5TUEVDLAorICBORlRBX01FVEFfRFJFRywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9NRVRBX1NSRUcsCi0gX19ORlRBX01FVEFfTUFYCisgIE5GVEFfTUVUQV9LRVksCisgIE5GVEFfTUVUQV9TUkVHLAorICBfX05GVEFfTUVUQV9NQVgKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlRBX01FVEFfTUFYIChfX05GVEFfTUVUQV9NQVggLSAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZ0X2N0X2tleXMgewotIE5GVF9DVF9TVEFURSwKLSBORlRfQ1RfRElSRUNUSU9OLAotIE5GVF9DVF9TVEFUVVMsCisgIE5GVF9DVF9TVEFURSwKKyAgTkZUX0NUX0RJUkVDVElPTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUX0NUX01BUkssCi0gTkZUX0NUX1NFQ01BUkssCi0gTkZUX0NUX0VYUElSQVRJT04sCi0gTkZUX0NUX0hFTFBFUiwKKyAgTkZUX0NUX1NUQVRVUywKKyAgTkZUX0NUX01BUkssCisgIE5GVF9DVF9TRUNNQVJLLAorICBORlRfQ1RfRVhQSVJBVElPTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUX0NUX0wzUFJPVE9DT0wsCi0gTkZUX0NUX1NSQywKLSBORlRfQ1RfRFNULAotIE5GVF9DVF9QUk9UT0NPTCwKKyAgTkZUX0NUX0hFTFBFUiwKKyAgTkZUX0NUX0wzUFJPVE9DT0wsCisgIE5GVF9DVF9TUkMsCisgIE5GVF9DVF9EU1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVF9DVF9QUk9UT19TUkMsCi0gTkZUX0NUX1BST1RPX0RTVCwKKyAgTkZUX0NUX1BST1RPQ09MLAorICBORlRfQ1RfUFJPVE9fU1JDLAorICBORlRfQ1RfUFJPVE9fRFNULAorICBORlRfQ1RfTEFCRUxTLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG5mdF9jdF9hdHRyaWJ1dGVzIHsKKyAgTkZUQV9DVF9VTlNQRUMsCisgIE5GVEFfQ1RfRFJFRywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9DVF9VTlNQRUMsCi0gTkZUQV9DVF9EUkVHLAotIE5GVEFfQ1RfS0VZLAotIE5GVEFfQ1RfRElSRUNUSU9OLAorICBORlRBX0NUX0tFWSwKKyAgTkZUQV9DVF9ESVJFQ1RJT04sCisgIE5GVEFfQ1RfU1JFRywKKyAgX19ORlRBX0NUX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX0NUX1NSRUcsCi0gX19ORlRBX0NUX01BWAogfTsKICNkZWZpbmUgTkZUQV9DVF9NQVggKF9fTkZUQV9DVF9NQVggLSAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZ0X2xpbWl0X2F0dHJpYnV0ZXMgewotIE5GVEFfTElNSVRfVU5TUEVDLAotIE5GVEFfTElNSVRfUkFURSwKLSBORlRBX0xJTUlUX1VOSVQsCisgIE5GVEFfTElNSVRfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05GVEFfTElNSVRfTUFYCisgIE5GVEFfTElNSVRfUkFURSwKKyAgTkZUQV9MSU1JVF9VTklULAorICBfX05GVEFfTElNSVRfTUFYCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZUQV9MSU1JVF9NQVggKF9fTkZUQV9MSU1JVF9NQVggLSAxKQogZW51bSBuZnRfY291bnRlcl9hdHRyaWJ1dGVzIHsKKyAgTkZUQV9DT1VOVEVSX1VOU1BFQywKKyAgTkZUQV9DT1VOVEVSX0JZVEVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX0NPVU5URVJfVU5TUEVDLAotIE5GVEFfQ09VTlRFUl9CWVRFUywKLSBORlRBX0NPVU5URVJfUEFDS0VUUywKLSBfX05GVEFfQ09VTlRFUl9NQVgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVEFfQ09VTlRFUl9QQUNLRVRTLAorICBfX05GVEFfQ09VTlRFUl9NQVgKIH07CiAjZGVmaW5lIE5GVEFfQ09VTlRFUl9NQVggKF9fTkZUQV9DT1VOVEVSX01BWCAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnRfbG9nX2F0dHJpYnV0ZXMgewotIE5GVEFfTE9HX1VOU1BFQywKKyAgTkZUQV9MT0dfVU5TUEVDLAorICBORlRBX0xPR19HUk9VUCwKKyAgTkZUQV9MT0dfUFJFRklYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX0xPR19HUk9VUCwKLSBORlRBX0xPR19QUkVGSVgsCi0gTkZUQV9MT0dfU05BUExFTiwKLSBORlRBX0xPR19RVEhSRVNIT0xELAorICBORlRBX0xPR19TTkFQTEVOLAorICBORlRBX0xPR19RVEhSRVNIT0xELAorICBORlRBX0xPR19MRVZFTCwKKyAgTkZUQV9MT0dfRkxBR1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkZUQV9MT0dfTUFYCisgIF9fTkZUQV9MT0dfTUFYCiB9OwogI2RlZmluZSBORlRBX0xPR19NQVggKF9fTkZUQV9MT0dfTUFYIC0gMSkKIGVudW0gbmZ0X3F1ZXVlX2F0dHJpYnV0ZXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX1FVRVVFX1VOU1BFQywKLSBORlRBX1FVRVVFX05VTSwKLSBORlRBX1FVRVVFX1RPVEFMLAotIE5GVEFfUVVFVUVfRkxBR1MsCisgIE5GVEFfUVVFVUVfVU5TUEVDLAorICBORlRBX1FVRVVFX05VTSwKKyAgTkZUQV9RVUVVRV9UT1RBTCwKKyAgTkZUQV9RVUVVRV9GTEFHUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19ORlRBX1FVRVVFX01BWAorICBfX05GVEFfUVVFVUVfTUFYCiB9OwogI2RlZmluZSBORlRBX1FVRVVFX01BWCAoX19ORlRBX1FVRVVFX01BWCAtIDEpCiAjZGVmaW5lIE5GVF9RVUVVRV9GTEFHX0JZUEFTUyAweDAxCkBAIC00MTksMzYgKzQ1NCw2MyBAQAogI2RlZmluZSBORlRfUVVFVUVfRkxBR19DUFVfRkFOT1VUIDB4MDIKICNkZWZpbmUgTkZUX1FVRVVFX0ZMQUdfTUFTSyAweDAzCiBlbnVtIG5mdF9yZWplY3RfdHlwZXMgewotIE5GVF9SRUpFQ1RfSUNNUF9VTlJFQUNILAorICBORlRfUkVKRUNUX0lDTVBfVU5SRUFDSCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUX1JFSkVDVF9UQ1BfUlNULAorICBORlRfUkVKRUNUX1RDUF9SU1QsCisgIE5GVF9SRUpFQ1RfSUNNUFhfVU5SRUFDSCwKIH07CitlbnVtIG5mdF9yZWplY3RfaW5ldF9jb2RlIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVF9SRUpFQ1RfSUNNUFhfTk9fUk9VVEUgPSAwLAorICBORlRfUkVKRUNUX0lDTVBYX1BPUlRfVU5SRUFDSCwKKyAgTkZUX1JFSkVDVF9JQ01QWF9IT1NUX1VOUkVBQ0gsCisgIE5GVF9SRUpFQ1RfSUNNUFhfQURNSU5fUFJPSElCSVRFRCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fTkZUX1JFSkVDVF9JQ01QWF9NQVgKK307CisjZGVmaW5lIE5GVF9SRUpFQ1RfSUNNUFhfTUFYIChfX05GVF9SRUpFQ1RfSUNNUFhfTUFYIC0gMSkKIGVudW0gbmZ0X3JlamVjdF9hdHRyaWJ1dGVzIHsKLSBORlRBX1JFSkVDVF9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfUkVKRUNUX1RZUEUsCi0gTkZUQV9SRUpFQ1RfSUNNUF9DT0RFLAotIF9fTkZUQV9SRUpFQ1RfTUFYCisgIE5GVEFfUkVKRUNUX1VOU1BFQywKKyAgTkZUQV9SRUpFQ1RfVFlQRSwKKyAgTkZUQV9SRUpFQ1RfSUNNUF9DT0RFLAorICBfX05GVEFfUkVKRUNUX01BWAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlRBX1JFSkVDVF9NQVggKF9fTkZUQV9SRUpFQ1RfTUFYIC0gMSkKIGVudW0gbmZ0X25hdF90eXBlcyB7Ci0gTkZUX05BVF9TTkFULAotIE5GVF9OQVRfRE5BVCwKKyAgTkZUX05BVF9TTkFULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkZUX05BVF9ETkFULAogfTsKIGVudW0gbmZ0X25hdF9hdHRyaWJ1dGVzIHsKLSBORlRBX05BVF9VTlNQRUMsCi0gTkZUQV9OQVRfVFlQRSwKKyAgTkZUQV9OQVRfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX05BVF9GQU1JTFksCi0gTkZUQV9OQVRfUkVHX0FERFJfTUlOLAotIE5GVEFfTkFUX1JFR19BRERSX01BWCwKLSBORlRBX05BVF9SRUdfUFJPVE9fTUlOLAorICBORlRBX05BVF9UWVBFLAorICBORlRBX05BVF9GQU1JTFksCisgIE5GVEFfTkFUX1JFR19BRERSX01JTiwKKyAgTkZUQV9OQVRfUkVHX0FERFJfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX05BVF9SRUdfUFJPVE9fTUFYLAotIF9fTkZUQV9OQVRfTUFYCisgIE5GVEFfTkFUX1JFR19QUk9UT19NSU4sCisgIE5GVEFfTkFUX1JFR19QUk9UT19NQVgsCisgIE5GVEFfTkFUX0ZMQUdTLAorICBfX05GVEFfTkFUX01BWAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE5GVEFfTkFUX01BWCAoX19ORlRBX05BVF9NQVggLSAxKQorZW51bSBuZnRfbWFzcV9hdHRyaWJ1dGVzIHsKKyAgTkZUQV9NQVNRX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GVEFfTUFTUV9GTEFHUywKKyAgX19ORlRBX01BU1FfTUFYCit9OworI2RlZmluZSBORlRBX01BU1FfTUFYIChfX05GVEFfTUFTUV9NQVggLSAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0gbmZ0X2dlbl9hdHRyaWJ1dGVzIHsKKyAgTkZUQV9HRU5fVU5TUEVDLAorICBORlRBX0dFTl9JRCwKKyAgX19ORlRBX0dFTl9NQVgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworI2RlZmluZSBORlRBX0dFTl9NQVggKF9fTkZUQV9HRU5fTUFYIC0gMSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfdGFibGVzX2NvbXBhdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZfdGFibGVzX2NvbXBhdC5oCmluZGV4IDMzNjdkYWUuLmFlMWQzMzYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mX3RhYmxlc19jb21wYXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZl90YWJsZXNfY29tcGF0LmgKQEAgLTE5LDM5ICsxOSwzOSBAQAogI2lmbmRlZiBfTkZUX0NPTVBBVF9ORk5FVExJTktfSF8KICNkZWZpbmUgX05GVF9DT01QQVRfTkZORVRMSU5LX0hfCiBlbnVtIG5mdF90YXJnZXRfYXR0cmlidXRlcyB7Ci0gTkZUQV9UQVJHRVRfVU5TUEVDLAorICBORlRBX1RBUkdFVF9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVEFfVEFSR0VUX05BTUUsCi0gTkZUQV9UQVJHRVRfUkVWLAotIE5GVEFfVEFSR0VUX0lORk8sCi0gX19ORlRBX1RBUkdFVF9NQVgKKyAgTkZUQV9UQVJHRVRfTkFNRSwKKyAgTkZUQV9UQVJHRVRfUkVWLAorICBORlRBX1RBUkdFVF9JTkZPLAorICBfX05GVEFfVEFSR0VUX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE5GVEFfVEFSR0VUX01BWCAoX19ORlRBX1RBUkdFVF9NQVggLSAxKQogZW51bSBuZnRfbWF0Y2hfYXR0cmlidXRlcyB7Ci0gTkZUQV9NQVRDSF9VTlNQRUMsCisgIE5GVEFfTUFUQ0hfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlRBX01BVENIX05BTUUsCi0gTkZUQV9NQVRDSF9SRVYsCi0gTkZUQV9NQVRDSF9JTkZPLAotIF9fTkZUQV9NQVRDSF9NQVgKKyAgTkZUQV9NQVRDSF9OQU1FLAorICBORlRBX01BVENIX1JFViwKKyAgTkZUQV9NQVRDSF9JTkZPLAorICBfX05GVEFfTUFUQ0hfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTkZUQV9NQVRDSF9NQVggKF9fTkZUQV9NQVRDSF9NQVggLSAxKQogI2RlZmluZSBORlRfQ09NUEFUX05BTUVfTUFYIDMyCiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZOTF9NU0dfQ09NUEFUX0dFVCwKLSBORk5MX01TR19DT01QQVRfTUFYCisgIE5GTkxfTVNHX0NPTVBBVF9HRVQsCisgIE5GTkxfTVNHX0NPTVBBVF9NQVgKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZUQV9DT01QQVRfVU5TUEVDID0gMCwKLSBORlRBX0NPTVBBVF9OQU1FLAotIE5GVEFfQ09NUEFUX1JFViwKLSBORlRBX0NPTVBBVF9UWVBFLAorICBORlRBX0NPTVBBVF9VTlNQRUMgPSAwLAorICBORlRBX0NPTVBBVF9OQU1FLAorICBORlRBX0NPTVBBVF9SRVYsCisgIE5GVEFfQ09NUEFUX1RZUEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkZUQV9DT01QQVRfTUFYLAorICBfX05GVEFfQ09NUEFUX01BWCwKIH07CiAjZGVmaW5lIE5GVEFfQ09NUEFUX01BWCAoX19ORlRBX0NPTVBBVF9NQVggLSAxKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmsuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGluay5oCmluZGV4IGMwNGY2MmMuLmVhMDZmMDggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGluay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGluay5oCkBAIC0yMiw1NyArMjIsNTkgQEAKICNpbmNsdWRlIDxsaW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2NvbXBhdC5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZuZXRsaW5rX2dyb3VwcyB7Ci0gTkZOTEdSUF9OT05FLAorICBORk5MR1JQX05PTkUsCiAjZGVmaW5lIE5GTkxHUlBfTk9ORSBORk5MR1JQX05PTkUKLSBORk5MR1JQX0NPTk5UUkFDS19ORVcsCisgIE5GTkxHUlBfQ09OTlRSQUNLX05FVywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GTkxHUlBfQ09OTlRSQUNLX05FVyBORk5MR1JQX0NPTk5UUkFDS19ORVcKLSBORk5MR1JQX0NPTk5UUkFDS19VUERBVEUsCisgIE5GTkxHUlBfQ09OTlRSQUNLX1VQREFURSwKICNkZWZpbmUgTkZOTEdSUF9DT05OVFJBQ0tfVVBEQVRFIE5GTkxHUlBfQ09OTlRSQUNLX1VQREFURQotIE5GTkxHUlBfQ09OTlRSQUNLX0RFU1RST1ksCisgIE5GTkxHUlBfQ09OTlRSQUNLX0RFU1RST1ksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORk5MR1JQX0NPTk5UUkFDS19ERVNUUk9ZIE5GTkxHUlBfQ09OTlRSQUNLX0RFU1RST1kKLSBORk5MR1JQX0NPTk5UUkFDS19FWFBfTkVXLAorICBORk5MR1JQX0NPTk5UUkFDS19FWFBfTkVXLAogI2RlZmluZSBORk5MR1JQX0NPTk5UUkFDS19FWFBfTkVXIE5GTkxHUlBfQ09OTlRSQUNLX0VYUF9ORVcKLSBORk5MR1JQX0NPTk5UUkFDS19FWFBfVVBEQVRFLAorICBORk5MR1JQX0NPTk5UUkFDS19FWFBfVVBEQVRFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZOTEdSUF9DT05OVFJBQ0tfRVhQX1VQREFURSBORk5MR1JQX0NPTk5UUkFDS19FWFBfVVBEQVRFCi0gTkZOTEdSUF9DT05OVFJBQ0tfRVhQX0RFU1RST1ksCisgIE5GTkxHUlBfQ09OTlRSQUNLX0VYUF9ERVNUUk9ZLAogI2RlZmluZSBORk5MR1JQX0NPTk5UUkFDS19FWFBfREVTVFJPWSBORk5MR1JQX0NPTk5UUkFDS19FWFBfREVTVFJPWQotIE5GTkxHUlBfTkZUQUJMRVMsCisgIE5GTkxHUlBfTkZUQUJMRVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORk5MR1JQX05GVEFCTEVTIE5GTkxHUlBfTkZUQUJMRVMKLSBfX05GTkxHUlBfTUFYLAorICBORk5MR1JQX0FDQ1RfUVVPVEEsCisjZGVmaW5lIE5GTkxHUlBfQUNDVF9RVU9UQSBORk5MR1JQX0FDQ1RfUVVPVEEKKyAgX19ORk5MR1JQX01BWCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBORk5MR1JQX01BWCAoX19ORk5MR1JQX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5mZ2VubXNnIHsKLSBfX3U4IG5mZ2VuX2ZhbWlseTsKLSBfX3U4IHZlcnNpb247Ci0gX19iZTE2IHJlc19pZDsKKyAgX191OCBuZmdlbl9mYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHZlcnNpb247CisgIF9fYmUxNiByZXNfaWQ7CiB9OwogI2RlZmluZSBORk5FVExJTktfVjAgMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZOTF9TVUJTWVNfSUQoeCkgKCh4ICYgMHhmZjAwKSA+PiA4KQogI2RlZmluZSBORk5MX01TR19UWVBFKHgpICh4ICYgMHgwMGZmKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZOTF9TVUJTWVNfTk9ORSAwCiAjZGVmaW5lIE5GTkxfU1VCU1lTX0NUTkVUTElOSyAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORk5MX1NVQlNZU19DVE5FVExJTktfRVhQIDIKICNkZWZpbmUgTkZOTF9TVUJTWVNfUVVFVUUgMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZOTF9TVUJTWVNfVUxPRyA0CiAjZGVmaW5lIE5GTkxfU1VCU1lTX09TRiA1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORk5MX1NVQlNZU19JUFNFVCA2CiAjZGVmaW5lIE5GTkxfU1VCU1lTX0FDQ1QgNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZOTF9TVUJTWVNfQ1RORVRMSU5LX1RJTUVPVVQgOAogI2RlZmluZSBORk5MX1NVQlNZU19DVEhFTFBFUiA5CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORk5MX1NVQlNZU19ORlRBQkxFUyAxMAogI2RlZmluZSBORk5MX1NVQlNZU19ORlRfQ09NUEFUIDExCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORk5MX1NVQlNZU19DT1VOVCAxMgogI2RlZmluZSBORk5MX01TR19CQVRDSF9CRUdJTiBOTE1TR19NSU5fVFlQRQotI2RlZmluZSBORk5MX01TR19CQVRDSF9FTkQgTkxNU0dfTUlOX1RZUEUrMQotI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBORk5MX01TR19CQVRDSF9FTkQgTkxNU0dfTUlOX1RZUEUgKyAxCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19hY2N0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfYWNjdC5oCmluZGV4IDAxZjEzZWYuLjJiNzExMTIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19hY2N0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2FjY3QuaApAQCAtMjMsMjMgKzIzLDQzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCiBlbnVtIG5mbmxfYWNjdF9tc2dfdHlwZXMgewotIE5GTkxfTVNHX0FDQ1RfTkVXLAotIE5GTkxfTVNHX0FDQ1RfR0VULAorICBORk5MX01TR19BQ0NUX05FVywKKyAgTkZOTF9NU0dfQUNDVF9HRVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GTkxfTVNHX0FDQ1RfR0VUX0NUUlpFUk8sCi0gTkZOTF9NU0dfQUNDVF9ERUwsCi0gTkZOTF9NU0dfQUNDVF9NQVgKKyAgTkZOTF9NU0dfQUNDVF9HRVRfQ1RSWkVSTywKKyAgTkZOTF9NU0dfQUNDVF9ERUwsCisgIE5GTkxfTVNHX0FDQ1RfT1ZFUlFVT1RBLAorICBORk5MX01TR19BQ0NUX01BWAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CitlbnVtIG5mbmxfYWNjdF9mbGFncyB7CisgIE5GQUNDVF9GX1FVT1RBX1BLVFMgPSAoMSA8PCAwKSwKKyAgTkZBQ0NUX0ZfUVVPVEFfQllURVMgPSAoMSA8PCAxKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GQUNDVF9GX09WRVJRVU9UQSA9ICgxIDw8IDIpLAorfTsKIGVudW0gbmZubF9hY2N0X3R5cGUgewotIE5GQUNDVF9VTlNQRUMsCi0gTkZBQ0NUX05BTUUsCi0gTkZBQ0NUX1BLVFMsCisgIE5GQUNDVF9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQUNDVF9CWVRFUywKLSBORkFDQ1RfVVNFLAotIF9fTkZBQ0NUX01BWAorICBORkFDQ1RfTkFNRSwKKyAgTkZBQ0NUX1BLVFMsCisgIE5GQUNDVF9CWVRFUywKKyAgTkZBQ0NUX1VTRSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GQUNDVF9GTEFHUywKKyAgTkZBQ0NUX1FVT1RBLAorICBORkFDQ1RfRklMVEVSLAorICBfX05GQUNDVF9NQVgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworI2RlZmluZSBORkFDQ1RfTUFYIChfX05GQUNDVF9NQVggLSAxKQorZW51bSBuZm5sX2F0dHJfZmlsdGVyX3R5cGUgeworICBORkFDQ1RfRklMVEVSX1VOU1BFQywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5GQUNDVF9GSUxURVJfTUFTSywKKyAgTkZBQ0NUX0ZJTFRFUl9WQUxVRSwKKyAgX19ORkFDQ1RfRklMVEVSX01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE5GQUNDVF9NQVggKF9fTkZBQ0NUX01BWCAtIDEpCisjZGVmaW5lIE5GQUNDVF9GSUxURVJfTUFYIChfX05GQUNDVF9GSUxURVJfTUFYIC0gMSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2NvbXBhdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2NvbXBhdC5oCmluZGV4IDAxMGI5NTcuLjE3NjFjNDkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19jb21wYXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfY29tcGF0LmgKQEAgLTI4LDggKzI4LDggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GX05FVExJTktfQ09OTlRSQUNLX0VYUF9ERVNUUk9ZIDB4MDAwMDAwMjAKIHN0cnVjdCBuZmF0dHIgewotIF9fdTE2IG5mYV9sZW47Ci0gX191MTYgbmZhX3R5cGU7CisgIF9fdTE2IG5mYV9sZW47CisgIF9fdTE2IG5mYV90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE5GTkxfTkZBX05FU1QgMHg4MDAwCkBAIC0zNywxOCArMzcsMjEgQEAKICNkZWZpbmUgTkZBX0FMSUdOVE8gNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZBX0FMSUdOKGxlbikgKCgobGVuKSArIE5GQV9BTElHTlRPIC0gMSkgJiB+KE5GQV9BTElHTlRPIC0gMSkpCi0jZGVmaW5lIE5GQV9PSyhuZmEsbGVuKSAoKGxlbikgPiAwICYmIChuZmEpLT5uZmFfbGVuID49IHNpemVvZihzdHJ1Y3QgbmZhdHRyKSAgICYmIChuZmEpLT5uZmFfbGVuIDw9IChsZW4pKQotI2RlZmluZSBORkFfTkVYVChuZmEsYXR0cmxlbikgKChhdHRybGVuKSAtPSBORkFfQUxJR04oKG5mYSktPm5mYV9sZW4pLCAgIChzdHJ1Y3QgbmZhdHRyICopKCgoY2hhciAqKShuZmEpKSArIE5GQV9BTElHTigobmZhKS0+bmZhX2xlbikpKQorI2RlZmluZSBORkFfT0sobmZhLGxlbikgKChsZW4pID4gMCAmJiAobmZhKS0+bmZhX2xlbiA+PSBzaXplb2Yoc3RydWN0IG5mYXR0cikgJiYgKG5mYSktPm5mYV9sZW4gPD0gKGxlbikpCisjZGVmaW5lIE5GQV9ORVhUKG5mYSxhdHRybGVuKSAoKGF0dHJsZW4pIC09IE5GQV9BTElHTigobmZhKS0+bmZhX2xlbiksIChzdHJ1Y3QgbmZhdHRyICopICgoKGNoYXIgKikgKG5mYSkpICsgTkZBX0FMSUdOKChuZmEpLT5uZmFfbGVuKSkpCiAjZGVmaW5lIE5GQV9MRU5HVEgobGVuKSAoTkZBX0FMSUdOKHNpemVvZihzdHJ1Y3QgbmZhdHRyKSkgKyAobGVuKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GQV9TUEFDRShsZW4pIE5GQV9BTElHTihORkFfTEVOR1RIKGxlbikpCi0jZGVmaW5lIE5GQV9EQVRBKG5mYSkgKCh2b2lkICopKCgoY2hhciAqKShuZmEpKSArIE5GQV9MRU5HVEgoMCkpKQotI2RlZmluZSBORkFfUEFZTE9BRChuZmEpICgoaW50KSgobmZhKS0+bmZhX2xlbikgLSBORkFfTEVOR1RIKDApKQotI2RlZmluZSBORkFfTkVTVChza2IsIHR5cGUpICAoeyBzdHJ1Y3QgbmZhdHRyICpfX3N0YXJ0ID0gKHN0cnVjdCBuZmF0dHIgKilza2JfdGFpbF9wb2ludGVyKHNrYik7ICAgTkZBX1BVVChza2IsIChORk5MX05GQV9ORVNUIHwgdHlwZSksIDAsIE5VTEwpOyAgIF9fc3RhcnQ7IH0pCisjZGVmaW5lIE5GQV9EQVRBKG5mYSkgKCh2b2lkICopICgoKGNoYXIgKikgKG5mYSkpICsgTkZBX0xFTkdUSCgwKSkpCisjZGVmaW5lIE5GQV9QQVlMT0FEKG5mYSkgKChpbnQpICgobmZhKS0+bmZhX2xlbikgLSBORkFfTEVOR1RIKDApKQorI2RlZmluZSBORkFfTkVTVChza2IsdHlwZSkgXAorKHsgc3RydWN0IG5mYXR0ciAqIF9fc3RhcnQgPSAoc3RydWN0IG5mYXR0ciAqKSBza2JfdGFpbF9wb2ludGVyKHNrYik7IE5GQV9QVVQoc2tiLCAoTkZOTF9ORkFfTkVTVCB8IHR5cGUpLCAwLCBOVUxMKTsgX19zdGFydDsgfSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE5GQV9ORVNUX0VORChza2IsIHN0YXJ0KSAgKHsgKHN0YXJ0KS0+bmZhX2xlbiA9IHNrYl90YWlsX3BvaW50ZXIoc2tiKSAtICh1bnNpZ25lZCBjaGFyICopKHN0YXJ0KTsgICAoc2tiKS0+bGVuOyB9KQotI2RlZmluZSBORkFfTkVTVF9DQU5DRUwoc2tiLCBzdGFydCkgICh7IGlmIChzdGFydCkgICBza2JfdHJpbShza2IsICh1bnNpZ25lZCBjaGFyICopIChzdGFydCkgLSAoc2tiKS0+ZGF0YSk7ICAgLTE7IH0pCi0jZGVmaW5lIE5GTV9ORkEobikgKChzdHJ1Y3QgbmZhdHRyICopKCgoY2hhciAqKShuKSkgICArIE5MTVNHX0FMSUdOKHNpemVvZihzdHJ1Y3QgbmZnZW5tc2cpKSkpCisjZGVmaW5lIE5GQV9ORVNUX0VORChza2Isc3RhcnQpIFwKKyh7IChzdGFydCktPm5mYV9sZW4gPSBza2JfdGFpbF9wb2ludGVyKHNrYikgLSAodW5zaWduZWQgY2hhciAqKSAoc3RhcnQpOyAoc2tiKS0+bGVuOyB9KQorI2RlZmluZSBORkFfTkVTVF9DQU5DRUwoc2tiLHN0YXJ0KSBcCisoeyBpZihzdGFydCkgc2tiX3RyaW0oc2tiLCAodW5zaWduZWQgY2hhciAqKSAoc3RhcnQpIC0gKHNrYiktPmRhdGEpOyAtIDE7IH0pCisjZGVmaW5lIE5GTV9ORkEobikgKChzdHJ1Y3QgbmZhdHRyICopICgoKGNoYXIgKikgKG4pKSArIE5MTVNHX0FMSUdOKHNpemVvZihzdHJ1Y3QgbmZnZW5tc2cpKSkpCiAjZGVmaW5lIE5GTV9QQVlMT0FEKG4pIE5MTVNHX1BBWUxPQUQobiwgc2l6ZW9mKHN0cnVjdCBuZmdlbm1zZykpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfY29ubnRyYWNrLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfY29ubnRyYWNrLmgKaW5kZXggMmIyMmM0Zi4uODhlNDA0YiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2Nvbm50cmFjay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19jb25udHJhY2suaApAQCAtMjEsMjkyICsyMSwyOTIgQEAKICNpbmNsdWRlIDxsaW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rLmg+CiBlbnVtIGNudGxfbXNnX3R5cGVzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBDVE5MX01TR19DVF9ORVcsCi0gSVBDVE5MX01TR19DVF9HRVQsCi0gSVBDVE5MX01TR19DVF9ERUxFVEUsCi0gSVBDVE5MX01TR19DVF9HRVRfQ1RSWkVSTywKKyAgSVBDVE5MX01TR19DVF9ORVcsCisgIElQQ1ROTF9NU0dfQ1RfR0VULAorICBJUENUTkxfTVNHX0NUX0RFTEVURSwKKyAgSVBDVE5MX01TR19DVF9HRVRfQ1RSWkVSTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBDVE5MX01TR19DVF9HRVRfU1RBVFNfQ1BVLAotIElQQ1ROTF9NU0dfQ1RfR0VUX1NUQVRTLAotIElQQ1ROTF9NU0dfQ1RfR0VUX0RZSU5HLAotIElQQ1ROTF9NU0dfQ1RfR0VUX1VOQ09ORklSTUVELAorICBJUENUTkxfTVNHX0NUX0dFVF9TVEFUU19DUFUsCisgIElQQ1ROTF9NU0dfQ1RfR0VUX1NUQVRTLAorICBJUENUTkxfTVNHX0NUX0dFVF9EWUlORywKKyAgSVBDVE5MX01TR19DVF9HRVRfVU5DT05GSVJNRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQQ1ROTF9NU0dfTUFYCisgIElQQ1ROTF9NU0dfTUFYCiB9OwogZW51bSBjdG5sX2V4cF9tc2dfdHlwZXMgewotIElQQ1ROTF9NU0dfRVhQX05FVywKKyAgSVBDVE5MX01TR19FWFBfTkVXLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUENUTkxfTVNHX0VYUF9HRVQsCi0gSVBDVE5MX01TR19FWFBfREVMRVRFLAotIElQQ1ROTF9NU0dfRVhQX0dFVF9TVEFUU19DUFUsCi0gSVBDVE5MX01TR19FWFBfTUFYCisgIElQQ1ROTF9NU0dfRVhQX0dFVCwKKyAgSVBDVE5MX01TR19FWFBfREVMRVRFLAorICBJUENUTkxfTVNHX0VYUF9HRVRfU1RBVFNfQ1BVLAorICBJUENUTkxfTVNHX0VYUF9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBjdGF0dHJfdHlwZSB7Ci0gQ1RBX1VOU1BFQywKLSBDVEFfVFVQTEVfT1JJRywKKyAgQ1RBX1VOU1BFQywKKyAgQ1RBX1RVUExFX09SSUcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9UVVBMRV9SRVBMWSwKLSBDVEFfU1RBVFVTLAotIENUQV9QUk9UT0lORk8sCi0gQ1RBX0hFTFAsCisgIENUQV9UVVBMRV9SRVBMWSwKKyAgQ1RBX1NUQVRVUywKKyAgQ1RBX1BST1RPSU5GTywKKyAgQ1RBX0hFTFAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9OQVRfU1JDLAorICBDVEFfTkFUX1NSQywKICNkZWZpbmUgQ1RBX05BVCBDVEFfTkFUX1NSQwotIENUQV9USU1FT1VULAotIENUQV9NQVJLLAorICBDVEFfVElNRU9VVCwKKyAgQ1RBX01BUkssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9DT1VOVEVSU19PUklHLAotIENUQV9DT1VOVEVSU19SRVBMWSwKLSBDVEFfVVNFLAotIENUQV9JRCwKKyAgQ1RBX0NPVU5URVJTX09SSUcsCisgIENUQV9DT1VOVEVSU19SRVBMWSwKKyAgQ1RBX1VTRSwKKyAgQ1RBX0lELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfTkFUX0RTVCwKLSBDVEFfVFVQTEVfTUFTVEVSLAotIENUQV9TRVFfQURKX09SSUcsCi0gQ1RBX05BVF9TRVFfQURKX09SSUcgPSBDVEFfU0VRX0FESl9PUklHLAorICBDVEFfTkFUX0RTVCwKKyAgQ1RBX1RVUExFX01BU1RFUiwKKyAgQ1RBX1NFUV9BREpfT1JJRywKKyAgQ1RBX05BVF9TRVFfQURKX09SSUcgPSBDVEFfU0VRX0FESl9PUklHLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfU0VRX0FESl9SRVBMWSwKLSBDVEFfTkFUX1NFUV9BREpfUkVQTFkgPSBDVEFfU0VRX0FESl9SRVBMWSwKLSBDVEFfU0VDTUFSSywKLSBDVEFfWk9ORSwKKyAgQ1RBX1NFUV9BREpfUkVQTFksCisgIENUQV9OQVRfU0VRX0FESl9SRVBMWSA9IENUQV9TRVFfQURKX1JFUExZLAorICBDVEFfU0VDTUFSSywKKyAgQ1RBX1pPTkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9TRUNDVFgsCi0gQ1RBX1RJTUVTVEFNUCwKLSBDVEFfTUFSS19NQVNLLAotIENUQV9MQUJFTFMsCisgIENUQV9TRUNDVFgsCisgIENUQV9USU1FU1RBTVAsCisgIENUQV9NQVJLX01BU0ssCisgIENUQV9MQUJFTFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9MQUJFTFNfTUFTSywKLSBfX0NUQV9NQVgKKyAgQ1RBX0xBQkVMU19NQVNLLAorICBfX0NUQV9NQVgKIH07CiAjZGVmaW5lIENUQV9NQVggKF9fQ1RBX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBjdGF0dHJfdHVwbGUgewotIENUQV9UVVBMRV9VTlNQRUMsCi0gQ1RBX1RVUExFX0lQLAotIENUQV9UVVBMRV9QUk9UTywKKyAgQ1RBX1RVUExFX1VOU1BFQywKKyAgQ1RBX1RVUExFX0lQLAorICBDVEFfVFVQTEVfUFJPVE8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQ1RBX1RVUExFX01BWAorICBfX0NUQV9UVVBMRV9NQVgKIH07CiAjZGVmaW5lIENUQV9UVVBMRV9NQVggKF9fQ1RBX1RVUExFX01BWCAtIDEpCiBlbnVtIGN0YXR0cl9pcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9JUF9VTlNQRUMsCi0gQ1RBX0lQX1Y0X1NSQywKLSBDVEFfSVBfVjRfRFNULAotIENUQV9JUF9WNl9TUkMsCisgIENUQV9JUF9VTlNQRUMsCisgIENUQV9JUF9WNF9TUkMsCisgIENUQV9JUF9WNF9EU1QsCisgIENUQV9JUF9WNl9TUkMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9JUF9WNl9EU1QsCi0gX19DVEFfSVBfTUFYCisgIENUQV9JUF9WNl9EU1QsCisgIF9fQ1RBX0lQX01BWAogfTsKICNkZWZpbmUgQ1RBX0lQX01BWCAoX19DVEFfSVBfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGN0YXR0cl9sNHByb3RvIHsKLSBDVEFfUFJPVE9fVU5TUEVDLAotIENUQV9QUk9UT19OVU0sCi0gQ1RBX1BST1RPX1NSQ19QT1JULAorICBDVEFfUFJPVE9fVU5TUEVDLAorICBDVEFfUFJPVE9fTlVNLAorICBDVEFfUFJPVE9fU1JDX1BPUlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9QUk9UT19EU1RfUE9SVCwKLSBDVEFfUFJPVE9fSUNNUF9JRCwKLSBDVEFfUFJPVE9fSUNNUF9UWVBFLAotIENUQV9QUk9UT19JQ01QX0NPREUsCisgIENUQV9QUk9UT19EU1RfUE9SVCwKKyAgQ1RBX1BST1RPX0lDTVBfSUQsCisgIENUQV9QUk9UT19JQ01QX1RZUEUsCisgIENUQV9QUk9UT19JQ01QX0NPREUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9QUk9UT19JQ01QVjZfSUQsCi0gQ1RBX1BST1RPX0lDTVBWNl9UWVBFLAotIENUQV9QUk9UT19JQ01QVjZfQ09ERSwKLSBfX0NUQV9QUk9UT19NQVgKKyAgQ1RBX1BST1RPX0lDTVBWNl9JRCwKKyAgQ1RBX1BST1RPX0lDTVBWNl9UWVBFLAorICBDVEFfUFJPVE9fSUNNUFY2X0NPREUsCisgIF9fQ1RBX1BST1RPX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIENUQV9QUk9UT19NQVggKF9fQ1RBX1BST1RPX01BWCAtIDEpCiBlbnVtIGN0YXR0cl9wcm90b2luZm8gewotIENUQV9QUk9UT0lORk9fVU5TUEVDLAorICBDVEFfUFJPVE9JTkZPX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1BST1RPSU5GT19UQ1AsCi0gQ1RBX1BST1RPSU5GT19EQ0NQLAotIENUQV9QUk9UT0lORk9fU0NUUCwKLSBfX0NUQV9QUk9UT0lORk9fTUFYCisgIENUQV9QUk9UT0lORk9fVENQLAorICBDVEFfUFJPVE9JTkZPX0RDQ1AsCisgIENUQV9QUk9UT0lORk9fU0NUUCwKKyAgX19DVEFfUFJPVE9JTkZPX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIENUQV9QUk9UT0lORk9fTUFYIChfX0NUQV9QUk9UT0lORk9fTUFYIC0gMSkKIGVudW0gY3RhdHRyX3Byb3RvaW5mb190Y3AgewotIENUQV9QUk9UT0lORk9fVENQX1VOU1BFQywKKyAgQ1RBX1BST1RPSU5GT19UQ1BfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfUFJPVE9JTkZPX1RDUF9TVEFURSwKLSBDVEFfUFJPVE9JTkZPX1RDUF9XU0NBTEVfT1JJR0lOQUwsCi0gQ1RBX1BST1RPSU5GT19UQ1BfV1NDQUxFX1JFUExZLAotIENUQV9QUk9UT0lORk9fVENQX0ZMQUdTX09SSUdJTkFMLAorICBDVEFfUFJPVE9JTkZPX1RDUF9TVEFURSwKKyAgQ1RBX1BST1RPSU5GT19UQ1BfV1NDQUxFX09SSUdJTkFMLAorICBDVEFfUFJPVE9JTkZPX1RDUF9XU0NBTEVfUkVQTFksCisgIENUQV9QUk9UT0lORk9fVENQX0ZMQUdTX09SSUdJTkFMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfUFJPVE9JTkZPX1RDUF9GTEFHU19SRVBMWSwKLSBfX0NUQV9QUk9UT0lORk9fVENQX01BWAorICBDVEFfUFJPVE9JTkZPX1RDUF9GTEFHU19SRVBMWSwKKyAgX19DVEFfUFJPVE9JTkZPX1RDUF9NQVgKIH07CiAjZGVmaW5lIENUQV9QUk9UT0lORk9fVENQX01BWCAoX19DVEFfUFJPVE9JTkZPX1RDUF9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gY3RhdHRyX3Byb3RvaW5mb19kY2NwIHsKLSBDVEFfUFJPVE9JTkZPX0RDQ1BfVU5TUEVDLAotIENUQV9QUk9UT0lORk9fRENDUF9TVEFURSwKLSBDVEFfUFJPVE9JTkZPX0RDQ1BfUk9MRSwKKyAgQ1RBX1BST1RPSU5GT19EQ0NQX1VOU1BFQywKKyAgQ1RBX1BST1RPSU5GT19EQ0NQX1NUQVRFLAorICBDVEFfUFJPVE9JTkZPX0RDQ1BfUk9MRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1BST1RPSU5GT19EQ0NQX0hBTkRTSEFLRV9TRVEsCi0gX19DVEFfUFJPVE9JTkZPX0RDQ1BfTUFYLAorICBDVEFfUFJPVE9JTkZPX0RDQ1BfSEFORFNIQUtFX1NFUSwKKyAgX19DVEFfUFJPVE9JTkZPX0RDQ1BfTUFYLAogfTsKICNkZWZpbmUgQ1RBX1BST1RPSU5GT19EQ0NQX01BWCAoX19DVEFfUFJPVE9JTkZPX0RDQ1BfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGN0YXR0cl9wcm90b2luZm9fc2N0cCB7Ci0gQ1RBX1BST1RPSU5GT19TQ1RQX1VOU1BFQywKLSBDVEFfUFJPVE9JTkZPX1NDVFBfU1RBVEUsCi0gQ1RBX1BST1RPSU5GT19TQ1RQX1ZUQUdfT1JJR0lOQUwsCisgIENUQV9QUk9UT0lORk9fU0NUUF9VTlNQRUMsCisgIENUQV9QUk9UT0lORk9fU0NUUF9TVEFURSwKKyAgQ1RBX1BST1RPSU5GT19TQ1RQX1ZUQUdfT1JJR0lOQUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9QUk9UT0lORk9fU0NUUF9WVEFHX1JFUExZLAotIF9fQ1RBX1BST1RPSU5GT19TQ1RQX01BWAorICBDVEFfUFJPVE9JTkZPX1NDVFBfVlRBR19SRVBMWSwKKyAgX19DVEFfUFJPVE9JTkZPX1NDVFBfTUFYCiB9OwogI2RlZmluZSBDVEFfUFJPVE9JTkZPX1NDVFBfTUFYIChfX0NUQV9QUk9UT0lORk9fU0NUUF9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gY3RhdHRyX2NvdW50ZXJzIHsKLSBDVEFfQ09VTlRFUlNfVU5TUEVDLAotIENUQV9DT1VOVEVSU19QQUNLRVRTLAotIENUQV9DT1VOVEVSU19CWVRFUywKKyAgQ1RBX0NPVU5URVJTX1VOU1BFQywKKyAgQ1RBX0NPVU5URVJTX1BBQ0tFVFMsCisgIENUQV9DT1VOVEVSU19CWVRFUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX0NPVU5URVJTMzJfUEFDS0VUUywKLSBDVEFfQ09VTlRFUlMzMl9CWVRFUywKLSBfX0NUQV9DT1VOVEVSU19NQVgKKyAgQ1RBX0NPVU5URVJTMzJfUEFDS0VUUywKKyAgQ1RBX0NPVU5URVJTMzJfQllURVMsCisgIF9fQ1RBX0NPVU5URVJTX01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUQV9DT1VOVEVSU19NQVggKF9fQ1RBX0NPVU5URVJTX01BWCAtIDEpCiBlbnVtIGN0YXR0cl90c3RhbXAgewotIENUQV9USU1FU1RBTVBfVU5TUEVDLAotIENUQV9USU1FU1RBTVBfU1RBUlQsCisgIENUQV9USU1FU1RBTVBfVU5TUEVDLAorICBDVEFfVElNRVNUQU1QX1NUQVJULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfVElNRVNUQU1QX1NUT1AsCi0gX19DVEFfVElNRVNUQU1QX01BWAorICBDVEFfVElNRVNUQU1QX1NUT1AsCisgIF9fQ1RBX1RJTUVTVEFNUF9NQVgKIH07CiAjZGVmaW5lIENUQV9USU1FU1RBTVBfTUFYIChfX0NUQV9USU1FU1RBTVBfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGN0YXR0cl9uYXQgewotIENUQV9OQVRfVU5TUEVDLAotIENUQV9OQVRfVjRfTUlOSVAsCisgIENUQV9OQVRfVU5TUEVDLAorICBDVEFfTkFUX1Y0X01JTklQLAogI2RlZmluZSBDVEFfTkFUX01JTklQIENUQV9OQVRfVjRfTUlOSVAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX05BVF9WNF9NQVhJUCwKKyAgQ1RBX05BVF9WNF9NQVhJUCwKICNkZWZpbmUgQ1RBX05BVF9NQVhJUCBDVEFfTkFUX1Y0X01BWElQCi0gQ1RBX05BVF9QUk9UTywKLSBDVEFfTkFUX1Y2X01JTklQLAorICBDVEFfTkFUX1BST1RPLAorICBDVEFfTkFUX1Y2X01JTklQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfTkFUX1Y2X01BWElQLAotIF9fQ1RBX05BVF9NQVgKKyAgQ1RBX05BVF9WNl9NQVhJUCwKKyAgX19DVEFfTkFUX01BWAogfTsKICNkZWZpbmUgQ1RBX05BVF9NQVggKF9fQ1RBX05BVF9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gY3RhdHRyX3Byb3RvbmF0IHsKLSBDVEFfUFJPVE9OQVRfVU5TUEVDLAotIENUQV9QUk9UT05BVF9QT1JUX01JTiwKLSBDVEFfUFJPVE9OQVRfUE9SVF9NQVgsCisgIENUQV9QUk9UT05BVF9VTlNQRUMsCisgIENUQV9QUk9UT05BVF9QT1JUX01JTiwKKyAgQ1RBX1BST1RPTkFUX1BPUlRfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUQV9QUk9UT05BVF9NQVgKKyAgX19DVEFfUFJPVE9OQVRfTUFYCiB9OwogI2RlZmluZSBDVEFfUFJPVE9OQVRfTUFYIChfX0NUQV9QUk9UT05BVF9NQVggLSAxKQogZW51bSBjdGF0dHJfc2VxYWRqIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1NFUUFESl9VTlNQRUMsCi0gQ1RBX1NFUUFESl9DT1JSRUNUSU9OX1BPUywKLSBDVEFfU0VRQURKX09GRlNFVF9CRUZPUkUsCi0gQ1RBX1NFUUFESl9PRkZTRVRfQUZURVIsCisgIENUQV9TRVFBREpfVU5TUEVDLAorICBDVEFfU0VRQURKX0NPUlJFQ1RJT05fUE9TLAorICBDVEFfU0VRQURKX09GRlNFVF9CRUZPUkUsCisgIENUQV9TRVFBREpfT0ZGU0VUX0FGVEVSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUQV9TRVFBREpfTUFYCisgIF9fQ1RBX1NFUUFESl9NQVgKIH07CiAjZGVmaW5lIENUQV9TRVFBREpfTUFYIChfX0NUQV9TRVFBREpfTUFYIC0gMSkKIGVudW0gY3RhdHRyX25hdHNlcSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9OQVRfU0VRX1VOU1BFQywKLSBDVEFfTkFUX1NFUV9DT1JSRUNUSU9OX1BPUywKLSBDVEFfTkFUX1NFUV9PRkZTRVRfQkVGT1JFLAotIENUQV9OQVRfU0VRX09GRlNFVF9BRlRFUiwKKyAgQ1RBX05BVF9TRVFfVU5TUEVDLAorICBDVEFfTkFUX1NFUV9DT1JSRUNUSU9OX1BPUywKKyAgQ1RBX05BVF9TRVFfT0ZGU0VUX0JFRk9SRSwKKyAgQ1RBX05BVF9TRVFfT0ZGU0VUX0FGVEVSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUQV9OQVRfU0VRX01BWAorICBfX0NUQV9OQVRfU0VRX01BWAogfTsKICNkZWZpbmUgQ1RBX05BVF9TRVFfTUFYIChfX0NUQV9OQVRfU0VRX01BWCAtIDEpCiBlbnVtIGN0YXR0cl9leHBlY3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfRVhQRUNUX1VOU1BFQywKLSBDVEFfRVhQRUNUX01BU1RFUiwKLSBDVEFfRVhQRUNUX1RVUExFLAotIENUQV9FWFBFQ1RfTUFTSywKKyAgQ1RBX0VYUEVDVF9VTlNQRUMsCisgIENUQV9FWFBFQ1RfTUFTVEVSLAorICBDVEFfRVhQRUNUX1RVUExFLAorICBDVEFfRVhQRUNUX01BU0ssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9FWFBFQ1RfVElNRU9VVCwKLSBDVEFfRVhQRUNUX0lELAotIENUQV9FWFBFQ1RfSEVMUF9OQU1FLAotIENUQV9FWFBFQ1RfWk9ORSwKKyAgQ1RBX0VYUEVDVF9USU1FT1VULAorICBDVEFfRVhQRUNUX0lELAorICBDVEFfRVhQRUNUX0hFTFBfTkFNRSwKKyAgQ1RBX0VYUEVDVF9aT05FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfRVhQRUNUX0ZMQUdTLAotIENUQV9FWFBFQ1RfQ0xBU1MsCi0gQ1RBX0VYUEVDVF9OQVQsCi0gQ1RBX0VYUEVDVF9GTiwKKyAgQ1RBX0VYUEVDVF9GTEFHUywKKyAgQ1RBX0VYUEVDVF9DTEFTUywKKyAgQ1RBX0VYUEVDVF9OQVQsCisgIENUQV9FWFBFQ1RfRk4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQ1RBX0VYUEVDVF9NQVgKKyAgX19DVEFfRVhQRUNUX01BWAogfTsKICNkZWZpbmUgQ1RBX0VYUEVDVF9NQVggKF9fQ1RBX0VYUEVDVF9NQVggLSAxKQogZW51bSBjdGF0dHJfZXhwZWN0X25hdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9FWFBFQ1RfTkFUX1VOU1BFQywKLSBDVEFfRVhQRUNUX05BVF9ESVIsCi0gQ1RBX0VYUEVDVF9OQVRfVFVQTEUsCi0gX19DVEFfRVhQRUNUX05BVF9NQVgKKyAgQ1RBX0VYUEVDVF9OQVRfVU5TUEVDLAorICBDVEFfRVhQRUNUX05BVF9ESVIsCisgIENUQV9FWFBFQ1RfTkFUX1RVUExFLAorICBfX0NUQV9FWFBFQ1RfTkFUX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIENUQV9FWFBFQ1RfTkFUX01BWCAoX19DVEFfRVhQRUNUX05BVF9NQVggLSAxKQogZW51bSBjdGF0dHJfaGVscCB7Ci0gQ1RBX0hFTFBfVU5TUEVDLAorICBDVEFfSEVMUF9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9IRUxQX05BTUUsCi0gQ1RBX0hFTFBfSU5GTywKLSBfX0NUQV9IRUxQX01BWAorICBDVEFfSEVMUF9OQU1FLAorICBDVEFfSEVMUF9JTkZPLAorICBfX0NUQV9IRUxQX01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUQV9IRUxQX01BWCAoX19DVEFfSEVMUF9NQVggLSAxKQogZW51bSBjdGF0dHJfc2VjY3R4IHsKLSBDVEFfU0VDQ1RYX1VOU1BFQywKLSBDVEFfU0VDQ1RYX05BTUUsCisgIENUQV9TRUNDVFhfVU5TUEVDLAorICBDVEFfU0VDQ1RYX05BTUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQ1RBX1NFQ0NUWF9NQVgKKyAgX19DVEFfU0VDQ1RYX01BWAogfTsKICNkZWZpbmUgQ1RBX1NFQ0NUWF9NQVggKF9fQ1RBX1NFQ0NUWF9NQVggLSAxKQogZW51bSBjdGF0dHJfc3RhdHNfY3B1IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1NUQVRTX1VOU1BFQywKLSBDVEFfU1RBVFNfU0VBUkNIRUQsCi0gQ1RBX1NUQVRTX0ZPVU5ELAotIENUQV9TVEFUU19ORVcsCisgIENUQV9TVEFUU19VTlNQRUMsCisgIENUQV9TVEFUU19TRUFSQ0hFRCwKKyAgQ1RBX1NUQVRTX0ZPVU5ELAorICBDVEFfU1RBVFNfTkVXLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfU1RBVFNfSU5WQUxJRCwKLSBDVEFfU1RBVFNfSUdOT1JFLAotIENUQV9TVEFUU19ERUxFVEUsCi0gQ1RBX1NUQVRTX0RFTEVURV9MSVNULAorICBDVEFfU1RBVFNfSU5WQUxJRCwKKyAgQ1RBX1NUQVRTX0lHTk9SRSwKKyAgQ1RBX1NUQVRTX0RFTEVURSwKKyAgQ1RBX1NUQVRTX0RFTEVURV9MSVNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfU1RBVFNfSU5TRVJULAotIENUQV9TVEFUU19JTlNFUlRfRkFJTEVELAotIENUQV9TVEFUU19EUk9QLAotIENUQV9TVEFUU19FQVJMWV9EUk9QLAorICBDVEFfU1RBVFNfSU5TRVJULAorICBDVEFfU1RBVFNfSU5TRVJUX0ZBSUxFRCwKKyAgQ1RBX1NUQVRTX0RST1AsCisgIENUQV9TVEFUU19FQVJMWV9EUk9QLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfU1RBVFNfRVJST1IsCi0gQ1RBX1NUQVRTX1NFQVJDSF9SRVNUQVJULAotIF9fQ1RBX1NUQVRTX01BWCwKKyAgQ1RBX1NUQVRTX0VSUk9SLAorICBDVEFfU1RBVFNfU0VBUkNIX1JFU1RBUlQsCisgIF9fQ1RBX1NUQVRTX01BWCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVEFfU1RBVFNfTUFYIChfX0NUQV9TVEFUU19NQVggLSAxKQogZW51bSBjdGF0dHJfc3RhdHNfZ2xvYmFsIHsKLSBDVEFfU1RBVFNfR0xPQkFMX1VOU1BFQywKLSBDVEFfU1RBVFNfR0xPQkFMX0VOVFJJRVMsCisgIENUQV9TVEFUU19HTE9CQUxfVU5TUEVDLAorICBDVEFfU1RBVFNfR0xPQkFMX0VOVFJJRVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQ1RBX1NUQVRTX0dMT0JBTF9NQVgsCisgIF9fQ1RBX1NUQVRTX0dMT0JBTF9NQVgsCiB9OwogI2RlZmluZSBDVEFfU1RBVFNfR0xPQkFMX01BWCAoX19DVEFfU1RBVFNfR0xPQkFMX01BWCAtIDEpCiBlbnVtIGN0YXR0cl9leHBlY3Rfc3RhdHMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfU1RBVFNfRVhQX1VOU1BFQywKLSBDVEFfU1RBVFNfRVhQX05FVywKLSBDVEFfU1RBVFNfRVhQX0NSRUFURSwKLSBDVEFfU1RBVFNfRVhQX0RFTEVURSwKKyAgQ1RBX1NUQVRTX0VYUF9VTlNQRUMsCisgIENUQV9TVEFUU19FWFBfTkVXLAorICBDVEFfU1RBVFNfRVhQX0NSRUFURSwKKyAgQ1RBX1NUQVRTX0VYUF9ERUxFVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fQ1RBX1NUQVRTX0VYUF9NQVgsCisgIF9fQ1RBX1NUQVRTX0VYUF9NQVgsCiB9OwogI2RlZmluZSBDVEFfU1RBVFNfRVhQX01BWCAoX19DVEFfU1RBVFNfRVhQX01BWCAtIDEpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19jdGhlbHBlci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2N0aGVscGVyLmgKaW5kZXggZjFhMWU0MS4uNTYxZTIxNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2N0aGVscGVyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2N0aGVscGVyLmgKQEAgLTIyLDU2ICsyMiw1NiBAQAogI2RlZmluZSBORkNUX0hFTFBFUl9TVEFUVVNfRU5BQkxFRCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZm5sX2FjY3RfbXNnX3R5cGVzIHsKLSBORk5MX01TR19DVEhFTFBFUl9ORVcsCi0gTkZOTF9NU0dfQ1RIRUxQRVJfR0VULAotIE5GTkxfTVNHX0NUSEVMUEVSX0RFTCwKKyAgTkZOTF9NU0dfQ1RIRUxQRVJfTkVXLAorICBORk5MX01TR19DVEhFTFBFUl9HRVQsCisgIE5GTkxfTVNHX0NUSEVMUEVSX0RFTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZOTF9NU0dfQ1RIRUxQRVJfTUFYCisgIE5GTkxfTVNHX0NUSEVMUEVSX01BWAogfTsKIGVudW0gbmZubF9jdGhlbHBlcl90eXBlIHsKLSBORkNUSF9VTlNQRUMsCisgIE5GQ1RIX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZDVEhfTkFNRSwKLSBORkNUSF9UVVBMRSwKLSBORkNUSF9RVUVVRV9OVU0sCi0gTkZDVEhfUE9MSUNZLAorICBORkNUSF9OQU1FLAorICBORkNUSF9UVVBMRSwKKyAgTkZDVEhfUVVFVUVfTlVNLAorICBORkNUSF9QT0xJQ1ksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ1RIX1BSSVZfREFUQV9MRU4sCi0gTkZDVEhfU1RBVFVTLAotIF9fTkZDVEhfTUFYCisgIE5GQ1RIX1BSSVZfREFUQV9MRU4sCisgIE5GQ1RIX1NUQVRVUywKKyAgX19ORkNUSF9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORkNUSF9NQVggKF9fTkZDVEhfTUFYIC0gMSkKIGVudW0gbmZubF9jdGhlbHBlcl9wb2xpY3lfdHlwZSB7Ci0gTkZDVEhfUE9MSUNZX1NFVF9VTlNQRUMsCi0gTkZDVEhfUE9MSUNZX1NFVF9OVU0sCisgIE5GQ1RIX1BPTElDWV9TRVRfVU5TUEVDLAorICBORkNUSF9QT0xJQ1lfU0VUX05VTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZDVEhfUE9MSUNZX1NFVCwKLSBORkNUSF9QT0xJQ1lfU0VUMSA9IE5GQ1RIX1BPTElDWV9TRVQsCi0gTkZDVEhfUE9MSUNZX1NFVDIsCi0gTkZDVEhfUE9MSUNZX1NFVDMsCisgIE5GQ1RIX1BPTElDWV9TRVQsCisgIE5GQ1RIX1BPTElDWV9TRVQxID0gTkZDVEhfUE9MSUNZX1NFVCwKKyAgTkZDVEhfUE9MSUNZX1NFVDIsCisgIE5GQ1RIX1BPTElDWV9TRVQzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkNUSF9QT0xJQ1lfU0VUNCwKLSBfX05GQ1RIX1BPTElDWV9TRVRfTUFYCisgIE5GQ1RIX1BPTElDWV9TRVQ0LAorICBfX05GQ1RIX1BPTElDWV9TRVRfTUFYCiB9OwogI2RlZmluZSBORkNUSF9QT0xJQ1lfU0VUX01BWCAoX19ORkNUSF9QT0xJQ1lfU0VUX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZm5sX2N0aGVscGVyX3BvbF90eXBlIHsKLSBORkNUSF9QT0xJQ1lfVU5TUEVDLAotIE5GQ1RIX1BPTElDWV9OQU1FLAotIE5GQ1RIX1BPTElDWV9FWFBFQ1RfTUFYLAorICBORkNUSF9QT0xJQ1lfVU5TUEVDLAorICBORkNUSF9QT0xJQ1lfTkFNRSwKKyAgTkZDVEhfUE9MSUNZX0VYUEVDVF9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ1RIX1BPTElDWV9FWFBFQ1RfVElNRU9VVCwKLSBfX05GQ1RIX1BPTElDWV9NQVgKKyAgTkZDVEhfUE9MSUNZX0VYUEVDVF9USU1FT1VULAorICBfX05GQ1RIX1BPTElDWV9NQVgKIH07CiAjZGVmaW5lIE5GQ1RIX1BPTElDWV9NQVggKF9fTkZDVEhfUE9MSUNZX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZm5sX2N0aGVscGVyX3R1cGxlX3R5cGUgewotIE5GQ1RIX1RVUExFX1VOU1BFQywKLSBORkNUSF9UVVBMRV9MM1BST1RPTlVNLAotIE5GQ1RIX1RVUExFX0w0UFJPVE9OVU0sCisgIE5GQ1RIX1RVUExFX1VOU1BFQywKKyAgTkZDVEhfVFVQTEVfTDNQUk9UT05VTSwKKyAgTkZDVEhfVFVQTEVfTDRQUk9UT05VTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19ORkNUSF9UVVBMRV9NQVgsCisgIF9fTkZDVEhfVFVQTEVfTUFYLAogfTsKICNkZWZpbmUgTkZDVEhfVFVQTEVfTUFYIChfX05GQ1RIX1RVUExFX01BWCAtIDEpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19jdHRpbWVvdXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19jdHRpbWVvdXQuaAppbmRleCA4OTI1Nzk5Li40YzM1Y2UwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfY3R0aW1lb3V0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2N0dGltZW91dC5oCkBAIC0yMSwxMjMgKzIxLDEyMyBAQAogI2luY2x1ZGUgPGxpbnV4L25ldGZpbHRlci9uZm5ldGxpbmsuaD4KIGVudW0gY3RubF90aW1lb3V0X21zZ190eXBlcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQQ1ROTF9NU0dfVElNRU9VVF9ORVcsCi0gSVBDVE5MX01TR19USU1FT1VUX0dFVCwKLSBJUENUTkxfTVNHX1RJTUVPVVRfREVMRVRFLAotIElQQ1ROTF9NU0dfVElNRU9VVF9ERUZBVUxUX1NFVCwKKyAgSVBDVE5MX01TR19USU1FT1VUX05FVywKKyAgSVBDVE5MX01TR19USU1FT1VUX0dFVCwKKyAgSVBDVE5MX01TR19USU1FT1VUX0RFTEVURSwKKyAgSVBDVE5MX01TR19USU1FT1VUX0RFRkFVTFRfU0VULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUENUTkxfTVNHX1RJTUVPVVRfREVGQVVMVF9HRVQsCi0gSVBDVE5MX01TR19USU1FT1VUX01BWAorICBJUENUTkxfTVNHX1RJTUVPVVRfREVGQVVMVF9HRVQsCisgIElQQ1ROTF9NU0dfVElNRU9VVF9NQVgKIH07CiBlbnVtIGN0YXR0cl90aW1lb3V0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1RJTUVPVVRfVU5TUEVDLAotIENUQV9USU1FT1VUX05BTUUsCi0gQ1RBX1RJTUVPVVRfTDNQUk9UTywKLSBDVEFfVElNRU9VVF9MNFBST1RPLAorICBDVEFfVElNRU9VVF9VTlNQRUMsCisgIENUQV9USU1FT1VUX05BTUUsCisgIENUQV9USU1FT1VUX0wzUFJPVE8sCisgIENUQV9USU1FT1VUX0w0UFJPVE8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9USU1FT1VUX0RBVEEsCi0gQ1RBX1RJTUVPVVRfVVNFLAotIF9fQ1RBX1RJTUVPVVRfTUFYCisgIENUQV9USU1FT1VUX0RBVEEsCisgIENUQV9USU1FT1VUX1VTRSwKKyAgX19DVEFfVElNRU9VVF9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVEFfVElNRU9VVF9NQVggKF9fQ1RBX1RJTUVPVVRfTUFYIC0gMSkKIGVudW0gY3RhdHRyX3RpbWVvdXRfZ2VuZXJpYyB7Ci0gQ1RBX1RJTUVPVVRfR0VORVJJQ19VTlNQRUMsCi0gQ1RBX1RJTUVPVVRfR0VORVJJQ19USU1FT1VULAorICBDVEFfVElNRU9VVF9HRU5FUklDX1VOU1BFQywKKyAgQ1RBX1RJTUVPVVRfR0VORVJJQ19USU1FT1VULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUQV9USU1FT1VUX0dFTkVSSUNfTUFYCisgIF9fQ1RBX1RJTUVPVVRfR0VORVJJQ19NQVgKIH07CiAjZGVmaW5lIENUQV9USU1FT1VUX0dFTkVSSUNfTUFYIChfX0NUQV9USU1FT1VUX0dFTkVSSUNfTUFYIC0gMSkKIGVudW0gY3RhdHRyX3RpbWVvdXRfdGNwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1RJTUVPVVRfVENQX1VOU1BFQywKLSBDVEFfVElNRU9VVF9UQ1BfU1lOX1NFTlQsCi0gQ1RBX1RJTUVPVVRfVENQX1NZTl9SRUNWLAotIENUQV9USU1FT1VUX1RDUF9FU1RBQkxJU0hFRCwKKyAgQ1RBX1RJTUVPVVRfVENQX1VOU1BFQywKKyAgQ1RBX1RJTUVPVVRfVENQX1NZTl9TRU5ULAorICBDVEFfVElNRU9VVF9UQ1BfU1lOX1JFQ1YsCisgIENUQV9USU1FT1VUX1RDUF9FU1RBQkxJU0hFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1RJTUVPVVRfVENQX0ZJTl9XQUlULAotIENUQV9USU1FT1VUX1RDUF9DTE9TRV9XQUlULAotIENUQV9USU1FT1VUX1RDUF9MQVNUX0FDSywKLSBDVEFfVElNRU9VVF9UQ1BfVElNRV9XQUlULAorICBDVEFfVElNRU9VVF9UQ1BfRklOX1dBSVQsCisgIENUQV9USU1FT1VUX1RDUF9DTE9TRV9XQUlULAorICBDVEFfVElNRU9VVF9UQ1BfTEFTVF9BQ0ssCisgIENUQV9USU1FT1VUX1RDUF9USU1FX1dBSVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9USU1FT1VUX1RDUF9DTE9TRSwKLSBDVEFfVElNRU9VVF9UQ1BfU1lOX1NFTlQyLAotIENUQV9USU1FT1VUX1RDUF9SRVRSQU5TLAotIENUQV9USU1FT1VUX1RDUF9VTkFDSywKKyAgQ1RBX1RJTUVPVVRfVENQX0NMT1NFLAorICBDVEFfVElNRU9VVF9UQ1BfU1lOX1NFTlQyLAorICBDVEFfVElNRU9VVF9UQ1BfUkVUUkFOUywKKyAgQ1RBX1RJTUVPVVRfVENQX1VOQUNLLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUQV9USU1FT1VUX1RDUF9NQVgKKyAgX19DVEFfVElNRU9VVF9UQ1BfTUFYCiB9OwogI2RlZmluZSBDVEFfVElNRU9VVF9UQ1BfTUFYIChfX0NUQV9USU1FT1VUX1RDUF9NQVggLSAxKQogZW51bSBjdGF0dHJfdGltZW91dF91ZHAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfVElNRU9VVF9VRFBfVU5TUEVDLAotIENUQV9USU1FT1VUX1VEUF9VTlJFUExJRUQsCi0gQ1RBX1RJTUVPVVRfVURQX1JFUExJRUQsCi0gX19DVEFfVElNRU9VVF9VRFBfTUFYCisgIENUQV9USU1FT1VUX1VEUF9VTlNQRUMsCisgIENUQV9USU1FT1VUX1VEUF9VTlJFUExJRUQsCisgIENUQV9USU1FT1VUX1VEUF9SRVBMSUVELAorICBfX0NUQV9USU1FT1VUX1VEUF9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBDVEFfVElNRU9VVF9VRFBfTUFYIChfX0NUQV9USU1FT1VUX1VEUF9NQVggLSAxKQogZW51bSBjdGF0dHJfdGltZW91dF91ZHBsaXRlIHsKLSBDVEFfVElNRU9VVF9VRFBMSVRFX1VOU1BFQywKKyAgQ1RBX1RJTUVPVVRfVURQTElURV9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9USU1FT1VUX1VEUExJVEVfVU5SRVBMSUVELAotIENUQV9USU1FT1VUX1VEUExJVEVfUkVQTElFRCwKLSBfX0NUQV9USU1FT1VUX1VEUExJVEVfTUFYCisgIENUQV9USU1FT1VUX1VEUExJVEVfVU5SRVBMSUVELAorICBDVEFfVElNRU9VVF9VRFBMSVRFX1JFUExJRUQsCisgIF9fQ1RBX1RJTUVPVVRfVURQTElURV9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVEFfVElNRU9VVF9VRFBMSVRFX01BWCAoX19DVEFfVElNRU9VVF9VRFBMSVRFX01BWCAtIDEpCiBlbnVtIGN0YXR0cl90aW1lb3V0X2ljbXAgewotIENUQV9USU1FT1VUX0lDTVBfVU5TUEVDLAotIENUQV9USU1FT1VUX0lDTVBfVElNRU9VVCwKKyAgQ1RBX1RJTUVPVVRfSUNNUF9VTlNQRUMsCisgIENUQV9USU1FT1VUX0lDTVBfVElNRU9VVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19DVEFfVElNRU9VVF9JQ01QX01BWAorICBfX0NUQV9USU1FT1VUX0lDTVBfTUFYCiB9OwogI2RlZmluZSBDVEFfVElNRU9VVF9JQ01QX01BWCAoX19DVEFfVElNRU9VVF9JQ01QX01BWCAtIDEpCiBlbnVtIGN0YXR0cl90aW1lb3V0X2RjY3AgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfVElNRU9VVF9EQ0NQX1VOU1BFQywKLSBDVEFfVElNRU9VVF9EQ0NQX1JFUVVFU1QsCi0gQ1RBX1RJTUVPVVRfRENDUF9SRVNQT05ELAotIENUQV9USU1FT1VUX0RDQ1BfUEFSVE9QRU4sCisgIENUQV9USU1FT1VUX0RDQ1BfVU5TUEVDLAorICBDVEFfVElNRU9VVF9EQ0NQX1JFUVVFU1QsCisgIENUQV9USU1FT1VUX0RDQ1BfUkVTUE9ORCwKKyAgQ1RBX1RJTUVPVVRfRENDUF9QQVJUT1BFTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1RJTUVPVVRfRENDUF9PUEVOLAotIENUQV9USU1FT1VUX0RDQ1BfQ0xPU0VSRVEsCi0gQ1RBX1RJTUVPVVRfRENDUF9DTE9TSU5HLAotIENUQV9USU1FT1VUX0RDQ1BfVElNRVdBSVQsCisgIENUQV9USU1FT1VUX0RDQ1BfT1BFTiwKKyAgQ1RBX1RJTUVPVVRfRENDUF9DTE9TRVJFUSwKKyAgQ1RBX1RJTUVPVVRfRENDUF9DTE9TSU5HLAorICBDVEFfVElNRU9VVF9EQ0NQX1RJTUVXQUlULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUQV9USU1FT1VUX0RDQ1BfTUFYCisgIF9fQ1RBX1RJTUVPVVRfRENDUF9NQVgKIH07CiAjZGVmaW5lIENUQV9USU1FT1VUX0RDQ1BfTUFYIChfX0NUQV9USU1FT1VUX0RDQ1BfTUFYIC0gMSkKIGVudW0gY3RhdHRyX3RpbWVvdXRfc2N0cCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUQV9USU1FT1VUX1NDVFBfVU5TUEVDLAotIENUQV9USU1FT1VUX1NDVFBfQ0xPU0VELAotIENUQV9USU1FT1VUX1NDVFBfQ09PS0lFX1dBSVQsCi0gQ1RBX1RJTUVPVVRfU0NUUF9DT09LSUVfRUNIT0VELAorICBDVEFfVElNRU9VVF9TQ1RQX1VOU1BFQywKKyAgQ1RBX1RJTUVPVVRfU0NUUF9DTE9TRUQsCisgIENUQV9USU1FT1VUX1NDVFBfQ09PS0lFX1dBSVQsCisgIENUQV9USU1FT1VUX1NDVFBfQ09PS0lFX0VDSE9FRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1RJTUVPVVRfU0NUUF9FU1RBQkxJU0hFRCwKLSBDVEFfVElNRU9VVF9TQ1RQX1NIVVRET1dOX1NFTlQsCi0gQ1RBX1RJTUVPVVRfU0NUUF9TSFVURE9XTl9SRUNELAotIENUQV9USU1FT1VUX1NDVFBfU0hVVERPV05fQUNLX1NFTlQsCisgIENUQV9USU1FT1VUX1NDVFBfRVNUQUJMSVNIRUQsCisgIENUQV9USU1FT1VUX1NDVFBfU0hVVERPV05fU0VOVCwKKyAgQ1RBX1RJTUVPVVRfU0NUUF9TSFVURE9XTl9SRUNELAorICBDVEFfVElNRU9VVF9TQ1RQX1NIVVRET1dOX0FDS19TRU5ULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0NUQV9USU1FT1VUX1NDVFBfTUFYCisgIF9fQ1RBX1RJTUVPVVRfU0NUUF9NQVgKIH07CiAjZGVmaW5lIENUQV9USU1FT1VUX1NDVFBfTUFYIChfX0NUQV9USU1FT1VUX1NDVFBfTUFYIC0gMSkKIGVudW0gY3RhdHRyX3RpbWVvdXRfaWNtcHY2IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RBX1RJTUVPVVRfSUNNUFY2X1VOU1BFQywKLSBDVEFfVElNRU9VVF9JQ01QVjZfVElNRU9VVCwKLSBfX0NUQV9USU1FT1VUX0lDTVBWNl9NQVgKKyAgQ1RBX1RJTUVPVVRfSUNNUFY2X1VOU1BFQywKKyAgQ1RBX1RJTUVPVVRfSUNNUFY2X1RJTUVPVVQsCisgIF9fQ1RBX1RJTUVPVVRfSUNNUFY2X01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUQV9USU1FT1VUX0lDTVBWNl9NQVggKF9fQ1RBX1RJTUVPVVRfSUNNUFY2X01BWCAtIDEpCiBlbnVtIGN0YXR0cl90aW1lb3V0X2dyZSB7Ci0gQ1RBX1RJTUVPVVRfR1JFX1VOU1BFQywKLSBDVEFfVElNRU9VVF9HUkVfVU5SRVBMSUVELAorICBDVEFfVElNRU9VVF9HUkVfVU5TUEVDLAorICBDVEFfVElNRU9VVF9HUkVfVU5SRVBMSUVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVEFfVElNRU9VVF9HUkVfUkVQTElFRCwKLSBfX0NUQV9USU1FT1VUX0dSRV9NQVgKKyAgQ1RBX1RJTUVPVVRfR1JFX1JFUExJRUQsCisgIF9fQ1RBX1RJTUVPVVRfR1JFX01BWAogfTsKICNkZWZpbmUgQ1RBX1RJTUVPVVRfR1JFX01BWCAoX19DVEFfVElNRU9VVF9HUkVfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfbG9nLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfbG9nLmgKaW5kZXggNTZkMjAzNi4uYzUzNDVmZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX2xvZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL25mbmV0bGlua19sb2cuaApAQCAtMjIsODggKzIyLDg4IEBACiAjaW5jbHVkZSA8bGludXgvbmV0ZmlsdGVyL25mbmV0bGluay5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmZ1bG5sX21zZ190eXBlcyB7Ci0gTkZVTE5MX01TR19QQUNLRVQsCi0gTkZVTE5MX01TR19DT05GSUcsCi0gTkZVTE5MX01TR19NQVgKKyAgTkZVTE5MX01TR19QQUNLRVQsCisgIE5GVUxOTF9NU0dfQ09ORklHLAorICBORlVMTkxfTVNHX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgbmZ1bG5sX21zZ19wYWNrZXRfaGRyIHsKLSBfX2JlMTYgaHdfcHJvdG9jb2w7Ci0gX191OCBob29rOworICBfX2JlMTYgaHdfcHJvdG9jb2w7CisgIF9fdTggaG9vazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBfcGFkOworICBfX3U4IF9wYWQ7CiB9Owogc3RydWN0IG5mdWxubF9tc2dfcGFja2V0X2h3IHsKLSBfX2JlMTYgaHdfYWRkcmxlbjsKKyAgX19iZTE2IGh3X2FkZHJsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IF9wYWQ7Ci0gX191OCBod19hZGRyWzhdOworICBfX3UxNiBfcGFkOworICBfX3U4IGh3X2FkZHJbOF07CiB9Owogc3RydWN0IG5mdWxubF9tc2dfcGFja2V0X3RpbWVzdGFtcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYWxpZ25lZF9iZTY0IHNlYzsKLSBfX2FsaWduZWRfYmU2NCB1c2VjOworICBfX2FsaWduZWRfYmU2NCBzZWM7CisgIF9fYWxpZ25lZF9iZTY0IHVzZWM7CiB9OwogZW51bSBuZnVsbmxfYXR0cl90eXBlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZVTEFfVU5TUEVDLAotIE5GVUxBX1BBQ0tFVF9IRFIsCi0gTkZVTEFfTUFSSywKLSBORlVMQV9USU1FU1RBTVAsCisgIE5GVUxBX1VOU1BFQywKKyAgTkZVTEFfUEFDS0VUX0hEUiwKKyAgTkZVTEFfTUFSSywKKyAgTkZVTEFfVElNRVNUQU1QLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlVMQV9JRklOREVYX0lOREVWLAotIE5GVUxBX0lGSU5ERVhfT1VUREVWLAotIE5GVUxBX0lGSU5ERVhfUEhZU0lOREVWLAotIE5GVUxBX0lGSU5ERVhfUEhZU09VVERFViwKKyAgTkZVTEFfSUZJTkRFWF9JTkRFViwKKyAgTkZVTEFfSUZJTkRFWF9PVVRERVYsCisgIE5GVUxBX0lGSU5ERVhfUEhZU0lOREVWLAorICBORlVMQV9JRklOREVYX1BIWVNPVVRERVYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVUxBX0hXQUREUiwKLSBORlVMQV9QQVlMT0FELAotIE5GVUxBX1BSRUZJWCwKLSBORlVMQV9VSUQsCisgIE5GVUxBX0hXQUREUiwKKyAgTkZVTEFfUEFZTE9BRCwKKyAgTkZVTEFfUFJFRklYLAorICBORlVMQV9VSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVUxBX1NFUSwKLSBORlVMQV9TRVFfR0xPQkFMLAotIE5GVUxBX0dJRCwKLSBORlVMQV9IV1RZUEUsCisgIE5GVUxBX1NFUSwKKyAgTkZVTEFfU0VRX0dMT0JBTCwKKyAgTkZVTEFfR0lELAorICBORlVMQV9IV1RZUEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GVUxBX0hXSEVBREVSLAotIE5GVUxBX0hXTEVOLAotIF9fTkZVTEFfTUFYCisgIE5GVUxBX0hXSEVBREVSLAorICBORlVMQV9IV0xFTiwKKyAgX19ORlVMQV9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORlVMQV9NQVggKF9fTkZVTEFfTUFYIC0gMSkKIGVudW0gbmZ1bG5sX21zZ19jb25maWdfY21kcyB7Ci0gTkZVTE5MX0NGR19DTURfTk9ORSwKLSBORlVMTkxfQ0ZHX0NNRF9CSU5ELAorICBORlVMTkxfQ0ZHX0NNRF9OT05FLAorICBORlVMTkxfQ0ZHX0NNRF9CSU5ELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlVMTkxfQ0ZHX0NNRF9VTkJJTkQsCi0gTkZVTE5MX0NGR19DTURfUEZfQklORCwKLSBORlVMTkxfQ0ZHX0NNRF9QRl9VTkJJTkQsCisgIE5GVUxOTF9DRkdfQ01EX1VOQklORCwKKyAgTkZVTE5MX0NGR19DTURfUEZfQklORCwKKyAgTkZVTE5MX0NGR19DTURfUEZfVU5CSU5ELAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmZ1bG5sX21zZ19jb25maWdfY21kIHsKLSBfX3U4IGNvbW1hbmQ7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBjb21tYW5kOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBuZnVsbmxfbXNnX2NvbmZpZ19tb2RlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGNvcHlfcmFuZ2U7Ci0gX191OCBjb3B5X21vZGU7Ci0gX191OCBfcGFkOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fYmUzMiBjb3B5X3JhbmdlOworICBfX3U4IGNvcHlfbW9kZTsKKyAgX191OCBfcGFkOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mdWxubF9hdHRyX2NvbmZpZyB7Ci0gTkZVTEFfQ0ZHX1VOU1BFQywKLSBORlVMQV9DRkdfQ01ELAotIE5GVUxBX0NGR19NT0RFLAorICBORlVMQV9DRkdfVU5TUEVDLAorICBORlVMQV9DRkdfQ01ELAorICBORlVMQV9DRkdfTU9ERSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZVTEFfQ0ZHX05MQlVGU0laLAotIE5GVUxBX0NGR19USU1FT1VULAotIE5GVUxBX0NGR19RVEhSRVNILAotIE5GVUxBX0NGR19GTEFHUywKKyAgTkZVTEFfQ0ZHX05MQlVGU0laLAorICBORlVMQV9DRkdfVElNRU9VVCwKKyAgTkZVTEFfQ0ZHX1FUSFJFU0gsCisgIE5GVUxBX0NGR19GTEFHUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19ORlVMQV9DRkdfTUFYCisgIF9fTkZVTEFfQ0ZHX01BWAogfTsKLSNkZWZpbmUgTkZVTEFfQ0ZHX01BWCAoX19ORlVMQV9DRkdfTUFYIC0xKQorI2RlZmluZSBORlVMQV9DRkdfTUFYIChfX05GVUxBX0NGR19NQVggLSAxKQogI2RlZmluZSBORlVMTkxfQ09QWV9OT05FIDB4MDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GVUxOTF9DT1BZX01FVEEgMHgwMQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rX3F1ZXVlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfcXVldWUuaAppbmRleCA4MTZlMzQ0Li42OTQ2MzZiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfcXVldWUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci9uZm5ldGxpbmtfcXVldWUuaApAQCAtMjIsMTAyICsyMiwxMDIgQEAKICNpbmNsdWRlIDxsaW51eC9uZXRmaWx0ZXIvbmZuZXRsaW5rLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnFubF9tc2dfdHlwZXMgewotIE5GUU5MX01TR19QQUNLRVQsCi0gTkZRTkxfTVNHX1ZFUkRJQ1QsCi0gTkZRTkxfTVNHX0NPTkZJRywKKyAgTkZRTkxfTVNHX1BBQ0tFVCwKKyAgTkZRTkxfTVNHX1ZFUkRJQ1QsCisgIE5GUU5MX01TR19DT05GSUcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GUU5MX01TR19WRVJESUNUX0JBVENILAotIE5GUU5MX01TR19NQVgKKyAgTkZRTkxfTVNHX1ZFUkRJQ1RfQkFUQ0gsCisgIE5GUU5MX01TR19NQVgKIH07CiBzdHJ1Y3QgbmZxbmxfbXNnX3BhY2tldF9oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgcGFja2V0X2lkOwotIF9fYmUxNiBod19wcm90b2NvbDsKLSBfX3U4IGhvb2s7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX19iZTMyIHBhY2tldF9pZDsKKyAgX19iZTE2IGh3X3Byb3RvY29sOworICBfX3U4IGhvb2s7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuZnFubF9tc2dfcGFja2V0X2h3IHsKLSBfX2JlMTYgaHdfYWRkcmxlbjsKLSBfX3UxNiBfcGFkOwotIF9fdTggaHdfYWRkcls4XTsKKyAgX19iZTE2IGh3X2FkZHJsZW47CisgIF9fdTE2IF9wYWQ7CisgIF9fdTggaHdfYWRkcls4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG5mcW5sX21zZ19wYWNrZXRfdGltZXN0YW1wIHsKLSBfX2FsaWduZWRfYmU2NCBzZWM7Ci0gX19hbGlnbmVkX2JlNjQgdXNlYzsKKyAgX19hbGlnbmVkX2JlNjQgc2VjOworICBfX2FsaWduZWRfYmU2NCB1c2VjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG5mcW5sX2F0dHJfdHlwZSB7Ci0gTkZRQV9VTlNQRUMsCi0gTkZRQV9QQUNLRVRfSERSLAorICBORlFBX1VOU1BFQywKKyAgTkZRQV9QQUNLRVRfSERSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlFBX1ZFUkRJQ1RfSERSLAotIE5GUUFfTUFSSywKLSBORlFBX1RJTUVTVEFNUCwKLSBORlFBX0lGSU5ERVhfSU5ERVYsCisgIE5GUUFfVkVSRElDVF9IRFIsCisgIE5GUUFfTUFSSywKKyAgTkZRQV9USU1FU1RBTVAsCisgIE5GUUFfSUZJTkRFWF9JTkRFViwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZRQV9JRklOREVYX09VVERFViwKLSBORlFBX0lGSU5ERVhfUEhZU0lOREVWLAotIE5GUUFfSUZJTkRFWF9QSFlTT1VUREVWLAotIE5GUUFfSFdBRERSLAorICBORlFBX0lGSU5ERVhfT1VUREVWLAorICBORlFBX0lGSU5ERVhfUEhZU0lOREVWLAorICBORlFBX0lGSU5ERVhfUEhZU09VVERFViwKKyAgTkZRQV9IV0FERFIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GUUFfUEFZTE9BRCwKLSBORlFBX0NULAotIE5GUUFfQ1RfSU5GTywKLSBORlFBX0NBUF9MRU4sCisgIE5GUUFfUEFZTE9BRCwKKyAgTkZRQV9DVCwKKyAgTkZRQV9DVF9JTkZPLAorICBORlFBX0NBUF9MRU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GUUFfU0tCX0lORk8sCi0gTkZRQV9FWFAsCi0gTkZRQV9VSUQsCi0gTkZRQV9HSUQsCisgIE5GUUFfU0tCX0lORk8sCisgIE5GUUFfRVhQLAorICBORlFBX1VJRCwKKyAgTkZRQV9HSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkZRQV9NQVgKKyAgX19ORlFBX01BWAogfTsKICNkZWZpbmUgTkZRQV9NQVggKF9fTkZRQV9NQVggLSAxKQogc3RydWN0IG5mcW5sX21zZ192ZXJkaWN0X2hkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiB2ZXJkaWN0OwotIF9fYmUzMiBpZDsKKyAgX19iZTMyIHZlcmRpY3Q7CisgIF9fYmUzMiBpZDsKIH07CiBlbnVtIG5mcW5sX21zZ19jb25maWdfY21kcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GUU5MX0NGR19DTURfTk9ORSwKLSBORlFOTF9DRkdfQ01EX0JJTkQsCi0gTkZRTkxfQ0ZHX0NNRF9VTkJJTkQsCi0gTkZRTkxfQ0ZHX0NNRF9QRl9CSU5ELAorICBORlFOTF9DRkdfQ01EX05PTkUsCisgIE5GUU5MX0NGR19DTURfQklORCwKKyAgTkZRTkxfQ0ZHX0NNRF9VTkJJTkQsCisgIE5GUU5MX0NGR19DTURfUEZfQklORCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZRTkxfQ0ZHX0NNRF9QRl9VTkJJTkQsCisgIE5GUU5MX0NGR19DTURfUEZfVU5CSU5ELAogfTsKIHN0cnVjdCBuZnFubF9tc2dfY29uZmlnX2NtZCB7Ci0gX191OCBjb21tYW5kOworICBfX3U4IGNvbW1hbmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggX3BhZDsKLSBfX2JlMTYgcGY7CisgIF9fdTggX3BhZDsKKyAgX19iZTE2IHBmOwogfTsKIGVudW0gbmZxbmxfY29uZmlnX21vZGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlFOTF9DT1BZX05PTkUsCi0gTkZRTkxfQ09QWV9NRVRBLAotIE5GUU5MX0NPUFlfUEFDS0VULAorICBORlFOTF9DT1BZX05PTkUsCisgIE5GUU5MX0NPUFlfTUVUQSwKKyAgTkZRTkxfQ09QWV9QQUNLRVQsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuZnFubF9tc2dfY29uZmlnX3BhcmFtcyB7Ci0gX19iZTMyIGNvcHlfcmFuZ2U7Ci0gX191OCBjb3B5X21vZGU7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX19iZTMyIGNvcHlfcmFuZ2U7CisgIF9fdTggY29weV9tb2RlOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mcW5sX2F0dHJfY29uZmlnIHsKLSBORlFBX0NGR19VTlNQRUMsCi0gTkZRQV9DRkdfQ01ELAotIE5GUUFfQ0ZHX1BBUkFNUywKKyAgTkZRQV9DRkdfVU5TUEVDLAorICBORlFBX0NGR19DTUQsCisgIE5GUUFfQ0ZHX1BBUkFNUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZRQV9DRkdfUVVFVUVfTUFYTEVOLAotIE5GUUFfQ0ZHX01BU0ssCi0gTkZRQV9DRkdfRkxBR1MsCi0gX19ORlFBX0NGR19NQVgKKyAgTkZRQV9DRkdfUVVFVUVfTUFYTEVOLAorICBORlFBX0NGR19NQVNLLAorICBORlFBX0NGR19GTEFHUywKKyAgX19ORlFBX0NGR19NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBORlFBX0NGR19NQVggKF9fTkZRQV9DRkdfTUFYLTEpCisjZGVmaW5lIE5GUUFfQ0ZHX01BWCAoX19ORlFBX0NGR19NQVggLSAxKQogI2RlZmluZSBORlFBX0NGR19GX0ZBSUxfT1BFTiAoMSA8PCAwKQogI2RlZmluZSBORlFBX0NGR19GX0NPTk5UUkFDSyAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3hfdGFibGVzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94X3RhYmxlcy5oCmluZGV4IDczNTVkMDEuLmFhYjMyYmIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3hfdGFibGVzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveF90YWJsZXMuaApAQCAtMjYsNjcgKzI2LDY5IEBACiAjZGVmaW5lIFhUX1RBQkxFX01BWE5BTUVMRU4gMzIKIHN0cnVjdCB4dF9lbnRyeV9tYXRjaCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBzdHJ1Y3QgewotIF9fdTE2IG1hdGNoX3NpemU7Ci0gY2hhciBuYW1lW1hUX0VYVEVOU0lPTl9NQVhOQU1FTEVOXTsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICBfX3UxNiBtYXRjaF9zaXplOworICAgICAgY2hhciBuYW1lW1hUX0VYVEVOU0lPTl9NQVhOQU1FTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXZpc2lvbjsKLSB9IHVzZXI7Ci0gc3RydWN0IHsKLSBfX3UxNiBtYXRjaF9zaXplOworICAgICAgX191OCByZXZpc2lvbjsKKyAgICB9IHVzZXI7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTE2IG1hdGNoX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4dF9tYXRjaCAqbWF0Y2g7Ci0gfSBrZXJuZWw7Ci0gX191MTYgbWF0Y2hfc2l6ZTsKLSB9IHU7CisgICAgICBzdHJ1Y3QgeHRfbWF0Y2ggKiBtYXRjaDsKKyAgICB9IGtlcm5lbDsKKyAgICBfX3UxNiBtYXRjaF9zaXplOworICB9IHU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZGF0YVswXTsKKyAgdW5zaWduZWQgY2hhciBkYXRhWzBdOwogfTsKIHN0cnVjdCB4dF9lbnRyeV90YXJnZXQgewotIHVuaW9uIHsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fdTE2IHRhcmdldF9zaXplOwotIGNoYXIgbmFtZVtYVF9FWFRFTlNJT05fTUFYTkFNRUxFTl07Ci0gX191OCByZXZpc2lvbjsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MTYgdGFyZ2V0X3NpemU7CisgICAgICBjaGFyIG5hbWVbWFRfRVhURU5TSU9OX01BWE5BTUVMRU5dOworICAgICAgX191OCByZXZpc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSB1c2VyOwotIHN0cnVjdCB7Ci0gX191MTYgdGFyZ2V0X3NpemU7Ci0gc3RydWN0IHh0X3RhcmdldCAqdGFyZ2V0OworICAgIH0gdXNlcjsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MTYgdGFyZ2V0X3NpemU7CisgICAgICBzdHJ1Y3QgeHRfdGFyZ2V0ICogdGFyZ2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGtlcm5lbDsKLSBfX3UxNiB0YXJnZXRfc2l6ZTsKLSB9IHU7Ci0gdW5zaWduZWQgY2hhciBkYXRhWzBdOworICAgIH0ga2VybmVsOworICAgIF9fdTE2IHRhcmdldF9zaXplOworICB9IHU7CisgIHVuc2lnbmVkIGNoYXIgZGF0YVswXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBYVF9UQVJHRVRfSU5JVChfX25hbWUsIF9fc2l6ZSkgIHsgICAudGFyZ2V0LnUudXNlciA9IHsgICAudGFyZ2V0X3NpemUgPSBYVF9BTElHTihfX3NpemUpLCAgIC5uYW1lID0gX19uYW1lLCAgIH0sICB9CisjZGVmaW5lIFhUX1RBUkdFVF9JTklUKF9fbmFtZSxfX3NpemUpIFwKK3sudGFyZ2V0LnUudXNlciA9IHsudGFyZ2V0X3NpemUgPSBYVF9BTElHTihfX3NpemUpLC5uYW1lID0gX19uYW1lLCB9LCBcCit9CiBzdHJ1Y3QgeHRfc3RhbmRhcmRfdGFyZ2V0IHsKLSBzdHJ1Y3QgeHRfZW50cnlfdGFyZ2V0IHRhcmdldDsKKyAgc3RydWN0IHh0X2VudHJ5X3RhcmdldCB0YXJnZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB2ZXJkaWN0OworICBpbnQgdmVyZGljdDsKIH07CiBzdHJ1Y3QgeHRfZXJyb3JfdGFyZ2V0IHsKLSBzdHJ1Y3QgeHRfZW50cnlfdGFyZ2V0IHRhcmdldDsKKyAgc3RydWN0IHh0X2VudHJ5X3RhcmdldCB0YXJnZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgZXJyb3JuYW1lW1hUX0ZVTkNUSU9OX01BWE5BTUVMRU5dOworICBjaGFyIGVycm9ybmFtZVtYVF9GVU5DVElPTl9NQVhOQU1FTEVOXTsKIH07CiBzdHJ1Y3QgeHRfZ2V0X3JldmlzaW9uIHsKLSBjaGFyIG5hbWVbWFRfRVhURU5TSU9OX01BWE5BTUVMRU5dOworICBjaGFyIG5hbWVbWFRfRVhURU5TSU9OX01BWE5BTUVMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJldmlzaW9uOworICBfX3U4IHJldmlzaW9uOwogfTsKICNkZWZpbmUgWFRfQ09OVElOVUUgMHhGRkZGRkZGRgotI2RlZmluZSBYVF9SRVRVUk4gKC1ORl9SRVBFQVQgLSAxKQorI2RlZmluZSBYVF9SRVRVUk4gKC0gTkZfUkVQRUFUIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgX3h0X2FsaWduIHsKLSBfX3U4IHU4OwotIF9fdTE2IHUxNjsKLSBfX3UzMiB1MzI7CisgIF9fdTggdTg7CisgIF9fdTE2IHUxNjsKKyAgX191MzIgdTMyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1NjQ7CisgIF9fdTY0IHU2NDsKIH07CiAjZGVmaW5lIFhUX0FMSUdOKHMpIF9fQUxJR05fS0VSTkVMKChzKSwgX19hbGlnbm9mX18oc3RydWN0IF94dF9hbGlnbikpCiAjZGVmaW5lIFhUX1NUQU5EQVJEX1RBUkdFVCAiIgpAQCAtOTYsMjAgKzk4LDI0IEBACiAjZGVmaW5lIEFERF9DT1VOVEVSKGMsYixwKSBkbyB7IChjKS5iY250ICs9IChiKTsgKGMpLnBjbnQgKz0gKHApOyB9IHdoaWxlKDApCiBzdHJ1Y3QgeHRfY291bnRlcnMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBwY250LCBiY250OworICBfX3U2NCBwY250LCBiY250OwogfTsKIHN0cnVjdCB4dF9jb3VudGVyc19pbmZvIHsKLSBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07CisgIGNoYXIgbmFtZVtYVF9UQUJMRV9NQVhOQU1FTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG51bV9jb3VudGVyczsKLSBzdHJ1Y3QgeHRfY291bnRlcnMgY291bnRlcnNbMF07CisgIHVuc2lnbmVkIGludCBudW1fY291bnRlcnM7CisgIHN0cnVjdCB4dF9jb3VudGVycyBjb3VudGVyc1swXTsKIH07CiAjZGVmaW5lIFhUX0lOVl9QUk9UTyAweDQwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBYVF9NQVRDSF9JVEVSQVRFKHR5cGUsIGUsIGZuLCBhcmdzLi4uKSAgKHsgICB1bnNpZ25lZCBpbnQgX19pOyAgIGludCBfX3JldCA9IDA7ICAgc3RydWN0IHh0X2VudHJ5X21hdGNoICpfX207ICAgICBmb3IgKF9faSA9IHNpemVvZih0eXBlKTsgICBfX2kgPCAoZSktPnRhcmdldF9vZmZzZXQ7ICAgX19pICs9IF9fbS0+dS5tYXRjaF9zaXplKSB7ICAgX19tID0gKHZvaWQgKillICsgX19pOyAgICAgX19yZXQgPSBmbihfX20gLCAjIyBhcmdzKTsgICBpZiAoX19yZXQgIT0gMCkgICBicmVhazsgICB9ICAgX19yZXQ7ICB9KQotI2RlZmluZSBYVF9FTlRSWV9JVEVSQVRFX0NPTlRJTlVFKHR5cGUsIGVudHJpZXMsIHNpemUsIG4sIGZuLCBhcmdzLi4uKSAgKHsgICB1bnNpZ25lZCBpbnQgX19pLCBfX247ICAgaW50IF9fcmV0ID0gMDsgICB0eXBlICpfX2VudHJ5OyAgICAgZm9yIChfX2kgPSAwLCBfX24gPSAwOyBfX2kgPCAoc2l6ZSk7ICAgX19pICs9IF9fZW50cnktPm5leHRfb2Zmc2V0LCBfX24rKykgeyAgIF9fZW50cnkgPSAodm9pZCAqKShlbnRyaWVzKSArIF9faTsgICBpZiAoX19uIDwgbikgICBjb250aW51ZTsgICAgIF9fcmV0ID0gZm4oX19lbnRyeSAsICMjIGFyZ3MpOyAgIGlmIChfX3JldCAhPSAwKSAgIGJyZWFrOyAgIH0gICBfX3JldDsgIH0pCi0jZGVmaW5lIFhUX0VOVFJZX0lURVJBVEUodHlwZSwgZW50cmllcywgc2l6ZSwgZm4sIGFyZ3MuLi4pICAgWFRfRU5UUllfSVRFUkFURV9DT05USU5VRSh0eXBlLCBlbnRyaWVzLCBzaXplLCAwLCBmbiwgYXJncykKLSNkZWZpbmUgeHRfZW50cnlfZm9yZWFjaChwb3MsIGVoZWFkLCBlc2l6ZSkgICBmb3IgKChwb3MpID0gKHR5cGVvZihwb3MpKShlaGVhZCk7ICAgKHBvcykgPCAodHlwZW9mKHBvcykpKChjaGFyICopKGVoZWFkKSArIChlc2l6ZSkpOyAgIChwb3MpID0gKHR5cGVvZihwb3MpKSgoY2hhciAqKShwb3MpICsgKHBvcyktPm5leHRfb2Zmc2V0KSkKKyNkZWZpbmUgWFRfTUFUQ0hfSVRFUkFURSh0eXBlLGUsZm4sYXJncy4uLikgXAorKHsgdW5zaWduZWQgaW50IF9faTsgaW50IF9fcmV0ID0gMDsgc3RydWN0IHh0X2VudHJ5X21hdGNoICogX19tOyBmb3IoX19pID0gc2l6ZW9mKHR5cGUpOyBfX2kgPCAoZSktPnRhcmdldF9vZmZzZXQ7IF9faSArPSBfX20tPnUubWF0Y2hfc2l6ZSkgeyBfX20gPSAodm9pZCAqKSBlICsgX19pOyBfX3JldCA9IGZuKF9fbSwgIyNhcmdzKTsgaWYoX19yZXQgIT0gMCkgYnJlYWs7IH0gX19yZXQ7IFwKK30pCisjZGVmaW5lIFhUX0VOVFJZX0lURVJBVEVfQ09OVElOVUUodHlwZSxlbnRyaWVzLHNpemUsbixmbixhcmdzLi4uKSBcCisoeyB1bnNpZ25lZCBpbnQgX19pLCBfX247IGludCBfX3JldCA9IDA7IHR5cGUgKiBfX2VudHJ5OyBmb3IoX19pID0gMCwgX19uID0gMDsgX19pIDwgKHNpemUpOyBfX2kgKz0gX19lbnRyeS0+bmV4dF9vZmZzZXQsIF9fbiArKykgeyBfX2VudHJ5ID0gKHZvaWQgKikgKGVudHJpZXMpICsgX19pOyBpZihfX24gPCBuKSBjb250aW51ZTsgX19yZXQgPSBmbihfX2VudHJ5LCAjI2FyZ3MpOyBpZihfX3JldCAhPSAwKSBicmVhazsgfSBfX3JldDsgXAorfSkKKyNkZWZpbmUgWFRfRU5UUllfSVRFUkFURSh0eXBlLGVudHJpZXMsc2l6ZSxmbixhcmdzLi4uKSBYVF9FTlRSWV9JVEVSQVRFX0NPTlRJTlVFKHR5cGUsIGVudHJpZXMsIHNpemUsIDAsIGZuLCBhcmdzKQorI2RlZmluZSB4dF9lbnRyeV9mb3JlYWNoKHBvcyxlaGVhZCxlc2l6ZSkgZm9yKChwb3MpID0gKHR5cGVvZihwb3MpKSAoZWhlYWQpOyAocG9zKSA8ICh0eXBlb2YocG9zKSkgKChjaGFyICopIChlaGVhZCkgKyAoZXNpemUpKTsgKHBvcykgPSAodHlwZW9mKHBvcykpICgoY2hhciAqKSAocG9zKSArIChwb3MpLT5uZXh0X29mZnNldCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSB4dF9lbWF0Y2hfZm9yZWFjaChwb3MsIGVudHJ5KSAgIGZvciAoKHBvcykgPSAoc3RydWN0IHh0X2VudHJ5X21hdGNoICopZW50cnktPmVsZW1zOyAgIChwb3MpIDwgKHN0cnVjdCB4dF9lbnRyeV9tYXRjaCAqKSgoY2hhciAqKShlbnRyeSkgKyAgIChlbnRyeSktPnRhcmdldF9vZmZzZXQpOyAgIChwb3MpID0gKHN0cnVjdCB4dF9lbnRyeV9tYXRjaCAqKSgoY2hhciAqKShwb3MpICsgICAocG9zKS0+dS5tYXRjaF9zaXplKSkKKyNkZWZpbmUgeHRfZW1hdGNoX2ZvcmVhY2gocG9zLGVudHJ5KSBmb3IoKHBvcykgPSAoc3RydWN0IHh0X2VudHJ5X21hdGNoICopIGVudHJ5LT5lbGVtczsgKHBvcykgPCAoc3RydWN0IHh0X2VudHJ5X21hdGNoICopICgoY2hhciAqKSAoZW50cnkpICsgKGVudHJ5KS0+dGFyZ2V0X29mZnNldCk7IChwb3MpID0gKHN0cnVjdCB4dF9lbnRyeV9tYXRjaCAqKSAoKGNoYXIgKikgKHBvcykgKyAocG9zKS0+dS5tYXRjaF9zaXplKSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQVVESVQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0FVRElULmgKaW5kZXggYjRkOTUxMS4uYmIxYmUyZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQVVESVQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9BVURJVC5oCkBAIC0yMSwxNSArMjEsMTUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0FVRElUX1RZUEVfQUNDRVBUID0gMCwKLSBYVF9BVURJVF9UWVBFX0RST1AsCi0gWFRfQVVESVRfVFlQRV9SRUpFQ1QsCi0gX19YVF9BVURJVF9UWVBFX01BWCwKKyAgWFRfQVVESVRfVFlQRV9BQ0NFUFQgPSAwLAorICBYVF9BVURJVF9UWVBFX0RST1AsCisgIFhUX0FVRElUX1RZUEVfUkVKRUNULAorICBfX1hUX0FVRElUX1RZUEVfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFhUX0FVRElUX1RZUEVfTUFYIChfX1hUX0FVRElUX1RZUEVfTUFYIC0gMSkKIHN0cnVjdCB4dF9hdWRpdF9pbmZvIHsKLSBfX3U4IHR5cGU7CisgIF9fdTggdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9DSEVDS1NVTS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQ0hFQ0tTVU0uaAppbmRleCAzYzcwZjFlLi4zY2U3MTUzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9DSEVDS1NVTS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0NIRUNLU1VNLmgKQEAgLTIyLDcgKzIyLDcgQEAKICNkZWZpbmUgWFRfQ0hFQ0tTVU1fT1BfRklMTCAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHh0X0NIRUNLU1VNX2luZm8gewotIF9fdTggb3BlcmF0aW9uOworICBfX3U4IG9wZXJhdGlvbjsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9DTEFTU0lGWS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQ0xBU1NJRlkuaAppbmRleCA0NGUyNjJmLi44MTQ1NGI1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9DTEFTU0lGWS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0NMQVNTSUZZLmgKQEAgLTIxLDYgKzIxLDYgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHh0X2NsYXNzaWZ5X3RhcmdldF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcHJpb3JpdHk7CisgIF9fdTMyIHByaW9yaXR5OwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQ09OTlNFQ01BUksuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0NPTk5TRUNNQVJLLmgKaW5kZXggMTA1Zjk0My4uYzk5ZDAxZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQ09OTlNFQ01BUksuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9DT05OU0VDTUFSSy5oCkBAIC0yMSwxMSArMjEsMTEgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENPTk5TRUNNQVJLX1NBVkUgPSAxLAotIENPTk5TRUNNQVJLX1JFU1RPUkUsCisgIENPTk5TRUNNQVJLX1NBVkUgPSAxLAorICBDT05OU0VDTUFSS19SRVNUT1JFLAogfTsKIHN0cnVjdCB4dF9jb25uc2VjbWFya190YXJnZXRfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbW9kZTsKKyAgX191OCBtb2RlOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQ1QuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0NULmgKaW5kZXggZmRmZWY1ZS4uMDNkMjA5MyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfQ1QuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9DVC5oCkBAIC0yMSwzMCArMjEsMzAgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0NUX05PVFJBQ0sgPSAxIDw8IDAsCi0gWFRfQ1RfTk9UUkFDS19BTElBUyA9IDEgPDwgMSwKLSBYVF9DVF9NQVNLID0gWFRfQ1RfTk9UUkFDSyB8IFhUX0NUX05PVFJBQ0tfQUxJQVMsCisgIFhUX0NUX05PVFJBQ0sgPSAxIDw8IDAsCisgIFhUX0NUX05PVFJBQ0tfQUxJQVMgPSAxIDw8IDEsCisgIFhUX0NUX01BU0sgPSBYVF9DVF9OT1RSQUNLIHwgWFRfQ1RfTk9UUkFDS19BTElBUywKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHh0X2N0X3RhcmdldF9pbmZvIHsKLSBfX3UxNiBmbGFnczsKLSBfX3UxNiB6b25lOwotIF9fdTMyIGN0X2V2ZW50czsKKyAgX191MTYgZmxhZ3M7CisgIF9fdTE2IHpvbmU7CisgIF9fdTMyIGN0X2V2ZW50czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZXhwX2V2ZW50czsKLSBjaGFyIGhlbHBlclsxNl07Ci0gc3RydWN0IG5mX2Nvbm4gKmN0IF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKKyAgX191MzIgZXhwX2V2ZW50czsKKyAgY2hhciBoZWxwZXJbMTZdOworICBzdHJ1Y3QgbmZfY29ubiAqIGN0IF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHh0X2N0X3RhcmdldF9pbmZvX3YxIHsKLSBfX3UxNiBmbGFnczsKLSBfX3UxNiB6b25lOwotIF9fdTMyIGN0X2V2ZW50czsKKyAgX191MTYgZmxhZ3M7CisgIF9fdTE2IHpvbmU7CisgIF9fdTMyIGN0X2V2ZW50czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZXhwX2V2ZW50czsKLSBjaGFyIGhlbHBlclsxNl07Ci0gY2hhciB0aW1lb3V0WzMyXTsKLSBzdHJ1Y3QgbmZfY29ubiAqY3QgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICBfX3UzMiBleHBfZXZlbnRzOworICBjaGFyIGhlbHBlclsxNl07CisgIGNoYXIgdGltZW91dFszMl07CisgIHN0cnVjdCBuZl9jb25uICogY3QgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0RTQ1AuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0RTQ1AuaAppbmRleCBjMTIyNzA3Li44MGYyZjY1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9EU0NQLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfRFNDUC5oCkBAIC0yMiwxMiArMjIsMTIgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4dF9EU0NQX2luZm8gewotIF9fdTggZHNjcDsKKyAgX191OCBkc2NwOwogfTsKIHN0cnVjdCB4dF90b3NfdGFyZ2V0X2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHRvc192YWx1ZTsKLSBfX3U4IHRvc19tYXNrOworICBfX3U4IHRvc192YWx1ZTsKKyAgX191OCB0b3NfbWFzazsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9ITUFSSy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfSE1BUksuaAppbmRleCBhZGQwMzAyLi5kM2IyYWI0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9ITUFSSy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0hNQVJLLmgKQEAgLTIxLDU0ICsyMSw1NCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfSE1BUktfU0FERFJfTUFTSywKLSBYVF9ITUFSS19EQUREUl9NQVNLLAotIFhUX0hNQVJLX1NQSSwKLSBYVF9ITUFSS19TUElfTUFTSywKKyAgWFRfSE1BUktfU0FERFJfTUFTSywKKyAgWFRfSE1BUktfREFERFJfTUFTSywKKyAgWFRfSE1BUktfU1BJLAorICBYVF9ITUFSS19TUElfTUFTSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfSE1BUktfU1BPUlQsCi0gWFRfSE1BUktfRFBPUlQsCi0gWFRfSE1BUktfU1BPUlRfTUFTSywKLSBYVF9ITUFSS19EUE9SVF9NQVNLLAorICBYVF9ITUFSS19TUE9SVCwKKyAgWFRfSE1BUktfRFBPUlQsCisgIFhUX0hNQVJLX1NQT1JUX01BU0ssCisgIFhUX0hNQVJLX0RQT1JUX01BU0ssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0hNQVJLX1BST1RPX01BU0ssCi0gWFRfSE1BUktfUk5ELAotIFhUX0hNQVJLX01PRFVMVVMsCi0gWFRfSE1BUktfT0ZGU0VULAorICBYVF9ITUFSS19QUk9UT19NQVNLLAorICBYVF9ITUFSS19STkQsCisgIFhUX0hNQVJLX01PRFVMVVMsCisgIFhUX0hNQVJLX09GRlNFVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfSE1BUktfQ1QsCi0gWFRfSE1BUktfTUVUSE9EX0wzLAotIFhUX0hNQVJLX01FVEhPRF9MM180LAorICBYVF9ITUFSS19DVCwKKyAgWFRfSE1BUktfTUVUSE9EX0wzLAorICBYVF9ITUFSS19NRVRIT0RfTDNfNCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYVF9ITUFSS19GTEFHKGZsYWcpICgxIDw8IGZsYWcpCiB1bmlvbiBobWFya19wb3J0cyB7Ci0gc3RydWN0IHsKLSBfX3UxNiBzcmM7CisgIHN0cnVjdCB7CisgICAgX191MTYgc3JjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBkc3Q7Ci0gfSBwMTY7Ci0gc3RydWN0IHsKLSBfX2JlMTYgc3JjOworICAgIF9fdTE2IGRzdDsKKyAgfSBwMTY7CisgIHN0cnVjdCB7CisgICAgX19iZTE2IHNyYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGRzdDsKLSB9IGIxNjsKLSBfX3UzMiB2MzI7Ci0gX19iZTMyIGIzMjsKKyAgICBfX2JlMTYgZHN0OworICB9IGIxNjsKKyAgX191MzIgdjMyOworICBfX2JlMzIgYjMyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeHRfaG1hcmtfaW5mbyB7Ci0gdW5pb24gbmZfaW5ldF9hZGRyIHNyY19tYXNrOwotIHVuaW9uIG5mX2luZXRfYWRkciBkc3RfbWFzazsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIHNyY19tYXNrOworICB1bmlvbiBuZl9pbmV0X2FkZHIgZHN0X21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIGhtYXJrX3BvcnRzIHBvcnRfbWFzazsKLSB1bmlvbiBobWFya19wb3J0cyBwb3J0X3NldDsKLSBfX3UzMiBmbGFnczsKLSBfX3UxNiBwcm90b19tYXNrOworICB1bmlvbiBobWFya19wb3J0cyBwb3J0X21hc2s7CisgIHVuaW9uIGhtYXJrX3BvcnRzIHBvcnRfc2V0OworICBfX3UzMiBmbGFnczsKKyAgX191MTYgcHJvdG9fbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaGFzaHJuZDsKLSBfX3UzMiBobW9kdWx1czsKLSBfX3UzMiBob2Zmc2V0OworICBfX3UzMiBoYXNocm5kOworICBfX3UzMiBobW9kdWx1czsKKyAgX191MzIgaG9mZnNldDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9JRExFVElNRVIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0lETEVUSU1FUi5oCmluZGV4IDFhMmMwODguLjlkZjZjNzYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0lETEVUSU1FUi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X0lETEVUSU1FUi5oCkBAIC0yMiw5ICsyMiw5IEBACiAjZGVmaW5lIE1BWF9JRExFVElNRVJfTEFCRUxfU0laRSAyOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpZGxldGltZXJfdGdfaW5mbyB7Ci0gX191MzIgdGltZW91dDsKLSBjaGFyIGxhYmVsW01BWF9JRExFVElNRVJfTEFCRUxfU0laRV07Ci0gc3RydWN0IGlkbGV0aW1lcl90ZyAqdGltZXIgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICBfX3UzMiB0aW1lb3V0OworICBjaGFyIGxhYmVsW01BWF9JRExFVElNRVJfTEFCRUxfU0laRV07CisgIHN0cnVjdCBpZGxldGltZXJfdGcgKiB0aW1lciBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfTEVELmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9MRUQuaAppbmRleCA2MDBlZGY0Li41M2I1M2ViIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9MRUQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9MRUQuaApAQCAtMjEsMTAgKzIxLDEwIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB4dF9sZWRfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgaWRbMjddOwotIF9fdTggYWx3YXlzX2JsaW5rOwotIF9fdTMyIGRlbGF5OwotIHZvaWQgKmludGVybmFsX2RhdGEgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICBjaGFyIGlkWzI3XTsKKyAgX191OCBhbHdheXNfYmxpbms7CisgIF9fdTMyIGRlbGF5OworICB2b2lkICogaW50ZXJuYWxfZGF0YSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfTE9HLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9MT0cuaAppbmRleCA1NjEwZWFkLi40N2FhZTNlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9MT0cuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9MT0cuaApAQCAtMjgsOSArMjgsOSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWFRfTE9HX01BU0sgMHgyZgogc3RydWN0IHh0X2xvZ19pbmZvIHsKLSB1bnNpZ25lZCBjaGFyIGxldmVsOwotIHVuc2lnbmVkIGNoYXIgbG9nZmxhZ3M7CisgIHVuc2lnbmVkIGNoYXIgbGV2ZWw7CisgIHVuc2lnbmVkIGNoYXIgbG9nZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcHJlZml4WzMwXTsKKyAgY2hhciBwcmVmaXhbMzBdOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfTkZMT0cuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X05GTE9HLmgKaW5kZXggYThkMGNmZi4uYzc4MWZjZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfTkZMT0cuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9ORkxPRy5oCkBAIC0yNCwxMyArMjQsMTMgQEAKICNkZWZpbmUgWFRfTkZMT0dfREVGQVVMVF9USFJFU0hPTEQgMAogI2RlZmluZSBYVF9ORkxPR19NQVNLIDB4MAogc3RydWN0IHh0X25mbG9nX2luZm8gewotIF9fdTMyIGxlbjsKKyAgX191MzIgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBncm91cDsKLSBfX3UxNiB0aHJlc2hvbGQ7Ci0gX191MTYgZmxhZ3M7Ci0gX191MTYgcGFkOworICBfX3UxNiBncm91cDsKKyAgX191MTYgdGhyZXNob2xkOworICBfX3UxNiBmbGFnczsKKyAgX191MTYgcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHByZWZpeFs2NF07CisgIGNoYXIgcHJlZml4WzY0XTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X05GUVVFVUUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X05GUVVFVUUuaAppbmRleCBiOWFlY2ExLi5jZTQ4NzI2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9ORlFVRVVFLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfTkZRVUVVRS5oCkBAIC0yMSwyNCArMjEsMjQgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHh0X05GUV9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcXVldWVudW07CisgIF9fdTE2IHF1ZXVlbnVtOwogfTsKIHN0cnVjdCB4dF9ORlFfaW5mb192MSB7Ci0gX191MTYgcXVldWVudW07CisgIF9fdTE2IHF1ZXVlbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBxdWV1ZXNfdG90YWw7CisgIF9fdTE2IHF1ZXVlc190b3RhbDsKIH07CiBzdHJ1Y3QgeHRfTkZRX2luZm9fdjIgewotIF9fdTE2IHF1ZXVlbnVtOworICBfX3UxNiBxdWV1ZW51bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcXVldWVzX3RvdGFsOwotIF9fdTE2IGJ5cGFzczsKKyAgX191MTYgcXVldWVzX3RvdGFsOworICBfX3UxNiBieXBhc3M7CiB9Owogc3RydWN0IHh0X05GUV9pbmZvX3YzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcXVldWVudW07Ci0gX191MTYgcXVldWVzX3RvdGFsOwotIF9fdTE2IGZsYWdzOworICBfX3UxNiBxdWV1ZW51bTsKKyAgX191MTYgcXVldWVzX3RvdGFsOworICBfX3UxNiBmbGFnczsKICNkZWZpbmUgTkZRX0ZMQUdfQllQQVNTIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GUV9GTEFHX0NQVV9GQU5PVVQgMHgwMgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfUkFURUVTVC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfUkFURUVTVC5oCmluZGV4IDE5OTdlZmEuLjYzZGQyYjYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1JBVEVFU1QuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9SQVRFRVNULmgKQEAgLTIxLDEwICsyMSwxMCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgeHRfcmF0ZWVzdF90YXJnZXRfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVtJRk5BTVNJWl07Ci0gX19zOCBpbnRlcnZhbDsKLSBfX3U4IGV3bWFfbG9nOwotIHN0cnVjdCB4dF9yYXRlZXN0ICplc3QgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICBjaGFyIG5hbWVbSUZOQU1TSVpdOworICBfX3M4IGludGVydmFsOworICBfX3U4IGV3bWFfbG9nOworICBzdHJ1Y3QgeHRfcmF0ZWVzdCAqIGVzdCBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfU0VDTUFSSy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfU0VDTUFSSy5oCmluZGV4IDllZTAwNGQuLjA2YTRhMDUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1NFQ01BUksuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9TRUNNQVJLLmgKQEAgLTIzLDkgKzIzLDkgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFQ01BUktfU0VDQ1RYX01BWCAyNTYKIHN0cnVjdCB4dF9zZWNtYXJrX3RhcmdldF9pbmZvIHsKLSBfX3U4IG1vZGU7Ci0gX191MzIgc2VjaWQ7CisgIF9fdTggbW9kZTsKKyAgX191MzIgc2VjaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgc2VjY3R4W1NFQ01BUktfU0VDQ1RYX01BWF07CisgIGNoYXIgc2VjY3R4W1NFQ01BUktfU0VDQ1RYX01BWF07CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9TWU5QUk9YWS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfU1lOUFJPWFkuaAppbmRleCBiM2NkMWZmLi5kYmRiNzRhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9TWU5QUk9YWS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1NZTlBST1hZLmgKQEAgLTI2LDkgKzI2LDkgQEAKICNkZWZpbmUgWFRfU1lOUFJPWFlfT1BUX0VDTiAweDEwCiBzdHJ1Y3QgeHRfc3lucHJveHlfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggb3B0aW9uczsKLSBfX3U4IHdzY2FsZTsKLSBfX3UxNiBtc3M7CisgIF9fdTggb3B0aW9uczsKKyAgX191OCB3c2NhbGU7CisgIF9fdTE2IG1zczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9UQ1BNU1MuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1RDUE1TUy5oCmluZGV4IDkxYzI3MzcuLjNjMjVjNDMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1RDUE1TUy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1RDUE1TUy5oCkBAIC0yMSw3ICsyMSw3IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB4dF90Y3Btc3NfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG1zczsKKyAgX191MTYgbXNzOwogfTsKICNkZWZpbmUgWFRfVENQTVNTX0NMQU1QX1BNVFUgMHhmZmZmCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1RDUE9QVFNUUklQLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9UQ1BPUFRTVFJJUC5oCmluZGV4IDZhNzBkMDYuLmFjZjU3N2YgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1RDUE9QVFNUUklQLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfVENQT1BUU1RSSVAuaApAQCAtMTksMTEgKzE5LDExIEBACiAjaWZuZGVmIF9YVF9UQ1BPUFRTVFJJUF9ICiAjZGVmaW5lIF9YVF9UQ1BPUFRTVFJJUF9ICiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KLSNkZWZpbmUgdGNwb3B0c3RyaXBfc2V0X2JpdChibWFwLCBpZHgpICAgKGJtYXBbKGlkeCkgPj4gNV0gfD0gMVUgPDwgKGlkeCAmIDMxKSkKKyNkZWZpbmUgdGNwb3B0c3RyaXBfc2V0X2JpdChibWFwLGlkeCkgKGJtYXBbKGlkeCkgPj4gNV0gfD0gMVUgPDwgKGlkeCAmIDMxKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIHRjcG9wdHN0cmlwX3Rlc3RfYml0KGJtYXAsIGlkeCkgICAoKCgxVSA8PCAoaWR4ICYgMzEpKSAmIGJtYXBbKGlkeCkgPj4gNV0pICE9IDApCisjZGVmaW5lIHRjcG9wdHN0cmlwX3Rlc3RfYml0KGJtYXAsaWR4KSAoKCgxVSA8PCAoaWR4ICYgMzEpKSAmIGJtYXBbKGlkeCkgPj4gNV0pICE9IDApCiBzdHJ1Y3QgeHRfdGNwb3B0c3RyaXBfdGFyZ2V0X2luZm8gewotIF9fdTMyIHN0cmlwX2JtYXBbOF07CisgIF9fdTMyIHN0cmlwX2JtYXBbOF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfVEVFLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9URUUuaAppbmRleCAwMDBiNzg2Li5kZGY2YTE4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9URUUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9URUUuaApAQCAtMTksMTAgKzE5LDEwIEBACiAjaWZuZGVmIF9YVF9URUVfVEFSR0VUX0gKICNkZWZpbmUgX1hUX1RFRV9UQVJHRVRfSAogc3RydWN0IHh0X3RlZV90Z2luZm8gewotIHVuaW9uIG5mX2luZXRfYWRkciBndzsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIGd3OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG9pZlsxNl07Ci0gc3RydWN0IHh0X3RlZV9wcml2ICpwcml2IF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKKyAgY2hhciBvaWZbMTZdOworICBzdHJ1Y3QgeHRfdGVlX3ByaXYgKiBwcml2IF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9UUFJPWFkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1RQUk9YWS5oCmluZGV4IGY0ZjZiZjYuLjM4MDcwODUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1RQUk9YWS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X1RQUk9YWS5oCkBAIC0yMSwxOCArMjEsMTggQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHh0X3Rwcm94eV90YXJnZXRfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1hcmtfbWFzazsKLSBfX3UzMiBtYXJrX3ZhbHVlOwotIF9fYmUzMiBsYWRkcjsKLSBfX2JlMTYgbHBvcnQ7CisgIF9fdTMyIG1hcmtfbWFzazsKKyAgX191MzIgbWFya192YWx1ZTsKKyAgX19iZTMyIGxhZGRyOworICBfX2JlMTYgbHBvcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4dF90cHJveHlfdGFyZ2V0X2luZm9fdjEgewotIF9fdTMyIG1hcmtfbWFzazsKLSBfX3UzMiBtYXJrX3ZhbHVlOworICBfX3UzMiBtYXJrX21hc2s7CisgIF9fdTMyIG1hcmtfdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIG5mX2luZXRfYWRkciBsYWRkcjsKLSBfX2JlMTYgbHBvcnQ7CisgIHVuaW9uIG5mX2luZXRfYWRkciBsYWRkcjsKKyAgX19iZTE2IGxwb3J0OwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2FkZHJ0eXBlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9hZGRydHlwZS5oCmluZGV4IDlkYjQzYWQuLjJhN2QwMWYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2FkZHJ0eXBlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfYWRkcnR5cGUuaApAQCAtMjEsNDEgKzIxLDQxIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9BRERSVFlQRV9JTlZFUlRfU09VUkNFID0gMHgwMDAxLAotIFhUX0FERFJUWVBFX0lOVkVSVF9ERVNUID0gMHgwMDAyLAotIFhUX0FERFJUWVBFX0xJTUlUX0lGQUNFX0lOID0gMHgwMDA0LAotIFhUX0FERFJUWVBFX0xJTUlUX0lGQUNFX09VVCA9IDB4MDAwOCwKKyAgWFRfQUREUlRZUEVfSU5WRVJUX1NPVVJDRSA9IDB4MDAwMSwKKyAgWFRfQUREUlRZUEVfSU5WRVJUX0RFU1QgPSAweDAwMDIsCisgIFhUX0FERFJUWVBFX0xJTUlUX0lGQUNFX0lOID0gMHgwMDA0LAorICBYVF9BRERSVFlQRV9MSU1JVF9JRkFDRV9PVVQgPSAweDAwMDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFhUX0FERFJUWVBFX1VOU1BFQyA9IDEgPDwgMCwKLSBYVF9BRERSVFlQRV9VTklDQVNUID0gMSA8PCAxLAorICBYVF9BRERSVFlQRV9VTlNQRUMgPSAxIDw8IDAsCisgIFhUX0FERFJUWVBFX1VOSUNBU1QgPSAxIDw8IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0FERFJUWVBFX0xPQ0FMID0gMSA8PCAyLAotIFhUX0FERFJUWVBFX0JST0FEQ0FTVCA9IDEgPDwgMywKLSBYVF9BRERSVFlQRV9BTllDQVNUID0gMSA8PCA0LAotIFhUX0FERFJUWVBFX01VTFRJQ0FTVCA9IDEgPDwgNSwKKyAgWFRfQUREUlRZUEVfTE9DQUwgPSAxIDw8IDIsCisgIFhUX0FERFJUWVBFX0JST0FEQ0FTVCA9IDEgPDwgMywKKyAgWFRfQUREUlRZUEVfQU5ZQ0FTVCA9IDEgPDwgNCwKKyAgWFRfQUREUlRZUEVfTVVMVElDQVNUID0gMSA8PCA1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9BRERSVFlQRV9CTEFDS0hPTEUgPSAxIDw8IDYsCi0gWFRfQUREUlRZUEVfVU5SRUFDSEFCTEUgPSAxIDw8IDcsCi0gWFRfQUREUlRZUEVfUFJPSElCSVQgPSAxIDw8IDgsCi0gWFRfQUREUlRZUEVfVEhST1cgPSAxIDw8IDksCisgIFhUX0FERFJUWVBFX0JMQUNLSE9MRSA9IDEgPDwgNiwKKyAgWFRfQUREUlRZUEVfVU5SRUFDSEFCTEUgPSAxIDw8IDcsCisgIFhUX0FERFJUWVBFX1BST0hJQklUID0gMSA8PCA4LAorICBYVF9BRERSVFlQRV9USFJPVyA9IDEgPDwgOSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfQUREUlRZUEVfTkFUID0gMSA8PCAxMCwKLSBYVF9BRERSVFlQRV9YUkVTT0xWRSA9IDEgPDwgMTEsCisgIFhUX0FERFJUWVBFX05BVCA9IDEgPDwgMTAsCisgIFhUX0FERFJUWVBFX1hSRVNPTFZFID0gMSA8PCAxMSwKIH07CiBzdHJ1Y3QgeHRfYWRkcnR5cGVfaW5mb192MSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNvdXJjZTsKLSBfX3UxNiBkZXN0OwotIF9fdTMyIGZsYWdzOworICBfX3UxNiBzb3VyY2U7CisgIF9fdTE2IGRlc3Q7CisgIF9fdTMyIGZsYWdzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeHRfYWRkcnR5cGVfaW5mbyB7Ci0gX191MTYgc291cmNlOwotIF9fdTE2IGRlc3Q7Ci0gX191MzIgaW52ZXJ0X3NvdXJjZTsKKyAgX191MTYgc291cmNlOworICBfX3UxNiBkZXN0OworICBfX3UzMiBpbnZlcnRfc291cmNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbnZlcnRfZGVzdDsKKyAgX191MzIgaW52ZXJ0X2Rlc3Q7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9icGYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2JwZi5oCmluZGV4IDIzYWU4OTIuLjY5ZmYzMDQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2JwZi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2JwZi5oCkBAIC0yMiwxMCArMjIsMTIgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWFRfQlBGX01BWF9OVU1fSU5TVFIgNjQKK3N0cnVjdCBicGZfcHJvZzsKIHN0cnVjdCB4dF9icGZfaW5mbyB7Ci0gX191MTYgYnBmX3Byb2dyYW1fbnVtX2VsZW07Ci0gc3RydWN0IHNvY2tfZmlsdGVyIGJwZl9wcm9ncmFtW1hUX0JQRl9NQVhfTlVNX0lOU1RSXTsKKyAgX191MTYgYnBmX3Byb2dyYW1fbnVtX2VsZW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBza19maWx0ZXIgKmZpbHRlciBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgIHN0cnVjdCBzb2NrX2ZpbHRlciBicGZfcHJvZ3JhbVtYVF9CUEZfTUFYX05VTV9JTlNUUl07CisgIHN0cnVjdCBicGZfcHJvZyAqIGZpbHRlciBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiB9OwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY2dyb3VwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jZ3JvdXAuaAppbmRleCA5ODY5NTFiLi5jZTQyZTllIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jZ3JvdXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jZ3JvdXAuaApAQCAtMjEsOCArMjEsOCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgeHRfY2dyb3VwX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZDsKLSBfX3UzMiBpbnZlcnQ7CisgIF9fdTMyIGlkOworICBfX3UzMiBpbnZlcnQ7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY2x1c3Rlci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY2x1c3Rlci5oCmluZGV4IDI3OTZjYzcuLjg2MmExMTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2NsdXN0ZXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jbHVzdGVyLmgKQEAgLTIxLDE0ICsyMSwxNCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHh0X2NsdXN0ZXJfZmxhZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9DTFVTVEVSX0ZfSU5WID0gKDEgPDwgMCkKKyAgWFRfQ0xVU1RFUl9GX0lOViA9ICgxIDw8IDApCiB9Owogc3RydWN0IHh0X2NsdXN0ZXJfbWF0Y2hfaW5mbyB7Ci0gX191MzIgdG90YWxfbm9kZXM7CisgIF9fdTMyIHRvdGFsX25vZGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBub2RlX21hc2s7Ci0gX191MzIgaGFzaF9zZWVkOwotIF9fdTMyIGZsYWdzOworICBfX3UzMiBub2RlX21hc2s7CisgIF9fdTMyIGhhc2hfc2VlZDsKKyAgX191MzIgZmxhZ3M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWFRfQ0xVU1RFUl9OT0RFU19NQVggMzIKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2NvbW1lbnQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2NvbW1lbnQuaAppbmRleCBjNGUxMGM0Li41NTQ1NDRkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb21tZW50LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY29tbWVudC5oCkBAIC0yMSw2ICsyMSw2IEBACiAjZGVmaW5lIFhUX01BWF9DT01NRU5UX0xFTiAyNTYKIHN0cnVjdCB4dF9jb21tZW50X2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGNvbW1lbnRbWFRfTUFYX0NPTU1FTlRfTEVOXTsKKyAgY2hhciBjb21tZW50W1hUX01BWF9DT01NRU5UX0xFTl07CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25uYnl0ZXMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5ieXRlcy5oCmluZGV4IDE2ZDE2MTAuLjQ3OWIxYTYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5ieXRlcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5ieXRlcy5oCkBAIC0yMSwyNSArMjEsMjUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB4dF9jb25uYnl0ZXNfd2hhdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0NPTk5CWVRFU19QS1RTLAotIFhUX0NPTk5CWVRFU19CWVRFUywKLSBYVF9DT05OQllURVNfQVZHUEtULAorICBYVF9DT05OQllURVNfUEtUUywKKyAgWFRfQ09OTkJZVEVTX0JZVEVTLAorICBYVF9DT05OQllURVNfQVZHUEtULAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHh0X2Nvbm5ieXRlc19kaXJlY3Rpb24gewotIFhUX0NPTk5CWVRFU19ESVJfT1JJR0lOQUwsCi0gWFRfQ09OTkJZVEVTX0RJUl9SRVBMWSwKLSBYVF9DT05OQllURVNfRElSX0JPVEgsCisgIFhUX0NPTk5CWVRFU19ESVJfT1JJR0lOQUwsCisgIFhUX0NPTk5CWVRFU19ESVJfUkVQTFksCisgIFhUX0NPTk5CWVRFU19ESVJfQk9USCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHh0X2Nvbm5ieXRlc19pbmZvIHsKLSBzdHJ1Y3QgewotIF9fYWxpZ25lZF91NjQgZnJvbTsKKyAgc3RydWN0IHsKKyAgICBfX2FsaWduZWRfdTY0IGZyb207CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYWxpZ25lZF91NjQgdG87Ci0gfSBjb3VudDsKLSBfX3U4IHdoYXQ7Ci0gX191OCBkaXJlY3Rpb247CisgICAgX19hbGlnbmVkX3U2NCB0bzsKKyAgfSBjb3VudDsKKyAgX191OCB3aGF0OworICBfX3U4IGRpcmVjdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25ubGFiZWwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5sYWJlbC5oCmluZGV4IDRlNWYzYzkuLjEwYTBjYmMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5sYWJlbC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5sYWJlbC5oCkBAIC0xOSwxMiArMTksMTIgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogI2RlZmluZSBYVF9DT05OTEFCRUxfTUFYQklUIDEyNwogZW51bSB4dF9jb25ubGFiZWxfbXRvcHRzIHsKLSBYVF9DT05OTEFCRUxfT1BfSU5WRVJUID0gMSA8PCAwLAorICBYVF9DT05OTEFCRUxfT1BfSU5WRVJUID0gMSA8PCAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9DT05OTEFCRUxfT1BfU0VUID0gMSA8PCAxLAorICBYVF9DT05OTEFCRUxfT1BfU0VUID0gMSA8PCAxLAogfTsKIHN0cnVjdCB4dF9jb25ubGFiZWxfbXRpbmZvIHsKLSBfX3UxNiBiaXQ7CisgIF9fdTE2IGJpdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgb3B0aW9uczsKKyAgX191MTYgb3B0aW9uczsKIH07CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25ubGltaXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5saW1pdC5oCmluZGV4IGIyMzM0ODIuLmYwMDZhNTAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5saW1pdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5saW1pdC5oCkBAIC0yMywyMyArMjMsMjMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeHRfY29ubmxpbWl0X2RhdGE7CiBlbnVtIHsKLSBYVF9DT05OTElNSVRfSU5WRVJUID0gMSA8PCAwLAotIFhUX0NPTk5MSU1JVF9EQUREUiA9IDEgPDwgMSwKKyAgWFRfQ09OTkxJTUlUX0lOVkVSVCA9IDEgPDwgMCwKKyAgWFRfQ09OTkxJTUlUX0RBRERSID0gMSA8PCAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeHRfY29ubmxpbWl0X2luZm8gewotIHVuaW9uIHsKLSB1bmlvbiBuZl9pbmV0X2FkZHIgbWFzazsKKyAgdW5pb24geworICAgIHVuaW9uIG5mX2luZXRfYWRkciBtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gX19iZTMyIHY0X21hc2s7Ci0gX19iZTMyIHY2X21hc2tbNF07Ci0gfTsKKyAgICB1bmlvbiB7CisgICAgICBfX2JlMzIgdjRfbWFzazsKKyAgICAgIF9fYmUzMiB2Nl9tYXNrWzRdOworICAgIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07Ci0gdW5zaWduZWQgaW50IGxpbWl0OwotIF9fdTMyIGZsYWdzOwotIHN0cnVjdCB4dF9jb25ubGltaXRfZGF0YSAqZGF0YSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgIH07CisgIHVuc2lnbmVkIGludCBsaW1pdDsKKyAgX191MzIgZmxhZ3M7CisgIHN0cnVjdCB4dF9jb25ubGltaXRfZGF0YSAqIGRhdGEgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5tYXJrLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25ubWFyay5oCmluZGV4IDE3MTE3YWQuLjNlNTQzMGYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5tYXJrLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY29ubm1hcmsuaApAQCAtMjEsMTkgKzIxLDE5IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9DT05OTUFSS19TRVQgPSAwLAotIFhUX0NPTk5NQVJLX1NBVkUsCi0gWFRfQ09OTk1BUktfUkVTVE9SRQorICBYVF9DT05OTUFSS19TRVQgPSAwLAorICBYVF9DT05OTUFSS19TQVZFLAorICBYVF9DT05OTUFSS19SRVNUT1JFCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4dF9jb25ubWFya190Z2luZm8xIHsKLSBfX3UzMiBjdG1hcmssIGN0bWFzaywgbmZtYXNrOwotIF9fdTggbW9kZTsKKyAgX191MzIgY3RtYXJrLCBjdG1hc2ssIG5mbWFzazsKKyAgX191OCBtb2RlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeHRfY29ubm1hcmtfbXRpbmZvMSB7Ci0gX191MzIgbWFyaywgbWFzazsKLSBfX3U4IGludmVydDsKKyAgX191MzIgbWFyaywgbWFzazsKKyAgX191OCBpbnZlcnQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY29ubnRyYWNrLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25udHJhY2suaAppbmRleCA1M2E5ZmEwLi5hNjljYzJiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25udHJhY2suaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jb25udHJhY2suaApAQCAtMjIsNzggKzIyLDc4IEBACiAjaW5jbHVkZSA8bGludXgvbmV0ZmlsdGVyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L25ldGZpbHRlci9uZl9jb25udHJhY2tfdHVwbGVfY29tbW9uLmg+Ci0jZGVmaW5lIFhUX0NPTk5UUkFDS19TVEFURV9CSVQoY3RpbmZvKSAoMSA8PCAoKGN0aW5mbyklSVBfQ1RfSVNfUkVQTFkrMSkpCisjZGVmaW5lIFhUX0NPTk5UUkFDS19TVEFURV9CSVQoY3RpbmZvKSAoMSA8PCAoKGN0aW5mbykgJSBJUF9DVF9JU19SRVBMWSArIDEpKQogI2RlZmluZSBYVF9DT05OVFJBQ0tfU1RBVEVfSU5WQUxJRCAoMSA8PCAwKQogI2RlZmluZSBYVF9DT05OVFJBQ0tfU1RBVEVfU05BVCAoMSA8PCAoSVBfQ1RfTlVNQkVSICsgMSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYVF9DT05OVFJBQ0tfU1RBVEVfRE5BVCAoMSA8PCAoSVBfQ1RfTlVNQkVSICsgMikpCiAjZGVmaW5lIFhUX0NPTk5UUkFDS19TVEFURV9VTlRSQUNLRUQgKDEgPDwgKElQX0NUX05VTUJFUiArIDMpKQogZW51bSB7Ci0gWFRfQ09OTlRSQUNLX1NUQVRFID0gMSA8PCAwLAorICBYVF9DT05OVFJBQ0tfU1RBVEUgPSAxIDw8IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0NPTk5UUkFDS19QUk9UTyA9IDEgPDwgMSwKLSBYVF9DT05OVFJBQ0tfT1JJR1NSQyA9IDEgPDwgMiwKLSBYVF9DT05OVFJBQ0tfT1JJR0RTVCA9IDEgPDwgMywKLSBYVF9DT05OVFJBQ0tfUkVQTFNSQyA9IDEgPDwgNCwKKyAgWFRfQ09OTlRSQUNLX1BST1RPID0gMSA8PCAxLAorICBYVF9DT05OVFJBQ0tfT1JJR1NSQyA9IDEgPDwgMiwKKyAgWFRfQ09OTlRSQUNLX09SSUdEU1QgPSAxIDw8IDMsCisgIFhUX0NPTk5UUkFDS19SRVBMU1JDID0gMSA8PCA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9DT05OVFJBQ0tfUkVQTERTVCA9IDEgPDwgNSwKLSBYVF9DT05OVFJBQ0tfU1RBVFVTID0gMSA8PCA2LAotIFhUX0NPTk5UUkFDS19FWFBJUkVTID0gMSA8PCA3LAotIFhUX0NPTk5UUkFDS19PUklHU1JDX1BPUlQgPSAxIDw8IDgsCisgIFhUX0NPTk5UUkFDS19SRVBMRFNUID0gMSA8PCA1LAorICBYVF9DT05OVFJBQ0tfU1RBVFVTID0gMSA8PCA2LAorICBYVF9DT05OVFJBQ0tfRVhQSVJFUyA9IDEgPDwgNywKKyAgWFRfQ09OTlRSQUNLX09SSUdTUkNfUE9SVCA9IDEgPDwgOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfQ09OTlRSQUNLX09SSUdEU1RfUE9SVCA9IDEgPDwgOSwKLSBYVF9DT05OVFJBQ0tfUkVQTFNSQ19QT1JUID0gMSA8PCAxMCwKLSBYVF9DT05OVFJBQ0tfUkVQTERTVF9QT1JUID0gMSA8PCAxMSwKLSBYVF9DT05OVFJBQ0tfRElSRUNUSU9OID0gMSA8PCAxMiwKKyAgWFRfQ09OTlRSQUNLX09SSUdEU1RfUE9SVCA9IDEgPDwgOSwKKyAgWFRfQ09OTlRSQUNLX1JFUExTUkNfUE9SVCA9IDEgPDwgMTAsCisgIFhUX0NPTk5UUkFDS19SRVBMRFNUX1BPUlQgPSAxIDw8IDExLAorICBYVF9DT05OVFJBQ0tfRElSRUNUSU9OID0gMSA8PCAxMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfQ09OTlRSQUNLX1NUQVRFX0FMSUFTID0gMSA8PCAxMywKKyAgWFRfQ09OTlRSQUNLX1NUQVRFX0FMSUFTID0gMSA8PCAxMywKIH07CiBzdHJ1Y3QgeHRfY29ubnRyYWNrX210aW5mbzEgewotIHVuaW9uIG5mX2luZXRfYWRkciBvcmlnc3JjX2FkZHIsIG9yaWdzcmNfbWFzazsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIG9yaWdzcmNfYWRkciwgb3JpZ3NyY19tYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiBuZl9pbmV0X2FkZHIgb3JpZ2RzdF9hZGRyLCBvcmlnZHN0X21hc2s7Ci0gdW5pb24gbmZfaW5ldF9hZGRyIHJlcGxzcmNfYWRkciwgcmVwbHNyY19tYXNrOwotIHVuaW9uIG5mX2luZXRfYWRkciByZXBsZHN0X2FkZHIsIHJlcGxkc3RfbWFzazsKLSBfX3UzMiBleHBpcmVzX21pbiwgZXhwaXJlc19tYXg7CisgIHVuaW9uIG5mX2luZXRfYWRkciBvcmlnZHN0X2FkZHIsIG9yaWdkc3RfbWFzazsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIHJlcGxzcmNfYWRkciwgcmVwbHNyY19tYXNrOworICB1bmlvbiBuZl9pbmV0X2FkZHIgcmVwbGRzdF9hZGRyLCByZXBsZHN0X21hc2s7CisgIF9fdTMyIGV4cGlyZXNfbWluLCBleHBpcmVzX21heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbDRwcm90bzsKLSBfX2JlMTYgb3JpZ3NyY19wb3J0LCBvcmlnZHN0X3BvcnQ7Ci0gX19iZTE2IHJlcGxzcmNfcG9ydCwgcmVwbGRzdF9wb3J0OwotIF9fdTE2IG1hdGNoX2ZsYWdzLCBpbnZlcnRfZmxhZ3M7CisgIF9fdTE2IGw0cHJvdG87CisgIF9fYmUxNiBvcmlnc3JjX3BvcnQsIG9yaWdkc3RfcG9ydDsKKyAgX19iZTE2IHJlcGxzcmNfcG9ydCwgcmVwbGRzdF9wb3J0OworICBfX3UxNiBtYXRjaF9mbGFncywgaW52ZXJ0X2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHN0YXRlX21hc2ssIHN0YXR1c19tYXNrOworICBfX3U4IHN0YXRlX21hc2ssIHN0YXR1c19tYXNrOwogfTsKIHN0cnVjdCB4dF9jb25udHJhY2tfbXRpbmZvMiB7Ci0gdW5pb24gbmZfaW5ldF9hZGRyIG9yaWdzcmNfYWRkciwgb3JpZ3NyY19tYXNrOworICB1bmlvbiBuZl9pbmV0X2FkZHIgb3JpZ3NyY19hZGRyLCBvcmlnc3JjX21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIG5mX2luZXRfYWRkciBvcmlnZHN0X2FkZHIsIG9yaWdkc3RfbWFzazsKLSB1bmlvbiBuZl9pbmV0X2FkZHIgcmVwbHNyY19hZGRyLCByZXBsc3JjX21hc2s7Ci0gdW5pb24gbmZfaW5ldF9hZGRyIHJlcGxkc3RfYWRkciwgcmVwbGRzdF9tYXNrOwotIF9fdTMyIGV4cGlyZXNfbWluLCBleHBpcmVzX21heDsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIG9yaWdkc3RfYWRkciwgb3JpZ2RzdF9tYXNrOworICB1bmlvbiBuZl9pbmV0X2FkZHIgcmVwbHNyY19hZGRyLCByZXBsc3JjX21hc2s7CisgIHVuaW9uIG5mX2luZXRfYWRkciByZXBsZHN0X2FkZHIsIHJlcGxkc3RfbWFzazsKKyAgX191MzIgZXhwaXJlc19taW4sIGV4cGlyZXNfbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBsNHByb3RvOwotIF9fYmUxNiBvcmlnc3JjX3BvcnQsIG9yaWdkc3RfcG9ydDsKLSBfX2JlMTYgcmVwbHNyY19wb3J0LCByZXBsZHN0X3BvcnQ7Ci0gX191MTYgbWF0Y2hfZmxhZ3MsIGludmVydF9mbGFnczsKKyAgX191MTYgbDRwcm90bzsKKyAgX19iZTE2IG9yaWdzcmNfcG9ydCwgb3JpZ2RzdF9wb3J0OworICBfX2JlMTYgcmVwbHNyY19wb3J0LCByZXBsZHN0X3BvcnQ7CisgIF9fdTE2IG1hdGNoX2ZsYWdzLCBpbnZlcnRfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHN0YXRlX21hc2ssIHN0YXR1c19tYXNrOworICBfX3UxNiBzdGF0ZV9tYXNrLCBzdGF0dXNfbWFzazsKIH07CiBzdHJ1Y3QgeHRfY29ubnRyYWNrX210aW5mbzMgewotIHVuaW9uIG5mX2luZXRfYWRkciBvcmlnc3JjX2FkZHIsIG9yaWdzcmNfbWFzazsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIG9yaWdzcmNfYWRkciwgb3JpZ3NyY19tYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiBuZl9pbmV0X2FkZHIgb3JpZ2RzdF9hZGRyLCBvcmlnZHN0X21hc2s7Ci0gdW5pb24gbmZfaW5ldF9hZGRyIHJlcGxzcmNfYWRkciwgcmVwbHNyY19tYXNrOwotIHVuaW9uIG5mX2luZXRfYWRkciByZXBsZHN0X2FkZHIsIHJlcGxkc3RfbWFzazsKLSBfX3UzMiBleHBpcmVzX21pbiwgZXhwaXJlc19tYXg7CisgIHVuaW9uIG5mX2luZXRfYWRkciBvcmlnZHN0X2FkZHIsIG9yaWdkc3RfbWFzazsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIHJlcGxzcmNfYWRkciwgcmVwbHNyY19tYXNrOworICB1bmlvbiBuZl9pbmV0X2FkZHIgcmVwbGRzdF9hZGRyLCByZXBsZHN0X21hc2s7CisgIF9fdTMyIGV4cGlyZXNfbWluLCBleHBpcmVzX21heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbDRwcm90bzsKLSBfX3UxNiBvcmlnc3JjX3BvcnQsIG9yaWdkc3RfcG9ydDsKLSBfX3UxNiByZXBsc3JjX3BvcnQsIHJlcGxkc3RfcG9ydDsKLSBfX3UxNiBtYXRjaF9mbGFncywgaW52ZXJ0X2ZsYWdzOworICBfX3UxNiBsNHByb3RvOworICBfX3UxNiBvcmlnc3JjX3BvcnQsIG9yaWdkc3RfcG9ydDsKKyAgX191MTYgcmVwbHNyY19wb3J0LCByZXBsZHN0X3BvcnQ7CisgIF9fdTE2IG1hdGNoX2ZsYWdzLCBpbnZlcnRfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHN0YXRlX21hc2ssIHN0YXR1c19tYXNrOwotIF9fdTE2IG9yaWdzcmNfcG9ydF9oaWdoLCBvcmlnZHN0X3BvcnRfaGlnaDsKLSBfX3UxNiByZXBsc3JjX3BvcnRfaGlnaCwgcmVwbGRzdF9wb3J0X2hpZ2g7CisgIF9fdTE2IHN0YXRlX21hc2ssIHN0YXR1c19tYXNrOworICBfX3UxNiBvcmlnc3JjX3BvcnRfaGlnaCwgb3JpZ2RzdF9wb3J0X2hpZ2g7CisgIF9fdTE2IHJlcGxzcmNfcG9ydF9oaWdoLCByZXBsZHN0X3BvcnRfaGlnaDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9jcHUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2NwdS5oCmluZGV4IGI5MjExZTYuLjA4NzIyODYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2NwdS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2NwdS5oCkBAIC0yMSw4ICsyMSw4IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB4dF9jcHVfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNwdTsKLSBfX3UzMiBpbnZlcnQ7CisgIF9fdTMyIGNwdTsKKyAgX191MzIgaW52ZXJ0OwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2RjY3AuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2RjY3AuaAppbmRleCA4MDk1ZWYyLi4xMWI1MDIyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9kY2NwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfZGNjcC5oCkBAIC0yNywxMyArMjcsMTMgQEAKICNkZWZpbmUgWFRfRENDUF9WQUxJRF9GTEFHUyAweDBmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHh0X2RjY3BfaW5mbyB7Ci0gX191MTYgZHB0c1syXTsKLSBfX3UxNiBzcHRzWzJdOwotIF9fdTE2IGZsYWdzOworICBfX3UxNiBkcHRzWzJdOworICBfX3UxNiBzcHRzWzJdOworICBfX3UxNiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgaW52ZmxhZ3M7Ci0gX191MTYgdHlwZW1hc2s7Ci0gX191OCBvcHRpb247CisgIF9fdTE2IGludmZsYWdzOworICBfX3UxNiB0eXBlbWFzazsKKyAgX191OCBvcHRpb247CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfZGV2Z3JvdXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Rldmdyb3VwLmgKaW5kZXggZDZiMmViYy4uNTkxZGEyNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfZGV2Z3JvdXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9kZXZncm91cC5oCkBAIC0yMSwxOSArMjEsMTkgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB4dF9kZXZncm91cF9mbGFncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0RFVkdST1VQX01BVENIX1NSQyA9IDB4MSwKLSBYVF9ERVZHUk9VUF9JTlZFUlRfU1JDID0gMHgyLAotIFhUX0RFVkdST1VQX01BVENIX0RTVCA9IDB4NCwKLSBYVF9ERVZHUk9VUF9JTlZFUlRfRFNUID0gMHg4LAorICBYVF9ERVZHUk9VUF9NQVRDSF9TUkMgPSAweDEsCisgIFhUX0RFVkdST1VQX0lOVkVSVF9TUkMgPSAweDIsCisgIFhUX0RFVkdST1VQX01BVENIX0RTVCA9IDB4NCwKKyAgWFRfREVWR1JPVVBfSU5WRVJUX0RTVCA9IDB4OCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHh0X2Rldmdyb3VwX2luZm8gewotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHNyY19ncm91cDsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHNyY19ncm91cDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3JjX21hc2s7Ci0gX191MzIgZHN0X2dyb3VwOwotIF9fdTMyIGRzdF9tYXNrOworICBfX3UzMiBzcmNfbWFzazsKKyAgX191MzIgZHN0X2dyb3VwOworICBfX3UzMiBkc3RfbWFzazsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9kc2NwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9kc2NwLmgKaW5kZXggYzNlNmMxYi4uNWMxODJhOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfZHNjcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2RzY3AuaApAQCAtMjQsMTUgKzI0LDE1IEBACiAjZGVmaW5lIFhUX0RTQ1BfU0hJRlQgMgogI2RlZmluZSBYVF9EU0NQX01BWCAweDNmCiBzdHJ1Y3QgeHRfZHNjcF9pbmZvIHsKLSBfX3U4IGRzY3A7CisgIF9fdTggZHNjcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpbnZlcnQ7CisgIF9fdTggaW52ZXJ0OwogfTsKIHN0cnVjdCB4dF90b3NfbWF0Y2hfaW5mbyB7Ci0gX191OCB0b3NfbWFzazsKKyAgX191OCB0b3NfbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0b3NfdmFsdWU7Ci0gX191OCBpbnZlcnQ7CisgIF9fdTggdG9zX3ZhbHVlOworICBfX3U4IGludmVydDsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9lY24uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Vjbi5oCmluZGV4IGRlMDRjNjUuLjRhODJlYzMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Vjbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Vjbi5oCkBAIC0yOCwxNiArMjgsMTYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFhUX0VDTl9PUF9NQVRDSF9NQVNLIDB4Y2UKIHN0cnVjdCB4dF9lY25faW5mbyB7Ci0gX191OCBvcGVyYXRpb247Ci0gX191OCBpbnZlcnQ7CisgIF9fdTggb3BlcmF0aW9uOworICBfX3U4IGludmVydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpcF9lY3Q7Ci0gdW5pb24gewotIHN0cnVjdCB7Ci0gX191OCBlY3Q7CisgIF9fdTggaXBfZWN0OworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTggZWN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHRjcDsKLSB9IHByb3RvOworICAgIH0gdGNwOworICB9IHByb3RvOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2VzcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfZXNwLmgKaW5kZXggOGNhNTRlOC4uYTUzODlmNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfZXNwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfZXNwLmgKQEAgLTIxLDggKzIxLDggQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHh0X2VzcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNwaXNbMl07Ci0gX191OCBpbnZmbGFnczsKKyAgX191MzIgc3Bpc1syXTsKKyAgX191OCBpbnZmbGFnczsKIH07CiAjZGVmaW5lIFhUX0VTUF9JTlZfU1BJIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9oYXNobGltaXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2hhc2hsaW1pdC5oCmluZGV4IGQ3ZjYwMTUuLjQ5ZTFjMzQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2hhc2hsaW1pdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2hhc2hsaW1pdC5oCkBAIC0yNCw1NSArMjQsNTUgQEAKICNkZWZpbmUgWFRfSEFTSExJTUlUX0JZVEVfU0hJRlQgNAogc3RydWN0IHh0X2hhc2hsaW1pdF9odGFibGU7CiBlbnVtIHsKLSBYVF9IQVNITElNSVRfSEFTSF9ESVAgPSAxIDw8IDAsCisgIFhUX0hBU0hMSU1JVF9IQVNIX0RJUCA9IDEgPDwgMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfSEFTSExJTUlUX0hBU0hfRFBUID0gMSA8PCAxLAotIFhUX0hBU0hMSU1JVF9IQVNIX1NJUCA9IDEgPDwgMiwKLSBYVF9IQVNITElNSVRfSEFTSF9TUFQgPSAxIDw8IDMsCi0gWFRfSEFTSExJTUlUX0lOVkVSVCA9IDEgPDwgNCwKKyAgWFRfSEFTSExJTUlUX0hBU0hfRFBUID0gMSA8PCAxLAorICBYVF9IQVNITElNSVRfSEFTSF9TSVAgPSAxIDw8IDIsCisgIFhUX0hBU0hMSU1JVF9IQVNIX1NQVCA9IDEgPDwgMywKKyAgWFRfSEFTSExJTUlUX0lOVkVSVCA9IDEgPDwgNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfSEFTSExJTUlUX0JZVEVTID0gMSA8PCA1LAorICBYVF9IQVNITElNSVRfQllURVMgPSAxIDw8IDUsCiB9Owogc3RydWN0IGhhc2hsaW1pdF9jZmcgewotIF9fdTMyIG1vZGU7CisgIF9fdTMyIG1vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGF2ZzsKLSBfX3UzMiBidXJzdDsKLSBfX3UzMiBzaXplOwotIF9fdTMyIG1heDsKKyAgX191MzIgYXZnOworICBfX3UzMiBidXJzdDsKKyAgX191MzIgc2l6ZTsKKyAgX191MzIgbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBnY19pbnRlcnZhbDsKLSBfX3UzMiBleHBpcmU7CisgIF9fdTMyIGdjX2ludGVydmFsOworICBfX3UzMiBleHBpcmU7CiB9Owogc3RydWN0IHh0X2hhc2hsaW1pdF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBuYW1lIFtJRk5BTVNJWl07Ci0gc3RydWN0IGhhc2hsaW1pdF9jZmcgY2ZnOwotIHN0cnVjdCB4dF9oYXNobGltaXRfaHRhYmxlICpoaW5mbzsKLSB1bmlvbiB7CisgIGNoYXIgbmFtZVtJRk5BTVNJWl07CisgIHN0cnVjdCBoYXNobGltaXRfY2ZnIGNmZzsKKyAgc3RydWN0IHh0X2hhc2hsaW1pdF9odGFibGUgKiBoaW5mbzsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2b2lkICpwdHI7Ci0gc3RydWN0IHh0X2hhc2hsaW1pdF9pbmZvICptYXN0ZXI7Ci0gfSB1OworICAgIHZvaWQgKiBwdHI7CisgICAgc3RydWN0IHh0X2hhc2hsaW1pdF9pbmZvICogbWFzdGVyOworICB9IHU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBoYXNobGltaXRfY2ZnMSB7Ci0gX191MzIgbW9kZTsKLSBfX3UzMiBhdmc7Ci0gX191MzIgYnVyc3Q7CisgIF9fdTMyIG1vZGU7CisgIF9fdTMyIGF2ZzsKKyAgX191MzIgYnVyc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNpemU7Ci0gX191MzIgbWF4OwotIF9fdTMyIGdjX2ludGVydmFsOwotIF9fdTMyIGV4cGlyZTsKKyAgX191MzIgc2l6ZTsKKyAgX191MzIgbWF4OworICBfX3UzMiBnY19pbnRlcnZhbDsKKyAgX191MzIgZXhwaXJlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNyY21hc2ssIGRzdG1hc2s7CisgIF9fdTggc3JjbWFzaywgZHN0bWFzazsKIH07CiBzdHJ1Y3QgeHRfaGFzaGxpbWl0X210aW5mbzEgewotIGNoYXIgbmFtZVtJRk5BTVNJWl07CisgIGNoYXIgbmFtZVtJRk5BTVNJWl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBoYXNobGltaXRfY2ZnMSBjZmc7Ci0gc3RydWN0IHh0X2hhc2hsaW1pdF9odGFibGUgKmhpbmZvIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKKyAgc3RydWN0IGhhc2hsaW1pdF9jZmcxIGNmZzsKKyAgc3RydWN0IHh0X2hhc2hsaW1pdF9odGFibGUgKiBoaW5mbyBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfaGVscGVyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9oZWxwZXIuaAppbmRleCA3ODU2NjNlLi43M2FlMGEyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9oZWxwZXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9oZWxwZXIuaApAQCAtMTksOCArMTksOCBAQAogI2lmbmRlZiBfWFRfSEVMUEVSX0gKICNkZWZpbmUgX1hUX0hFTFBFUl9ICiBzdHJ1Y3QgeHRfaGVscGVyX2luZm8gewotIGludCBpbnZlcnQ7CisgIGludCBpbnZlcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVszMF07CisgIGNoYXIgbmFtZVszMF07CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9pcGNvbXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2lwY29tcC5oCmluZGV4IDFiZDFiNTYuLjZjNWY3YjEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2lwY29tcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2lwY29tcC5oCkBAIC0yMSw5ICsyMSw5IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB4dF9pcGNvbXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcGlzWzJdOwotIF9fdTggaW52ZmxhZ3M7Ci0gX191OCBoZHJyZXM7CisgIF9fdTMyIHNwaXNbMl07CisgIF9fdTggaW52ZmxhZ3M7CisgIF9fdTggaGRycmVzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFhUX0lQQ09NUF9JTlZfU1BJIDB4MDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2lwcmFuZ2UuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2lwcmFuZ2UuaAppbmRleCA1ZGNmMTU0Li4zMTViYzU5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9pcHJhbmdlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfaXByYW5nZS5oCkBAIC0yMiwxNyArMjIsMTcgQEAKICNpbmNsdWRlIDxsaW51eC9uZXRmaWx0ZXIuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBJUFJBTkdFX1NSQyA9IDEgPDwgMCwKLSBJUFJBTkdFX0RTVCA9IDEgPDwgMSwKLSBJUFJBTkdFX1NSQ19JTlYgPSAxIDw8IDQsCisgIElQUkFOR0VfU1JDID0gMSA8PCAwLAorICBJUFJBTkdFX0RTVCA9IDEgPDwgMSwKKyAgSVBSQU5HRV9TUkNfSU5WID0gMSA8PCA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFJBTkdFX0RTVF9JTlYgPSAxIDw8IDUsCisgIElQUkFOR0VfRFNUX0lOViA9IDEgPDwgNSwKIH07CiBzdHJ1Y3QgeHRfaXByYW5nZV9tdGluZm8gewotIHVuaW9uIG5mX2luZXRfYWRkciBzcmNfbWluLCBzcmNfbWF4OworICB1bmlvbiBuZl9pbmV0X2FkZHIgc3JjX21pbiwgc3JjX21heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gbmZfaW5ldF9hZGRyIGRzdF9taW4sIGRzdF9tYXg7Ci0gX191OCBmbGFnczsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIGRzdF9taW4sIGRzdF9tYXg7CisgIF9fdTggZmxhZ3M7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfaXB2cy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfaXB2cy5oCmluZGV4IDRhMDNkZjIuLjhhNzAyZTAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2lwdnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9pcHZzLmgKQEAgLTIxLDI4ICsyMSwyOCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfSVBWU19JUFZTX1BST1BFUlRZID0gMSA8PCAwLAotIFhUX0lQVlNfUFJPVE8gPSAxIDw8IDEsCi0gWFRfSVBWU19WQUREUiA9IDEgPDwgMiwKLSBYVF9JUFZTX1ZQT1JUID0gMSA8PCAzLAorICBYVF9JUFZTX0lQVlNfUFJPUEVSVFkgPSAxIDw8IDAsCisgIFhUX0lQVlNfUFJPVE8gPSAxIDw8IDEsCisgIFhUX0lQVlNfVkFERFIgPSAxIDw8IDIsCisgIFhUX0lQVlNfVlBPUlQgPSAxIDw8IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX0lQVlNfRElSID0gMSA8PCA0LAotIFhUX0lQVlNfTUVUSE9EID0gMSA8PCA1LAotIFhUX0lQVlNfVlBPUlRDVEwgPSAxIDw8IDYsCi0gWFRfSVBWU19NQVNLID0gKDEgPDwgNykgLSAxLAorICBYVF9JUFZTX0RJUiA9IDEgPDwgNCwKKyAgWFRfSVBWU19NRVRIT0QgPSAxIDw8IDUsCisgIFhUX0lQVlNfVlBPUlRDVEwgPSAxIDw8IDYsCisgIFhUX0lQVlNfTUFTSyA9ICgxIDw8IDcpIC0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfSVBWU19PTkNFX01BU0sgPSBYVF9JUFZTX01BU0sgJiB+WFRfSVBWU19JUFZTX1BST1BFUlRZCisgIFhUX0lQVlNfT05DRV9NQVNLID0gWFRfSVBWU19NQVNLICYgflhUX0lQVlNfSVBWU19QUk9QRVJUWQogfTsKIHN0cnVjdCB4dF9pcHZzX210aW5mbyB7Ci0gdW5pb24gbmZfaW5ldF9hZGRyIHZhZGRyLCB2bWFzazsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIHZhZGRyLCB2bWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHZwb3J0OwotIF9fdTggbDRwcm90bzsKLSBfX3U4IGZ3ZF9tZXRob2Q7Ci0gX19iZTE2IHZwb3J0Y3RsOworICBfX2JlMTYgdnBvcnQ7CisgIF9fdTggbDRwcm90bzsKKyAgX191OCBmd2RfbWV0aG9kOworICBfX2JlMTYgdnBvcnRjdGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW52ZXJ0OwotIF9fdTggYml0bWFzazsKKyAgX191OCBpbnZlcnQ7CisgIF9fdTggYml0bWFzazsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9sMnRwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9sMnRwLmgKaW5kZXggOWE3YjgyYy4uMWJhMTRhNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbDJ0cC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2wydHAuaApAQCAtMjEsMjQgKzIxLDI0IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0geHRfbDJ0cF90eXBlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfTDJUUF9UWVBFX0NPTlRST0wsCi0gWFRfTDJUUF9UWVBFX0RBVEEsCisgIFhUX0wyVFBfVFlQRV9DT05UUk9MLAorICBYVF9MMlRQX1RZUEVfREFUQSwKIH07CiBzdHJ1Y3QgeHRfbDJ0cF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGlkOwotIF9fdTMyIHNpZDsKLSBfX3U4IHZlcnNpb247Ci0gX191OCB0eXBlOworICBfX3UzMiB0aWQ7CisgIF9fdTMyIHNpZDsKKyAgX191OCB2ZXJzaW9uOworICBfX3U4IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmxhZ3M7CisgIF9fdTggZmxhZ3M7CiB9OwogZW51bSB7Ci0gWFRfTDJUUF9USUQgPSAoMSA8PCAwKSwKKyAgWFRfTDJUUF9USUQgPSAoMSA8PCAwKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfTDJUUF9TSUQgPSAoMSA8PCAxKSwKLSBYVF9MMlRQX1ZFUlNJT04gPSAoMSA8PCAyKSwKLSBYVF9MMlRQX1RZUEUgPSAoMSA8PCAzKSwKKyAgWFRfTDJUUF9TSUQgPSAoMSA8PCAxKSwKKyAgWFRfTDJUUF9WRVJTSU9OID0gKDEgPDwgMiksCisgIFhUX0wyVFBfVFlQRSA9ICgxIDw8IDMpLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2xlbmd0aC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbGVuZ3RoLmgKaW5kZXggMGYxYzdkOS4uN2FiN2RjZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbGVuZ3RoLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbGVuZ3RoLmgKQEAgLTIxLDggKzIxLDggQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHh0X2xlbmd0aF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbWluLCBtYXg7Ci0gX191OCBpbnZlcnQ7CisgIF9fdTE2IG1pbiwgbWF4OworICBfX3U4IGludmVydDsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9saW1pdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbGltaXQuaAppbmRleCBlMjI5OTdjLi40OTM3ZWFhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9saW1pdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2xpbWl0LmgKQEAgLTIzLDEzICsyMywxMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4dF9saW1pdF9wcml2Owogc3RydWN0IHh0X3JhdGVpbmZvIHsKLSBfX3UzMiBhdmc7Ci0gX191MzIgYnVyc3Q7CisgIF9fdTMyIGF2ZzsKKyAgX191MzIgYnVyc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgcHJldjsKLSBfX3UzMiBjcmVkaXQ7Ci0gX191MzIgY3JlZGl0X2NhcCwgY29zdDsKLSBzdHJ1Y3QgeHRfbGltaXRfcHJpdiAqbWFzdGVyOworICB1bnNpZ25lZCBsb25nIHByZXY7CisgIF9fdTMyIGNyZWRpdDsKKyAgX191MzIgY3JlZGl0X2NhcCwgY29zdDsKKyAgc3RydWN0IHh0X2xpbWl0X3ByaXYgKiBtYXN0ZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbWFjLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9tYWMuaAppbmRleCAxMmM1ODRjLi41Nzk2OTA2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9tYWMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9tYWMuaApAQCAtMTksOCArMTksOCBAQAogI2lmbmRlZiBfWFRfTUFDX0gKICNkZWZpbmUgX1hUX01BQ19ICiBzdHJ1Y3QgeHRfbWFjX2luZm8gewotIHVuc2lnbmVkIGNoYXIgc3JjYWRkcltFVEhfQUxFTl07CisgIHVuc2lnbmVkIGNoYXIgc3JjYWRkcltFVEhfQUxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBpbnZlcnQ7CisgIGludCBpbnZlcnQ7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9tYXJrLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9tYXJrLmgKaW5kZXggMWNkMGVhMC4uOTIzMmI3MSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbWFyay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X21hcmsuaApAQCAtMjEsMTEgKzIxLDExIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB4dF9tYXJrX3RnaW5mbzIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXJrLCBtYXNrOworICBfX3UzMiBtYXJrLCBtYXNrOwogfTsKIHN0cnVjdCB4dF9tYXJrX210aW5mbzEgewotIF9fdTMyIG1hcmssIG1hc2s7CisgIF9fdTMyIG1hcmssIG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW52ZXJ0OworICBfX3U4IGludmVydDsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X211bHRpcG9ydC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbXVsdGlwb3J0LmgKaW5kZXggZDQzMDRmNS4uNTY3Nzc1MiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbXVsdGlwb3J0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbXVsdGlwb3J0LmgKQEAgLTIxLDI1ICsyMSwyNSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHh0X211bHRpcG9ydF9mbGFncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX01VTFRJUE9SVF9TT1VSQ0UsCi0gWFRfTVVMVElQT1JUX0RFU1RJTkFUSU9OLAotIFhUX01VTFRJUE9SVF9FSVRIRVIKKyAgWFRfTVVMVElQT1JUX1NPVVJDRSwKKyAgWFRfTVVMVElQT1JUX0RFU1RJTkFUSU9OLAorICBYVF9NVUxUSVBPUlRfRUlUSEVSCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWFRfTVVMVElfUE9SVFMgMTUKIHN0cnVjdCB4dF9tdWx0aXBvcnQgewotIF9fdTggZmxhZ3M7Ci0gX191OCBjb3VudDsKKyAgX191OCBmbGFnczsKKyAgX191OCBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcG9ydHNbWFRfTVVMVElfUE9SVFNdOworICBfX3UxNiBwb3J0c1tYVF9NVUxUSV9QT1JUU107CiB9Owogc3RydWN0IHh0X211bHRpcG9ydF92MSB7Ci0gX191OCBmbGFnczsKKyAgX191OCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjb3VudDsKLSBfX3UxNiBwb3J0c1tYVF9NVUxUSV9QT1JUU107Ci0gX191OCBwZmxhZ3NbWFRfTVVMVElfUE9SVFNdOwotIF9fdTggaW52ZXJ0OworICBfX3U4IGNvdW50OworICBfX3UxNiBwb3J0c1tYVF9NVUxUSV9QT1JUU107CisgIF9fdTggcGZsYWdzW1hUX01VTFRJX1BPUlRTXTsKKyAgX191OCBpbnZlcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfbmZhY2N0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9uZmFjY3QuaAppbmRleCAzN2RhMDM4Li44MzEzZTRjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9uZmFjY3QuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9uZmFjY3QuaApAQCAtMjIsOCArMjIsOCBAQAogc3RydWN0IG5mX2FjY3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHh0X25mYWNjdF9tYXRjaF9pbmZvIHsKLSBjaGFyIG5hbWVbTkZBQ0NUX05BTUVfTUFYXTsKLSBzdHJ1Y3QgbmZfYWNjdCAqbmZhY2N0OworICBjaGFyIG5hbWVbTkZBQ0NUX05BTUVfTUFYXTsKKyAgc3RydWN0IG5mX2FjY3QgKiBuZmFjY3Q7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfb3NmLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9vc2YuaAppbmRleCBjZWVlNDhkLi45ODU5Nzk3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9vc2YuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9vc2YuaApAQCAtMjEsMTAgKzIxLDEwIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNkZWZpbmUgTUFYR0VOUkVMRU4gMzIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFhUX09TRl9HRU5SRSAoMTw8MCkKLSNkZWZpbmUgWFRfT1NGX1RUTCAoMTw8MSkKLSNkZWZpbmUgWFRfT1NGX0xPRyAoMTw8MikKLSNkZWZpbmUgWFRfT1NGX0lOVkVSVCAoMTw8MykKKyNkZWZpbmUgWFRfT1NGX0dFTlJFICgxIDw8IDApCisjZGVmaW5lIFhUX09TRl9UVEwgKDEgPDwgMSkKKyNkZWZpbmUgWFRfT1NGX0xPRyAoMSA8PCAyKQorI2RlZmluZSBYVF9PU0ZfSU5WRVJUICgxIDw8IDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYVF9PU0ZfTE9HTEVWRUxfQUxMIDAKICNkZWZpbmUgWFRfT1NGX0xPR0xFVkVMX0ZJUlNUIDEKQEAgLTM0LDgwICszNCw4MCBAQAogI2RlZmluZSBYVF9PU0ZfVFRMX0xFU1MgMQogI2RlZmluZSBYVF9PU0ZfVFRMX05PQ0hFQ0sgMgogc3RydWN0IHh0X29zZl9pbmZvIHsKLSBjaGFyIGdlbnJlW01BWEdFTlJFTEVOXTsKKyAgY2hhciBnZW5yZVtNQVhHRU5SRUxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxlbjsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBsb2dsZXZlbDsKLSBfX3UzMiB0dGw7CisgIF9fdTMyIGxlbjsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIGxvZ2xldmVsOworICBfX3UzMiB0dGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4dF9vc2Zfd2MgewotIF9fdTMyIHdjOwotIF9fdTMyIHZhbDsKKyAgX191MzIgd2M7CisgIF9fdTMyIHZhbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHh0X29zZl9vcHQgewotIF9fdTE2IGtpbmQsIGxlbmd0aDsKLSBzdHJ1Y3QgeHRfb3NmX3djIHdjOworICBfX3UxNiBraW5kLCBsZW5ndGg7CisgIHN0cnVjdCB4dF9vc2Zfd2Mgd2M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4dF9vc2ZfdXNlcl9maW5nZXIgewotIHN0cnVjdCB4dF9vc2Zfd2Mgd3NzOwotIF9fdTggdHRsLCBkZjsKKyAgc3RydWN0IHh0X29zZl93YyB3c3M7CisgIF9fdTggdHRsLCBkZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc3MsIG1zczsKLSBfX3UxNiBvcHRfbnVtOwotIGNoYXIgZ2VucmVbTUFYR0VOUkVMRU5dOwotIGNoYXIgdmVyc2lvbltNQVhHRU5SRUxFTl07CisgIF9fdTE2IHNzLCBtc3M7CisgIF9fdTE2IG9wdF9udW07CisgIGNoYXIgZ2VucmVbTUFYR0VOUkVMRU5dOworICBjaGFyIHZlcnNpb25bTUFYR0VOUkVMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHN1YnR5cGVbTUFYR0VOUkVMRU5dOwotIHN0cnVjdCB4dF9vc2Zfb3B0IG9wdFtNQVhfSVBPUFRMRU5dOworICBjaGFyIHN1YnR5cGVbTUFYR0VOUkVMRU5dOworICBzdHJ1Y3QgeHRfb3NmX29wdCBvcHRbTUFYX0lQT1BUTEVOXTsKIH07CiBzdHJ1Y3QgeHRfb3NmX25sbXNnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHh0X29zZl91c2VyX2ZpbmdlciBmOwotIHN0cnVjdCBpcGhkciBpcDsKLSBzdHJ1Y3QgdGNwaGRyIHRjcDsKKyAgc3RydWN0IHh0X29zZl91c2VyX2ZpbmdlciBmOworICBzdHJ1Y3QgaXBoZHIgaXA7CisgIHN0cnVjdCB0Y3BoZHIgdGNwOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGlhbmFfb3B0aW9ucyB7Ci0gT1NGT1BUX0VPTCA9IDAsCi0gT1NGT1BUX05PUCwKLSBPU0ZPUFRfTVNTLAorICBPU0ZPUFRfRU9MID0gMCwKKyAgT1NGT1BUX05PUCwKKyAgT1NGT1BUX01TUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1NGT1BUX1dTTywKLSBPU0ZPUFRfU0FDS1AsCi0gT1NGT1BUX1NBQ0ssCi0gT1NGT1BUX0VDSE8sCisgIE9TRk9QVF9XU08sCisgIE9TRk9QVF9TQUNLUCwKKyAgT1NGT1BUX1NBQ0ssCisgIE9TRk9QVF9FQ0hPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPU0ZPUFRfRUNIT1JFUExZLAotIE9TRk9QVF9UUywKLSBPU0ZPUFRfUE9DUCwKLSBPU0ZPUFRfUE9TUCwKKyAgT1NGT1BUX0VDSE9SRVBMWSwKKyAgT1NGT1BUX1RTLAorICBPU0ZPUFRfUE9DUCwKKyAgT1NGT1BUX1BPU1AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9TRk9QVF9FTVBUWSA9IDI1NSwKKyAgT1NGT1BUX0VNUFRZID0gMjU1LAogfTsKIGVudW0geHRfb3NmX3dpbmRvd19zaXplX29wdGlvbnMgewotIE9TRl9XU1NfUExBSU4gPSAwLAorICBPU0ZfV1NTX1BMQUlOID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1NGX1dTU19NU1MsCi0gT1NGX1dTU19NVFUsCi0gT1NGX1dTU19NT0RVTE8sCi0gT1NGX1dTU19NQVgsCisgIE9TRl9XU1NfTVNTLAorICBPU0ZfV1NTX01UVSwKKyAgT1NGX1dTU19NT0RVTE8sCisgIE9TRl9XU1NfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHh0X29zZl9tc2dfdHlwZXMgewotIE9TRl9NU0dfQURELAotIE9TRl9NU0dfUkVNT1ZFLAorICBPU0ZfTVNHX0FERCwKKyAgT1NGX01TR19SRU1PVkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9TRl9NU0dfTUFYLAorICBPU0ZfTVNHX01BWCwKIH07CiBlbnVtIHh0X29zZl9hdHRyX3R5cGUgewotIE9TRl9BVFRSX1VOU1BFQywKKyAgT1NGX0FUVFJfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPU0ZfQVRUUl9GSU5HRVIsCi0gT1NGX0FUVFJfTUFYLAorICBPU0ZfQVRUUl9GSU5HRVIsCisgIE9TRl9BVFRSX01BWCwKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9vd25lci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfb3duZXIuaAppbmRleCA4NzJlMDc4Li4yOGIwNDU2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9vd25lci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X293bmVyLmgKQEAgLTIxLDE1ICsyMSwxNSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfT1dORVJfVUlEID0gMSA8PCAwLAotIFhUX09XTkVSX0dJRCA9IDEgPDwgMSwKLSBYVF9PV05FUl9TT0NLRVQgPSAxIDw8IDIsCisgIFhUX09XTkVSX1VJRCA9IDEgPDwgMCwKKyAgWFRfT1dORVJfR0lEID0gMSA8PCAxLAorICBYVF9PV05FUl9TT0NLRVQgPSAxIDw8IDIsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4dF9vd25lcl9tYXRjaF9pbmZvIHsKLSBfX3UzMiB1aWRfbWluLCB1aWRfbWF4OwotIF9fdTMyIGdpZF9taW4sIGdpZF9tYXg7Ci0gX191OCBtYXRjaCwgaW52ZXJ0OworICBfX3UzMiB1aWRfbWluLCB1aWRfbWF4OworICBfX3UzMiBnaWRfbWluLCBnaWRfbWF4OworICBfX3U4IG1hdGNoLCBpbnZlcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcGh5c2Rldi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcGh5c2Rldi5oCmluZGV4IDE2MWVjZTIuLmNjZmQ2N2IgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3BoeXNkZXYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9waHlzZGV2LmgKQEAgLTI4LDEzICsyOCwxMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWFRfUEhZU0RFVl9PUF9NQVNLICgweDIwIC0gMSkKIHN0cnVjdCB4dF9waHlzZGV2X2luZm8gewotIGNoYXIgcGh5c2luZGV2W0lGTkFNU0laXTsKLSBjaGFyIGluX21hc2tbSUZOQU1TSVpdOworICBjaGFyIHBoeXNpbmRldltJRk5BTVNJWl07CisgIGNoYXIgaW5fbWFza1tJRk5BTVNJWl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcGh5c291dGRldltJRk5BTVNJWl07Ci0gY2hhciBvdXRfbWFza1tJRk5BTVNJWl07Ci0gX191OCBpbnZlcnQ7Ci0gX191OCBiaXRtYXNrOworICBjaGFyIHBoeXNvdXRkZXZbSUZOQU1TSVpdOworICBjaGFyIG91dF9tYXNrW0lGTkFNU0laXTsKKyAgX191OCBpbnZlcnQ7CisgIF9fdTggYml0bWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9wa3R0eXBlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9wa3R0eXBlLmgKaW5kZXggNWVmMTI1Ni4uYjIzODk5ZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcGt0dHlwZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3BrdHR5cGUuaApAQCAtMTksOCArMTksOCBAQAogI2lmbmRlZiBfWFRfUEtUVFlQRV9ICiAjZGVmaW5lIF9YVF9QS1RUWVBFX0gKIHN0cnVjdCB4dF9wa3R0eXBlX2luZm8gewotIGludCBwa3R0eXBlOworICBpbnQgcGt0dHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGludmVydDsKKyAgaW50IGludmVydDsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3BvbGljeS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcG9saWN5LmgKaW5kZXggZjYwNWZhZS4uNWJhYmZkZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcG9saWN5LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcG9saWN5LmgKQEAgLTIyLDU3ICsyMiw1MCBAQAogI2RlZmluZSBYVF9QT0xJQ1lfTUFYX0VMRU0gNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0geHRfcG9saWN5X2ZsYWdzIHsKLSBYVF9QT0xJQ1lfTUFUQ0hfSU4gPSAweDEsCi0gWFRfUE9MSUNZX01BVENIX09VVCA9IDB4MiwKLSBYVF9QT0xJQ1lfTUFUQ0hfTk9ORSA9IDB4NCwKKyAgWFRfUE9MSUNZX01BVENIX0lOID0gMHgxLAorICBYVF9QT0xJQ1lfTUFUQ0hfT1VUID0gMHgyLAorICBYVF9QT0xJQ1lfTUFUQ0hfTk9ORSA9IDB4NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfUE9MSUNZX01BVENIX1NUUklDVCA9IDB4OCwKKyAgWFRfUE9MSUNZX01BVENIX1NUUklDVCA9IDB4OCwKIH07CiBlbnVtIHh0X3BvbGljeV9tb2RlcyB7Ci0gWFRfUE9MSUNZX01PREVfVFJBTlNQT1JULAorICBYVF9QT0xJQ1lfTU9ERV9UUkFOU1BPUlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX1BPTElDWV9NT0RFX1RVTk5FTAorICBYVF9QT0xJQ1lfTU9ERV9UVU5ORUwKIH07CiBzdHJ1Y3QgeHRfcG9saWN5X3NwZWMgewotIF9fdTggc2FkZHI6MSwKKyAgX191OCBzYWRkciA6IDEsIGRhZGRyIDogMSwgcHJvdG8gOiAxLCBtb2RlIDogMSwgc3BpIDogMSwgcmVxaWQgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkYWRkcjoxLAotIHByb3RvOjEsCi0gbW9kZToxLAotIHNwaToxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSByZXFpZDoxOwogfTsKIHVuaW9uIHh0X3BvbGljeV9hZGRyIHsKLSBzdHJ1Y3QgaW5fYWRkciBhNDsKKyAgc3RydWN0IGluX2FkZHIgYTQ7CisgIHN0cnVjdCBpbjZfYWRkciBhNjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluNl9hZGRyIGE2OwogfTsKIHN0cnVjdCB4dF9wb2xpY3lfZWxlbSB7Ci0gdW5pb24geworICB1bmlvbiB7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSB1bmlvbiB4dF9wb2xpY3lfYWRkciBzYWRkcjsKLSB1bmlvbiB4dF9wb2xpY3lfYWRkciBzbWFzazsKLSB1bmlvbiB4dF9wb2xpY3lfYWRkciBkYWRkcjsKKyAgICAgIHVuaW9uIHh0X3BvbGljeV9hZGRyIHNhZGRyOworICAgICAgdW5pb24geHRfcG9saWN5X2FkZHIgc21hc2s7CisgICAgICB1bmlvbiB4dF9wb2xpY3lfYWRkciBkYWRkcjsKKyAgICAgIHVuaW9uIHh0X3BvbGljeV9hZGRyIGRtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB4dF9wb2xpY3lfYWRkciBkbWFzazsKLSB9OwotIH07Ci0gX19iZTMyIHNwaTsKKyAgICB9OworICB9OworICBfX2JlMzIgc3BpOworICBfX3UzMiByZXFpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVxaWQ7Ci0gX191OCBwcm90bzsKLSBfX3U4IG1vZGU7Ci0gc3RydWN0IHh0X3BvbGljeV9zcGVjIG1hdGNoOworICBfX3U4IHByb3RvOworICBfX3U4IG1vZGU7CisgIHN0cnVjdCB4dF9wb2xpY3lfc3BlYyBtYXRjaDsKKyAgc3RydWN0IHh0X3BvbGljeV9zcGVjIGludmVydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHh0X3BvbGljeV9zcGVjIGludmVydDsKIH07CiBzdHJ1Y3QgeHRfcG9saWN5X2luZm8gewotIHN0cnVjdCB4dF9wb2xpY3lfZWxlbSBwb2xbWFRfUE9MSUNZX01BWF9FTEVNXTsKKyAgc3RydWN0IHh0X3BvbGljeV9lbGVtIHBvbFtYVF9QT0xJQ1lfTUFYX0VMRU1dOworICBfX3UxNiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZmxhZ3M7Ci0gX191MTYgbGVuOworICBfX3UxNiBsZW47CiB9OwogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcXVvdGEuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3F1b3RhLmgKaW5kZXggYjY3NTM5My4uZjg1N2VkOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcXVvdGEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9xdW90YS5oCkBAIC0yMSwxNiArMjEsMTYgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB4dF9xdW90YV9mbGFncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX1FVT1RBX0lOVkVSVCA9IDB4MSwKKyAgWFRfUVVPVEFfSU5WRVJUID0gMHgxLAogfTsKICNkZWZpbmUgWFRfUVVPVEFfTUFTSyAweDEKIHN0cnVjdCB4dF9xdW90YV9wcml2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4dF9xdW90YV9pbmZvIHsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBwYWQ7Ci0gX19hbGlnbmVkX3U2NCBxdW90YTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHBhZDsKKyAgX19hbGlnbmVkX3U2NCBxdW90YTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHh0X3F1b3RhX3ByaXYgKm1hc3RlcjsKKyAgc3RydWN0IHh0X3F1b3RhX3ByaXYgKiBtYXN0ZXI7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9yYXRlZXN0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9yYXRlZXN0LmgKaW5kZXggNjZiMDZhYS4uMGRiMDc0ZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcmF0ZWVzdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3JhdGVlc3QuaApAQCAtMjEsMzUgKzIxLDM1IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0geHRfcmF0ZWVzdF9tYXRjaF9mbGFncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX1JBVEVFU1RfTUFUQ0hfSU5WRVJUID0gMTw8MCwKLSBYVF9SQVRFRVNUX01BVENIX0FCUyA9IDE8PDEsCi0gWFRfUkFURUVTVF9NQVRDSF9SRUwgPSAxPDwyLAotIFhUX1JBVEVFU1RfTUFUQ0hfREVMVEEgPSAxPDwzLAorICBYVF9SQVRFRVNUX01BVENIX0lOVkVSVCA9IDEgPDwgMCwKKyAgWFRfUkFURUVTVF9NQVRDSF9BQlMgPSAxIDw8IDEsCisgIFhUX1JBVEVFU1RfTUFUQ0hfUkVMID0gMSA8PCAyLAorICBYVF9SQVRFRVNUX01BVENIX0RFTFRBID0gMSA8PCAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9SQVRFRVNUX01BVENIX0JQUyA9IDE8PDQsCi0gWFRfUkFURUVTVF9NQVRDSF9QUFMgPSAxPDw1LAorICBYVF9SQVRFRVNUX01BVENIX0JQUyA9IDEgPDwgNCwKKyAgWFRfUkFURUVTVF9NQVRDSF9QUFMgPSAxIDw8IDUsCiB9OwogZW51bSB4dF9yYXRlZXN0X21hdGNoX21vZGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9SQVRFRVNUX01BVENIX05PTkUsCi0gWFRfUkFURUVTVF9NQVRDSF9FUSwKLSBYVF9SQVRFRVNUX01BVENIX0xULAotIFhUX1JBVEVFU1RfTUFUQ0hfR1QsCisgIFhUX1JBVEVFU1RfTUFUQ0hfTk9ORSwKKyAgWFRfUkFURUVTVF9NQVRDSF9FUSwKKyAgWFRfUkFURUVTVF9NQVRDSF9MVCwKKyAgWFRfUkFURUVTVF9NQVRDSF9HVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHh0X3JhdGVlc3RfbWF0Y2hfaW5mbyB7Ci0gY2hhciBuYW1lMVtJRk5BTVNJWl07Ci0gY2hhciBuYW1lMltJRk5BTVNJWl07CisgIGNoYXIgbmFtZTFbSUZOQU1TSVpdOworICBjaGFyIG5hbWUyW0lGTkFNU0laXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZmxhZ3M7Ci0gX191MTYgbW9kZTsKLSBfX3UzMiBicHMxOwotIF9fdTMyIHBwczE7CisgIF9fdTE2IGZsYWdzOworICBfX3UxNiBtb2RlOworICBfX3UzMiBicHMxOworICBfX3UzMiBwcHMxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBicHMyOwotIF9fdTMyIHBwczI7Ci0gc3RydWN0IHh0X3JhdGVlc3QgKmVzdDEgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwotIHN0cnVjdCB4dF9yYXRlZXN0ICplc3QyIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKKyAgX191MzIgYnBzMjsKKyAgX191MzIgcHBzMjsKKyAgc3RydWN0IHh0X3JhdGVlc3QgKiBlc3QxIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKKyAgc3RydWN0IHh0X3JhdGVlc3QgKiBlc3QyIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9yZWFsbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcmVhbG0uaAppbmRleCA0Njc3OTg1Li43YTQ5MTg5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9yZWFsbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3JlYWxtLmgKQEAgLTIxLDkgKzIxLDkgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHh0X3JlYWxtX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZDsKLSBfX3UzMiBtYXNrOwotIF9fdTggaW52ZXJ0OworICBfX3UzMiBpZDsKKyAgX191MzIgbWFzazsKKyAgX191OCBpbnZlcnQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcmVjZW50LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9yZWNlbnQuaAppbmRleCAyYWQ2ODVmLi44Mjk0YzViIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9yZWNlbnQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9yZWNlbnQuaApAQCAtMjEsNDAgKzIxLDQwIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9SRUNFTlRfQ0hFQ0sgPSAxIDw8IDAsCi0gWFRfUkVDRU5UX1NFVCA9IDEgPDwgMSwKLSBYVF9SRUNFTlRfVVBEQVRFID0gMSA8PCAyLAotIFhUX1JFQ0VOVF9SRU1PVkUgPSAxIDw8IDMsCisgIFhUX1JFQ0VOVF9DSEVDSyA9IDEgPDwgMCwKKyAgWFRfUkVDRU5UX1NFVCA9IDEgPDwgMSwKKyAgWFRfUkVDRU5UX1VQREFURSA9IDEgPDwgMiwKKyAgWFRfUkVDRU5UX1JFTU9WRSA9IDEgPDwgMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfUkVDRU5UX1RUTCA9IDEgPDwgNCwKLSBYVF9SRUNFTlRfUkVBUCA9IDEgPDwgNSwKLSBYVF9SRUNFTlRfU09VUkNFID0gMCwKLSBYVF9SRUNFTlRfREVTVCA9IDEsCisgIFhUX1JFQ0VOVF9UVEwgPSAxIDw8IDQsCisgIFhUX1JFQ0VOVF9SRUFQID0gMSA8PCA1LAorICBYVF9SRUNFTlRfU09VUkNFID0gMCwKKyAgWFRfUkVDRU5UX0RFU1QgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYVF9SRUNFTlRfTkFNRV9MRU4gPSAyMDAsCisgIFhUX1JFQ0VOVF9OQU1FX0xFTiA9IDIwMCwKIH07Ci0jZGVmaW5lIFhUX1JFQ0VOVF9NT0RJRklFUlMgKFhUX1JFQ0VOVF9UVEx8WFRfUkVDRU5UX1JFQVApCi0jZGVmaW5lIFhUX1JFQ0VOVF9WQUxJRF9GTEFHUyAoWFRfUkVDRU5UX0NIRUNLfFhUX1JFQ0VOVF9TRVR8WFRfUkVDRU5UX1VQREFURXwgIFhUX1JFQ0VOVF9SRU1PVkV8WFRfUkVDRU5UX1RUTHxYVF9SRUNFTlRfUkVBUCkKKyNkZWZpbmUgWFRfUkVDRU5UX01PRElGSUVSUyAoWFRfUkVDRU5UX1RUTCB8IFhUX1JFQ0VOVF9SRUFQKQorI2RlZmluZSBYVF9SRUNFTlRfVkFMSURfRkxBR1MgKFhUX1JFQ0VOVF9DSEVDSyB8IFhUX1JFQ0VOVF9TRVQgfCBYVF9SRUNFTlRfVVBEQVRFIHwgWFRfUkVDRU5UX1JFTU9WRSB8IFhUX1JFQ0VOVF9UVEwgfCBYVF9SRUNFTlRfUkVBUCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeHRfcmVjZW50X210aW5mbyB7Ci0gX191MzIgc2Vjb25kczsKLSBfX3UzMiBoaXRfY291bnQ7Ci0gX191OCBjaGVja19zZXQ7CisgIF9fdTMyIHNlY29uZHM7CisgIF9fdTMyIGhpdF9jb3VudDsKKyAgX191OCBjaGVja19zZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW52ZXJ0OwotIGNoYXIgbmFtZVtYVF9SRUNFTlRfTkFNRV9MRU5dOwotIF9fdTggc2lkZTsKKyAgX191OCBpbnZlcnQ7CisgIGNoYXIgbmFtZVtYVF9SRUNFTlRfTkFNRV9MRU5dOworICBfX3U4IHNpZGU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4dF9yZWNlbnRfbXRpbmZvX3YxIHsKLSBfX3UzMiBzZWNvbmRzOwotIF9fdTMyIGhpdF9jb3VudDsKLSBfX3U4IGNoZWNrX3NldDsKKyAgX191MzIgc2Vjb25kczsKKyAgX191MzIgaGl0X2NvdW50OworICBfX3U4IGNoZWNrX3NldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpbnZlcnQ7Ci0gY2hhciBuYW1lW1hUX1JFQ0VOVF9OQU1FX0xFTl07Ci0gX191OCBzaWRlOwotIHVuaW9uIG5mX2luZXRfYWRkciBtYXNrOworICBfX3U4IGludmVydDsKKyAgY2hhciBuYW1lW1hUX1JFQ0VOVF9OQU1FX0xFTl07CisgIF9fdTggc2lkZTsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcnBmaWx0ZXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3JwZmlsdGVyLmgKaW5kZXggMjk1MzNkNi4uZGJlNmU2YyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfcnBmaWx0ZXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9ycGZpbHRlci5oCkBAIC0yMSwxNCArMjEsMTQgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX1JQRklMVEVSX0xPT1NFID0gMSA8PCAwLAotIFhUX1JQRklMVEVSX1ZBTElEX01BUksgPSAxIDw8IDEsCi0gWFRfUlBGSUxURVJfQUNDRVBUX0xPQ0FMID0gMSA8PCAyLAotIFhUX1JQRklMVEVSX0lOVkVSVCA9IDEgPDwgMywKKyAgWFRfUlBGSUxURVJfTE9PU0UgPSAxIDw8IDAsCisgIFhUX1JQRklMVEVSX1ZBTElEX01BUksgPSAxIDw8IDEsCisgIFhUX1JQRklMVEVSX0FDQ0VQVF9MT0NBTCA9IDEgPDwgMiwKKyAgWFRfUlBGSUxURVJfSU5WRVJUID0gMSA8PCAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeHRfcnBmaWx0ZXJfaW5mbyB7Ci0gX191OCBmbGFnczsKKyAgX191OCBmbGFnczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zY3RwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zY3RwLmgKaW5kZXggZWQ3MjQ2Yi4uYjZmYmVkYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc2N0cC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3NjdHAuaApAQCAtMjYsMzggKzI2LDQwIEBACiAjZGVmaW5lIFhUX1NDVFBfVkFMSURfRkxBR1MgMHgwNwogc3RydWN0IHh0X3NjdHBfZmxhZ19pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjaHVua3R5cGU7Ci0gX191OCBmbGFnOwotIF9fdTggZmxhZ19tYXNrOworICBfX3U4IGNodW5rdHlwZTsKKyAgX191OCBmbGFnOworICBfX3U4IGZsYWdfbWFzazsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYVF9OVU1fU0NUUF9GTEFHUyA0CiBzdHJ1Y3QgeHRfc2N0cF9pbmZvIHsKLSBfX3UxNiBkcHRzWzJdOwotIF9fdTE2IHNwdHNbMl07CisgIF9fdTE2IGRwdHNbMl07CisgIF9fdTE2IHNwdHNbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNodW5rbWFwWzI1NiAvIHNpemVvZiAoX191MzIpXTsKKyAgX191MzIgY2h1bmttYXBbMjU2IC8gc2l6ZW9mKF9fdTMyKV07CiAjZGVmaW5lIFNDVFBfQ0hVTktfTUFUQ0hfQU5ZIDB4MDEKICNkZWZpbmUgU0NUUF9DSFVOS19NQVRDSF9BTEwgMHgwMgogI2RlZmluZSBTQ1RQX0NIVU5LX01BVENIX09OTFkgMHgwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjaHVua19tYXRjaF90eXBlOwotIHN0cnVjdCB4dF9zY3RwX2ZsYWdfaW5mbyBmbGFnX2luZm9bWFRfTlVNX1NDVFBfRkxBR1NdOwotIGludCBmbGFnX2NvdW50OwotIF9fdTMyIGZsYWdzOworICBfX3UzMiBjaHVua19tYXRjaF90eXBlOworICBzdHJ1Y3QgeHRfc2N0cF9mbGFnX2luZm8gZmxhZ19pbmZvW1hUX05VTV9TQ1RQX0ZMQUdTXTsKKyAgaW50IGZsYWdfY291bnQ7CisgIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbnZmbGFnczsKKyAgX191MzIgaW52ZmxhZ3M7CiB9OwogI2RlZmluZSBieXRlcyh0eXBlKSAoc2l6ZW9mKHR5cGUpICogOCkKLSNkZWZpbmUgU0NUUF9DSFVOS01BUF9TRVQoY2h1bmttYXAsIHR5cGUpICAgZG8geyAgIChjaHVua21hcClbdHlwZSAvIGJ5dGVzKF9fdTMyKV0gfD0gICAxIDw8ICh0eXBlICUgYnl0ZXMoX191MzIpKTsgICB9IHdoaWxlICgwKQorI2RlZmluZSBTQ1RQX0NIVU5LTUFQX1NFVChjaHVua21hcCx0eXBlKSBkbyB7IChjaHVua21hcClbdHlwZSAvIGJ5dGVzKF9fdTMyKV0gfD0gMSA8PCAodHlwZSAlIGJ5dGVzKF9fdTMyKSk7IH0gd2hpbGUoMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNDVFBfQ0hVTktNQVBfQ0xFQVIoY2h1bmttYXAsIHR5cGUpICAgZG8geyAgIChjaHVua21hcClbdHlwZSAvIGJ5dGVzKF9fdTMyKV0gJj0gICB+KDEgPDwgKHR5cGUgJSBieXRlcyhfX3UzMikpKTsgICB9IHdoaWxlICgwKQotI2RlZmluZSBTQ1RQX0NIVU5LTUFQX0lTX1NFVChjaHVua21hcCwgdHlwZSkgICh7ICAgKChjaHVua21hcClbdHlwZSAvIGJ5dGVzIChfX3UzMildICYgICAoMSA8PCAodHlwZSAlIGJ5dGVzIChfX3UzMikpKSkgPyAxOiAwOyAgfSkKLSNkZWZpbmUgU0NUUF9DSFVOS01BUF9SRVNFVChjaHVua21hcCkgICBtZW1zZXQoKGNodW5rbWFwKSwgMCwgc2l6ZW9mKGNodW5rbWFwKSkKLSNkZWZpbmUgU0NUUF9DSFVOS01BUF9TRVRfQUxMKGNodW5rbWFwKSAgIG1lbXNldCgoY2h1bmttYXApLCB+MFUsIHNpemVvZihjaHVua21hcCkpCisjZGVmaW5lIFNDVFBfQ0hVTktNQVBfQ0xFQVIoY2h1bmttYXAsdHlwZSkgZG8geyAoY2h1bmttYXApW3R5cGUgLyBieXRlcyhfX3UzMildICY9IH4oMSA8PCAodHlwZSAlIGJ5dGVzKF9fdTMyKSkpOyB9IHdoaWxlKDApCisjZGVmaW5lIFNDVFBfQ0hVTktNQVBfSVNfU0VUKGNodW5rbWFwLHR5cGUpIFwKKyh7ICgoY2h1bmttYXApW3R5cGUgLyBieXRlcyhfX3UzMildICYgKDEgPDwgKHR5cGUgJSBieXRlcyhfX3UzMikpKSkgPyAxIDogMDsgXAorfSkKKyNkZWZpbmUgU0NUUF9DSFVOS01BUF9SRVNFVChjaHVua21hcCkgbWVtc2V0KChjaHVua21hcCksIDAsIHNpemVvZihjaHVua21hcCkpCisjZGVmaW5lIFNDVFBfQ0hVTktNQVBfU0VUX0FMTChjaHVua21hcCkgbWVtc2V0KChjaHVua21hcCksIH4wVSwgc2l6ZW9mKGNodW5rbWFwKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNDVFBfQ0hVTktNQVBfQ09QWShkZXN0bWFwLCBzcmNtYXApICAgbWVtY3B5KChkZXN0bWFwKSwgKHNyY21hcCksIHNpemVvZihzcmNtYXApKQotI2RlZmluZSBTQ1RQX0NIVU5LTUFQX0lTX0NMRUFSKGNodW5rbWFwKSAgIF9fc2N0cF9jaHVua21hcF9pc19jbGVhcigoY2h1bmttYXApLCBBUlJBWV9TSVpFKGNodW5rbWFwKSkKLSNkZWZpbmUgU0NUUF9DSFVOS01BUF9JU19BTExfU0VUKGNodW5rbWFwKSAgIF9fc2N0cF9jaHVua21hcF9pc19hbGxfc2V0KChjaHVua21hcCksIEFSUkFZX1NJWkUoY2h1bmttYXApKQorI2RlZmluZSBTQ1RQX0NIVU5LTUFQX0NPUFkoZGVzdG1hcCxzcmNtYXApIG1lbWNweSgoZGVzdG1hcCksIChzcmNtYXApLCBzaXplb2Yoc3JjbWFwKSkKKyNkZWZpbmUgU0NUUF9DSFVOS01BUF9JU19DTEVBUihjaHVua21hcCkgX19zY3RwX2NodW5rbWFwX2lzX2NsZWFyKChjaHVua21hcCksIEFSUkFZX1NJWkUoY2h1bmttYXApKQorI2RlZmluZSBTQ1RQX0NIVU5LTUFQX0lTX0FMTF9TRVQoY2h1bmttYXApIF9fc2N0cF9jaHVua21hcF9pc19hbGxfc2V0KChjaHVua21hcCksIEFSUkFZX1NJWkUoY2h1bmttYXApKQogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc2V0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zZXQuaAppbmRleCAzZDI3ZTU3Li41YTJmZTAxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zZXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zZXQuaApAQCAtMjYsNTUgKzI2LDY0IEBACiAjZGVmaW5lIElQU0VUX01BVENIX0lOViAweDA0CiBzdHJ1Y3QgeHRfc2V0X2luZm9fdjAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpcF9zZXRfaWRfdCBpbmRleDsKLSB1bmlvbiB7Ci0gX191MzIgZmxhZ3NbSVBTRVRfRElNX01BWCArIDFdOwotIHN0cnVjdCB7CisgIGlwX3NldF9pZF90IGluZGV4OworICB1bmlvbiB7CisgICAgX191MzIgZmxhZ3NbSVBTRVRfRElNX01BWCArIDFdOworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIF9fZmxhZ3NbSVBTRVRfRElNX01BWF07Ci0gX191OCBkaW07Ci0gX191OCBmbGFnczsKLSB9IGNvbXBhdDsKKyAgICAgIF9fdTMyIF9fZmxhZ3NbSVBTRVRfRElNX01BWF07CisgICAgICBfX3U4IGRpbTsKKyAgICAgIF9fdTggZmxhZ3M7CisgICAgfSBjb21wYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gdTsKKyAgfSB1OwogfTsKIHN0cnVjdCB4dF9zZXRfaW5mb19tYXRjaF92MCB7Ci0gc3RydWN0IHh0X3NldF9pbmZvX3YwIG1hdGNoX3NldDsKKyAgc3RydWN0IHh0X3NldF9pbmZvX3YwIG1hdGNoX3NldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHh0X3NldF9pbmZvX3RhcmdldF92MCB7Ci0gc3RydWN0IHh0X3NldF9pbmZvX3YwIGFkZF9zZXQ7Ci0gc3RydWN0IHh0X3NldF9pbmZvX3YwIGRlbF9zZXQ7CisgIHN0cnVjdCB4dF9zZXRfaW5mb192MCBhZGRfc2V0OworICBzdHJ1Y3QgeHRfc2V0X2luZm9fdjAgZGVsX3NldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHh0X3NldF9pbmZvIHsKLSBpcF9zZXRfaWRfdCBpbmRleDsKLSBfX3U4IGRpbTsKKyAgaXBfc2V0X2lkX3QgaW5kZXg7CisgIF9fdTggZGltOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsYWdzOworICBfX3U4IGZsYWdzOwogfTsKIHN0cnVjdCB4dF9zZXRfaW5mb19tYXRjaF92MSB7Ci0gc3RydWN0IHh0X3NldF9pbmZvIG1hdGNoX3NldDsKKyAgc3RydWN0IHh0X3NldF9pbmZvIG1hdGNoX3NldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHh0X3NldF9pbmZvX3RhcmdldF92MSB7Ci0gc3RydWN0IHh0X3NldF9pbmZvIGFkZF9zZXQ7Ci0gc3RydWN0IHh0X3NldF9pbmZvIGRlbF9zZXQ7CisgIHN0cnVjdCB4dF9zZXRfaW5mbyBhZGRfc2V0OworICBzdHJ1Y3QgeHRfc2V0X2luZm8gZGVsX3NldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHh0X3NldF9pbmZvX3RhcmdldF92MiB7Ci0gc3RydWN0IHh0X3NldF9pbmZvIGFkZF9zZXQ7Ci0gc3RydWN0IHh0X3NldF9pbmZvIGRlbF9zZXQ7CisgIHN0cnVjdCB4dF9zZXRfaW5mbyBhZGRfc2V0OworICBzdHJ1Y3QgeHRfc2V0X2luZm8gZGVsX3NldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7Ci0gX191MzIgdGltZW91dDsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHRpbWVvdXQ7CiB9Owogc3RydWN0IHh0X3NldF9pbmZvX21hdGNoX3YzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHh0X3NldF9pbmZvIG1hdGNoX3NldDsKLSBzdHJ1Y3QgaXBfc2V0X2NvdW50ZXJfbWF0Y2ggcGFja2V0czsKLSBzdHJ1Y3QgaXBfc2V0X2NvdW50ZXJfbWF0Y2ggYnl0ZXM7Ci0gX191MzIgZmxhZ3M7CisgIHN0cnVjdCB4dF9zZXRfaW5mbyBtYXRjaF9zZXQ7CisgIHN0cnVjdCBpcF9zZXRfY291bnRlcl9tYXRjaCBwYWNrZXRzOworICBzdHJ1Y3QgaXBfc2V0X2NvdW50ZXJfbWF0Y2ggYnl0ZXM7CisgIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CitzdHJ1Y3QgeHRfc2V0X2luZm9fdGFyZ2V0X3YzIHsKKyAgc3RydWN0IHh0X3NldF9pbmZvIGFkZF9zZXQ7CisgIHN0cnVjdCB4dF9zZXRfaW5mbyBkZWxfc2V0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IHh0X3NldF9pbmZvIG1hcF9zZXQ7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiB0aW1lb3V0OworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3NvY2tldC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc29ja2V0LmgKaW5kZXggNDE3MGZlNi4uZmY1N2QyMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc29ja2V0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc29ja2V0LmgKQEAgLTIxLDE3ICsyMSwxNyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfU09DS0VUX1RSQU5TUEFSRU5UID0gMSA8PCAwLAotIFhUX1NPQ0tFVF9OT1dJTERDQVJEID0gMSA8PCAxLAorICBYVF9TT0NLRVRfVFJBTlNQQVJFTlQgPSAxIDw8IDAsCisgIFhUX1NPQ0tFVF9OT1dJTERDQVJEID0gMSA8PCAxLAogfTsKIHN0cnVjdCB4dF9zb2NrZXRfbXRpbmZvMSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmxhZ3M7CisgIF9fdTggZmxhZ3M7CiB9OwogI2RlZmluZSBYVF9TT0NLRVRfRkxBR1NfVjEgWFRfU09DS0VUX1RSQU5TUEFSRU5UCiBzdHJ1Y3QgeHRfc29ja2V0X210aW5mbzIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsYWdzOworICBfX3U4IGZsYWdzOwogfTsKICNkZWZpbmUgWFRfU09DS0VUX0ZMQUdTX1YyIChYVF9TT0NLRVRfVFJBTlNQQVJFTlQgfCBYVF9TT0NLRVRfTk9XSUxEQ0FSRCkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc3RhdGUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3N0YXRlLmgKaW5kZXggNmZmMTg4OS4uNWQyY2QxMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc3RhdGUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zdGF0ZS5oCkBAIC0xOCwxMiArMTgsMTIgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfWFRfU1RBVEVfSAogI2RlZmluZSBfWFRfU1RBVEVfSAotI2RlZmluZSBYVF9TVEFURV9CSVQoY3RpbmZvKSAoMSA8PCAoKGN0aW5mbyklSVBfQ1RfSVNfUkVQTFkrMSkpCisjZGVmaW5lIFhUX1NUQVRFX0JJVChjdGluZm8pICgxIDw8ICgoY3RpbmZvKSAlIElQX0NUX0lTX1JFUExZICsgMSkpCiAjZGVmaW5lIFhUX1NUQVRFX0lOVkFMSUQgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFhUX1NUQVRFX1VOVFJBQ0tFRCAoMSA8PCAoSVBfQ1RfTlVNQkVSICsgMSkpCiBzdHJ1Y3QgeHRfc3RhdGVfaW5mbyB7Ci0gdW5zaWduZWQgaW50IHN0YXRlbWFzazsKKyAgdW5zaWduZWQgaW50IHN0YXRlbWFzazsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF9zdGF0aXN0aWMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3N0YXRpc3RpYy5oCmluZGV4IDYyMTVhYWUuLjE5YzRlN2EgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3N0YXRpc3RpYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3N0YXRpc3RpYy5oCkBAIC0yMSwzNSArMjEsMzUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB4dF9zdGF0aXN0aWNfbW9kZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhUX1NUQVRJU1RJQ19NT0RFX1JBTkRPTSwKLSBYVF9TVEFUSVNUSUNfTU9ERV9OVEgsCi0gX19YVF9TVEFUSVNUSUNfTU9ERV9NQVgKKyAgWFRfU1RBVElTVElDX01PREVfUkFORE9NLAorICBYVF9TVEFUSVNUSUNfTU9ERV9OVEgsCisgIF9fWFRfU1RBVElTVElDX01PREVfTUFYCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWFRfU1RBVElTVElDX01PREVfTUFYIChfX1hUX1NUQVRJU1RJQ19NT0RFX01BWCAtIDEpCiBlbnVtIHh0X3N0YXRpc3RpY19mbGFncyB7Ci0gWFRfU1RBVElTVElDX0lOVkVSVCA9IDB4MSwKKyAgWFRfU1RBVElTVElDX0lOVkVSVCA9IDB4MSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYVF9TVEFUSVNUSUNfTUFTSyAweDEKIHN0cnVjdCB4dF9zdGF0aXN0aWNfcHJpdjsKIHN0cnVjdCB4dF9zdGF0aXN0aWNfaW5mbyB7Ci0gX191MTYgbW9kZTsKKyAgX191MTYgbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZmxhZ3M7Ci0gdW5pb24gewotIHN0cnVjdCB7Ci0gX191MzIgcHJvYmFiaWxpdHk7CisgIF9fdTE2IGZsYWdzOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTMyIHByb2JhYmlsaXR5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHJhbmRvbTsKLSBzdHJ1Y3QgewotIF9fdTMyIGV2ZXJ5OwotIF9fdTMyIHBhY2tldDsKKyAgICB9IHJhbmRvbTsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MzIgZXZlcnk7CisgICAgICBfX3UzMiBwYWNrZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNvdW50OwotIH0gbnRoOwotIH0gdTsKLSBzdHJ1Y3QgeHRfc3RhdGlzdGljX3ByaXYgKm1hc3RlciBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgICAgICBfX3UzMiBjb3VudDsKKyAgICB9IG50aDsKKyAgfSB1OworICBzdHJ1Y3QgeHRfc3RhdGlzdGljX3ByaXYgKiBtYXN0ZXIgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3N0cmluZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc3RyaW5nLmgKaW5kZXggMTk3Y2NmNC4uY2Y0NWE2OSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc3RyaW5nLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfc3RyaW5nLmgKQEAgLTIzLDI4ICsyMywyOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgWFRfU1RSSU5HX01BWF9BTEdPX05BTUVfU0laRSAxNgogZW51bSB7Ci0gWFRfU1RSSU5HX0ZMQUdfSU5WRVJUID0gMHgwMSwKLSBYVF9TVFJJTkdfRkxBR19JR05PUkVDQVNFID0gMHgwMgorICBYVF9TVFJJTkdfRkxBR19JTlZFUlQgPSAweDAxLAorICBYVF9TVFJJTkdfRkxBR19JR05PUkVDQVNFID0gMHgwMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeHRfc3RyaW5nX2luZm8gewotIF9fdTE2IGZyb21fb2Zmc2V0OwotIF9fdTE2IHRvX29mZnNldDsKKyAgX191MTYgZnJvbV9vZmZzZXQ7CisgIF9fdTE2IHRvX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBhbGdvW1hUX1NUUklOR19NQVhfQUxHT19OQU1FX1NJWkVdOwotIGNoYXIgcGF0dGVybltYVF9TVFJJTkdfTUFYX1BBVFRFUk5fU0laRV07Ci0gX191OCBwYXRsZW47Ci0gdW5pb24geworICBjaGFyIGFsZ29bWFRfU1RSSU5HX01BWF9BTEdPX05BTUVfU0laRV07CisgIGNoYXIgcGF0dGVybltYVF9TVFJJTkdfTUFYX1BBVFRFUk5fU0laRV07CisgIF9fdTggcGF0bGVuOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX191OCBpbnZlcnQ7Ci0gfSB2MDsKLSBzdHJ1Y3QgeworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IGludmVydDsKKyAgICB9IHYwOworICAgIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmxhZ3M7Ci0gfSB2MTsKLSB9IHU7Ci0gc3RydWN0IHRzX2NvbmZpZyBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSkgKmNvbmZpZzsKKyAgICAgIF9fdTggZmxhZ3M7CisgICAgfSB2MTsKKyAgfSB1OworICBzdHJ1Y3QgdHNfY29uZmlnIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKSAqIGNvbmZpZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF90Y3Btc3MuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3RjcG1zcy5oCmluZGV4IGQxYmI3MDcuLmY4ZDA1OTcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3RjcG1zcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3RjcG1zcy5oCkBAIC0yMSw4ICsyMSw4IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB4dF90Y3Btc3NfbWF0Y2hfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG1zc19taW4sIG1zc19tYXg7Ci0gX191OCBpbnZlcnQ7CisgIF9fdTE2IG1zc19taW4sIG1zc19tYXg7CisgIF9fdTggaW52ZXJ0OwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3RjcHVkcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfdGNwdWRwLmgKaW5kZXggOTM4NjExMC4uMzVmNTMxYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfdGNwdWRwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfdGNwdWRwLmgKQEAgLTIxLDEzICsyMSwxMyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgeHRfdGNwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc3B0c1syXTsKLSBfX3UxNiBkcHRzWzJdOwotIF9fdTggb3B0aW9uOwotIF9fdTggZmxnX21hc2s7CisgIF9fdTE2IHNwdHNbMl07CisgIF9fdTE2IGRwdHNbMl07CisgIF9fdTggb3B0aW9uOworICBfX3U4IGZsZ19tYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsZ19jbXA7Ci0gX191OCBpbnZmbGFnczsKKyAgX191OCBmbGdfY21wOworICBfX3U4IGludmZsYWdzOwogfTsKICNkZWZpbmUgWFRfVENQX0lOVl9TUkNQVCAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMzcsOSArMzcsOSBAQAogI2RlZmluZSBYVF9UQ1BfSU5WX01BU0sgMHgwRgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4dF91ZHAgewotIF9fdTE2IHNwdHNbMl07Ci0gX191MTYgZHB0c1syXTsKLSBfX3U4IGludmZsYWdzOworICBfX3UxNiBzcHRzWzJdOworICBfX3UxNiBkcHRzWzJdOworICBfX3U4IGludmZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFhUX1VEUF9JTlZfU1JDUFQgMHgwMQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfdGltZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfdGltZS5oCmluZGV4IDIzOGEyY2EuLjQzMDZiMDIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3RpbWUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF90aW1lLmgKQEAgLTIxLDI1ICsyMSwyNSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgeHRfdGltZV9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGF0ZV9zdGFydDsKLSBfX3UzMiBkYXRlX3N0b3A7Ci0gX191MzIgZGF5dGltZV9zdGFydDsKLSBfX3UzMiBkYXl0aW1lX3N0b3A7CisgIF9fdTMyIGRhdGVfc3RhcnQ7CisgIF9fdTMyIGRhdGVfc3RvcDsKKyAgX191MzIgZGF5dGltZV9zdGFydDsKKyAgX191MzIgZGF5dGltZV9zdG9wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtb250aGRheXNfbWF0Y2g7Ci0gX191OCB3ZWVrZGF5c19tYXRjaDsKLSBfX3U4IGZsYWdzOworICBfX3UzMiBtb250aGRheXNfbWF0Y2g7CisgIF9fdTggd2Vla2RheXNfbWF0Y2g7CisgIF9fdTggZmxhZ3M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFhUX1RJTUVfTE9DQUxfVFogPSAxIDw8IDAsCi0gWFRfVElNRV9DT05USUdVT1VTID0gMSA8PCAxLAotIFhUX1RJTUVfQUxMX01PTlRIREFZUyA9IDB4RkZGRkZGRkUsCisgIFhUX1RJTUVfTE9DQUxfVFogPSAxIDw8IDAsCisgIFhUX1RJTUVfQ09OVElHVU9VUyA9IDEgPDwgMSwKKyAgWFRfVElNRV9BTExfTU9OVEhEQVlTID0gMHhGRkZGRkZGRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfVElNRV9BTExfV0VFS0RBWVMgPSAweEZFLAotIFhUX1RJTUVfTUlOX0RBWVRJTUUgPSAwLAotIFhUX1RJTUVfTUFYX0RBWVRJTUUgPSAyNCAqIDYwICogNjAgLSAxLAorICBYVF9USU1FX0FMTF9XRUVLREFZUyA9IDB4RkUsCisgIFhUX1RJTUVfTUlOX0RBWVRJTUUgPSAwLAorICBYVF9USU1FX01BWF9EQVlUSU1FID0gMjQgKiA2MCAqIDYwIC0gMSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBYVF9USU1FX0FMTF9GTEFHUyAoWFRfVElNRV9MT0NBTF9UWnxYVF9USU1FX0NPTlRJR1VPVVMpCisjZGVmaW5lIFhUX1RJTUVfQUxMX0ZMQUdTIChYVF9USU1FX0xPQ0FMX1RaIHwgWFRfVElNRV9DT05USUdVT1VTKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlci94dF91MzIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3UzMi5oCmluZGV4IDAyNjhmYzAuLmFlYWUxYWYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3UzMi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X3UzMi5oCkBAIC0yMSwzNSArMjEsMzUgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogZW51bSB4dF91MzJfb3BzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWFRfVTMyX0FORCwKLSBYVF9VMzJfTEVGVFNILAotIFhUX1UzMl9SSUdIVFNILAotIFhUX1UzMl9BVCwKKyAgWFRfVTMyX0FORCwKKyAgWFRfVTMyX0xFRlRTSCwKKyAgWFRfVTMyX1JJR0hUU0gsCisgIFhUX1UzMl9BVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHh0X3UzMl9sb2NhdGlvbl9lbGVtZW50IHsKLSBfX3UzMiBudW1iZXI7Ci0gX191OCBuZXh0b3A7CisgIF9fdTMyIG51bWJlcjsKKyAgX191OCBuZXh0b3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4dF91MzJfdmFsdWVfZWxlbWVudCB7Ci0gX191MzIgbWluOwotIF9fdTMyIG1heDsKKyAgX191MzIgbWluOworICBfX3UzMiBtYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgWFRfVTMyX01BWFNJWkUgMTAKIHN0cnVjdCB4dF91MzJfdGVzdCB7Ci0gc3RydWN0IHh0X3UzMl9sb2NhdGlvbl9lbGVtZW50IGxvY2F0aW9uW1hUX1UzMl9NQVhTSVpFKzFdOworICBzdHJ1Y3QgeHRfdTMyX2xvY2F0aW9uX2VsZW1lbnQgbG9jYXRpb25bWFRfVTMyX01BWFNJWkUgKyAxXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHh0X3UzMl92YWx1ZV9lbGVtZW50IHZhbHVlW1hUX1UzMl9NQVhTSVpFKzFdOwotIF9fdTggbm51bXM7Ci0gX191OCBudmFsdWVzOworICBzdHJ1Y3QgeHRfdTMyX3ZhbHVlX2VsZW1lbnQgdmFsdWVbWFRfVTMyX01BWFNJWkUgKyAxXTsKKyAgX191OCBubnVtczsKKyAgX191OCBudmFsdWVzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeHRfdTMyIHsKLSBzdHJ1Y3QgeHRfdTMyX3Rlc3QgdGVzdHNbWFRfVTMyX01BWFNJWkUrMV07Ci0gX191OCBudGVzdHM7Ci0gX191OCBpbnZlcnQ7CisgIHN0cnVjdCB4dF91MzJfdGVzdCB0ZXN0c1tYVF9VMzJfTUFYU0laRSArIDFdOworICBfX3U4IG50ZXN0czsKKyAgX191OCBpbnZlcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYXJwL2FycF90YWJsZXMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2FycC9hcnBfdGFibGVzLmgKaW5kZXggOTVlMWUyOS4uMTIzNjgzZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYXJwL2FycF90YWJsZXMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9hcnAvYXJwX3RhYmxlcy5oCkBAIC0zNywyOSArMzcsMjkgQEAKICNkZWZpbmUgQVJQVF9TVEFOREFSRF9UQVJHRVQgWFRfU1RBTkRBUkRfVEFSR0VUCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBUlBUX0VSUk9SX1RBUkdFVCBYVF9FUlJPUl9UQVJHRVQKLSNkZWZpbmUgQVJQVF9FTlRSWV9JVEVSQVRFKGVudHJpZXMsIHNpemUsIGZuLCBhcmdzLi4uKSAgIFhUX0VOVFJZX0lURVJBVEUoc3RydWN0IGFycHRfZW50cnksIGVudHJpZXMsIHNpemUsIGZuLCAjIyBhcmdzKQorI2RlZmluZSBBUlBUX0VOVFJZX0lURVJBVEUoZW50cmllcyxzaXplLGZuLGFyZ3MuLi4pIFhUX0VOVFJZX0lURVJBVEUoc3RydWN0IGFycHRfZW50cnksIGVudHJpZXMsIHNpemUsIGZuLCAjI2FyZ3MpCiAjZGVmaW5lIEFSUFRfREVWX0FERFJfTEVOX01BWCAxNgogc3RydWN0IGFycHRfZGV2YWRkcl9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBhZGRyW0FSUFRfREVWX0FERFJfTEVOX01BWF07Ci0gY2hhciBtYXNrW0FSUFRfREVWX0FERFJfTEVOX01BWF07CisgIGNoYXIgYWRkcltBUlBUX0RFVl9BRERSX0xFTl9NQVhdOworICBjaGFyIG1hc2tbQVJQVF9ERVZfQUREUl9MRU5fTUFYXTsKIH07CiBzdHJ1Y3QgYXJwdF9hcnAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaW5fYWRkciBzcmMsIHRndDsKLSBzdHJ1Y3QgaW5fYWRkciBzbXNrLCB0bXNrOwotIF9fdTggYXJobG4sIGFyaGxuX21hc2s7Ci0gc3RydWN0IGFycHRfZGV2YWRkcl9pbmZvIHNyY19kZXZhZGRyOworICBzdHJ1Y3QgaW5fYWRkciBzcmMsIHRndDsKKyAgc3RydWN0IGluX2FkZHIgc21zaywgdG1zazsKKyAgX191OCBhcmhsbiwgYXJobG5fbWFzazsKKyAgc3RydWN0IGFycHRfZGV2YWRkcl9pbmZvIHNyY19kZXZhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgYXJwdF9kZXZhZGRyX2luZm8gdGd0X2RldmFkZHI7Ci0gX19iZTE2IGFycG9wLCBhcnBvcF9tYXNrOwotIF9fYmUxNiBhcmhyZCwgYXJocmRfbWFzazsKLSBfX2JlMTYgYXJwcm8sIGFycHJvX21hc2s7CisgIHN0cnVjdCBhcnB0X2RldmFkZHJfaW5mbyB0Z3RfZGV2YWRkcjsKKyAgX19iZTE2IGFycG9wLCBhcnBvcF9tYXNrOworICBfX2JlMTYgYXJocmQsIGFyaHJkX21hc2s7CisgIF9fYmUxNiBhcnBybywgYXJwcm9fbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBpbmlmYWNlW0lGTkFNU0laXSwgb3V0aWZhY2VbSUZOQU1TSVpdOwotIHVuc2lnbmVkIGNoYXIgaW5pZmFjZV9tYXNrW0lGTkFNU0laXSwgb3V0aWZhY2VfbWFza1tJRk5BTVNJWl07Ci0gX191OCBmbGFnczsKLSBfX3UxNiBpbnZmbGFnczsKKyAgY2hhciBpbmlmYWNlW0lGTkFNU0laXSwgb3V0aWZhY2VbSUZOQU1TSVpdOworICB1bnNpZ25lZCBjaGFyIGluaWZhY2VfbWFza1tJRk5BTVNJWl0sIG91dGlmYWNlX21hc2tbSUZOQU1TSVpdOworICBfX3U4IGZsYWdzOworICBfX3UxNiBpbnZmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBBUlBUX0ZfTUFTSyAweDAwCkBAIC03Nyw1NSArNzcsNTQgQEAKICNkZWZpbmUgQVJQVF9JTlZfQVJQSExOIDB4MDIwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVJQVF9JTlZfTUFTSyAweDAzRkYKLXN0cnVjdCBhcnB0X2VudHJ5Ci17Ci0gc3RydWN0IGFycHRfYXJwIGFycDsKK3N0cnVjdCBhcnB0X2VudHJ5IHsKKyAgc3RydWN0IGFycHRfYXJwIGFycDsKKyAgX191MTYgdGFyZ2V0X29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgdGFyZ2V0X29mZnNldDsKLSBfX3UxNiBuZXh0X29mZnNldDsKLSB1bnNpZ25lZCBpbnQgY29tZWZyb207Ci0gc3RydWN0IHh0X2NvdW50ZXJzIGNvdW50ZXJzOworICBfX3UxNiBuZXh0X29mZnNldDsKKyAgdW5zaWduZWQgaW50IGNvbWVmcm9tOworICBzdHJ1Y3QgeHRfY291bnRlcnMgY291bnRlcnM7CisgIHVuc2lnbmVkIGNoYXIgZWxlbXNbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZWxlbXNbMF07CiB9OwogI2RlZmluZSBBUlBUX0JBU0VfQ1RMIDk2CiAjZGVmaW5lIEFSUFRfU09fU0VUX1JFUExBQ0UgKEFSUFRfQkFTRV9DVEwpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBUlBUX1NPX1NFVF9BRERfQ09VTlRFUlMgKEFSUFRfQkFTRV9DVEwgKyAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVJQVF9TT19TRVRfTUFYIEFSUFRfU09fU0VUX0FERF9DT1VOVEVSUwogI2RlZmluZSBBUlBUX1NPX0dFVF9JTkZPIChBUlBUX0JBU0VfQ1RMKQogI2RlZmluZSBBUlBUX1NPX0dFVF9FTlRSSUVTIChBUlBUX0JBU0VfQ1RMICsgMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFSUFRfU09fR0VUX1JFVklTSU9OX1RBUkdFVCAoQVJQVF9CQVNFX0NUTCArIDMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBUlBUX1NPX0dFVF9NQVggKEFSUFRfU09fR0VUX1JFVklTSU9OX1RBUkdFVCkKIHN0cnVjdCBhcnB0X2dldGluZm8gewotIGNoYXIgbmFtZVtYVF9UQUJMRV9NQVhOQU1FTEVOXTsKKyAgY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOworICB1bnNpZ25lZCBpbnQgdmFsaWRfaG9va3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB2YWxpZF9ob29rczsKLSB1bnNpZ25lZCBpbnQgaG9va19lbnRyeVtORl9BUlBfTlVNSE9PS1NdOwotIHVuc2lnbmVkIGludCB1bmRlcmZsb3dbTkZfQVJQX05VTUhPT0tTXTsKLSB1bnNpZ25lZCBpbnQgbnVtX2VudHJpZXM7CisgIHVuc2lnbmVkIGludCBob29rX2VudHJ5W05GX0FSUF9OVU1IT09LU107CisgIHVuc2lnbmVkIGludCB1bmRlcmZsb3dbTkZfQVJQX05VTUhPT0tTXTsKKyAgdW5zaWduZWQgaW50IG51bV9lbnRyaWVzOworICB1bnNpZ25lZCBpbnQgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHNpemU7CiB9Owogc3RydWN0IGFycHRfcmVwbGFjZSB7Ci0gY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOworICBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07CisgIHVuc2lnbmVkIGludCB2YWxpZF9ob29rczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHZhbGlkX2hvb2tzOwotIHVuc2lnbmVkIGludCBudW1fZW50cmllczsKLSB1bnNpZ25lZCBpbnQgc2l6ZTsKLSB1bnNpZ25lZCBpbnQgaG9va19lbnRyeVtORl9BUlBfTlVNSE9PS1NdOworICB1bnNpZ25lZCBpbnQgbnVtX2VudHJpZXM7CisgIHVuc2lnbmVkIGludCBzaXplOworICB1bnNpZ25lZCBpbnQgaG9va19lbnRyeVtORl9BUlBfTlVNSE9PS1NdOworICB1bnNpZ25lZCBpbnQgdW5kZXJmbG93W05GX0FSUF9OVU1IT09LU107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB1bmRlcmZsb3dbTkZfQVJQX05VTUhPT0tTXTsKLSB1bnNpZ25lZCBpbnQgbnVtX2NvdW50ZXJzOwotIHN0cnVjdCB4dF9jb3VudGVycyBfX3VzZXIgKmNvdW50ZXJzOwotIHN0cnVjdCBhcnB0X2VudHJ5IGVudHJpZXNbMF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBpbnQgbnVtX2NvdW50ZXJzOworICBzdHJ1Y3QgeHRfY291bnRlcnMgX191c2VyICogY291bnRlcnM7CisgIHN0cnVjdCBhcnB0X2VudHJ5IGVudHJpZXNbMF07CiB9Owotc3RydWN0IGFycHRfZ2V0X2VudHJpZXMgewotIGNoYXIgbmFtZVtYVF9UQUJMRV9NQVhOQU1FTEVOXTsKLSB1bnNpZ25lZCBpbnQgc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGFycHRfZW50cnkgZW50cnl0YWJsZVswXTsKK3N0cnVjdCBhcnB0X2dldF9lbnRyaWVzIHsKKyAgY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOworICB1bnNpZ25lZCBpbnQgc2l6ZTsKKyAgc3RydWN0IGFycHRfZW50cnkgZW50cnl0YWJsZVswXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9hcnAvYXJwdF9tYW5nbGUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2FycC9hcnB0X21hbmdsZS5oCmluZGV4IDViMWZkMzAuLjkyZWVjMmQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2FycC9hcnB0X21hbmdsZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2FycC9hcnB0X21hbmdsZS5oCkBAIC0yMSwyNiArMjEsMjUgQEAKICNpbmNsdWRlIDxsaW51eC9uZXRmaWx0ZXJfYXJwL2FycF90YWJsZXMuaD4KICNkZWZpbmUgQVJQVF9NQU5HTEVfQUREUl9MRU5fTUFYIHNpemVvZihzdHJ1Y3QgaW5fYWRkcikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgYXJwdF9tYW5nbGUKLXsKLSBjaGFyIHNyY19kZXZhZGRyW0FSUFRfREVWX0FERFJfTEVOX01BWF07Ci0gY2hhciB0Z3RfZGV2YWRkcltBUlBUX0RFVl9BRERSX0xFTl9NQVhdOworc3RydWN0IGFycHRfbWFuZ2xlIHsKKyAgY2hhciBzcmNfZGV2YWRkcltBUlBUX0RFVl9BRERSX0xFTl9NQVhdOworICBjaGFyIHRndF9kZXZhZGRyW0FSUFRfREVWX0FERFJfTEVOX01BWF07CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCBpbl9hZGRyIHNyY19pcDsKLSB9IHVfczsKLSB1bmlvbiB7CisgICAgc3RydWN0IGluX2FkZHIgc3JjX2lwOworICB9IHVfczsKKyAgdW5pb24geworICAgIHN0cnVjdCBpbl9hZGRyIHRndF9pcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGluX2FkZHIgdGd0X2lwOwotIH0gdV90OwotIHVfaW50OF90IGZsYWdzOwotIGludCB0YXJnZXQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB9IHVfdDsKKyAgX191OCBmbGFnczsKKyAgaW50IHRhcmdldDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBUlBUX01BTkdMRV9TREVWIDB4MDEKICNkZWZpbmUgQVJQVF9NQU5HTEVfVERFViAweDAyCiAjZGVmaW5lIEFSUFRfTUFOR0xFX1NJUCAweDA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBUlBUX01BTkdMRV9USVAgMHgwOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQVJQVF9NQU5HTEVfTUFTSyAweDBmCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfODAyXzMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfODAyXzMuaAppbmRleCAwOWFlN2UwLi5jNjVjYzUzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0XzgwMl8zLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF84MDJfMy5oCkBAIC0yOSw0MCArMjksNDAgQEAKICNkZWZpbmUgSVNfVUkgMHgwMwogI2RlZmluZSBFQlRfODAyXzNfTUFTSyAoRUJUXzgwMl8zX1NBUCB8IEVCVF84MDJfM19UWVBFIHwgRUJUXzgwMl8zKQogc3RydWN0IGhkcl91aSB7Ci0gX191OCBkc2FwOworICBfX3U4IGRzYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc3NhcDsKLSBfX3U4IGN0cmw7Ci0gX191OCBvcmlnWzNdOwotIF9fYmUxNiB0eXBlOworICBfX3U4IHNzYXA7CisgIF9fdTggY3RybDsKKyAgX191OCBvcmlnWzNdOworICBfX2JlMTYgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGhkcl9uaSB7Ci0gX191OCBkc2FwOwotIF9fdTggc3NhcDsKKyAgX191OCBkc2FwOworICBfX3U4IHNzYXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBjdHJsOwotIF9fdTggb3JpZ1szXTsKLSBfX2JlMTYgdHlwZTsKKyAgX19iZTE2IGN0cmw7CisgIF9fdTggb3JpZ1szXTsKKyAgX19iZTE2IHR5cGU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBlYnRfODAyXzNfaGRyIHsKLSBfX3U4IGRhZGRyW0VUSF9BTEVOXTsKLSBfX3U4IHNhZGRyW0VUSF9BTEVOXTsKLSBfX2JlMTYgbGVuOworICBfX3U4IGRhZGRyW0VUSF9BTEVOXTsKKyAgX191OCBzYWRkcltFVEhfQUxFTl07CisgIF9fYmUxNiBsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBzdHJ1Y3QgaGRyX3VpIHVpOwotIHN0cnVjdCBoZHJfbmkgbmk7Ci0gfSBsbGM7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgaGRyX3VpIHVpOworICAgIHN0cnVjdCBoZHJfbmkgbmk7CisgIH0gbGxjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZWJ0XzgwMl8zX2luZm8gewotIF9fdTggc2FwOwotIF9fYmUxNiB0eXBlOworICBfX3U4IHNhcDsKKyAgX19iZTE2IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYml0bWFzazsKLSBfX3U4IGludmZsYWdzOworICBfX3U4IGJpdG1hc2s7CisgIF9fdTggaW52ZmxhZ3M7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9hbW9uZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9hbW9uZy5oCmluZGV4IGFlZTA5ZjcuLjY0MjZjMWIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfYW1vbmcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2Ftb25nLmgKQEAgLTIzLDI4ICsyMywyOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRUJUX0FNT05HX1NSQyAweDAyCiBzdHJ1Y3QgZWJ0X21hY193b3JtaGFzaF90dXBsZSB7Ci0gX191MzIgY21wWzJdOwotIF9fYmUzMiBpcDsKKyAgX191MzIgY21wWzJdOworICBfX2JlMzIgaXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBlYnRfbWFjX3dvcm1oYXNoIHsKLSBpbnQgdGFibGVbMjU3XTsKLSBpbnQgcG9vbHNpemU7CisgIGludCB0YWJsZVsyNTddOworICBpbnQgcG9vbHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBlYnRfbWFjX3dvcm1oYXNoX3R1cGxlIHBvb2xbMF07CisgIHN0cnVjdCBlYnRfbWFjX3dvcm1oYXNoX3R1cGxlIHBvb2xbMF07CiB9OwotI2RlZmluZSBlYnRfbWFjX3dvcm1oYXNoX3NpemUoeCkgKCh4KSA/IHNpemVvZihzdHJ1Y3QgZWJ0X21hY193b3JtaGFzaCkgICArICh4KS0+cG9vbHNpemUgKiBzaXplb2Yoc3RydWN0IGVidF9tYWNfd29ybWhhc2hfdHVwbGUpIDogMCkKKyNkZWZpbmUgZWJ0X21hY193b3JtaGFzaF9zaXplKHgpICgoeCkgPyBzaXplb2Yoc3RydWN0IGVidF9tYWNfd29ybWhhc2gpICsgKHgpLT5wb29sc2l6ZSAqIHNpemVvZihzdHJ1Y3QgZWJ0X21hY193b3JtaGFzaF90dXBsZSkgOiAwKQogc3RydWN0IGVidF9hbW9uZ19pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHdoX2RzdF9vZnM7Ci0gaW50IHdoX3NyY19vZnM7Ci0gaW50IGJpdG1hc2s7CisgIGludCB3aF9kc3Rfb2ZzOworICBpbnQgd2hfc3JjX29mczsKKyAgaW50IGJpdG1hc2s7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRUJUX0FNT05HX0RTVF9ORUcgMHgxCiAjZGVmaW5lIEVCVF9BTU9OR19TUkNfTkVHIDB4MgotI2RlZmluZSBlYnRfYW1vbmdfd2hfZHN0KHgpICgoeCktPndoX2RzdF9vZnMgPyAgIChzdHJ1Y3QgZWJ0X21hY193b3JtaGFzaCopKChjaGFyKikoeCkgKyAoeCktPndoX2RzdF9vZnMpIDogTlVMTCkKLSNkZWZpbmUgZWJ0X2Ftb25nX3doX3NyYyh4KSAoKHgpLT53aF9zcmNfb2ZzID8gICAoc3RydWN0IGVidF9tYWNfd29ybWhhc2gqKSgoY2hhciopKHgpICsgKHgpLT53aF9zcmNfb2ZzKSA6IE5VTEwpCisjZGVmaW5lIGVidF9hbW9uZ193aF9kc3QoeCkgKCh4KS0+d2hfZHN0X29mcyA/IChzdHJ1Y3QgZWJ0X21hY193b3JtaGFzaCAqKSAoKGNoYXIgKikgKHgpICsgKHgpLT53aF9kc3Rfb2ZzKSA6IE5VTEwpCisjZGVmaW5lIGVidF9hbW9uZ193aF9zcmMoeCkgKCh4KS0+d2hfc3JjX29mcyA/IChzdHJ1Y3QgZWJ0X21hY193b3JtaGFzaCAqKSAoKGNoYXIgKikgKHgpICsgKHgpLT53aF9zcmNfb2ZzKSA6IE5VTEwpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFQlRfQU1PTkdfTUFUQ0ggImFtb25nIgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2FycC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9hcnAuaAppbmRleCA3OTFiZDZlLi5mYjY3NmI2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2FycC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfYXJwLmgKQEAgLTI5LDI3ICsyOSwyNiBAQAogI2RlZmluZSBFQlRfQVJQX1NSQ19NQUMgMHgyMAogI2RlZmluZSBFQlRfQVJQX0RTVF9NQUMgMHg0MAogI2RlZmluZSBFQlRfQVJQX0dSQVQgMHg4MAotI2RlZmluZSBFQlRfQVJQX01BU0sgKEVCVF9BUlBfT1BDT0RFIHwgRUJUX0FSUF9IVFlQRSB8IEVCVF9BUlBfUFRZUEUgfCAgIEVCVF9BUlBfU1JDX0lQIHwgRUJUX0FSUF9EU1RfSVAgfCBFQlRfQVJQX1NSQ19NQUMgfCBFQlRfQVJQX0RTVF9NQUMgfCAgIEVCVF9BUlBfR1JBVCkKKyNkZWZpbmUgRUJUX0FSUF9NQVNLIChFQlRfQVJQX09QQ09ERSB8IEVCVF9BUlBfSFRZUEUgfCBFQlRfQVJQX1BUWVBFIHwgRUJUX0FSUF9TUkNfSVAgfCBFQlRfQVJQX0RTVF9JUCB8IEVCVF9BUlBfU1JDX01BQyB8IEVCVF9BUlBfRFNUX01BQyB8IEVCVF9BUlBfR1JBVCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVCVF9BUlBfTUFUQ0ggImFycCIKLXN0cnVjdCBlYnRfYXJwX2luZm8KLXsKLSBfX2JlMTYgaHR5cGU7CitzdHJ1Y3QgZWJ0X2FycF9pbmZvIHsKKyAgX19iZTE2IGh0eXBlOworICBfX2JlMTYgcHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBwdHlwZTsKLSBfX2JlMTYgb3Bjb2RlOwotIF9fYmUzMiBzYWRkcjsKLSBfX2JlMzIgc21zazsKKyAgX19iZTE2IG9wY29kZTsKKyAgX19iZTMyIHNhZGRyOworICBfX2JlMzIgc21zazsKKyAgX19iZTMyIGRhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgZGFkZHI7Ci0gX19iZTMyIGRtc2s7Ci0gdW5zaWduZWQgY2hhciBzbWFkZHJbRVRIX0FMRU5dOwotIHVuc2lnbmVkIGNoYXIgc21tc2tbRVRIX0FMRU5dOworICBfX2JlMzIgZG1zazsKKyAgdW5zaWduZWQgY2hhciBzbWFkZHJbRVRIX0FMRU5dOworICB1bnNpZ25lZCBjaGFyIHNtbXNrW0VUSF9BTEVOXTsKKyAgdW5zaWduZWQgY2hhciBkbWFkZHJbRVRIX0FMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGRtYWRkcltFVEhfQUxFTl07Ci0gdW5zaWduZWQgY2hhciBkbW1za1tFVEhfQUxFTl07Ci0gX191OCBiaXRtYXNrOwotIF9fdTggaW52ZmxhZ3M7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBjaGFyIGRtbXNrW0VUSF9BTEVOXTsKKyAgX191OCBiaXRtYXNrOworICBfX3U4IGludmZsYWdzOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfYXJwcmVwbHkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfYXJwcmVwbHkuaAppbmRleCBlMDU2ZDQ2Li5lMGNkNTAzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2FycHJlcGx5LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9hcnByZXBseS5oCkBAIC0xOSw5ICsxOSw5IEBACiAjaWZuZGVmIF9fTElOVVhfQlJJREdFX0VCVF9BUlBSRVBMWV9ICiAjZGVmaW5lIF9fTElOVVhfQlJJREdFX0VCVF9BUlBSRVBMWV9ICiBzdHJ1Y3QgZWJ0X2FycHJlcGx5X2luZm8gewotIHVuc2lnbmVkIGNoYXIgbWFjW0VUSF9BTEVOXTsKKyAgdW5zaWduZWQgY2hhciBtYWNbRVRIX0FMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdGFyZ2V0OworICBpbnQgdGFyZ2V0OwogfTsKICNkZWZpbmUgRUJUX0FSUFJFUExZX1RBUkdFVCAiYXJwcmVwbHkiCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfaXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfaXAuaAppbmRleCBjZTllYWE3Li5lZjQ1YzY4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2lwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9pcC5oCkBAIC0yNywyMiArMjcsMjIgQEAKICNkZWZpbmUgRUJUX0lQX1NQT1JUIDB4MTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVCVF9JUF9EUE9SVCAweDIwCi0jZGVmaW5lIEVCVF9JUF9NQVNLIChFQlRfSVBfU09VUkNFIHwgRUJUX0lQX0RFU1QgfCBFQlRfSVBfVE9TIHwgRUJUX0lQX1BST1RPIHwgIEVCVF9JUF9TUE9SVCB8IEVCVF9JUF9EUE9SVCApCisjZGVmaW5lIEVCVF9JUF9NQVNLIChFQlRfSVBfU09VUkNFIHwgRUJUX0lQX0RFU1QgfCBFQlRfSVBfVE9TIHwgRUJUX0lQX1BST1RPIHwgRUJUX0lQX1NQT1JUIHwgRUJUX0lQX0RQT1JUKQogI2RlZmluZSBFQlRfSVBfTUFUQ0ggImlwIgogc3RydWN0IGVidF9pcF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHNhZGRyOwotIF9fYmUzMiBkYWRkcjsKLSBfX2JlMzIgc21zazsKLSBfX2JlMzIgZG1zazsKKyAgX19iZTMyIHNhZGRyOworICBfX2JlMzIgZGFkZHI7CisgIF9fYmUzMiBzbXNrOworICBfX2JlMzIgZG1zazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0b3M7Ci0gX191OCBwcm90b2NvbDsKLSBfX3U4IGJpdG1hc2s7Ci0gX191OCBpbnZmbGFnczsKKyAgX191OCB0b3M7CisgIF9fdTggcHJvdG9jb2w7CisgIF9fdTggYml0bWFzazsKKyAgX191OCBpbnZmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc3BvcnRbMl07Ci0gX191MTYgZHBvcnRbMl07CisgIF9fdTE2IHNwb3J0WzJdOworICBfX3UxNiBkcG9ydFsyXTsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2lwNi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9pcDYuaAppbmRleCA1NTJiMGQ3Li5hYzA2MDQ2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2lwNi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfaXA2LmgKQEAgLTI4LDI5ICsyOCwyOSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRUJUX0lQNl9EUE9SVCAweDIwCiAjZGVmaW5lIEVCVF9JUDZfSUNNUDYgMHg0MAotI2RlZmluZSBFQlRfSVA2X01BU0sgKEVCVF9JUDZfU09VUkNFIHwgRUJUX0lQNl9ERVNUIHwgRUJUX0lQNl9UQ0xBU1MgfCAgRUJUX0lQNl9QUk9UTyB8IEVCVF9JUDZfU1BPUlQgfCBFQlRfSVA2X0RQT1JUIHwgICBFQlRfSVA2X0lDTVA2KQorI2RlZmluZSBFQlRfSVA2X01BU0sgKEVCVF9JUDZfU09VUkNFIHwgRUJUX0lQNl9ERVNUIHwgRUJUX0lQNl9UQ0xBU1MgfCBFQlRfSVA2X1BST1RPIHwgRUJUX0lQNl9TUE9SVCB8IEVCVF9JUDZfRFBPUlQgfCBFQlRfSVA2X0lDTVA2KQogI2RlZmluZSBFQlRfSVA2X01BVENIICJpcDYiCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGVidF9pcDZfaW5mbyB7Ci0gc3RydWN0IGluNl9hZGRyIHNhZGRyOwotIHN0cnVjdCBpbjZfYWRkciBkYWRkcjsKLSBzdHJ1Y3QgaW42X2FkZHIgc21zazsKKyAgc3RydWN0IGluNl9hZGRyIHNhZGRyOworICBzdHJ1Y3QgaW42X2FkZHIgZGFkZHI7CisgIHN0cnVjdCBpbjZfYWRkciBzbXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaW42X2FkZHIgZG1zazsKLSBfX3U4IHRjbGFzczsKLSBfX3U4IHByb3RvY29sOwotIF9fdTggYml0bWFzazsKKyAgc3RydWN0IGluNl9hZGRyIGRtc2s7CisgIF9fdTggdGNsYXNzOworICBfX3U4IHByb3RvY29sOworICBfX3U4IGJpdG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW52ZmxhZ3M7Ci0gdW5pb24gewotIF9fdTE2IHNwb3J0WzJdOwotIF9fdTggaWNtcHY2X3R5cGVbMl07CisgIF9fdTggaW52ZmxhZ3M7CisgIHVuaW9uIHsKKyAgICBfX3UxNiBzcG9ydFsyXTsKKyAgICBfX3U4IGljbXB2Nl90eXBlWzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OwotIHVuaW9uIHsKLSBfX3UxNiBkcG9ydFsyXTsKLSBfX3U4IGljbXB2Nl9jb2RlWzJdOworICB9OworICB1bmlvbiB7CisgICAgX191MTYgZHBvcnRbMl07CisgICAgX191OCBpY21wdjZfY29kZVsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKKyAgfTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbGltaXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbGltaXQuaAppbmRleCAzMDNjMmJiLi4zNzU2NDcwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2xpbWl0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9saW1pdC5oCkBAIC0yMywxMiArMjMsMTIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVCVF9MSU1JVF9TQ0FMRSAxMDAwMAogc3RydWN0IGVidF9saW1pdF9pbmZvIHsKLSBfX3UzMiBhdmc7Ci0gX191MzIgYnVyc3Q7CisgIF9fdTMyIGF2ZzsKKyAgX191MzIgYnVyc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgcHJldjsKLSBfX3UzMiBjcmVkaXQ7Ci0gX191MzIgY3JlZGl0X2NhcCwgY29zdDsKKyAgdW5zaWduZWQgbG9uZyBwcmV2OworICBfX3UzMiBjcmVkaXQ7CisgIF9fdTMyIGNyZWRpdF9jYXAsIGNvc3Q7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9sb2cuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbG9nLmgKaW5kZXggNzJhMTA1ZC4uYjI3NmM1YSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9sb2cuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X2xvZy5oCkBAIC0yOSwxMCArMjksMTAgQEAKICNkZWZpbmUgRUJUX0xPR19QUkVGSVhfU0laRSAzMAogI2RlZmluZSBFQlRfTE9HX1dBVENIRVIgImxvZyIKIHN0cnVjdCBlYnRfbG9nX2luZm8gewotIF9fdTggbG9nbGV2ZWw7CisgIF9fdTggbG9nbGV2ZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcHJlZml4W0VCVF9MT0dfUFJFRklYX1NJWkVdOwotIF9fdTMyIGJpdG1hc2s7CisgIF9fdTggcHJlZml4W0VCVF9MT0dfUFJFRklYX1NJWkVdOworICBfX3UzMiBiaXRtYXNrOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbWFya19tLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X21hcmtfbS5oCmluZGV4IDVjMzI1MjIuLjQ5N2IwMTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbWFya19tLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9tYXJrX20uaApAQCAtMjQsMTAgKzI0LDEwIEBACiAjZGVmaW5lIEVCVF9NQVJLX09SIDB4MDIKICNkZWZpbmUgRUJUX01BUktfTUFTSyAoRUJUX01BUktfQU5EIHwgRUJUX01BUktfT1IpCiBzdHJ1Y3QgZWJ0X21hcmtfbV9pbmZvIHsKLSB1bnNpZ25lZCBsb25nIG1hcmssIG1hc2s7CisgIHVuc2lnbmVkIGxvbmcgbWFyaywgbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpbnZlcnQ7Ci0gX191OCBiaXRtYXNrOworICBfX3U4IGludmVydDsKKyAgX191OCBiaXRtYXNrOwogfTsKICNkZWZpbmUgRUJUX01BUktfTUFUQ0ggIm1hcmtfbSIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X21hcmtfdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9tYXJrX3QuaAppbmRleCBlZmM1Nzg2Li5kYmZkZmIzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X21hcmtfdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbWFya190LmgKQEAgLTI0LDkgKzI0LDkgQEAKICNkZWZpbmUgTUFSS19BTkRfVkFMVUUgKDB4ZmZmZmZmZDApCiAjZGVmaW5lIE1BUktfWE9SX1ZBTFVFICgweGZmZmZmZmMwKQogc3RydWN0IGVidF9tYXJrX3RfaW5mbyB7Ci0gdW5zaWduZWQgbG9uZyBtYXJrOworICB1bnNpZ25lZCBsb25nIG1hcms7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0YXJnZXQ7CisgIGludCB0YXJnZXQ7CiB9OwogI2RlZmluZSBFQlRfTUFSS19UQVJHRVQgIm1hcmsiCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbmF0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X25hdC5oCmluZGV4IDI1N2NkYjEuLmViMzQxYzIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbmF0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9uYXQuaApAQCAtMjEsOCArMjEsOCBAQAogI2RlZmluZSBOQVRfQVJQX0JJVCAoMHgwMDAwMDAxMCkKIHN0cnVjdCBlYnRfbmF0X2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIG1hY1tFVEhfQUxFTl07Ci0gaW50IHRhcmdldDsKKyAgdW5zaWduZWQgY2hhciBtYWNbRVRIX0FMRU5dOworICBpbnQgdGFyZ2V0OwogfTsKICNkZWZpbmUgRUJUX1NOQVRfVEFSR0VUICJzbmF0IgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbmZsb2cuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfbmZsb2cuaAppbmRleCA5YmU2ODhhLi44YTllOThlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X25mbG9nLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9uZmxvZy5oCkBAIC0yNywxMyArMjcsMTMgQEAKICNkZWZpbmUgRUJUX05GTE9HX0RFRkFVTFRfVEhSRVNIT0xEIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZWJ0X25mbG9nX2luZm8gewotIF9fdTMyIGxlbjsKLSBfX3UxNiBncm91cDsKLSBfX3UxNiB0aHJlc2hvbGQ7CisgIF9fdTMyIGxlbjsKKyAgX191MTYgZ3JvdXA7CisgIF9fdTE2IHRocmVzaG9sZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZmxhZ3M7Ci0gX191MTYgcGFkOwotIGNoYXIgcHJlZml4W0VCVF9ORkxPR19QUkVGSVhfU0laRV07CisgIF9fdTE2IGZsYWdzOworICBfX3UxNiBwYWQ7CisgIGNoYXIgcHJlZml4W0VCVF9ORkxPR19QUkVGSVhfU0laRV07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9wa3R0eXBlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X3BrdHR5cGUuaAppbmRleCBiYmNmZDBjLi4yZTY1MzVhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X3BrdHR5cGUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X3BrdHR5cGUuaApAQCAtMjEsOCArMjEsOCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgZWJ0X3BrdHR5cGVfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGt0X3R5cGU7Ci0gX191OCBpbnZlcnQ7CisgIF9fdTggcGt0X3R5cGU7CisgIF9fdTggaW52ZXJ0OwogfTsKICNkZWZpbmUgRUJUX1BLVFRZUEVfTUFUQ0ggInBrdHR5cGUiCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9yZWRpcmVjdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9yZWRpcmVjdC5oCmluZGV4IGE4NmJhMmMuLmE5YTczMmMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfcmVkaXJlY3QuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X3JlZGlyZWN0LmgKQEAgLTE5LDcgKzE5LDcgQEAKICNpZm5kZWYgX19MSU5VWF9CUklER0VfRUJUX1JFRElSRUNUX0gKICNkZWZpbmUgX19MSU5VWF9CUklER0VfRUJUX1JFRElSRUNUX0gKIHN0cnVjdCBlYnRfcmVkaXJlY3RfaW5mbyB7Ci0gaW50IHRhcmdldDsKKyAgaW50IHRhcmdldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBFQlRfUkVESVJFQ1RfVEFSR0VUICJyZWRpcmVjdCIKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfc3RwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X3N0cC5oCmluZGV4IDQ3OGJiNDkuLjRlNDIwNjAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfc3RwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF9zdHAuaApAQCAtMzksMjcgKzM5LDI3IEBACiAjZGVmaW5lIEVCVF9TVFBfQ09ORklHX01BU0sgMHgwZmZlCiAjZGVmaW5lIEVCVF9TVFBfTUFUQ0ggInN0cCIKIHN0cnVjdCBlYnRfc3RwX2NvbmZpZ19pbmZvIHsKLSBfX3U4IGZsYWdzOworICBfX3U4IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiByb290X3ByaW9sLCByb290X3ByaW91OwotIGNoYXIgcm9vdF9hZGRyWzZdLCByb290X2FkZHJtc2tbNl07Ci0gX191MzIgcm9vdF9jb3N0bCwgcm9vdF9jb3N0dTsKLSBfX3UxNiBzZW5kZXJfcHJpb2wsIHNlbmRlcl9wcmlvdTsKKyAgX191MTYgcm9vdF9wcmlvbCwgcm9vdF9wcmlvdTsKKyAgY2hhciByb290X2FkZHJbNl0sIHJvb3RfYWRkcm1za1s2XTsKKyAgX191MzIgcm9vdF9jb3N0bCwgcm9vdF9jb3N0dTsKKyAgX191MTYgc2VuZGVyX3ByaW9sLCBzZW5kZXJfcHJpb3U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgc2VuZGVyX2FkZHJbNl0sIHNlbmRlcl9hZGRybXNrWzZdOwotIF9fdTE2IHBvcnRsLCBwb3J0dTsKLSBfX3UxNiBtc2dfYWdlbCwgbXNnX2FnZXU7Ci0gX191MTYgbWF4X2FnZWwsIG1heF9hZ2V1OworICBjaGFyIHNlbmRlcl9hZGRyWzZdLCBzZW5kZXJfYWRkcm1za1s2XTsKKyAgX191MTYgcG9ydGwsIHBvcnR1OworICBfX3UxNiBtc2dfYWdlbCwgbXNnX2FnZXU7CisgIF9fdTE2IG1heF9hZ2VsLCBtYXhfYWdldTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgaGVsbG9fdGltZWwsIGhlbGxvX3RpbWV1OwotIF9fdTE2IGZvcndhcmRfZGVsYXlsLCBmb3J3YXJkX2RlbGF5dTsKKyAgX191MTYgaGVsbG9fdGltZWwsIGhlbGxvX3RpbWV1OworICBfX3UxNiBmb3J3YXJkX2RlbGF5bCwgZm9yd2FyZF9kZWxheXU7CiB9Owogc3RydWN0IGVidF9zdHBfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHlwZTsKLSBzdHJ1Y3QgZWJ0X3N0cF9jb25maWdfaW5mbyBjb25maWc7Ci0gX191MTYgYml0bWFzazsKLSBfX3UxNiBpbnZmbGFnczsKKyAgX191OCB0eXBlOworICBzdHJ1Y3QgZWJ0X3N0cF9jb25maWdfaW5mbyBjb25maWc7CisgIF9fdTE2IGJpdG1hc2s7CisgIF9fdTE2IGludmZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfdWxvZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF91bG9nLmgKaW5kZXggMzdlZTcyZC4uMDI5ZDZiMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF91bG9nLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfYnJpZGdlL2VidF91bG9nLmgKQEAgLTI5LDI4ICsyOSwyNyBAQAogI2RlZmluZSBFQlRfVUxPR19XQVRDSEVSICJ1bG9nIgogI2RlZmluZSBFQlRfVUxPR19WRVJTSU9OIDEKIHN0cnVjdCBlYnRfdWxvZ19pbmZvIHsKLSBfX3UzMiBubGdyb3VwOworICBfX3UzMiBubGdyb3VwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY3ByYW5nZTsKLSB1bnNpZ25lZCBpbnQgcXRocmVzaG9sZDsKLSBjaGFyIHByZWZpeFtFQlRfVUxPR19QUkVGSVhfTEVOXTsKKyAgdW5zaWduZWQgaW50IGNwcmFuZ2U7CisgIHVuc2lnbmVkIGludCBxdGhyZXNob2xkOworICBjaGFyIHByZWZpeFtFQlRfVUxPR19QUkVGSVhfTEVOXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgZWJ0X3Vsb2dfcGFja2V0X21zZyB7Ci0gaW50IHZlcnNpb247Ci0gY2hhciBpbmRldltJRk5BTVNJWl07Ci0gY2hhciBvdXRkZXZbSUZOQU1TSVpdOworICBpbnQgdmVyc2lvbjsKKyAgY2hhciBpbmRldltJRk5BTVNJWl07CisgIGNoYXIgb3V0ZGV2W0lGTkFNU0laXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBwaHlzaW5kZXZbSUZOQU1TSVpdOwotIGNoYXIgcGh5c291dGRldltJRk5BTVNJWl07Ci0gY2hhciBwcmVmaXhbRUJUX1VMT0dfUFJFRklYX0xFTl07Ci0gc3RydWN0IHRpbWV2YWwgc3RhbXA7CisgIGNoYXIgcGh5c2luZGV2W0lGTkFNU0laXTsKKyAgY2hhciBwaHlzb3V0ZGV2W0lGTkFNU0laXTsKKyAgY2hhciBwcmVmaXhbRUJUX1VMT0dfUFJFRklYX0xFTl07CisgIHN0cnVjdCB0aW1ldmFsIHN0YW1wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIG1hcms7Ci0gdW5zaWduZWQgaW50IGhvb2s7Ci0gc2l6ZV90IGRhdGFfbGVuOwotIHVuc2lnbmVkIGNoYXIgZGF0YVswXSBfX2F0dHJpYnV0ZV9fCisgIHVuc2lnbmVkIGxvbmcgbWFyazsKKyAgdW5zaWduZWQgaW50IGhvb2s7CisgIHNpemVfdCBkYXRhX2xlbjsKKyAgdW5zaWduZWQgY2hhciBkYXRhWzBdIF9fYXR0cmlidXRlX18oKGFsaWduZWQoX19hbGlnbm9mX18oc3RydWN0IGVidF91bG9nX2luZm8pKSkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSAoKGFsaWduZWQgKF9fYWxpZ25vZl9fKHN0cnVjdCBlYnRfdWxvZ19pbmZvKSkpKTsKIH0gZWJ0X3Vsb2dfcGFja2V0X21zZ190OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0X3ZsYW4uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfdmxhbi5oCmluZGV4IGE1MGQ4MzMuLjljNmE0MzYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfdmxhbi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRfdmxhbi5oCkBAIC0yNywxMiArMjcsMTIgQEAKICNkZWZpbmUgRUJUX1ZMQU5fTUFUQ0ggInZsYW4iCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGVidF92bGFuX2luZm8gewotIF9fdTE2IGlkOwotIF9fdTggcHJpbzsKLSBfX2JlMTYgZW5jYXA7CisgIF9fdTE2IGlkOworICBfX3U4IHByaW87CisgIF9fYmUxNiBlbmNhcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiaXRtYXNrOwotIF9fdTggaW52ZmxhZ3M7CisgIF9fdTggYml0bWFzazsKKyAgX191OCBpbnZmbGFnczsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9icmlkZ2UvZWJ0YWJsZXMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRhYmxlcy5oCmluZGV4IDI3Zjc2NWEuLjZiMjAxYTMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRhYmxlcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2JyaWRnZS9lYnRhYmxlcy5oCkBAIC0yNiwxMCArMjYsMTAgQEAKICNkZWZpbmUgRUJUX0NIQUlOX01BWE5BTUVMRU4gRUJUX1RBQkxFX01BWE5BTUVMRU4KICNkZWZpbmUgRUJUX0ZVTkNUSU9OX01BWE5BTUVMRU4gRUJUX1RBQkxFX01BWE5BTUVMRU4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEVCVF9BQ0NFUFQgLTEKLSNkZWZpbmUgRUJUX0RST1AgLTIKLSNkZWZpbmUgRUJUX0NPTlRJTlVFIC0zCi0jZGVmaW5lIEVCVF9SRVRVUk4gLTQKKyNkZWZpbmUgRUJUX0FDQ0VQVCAtIDEKKyNkZWZpbmUgRUJUX0RST1AgLSAyCisjZGVmaW5lIEVCVF9DT05USU5VRSAtIDMKKyNkZWZpbmUgRUJUX1JFVFVSTiAtIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5VTV9TVEFOREFSRF9UQVJHRVRTIDQKICNkZWZpbmUgRUJUX1ZFUkRJQ1RfQklUUyAweDAwMDAwMDBGCkBAIC0zNyw0MyArMzcsNDMgQEAKIHN0cnVjdCB4dF90YXJnZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGVidF9jb3VudGVyIHsKLSB1aW50NjRfdCBwY250OwotIHVpbnQ2NF90IGJjbnQ7CisgIHVpbnQ2NF90IHBjbnQ7CisgIHVpbnQ2NF90IGJjbnQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBlYnRfcmVwbGFjZSB7Ci0gY2hhciBuYW1lW0VCVF9UQUJMRV9NQVhOQU1FTEVOXTsKLSB1bnNpZ25lZCBpbnQgdmFsaWRfaG9va3M7Ci0gdW5zaWduZWQgaW50IG5lbnRyaWVzOworICBjaGFyIG5hbWVbRUJUX1RBQkxFX01BWE5BTUVMRU5dOworICB1bnNpZ25lZCBpbnQgdmFsaWRfaG9va3M7CisgIHVuc2lnbmVkIGludCBuZW50cmllczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGVudHJpZXNfc2l6ZTsKLSBzdHJ1Y3QgZWJ0X2VudHJpZXMgX191c2VyICpob29rX2VudHJ5W05GX0JSX05VTUhPT0tTXTsKLSB1bnNpZ25lZCBpbnQgbnVtX2NvdW50ZXJzOwotIHN0cnVjdCBlYnRfY291bnRlciBfX3VzZXIgKmNvdW50ZXJzOworICB1bnNpZ25lZCBpbnQgZW50cmllc19zaXplOworICBzdHJ1Y3QgZWJ0X2VudHJpZXMgX191c2VyICogaG9va19lbnRyeVtORl9CUl9OVU1IT09LU107CisgIHVuc2lnbmVkIGludCBudW1fY291bnRlcnM7CisgIHN0cnVjdCBlYnRfY291bnRlciBfX3VzZXIgKiBjb3VudGVyczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBfX3VzZXIgKmVudHJpZXM7CisgIGNoYXIgX191c2VyICogZW50cmllczsKIH07CiBzdHJ1Y3QgZWJ0X3JlcGxhY2Vfa2VybmVsIHsKLSBjaGFyIG5hbWVbRUJUX1RBQkxFX01BWE5BTUVMRU5dOworICBjaGFyIG5hbWVbRUJUX1RBQkxFX01BWE5BTUVMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdmFsaWRfaG9va3M7Ci0gdW5zaWduZWQgaW50IG5lbnRyaWVzOwotIHVuc2lnbmVkIGludCBlbnRyaWVzX3NpemU7Ci0gc3RydWN0IGVidF9lbnRyaWVzICpob29rX2VudHJ5W05GX0JSX05VTUhPT0tTXTsKKyAgdW5zaWduZWQgaW50IHZhbGlkX2hvb2tzOworICB1bnNpZ25lZCBpbnQgbmVudHJpZXM7CisgIHVuc2lnbmVkIGludCBlbnRyaWVzX3NpemU7CisgIHN0cnVjdCBlYnRfZW50cmllcyAqIGhvb2tfZW50cnlbTkZfQlJfTlVNSE9PS1NdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbnVtX2NvdW50ZXJzOwotIHN0cnVjdCBlYnRfY291bnRlciAqY291bnRlcnM7Ci0gY2hhciAqZW50cmllczsKKyAgdW5zaWduZWQgaW50IG51bV9jb3VudGVyczsKKyAgc3RydWN0IGVidF9jb3VudGVyICogY291bnRlcnM7CisgIGNoYXIgKiBlbnRyaWVzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZWJ0X2VudHJpZXMgewotIHVuc2lnbmVkIGludCBkaXN0aW5ndWlzaGVyOwotIGNoYXIgbmFtZVtFQlRfQ0hBSU5fTUFYTkFNRUxFTl07Ci0gdW5zaWduZWQgaW50IGNvdW50ZXJfb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgZGlzdGluZ3Vpc2hlcjsKKyAgY2hhciBuYW1lW0VCVF9DSEFJTl9NQVhOQU1FTEVOXTsKKyAgdW5zaWduZWQgaW50IGNvdW50ZXJfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcG9saWN5OwotIHVuc2lnbmVkIGludCBuZW50cmllczsKLSBjaGFyIGRhdGFbMF0gX19hdHRyaWJ1dGVfXyAoKGFsaWduZWQgKF9fYWxpZ25vZl9fKHN0cnVjdCBlYnRfcmVwbGFjZSkpKSk7CisgIGludCBwb2xpY3k7CisgIHVuc2lnbmVkIGludCBuZW50cmllczsKKyAgY2hhciBkYXRhWzBdIF9fYXR0cmlidXRlX18oKGFsaWduZWQoX19hbGlnbm9mX18oc3RydWN0IGVidF9yZXBsYWNlKSkpKTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFQlRfRU5UUllfT1JfRU5UUklFUyAweDAxCkBAIC04Miw3ICs4Miw3IEBACiAjZGVmaW5lIEVCVF9TT1VSQ0VNQUMgMHgwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRUJUX0RFU1RNQUMgMHgxMAotI2RlZmluZSBFQlRfRl9NQVNLIChFQlRfTk9QUk9UTyB8IEVCVF84MDJfMyB8IEVCVF9TT1VSQ0VNQUMgfCBFQlRfREVTVE1BQyAgIHwgRUJUX0VOVFJZX09SX0VOVFJJRVMpCisjZGVmaW5lIEVCVF9GX01BU0sgKEVCVF9OT1BST1RPIHwgRUJUXzgwMl8zIHwgRUJUX1NPVVJDRU1BQyB8IEVCVF9ERVNUTUFDIHwgRUJUX0VOVFJZX09SX0VOVFJJRVMpCiAjZGVmaW5lIEVCVF9JUFJPVE8gMHgwMQogI2RlZmluZSBFQlRfSUlOIDB4MDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC05Miw3OCArOTIsODQgQEAKICNkZWZpbmUgRUJUX0lMT0dJQ0FMSU4gMHgyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRUJUX0lMT0dJQ0FMT1VUIDB4NDAKLSNkZWZpbmUgRUJUX0lOVl9NQVNLIChFQlRfSVBST1RPIHwgRUJUX0lJTiB8IEVCVF9JT1VUIHwgRUJUX0lMT0dJQ0FMSU4gICB8IEVCVF9JTE9HSUNBTE9VVCB8IEVCVF9JU09VUkNFIHwgRUJUX0lERVNUKQorI2RlZmluZSBFQlRfSU5WX01BU0sgKEVCVF9JUFJPVE8gfCBFQlRfSUlOIHwgRUJUX0lPVVQgfCBFQlRfSUxPR0lDQUxJTiB8IEVCVF9JTE9HSUNBTE9VVCB8IEVCVF9JU09VUkNFIHwgRUJUX0lERVNUKQogc3RydWN0IGVidF9lbnRyeV9tYXRjaCB7Ci0gdW5pb24geworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVtFQlRfRlVOQ1RJT05fTUFYTkFNRUxFTl07Ci0gc3RydWN0IHh0X21hdGNoICptYXRjaDsKLSB9IHU7Ci0gdW5zaWduZWQgaW50IG1hdGNoX3NpemU7CisgICAgY2hhciBuYW1lW0VCVF9GVU5DVElPTl9NQVhOQU1FTEVOXTsKKyAgICBzdHJ1Y3QgeHRfbWF0Y2ggKiBtYXRjaDsKKyAgfSB1OworICB1bnNpZ25lZCBpbnQgbWF0Y2hfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBkYXRhWzBdIF9fYXR0cmlidXRlX18gKChhbGlnbmVkIChfX2FsaWdub2ZfXyhzdHJ1Y3QgZWJ0X3JlcGxhY2UpKSkpOworICB1bnNpZ25lZCBjaGFyIGRhdGFbMF0gX19hdHRyaWJ1dGVfXygoYWxpZ25lZChfX2FsaWdub2ZfXyhzdHJ1Y3QgZWJ0X3JlcGxhY2UpKSkpOwogfTsKIHN0cnVjdCBlYnRfZW50cnlfd2F0Y2hlciB7Ci0gdW5pb24geworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVtFQlRfRlVOQ1RJT05fTUFYTkFNRUxFTl07Ci0gc3RydWN0IHh0X3RhcmdldCAqd2F0Y2hlcjsKLSB9IHU7Ci0gdW5zaWduZWQgaW50IHdhdGNoZXJfc2l6ZTsKKyAgICBjaGFyIG5hbWVbRUJUX0ZVTkNUSU9OX01BWE5BTUVMRU5dOworICAgIHN0cnVjdCB4dF90YXJnZXQgKiB3YXRjaGVyOworICB9IHU7CisgIHVuc2lnbmVkIGludCB3YXRjaGVyX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZGF0YVswXSBfX2F0dHJpYnV0ZV9fICgoYWxpZ25lZCAoX19hbGlnbm9mX18oc3RydWN0IGVidF9yZXBsYWNlKSkpKTsKKyAgdW5zaWduZWQgY2hhciBkYXRhWzBdIF9fYXR0cmlidXRlX18oKGFsaWduZWQoX19hbGlnbm9mX18oc3RydWN0IGVidF9yZXBsYWNlKSkpKTsKIH07CiBzdHJ1Y3QgZWJ0X2VudHJ5X3RhcmdldCB7Ci0gdW5pb24geworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVtFQlRfRlVOQ1RJT05fTUFYTkFNRUxFTl07Ci0gc3RydWN0IHh0X3RhcmdldCAqdGFyZ2V0OwotIH0gdTsKLSB1bnNpZ25lZCBpbnQgdGFyZ2V0X3NpemU7CisgICAgY2hhciBuYW1lW0VCVF9GVU5DVElPTl9NQVhOQU1FTEVOXTsKKyAgICBzdHJ1Y3QgeHRfdGFyZ2V0ICogdGFyZ2V0OworICB9IHU7CisgIHVuc2lnbmVkIGludCB0YXJnZXRfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBkYXRhWzBdIF9fYXR0cmlidXRlX18gKChhbGlnbmVkIChfX2FsaWdub2ZfXyhzdHJ1Y3QgZWJ0X3JlcGxhY2UpKSkpOworICB1bnNpZ25lZCBjaGFyIGRhdGFbMF0gX19hdHRyaWJ1dGVfXygoYWxpZ25lZChfX2FsaWdub2ZfXyhzdHJ1Y3QgZWJ0X3JlcGxhY2UpKSkpOwogfTsKICNkZWZpbmUgRUJUX1NUQU5EQVJEX1RBUkdFVCAic3RhbmRhcmQiCiBzdHJ1Y3QgZWJ0X3N0YW5kYXJkX3RhcmdldCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBlYnRfZW50cnlfdGFyZ2V0IHRhcmdldDsKLSBpbnQgdmVyZGljdDsKKyAgc3RydWN0IGVidF9lbnRyeV90YXJnZXQgdGFyZ2V0OworICBpbnQgdmVyZGljdDsKIH07CiBzdHJ1Y3QgZWJ0X2VudHJ5IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGJpdG1hc2s7Ci0gdW5zaWduZWQgaW50IGludmZsYWdzOwotIF9fYmUxNiBldGhwcm90bzsKLSBjaGFyIGluW0lGTkFNU0laXTsKKyAgdW5zaWduZWQgaW50IGJpdG1hc2s7CisgIHVuc2lnbmVkIGludCBpbnZmbGFnczsKKyAgX19iZTE2IGV0aHByb3RvOworICBjaGFyIGluW0lGTkFNU0laXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBsb2dpY2FsX2luW0lGTkFNU0laXTsKLSBjaGFyIG91dFtJRk5BTVNJWl07Ci0gY2hhciBsb2dpY2FsX291dFtJRk5BTVNJWl07Ci0gdW5zaWduZWQgY2hhciBzb3VyY2VtYWNbRVRIX0FMRU5dOworICBjaGFyIGxvZ2ljYWxfaW5bSUZOQU1TSVpdOworICBjaGFyIG91dFtJRk5BTVNJWl07CisgIGNoYXIgbG9naWNhbF9vdXRbSUZOQU1TSVpdOworICB1bnNpZ25lZCBjaGFyIHNvdXJjZW1hY1tFVEhfQUxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgc291cmNlbXNrW0VUSF9BTEVOXTsKLSB1bnNpZ25lZCBjaGFyIGRlc3RtYWNbRVRIX0FMRU5dOwotIHVuc2lnbmVkIGNoYXIgZGVzdG1za1tFVEhfQUxFTl07Ci0gdW5zaWduZWQgaW50IHdhdGNoZXJzX29mZnNldDsKKyAgdW5zaWduZWQgY2hhciBzb3VyY2Vtc2tbRVRIX0FMRU5dOworICB1bnNpZ25lZCBjaGFyIGRlc3RtYWNbRVRIX0FMRU5dOworICB1bnNpZ25lZCBjaGFyIGRlc3Rtc2tbRVRIX0FMRU5dOworICB1bnNpZ25lZCBpbnQgd2F0Y2hlcnNfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdGFyZ2V0X29mZnNldDsKLSB1bnNpZ25lZCBpbnQgbmV4dF9vZmZzZXQ7Ci0gdW5zaWduZWQgY2hhciBlbGVtc1swXSBfX2F0dHJpYnV0ZV9fICgoYWxpZ25lZCAoX19hbGlnbm9mX18oc3RydWN0IGVidF9yZXBsYWNlKSkpKTsKKyAgdW5zaWduZWQgaW50IHRhcmdldF9vZmZzZXQ7CisgIHVuc2lnbmVkIGludCBuZXh0X29mZnNldDsKKyAgdW5zaWduZWQgY2hhciBlbGVtc1swXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKF9fYWxpZ25vZl9fKHN0cnVjdCBlYnRfcmVwbGFjZSkpKSk7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRUJUX0JBU0VfQ1RMIDEyOAogI2RlZmluZSBFQlRfU09fU0VUX0VOVFJJRVMgKEVCVF9CQVNFX0NUTCkKLSNkZWZpbmUgRUJUX1NPX1NFVF9DT1VOVEVSUyAoRUJUX1NPX1NFVF9FTlRSSUVTKzEpCi0jZGVmaW5lIEVCVF9TT19TRVRfTUFYIChFQlRfU09fU0VUX0NPVU5URVJTKzEpCisjZGVmaW5lIEVCVF9TT19TRVRfQ09VTlRFUlMgKEVCVF9TT19TRVRfRU5UUklFUyArIDEpCisjZGVmaW5lIEVCVF9TT19TRVRfTUFYIChFQlRfU09fU0VUX0NPVU5URVJTICsgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVCVF9TT19HRVRfSU5GTyAoRUJUX0JBU0VfQ1RMKQotI2RlZmluZSBFQlRfU09fR0VUX0VOVFJJRVMgKEVCVF9TT19HRVRfSU5GTysxKQotI2RlZmluZSBFQlRfU09fR0VUX0lOSVRfSU5GTyAoRUJUX1NPX0dFVF9FTlRSSUVTKzEpCi0jZGVmaW5lIEVCVF9TT19HRVRfSU5JVF9FTlRSSUVTIChFQlRfU09fR0VUX0lOSVRfSU5GTysxKQorI2RlZmluZSBFQlRfU09fR0VUX0VOVFJJRVMgKEVCVF9TT19HRVRfSU5GTyArIDEpCisjZGVmaW5lIEVCVF9TT19HRVRfSU5JVF9JTkZPIChFQlRfU09fR0VUX0VOVFJJRVMgKyAxKQorI2RlZmluZSBFQlRfU09fR0VUX0lOSVRfRU5UUklFUyAoRUJUX1NPX0dFVF9JTklUX0lORk8gKyAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRUJUX1NPX0dFVF9NQVggKEVCVF9TT19HRVRfSU5JVF9FTlRSSUVTKzEpCi0jZGVmaW5lIEVCVF9NQVRDSF9JVEVSQVRFKGUsIGZuLCBhcmdzLi4uKSAgKHsgICB1bnNpZ25lZCBpbnQgX19pOyAgIGludCBfX3JldCA9IDA7ICAgc3RydWN0IGVidF9lbnRyeV9tYXRjaCAqX19tYXRjaDsgICAgIGZvciAoX19pID0gc2l6ZW9mKHN0cnVjdCBlYnRfZW50cnkpOyAgIF9faSA8IChlKS0+d2F0Y2hlcnNfb2Zmc2V0OyAgIF9faSArPSBfX21hdGNoLT5tYXRjaF9zaXplICsgICBzaXplb2Yoc3RydWN0IGVidF9lbnRyeV9tYXRjaCkpIHsgICBfX21hdGNoID0gKHZvaWQgKikoZSkgKyBfX2k7ICAgICBfX3JldCA9IGZuKF9fbWF0Y2ggLCAjIyBhcmdzKTsgICBpZiAoX19yZXQgIT0gMCkgICBicmVhazsgICB9ICAgaWYgKF9fcmV0ID09IDApIHsgICBpZiAoX19pICE9IChlKS0+d2F0Y2hlcnNfb2Zmc2V0KSAgIF9fcmV0ID0gLUVJTlZBTDsgICB9ICAgX19yZXQ7ICB9KQotI2RlZmluZSBFQlRfV0FUQ0hFUl9JVEVSQVRFKGUsIGZuLCBhcmdzLi4uKSAgKHsgICB1bnNpZ25lZCBpbnQgX19pOyAgIGludCBfX3JldCA9IDA7ICAgc3RydWN0IGVidF9lbnRyeV93YXRjaGVyICpfX3dhdGNoZXI7ICAgICBmb3IgKF9faSA9IGUtPndhdGNoZXJzX29mZnNldDsgICBfX2kgPCAoZSktPnRhcmdldF9vZmZzZXQ7ICAgX19pICs9IF9fd2F0Y2hlci0+d2F0Y2hlcl9zaXplICsgICBzaXplb2Yoc3RydWN0IGVidF9lbnRyeV93YXRjaGVyKSkgeyAgIF9fd2F0Y2hlciA9ICh2b2lkICopKGUpICsgX19pOyAgICAgX19yZXQgPSBmbihfX3dhdGNoZXIgLCAjIyBhcmdzKTsgICBpZiAoX19yZXQgIT0gMCkgICBicmVhazsgICB9ICAgaWYgKF9fcmV0ID09IDApIHsgICBpZiAoX19pICE9IChlKS0+dGFyZ2V0X29mZnNldCkgICBfX3JldCA9IC1FSU5WQUw7ICAgfSAgIF9fcmV0OyAgfSkKLSNkZWZpbmUgRUJUX0VOVFJZX0lURVJBVEUoZW50cmllcywgc2l6ZSwgZm4sIGFyZ3MuLi4pICAoeyAgIHVuc2lnbmVkIGludCBfX2k7ICAgaW50IF9fcmV0ID0gMDsgICBzdHJ1Y3QgZWJ0X2VudHJ5ICpfX2VudHJ5OyAgICAgZm9yIChfX2kgPSAwOyBfX2kgPCAoc2l6ZSk7KSB7ICAgX19lbnRyeSA9ICh2b2lkICopKGVudHJpZXMpICsgX19pOyAgIF9fcmV0ID0gZm4oX19lbnRyeSAsICMjIGFyZ3MpOyAgIGlmIChfX3JldCAhPSAwKSAgIGJyZWFrOyAgIGlmIChfX2VudHJ5LT5iaXRtYXNrICE9IDApICAgX19pICs9IF9fZW50cnktPm5leHRfb2Zmc2V0OyAgIGVsc2UgICBfX2kgKz0gc2l6ZW9mKHN0cnVjdCBlYnRfZW50cmllcyk7ICAgfSAgIGlmIChfX3JldCA9PSAwKSB7ICAgaWYgKF9faSAhPSAoc2l6ZSkpICAgX19yZXQgPSAtRUlOVkFMOyAgIH0gICBfX3JldDsgIH0pCisjZGVmaW5lIEVCVF9TT19HRVRfTUFYIChFQlRfU09fR0VUX0lOSVRfRU5UUklFUyArIDEpCisjZGVmaW5lIEVCVF9NQVRDSF9JVEVSQVRFKGUsZm4sYXJncy4uLikgXAorKHsgdW5zaWduZWQgaW50IF9faTsgaW50IF9fcmV0ID0gMDsgc3RydWN0IGVidF9lbnRyeV9tYXRjaCAqIF9fbWF0Y2g7IGZvcihfX2kgPSBzaXplb2Yoc3RydWN0IGVidF9lbnRyeSk7IF9faSA8IChlKS0+d2F0Y2hlcnNfb2Zmc2V0OyBfX2kgKz0gX19tYXRjaC0+bWF0Y2hfc2l6ZSArIHNpemVvZihzdHJ1Y3QgZWJ0X2VudHJ5X21hdGNoKSkgeyBfX21hdGNoID0gKHZvaWQgKikgKGUpICsgX19pOyBfX3JldCA9IGZuKF9fbWF0Y2gsICMjYXJncyk7IGlmKF9fcmV0ICE9IDApIGJyZWFrOyB9IGlmKF9fcmV0ID09IDApIHsgaWYoX19pICE9IChlKS0+d2F0Y2hlcnNfb2Zmc2V0KSBfX3JldCA9IC0gRUlOVkFMOyB9IF9fcmV0OyBcCit9KQorI2RlZmluZSBFQlRfV0FUQ0hFUl9JVEVSQVRFKGUsZm4sYXJncy4uLikgXAorKHsgdW5zaWduZWQgaW50IF9faTsgaW50IF9fcmV0ID0gMDsgc3RydWN0IGVidF9lbnRyeV93YXRjaGVyICogX193YXRjaGVyOyBmb3IoX19pID0gZS0+d2F0Y2hlcnNfb2Zmc2V0OyBfX2kgPCAoZSktPnRhcmdldF9vZmZzZXQ7IF9faSArPSBfX3dhdGNoZXItPndhdGNoZXJfc2l6ZSArIHNpemVvZihzdHJ1Y3QgZWJ0X2VudHJ5X3dhdGNoZXIpKSB7IF9fd2F0Y2hlciA9ICh2b2lkICopIChlKSArIF9faTsgX19yZXQgPSBmbihfX3dhdGNoZXIsICMjYXJncyk7IGlmKF9fcmV0ICE9IDApIGJyZWFrOyB9IGlmKF9fcmV0ID09IDApIHsgaWYoX19pICE9IChlKS0+dGFyZ2V0X29mZnNldCkgX19yZXQgPSAtIEVJTlZBTDsgfSBfX3JldDsgXAorfSkKKyNkZWZpbmUgRUJUX0VOVFJZX0lURVJBVEUoZW50cmllcyxzaXplLGZuLGFyZ3MuLi4pIFwKKyh7IHVuc2lnbmVkIGludCBfX2k7IGludCBfX3JldCA9IDA7IHN0cnVjdCBlYnRfZW50cnkgKiBfX2VudHJ5OyBmb3IoX19pID0gMDsgX19pIDwgKHNpemUpOykgeyBfX2VudHJ5ID0gKHZvaWQgKikgKGVudHJpZXMpICsgX19pOyBfX3JldCA9IGZuKF9fZW50cnksICMjYXJncyk7IGlmKF9fcmV0ICE9IDApIGJyZWFrOyBpZihfX2VudHJ5LT5iaXRtYXNrICE9IDApIF9faSArPSBfX2VudHJ5LT5uZXh0X29mZnNldDsgZWxzZSBfX2kgKz0gc2l6ZW9mKHN0cnVjdCBlYnRfZW50cmllcyk7IH0gaWYoX19yZXQgPT0gMCkgeyBpZihfX2kgIT0gKHNpemUpKSBfX3JldCA9IC0gRUlOVkFMOyB9IF9fcmV0OyBcCit9KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfZGVjbmV0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9kZWNuZXQuaAppbmRleCA5NTUyZGQ1Li5kNWYyZmQ3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9kZWNuZXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9kZWNuZXQuaApAQCAtMzcsMzQgKzM3LDM0IEBACiAjZGVmaW5lIE5GX0ROX05VTUhPT0tTIDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mX2RuX2hvb2tfcHJpb3JpdGllcyB7Ci0gTkZfRE5fUFJJX0ZJUlNUID0gSU5UX01JTiwKLSBORl9ETl9QUklfQ09OTlRSQUNLID0gLTIwMCwKLSBORl9ETl9QUklfTUFOR0xFID0gLTE1MCwKKyAgTkZfRE5fUFJJX0ZJUlNUID0gSU5UX01JTiwKKyAgTkZfRE5fUFJJX0NPTk5UUkFDSyA9IC0gMjAwLAorICBORl9ETl9QUklfTUFOR0xFID0gLSAxNTAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GX0ROX1BSSV9OQVRfRFNUID0gLTEwMCwKLSBORl9ETl9QUklfRklMVEVSID0gMCwKLSBORl9ETl9QUklfTkFUX1NSQyA9IDEwMCwKLSBORl9ETl9QUklfRE5SVE1TRyA9IDIwMCwKKyAgTkZfRE5fUFJJX05BVF9EU1QgPSAtIDEwMCwKKyAgTkZfRE5fUFJJX0ZJTFRFUiA9IDAsCisgIE5GX0ROX1BSSV9OQVRfU1JDID0gMTAwLAorICBORl9ETl9QUklfRE5SVE1TRyA9IDIwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZfRE5fUFJJX0xBU1QgPSBJTlRfTUFYLAorICBORl9ETl9QUklfTEFTVCA9IElOVF9NQVgsCiB9Owogc3RydWN0IG5mX2RuX3J0bXNnIHsKLSBpbnQgbmZkbl9pZmluZGV4OworICBpbnQgbmZkbl9pZmluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIE5GRE5fUlRNU0cocikgKCh1bnNpZ25lZCBjaGFyICopKHIpICsgTkxNU0dfQUxJR04oc2l6ZW9mKHN0cnVjdCBuZl9kbl9ydG1zZykpKQorI2RlZmluZSBORkROX1JUTVNHKHIpICgodW5zaWduZWQgY2hhciAqKSAocikgKyBOTE1TR19BTElHTihzaXplb2Yoc3RydWN0IG5mX2RuX3J0bXNnKSkpCiAjZGVmaW5lIEROUk1HX0wxX0dST1VQIDB4MDEKICNkZWZpbmUgRE5STUdfTDJfR1JPVVAgMHgwMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIEROUk5HX05MR1JQX05PTkUsCisgIEROUk5HX05MR1JQX05PTkUsCiAjZGVmaW5lIEROUk5HX05MR1JQX05PTkUgRE5STkdfTkxHUlBfTk9ORQotIEROUk5HX05MR1JQX0wxLAorICBETlJOR19OTEdSUF9MMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEROUk5HX05MR1JQX0wxIEROUk5HX05MR1JQX0wxCi0gRE5STkdfTkxHUlBfTDIsCisgIEROUk5HX05MR1JQX0wyLAogI2RlZmluZSBETlJOR19OTEdSUF9MMiBETlJOR19OTEdSUF9MMgotIF9fRE5STkdfTkxHUlBfTUFYCisgIF9fRE5STkdfTkxHUlBfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRE5STkdfTkxHUlBfTUFYIChfX0ROUk5HX05MR1JQX01BWCAtIDEpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0LmgKaW5kZXggYWExZDczZC4uMjgyYTU0YyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQuaApAQCAtNDQsMjQgKzQ0LDI0IEBACiAjZGVmaW5lIE5GX0lQX1BPU1RfUk9VVElORyA0CiAjZGVmaW5lIE5GX0lQX05VTUhPT0tTIDUKIGVudW0gbmZfaXBfaG9va19wcmlvcml0aWVzIHsKLSBORl9JUF9QUklfRklSU1QgPSBJTlRfTUlOLAorICBORl9JUF9QUklfRklSU1QgPSBJTlRfTUlOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORl9JUF9QUklfQ09OTlRSQUNLX0RFRlJBRyA9IC00MDAsCi0gTkZfSVBfUFJJX1JBVyA9IC0zMDAsCi0gTkZfSVBfUFJJX1NFTElOVVhfRklSU1QgPSAtMjI1LAotIE5GX0lQX1BSSV9DT05OVFJBQ0sgPSAtMjAwLAorICBORl9JUF9QUklfQ09OTlRSQUNLX0RFRlJBRyA9IC0gNDAwLAorICBORl9JUF9QUklfUkFXID0gLSAzMDAsCisgIE5GX0lQX1BSSV9TRUxJTlVYX0ZJUlNUID0gLSAyMjUsCisgIE5GX0lQX1BSSV9DT05OVFJBQ0sgPSAtIDIwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZfSVBfUFJJX01BTkdMRSA9IC0xNTAsCi0gTkZfSVBfUFJJX05BVF9EU1QgPSAtMTAwLAotIE5GX0lQX1BSSV9GSUxURVIgPSAwLAotIE5GX0lQX1BSSV9TRUNVUklUWSA9IDUwLAorICBORl9JUF9QUklfTUFOR0xFID0gLSAxNTAsCisgIE5GX0lQX1BSSV9OQVRfRFNUID0gLSAxMDAsCisgIE5GX0lQX1BSSV9GSUxURVIgPSAwLAorICBORl9JUF9QUklfU0VDVVJJVFkgPSA1MCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZfSVBfUFJJX05BVF9TUkMgPSAxMDAsCi0gTkZfSVBfUFJJX1NFTElOVVhfTEFTVCA9IDIyNSwKLSBORl9JUF9QUklfQ09OTlRSQUNLX0hFTFBFUiA9IDMwMCwKLSBORl9JUF9QUklfQ09OTlRSQUNLX0NPTkZJUk0gPSBJTlRfTUFYLAorICBORl9JUF9QUklfTkFUX1NSQyA9IDEwMCwKKyAgTkZfSVBfUFJJX1NFTElOVVhfTEFTVCA9IDIyNSwKKyAgTkZfSVBfUFJJX0NPTk5UUkFDS19IRUxQRVIgPSAzMDAsCisgIE5GX0lQX1BSSV9DT05OVFJBQ0tfQ09ORklSTSA9IElOVF9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GX0lQX1BSSV9MQVNUID0gSU5UX01BWCwKKyAgTkZfSVBfUFJJX0xBU1QgPSBJTlRfTUFYLAogfTsKICNkZWZpbmUgU09fT1JJR0lOQUxfRFNUIDgwCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXBfdGFibGVzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwX3RhYmxlcy5oCmluZGV4IDEzMmIwYWQuLjA0ODk2YzYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXBfdGFibGVzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcF90YWJsZXMuaApAQCAtNTcsMTggKzU3LDE4IEBACiAjZGVmaW5lIElQVF9TVEFOREFSRF9UQVJHRVQgWFRfU1RBTkRBUkRfVEFSR0VUCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJUFRfRVJST1JfVEFSR0VUIFhUX0VSUk9SX1RBUkdFVAotI2RlZmluZSBJUFRfTUFUQ0hfSVRFUkFURShlLCBmbiwgYXJncy4uLikgICBYVF9NQVRDSF9JVEVSQVRFKHN0cnVjdCBpcHRfZW50cnksIGUsIGZuLCAjIyBhcmdzKQotI2RlZmluZSBJUFRfRU5UUllfSVRFUkFURShlbnRyaWVzLCBzaXplLCBmbiwgYXJncy4uLikgICBYVF9FTlRSWV9JVEVSQVRFKHN0cnVjdCBpcHRfZW50cnksIGVudHJpZXMsIHNpemUsIGZuLCAjIyBhcmdzKQorI2RlZmluZSBJUFRfTUFUQ0hfSVRFUkFURShlLGZuLGFyZ3MuLi4pIFhUX01BVENIX0lURVJBVEUoc3RydWN0IGlwdF9lbnRyeSwgZSwgZm4sICMjYXJncykKKyNkZWZpbmUgSVBUX0VOVFJZX0lURVJBVEUoZW50cmllcyxzaXplLGZuLGFyZ3MuLi4pIFhUX0VOVFJZX0lURVJBVEUoc3RydWN0IGlwdF9lbnRyeSwgZW50cmllcywgc2l6ZSwgZm4sICMjYXJncykKIHN0cnVjdCBpcHRfaXAgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaW5fYWRkciBzcmMsIGRzdDsKLSBzdHJ1Y3QgaW5fYWRkciBzbXNrLCBkbXNrOwotIGNoYXIgaW5pZmFjZVtJRk5BTVNJWl0sIG91dGlmYWNlW0lGTkFNU0laXTsKLSB1bnNpZ25lZCBjaGFyIGluaWZhY2VfbWFza1tJRk5BTVNJWl0sIG91dGlmYWNlX21hc2tbSUZOQU1TSVpdOworICBzdHJ1Y3QgaW5fYWRkciBzcmMsIGRzdDsKKyAgc3RydWN0IGluX2FkZHIgc21zaywgZG1zazsKKyAgY2hhciBpbmlmYWNlW0lGTkFNU0laXSwgb3V0aWZhY2VbSUZOQU1TSVpdOworICB1bnNpZ25lZCBjaGFyIGluaWZhY2VfbWFza1tJRk5BTVNJWl0sIG91dGlmYWNlX21hc2tbSUZOQU1TSVpdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBwcm90bzsKLSBfX3U4IGZsYWdzOwotIF9fdTggaW52ZmxhZ3M7CisgIF9fdTE2IHByb3RvOworICBfX3U4IGZsYWdzOworICBfX3U4IGludmZsYWdzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElQVF9GX0ZSQUcgMHgwMQpAQCAtODYsMTQgKzg2LDE0IEBACiAjZGVmaW5lIElQVF9JTlZfTUFTSyAweDdGCiBzdHJ1Y3QgaXB0X2VudHJ5IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGlwdF9pcCBpcDsKLSB1bnNpZ25lZCBpbnQgbmZjYWNoZTsKLSBfX3UxNiB0YXJnZXRfb2Zmc2V0OwotIF9fdTE2IG5leHRfb2Zmc2V0OworICBzdHJ1Y3QgaXB0X2lwIGlwOworICB1bnNpZ25lZCBpbnQgbmZjYWNoZTsKKyAgX191MTYgdGFyZ2V0X29mZnNldDsKKyAgX191MTYgbmV4dF9vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBjb21lZnJvbTsKLSBzdHJ1Y3QgeHRfY291bnRlcnMgY291bnRlcnM7Ci0gdW5zaWduZWQgY2hhciBlbGVtc1swXTsKKyAgdW5zaWduZWQgaW50IGNvbWVmcm9tOworICBzdHJ1Y3QgeHRfY291bnRlcnMgY291bnRlcnM7CisgIHVuc2lnbmVkIGNoYXIgZWxlbXNbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBUX0JBU0VfQ1RMIDY0CkBAIC0xMDgsNDcgKzEwOCw0NCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBUX1NPX0dFVF9NQVggSVBUX1NPX0dFVF9SRVZJU0lPTl9UQVJHRVQKIHN0cnVjdCBpcHRfaWNtcCB7Ci0gX191OCB0eXBlOwotIF9fdTggY29kZVsyXTsKKyAgX191OCB0eXBlOworICBfX3U4IGNvZGVbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW52ZmxhZ3M7CisgIF9fdTggaW52ZmxhZ3M7CiB9OwogI2RlZmluZSBJUFRfSUNNUF9JTlYgMHgwMQogc3RydWN0IGlwdF9nZXRpbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOwotIHVuc2lnbmVkIGludCB2YWxpZF9ob29rczsKLSB1bnNpZ25lZCBpbnQgaG9va19lbnRyeVtORl9JTkVUX05VTUhPT0tTXTsKLSB1bnNpZ25lZCBpbnQgdW5kZXJmbG93W05GX0lORVRfTlVNSE9PS1NdOworICBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07CisgIHVuc2lnbmVkIGludCB2YWxpZF9ob29rczsKKyAgdW5zaWduZWQgaW50IGhvb2tfZW50cnlbTkZfSU5FVF9OVU1IT09LU107CisgIHVuc2lnbmVkIGludCB1bmRlcmZsb3dbTkZfSU5FVF9OVU1IT09LU107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBudW1fZW50cmllczsKLSB1bnNpZ25lZCBpbnQgc2l6ZTsKKyAgdW5zaWduZWQgaW50IG51bV9lbnRyaWVzOworICB1bnNpZ25lZCBpbnQgc2l6ZTsKIH07CiBzdHJ1Y3QgaXB0X3JlcGxhY2UgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07Ci0gdW5zaWduZWQgaW50IHZhbGlkX2hvb2tzOwotIHVuc2lnbmVkIGludCBudW1fZW50cmllczsKLSB1bnNpZ25lZCBpbnQgc2l6ZTsKKyAgY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOworICB1bnNpZ25lZCBpbnQgdmFsaWRfaG9va3M7CisgIHVuc2lnbmVkIGludCBudW1fZW50cmllczsKKyAgdW5zaWduZWQgaW50IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBob29rX2VudHJ5W05GX0lORVRfTlVNSE9PS1NdOwotIHVuc2lnbmVkIGludCB1bmRlcmZsb3dbTkZfSU5FVF9OVU1IT09LU107Ci0gdW5zaWduZWQgaW50IG51bV9jb3VudGVyczsKLSBzdHJ1Y3QgeHRfY291bnRlcnMgX191c2VyICpjb3VudGVyczsKKyAgdW5zaWduZWQgaW50IGhvb2tfZW50cnlbTkZfSU5FVF9OVU1IT09LU107CisgIHVuc2lnbmVkIGludCB1bmRlcmZsb3dbTkZfSU5FVF9OVU1IT09LU107CisgIHVuc2lnbmVkIGludCBudW1fY291bnRlcnM7CisgIHN0cnVjdCB4dF9jb3VudGVycyBfX3VzZXIgKiBjb3VudGVyczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGlwdF9lbnRyeSBlbnRyaWVzWzBdOworICBzdHJ1Y3QgaXB0X2VudHJ5IGVudHJpZXNbMF07CiB9Owogc3RydWN0IGlwdF9nZXRfZW50cmllcyB7Ci0gY2hhciBuYW1lW1hUX1RBQkxFX01BWE5BTUVMRU5dOworICBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBzaXplOwotIHN0cnVjdCBpcHRfZW50cnkgZW50cnl0YWJsZVswXTsKKyAgdW5zaWduZWQgaW50IHNpemU7CisgIHN0cnVjdCBpcHRfZW50cnkgZW50cnl0YWJsZVswXTsKIH07Ci1zdGF0aWMgX19pbmxpbmVfXyBzdHJ1Y3QgeHRfZW50cnlfdGFyZ2V0ICoKK3N0YXRpYyBfX2lubGluZV9fIHN0cnVjdCB4dF9lbnRyeV90YXJnZXQgKiBpcHRfZ2V0X3RhcmdldChzdHJ1Y3QgaXB0X2VudHJ5ICogZSkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLWlwdF9nZXRfdGFyZ2V0KHN0cnVjdCBpcHRfZW50cnkgKmUpCi17Ci0gcmV0dXJuICh2b2lkICopZSArIGUtPnRhcmdldF9vZmZzZXQ7CisgIHJldHVybih2b2lkICopIGUgKyBlLT50YXJnZXRfb2Zmc2V0OwogfQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfQ0xVU1RFUklQLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9DTFVTVEVSSVAuaAppbmRleCA5NDY0NTQ1Li42MWY3MmE4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9DTFVTVEVSSVAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9DTFVTVEVSSVAuaApAQCAtMjIsOSArMjIsOSBAQAogI2luY2x1ZGUgPGxpbnV4L2lmX2V0aGVyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBjbHVzdGVyaXBfaGFzaG1vZGUgewotIENMVVNURVJJUF9IQVNITU9ERV9TSVAgPSAwLAotIENMVVNURVJJUF9IQVNITU9ERV9TSVBfU1BULAotIENMVVNURVJJUF9IQVNITU9ERV9TSVBfU1BUX0RQVCwKKyAgQ0xVU1RFUklQX0hBU0hNT0RFX1NJUCA9IDAsCisgIENMVVNURVJJUF9IQVNITU9ERV9TSVBfU1BULAorICBDTFVTVEVSSVBfSEFTSE1PREVfU0lQX1NQVF9EUFQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQ0xVU1RFUklQX0hBU0hNT0RFX01BWCBDTFVTVEVSSVBfSEFTSE1PREVfU0lQX1NQVF9EUFQKQEAgLTMzLDE2ICszMywxNiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBjbHVzdGVyaXBfY29uZmlnOwogc3RydWN0IGlwdF9jbHVzdGVyaXBfdGd0X2luZm8gewotIF9fdTMyIGZsYWdzOwotIF9fdTggY2x1c3Rlcm1hY1tFVEhfQUxFTl07CisgIF9fdTMyIGZsYWdzOworICBfX3U4IGNsdXN0ZXJtYWNbRVRIX0FMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBudW1fdG90YWxfbm9kZXM7Ci0gX191MTYgbnVtX2xvY2FsX25vZGVzOwotIF9fdTE2IGxvY2FsX25vZGVzW0NMVVNURVJJUF9NQVhfTk9ERVNdOwotIF9fdTMyIGhhc2hfbW9kZTsKKyAgX191MTYgbnVtX3RvdGFsX25vZGVzOworICBfX3UxNiBudW1fbG9jYWxfbm9kZXM7CisgIF9fdTE2IGxvY2FsX25vZGVzW0NMVVNURVJJUF9NQVhfTk9ERVNdOworICBfX3UzMiBoYXNoX21vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhhc2hfaW5pdHZhbDsKLSBzdHJ1Y3QgY2x1c3RlcmlwX2NvbmZpZyAqY29uZmlnOworICBfX3UzMiBoYXNoX2luaXR2YWw7CisgIHN0cnVjdCBjbHVzdGVyaXBfY29uZmlnICogY29uZmlnOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X0VDTi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfRUNOLmgKaW5kZXggZGVmZjczMi4uOTVkZmQ5MiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfRUNOLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfRUNOLmgKQEAgLTI4LDE0ICsyOCwxNCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBUX0VDTl9PUF9NQVNLIDB4Y2UKIHN0cnVjdCBpcHRfRUNOX2luZm8gewotIF9fdTggb3BlcmF0aW9uOwotIF9fdTggaXBfZWN0OworICBfX3U4IG9wZXJhdGlvbjsKKyAgX191OCBpcF9lY3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBzdHJ1Y3QgewotIF9fdTggZWNlOjEsIGN3cjoxOwotIH0gdGNwOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTggZWNlIDogMSwgY3dyIDogMTsKKyAgICB9IHRjcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBwcm90bzsKKyAgfSBwcm90bzsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X0xPRy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfTE9HLmgKaW5kZXggMGUwMTZiYi4uZWQwMjFlYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfTE9HLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfTE9HLmgKQEAgLTI5LDEwICsyOSwxMCBAQAogI2RlZmluZSBJUFRfTE9HX01BQ0RFQ09ERSAweDIwCiAjZGVmaW5lIElQVF9MT0dfTUFTSyAweDJmCiBzdHJ1Y3QgaXB0X2xvZ19pbmZvIHsKLSB1bnNpZ25lZCBjaGFyIGxldmVsOworICB1bnNpZ25lZCBjaGFyIGxldmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGxvZ2ZsYWdzOwotIGNoYXIgcHJlZml4WzMwXTsKKyAgdW5zaWduZWQgY2hhciBsb2dmbGFnczsKKyAgY2hhciBwcmVmaXhbMzBdOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X1JFSkVDVC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfUkVKRUNULmgKaW5kZXggZDEzM2I3MS4uOGUxNTY0NyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfUkVKRUNULmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfUkVKRUNULmgKQEAgLTE5LDIxICsxOSwyMSBAQAogI2lmbmRlZiBfSVBUX1JFSkVDVF9ICiAjZGVmaW5lIF9JUFRfUkVKRUNUX0gKIGVudW0gaXB0X3JlamVjdF93aXRoIHsKLSBJUFRfSUNNUF9ORVRfVU5SRUFDSEFCTEUsCisgIElQVF9JQ01QX05FVF9VTlJFQUNIQUJMRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBUX0lDTVBfSE9TVF9VTlJFQUNIQUJMRSwKLSBJUFRfSUNNUF9QUk9UX1VOUkVBQ0hBQkxFLAotIElQVF9JQ01QX1BPUlRfVU5SRUFDSEFCTEUsCi0gSVBUX0lDTVBfRUNIT1JFUExZLAorICBJUFRfSUNNUF9IT1NUX1VOUkVBQ0hBQkxFLAorICBJUFRfSUNNUF9QUk9UX1VOUkVBQ0hBQkxFLAorICBJUFRfSUNNUF9QT1JUX1VOUkVBQ0hBQkxFLAorICBJUFRfSUNNUF9FQ0hPUkVQTFksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQVF9JQ01QX05FVF9QUk9ISUJJVEVELAotIElQVF9JQ01QX0hPU1RfUFJPSElCSVRFRCwKLSBJUFRfVENQX1JFU0VULAotIElQVF9JQ01QX0FETUlOX1BST0hJQklURUQKKyAgSVBUX0lDTVBfTkVUX1BST0hJQklURUQsCisgIElQVF9JQ01QX0hPU1RfUFJPSElCSVRFRCwKKyAgSVBUX1RDUF9SRVNFVCwKKyAgSVBUX0lDTVBfQURNSU5fUFJPSElCSVRFRAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaXB0X3JlamVjdF9pbmZvIHsKLSBlbnVtIGlwdF9yZWplY3Rfd2l0aCB3aXRoOworICBlbnVtIGlwdF9yZWplY3Rfd2l0aCB3aXRoOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X1RUTC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfVFRMLmgKaW5kZXggY2EyNzY4Yi4uOTUyYzkwYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfVFRMLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfVFRMLmgKQEAgLTIxLDE1ICsyMSwxNSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBUX1RUTF9TRVQgPSAwLAotIElQVF9UVExfSU5DLAotIElQVF9UVExfREVDCisgIElQVF9UVExfU0VUID0gMCwKKyAgSVBUX1RUTF9JTkMsCisgIElQVF9UVExfREVDCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVBUX1RUTF9NQVhNT0RFIElQVF9UVExfREVDCiBzdHJ1Y3QgaXB0X1RUTF9pbmZvIHsKLSBfX3U4IG1vZGU7Ci0gX191OCB0dGw7CisgIF9fdTggbW9kZTsKKyAgX191OCB0dGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfVUxPRy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfVUxPRy5oCmluZGV4IDhlOGY1NzIuLmVlNmE1NTcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X1VMT0cuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9VTE9HLmgKQEAgLTI5LDI3ICsyOSwyNyBAQAogI2RlZmluZSBVTE9HX1BSRUZJWF9MRU4gMzIKICNkZWZpbmUgVUxPR19NQVhfUUxFTiA1MAogc3RydWN0IGlwdF91bG9nX2luZm8gewotIHVuc2lnbmVkIGludCBubF9ncm91cDsKKyAgdW5zaWduZWQgaW50IG5sX2dyb3VwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaXplX3QgY29weV9yYW5nZTsKLSBzaXplX3QgcXRocmVzaG9sZDsKLSBjaGFyIHByZWZpeFtVTE9HX1BSRUZJWF9MRU5dOworICBzaXplX3QgY29weV9yYW5nZTsKKyAgc2l6ZV90IHF0aHJlc2hvbGQ7CisgIGNoYXIgcHJlZml4W1VMT0dfUFJFRklYX0xFTl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHVsb2dfcGFja2V0X21zZyB7Ci0gdW5zaWduZWQgbG9uZyBtYXJrOwotIGxvbmcgdGltZXN0YW1wX3NlYzsKLSBsb25nIHRpbWVzdGFtcF91c2VjOworICB1bnNpZ25lZCBsb25nIG1hcms7CisgIGxvbmcgdGltZXN0YW1wX3NlYzsKKyAgbG9uZyB0aW1lc3RhbXBfdXNlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGhvb2s7Ci0gY2hhciBpbmRldl9uYW1lW0lGTkFNU0laXTsKLSBjaGFyIG91dGRldl9uYW1lW0lGTkFNU0laXTsKLSBzaXplX3QgZGF0YV9sZW47CisgIHVuc2lnbmVkIGludCBob29rOworICBjaGFyIGluZGV2X25hbWVbSUZOQU1TSVpdOworICBjaGFyIG91dGRldl9uYW1lW0lGTkFNU0laXTsKKyAgc2l6ZV90IGRhdGFfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHByZWZpeFtVTE9HX1BSRUZJWF9MRU5dOwotIHVuc2lnbmVkIGNoYXIgbWFjX2xlbjsKLSB1bnNpZ25lZCBjaGFyIG1hY1tVTE9HX01BQ19MRU5dOwotIHVuc2lnbmVkIGNoYXIgcGF5bG9hZFswXTsKKyAgY2hhciBwcmVmaXhbVUxPR19QUkVGSVhfTEVOXTsKKyAgdW5zaWduZWQgY2hhciBtYWNfbGVuOworICB1bnNpZ25lZCBjaGFyIG1hY1tVTE9HX01BQ19MRU5dOworICB1bnNpZ25lZCBjaGFyIHBheWxvYWRbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSB1bG9nX3BhY2tldF9tc2dfdDsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfYWguaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjQvaXB0X2FoLmgKaW5kZXggMDQ4NWM2ZC4uYjhiOGIzNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfYWguaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9haC5oCkBAIC0yMSw4ICsyMSw4IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBpcHRfYWggewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcGlzWzJdOwotIF9fdTggaW52ZmxhZ3M7CisgIF9fdTMyIHNwaXNbMl07CisgIF9fdTggaW52ZmxhZ3M7CiB9OwogI2RlZmluZSBJUFRfQUhfSU5WX1NQSSAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfZWNuLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9lY24uaAppbmRleCA4NWJkZDAxLi4yMGU3NTdlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9lY24uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF9lY24uaApAQCAtMjIsMTIgKzIyLDEyIEBACiAjZGVmaW5lIGlwdF9lY25faW5mbyB4dF9lY25faW5mbwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIElQVF9FQ05fSVBfTUFTSyA9IFhUX0VDTl9JUF9NQVNLLAotIElQVF9FQ05fT1BfTUFUQ0hfSVAgPSBYVF9FQ05fT1BfTUFUQ0hfSVAsCi0gSVBUX0VDTl9PUF9NQVRDSF9FQ0UgPSBYVF9FQ05fT1BfTUFUQ0hfRUNFLAorICBJUFRfRUNOX0lQX01BU0sgPSBYVF9FQ05fSVBfTUFTSywKKyAgSVBUX0VDTl9PUF9NQVRDSF9JUCA9IFhUX0VDTl9PUF9NQVRDSF9JUCwKKyAgSVBUX0VDTl9PUF9NQVRDSF9FQ0UgPSBYVF9FQ05fT1BfTUFUQ0hfRUNFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFRfRUNOX09QX01BVENIX0NXUiA9IFhUX0VDTl9PUF9NQVRDSF9DV1IsCi0gSVBUX0VDTl9PUF9NQVRDSF9NQVNLID0gWFRfRUNOX09QX01BVENIX01BU0ssCisgIElQVF9FQ05fT1BfTUFUQ0hfQ1dSID0gWFRfRUNOX09QX01BVENIX0NXUiwKKyAgSVBUX0VDTl9PUF9NQVRDSF9NQVNLID0gWFRfRUNOX09QX01BVENIX01BU0ssCiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2NC9pcHRfdHRsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF90dGwuaAppbmRleCBjNTY3ZDUzLi4xNTE5NWJjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF90dGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY0L2lwdF90dGwuaApAQCAtMjEsMTUgKzIxLDE1IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFRfVFRMX0VRID0gMCwKLSBJUFRfVFRMX05FLAotIElQVF9UVExfTFQsCi0gSVBUX1RUTF9HVCwKKyAgSVBUX1RUTF9FUSA9IDAsCisgIElQVF9UVExfTkUsCisgIElQVF9UVExfTFQsCisgIElQVF9UVExfR1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpcHRfdHRsX2luZm8gewotIF9fdTggbW9kZTsKLSBfX3U4IHR0bDsKKyAgX191OCBtb2RlOworICBfX3U4IHR0bDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2LmgKaW5kZXggMzUxNTM2Zi4uMmUyM2FhMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYuaApAQCAtNDQsMjIgKzQ0LDIyIEBACiAjZGVmaW5lIE5GX0lQNl9QT1NUX1JPVVRJTkcgNAogI2RlZmluZSBORl9JUDZfTlVNSE9PS1MgNQogZW51bSBuZl9pcDZfaG9va19wcmlvcml0aWVzIHsKLSBORl9JUDZfUFJJX0ZJUlNUID0gSU5UX01JTiwKKyAgTkZfSVA2X1BSSV9GSVJTVCA9IElOVF9NSU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GX0lQNl9QUklfQ09OTlRSQUNLX0RFRlJBRyA9IC00MDAsCi0gTkZfSVA2X1BSSV9SQVcgPSAtMzAwLAotIE5GX0lQNl9QUklfU0VMSU5VWF9GSVJTVCA9IC0yMjUsCi0gTkZfSVA2X1BSSV9DT05OVFJBQ0sgPSAtMjAwLAorICBORl9JUDZfUFJJX0NPTk5UUkFDS19ERUZSQUcgPSAtIDQwMCwKKyAgTkZfSVA2X1BSSV9SQVcgPSAtIDMwMCwKKyAgTkZfSVA2X1BSSV9TRUxJTlVYX0ZJUlNUID0gLSAyMjUsCisgIE5GX0lQNl9QUklfQ09OTlRSQUNLID0gLSAyMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GX0lQNl9QUklfTUFOR0xFID0gLTE1MCwKLSBORl9JUDZfUFJJX05BVF9EU1QgPSAtMTAwLAotIE5GX0lQNl9QUklfRklMVEVSID0gMCwKLSBORl9JUDZfUFJJX1NFQ1VSSVRZID0gNTAsCisgIE5GX0lQNl9QUklfTUFOR0xFID0gLSAxNTAsCisgIE5GX0lQNl9QUklfTkFUX0RTVCA9IC0gMTAwLAorICBORl9JUDZfUFJJX0ZJTFRFUiA9IDAsCisgIE5GX0lQNl9QUklfU0VDVVJJVFkgPSA1MCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZfSVA2X1BSSV9OQVRfU1JDID0gMTAwLAotIE5GX0lQNl9QUklfU0VMSU5VWF9MQVNUID0gMjI1LAotIE5GX0lQNl9QUklfQ09OTlRSQUNLX0hFTFBFUiA9IDMwMCwKLSBORl9JUDZfUFJJX0xBU1QgPSBJTlRfTUFYLAorICBORl9JUDZfUFJJX05BVF9TUkMgPSAxMDAsCisgIE5GX0lQNl9QUklfU0VMSU5VWF9MQVNUID0gMjI1LAorICBORl9JUDZfUFJJX0NPTk5UUkFDS19IRUxQRVIgPSAzMDAsCisgIE5GX0lQNl9QUklfTEFTVCA9IElOVF9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZfdGFibGVzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNl90YWJsZXMuaAppbmRleCAxZWY2NjA0Li4zNzg4NGIwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNl90YWJsZXMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNl90YWJsZXMuaApAQCAtNTcsMTkgKzU3LDE5IEBACiAjZGVmaW5lIElQNlRfU1RBTkRBUkRfVEFSR0VUIFhUX1NUQU5EQVJEX1RBUkdFVAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVA2VF9FUlJPUl9UQVJHRVQgWFRfRVJST1JfVEFSR0VUCi0jZGVmaW5lIElQNlRfTUFUQ0hfSVRFUkFURShlLCBmbiwgYXJncy4uLikgICBYVF9NQVRDSF9JVEVSQVRFKHN0cnVjdCBpcDZ0X2VudHJ5LCBlLCBmbiwgIyMgYXJncykKLSNkZWZpbmUgSVA2VF9FTlRSWV9JVEVSQVRFKGVudHJpZXMsIHNpemUsIGZuLCBhcmdzLi4uKSAgIFhUX0VOVFJZX0lURVJBVEUoc3RydWN0IGlwNnRfZW50cnksIGVudHJpZXMsIHNpemUsIGZuLCAjIyBhcmdzKQorI2RlZmluZSBJUDZUX01BVENIX0lURVJBVEUoZSxmbixhcmdzLi4uKSBYVF9NQVRDSF9JVEVSQVRFKHN0cnVjdCBpcDZ0X2VudHJ5LCBlLCBmbiwgIyNhcmdzKQorI2RlZmluZSBJUDZUX0VOVFJZX0lURVJBVEUoZW50cmllcyxzaXplLGZuLGFyZ3MuLi4pIFhUX0VOVFJZX0lURVJBVEUoc3RydWN0IGlwNnRfZW50cnksIGVudHJpZXMsIHNpemUsIGZuLCAjI2FyZ3MpCiBzdHJ1Y3QgaXA2dF9pcDYgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaW42X2FkZHIgc3JjLCBkc3Q7Ci0gc3RydWN0IGluNl9hZGRyIHNtc2ssIGRtc2s7Ci0gY2hhciBpbmlmYWNlW0lGTkFNU0laXSwgb3V0aWZhY2VbSUZOQU1TSVpdOwotIHVuc2lnbmVkIGNoYXIgaW5pZmFjZV9tYXNrW0lGTkFNU0laXSwgb3V0aWZhY2VfbWFza1tJRk5BTVNJWl07CisgIHN0cnVjdCBpbjZfYWRkciBzcmMsIGRzdDsKKyAgc3RydWN0IGluNl9hZGRyIHNtc2ssIGRtc2s7CisgIGNoYXIgaW5pZmFjZVtJRk5BTVNJWl0sIG91dGlmYWNlW0lGTkFNU0laXTsKKyAgdW5zaWduZWQgY2hhciBpbmlmYWNlX21hc2tbSUZOQU1TSVpdLCBvdXRpZmFjZV9tYXNrW0lGTkFNU0laXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcHJvdG87Ci0gX191OCB0b3M7Ci0gX191OCBmbGFnczsKLSBfX3U4IGludmZsYWdzOworICBfX3UxNiBwcm90bzsKKyAgX191OCB0b3M7CisgIF9fdTggZmxhZ3M7CisgIF9fdTggaW52ZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSVA2VF9GX1BST1RPIDB4MDEKQEAgLTg4LDMwICs4OCwzNiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVA2VF9JTlZfTUFTSyAweDdGCiBzdHJ1Y3QgaXA2dF9lbnRyeSB7Ci0gc3RydWN0IGlwNnRfaXA2IGlwdjY7Ci0gdW5zaWduZWQgaW50IG5mY2FjaGU7CisgIHN0cnVjdCBpcDZ0X2lwNiBpcHY2OworICB1bnNpZ25lZCBpbnQgbmZjYWNoZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgdGFyZ2V0X29mZnNldDsKLSBfX3UxNiBuZXh0X29mZnNldDsKLSB1bnNpZ25lZCBpbnQgY29tZWZyb207Ci0gc3RydWN0IHh0X2NvdW50ZXJzIGNvdW50ZXJzOworICBfX3UxNiB0YXJnZXRfb2Zmc2V0OworICBfX3UxNiBuZXh0X29mZnNldDsKKyAgdW5zaWduZWQgaW50IGNvbWVmcm9tOworICBzdHJ1Y3QgeHRfY291bnRlcnMgY291bnRlcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZWxlbXNbMF07CisgIHVuc2lnbmVkIGNoYXIgZWxlbXNbMF07CiB9Owogc3RydWN0IGlwNnRfc3RhbmRhcmQgewotIHN0cnVjdCBpcDZ0X2VudHJ5IGVudHJ5OworICBzdHJ1Y3QgaXA2dF9lbnRyeSBlbnRyeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHh0X3N0YW5kYXJkX3RhcmdldCB0YXJnZXQ7CisgIHN0cnVjdCB4dF9zdGFuZGFyZF90YXJnZXQgdGFyZ2V0OwogfTsKIHN0cnVjdCBpcDZ0X2Vycm9yIHsKLSBzdHJ1Y3QgaXA2dF9lbnRyeSBlbnRyeTsKKyAgc3RydWN0IGlwNnRfZW50cnkgZW50cnk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4dF9lcnJvcl90YXJnZXQgdGFyZ2V0OworICBzdHJ1Y3QgeHRfZXJyb3JfdGFyZ2V0IHRhcmdldDsKIH07Ci0jZGVmaW5lIElQNlRfRU5UUllfSU5JVChfX3NpemUpICB7ICAgLnRhcmdldF9vZmZzZXQgPSBzaXplb2Yoc3RydWN0IGlwNnRfZW50cnkpLCAgIC5uZXh0X29mZnNldCA9IChfX3NpemUpLCAgfQotI2RlZmluZSBJUDZUX1NUQU5EQVJEX0lOSVQoX192ZXJkaWN0KSAgeyAgIC5lbnRyeSA9IElQNlRfRU5UUllfSU5JVChzaXplb2Yoc3RydWN0IGlwNnRfc3RhbmRhcmQpKSwgICAudGFyZ2V0ID0gWFRfVEFSR0VUX0lOSVQoWFRfU1RBTkRBUkRfVEFSR0VULCAgIHNpemVvZihzdHJ1Y3QgeHRfc3RhbmRhcmRfdGFyZ2V0KSksICAgLnRhcmdldC52ZXJkaWN0ID0gLShfX3ZlcmRpY3QpIC0gMSwgIH0KKyNkZWZpbmUgSVA2VF9FTlRSWV9JTklUKF9fc2l6ZSkgXAorey50YXJnZXRfb2Zmc2V0ID0gc2l6ZW9mKHN0cnVjdCBpcDZ0X2VudHJ5KSwubmV4dF9vZmZzZXQgPSAoX19zaXplKSwgXAorfQorI2RlZmluZSBJUDZUX1NUQU5EQVJEX0lOSVQoX192ZXJkaWN0KSBcCit7LmVudHJ5ID0gSVA2VF9FTlRSWV9JTklUKHNpemVvZihzdHJ1Y3QgaXA2dF9zdGFuZGFyZCkpLC50YXJnZXQgPSBYVF9UQVJHRVRfSU5JVChYVF9TVEFOREFSRF9UQVJHRVQsIHNpemVvZihzdHJ1Y3QgeHRfc3RhbmRhcmRfdGFyZ2V0KSksLnRhcmdldC52ZXJkaWN0ID0gLSAoX192ZXJkaWN0KSAtIDEsIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElQNlRfRVJST1JfSU5JVCAgeyAgIC5lbnRyeSA9IElQNlRfRU5UUllfSU5JVChzaXplb2Yoc3RydWN0IGlwNnRfZXJyb3IpKSwgICAudGFyZ2V0ID0gWFRfVEFSR0VUX0lOSVQoWFRfRVJST1JfVEFSR0VULCAgIHNpemVvZihzdHJ1Y3QgeHRfZXJyb3JfdGFyZ2V0KSksICAgLnRhcmdldC5lcnJvcm5hbWUgPSAiRVJST1IiLCAgfQorI2RlZmluZSBJUDZUX0VSUk9SX0lOSVQgXAorey5lbnRyeSA9IElQNlRfRU5UUllfSU5JVChzaXplb2Yoc3RydWN0IGlwNnRfZXJyb3IpKSwudGFyZ2V0ID0gWFRfVEFSR0VUX0lOSVQoWFRfRVJST1JfVEFSR0VULCBzaXplb2Yoc3RydWN0IHh0X2Vycm9yX3RhcmdldCkpLC50YXJnZXQuZXJyb3JuYW1lID0gIkVSUk9SIiwgXAorfQogI2RlZmluZSBJUDZUX0JBU0VfQ1RMIDY0CiAjZGVmaW5lIElQNlRfU09fU0VUX1JFUExBQ0UgKElQNlRfQkFTRV9DVEwpCiAjZGVmaW5lIElQNlRfU09fU0VUX0FERF9DT1VOVEVSUyAoSVA2VF9CQVNFX0NUTCArIDEpCkBAIC0xMjYsNDYgKzEzMiw0NCBAQAogI2RlZmluZSBJUDZUX1NPX09SSUdJTkFMX0RTVCA4MAogc3RydWN0IGlwNnRfaWNtcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHlwZTsKLSBfX3U4IGNvZGVbMl07Ci0gX191OCBpbnZmbGFnczsKKyAgX191OCB0eXBlOworICBfX3U4IGNvZGVbMl07CisgIF9fdTggaW52ZmxhZ3M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVA2VF9JQ01QX0lOViAweDAxCiBzdHJ1Y3QgaXA2dF9nZXRpbmZvIHsKLSBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07Ci0gdW5zaWduZWQgaW50IHZhbGlkX2hvb2tzOworICBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07CisgIHVuc2lnbmVkIGludCB2YWxpZF9ob29rczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGhvb2tfZW50cnlbTkZfSU5FVF9OVU1IT09LU107Ci0gdW5zaWduZWQgaW50IHVuZGVyZmxvd1tORl9JTkVUX05VTUhPT0tTXTsKLSB1bnNpZ25lZCBpbnQgbnVtX2VudHJpZXM7Ci0gdW5zaWduZWQgaW50IHNpemU7CisgIHVuc2lnbmVkIGludCBob29rX2VudHJ5W05GX0lORVRfTlVNSE9PS1NdOworICB1bnNpZ25lZCBpbnQgdW5kZXJmbG93W05GX0lORVRfTlVNSE9PS1NdOworICB1bnNpZ25lZCBpbnQgbnVtX2VudHJpZXM7CisgIHVuc2lnbmVkIGludCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaXA2dF9yZXBsYWNlIHsKLSBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07Ci0gdW5zaWduZWQgaW50IHZhbGlkX2hvb2tzOworICBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07CisgIHVuc2lnbmVkIGludCB2YWxpZF9ob29rczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IG51bV9lbnRyaWVzOwotIHVuc2lnbmVkIGludCBzaXplOwotIHVuc2lnbmVkIGludCBob29rX2VudHJ5W05GX0lORVRfTlVNSE9PS1NdOwotIHVuc2lnbmVkIGludCB1bmRlcmZsb3dbTkZfSU5FVF9OVU1IT09LU107CisgIHVuc2lnbmVkIGludCBudW1fZW50cmllczsKKyAgdW5zaWduZWQgaW50IHNpemU7CisgIHVuc2lnbmVkIGludCBob29rX2VudHJ5W05GX0lORVRfTlVNSE9PS1NdOworICB1bnNpZ25lZCBpbnQgdW5kZXJmbG93W05GX0lORVRfTlVNSE9PS1NdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbnVtX2NvdW50ZXJzOwotIHN0cnVjdCB4dF9jb3VudGVycyBfX3VzZXIgKmNvdW50ZXJzOwotIHN0cnVjdCBpcDZ0X2VudHJ5IGVudHJpZXNbMF07CisgIHVuc2lnbmVkIGludCBudW1fY291bnRlcnM7CisgIHN0cnVjdCB4dF9jb3VudGVycyBfX3VzZXIgKiBjb3VudGVyczsKKyAgc3RydWN0IGlwNnRfZW50cnkgZW50cmllc1swXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwNnRfZ2V0X2VudHJpZXMgewotIGNoYXIgbmFtZVtYVF9UQUJMRV9NQVhOQU1FTEVOXTsKLSB1bnNpZ25lZCBpbnQgc2l6ZTsKLSBzdHJ1Y3QgaXA2dF9lbnRyeSBlbnRyeXRhYmxlWzBdOworICBjaGFyIG5hbWVbWFRfVEFCTEVfTUFYTkFNRUxFTl07CisgIHVuc2lnbmVkIGludCBzaXplOworICBzdHJ1Y3QgaXA2dF9lbnRyeSBlbnRyeXRhYmxlWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci1zdGF0aWMgX19pbmxpbmVfXyBzdHJ1Y3QgeHRfZW50cnlfdGFyZ2V0ICoKLWlwNnRfZ2V0X3RhcmdldChzdHJ1Y3QgaXA2dF9lbnRyeSAqZSkKLXsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gcmV0dXJuICh2b2lkICopZSArIGUtPnRhcmdldF9vZmZzZXQ7CitzdGF0aWMgX19pbmxpbmVfXyBzdHJ1Y3QgeHRfZW50cnlfdGFyZ2V0ICogaXA2dF9nZXRfdGFyZ2V0KHN0cnVjdCBpcDZ0X2VudHJ5ICogZSkgeworICByZXR1cm4odm9pZCAqKSBlICsgZS0+dGFyZ2V0X29mZnNldDsKIH0KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9ITC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X0hMLmgKaW5kZXggMGVkZWQwNi4uNGMzZmIxMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X0hMLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X0hMLmgKQEAgLTIxLDE1ICsyMSwxNSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVA2VF9ITF9TRVQgPSAwLAotIElQNlRfSExfSU5DLAotIElQNlRfSExfREVDCisgIElQNlRfSExfU0VUID0gMCwKKyAgSVA2VF9ITF9JTkMsCisgIElQNlRfSExfREVDCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVA2VF9ITF9NQVhNT0RFIElQNlRfSExfREVDCiBzdHJ1Y3QgaXA2dF9ITF9pbmZvIHsKLSBfX3U4IG1vZGU7Ci0gX191OCBob3BfbGltaXQ7CisgIF9fdTggbW9kZTsKKyAgX191OCBob3BfbGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X0xPRy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X0xPRy5oCmluZGV4IDU4MzI3NGMuLmZhMmU0MzAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9MT0cuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfTE9HLmgKQEAgLTI5LDEwICsyOSwxMCBAQAogI2RlZmluZSBJUDZUX0xPR19NQUNERUNPREUgMHgyMAogI2RlZmluZSBJUDZUX0xPR19NQVNLIDB4MmYKIHN0cnVjdCBpcDZ0X2xvZ19pbmZvIHsKLSB1bnNpZ25lZCBjaGFyIGxldmVsOworICB1bnNpZ25lZCBjaGFyIGxldmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGxvZ2ZsYWdzOwotIGNoYXIgcHJlZml4WzMwXTsKKyAgdW5zaWduZWQgY2hhciBsb2dmbGFnczsKKyAgY2hhciBwcmVmaXhbMzBdOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9OUFQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9OUFQuaAppbmRleCBiOTIyZDFjLi5iYjlkNTgyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfTlBULmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X05QVC5oCkBAIC0yMiwxMiArMjIsMTIgQEAKICNpbmNsdWRlIDxsaW51eC9uZXRmaWx0ZXIuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaXA2dF9ucHRfdGdpbmZvIHsKLSB1bmlvbiBuZl9pbmV0X2FkZHIgc3JjX3BmeDsKLSB1bmlvbiBuZl9pbmV0X2FkZHIgZHN0X3BmeDsKLSBfX3U4IHNyY19wZnhfbGVuOworICB1bmlvbiBuZl9pbmV0X2FkZHIgc3JjX3BmeDsKKyAgdW5pb24gbmZfaW5ldF9hZGRyIGRzdF9wZng7CisgIF9fdTggc3JjX3BmeF9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZHN0X3BmeF9sZW47Ci0gX19zdW0xNiBhZGp1c3RtZW50OworICBfX3U4IGRzdF9wZnhfbGVuOworICBfX3N1bTE2IGFkanVzdG1lbnQ7CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X1JFSkVDVC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X1JFSkVDVC5oCmluZGV4IGM3ODQwMGQuLmFmZTVjZDUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9SRUpFQ1QuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfUkVKRUNULmgKQEAgLTIxLDE4ICsyMSwxOCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIGlwNnRfcmVqZWN0X3dpdGggewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUDZUX0lDTVA2X05PX1JPVVRFLAotIElQNlRfSUNNUDZfQURNX1BST0hJQklURUQsCi0gSVA2VF9JQ01QNl9OT1RfTkVJR0hCT1VSLAotIElQNlRfSUNNUDZfQUREUl9VTlJFQUNILAorICBJUDZUX0lDTVA2X05PX1JPVVRFLAorICBJUDZUX0lDTVA2X0FETV9QUk9ISUJJVEVELAorICBJUDZUX0lDTVA2X05PVF9ORUlHSEJPVVIsCisgIElQNlRfSUNNUDZfQUREUl9VTlJFQUNILAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUDZUX0lDTVA2X1BPUlRfVU5SRUFDSCwKLSBJUDZUX0lDTVA2X0VDSE9SRVBMWSwKLSBJUDZUX1RDUF9SRVNFVAorICBJUDZUX0lDTVA2X1BPUlRfVU5SRUFDSCwKKyAgSVA2VF9JQ01QNl9FQ0hPUkVQTFksCisgIElQNlRfVENQX1JFU0VUCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcDZ0X3JlamVjdF9pbmZvIHsKLSBfX3UzMiB3aXRoOworICBfX3UzMiB3aXRoOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9haC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2FoLmgKaW5kZXggMjM0ZGRlNC4uNzU4MmQwMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2FoLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2FoLmgKQEAgLTIxLDEwICsyMSwxMCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgaXA2dF9haCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNwaXNbMl07Ci0gX191MzIgaGRybGVuOwotIF9fdTggaGRycmVzOwotIF9fdTggaW52ZmxhZ3M7CisgIF9fdTMyIHNwaXNbMl07CisgIF9fdTMyIGhkcmxlbjsKKyAgX191OCBoZHJyZXM7CisgIF9fdTggaW52ZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgSVA2VF9BSF9TUEkgMHgwMQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2ZyYWcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9mcmFnLmgKaW5kZXggYjQxNDVjYi4uY2ViNTYzYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2ZyYWcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfZnJhZy5oCkBAIC0yMSwxMCArMjEsMTAgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGlwNnRfZnJhZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlkc1syXTsKLSBfX3UzMiBoZHJsZW47Ci0gX191OCBmbGFnczsKLSBfX3U4IGludmZsYWdzOworICBfX3UzMiBpZHNbMl07CisgIF9fdTMyIGhkcmxlbjsKKyAgX191OCBmbGFnczsKKyAgX191OCBpbnZmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBJUDZUX0ZSQUdfSURTIDB4MDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9obC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2hsLmgKaW5kZXggM2NmZjYxNS4uOGEyNzkzNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2hsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2hsLmgKQEAgLTIxLDE1ICsyMSwxNSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVA2VF9ITF9FUSA9IDAsCi0gSVA2VF9ITF9ORSwKLSBJUDZUX0hMX0xULAotIElQNlRfSExfR1QsCisgIElQNlRfSExfRVEgPSAwLAorICBJUDZUX0hMX05FLAorICBJUDZUX0hMX0xULAorICBJUDZUX0hMX0dULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaXA2dF9obF9pbmZvIHsKLSBfX3U4IG1vZGU7Ci0gX191OCBob3BfbGltaXQ7CisgIF9fdTggbW9kZTsKKyAgX191OCBob3BfbGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2lwdjZoZWFkZXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9pcHY2aGVhZGVyLmgKaW5kZXggM2RiN2NiZi4uZWMxYmE1NSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X2lwdjZoZWFkZXIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfaXB2NmhlYWRlci5oCkBAIC0yMSw5ICsyMSw5IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBpcDZ0X2lwdjZoZWFkZXJfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbWF0Y2hmbGFnczsKLSBfX3U4IGludmZsYWdzOwotIF9fdTggbW9kZWZsYWc7CisgIF9fdTggbWF0Y2hmbGFnczsKKyAgX191OCBpbnZmbGFnczsKKyAgX191OCBtb2RlZmxhZzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNQVNLX0hPUE9QVFMgMTI4CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfbWguaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9taC5oCmluZGV4IDEwYjJlYzQuLjlmZmMxMjcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9taC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9taC5oCkBAIC0yMSw4ICsyMSw4IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBpcDZ0X21oIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0eXBlc1syXTsKLSBfX3U4IGludmZsYWdzOworICBfX3U4IHR5cGVzWzJdOworICBfX3U4IGludmZsYWdzOwogfTsKICNkZWZpbmUgSVA2VF9NSF9JTlZfVFlQRSAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X29wdHMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9vcHRzLmgKaW5kZXggYmQzYzMxOC4uMmQ5MTgxMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRmaWx0ZXJfaXB2Ni9pcDZ0X29wdHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfb3B0cy5oCkBAIC0yMiwxMiArMjIsMTIgQEAKICNkZWZpbmUgSVA2VF9PUFRTX09QVFNOUiAxNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpcDZ0X29wdHMgewotIF9fdTMyIGhkcmxlbjsKLSBfX3U4IGZsYWdzOwotIF9fdTggaW52ZmxhZ3M7CisgIF9fdTMyIGhkcmxlbjsKKyAgX191OCBmbGFnczsKKyAgX191OCBpbnZmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgb3B0c1tJUDZUX09QVFNfT1BUU05SXTsKLSBfX3U4IG9wdHNucjsKKyAgX191MTYgb3B0c1tJUDZUX09QVFNfT1BUU05SXTsKKyAgX191OCBvcHRzbnI7CiB9OwogI2RlZmluZSBJUDZUX09QVFNfTEVOIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGZpbHRlcl9pcHY2L2lwNnRfcnQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9ydC5oCmluZGV4IDg2Y2E0NjIuLjAzNmIyNmEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9ydC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0ZmlsdGVyX2lwdjYvaXA2dF9ydC5oCkBAIC0yMiwxNCArMjIsMTQgQEAKICNkZWZpbmUgSVA2VF9SVF9IT1BTIDE2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlwNnRfcnQgewotIF9fdTMyIHJ0X3R5cGU7Ci0gX191MzIgc2Vnc2xlZnRbMl07Ci0gX191MzIgaGRybGVuOworICBfX3UzMiBydF90eXBlOworICBfX3UzMiBzZWdzbGVmdFsyXTsKKyAgX191MzIgaGRybGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsYWdzOwotIF9fdTggaW52ZmxhZ3M7Ci0gc3RydWN0IGluNl9hZGRyIGFkZHJzW0lQNlRfUlRfSE9QU107Ci0gX191OCBhZGRybnI7CisgIF9fdTggZmxhZ3M7CisgIF9fdTggaW52ZmxhZ3M7CisgIHN0cnVjdCBpbjZfYWRkciBhZGRyc1tJUDZUX1JUX0hPUFNdOworICBfX3U4IGFkZHJucjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBJUDZUX1JUX1RZUCAweDAxCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGxpbmsuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0bGluay5oCmluZGV4IGI1NTY3YjAuLmJjYWYwMjAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0bGluay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0bGluay5oCkBAIC01MiwxOSArNTIsMTkgQEAKICNkZWZpbmUgTUFYX0xJTktTIDMyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNvY2thZGRyX25sIHsKLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBubF9mYW1pbHk7Ci0gdW5zaWduZWQgc2hvcnQgbmxfcGFkOwotIF9fdTMyIG5sX3BpZDsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3QgbmxfZmFtaWx5OworICB1bnNpZ25lZCBzaG9ydCBubF9wYWQ7CisgIF9fdTMyIG5sX3BpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbmxfZ3JvdXBzOworICBfX3UzMiBubF9ncm91cHM7CiB9Owogc3RydWN0IG5sbXNnaGRyIHsKLSBfX3UzMiBubG1zZ19sZW47CisgIF9fdTMyIG5sbXNnX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbmxtc2dfdHlwZTsKLSBfX3UxNiBubG1zZ19mbGFnczsKLSBfX3UzMiBubG1zZ19zZXE7Ci0gX191MzIgbmxtc2dfcGlkOworICBfX3UxNiBubG1zZ190eXBlOworICBfX3UxNiBubG1zZ19mbGFnczsKKyAgX191MzIgbmxtc2dfc2VxOworICBfX3UzMiBubG1zZ19waWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTkxNX0ZfUkVRVUVTVCAxCkBAIC03NywyMiArNzcsMjIgQEAKICNkZWZpbmUgTkxNX0ZfTUFUQ0ggMHgyMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5MTV9GX0FUT01JQyAweDQwMAotI2RlZmluZSBOTE1fRl9EVU1QIChOTE1fRl9ST09UfE5MTV9GX01BVENIKQorI2RlZmluZSBOTE1fRl9EVU1QIChOTE1fRl9ST09UIHwgTkxNX0ZfTUFUQ0gpCiAjZGVmaW5lIE5MTV9GX1JFUExBQ0UgMHgxMDAKICNkZWZpbmUgTkxNX0ZfRVhDTCAweDIwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkxNX0ZfQ1JFQVRFIDB4NDAwCiAjZGVmaW5lIE5MTV9GX0FQUEVORCAweDgwMAogI2RlZmluZSBOTE1TR19BTElHTlRPIDRVCi0jZGVmaW5lIE5MTVNHX0FMSUdOKGxlbikgKCAoKGxlbikrTkxNU0dfQUxJR05UTy0xKSAmIH4oTkxNU0dfQUxJR05UTy0xKSApCisjZGVmaW5lIE5MTVNHX0FMSUdOKGxlbikgKCgobGVuKSArIE5MTVNHX0FMSUdOVE8gLSAxKSAmIH4oTkxNU0dfQUxJR05UTyAtIDEpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkxNU0dfSERSTEVOICgoaW50KSBOTE1TR19BTElHTihzaXplb2Yoc3RydWN0IG5sbXNnaGRyKSkpCiAjZGVmaW5lIE5MTVNHX0xFTkdUSChsZW4pICgobGVuKSArIE5MTVNHX0hEUkxFTikKICNkZWZpbmUgTkxNU0dfU1BBQ0UobGVuKSBOTE1TR19BTElHTihOTE1TR19MRU5HVEgobGVuKSkKLSNkZWZpbmUgTkxNU0dfREFUQShubGgpICgodm9pZCopKCgoY2hhciopbmxoKSArIE5MTVNHX0xFTkdUSCgwKSkpCisjZGVmaW5lIE5MTVNHX0RBVEEobmxoKSAoKHZvaWQgKikgKCgoY2hhciAqKSBubGgpICsgTkxNU0dfTEVOR1RIKDApKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE5MTVNHX05FWFQobmxoLGxlbikgKChsZW4pIC09IE5MTVNHX0FMSUdOKChubGgpLT5ubG1zZ19sZW4pLCAgIChzdHJ1Y3Qgbmxtc2doZHIqKSgoKGNoYXIqKShubGgpKSArIE5MTVNHX0FMSUdOKChubGgpLT5ubG1zZ19sZW4pKSkKLSNkZWZpbmUgTkxNU0dfT0sobmxoLGxlbikgKChsZW4pID49IChpbnQpc2l6ZW9mKHN0cnVjdCBubG1zZ2hkcikgJiYgICAobmxoKS0+bmxtc2dfbGVuID49IHNpemVvZihzdHJ1Y3Qgbmxtc2doZHIpICYmICAgKG5saCktPm5sbXNnX2xlbiA8PSAobGVuKSkKKyNkZWZpbmUgTkxNU0dfTkVYVChubGgsbGVuKSAoKGxlbikgLT0gTkxNU0dfQUxJR04oKG5saCktPm5sbXNnX2xlbiksIChzdHJ1Y3Qgbmxtc2doZHIgKikgKCgoY2hhciAqKSAobmxoKSkgKyBOTE1TR19BTElHTigobmxoKS0+bmxtc2dfbGVuKSkpCisjZGVmaW5lIE5MTVNHX09LKG5saCxsZW4pICgobGVuKSA+PSAoaW50KSBzaXplb2Yoc3RydWN0IG5sbXNnaGRyKSAmJiAobmxoKS0+bmxtc2dfbGVuID49IHNpemVvZihzdHJ1Y3Qgbmxtc2doZHIpICYmIChubGgpLT5ubG1zZ19sZW4gPD0gKGxlbikpCiAjZGVmaW5lIE5MTVNHX1BBWUxPQUQobmxoLGxlbikgKChubGgpLT5ubG1zZ19sZW4gLSBOTE1TR19TUEFDRSgobGVuKSkpCiAjZGVmaW5lIE5MTVNHX05PT1AgMHgxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTAyLDggKzEwMiw4IEBACiAjZGVmaW5lIE5MTVNHX01JTl9UWVBFIDB4MTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgbmxtc2dlcnIgewotIGludCBlcnJvcjsKLSBzdHJ1Y3Qgbmxtc2doZHIgbXNnOworICBpbnQgZXJyb3I7CisgIHN0cnVjdCBubG1zZ2hkciBtc2c7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkVUTElOS19BRERfTUVNQkVSU0hJUCAxCkBAIC0xMTYsMzMgKzExNiwzMyBAQAogI2RlZmluZSBORVRMSU5LX1RYX1JJTkcgNwogc3RydWN0IG5sX3BrdGluZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBncm91cDsKKyAgX191MzIgZ3JvdXA7CiB9Owogc3RydWN0IG5sX21tYXBfcmVxIHsKLSB1bnNpZ25lZCBpbnQgbm1fYmxvY2tfc2l6ZTsKKyAgdW5zaWduZWQgaW50IG5tX2Jsb2NrX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBubV9ibG9ja19ucjsKLSB1bnNpZ25lZCBpbnQgbm1fZnJhbWVfc2l6ZTsKLSB1bnNpZ25lZCBpbnQgbm1fZnJhbWVfbnI7CisgIHVuc2lnbmVkIGludCBubV9ibG9ja19ucjsKKyAgdW5zaWduZWQgaW50IG5tX2ZyYW1lX3NpemU7CisgIHVuc2lnbmVkIGludCBubV9mcmFtZV9ucjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5sX21tYXBfaGRyIHsKLSB1bnNpZ25lZCBpbnQgbm1fc3RhdHVzOwotIHVuc2lnbmVkIGludCBubV9sZW47Ci0gX191MzIgbm1fZ3JvdXA7CisgIHVuc2lnbmVkIGludCBubV9zdGF0dXM7CisgIHVuc2lnbmVkIGludCBubV9sZW47CisgIF9fdTMyIG5tX2dyb3VwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBubV9waWQ7Ci0gX191MzIgbm1fdWlkOwotIF9fdTMyIG5tX2dpZDsKKyAgX191MzIgbm1fcGlkOworICBfX3UzMiBubV91aWQ7CisgIF9fdTMyIG5tX2dpZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubF9tbWFwX3N0YXR1cyB7Ci0gTkxfTU1BUF9TVEFUVVNfVU5VU0VELAotIE5MX01NQVBfU1RBVFVTX1JFU0VSVkVELAotIE5MX01NQVBfU1RBVFVTX1ZBTElELAorICBOTF9NTUFQX1NUQVRVU19VTlVTRUQsCisgIE5MX01NQVBfU1RBVFVTX1JFU0VSVkVELAorICBOTF9NTUFQX1NUQVRVU19WQUxJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkxfTU1BUF9TVEFUVVNfQ09QWSwKLSBOTF9NTUFQX1NUQVRVU19TS0lQLAorICBOTF9NTUFQX1NUQVRVU19DT1BZLAorICBOTF9NTUFQX1NUQVRVU19TS0lQLAogfTsKICNkZWZpbmUgTkxfTU1BUF9NU0dfQUxJR05NRU5UIE5MTVNHX0FMSUdOVE8KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xNTEsMTMgKzE1MSwxMyBAQAogI2RlZmluZSBORVRfTUFKT1IgMzYKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRMSU5LX1VOQ09OTkVDVEVEID0gMCwKLSBORVRMSU5LX0NPTk5FQ1RFRCwKKyAgTkVUTElOS19VTkNPTk5FQ1RFRCA9IDAsCisgIE5FVExJTktfQ09OTkVDVEVELAogfTsKIHN0cnVjdCBubGF0dHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBubGFfbGVuOwotIF9fdTE2IG5sYV90eXBlOworICBfX3UxNiBubGFfbGVuOworICBfX3UxNiBubGFfdHlwZTsKIH07CiAjZGVmaW5lIE5MQV9GX05FU1RFRCAoMSA8PCAxNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGxpbmtfZGlhZy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRsaW5rX2RpYWcuaAppbmRleCAwNmU1MDAyLi5lYmY2Mzc0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldGxpbmtfZGlhZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0bGlua19kaWFnLmgKQEAgLTIxLDQzICsyMSw0MyBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgbmV0bGlua19kaWFnX3JlcSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2RpYWdfZmFtaWx5OwotIF9fdTggc2RpYWdfcHJvdG9jb2w7Ci0gX191MTYgcGFkOwotIF9fdTMyIG5kaWFnX2lubzsKKyAgX191OCBzZGlhZ19mYW1pbHk7CisgIF9fdTggc2RpYWdfcHJvdG9jb2w7CisgIF9fdTE2IHBhZDsKKyAgX191MzIgbmRpYWdfaW5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBuZGlhZ19zaG93OwotIF9fdTMyIG5kaWFnX2Nvb2tpZVsyXTsKKyAgX191MzIgbmRpYWdfc2hvdzsKKyAgX191MzIgbmRpYWdfY29va2llWzJdOwogfTsKIHN0cnVjdCBuZXRsaW5rX2RpYWdfbXNnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBuZGlhZ19mYW1pbHk7Ci0gX191OCBuZGlhZ190eXBlOwotIF9fdTggbmRpYWdfcHJvdG9jb2w7Ci0gX191OCBuZGlhZ19zdGF0ZTsKKyAgX191OCBuZGlhZ19mYW1pbHk7CisgIF9fdTggbmRpYWdfdHlwZTsKKyAgX191OCBuZGlhZ19wcm90b2NvbDsKKyAgX191OCBuZGlhZ19zdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbmRpYWdfcG9ydGlkOwotIF9fdTMyIG5kaWFnX2RzdF9wb3J0aWQ7Ci0gX191MzIgbmRpYWdfZHN0X2dyb3VwOwotIF9fdTMyIG5kaWFnX2lubzsKKyAgX191MzIgbmRpYWdfcG9ydGlkOworICBfX3UzMiBuZGlhZ19kc3RfcG9ydGlkOworICBfX3UzMiBuZGlhZ19kc3RfZ3JvdXA7CisgIF9fdTMyIG5kaWFnX2lubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbmRpYWdfY29va2llWzJdOworICBfX3UzMiBuZGlhZ19jb29raWVbMl07CiB9Owogc3RydWN0IG5ldGxpbmtfZGlhZ19yaW5nIHsKLSBfX3UzMiBuZHJfYmxvY2tfc2l6ZTsKKyAgX191MzIgbmRyX2Jsb2NrX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5kcl9ibG9ja19ucjsKLSBfX3UzMiBuZHJfZnJhbWVfc2l6ZTsKLSBfX3UzMiBuZHJfZnJhbWVfbnI7CisgIF9fdTMyIG5kcl9ibG9ja19ucjsKKyAgX191MzIgbmRyX2ZyYW1lX3NpemU7CisgIF9fdTMyIG5kcl9mcmFtZV9ucjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gTkVUTElOS19ESUFHX01FTUlORk8sCi0gTkVUTElOS19ESUFHX0dST1VQUywKLSBORVRMSU5LX0RJQUdfUlhfUklORywKKyAgTkVUTElOS19ESUFHX01FTUlORk8sCisgIE5FVExJTktfRElBR19HUk9VUFMsCisgIE5FVExJTktfRElBR19SWF9SSU5HLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRMSU5LX0RJQUdfVFhfUklORywKLSBfX05FVExJTktfRElBR19NQVgsCisgIE5FVExJTktfRElBR19UWF9SSU5HLAorICBfX05FVExJTktfRElBR19NQVgsCiB9OwogI2RlZmluZSBORVRMSU5LX0RJQUdfTUFYIChfX05FVExJTktfRElBR19NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0cm9tLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25ldHJvbS5oCmluZGV4IGJiMGZkNTkuLjRlNDExZjIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmV0cm9tLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZXRyb20uaApAQCAtMjcsMjIgKzI3LDIyIEBACiAjZGVmaW5lIE5FVFJPTV9UNCA2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORVRST01fSURMRSA3Ci0jZGVmaW5lIFNJT0NOUkRFQ09CUyAoU0lPQ1BST1RPUFJJVkFURSsyKQorI2RlZmluZSBTSU9DTlJERUNPQlMgKFNJT0NQUk9UT1BSSVZBVEUgKyAyKQogc3RydWN0IG5yX3JvdXRlX3N0cnVjdCB7CiAjZGVmaW5lIE5FVFJPTV9ORUlHSCAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORVRST01fTk9ERSAxCi0gaW50IHR5cGU7Ci0gYXgyNV9hZGRyZXNzIGNhbGxzaWduOwotIGNoYXIgZGV2aWNlWzE2XTsKKyAgaW50IHR5cGU7CisgIGF4MjVfYWRkcmVzcyBjYWxsc2lnbjsKKyAgY2hhciBkZXZpY2VbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcXVhbGl0eTsKLSBjaGFyIG1uZW1vbmljWzddOwotIGF4MjVfYWRkcmVzcyBuZWlnaGJvdXI7Ci0gdW5zaWduZWQgaW50IG9ic19jb3VudDsKKyAgdW5zaWduZWQgaW50IHF1YWxpdHk7CisgIGNoYXIgbW5lbW9uaWNbN107CisgIGF4MjVfYWRkcmVzcyBuZWlnaGJvdXI7CisgIHVuc2lnbmVkIGludCBvYnNfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBuZGlnaXM7Ci0gYXgyNV9hZGRyZXNzIGRpZ2lwZWF0ZXJzW0FYMjVfTUFYX0RJR0lTXTsKKyAgdW5zaWduZWQgaW50IG5kaWdpczsKKyAgYXgyNV9hZGRyZXNzIGRpZ2lwZWF0ZXJzW0FYMjVfTUFYX0RJR0lTXTsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZmMuaAppbmRleCA4ODk3OWRlLi43YTgzYWM3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZjLmgKQEAgLTI2LDEwOSArMjYsMTE0IEBACiAjZGVmaW5lIE5GQ19HRU5MX01DQVNUX0VWRU5UX05BTUUgImV2ZW50cyIKIGVudW0gbmZjX2NvbW1hbmRzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZDX0NNRF9VTlNQRUMsCi0gTkZDX0NNRF9HRVRfREVWSUNFLAotIE5GQ19DTURfREVWX1VQLAotIE5GQ19DTURfREVWX0RPV04sCisgIE5GQ19DTURfVU5TUEVDLAorICBORkNfQ01EX0dFVF9ERVZJQ0UsCisgIE5GQ19DTURfREVWX1VQLAorICBORkNfQ01EX0RFVl9ET1dOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkNfQ01EX0RFUF9MSU5LX1VQLAotIE5GQ19DTURfREVQX0xJTktfRE9XTiwKLSBORkNfQ01EX1NUQVJUX1BPTEwsCi0gTkZDX0NNRF9TVE9QX1BPTEwsCisgIE5GQ19DTURfREVQX0xJTktfVVAsCisgIE5GQ19DTURfREVQX0xJTktfRE9XTiwKKyAgTkZDX0NNRF9TVEFSVF9QT0xMLAorICBORkNfQ01EX1NUT1BfUE9MTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZDX0NNRF9HRVRfVEFSR0VULAotIE5GQ19FVkVOVF9UQVJHRVRTX0ZPVU5ELAotIE5GQ19FVkVOVF9ERVZJQ0VfQURERUQsCi0gTkZDX0VWRU5UX0RFVklDRV9SRU1PVkVELAorICBORkNfQ01EX0dFVF9UQVJHRVQsCisgIE5GQ19FVkVOVF9UQVJHRVRTX0ZPVU5ELAorICBORkNfRVZFTlRfREVWSUNFX0FEREVELAorICBORkNfRVZFTlRfREVWSUNFX1JFTU9WRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ19FVkVOVF9UQVJHRVRfTE9TVCwKLSBORkNfRVZFTlRfVE1fQUNUSVZBVEVELAotIE5GQ19FVkVOVF9UTV9ERUFDVElWQVRFRCwKLSBORkNfQ01EX0xMQ19HRVRfUEFSQU1TLAorICBORkNfRVZFTlRfVEFSR0VUX0xPU1QsCisgIE5GQ19FVkVOVF9UTV9BQ1RJVkFURUQsCisgIE5GQ19FVkVOVF9UTV9ERUFDVElWQVRFRCwKKyAgTkZDX0NNRF9MTENfR0VUX1BBUkFNUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZDX0NNRF9MTENfU0VUX1BBUkFNUywKLSBORkNfQ01EX0VOQUJMRV9TRSwKLSBORkNfQ01EX0RJU0FCTEVfU0UsCi0gTkZDX0NNRF9MTENfU0RSRVEsCisgIE5GQ19DTURfTExDX1NFVF9QQVJBTVMsCisgIE5GQ19DTURfRU5BQkxFX1NFLAorICBORkNfQ01EX0RJU0FCTEVfU0UsCisgIE5GQ19DTURfTExDX1NEUkVRLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkNfRVZFTlRfTExDX1NEUkVTLAotIE5GQ19DTURfRldfRE9XTkxPQUQsCi0gTkZDX0VWRU5UX1NFX0FEREVELAotIE5GQ19FVkVOVF9TRV9SRU1PVkVELAorICBORkNfRVZFTlRfTExDX1NEUkVTLAorICBORkNfQ01EX0ZXX0RPV05MT0FELAorICBORkNfRVZFTlRfU0VfQURERUQsCisgIE5GQ19FVkVOVF9TRV9SRU1PVkVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkNfRVZFTlRfU0VfQ09OTkVDVElWSVRZLAotIE5GQ19FVkVOVF9TRV9UUkFOU0FDVElPTiwKLSBORkNfQ01EX0dFVF9TRSwKLSBORkNfQ01EX1NFX0lPLAorICBORkNfRVZFTlRfU0VfQ09OTkVDVElWSVRZLAorICBORkNfRVZFTlRfU0VfVFJBTlNBQ1RJT04sCisgIE5GQ19DTURfR0VUX1NFLAorICBORkNfQ01EX1NFX0lPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05GQ19DTURfQUZURVJfTEFTVAorICBfX05GQ19DTURfQUZURVJfTEFTVAogfTsKICNkZWZpbmUgTkZDX0NNRF9NQVggKF9fTkZDX0NNRF9BRlRFUl9MQVNUIC0gMSkKIGVudW0gbmZjX2F0dHJzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZDX0FUVFJfVU5TUEVDLAotIE5GQ19BVFRSX0RFVklDRV9JTkRFWCwKLSBORkNfQVRUUl9ERVZJQ0VfTkFNRSwKLSBORkNfQVRUUl9QUk9UT0NPTFMsCisgIE5GQ19BVFRSX1VOU1BFQywKKyAgTkZDX0FUVFJfREVWSUNFX0lOREVYLAorICBORkNfQVRUUl9ERVZJQ0VfTkFNRSwKKyAgTkZDX0FUVFJfUFJPVE9DT0xTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkNfQVRUUl9UQVJHRVRfSU5ERVgsCi0gTkZDX0FUVFJfVEFSR0VUX1NFTlNfUkVTLAotIE5GQ19BVFRSX1RBUkdFVF9TRUxfUkVTLAotIE5GQ19BVFRSX1RBUkdFVF9ORkNJRDEsCisgIE5GQ19BVFRSX1RBUkdFVF9JTkRFWCwKKyAgTkZDX0FUVFJfVEFSR0VUX1NFTlNfUkVTLAorICBORkNfQVRUUl9UQVJHRVRfU0VMX1JFUywKKyAgTkZDX0FUVFJfVEFSR0VUX05GQ0lEMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZDX0FUVFJfVEFSR0VUX1NFTlNCX1JFUywKLSBORkNfQVRUUl9UQVJHRVRfU0VOU0ZfUkVTLAotIE5GQ19BVFRSX0NPTU1fTU9ERSwKLSBORkNfQVRUUl9SRl9NT0RFLAorICBORkNfQVRUUl9UQVJHRVRfU0VOU0JfUkVTLAorICBORkNfQVRUUl9UQVJHRVRfU0VOU0ZfUkVTLAorICBORkNfQVRUUl9DT01NX01PREUsCisgIE5GQ19BVFRSX1JGX01PREUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ19BVFRSX0RFVklDRV9QT1dFUkVELAotIE5GQ19BVFRSX0lNX1BST1RPQ09MUywKLSBORkNfQVRUUl9UTV9QUk9UT0NPTFMsCi0gTkZDX0FUVFJfTExDX1BBUkFNX0xUTywKKyAgTkZDX0FUVFJfREVWSUNFX1BPV0VSRUQsCisgIE5GQ19BVFRSX0lNX1BST1RPQ09MUywKKyAgTkZDX0FUVFJfVE1fUFJPVE9DT0xTLAorICBORkNfQVRUUl9MTENfUEFSQU1fTFRPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORkNfQVRUUl9MTENfUEFSQU1fUlcsCi0gTkZDX0FUVFJfTExDX1BBUkFNX01JVVgsCi0gTkZDX0FUVFJfU0UsCi0gTkZDX0FUVFJfTExDX1NEUCwKKyAgTkZDX0FUVFJfTExDX1BBUkFNX1JXLAorICBORkNfQVRUUl9MTENfUEFSQU1fTUlVWCwKKyAgTkZDX0FUVFJfU0UsCisgIE5GQ19BVFRSX0xMQ19TRFAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ19BVFRSX0ZJUk1XQVJFX05BTUUsCi0gTkZDX0FUVFJfU0VfSU5ERVgsCi0gTkZDX0FUVFJfU0VfVFlQRSwKLSBORkNfQVRUUl9TRV9BSUQsCisgIE5GQ19BVFRSX0ZJUk1XQVJFX05BTUUsCisgIE5GQ19BVFRSX1NFX0lOREVYLAorICBORkNfQVRUUl9TRV9UWVBFLAorICBORkNfQVRUUl9TRV9BSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ19BVFRSX0ZJUk1XQVJFX0RPV05MT0FEX1NUQVRVUywKLSBORkNfQVRUUl9TRV9BUERVLAotIF9fTkZDX0FUVFJfQUZURVJfTEFTVAorICBORkNfQVRUUl9GSVJNV0FSRV9ET1dOTE9BRF9TVEFUVVMsCisgIE5GQ19BVFRSX1NFX0FQRFUsCisgIE5GQ19BVFRSX1RBUkdFVF9JU08xNTY5M19EU0ZJRCwKKyAgTkZDX0FUVFJfVEFSR0VUX0lTTzE1NjkzX1VJRCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fTkZDX0FUVFJfQUZURVJfTEFTVAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GQ19BVFRSX01BWCAoX19ORkNfQVRUUl9BRlRFUl9MQVNUIC0gMSkKIGVudW0gbmZjX3NkcF9hdHRyIHsKLSBORkNfU0RQX0FUVFJfVU5TUEVDLAotIE5GQ19TRFBfQVRUUl9VUkksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GQ19TRFBfQVRUUl9TQVAsCi0gX19ORkNfU0RQX0FUVFJfQUZURVJfTEFTVAorICBORkNfU0RQX0FUVFJfVU5TUEVDLAorICBORkNfU0RQX0FUVFJfVVJJLAorICBORkNfU0RQX0FUVFJfU0FQLAorICBfX05GQ19TRFBfQVRUUl9BRlRFUl9MQVNUCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTkZDX1NEUF9BVFRSX01BWCAoX19ORkNfU0RQX0FUVFJfQUZURVJfTEFTVCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORkNfREVWSUNFX05BTUVfTUFYU0laRSA4CiAjZGVmaW5lIE5GQ19ORkNJRDFfTUFYU0laRSAxMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZDX05GQ0lEMl9NQVhTSVpFIDgKICNkZWZpbmUgTkZDX05GQ0lEM19NQVhTSVpFIDEwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORkNfU0VOU0JfUkVTX01BWFNJWkUgMTIKICNkZWZpbmUgTkZDX1NFTlNGX1JFU19NQVhTSVpFIDE4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORkNfR0JfTUFYU0laRSA0OAogI2RlZmluZSBORkNfRklSTVdBUkVfTkFNRV9NQVhTSVpFIDMyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBORkNfSVNPMTU2OTNfVUlEX01BWFNJWkUgOAogI2RlZmluZSBORkNfUFJPVE9fSkVXRUwgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZDX1BST1RPX01JRkFSRSAyCiAjZGVmaW5lIE5GQ19QUk9UT19GRUxJQ0EgMwogI2RlZmluZSBORkNfUFJPVE9fSVNPMTQ0NDMgNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZDX1BST1RPX05GQ19ERVAgNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZDX1BST1RPX0lTTzE0NDQzX0IgNgotI2RlZmluZSBORkNfUFJPVE9fTUFYIDcKKyNkZWZpbmUgTkZDX1BST1RPX0lTTzE1NjkzIDcKKyNkZWZpbmUgTkZDX1BST1RPX01BWCA4CiAjZGVmaW5lIE5GQ19DT01NX0FDVElWRSAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORkNfQ09NTV9QQVNTSVZFIDEKQEAgLTE0Myw0NiArMTQ4LDU0IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORkNfUFJPVE9fTkZDX0RFUF9NQVNLICgxIDw8IE5GQ19QUk9UT19ORkNfREVQKQogI2RlZmluZSBORkNfUFJPVE9fSVNPMTQ0NDNfQl9NQVNLICgxIDw8IE5GQ19QUk9UT19JU08xNDQ0M19CKQorI2RlZmluZSBORkNfUFJPVE9fSVNPMTU2OTNfTUFTSyAoMSA8PCBORkNfUFJPVE9fSVNPMTU2OTMpCiAjZGVmaW5lIE5GQ19TRV9VSUNDIDB4MQotI2RlZmluZSBORkNfU0VfRU1CRURERUQgMHgyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBORkNfU0VfRU1CRURERUQgMHgyCiAjZGVmaW5lIE5GQ19TRV9ESVNBQkxFRCAweDAKICNkZWZpbmUgTkZDX1NFX0VOQUJMRUQgMHgxCiBzdHJ1Y3Qgc29ja2FkZHJfbmZjIHsKLSBzYV9mYW1pbHlfdCBzYV9mYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRldl9pZHg7Ci0gX191MzIgdGFyZ2V0X2lkeDsKLSBfX3UzMiBuZmNfcHJvdG9jb2w7CisgIHNhX2ZhbWlseV90IHNhX2ZhbWlseTsKKyAgX191MzIgZGV2X2lkeDsKKyAgX191MzIgdGFyZ2V0X2lkeDsKKyAgX191MzIgbmZjX3Byb3RvY29sOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORkNfTExDUF9NQVhfU0VSVklDRV9OQU1FIDYzCiBzdHJ1Y3Qgc29ja2FkZHJfbmZjX2xsY3AgewotIHNhX2ZhbWlseV90IHNhX2ZhbWlseTsKLSBfX3UzMiBkZXZfaWR4OworICBzYV9mYW1pbHlfdCBzYV9mYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRhcmdldF9pZHg7Ci0gX191MzIgbmZjX3Byb3RvY29sOwotIF9fdTggZHNhcDsKLSBfX3U4IHNzYXA7CisgIF9fdTMyIGRldl9pZHg7CisgIF9fdTMyIHRhcmdldF9pZHg7CisgIF9fdTMyIG5mY19wcm90b2NvbDsKKyAgX191OCBkc2FwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHNlcnZpY2VfbmFtZVtORkNfTExDUF9NQVhfU0VSVklDRV9OQU1FXTsgIDsKLSBzaXplX3Qgc2VydmljZV9uYW1lX2xlbjsKKyAgX191OCBzc2FwOworICBjaGFyIHNlcnZpY2VfbmFtZVtORkNfTExDUF9NQVhfU0VSVklDRV9OQU1FXTsKKzsKKyAgc2l6ZV90IHNlcnZpY2VfbmFtZV9sZW47CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTkZDX1NPQ0tQUk9UT19SQVcgMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZDX1NPQ0tQUk9UT19MTENQIDEKICNkZWZpbmUgTkZDX1NPQ0tQUk9UT19NQVggMgotI2RlZmluZSBORkNfSEVBREVSX1NJWkUgMQotI2RlZmluZSBORkNfTExDUF9SQVdfSEVBREVSX1NJWkUgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTkZDX0xMQ1BfRElSRUNUSU9OX1JYIDB4MDAKLSNkZWZpbmUgTkZDX0xMQ1BfRElSRUNUSU9OX1RYIDB4MDEKKyNkZWZpbmUgTkZDX0hFQURFUl9TSVpFIDEKKyNkZWZpbmUgTkZDX1JBV19IRUFERVJfU0laRSAyCisjZGVmaW5lIE5GQ19ESVJFQ1RJT05fUlggMHgwMAorI2RlZmluZSBORkNfRElSRUNUSU9OX1RYIDB4MDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJBV19QQVlMT0FEX0xMQ1AgMAorI2RlZmluZSBSQVdfUEFZTE9BRF9OQ0kgMQorI2RlZmluZSBSQVdfUEFZTE9BRF9IQ0kgMgorI2RlZmluZSBSQVdfUEFZTE9BRF9ESUdJVEFMIDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFJBV19QQVlMT0FEX1BST1BSSUVUQVJZIDQKICNkZWZpbmUgTkZDX0xMQ1BfUlcgMAogI2RlZmluZSBORkNfTExDUF9NSVVYIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GQ19MTENQX1JFTU9URV9NSVUgMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZDX0xMQ1BfUkVNT1RFX0xUTyAzCiAjZGVmaW5lIE5GQ19MTENQX1JFTU9URV9SVyA0CiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnMuaAppbmRleCA5YjYzNDg0Li4yNzA4M2EyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzLmgKQEAgLTI4LDcgKzI4LDcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GU19GSFNJWkUgMzIKICNkZWZpbmUgTkZTX0NPT0tJRVNJWkUgNAotI2RlZmluZSBORlNfRklGT19ERVYgKC0xKQorI2RlZmluZSBORlNfRklGT19ERVYgKC0gMSkKICNkZWZpbmUgTkZTTU9ERV9GTVQgMDE3MDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZTTU9ERV9ESVIgMDA0MDAwMApAQCAtNDQsMTExICs0NCwxMTEgQEAKICNkZWZpbmUgTkZTX01OVF9WRVJTSU9OIDEKICNkZWZpbmUgTkZTX01OVDNfVkVSU0lPTiAzCiAjZGVmaW5lIE5GU19QSVBFX0RJUk5BTUUgIm5mcyIKLSBlbnVtIG5mc19zdGF0IHsKK2VudW0gbmZzX3N0YXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlNfT0sgPSAwLAotIE5GU0VSUl9QRVJNID0gMSwKLSBORlNFUlJfTk9FTlQgPSAyLAotIE5GU0VSUl9JTyA9IDUsCisgIE5GU19PSyA9IDAsCisgIE5GU0VSUl9QRVJNID0gMSwKKyAgTkZTRVJSX05PRU5UID0gMiwKKyAgTkZTRVJSX0lPID0gNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZTRVJSX05YSU8gPSA2LAotIE5GU0VSUl9FQUdBSU4gPSAxMSwKLSBORlNFUlJfQUNDRVMgPSAxMywKLSBORlNFUlJfRVhJU1QgPSAxNywKKyAgTkZTRVJSX05YSU8gPSA2LAorICBORlNFUlJfRUFHQUlOID0gMTEsCisgIE5GU0VSUl9BQ0NFUyA9IDEzLAorICBORlNFUlJfRVhJU1QgPSAxNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZTRVJSX1hERVYgPSAxOCwKLSBORlNFUlJfTk9ERVYgPSAxOSwKLSBORlNFUlJfTk9URElSID0gMjAsCi0gTkZTRVJSX0lTRElSID0gMjEsCisgIE5GU0VSUl9YREVWID0gMTgsCisgIE5GU0VSUl9OT0RFViA9IDE5LAorICBORlNFUlJfTk9URElSID0gMjAsCisgIE5GU0VSUl9JU0RJUiA9IDIxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlNFUlJfSU5WQUwgPSAyMiwKLSBORlNFUlJfRkJJRyA9IDI3LAotIE5GU0VSUl9OT1NQQyA9IDI4LAotIE5GU0VSUl9ST0ZTID0gMzAsCisgIE5GU0VSUl9JTlZBTCA9IDIyLAorICBORlNFUlJfRkJJRyA9IDI3LAorICBORlNFUlJfTk9TUEMgPSAyOCwKKyAgTkZTRVJSX1JPRlMgPSAzMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZTRVJSX01MSU5LID0gMzEsCi0gTkZTRVJSX09QTk9UU1VQUCA9IDQ1LAotIE5GU0VSUl9OQU1FVE9PTE9ORyA9IDYzLAotIE5GU0VSUl9OT1RFTVBUWSA9IDY2LAorICBORlNFUlJfTUxJTksgPSAzMSwKKyAgTkZTRVJSX09QTk9UU1VQUCA9IDQ1LAorICBORlNFUlJfTkFNRVRPT0xPTkcgPSA2MywKKyAgTkZTRVJSX05PVEVNUFRZID0gNjYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9EUVVPVCA9IDY5LAotIE5GU0VSUl9TVEFMRSA9IDcwLAotIE5GU0VSUl9SRU1PVEUgPSA3MSwKLSBORlNFUlJfV0ZMVVNIID0gOTksCisgIE5GU0VSUl9EUVVPVCA9IDY5LAorICBORlNFUlJfU1RBTEUgPSA3MCwKKyAgTkZTRVJSX1JFTU9URSA9IDcxLAorICBORlNFUlJfV0ZMVVNIID0gOTksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9CQURIQU5ETEUgPSAxMDAwMSwKLSBORlNFUlJfTk9UX1NZTkMgPSAxMDAwMiwKLSBORlNFUlJfQkFEX0NPT0tJRSA9IDEwMDAzLAotIE5GU0VSUl9OT1RTVVBQID0gMTAwMDQsCisgIE5GU0VSUl9CQURIQU5ETEUgPSAxMDAwMSwKKyAgTkZTRVJSX05PVF9TWU5DID0gMTAwMDIsCisgIE5GU0VSUl9CQURfQ09PS0lFID0gMTAwMDMsCisgIE5GU0VSUl9OT1RTVVBQID0gMTAwMDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9UT09TTUFMTCA9IDEwMDA1LAotIE5GU0VSUl9TRVJWRVJGQVVMVCA9IDEwMDA2LAotIE5GU0VSUl9CQURUWVBFID0gMTAwMDcsCi0gTkZTRVJSX0pVS0VCT1ggPSAxMDAwOCwKKyAgTkZTRVJSX1RPT1NNQUxMID0gMTAwMDUsCisgIE5GU0VSUl9TRVJWRVJGQVVMVCA9IDEwMDA2LAorICBORlNFUlJfQkFEVFlQRSA9IDEwMDA3LAorICBORlNFUlJfSlVLRUJPWCA9IDEwMDA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlNFUlJfU0FNRSA9IDEwMDA5LAotIE5GU0VSUl9ERU5JRUQgPSAxMDAxMCwKLSBORlNFUlJfRVhQSVJFRCA9IDEwMDExLAotIE5GU0VSUl9MT0NLRUQgPSAxMDAxMiwKKyAgTkZTRVJSX1NBTUUgPSAxMDAwOSwKKyAgTkZTRVJSX0RFTklFRCA9IDEwMDEwLAorICBORlNFUlJfRVhQSVJFRCA9IDEwMDExLAorICBORlNFUlJfTE9DS0VEID0gMTAwMTIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9HUkFDRSA9IDEwMDEzLAotIE5GU0VSUl9GSEVYUElSRUQgPSAxMDAxNCwKLSBORlNFUlJfU0hBUkVfREVOSUVEID0gMTAwMTUsCi0gTkZTRVJSX1dST05HU0VDID0gMTAwMTYsCisgIE5GU0VSUl9HUkFDRSA9IDEwMDEzLAorICBORlNFUlJfRkhFWFBJUkVEID0gMTAwMTQsCisgIE5GU0VSUl9TSEFSRV9ERU5JRUQgPSAxMDAxNSwKKyAgTkZTRVJSX1dST05HU0VDID0gMTAwMTYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9DTElEX0lOVVNFID0gMTAwMTcsCi0gTkZTRVJSX1JFU09VUkNFID0gMTAwMTgsCi0gTkZTRVJSX01PVkVEID0gMTAwMTksCi0gTkZTRVJSX05PRklMRUhBTkRMRSA9IDEwMDIwLAorICBORlNFUlJfQ0xJRF9JTlVTRSA9IDEwMDE3LAorICBORlNFUlJfUkVTT1VSQ0UgPSAxMDAxOCwKKyAgTkZTRVJSX01PVkVEID0gMTAwMTksCisgIE5GU0VSUl9OT0ZJTEVIQU5ETEUgPSAxMDAyMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZTRVJSX01JTk9SX1ZFUlNfTUlTTUFUQ0ggPSAxMDAyMSwKLSBORlNFUlJfU1RBTEVfQ0xJRU5USUQgPSAxMDAyMiwKLSBORlNFUlJfU1RBTEVfU1RBVEVJRCA9IDEwMDIzLAotIE5GU0VSUl9PTERfU1RBVEVJRCA9IDEwMDI0LAorICBORlNFUlJfTUlOT1JfVkVSU19NSVNNQVRDSCA9IDEwMDIxLAorICBORlNFUlJfU1RBTEVfQ0xJRU5USUQgPSAxMDAyMiwKKyAgTkZTRVJSX1NUQUxFX1NUQVRFSUQgPSAxMDAyMywKKyAgTkZTRVJSX09MRF9TVEFURUlEID0gMTAwMjQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9CQURfU1RBVEVJRCA9IDEwMDI1LAotIE5GU0VSUl9CQURfU0VRSUQgPSAxMDAyNiwKLSBORlNFUlJfTk9UX1NBTUUgPSAxMDAyNywKLSBORlNFUlJfTE9DS19SQU5HRSA9IDEwMDI4LAorICBORlNFUlJfQkFEX1NUQVRFSUQgPSAxMDAyNSwKKyAgTkZTRVJSX0JBRF9TRVFJRCA9IDEwMDI2LAorICBORlNFUlJfTk9UX1NBTUUgPSAxMDAyNywKKyAgTkZTRVJSX0xPQ0tfUkFOR0UgPSAxMDAyOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZTRVJSX1NZTUxJTksgPSAxMDAyOSwKLSBORlNFUlJfUkVTVE9SRUZIID0gMTAwMzAsCi0gTkZTRVJSX0xFQVNFX01PVkVEID0gMTAwMzEsCi0gTkZTRVJSX0FUVFJOT1RTVVBQID0gMTAwMzIsCisgIE5GU0VSUl9TWU1MSU5LID0gMTAwMjksCisgIE5GU0VSUl9SRVNUT1JFRkggPSAxMDAzMCwKKyAgTkZTRVJSX0xFQVNFX01PVkVEID0gMTAwMzEsCisgIE5GU0VSUl9BVFRSTk9UU1VQUCA9IDEwMDMyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlNFUlJfTk9fR1JBQ0UgPSAxMDAzMywKLSBORlNFUlJfUkVDTEFJTV9CQUQgPSAxMDAzNCwKLSBORlNFUlJfUkVDTEFJTV9DT05GTElDVCA9IDEwMDM1LAotIE5GU0VSUl9CQURfWERSID0gMTAwMzYsCisgIE5GU0VSUl9OT19HUkFDRSA9IDEwMDMzLAorICBORlNFUlJfUkVDTEFJTV9CQUQgPSAxMDAzNCwKKyAgTkZTRVJSX1JFQ0xBSU1fQ09ORkxJQ1QgPSAxMDAzNSwKKyAgTkZTRVJSX0JBRF9YRFIgPSAxMDAzNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZTRVJSX0xPQ0tTX0hFTEQgPSAxMDAzNywKLSBORlNFUlJfT1BFTk1PREUgPSAxMDAzOCwKLSBORlNFUlJfQkFET1dORVIgPSAxMDAzOSwKLSBORlNFUlJfQkFEQ0hBUiA9IDEwMDQwLAorICBORlNFUlJfTE9DS1NfSEVMRCA9IDEwMDM3LAorICBORlNFUlJfT1BFTk1PREUgPSAxMDAzOCwKKyAgTkZTRVJSX0JBRE9XTkVSID0gMTAwMzksCisgIE5GU0VSUl9CQURDSEFSID0gMTAwNDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU0VSUl9CQUROQU1FID0gMTAwNDEsCi0gTkZTRVJSX0JBRF9SQU5HRSA9IDEwMDQyLAotIE5GU0VSUl9MT0NLX05PVFNVUFAgPSAxMDA0MywKLSBORlNFUlJfT1BfSUxMRUdBTCA9IDEwMDQ0LAorICBORlNFUlJfQkFETkFNRSA9IDEwMDQxLAorICBORlNFUlJfQkFEX1JBTkdFID0gMTAwNDIsCisgIE5GU0VSUl9MT0NLX05PVFNVUFAgPSAxMDA0MywKKyAgTkZTRVJSX09QX0lMTEVHQUwgPSAxMDA0NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZTRVJSX0RFQURMT0NLID0gMTAwNDUsCi0gTkZTRVJSX0ZJTEVfT1BFTiA9IDEwMDQ2LAotIE5GU0VSUl9BRE1JTl9SRVZPS0VEID0gMTAwNDcsCi0gTkZTRVJSX0NCX1BBVEhfRE9XTiA9IDEwMDQ4LAorICBORlNFUlJfREVBRExPQ0sgPSAxMDA0NSwKKyAgTkZTRVJSX0ZJTEVfT1BFTiA9IDEwMDQ2LAorICBORlNFUlJfQURNSU5fUkVWT0tFRCA9IDEwMDQ3LAorICBORlNFUlJfQ0JfUEFUSF9ET1dOID0gMTAwNDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gbmZzX2Z0eXBlIHsKLSBORk5PTiA9IDAsCi0gTkZSRUcgPSAxLAorICBORk5PTiA9IDAsCisgIE5GUkVHID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkZESVIgPSAyLAotIE5GQkxLID0gMywKLSBORkNIUiA9IDQsCi0gTkZMTksgPSA1LAorICBORkRJUiA9IDIsCisgIE5GQkxLID0gMywKKyAgTkZDSFIgPSA0LAorICBORkxOSyA9IDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GU09DSyA9IDYsCi0gTkZCQUQgPSA3LAotIE5GRklGTyA9IDgKKyAgTkZTT0NLID0gNiwKKyAgTkZCQUQgPSA3LAorICBORkZJRk8gPSA4CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnMyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mczIuaAppbmRleCAzMWQ3MzFiLi4xMGFhZmU5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mczIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mczIuaApAQCAtMjcsNyArMjcsNyBAQAogI2RlZmluZSBORlMyX0ZIU0laRSAzMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTkZTMl9DT09LSUVTSVpFIDQKLSNkZWZpbmUgTkZTMl9GSUZPX0RFViAoLTEpCisjZGVmaW5lIE5GUzJfRklGT19ERVYgKC0gMSkKICNkZWZpbmUgTkZTMk1PREVfRk1UIDAxNzAwMDAKICNkZWZpbmUgTkZTMk1PREVfRElSIDAwNDAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0zOSwyMSArMzksMjEgQEAKICNkZWZpbmUgTkZTMk1PREVfU09DSyAwMTQwMDAwCiAjZGVmaW5lIE5GUzJNT0RFX0ZJRk8gMDAxMDAwMAogZW51bSBuZnMyX2Z0eXBlIHsKLSBORjJOT04gPSAwLAorICBORjJOT04gPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORjJSRUcgPSAxLAotIE5GMkRJUiA9IDIsCi0gTkYyQkxLID0gMywKLSBORjJDSFIgPSA0LAorICBORjJSRUcgPSAxLAorICBORjJESVIgPSAyLAorICBORjJCTEsgPSAzLAorICBORjJDSFIgPSA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORjJMTksgPSA1LAotIE5GMlNPQ0sgPSA2LAotIE5GMkJBRCA9IDcsCi0gTkYyRklGTyA9IDgKKyAgTkYyTE5LID0gNSwKKyAgTkYyU09DSyA9IDYsCisgIE5GMkJBRCA9IDcsCisgIE5GMkZJRk8gPSA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBuZnMyX2ZoIHsKLSBjaGFyIGRhdGFbTkZTMl9GSFNJWkVdOworICBjaGFyIGRhdGFbTkZTMl9GSFNJWkVdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GUzJfVkVSU0lPTiAyCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mczMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzMy5oCmluZGV4IDJjZGNlNGIuLmRiNmRjNGIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzMy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzMy5oCkBAIC0zMSw3ICszMSw3IEBACiAjZGVmaW5lIE5GUzNfQ09PS0lFVkVSRlNJWkUgOAogI2RlZmluZSBORlMzX1dSSVRFVkVSRlNJWkUgOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTkZTM19GSUZPX0RFViAoLTEpCisjZGVmaW5lIE5GUzNfRklGT19ERVYgKC0gMSkKICNkZWZpbmUgTkZTM01PREVfRk1UIDAxNzAwMDAKICNkZWZpbmUgTkZTM01PREVfRElSIDAwNDAwMDAKICNkZWZpbmUgTkZTM01PREVfQ0hSIDAwMjAwMDAKQEAgLTUyLDkgKzUyLDkgQEAKICNkZWZpbmUgTkZTM19BQ0NFU1NfRlVMTCAweDAwM2YKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mczNfY3JlYXRlbW9kZSB7Ci0gTkZTM19DUkVBVEVfVU5DSEVDS0VEID0gMCwKLSBORlMzX0NSRUFURV9HVUFSREVEID0gMSwKLSBORlMzX0NSRUFURV9FWENMVVNJVkUgPSAyCisgIE5GUzNfQ1JFQVRFX1VOQ0hFQ0tFRCA9IDAsCisgIE5GUzNfQ1JFQVRFX0dVQVJERUQgPSAxLAorICBORlMzX0NSRUFURV9FWENMVVNJVkUgPSAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgTkZTM19GU0ZfTElOSyAweDAwMDEKQEAgLTY3LDIyICs2NywyMiBAQAogI2RlZmluZSBORlMzX0ZTRl9SRUFET05MWSAweDAwMDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5mczNfZnR5cGUgewotIE5GM05PTiA9IDAsCi0gTkYzUkVHID0gMSwKLSBORjNESVIgPSAyLAorICBORjNOT04gPSAwLAorICBORjNSRUcgPSAxLAorICBORjNESVIgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORjNCTEsgPSAzLAotIE5GM0NIUiA9IDQsCi0gTkYzTE5LID0gNSwKLSBORjNTT0NLID0gNiwKKyAgTkYzQkxLID0gMywKKyAgTkYzQ0hSID0gNCwKKyAgTkYzTE5LID0gNSwKKyAgTkYzU09DSyA9IDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5GM0ZJRk8gPSA3LAotIE5GM0JBRCA9IDgKKyAgTkYzRklGTyA9IDcsCisgIE5GM0JBRCA9IDgKIH07CiBzdHJ1Y3QgbmZzM19maCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHNpemU7Ci0gdW5zaWduZWQgY2hhciBkYXRhW05GUzNfRkhTSVpFXTsKKyAgdW5zaWduZWQgc2hvcnQgc2l6ZTsKKyAgdW5zaWduZWQgY2hhciBkYXRhW05GUzNfRkhTSVpFXTsKIH07CiAjZGVmaW5lIE5GUzNfVkVSU0lPTiAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnM0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mczQuaAppbmRleCAyOTQ0NjkzLi5iMGRkOTI1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mczQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mczQuaApAQCAtMTU3LDE1ICsxNTcsMTUgQEAKICNkZWZpbmUgTkZTNF9TRUNJTkZPX1NUWUxFNF9DVVJSRU5UX0ZIIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GUzRfU0VDSU5GT19TVFlMRTRfUEFSRU5UIDEKLSNkZWZpbmUgTkZTNF9NQVhfVUlOVDY0ICh+KF9fdTY0KTApCisjZGVmaW5lIE5GUzRfTUFYX1VJTlQ2NCAofihfX3U2NCkgMCkKICNkZWZpbmUgTkZTNF9NQVhfT1BTIDgKICNkZWZpbmUgTkZTNF9NQVhfQkFDS19DSEFOTkVMX09QUyAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBuZnM0X2FjbF93aG90eXBlIHsKLSBORlM0X0FDTF9XSE9fTkFNRUQgPSAwLAotIE5GUzRfQUNMX1dIT19PV05FUiwKLSBORlM0X0FDTF9XSE9fR1JPVVAsCisgIE5GUzRfQUNMX1dIT19OQU1FRCA9IDAsCisgIE5GUzRfQUNMX1dIT19PV05FUiwKKyAgTkZTNF9BQ0xfV0hPX0dST1VQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORlM0X0FDTF9XSE9fRVZFUllPTkUsCisgIE5GUzRfQUNMX1dIT19FVkVSWU9ORSwKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzNF9tb3VudC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnM0X21vdW50LmgKaW5kZXggOGQ4NDQxNi4uNjRhYWRlOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnM0X21vdW50LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnM0X21vdW50LmgKQEAgLTIxLDMzICsyMSwzMyBAQAogI2RlZmluZSBORlM0X01PVU5UX1ZFUlNJT04gMQogc3RydWN0IG5mc19zdHJpbmcgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbGVuOwotIGNvbnN0IGNoYXIgX191c2VyICogZGF0YTsKKyAgdW5zaWduZWQgaW50IGxlbjsKKyAgY29uc3QgY2hhciBfX3VzZXIgKiBkYXRhOwogfTsKIHN0cnVjdCBuZnM0X21vdW50X2RhdGEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdmVyc2lvbjsKLSBpbnQgZmxhZ3M7Ci0gaW50IHJzaXplOwotIGludCB3c2l6ZTsKKyAgaW50IHZlcnNpb247CisgIGludCBmbGFnczsKKyAgaW50IHJzaXplOworICBpbnQgd3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0aW1lbzsKLSBpbnQgcmV0cmFuczsKLSBpbnQgYWNyZWdtaW47Ci0gaW50IGFjcmVnbWF4OworICBpbnQgdGltZW87CisgIGludCByZXRyYW5zOworICBpbnQgYWNyZWdtaW47CisgIGludCBhY3JlZ21heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGFjZGlybWluOwotIGludCBhY2Rpcm1heDsKLSBzdHJ1Y3QgbmZzX3N0cmluZyBjbGllbnRfYWRkcjsKLSBzdHJ1Y3QgbmZzX3N0cmluZyBtbnRfcGF0aDsKKyAgaW50IGFjZGlybWluOworICBpbnQgYWNkaXJtYXg7CisgIHN0cnVjdCBuZnNfc3RyaW5nIGNsaWVudF9hZGRyOworICBzdHJ1Y3QgbmZzX3N0cmluZyBtbnRfcGF0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IG5mc19zdHJpbmcgaG9zdG5hbWU7Ci0gdW5zaWduZWQgaW50IGhvc3RfYWRkcmxlbjsKLSBzdHJ1Y3Qgc29ja2FkZHIgX191c2VyICogaG9zdF9hZGRyOwotIGludCBwcm90bzsKKyAgc3RydWN0IG5mc19zdHJpbmcgaG9zdG5hbWU7CisgIHVuc2lnbmVkIGludCBob3N0X2FkZHJsZW47CisgIHN0cnVjdCBzb2NrYWRkciBfX3VzZXIgKiBob3N0X2FkZHI7CisgIGludCBwcm90bzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGF1dGhfZmxhdm91cmxlbjsKLSBpbnQgX191c2VyICphdXRoX2ZsYXZvdXJzOworICBpbnQgYXV0aF9mbGF2b3VybGVuOworICBpbnQgX191c2VyICogYXV0aF9mbGF2b3VyczsKIH07CiAjZGVmaW5lIE5GUzRfTU9VTlRfU09GVCAweDAwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc19mcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNfZnMuaAppbmRleCBmMzQwZmIxLi5iNzcxY2ZiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc19mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzX2ZzLmgKQEAgLTI0LDkgKzI0LDkgQEAKICNkZWZpbmUgTkZTX0RFRl9VRFBfUkVUUkFOUyAoMykKICNkZWZpbmUgTkZTX0RFRl9UQ1BfVElNRU8gKDYwMCkKICNkZWZpbmUgTkZTX0RFRl9UQ1BfUkVUUkFOUyAoMikKLSNkZWZpbmUgTkZTX01BWF9VRFBfVElNRU9VVCAoNjAqSFopCisjZGVmaW5lIE5GU19NQVhfVURQX1RJTUVPVVQgKDYwICogSFopCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBORlNfTUFYX1RDUF9USU1FT1VUICg2MDAqSFopCisjZGVmaW5lIE5GU19NQVhfVENQX1RJTUVPVVQgKDYwMCAqIEhaKQogI2RlZmluZSBORlNfREVGX0FDUkVHTUlOICgzKQogI2RlZmluZSBORlNfREVGX0FDUkVHTUFYICg2MCkKICNkZWZpbmUgTkZTX0RFRl9BQ0RJUk1JTiAoMzApCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc19pZG1hcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNfaWRtYXAuaAppbmRleCAwMzliZjQwLi41ZjVjMGViIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc19pZG1hcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzX2lkbWFwLmgKQEAgLTMyLDEyICszMiwxMiBAQAogI2RlZmluZSBJRE1BUF9TVEFUVVNfU1VDQ0VTUyAweDA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlkbWFwX21zZyB7Ci0gX191OCBpbV90eXBlOwotIF9fdTggaW1fY29udjsKLSBjaGFyIGltX25hbWVbSURNQVBfTkFNRVNaXTsKKyAgX191OCBpbV90eXBlOworICBfX3U4IGltX2NvbnY7CisgIGNoYXIgaW1fbmFtZVtJRE1BUF9OQU1FU1pdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbV9pZDsKLSBfX3U4IGltX3N0YXR1czsKKyAgX191MzIgaW1faWQ7CisgIF9fdTggaW1fc3RhdHVzOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzX21vdW50LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc19tb3VudC5oCmluZGV4IGRjOTZlZDIuLjE2ZWQ0NjAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzX21vdW50LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNfbW91bnQuaApAQCAtMjcsMjkgKzI3LDI5IEBACiAjZGVmaW5lIE5GU19NQVhfQ09OVEVYVF9MRU4gMjU2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5mc19tb3VudF9kYXRhIHsKLSBpbnQgdmVyc2lvbjsKLSBpbnQgZmQ7Ci0gc3RydWN0IG5mczJfZmggb2xkX3Jvb3Q7CisgIGludCB2ZXJzaW9uOworICBpbnQgZmQ7CisgIHN0cnVjdCBuZnMyX2ZoIG9sZF9yb290OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZmxhZ3M7Ci0gaW50IHJzaXplOwotIGludCB3c2l6ZTsKLSBpbnQgdGltZW87CisgIGludCBmbGFnczsKKyAgaW50IHJzaXplOworICBpbnQgd3NpemU7CisgIGludCB0aW1lbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHJldHJhbnM7Ci0gaW50IGFjcmVnbWluOwotIGludCBhY3JlZ21heDsKLSBpbnQgYWNkaXJtaW47CisgIGludCByZXRyYW5zOworICBpbnQgYWNyZWdtaW47CisgIGludCBhY3JlZ21heDsKKyAgaW50IGFjZGlybWluOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgYWNkaXJtYXg7Ci0gc3RydWN0IHNvY2thZGRyX2luIGFkZHI7Ci0gY2hhciBob3N0bmFtZVtORlNfTUFYTkFNTEVOICsgMV07Ci0gaW50IG5hbWxlbjsKKyAgaW50IGFjZGlybWF4OworICBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkcjsKKyAgY2hhciBob3N0bmFtZVtORlNfTUFYTkFNTEVOICsgMV07CisgIGludCBuYW1sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBic2l6ZTsKLSBzdHJ1Y3QgbmZzM19maCByb290OwotIGludCBwc2V1ZG9mbGF2b3I7Ci0gY2hhciBjb250ZXh0W05GU19NQVhfQ09OVEVYVF9MRU4gKyAxXTsKKyAgdW5zaWduZWQgaW50IGJzaXplOworICBzdHJ1Y3QgbmZzM19maCByb290OworICBpbnQgcHNldWRvZmxhdm9yOworICBjaGFyIGNvbnRleHRbTkZTX01BWF9DT05URVhUX0xFTiArIDFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIE5GU19NT1VOVF9TT0ZUIDB4MDAwMQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNkL2NsZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNkL2NsZC5oCmluZGV4IDE2YjM2MjkuLjM1OTM2MzQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzZC9jbGQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc2QvY2xkLmgKQEAgLTIyLDI4ICsyMiwyOCBAQAogI2RlZmluZSBORlM0X09QQVFVRV9MSU1JVCAxMDI0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBjbGRfY29tbWFuZCB7Ci0gQ2xkX0NyZWF0ZSwKLSBDbGRfUmVtb3ZlLAotIENsZF9DaGVjaywKKyAgQ2xkX0NyZWF0ZSwKKyAgQ2xkX1JlbW92ZSwKKyAgQ2xkX0NoZWNrLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDbGRfR3JhY2VEb25lLAorICBDbGRfR3JhY2VEb25lLAogfTsKIHN0cnVjdCBjbGRfbmFtZSB7Ci0gdWludDE2X3QgY25fbGVuOworICB1aW50MTZfdCBjbl9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgY25faWRbTkZTNF9PUEFRVUVfTElNSVRdOworICB1bnNpZ25lZCBjaGFyIGNuX2lkW05GUzRfT1BBUVVFX0xJTUlUXTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgY2xkX21zZyB7Ci0gdWludDhfdCBjbV92ZXJzOworICB1aW50OF90IGNtX3ZlcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ4X3QgY21fY21kOwotIGludDE2X3QgY21fc3RhdHVzOwotIHVpbnQzMl90IGNtX3hpZDsKLSB1bmlvbiB7CisgIHVpbnQ4X3QgY21fY21kOworICBpbnQxNl90IGNtX3N0YXR1czsKKyAgdWludDMyX3QgY21feGlkOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludDY0X3QgY21fZ3JhY2V0aW1lOwotIHN0cnVjdCBjbGRfbmFtZSBjbV9uYW1lOwotIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgY21fdTsKKyAgICBpbnQ2NF90IGNtX2dyYWNldGltZTsKKyAgICBzdHJ1Y3QgY2xkX25hbWUgY21fbmFtZTsKKyAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBjbV91OwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzZC9leHBvcnQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmZzZC9leHBvcnQuaAppbmRleCA1ZjhhZDg4Li40ZDdiZmFkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc2QvZXhwb3J0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNkL2V4cG9ydC5oCkBAIC0zMSwxNiArMzEsMTggQEAKICNkZWZpbmUgTkZTRVhQX0FTWU5DIDB4MDAxMAogI2RlZmluZSBORlNFWFBfR0FUSEVSRURfV1JJVEVTIDB4MDAyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTkZTRVhQX05PUkVBRERJUlBMVVMgMHgwMDQwCiAjZGVmaW5lIE5GU0VYUF9OT0hJREUgMHgwMjAwCiAjZGVmaW5lIE5GU0VYUF9OT1NVQlRSRUVDSEVDSyAweDA0MDAKICNkZWZpbmUgTkZTRVhQX05PQVVUSE5MTSAweDA4MDAKLSNkZWZpbmUgTkZTRVhQX01TTkZTIDB4MTAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTkZTRVhQX01TTkZTIDB4MTAwMAogI2RlZmluZSBORlNFWFBfRlNJRCAweDIwMDAKICNkZWZpbmUgTkZTRVhQX0NST1NTTU9VTlQgMHg0MDAwCiAjZGVmaW5lIE5GU0VYUF9OT0FDTCAweDgwMDAKLSNkZWZpbmUgTkZTRVhQX1Y0Uk9PVCAweDEwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBORlNFWFBfQUxMRkxBR1MgMHgxN0UzRgotI2RlZmluZSBORlNFWFBfU0VDSU5GT19GTEFHUyAoTkZTRVhQX1JFQURPTkxZIHwgTkZTRVhQX1JPT1RTUVVBU0ggICB8IE5GU0VYUF9BTExTUVVBU0ggICB8IE5GU0VYUF9JTlNFQ1VSRV9QT1JUKQorI2RlZmluZSBORlNFWFBfVjRST09UIDB4MTAwMDAKKyNkZWZpbmUgTkZTRVhQX0FMTEZMQUdTIDB4MUZFN0YKKyNkZWZpbmUgTkZTRVhQX1NFQ0lORk9fRkxBR1MgKE5GU0VYUF9SRUFET05MWSB8IE5GU0VYUF9ST09UU1FVQVNIIHwgTkZTRVhQX0FMTFNRVUFTSCB8IE5GU0VYUF9JTlNFQ1VSRV9QT1JUKQogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNkL25mc2ZoLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc2QvbmZzZmguaAppbmRleCBkMDg5NDEyLi4yODU5MzZjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc2QvbmZzZmguaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc2QvbmZzZmguaApAQCAtMjYsMzMgKzI2LDMzIEBACiAjaW5jbHVkZSA8bGludXgvbmZzNC5oPgogc3RydWN0IG5mc19maGJhc2Vfb2xkIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmJfZGNvb2tpZTsKLSBfX3UzMiBmYl9pbm87Ci0gX191MzIgZmJfZGlyaW5vOwotIF9fdTMyIGZiX2RldjsKKyAgX191MzIgZmJfZGNvb2tpZTsKKyAgX191MzIgZmJfaW5vOworICBfX3UzMiBmYl9kaXJpbm87CisgIF9fdTMyIGZiX2RldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmJfeGRldjsKLSBfX3UzMiBmYl94aW5vOwotIF9fdTMyIGZiX2dlbmVyYXRpb247CisgIF9fdTMyIGZiX3hkZXY7CisgIF9fdTMyIGZiX3hpbm87CisgIF9fdTMyIGZiX2dlbmVyYXRpb247CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuZnNfZmhiYXNlX25ldyB7Ci0gX191OCBmYl92ZXJzaW9uOwotIF9fdTggZmJfYXV0aF90eXBlOwotIF9fdTggZmJfZnNpZF90eXBlOworICBfX3U4IGZiX3ZlcnNpb247CisgIF9fdTggZmJfYXV0aF90eXBlOworICBfX3U4IGZiX2ZzaWRfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmYl9maWxlaWRfdHlwZTsKLSBfX3UzMiBmYl9hdXRoWzFdOworICBfX3U4IGZiX2ZpbGVpZF90eXBlOworICBfX3UzMiBmYl9hdXRoWzFdOwogfTsKIHN0cnVjdCBrbmZzZF9maCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBmaF9zaXplOwotIHVuaW9uIHsKLSBzdHJ1Y3QgbmZzX2ZoYmFzZV9vbGQgZmhfb2xkOwotIF9fdTMyIGZoX3BhZFtORlM0X0ZIU0laRS80XTsKKyAgdW5zaWduZWQgaW50IGZoX3NpemU7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgbmZzX2ZoYmFzZV9vbGQgZmhfb2xkOworICAgIF9fdTMyIGZoX3BhZFtORlM0X0ZIU0laRSAvIDRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgbmZzX2ZoYmFzZV9uZXcgZmhfbmV3OwotIH0gZmhfYmFzZTsKKyAgICBzdHJ1Y3QgbmZzX2ZoYmFzZV9uZXcgZmhfbmV3OworICB9IGZoX2Jhc2U7CiB9OwogI2RlZmluZSBvZmhfZGNvb2tpZSBmaF9iYXNlLmZoX29sZC5mYl9kY29va2llCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNjgsNyArNjgsNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgZmhfYXV0aF90eXBlIGZoX2Jhc2UuZmhfbmV3LmZiX2F1dGhfdHlwZQogI2RlZmluZSBmaF9maWxlaWRfdHlwZSBmaF9iYXNlLmZoX25ldy5mYl9maWxlaWRfdHlwZQotI2RlZmluZSBmaF9hdXRoIGZoX2Jhc2UuZmhfbmV3LmZiX2F1dGgKICNkZWZpbmUgZmhfZnNpZCBmaF9iYXNlLmZoX25ldy5mYl9hdXRoCisjZGVmaW5lIGZoX2F1dGggZmhfYmFzZS5maF9uZXcuZmJfYXV0aAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9uZnNkL3N0YXRzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc2Qvc3RhdHMuaAppbmRleCA3NTdiN2Q3Li4zYzQ5YmJjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc2Qvc3RhdHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L25mc2Qvc3RhdHMuaApAQCAtMTksNiArMTksNiBAQAogI2lmbmRlZiBfVUFQSUxJTlVYX05GU0RfU1RBVFNfSAogI2RlZmluZSBfVUFQSUxJTlVYX05GU0RfU1RBVFNfSAogI2luY2x1ZGUgPGxpbnV4L25mczQuaD4KLSNkZWZpbmUgTkZTRF9VU0FHRV9XUkFQIChIWioxMDAwMDAwKQorI2RlZmluZSBORlNEX1VTQUdFX1dSQVAgKEhaICogMTAwMDAwMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbmw4MDIxMS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ubDgwMjExLmgKaW5kZXggMDFjNTBjZC4uYWU2ZDZkOCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ubDgwMjExLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ubDgwMjExLmgKQEAgLTIyLDQxNiArMjIsNDM2IEBACiAjZGVmaW5lIE5MODAyMTFfR0VOTF9OQU1FICJubDgwMjExIgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV9jb21tYW5kcyB7Ci0gTkw4MDIxMV9DTURfVU5TUEVDLAotIE5MODAyMTFfQ01EX0dFVF9XSVBIWSwKLSBOTDgwMjExX0NNRF9TRVRfV0lQSFksCisgIE5MODAyMTFfQ01EX1VOU1BFQywKKyAgTkw4MDIxMV9DTURfR0VUX1dJUEhZLAorICBOTDgwMjExX0NNRF9TRVRfV0lQSFksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX05FV19XSVBIWSwKLSBOTDgwMjExX0NNRF9ERUxfV0lQSFksCi0gTkw4MDIxMV9DTURfR0VUX0lOVEVSRkFDRSwKLSBOTDgwMjExX0NNRF9TRVRfSU5URVJGQUNFLAorICBOTDgwMjExX0NNRF9ORVdfV0lQSFksCisgIE5MODAyMTFfQ01EX0RFTF9XSVBIWSwKKyAgTkw4MDIxMV9DTURfR0VUX0lOVEVSRkFDRSwKKyAgTkw4MDIxMV9DTURfU0VUX0lOVEVSRkFDRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfTkVXX0lOVEVSRkFDRSwKLSBOTDgwMjExX0NNRF9ERUxfSU5URVJGQUNFLAotIE5MODAyMTFfQ01EX0dFVF9LRVksCi0gTkw4MDIxMV9DTURfU0VUX0tFWSwKKyAgTkw4MDIxMV9DTURfTkVXX0lOVEVSRkFDRSwKKyAgTkw4MDIxMV9DTURfREVMX0lOVEVSRkFDRSwKKyAgTkw4MDIxMV9DTURfR0VUX0tFWSwKKyAgTkw4MDIxMV9DTURfU0VUX0tFWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfTkVXX0tFWSwKLSBOTDgwMjExX0NNRF9ERUxfS0VZLAotIE5MODAyMTFfQ01EX0dFVF9CRUFDT04sCi0gTkw4MDIxMV9DTURfU0VUX0JFQUNPTiwKKyAgTkw4MDIxMV9DTURfTkVXX0tFWSwKKyAgTkw4MDIxMV9DTURfREVMX0tFWSwKKyAgTkw4MDIxMV9DTURfR0VUX0JFQUNPTiwKKyAgTkw4MDIxMV9DTURfU0VUX0JFQUNPTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfU1RBUlRfQVAsCi0gTkw4MDIxMV9DTURfTkVXX0JFQUNPTiA9IE5MODAyMTFfQ01EX1NUQVJUX0FQLAotIE5MODAyMTFfQ01EX1NUT1BfQVAsCi0gTkw4MDIxMV9DTURfREVMX0JFQUNPTiA9IE5MODAyMTFfQ01EX1NUT1BfQVAsCisgIE5MODAyMTFfQ01EX1NUQVJUX0FQLAorICBOTDgwMjExX0NNRF9ORVdfQkVBQ09OID0gTkw4MDIxMV9DTURfU1RBUlRfQVAsCisgIE5MODAyMTFfQ01EX1NUT1BfQVAsCisgIE5MODAyMTFfQ01EX0RFTF9CRUFDT04gPSBOTDgwMjExX0NNRF9TVE9QX0FQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9HRVRfU1RBVElPTiwKLSBOTDgwMjExX0NNRF9TRVRfU1RBVElPTiwKLSBOTDgwMjExX0NNRF9ORVdfU1RBVElPTiwKLSBOTDgwMjExX0NNRF9ERUxfU1RBVElPTiwKKyAgTkw4MDIxMV9DTURfR0VUX1NUQVRJT04sCisgIE5MODAyMTFfQ01EX1NFVF9TVEFUSU9OLAorICBOTDgwMjExX0NNRF9ORVdfU1RBVElPTiwKKyAgTkw4MDIxMV9DTURfREVMX1NUQVRJT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX0dFVF9NUEFUSCwKLSBOTDgwMjExX0NNRF9TRVRfTVBBVEgsCi0gTkw4MDIxMV9DTURfTkVXX01QQVRILAotIE5MODAyMTFfQ01EX0RFTF9NUEFUSCwKKyAgTkw4MDIxMV9DTURfR0VUX01QQVRILAorICBOTDgwMjExX0NNRF9TRVRfTVBBVEgsCisgIE5MODAyMTFfQ01EX05FV19NUEFUSCwKKyAgTkw4MDIxMV9DTURfREVMX01QQVRILAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9TRVRfQlNTLAotIE5MODAyMTFfQ01EX1NFVF9SRUcsCi0gTkw4MDIxMV9DTURfUkVRX1NFVF9SRUcsCi0gTkw4MDIxMV9DTURfR0VUX01FU0hfQ09ORklHLAorICBOTDgwMjExX0NNRF9TRVRfQlNTLAorICBOTDgwMjExX0NNRF9TRVRfUkVHLAorICBOTDgwMjExX0NNRF9SRVFfU0VUX1JFRywKKyAgTkw4MDIxMV9DTURfR0VUX01FU0hfQ09ORklHLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9TRVRfTUVTSF9DT05GSUcsCi0gTkw4MDIxMV9DTURfU0VUX01HTVRfRVhUUkFfSUUgICwKLSBOTDgwMjExX0NNRF9HRVRfUkVHLAotIE5MODAyMTFfQ01EX0dFVF9TQ0FOLAorICBOTDgwMjExX0NNRF9TRVRfTUVTSF9DT05GSUcsCisgIE5MODAyMTFfQ01EX1NFVF9NR01UX0VYVFJBX0lFLAorICBOTDgwMjExX0NNRF9HRVRfUkVHLAorICBOTDgwMjExX0NNRF9HRVRfU0NBTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfVFJJR0dFUl9TQ0FOLAotIE5MODAyMTFfQ01EX05FV19TQ0FOX1JFU1VMVFMsCi0gTkw4MDIxMV9DTURfU0NBTl9BQk9SVEVELAotIE5MODAyMTFfQ01EX1JFR19DSEFOR0UsCisgIE5MODAyMTFfQ01EX1RSSUdHRVJfU0NBTiwKKyAgTkw4MDIxMV9DTURfTkVXX1NDQU5fUkVTVUxUUywKKyAgTkw4MDIxMV9DTURfU0NBTl9BQk9SVEVELAorICBOTDgwMjExX0NNRF9SRUdfQ0hBTkdFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9BVVRIRU5USUNBVEUsCi0gTkw4MDIxMV9DTURfQVNTT0NJQVRFLAotIE5MODAyMTFfQ01EX0RFQVVUSEVOVElDQVRFLAotIE5MODAyMTFfQ01EX0RJU0FTU09DSUFURSwKKyAgTkw4MDIxMV9DTURfQVVUSEVOVElDQVRFLAorICBOTDgwMjExX0NNRF9BU1NPQ0lBVEUsCisgIE5MODAyMTFfQ01EX0RFQVVUSEVOVElDQVRFLAorICBOTDgwMjExX0NNRF9ESVNBU1NPQ0lBVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX01JQ0hBRUxfTUlDX0ZBSUxVUkUsCi0gTkw4MDIxMV9DTURfUkVHX0JFQUNPTl9ISU5ULAotIE5MODAyMTFfQ01EX0pPSU5fSUJTUywKLSBOTDgwMjExX0NNRF9MRUFWRV9JQlNTLAorICBOTDgwMjExX0NNRF9NSUNIQUVMX01JQ19GQUlMVVJFLAorICBOTDgwMjExX0NNRF9SRUdfQkVBQ09OX0hJTlQsCisgIE5MODAyMTFfQ01EX0pPSU5fSUJTUywKKyAgTkw4MDIxMV9DTURfTEVBVkVfSUJTUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfVEVTVE1PREUsCi0gTkw4MDIxMV9DTURfQ09OTkVDVCwKLSBOTDgwMjExX0NNRF9ST0FNLAotIE5MODAyMTFfQ01EX0RJU0NPTk5FQ1QsCisgIE5MODAyMTFfQ01EX1RFU1RNT0RFLAorICBOTDgwMjExX0NNRF9DT05ORUNULAorICBOTDgwMjExX0NNRF9ST0FNLAorICBOTDgwMjExX0NNRF9ESVNDT05ORUNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9TRVRfV0lQSFlfTkVUTlMsCi0gTkw4MDIxMV9DTURfR0VUX1NVUlZFWSwKLSBOTDgwMjExX0NNRF9ORVdfU1VSVkVZX1JFU1VMVFMsCi0gTkw4MDIxMV9DTURfU0VUX1BNS1NBLAorICBOTDgwMjExX0NNRF9TRVRfV0lQSFlfTkVUTlMsCisgIE5MODAyMTFfQ01EX0dFVF9TVVJWRVksCisgIE5MODAyMTFfQ01EX05FV19TVVJWRVlfUkVTVUxUUywKKyAgTkw4MDIxMV9DTURfU0VUX1BNS1NBLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9ERUxfUE1LU0EsCi0gTkw4MDIxMV9DTURfRkxVU0hfUE1LU0EsCi0gTkw4MDIxMV9DTURfUkVNQUlOX09OX0NIQU5ORUwsCi0gTkw4MDIxMV9DTURfQ0FOQ0VMX1JFTUFJTl9PTl9DSEFOTkVMLAorICBOTDgwMjExX0NNRF9ERUxfUE1LU0EsCisgIE5MODAyMTFfQ01EX0ZMVVNIX1BNS1NBLAorICBOTDgwMjExX0NNRF9SRU1BSU5fT05fQ0hBTk5FTCwKKyAgTkw4MDIxMV9DTURfQ0FOQ0VMX1JFTUFJTl9PTl9DSEFOTkVMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9TRVRfVFhfQklUUkFURV9NQVNLLAotIE5MODAyMTFfQ01EX1JFR0lTVEVSX0ZSQU1FLAotIE5MODAyMTFfQ01EX1JFR0lTVEVSX0FDVElPTiA9IE5MODAyMTFfQ01EX1JFR0lTVEVSX0ZSQU1FLAotIE5MODAyMTFfQ01EX0ZSQU1FLAorICBOTDgwMjExX0NNRF9TRVRfVFhfQklUUkFURV9NQVNLLAorICBOTDgwMjExX0NNRF9SRUdJU1RFUl9GUkFNRSwKKyAgTkw4MDIxMV9DTURfUkVHSVNURVJfQUNUSU9OID0gTkw4MDIxMV9DTURfUkVHSVNURVJfRlJBTUUsCisgIE5MODAyMTFfQ01EX0ZSQU1FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9BQ1RJT04gPSBOTDgwMjExX0NNRF9GUkFNRSwKLSBOTDgwMjExX0NNRF9GUkFNRV9UWF9TVEFUVVMsCi0gTkw4MDIxMV9DTURfQUNUSU9OX1RYX1NUQVRVUyA9IE5MODAyMTFfQ01EX0ZSQU1FX1RYX1NUQVRVUywKLSBOTDgwMjExX0NNRF9TRVRfUE9XRVJfU0FWRSwKKyAgTkw4MDIxMV9DTURfQUNUSU9OID0gTkw4MDIxMV9DTURfRlJBTUUsCisgIE5MODAyMTFfQ01EX0ZSQU1FX1RYX1NUQVRVUywKKyAgTkw4MDIxMV9DTURfQUNUSU9OX1RYX1NUQVRVUyA9IE5MODAyMTFfQ01EX0ZSQU1FX1RYX1NUQVRVUywKKyAgTkw4MDIxMV9DTURfU0VUX1BPV0VSX1NBVkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX0dFVF9QT1dFUl9TQVZFLAotIE5MODAyMTFfQ01EX1NFVF9DUU0sCi0gTkw4MDIxMV9DTURfTk9USUZZX0NRTSwKLSBOTDgwMjExX0NNRF9TRVRfQ0hBTk5FTCwKKyAgTkw4MDIxMV9DTURfR0VUX1BPV0VSX1NBVkUsCisgIE5MODAyMTFfQ01EX1NFVF9DUU0sCisgIE5MODAyMTFfQ01EX05PVElGWV9DUU0sCisgIE5MODAyMTFfQ01EX1NFVF9DSEFOTkVMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9TRVRfV0RTX1BFRVIsCi0gTkw4MDIxMV9DTURfRlJBTUVfV0FJVF9DQU5DRUwsCi0gTkw4MDIxMV9DTURfSk9JTl9NRVNILAotIE5MODAyMTFfQ01EX0xFQVZFX01FU0gsCisgIE5MODAyMTFfQ01EX1NFVF9XRFNfUEVFUiwKKyAgTkw4MDIxMV9DTURfRlJBTUVfV0FJVF9DQU5DRUwsCisgIE5MODAyMTFfQ01EX0pPSU5fTUVTSCwKKyAgTkw4MDIxMV9DTURfTEVBVkVfTUVTSCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfVU5QUk9UX0RFQVVUSEVOVElDQVRFLAotIE5MODAyMTFfQ01EX1VOUFJPVF9ESVNBU1NPQ0lBVEUsCi0gTkw4MDIxMV9DTURfTkVXX1BFRVJfQ0FORElEQVRFLAotIE5MODAyMTFfQ01EX0dFVF9XT1dMQU4sCisgIE5MODAyMTFfQ01EX1VOUFJPVF9ERUFVVEhFTlRJQ0FURSwKKyAgTkw4MDIxMV9DTURfVU5QUk9UX0RJU0FTU09DSUFURSwKKyAgTkw4MDIxMV9DTURfTkVXX1BFRVJfQ0FORElEQVRFLAorICBOTDgwMjExX0NNRF9HRVRfV09XTEFOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9TRVRfV09XTEFOLAotIE5MODAyMTFfQ01EX1NUQVJUX1NDSEVEX1NDQU4sCi0gTkw4MDIxMV9DTURfU1RPUF9TQ0hFRF9TQ0FOLAotIE5MODAyMTFfQ01EX1NDSEVEX1NDQU5fUkVTVUxUUywKKyAgTkw4MDIxMV9DTURfU0VUX1dPV0xBTiwKKyAgTkw4MDIxMV9DTURfU1RBUlRfU0NIRURfU0NBTiwKKyAgTkw4MDIxMV9DTURfU1RPUF9TQ0hFRF9TQ0FOLAorICBOTDgwMjExX0NNRF9TQ0hFRF9TQ0FOX1JFU1VMVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX1NDSEVEX1NDQU5fU1RPUFBFRCwKLSBOTDgwMjExX0NNRF9TRVRfUkVLRVlfT0ZGTE9BRCwKLSBOTDgwMjExX0NNRF9QTUtTQV9DQU5ESURBVEUsCi0gTkw4MDIxMV9DTURfVERMU19PUEVSLAorICBOTDgwMjExX0NNRF9TQ0hFRF9TQ0FOX1NUT1BQRUQsCisgIE5MODAyMTFfQ01EX1NFVF9SRUtFWV9PRkZMT0FELAorICBOTDgwMjExX0NNRF9QTUtTQV9DQU5ESURBVEUsCisgIE5MODAyMTFfQ01EX1RETFNfT1BFUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfVERMU19NR01ULAotIE5MODAyMTFfQ01EX1VORVhQRUNURURfRlJBTUUsCi0gTkw4MDIxMV9DTURfUFJPQkVfQ0xJRU5ULAotIE5MODAyMTFfQ01EX1JFR0lTVEVSX0JFQUNPTlMsCisgIE5MODAyMTFfQ01EX1RETFNfTUdNVCwKKyAgTkw4MDIxMV9DTURfVU5FWFBFQ1RFRF9GUkFNRSwKKyAgTkw4MDIxMV9DTURfUFJPQkVfQ0xJRU5ULAorICBOTDgwMjExX0NNRF9SRUdJU1RFUl9CRUFDT05TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9VTkVYUEVDVEVEXzRBRERSX0ZSQU1FLAotIE5MODAyMTFfQ01EX1NFVF9OT0FDS19NQVAsCi0gTkw4MDIxMV9DTURfQ0hfU1dJVENIX05PVElGWSwKLSBOTDgwMjExX0NNRF9TVEFSVF9QMlBfREVWSUNFLAorICBOTDgwMjExX0NNRF9VTkVYUEVDVEVEXzRBRERSX0ZSQU1FLAorICBOTDgwMjExX0NNRF9TRVRfTk9BQ0tfTUFQLAorICBOTDgwMjExX0NNRF9DSF9TV0lUQ0hfTk9USUZZLAorICBOTDgwMjExX0NNRF9TVEFSVF9QMlBfREVWSUNFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NNRF9TVE9QX1AyUF9ERVZJQ0UsCi0gTkw4MDIxMV9DTURfQ09OTl9GQUlMRUQsCi0gTkw4MDIxMV9DTURfU0VUX01DQVNUX1JBVEUsCi0gTkw4MDIxMV9DTURfU0VUX01BQ19BQ0wsCisgIE5MODAyMTFfQ01EX1NUT1BfUDJQX0RFVklDRSwKKyAgTkw4MDIxMV9DTURfQ09OTl9GQUlMRUQsCisgIE5MODAyMTFfQ01EX1NFVF9NQ0FTVF9SQVRFLAorICBOTDgwMjExX0NNRF9TRVRfTUFDX0FDTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DTURfUkFEQVJfREVURUNULAotIE5MODAyMTFfQ01EX0dFVF9QUk9UT0NPTF9GRUFUVVJFUywKLSBOTDgwMjExX0NNRF9VUERBVEVfRlRfSUVTLAotIE5MODAyMTFfQ01EX0ZUX0VWRU5ULAorICBOTDgwMjExX0NNRF9SQURBUl9ERVRFQ1QsCisgIE5MODAyMTFfQ01EX0dFVF9QUk9UT0NPTF9GRUFUVVJFUywKKyAgTkw4MDIxMV9DTURfVVBEQVRFX0ZUX0lFUywKKyAgTkw4MDIxMV9DTURfRlRfRVZFTlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX0NSSVRfUFJPVE9DT0xfU1RBUlQsCi0gTkw4MDIxMV9DTURfQ1JJVF9QUk9UT0NPTF9TVE9QLAotIE5MODAyMTFfQ01EX0dFVF9DT0FMRVNDRSwKLSBOTDgwMjExX0NNRF9TRVRfQ09BTEVTQ0UsCisgIE5MODAyMTFfQ01EX0NSSVRfUFJPVE9DT0xfU1RBUlQsCisgIE5MODAyMTFfQ01EX0NSSVRfUFJPVE9DT0xfU1RPUCwKKyAgTkw4MDIxMV9DTURfR0VUX0NPQUxFU0NFLAorICBOTDgwMjExX0NNRF9TRVRfQ09BTEVTQ0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX0NIQU5ORUxfU1dJVENILAotIE5MODAyMTFfQ01EX1ZFTkRPUiwKLSBOTDgwMjExX0NNRF9TRVRfUU9TX01BUCwKLSBfX05MODAyMTFfQ01EX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfQ01EX0NIQU5ORUxfU1dJVENILAorICBOTDgwMjExX0NNRF9WRU5ET1IsCisgIE5MODAyMTFfQ01EX1NFVF9RT1NfTUFQLAorICBOTDgwMjExX0NNRF9BRERfVFhfVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ01EX01BWCA9IF9fTkw4MDIxMV9DTURfQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9DTURfREVMX1RYX1RTLAorICBfX05MODAyMTFfQ01EX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfQ01EX01BWCA9IF9fTkw4MDIxMV9DTURfQUZURVJfTEFTVCAtIDEKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOTDgwMjExX0NNRF9TRVRfQlNTIE5MODAyMTFfQ01EX1NFVF9CU1MKICNkZWZpbmUgTkw4MDIxMV9DTURfU0VUX01HTVRfRVhUUkFfSUUgTkw4MDIxMV9DTURfU0VUX01HTVRfRVhUUkFfSUUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5MODAyMTFfQ01EX1JFR19DSEFOR0UgTkw4MDIxMV9DTURfUkVHX0NIQU5HRQogI2RlZmluZSBOTDgwMjExX0NNRF9BVVRIRU5USUNBVEUgTkw4MDIxMV9DTURfQVVUSEVOVElDQVRFCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOTDgwMjExX0NNRF9BU1NPQ0lBVEUgTkw4MDIxMV9DTURfQVNTT0NJQVRFCiAjZGVmaW5lIE5MODAyMTFfQ01EX0RFQVVUSEVOVElDQVRFIE5MODAyMTFfQ01EX0RFQVVUSEVOVElDQVRFCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOTDgwMjExX0NNRF9ESVNBU1NPQ0lBVEUgTkw4MDIxMV9DTURfRElTQVNTT0NJQVRFCiAjZGVmaW5lIE5MODAyMTFfQ01EX1JFR19CRUFDT05fSElOVCBOTDgwMjExX0NNRF9SRUdfQkVBQ09OX0hJTlQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5MODAyMTFfQVRUUl9GRUFUVVJFX0ZMQUdTIE5MODAyMTFfQVRUUl9GRUFUVVJFX0ZMQUdTCiAjZGVmaW5lIE5MODAyMTFfQ01EX0dFVF9NRVNIX1BBUkFNUyBOTDgwMjExX0NNRF9HRVRfTUVTSF9DT05GSUcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5MODAyMTFfQ01EX1NFVF9NRVNIX1BBUkFNUyBOTDgwMjExX0NNRF9TRVRfTUVTSF9DT05GSUcKICNkZWZpbmUgTkw4MDIxMV9NRVNIX1NFVFVQX1ZFTkRPUl9QQVRIX1NFTF9JRSBOTDgwMjExX01FU0hfU0VUVVBfSUUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfYXR0cnMgewotIE5MODAyMTFfQVRUUl9VTlNQRUMsCisgIE5MODAyMTFfQVRUUl9VTlNQRUMsCisgIE5MODAyMTFfQVRUUl9XSVBIWSwKKyAgTkw4MDIxMV9BVFRSX1dJUEhZX05BTUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9XSVBIWSwKLSBOTDgwMjExX0FUVFJfV0lQSFlfTkFNRSwKLSBOTDgwMjExX0FUVFJfSUZJTkRFWCwKLSBOTDgwMjExX0FUVFJfSUZOQU1FLAorICBOTDgwMjExX0FUVFJfSUZJTkRFWCwKKyAgTkw4MDIxMV9BVFRSX0lGTkFNRSwKKyAgTkw4MDIxMV9BVFRSX0lGVFlQRSwKKyAgTkw4MDIxMV9BVFRSX01BQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0lGVFlQRSwKLSBOTDgwMjExX0FUVFJfTUFDLAotIE5MODAyMTFfQVRUUl9LRVlfREFUQSwKLSBOTDgwMjExX0FUVFJfS0VZX0lEWCwKKyAgTkw4MDIxMV9BVFRSX0tFWV9EQVRBLAorICBOTDgwMjExX0FUVFJfS0VZX0lEWCwKKyAgTkw4MDIxMV9BVFRSX0tFWV9DSVBIRVIsCisgIE5MODAyMTFfQVRUUl9LRVlfU0VRLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfS0VZX0NJUEhFUiwKLSBOTDgwMjExX0FUVFJfS0VZX1NFUSwKLSBOTDgwMjExX0FUVFJfS0VZX0RFRkFVTFQsCi0gTkw4MDIxMV9BVFRSX0JFQUNPTl9JTlRFUlZBTCwKKyAgTkw4MDIxMV9BVFRSX0tFWV9ERUZBVUxULAorICBOTDgwMjExX0FUVFJfQkVBQ09OX0lOVEVSVkFMLAorICBOTDgwMjExX0FUVFJfRFRJTV9QRVJJT0QsCisgIE5MODAyMTFfQVRUUl9CRUFDT05fSEVBRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0RUSU1fUEVSSU9ELAotIE5MODAyMTFfQVRUUl9CRUFDT05fSEVBRCwKLSBOTDgwMjExX0FUVFJfQkVBQ09OX1RBSUwsCi0gTkw4MDIxMV9BVFRSX1NUQV9BSUQsCisgIE5MODAyMTFfQVRUUl9CRUFDT05fVEFJTCwKKyAgTkw4MDIxMV9BVFRSX1NUQV9BSUQsCisgIE5MODAyMTFfQVRUUl9TVEFfRkxBR1MsCisgIE5MODAyMTFfQVRUUl9TVEFfTElTVEVOX0lOVEVSVkFMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfU1RBX0ZMQUdTLAotIE5MODAyMTFfQVRUUl9TVEFfTElTVEVOX0lOVEVSVkFMLAotIE5MODAyMTFfQVRUUl9TVEFfU1VQUE9SVEVEX1JBVEVTLAotIE5MODAyMTFfQVRUUl9TVEFfVkxBTiwKKyAgTkw4MDIxMV9BVFRSX1NUQV9TVVBQT1JURURfUkFURVMsCisgIE5MODAyMTFfQVRUUl9TVEFfVkxBTiwKKyAgTkw4MDIxMV9BVFRSX1NUQV9JTkZPLAorICBOTDgwMjExX0FUVFJfV0lQSFlfQkFORFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9TVEFfSU5GTywKLSBOTDgwMjExX0FUVFJfV0lQSFlfQkFORFMsCi0gTkw4MDIxMV9BVFRSX01OVFJfRkxBR1MsCi0gTkw4MDIxMV9BVFRSX01FU0hfSUQsCisgIE5MODAyMTFfQVRUUl9NTlRSX0ZMQUdTLAorICBOTDgwMjExX0FUVFJfTUVTSF9JRCwKKyAgTkw4MDIxMV9BVFRSX1NUQV9QTElOS19BQ1RJT04sCisgIE5MODAyMTFfQVRUUl9NUEFUSF9ORVhUX0hPUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1NUQV9QTElOS19BQ1RJT04sCi0gTkw4MDIxMV9BVFRSX01QQVRIX05FWFRfSE9QLAotIE5MODAyMTFfQVRUUl9NUEFUSF9JTkZPLAotIE5MODAyMTFfQVRUUl9CU1NfQ1RTX1BST1QsCisgIE5MODAyMTFfQVRUUl9NUEFUSF9JTkZPLAorICBOTDgwMjExX0FUVFJfQlNTX0NUU19QUk9ULAorICBOTDgwMjExX0FUVFJfQlNTX1NIT1JUX1BSRUFNQkxFLAorICBOTDgwMjExX0FUVFJfQlNTX1NIT1JUX1NMT1RfVElNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0JTU19TSE9SVF9QUkVBTUJMRSwKLSBOTDgwMjExX0FUVFJfQlNTX1NIT1JUX1NMT1RfVElNRSwKLSBOTDgwMjExX0FUVFJfSFRfQ0FQQUJJTElUWSwKLSBOTDgwMjExX0FUVFJfU1VQUE9SVEVEX0lGVFlQRVMsCisgIE5MODAyMTFfQVRUUl9IVF9DQVBBQklMSVRZLAorICBOTDgwMjExX0FUVFJfU1VQUE9SVEVEX0lGVFlQRVMsCisgIE5MODAyMTFfQVRUUl9SRUdfQUxQSEEyLAorICBOTDgwMjExX0FUVFJfUkVHX1JVTEVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfUkVHX0FMUEhBMiwKLSBOTDgwMjExX0FUVFJfUkVHX1JVTEVTLAotIE5MODAyMTFfQVRUUl9NRVNIX0NPTkZJRywKLSBOTDgwMjExX0FUVFJfQlNTX0JBU0lDX1JBVEVTLAorICBOTDgwMjExX0FUVFJfTUVTSF9DT05GSUcsCisgIE5MODAyMTFfQVRUUl9CU1NfQkFTSUNfUkFURVMsCisgIE5MODAyMTFfQVRUUl9XSVBIWV9UWFFfUEFSQU1TLAorICBOTDgwMjExX0FUVFJfV0lQSFlfRlJFUSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1dJUEhZX1RYUV9QQVJBTVMsCi0gTkw4MDIxMV9BVFRSX1dJUEhZX0ZSRVEsCi0gTkw4MDIxMV9BVFRSX1dJUEhZX0NIQU5ORUxfVFlQRSwKLSBOTDgwMjExX0FUVFJfS0VZX0RFRkFVTFRfTUdNVCwKKyAgTkw4MDIxMV9BVFRSX1dJUEhZX0NIQU5ORUxfVFlQRSwKKyAgTkw4MDIxMV9BVFRSX0tFWV9ERUZBVUxUX01HTVQsCisgIE5MODAyMTFfQVRUUl9NR01UX1NVQlRZUEUsCisgIE5MODAyMTFfQVRUUl9JRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX01HTVRfU1VCVFlQRSwKLSBOTDgwMjExX0FUVFJfSUUsCi0gTkw4MDIxMV9BVFRSX01BWF9OVU1fU0NBTl9TU0lEUywKLSBOTDgwMjExX0FUVFJfU0NBTl9GUkVRVUVOQ0lFUywKKyAgTkw4MDIxMV9BVFRSX01BWF9OVU1fU0NBTl9TU0lEUywKKyAgTkw4MDIxMV9BVFRSX1NDQU5fRlJFUVVFTkNJRVMsCisgIE5MODAyMTFfQVRUUl9TQ0FOX1NTSURTLAorICBOTDgwMjExX0FUVFJfR0VORVJBVElPTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1NDQU5fU1NJRFMsCi0gTkw4MDIxMV9BVFRSX0dFTkVSQVRJT04sCi0gTkw4MDIxMV9BVFRSX0JTUywKLSBOTDgwMjExX0FUVFJfUkVHX0lOSVRJQVRPUiwKKyAgTkw4MDIxMV9BVFRSX0JTUywKKyAgTkw4MDIxMV9BVFRSX1JFR19JTklUSUFUT1IsCisgIE5MODAyMTFfQVRUUl9SRUdfVFlQRSwKKyAgTkw4MDIxMV9BVFRSX1NVUFBPUlRFRF9DT01NQU5EUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1JFR19UWVBFLAotIE5MODAyMTFfQVRUUl9TVVBQT1JURURfQ09NTUFORFMsCi0gTkw4MDIxMV9BVFRSX0ZSQU1FLAotIE5MODAyMTFfQVRUUl9TU0lELAorICBOTDgwMjExX0FUVFJfRlJBTUUsCisgIE5MODAyMTFfQVRUUl9TU0lELAorICBOTDgwMjExX0FUVFJfQVVUSF9UWVBFLAorICBOTDgwMjExX0FUVFJfUkVBU09OX0NPREUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9BVVRIX1RZUEUsCi0gTkw4MDIxMV9BVFRSX1JFQVNPTl9DT0RFLAotIE5MODAyMTFfQVRUUl9LRVlfVFlQRSwKLSBOTDgwMjExX0FUVFJfTUFYX1NDQU5fSUVfTEVOLAorICBOTDgwMjExX0FUVFJfS0VZX1RZUEUsCisgIE5MODAyMTFfQVRUUl9NQVhfU0NBTl9JRV9MRU4sCisgIE5MODAyMTFfQVRUUl9DSVBIRVJfU1VJVEVTLAorICBOTDgwMjExX0FUVFJfRlJFUV9CRUZPUkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9DSVBIRVJfU1VJVEVTLAotIE5MODAyMTFfQVRUUl9GUkVRX0JFRk9SRSwKLSBOTDgwMjExX0FUVFJfRlJFUV9BRlRFUiwKLSBOTDgwMjExX0FUVFJfRlJFUV9GSVhFRCwKKyAgTkw4MDIxMV9BVFRSX0ZSRVFfQUZURVIsCisgIE5MODAyMTFfQVRUUl9GUkVRX0ZJWEVELAorICBOTDgwMjExX0FUVFJfV0lQSFlfUkVUUllfU0hPUlQsCisgIE5MODAyMTFfQVRUUl9XSVBIWV9SRVRSWV9MT05HLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfV0lQSFlfUkVUUllfU0hPUlQsCi0gTkw4MDIxMV9BVFRSX1dJUEhZX1JFVFJZX0xPTkcsCi0gTkw4MDIxMV9BVFRSX1dJUEhZX0ZSQUdfVEhSRVNIT0xELAotIE5MODAyMTFfQVRUUl9XSVBIWV9SVFNfVEhSRVNIT0xELAorICBOTDgwMjExX0FUVFJfV0lQSFlfRlJBR19USFJFU0hPTEQsCisgIE5MODAyMTFfQVRUUl9XSVBIWV9SVFNfVEhSRVNIT0xELAorICBOTDgwMjExX0FUVFJfVElNRURfT1VULAorICBOTDgwMjExX0FUVFJfVVNFX01GUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1RJTUVEX09VVCwKLSBOTDgwMjExX0FUVFJfVVNFX01GUCwKLSBOTDgwMjExX0FUVFJfU1RBX0ZMQUdTMiwKLSBOTDgwMjExX0FUVFJfQ09OVFJPTF9QT1JULAorICBOTDgwMjExX0FUVFJfU1RBX0ZMQUdTMiwKKyAgTkw4MDIxMV9BVFRSX0NPTlRST0xfUE9SVCwKKyAgTkw4MDIxMV9BVFRSX1RFU1REQVRBLAorICBOTDgwMjExX0FUVFJfUFJJVkFDWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1RFU1REQVRBLAotIE5MODAyMTFfQVRUUl9QUklWQUNZLAotIE5MODAyMTFfQVRUUl9ESVNDT05ORUNURURfQllfQVAsCi0gTkw4MDIxMV9BVFRSX1NUQVRVU19DT0RFLAorICBOTDgwMjExX0FUVFJfRElTQ09OTkVDVEVEX0JZX0FQLAorICBOTDgwMjExX0FUVFJfU1RBVFVTX0NPREUsCisgIE5MODAyMTFfQVRUUl9DSVBIRVJfU1VJVEVTX1BBSVJXSVNFLAorICBOTDgwMjExX0FUVFJfQ0lQSEVSX1NVSVRFX0dST1VQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfQ0lQSEVSX1NVSVRFU19QQUlSV0lTRSwKLSBOTDgwMjExX0FUVFJfQ0lQSEVSX1NVSVRFX0dST1VQLAotIE5MODAyMTFfQVRUUl9XUEFfVkVSU0lPTlMsCi0gTkw4MDIxMV9BVFRSX0FLTV9TVUlURVMsCisgIE5MODAyMTFfQVRUUl9XUEFfVkVSU0lPTlMsCisgIE5MODAyMTFfQVRUUl9BS01fU1VJVEVTLAorICBOTDgwMjExX0FUVFJfUkVRX0lFLAorICBOTDgwMjExX0FUVFJfUkVTUF9JRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1JFUV9JRSwKLSBOTDgwMjExX0FUVFJfUkVTUF9JRSwKLSBOTDgwMjExX0FUVFJfUFJFVl9CU1NJRCwKLSBOTDgwMjExX0FUVFJfS0VZLAorICBOTDgwMjExX0FUVFJfUFJFVl9CU1NJRCwKKyAgTkw4MDIxMV9BVFRSX0tFWSwKKyAgTkw4MDIxMV9BVFRSX0tFWVMsCisgIE5MODAyMTFfQVRUUl9QSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9LRVlTLAotIE5MODAyMTFfQVRUUl9QSUQsCi0gTkw4MDIxMV9BVFRSXzRBRERSLAotIE5MODAyMTFfQVRUUl9TVVJWRVlfSU5GTywKKyAgTkw4MDIxMV9BVFRSXzRBRERSLAorICBOTDgwMjExX0FUVFJfU1VSVkVZX0lORk8sCisgIE5MODAyMTFfQVRUUl9QTUtJRCwKKyAgTkw4MDIxMV9BVFRSX01BWF9OVU1fUE1LSURTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfUE1LSUQsCi0gTkw4MDIxMV9BVFRSX01BWF9OVU1fUE1LSURTLAotIE5MODAyMTFfQVRUUl9EVVJBVElPTiwKLSBOTDgwMjExX0FUVFJfQ09PS0lFLAorICBOTDgwMjExX0FUVFJfRFVSQVRJT04sCisgIE5MODAyMTFfQVRUUl9DT09LSUUsCisgIE5MODAyMTFfQVRUUl9XSVBIWV9DT1ZFUkFHRV9DTEFTUywKKyAgTkw4MDIxMV9BVFRSX1RYX1JBVEVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfV0lQSFlfQ09WRVJBR0VfQ0xBU1MsCi0gTkw4MDIxMV9BVFRSX1RYX1JBVEVTLAotIE5MODAyMTFfQVRUUl9GUkFNRV9NQVRDSCwKLSBOTDgwMjExX0FUVFJfQUNLLAorICBOTDgwMjExX0FUVFJfRlJBTUVfTUFUQ0gsCisgIE5MODAyMTFfQVRUUl9BQ0ssCisgIE5MODAyMTFfQVRUUl9QU19TVEFURSwKKyAgTkw4MDIxMV9BVFRSX0NRTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1BTX1NUQVRFLAotIE5MODAyMTFfQVRUUl9DUU0sCi0gTkw4MDIxMV9BVFRSX0xPQ0FMX1NUQVRFX0NIQU5HRSwKLSBOTDgwMjExX0FUVFJfQVBfSVNPTEFURSwKKyAgTkw4MDIxMV9BVFRSX0xPQ0FMX1NUQVRFX0NIQU5HRSwKKyAgTkw4MDIxMV9BVFRSX0FQX0lTT0xBVEUsCisgIE5MODAyMTFfQVRUUl9XSVBIWV9UWF9QT1dFUl9TRVRUSU5HLAorICBOTDgwMjExX0FUVFJfV0lQSFlfVFhfUE9XRVJfTEVWRUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9XSVBIWV9UWF9QT1dFUl9TRVRUSU5HLAotIE5MODAyMTFfQVRUUl9XSVBIWV9UWF9QT1dFUl9MRVZFTCwKLSBOTDgwMjExX0FUVFJfVFhfRlJBTUVfVFlQRVMsCi0gTkw4MDIxMV9BVFRSX1JYX0ZSQU1FX1RZUEVTLAorICBOTDgwMjExX0FUVFJfVFhfRlJBTUVfVFlQRVMsCisgIE5MODAyMTFfQVRUUl9SWF9GUkFNRV9UWVBFUywKKyAgTkw4MDIxMV9BVFRSX0ZSQU1FX1RZUEUsCisgIE5MODAyMTFfQVRUUl9DT05UUk9MX1BPUlRfRVRIRVJUWVBFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfRlJBTUVfVFlQRSwKLSBOTDgwMjExX0FUVFJfQ09OVFJPTF9QT1JUX0VUSEVSVFlQRSwKLSBOTDgwMjExX0FUVFJfQ09OVFJPTF9QT1JUX05PX0VOQ1JZUFQsCi0gTkw4MDIxMV9BVFRSX1NVUFBPUlRfSUJTU19SU04sCisgIE5MODAyMTFfQVRUUl9DT05UUk9MX1BPUlRfTk9fRU5DUllQVCwKKyAgTkw4MDIxMV9BVFRSX1NVUFBPUlRfSUJTU19SU04sCisgIE5MODAyMTFfQVRUUl9XSVBIWV9BTlRFTk5BX1RYLAorICBOTDgwMjExX0FUVFJfV0lQSFlfQU5URU5OQV9SWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1dJUEhZX0FOVEVOTkFfVFgsCi0gTkw4MDIxMV9BVFRSX1dJUEhZX0FOVEVOTkFfUlgsCi0gTkw4MDIxMV9BVFRSX01DQVNUX1JBVEUsCi0gTkw4MDIxMV9BVFRSX09GRkNIQU5ORUxfVFhfT0ssCisgIE5MODAyMTFfQVRUUl9NQ0FTVF9SQVRFLAorICBOTDgwMjExX0FUVFJfT0ZGQ0hBTk5FTF9UWF9PSywKKyAgTkw4MDIxMV9BVFRSX0JTU19IVF9PUE1PREUsCisgIE5MODAyMTFfQVRUUl9LRVlfREVGQVVMVF9UWVBFUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0JTU19IVF9PUE1PREUsCi0gTkw4MDIxMV9BVFRSX0tFWV9ERUZBVUxUX1RZUEVTLAotIE5MODAyMTFfQVRUUl9NQVhfUkVNQUlOX09OX0NIQU5ORUxfRFVSQVRJT04sCi0gTkw4MDIxMV9BVFRSX01FU0hfU0VUVVAsCisgIE5MODAyMTFfQVRUUl9NQVhfUkVNQUlOX09OX0NIQU5ORUxfRFVSQVRJT04sCisgIE5MODAyMTFfQVRUUl9NRVNIX1NFVFVQLAorICBOTDgwMjExX0FUVFJfV0lQSFlfQU5URU5OQV9BVkFJTF9UWCwKKyAgTkw4MDIxMV9BVFRSX1dJUEhZX0FOVEVOTkFfQVZBSUxfUlgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9XSVBIWV9BTlRFTk5BX0FWQUlMX1RYLAotIE5MODAyMTFfQVRUUl9XSVBIWV9BTlRFTk5BX0FWQUlMX1JYLAotIE5MODAyMTFfQVRUUl9TVVBQT1JUX01FU0hfQVVUSCwKLSBOTDgwMjExX0FUVFJfU1RBX1BMSU5LX1NUQVRFLAorICBOTDgwMjExX0FUVFJfU1VQUE9SVF9NRVNIX0FVVEgsCisgIE5MODAyMTFfQVRUUl9TVEFfUExJTktfU1RBVEUsCisgIE5MODAyMTFfQVRUUl9XT1dMQU5fVFJJR0dFUlMsCisgIE5MODAyMTFfQVRUUl9XT1dMQU5fVFJJR0dFUlNfU1VQUE9SVEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfV09XTEFOX1RSSUdHRVJTLAotIE5MODAyMTFfQVRUUl9XT1dMQU5fVFJJR0dFUlNfU1VQUE9SVEVELAotIE5MODAyMTFfQVRUUl9TQ0hFRF9TQ0FOX0lOVEVSVkFMLAotIE5MODAyMTFfQVRUUl9JTlRFUkZBQ0VfQ09NQklOQVRJT05TLAorICBOTDgwMjExX0FUVFJfU0NIRURfU0NBTl9JTlRFUlZBTCwKKyAgTkw4MDIxMV9BVFRSX0lOVEVSRkFDRV9DT01CSU5BVElPTlMsCisgIE5MODAyMTFfQVRUUl9TT0ZUV0FSRV9JRlRZUEVTLAorICBOTDgwMjExX0FUVFJfUkVLRVlfREFUQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1NPRlRXQVJFX0lGVFlQRVMsCi0gTkw4MDIxMV9BVFRSX1JFS0VZX0RBVEEsCi0gTkw4MDIxMV9BVFRSX01BWF9OVU1fU0NIRURfU0NBTl9TU0lEUywKLSBOTDgwMjExX0FUVFJfTUFYX1NDSEVEX1NDQU5fSUVfTEVOLAorICBOTDgwMjExX0FUVFJfTUFYX05VTV9TQ0hFRF9TQ0FOX1NTSURTLAorICBOTDgwMjExX0FUVFJfTUFYX1NDSEVEX1NDQU5fSUVfTEVOLAorICBOTDgwMjExX0FUVFJfU0NBTl9TVVBQX1JBVEVTLAorICBOTDgwMjExX0FUVFJfSElEREVOX1NTSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9TQ0FOX1NVUFBfUkFURVMsCi0gTkw4MDIxMV9BVFRSX0hJRERFTl9TU0lELAotIE5MODAyMTFfQVRUUl9JRV9QUk9CRV9SRVNQLAotIE5MODAyMTFfQVRUUl9JRV9BU1NPQ19SRVNQLAorICBOTDgwMjExX0FUVFJfSUVfUFJPQkVfUkVTUCwKKyAgTkw4MDIxMV9BVFRSX0lFX0FTU09DX1JFU1AsCisgIE5MODAyMTFfQVRUUl9TVEFfV01FLAorICBOTDgwMjExX0FUVFJfU1VQUE9SVF9BUF9VQVBTRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1NUQV9XTUUsCi0gTkw4MDIxMV9BVFRSX1NVUFBPUlRfQVBfVUFQU0QsCi0gTkw4MDIxMV9BVFRSX1JPQU1fU1VQUE9SVCwKLSBOTDgwMjExX0FUVFJfU0NIRURfU0NBTl9NQVRDSCwKKyAgTkw4MDIxMV9BVFRSX1JPQU1fU1VQUE9SVCwKKyAgTkw4MDIxMV9BVFRSX1NDSEVEX1NDQU5fTUFUQ0gsCisgIE5MODAyMTFfQVRUUl9NQVhfTUFUQ0hfU0VUUywKKyAgTkw4MDIxMV9BVFRSX1BNS1NBX0NBTkRJREFURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX01BWF9NQVRDSF9TRVRTLAotIE5MODAyMTFfQVRUUl9QTUtTQV9DQU5ESURBVEUsCi0gTkw4MDIxMV9BVFRSX1RYX05PX0NDS19SQVRFLAotIE5MODAyMTFfQVRUUl9URExTX0FDVElPTiwKKyAgTkw4MDIxMV9BVFRSX1RYX05PX0NDS19SQVRFLAorICBOTDgwMjExX0FUVFJfVERMU19BQ1RJT04sCisgIE5MODAyMTFfQVRUUl9URExTX0RJQUxPR19UT0tFTiwKKyAgTkw4MDIxMV9BVFRSX1RETFNfT1BFUkFUSU9OLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfVERMU19ESUFMT0dfVE9LRU4sCi0gTkw4MDIxMV9BVFRSX1RETFNfT1BFUkFUSU9OLAotIE5MODAyMTFfQVRUUl9URExTX1NVUFBPUlQsCi0gTkw4MDIxMV9BVFRSX1RETFNfRVhURVJOQUxfU0VUVVAsCisgIE5MODAyMTFfQVRUUl9URExTX1NVUFBPUlQsCisgIE5MODAyMTFfQVRUUl9URExTX0VYVEVSTkFMX1NFVFVQLAorICBOTDgwMjExX0FUVFJfREVWSUNFX0FQX1NNRSwKKyAgTkw4MDIxMV9BVFRSX0RPTlRfV0FJVF9GT1JfQUNLLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfREVWSUNFX0FQX1NNRSwKLSBOTDgwMjExX0FUVFJfRE9OVF9XQUlUX0ZPUl9BQ0ssCi0gTkw4MDIxMV9BVFRSX0ZFQVRVUkVfRkxBR1MsCi0gTkw4MDIxMV9BVFRSX1BST0JFX1JFU1BfT0ZGTE9BRCwKKyAgTkw4MDIxMV9BVFRSX0ZFQVRVUkVfRkxBR1MsCisgIE5MODAyMTFfQVRUUl9QUk9CRV9SRVNQX09GRkxPQUQsCisgIE5MODAyMTFfQVRUUl9QUk9CRV9SRVNQLAorICBOTDgwMjExX0FUVFJfREZTX1JFR0lPTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1BST0JFX1JFU1AsCi0gTkw4MDIxMV9BVFRSX0RGU19SRUdJT04sCi0gTkw4MDIxMV9BVFRSX0RJU0FCTEVfSFQsCi0gTkw4MDIxMV9BVFRSX0hUX0NBUEFCSUxJVFlfTUFTSywKKyAgTkw4MDIxMV9BVFRSX0RJU0FCTEVfSFQsCisgIE5MODAyMTFfQVRUUl9IVF9DQVBBQklMSVRZX01BU0ssCisgIE5MODAyMTFfQVRUUl9OT0FDS19NQVAsCisgIE5MODAyMTFfQVRUUl9JTkFDVElWSVRZX1RJTUVPVVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9OT0FDS19NQVAsCi0gTkw4MDIxMV9BVFRSX0lOQUNUSVZJVFlfVElNRU9VVCwKLSBOTDgwMjExX0FUVFJfUlhfU0lHTkFMX0RCTSwKLSBOTDgwMjExX0FUVFJfQkdfU0NBTl9QRVJJT0QsCisgIE5MODAyMTFfQVRUUl9SWF9TSUdOQUxfREJNLAorICBOTDgwMjExX0FUVFJfQkdfU0NBTl9QRVJJT0QsCisgIE5MODAyMTFfQVRUUl9XREVWLAorICBOTDgwMjExX0FUVFJfVVNFUl9SRUdfSElOVF9UWVBFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfV0RFViwKLSBOTDgwMjExX0FUVFJfVVNFUl9SRUdfSElOVF9UWVBFLAotIE5MODAyMTFfQVRUUl9DT05OX0ZBSUxFRF9SRUFTT04sCi0gTkw4MDIxMV9BVFRSX1NBRV9EQVRBLAorICBOTDgwMjExX0FUVFJfQ09OTl9GQUlMRURfUkVBU09OLAorICBOTDgwMjExX0FUVFJfU0FFX0RBVEEsCisgIE5MODAyMTFfQVRUUl9WSFRfQ0FQQUJJTElUWSwKKyAgTkw4MDIxMV9BVFRSX1NDQU5fRkxBR1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9WSFRfQ0FQQUJJTElUWSwKLSBOTDgwMjExX0FUVFJfU0NBTl9GTEFHUywKLSBOTDgwMjExX0FUVFJfQ0hBTk5FTF9XSURUSCwKLSBOTDgwMjExX0FUVFJfQ0VOVEVSX0ZSRVExLAorICBOTDgwMjExX0FUVFJfQ0hBTk5FTF9XSURUSCwKKyAgTkw4MDIxMV9BVFRSX0NFTlRFUl9GUkVRMSwKKyAgTkw4MDIxMV9BVFRSX0NFTlRFUl9GUkVRMiwKKyAgTkw4MDIxMV9BVFRSX1AyUF9DVFdJTkRPVywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0NFTlRFUl9GUkVRMiwKLSBOTDgwMjExX0FUVFJfUDJQX0NUV0lORE9XLAotIE5MODAyMTFfQVRUUl9QMlBfT1BQUFMsCi0gTkw4MDIxMV9BVFRSX0xPQ0FMX01FU0hfUE9XRVJfTU9ERSwKKyAgTkw4MDIxMV9BVFRSX1AyUF9PUFBQUywKKyAgTkw4MDIxMV9BVFRSX0xPQ0FMX01FU0hfUE9XRVJfTU9ERSwKKyAgTkw4MDIxMV9BVFRSX0FDTF9QT0xJQ1ksCisgIE5MODAyMTFfQVRUUl9NQUNfQUREUlMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9BQ0xfUE9MSUNZLAotIE5MODAyMTFfQVRUUl9NQUNfQUREUlMsCi0gTkw4MDIxMV9BVFRSX01BQ19BQ0xfTUFYLAotIE5MODAyMTFfQVRUUl9SQURBUl9FVkVOVCwKKyAgTkw4MDIxMV9BVFRSX01BQ19BQ0xfTUFYLAorICBOTDgwMjExX0FUVFJfUkFEQVJfRVZFTlQsCisgIE5MODAyMTFfQVRUUl9FWFRfQ0FQQSwKKyAgTkw4MDIxMV9BVFRSX0VYVF9DQVBBX01BU0ssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9FWFRfQ0FQQSwKLSBOTDgwMjExX0FUVFJfRVhUX0NBUEFfTUFTSywKLSBOTDgwMjExX0FUVFJfU1RBX0NBUEFCSUxJVFksCi0gTkw4MDIxMV9BVFRSX1NUQV9FWFRfQ0FQQUJJTElUWSwKKyAgTkw4MDIxMV9BVFRSX1NUQV9DQVBBQklMSVRZLAorICBOTDgwMjExX0FUVFJfU1RBX0VYVF9DQVBBQklMSVRZLAorICBOTDgwMjExX0FUVFJfUFJPVE9DT0xfRkVBVFVSRVMsCisgIE5MODAyMTFfQVRUUl9TUExJVF9XSVBIWV9EVU1QLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfUFJPVE9DT0xfRkVBVFVSRVMsCi0gTkw4MDIxMV9BVFRSX1NQTElUX1dJUEhZX0RVTVAsCi0gTkw4MDIxMV9BVFRSX0RJU0FCTEVfVkhULAotIE5MODAyMTFfQVRUUl9WSFRfQ0FQQUJJTElUWV9NQVNLLAorICBOTDgwMjExX0FUVFJfRElTQUJMRV9WSFQsCisgIE5MODAyMTFfQVRUUl9WSFRfQ0FQQUJJTElUWV9NQVNLLAorICBOTDgwMjExX0FUVFJfTURJRCwKKyAgTkw4MDIxMV9BVFRSX0lFX1JJQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX01ESUQsCi0gTkw4MDIxMV9BVFRSX0lFX1JJQywKLSBOTDgwMjExX0FUVFJfQ1JJVF9QUk9UX0lELAotIE5MODAyMTFfQVRUUl9NQVhfQ1JJVF9QUk9UX0RVUkFUSU9OLAorICBOTDgwMjExX0FUVFJfQ1JJVF9QUk9UX0lELAorICBOTDgwMjExX0FUVFJfTUFYX0NSSVRfUFJPVF9EVVJBVElPTiwKKyAgTkw4MDIxMV9BVFRSX1BFRVJfQUlELAorICBOTDgwMjExX0FUVFJfQ09BTEVTQ0VfUlVMRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX1BFRVJfQUlELAotIE5MODAyMTFfQVRUUl9DT0FMRVNDRV9SVUxFLAotIE5MODAyMTFfQVRUUl9DSF9TV0lUQ0hfQ09VTlQsCi0gTkw4MDIxMV9BVFRSX0NIX1NXSVRDSF9CTE9DS19UWCwKKyAgTkw4MDIxMV9BVFRSX0NIX1NXSVRDSF9DT1VOVCwKKyAgTkw4MDIxMV9BVFRSX0NIX1NXSVRDSF9CTE9DS19UWCwKKyAgTkw4MDIxMV9BVFRSX0NTQV9JRVMsCisgIE5MODAyMTFfQVRUUl9DU0FfQ19PRkZfQkVBQ09OLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfQ1NBX0lFUywKLSBOTDgwMjExX0FUVFJfQ1NBX0NfT0ZGX0JFQUNPTiwKLSBOTDgwMjExX0FUVFJfQ1NBX0NfT0ZGX1BSRVNQLAotIE5MODAyMTFfQVRUUl9SWE1HTVRfRkxBR1MsCisgIE5MODAyMTFfQVRUUl9DU0FfQ19PRkZfUFJFU1AsCisgIE5MODAyMTFfQVRUUl9SWE1HTVRfRkxBR1MsCisgIE5MODAyMTFfQVRUUl9TVEFfU1VQUE9SVEVEX0NIQU5ORUxTLAorICBOTDgwMjExX0FUVFJfU1RBX1NVUFBPUlRFRF9PUEVSX0NMQVNTRVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9TVEFfU1VQUE9SVEVEX0NIQU5ORUxTLAotIE5MODAyMTFfQVRUUl9TVEFfU1VQUE9SVEVEX09QRVJfQ0xBU1NFUywKLSBOTDgwMjExX0FUVFJfSEFORExFX0RGUywKLSBOTDgwMjExX0FUVFJfU1VQUE9SVF81X01IWiwKKyAgTkw4MDIxMV9BVFRSX0hBTkRMRV9ERlMsCisgIE5MODAyMTFfQVRUUl9TVVBQT1JUXzVfTUhaLAorICBOTDgwMjExX0FUVFJfU1VQUE9SVF8xMF9NSFosCisgIE5MODAyMTFfQVRUUl9PUE1PREVfTk9USUYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9TVVBQT1JUXzEwX01IWiwKLSBOTDgwMjExX0FUVFJfT1BNT0RFX05PVElGLAotIE5MODAyMTFfQVRUUl9WRU5ET1JfSUQsCi0gTkw4MDIxMV9BVFRSX1ZFTkRPUl9TVUJDTUQsCisgIE5MODAyMTFfQVRUUl9WRU5ET1JfSUQsCisgIE5MODAyMTFfQVRUUl9WRU5ET1JfU1VCQ01ELAorICBOTDgwMjExX0FUVFJfVkVORE9SX0RBVEEsCisgIE5MODAyMTFfQVRUUl9WRU5ET1JfRVZFTlRTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfVkVORE9SX0RBVEEsCi0gTkw4MDIxMV9BVFRSX1ZFTkRPUl9FVkVOVFMsCi0gTkw4MDIxMV9BVFRSX1FPU19NQVAsCi0gX19OTDgwMjExX0FUVFJfQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9BVFRSX1FPU19NQVAsCisgIE5MODAyMTFfQVRUUl9NQUNfSElOVCwKKyAgTkw4MDIxMV9BVFRSX1dJUEhZX0ZSRVFfSElOVCwKKyAgTkw4MDIxMV9BVFRSX01BWF9BUF9BU1NPQ19TVEEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVRUUl9NQVggPSBfX05MODAyMTFfQVRUUl9BRlRFUl9MQVNUIC0gMQorICBOTDgwMjExX0FUVFJfVERMU19QRUVSX0NBUEFCSUxJVFksCisgIE5MODAyMTFfQVRUUl9JRkFDRV9TT0NLRVRfT1dORVIsCisgIE5MODAyMTFfQVRUUl9DU0FfQ19PRkZTRVRTX1RYLAorICBOTDgwMjExX0FUVFJfTUFYX0NTQV9DT1VOVEVSUywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfQVRUUl9URExTX0lOSVRJQVRPUiwKKyAgTkw4MDIxMV9BVFRSX1VTRV9SUk0sCisgIE5MODAyMTFfQVRUUl9XSVBIWV9EWU5fQUNLLAorICBOTDgwMjExX0FUVFJfVFNJRCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfQVRUUl9VU0VSX1BSSU8sCisgIE5MODAyMTFfQVRUUl9BRE1JVFRFRF9USU1FLAorICBOTDgwMjExX0FUVFJfU01QU19NT0RFLAorICBfX05MODAyMTFfQVRUUl9BRlRFUl9MQVNULAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkw4MDIxMV9BVFRSX01BWCA9IF9fTkw4MDIxMV9BVFRSX0FGVEVSX0xBU1QgLSAxCiB9OwogI2RlZmluZSBOTDgwMjExX0FUVFJfU0NBTl9HRU5FUkFUSU9OIE5MODAyMTFfQVRUUl9HRU5FUkFUSU9OCiAjZGVmaW5lIE5MODAyMTFfQVRUUl9NRVNIX1BBUkFNUyBOTDgwMjExX0FUVFJfTUVTSF9DT05GSUcKQEAgLTQ3NiwzODMgKzQ5NiwzOTMgQEAKICNkZWZpbmUgTkw4MDIxMV9NQVhfTlJfQUtNX1NVSVRFUyAyCiAjZGVmaW5lIE5MODAyMTFfTUlOX1JFTUFJTl9PTl9DSEFOTkVMX1RJTUUgMTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE5MODAyMTFfU0NBTl9SU1NJX1RIT0xEX09GRiAtMzAwCisjZGVmaW5lIE5MODAyMTFfU0NBTl9SU1NJX1RIT0xEX09GRiAtIDMwMAogI2RlZmluZSBOTDgwMjExX0NRTV9UWEVfTUFYX0lOVFZMIDE4MDAKIGVudW0gbmw4MDIxMV9pZnR5cGUgewotIE5MODAyMTFfSUZUWVBFX1VOU1BFQ0lGSUVELAorICBOTDgwMjExX0lGVFlQRV9VTlNQRUNJRklFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9JRlRZUEVfQURIT0MsCi0gTkw4MDIxMV9JRlRZUEVfU1RBVElPTiwKLSBOTDgwMjExX0lGVFlQRV9BUCwKLSBOTDgwMjExX0lGVFlQRV9BUF9WTEFOLAorICBOTDgwMjExX0lGVFlQRV9BREhPQywKKyAgTkw4MDIxMV9JRlRZUEVfU1RBVElPTiwKKyAgTkw4MDIxMV9JRlRZUEVfQVAsCisgIE5MODAyMTFfSUZUWVBFX0FQX1ZMQU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfSUZUWVBFX1dEUywKLSBOTDgwMjExX0lGVFlQRV9NT05JVE9SLAotIE5MODAyMTFfSUZUWVBFX01FU0hfUE9JTlQsCi0gTkw4MDIxMV9JRlRZUEVfUDJQX0NMSUVOVCwKKyAgTkw4MDIxMV9JRlRZUEVfV0RTLAorICBOTDgwMjExX0lGVFlQRV9NT05JVE9SLAorICBOTDgwMjExX0lGVFlQRV9NRVNIX1BPSU5ULAorICBOTDgwMjExX0lGVFlQRV9QMlBfQ0xJRU5ULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0lGVFlQRV9QMlBfR08sCi0gTkw4MDIxMV9JRlRZUEVfUDJQX0RFVklDRSwKLSBOVU1fTkw4MDIxMV9JRlRZUEVTLAotIE5MODAyMTFfSUZUWVBFX01BWCA9IE5VTV9OTDgwMjExX0lGVFlQRVMgLSAxCisgIE5MODAyMTFfSUZUWVBFX1AyUF9HTywKKyAgTkw4MDIxMV9JRlRZUEVfUDJQX0RFVklDRSwKKyAgTlVNX05MODAyMTFfSUZUWVBFUywKKyAgTkw4MDIxMV9JRlRZUEVfTUFYID0gTlVNX05MODAyMTFfSUZUWVBFUyAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBubDgwMjExX3N0YV9mbGFncyB7Ci0gX19OTDgwMjExX1NUQV9GTEFHX0lOVkFMSUQsCi0gTkw4MDIxMV9TVEFfRkxBR19BVVRIT1JJWkVELAorICBfX05MODAyMTFfU1RBX0ZMQUdfSU5WQUxJRCwKKyAgTkw4MDIxMV9TVEFfRkxBR19BVVRIT1JJWkVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1NUQV9GTEFHX1NIT1JUX1BSRUFNQkxFLAotIE5MODAyMTFfU1RBX0ZMQUdfV01FLAotIE5MODAyMTFfU1RBX0ZMQUdfTUZQLAotIE5MODAyMTFfU1RBX0ZMQUdfQVVUSEVOVElDQVRFRCwKKyAgTkw4MDIxMV9TVEFfRkxBR19TSE9SVF9QUkVBTUJMRSwKKyAgTkw4MDIxMV9TVEFfRkxBR19XTUUsCisgIE5MODAyMTFfU1RBX0ZMQUdfTUZQLAorICBOTDgwMjExX1NUQV9GTEFHX0FVVEhFTlRJQ0FURUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfU1RBX0ZMQUdfVERMU19QRUVSLAotIE5MODAyMTFfU1RBX0ZMQUdfQVNTT0NJQVRFRCwKLSBfX05MODAyMTFfU1RBX0ZMQUdfQUZURVJfTEFTVCwKLSBOTDgwMjExX1NUQV9GTEFHX01BWCA9IF9fTkw4MDIxMV9TVEFfRkxBR19BRlRFUl9MQVNUIC0gMQorICBOTDgwMjExX1NUQV9GTEFHX1RETFNfUEVFUiwKKyAgTkw4MDIxMV9TVEFfRkxBR19BU1NPQ0lBVEVELAorICBfX05MODAyMTFfU1RBX0ZMQUdfQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9TVEFfRkxBR19NQVggPSBfX05MODAyMTFfU1RBX0ZMQUdfQUZURVJfTEFTVCAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBOTDgwMjExX1NUQV9GTEFHX01BWF9PTERfQVBJIE5MODAyMTFfU1RBX0ZMQUdfVERMU19QRUVSCiBzdHJ1Y3Qgbmw4MDIxMV9zdGFfZmxhZ191cGRhdGUgewotIF9fdTMyIG1hc2s7CisgIF9fdTMyIG1hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNldDsKKyAgX191MzIgc2V0OwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIGVudW0gbmw4MDIxMV9yYXRlX2luZm8gewotIF9fTkw4MDIxMV9SQVRFX0lORk9fSU5WQUxJRCwKKyAgX19OTDgwMjExX1JBVEVfSU5GT19JTlZBTElELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1JBVEVfSU5GT19CSVRSQVRFLAotIE5MODAyMTFfUkFURV9JTkZPX01DUywKLSBOTDgwMjExX1JBVEVfSU5GT180MF9NSFpfV0lEVEgsCi0gTkw4MDIxMV9SQVRFX0lORk9fU0hPUlRfR0ksCisgIE5MODAyMTFfUkFURV9JTkZPX0JJVFJBVEUsCisgIE5MODAyMTFfUkFURV9JTkZPX01DUywKKyAgTkw4MDIxMV9SQVRFX0lORk9fNDBfTUhaX1dJRFRILAorICBOTDgwMjExX1JBVEVfSU5GT19TSE9SVF9HSSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9SQVRFX0lORk9fQklUUkFURTMyLAotIE5MODAyMTFfUkFURV9JTkZPX1ZIVF9NQ1MsCi0gTkw4MDIxMV9SQVRFX0lORk9fVkhUX05TUywKLSBOTDgwMjExX1JBVEVfSU5GT184MF9NSFpfV0lEVEgsCisgIE5MODAyMTFfUkFURV9JTkZPX0JJVFJBVEUzMiwKKyAgTkw4MDIxMV9SQVRFX0lORk9fVkhUX01DUywKKyAgTkw4MDIxMV9SQVRFX0lORk9fVkhUX05TUywKKyAgTkw4MDIxMV9SQVRFX0lORk9fODBfTUhaX1dJRFRILAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1JBVEVfSU5GT184MFA4MF9NSFpfV0lEVEgsCi0gTkw4MDIxMV9SQVRFX0lORk9fMTYwX01IWl9XSURUSCwKLSBfX05MODAyMTFfUkFURV9JTkZPX0FGVEVSX0xBU1QsCi0gTkw4MDIxMV9SQVRFX0lORk9fTUFYID0gX19OTDgwMjExX1JBVEVfSU5GT19BRlRFUl9MQVNUIC0gMQorICBOTDgwMjExX1JBVEVfSU5GT184MFA4MF9NSFpfV0lEVEgsCisgIE5MODAyMTFfUkFURV9JTkZPXzE2MF9NSFpfV0lEVEgsCisgIF9fTkw4MDIxMV9SQVRFX0lORk9fQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9SQVRFX0lORk9fTUFYID0gX19OTDgwMjExX1JBVEVfSU5GT19BRlRFUl9MQVNUIC0gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG5sODAyMTFfc3RhX2Jzc19wYXJhbSB7Ci0gX19OTDgwMjExX1NUQV9CU1NfUEFSQU1fSU5WQUxJRCwKLSBOTDgwMjExX1NUQV9CU1NfUEFSQU1fQ1RTX1BST1QsCisgIF9fTkw4MDIxMV9TVEFfQlNTX1BBUkFNX0lOVkFMSUQsCisgIE5MODAyMTFfU1RBX0JTU19QQVJBTV9DVFNfUFJPVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9TVEFfQlNTX1BBUkFNX1NIT1JUX1BSRUFNQkxFLAotIE5MODAyMTFfU1RBX0JTU19QQVJBTV9TSE9SVF9TTE9UX1RJTUUsCi0gTkw4MDIxMV9TVEFfQlNTX1BBUkFNX0RUSU1fUEVSSU9ELAotIE5MODAyMTFfU1RBX0JTU19QQVJBTV9CRUFDT05fSU5URVJWQUwsCisgIE5MODAyMTFfU1RBX0JTU19QQVJBTV9TSE9SVF9QUkVBTUJMRSwKKyAgTkw4MDIxMV9TVEFfQlNTX1BBUkFNX1NIT1JUX1NMT1RfVElNRSwKKyAgTkw4MDIxMV9TVEFfQlNTX1BBUkFNX0RUSU1fUEVSSU9ELAorICBOTDgwMjExX1NUQV9CU1NfUEFSQU1fQkVBQ09OX0lOVEVSVkFMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05MODAyMTFfU1RBX0JTU19QQVJBTV9BRlRFUl9MQVNULAotIE5MODAyMTFfU1RBX0JTU19QQVJBTV9NQVggPSBfX05MODAyMTFfU1RBX0JTU19QQVJBTV9BRlRFUl9MQVNUIC0gMQorICBfX05MODAyMTFfU1RBX0JTU19QQVJBTV9BRlRFUl9MQVNULAorICBOTDgwMjExX1NUQV9CU1NfUEFSQU1fTUFYID0gX19OTDgwMjExX1NUQV9CU1NfUEFSQU1fQUZURVJfTEFTVCAtIDEKIH07CiBlbnVtIG5sODAyMTFfc3RhX2luZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05MODAyMTFfU1RBX0lORk9fSU5WQUxJRCwKLSBOTDgwMjExX1NUQV9JTkZPX0lOQUNUSVZFX1RJTUUsCi0gTkw4MDIxMV9TVEFfSU5GT19SWF9CWVRFUywKLSBOTDgwMjExX1NUQV9JTkZPX1RYX0JZVEVTLAorICBfX05MODAyMTFfU1RBX0lORk9fSU5WQUxJRCwKKyAgTkw4MDIxMV9TVEFfSU5GT19JTkFDVElWRV9USU1FLAorICBOTDgwMjExX1NUQV9JTkZPX1JYX0JZVEVTLAorICBOTDgwMjExX1NUQV9JTkZPX1RYX0JZVEVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1NUQV9JTkZPX0xMSUQsCi0gTkw4MDIxMV9TVEFfSU5GT19QTElELAotIE5MODAyMTFfU1RBX0lORk9fUExJTktfU1RBVEUsCi0gTkw4MDIxMV9TVEFfSU5GT19TSUdOQUwsCisgIE5MODAyMTFfU1RBX0lORk9fTExJRCwKKyAgTkw4MDIxMV9TVEFfSU5GT19QTElELAorICBOTDgwMjExX1NUQV9JTkZPX1BMSU5LX1NUQVRFLAorICBOTDgwMjExX1NUQV9JTkZPX1NJR05BTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9TVEFfSU5GT19UWF9CSVRSQVRFLAotIE5MODAyMTFfU1RBX0lORk9fUlhfUEFDS0VUUywKLSBOTDgwMjExX1NUQV9JTkZPX1RYX1BBQ0tFVFMsCi0gTkw4MDIxMV9TVEFfSU5GT19UWF9SRVRSSUVTLAorICBOTDgwMjExX1NUQV9JTkZPX1RYX0JJVFJBVEUsCisgIE5MODAyMTFfU1RBX0lORk9fUlhfUEFDS0VUUywKKyAgTkw4MDIxMV9TVEFfSU5GT19UWF9QQUNLRVRTLAorICBOTDgwMjExX1NUQV9JTkZPX1RYX1JFVFJJRVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfU1RBX0lORk9fVFhfRkFJTEVELAotIE5MODAyMTFfU1RBX0lORk9fU0lHTkFMX0FWRywKLSBOTDgwMjExX1NUQV9JTkZPX1JYX0JJVFJBVEUsCi0gTkw4MDIxMV9TVEFfSU5GT19CU1NfUEFSQU0sCisgIE5MODAyMTFfU1RBX0lORk9fVFhfRkFJTEVELAorICBOTDgwMjExX1NUQV9JTkZPX1NJR05BTF9BVkcsCisgIE5MODAyMTFfU1RBX0lORk9fUlhfQklUUkFURSwKKyAgTkw4MDIxMV9TVEFfSU5GT19CU1NfUEFSQU0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfU1RBX0lORk9fQ09OTkVDVEVEX1RJTUUsCi0gTkw4MDIxMV9TVEFfSU5GT19TVEFfRkxBR1MsCi0gTkw4MDIxMV9TVEFfSU5GT19CRUFDT05fTE9TUywKLSBOTDgwMjExX1NUQV9JTkZPX1RfT0ZGU0VULAorICBOTDgwMjExX1NUQV9JTkZPX0NPTk5FQ1RFRF9USU1FLAorICBOTDgwMjExX1NUQV9JTkZPX1NUQV9GTEFHUywKKyAgTkw4MDIxMV9TVEFfSU5GT19CRUFDT05fTE9TUywKKyAgTkw4MDIxMV9TVEFfSU5GT19UX09GRlNFVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9TVEFfSU5GT19MT0NBTF9QTSwKLSBOTDgwMjExX1NUQV9JTkZPX1BFRVJfUE0sCi0gTkw4MDIxMV9TVEFfSU5GT19OT05QRUVSX1BNLAotIE5MODAyMTFfU1RBX0lORk9fUlhfQllURVM2NCwKKyAgTkw4MDIxMV9TVEFfSU5GT19MT0NBTF9QTSwKKyAgTkw4MDIxMV9TVEFfSU5GT19QRUVSX1BNLAorICBOTDgwMjExX1NUQV9JTkZPX05PTlBFRVJfUE0sCisgIE5MODAyMTFfU1RBX0lORk9fUlhfQllURVM2NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9TVEFfSU5GT19UWF9CWVRFUzY0LAotIE5MODAyMTFfU1RBX0lORk9fQ0hBSU5fU0lHTkFMLAotIE5MODAyMTFfU1RBX0lORk9fQ0hBSU5fU0lHTkFMX0FWRywKLSBfX05MODAyMTFfU1RBX0lORk9fQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9TVEFfSU5GT19UWF9CWVRFUzY0LAorICBOTDgwMjExX1NUQV9JTkZPX0NIQUlOX1NJR05BTCwKKyAgTkw4MDIxMV9TVEFfSU5GT19DSEFJTl9TSUdOQUxfQVZHLAorICBOTDgwMjExX1NUQV9JTkZPX0VYUEVDVEVEX1RIUk9VR0hQVVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfU1RBX0lORk9fTUFYID0gX19OTDgwMjExX1NUQV9JTkZPX0FGVEVSX0xBU1QgLSAxCisgIF9fTkw4MDIxMV9TVEFfSU5GT19BRlRFUl9MQVNULAorICBOTDgwMjExX1NUQV9JTkZPX01BWCA9IF9fTkw4MDIxMV9TVEFfSU5GT19BRlRFUl9MQVNUIC0gMQogfTsKIGVudW0gbmw4MDIxMV9tcGF0aF9mbGFncyB7Ci0gTkw4MDIxMV9NUEFUSF9GTEFHX0FDVElWRSA9IDE8PDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTVBBVEhfRkxBR19SRVNPTFZJTkcgPSAxPDwxLAotIE5MODAyMTFfTVBBVEhfRkxBR19TTl9WQUxJRCA9IDE8PDIsCi0gTkw4MDIxMV9NUEFUSF9GTEFHX0ZJWEVEID0gMTw8MywKLSBOTDgwMjExX01QQVRIX0ZMQUdfUkVTT0xWRUQgPSAxPDw0LAorICBOTDgwMjExX01QQVRIX0ZMQUdfQUNUSVZFID0gMSA8PCAwLAorICBOTDgwMjExX01QQVRIX0ZMQUdfUkVTT0xWSU5HID0gMSA8PCAxLAorICBOTDgwMjExX01QQVRIX0ZMQUdfU05fVkFMSUQgPSAxIDw8IDIsCisgIE5MODAyMTFfTVBBVEhfRkxBR19GSVhFRCA9IDEgPDwgMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfTVBBVEhfRkxBR19SRVNPTFZFRCA9IDEgPDwgNCwKIH07CiBlbnVtIG5sODAyMTFfbXBhdGhfaW5mbyB7Ci0gX19OTDgwMjExX01QQVRIX0lORk9fSU5WQUxJRCwKLSBOTDgwMjExX01QQVRIX0lORk9fRlJBTUVfUUxFTiwKKyAgX19OTDgwMjExX01QQVRIX0lORk9fSU5WQUxJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9NUEFUSF9JTkZPX1NOLAotIE5MODAyMTFfTVBBVEhfSU5GT19NRVRSSUMsCi0gTkw4MDIxMV9NUEFUSF9JTkZPX0VYUFRJTUUsCi0gTkw4MDIxMV9NUEFUSF9JTkZPX0ZMQUdTLAorICBOTDgwMjExX01QQVRIX0lORk9fRlJBTUVfUUxFTiwKKyAgTkw4MDIxMV9NUEFUSF9JTkZPX1NOLAorICBOTDgwMjExX01QQVRIX0lORk9fTUVUUklDLAorICBOTDgwMjExX01QQVRIX0lORk9fRVhQVElNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9NUEFUSF9JTkZPX0RJU0NPVkVSWV9USU1FT1VULAotIE5MODAyMTFfTVBBVEhfSU5GT19ESVNDT1ZFUllfUkVUUklFUywKLSBfX05MODAyMTFfTVBBVEhfSU5GT19BRlRFUl9MQVNULAotIE5MODAyMTFfTVBBVEhfSU5GT19NQVggPSBfX05MODAyMTFfTVBBVEhfSU5GT19BRlRFUl9MQVNUIC0gMQorICBOTDgwMjExX01QQVRIX0lORk9fRkxBR1MsCisgIE5MODAyMTFfTVBBVEhfSU5GT19ESVNDT1ZFUllfVElNRU9VVCwKKyAgTkw4MDIxMV9NUEFUSF9JTkZPX0RJU0NPVkVSWV9SRVRSSUVTLAorICBfX05MODAyMTFfTVBBVEhfSU5GT19BRlRFUl9MQVNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkw4MDIxMV9NUEFUSF9JTkZPX01BWCA9IF9fTkw4MDIxMV9NUEFUSF9JTkZPX0FGVEVSX0xBU1QgLSAxCiB9OwogZW51bSBubDgwMjExX2JhbmRfYXR0ciB7Ci0gX19OTDgwMjExX0JBTkRfQVRUUl9JTlZBTElELAotIE5MODAyMTFfQkFORF9BVFRSX0ZSRVFTLAorICBfX05MODAyMTFfQkFORF9BVFRSX0lOVkFMSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQkFORF9BVFRSX1JBVEVTLAotIE5MODAyMTFfQkFORF9BVFRSX0hUX01DU19TRVQsCi0gTkw4MDIxMV9CQU5EX0FUVFJfSFRfQ0FQQSwKLSBOTDgwMjExX0JBTkRfQVRUUl9IVF9BTVBEVV9GQUNUT1IsCisgIE5MODAyMTFfQkFORF9BVFRSX0ZSRVFTLAorICBOTDgwMjExX0JBTkRfQVRUUl9SQVRFUywKKyAgTkw4MDIxMV9CQU5EX0FUVFJfSFRfTUNTX1NFVCwKKyAgTkw4MDIxMV9CQU5EX0FUVFJfSFRfQ0FQQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9CQU5EX0FUVFJfSFRfQU1QRFVfREVOU0lUWSwKLSBOTDgwMjExX0JBTkRfQVRUUl9WSFRfTUNTX1NFVCwKLSBOTDgwMjExX0JBTkRfQVRUUl9WSFRfQ0FQQSwKLSBfX05MODAyMTFfQkFORF9BVFRSX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfQkFORF9BVFRSX0hUX0FNUERVX0ZBQ1RPUiwKKyAgTkw4MDIxMV9CQU5EX0FUVFJfSFRfQU1QRFVfREVOU0lUWSwKKyAgTkw4MDIxMV9CQU5EX0FUVFJfVkhUX01DU19TRVQsCisgIE5MODAyMTFfQkFORF9BVFRSX1ZIVF9DQVBBLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0JBTkRfQVRUUl9NQVggPSBfX05MODAyMTFfQkFORF9BVFRSX0FGVEVSX0xBU1QgLSAxCisgIF9fTkw4MDIxMV9CQU5EX0FUVFJfQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9CQU5EX0FUVFJfTUFYID0gX19OTDgwMjExX0JBTkRfQVRUUl9BRlRFUl9MQVNUIC0gMQogfTsKICNkZWZpbmUgTkw4MDIxMV9CQU5EX0FUVFJfSFRfQ0FQQSBOTDgwMjExX0JBTkRfQVRUUl9IVF9DQVBBCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX2ZyZXF1ZW5jeV9hdHRyIHsKKyAgX19OTDgwMjExX0ZSRVFVRU5DWV9BVFRSX0lOVkFMSUQsCisgIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfRlJFUSwKKyAgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9ESVNBQkxFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19OTDgwMjExX0ZSRVFVRU5DWV9BVFRSX0lOVkFMSUQsCi0gTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9GUkVRLAotIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfRElTQUJMRUQsCi0gTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT19JUiwKKyAgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT19JUiwKKyAgX19OTDgwMjExX0ZSRVFVRU5DWV9BVFRSX05PX0lCU1MsCisgIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfUkFEQVIsCisgIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTUFYX1RYX1BPV0VSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05MODAyMTFfRlJFUVVFTkNZX0FUVFJfTk9fSUJTUywKLSBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX1JBREFSLAotIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTUFYX1RYX1BPV0VSLAotIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfREZTX1NUQVRFLAorICBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX0RGU19TVEFURSwKKyAgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9ERlNfVElNRSwKKyAgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT19IVDQwX01JTlVTLAorICBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX05PX0hUNDBfUExVUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9ERlNfVElNRSwKLSBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX05PX0hUNDBfTUlOVVMsCi0gTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT19IVDQwX1BMVVMsCi0gTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT184ME1IWiwKKyAgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT184ME1IWiwKKyAgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT18xNjBNSFosCisgIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfREZTX0NBQ19USU1FLAorICBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX0lORE9PUl9PTkxZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX05PXzE2ME1IWiwKLSBfX05MODAyMTFfRlJFUVVFTkNZX0FUVFJfQUZURVJfTEFTVCwKLSBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX01BWCA9IF9fTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9BRlRFUl9MQVNUIC0gMQorICBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX0dPX0NPTkNVUlJFTlQsCisgIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTk9fMjBNSFosCisgIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTk9fMTBNSFosCisgIF9fTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9BRlRFUl9MQVNULAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9NQVggPSBfX05MODAyMTFfRlJFUVVFTkNZX0FUVFJfQUZURVJfTEFTVCAtIDEKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX01BWF9UWF9QT1dFUiBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX01BWF9UWF9QT1dFUgogI2RlZmluZSBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX1BBU1NJVkVfU0NBTiBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX05PX0lSCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX05PX0lCU1MgTkw4MDIxMV9GUkVRVUVOQ1lfQVRUUl9OT19JUgogI2RlZmluZSBOTDgwMjExX0ZSRVFVRU5DWV9BVFRSX05PX0lSIE5MODAyMTFfRlJFUVVFTkNZX0FUVFJfTk9fSVIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfYml0cmF0ZV9hdHRyIHsKLSBfX05MODAyMTFfQklUUkFURV9BVFRSX0lOVkFMSUQsCi0gTkw4MDIxMV9CSVRSQVRFX0FUVFJfUkFURSwKLSBOTDgwMjExX0JJVFJBVEVfQVRUUl8yR0haX1NIT1JUUFJFQU1CTEUsCisgIF9fTkw4MDIxMV9CSVRSQVRFX0FUVFJfSU5WQUxJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19OTDgwMjExX0JJVFJBVEVfQVRUUl9BRlRFUl9MQVNULAotIE5MODAyMTFfQklUUkFURV9BVFRSX01BWCA9IF9fTkw4MDIxMV9CSVRSQVRFX0FUVFJfQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9CSVRSQVRFX0FUVFJfUkFURSwKKyAgTkw4MDIxMV9CSVRSQVRFX0FUVFJfMkdIWl9TSE9SVFBSRUFNQkxFLAorICBfX05MODAyMTFfQklUUkFURV9BVFRSX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfQklUUkFURV9BVFRSX01BWCA9IF9fTkw4MDIxMV9CSVRSQVRFX0FUVFJfQUZURVJfTEFTVCAtIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBubDgwMjExX3JlZ19pbml0aWF0b3IgeworICBOTDgwMjExX1JFR0RPTV9TRVRfQllfQ09SRSwKKyAgTkw4MDIxMV9SRUdET01fU0VUX0JZX1VTRVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfUkVHRE9NX1NFVF9CWV9DT1JFLAotIE5MODAyMTFfUkVHRE9NX1NFVF9CWV9VU0VSLAotIE5MODAyMTFfUkVHRE9NX1NFVF9CWV9EUklWRVIsCi0gTkw4MDIxMV9SRUdET01fU0VUX0JZX0NPVU5UUllfSUUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBOTDgwMjExX1JFR0RPTV9TRVRfQllfRFJJVkVSLAorICBOTDgwMjExX1JFR0RPTV9TRVRfQllfQ09VTlRSWV9JRSwKIH07CiBlbnVtIG5sODAyMTFfcmVnX3R5cGUgewotIE5MODAyMTFfUkVHRE9NX1RZUEVfQ09VTlRSWSwKLSBOTDgwMjExX1JFR0RPTV9UWVBFX1dPUkxELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1JFR0RPTV9UWVBFX0NVU1RPTV9XT1JMRCwKLSBOTDgwMjExX1JFR0RPTV9UWVBFX0lOVEVSU0VDVElPTiwKKyAgTkw4MDIxMV9SRUdET01fVFlQRV9DT1VOVFJZLAorICBOTDgwMjExX1JFR0RPTV9UWVBFX1dPUkxELAorICBOTDgwMjExX1JFR0RPTV9UWVBFX0NVU1RPTV9XT1JMRCwKKyAgTkw4MDIxMV9SRUdET01fVFlQRV9JTlRFUlNFQ1RJT04sCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gbmw4MDIxMV9yZWdfcnVsZV9hdHRyIHsKKyAgX19OTDgwMjExX1JFR19SVUxFX0FUVFJfSU5WQUxJRCwKKyAgTkw4MDIxMV9BVFRSX1JFR19SVUxFX0ZMQUdTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05MODAyMTFfUkVHX1JVTEVfQVRUUl9JTlZBTElELAotIE5MODAyMTFfQVRUUl9SRUdfUlVMRV9GTEFHUywKLSBOTDgwMjExX0FUVFJfRlJFUV9SQU5HRV9TVEFSVCwKLSBOTDgwMjExX0FUVFJfRlJFUV9SQU5HRV9FTkQsCisgIE5MODAyMTFfQVRUUl9GUkVRX1JBTkdFX1NUQVJULAorICBOTDgwMjExX0FUVFJfRlJFUV9SQU5HRV9FTkQsCisgIE5MODAyMTFfQVRUUl9GUkVRX1JBTkdFX01BWF9CVywKKyAgTkw4MDIxMV9BVFRSX1BPV0VSX1JVTEVfTUFYX0FOVF9HQUlOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0FUVFJfRlJFUV9SQU5HRV9NQVhfQlcsCi0gTkw4MDIxMV9BVFRSX1BPV0VSX1JVTEVfTUFYX0FOVF9HQUlOLAotIE5MODAyMTFfQVRUUl9QT1dFUl9SVUxFX01BWF9FSVJQLAotIF9fTkw4MDIxMV9SRUdfUlVMRV9BVFRSX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfQVRUUl9QT1dFUl9SVUxFX01BWF9FSVJQLAorICBOTDgwMjExX0FUVFJfREZTX0NBQ19USU1FLAorICBfX05MODAyMTFfUkVHX1JVTEVfQVRUUl9BRlRFUl9MQVNULAorICBOTDgwMjExX1JFR19SVUxFX0FUVFJfTUFYID0gX19OTDgwMjExX1JFR19SVUxFX0FUVFJfQUZURVJfTEFTVCAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9SRUdfUlVMRV9BVFRSX01BWCA9IF9fTkw4MDIxMV9SRUdfUlVMRV9BVFRSX0FGVEVSX0xBU1QgLSAxCiB9OwogZW51bSBubDgwMjExX3NjaGVkX3NjYW5fbWF0Y2hfYXR0ciB7Ci0gX19OTDgwMjExX1NDSEVEX1NDQU5fTUFUQ0hfQVRUUl9JTlZBTElELAorICBfX05MODAyMTFfU0NIRURfU0NBTl9NQVRDSF9BVFRSX0lOVkFMSUQsCisgIE5MODAyMTFfU0NIRURfU0NBTl9NQVRDSF9BVFRSX1NTSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfU0NIRURfU0NBTl9NQVRDSF9BVFRSX1NTSUQsCi0gTkw4MDIxMV9TQ0hFRF9TQ0FOX01BVENIX0FUVFJfUlNTSSwKLSBfX05MODAyMTFfU0NIRURfU0NBTl9NQVRDSF9BVFRSX0FGVEVSX0xBU1QsCi0gTkw4MDIxMV9TQ0hFRF9TQ0FOX01BVENIX0FUVFJfTUFYID0KLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19OTDgwMjExX1NDSEVEX1NDQU5fTUFUQ0hfQVRUUl9BRlRFUl9MQVNUIC0gMQorICBOTDgwMjExX1NDSEVEX1NDQU5fTUFUQ0hfQVRUUl9SU1NJLAorICBfX05MODAyMTFfU0NIRURfU0NBTl9NQVRDSF9BVFRSX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfU0NIRURfU0NBTl9NQVRDSF9BVFRSX01BWCA9IF9fTkw4MDIxMV9TQ0hFRF9TQ0FOX01BVENIX0FUVFJfQUZURVJfTEFTVCAtIDEKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOTDgwMjExX0FUVFJfU0NIRURfU0NBTl9NQVRDSF9TU0lEIE5MODAyMTFfU0NIRURfU0NBTl9NQVRDSF9BVFRSX1NTSUQKIGVudW0gbmw4MDIxMV9yZWdfcnVsZV9mbGFncyB7CisgIE5MODAyMTFfUlJGX05PX09GRE0gPSAxIDw8IDAsCisgIE5MODAyMTFfUlJGX05PX0NDSyA9IDEgPDwgMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9SUkZfTk9fT0ZETSA9IDE8PDAsCi0gTkw4MDIxMV9SUkZfTk9fQ0NLID0gMTw8MSwKLSBOTDgwMjExX1JSRl9OT19JTkRPT1IgPSAxPDwyLAotIE5MODAyMTFfUlJGX05PX09VVERPT1IgPSAxPDwzLAorICBOTDgwMjExX1JSRl9OT19JTkRPT1IgPSAxIDw8IDIsCisgIE5MODAyMTFfUlJGX05PX09VVERPT1IgPSAxIDw8IDMsCisgIE5MODAyMTFfUlJGX0RGUyA9IDEgPDwgNCwKKyAgTkw4MDIxMV9SUkZfUFRQX09OTFkgPSAxIDw8IDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfUlJGX0RGUyA9IDE8PDQsCi0gTkw4MDIxMV9SUkZfUFRQX09OTFkgPSAxPDw1LAotIE5MODAyMTFfUlJGX1BUTVBfT05MWSA9IDE8PDYsCi0gTkw4MDIxMV9SUkZfTk9fSVIgPSAxPDw3LAorICBOTDgwMjExX1JSRl9QVE1QX09OTFkgPSAxIDw8IDYsCisgIE5MODAyMTFfUlJGX05PX0lSID0gMSA8PCA3LAorICBfX05MODAyMTFfUlJGX05PX0lCU1MgPSAxIDw8IDgsCisgIE5MODAyMTFfUlJGX0FVVE9fQlcgPSAxIDw8IDExLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05MODAyMTFfUlJGX05PX0lCU1MgPSAxPDw4LAogfTsKICNkZWZpbmUgTkw4MDIxMV9SUkZfUEFTU0lWRV9TQ0FOIE5MODAyMTFfUlJGX05PX0lSCiAjZGVmaW5lIE5MODAyMTFfUlJGX05PX0lCU1MgTkw4MDIxMV9SUkZfTk9fSVIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5MODAyMTFfUlJGX05PX0lSIE5MODAyMTFfUlJGX05PX0lSCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBOTDgwMjExX1JSRl9OT19JUl9BTEwgKE5MODAyMTFfUlJGX05PX0lSIHwgX19OTDgwMjExX1JSRl9OT19JQlNTKQogZW51bSBubDgwMjExX2Rmc19yZWdpb25zIHsKLSBOTDgwMjExX0RGU19VTlNFVCA9IDAsCisgIE5MODAyMTFfREZTX1VOU0VUID0gMCwKKyAgTkw4MDIxMV9ERlNfRkNDID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9ERlNfRkNDID0gMSwKLSBOTDgwMjExX0RGU19FVFNJID0gMiwKLSBOTDgwMjExX0RGU19KUCA9IDMsCisgIE5MODAyMTFfREZTX0VUU0kgPSAyLAorICBOTDgwMjExX0RGU19KUCA9IDMsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV91c2VyX3JlZ19oaW50X3R5cGUgewotIE5MODAyMTFfVVNFUl9SRUdfSElOVF9VU0VSID0gMCwKLSBOTDgwMjExX1VTRVJfUkVHX0hJTlRfQ0VMTF9CQVNFID0gMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfVVNFUl9SRUdfSElOVF9VU0VSID0gMCwKKyAgTkw4MDIxMV9VU0VSX1JFR19ISU5UX0NFTExfQkFTRSA9IDEsCisgIE5MODAyMTFfVVNFUl9SRUdfSElOVF9JTkRPT1IgPSAyLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfc3VydmV5X2luZm8gewotIF9fTkw4MDIxMV9TVVJWRVlfSU5GT19JTlZBTElELAotIE5MODAyMTFfU1VSVkVZX0lORk9fRlJFUVVFTkNZLAotIE5MODAyMTFfU1VSVkVZX0lORk9fTk9JU0UsCisgIF9fTkw4MDIxMV9TVVJWRVlfSU5GT19JTlZBTElELAorICBOTDgwMjExX1NVUlZFWV9JTkZPX0ZSRVFVRU5DWSwKKyAgTkw4MDIxMV9TVVJWRVlfSU5GT19OT0lTRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9TVVJWRVlfSU5GT19JTl9VU0UsCi0gTkw4MDIxMV9TVVJWRVlfSU5GT19DSEFOTkVMX1RJTUUsCi0gTkw4MDIxMV9TVVJWRVlfSU5GT19DSEFOTkVMX1RJTUVfQlVTWSwKLSBOTDgwMjExX1NVUlZFWV9JTkZPX0NIQU5ORUxfVElNRV9FWFRfQlVTWSwKKyAgTkw4MDIxMV9TVVJWRVlfSU5GT19JTl9VU0UsCisgIE5MODAyMTFfU1VSVkVZX0lORk9fQ0hBTk5FTF9USU1FLAorICBOTDgwMjExX1NVUlZFWV9JTkZPX0NIQU5ORUxfVElNRV9CVVNZLAorICBOTDgwMjExX1NVUlZFWV9JTkZPX0NIQU5ORUxfVElNRV9FWFRfQlVTWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9TVVJWRVlfSU5GT19DSEFOTkVMX1RJTUVfUlgsCi0gTkw4MDIxMV9TVVJWRVlfSU5GT19DSEFOTkVMX1RJTUVfVFgsCi0gX19OTDgwMjExX1NVUlZFWV9JTkZPX0FGVEVSX0xBU1QsCi0gTkw4MDIxMV9TVVJWRVlfSU5GT19NQVggPSBfX05MODAyMTFfU1VSVkVZX0lORk9fQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9TVVJWRVlfSU5GT19DSEFOTkVMX1RJTUVfUlgsCisgIE5MODAyMTFfU1VSVkVZX0lORk9fQ0hBTk5FTF9USU1FX1RYLAorICBfX05MODAyMTFfU1VSVkVZX0lORk9fQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9TVVJWRVlfSU5GT19NQVggPSBfX05MODAyMTFfU1VSVkVZX0lORk9fQUZURVJfTEFTVCAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBubDgwMjExX21udHJfZmxhZ3MgewotIF9fTkw4MDIxMV9NTlRSX0ZMQUdfSU5WQUxJRCwKLSBOTDgwMjExX01OVFJfRkxBR19GQ1NGQUlMLAorICBfX05MODAyMTFfTU5UUl9GTEFHX0lOVkFMSUQsCisgIE5MODAyMTFfTU5UUl9GTEFHX0ZDU0ZBSUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTU5UUl9GTEFHX1BMQ1BGQUlMLAotIE5MODAyMTFfTU5UUl9GTEFHX0NPTlRST0wsCi0gTkw4MDIxMV9NTlRSX0ZMQUdfT1RIRVJfQlNTLAotIE5MODAyMTFfTU5UUl9GTEFHX0NPT0tfRlJBTUVTLAorICBOTDgwMjExX01OVFJfRkxBR19QTENQRkFJTCwKKyAgTkw4MDIxMV9NTlRSX0ZMQUdfQ09OVFJPTCwKKyAgTkw4MDIxMV9NTlRSX0ZMQUdfT1RIRVJfQlNTLAorICBOTDgwMjExX01OVFJfRkxBR19DT09LX0ZSQU1FUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9NTlRSX0ZMQUdfQUNUSVZFLAotIF9fTkw4MDIxMV9NTlRSX0ZMQUdfQUZURVJfTEFTVCwKLSBOTDgwMjExX01OVFJfRkxBR19NQVggPSBfX05MODAyMTFfTU5UUl9GTEFHX0FGVEVSX0xBU1QgLSAxCisgIE5MODAyMTFfTU5UUl9GTEFHX0FDVElWRSwKKyAgX19OTDgwMjExX01OVFJfRkxBR19BRlRFUl9MQVNULAorICBOTDgwMjExX01OVFJfRkxBR19NQVggPSBfX05MODAyMTFfTU5UUl9GTEFHX0FGVEVSX0xBU1QgLSAxCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV9tZXNoX3Bvd2VyX21vZGUgewotIE5MODAyMTFfTUVTSF9QT1dFUl9VTktOT1dOLAotIE5MODAyMTFfTUVTSF9QT1dFUl9BQ1RJVkUsCi0gTkw4MDIxMV9NRVNIX1BPV0VSX0xJR0hUX1NMRUVQLAorICBOTDgwMjExX01FU0hfUE9XRVJfVU5LTk9XTiwKKyAgTkw4MDIxMV9NRVNIX1BPV0VSX0FDVElWRSwKKyAgTkw4MDIxMV9NRVNIX1BPV0VSX0xJR0hUX1NMRUVQLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX01FU0hfUE9XRVJfREVFUF9TTEVFUCwKLSBfX05MODAyMTFfTUVTSF9QT1dFUl9BRlRFUl9MQVNULAotIE5MODAyMTFfTUVTSF9QT1dFUl9NQVggPSBfX05MODAyMTFfTUVTSF9QT1dFUl9BRlRFUl9MQVNUIC0gMQorICBOTDgwMjExX01FU0hfUE9XRVJfREVFUF9TTEVFUCwKKyAgX19OTDgwMjExX01FU0hfUE9XRVJfQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9NRVNIX1BPV0VSX01BWCA9IF9fTkw4MDIxMV9NRVNIX1BPV0VSX0FGVEVSX0xBU1QgLSAxCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV9tZXNoY29uZl9wYXJhbXMgewotIF9fTkw4MDIxMV9NRVNIQ09ORl9JTlZBTElELAotIE5MODAyMTFfTUVTSENPTkZfUkVUUllfVElNRU9VVCwKLSBOTDgwMjExX01FU0hDT05GX0NPTkZJUk1fVElNRU9VVCwKKyAgX19OTDgwMjExX01FU0hDT05GX0lOVkFMSUQsCisgIE5MODAyMTFfTUVTSENPTkZfUkVUUllfVElNRU9VVCwKKyAgTkw4MDIxMV9NRVNIQ09ORl9DT05GSVJNX1RJTUVPVVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTUVTSENPTkZfSE9MRElOR19USU1FT1VULAotIE5MODAyMTFfTUVTSENPTkZfTUFYX1BFRVJfTElOS1MsCi0gTkw4MDIxMV9NRVNIQ09ORl9NQVhfUkVUUklFUywKLSBOTDgwMjExX01FU0hDT05GX1RUTCwKKyAgTkw4MDIxMV9NRVNIQ09ORl9IT0xESU5HX1RJTUVPVVQsCisgIE5MODAyMTFfTUVTSENPTkZfTUFYX1BFRVJfTElOS1MsCisgIE5MODAyMTFfTUVTSENPTkZfTUFYX1JFVFJJRVMsCisgIE5MODAyMTFfTUVTSENPTkZfVFRMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX01FU0hDT05GX0FVVE9fT1BFTl9QTElOS1MsCi0gTkw4MDIxMV9NRVNIQ09ORl9IV01QX01BWF9QUkVRX1JFVFJJRVMsCi0gTkw4MDIxMV9NRVNIQ09ORl9QQVRIX1JFRlJFU0hfVElNRSwKLSBOTDgwMjExX01FU0hDT05GX01JTl9ESVNDT1ZFUllfVElNRU9VVCwKKyAgTkw4MDIxMV9NRVNIQ09ORl9BVVRPX09QRU5fUExJTktTLAorICBOTDgwMjExX01FU0hDT05GX0hXTVBfTUFYX1BSRVFfUkVUUklFUywKKyAgTkw4MDIxMV9NRVNIQ09ORl9QQVRIX1JFRlJFU0hfVElNRSwKKyAgTkw4MDIxMV9NRVNIQ09ORl9NSU5fRElTQ09WRVJZX1RJTUVPVVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTUVTSENPTkZfSFdNUF9BQ1RJVkVfUEFUSF9USU1FT1VULAotIE5MODAyMTFfTUVTSENPTkZfSFdNUF9QUkVRX01JTl9JTlRFUlZBTCwKLSBOTDgwMjExX01FU0hDT05GX0hXTVBfTkVUX0RJQU1fVFJWU19USU1FLAotIE5MODAyMTFfTUVTSENPTkZfSFdNUF9ST09UTU9ERSwKKyAgTkw4MDIxMV9NRVNIQ09ORl9IV01QX0FDVElWRV9QQVRIX1RJTUVPVVQsCisgIE5MODAyMTFfTUVTSENPTkZfSFdNUF9QUkVRX01JTl9JTlRFUlZBTCwKKyAgTkw4MDIxMV9NRVNIQ09ORl9IV01QX05FVF9ESUFNX1RSVlNfVElNRSwKKyAgTkw4MDIxMV9NRVNIQ09ORl9IV01QX1JPT1RNT0RFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX01FU0hDT05GX0VMRU1FTlRfVFRMLAotIE5MODAyMTFfTUVTSENPTkZfSFdNUF9SQU5OX0lOVEVSVkFMLAotIE5MODAyMTFfTUVTSENPTkZfR0FURV9BTk5PVU5DRU1FTlRTLAotIE5MODAyMTFfTUVTSENPTkZfSFdNUF9QRVJSX01JTl9JTlRFUlZBTCwKKyAgTkw4MDIxMV9NRVNIQ09ORl9FTEVNRU5UX1RUTCwKKyAgTkw4MDIxMV9NRVNIQ09ORl9IV01QX1JBTk5fSU5URVJWQUwsCisgIE5MODAyMTFfTUVTSENPTkZfR0FURV9BTk5PVU5DRU1FTlRTLAorICBOTDgwMjExX01FU0hDT05GX0hXTVBfUEVSUl9NSU5fSU5URVJWQUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTUVTSENPTkZfRk9SV0FSRElORywKLSBOTDgwMjExX01FU0hDT05GX1JTU0lfVEhSRVNIT0xELAotIE5MODAyMTFfTUVTSENPTkZfU1lOQ19PRkZTRVRfTUFYX05FSUdIQk9SLAotIE5MODAyMTFfTUVTSENPTkZfSFRfT1BNT0RFLAorICBOTDgwMjExX01FU0hDT05GX0ZPUldBUkRJTkcsCisgIE5MODAyMTFfTUVTSENPTkZfUlNTSV9USFJFU0hPTEQsCisgIE5MODAyMTFfTUVTSENPTkZfU1lOQ19PRkZTRVRfTUFYX05FSUdIQk9SLAorICBOTDgwMjExX01FU0hDT05GX0hUX09QTU9ERSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9NRVNIQ09ORl9IV01QX1BBVEhfVE9fUk9PVF9USU1FT1VULAotIE5MODAyMTFfTUVTSENPTkZfSFdNUF9ST09UX0lOVEVSVkFMLAotIE5MODAyMTFfTUVTSENPTkZfSFdNUF9DT05GSVJNQVRJT05fSU5URVJWQUwsCi0gTkw4MDIxMV9NRVNIQ09ORl9QT1dFUl9NT0RFLAorICBOTDgwMjExX01FU0hDT05GX0hXTVBfUEFUSF9UT19ST09UX1RJTUVPVVQsCisgIE5MODAyMTFfTUVTSENPTkZfSFdNUF9ST09UX0lOVEVSVkFMLAorICBOTDgwMjExX01FU0hDT05GX0hXTVBfQ09ORklSTUFUSU9OX0lOVEVSVkFMLAorICBOTDgwMjExX01FU0hDT05GX1BPV0VSX01PREUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTUVTSENPTkZfQVdBS0VfV0lORE9XLAotIE5MODAyMTFfTUVTSENPTkZfUExJTktfVElNRU9VVCwKLSBfX05MODAyMTFfTUVTSENPTkZfQVRUUl9BRlRFUl9MQVNULAotIE5MODAyMTFfTUVTSENPTkZfQVRUUl9NQVggPSBfX05MODAyMTFfTUVTSENPTkZfQVRUUl9BRlRFUl9MQVNUIC0gMQorICBOTDgwMjExX01FU0hDT05GX0FXQUtFX1dJTkRPVywKKyAgTkw4MDIxMV9NRVNIQ09ORl9QTElOS19USU1FT1VULAorICBfX05MODAyMTFfTUVTSENPTkZfQVRUUl9BRlRFUl9MQVNULAorICBOTDgwMjExX01FU0hDT05GX0FUVFJfTUFYID0gX19OTDgwMjExX01FU0hDT05GX0FUVFJfQUZURVJfTEFTVCAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBubDgwMjExX21lc2hfc2V0dXBfcGFyYW1zIHsKLSBfX05MODAyMTFfTUVTSF9TRVRVUF9JTlZBTElELAotIE5MODAyMTFfTUVTSF9TRVRVUF9FTkFCTEVfVkVORE9SX1BBVEhfU0VMLAorICBfX05MODAyMTFfTUVTSF9TRVRVUF9JTlZBTElELAorICBOTDgwMjExX01FU0hfU0VUVVBfRU5BQkxFX1ZFTkRPUl9QQVRIX1NFTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9NRVNIX1NFVFVQX0VOQUJMRV9WRU5ET1JfTUVUUklDLAotIE5MODAyMTFfTUVTSF9TRVRVUF9JRSwKLSBOTDgwMjExX01FU0hfU0VUVVBfVVNFUlNQQUNFX0FVVEgsCi0gTkw4MDIxMV9NRVNIX1NFVFVQX1VTRVJTUEFDRV9BTVBFLAorICBOTDgwMjExX01FU0hfU0VUVVBfRU5BQkxFX1ZFTkRPUl9NRVRSSUMsCisgIE5MODAyMTFfTUVTSF9TRVRVUF9JRSwKKyAgTkw4MDIxMV9NRVNIX1NFVFVQX1VTRVJTUEFDRV9BVVRILAorICBOTDgwMjExX01FU0hfU0VUVVBfVVNFUlNQQUNFX0FNUEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfTUVTSF9TRVRVUF9FTkFCTEVfVkVORE9SX1NZTkMsCi0gTkw4MDIxMV9NRVNIX1NFVFVQX1VTRVJTUEFDRV9NUE0sCi0gTkw4MDIxMV9NRVNIX1NFVFVQX0FVVEhfUFJPVE9DT0wsCi0gX19OTDgwMjExX01FU0hfU0VUVVBfQVRUUl9BRlRFUl9MQVNULAorICBOTDgwMjExX01FU0hfU0VUVVBfRU5BQkxFX1ZFTkRPUl9TWU5DLAorICBOTDgwMjExX01FU0hfU0VUVVBfVVNFUlNQQUNFX01QTSwKKyAgTkw4MDIxMV9NRVNIX1NFVFVQX0FVVEhfUFJPVE9DT0wsCisgIF9fTkw4MDIxMV9NRVNIX1NFVFVQX0FUVFJfQUZURVJfTEFTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9NRVNIX1NFVFVQX0FUVFJfTUFYID0gX19OTDgwMjExX01FU0hfU0VUVVBfQVRUUl9BRlRFUl9MQVNUIC0gMQorICBOTDgwMjExX01FU0hfU0VUVVBfQVRUUl9NQVggPSBfX05MODAyMTFfTUVTSF9TRVRVUF9BVFRSX0FGVEVSX0xBU1QgLSAxCiB9OwogZW51bSBubDgwMjExX3R4cV9hdHRyIHsKLSBfX05MODAyMTFfVFhRX0FUVFJfSU5WQUxJRCwKKyAgX19OTDgwMjExX1RYUV9BVFRSX0lOVkFMSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfVFhRX0FUVFJfQUMsCi0gTkw4MDIxMV9UWFFfQVRUUl9UWE9QLAotIE5MODAyMTFfVFhRX0FUVFJfQ1dNSU4sCi0gTkw4MDIxMV9UWFFfQVRUUl9DV01BWCwKKyAgTkw4MDIxMV9UWFFfQVRUUl9BQywKKyAgTkw4MDIxMV9UWFFfQVRUUl9UWE9QLAorICBOTDgwMjExX1RYUV9BVFRSX0NXTUlOLAorICBOTDgwMjExX1RYUV9BVFRSX0NXTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1RYUV9BVFRSX0FJRlMsCi0gX19OTDgwMjExX1RYUV9BVFRSX0FGVEVSX0xBU1QsCi0gTkw4MDIxMV9UWFFfQVRUUl9NQVggPSBfX05MODAyMTFfVFhRX0FUVFJfQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9UWFFfQVRUUl9BSUZTLAorICBfX05MODAyMTFfVFhRX0FUVFJfQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9UWFFfQVRUUl9NQVggPSBfX05MODAyMTFfVFhRX0FUVFJfQUZURVJfTEFTVCAtIDEKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX2FjIHsKLSBOTDgwMjExX0FDX1ZPLAotIE5MODAyMTFfQUNfVkksCi0gTkw4MDIxMV9BQ19CRSwKKyAgTkw4MDIxMV9BQ19WTywKKyAgTkw4MDIxMV9BQ19WSSwKKyAgTkw4MDIxMV9BQ19CRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BQ19CSywKLSBOTDgwMjExX05VTV9BQ1MKKyAgTkw4MDIxMV9BQ19CSywKKyAgTkw4MDIxMV9OVU1fQUNTCiB9OwogI2RlZmluZSBOTDgwMjExX1RYUV9BVFRSX1FVRVVFIE5MODAyMTFfVFhRX0FUVFJfQUMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC04NjIsMTgzICs4OTIsMTkzIEBACiAjZGVmaW5lIE5MODAyMTFfVFhRX1FfQksgTkw4MDIxMV9BQ19CSwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV9jaGFubmVsX3R5cGUgewotIE5MODAyMTFfQ0hBTl9OT19IVCwKLSBOTDgwMjExX0NIQU5fSFQyMCwKLSBOTDgwMjExX0NIQU5fSFQ0ME1JTlVTLAorICBOTDgwMjExX0NIQU5fTk9fSFQsCisgIE5MODAyMTFfQ0hBTl9IVDIwLAorICBOTDgwMjExX0NIQU5fSFQ0ME1JTlVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NIQU5fSFQ0MFBMVVMKKyAgTkw4MDIxMV9DSEFOX0hUNDBQTFVTCiB9OwogZW51bSBubDgwMjExX2NoYW5fd2lkdGggewotIE5MODAyMTFfQ0hBTl9XSURUSF8yMF9OT0hULAorICBOTDgwMjExX0NIQU5fV0lEVEhfMjBfTk9IVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9DSEFOX1dJRFRIXzIwLAotIE5MODAyMTFfQ0hBTl9XSURUSF80MCwKLSBOTDgwMjExX0NIQU5fV0lEVEhfODAsCi0gTkw4MDIxMV9DSEFOX1dJRFRIXzgwUDgwLAorICBOTDgwMjExX0NIQU5fV0lEVEhfMjAsCisgIE5MODAyMTFfQ0hBTl9XSURUSF80MCwKKyAgTkw4MDIxMV9DSEFOX1dJRFRIXzgwLAorICBOTDgwMjExX0NIQU5fV0lEVEhfODBQODAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQ0hBTl9XSURUSF8xNjAsCi0gTkw4MDIxMV9DSEFOX1dJRFRIXzUsCi0gTkw4MDIxMV9DSEFOX1dJRFRIXzEwLAorICBOTDgwMjExX0NIQU5fV0lEVEhfMTYwLAorICBOTDgwMjExX0NIQU5fV0lEVEhfNSwKKyAgTkw4MDIxMV9DSEFOX1dJRFRIXzEwLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfYnNzX3NjYW5fd2lkdGggewotIE5MODAyMTFfQlNTX0NIQU5fV0lEVEhfMjAsCi0gTkw4MDIxMV9CU1NfQ0hBTl9XSURUSF8xMCwKLSBOTDgwMjExX0JTU19DSEFOX1dJRFRIXzUsCisgIE5MODAyMTFfQlNTX0NIQU5fV0lEVEhfMjAsCisgIE5MODAyMTFfQlNTX0NIQU5fV0lEVEhfMTAsCisgIE5MODAyMTFfQlNTX0NIQU5fV0lEVEhfNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBubDgwMjExX2JzcyB7Ci0gX19OTDgwMjExX0JTU19JTlZBTElELAotIE5MODAyMTFfQlNTX0JTU0lELAorICBfX05MODAyMTFfQlNTX0lOVkFMSUQsCisgIE5MODAyMTFfQlNTX0JTU0lELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0JTU19GUkVRVUVOQ1ksCi0gTkw4MDIxMV9CU1NfVFNGLAotIE5MODAyMTFfQlNTX0JFQUNPTl9JTlRFUlZBTCwKLSBOTDgwMjExX0JTU19DQVBBQklMSVRZLAorICBOTDgwMjExX0JTU19GUkVRVUVOQ1ksCisgIE5MODAyMTFfQlNTX1RTRiwKKyAgTkw4MDIxMV9CU1NfQkVBQ09OX0lOVEVSVkFMLAorICBOTDgwMjExX0JTU19DQVBBQklMSVRZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0JTU19JTkZPUk1BVElPTl9FTEVNRU5UUywKLSBOTDgwMjExX0JTU19TSUdOQUxfTUJNLAotIE5MODAyMTFfQlNTX1NJR05BTF9VTlNQRUMsCi0gTkw4MDIxMV9CU1NfU1RBVFVTLAorICBOTDgwMjExX0JTU19JTkZPUk1BVElPTl9FTEVNRU5UUywKKyAgTkw4MDIxMV9CU1NfU0lHTkFMX01CTSwKKyAgTkw4MDIxMV9CU1NfU0lHTkFMX1VOU1BFQywKKyAgTkw4MDIxMV9CU1NfU1RBVFVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0JTU19TRUVOX01TX0FHTywKLSBOTDgwMjExX0JTU19CRUFDT05fSUVTLAotIE5MODAyMTFfQlNTX0NIQU5fV0lEVEgsCi0gX19OTDgwMjExX0JTU19BRlRFUl9MQVNULAorICBOTDgwMjExX0JTU19TRUVOX01TX0FHTywKKyAgTkw4MDIxMV9CU1NfQkVBQ09OX0lFUywKKyAgTkw4MDIxMV9CU1NfQ0hBTl9XSURUSCwKKyAgTkw4MDIxMV9CU1NfQkVBQ09OX1RTRiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9CU1NfTUFYID0gX19OTDgwMjExX0JTU19BRlRFUl9MQVNUIC0gMQorICBOTDgwMjExX0JTU19QUkVTUF9EQVRBLAorICBfX05MODAyMTFfQlNTX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfQlNTX01BWCA9IF9fTkw4MDIxMV9CU1NfQUZURVJfTEFTVCAtIDEKIH07Ci1lbnVtIG5sODAyMTFfYnNzX3N0YXR1cyB7Ci0gTkw4MDIxMV9CU1NfU1RBVFVTX0FVVEhFTlRJQ0FURUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQlNTX1NUQVRVU19BU1NPQ0lBVEVELAotIE5MODAyMTFfQlNTX1NUQVRVU19JQlNTX0pPSU5FRCwKK2VudW0gbmw4MDIxMV9ic3Nfc3RhdHVzIHsKKyAgTkw4MDIxMV9CU1NfU1RBVFVTX0FVVEhFTlRJQ0FURUQsCisgIE5MODAyMTFfQlNTX1NUQVRVU19BU1NPQ0lBVEVELAorICBOTDgwMjExX0JTU19TVEFUVVNfSUJTU19KT0lORUQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gbmw4MDIxMV9hdXRoX3R5cGUgeworICBOTDgwMjExX0FVVEhUWVBFX09QRU5fU1lTVEVNLAorICBOTDgwMjExX0FVVEhUWVBFX1NIQVJFRF9LRVksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVVUSFRZUEVfT1BFTl9TWVNURU0sCi0gTkw4MDIxMV9BVVRIVFlQRV9TSEFSRURfS0VZLAotIE5MODAyMTFfQVVUSFRZUEVfRlQsCi0gTkw4MDIxMV9BVVRIVFlQRV9ORVRXT1JLX0VBUCwKKyAgTkw4MDIxMV9BVVRIVFlQRV9GVCwKKyAgTkw4MDIxMV9BVVRIVFlQRV9ORVRXT1JLX0VBUCwKKyAgTkw4MDIxMV9BVVRIVFlQRV9TQUUsCisgIF9fTkw4MDIxMV9BVVRIVFlQRV9OVU0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfQVVUSFRZUEVfU0FFLAotIF9fTkw4MDIxMV9BVVRIVFlQRV9OVU0sCi0gTkw4MDIxMV9BVVRIVFlQRV9NQVggPSBfX05MODAyMTFfQVVUSFRZUEVfTlVNIC0gMSwKLSBOTDgwMjExX0FVVEhUWVBFX0FVVE9NQVRJQwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkw4MDIxMV9BVVRIVFlQRV9NQVggPSBfX05MODAyMTFfQVVUSFRZUEVfTlVNIC0gMSwKKyAgTkw4MDIxMV9BVVRIVFlQRV9BVVRPTUFUSUMKIH07CiBlbnVtIG5sODAyMTFfa2V5X3R5cGUgewotIE5MODAyMTFfS0VZVFlQRV9HUk9VUCwKLSBOTDgwMjExX0tFWVRZUEVfUEFJUldJU0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfS0VZVFlQRV9QRUVSS0VZLAotIE5VTV9OTDgwMjExX0tFWVRZUEVTCisgIE5MODAyMTFfS0VZVFlQRV9HUk9VUCwKKyAgTkw4MDIxMV9LRVlUWVBFX1BBSVJXSVNFLAorICBOTDgwMjExX0tFWVRZUEVfUEVFUktFWSwKKyAgTlVNX05MODAyMTFfS0VZVFlQRVMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBubDgwMjExX21mcCB7CisgIE5MODAyMTFfTUZQX05PLAorICBOTDgwMjExX01GUF9SRVFVSVJFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9NRlBfTk8sCi0gTkw4MDIxMV9NRlBfUkVRVUlSRUQsCiB9OwogZW51bSBubDgwMjExX3dwYV92ZXJzaW9ucyB7CisgIE5MODAyMTFfV1BBX1ZFUlNJT05fMSA9IDEgPDwgMCwKKyAgTkw4MDIxMV9XUEFfVkVSU0lPTl8yID0gMSA8PCAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1dQQV9WRVJTSU9OXzEgPSAxIDw8IDAsCi0gTkw4MDIxMV9XUEFfVkVSU0lPTl8yID0gMSA8PCAxLAogfTsKIGVudW0gbmw4MDIxMV9rZXlfZGVmYXVsdF90eXBlcyB7CisgIF9fTkw4MDIxMV9LRVlfREVGQVVMVF9UWVBFX0lOVkFMSUQsCisgIE5MODAyMTFfS0VZX0RFRkFVTFRfVFlQRV9VTklDQVNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX05MODAyMTFfS0VZX0RFRkFVTFRfVFlQRV9JTlZBTElELAotIE5MODAyMTFfS0VZX0RFRkFVTFRfVFlQRV9VTklDQVNULAotIE5MODAyMTFfS0VZX0RFRkFVTFRfVFlQRV9NVUxUSUNBU1QsCi0gTlVNX05MODAyMTFfS0VZX0RFRkFVTFRfVFlQRVMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfS0VZX0RFRkFVTFRfVFlQRV9NVUxUSUNBU1QsCisgIE5VTV9OTDgwMjExX0tFWV9ERUZBVUxUX1RZUEVTCiB9OwogZW51bSBubDgwMjExX2tleV9hdHRyaWJ1dGVzIHsKLSBfX05MODAyMTFfS0VZX0lOVkFMSUQsCi0gTkw4MDIxMV9LRVlfREFUQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9LRVlfSURYLAotIE5MODAyMTFfS0VZX0NJUEhFUiwKLSBOTDgwMjExX0tFWV9TRVEsCi0gTkw4MDIxMV9LRVlfREVGQVVMVCwKKyAgX19OTDgwMjExX0tFWV9JTlZBTElELAorICBOTDgwMjExX0tFWV9EQVRBLAorICBOTDgwMjExX0tFWV9JRFgsCisgIE5MODAyMTFfS0VZX0NJUEhFUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9LRVlfREVGQVVMVF9NR01ULAotIE5MODAyMTFfS0VZX1RZUEUsCi0gTkw4MDIxMV9LRVlfREVGQVVMVF9UWVBFUywKLSBfX05MODAyMTFfS0VZX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfS0VZX1NFUSwKKyAgTkw4MDIxMV9LRVlfREVGQVVMVCwKKyAgTkw4MDIxMV9LRVlfREVGQVVMVF9NR01ULAorICBOTDgwMjExX0tFWV9UWVBFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0tFWV9NQVggPSBfX05MODAyMTFfS0VZX0FGVEVSX0xBU1QgLSAxCisgIE5MODAyMTFfS0VZX0RFRkFVTFRfVFlQRVMsCisgIF9fTkw4MDIxMV9LRVlfQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9LRVlfTUFYID0gX19OTDgwMjExX0tFWV9BRlRFUl9MQVNUIC0gMQogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfdHhfcmF0ZV9hdHRyaWJ1dGVzIHsKLSBfX05MODAyMTFfVFhSQVRFX0lOVkFMSUQsCisgIF9fTkw4MDIxMV9UWFJBVEVfSU5WQUxJRCwKKyAgTkw4MDIxMV9UWFJBVEVfTEVHQUNZLAorICBOTDgwMjExX1RYUkFURV9IVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9UWFJBVEVfTEVHQUNZLAotIE5MODAyMTFfVFhSQVRFX0hULAotIE5MODAyMTFfVFhSQVRFX1ZIVCwKLSBfX05MODAyMTFfVFhSQVRFX0FGVEVSX0xBU1QsCisgIE5MODAyMTFfVFhSQVRFX1ZIVCwKKyAgTkw4MDIxMV9UWFJBVEVfR0ksCisgIF9fTkw4MDIxMV9UWFJBVEVfQUZURVJfTEFTVCwKKyAgTkw4MDIxMV9UWFJBVEVfTUFYID0gX19OTDgwMjExX1RYUkFURV9BRlRFUl9MQVNUIC0gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1RYUkFURV9NQVggPSBfX05MODAyMTFfVFhSQVRFX0FGVEVSX0xBU1QgLSAxCiB9OwogI2RlZmluZSBOTDgwMjExX1RYUkFURV9NQ1MgTkw4MDIxMV9UWFJBVEVfSFQKICNkZWZpbmUgTkw4MDIxMV9WSFRfTlNTX01BWCA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5sODAyMTFfdHhyYXRlX3ZodCB7Ci0gX191MTYgbWNzW05MODAyMTFfVkhUX05TU19NQVhdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgbWNzW05MODAyMTFfVkhUX05TU19NQVhdOworfTsKK2VudW0gbmw4MDIxMV90eHJhdGVfZ2kgeworICBOTDgwMjExX1RYUkFURV9ERUZBVUxUX0dJLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkw4MDIxMV9UWFJBVEVfRk9SQ0VfU0dJLAorICBOTDgwMjExX1RYUkFURV9GT1JDRV9MR0ksCiB9OwogZW51bSBubDgwMjExX2JhbmQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0JBTkRfMkdIWiwKLSBOTDgwMjExX0JBTkRfNUdIWiwKLSBOTDgwMjExX0JBTkRfNjBHSFosCisgIE5MODAyMTFfQkFORF8yR0haLAorICBOTDgwMjExX0JBTkRfNUdIWiwKKyAgTkw4MDIxMV9CQU5EXzYwR0haLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfcHNfc3RhdGUgewotIE5MODAyMTFfUFNfRElTQUJMRUQsCi0gTkw4MDIxMV9QU19FTkFCTEVELAorICBOTDgwMjExX1BTX0RJU0FCTEVELAorICBOTDgwMjExX1BTX0VOQUJMRUQsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV9hdHRyX2NxbSB7Ci0gX19OTDgwMjExX0FUVFJfQ1FNX0lOVkFMSUQsCi0gTkw4MDIxMV9BVFRSX0NRTV9SU1NJX1RIT0xELAotIE5MODAyMTFfQVRUUl9DUU1fUlNTSV9IWVNULAorICBfX05MODAyMTFfQVRUUl9DUU1fSU5WQUxJRCwKKyAgTkw4MDIxMV9BVFRSX0NRTV9SU1NJX1RIT0xELAorICBOTDgwMjExX0FUVFJfQ1FNX1JTU0lfSFlTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0NRTV9SU1NJX1RIUkVTSE9MRF9FVkVOVCwKLSBOTDgwMjExX0FUVFJfQ1FNX1BLVF9MT1NTX0VWRU5ULAotIE5MODAyMTFfQVRUUl9DUU1fVFhFX1JBVEUsCi0gTkw4MDIxMV9BVFRSX0NRTV9UWEVfUEtUUywKKyAgTkw4MDIxMV9BVFRSX0NRTV9SU1NJX1RIUkVTSE9MRF9FVkVOVCwKKyAgTkw4MDIxMV9BVFRSX0NRTV9QS1RfTE9TU19FVkVOVCwKKyAgTkw4MDIxMV9BVFRSX0NRTV9UWEVfUkFURSwKKyAgTkw4MDIxMV9BVFRSX0NRTV9UWEVfUEtUUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0NRTV9UWEVfSU5UVkwsCi0gX19OTDgwMjExX0FUVFJfQ1FNX0FGVEVSX0xBU1QsCi0gTkw4MDIxMV9BVFRSX0NRTV9NQVggPSBfX05MODAyMTFfQVRUUl9DUU1fQUZURVJfTEFTVCAtIDEKKyAgTkw4MDIxMV9BVFRSX0NRTV9UWEVfSU5UVkwsCisgIF9fTkw4MDIxMV9BVFRSX0NRTV9BRlRFUl9MQVNULAorICBOTDgwMjExX0FUVFJfQ1FNX01BWCA9IF9fTkw4MDIxMV9BVFRSX0NRTV9BRlRFUl9MQVNUIC0gMQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfY3FtX3Jzc2lfdGhyZXNob2xkX2V2ZW50IHsKLSBOTDgwMjExX0NRTV9SU1NJX1RIUkVTSE9MRF9FVkVOVF9MT1csCi0gTkw4MDIxMV9DUU1fUlNTSV9USFJFU0hPTERfRVZFTlRfSElHSCwKLSBOTDgwMjExX0NRTV9SU1NJX0JFQUNPTl9MT1NTX0VWRU5ULAorICBOTDgwMjExX0NRTV9SU1NJX1RIUkVTSE9MRF9FVkVOVF9MT1csCisgIE5MODAyMTFfQ1FNX1JTU0lfVEhSRVNIT0xEX0VWRU5UX0hJR0gsCisgIE5MODAyMTFfQ1FNX1JTU0lfQkVBQ09OX0xPU1NfRVZFTlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gbmw4MDIxMV90eF9wb3dlcl9zZXR0aW5nIHsKLSBOTDgwMjExX1RYX1BPV0VSX0FVVE9NQVRJQywKLSBOTDgwMjExX1RYX1BPV0VSX0xJTUlURUQsCisgIE5MODAyMTFfVFhfUE9XRVJfQVVUT01BVElDLAorICBOTDgwMjExX1RYX1BPV0VSX0xJTUlURUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfVFhfUE9XRVJfRklYRUQsCisgIE5MODAyMTFfVFhfUE9XRVJfRklYRUQsCiB9OwogZW51bSBubDgwMjExX3BhY2tldF9wYXR0ZXJuX2F0dHIgewotIF9fTkw4MDIxMV9QS1RQQVRfSU5WQUxJRCwKKyAgX19OTDgwMjExX1BLVFBBVF9JTlZBTElELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1BLVFBBVF9NQVNLLAotIE5MODAyMTFfUEtUUEFUX1BBVFRFUk4sCi0gTkw4MDIxMV9QS1RQQVRfT0ZGU0VULAotIE5VTV9OTDgwMjExX1BLVFBBVCwKKyAgTkw4MDIxMV9QS1RQQVRfTUFTSywKKyAgTkw4MDIxMV9QS1RQQVRfUEFUVEVSTiwKKyAgTkw4MDIxMV9QS1RQQVRfT0ZGU0VULAorICBOVU1fTkw4MDIxMV9QS1RQQVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1BWF9OTDgwMjExX1BLVFBBVCA9IE5VTV9OTDgwMjExX1BLVFBBVCAtIDEsCisgIE1BWF9OTDgwMjExX1BLVFBBVCA9IE5VTV9OTDgwMjExX1BLVFBBVCAtIDEsCiB9Owogc3RydWN0IG5sODAyMTFfcGF0dGVybl9zdXBwb3J0IHsKLSBfX3UzMiBtYXhfcGF0dGVybnM7CisgIF9fdTMyIG1heF9wYXR0ZXJuczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWluX3BhdHRlcm5fbGVuOwotIF9fdTMyIG1heF9wYXR0ZXJuX2xlbjsKLSBfX3UzMiBtYXhfcGt0X29mZnNldDsKKyAgX191MzIgbWluX3BhdHRlcm5fbGVuOworICBfX3UzMiBtYXhfcGF0dGVybl9sZW47CisgIF9fdTMyIG1heF9wa3Rfb2Zmc2V0OwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fTkw4MDIxMV9XT1dMQU5fUEtUUEFUX0lOVkFMSUQgX19OTDgwMjExX1BLVFBBVF9JTlZBTElECkBAIC0xMDUxLDI1OSArMTA5MSwyODUgQEAKICNkZWZpbmUgbmw4MDIxMV93b3dsYW5fcGF0dGVybl9zdXBwb3J0IG5sODAyMTFfcGF0dGVybl9zdXBwb3J0CiBlbnVtIG5sODAyMTFfd293bGFuX3RyaWdnZXJzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19OTDgwMjExX1dPV0xBTl9UUklHX0lOVkFMSUQsCi0gTkw4MDIxMV9XT1dMQU5fVFJJR19BTlksCi0gTkw4MDIxMV9XT1dMQU5fVFJJR19ESVNDT05ORUNULAotIE5MODAyMTFfV09XTEFOX1RSSUdfTUFHSUNfUEtULAorICBfX05MODAyMTFfV09XTEFOX1RSSUdfSU5WQUxJRCwKKyAgTkw4MDIxMV9XT1dMQU5fVFJJR19BTlksCisgIE5MODAyMTFfV09XTEFOX1RSSUdfRElTQ09OTkVDVCwKKyAgTkw4MDIxMV9XT1dMQU5fVFJJR19NQUdJQ19QS1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfV09XTEFOX1RSSUdfUEtUX1BBVFRFUk4sCi0gTkw4MDIxMV9XT1dMQU5fVFJJR19HVEtfUkVLRVlfU1VQUE9SVEVELAotIE5MODAyMTFfV09XTEFOX1RSSUdfR1RLX1JFS0VZX0ZBSUxVUkUsCi0gTkw4MDIxMV9XT1dMQU5fVFJJR19FQVBfSURFTlRfUkVRVUVTVCwKKyAgTkw4MDIxMV9XT1dMQU5fVFJJR19QS1RfUEFUVEVSTiwKKyAgTkw4MDIxMV9XT1dMQU5fVFJJR19HVEtfUkVLRVlfU1VQUE9SVEVELAorICBOTDgwMjExX1dPV0xBTl9UUklHX0dUS19SRUtFWV9GQUlMVVJFLAorICBOTDgwMjExX1dPV0xBTl9UUklHX0VBUF9JREVOVF9SRVFVRVNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1dPV0xBTl9UUklHXzRXQVlfSEFORFNIQUtFLAotIE5MODAyMTFfV09XTEFOX1RSSUdfUkZLSUxMX1JFTEVBU0UsCi0gTkw4MDIxMV9XT1dMQU5fVFJJR19XQUtFVVBfUEtUXzgwMjExLAotIE5MODAyMTFfV09XTEFOX1RSSUdfV0FLRVVQX1BLVF84MDIxMV9MRU4sCisgIE5MODAyMTFfV09XTEFOX1RSSUdfNFdBWV9IQU5EU0hBS0UsCisgIE5MODAyMTFfV09XTEFOX1RSSUdfUkZLSUxMX1JFTEVBU0UsCisgIE5MODAyMTFfV09XTEFOX1RSSUdfV0FLRVVQX1BLVF84MDIxMSwKKyAgTkw4MDIxMV9XT1dMQU5fVFJJR19XQUtFVVBfUEtUXzgwMjExX0xFTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9XT1dMQU5fVFJJR19XQUtFVVBfUEtUXzgwMjMsCi0gTkw4MDIxMV9XT1dMQU5fVFJJR19XQUtFVVBfUEtUXzgwMjNfTEVOLAotIE5MODAyMTFfV09XTEFOX1RSSUdfVENQX0NPTk5FQ1RJT04sCi0gTkw4MDIxMV9XT1dMQU5fVFJJR19XQUtFVVBfVENQX01BVENILAorICBOTDgwMjExX1dPV0xBTl9UUklHX1dBS0VVUF9QS1RfODAyMywKKyAgTkw4MDIxMV9XT1dMQU5fVFJJR19XQUtFVVBfUEtUXzgwMjNfTEVOLAorICBOTDgwMjExX1dPV0xBTl9UUklHX1RDUF9DT05ORUNUSU9OLAorICBOTDgwMjExX1dPV0xBTl9UUklHX1dBS0VVUF9UQ1BfTUFUQ0gsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfV09XTEFOX1RSSUdfV0FLRVVQX1RDUF9DT05OTE9TVCwKLSBOTDgwMjExX1dPV0xBTl9UUklHX1dBS0VVUF9UQ1BfTk9NT1JFVE9LRU5TLAotIE5VTV9OTDgwMjExX1dPV0xBTl9UUklHLAotIE1BWF9OTDgwMjExX1dPV0xBTl9UUklHID0gTlVNX05MODAyMTFfV09XTEFOX1RSSUcgLSAxCisgIE5MODAyMTFfV09XTEFOX1RSSUdfV0FLRVVQX1RDUF9DT05OTE9TVCwKKyAgTkw4MDIxMV9XT1dMQU5fVFJJR19XQUtFVVBfVENQX05PTU9SRVRPS0VOUywKKyAgTlVNX05MODAyMTFfV09XTEFOX1RSSUcsCisgIE1BWF9OTDgwMjExX1dPV0xBTl9UUklHID0gTlVNX05MODAyMTFfV09XTEFOX1RSSUcgLSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBubDgwMjExX3dvd2xhbl90Y3BfZGF0YV9zZXEgewotIF9fdTMyIHN0YXJ0LCBvZmZzZXQsIGxlbjsKKyAgX191MzIgc3RhcnQsIG9mZnNldCwgbGVuOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgbmw4MDIxMV93b3dsYW5fdGNwX2RhdGFfdG9rZW4gewotIF9fdTMyIG9mZnNldCwgbGVuOwotIF9fdTggdG9rZW5fc3RyZWFtW107CisgIF9fdTMyIG9mZnNldCwgbGVuOworICBfX3U4IHRva2VuX3N0cmVhbVtdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgbmw4MDIxMV93b3dsYW5fdGNwX2RhdGFfdG9rZW5fZmVhdHVyZSB7Ci0gX191MzIgbWluX2xlbiwgbWF4X2xlbiwgYnVmc2l6ZTsKKyAgX191MzIgbWluX2xlbiwgbWF4X2xlbiwgYnVmc2l6ZTsKIH07CiBlbnVtIG5sODAyMTFfd293bGFuX3RjcF9hdHRycyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fTkw4MDIxMV9XT1dMQU5fVENQX0lOVkFMSUQsCi0gTkw4MDIxMV9XT1dMQU5fVENQX1NSQ19JUFY0LAotIE5MODAyMTFfV09XTEFOX1RDUF9EU1RfSVBWNCwKLSBOTDgwMjExX1dPV0xBTl9UQ1BfRFNUX01BQywKKyAgX19OTDgwMjExX1dPV0xBTl9UQ1BfSU5WQUxJRCwKKyAgTkw4MDIxMV9XT1dMQU5fVENQX1NSQ19JUFY0LAorICBOTDgwMjExX1dPV0xBTl9UQ1BfRFNUX0lQVjQsCisgIE5MODAyMTFfV09XTEFOX1RDUF9EU1RfTUFDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX1dPV0xBTl9UQ1BfU1JDX1BPUlQsCi0gTkw4MDIxMV9XT1dMQU5fVENQX0RTVF9QT1JULAotIE5MODAyMTFfV09XTEFOX1RDUF9EQVRBX1BBWUxPQUQsCi0gTkw4MDIxMV9XT1dMQU5fVENQX0RBVEFfUEFZTE9BRF9TRVEsCisgIE5MODAyMTFfV09XTEFOX1RDUF9TUkNfUE9SVCwKKyAgTkw4MDIxMV9XT1dMQU5fVENQX0RTVF9QT1JULAorICBOTDgwMjExX1dPV0xBTl9UQ1BfREFUQV9QQVlMT0FELAorICBOTDgwMjExX1dPV0xBTl9UQ1BfREFUQV9QQVlMT0FEX1NFUSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9XT1dMQU5fVENQX0RBVEFfUEFZTE9BRF9UT0tFTiwKLSBOTDgwMjExX1dPV0xBTl9UQ1BfREFUQV9JTlRFUlZBTCwKLSBOTDgwMjExX1dPV0xBTl9UQ1BfV0FLRV9QQVlMT0FELAotIE5MODAyMTFfV09XTEFOX1RDUF9XQUtFX01BU0ssCisgIE5MODAyMTFfV09XTEFOX1RDUF9EQVRBX1BBWUxPQURfVE9LRU4sCisgIE5MODAyMTFfV09XTEFOX1RDUF9EQVRBX0lOVEVSVkFMLAorICBOTDgwMjExX1dPV0xBTl9UQ1BfV0FLRV9QQVlMT0FELAorICBOTDgwMjExX1dPV0xBTl9UQ1BfV0FLRV9NQVNLLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVU1fTkw4MDIxMV9XT1dMQU5fVENQLAotIE1BWF9OTDgwMjExX1dPV0xBTl9UQ1AgPSBOVU1fTkw4MDIxMV9XT1dMQU5fVENQIC0gMQorICBOVU1fTkw4MDIxMV9XT1dMQU5fVENQLAorICBNQVhfTkw4MDIxMV9XT1dMQU5fVENQID0gTlVNX05MODAyMTFfV09XTEFOX1RDUCAtIDEKIH07CiBzdHJ1Y3Qgbmw4MDIxMV9jb2FsZXNjZV9ydWxlX3N1cHBvcnQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXhfcnVsZXM7Ci0gc3RydWN0IG5sODAyMTFfcGF0dGVybl9zdXBwb3J0IHBhdDsKLSBfX3UzMiBtYXhfZGVsYXk7CisgIF9fdTMyIG1heF9ydWxlczsKKyAgc3RydWN0IG5sODAyMTFfcGF0dGVybl9zdXBwb3J0IHBhdDsKKyAgX191MzIgbWF4X2RlbGF5OwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfYXR0cl9jb2FsZXNjZV9ydWxlIHsKLSBfX05MODAyMTFfQ09BTEVTQ0VfUlVMRV9JTlZBTElELAotIE5MODAyMTFfQVRUUl9DT0FMRVNDRV9SVUxFX0RFTEFZLAotIE5MODAyMTFfQVRUUl9DT0FMRVNDRV9SVUxFX0NPTkRJVElPTiwKKyAgX19OTDgwMjExX0NPQUxFU0NFX1JVTEVfSU5WQUxJRCwKKyAgTkw4MDIxMV9BVFRSX0NPQUxFU0NFX1JVTEVfREVMQVksCisgIE5MODAyMTFfQVRUUl9DT0FMRVNDRV9SVUxFX0NPTkRJVElPTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BVFRSX0NPQUxFU0NFX1JVTEVfUEtUX1BBVFRFUk4sCi0gTlVNX05MODAyMTFfQVRUUl9DT0FMRVNDRV9SVUxFLAotIE5MODAyMTFfQVRUUl9DT0FMRVNDRV9SVUxFX01BWCA9IE5VTV9OTDgwMjExX0FUVFJfQ09BTEVTQ0VfUlVMRSAtIDEKKyAgTkw4MDIxMV9BVFRSX0NPQUxFU0NFX1JVTEVfUEtUX1BBVFRFUk4sCisgIE5VTV9OTDgwMjExX0FUVFJfQ09BTEVTQ0VfUlVMRSwKKyAgTkw4MDIxMV9BVFRSX0NPQUxFU0NFX1JVTEVfTUFYID0gTlVNX05MODAyMTFfQVRUUl9DT0FMRVNDRV9SVUxFIC0gMQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG5sODAyMTFfY29hbGVzY2VfY29uZGl0aW9uIHsKLSBOTDgwMjExX0NPQUxFU0NFX0NPTkRJVElPTl9NQVRDSCwKLSBOTDgwMjExX0NPQUxFU0NFX0NPTkRJVElPTl9OT19NQVRDSAorICBOTDgwMjExX0NPQUxFU0NFX0NPTkRJVElPTl9NQVRDSCwKKyAgTkw4MDIxMV9DT0FMRVNDRV9DT05ESVRJT05fTk9fTUFUQ0gKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX2lmYWNlX2xpbWl0X2F0dHJzIHsKLSBOTDgwMjExX0lGQUNFX0xJTUlUX1VOU1BFQywKLSBOTDgwMjExX0lGQUNFX0xJTUlUX01BWCwKLSBOTDgwMjExX0lGQUNFX0xJTUlUX1RZUEVTLAorICBOTDgwMjExX0lGQUNFX0xJTUlUX1VOU1BFQywKKyAgTkw4MDIxMV9JRkFDRV9MSU1JVF9NQVgsCisgIE5MODAyMTFfSUZBQ0VfTElNSVRfVFlQRVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VTV9OTDgwMjExX0lGQUNFX0xJTUlULAotIE1BWF9OTDgwMjExX0lGQUNFX0xJTUlUID0gTlVNX05MODAyMTFfSUZBQ0VfTElNSVQgLSAxCisgIE5VTV9OTDgwMjExX0lGQUNFX0xJTUlULAorICBNQVhfTkw4MDIxMV9JRkFDRV9MSU1JVCA9IE5VTV9OTDgwMjExX0lGQUNFX0xJTUlUIC0gMQogfTsKIGVudW0gbmw4MDIxMV9pZl9jb21iaW5hdGlvbl9hdHRycyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfSUZBQ0VfQ09NQl9VTlNQRUMsCi0gTkw4MDIxMV9JRkFDRV9DT01CX0xJTUlUUywKLSBOTDgwMjExX0lGQUNFX0NPTUJfTUFYTlVNLAotIE5MODAyMTFfSUZBQ0VfQ09NQl9TVEFfQVBfQklfTUFUQ0gsCisgIE5MODAyMTFfSUZBQ0VfQ09NQl9VTlNQRUMsCisgIE5MODAyMTFfSUZBQ0VfQ09NQl9MSU1JVFMsCisgIE5MODAyMTFfSUZBQ0VfQ09NQl9NQVhOVU0sCisgIE5MODAyMTFfSUZBQ0VfQ09NQl9TVEFfQVBfQklfTUFUQ0gsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfSUZBQ0VfQ09NQl9OVU1fQ0hBTk5FTFMsCi0gTkw4MDIxMV9JRkFDRV9DT01CX1JBREFSX0RFVEVDVF9XSURUSFMsCi0gTlVNX05MODAyMTFfSUZBQ0VfQ09NQiwKLSBNQVhfTkw4MDIxMV9JRkFDRV9DT01CID0gTlVNX05MODAyMTFfSUZBQ0VfQ09NQiAtIDEKKyAgTkw4MDIxMV9JRkFDRV9DT01CX05VTV9DSEFOTkVMUywKKyAgTkw4MDIxMV9JRkFDRV9DT01CX1JBREFSX0RFVEVDVF9XSURUSFMsCisgIE5MODAyMTFfSUZBQ0VfQ09NQl9SQURBUl9ERVRFQ1RfUkVHSU9OUywKKyAgTlVNX05MODAyMTFfSUZBQ0VfQ09NQiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE1BWF9OTDgwMjExX0lGQUNFX0NPTUIgPSBOVU1fTkw4MDIxMV9JRkFDRV9DT01CIC0gMQogfTsKIGVudW0gbmw4MDIxMV9wbGlua19zdGF0ZSB7Ci0gTkw4MDIxMV9QTElOS19MSVNURU4sCi0gTkw4MDIxMV9QTElOS19PUE5fU05ULAorICBOTDgwMjExX1BMSU5LX0xJU1RFTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9QTElOS19PUE5fUkNWRCwKLSBOTDgwMjExX1BMSU5LX0NORl9SQ1ZELAotIE5MODAyMTFfUExJTktfRVNUQUIsCi0gTkw4MDIxMV9QTElOS19IT0xESU5HLAorICBOTDgwMjExX1BMSU5LX09QTl9TTlQsCisgIE5MODAyMTFfUExJTktfT1BOX1JDVkQsCisgIE5MODAyMTFfUExJTktfQ05GX1JDVkQsCisgIE5MODAyMTFfUExJTktfRVNUQUIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfUExJTktfQkxPQ0tFRCwKLSBOVU1fTkw4MDIxMV9QTElOS19TVEFURVMsCi0gTUFYX05MODAyMTFfUExJTktfU1RBVEVTID0gTlVNX05MODAyMTFfUExJTktfU1RBVEVTIC0gMQorICBOTDgwMjExX1BMSU5LX0hPTERJTkcsCisgIE5MODAyMTFfUExJTktfQkxPQ0tFRCwKKyAgTlVNX05MODAyMTFfUExJTktfU1RBVEVTLAorICBNQVhfTkw4MDIxMV9QTElOS19TVEFURVMgPSBOVU1fTkw4MDIxMV9QTElOS19TVEFURVMgLSAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHBsaW5rX2FjdGlvbnMgewotIE5MODAyMTFfUExJTktfQUNUSU9OX05PX0FDVElPTiwKLSBOTDgwMjExX1BMSU5LX0FDVElPTl9PUEVOLAotIE5MODAyMTFfUExJTktfQUNUSU9OX0JMT0NLLAorICBOTDgwMjExX1BMSU5LX0FDVElPTl9OT19BQ1RJT04sCisgIE5MODAyMTFfUExJTktfQUNUSU9OX09QRU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VTV9OTDgwMjExX1BMSU5LX0FDVElPTlMsCisgIE5MODAyMTFfUExJTktfQUNUSU9OX0JMT0NLLAorICBOVU1fTkw4MDIxMV9QTElOS19BQ1RJT05TLAogfTsKICNkZWZpbmUgTkw4MDIxMV9LQ0tfTEVOIDE2Ci0jZGVmaW5lIE5MODAyMTFfS0VLX0xFTiAxNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTkw4MDIxMV9LRUtfTEVOIDE2CiAjZGVmaW5lIE5MODAyMTFfUkVQTEFZX0NUUl9MRU4gOAogZW51bSBubDgwMjExX3Jla2V5X2RhdGEgewotIF9fTkw4MDIxMV9SRUtFWV9EQVRBX0lOVkFMSUQsCi0gTkw4MDIxMV9SRUtFWV9EQVRBX0tFSywKKyAgX19OTDgwMjExX1JFS0VZX0RBVEFfSU5WQUxJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9SRUtFWV9EQVRBX0tDSywKLSBOTDgwMjExX1JFS0VZX0RBVEFfUkVQTEFZX0NUUiwKLSBOVU1fTkw4MDIxMV9SRUtFWV9EQVRBLAotIE1BWF9OTDgwMjExX1JFS0VZX0RBVEEgPSBOVU1fTkw4MDIxMV9SRUtFWV9EQVRBIC0gMQorICBOTDgwMjExX1JFS0VZX0RBVEFfS0VLLAorICBOTDgwMjExX1JFS0VZX0RBVEFfS0NLLAorICBOTDgwMjExX1JFS0VZX0RBVEFfUkVQTEFZX0NUUiwKKyAgTlVNX05MODAyMTFfUkVLRVlfREFUQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE1BWF9OTDgwMjExX1JFS0VZX0RBVEEgPSBOVU1fTkw4MDIxMV9SRUtFWV9EQVRBIC0gMQogfTsKIGVudW0gbmw4MDIxMV9oaWRkZW5fc3NpZCB7Ci0gTkw4MDIxMV9ISURERU5fU1NJRF9OT1RfSU5fVVNFLAotIE5MODAyMTFfSElEREVOX1NTSURfWkVST19MRU4sCisgIE5MODAyMTFfSElEREVOX1NTSURfTk9UX0lOX1VTRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9ISURERU5fU1NJRF9aRVJPX0NPTlRFTlRTCisgIE5MODAyMTFfSElEREVOX1NTSURfWkVST19MRU4sCisgIE5MODAyMTFfSElEREVOX1NTSURfWkVST19DT05URU5UUwogfTsKIGVudW0gbmw4MDIxMV9zdGFfd21lX2F0dHIgewotIF9fTkw4MDIxMV9TVEFfV01FX0lOVkFMSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfU1RBX1dNRV9VQVBTRF9RVUVVRVMsCi0gTkw4MDIxMV9TVEFfV01FX01BWF9TUCwKLSBfX05MODAyMTFfU1RBX1dNRV9BRlRFUl9MQVNULAotIE5MODAyMTFfU1RBX1dNRV9NQVggPSBfX05MODAyMTFfU1RBX1dNRV9BRlRFUl9MQVNUIC0gMQorICBfX05MODAyMTFfU1RBX1dNRV9JTlZBTElELAorICBOTDgwMjExX1NUQV9XTUVfVUFQU0RfUVVFVUVTLAorICBOTDgwMjExX1NUQV9XTUVfTUFYX1NQLAorICBfX05MODAyMTFfU1RBX1dNRV9BRlRFUl9MQVNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkw4MDIxMV9TVEFfV01FX01BWCA9IF9fTkw4MDIxMV9TVEFfV01FX0FGVEVSX0xBU1QgLSAxCiB9OwogZW51bSBubDgwMjExX3Bta3NhX2NhbmRpZGF0ZV9hdHRyIHsKLSBfX05MODAyMTFfUE1LU0FfQ0FORElEQVRFX0lOVkFMSUQsCi0gTkw4MDIxMV9QTUtTQV9DQU5ESURBVEVfSU5ERVgsCisgIF9fTkw4MDIxMV9QTUtTQV9DQU5ESURBVEVfSU5WQUxJRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9QTUtTQV9DQU5ESURBVEVfQlNTSUQsCi0gTkw4MDIxMV9QTUtTQV9DQU5ESURBVEVfUFJFQVVUSCwKLSBOVU1fTkw4MDIxMV9QTUtTQV9DQU5ESURBVEUsCi0gTUFYX05MODAyMTFfUE1LU0FfQ0FORElEQVRFID0gTlVNX05MODAyMTFfUE1LU0FfQ0FORElEQVRFIC0gMQorICBOTDgwMjExX1BNS1NBX0NBTkRJREFURV9JTkRFWCwKKyAgTkw4MDIxMV9QTUtTQV9DQU5ESURBVEVfQlNTSUQsCisgIE5MODAyMTFfUE1LU0FfQ0FORElEQVRFX1BSRUFVVEgsCisgIE5VTV9OTDgwMjExX1BNS1NBX0NBTkRJREFURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE1BWF9OTDgwMjExX1BNS1NBX0NBTkRJREFURSA9IE5VTV9OTDgwMjExX1BNS1NBX0NBTkRJREFURSAtIDEKIH07CiBlbnVtIG5sODAyMTFfdGRsc19vcGVyYXRpb24gewotIE5MODAyMTFfVERMU19ESVNDT1ZFUllfUkVRLAotIE5MODAyMTFfVERMU19TRVRVUCwKKyAgTkw4MDIxMV9URExTX0RJU0NPVkVSWV9SRVEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfVERMU19URUFSRE9XTiwKLSBOTDgwMjExX1RETFNfRU5BQkxFX0xJTkssCi0gTkw4MDIxMV9URExTX0RJU0FCTEVfTElOSywKKyAgTkw4MDIxMV9URExTX1NFVFVQLAorICBOTDgwMjExX1RETFNfVEVBUkRPV04sCisgIE5MODAyMTFfVERMU19FTkFCTEVfTElOSywKKyAgTkw4MDIxMV9URExTX0RJU0FCTEVfTElOSywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV9mZWF0dXJlX2ZsYWdzIHsKLSBOTDgwMjExX0ZFQVRVUkVfU0tfVFhfU1RBVFVTID0gMSA8PCAwLAotIE5MODAyMTFfRkVBVFVSRV9IVF9JQlNTID0gMSA8PCAxLAotIE5MODAyMTFfRkVBVFVSRV9JTkFDVElWSVRZX1RJTUVSID0gMSA8PCAyLAorICBOTDgwMjExX0ZFQVRVUkVfU0tfVFhfU1RBVFVTID0gMSA8PCAwLAorICBOTDgwMjExX0ZFQVRVUkVfSFRfSUJTUyA9IDEgPDwgMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9GRUFUVVJFX0NFTExfQkFTRV9SRUdfSElOVFMgPSAxIDw8IDMsCi0gTkw4MDIxMV9GRUFUVVJFX1AyUF9ERVZJQ0VfTkVFRFNfQ0hBTk5FTCA9IDEgPDwgNCwKLSBOTDgwMjExX0ZFQVRVUkVfU0FFID0gMSA8PCA1LAotIE5MODAyMTFfRkVBVFVSRV9MT1dfUFJJT1JJVFlfU0NBTiA9IDEgPDwgNiwKKyAgTkw4MDIxMV9GRUFUVVJFX0lOQUNUSVZJVFlfVElNRVIgPSAxIDw8IDIsCisgIE5MODAyMTFfRkVBVFVSRV9DRUxMX0JBU0VfUkVHX0hJTlRTID0gMSA8PCAzLAorICBOTDgwMjExX0ZFQVRVUkVfUDJQX0RFVklDRV9ORUVEU19DSEFOTkVMID0gMSA8PCA0LAorICBOTDgwMjExX0ZFQVRVUkVfU0FFID0gMSA8PCA1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0ZFQVRVUkVfU0NBTl9GTFVTSCA9IDEgPDwgNywKLSBOTDgwMjExX0ZFQVRVUkVfQVBfU0NBTiA9IDEgPDwgOCwKLSBOTDgwMjExX0ZFQVRVUkVfVklGX1RYUE9XRVIgPSAxIDw8IDksCi0gTkw4MDIxMV9GRUFUVVJFX05FRURfT0JTU19TQ0FOID0gMSA8PCAxMCwKKyAgTkw4MDIxMV9GRUFUVVJFX0xPV19QUklPUklUWV9TQ0FOID0gMSA8PCA2LAorICBOTDgwMjExX0ZFQVRVUkVfU0NBTl9GTFVTSCA9IDEgPDwgNywKKyAgTkw4MDIxMV9GRUFUVVJFX0FQX1NDQU4gPSAxIDw8IDgsCisgIE5MODAyMTFfRkVBVFVSRV9WSUZfVFhQT1dFUiA9IDEgPDwgOSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9GRUFUVVJFX1AyUF9HT19DVFdJTiA9IDEgPDwgMTEsCi0gTkw4MDIxMV9GRUFUVVJFX1AyUF9HT19PUFBQUyA9IDEgPDwgMTIsCi0gTkw4MDIxMV9GRUFUVVJFX0FEVkVSVElTRV9DSEFOX0xJTUlUUyA9IDEgPDwgMTQsCi0gTkw4MDIxMV9GRUFUVVJFX0ZVTExfQVBfQ0xJRU5UX1NUQVRFID0gMSA8PCAxNSwKKyAgTkw4MDIxMV9GRUFUVVJFX05FRURfT0JTU19TQ0FOID0gMSA8PCAxMCwKKyAgTkw4MDIxMV9GRUFUVVJFX1AyUF9HT19DVFdJTiA9IDEgPDwgMTEsCisgIE5MODAyMTFfRkVBVFVSRV9QMlBfR09fT1BQUFMgPSAxIDw8IDEyLAorICBOTDgwMjExX0ZFQVRVUkVfQURWRVJUSVNFX0NIQU5fTElNSVRTID0gMSA8PCAxNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9GRUFUVVJFX1VTRVJTUEFDRV9NUE0gPSAxIDw8IDE2LAotIE5MODAyMTFfRkVBVFVSRV9BQ1RJVkVfTU9OSVRPUiA9IDEgPDwgMTcsCisgIE5MODAyMTFfRkVBVFVSRV9GVUxMX0FQX0NMSUVOVF9TVEFURSA9IDEgPDwgMTUsCisgIE5MODAyMTFfRkVBVFVSRV9VU0VSU1BBQ0VfTVBNID0gMSA8PCAxNiwKKyAgTkw4MDIxMV9GRUFUVVJFX0FDVElWRV9NT05JVE9SID0gMSA8PCAxNywKKyAgTkw4MDIxMV9GRUFUVVJFX0FQX01PREVfQ0hBTl9XSURUSF9DSEFOR0UgPSAxIDw8IDE4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkw4MDIxMV9GRUFUVVJFX0RTX1BBUkFNX1NFVF9JRV9JTl9QUk9CRVMgPSAxIDw8IDE5LAorICBOTDgwMjExX0ZFQVRVUkVfV0ZBX1RQQ19JRV9JTl9QUk9CRVMgPSAxIDw8IDIwLAorICBOTDgwMjExX0ZFQVRVUkVfUVVJRVQgPSAxIDw8IDIxLAorICBOTDgwMjExX0ZFQVRVUkVfVFhfUE9XRVJfSU5TRVJUSU9OID0gMSA8PCAyMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5MODAyMTFfRkVBVFVSRV9BQ0tUT19FU1RJTUFUSU9OID0gMSA8PCAyMywKKyAgTkw4MDIxMV9GRUFUVVJFX1NUQVRJQ19TTVBTID0gMSA8PCAyNCwKKyAgTkw4MDIxMV9GRUFUVVJFX0RZTkFNSUNfU01QUyA9IDEgPDwgMjUsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV9wcm9iZV9yZXNwX29mZmxvYWRfc3VwcG9ydF9hdHRyIHsKKyAgTkw4MDIxMV9QUk9CRV9SRVNQX09GRkxPQURfU1VQUE9SVF9XUFMgPSAxIDw8IDAsCisgIE5MODAyMTFfUFJPQkVfUkVTUF9PRkZMT0FEX1NVUFBPUlRfV1BTMiA9IDEgPDwgMSwKKyAgTkw4MDIxMV9QUk9CRV9SRVNQX09GRkxPQURfU1VQUE9SVF9QMlAgPSAxIDw8IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfUFJPQkVfUkVTUF9PRkZMT0FEX1NVUFBPUlRfV1BTID0gMTw8MCwKLSBOTDgwMjExX1BST0JFX1JFU1BfT0ZGTE9BRF9TVVBQT1JUX1dQUzIgPSAxPDwxLAotIE5MODAyMTFfUFJPQkVfUkVTUF9PRkZMT0FEX1NVUFBPUlRfUDJQID0gMTw8MiwKLSBOTDgwMjExX1BST0JFX1JFU1BfT0ZGTE9BRF9TVVBQT1JUXzgwMjExVSA9IDE8PDMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBOTDgwMjExX1BST0JFX1JFU1BfT0ZGTE9BRF9TVVBQT1JUXzgwMjExVSA9IDEgPDwgMywKIH07CiBlbnVtIG5sODAyMTFfY29ubmVjdF9mYWlsZWRfcmVhc29uIHsKLSBOTDgwMjExX0NPTk5fRkFJTF9NQVhfQ0xJRU5UUywKLSBOTDgwMjExX0NPTk5fRkFJTF9CTE9DS0VEX0NMSUVOVCwKKyAgTkw4MDIxMV9DT05OX0ZBSUxfTUFYX0NMSUVOVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBOTDgwMjExX0NPTk5fRkFJTF9CTE9DS0VEX0NMSUVOVCwKIH07CiBlbnVtIG5sODAyMTFfc2Nhbl9mbGFncyB7Ci0gTkw4MDIxMV9TQ0FOX0ZMQUdfTE9XX1BSSU9SSVRZID0gMTw8MCwKLSBOTDgwMjExX1NDQU5fRkxBR19GTFVTSCA9IDE8PDEsCisgIE5MODAyMTFfU0NBTl9GTEFHX0xPV19QUklPUklUWSA9IDEgPDwgMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9TQ0FOX0ZMQUdfQVAgPSAxPDwyLAorICBOTDgwMjExX1NDQU5fRkxBR19GTFVTSCA9IDEgPDwgMSwKKyAgTkw4MDIxMV9TQ0FOX0ZMQUdfQVAgPSAxIDw8IDIsCiB9OwogZW51bSBubDgwMjExX2FjbF9wb2xpY3kgewotIE5MODAyMTFfQUNMX1BPTElDWV9BQ0NFUFRfVU5MRVNTX0xJU1RFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkw4MDIxMV9BQ0xfUE9MSUNZX0RFTllfVU5MRVNTX0xJU1RFRCwKKyAgTkw4MDIxMV9BQ0xfUE9MSUNZX0FDQ0VQVF9VTkxFU1NfTElTVEVELAorICBOTDgwMjExX0FDTF9QT0xJQ1lfREVOWV9VTkxFU1NfTElTVEVELAorfTsKK2VudW0gbmw4MDIxMV9zbXBzX21vZGUgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkw4MDIxMV9TTVBTX09GRiwKKyAgTkw4MDIxMV9TTVBTX1NUQVRJQywKKyAgTkw4MDIxMV9TTVBTX0RZTkFNSUMsCisgIF9fTkw4MDIxMV9TTVBTX0FGVEVSX0xBU1QsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBOTDgwMjExX1NNUFNfTUFYID0gX19OTDgwMjExX1NNUFNfQUZURVJfTEFTVCAtIDEKIH07CiBlbnVtIG5sODAyMTFfcmFkYXJfZXZlbnQgewotIE5MODAyMTFfUkFEQVJfREVURUNURUQsCisgIE5MODAyMTFfUkFEQVJfREVURUNURUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5MODAyMTFfUkFEQVJfQ0FDX0ZJTklTSEVELAotIE5MODAyMTFfUkFEQVJfQ0FDX0FCT1JURUQsCi0gTkw4MDIxMV9SQURBUl9OT1BfRklOSVNIRUQsCisgIE5MODAyMTFfUkFEQVJfQ0FDX0ZJTklTSEVELAorICBOTDgwMjExX1JBREFSX0NBQ19BQk9SVEVELAorICBOTDgwMjExX1JBREFSX05PUF9GSU5JU0hFRCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX2Rmc19zdGF0ZSB7Ci0gTkw4MDIxMV9ERlNfVVNBQkxFLAotIE5MODAyMTFfREZTX1VOQVZBSUxBQkxFLAotIE5MODAyMTFfREZTX0FWQUlMQUJMRSwKKyAgTkw4MDIxMV9ERlNfVVNBQkxFLAorICBOTDgwMjExX0RGU19VTkFWQUlMQUJMRSwKKyAgTkw4MDIxMV9ERlNfQVZBSUxBQkxFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG5sODAyMTFfcHJvdG9jb2xfZmVhdHVyZXMgewotIE5MODAyMTFfUFJPVE9DT0xfRkVBVFVSRV9TUExJVF9XSVBIWV9EVU1QID0gMSA8PCAwLAorICBOTDgwMjExX1BST1RPQ09MX0ZFQVRVUkVfU1BMSVRfV0lQSFlfRFVNUCA9IDEgPDwgMCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBubDgwMjExX2NyaXRfcHJvdG9faWQgewotIE5MODAyMTFfQ1JJVF9QUk9UT19VTlNQRUMsCi0gTkw4MDIxMV9DUklUX1BST1RPX0RIQ1AsCi0gTkw4MDIxMV9DUklUX1BST1RPX0VBUE9MLAorICBOTDgwMjExX0NSSVRfUFJPVE9fVU5TUEVDLAorICBOTDgwMjExX0NSSVRfUFJPVE9fREhDUCwKKyAgTkw4MDIxMV9DUklUX1BST1RPX0VBUE9MLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOTDgwMjExX0NSSVRfUFJPVE9fQVBJUEEsCi0gTlVNX05MODAyMTFfQ1JJVF9QUk9UTworICBOTDgwMjExX0NSSVRfUFJPVE9fQVBJUEEsCisgIE5VTV9OTDgwMjExX0NSSVRfUFJPVE8KIH07CiAjZGVmaW5lIE5MODAyMTFfQ1JJVF9QUk9UT19NQVhfRFVSQVRJT04gNTAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbmw4MDIxMV9yeG1nbXRfZmxhZ3MgewotIE5MODAyMTFfUlhNR01UX0ZMQUdfQU5TV0VSRUQgPSAxIDw8IDAsCisgIE5MODAyMTFfUlhNR01UX0ZMQUdfQU5TV0VSRUQgPSAxIDw8IDAsCiB9OwogI2RlZmluZSBOTDgwMjExX1ZFTkRPUl9JRF9JU19MSU5VWCAweDgwMDAwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5sODAyMTFfdmVuZG9yX2NtZF9pbmZvIHsKLSBfX3UzMiB2ZW5kb3JfaWQ7Ci0gX191MzIgc3ViY21kOworICBfX3UzMiB2ZW5kb3JfaWQ7CisgIF9fdTMyIHN1YmNtZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworZW51bSBubDgwMjExX3RkbHNfcGVlcl9jYXBhYmlsaXR5IHsKKyAgTkw4MDIxMV9URExTX1BFRVJfSFQgPSAxIDw8IDAsCisgIE5MODAyMTFfVERMU19QRUVSX1ZIVCA9IDEgPDwgMSwKKyAgTkw4MDIxMV9URExTX1BFRVJfV01NID0gMSA8PCAyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbnVidXMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbnVidXMuaAppbmRleCA0NmQ2YWJjLi5kYWVlNjVmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L251YnVzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9udWJ1cy5oCkBAIC0yMSwxODggKzIxLDE4NSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIG51YnVzX2NhdGVnb3J5IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfQ0FUX0JPQVJEID0gMHgwMDAxLAotIE5VQlVTX0NBVF9ESVNQTEFZID0gMHgwMDAzLAotIE5VQlVTX0NBVF9ORVRXT1JLID0gMHgwMDA0LAotIE5VQlVTX0NBVF9DT01NVU5JQ0FUSU9OUyA9IDB4MDAwNiwKKyAgTlVCVVNfQ0FUX0JPQVJEID0gMHgwMDAxLAorICBOVUJVU19DQVRfRElTUExBWSA9IDB4MDAwMywKKyAgTlVCVVNfQ0FUX05FVFdPUksgPSAweDAwMDQsCisgIE5VQlVTX0NBVF9DT01NVU5JQ0FUSU9OUyA9IDB4MDAwNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfQ0FUX0ZPTlQgPSAweDAwMDksCi0gTlVCVVNfQ0FUX0NQVSA9IDB4MDAwQSwKLSBOVUJVU19DQVRfRFVPRE9DSyA9IDB4MDAyMAorICBOVUJVU19DQVRfRk9OVCA9IDB4MDAwOSwKKyAgTlVCVVNfQ0FUX0NQVSA9IDB4MDAwQSwKKyAgTlVCVVNfQ0FUX0RVT0RPQ0sgPSAweDAwMjAKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBudWJ1c190eXBlX25ldHdvcmsgewotIE5VQlVTX1RZUEVfRVRIRVJORVQgPSAweDAwMDEsCi0gTlVCVVNfVFlQRV9SUzIzMiA9IDB4MDAwMgorICBOVUJVU19UWVBFX0VUSEVSTkVUID0gMHgwMDAxLAorICBOVUJVU19UWVBFX1JTMjMyID0gMHgwMDAyCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbnVidXNfdHlwZV9kaXNwbGF5IHsKLSBOVUJVU19UWVBFX1ZJREVPID0gMHgwMDAxCisgIE5VQlVTX1RZUEVfVklERU8gPSAweDAwMDEKIH07CiBlbnVtIG51YnVzX3R5cGVfY3B1IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfVFlQRV82ODAyMCA9IDB4MDAwMywKLSBOVUJVU19UWVBFXzY4MDMwID0gMHgwMDA0LAotIE5VQlVTX1RZUEVfNjgwNDAgPSAweDAwMDUKKyAgTlVCVVNfVFlQRV82ODAyMCA9IDB4MDAwMywKKyAgTlVCVVNfVFlQRV82ODAzMCA9IDB4MDAwNCwKKyAgTlVCVVNfVFlQRV82ODA0MCA9IDB4MDAwNQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG51YnVzX2Ryc3cgewotIE5VQlVTX0RSU1dfQVBQTEUgPSAweDAwMDEsCi0gTlVCVVNfRFJTV19BUFBMRV9ISVJFUyA9IDB4MDAxMywKLSBOVUJVU19EUlNXXzNDT00gPSAweDAwMDAsCisgIE5VQlVTX0RSU1dfQVBQTEUgPSAweDAwMDEsCisgIE5VQlVTX0RSU1dfQVBQTEVfSElSRVMgPSAweDAwMTMsCisgIE5VQlVTX0RSU1dfM0NPTSA9IDB4MDAwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfRFJTV19DQUJMRVRST04gPSAweDAwMDEsCi0gTlVCVVNfRFJTV19TT05JQ19MQyA9IDB4MDAwMSwKLSBOVUJVU19EUlNXX0tJTkVUSUNTID0gMHgwMTAzLAotIE5VQlVTX0RSU1dfQVNBTlRFID0gMHgwMTA0LAorICBOVUJVU19EUlNXX0NBQkxFVFJPTiA9IDB4MDAwMSwKKyAgTlVCVVNfRFJTV19TT05JQ19MQyA9IDB4MDAwMSwKKyAgTlVCVVNfRFJTV19LSU5FVElDUyA9IDB4MDEwMywKKyAgTlVCVVNfRFJTV19BU0FOVEUgPSAweDAxMDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0RSU1dfVEVDSFdPUktTID0gMHgwMTA5LAotIE5VQlVTX0RSU1dfREFZTkEgPSAweDAxMGIsCi0gTlVCVVNfRFJTV19GQVJBTExPTiA9IDB4MDEwYywKLSBOVUJVU19EUlNXX0FQUExFX1NOID0gMHgwMTBmLAorICBOVUJVU19EUlNXX1RFQ0hXT1JLUyA9IDB4MDEwOSwKKyAgTlVCVVNfRFJTV19EQVlOQSA9IDB4MDEwYiwKKyAgTlVCVVNfRFJTV19GQVJBTExPTiA9IDB4MDEwYywKKyAgTlVCVVNfRFJTV19BUFBMRV9TTiA9IDB4MDEwZiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfRFJTV19EQVlOQTIgPSAweDAxMTUsCi0gTlVCVVNfRFJTV19GT0NVUyA9IDB4MDExYSwKLSBOVUJVU19EUlNXX0FTQU5URV9DUyA9IDB4MDExZCwKLSBOVUJVU19EUlNXX0RBWU5BX0xDID0gMHgwMTFlLAorICBOVUJVU19EUlNXX0RBWU5BMiA9IDB4MDExNSwKKyAgTlVCVVNfRFJTV19GT0NVUyA9IDB4MDExYSwKKyAgTlVCVVNfRFJTV19BU0FOVEVfQ1MgPSAweDAxMWQsCisgIE5VQlVTX0RSU1dfREFZTkFfTEMgPSAweDAxMWUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0RSU1dfTk9ORSA9IDB4MDAwMCwKKyAgTlVCVVNfRFJTV19OT05FID0gMHgwMDAwLAogfTsKIGVudW0gbnVidXNfZHJodyB7Ci0gTlVCVVNfRFJIV19BUFBMRV9URkIgPSAweDAwMDEsCisgIE5VQlVTX0RSSFdfQVBQTEVfVEZCID0gMHgwMDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVUJVU19EUkhXX0FQUExFX1dWQyA9IDB4MDAwNiwKLSBOVUJVU19EUkhXX1NJR01BX0NMUk1BWCA9IDB4MDAwNywKLSBOVUJVU19EUkhXX0FQUExFX1NFMzAgPSAweDAwMDksCi0gTlVCVVNfRFJIV19BUFBMRV9IUlZDID0gMHgwMDEzLAorICBOVUJVU19EUkhXX0FQUExFX1dWQyA9IDB4MDAwNiwKKyAgTlVCVVNfRFJIV19TSUdNQV9DTFJNQVggPSAweDAwMDcsCisgIE5VQlVTX0RSSFdfQVBQTEVfU0UzMCA9IDB4MDAwOSwKKyAgTlVCVVNfRFJIV19BUFBMRV9IUlZDID0gMHgwMDEzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVUJVU19EUkhXX0FQUExFX1BWQyA9IDB4MDAxNywKLSBOVUJVU19EUkhXX0FQUExFX1JCVjEgPSAweDAwMTgsCi0gTlVCVVNfRFJIV19BUFBMRV9NREMgPSAweDAwMTksCi0gTlVCVVNfRFJIV19BUFBMRV9TT05PUkEgPSAweDAwMjIsCisgIE5VQlVTX0RSSFdfQVBQTEVfUFZDID0gMHgwMDE3LAorICBOVUJVU19EUkhXX0FQUExFX1JCVjEgPSAweDAwMTgsCisgIE5VQlVTX0RSSFdfQVBQTEVfTURDID0gMHgwMDE5LAorICBOVUJVU19EUkhXX0FQUExFX1NPTk9SQSA9IDB4MDAyMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfRFJIV19BUFBMRV8yNEFDID0gMHgwMDJiLAotIE5VQlVTX0RSSFdfQVBQTEVfVkFMS1lSSUUgPSAweDAwMmUsCi0gTlVCVVNfRFJIV19BUFBMRV9KRVQgPSAweDAwMjksCi0gTlVCVVNfRFJIV19TTUFDX0dGWCA9IDB4MDEwNSwKKyAgTlVCVVNfRFJIV19BUFBMRV8yNEFDID0gMHgwMDJiLAorICBOVUJVU19EUkhXX0FQUExFX1ZBTEtZUklFID0gMHgwMDJlLAorICBOVUJVU19EUkhXX0FQUExFX0pFVCA9IDB4MDAyOSwKKyAgTlVCVVNfRFJIV19TTUFDX0dGWCA9IDB4MDEwNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfRFJIV19SQVNURVJfQ0IyNjQgPSAweDAxM0IsCi0gTlVCVVNfRFJIV19NSUNST05fWENFRUQgPSAweDAxNDYsCi0gTlVCVVNfRFJIV19SRElVU19HU0MgPSAweDAxNTMsCi0gTlVCVVNfRFJIV19TTUFDX1NQRUM4ID0gMHgwMTdCLAorICBOVUJVU19EUkhXX1JBU1RFUl9DQjI2NCA9IDB4MDEzQiwKKyAgTlVCVVNfRFJIV19NSUNST05fWENFRUQgPSAweDAxNDYsCisgIE5VQlVTX0RSSFdfUkRJVVNfR1NDID0gMHgwMTUzLAorICBOVUJVU19EUkhXX1NNQUNfU1BFQzggPSAweDAxN0IsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0RSSFdfU01BQ19TUEVDMjQgPSAweDAxN0MsCi0gTlVCVVNfRFJIV19SQVNURVJfQ0IzNjQgPSAweDAyNkYsCi0gTlVCVVNfRFJIV19SRElVU19EQ0dYID0gMHgwMjdDLAotIE5VQlVTX0RSSFdfUkRJVVNfUEM4ID0gMHgwMjkxLAorICBOVUJVU19EUkhXX1NNQUNfU1BFQzI0ID0gMHgwMTdDLAorICBOVUJVU19EUkhXX1JBU1RFUl9DQjM2NCA9IDB4MDI2RiwKKyAgTlVCVVNfRFJIV19SRElVU19EQ0dYID0gMHgwMjdDLAorICBOVUJVU19EUkhXX1JESVVTX1BDOCA9IDB4MDI5MSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfRFJIV19MQVBJU19QQ1M4ID0gMHgwMjkyLAotIE5VQlVTX0RSSFdfUkFTVEVSXzI0WExJID0gMHgwMkEwLAotIE5VQlVTX0RSSFdfUkFTVEVSX1BCUEdUID0gMHgwMkE1LAotIE5VQlVTX0RSSFdfRU1BQ0hfRlNYID0gMHgwMkFFLAorICBOVUJVU19EUkhXX0xBUElTX1BDUzggPSAweDAyOTIsCisgIE5VQlVTX0RSSFdfUkFTVEVSXzI0WExJID0gMHgwMkEwLAorICBOVUJVU19EUkhXX1JBU1RFUl9QQlBHVCA9IDB4MDJBNSwKKyAgTlVCVVNfRFJIV19FTUFDSF9GU1ggPSAweDAyQUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0RSSFdfUkFTVEVSXzI0WExUViA9IDB4MDJCNywKLSBOVUJVU19EUkhXX1NNQUNfVEhVTkQyNCA9IDB4MDJDQiwKLSBOVUJVU19EUkhXX1NNQUNfVEhVTkRMR0hUID0gMHgwM0Q5LAotIE5VQlVTX0RSSFdfUkRJVVNfUEMyNFhQID0gMHgwNDA2LAorICBOVUJVU19EUkhXX1JBU1RFUl8yNFhMVFYgPSAweDAyQjcsCisgIE5VQlVTX0RSSFdfU01BQ19USFVORDI0ID0gMHgwMkNCLAorICBOVUJVU19EUkhXX1NNQUNfVEhVTkRMR0hUID0gMHgwM0Q5LAorICBOVUJVU19EUkhXX1JESVVTX1BDMjRYUCA9IDB4MDQwNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfRFJIV19SRElVU19QQzI0WCA9IDB4MDQwQSwKLSBOVUJVU19EUkhXX1JESVVTX1BDOFhKID0gMHgwNDBCLAotIE5VQlVTX0RSSFdfSU5URVJMQU4gPSAweDAxMDAsCi0gTlVCVVNfRFJIV19TTUM5MTk0ID0gMHgwMTAxLAorICBOVUJVU19EUkhXX1JESVVTX1BDMjRYID0gMHgwNDBBLAorICBOVUJVU19EUkhXX1JESVVTX1BDOFhKID0gMHgwNDBCLAorICBOVUJVU19EUkhXX0lOVEVSTEFOID0gMHgwMTAwLAorICBOVUJVU19EUkhXX1NNQzkxOTQgPSAweDAxMDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0RSSFdfS0lORVRJQ1MgPSAweDAxMDYsCi0gTlVCVVNfRFJIV19DQUJMRVRST04gPSAweDAxMDksCi0gTlVCVVNfRFJIV19BU0FOVEVfTEMgPSAweDAxMGYsCi0gTlVCVVNfRFJIV19TT05JQyA9IDB4MDExMCwKKyAgTlVCVVNfRFJIV19LSU5FVElDUyA9IDB4MDEwNiwKKyAgTlVCVVNfRFJIV19DQUJMRVRST04gPSAweDAxMDksCisgIE5VQlVTX0RSSFdfQVNBTlRFX0xDID0gMHgwMTBmLAorICBOVUJVU19EUkhXX1NPTklDID0gMHgwMTEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVUJVU19EUkhXX1RFQ0hXT1JLUyA9IDB4MDExMiwKLSBOVUJVU19EUkhXX0FQUExFX1NPTklDX05CID0gMHgwMTE4LAotIE5VQlVTX0RSSFdfQVBQTEVfU09OSUNfTEMgPSAweDAxMTksCi0gTlVCVVNfRFJIV19GT0NVUyA9IDB4MDExYywKKyAgTlVCVVNfRFJIV19URUNIV09SS1MgPSAweDAxMTIsCisgIE5VQlVTX0RSSFdfQVBQTEVfU09OSUNfTkIgPSAweDAxMTgsCisgIE5VQlVTX0RSSFdfQVBQTEVfU09OSUNfTEMgPSAweDAxMTksCisgIE5VQlVTX0RSSFdfRk9DVVMgPSAweDAxMWMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX0RSSFdfU09OTkVUID0gMHgwMTFkLAorICBOVUJVU19EUkhXX1NPTk5FVCA9IDB4MDExZCwKIH07CiBlbnVtIG51YnVzX3Jlc19pZCB7Ci0gTlVCVVNfUkVTSURfVFlQRSA9IDB4MDAwMSwKKyAgTlVCVVNfUkVTSURfVFlQRSA9IDB4MDAwMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfUkVTSURfTkFNRSA9IDB4MDAwMiwKLSBOVUJVU19SRVNJRF9JQ09OID0gMHgwMDAzLAotIE5VQlVTX1JFU0lEX0RSVlJESVIgPSAweDAwMDQsCi0gTlVCVVNfUkVTSURfTE9BRFJFQyA9IDB4MDAwNSwKKyAgTlVCVVNfUkVTSURfTkFNRSA9IDB4MDAwMiwKKyAgTlVCVVNfUkVTSURfSUNPTiA9IDB4MDAwMywKKyAgTlVCVVNfUkVTSURfRFJWUkRJUiA9IDB4MDAwNCwKKyAgTlVCVVNfUkVTSURfTE9BRFJFQyA9IDB4MDAwNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfUkVTSURfQk9PVFJFQyA9IDB4MDAwNiwKLSBOVUJVU19SRVNJRF9GTEFHUyA9IDB4MDAwNywKLSBOVUJVU19SRVNJRF9IV0RFVklEID0gMHgwMDA4LAotIE5VQlVTX1JFU0lEX01JTk9SX0JBU0VPUyA9IDB4MDAwYSwKKyAgTlVCVVNfUkVTSURfQk9PVFJFQyA9IDB4MDAwNiwKKyAgTlVCVVNfUkVTSURfRkxBR1MgPSAweDAwMDcsCisgIE5VQlVTX1JFU0lEX0hXREVWSUQgPSAweDAwMDgsCisgIE5VQlVTX1JFU0lEX01JTk9SX0JBU0VPUyA9IDB4MDAwYSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfUkVTSURfTUlOT1JfTEVOR1RIID0gMHgwMDBiLAotIE5VQlVTX1JFU0lEX01BSk9SX0JBU0VPUyA9IDB4MDAwYywKLSBOVUJVU19SRVNJRF9NQUpPUl9MRU5HVEggPSAweDAwMGQsCi0gTlVCVVNfUkVTSURfQ0lDTiA9IDB4MDAwZiwKKyAgTlVCVVNfUkVTSURfTUlOT1JfTEVOR1RIID0gMHgwMDBiLAorICBOVUJVU19SRVNJRF9NQUpPUl9CQVNFT1MgPSAweDAwMGMsCisgIE5VQlVTX1JFU0lEX01BSk9SX0xFTkdUSCA9IDB4MDAwZCwKKyAgTlVCVVNfUkVTSURfQ0lDTiA9IDB4MDAwZiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfUkVTSURfSUNMOCA9IDB4MDAxMCwKLSBOVUJVU19SRVNJRF9JQ0w0ID0gMHgwMDExLAorICBOVUJVU19SRVNJRF9JQ0w4ID0gMHgwMDEwLAorICBOVUJVU19SRVNJRF9JQ0w0ID0gMHgwMDExLAogfTsKIGVudW0gbnVidXNfYm9hcmRfcmVzX2lkIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfUkVTSURfQk9BUkRJRCA9IDB4MDAyMCwKLSBOVUJVU19SRVNJRF9QUkFNSU5JVERBVEEgPSAweDAwMjEsCi0gTlVCVVNfUkVTSURfUFJJTUFSWUlOSVQgPSAweDAwMjIsCi0gTlVCVVNfUkVTSURfVElNRU9VVENPTlNUID0gMHgwMDIzLAorICBOVUJVU19SRVNJRF9CT0FSRElEID0gMHgwMDIwLAorICBOVUJVU19SRVNJRF9QUkFNSU5JVERBVEEgPSAweDAwMjEsCisgIE5VQlVTX1JFU0lEX1BSSU1BUllJTklUID0gMHgwMDIyLAorICBOVUJVU19SRVNJRF9USU1FT1VUQ09OU1QgPSAweDAwMjMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX1JFU0lEX1ZFTkRPUklORk8gPSAweDAwMjQsCi0gTlVCVVNfUkVTSURfQk9BUkRGTEFHUyA9IDB4MDAyNSwKLSBOVUJVU19SRVNJRF9TRUNPTkRJTklUID0gMHgwMDI2LAotIE5VQlVTX1JFU0lEX1ZJRE5BTUVTID0gMHgwMDQxLAorICBOVUJVU19SRVNJRF9WRU5ET1JJTkZPID0gMHgwMDI0LAorICBOVUJVU19SRVNJRF9CT0FSREZMQUdTID0gMHgwMDI1LAorICBOVUJVU19SRVNJRF9TRUNPTkRJTklUID0gMHgwMDI2LAorICBOVUJVU19SRVNJRF9WSUROQU1FUyA9IDB4MDA0MSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVCVVNfUkVTSURfVklETU9ERVMgPSAweDAwN2UKKyAgTlVCVVNfUkVTSURfVklETU9ERVMgPSAweDAwN2UKIH07CiBlbnVtIG51YnVzX3ZlbmRvcl9yZXNfaWQgewotIE5VQlVTX1JFU0lEX1ZFTkRfSUQgPSAweDAwMDEsCisgIE5VQlVTX1JFU0lEX1ZFTkRfSUQgPSAweDAwMDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX1JFU0lEX1ZFTkRfU0VSSUFMID0gMHgwMDAyLAotIE5VQlVTX1JFU0lEX1ZFTkRfUkVWID0gMHgwMDAzLAotIE5VQlVTX1JFU0lEX1ZFTkRfUEFSVCA9IDB4MDAwNCwKLSBOVUJVU19SRVNJRF9WRU5EX0RBVEUgPSAweDAwMDUKKyAgTlVCVVNfUkVTSURfVkVORF9TRVJJQUwgPSAweDAwMDIsCisgIE5VQlVTX1JFU0lEX1ZFTkRfUkVWID0gMHgwMDAzLAorICBOVUJVU19SRVNJRF9WRU5EX1BBUlQgPSAweDAwMDQsCisgIE5VQlVTX1JFU0lEX1ZFTkRfREFURSA9IDB4MDAwNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIG51YnVzX25ldF9yZXNfaWQgewotIE5VQlVTX1JFU0lEX01BQ19BRERSRVNTID0gMHgwMDgwCisgIE5VQlVTX1JFU0lEX01BQ19BRERSRVNTID0gMHgwMDgwCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbnVidXNfY3B1X3Jlc19pZCB7Ci0gTlVCVVNfUkVTSURfTUVNSU5GTyA9IDB4MDA4MSwKLSBOVUJVU19SRVNJRF9ST01JTkZPID0gMHgwMDgyCisgIE5VQlVTX1JFU0lEX01FTUlORk8gPSAweDAwODEsCisgIE5VQlVTX1JFU0lEX1JPTUlORk8gPSAweDAwODIKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBudWJ1c19kaXNwbGF5X3Jlc19pZCB7Ci0gTlVCVVNfUkVTSURfR0FNTUFESVIgPSAweDAwNDAsCi0gTlVCVVNfUkVTSURfRklSU1RNT0RFID0gMHgwMDgwLAotIE5VQlVTX1JFU0lEX1NFQ09ORE1PREUgPSAweDAwODEsCisgIE5VQlVTX1JFU0lEX0dBTU1BRElSID0gMHgwMDQwLAorICBOVUJVU19SRVNJRF9GSVJTVE1PREUgPSAweDAwODAsCisgIE5VQlVTX1JFU0lEX1NFQ09ORE1PREUgPSAweDAwODEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5VQlVTX1JFU0lEX1RISVJETU9ERSA9IDB4MDA4MiwKLSBOVUJVU19SRVNJRF9GT1VSVEhNT0RFID0gMHgwMDgzLAotIE5VQlVTX1JFU0lEX0ZJRlRITU9ERSA9IDB4MDA4NCwKLSBOVUJVU19SRVNJRF9TSVhUSE1PREUgPSAweDAwODUKKyAgTlVCVVNfUkVTSURfVEhJUkRNT0RFID0gMHgwMDgyLAorICBOVUJVU19SRVNJRF9GT1VSVEhNT0RFID0gMHgwMDgzLAorICBOVUJVU19SRVNJRF9GSUZUSE1PREUgPSAweDAwODQsCisgIE5VQlVTX1JFU0lEX1NJWFRITU9ERSA9IDB4MDA4NQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci1zdHJ1Y3QgbnVidXNfZGlyCi17Ci0gdW5zaWduZWQgY2hhciAqYmFzZTsKK3N0cnVjdCBudWJ1c19kaXIgeworICB1bnNpZ25lZCBjaGFyICogYmFzZTsKKyAgdW5zaWduZWQgY2hhciAqIHB0cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciAqcHRyOwotIGludCBkb25lOwotIGludCBtYXNrOworICBpbnQgZG9uZTsKKyAgaW50IG1hc2s7CiB9Oworc3RydWN0IG51YnVzX2RpcmVudCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IG51YnVzX2RpcmVudAotewotIHVuc2lnbmVkIGNoYXIgKmJhc2U7Ci0gdW5zaWduZWQgY2hhciB0eXBlOworICB1bnNpZ25lZCBjaGFyICogYmFzZTsKKyAgdW5zaWduZWQgY2hhciB0eXBlOworICBfX3UzMiBkYXRhOworICBpbnQgbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGF0YTsKLSBpbnQgbWFzazsKIH07CiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L252bWUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbnZtZS5oCmluZGV4IGVlZGVhOTAuLjAzMGYwMWMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbnZtZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvbnZtZS5oCkBAIC0yMSw1MzQgKzIxLDU3NSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgbnZtZV9pZF9wb3dlcl9zdGF0ZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiBtYXhfcG93ZXI7Ci0gX191OCByc3ZkMjsKLSBfX3U4IGZsYWdzOwotIF9fbGUzMiBlbnRyeV9sYXQ7CisgIF9fbGUxNiBtYXhfcG93ZXI7CisgIF9fdTggcnN2ZDI7CisgIF9fdTggZmxhZ3M7CisgIF9fbGUzMiBlbnRyeV9sYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBleGl0X2xhdDsKLSBfX3U4IHJlYWRfdHB1dDsKLSBfX3U4IHJlYWRfbGF0OwotIF9fdTggd3JpdGVfdHB1dDsKKyAgX19sZTMyIGV4aXRfbGF0OworICBfX3U4IHJlYWRfdHB1dDsKKyAgX191OCByZWFkX2xhdDsKKyAgX191OCB3cml0ZV90cHV0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHdyaXRlX2xhdDsKLSBfX3U4IHJzdmQxNlsxNl07CisgIF9fdTggd3JpdGVfbGF0OworICBfX2xlMTYgaWRsZV9wb3dlcjsKKyAgX191OCBpZGxlX3NjYWxlOworICBfX3U4IHJzdmQxOTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fbGUxNiBhY3RpdmVfcG93ZXI7CisgIF9fdTggYWN0aXZlX3dvcmtfc2NhbGU7CisgIF9fdTggcnN2ZDIzWzldOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9QU19GTEFHU19NQVhfUE9XRVJfU0NBTEUgPSAxIDw8IDAsCi0gTlZNRV9QU19GTEFHU19OT05fT1BfU1RBVEUgPSAxIDw8IDEsCisgIE5WTUVfUFNfRkxBR1NfTUFYX1BPV0VSX1NDQUxFID0gMSA8PCAwLAorICBOVk1FX1BTX0ZMQUdTX05PTl9PUF9TVEFURSA9IDEgPDwgMSwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG52bWVfaWRfY3RybCB7CisgIF9fbGUxNiB2aWQ7CisgIF9fbGUxNiBzc3ZpZDsKKyAgY2hhciBzblsyMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiB2aWQ7Ci0gX19sZTE2IHNzdmlkOwotIGNoYXIgc25bMjBdOwotIGNoYXIgbW5bNDBdOworICBjaGFyIG1uWzQwXTsKKyAgY2hhciBmcls4XTsKKyAgX191OCByYWI7CisgIF9fdTggaWVlZVszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBmcls4XTsKLSBfX3U4IHJhYjsKLSBfX3U4IGllZWVbM107Ci0gX191OCBtaWM7CisgIF9fdTggbWljOworICBfX3U4IG1kdHM7CisgIF9fdTE2IGNudGxpZDsKKyAgX191MzIgdmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG1kdHM7Ci0gX191OCByc3ZkNzhbMTc4XTsKLSBfX2xlMTYgb2FjczsKLSBfX3U4IGFjbDsKKyAgX191OCByc3ZkODRbMTcyXTsKKyAgX19sZTE2IG9hY3M7CisgIF9fdTggYWNsOworICBfX3U4IGFlcmw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYWVybDsKLSBfX3U4IGZybXc7Ci0gX191OCBscGE7Ci0gX191OCBlbHBlOworICBfX3U4IGZybXc7CisgIF9fdTggbHBhOworICBfX3U4IGVscGU7CisgIF9fdTggbnBzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBucHNzOwotIF9fdTggcnN2ZDI2NFsyNDhdOwotIF9fdTggc3FlczsKLSBfX3U4IGNxZXM7CisgIF9fdTggYXZzY2M7CisgIF9fdTggYXBzdGE7CisgIF9fbGUxNiB3Y3RlbXA7CisgIF9fbGUxNiBjY3RlbXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcnN2ZDUxNFsyXTsKLSBfX2xlMzIgbm47Ci0gX19sZTE2IG9uY3M7Ci0gX19sZTE2IGZ1c2VzOworICBfX3U4IHJzdmQyNzBbMjQyXTsKKyAgX191OCBzcWVzOworICBfX3U4IGNxZXM7CisgIF9fdTggcnN2ZDUxNFsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmbmE7Ci0gX191OCB2d2M7Ci0gX19sZTE2IGF3dW47Ci0gX19sZTE2IGF3dXBmOworICBfX2xlMzIgbm47CisgIF9fbGUxNiBvbmNzOworICBfX2xlMTYgZnVzZXM7CisgIF9fdTggZm5hOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJzdmQ1MzBbMTUxOF07Ci0gc3RydWN0IG52bWVfaWRfcG93ZXJfc3RhdGUgcHNkWzMyXTsKLSBfX3U4IHZzWzEwMjRdOworICBfX3U4IHZ3YzsKKyAgX19sZTE2IGF3dW47CisgIF9fbGUxNiBhd3VwZjsKKyAgX191OCBudnNjYzsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcnN2ZDUzMTsKKyAgX19sZTE2IGFjd3U7CisgIF9fdTggcnN2ZDUzNFsyXTsKKyAgX19sZTMyIHNnbHM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHJzdmQ1NDBbMTUwOF07CisgIHN0cnVjdCBudm1lX2lkX3Bvd2VyX3N0YXRlIHBzZFszMl07CisgIF9fdTggdnNbMTAyNF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIE5WTUVfQ1RSTF9PTkNTX0NPTVBBUkUgPSAxIDw8IDAsCi0gTlZNRV9DVFJMX09OQ1NfV1JJVEVfVU5DT1JSRUNUQUJMRSA9IDEgPDwgMSwKLSBOVk1FX0NUUkxfT05DU19EU00gPSAxIDw8IDIsCisgIE5WTUVfQ1RSTF9PTkNTX0NPTVBBUkUgPSAxIDw8IDAsCisgIE5WTUVfQ1RSTF9PTkNTX1dSSVRFX1VOQ09SUkVDVEFCTEUgPSAxIDw8IDEsCisgIE5WTUVfQ1RSTF9PTkNTX0RTTSA9IDEgPDwgMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5WTUVfQ1RSTF9WV0NfUFJFU0VOVCA9IDEgPDwgMCwKIH07CiBzdHJ1Y3QgbnZtZV9sYmFmIHsKLSBfX2xlMTYgbXM7Ci0gX191OCBkczsKKyAgX19sZTE2IG1zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJwOworICBfX3U4IGRzOworICBfX3U4IHJwOwogfTsKIHN0cnVjdCBudm1lX2lkX25zIHsKLSBfX2xlNjQgbnN6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTY0IG5jYXA7Ci0gX19sZTY0IG51c2U7Ci0gX191OCBuc2ZlYXQ7Ci0gX191OCBubGJhZjsKKyAgX19sZTY0IG5zemU7CisgIF9fbGU2NCBuY2FwOworICBfX2xlNjQgbnVzZTsKKyAgX191OCBuc2ZlYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmxiYXM7Ci0gX191OCBtYzsKLSBfX3U4IGRwYzsKLSBfX3U4IGRwczsKKyAgX191OCBubGJhZjsKKyAgX191OCBmbGJhczsKKyAgX191OCBtYzsKKyAgX191OCBkcGM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcnN2ZDMwWzk4XTsKLSBzdHJ1Y3QgbnZtZV9sYmFmIGxiYWZbMTZdOwotIF9fdTggcnN2ZDE5MlsxOTJdOwotIF9fdTggdnNbMzcxMl07CisgIF9fdTggZHBzOworICBfX3U4IG5taWM7CisgIF9fdTggcmVzY2FwOworICBfX3U4IGZwaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcnN2ZDMzOworICBfX2xlMTYgbmF3dW47CisgIF9fbGUxNiBuYXd1cGY7CisgIF9fbGUxNiBuYWN3dTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcnN2ZDQwWzgwXTsKKyAgX191OCBldWk2NFs4XTsKKyAgc3RydWN0IG52bWVfbGJhZiBsYmFmWzE2XTsKKyAgX191OCByc3ZkMTkyWzE5Ml07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHZzWzM3MTJdOwogfTsKIGVudW0gewotIE5WTUVfTlNfRkVBVF9USElOID0gMSA8PCAwLAotIE5WTUVfTEJBRl9SUF9CRVNUID0gMCwKKyAgTlZNRV9OU19GRUFUX1RISU4gPSAxIDw8IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfTEJBRl9SUF9CRVRURVIgPSAxLAotIE5WTUVfTEJBRl9SUF9HT09EID0gMiwKLSBOVk1FX0xCQUZfUlBfREVHUkFERUQgPSAzLAorICBOVk1FX0xCQUZfUlBfQkVTVCA9IDAsCisgIE5WTUVfTEJBRl9SUF9CRVRURVIgPSAxLAorICBOVk1FX0xCQUZfUlBfR09PRCA9IDIsCisgIE5WTUVfTEJBRl9SUF9ERUdSQURFRCA9IDMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbnZtZV9zbWFydF9sb2cgewotIF9fdTggY3JpdGljYWxfd2FybmluZzsKLSBfX3U4IHRlbXBlcmF0dXJlWzJdOwotIF9fdTggYXZhaWxfc3BhcmU7CisgIF9fdTggY3JpdGljYWxfd2FybmluZzsKKyAgX191OCB0ZW1wZXJhdHVyZVsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzcGFyZV90aHJlc2g7Ci0gX191OCBwZXJjZW50X3VzZWQ7Ci0gX191OCByc3ZkNlsyNl07Ci0gX191OCBkYXRhX3VuaXRzX3JlYWRbMTZdOworICBfX3U4IGF2YWlsX3NwYXJlOworICBfX3U4IHNwYXJlX3RocmVzaDsKKyAgX191OCBwZXJjZW50X3VzZWQ7CisgIF9fdTggcnN2ZDZbMjZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRhdGFfdW5pdHNfd3JpdHRlblsxNl07Ci0gX191OCBob3N0X3JlYWRzWzE2XTsKLSBfX3U4IGhvc3Rfd3JpdGVzWzE2XTsKLSBfX3U4IGN0cmxfYnVzeV90aW1lWzE2XTsKKyAgX191OCBkYXRhX3VuaXRzX3JlYWRbMTZdOworICBfX3U4IGRhdGFfdW5pdHNfd3JpdHRlblsxNl07CisgIF9fdTggaG9zdF9yZWFkc1sxNl07CisgIF9fdTggaG9zdF93cml0ZXNbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBvd2VyX2N5Y2xlc1sxNl07Ci0gX191OCBwb3dlcl9vbl9ob3Vyc1sxNl07Ci0gX191OCB1bnNhZmVfc2h1dGRvd25zWzE2XTsKLSBfX3U4IG1lZGlhX2Vycm9yc1sxNl07CisgIF9fdTggY3RybF9idXN5X3RpbWVbMTZdOworICBfX3U4IHBvd2VyX2N5Y2xlc1sxNl07CisgIF9fdTggcG93ZXJfb25faG91cnNbMTZdOworICBfX3U4IHVuc2FmZV9zaHV0ZG93bnNbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG51bV9lcnJfbG9nX2VudHJpZXNbMTZdOwotIF9fdTggcnN2ZDE5MlszMjBdOworICBfX3U4IG1lZGlhX2Vycm9yc1sxNl07CisgIF9fdTggbnVtX2Vycl9sb2dfZW50cmllc1sxNl07CisgIF9fbGUzMiB3YXJuaW5nX3RlbXBfdGltZTsKKyAgX19sZTMyIGNyaXRpY2FsX2NvbXBfdGltZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fbGUxNiB0ZW1wX3NlbnNvcls4XTsKKyAgX191OCByc3ZkMjE2WzI5Nl07CiB9OwogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfU01BUlRfQ1JJVF9TUEFSRSA9IDEgPDwgMCwKLSBOVk1FX1NNQVJUX0NSSVRfVEVNUEVSQVRVUkUgPSAxIDw8IDEsCi0gTlZNRV9TTUFSVF9DUklUX1JFTElBQklMSVRZID0gMSA8PCAyLAotIE5WTUVfU01BUlRfQ1JJVF9NRURJQSA9IDEgPDwgMywKKyAgTlZNRV9TTUFSVF9DUklUX1NQQVJFID0gMSA8PCAwLAorICBOVk1FX1NNQVJUX0NSSVRfVEVNUEVSQVRVUkUgPSAxIDw8IDEsCisgIE5WTUVfU01BUlRfQ1JJVF9SRUxJQUJJTElUWSA9IDEgPDwgMiwKKyAgTlZNRV9TTUFSVF9DUklUX01FRElBID0gMSA8PCAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX1NNQVJUX0NSSVRfVk9MQVRJTEVfTUVNT1JZID0gMSA8PCA0LAorICBOVk1FX1NNQVJUX0NSSVRfVk9MQVRJTEVfTUVNT1JZID0gMSA8PCA0LAogfTsKIHN0cnVjdCBudm1lX2xiYV9yYW5nZV90eXBlIHsKLSBfX3U4IHR5cGU7CisgIF9fdTggdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBhdHRyaWJ1dGVzOwotIF9fdTggcnN2ZDJbMTRdOwotIF9fdTY0IHNsYmE7Ci0gX191NjQgbmxiOworICBfX3U4IGF0dHJpYnV0ZXM7CisgIF9fdTggcnN2ZDJbMTRdOworICBfX3U2NCBzbGJhOworICBfX3U2NCBubGI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZ3VpZFsxNl07Ci0gX191OCByc3ZkNDhbMTZdOworICBfX3U4IGd1aWRbMTZdOworICBfX3U4IHJzdmQ0OFsxNl07CiB9OwogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfTEJBUlRfVFlQRV9GUyA9IDB4MDEsCi0gTlZNRV9MQkFSVF9UWVBFX1JBSUQgPSAweDAyLAotIE5WTUVfTEJBUlRfVFlQRV9DQUNIRSA9IDB4MDMsCi0gTlZNRV9MQkFSVF9UWVBFX1NXQVAgPSAweDA0LAorICBOVk1FX0xCQVJUX1RZUEVfRlMgPSAweDAxLAorICBOVk1FX0xCQVJUX1RZUEVfUkFJRCA9IDB4MDIsCisgIE5WTUVfTEJBUlRfVFlQRV9DQUNIRSA9IDB4MDMsCisgIE5WTUVfTEJBUlRfVFlQRV9TV0FQID0gMHgwNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9MQkFSVF9BVFRSSUJfVEVNUCA9IDEgPDwgMCwKLSBOVk1FX0xCQVJUX0FUVFJJQl9ISURFID0gMSA8PCAxLAorICBOVk1FX0xCQVJUX0FUVFJJQl9URU1QID0gMSA8PCAwLAorICBOVk1FX0xCQVJUX0FUVFJJQl9ISURFID0gMSA8PCAxLAogfTsKIGVudW0gbnZtZV9vcGNvZGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBudm1lX2NtZF9mbHVzaCA9IDB4MDAsCi0gbnZtZV9jbWRfd3JpdGUgPSAweDAxLAotIG52bWVfY21kX3JlYWQgPSAweDAyLAotIG52bWVfY21kX3dyaXRlX3VuY29yID0gMHgwNCwKKyAgbnZtZV9jbWRfZmx1c2ggPSAweDAwLAorICBudm1lX2NtZF93cml0ZSA9IDB4MDEsCisgIG52bWVfY21kX3JlYWQgPSAweDAyLAorICBudm1lX2NtZF93cml0ZV91bmNvciA9IDB4MDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG52bWVfY21kX2NvbXBhcmUgPSAweDA1LAotIG52bWVfY21kX2RzbSA9IDB4MDksCisgIG52bWVfY21kX2NvbXBhcmUgPSAweDA1LAorICBudm1lX2NtZF9kc20gPSAweDA5LAogfTsKIHN0cnVjdCBudm1lX2NvbW1vbl9jb21tYW5kIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBvcGNvZGU7Ci0gX191OCBmbGFnczsKLSBfX3UxNiBjb21tYW5kX2lkOwotIF9fbGUzMiBuc2lkOworICBfX3U4IG9wY29kZTsKKyAgX191OCBmbGFnczsKKyAgX191MTYgY29tbWFuZF9pZDsKKyAgX19sZTMyIG5zaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBjZHcyWzJdOwotIF9fbGU2NCBtZXRhZGF0YTsKLSBfX2xlNjQgcHJwMTsKLSBfX2xlNjQgcHJwMjsKKyAgX19sZTMyIGNkdzJbMl07CisgIF9fbGU2NCBtZXRhZGF0YTsKKyAgX19sZTY0IHBycDE7CisgIF9fbGU2NCBwcnAyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgY2R3MTBbNl07CisgIF9fbGUzMiBjZHcxMFs2XTsKIH07CiBzdHJ1Y3QgbnZtZV9yd19jb21tYW5kIHsKLSBfX3U4IG9wY29kZTsKKyAgX191OCBvcGNvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmxhZ3M7Ci0gX191MTYgY29tbWFuZF9pZDsKLSBfX2xlMzIgbnNpZDsKLSBfX3U2NCByc3ZkMjsKKyAgX191OCBmbGFnczsKKyAgX191MTYgY29tbWFuZF9pZDsKKyAgX19sZTMyIG5zaWQ7CisgIF9fdTY0IHJzdmQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlNjQgbWV0YWRhdGE7Ci0gX19sZTY0IHBycDE7Ci0gX19sZTY0IHBycDI7Ci0gX19sZTY0IHNsYmE7CisgIF9fbGU2NCBtZXRhZGF0YTsKKyAgX19sZTY0IHBycDE7CisgIF9fbGU2NCBwcnAyOworICBfX2xlNjQgc2xiYTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IGxlbmd0aDsKLSBfX2xlMTYgY29udHJvbDsKLSBfX2xlMzIgZHNtZ210OwotIF9fbGUzMiByZWZ0YWc7CisgIF9fbGUxNiBsZW5ndGg7CisgIF9fbGUxNiBjb250cm9sOworICBfX2xlMzIgZHNtZ210OworICBfX2xlMzIgcmVmdGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgYXBwdGFnOwotIF9fbGUxNiBhcHBtYXNrOworICBfX2xlMTYgYXBwdGFnOworICBfX2xlMTYgYXBwbWFzazsKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9SV19MUiA9IDEgPDwgMTUsCi0gTlZNRV9SV19GVUEgPSAxIDw8IDE0LAotIE5WTUVfUldfRFNNX0ZSRVFfVU5TUEVDID0gMCwKLSBOVk1FX1JXX0RTTV9GUkVRX1RZUElDQUwgPSAxLAorICBOVk1FX1JXX0xSID0gMSA8PCAxNSwKKyAgTlZNRV9SV19GVUEgPSAxIDw8IDE0LAorICBOVk1FX1JXX0RTTV9GUkVRX1VOU1BFQyA9IDAsCisgIE5WTUVfUldfRFNNX0ZSRVFfVFlQSUNBTCA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfUldfRFNNX0ZSRVFfUkFSRSA9IDIsCi0gTlZNRV9SV19EU01fRlJFUV9SRUFEUyA9IDMsCi0gTlZNRV9SV19EU01fRlJFUV9XUklURVMgPSA0LAotIE5WTUVfUldfRFNNX0ZSRVFfUlcgPSA1LAorICBOVk1FX1JXX0RTTV9GUkVRX1JBUkUgPSAyLAorICBOVk1FX1JXX0RTTV9GUkVRX1JFQURTID0gMywKKyAgTlZNRV9SV19EU01fRlJFUV9XUklURVMgPSA0LAorICBOVk1FX1JXX0RTTV9GUkVRX1JXID0gNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9SV19EU01fRlJFUV9PTkNFID0gNiwKLSBOVk1FX1JXX0RTTV9GUkVRX1BSRUZFVENIID0gNywKLSBOVk1FX1JXX0RTTV9GUkVRX1RFTVAgPSA4LAotIE5WTUVfUldfRFNNX0xBVEVOQ1lfTk9ORSA9IDAgPDwgNCwKKyAgTlZNRV9SV19EU01fRlJFUV9PTkNFID0gNiwKKyAgTlZNRV9SV19EU01fRlJFUV9QUkVGRVRDSCA9IDcsCisgIE5WTUVfUldfRFNNX0ZSRVFfVEVNUCA9IDgsCisgIE5WTUVfUldfRFNNX0xBVEVOQ1lfTk9ORSA9IDAgPDwgNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9SV19EU01fTEFURU5DWV9JRExFID0gMSA8PCA0LAotIE5WTUVfUldfRFNNX0xBVEVOQ1lfTk9STSA9IDIgPDwgNCwKLSBOVk1FX1JXX0RTTV9MQVRFTkNZX0xPVyA9IDMgPDwgNCwKLSBOVk1FX1JXX0RTTV9TRVFfUkVRID0gMSA8PCA2LAorICBOVk1FX1JXX0RTTV9MQVRFTkNZX0lETEUgPSAxIDw8IDQsCisgIE5WTUVfUldfRFNNX0xBVEVOQ1lfTk9STSA9IDIgPDwgNCwKKyAgTlZNRV9SV19EU01fTEFURU5DWV9MT1cgPSAzIDw8IDQsCisgIE5WTUVfUldfRFNNX1NFUV9SRVEgPSAxIDw8IDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfUldfRFNNX0NPTVBSRVNTRUQgPSAxIDw8IDcsCisgIE5WTUVfUldfRFNNX0NPTVBSRVNTRUQgPSAxIDw8IDcsCiB9Owogc3RydWN0IG52bWVfZHNtX2NtZCB7Ci0gX191OCBvcGNvZGU7CisgIF9fdTggb3Bjb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZsYWdzOwotIF9fdTE2IGNvbW1hbmRfaWQ7Ci0gX19sZTMyIG5zaWQ7Ci0gX191NjQgcnN2ZDJbMl07CisgIF9fdTggZmxhZ3M7CisgIF9fdTE2IGNvbW1hbmRfaWQ7CisgIF9fbGUzMiBuc2lkOworICBfX3U2NCByc3ZkMlsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTY0IHBycDE7Ci0gX19sZTY0IHBycDI7Ci0gX19sZTMyIG5yOwotIF9fbGUzMiBhdHRyaWJ1dGVzOworICBfX2xlNjQgcHJwMTsKKyAgX19sZTY0IHBycDI7CisgIF9fbGUzMiBucjsKKyAgX19sZTMyIGF0dHJpYnV0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJzdmQxMls0XTsKKyAgX191MzIgcnN2ZDEyWzRdOwogfTsKIGVudW0gewotIE5WTUVfRFNNR01UX0lEUiA9IDEgPDwgMCwKKyAgTlZNRV9EU01HTVRfSURSID0gMSA8PCAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX0RTTUdNVF9JRFcgPSAxIDw8IDEsCi0gTlZNRV9EU01HTVRfQUQgPSAxIDw8IDIsCisgIE5WTUVfRFNNR01UX0lEVyA9IDEgPDwgMSwKKyAgTlZNRV9EU01HTVRfQUQgPSAxIDw8IDIsCiB9Owogc3RydWN0IG52bWVfZHNtX3JhbmdlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIGNhdHRyOwotIF9fbGUzMiBubGI7Ci0gX19sZTY0IHNsYmE7CisgIF9fbGUzMiBjYXR0cjsKKyAgX19sZTMyIG5sYjsKKyAgX19sZTY0IHNsYmE7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gbnZtZV9hZG1pbl9vcGNvZGUgewotIG52bWVfYWRtaW5fZGVsZXRlX3NxID0gMHgwMCwKLSBudm1lX2FkbWluX2NyZWF0ZV9zcSA9IDB4MDEsCi0gbnZtZV9hZG1pbl9nZXRfbG9nX3BhZ2UgPSAweDAyLAorICBudm1lX2FkbWluX2RlbGV0ZV9zcSA9IDB4MDAsCisgIG52bWVfYWRtaW5fY3JlYXRlX3NxID0gMHgwMSwKKyAgbnZtZV9hZG1pbl9nZXRfbG9nX3BhZ2UgPSAweDAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBudm1lX2FkbWluX2RlbGV0ZV9jcSA9IDB4MDQsCi0gbnZtZV9hZG1pbl9jcmVhdGVfY3EgPSAweDA1LAotIG52bWVfYWRtaW5faWRlbnRpZnkgPSAweDA2LAotIG52bWVfYWRtaW5fYWJvcnRfY21kID0gMHgwOCwKKyAgbnZtZV9hZG1pbl9kZWxldGVfY3EgPSAweDA0LAorICBudm1lX2FkbWluX2NyZWF0ZV9jcSA9IDB4MDUsCisgIG52bWVfYWRtaW5faWRlbnRpZnkgPSAweDA2LAorICBudm1lX2FkbWluX2Fib3J0X2NtZCA9IDB4MDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG52bWVfYWRtaW5fc2V0X2ZlYXR1cmVzID0gMHgwOSwKLSBudm1lX2FkbWluX2dldF9mZWF0dXJlcyA9IDB4MGEsCi0gbnZtZV9hZG1pbl9hc3luY19ldmVudCA9IDB4MGMsCi0gbnZtZV9hZG1pbl9hY3RpdmF0ZV9mdyA9IDB4MTAsCisgIG52bWVfYWRtaW5fc2V0X2ZlYXR1cmVzID0gMHgwOSwKKyAgbnZtZV9hZG1pbl9nZXRfZmVhdHVyZXMgPSAweDBhLAorICBudm1lX2FkbWluX2FzeW5jX2V2ZW50ID0gMHgwYywKKyAgbnZtZV9hZG1pbl9hY3RpdmF0ZV9mdyA9IDB4MTAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIG52bWVfYWRtaW5fZG93bmxvYWRfZncgPSAweDExLAotIG52bWVfYWRtaW5fZm9ybWF0X252bSA9IDB4ODAsCi0gbnZtZV9hZG1pbl9zZWN1cml0eV9zZW5kID0gMHg4MSwKLSBudm1lX2FkbWluX3NlY3VyaXR5X3JlY3YgPSAweDgyLAorICBudm1lX2FkbWluX2Rvd25sb2FkX2Z3ID0gMHgxMSwKKyAgbnZtZV9hZG1pbl9mb3JtYXRfbnZtID0gMHg4MCwKKyAgbnZtZV9hZG1pbl9zZWN1cml0eV9zZW5kID0gMHg4MSwKKyAgbnZtZV9hZG1pbl9zZWN1cml0eV9yZWN2ID0gMHg4MiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gTlZNRV9RVUVVRV9QSFlTX0NPTlRJRyA9ICgxIDw8IDApLAotIE5WTUVfQ1FfSVJRX0VOQUJMRUQgPSAoMSA8PCAxKSwKKyAgTlZNRV9RVUVVRV9QSFlTX0NPTlRJRyA9ICgxIDw8IDApLAorICBOVk1FX0NRX0lSUV9FTkFCTEVEID0gKDEgPDwgMSksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfU1FfUFJJT19VUkdFTlQgPSAoMCA8PCAxKSwKLSBOVk1FX1NRX1BSSU9fSElHSCA9ICgxIDw8IDEpLAotIE5WTUVfU1FfUFJJT19NRURJVU0gPSAoMiA8PCAxKSwKLSBOVk1FX1NRX1BSSU9fTE9XID0gKDMgPDwgMSksCisgIE5WTUVfU1FfUFJJT19VUkdFTlQgPSAoMCA8PCAxKSwKKyAgTlZNRV9TUV9QUklPX0hJR0ggPSAoMSA8PCAxKSwKKyAgTlZNRV9TUV9QUklPX01FRElVTSA9ICgyIDw8IDEpLAorICBOVk1FX1NRX1BSSU9fTE9XID0gKDMgPDwgMSksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfRkVBVF9BUkJJVFJBVElPTiA9IDB4MDEsCi0gTlZNRV9GRUFUX1BPV0VSX01HTVQgPSAweDAyLAotIE5WTUVfRkVBVF9MQkFfUkFOR0UgPSAweDAzLAotIE5WTUVfRkVBVF9URU1QX1RIUkVTSCA9IDB4MDQsCisgIE5WTUVfRkVBVF9BUkJJVFJBVElPTiA9IDB4MDEsCisgIE5WTUVfRkVBVF9QT1dFUl9NR01UID0gMHgwMiwKKyAgTlZNRV9GRUFUX0xCQV9SQU5HRSA9IDB4MDMsCisgIE5WTUVfRkVBVF9URU1QX1RIUkVTSCA9IDB4MDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfRkVBVF9FUlJfUkVDT1ZFUlkgPSAweDA1LAotIE5WTUVfRkVBVF9WT0xBVElMRV9XQyA9IDB4MDYsCi0gTlZNRV9GRUFUX05VTV9RVUVVRVMgPSAweDA3LAotIE5WTUVfRkVBVF9JUlFfQ09BTEVTQ0UgPSAweDA4LAorICBOVk1FX0ZFQVRfRVJSX1JFQ09WRVJZID0gMHgwNSwKKyAgTlZNRV9GRUFUX1ZPTEFUSUxFX1dDID0gMHgwNiwKKyAgTlZNRV9GRUFUX05VTV9RVUVVRVMgPSAweDA3LAorICBOVk1FX0ZFQVRfSVJRX0NPQUxFU0NFID0gMHgwOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9GRUFUX0lSUV9DT05GSUcgPSAweDA5LAotIE5WTUVfRkVBVF9XUklURV9BVE9NSUMgPSAweDBhLAotIE5WTUVfRkVBVF9BU1lOQ19FVkVOVCA9IDB4MGIsCi0gTlZNRV9GRUFUX1NXX1BST0dSRVNTID0gMHgwYywKKyAgTlZNRV9GRUFUX0lSUV9DT05GSUcgPSAweDA5LAorICBOVk1FX0ZFQVRfV1JJVEVfQVRPTUlDID0gMHgwYSwKKyAgTlZNRV9GRUFUX0FTWU5DX0VWRU5UID0gMHgwYiwKKyAgTlZNRV9GRUFUX1NXX1BST0dSRVNTID0gMHgwYywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9GV0FDVF9SRVBMID0gKDAgPDwgMyksCi0gTlZNRV9GV0FDVF9SRVBMX0FDVFYgPSAoMSA8PCAzKSwKLSBOVk1FX0ZXQUNUX0FDVFYgPSAoMiA8PCAzKSwKKyAgTlZNRV9MT0dfRVJST1IgPSAweDAxLAorICBOVk1FX0xPR19TTUFSVCA9IDB4MDIsCisgIE5WTUVfTE9HX0ZXX1NMT1QgPSAweDAzLAorICBOVk1FX0xPR19SRVNFUlZBVElPTiA9IDB4ODAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBOVk1FX0ZXQUNUX1JFUEwgPSAoMCA8PCAzKSwKKyAgTlZNRV9GV0FDVF9SRVBMX0FDVFYgPSAoMSA8PCAzKSwKKyAgTlZNRV9GV0FDVF9BQ1RWID0gKDIgPDwgMyksCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBudm1lX2lkZW50aWZ5IHsKLSBfX3U4IG9wY29kZTsKLSBfX3U4IGZsYWdzOwotIF9fdTE2IGNvbW1hbmRfaWQ7CisgIF9fdTggb3Bjb2RlOworICBfX3U4IGZsYWdzOworICBfX3UxNiBjb21tYW5kX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgbnNpZDsKLSBfX3U2NCByc3ZkMlsyXTsKLSBfX2xlNjQgcHJwMTsKLSBfX2xlNjQgcHJwMjsKKyAgX19sZTMyIG5zaWQ7CisgIF9fdTY0IHJzdmQyWzJdOworICBfX2xlNjQgcHJwMTsKKyAgX19sZTY0IHBycDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBjbnM7Ci0gX191MzIgcnN2ZDExWzVdOworICBfX2xlMzIgY25zOworICBfX3UzMiByc3ZkMTFbNV07CiB9Owogc3RydWN0IG52bWVfZmVhdHVyZXMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG9wY29kZTsKLSBfX3U4IGZsYWdzOwotIF9fdTE2IGNvbW1hbmRfaWQ7Ci0gX19sZTMyIG5zaWQ7CisgIF9fdTggb3Bjb2RlOworICBfX3U4IGZsYWdzOworICBfX3UxNiBjb21tYW5kX2lkOworICBfX2xlMzIgbnNpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcnN2ZDJbMl07Ci0gX19sZTY0IHBycDE7Ci0gX19sZTY0IHBycDI7Ci0gX19sZTMyIGZpZDsKKyAgX191NjQgcnN2ZDJbMl07CisgIF9fbGU2NCBwcnAxOworICBfX2xlNjQgcHJwMjsKKyAgX19sZTMyIGZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIGR3b3JkMTE7Ci0gX191MzIgcnN2ZDEyWzRdOworICBfX2xlMzIgZHdvcmQxMTsKKyAgX191MzIgcnN2ZDEyWzRdOwogfTsKIHN0cnVjdCBudm1lX2NyZWF0ZV9jcSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggb3Bjb2RlOwotIF9fdTggZmxhZ3M7Ci0gX191MTYgY29tbWFuZF9pZDsKLSBfX3UzMiByc3ZkMVs1XTsKKyAgX191OCBvcGNvZGU7CisgIF9fdTggZmxhZ3M7CisgIF9fdTE2IGNvbW1hbmRfaWQ7CisgIF9fdTMyIHJzdmQxWzVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlNjQgcHJwMTsKLSBfX3U2NCByc3ZkODsKLSBfX2xlMTYgY3FpZDsKLSBfX2xlMTYgcXNpemU7CisgIF9fbGU2NCBwcnAxOworICBfX3U2NCByc3ZkODsKKyAgX19sZTE2IGNxaWQ7CisgIF9fbGUxNiBxc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IGNxX2ZsYWdzOwotIF9fbGUxNiBpcnFfdmVjdG9yOwotIF9fdTMyIHJzdmQxMls0XTsKKyAgX19sZTE2IGNxX2ZsYWdzOworICBfX2xlMTYgaXJxX3ZlY3RvcjsKKyAgX191MzIgcnN2ZDEyWzRdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbnZtZV9jcmVhdGVfc3EgewotIF9fdTggb3Bjb2RlOwotIF9fdTggZmxhZ3M7Ci0gX191MTYgY29tbWFuZF9pZDsKKyAgX191OCBvcGNvZGU7CisgIF9fdTggZmxhZ3M7CisgIF9fdTE2IGNvbW1hbmRfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJzdmQxWzVdOwotIF9fbGU2NCBwcnAxOwotIF9fdTY0IHJzdmQ4OwotIF9fbGUxNiBzcWlkOworICBfX3UzMiByc3ZkMVs1XTsKKyAgX19sZTY0IHBycDE7CisgIF9fdTY0IHJzdmQ4OworICBfX2xlMTYgc3FpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHFzaXplOwotIF9fbGUxNiBzcV9mbGFnczsKLSBfX2xlMTYgY3FpZDsKLSBfX3UzMiByc3ZkMTJbNF07CisgIF9fbGUxNiBxc2l6ZTsKKyAgX19sZTE2IHNxX2ZsYWdzOworICBfX2xlMTYgY3FpZDsKKyAgX191MzIgcnN2ZDEyWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgbnZtZV9kZWxldGVfcXVldWUgewotIF9fdTggb3Bjb2RlOwotIF9fdTggZmxhZ3M7CisgIF9fdTggb3Bjb2RlOworICBfX3U4IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBjb21tYW5kX2lkOwotIF9fdTMyIHJzdmQxWzldOwotIF9fbGUxNiBxaWQ7Ci0gX191MTYgcnN2ZDEwOworICBfX3UxNiBjb21tYW5kX2lkOworICBfX3UzMiByc3ZkMVs5XTsKKyAgX19sZTE2IHFpZDsKKyAgX191MTYgcnN2ZDEwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByc3ZkMTFbNV07CisgIF9fdTMyIHJzdmQxMVs1XTsKIH07CiBzdHJ1Y3QgbnZtZV9hYm9ydF9jbWQgewotIF9fdTggb3Bjb2RlOworICBfX3U4IG9wY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmbGFnczsKLSBfX3UxNiBjb21tYW5kX2lkOwotIF9fdTMyIHJzdmQxWzldOwotIF9fbGUxNiBzcWlkOworICBfX3U4IGZsYWdzOworICBfX3UxNiBjb21tYW5kX2lkOworICBfX3UzMiByc3ZkMVs5XTsKKyAgX19sZTE2IHNxaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGNpZDsKLSBfX3UzMiByc3ZkMTFbNV07CisgIF9fdTE2IGNpZDsKKyAgX191MzIgcnN2ZDExWzVdOwogfTsKIHN0cnVjdCBudm1lX2Rvd25sb2FkX2Zpcm13YXJlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBvcGNvZGU7Ci0gX191OCBmbGFnczsKLSBfX3UxNiBjb21tYW5kX2lkOwotIF9fdTMyIHJzdmQxWzVdOworICBfX3U4IG9wY29kZTsKKyAgX191OCBmbGFnczsKKyAgX191MTYgY29tbWFuZF9pZDsKKyAgX191MzIgcnN2ZDFbNV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGU2NCBwcnAxOwotIF9fbGU2NCBwcnAyOwotIF9fbGUzMiBudW1kOwotIF9fbGUzMiBvZmZzZXQ7CisgIF9fbGU2NCBwcnAxOworICBfX2xlNjQgcHJwMjsKKyAgX19sZTMyIG51bWQ7CisgIF9fbGUzMiBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJzdmQxMls0XTsKKyAgX191MzIgcnN2ZDEyWzRdOwogfTsKIHN0cnVjdCBudm1lX2Zvcm1hdF9jbWQgewotIF9fdTggb3Bjb2RlOworICBfX3U4IG9wY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmbGFnczsKLSBfX3UxNiBjb21tYW5kX2lkOwotIF9fbGUzMiBuc2lkOwotIF9fdTY0IHJzdmQyWzRdOworICBfX3U4IGZsYWdzOworICBfX3UxNiBjb21tYW5kX2lkOworICBfX2xlMzIgbnNpZDsKKyAgX191NjQgcnN2ZDJbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBjZHcxMDsKLSBfX3UzMiByc3ZkMTFbNV07CisgIF9fbGUzMiBjZHcxMDsKKyAgX191MzIgcnN2ZDExWzVdOwogfTsKIHN0cnVjdCBudm1lX2NvbW1hbmQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IG52bWVfY29tbW9uX2NvbW1hbmQgY29tbW9uOwotIHN0cnVjdCBudm1lX3J3X2NvbW1hbmQgcnc7Ci0gc3RydWN0IG52bWVfaWRlbnRpZnkgaWRlbnRpZnk7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgbnZtZV9jb21tb25fY29tbWFuZCBjb21tb247CisgICAgc3RydWN0IG52bWVfcndfY29tbWFuZCBydzsKKyAgICBzdHJ1Y3QgbnZtZV9pZGVudGlmeSBpZGVudGlmeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IG52bWVfZmVhdHVyZXMgZmVhdHVyZXM7Ci0gc3RydWN0IG52bWVfY3JlYXRlX2NxIGNyZWF0ZV9jcTsKLSBzdHJ1Y3QgbnZtZV9jcmVhdGVfc3EgY3JlYXRlX3NxOwotIHN0cnVjdCBudm1lX2RlbGV0ZV9xdWV1ZSBkZWxldGVfcXVldWU7CisgICAgc3RydWN0IG52bWVfZmVhdHVyZXMgZmVhdHVyZXM7CisgICAgc3RydWN0IG52bWVfY3JlYXRlX2NxIGNyZWF0ZV9jcTsKKyAgICBzdHJ1Y3QgbnZtZV9jcmVhdGVfc3EgY3JlYXRlX3NxOworICAgIHN0cnVjdCBudm1lX2RlbGV0ZV9xdWV1ZSBkZWxldGVfcXVldWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBudm1lX2Rvd25sb2FkX2Zpcm13YXJlIGRsZnc7Ci0gc3RydWN0IG52bWVfZm9ybWF0X2NtZCBmb3JtYXQ7Ci0gc3RydWN0IG52bWVfZHNtX2NtZCBkc207Ci0gc3RydWN0IG52bWVfYWJvcnRfY21kIGFib3J0OworICAgIHN0cnVjdCBudm1lX2Rvd25sb2FkX2Zpcm13YXJlIGRsZnc7CisgICAgc3RydWN0IG52bWVfZm9ybWF0X2NtZCBmb3JtYXQ7CisgICAgc3RydWN0IG52bWVfZHNtX2NtZCBkc207CisgICAgc3RydWN0IG52bWVfYWJvcnRfY21kIGFib3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OworICB9OwogfTsKIGVudW0gewotIE5WTUVfU0NfU1VDQ0VTUyA9IDB4MCwKKyAgTlZNRV9TQ19TVUNDRVNTID0gMHgwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX1NDX0lOVkFMSURfT1BDT0RFID0gMHgxLAotIE5WTUVfU0NfSU5WQUxJRF9GSUVMRCA9IDB4MiwKLSBOVk1FX1NDX0NNRElEX0NPTkZMSUNUID0gMHgzLAotIE5WTUVfU0NfREFUQV9YRkVSX0VSUk9SID0gMHg0LAorICBOVk1FX1NDX0lOVkFMSURfT1BDT0RFID0gMHgxLAorICBOVk1FX1NDX0lOVkFMSURfRklFTEQgPSAweDIsCisgIE5WTUVfU0NfQ01ESURfQ09ORkxJQ1QgPSAweDMsCisgIE5WTUVfU0NfREFUQV9YRkVSX0VSUk9SID0gMHg0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX1NDX1BPV0VSX0xPU1MgPSAweDUsCi0gTlZNRV9TQ19JTlRFUk5BTCA9IDB4NiwKLSBOVk1FX1NDX0FCT1JUX1JFUSA9IDB4NywKLSBOVk1FX1NDX0FCT1JUX1FVRVVFID0gMHg4LAorICBOVk1FX1NDX1BPV0VSX0xPU1MgPSAweDUsCisgIE5WTUVfU0NfSU5URVJOQUwgPSAweDYsCisgIE5WTUVfU0NfQUJPUlRfUkVRID0gMHg3LAorICBOVk1FX1NDX0FCT1JUX1FVRVVFID0gMHg4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX1NDX0ZVU0VEX0ZBSUwgPSAweDksCi0gTlZNRV9TQ19GVVNFRF9NSVNTSU5HID0gMHhhLAotIE5WTUVfU0NfSU5WQUxJRF9OUyA9IDB4YiwKLSBOVk1FX1NDX0NNRF9TRVFfRVJST1IgPSAweGMsCisgIE5WTUVfU0NfRlVTRURfRkFJTCA9IDB4OSwKKyAgTlZNRV9TQ19GVVNFRF9NSVNTSU5HID0gMHhhLAorICBOVk1FX1NDX0lOVkFMSURfTlMgPSAweGIsCisgIE5WTUVfU0NfQ01EX1NFUV9FUlJPUiA9IDB4YywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9TQ19MQkFfUkFOR0UgPSAweDgwLAotIE5WTUVfU0NfQ0FQX0VYQ0VFREVEID0gMHg4MSwKLSBOVk1FX1NDX05TX05PVF9SRUFEWSA9IDB4ODIsCi0gTlZNRV9TQ19DUV9JTlZBTElEID0gMHgxMDAsCisgIE5WTUVfU0NfTEJBX1JBTkdFID0gMHg4MCwKKyAgTlZNRV9TQ19DQVBfRVhDRUVERUQgPSAweDgxLAorICBOVk1FX1NDX05TX05PVF9SRUFEWSA9IDB4ODIsCisgIE5WTUVfU0NfQ1FfSU5WQUxJRCA9IDB4MTAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX1NDX1FJRF9JTlZBTElEID0gMHgxMDEsCi0gTlZNRV9TQ19RVUVVRV9TSVpFID0gMHgxMDIsCi0gTlZNRV9TQ19BQk9SVF9MSU1JVCA9IDB4MTAzLAotIE5WTUVfU0NfQUJPUlRfTUlTU0lORyA9IDB4MTA0LAorICBOVk1FX1NDX1FJRF9JTlZBTElEID0gMHgxMDEsCisgIE5WTUVfU0NfUVVFVUVfU0laRSA9IDB4MTAyLAorICBOVk1FX1NDX0FCT1JUX0xJTUlUID0gMHgxMDMsCisgIE5WTUVfU0NfQUJPUlRfTUlTU0lORyA9IDB4MTA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOVk1FX1NDX0FTWU5DX0xJTUlUID0gMHgxMDUsCi0gTlZNRV9TQ19GSVJNV0FSRV9TTE9UID0gMHgxMDYsCi0gTlZNRV9TQ19GSVJNV0FSRV9JTUFHRSA9IDB4MTA3LAotIE5WTUVfU0NfSU5WQUxJRF9WRUNUT1IgPSAweDEwOCwKKyAgTlZNRV9TQ19BU1lOQ19MSU1JVCA9IDB4MTA1LAorICBOVk1FX1NDX0ZJUk1XQVJFX1NMT1QgPSAweDEwNiwKKyAgTlZNRV9TQ19GSVJNV0FSRV9JTUFHRSA9IDB4MTA3LAorICBOVk1FX1NDX0lOVkFMSURfVkVDVE9SID0gMHgxMDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5WTUVfU0NfSU5WQUxJRF9MT0dfUEFHRSA9IDB4MTA5LAotIE5WTUVfU0NfSU5WQUxJRF9GT1JNQVQgPSAweDEwYSwKLSBOVk1FX1NDX0JBRF9BVFRSSUJVVEVTID0gMHgxODAsCi0gTlZNRV9TQ19XUklURV9GQVVMVCA9IDB4MjgwLAorICBOVk1FX1NDX0lOVkFMSURfTE9HX1BBR0UgPSAweDEwOSwKKyAgTlZNRV9TQ19JTlZBTElEX0ZPUk1BVCA9IDB4MTBhLAorICBOVk1FX1NDX0JBRF9BVFRSSUJVVEVTID0gMHgxODAsCisgIE5WTUVfU0NfV1JJVEVfRkFVTFQgPSAweDI4MCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9TQ19SRUFEX0VSUk9SID0gMHgyODEsCi0gTlZNRV9TQ19HVUFSRF9DSEVDSyA9IDB4MjgyLAotIE5WTUVfU0NfQVBQVEFHX0NIRUNLID0gMHgyODMsCi0gTlZNRV9TQ19SRUZUQUdfQ0hFQ0sgPSAweDI4NCwKKyAgTlZNRV9TQ19SRUFEX0VSUk9SID0gMHgyODEsCisgIE5WTUVfU0NfR1VBUkRfQ0hFQ0sgPSAweDI4MiwKKyAgTlZNRV9TQ19BUFBUQUdfQ0hFQ0sgPSAweDI4MywKKyAgTlZNRV9TQ19SRUZUQUdfQ0hFQ0sgPSAweDI4NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlZNRV9TQ19DT01QQVJFX0ZBSUxFRCA9IDB4Mjg1LAotIE5WTUVfU0NfQUNDRVNTX0RFTklFRCA9IDB4Mjg2LAorICBOVk1FX1NDX0NPTVBBUkVfRkFJTEVEID0gMHgyODUsCisgIE5WTUVfU0NfQUNDRVNTX0RFTklFRCA9IDB4Mjg2LAorICBOVk1FX1NDX0ROUiA9IDB4NDAwMCwKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG52bWVfY29tcGxldGlvbiB7CisgIF9fbGUzMiByZXN1bHQ7CisgIF9fdTMyIHJzdmQ7CisgIF9fbGUxNiBzcV9oZWFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgcmVzdWx0OwotIF9fdTMyIHJzdmQ7Ci0gX19sZTE2IHNxX2hlYWQ7Ci0gX19sZTE2IHNxX2lkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBjb21tYW5kX2lkOwotIF9fbGUxNiBzdGF0dXM7CisgIF9fbGUxNiBzcV9pZDsKKyAgX191MTYgY29tbWFuZF9pZDsKKyAgX19sZTE2IHN0YXR1czsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG52bWVfdXNlcl9pbyB7CisgIF9fdTggb3Bjb2RlOworICBfX3U4IGZsYWdzOworICBfX3UxNiBjb250cm9sOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG9wY29kZTsKLSBfX3U4IGZsYWdzOwotIF9fdTE2IGNvbnRyb2w7Ci0gX191MTYgbmJsb2NrczsKKyAgX191MTYgbmJsb2NrczsKKyAgX191MTYgcnN2ZDsKKyAgX191NjQgbWV0YWRhdGE7CisgIF9fdTY0IGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHJzdmQ7Ci0gX191NjQgbWV0YWRhdGE7Ci0gX191NjQgYWRkcjsKLSBfX3U2NCBzbGJhOworICBfX3U2NCBzbGJhOworICBfX3UzMiBkc21nbXQ7CisgIF9fdTMyIHJlZnRhZzsKKyAgX191MTYgYXBwdGFnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkc21nbXQ7Ci0gX191MzIgcmVmdGFnOwotIF9fdTE2IGFwcHRhZzsKLSBfX3UxNiBhcHBtYXNrOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgYXBwbWFzazsKIH07CiBzdHJ1Y3QgbnZtZV9hZG1pbl9jbWQgewotIF9fdTggb3Bjb2RlOwotIF9fdTggZmxhZ3M7CisgIF9fdTggb3Bjb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiByc3ZkMTsKLSBfX3UzMiBuc2lkOwotIF9fdTMyIGNkdzI7Ci0gX191MzIgY2R3MzsKKyAgX191OCBmbGFnczsKKyAgX191MTYgcnN2ZDE7CisgIF9fdTMyIG5zaWQ7CisgIF9fdTMyIGNkdzI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG1ldGFkYXRhOwotIF9fdTY0IGFkZHI7Ci0gX191MzIgbWV0YWRhdGFfbGVuOwotIF9fdTMyIGRhdGFfbGVuOworICBfX3UzMiBjZHczOworICBfX3U2NCBtZXRhZGF0YTsKKyAgX191NjQgYWRkcjsKKyAgX191MzIgbWV0YWRhdGFfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjZHcxMDsKLSBfX3UzMiBjZHcxMTsKLSBfX3UzMiBjZHcxMjsKLSBfX3UzMiBjZHcxMzsKKyAgX191MzIgZGF0YV9sZW47CisgIF9fdTMyIGNkdzEwOworICBfX3UzMiBjZHcxMTsKKyAgX191MzIgY2R3MTI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNkdzE0OwotIF9fdTMyIGNkdzE1OwotIF9fdTMyIHRpbWVvdXRfbXM7Ci0gX191MzIgcmVzdWx0OworICBfX3UzMiBjZHcxMzsKKyAgX191MzIgY2R3MTQ7CisgIF9fdTMyIGNkdzE1OworICBfX3UzMiB0aW1lb3V0X21zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcmVzdWx0OwogfTsKICNkZWZpbmUgTlZNRV9JT0NUTF9JRCBfSU8oJ04nLCAweDQwKQogI2RlZmluZSBOVk1FX0lPQ1RMX0FETUlOX0NNRCBfSU9XUignTicsIDB4NDEsIHN0cnVjdCBudm1lX2FkbWluX2NtZCkKLSNkZWZpbmUgTlZNRV9JT0NUTF9TVUJNSVRfSU8gX0lPVygnTicsIDB4NDIsIHN0cnVjdCBudm1lX3VzZXJfaW8pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBOVk1FX0lPQ1RMX1NVQk1JVF9JTyBfSU9XKCdOJywgMHg0Miwgc3RydWN0IG52bWVfdXNlcl9pbykKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9udnJhbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9udnJhbS5oCmluZGV4IDRjOGZjNTAuLmUwYzMyMGEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvbnZyYW0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L252cmFtLmgKQEAgLTIzLDYgKzIzLDYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5WUkFNX1NFVENLUyBfSU8oJ3AnLCAweDQxKQogI2RlZmluZSBOVlJBTV9GSVJTVF9CWVRFIDE0Ci0jZGVmaW5lIE5WUkFNX09GRlNFVCh4KSAoKHgpLU5WUkFNX0ZJUlNUX0JZVEUpCisjZGVmaW5lIE5WUkFNX09GRlNFVCh4KSAoKHgpIC0gTlZSQU1fRklSU1RfQllURSkKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvb21hcDNpc3AuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvb21hcDNpc3AuaAppbmRleCBlMTAzODA4Li4zY2JhNGU0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L29tYXAzaXNwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9vbWFwM2lzcC5oCkBAIC0yMSwxNCArMjEsMTQgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogI2luY2x1ZGUgPGxpbnV4L3ZpZGVvZGV2Mi5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVklESU9DX09NQVAzSVNQX0NDRENfQ0ZHICAgX0lPV1IoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMSwgc3RydWN0IG9tYXAzaXNwX2NjZGNfdXBkYXRlX2NvbmZpZykKLSNkZWZpbmUgVklESU9DX09NQVAzSVNQX1BSVl9DRkcgICBfSU9XUignVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyAyLCBzdHJ1Y3Qgb21hcDNpc3BfcHJldl91cGRhdGVfY29uZmlnKQotI2RlZmluZSBWSURJT0NfT01BUDNJU1BfQUVXQl9DRkcgICBfSU9XUignVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyAzLCBzdHJ1Y3Qgb21hcDNpc3BfaDNhX2Fld2JfY29uZmlnKQotI2RlZmluZSBWSURJT0NfT01BUDNJU1BfSElTVF9DRkcgICBfSU9XUignVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyA0LCBzdHJ1Y3Qgb21hcDNpc3BfaGlzdF9jb25maWcpCisjZGVmaW5lIFZJRElPQ19PTUFQM0lTUF9DQ0RDX0NGRyBfSU9XUignVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyAxLCBzdHJ1Y3Qgb21hcDNpc3BfY2NkY191cGRhdGVfY29uZmlnKQorI2RlZmluZSBWSURJT0NfT01BUDNJU1BfUFJWX0NGRyBfSU9XUignVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyAyLCBzdHJ1Y3Qgb21hcDNpc3BfcHJldl91cGRhdGVfY29uZmlnKQorI2RlZmluZSBWSURJT0NfT01BUDNJU1BfQUVXQl9DRkcgX0lPV1IoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgMywgc3RydWN0IG9tYXAzaXNwX2gzYV9hZXdiX2NvbmZpZykKKyNkZWZpbmUgVklESU9DX09NQVAzSVNQX0hJU1RfQ0ZHIF9JT1dSKCdWJywgQkFTRV9WSURJT0NfUFJJVkFURSArIDQsIHN0cnVjdCBvbWFwM2lzcF9oaXN0X2NvbmZpZykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFZJRElPQ19PTUFQM0lTUF9BRl9DRkcgICBfSU9XUignVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyA1LCBzdHJ1Y3Qgb21hcDNpc3BfaDNhX2FmX2NvbmZpZykKLSNkZWZpbmUgVklESU9DX09NQVAzSVNQX1NUQVRfUkVRICAgX0lPV1IoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgNiwgc3RydWN0IG9tYXAzaXNwX3N0YXRfZGF0YSkKLSNkZWZpbmUgVklESU9DX09NQVAzSVNQX1NUQVRfRU4gICBfSU9XUignVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyA3LCB1bnNpZ25lZCBsb25nKQorI2RlZmluZSBWSURJT0NfT01BUDNJU1BfQUZfQ0ZHIF9JT1dSKCdWJywgQkFTRV9WSURJT0NfUFJJVkFURSArIDUsIHN0cnVjdCBvbWFwM2lzcF9oM2FfYWZfY29uZmlnKQorI2RlZmluZSBWSURJT0NfT01BUDNJU1BfU1RBVF9SRVEgX0lPV1IoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgNiwgc3RydWN0IG9tYXAzaXNwX3N0YXRfZGF0YSkKKyNkZWZpbmUgVklESU9DX09NQVAzSVNQX1NUQVRfRU4gX0lPV1IoJ1YnLCBCQVNFX1ZJRElPQ19QUklWQVRFICsgNywgdW5zaWduZWQgbG9uZykKICNkZWZpbmUgVjRMMl9FVkVOVF9PTUFQM0lTUF9DTEFTUyAoVjRMMl9FVkVOVF9QUklWQVRFX1NUQVJUIHwgMHgxMDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0VWRU5UX09NQVAzSVNQX0FFV0IgKFY0TDJfRVZFTlRfT01BUDNJU1BfQ0xBU1MgfCAweDEpCkBAIC0zNiw5ICszNiw5IEBACiAjZGVmaW5lIFY0TDJfRVZFTlRfT01BUDNJU1BfSElTVCAoVjRMMl9FVkVOVF9PTUFQM0lTUF9DTEFTUyB8IDB4MykKIHN0cnVjdCBvbWFwM2lzcF9zdGF0X2V2ZW50X3N0YXR1cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZyYW1lX251bWJlcjsKLSBfX3UxNiBjb25maWdfY291bnRlcjsKLSBfX3U4IGJ1Zl9lcnI7CisgIF9fdTMyIGZyYW1lX251bWJlcjsKKyAgX191MTYgY29uZmlnX2NvdW50ZXI7CisgIF9fdTggYnVmX2VycjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBPTUFQM0lTUF9BRVdCX01BWF9TQVRVUkFUSU9OX0xJTSAxMDIzCkBAIC04MywzMyArODMsMzMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE9NQVAzSVNQX0FGX01BWF9CVUZfU0laRSAyMjExODQKIHN0cnVjdCBvbWFwM2lzcF9oM2FfYWV3Yl9jb25maWcgewotIF9fdTMyIGJ1Zl9zaXplOwotIF9fdTE2IGNvbmZpZ19jb3VudGVyOworICBfX3UzMiBidWZfc2l6ZTsKKyAgX191MTYgY29uZmlnX2NvdW50ZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhdHVyYXRpb25fbGltaXQ7Ci0gX191MTYgd2luX2hlaWdodDsKLSBfX3UxNiB3aW5fd2lkdGg7Ci0gX191MTYgdmVyX3dpbl9jb3VudDsKKyAgX191MTYgc2F0dXJhdGlvbl9saW1pdDsKKyAgX191MTYgd2luX2hlaWdodDsKKyAgX191MTYgd2luX3dpZHRoOworICBfX3UxNiB2ZXJfd2luX2NvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBob3Jfd2luX2NvdW50OwotIF9fdTE2IHZlcl93aW5fc3RhcnQ7Ci0gX191MTYgaG9yX3dpbl9zdGFydDsKLSBfX3UxNiBibGtfdmVyX3dpbl9zdGFydDsKKyAgX191MTYgaG9yX3dpbl9jb3VudDsKKyAgX191MTYgdmVyX3dpbl9zdGFydDsKKyAgX191MTYgaG9yX3dpbl9zdGFydDsKKyAgX191MTYgYmxrX3Zlcl93aW5fc3RhcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGJsa193aW5faGVpZ2h0OwotIF9fdTE2IHN1YnNhbXBsZV92ZXJfaW5jOwotIF9fdTE2IHN1YnNhbXBsZV9ob3JfaW5jOwotIF9fdTggYWxhd19lbmFibGU7CisgIF9fdTE2IGJsa193aW5faGVpZ2h0OworICBfX3UxNiBzdWJzYW1wbGVfdmVyX2luYzsKKyAgX191MTYgc3Vic2FtcGxlX2hvcl9pbmM7CisgIF9fdTggYWxhd19lbmFibGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBvbWFwM2lzcF9zdGF0X2RhdGEgewotIHN0cnVjdCB0aW1ldmFsIHRzOwotIHZvaWQgX191c2VyICpidWY7CisgIHN0cnVjdCB0aW1ldmFsIHRzOworICB2b2lkIF9fdXNlciAqIGJ1ZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYnVmX3NpemU7Ci0gX191MTYgZnJhbWVfbnVtYmVyOwotIF9fdTE2IGN1cl9mcmFtZTsKLSBfX3UxNiBjb25maWdfY291bnRlcjsKKyAgX191MzIgYnVmX3NpemU7CisgIF9fdTE2IGZyYW1lX251bWJlcjsKKyAgX191MTYgY3VyX2ZyYW1lOworICBfX3UxNiBjb25maWdfY291bnRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBPTUFQM0lTUF9ISVNUX0JJTlNfMzIgMApAQCAtMTE3LDcgKzExNyw3IEBACiAjZGVmaW5lIE9NQVAzSVNQX0hJU1RfQklOU18xMjggMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgT01BUDNJU1BfSElTVF9CSU5TXzI1NiAzCi0jZGVmaW5lIE9NQVAzSVNQX0hJU1RfTUVNX1NJWkVfQklOUyhuKSAoKDEgPDwgKChuKSs1KSkqNCo0KQorI2RlZmluZSBPTUFQM0lTUF9ISVNUX01FTV9TSVpFX0JJTlMobikgKCgxIDw8ICgobikgKyA1KSkgKiA0ICogNCkKICNkZWZpbmUgT01BUDNJU1BfSElTVF9NRU1fU0laRSAxMDI0CiAjZGVmaW5lIE9NQVAzSVNQX0hJU1RfTUlOX1JFR0lPTlMgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTEzNiw3NCArMTM2LDc0IEBACiAjZGVmaW5lIE9NQVAzSVNQX0hJU1RfQ0ZBX0ZPVkVPTlgzIDEKIHN0cnVjdCBvbWFwM2lzcF9oaXN0X3JlZ2lvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGhfc3RhcnQ7Ci0gX191MTYgaF9lbmQ7Ci0gX191MTYgdl9zdGFydDsKLSBfX3UxNiB2X2VuZDsKKyAgX191MTYgaF9zdGFydDsKKyAgX191MTYgaF9lbmQ7CisgIF9fdTE2IHZfc3RhcnQ7CisgIF9fdTE2IHZfZW5kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgb21hcDNpc3BfaGlzdF9jb25maWcgewotIF9fdTMyIGJ1Zl9zaXplOwotIF9fdTE2IGNvbmZpZ19jb3VudGVyOworICBfX3UzMiBidWZfc2l6ZTsKKyAgX191MTYgY29uZmlnX2NvdW50ZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbnVtX2FjY19mcmFtZXM7Ci0gX191MTYgaGlzdF9iaW5zOwotIF9fdTggY2ZhOwotIF9fdTggd2dbT01BUDNJU1BfSElTVF9NQVhfV0ddOworICBfX3U4IG51bV9hY2NfZnJhbWVzOworICBfX3UxNiBoaXN0X2JpbnM7CisgIF9fdTggY2ZhOworICBfX3U4IHdnW09NQVAzSVNQX0hJU1RfTUFYX1dHXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBudW1fcmVnaW9uczsKLSBzdHJ1Y3Qgb21hcDNpc3BfaGlzdF9yZWdpb24gcmVnaW9uW09NQVAzSVNQX0hJU1RfTUFYX1JFR0lPTlNdOworICBfX3U4IG51bV9yZWdpb25zOworICBzdHJ1Y3Qgb21hcDNpc3BfaGlzdF9yZWdpb24gcmVnaW9uW09NQVAzSVNQX0hJU1RfTUFYX1JFR0lPTlNdOwogfTsKICNkZWZpbmUgT01BUDNJU1BfQUZfTlVNX0NPRUYgMTEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG9tYXAzaXNwX2gzYV9hZl9mdm1vZGUgewotIE9NQVAzSVNQX0FGX01PREVfU1VNTUVEID0gMCwKLSBPTUFQM0lTUF9BRl9NT0RFX1BFQUsgPSAxCisgIE9NQVAzSVNQX0FGX01PREVfU1VNTUVEID0gMCwKKyAgT01BUDNJU1BfQUZfTU9ERV9QRUFLID0gMQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG9tYXAzaXNwX2gzYV9hZl9yZ2Jwb3MgewotIE9NQVAzSVNQX0FGX0dSX0dCX0JBWUVSID0gMCwKLSBPTUFQM0lTUF9BRl9SR19HQl9CQVlFUiA9IDEsCi0gT01BUDNJU1BfQUZfR1JfQkdfQkFZRVIgPSAyLAorICBPTUFQM0lTUF9BRl9HUl9HQl9CQVlFUiA9IDAsCisgIE9NQVAzSVNQX0FGX1JHX0dCX0JBWUVSID0gMSwKKyAgT01BUDNJU1BfQUZfR1JfQkdfQkFZRVIgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPTUFQM0lTUF9BRl9SR19CR19CQVlFUiA9IDMsCi0gT01BUDNJU1BfQUZfR0dfUkJfQ1VTVE9NID0gNCwKLSBPTUFQM0lTUF9BRl9SQl9HR19DVVNUT00gPSA1CisgIE9NQVAzSVNQX0FGX1JHX0JHX0JBWUVSID0gMywKKyAgT01BUDNJU1BfQUZfR0dfUkJfQ1VTVE9NID0gNCwKKyAgT01BUDNJU1BfQUZfUkJfR0dfQ1VTVE9NID0gNQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgb21hcDNpc3BfaDNhX2FmX2htZiB7Ci0gX191OCBlbmFibGU7Ci0gX191OCB0aHJlc2hvbGQ7CisgIF9fdTggZW5hYmxlOworICBfX3U4IHRocmVzaG9sZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG9tYXAzaXNwX2gzYV9hZl9paXIgewotIF9fdTE2IGhfc3RhcnQ7Ci0gX191MTYgY29lZmZfc2V0MFtPTUFQM0lTUF9BRl9OVU1fQ09FRl07Ci0gX191MTYgY29lZmZfc2V0MVtPTUFQM0lTUF9BRl9OVU1fQ09FRl07CisgIF9fdTE2IGhfc3RhcnQ7CisgIF9fdTE2IGNvZWZmX3NldDBbT01BUDNJU1BfQUZfTlVNX0NPRUZdOworICBfX3UxNiBjb2VmZl9zZXQxW09NQVAzSVNQX0FGX05VTV9DT0VGXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG9tYXAzaXNwX2gzYV9hZl9wYXhlbCB7Ci0gX191MTYgaF9zdGFydDsKLSBfX3UxNiB2X3N0YXJ0OworICBfX3UxNiBoX3N0YXJ0OworICBfX3UxNiB2X3N0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHdpZHRoOwotIF9fdTggaGVpZ2h0OwotIF9fdTggaF9jbnQ7Ci0gX191OCB2X2NudDsKKyAgX191OCB3aWR0aDsKKyAgX191OCBoZWlnaHQ7CisgIF9fdTggaF9jbnQ7CisgIF9fdTggdl9jbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbGluZV9pbmM7CisgIF9fdTggbGluZV9pbmM7CiB9Owogc3RydWN0IG9tYXAzaXNwX2gzYV9hZl9jb25maWcgewotIF9fdTMyIGJ1Zl9zaXplOworICBfX3UzMiBidWZfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgY29uZmlnX2NvdW50ZXI7Ci0gc3RydWN0IG9tYXAzaXNwX2gzYV9hZl9obWYgaG1mOwotIHN0cnVjdCBvbWFwM2lzcF9oM2FfYWZfaWlyIGlpcjsKLSBzdHJ1Y3Qgb21hcDNpc3BfaDNhX2FmX3BheGVsIHBheGVsOworICBfX3UxNiBjb25maWdfY291bnRlcjsKKyAgc3RydWN0IG9tYXAzaXNwX2gzYV9hZl9obWYgaG1mOworICBzdHJ1Y3Qgb21hcDNpc3BfaDNhX2FmX2lpciBpaXI7CisgIHN0cnVjdCBvbWFwM2lzcF9oM2FfYWZfcGF4ZWwgcGF4ZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGVudW0gb21hcDNpc3BfaDNhX2FmX3JnYnBvcyByZ2JfcG9zOwotIGVudW0gb21hcDNpc3BfaDNhX2FmX2Z2bW9kZSBmdm1vZGU7Ci0gX191OCBhbGF3X2VuYWJsZTsKKyAgZW51bSBvbWFwM2lzcF9oM2FfYWZfcmdicG9zIHJnYl9wb3M7CisgIGVudW0gb21hcDNpc3BfaDNhX2FmX2Z2bW9kZSBmdm1vZGU7CisgIF9fdTggYWxhd19lbmFibGU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgT01BUDNJU1BfQ0NEQ19BTEFXICgxIDw8IDApCkBAIC0yMTgsNjggKzIxOCw2OCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgT01BUDNJU1BfUkdCX01BWCAzCiBlbnVtIG9tYXAzaXNwX2FsYXdfaXB3aWR0aCB7Ci0gT01BUDNJU1BfQUxBV19CSVQxMl8zID0gMHgzLAotIE9NQVAzSVNQX0FMQVdfQklUMTFfMiA9IDB4NCwKKyAgT01BUDNJU1BfQUxBV19CSVQxMl8zID0gMHgzLAorICBPTUFQM0lTUF9BTEFXX0JJVDExXzIgPSAweDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9NQVAzSVNQX0FMQVdfQklUMTBfMSA9IDB4NSwKLSBPTUFQM0lTUF9BTEFXX0JJVDlfMCA9IDB4NgorICBPTUFQM0lTUF9BTEFXX0JJVDEwXzEgPSAweDUsCisgIE9NQVAzSVNQX0FMQVdfQklUOV8wID0gMHg2CiB9Owogc3RydWN0IG9tYXAzaXNwX2NjZGNfbHNjX2NvbmZpZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG9mZnNldDsKLSBfX3U4IGdhaW5fbW9kZV9uOwotIF9fdTggZ2Fpbl9tb2RlX207Ci0gX191OCBnYWluX2Zvcm1hdDsKKyAgX191MTYgb2Zmc2V0OworICBfX3U4IGdhaW5fbW9kZV9uOworICBfX3U4IGdhaW5fbW9kZV9tOworICBfX3U4IGdhaW5fZm9ybWF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBmbXRzcGg7Ci0gX191MTYgZm10bG5oOwotIF9fdTE2IGZtdHNsdjsKLSBfX3UxNiBmbXRsbnY7CisgIF9fdTE2IGZtdHNwaDsKKyAgX191MTYgZm10bG5oOworICBfX3UxNiBmbXRzbHY7CisgIF9fdTE2IGZtdGxudjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpbml0aWFsX3g7Ci0gX191OCBpbml0aWFsX3k7Ci0gX191MzIgc2l6ZTsKKyAgX191OCBpbml0aWFsX3g7CisgIF9fdTggaW5pdGlhbF95OworICBfX3UzMiBzaXplOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgb21hcDNpc3BfY2NkY19iY2xhbXAgewotIF9fdTggb2JnYWluOwotIF9fdTggb2JzdHBpeGVsOwotIF9fdTggb2JsaW5lczsKKyAgX191OCBvYmdhaW47CisgIF9fdTggb2JzdHBpeGVsOworICBfX3U4IG9ibGluZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggb2JsZW47Ci0gX191MTYgZGNzdWJ2YWw7CisgIF9fdTggb2JsZW47CisgIF9fdTE2IGRjc3VidmFsOwogfTsKIHN0cnVjdCBvbWFwM2lzcF9jY2RjX2ZwYyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGZwbnVtOwotIF9fdTMyIGZwY2FkZHI7CisgIF9fdTE2IGZwbnVtOworICBfX3UzMiBmcGNhZGRyOwogfTsKIHN0cnVjdCBvbWFwM2lzcF9jY2RjX2JsY29tcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYl9tZzsKLSBfX3U4IGdiX2c7Ci0gX191OCBncl9jeTsKLSBfX3U4IHJfeWU7CisgIF9fdTggYl9tZzsKKyAgX191OCBnYl9nOworICBfX3U4IGdyX2N5OworICBfX3U4IHJfeWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBvbWFwM2lzcF9jY2RjX2N1bGxpbmcgewotIF9fdTggdl9wYXR0ZXJuOwotIF9fdTE2IGhfb2RkOworICBfX3U4IHZfcGF0dGVybjsKKyAgX191MTYgaF9vZGQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGhfZXZlbjsKKyAgX191MTYgaF9ldmVuOwogfTsKIHN0cnVjdCBvbWFwM2lzcF9jY2RjX3VwZGF0ZV9jb25maWcgewotIF9fdTE2IHVwZGF0ZTsKKyAgX191MTYgdXBkYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBmbGFnOwotIGVudW0gb21hcDNpc3BfYWxhd19pcHdpZHRoIGFsYXdpcDsKLSBzdHJ1Y3Qgb21hcDNpc3BfY2NkY19iY2xhbXAgX191c2VyICpiY2xhbXA7Ci0gc3RydWN0IG9tYXAzaXNwX2NjZGNfYmxjb21wIF9fdXNlciAqYmxjb21wOworICBfX3UxNiBmbGFnOworICBlbnVtIG9tYXAzaXNwX2FsYXdfaXB3aWR0aCBhbGF3aXA7CisgIHN0cnVjdCBvbWFwM2lzcF9jY2RjX2JjbGFtcCBfX3VzZXIgKiBiY2xhbXA7CisgIHN0cnVjdCBvbWFwM2lzcF9jY2RjX2JsY29tcCBfX3VzZXIgKiBibGNvbXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBvbWFwM2lzcF9jY2RjX2ZwYyBfX3VzZXIgKmZwYzsKLSBzdHJ1Y3Qgb21hcDNpc3BfY2NkY19sc2NfY29uZmlnIF9fdXNlciAqbHNjX2NmZzsKLSBzdHJ1Y3Qgb21hcDNpc3BfY2NkY19jdWxsaW5nIF9fdXNlciAqY3VsbDsKLSBfX3U4IF9fdXNlciAqbHNjOworICBzdHJ1Y3Qgb21hcDNpc3BfY2NkY19mcGMgX191c2VyICogZnBjOworICBzdHJ1Y3Qgb21hcDNpc3BfY2NkY19sc2NfY29uZmlnIF9fdXNlciAqIGxzY19jZmc7CisgIHN0cnVjdCBvbWFwM2lzcF9jY2RjX2N1bGxpbmcgX191c2VyICogY3VsbDsKKyAgX191OCBfX3VzZXIgKiBsc2M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgT01BUDNJU1BfUFJFVl9MVU1BRU5IICgxIDw8IDApCkBAIC0zMTEsMTA2ICszMTEsMTA2IEBACiAjZGVmaW5lIE9NQVAzSVNQX1BSRVZfREVURUNUX0NPUlJFQ1RfQ0hBTk5FTFMgNAogc3RydWN0IG9tYXAzaXNwX3ByZXZfaG1lZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggb2RkZGlzdDsKLSBfX3U4IGV2ZW5kaXN0OwotIF9fdTggdGhyZXM7CisgIF9fdTggb2RkZGlzdDsKKyAgX191OCBldmVuZGlzdDsKKyAgX191OCB0aHJlczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBvbWFwM2lzcF9jZmFfZm10IHsKLSBPTUFQM0lTUF9DRkFGTVRfQkFZRVIsCi0gT01BUDNJU1BfQ0ZBRk1UX1NPTllWR0EsCi0gT01BUDNJU1BfQ0ZBRk1UX1JHQkZPVkVPTiwKKyAgT01BUDNJU1BfQ0ZBRk1UX0JBWUVSLAorICBPTUFQM0lTUF9DRkFGTVRfU09OWVZHQSwKKyAgT01BUDNJU1BfQ0ZBRk1UX1JHQkZPVkVPTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT01BUDNJU1BfQ0ZBRk1UX0ROU1BMLAotIE9NQVAzSVNQX0NGQUZNVF9IT05FWUNPTUIsCi0gT01BUDNJU1BfQ0ZBRk1UX1JSR0dCQkZPVkVPTgorICBPTUFQM0lTUF9DRkFGTVRfRE5TUEwsCisgIE9NQVAzSVNQX0NGQUZNVF9IT05FWUNPTUIsCisgIE9NQVAzSVNQX0NGQUZNVF9SUkdHQkJGT1ZFT04KIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG9tYXAzaXNwX3ByZXZfY2ZhIHsKLSBlbnVtIG9tYXAzaXNwX2NmYV9mbXQgZm9ybWF0OwotIF9fdTggZ3JhZHRocnNfdmVydDsKLSBfX3U4IGdyYWR0aHJzX2hvcno7CisgIGVudW0gb21hcDNpc3BfY2ZhX2ZtdCBmb3JtYXQ7CisgIF9fdTggZ3JhZHRocnNfdmVydDsKKyAgX191OCBncmFkdGhyc19ob3J6OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0YWJsZVs0XVtPTUFQM0lTUF9QUkVWX0NGQV9CTEtfU0laRV07CisgIF9fdTMyIHRhYmxlWzRdW09NQVAzSVNQX1BSRVZfQ0ZBX0JMS19TSVpFXTsKIH07CiBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9jc3VwIHsKLSBfX3U4IGdhaW47CisgIF9fdTggZ2FpbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0aHJlczsKLSBfX3U4IGh5cGZfZW47CisgIF9fdTggdGhyZXM7CisgIF9fdTggaHlwZl9lbjsKIH07CiBzdHJ1Y3Qgb21hcDNpc3BfcHJldl93YmFsIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZGdhaW47Ci0gX191OCBjb2VmMzsKLSBfX3U4IGNvZWYyOwotIF9fdTggY29lZjE7CisgIF9fdTE2IGRnYWluOworICBfX3U4IGNvZWYzOworICBfX3U4IGNvZWYyOworICBfX3U4IGNvZWYxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNvZWYwOworICBfX3U4IGNvZWYwOwogfTsKIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2Jsa2FkaiB7Ci0gX191OCByZWQ7CisgIF9fdTggcmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGdyZWVuOwotIF9fdTggYmx1ZTsKKyAgX191OCBncmVlbjsKKyAgX191OCBibHVlOwogfTsKIHN0cnVjdCBvbWFwM2lzcF9wcmV2X3JnYnRvcmdiIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbWF0cml4W09NQVAzSVNQX1JHQl9NQVhdW09NQVAzSVNQX1JHQl9NQVhdOwotIF9fdTE2IG9mZnNldFtPTUFQM0lTUF9SR0JfTUFYXTsKKyAgX191MTYgbWF0cml4W09NQVAzSVNQX1JHQl9NQVhdW09NQVAzSVNQX1JHQl9NQVhdOworICBfX3UxNiBvZmZzZXRbT01BUDNJU1BfUkdCX01BWF07CiB9Owogc3RydWN0IG9tYXAzaXNwX3ByZXZfY3NjIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgbWF0cml4W09NQVAzSVNQX1JHQl9NQVhdW09NQVAzSVNQX1JHQl9NQVhdOwotIF9fczE2IG9mZnNldFtPTUFQM0lTUF9SR0JfTUFYXTsKKyAgX191MTYgbWF0cml4W09NQVAzSVNQX1JHQl9NQVhdW09NQVAzSVNQX1JHQl9NQVhdOworICBfX3MxNiBvZmZzZXRbT01BUDNJU1BfUkdCX01BWF07CiB9Owogc3RydWN0IG9tYXAzaXNwX3ByZXZfeWNsaW1pdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbWluQzsKLSBfX3U4IG1heEM7Ci0gX191OCBtaW5ZOwotIF9fdTggbWF4WTsKKyAgX191OCBtaW5DOworICBfX3U4IG1heEM7CisgIF9fdTggbWluWTsKKyAgX191OCBtYXhZOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9kY29yIHsKLSBfX3U4IGNvdXBsZXRfbW9kZV9lbjsKLSBfX3UzMiBkZXRlY3RfY29ycmVjdFtPTUFQM0lTUF9QUkVWX0RFVEVDVF9DT1JSRUNUX0NIQU5ORUxTXTsKKyAgX191OCBjb3VwbGV0X21vZGVfZW47CisgIF9fdTMyIGRldGVjdF9jb3JyZWN0W09NQVAzSVNQX1BSRVZfREVURUNUX0NPUlJFQ1RfQ0hBTk5FTFNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9uZiB7Ci0gX191OCBzcHJlYWQ7Ci0gX191MzIgdGFibGVbT01BUDNJU1BfUFJFVl9ORl9UQkxfU0laRV07CisgIF9fdTggc3ByZWFkOworICBfX3UzMiB0YWJsZVtPTUFQM0lTUF9QUkVWX05GX1RCTF9TSVpFXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG9tYXAzaXNwX3ByZXZfZ3RhYmxlcyB7Ci0gX191MzIgcmVkW09NQVAzSVNQX1BSRVZfR0FNTUFfVEJMX1NJWkVdOwotIF9fdTMyIGdyZWVuW09NQVAzSVNQX1BSRVZfR0FNTUFfVEJMX1NJWkVdOworICBfX3UzMiByZWRbT01BUDNJU1BfUFJFVl9HQU1NQV9UQkxfU0laRV07CisgIF9fdTMyIGdyZWVuW09NQVAzSVNQX1BSRVZfR0FNTUFfVEJMX1NJWkVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBibHVlW09NQVAzSVNQX1BSRVZfR0FNTUFfVEJMX1NJWkVdOworICBfX3UzMiBibHVlW09NQVAzSVNQX1BSRVZfR0FNTUFfVEJMX1NJWkVdOwogfTsKIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2x1bWEgewotIF9fdTMyIHRhYmxlW09NQVAzSVNQX1BSRVZfWUVOSF9UQkxfU0laRV07CisgIF9fdTMyIHRhYmxlW09NQVAzSVNQX1BSRVZfWUVOSF9UQkxfU0laRV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBvbWFwM2lzcF9wcmV2X3VwZGF0ZV9jb25maWcgewotIF9fdTMyIHVwZGF0ZTsKLSBfX3UzMiBmbGFnOworICBfX3UzMiB1cGRhdGU7CisgIF9fdTMyIGZsYWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNoYWRpbmdfc2hpZnQ7Ci0gc3RydWN0IG9tYXAzaXNwX3ByZXZfbHVtYSBfX3VzZXIgKmx1bWE7Ci0gc3RydWN0IG9tYXAzaXNwX3ByZXZfaG1lZCBfX3VzZXIgKmhtZWQ7Ci0gc3RydWN0IG9tYXAzaXNwX3ByZXZfY2ZhIF9fdXNlciAqY2ZhOworICBfX3UzMiBzaGFkaW5nX3NoaWZ0OworICBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9sdW1hIF9fdXNlciAqIGx1bWE7CisgIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2htZWQgX191c2VyICogaG1lZDsKKyAgc3RydWN0IG9tYXAzaXNwX3ByZXZfY2ZhIF9fdXNlciAqIGNmYTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IG9tYXAzaXNwX3ByZXZfY3N1cCBfX3VzZXIgKmNzdXA7Ci0gc3RydWN0IG9tYXAzaXNwX3ByZXZfd2JhbCBfX3VzZXIgKndiYWw7Ci0gc3RydWN0IG9tYXAzaXNwX3ByZXZfYmxrYWRqIF9fdXNlciAqYmxrYWRqOwotIHN0cnVjdCBvbWFwM2lzcF9wcmV2X3JnYnRvcmdiIF9fdXNlciAqcmdiMnJnYjsKKyAgc3RydWN0IG9tYXAzaXNwX3ByZXZfY3N1cCBfX3VzZXIgKiBjc3VwOworICBzdHJ1Y3Qgb21hcDNpc3BfcHJldl93YmFsIF9fdXNlciAqIHdiYWw7CisgIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2Jsa2FkaiBfX3VzZXIgKiBibGthZGo7CisgIHN0cnVjdCBvbWFwM2lzcF9wcmV2X3JnYnRvcmdiIF9fdXNlciAqIHJnYjJyZ2I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2NzYyBfX3VzZXIgKmNzYzsKLSBzdHJ1Y3Qgb21hcDNpc3BfcHJldl95Y2xpbWl0IF9fdXNlciAqeWNsaW1pdDsKLSBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9kY29yIF9fdXNlciAqZGNvcjsKLSBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9uZiBfX3VzZXIgKm5mOworICBzdHJ1Y3Qgb21hcDNpc3BfcHJldl9jc2MgX191c2VyICogY3NjOworICBzdHJ1Y3Qgb21hcDNpc3BfcHJldl95Y2xpbWl0IF9fdXNlciAqIHljbGltaXQ7CisgIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2Rjb3IgX191c2VyICogZGNvcjsKKyAgc3RydWN0IG9tYXAzaXNwX3ByZXZfbmYgX191c2VyICogbmY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBvbWFwM2lzcF9wcmV2X2d0YWJsZXMgX191c2VyICpnYW1tYTsKKyAgc3RydWN0IG9tYXAzaXNwX3ByZXZfZ3RhYmxlcyBfX3VzZXIgKiBnYW1tYTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvb21hcGZiLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L29tYXBmYi5oCmluZGV4IDA3ZThiOWYuLmQ4ZWRhZWYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvb21hcGZiLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9vbWFwZmIuaApAQCAtMjIsOSArMjIsOSBAQAogI2luY2x1ZGUgPGxpbnV4L2lvY3RsLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+Ci0jZGVmaW5lIE9NQVBfSU9XKG51bSwgZHR5cGUpIF9JT1coJ08nLCBudW0sIGR0eXBlKQotI2RlZmluZSBPTUFQX0lPUihudW0sIGR0eXBlKSBfSU9SKCdPJywgbnVtLCBkdHlwZSkKLSNkZWZpbmUgT01BUF9JT1dSKG51bSwgZHR5cGUpIF9JT1dSKCdPJywgbnVtLCBkdHlwZSkKKyNkZWZpbmUgT01BUF9JT1cobnVtLGR0eXBlKSBfSU9XKCdPJywgbnVtLCBkdHlwZSkKKyNkZWZpbmUgT01BUF9JT1IobnVtLGR0eXBlKSBfSU9SKCdPJywgbnVtLCBkdHlwZSkKKyNkZWZpbmUgT01BUF9JT1dSKG51bSxkdHlwZSkgX0lPV1IoJ08nLCBudW0sIGR0eXBlKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgT01BUF9JTyhudW0pIF9JTygnTycsIG51bSkKICNkZWZpbmUgT01BUEZCX01JUlJPUiBPTUFQX0lPVygzMSwgaW50KQpAQCAtODYsMTQ0ICs4NiwxNDQgQEAKICNkZWZpbmUgT01BUEZCX01FTV9JRFhfTUFTSyAweDdmCiBlbnVtIG9tYXBmYl9jb2xvcl9mb3JtYXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPTUFQRkJfQ09MT1JfUkdCNTY1ID0gMCwKLSBPTUFQRkJfQ09MT1JfWVVWNDIyLAotIE9NQVBGQl9DT0xPUl9ZVVY0MjAsCi0gT01BUEZCX0NPTE9SX0NMVVRfOEJQUCwKKyAgT01BUEZCX0NPTE9SX1JHQjU2NSA9IDAsCisgIE9NQVBGQl9DT0xPUl9ZVVY0MjIsCisgIE9NQVBGQl9DT0xPUl9ZVVY0MjAsCisgIE9NQVBGQl9DT0xPUl9DTFVUXzhCUFAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9NQVBGQl9DT0xPUl9DTFVUXzRCUFAsCi0gT01BUEZCX0NPTE9SX0NMVVRfMkJQUCwKLSBPTUFQRkJfQ09MT1JfQ0xVVF8xQlBQLAotIE9NQVBGQl9DT0xPUl9SR0I0NDQsCisgIE9NQVBGQl9DT0xPUl9DTFVUXzRCUFAsCisgIE9NQVBGQl9DT0xPUl9DTFVUXzJCUFAsCisgIE9NQVBGQl9DT0xPUl9DTFVUXzFCUFAsCisgIE9NQVBGQl9DT0xPUl9SR0I0NDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9NQVBGQl9DT0xPUl9ZVVk0MjIsCi0gT01BUEZCX0NPTE9SX0FSR0IxNiwKLSBPTUFQRkJfQ09MT1JfUkdCMjRVLAotIE9NQVBGQl9DT0xPUl9SR0IyNFAsCisgIE9NQVBGQl9DT0xPUl9ZVVk0MjIsCisgIE9NQVBGQl9DT0xPUl9BUkdCMTYsCisgIE9NQVBGQl9DT0xPUl9SR0IyNFUsCisgIE9NQVBGQl9DT0xPUl9SR0IyNFAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9NQVBGQl9DT0xPUl9BUkdCMzIsCi0gT01BUEZCX0NPTE9SX1JHQkEzMiwKLSBPTUFQRkJfQ09MT1JfUkdCWDMyLAorICBPTUFQRkJfQ09MT1JfQVJHQjMyLAorICBPTUFQRkJfQ09MT1JfUkdCQTMyLAorICBPTUFQRkJfQ09MT1JfUkdCWDMyLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgb21hcGZiX3VwZGF0ZV93aW5kb3cgewotIF9fdTMyIHgsIHk7Ci0gX191MzIgd2lkdGgsIGhlaWdodDsKLSBfX3UzMiBmb3JtYXQ7CisgIF9fdTMyIHgsIHk7CisgIF9fdTMyIHdpZHRoLCBoZWlnaHQ7CisgIF9fdTMyIGZvcm1hdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgb3V0X3gsIG91dF95OwotIF9fdTMyIG91dF93aWR0aCwgb3V0X2hlaWdodDsKLSBfX3UzMiByZXNlcnZlZFs4XTsKKyAgX191MzIgb3V0X3gsIG91dF95OworICBfX3UzMiBvdXRfd2lkdGgsIG91dF9oZWlnaHQ7CisgIF9fdTMyIHJlc2VydmVkWzhdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgb21hcGZiX3VwZGF0ZV93aW5kb3dfb2xkIHsKLSBfX3UzMiB4LCB5OwotIF9fdTMyIHdpZHRoLCBoZWlnaHQ7Ci0gX191MzIgZm9ybWF0OworICBfX3UzMiB4LCB5OworICBfX3UzMiB3aWR0aCwgaGVpZ2h0OworICBfX3UzMiBmb3JtYXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gb21hcGZiX3BsYW5lIHsKLSBPTUFQRkJfUExBTkVfR0ZYID0gMCwKLSBPTUFQRkJfUExBTkVfVklEMSwKKyAgT01BUEZCX1BMQU5FX0dGWCA9IDAsCisgIE9NQVBGQl9QTEFORV9WSUQxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPTUFQRkJfUExBTkVfVklEMiwKKyAgT01BUEZCX1BMQU5FX1ZJRDIsCiB9OwogZW51bSBvbWFwZmJfY2hhbm5lbF9vdXQgewotIE9NQVBGQl9DSEFOTkVMX09VVF9MQ0QgPSAwLAorICBPTUFQRkJfQ0hBTk5FTF9PVVRfTENEID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT01BUEZCX0NIQU5ORUxfT1VUX0RJR0lULAorICBPTUFQRkJfQ0hBTk5FTF9PVVRfRElHSVQsCiB9Owogc3RydWN0IG9tYXBmYl9wbGFuZV9pbmZvIHsKLSBfX3UzMiBwb3NfeDsKKyAgX191MzIgcG9zX3g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBvc195OwotIF9fdTggZW5hYmxlZDsKLSBfX3U4IGNoYW5uZWxfb3V0OwotIF9fdTggbWlycm9yOworICBfX3UzMiBwb3NfeTsKKyAgX191OCBlbmFibGVkOworICBfX3U4IGNoYW5uZWxfb3V0OworICBfX3U4IG1pcnJvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtZW1faWR4OwotIF9fdTMyIG91dF93aWR0aDsKLSBfX3UzMiBvdXRfaGVpZ2h0OwotIF9fdTMyIHJlc2VydmVkMlsxMl07CisgIF9fdTggbWVtX2lkeDsKKyAgX191MzIgb3V0X3dpZHRoOworICBfX3UzMiBvdXRfaGVpZ2h0OworICBfX3UzMiByZXNlcnZlZDJbMTJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgb21hcGZiX21lbV9pbmZvIHsKLSBfX3UzMiBzaXplOwotIF9fdTggdHlwZTsKKyAgX191MzIgc2l6ZTsKKyAgX191OCB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlc2VydmVkWzNdOworICBfX3U4IHJlc2VydmVkWzNdOwogfTsKIHN0cnVjdCBvbWFwZmJfY2FwcyB7Ci0gX191MzIgY3RybDsKKyAgX191MzIgY3RybDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGxhbmVfY29sb3I7Ci0gX191MzIgd25kX2NvbG9yOworICBfX3UzMiBwbGFuZV9jb2xvcjsKKyAgX191MzIgd25kX2NvbG9yOwogfTsKIGVudW0gb21hcGZiX2NvbG9yX2tleV90eXBlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT01BUEZCX0NPTE9SX0tFWV9ESVNBQkxFRCA9IDAsCi0gT01BUEZCX0NPTE9SX0tFWV9HRlhfRFNULAotIE9NQVBGQl9DT0xPUl9LRVlfVklEX1NSQywKKyAgT01BUEZCX0NPTE9SX0tFWV9ESVNBQkxFRCA9IDAsCisgIE9NQVBGQl9DT0xPUl9LRVlfR0ZYX0RTVCwKKyAgT01BUEZCX0NPTE9SX0tFWV9WSURfU1JDLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgb21hcGZiX2NvbG9yX2tleSB7Ci0gX191OCBjaGFubmVsX291dDsKLSBfX3UzMiBiYWNrZ3JvdW5kOwotIF9fdTMyIHRyYW5zX2tleTsKKyAgX191OCBjaGFubmVsX291dDsKKyAgX191MzIgYmFja2dyb3VuZDsKKyAgX191MzIgdHJhbnNfa2V5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGtleV90eXBlOworICBfX3U4IGtleV90eXBlOwogfTsKIGVudW0gb21hcGZiX3VwZGF0ZV9tb2RlIHsKLSBPTUFQRkJfVVBEQVRFX0RJU0FCTEVEID0gMCwKKyAgT01BUEZCX1VQREFURV9ESVNBQkxFRCA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9NQVBGQl9BVVRPX1VQREFURSwKLSBPTUFQRkJfTUFOVUFMX1VQREFURQorICBPTUFQRkJfQVVUT19VUERBVEUsCisgIE9NQVBGQl9NQU5VQUxfVVBEQVRFCiB9Owogc3RydWN0IG9tYXBmYl9tZW1vcnlfcmVhZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHg7Ci0gX191MTYgeTsKLSBfX3UxNiB3OwotIF9fdTE2IGg7CisgIF9fdTE2IHg7CisgIF9fdTE2IHk7CisgIF9fdTE2IHc7CisgIF9fdTE2IGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNpemVfdCBidWZmZXJfc2l6ZTsKLSB2b2lkIF9fdXNlciAqYnVmZmVyOworICBzaXplX3QgYnVmZmVyX3NpemU7CisgIHZvaWQgX191c2VyICogYnVmZmVyOwogfTsKIHN0cnVjdCBvbWFwZmJfb3ZsX2NvbG9ybW9kZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggb3ZlcmxheV9pZHg7Ci0gX191OCBtb2RlX2lkeDsKLSBfX3UzMiBiaXRzX3Blcl9waXhlbDsKLSBfX3UzMiBub25zdGQ7CisgIF9fdTggb3ZlcmxheV9pZHg7CisgIF9fdTggbW9kZV9pZHg7CisgIF9fdTMyIGJpdHNfcGVyX3BpeGVsOworICBfX3UzMiBub25zdGQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmYl9iaXRmaWVsZCByZWQ7Ci0gc3RydWN0IGZiX2JpdGZpZWxkIGdyZWVuOwotIHN0cnVjdCBmYl9iaXRmaWVsZCBibHVlOwotIHN0cnVjdCBmYl9iaXRmaWVsZCB0cmFuc3A7CisgIHN0cnVjdCBmYl9iaXRmaWVsZCByZWQ7CisgIHN0cnVjdCBmYl9iaXRmaWVsZCBncmVlbjsKKyAgc3RydWN0IGZiX2JpdGZpZWxkIGJsdWU7CisgIHN0cnVjdCBmYl9iaXRmaWVsZCB0cmFuc3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBvbWFwZmJfdnJhbV9pbmZvIHsKLSBfX3UzMiB0b3RhbDsKLSBfX3UzMiBmcmVlOworICBfX3UzMiB0b3RhbDsKKyAgX191MzIgZnJlZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGFyZ2VzdF9mcmVlX2Jsb2NrOwotIF9fdTMyIHJlc2VydmVkWzVdOworICBfX3UzMiBsYXJnZXN0X2ZyZWVfYmxvY2s7CisgIF9fdTMyIHJlc2VydmVkWzVdOwogfTsKIHN0cnVjdCBvbWFwZmJfdGVhcnN5bmNfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZW5hYmxlZDsKLSBfX3U4IHJlc2VydmVkMVszXTsKLSBfX3UxNiBsaW5lOwotIF9fdTE2IHJlc2VydmVkMjsKKyAgX191OCBlbmFibGVkOworICBfX3U4IHJlc2VydmVkMVszXTsKKyAgX191MTYgbGluZTsKKyAgX191MTYgcmVzZXJ2ZWQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgb21hcGZiX2Rpc3BsYXlfaW5mbyB7Ci0gX191MTYgeHJlczsKLSBfX3UxNiB5cmVzOworICBfX3UxNiB4cmVzOworICBfX3UxNiB5cmVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB3aWR0aDsKLSBfX3UzMiBoZWlnaHQ7Ci0gX191MzIgcmVzZXJ2ZWRbNV07CisgIF9fdTMyIHdpZHRoOworICBfX3UzMiBoZWlnaHQ7CisgIF9fdTMyIHJlc2VydmVkWzVdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvb29tLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L29vbS5oCmluZGV4IGQzN2YzNmMuLjNkYjA1Y2EgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvb29tLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9vb20uaApAQCAtMTgsMTEgKzE4LDExIEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX1VBUElfX0lOQ0xVREVfTElOVVhfT09NX0gKICNkZWZpbmUgX1VBUElfX0lOQ0xVREVfTElOVVhfT09NX0gKLSNkZWZpbmUgT09NX1NDT1JFX0FESl9NSU4gKC0xMDAwKQorI2RlZmluZSBPT01fU0NPUkVfQURKX01JTiAoLSAxMDAwKQogI2RlZmluZSBPT01fU0NPUkVfQURKX01BWCAxMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBPT01fRElTQUJMRSAoLTE3KQotI2RlZmluZSBPT01fQURKVVNUX01JTiAoLTE2KQorI2RlZmluZSBPT01fRElTQUJMRSAoLSAxNykKKyNkZWZpbmUgT09NX0FESlVTVF9NSU4gKC0gMTYpCiAjZGVmaW5lIE9PTV9BREpVU1RfTUFYIDE1CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L29wZW52c3dpdGNoLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L29wZW52c3dpdGNoLmgKaW5kZXggOTY0OWI2Yi4uNjYzZTM3ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9vcGVudnN3aXRjaC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvb3BlbnZzd2l0Y2guaApAQCAtMjIsNyArMjIsNyBAQAogI2luY2x1ZGUgPGxpbnV4L2lmX2V0aGVyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG92c19oZWFkZXIgewotIGludCBkcF9pZmluZGV4OworICBpbnQgZHBfaWZpbmRleDsKIH07CiAjZGVmaW5lIE9WU19EQVRBUEFUSF9GQU1JTFkgIm92c19kYXRhcGF0aCIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0zMSwzMDggKzMxLDMyNiBAQAogI2RlZmluZSBPVlNfRFBfVkVSX0ZFQVRVUkVTIDIKIGVudW0gb3ZzX2RhdGFwYXRoX2NtZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19EUF9DTURfVU5TUEVDLAotIE9WU19EUF9DTURfTkVXLAotIE9WU19EUF9DTURfREVMLAotIE9WU19EUF9DTURfR0VULAorICBPVlNfRFBfQ01EX1VOU1BFQywKKyAgT1ZTX0RQX0NNRF9ORVcsCisgIE9WU19EUF9DTURfREVMLAorICBPVlNfRFBfQ01EX0dFVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1ZTX0RQX0NNRF9TRVQKKyAgT1ZTX0RQX0NNRF9TRVQKIH07CiBlbnVtIG92c19kYXRhcGF0aF9hdHRyIHsKLSBPVlNfRFBfQVRUUl9VTlNQRUMsCisgIE9WU19EUF9BVFRSX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1ZTX0RQX0FUVFJfTkFNRSwKLSBPVlNfRFBfQVRUUl9VUENBTExfUElELAotIE9WU19EUF9BVFRSX1NUQVRTLAotIE9WU19EUF9BVFRSX01FR0FGTE9XX1NUQVRTLAorICBPVlNfRFBfQVRUUl9OQU1FLAorICBPVlNfRFBfQVRUUl9VUENBTExfUElELAorICBPVlNfRFBfQVRUUl9TVEFUUywKKyAgT1ZTX0RQX0FUVFJfTUVHQUZMT1dfU1RBVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19EUF9BVFRSX1VTRVJfRkVBVFVSRVMsCi0gX19PVlNfRFBfQVRUUl9NQVgKKyAgT1ZTX0RQX0FUVFJfVVNFUl9GRUFUVVJFUywKKyAgX19PVlNfRFBfQVRUUl9NQVgKIH07CiAjZGVmaW5lIE9WU19EUF9BVFRSX01BWCAoX19PVlNfRFBfQVRUUl9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBvdnNfZHBfc3RhdHMgewotIF9fdTY0IG5faGl0OwotIF9fdTY0IG5fbWlzc2VkOwotIF9fdTY0IG5fbG9zdDsKKyAgX191NjQgbl9oaXQ7CisgIF9fdTY0IG5fbWlzc2VkOworICBfX3U2NCBuX2xvc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG5fZmxvd3M7CisgIF9fdTY0IG5fZmxvd3M7CiB9Owogc3RydWN0IG92c19kcF9tZWdhZmxvd19zdGF0cyB7Ci0gX191NjQgbl9tYXNrX2hpdDsKKyAgX191NjQgbl9tYXNrX2hpdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbl9tYXNrczsKLSBfX3UzMiBwYWQwOwotIF9fdTY0IHBhZDE7Ci0gX191NjQgcGFkMjsKKyAgX191MzIgbl9tYXNrczsKKyAgX191MzIgcGFkMDsKKyAgX191NjQgcGFkMTsKKyAgX191NjQgcGFkMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IG92c192cG9ydF9zdGF0cyB7Ci0gX191NjQgcnhfcGFja2V0czsKLSBfX3U2NCB0eF9wYWNrZXRzOworICBfX3U2NCByeF9wYWNrZXRzOworICBfX3U2NCB0eF9wYWNrZXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByeF9ieXRlczsKLSBfX3U2NCB0eF9ieXRlczsKLSBfX3U2NCByeF9lcnJvcnM7Ci0gX191NjQgdHhfZXJyb3JzOworICBfX3U2NCByeF9ieXRlczsKKyAgX191NjQgdHhfYnl0ZXM7CisgIF9fdTY0IHJ4X2Vycm9yczsKKyAgX191NjQgdHhfZXJyb3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByeF9kcm9wcGVkOwotIF9fdTY0IHR4X2Ryb3BwZWQ7CisgIF9fdTY0IHJ4X2Ryb3BwZWQ7CisgIF9fdTY0IHR4X2Ryb3BwZWQ7CiB9OwogI2RlZmluZSBPVlNfRFBfRl9VTkFMSUdORUQgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE9WU1BfTE9DQUwgKChfX3UzMikwKQorI2RlZmluZSBPVlNfRFBfRl9WUE9SVF9QSURTICgxIDw8IDEpCisjZGVmaW5lIE9WU1BfTE9DQUwgKChfX3UzMikgMCkKICNkZWZpbmUgT1ZTX1BBQ0tFVF9GQU1JTFkgIm92c19wYWNrZXQiCiAjZGVmaW5lIE9WU19QQUNLRVRfVkVSU0lPTiAweDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG92c19wYWNrZXRfY21kIHsKKyAgT1ZTX1BBQ0tFVF9DTURfVU5TUEVDLAorICBPVlNfUEFDS0VUX0NNRF9NSVNTLAorICBPVlNfUEFDS0VUX0NNRF9BQ1RJT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19QQUNLRVRfQ01EX1VOU1BFQywKLSBPVlNfUEFDS0VUX0NNRF9NSVNTLAotIE9WU19QQUNLRVRfQ01EX0FDVElPTiwKLSBPVlNfUEFDS0VUX0NNRF9FWEVDVVRFCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBPVlNfUEFDS0VUX0NNRF9FWEVDVVRFCiB9OwogZW51bSBvdnNfcGFja2V0X2F0dHIgewotIE9WU19QQUNLRVRfQVRUUl9VTlNQRUMsCi0gT1ZTX1BBQ0tFVF9BVFRSX1BBQ0tFVCwKKyAgT1ZTX1BBQ0tFVF9BVFRSX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1ZTX1BBQ0tFVF9BVFRSX0tFWSwKLSBPVlNfUEFDS0VUX0FUVFJfQUNUSU9OUywKLSBPVlNfUEFDS0VUX0FUVFJfVVNFUkRBVEEsCi0gX19PVlNfUEFDS0VUX0FUVFJfTUFYCisgIE9WU19QQUNLRVRfQVRUUl9QQUNLRVQsCisgIE9WU19QQUNLRVRfQVRUUl9LRVksCisgIE9WU19QQUNLRVRfQVRUUl9BQ1RJT05TLAorICBPVlNfUEFDS0VUX0FUVFJfVVNFUkRBVEEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX09WU19QQUNLRVRfQVRUUl9NQVgKIH07CiAjZGVmaW5lIE9WU19QQUNLRVRfQVRUUl9NQVggKF9fT1ZTX1BBQ0tFVF9BVFRSX01BWCAtIDEpCiAjZGVmaW5lIE9WU19WUE9SVF9GQU1JTFkgIm92c192cG9ydCIKLSNkZWZpbmUgT1ZTX1ZQT1JUX01DR1JPVVAgIm92c192cG9ydCIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE9WU19WUE9SVF9NQ0dST1VQICJvdnNfdnBvcnQiCiAjZGVmaW5lIE9WU19WUE9SVF9WRVJTSU9OIDB4MQogZW51bSBvdnNfdnBvcnRfY21kIHsKLSBPVlNfVlBPUlRfQ01EX1VOU1BFQywKLSBPVlNfVlBPUlRfQ01EX05FVywKKyAgT1ZTX1ZQT1JUX0NNRF9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19WUE9SVF9DTURfREVMLAotIE9WU19WUE9SVF9DTURfR0VULAotIE9WU19WUE9SVF9DTURfU0VUCisgIE9WU19WUE9SVF9DTURfTkVXLAorICBPVlNfVlBPUlRfQ01EX0RFTCwKKyAgT1ZTX1ZQT1JUX0NNRF9HRVQsCisgIE9WU19WUE9SVF9DTURfU0VUCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG92c192cG9ydF90eXBlIHsKLSBPVlNfVlBPUlRfVFlQRV9VTlNQRUMsCi0gT1ZTX1ZQT1JUX1RZUEVfTkVUREVWLAotIE9WU19WUE9SVF9UWVBFX0lOVEVSTkFMLAorICBPVlNfVlBPUlRfVFlQRV9VTlNQRUMsCisgIE9WU19WUE9SVF9UWVBFX05FVERFViwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1ZTX1ZQT1JUX1RZUEVfR1JFLAotIE9WU19WUE9SVF9UWVBFX1ZYTEFOLAotIF9fT1ZTX1ZQT1JUX1RZUEVfTUFYCisgIE9WU19WUE9SVF9UWVBFX0lOVEVSTkFMLAorICBPVlNfVlBPUlRfVFlQRV9HUkUsCisgIE9WU19WUE9SVF9UWVBFX1ZYTEFOLAorICBPVlNfVlBPUlRfVFlQRV9HRU5FVkUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX09WU19WUE9SVF9UWVBFX01BWAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE9WU19WUE9SVF9UWVBFX01BWCAoX19PVlNfVlBPUlRfVFlQRV9NQVggLSAxKQogZW51bSBvdnNfdnBvcnRfYXR0ciB7Ci0gT1ZTX1ZQT1JUX0FUVFJfVU5TUEVDLAotIE9WU19WUE9SVF9BVFRSX1BPUlRfTk8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19WUE9SVF9BVFRSX1RZUEUsCi0gT1ZTX1ZQT1JUX0FUVFJfTkFNRSwKLSBPVlNfVlBPUlRfQVRUUl9PUFRJT05TLAotIE9WU19WUE9SVF9BVFRSX1VQQ0FMTF9QSUQsCisgIE9WU19WUE9SVF9BVFRSX1VOU1BFQywKKyAgT1ZTX1ZQT1JUX0FUVFJfUE9SVF9OTywKKyAgT1ZTX1ZQT1JUX0FUVFJfVFlQRSwKKyAgT1ZTX1ZQT1JUX0FUVFJfTkFNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1ZTX1ZQT1JUX0FUVFJfU1RBVFMsCi0gX19PVlNfVlBPUlRfQVRUUl9NQVgKKyAgT1ZTX1ZQT1JUX0FUVFJfT1BUSU9OUywKKyAgT1ZTX1ZQT1JUX0FUVFJfVVBDQUxMX1BJRCwKKyAgT1ZTX1ZQT1JUX0FUVFJfU1RBVFMsCisgIF9fT1ZTX1ZQT1JUX0FUVFJfTUFYCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgT1ZTX1ZQT1JUX0FUVFJfTUFYIChfX09WU19WUE9SVF9BVFRSX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gT1ZTX1RVTk5FTF9BVFRSX1VOU1BFQywKLSBPVlNfVFVOTkVMX0FUVFJfRFNUX1BPUlQsCi0gX19PVlNfVFVOTkVMX0FUVFJfTUFYCisgIE9WU19UVU5ORUxfQVRUUl9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBPVlNfVFVOTkVMX0FUVFJfRFNUX1BPUlQsCisgIF9fT1ZTX1RVTk5FTF9BVFRSX01BWAogfTsKICNkZWZpbmUgT1ZTX1RVTk5FTF9BVFRSX01BWCAoX19PVlNfVFVOTkVMX0FUVFJfTUFYIC0gMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE9WU19GTE9XX0ZBTUlMWSAib3ZzX2Zsb3ciCiAjZGVmaW5lIE9WU19GTE9XX01DR1JPVVAgIm92c19mbG93IgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgT1ZTX0ZMT1dfVkVSU0lPTiAweDEKIGVudW0gb3ZzX2Zsb3dfY21kIHsKLSBPVlNfRkxPV19DTURfVU5TUEVDLAotIE9WU19GTE9XX0NNRF9ORVcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19GTE9XX0NNRF9ERUwsCi0gT1ZTX0ZMT1dfQ01EX0dFVCwKLSBPVlNfRkxPV19DTURfU0VUCisgIE9WU19GTE9XX0NNRF9VTlNQRUMsCisgIE9WU19GTE9XX0NNRF9ORVcsCisgIE9WU19GTE9XX0NNRF9ERUwsCisgIE9WU19GTE9XX0NNRF9HRVQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBPVlNfRkxPV19DTURfU0VUCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBvdnNfZmxvd19zdGF0cyB7Ci0gX191NjQgbl9wYWNrZXRzOwotIF9fdTY0IG5fYnl0ZXM7CisgIF9fdTY0IG5fcGFja2V0czsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IG5fYnl0ZXM7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gb3ZzX2tleV9hdHRyIHsKLSBPVlNfS0VZX0FUVFJfVU5TUEVDLAotIE9WU19LRVlfQVRUUl9FTkNBUCwKLSBPVlNfS0VZX0FUVFJfUFJJT1JJVFksCisgIE9WU19LRVlfQVRUUl9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19LRVlfQVRUUl9JTl9QT1JULAotIE9WU19LRVlfQVRUUl9FVEhFUk5FVCwKLSBPVlNfS0VZX0FUVFJfVkxBTiwKLSBPVlNfS0VZX0FUVFJfRVRIRVJUWVBFLAorICBPVlNfS0VZX0FUVFJfRU5DQVAsCisgIE9WU19LRVlfQVRUUl9QUklPUklUWSwKKyAgT1ZTX0tFWV9BVFRSX0lOX1BPUlQsCisgIE9WU19LRVlfQVRUUl9FVEhFUk5FVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1ZTX0tFWV9BVFRSX0lQVjQsCi0gT1ZTX0tFWV9BVFRSX0lQVjYsCi0gT1ZTX0tFWV9BVFRSX1RDUCwKLSBPVlNfS0VZX0FUVFJfVURQLAorICBPVlNfS0VZX0FUVFJfVkxBTiwKKyAgT1ZTX0tFWV9BVFRSX0VUSEVSVFlQRSwKKyAgT1ZTX0tFWV9BVFRSX0lQVjQsCisgIE9WU19LRVlfQVRUUl9JUFY2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPVlNfS0VZX0FUVFJfSUNNUCwKLSBPVlNfS0VZX0FUVFJfSUNNUFY2LAotIE9WU19LRVlfQVRUUl9BUlAsCi0gT1ZTX0tFWV9BVFRSX05ELAorICBPVlNfS0VZX0FUVFJfVENQLAorICBPVlNfS0VZX0FUVFJfVURQLAorICBPVlNfS0VZX0FUVFJfSUNNUCwKKyAgT1ZTX0tFWV9BVFRSX0lDTVBWNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1ZTX0tFWV9BVFRSX1NLQl9NQVJLLAotIE9WU19LRVlfQVRUUl9UVU5ORUwsCi0gT1ZTX0tFWV9BVFRSX1NDVFAsCi0gT1ZTX0tFWV9BVFRSX1RDUF9GTEFHUywKKyAgT1ZTX0tFWV9BVFRSX0FSUCwKKyAgT1ZTX0tFWV9BVFRSX05ELAorICBPVlNfS0VZX0FUVFJfU0tCX01BUkssCisgIE9WU19LRVlfQVRUUl9UVU5ORUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fT1ZTX0tFWV9BVFRSX01BWAorICBPVlNfS0VZX0FUVFJfU0NUUCwKKyAgT1ZTX0tFWV9BVFRSX1RDUF9GTEFHUywKKyAgT1ZTX0tFWV9BVFRSX0RQX0hBU0gsCisgIE9WU19LRVlfQVRUUl9SRUNJUkNfSUQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX09WU19LRVlfQVRUUl9NQVgKIH07CiAjZGVmaW5lIE9WU19LRVlfQVRUUl9NQVggKF9fT1ZTX0tFWV9BVFRSX01BWCAtIDEpCiBlbnVtIG92c190dW5uZWxfa2V5X2F0dHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPVlNfVFVOTkVMX0tFWV9BVFRSX0lELAotIE9WU19UVU5ORUxfS0VZX0FUVFJfSVBWNF9TUkMsCi0gT1ZTX1RVTk5FTF9LRVlfQVRUUl9JUFY0X0RTVCwKLSBPVlNfVFVOTkVMX0tFWV9BVFRSX1RPUywKKyAgT1ZTX1RVTk5FTF9LRVlfQVRUUl9JRCwKKyAgT1ZTX1RVTk5FTF9LRVlfQVRUUl9JUFY0X1NSQywKKyAgT1ZTX1RVTk5FTF9LRVlfQVRUUl9JUFY0X0RTVCwKKyAgT1ZTX1RVTk5FTF9LRVlfQVRUUl9UT1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19UVU5ORUxfS0VZX0FUVFJfVFRMLAotIE9WU19UVU5ORUxfS0VZX0FUVFJfRE9OVF9GUkFHTUVOVCwKLSBPVlNfVFVOTkVMX0tFWV9BVFRSX0NTVU0sCi0gX19PVlNfVFVOTkVMX0tFWV9BVFRSX01BWAorICBPVlNfVFVOTkVMX0tFWV9BVFRSX1RUTCwKKyAgT1ZTX1RVTk5FTF9LRVlfQVRUUl9ET05UX0ZSQUdNRU5ULAorICBPVlNfVFVOTkVMX0tFWV9BVFRSX0NTVU0sCisgIE9WU19UVU5ORUxfS0VZX0FUVFJfT0FNLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgT1ZTX1RVTk5FTF9LRVlfQVRUUl9HRU5FVkVfT1BUUywKKyAgX19PVlNfVFVOTkVMX0tFWV9BVFRSX01BWAogfTsKICNkZWZpbmUgT1ZTX1RVTk5FTF9LRVlfQVRUUl9NQVggKF9fT1ZTX1RVTk5FTF9LRVlfQVRUUl9NQVggLSAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gb3ZzX2ZyYWdfdHlwZSB7Ci0gT1ZTX0ZSQUdfVFlQRV9OT05FLAorICBPVlNfRlJBR19UWVBFX05PTkUsCisgIE9WU19GUkFHX1RZUEVfRklSU1QsCisgIE9WU19GUkFHX1RZUEVfTEFURVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19GUkFHX1RZUEVfRklSU1QsCi0gT1ZTX0ZSQUdfVFlQRV9MQVRFUiwKLSBfX09WU19GUkFHX1RZUEVfTUFYCisgIF9fT1ZTX0ZSQUdfVFlQRV9NQVgKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBPVlNfRlJBR19UWVBFX01BWCAoX19PVlNfRlJBR19UWVBFX01BWCAtIDEpCiBzdHJ1Y3Qgb3ZzX2tleV9ldGhlcm5ldCB7Ci0gX191OCBldGhfc3JjW0VUSF9BTEVOXTsKLSBfX3U4IGV0aF9kc3RbRVRIX0FMRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBldGhfc3JjW0VUSF9BTEVOXTsKKyAgX191OCBldGhfZHN0W0VUSF9BTEVOXTsKIH07CiBzdHJ1Y3Qgb3ZzX2tleV9pcHY0IHsKLSBfX2JlMzIgaXB2NF9zcmM7Ci0gX19iZTMyIGlwdjRfZHN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGlwdjRfcHJvdG87Ci0gX191OCBpcHY0X3RvczsKLSBfX3U4IGlwdjRfdHRsOwotIF9fdTggaXB2NF9mcmFnOworICBfX2JlMzIgaXB2NF9zcmM7CisgIF9fYmUzMiBpcHY0X2RzdDsKKyAgX191OCBpcHY0X3Byb3RvOworICBfX3U4IGlwdjRfdG9zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBpcHY0X3R0bDsKKyAgX191OCBpcHY0X2ZyYWc7CiB9Owogc3RydWN0IG92c19rZXlfaXB2NiB7Ci0gX19iZTMyIGlwdjZfc3JjWzRdOwotIF9fYmUzMiBpcHY2X2RzdFs0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGlwdjZfbGFiZWw7Ci0gX191OCBpcHY2X3Byb3RvOwotIF9fdTggaXB2Nl90Y2xhc3M7Ci0gX191OCBpcHY2X2hsaW1pdDsKKyAgX19iZTMyIGlwdjZfc3JjWzRdOworICBfX2JlMzIgaXB2Nl9kc3RbNF07CisgIF9fYmUzMiBpcHY2X2xhYmVsOworICBfX3U4IGlwdjZfcHJvdG87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaXB2Nl9mcmFnOworICBfX3U4IGlwdjZfdGNsYXNzOworICBfX3U4IGlwdjZfaGxpbWl0OworICBfX3U4IGlwdjZfZnJhZzsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG92c19rZXlfdGNwIHsKLSBfX2JlMTYgdGNwX3NyYzsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHRjcF9kc3Q7CisgIF9fYmUxNiB0Y3Bfc3JjOworICBfX2JlMTYgdGNwX2RzdDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG92c19rZXlfdWRwIHsKLSBfX2JlMTYgdWRwX3NyYzsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IHVkcF9kc3Q7CisgIF9fYmUxNiB1ZHBfc3JjOworICBfX2JlMTYgdWRwX2RzdDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG92c19rZXlfc2N0cCB7Ci0gX19iZTE2IHNjdHBfc3JjOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgc2N0cF9kc3Q7CisgIF9fYmUxNiBzY3RwX3NyYzsKKyAgX19iZTE2IHNjdHBfZHN0OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgb3ZzX2tleV9pY21wIHsKLSBfX3U4IGljbXBfdHlwZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpY21wX2NvZGU7CisgIF9fdTggaWNtcF90eXBlOworICBfX3U4IGljbXBfY29kZTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG92c19rZXlfaWNtcHY2IHsKLSBfX3U4IGljbXB2Nl90eXBlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGljbXB2Nl9jb2RlOworICBfX3U4IGljbXB2Nl90eXBlOworICBfX3U4IGljbXB2Nl9jb2RlOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgb3ZzX2tleV9hcnAgewotIF9fYmUzMiBhcnBfc2lwOworICBfX2JlMzIgYXJwX3NpcDsKKyAgX19iZTMyIGFycF90aXA7CisgIF9fYmUxNiBhcnBfb3A7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBhcnBfdGlwOwotIF9fYmUxNiBhcnBfb3A7Ci0gX191OCBhcnBfc2hhW0VUSF9BTEVOXTsKLSBfX3U4IGFycF90aGFbRVRIX0FMRU5dOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBhcnBfc2hhW0VUSF9BTEVOXTsKKyAgX191OCBhcnBfdGhhW0VUSF9BTEVOXTsKIH07CiBzdHJ1Y3Qgb3ZzX2tleV9uZCB7Ci0gX191MzIgbmRfdGFyZ2V0WzRdOwotIF9fdTggbmRfc2xsW0VUSF9BTEVOXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBuZF90bGxbRVRIX0FMRU5dOworICBfX3UzMiBuZF90YXJnZXRbNF07CisgIF9fdTggbmRfc2xsW0VUSF9BTEVOXTsKKyAgX191OCBuZF90bGxbRVRIX0FMRU5dOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG92c19mbG93X2F0dHIgewotIE9WU19GTE9XX0FUVFJfVU5TUEVDLAorICBPVlNfRkxPV19BVFRSX1VOU1BFQywKKyAgT1ZTX0ZMT1dfQVRUUl9LRVksCisgIE9WU19GTE9XX0FUVFJfQUNUSU9OUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1ZTX0ZMT1dfQVRUUl9LRVksCi0gT1ZTX0ZMT1dfQVRUUl9BQ1RJT05TLAotIE9WU19GTE9XX0FUVFJfU1RBVFMsCi0gT1ZTX0ZMT1dfQVRUUl9UQ1BfRkxBR1MsCisgIE9WU19GTE9XX0FUVFJfU1RBVFMsCisgIE9WU19GTE9XX0FUVFJfVENQX0ZMQUdTLAorICBPVlNfRkxPV19BVFRSX1VTRUQsCisgIE9WU19GTE9XX0FUVFJfQ0xFQVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE9WU19GTE9XX0FUVFJfVVNFRCwKLSBPVlNfRkxPV19BVFRSX0NMRUFSLAotIE9WU19GTE9XX0FUVFJfTUFTSywKLSBfX09WU19GTE9XX0FUVFJfTUFYCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBPVlNfRkxPV19BVFRSX01BU0ssCisgIF9fT1ZTX0ZMT1dfQVRUUl9NQVgKIH07CiAjZGVmaW5lIE9WU19GTE9XX0FUVFJfTUFYIChfX09WU19GTE9XX0FUVFJfTUFYIC0gMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIG92c19zYW1wbGVfYXR0ciB7Ci0gT1ZTX1NBTVBMRV9BVFRSX1VOU1BFQywKKyAgT1ZTX1NBTVBMRV9BVFRSX1VOU1BFQywKKyAgT1ZTX1NBTVBMRV9BVFRSX1BST0JBQklMSVRZLAorICBPVlNfU0FNUExFX0FUVFJfQUNUSU9OUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1ZTX1NBTVBMRV9BVFRSX1BST0JBQklMSVRZLAotIE9WU19TQU1QTEVfQVRUUl9BQ1RJT05TLAotIF9fT1ZTX1NBTVBMRV9BVFRSX01BWCwKKyAgX19PVlNfU0FNUExFX0FUVFJfTUFYLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE9WU19TQU1QTEVfQVRUUl9NQVggKF9fT1ZTX1NBTVBMRV9BVFRSX01BWCAtIDEpCiBlbnVtIG92c191c2Vyc3BhY2VfYXR0ciB7Ci0gT1ZTX1VTRVJTUEFDRV9BVFRSX1VOU1BFQywKLSBPVlNfVVNFUlNQQUNFX0FUVFJfUElELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBPVlNfVVNFUlNQQUNFX0FUVFJfVVNFUkRBVEEsCi0gX19PVlNfVVNFUlNQQUNFX0FUVFJfTUFYCisgIE9WU19VU0VSU1BBQ0VfQVRUUl9VTlNQRUMsCisgIE9WU19VU0VSU1BBQ0VfQVRUUl9QSUQsCisgIE9WU19VU0VSU1BBQ0VfQVRUUl9VU0VSREFUQSwKKyAgX19PVlNfVVNFUlNQQUNFX0FUVFJfTUFYCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgT1ZTX1VTRVJTUEFDRV9BVFRSX01BWCAoX19PVlNfVVNFUlNQQUNFX0FUVFJfTUFYIC0gMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgb3ZzX2FjdGlvbl9wdXNoX3ZsYW4gewotIF9fYmUxNiB2bGFuX3RwaWQ7Ci0gX19iZTE2IHZsYW5fdGNpOworICBfX2JlMTYgdmxhbl90cGlkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19iZTE2IHZsYW5fdGNpOwogfTsKK2VudW0gb3ZzX2hhc2hfYWxnIHsKKyAgT1ZTX0hBU0hfQUxHX0w0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitzdHJ1Y3Qgb3ZzX2FjdGlvbl9oYXNoIHsKKyAgdWludDMyX3QgaGFzaF9hbGc7CisgIHVpbnQzMl90IGhhc2hfYmFzaXM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKIGVudW0gb3ZzX2FjdGlvbl9hdHRyIHsKLSBPVlNfQUNUSU9OX0FUVFJfVU5TUEVDLAotIE9WU19BQ1RJT05fQVRUUl9PVVRQVVQsCi0gT1ZTX0FDVElPTl9BVFRSX1VTRVJTUEFDRSwKKyAgT1ZTX0FDVElPTl9BVFRSX1VOU1BFQywKKyAgT1ZTX0FDVElPTl9BVFRSX09VVFBVVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gT1ZTX0FDVElPTl9BVFRSX1NFVCwKLSBPVlNfQUNUSU9OX0FUVFJfUFVTSF9WTEFOLAotIE9WU19BQ1RJT05fQVRUUl9QT1BfVkxBTiwKLSBPVlNfQUNUSU9OX0FUVFJfU0FNUExFLAorICBPVlNfQUNUSU9OX0FUVFJfVVNFUlNQQUNFLAorICBPVlNfQUNUSU9OX0FUVFJfU0VULAorICBPVlNfQUNUSU9OX0FUVFJfUFVTSF9WTEFOLAorICBPVlNfQUNUSU9OX0FUVFJfUE9QX1ZMQU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fT1ZTX0FDVElPTl9BVFRSX01BWAorICBPVlNfQUNUSU9OX0FUVFJfU0FNUExFLAorICBPVlNfQUNUSU9OX0FUVFJfUkVDSVJDLAorICBPVlNfQUNUSU9OX0FUVFJfSEFTSCwKKyAgX19PVlNfQUNUSU9OX0FUVFJfTUFYCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgT1ZTX0FDVElPTl9BVFRSX01BWCAoX19PVlNfQUNUSU9OX0FUVFJfTUFYIC0gMSkKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGFja2V0X2RpYWcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGFja2V0X2RpYWcuaAppbmRleCA4YTFiMWRhLi41ZjU5NjliIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BhY2tldF9kaWFnLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wYWNrZXRfZGlhZy5oCkBAIC0yMSwxMyArMjEsMTMgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHBhY2tldF9kaWFnX3JlcSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2RpYWdfZmFtaWx5OwotIF9fdTggc2RpYWdfcHJvdG9jb2w7Ci0gX191MTYgcGFkOwotIF9fdTMyIHBkaWFnX2lubzsKKyAgX191OCBzZGlhZ19mYW1pbHk7CisgIF9fdTggc2RpYWdfcHJvdG9jb2w7CisgIF9fdTE2IHBhZDsKKyAgX191MzIgcGRpYWdfaW5vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwZGlhZ19zaG93OwotIF9fdTMyIHBkaWFnX2Nvb2tpZVsyXTsKKyAgX191MzIgcGRpYWdfc2hvdzsKKyAgX191MzIgcGRpYWdfY29va2llWzJdOwogfTsKICNkZWZpbmUgUEFDS0VUX1NIT1dfSU5GTyAweDAwMDAwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMzgsMzcgKzM4LDM3IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQQUNLRVRfU0hPV19GSUxURVIgMHgwMDAwMDAyMAogc3RydWN0IHBhY2tldF9kaWFnX21zZyB7Ci0gX191OCBwZGlhZ19mYW1pbHk7Ci0gX191OCBwZGlhZ190eXBlOworICBfX3U4IHBkaWFnX2ZhbWlseTsKKyAgX191OCBwZGlhZ190eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBwZGlhZ19udW07Ci0gX191MzIgcGRpYWdfaW5vOwotIF9fdTMyIHBkaWFnX2Nvb2tpZVsyXTsKKyAgX191MTYgcGRpYWdfbnVtOworICBfX3UzMiBwZGlhZ19pbm87CisgIF9fdTMyIHBkaWFnX2Nvb2tpZVsyXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gUEFDS0VUX0RJQUdfSU5GTywKLSBQQUNLRVRfRElBR19NQ0xJU1QsCi0gUEFDS0VUX0RJQUdfUlhfUklORywKKyAgUEFDS0VUX0RJQUdfSU5GTywKKyAgUEFDS0VUX0RJQUdfTUNMSVNULAorICBQQUNLRVRfRElBR19SWF9SSU5HLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQQUNLRVRfRElBR19UWF9SSU5HLAotIFBBQ0tFVF9ESUFHX0ZBTk9VVCwKLSBQQUNLRVRfRElBR19VSUQsCi0gUEFDS0VUX0RJQUdfTUVNSU5GTywKKyAgUEFDS0VUX0RJQUdfVFhfUklORywKKyAgUEFDS0VUX0RJQUdfRkFOT1VULAorICBQQUNLRVRfRElBR19VSUQsCisgIFBBQ0tFVF9ESUFHX01FTUlORk8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBBQ0tFVF9ESUFHX0ZJTFRFUiwKLSBfX1BBQ0tFVF9ESUFHX01BWCwKKyAgUEFDS0VUX0RJQUdfRklMVEVSLAorICBfX1BBQ0tFVF9ESUFHX01BWCwKIH07CiAjZGVmaW5lIFBBQ0tFVF9ESUFHX01BWCAoX19QQUNLRVRfRElBR19NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwYWNrZXRfZGlhZ19pbmZvIHsKLSBfX3UzMiBwZGlfaW5kZXg7Ci0gX191MzIgcGRpX3ZlcnNpb247Ci0gX191MzIgcGRpX3Jlc2VydmU7CisgIF9fdTMyIHBkaV9pbmRleDsKKyAgX191MzIgcGRpX3ZlcnNpb247CisgIF9fdTMyIHBkaV9yZXNlcnZlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwZGlfY29weV90aHJlc2g7Ci0gX191MzIgcGRpX3RzdGFtcDsKLSBfX3UzMiBwZGlfZmxhZ3M7CisgIF9fdTMyIHBkaV9jb3B5X3RocmVzaDsKKyAgX191MzIgcGRpX3RzdGFtcDsKKyAgX191MzIgcGRpX2ZsYWdzOwogI2RlZmluZSBQRElfUlVOTklORyAweDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBESV9BVVhEQVRBIDB4MgpAQCAtNzgsMjMgKzc4LDIzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBwYWNrZXRfZGlhZ19tY2xpc3QgewotIF9fdTMyIHBkbWNfaW5kZXg7Ci0gX191MzIgcGRtY19jb3VudDsKKyAgX191MzIgcGRtY19pbmRleDsKKyAgX191MzIgcGRtY19jb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcGRtY190eXBlOwotIF9fdTE2IHBkbWNfYWxlbjsKLSBfX3U4IHBkbWNfYWRkcltNQVhfQUREUl9MRU5dOworICBfX3UxNiBwZG1jX3R5cGU7CisgIF9fdTE2IHBkbWNfYWxlbjsKKyAgX191OCBwZG1jX2FkZHJbTUFYX0FERFJfTEVOXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHBhY2tldF9kaWFnX3JpbmcgewotIF9fdTMyIHBkcl9ibG9ja19zaXplOwotIF9fdTMyIHBkcl9ibG9ja19ucjsKLSBfX3UzMiBwZHJfZnJhbWVfc2l6ZTsKKyAgX191MzIgcGRyX2Jsb2NrX3NpemU7CisgIF9fdTMyIHBkcl9ibG9ja19ucjsKKyAgX191MzIgcGRyX2ZyYW1lX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBkcl9mcmFtZV9ucjsKLSBfX3UzMiBwZHJfcmV0aXJlX3RtbzsKLSBfX3UzMiBwZHJfc2l6ZW9mX3ByaXY7Ci0gX191MzIgcGRyX2ZlYXR1cmVzOworICBfX3UzMiBwZHJfZnJhbWVfbnI7CisgIF9fdTMyIHBkcl9yZXRpcmVfdG1vOworICBfX3UzMiBwZHJfc2l6ZW9mX3ByaXY7CisgIF9fdTMyIHBkcl9mZWF0dXJlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BhcnBvcnQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGFycG9ydC5oCmluZGV4IDM2N2FhZmIuLjgzYTdkMDggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGFycG9ydC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGFycG9ydC5oCkBAIC0xOSwxNiArMTksMTYgQEAKICNpZm5kZWYgX1VBUElfUEFSUE9SVF9IXwogI2RlZmluZSBfVUFQSV9QQVJQT1JUX0hfCiAjZGVmaW5lIFBBUlBPUlRfTUFYIDE2Ci0jZGVmaW5lIFBBUlBPUlRfSVJRX05PTkUgLTEKKyNkZWZpbmUgUEFSUE9SVF9JUlFfTk9ORSAtIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBBUlBPUlRfRE1BX05PTkUgLTEKLSNkZWZpbmUgUEFSUE9SVF9JUlFfQVVUTyAtMgotI2RlZmluZSBQQVJQT1JUX0RNQV9BVVRPIC0yCi0jZGVmaW5lIFBBUlBPUlRfRE1BX05PRklGTyAtMworI2RlZmluZSBQQVJQT1JUX0RNQV9OT05FIC0gMQorI2RlZmluZSBQQVJQT1JUX0lSUV9BVVRPIC0gMgorI2RlZmluZSBQQVJQT1JUX0RNQV9BVVRPIC0gMgorI2RlZmluZSBQQVJQT1JUX0RNQV9OT0ZJRk8gLSAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQQVJQT1JUX0RJU0FCTEUgLTIKLSNkZWZpbmUgUEFSUE9SVF9JUlFfUFJPQkVPTkxZIC0zCi0jZGVmaW5lIFBBUlBPUlRfSU9ISV9BVVRPIC0xCisjZGVmaW5lIFBBUlBPUlRfRElTQUJMRSAtIDIKKyNkZWZpbmUgUEFSUE9SVF9JUlFfUFJPQkVPTkxZIC0gMworI2RlZmluZSBQQVJQT1JUX0lPSElfQVVUTyAtIDEKICNkZWZpbmUgUEFSUE9SVF9DT05UUk9MX1NUUk9CRSAweDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBBUlBPUlRfQ09OVFJPTF9BVVRPRkQgMHgyCkBAIC00Miw1MiArNDIsNTIgQEAKICNkZWZpbmUgUEFSUE9SVF9TVEFUVVNfQlVTWSAweDgwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBlbnVtIHsKLSBQQVJQT1JUX0NMQVNTX0xFR0FDWSA9IDAsCi0gUEFSUE9SVF9DTEFTU19QUklOVEVSLAotIFBBUlBPUlRfQ0xBU1NfTU9ERU0sCisgIFBBUlBPUlRfQ0xBU1NfTEVHQUNZID0gMCwKKyAgUEFSUE9SVF9DTEFTU19QUklOVEVSLAorICBQQVJQT1JUX0NMQVNTX01PREVNLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQQVJQT1JUX0NMQVNTX05FVCwKLSBQQVJQT1JUX0NMQVNTX0hEQywKLSBQQVJQT1JUX0NMQVNTX1BDTUNJQSwKLSBQQVJQT1JUX0NMQVNTX01FRElBLAorICBQQVJQT1JUX0NMQVNTX05FVCwKKyAgUEFSUE9SVF9DTEFTU19IREMsCisgIFBBUlBPUlRfQ0xBU1NfUENNQ0lBLAorICBQQVJQT1JUX0NMQVNTX01FRElBLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQQVJQT1JUX0NMQVNTX0ZEQywKLSBQQVJQT1JUX0NMQVNTX1BPUlRTLAotIFBBUlBPUlRfQ0xBU1NfU0NBTk5FUiwKLSBQQVJQT1JUX0NMQVNTX0RJR0NBTSwKKyAgUEFSUE9SVF9DTEFTU19GREMsCisgIFBBUlBPUlRfQ0xBU1NfUE9SVFMsCisgIFBBUlBPUlRfQ0xBU1NfU0NBTk5FUiwKKyAgUEFSUE9SVF9DTEFTU19ESUdDQU0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBBUlBPUlRfQ0xBU1NfT1RIRVIsCi0gUEFSUE9SVF9DTEFTU19VTlNQRUMsCi0gUEFSUE9SVF9DTEFTU19TQ1NJQURBUFRFUgorICBQQVJQT1JUX0NMQVNTX09USEVSLAorICBQQVJQT1JUX0NMQVNTX1VOU1BFQywKKyAgUEFSUE9SVF9DTEFTU19TQ1NJQURBUFRFUgogfSBwYXJwb3J0X2RldmljZV9jbGFzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBBUlBPUlRfTU9ERV9QQ1NQUCAoMTw8MCkKLSNkZWZpbmUgUEFSUE9SVF9NT0RFX1RSSVNUQVRFICgxPDwxKQotI2RlZmluZSBQQVJQT1JUX01PREVfRVBQICgxPDwyKQotI2RlZmluZSBQQVJQT1JUX01PREVfRUNQICgxPDwzKQorI2RlZmluZSBQQVJQT1JUX01PREVfUENTUFAgKDEgPDwgMCkKKyNkZWZpbmUgUEFSUE9SVF9NT0RFX1RSSVNUQVRFICgxIDw8IDEpCisjZGVmaW5lIFBBUlBPUlRfTU9ERV9FUFAgKDEgPDwgMikKKyNkZWZpbmUgUEFSUE9SVF9NT0RFX0VDUCAoMSA8PCAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUEFSUE9SVF9NT0RFX0NPTVBBVCAoMTw8NCkKLSNkZWZpbmUgUEFSUE9SVF9NT0RFX0RNQSAoMTw8NSkKLSNkZWZpbmUgUEFSUE9SVF9NT0RFX1NBRkVJTklOVCAoMTw8NikKKyNkZWZpbmUgUEFSUE9SVF9NT0RFX0NPTVBBVCAoMSA8PCA0KQorI2RlZmluZSBQQVJQT1JUX01PREVfRE1BICgxIDw8IDUpCisjZGVmaW5lIFBBUlBPUlRfTU9ERV9TQUZFSU5JTlQgKDEgPDwgNikKICNkZWZpbmUgSUVFRTEyODRfTU9ERV9OSUJCTEUgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUVFRTEyODRfTU9ERV9CWVRFICgxPDwwKQotI2RlZmluZSBJRUVFMTI4NF9NT0RFX0NPTVBBVCAoMTw8OCkKLSNkZWZpbmUgSUVFRTEyODRfTU9ERV9CRUNQICgxPDw5KQotI2RlZmluZSBJRUVFMTI4NF9NT0RFX0VDUCAoMTw8NCkKKyNkZWZpbmUgSUVFRTEyODRfTU9ERV9CWVRFICgxIDw8IDApCisjZGVmaW5lIElFRUUxMjg0X01PREVfQ09NUEFUICgxIDw8IDgpCisjZGVmaW5lIElFRUUxMjg0X01PREVfQkVDUCAoMSA8PCA5KQorI2RlZmluZSBJRUVFMTI4NF9NT0RFX0VDUCAoMSA8PCA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUVFRTEyODRfTU9ERV9FQ1BSTEUgKElFRUUxMjg0X01PREVfRUNQIHwgKDE8PDUpKQotI2RlZmluZSBJRUVFMTI4NF9NT0RFX0VDUFNXRSAoMTw8MTApCi0jZGVmaW5lIElFRUUxMjg0X01PREVfRVBQICgxPDw2KQotI2RlZmluZSBJRUVFMTI4NF9NT0RFX0VQUFNMICgxPDwxMSkKKyNkZWZpbmUgSUVFRTEyODRfTU9ERV9FQ1BSTEUgKElFRUUxMjg0X01PREVfRUNQIHwgKDEgPDwgNSkpCisjZGVmaW5lIElFRUUxMjg0X01PREVfRUNQU1dFICgxIDw8IDEwKQorI2RlZmluZSBJRUVFMTI4NF9NT0RFX0VQUCAoMSA8PCA2KQorI2RlZmluZSBJRUVFMTI4NF9NT0RFX0VQUFNMICgxIDw8IDExKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUVFRTEyODRfTU9ERV9FUFBTV0UgKDE8PDEyKQotI2RlZmluZSBJRUVFMTI4NF9ERVZJQ0VJRCAoMTw8MikKLSNkZWZpbmUgSUVFRTEyODRfRVhUX0xJTksgKDE8PDE0KQotI2RlZmluZSBJRUVFMTI4NF9BRERSICgxPDwxMykKKyNkZWZpbmUgSUVFRTEyODRfTU9ERV9FUFBTV0UgKDEgPDwgMTIpCisjZGVmaW5lIElFRUUxMjg0X0RFVklDRUlEICgxIDw8IDIpCisjZGVmaW5lIElFRUUxMjg0X0VYVF9MSU5LICgxIDw8IDE0KQorI2RlZmluZSBJRUVFMTI4NF9BRERSICgxIDw8IDEzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUVFRTEyODRfREFUQSAwCi0jZGVmaW5lIFBBUlBPUlRfRVBQX0ZBU1QgKDE8PDApCi0jZGVmaW5lIFBBUlBPUlRfVzkxMjg0UElDICgxPDwxKQorI2RlZmluZSBQQVJQT1JUX0VQUF9GQVNUICgxIDw8IDApCisjZGVmaW5lIFBBUlBPUlRfVzkxMjg0UElDICgxIDw8IDEpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BhdGNoa2V5LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BhdGNoa2V5LmgKaW5kZXggZDFkYTI2Ny4uNDA2ZDgwMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wYXRjaGtleS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGF0Y2hrZXkuaApAQCAtMjYsOSArMjYsOSBAQAogI2lmZGVmIF9fQllURV9PUkRFUgogI2lmIF9fQllURV9PUkRFUiA9PSBfX0JJR19FTkRJQU4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9QQVRDSEtFWShpZCkgKDB4ZmQwMHxpZCkKLSNlbGlmIF9fQllURV9PUkRFUiA9PSBfX0xJVFRMRV9FTkRJQU4KLSNkZWZpbmUgX1BBVENIS0VZKGlkKSAoKGlkPDw4KXwweDAwZmQpCisjZGVmaW5lIF9QQVRDSEtFWShpZCkgKDB4ZmQwMCB8IGlkKQorI2VsaWYgX19CWVRFX09SREVSPT1fX0xJVFRMRV9FTkRJQU4KKyNkZWZpbmUgX1BBVENIS0VZKGlkKSAoKGlkIDw8IDgpIHwgMHgwMGZkKQogI2Vsc2UKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZXJyb3IgImNvdWxkIG5vdCBkZXRlcm1pbmUgYnl0ZSBvcmRlciIKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGNpLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BjaS5oCmluZGV4IDIwMzUyNDYuLjc1NjljY2EgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGNpLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wY2kuaApAQCAtMTksNyArMTksNyBAQAogI2lmbmRlZiBfVUFQSUxJTlVYX1BDSV9ICiAjZGVmaW5lIF9VQVBJTElOVVhfUENJX0gKICNpbmNsdWRlIDxsaW51eC9wY2lfcmVncy5oPgotI2RlZmluZSBQQ0lfREVWRk4oc2xvdCwgZnVuYykgKCgoKHNsb3QpICYgMHgxZikgPDwgMykgfCAoKGZ1bmMpICYgMHgwNykpCisjZGVmaW5lIFBDSV9ERVZGTihzbG90LGZ1bmMpICgoKChzbG90KSAmIDB4MWYpIDw8IDMpIHwgKChmdW5jKSAmIDB4MDcpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUENJX1NMT1QoZGV2Zm4pICgoKGRldmZuKSA+PiAzKSAmIDB4MWYpCiAjZGVmaW5lIFBDSV9GVU5DKGRldmZuKSAoKGRldmZuKSAmIDB4MDcpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BjaV9yZWdzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BjaV9yZWdzLmgKaW5kZXggZDIwZjUwMC4uZDE5MTgyMSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wY2lfcmVncy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGNpX3JlZ3MuaApAQCAtNTkxLDM2MCArNTkxLDM2MSBAQAogI2RlZmluZSBQQ0lfRVhQX1JUQ1RMX0NSU1NWRSAweDAwMTAKICNkZWZpbmUgUENJX0VYUF9SVENBUCAzMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VYUF9SVENBUF9DUlNWSVMgMHgwMDAxCiAjZGVmaW5lIFBDSV9FWFBfUlRTVEEgMzIKICNkZWZpbmUgUENJX0VYUF9SVFNUQV9QTUUgMHgwMDAxMDAwMAogI2RlZmluZSBQQ0lfRVhQX1JUU1RBX1BFTkRJTkcgMHgwMDAyMDAwMAotI2RlZmluZSBQQ0lfRVhQX0RFVkNBUDIgMzYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FWFBfREVWQ0FQMiAzNgogI2RlZmluZSBQQ0lfRVhQX0RFVkNBUDJfQVJJIDB4MDAwMDAwMjAKICNkZWZpbmUgUENJX0VYUF9ERVZDQVAyX0xUUiAweDAwMDAwODAwCiAjZGVmaW5lIFBDSV9FWFBfREVWQ0FQMl9PQkZGX01BU0sgMHgwMDBjMDAwMAotI2RlZmluZSBQQ0lfRVhQX0RFVkNBUDJfT0JGRl9NU0cgMHgwMDA0MDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VYUF9ERVZDQVAyX09CRkZfTVNHIDB4MDAwNDAwMDAKICNkZWZpbmUgUENJX0VYUF9ERVZDQVAyX09CRkZfV0FLRSAweDAwMDgwMDAwCiAjZGVmaW5lIFBDSV9FWFBfREVWQ1RMMiA0MAogI2RlZmluZSBQQ0lfRVhQX0RFVkNUTDJfQ09NUF9USU1FT1VUIDB4MDAwZgotI2RlZmluZSBQQ0lfRVhQX0RFVkNUTDJfQVJJIDB4MDAyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VYUF9ERVZDVEwyX0FSSSAweDAwMjAKICNkZWZpbmUgUENJX0VYUF9ERVZDVEwyX0lET19SRVFfRU4gMHgwMTAwCiAjZGVmaW5lIFBDSV9FWFBfREVWQ1RMMl9JRE9fQ01QX0VOIDB4MDIwMAogI2RlZmluZSBQQ0lfRVhQX0RFVkNUTDJfTFRSX0VOIDB4MDQwMAotI2RlZmluZSBQQ0lfRVhQX0RFVkNUTDJfT0JGRl9NU0dBX0VOIDB4MjAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VYUF9ERVZDVEwyX09CRkZfTVNHQV9FTiAweDIwMDAKICNkZWZpbmUgUENJX0VYUF9ERVZDVEwyX09CRkZfTVNHQl9FTiAweDQwMDAKICNkZWZpbmUgUENJX0VYUF9ERVZDVEwyX09CRkZfV0FLRV9FTiAweDYwMDAKICNkZWZpbmUgUENJX0VYUF9ERVZTVEEyIDQyCi0jZGVmaW5lIFBDSV9DQVBfRVhQX0VORFBPSU5UX1NJWkVPRl9WMiA0NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0NBUF9FWFBfRU5EUE9JTlRfU0laRU9GX1YyIDQ0CiAjZGVmaW5lIFBDSV9FWFBfTE5LQ0FQMiA0NAogI2RlZmluZSBQQ0lfRVhQX0xOS0NBUDJfU0xTXzJfNUdCIDB4MDAwMDAwMDIKICNkZWZpbmUgUENJX0VYUF9MTktDQVAyX1NMU181XzBHQiAweDAwMDAwMDA0Ci0jZGVmaW5lIFBDSV9FWFBfTE5LQ0FQMl9TTFNfOF8wR0IgMHgwMDAwMDAwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VYUF9MTktDQVAyX1NMU184XzBHQiAweDAwMDAwMDA4CiAjZGVmaW5lIFBDSV9FWFBfTE5LQ0FQMl9DUk9TU0xJTksgMHgwMDAwMDEwMAogI2RlZmluZSBQQ0lfRVhQX0xOS0NUTDIgNDgKICNkZWZpbmUgUENJX0VYUF9MTktTVEEyIDUwCi0jZGVmaW5lIFBDSV9FWFBfU0xUQ0FQMiA1MgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VYUF9TTFRDQVAyIDUyCiAjZGVmaW5lIFBDSV9FWFBfU0xUQ1RMMiA1NgogI2RlZmluZSBQQ0lfRVhQX1NMVFNUQTIgNTgKICNkZWZpbmUgUENJX0VYVF9DQVBfSUQoaGVhZGVyKSAoaGVhZGVyICYgMHgwMDAwZmZmZikKLSNkZWZpbmUgUENJX0VYVF9DQVBfVkVSKGhlYWRlcikgKChoZWFkZXIgPj4gMTYpICYgMHhmKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VYVF9DQVBfVkVSKGhlYWRlcikgKChoZWFkZXIgPj4gMTYpICYgMHhmKQogI2RlZmluZSBQQ0lfRVhUX0NBUF9ORVhUKGhlYWRlcikgKChoZWFkZXIgPj4gMjApICYgMHhmZmMpCiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX0VSUiAweDAxCiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1ZDIDB4MDIKLSNkZWZpbmUgUENJX0VYVF9DQVBfSURfRFNOIDB4MDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX0RTTiAweDAzCiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1BXUiAweDA0CiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1JDTEQgMHgwNQogI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9SQ0lMQyAweDA2Ci0jZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1JDRUMgMHgwNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VYVF9DQVBfSURfUkNFQyAweDA3CiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX01GVkMgMHgwOAogI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9WQzkgMHgwOQogI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9SQ1JCIDB4MEEKLSNkZWZpbmUgUENJX0VYVF9DQVBfSURfVk5EUiAweDBCCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9WTkRSIDB4MEIKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfQ0FDIDB4MEMKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfQUNTIDB4MEQKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfQVJJIDB4MEUKLSNkZWZpbmUgUENJX0VYVF9DQVBfSURfQVRTIDB4MEYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX0FUUyAweDBGCiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1NSSU9WIDB4MTAKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfTVJJT1YgMHgxMQogI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9NQ0FTVCAweDEyCi0jZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1BSSSAweDEzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9QUkkgMHgxMwogI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9BTURfWFhYIDB4MTQKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfUkVCQVIgMHgxNQogI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9EUEEgMHgxNgotI2RlZmluZSBQQ0lfRVhUX0NBUF9JRF9UUEggMHgxNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VYVF9DQVBfSURfVFBIIDB4MTcKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfTFRSIDB4MTgKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfU0VDUENJIDB4MTkKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfUE1VWCAweDFBCi0jZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1BBU0lEIDB4MUIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FWFRfQ0FQX0lEX1BBU0lEIDB4MUIKICNkZWZpbmUgUENJX0VYVF9DQVBfSURfTUFYIFBDSV9FWFRfQ0FQX0lEX1BBU0lECiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0RTTl9TSVpFT0YgMTIKICNkZWZpbmUgUENJX0VYVF9DQVBfTUNBU1RfRU5EUE9JTlRfU0laRU9GIDQwCi0jZGVmaW5lIFBDSV9FUlJfVU5DT1JfU1RBVFVTIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBDSV9FUlJfVU5DX1RSQUlOIDB4MDAwMDAwMDEKKyNkZWZpbmUgUENJX0VSUl9VTkNPUl9TVEFUVVMgNAorI2RlZmluZSBQQ0lfRVJSX1VOQ19VTkQgMHgwMDAwMDAwMQogI2RlZmluZSBQQ0lfRVJSX1VOQ19ETFAgMHgwMDAwMDAxMAogI2RlZmluZSBQQ0lfRVJSX1VOQ19TVVJQRE4gMHgwMDAwMDAyMAotI2RlZmluZSBQQ0lfRVJSX1VOQ19QT0lTT05fVExQIDB4MDAwMDEwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FUlJfVU5DX1BPSVNPTl9UTFAgMHgwMDAwMTAwMAogI2RlZmluZSBQQ0lfRVJSX1VOQ19GQ1AgMHgwMDAwMjAwMAogI2RlZmluZSBQQ0lfRVJSX1VOQ19DT01QX1RJTUUgMHgwMDAwNDAwMAogI2RlZmluZSBQQ0lfRVJSX1VOQ19DT01QX0FCT1JUIDB4MDAwMDgwMDAKLSNkZWZpbmUgUENJX0VSUl9VTkNfVU5YX0NPTVAgMHgwMDAxMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VSUl9VTkNfVU5YX0NPTVAgMHgwMDAxMDAwMAogI2RlZmluZSBQQ0lfRVJSX1VOQ19SWF9PVkVSIDB4MDAwMjAwMDAKICNkZWZpbmUgUENJX0VSUl9VTkNfTUFMRl9UTFAgMHgwMDA0MDAwMAogI2RlZmluZSBQQ0lfRVJSX1VOQ19FQ1JDIDB4MDAwODAwMDAKLSNkZWZpbmUgUENJX0VSUl9VTkNfVU5TVVAgMHgwMDEwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VSUl9VTkNfVU5TVVAgMHgwMDEwMDAwMAogI2RlZmluZSBQQ0lfRVJSX1VOQ19BQ1NWIDB4MDAyMDAwMDAKICNkZWZpbmUgUENJX0VSUl9VTkNfSU5UTiAweDAwNDAwMDAwCiAjZGVmaW5lIFBDSV9FUlJfVU5DX01DQlRMUCAweDAwODAwMDAwCi0jZGVmaW5lIFBDSV9FUlJfVU5DX0FUT01FRyAweDAxMDAwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfRVJSX1VOQ19BVE9NRUcgMHgwMTAwMDAwMAogI2RlZmluZSBQQ0lfRVJSX1VOQ19UTFBQUkUgMHgwMjAwMDAwMAogI2RlZmluZSBQQ0lfRVJSX1VOQ09SX01BU0sgOAogI2RlZmluZSBQQ0lfRVJSX1VOQ09SX1NFVkVSIDEyCi0jZGVmaW5lIFBDSV9FUlJfQ09SX1NUQVRVUyAxNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VSUl9DT1JfU1RBVFVTIDE2CiAjZGVmaW5lIFBDSV9FUlJfQ09SX1JDVlIgMHgwMDAwMDAwMQogI2RlZmluZSBQQ0lfRVJSX0NPUl9CQURfVExQIDB4MDAwMDAwNDAKICNkZWZpbmUgUENJX0VSUl9DT1JfQkFEX0RMTFAgMHgwMDAwMDA4MAotI2RlZmluZSBQQ0lfRVJSX0NPUl9SRVBfUk9MTCAweDAwMDAwMTAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfRVJSX0NPUl9SRVBfUk9MTCAweDAwMDAwMTAwCiAjZGVmaW5lIFBDSV9FUlJfQ09SX1JFUF9USU1FUiAweDAwMDAxMDAwCiAjZGVmaW5lIFBDSV9FUlJfQ09SX0FEVl9ORkFUIDB4MDAwMDIwMDAKICNkZWZpbmUgUENJX0VSUl9DT1JfSU5URVJOQUwgMHgwMDAwNDAwMAotI2RlZmluZSBQQ0lfRVJSX0NPUl9MT0dfT1ZFUiAweDAwMDA4MDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfRVJSX0NPUl9MT0dfT1ZFUiAweDAwMDA4MDAwCiAjZGVmaW5lIFBDSV9FUlJfQ09SX01BU0sgMjAKICNkZWZpbmUgUENJX0VSUl9DQVAgMjQKICNkZWZpbmUgUENJX0VSUl9DQVBfRkVQKHgpICgoeCkgJiAzMSkKLSNkZWZpbmUgUENJX0VSUl9DQVBfRUNSQ19HRU5DIDB4MDAwMDAwMjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9FUlJfQ0FQX0VDUkNfR0VOQyAweDAwMDAwMDIwCiAjZGVmaW5lIFBDSV9FUlJfQ0FQX0VDUkNfR0VORSAweDAwMDAwMDQwCiAjZGVmaW5lIFBDSV9FUlJfQ0FQX0VDUkNfQ0hLQyAweDAwMDAwMDgwCiAjZGVmaW5lIFBDSV9FUlJfQ0FQX0VDUkNfQ0hLRSAweDAwMDAwMTAwCi0jZGVmaW5lIFBDSV9FUlJfSEVBREVSX0xPRyAyOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VSUl9IRUFERVJfTE9HIDI4CiAjZGVmaW5lIFBDSV9FUlJfUk9PVF9DT01NQU5EIDQ0CiAjZGVmaW5lIFBDSV9FUlJfUk9PVF9DTURfQ09SX0VOIDB4MDAwMDAwMDEKICNkZWZpbmUgUENJX0VSUl9ST09UX0NNRF9OT05GQVRBTF9FTiAweDAwMDAwMDAyCi0jZGVmaW5lIFBDSV9FUlJfUk9PVF9DTURfRkFUQUxfRU4gMHgwMDAwMDAwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VSUl9ST09UX0NNRF9GQVRBTF9FTiAweDAwMDAwMDA0CiAjZGVmaW5lIFBDSV9FUlJfUk9PVF9TVEFUVVMgNDgKICNkZWZpbmUgUENJX0VSUl9ST09UX0NPUl9SQ1YgMHgwMDAwMDAwMQogI2RlZmluZSBQQ0lfRVJSX1JPT1RfTVVMVElfQ09SX1JDViAweDAwMDAwMDAyCi0jZGVmaW5lIFBDSV9FUlJfUk9PVF9VTkNPUl9SQ1YgMHgwMDAwMDAwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0VSUl9ST09UX1VOQ09SX1JDViAweDAwMDAwMDA0CiAjZGVmaW5lIFBDSV9FUlJfUk9PVF9NVUxUSV9VTkNPUl9SQ1YgMHgwMDAwMDAwOAogI2RlZmluZSBQQ0lfRVJSX1JPT1RfRklSU1RfRkFUQUwgMHgwMDAwMDAxMAogI2RlZmluZSBQQ0lfRVJSX1JPT1RfTk9ORkFUQUxfUkNWIDB4MDAwMDAwMjAKLSNkZWZpbmUgUENJX0VSUl9ST09UX0ZBVEFMX1JDViAweDAwMDAwMDQwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfRVJSX1JPT1RfRkFUQUxfUkNWIDB4MDAwMDAwNDAKICNkZWZpbmUgUENJX0VSUl9ST09UX0VSUl9TUkMgNTIKICNkZWZpbmUgUENJX1ZDX1BPUlRfQ0FQMSA0CiAjZGVmaW5lIFBDSV9WQ19DQVAxX0VWQ0MgMHgwMDAwMDAwNwotI2RlZmluZSBQQ0lfVkNfQ0FQMV9MUEVWQ0MgMHgwMDAwMDA3MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1ZDX0NBUDFfTFBFVkNDIDB4MDAwMDAwNzAKICNkZWZpbmUgUENJX1ZDX0NBUDFfQVJCX1NJWkUgMHgwMDAwMGMwMAogI2RlZmluZSBQQ0lfVkNfUE9SVF9DQVAyIDgKICNkZWZpbmUgUENJX1ZDX0NBUDJfMzJfUEhBU0UgMHgwMDAwMDAwMgotI2RlZmluZSBQQ0lfVkNfQ0FQMl82NF9QSEFTRSAweDAwMDAwMDA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfVkNfQ0FQMl82NF9QSEFTRSAweDAwMDAwMDA0CiAjZGVmaW5lIFBDSV9WQ19DQVAyXzEyOF9QSEFTRSAweDAwMDAwMDA4CiAjZGVmaW5lIFBDSV9WQ19DQVAyX0FSQl9PRkYgMHhmZjAwMDAwMAogI2RlZmluZSBQQ0lfVkNfUE9SVF9DVFJMIDEyCi0jZGVmaW5lIFBDSV9WQ19QT1JUX0NUUkxfTE9BRF9UQUJMRSAweDAwMDAwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfVkNfUE9SVF9DVFJMX0xPQURfVEFCTEUgMHgwMDAwMDAwMQogI2RlZmluZSBQQ0lfVkNfUE9SVF9TVEFUVVMgMTQKICNkZWZpbmUgUENJX1ZDX1BPUlRfU1RBVFVTX1RBQkxFIDB4MDAwMDAwMDEKICNkZWZpbmUgUENJX1ZDX1JFU19DQVAgMTYKLSNkZWZpbmUgUENJX1ZDX1JFU19DQVBfMzJfUEhBU0UgMHgwMDAwMDAwMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1ZDX1JFU19DQVBfMzJfUEhBU0UgMHgwMDAwMDAwMgogI2RlZmluZSBQQ0lfVkNfUkVTX0NBUF82NF9QSEFTRSAweDAwMDAwMDA0CiAjZGVmaW5lIFBDSV9WQ19SRVNfQ0FQXzEyOF9QSEFTRSAweDAwMDAwMDA4CiAjZGVmaW5lIFBDSV9WQ19SRVNfQ0FQXzEyOF9QSEFTRV9UQiAweDAwMDAwMDEwCi0jZGVmaW5lIFBDSV9WQ19SRVNfQ0FQXzI1Nl9QSEFTRSAweDAwMDAwMDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfVkNfUkVTX0NBUF8yNTZfUEhBU0UgMHgwMDAwMDAyMAogI2RlZmluZSBQQ0lfVkNfUkVTX0NBUF9BUkJfT0ZGIDB4ZmYwMDAwMDAKICNkZWZpbmUgUENJX1ZDX1JFU19DVFJMIDIwCiAjZGVmaW5lIFBDSV9WQ19SRVNfQ1RSTF9MT0FEX1RBQkxFIDB4MDAwMTAwMDAKLSNkZWZpbmUgUENJX1ZDX1JFU19DVFJMX0FSQl9TRUxFQ1QgMHgwMDBlMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1ZDX1JFU19DVFJMX0FSQl9TRUxFQ1QgMHgwMDBlMDAwMAogI2RlZmluZSBQQ0lfVkNfUkVTX0NUUkxfSUQgMHgwNzAwMDAwMAogI2RlZmluZSBQQ0lfVkNfUkVTX0NUUkxfRU5BQkxFIDB4ODAwMDAwMDAKICNkZWZpbmUgUENJX1ZDX1JFU19TVEFUVVMgMjYKLSNkZWZpbmUgUENJX1ZDX1JFU19TVEFUVVNfVEFCTEUgMHgwMDAwMDAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1ZDX1JFU19TVEFUVVNfVEFCTEUgMHgwMDAwMDAwMQogI2RlZmluZSBQQ0lfVkNfUkVTX1NUQVRVU19ORUdPIDB4MDAwMDAwMDIKICNkZWZpbmUgUENJX0NBUF9WQ19CQVNFX1NJWkVPRiAweDEwCiAjZGVmaW5lIFBDSV9DQVBfVkNfUEVSX1ZDX1NJWkVPRiAweDBDCi0jZGVmaW5lIFBDSV9QV1JfRFNSIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9QV1JfRFNSIDQKICNkZWZpbmUgUENJX1BXUl9EQVRBIDgKICNkZWZpbmUgUENJX1BXUl9EQVRBX0JBU0UoeCkgKCh4KSAmIDB4ZmYpCiAjZGVmaW5lIFBDSV9QV1JfREFUQV9TQ0FMRSh4KSAoKCh4KSA+PiA4KSAmIDMpCi0jZGVmaW5lIFBDSV9QV1JfREFUQV9QTV9TVUIoeCkgKCgoeCkgPj4gMTApICYgNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9QV1JfREFUQV9QTV9TVUIoeCkgKCgoeCkgPj4gMTApICYgNykKICNkZWZpbmUgUENJX1BXUl9EQVRBX1BNX1NUQVRFKHgpICgoKHgpID4+IDEzKSAmIDMpCiAjZGVmaW5lIFBDSV9QV1JfREFUQV9UWVBFKHgpICgoKHgpID4+IDE1KSAmIDcpCiAjZGVmaW5lIFBDSV9QV1JfREFUQV9SQUlMKHgpICgoKHgpID4+IDE4KSAmIDcpCi0jZGVmaW5lIFBDSV9QV1JfQ0FQIDEyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfUFdSX0NBUCAxMgogI2RlZmluZSBQQ0lfUFdSX0NBUF9CVURHRVQoeCkgKCh4KSAmIDEpCiAjZGVmaW5lIFBDSV9FWFRfQ0FQX1BXUl9TSVpFT0YgMTYKICNkZWZpbmUgUENJX1ZORFJfSEVBREVSIDQKLSNkZWZpbmUgUENJX1ZORFJfSEVBREVSX0lEKHgpICgoeCkgJiAweGZmZmYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfVk5EUl9IRUFERVJfSUQoeCkgKCh4KSAmIDB4ZmZmZikKICNkZWZpbmUgUENJX1ZORFJfSEVBREVSX1JFVih4KSAoKCh4KSA+PiAxNikgJiAweGYpCiAjZGVmaW5lIFBDSV9WTkRSX0hFQURFUl9MRU4oeCkgKCgoeCkgPj4gMjApICYgMHhmZmYpCiAjZGVmaW5lIEhUXzNCSVRfQ0FQX01BU0sgMHhFMAotI2RlZmluZSBIVF9DQVBUWVBFX1NMQVZFIDB4MDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEhUX0NBUFRZUEVfU0xBVkUgMHgwMAogI2RlZmluZSBIVF9DQVBUWVBFX0hPU1QgMHgyMAogI2RlZmluZSBIVF81QklUX0NBUF9NQVNLIDB4RjgKICNkZWZpbmUgSFRfQ0FQVFlQRV9JUlEgMHg4MAotI2RlZmluZSBIVF9DQVBUWVBFX1JFTUFQUElOR180MCAweEEwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBIVF9DQVBUWVBFX1JFTUFQUElOR180MCAweEEwCiAjZGVmaW5lIEhUX0NBUFRZUEVfUkVNQVBQSU5HXzY0IDB4QTIKICNkZWZpbmUgSFRfQ0FQVFlQRV9VTklUSURfQ0xVTVAgMHg5MAogI2RlZmluZSBIVF9DQVBUWVBFX0VYVENPTkYgMHg5OAotI2RlZmluZSBIVF9DQVBUWVBFX01TSV9NQVBQSU5HIDB4QTgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIEhUX0NBUFRZUEVfTVNJX01BUFBJTkcgMHhBOAogI2RlZmluZSBIVF9NU0lfRkxBR1MgMHgwMgogI2RlZmluZSBIVF9NU0lfRkxBR1NfRU5BQkxFIDB4MQogI2RlZmluZSBIVF9NU0lfRkxBR1NfRklYRUQgMHgyCi0jZGVmaW5lIEhUX01TSV9GSVhFRF9BRERSIDB4MDAwMDAwMDBGRUUwMDAwMFVMTAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSFRfTVNJX0ZJWEVEX0FERFIgMHgwMDAwMDAwMEZFRTAwMDAwVUxMCiAjZGVmaW5lIEhUX01TSV9BRERSX0xPIDB4MDQKICNkZWZpbmUgSFRfTVNJX0FERFJfTE9fTUFTSyAweEZGRjAwMDAwCiAjZGVmaW5lIEhUX01TSV9BRERSX0hJIDB4MDgKLSNkZWZpbmUgSFRfQ0FQVFlQRV9ESVJFQ1RfUk9VVEUgMHhCMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSFRfQ0FQVFlQRV9ESVJFQ1RfUk9VVEUgMHhCMAogI2RlZmluZSBIVF9DQVBUWVBFX1ZDU0VUIDB4QjgKICNkZWZpbmUgSFRfQ0FQVFlQRV9FUlJPUl9SRVRSWSAweEMwCiAjZGVmaW5lIEhUX0NBUFRZUEVfR0VOMyAweEQwCi0jZGVmaW5lIEhUX0NBUFRZUEVfUE0gMHhFMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSFRfQ0FQVFlQRV9QTSAweEUwCiAjZGVmaW5lIEhUX0NBUF9TSVpFT0ZfTE9ORyAyOAogI2RlZmluZSBIVF9DQVBfU0laRU9GX1NIT1JUIDI0CiAjZGVmaW5lIFBDSV9BUklfQ0FQIDB4MDQKLSNkZWZpbmUgUENJX0FSSV9DQVBfTUZWQyAweDAwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9BUklfQ0FQX01GVkMgMHgwMDAxCiAjZGVmaW5lIFBDSV9BUklfQ0FQX0FDUyAweDAwMDIKICNkZWZpbmUgUENJX0FSSV9DQVBfTkZOKHgpICgoKHgpID4+IDgpICYgMHhmZikKICNkZWZpbmUgUENJX0FSSV9DVFJMIDB4MDYKLSNkZWZpbmUgUENJX0FSSV9DVFJMX01GVkMgMHgwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfQVJJX0NUUkxfTUZWQyAweDAwMDEKICNkZWZpbmUgUENJX0FSSV9DVFJMX0FDUyAweDAwMDIKICNkZWZpbmUgUENJX0FSSV9DVFJMX0ZHKHgpICgoKHgpID4+IDQpICYgNykKICNkZWZpbmUgUENJX0VYVF9DQVBfQVJJX1NJWkVPRiA4Ci0jZGVmaW5lIFBDSV9BVFNfQ0FQIDB4MDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9BVFNfQ0FQIDB4MDQKICNkZWZpbmUgUENJX0FUU19DQVBfUURFUCh4KSAoKHgpICYgMHgxZikKICNkZWZpbmUgUENJX0FUU19NQVhfUURFUCAzMgogI2RlZmluZSBQQ0lfQVRTX0NUUkwgMHgwNgotI2RlZmluZSBQQ0lfQVRTX0NUUkxfRU5BQkxFIDB4ODAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0FUU19DVFJMX0VOQUJMRSAweDgwMDAKICNkZWZpbmUgUENJX0FUU19DVFJMX1NUVSh4KSAoKHgpICYgMHgxZikKICNkZWZpbmUgUENJX0FUU19NSU5fU1RVIDEyCiAjZGVmaW5lIFBDSV9FWFRfQ0FQX0FUU19TSVpFT0YgOAotI2RlZmluZSBQQ0lfUFJJX0NUUkwgMHgwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1BSSV9DVFJMIDB4MDQKICNkZWZpbmUgUENJX1BSSV9DVFJMX0VOQUJMRSAweDAxCiAjZGVmaW5lIFBDSV9QUklfQ1RSTF9SRVNFVCAweDAyCiAjZGVmaW5lIFBDSV9QUklfU1RBVFVTIDB4MDYKLSNkZWZpbmUgUENJX1BSSV9TVEFUVVNfUkYgMHgwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9QUklfU1RBVFVTX1JGIDB4MDAxCiAjZGVmaW5lIFBDSV9QUklfU1RBVFVTX1VQUkdJIDB4MDAyCiAjZGVmaW5lIFBDSV9QUklfU1RBVFVTX1NUT1BQRUQgMHgxMDAKICNkZWZpbmUgUENJX1BSSV9NQVhfUkVRIDB4MDgKLSNkZWZpbmUgUENJX1BSSV9BTExPQ19SRVEgMHgwYwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1BSSV9BTExPQ19SRVEgMHgwYwogI2RlZmluZSBQQ0lfRVhUX0NBUF9QUklfU0laRU9GIDE2CiAjZGVmaW5lIFBDSV9QQVNJRF9DQVAgMHgwNAogI2RlZmluZSBQQ0lfUEFTSURfQ0FQX0VYRUMgMHgwMgotI2RlZmluZSBQQ0lfUEFTSURfQ0FQX1BSSVYgMHgwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1BBU0lEX0NBUF9QUklWIDB4MDQKICNkZWZpbmUgUENJX1BBU0lEX0NUUkwgMHgwNgogI2RlZmluZSBQQ0lfUEFTSURfQ1RSTF9FTkFCTEUgMHgwMQogI2RlZmluZSBQQ0lfUEFTSURfQ1RSTF9FWEVDIDB4MDIKLSNkZWZpbmUgUENJX1BBU0lEX0NUUkxfUFJJViAweDA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfUEFTSURfQ1RSTF9QUklWIDB4MDQKICNkZWZpbmUgUENJX0VYVF9DQVBfUEFTSURfU0laRU9GIDgKICNkZWZpbmUgUENJX1NSSU9WX0NBUCAweDA0CiAjZGVmaW5lIFBDSV9TUklPVl9DQVBfVkZNIDB4MDEKLSNkZWZpbmUgUENJX1NSSU9WX0NBUF9JTlRSKHgpICgoeCkgPj4gMjEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfU1JJT1ZfQ0FQX0lOVFIoeCkgKCh4KSA+PiAyMSkKICNkZWZpbmUgUENJX1NSSU9WX0NUUkwgMHgwOAogI2RlZmluZSBQQ0lfU1JJT1ZfQ1RSTF9WRkUgMHgwMQogI2RlZmluZSBQQ0lfU1JJT1ZfQ1RSTF9WRk0gMHgwMgotI2RlZmluZSBQQ0lfU1JJT1ZfQ1RSTF9JTlRSIDB4MDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9TUklPVl9DVFJMX0lOVFIgMHgwNAogI2RlZmluZSBQQ0lfU1JJT1ZfQ1RSTF9NU0UgMHgwOAogI2RlZmluZSBQQ0lfU1JJT1ZfQ1RSTF9BUkkgMHgxMAogI2RlZmluZSBQQ0lfU1JJT1ZfU1RBVFVTIDB4MGEKLSNkZWZpbmUgUENJX1NSSU9WX1NUQVRVU19WRk0gMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1NSSU9WX1NUQVRVU19WRk0gMHgwMQogI2RlZmluZSBQQ0lfU1JJT1ZfSU5JVElBTF9WRiAweDBjCiAjZGVmaW5lIFBDSV9TUklPVl9UT1RBTF9WRiAweDBlCiAjZGVmaW5lIFBDSV9TUklPVl9OVU1fVkYgMHgxMAotI2RlZmluZSBQQ0lfU1JJT1ZfRlVOQ19MSU5LIDB4MTIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9TUklPVl9GVU5DX0xJTksgMHgxMgogI2RlZmluZSBQQ0lfU1JJT1ZfVkZfT0ZGU0VUIDB4MTQKICNkZWZpbmUgUENJX1NSSU9WX1ZGX1NUUklERSAweDE2CiAjZGVmaW5lIFBDSV9TUklPVl9WRl9ESUQgMHgxYQotI2RlZmluZSBQQ0lfU1JJT1ZfU1VQX1BHU0laRSAweDFjCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfU1JJT1ZfU1VQX1BHU0laRSAweDFjCiAjZGVmaW5lIFBDSV9TUklPVl9TWVNfUEdTSVpFIDB4MjAKICNkZWZpbmUgUENJX1NSSU9WX0JBUiAweDI0CiAjZGVmaW5lIFBDSV9TUklPVl9OVU1fQkFSUyA2Ci0jZGVmaW5lIFBDSV9TUklPVl9WRk0gMHgzYwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1NSSU9WX1ZGTSAweDNjCiAjZGVmaW5lIFBDSV9TUklPVl9WRk1fQklSKHgpICgoeCkgJiA3KQogI2RlZmluZSBQQ0lfU1JJT1ZfVkZNX09GRlNFVCh4KSAoKHgpICYgfjcpCiAjZGVmaW5lIFBDSV9TUklPVl9WRk1fVUEgMHgwCi0jZGVmaW5lIFBDSV9TUklPVl9WRk1fTUkgMHgxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfU1JJT1ZfVkZNX01JIDB4MQogI2RlZmluZSBQQ0lfU1JJT1ZfVkZNX01PIDB4MgogI2RlZmluZSBQQ0lfU1JJT1ZfVkZNX0FWIDB4MwogI2RlZmluZSBQQ0lfRVhUX0NBUF9TUklPVl9TSVpFT0YgNjQKLSNkZWZpbmUgUENJX0xUUl9NQVhfU05PT1BfTEFUIDB4NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0xUUl9NQVhfU05PT1BfTEFUIDB4NAogI2RlZmluZSBQQ0lfTFRSX01BWF9OT1NOT09QX0xBVCAweDYKICNkZWZpbmUgUENJX0xUUl9WQUxVRV9NQVNLIDB4MDAwMDAzZmYKICNkZWZpbmUgUENJX0xUUl9TQ0FMRV9NQVNLIDB4MDAwMDFjMDAKLSNkZWZpbmUgUENJX0xUUl9TQ0FMRV9TSElGVCAxMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0xUUl9TQ0FMRV9TSElGVCAxMAogI2RlZmluZSBQQ0lfRVhUX0NBUF9MVFJfU0laRU9GIDgKICNkZWZpbmUgUENJX0FDU19DQVAgMHgwNAogI2RlZmluZSBQQ0lfQUNTX1NWIDB4MDEKLSNkZWZpbmUgUENJX0FDU19UQiAweDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfQUNTX1RCIDB4MDIKICNkZWZpbmUgUENJX0FDU19SUiAweDA0CiAjZGVmaW5lIFBDSV9BQ1NfQ1IgMHgwOAogI2RlZmluZSBQQ0lfQUNTX1VGIDB4MTAKLSNkZWZpbmUgUENJX0FDU19FQyAweDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfQUNTX0VDIDB4MjAKICNkZWZpbmUgUENJX0FDU19EVCAweDQwCiAjZGVmaW5lIFBDSV9BQ1NfRUdSRVNTX0JJVFMgMHgwNQogI2RlZmluZSBQQ0lfQUNTX0NUUkwgMHgwNgotI2RlZmluZSBQQ0lfQUNTX0VHUkVTU19DVExfViAweDA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfQUNTX0VHUkVTU19DVExfViAweDA4CiAjZGVmaW5lIFBDSV9WU0VDX0hEUiA0CiAjZGVmaW5lIFBDSV9WU0VDX0hEUl9MRU5fU0hJRlQgMjAKICNkZWZpbmUgUENJX1NBVEFfUkVHUyA0Ci0jZGVmaW5lIFBDSV9TQVRBX1JFR1NfTUFTSyAweEYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9TQVRBX1JFR1NfTUFTSyAweEYKICNkZWZpbmUgUENJX1NBVEFfUkVHU19JTkxJTkUgMHhGCiAjZGVmaW5lIFBDSV9TQVRBX1NJWkVPRl9TSE9SVCA4CiAjZGVmaW5lIFBDSV9TQVRBX1NJWkVPRl9MT05HIDE2Ci0jZGVmaW5lIFBDSV9SRUJBUl9DVFJMIDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBDSV9SRUJBUl9DVFJMIDgKICNkZWZpbmUgUENJX1JFQkFSX0NUUkxfTkJBUl9NQVNLICg3IDw8IDUpCiAjZGVmaW5lIFBDSV9SRUJBUl9DVFJMX05CQVJfU0hJRlQgNQogI2RlZmluZSBQQ0lfRFBBX0NBUCA0Ci0jZGVmaW5lIFBDSV9EUEFfQ0FQX1NVQlNUQVRFX01BU0sgMHgxRgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX0RQQV9DQVBfU1VCU1RBVEVfTUFTSyAweDFGCiAjZGVmaW5lIFBDSV9EUEFfQkFTRV9TSVpFT0YgMTYKICNkZWZpbmUgUENJX1RQSF9DQVAgNAogI2RlZmluZSBQQ0lfVFBIX0NBUF9MT0NfTUFTSyAweDYwMAotI2RlZmluZSBQQ0lfVFBIX0xPQ19OT05FIDB4MDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQQ0lfVFBIX0xPQ19OT05FIDB4MDAwCiAjZGVmaW5lIFBDSV9UUEhfTE9DX0NBUCAweDIwMAogI2RlZmluZSBQQ0lfVFBIX0xPQ19NU0lYIDB4NDAwCiAjZGVmaW5lIFBDSV9UUEhfQ0FQX1NUX01BU0sgMHgwN0ZGMDAwMAotI2RlZmluZSBQQ0lfVFBIX0NBUF9TVF9TSElGVCAxNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUENJX1RQSF9DQVBfU1RfU0hJRlQgMTYKICNkZWZpbmUgUENJX1RQSF9CQVNFX1NJWkVPRiAxMgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BlcmZfZXZlbnQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGVyZl9ldmVudC5oCmluZGV4IDU5MjJjYmUuLmNjZWZhNzQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGVyZl9ldmVudC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGVyZl9ldmVudC5oCkBAIC0yMywzOTYgKzIzLDM1MiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxhc20vYnl0ZW9yZGVyLmg+CiBlbnVtIHBlcmZfdHlwZV9pZCB7Ci0gUEVSRl9UWVBFX0hBUkRXQVJFID0gMCwKLSBQRVJGX1RZUEVfU09GVFdBUkUgPSAxLAorICBQRVJGX1RZUEVfSEFSRFdBUkUgPSAwLAorICBQRVJGX1RZUEVfU09GVFdBUkUgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1RZUEVfVFJBQ0VQT0lOVCA9IDIsCi0gUEVSRl9UWVBFX0hXX0NBQ0hFID0gMywKLSBQRVJGX1RZUEVfUkFXID0gNCwKLSBQRVJGX1RZUEVfQlJFQUtQT0lOVCA9IDUsCisgIFBFUkZfVFlQRV9UUkFDRVBPSU5UID0gMiwKKyAgUEVSRl9UWVBFX0hXX0NBQ0hFID0gMywKKyAgUEVSRl9UWVBFX1JBVyA9IDQsCisgIFBFUkZfVFlQRV9CUkVBS1BPSU5UID0gNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9UWVBFX01BWCwKKyAgUEVSRl9UWVBFX01BWCwKIH07CiBlbnVtIHBlcmZfaHdfaWQgewotIFBFUkZfQ09VTlRfSFdfQ1BVX0NZQ0xFUyA9IDAsCisgIFBFUkZfQ09VTlRfSFdfQ1BVX0NZQ0xFUyA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfQ09VTlRfSFdfSU5TVFJVQ1RJT05TID0gMSwKLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX1JFRkVSRU5DRVMgPSAyLAotIFBFUkZfQ09VTlRfSFdfQ0FDSEVfTUlTU0VTID0gMywKLSBQRVJGX0NPVU5UX0hXX0JSQU5DSF9JTlNUUlVDVElPTlMgPSA0LAorICBQRVJGX0NPVU5UX0hXX0lOU1RSVUNUSU9OUyA9IDEsCisgIFBFUkZfQ09VTlRfSFdfQ0FDSEVfUkVGRVJFTkNFUyA9IDIsCisgIFBFUkZfQ09VTlRfSFdfQ0FDSEVfTUlTU0VTID0gMywKKyAgUEVSRl9DT1VOVF9IV19CUkFOQ0hfSU5TVFJVQ1RJT05TID0gNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9DT1VOVF9IV19CUkFOQ0hfTUlTU0VTID0gNSwKLSBQRVJGX0NPVU5UX0hXX0JVU19DWUNMRVMgPSA2LAotIFBFUkZfQ09VTlRfSFdfU1RBTExFRF9DWUNMRVNfRlJPTlRFTkQgPSA3LAotIFBFUkZfQ09VTlRfSFdfU1RBTExFRF9DWUNMRVNfQkFDS0VORCA9IDgsCisgIFBFUkZfQ09VTlRfSFdfQlJBTkNIX01JU1NFUyA9IDUsCisgIFBFUkZfQ09VTlRfSFdfQlVTX0NZQ0xFUyA9IDYsCisgIFBFUkZfQ09VTlRfSFdfU1RBTExFRF9DWUNMRVNfRlJPTlRFTkQgPSA3LAorICBQRVJGX0NPVU5UX0hXX1NUQUxMRURfQ1lDTEVTX0JBQ0tFTkQgPSA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX0NPVU5UX0hXX1JFRl9DUFVfQ1lDTEVTID0gOSwKLSBQRVJGX0NPVU5UX0hXX01BWCwKKyAgUEVSRl9DT1VOVF9IV19SRUZfQ1BVX0NZQ0xFUyA9IDksCisgIFBFUkZfQ09VTlRfSFdfTUFYLAogfTsKIGVudW0gcGVyZl9od19jYWNoZV9pZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfQ09VTlRfSFdfQ0FDSEVfTDFEID0gMCwKLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX0wxSSA9IDEsCi0gUEVSRl9DT1VOVF9IV19DQUNIRV9MTCA9IDIsCi0gUEVSRl9DT1VOVF9IV19DQUNIRV9EVExCID0gMywKKyAgUEVSRl9DT1VOVF9IV19DQUNIRV9MMUQgPSAwLAorICBQRVJGX0NPVU5UX0hXX0NBQ0hFX0wxSSA9IDEsCisgIFBFUkZfQ09VTlRfSFdfQ0FDSEVfTEwgPSAyLAorICBQRVJGX0NPVU5UX0hXX0NBQ0hFX0RUTEIgPSAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX0lUTEIgPSA0LAotIFBFUkZfQ09VTlRfSFdfQ0FDSEVfQlBVID0gNSwKLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX05PREUgPSA2LAotIFBFUkZfQ09VTlRfSFdfQ0FDSEVfTUFYLAorICBQRVJGX0NPVU5UX0hXX0NBQ0hFX0lUTEIgPSA0LAorICBQRVJGX0NPVU5UX0hXX0NBQ0hFX0JQVSA9IDUsCisgIFBFUkZfQ09VTlRfSFdfQ0FDSEVfTk9ERSA9IDYsCisgIFBFUkZfQ09VTlRfSFdfQ0FDSEVfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHBlcmZfaHdfY2FjaGVfb3BfaWQgewotIFBFUkZfQ09VTlRfSFdfQ0FDSEVfT1BfUkVBRCA9IDAsCi0gUEVSRl9DT1VOVF9IV19DQUNIRV9PUF9XUklURSA9IDEsCisgIFBFUkZfQ09VTlRfSFdfQ0FDSEVfT1BfUkVBRCA9IDAsCisgIFBFUkZfQ09VTlRfSFdfQ0FDSEVfT1BfV1JJVEUgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX09QX1BSRUZFVENIID0gMiwKLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX09QX01BWCwKKyAgUEVSRl9DT1VOVF9IV19DQUNIRV9PUF9QUkVGRVRDSCA9IDIsCisgIFBFUkZfQ09VTlRfSFdfQ0FDSEVfT1BfTUFYLAogfTsKIGVudW0gcGVyZl9od19jYWNoZV9vcF9yZXN1bHRfaWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX0NPVU5UX0hXX0NBQ0hFX1JFU1VMVF9BQ0NFU1MgPSAwLAotIFBFUkZfQ09VTlRfSFdfQ0FDSEVfUkVTVUxUX01JU1MgPSAxLAotIFBFUkZfQ09VTlRfSFdfQ0FDSEVfUkVTVUxUX01BWCwKKyAgUEVSRl9DT1VOVF9IV19DQUNIRV9SRVNVTFRfQUNDRVNTID0gMCwKKyAgUEVSRl9DT1VOVF9IV19DQUNIRV9SRVNVTFRfTUlTUyA9IDEsCisgIFBFUkZfQ09VTlRfSFdfQ0FDSEVfUkVTVUxUX01BWCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBwZXJmX3N3X2lkcyB7Ci0gUEVSRl9DT1VOVF9TV19DUFVfQ0xPQ0sgPSAwLAotIFBFUkZfQ09VTlRfU1dfVEFTS19DTE9DSyA9IDEsCi0gUEVSRl9DT1VOVF9TV19QQUdFX0ZBVUxUUyA9IDIsCisgIFBFUkZfQ09VTlRfU1dfQ1BVX0NMT0NLID0gMCwKKyAgUEVSRl9DT1VOVF9TV19UQVNLX0NMT0NLID0gMSwKKyAgUEVSRl9DT1VOVF9TV19QQUdFX0ZBVUxUUyA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfQ09VTlRfU1dfQ09OVEVYVF9TV0lUQ0hFUyA9IDMsCi0gUEVSRl9DT1VOVF9TV19DUFVfTUlHUkFUSU9OUyA9IDQsCi0gUEVSRl9DT1VOVF9TV19QQUdFX0ZBVUxUU19NSU4gPSA1LAotIFBFUkZfQ09VTlRfU1dfUEFHRV9GQVVMVFNfTUFKID0gNiwKKyAgUEVSRl9DT1VOVF9TV19DT05URVhUX1NXSVRDSEVTID0gMywKKyAgUEVSRl9DT1VOVF9TV19DUFVfTUlHUkFUSU9OUyA9IDQsCisgIFBFUkZfQ09VTlRfU1dfUEFHRV9GQVVMVFNfTUlOID0gNSwKKyAgUEVSRl9DT1VOVF9TV19QQUdFX0ZBVUxUU19NQUogPSA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX0NPVU5UX1NXX0FMSUdOTUVOVF9GQVVMVFMgPSA3LAotIFBFUkZfQ09VTlRfU1dfRU1VTEFUSU9OX0ZBVUxUUyA9IDgsCi0gUEVSRl9DT1VOVF9TV19EVU1NWSA9IDksCi0gUEVSRl9DT1VOVF9TV19NQVgsCisgIFBFUkZfQ09VTlRfU1dfQUxJR05NRU5UX0ZBVUxUUyA9IDcsCisgIFBFUkZfQ09VTlRfU1dfRU1VTEFUSU9OX0ZBVUxUUyA9IDgsCisgIFBFUkZfQ09VTlRfU1dfRFVNTVkgPSA5LAorICBQRVJGX0NPVU5UX1NXX01BWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBwZXJmX2V2ZW50X3NhbXBsZV9mb3JtYXQgewotIFBFUkZfU0FNUExFX0lQID0gMVUgPDwgMCwKLSBQRVJGX1NBTVBMRV9USUQgPSAxVSA8PCAxLAorICBQRVJGX1NBTVBMRV9JUCA9IDFVIDw8IDAsCisgIFBFUkZfU0FNUExFX1RJRCA9IDFVIDw8IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfU0FNUExFX1RJTUUgPSAxVSA8PCAyLAotIFBFUkZfU0FNUExFX0FERFIgPSAxVSA8PCAzLAotIFBFUkZfU0FNUExFX1JFQUQgPSAxVSA8PCA0LAotIFBFUkZfU0FNUExFX0NBTExDSEFJTiA9IDFVIDw8IDUsCisgIFBFUkZfU0FNUExFX1RJTUUgPSAxVSA8PCAyLAorICBQRVJGX1NBTVBMRV9BRERSID0gMVUgPDwgMywKKyAgUEVSRl9TQU1QTEVfUkVBRCA9IDFVIDw8IDQsCisgIFBFUkZfU0FNUExFX0NBTExDSEFJTiA9IDFVIDw8IDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfU0FNUExFX0lEID0gMVUgPDwgNiwKLSBQRVJGX1NBTVBMRV9DUFUgPSAxVSA8PCA3LAotIFBFUkZfU0FNUExFX1BFUklPRCA9IDFVIDw8IDgsCi0gUEVSRl9TQU1QTEVfU1RSRUFNX0lEID0gMVUgPDwgOSwKKyAgUEVSRl9TQU1QTEVfSUQgPSAxVSA8PCA2LAorICBQRVJGX1NBTVBMRV9DUFUgPSAxVSA8PCA3LAorICBQRVJGX1NBTVBMRV9QRVJJT0QgPSAxVSA8PCA4LAorICBQRVJGX1NBTVBMRV9TVFJFQU1fSUQgPSAxVSA8PCA5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1NBTVBMRV9SQVcgPSAxVSA8PCAxMCwKLSBQRVJGX1NBTVBMRV9CUkFOQ0hfU1RBQ0sgPSAxVSA8PCAxMSwKLSBQRVJGX1NBTVBMRV9SRUdTX1VTRVIgPSAxVSA8PCAxMiwKLSBQRVJGX1NBTVBMRV9TVEFDS19VU0VSID0gMVUgPDwgMTMsCisgIFBFUkZfU0FNUExFX1JBVyA9IDFVIDw8IDEwLAorICBQRVJGX1NBTVBMRV9CUkFOQ0hfU1RBQ0sgPSAxVSA8PCAxMSwKKyAgUEVSRl9TQU1QTEVfUkVHU19VU0VSID0gMVUgPDwgMTIsCisgIFBFUkZfU0FNUExFX1NUQUNLX1VTRVIgPSAxVSA8PCAxMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9TQU1QTEVfV0VJR0hUID0gMVUgPDwgMTQsCi0gUEVSRl9TQU1QTEVfREFUQV9TUkMgPSAxVSA8PCAxNSwKLSBQRVJGX1NBTVBMRV9JREVOVElGSUVSID0gMVUgPDwgMTYsCi0gUEVSRl9TQU1QTEVfVFJBTlNBQ1RJT04gPSAxVSA8PCAxNywKKyAgUEVSRl9TQU1QTEVfV0VJR0hUID0gMVUgPDwgMTQsCisgIFBFUkZfU0FNUExFX0RBVEFfU1JDID0gMVUgPDwgMTUsCisgIFBFUkZfU0FNUExFX0lERU5USUZJRVIgPSAxVSA8PCAxNiwKKyAgUEVSRl9TQU1QTEVfVFJBTlNBQ1RJT04gPSAxVSA8PCAxNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9TQU1QTEVfTUFYID0gMVUgPDwgMTgsCisgIFBFUkZfU0FNUExFX01BWCA9IDFVIDw8IDE4LAogfTsKIGVudW0gcGVyZl9icmFuY2hfc2FtcGxlX3R5cGUgewotIFBFUkZfU0FNUExFX0JSQU5DSF9VU0VSID0gMVUgPDwgMCwKKyAgUEVSRl9TQU1QTEVfQlJBTkNIX1VTRVIgPSAxVSA8PCAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1NBTVBMRV9CUkFOQ0hfS0VSTkVMID0gMVUgPDwgMSwKLSBQRVJGX1NBTVBMRV9CUkFOQ0hfSFYgPSAxVSA8PCAyLAotIFBFUkZfU0FNUExFX0JSQU5DSF9BTlkgPSAxVSA8PCAzLAotIFBFUkZfU0FNUExFX0JSQU5DSF9BTllfQ0FMTCA9IDFVIDw8IDQsCisgIFBFUkZfU0FNUExFX0JSQU5DSF9LRVJORUwgPSAxVSA8PCAxLAorICBQRVJGX1NBTVBMRV9CUkFOQ0hfSFYgPSAxVSA8PCAyLAorICBQRVJGX1NBTVBMRV9CUkFOQ0hfQU5ZID0gMVUgPDwgMywKKyAgUEVSRl9TQU1QTEVfQlJBTkNIX0FOWV9DQUxMID0gMVUgPDwgNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9TQU1QTEVfQlJBTkNIX0FOWV9SRVRVUk4gPSAxVSA8PCA1LAotIFBFUkZfU0FNUExFX0JSQU5DSF9JTkRfQ0FMTCA9IDFVIDw8IDYsCi0gUEVSRl9TQU1QTEVfQlJBTkNIX0FCT1JUX1RYID0gMVUgPDwgNywKLSBQRVJGX1NBTVBMRV9CUkFOQ0hfSU5fVFggPSAxVSA8PCA4LAorICBQRVJGX1NBTVBMRV9CUkFOQ0hfQU5ZX1JFVFVSTiA9IDFVIDw8IDUsCisgIFBFUkZfU0FNUExFX0JSQU5DSF9JTkRfQ0FMTCA9IDFVIDw8IDYsCisgIFBFUkZfU0FNUExFX0JSQU5DSF9BQk9SVF9UWCA9IDFVIDw8IDcsCisgIFBFUkZfU0FNUExFX0JSQU5DSF9JTl9UWCA9IDFVIDw8IDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfU0FNUExFX0JSQU5DSF9OT19UWCA9IDFVIDw8IDksCi0gUEVSRl9TQU1QTEVfQlJBTkNIX01BWCA9IDFVIDw8IDEwLAorICBQRVJGX1NBTVBMRV9CUkFOQ0hfTk9fVFggPSAxVSA8PCA5LAorICBQRVJGX1NBTVBMRV9CUkFOQ0hfQ09ORCA9IDFVIDw8IDEwLAorICBQRVJGX1NBTVBMRV9CUkFOQ0hfTUFYID0gMVUgPDwgMTEsCiB9OwotI2RlZmluZSBQRVJGX1NBTVBMRV9CUkFOQ0hfUExNX0FMTCAgIChQRVJGX1NBTVBMRV9CUkFOQ0hfVVNFUnwgIFBFUkZfU0FNUExFX0JSQU5DSF9LRVJORUx8ICBQRVJGX1NBTVBMRV9CUkFOQ0hfSFYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQRVJGX1NBTVBMRV9CUkFOQ0hfUExNX0FMTCAoUEVSRl9TQU1QTEVfQlJBTkNIX1VTRVIgfCBQRVJGX1NBTVBMRV9CUkFOQ0hfS0VSTkVMIHwgUEVSRl9TQU1QTEVfQlJBTkNIX0hWKQogZW51bSBwZXJmX3NhbXBsZV9yZWdzX2FiaSB7Ci0gUEVSRl9TQU1QTEVfUkVHU19BQklfTk9ORSA9IDAsCi0gUEVSRl9TQU1QTEVfUkVHU19BQklfMzIgPSAxLAotIFBFUkZfU0FNUExFX1JFR1NfQUJJXzY0ID0gMiwKKyAgUEVSRl9TQU1QTEVfUkVHU19BQklfTk9ORSA9IDAsCisgIFBFUkZfU0FNUExFX1JFR1NfQUJJXzMyID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFBFUkZfU0FNUExFX1JFR1NfQUJJXzY0ID0gMiwKIH07CiBlbnVtIHsKLSBQRVJGX1RYTl9FTElTSU9OID0gKDEgPDwgMCksCi0gUEVSRl9UWE5fVFJBTlNBQ1RJT04gPSAoMSA8PCAxKSwKKyAgUEVSRl9UWE5fRUxJU0lPTiA9ICgxIDw8IDApLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1RYTl9TWU5DID0gKDEgPDwgMiksCi0gUEVSRl9UWE5fQVNZTkMgPSAoMSA8PCAzKSwKLSBQRVJGX1RYTl9SRVRSWSA9ICgxIDw8IDQpLAotIFBFUkZfVFhOX0NPTkZMSUNUID0gKDEgPDwgNSksCisgIFBFUkZfVFhOX1RSQU5TQUNUSU9OID0gKDEgPDwgMSksCisgIFBFUkZfVFhOX1NZTkMgPSAoMSA8PCAyKSwKKyAgUEVSRl9UWE5fQVNZTkMgPSAoMSA8PCAzKSwKKyAgUEVSRl9UWE5fUkVUUlkgPSAoMSA8PCA0KSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9UWE5fQ0FQQUNJVFlfV1JJVEUgPSAoMSA8PCA2KSwKLSBQRVJGX1RYTl9DQVBBQ0lUWV9SRUFEID0gKDEgPDwgNyksCi0gUEVSRl9UWE5fTUFYID0gKDEgPDwgOCksCi0gUEVSRl9UWE5fQUJPUlRfTUFTSyA9ICgweGZmZmZmZmZmVUxMIDw8IDMyKSwKKyAgUEVSRl9UWE5fQ09ORkxJQ1QgPSAoMSA8PCA1KSwKKyAgUEVSRl9UWE5fQ0FQQUNJVFlfV1JJVEUgPSAoMSA8PCA2KSwKKyAgUEVSRl9UWE5fQ0FQQUNJVFlfUkVBRCA9ICgxIDw8IDcpLAorICBQRVJGX1RYTl9NQVggPSAoMSA8PCA4KSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9UWE5fQUJPUlRfU0hJRlQgPSAzMiwKKyAgUEVSRl9UWE5fQUJPUlRfTUFTSyA9ICgweGZmZmZmZmZmVUxMIDw8IDMyKSwKKyAgUEVSRl9UWE5fQUJPUlRfU0hJRlQgPSAzMiwKIH07CiBlbnVtIHBlcmZfZXZlbnRfcmVhZF9mb3JtYXQgewotIFBFUkZfRk9STUFUX1RPVEFMX1RJTUVfRU5BQkxFRCA9IDFVIDw8IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUkZfRk9STUFUX1RPVEFMX1RJTUVfUlVOTklORyA9IDFVIDw8IDEsCi0gUEVSRl9GT1JNQVRfSUQgPSAxVSA8PCAyLAotIFBFUkZfRk9STUFUX0dST1VQID0gMVUgPDwgMywKLSBQRVJGX0ZPUk1BVF9NQVggPSAxVSA8PCA0LAorICBQRVJGX0ZPUk1BVF9UT1RBTF9USU1FX0VOQUJMRUQgPSAxVSA8PCAwLAorICBQRVJGX0ZPUk1BVF9UT1RBTF9USU1FX1JVTk5JTkcgPSAxVSA8PCAxLAorICBQRVJGX0ZPUk1BVF9JRCA9IDFVIDw8IDIsCisgIFBFUkZfRk9STUFUX0dST1VQID0gMVUgPDwgMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFBFUkZfRk9STUFUX01BWCA9IDFVIDw8IDQsCiB9OwogI2RlZmluZSBQRVJGX0FUVFJfU0laRV9WRVIwIDY0CiAjZGVmaW5lIFBFUkZfQVRUUl9TSVpFX1ZFUjEgNzIKLSNkZWZpbmUgUEVSRl9BVFRSX1NJWkVfVkVSMiA4MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUEVSRl9BVFRSX1NJWkVfVkVSMiA4MAogI2RlZmluZSBQRVJGX0FUVFJfU0laRV9WRVIzIDk2CiBzdHJ1Y3QgcGVyZl9ldmVudF9hdHRyIHsKLSBfX3UzMiB0eXBlOwotIF9fdTMyIHNpemU7CisgIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGNvbmZpZzsKLSB1bmlvbiB7Ci0gX191NjQgc2FtcGxlX3BlcmlvZDsKLSBfX3U2NCBzYW1wbGVfZnJlcTsKKyAgX191MzIgc2l6ZTsKKyAgX191NjQgY29uZmlnOworICB1bmlvbiB7CisgICAgX191NjQgc2FtcGxlX3BlcmlvZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKLSBfX3U2NCBzYW1wbGVfdHlwZTsKLSBfX3U2NCByZWFkX2Zvcm1hdDsKLSBfX3U2NCBkaXNhYmxlZCA6IDEsCisgICAgX191NjQgc2FtcGxlX2ZyZXE7CisgIH07CisgIF9fdTY0IHNhbXBsZV90eXBlOworICBfX3U2NCByZWFkX2Zvcm1hdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW5oZXJpdCA6IDEsCi0gcGlubmVkIDogMSwKLSBleGNsdXNpdmUgOiAxLAotIGV4Y2x1ZGVfdXNlciA6IDEsCisgIF9fdTY0IGRpc2FibGVkIDogMSwgaW5oZXJpdCA6IDEsIHBpbm5lZCA6IDEsIGV4Y2x1c2l2ZSA6IDEsIGV4Y2x1ZGVfdXNlciA6IDEsIGV4Y2x1ZGVfa2VybmVsIDogMSwgZXhjbHVkZV9odiA6IDEsIGV4Y2x1ZGVfaWRsZSA6IDEsIG1tYXAgOiAxLCBjb21tIDogMSwgZnJlcSA6IDEsIGluaGVyaXRfc3RhdCA6IDEsIGVuYWJsZV9vbl9leGVjIDogMSwgdGFzayA6IDEsIHdhdGVybWFyayA6IDEsIHByZWNpc2VfaXAgOiAyLCBtbWFwX2RhdGEgOiAxLCBzYW1wbGVfaWRfYWxsIDogMSwgZXhjbHVkZV9ob3N0IDogMSwgZXhjbHVkZV9ndWVzdCA6IDEsIGV4Y2x1ZGVfY2FsbGNoYWluX2tlcm5lbCA6IDEsIGV4Y2x1ZGVfY2FsbGNoYWluX3VzZXIgOiAxLCBtbWFwMiA6IDEsIGNvbW1fZXhlYyA6IDEsIF9fcmVzZXJ2ZWRfMSA6IDM5OworICB1bmlvbiB7CisgICAgX191MzIgd2FrZXVwX2V2ZW50czsKKyAgICBfX3UzMiB3YWtldXBfd2F0ZXJtYXJrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBleGNsdWRlX2tlcm5lbCA6IDEsCi0gZXhjbHVkZV9odiA6IDEsCi0gZXhjbHVkZV9pZGxlIDogMSwKLSBtbWFwIDogMSwKKyAgfTsKKyAgX191MzIgYnBfdHlwZTsKKyAgdW5pb24geworICAgIF9fdTY0IGJwX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNvbW0gOiAxLAotIGZyZXEgOiAxLAotIGluaGVyaXRfc3RhdCA6IDEsCi0gZW5hYmxlX29uX2V4ZWMgOiAxLAorICAgIF9fdTY0IGNvbmZpZzE7CisgIH07CisgIHVuaW9uIHsKKyAgICBfX3U2NCBicF9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHRhc2sgOiAxLAotIHdhdGVybWFyayA6IDEsCi0gcHJlY2lzZV9pcCA6IDIsCi0gbW1hcF9kYXRhIDogMSwKKyAgICBfX3U2NCBjb25maWcyOworICB9OworICBfX3U2NCBicmFuY2hfc2FtcGxlX3R5cGU7CisgIF9fdTY0IHNhbXBsZV9yZWdzX3VzZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNhbXBsZV9pZF9hbGwgOiAxLAotIGV4Y2x1ZGVfaG9zdCA6IDEsCi0gZXhjbHVkZV9ndWVzdCA6IDEsCi0gZXhjbHVkZV9jYWxsY2hhaW5fa2VybmVsIDogMSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZXhjbHVkZV9jYWxsY2hhaW5fdXNlciA6IDEsCi0gbW1hcDIgOiAxLAotIF9fcmVzZXJ2ZWRfMSA6IDQwOwotIHVuaW9uIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgd2FrZXVwX2V2ZW50czsKLSBfX3UzMiB3YWtldXBfd2F0ZXJtYXJrOwotIH07Ci0gX191MzIgYnBfdHlwZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIF9fdTY0IGJwX2FkZHI7Ci0gX191NjQgY29uZmlnMTsKLSB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gX191NjQgYnBfbGVuOwotIF9fdTY0IGNvbmZpZzI7Ci0gfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYnJhbmNoX3NhbXBsZV90eXBlOwotIF9fdTY0IHNhbXBsZV9yZWdzX3VzZXI7Ci0gX191MzIgc2FtcGxlX3N0YWNrX3VzZXI7Ci0gX191MzIgX19yZXNlcnZlZF8yOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgc2FtcGxlX3N0YWNrX3VzZXI7CisgIF9fdTMyIF9fcmVzZXJ2ZWRfMjsKIH07Ci0jZGVmaW5lIHBlcmZfZmxhZ3MoYXR0cikgKCooJihhdHRyKS0+cmVhZF9mb3JtYXQgKyAxKSkKLSNkZWZpbmUgUEVSRl9FVkVOVF9JT0NfRU5BQkxFIF9JTyAoJyQnLCAwKQotI2RlZmluZSBQRVJGX0VWRU5UX0lPQ19ESVNBQkxFIF9JTyAoJyQnLCAxKQorI2RlZmluZSBwZXJmX2ZsYWdzKGF0dHIpICgqICgmIChhdHRyKS0+cmVhZF9mb3JtYXQgKyAxKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBFUkZfRVZFTlRfSU9DX1JFRlJFU0ggX0lPICgnJCcsIDIpCi0jZGVmaW5lIFBFUkZfRVZFTlRfSU9DX1JFU0VUIF9JTyAoJyQnLCAzKQorI2RlZmluZSBQRVJGX0VWRU5UX0lPQ19FTkFCTEUgX0lPKCckJywgMCkKKyNkZWZpbmUgUEVSRl9FVkVOVF9JT0NfRElTQUJMRSBfSU8oJyQnLCAxKQorI2RlZmluZSBQRVJGX0VWRU5UX0lPQ19SRUZSRVNIIF9JTygnJCcsIDIpCisjZGVmaW5lIFBFUkZfRVZFTlRfSU9DX1JFU0VUIF9JTygnJCcsIDMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQRVJGX0VWRU5UX0lPQ19QRVJJT0QgX0lPVygnJCcsIDQsIF9fdTY0KQotI2RlZmluZSBQRVJGX0VWRU5UX0lPQ19TRVRfT1VUUFVUIF9JTyAoJyQnLCA1KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUEVSRl9FVkVOVF9JT0NfU0VUX09VVFBVVCBfSU8oJyQnLCA1KQogI2RlZmluZSBQRVJGX0VWRU5UX0lPQ19TRVRfRklMVEVSIF9JT1coJyQnLCA2LCBjaGFyICopCiAjZGVmaW5lIFBFUkZfRVZFTlRfSU9DX0lEIF9JT1IoJyQnLCA3LCBfX3U2NCAqKQotZW51bSBwZXJmX2V2ZW50X2lvY19mbGFncyB7Ci0gUEVSRl9JT0NfRkxBR19HUk9VUCA9IDFVIDw8IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworZW51bSBwZXJmX2V2ZW50X2lvY19mbGFncyB7CisgIFBFUkZfSU9DX0ZMQUdfR1JPVVAgPSAxVSA8PCAwLAogfTsKIHN0cnVjdCBwZXJmX2V2ZW50X21tYXBfcGFnZSB7Ci0gX191MzIgdmVyc2lvbjsKLSBfX3UzMiBjb21wYXRfdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbG9jazsKLSBfX3UzMiBpbmRleDsKLSBfX3M2NCBvZmZzZXQ7Ci0gX191NjQgdGltZV9lbmFibGVkOworICBfX3UzMiB2ZXJzaW9uOworICBfX3UzMiBjb21wYXRfdmVyc2lvbjsKKyAgX191MzIgbG9jazsKKyAgX191MzIgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHRpbWVfcnVubmluZzsKLSB1bmlvbiB7Ci0gX191NjQgY2FwYWJpbGl0aWVzOwotIHN0cnVjdCB7CisgIF9fczY0IG9mZnNldDsKKyAgX191NjQgdGltZV9lbmFibGVkOworICBfX3U2NCB0aW1lX3J1bm5pbmc7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY2FwX2JpdDAgOiAxLAotIGNhcF9iaXQwX2lzX2RlcHJlY2F0ZWQgOiAxLAotIGNhcF91c2VyX3JkcG1jIDogMSwKLSBjYXBfdXNlcl90aW1lIDogMSwKKyAgICBfX3U2NCBjYXBhYmlsaXRpZXM7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IGNhcF9iaXQwIDogMSwgY2FwX2JpdDBfaXNfZGVwcmVjYXRlZCA6IDEsIGNhcF91c2VyX3JkcG1jIDogMSwgY2FwX3VzZXJfdGltZSA6IDEsIGNhcF91c2VyX3RpbWVfemVybyA6IDEsIGNhcF9fX19fcmVzIDogNTk7CisgICAgfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2FwX3VzZXJfdGltZV96ZXJvIDogMSwKLSBjYXBfX19fX3JlcyA6IDU5OwotIH07Ci0gfTsKKyAgfTsKKyAgX191MTYgcG1jX3dpZHRoOworICBfX3UxNiB0aW1lX3NoaWZ0OworICBfX3UzMiB0aW1lX211bHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHBtY193aWR0aDsKLSBfX3UxNiB0aW1lX3NoaWZ0OwotIF9fdTMyIHRpbWVfbXVsdDsKLSBfX3U2NCB0aW1lX29mZnNldDsKKyAgX191NjQgdGltZV9vZmZzZXQ7CisgIF9fdTY0IHRpbWVfemVybzsKKyAgX191MzIgc2l6ZTsKKyAgX191OCBfX3Jlc2VydmVkWzExOCAqIDggKyA0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdGltZV96ZXJvOwotIF9fdTMyIHNpemU7Ci0gX191OCBfX3Jlc2VydmVkWzExOCo4KzRdOwotIF9fdTY0IGRhdGFfaGVhZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZGF0YV90YWlsOworICBfX3U2NCBkYXRhX2hlYWQ7CisgIF9fdTY0IGRhdGFfdGFpbDsKIH07CiAjZGVmaW5lIFBFUkZfUkVDT1JEX01JU0NfQ1BVTU9ERV9NQVNLICg3IDw8IDApCi0jZGVmaW5lIFBFUkZfUkVDT1JEX01JU0NfQ1BVTU9ERV9VTktOT1dOICgwIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQRVJGX1JFQ09SRF9NSVNDX0NQVU1PREVfVU5LTk9XTiAoMCA8PCAwKQogI2RlZmluZSBQRVJGX1JFQ09SRF9NSVNDX0tFUk5FTCAoMSA8PCAwKQogI2RlZmluZSBQRVJGX1JFQ09SRF9NSVNDX1VTRVIgKDIgPDwgMCkKICNkZWZpbmUgUEVSRl9SRUNPUkRfTUlTQ19IWVBFUlZJU09SICgzIDw8IDApCi0jZGVmaW5lIFBFUkZfUkVDT1JEX01JU0NfR1VFU1RfS0VSTkVMICg0IDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQRVJGX1JFQ09SRF9NSVNDX0dVRVNUX0tFUk5FTCAoNCA8PCAwKQogI2RlZmluZSBQRVJGX1JFQ09SRF9NSVNDX0dVRVNUX1VTRVIgKDUgPDwgMCkKICNkZWZpbmUgUEVSRl9SRUNPUkRfTUlTQ19NTUFQX0RBVEEgKDEgPDwgMTMpCisjZGVmaW5lIFBFUkZfUkVDT1JEX01JU0NfQ09NTV9FWEVDICgxIDw8IDEzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUEVSRl9SRUNPUkRfTUlTQ19FWEFDVF9JUCAoMSA8PCAxNCkKICNkZWZpbmUgUEVSRl9SRUNPUkRfTUlTQ19FWFRfUkVTRVJWRUQgKDEgPDwgMTUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHBlcmZfZXZlbnRfaGVhZGVyIHsKLSBfX3UzMiB0eXBlOwotIF9fdTE2IG1pc2M7Ci0gX191MTYgc2l6ZTsKKyAgX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IG1pc2M7CisgIF9fdTE2IHNpemU7CiB9OwogZW51bSBwZXJmX2V2ZW50X3R5cGUgewotIFBFUkZfUkVDT1JEX01NQVAgPSAxLAotIFBFUkZfUkVDT1JEX0xPU1QgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1JFQ09SRF9DT01NID0gMywKLSBQRVJGX1JFQ09SRF9FWElUID0gNCwKLSBQRVJGX1JFQ09SRF9USFJPVFRMRSA9IDUsCi0gUEVSRl9SRUNPUkRfVU5USFJPVFRMRSA9IDYsCisgIFBFUkZfUkVDT1JEX01NQVAgPSAxLAorICBQRVJGX1JFQ09SRF9MT1NUID0gMiwKKyAgUEVSRl9SRUNPUkRfQ09NTSA9IDMsCisgIFBFUkZfUkVDT1JEX0VYSVQgPSA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX1JFQ09SRF9GT1JLID0gNywKLSBQRVJGX1JFQ09SRF9SRUFEID0gOCwKLSBQRVJGX1JFQ09SRF9TQU1QTEUgPSA5LAotIFBFUkZfUkVDT1JEX01NQVAyID0gMTAsCisgIFBFUkZfUkVDT1JEX1RIUk9UVExFID0gNSwKKyAgUEVSRl9SRUNPUkRfVU5USFJPVFRMRSA9IDYsCisgIFBFUkZfUkVDT1JEX0ZPUksgPSA3LAorICBQRVJGX1JFQ09SRF9SRUFEID0gOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSRl9SRUNPUkRfTUFYLAorICBQRVJGX1JFQ09SRF9TQU1QTEUgPSA5LAorICBQRVJGX1JFQ09SRF9NTUFQMiA9IDEwLAorICBQRVJGX1JFQ09SRF9NQVgsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUEVSRl9NQVhfU1RBQ0tfREVQVEggMTI3CiBlbnVtIHBlcmZfY2FsbGNoYWluX2NvbnRleHQgeworICBQRVJGX0NPTlRFWFRfSFYgPSAoX191NjQpIC0gMzIsCisgIFBFUkZfQ09OVEVYVF9LRVJORUwgPSAoX191NjQpIC0gMTI4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX0NPTlRFWFRfSFYgPSAoX191NjQpLTMyLAotIFBFUkZfQ09OVEVYVF9LRVJORUwgPSAoX191NjQpLTEyOCwKLSBQRVJGX0NPTlRFWFRfVVNFUiA9IChfX3U2NCktNTEyLAotIFBFUkZfQ09OVEVYVF9HVUVTVCA9IChfX3U2NCktMjA0OCwKKyAgUEVSRl9DT05URVhUX1VTRVIgPSAoX191NjQpIC0gNTEyLAorICBQRVJGX0NPTlRFWFRfR1VFU1QgPSAoX191NjQpIC0gMjA0OCwKKyAgUEVSRl9DT05URVhUX0dVRVNUX0tFUk5FTCA9IChfX3U2NCkgLSAyMTc2LAorICBQRVJGX0NPTlRFWFRfR1VFU1RfVVNFUiA9IChfX3U2NCkgLSAyNTYwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJGX0NPTlRFWFRfR1VFU1RfS0VSTkVMID0gKF9fdTY0KS0yMTc2LAotIFBFUkZfQ09OVEVYVF9HVUVTVF9VU0VSID0gKF9fdTY0KS0yNTYwLAotIFBFUkZfQ09OVEVYVF9NQVggPSAoX191NjQpLTQwOTUsCisgIFBFUkZfQ09OVEVYVF9NQVggPSAoX191NjQpIC0gNDA5NSwKIH07CisjZGVmaW5lIFBFUkZfRkxBR19GRF9OT19HUk9VUCAoMVVMIDw8IDApCisjZGVmaW5lIFBFUkZfRkxBR19GRF9PVVRQVVQgKDFVTCA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUEVSRl9GTEFHX0ZEX05PX0dST1VQICgxVSA8PCAwKQotI2RlZmluZSBQRVJGX0ZMQUdfRkRfT1VUUFVUICgxVSA8PCAxKQotI2RlZmluZSBQRVJGX0ZMQUdfUElEX0NHUk9VUCAoMVUgPDwgMikKLSNkZWZpbmUgUEVSRl9GTEFHX0ZEX0NMT0VYRUMgKDFVIDw8IDMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQRVJGX0ZMQUdfUElEX0NHUk9VUCAoMVVMIDw8IDIpCisjZGVmaW5lIFBFUkZfRkxBR19GRF9DTE9FWEVDICgxVUwgPDwgMykKIHVuaW9uIHBlcmZfbWVtX2RhdGFfc3JjIHsKLSBfX3U2NCB2YWw7Ci0gc3RydWN0IHsKLSBfX3U2NCBtZW1fb3A6NSwKKyAgX191NjQgdmFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBtZW1fbHZsOjE0LAotIG1lbV9zbm9vcDo1LAotIG1lbV9sb2NrOjIsCi0gbWVtX2R0bGI6NywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbWVtX3JzdmQ6MzE7Ci0gfTsKKyAgc3RydWN0IHsKKyAgICBfX3U2NCBtZW1fb3AgOiA1LCBtZW1fbHZsIDogMTQsIG1lbV9zbm9vcCA6IDUsIG1lbV9sb2NrIDogMiwgbWVtX2R0bGIgOiA3LCBtZW1fcnN2ZCA6IDMxOworICB9OwogfTsKLSNkZWZpbmUgUEVSRl9NRU1fT1BfTkEgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUEVSRl9NRU1fT1BfTkEgMHgwMQogI2RlZmluZSBQRVJGX01FTV9PUF9MT0FEIDB4MDIKICNkZWZpbmUgUEVSRl9NRU1fT1BfU1RPUkUgMHgwNAogI2RlZmluZSBQRVJGX01FTV9PUF9QRkVUQ0ggMHgwOAotI2RlZmluZSBQRVJGX01FTV9PUF9FWEVDIDB4MTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBFUkZfTUVNX09QX0VYRUMgMHgxMAogI2RlZmluZSBQRVJGX01FTV9PUF9TSElGVCAwCiAjZGVmaW5lIFBFUkZfTUVNX0xWTF9OQSAweDAxCiAjZGVmaW5lIFBFUkZfTUVNX0xWTF9ISVQgMHgwMgotI2RlZmluZSBQRVJGX01FTV9MVkxfTUlTUyAweDA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQRVJGX01FTV9MVkxfTUlTUyAweDA0CiAjZGVmaW5lIFBFUkZfTUVNX0xWTF9MMSAweDA4CiAjZGVmaW5lIFBFUkZfTUVNX0xWTF9MRkIgMHgxMAogI2RlZmluZSBQRVJGX01FTV9MVkxfTDIgMHgyMAotI2RlZmluZSBQRVJGX01FTV9MVkxfTDMgMHg0MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUEVSRl9NRU1fTFZMX0wzIDB4NDAKICNkZWZpbmUgUEVSRl9NRU1fTFZMX0xPQ19SQU0gMHg4MAogI2RlZmluZSBQRVJGX01FTV9MVkxfUkVNX1JBTTEgMHgxMDAKICNkZWZpbmUgUEVSRl9NRU1fTFZMX1JFTV9SQU0yIDB4MjAwCi0jZGVmaW5lIFBFUkZfTUVNX0xWTF9SRU1fQ0NFMSAweDQwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUEVSRl9NRU1fTFZMX1JFTV9DQ0UxIDB4NDAwCiAjZGVmaW5lIFBFUkZfTUVNX0xWTF9SRU1fQ0NFMiAweDgwMAogI2RlZmluZSBQRVJGX01FTV9MVkxfSU8gMHgxMDAwCiAjZGVmaW5lIFBFUkZfTUVNX0xWTF9VTkMgMHgyMDAwCi0jZGVmaW5lIFBFUkZfTUVNX0xWTF9TSElGVCA1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQRVJGX01FTV9MVkxfU0hJRlQgNQogI2RlZmluZSBQRVJGX01FTV9TTk9PUF9OQSAweDAxCiAjZGVmaW5lIFBFUkZfTUVNX1NOT09QX05PTkUgMHgwMgogI2RlZmluZSBQRVJGX01FTV9TTk9PUF9ISVQgMHgwNAotI2RlZmluZSBQRVJGX01FTV9TTk9PUF9NSVNTIDB4MDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBFUkZfTUVNX1NOT09QX01JU1MgMHgwOAogI2RlZmluZSBQRVJGX01FTV9TTk9PUF9ISVRNIDB4MTAKICNkZWZpbmUgUEVSRl9NRU1fU05PT1BfU0hJRlQgMTkKICNkZWZpbmUgUEVSRl9NRU1fTE9DS19OQSAweDAxCi0jZGVmaW5lIFBFUkZfTUVNX0xPQ0tfTE9DS0VEIDB4MDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBFUkZfTUVNX0xPQ0tfTE9DS0VEIDB4MDIKICNkZWZpbmUgUEVSRl9NRU1fTE9DS19TSElGVCAyNAogI2RlZmluZSBQRVJGX01FTV9UTEJfTkEgMHgwMQogI2RlZmluZSBQRVJGX01FTV9UTEJfSElUIDB4MDIKLSNkZWZpbmUgUEVSRl9NRU1fVExCX01JU1MgMHgwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUEVSRl9NRU1fVExCX01JU1MgMHgwNAogI2RlZmluZSBQRVJGX01FTV9UTEJfTDEgMHgwOAogI2RlZmluZSBQRVJGX01FTV9UTEJfTDIgMHgxMAogI2RlZmluZSBQRVJGX01FTV9UTEJfV0sgMHgyMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUEVSRl9NRU1fVExCX09TIDB4NDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBFUkZfTUVNX1RMQl9TSElGVCAyNgotI2RlZmluZSBQRVJGX01FTV9TKGEsIHMpICAgKCgoX191NjQpUEVSRl9NRU1fIyNhIyNfIyNzKSA8PCBQRVJGX01FTV8jI2EjI19TSElGVCkKKyNkZWZpbmUgUEVSRl9NRU1fUyhhLHMpICgoKF9fdTY0KSBQRVJGX01FTV8gIyNhICMjXyAjI3MpIDw8IFBFUkZfTUVNXyAjI2EgIyNfU0hJRlQpCiBzdHJ1Y3QgcGVyZl9icmFuY2hfZW50cnkgewotIF9fdTY0IGZyb207CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHRvOwotIF9fdTY0IG1pc3ByZWQ6MSwKLSBwcmVkaWN0ZWQ6MSwKLSBpbl90eDoxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBhYm9ydDoxLAotIHJlc2VydmVkOjYwOworICBfX3U2NCBmcm9tOworICBfX3U2NCB0bzsKKyAgX191NjQgbWlzcHJlZCA6IDEsIHByZWRpY3RlZCA6IDEsIGluX3R4IDogMSwgYWJvcnQgOiAxLCByZXNlcnZlZCA6IDYwOwogfTsKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wZXJzb25hbGl0eS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wZXJzb25hbGl0eS5oCmluZGV4IGU5NWE1MTQuLmZhNjMxYjUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGVyc29uYWxpdHkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BlcnNvbmFsaXR5LmgKQEAgLTE5LDUzICsxOSw1MiBAQAogI2lmbmRlZiBfVUFQSV9MSU5VWF9QRVJTT05BTElUWV9ICiAjZGVmaW5lIF9VQVBJX0xJTlVYX1BFUlNPTkFMSVRZX0gKIGVudW0gewotIFVOQU1FMjYgPSAweDAwMjAwMDAsCisgIFVOQU1FMjYgPSAweDAwMjAwMDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEFERFJfTk9fUkFORE9NSVpFID0gMHgwMDQwMDAwLAotIEZEUElDX0ZVTkNQVFJTID0gMHgwMDgwMDAwLAotIE1NQVBfUEFHRV9aRVJPID0gMHgwMTAwMDAwLAotIEFERFJfQ09NUEFUX0xBWU9VVCA9IDB4MDIwMDAwMCwKKyAgQUREUl9OT19SQU5ET01JWkUgPSAweDAwNDAwMDAsCisgIEZEUElDX0ZVTkNQVFJTID0gMHgwMDgwMDAwLAorICBNTUFQX1BBR0VfWkVSTyA9IDB4MDEwMDAwMCwKKyAgQUREUl9DT01QQVRfTEFZT1VUID0gMHgwMjAwMDAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSRUFEX0lNUExJRVNfRVhFQyA9IDB4MDQwMDAwMCwKLSBBRERSX0xJTUlUXzMyQklUID0gMHgwODAwMDAwLAotIFNIT1JUX0lOT0RFID0gMHgxMDAwMDAwLAotIFdIT0xFX1NFQ09ORFMgPSAweDIwMDAwMDAsCisgIFJFQURfSU1QTElFU19FWEVDID0gMHgwNDAwMDAwLAorICBBRERSX0xJTUlUXzMyQklUID0gMHgwODAwMDAwLAorICBTSE9SVF9JTk9ERSA9IDB4MTAwMDAwMCwKKyAgV0hPTEVfU0VDT05EUyA9IDB4MjAwMDAwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU1RJQ0tZX1RJTUVPVVRTID0gMHg0MDAwMDAwLAotIEFERFJfTElNSVRfM0dCID0gMHg4MDAwMDAwLAorICBTVElDS1lfVElNRU9VVFMgPSAweDQwMDAwMDAsCisgIEFERFJfTElNSVRfM0dCID0gMHg4MDAwMDAwLAogfTsKLSNkZWZpbmUgUEVSX0NMRUFSX09OX1NFVElEIChSRUFEX0lNUExJRVNfRVhFQyB8ICAgQUREUl9OT19SQU5ET01JWkUgfCAgIEFERFJfQ09NUEFUX0xBWU9VVCB8ICAgTU1BUF9QQUdFX1pFUk8pCisjZGVmaW5lIFBFUl9DTEVBUl9PTl9TRVRJRCAoUkVBRF9JTVBMSUVTX0VYRUMgfCBBRERSX05PX1JBTkRPTUlaRSB8IEFERFJfQ09NUEFUX0xBWU9VVCB8IE1NQVBfUEFHRV9aRVJPKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFBFUl9MSU5VWCA9IDB4MDAwMCwKLSBQRVJfTElOVVhfMzJCSVQgPSAweDAwMDAgfCBBRERSX0xJTUlUXzMyQklULAotIFBFUl9MSU5VWF9GRFBJQyA9IDB4MDAwMCB8IEZEUElDX0ZVTkNQVFJTLAorICBQRVJfTElOVVggPSAweDAwMDAsCisgIFBFUl9MSU5VWF8zMkJJVCA9IDB4MDAwMCB8IEFERFJfTElNSVRfMzJCSVQsCisgIFBFUl9MSU5VWF9GRFBJQyA9IDB4MDAwMCB8IEZEUElDX0ZVTkNQVFJTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQRVJfU1ZSNCA9IDB4MDAwMSB8IFNUSUNLWV9USU1FT1VUUyB8IE1NQVBfUEFHRV9aRVJPLAotIFBFUl9TVlIzID0gMHgwMDAyIHwgU1RJQ0tZX1RJTUVPVVRTIHwgU0hPUlRfSU5PREUsCi0gUEVSX1NDT1NWUjMgPSAweDAwMDMgfCBTVElDS1lfVElNRU9VVFMgfAotIFdIT0xFX1NFQ09ORFMgfCBTSE9SVF9JTk9ERSwKKyAgUEVSX1NWUjQgPSAweDAwMDEgfCBTVElDS1lfVElNRU9VVFMgfCBNTUFQX1BBR0VfWkVSTywKKyAgUEVSX1NWUjMgPSAweDAwMDIgfCBTVElDS1lfVElNRU9VVFMgfCBTSE9SVF9JTk9ERSwKKyAgUEVSX1NDT1NWUjMgPSAweDAwMDMgfCBTVElDS1lfVElNRU9VVFMgfCBXSE9MRV9TRUNPTkRTIHwgU0hPUlRfSU5PREUsCisgIFBFUl9PU1I1ID0gMHgwMDAzIHwgU1RJQ0tZX1RJTUVPVVRTIHwgV0hPTEVfU0VDT05EUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSX09TUjUgPSAweDAwMDMgfCBTVElDS1lfVElNRU9VVFMgfCBXSE9MRV9TRUNPTkRTLAotIFBFUl9XWVNFVjM4NiA9IDB4MDAwNCB8IFNUSUNLWV9USU1FT1VUUyB8IFNIT1JUX0lOT0RFLAotIFBFUl9JU0NSNCA9IDB4MDAwNSB8IFNUSUNLWV9USU1FT1VUUywKLSBQRVJfQlNEID0gMHgwMDA2LAorICBQRVJfV1lTRVYzODYgPSAweDAwMDQgfCBTVElDS1lfVElNRU9VVFMgfCBTSE9SVF9JTk9ERSwKKyAgUEVSX0lTQ1I0ID0gMHgwMDA1IHwgU1RJQ0tZX1RJTUVPVVRTLAorICBQRVJfQlNEID0gMHgwMDA2LAorICBQRVJfU1VOT1MgPSAweDAwMDYgfCBTVElDS1lfVElNRU9VVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUl9TVU5PUyA9IDB4MDAwNiB8IFNUSUNLWV9USU1FT1VUUywKLSBQRVJfWEVOSVggPSAweDAwMDcgfCBTVElDS1lfVElNRU9VVFMgfCBTSE9SVF9JTk9ERSwKLSBQRVJfTElOVVgzMiA9IDB4MDAwOCwKLSBQRVJfTElOVVgzMl8zR0IgPSAweDAwMDggfCBBRERSX0xJTUlUXzNHQiwKKyAgUEVSX1hFTklYID0gMHgwMDA3IHwgU1RJQ0tZX1RJTUVPVVRTIHwgU0hPUlRfSU5PREUsCisgIFBFUl9MSU5VWDMyID0gMHgwMDA4LAorICBQRVJfTElOVVgzMl8zR0IgPSAweDAwMDggfCBBRERSX0xJTUlUXzNHQiwKKyAgUEVSX0lSSVgzMiA9IDB4MDAwOSB8IFNUSUNLWV9USU1FT1VUUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSX0lSSVgzMiA9IDB4MDAwOSB8IFNUSUNLWV9USU1FT1VUUywKLSBQRVJfSVJJWE4zMiA9IDB4MDAwYSB8IFNUSUNLWV9USU1FT1VUUywKLSBQRVJfSVJJWDY0ID0gMHgwMDBiIHwgU1RJQ0tZX1RJTUVPVVRTLAotIFBFUl9SSVNDT1MgPSAweDAwMGMsCisgIFBFUl9JUklYTjMyID0gMHgwMDBhIHwgU1RJQ0tZX1RJTUVPVVRTLAorICBQRVJfSVJJWDY0ID0gMHgwMDBiIHwgU1RJQ0tZX1RJTUVPVVRTLAorICBQRVJfUklTQ09TID0gMHgwMDBjLAorICBQRVJfU09MQVJJUyA9IDB4MDAwZCB8IFNUSUNLWV9USU1FT1VUUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEVSX1NPTEFSSVMgPSAweDAwMGQgfCBTVElDS1lfVElNRU9VVFMsCi0gUEVSX1VXNyA9IDB4MDAwZSB8IFNUSUNLWV9USU1FT1VUUyB8IE1NQVBfUEFHRV9aRVJPLAotIFBFUl9PU0Y0ID0gMHgwMDBmLAotIFBFUl9IUFVYID0gMHgwMDEwLAorICBQRVJfVVc3ID0gMHgwMDBlIHwgU1RJQ0tZX1RJTUVPVVRTIHwgTU1BUF9QQUdFX1pFUk8sCisgIFBFUl9PU0Y0ID0gMHgwMDBmLAorICBQRVJfSFBVWCA9IDB4MDAxMCwKKyAgUEVSX01BU0sgPSAweDAwZmYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBFUl9NQVNLID0gMHgwMGZmLAogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wZmtleXYyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Bma2V5djIuaAppbmRleCBiODdiNjk4Li5mNGRmNTc0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Bma2V5djIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Bma2V5djIuaApAQCAtMjMsMzQzICsyMywzNTYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBGS0VZVjJfUkVWSVNJT04gMTk5ODA2TAogc3RydWN0IHNhZGJfbXNnIHsKLSBfX3U4IHNhZGJfbXNnX3ZlcnNpb247Ci0gX191OCBzYWRiX21zZ190eXBlOworICBfX3U4IHNhZGJfbXNnX3ZlcnNpb247CisgIF9fdTggc2FkYl9tc2dfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzYWRiX21zZ19lcnJubzsKLSBfX3U4IHNhZGJfbXNnX3NhdHlwZTsKLSBfX3UxNiBzYWRiX21zZ19sZW47Ci0gX191MTYgc2FkYl9tc2dfcmVzZXJ2ZWQ7CisgIF9fdTggc2FkYl9tc2dfZXJybm87CisgIF9fdTggc2FkYl9tc2dfc2F0eXBlOworICBfX3UxNiBzYWRiX21zZ19sZW47CisgIF9fdTE2IHNhZGJfbXNnX3Jlc2VydmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzYWRiX21zZ19zZXE7Ci0gX191MzIgc2FkYl9tc2dfcGlkOworICBfX3UzMiBzYWRiX21zZ19zZXE7CisgIF9fdTMyIHNhZGJfbXNnX3BpZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3Qgc2FkYl9leHQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzYWRiX2V4dF9sZW47Ci0gX191MTYgc2FkYl9leHRfdHlwZTsKKyAgX191MTYgc2FkYl9leHRfbGVuOworICBfX3UxNiBzYWRiX2V4dF90eXBlOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBzYWRiX3NhIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2FkYl9zYV9sZW47Ci0gX191MTYgc2FkYl9zYV9leHR0eXBlOwotIF9fYmUzMiBzYWRiX3NhX3NwaTsKLSBfX3U4IHNhZGJfc2FfcmVwbGF5OworICBfX3UxNiBzYWRiX3NhX2xlbjsKKyAgX191MTYgc2FkYl9zYV9leHR0eXBlOworICBfX2JlMzIgc2FkYl9zYV9zcGk7CisgIF9fdTggc2FkYl9zYV9yZXBsYXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2FkYl9zYV9zdGF0ZTsKLSBfX3U4IHNhZGJfc2FfYXV0aDsKLSBfX3U4IHNhZGJfc2FfZW5jcnlwdDsKLSBfX3UzMiBzYWRiX3NhX2ZsYWdzOworICBfX3U4IHNhZGJfc2Ffc3RhdGU7CisgIF9fdTggc2FkYl9zYV9hdXRoOworICBfX3U4IHNhZGJfc2FfZW5jcnlwdDsKKyAgX191MzIgc2FkYl9zYV9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHNhZGJfbGlmZXRpbWUgewotIF9fdTE2IHNhZGJfbGlmZXRpbWVfbGVuOwotIF9fdTE2IHNhZGJfbGlmZXRpbWVfZXh0dHlwZTsKKyAgX191MTYgc2FkYl9saWZldGltZV9sZW47CisgIF9fdTE2IHNhZGJfbGlmZXRpbWVfZXh0dHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2FkYl9saWZldGltZV9hbGxvY2F0aW9uczsKLSBfX3U2NCBzYWRiX2xpZmV0aW1lX2J5dGVzOwotIF9fdTY0IHNhZGJfbGlmZXRpbWVfYWRkdGltZTsKLSBfX3U2NCBzYWRiX2xpZmV0aW1lX3VzZXRpbWU7CisgIF9fdTMyIHNhZGJfbGlmZXRpbWVfYWxsb2NhdGlvbnM7CisgIF9fdTY0IHNhZGJfbGlmZXRpbWVfYnl0ZXM7CisgIF9fdTY0IHNhZGJfbGlmZXRpbWVfYWRkdGltZTsKKyAgX191NjQgc2FkYl9saWZldGltZV91c2V0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3Qgc2FkYl9hZGRyZXNzIHsKLSBfX3UxNiBzYWRiX2FkZHJlc3NfbGVuOwotIF9fdTE2IHNhZGJfYWRkcmVzc19leHR0eXBlOworICBfX3UxNiBzYWRiX2FkZHJlc3NfbGVuOworICBfX3UxNiBzYWRiX2FkZHJlc3NfZXh0dHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzYWRiX2FkZHJlc3NfcHJvdG87Ci0gX191OCBzYWRiX2FkZHJlc3NfcHJlZml4bGVuOwotIF9fdTE2IHNhZGJfYWRkcmVzc19yZXNlcnZlZDsKKyAgX191OCBzYWRiX2FkZHJlc3NfcHJvdG87CisgIF9fdTggc2FkYl9hZGRyZXNzX3ByZWZpeGxlbjsKKyAgX191MTYgc2FkYl9hZGRyZXNzX3Jlc2VydmVkOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2FkYl9rZXkgewotIF9fdTE2IHNhZGJfa2V5X2xlbjsKLSBfX3UxNiBzYWRiX2tleV9leHR0eXBlOwotIF9fdTE2IHNhZGJfa2V5X2JpdHM7CisgIF9fdTE2IHNhZGJfa2V5X2xlbjsKKyAgX191MTYgc2FkYl9rZXlfZXh0dHlwZTsKKyAgX191MTYgc2FkYl9rZXlfYml0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2FkYl9rZXlfcmVzZXJ2ZWQ7CisgIF9fdTE2IHNhZGJfa2V5X3Jlc2VydmVkOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBzYWRiX2lkZW50IHsKLSBfX3UxNiBzYWRiX2lkZW50X2xlbjsKKyAgX191MTYgc2FkYl9pZGVudF9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhZGJfaWRlbnRfZXh0dHlwZTsKLSBfX3UxNiBzYWRiX2lkZW50X3R5cGU7Ci0gX191MTYgc2FkYl9pZGVudF9yZXNlcnZlZDsKLSBfX3U2NCBzYWRiX2lkZW50X2lkOworICBfX3UxNiBzYWRiX2lkZW50X2V4dHR5cGU7CisgIF9fdTE2IHNhZGJfaWRlbnRfdHlwZTsKKyAgX191MTYgc2FkYl9pZGVudF9yZXNlcnZlZDsKKyAgX191NjQgc2FkYl9pZGVudF9pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHNhZGJfc2VucyB7Ci0gX191MTYgc2FkYl9zZW5zX2xlbjsKLSBfX3UxNiBzYWRiX3NlbnNfZXh0dHlwZTsKKyAgX191MTYgc2FkYl9zZW5zX2xlbjsKKyAgX191MTYgc2FkYl9zZW5zX2V4dHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNhZGJfc2Vuc19kcGQ7Ci0gX191OCBzYWRiX3NlbnNfc2Vuc19sZXZlbDsKLSBfX3U4IHNhZGJfc2Vuc19zZW5zX2xlbjsKLSBfX3U4IHNhZGJfc2Vuc19pbnRlZ19sZXZlbDsKKyAgX191MzIgc2FkYl9zZW5zX2RwZDsKKyAgX191OCBzYWRiX3NlbnNfc2Vuc19sZXZlbDsKKyAgX191OCBzYWRiX3NlbnNfc2Vuc19sZW47CisgIF9fdTggc2FkYl9zZW5zX2ludGVnX2xldmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNhZGJfc2Vuc19pbnRlZ19sZW47Ci0gX191MzIgc2FkYl9zZW5zX3Jlc2VydmVkOworICBfX3U4IHNhZGJfc2Vuc19pbnRlZ19sZW47CisgIF9fdTMyIHNhZGJfc2Vuc19yZXNlcnZlZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3Qgc2FkYl9wcm9wIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2FkYl9wcm9wX2xlbjsKLSBfX3UxNiBzYWRiX3Byb3BfZXh0dHlwZTsKLSBfX3U4IHNhZGJfcHJvcF9yZXBsYXk7Ci0gX191OCBzYWRiX3Byb3BfcmVzZXJ2ZWRbM107CisgIF9fdTE2IHNhZGJfcHJvcF9sZW47CisgIF9fdTE2IHNhZGJfcHJvcF9leHR0eXBlOworICBfX3U4IHNhZGJfcHJvcF9yZXBsYXk7CisgIF9fdTggc2FkYl9wcm9wX3Jlc2VydmVkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3Qgc2FkYl9jb21iIHsKLSBfX3U4IHNhZGJfY29tYl9hdXRoOwotIF9fdTggc2FkYl9jb21iX2VuY3J5cHQ7CisgIF9fdTggc2FkYl9jb21iX2F1dGg7CisgIF9fdTggc2FkYl9jb21iX2VuY3J5cHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhZGJfY29tYl9mbGFnczsKLSBfX3UxNiBzYWRiX2NvbWJfYXV0aF9taW5iaXRzOwotIF9fdTE2IHNhZGJfY29tYl9hdXRoX21heGJpdHM7Ci0gX191MTYgc2FkYl9jb21iX2VuY3J5cHRfbWluYml0czsKKyAgX191MTYgc2FkYl9jb21iX2ZsYWdzOworICBfX3UxNiBzYWRiX2NvbWJfYXV0aF9taW5iaXRzOworICBfX3UxNiBzYWRiX2NvbWJfYXV0aF9tYXhiaXRzOworICBfX3UxNiBzYWRiX2NvbWJfZW5jcnlwdF9taW5iaXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzYWRiX2NvbWJfZW5jcnlwdF9tYXhiaXRzOwotIF9fdTMyIHNhZGJfY29tYl9yZXNlcnZlZDsKLSBfX3UzMiBzYWRiX2NvbWJfc29mdF9hbGxvY2F0aW9uczsKLSBfX3UzMiBzYWRiX2NvbWJfaGFyZF9hbGxvY2F0aW9uczsKKyAgX191MTYgc2FkYl9jb21iX2VuY3J5cHRfbWF4Yml0czsKKyAgX191MzIgc2FkYl9jb21iX3Jlc2VydmVkOworICBfX3UzMiBzYWRiX2NvbWJfc29mdF9hbGxvY2F0aW9uczsKKyAgX191MzIgc2FkYl9jb21iX2hhcmRfYWxsb2NhdGlvbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNhZGJfY29tYl9zb2Z0X2J5dGVzOwotIF9fdTY0IHNhZGJfY29tYl9oYXJkX2J5dGVzOwotIF9fdTY0IHNhZGJfY29tYl9zb2Z0X2FkZHRpbWU7Ci0gX191NjQgc2FkYl9jb21iX2hhcmRfYWRkdGltZTsKKyAgX191NjQgc2FkYl9jb21iX3NvZnRfYnl0ZXM7CisgIF9fdTY0IHNhZGJfY29tYl9oYXJkX2J5dGVzOworICBfX3U2NCBzYWRiX2NvbWJfc29mdF9hZGR0aW1lOworICBfX3U2NCBzYWRiX2NvbWJfaGFyZF9hZGR0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzYWRiX2NvbWJfc29mdF91c2V0aW1lOwotIF9fdTY0IHNhZGJfY29tYl9oYXJkX3VzZXRpbWU7CisgIF9fdTY0IHNhZGJfY29tYl9zb2Z0X3VzZXRpbWU7CisgIF9fdTY0IHNhZGJfY29tYl9oYXJkX3VzZXRpbWU7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHNhZGJfc3VwcG9ydGVkIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2FkYl9zdXBwb3J0ZWRfbGVuOwotIF9fdTE2IHNhZGJfc3VwcG9ydGVkX2V4dHR5cGU7Ci0gX191MzIgc2FkYl9zdXBwb3J0ZWRfcmVzZXJ2ZWQ7CisgIF9fdTE2IHNhZGJfc3VwcG9ydGVkX2xlbjsKKyAgX191MTYgc2FkYl9zdXBwb3J0ZWRfZXh0dHlwZTsKKyAgX191MzIgc2FkYl9zdXBwb3J0ZWRfcmVzZXJ2ZWQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzYWRiX2FsZyB7Ci0gX191OCBzYWRiX2FsZ19pZDsKLSBfX3U4IHNhZGJfYWxnX2l2bGVuOwotIF9fdTE2IHNhZGJfYWxnX21pbmJpdHM7CisgIF9fdTggc2FkYl9hbGdfaWQ7CisgIF9fdTggc2FkYl9hbGdfaXZsZW47CisgIF9fdTE2IHNhZGJfYWxnX21pbmJpdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhZGJfYWxnX21heGJpdHM7Ci0gX191MTYgc2FkYl9hbGdfcmVzZXJ2ZWQ7CisgIF9fdTE2IHNhZGJfYWxnX21heGJpdHM7CisgIF9fdTE2IHNhZGJfYWxnX3Jlc2VydmVkOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBzYWRiX3NwaXJhbmdlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2FkYl9zcGlyYW5nZV9sZW47Ci0gX191MTYgc2FkYl9zcGlyYW5nZV9leHR0eXBlOwotIF9fdTMyIHNhZGJfc3BpcmFuZ2VfbWluOwotIF9fdTMyIHNhZGJfc3BpcmFuZ2VfbWF4OworICBfX3UxNiBzYWRiX3NwaXJhbmdlX2xlbjsKKyAgX191MTYgc2FkYl9zcGlyYW5nZV9leHR0eXBlOworICBfX3UzMiBzYWRiX3NwaXJhbmdlX21pbjsKKyAgX191MzIgc2FkYl9zcGlyYW5nZV9tYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNhZGJfc3BpcmFuZ2VfcmVzZXJ2ZWQ7CisgIF9fdTMyIHNhZGJfc3BpcmFuZ2VfcmVzZXJ2ZWQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHNhZGJfeF9rbXByaXZhdGUgewotIF9fdTE2IHNhZGJfeF9rbXByaXZhdGVfbGVuOworICBfX3UxNiBzYWRiX3hfa21wcml2YXRlX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2FkYl94X2ttcHJpdmF0ZV9leHR0eXBlOwotIF9fdTMyIHNhZGJfeF9rbXByaXZhdGVfcmVzZXJ2ZWQ7CisgIF9fdTE2IHNhZGJfeF9rbXByaXZhdGVfZXh0dHlwZTsKKyAgX191MzIgc2FkYl94X2ttcHJpdmF0ZV9yZXNlcnZlZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3Qgc2FkYl94X3NhMiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhZGJfeF9zYTJfbGVuOwotIF9fdTE2IHNhZGJfeF9zYTJfZXh0dHlwZTsKLSBfX3U4IHNhZGJfeF9zYTJfbW9kZTsKLSBfX3U4IHNhZGJfeF9zYTJfcmVzZXJ2ZWQxOworICBfX3UxNiBzYWRiX3hfc2EyX2xlbjsKKyAgX191MTYgc2FkYl94X3NhMl9leHR0eXBlOworICBfX3U4IHNhZGJfeF9zYTJfbW9kZTsKKyAgX191OCBzYWRiX3hfc2EyX3Jlc2VydmVkMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2FkYl94X3NhMl9yZXNlcnZlZDI7Ci0gX191MzIgc2FkYl94X3NhMl9zZXF1ZW5jZTsKLSBfX3UzMiBzYWRiX3hfc2EyX3JlcWlkOworICBfX3UxNiBzYWRiX3hfc2EyX3Jlc2VydmVkMjsKKyAgX191MzIgc2FkYl94X3NhMl9zZXF1ZW5jZTsKKyAgX191MzIgc2FkYl94X3NhMl9yZXFpZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNhZGJfeF9wb2xpY3kgewotIF9fdTE2IHNhZGJfeF9wb2xpY3lfbGVuOwotIF9fdTE2IHNhZGJfeF9wb2xpY3lfZXh0dHlwZTsKLSBfX3UxNiBzYWRiX3hfcG9saWN5X3R5cGU7CisgIF9fdTE2IHNhZGJfeF9wb2xpY3lfbGVuOworICBfX3UxNiBzYWRiX3hfcG9saWN5X2V4dHR5cGU7CisgIF9fdTE2IHNhZGJfeF9wb2xpY3lfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzYWRiX3hfcG9saWN5X2RpcjsKLSBfX3U4IHNhZGJfeF9wb2xpY3lfcmVzZXJ2ZWQ7Ci0gX191MzIgc2FkYl94X3BvbGljeV9pZDsKLSBfX3UzMiBzYWRiX3hfcG9saWN5X3ByaW9yaXR5OworICBfX3U4IHNhZGJfeF9wb2xpY3lfZGlyOworICBfX3U4IHNhZGJfeF9wb2xpY3lfcmVzZXJ2ZWQ7CisgIF9fdTMyIHNhZGJfeF9wb2xpY3lfaWQ7CisgIF9fdTMyIHNhZGJfeF9wb2xpY3lfcHJpb3JpdHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBzYWRiX3hfaXBzZWNyZXF1ZXN0IHsKLSBfX3UxNiBzYWRiX3hfaXBzZWNyZXF1ZXN0X2xlbjsKLSBfX3UxNiBzYWRiX3hfaXBzZWNyZXF1ZXN0X3Byb3RvOworICBfX3UxNiBzYWRiX3hfaXBzZWNyZXF1ZXN0X2xlbjsKKyAgX191MTYgc2FkYl94X2lwc2VjcmVxdWVzdF9wcm90bzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzYWRiX3hfaXBzZWNyZXF1ZXN0X21vZGU7Ci0gX191OCBzYWRiX3hfaXBzZWNyZXF1ZXN0X2xldmVsOwotIF9fdTE2IHNhZGJfeF9pcHNlY3JlcXVlc3RfcmVzZXJ2ZWQxOwotIF9fdTMyIHNhZGJfeF9pcHNlY3JlcXVlc3RfcmVxaWQ7CisgIF9fdTggc2FkYl94X2lwc2VjcmVxdWVzdF9tb2RlOworICBfX3U4IHNhZGJfeF9pcHNlY3JlcXVlc3RfbGV2ZWw7CisgIF9fdTE2IHNhZGJfeF9pcHNlY3JlcXVlc3RfcmVzZXJ2ZWQxOworICBfX3UzMiBzYWRiX3hfaXBzZWNyZXF1ZXN0X3JlcWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzYWRiX3hfaXBzZWNyZXF1ZXN0X3Jlc2VydmVkMjsKKyAgX191MzIgc2FkYl94X2lwc2VjcmVxdWVzdF9yZXNlcnZlZDI7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHNhZGJfeF9uYXRfdF90eXBlIHsKLSBfX3UxNiBzYWRiX3hfbmF0X3RfdHlwZV9sZW47CisgIF9fdTE2IHNhZGJfeF9uYXRfdF90eXBlX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2FkYl94X25hdF90X3R5cGVfZXh0dHlwZTsKLSBfX3U4IHNhZGJfeF9uYXRfdF90eXBlX3R5cGU7Ci0gX191OCBzYWRiX3hfbmF0X3RfdHlwZV9yZXNlcnZlZFszXTsKKyAgX191MTYgc2FkYl94X25hdF90X3R5cGVfZXh0dHlwZTsKKyAgX191OCBzYWRiX3hfbmF0X3RfdHlwZV90eXBlOworICBfX3U4IHNhZGJfeF9uYXRfdF90eXBlX3Jlc2VydmVkWzNdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2FkYl94X25hdF90X3BvcnQgewotIF9fdTE2IHNhZGJfeF9uYXRfdF9wb3J0X2xlbjsKLSBfX3UxNiBzYWRiX3hfbmF0X3RfcG9ydF9leHR0eXBlOwotIF9fYmUxNiBzYWRiX3hfbmF0X3RfcG9ydF9wb3J0OworICBfX3UxNiBzYWRiX3hfbmF0X3RfcG9ydF9sZW47CisgIF9fdTE2IHNhZGJfeF9uYXRfdF9wb3J0X2V4dHR5cGU7CisgIF9fYmUxNiBzYWRiX3hfbmF0X3RfcG9ydF9wb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzYWRiX3hfbmF0X3RfcG9ydF9yZXNlcnZlZDsKKyAgX191MTYgc2FkYl94X25hdF90X3BvcnRfcmVzZXJ2ZWQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHNhZGJfeF9zZWNfY3R4IHsKLSBfX3UxNiBzYWRiX3hfc2VjX2xlbjsKKyAgX191MTYgc2FkYl94X3NlY19sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhZGJfeF9zZWNfZXh0dHlwZTsKLSBfX3U4IHNhZGJfeF9jdHhfYWxnOwotIF9fdTggc2FkYl94X2N0eF9kb2k7Ci0gX191MTYgc2FkYl94X2N0eF9sZW47CisgIF9fdTE2IHNhZGJfeF9zZWNfZXh0dHlwZTsKKyAgX191OCBzYWRiX3hfY3R4X2FsZzsKKyAgX191OCBzYWRiX3hfY3R4X2RvaTsKKyAgX191MTYgc2FkYl94X2N0eF9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBzYWRiX3hfa21hZGRyZXNzIHsKLSBfX3UxNiBzYWRiX3hfa21hZGRyZXNzX2xlbjsKLSBfX3UxNiBzYWRiX3hfa21hZGRyZXNzX2V4dHR5cGU7CisgIF9fdTE2IHNhZGJfeF9rbWFkZHJlc3NfbGVuOworICBfX3UxNiBzYWRiX3hfa21hZGRyZXNzX2V4dHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNhZGJfeF9rbWFkZHJlc3NfcmVzZXJ2ZWQ7CisgIF9fdTMyIHNhZGJfeF9rbWFkZHJlc3NfcmVzZXJ2ZWQ7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworc3RydWN0IHNhZGJfeF9maWx0ZXIgeworICBfX3UxNiBzYWRiX3hfZmlsdGVyX2xlbjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IHNhZGJfeF9maWx0ZXJfZXh0dHlwZTsKKyAgX191MzIgc2FkYl94X2ZpbHRlcl9zYWRkcls0XTsKKyAgX191MzIgc2FkYl94X2ZpbHRlcl9kYWRkcls0XTsKKyAgX191MTYgc2FkYl94X2ZpbHRlcl9mYW1pbHk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHNhZGJfeF9maWx0ZXJfc3BsZW47CisgIF9fdTggc2FkYl94X2ZpbHRlcl9kcGxlbjsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFNBREJfUkVTRVJWRUQgMAotI2RlZmluZSBTQURCX0dFVFNQSSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX0dFVFNQSSAxCiAjZGVmaW5lIFNBREJfVVBEQVRFIDIKICNkZWZpbmUgU0FEQl9BREQgMwogI2RlZmluZSBTQURCX0RFTEVURSA0Ci0jZGVmaW5lIFNBREJfR0VUIDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfR0VUIDUKICNkZWZpbmUgU0FEQl9BQ1FVSVJFIDYKICNkZWZpbmUgU0FEQl9SRUdJU1RFUiA3CiAjZGVmaW5lIFNBREJfRVhQSVJFIDgKLSNkZWZpbmUgU0FEQl9GTFVTSCA5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX0ZMVVNIIDkKICNkZWZpbmUgU0FEQl9EVU1QIDEwCiAjZGVmaW5lIFNBREJfWF9QUk9NSVNDIDExCiAjZGVmaW5lIFNBREJfWF9QQ0hBTkdFIDEyCi0jZGVmaW5lIFNBREJfWF9TUERVUERBVEUgMTMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfWF9TUERVUERBVEUgMTMKICNkZWZpbmUgU0FEQl9YX1NQREFERCAxNAogI2RlZmluZSBTQURCX1hfU1BEREVMRVRFIDE1CiAjZGVmaW5lIFNBREJfWF9TUERHRVQgMTYKLSNkZWZpbmUgU0FEQl9YX1NQREFDUVVJUkUgMTcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfWF9TUERBQ1FVSVJFIDE3CiAjZGVmaW5lIFNBREJfWF9TUEREVU1QIDE4CiAjZGVmaW5lIFNBREJfWF9TUERGTFVTSCAxOQogI2RlZmluZSBTQURCX1hfU1BEU0VUSURYIDIwCi0jZGVmaW5lIFNBREJfWF9TUERFWFBJUkUgMjEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfWF9TUERFWFBJUkUgMjEKICNkZWZpbmUgU0FEQl9YX1NQRERFTEVURTIgMjIKICNkZWZpbmUgU0FEQl9YX05BVF9UX05FV19NQVBQSU5HIDIzCiAjZGVmaW5lIFNBREJfWF9NSUdSQVRFIDI0Ci0jZGVmaW5lIFNBREJfTUFYIDI0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX01BWCAyNAogI2RlZmluZSBTQURCX1NBRkxBR1NfUEZTIDEKICNkZWZpbmUgU0FEQl9TQUZMQUdTX05PUE1UVURJU0MgMHgyMDAwMDAwMAogI2RlZmluZSBTQURCX1NBRkxBR1NfREVDQVBfRFNDUCAweDQwMDAwMDAwCi0jZGVmaW5lIFNBREJfU0FGTEFHU19OT0VDTiAweDgwMDAwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX1NBRkxBR1NfTk9FQ04gMHg4MDAwMDAwMAogI2RlZmluZSBTQURCX1NBU1RBVEVfTEFSVkFMIDAKICNkZWZpbmUgU0FEQl9TQVNUQVRFX01BVFVSRSAxCiAjZGVmaW5lIFNBREJfU0FTVEFURV9EWUlORyAyCi0jZGVmaW5lIFNBREJfU0FTVEFURV9ERUFEIDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfU0FTVEFURV9ERUFEIDMKICNkZWZpbmUgU0FEQl9TQVNUQVRFX01BWCAzCiAjZGVmaW5lIFNBREJfU0FUWVBFX1VOU1BFQyAwCiAjZGVmaW5lIFNBREJfU0FUWVBFX0FIIDIKLSNkZWZpbmUgU0FEQl9TQVRZUEVfRVNQIDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfU0FUWVBFX0VTUCAzCiAjZGVmaW5lIFNBREJfU0FUWVBFX1JTVlAgNQogI2RlZmluZSBTQURCX1NBVFlQRV9PU1BGVjIgNgogI2RlZmluZSBTQURCX1NBVFlQRV9SSVBWMiA3Ci0jZGVmaW5lIFNBREJfU0FUWVBFX01JUCA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX1NBVFlQRV9NSVAgOAogI2RlZmluZSBTQURCX1hfU0FUWVBFX0lQQ09NUCA5CiAjZGVmaW5lIFNBREJfU0FUWVBFX01BWCA5CiAjZGVmaW5lIFNBREJfQUFMR19OT05FIDAKLSNkZWZpbmUgU0FEQl9BQUxHX01ENUhNQUMgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9BQUxHX01ENUhNQUMgMgogI2RlZmluZSBTQURCX0FBTEdfU0hBMUhNQUMgMwogI2RlZmluZSBTQURCX1hfQUFMR19TSEEyXzI1NkhNQUMgNQogI2RlZmluZSBTQURCX1hfQUFMR19TSEEyXzM4NEhNQUMgNgotI2RlZmluZSBTQURCX1hfQUFMR19TSEEyXzUxMkhNQUMgNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9YX0FBTEdfU0hBMl81MTJITUFDIDcKICNkZWZpbmUgU0FEQl9YX0FBTEdfUklQRU1EMTYwSE1BQyA4CiAjZGVmaW5lIFNBREJfWF9BQUxHX0FFU19YQ0JDX01BQyA5CiAjZGVmaW5lIFNBREJfWF9BQUxHX05VTEwgMjUxCi0jZGVmaW5lIFNBREJfQUFMR19NQVggMjUxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX0FBTEdfTUFYIDI1MQogI2RlZmluZSBTQURCX0VBTEdfTk9ORSAwCiAjZGVmaW5lIFNBREJfRUFMR19ERVNDQkMgMgogI2RlZmluZSBTQURCX0VBTEdfM0RFU0NCQyAzCi0jZGVmaW5lIFNBREJfWF9FQUxHX0NBU1RDQkMgNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9YX0VBTEdfQ0FTVENCQyA2CiAjZGVmaW5lIFNBREJfWF9FQUxHX0JMT1dGSVNIQ0JDIDcKICNkZWZpbmUgU0FEQl9FQUxHX05VTEwgMTEKICNkZWZpbmUgU0FEQl9YX0VBTEdfQUVTQ0JDIDEyCi0jZGVmaW5lIFNBREJfWF9FQUxHX0FFU0NUUiAxMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9YX0VBTEdfQUVTQ1RSIDEzCiAjZGVmaW5lIFNBREJfWF9FQUxHX0FFU19DQ01fSUNWOCAxNAogI2RlZmluZSBTQURCX1hfRUFMR19BRVNfQ0NNX0lDVjEyIDE1CiAjZGVmaW5lIFNBREJfWF9FQUxHX0FFU19DQ01fSUNWMTYgMTYKLSNkZWZpbmUgU0FEQl9YX0VBTEdfQUVTX0dDTV9JQ1Y4IDE4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX1hfRUFMR19BRVNfR0NNX0lDVjggMTgKICNkZWZpbmUgU0FEQl9YX0VBTEdfQUVTX0dDTV9JQ1YxMiAxOQogI2RlZmluZSBTQURCX1hfRUFMR19BRVNfR0NNX0lDVjE2IDIwCiAjZGVmaW5lIFNBREJfWF9FQUxHX0NBTUVMTElBQ0JDIDIyCi0jZGVmaW5lIFNBREJfWF9FQUxHX05VTExfQUVTX0dNQUMgMjMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfWF9FQUxHX05VTExfQUVTX0dNQUMgMjMKICNkZWZpbmUgU0FEQl9FQUxHX01BWCAyNTMKICNkZWZpbmUgU0FEQl9YX0VBTEdfU0VSUEVOVENCQyAyNTIKICNkZWZpbmUgU0FEQl9YX0VBTEdfVFdPRklTSENCQyAyNTMKLSNkZWZpbmUgU0FEQl9YX0NBTEdfTk9ORSAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX1hfQ0FMR19OT05FIDAKICNkZWZpbmUgU0FEQl9YX0NBTEdfT1VJIDEKICNkZWZpbmUgU0FEQl9YX0NBTEdfREVGTEFURSAyCiAjZGVmaW5lIFNBREJfWF9DQUxHX0xaUyAzCi0jZGVmaW5lIFNBREJfWF9DQUxHX0xaSkggNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9YX0NBTEdfTFpKSCA0CiAjZGVmaW5lIFNBREJfWF9DQUxHX01BWCA0CiAjZGVmaW5lIFNBREJfRVhUX1JFU0VSVkVEIDAKICNkZWZpbmUgU0FEQl9FWFRfU0EgMQotI2RlZmluZSBTQURCX0VYVF9MSUZFVElNRV9DVVJSRU5UIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfRVhUX0xJRkVUSU1FX0NVUlJFTlQgMgogI2RlZmluZSBTQURCX0VYVF9MSUZFVElNRV9IQVJEIDMKICNkZWZpbmUgU0FEQl9FWFRfTElGRVRJTUVfU09GVCA0CiAjZGVmaW5lIFNBREJfRVhUX0FERFJFU1NfU1JDIDUKLSNkZWZpbmUgU0FEQl9FWFRfQUREUkVTU19EU1QgNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9FWFRfQUREUkVTU19EU1QgNgogI2RlZmluZSBTQURCX0VYVF9BRERSRVNTX1BST1hZIDcKICNkZWZpbmUgU0FEQl9FWFRfS0VZX0FVVEggOAogI2RlZmluZSBTQURCX0VYVF9LRVlfRU5DUllQVCA5Ci0jZGVmaW5lIFNBREJfRVhUX0lERU5USVRZX1NSQyAxMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9FWFRfSURFTlRJVFlfU1JDIDEwCiAjZGVmaW5lIFNBREJfRVhUX0lERU5USVRZX0RTVCAxMQogI2RlZmluZSBTQURCX0VYVF9TRU5TSVRJVklUWSAxMgogI2RlZmluZSBTQURCX0VYVF9QUk9QT1NBTCAxMwotI2RlZmluZSBTQURCX0VYVF9TVVBQT1JURURfQVVUSCAxNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0FEQl9FWFRfU1VQUE9SVEVEX0FVVEggMTQKICNkZWZpbmUgU0FEQl9FWFRfU1VQUE9SVEVEX0VOQ1JZUFQgMTUKICNkZWZpbmUgU0FEQl9FWFRfU1BJUkFOR0UgMTYKICNkZWZpbmUgU0FEQl9YX0VYVF9LTVBSSVZBVEUgMTcKLSNkZWZpbmUgU0FEQl9YX0VYVF9QT0xJQ1kgMTgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfWF9FWFRfUE9MSUNZIDE4CiAjZGVmaW5lIFNBREJfWF9FWFRfU0EyIDE5CiAjZGVmaW5lIFNBREJfWF9FWFRfTkFUX1RfVFlQRSAyMAogI2RlZmluZSBTQURCX1hfRVhUX05BVF9UX1NQT1JUIDIxCi0jZGVmaW5lIFNBREJfWF9FWFRfTkFUX1RfRFBPUlQgMjIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNBREJfWF9FWFRfTkFUX1RfRFBPUlQgMjIKICNkZWZpbmUgU0FEQl9YX0VYVF9OQVRfVF9PQSAyMwogI2RlZmluZSBTQURCX1hfRVhUX1NFQ19DVFggMjQKICNkZWZpbmUgU0FEQl9YX0VYVF9LTUFERFJFU1MgMjUKLSNkZWZpbmUgU0FEQl9FWFRfTUFYIDI1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQURCX1hfRVhUX0ZJTFRFUiAyNgorI2RlZmluZSBTQURCX0VYVF9NQVggMjYKICNkZWZpbmUgU0FEQl9JREVOVFRZUEVfUkVTRVJWRUQgMAogI2RlZmluZSBTQURCX0lERU5UVFlQRV9QUkVGSVggMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0FEQl9JREVOVFRZUEVfRlFETiAyCiAjZGVmaW5lIFNBREJfSURFTlRUWVBFX1VTRVJGUUROIDMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBREJfSURFTlRUWVBFX01BWCAzCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BnLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BnLmgKaW5kZXggODI2ODZkYS4uZGI4ODQ0MiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGcuaApAQCAtMjIsMTkgKzIyLDE5IEBACiAjZGVmaW5lIFBHX01BWF9EQVRBIDMyNzY4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHBnX3dyaXRlX2hkciB7Ci0gY2hhciBtYWdpYzsKLSBjaGFyIGZ1bmM7Ci0gaW50IGRsZW47CisgIGNoYXIgbWFnaWM7CisgIGNoYXIgZnVuYzsKKyAgaW50IGRsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0aW1lb3V0OwotIGNoYXIgcGFja2V0WzEyXTsKKyAgaW50IHRpbWVvdXQ7CisgIGNoYXIgcGFja2V0WzEyXTsKIH07CiBzdHJ1Y3QgcGdfcmVhZF9oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG1hZ2ljOwotIGNoYXIgc2NzaTsKLSBpbnQgZGxlbjsKLSBpbnQgZHVyYXRpb247CisgIGNoYXIgbWFnaWM7CisgIGNoYXIgc2NzaTsKKyAgaW50IGRsZW47CisgIGludCBkdXJhdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBwYWRbMTJdOworICBjaGFyIHBhZFsxMl07CiB9OwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9waGFudG9tLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BoYW50b20uaAppbmRleCBkNDM2ZWMxLi4wZGExNDExIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BoYW50b20uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BoYW50b20uaApAQCAtMjEsMTQgKzIxLDE0IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBwaG1fcmVnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVnOwotIF9fdTMyIHZhbHVlOworICBfX3UzMiByZWc7CisgIF9fdTMyIHZhbHVlOwogfTsKIHN0cnVjdCBwaG1fcmVncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNvdW50OwotIF9fdTMyIG1hc2s7Ci0gX191MzIgdmFsdWVzWzhdOworICBfX3UzMiBjb3VudDsKKyAgX191MzIgbWFzazsKKyAgX191MzIgdmFsdWVzWzhdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBIX0lPQ19NQUdJQyAncCcKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGhvbmV0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Bob25ldC5oCmluZGV4IDQwMTMyYmQuLjJiNWU3ODcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGhvbmV0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9waG9uZXQuaApAQCAtNDMsMzIgKzQzLDMyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTSU9DUE5ERUxSRVNPVVJDRSAoU0lPQ1BST1RPUFJJVkFURSArIDE1KQogc3RydWN0IHBob25ldGhkciB7Ci0gX191OCBwbl9yZGV2OwotIF9fdTggcG5fc2RldjsKKyAgX191OCBwbl9yZGV2OworICBfX3U4IHBuX3NkZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcG5fcmVzOwotIF9fYmUxNiBwbl9sZW5ndGg7Ci0gX191OCBwbl9yb2JqOwotIF9fdTggcG5fc29iajsKKyAgX191OCBwbl9yZXM7CisgIF9fYmUxNiBwbl9sZW5ndGg7CisgIF9fdTggcG5fcm9iajsKKyAgX191OCBwbl9zb2JqOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgcGhvbmV0bXNnIHsKLSBfX3U4IHBuX3RyYW5zX2lkOwotIF9fdTggcG5fbXNnX2lkOworICBfX3U4IHBuX3RyYW5zX2lkOworICBfX3U4IHBuX21zZ19pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCB7Ci0gX191OCBwbl9zdWJtc2dfaWQ7Ci0gX191OCBwbl9kYXRhWzVdOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTggcG5fc3VibXNnX2lkOworICAgICAgX191OCBwbl9kYXRhWzVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGJhc2U7Ci0gc3RydWN0IHsKLSBfX3UxNiBwbl9lX3Jlc19pZDsKLSBfX3U4IHBuX2Vfc3VibXNnX2lkOworICAgIH0gYmFzZTsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MTYgcG5fZV9yZXNfaWQ7CisgICAgICBfX3U4IHBuX2Vfc3VibXNnX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBuX2VfZGF0YVszXTsKLSB9IGV4dDsKLSB9IHBuX21zZ191OworICAgICAgX191OCBwbl9lX2RhdGFbM107CisgICAgfSBleHQ7CisgIH0gcG5fbXNnX3U7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUE5fQ09NTU9OX01FU1NBR0UgMHhGMApAQCAtODksMTIgKzg5LDEyIEBACiAjZGVmaW5lIHBuX2Vfb3JpZ19tc2dfaWQgcG5fZV9kYXRhWzBdCiAjZGVmaW5lIHBuX2Vfc3RhdHVzIHBuX2VfZGF0YVsxXQogc3RydWN0IHNvY2thZGRyX3BuIHsKLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzcG5fZmFtaWx5OworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzcG5fZmFtaWx5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNwbl9vYmo7Ci0gX191OCBzcG5fZGV2OwotIF9fdTggc3BuX3Jlc291cmNlOwotIF9fdTggc3BuX3plcm9bc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcikgLSBzaXplb2YoX19rZXJuZWxfc2FfZmFtaWx5X3QpIC0gM107CisgIF9fdTggc3BuX29iajsKKyAgX191OCBzcG5fZGV2OworICBfX3U4IHNwbl9yZXNvdXJjZTsKKyAgX191OCBzcG5femVyb1tzaXplb2Yoc3RydWN0IHNvY2thZGRyKSAtIHNpemVvZihfX2tlcm5lbF9zYV9mYW1pbHlfdCkgLSAzXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBQTl9ERVZfUEMgMHgxMApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wa3RfY2xzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BrdF9jbHMuaAppbmRleCA5MmVhMGRmLi44Yzg3YmFlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BrdF9jbHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BrdF9jbHMuaApAQCAtMjMsMjggKzIzLDI4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfVENfTUFLRTMyKHgpICgoeCkpCiAjZGVmaW5lIF9UQ19NQUtFTUFTSzEobikgKF9UQ19NQUtFMzIoMSkgPDwgX1RDX01BS0UzMihuKSkKLSNkZWZpbmUgX1RDX01BS0VNQVNLKHYsbikgKF9UQ19NQUtFMzIoKF9UQ19NQUtFMzIoMSk8PCh2KSktMSkgPDwgX1RDX01BS0UzMihuKSkKKyNkZWZpbmUgX1RDX01BS0VNQVNLKHYsbikgKF9UQ19NQUtFMzIoKF9UQ19NQUtFMzIoMSkgPDwgKHYpKSAtIDEpIDw8IF9UQ19NQUtFMzIobikpCiAjZGVmaW5lIF9UQ19NQUtFVkFMVUUodixuKSAoX1RDX01BS0UzMih2KSA8PCBfVENfTUFLRTMyKG4pKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX1RDX0dFVFZBTFVFKHYsbixtKSAoKF9UQ19NQUtFMzIodikgJiBfVENfTUFLRTMyKG0pKSA+PiBfVENfTUFLRTMyKG4pKQogI2RlZmluZSBUQ19NVU5HRUQgX1RDX01BS0VNQVNLMSgwKQotI2RlZmluZSBTRVRfVENfTVVOR0VEKHYpICggVENfTVVOR0VEIHwgKHYgJiB+VENfTVVOR0VEKSkKLSNkZWZpbmUgQ0xSX1RDX01VTkdFRCh2KSAoIHYgJiB+VENfTVVOR0VEKQorI2RlZmluZSBTRVRfVENfTVVOR0VEKHYpIChUQ19NVU5HRUQgfCAodiAmIH5UQ19NVU5HRUQpKQorI2RlZmluZSBDTFJfVENfTVVOR0VEKHYpICh2ICYgflRDX01VTkdFRCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDX09LMk1VTkdFIF9UQ19NQUtFTUFTSzEoMSkKLSNkZWZpbmUgU0VUX1RDX09LMk1VTkdFKHYpICggVENfT0syTVVOR0UgfCAodiAmIH5UQ19PSzJNVU5HRSkpCi0jZGVmaW5lIENMUl9UQ19PSzJNVU5HRSh2KSAoIHYgJiB+VENfT0syTVVOR0UpCisjZGVmaW5lIFNFVF9UQ19PSzJNVU5HRSh2KSAoVENfT0syTVVOR0UgfCAodiAmIH5UQ19PSzJNVU5HRSkpCisjZGVmaW5lIENMUl9UQ19PSzJNVU5HRSh2KSAodiAmIH5UQ19PSzJNVU5HRSkKICNkZWZpbmUgU19UQ19WRVJEIF9UQ19NQUtFMzIoMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1fVENfVkVSRCBfVENfTUFLRU1BU0soNCxTX1RDX1ZFUkQpCi0jZGVmaW5lIEdfVENfVkVSRCh4KSBfVENfR0VUVkFMVUUoeCxTX1RDX1ZFUkQsTV9UQ19WRVJEKQotI2RlZmluZSBWX1RDX1ZFUkQoeCkgX1RDX01BS0VWQUxVRSh4LFNfVENfVkVSRCkKKyNkZWZpbmUgTV9UQ19WRVJEIF9UQ19NQUtFTUFTSyg0LCBTX1RDX1ZFUkQpCisjZGVmaW5lIEdfVENfVkVSRCh4KSBfVENfR0VUVkFMVUUoeCwgU19UQ19WRVJELCBNX1RDX1ZFUkQpCisjZGVmaW5lIFZfVENfVkVSRCh4KSBfVENfTUFLRVZBTFVFKHgsIFNfVENfVkVSRCkKICNkZWZpbmUgU0VUX1RDX1ZFUkQodixuKSAoKFZfVENfVkVSRChuKSkgfCAodiAmIH5NX1RDX1ZFUkQpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU19UQ19GUk9NIF9UQ19NQUtFMzIoNikKLSNkZWZpbmUgTV9UQ19GUk9NIF9UQ19NQUtFTUFTSygyLFNfVENfRlJPTSkKLSNkZWZpbmUgR19UQ19GUk9NKHgpIF9UQ19HRVRWQUxVRSh4LFNfVENfRlJPTSxNX1RDX0ZST00pCi0jZGVmaW5lIFZfVENfRlJPTSh4KSBfVENfTUFLRVZBTFVFKHgsU19UQ19GUk9NKQorI2RlZmluZSBNX1RDX0ZST00gX1RDX01BS0VNQVNLKDIsIFNfVENfRlJPTSkKKyNkZWZpbmUgR19UQ19GUk9NKHgpIF9UQ19HRVRWQUxVRSh4LCBTX1RDX0ZST00sIE1fVENfRlJPTSkKKyNkZWZpbmUgVl9UQ19GUk9NKHgpIF9UQ19NQUtFVkFMVUUoeCwgU19UQ19GUk9NKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VUX1RDX0ZST00odixuKSAoKFZfVENfRlJPTShuKSkgfCAodiAmIH5NX1RDX0ZST00pKQogI2RlZmluZSBBVF9TVEFDSyAweDAKQEAgLTUyLDMzICs1MiwzMyBAQAogI2RlZmluZSBBVF9FR1JFU1MgMHgyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ19OQ0xTIF9UQ19NQUtFTUFTSzEoOCkKLSNkZWZpbmUgU0VUX1RDX05DTFModikgKCBUQ19OQ0xTIHwgKHYgJiB+VENfTkNMUykpCi0jZGVmaW5lIENMUl9UQ19OQ0xTKHYpICggdiAmIH5UQ19OQ0xTKQorI2RlZmluZSBTRVRfVENfTkNMUyh2KSAoVENfTkNMUyB8ICh2ICYgflRDX05DTFMpKQorI2RlZmluZSBDTFJfVENfTkNMUyh2KSAodiAmIH5UQ19OQ0xTKQogI2RlZmluZSBTX1RDX1JUVEwgX1RDX01BS0UzMig5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTV9UQ19SVFRMIF9UQ19NQUtFTUFTSygzLFNfVENfUlRUTCkKLSNkZWZpbmUgR19UQ19SVFRMKHgpIF9UQ19HRVRWQUxVRSh4LFNfVENfUlRUTCxNX1RDX1JUVEwpCi0jZGVmaW5lIFZfVENfUlRUTCh4KSBfVENfTUFLRVZBTFVFKHgsU19UQ19SVFRMKQorI2RlZmluZSBNX1RDX1JUVEwgX1RDX01BS0VNQVNLKDMsIFNfVENfUlRUTCkKKyNkZWZpbmUgR19UQ19SVFRMKHgpIF9UQ19HRVRWQUxVRSh4LCBTX1RDX1JUVEwsIE1fVENfUlRUTCkKKyNkZWZpbmUgVl9UQ19SVFRMKHgpIF9UQ19NQUtFVkFMVUUoeCwgU19UQ19SVFRMKQogI2RlZmluZSBTRVRfVENfUlRUTCh2LG4pICgoVl9UQ19SVFRMKG4pKSB8ICh2ICYgfk1fVENfUlRUTCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTX1RDX0FUIF9UQ19NQUtFMzIoMTIpCi0jZGVmaW5lIE1fVENfQVQgX1RDX01BS0VNQVNLKDIsU19UQ19BVCkKLSNkZWZpbmUgR19UQ19BVCh4KSBfVENfR0VUVkFMVUUoeCxTX1RDX0FULE1fVENfQVQpCi0jZGVmaW5lIFZfVENfQVQoeCkgX1RDX01BS0VWQUxVRSh4LFNfVENfQVQpCisjZGVmaW5lIE1fVENfQVQgX1RDX01BS0VNQVNLKDIsIFNfVENfQVQpCisjZGVmaW5lIEdfVENfQVQoeCkgX1RDX0dFVFZBTFVFKHgsIFNfVENfQVQsIE1fVENfQVQpCisjZGVmaW5lIFZfVENfQVQoeCkgX1RDX01BS0VWQUxVRSh4LCBTX1RDX0FUKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VUX1RDX0FUKHYsbikgKChWX1RDX0FUKG4pKSB8ICh2ICYgfk1fVENfQVQpKQogZW51bSB7Ci0gVENBX0FDVF9VTlNQRUMsCi0gVENBX0FDVF9LSU5ELAorICBUQ0FfQUNUX1VOU1BFQywKKyAgVENBX0FDVF9LSU5ELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfQUNUX09QVElPTlMsCi0gVENBX0FDVF9JTkRFWCwKLSBUQ0FfQUNUX1NUQVRTLAotIF9fVENBX0FDVF9NQVgKKyAgVENBX0FDVF9PUFRJT05TLAorICBUQ0FfQUNUX0lOREVYLAorICBUQ0FfQUNUX1NUQVRTLAorICBfX1RDQV9BQ1RfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVENBX0FDVF9NQVggX19UQ0FfQUNUX01BWAotI2RlZmluZSBUQ0FfT0xEX0NPTVBBVCAoVENBX0FDVF9NQVgrMSkKKyNkZWZpbmUgVENBX09MRF9DT01QQVQgKFRDQV9BQ1RfTUFYICsgMSkKICNkZWZpbmUgVENBX0FDVF9NQVhfUFJJTyAzMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX0FDVF9CSU5EIDEKQEAgLTkxLDcgKzkxLDcgQEAKICNkZWZpbmUgTUFYX1JFQ19MT09QIDQKICNkZWZpbmUgTUFYX1JFRF9MT09QIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFRDX0FDVF9VTlNQRUMgKC0xKQorI2RlZmluZSBUQ19BQ1RfVU5TUEVDICgtIDEpCiAjZGVmaW5lIFRDX0FDVF9PSyAwCiAjZGVmaW5lIFRDX0FDVF9SRUNMQVNTSUZZIDEKICNkZWZpbmUgVENfQUNUX1NIT1QgMgpAQCAtMTAzLDEyMCArMTAzLDEyMCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENfQUNUX0pVTVAgMHgxMDAwMDAwMAogZW51bSB7Ci0gVENBX0lEX1VOU1BFQz0wLAotIFRDQV9JRF9QT0xJQ0U9MSwKKyAgVENBX0lEX1VOU1BFQyA9IDAsCisgIFRDQV9JRF9QT0xJQ0UgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX1RDQV9JRF9NQVg9MjU1CisgIF9fVENBX0lEX01BWCA9IDI1NQogfTsKICNkZWZpbmUgVENBX0lEX01BWCBfX1RDQV9JRF9NQVgKIHN0cnVjdCB0Y19wb2xpY2UgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbmRleDsKLSBpbnQgYWN0aW9uOworICBfX3UzMiBpbmRleDsKKyAgaW50IGFjdGlvbjsKICNkZWZpbmUgVENfUE9MSUNFX1VOU1BFQyBUQ19BQ1RfVU5TUEVDCiAjZGVmaW5lIFRDX1BPTElDRV9PSyBUQ19BQ1RfT0sKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDX1BPTElDRV9SRUNMQVNTSUZZIFRDX0FDVF9SRUNMQVNTSUZZCiAjZGVmaW5lIFRDX1BPTElDRV9TSE9UIFRDX0FDVF9TSE9UCiAjZGVmaW5lIFRDX1BPTElDRV9QSVBFIFRDX0FDVF9QSVBFCi0gX191MzIgbGltaXQ7CisgIF9fdTMyIGxpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBidXJzdDsKLSBfX3UzMiBtdHU7Ci0gc3RydWN0IHRjX3JhdGVzcGVjIHJhdGU7Ci0gc3RydWN0IHRjX3JhdGVzcGVjIHBlYWtyYXRlOworICBfX3UzMiBidXJzdDsKKyAgX191MzIgbXR1OworICBzdHJ1Y3QgdGNfcmF0ZXNwZWMgcmF0ZTsKKyAgc3RydWN0IHRjX3JhdGVzcGVjIHBlYWtyYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcmVmY250OwotIGludCBiaW5kY250OwotIF9fdTMyIGNhcGFiOworICBpbnQgcmVmY250OworICBpbnQgYmluZGNudDsKKyAgX191MzIgY2FwYWI7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y2ZfdCB7Ci0gX191NjQgaW5zdGFsbDsKLSBfX3U2NCBsYXN0dXNlOwotIF9fdTY0IGV4cGlyZXM7CisgIF9fdTY0IGluc3RhbGw7CisgIF9fdTY0IGxhc3R1c2U7CisgIF9fdTY0IGV4cGlyZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB0Y19jbnQgewotIGludCByZWZjbnQ7Ci0gaW50IGJpbmRjbnQ7CisgIGludCByZWZjbnQ7CisgIGludCBiaW5kY250OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIHRjX2dlbiAgIF9fdTMyIGluZGV4OyAgIF9fdTMyIGNhcGFiOyAgIGludCBhY3Rpb247ICAgaW50IHJlZmNudDsgICBpbnQgYmluZGNudAorI2RlZmluZSB0Y19nZW4gX191MzIgaW5kZXg7IF9fdTMyIGNhcGFiOyBpbnQgYWN0aW9uOyBpbnQgcmVmY250OyBpbnQgYmluZGNudAogZW51bSB7Ci0gVENBX1BPTElDRV9VTlNQRUMsCisgIFRDQV9QT0xJQ0VfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfUE9MSUNFX1RCRiwKLSBUQ0FfUE9MSUNFX1JBVEUsCi0gVENBX1BPTElDRV9QRUFLUkFURSwKLSBUQ0FfUE9MSUNFX0FWUkFURSwKKyAgVENBX1BPTElDRV9UQkYsCisgIFRDQV9QT0xJQ0VfUkFURSwKKyAgVENBX1BPTElDRV9QRUFLUkFURSwKKyAgVENBX1BPTElDRV9BVlJBVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9QT0xJQ0VfUkVTVUxULAotIF9fVENBX1BPTElDRV9NQVgKKyAgVENBX1BPTElDRV9SRVNVTFQsCisgIF9fVENBX1BPTElDRV9NQVgKICNkZWZpbmUgVENBX1BPTElDRV9SRVNVTFQgVENBX1BPTElDRV9SRVNVTFQKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0FfUE9MSUNFX01BWCAoX19UQ0FfUE9MSUNFX01BWCAtIDEpCi0jZGVmaW5lIFRDX1UzMl9IVElEKGgpICgoaCkmMHhGRkYwMDAwMCkKLSNkZWZpbmUgVENfVTMyX1VTRVJIVElEKGgpIChUQ19VMzJfSFRJRChoKT4+MjApCi0jZGVmaW5lIFRDX1UzMl9IQVNIKGgpICgoKGgpPj4xMikmMHhGRikKKyNkZWZpbmUgVENfVTMyX0hUSUQoaCkgKChoKSAmIDB4RkZGMDAwMDApCisjZGVmaW5lIFRDX1UzMl9VU0VSSFRJRChoKSAoVENfVTMyX0hUSUQoaCkgPj4gMjApCisjZGVmaW5lIFRDX1UzMl9IQVNIKGgpICgoKGgpID4+IDEyKSAmIDB4RkYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBUQ19VMzJfTk9ERShoKSAoKGgpJjB4RkZGKQotI2RlZmluZSBUQ19VMzJfS0VZKGgpICgoaCkmMHhGRkZGRikKKyNkZWZpbmUgVENfVTMyX05PREUoaCkgKChoKSAmIDB4RkZGKQorI2RlZmluZSBUQ19VMzJfS0VZKGgpICgoaCkgJiAweEZGRkZGKQogI2RlZmluZSBUQ19VMzJfVU5TUEVDIDAKICNkZWZpbmUgVENfVTMyX1JPT1QgKDB4RkZGMDAwMDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gVENBX1UzMl9VTlNQRUMsCi0gVENBX1UzMl9DTEFTU0lELAotIFRDQV9VMzJfSEFTSCwKKyAgVENBX1UzMl9VTlNQRUMsCisgIFRDQV9VMzJfQ0xBU1NJRCwKKyAgVENBX1UzMl9IQVNILAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfVTMyX0xJTkssCi0gVENBX1UzMl9ESVZJU09SLAotIFRDQV9VMzJfU0VMLAotIFRDQV9VMzJfUE9MSUNFLAorICBUQ0FfVTMyX0xJTkssCisgIFRDQV9VMzJfRElWSVNPUiwKKyAgVENBX1UzMl9TRUwsCisgIFRDQV9VMzJfUE9MSUNFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfVTMyX0FDVCwKLSBUQ0FfVTMyX0lOREVWLAotIFRDQV9VMzJfUENOVCwKLSBUQ0FfVTMyX01BUkssCisgIFRDQV9VMzJfQUNULAorICBUQ0FfVTMyX0lOREVWLAorICBUQ0FfVTMyX1BDTlQsCisgIFRDQV9VMzJfTUFSSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19UQ0FfVTMyX01BWAorICBfX1RDQV9VMzJfTUFYCiB9OwogI2RlZmluZSBUQ0FfVTMyX01BWCAoX19UQ0FfVTMyX01BWCAtIDEpCiBzdHJ1Y3QgdGNfdTMyX2tleSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBtYXNrOwotIF9fYmUzMiB2YWw7Ci0gaW50IG9mZjsKLSBpbnQgb2ZmbWFzazsKKyAgX19iZTMyIG1hc2s7CisgIF9fYmUzMiB2YWw7CisgIGludCBvZmY7CisgIGludCBvZmZtYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdGNfdTMyX3NlbCB7Ci0gdW5zaWduZWQgY2hhciBmbGFnczsKLSB1bnNpZ25lZCBjaGFyIG9mZnNoaWZ0OworICB1bnNpZ25lZCBjaGFyIGZsYWdzOworICB1bnNpZ25lZCBjaGFyIG9mZnNoaWZ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIG5rZXlzOwotIF9fYmUxNiBvZmZtYXNrOwotIF9fdTE2IG9mZjsKLSBzaG9ydCBvZmZvZmY7CisgIHVuc2lnbmVkIGNoYXIgbmtleXM7CisgIF9fYmUxNiBvZmZtYXNrOworICBfX3UxNiBvZmY7CisgIHNob3J0IG9mZm9mZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgaG9mZjsKLSBfX2JlMzIgaG1hc2s7Ci0gc3RydWN0IHRjX3UzMl9rZXkga2V5c1swXTsKKyAgc2hvcnQgaG9mZjsKKyAgX19iZTMyIGhtYXNrOworICBzdHJ1Y3QgdGNfdTMyX2tleSBrZXlzWzBdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfdTMyX21hcmsgewotIF9fdTMyIHZhbDsKLSBfX3UzMiBtYXNrOwotIF9fdTMyIHN1Y2Nlc3M7CisgIF9fdTMyIHZhbDsKKyAgX191MzIgbWFzazsKKyAgX191MzIgc3VjY2VzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHRjX3UzMl9wY250IHsKLSBfX3U2NCByY250OwotIF9fdTY0IHJoaXQ7CisgIF9fdTY0IHJjbnQ7CisgIF9fdTY0IHJoaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGtjbnRzWzBdOworICBfX3U2NCBrY250c1swXTsKIH07CiAjZGVmaW5lIFRDX1UzMl9URVJNSU5BTCAxCiAjZGVmaW5lIFRDX1UzMl9PRkZTRVQgMgpAQCAtMjI2LDE5OSArMjI2LDE5OSBAQAogI2RlZmluZSBUQ19VMzJfTUFYREVQVEggOAogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9SU1ZQX1VOU1BFQywKLSBUQ0FfUlNWUF9DTEFTU0lELAotIFRDQV9SU1ZQX0RTVCwKLSBUQ0FfUlNWUF9TUkMsCisgIFRDQV9SU1ZQX1VOU1BFQywKKyAgVENBX1JTVlBfQ0xBU1NJRCwKKyAgVENBX1JTVlBfRFNULAorICBUQ0FfUlNWUF9TUkMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9SU1ZQX1BJTkZPLAotIFRDQV9SU1ZQX1BPTElDRSwKLSBUQ0FfUlNWUF9BQ1QsCi0gX19UQ0FfUlNWUF9NQVgKKyAgVENBX1JTVlBfUElORk8sCisgIFRDQV9SU1ZQX1BPTElDRSwKKyAgVENBX1JTVlBfQUNULAorICBfX1RDQV9SU1ZQX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIFRDQV9SU1ZQX01BWCAoX19UQ0FfUlNWUF9NQVggLSAxICkKKyNkZWZpbmUgVENBX1JTVlBfTUFYIChfX1RDQV9SU1ZQX01BWCAtIDEpCiBzdHJ1Y3QgdGNfcnN2cF9ncGkgewotIF9fdTMyIGtleTsKKyAgX191MzIga2V5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXNrOwotIGludCBvZmZzZXQ7CisgIF9fdTMyIG1hc2s7CisgIGludCBvZmZzZXQ7CiB9Owogc3RydWN0IHRjX3JzdnBfcGluZm8gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdGNfcnN2cF9ncGkgZHBpOwotIHN0cnVjdCB0Y19yc3ZwX2dwaSBzcGk7Ci0gX191OCBwcm90b2NvbDsKLSBfX3U4IHR1bm5lbGlkOworICBzdHJ1Y3QgdGNfcnN2cF9ncGkgZHBpOworICBzdHJ1Y3QgdGNfcnN2cF9ncGkgc3BpOworICBfX3U4IHByb3RvY29sOworICBfX3U4IHR1bm5lbGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHR1bm5lbGhkcjsKLSBfX3U4IHBhZDsKKyAgX191OCB0dW5uZWxoZHI7CisgIF9fdTggcGFkOwogfTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfUk9VVEU0X1VOU1BFQywKLSBUQ0FfUk9VVEU0X0NMQVNTSUQsCi0gVENBX1JPVVRFNF9UTywKLSBUQ0FfUk9VVEU0X0ZST00sCisgIFRDQV9ST1VURTRfVU5TUEVDLAorICBUQ0FfUk9VVEU0X0NMQVNTSUQsCisgIFRDQV9ST1VURTRfVE8sCisgIFRDQV9ST1VURTRfRlJPTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1JPVVRFNF9JSUYsCi0gVENBX1JPVVRFNF9QT0xJQ0UsCi0gVENBX1JPVVRFNF9BQ1QsCi0gX19UQ0FfUk9VVEU0X01BWAorICBUQ0FfUk9VVEU0X0lJRiwKKyAgVENBX1JPVVRFNF9QT0xJQ0UsCisgIFRDQV9ST1VURTRfQUNULAorICBfX1RDQV9ST1VURTRfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVENBX1JPVVRFNF9NQVggKF9fVENBX1JPVVRFNF9NQVggLSAxKQogZW51bSB7Ci0gVENBX0ZXX1VOU1BFQywKKyAgVENBX0ZXX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0ZXX0NMQVNTSUQsCi0gVENBX0ZXX1BPTElDRSwKLSBUQ0FfRldfSU5ERVYsCi0gVENBX0ZXX0FDVCwKKyAgVENBX0ZXX0NMQVNTSUQsCisgIFRDQV9GV19QT0xJQ0UsCisgIFRDQV9GV19JTkRFViwKKyAgVENBX0ZXX0FDVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0ZXX01BU0ssCi0gX19UQ0FfRldfTUFYCisgIFRDQV9GV19NQVNLLAorICBfX1RDQV9GV19NQVgKIH07CiAjZGVmaW5lIFRDQV9GV19NQVggKF9fVENBX0ZXX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gVENBX1RDSU5ERVhfVU5TUEVDLAotIFRDQV9UQ0lOREVYX0hBU0gsCi0gVENBX1RDSU5ERVhfTUFTSywKKyAgVENBX1RDSU5ERVhfVU5TUEVDLAorICBUQ0FfVENJTkRFWF9IQVNILAorICBUQ0FfVENJTkRFWF9NQVNLLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfVENJTkRFWF9TSElGVCwKLSBUQ0FfVENJTkRFWF9GQUxMX1RIUk9VR0gsCi0gVENBX1RDSU5ERVhfQ0xBU1NJRCwKLSBUQ0FfVENJTkRFWF9QT0xJQ0UsCisgIFRDQV9UQ0lOREVYX1NISUZULAorICBUQ0FfVENJTkRFWF9GQUxMX1RIUk9VR0gsCisgIFRDQV9UQ0lOREVYX0NMQVNTSUQsCisgIFRDQV9UQ0lOREVYX1BPTElDRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1RDSU5ERVhfQUNULAotIF9fVENBX1RDSU5ERVhfTUFYCisgIFRDQV9UQ0lOREVYX0FDVCwKKyAgX19UQ0FfVENJTkRFWF9NQVgKIH07CiAjZGVmaW5lIFRDQV9UQ0lOREVYX01BWCAoX19UQ0FfVENJTkRFWF9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIEZMT1dfS0VZX1NSQywKLSBGTE9XX0tFWV9EU1QsCi0gRkxPV19LRVlfUFJPVE8sCisgIEZMT1dfS0VZX1NSQywKKyAgRkxPV19LRVlfRFNULAorICBGTE9XX0tFWV9QUk9UTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkxPV19LRVlfUFJPVE9fU1JDLAotIEZMT1dfS0VZX1BST1RPX0RTVCwKLSBGTE9XX0tFWV9JSUYsCi0gRkxPV19LRVlfUFJJT1JJVFksCisgIEZMT1dfS0VZX1BST1RPX1NSQywKKyAgRkxPV19LRVlfUFJPVE9fRFNULAorICBGTE9XX0tFWV9JSUYsCisgIEZMT1dfS0VZX1BSSU9SSVRZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGTE9XX0tFWV9NQVJLLAotIEZMT1dfS0VZX05GQ1QsCi0gRkxPV19LRVlfTkZDVF9TUkMsCi0gRkxPV19LRVlfTkZDVF9EU1QsCisgIEZMT1dfS0VZX01BUkssCisgIEZMT1dfS0VZX05GQ1QsCisgIEZMT1dfS0VZX05GQ1RfU1JDLAorICBGTE9XX0tFWV9ORkNUX0RTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkxPV19LRVlfTkZDVF9QUk9UT19TUkMsCi0gRkxPV19LRVlfTkZDVF9QUk9UT19EU1QsCi0gRkxPV19LRVlfUlRDTEFTU0lELAotIEZMT1dfS0VZX1NLVUlELAorICBGTE9XX0tFWV9ORkNUX1BST1RPX1NSQywKKyAgRkxPV19LRVlfTkZDVF9QUk9UT19EU1QsCisgIEZMT1dfS0VZX1JUQ0xBU1NJRCwKKyAgRkxPV19LRVlfU0tVSUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZMT1dfS0VZX1NLR0lELAotIEZMT1dfS0VZX1ZMQU5fVEFHLAotIEZMT1dfS0VZX1JYSEFTSCwKLSBfX0ZMT1dfS0VZX01BWCwKKyAgRkxPV19LRVlfU0tHSUQsCisgIEZMT1dfS0VZX1ZMQU5fVEFHLAorICBGTE9XX0tFWV9SWEhBU0gsCisgIF9fRkxPV19LRVlfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIEZMT1dfS0VZX01BWCAoX19GTE9XX0tFWV9NQVggLSAxKQogZW51bSB7Ci0gRkxPV19NT0RFX01BUCwKKyAgRkxPV19NT0RFX01BUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkxPV19NT0RFX0hBU0gsCisgIEZMT1dfTU9ERV9IQVNILAogfTsKIGVudW0gewotIFRDQV9GTE9XX1VOU1BFQywKKyAgVENBX0ZMT1dfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfRkxPV19LRVlTLAotIFRDQV9GTE9XX01PREUsCi0gVENBX0ZMT1dfQkFTRUNMQVNTLAotIFRDQV9GTE9XX1JTSElGVCwKKyAgVENBX0ZMT1dfS0VZUywKKyAgVENBX0ZMT1dfTU9ERSwKKyAgVENBX0ZMT1dfQkFTRUNMQVNTLAorICBUQ0FfRkxPV19SU0hJRlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9GTE9XX0FEREVORCwKLSBUQ0FfRkxPV19NQVNLLAotIFRDQV9GTE9XX1hPUiwKLSBUQ0FfRkxPV19ESVZJU09SLAorICBUQ0FfRkxPV19BRERFTkQsCisgIFRDQV9GTE9XX01BU0ssCisgIFRDQV9GTE9XX1hPUiwKKyAgVENBX0ZMT1dfRElWSVNPUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0ZMT1dfQUNULAotIFRDQV9GTE9XX1BPTElDRSwKLSBUQ0FfRkxPV19FTUFUQ0hFUywKLSBUQ0FfRkxPV19QRVJUVVJCLAorICBUQ0FfRkxPV19BQ1QsCisgIFRDQV9GTE9XX1BPTElDRSwKKyAgVENBX0ZMT1dfRU1BVENIRVMsCisgIFRDQV9GTE9XX1BFUlRVUkIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVENBX0ZMT1dfTUFYCisgIF9fVENBX0ZMT1dfTUFYCiB9OwogI2RlZmluZSBUQ0FfRkxPV19NQVggKF9fVENBX0ZMT1dfTUFYIC0gMSkKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfQkFTSUNfVU5TUEVDLAotIFRDQV9CQVNJQ19DTEFTU0lELAotIFRDQV9CQVNJQ19FTUFUQ0hFUywKLSBUQ0FfQkFTSUNfQUNULAorICBUQ0FfQkFTSUNfVU5TUEVDLAorICBUQ0FfQkFTSUNfQ0xBU1NJRCwKKyAgVENBX0JBU0lDX0VNQVRDSEVTLAorICBUQ0FfQkFTSUNfQUNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfQkFTSUNfUE9MSUNFLAotIF9fVENBX0JBU0lDX01BWAorICBUQ0FfQkFTSUNfUE9MSUNFLAorICBfX1RDQV9CQVNJQ19NQVgKIH07CiAjZGVmaW5lIFRDQV9CQVNJQ19NQVggKF9fVENBX0JBU0lDX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gVENBX0NHUk9VUF9VTlNQRUMsCi0gVENBX0NHUk9VUF9BQ1QsCi0gVENBX0NHUk9VUF9QT0xJQ0UsCisgIFRDQV9DR1JPVVBfVU5TUEVDLAorICBUQ0FfQ0dST1VQX0FDVCwKKyAgVENBX0NHUk9VUF9QT0xJQ0UsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9DR1JPVVBfRU1BVENIRVMsCi0gX19UQ0FfQ0dST1VQX01BWCwKKyAgVENBX0NHUk9VUF9FTUFUQ0hFUywKKyAgX19UQ0FfQ0dST1VQX01BWCwKIH07CiAjZGVmaW5lIFRDQV9DR1JPVVBfTUFYIChfX1RDQV9DR1JPVVBfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBUQ0FfQlBGX1VOU1BFQywKLSBUQ0FfQlBGX0FDVCwKLSBUQ0FfQlBGX1BPTElDRSwKKyAgVENBX0JQRl9VTlNQRUMsCisgIFRDQV9CUEZfQUNULAorICBUQ0FfQlBGX1BPTElDRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0JQRl9DTEFTU0lELAotIFRDQV9CUEZfT1BTX0xFTiwKLSBUQ0FfQlBGX09QUywKLSBfX1RDQV9CUEZfTUFYLAorICBUQ0FfQlBGX0NMQVNTSUQsCisgIFRDQV9CUEZfT1BTX0xFTiwKKyAgVENBX0JQRl9PUFMsCisgIF9fVENBX0JQRl9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVENBX0JQRl9NQVggKF9fVENBX0JQRl9NQVggLSAxKQogc3RydWN0IHRjZl9lbWF0Y2hfdHJlZV9oZHIgewotIF9fdTE2IG5tYXRjaGVzOworICBfX3UxNiBubWF0Y2hlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcHJvZ2lkOworICBfX3UxNiBwcm9naWQ7CiB9OwogZW51bSB7Ci0gVENBX0VNQVRDSF9UUkVFX1VOU1BFQywKKyAgVENBX0VNQVRDSF9UUkVFX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0VNQVRDSF9UUkVFX0hEUiwKLSBUQ0FfRU1BVENIX1RSRUVfTElTVCwKLSBfX1RDQV9FTUFUQ0hfVFJFRV9NQVgKKyAgVENBX0VNQVRDSF9UUkVFX0hEUiwKKyAgVENBX0VNQVRDSF9UUkVFX0xJU1QsCisgIF9fVENBX0VNQVRDSF9UUkVFX01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDQV9FTUFUQ0hfVFJFRV9NQVggKF9fVENBX0VNQVRDSF9UUkVFX01BWCAtIDEpCiBzdHJ1Y3QgdGNmX2VtYXRjaF9oZHIgewotIF9fdTE2IG1hdGNoaWQ7Ci0gX191MTYga2luZDsKKyAgX191MTYgbWF0Y2hpZDsKKyAgX191MTYga2luZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZmxhZ3M7Ci0gX191MTYgcGFkOworICBfX3UxNiBmbGFnczsKKyAgX191MTYgcGFkOwogfTsKICNkZWZpbmUgVENGX0VNX1JFTF9FTkQgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVENGX0VNX1JFTF9BTkQgKDE8PDApCi0jZGVmaW5lIFRDRl9FTV9SRUxfT1IgKDE8PDEpCi0jZGVmaW5lIFRDRl9FTV9JTlZFUlQgKDE8PDIpCi0jZGVmaW5lIFRDRl9FTV9TSU1QTEUgKDE8PDMpCisjZGVmaW5lIFRDRl9FTV9SRUxfQU5EICgxIDw8IDApCisjZGVmaW5lIFRDRl9FTV9SRUxfT1IgKDEgPDwgMSkKKyNkZWZpbmUgVENGX0VNX0lOVkVSVCAoMSA8PCAyKQorI2RlZmluZSBUQ0ZfRU1fU0lNUExFICgxIDw8IDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0ZfRU1fUkVMX01BU0sgMwogI2RlZmluZSBUQ0ZfRU1fUkVMX1ZBTElEKHYpICgoKHYpICYgVENGX0VNX1JFTF9NQVNLKSAhPSBUQ0ZfRU1fUkVMX01BU0spCiBlbnVtIHsKLSBUQ0ZfTEFZRVJfTElOSywKKyAgVENGX0xBWUVSX0xJTkssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDRl9MQVlFUl9ORVRXT1JLLAotIFRDRl9MQVlFUl9UUkFOU1BPUlQsCi0gX19UQ0ZfTEFZRVJfTUFYCisgIFRDRl9MQVlFUl9ORVRXT1JLLAorICBUQ0ZfTEFZRVJfVFJBTlNQT1JULAorICBfX1RDRl9MQVlFUl9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0ZfTEFZRVJfTUFYIChfX1RDRl9MQVlFUl9NQVggLSAxKQpAQCAtNDM2LDEzICs0MzYsMTMgQEAKICNkZWZpbmUgVENGX0VNX01BWCA4CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENGX0VNX1BST0dfVEMKKyAgVENGX0VNX1BST0dfVEMKIH07CiBlbnVtIHsKLSBUQ0ZfRU1fT1BORF9FUSwKKyAgVENGX0VNX09QTkRfRVEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDRl9FTV9PUE5EX0dULAotIFRDRl9FTV9PUE5EX0xUCisgIFRDRl9FTV9PUE5EX0dULAorICBUQ0ZfRU1fT1BORF9MVAogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGt0X3NjaGVkLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BrdF9zY2hlZC5oCmluZGV4IDViNjQwOTYuLjUxOGY4M2YgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGt0X3NjaGVkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wa3Rfc2NoZWQuaApAQCAtMjksODcgKzI5LDg3IEBACiAjZGVmaW5lIFRDX1BSSU9fQ09OVFJPTCA3CiAjZGVmaW5lIFRDX1BSSU9fTUFYIDE1CiBzdHJ1Y3QgdGNfc3RhdHMgewotIF9fdTY0IGJ5dGVzOworICBfX3U2NCBieXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGFja2V0czsKLSBfX3UzMiBkcm9wczsKLSBfX3UzMiBvdmVybGltaXRzOwotIF9fdTMyIGJwczsKKyAgX191MzIgcGFja2V0czsKKyAgX191MzIgZHJvcHM7CisgIF9fdTMyIG92ZXJsaW1pdHM7CisgIF9fdTMyIGJwczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcHBzOwotIF9fdTMyIHFsZW47Ci0gX191MzIgYmFja2xvZzsKKyAgX191MzIgcHBzOworICBfX3UzMiBxbGVuOworICBfX3UzMiBiYWNrbG9nOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfZXN0aW1hdG9yIHsKLSBzaWduZWQgY2hhciBpbnRlcnZhbDsKLSB1bnNpZ25lZCBjaGFyIGV3bWFfbG9nOworICBzaWduZWQgY2hhciBpbnRlcnZhbDsKKyAgdW5zaWduZWQgY2hhciBld21hX2xvZzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ19IX01BSl9NQVNLICgweEZGRkYwMDAwVSkKICNkZWZpbmUgVENfSF9NSU5fTUFTSyAoMHgwMDAwRkZGRlUpCi0jZGVmaW5lIFRDX0hfTUFKKGgpICgoaCkmVENfSF9NQUpfTUFTSykKLSNkZWZpbmUgVENfSF9NSU4oaCkgKChoKSZUQ19IX01JTl9NQVNLKQorI2RlZmluZSBUQ19IX01BSihoKSAoKGgpICYgVENfSF9NQUpfTUFTSykKKyNkZWZpbmUgVENfSF9NSU4oaCkgKChoKSAmIFRDX0hfTUlOX01BU0spCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBUQ19IX01BS0UobWFqLG1pbikgKCgobWFqKSZUQ19IX01BSl9NQVNLKXwoKG1pbikmVENfSF9NSU5fTUFTSykpCisjZGVmaW5lIFRDX0hfTUFLRShtYWosbWluKSAoKChtYWopICYgVENfSF9NQUpfTUFTSykgfCAoKG1pbikgJiBUQ19IX01JTl9NQVNLKSkKICNkZWZpbmUgVENfSF9VTlNQRUMgKDBVKQogI2RlZmluZSBUQ19IX1JPT1QgKDB4RkZGRkZGRkZVKQogI2RlZmluZSBUQ19IX0lOR1JFU1MgKDB4RkZGRkZGRjFVKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdGNfbGlua19sYXllciB7Ci0gVENfTElOS0xBWUVSX1VOQVdBUkUsCi0gVENfTElOS0xBWUVSX0VUSEVSTkVULAotIFRDX0xJTktMQVlFUl9BVE0sCisgIFRDX0xJTktMQVlFUl9VTkFXQVJFLAorICBUQ19MSU5LTEFZRVJfRVRIRVJORVQsCisgIFRDX0xJTktMQVlFUl9BVE0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVENfTElOS0xBWUVSX01BU0sgMHgwRgogc3RydWN0IHRjX3JhdGVzcGVjIHsKLSB1bnNpZ25lZCBjaGFyIGNlbGxfbG9nOworICB1bnNpZ25lZCBjaGFyIGNlbGxfbG9nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGxpbmtsYXllcjsKLSB1bnNpZ25lZCBzaG9ydCBvdmVyaGVhZDsKLSBzaG9ydCBjZWxsX2FsaWduOwotIHVuc2lnbmVkIHNob3J0IG1wdTsKKyAgX191OCBsaW5rbGF5ZXI7CisgIHVuc2lnbmVkIHNob3J0IG92ZXJoZWFkOworICBzaG9ydCBjZWxsX2FsaWduOworICB1bnNpZ25lZCBzaG9ydCBtcHU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJhdGU7CisgIF9fdTMyIHJhdGU7CiB9OwogI2RlZmluZSBUQ19SVEFCX1NJWkUgMTAyNAogc3RydWN0IHRjX3NpemVzcGVjIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBjZWxsX2xvZzsKLSB1bnNpZ25lZCBjaGFyIHNpemVfbG9nOwotIHNob3J0IGNlbGxfYWxpZ247Ci0gaW50IG92ZXJoZWFkOworICB1bnNpZ25lZCBjaGFyIGNlbGxfbG9nOworICB1bnNpZ25lZCBjaGFyIHNpemVfbG9nOworICBzaG9ydCBjZWxsX2FsaWduOworICBpbnQgb3ZlcmhlYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBsaW5rbGF5ZXI7Ci0gdW5zaWduZWQgaW50IG1wdTsKLSB1bnNpZ25lZCBpbnQgbXR1OwotIHVuc2lnbmVkIGludCB0c2l6ZTsKKyAgdW5zaWduZWQgaW50IGxpbmtsYXllcjsKKyAgdW5zaWduZWQgaW50IG1wdTsKKyAgdW5zaWduZWQgaW50IG10dTsKKyAgdW5zaWduZWQgaW50IHRzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBUQ0FfU1RBQl9VTlNQRUMsCi0gVENBX1NUQUJfQkFTRSwKKyAgVENBX1NUQUJfVU5TUEVDLAorICBUQ0FfU1RBQl9CQVNFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfU1RBQl9EQVRBLAotIF9fVENBX1NUQUJfTUFYCisgIFRDQV9TVEFCX0RBVEEsCisgIF9fVENBX1NUQUJfTUFYCiB9OwogI2RlZmluZSBUQ0FfU1RBQl9NQVggKF9fVENBX1NUQUJfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfZmlmb19xb3B0IHsKLSBfX3UzMiBsaW1pdDsKKyAgX191MzIgbGltaXQ7CiB9OwogI2RlZmluZSBUQ1FfUFJJT19CQU5EUyAxNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENRX01JTl9QUklPX0JBTkRTIDIKIHN0cnVjdCB0Y19wcmlvX3FvcHQgewotIGludCBiYW5kczsKLSBfX3U4IHByaW9tYXBbVENfUFJJT19NQVgrMV07CisgIGludCBiYW5kczsKKyAgX191OCBwcmlvbWFwW1RDX1BSSU9fTUFYICsgMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB0Y19tdWx0aXFfcW9wdCB7Ci0gX191MTYgYmFuZHM7Ci0gX191MTYgbWF4X2JhbmRzOworICBfX3UxNiBiYW5kczsKKyAgX191MTYgbWF4X2JhbmRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRDUV9QTFVHX0JVRkZFUiAwCkBAIC0xMTgsOTMgKzExOCw5MyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENRX1BMVUdfTElNSVQgMwogc3RydWN0IHRjX3BsdWdfcW9wdCB7Ci0gaW50IGFjdGlvbjsKLSBfX3UzMiBsaW1pdDsKKyAgaW50IGFjdGlvbjsKKyAgX191MzIgbGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB0Y190YmZfcW9wdCB7Ci0gc3RydWN0IHRjX3JhdGVzcGVjIHJhdGU7Ci0gc3RydWN0IHRjX3JhdGVzcGVjIHBlYWtyYXRlOworICBzdHJ1Y3QgdGNfcmF0ZXNwZWMgcmF0ZTsKKyAgc3RydWN0IHRjX3JhdGVzcGVjIHBlYWtyYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsaW1pdDsKLSBfX3UzMiBidWZmZXI7Ci0gX191MzIgbXR1OworICBfX3UzMiBsaW1pdDsKKyAgX191MzIgYnVmZmVyOworICBfX3UzMiBtdHU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFRDQV9UQkZfVU5TUEVDLAotIFRDQV9UQkZfUEFSTVMsCi0gVENBX1RCRl9SVEFCLAorICBUQ0FfVEJGX1VOU1BFQywKKyAgVENBX1RCRl9QQVJNUywKKyAgVENBX1RCRl9SVEFCLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfVEJGX1BUQUIsCi0gVENBX1RCRl9SQVRFNjQsCi0gVENBX1RCRl9QUkFURTY0LAotIFRDQV9UQkZfQlVSU1QsCisgIFRDQV9UQkZfUFRBQiwKKyAgVENBX1RCRl9SQVRFNjQsCisgIFRDQV9UQkZfUFJBVEU2NCwKKyAgVENBX1RCRl9CVVJTVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1RCRl9QQlVSU1QsCi0gX19UQ0FfVEJGX01BWCwKKyAgVENBX1RCRl9QQlVSU1QsCisgIF9fVENBX1RCRl9NQVgsCiB9OwogI2RlZmluZSBUQ0FfVEJGX01BWCAoX19UQ0FfVEJGX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX3NmcV9xb3B0IHsKLSB1bnNpZ25lZCBxdWFudHVtOwotIGludCBwZXJ0dXJiX3BlcmlvZDsKLSBfX3UzMiBsaW1pdDsKKyAgdW5zaWduZWQgcXVhbnR1bTsKKyAgaW50IHBlcnR1cmJfcGVyaW9kOworICBfX3UzMiBsaW1pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgZGl2aXNvcjsKLSB1bnNpZ25lZCBmbG93czsKKyAgdW5zaWduZWQgZGl2aXNvcjsKKyAgdW5zaWduZWQgZmxvd3M7CiB9Owogc3RydWN0IHRjX3NmcXJlZF9zdGF0cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHByb2JfZHJvcDsKLSBfX3UzMiBmb3JjZWRfZHJvcDsKLSBfX3UzMiBwcm9iX21hcms7Ci0gX191MzIgZm9yY2VkX21hcms7CisgIF9fdTMyIHByb2JfZHJvcDsKKyAgX191MzIgZm9yY2VkX2Ryb3A7CisgIF9fdTMyIHByb2JfbWFyazsKKyAgX191MzIgZm9yY2VkX21hcms7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHByb2JfbWFya19oZWFkOwotIF9fdTMyIGZvcmNlZF9tYXJrX2hlYWQ7CisgIF9fdTMyIHByb2JfbWFya19oZWFkOworICBfX3UzMiBmb3JjZWRfbWFya19oZWFkOwogfTsKIHN0cnVjdCB0Y19zZnFfcW9wdF92MSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB0Y19zZnFfcW9wdCB2MDsKLSB1bnNpZ25lZCBpbnQgZGVwdGg7Ci0gdW5zaWduZWQgaW50IGhlYWRkcm9wOwotIF9fdTMyIGxpbWl0OworICBzdHJ1Y3QgdGNfc2ZxX3FvcHQgdjA7CisgIHVuc2lnbmVkIGludCBkZXB0aDsKKyAgdW5zaWduZWQgaW50IGhlYWRkcm9wOworICBfX3UzMiBsaW1pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcXRoX21pbjsKLSBfX3UzMiBxdGhfbWF4OwotIHVuc2lnbmVkIGNoYXIgV2xvZzsKLSB1bnNpZ25lZCBjaGFyIFBsb2c7CisgIF9fdTMyIHF0aF9taW47CisgIF9fdTMyIHF0aF9tYXg7CisgIHVuc2lnbmVkIGNoYXIgV2xvZzsKKyAgdW5zaWduZWQgY2hhciBQbG9nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIFNjZWxsX2xvZzsKLSB1bnNpZ25lZCBjaGFyIGZsYWdzOwotIF9fdTMyIG1heF9QOwotIHN0cnVjdCB0Y19zZnFyZWRfc3RhdHMgc3RhdHM7CisgIHVuc2lnbmVkIGNoYXIgU2NlbGxfbG9nOworICB1bnNpZ25lZCBjaGFyIGZsYWdzOworICBfX3UzMiBtYXhfUDsKKyAgc3RydWN0IHRjX3NmcXJlZF9zdGF0cyBzdGF0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHRjX3NmcV94c3RhdHMgewotIF9fczMyIGFsbG90OworICBfX3MzMiBhbGxvdDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gVENBX1JFRF9VTlNQRUMsCi0gVENBX1JFRF9QQVJNUywKLSBUQ0FfUkVEX1NUQUIsCisgIFRDQV9SRURfVU5TUEVDLAorICBUQ0FfUkVEX1BBUk1TLAorICBUQ0FfUkVEX1NUQUIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9SRURfTUFYX1AsCi0gX19UQ0FfUkVEX01BWCwKKyAgVENBX1JFRF9NQVhfUCwKKyAgX19UQ0FfUkVEX01BWCwKIH07CiAjZGVmaW5lIFRDQV9SRURfTUFYIChfX1RDQV9SRURfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfcmVkX3FvcHQgewotIF9fdTMyIGxpbWl0OwotIF9fdTMyIHF0aF9taW47Ci0gX191MzIgcXRoX21heDsKKyAgX191MzIgbGltaXQ7CisgIF9fdTMyIHF0aF9taW47CisgIF9fdTMyIHF0aF9tYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgV2xvZzsKLSB1bnNpZ25lZCBjaGFyIFBsb2c7Ci0gdW5zaWduZWQgY2hhciBTY2VsbF9sb2c7Ci0gdW5zaWduZWQgY2hhciBmbGFnczsKKyAgdW5zaWduZWQgY2hhciBXbG9nOworICB1bnNpZ25lZCBjaGFyIFBsb2c7CisgIHVuc2lnbmVkIGNoYXIgU2NlbGxfbG9nOworICB1bnNpZ25lZCBjaGFyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENfUkVEX0VDTiAxCiAjZGVmaW5lIFRDX1JFRF9IQVJERFJPUCAyCkBAIC0yMTIsODQgKzIxMiw4NCBAQAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfcmVkX3hzdGF0cyB7Ci0gX191MzIgZWFybHk7Ci0gX191MzIgcGRyb3A7Ci0gX191MzIgb3RoZXI7CisgIF9fdTMyIGVhcmx5OworICBfX3UzMiBwZHJvcDsKKyAgX191MzIgb3RoZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1hcmtlZDsKKyAgX191MzIgbWFya2VkOwogfTsKICNkZWZpbmUgTUFYX0RQcyAxNgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9HUkVEX1VOU1BFQywKLSBUQ0FfR1JFRF9QQVJNUywKLSBUQ0FfR1JFRF9TVEFCLAotIFRDQV9HUkVEX0RQUywKKyAgVENBX0dSRURfVU5TUEVDLAorICBUQ0FfR1JFRF9QQVJNUywKKyAgVENBX0dSRURfU1RBQiwKKyAgVENBX0dSRURfRFBTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfR1JFRF9NQVhfUCwKLSBfX1RDQV9HUkVEX01BWCwKKyAgVENBX0dSRURfTUFYX1AsCisgIF9fVENBX0dSRURfTUFYLAogfTsKICNkZWZpbmUgVENBX0dSRURfTUFYIChfX1RDQV9HUkVEX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX2dyZWRfcW9wdCB7Ci0gX191MzIgbGltaXQ7Ci0gX191MzIgcXRoX21pbjsKLSBfX3UzMiBxdGhfbWF4OworICBfX3UzMiBsaW1pdDsKKyAgX191MzIgcXRoX21pbjsKKyAgX191MzIgcXRoX21heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgRFA7Ci0gX191MzIgYmFja2xvZzsKLSBfX3UzMiBxYXZlOwotIF9fdTMyIGZvcmNlZDsKKyAgX191MzIgRFA7CisgIF9fdTMyIGJhY2tsb2c7CisgIF9fdTMyIHFhdmU7CisgIF9fdTMyIGZvcmNlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZWFybHk7Ci0gX191MzIgb3RoZXI7Ci0gX191MzIgcGRyb3A7Ci0gX191OCBXbG9nOworICBfX3UzMiBlYXJseTsKKyAgX191MzIgb3RoZXI7CisgIF9fdTMyIHBkcm9wOworICBfX3U4IFdsb2c7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggUGxvZzsKLSBfX3U4IFNjZWxsX2xvZzsKLSBfX3U4IHByaW87Ci0gX191MzIgcGFja2V0czsKKyAgX191OCBQbG9nOworICBfX3U4IFNjZWxsX2xvZzsKKyAgX191OCBwcmlvOworICBfX3UzMiBwYWNrZXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBieXRlc2luOworICBfX3UzMiBieXRlc2luOwogfTsKIHN0cnVjdCB0Y19ncmVkX3NvcHQgewotIF9fdTMyIERQczsKKyAgX191MzIgRFBzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkZWZfRFA7Ci0gX191OCBncmlvOwotIF9fdTggZmxhZ3M7Ci0gX191MTYgcGFkMTsKKyAgX191MzIgZGVmX0RQOworICBfX3U4IGdyaW87CisgIF9fdTggZmxhZ3M7CisgIF9fdTE2IHBhZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFRDQV9DSE9LRV9VTlNQRUMsCi0gVENBX0NIT0tFX1BBUk1TLAorICBUQ0FfQ0hPS0VfVU5TUEVDLAorICBUQ0FfQ0hPS0VfUEFSTVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9DSE9LRV9TVEFCLAotIFRDQV9DSE9LRV9NQVhfUCwKLSBfX1RDQV9DSE9LRV9NQVgsCisgIFRDQV9DSE9LRV9TVEFCLAorICBUQ0FfQ0hPS0VfTUFYX1AsCisgIF9fVENBX0NIT0tFX01BWCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0FfQ0hPS0VfTUFYIChfX1RDQV9DSE9LRV9NQVggLSAxKQogc3RydWN0IHRjX2Nob2tlX3FvcHQgewotIF9fdTMyIGxpbWl0OwotIF9fdTMyIHF0aF9taW47CisgIF9fdTMyIGxpbWl0OworICBfX3UzMiBxdGhfbWluOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBxdGhfbWF4OwotIHVuc2lnbmVkIGNoYXIgV2xvZzsKLSB1bnNpZ25lZCBjaGFyIFBsb2c7Ci0gdW5zaWduZWQgY2hhciBTY2VsbF9sb2c7CisgIF9fdTMyIHF0aF9tYXg7CisgIHVuc2lnbmVkIGNoYXIgV2xvZzsKKyAgdW5zaWduZWQgY2hhciBQbG9nOworICB1bnNpZ25lZCBjaGFyIFNjZWxsX2xvZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBmbGFnczsKKyAgdW5zaWduZWQgY2hhciBmbGFnczsKIH07CiBzdHJ1Y3QgdGNfY2hva2VfeHN0YXRzIHsKLSBfX3UzMiBlYXJseTsKKyAgX191MzIgZWFybHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBkcm9wOwotIF9fdTMyIG90aGVyOwotIF9fdTMyIG1hcmtlZDsKLSBfX3UzMiBtYXRjaGVkOworICBfX3UzMiBwZHJvcDsKKyAgX191MzIgb3RoZXI7CisgIF9fdTMyIG1hcmtlZDsKKyAgX191MzIgbWF0Y2hlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBUQ19IVEJfTlVNUFJJTyA4CkBAIC0yOTcsNzMgKzI5Nyw3MyBAQAogI2RlZmluZSBUQ19IVEJfUFJPVE9WRVIgMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y19odGJfb3B0IHsKLSBzdHJ1Y3QgdGNfcmF0ZXNwZWMgcmF0ZTsKLSBzdHJ1Y3QgdGNfcmF0ZXNwZWMgY2VpbDsKLSBfX3UzMiBidWZmZXI7CisgIHN0cnVjdCB0Y19yYXRlc3BlYyByYXRlOworICBzdHJ1Y3QgdGNfcmF0ZXNwZWMgY2VpbDsKKyAgX191MzIgYnVmZmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjYnVmZmVyOwotIF9fdTMyIHF1YW50dW07Ci0gX191MzIgbGV2ZWw7Ci0gX191MzIgcHJpbzsKKyAgX191MzIgY2J1ZmZlcjsKKyAgX191MzIgcXVhbnR1bTsKKyAgX191MzIgbGV2ZWw7CisgIF9fdTMyIHByaW87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB0Y19odGJfZ2xvYiB7Ci0gX191MzIgdmVyc2lvbjsKLSBfX3UzMiByYXRlMnF1YW50dW07CisgIF9fdTMyIHZlcnNpb247CisgIF9fdTMyIHJhdGUycXVhbnR1bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGVmY2xzOwotIF9fdTMyIGRlYnVnOwotIF9fdTMyIGRpcmVjdF9wa3RzOworICBfX3UzMiBkZWZjbHM7CisgIF9fdTMyIGRlYnVnOworICBfX3UzMiBkaXJlY3RfcGt0czsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gVENBX0hUQl9VTlNQRUMsCi0gVENBX0hUQl9QQVJNUywKLSBUQ0FfSFRCX0lOSVQsCisgIFRDQV9IVEJfVU5TUEVDLAorICBUQ0FfSFRCX1BBUk1TLAorICBUQ0FfSFRCX0lOSVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9IVEJfQ1RBQiwKLSBUQ0FfSFRCX1JUQUIsCi0gVENBX0hUQl9ESVJFQ1RfUUxFTiwKLSBUQ0FfSFRCX1JBVEU2NCwKKyAgVENBX0hUQl9DVEFCLAorICBUQ0FfSFRCX1JUQUIsCisgIFRDQV9IVEJfRElSRUNUX1FMRU4sCisgIFRDQV9IVEJfUkFURTY0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfSFRCX0NFSUw2NCwKLSBfX1RDQV9IVEJfTUFYLAorICBUQ0FfSFRCX0NFSUw2NCwKKyAgX19UQ0FfSFRCX01BWCwKIH07CiAjZGVmaW5lIFRDQV9IVEJfTUFYIChfX1RDQV9IVEJfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfaHRiX3hzdGF0cyB7Ci0gX191MzIgbGVuZHM7Ci0gX191MzIgYm9ycm93czsKLSBfX3UzMiBnaWFudHM7CisgIF9fdTMyIGxlbmRzOworICBfX3UzMiBib3Jyb3dzOworICBfX3UzMiBnaWFudHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRva2VuczsKLSBfX3UzMiBjdG9rZW5zOworICBfX3UzMiB0b2tlbnM7CisgIF9fdTMyIGN0b2tlbnM7CiB9Owogc3RydWN0IHRjX2hmc2NfcW9wdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGRlZmNsczsKKyAgX191MTYgZGVmY2xzOwogfTsKIHN0cnVjdCB0Y19zZXJ2aWNlX2N1cnZlIHsKLSBfX3UzMiBtMTsKKyAgX191MzIgbTE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGQ7Ci0gX191MzIgbTI7CisgIF9fdTMyIGQ7CisgIF9fdTMyIG0yOwogfTsKIHN0cnVjdCB0Y19oZnNjX3N0YXRzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgd29yazsKLSBfX3U2NCBydHdvcms7Ci0gX191MzIgcGVyaW9kOwotIF9fdTMyIGxldmVsOworICBfX3U2NCB3b3JrOworICBfX3U2NCBydHdvcms7CisgIF9fdTMyIHBlcmlvZDsKKyAgX191MzIgbGV2ZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFRDQV9IRlNDX1VOU1BFQywKLSBUQ0FfSEZTQ19SU0MsCisgIFRDQV9IRlNDX1VOU1BFQywKKyAgVENBX0hGU0NfUlNDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfSEZTQ19GU0MsCi0gVENBX0hGU0NfVVNDLAotIF9fVENBX0hGU0NfTUFYLAorICBUQ0FfSEZTQ19GU0MsCisgIFRDQV9IRlNDX1VTQywKKyAgX19UQ0FfSEZTQ19NQVgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX0hGU0NfTUFYIChfX1RDQV9IRlNDX01BWCAtIDEpCkBAIC0zNzIsMTMgKzM3MiwxMyBAQAogI2RlZmluZSBUQ19DQlFfREVGX0VXTUEgNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y19jYnFfbHNzb3B0IHsKLSB1bnNpZ25lZCBjaGFyIGNoYW5nZTsKLSB1bnNpZ25lZCBjaGFyIGZsYWdzOworICB1bnNpZ25lZCBjaGFyIGNoYW5nZTsKKyAgdW5zaWduZWQgY2hhciBmbGFnczsKICNkZWZpbmUgVENGX0NCUV9MU1NfQk9VTkRFRCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0ZfQ0JRX0xTU19JU09MQVRFRCAyCi0gdW5zaWduZWQgY2hhciBld21hX2xvZzsKLSB1bnNpZ25lZCBjaGFyIGxldmVsOworICB1bnNpZ25lZCBjaGFyIGV3bWFfbG9nOworICB1bnNpZ25lZCBjaGFyIGxldmVsOwogI2RlZmluZSBUQ0ZfQ0JRX0xTU19GTEFHUyAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0ZfQ0JRX0xTU19FV01BIDIKQEAgLTM4NywyNCArMzg3LDI0IEBACiAjZGVmaW5lIFRDRl9DQlFfTFNTX09GRlRJTUUgMHgxMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENGX0NCUV9MU1NfQVZQS1QgMHgyMAotIF9fdTMyIG1heGlkbGU7Ci0gX191MzIgbWluaWRsZTsKLSBfX3UzMiBvZmZ0aW1lOworICBfX3UzMiBtYXhpZGxlOworICBfX3UzMiBtaW5pZGxlOworICBfX3UzMiBvZmZ0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhdnBrdDsKKyAgX191MzIgYXZwa3Q7CiB9Owogc3RydWN0IHRjX2NicV93cnJvcHQgewotIHVuc2lnbmVkIGNoYXIgZmxhZ3M7CisgIHVuc2lnbmVkIGNoYXIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcHJpb3JpdHk7Ci0gdW5zaWduZWQgY2hhciBjcHJpb3JpdHk7Ci0gdW5zaWduZWQgY2hhciBfX3Jlc2VydmVkOwotIF9fdTMyIGFsbG90OworICB1bnNpZ25lZCBjaGFyIHByaW9yaXR5OworICB1bnNpZ25lZCBjaGFyIGNwcmlvcml0eTsKKyAgdW5zaWduZWQgY2hhciBfX3Jlc2VydmVkOworICBfX3UzMiBhbGxvdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgd2VpZ2h0OworICBfX3UzMiB3ZWlnaHQ7CiB9Owogc3RydWN0IHRjX2NicV9vdmwgewotIHVuc2lnbmVkIGNoYXIgc3RyYXRlZ3k7CisgIHVuc2lnbmVkIGNoYXIgc3RyYXRlZ3k7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ19DQlFfT1ZMX0NMQVNTSUMgMAogI2RlZmluZSBUQ19DQlFfT1ZMX0RFTEFZIDEKQEAgLTQxMiwzNzcgKzQxMiwzNzcgQEAKICNkZWZpbmUgVENfQ0JRX09WTF9EUk9QIDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDX0NCUV9PVkxfUkNMQVNTSUMgNAotIHVuc2lnbmVkIGNoYXIgcHJpb3JpdHkyOwotIF9fdTE2IHBhZDsKLSBfX3UzMiBwZW5hbHR5OworICB1bnNpZ25lZCBjaGFyIHByaW9yaXR5MjsKKyAgX191MTYgcGFkOworICBfX3UzMiBwZW5hbHR5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdGNfY2JxX3BvbGljZSB7Ci0gdW5zaWduZWQgY2hhciBwb2xpY2U7Ci0gdW5zaWduZWQgY2hhciBfX3JlczE7CisgIHVuc2lnbmVkIGNoYXIgcG9saWNlOworICB1bnNpZ25lZCBjaGFyIF9fcmVzMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgX19yZXMyOworICB1bnNpZ25lZCBzaG9ydCBfX3JlczI7CiB9Owogc3RydWN0IHRjX2NicV9mb3B0IHsKLSBfX3UzMiBzcGxpdDsKKyAgX191MzIgc3BsaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRlZm1hcDsKLSBfX3UzMiBkZWZjaGFuZ2U7CisgIF9fdTMyIGRlZm1hcDsKKyAgX191MzIgZGVmY2hhbmdlOwogfTsKIHN0cnVjdCB0Y19jYnFfeHN0YXRzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYm9ycm93czsKLSBfX3UzMiBvdmVyYWN0aW9uczsKLSBfX3MzMiBhdmdpZGxlOwotIF9fczMyIHVuZGVydGltZTsKKyAgX191MzIgYm9ycm93czsKKyAgX191MzIgb3ZlcmFjdGlvbnM7CisgIF9fczMyIGF2Z2lkbGU7CisgIF9fczMyIHVuZGVydGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gVENBX0NCUV9VTlNQRUMsCi0gVENBX0NCUV9MU1NPUFQsCisgIFRDQV9DQlFfVU5TUEVDLAorICBUQ0FfQ0JRX0xTU09QVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0NCUV9XUlJPUFQsCi0gVENBX0NCUV9GT1BULAotIFRDQV9DQlFfT1ZMX1NUUkFURUdZLAotIFRDQV9DQlFfUkFURSwKKyAgVENBX0NCUV9XUlJPUFQsCisgIFRDQV9DQlFfRk9QVCwKKyAgVENBX0NCUV9PVkxfU1RSQVRFR1ksCisgIFRDQV9DQlFfUkFURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0NCUV9SVEFCLAotIFRDQV9DQlFfUE9MSUNFLAotIF9fVENBX0NCUV9NQVgsCisgIFRDQV9DQlFfUlRBQiwKKyAgVENBX0NCUV9QT0xJQ0UsCisgIF9fVENBX0NCUV9NQVgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX0NCUV9NQVggKF9fVENBX0NCUV9NQVggLSAxKQogZW51bSB7Ci0gVENBX0RTTUFSS19VTlNQRUMsCi0gVENBX0RTTUFSS19JTkRJQ0VTLAorICBUQ0FfRFNNQVJLX1VOU1BFQywKKyAgVENBX0RTTUFSS19JTkRJQ0VTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfRFNNQVJLX0RFRkFVTFRfSU5ERVgsCi0gVENBX0RTTUFSS19TRVRfVENfSU5ERVgsCi0gVENBX0RTTUFSS19NQVNLLAotIFRDQV9EU01BUktfVkFMVUUsCisgIFRDQV9EU01BUktfREVGQVVMVF9JTkRFWCwKKyAgVENBX0RTTUFSS19TRVRfVENfSU5ERVgsCisgIFRDQV9EU01BUktfTUFTSywKKyAgVENBX0RTTUFSS19WQUxVRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19UQ0FfRFNNQVJLX01BWCwKKyAgX19UQ0FfRFNNQVJLX01BWCwKIH07CiAjZGVmaW5lIFRDQV9EU01BUktfTUFYIChfX1RDQV9EU01BUktfTUFYIC0gMSkKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfQVRNX1VOU1BFQywKLSBUQ0FfQVRNX0ZELAotIFRDQV9BVE1fUFRSLAotIFRDQV9BVE1fSERSLAorICBUQ0FfQVRNX1VOU1BFQywKKyAgVENBX0FUTV9GRCwKKyAgVENBX0FUTV9QVFIsCisgIFRDQV9BVE1fSERSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfQVRNX0VYQ0VTUywKLSBUQ0FfQVRNX0FERFIsCi0gVENBX0FUTV9TVEFURSwKLSBfX1RDQV9BVE1fTUFYLAorICBUQ0FfQVRNX0VYQ0VTUywKKyAgVENBX0FUTV9BRERSLAorICBUQ0FfQVRNX1NUQVRFLAorICBfX1RDQV9BVE1fTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRDQV9BVE1fTUFYIChfX1RDQV9BVE1fTUFYIC0gMSkKIGVudW0gewotIFRDQV9ORVRFTV9VTlNQRUMsCisgIFRDQV9ORVRFTV9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9ORVRFTV9DT1JSLAotIFRDQV9ORVRFTV9ERUxBWV9ESVNULAotIFRDQV9ORVRFTV9SRU9SREVSLAotIFRDQV9ORVRFTV9DT1JSVVBULAorICBUQ0FfTkVURU1fQ09SUiwKKyAgVENBX05FVEVNX0RFTEFZX0RJU1QsCisgIFRDQV9ORVRFTV9SRU9SREVSLAorICBUQ0FfTkVURU1fQ09SUlVQVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX05FVEVNX0xPU1MsCi0gVENBX05FVEVNX1JBVEUsCi0gVENBX05FVEVNX0VDTiwKLSBUQ0FfTkVURU1fUkFURTY0LAorICBUQ0FfTkVURU1fTE9TUywKKyAgVENBX05FVEVNX1JBVEUsCisgIFRDQV9ORVRFTV9FQ04sCisgIFRDQV9ORVRFTV9SQVRFNjQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVENBX05FVEVNX01BWCwKKyAgX19UQ0FfTkVURU1fTUFYLAogfTsKICNkZWZpbmUgVENBX05FVEVNX01BWCAoX19UQ0FfTkVURU1fTUFYIC0gMSkKIHN0cnVjdCB0Y19uZXRlbV9xb3B0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGF0ZW5jeTsKLSBfX3UzMiBsaW1pdDsKLSBfX3UzMiBsb3NzOwotIF9fdTMyIGdhcDsKKyAgX191MzIgbGF0ZW5jeTsKKyAgX191MzIgbGltaXQ7CisgIF9fdTMyIGxvc3M7CisgIF9fdTMyIGdhcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZHVwbGljYXRlOwotIF9fdTMyIGppdHRlcjsKKyAgX191MzIgZHVwbGljYXRlOworICBfX3UzMiBqaXR0ZXI7CiB9Owogc3RydWN0IHRjX25ldGVtX2NvcnIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkZWxheV9jb3JyOwotIF9fdTMyIGxvc3NfY29ycjsKLSBfX3UzMiBkdXBfY29ycjsKKyAgX191MzIgZGVsYXlfY29ycjsKKyAgX191MzIgbG9zc19jb3JyOworICBfX3UzMiBkdXBfY29ycjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX25ldGVtX3Jlb3JkZXIgewotIF9fdTMyIHByb2JhYmlsaXR5OwotIF9fdTMyIGNvcnJlbGF0aW9uOworICBfX3UzMiBwcm9iYWJpbGl0eTsKKyAgX191MzIgY29ycmVsYXRpb247CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y19uZXRlbV9jb3JydXB0IHsKLSBfX3UzMiBwcm9iYWJpbGl0eTsKLSBfX3UzMiBjb3JyZWxhdGlvbjsKKyAgX191MzIgcHJvYmFiaWxpdHk7CisgIF9fdTMyIGNvcnJlbGF0aW9uOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfbmV0ZW1fcmF0ZSB7Ci0gX191MzIgcmF0ZTsKLSBfX3MzMiBwYWNrZXRfb3ZlcmhlYWQ7Ci0gX191MzIgY2VsbF9zaXplOworICBfX3UzMiByYXRlOworICBfX3MzMiBwYWNrZXRfb3ZlcmhlYWQ7CisgIF9fdTMyIGNlbGxfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgY2VsbF9vdmVyaGVhZDsKKyAgX19zMzIgY2VsbF9vdmVyaGVhZDsKIH07CiBlbnVtIHsKLSBORVRFTV9MT1NTX1VOU1BFQywKKyAgTkVURU1fTE9TU19VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVEVNX0xPU1NfR0ksCi0gTkVURU1fTE9TU19HRSwKLSBfX05FVEVNX0xPU1NfTUFYCisgIE5FVEVNX0xPU1NfR0ksCisgIE5FVEVNX0xPU1NfR0UsCisgIF9fTkVURU1fTE9TU19NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBORVRFTV9MT1NTX01BWCAoX19ORVRFTV9MT1NTX01BWCAtIDEpCiBzdHJ1Y3QgdGNfbmV0ZW1fZ2ltb2RlbCB7Ci0gX191MzIgcDEzOwotIF9fdTMyIHAzMTsKKyAgX191MzIgcDEzOworICBfX3UzMiBwMzE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHAzMjsKLSBfX3UzMiBwMTQ7Ci0gX191MzIgcDIzOworICBfX3UzMiBwMzI7CisgIF9fdTMyIHAxNDsKKyAgX191MzIgcDIzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfbmV0ZW1fZ2Vtb2RlbCB7Ci0gX191MzIgcDsKLSBfX3UzMiByOwotIF9fdTMyIGg7CisgIF9fdTMyIHA7CisgIF9fdTMyIHI7CisgIF9fdTMyIGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGsxOworICBfX3UzMiBrMTsKIH07CiAjZGVmaW5lIE5FVEVNX0RJU1RfU0NBTEUgODE5MgogI2RlZmluZSBORVRFTV9ESVNUX01BWCAxNjM4NAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFRDQV9EUlJfVU5TUEVDLAotIFRDQV9EUlJfUVVBTlRVTSwKLSBfX1RDQV9EUlJfTUFYCisgIFRDQV9EUlJfVU5TUEVDLAorICBUQ0FfRFJSX1FVQU5UVU0sCisgIF9fVENBX0RSUl9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBUQ0FfRFJSX01BWCAoX19UQ0FfRFJSX01BWCAtIDEpCiBzdHJ1Y3QgdGNfZHJyX3N0YXRzIHsKLSBfX3UzMiBkZWZpY2l0OworICBfX3UzMiBkZWZpY2l0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRDX1FPUFRfQklUTUFTSyAxNQogI2RlZmluZSBUQ19RT1BUX01BWF9RVUVVRSAxNgogc3RydWN0IHRjX21xcHJpb19xb3B0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBudW1fdGM7Ci0gX191OCBwcmlvX3RjX21hcFtUQ19RT1BUX0JJVE1BU0sgKyAxXTsKLSBfX3U4IGh3OwotIF9fdTE2IGNvdW50W1RDX1FPUFRfTUFYX1FVRVVFXTsKKyAgX191OCBudW1fdGM7CisgIF9fdTggcHJpb190Y19tYXBbVENfUU9QVF9CSVRNQVNLICsgMV07CisgIF9fdTggaHc7CisgIF9fdTE2IGNvdW50W1RDX1FPUFRfTUFYX1FVRVVFXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgb2Zmc2V0W1RDX1FPUFRfTUFYX1FVRVVFXTsKKyAgX191MTYgb2Zmc2V0W1RDX1FPUFRfTUFYX1FVRVVFXTsKIH07CiBlbnVtIHsKLSBUQ0FfU0ZCX1VOU1BFQywKKyAgVENBX1NGQl9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9TRkJfUEFSTVMsCi0gX19UQ0FfU0ZCX01BWCwKKyAgVENBX1NGQl9QQVJNUywKKyAgX19UQ0FfU0ZCX01BWCwKIH07CiAjZGVmaW5lIFRDQV9TRkJfTUFYIChfX1RDQV9TRkJfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfc2ZiX3FvcHQgewotIF9fdTMyIHJlaGFzaF9pbnRlcnZhbDsKLSBfX3UzMiB3YXJtdXBfdGltZTsKLSBfX3UzMiBtYXg7CisgIF9fdTMyIHJlaGFzaF9pbnRlcnZhbDsKKyAgX191MzIgd2FybXVwX3RpbWU7CisgIF9fdTMyIG1heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYmluX3NpemU7Ci0gX191MzIgaW5jcmVtZW50OwotIF9fdTMyIGRlY3JlbWVudDsKLSBfX3UzMiBsaW1pdDsKKyAgX191MzIgYmluX3NpemU7CisgIF9fdTMyIGluY3JlbWVudDsKKyAgX191MzIgZGVjcmVtZW50OworICBfX3UzMiBsaW1pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGVuYWx0eV9yYXRlOwotIF9fdTMyIHBlbmFsdHlfYnVyc3Q7CisgIF9fdTMyIHBlbmFsdHlfcmF0ZTsKKyAgX191MzIgcGVuYWx0eV9idXJzdDsKIH07CiBzdHJ1Y3QgdGNfc2ZiX3hzdGF0cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGVhcmx5ZHJvcDsKLSBfX3UzMiBwZW5hbHR5ZHJvcDsKLSBfX3UzMiBidWNrZXRkcm9wOwotIF9fdTMyIHF1ZXVlZHJvcDsKKyAgX191MzIgZWFybHlkcm9wOworICBfX3UzMiBwZW5hbHR5ZHJvcDsKKyAgX191MzIgYnVja2V0ZHJvcDsKKyAgX191MzIgcXVldWVkcm9wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjaGlsZGRyb3A7Ci0gX191MzIgbWFya2VkOwotIF9fdTMyIG1heHFsZW47Ci0gX191MzIgbWF4cHJvYjsKKyAgX191MzIgY2hpbGRkcm9wOworICBfX3UzMiBtYXJrZWQ7CisgIF9fdTMyIG1heHFsZW47CisgIF9fdTMyIG1heHByb2I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGF2Z3Byb2I7CisgIF9fdTMyIGF2Z3Byb2I7CiB9OwogI2RlZmluZSBTRkJfTUFYX1BST0IgMHhGRkZGCiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1FGUV9VTlNQRUMsCi0gVENBX1FGUV9XRUlHSFQsCi0gVENBX1FGUV9MTUFYLAotIF9fVENBX1FGUV9NQVgKKyAgVENBX1FGUV9VTlNQRUMsCisgIFRDQV9RRlFfV0VJR0hULAorICBUQ0FfUUZRX0xNQVgsCisgIF9fVENBX1FGUV9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBUQ0FfUUZRX01BWCAoX19UQ0FfUUZRX01BWCAtIDEpCiBzdHJ1Y3QgdGNfcWZxX3N0YXRzIHsKLSBfX3UzMiB3ZWlnaHQ7CisgIF9fdTMyIHdlaWdodDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbG1heDsKKyAgX191MzIgbG1heDsKIH07CiBlbnVtIHsKLSBUQ0FfQ09ERUxfVU5TUEVDLAorICBUQ0FfQ09ERUxfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfQ09ERUxfVEFSR0VULAotIFRDQV9DT0RFTF9MSU1JVCwKLSBUQ0FfQ09ERUxfSU5URVJWQUwsCi0gVENBX0NPREVMX0VDTiwKKyAgVENBX0NPREVMX1RBUkdFVCwKKyAgVENBX0NPREVMX0xJTUlULAorICBUQ0FfQ09ERUxfSU5URVJWQUwsCisgIFRDQV9DT0RFTF9FQ04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVENBX0NPREVMX01BWAorICBfX1RDQV9DT0RFTF9NQVgKIH07CiAjZGVmaW5lIFRDQV9DT0RFTF9NQVggKF9fVENBX0NPREVMX01BWCAtIDEpCiBzdHJ1Y3QgdGNfY29kZWxfeHN0YXRzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4cGFja2V0OwotIF9fdTMyIGNvdW50OwotIF9fdTMyIGxhc3Rjb3VudDsKLSBfX3UzMiBsZGVsYXk7CisgIF9fdTMyIG1heHBhY2tldDsKKyAgX191MzIgY291bnQ7CisgIF9fdTMyIGxhc3Rjb3VudDsKKyAgX191MzIgbGRlbGF5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBkcm9wX25leHQ7Ci0gX191MzIgZHJvcF9vdmVybGltaXQ7Ci0gX191MzIgZWNuX21hcms7Ci0gX191MzIgZHJvcHBpbmc7CisgIF9fczMyIGRyb3BfbmV4dDsKKyAgX191MzIgZHJvcF9vdmVybGltaXQ7CisgIF9fdTMyIGVjbl9tYXJrOworICBfX3UzMiBkcm9wcGluZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gVENBX0ZRX0NPREVMX1VOU1BFQywKLSBUQ0FfRlFfQ09ERUxfVEFSR0VULAorICBUQ0FfRlFfQ09ERUxfVU5TUEVDLAorICBUQ0FfRlFfQ09ERUxfVEFSR0VULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfRlFfQ09ERUxfTElNSVQsCi0gVENBX0ZRX0NPREVMX0lOVEVSVkFMLAotIFRDQV9GUV9DT0RFTF9FQ04sCi0gVENBX0ZRX0NPREVMX0ZMT1dTLAorICBUQ0FfRlFfQ09ERUxfTElNSVQsCisgIFRDQV9GUV9DT0RFTF9JTlRFUlZBTCwKKyAgVENBX0ZRX0NPREVMX0VDTiwKKyAgVENBX0ZRX0NPREVMX0ZMT1dTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfRlFfQ09ERUxfUVVBTlRVTSwKLSBfX1RDQV9GUV9DT0RFTF9NQVgKKyAgVENBX0ZRX0NPREVMX1FVQU5UVU0sCisgIF9fVENBX0ZRX0NPREVMX01BWAogfTsKICNkZWZpbmUgVENBX0ZRX0NPREVMX01BWCAoX19UQ0FfRlFfQ09ERUxfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBUQ0FfRlFfQ09ERUxfWFNUQVRTX1FESVNDLAotIFRDQV9GUV9DT0RFTF9YU1RBVFNfQ0xBU1MsCisgIFRDQV9GUV9DT0RFTF9YU1RBVFNfUURJU0MsCisgIFRDQV9GUV9DT0RFTF9YU1RBVFNfQ0xBU1MsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y19mcV9jb2RlbF9xZF9zdGF0cyB7Ci0gX191MzIgbWF4cGFja2V0OwotIF9fdTMyIGRyb3Bfb3ZlcmxpbWl0OwotIF9fdTMyIGVjbl9tYXJrOworICBfX3UzMiBtYXhwYWNrZXQ7CisgIF9fdTMyIGRyb3Bfb3ZlcmxpbWl0OworICBfX3UzMiBlY25fbWFyazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbmV3X2Zsb3dfY291bnQ7Ci0gX191MzIgbmV3X2Zsb3dzX2xlbjsKLSBfX3UzMiBvbGRfZmxvd3NfbGVuOworICBfX3UzMiBuZXdfZmxvd19jb3VudDsKKyAgX191MzIgbmV3X2Zsb3dzX2xlbjsKKyAgX191MzIgb2xkX2Zsb3dzX2xlbjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX2ZxX2NvZGVsX2NsX3N0YXRzIHsKLSBfX3MzMiBkZWZpY2l0OwotIF9fdTMyIGxkZWxheTsKLSBfX3UzMiBjb3VudDsKKyAgX19zMzIgZGVmaWNpdDsKKyAgX191MzIgbGRlbGF5OworICBfX3UzMiBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGFzdGNvdW50OwotIF9fdTMyIGRyb3BwaW5nOwotIF9fczMyIGRyb3BfbmV4dDsKKyAgX191MzIgbGFzdGNvdW50OworICBfX3UzMiBkcm9wcGluZzsKKyAgX19zMzIgZHJvcF9uZXh0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNfZnFfY29kZWxfeHN0YXRzIHsKLSBfX3UzMiB0eXBlOwotIHVuaW9uIHsKLSBzdHJ1Y3QgdGNfZnFfY29kZWxfcWRfc3RhdHMgcWRpc2Nfc3RhdHM7CisgIF9fdTMyIHR5cGU7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgdGNfZnFfY29kZWxfcWRfc3RhdHMgcWRpc2Nfc3RhdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB0Y19mcV9jb2RlbF9jbF9zdGF0cyBjbGFzc19zdGF0czsKLSB9OworICAgIHN0cnVjdCB0Y19mcV9jb2RlbF9jbF9zdGF0cyBjbGFzc19zdGF0czsKKyAgfTsKIH07CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0ZRX1VOU1BFQywKLSBUQ0FfRlFfUExJTUlULAotIFRDQV9GUV9GTE9XX1BMSU1JVCwKLSBUQ0FfRlFfUVVBTlRVTSwKKyAgVENBX0ZRX1VOU1BFQywKKyAgVENBX0ZRX1BMSU1JVCwKKyAgVENBX0ZRX0ZMT1dfUExJTUlULAorICBUQ0FfRlFfUVVBTlRVTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0ZRX0lOSVRJQUxfUVVBTlRVTSwKLSBUQ0FfRlFfUkFURV9FTkFCTEUsCi0gVENBX0ZRX0ZMT1dfREVGQVVMVF9SQVRFLAotIFRDQV9GUV9GTE9XX01BWF9SQVRFLAorICBUQ0FfRlFfSU5JVElBTF9RVUFOVFVNLAorICBUQ0FfRlFfUkFURV9FTkFCTEUsCisgIFRDQV9GUV9GTE9XX0RFRkFVTFRfUkFURSwKKyAgVENBX0ZRX0ZMT1dfTUFYX1JBVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9GUV9CVUNLRVRTX0xPRywKLSBUQ0FfRlFfRkxPV19SRUZJTExfREVMQVksCi0gX19UQ0FfRlFfTUFYCisgIFRDQV9GUV9CVUNLRVRTX0xPRywKKyAgVENBX0ZRX0ZMT1dfUkVGSUxMX0RFTEFZLAorICBfX1RDQV9GUV9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0FfRlFfTUFYIChfX1RDQV9GUV9NQVggLSAxKQogc3RydWN0IHRjX2ZxX3FkX3N0YXRzIHsKLSBfX3U2NCBnY19mbG93czsKLSBfX3U2NCBoaWdocHJpb19wYWNrZXRzOworICBfX3U2NCBnY19mbG93czsKKyAgX191NjQgaGlnaHByaW9fcGFja2V0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdGNwX3JldHJhbnM7Ci0gX191NjQgdGhyb3R0bGVkOwotIF9fdTY0IGZsb3dzX3BsaW1pdDsKLSBfX3U2NCBwa3RzX3Rvb19sb25nOworICBfX3U2NCB0Y3BfcmV0cmFuczsKKyAgX191NjQgdGhyb3R0bGVkOworICBfX3U2NCBmbG93c19wbGltaXQ7CisgIF9fdTY0IHBrdHNfdG9vX2xvbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGFsbG9jYXRpb25fZXJyb3JzOwotIF9fczY0IHRpbWVfbmV4dF9kZWxheWVkX2Zsb3c7Ci0gX191MzIgZmxvd3M7Ci0gX191MzIgaW5hY3RpdmVfZmxvd3M7CisgIF9fdTY0IGFsbG9jYXRpb25fZXJyb3JzOworICBfX3M2NCB0aW1lX25leHRfZGVsYXllZF9mbG93OworICBfX3UzMiBmbG93czsKKyAgX191MzIgaW5hY3RpdmVfZmxvd3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRocm90dGxlZF9mbG93czsKLSBfX3UzMiBwYWQ7CisgIF9fdTMyIHRocm90dGxlZF9mbG93czsKKyAgX191MzIgcGFkOwogfTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfSEhGX1VOU1BFQywKLSBUQ0FfSEhGX0JBQ0tMT0dfTElNSVQsCi0gVENBX0hIRl9RVUFOVFVNLAotIFRDQV9ISEZfSEhfRkxPV1NfTElNSVQsCisgIFRDQV9ISEZfVU5TUEVDLAorICBUQ0FfSEhGX0JBQ0tMT0dfTElNSVQsCisgIFRDQV9ISEZfUVVBTlRVTSwKKyAgVENBX0hIRl9ISF9GTE9XU19MSU1JVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0hIRl9SRVNFVF9USU1FT1VULAotIFRDQV9ISEZfQURNSVRfQllURVMsCi0gVENBX0hIRl9FVklDVF9USU1FT1VULAotIFRDQV9ISEZfTk9OX0hIX1dFSUdIVCwKKyAgVENBX0hIRl9SRVNFVF9USU1FT1VULAorICBUQ0FfSEhGX0FETUlUX0JZVEVTLAorICBUQ0FfSEhGX0VWSUNUX1RJTUVPVVQsCisgIFRDQV9ISEZfTk9OX0hIX1dFSUdIVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19UQ0FfSEhGX01BWAorICBfX1RDQV9ISEZfTUFYCiB9OwogI2RlZmluZSBUQ0FfSEhGX01BWCAoX19UQ0FfSEhGX01BWCAtIDEpCiBzdHJ1Y3QgdGNfaGhmX3hzdGF0cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRyb3Bfb3ZlcmxpbWl0OwotIF9fdTMyIGhoX292ZXJsaW1pdDsKLSBfX3UzMiBoaF90b3RfY291bnQ7Ci0gX191MzIgaGhfY3VyX2NvdW50OworICBfX3UzMiBkcm9wX292ZXJsaW1pdDsKKyAgX191MzIgaGhfb3ZlcmxpbWl0OworICBfX3UzMiBoaF90b3RfY291bnQ7CisgIF9fdTMyIGhoX2N1cl9jb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gVENBX1BJRV9VTlNQRUMsCi0gVENBX1BJRV9UQVJHRVQsCisgIFRDQV9QSUVfVU5TUEVDLAorICBUQ0FfUElFX1RBUkdFVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1BJRV9MSU1JVCwKLSBUQ0FfUElFX1RVUERBVEUsCi0gVENBX1BJRV9BTFBIQSwKLSBUQ0FfUElFX0JFVEEsCisgIFRDQV9QSUVfTElNSVQsCisgIFRDQV9QSUVfVFVQREFURSwKKyAgVENBX1BJRV9BTFBIQSwKKyAgVENBX1BJRV9CRVRBLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfUElFX0VDTiwKLSBUQ0FfUElFX0JZVEVNT0RFLAotIF9fVENBX1BJRV9NQVgKKyAgVENBX1BJRV9FQ04sCisgIFRDQV9QSUVfQllURU1PREUsCisgIF9fVENBX1BJRV9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0FfUElFX01BWCAoX19UQ0FfUElFX01BWCAtIDEpCiBzdHJ1Y3QgdGNfcGllX3hzdGF0cyB7Ci0gX191MzIgcHJvYjsKLSBfX3UzMiBkZWxheTsKKyAgX191MzIgcHJvYjsKKyAgX191MzIgZGVsYXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGF2Z19kcV9yYXRlOwotIF9fdTMyIHBhY2tldHNfaW47Ci0gX191MzIgZHJvcHBlZDsKLSBfX3UzMiBvdmVybGltaXQ7CisgIF9fdTMyIGF2Z19kcV9yYXRlOworICBfX3UzMiBwYWNrZXRzX2luOworICBfX3UzMiBkcm9wcGVkOworICBfX3UzMiBvdmVybGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heHE7Ci0gX191MzIgZWNuX21hcms7CisgIF9fdTMyIG1heHE7CisgIF9fdTMyIGVjbl9tYXJrOwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcGt0Y2R2ZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wa3RjZHZkLmgKaW5kZXggYzgwZThlYi4uNWQ3YTI0NiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wa3RjZHZkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wa3RjZHZkLmgKQEAgLTU4LDEzICs1OCwxMyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUEtUX0NUUkxfQ01EX1NUQVRVUyAyCiBzdHJ1Y3QgcGt0X2N0cmxfY29tbWFuZCB7Ci0gX191MzIgY29tbWFuZDsKLSBfX3UzMiBkZXZfaW5kZXg7CisgIF9fdTMyIGNvbW1hbmQ7CisgIF9fdTMyIGRldl9pbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZGV2OwotIF9fdTMyIHBrdF9kZXY7Ci0gX191MzIgbnVtX2RldmljZXM7Ci0gX191MzIgcGFkZGluZzsKKyAgX191MzIgZGV2OworICBfX3UzMiBwa3RfZGV2OworICBfX3UzMiBudW1fZGV2aWNlczsKKyAgX191MzIgcGFkZGluZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBQQUNLRVRfSU9DVExfTUFHSUMgKCdYJykKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcG11LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BtdS5oCmluZGV4IDM3MmJkMTkuLjVhM2Q4YzIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcG11LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wbXUuaApAQCAtODgsMzMgKzg4LDMzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQTVVfSTJDX1NUQVRVU19CVVNZIDB4ZmUKIGVudW0gewotIFBNVV9VTktOT1dOLAotIFBNVV9PSEFSRV9CQVNFRCwKKyAgUE1VX1VOS05PV04sCisgIFBNVV9PSEFSRV9CQVNFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUE1VX0hFQVRIUk9XX0JBU0VELAotIFBNVV9QQURESU5HVE9OX0JBU0VELAotIFBNVV9LRVlMQVJHT19CQVNFRCwKLSBQTVVfNjhLX1YxLAorICBQTVVfSEVBVEhST1dfQkFTRUQsCisgIFBNVV9QQURESU5HVE9OX0JBU0VELAorICBQTVVfS0VZTEFSR09fQkFTRUQsCisgIFBNVV82OEtfVjEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBNVV82OEtfVjIsCisgIFBNVV82OEtfVjIsCiB9OwogZW51bSB7Ci0gUE1VX1BXUl9HRVRfUE9XRVJVUF9FVkVOVFMgPSAweDAwLAorICBQTVVfUFdSX0dFVF9QT1dFUlVQX0VWRU5UUyA9IDB4MDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBNVV9QV1JfU0VUX1BPV0VSVVBfRVZFTlRTID0gMHgwMSwKLSBQTVVfUFdSX0NMUl9QT1dFUlVQX0VWRU5UUyA9IDB4MDIsCi0gUE1VX1BXUl9HRVRfV0FLRVVQX0VWRU5UUyA9IDB4MDMsCi0gUE1VX1BXUl9TRVRfV0FLRVVQX0VWRU5UUyA9IDB4MDQsCisgIFBNVV9QV1JfU0VUX1BPV0VSVVBfRVZFTlRTID0gMHgwMSwKKyAgUE1VX1BXUl9DTFJfUE9XRVJVUF9FVkVOVFMgPSAweDAyLAorICBQTVVfUFdSX0dFVF9XQUtFVVBfRVZFTlRTID0gMHgwMywKKyAgUE1VX1BXUl9TRVRfV0FLRVVQX0VWRU5UUyA9IDB4MDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBNVV9QV1JfQ0xSX1dBS0VVUF9FVkVOVFMgPSAweDA1LAorICBQTVVfUFdSX0NMUl9XQUtFVVBfRVZFTlRTID0gMHgwNSwKIH07CiBlbnVtIHsKLSBQTVVfUFdSX1dBS0VVUF9LRVkgPSAweDAxLAorICBQTVVfUFdSX1dBS0VVUF9LRVkgPSAweDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQTVVfUFdSX1dBS0VVUF9BQ19JTlNFUlQgPSAweDAyLAotIFBNVV9QV1JfV0FLRVVQX0FDX0NIQU5HRSA9IDB4MDQsCi0gUE1VX1BXUl9XQUtFVVBfTElEX09QRU4gPSAweDA4LAotIFBNVV9QV1JfV0FLRVVQX1JJTkcgPSAweDEwLAorICBQTVVfUFdSX1dBS0VVUF9BQ19JTlNFUlQgPSAweDAyLAorICBQTVVfUFdSX1dBS0VVUF9BQ19DSEFOR0UgPSAweDA0LAorICBQTVVfUFdSX1dBS0VVUF9MSURfT1BFTiA9IDB4MDgsCisgIFBNVV9QV1JfV0FLRVVQX1JJTkcgPSAweDEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjaW5jbHVkZSA8bGludXgvaW9jdGwuaD4KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcG9zaXhfdHlwZXMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcG9zaXhfdHlwZXMuaAppbmRleCBjMTk3NTE5Li5iMGUxYzVmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Bvc2l4X3R5cGVzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wb3NpeF90eXBlcy5oCkBAIC0yMywxMCArMjMsMTAgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIF9fRkRfU0VUU0laRSAxMDI0CiB0eXBlZGVmIHN0cnVjdCB7Ci0gdW5zaWduZWQgbG9uZyBmZHNfYml0c1tfX0ZEX1NFVFNJWkUgLyAoOCAqIHNpemVvZihsb25nKSldOworICB1bnNpZ25lZCBsb25nIGZkc19iaXRzW19fRkRfU0VUU0laRSAvICg4ICogc2l6ZW9mKGxvbmcpKV07CiB9IF9fa2VybmVsX2ZkX3NldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi10eXBlZGVmIHZvaWQgKCpfX2tlcm5lbF9zaWdoYW5kbGVyX3QpKGludCk7Cit0eXBlZGVmIHZvaWQoKiBfX2tlcm5lbF9zaWdoYW5kbGVyX3QpIChpbnQpOwogdHlwZWRlZiBpbnQgX19rZXJuZWxfa2V5X3Q7CiB0eXBlZGVmIGludCBfX2tlcm5lbF9tcWRfdDsKICNpbmNsdWRlIDxhc20vcG9zaXhfdHlwZXMuaD4KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHBkZXYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHBkZXYuaAppbmRleCAyZmE3ODVjLi41ZDAzZjQzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BwZGV2LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcGRldi5oCkBAIC0yNCw5ICsyNCw5IEBACiAjZGVmaW5lIFBQUkNPTlRST0wgX0lPUihQUF9JT0NUTCwgMHg4MywgdW5zaWduZWQgY2hhcikKICNkZWZpbmUgUFBXQ09OVFJPTCBfSU9XKFBQX0lPQ1RMLCAweDg0LCB1bnNpZ25lZCBjaGFyKQogc3RydWN0IHBwZGV2X2Zyb2Jfc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIG1hc2s7CisgIHVuc2lnbmVkIGNoYXIgbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciB2YWw7CisgIHVuc2lnbmVkIGNoYXIgdmFsOwogfTsKICNkZWZpbmUgUFBGQ09OVFJPTCBfSU9XKFBQX0lPQ1RMLCAweDhlLCBzdHJ1Y3QgcHBkZXZfZnJvYl9zdHJ1Y3QpCiAjZGVmaW5lIFBQUkRBVEEgX0lPUihQUF9JT0NUTCwgMHg4NSwgdW5zaWduZWQgY2hhcikKQEAgLTU3LDggKzU3LDggQEAKICNkZWZpbmUgUFBHRVRGTEFHUyBfSU9SKFBQX0lPQ1RMLCAweDlhLCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQUFNFVEZMQUdTIF9JT1coUFBfSU9DVEwsIDB4OWIsIGludCkKLSNkZWZpbmUgUFBfRkFTVFdSSVRFICgxPDwyKQotI2RlZmluZSBQUF9GQVNUUkVBRCAoMTw8MykKLSNkZWZpbmUgUFBfVzkxMjg0UElDICgxPDw0KQorI2RlZmluZSBQUF9GQVNUV1JJVEUgKDEgPDwgMikKKyNkZWZpbmUgUFBfRkFTVFJFQUQgKDEgPDwgMykKKyNkZWZpbmUgUFBfVzkxMjg0UElDICgxIDw8IDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQUF9GTEFHTUFTSyAoUFBfRkFTVFdSSVRFIHwgUFBfRkFTVFJFQUQgfCBQUF9XOTEyODRQSUMpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BwcC1jb21wLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BwcC1jb21wLmgKaW5kZXggODY2YjBmZi4uZDk1MzMzMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcHAtY29tcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHBwLWNvbXAuaApAQCAtNDIsNyArNDIsNyBAQAogI2RlZmluZSBCU0RfVkVSU0lPTih4KSAoKHgpID4+IDUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBCU0RfQ1VSUkVOVF9WRVJTSU9OIDEKLSNkZWZpbmUgQlNEX01BS0VfT1BUKHYsIG4pICgoKHYpIDw8IDUpIHwgKG4pKQorI2RlZmluZSBCU0RfTUFLRV9PUFQodixuKSAoKCh2KSA8PCA1KSB8IChuKSkKICNkZWZpbmUgQlNEX01JTl9CSVRTIDkKICNkZWZpbmUgQlNEX01BWF9CSVRTIDE1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcHAtaW9jdGwuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHBwLWlvY3RsLmgKaW5kZXggZmEyNDIzYy4uMzkxNzAzNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcHAtaW9jdGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BwcC1pb2N0bC5oCkBAIC02MSwzMCArNjEsMzAgQEAKICNkZWZpbmUgU0NfRENfRVJST1IgMHgwMDQwMDAwMAogc3RydWN0IG5waW9jdGwgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcHJvdG9jb2w7Ci0gZW51bSBOUG1vZGUgbW9kZTsKKyAgaW50IHByb3RvY29sOworICBlbnVtIE5QbW9kZSBtb2RlOwogfTsKIHN0cnVjdCBwcHBfb3B0aW9uX2RhdGEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IF9fdXNlciAqcHRyOwotIF9fdTMyIGxlbmd0aDsKLSBpbnQgdHJhbnNtaXQ7CisgIF9fdTggX191c2VyICogcHRyOworICBfX3UzMiBsZW5ndGg7CisgIGludCB0cmFuc21pdDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHBwcG9sMnRwX2lvY19zdGF0cyB7Ci0gX191MTYgdHVubmVsX2lkOwotIF9fdTE2IHNlc3Npb25faWQ7Ci0gX191MzIgdXNpbmdfaXBzZWM6MTsKKyAgX191MTYgdHVubmVsX2lkOworICBfX3UxNiBzZXNzaW9uX2lkOworICBfX3UzMiB1c2luZ19pcHNlYyA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYWxpZ25lZF91NjQgdHhfcGFja2V0czsKLSBfX2FsaWduZWRfdTY0IHR4X2J5dGVzOwotIF9fYWxpZ25lZF91NjQgdHhfZXJyb3JzOwotIF9fYWxpZ25lZF91NjQgcnhfcGFja2V0czsKKyAgX19hbGlnbmVkX3U2NCB0eF9wYWNrZXRzOworICBfX2FsaWduZWRfdTY0IHR4X2J5dGVzOworICBfX2FsaWduZWRfdTY0IHR4X2Vycm9yczsKKyAgX19hbGlnbmVkX3U2NCByeF9wYWNrZXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2FsaWduZWRfdTY0IHJ4X2J5dGVzOwotIF9fYWxpZ25lZF91NjQgcnhfc2VxX2Rpc2NhcmRzOwotIF9fYWxpZ25lZF91NjQgcnhfb29zX3BhY2tldHM7Ci0gX19hbGlnbmVkX3U2NCByeF9lcnJvcnM7CisgIF9fYWxpZ25lZF91NjQgcnhfYnl0ZXM7CisgIF9fYWxpZ25lZF91NjQgcnhfc2VxX2Rpc2NhcmRzOworICBfX2FsaWduZWRfdTY0IHJ4X29vc19wYWNrZXRzOworICBfX2FsaWduZWRfdTY0IHJ4X2Vycm9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBQUFBJT0NHRkxBR1MgX0lPUigndCcsIDkwLCBpbnQpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BwcF9kZWZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BwcF9kZWZzLmgKaW5kZXggNjY1NDA1OC4uZmYxYWZiYiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcHBfZGVmcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHBwX2RlZnMuaApAQCAtMjMsMTAgKzIzLDEwIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQUFBfRkNTTEVOIDIKICNkZWZpbmUgUFBQX01SVSAxNTAwCi0jZGVmaW5lIFBQUF9BRERSRVNTKHApICgoKF9fdTggKikocCkpWzBdKQotI2RlZmluZSBQUFBfQ09OVFJPTChwKSAoKChfX3U4ICopKHApKVsxXSkKKyNkZWZpbmUgUFBQX0FERFJFU1MocCkgKCgoX191OCAqKSAocCkpWzBdKQorI2RlZmluZSBQUFBfQ09OVFJPTChwKSAoKChfX3U4ICopIChwKSlbMV0pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQUFBfUFJPVE9DT0wocCkgKCgoKF9fdTggKikocCkpWzJdIDw8IDgpICsgKChfX3U4ICopKHApKVszXSkKKyNkZWZpbmUgUFBQX1BST1RPQ09MKHApICgoKChfX3U4ICopIChwKSlbMl0gPDwgOCkgKyAoKF9fdTggKikgKHApKVszXSkKICNkZWZpbmUgUFBQX0FMTFNUQVRJT05TIDB4ZmYKICNkZWZpbmUgUFBQX1VJIDB4MDMKICNkZWZpbmUgUFBQX0ZMQUcgMHg3ZQpAQCAtNjcsNjggKzY3LDY4IEBACiB0eXBlZGVmIF9fdTMyIGV4dF9hY2NtWzhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gTlBtb2RlIHsKLSBOUE1PREVfUEFTUywKLSBOUE1PREVfRFJPUCwKLSBOUE1PREVfRVJST1IsCisgIE5QTU9ERV9QQVNTLAorICBOUE1PREVfRFJPUCwKKyAgTlBNT0RFX0VSUk9SLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBOUE1PREVfUVVFVUUKKyAgTlBNT0RFX1FVRVVFCiB9Owogc3RydWN0IHBwcHN0YXQgewotIF9fdTMyIHBwcF9kaXNjYXJkczsKKyAgX191MzIgcHBwX2Rpc2NhcmRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwcHBfaWJ5dGVzOwotIF9fdTMyIHBwcF9pb2N0ZWN0czsKLSBfX3UzMiBwcHBfaXBhY2tldHM7Ci0gX191MzIgcHBwX2llcnJvcnM7CisgIF9fdTMyIHBwcF9pYnl0ZXM7CisgIF9fdTMyIHBwcF9pb2N0ZWN0czsKKyAgX191MzIgcHBwX2lwYWNrZXRzOworICBfX3UzMiBwcHBfaWVycm9yczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcHBwX2lscXJzOwotIF9fdTMyIHBwcF9vYnl0ZXM7Ci0gX191MzIgcHBwX29vY3RlY3RzOwotIF9fdTMyIHBwcF9vcGFja2V0czsKKyAgX191MzIgcHBwX2lscXJzOworICBfX3UzMiBwcHBfb2J5dGVzOworICBfX3UzMiBwcHBfb29jdGVjdHM7CisgIF9fdTMyIHBwcF9vcGFja2V0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcHBwX29lcnJvcnM7Ci0gX191MzIgcHBwX29scXJzOworICBfX3UzMiBwcHBfb2Vycm9yczsKKyAgX191MzIgcHBwX29scXJzOwogfTsKIHN0cnVjdCB2anN0YXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB2anNfcGFja2V0czsKLSBfX3UzMiB2anNfY29tcHJlc3NlZDsKLSBfX3UzMiB2anNfc2VhcmNoZXM7Ci0gX191MzIgdmpzX21pc3NlczsKKyAgX191MzIgdmpzX3BhY2tldHM7CisgIF9fdTMyIHZqc19jb21wcmVzc2VkOworICBfX3UzMiB2anNfc2VhcmNoZXM7CisgIF9fdTMyIHZqc19taXNzZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHZqc191bmNvbXByZXNzZWRpbjsKLSBfX3UzMiB2anNfY29tcHJlc3NlZGluOwotIF9fdTMyIHZqc19lcnJvcmluOwotIF9fdTMyIHZqc190b3NzZWQ7CisgIF9fdTMyIHZqc191bmNvbXByZXNzZWRpbjsKKyAgX191MzIgdmpzX2NvbXByZXNzZWRpbjsKKyAgX191MzIgdmpzX2Vycm9yaW47CisgIF9fdTMyIHZqc190b3NzZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBjb21wc3RhdCB7Ci0gX191MzIgdW5jX2J5dGVzOwotIF9fdTMyIHVuY19wYWNrZXRzOworICBfX3UzMiB1bmNfYnl0ZXM7CisgIF9fdTMyIHVuY19wYWNrZXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb21wX2J5dGVzOwotIF9fdTMyIGNvbXBfcGFja2V0czsKLSBfX3UzMiBpbmNfYnl0ZXM7Ci0gX191MzIgaW5jX3BhY2tldHM7CisgIF9fdTMyIGNvbXBfYnl0ZXM7CisgIF9fdTMyIGNvbXBfcGFja2V0czsKKyAgX191MzIgaW5jX2J5dGVzOworICBfX3UzMiBpbmNfcGFja2V0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW5fY291bnQ7Ci0gX191MzIgYnl0ZXNfb3V0OwotIGRvdWJsZSByYXRpbzsKKyAgX191MzIgaW5fY291bnQ7CisgIF9fdTMyIGJ5dGVzX291dDsKKyAgZG91YmxlIHJhdGlvOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcHBwX3N0YXRzIHsKLSBzdHJ1Y3QgcHBwc3RhdCBwOwotIHN0cnVjdCB2anN0YXQgdmo7CisgIHN0cnVjdCBwcHBzdGF0IHA7CisgIHN0cnVjdCB2anN0YXQgdmo7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwcHBfY29tcF9zdGF0cyB7Ci0gc3RydWN0IGNvbXBzdGF0IGM7Ci0gc3RydWN0IGNvbXBzdGF0IGQ7CisgIHN0cnVjdCBjb21wc3RhdCBjOworICBzdHJ1Y3QgY29tcHN0YXQgZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHBwcF9pZGxlIHsKLSBfX2tlcm5lbF90aW1lX3QgeG1pdF9pZGxlOwotIF9fa2VybmVsX3RpbWVfdCByZWN2X2lkbGU7CisgIF9fa2VybmVsX3RpbWVfdCB4bWl0X2lkbGU7CisgIF9fa2VybmVsX3RpbWVfdCByZWN2X2lkbGU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcHMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHBzLmgKaW5kZXggY2I4YTQxOC4uNjk4OThhMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Bwcy5oCkBAIC0yNywyNyArMjcsMjcgQEAKICNkZWZpbmUgUFBTX01BWF9OQU1FX0xFTiAzMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwcHNfa3RpbWUgewotIF9fczY0IHNlYzsKLSBfX3MzMiBuc2VjOwotIF9fdTMyIGZsYWdzOworICBfX3M2NCBzZWM7CisgIF9fczMyIG5zZWM7CisgIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIFBQU19USU1FX0lOVkFMSUQgKDE8PDApCisjZGVmaW5lIFBQU19USU1FX0lOVkFMSUQgKDEgPDwgMCkKIHN0cnVjdCBwcHNfa2luZm8gewotIF9fdTMyIGFzc2VydF9zZXF1ZW5jZTsKKyAgX191MzIgYXNzZXJ0X3NlcXVlbmNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjbGVhcl9zZXF1ZW5jZTsKLSBzdHJ1Y3QgcHBzX2t0aW1lIGFzc2VydF90dTsKLSBzdHJ1Y3QgcHBzX2t0aW1lIGNsZWFyX3R1OwotIGludCBjdXJyZW50X21vZGU7CisgIF9fdTMyIGNsZWFyX3NlcXVlbmNlOworICBzdHJ1Y3QgcHBzX2t0aW1lIGFzc2VydF90dTsKKyAgc3RydWN0IHBwc19rdGltZSBjbGVhcl90dTsKKyAgaW50IGN1cnJlbnRfbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHBwc19rcGFyYW1zIHsKLSBpbnQgYXBpX3ZlcnNpb247Ci0gaW50IG1vZGU7CisgIGludCBhcGlfdmVyc2lvbjsKKyAgaW50IG1vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBwcHNfa3RpbWUgYXNzZXJ0X29mZl90dTsKLSBzdHJ1Y3QgcHBzX2t0aW1lIGNsZWFyX29mZl90dTsKKyAgc3RydWN0IHBwc19rdGltZSBhc3NlcnRfb2ZmX3R1OworICBzdHJ1Y3QgcHBzX2t0aW1lIGNsZWFyX29mZl90dTsKIH07CiAjZGVmaW5lIFBQU19DQVBUVVJFQVNTRVJUIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC02OCwxNSArNjgsMTUgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBQU19LQ19IQVJEUFBTX0ZMTCAyCiBzdHJ1Y3QgcHBzX2ZkYXRhIHsKLSBzdHJ1Y3QgcHBzX2tpbmZvIGluZm87Ci0gc3RydWN0IHBwc19rdGltZSB0aW1lb3V0OworICBzdHJ1Y3QgcHBzX2tpbmZvIGluZm87CisgIHN0cnVjdCBwcHNfa3RpbWUgdGltZW91dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHBwc19iaW5kX2FyZ3MgewotIGludCB0c2Zvcm1hdDsKLSBpbnQgZWRnZTsKKyAgaW50IHRzZm9ybWF0OworICBpbnQgZWRnZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNvbnN1bWVyOworICBpbnQgY29uc3VtZXI7CiB9OwogI2luY2x1ZGUgPGxpbnV4L2lvY3RsLmg+CiAjZGVmaW5lIFBQU19HRVRQQVJBTVMgX0lPUigncCcsIDB4YTEsIHN0cnVjdCBwcHNfa3BhcmFtcyAqKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcmN0bC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wcmN0bC5oCmluZGV4IGExMjdiNWEuLjA3ODk4Y2MgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHJjdGwuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ByY3RsLmgKQEAgLTE4LDEwMyArMTgsMTI5IEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX0xJTlVYX1BSQ1RMX0gKICNkZWZpbmUgX0xJTlVYX1BSQ1RMX0gKKyNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogI2RlZmluZSBQUl9TRVRfUERFQVRIU0lHIDEKLSNkZWZpbmUgUFJfR0VUX1BERUFUSFNJRyAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9HRVRfUERFQVRIU0lHIDIKICNkZWZpbmUgUFJfR0VUX0RVTVBBQkxFIDMKICNkZWZpbmUgUFJfU0VUX0RVTVBBQkxFIDQKICNkZWZpbmUgUFJfR0VUX1VOQUxJR04gNQotI2RlZmluZSBQUl9TRVRfVU5BTElHTiA2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9TRVRfVU5BTElHTiA2CiAjZGVmaW5lIFBSX1VOQUxJR05fTk9QUklOVCAxCiAjZGVmaW5lIFBSX1VOQUxJR05fU0lHQlVTIDIKICNkZWZpbmUgUFJfR0VUX0tFRVBDQVBTIDcKLSNkZWZpbmUgUFJfU0VUX0tFRVBDQVBTIDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX1NFVF9LRUVQQ0FQUyA4CiAjZGVmaW5lIFBSX0dFVF9GUEVNVSA5CiAjZGVmaW5lIFBSX1NFVF9GUEVNVSAxMAogI2RlZmluZSBQUl9GUEVNVV9OT1BSSU5UIDEKLSNkZWZpbmUgUFJfRlBFTVVfU0lHRlBFIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX0ZQRU1VX1NJR0ZQRSAyCiAjZGVmaW5lIFBSX0dFVF9GUEVYQyAxMQogI2RlZmluZSBQUl9TRVRfRlBFWEMgMTIKICNkZWZpbmUgUFJfRlBfRVhDX1NXX0VOQUJMRSAweDgwCi0jZGVmaW5lIFBSX0ZQX0VYQ19ESVYgMHgwMTAwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX0ZQX0VYQ19ESVYgMHgwMTAwMDAKICNkZWZpbmUgUFJfRlBfRVhDX09WRiAweDAyMDAwMAogI2RlZmluZSBQUl9GUF9FWENfVU5EIDB4MDQwMDAwCiAjZGVmaW5lIFBSX0ZQX0VYQ19SRVMgMHgwODAwMDAKLSNkZWZpbmUgUFJfRlBfRVhDX0lOViAweDEwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFJfRlBfRVhDX0lOViAweDEwMDAwMAogI2RlZmluZSBQUl9GUF9FWENfRElTQUJMRUQgMAogI2RlZmluZSBQUl9GUF9FWENfTk9OUkVDT1YgMQogI2RlZmluZSBQUl9GUF9FWENfQVNZTkMgMgotI2RlZmluZSBQUl9GUF9FWENfUFJFQ0lTRSAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9GUF9FWENfUFJFQ0lTRSAzCiAjZGVmaW5lIFBSX0dFVF9USU1JTkcgMTMKICNkZWZpbmUgUFJfU0VUX1RJTUlORyAxNAogI2RlZmluZSBQUl9USU1JTkdfU1RBVElTVElDQUwgMAotI2RlZmluZSBQUl9USU1JTkdfVElNRVNUQU1QIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX1RJTUlOR19USU1FU1RBTVAgMQogI2RlZmluZSBQUl9TRVRfTkFNRSAxNQogI2RlZmluZSBQUl9HRVRfTkFNRSAxNgogI2RlZmluZSBQUl9HRVRfRU5ESUFOIDE5Ci0jZGVmaW5lIFBSX1NFVF9FTkRJQU4gMjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX1NFVF9FTkRJQU4gMjAKICNkZWZpbmUgUFJfRU5ESUFOX0JJRyAwCiAjZGVmaW5lIFBSX0VORElBTl9MSVRUTEUgMQogI2RlZmluZSBQUl9FTkRJQU5fUFBDX0xJVFRMRSAyCi0jZGVmaW5lIFBSX0dFVF9TRUNDT01QIDIxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9HRVRfU0VDQ09NUCAyMQogI2RlZmluZSBQUl9TRVRfU0VDQ09NUCAyMgogI2RlZmluZSBQUl9DQVBCU0VUX1JFQUQgMjMKICNkZWZpbmUgUFJfQ0FQQlNFVF9EUk9QIDI0Ci0jZGVmaW5lIFBSX0dFVF9UU0MgMjUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX0dFVF9UU0MgMjUKICNkZWZpbmUgUFJfU0VUX1RTQyAyNgogI2RlZmluZSBQUl9UU0NfRU5BQkxFIDEKICNkZWZpbmUgUFJfVFNDX1NJR1NFR1YgMgotI2RlZmluZSBQUl9HRVRfU0VDVVJFQklUUyAyNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFJfR0VUX1NFQ1VSRUJJVFMgMjcKICNkZWZpbmUgUFJfU0VUX1NFQ1VSRUJJVFMgMjgKICNkZWZpbmUgUFJfU0VUX1RJTUVSU0xBQ0sgMjkKICNkZWZpbmUgUFJfR0VUX1RJTUVSU0xBQ0sgMzAKLSNkZWZpbmUgUFJfVEFTS19QRVJGX0VWRU5UU19ESVNBQkxFIDMxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQUl9UQVNLX1BFUkZfRVZFTlRTX0RJU0FCTEUgMzEKICNkZWZpbmUgUFJfVEFTS19QRVJGX0VWRU5UU19FTkFCTEUgMzIKICNkZWZpbmUgUFJfTUNFX0tJTEwgMzMKICNkZWZpbmUgUFJfTUNFX0tJTExfQ0xFQVIgMAotI2RlZmluZSBQUl9NQ0VfS0lMTF9TRVQgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFJfTUNFX0tJTExfU0VUIDEKICNkZWZpbmUgUFJfTUNFX0tJTExfTEFURSAwCiAjZGVmaW5lIFBSX01DRV9LSUxMX0VBUkxZIDEKICNkZWZpbmUgUFJfTUNFX0tJTExfREVGQVVMVCAyCi0jZGVmaW5lIFBSX01DRV9LSUxMX0dFVCAzNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFJfTUNFX0tJTExfR0VUIDM0CiAjZGVmaW5lIFBSX1NFVF9NTSAzNQogI2RlZmluZSBQUl9TRVRfTU1fU1RBUlRfQ09ERSAxCiAjZGVmaW5lIFBSX1NFVF9NTV9FTkRfQ09ERSAyCi0jZGVmaW5lIFBSX1NFVF9NTV9TVEFSVF9EQVRBIDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX1NFVF9NTV9TVEFSVF9EQVRBIDMKICNkZWZpbmUgUFJfU0VUX01NX0VORF9EQVRBIDQKICNkZWZpbmUgUFJfU0VUX01NX1NUQVJUX1NUQUNLIDUKICNkZWZpbmUgUFJfU0VUX01NX1NUQVJUX0JSSyA2Ci0jZGVmaW5lIFBSX1NFVF9NTV9CUksgNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFJfU0VUX01NX0JSSyA3CiAjZGVmaW5lIFBSX1NFVF9NTV9BUkdfU1RBUlQgOAogI2RlZmluZSBQUl9TRVRfTU1fQVJHX0VORCA5CiAjZGVmaW5lIFBSX1NFVF9NTV9FTlZfU1RBUlQgMTAKLSNkZWZpbmUgUFJfU0VUX01NX0VOVl9FTkQgMTEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX1NFVF9NTV9FTlZfRU5EIDExCiAjZGVmaW5lIFBSX1NFVF9NTV9BVVhWIDEyCiAjZGVmaW5lIFBSX1NFVF9NTV9FWEVfRklMRSAxMwotI2RlZmluZSBQUl9TRVRfUFRSQUNFUiAweDU5NjE2ZDYxCi0jZGVmaW5lIFBSX1NFVF9QVFJBQ0VSX0FOWSAoKHVuc2lnbmVkIGxvbmcpLTEpCisjZGVmaW5lIFBSX1NFVF9NTV9NQVAgMTQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBSX1NFVF9NTV9NQVBfU0laRSAxNQorc3RydWN0IHByY3RsX21tX21hcCB7CisgIF9fdTY0IHN0YXJ0X2NvZGU7CisgIF9fdTY0IGVuZF9jb2RlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgc3RhcnRfZGF0YTsKKyAgX191NjQgZW5kX2RhdGE7CisgIF9fdTY0IHN0YXJ0X2JyazsKKyAgX191NjQgYnJrOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgc3RhcnRfc3RhY2s7CisgIF9fdTY0IGFyZ19zdGFydDsKKyAgX191NjQgYXJnX2VuZDsKKyAgX191NjQgZW52X3N0YXJ0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgZW52X2VuZDsKKyAgX191NjQgKiBhdXh2OworICBfX3UzMiBhdXh2X3NpemU7CisgIF9fdTMyIGV4ZV9mZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworI2RlZmluZSBQUl9TRVRfUFRSQUNFUiAweDU5NjE2ZDYxCisjZGVmaW5lIFBSX1NFVF9QVFJBQ0VSX0FOWSAoKHVuc2lnbmVkIGxvbmcpIC0gMSkKICNkZWZpbmUgUFJfU0VUX0NISUxEX1NVQlJFQVBFUiAzNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUFJfR0VUX0NISUxEX1NVQlJFQVBFUiAzNwogI2RlZmluZSBQUl9TRVRfTk9fTkVXX1BSSVZTIDM4CiAjZGVmaW5lIFBSX0dFVF9OT19ORVdfUFJJVlMgMzkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBSX0dFVF9USURfQUREUkVTUyA0MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFJfU0VUX1RIUF9ESVNBQkxFIDQxCisjZGVmaW5lIFBSX0dFVF9USFBfRElTQUJMRSA0MgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BzY2kuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHNjaS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI1MjNhYmUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3BzY2kuaApAQCAtMCwwICsxLDc5IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9VQVBJX0xJTlVYX1BTQ0lfSAorI2RlZmluZSBfVUFQSV9MSU5VWF9QU0NJX0gKKyNkZWZpbmUgUFNDSV8wXzJfRk5fQkFTRSAweDg0MDAwMDAwCisjZGVmaW5lIFBTQ0lfMF8yX0ZOKG4pIChQU0NJXzBfMl9GTl9CQVNFICsgKG4pKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFNDSV8wXzJfNjRCSVQgMHg0MDAwMDAwMAorI2RlZmluZSBQU0NJXzBfMl9GTjY0X0JBU0UgKFBTQ0lfMF8yX0ZOX0JBU0UgKyBQU0NJXzBfMl82NEJJVCkKKyNkZWZpbmUgUFNDSV8wXzJfRk42NChuKSAoUFNDSV8wXzJfRk42NF9CQVNFICsgKG4pKQorI2RlZmluZSBQU0NJXzBfMl9GTl9QU0NJX1ZFUlNJT04gUFNDSV8wXzJfRk4oMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBTQ0lfMF8yX0ZOX0NQVV9TVVNQRU5EIFBTQ0lfMF8yX0ZOKDEpCisjZGVmaW5lIFBTQ0lfMF8yX0ZOX0NQVV9PRkYgUFNDSV8wXzJfRk4oMikKKyNkZWZpbmUgUFNDSV8wXzJfRk5fQ1BVX09OIFBTQ0lfMF8yX0ZOKDMpCisjZGVmaW5lIFBTQ0lfMF8yX0ZOX0FGRklOSVRZX0lORk8gUFNDSV8wXzJfRk4oNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBTQ0lfMF8yX0ZOX01JR1JBVEUgUFNDSV8wXzJfRk4oNSkKKyNkZWZpbmUgUFNDSV8wXzJfRk5fTUlHUkFURV9JTkZPX1RZUEUgUFNDSV8wXzJfRk4oNikKKyNkZWZpbmUgUFNDSV8wXzJfRk5fTUlHUkFURV9JTkZPX1VQX0NQVSBQU0NJXzBfMl9GTig3KQorI2RlZmluZSBQU0NJXzBfMl9GTl9TWVNURU1fT0ZGIFBTQ0lfMF8yX0ZOKDgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBQU0NJXzBfMl9GTl9TWVNURU1fUkVTRVQgUFNDSV8wXzJfRk4oOSkKKyNkZWZpbmUgUFNDSV8wXzJfRk42NF9DUFVfU1VTUEVORCBQU0NJXzBfMl9GTjY0KDEpCisjZGVmaW5lIFBTQ0lfMF8yX0ZONjRfQ1BVX09OIFBTQ0lfMF8yX0ZONjQoMykKKyNkZWZpbmUgUFNDSV8wXzJfRk42NF9BRkZJTklUWV9JTkZPIFBTQ0lfMF8yX0ZONjQoNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBTQ0lfMF8yX0ZONjRfTUlHUkFURSBQU0NJXzBfMl9GTjY0KDUpCisjZGVmaW5lIFBTQ0lfMF8yX0ZONjRfTUlHUkFURV9JTkZPX1VQX0NQVSBQU0NJXzBfMl9GTjY0KDcpCisjZGVmaW5lIFBTQ0lfMF8yX1BPV0VSX1NUQVRFX0lEX01BU0sgMHhmZmZmCisjZGVmaW5lIFBTQ0lfMF8yX1BPV0VSX1NUQVRFX0lEX1NISUZUIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBTQ0lfMF8yX1BPV0VSX1NUQVRFX1RZUEVfU0hJRlQgMTYKKyNkZWZpbmUgUFNDSV8wXzJfUE9XRVJfU1RBVEVfVFlQRV9NQVNLICgweDEgPDwgUFNDSV8wXzJfUE9XRVJfU1RBVEVfVFlQRV9TSElGVCkKKyNkZWZpbmUgUFNDSV8wXzJfUE9XRVJfU1RBVEVfQUZGTF9TSElGVCAyNAorI2RlZmluZSBQU0NJXzBfMl9QT1dFUl9TVEFURV9BRkZMX01BU0sgKDB4MyA8PCBQU0NJXzBfMl9QT1dFUl9TVEFURV9BRkZMX1NISUZUKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFNDSV8wXzJfQUZGSU5JVFlfTEVWRUxfT04gMAorI2RlZmluZSBQU0NJXzBfMl9BRkZJTklUWV9MRVZFTF9PRkYgMQorI2RlZmluZSBQU0NJXzBfMl9BRkZJTklUWV9MRVZFTF9PTl9QRU5ESU5HIDIKKyNkZWZpbmUgUFNDSV8wXzJfVE9TX1VQX01JR1JBVEUgMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFNDSV8wXzJfVE9TX1VQX05PX01JR1JBVEUgMQorI2RlZmluZSBQU0NJXzBfMl9UT1NfTVAgMgorI2RlZmluZSBQU0NJX1ZFUlNJT05fTUFKT1JfU0hJRlQgMTYKKyNkZWZpbmUgUFNDSV9WRVJTSU9OX01JTk9SX01BU0sgKCgxVSA8PCBQU0NJX1ZFUlNJT05fTUFKT1JfU0hJRlQpIC0gMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBTQ0lfVkVSU0lPTl9NQUpPUl9NQVNLIH5QU0NJX1ZFUlNJT05fTUlOT1JfTUFTSworI2RlZmluZSBQU0NJX1ZFUlNJT05fTUFKT1IodmVyKSAoKCh2ZXIpICYgUFNDSV9WRVJTSU9OX01BSk9SX01BU0spID4+IFBTQ0lfVkVSU0lPTl9NQUpPUl9TSElGVCkKKyNkZWZpbmUgUFNDSV9WRVJTSU9OX01JTk9SKHZlcikgKCh2ZXIpICYgUFNDSV9WRVJTSU9OX01JTk9SX01BU0spCisjZGVmaW5lIFBTQ0lfUkVUX1NVQ0NFU1MgMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUFNDSV9SRVRfTk9UX1NVUFBPUlRFRCAtIDEKKyNkZWZpbmUgUFNDSV9SRVRfSU5WQUxJRF9QQVJBTVMgLSAyCisjZGVmaW5lIFBTQ0lfUkVUX0RFTklFRCAtIDMKKyNkZWZpbmUgUFNDSV9SRVRfQUxSRUFEWV9PTiAtIDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFBTQ0lfUkVUX09OX1BFTkRJTkcgLSA1CisjZGVmaW5lIFBTQ0lfUkVUX0lOVEVSTkFMX0ZBSUxVUkUgLSA2CisjZGVmaW5lIFBTQ0lfUkVUX05PVF9QUkVTRU5UIC0gNworI2RlZmluZSBQU0NJX1JFVF9ESVNBQkxFRCAtIDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHRwX2Nsb2NrLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3B0cF9jbG9jay5oCmluZGV4IDAxYjE1ZDAuLmJiOWQ2ZDkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHRwX2Nsb2NrLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wdHBfY2xvY2suaApAQCAtMjEsNjEgKzIxLDgxIEBACiAjaW5jbHVkZSA8bGludXgvaW9jdGwuaD4KICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUFRQX0VOQUJMRV9GRUFUVVJFICgxPDwwKQotI2RlZmluZSBQVFBfUklTSU5HX0VER0UgKDE8PDEpCi0jZGVmaW5lIFBUUF9GQUxMSU5HX0VER0UgKDE8PDIpCisjZGVmaW5lIFBUUF9FTkFCTEVfRkVBVFVSRSAoMSA8PCAwKQorI2RlZmluZSBQVFBfUklTSU5HX0VER0UgKDEgPDwgMSkKKyNkZWZpbmUgUFRQX0ZBTExJTkdfRURHRSAoMSA8PCAyKQogc3RydWN0IHB0cF9jbG9ja190aW1lIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zNjQgc2VjOwotIF9fdTMyIG5zZWM7Ci0gX191MzIgcmVzZXJ2ZWQ7CisgIF9fczY0IHNlYzsKKyAgX191MzIgbnNlYzsKKyAgX191MzIgcmVzZXJ2ZWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwdHBfY2xvY2tfY2FwcyB7Ci0gaW50IG1heF9hZGo7Ci0gaW50IG5fYWxhcm07Ci0gaW50IG5fZXh0X3RzOworICBpbnQgbWF4X2FkajsKKyAgaW50IG5fYWxhcm07CisgIGludCBuX2V4dF90czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG5fcGVyX291dDsKLSBpbnQgcHBzOwotIGludCByc3ZbMTVdOworICBpbnQgbl9wZXJfb3V0OworICBpbnQgcHBzOworICBpbnQgbl9waW5zOworICBpbnQgcnN2WzE0XTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBwdHBfZXh0dHNfcmVxdWVzdCB7Ci0gdW5zaWduZWQgaW50IGluZGV4OwotIHVuc2lnbmVkIGludCBmbGFnczsKLSB1bnNpZ25lZCBpbnQgcnN2WzJdOworICB1bnNpZ25lZCBpbnQgaW5kZXg7CisgIHVuc2lnbmVkIGludCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGludCByc3ZbMl07CiB9Owogc3RydWN0IHB0cF9wZXJvdXRfcmVxdWVzdCB7Ci0gc3RydWN0IHB0cF9jbG9ja190aW1lIHN0YXJ0OwotIHN0cnVjdCBwdHBfY2xvY2tfdGltZSBwZXJpb2Q7CisgIHN0cnVjdCBwdHBfY2xvY2tfdGltZSBzdGFydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGluZGV4OwotIHVuc2lnbmVkIGludCBmbGFnczsKLSB1bnNpZ25lZCBpbnQgcnN2WzRdOworICBzdHJ1Y3QgcHRwX2Nsb2NrX3RpbWUgcGVyaW9kOworICB1bnNpZ25lZCBpbnQgaW5kZXg7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgaW50IHJzdls0XTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUFRQX01BWF9TQU1QTEVTIDI1CiBzdHJ1Y3QgcHRwX3N5c19vZmZzZXQgewotIHVuc2lnbmVkIGludCBuX3NhbXBsZXM7Ci0gdW5zaWduZWQgaW50IHJzdlszXTsKKyAgdW5zaWduZWQgaW50IG5fc2FtcGxlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHB0cF9jbG9ja190aW1lIHRzWzIgKiBQVFBfTUFYX1NBTVBMRVMgKyAxXTsKKyAgdW5zaWduZWQgaW50IHJzdlszXTsKKyAgc3RydWN0IHB0cF9jbG9ja190aW1lIHRzWzIgKiBQVFBfTUFYX1NBTVBMRVMgKyAxXTsKIH07CitlbnVtIHB0cF9waW5fZnVuY3Rpb24geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUFRQX1BGX05PTkUsCisgIFBUUF9QRl9FWFRUUywKKyAgUFRQX1BGX1BFUk9VVCwKKyAgUFRQX1BGX1BIWVNZTkMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK3N0cnVjdCBwdHBfcGluX2Rlc2MgeworICBjaGFyIG5hbWVbNjRdOworICB1bnNpZ25lZCBpbnQgaW5kZXg7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBpbnQgZnVuYzsKKyAgdW5zaWduZWQgaW50IGNoYW47CisgIHVuc2lnbmVkIGludCByc3ZbNV07Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUFRQX0NMS19NQUdJQyAnPScKICNkZWZpbmUgUFRQX0NMT0NLX0dFVENBUFMgX0lPUihQVFBfQ0xLX01BR0lDLCAxLCBzdHJ1Y3QgcHRwX2Nsb2NrX2NhcHMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQVFBfRVhUVFNfUkVRVUVTVCBfSU9XKFBUUF9DTEtfTUFHSUMsIDIsIHN0cnVjdCBwdHBfZXh0dHNfcmVxdWVzdCkKICNkZWZpbmUgUFRQX1BFUk9VVF9SRVFVRVNUIF9JT1coUFRQX0NMS19NQUdJQywgMywgc3RydWN0IHB0cF9wZXJvdXRfcmVxdWVzdCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFBUUF9FTkFCTEVfUFBTIF9JT1coUFRQX0NMS19NQUdJQywgNCwgaW50KQogI2RlZmluZSBQVFBfU1lTX09GRlNFVCBfSU9XKFBUUF9DTEtfTUFHSUMsIDUsIHN0cnVjdCBwdHBfc3lzX29mZnNldCkKKyNkZWZpbmUgUFRQX1BJTl9HRVRGVU5DIF9JT1dSKFBUUF9DTEtfTUFHSUMsIDYsIHN0cnVjdCBwdHBfcGluX2Rlc2MpCisjZGVmaW5lIFBUUF9QSU5fU0VURlVOQyBfSU9XKFBUUF9DTEtfTUFHSUMsIDcsIHN0cnVjdCBwdHBfcGluX2Rlc2MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHB0cF9leHR0c19ldmVudCB7Ci0gc3RydWN0IHB0cF9jbG9ja190aW1lIHQ7Ci0gdW5zaWduZWQgaW50IGluZGV4OwotIHVuc2lnbmVkIGludCBmbGFnczsKKyAgc3RydWN0IHB0cF9jbG9ja190aW1lIHQ7CisgIHVuc2lnbmVkIGludCBpbmRleDsKKyAgdW5zaWduZWQgaW50IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcnN2WzJdOworICB1bnNpZ25lZCBpbnQgcnN2WzJdOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wdHJhY2UuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcHRyYWNlLmgKaW5kZXggNmY3MWI2ZC4uYTMyNDRlOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9wdHJhY2UuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3B0cmFjZS5oCkBAIC00OSwxMCArNDksMTAgQEAKICNkZWZpbmUgUFRSQUNFX0xJU1RFTiAweDQyMDgKICNkZWZpbmUgUFRSQUNFX1BFRUtTSUdJTkZPIDB4NDIwOQogc3RydWN0IHB0cmFjZV9wZWVrc2lnaW5mb19hcmdzIHsKLSBfX3U2NCBvZmY7CisgIF9fdTY0IG9mZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7Ci0gX19zMzIgbnI7CisgIF9fdTMyIGZsYWdzOworICBfX3MzMiBucjsKIH07CiAjZGVmaW5lIFBUUkFDRV9HRVRTSUdNQVNLIDB4NDIwYQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcW54NF9mcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9xbng0X2ZzLmgKaW5kZXggYWU1ZTNlZS4uYjBlNTE3ZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9xbng0X2ZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9xbng0X2ZzLmgKQEAgLTQ4LDU0ICs0OCw1NCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUU5YNF9OQU1FX01BWCA0OAogc3RydWN0IHFueDRfaW5vZGVfZW50cnkgewotIGNoYXIgZGlfZm5hbWVbUU5YNF9TSE9SVF9OQU1FX01BWF07Ci0gcW54NF9vZmZfdCBkaV9zaXplOworICBjaGFyIGRpX2ZuYW1lW1FOWDRfU0hPUlRfTkFNRV9NQVhdOworICBxbng0X29mZl90IGRpX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHFueDRfeHRudF90IGRpX2ZpcnN0X3h0bnQ7Ci0gX19sZTMyIGRpX3hibGs7Ci0gX19sZTMyIGRpX2Z0aW1lOwotIF9fbGUzMiBkaV9tdGltZTsKKyAgcW54NF94dG50X3QgZGlfZmlyc3RfeHRudDsKKyAgX19sZTMyIGRpX3hibGs7CisgIF9fbGUzMiBkaV9mdGltZTsKKyAgX19sZTMyIGRpX210aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgZGlfYXRpbWU7Ci0gX19sZTMyIGRpX2N0aW1lOwotIHFueDRfbnh0bnRfdCBkaV9udW1feHRudHM7Ci0gcW54NF9tb2RlX3QgZGlfbW9kZTsKKyAgX19sZTMyIGRpX2F0aW1lOworICBfX2xlMzIgZGlfY3RpbWU7CisgIHFueDRfbnh0bnRfdCBkaV9udW1feHRudHM7CisgIHFueDRfbW9kZV90IGRpX21vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHFueDRfbXVpZF90IGRpX3VpZDsKLSBxbng0X21naWRfdCBkaV9naWQ7Ci0gcW54NF9ubGlua190IGRpX25saW5rOwotIF9fdTggZGlfemVyb1s0XTsKKyAgcW54NF9tdWlkX3QgZGlfdWlkOworICBxbng0X21naWRfdCBkaV9naWQ7CisgIHFueDRfbmxpbmtfdCBkaV9ubGluazsKKyAgX191OCBkaV96ZXJvWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBxbng0X2Z0eXBlX3QgZGlfdHlwZTsKLSBfX3U4IGRpX3N0YXR1czsKKyAgcW54NF9mdHlwZV90IGRpX3R5cGU7CisgIF9fdTggZGlfc3RhdHVzOwogfTsKIHN0cnVjdCBxbng0X2xpbmtfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgZGxfZm5hbWVbUU5YNF9OQU1FX01BWF07Ci0gX19sZTMyIGRsX2lub2RlX2JsazsKLSBfX3U4IGRsX2lub2RlX25keDsKLSBfX3U4IGRsX3NwYXJlWzEwXTsKKyAgY2hhciBkbF9mbmFtZVtRTlg0X05BTUVfTUFYXTsKKyAgX19sZTMyIGRsX2lub2RlX2JsazsKKyAgX191OCBkbF9pbm9kZV9uZHg7CisgIF9fdTggZGxfc3BhcmVbMTBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRsX3N0YXR1czsKKyAgX191OCBkbF9zdGF0dXM7CiB9Owogc3RydWN0IHFueDRfeGJsayB7Ci0gX19sZTMyIHhibGtfbmV4dF94YmxrOworICBfX2xlMzIgeGJsa19uZXh0X3hibGs7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiB4YmxrX3ByZXZfeGJsazsKLSBfX3U4IHhibGtfbnVtX3h0bnRzOwotIF9fdTggeGJsa19zcGFyZVszXTsKLSBfX2xlMzIgeGJsa19udW1fYmxvY2tzOworICBfX2xlMzIgeGJsa19wcmV2X3hibGs7CisgIF9fdTggeGJsa19udW1feHRudHM7CisgIF9fdTggeGJsa19zcGFyZVszXTsKKyAgX19sZTMyIHhibGtfbnVtX2Jsb2NrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gcW54NF94dG50X3QgeGJsa194dG50c1tRTlg0X01BWF9YVE5UU19QRVJfWEJMS107Ci0gY2hhciB4YmxrX3NpZ25hdHVyZVs4XTsKLSBxbng0X3h0bnRfdCB4YmxrX2ZpcnN0X3h0bnQ7CisgIHFueDRfeHRudF90IHhibGtfeHRudHNbUU5YNF9NQVhfWFROVFNfUEVSX1hCTEtdOworICBjaGFyIHhibGtfc2lnbmF0dXJlWzhdOworICBxbng0X3h0bnRfdCB4YmxrX2ZpcnN0X3h0bnQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBxbng0X3N1cGVyX2Jsb2NrIHsKLSBzdHJ1Y3QgcW54NF9pbm9kZV9lbnRyeSBSb290RGlyOwotIHN0cnVjdCBxbng0X2lub2RlX2VudHJ5IElub2RlOwotIHN0cnVjdCBxbng0X2lub2RlX2VudHJ5IEJvb3Q7CisgIHN0cnVjdCBxbng0X2lub2RlX2VudHJ5IFJvb3REaXI7CisgIHN0cnVjdCBxbng0X2lub2RlX2VudHJ5IElub2RlOworICBzdHJ1Y3QgcW54NF9pbm9kZV9lbnRyeSBCb290OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgcW54NF9pbm9kZV9lbnRyeSBBbHRCb290OworICBzdHJ1Y3QgcW54NF9pbm9kZV9lbnRyeSBBbHRCb290OwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9xbnh0eXBlcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9xbnh0eXBlcy5oCmluZGV4IDQxMjEwMjUuLmQ2YmExMjUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcW54dHlwZXMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3FueHR5cGVzLmgKQEAgLTIzLDggKzIzLDggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIF9fdTggcW54NF9mdHlwZV90OwogdHlwZWRlZiBzdHJ1Y3QgewotIF9fbGUzMiB4dG50X2JsazsKLSBfX2xlMzIgeHRudF9zaXplOworICBfX2xlMzIgeHRudF9ibGs7CisgIF9fbGUzMiB4dG50X3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBxbng0X3h0bnRfdDsKIHR5cGVkZWYgX19sZTE2IHFueDRfbW9kZV90OwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9xdW90YS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9xdW90YS5oCmluZGV4IDkyMzJkNjQuLmQ1ZmM3MDcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcXVvdGEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3F1b3RhLmgKQEAgLTI2LDEwICsyNiwxMSBAQAogI2RlZmluZSBVU1JRVU9UQSAwCiAjZGVmaW5lIEdSUFFVT1RBIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIElOSVRRRk5BTUVTIHsgICAidXNlciIsICAgICAiZ3JvdXAiLCAgICAgInVuZGVmaW5lZCIsICB9OworI2RlZmluZSBJTklUUUZOQU1FUyB7ICJ1c2VyIiwgImdyb3VwIiwgInVuZGVmaW5lZCIsIFwKK307CiAjZGVmaW5lIFNVQkNNRE1BU0sgMHgwMGZmCiAjZGVmaW5lIFNVQkNNRFNISUZUIDgKLSNkZWZpbmUgUUNNRChjbWQsIHR5cGUpICgoKGNtZCkgPDwgU1VCQ01EU0hJRlQpIHwgKCh0eXBlKSAmIFNVQkNNRE1BU0spKQorI2RlZmluZSBRQ01EKGNtZCx0eXBlKSAoKChjbWQpIDw8IFNVQkNNRFNISUZUKSB8ICgodHlwZSkgJiBTVUJDTURNQVNLKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFFfU1lOQyAweDgwMDAwMQogI2RlZmluZSBRX1FVT1RBT04gMHg4MDAwMDIKQEAgLTQ5LDE0ICs1MCwxNCBAQAogI2RlZmluZSBRSUZfRFFCTEtTSVpFX0JJVFMgMTAKICNkZWZpbmUgUUlGX0RRQkxLU0laRSAoMSA8PCBRSUZfRFFCTEtTSVpFX0JJVFMpCiBlbnVtIHsKLSBRSUZfQkxJTUlUU19CID0gMCwKKyAgUUlGX0JMSU1JVFNfQiA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFFJRl9TUEFDRV9CLAotIFFJRl9JTElNSVRTX0IsCi0gUUlGX0lOT0RFU19CLAotIFFJRl9CVElNRV9CLAorICBRSUZfU1BBQ0VfQiwKKyAgUUlGX0lMSU1JVFNfQiwKKyAgUUlGX0lOT0RFU19CLAorICBRSUZfQlRJTUVfQiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUUlGX0lUSU1FX0IsCisgIFFJRl9JVElNRV9CLAogfTsKICNkZWZpbmUgUUlGX0JMSU1JVFMgKDEgPDwgUUlGX0JMSU1JVFNfQikKICNkZWZpbmUgUUlGX1NQQUNFICgxIDw8IFFJRl9TUEFDRV9CKQpAQCAtNzIsMTcgKzczLDE3IEBACiAjZGVmaW5lIFFJRl9BTEwgKFFJRl9MSU1JVFMgfCBRSUZfVVNBR0UgfCBRSUZfVElNRVMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlmX2RxYmxrIHsKLSBfX3U2NCBkcWJfYmhhcmRsaW1pdDsKLSBfX3U2NCBkcWJfYnNvZnRsaW1pdDsKLSBfX3U2NCBkcWJfY3Vyc3BhY2U7CisgIF9fdTY0IGRxYl9iaGFyZGxpbWl0OworICBfX3U2NCBkcWJfYnNvZnRsaW1pdDsKKyAgX191NjQgZHFiX2N1cnNwYWNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkcWJfaWhhcmRsaW1pdDsKLSBfX3U2NCBkcWJfaXNvZnRsaW1pdDsKLSBfX3U2NCBkcWJfY3VyaW5vZGVzOwotIF9fdTY0IGRxYl9idGltZTsKKyAgX191NjQgZHFiX2loYXJkbGltaXQ7CisgIF9fdTY0IGRxYl9pc29mdGxpbWl0OworICBfX3U2NCBkcWJfY3VyaW5vZGVzOworICBfX3U2NCBkcWJfYnRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRxYl9pdGltZTsKLSBfX3UzMiBkcWJfdmFsaWQ7CisgIF9fdTY0IGRxYl9pdGltZTsKKyAgX191MzIgZHFiX3ZhbGlkOwogfTsKICNkZWZpbmUgSUlGX0JHUkFDRSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtOTEsMTAgKzkyLDEwIEBACiAjZGVmaW5lIElJRl9BTEwgKElJRl9CR1JBQ0UgfCBJSUZfSUdSQUNFIHwgSUlGX0ZMQUdTKQogc3RydWN0IGlmX2RxaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRxaV9iZ3JhY2U7Ci0gX191NjQgZHFpX2lncmFjZTsKLSBfX3UzMiBkcWlfZmxhZ3M7Ci0gX191MzIgZHFpX3ZhbGlkOworICBfX3U2NCBkcWlfYmdyYWNlOworICBfX3U2NCBkcWlfaWdyYWNlOworICBfX3UzMiBkcWlfZmxhZ3M7CisgIF9fdTMyIGRxaV92YWxpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBRVU9UQV9OTF9OT1dBUk4gMApAQCAtMTEyLDIzICsxMTMsMjMgQEAKICNkZWZpbmUgUVVPVEFfTkxfQlNPRlRCRUxPVyAxMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFFVT1RBX05MX0NfVU5TUEVDLAotIFFVT1RBX05MX0NfV0FSTklORywKLSBfX1FVT1RBX05MX0NfTUFYLAorICBRVU9UQV9OTF9DX1VOU1BFQywKKyAgUVVPVEFfTkxfQ19XQVJOSU5HLAorICBfX1FVT1RBX05MX0NfTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFFVT1RBX05MX0NfTUFYIChfX1FVT1RBX05MX0NfTUFYIC0gMSkKIGVudW0gewotIFFVT1RBX05MX0FfVU5TUEVDLAorICBRVU9UQV9OTF9BX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUVVPVEFfTkxfQV9RVFlQRSwKLSBRVU9UQV9OTF9BX0VYQ0VTU19JRCwKLSBRVU9UQV9OTF9BX1dBUk5JTkcsCi0gUVVPVEFfTkxfQV9ERVZfTUFKT1IsCisgIFFVT1RBX05MX0FfUVRZUEUsCisgIFFVT1RBX05MX0FfRVhDRVNTX0lELAorICBRVU9UQV9OTF9BX1dBUk5JTkcsCisgIFFVT1RBX05MX0FfREVWX01BSk9SLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBRVU9UQV9OTF9BX0RFVl9NSU5PUiwKLSBRVU9UQV9OTF9BX0NBVVNFRF9JRCwKLSBfX1FVT1RBX05MX0FfTUFYLAorICBRVU9UQV9OTF9BX0RFVl9NSU5PUiwKKyAgUVVPVEFfTkxfQV9DQVVTRURfSUQsCisgIF9fUVVPVEFfTkxfQV9NQVgsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUVVPVEFfTkxfQV9NQVggKF9fUVVPVEFfTkxfQV9NQVggLSAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yYWlkL21kX3AuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmFpZC9tZF9wLmgKaW5kZXggZmM2ZTIwZS4uYmRmOGU3YyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yYWlkL21kX3AuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JhaWQvbWRfcC5oCkBAIC00MSw3ICs0MSw3IEBACiAjZGVmaW5lIE1EX1NCX0RFU0NSSVBUT1JfV09SRFMgMzIKICNkZWZpbmUgTURfU0JfRElTS1MgMjcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1EX1NCX0RJU0tTX1dPUkRTIChNRF9TQl9ESVNLUypNRF9TQl9ERVNDUklQVE9SX1dPUkRTKQorI2RlZmluZSBNRF9TQl9ESVNLU19XT1JEUyAoTURfU0JfRElTS1MgKiBNRF9TQl9ERVNDUklQVE9SX1dPUkRTKQogI2RlZmluZSBNRF9TQl9SRVNFUlZFRF9XT1JEUyAoMTAyNCAtIE1EX1NCX0dFTkVSSUNfV09SRFMgLSBNRF9TQl9QRVJTT05BTElUWV9XT1JEUyAtIE1EX1NCX0RJU0tTX1dPUkRTIC0gTURfU0JfREVTQ1JJUFRPUl9XT1JEUykKICNkZWZpbmUgTURfU0JfRVFVQUxfV09SRFMgKE1EX1NCX0dFTkVSSUNfV09SRFMgKyBNRF9TQl9QRVJTT05BTElUWV9XT1JEUyArIE1EX1NCX0RJU0tTX1dPUkRTKQogI2RlZmluZSBNRF9ESVNLX0ZBVUxUWSAwCkBAIC01MiwxMyArNTIsMTMgQEAKICNkZWZpbmUgTURfRElTS19XUklURU1PU1RMWSA5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgbWRwX2RldmljZV9kZXNjcmlwdG9yX3MgewotIF9fdTMyIG51bWJlcjsKLSBfX3UzMiBtYWpvcjsKLSBfX3UzMiBtaW5vcjsKKyAgX191MzIgbnVtYmVyOworICBfX3UzMiBtYWpvcjsKKyAgX191MzIgbWlub3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJhaWRfZGlzazsKLSBfX3UzMiBzdGF0ZTsKLSBfX3UzMiByZXNlcnZlZFtNRF9TQl9ERVNDUklQVE9SX1dPUkRTIC0gNV07CisgIF9fdTMyIHJhaWRfZGlzazsKKyAgX191MzIgc3RhdGU7CisgIF9fdTMyIHJlc2VydmVkW01EX1NCX0RFU0NSSVBUT1JfV09SRFMgLSA1XTsKIH0gbWRwX2Rpc2tfdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1EX1NCX01BR0lDIDB4YTkyYjRlZmMKQEAgLTY3LDEyMiArNjcsMTIyIEBACiAjZGVmaW5lIE1EX1NCX0JJVE1BUF9QUkVTRU5UIDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBtZHBfc3VwZXJibG9ja19zIHsKLSBfX3UzMiBtZF9tYWdpYzsKLSBfX3UzMiBtYWpvcl92ZXJzaW9uOwotIF9fdTMyIG1pbm9yX3ZlcnNpb247CisgIF9fdTMyIG1kX21hZ2ljOworICBfX3UzMiBtYWpvcl92ZXJzaW9uOworICBfX3UzMiBtaW5vcl92ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwYXRjaF92ZXJzaW9uOwotIF9fdTMyIGd2YWxpZF93b3JkczsKLSBfX3UzMiBzZXRfdXVpZDA7Ci0gX191MzIgY3RpbWU7CisgIF9fdTMyIHBhdGNoX3ZlcnNpb247CisgIF9fdTMyIGd2YWxpZF93b3JkczsKKyAgX191MzIgc2V0X3V1aWQwOworICBfX3UzMiBjdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGV2ZWw7Ci0gX191MzIgc2l6ZTsKLSBfX3UzMiBucl9kaXNrczsKLSBfX3UzMiByYWlkX2Rpc2tzOworICBfX3UzMiBsZXZlbDsKKyAgX191MzIgc2l6ZTsKKyAgX191MzIgbnJfZGlza3M7CisgIF9fdTMyIHJhaWRfZGlza3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1kX21pbm9yOwotIF9fdTMyIG5vdF9wZXJzaXN0ZW50OwotIF9fdTMyIHNldF91dWlkMTsKLSBfX3UzMiBzZXRfdXVpZDI7CisgIF9fdTMyIG1kX21pbm9yOworICBfX3UzMiBub3RfcGVyc2lzdGVudDsKKyAgX191MzIgc2V0X3V1aWQxOworICBfX3UzMiBzZXRfdXVpZDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNldF91dWlkMzsKLSBfX3UzMiBnc3RhdGVfY3Jlc2VydmVkW01EX1NCX0dFTkVSSUNfQ09OU1RBTlRfV09SRFMgLSAxNl07Ci0gX191MzIgdXRpbWU7Ci0gX191MzIgc3RhdGU7CisgIF9fdTMyIHNldF91dWlkMzsKKyAgX191MzIgZ3N0YXRlX2NyZXNlcnZlZFtNRF9TQl9HRU5FUklDX0NPTlNUQU5UX1dPUkRTIC0gMTZdOworICBfX3UzMiB1dGltZTsKKyAgX191MzIgc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGFjdGl2ZV9kaXNrczsKLSBfX3UzMiB3b3JraW5nX2Rpc2tzOwotIF9fdTMyIGZhaWxlZF9kaXNrczsKLSBfX3UzMiBzcGFyZV9kaXNrczsKKyAgX191MzIgYWN0aXZlX2Rpc2tzOworICBfX3UzMiB3b3JraW5nX2Rpc2tzOworICBfX3UzMiBmYWlsZWRfZGlza3M7CisgIF9fdTMyIHNwYXJlX2Rpc2tzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzYl9jc3VtOworICBfX3UzMiBzYl9jc3VtOwogI2lmIGRlZmluZWQoX19CWVRFX09SREVSKSA/IF9fQllURV9PUkRFUiA9PSBfX0JJR19FTkRJQU4gOiBkZWZpbmVkKF9fQklHX0VORElBTikKLSBfX3UzMiBldmVudHNfaGk7Ci0gX191MzIgZXZlbnRzX2xvOworICBfX3UzMiBldmVudHNfaGk7CisgIF9fdTMyIGV2ZW50c19sbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY3BfZXZlbnRzX2hpOwotIF9fdTMyIGNwX2V2ZW50c19sbzsKLSNlbGlmIGRlZmluZWQoX19CWVRFX09SREVSKSA/IF9fQllURV9PUkRFUiA9PSBfX0xJVFRMRV9FTkRJQU4gOiBkZWZpbmVkKF9fTElUVExFX0VORElBTikKLSBfX3UzMiBldmVudHNfbG87CisgIF9fdTMyIGNwX2V2ZW50c19oaTsKKyAgX191MzIgY3BfZXZlbnRzX2xvOworI2VsaWYgZGVmaW5lZChfX0JZVEVfT1JERVIpP19fQllURV9PUkRFUj09X19MSVRUTEVfRU5ESUFOOmRlZmluZWQoX19MSVRUTEVfRU5ESUFOKQorICBfX3UzMiBldmVudHNfbG87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGV2ZW50c19oaTsKLSBfX3UzMiBjcF9ldmVudHNfbG87Ci0gX191MzIgY3BfZXZlbnRzX2hpOworICBfX3UzMiBldmVudHNfaGk7CisgIF9fdTMyIGNwX2V2ZW50c19sbzsKKyAgX191MzIgY3BfZXZlbnRzX2hpOwogI2Vsc2UKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZXJyb3IgdW5zcGVjaWZpZWQgZW5kaWFubmVzcwogI2VuZGlmCi0gX191MzIgcmVjb3ZlcnlfY3A7Ci0gX191NjQgcmVzaGFwZV9wb3NpdGlvbjsKKyAgX191MzIgcmVjb3ZlcnlfY3A7CisgIF9fdTY0IHJlc2hhcGVfcG9zaXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5ld19sZXZlbDsKLSBfX3UzMiBkZWx0YV9kaXNrczsKLSBfX3UzMiBuZXdfbGF5b3V0OwotIF9fdTMyIG5ld19jaHVuazsKKyAgX191MzIgbmV3X2xldmVsOworICBfX3UzMiBkZWx0YV9kaXNrczsKKyAgX191MzIgbmV3X2xheW91dDsKKyAgX191MzIgbmV3X2NodW5rOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBnc3RhdGVfc3Jlc2VydmVkW01EX1NCX0dFTkVSSUNfU1RBVEVfV09SRFMgLSAxOF07Ci0gX191MzIgbGF5b3V0OwotIF9fdTMyIGNodW5rX3NpemU7Ci0gX191MzIgcm9vdF9wdjsKKyAgX191MzIgZ3N0YXRlX3NyZXNlcnZlZFtNRF9TQl9HRU5FUklDX1NUQVRFX1dPUkRTIC0gMThdOworICBfX3UzMiBsYXlvdXQ7CisgIF9fdTMyIGNodW5rX3NpemU7CisgIF9fdTMyIHJvb3RfcHY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJvb3RfYmxvY2s7Ci0gX191MzIgcHN0YXRlX3Jlc2VydmVkW01EX1NCX1BFUlNPTkFMSVRZX1dPUkRTIC0gNF07Ci0gbWRwX2Rpc2tfdCBkaXNrc1tNRF9TQl9ESVNLU107Ci0gX191MzIgcmVzZXJ2ZWRbTURfU0JfUkVTRVJWRURfV09SRFNdOworICBfX3UzMiByb290X2Jsb2NrOworICBfX3UzMiBwc3RhdGVfcmVzZXJ2ZWRbTURfU0JfUEVSU09OQUxJVFlfV09SRFMgLSA0XTsKKyAgbWRwX2Rpc2tfdCBkaXNrc1tNRF9TQl9ESVNLU107CisgIF9fdTMyIHJlc2VydmVkW01EX1NCX1JFU0VSVkVEX1dPUkRTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gbWRwX2Rpc2tfdCB0aGlzX2Rpc2s7CisgIG1kcF9kaXNrX3QgdGhpc19kaXNrOwogfSBtZHBfc3VwZXJfdDsKLSNkZWZpbmUgTURfU1VQRVJCTE9DS18xX1RJTUVfU0VDX01BU0sgKCgxVUxMPDw0MCkgLSAxKQorI2RlZmluZSBNRF9TVVBFUkJMT0NLXzFfVElNRV9TRUNfTUFTSyAoKDFVTEwgPDwgNDApIC0gMSkKIHN0cnVjdCBtZHBfc3VwZXJibG9ja18xIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIG1hZ2ljOwotIF9fbGUzMiBtYWpvcl92ZXJzaW9uOwotIF9fbGUzMiBmZWF0dXJlX21hcDsKLSBfX2xlMzIgcGFkMDsKKyAgX19sZTMyIG1hZ2ljOworICBfX2xlMzIgbWFqb3JfdmVyc2lvbjsKKyAgX19sZTMyIGZlYXR1cmVfbWFwOworICBfX2xlMzIgcGFkMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzZXRfdXVpZFsxNl07Ci0gY2hhciBzZXRfbmFtZVszMl07Ci0gX19sZTY0IGN0aW1lOwotIF9fbGUzMiBsZXZlbDsKKyAgX191OCBzZXRfdXVpZFsxNl07CisgIGNoYXIgc2V0X25hbWVbMzJdOworICBfX2xlNjQgY3RpbWU7CisgIF9fbGUzMiBsZXZlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIGxheW91dDsKLSBfX2xlNjQgc2l6ZTsKLSBfX2xlMzIgY2h1bmtzaXplOwotIF9fbGUzMiByYWlkX2Rpc2tzOworICBfX2xlMzIgbGF5b3V0OworICBfX2xlNjQgc2l6ZTsKKyAgX19sZTMyIGNodW5rc2l6ZTsKKyAgX19sZTMyIHJhaWRfZGlza3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBiaXRtYXBfb2Zmc2V0OwotIF9fbGUzMiBuZXdfbGV2ZWw7Ci0gX19sZTY0IHJlc2hhcGVfcG9zaXRpb247Ci0gX19sZTMyIGRlbHRhX2Rpc2tzOworICBfX2xlMzIgYml0bWFwX29mZnNldDsKKyAgX19sZTMyIG5ld19sZXZlbDsKKyAgX19sZTY0IHJlc2hhcGVfcG9zaXRpb247CisgIF9fbGUzMiBkZWx0YV9kaXNrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIG5ld19sYXlvdXQ7Ci0gX19sZTMyIG5ld19jaHVuazsKLSBfX2xlMzIgbmV3X29mZnNldDsKLSBfX2xlNjQgZGF0YV9vZmZzZXQ7CisgIF9fbGUzMiBuZXdfbGF5b3V0OworICBfX2xlMzIgbmV3X2NodW5rOworICBfX2xlMzIgbmV3X29mZnNldDsKKyAgX19sZTY0IGRhdGFfb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlNjQgZGF0YV9zaXplOwotIF9fbGU2NCBzdXBlcl9vZmZzZXQ7Ci0gX19sZTY0IHJlY292ZXJ5X29mZnNldDsKLSBfX2xlMzIgZGV2X251bWJlcjsKKyAgX19sZTY0IGRhdGFfc2l6ZTsKKyAgX19sZTY0IHN1cGVyX29mZnNldDsKKyAgX19sZTY0IHJlY292ZXJ5X29mZnNldDsKKyAgX19sZTMyIGRldl9udW1iZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBjbnRfY29ycmVjdGVkX3JlYWQ7Ci0gX191OCBkZXZpY2VfdXVpZFsxNl07Ci0gX191OCBkZXZmbGFnczsKKyAgX19sZTMyIGNudF9jb3JyZWN0ZWRfcmVhZDsKKyAgX191OCBkZXZpY2VfdXVpZFsxNl07CisgIF9fdTggZGV2ZmxhZ3M7CiAjZGVmaW5lIFdyaXRlTW9zdGx5MSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYmJsb2dfc2hpZnQ7Ci0gX19sZTE2IGJibG9nX3NpemU7Ci0gX19sZTMyIGJibG9nX29mZnNldDsKLSBfX2xlNjQgdXRpbWU7CisgIF9fdTggYmJsb2dfc2hpZnQ7CisgIF9fbGUxNiBiYmxvZ19zaXplOworICBfX2xlMzIgYmJsb2dfb2Zmc2V0OworICBfX2xlNjQgdXRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGU2NCBldmVudHM7Ci0gX19sZTY0IHJlc3luY19vZmZzZXQ7Ci0gX19sZTMyIHNiX2NzdW07Ci0gX19sZTMyIG1heF9kZXY7CisgIF9fbGU2NCBldmVudHM7CisgIF9fbGU2NCByZXN5bmNfb2Zmc2V0OworICBfX2xlMzIgc2JfY3N1bTsKKyAgX19sZTMyIG1heF9kZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGFkM1s2NC0zMl07Ci0gX19sZTE2IGRldl9yb2xlc1swXTsKKyAgX191OCBwYWQzWzY0IC0gMzJdOworICBfX2xlMTYgZGV2X3JvbGVzWzBdOwogfTsKICNkZWZpbmUgTURfRkVBVFVSRV9CSVRNQVBfT0ZGU0VUIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xOTQsNiArMTk0LDYgQEAKICNkZWZpbmUgTURfRkVBVFVSRV9SRVNIQVBFX0JBQ0tXQVJEUyAzMgogI2RlZmluZSBNRF9GRUFUVVJFX05FV19PRkZTRVQgNjQKICNkZWZpbmUgTURfRkVBVFVSRV9SRUNPVkVSWV9CSVRNQVAgMTI4Ci0jZGVmaW5lIE1EX0ZFQVRVUkVfQUxMIChNRF9GRUFUVVJFX0JJVE1BUF9PRkZTRVQgICB8TURfRkVBVFVSRV9SRUNPVkVSWV9PRkZTRVQgICB8TURfRkVBVFVSRV9SRVNIQVBFX0FDVElWRSAgIHxNRF9GRUFUVVJFX0JBRF9CTE9DS1MgICB8TURfRkVBVFVSRV9SRVBMQUNFTUVOVCAgIHxNRF9GRUFUVVJFX1JFU0hBUEVfQkFDS1dBUkRTICAgfE1EX0ZFQVRVUkVfTkVXX09GRlNFVCAgIHxNRF9GRUFUVVJFX1JFQ09WRVJZX0JJVE1BUCAgICkKKyNkZWZpbmUgTURfRkVBVFVSRV9BTEwgKE1EX0ZFQVRVUkVfQklUTUFQX09GRlNFVCB8IE1EX0ZFQVRVUkVfUkVDT1ZFUllfT0ZGU0VUIHwgTURfRkVBVFVSRV9SRVNIQVBFX0FDVElWRSB8IE1EX0ZFQVRVUkVfQkFEX0JMT0NLUyB8IE1EX0ZFQVRVUkVfUkVQTEFDRU1FTlQgfCBNRF9GRUFUVVJFX1JFU0hBUEVfQkFDS1dBUkRTIHwgTURfRkVBVFVSRV9ORVdfT0ZGU0VUIHwgTURfRkVBVFVSRV9SRUNPVkVSWV9CSVRNQVApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JhaWQvbWRfdS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yYWlkL21kX3UuaAppbmRleCA5NDAyYzc3Li43YTlmYTYxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JhaWQvbWRfdS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmFpZC9tZF91LmgKQEAgLTIyLDk4ICsyMiw5NCBAQAogI2RlZmluZSBNRF9NSU5PUl9WRVJTSU9OIDkwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNRF9QQVRDSExFVkVMX1ZFUlNJT04gMwotI2RlZmluZSBSQUlEX1ZFUlNJT04gX0lPUiAoTURfTUFKT1IsIDB4MTAsIG1kdV92ZXJzaW9uX3QpCi0jZGVmaW5lIEdFVF9BUlJBWV9JTkZPIF9JT1IgKE1EX01BSk9SLCAweDExLCBtZHVfYXJyYXlfaW5mb190KQotI2RlZmluZSBHRVRfRElTS19JTkZPIF9JT1IgKE1EX01BSk9SLCAweDEyLCBtZHVfZGlza19pbmZvX3QpCisjZGVmaW5lIFJBSURfVkVSU0lPTiBfSU9SKE1EX01BSk9SLCAweDEwLCBtZHVfdmVyc2lvbl90KQorI2RlZmluZSBHRVRfQVJSQVlfSU5GTyBfSU9SKE1EX01BSk9SLCAweDExLCBtZHVfYXJyYXlfaW5mb190KQorI2RlZmluZSBHRVRfRElTS19JTkZPIF9JT1IoTURfTUFKT1IsIDB4MTIsIG1kdV9kaXNrX2luZm9fdCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBSSU5UX1JBSURfREVCVUcgX0lPIChNRF9NQUpPUiwgMHgxMykKLSNkZWZpbmUgUkFJRF9BVVRPUlVOIF9JTyAoTURfTUFKT1IsIDB4MTQpCi0jZGVmaW5lIEdFVF9CSVRNQVBfRklMRSBfSU9SIChNRF9NQUpPUiwgMHgxNSwgbWR1X2JpdG1hcF9maWxlX3QpCi0jZGVmaW5lIENMRUFSX0FSUkFZIF9JTyAoTURfTUFKT1IsIDB4MjApCisjZGVmaW5lIFJBSURfQVVUT1JVTiBfSU8oTURfTUFKT1IsIDB4MTQpCisjZGVmaW5lIEdFVF9CSVRNQVBfRklMRSBfSU9SKE1EX01BSk9SLCAweDE1LCBtZHVfYml0bWFwX2ZpbGVfdCkKKyNkZWZpbmUgQ0xFQVJfQVJSQVkgX0lPKE1EX01BSk9SLCAweDIwKQorI2RlZmluZSBBRERfTkVXX0RJU0sgX0lPVyhNRF9NQUpPUiwgMHgyMSwgbWR1X2Rpc2tfaW5mb190KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQUREX05FV19ESVNLIF9JT1cgKE1EX01BSk9SLCAweDIxLCBtZHVfZGlza19pbmZvX3QpCi0jZGVmaW5lIEhPVF9SRU1PVkVfRElTSyBfSU8gKE1EX01BSk9SLCAweDIyKQotI2RlZmluZSBTRVRfQVJSQVlfSU5GTyBfSU9XIChNRF9NQUpPUiwgMHgyMywgbWR1X2FycmF5X2luZm9fdCkKLSNkZWZpbmUgU0VUX0RJU0tfSU5GTyBfSU8gKE1EX01BSk9SLCAweDI0KQorI2RlZmluZSBIT1RfUkVNT1ZFX0RJU0sgX0lPKE1EX01BSk9SLCAweDIyKQorI2RlZmluZSBTRVRfQVJSQVlfSU5GTyBfSU9XKE1EX01BSk9SLCAweDIzLCBtZHVfYXJyYXlfaW5mb190KQorI2RlZmluZSBTRVRfRElTS19JTkZPIF9JTyhNRF9NQUpPUiwgMHgyNCkKKyNkZWZpbmUgV1JJVEVfUkFJRF9JTkZPIF9JTyhNRF9NQUpPUiwgMHgyNSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFdSSVRFX1JBSURfSU5GTyBfSU8gKE1EX01BSk9SLCAweDI1KQotI2RlZmluZSBVTlBST1RFQ1RfQVJSQVkgX0lPIChNRF9NQUpPUiwgMHgyNikKLSNkZWZpbmUgUFJPVEVDVF9BUlJBWSBfSU8gKE1EX01BSk9SLCAweDI3KQotI2RlZmluZSBIT1RfQUREX0RJU0sgX0lPIChNRF9NQUpPUiwgMHgyOCkKKyNkZWZpbmUgVU5QUk9URUNUX0FSUkFZIF9JTyhNRF9NQUpPUiwgMHgyNikKKyNkZWZpbmUgUFJPVEVDVF9BUlJBWSBfSU8oTURfTUFKT1IsIDB4MjcpCisjZGVmaW5lIEhPVF9BRERfRElTSyBfSU8oTURfTUFKT1IsIDB4MjgpCisjZGVmaW5lIFNFVF9ESVNLX0ZBVUxUWSBfSU8oTURfTUFKT1IsIDB4MjkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTRVRfRElTS19GQVVMVFkgX0lPIChNRF9NQUpPUiwgMHgyOSkKLSNkZWZpbmUgSE9UX0dFTkVSQVRFX0VSUk9SIF9JTyAoTURfTUFKT1IsIDB4MmEpCi0jZGVmaW5lIFNFVF9CSVRNQVBfRklMRSBfSU9XIChNRF9NQUpPUiwgMHgyYiwgaW50KQotI2RlZmluZSBSVU5fQVJSQVkgX0lPVyAoTURfTUFKT1IsIDB4MzAsIG1kdV9wYXJhbV90KQorI2RlZmluZSBIT1RfR0VORVJBVEVfRVJST1IgX0lPKE1EX01BSk9SLCAweDJhKQorI2RlZmluZSBTRVRfQklUTUFQX0ZJTEUgX0lPVyhNRF9NQUpPUiwgMHgyYiwgaW50KQorI2RlZmluZSBSVU5fQVJSQVkgX0lPVyhNRF9NQUpPUiwgMHgzMCwgbWR1X3BhcmFtX3QpCisjZGVmaW5lIFNUT1BfQVJSQVkgX0lPKE1EX01BSk9SLCAweDMyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU1RPUF9BUlJBWSBfSU8gKE1EX01BSk9SLCAweDMyKQotI2RlZmluZSBTVE9QX0FSUkFZX1JPIF9JTyAoTURfTUFKT1IsIDB4MzMpCi0jZGVmaW5lIFJFU1RBUlRfQVJSQVlfUlcgX0lPIChNRF9NQUpPUiwgMHgzNCkKKyNkZWZpbmUgU1RPUF9BUlJBWV9STyBfSU8oTURfTUFKT1IsIDB4MzMpCisjZGVmaW5lIFJFU1RBUlRfQVJSQVlfUlcgX0lPKE1EX01BSk9SLCAweDM0KQogI2RlZmluZSBNZHBNaW5vclNoaWZ0IDYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBtZHVfdmVyc2lvbl9zIHsKLSBpbnQgbWFqb3I7Ci0gaW50IG1pbm9yOwotIGludCBwYXRjaGxldmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IG1ham9yOworICBpbnQgbWlub3I7CisgIGludCBwYXRjaGxldmVsOwogfSBtZHVfdmVyc2lvbl90OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IG1kdV9hcnJheV9pbmZvX3MgewotIGludCBtYWpvcl92ZXJzaW9uOwotIGludCBtaW5vcl92ZXJzaW9uOworICBpbnQgbWFqb3JfdmVyc2lvbjsKKyAgaW50IG1pbm9yX3ZlcnNpb247CisgIGludCBwYXRjaF92ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcGF0Y2hfdmVyc2lvbjsKLSBpbnQgY3RpbWU7Ci0gaW50IGxldmVsOwotIGludCBzaXplOworICBpbnQgY3RpbWU7CisgIGludCBsZXZlbDsKKyAgaW50IHNpemU7CisgIGludCBucl9kaXNrczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG5yX2Rpc2tzOwotIGludCByYWlkX2Rpc2tzOwotIGludCBtZF9taW5vcjsKLSBpbnQgbm90X3BlcnNpc3RlbnQ7CisgIGludCByYWlkX2Rpc2tzOworICBpbnQgbWRfbWlub3I7CisgIGludCBub3RfcGVyc2lzdGVudDsKKyAgaW50IHV0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdXRpbWU7Ci0gaW50IHN0YXRlOwotIGludCBhY3RpdmVfZGlza3M7Ci0gaW50IHdvcmtpbmdfZGlza3M7CisgIGludCBzdGF0ZTsKKyAgaW50IGFjdGl2ZV9kaXNrczsKKyAgaW50IHdvcmtpbmdfZGlza3M7CisgIGludCBmYWlsZWRfZGlza3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBmYWlsZWRfZGlza3M7Ci0gaW50IHNwYXJlX2Rpc2tzOwotIGludCBsYXlvdXQ7Ci0gaW50IGNodW5rX3NpemU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBpbnQgc3BhcmVfZGlza3M7CisgIGludCBsYXlvdXQ7CisgIGludCBjaHVua19zaXplOwogfSBtZHVfYXJyYXlfaW5mb190OwotI2RlZmluZSBMRVZFTF9NVUxUSVBBVEggKC00KQotI2RlZmluZSBMRVZFTF9MSU5FQVIgKC0xKQotI2RlZmluZSBMRVZFTF9GQVVMVFkgKC01KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTEVWRUxfTk9ORSAoLTEwMDAwMDApCisjZGVmaW5lIExFVkVMX01VTFRJUEFUSCAoLSA0KQorI2RlZmluZSBMRVZFTF9MSU5FQVIgKC0gMSkKKyNkZWZpbmUgTEVWRUxfRkFVTFRZICgtIDUpCisjZGVmaW5lIExFVkVMX05PTkUgKC0gMTAwMDAwMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBtZHVfZGlza19pbmZvX3MgewotIGludCBudW1iZXI7Ci0gaW50IG1ham9yOworICBpbnQgbnVtYmVyOworICBpbnQgbWFqb3I7CisgIGludCBtaW5vcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG1pbm9yOwotIGludCByYWlkX2Rpc2s7Ci0gaW50IHN0YXRlOworICBpbnQgcmFpZF9kaXNrOworICBpbnQgc3RhdGU7CiB9IG1kdV9kaXNrX2luZm9fdDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHN0cnVjdCBtZHVfc3RhcnRfaW5mb19zIHsKLSBpbnQgbWFqb3I7Ci0gaW50IG1pbm9yOwotIGludCByYWlkX2Rpc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzdGF0ZTsKKyAgaW50IG1ham9yOworICBpbnQgbWlub3I7CisgIGludCByYWlkX2Rpc2s7CisgIGludCBzdGF0ZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IG1kdV9zdGFydF9pbmZvX3Q7Ci10eXBlZGVmIHN0cnVjdCBtZHVfYml0bWFwX2ZpbGVfcwotewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHBhdGhuYW1lWzQwOTZdOwordHlwZWRlZiBzdHJ1Y3QgbWR1X2JpdG1hcF9maWxlX3MgeworICBjaGFyIHBhdGhuYW1lWzQwOTZdOwogfSBtZHVfYml0bWFwX2ZpbGVfdDsKLXR5cGVkZWYgc3RydWN0IG1kdV9wYXJhbV9zCi17CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwZXJzb25hbGl0eTsKLSBpbnQgY2h1bmtfc2l6ZTsKLSBpbnQgbWF4X2ZhdWx0OwordHlwZWRlZiBzdHJ1Y3QgbWR1X3BhcmFtX3MgeworICBpbnQgcGVyc29uYWxpdHk7CisgIGludCBjaHVua19zaXplOworICBpbnQgbWF4X2ZhdWx0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gbWR1X3BhcmFtX3Q7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JhbmRvbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yYW5kb20uaAppbmRleCA2MjE1ZDA4Li4yMjMzMmQxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JhbmRvbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmFuZG9tLmgKQEAgLTIyLDE4ICsyMiwyMCBAQAogI2luY2x1ZGUgPGxpbnV4L2lvY3RsLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L2lycW5yLmg+Ci0jZGVmaW5lIFJOREdFVEVOVENOVCBfSU9SKCAnUicsIDB4MDAsIGludCApCi0jZGVmaW5lIFJOREFERFRPRU5UQ05UIF9JT1coICdSJywgMHgwMSwgaW50ICkKLSNkZWZpbmUgUk5ER0VUUE9PTCBfSU9SKCAnUicsIDB4MDIsIGludCBbMl0gKQorI2RlZmluZSBSTkRHRVRFTlRDTlQgX0lPUignUicsIDB4MDAsIGludCkKKyNkZWZpbmUgUk5EQUREVE9FTlRDTlQgX0lPVygnUicsIDB4MDEsIGludCkKKyNkZWZpbmUgUk5ER0VUUE9PTCBfSU9SKCdSJywgMHgwMiwgaW50WzJdKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUk5EQURERU5UUk9QWSBfSU9XKCAnUicsIDB4MDMsIGludCBbMl0gKQotI2RlZmluZSBSTkRaQVBFTlRDTlQgX0lPKCAnUicsIDB4MDQgKQotI2RlZmluZSBSTkRDTEVBUlBPT0wgX0lPKCAnUicsIDB4MDYgKQorI2RlZmluZSBSTkRBRERFTlRST1BZIF9JT1coJ1InLCAweDAzLCBpbnRbMl0pCisjZGVmaW5lIFJORFpBUEVOVENOVCBfSU8oJ1InLCAweDA0KQorI2RlZmluZSBSTkRDTEVBUlBPT0wgX0lPKCdSJywgMHgwNikKIHN0cnVjdCByYW5kX3Bvb2xfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBlbnRyb3B5X2NvdW50OwotIGludCBidWZfc2l6ZTsKLSBfX3UzMiBidWZbMF07CisgIGludCBlbnRyb3B5X2NvdW50OworICBpbnQgYnVmX3NpemU7CisgIF9fdTMyIGJ1ZlswXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBHUk5EX05PTkJMT0NLIDB4MDAwMQorI2RlZmluZSBHUk5EX1JBTkRPTSAweDAwMDIKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yYXcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmF3LmgKaW5kZXggNTJlMmJhOS4uMjMyMDcyNyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yYXcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jhdy5oCkBAIC0xOSwxNiArMTksMTUgQEAKICNpZm5kZWYgX19MSU5VWF9SQVdfSAogI2RlZmluZSBfX0xJTlVYX1JBV19ICiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KLSNkZWZpbmUgUkFXX1NFVEJJTkQgX0lPKCAweGFjLCAwICkKKyNkZWZpbmUgUkFXX1NFVEJJTkQgX0lPKDB4YWMsIDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBSQVdfR0VUQklORCBfSU8oIDB4YWMsIDEgKQotc3RydWN0IHJhd19jb25maWdfcmVxdWVzdAotewotIGludCByYXdfbWlub3I7CisjZGVmaW5lIFJBV19HRVRCSU5EIF9JTygweGFjLCAxKQorc3RydWN0IHJhd19jb25maWdfcmVxdWVzdCB7CisgIGludCByYXdfbWlub3I7CisgIF9fdTY0IGJsb2NrX21ham9yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBibG9ja19tYWpvcjsKLSBfX3U2NCBibG9ja19taW5vcjsKKyAgX191NjQgYmxvY2tfbWlub3I7CiB9OwogI2RlZmluZSBNQVhfUkFXX01JTk9SUyBDT05GSUdfTUFYX1JBV19ERVZTCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yZHMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmRzLmgKaW5kZXggOThjNTY0NC4uNjZjYjkwNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yZHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jkcy5oCkBAIC01Niw4ICs1Niw4IEBACiAjZGVmaW5lIFJEU19JTkZPX0xBU1QgMTAwMTAKIHN0cnVjdCByZHNfaW5mb19jb3VudGVyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDhfdCBuYW1lWzMyXTsKLSB1aW50NjRfdCB2YWx1ZTsKKyAgdWludDhfdCBuYW1lWzMyXTsKKyAgdWludDY0X3QgdmFsdWU7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBSRFNfSU5GT19DT05ORUNUSU9OX0ZMQUdfU0VORElORyAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNjYsNjcgKzY2LDY3IEBACiAjZGVmaW5lIFRSQU5TTkFNU0laIDE2CiBzdHJ1Y3QgcmRzX2luZm9fY29ubmVjdGlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IG5leHRfdHhfc2VxOwotIHVpbnQ2NF90IG5leHRfcnhfc2VxOwotIF9fYmUzMiBsYWRkcjsKLSBfX2JlMzIgZmFkZHI7CisgIHVpbnQ2NF90IG5leHRfdHhfc2VxOworICB1aW50NjRfdCBuZXh0X3J4X3NlcTsKKyAgX19iZTMyIGxhZGRyOworICBfX2JlMzIgZmFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ4X3QgdHJhbnNwb3J0W1RSQU5TTkFNU0laXTsKLSB1aW50OF90IGZsYWdzOworICB1aW50OF90IHRyYW5zcG9ydFtUUkFOU05BTVNJWl07CisgIHVpbnQ4X3QgZmxhZ3M7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBSRFNfSU5GT19NRVNTQUdFX0ZMQUdfQUNLIDB4MDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJEU19JTkZPX01FU1NBR0VfRkxBR19GQVNUX0FDSyAweDAyCiBzdHJ1Y3QgcmRzX2luZm9fbWVzc2FnZSB7Ci0gdWludDY0X3Qgc2VxOwotIHVpbnQzMl90IGxlbjsKKyAgdWludDY0X3Qgc2VxOworICB1aW50MzJfdCBsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBsYWRkcjsKLSBfX2JlMzIgZmFkZHI7Ci0gX19iZTE2IGxwb3J0OwotIF9fYmUxNiBmcG9ydDsKKyAgX19iZTMyIGxhZGRyOworICBfX2JlMzIgZmFkZHI7CisgIF9fYmUxNiBscG9ydDsKKyAgX19iZTE2IGZwb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50OF90IGZsYWdzOworICB1aW50OF90IGZsYWdzOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCByZHNfaW5mb19zb2NrZXQgewotIHVpbnQzMl90IHNuZGJ1ZjsKKyAgdWludDMyX3Qgc25kYnVmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgYm91bmRfYWRkcjsKLSBfX2JlMzIgY29ubmVjdGVkX2FkZHI7Ci0gX19iZTE2IGJvdW5kX3BvcnQ7Ci0gX19iZTE2IGNvbm5lY3RlZF9wb3J0OworICBfX2JlMzIgYm91bmRfYWRkcjsKKyAgX19iZTMyIGNvbm5lY3RlZF9hZGRyOworICBfX2JlMTYgYm91bmRfcG9ydDsKKyAgX19iZTE2IGNvbm5lY3RlZF9wb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCByY3ZidWY7Ci0gdWludDY0X3QgaW51bTsKKyAgdWludDMyX3QgcmN2YnVmOworICB1aW50NjRfdCBpbnVtOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCByZHNfaW5mb190Y3Bfc29ja2V0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIGxvY2FsX2FkZHI7Ci0gX19iZTE2IGxvY2FsX3BvcnQ7Ci0gX19iZTMyIHBlZXJfYWRkcjsKLSBfX2JlMTYgcGVlcl9wb3J0OworICBfX2JlMzIgbG9jYWxfYWRkcjsKKyAgX19iZTE2IGxvY2FsX3BvcnQ7CisgIF9fYmUzMiBwZWVyX2FkZHI7CisgIF9fYmUxNiBwZWVyX3BvcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGhkcl9yZW07Ci0gdWludDY0X3QgZGF0YV9yZW07Ci0gdWludDMyX3QgbGFzdF9zZW50X254dDsKLSB1aW50MzJfdCBsYXN0X2V4cGVjdGVkX3VuYTsKKyAgdWludDY0X3QgaGRyX3JlbTsKKyAgdWludDY0X3QgZGF0YV9yZW07CisgIHVpbnQzMl90IGxhc3Rfc2VudF9ueHQ7CisgIHVpbnQzMl90IGxhc3RfZXhwZWN0ZWRfdW5hOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBsYXN0X3NlZW5fdW5hOworICB1aW50MzJfdCBsYXN0X3NlZW5fdW5hOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgUkRTX0lCX0dJRF9MRU4gMTYKIHN0cnVjdCByZHNfaW5mb19yZG1hX2Nvbm5lY3Rpb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgc3JjX2FkZHI7Ci0gX19iZTMyIGRzdF9hZGRyOwotIHVpbnQ4X3Qgc3JjX2dpZFtSRFNfSUJfR0lEX0xFTl07Ci0gdWludDhfdCBkc3RfZ2lkW1JEU19JQl9HSURfTEVOXTsKKyAgX19iZTMyIHNyY19hZGRyOworICBfX2JlMzIgZHN0X2FkZHI7CisgIHVpbnQ4X3Qgc3JjX2dpZFtSRFNfSUJfR0lEX0xFTl07CisgIHVpbnQ4X3QgZHN0X2dpZFtSRFNfSUJfR0lEX0xFTl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IG1heF9zZW5kX3dyOwotIHVpbnQzMl90IG1heF9yZWN2X3dyOwotIHVpbnQzMl90IG1heF9zZW5kX3NnZTsKLSB1aW50MzJfdCByZG1hX21yX21heDsKKyAgdWludDMyX3QgbWF4X3NlbmRfd3I7CisgIHVpbnQzMl90IG1heF9yZWN2X3dyOworICB1aW50MzJfdCBtYXhfc2VuZF9zZ2U7CisgIHVpbnQzMl90IHJkbWFfbXJfbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCByZG1hX21yX3NpemU7CisgIHVpbnQzMl90IHJkbWFfbXJfc2l6ZTsKIH07CiAjZGVmaW5lIFJEU19DT05HX01PTklUT1JfU0laRSA2NAogI2RlZmluZSBSRFNfQ09OR19NT05JVE9SX0JJVChwb3J0KSAoKCh1bnNpZ25lZCBpbnQpIHBvcnQpICUgUkRTX0NPTkdfTU9OSVRPUl9TSVpFKQpAQCAtMTM0LDc1ICsxMzQsNzUgQEAKICNkZWZpbmUgUkRTX0NPTkdfTU9OSVRPUl9NQVNLKHBvcnQpICgxVUxMIDw8IFJEU19DT05HX01PTklUT1JfQklUKHBvcnQpKQogdHlwZWRlZiB1aW50NjRfdCByZHNfcmRtYV9jb29raWVfdDsKIHN0cnVjdCByZHNfaW92ZWMgewotIHVpbnQ2NF90IGFkZHI7CisgIHVpbnQ2NF90IGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGJ5dGVzOworICB1aW50NjRfdCBieXRlczsKIH07CiBzdHJ1Y3QgcmRzX2dldF9tcl9hcmdzIHsKLSBzdHJ1Y3QgcmRzX2lvdmVjIHZlYzsKKyAgc3RydWN0IHJkc19pb3ZlYyB2ZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGNvb2tpZV9hZGRyOwotIHVpbnQ2NF90IGZsYWdzOworICB1aW50NjRfdCBjb29raWVfYWRkcjsKKyAgdWludDY0X3QgZmxhZ3M7CiB9Owogc3RydWN0IHJkc19nZXRfbXJfZm9yX2Rlc3RfYXJncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIGRlc3RfYWRkcjsKLSBzdHJ1Y3QgcmRzX2lvdmVjIHZlYzsKLSB1aW50NjRfdCBjb29raWVfYWRkcjsKLSB1aW50NjRfdCBmbGFnczsKKyAgc3RydWN0IHNvY2thZGRyX3N0b3JhZ2UgZGVzdF9hZGRyOworICBzdHJ1Y3QgcmRzX2lvdmVjIHZlYzsKKyAgdWludDY0X3QgY29va2llX2FkZHI7CisgIHVpbnQ2NF90IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgcmRzX2ZyZWVfbXJfYXJncyB7Ci0gcmRzX3JkbWFfY29va2llX3QgY29va2llOwotIHVpbnQ2NF90IGZsYWdzOworICByZHNfcmRtYV9jb29raWVfdCBjb29raWU7CisgIHVpbnQ2NF90IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgcmRzX3JkbWFfYXJncyB7Ci0gcmRzX3JkbWFfY29va2llX3QgY29va2llOwotIHN0cnVjdCByZHNfaW92ZWMgcmVtb3RlX3ZlYzsKKyAgcmRzX3JkbWFfY29va2llX3QgY29va2llOworICBzdHJ1Y3QgcmRzX2lvdmVjIHJlbW90ZV92ZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGxvY2FsX3ZlY19hZGRyOwotIHVpbnQ2NF90IG5yX2xvY2FsOwotIHVpbnQ2NF90IGZsYWdzOwotIHVpbnQ2NF90IHVzZXJfdG9rZW47CisgIHVpbnQ2NF90IGxvY2FsX3ZlY19hZGRyOworICB1aW50NjRfdCBucl9sb2NhbDsKKyAgdWludDY0X3QgZmxhZ3M7CisgIHVpbnQ2NF90IHVzZXJfdG9rZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCByZHNfYXRvbWljX2FyZ3MgewotIHJkc19yZG1hX2Nvb2tpZV90IGNvb2tpZTsKLSB1aW50NjRfdCBsb2NhbF9hZGRyOworICByZHNfcmRtYV9jb29raWVfdCBjb29raWU7CisgIHVpbnQ2NF90IGxvY2FsX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IHJlbW90ZV9hZGRyOwotIHVuaW9uIHsKLSBzdHJ1Y3QgewotIHVpbnQ2NF90IGNvbXBhcmU7CisgIHVpbnQ2NF90IHJlbW90ZV9hZGRyOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIHVpbnQ2NF90IGNvbXBhcmU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IHN3YXA7Ci0gfSBjc3dwOwotIHN0cnVjdCB7Ci0gdWludDY0X3QgYWRkOworICAgICAgdWludDY0X3Qgc3dhcDsKKyAgICB9IGNzd3A7CisgICAgc3RydWN0IHsKKyAgICAgIHVpbnQ2NF90IGFkZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBmYWRkOwotIHN0cnVjdCB7Ci0gdWludDY0X3QgY29tcGFyZTsKLSB1aW50NjRfdCBzd2FwOworICAgIH0gZmFkZDsKKyAgICBzdHJ1Y3QgeworICAgICAgdWludDY0X3QgY29tcGFyZTsKKyAgICAgIHVpbnQ2NF90IHN3YXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGNvbXBhcmVfbWFzazsKLSB1aW50NjRfdCBzd2FwX21hc2s7Ci0gfSBtX2Nzd3A7Ci0gc3RydWN0IHsKKyAgICAgIHVpbnQ2NF90IGNvbXBhcmVfbWFzazsKKyAgICAgIHVpbnQ2NF90IHN3YXBfbWFzazsKKyAgICB9IG1fY3N3cDsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCBhZGQ7Ci0gdWludDY0X3Qgbm9jYXJyeV9tYXNrOwotIH0gbV9mYWRkOwotIH07CisgICAgICB1aW50NjRfdCBhZGQ7CisgICAgICB1aW50NjRfdCBub2NhcnJ5X21hc2s7CisgICAgfSBtX2ZhZGQ7CisgIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IGZsYWdzOwotIHVpbnQ2NF90IHVzZXJfdG9rZW47CisgIHVpbnQ2NF90IGZsYWdzOworICB1aW50NjRfdCB1c2VyX3Rva2VuOwogfTsKIHN0cnVjdCByZHNfcmRtYV9ub3RpZnkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50NjRfdCB1c2VyX3Rva2VuOwotIGludDMyX3Qgc3RhdHVzOworICB1aW50NjRfdCB1c2VyX3Rva2VuOworICBpbnQzMl90IHN0YXR1czsKIH07CiAjZGVmaW5lIFJEU19SRE1BX1NVQ0NFU1MgMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmVpc2VyZnNfZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmVpc2VyZnNfZnMuaAppbmRleCA1MDExYjExLi5iMGVjMDNiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JlaXNlcmZzX2ZzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yZWlzZXJmc19mcy5oCkBAIC0yMSw3ICsyMSw3IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNpbmNsdWRlIDxsaW51eC9tYWdpYy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUkVJU0VSRlNfSU9DX1VOUEFDSyBfSU9XKDB4Q0QsMSxsb25nKQorI2RlZmluZSBSRUlTRVJGU19JT0NfVU5QQUNLIF9JT1coMHhDRCwgMSwgbG9uZykKICNkZWZpbmUgUkVJU0VSRlNfSU9DX0dFVEZMQUdTIEZTX0lPQ19HRVRGTEFHUwogI2RlZmluZSBSRUlTRVJGU19JT0NfU0VURkxBR1MgRlNfSU9DX1NFVEZMQUdTCiAjZGVmaW5lIFJFSVNFUkZTX0lPQ19HRVRWRVJTSU9OIEZTX0lPQ19HRVRWRVJTSU9OCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JlaXNlcmZzX3hhdHRyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JlaXNlcmZzX3hhdHRyLmgKaW5kZXggOTA1NmRlMi4uY2MxYmY5ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yZWlzZXJmc194YXR0ci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmVpc2VyZnNfeGF0dHIuaApAQCAtMjIsMTQgKzIyLDE0IEBACiAjZGVmaW5lIFJFSVNFUkZTX1hBVFRSX01BR0lDIDB4NTI0NjU4NDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcmVpc2VyZnNfeGF0dHJfaGVhZGVyIHsKLSBfX2xlMzIgaF9tYWdpYzsKLSBfX2xlMzIgaF9oYXNoOworICBfX2xlMzIgaF9tYWdpYzsKKyAgX19sZTMyIGhfaGFzaDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJlaXNlcmZzX3NlY3VyaXR5X2hhbmRsZSB7Ci0gY29uc3QgY2hhciAqbmFtZTsKLSB2b2lkICp2YWx1ZTsKLSBzaXplX3QgbGVuZ3RoOworICBjb25zdCBjaGFyICogbmFtZTsKKyAgdm9pZCAqIHZhbHVlOworICBzaXplX3QgbGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmVzb3VyY2UuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmVzb3VyY2UuaAppbmRleCA5ZDI2MGMyLi5lYWY5ZmM0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jlc291cmNlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yZXNvdXJjZS5oCkBAIC0yMiw1MiArMjIsNTIgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlVTQUdFX1NFTEYgMAotI2RlZmluZSBSVVNBR0VfQ0hJTERSRU4gKC0xKQotI2RlZmluZSBSVVNBR0VfQk9USCAoLTIpCisjZGVmaW5lIFJVU0FHRV9DSElMRFJFTiAoLSAxKQorI2RlZmluZSBSVVNBR0VfQk9USCAoLSAyKQogI2RlZmluZSBSVVNBR0VfVEhSRUFEIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcnVzYWdlIHsKLSBzdHJ1Y3QgdGltZXZhbCBydV91dGltZTsKLSBzdHJ1Y3QgdGltZXZhbCBydV9zdGltZTsKLSBfX2tlcm5lbF9sb25nX3QgcnVfbWF4cnNzOworICBzdHJ1Y3QgdGltZXZhbCBydV91dGltZTsKKyAgc3RydWN0IHRpbWV2YWwgcnVfc3RpbWU7CisgIF9fa2VybmVsX2xvbmdfdCBydV9tYXhyc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX2xvbmdfdCBydV9peHJzczsKLSBfX2tlcm5lbF9sb25nX3QgcnVfaWRyc3M7Ci0gX19rZXJuZWxfbG9uZ190IHJ1X2lzcnNzOwotIF9fa2VybmVsX2xvbmdfdCBydV9taW5mbHQ7CisgIF9fa2VybmVsX2xvbmdfdCBydV9peHJzczsKKyAgX19rZXJuZWxfbG9uZ190IHJ1X2lkcnNzOworICBfX2tlcm5lbF9sb25nX3QgcnVfaXNyc3M7CisgIF9fa2VybmVsX2xvbmdfdCBydV9taW5mbHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX2xvbmdfdCBydV9tYWpmbHQ7Ci0gX19rZXJuZWxfbG9uZ190IHJ1X25zd2FwOwotIF9fa2VybmVsX2xvbmdfdCBydV9pbmJsb2NrOwotIF9fa2VybmVsX2xvbmdfdCBydV9vdWJsb2NrOworICBfX2tlcm5lbF9sb25nX3QgcnVfbWFqZmx0OworICBfX2tlcm5lbF9sb25nX3QgcnVfbnN3YXA7CisgIF9fa2VybmVsX2xvbmdfdCBydV9pbmJsb2NrOworICBfX2tlcm5lbF9sb25nX3QgcnVfb3VibG9jazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfbG9uZ190IHJ1X21zZ3NuZDsKLSBfX2tlcm5lbF9sb25nX3QgcnVfbXNncmN2OwotIF9fa2VybmVsX2xvbmdfdCBydV9uc2lnbmFsczsKLSBfX2tlcm5lbF9sb25nX3QgcnVfbnZjc3c7CisgIF9fa2VybmVsX2xvbmdfdCBydV9tc2dzbmQ7CisgIF9fa2VybmVsX2xvbmdfdCBydV9tc2dyY3Y7CisgIF9fa2VybmVsX2xvbmdfdCBydV9uc2lnbmFsczsKKyAgX19rZXJuZWxfbG9uZ190IHJ1X252Y3N3OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9sb25nX3QgcnVfbml2Y3N3OworICBfX2tlcm5lbF9sb25nX3QgcnVfbml2Y3N3OwogfTsKIHN0cnVjdCBybGltaXQgewotIF9fa2VybmVsX3Vsb25nX3QgcmxpbV9jdXI7CisgIF9fa2VybmVsX3Vsb25nX3QgcmxpbV9jdXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3Vsb25nX3QgcmxpbV9tYXg7CisgIF9fa2VybmVsX3Vsb25nX3QgcmxpbV9tYXg7CiB9OwogI2RlZmluZSBSTElNNjRfSU5GSU5JVFkgKH4wVUxMKQogc3RydWN0IHJsaW1pdDY0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmxpbV9jdXI7Ci0gX191NjQgcmxpbV9tYXg7CisgIF9fdTY0IHJsaW1fY3VyOworICBfX3U2NCBybGltX21heDsKIH07Ci0jZGVmaW5lIFBSSU9fTUlOICgtMjApCisjZGVmaW5lIFBSSU9fTUlOICgtIDIwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUFJJT19NQVggMjAKICNkZWZpbmUgUFJJT19QUk9DRVNTIDAKICNkZWZpbmUgUFJJT19QR1JQIDEKICNkZWZpbmUgUFJJT19VU0VSIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9TVEtfTElNICg4KjEwMjQqMTAyNCkKLSNkZWZpbmUgTUxPQ0tfTElNSVQgKChQQUdFX1NJWkUgPiA2NCoxMDI0KSA/IFBBR0VfU0laRSA6IDY0KjEwMjQpCisjZGVmaW5lIF9TVEtfTElNICg4ICogMTAyNCAqIDEwMjQpCisjZGVmaW5lIE1MT0NLX0xJTUlUICgoUEFHRV9TSVpFID4gNjQgKiAxMDI0KSA/IFBBR0VfU0laRSA6IDY0ICogMTAyNCkKICNpbmNsdWRlIDxhc20vcmVzb3VyY2UuaD4KICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmZraWxsLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jma2lsbC5oCmluZGV4IDkxNGNjMWQuLjU3MzgwNGMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcmZraWxsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yZmtpbGwuaApAQCAtMjQsMzQgKzI0LDM0IEBACiAjZGVmaW5lIFJGS0lMTF9TVEFURV9VTkJMT0NLRUQgMQogI2RlZmluZSBSRktJTExfU1RBVEVfSEFSRF9CTE9DS0VEIDIKIGVudW0gcmZraWxsX3R5cGUgewotIFJGS0lMTF9UWVBFX0FMTCA9IDAsCisgIFJGS0lMTF9UWVBFX0FMTCA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJGS0lMTF9UWVBFX1dMQU4sCi0gUkZLSUxMX1RZUEVfQkxVRVRPT1RILAotIFJGS0lMTF9UWVBFX1VXQiwKLSBSRktJTExfVFlQRV9XSU1BWCwKKyAgUkZLSUxMX1RZUEVfV0xBTiwKKyAgUkZLSUxMX1RZUEVfQkxVRVRPT1RILAorICBSRktJTExfVFlQRV9VV0IsCisgIFJGS0lMTF9UWVBFX1dJTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSRktJTExfVFlQRV9XV0FOLAotIFJGS0lMTF9UWVBFX0dQUywKLSBSRktJTExfVFlQRV9GTSwKLSBSRktJTExfVFlQRV9ORkMsCisgIFJGS0lMTF9UWVBFX1dXQU4sCisgIFJGS0lMTF9UWVBFX0dQUywKKyAgUkZLSUxMX1RZUEVfRk0sCisgIFJGS0lMTF9UWVBFX05GQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTlVNX1JGS0lMTF9UWVBFUywKKyAgTlVNX1JGS0lMTF9UWVBFUywKIH07CiBlbnVtIHJma2lsbF9vcGVyYXRpb24gewotIFJGS0lMTF9PUF9BREQgPSAwLAorICBSRktJTExfT1BfQUREID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUkZLSUxMX09QX0RFTCwKLSBSRktJTExfT1BfQ0hBTkdFLAotIFJGS0lMTF9PUF9DSEFOR0VfQUxMLAorICBSRktJTExfT1BfREVMLAorICBSRktJTExfT1BfQ0hBTkdFLAorICBSRktJTExfT1BfQ0hBTkdFX0FMTCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJma2lsbF9ldmVudCB7Ci0gX191MzIgaWR4OwotIF9fdTggdHlwZTsKLSBfX3U4IG9wOworICBfX3UzMiBpZHg7CisgIF9fdTggdHlwZTsKKyAgX191OCBvcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzb2Z0LCBoYXJkOworICBfX3U4IHNvZnQsIGhhcmQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBSRktJTExfRVZFTlRfU0laRV9WMSA4CiAjZGVmaW5lIFJGS0lMTF9JT0NfTUFHSUMgJ1InCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JvbWZzX2ZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JvbWZzX2ZzLmgKaW5kZXggZDRlZmY4Zi4uMmEwOTU3ZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yb21mc19mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcm9tZnNfZnMuaApAQCAtMjMsMzIgKzIzLDMyIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBST01CU0laRSBCTE9DS19TSVpFCiAjZGVmaW5lIFJPTUJTQklUUyBCTE9DS19TSVpFX0JJVFMKLSNkZWZpbmUgUk9NQk1BU0sgKFJPTUJTSVpFLTEpCisjZGVmaW5lIFJPTUJNQVNLIChST01CU0laRSAtIDEpCiAjZGVmaW5lIFJPTUZTX01BR0lDIDB4NzI3NQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUk9NRlNfTUFYRk4gMTI4Ci0jZGVmaW5lIF9fbWt3KGgsbCkgKCgoaCkmMHgwMGZmKTw8IDh8KChsKSYweDAwZmYpKQotI2RlZmluZSBfX21rbChoLGwpICgoKGgpJjB4ZmZmZik8PDE2fCgobCkmMHhmZmZmKSkKLSNkZWZpbmUgX19tazQoYSxiLGMsZCkgY3B1X3RvX2JlMzIoX19ta2woX19ta3coYSxiKSxfX21rdyhjLGQpKSkKKyNkZWZpbmUgX19ta3coaCxsKSAoKChoKSAmIDB4MDBmZikgPDwgOCB8ICgobCkgJiAweDAwZmYpKQorI2RlZmluZSBfX21rbChoLGwpICgoKGgpICYgMHhmZmZmKSA8PCAxNiB8ICgobCkgJiAweGZmZmYpKQorI2RlZmluZSBfX21rNChhLGIsYyxkKSBjcHVfdG9fYmUzMihfX21rbChfX21rdyhhLCBiKSwgX19ta3coYywgZCkpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUk9NU0JfV09SRDAgX19tazQoJy0nLCdyJywnbycsJ20nKQotI2RlZmluZSBST01TQl9XT1JEMSBfX21rNCgnMScsJ2YnLCdzJywnLScpCisjZGVmaW5lIFJPTVNCX1dPUkQwIF9fbWs0KCctJywgJ3InLCAnbycsICdtJykKKyNkZWZpbmUgUk9NU0JfV09SRDEgX19tazQoJzEnLCAnZicsICdzJywgJy0nKQogc3RydWN0IHJvbWZzX3N1cGVyX2Jsb2NrIHsKLSBfX2JlMzIgd29yZDA7CisgIF9fYmUzMiB3b3JkMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHdvcmQxOwotIF9fYmUzMiBzaXplOwotIF9fYmUzMiBjaGVja3N1bTsKLSBjaGFyIG5hbWVbMF07CisgIF9fYmUzMiB3b3JkMTsKKyAgX19iZTMyIHNpemU7CisgIF9fYmUzMiBjaGVja3N1bTsKKyAgY2hhciBuYW1lWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgcm9tZnNfaW5vZGUgewotIF9fYmUzMiBuZXh0OwotIF9fYmUzMiBzcGVjOworICBfX2JlMzIgbmV4dDsKKyAgX19iZTMyIHNwZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBzaXplOwotIF9fYmUzMiBjaGVja3N1bTsKLSBjaGFyIG5hbWVbMF07CisgIF9fYmUzMiBzaXplOworICBfX2JlMzIgY2hlY2tzdW07CisgIGNoYXIgbmFtZVswXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBST01GSF9UWVBFIDcKQEAgLTY0LDcgKzY0LDcgQEAKICNkZWZpbmUgUk9NRkhfRklGIDcKICNkZWZpbmUgUk9NRkhfRVhFQyA4CiAjZGVmaW5lIFJPTUZIX1NJWkUgMTYKLSNkZWZpbmUgUk9NRkhfUEFEIChST01GSF9TSVpFLTEpCisjZGVmaW5lIFJPTUZIX1BBRCAoUk9NRkhfU0laRSAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBST01GSF9NQVNLICh+Uk9NRkhfUEFEKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Jvc2UuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcm9zZS5oCmluZGV4IDlmNDUwOTIuLmJhOTFmNDkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcm9zZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcm9zZS5oCkBAIC0zMiwxNiArMzIsMTYgQEAKICNkZWZpbmUgUk9TRV9RQklUSU5DTCA2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBST1NFX0hPTERCQUNLIDcKLSNkZWZpbmUgU0lPQ1JTR0NBVVNFIChTSU9DUFJPVE9QUklWQVRFKzApCi0jZGVmaW5lIFNJT0NSU1NDQVVTRSAoU0lPQ1BST1RPUFJJVkFURSsxKQotI2RlZmluZSBTSU9DUlNMMkNBTEwgKFNJT0NQUk9UT1BSSVZBVEUrMikKKyNkZWZpbmUgU0lPQ1JTR0NBVVNFIChTSU9DUFJPVE9QUklWQVRFICsgMCkKKyNkZWZpbmUgU0lPQ1JTU0NBVVNFIChTSU9DUFJPVE9QUklWQVRFICsgMSkKKyNkZWZpbmUgU0lPQ1JTTDJDQUxMIChTSU9DUFJPVE9QUklWQVRFICsgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNJT0NSU1NMMkNBTEwgKFNJT0NQUk9UT1BSSVZBVEUrMikKLSNkZWZpbmUgU0lPQ1JTQUNDRVBUIChTSU9DUFJPVE9QUklWQVRFKzMpCi0jZGVmaW5lIFNJT0NSU0NMUlJUIChTSU9DUFJPVE9QUklWQVRFKzQpCi0jZGVmaW5lIFNJT0NSU0dMMkNBTEwgKFNJT0NQUk9UT1BSSVZBVEUrNSkKKyNkZWZpbmUgU0lPQ1JTU0wyQ0FMTCAoU0lPQ1BST1RPUFJJVkFURSArIDIpCisjZGVmaW5lIFNJT0NSU0FDQ0VQVCAoU0lPQ1BST1RPUFJJVkFURSArIDMpCisjZGVmaW5lIFNJT0NSU0NMUlJUIChTSU9DUFJPVE9QUklWQVRFICsgNCkKKyNkZWZpbmUgU0lPQ1JTR0wyQ0FMTCAoU0lPQ1BST1RPUFJJVkFURSArIDUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTSU9DUlNHRkFDSUxJVElFUyAoU0lPQ1BST1RPUFJJVkFURSs2KQorI2RlZmluZSBTSU9DUlNHRkFDSUxJVElFUyAoU0lPQ1BST1RPUFJJVkFURSArIDYpCiAjZGVmaW5lIFJPU0VfRFRFX09SSUdJTkFURUQgMHgwMAogI2RlZmluZSBST1NFX05VTUJFUl9CVVNZIDB4MDEKICNkZWZpbmUgUk9TRV9JTlZBTElEX0ZBQ0lMSVRZIDB4MDMKQEAgLTU2LDUxICs1Niw1MSBAQAogI2RlZmluZSBST1NFX1NISVBfQUJTRU5UIDB4MzkKIHR5cGVkZWYgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciByb3NlX2FkZHJbNV07CisgIGNoYXIgcm9zZV9hZGRyWzVdOwogfSByb3NlX2FkZHJlc3M7CiBzdHJ1Y3Qgc29ja2FkZHJfcm9zZSB7Ci0gX19rZXJuZWxfc2FfZmFtaWx5X3Qgc3Jvc2VfZmFtaWx5OworICBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzcm9zZV9mYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHJvc2VfYWRkcmVzcyBzcm9zZV9hZGRyOwotIGF4MjVfYWRkcmVzcyBzcm9zZV9jYWxsOwotIGludCBzcm9zZV9uZGlnaXM7Ci0gYXgyNV9hZGRyZXNzIHNyb3NlX2RpZ2k7CisgIHJvc2VfYWRkcmVzcyBzcm9zZV9hZGRyOworICBheDI1X2FkZHJlc3Mgc3Jvc2VfY2FsbDsKKyAgaW50IHNyb3NlX25kaWdpczsKKyAgYXgyNV9hZGRyZXNzIHNyb3NlX2RpZ2k7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmdWxsX3NvY2thZGRyX3Jvc2UgewotIF9fa2VybmVsX3NhX2ZhbWlseV90IHNyb3NlX2ZhbWlseTsKLSByb3NlX2FkZHJlc3Mgc3Jvc2VfYWRkcjsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3Qgc3Jvc2VfZmFtaWx5OworICByb3NlX2FkZHJlc3Mgc3Jvc2VfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gYXgyNV9hZGRyZXNzIHNyb3NlX2NhbGw7Ci0gdW5zaWduZWQgaW50IHNyb3NlX25kaWdpczsKLSBheDI1X2FkZHJlc3Mgc3Jvc2VfZGlnaXNbUk9TRV9NQVhfRElHSVNdOworICBheDI1X2FkZHJlc3Mgc3Jvc2VfY2FsbDsKKyAgdW5zaWduZWQgaW50IHNyb3NlX25kaWdpczsKKyAgYXgyNV9hZGRyZXNzIHNyb3NlX2RpZ2lzW1JPU0VfTUFYX0RJR0lTXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJvc2Vfcm91dGVfc3RydWN0IHsKLSByb3NlX2FkZHJlc3MgYWRkcmVzczsKLSB1bnNpZ25lZCBzaG9ydCBtYXNrOwotIGF4MjVfYWRkcmVzcyBuZWlnaGJvdXI7CisgIHJvc2VfYWRkcmVzcyBhZGRyZXNzOworICB1bnNpZ25lZCBzaG9ydCBtYXNrOworICBheDI1X2FkZHJlc3MgbmVpZ2hib3VyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGRldmljZVsxNl07Ci0gdW5zaWduZWQgY2hhciBuZGlnaXM7Ci0gYXgyNV9hZGRyZXNzIGRpZ2lwZWF0ZXJzW0FYMjVfTUFYX0RJR0lTXTsKKyAgY2hhciBkZXZpY2VbMTZdOworICB1bnNpZ25lZCBjaGFyIG5kaWdpczsKKyAgYXgyNV9hZGRyZXNzIGRpZ2lwZWF0ZXJzW0FYMjVfTUFYX0RJR0lTXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJvc2VfY2F1c2Vfc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGNhdXNlOwotIHVuc2lnbmVkIGNoYXIgZGlhZ25vc3RpYzsKKyAgdW5zaWduZWQgY2hhciBjYXVzZTsKKyAgdW5zaWduZWQgY2hhciBkaWFnbm9zdGljOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgcm9zZV9mYWNpbGl0aWVzX3N0cnVjdCB7Ci0gcm9zZV9hZGRyZXNzIHNvdXJjZV9hZGRyLCBkZXN0X2FkZHI7Ci0gYXgyNV9hZGRyZXNzIHNvdXJjZV9jYWxsLCBkZXN0X2NhbGw7Ci0gdW5zaWduZWQgY2hhciBzb3VyY2VfbmRpZ2lzLCBkZXN0X25kaWdpczsKKyAgcm9zZV9hZGRyZXNzIHNvdXJjZV9hZGRyLCBkZXN0X2FkZHI7CisgIGF4MjVfYWRkcmVzcyBzb3VyY2VfY2FsbCwgZGVzdF9jYWxsOworICB1bnNpZ25lZCBjaGFyIHNvdXJjZV9uZGlnaXMsIGRlc3RfbmRpZ2lzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBheDI1X2FkZHJlc3Mgc291cmNlX2RpZ2lzW1JPU0VfTUFYX0RJR0lTXTsKLSBheDI1X2FkZHJlc3MgZGVzdF9kaWdpc1tST1NFX01BWF9ESUdJU107Ci0gdW5zaWduZWQgaW50IHJhbmQ7Ci0gcm9zZV9hZGRyZXNzIGZhaWxfYWRkcjsKKyAgYXgyNV9hZGRyZXNzIHNvdXJjZV9kaWdpc1tST1NFX01BWF9ESUdJU107CisgIGF4MjVfYWRkcmVzcyBkZXN0X2RpZ2lzW1JPU0VfTUFYX0RJR0lTXTsKKyAgdW5zaWduZWQgaW50IHJhbmQ7CisgIHJvc2VfYWRkcmVzcyBmYWlsX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGF4MjVfYWRkcmVzcyBmYWlsX2NhbGw7CisgIGF4MjVfYWRkcmVzcyBmYWlsX2NhbGw7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JvdXRlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3JvdXRlLmgKaW5kZXggNzQzZjAwYy4uYjZhNTgwOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9yb3V0ZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcm91dGUuaApAQCAtMjIsMjMgKzIyLDIzIEBACiAjaW5jbHVkZSA8bGludXgvY29tcGlsZXIuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcnRlbnRyeSB7Ci0gdW5zaWduZWQgbG9uZyBydF9wYWQxOwotIHN0cnVjdCBzb2NrYWRkciBydF9kc3Q7Ci0gc3RydWN0IHNvY2thZGRyIHJ0X2dhdGV3YXk7CisgIHVuc2lnbmVkIGxvbmcgcnRfcGFkMTsKKyAgc3RydWN0IHNvY2thZGRyIHJ0X2RzdDsKKyAgc3RydWN0IHNvY2thZGRyIHJ0X2dhdGV3YXk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzb2NrYWRkciBydF9nZW5tYXNrOwotIHVuc2lnbmVkIHNob3J0IHJ0X2ZsYWdzOwotIHNob3J0IHJ0X3BhZDI7Ci0gdW5zaWduZWQgbG9uZyBydF9wYWQzOworICBzdHJ1Y3Qgc29ja2FkZHIgcnRfZ2VubWFzazsKKyAgdW5zaWduZWQgc2hvcnQgcnRfZmxhZ3M7CisgIHNob3J0IHJ0X3BhZDI7CisgIHVuc2lnbmVkIGxvbmcgcnRfcGFkMzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCAqcnRfcGFkNDsKLSBzaG9ydCBydF9tZXRyaWM7Ci0gY2hhciBfX3VzZXIgKnJ0X2RldjsKLSB1bnNpZ25lZCBsb25nIHJ0X210dTsKKyAgdm9pZCAqIHJ0X3BhZDQ7CisgIHNob3J0IHJ0X21ldHJpYzsKKyAgY2hhciBfX3VzZXIgKiBydF9kZXY7CisgIHVuc2lnbmVkIGxvbmcgcnRfbXR1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgcnRfbXNzIHJ0X210dQotIHVuc2lnbmVkIGxvbmcgcnRfd2luZG93OwotIHVuc2lnbmVkIHNob3J0IHJ0X2lydHQ7CisgIHVuc2lnbmVkIGxvbmcgcnRfd2luZG93OworICB1bnNpZ25lZCBzaG9ydCBydF9pcnR0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJURl9VUCAweDAwMDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcnRjLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3J0Yy5oCmluZGV4IGFjYjQ5ZDYuLmYwZTQzNTAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvcnRjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ydGMuaApAQCAtMTksMzUgKzE5LDM1IEBACiAjaWZuZGVmIF9VQVBJX0xJTlVYX1JUQ19IXwogI2RlZmluZSBfVUFQSV9MSU5VWF9SVENfSF8KIHN0cnVjdCBydGNfdGltZSB7Ci0gaW50IHRtX3NlYzsKKyAgaW50IHRtX3NlYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHRtX21pbjsKLSBpbnQgdG1faG91cjsKLSBpbnQgdG1fbWRheTsKLSBpbnQgdG1fbW9uOworICBpbnQgdG1fbWluOworICBpbnQgdG1faG91cjsKKyAgaW50IHRtX21kYXk7CisgIGludCB0bV9tb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0bV95ZWFyOwotIGludCB0bV93ZGF5OwotIGludCB0bV95ZGF5OwotIGludCB0bV9pc2RzdDsKKyAgaW50IHRtX3llYXI7CisgIGludCB0bV93ZGF5OworICBpbnQgdG1feWRheTsKKyAgaW50IHRtX2lzZHN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgcnRjX3drYWxybSB7Ci0gdW5zaWduZWQgY2hhciBlbmFibGVkOwotIHVuc2lnbmVkIGNoYXIgcGVuZGluZzsKKyAgdW5zaWduZWQgY2hhciBlbmFibGVkOworICB1bnNpZ25lZCBjaGFyIHBlbmRpbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBydGNfdGltZSB0aW1lOworICBzdHJ1Y3QgcnRjX3RpbWUgdGltZTsKIH07CiBzdHJ1Y3QgcnRjX3BsbF9pbmZvIHsKLSBpbnQgcGxsX2N0cmw7CisgIGludCBwbGxfY3RybDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBsbF92YWx1ZTsKLSBpbnQgcGxsX21heDsKLSBpbnQgcGxsX21pbjsKLSBpbnQgcGxsX3Bvc211bHQ7CisgIGludCBwbGxfdmFsdWU7CisgIGludCBwbGxfbWF4OworICBpbnQgcGxsX21pbjsKKyAgaW50IHBsbF9wb3NtdWx0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcGxsX25lZ211bHQ7Ci0gbG9uZyBwbGxfY2xvY2s7CisgIGludCBwbGxfbmVnbXVsdDsKKyAgbG9uZyBwbGxfY2xvY2s7CiB9OwogI2RlZmluZSBSVENfQUlFX09OIF9JTygncCcsIDB4MDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ydG5ldGxpbmsuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvcnRuZXRsaW5rLmgKaW5kZXggM2EwM2U4OC4uZjA3NzljZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9ydG5ldGxpbmsuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3J0bmV0bGluay5oCkBAIC0yOSwxMjIgKzI5LDEyMiBAQAogI2RlZmluZSBSVE5MX0ZBTUlMWV9JUDZNUiAxMjkKICNkZWZpbmUgUlROTF9GQU1JTFlfTUFYIDEyOQogZW51bSB7Ci0gUlRNX0JBU0UgPSAxNiwKKyAgUlRNX0JBU0UgPSAxNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9CQVNFIFJUTV9CQVNFCi0gUlRNX05FV0xJTksgPSAxNiwKKyAgUlRNX05FV0xJTksgPSAxNiwKICNkZWZpbmUgUlRNX05FV0xJTksgUlRNX05FV0xJTksKLSBSVE1fREVMTElOSywKKyAgUlRNX0RFTExJTkssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1fREVMTElOSyBSVE1fREVMTElOSwotIFJUTV9HRVRMSU5LLAorICBSVE1fR0VUTElOSywKICNkZWZpbmUgUlRNX0dFVExJTksgUlRNX0dFVExJTksKLSBSVE1fU0VUTElOSywKKyAgUlRNX1NFVExJTkssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1fU0VUTElOSyBSVE1fU0VUTElOSwotIFJUTV9ORVdBRERSID0gMjAsCisgIFJUTV9ORVdBRERSID0gMjAsCiAjZGVmaW5lIFJUTV9ORVdBRERSIFJUTV9ORVdBRERSCi0gUlRNX0RFTEFERFIsCisgIFJUTV9ERUxBRERSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX0RFTEFERFIgUlRNX0RFTEFERFIKLSBSVE1fR0VUQUREUiwKKyAgUlRNX0dFVEFERFIsCiAjZGVmaW5lIFJUTV9HRVRBRERSIFJUTV9HRVRBRERSCi0gUlRNX05FV1JPVVRFID0gMjQsCisgIFJUTV9ORVdST1VURSA9IDI0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX05FV1JPVVRFIFJUTV9ORVdST1VURQotIFJUTV9ERUxST1VURSwKKyAgUlRNX0RFTFJPVVRFLAogI2RlZmluZSBSVE1fREVMUk9VVEUgUlRNX0RFTFJPVVRFCi0gUlRNX0dFVFJPVVRFLAorICBSVE1fR0VUUk9VVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1fR0VUUk9VVEUgUlRNX0dFVFJPVVRFCi0gUlRNX05FV05FSUdIID0gMjgsCisgIFJUTV9ORVdORUlHSCA9IDI4LAogI2RlZmluZSBSVE1fTkVXTkVJR0ggUlRNX05FV05FSUdICi0gUlRNX0RFTE5FSUdILAorICBSVE1fREVMTkVJR0gsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1fREVMTkVJR0ggUlRNX0RFTE5FSUdICi0gUlRNX0dFVE5FSUdILAorICBSVE1fR0VUTkVJR0gsCiAjZGVmaW5lIFJUTV9HRVRORUlHSCBSVE1fR0VUTkVJR0gKLSBSVE1fTkVXUlVMRSA9IDMyLAorICBSVE1fTkVXUlVMRSA9IDMyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX05FV1JVTEUgUlRNX05FV1JVTEUKLSBSVE1fREVMUlVMRSwKKyAgUlRNX0RFTFJVTEUsCiAjZGVmaW5lIFJUTV9ERUxSVUxFIFJUTV9ERUxSVUxFCi0gUlRNX0dFVFJVTEUsCisgIFJUTV9HRVRSVUxFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX0dFVFJVTEUgUlRNX0dFVFJVTEUKLSBSVE1fTkVXUURJU0MgPSAzNiwKKyAgUlRNX05FV1FESVNDID0gMzYsCiAjZGVmaW5lIFJUTV9ORVdRRElTQyBSVE1fTkVXUURJU0MKLSBSVE1fREVMUURJU0MsCisgIFJUTV9ERUxRRElTQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9ERUxRRElTQyBSVE1fREVMUURJU0MKLSBSVE1fR0VUUURJU0MsCisgIFJUTV9HRVRRRElTQywKICNkZWZpbmUgUlRNX0dFVFFESVNDIFJUTV9HRVRRRElTQwotIFJUTV9ORVdUQ0xBU1MgPSA0MCwKKyAgUlRNX05FV1RDTEFTUyA9IDQwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX05FV1RDTEFTUyBSVE1fTkVXVENMQVNTCi0gUlRNX0RFTFRDTEFTUywKKyAgUlRNX0RFTFRDTEFTUywKICNkZWZpbmUgUlRNX0RFTFRDTEFTUyBSVE1fREVMVENMQVNTCi0gUlRNX0dFVFRDTEFTUywKKyAgUlRNX0dFVFRDTEFTUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9HRVRUQ0xBU1MgUlRNX0dFVFRDTEFTUwotIFJUTV9ORVdURklMVEVSID0gNDQsCisgIFJUTV9ORVdURklMVEVSID0gNDQsCiAjZGVmaW5lIFJUTV9ORVdURklMVEVSIFJUTV9ORVdURklMVEVSCi0gUlRNX0RFTFRGSUxURVIsCisgIFJUTV9ERUxURklMVEVSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX0RFTFRGSUxURVIgUlRNX0RFTFRGSUxURVIKLSBSVE1fR0VUVEZJTFRFUiwKKyAgUlRNX0dFVFRGSUxURVIsCiAjZGVmaW5lIFJUTV9HRVRURklMVEVSIFJUTV9HRVRURklMVEVSCi0gUlRNX05FV0FDVElPTiA9IDQ4LAorICBSVE1fTkVXQUNUSU9OID0gNDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1fTkVXQUNUSU9OIFJUTV9ORVdBQ1RJT04KLSBSVE1fREVMQUNUSU9OLAorICBSVE1fREVMQUNUSU9OLAogI2RlZmluZSBSVE1fREVMQUNUSU9OIFJUTV9ERUxBQ1RJT04KLSBSVE1fR0VUQUNUSU9OLAorICBSVE1fR0VUQUNUSU9OLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX0dFVEFDVElPTiBSVE1fR0VUQUNUSU9OCi0gUlRNX05FV1BSRUZJWCA9IDUyLAorICBSVE1fTkVXUFJFRklYID0gNTIsCiAjZGVmaW5lIFJUTV9ORVdQUkVGSVggUlRNX05FV1BSRUZJWAotIFJUTV9HRVRNVUxUSUNBU1QgPSA1OCwKKyAgUlRNX0dFVE1VTFRJQ0FTVCA9IDU4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX0dFVE1VTFRJQ0FTVCBSVE1fR0VUTVVMVElDQVNUCi0gUlRNX0dFVEFOWUNBU1QgPSA2MiwKKyAgUlRNX0dFVEFOWUNBU1QgPSA2MiwKICNkZWZpbmUgUlRNX0dFVEFOWUNBU1QgUlRNX0dFVEFOWUNBU1QKLSBSVE1fTkVXTkVJR0hUQkwgPSA2NCwKKyAgUlRNX05FV05FSUdIVEJMID0gNjQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1fTkVXTkVJR0hUQkwgUlRNX05FV05FSUdIVEJMCi0gUlRNX0dFVE5FSUdIVEJMID0gNjYsCisgIFJUTV9HRVRORUlHSFRCTCA9IDY2LAogI2RlZmluZSBSVE1fR0VUTkVJR0hUQkwgUlRNX0dFVE5FSUdIVEJMCi0gUlRNX1NFVE5FSUdIVEJMLAorICBSVE1fU0VUTkVJR0hUQkwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1fU0VUTkVJR0hUQkwgUlRNX1NFVE5FSUdIVEJMCi0gUlRNX05FV05EVVNFUk9QVCA9IDY4LAorICBSVE1fTkVXTkRVU0VST1BUID0gNjgsCiAjZGVmaW5lIFJUTV9ORVdORFVTRVJPUFQgUlRNX05FV05EVVNFUk9QVAotIFJUTV9ORVdBRERSTEFCRUwgPSA3MiwKKyAgUlRNX05FV0FERFJMQUJFTCA9IDcyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX05FV0FERFJMQUJFTCBSVE1fTkVXQUREUkxBQkVMCi0gUlRNX0RFTEFERFJMQUJFTCwKKyAgUlRNX0RFTEFERFJMQUJFTCwKICNkZWZpbmUgUlRNX0RFTEFERFJMQUJFTCBSVE1fREVMQUREUkxBQkVMCi0gUlRNX0dFVEFERFJMQUJFTCwKKyAgUlRNX0dFVEFERFJMQUJFTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTV9HRVRBRERSTEFCRUwgUlRNX0dFVEFERFJMQUJFTAotIFJUTV9HRVREQ0IgPSA3OCwKKyAgUlRNX0dFVERDQiA9IDc4LAogI2RlZmluZSBSVE1fR0VURENCIFJUTV9HRVREQ0IKLSBSVE1fU0VURENCLAorICBSVE1fU0VURENCLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX1NFVERDQiBSVE1fU0VURENCCi0gUlRNX05FV05FVENPTkYgPSA4MCwKKyAgUlRNX05FV05FVENPTkYgPSA4MCwKICNkZWZpbmUgUlRNX05FV05FVENPTkYgUlRNX05FV05FVENPTkYKLSBSVE1fR0VUTkVUQ09ORiA9IDgyLAorICBSVE1fR0VUTkVUQ09ORiA9IDgyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX0dFVE5FVENPTkYgUlRNX0dFVE5FVENPTkYKLSBSVE1fTkVXTURCID0gODQsCisgIFJUTV9ORVdNREIgPSA4NCwKICNkZWZpbmUgUlRNX05FV01EQiBSVE1fTkVXTURCCi0gUlRNX0RFTE1EQiA9IDg1LAorICBSVE1fREVMTURCID0gODUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1fREVMTURCIFJUTV9ERUxNREIKLSBSVE1fR0VUTURCID0gODYsCisgIFJUTV9HRVRNREIgPSA4NiwKICNkZWZpbmUgUlRNX0dFVE1EQiBSVE1fR0VUTURCCi0gX19SVE1fTUFYLAorICBfX1JUTV9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1fTUFYICgoKF9fUlRNX01BWCArIDMpICYgfjMpIC0gMSkKIH07CkBAIC0xNTMsNTEgKzE1Myw1MSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNX0ZBTShjbWQpICgoKGNtZCkgLSBSVE1fQkFTRSkgPj4gMikKIHN0cnVjdCBydGF0dHIgewotIHVuc2lnbmVkIHNob3J0IHJ0YV9sZW47Ci0gdW5zaWduZWQgc2hvcnQgcnRhX3R5cGU7CisgIHVuc2lnbmVkIHNob3J0IHJ0YV9sZW47CisgIHVuc2lnbmVkIHNob3J0IHJ0YV90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFJUQV9BTElHTlRPIDQKLSNkZWZpbmUgUlRBX0FMSUdOKGxlbikgKCAoKGxlbikrUlRBX0FMSUdOVE8tMSkgJiB+KFJUQV9BTElHTlRPLTEpICkKLSNkZWZpbmUgUlRBX09LKHJ0YSxsZW4pICgobGVuKSA+PSAoaW50KXNpemVvZihzdHJ1Y3QgcnRhdHRyKSAmJiAgIChydGEpLT5ydGFfbGVuID49IHNpemVvZihzdHJ1Y3QgcnRhdHRyKSAmJiAgIChydGEpLT5ydGFfbGVuIDw9IChsZW4pKQorI2RlZmluZSBSVEFfQUxJR04obGVuKSAoKChsZW4pICsgUlRBX0FMSUdOVE8gLSAxKSAmIH4oUlRBX0FMSUdOVE8gLSAxKSkKKyNkZWZpbmUgUlRBX09LKHJ0YSxsZW4pICgobGVuKSA+PSAoaW50KSBzaXplb2Yoc3RydWN0IHJ0YXR0cikgJiYgKHJ0YSktPnJ0YV9sZW4gPj0gc2l6ZW9mKHN0cnVjdCBydGF0dHIpICYmIChydGEpLT5ydGFfbGVuIDw9IChsZW4pKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUlRBX05FWFQocnRhLGF0dHJsZW4pICgoYXR0cmxlbikgLT0gUlRBX0FMSUdOKChydGEpLT5ydGFfbGVuKSwgICAoc3RydWN0IHJ0YXR0ciopKCgoY2hhciopKHJ0YSkpICsgUlRBX0FMSUdOKChydGEpLT5ydGFfbGVuKSkpCisjZGVmaW5lIFJUQV9ORVhUKHJ0YSxhdHRybGVuKSAoKGF0dHJsZW4pIC09IFJUQV9BTElHTigocnRhKS0+cnRhX2xlbiksIChzdHJ1Y3QgcnRhdHRyICopICgoKGNoYXIgKikgKHJ0YSkpICsgUlRBX0FMSUdOKChydGEpLT5ydGFfbGVuKSkpCiAjZGVmaW5lIFJUQV9MRU5HVEgobGVuKSAoUlRBX0FMSUdOKHNpemVvZihzdHJ1Y3QgcnRhdHRyKSkgKyAobGVuKSkKICNkZWZpbmUgUlRBX1NQQUNFKGxlbikgUlRBX0FMSUdOKFJUQV9MRU5HVEgobGVuKSkKLSNkZWZpbmUgUlRBX0RBVEEocnRhKSAoKHZvaWQqKSgoKGNoYXIqKShydGEpKSArIFJUQV9MRU5HVEgoMCkpKQorI2RlZmluZSBSVEFfREFUQShydGEpICgodm9pZCAqKSAoKChjaGFyICopIChydGEpKSArIFJUQV9MRU5HVEgoMCkpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUlRBX1BBWUxPQUQocnRhKSAoKGludCkoKHJ0YSktPnJ0YV9sZW4pIC0gUlRBX0xFTkdUSCgwKSkKKyNkZWZpbmUgUlRBX1BBWUxPQUQocnRhKSAoKGludCkgKChydGEpLT5ydGFfbGVuKSAtIFJUQV9MRU5HVEgoMCkpCiBzdHJ1Y3QgcnRtc2cgewotIHVuc2lnbmVkIGNoYXIgcnRtX2ZhbWlseTsKLSB1bnNpZ25lZCBjaGFyIHJ0bV9kc3RfbGVuOworICB1bnNpZ25lZCBjaGFyIHJ0bV9mYW1pbHk7CisgIHVuc2lnbmVkIGNoYXIgcnRtX2RzdF9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcnRtX3NyY19sZW47Ci0gdW5zaWduZWQgY2hhciBydG1fdG9zOwotIHVuc2lnbmVkIGNoYXIgcnRtX3RhYmxlOwotIHVuc2lnbmVkIGNoYXIgcnRtX3Byb3RvY29sOworICB1bnNpZ25lZCBjaGFyIHJ0bV9zcmNfbGVuOworICB1bnNpZ25lZCBjaGFyIHJ0bV90b3M7CisgIHVuc2lnbmVkIGNoYXIgcnRtX3RhYmxlOworICB1bnNpZ25lZCBjaGFyIHJ0bV9wcm90b2NvbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBydG1fc2NvcGU7Ci0gdW5zaWduZWQgY2hhciBydG1fdHlwZTsKLSB1bnNpZ25lZCBydG1fZmxhZ3M7CisgIHVuc2lnbmVkIGNoYXIgcnRtX3Njb3BlOworICB1bnNpZ25lZCBjaGFyIHJ0bV90eXBlOworICB1bnNpZ25lZCBydG1fZmxhZ3M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFJUTl9VTlNQRUMsCi0gUlROX1VOSUNBU1QsCi0gUlROX0xPQ0FMLAorICBSVE5fVU5TUEVDLAorICBSVE5fVU5JQ0FTVCwKKyAgUlROX0xPQ0FMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVE5fQlJPQURDQVNULAotIFJUTl9BTllDQVNULAotIFJUTl9NVUxUSUNBU1QsCi0gUlROX0JMQUNLSE9MRSwKKyAgUlROX0JST0FEQ0FTVCwKKyAgUlROX0FOWUNBU1QsCisgIFJUTl9NVUxUSUNBU1QsCisgIFJUTl9CTEFDS0hPTEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUTl9VTlJFQUNIQUJMRSwKLSBSVE5fUFJPSElCSVQsCi0gUlROX1RIUk9XLAotIFJUTl9OQVQsCisgIFJUTl9VTlJFQUNIQUJMRSwKKyAgUlROX1BST0hJQklULAorICBSVE5fVEhST1csCisgIFJUTl9OQVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUTl9YUkVTT0xWRSwKLSBfX1JUTl9NQVgKKyAgUlROX1hSRVNPTFZFLAorICBfX1JUTl9NQVgKIH07CiAjZGVmaW5lIFJUTl9NQVggKF9fUlROX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMjIxLDEyICsyMjEsMTIgQEAKICNkZWZpbmUgUlRQUk9UX01ST1VURUQgMTcKIGVudW0gcnRfc2NvcGVfdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUX1NDT1BFX1VOSVZFUlNFPTAsCi0gUlRfU0NPUEVfU0lURT0yMDAsCi0gUlRfU0NPUEVfTElOSz0yNTMsCi0gUlRfU0NPUEVfSE9TVD0yNTQsCisgIFJUX1NDT1BFX1VOSVZFUlNFID0gMCwKKyAgUlRfU0NPUEVfU0lURSA9IDIwMCwKKyAgUlRfU0NPUEVfTElOSyA9IDI1MywKKyAgUlRfU0NPUEVfSE9TVCA9IDI1NCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlRfU0NPUEVfTk9XSEVSRT0yNTUKKyAgUlRfU0NPUEVfTk9XSEVSRSA9IDI1NQogfTsKICNkZWZpbmUgUlRNX0ZfTk9USUZZIDB4MTAwCiAjZGVmaW5lIFJUTV9GX0NMT05FRCAweDIwMApAQCAtMjM0LDUxICsyMzQsNTEgQEAKICNkZWZpbmUgUlRNX0ZfRVFVQUxJWkUgMHg0MDAKICNkZWZpbmUgUlRNX0ZfUFJFRklYIDB4ODAwCiBlbnVtIHJ0X2NsYXNzX3QgewotIFJUX1RBQkxFX1VOU1BFQz0wLAorICBSVF9UQUJMRV9VTlNQRUMgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVF9UQUJMRV9DT01QQVQ9MjUyLAotIFJUX1RBQkxFX0RFRkFVTFQ9MjUzLAotIFJUX1RBQkxFX01BSU49MjU0LAotIFJUX1RBQkxFX0xPQ0FMPTI1NSwKKyAgUlRfVEFCTEVfQ09NUEFUID0gMjUyLAorICBSVF9UQUJMRV9ERUZBVUxUID0gMjUzLAorICBSVF9UQUJMRV9NQUlOID0gMjU0LAorICBSVF9UQUJMRV9MT0NBTCA9IDI1NSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlRfVEFCTEVfTUFYPTB4RkZGRkZGRkYKKyAgUlRfVEFCTEVfTUFYID0gMHhGRkZGRkZGRgogfTsKIGVudW0gcnRhdHRyX3R5cGVfdCB7Ci0gUlRBX1VOU1BFQywKKyAgUlRBX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlRBX0RTVCwKLSBSVEFfU1JDLAotIFJUQV9JSUYsCi0gUlRBX09JRiwKKyAgUlRBX0RTVCwKKyAgUlRBX1NSQywKKyAgUlRBX0lJRiwKKyAgUlRBX09JRiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlRBX0dBVEVXQVksCi0gUlRBX1BSSU9SSVRZLAotIFJUQV9QUkVGU1JDLAotIFJUQV9NRVRSSUNTLAorICBSVEFfR0FURVdBWSwKKyAgUlRBX1BSSU9SSVRZLAorICBSVEFfUFJFRlNSQywKKyAgUlRBX01FVFJJQ1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUQV9NVUxUSVBBVEgsCi0gUlRBX1BST1RPSU5GTywKLSBSVEFfRkxPVywKLSBSVEFfQ0FDSEVJTkZPLAorICBSVEFfTVVMVElQQVRILAorICBSVEFfUFJPVE9JTkZPLAorICBSVEFfRkxPVywKKyAgUlRBX0NBQ0hFSU5GTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlRBX1NFU1NJT04sCi0gUlRBX01QX0FMR08sCi0gUlRBX1RBQkxFLAotIFJUQV9NQVJLLAorICBSVEFfU0VTU0lPTiwKKyAgUlRBX01QX0FMR08sCisgIFJUQV9UQUJMRSwKKyAgUlRBX01BUkssCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUQV9NRkNfU1RBVFMsCi0gX19SVEFfTUFYCisgIFJUQV9NRkNfU1RBVFMsCisgIF9fUlRBX01BWAogfTsKICNkZWZpbmUgUlRBX01BWCAoX19SVEFfTUFYIC0gMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFJUTV9SVEEocikgKChzdHJ1Y3QgcnRhdHRyKikoKChjaGFyKikocikpICsgTkxNU0dfQUxJR04oc2l6ZW9mKHN0cnVjdCBydG1zZykpKSkKLSNkZWZpbmUgUlRNX1BBWUxPQUQobikgTkxNU0dfUEFZTE9BRChuLHNpemVvZihzdHJ1Y3QgcnRtc2cpKQorI2RlZmluZSBSVE1fUlRBKHIpICgoc3RydWN0IHJ0YXR0ciAqKSAoKChjaGFyICopIChyKSkgKyBOTE1TR19BTElHTihzaXplb2Yoc3RydWN0IHJ0bXNnKSkpKQorI2RlZmluZSBSVE1fUEFZTE9BRChuKSBOTE1TR19QQVlMT0FEKG4sIHNpemVvZihzdHJ1Y3QgcnRtc2cpKQogc3RydWN0IHJ0bmV4dGhvcCB7Ci0gdW5zaWduZWQgc2hvcnQgcnRuaF9sZW47CisgIHVuc2lnbmVkIHNob3J0IHJ0bmhfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHJ0bmhfZmxhZ3M7Ci0gdW5zaWduZWQgY2hhciBydG5oX2hvcHM7Ci0gaW50IHJ0bmhfaWZpbmRleDsKKyAgdW5zaWduZWQgY2hhciBydG5oX2ZsYWdzOworICB1bnNpZ25lZCBjaGFyIHJ0bmhfaG9wczsKKyAgaW50IHJ0bmhfaWZpbmRleDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE5IX0ZfREVBRCAxCkBAIC0yODYsNjkgKzI4Niw2OSBAQAogI2RlZmluZSBSVE5IX0ZfT05MSU5LIDQKICNkZWZpbmUgUlROSF9BTElHTlRPIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFJUTkhfQUxJR04obGVuKSAoICgobGVuKStSVE5IX0FMSUdOVE8tMSkgJiB+KFJUTkhfQUxJR05UTy0xKSApCi0jZGVmaW5lIFJUTkhfT0socnRuaCxsZW4pICgocnRuaCktPnJ0bmhfbGVuID49IHNpemVvZihzdHJ1Y3QgcnRuZXh0aG9wKSAmJiAgICgoaW50KShydG5oKS0+cnRuaF9sZW4pIDw9IChsZW4pKQotI2RlZmluZSBSVE5IX05FWFQocnRuaCkgKChzdHJ1Y3QgcnRuZXh0aG9wKikoKChjaGFyKikocnRuaCkpICsgUlROSF9BTElHTigocnRuaCktPnJ0bmhfbGVuKSkpCisjZGVmaW5lIFJUTkhfQUxJR04obGVuKSAoKChsZW4pICsgUlROSF9BTElHTlRPIC0gMSkgJiB+KFJUTkhfQUxJR05UTyAtIDEpKQorI2RlZmluZSBSVE5IX09LKHJ0bmgsbGVuKSAoKHJ0bmgpLT5ydG5oX2xlbiA+PSBzaXplb2Yoc3RydWN0IHJ0bmV4dGhvcCkgJiYgKChpbnQpIChydG5oKS0+cnRuaF9sZW4pIDw9IChsZW4pKQorI2RlZmluZSBSVE5IX05FWFQocnRuaCkgKChzdHJ1Y3QgcnRuZXh0aG9wICopICgoKGNoYXIgKikgKHJ0bmgpKSArIFJUTkhfQUxJR04oKHJ0bmgpLT5ydG5oX2xlbikpKQogI2RlZmluZSBSVE5IX0xFTkdUSChsZW4pIChSVE5IX0FMSUdOKHNpemVvZihzdHJ1Y3QgcnRuZXh0aG9wKSkgKyAobGVuKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTkhfU1BBQ0UobGVuKSBSVE5IX0FMSUdOKFJUTkhfTEVOR1RIKGxlbikpCi0jZGVmaW5lIFJUTkhfREFUQShydG5oKSAoKHN0cnVjdCBydGF0dHIqKSgoKGNoYXIqKShydG5oKSkgKyBSVE5IX0xFTkdUSCgwKSkpCisjZGVmaW5lIFJUTkhfREFUQShydG5oKSAoKHN0cnVjdCBydGF0dHIgKikgKCgoY2hhciAqKSAocnRuaCkpICsgUlROSF9MRU5HVEgoMCkpKQogc3RydWN0IHJ0YV9jYWNoZWluZm8gewotIF9fdTMyIHJ0YV9jbG50cmVmOworICBfX3UzMiBydGFfY2xudHJlZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcnRhX2xhc3R1c2U7Ci0gX19zMzIgcnRhX2V4cGlyZXM7Ci0gX191MzIgcnRhX2Vycm9yOwotIF9fdTMyIHJ0YV91c2VkOworICBfX3UzMiBydGFfbGFzdHVzZTsKKyAgX19zMzIgcnRhX2V4cGlyZXM7CisgIF9fdTMyIHJ0YV9lcnJvcjsKKyAgX191MzIgcnRhX3VzZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE5FVExJTktfSEFWRV9QRUVSSU5GTyAxCi0gX191MzIgcnRhX2lkOwotIF9fdTMyIHJ0YV90czsKLSBfX3UzMiBydGFfdHNhZ2U7CisgIF9fdTMyIHJ0YV9pZDsKKyAgX191MzIgcnRhX3RzOworICBfX3UzMiBydGFfdHNhZ2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFJUQVhfVU5TUEVDLAorICBSVEFYX1VOU1BFQywKICNkZWZpbmUgUlRBWF9VTlNQRUMgUlRBWF9VTlNQRUMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlRBWF9MT0NLLAorICBSVEFYX0xPQ0ssCiAjZGVmaW5lIFJUQVhfTE9DSyBSVEFYX0xPQ0sKLSBSVEFYX01UVSwKKyAgUlRBWF9NVFUsCiAjZGVmaW5lIFJUQVhfTVRVIFJUQVhfTVRVCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUQVhfV0lORE9XLAorICBSVEFYX1dJTkRPVywKICNkZWZpbmUgUlRBWF9XSU5ET1cgUlRBWF9XSU5ET1cKLSBSVEFYX1JUVCwKKyAgUlRBWF9SVFQsCiAjZGVmaW5lIFJUQVhfUlRUIFJUQVhfUlRUCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUQVhfUlRUVkFSLAorICBSVEFYX1JUVFZBUiwKICNkZWZpbmUgUlRBWF9SVFRWQVIgUlRBWF9SVFRWQVIKLSBSVEFYX1NTVEhSRVNILAorICBSVEFYX1NTVEhSRVNILAogI2RlZmluZSBSVEFYX1NTVEhSRVNIIFJUQVhfU1NUSFJFU0gKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlRBWF9DV05ELAorICBSVEFYX0NXTkQsCiAjZGVmaW5lIFJUQVhfQ1dORCBSVEFYX0NXTkQKLSBSVEFYX0FEVk1TUywKKyAgUlRBWF9BRFZNU1MsCiAjZGVmaW5lIFJUQVhfQURWTVNTIFJUQVhfQURWTVNTCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUQVhfUkVPUkRFUklORywKKyAgUlRBWF9SRU9SREVSSU5HLAogI2RlZmluZSBSVEFYX1JFT1JERVJJTkcgUlRBWF9SRU9SREVSSU5HCi0gUlRBWF9IT1BMSU1JVCwKKyAgUlRBWF9IT1BMSU1JVCwKICNkZWZpbmUgUlRBWF9IT1BMSU1JVCBSVEFYX0hPUExJTUlUCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUQVhfSU5JVENXTkQsCisgIFJUQVhfSU5JVENXTkQsCiAjZGVmaW5lIFJUQVhfSU5JVENXTkQgUlRBWF9JTklUQ1dORAotIFJUQVhfRkVBVFVSRVMsCisgIFJUQVhfRkVBVFVSRVMsCiAjZGVmaW5lIFJUQVhfRkVBVFVSRVMgUlRBWF9GRUFUVVJFUwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVEFYX1JUT19NSU4sCisgIFJUQVhfUlRPX01JTiwKICNkZWZpbmUgUlRBWF9SVE9fTUlOIFJUQVhfUlRPX01JTgotIFJUQVhfSU5JVFJXTkQsCisgIFJUQVhfSU5JVFJXTkQsCiAjZGVmaW5lIFJUQVhfSU5JVFJXTkQgUlRBWF9JTklUUldORAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVEFYX1FVSUNLQUNLLAorICBSVEFYX1FVSUNLQUNLLAogI2RlZmluZSBSVEFYX1FVSUNLQUNLIFJUQVhfUVVJQ0tBQ0sKLSBfX1JUQVhfTUFYCisgIF9fUlRBWF9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVEFYX01BWCAoX19SVEFYX01BWCAtIDEpCkBAIC0zNTgsMjI0ICszNTgsMjIzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVEFYX0ZFQVRVUkVfQUxMRlJBRyAweDAwMDAwMDA4CiBzdHJ1Y3QgcnRhX3Nlc3Npb24gewotIF9fdTggcHJvdG87Ci0gX191OCBwYWQxOworICBfX3U4IHByb3RvOworICBfX3U4IHBhZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHBhZDI7Ci0gdW5pb24gewotIHN0cnVjdCB7Ci0gX191MTYgc3BvcnQ7CisgIF9fdTE2IHBhZDI7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MTYgc3BvcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGRwb3J0OwotIH0gcG9ydHM7Ci0gc3RydWN0IHsKLSBfX3U4IHR5cGU7CisgICAgICBfX3UxNiBkcG9ydDsKKyAgICB9IHBvcnRzOworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY29kZTsKLSBfX3UxNiBpZGVudDsKLSB9IGljbXB0OwotIF9fdTMyIHNwaTsKKyAgICAgIF9fdTggY29kZTsKKyAgICAgIF9fdTE2IGlkZW50OworICAgIH0gaWNtcHQ7CisgICAgX191MzIgc3BpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHU7CisgIH0gdTsKIH07CiBzdHJ1Y3QgcnRhX21mY19zdGF0cyB7Ci0gX191NjQgbWZjc19wYWNrZXRzOworICBfX3U2NCBtZmNzX3BhY2tldHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG1mY3NfYnl0ZXM7Ci0gX191NjQgbWZjc193cm9uZ19pZjsKKyAgX191NjQgbWZjc19ieXRlczsKKyAgX191NjQgbWZjc193cm9uZ19pZjsKIH07CiBzdHJ1Y3QgcnRnZW5tc2cgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHJ0Z2VuX2ZhbWlseTsKKyAgdW5zaWduZWQgY2hhciBydGdlbl9mYW1pbHk7CiB9Owogc3RydWN0IGlmaW5mb21zZyB7Ci0gdW5zaWduZWQgY2hhciBpZmlfZmFtaWx5OworICB1bnNpZ25lZCBjaGFyIGlmaV9mYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgX19pZmlfcGFkOwotIHVuc2lnbmVkIHNob3J0IGlmaV90eXBlOwotIGludCBpZmlfaW5kZXg7Ci0gdW5zaWduZWQgaWZpX2ZsYWdzOworICB1bnNpZ25lZCBjaGFyIF9faWZpX3BhZDsKKyAgdW5zaWduZWQgc2hvcnQgaWZpX3R5cGU7CisgIGludCBpZmlfaW5kZXg7CisgIHVuc2lnbmVkIGlmaV9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaWZpX2NoYW5nZTsKKyAgdW5zaWduZWQgaWZpX2NoYW5nZTsKIH07CiBzdHJ1Y3QgcHJlZml4bXNnIHsKLSB1bnNpZ25lZCBjaGFyIHByZWZpeF9mYW1pbHk7CisgIHVuc2lnbmVkIGNoYXIgcHJlZml4X2ZhbWlseTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBwcmVmaXhfcGFkMTsKLSB1bnNpZ25lZCBzaG9ydCBwcmVmaXhfcGFkMjsKLSBpbnQgcHJlZml4X2lmaW5kZXg7Ci0gdW5zaWduZWQgY2hhciBwcmVmaXhfdHlwZTsKKyAgdW5zaWduZWQgY2hhciBwcmVmaXhfcGFkMTsKKyAgdW5zaWduZWQgc2hvcnQgcHJlZml4X3BhZDI7CisgIGludCBwcmVmaXhfaWZpbmRleDsKKyAgdW5zaWduZWQgY2hhciBwcmVmaXhfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBwcmVmaXhfbGVuOwotIHVuc2lnbmVkIGNoYXIgcHJlZml4X2ZsYWdzOwotIHVuc2lnbmVkIGNoYXIgcHJlZml4X3BhZDM7CisgIHVuc2lnbmVkIGNoYXIgcHJlZml4X2xlbjsKKyAgdW5zaWduZWQgY2hhciBwcmVmaXhfZmxhZ3M7CisgIHVuc2lnbmVkIGNoYXIgcHJlZml4X3BhZDM7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLWVudW0KLXsKLSBQUkVGSVhfVU5TUEVDLAotIFBSRUZJWF9BRERSRVNTLAorZW51bSB7CisgIFBSRUZJWF9VTlNQRUMsCisgIFBSRUZJWF9BRERSRVNTLAorICBQUkVGSVhfQ0FDSEVJTkZPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQUkVGSVhfQ0FDSEVJTkZPLAotIF9fUFJFRklYX01BWAorICBfX1BSRUZJWF9NQVgKIH07CiAjZGVmaW5lIFBSRUZJWF9NQVggKF9fUFJFRklYX01BWCAtIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHByZWZpeF9jYWNoZWluZm8gewotIF9fdTMyIHByZWZlcnJlZF90aW1lOwotIF9fdTMyIHZhbGlkX3RpbWU7Ci19OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcHJlZmVycmVkX3RpbWU7CisgIF9fdTMyIHZhbGlkX3RpbWU7Cit9Owogc3RydWN0IHRjbXNnIHsKLSB1bnNpZ25lZCBjaGFyIHRjbV9mYW1pbHk7Ci0gdW5zaWduZWQgY2hhciB0Y21fX3BhZDE7Ci0gdW5zaWduZWQgc2hvcnQgdGNtX19wYWQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgdGNtX2lmaW5kZXg7Ci0gX191MzIgdGNtX2hhbmRsZTsKLSBfX3UzMiB0Y21fcGFyZW50OwotIF9fdTMyIHRjbV9pbmZvOworICB1bnNpZ25lZCBjaGFyIHRjbV9mYW1pbHk7CisgIHVuc2lnbmVkIGNoYXIgdGNtX19wYWQxOworICB1bnNpZ25lZCBzaG9ydCB0Y21fX3BhZDI7CisgIGludCB0Y21faWZpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHRjbV9oYW5kbGU7CisgIF9fdTMyIHRjbV9wYXJlbnQ7CisgIF9fdTMyIHRjbV9pbmZvOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBUQ0FfVU5TUEVDLAotIFRDQV9LSU5ELAorICBUQ0FfVU5TUEVDLAorICBUQ0FfS0lORCwKKyAgVENBX09QVElPTlMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9PUFRJT05TLAotIFRDQV9TVEFUUywKLSBUQ0FfWFNUQVRTLAotIFRDQV9SQVRFLAorICBUQ0FfU1RBVFMsCisgIFRDQV9YU1RBVFMsCisgIFRDQV9SQVRFLAorICBUQ0FfRkNOVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0ZDTlQsCi0gVENBX1NUQVRTMiwKLSBUQ0FfU1RBQiwKLSBfX1RDQV9NQVgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFRDQV9TVEFUUzIsCisgIFRDQV9TVEFCLAorICBfX1RDQV9NQVgKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0FfTUFYIChfX1RDQV9NQVggLSAxKQotI2RlZmluZSBUQ0FfUlRBKHIpICgoc3RydWN0IHJ0YXR0ciopKCgoY2hhciopKHIpKSArIE5MTVNHX0FMSUdOKHNpemVvZihzdHJ1Y3QgdGNtc2cpKSkpCi0jZGVmaW5lIFRDQV9QQVlMT0FEKG4pIE5MTVNHX1BBWUxPQUQobixzaXplb2Yoc3RydWN0IHRjbXNnKSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFRDQV9SVEEocikgKChzdHJ1Y3QgcnRhdHRyICopICgoKGNoYXIgKikgKHIpKSArIE5MTVNHX0FMSUdOKHNpemVvZihzdHJ1Y3QgdGNtc2cpKSkpCisjZGVmaW5lIFRDQV9QQVlMT0FEKG4pIE5MTVNHX1BBWUxPQUQobiwgc2l6ZW9mKHN0cnVjdCB0Y21zZykpCiBzdHJ1Y3QgbmR1c2Vyb3B0bXNnIHsKLSB1bnNpZ25lZCBjaGFyIG5kdXNlcm9wdF9mYW1pbHk7Ci0gdW5zaWduZWQgY2hhciBuZHVzZXJvcHRfcGFkMTsKLSB1bnNpZ25lZCBzaG9ydCBuZHVzZXJvcHRfb3B0c19sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBuZHVzZXJvcHRfaWZpbmRleDsKLSBfX3U4IG5kdXNlcm9wdF9pY21wX3R5cGU7Ci0gX191OCBuZHVzZXJvcHRfaWNtcF9jb2RlOwotIHVuc2lnbmVkIHNob3J0IG5kdXNlcm9wdF9wYWQyOworICB1bnNpZ25lZCBjaGFyIG5kdXNlcm9wdF9mYW1pbHk7CisgIHVuc2lnbmVkIGNoYXIgbmR1c2Vyb3B0X3BhZDE7CisgIHVuc2lnbmVkIHNob3J0IG5kdXNlcm9wdF9vcHRzX2xlbjsKKyAgaW50IG5kdXNlcm9wdF9pZmluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbmR1c2Vyb3B0X3BhZDM7CisgIF9fdTggbmR1c2Vyb3B0X2ljbXBfdHlwZTsKKyAgX191OCBuZHVzZXJvcHRfaWNtcF9jb2RlOworICB1bnNpZ25lZCBzaG9ydCBuZHVzZXJvcHRfcGFkMjsKKyAgdW5zaWduZWQgaW50IG5kdXNlcm9wdF9wYWQzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBORFVTRVJPUFRfVU5TUEVDLAorICBORFVTRVJPUFRfVU5TUEVDLAorICBORFVTRVJPUFRfU1JDQUREUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkRVU0VST1BUX1NSQ0FERFIsCi0gX19ORFVTRVJPUFRfTUFYCisgIF9fTkRVU0VST1BUX01BWAogfTsKICNkZWZpbmUgTkRVU0VST1BUX01BWCAoX19ORFVTRVJPUFRfTUFYIC0gMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTUdSUF9MSU5LIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTUdSUF9OT1RJRlkgMgogI2RlZmluZSBSVE1HUlBfTkVJR0ggNAogI2RlZmluZSBSVE1HUlBfVEMgOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNR1JQX0lQVjRfSUZBRERSIDB4MTAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTUdSUF9JUFY0X01ST1VURSAweDIwCiAjZGVmaW5lIFJUTUdSUF9JUFY0X1JPVVRFIDB4NDAKICNkZWZpbmUgUlRNR1JQX0lQVjRfUlVMRSAweDgwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVE1HUlBfSVBWNl9JRkFERFIgMHgxMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTUdSUF9JUFY2X01ST1VURSAweDIwMAogI2RlZmluZSBSVE1HUlBfSVBWNl9ST1VURSAweDQwMAogI2RlZmluZSBSVE1HUlBfSVBWNl9JRklORk8gMHg4MDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFJUTUdSUF9ERUNuZXRfSUZBRERSIDB4MTAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRNR1JQX0RFQ25ldF9ST1VURSAweDQwMDAKICNkZWZpbmUgUlRNR1JQX0lQVjZfUFJFRklYIDB4MjAwMDAKIGVudW0gcnRuZXRsaW5rX2dyb3VwcyB7CisgIFJUTkxHUlBfTk9ORSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlROTEdSUF9OT05FLAogI2RlZmluZSBSVE5MR1JQX05PTkUgUlROTEdSUF9OT05FCi0gUlROTEdSUF9MSU5LLAorICBSVE5MR1JQX0xJTkssCiAjZGVmaW5lIFJUTkxHUlBfTElOSyBSVE5MR1JQX0xJTksKKyAgUlROTEdSUF9OT1RJRlksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUTkxHUlBfTk9USUZZLAogI2RlZmluZSBSVE5MR1JQX05PVElGWSBSVE5MR1JQX05PVElGWQotIFJUTkxHUlBfTkVJR0gsCisgIFJUTkxHUlBfTkVJR0gsCiAjZGVmaW5lIFJUTkxHUlBfTkVJR0ggUlROTEdSUF9ORUlHSAorICBSVE5MR1JQX1RDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVE5MR1JQX1RDLAogI2RlZmluZSBSVE5MR1JQX1RDIFJUTkxHUlBfVEMKLSBSVE5MR1JQX0lQVjRfSUZBRERSLAorICBSVE5MR1JQX0lQVjRfSUZBRERSLAogI2RlZmluZSBSVE5MR1JQX0lQVjRfSUZBRERSIFJUTkxHUlBfSVBWNF9JRkFERFIKKyAgUlROTEdSUF9JUFY0X01ST1VURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlROTEdSUF9JUFY0X01ST1VURSwKICNkZWZpbmUgUlROTEdSUF9JUFY0X01ST1VURSBSVE5MR1JQX0lQVjRfTVJPVVRFCi0gUlROTEdSUF9JUFY0X1JPVVRFLAorICBSVE5MR1JQX0lQVjRfUk9VVEUsCiAjZGVmaW5lIFJUTkxHUlBfSVBWNF9ST1VURSBSVE5MR1JQX0lQVjRfUk9VVEUKKyAgUlROTEdSUF9JUFY0X1JVTEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUTkxHUlBfSVBWNF9SVUxFLAogI2RlZmluZSBSVE5MR1JQX0lQVjRfUlVMRSBSVE5MR1JQX0lQVjRfUlVMRQotIFJUTkxHUlBfSVBWNl9JRkFERFIsCisgIFJUTkxHUlBfSVBWNl9JRkFERFIsCiAjZGVmaW5lIFJUTkxHUlBfSVBWNl9JRkFERFIgUlROTEdSUF9JUFY2X0lGQUREUgorICBSVE5MR1JQX0lQVjZfTVJPVVRFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVE5MR1JQX0lQVjZfTVJPVVRFLAogI2RlZmluZSBSVE5MR1JQX0lQVjZfTVJPVVRFIFJUTkxHUlBfSVBWNl9NUk9VVEUKLSBSVE5MR1JQX0lQVjZfUk9VVEUsCisgIFJUTkxHUlBfSVBWNl9ST1VURSwKICNkZWZpbmUgUlROTEdSUF9JUFY2X1JPVVRFIFJUTkxHUlBfSVBWNl9ST1VURQorICBSVE5MR1JQX0lQVjZfSUZJTkZPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSVE5MR1JQX0lQVjZfSUZJTkZPLAogI2RlZmluZSBSVE5MR1JQX0lQVjZfSUZJTkZPIFJUTkxHUlBfSVBWNl9JRklORk8KLSBSVE5MR1JQX0RFQ25ldF9JRkFERFIsCisgIFJUTkxHUlBfREVDbmV0X0lGQUREUiwKICNkZWZpbmUgUlROTEdSUF9ERUNuZXRfSUZBRERSIFJUTkxHUlBfREVDbmV0X0lGQUREUgorICBSVE5MR1JQX05PUDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUTkxHUlBfTk9QMiwKLSBSVE5MR1JQX0RFQ25ldF9ST1VURSwKKyAgUlROTEdSUF9ERUNuZXRfUk9VVEUsCiAjZGVmaW5lIFJUTkxHUlBfREVDbmV0X1JPVVRFIFJUTkxHUlBfREVDbmV0X1JPVVRFCi0gUlROTEdSUF9ERUNuZXRfUlVMRSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFJUTkxHUlBfREVDbmV0X1JVTEUsCiAjZGVmaW5lIFJUTkxHUlBfREVDbmV0X1JVTEUgUlROTEdSUF9ERUNuZXRfUlVMRQotIFJUTkxHUlBfTk9QNCwKLSBSVE5MR1JQX0lQVjZfUFJFRklYLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUlROTEdSUF9OT1A0LAorICBSVE5MR1JQX0lQVjZfUFJFRklYLAogI2RlZmluZSBSVE5MR1JQX0lQVjZfUFJFRklYIFJUTkxHUlBfSVBWNl9QUkVGSVgKKyAgUlROTEdSUF9JUFY2X1JVTEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJUTkxHUlBfSVBWNl9SVUxFLAogI2RlZmluZSBSVE5MR1JQX0lQVjZfUlVMRSBSVE5MR1JQX0lQVjZfUlVMRQotIFJUTkxHUlBfTkRfVVNFUk9QVCwKKyAgUlROTEdSUF9ORF9VU0VST1BULAogI2RlZmluZSBSVE5MR1JQX05EX1VTRVJPUFQgUlROTEdSUF9ORF9VU0VST1BUCisgIFJUTkxHUlBfUEhPTkVUX0lGQUREUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlROTEdSUF9QSE9ORVRfSUZBRERSLAogI2RlZmluZSBSVE5MR1JQX1BIT05FVF9JRkFERFIgUlROTEdSUF9QSE9ORVRfSUZBRERSCi0gUlROTEdSUF9QSE9ORVRfUk9VVEUsCisgIFJUTkxHUlBfUEhPTkVUX1JPVVRFLAogI2RlZmluZSBSVE5MR1JQX1BIT05FVF9ST1VURSBSVE5MR1JQX1BIT05FVF9ST1VURQorICBSVE5MR1JQX0RDQiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlROTEdSUF9EQ0IsCiAjZGVmaW5lIFJUTkxHUlBfRENCIFJUTkxHUlBfRENCCi0gUlROTEdSUF9JUFY0X05FVENPTkYsCisgIFJUTkxHUlBfSVBWNF9ORVRDT05GLAogI2RlZmluZSBSVE5MR1JQX0lQVjRfTkVUQ09ORiBSVE5MR1JQX0lQVjRfTkVUQ09ORgorICBSVE5MR1JQX0lQVjZfTkVUQ09ORiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUlROTEdSUF9JUFY2X05FVENPTkYsCiAjZGVmaW5lIFJUTkxHUlBfSVBWNl9ORVRDT05GIFJUTkxHUlBfSVBWNl9ORVRDT05GCi0gUlROTEdSUF9NREIsCisgIFJUTkxHUlBfTURCLAogI2RlZmluZSBSVE5MR1JQX01EQiBSVE5MR1JQX01EQgorICBfX1JUTkxHUlBfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fUlROTEdSUF9NQVgKIH07CiAjZGVmaW5lIFJUTkxHUlBfTUFYIChfX1JUTkxHUlBfTUFYIC0gMSkKIHN0cnVjdCB0Y2Ftc2cgeworICB1bnNpZ25lZCBjaGFyIHRjYV9mYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgdGNhX2ZhbWlseTsKLSB1bnNpZ25lZCBjaGFyIHRjYV9fcGFkMTsKLSB1bnNpZ25lZCBzaG9ydCB0Y2FfX3BhZDI7CisgIHVuc2lnbmVkIGNoYXIgdGNhX19wYWQxOworICB1bnNpZ25lZCBzaG9ydCB0Y2FfX3BhZDI7CiB9OworI2RlZmluZSBUQV9SVEEocikgKChzdHJ1Y3QgcnRhdHRyICopICgoKGNoYXIgKikgKHIpKSArIE5MTVNHX0FMSUdOKHNpemVvZihzdHJ1Y3QgdGNhbXNnKSkpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVEFfUlRBKHIpICgoc3RydWN0IHJ0YXR0ciopKCgoY2hhciopKHIpKSArIE5MTVNHX0FMSUdOKHNpemVvZihzdHJ1Y3QgdGNhbXNnKSkpKQotI2RlZmluZSBUQV9QQVlMT0FEKG4pIE5MTVNHX1BBWUxPQUQobixzaXplb2Yoc3RydWN0IHRjYW1zZykpCisjZGVmaW5lIFRBX1BBWUxPQUQobikgTkxNU0dfUEFZTE9BRChuLCBzaXplb2Yoc3RydWN0IHRjYW1zZykpCiAjZGVmaW5lIFRDQV9BQ1RfVEFCIDEKICNkZWZpbmUgVENBQV9NQVggMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgUlRFWFRfRklMVEVSX1ZGICgxIDw8IDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVEVYVF9GSUxURVJfQlJWTEFOICgxIDw8IDEpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2NjLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NjYy5oCmluZGV4IDRhOTVlYWQuLjhhNDMwNTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2NjLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zY2MuaApAQCAtMjcsMTQzICsyNywxNDMgQEAKICNkZWZpbmUgQkFZQ09NIDB4MTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIFNDQ19pb2N0bF9jbWRzIHsKLSBTSU9DU0NDUkVTRVJWRUQgPSBTSU9DREVWUFJJVkFURSwKLSBTSU9DU0NDQ0ZHLAotIFNJT0NTQ0NJTkksCisgIFNJT0NTQ0NSRVNFUlZFRCA9IFNJT0NERVZQUklWQVRFLAorICBTSU9DU0NDQ0ZHLAorICBTSU9DU0NDSU5JLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTSU9DU0NDQ0hBTklOSSwKLSBTSU9DU0NDU01FTSwKLSBTSU9DU0NDR0tJU1MsCi0gU0lPQ1NDQ1NLSVNTLAorICBTSU9DU0NDQ0hBTklOSSwKKyAgU0lPQ1NDQ1NNRU0sCisgIFNJT0NTQ0NHS0lTUywKKyAgU0lPQ1NDQ1NLSVNTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTSU9DU0NDR1NUQVQsCi0gU0lPQ1NDQ0NBTAorICBTSU9DU0NDR1NUQVQsCisgIFNJT0NTQ0NDQUwKIH07CiBlbnVtIEwxX3BhcmFtcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBBUkFNX0RBVEEsCi0gUEFSQU1fVFhERUxBWSwKLSBQQVJBTV9QRVJTSVNULAotIFBBUkFNX1NMT1RUSU1FLAorICBQQVJBTV9EQVRBLAorICBQQVJBTV9UWERFTEFZLAorICBQQVJBTV9QRVJTSVNULAorICBQQVJBTV9TTE9UVElNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUEFSQU1fVFhUQUlMLAotIFBBUkFNX0ZVTExEVVAsCi0gUEFSQU1fU09GVERDRCwKLSBQQVJBTV9NVVRFLAorICBQQVJBTV9UWFRBSUwsCisgIFBBUkFNX0ZVTExEVVAsCisgIFBBUkFNX1NPRlREQ0QsCisgIFBBUkFNX01VVEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBBUkFNX0RUUiwKLSBQQVJBTV9SVFMsCi0gUEFSQU1fU1BFRUQsCi0gUEFSQU1fRU5EREVMQVksCisgIFBBUkFNX0RUUiwKKyAgUEFSQU1fUlRTLAorICBQQVJBTV9TUEVFRCwKKyAgUEFSQU1fRU5EREVMQVksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBBUkFNX0dST1VQLAotIFBBUkFNX0lETEUsCi0gUEFSQU1fTUlOLAotIFBBUkFNX01BWEtFWSwKKyAgUEFSQU1fR1JPVVAsCisgIFBBUkFNX0lETEUsCisgIFBBUkFNX01JTiwKKyAgUEFSQU1fTUFYS0VZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBQQVJBTV9XQUlULAotIFBBUkFNX01BWERFRkVSLAotIFBBUkFNX1RYLAotIFBBUkFNX0hXRVZFTlQgPSAzMSwKKyAgUEFSQU1fV0FJVCwKKyAgUEFSQU1fTUFYREVGRVIsCisgIFBBUkFNX1RYLAorICBQQVJBTV9IV0VWRU5UID0gMzEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFBBUkFNX1JFVFVSTiA9IDI1NQorICBQQVJBTV9SRVRVUk4gPSAyNTUKIH07CiBlbnVtIEZVTExEVVBfbW9kZXMgewotIEtJU1NfRFVQTEVYX0hBTEYsCisgIEtJU1NfRFVQTEVYX0hBTEYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEtJU1NfRFVQTEVYX0ZVTEwsCi0gS0lTU19EVVBMRVhfTElOSywKLSBLSVNTX0RVUExFWF9PUFRJTUEKKyAgS0lTU19EVVBMRVhfRlVMTCwKKyAgS0lTU19EVVBMRVhfTElOSywKKyAgS0lTU19EVVBMRVhfT1BUSU1BCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElNRVJfT0ZGIDY1NTM1VQogI2RlZmluZSBOT19TVUNIX1BBUkFNIDY1NTM0VQogZW51bSBIV0VWRU5UX29wdHMgewotIEhXRVZfRENEX09OLAorICBIV0VWX0RDRF9PTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSFdFVl9EQ0RfT0ZGLAotIEhXRVZfQUxMX1NFTlQKKyAgSFdFVl9EQ0RfT0ZGLAorICBIV0VWX0FMTF9TRU5UCiB9OwogI2RlZmluZSBSWEdST1VQIDAxMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRYR1JPVVAgMDIwMAogZW51bSBDTE9DS19zb3VyY2VzIHsKLSBDTEtfRFBMTCwKLSBDTEtfRVhURVJOQUwsCisgIENMS19EUExMLAorICBDTEtfRVhURVJOQUwsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENMS19ESVZJREVSLAotIENMS19CUkcKKyAgQ0xLX0RJVklERVIsCisgIENMS19CUkcKIH07CiBlbnVtIFRYX3N0YXRlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVFhTX0lETEUsCi0gVFhTX0JVU1ksCi0gVFhTX0FDVElWRSwKLSBUWFNfTkVXRlJBTUUsCisgIFRYU19JRExFLAorICBUWFNfQlVTWSwKKyAgVFhTX0FDVElWRSwKKyAgVFhTX05FV0ZSQU1FLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUWFNfSURMRTIsCi0gVFhTX1dBSVQsCi0gVFhTX1RJTUVPVVQKKyAgVFhTX0lETEUyLAorICBUWFNfV0FJVCwKKyAgVFhTX1RJTUVPVVQKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiB1bnNpZ25lZCBsb25nIGlvX3BvcnQ7CiBzdHJ1Y3Qgc2NjX3N0YXQgewotIGxvbmcgcnhpbnRzOwotIGxvbmcgdHhpbnRzOworICBsb25nIHJ4aW50czsKKyAgbG9uZyB0eGludHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgZXhpbnRzOwotIGxvbmcgc3BpbnRzOwotIGxvbmcgdHhmcmFtZXM7Ci0gbG9uZyByeGZyYW1lczsKKyAgbG9uZyBleGludHM7CisgIGxvbmcgc3BpbnRzOworICBsb25nIHR4ZnJhbWVzOworICBsb25nIHJ4ZnJhbWVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBsb25nIHJ4ZXJyczsKLSBsb25nIHR4ZXJyczsKLSB1bnNpZ25lZCBpbnQgbm9zcGFjZTsKLSB1bnNpZ25lZCBpbnQgcnhfb3ZlcjsKKyAgbG9uZyByeGVycnM7CisgIGxvbmcgdHhlcnJzOworICB1bnNpZ25lZCBpbnQgbm9zcGFjZTsKKyAgdW5zaWduZWQgaW50IHJ4X292ZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0eF91bmRlcjsKLSB1bnNpZ25lZCBpbnQgdHhfc3RhdGU7Ci0gaW50IHR4X3F1ZXVlZDsKLSB1bnNpZ25lZCBpbnQgbWF4cXVldWU7CisgIHVuc2lnbmVkIGludCB0eF91bmRlcjsKKyAgdW5zaWduZWQgaW50IHR4X3N0YXRlOworICBpbnQgdHhfcXVldWVkOworICB1bnNpZ25lZCBpbnQgbWF4cXVldWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBidWZzaXplOworICB1bnNpZ25lZCBpbnQgYnVmc2l6ZTsKIH07CiBzdHJ1Y3Qgc2NjX21vZGVtIHsKLSBsb25nIHNwZWVkOworICBsb25nIHNwZWVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGNsb2Nrc3JjOwotIGNoYXIgbnJ6OworICBjaGFyIGNsb2Nrc3JjOworICBjaGFyIG5yejsKIH07CiBzdHJ1Y3Qgc2NjX2tpc3NfY21kIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGNvbW1hbmQ7Ci0gdW5zaWduZWQgcGFyYW07CisgIGludCBjb21tYW5kOworICB1bnNpZ25lZCBwYXJhbTsKIH07CiBzdHJ1Y3Qgc2NjX2h3X2NvbmZpZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGlvX3BvcnQgZGF0YV9hOwotIGlvX3BvcnQgY3RybF9hOwotIGlvX3BvcnQgZGF0YV9iOwotIGlvX3BvcnQgY3RybF9iOworICBpb19wb3J0IGRhdGFfYTsKKyAgaW9fcG9ydCBjdHJsX2E7CisgIGlvX3BvcnQgZGF0YV9iOworICBpb19wb3J0IGN0cmxfYjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW9fcG9ydCB2ZWN0b3JfbGF0Y2g7Ci0gaW9fcG9ydCBzcGVjaWFsOwotIGludCBpcnE7Ci0gbG9uZyBjbG9jazsKKyAgaW9fcG9ydCB2ZWN0b3JfbGF0Y2g7CisgIGlvX3BvcnQgc3BlY2lhbDsKKyAgaW50IGlycTsKKyAgbG9uZyBjbG9jazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBvcHRpb247Ci0gY2hhciBicmFuZDsKLSBjaGFyIGVzY2M7CisgIGNoYXIgb3B0aW9uOworICBjaGFyIGJyYW5kOworICBjaGFyIGVzY2M7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzY2NfbWVtX2NvbmZpZyB7Ci0gdW5zaWduZWQgaW50IGR1bW15OwotIHVuc2lnbmVkIGludCBidWZzaXplOworICB1bnNpZ25lZCBpbnQgZHVtbXk7CisgIHVuc2lnbmVkIGludCBidWZzaXplOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2NjX2NhbGlicmF0ZSB7Ci0gdW5zaWduZWQgaW50IHRpbWU7Ci0gdW5zaWduZWQgY2hhciBwYXR0ZXJuOworICB1bnNpZ25lZCBpbnQgdGltZTsKKyAgdW5zaWduZWQgY2hhciBwYXR0ZXJuOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2NyZWVuX2luZm8uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2NyZWVuX2luZm8uaAppbmRleCBlMDNmZWVmLi5jZmUyMmZkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NjcmVlbl9pbmZvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zY3JlZW5faW5mby5oCkBAIC0yMSw0OCArMjEsNDggQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHNjcmVlbl9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBvcmlnX3g7Ci0gX191OCBvcmlnX3k7Ci0gX191MTYgZXh0X21lbV9rOwotIF9fdTE2IG9yaWdfdmlkZW9fcGFnZTsKKyAgX191OCBvcmlnX3g7CisgIF9fdTggb3JpZ195OworICBfX3UxNiBleHRfbWVtX2s7CisgIF9fdTE2IG9yaWdfdmlkZW9fcGFnZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBvcmlnX3ZpZGVvX21vZGU7Ci0gX191OCBvcmlnX3ZpZGVvX2NvbHM7Ci0gX191OCBmbGFnczsKLSBfX3U4IHVudXNlZDI7CisgIF9fdTggb3JpZ192aWRlb19tb2RlOworICBfX3U4IG9yaWdfdmlkZW9fY29sczsKKyAgX191OCBmbGFnczsKKyAgX191OCB1bnVzZWQyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBvcmlnX3ZpZGVvX2VnYV9ieDsKLSBfX3UxNiB1bnVzZWQzOwotIF9fdTggb3JpZ192aWRlb19saW5lczsKLSBfX3U4IG9yaWdfdmlkZW9faXNWR0E7CisgIF9fdTE2IG9yaWdfdmlkZW9fZWdhX2J4OworICBfX3UxNiB1bnVzZWQzOworICBfX3U4IG9yaWdfdmlkZW9fbGluZXM7CisgIF9fdTggb3JpZ192aWRlb19pc1ZHQTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgb3JpZ192aWRlb19wb2ludHM7Ci0gX191MTYgbGZiX3dpZHRoOwotIF9fdTE2IGxmYl9oZWlnaHQ7Ci0gX191MTYgbGZiX2RlcHRoOworICBfX3UxNiBvcmlnX3ZpZGVvX3BvaW50czsKKyAgX191MTYgbGZiX3dpZHRoOworICBfX3UxNiBsZmJfaGVpZ2h0OworICBfX3UxNiBsZmJfZGVwdGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGxmYl9iYXNlOwotIF9fdTMyIGxmYl9zaXplOwotIF9fdTE2IGNsX21hZ2ljLCBjbF9vZmZzZXQ7Ci0gX191MTYgbGZiX2xpbmVsZW5ndGg7CisgIF9fdTMyIGxmYl9iYXNlOworICBfX3UzMiBsZmJfc2l6ZTsKKyAgX191MTYgY2xfbWFnaWMsIGNsX29mZnNldDsKKyAgX191MTYgbGZiX2xpbmVsZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVkX3NpemU7Ci0gX191OCByZWRfcG9zOwotIF9fdTggZ3JlZW5fc2l6ZTsKLSBfX3U4IGdyZWVuX3BvczsKKyAgX191OCByZWRfc2l6ZTsKKyAgX191OCByZWRfcG9zOworICBfX3U4IGdyZWVuX3NpemU7CisgIF9fdTggZ3JlZW5fcG9zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJsdWVfc2l6ZTsKLSBfX3U4IGJsdWVfcG9zOwotIF9fdTggcnN2ZF9zaXplOwotIF9fdTggcnN2ZF9wb3M7CisgIF9fdTggYmx1ZV9zaXplOworICBfX3U4IGJsdWVfcG9zOworICBfX3U4IHJzdmRfc2l6ZTsKKyAgX191OCByc3ZkX3BvczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgdmVzYXBtX3NlZzsKLSBfX3UxNiB2ZXNhcG1fb2ZmOwotIF9fdTE2IHBhZ2VzOwotIF9fdTE2IHZlc2FfYXR0cmlidXRlczsKKyAgX191MTYgdmVzYXBtX3NlZzsKKyAgX191MTYgdmVzYXBtX29mZjsKKyAgX191MTYgcGFnZXM7CisgIF9fdTE2IHZlc2FfYXR0cmlidXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2FwYWJpbGl0aWVzOwotIF9fdTggX3Jlc2VydmVkWzZdOworICBfX3UzMiBjYXBhYmlsaXRpZXM7CisgIF9fdTggX3Jlc2VydmVkWzZdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVklERU9fVFlQRV9NREEgMHgxMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2N0cC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zY3RwLmgKaW5kZXggZmU3YzM3Ni4uMjllNGI5ZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zY3RwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zY3RwLmgKQEAgLTY0LDQ2MyArNjQsNTExIEBACiAjZGVmaW5lIFNDVFBfR0VUX0FTU09DX0lEX0xJU1QgMjkKICNkZWZpbmUgU0NUUF9BVVRPX0FTQ09ORiAzMAogI2RlZmluZSBTQ1RQX1BFRVJfQUREUl9USExEUyAzMQotI2RlZmluZSBTQ1RQX1NPQ0tPUFRfQklORFhfQUREIDEwMAorI2RlZmluZSBTQ1RQX1JFQ1ZSQ1ZJTkZPIDMyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTQ1RQX1JFQ1ZOWFRJTkZPIDMzCisjZGVmaW5lIFNDVFBfREVGQVVMVF9TTkRJTkZPIDM0CisjZGVmaW5lIFNDVFBfU09DS09QVF9CSU5EWF9BREQgMTAwCiAjZGVmaW5lIFNDVFBfU09DS09QVF9CSU5EWF9SRU0gMTAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTQ1RQX1NPQ0tPUFRfUEVFTE9GRiAxMDIKICNkZWZpbmUgU0NUUF9TT0NLT1BUX0NPTk5FQ1RYX09MRCAxMDcKICNkZWZpbmUgU0NUUF9HRVRfUEVFUl9BRERSUyAxMDgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNDVFBfR0VUX0xPQ0FMX0FERFJTIDEwOQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0NUUF9TT0NLT1BUX0NPTk5FQ1RYIDExMAogI2RlZmluZSBTQ1RQX1NPQ0tPUFRfQ09OTkVDVFgzIDExMQogI2RlZmluZSBTQ1RQX0dFVF9BU1NPQ19TVEFUUyAxMTIKK2VudW0gc2N0cF9tc2dfZmxhZ3MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTVNHX05PVElGSUNBVElPTiA9IDB4ODAwMCwKKyNkZWZpbmUgTVNHX05PVElGSUNBVElPTiBNU0dfTk9USUZJQ0FUSU9OCit9Owogc3RydWN0IHNjdHBfaW5pdG1zZyB7Ci0gX191MTYgc2luaXRfbnVtX29zdHJlYW1zOwotIF9fdTE2IHNpbml0X21heF9pbnN0cmVhbXM7Ci0gX191MTYgc2luaXRfbWF4X2F0dGVtcHRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzaW5pdF9tYXhfaW5pdF90aW1lbzsKKyAgX191MTYgc2luaXRfbnVtX29zdHJlYW1zOworICBfX3UxNiBzaW5pdF9tYXhfaW5zdHJlYW1zOworICBfX3UxNiBzaW5pdF9tYXhfYXR0ZW1wdHM7CisgIF9fdTE2IHNpbml0X21heF9pbml0X3RpbWVvOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc2N0cF9zbmRyY3ZpbmZvIHsKLSBfX3UxNiBzaW5mb19zdHJlYW07CisgIF9fdTE2IHNpbmZvX3N0cmVhbTsKKyAgX191MTYgc2luZm9fc3NuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzaW5mb19zc247Ci0gX191MTYgc2luZm9fZmxhZ3M7Ci0gX191MzIgc2luZm9fcHBpZDsKLSBfX3UzMiBzaW5mb19jb250ZXh0OworICBfX3UxNiBzaW5mb19mbGFnczsKKyAgX191MzIgc2luZm9fcHBpZDsKKyAgX191MzIgc2luZm9fY29udGV4dDsKKyAgX191MzIgc2luZm9fdGltZXRvbGl2ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2luZm9fdGltZXRvbGl2ZTsKLSBfX3UzMiBzaW5mb190c247Ci0gX191MzIgc2luZm9fY3VtdHNuOwotIHNjdHBfYXNzb2NfdCBzaW5mb19hc3NvY19pZDsKKyAgX191MzIgc2luZm9fdHNuOworICBfX3UzMiBzaW5mb19jdW10c247CisgIHNjdHBfYXNzb2NfdCBzaW5mb19hc3NvY19pZDsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IHNjdHBfc25kaW5mbyB7CisgIF9fdTE2IHNuZF9zaWQ7CisgIF9fdTE2IHNuZF9mbGFnczsKKyAgX191MzIgc25kX3BwaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBzbmRfY29udGV4dDsKKyAgc2N0cF9hc3NvY190IHNuZF9hc3NvY19pZDsKK307CitzdHJ1Y3Qgc2N0cF9yY3ZpbmZvIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IHJjdl9zaWQ7CisgIF9fdTE2IHJjdl9zc247CisgIF9fdTE2IHJjdl9mbGFnczsKKyAgX191MzIgcmN2X3BwaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiByY3ZfdHNuOworICBfX3UzMiByY3ZfY3VtdHNuOworICBfX3UzMiByY3ZfY29udGV4dDsKKyAgc2N0cF9hc3NvY190IHJjdl9hc3NvY19pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotZW51bSBzY3RwX3NpbmZvX2ZsYWdzIHsKLSBTQ1RQX1VOT1JERVJFRCA9IDEsCi0gU0NUUF9BRERSX09WRVIgPSAyLAorc3RydWN0IHNjdHBfbnh0aW5mbyB7CisgIF9fdTE2IG54dF9zaWQ7CisgIF9fdTE2IG54dF9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9BQk9SVD00LAotIFNDVFBfU0FDS19JTU1FRElBVEVMWSA9IDgsCi0gU0NUUF9FT0Y9TVNHX0ZJTiwKKyAgX191MzIgbnh0X3BwaWQ7CisgIF9fdTMyIG54dF9sZW5ndGg7CisgIHNjdHBfYXNzb2NfdCBueHRfYXNzb2NfaWQ7Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0gc2N0cF9zaW5mb19mbGFncyB7CisgIFNDVFBfVU5PUkRFUkVEID0gKDEgPDwgMCksCisgIFNDVFBfQUREUl9PVkVSID0gKDEgPDwgMSksCisgIFNDVFBfQUJPUlQgPSAoMSA8PCAyKSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNDVFBfU0FDS19JTU1FRElBVEVMWSA9ICgxIDw8IDMpLAorICBTQ1RQX05PVElGSUNBVElPTiA9IE1TR19OT1RJRklDQVRJT04sCisgIFNDVFBfRU9GID0gTVNHX0ZJTiwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiB1bmlvbiB7Ci0gX191OCByYXc7Ci0gc3RydWN0IHNjdHBfaW5pdG1zZyBpbml0OwotIHN0cnVjdCBzY3RwX3NuZHJjdmluZm8gc25kcmN2OworICBfX3U4IHJhdzsKKyAgc3RydWN0IHNjdHBfaW5pdG1zZyBpbml0OworICBzdHJ1Y3Qgc2N0cF9zbmRyY3ZpbmZvIHNuZHJjdjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IHNjdHBfY21zZ19kYXRhX3Q7CiB0eXBlZGVmIGVudW0gc2N0cF9jbXNnX3R5cGUgewotIFNDVFBfSU5JVCwKKyAgU0NUUF9JTklULAogI2RlZmluZSBTQ1RQX0lOSVQgU0NUUF9JTklUCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNDVFBfU05EUkNWLAorICBTQ1RQX1NORFJDViwKICNkZWZpbmUgU0NUUF9TTkRSQ1YgU0NUUF9TTkRSQ1YKKyAgU0NUUF9TTkRJTkZPLAorI2RlZmluZSBTQ1RQX1NORElORk8gU0NUUF9TTkRJTkZPCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTQ1RQX1JDVklORk8sCisjZGVmaW5lIFNDVFBfUkNWSU5GTyBTQ1RQX1JDVklORk8KKyAgU0NUUF9OWFRJTkZPLAorI2RlZmluZSBTQ1RQX05YVElORk8gU0NUUF9OWFRJTkZPCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBzY3RwX2Ntc2dfdDsKIHN0cnVjdCBzY3RwX2Fzc29jX2NoYW5nZSB7CisgIF9fdTE2IHNhY190eXBlOworICBfX3UxNiBzYWNfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNhY190eXBlOwotIF9fdTE2IHNhY19mbGFnczsKLSBfX3UzMiBzYWNfbGVuZ3RoOwotIF9fdTE2IHNhY19zdGF0ZTsKKyAgX191MzIgc2FjX2xlbmd0aDsKKyAgX191MTYgc2FjX3N0YXRlOworICBfX3UxNiBzYWNfZXJyb3I7CisgIF9fdTE2IHNhY19vdXRib3VuZF9zdHJlYW1zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzYWNfZXJyb3I7Ci0gX191MTYgc2FjX291dGJvdW5kX3N0cmVhbXM7Ci0gX191MTYgc2FjX2luYm91bmRfc3RyZWFtczsKLSBzY3RwX2Fzc29jX3Qgc2FjX2Fzc29jX2lkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNhY19pbmZvWzBdOworICBfX3UxNiBzYWNfaW5ib3VuZF9zdHJlYW1zOworICBzY3RwX2Fzc29jX3Qgc2FjX2Fzc29jX2lkOworICBfX3U4IHNhY19pbmZvWzBdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHNjdHBfc2FjX3N0YXRlIHsKLSBTQ1RQX0NPTU1fVVAsCisgIFNDVFBfQ09NTV9VUCwKKyAgU0NUUF9DT01NX0xPU1QsCisgIFNDVFBfUkVTVEFSVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9DT01NX0xPU1QsCi0gU0NUUF9SRVNUQVJULAotIFNDVFBfU0hVVERPV05fQ09NUCwKLSBTQ1RQX0NBTlRfU1RSX0FTU09DLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU0NUUF9TSFVURE9XTl9DT01QLAorICBTQ1RQX0NBTlRfU1RSX0FTU09DLAogfTsKIHN0cnVjdCBzY3RwX3BhZGRyX2NoYW5nZSB7Ci0gX191MTYgc3BjX3R5cGU7Ci0gX191MTYgc3BjX2ZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcGNfbGVuZ3RoOwotIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIHNwY19hYWRkcjsKLSBpbnQgc3BjX3N0YXRlOwotIGludCBzcGNfZXJyb3I7CisgIF9fdTE2IHNwY190eXBlOworICBfX3UxNiBzcGNfZmxhZ3M7CisgIF9fdTMyIHNwY19sZW5ndGg7CisgIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIHNwY19hYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2N0cF9hc3NvY190IHNwY19hc3NvY19pZDsKKyAgaW50IHNwY19zdGF0ZTsKKyAgaW50IHNwY19lcnJvcjsKKyAgc2N0cF9hc3NvY190IHNwY19hc3NvY19pZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBzY3RwX3NwY19zdGF0ZSB7Ci0gU0NUUF9BRERSX0FWQUlMQUJMRSwKKyAgU0NUUF9BRERSX0FWQUlMQUJMRSwKKyAgU0NUUF9BRERSX1VOUkVBQ0hBQkxFLAorICBTQ1RQX0FERFJfUkVNT1ZFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9BRERSX1VOUkVBQ0hBQkxFLAotIFNDVFBfQUREUl9SRU1PVkVELAotIFNDVFBfQUREUl9BRERFRCwKLSBTQ1RQX0FERFJfTUFERV9QUklNLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTQ1RQX0FERFJfQ09ORklSTUVELAorICBTQ1RQX0FERFJfQURERUQsCisgIFNDVFBfQUREUl9NQURFX1BSSU0sCisgIFNDVFBfQUREUl9DT05GSVJNRUQsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzY3RwX3JlbW90ZV9lcnJvciB7Ci0gX191MTYgc3JlX3R5cGU7CisgIF9fdTE2IHNyZV90eXBlOworICBfX3UxNiBzcmVfZmxhZ3M7CisgIF9fdTMyIHNyZV9sZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNyZV9mbGFnczsKLSBfX3UzMiBzcmVfbGVuZ3RoOwotIF9fdTE2IHNyZV9lcnJvcjsKLSBzY3RwX2Fzc29jX3Qgc3JlX2Fzc29jX2lkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNyZV9kYXRhWzBdOworICBfX3UxNiBzcmVfZXJyb3I7CisgIHNjdHBfYXNzb2NfdCBzcmVfYXNzb2NfaWQ7CisgIF9fdTggc3JlX2RhdGFbMF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzY3RwX3NlbmRfZmFpbGVkIHsKLSBfX3UxNiBzc2ZfdHlwZTsKKyAgX191MTYgc3NmX3R5cGU7CisgIF9fdTE2IHNzZl9mbGFnczsKKyAgX191MzIgc3NmX2xlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc3NmX2ZsYWdzOwotIF9fdTMyIHNzZl9sZW5ndGg7Ci0gX191MzIgc3NmX2Vycm9yOwotIHN0cnVjdCBzY3RwX3NuZHJjdmluZm8gc3NmX2luZm87CisgIF9fdTMyIHNzZl9lcnJvcjsKKyAgc3RydWN0IHNjdHBfc25kcmN2aW5mbyBzc2ZfaW5mbzsKKyAgc2N0cF9hc3NvY190IHNzZl9hc3NvY19pZDsKKyAgX191OCBzc2ZfZGF0YVswXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2N0cF9hc3NvY190IHNzZl9hc3NvY19pZDsKLSBfX3U4IHNzZl9kYXRhWzBdOwogfTsKIGVudW0gc2N0cF9zc2ZfZmxhZ3MgeworICBTQ1RQX0RBVEFfVU5TRU5ULAorICBTQ1RQX0RBVEFfU0VOVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9EQVRBX1VOU0VOVCwKLSBTQ1RQX0RBVEFfU0VOVCwKIH07CiBzdHJ1Y3Qgc2N0cF9zaHV0ZG93bl9ldmVudCB7CisgIF9fdTE2IHNzZV90eXBlOworICBfX3UxNiBzc2VfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNzZV90eXBlOwotIF9fdTE2IHNzZV9mbGFnczsKLSBfX3UzMiBzc2VfbGVuZ3RoOwotIHNjdHBfYXNzb2NfdCBzc2VfYXNzb2NfaWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBzc2VfbGVuZ3RoOworICBzY3RwX2Fzc29jX3Qgc3NlX2Fzc29jX2lkOwogfTsKIHN0cnVjdCBzY3RwX2FkYXB0YXRpb25fZXZlbnQgewotIF9fdTE2IHNhaV90eXBlOwotIF9fdTE2IHNhaV9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2FpX2xlbmd0aDsKLSBfX3UzMiBzYWlfYWRhcHRhdGlvbl9pbmQ7Ci0gc2N0cF9hc3NvY190IHNhaV9hc3NvY19pZDsKKyAgX191MTYgc2FpX3R5cGU7CisgIF9fdTE2IHNhaV9mbGFnczsKKyAgX191MzIgc2FpX2xlbmd0aDsKKyAgX191MzIgc2FpX2FkYXB0YXRpb25faW5kOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc2N0cF9hc3NvY190IHNhaV9hc3NvY19pZDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNjdHBfcGRhcGlfZXZlbnQgewotIF9fdTE2IHBkYXBpX3R5cGU7Ci0gX191MTYgcGRhcGlfZmxhZ3M7Ci0gX191MzIgcGRhcGlfbGVuZ3RoOworICBfX3UxNiBwZGFwaV90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwZGFwaV9pbmRpY2F0aW9uOwotIHNjdHBfYXNzb2NfdCBwZGFwaV9hc3NvY19pZDsKLX07Ci1lbnVtIHsgU0NUUF9QQVJUSUFMX0RFTElWRVJZX0FCT1JURUQ9MCwgfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3Qgc2N0cF9hdXRoa2V5X2V2ZW50IHsKLSBfX3UxNiBhdXRoX3R5cGU7Ci0gX191MTYgYXV0aF9mbGFnczsKLSBfX3UzMiBhdXRoX2xlbmd0aDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgYXV0aF9rZXludW1iZXI7Ci0gX191MTYgYXV0aF9hbHRrZXludW1iZXI7Ci0gX191MzIgYXV0aF9pbmRpY2F0aW9uOwotIHNjdHBfYXNzb2NfdCBhdXRoX2Fzc29jX2lkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX07Ci1lbnVtIHsgU0NUUF9BVVRIX05FV0tFWSA9IDAsIH07Ci1zdHJ1Y3Qgc2N0cF9zZW5kZXJfZHJ5X2V2ZW50IHsKLSBfX3UxNiBzZW5kZXJfZHJ5X3R5cGU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNlbmRlcl9kcnlfZmxhZ3M7Ci0gX191MzIgc2VuZGVyX2RyeV9sZW5ndGg7Ci0gc2N0cF9hc3NvY190IHNlbmRlcl9kcnlfYXNzb2NfaWQ7Ci19OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBzY3RwX2V2ZW50X3N1YnNjcmliZSB7Ci0gX191OCBzY3RwX2RhdGFfaW9fZXZlbnQ7Ci0gX191OCBzY3RwX2Fzc29jaWF0aW9uX2V2ZW50OwotIF9fdTggc2N0cF9hZGRyZXNzX2V2ZW50OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNjdHBfc2VuZF9mYWlsdXJlX2V2ZW50OwotIF9fdTggc2N0cF9wZWVyX2Vycm9yX2V2ZW50OwotIF9fdTggc2N0cF9zaHV0ZG93bl9ldmVudDsKLSBfX3U4IHNjdHBfcGFydGlhbF9kZWxpdmVyeV9ldmVudDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzY3RwX2FkYXB0YXRpb25fbGF5ZXJfZXZlbnQ7Ci0gX191OCBzY3RwX2F1dGhlbnRpY2F0aW9uX2V2ZW50OwotIF9fdTggc2N0cF9zZW5kZXJfZHJ5X2V2ZW50OwotfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi11bmlvbiBzY3RwX25vdGlmaWNhdGlvbiB7Ci0gc3RydWN0IHsKLSBfX3UxNiBzbl90eXBlOwotIF9fdTE2IHNuX2ZsYWdzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzbl9sZW5ndGg7Ci0gfSBzbl9oZWFkZXI7Ci0gc3RydWN0IHNjdHBfYXNzb2NfY2hhbmdlIHNuX2Fzc29jX2NoYW5nZTsKLSBzdHJ1Y3Qgc2N0cF9wYWRkcl9jaGFuZ2Ugc25fcGFkZHJfY2hhbmdlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc2N0cF9yZW1vdGVfZXJyb3Igc25fcmVtb3RlX2Vycm9yOwotIHN0cnVjdCBzY3RwX3NlbmRfZmFpbGVkIHNuX3NlbmRfZmFpbGVkOwotIHN0cnVjdCBzY3RwX3NodXRkb3duX2V2ZW50IHNuX3NodXRkb3duX2V2ZW50OwotIHN0cnVjdCBzY3RwX2FkYXB0YXRpb25fZXZlbnQgc25fYWRhcHRhdGlvbl9ldmVudDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNjdHBfcGRhcGlfZXZlbnQgc25fcGRhcGlfZXZlbnQ7Ci0gc3RydWN0IHNjdHBfYXV0aGtleV9ldmVudCBzbl9hdXRoa2V5X2V2ZW50OwotIHN0cnVjdCBzY3RwX3NlbmRlcl9kcnlfZXZlbnQgc25fc2VuZGVyX2RyeV9ldmVudDsKLX07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotZW51bSBzY3RwX3NuX3R5cGUgewotIFNDVFBfU05fVFlQRV9CQVNFID0gKDE8PDE1KSwKLSBTQ1RQX0FTU09DX0NIQU5HRSwKLSNkZWZpbmUgU0NUUF9BU1NPQ19DSEFOR0UgU0NUUF9BU1NPQ19DSEFOR0UKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9QRUVSX0FERFJfQ0hBTkdFLAotI2RlZmluZSBTQ1RQX1BFRVJfQUREUl9DSEFOR0UgU0NUUF9QRUVSX0FERFJfQ0hBTkdFCi0gU0NUUF9TRU5EX0ZBSUxFRCwKLSNkZWZpbmUgU0NUUF9TRU5EX0ZBSUxFRCBTQ1RQX1NFTkRfRkFJTEVECi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNDVFBfUkVNT1RFX0VSUk9SLAotI2RlZmluZSBTQ1RQX1JFTU9URV9FUlJPUiBTQ1RQX1JFTU9URV9FUlJPUgotIFNDVFBfU0hVVERPV05fRVZFTlQsCi0jZGVmaW5lIFNDVFBfU0hVVERPV05fRVZFTlQgU0NUUF9TSFVURE9XTl9FVkVOVAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTQ1RQX1BBUlRJQUxfREVMSVZFUllfRVZFTlQsCi0jZGVmaW5lIFNDVFBfUEFSVElBTF9ERUxJVkVSWV9FVkVOVCBTQ1RQX1BBUlRJQUxfREVMSVZFUllfRVZFTlQKLSBTQ1RQX0FEQVBUQVRJT05fSU5ESUNBVElPTiwKLSNkZWZpbmUgU0NUUF9BREFQVEFUSU9OX0lORElDQVRJT04gU0NUUF9BREFQVEFUSU9OX0lORElDQVRJT04KLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9BVVRIRU5USUNBVElPTl9FVkVOVCwKLSNkZWZpbmUgU0NUUF9BVVRIRU5USUNBVElPTl9JTkRJQ0FUSU9OIFNDVFBfQVVUSEVOVElDQVRJT05fRVZFTlQKLSBTQ1RQX1NFTkRFUl9EUllfRVZFTlQsCi0jZGVmaW5lIFNDVFBfU0VOREVSX0RSWV9FVkVOVCBTQ1RQX1NFTkRFUl9EUllfRVZFTlQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19OwotdHlwZWRlZiBlbnVtIHNjdHBfc25fZXJyb3IgewotIFNDVFBfRkFJTEVEX1RIUkVTSE9MRCwKLSBTQ1RQX1JFQ0VJVkVEX1NBQ0ssCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNDVFBfSEVBUlRCRUFUX1NVQ0NFU1MsCi0gU0NUUF9SRVNQT05TRV9UT19VU0VSX1JFUSwKLSBTQ1RQX0lOVEVSTkFMX0VSUk9SLAotIFNDVFBfU0hVVERPV05fR1VBUkRfRVhQSVJFUywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9QRUVSX0ZBVUxUWSwKLX0gc2N0cF9zbl9lcnJvcl90Owotc3RydWN0IHNjdHBfcnRvaW5mbyB7Ci0gc2N0cF9hc3NvY190IHNydG9fYXNzb2NfaWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNydG9faW5pdGlhbDsKLSBfX3UzMiBzcnRvX21heDsKLSBfX3UzMiBzcnRvX21pbjsKLX07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IHNjdHBfYXNzb2NwYXJhbXMgewotIHNjdHBfYXNzb2NfdCBzYXNvY19hc3NvY19pZDsKLSBfX3UxNiBzYXNvY19hc29jbWF4cnh0OwotIF9fdTE2IHNhc29jX251bWJlcl9wZWVyX2Rlc3RpbmF0aW9uczsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2Fzb2NfcGVlcl9yd25kOwotIF9fdTMyIHNhc29jX2xvY2FsX3J3bmQ7Ci0gX191MzIgc2Fzb2NfY29va2llX2xpZmU7Ci19OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBzY3RwX3NldHBlZXJwcmltIHsKLSBzY3RwX2Fzc29jX3Qgc3NwcF9hc3NvY19pZDsKLSBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzc3BwX2FkZHI7Ci19IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBzY3RwX3ByaW0gewotIHNjdHBfYXNzb2NfdCBzc3BfYXNzb2NfaWQ7Ci0gc3RydWN0IHNvY2thZGRyX3N0b3JhZ2Ugc3NwX2FkZHI7Ci19IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgc2N0cF9zZXRwcmltIHNjdHBfcHJpbQotc3RydWN0IHNjdHBfc2V0YWRhcHRhdGlvbiB7Ci0gX191MzIgc3NiX2FkYXB0YXRpb25faW5kOwotfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1lbnVtIHNjdHBfc3BwX2ZsYWdzIHsKLSBTUFBfSEJfRU5BQkxFID0gMTw8MCwKLSBTUFBfSEJfRElTQUJMRSA9IDE8PDEsCi0gU1BQX0hCID0gU1BQX0hCX0VOQUJMRSB8IFNQUF9IQl9ESVNBQkxFLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTUFBfSEJfREVNQU5EID0gMTw8MiwKLSBTUFBfUE1UVURfRU5BQkxFID0gMTw8MywKLSBTUFBfUE1UVURfRElTQUJMRSA9IDE8PDQsCi0gU1BQX1BNVFVEID0gU1BQX1BNVFVEX0VOQUJMRSB8IFNQUF9QTVRVRF9ESVNBQkxFLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTUFBfU0FDS0RFTEFZX0VOQUJMRSA9IDE8PDUsCi0gU1BQX1NBQ0tERUxBWV9ESVNBQkxFID0gMTw8NiwKLSBTUFBfU0FDS0RFTEFZID0gU1BQX1NBQ0tERUxBWV9FTkFCTEUgfCBTUFBfU0FDS0RFTEFZX0RJU0FCTEUsCi0gU1BQX0hCX1RJTUVfSVNfWkVSTyA9IDE8PDcsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKLXN0cnVjdCBzY3RwX3BhZGRycGFyYW1zIHsKLSBzY3RwX2Fzc29jX3Qgc3BwX2Fzc29jX2lkOwotIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIHNwcF9hZGRyZXNzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcHBfaGJpbnRlcnZhbDsKLSBfX3UxNiBzcHBfcGF0aG1heHJ4dDsKLSBfX3UzMiBzcHBfcGF0aG10dTsKLSBfX3UzMiBzcHBfc2Fja2RlbGF5OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcHBfZmxhZ3M7Ci19IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOwotc3RydWN0IHNjdHBfYXV0aGNodW5rIHsKLSBfX3U4IHNhdXRoX2NodW5rOworICBfX3UxNiBwZGFwaV9mbGFnczsKKyAgX191MzIgcGRhcGlfbGVuZ3RoOworICBfX3UzMiBwZGFwaV9pbmRpY2F0aW9uOworICBzY3RwX2Fzc29jX3QgcGRhcGlfYXNzb2NfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFNDVFBfQVVUSF9ITUFDX0lEX1NIQTEgPSAxLAotIFNDVFBfQVVUSF9ITUFDX0lEX1NIQTI1NiA9IDMsCisgIFNDVFBfUEFSVElBTF9ERUxJVkVSWV9BQk9SVEVEID0gMCwKK307CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IHNjdHBfYXV0aGtleV9ldmVudCB7CisgIF9fdTE2IGF1dGhfdHlwZTsKKyAgX191MTYgYXV0aF9mbGFnczsKKyAgX191MzIgYXV0aF9sZW5ndGg7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBhdXRoX2tleW51bWJlcjsKKyAgX191MTYgYXV0aF9hbHRrZXludW1iZXI7CisgIF9fdTMyIGF1dGhfaW5kaWNhdGlvbjsKKyAgc2N0cF9hc3NvY190IGF1dGhfYXNzb2NfaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK2VudW0geworICBTQ1RQX0FVVEhfTkVXS0VZID0gMCwKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IHNjdHBfc2VuZGVyX2RyeV9ldmVudCB7CisgIF9fdTE2IHNlbmRlcl9kcnlfdHlwZTsKKyAgX191MTYgc2VuZGVyX2RyeV9mbGFnczsKKyAgX191MzIgc2VuZGVyX2RyeV9sZW5ndGg7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzY3RwX2Fzc29jX3Qgc2VuZGVyX2RyeV9hc3NvY19pZDsKK307CitzdHJ1Y3Qgc2N0cF9ldmVudF9zdWJzY3JpYmUgeworICBfX3U4IHNjdHBfZGF0YV9pb19ldmVudDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggc2N0cF9hc3NvY2lhdGlvbl9ldmVudDsKKyAgX191OCBzY3RwX2FkZHJlc3NfZXZlbnQ7CisgIF9fdTggc2N0cF9zZW5kX2ZhaWx1cmVfZXZlbnQ7CisgIF9fdTggc2N0cF9wZWVyX2Vycm9yX2V2ZW50OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBzY3RwX3NodXRkb3duX2V2ZW50OworICBfX3U4IHNjdHBfcGFydGlhbF9kZWxpdmVyeV9ldmVudDsKKyAgX191OCBzY3RwX2FkYXB0YXRpb25fbGF5ZXJfZXZlbnQ7CisgIF9fdTggc2N0cF9hdXRoZW50aWNhdGlvbl9ldmVudDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggc2N0cF9zZW5kZXJfZHJ5X2V2ZW50OworfTsKK3VuaW9uIHNjdHBfbm90aWZpY2F0aW9uIHsKKyAgc3RydWN0IHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgX191MTYgc25fdHlwZTsKKyAgICBfX3UxNiBzbl9mbGFnczsKKyAgICBfX3UzMiBzbl9sZW5ndGg7CisgIH0gc25faGVhZGVyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IHNjdHBfYXNzb2NfY2hhbmdlIHNuX2Fzc29jX2NoYW5nZTsKKyAgc3RydWN0IHNjdHBfcGFkZHJfY2hhbmdlIHNuX3BhZGRyX2NoYW5nZTsKKyAgc3RydWN0IHNjdHBfcmVtb3RlX2Vycm9yIHNuX3JlbW90ZV9lcnJvcjsKKyAgc3RydWN0IHNjdHBfc2VuZF9mYWlsZWQgc25fc2VuZF9mYWlsZWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3Qgc2N0cF9zaHV0ZG93bl9ldmVudCBzbl9zaHV0ZG93bl9ldmVudDsKKyAgc3RydWN0IHNjdHBfYWRhcHRhdGlvbl9ldmVudCBzbl9hZGFwdGF0aW9uX2V2ZW50OworICBzdHJ1Y3Qgc2N0cF9wZGFwaV9ldmVudCBzbl9wZGFwaV9ldmVudDsKKyAgc3RydWN0IHNjdHBfYXV0aGtleV9ldmVudCBzbl9hdXRoa2V5X2V2ZW50OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IHNjdHBfc2VuZGVyX2RyeV9ldmVudCBzbl9zZW5kZXJfZHJ5X2V2ZW50OworfTsKK2VudW0gc2N0cF9zbl90eXBlIHsKKyAgU0NUUF9TTl9UWVBFX0JBU0UgPSAoMSA8PCAxNSksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTQ1RQX0FTU09DX0NIQU5HRSwKKyNkZWZpbmUgU0NUUF9BU1NPQ19DSEFOR0UgU0NUUF9BU1NPQ19DSEFOR0UKKyAgU0NUUF9QRUVSX0FERFJfQ0hBTkdFLAorI2RlZmluZSBTQ1RQX1BFRVJfQUREUl9DSEFOR0UgU0NUUF9QRUVSX0FERFJfQ0hBTkdFCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTQ1RQX1NFTkRfRkFJTEVELAorI2RlZmluZSBTQ1RQX1NFTkRfRkFJTEVEIFNDVFBfU0VORF9GQUlMRUQKKyAgU0NUUF9SRU1PVEVfRVJST1IsCisjZGVmaW5lIFNDVFBfUkVNT1RFX0VSUk9SIFNDVFBfUkVNT1RFX0VSUk9SCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTQ1RQX1NIVVRET1dOX0VWRU5ULAorI2RlZmluZSBTQ1RQX1NIVVRET1dOX0VWRU5UIFNDVFBfU0hVVERPV05fRVZFTlQKKyAgU0NUUF9QQVJUSUFMX0RFTElWRVJZX0VWRU5ULAorI2RlZmluZSBTQ1RQX1BBUlRJQUxfREVMSVZFUllfRVZFTlQgU0NUUF9QQVJUSUFMX0RFTElWRVJZX0VWRU5UCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTQ1RQX0FEQVBUQVRJT05fSU5ESUNBVElPTiwKKyNkZWZpbmUgU0NUUF9BREFQVEFUSU9OX0lORElDQVRJT04gU0NUUF9BREFQVEFUSU9OX0lORElDQVRJT04KKyAgU0NUUF9BVVRIRU5USUNBVElPTl9FVkVOVCwKKyNkZWZpbmUgU0NUUF9BVVRIRU5USUNBVElPTl9JTkRJQ0FUSU9OIFNDVFBfQVVUSEVOVElDQVRJT05fRVZFTlQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNDVFBfU0VOREVSX0RSWV9FVkVOVCwKKyNkZWZpbmUgU0NUUF9TRU5ERVJfRFJZX0VWRU5UIFNDVFBfU0VOREVSX0RSWV9FVkVOVAorfTsKK3R5cGVkZWYgZW51bSBzY3RwX3NuX2Vycm9yIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNDVFBfRkFJTEVEX1RIUkVTSE9MRCwKKyAgU0NUUF9SRUNFSVZFRF9TQUNLLAorICBTQ1RQX0hFQVJUQkVBVF9TVUNDRVNTLAorICBTQ1RQX1JFU1BPTlNFX1RPX1VTRVJfUkVRLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU0NUUF9JTlRFUk5BTF9FUlJPUiwKKyAgU0NUUF9TSFVURE9XTl9HVUFSRF9FWFBJUkVTLAorICBTQ1RQX1BFRVJfRkFVTFRZLAorfSBzY3RwX3NuX2Vycm9yX3Q7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IHNjdHBfcnRvaW5mbyB7CisgIHNjdHBfYXNzb2NfdCBzcnRvX2Fzc29jX2lkOworICBfX3UzMiBzcnRvX2luaXRpYWw7CisgIF9fdTMyIHNydG9fbWF4OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgc3J0b19taW47Cit9Oworc3RydWN0IHNjdHBfYXNzb2NwYXJhbXMgeworICBzY3RwX2Fzc29jX3Qgc2Fzb2NfYXNzb2NfaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBzYXNvY19hc29jbWF4cnh0OworICBfX3UxNiBzYXNvY19udW1iZXJfcGVlcl9kZXN0aW5hdGlvbnM7CisgIF9fdTMyIHNhc29jX3BlZXJfcnduZDsKKyAgX191MzIgc2Fzb2NfbG9jYWxfcnduZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHNhc29jX2Nvb2tpZV9saWZlOworfTsKK3N0cnVjdCBzY3RwX3NldHBlZXJwcmltIHsKKyAgc2N0cF9hc3NvY190IHNzcHBfYXNzb2NfaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzc3BwX2FkZHI7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOworc3RydWN0IHNjdHBfcHJpbSB7CisgIHNjdHBfYXNzb2NfdCBzc3BfYXNzb2NfaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzc3BfYWRkcjsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CisjZGVmaW5lIHNjdHBfc2V0cHJpbSBzY3RwX3ByaW0KK3N0cnVjdCBzY3RwX3NldGFkYXB0YXRpb24geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgc3NiX2FkYXB0YXRpb25faW5kOworfTsKK2VudW0gc2N0cF9zcHBfZmxhZ3MgeworICBTUFBfSEJfRU5BQkxFID0gMSA8PCAwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU1BQX0hCX0RJU0FCTEUgPSAxIDw8IDEsCisgIFNQUF9IQiA9IFNQUF9IQl9FTkFCTEUgfCBTUFBfSEJfRElTQUJMRSwKKyAgU1BQX0hCX0RFTUFORCA9IDEgPDwgMiwKKyAgU1BQX1BNVFVEX0VOQUJMRSA9IDEgPDwgMywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNQUF9QTVRVRF9ESVNBQkxFID0gMSA8PCA0LAorICBTUFBfUE1UVUQgPSBTUFBfUE1UVURfRU5BQkxFIHwgU1BQX1BNVFVEX0RJU0FCTEUsCisgIFNQUF9TQUNLREVMQVlfRU5BQkxFID0gMSA8PCA1LAorICBTUFBfU0FDS0RFTEFZX0RJU0FCTEUgPSAxIDw8IDYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTUFBfU0FDS0RFTEFZID0gU1BQX1NBQ0tERUxBWV9FTkFCTEUgfCBTUFBfU0FDS0RFTEFZX0RJU0FCTEUsCisgIFNQUF9IQl9USU1FX0lTX1pFUk8gPSAxIDw8IDcsCit9Oworc3RydWN0IHNjdHBfcGFkZHJwYXJhbXMgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc2N0cF9hc3NvY190IHNwcF9hc3NvY19pZDsKKyAgc3RydWN0IHNvY2thZGRyX3N0b3JhZ2Ugc3BwX2FkZHJlc3M7CisgIF9fdTMyIHNwcF9oYmludGVydmFsOworICBfX3UxNiBzcHBfcGF0aG1heHJ4dDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHNwcF9wYXRobXR1OworICBfX3UzMiBzcHBfc2Fja2RlbGF5OworICBfX3UzMiBzcHBfZmxhZ3M7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBzY3RwX2F1dGhjaHVuayB7CisgIF9fdTggc2F1dGhfY2h1bms7Cit9OworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTQ1RQX0FVVEhfSE1BQ19JRF9TSEExID0gMSwKKyAgU0NUUF9BVVRIX0hNQUNfSURfU0hBMjU2ID0gMywKIH07CiBzdHJ1Y3Qgc2N0cF9obWFjYWxnbyB7Ci0gX191MzIgc2htYWNfbnVtX2lkZW50czsKLSBfX3UxNiBzaG1hY19pZGVudHNbXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHNobWFjX251bV9pZGVudHM7CisgIF9fdTE2IHNobWFjX2lkZW50c1tdOwogfTsKICNkZWZpbmUgc2htYWNfbnVtYmVyX29mX2lkZW50cyBzaG1hY19udW1faWRlbnRzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNjdHBfYXV0aGtleSB7Ci0gc2N0cF9hc3NvY190IHNjYV9hc3NvY19pZDsKKyAgc2N0cF9hc3NvY190IHNjYV9hc3NvY19pZDsKKyAgX191MTYgc2NhX2tleW51bWJlcjsKKyAgX191MTYgc2NhX2tleWxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2NhX2tleW51bWJlcjsKLSBfX3UxNiBzY2Ffa2V5bGVuZ3RoOwotIF9fdTggc2NhX2tleVtdOworICBfX3U4IHNjYV9rZXlbXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNjdHBfYXV0aGtleWlkIHsKLSBzY3RwX2Fzc29jX3Qgc2NhY3RfYXNzb2NfaWQ7Ci0gX191MTYgc2NhY3Rfa2V5bnVtYmVyOworICBzY3RwX2Fzc29jX3Qgc2NhY3RfYXNzb2NfaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBzY2FjdF9rZXludW1iZXI7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzY3RwX3NhY2tfaW5mbyB7Ci0gc2N0cF9hc3NvY190IHNhY2tfYXNzb2NfaWQ7Ci0gdWludDMyX3Qgc2Fja19kZWxheTsKLSB1aW50MzJfdCBzYWNrX2ZyZXE7CisgIHNjdHBfYXNzb2NfdCBzYWNrX2Fzc29jX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdWludDMyX3Qgc2Fja19kZWxheTsKKyAgdWludDMyX3Qgc2Fja19mcmVxOwogfTsKIHN0cnVjdCBzY3RwX2Fzc29jX3ZhbHVlIHsKLSBzY3RwX2Fzc29jX3QgYXNzb2NfaWQ7Ci0gdWludDMyX3QgYXNzb2NfdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzY3RwX2Fzc29jX3QgYXNzb2NfaWQ7CisgIHVpbnQzMl90IGFzc29jX3ZhbHVlOwogfTsKIHN0cnVjdCBzY3RwX3BhZGRyaW5mbyB7Ci0gc2N0cF9hc3NvY190IHNwaW5mb19hc3NvY19pZDsKLSBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzcGluZm9fYWRkcmVzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgc3BpbmZvX3N0YXRlOwotIF9fdTMyIHNwaW5mb19jd25kOwotIF9fdTMyIHNwaW5mb19zcnR0OwotIF9fdTMyIHNwaW5mb19ydG87CisgIHNjdHBfYXNzb2NfdCBzcGluZm9fYXNzb2NfaWQ7CisgIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIHNwaW5mb19hZGRyZXNzOworICBfX3MzMiBzcGluZm9fc3RhdGU7CisgIF9fdTMyIHNwaW5mb19jd25kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcGluZm9fbXR1OworICBfX3UzMiBzcGluZm9fc3J0dDsKKyAgX191MzIgc3BpbmZvX3J0bzsKKyAgX191MzIgc3BpbmZvX210dTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBzY3RwX3NwaW5mb19zdGF0ZSB7Ci0gU0NUUF9JTkFDVElWRSwKKyAgU0NUUF9JTkFDVElWRSwKKyAgU0NUUF9QRiwKKyAgU0NUUF9BQ1RJVkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNDVFBfUEYsCi0gU0NUUF9BQ1RJVkUsCi0gU0NUUF9VTkNPTkZJUk1FRCwKLSBTQ1RQX1VOS05PV04gPSAweGZmZmYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNDVFBfVU5DT05GSVJNRUQsCisgIFNDVFBfVU5LTk9XTiA9IDB4ZmZmZgogfTsKIHN0cnVjdCBzY3RwX3N0YXR1cyB7Ci0gc2N0cF9hc3NvY190IHNzdGF0X2Fzc29jX2lkOwotIF9fczMyIHNzdGF0X3N0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzc3RhdF9yd25kOwotIF9fdTE2IHNzdGF0X3VuYWNrZGF0YTsKLSBfX3UxNiBzc3RhdF9wZW5kZGF0YTsKLSBfX3UxNiBzc3RhdF9pbnN0cm1zOworICBzY3RwX2Fzc29jX3Qgc3N0YXRfYXNzb2NfaWQ7CisgIF9fczMyIHNzdGF0X3N0YXRlOworICBfX3UzMiBzc3RhdF9yd25kOworICBfX3UxNiBzc3RhdF91bmFja2RhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNzdGF0X291dHN0cm1zOwotIF9fdTMyIHNzdGF0X2ZyYWdtZW50YXRpb25fcG9pbnQ7Ci0gc3RydWN0IHNjdHBfcGFkZHJpbmZvIHNzdGF0X3ByaW1hcnk7CisgIF9fdTE2IHNzdGF0X3BlbmRkYXRhOworICBfX3UxNiBzc3RhdF9pbnN0cm1zOworICBfX3UxNiBzc3RhdF9vdXRzdHJtczsKKyAgX191MzIgc3N0YXRfZnJhZ21lbnRhdGlvbl9wb2ludDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBzY3RwX3BhZGRyaW5mbyBzc3RhdF9wcmltYXJ5OwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2N0cF9hdXRoY2h1bmtzIHsKLSBzY3RwX2Fzc29jX3QgZ2F1dGhfYXNzb2NfaWQ7Ci0gX191MzIgZ2F1dGhfbnVtYmVyX29mX2NodW5rczsKLSB1aW50OF90IGdhdXRoX2NodW5rc1tdOworICBzY3RwX2Fzc29jX3QgZ2F1dGhfYXNzb2NfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBnYXV0aF9udW1iZXJfb2ZfY2h1bmtzOworICB1aW50OF90IGdhdXRoX2NodW5rc1tdOwogfTsKICNkZWZpbmUgZ3V0aF9udW1iZXJfb2ZfY2h1bmtzIGdhdXRoX251bWJlcl9vZl9jaHVua3MKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHNjdHBfc3N0YXRfc3RhdGUgewotIFNDVFBfRU1QVFkgPSAwLAorICBTQ1RQX0VNUFRZID0gMCwKKyAgU0NUUF9DTE9TRUQgPSAxLAorICBTQ1RQX0NPT0tJRV9XQUlUID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0NUUF9DTE9TRUQgPSAxLAotIFNDVFBfQ09PS0lFX1dBSVQgPSAyLAotIFNDVFBfQ09PS0lFX0VDSE9FRCA9IDMsCi0gU0NUUF9FU1RBQkxJU0hFRCA9IDQsCisgIFNDVFBfQ09PS0lFX0VDSE9FRCA9IDMsCisgIFNDVFBfRVNUQUJMSVNIRUQgPSA0LAorICBTQ1RQX1NIVVRET1dOX1BFTkRJTkcgPSA1LAorICBTQ1RQX1NIVVRET1dOX1NFTlQgPSA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTQ1RQX1NIVVRET1dOX1BFTkRJTkcgPSA1LAotIFNDVFBfU0hVVERPV05fU0VOVCA9IDYsCi0gU0NUUF9TSFVURE9XTl9SRUNFSVZFRCA9IDcsCi0gU0NUUF9TSFVURE9XTl9BQ0tfU0VOVCA9IDgsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTQ1RQX1NIVVRET1dOX1JFQ0VJVkVEID0gNywKKyAgU0NUUF9TSFVURE9XTl9BQ0tfU0VOVCA9IDgsCiB9Owogc3RydWN0IHNjdHBfYXNzb2NfaWRzIHsKLSBfX3UzMiBnYWlkc19udW1iZXJfb2ZfaWRzOwotIHNjdHBfYXNzb2NfdCBnYWlkc19hc3NvY19pZFtdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZ2FpZHNfbnVtYmVyX29mX2lkczsKKyAgc2N0cF9hc3NvY190IGdhaWRzX2Fzc29jX2lkW107CiB9Owogc3RydWN0IHNjdHBfZ2V0YWRkcnNfb2xkIHsKLSBzY3RwX2Fzc29jX3QgYXNzb2NfaWQ7Ci0gaW50IGFkZHJfbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHIgKmFkZHJzOworICBzY3RwX2Fzc29jX3QgYXNzb2NfaWQ7CisgIGludCBhZGRyX251bTsKKyAgc3RydWN0IHNvY2thZGRyICogYWRkcnM7CiB9Owotc3RydWN0IHNjdHBfZ2V0YWRkcnMgewotIHNjdHBfYXNzb2NfdCBhc3NvY19pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYWRkcl9udW07Ci0gX191OCBhZGRyc1swXTsKK3N0cnVjdCBzY3RwX2dldGFkZHJzIHsKKyAgc2N0cF9hc3NvY190IGFzc29jX2lkOworICBfX3UzMiBhZGRyX251bTsKKyAgX191OCBhZGRyc1swXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNjdHBfYXNzb2Nfc3RhdHMgeworICBzY3RwX2Fzc29jX3Qgc2FzX2Fzc29jX2lkOworICBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzYXNfb2JzX3J0b19pcGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNjdHBfYXNzb2NfdCBzYXNfYXNzb2NfaWQ7Ci0gc3RydWN0IHNvY2thZGRyX3N0b3JhZ2Ugc2FzX29ic19ydG9faXBhZGRyOwotIF9fdTY0IHNhc19tYXhydG87Ci0gX191NjQgc2FzX2lzYWNrczsKKyAgX191NjQgc2FzX21heHJ0bzsKKyAgX191NjQgc2FzX2lzYWNrczsKKyAgX191NjQgc2FzX29zYWNrczsKKyAgX191NjQgc2FzX29wYWNrZXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzYXNfb3NhY2tzOwotIF9fdTY0IHNhc19vcGFja2V0czsKLSBfX3U2NCBzYXNfaXBhY2tldHM7Ci0gX191NjQgc2FzX3J0eGNodW5rczsKKyAgX191NjQgc2FzX2lwYWNrZXRzOworICBfX3U2NCBzYXNfcnR4Y2h1bmtzOworICBfX3U2NCBzYXNfb3V0b2ZzZXF0c25zOworICBfX3U2NCBzYXNfaWR1cGNodW5rczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgc2FzX291dG9mc2VxdHNuczsKLSBfX3U2NCBzYXNfaWR1cGNodW5rczsKLSBfX3U2NCBzYXNfZ2FwY250OwotIF9fdTY0IHNhc19vdW9kY2h1bmtzOworICBfX3U2NCBzYXNfZ2FwY250OworICBfX3U2NCBzYXNfb3VvZGNodW5rczsKKyAgX191NjQgc2FzX2l1b2RjaHVua3M7CisgIF9fdTY0IHNhc19vb2RjaHVua3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNhc19pdW9kY2h1bmtzOwotIF9fdTY0IHNhc19vb2RjaHVua3M7Ci0gX191NjQgc2FzX2lvZGNodW5rczsKLSBfX3U2NCBzYXNfb2N0cmxjaHVua3M7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNhc19pY3RybGNodW5rczsKKyAgX191NjQgc2FzX2lvZGNodW5rczsKKyAgX191NjQgc2FzX29jdHJsY2h1bmtzOworICBfX3U2NCBzYXNfaWN0cmxjaHVua3M7CiB9OwotZW51bSBzY3RwX21zZ19mbGFncyB7Ci0gTVNHX05PVElGSUNBVElPTiA9IDB4ODAwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1TR19OT1RJRklDQVRJT04gTVNHX05PVElGSUNBVElPTgotfTsKICNkZWZpbmUgU0NUUF9CSU5EWF9BRERfQUREUiAweDAxCiAjZGVmaW5lIFNDVFBfQklORFhfUkVNX0FERFIgMHgwMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSBzY3RwX2Fzc29jX3QgYXNzb2NpZDsKLSBpbnQgc2Q7CisgIHNjdHBfYXNzb2NfdCBhc3NvY2lkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IHNkOwogfSBzY3RwX3BlZWxvZmZfYXJnX3Q7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNjdHBfcGFkZHJ0aGxkcyB7Ci0gc2N0cF9hc3NvY190IHNwdF9hc3NvY19pZDsKLSBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzcHRfYWRkcmVzczsKLSBfX3UxNiBzcHRfcGF0aG1heHJ4dDsKKyAgc2N0cF9hc3NvY190IHNwdF9hc3NvY19pZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc3B0X3BhdGhwZnRobGQ7CisgIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIHNwdF9hZGRyZXNzOworICBfX3UxNiBzcHRfcGF0aG1heHJ4dDsKKyAgX191MTYgc3B0X3BhdGhwZnRobGQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZGxhLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NkbGEuaAppbmRleCBhZTVkMTYxLi5iZDk1N2I0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NkbGEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NkbGEuaApAQCAtMjcsNyArMjcsNyBAQAogI2RlZmluZSBTRExBX1M1MDggNTA4MAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0RMQV9TNTA5IDUwOTAKLSNkZWZpbmUgU0RMQV9VTktOT1dOIC0xCisjZGVmaW5lIFNETEFfVU5LTk9XTiAtIDEKICNkZWZpbmUgU0RMQV9TNTA4X1BPUlRfVjM1IDB4MDAKICNkZWZpbmUgU0RMQV9TNTA4X1BPUlRfUlMyMzIgMHgwMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTQ4LDEwICs0OCwxMCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0RMQV9SRUFETUVNIChGUkFEX0xBU1RfSU9DVEwgKyA2KQogc3RydWN0IHNkbGFfbWVtIHsKLSBpbnQgYWRkcjsKLSBpbnQgbGVuOworICBpbnQgYWRkcjsKKyAgaW50IGxlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCBfX3VzZXIgKmRhdGE7CisgIHZvaWQgX191c2VyICogZGF0YTsKIH07CiAjZGVmaW5lIFNETEFfU1RBUlQgKEZSQURfTEFTVF9JT0NUTCArIDcpCiAjZGVmaW5lIFNETEFfU1RPUCAoRlJBRF9MQVNUX0lPQ1RMICsgOCkKQEAgLTY4LDQyICs2OCw0MiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0RMQV9NQVhfRExDSSAyNAogc3RydWN0IHNkbGFfY29uZiB7Ci0gc2hvcnQgc3RhdGlvbjsKLSBzaG9ydCBjb25maWc7CisgIHNob3J0IHN0YXRpb247CisgIHNob3J0IGNvbmZpZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQga2JhdWQ7Ci0gc2hvcnQgY2xvY2tpbmc7Ci0gc2hvcnQgbWF4X2ZybTsKLSBzaG9ydCBUMzkxOworICBzaG9ydCBrYmF1ZDsKKyAgc2hvcnQgY2xvY2tpbmc7CisgIHNob3J0IG1heF9mcm07CisgIHNob3J0IFQzOTE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IFQzOTI7Ci0gc2hvcnQgTjM5MTsKLSBzaG9ydCBOMzkyOwotIHNob3J0IE4zOTM7CisgIHNob3J0IFQzOTI7CisgIHNob3J0IE4zOTE7CisgIHNob3J0IE4zOTI7CisgIHNob3J0IE4zOTM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IENJUl9md2Q7Ci0gc2hvcnQgQmNfZndkOwotIHNob3J0IEJlX2Z3ZDsKLSBzaG9ydCBDSVJfYndkOworICBzaG9ydCBDSVJfZndkOworICBzaG9ydCBCY19md2Q7CisgIHNob3J0IEJlX2Z3ZDsKKyAgc2hvcnQgQ0lSX2J3ZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgQmNfYndkOwotIHNob3J0IEJlX2J3ZDsKKyAgc2hvcnQgQmNfYndkOworICBzaG9ydCBCZV9id2Q7CiB9Owogc3RydWN0IHNkbGFfZGxjaV9jb25mIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgY29uZmlnOwotIHNob3J0IENJUl9md2Q7Ci0gc2hvcnQgQmNfZndkOwotIHNob3J0IEJlX2Z3ZDsKKyAgc2hvcnQgY29uZmlnOworICBzaG9ydCBDSVJfZndkOworICBzaG9ydCBCY19md2Q7CisgIHNob3J0IEJlX2Z3ZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgQ0lSX2J3ZDsKLSBzaG9ydCBCY19id2Q7Ci0gc2hvcnQgQmVfYndkOwotIHNob3J0IFRjX2Z3ZDsKKyAgc2hvcnQgQ0lSX2J3ZDsKKyAgc2hvcnQgQmNfYndkOworICBzaG9ydCBCZV9id2Q7CisgIHNob3J0IFRjX2Z3ZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2hvcnQgVGNfYndkOwotIHNob3J0IFRmX21heDsKLSBzaG9ydCBUYl9tYXg7CisgIHNob3J0IFRjX2J3ZDsKKyAgc2hvcnQgVGZfbWF4OworICBzaG9ydCBUYl9tYXg7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZWNjb21wLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlY2NvbXAuaAppbmRleCA5MDc4OTVlLi43YzBhNTFhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlY2NvbXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlY2NvbXAuaApAQCAtMjQsMjEgKzI0LDI1IEBACiAjZGVmaW5lIFNFQ0NPTVBfTU9ERV9ESVNBQkxFRCAwCiAjZGVmaW5lIFNFQ0NPTVBfTU9ERV9TVFJJQ1QgMQogI2RlZmluZSBTRUNDT01QX01PREVfRklMVEVSIDIKLSNkZWZpbmUgU0VDQ09NUF9SRVRfS0lMTCAweDAwMDAwMDAwVQorI2RlZmluZSBTRUNDT01QX1NFVF9NT0RFX1NUUklDVCAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTRUNDT01QX1NFVF9NT0RFX0ZJTFRFUiAxCisjZGVmaW5lIFNFQ0NPTVBfRklMVEVSX0ZMQUdfVFNZTkMgMQorI2RlZmluZSBTRUNDT01QX1JFVF9LSUxMIDB4MDAwMDAwMDBVCiAjZGVmaW5lIFNFQ0NPTVBfUkVUX1RSQVAgMHgwMDAzMDAwMFUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFQ0NPTVBfUkVUX0VSUk5PIDB4MDAwNTAwMDBVCiAjZGVmaW5lIFNFQ0NPTVBfUkVUX1RSQUNFIDB4N2ZmMDAwMDBVCiAjZGVmaW5lIFNFQ0NPTVBfUkVUX0FMTE9XIDB4N2ZmZjAwMDBVCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRUNDT01QX1JFVF9BQ1RJT04gMHg3ZmZmMDAwMFUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFQ0NPTVBfUkVUX0RBVEEgMHgwMDAwZmZmZlUKIHN0cnVjdCBzZWNjb21wX2RhdGEgewotIGludCBucjsKKyAgaW50IG5yOworICBfX3UzMiBhcmNoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhcmNoOwotIF9fdTY0IGluc3RydWN0aW9uX3BvaW50ZXI7Ci0gX191NjQgYXJnc1s2XTsKKyAgX191NjQgaW5zdHJ1Y3Rpb25fcG9pbnRlcjsKKyAgX191NjQgYXJnc1s2XTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZWN1cmViaXRzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlY3VyZWJpdHMuaAppbmRleCBhMjhhYmU4Li5hNjQ0ZDVhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlY3VyZWJpdHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlY3VyZWJpdHMuaApAQCAtMjksMTMgKzI5LDEzIEBACiAjZGVmaW5lIFNFQ1VSRV9OT19TRVRVSURfRklYVVAgMgogI2RlZmluZSBTRUNVUkVfTk9fU0VUVUlEX0ZJWFVQX0xPQ0tFRCAzCiAjZGVmaW5lIFNFQ0JJVF9OT19TRVRVSURfRklYVVAgKGlzc2VjdXJlX21hc2soU0VDVVJFX05PX1NFVFVJRF9GSVhVUCkpCi0jZGVmaW5lIFNFQ0JJVF9OT19TRVRVSURfRklYVVBfTE9DS0VEICAgKGlzc2VjdXJlX21hc2soU0VDVVJFX05PX1NFVFVJRF9GSVhVUF9MT0NLRUQpKQorI2RlZmluZSBTRUNCSVRfTk9fU0VUVUlEX0ZJWFVQX0xPQ0tFRCAoaXNzZWN1cmVfbWFzayhTRUNVUkVfTk9fU0VUVUlEX0ZJWFVQX0xPQ0tFRCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRUNVUkVfS0VFUF9DQVBTIDQKICNkZWZpbmUgU0VDVVJFX0tFRVBfQ0FQU19MT0NLRUQgNQogI2RlZmluZSBTRUNCSVRfS0VFUF9DQVBTIChpc3NlY3VyZV9tYXNrKFNFQ1VSRV9LRUVQX0NBUFMpKQogI2RlZmluZSBTRUNCSVRfS0VFUF9DQVBTX0xPQ0tFRCAoaXNzZWN1cmVfbWFzayhTRUNVUkVfS0VFUF9DQVBTX0xPQ0tFRCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTRUNVUkVfQUxMX0JJVFMgKGlzc2VjdXJlX21hc2soU0VDVVJFX05PUk9PVCkgfCAgIGlzc2VjdXJlX21hc2soU0VDVVJFX05PX1NFVFVJRF9GSVhVUCkgfCAgIGlzc2VjdXJlX21hc2soU0VDVVJFX0tFRVBfQ0FQUykpCisjZGVmaW5lIFNFQ1VSRV9BTExfQklUUyAoaXNzZWN1cmVfbWFzayhTRUNVUkVfTk9ST09UKSB8IGlzc2VjdXJlX21hc2soU0VDVVJFX05PX1NFVFVJRF9GSVhVUCkgfCBpc3NlY3VyZV9tYXNrKFNFQ1VSRV9LRUVQX0NBUFMpKQogI2RlZmluZSBTRUNVUkVfQUxMX0xPQ0tTIChTRUNVUkVfQUxMX0JJVFMgPDwgMSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZWxpbnV4X25ldGxpbmsuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VsaW51eF9uZXRsaW5rLmgKaW5kZXggYzVkZGQyYi4uOGU0NjJjOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZWxpbnV4X25ldGxpbmsuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlbGludXhfbmV0bGluay5oCkBAIC0yMiw5ICsyMiw5IEBACiAjZGVmaW5lIFNFTE5MX01TR19CQVNFIDB4MTAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBTRUxOTF9NU0dfU0VURU5GT1JDRSA9IFNFTE5MX01TR19CQVNFLAotIFNFTE5MX01TR19QT0xJQ1lMT0FELAotIFNFTE5MX01TR19NQVgKKyAgU0VMTkxfTVNHX1NFVEVORk9SQ0UgPSBTRUxOTF9NU0dfQkFTRSwKKyAgU0VMTkxfTVNHX1BPTElDWUxPQUQsCisgIFNFTE5MX01TR19NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBTRUxOTF9HUlBfTk9ORSAweDAwMDAwMDAwCkBAIC0zMiwyMCArMzIsMjAgQEAKICNkZWZpbmUgU0VMTkxfR1JQX0FMTCAweGZmZmZmZmZmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBzZWxpbnV4X25sZ3JvdXBzIHsKLSBTRUxOTEdSUF9OT05FLAorICBTRUxOTEdSUF9OT05FLAogI2RlZmluZSBTRUxOTEdSUF9OT05FIFNFTE5MR1JQX05PTkUKLSBTRUxOTEdSUF9BVkMsCisgIFNFTE5MR1JQX0FWQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFTE5MR1JQX0FWQyBTRUxOTEdSUF9BVkMKLSBfX1NFTE5MR1JQX01BWAorICBfX1NFTE5MR1JQX01BWAogfTsKICNkZWZpbmUgU0VMTkxHUlBfTUFYIChfX1NFTE5MR1JQX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNlbG5sX21zZ19zZXRlbmZvcmNlIHsKLSBfX3MzMiB2YWw7CisgIF9fczMyIHZhbDsKIH07CiBzdHJ1Y3Qgc2VsbmxfbXNnX3BvbGljeWxvYWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzZXFubzsKKyAgX191MzIgc2Vxbm87CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZW0uaAppbmRleCA4OGIyZjE5Li4wNDkwOWQ1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VtLmgKQEAgLTMzLDUyICszMyw1MiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VNX0lORk8gMTkKIHN0cnVjdCBzZW1pZF9kcyB7Ci0gc3RydWN0IGlwY19wZXJtIHNlbV9wZXJtOwotIF9fa2VybmVsX3RpbWVfdCBzZW1fb3RpbWU7CisgIHN0cnVjdCBpcGNfcGVybSBzZW1fcGVybTsKKyAgX19rZXJuZWxfdGltZV90IHNlbV9vdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfdGltZV90IHNlbV9jdGltZTsKLSBzdHJ1Y3Qgc2VtICpzZW1fYmFzZTsKLSBzdHJ1Y3Qgc2VtX3F1ZXVlICpzZW1fcGVuZGluZzsKLSBzdHJ1Y3Qgc2VtX3F1ZXVlICoqc2VtX3BlbmRpbmdfbGFzdDsKKyAgX19rZXJuZWxfdGltZV90IHNlbV9jdGltZTsKKyAgc3RydWN0IHNlbSAqIHNlbV9iYXNlOworICBzdHJ1Y3Qgc2VtX3F1ZXVlICogc2VtX3BlbmRpbmc7CisgIHN0cnVjdCBzZW1fcXVldWUgKiAqIHNlbV9wZW5kaW5nX2xhc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzZW1fdW5kbyAqdW5kbzsKLSB1bnNpZ25lZCBzaG9ydCBzZW1fbnNlbXM7CisgIHN0cnVjdCBzZW1fdW5kbyAqIHVuZG87CisgIHVuc2lnbmVkIHNob3J0IHNlbV9uc2VtczsKIH07CiAjaW5jbHVkZSA8YXNtL3NlbWJ1Zi5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzZW1idWYgewotIHVuc2lnbmVkIHNob3J0IHNlbV9udW07Ci0gc2hvcnQgc2VtX29wOwotIHNob3J0IHNlbV9mbGc7CisgIHVuc2lnbmVkIHNob3J0IHNlbV9udW07CisgIHNob3J0IHNlbV9vcDsKKyAgc2hvcnQgc2VtX2ZsZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogdW5pb24gc2VtdW4gewotIGludCB2YWw7Ci0gc3RydWN0IHNlbWlkX2RzIF9fdXNlciAqYnVmOworICBpbnQgdmFsOworICBzdHJ1Y3Qgc2VtaWRfZHMgX191c2VyICogYnVmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBfX3VzZXIgKmFycmF5OwotIHN0cnVjdCBzZW1pbmZvIF9fdXNlciAqX19idWY7Ci0gdm9pZCBfX3VzZXIgKl9fcGFkOworICB1bnNpZ25lZCBzaG9ydCBfX3VzZXIgKiBhcnJheTsKKyAgc3RydWN0IHNlbWluZm8gX191c2VyICogX19idWY7CisgIHZvaWQgX191c2VyICogX19wYWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzZW1pbmZvIHsKLSBpbnQgc2VtbWFwOwotIGludCBzZW1tbmk7Ci0gaW50IHNlbW1uczsKKyAgaW50IHNlbW1hcDsKKyAgaW50IHNlbW1uaTsKKyAgaW50IHNlbW1uczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHNlbW1udTsKLSBpbnQgc2VtbXNsOwotIGludCBzZW1vcG07Ci0gaW50IHNlbXVtZTsKKyAgaW50IHNlbW1udTsKKyAgaW50IHNlbW1zbDsKKyAgaW50IHNlbW9wbTsKKyAgaW50IHNlbXVtZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHNlbXVzejsKLSBpbnQgc2Vtdm14OwotIGludCBzZW1hZW07CisgIGludCBzZW11c3o7CisgIGludCBzZW12bXg7CisgIGludCBzZW1hZW07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VNTU5JIDEyOAogI2RlZmluZSBTRU1NU0wgMjUwCi0jZGVmaW5lIFNFTU1OUyAoU0VNTU5JKlNFTU1TTCkKKyNkZWZpbmUgU0VNTU5TIChTRU1NTkkgKiBTRU1NU0wpCiAjZGVmaW5lIFNFTU9QTSAzMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VNVk1YIDMyNzY3CmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlcmlhbC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZXJpYWwuaAppbmRleCBlNjIyNjgyLi4zMDAxNzZiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlcmlhbC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VyaWFsLmgKQEAgLTIyLDI4ICsyMiwyOCBAQAogI2luY2x1ZGUgPGxpbnV4L3R0eV9mbGFncy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzZXJpYWxfc3RydWN0IHsKLSBpbnQgdHlwZTsKLSBpbnQgbGluZTsKLSB1bnNpZ25lZCBpbnQgcG9ydDsKKyAgaW50IHR5cGU7CisgIGludCBsaW5lOworICB1bnNpZ25lZCBpbnQgcG9ydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGlycTsKLSBpbnQgZmxhZ3M7Ci0gaW50IHhtaXRfZmlmb19zaXplOwotIGludCBjdXN0b21fZGl2aXNvcjsKKyAgaW50IGlycTsKKyAgaW50IGZsYWdzOworICBpbnQgeG1pdF9maWZvX3NpemU7CisgIGludCBjdXN0b21fZGl2aXNvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGJhdWRfYmFzZTsKLSB1bnNpZ25lZCBzaG9ydCBjbG9zZV9kZWxheTsKLSBjaGFyIGlvX3R5cGU7Ci0gY2hhciByZXNlcnZlZF9jaGFyWzFdOworICBpbnQgYmF1ZF9iYXNlOworICB1bnNpZ25lZCBzaG9ydCBjbG9zZV9kZWxheTsKKyAgY2hhciBpb190eXBlOworICBjaGFyIHJlc2VydmVkX2NoYXJbMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBodWI2OwotIHVuc2lnbmVkIHNob3J0IGNsb3Npbmdfd2FpdDsKLSB1bnNpZ25lZCBzaG9ydCBjbG9zaW5nX3dhaXQyOwotIHVuc2lnbmVkIGNoYXIgKmlvbWVtX2Jhc2U7CisgIGludCBodWI2OworICB1bnNpZ25lZCBzaG9ydCBjbG9zaW5nX3dhaXQ7CisgIHVuc2lnbmVkIHNob3J0IGNsb3Npbmdfd2FpdDI7CisgIHVuc2lnbmVkIGNoYXIgKiBpb21lbV9iYXNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBpb21lbV9yZWdfc2hpZnQ7Ci0gdW5zaWduZWQgaW50IHBvcnRfaGlnaDsKLSB1bnNpZ25lZCBsb25nIGlvbWFwX2Jhc2U7CisgIHVuc2lnbmVkIHNob3J0IGlvbWVtX3JlZ19zaGlmdDsKKyAgdW5zaWduZWQgaW50IHBvcnRfaGlnaDsKKyAgdW5zaWduZWQgbG9uZyBpb21hcF9iYXNlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFTWU5DX0NMT1NJTkdfV0FJVF9JTkYgMApAQCAtNzcsNDAgKzc3LDQwIEBACiAjZGVmaW5lIFVBUlRfTkFUU0VNSSAweDA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNlcmlhbF9tdWx0aXBvcnRfc3RydWN0IHsKLSBpbnQgaXJxOwotIGludCBwb3J0MTsKLSB1bnNpZ25lZCBjaGFyIG1hc2sxLCBtYXRjaDE7CisgIGludCBpcnE7CisgIGludCBwb3J0MTsKKyAgdW5zaWduZWQgY2hhciBtYXNrMSwgbWF0Y2gxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcG9ydDI7Ci0gdW5zaWduZWQgY2hhciBtYXNrMiwgbWF0Y2gyOwotIGludCBwb3J0MzsKLSB1bnNpZ25lZCBjaGFyIG1hc2szLCBtYXRjaDM7CisgIGludCBwb3J0MjsKKyAgdW5zaWduZWQgY2hhciBtYXNrMiwgbWF0Y2gyOworICBpbnQgcG9ydDM7CisgIHVuc2lnbmVkIGNoYXIgbWFzazMsIG1hdGNoMzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBvcnQ0OwotIHVuc2lnbmVkIGNoYXIgbWFzazQsIG1hdGNoNDsKLSBpbnQgcG9ydF9tb25pdG9yOwotIGludCByZXNlcnZlZFszMl07CisgIGludCBwb3J0NDsKKyAgdW5zaWduZWQgY2hhciBtYXNrNCwgbWF0Y2g0OworICBpbnQgcG9ydF9tb25pdG9yOworICBpbnQgcmVzZXJ2ZWRbMzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc2VyaWFsX2ljb3VudGVyX3N0cnVjdCB7Ci0gaW50IGN0cywgZHNyLCBybmcsIGRjZDsKLSBpbnQgcngsIHR4OworICBpbnQgY3RzLCBkc3IsIHJuZywgZGNkOworICBpbnQgcngsIHR4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZnJhbWUsIG92ZXJydW4sIHBhcml0eSwgYnJrOwotIGludCBidWZfb3ZlcnJ1bjsKLSBpbnQgcmVzZXJ2ZWRbOV07CisgIGludCBmcmFtZSwgb3ZlcnJ1biwgcGFyaXR5LCBicms7CisgIGludCBidWZfb3ZlcnJ1bjsKKyAgaW50IHJlc2VydmVkWzldOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2VyaWFsX3JzNDg1IHsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgZmxhZ3M7CiAjZGVmaW5lIFNFUl9SUzQ4NV9FTkFCTEVEICgxIDw8IDApCiAjZGVmaW5lIFNFUl9SUzQ4NV9SVFNfT05fU0VORCAoMSA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VSX1JTNDg1X1JUU19BRlRFUl9TRU5EICgxIDw8IDIpCiAjZGVmaW5lIFNFUl9SUzQ4NV9SWF9EVVJJTkdfVFggKDEgPDwgNCkKLSBfX3UzMiBkZWxheV9ydHNfYmVmb3JlX3NlbmQ7Ci0gX191MzIgZGVsYXlfcnRzX2FmdGVyX3NlbmQ7CisgIF9fdTMyIGRlbGF5X3J0c19iZWZvcmVfc2VuZDsKKyAgX191MzIgZGVsYXlfcnRzX2FmdGVyX3NlbmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBhZGRpbmdbNV07CisgIF9fdTMyIHBhZGRpbmdbNV07CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlcmlhbF9jb3JlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlcmlhbF9jb3JlLmgKaW5kZXggNTlmYzMyYS4uZTMxMGY4ZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZXJpYWxfY29yZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VyaWFsX2NvcmUuaApAQCAtMTQzLDQgKzE0Myw4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQT1JUX0FTQyAxMDUKICNkZWZpbmUgUE9SVF9USUxFR1ggMTA2CisjZGVmaW5lIFBPUlRfTUVOX1oxMzUgMTA3CisjZGVmaW5lIFBPUlRfU0MxNklTN1hYIDEwOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgUE9SVF9NRVNPTiAxMDkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZXJpYWxfcmVnLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlcmlhbF9yZWcuaAppbmRleCAxYjBiYWRhLi5mNjhjNTRiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlcmlhbF9yZWcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlcmlhbF9yZWcuaApAQCAtMzEsNyArMzEsNyBAQAogI2RlZmluZSBVQVJUX0lJUiAyCiAjZGVmaW5lIFVBUlRfSUlSX05PX0lOVCAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBVQVJUX0lJUl9JRCAweDA2CisjZGVmaW5lIFVBUlRfSUlSX0lEIDB4MGUKICNkZWZpbmUgVUFSVF9JSVJfTVNJIDB4MDAKICNkZWZpbmUgVUFSVF9JSVJfVEhSSSAweDAyCiAjZGVmaW5lIFVBUlRfSUlSX1JESSAweDA0CkBAIC03NiwyMzkgKzc2LDI0MyBAQAogI2RlZmluZSBVQVJUX0ZDUjZfVF9UUklHR0VSXzMwIDB4MzAKICNkZWZpbmUgVUFSVF9GQ1I3XzY0QllURSAweDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBVQVJUX0ZDUl9SX1RSSUdfU0hJRlQgNgorI2RlZmluZSBVQVJUX0ZDUl9SX1RSSUdfQklUUyh4KSAoKCh4KSAmIFVBUlRfRkNSX1RSSUdHRVJfTUFTSykgPj4gVUFSVF9GQ1JfUl9UUklHX1NISUZUKQorI2RlZmluZSBVQVJUX0ZDUl9SX1RSSUdfTUFYX1NUQVRFIDQKICNkZWZpbmUgVUFSVF9MQ1IgMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9MQ1JfRExBQiAweDgwCiAjZGVmaW5lIFVBUlRfTENSX1NCQyAweDQwCiAjZGVmaW5lIFVBUlRfTENSX1NQQVIgMHgyMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9MQ1JfRVBBUiAweDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0xDUl9QQVJJVFkgMHgwOAogI2RlZmluZSBVQVJUX0xDUl9TVE9QIDB4MDQKICNkZWZpbmUgVUFSVF9MQ1JfV0xFTjUgMHgwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9MQ1JfV0xFTjYgMHgwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9MQ1JfV0xFTjcgMHgwMgogI2RlZmluZSBVQVJUX0xDUl9XTEVOOCAweDAzCiAjZGVmaW5lIFVBUlRfTENSX0NPTkZfTU9ERV9BIFVBUlRfTENSX0RMQUIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTENSX0NPTkZfTU9ERV9CIDB4QkYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTUNSIDQKICNkZWZpbmUgVUFSVF9NQ1JfQ0xLU0VMIDB4ODAKICNkZWZpbmUgVUFSVF9NQ1JfVENSVExSIDB4NDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTUNSX1hPTkFOWSAweDIwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX01DUl9BRkUgMHgyMAogI2RlZmluZSBVQVJUX01DUl9MT09QIDB4MTAKICNkZWZpbmUgVUFSVF9NQ1JfT1VUMiAweDA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX01DUl9PVVQxIDB4MDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTUNSX1JUUyAweDAyCiAjZGVmaW5lIFVBUlRfTUNSX0RUUiAweDAxCiAjZGVmaW5lIFVBUlRfTFNSIDUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTFNSX0ZJRk9FIDB4ODAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTFNSX1RFTVQgMHg0MAogI2RlZmluZSBVQVJUX0xTUl9USFJFIDB4MjAKICNkZWZpbmUgVUFSVF9MU1JfQkkgMHgxMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9MU1JfRkUgMHgwOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9MU1JfUEUgMHgwNAogI2RlZmluZSBVQVJUX0xTUl9PRSAweDAyCiAjZGVmaW5lIFVBUlRfTFNSX0RSIDB4MDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTFNSX0JSS19FUlJPUl9CSVRTIDB4MUUKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTVNSIDYKICNkZWZpbmUgVUFSVF9NU1JfRENEIDB4ODAKICNkZWZpbmUgVUFSVF9NU1JfUkkgMHg0MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9NU1JfRFNSIDB4MjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTVNSX0NUUyAweDEwCiAjZGVmaW5lIFVBUlRfTVNSX0REQ0QgMHgwOAogI2RlZmluZSBVQVJUX01TUl9URVJJIDB4MDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfTVNSX0REU1IgMHgwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9NU1JfRENUUyAweDAxCiAjZGVmaW5lIFVBUlRfTVNSX0FOWV9ERUxUQSAweDBGCiAjZGVmaW5lIFVBUlRfU0NSIDcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRExMIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRExNIDEKICNkZWZpbmUgVUFSVF9FRlIgMgogI2RlZmluZSBVQVJUX1hSX0VGUiA5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0VGUl9DVFMgMHg4MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9FRlJfUlRTIDB4NDAKICNkZWZpbmUgVUFSVF9FRlJfU0NEIDB4MjAKICNkZWZpbmUgVUFSVF9FRlJfRUNCIDB4MTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfWE9OMSA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1hPTjIgNQogI2RlZmluZSBVQVJUX1hPRkYxIDYKICNkZWZpbmUgVUFSVF9YT0ZGMiA3Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1RJNzUyX1RDUiA2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1RJNzUyX1RMUiA3CiAjZGVmaW5lIFVBUlRfVFJHIDAKICNkZWZpbmUgVUFSVF9UUkdfMSAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1RSR180IDB4MDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfVFJHXzggMHgwOAogI2RlZmluZSBVQVJUX1RSR18xNiAweDEwCiAjZGVmaW5lIFVBUlRfVFJHXzMyIDB4MjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfVFJHXzY0IDB4NDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfVFJHXzk2IDB4NjAKICNkZWZpbmUgVUFSVF9UUkdfMTIwIDB4NzgKICNkZWZpbmUgVUFSVF9UUkdfMTI4IDB4ODAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNUUiAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDVFJfUlRTX05PREVMQVkgMHgwMAogI2RlZmluZSBVQVJUX0ZDVFJfUlRTXzRERUxBWSAweDAxCiAjZGVmaW5lIFVBUlRfRkNUUl9SVFNfNkRFTEFZIDB4MDIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNUUl9SVFNfOERFTEFZIDB4MDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNUUl9JUkRBIDB4MDQKICNkZWZpbmUgVUFSVF9GQ1RSX1RYX0lOVCAweDA4CiAjZGVmaW5lIFVBUlRfRkNUUl9UUkdBIDB4MDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNUUl9UUkdCIDB4MTAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNUUl9UUkdDIDB4MjAKICNkZWZpbmUgVUFSVF9GQ1RSX1RSR0QgMHgzMAogI2RlZmluZSBVQVJUX0ZDVFJfU0NSX1NXQVAgMHg0MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9GQ1RSX1JYIDB4MDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNUUl9UWCAweDgwCiAjZGVmaW5lIFVBUlRfRU1TUiA3CiAjZGVmaW5lIFVBUlRfRU1TUl9GSUZPX0NPVU5UIDB4MDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRU1TUl9BTFRfQ09VTlQgMHgwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9JRVJfRE1BRSAweDgwCiAjZGVmaW5lIFVBUlRfSUVSX1VVRSAweDQwCiAjZGVmaW5lIFVBUlRfSUVSX05SWkUgMHgyMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9JRVJfUlRPSUUgMHgxMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9JSVJfVE9EIDB4MDgKICNkZWZpbmUgVUFSVF9GQ1JfUFhBUjEgMHgwMAogI2RlZmluZSBVQVJUX0ZDUl9QWEFSOCAweDQwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDUl9QWEFSMTYgMHg4MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9GQ1JfUFhBUjMyIDB4YzAKICNkZWZpbmUgVUFSVF9GQ1JfSFNVXzY0XzFCIDB4MDAKICNkZWZpbmUgVUFSVF9GQ1JfSFNVXzY0XzE2QiAweDQwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDUl9IU1VfNjRfMzJCIDB4ODAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNSX0hTVV82NF81NkIgMHhjMAogI2RlZmluZSBVQVJUX0ZDUl9IU1VfMTZfMUIgMHgwMAogI2RlZmluZSBVQVJUX0ZDUl9IU1VfMTZfNEIgMHg0MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9GQ1JfSFNVXzE2XzhCIDB4ODAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNSX0hTVV8xNl8xNEIgMHhjMAogI2RlZmluZSBVQVJUX0ZDUl9IU1VfNjRCX0ZJRk8gMHgyMAogI2RlZmluZSBVQVJUX0ZDUl9IU1VfMTZCX0ZJRk8gMHgwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9GQ1JfSEFMRl9FTVBUX1RYSSAweDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDUl9GVUxMX0VNUFRfVFhJIDB4MDgKICNkZWZpbmUgVUFSVF9BU1IgMHgwMQogI2RlZmluZSBVQVJUX1JGTCAweDAzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1RGTCAweDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0lDUiAweDA1CiAjZGVmaW5lIFVBUlRfQUNSIDB4MDAKICNkZWZpbmUgVUFSVF9DUFIgMHgwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9UQ1IgMHgwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9DS1MgMHgwMwogI2RlZmluZSBVQVJUX1RUTCAweDA0CiAjZGVmaW5lIFVBUlRfUlRMIDB4MDUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNMIDB4MDYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNIIDB4MDcKICNkZWZpbmUgVUFSVF9JRDEgMHgwOAogI2RlZmluZSBVQVJUX0lEMiAweDA5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0lEMyAweDBBCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1JFViAweDBCCiAjZGVmaW5lIFVBUlRfQ1NSIDB4MEMKICNkZWZpbmUgVUFSVF9OTVIgMHgwRAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9DVFIgMHhGRgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9BQ1JfUlhESVMgMHgwMQogI2RlZmluZSBVQVJUX0FDUl9UWERJUyAweDAyCiAjZGVmaW5lIFVBUlRfQUNSX0RTUkZDIDB4MDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfQUNSX1RMRU5CIDB4MjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfQUNSX0lDUlJEIDB4NDAKICNkZWZpbmUgVUFSVF9BQ1JfQVNSRU4gMHg4MAotI2RlZmluZSBVQVJUX1JTQV9CQVNFICgtOCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFVBUlRfUlNBX0JBU0UgKC0gOCkKICNkZWZpbmUgVUFSVF9SU0FfTVNSICgoVUFSVF9SU0FfQkFTRSkgKyAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9SU0FfTVNSX1NXQVAgKDEgPDwgMCkKICNkZWZpbmUgVUFSVF9SU0FfTVNSX0ZJRk8gKDEgPDwgMikKICNkZWZpbmUgVUFSVF9SU0FfTVNSX0ZMT1cgKDEgPDwgMykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfUlNBX01TUl9JVFlQICgxIDw8IDQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1JTQV9JRVIgKChVQVJUX1JTQV9CQVNFKSArIDEpCiAjZGVmaW5lIFVBUlRfUlNBX0lFUl9SeF9GSUZPX0ggKDEgPDwgMCkKICNkZWZpbmUgVUFSVF9SU0FfSUVSX1R4X0ZJRk9fSCAoMSA8PCAxKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9SU0FfSUVSX1R4X0ZJRk9fRSAoMSA8PCAyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9SU0FfSUVSX1J4X1RPVVQgKDEgPDwgMykKICNkZWZpbmUgVUFSVF9SU0FfSUVSX1RJTUVSICgxIDw8IDQpCiAjZGVmaW5lIFVBUlRfUlNBX1NSUiAoKFVBUlRfUlNBX0JBU0UpICsgMikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfUlNBX1NSUl9UeF9GSUZPX05FTVAgKDEgPDwgMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfUlNBX1NSUl9UeF9GSUZPX05IRkwgKDEgPDwgMSkKICNkZWZpbmUgVUFSVF9SU0FfU1JSX1R4X0ZJRk9fTkZVTCAoMSA8PCAyKQogI2RlZmluZSBVQVJUX1JTQV9TUlJfUnhfRklGT19ORU1QICgxIDw8IDMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1JTQV9TUlJfUnhfRklGT19OSEZMICgxIDw8IDQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX1JTQV9TUlJfUnhfRklGT19ORlVMICgxIDw8IDUpCiAjZGVmaW5lIFVBUlRfUlNBX1NSUl9SeF9UT1VUICgxIDw8IDYpCiAjZGVmaW5lIFVBUlRfUlNBX1NSUl9USU1FUiAoMSA8PCA3KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9SU0FfRlJSICgoVUFSVF9SU0FfQkFTRSkgKyAyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9SU0FfVElWU1IgKChVQVJUX1JTQV9CQVNFKSArIDMpCiAjZGVmaW5lIFVBUlRfUlNBX1RDUiAoKFVBUlRfUlNBX0JBU0UpICsgNCkKICNkZWZpbmUgVUFSVF9SU0FfVENSX1NXSVRDSCAoMSA8PCAwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VSSUFMX1JTQV9CQVVEX0JBU0UgKDkyMTYwMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFUklBTF9SU0FfQkFVRF9CQVNFX0xPIChTRVJJQUxfUlNBX0JBVURfQkFTRSAvIDgpCiAjZGVmaW5lIFVBUlRfT01BUF9NRFIxIDB4MDgKICNkZWZpbmUgVUFSVF9PTUFQX01EUjIgMHgwOQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9PTUFQX1NDUiAweDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX09NQVBfU1NSIDB4MTEKICNkZWZpbmUgVUFSVF9PTUFQX0VCTFIgMHgxMgogI2RlZmluZSBVQVJUX09NQVBfT1NDXzEyTV9TRUwgMHgxMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9PTUFQX01WRVIgMHgxNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9PTUFQX1NZU0MgMHgxNQogI2RlZmluZSBVQVJUX09NQVBfU1lTUyAweDE2CiAjZGVmaW5lIFVBUlRfT01BUF9XRVIgMHgxNwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9PTUFQX01EUjFfMTZYX01PREUgMHgwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9PTUFQX01EUjFfU0lSX01PREUgMHgwMQogI2RlZmluZSBVQVJUX09NQVBfTURSMV8xNlhfQUJBVURfTU9ERSAweDAyCiAjZGVmaW5lIFVBUlRfT01BUF9NRFIxXzEzWF9NT0RFIDB4MDMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfT01BUF9NRFIxX01JUl9NT0RFIDB4MDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfT01BUF9NRFIxX0ZJUl9NT0RFIDB4MDUKICNkZWZpbmUgVUFSVF9PTUFQX01EUjFfQ0lSX01PREUgMHgwNgogI2RlZmluZSBVQVJUX09NQVBfTURSMV9ESVNBQkxFIDB4MDcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRVhBUl84WE1PREUgMHg4OAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9FWEFSX1NMRUVQIDB4OGIKICNkZWZpbmUgVUFSVF9FWEFSX0RWSUQgMHg4ZAogI2RlZmluZSBVQVJUX0VYQVJfRkNUUiAweDA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQVJUX0ZDVFJfRVhBUl9JUkRBIDB4MDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNUUl9FWEFSXzQ4NSAweDEwCiAjZGVmaW5lIFVBUlRfRkNUUl9FWEFSX1RSR0EgMHgwMAogI2RlZmluZSBVQVJUX0ZDVFJfRVhBUl9UUkdCIDB4NjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVBUlRfRkNUUl9FWEFSX1RSR0MgMHg4MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFSVF9GQ1RSX0VYQVJfVFJHRCAweGMwCiAjZGVmaW5lIFVBUlRfRVhBUl9UWFRSRyAweDBhCiAjZGVmaW5lIFVBUlRfRVhBUl9SWFRSRyAweDBiCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZXJpby5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zZXJpby5oCmluZGV4IDdhZmIxYTIuLmE4ZmNmZDkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2VyaW8uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NlcmlvLmgKQEAgLTg0LDUgKzg0LDYgQEAKICNkZWZpbmUgU0VSSU9fSEFNUFNISVJFIDB4M2IKICNkZWZpbmUgU0VSSU9fUFMyTVVMVCAweDNjCiAjZGVmaW5lIFNFUklPX1RTQzQwIDB4M2QKLSNlbmRpZgorI2RlZmluZSBTRVJJT19XQUNPTV9JViAweDNlCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NobS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zaG0uaAppbmRleCAyOGUxNjcwLi5iYjdmOTA3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NobS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2htLmgKQEAgLTIyLDI3ICsyMiwyNyBAQAogI2luY2x1ZGUgPGxpbnV4L2Vycm5vLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPHVuaXN0ZC5oPgotI2RlZmluZSBTSE1NQVggMHgyMDAwMDAwCiAjZGVmaW5lIFNITU1JTiAxCiAjZGVmaW5lIFNITU1OSSA0MDk2CisjZGVmaW5lIFNITU1BWCAoVUxPTkdfTUFYIC0gKDFVTCA8PCAyNCkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTSE1BTEwgKFNITU1BWC9nZXRwYWdlc2l6ZSgpKihTSE1NTkkvMTYpKQorI2RlZmluZSBTSE1BTEwgKFVMT05HX01BWCAtICgxVUwgPDwgMjQpKQogI2RlZmluZSBTSE1TRUcgU0hNTU5JCiBzdHJ1Y3Qgc2htaWRfZHMgewotIHN0cnVjdCBpcGNfcGVybSBzaG1fcGVybTsKKyAgc3RydWN0IGlwY19wZXJtIHNobV9wZXJtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgc2htX3NlZ3N6OwotIF9fa2VybmVsX3RpbWVfdCBzaG1fYXRpbWU7Ci0gX19rZXJuZWxfdGltZV90IHNobV9kdGltZTsKLSBfX2tlcm5lbF90aW1lX3Qgc2htX2N0aW1lOworICBpbnQgc2htX3NlZ3N6OworICBfX2tlcm5lbF90aW1lX3Qgc2htX2F0aW1lOworICBfX2tlcm5lbF90aW1lX3Qgc2htX2R0aW1lOworICBfX2tlcm5lbF90aW1lX3Qgc2htX2N0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9pcGNfcGlkX3Qgc2htX2NwaWQ7Ci0gX19rZXJuZWxfaXBjX3BpZF90IHNobV9scGlkOwotIHVuc2lnbmVkIHNob3J0IHNobV9uYXR0Y2g7Ci0gdW5zaWduZWQgc2hvcnQgc2htX3VudXNlZDsKKyAgX19rZXJuZWxfaXBjX3BpZF90IHNobV9jcGlkOworICBfX2tlcm5lbF9pcGNfcGlkX3Qgc2htX2xwaWQ7CisgIHVuc2lnbmVkIHNob3J0IHNobV9uYXR0Y2g7CisgIHVuc2lnbmVkIHNob3J0IHNobV91bnVzZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHZvaWQgKnNobV91bnVzZWQyOwotIHZvaWQgKnNobV91bnVzZWQzOworICB2b2lkICogc2htX3VudXNlZDI7CisgIHZvaWQgKiBzaG1fdW51c2VkMzsKIH07CiAjaW5jbHVkZSA8YXNtL3NobWJ1Zi5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTU5LDIyICs1OSwyMiBAQAogI2RlZmluZSBTSE1fU1RBVCAxMwogI2RlZmluZSBTSE1fSU5GTyAxNAogc3RydWN0IHNobWluZm8gewotIGludCBzaG1tYXg7CisgIGludCBzaG1tYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzaG1taW47Ci0gaW50IHNobW1uaTsKLSBpbnQgc2htc2VnOwotIGludCBzaG1hbGw7CisgIGludCBzaG1taW47CisgIGludCBzaG1tbmk7CisgIGludCBzaG1zZWc7CisgIGludCBzaG1hbGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzaG1faW5mbyB7Ci0gaW50IHVzZWRfaWRzOwotIF9fa2VybmVsX3Vsb25nX3Qgc2htX3RvdDsKKyAgaW50IHVzZWRfaWRzOworICBfX2tlcm5lbF91bG9uZ190IHNobV90b3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3Vsb25nX3Qgc2htX3JzczsKLSBfX2tlcm5lbF91bG9uZ190IHNobV9zd3A7Ci0gX19rZXJuZWxfdWxvbmdfdCBzd2FwX2F0dGVtcHRzOwotIF9fa2VybmVsX3Vsb25nX3Qgc3dhcF9zdWNjZXNzZXM7CisgIF9fa2VybmVsX3Vsb25nX3Qgc2htX3JzczsKKyAgX19rZXJuZWxfdWxvbmdfdCBzaG1fc3dwOworICBfX2tlcm5lbF91bG9uZ190IHN3YXBfYXR0ZW1wdHM7CisgIF9fa2VybmVsX3Vsb25nX3Qgc3dhcF9zdWNjZXNzZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zaWduYWxmZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zaWduYWxmZC5oCmluZGV4IDg5NzUxMzAuLmRjY2Q2NWIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc2lnbmFsZmQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NpZ25hbGZkLmgKQEAgLTI0LDI4ICsyNCwyOCBAQAogI2RlZmluZSBTRkRfQ0xPRVhFQyBPX0NMT0VYRUMKICNkZWZpbmUgU0ZEX05PTkJMT0NLIE9fTk9OQkxPQ0sKIHN0cnVjdCBzaWduYWxmZF9zaWdpbmZvIHsKLSBfX3UzMiBzc2lfc2lnbm87CisgIF9fdTMyIHNzaV9zaWdubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgc3NpX2Vycm5vOwotIF9fczMyIHNzaV9jb2RlOwotIF9fdTMyIHNzaV9waWQ7Ci0gX191MzIgc3NpX3VpZDsKKyAgX19zMzIgc3NpX2Vycm5vOworICBfX3MzMiBzc2lfY29kZTsKKyAgX191MzIgc3NpX3BpZDsKKyAgX191MzIgc3NpX3VpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgc3NpX2ZkOwotIF9fdTMyIHNzaV90aWQ7Ci0gX191MzIgc3NpX2JhbmQ7Ci0gX191MzIgc3NpX292ZXJydW47CisgIF9fczMyIHNzaV9mZDsKKyAgX191MzIgc3NpX3RpZDsKKyAgX191MzIgc3NpX2JhbmQ7CisgIF9fdTMyIHNzaV9vdmVycnVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzc2lfdHJhcG5vOwotIF9fczMyIHNzaV9zdGF0dXM7Ci0gX19zMzIgc3NpX2ludDsKLSBfX3U2NCBzc2lfcHRyOworICBfX3UzMiBzc2lfdHJhcG5vOworICBfX3MzMiBzc2lfc3RhdHVzOworICBfX3MzMiBzc2lfaW50OworICBfX3U2NCBzc2lfcHRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzc2lfdXRpbWU7Ci0gX191NjQgc3NpX3N0aW1lOwotIF9fdTY0IHNzaV9hZGRyOwotIF9fdTE2IHNzaV9hZGRyX2xzYjsKKyAgX191NjQgc3NpX3V0aW1lOworICBfX3U2NCBzc2lfc3RpbWU7CisgIF9fdTY0IHNzaV9hZGRyOworICBfX3UxNiBzc2lfYWRkcl9sc2I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggX19wYWRbNDZdOworICBfX3U4IF9fcGFkWzQ2XTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc21pYXBwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NtaWFwcC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZiMmE0NjIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NtaWFwcC5oCkBAIC0wLDAgKzEsMjggQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKgorICoqKiAgIFRoaXMgaGVhZGVyIHdhcyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBmcm9tIGEgTGludXgga2VybmVsIGhlYWRlcgorICoqKiAgIG9mIHRoZSBzYW1lIG5hbWUsIHRvIG1ha2UgaW5mb3JtYXRpb24gbmVjZXNzYXJ5IGZvciB1c2Vyc3BhY2UgdG8KKyAqKiogICBjYWxsIGludG8gdGhlIGtlcm5lbCBhdmFpbGFibGUgdG8gbGliYy4gIEl0IGNvbnRhaW5zIG9ubHkgY29uc3RhbnRzLAorICoqKiAgIHN0cnVjdHVyZXMsIGFuZCBtYWNyb3MgZ2VuZXJhdGVkIGZyb20gdGhlIG9yaWdpbmFsIGhlYWRlciwgYW5kIHRodXMsCisgKioqICAgY29udGFpbnMgbm8gY29weXJpZ2h0YWJsZSBpbmZvcm1hdGlvbi4KKyAqKioKKyAqKiogICBUbyBlZGl0IHRoZSBjb250ZW50IG9mIHRoaXMgaGVhZGVyLCBtb2RpZnkgdGhlIGNvcnJlc3BvbmRpbmcKKyAqKiogICBzb3VyY2UgZmlsZSAoZS5nLiB1bmRlciBleHRlcm5hbC9rZXJuZWwtaGVhZGVycy9vcmlnaW5hbC8pIHRoZW4KKyAqKiogICBydW4gYmlvbmljL2xpYmMva2VybmVsL3Rvb2xzL3VwZGF0ZV9hbGwucHkKKyAqKioKKyAqKiogICBBbnkgbWFudWFsIGNoYW5nZSBoZXJlIHdpbGwgYmUgbG9zdCB0aGUgbmV4dCB0aW1lIHRoaXMgc2NyaXB0IHdpbGwKKyAqKiogICBiZSBydW4uIFlvdSd2ZSBiZWVuIHdhcm5lZCEKKyAqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNpZm5kZWYgX19VQVBJX0xJTlVYX1NNSUFQUF9IXworI2RlZmluZSBfX1VBUElfTElOVVhfU01JQVBQX0hfCisjZGVmaW5lIFY0TDJfU01JQVBQX1RFU1RfUEFUVEVSTl9NT0RFX0RJU0FCTEVEIDAKKyNkZWZpbmUgVjRMMl9TTUlBUFBfVEVTVF9QQVRURVJOX01PREVfU09MSURfQ09MT1VSIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfU01JQVBQX1RFU1RfUEFUVEVSTl9NT0RFX0NPTE9VUl9CQVJTIDIKKyNkZWZpbmUgVjRMMl9TTUlBUFBfVEVTVF9QQVRURVJOX01PREVfQ09MT1VSX0JBUlNfR1JFWSAzCisjZGVmaW5lIFY0TDJfU01JQVBQX1RFU1RfUEFUVEVSTl9NT0RFX1BOOSA0CisjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NubXAuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc25tcC5oCmluZGV4IDlkNWZiMDkuLmFiMTYzY2MgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc25tcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc25tcC5oCkBAIC0xOCwzMTcgKzE4LDMxNiBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9MSU5VWF9TTk1QX0gKICNkZWZpbmUgX0xJTlVYX1NOTVBfSAotZW51bQoteworZW51bSB7CisgIElQU1RBVFNfTUlCX05VTSA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU1RBVFNfTUlCX05VTSA9IDAsCi0gSVBTVEFUU19NSUJfSU5QS1RTLAotIElQU1RBVFNfTUlCX0lOT0NURVRTLAotIElQU1RBVFNfTUlCX0lOREVMSVZFUlMsCisgIElQU1RBVFNfTUlCX0lOUEtUUywKKyAgSVBTVEFUU19NSUJfSU5PQ1RFVFMsCisgIElQU1RBVFNfTUlCX0lOREVMSVZFUlMsCisgIElQU1RBVFNfTUlCX09VVEZPUldEQVRBR1JBTVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU1RBVFNfTUlCX09VVEZPUldEQVRBR1JBTVMsCi0gSVBTVEFUU19NSUJfT1VUUEtUUywKLSBJUFNUQVRTX01JQl9PVVRPQ1RFVFMsCi0gSVBTVEFUU19NSUJfSU5IRFJFUlJPUlMsCisgIElQU1RBVFNfTUlCX09VVFBLVFMsCisgIElQU1RBVFNfTUlCX09VVE9DVEVUUywKKyAgSVBTVEFUU19NSUJfSU5IRFJFUlJPUlMsCisgIElQU1RBVFNfTUlCX0lOVE9PQklHRVJST1JTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNUQVRTX01JQl9JTlRPT0JJR0VSUk9SUywKLSBJUFNUQVRTX01JQl9JTk5PUk9VVEVTLAotIElQU1RBVFNfTUlCX0lOQUREUkVSUk9SUywKLSBJUFNUQVRTX01JQl9JTlVOS05PV05QUk9UT1MsCisgIElQU1RBVFNfTUlCX0lOTk9ST1VURVMsCisgIElQU1RBVFNfTUlCX0lOQUREUkVSUk9SUywKKyAgSVBTVEFUU19NSUJfSU5VTktOT1dOUFJPVE9TLAorICBJUFNUQVRTX01JQl9JTlRSVU5DQVRFRFBLVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU1RBVFNfTUlCX0lOVFJVTkNBVEVEUEtUUywKLSBJUFNUQVRTX01JQl9JTkRJU0NBUkRTLAotIElQU1RBVFNfTUlCX09VVERJU0NBUkRTLAotIElQU1RBVFNfTUlCX09VVE5PUk9VVEVTLAorICBJUFNUQVRTX01JQl9JTkRJU0NBUkRTLAorICBJUFNUQVRTX01JQl9PVVRESVNDQVJEUywKKyAgSVBTVEFUU19NSUJfT1VUTk9ST1VURVMsCisgIElQU1RBVFNfTUlCX1JFQVNNVElNRU9VVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSVBTVEFUU19NSUJfUkVBU01USU1FT1VULAotIElQU1RBVFNfTUlCX1JFQVNNUkVRRFMsCi0gSVBTVEFUU19NSUJfUkVBU01PS1MsCi0gSVBTVEFUU19NSUJfUkVBU01GQUlMUywKKyAgSVBTVEFUU19NSUJfUkVBU01SRVFEUywKKyAgSVBTVEFUU19NSUJfUkVBU01PS1MsCisgIElQU1RBVFNfTUlCX1JFQVNNRkFJTFMsCisgIElQU1RBVFNfTUlCX0ZSQUdPS1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU1RBVFNfTUlCX0ZSQUdPS1MsCi0gSVBTVEFUU19NSUJfRlJBR0ZBSUxTLAotIElQU1RBVFNfTUlCX0ZSQUdDUkVBVEVTLAotIElQU1RBVFNfTUlCX0lOTUNBU1RQS1RTLAorICBJUFNUQVRTX01JQl9GUkFHRkFJTFMsCisgIElQU1RBVFNfTUlCX0ZSQUdDUkVBVEVTLAorICBJUFNUQVRTX01JQl9JTk1DQVNUUEtUUywKKyAgSVBTVEFUU19NSUJfT1VUTUNBU1RQS1RTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNUQVRTX01JQl9PVVRNQ0FTVFBLVFMsCi0gSVBTVEFUU19NSUJfSU5CQ0FTVFBLVFMsCi0gSVBTVEFUU19NSUJfT1VUQkNBU1RQS1RTLAotIElQU1RBVFNfTUlCX0lOTUNBU1RPQ1RFVFMsCisgIElQU1RBVFNfTUlCX0lOQkNBU1RQS1RTLAorICBJUFNUQVRTX01JQl9PVVRCQ0FTVFBLVFMsCisgIElQU1RBVFNfTUlCX0lOTUNBU1RPQ1RFVFMsCisgIElQU1RBVFNfTUlCX09VVE1DQVNUT0NURVRTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJUFNUQVRTX01JQl9PVVRNQ0FTVE9DVEVUUywKLSBJUFNUQVRTX01JQl9JTkJDQVNUT0NURVRTLAotIElQU1RBVFNfTUlCX09VVEJDQVNUT0NURVRTLAotIElQU1RBVFNfTUlCX0NTVU1FUlJPUlMsCisgIElQU1RBVFNfTUlCX0lOQkNBU1RPQ1RFVFMsCisgIElQU1RBVFNfTUlCX09VVEJDQVNUT0NURVRTLAorICBJUFNUQVRTX01JQl9DU1VNRVJST1JTLAorICBJUFNUQVRTX01JQl9OT0VDVFBLVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElQU1RBVFNfTUlCX05PRUNUUEtUUywKLSBJUFNUQVRTX01JQl9FQ1QxUEtUUywKLSBJUFNUQVRTX01JQl9FQ1QwUEtUUywKLSBJUFNUQVRTX01JQl9DRVBLVFMsCisgIElQU1RBVFNfTUlCX0VDVDFQS1RTLAorICBJUFNUQVRTX01JQl9FQ1QwUEtUUywKKyAgSVBTVEFUU19NSUJfQ0VQS1RTLAorICBfX0lQU1RBVFNfTUlCX01BWAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0lQU1RBVFNfTUlCX01BWAogfTsKLWVudW0KLXsKK2VudW0geworICBJQ01QX01JQl9OVU0gPSAwLAorICBJQ01QX01JQl9JTk1TR1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElDTVBfTUlCX05VTSA9IDAsCi0gSUNNUF9NSUJfSU5NU0dTLAotIElDTVBfTUlCX0lORVJST1JTLAotIElDTVBfTUlCX0lOREVTVFVOUkVBQ0hTLAorICBJQ01QX01JQl9JTkVSUk9SUywKKyAgSUNNUF9NSUJfSU5ERVNUVU5SRUFDSFMsCisgIElDTVBfTUlCX0lOVElNRUVYQ0RTLAorICBJQ01QX01JQl9JTlBBUk1QUk9CUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUNNUF9NSUJfSU5USU1FRVhDRFMsCi0gSUNNUF9NSUJfSU5QQVJNUFJPQlMsCi0gSUNNUF9NSUJfSU5TUkNRVUVOQ0hTLAotIElDTVBfTUlCX0lOUkVESVJFQ1RTLAorICBJQ01QX01JQl9JTlNSQ1FVRU5DSFMsCisgIElDTVBfTUlCX0lOUkVESVJFQ1RTLAorICBJQ01QX01JQl9JTkVDSE9TLAorICBJQ01QX01JQl9JTkVDSE9SRVBTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQ01QX01JQl9JTkVDSE9TLAotIElDTVBfTUlCX0lORUNIT1JFUFMsCi0gSUNNUF9NSUJfSU5USU1FU1RBTVBTLAotIElDTVBfTUlCX0lOVElNRVNUQU1QUkVQUywKKyAgSUNNUF9NSUJfSU5USU1FU1RBTVBTLAorICBJQ01QX01JQl9JTlRJTUVTVEFNUFJFUFMsCisgIElDTVBfTUlCX0lOQUREUk1BU0tTLAorICBJQ01QX01JQl9JTkFERFJNQVNLUkVQUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUNNUF9NSUJfSU5BRERSTUFTS1MsCi0gSUNNUF9NSUJfSU5BRERSTUFTS1JFUFMsCi0gSUNNUF9NSUJfT1VUTVNHUywKLSBJQ01QX01JQl9PVVRFUlJPUlMsCisgIElDTVBfTUlCX09VVE1TR1MsCisgIElDTVBfTUlCX09VVEVSUk9SUywKKyAgSUNNUF9NSUJfT1VUREVTVFVOUkVBQ0hTLAorICBJQ01QX01JQl9PVVRUSU1FRVhDRFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElDTVBfTUlCX09VVERFU1RVTlJFQUNIUywKLSBJQ01QX01JQl9PVVRUSU1FRVhDRFMsCi0gSUNNUF9NSUJfT1VUUEFSTVBST0JTLAotIElDTVBfTUlCX09VVFNSQ1FVRU5DSFMsCisgIElDTVBfTUlCX09VVFBBUk1QUk9CUywKKyAgSUNNUF9NSUJfT1VUU1JDUVVFTkNIUywKKyAgSUNNUF9NSUJfT1VUUkVESVJFQ1RTLAorICBJQ01QX01JQl9PVVRFQ0hPUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUNNUF9NSUJfT1VUUkVESVJFQ1RTLAotIElDTVBfTUlCX09VVEVDSE9TLAotIElDTVBfTUlCX09VVEVDSE9SRVBTLAotIElDTVBfTUlCX09VVFRJTUVTVEFNUFMsCisgIElDTVBfTUlCX09VVEVDSE9SRVBTLAorICBJQ01QX01JQl9PVVRUSU1FU1RBTVBTLAorICBJQ01QX01JQl9PVVRUSU1FU1RBTVBSRVBTLAorICBJQ01QX01JQl9PVVRBRERSTUFTS1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElDTVBfTUlCX09VVFRJTUVTVEFNUFJFUFMsCi0gSUNNUF9NSUJfT1VUQUREUk1BU0tTLAotIElDTVBfTUlCX09VVEFERFJNQVNLUkVQUywKLSBJQ01QX01JQl9DU1VNRVJST1JTLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX0lDTVBfTUlCX01BWAorICBJQ01QX01JQl9PVVRBRERSTUFTS1JFUFMsCisgIElDTVBfTUlCX0NTVU1FUlJPUlMsCisgIF9fSUNNUF9NSUJfTUFYCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX19JQ01QTVNHX01JQl9NQVggNTEyCi1lbnVtCitlbnVtIHsKKyAgSUNNUDZfTUlCX05VTSA9IDAsCisgIElDTVA2X01JQl9JTk1TR1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIElDTVA2X01JQl9OVU0gPSAwLAotIElDTVA2X01JQl9JTk1TR1MsCi0gSUNNUDZfTUlCX0lORVJST1JTLAorICBJQ01QNl9NSUJfSU5FUlJPUlMsCisgIElDTVA2X01JQl9PVVRNU0dTLAorICBJQ01QNl9NSUJfT1VURVJST1JTLAorICBJQ01QNl9NSUJfQ1NVTUVSUk9SUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUNNUDZfTUlCX09VVE1TR1MsCi0gSUNNUDZfTUlCX09VVEVSUk9SUywKLSBJQ01QNl9NSUJfQ1NVTUVSUk9SUywKLSBfX0lDTVA2X01JQl9NQVgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fSUNNUDZfTUlCX01BWAogfTsKICNkZWZpbmUgX19JQ01QNk1TR19NSUJfTUFYIDUxMgotZW51bQoteworZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDUF9NSUJfTlVNID0gMCwKLSBUQ1BfTUlCX1JUT0FMR09SSVRITSwKLSBUQ1BfTUlCX1JUT01JTiwKLSBUQ1BfTUlCX1JUT01BWCwKKyAgVENQX01JQl9OVU0gPSAwLAorICBUQ1BfTUlCX1JUT0FMR09SSVRITSwKKyAgVENQX01JQl9SVE9NSU4sCisgIFRDUF9NSUJfUlRPTUFYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ1BfTUlCX01BWENPTk4sCi0gVENQX01JQl9BQ1RJVkVPUEVOUywKLSBUQ1BfTUlCX1BBU1NJVkVPUEVOUywKLSBUQ1BfTUlCX0FUVEVNUFRGQUlMUywKKyAgVENQX01JQl9NQVhDT05OLAorICBUQ1BfTUlCX0FDVElWRU9QRU5TLAorICBUQ1BfTUlCX1BBU1NJVkVPUEVOUywKKyAgVENQX01JQl9BVFRFTVBURkFJTFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDUF9NSUJfRVNUQUJSRVNFVFMsCi0gVENQX01JQl9DVVJSRVNUQUIsCi0gVENQX01JQl9JTlNFR1MsCi0gVENQX01JQl9PVVRTRUdTLAorICBUQ1BfTUlCX0VTVEFCUkVTRVRTLAorICBUQ1BfTUlCX0NVUlJFU1RBQiwKKyAgVENQX01JQl9JTlNFR1MsCisgIFRDUF9NSUJfT1VUU0VHUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENQX01JQl9SRVRSQU5TU0VHUywKLSBUQ1BfTUlCX0lORVJSUywKLSBUQ1BfTUlCX09VVFJTVFMsCi0gVENQX01JQl9DU1VNRVJST1JTLAorICBUQ1BfTUlCX1JFVFJBTlNTRUdTLAorICBUQ1BfTUlCX0lORVJSUywKKyAgVENQX01JQl9PVVRSU1RTLAorICBUQ1BfTUlCX0NTVU1FUlJPUlMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVENQX01JQl9NQVgKKyAgX19UQ1BfTUlCX01BWAogfTsKLWVudW0KLXsKK2VudW0geworICBVRFBfTUlCX05VTSA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFVEUF9NSUJfTlVNID0gMCwKLSBVRFBfTUlCX0lOREFUQUdSQU1TLAotIFVEUF9NSUJfTk9QT1JUUywKLSBVRFBfTUlCX0lORVJST1JTLAorICBVRFBfTUlCX0lOREFUQUdSQU1TLAorICBVRFBfTUlCX05PUE9SVFMsCisgIFVEUF9NSUJfSU5FUlJPUlMsCisgIFVEUF9NSUJfT1VUREFUQUdSQU1TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBVRFBfTUlCX09VVERBVEFHUkFNUywKLSBVRFBfTUlCX1JDVkJVRkVSUk9SUywKLSBVRFBfTUlCX1NOREJVRkVSUk9SUywKLSBVRFBfTUlCX0NTVU1FUlJPUlMsCisgIFVEUF9NSUJfUkNWQlVGRVJST1JTLAorICBVRFBfTUlCX1NOREJVRkVSUk9SUywKKyAgVURQX01JQl9DU1VNRVJST1JTLAorICBfX1VEUF9NSUJfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVURQX01JQl9NQVgKIH07Ci1lbnVtCi17CitlbnVtIHsKKyAgTElOVVhfTUlCX05VTSA9IDAsCisgIExJTlVYX01JQl9TWU5DT09LSUVTU0VOVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX05VTSA9IDAsCi0gTElOVVhfTUlCX1NZTkNPT0tJRVNTRU5ULAotIExJTlVYX01JQl9TWU5DT09LSUVTUkVDViwKLSBMSU5VWF9NSUJfU1lOQ09PS0lFU0ZBSUxFRCwKKyAgTElOVVhfTUlCX1NZTkNPT0tJRVNSRUNWLAorICBMSU5VWF9NSUJfU1lOQ09PS0lFU0ZBSUxFRCwKKyAgTElOVVhfTUlCX0VNQlJZT05JQ1JTVFMsCisgIExJTlVYX01JQl9QUlVORUNBTExFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX0VNQlJZT05JQ1JTVFMsCi0gTElOVVhfTUlCX1BSVU5FQ0FMTEVELAotIExJTlVYX01JQl9SQ1ZQUlVORUQsCi0gTElOVVhfTUlCX09GT1BSVU5FRCwKKyAgTElOVVhfTUlCX1JDVlBSVU5FRCwKKyAgTElOVVhfTUlCX09GT1BSVU5FRCwKKyAgTElOVVhfTUlCX09VVE9GV0lORE9XSUNNUFMsCisgIExJTlVYX01JQl9MT0NLRFJPUFBFRElDTVBTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfT1VUT0ZXSU5ET1dJQ01QUywKLSBMSU5VWF9NSUJfTE9DS0RST1BQRURJQ01QUywKLSBMSU5VWF9NSUJfQVJQRklMVEVSLAotIExJTlVYX01JQl9USU1FV0FJVEVELAorICBMSU5VWF9NSUJfQVJQRklMVEVSLAorICBMSU5VWF9NSUJfVElNRVdBSVRFRCwKKyAgTElOVVhfTUlCX1RJTUVXQUlUUkVDWUNMRUQsCisgIExJTlVYX01JQl9USU1FV0FJVEtJTExFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RJTUVXQUlUUkVDWUNMRUQsCi0gTElOVVhfTUlCX1RJTUVXQUlUS0lMTEVELAotIExJTlVYX01JQl9QQVdTUEFTU0lWRVJFSkVDVEVELAotIExJTlVYX01JQl9QQVdTQUNUSVZFUkVKRUNURUQsCisgIExJTlVYX01JQl9QQVdTUEFTU0lWRVJFSkVDVEVELAorICBMSU5VWF9NSUJfUEFXU0FDVElWRVJFSkVDVEVELAorICBMSU5VWF9NSUJfUEFXU0VTVEFCUkVKRUNURUQsCisgIExJTlVYX01JQl9ERUxBWUVEQUNLUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1BBV1NFU1RBQlJFSkVDVEVELAotIExJTlVYX01JQl9ERUxBWUVEQUNLUywKLSBMSU5VWF9NSUJfREVMQVlFREFDS0xPQ0tFRCwKLSBMSU5VWF9NSUJfREVMQVlFREFDS0xPU1QsCisgIExJTlVYX01JQl9ERUxBWUVEQUNLTE9DS0VELAorICBMSU5VWF9NSUJfREVMQVlFREFDS0xPU1QsCisgIExJTlVYX01JQl9MSVNURU5PVkVSRkxPV1MsCisgIExJTlVYX01JQl9MSVNURU5EUk9QUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX0xJU1RFTk9WRVJGTE9XUywKLSBMSU5VWF9NSUJfTElTVEVORFJPUFMsCi0gTElOVVhfTUlCX1RDUFBSRVFVRVVFRCwKLSBMSU5VWF9NSUJfVENQRElSRUNUQ09QWUZST01CQUNLTE9HLAorICBMSU5VWF9NSUJfVENQUFJFUVVFVUVELAorICBMSU5VWF9NSUJfVENQRElSRUNUQ09QWUZST01CQUNLTE9HLAorICBMSU5VWF9NSUJfVENQRElSRUNUQ09QWUZST01QUkVRVUVVRSwKKyAgTElOVVhfTUlCX1RDUFBSRVFVRVVFRFJPUFBFRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RDUERJUkVDVENPUFlGUk9NUFJFUVVFVUUsCi0gTElOVVhfTUlCX1RDUFBSRVFVRVVFRFJPUFBFRCwKLSBMSU5VWF9NSUJfVENQSFBISVRTLAotIExJTlVYX01JQl9UQ1BIUEhJVFNUT1VTRVIsCisgIExJTlVYX01JQl9UQ1BIUEhJVFMsCisgIExJTlVYX01JQl9UQ1BIUEhJVFNUT1VTRVIsCisgIExJTlVYX01JQl9UQ1BQVVJFQUNLUywKKyAgTElOVVhfTUlCX1RDUEhQQUNLUywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RDUFBVUkVBQ0tTLAotIExJTlVYX01JQl9UQ1BIUEFDS1MsCi0gTElOVVhfTUlCX1RDUFJFTk9SRUNPVkVSWSwKLSBMSU5VWF9NSUJfVENQU0FDS1JFQ09WRVJZLAorICBMSU5VWF9NSUJfVENQUkVOT1JFQ09WRVJZLAorICBMSU5VWF9NSUJfVENQU0FDS1JFQ09WRVJZLAorICBMSU5VWF9NSUJfVENQU0FDS1JFTkVHSU5HLAorICBMSU5VWF9NSUJfVENQRkFDS1JFT1JERVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9UQ1BTQUNLUkVORUdJTkcsCi0gTElOVVhfTUlCX1RDUEZBQ0tSRU9SREVSLAotIExJTlVYX01JQl9UQ1BTQUNLUkVPUkRFUiwKLSBMSU5VWF9NSUJfVENQUkVOT1JFT1JERVIsCisgIExJTlVYX01JQl9UQ1BTQUNLUkVPUkRFUiwKKyAgTElOVVhfTUlCX1RDUFJFTk9SRU9SREVSLAorICBMSU5VWF9NSUJfVENQVFNSRU9SREVSLAorICBMSU5VWF9NSUJfVENQRlVMTFVORE8sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9UQ1BUU1JFT1JERVIsCi0gTElOVVhfTUlCX1RDUEZVTExVTkRPLAotIExJTlVYX01JQl9UQ1BQQVJUSUFMVU5ETywKLSBMSU5VWF9NSUJfVENQRFNBQ0tVTkRPLAorICBMSU5VWF9NSUJfVENQUEFSVElBTFVORE8sCisgIExJTlVYX01JQl9UQ1BEU0FDS1VORE8sCisgIExJTlVYX01JQl9UQ1BMT1NTVU5ETywKKyAgTElOVVhfTUlCX1RDUExPU1RSRVRSQU5TTUlULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfVENQTE9TU1VORE8sCi0gTElOVVhfTUlCX1RDUExPU1RSRVRSQU5TTUlULAotIExJTlVYX01JQl9UQ1BSRU5PRkFJTFVSRVMsCi0gTElOVVhfTUlCX1RDUFNBQ0tGQUlMVVJFUywKKyAgTElOVVhfTUlCX1RDUFJFTk9GQUlMVVJFUywKKyAgTElOVVhfTUlCX1RDUFNBQ0tGQUlMVVJFUywKKyAgTElOVVhfTUlCX1RDUExPU1NGQUlMVVJFUywKKyAgTElOVVhfTUlCX1RDUEZBU1RSRVRSQU5TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfVENQTE9TU0ZBSUxVUkVTLAotIExJTlVYX01JQl9UQ1BGQVNUUkVUUkFOUywKLSBMSU5VWF9NSUJfVENQRk9SV0FSRFJFVFJBTlMsCi0gTElOVVhfTUlCX1RDUFNMT1dTVEFSVFJFVFJBTlMsCisgIExJTlVYX01JQl9UQ1BGT1JXQVJEUkVUUkFOUywKKyAgTElOVVhfTUlCX1RDUFNMT1dTVEFSVFJFVFJBTlMsCisgIExJTlVYX01JQl9UQ1BUSU1FT1VUUywKKyAgTElOVVhfTUlCX1RDUExPU1NQUk9CRVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9UQ1BUSU1FT1VUUywKLSBMSU5VWF9NSUJfVENQTE9TU1BST0JFUywKLSBMSU5VWF9NSUJfVENQTE9TU1BST0JFUkVDT1ZFUlksCi0gTElOVVhfTUlCX1RDUFJFTk9SRUNPVkVSWUZBSUwsCisgIExJTlVYX01JQl9UQ1BMT1NTUFJPQkVSRUNPVkVSWSwKKyAgTElOVVhfTUlCX1RDUFJFTk9SRUNPVkVSWUZBSUwsCisgIExJTlVYX01JQl9UQ1BTQUNLUkVDT1ZFUllGQUlMLAorICBMSU5VWF9NSUJfVENQU0NIRURVTEVSRkFJTEVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfVENQU0FDS1JFQ09WRVJZRkFJTCwKLSBMSU5VWF9NSUJfVENQU0NIRURVTEVSRkFJTEVELAotIExJTlVYX01JQl9UQ1BSQ1ZDT0xMQVBTRUQsCi0gTElOVVhfTUlCX1RDUERTQUNLT0xEU0VOVCwKKyAgTElOVVhfTUlCX1RDUFJDVkNPTExBUFNFRCwKKyAgTElOVVhfTUlCX1RDUERTQUNLT0xEU0VOVCwKKyAgTElOVVhfTUlCX1RDUERTQUNLT0ZPU0VOVCwKKyAgTElOVVhfTUlCX1RDUERTQUNLUkVDViwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RDUERTQUNLT0ZPU0VOVCwKLSBMSU5VWF9NSUJfVENQRFNBQ0tSRUNWLAotIExJTlVYX01JQl9UQ1BEU0FDS09GT1JFQ1YsCi0gTElOVVhfTUlCX1RDUEFCT1JUT05EQVRBLAorICBMSU5VWF9NSUJfVENQRFNBQ0tPRk9SRUNWLAorICBMSU5VWF9NSUJfVENQQUJPUlRPTkRBVEEsCisgIExJTlVYX01JQl9UQ1BBQk9SVE9OQ0xPU0UsCisgIExJTlVYX01JQl9UQ1BBQk9SVE9OTUVNT1JZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfVENQQUJPUlRPTkNMT1NFLAotIExJTlVYX01JQl9UQ1BBQk9SVE9OTUVNT1JZLAotIExJTlVYX01JQl9UQ1BBQk9SVE9OVElNRU9VVCwKLSBMSU5VWF9NSUJfVENQQUJPUlRPTkxJTkdFUiwKKyAgTElOVVhfTUlCX1RDUEFCT1JUT05USU1FT1VULAorICBMSU5VWF9NSUJfVENQQUJPUlRPTkxJTkdFUiwKKyAgTElOVVhfTUlCX1RDUEFCT1JURkFJTEVELAorICBMSU5VWF9NSUJfVENQTUVNT1JZUFJFU1NVUkVTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfVENQQUJPUlRGQUlMRUQsCi0gTElOVVhfTUlCX1RDUE1FTU9SWVBSRVNTVVJFUywKLSBMSU5VWF9NSUJfVENQU0FDS0RJU0NBUkQsCi0gTElOVVhfTUlCX1RDUERTQUNLSUdOT1JFRE9MRCwKKyAgTElOVVhfTUlCX1RDUFNBQ0tESVNDQVJELAorICBMSU5VWF9NSUJfVENQRFNBQ0tJR05PUkVET0xELAorICBMSU5VWF9NSUJfVENQRFNBQ0tJR05PUkVETk9VTkRPLAorICBMSU5VWF9NSUJfVENQU1BVUklPVVNSVE9TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfVENQRFNBQ0tJR05PUkVETk9VTkRPLAotIExJTlVYX01JQl9UQ1BTUFVSSU9VU1JUT1MsCi0gTElOVVhfTUlCX1RDUE1ENU5PVEZPVU5ELAotIExJTlVYX01JQl9UQ1BNRDVVTkVYUEVDVEVELAorICBMSU5VWF9NSUJfVENQTUQ1Tk9URk9VTkQsCisgIExJTlVYX01JQl9UQ1BNRDVVTkVYUEVDVEVELAorICBMSU5VWF9NSUJfU0FDS1NISUZURUQsCisgIExJTlVYX01JQl9TQUNLTUVSR0VELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfU0FDS1NISUZURUQsCi0gTElOVVhfTUlCX1NBQ0tNRVJHRUQsCi0gTElOVVhfTUlCX1NBQ0tTSElGVEZBTExCQUNLLAotIExJTlVYX01JQl9UQ1BCQUNLTE9HRFJPUCwKKyAgTElOVVhfTUlCX1NBQ0tTSElGVEZBTExCQUNLLAorICBMSU5VWF9NSUJfVENQQkFDS0xPR0RST1AsCisgIExJTlVYX01JQl9UQ1BNSU5UVExEUk9QLAorICBMSU5VWF9NSUJfVENQREVGRVJBQ0NFUFREUk9QLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfVENQTUlOVFRMRFJPUCwKLSBMSU5VWF9NSUJfVENQREVGRVJBQ0NFUFREUk9QLAotIExJTlVYX01JQl9JUFJQRklMVEVSLAotIExJTlVYX01JQl9UQ1BUSU1FV0FJVE9WRVJGTE9XLAorICBMSU5VWF9NSUJfSVBSUEZJTFRFUiwKKyAgTElOVVhfTUlCX1RDUFRJTUVXQUlUT1ZFUkZMT1csCisgIExJTlVYX01JQl9UQ1BSRVFRRlVMTERPQ09PS0lFUywKKyAgTElOVVhfTUlCX1RDUFJFUVFGVUxMRFJPUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RDUFJFUVFGVUxMRE9DT09LSUVTLAotIExJTlVYX01JQl9UQ1BSRVFRRlVMTERST1AsCi0gTElOVVhfTUlCX1RDUFJFVFJBTlNGQUlMLAotIExJTlVYX01JQl9UQ1BSQ1ZDT0FMRVNDRSwKKyAgTElOVVhfTUlCX1RDUFJFVFJBTlNGQUlMLAorICBMSU5VWF9NSUJfVENQUkNWQ09BTEVTQ0UsCisgIExJTlVYX01JQl9UQ1BPRk9RVUVVRSwKKyAgTElOVVhfTUlCX1RDUE9GT0RST1AsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9UQ1BPRk9RVUVVRSwKLSBMSU5VWF9NSUJfVENQT0ZPRFJPUCwKLSBMSU5VWF9NSUJfVENQT0ZPTUVSR0UsCi0gTElOVVhfTUlCX1RDUENIQUxMRU5HRUFDSywKKyAgTElOVVhfTUlCX1RDUE9GT01FUkdFLAorICBMSU5VWF9NSUJfVENQQ0hBTExFTkdFQUNLLAorICBMSU5VWF9NSUJfVENQU1lOQ0hBTExFTkdFLAorICBMSU5VWF9NSUJfVENQRkFTVE9QRU5BQ1RJVkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9UQ1BTWU5DSEFMTEVOR0UsCi0gTElOVVhfTUlCX1RDUEZBU1RPUEVOQUNUSVZFLAotIExJTlVYX01JQl9UQ1BGQVNUT1BFTlBBU1NJVkUsCi0gTElOVVhfTUlCX1RDUEZBU1RPUEVOUEFTU0lWRUZBSUwsCisgIExJTlVYX01JQl9UQ1BGQVNUT1BFTkFDVElWRUZBSUwsCisgIExJTlVYX01JQl9UQ1BGQVNUT1BFTlBBU1NJVkUsCisgIExJTlVYX01JQl9UQ1BGQVNUT1BFTlBBU1NJVkVGQUlMLAorICBMSU5VWF9NSUJfVENQRkFTVE9QRU5MSVNURU5PVkVSRkxPVywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1RDUEZBU1RPUEVOTElTVEVOT1ZFUkZMT1csCi0gTElOVVhfTUlCX1RDUEZBU1RPUEVOQ09PS0lFUkVRRCwKLSBMSU5VWF9NSUJfVENQU1BVUklPVVNfUlRYX0hPU1RRVUVVRVMsCi0gTElOVVhfTUlCX0JVU1lQT0xMUlhQQUNLRVRTLAorICBMSU5VWF9NSUJfVENQRkFTVE9QRU5DT09LSUVSRVFELAorICBMSU5VWF9NSUJfVENQU1BVUklPVVNfUlRYX0hPU1RRVUVVRVMsCisgIExJTlVYX01JQl9CVVNZUE9MTFJYUEFDS0VUUywKKyAgTElOVVhfTUlCX1RDUEFVVE9DT1JLSU5HLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfVENQQVVUT0NPUktJTkcsCi0gX19MSU5VWF9NSUJfTUFYCisgIExJTlVYX01JQl9UQ1BGUk9NWkVST1dJTkRPV0FEViwKKyAgTElOVVhfTUlCX1RDUFRPWkVST1dJTkRPV0FEViwKKyAgTElOVVhfTUlCX1RDUFdBTlRaRVJPV0lORE9XQURWLAorICBMSU5VWF9NSUJfVENQU1lOUkVUUkFOUywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIExJTlVYX01JQl9UQ1BPUklHREFUQVNFTlQsCisgIF9fTElOVVhfTUlCX01BWAogfTsKLWVudW0KK2VudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBMSU5VWF9NSUJfWEZSTU5VTSA9IDAsCi0gTElOVVhfTUlCX1hGUk1JTkVSUk9SLAotIExJTlVYX01JQl9YRlJNSU5CVUZGRVJFUlJPUiwKKyAgTElOVVhfTUlCX1hGUk1OVU0gPSAwLAorICBMSU5VWF9NSUJfWEZSTUlORVJST1IsCisgIExJTlVYX01JQl9YRlJNSU5CVUZGRVJFUlJPUiwKKyAgTElOVVhfTUlCX1hGUk1JTkhEUkVSUk9SLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfWEZSTUlOSERSRVJST1IsCi0gTElOVVhfTUlCX1hGUk1JTk5PU1RBVEVTLAotIExJTlVYX01JQl9YRlJNSU5TVEFURVBST1RPRVJST1IsCi0gTElOVVhfTUlCX1hGUk1JTlNUQVRFTU9ERUVSUk9SLAorICBMSU5VWF9NSUJfWEZSTUlOTk9TVEFURVMsCisgIExJTlVYX01JQl9YRlJNSU5TVEFURVBST1RPRVJST1IsCisgIExJTlVYX01JQl9YRlJNSU5TVEFURU1PREVFUlJPUiwKKyAgTElOVVhfTUlCX1hGUk1JTlNUQVRFU0VRRVJST1IsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9YRlJNSU5TVEFURVNFUUVSUk9SLAotIExJTlVYX01JQl9YRlJNSU5TVEFURUVYUElSRUQsCi0gTElOVVhfTUlCX1hGUk1JTlNUQVRFTUlTTUFUQ0gsCi0gTElOVVhfTUlCX1hGUk1JTlNUQVRFSU5WQUxJRCwKKyAgTElOVVhfTUlCX1hGUk1JTlNUQVRFRVhQSVJFRCwKKyAgTElOVVhfTUlCX1hGUk1JTlNUQVRFTUlTTUFUQ0gsCisgIExJTlVYX01JQl9YRlJNSU5TVEFURUlOVkFMSUQsCisgIExJTlVYX01JQl9YRlJNSU5UTVBMTUlTTUFUQ0gsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIExJTlVYX01JQl9YRlJNSU5UTVBMTUlTTUFUQ0gsCi0gTElOVVhfTUlCX1hGUk1JTk5PUE9MUywKLSBMSU5VWF9NSUJfWEZSTUlOUE9MQkxPQ0ssCi0gTElOVVhfTUlCX1hGUk1JTlBPTEVSUk9SLAorICBMSU5VWF9NSUJfWEZSTUlOTk9QT0xTLAorICBMSU5VWF9NSUJfWEZSTUlOUE9MQkxPQ0ssCisgIExJTlVYX01JQl9YRlJNSU5QT0xFUlJPUiwKKyAgTElOVVhfTUlCX1hGUk1PVVRFUlJPUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1hGUk1PVVRFUlJPUiwKLSBMSU5VWF9NSUJfWEZSTU9VVEJVTkRMRUdFTkVSUk9SLAotIExJTlVYX01JQl9YRlJNT1VUQlVORExFQ0hFQ0tFUlJPUiwKLSBMSU5VWF9NSUJfWEZSTU9VVE5PU1RBVEVTLAorICBMSU5VWF9NSUJfWEZSTU9VVEJVTkRMRUdFTkVSUk9SLAorICBMSU5VWF9NSUJfWEZSTU9VVEJVTkRMRUNIRUNLRVJST1IsCisgIExJTlVYX01JQl9YRlJNT1VUTk9TVEFURVMsCisgIExJTlVYX01JQl9YRlJNT1VUU1RBVEVQUk9UT0VSUk9SLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfWEZSTU9VVFNUQVRFUFJPVE9FUlJPUiwKLSBMSU5VWF9NSUJfWEZSTU9VVFNUQVRFTU9ERUVSUk9SLAotIExJTlVYX01JQl9YRlJNT1VUU1RBVEVTRVFFUlJPUiwKLSBMSU5VWF9NSUJfWEZSTU9VVFNUQVRFRVhQSVJFRCwKKyAgTElOVVhfTUlCX1hGUk1PVVRTVEFURU1PREVFUlJPUiwKKyAgTElOVVhfTUlCX1hGUk1PVVRTVEFURVNFUUVSUk9SLAorICBMSU5VWF9NSUJfWEZSTU9VVFNUQVRFRVhQSVJFRCwKKyAgTElOVVhfTUlCX1hGUk1PVVRQT0xCTE9DSywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTElOVVhfTUlCX1hGUk1PVVRQT0xCTE9DSywKLSBMSU5VWF9NSUJfWEZSTU9VVFBPTERFQUQsCi0gTElOVVhfTUlCX1hGUk1PVVRQT0xFUlJPUiwKLSBMSU5VWF9NSUJfWEZSTUZXREhEUkVSUk9SLAorICBMSU5VWF9NSUJfWEZSTU9VVFBPTERFQUQsCisgIExJTlVYX01JQl9YRlJNT1VUUE9MRVJST1IsCisgIExJTlVYX01JQl9YRlJNRldESERSRVJST1IsCisgIExJTlVYX01JQl9YRlJNT1VUU1RBVEVJTlZBTElELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBMSU5VWF9NSUJfWEZSTU9VVFNUQVRFSU5WQUxJRCwKLSBMSU5VWF9NSUJfWEZSTUFDUVVJUkVFUlJPUiwKLSBfX0xJTlVYX01JQl9YRlJNTUFYCisgIExJTlVYX01JQl9YRlJNQUNRVUlSRUVSUk9SLAorICBfX0xJTlVYX01JQl9YRlJNTUFYCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc29ja19kaWFnLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NvY2tfZGlhZy5oCmluZGV4IDBkYzI5MDIuLjA1Mjc3OWUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc29ja19kaWFnLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb2NrX2RpYWcuaApAQCAtMjIsMjIgKzIyLDIyIEBACiAjZGVmaW5lIFNPQ0tfRElBR19CWV9GQU1JTFkgMjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc29ja19kaWFnX3JlcSB7Ci0gX191OCBzZGlhZ19mYW1pbHk7Ci0gX191OCBzZGlhZ19wcm90b2NvbDsKKyAgX191OCBzZGlhZ19mYW1pbHk7CisgIF9fdTggc2RpYWdfcHJvdG9jb2w7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFNLX01FTUlORk9fUk1FTV9BTExPQywKLSBTS19NRU1JTkZPX1JDVkJVRiwKLSBTS19NRU1JTkZPX1dNRU1fQUxMT0MsCisgIFNLX01FTUlORk9fUk1FTV9BTExPQywKKyAgU0tfTUVNSU5GT19SQ1ZCVUYsCisgIFNLX01FTUlORk9fV01FTV9BTExPQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0tfTUVNSU5GT19TTkRCVUYsCi0gU0tfTUVNSU5GT19GV0RfQUxMT0MsCi0gU0tfTUVNSU5GT19XTUVNX1FVRVVFRCwKLSBTS19NRU1JTkZPX09QVE1FTSwKKyAgU0tfTUVNSU5GT19TTkRCVUYsCisgIFNLX01FTUlORk9fRldEX0FMTE9DLAorICBTS19NRU1JTkZPX1dNRU1fUVVFVUVELAorICBTS19NRU1JTkZPX09QVE1FTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU0tfTUVNSU5GT19CQUNLTE9HLAotIFNLX01FTUlORk9fVkFSUywKKyAgU0tfTUVNSU5GT19CQUNLTE9HLAorICBTS19NRU1JTkZPX1ZBUlMsCiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb2NrZXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc29ja2V0LmgKaW5kZXggMjNhYWU3Mi4uMjkyZGQxNiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb2NrZXQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NvY2tldC5oCkBAIC0xOSwxMiArMTksMTIgQEAKICNpZm5kZWYgX1VBUElfTElOVVhfU09DS0VUX0gKICNkZWZpbmUgX1VBUElfTElOVVhfU09DS0VUX0gKICNkZWZpbmUgX0tfU1NfTUFYU0laRSAxMjgKLSNkZWZpbmUgX0tfU1NfQUxJR05TSVpFIChfX2FsaWdub2ZfXyAoc3RydWN0IHNvY2thZGRyICopKQorI2RlZmluZSBfS19TU19BTElHTlNJWkUgKF9fYWxpZ25vZl9fKHN0cnVjdCBzb2NrYWRkciAqKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHVuc2lnbmVkIHNob3J0IF9fa2VybmVsX3NhX2ZhbWlseV90Owogc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UgewotIF9fa2VybmVsX3NhX2ZhbWlseV90IHNzX2ZhbWlseTsKLSBjaGFyIF9fZGF0YVtfS19TU19NQVhTSVpFIC0gc2l6ZW9mKHVuc2lnbmVkIHNob3J0KV07CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHNzX2ZhbWlseTsKKyAgY2hhciBfX2RhdGFbX0tfU1NfTUFYU0laRSAtIHNpemVvZih1bnNpZ25lZCBzaG9ydCldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX0gX19hdHRyaWJ1dGVfXyAoKGFsaWduZWQoX0tfU1NfQUxJR05TSVpFKSkpOworfSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKF9LX1NTX0FMSUdOU0laRSkpKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb20uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc29tLmgKaW5kZXggMTA5OWRkNC4uY2I3NmU3MCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb20uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NvbS5oCkBAIC0yMiw0NiArMjIsNDYgQEAKICNkZWZpbmUgU09NX1BBR0VTSVpFIDQwOTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc29tX2hkciB7Ci0gc2hvcnQgc3lzdGVtX2lkOwotIHNob3J0IGFfbWFnaWM7Ci0gdW5zaWduZWQgaW50IHZlcnNpb25faWQ7CisgIHNob3J0IHN5c3RlbV9pZDsKKyAgc2hvcnQgYV9tYWdpYzsKKyAgdW5zaWduZWQgaW50IHZlcnNpb25faWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB0aW1lc3BlYyBmaWxlX3RpbWU7Ci0gdW5zaWduZWQgaW50IGVudHJ5X3NwYWNlOwotIHVuc2lnbmVkIGludCBlbnRyeV9zdWJzcGFjZTsKLSB1bnNpZ25lZCBpbnQgZW50cnlfb2Zmc2V0OworICBzdHJ1Y3QgdGltZXNwZWMgZmlsZV90aW1lOworICB1bnNpZ25lZCBpbnQgZW50cnlfc3BhY2U7CisgIHVuc2lnbmVkIGludCBlbnRyeV9zdWJzcGFjZTsKKyAgdW5zaWduZWQgaW50IGVudHJ5X29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGF1eF9oZWFkZXJfbG9jYXRpb247Ci0gdW5zaWduZWQgaW50IGF1eF9oZWFkZXJfc2l6ZTsKLSB1bnNpZ25lZCBpbnQgc29tX2xlbmd0aDsKLSB1bnNpZ25lZCBpbnQgcHJlc3VtZWRfZHA7CisgIHVuc2lnbmVkIGludCBhdXhfaGVhZGVyX2xvY2F0aW9uOworICB1bnNpZ25lZCBpbnQgYXV4X2hlYWRlcl9zaXplOworICB1bnNpZ25lZCBpbnQgc29tX2xlbmd0aDsKKyAgdW5zaWduZWQgaW50IHByZXN1bWVkX2RwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc3BhY2VfbG9jYXRpb247Ci0gdW5zaWduZWQgaW50IHNwYWNlX3RvdGFsOwotIHVuc2lnbmVkIGludCBzdWJzcGFjZV9sb2NhdGlvbjsKLSB1bnNpZ25lZCBpbnQgc3Vic3BhY2VfdG90YWw7CisgIHVuc2lnbmVkIGludCBzcGFjZV9sb2NhdGlvbjsKKyAgdW5zaWduZWQgaW50IHNwYWNlX3RvdGFsOworICB1bnNpZ25lZCBpbnQgc3Vic3BhY2VfbG9jYXRpb247CisgIHVuc2lnbmVkIGludCBzdWJzcGFjZV90b3RhbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGxvYWRlcl9maXh1cF9sb2NhdGlvbjsKLSB1bnNpZ25lZCBpbnQgbG9hZGVyX2ZpeHVwX3RvdGFsOwotIHVuc2lnbmVkIGludCBzcGFjZV9zdHJpbmdzX2xvY2F0aW9uOwotIHVuc2lnbmVkIGludCBzcGFjZV9zdHJpbmdzX3NpemU7CisgIHVuc2lnbmVkIGludCBsb2FkZXJfZml4dXBfbG9jYXRpb247CisgIHVuc2lnbmVkIGludCBsb2FkZXJfZml4dXBfdG90YWw7CisgIHVuc2lnbmVkIGludCBzcGFjZV9zdHJpbmdzX2xvY2F0aW9uOworICB1bnNpZ25lZCBpbnQgc3BhY2Vfc3RyaW5nc19zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgaW5pdF9hcnJheV9sb2NhdGlvbjsKLSB1bnNpZ25lZCBpbnQgaW5pdF9hcnJheV90b3RhbDsKLSB1bnNpZ25lZCBpbnQgY29tcGlsZXJfbG9jYXRpb247Ci0gdW5zaWduZWQgaW50IGNvbXBpbGVyX3RvdGFsOworICB1bnNpZ25lZCBpbnQgaW5pdF9hcnJheV9sb2NhdGlvbjsKKyAgdW5zaWduZWQgaW50IGluaXRfYXJyYXlfdG90YWw7CisgIHVuc2lnbmVkIGludCBjb21waWxlcl9sb2NhdGlvbjsKKyAgdW5zaWduZWQgaW50IGNvbXBpbGVyX3RvdGFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc3ltYm9sX2xvY2F0aW9uOwotIHVuc2lnbmVkIGludCBzeW1ib2xfdG90YWw7Ci0gdW5zaWduZWQgaW50IGZpeHVwX3JlcXVlc3RfbG9jYXRpb247Ci0gdW5zaWduZWQgaW50IGZpeHVwX3JlcXVlc3RfdG90YWw7CisgIHVuc2lnbmVkIGludCBzeW1ib2xfbG9jYXRpb247CisgIHVuc2lnbmVkIGludCBzeW1ib2xfdG90YWw7CisgIHVuc2lnbmVkIGludCBmaXh1cF9yZXF1ZXN0X2xvY2F0aW9uOworICB1bnNpZ25lZCBpbnQgZml4dXBfcmVxdWVzdF90b3RhbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN5bWJvbF9zdHJpbmdzX2xvY2F0aW9uOwotIHVuc2lnbmVkIGludCBzeW1ib2xfc3RyaW5nc19zaXplOwotIHVuc2lnbmVkIGludCB1bmxvYWRhYmxlX3NwX2xvY2F0aW9uOwotIHVuc2lnbmVkIGludCB1bmxvYWRhYmxlX3NwX3NpemU7CisgIHVuc2lnbmVkIGludCBzeW1ib2xfc3RyaW5nc19sb2NhdGlvbjsKKyAgdW5zaWduZWQgaW50IHN5bWJvbF9zdHJpbmdzX3NpemU7CisgIHVuc2lnbmVkIGludCB1bmxvYWRhYmxlX3NwX2xvY2F0aW9uOworICB1bnNpZ25lZCBpbnQgdW5sb2FkYWJsZV9zcF9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY2hlY2tzdW07CisgIHVuc2lnbmVkIGludCBjaGVja3N1bTsKIH07CiAjZGVmaW5lIFNPTV9TSURfUEFSSVNDXzFfMCAweDAyMGIKICNkZWZpbmUgU09NX1NJRF9QQVJJU0NfMV8xIDB4MDIxMApAQCAtODEsOTAgKzgxLDkwIEBACiAjZGVmaW5lIFNPTV9JRF9ORVcgODcxMDI0MTIKIHN0cnVjdCBhdXhfaWQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgbWFuZGF0b3J5IDoxOwotIHVuc2lnbmVkIGludCBjb3B5IDoxOwotIHVuc2lnbmVkIGludCBhcHBlbmQgOjE7Ci0gdW5zaWduZWQgaW50IGlnbm9yZSA6MTsKKyAgdW5zaWduZWQgaW50IG1hbmRhdG9yeSA6IDE7CisgIHVuc2lnbmVkIGludCBjb3B5IDogMTsKKyAgdW5zaWduZWQgaW50IGFwcGVuZCA6IDE7CisgIHVuc2lnbmVkIGludCBpZ25vcmUgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmVzZXJ2ZWQgOjEyOwotIHVuc2lnbmVkIGludCB0eXBlIDoxNjsKLSB1bnNpZ25lZCBpbnQgbGVuZ3RoOworICB1bnNpZ25lZCBpbnQgcmVzZXJ2ZWQgOiAxMjsKKyAgdW5zaWduZWQgaW50IHR5cGUgOiAxNjsKKyAgdW5zaWduZWQgaW50IGxlbmd0aDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNvbV9leGVjX2F1eGhkciB7Ci0gc3RydWN0IGF1eF9pZCBzb21fYXV4aGRyOwotIGludCBleGVjX3RzaXplOwotIGludCBleGVjX3RtZW07CisgIHN0cnVjdCBhdXhfaWQgc29tX2F1eGhkcjsKKyAgaW50IGV4ZWNfdHNpemU7CisgIGludCBleGVjX3RtZW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBleGVjX3RmaWxlOwotIGludCBleGVjX2RzaXplOwotIGludCBleGVjX2RtZW07Ci0gaW50IGV4ZWNfZGZpbGU7CisgIGludCBleGVjX3RmaWxlOworICBpbnQgZXhlY19kc2l6ZTsKKyAgaW50IGV4ZWNfZG1lbTsKKyAgaW50IGV4ZWNfZGZpbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBleGVjX2JzaXplOwotIGludCBleGVjX2VudHJ5OwotIGludCBleGVjX2ZsYWdzOwotIGludCBleGVjX2JmaWxsOworICBpbnQgZXhlY19ic2l6ZTsKKyAgaW50IGV4ZWNfZW50cnk7CisgIGludCBleGVjX2ZsYWdzOworICBpbnQgZXhlY19iZmlsbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogdW5pb24gbmFtZV9wdCB7Ci0gY2hhciAqIG5fbmFtZTsKLSB1bnNpZ25lZCBpbnQgbl9zdHJ4OworICBjaGFyICogbl9uYW1lOworICB1bnNpZ25lZCBpbnQgbl9zdHJ4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc3BhY2VfZGljdGlvbmFyeV9yZWNvcmQgewotIHVuaW9uIG5hbWVfcHQgbmFtZTsKLSB1bnNpZ25lZCBpbnQgaXNfbG9hZGFibGUgOjE7CisgIHVuaW9uIG5hbWVfcHQgbmFtZTsKKyAgdW5zaWduZWQgaW50IGlzX2xvYWRhYmxlIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGlzX2RlZmluZWQgOjE7Ci0gdW5zaWduZWQgaW50IGlzX3ByaXZhdGUgOjE7Ci0gdW5zaWduZWQgaW50IGhhc19pbnRlcm1lZGlhdGVfY29kZSA6MTsKLSB1bnNpZ25lZCBpbnQgaXNfdHNwZWNpZmljIDoxOworICB1bnNpZ25lZCBpbnQgaXNfZGVmaW5lZCA6IDE7CisgIHVuc2lnbmVkIGludCBpc19wcml2YXRlIDogMTsKKyAgdW5zaWduZWQgaW50IGhhc19pbnRlcm1lZGlhdGVfY29kZSA6IDE7CisgIHVuc2lnbmVkIGludCBpc190c3BlY2lmaWMgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmVzZXJ2ZWQgOjExOwotIHVuc2lnbmVkIGludCBzb3J0X2tleSA6ODsKLSB1bnNpZ25lZCBpbnQgcmVzZXJ2ZWQyIDo4OwotIGludCBzcGFjZV9udW1iZXI7CisgIHVuc2lnbmVkIGludCByZXNlcnZlZCA6IDExOworICB1bnNpZ25lZCBpbnQgc29ydF9rZXkgOiA4OworICB1bnNpZ25lZCBpbnQgcmVzZXJ2ZWQyIDogODsKKyAgaW50IHNwYWNlX251bWJlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHN1YnNwYWNlX2luZGV4OwotIHVuc2lnbmVkIGludCBzdWJzcGFjZV9xdWFudGl0eTsKLSBpbnQgbG9hZGVyX2ZpeF9pbmRleDsKLSB1bnNpZ25lZCBpbnQgbG9hZGVyX2ZpeF9xdWFudGl0eTsKKyAgaW50IHN1YnNwYWNlX2luZGV4OworICB1bnNpZ25lZCBpbnQgc3Vic3BhY2VfcXVhbnRpdHk7CisgIGludCBsb2FkZXJfZml4X2luZGV4OworICB1bnNpZ25lZCBpbnQgbG9hZGVyX2ZpeF9xdWFudGl0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGluaXRfcG9pbnRlcl9pbmRleDsKLSB1bnNpZ25lZCBpbnQgaW5pdF9wb2ludGVyX3F1YW50aXR5OworICBpbnQgaW5pdF9wb2ludGVyX2luZGV4OworICB1bnNpZ25lZCBpbnQgaW5pdF9wb2ludGVyX3F1YW50aXR5OwogfTsKIHN0cnVjdCBzdWJzcGFjZV9kaWN0aW9uYXJ5X3JlY29yZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzcGFjZV9pbmRleDsKLSB1bnNpZ25lZCBpbnQgYWNjZXNzX2NvbnRyb2xfYml0cyA6NzsKLSB1bnNpZ25lZCBpbnQgbWVtb3J5X3Jlc2lkZW50IDoxOwotIHVuc2lnbmVkIGludCBkdXBfY29tbW9uIDoxOworICBpbnQgc3BhY2VfaW5kZXg7CisgIHVuc2lnbmVkIGludCBhY2Nlc3NfY29udHJvbF9iaXRzIDogNzsKKyAgdW5zaWduZWQgaW50IG1lbW9yeV9yZXNpZGVudCA6IDE7CisgIHVuc2lnbmVkIGludCBkdXBfY29tbW9uIDogMTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGlzX2NvbW1vbiA6MTsKLSB1bnNpZ25lZCBpbnQgcXVhZHJhbnQgOjI7Ci0gdW5zaWduZWQgaW50IGluaXRpYWxseV9mcm96ZW4gOjE7Ci0gdW5zaWduZWQgaW50IGlzX2ZpcnN0IDoxOworICB1bnNpZ25lZCBpbnQgaXNfY29tbW9uIDogMTsKKyAgdW5zaWduZWQgaW50IHF1YWRyYW50IDogMjsKKyAgdW5zaWduZWQgaW50IGluaXRpYWxseV9mcm96ZW4gOiAxOworICB1bnNpZ25lZCBpbnQgaXNfZmlyc3QgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY29kZV9vbmx5IDoxOwotIHVuc2lnbmVkIGludCBzb3J0X2tleSA6ODsKLSB1bnNpZ25lZCBpbnQgcmVwbGljYXRlX2luaXQgOjE7Ci0gdW5zaWduZWQgaW50IGNvbnRpbnVhdGlvbiA6MTsKKyAgdW5zaWduZWQgaW50IGNvZGVfb25seSA6IDE7CisgIHVuc2lnbmVkIGludCBzb3J0X2tleSA6IDg7CisgIHVuc2lnbmVkIGludCByZXBsaWNhdGVfaW5pdCA6IDE7CisgIHVuc2lnbmVkIGludCBjb250aW51YXRpb24gOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgaXNfdHNwZWNpZmljIDoxOwotIHVuc2lnbmVkIGludCBpc19jb21kYXQgOjE7Ci0gdW5zaWduZWQgaW50IHJlc2VydmVkIDo0OwotIGludCBmaWxlX2xvY19pbml0X3ZhbHVlOworICB1bnNpZ25lZCBpbnQgaXNfdHNwZWNpZmljIDogMTsKKyAgdW5zaWduZWQgaW50IGlzX2NvbWRhdCA6IDE7CisgIHVuc2lnbmVkIGludCByZXNlcnZlZCA6IDQ7CisgIGludCBmaWxlX2xvY19pbml0X3ZhbHVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgaW5pdGlhbGl6YXRpb25fbGVuZ3RoOwotIHVuc2lnbmVkIGludCBzdWJzcGFjZV9zdGFydDsKLSB1bnNpZ25lZCBpbnQgc3Vic3BhY2VfbGVuZ3RoOwotIHVuc2lnbmVkIGludCByZXNlcnZlZDIgOjU7CisgIHVuc2lnbmVkIGludCBpbml0aWFsaXphdGlvbl9sZW5ndGg7CisgIHVuc2lnbmVkIGludCBzdWJzcGFjZV9zdGFydDsKKyAgdW5zaWduZWQgaW50IHN1YnNwYWNlX2xlbmd0aDsKKyAgdW5zaWduZWQgaW50IHJlc2VydmVkMiA6IDU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBhbGlnbm1lbnQgOjI3OwotIHVuaW9uIG5hbWVfcHQgbmFtZTsKLSBpbnQgZml4dXBfcmVxdWVzdF9pbmRleDsKLSB1bnNpZ25lZCBpbnQgZml4dXBfcmVxdWVzdF9xdWFudGl0eTsKKyAgdW5zaWduZWQgaW50IGFsaWdubWVudCA6IDI3OworICB1bmlvbiBuYW1lX3B0IG5hbWU7CisgIGludCBmaXh1cF9yZXF1ZXN0X2luZGV4OworICB1bnNpZ25lZCBpbnQgZml4dXBfcmVxdWVzdF9xdWFudGl0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NvbmV0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NvbmV0LmgKaW5kZXggMzcwNGU4Yy4uMWUzNDg0MSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb25ldC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc29uZXQuaApAQCAtMTgsMjMgKzE4LDIzIEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX1VBUElMSU5VWF9TT05FVF9ICiAjZGVmaW5lIF9VQVBJTElOVVhfU09ORVRfSAotI2RlZmluZSBfX1NPTkVUX0lURU1TICAgX19IQU5ETEVfSVRFTShzZWN0aW9uX2JpcCk7ICAgICBfX0hBTkRMRV9JVEVNKGxpbmVfYmlwKTsgICAgIF9fSEFORExFX0lURU0ocGF0aF9iaXApOyAgICAgX19IQU5ETEVfSVRFTShsaW5lX2ZlYmUpOyAgICAgX19IQU5ETEVfSVRFTShwYXRoX2ZlYmUpOyAgICAgX19IQU5ETEVfSVRFTShjb3JyX2hjcyk7ICAgICBfX0hBTkRMRV9JVEVNKHVuY29ycl9oY3MpOyAgICAgX19IQU5ETEVfSVRFTSh0eF9jZWxscyk7ICAgICBfX0hBTkRMRV9JVEVNKHJ4X2NlbGxzKTsKKyNkZWZpbmUgX19TT05FVF9JVEVNUyBfX0hBTkRMRV9JVEVNKHNlY3Rpb25fYmlwKTsgX19IQU5ETEVfSVRFTShsaW5lX2JpcCk7IF9fSEFORExFX0lURU0ocGF0aF9iaXApOyBfX0hBTkRMRV9JVEVNKGxpbmVfZmViZSk7IF9fSEFORExFX0lURU0ocGF0aF9mZWJlKTsgX19IQU5ETEVfSVRFTShjb3JyX2hjcyk7IF9fSEFORExFX0lURU0odW5jb3JyX2hjcyk7IF9fSEFORExFX0lURU0odHhfY2VsbHMpOyBfX0hBTkRMRV9JVEVNKHJ4X2NlbGxzKTsKIHN0cnVjdCBzb25ldF9zdGF0cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfX0hBTkRMRV9JVEVNKGkpIGludCBpCi0gX19TT05FVF9JVEVNUworICBfX1NPTkVUX0lURU1TCiAjdW5kZWYgX19IQU5ETEVfSVRFTQotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU09ORVRfR0VUU1RBVCBfSU9SKCdhJyxBVE1JT0NfUEhZVFlQLHN0cnVjdCBzb25ldF9zdGF0cykKLSNkZWZpbmUgU09ORVRfR0VUU1RBVFogX0lPUignYScsQVRNSU9DX1BIWVRZUCsxLHN0cnVjdCBzb25ldF9zdGF0cykKLSNkZWZpbmUgU09ORVRfU0VURElBRyBfSU9XUignYScsQVRNSU9DX1BIWVRZUCsyLGludCkKLSNkZWZpbmUgU09ORVRfQ0xSRElBRyBfSU9XUignYScsQVRNSU9DX1BIWVRZUCszLGludCkKKyNkZWZpbmUgU09ORVRfR0VUU1RBVCBfSU9SKCdhJywgQVRNSU9DX1BIWVRZUCwgc3RydWN0IHNvbmV0X3N0YXRzKQorI2RlZmluZSBTT05FVF9HRVRTVEFUWiBfSU9SKCdhJywgQVRNSU9DX1BIWVRZUCArIDEsIHN0cnVjdCBzb25ldF9zdGF0cykKKyNkZWZpbmUgU09ORVRfU0VURElBRyBfSU9XUignYScsIEFUTUlPQ19QSFlUWVAgKyAyLCBpbnQpCisjZGVmaW5lIFNPTkVUX0NMUkRJQUcgX0lPV1IoJ2EnLCBBVE1JT0NfUEhZVFlQICsgMywgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU09ORVRfR0VURElBRyBfSU9SKCdhJyxBVE1JT0NfUEhZVFlQKzQsaW50KQotI2RlZmluZSBTT05FVF9TRVRGUkFNSU5HIF9JT1coJ2EnLEFUTUlPQ19QSFlUWVArNSxpbnQpCi0jZGVmaW5lIFNPTkVUX0dFVEZSQU1JTkcgX0lPUignYScsQVRNSU9DX1BIWVRZUCs2LGludCkKLSNkZWZpbmUgU09ORVRfR0VURlJTRU5TRSBfSU9SKCdhJyxBVE1JT0NfUEhZVFlQKzcsICAgdW5zaWduZWQgY2hhcltTT05FVF9GUlNFTlNFX1NJWkVdKQorI2RlZmluZSBTT05FVF9HRVRESUFHIF9JT1IoJ2EnLCBBVE1JT0NfUEhZVFlQICsgNCwgaW50KQorI2RlZmluZSBTT05FVF9TRVRGUkFNSU5HIF9JT1coJ2EnLCBBVE1JT0NfUEhZVFlQICsgNSwgaW50KQorI2RlZmluZSBTT05FVF9HRVRGUkFNSU5HIF9JT1IoJ2EnLCBBVE1JT0NfUEhZVFlQICsgNiwgaW50KQorI2RlZmluZSBTT05FVF9HRVRGUlNFTlNFIF9JT1IoJ2EnLCBBVE1JT0NfUEhZVFlQICsgNywgdW5zaWduZWQgY2hhcltTT05FVF9GUlNFTlNFX1NJWkVdKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09ORVRfSU5TX1NCSVAgMQogI2RlZmluZSBTT05FVF9JTlNfTEJJUCAyCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NvdW5kY2FyZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zb3VuZGNhcmQuaAppbmRleCAzNTJmNjZkLi4xMWFmNzYzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3NvdW5kY2FyZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc291bmRjYXJkLmgKQEAgLTgyLDEzICs4MiwxMyBAQAogI2RlZmluZSBTSU9DX09VVCAweDIwMDAwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTSU9DX0lOIDB4NDAwMDAwMDAKLSNkZWZpbmUgU0lPQ19JTk9VVCAoU0lPQ19JTnxTSU9DX09VVCkKLSNkZWZpbmUgX1NJTyh4LHkpICgoaW50KShTSU9DX1ZPSUR8KHg8PDgpfHkpKQotI2RlZmluZSBfU0lPUih4LHksdCkgKChpbnQpKFNJT0NfT1VUfCgoc2l6ZW9mKHQpJlNJT0NQQVJNX01BU0spPDwxNil8KHg8PDgpfHkpKQorI2RlZmluZSBTSU9DX0lOT1VUIChTSU9DX0lOIHwgU0lPQ19PVVQpCisjZGVmaW5lIF9TSU8oeCx5KSAoKGludCkgKFNJT0NfVk9JRCB8ICh4IDw8IDgpIHwgeSkpCisjZGVmaW5lIF9TSU9SKHgseSx0KSAoKGludCkgKFNJT0NfT1VUIHwgKChzaXplb2YodCkgJiBTSU9DUEFSTV9NQVNLKSA8PCAxNikgfCAoeCA8PCA4KSB8IHkpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgX1NJT1coeCx5LHQpICgoaW50KShTSU9DX0lOfCgoc2l6ZW9mKHQpJlNJT0NQQVJNX01BU0spPDwxNil8KHg8PDgpfHkpKQotI2RlZmluZSBfU0lPV1IoeCx5LHQpICgoaW50KShTSU9DX0lOT1VUfCgoc2l6ZW9mKHQpJlNJT0NQQVJNX01BU0spPDwxNil8KHg8PDgpfHkpKQotI2RlZmluZSBfU0lPQ19TSVpFKHgpICgoeD4+MTYpJlNJT0NQQVJNX01BU0spCisjZGVmaW5lIF9TSU9XKHgseSx0KSAoKGludCkgKFNJT0NfSU4gfCAoKHNpemVvZih0KSAmIFNJT0NQQVJNX01BU0spIDw8IDE2KSB8ICh4IDw8IDgpIHwgeSkpCisjZGVmaW5lIF9TSU9XUih4LHksdCkgKChpbnQpIChTSU9DX0lOT1VUIHwgKChzaXplb2YodCkgJiBTSU9DUEFSTV9NQVNLKSA8PCAxNikgfCAoeCA8PCA4KSB8IHkpKQorI2RlZmluZSBfU0lPQ19TSVpFKHgpICgoeCA+PiAxNikgJiBTSU9DUEFSTV9NQVNLKQogI2RlZmluZSBfU0lPQ19ESVIoeCkgKHggJiAweGYwMDAwMDAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgX1NJT0NfTk9ORSBTSU9DX1ZPSUQKQEAgLTk3LDY0MiArOTcsNjM3IEBACiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKLSNkZWZpbmUgU05EQ1RMX1NFUV9SRVNFVCBfU0lPICgnUScsIDApCi0jZGVmaW5lIFNORENUTF9TRVFfU1lOQyBfU0lPICgnUScsIDEpCisjZGVmaW5lIFNORENUTF9TRVFfUkVTRVQgX1NJTygnUScsIDApCisjZGVmaW5lIFNORENUTF9TRVFfU1lOQyBfU0lPKCdRJywgMSkKICNkZWZpbmUgU05EQ1RMX1NZTlRIX0lORk8gX1NJT1dSKCdRJywgMiwgc3RydWN0IHN5bnRoX2luZm8pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRDVExfU0VRX0NUUkxSQVRFIF9TSU9XUignUScsIDMsIGludCkKLSNkZWZpbmUgU05EQ1RMX1NFUV9HRVRPVVRDT1VOVCBfU0lPUiAoJ1EnLCA0LCBpbnQpCi0jZGVmaW5lIFNORENUTF9TRVFfR0VUSU5DT1VOVCBfU0lPUiAoJ1EnLCA1LCBpbnQpCi0jZGVmaW5lIFNORENUTF9TRVFfUEVSQ01PREUgX1NJT1cgKCdRJywgNiwgaW50KQorI2RlZmluZSBTTkRDVExfU0VRX0dFVE9VVENPVU5UIF9TSU9SKCdRJywgNCwgaW50KQorI2RlZmluZSBTTkRDVExfU0VRX0dFVElOQ09VTlQgX1NJT1IoJ1EnLCA1LCBpbnQpCisjZGVmaW5lIFNORENUTF9TRVFfUEVSQ01PREUgX1NJT1coJ1EnLCA2LCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRDVExfRk1fTE9BRF9JTlNUUiBfU0lPVyAoJ1EnLCA3LCBzdHJ1Y3Qgc2JpX2luc3RydW1lbnQpCi0jZGVmaW5lIFNORENUTF9TRVFfVEVTVE1JREkgX1NJT1cgKCdRJywgOCwgaW50KQotI2RlZmluZSBTTkRDVExfU0VRX1JFU0VUU0FNUExFUyBfU0lPVyAoJ1EnLCA5LCBpbnQpCi0jZGVmaW5lIFNORENUTF9TRVFfTlJTWU5USFMgX1NJT1IgKCdRJywxMCwgaW50KQorI2RlZmluZSBTTkRDVExfRk1fTE9BRF9JTlNUUiBfU0lPVygnUScsIDcsIHN0cnVjdCBzYmlfaW5zdHJ1bWVudCkKKyNkZWZpbmUgU05EQ1RMX1NFUV9URVNUTUlESSBfU0lPVygnUScsIDgsIGludCkKKyNkZWZpbmUgU05EQ1RMX1NFUV9SRVNFVFNBTVBMRVMgX1NJT1coJ1EnLCA5LCBpbnQpCisjZGVmaW5lIFNORENUTF9TRVFfTlJTWU5USFMgX1NJT1IoJ1EnLCAxMCwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EQ1RMX1NFUV9OUk1JRElTIF9TSU9SICgnUScsMTEsIGludCkKLSNkZWZpbmUgU05EQ1RMX01JRElfSU5GTyBfU0lPV1IoJ1EnLDEyLCBzdHJ1Y3QgbWlkaV9pbmZvKQotI2RlZmluZSBTTkRDVExfU0VRX1RIUkVTSE9MRCBfU0lPVyAoJ1EnLDEzLCBpbnQpCi0jZGVmaW5lIFNORENUTF9TWU5USF9NRU1BVkwgX1NJT1dSKCdRJywxNCwgaW50KQorI2RlZmluZSBTTkRDVExfU0VRX05STUlESVMgX1NJT1IoJ1EnLCAxMSwgaW50KQorI2RlZmluZSBTTkRDVExfTUlESV9JTkZPIF9TSU9XUignUScsIDEyLCBzdHJ1Y3QgbWlkaV9pbmZvKQorI2RlZmluZSBTTkRDVExfU0VRX1RIUkVTSE9MRCBfU0lPVygnUScsIDEzLCBpbnQpCisjZGVmaW5lIFNORENUTF9TWU5USF9NRU1BVkwgX1NJT1dSKCdRJywgMTQsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORENUTF9GTV80T1BfRU5BQkxFIF9TSU9XICgnUScsMTUsIGludCkKLSNkZWZpbmUgU05EQ1RMX1NFUV9QQU5JQyBfU0lPICgnUScsMTcpCi0jZGVmaW5lIFNORENUTF9TRVFfT1VUT0ZCQU5EIF9TSU9XICgnUScsMTgsIHN0cnVjdCBzZXFfZXZlbnRfcmVjKQotI2RlZmluZSBTTkRDVExfU0VRX0dFVFRJTUUgX1NJT1IgKCdRJywxOSwgaW50KQorI2RlZmluZSBTTkRDVExfRk1fNE9QX0VOQUJMRSBfU0lPVygnUScsIDE1LCBpbnQpCisjZGVmaW5lIFNORENUTF9TRVFfUEFOSUMgX1NJTygnUScsIDE3KQorI2RlZmluZSBTTkRDVExfU0VRX09VVE9GQkFORCBfU0lPVygnUScsIDE4LCBzdHJ1Y3Qgc2VxX2V2ZW50X3JlYykKKyNkZWZpbmUgU05EQ1RMX1NFUV9HRVRUSU1FIF9TSU9SKCdRJywgMTksIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORENUTF9TWU5USF9JRCBfU0lPV1IoJ1EnLDIwLCBzdHJ1Y3Qgc3ludGhfaW5mbykKLSNkZWZpbmUgU05EQ1RMX1NZTlRIX0NPTlRST0wgX1NJT1dSKCdRJywyMSwgc3RydWN0IHN5bnRoX2NvbnRyb2wpCi0jZGVmaW5lIFNORENUTF9TWU5USF9SRU1PVkVTQU1QTEUgX1NJT1dSKCdRJywyMiwgc3RydWN0IHJlbW92ZV9zYW1wbGUpCi10eXBlZGVmIHN0cnVjdCBzeW50aF9jb250cm9sCisjZGVmaW5lIFNORENUTF9TWU5USF9JRCBfU0lPV1IoJ1EnLCAyMCwgc3RydWN0IHN5bnRoX2luZm8pCisjZGVmaW5lIFNORENUTF9TWU5USF9DT05UUk9MIF9TSU9XUignUScsIDIxLCBzdHJ1Y3Qgc3ludGhfY29udHJvbCkKKyNkZWZpbmUgU05EQ1RMX1NZTlRIX1JFTU9WRVNBTVBMRSBfU0lPV1IoJ1EnLCAyMiwgc3RydWN0IHJlbW92ZV9zYW1wbGUpCit0eXBlZGVmIHN0cnVjdCBzeW50aF9jb250cm9sIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gaW50IGRldm5vOwotIGNoYXIgZGF0YVs0MDAwXTsKLX1zeW50aF9jb250cm9sOworICBpbnQgZGV2bm87CisgIGNoYXIgZGF0YVs0MDAwXTsKK30gc3ludGhfY29udHJvbDsKK3R5cGVkZWYgc3RydWN0IHJlbW92ZV9zYW1wbGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXR5cGVkZWYgc3RydWN0IHJlbW92ZV9zYW1wbGUKLXsKLSBpbnQgZGV2bm87Ci0gaW50IGJhbmtubzsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGluc3Rybm87CisgIGludCBkZXZubzsKKyAgaW50IGJhbmtubzsKKyAgaW50IGluc3Rybm87CiB9IHJlbW92ZV9zYW1wbGU7Ci10eXBlZGVmIHN0cnVjdCBzZXFfZXZlbnRfcmVjIHsKLSB1bnNpZ25lZCBjaGFyIGFycls4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit0eXBlZGVmIHN0cnVjdCBzZXFfZXZlbnRfcmVjIHsKKyAgdW5zaWduZWQgY2hhciBhcnJbOF07CiB9IHNlcV9ldmVudF9yZWM7CiAjZGVmaW5lIFNORENUTF9UTVJfVElNRUJBU0UgX1NJT1dSKCdUJywgMSwgaW50KQotI2RlZmluZSBTTkRDVExfVE1SX1NUQVJUIF9TSU8gKCdUJywgMikKLSNkZWZpbmUgU05EQ1RMX1RNUl9TVE9QIF9TSU8gKCdUJywgMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORENUTF9UTVJfQ09OVElOVUUgX1NJTyAoJ1QnLCA0KQorI2RlZmluZSBTTkRDVExfVE1SX1NUQVJUIF9TSU8oJ1QnLCAyKQorI2RlZmluZSBTTkRDVExfVE1SX1NUT1AgX1NJTygnVCcsIDMpCisjZGVmaW5lIFNORENUTF9UTVJfQ09OVElOVUUgX1NJTygnVCcsIDQpCiAjZGVmaW5lIFNORENUTF9UTVJfVEVNUE8gX1NJT1dSKCdUJywgNSwgaW50KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EQ1RMX1RNUl9TT1VSQ0UgX1NJT1dSKCdUJywgNiwgaW50KQogI2RlZmluZSBUTVJfSU5URVJOQUwgMHgwMDAwMDAwMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVE1SX0VYVEVSTkFMIDB4MDAwMDAwMDIKICNkZWZpbmUgVE1SX01PREVfTUlESSAweDAwMDAwMDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUTVJfTU9ERV9GU0sgMHgwMDAwMDAyMAogI2RlZmluZSBUTVJfTU9ERV9DTFMgMHgwMDAwMDA0MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVE1SX01PREVfU01QVEUgMHgwMDAwMDA4MAotI2RlZmluZSBTTkRDVExfVE1SX01FVFJPTk9NRSBfU0lPVyAoJ1QnLCA3LCBpbnQpCi0jZGVmaW5lIFNORENUTF9UTVJfU0VMRUNUIF9TSU9XICgnVCcsIDgsIGludCkKLSNkZWZpbmUgX0xJTlVYX1BBVENIS0VZX0hfSU5ESVJFQ1QKKyNkZWZpbmUgU05EQ1RMX1RNUl9NRVRST05PTUUgX1NJT1coJ1QnLCA3LCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRDVExfVE1SX1NFTEVDVCBfU0lPVygnVCcsIDgsIGludCkKKyNkZWZpbmUgX0xJTlVYX1BBVENIS0VZX0hfSU5ESVJFQ1QKICNpbmNsdWRlIDxsaW51eC9wYXRjaGtleS5oPgogI3VuZGVmIF9MSU5VWF9QQVRDSEtFWV9IX0lORElSRUNUCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmZGVmIF9fQllURV9PUkRFUgogI2lmIF9fQllURV9PUkRFUiA9PSBfX0JJR19FTkRJQU4KLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFGTVRfUzE2X05FIEFGTVRfUzE2X0JFCi0jZWxpZiBfX0JZVEVfT1JERVIgPT0gX19MSVRUTEVfRU5ESUFOCisjZWxpZiBfX0JZVEVfT1JERVI9PV9fTElUVExFX0VORElBTgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUZNVF9TMTZfTkUgQUZNVF9TMTZfTEUKICNlbHNlCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2Vycm9yICJjb3VsZCBub3QgZGV0ZXJtaW5lIGJ5dGUgb3JkZXIiCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKIHN0cnVjdCBwYXRjaF9pbmZvIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQga2V5OworICB1bnNpZ25lZCBzaG9ydCBrZXk7CiAjZGVmaW5lIFdBVkVfUEFUQ0ggX1BBVENIS0VZKDB4MDQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBHVVNfUEFUQ0ggV0FWRV9QQVRDSAogI2RlZmluZSBXQVZFRlJPTlRfUEFUQ0ggX1BBVENIS0VZKDB4MDYpCisgIHNob3J0IGRldmljZV9ubzsKKyAgc2hvcnQgaW5zdHJfbm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IGRldmljZV9ubzsKLSBzaG9ydCBpbnN0cl9ubzsKLSB1bnNpZ25lZCBpbnQgbW9kZTsKKyAgdW5zaWduZWQgaW50IG1vZGU7CiAjZGVmaW5lIFdBVkVfMTZfQklUUyAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBXQVZFX1VOU0lHTkVEIDB4MDIKICNkZWZpbmUgV0FWRV9MT09QSU5HIDB4MDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFdBVkVfQklESVJfTE9PUCAweDA4CiAjZGVmaW5lIFdBVkVfTE9PUF9CQUNLIDB4MTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFdBVkVfU1VTVEFJTl9PTiAweDIwCiAjZGVmaW5lIFdBVkVfRU5WRUxPUEVTIDB4NDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFdBVkVfRkFTVF9SRUxFQVNFIDB4ODAKICNkZWZpbmUgV0FWRV9WSUJSQVRPIDB4MDAwMTAwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFdBVkVfVFJFTU9MTyAweDAwMDIwMDAwCiAjZGVmaW5lIFdBVkVfU0NBTEUgMHgwMDA0MDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgV0FWRV9GUkFDVElPTlMgMHgwMDA4MDAwMAogI2RlZmluZSBXQVZFX1JPTSAweDQwMDAwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBXQVZFX01VTEFXIDB4MjAwMDAwMDAKLSBpbnQgbGVuOwotIGludCBsb29wX3N0YXJ0LCBsb29wX2VuZDsKLSB1bnNpZ25lZCBpbnQgYmFzZV9mcmVxOworICBpbnQgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgYmFzZV9ub3RlOwotIHVuc2lnbmVkIGludCBoaWdoX25vdGU7Ci0gdW5zaWduZWQgaW50IGxvd19ub3RlOwotIGludCBwYW5uaW5nOworICBpbnQgbG9vcF9zdGFydCwgbG9vcF9lbmQ7CisgIHVuc2lnbmVkIGludCBiYXNlX2ZyZXE7CisgIHVuc2lnbmVkIGludCBiYXNlX25vdGU7CisgIHVuc2lnbmVkIGludCBoaWdoX25vdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBkZXR1bmluZzsKLSB1bnNpZ25lZCBjaGFyIGVudl9yYXRlWyA2IF07Ci0gdW5zaWduZWQgY2hhciBlbnZfb2Zmc2V0WyA2IF07Ci0gdW5zaWduZWQgY2hhciB0cmVtb2xvX3N3ZWVwOworICB1bnNpZ25lZCBpbnQgbG93X25vdGU7CisgIGludCBwYW5uaW5nOworICBpbnQgZGV0dW5pbmc7CisgIHVuc2lnbmVkIGNoYXIgZW52X3JhdGVbNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgdHJlbW9sb19yYXRlOwotIHVuc2lnbmVkIGNoYXIgdHJlbW9sb19kZXB0aDsKLSB1bnNpZ25lZCBjaGFyIHZpYnJhdG9fc3dlZXA7Ci0gdW5zaWduZWQgY2hhciB2aWJyYXRvX3JhdGU7CisgIHVuc2lnbmVkIGNoYXIgZW52X29mZnNldFs2XTsKKyAgdW5zaWduZWQgY2hhciB0cmVtb2xvX3N3ZWVwOworICB1bnNpZ25lZCBjaGFyIHRyZW1vbG9fcmF0ZTsKKyAgdW5zaWduZWQgY2hhciB0cmVtb2xvX2RlcHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHZpYnJhdG9fZGVwdGg7Ci0gaW50IHNjYWxlX2ZyZXF1ZW5jeTsKLSB1bnNpZ25lZCBpbnQgc2NhbGVfZmFjdG9yOwotIGludCB2b2x1bWU7CisgIHVuc2lnbmVkIGNoYXIgdmlicmF0b19zd2VlcDsKKyAgdW5zaWduZWQgY2hhciB2aWJyYXRvX3JhdGU7CisgIHVuc2lnbmVkIGNoYXIgdmlicmF0b19kZXB0aDsKKyAgaW50IHNjYWxlX2ZyZXF1ZW5jeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGZyYWN0aW9uczsKLSBpbnQgcmVzZXJ2ZWQxOwotIGludCBzcGFyZVsyXTsKLSBjaGFyIGRhdGFbMV07CisgIHVuc2lnbmVkIGludCBzY2FsZV9mYWN0b3I7CisgIGludCB2b2x1bWU7CisgIGludCBmcmFjdGlvbnM7CisgIGludCByZXNlcnZlZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07CisgIGludCBzcGFyZVsyXTsKKyAgY2hhciBkYXRhWzFdOworfTsKIHN0cnVjdCBzeXNleF9pbmZvIHsKLSBzaG9ydCBrZXk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzaG9ydCBrZXk7CiAjZGVmaW5lIFNZU0VYX1BBVENIIF9QQVRDSEtFWSgweDA1KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUFVSV9QQVRDSCBfUEFUQ0hLRVkoMHgwNikKLSBzaG9ydCBkZXZpY2Vfbm87Ci0gaW50IGxlbjsKLSB1bnNpZ25lZCBjaGFyIGRhdGFbMV07CisgIHNob3J0IGRldmljZV9ubzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKKyAgaW50IGxlbjsKKyAgdW5zaWduZWQgY2hhciBkYXRhWzFdOworfTsKICNkZWZpbmUgU0VRX05PVEVPRkYgMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VRX0ZNTk9URU9GRiBTRVFfTk9URU9GRgogI2RlZmluZSBTRVFfTk9URU9OIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFUV9GTU5PVEVPTiBTRVFfTk9URU9OCiAjZGVmaW5lIFNFUV9XQUlUIFRNUl9XQUlUX0FCUworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VRX1BHTUNIQU5HRSAzCiAjZGVmaW5lIFNFUV9GTVBHTUNIQU5HRSBTRVFfUEdNQ0hBTkdFCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRVFfU1lOQ1RJTUVSIFRNUl9TVEFSVAogI2RlZmluZSBTRVFfTUlESVBVVEMgNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0VRX0RSVU1PTiA2CiAjZGVmaW5lIFNFUV9EUlVNT0ZGIDcKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFUV9FQ0hPIFRNUl9FQ0hPCiAjZGVmaW5lIFNFUV9BRlRFUlRPVUNIIDkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFUV9DT05UUk9MTEVSIDEwCiAjZGVmaW5lIENUTF9CQU5LX1NFTEVDVCAweDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfTU9EV0hFRUwgMHgwMQogI2RlZmluZSBDVExfQlJFQVRIIDB4MDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUTF9GT09UIDB4MDQKICNkZWZpbmUgQ1RMX1BPUlRBTUVOVE9fVElNRSAweDA1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfREFUQV9FTlRSWSAweDA2CiAjZGVmaW5lIENUTF9NQUlOX1ZPTFVNRSAweDA3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfQkFMQU5DRSAweDA4CiAjZGVmaW5lIENUTF9QQU4gMHgwYQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RMX0VYUFJFU1NJT04gMHgwYgogI2RlZmluZSBDVExfR0VORVJBTF9QVVJQT1NFMSAweDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfR0VORVJBTF9QVVJQT1NFMiAweDExCiAjZGVmaW5lIENUTF9HRU5FUkFMX1BVUlBPU0UzIDB4MTIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUTF9HRU5FUkFMX1BVUlBPU0U0IDB4MTMKICNkZWZpbmUgQ1RMX0RBTVBFUl9QRURBTCAweDQwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfU1VTVEFJTiAweDQwCiAjZGVmaW5lIENUTF9IT0xEIDB4NDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUTF9QT1JUQU1FTlRPIDB4NDEKICNkZWZpbmUgQ1RMX1NPU1RFTlVUTyAweDQyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfU09GVF9QRURBTCAweDQzCiAjZGVmaW5lIENUTF9IT0xEMiAweDQ1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfR0VORVJBTF9QVVJQT1NFNSAweDUwCiAjZGVmaW5lIENUTF9HRU5FUkFMX1BVUlBPU0U2IDB4NTEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUTF9HRU5FUkFMX1BVUlBPU0U3IDB4NTIKICNkZWZpbmUgQ1RMX0dFTkVSQUxfUFVSUE9TRTggMHg1MwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RMX0VYVF9FRkZfREVQVEggMHg1YgogI2RlZmluZSBDVExfVFJFTU9MT19ERVBUSCAweDVjCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfQ0hPUlVTX0RFUFRIIDB4NWQKICNkZWZpbmUgQ1RMX0RFVFVORV9ERVBUSCAweDVlCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVExfQ0VMRVNURV9ERVBUSCAweDVlCiAjZGVmaW5lIENUTF9QSEFTRVJfREVQVEggMHg1ZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RMX0RBVEFfSU5DUkVNRU5UIDB4NjAKICNkZWZpbmUgQ1RMX0RBVEFfREVDUkVNRU5UIDB4NjEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENUTF9OT05SRUdfUEFSTV9OVU1fTFNCIDB4NjIKICNkZWZpbmUgQ1RMX05PTlJFR19QQVJNX05VTV9NU0IgMHg2MworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RMX1JFR0lTVF9QQVJNX05VTV9MU0IgMHg2NAogI2RlZmluZSBDVExfUkVHSVNUX1BBUk1fTlVNX01TQiAweDY1Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVFJMX1BJVENIX0JFTkRFUiAyNTUKICNkZWZpbmUgQ1RSTF9QSVRDSF9CRU5ERVJfUkFOR0UgMjU0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBDVFJMX0VYUFJFU1NJT04gMjUzCiAjZGVmaW5lIENUUkxfTUFJTl9WT0xVTUUgMjUyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRVFfQkFMQU5DRSAxMQogI2RlZmluZSBTRVFfVk9MTU9ERSAxMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVk9MX01FVEhPRF9BREFHSU8gMQogI2RlZmluZSBWT0xfTUVUSE9EX0xJTkVBUiAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRVFfRlVMTFNJWkUgMHhmZAogI2RlZmluZSBTRVFfUFJJVkFURSAweGZlCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRVFfRVhURU5ERUQgMHhmZgogdHlwZWRlZiB1bnNpZ25lZCBjaGFyIHNiaV9pbnN0cl9kYXRhWzMyXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc2JpX2luc3RydW1lbnQgewotIHVuc2lnbmVkIHNob3J0IGtleTsKKyAgdW5zaWduZWQgc2hvcnQga2V5OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRk1fUEFUQ0ggX1BBVENIS0VZKDB4MDEpCiAjZGVmaW5lIE9QTDNfUEFUQ0ggX1BBVENIS0VZKDB4MDMpCisgIHNob3J0IGRldmljZTsKKyAgaW50IGNoYW5uZWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IGRldmljZTsKLSBpbnQgY2hhbm5lbDsKLSBzYmlfaW5zdHJfZGF0YSBvcGVyYXRvcnM7Ci0gfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHNiaV9pbnN0cl9kYXRhIG9wZXJhdG9yczsKK307CiBzdHJ1Y3Qgc3ludGhfaW5mbyB7Ci0gY2hhciBuYW1lWzMwXTsKLSBpbnQgZGV2aWNlOwotIGludCBzeW50aF90eXBlOworICBjaGFyIG5hbWVbMzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IGRldmljZTsKKyAgaW50IHN5bnRoX3R5cGU7CiAjZGVmaW5lIFNZTlRIX1RZUEVfRk0gMAogI2RlZmluZSBTWU5USF9UWVBFX1NBTVBMRSAxCi0jZGVmaW5lIFNZTlRIX1RZUEVfTUlESSAyCi0gaW50IHN5bnRoX3N1YnR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTWU5USF9UWVBFX01JREkgMgorICBpbnQgc3ludGhfc3VidHlwZTsKICNkZWZpbmUgRk1fVFlQRV9BRExJQiAweDAwCiAjZGVmaW5lIEZNX1RZUEVfT1BMMyAweDAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNSURJX1RZUEVfTVBVNDAxIDB4NDAxCiAjZGVmaW5lIFNBTVBMRV9UWVBFX0JBU0lDIDB4MTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNBTVBMRV9UWVBFX0dVUyBTQU1QTEVfVFlQRV9CQVNJQwogI2RlZmluZSBTQU1QTEVfVFlQRV9XQVZFRlJPTlQgMHgxMQotIGludCBwZXJjX21vZGU7Ci0gaW50IG5yX3ZvaWNlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG5yX2RydW1zOwotIGludCBpbnN0cl9iYW5rX3NpemU7Ci0gdW5zaWduZWQgaW50IGNhcGFiaWxpdGllczsKKyAgaW50IHBlcmNfbW9kZTsKKyAgaW50IG5yX3ZvaWNlczsKKyAgaW50IG5yX2RydW1zOworICBpbnQgaW5zdHJfYmFua19zaXplOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IGNhcGFiaWxpdGllczsKICNkZWZpbmUgU1lOVEhfQ0FQX1BFUkNNT0RFIDB4MDAwMDAwMDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNZTlRIX0NBUF9PUEwzIDB4MDAwMDAwMDIKICNkZWZpbmUgU1lOVEhfQ0FQX0lOUFVUIDB4MDAwMDAwMDQKLSBpbnQgZHVtbWllc1sxOV07Ci0gfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBkdW1taWVzWzE5XTsKK307CiBzdHJ1Y3Qgc291bmRfdGltZXJfaW5mbyB7Ci0gY2hhciBuYW1lWzMyXTsKLSBpbnQgY2FwczsKLSB9OworICBjaGFyIG5hbWVbMzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IGNhcHM7Cit9OwogI2RlZmluZSBNSURJX0NBUF9NUFU0MDEgMQogc3RydWN0IG1pZGlfaW5mbyB7Ci0gY2hhciBuYW1lWzMwXTsKLSBpbnQgZGV2aWNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY2FwYWJpbGl0aWVzOwotIGludCBkZXZfdHlwZTsKLSBpbnQgZHVtbWllc1sxOF07Ci0gfTsKKyAgY2hhciBuYW1lWzMwXTsKKyAgaW50IGRldmljZTsKKyAgdW5zaWduZWQgaW50IGNhcGFiaWxpdGllczsKKyAgaW50IGRldl90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IGR1bW1pZXNbMThdOworfTsKIHR5cGVkZWYgc3RydWN0IHsKLSB1bnNpZ25lZCBjaGFyIGNtZDsKLSBjaGFyIG5yX2FyZ3MsIG5yX3JldHVybnM7Ci0gdW5zaWduZWQgY2hhciBkYXRhWzMwXTsKKyAgdW5zaWduZWQgY2hhciBjbWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gbXB1X2NvbW1hbmRfcmVjOworICBjaGFyIG5yX2FyZ3MsIG5yX3JldHVybnM7CisgIHVuc2lnbmVkIGNoYXIgZGF0YVszMF07Cit9IG1wdV9jb21tYW5kX3JlYzsKICNkZWZpbmUgU05EQ1RMX01JRElfUFJFVElNRSBfU0lPV1IoJ20nLCAwLCBpbnQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRDVExfTUlESV9NUFVNT0RFIF9TSU9XUignbScsIDEsIGludCkKICNkZWZpbmUgU05EQ1RMX01JRElfTVBVQ01EIF9TSU9XUignbScsIDIsIG1wdV9jb21tYW5kX3JlYykKKyNkZWZpbmUgU05EQ1RMX0RTUF9SRVNFVCBfU0lPKCdQJywgMCkKKyNkZWZpbmUgU05EQ1RMX0RTUF9TWU5DIF9TSU8oJ1AnLCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EQ1RMX0RTUF9SRVNFVCBfU0lPICgnUCcsIDApCi0jZGVmaW5lIFNORENUTF9EU1BfU1lOQyBfU0lPICgnUCcsIDEpCiAjZGVmaW5lIFNORENUTF9EU1BfU1BFRUQgX1NJT1dSKCdQJywgMiwgaW50KQogI2RlZmluZSBTTkRDVExfRFNQX1NURVJFTyBfU0lPV1IoJ1AnLCAzLCBpbnQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRDVExfRFNQX0dFVEJMS1NJWkUgX1NJT1dSKCdQJywgNCwgaW50KQogI2RlZmluZSBTTkRDVExfRFNQX1NBTVBMRVNJWkUgU05EQ1RMX0RTUF9TRVRGTVQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORENUTF9EU1BfQ0hBTk5FTFMgX1NJT1dSKCdQJywgNiwgaW50KQogI2RlZmluZSBTT1VORF9QQ01fV1JJVEVfQ0hBTk5FTFMgU05EQ1RMX0RTUF9DSEFOTkVMUwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfUENNX1dSSVRFX0ZJTFRFUiBfU0lPV1IoJ1AnLCA3LCBpbnQpCi0jZGVmaW5lIFNORENUTF9EU1BfUE9TVCBfU0lPICgnUCcsIDgpCi0jZGVmaW5lIFNORENUTF9EU1BfU1VCRElWSURFIF9TSU9XUignUCcsIDksIGludCkKLSNkZWZpbmUgU05EQ1RMX0RTUF9TRVRGUkFHTUVOVCBfU0lPV1IoJ1AnLDEwLCBpbnQpCisjZGVmaW5lIFNORENUTF9EU1BfUE9TVCBfU0lPKCdQJywgOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORENUTF9EU1BfR0VURk1UUyBfU0lPUiAoJ1AnLDExLCBpbnQpCi0jZGVmaW5lIFNORENUTF9EU1BfU0VURk1UIF9TSU9XUignUCcsNSwgaW50KQorI2RlZmluZSBTTkRDVExfRFNQX1NVQkRJVklERSBfU0lPV1IoJ1AnLCA5LCBpbnQpCisjZGVmaW5lIFNORENUTF9EU1BfU0VURlJBR01FTlQgX1NJT1dSKCdQJywgMTAsIGludCkKKyNkZWZpbmUgU05EQ1RMX0RTUF9HRVRGTVRTIF9TSU9SKCdQJywgMTEsIGludCkKKyNkZWZpbmUgU05EQ1RMX0RTUF9TRVRGTVQgX1NJT1dSKCdQJywgNSwgaW50KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUZNVF9RVUVSWSAweDAwMDAwMDAwCiAjZGVmaW5lIEFGTVRfTVVfTEFXIDB4MDAwMDAwMDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFGTVRfQV9MQVcgMHgwMDAwMDAwMgogI2RlZmluZSBBRk1UX0lNQV9BRFBDTSAweDAwMDAwMDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBRk1UX1U4IDB4MDAwMDAwMDgKICNkZWZpbmUgQUZNVF9TMTZfTEUgMHgwMDAwMDAxMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUZNVF9TMTZfQkUgMHgwMDAwMDAyMAogI2RlZmluZSBBRk1UX1M4IDB4MDAwMDAwNDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFGTVRfVTE2X0xFIDB4MDAwMDAwODAKICNkZWZpbmUgQUZNVF9VMTZfQkUgMHgwMDAwMDEwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQUZNVF9NUEVHIDB4MDAwMDAyMDAKICNkZWZpbmUgQUZNVF9BQzMgMHgwMDAwMDQwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IGF1ZGlvX2J1Zl9pbmZvIHsKLSBpbnQgZnJhZ21lbnRzOworICBpbnQgZnJhZ21lbnRzOworICBpbnQgZnJhZ3N0b3RhbDsKKyAgaW50IGZyYWdzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZnJhZ3N0b3RhbDsKLSBpbnQgZnJhZ3NpemU7Ci0gaW50IGJ5dGVzOwotIH0gYXVkaW9fYnVmX2luZm87CisgIGludCBieXRlczsKK30gYXVkaW9fYnVmX2luZm87CisjZGVmaW5lIFNORENUTF9EU1BfR0VUT1NQQUNFIF9TSU9SKCdQJywgMTIsIGF1ZGlvX2J1Zl9pbmZvKQorI2RlZmluZSBTTkRDVExfRFNQX0dFVElTUEFDRSBfU0lPUignUCcsIDEzLCBhdWRpb19idWZfaW5mbykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORENUTF9EU1BfR0VUT1NQQUNFIF9TSU9SICgnUCcsMTIsIGF1ZGlvX2J1Zl9pbmZvKQotI2RlZmluZSBTTkRDVExfRFNQX0dFVElTUEFDRSBfU0lPUiAoJ1AnLDEzLCBhdWRpb19idWZfaW5mbykKLSNkZWZpbmUgU05EQ1RMX0RTUF9OT05CTE9DSyBfU0lPICgnUCcsMTQpCi0jZGVmaW5lIFNORENUTF9EU1BfR0VUQ0FQUyBfU0lPUiAoJ1AnLDE1LCBpbnQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRDVExfRFNQX05PTkJMT0NLIF9TSU8oJ1AnLCAxNCkKKyNkZWZpbmUgU05EQ1RMX0RTUF9HRVRDQVBTIF9TSU9SKCdQJywgMTUsIGludCkKICNkZWZpbmUgRFNQX0NBUF9SRVZJU0lPTiAweDAwMDAwMGZmCiAjZGVmaW5lIERTUF9DQVBfRFVQTEVYIDB4MDAwMDAxMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERTUF9DQVBfUkVBTFRJTUUgMHgwMDAwMDIwMAogI2RlZmluZSBEU1BfQ0FQX0JBVENIIDB4MDAwMDA0MDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERTUF9DQVBfQ09QUk9DIDB4MDAwMDA4MDAKICNkZWZpbmUgRFNQX0NBUF9UUklHR0VSIDB4MDAwMDEwMDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERTUF9DQVBfTU1BUCAweDAwMDAyMDAwCiAjZGVmaW5lIERTUF9DQVBfTVVMVEkgMHgwMDAwNDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFNQX0NBUF9CSU5EIDB4MDAwMDgwMDAKLSNkZWZpbmUgU05EQ1RMX0RTUF9HRVRUUklHR0VSIF9TSU9SICgnUCcsMTYsIGludCkKLSNkZWZpbmUgU05EQ1RMX0RTUF9TRVRUUklHR0VSIF9TSU9XICgnUCcsMTYsIGludCkKLSNkZWZpbmUgUENNX0VOQUJMRV9JTlBVVCAweDAwMDAwMDAxCisjZGVmaW5lIFNORENUTF9EU1BfR0VUVFJJR0dFUiBfU0lPUignUCcsIDE2LCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRDVExfRFNQX1NFVFRSSUdHRVIgX1NJT1coJ1AnLCAxNiwgaW50KQorI2RlZmluZSBQQ01fRU5BQkxFX0lOUFVUIDB4MDAwMDAwMDEKICNkZWZpbmUgUENNX0VOQUJMRV9PVVRQVVQgMHgwMDAwMDAwMgogdHlwZWRlZiBzdHJ1Y3QgY291bnRfaW5mbyB7Ci0gaW50IGJ5dGVzOwotIGludCBibG9ja3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwdHI7Ci0gfSBjb3VudF9pbmZvOwotI2RlZmluZSBTTkRDVExfRFNQX0dFVElQVFIgX1NJT1IgKCdQJywxNywgY291bnRfaW5mbykKLSNkZWZpbmUgU05EQ1RMX0RTUF9HRVRPUFRSIF9TSU9SICgnUCcsMTgsIGNvdW50X2luZm8pCisgIGludCBieXRlczsKKyAgaW50IGJsb2NrczsKKyAgaW50IHB0cjsKK30gY291bnRfaW5mbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORENUTF9EU1BfR0VUSVBUUiBfU0lPUignUCcsIDE3LCBjb3VudF9pbmZvKQorI2RlZmluZSBTTkRDVExfRFNQX0dFVE9QVFIgX1NJT1IoJ1AnLCAxOCwgY291bnRfaW5mbykKIHR5cGVkZWYgc3RydWN0IGJ1ZmZtZW1fZGVzYyB7Ci0gdW5zaWduZWQgKmJ1ZmZlcjsKLSBpbnQgc2l6ZTsKLSB9IGJ1ZmZtZW1fZGVzYzsKKyAgdW5zaWduZWQgKiBidWZmZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRDVExfRFNQX01BUElOQlVGIF9TSU9SICgnUCcsIDE5LCBidWZmbWVtX2Rlc2MpCi0jZGVmaW5lIFNORENUTF9EU1BfTUFQT1VUQlVGIF9TSU9SICgnUCcsIDIwLCBidWZmbWVtX2Rlc2MpCi0jZGVmaW5lIFNORENUTF9EU1BfU0VUU1lOQ1JPIF9TSU8gKCdQJywgMjEpCi0jZGVmaW5lIFNORENUTF9EU1BfU0VURFVQTEVYIF9TSU8gKCdQJywgMjIpCisgIGludCBzaXplOworfSBidWZmbWVtX2Rlc2M7CisjZGVmaW5lIFNORENUTF9EU1BfTUFQSU5CVUYgX1NJT1IoJ1AnLCAxOSwgYnVmZm1lbV9kZXNjKQorI2RlZmluZSBTTkRDVExfRFNQX01BUE9VVEJVRiBfU0lPUignUCcsIDIwLCBidWZmbWVtX2Rlc2MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRDVExfRFNQX0dFVE9ERUxBWSBfU0lPUiAoJ1AnLCAyMywgaW50KQorI2RlZmluZSBTTkRDVExfRFNQX1NFVFNZTkNSTyBfU0lPKCdQJywgMjEpCisjZGVmaW5lIFNORENUTF9EU1BfU0VURFVQTEVYIF9TSU8oJ1AnLCAyMikKKyNkZWZpbmUgU05EQ1RMX0RTUF9HRVRPREVMQVkgX1NJT1IoJ1AnLCAyMywgaW50KQogI2RlZmluZSBTTkRDVExfRFNQX0dFVENIQU5ORUxNQVNLIF9TSU9XUignUCcsIDY0LCBpbnQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRDVExfRFNQX0JJTkRfQ0hBTk5FTCBfU0lPV1IoJ1AnLCA2NSwgaW50KQogI2RlZmluZSBEU1BfQklORF9RVUVSWSAweDAwMDAwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEU1BfQklORF9GUk9OVCAweDAwMDAwMDAxCiAjZGVmaW5lIERTUF9CSU5EX1NVUlIgMHgwMDAwMDAwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFNQX0JJTkRfQ0VOVEVSX0xGRSAweDAwMDAwMDA0CiAjZGVmaW5lIERTUF9CSU5EX0hBTkRTRVQgMHgwMDAwMDAwOAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRFNQX0JJTkRfTUlDIDB4MDAwMDAwMTAKICNkZWZpbmUgRFNQX0JJTkRfTU9ERU0xIDB4MDAwMDAwMjAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERTUF9CSU5EX01PREVNMiAweDAwMDAwMDQwCiAjZGVmaW5lIERTUF9CSU5EX0kyUyAweDAwMDAwMDgwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEU1BfQklORF9TUERJRiAweDAwMDAwMTAwCi0jZGVmaW5lIFNORENUTF9EU1BfU0VUU1BESUYgX1NJT1cgKCdQJywgNjYsIGludCkKLSNkZWZpbmUgU05EQ1RMX0RTUF9HRVRTUERJRiBfU0lPUiAoJ1AnLCA2NywgaW50KQotI2RlZmluZSBTUERJRl9QUk8gMHgwMDAxCisjZGVmaW5lIFNORENUTF9EU1BfU0VUU1BESUYgX1NJT1coJ1AnLCA2NiwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EQ1RMX0RTUF9HRVRTUERJRiBfU0lPUignUCcsIDY3LCBpbnQpCisjZGVmaW5lIFNQRElGX1BSTyAweDAwMDEKICNkZWZpbmUgU1BESUZfTl9BVUQgMHgwMDAyCiAjZGVmaW5lIFNQRElGX0NPUFkgMHgwMDA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTUERJRl9QUkUgMHgwMDA4CiAjZGVmaW5lIFNQRElGX0NDIDB4MDdmMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU1BESUZfTCAweDA4MDAKICNkZWZpbmUgU1BESUZfRFJTIDB4NDAwMAotI2RlZmluZSBTUERJRl9WIDB4ODAwMAotI2RlZmluZSBTTkRDVExfRFNQX1BST0ZJTEUgX1NJT1cgKCdQJywgMjMsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNQRElGX1YgMHg4MDAwCisjZGVmaW5lIFNORENUTF9EU1BfUFJPRklMRSBfU0lPVygnUCcsIDIzLCBpbnQpCiAjZGVmaW5lIEFQRl9OT1JNQUwgMAogI2RlZmluZSBBUEZfTkVUV09SSyAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBUEZfQ1BVSU5URU5TIDIKLSNkZWZpbmUgU09VTkRfUENNX1JFQURfUkFURSBfU0lPUiAoJ1AnLCAyLCBpbnQpCisjZGVmaW5lIFNPVU5EX1BDTV9SRUFEX1JBVEUgX1NJT1IoJ1AnLCAyLCBpbnQpCisjZGVmaW5lIFNPVU5EX1BDTV9SRUFEX0NIQU5ORUxTIF9TSU9SKCdQJywgNiwgaW50KQorI2RlZmluZSBTT1VORF9QQ01fUkVBRF9CSVRTIF9TSU9SKCdQJywgNSwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU09VTkRfUENNX1JFQURfQ0hBTk5FTFMgX1NJT1IgKCdQJywgNiwgaW50KQotI2RlZmluZSBTT1VORF9QQ01fUkVBRF9CSVRTIF9TSU9SICgnUCcsIDUsIGludCkKLSNkZWZpbmUgU09VTkRfUENNX1JFQURfRklMVEVSIF9TSU9SICgnUCcsIDcsIGludCkKKyNkZWZpbmUgU09VTkRfUENNX1JFQURfRklMVEVSIF9TSU9SKCdQJywgNywgaW50KQogI2RlZmluZSBTT1VORF9QQ01fV1JJVEVfQklUUyBTTkRDVExfRFNQX1NFVEZNVAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfUENNX1dSSVRFX1JBVEUgU05EQ1RMX0RTUF9TUEVFRAogI2RlZmluZSBTT1VORF9QQ01fUE9TVCBTTkRDVExfRFNQX1BPU1QKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX1BDTV9SRVNFVCBTTkRDVExfRFNQX1JFU0VUCiAjZGVmaW5lIFNPVU5EX1BDTV9TWU5DIFNORENUTF9EU1BfU1lOQwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfUENNX1NVQkRJVklERSBTTkRDVExfRFNQX1NVQkRJVklERQogI2RlZmluZSBTT1VORF9QQ01fU0VURlJBR01FTlQgU05EQ1RMX0RTUF9TRVRGUkFHTUVOVAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfUENNX0dFVEZNVFMgU05EQ1RMX0RTUF9HRVRGTVRTCiAjZGVmaW5lIFNPVU5EX1BDTV9TRVRGTVQgU05EQ1RMX0RTUF9TRVRGTVQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX1BDTV9HRVRPU1BBQ0UgU05EQ1RMX0RTUF9HRVRPU1BBQ0UKICNkZWZpbmUgU09VTkRfUENNX0dFVElTUEFDRSBTTkRDVExfRFNQX0dFVElTUEFDRQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfUENNX05PTkJMT0NLIFNORENUTF9EU1BfTk9OQkxPQ0sKICNkZWZpbmUgU09VTkRfUENNX0dFVENBUFMgU05EQ1RMX0RTUF9HRVRDQVBTCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9QQ01fR0VUVFJJR0dFUiBTTkRDVExfRFNQX0dFVFRSSUdHRVIKICNkZWZpbmUgU09VTkRfUENNX1NFVFRSSUdHRVIgU05EQ1RMX0RTUF9TRVRUUklHR0VSCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9QQ01fU0VUU1lOQ1JPIFNORENUTF9EU1BfU0VUU1lOQ1JPCiAjZGVmaW5lIFNPVU5EX1BDTV9HRVRJUFRSIFNORENUTF9EU1BfR0VUSVBUUgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfUENNX0dFVE9QVFIgU05EQ1RMX0RTUF9HRVRPUFRSCiAjZGVmaW5lIFNPVU5EX1BDTV9NQVBJTkJVRiBTTkRDVExfRFNQX01BUElOQlVGCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9QQ01fTUFQT1VUQlVGIFNORENUTF9EU1BfTUFQT1VUQlVGCiB0eXBlZGVmIHN0cnVjdCBjb3ByX2J1ZmZlciB7CisgIGludCBjb21tYW5kOworICBpbnQgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjb21tYW5kOwotIGludCBmbGFnczsKICNkZWZpbmUgQ1BGX05PTkUgMHgwMDAwCiAjZGVmaW5lIENQRl9GSVJTVCAweDAwMDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIENQRl9MQVNUIDB4MDAwMgotIGludCBsZW47Ci0gaW50IG9mZnM7Ci0gdW5zaWduZWQgY2hhciBkYXRhWzQwMDBdOworICBpbnQgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGNvcHJfYnVmZmVyOworICBpbnQgb2ZmczsKKyAgdW5zaWduZWQgY2hhciBkYXRhWzQwMDBdOworfSBjb3ByX2J1ZmZlcjsKIHR5cGVkZWYgc3RydWN0IGNvcHJfZGVidWdfYnVmIHsKLSBpbnQgY29tbWFuZDsKLSBpbnQgcGFybTE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBwYXJtMjsKLSBpbnQgZmxhZ3M7Ci0gaW50IGxlbjsKLSB9IGNvcHJfZGVidWdfYnVmOworICBpbnQgY29tbWFuZDsKKyAgaW50IHBhcm0xOworICBpbnQgcGFybTI7CisgIGludCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBsZW47Cit9IGNvcHJfZGVidWdfYnVmOwogdHlwZWRlZiBzdHJ1Y3QgY29wcl9tc2cgewotIGludCBsZW47Ci0gdW5zaWduZWQgY2hhciBkYXRhWzQwMDBdOwotIH0gY29wcl9tc2c7CisgIGludCBsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRDVExfQ09QUl9SRVNFVCBfU0lPICgnQycsIDApCisgIHVuc2lnbmVkIGNoYXIgZGF0YVs0MDAwXTsKK30gY29wcl9tc2c7CisjZGVmaW5lIFNORENUTF9DT1BSX1JFU0VUIF9TSU8oJ0MnLCAwKQogI2RlZmluZSBTTkRDVExfQ09QUl9MT0FEIF9TSU9XUignQycsIDEsIGNvcHJfYnVmZmVyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EQ1RMX0NPUFJfUkRBVEEgX1NJT1dSKCdDJywgMiwgY29wcl9kZWJ1Z19idWYpCiAjZGVmaW5lIFNORENUTF9DT1BSX1JDT0RFIF9TSU9XUignQycsIDMsIGNvcHJfZGVidWdfYnVmKQorI2RlZmluZSBTTkRDVExfQ09QUl9XREFUQSBfU0lPVygnQycsIDQsIGNvcHJfZGVidWdfYnVmKQorI2RlZmluZSBTTkRDVExfQ09QUl9XQ09ERSBfU0lPVygnQycsIDUsIGNvcHJfZGVidWdfYnVmKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EQ1RMX0NPUFJfV0RBVEEgX1NJT1cgKCdDJywgNCwgY29wcl9kZWJ1Z19idWYpCi0jZGVmaW5lIFNORENUTF9DT1BSX1dDT0RFIF9TSU9XICgnQycsIDUsIGNvcHJfZGVidWdfYnVmKQogI2RlZmluZSBTTkRDVExfQ09QUl9SVU4gX1NJT1dSKCdDJywgNiwgY29wcl9kZWJ1Z19idWYpCiAjZGVmaW5lIFNORENUTF9DT1BSX0hBTFQgX1NJT1dSKCdDJywgNywgY29wcl9kZWJ1Z19idWYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRDVExfQ09QUl9TRU5ETVNHIF9TSU9XUignQycsIDgsIGNvcHJfbXNnKQotI2RlZmluZSBTTkRDVExfQ09QUl9SQ1ZNU0cgX1NJT1IgKCdDJywgOSwgY29wcl9tc2cpCisjZGVmaW5lIFNORENUTF9DT1BSX1JDVk1TRyBfU0lPUignQycsIDksIGNvcHJfbXNnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfTlJERVZJQ0VTIDI1CiAjZGVmaW5lIFNPVU5EX01JWEVSX1ZPTFVNRSAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9CQVNTIDEKICNkZWZpbmUgU09VTkRfTUlYRVJfVFJFQkxFIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1NZTlRIIDMKICNkZWZpbmUgU09VTkRfTUlYRVJfUENNIDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1NQRUFLRVIgNQogI2RlZmluZSBTT1VORF9NSVhFUl9MSU5FIDYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX01JQyA3CiAjZGVmaW5lIFNPVU5EX01JWEVSX0NEIDgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX0lNSVggOQogI2RlZmluZSBTT1VORF9NSVhFUl9BTFRQQ00gMTAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQ0xFViAxMQogI2RlZmluZSBTT1VORF9NSVhFUl9JR0FJTiAxMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfT0dBSU4gMTMKICNkZWZpbmUgU09VTkRfTUlYRVJfTElORTEgMTQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX0xJTkUyIDE1CiAjZGVmaW5lIFNPVU5EX01JWEVSX0xJTkUzIDE2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9ESUdJVEFMMSAxNwogI2RlZmluZSBTT1VORF9NSVhFUl9ESUdJVEFMMiAxOAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfRElHSVRBTDMgMTkKICNkZWZpbmUgU09VTkRfTUlYRVJfUEhPTkVJTiAyMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfUEhPTkVPVVQgMjEKICNkZWZpbmUgU09VTkRfTUlYRVJfVklERU8gMjIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JBRElPIDIzCiAjZGVmaW5lIFNPVU5EX01JWEVSX01PTklUT1IgMjQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX09OT0ZGX01JTiAyOAogI2RlZmluZSBTT1VORF9PTk9GRl9NQVggMzAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX05PTkUgMzEKICNkZWZpbmUgU09VTkRfTUlYRVJfRU5IQU5DRSBTT1VORF9NSVhFUl9OT05FCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9NVVRFIFNPVU5EX01JWEVSX05PTkUKICNkZWZpbmUgU09VTkRfTUlYRVJfTE9VRCBTT1VORF9NSVhFUl9OT05FCi0jZGVmaW5lIFNPVU5EX0RFVklDRV9MQUJFTFMgeyJWb2wgICIsICJCYXNzICIsICJUcmVibCIsICJTeW50aCIsICJQY20gICIsICJTcGtyICIsICJMaW5lICIsICAgIk1pYyAgIiwgIkNEICAgIiwgIk1peCAgIiwgIlBjbTIgIiwgIlJlYyAgIiwgIklHYWluIiwgIk9HYWluIiwgICAiTGluZTEiLCAiTGluZTIiLCAiTGluZTMiLCAiRGlnaXRhbDEiLCAiRGlnaXRhbDIiLCAiRGlnaXRhbDMiLCAgICJQaG9uZUluIiwgIlBob25lT3V0IiwgIlZpZGVvIiwgIlJhZGlvIiwgIk1vbml0b3IifQotI2RlZmluZSBTT1VORF9ERVZJQ0VfTkFNRVMgeyJ2b2wiLCAiYmFzcyIsICJ0cmVibGUiLCAic3ludGgiLCAicGNtIiwgInNwZWFrZXIiLCAibGluZSIsICAgIm1pYyIsICJjZCIsICJtaXgiLCAicGNtMiIsICJyZWMiLCAiaWdhaW4iLCAib2dhaW4iLCAgICJsaW5lMSIsICJsaW5lMiIsICJsaW5lMyIsICJkaWcxIiwgImRpZzIiLCAiZGlnMyIsICAgInBoaW4iLCAicGhvdXQiLCAidmlkZW8iLCAicmFkaW8iLCAibW9uaXRvciJ9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTT1VORF9ERVZJQ0VfTEFCRUxTIHsgIlZvbCAgIiwgIkJhc3MgIiwgIlRyZWJsIiwgIlN5bnRoIiwgIlBjbSAgIiwgIlNwa3IgIiwgIkxpbmUgIiwgIk1pYyAgIiwgIkNEICAgIiwgIk1peCAgIiwgIlBjbTIgIiwgIlJlYyAgIiwgIklHYWluIiwgIk9HYWluIiwgIkxpbmUxIiwgIkxpbmUyIiwgIkxpbmUzIiwgIkRpZ2l0YWwxIiwgIkRpZ2l0YWwyIiwgIkRpZ2l0YWwzIiwgIlBob25lSW4iLCAiUGhvbmVPdXQiLCAiVmlkZW8iLCAiUmFkaW8iLCAiTW9uaXRvciIgfQorI2RlZmluZSBTT1VORF9ERVZJQ0VfTkFNRVMgeyAidm9sIiwgImJhc3MiLCAidHJlYmxlIiwgInN5bnRoIiwgInBjbSIsICJzcGVha2VyIiwgImxpbmUiLCAibWljIiwgImNkIiwgIm1peCIsICJwY20yIiwgInJlYyIsICJpZ2FpbiIsICJvZ2FpbiIsICJsaW5lMSIsICJsaW5lMiIsICJsaW5lMyIsICJkaWcxIiwgImRpZzIiLCAiZGlnMyIsICJwaGluIiwgInBob3V0IiwgInZpZGVvIiwgInJhZGlvIiwgIm1vbml0b3IiIH0KICNkZWZpbmUgU09VTkRfTUlYRVJfUkVDU1JDIDB4ZmYKICNkZWZpbmUgU09VTkRfTUlYRVJfREVWTUFTSyAweGZlCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9SRUNNQVNLIDB4ZmQKICNkZWZpbmUgU09VTkRfTUlYRVJfQ0FQUyAweGZjCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9DQVBfRVhDTF9JTlBVVCAweDAwMDAwMDAxCiAjZGVmaW5lIFNPVU5EX01JWEVSX1NURVJFT0RFVlMgMHhmYgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfT1VUU1JDIDB4ZmEKICNkZWZpbmUgU09VTkRfTUlYRVJfT1VUTUFTSyAweGY5Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NQVNLX1ZPTFVNRSAoMSA8PCBTT1VORF9NSVhFUl9WT0xVTUUpCiAjZGVmaW5lIFNPVU5EX01BU0tfQkFTUyAoMSA8PCBTT1VORF9NSVhFUl9CQVNTKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUFTS19UUkVCTEUgKDEgPDwgU09VTkRfTUlYRVJfVFJFQkxFKQogI2RlZmluZSBTT1VORF9NQVNLX1NZTlRIICgxIDw8IFNPVU5EX01JWEVSX1NZTlRIKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUFTS19QQ00gKDEgPDwgU09VTkRfTUlYRVJfUENNKQogI2RlZmluZSBTT1VORF9NQVNLX1NQRUFLRVIgKDEgPDwgU09VTkRfTUlYRVJfU1BFQUtFUikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01BU0tfTElORSAoMSA8PCBTT1VORF9NSVhFUl9MSU5FKQogI2RlZmluZSBTT1VORF9NQVNLX01JQyAoMSA8PCBTT1VORF9NSVhFUl9NSUMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NQVNLX0NEICgxIDw8IFNPVU5EX01JWEVSX0NEKQogI2RlZmluZSBTT1VORF9NQVNLX0lNSVggKDEgPDwgU09VTkRfTUlYRVJfSU1JWCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01BU0tfQUxUUENNICgxIDw8IFNPVU5EX01JWEVSX0FMVFBDTSkKICNkZWZpbmUgU09VTkRfTUFTS19SRUNMRVYgKDEgPDwgU09VTkRfTUlYRVJfUkVDTEVWKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUFTS19JR0FJTiAoMSA8PCBTT1VORF9NSVhFUl9JR0FJTikKICNkZWZpbmUgU09VTkRfTUFTS19PR0FJTiAoMSA8PCBTT1VORF9NSVhFUl9PR0FJTikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01BU0tfTElORTEgKDEgPDwgU09VTkRfTUlYRVJfTElORTEpCiAjZGVmaW5lIFNPVU5EX01BU0tfTElORTIgKDEgPDwgU09VTkRfTUlYRVJfTElORTIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NQVNLX0xJTkUzICgxIDw8IFNPVU5EX01JWEVSX0xJTkUzKQogI2RlZmluZSBTT1VORF9NQVNLX0RJR0lUQUwxICgxIDw8IFNPVU5EX01JWEVSX0RJR0lUQUwxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUFTS19ESUdJVEFMMiAoMSA8PCBTT1VORF9NSVhFUl9ESUdJVEFMMikKICNkZWZpbmUgU09VTkRfTUFTS19ESUdJVEFMMyAoMSA8PCBTT1VORF9NSVhFUl9ESUdJVEFMMykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01BU0tfUEhPTkVJTiAoMSA8PCBTT1VORF9NSVhFUl9QSE9ORUlOKQogI2RlZmluZSBTT1VORF9NQVNLX1BIT05FT1VUICgxIDw8IFNPVU5EX01JWEVSX1BIT05FT1VUKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUFTS19SQURJTyAoMSA8PCBTT1VORF9NSVhFUl9SQURJTykKICNkZWZpbmUgU09VTkRfTUFTS19WSURFTyAoMSA8PCBTT1VORF9NSVhFUl9WSURFTykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01BU0tfTU9OSVRPUiAoMSA8PCBTT1VORF9NSVhFUl9NT05JVE9SKQogI2RlZmluZSBTT1VORF9NQVNLX01VVEUgKDEgPDwgU09VTkRfTUlYRVJfTVVURSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01BU0tfRU5IQU5DRSAoMSA8PCBTT1VORF9NSVhFUl9FTkhBTkNFKQogI2RlZmluZSBTT1VORF9NQVNLX0xPVUQgKDEgPDwgU09VTkRfTUlYRVJfTE9VRCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1JWEVSX1JFQUQoZGV2KSBfU0lPUignTScsIGRldiwgaW50KQogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX1ZPTFVNRSBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX1ZPTFVNRSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfQkFTUyBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX0JBU1MpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfVFJFQkxFIE1JWEVSX1JFQUQoU09VTkRfTUlYRVJfVFJFQkxFKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9TWU5USCBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX1NZTlRIKQogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX1BDTSBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX1BDTSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfU1BFQUtFUiBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX1NQRUFLRVIpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfTElORSBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX0xJTkUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX01JQyBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX01JQykKICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9DRCBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX0NEKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9JTUlYIE1JWEVSX1JFQUQoU09VTkRfTUlYRVJfSU1JWCkKICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9BTFRQQ00gTUlYRVJfUkVBRChTT1VORF9NSVhFUl9BTFRQQ00pCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX1JFQ0xFViBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX1JFQ0xFVikKICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9JR0FJTiBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX0lHQUlOKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfUkVBRF9PR0FJTiBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX09HQUlOKQogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX0xJTkUxIE1JWEVSX1JFQUQoU09VTkRfTUlYRVJfTElORTEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX0xJTkUyIE1JWEVSX1JFQUQoU09VTkRfTUlYRVJfTElORTIpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfTElORTMgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9MSU5FMykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfTVVURSBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX01VVEUpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfRU5IQU5DRSBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX0VOSEFOQ0UpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX0xPVUQgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9MT1VEKQogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX1JFQ1NSQyBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX1JFQ1NSQykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfREVWTUFTSyBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX0RFVk1BU0spCiAjZGVmaW5lIFNPVU5EX01JWEVSX1JFQURfUkVDTUFTSyBNSVhFUl9SRUFEKFNPVU5EX01JWEVSX1JFQ01BU0spCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX1NURVJFT0RFVlMgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9TVEVSRU9ERVZTKQogI2RlZmluZSBTT1VORF9NSVhFUl9SRUFEX0NBUFMgTUlYRVJfUkVBRChTT1VORF9NSVhFUl9DQVBTKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUlYRVJfV1JJVEUoZGV2KSBfU0lPV1IoJ00nLCBkZXYsIGludCkKICNkZWZpbmUgU09VTkRfTUlYRVJfV1JJVEVfVk9MVU1FIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX1ZPTFVNRSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX0JBU1MgTUlYRVJfV1JJVEUoU09VTkRfTUlYRVJfQkFTUykKICNkZWZpbmUgU09VTkRfTUlYRVJfV1JJVEVfVFJFQkxFIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX1RSRUJMRSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX1NZTlRIIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX1NZTlRIKQogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9QQ00gTUlYRVJfV1JJVEUoU09VTkRfTUlYRVJfUENNKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfV1JJVEVfU1BFQUtFUiBNSVhFUl9XUklURShTT1VORF9NSVhFUl9TUEVBS0VSKQogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9MSU5FIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX0xJTkUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9NSUMgTUlYRVJfV1JJVEUoU09VTkRfTUlYRVJfTUlDKQogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9DRCBNSVhFUl9XUklURShTT1VORF9NSVhFUl9DRCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX0lNSVggTUlYRVJfV1JJVEUoU09VTkRfTUlYRVJfSU1JWCkKICNkZWZpbmUgU09VTkRfTUlYRVJfV1JJVEVfQUxUUENNIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX0FMVFBDTSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX1JFQ0xFViBNSVhFUl9XUklURShTT1VORF9NSVhFUl9SRUNMRVYpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX0lHQUlOIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX0lHQUlOKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfV1JJVEVfT0dBSU4gTUlYRVJfV1JJVEUoU09VTkRfTUlYRVJfT0dBSU4pCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX0xJTkUxIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX0xJTkUxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfV1JJVEVfTElORTIgTUlYRVJfV1JJVEUoU09VTkRfTUlYRVJfTElORTIpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX0xJTkUzIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX0xJTkUzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU09VTkRfTUlYRVJfV1JJVEVfTVVURSBNSVhFUl9XUklURShTT1VORF9NSVhFUl9NVVRFKQogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9FTkhBTkNFIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX0VOSEFOQ0UpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9XUklURV9MT1VEIE1JWEVSX1dSSVRFKFNPVU5EX01JWEVSX0xPVUQpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1dSSVRFX1JFQ1NSQyBNSVhFUl9XUklURShTT1VORF9NSVhFUl9SRUNTUkMpCit0eXBlZGVmIHN0cnVjdCBtaXhlcl9pbmZvIHsKKyAgY2hhciBpZFsxNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotdHlwZWRlZiBzdHJ1Y3QgbWl4ZXJfaW5mbwotewotIGNoYXIgaWRbMTZdOwotIGNoYXIgbmFtZVszMl07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBtb2RpZnlfY291bnRlcjsKLSBpbnQgZmlsbGVyc1sxMF07CisgIGNoYXIgbmFtZVszMl07CisgIGludCBtb2RpZnlfY291bnRlcjsKKyAgaW50IGZpbGxlcnNbMTBdOwogfSBtaXhlcl9pbmZvOwotdHlwZWRlZiBzdHJ1Y3QgX29sZF9taXhlcl9pbmZvCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIGNoYXIgaWRbMTZdOwotIGNoYXIgbmFtZVszMl07Cit0eXBlZGVmIHN0cnVjdCBfb2xkX21peGVyX2luZm8geworICBjaGFyIGlkWzE2XTsKKyAgY2hhciBuYW1lWzMyXTsKIH0gX29sZF9taXhlcl9pbmZvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU09VTkRfTUlYRVJfSU5GTyBfU0lPUiAoJ00nLCAxMDEsIG1peGVyX2luZm8pCi0jZGVmaW5lIFNPVU5EX09MRF9NSVhFUl9JTkZPIF9TSU9SICgnTScsIDEwMSwgX29sZF9taXhlcl9pbmZvKQorI2RlZmluZSBTT1VORF9NSVhFUl9JTkZPIF9TSU9SKCdNJywgMTAxLCBtaXhlcl9pbmZvKQorI2RlZmluZSBTT1VORF9PTERfTUlYRVJfSU5GTyBfU0lPUignTScsIDEwMSwgX29sZF9taXhlcl9pbmZvKQogdHlwZWRlZiB1bnNpZ25lZCBjaGFyIG1peGVyX3JlY29yZFsxMjhdOwogI2RlZmluZSBTT1VORF9NSVhFUl9BQ0NFU1MgX1NJT1dSKCdNJywgMTAyLCBtaXhlcl9yZWNvcmQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNzQ2LDE0ICs3NDEsMTQgQEAKICNkZWZpbmUgU09VTkRfTUlYRVJfUFJJVkFURTUgX1NJT1dSKCdNJywgMTE1LCBpbnQpCiB0eXBlZGVmIHN0cnVjdCBtaXhlcl92b2xfdGFibGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbnVtOwotIGNoYXIgbmFtZVszMl07Ci0gaW50IGxldmVsc1szMl07CisgIGludCBudW07CisgIGNoYXIgbmFtZVszMl07CisgIGludCBsZXZlbHNbMzJdOwogfSBtaXhlcl92b2xfdGFibGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT1VORF9NSVhFUl9HRVRMRVZFTFMgX1NJT1dSKCdNJywgMTE2LCBtaXhlcl92b2xfdGFibGUpCiAjZGVmaW5lIFNPVU5EX01JWEVSX1NFVExFVkVMUyBfU0lPV1IoJ00nLCAxMTcsIG1peGVyX3ZvbF90YWJsZSkKLSNkZWZpbmUgT1NTX0dFVFZFUlNJT04gX1NJT1IgKCdNJywgMTE4LCBpbnQpCisjZGVmaW5lIE9TU19HRVRWRVJTSU9OIF9TSU9SKCdNJywgMTE4LCBpbnQpCiAjZGVmaW5lIEVWX1NFUV9MT0NBTCAweDgwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBFVl9USU1JTkcgMHg4MQpAQCAtNzg3LDE0ICs3ODIsMTQgQEAKICNkZWZpbmUgU0VRX0RFQ0xBUkVCVUYoKSBTRVFfVVNFX0VYVEJVRigpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRVFfUE1fREVGSU5FUyBpbnQgX19mb29fYmFyX19fCi0jZGVmaW5lIFNFUV9MT0FEX0dNSU5TVFIoZGV2LCBpbnN0cikKLSNkZWZpbmUgU0VRX0xPQURfR01EUlVNKGRldiwgZHJ1bSkKKyNkZWZpbmUgU0VRX0xPQURfR01JTlNUUihkZXYsaW5zdHIpCisjZGVmaW5lIFNFUV9MT0FEX0dNRFJVTShkZXYsZHJ1bSkKICNkZWZpbmUgX1NFUV9FWFRFUk4gZXh0ZXJuCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTRVFfVVNFX0VYVEJVRigpICAgX1NFUV9FWFRFUk4gdW5zaWduZWQgY2hhciBfc2VxYnVmW107ICAgX1NFUV9FWFRFUk4gaW50IF9zZXFidWZsZW47IF9TRVFfRVhURVJOIGludCBfc2VxYnVmcHRyCisjZGVmaW5lIFNFUV9VU0VfRVhUQlVGKCkgX1NFUV9FWFRFUk4gdW5zaWduZWQgY2hhciBfc2VxYnVmW107IF9TRVFfRVhURVJOIGludCBfc2VxYnVmbGVuOyBfU0VRX0VYVEVSTiBpbnQgX3NlcWJ1ZnB0cgogI2lmbmRlZiBVU0VfU0lNUExFX01BQ1JPUwotI2RlZmluZSBTRVFfREVGSU5FQlVGKGxlbikgdW5zaWduZWQgY2hhciBfc2VxYnVmW2xlbl07IGludCBfc2VxYnVmbGVuID0gbGVuO2ludCBfc2VxYnVmcHRyID0gMAotI2RlZmluZSBfU0VRX05FRURCVUYobGVuKSBpZiAoKF9zZXFidWZwdHIrKGxlbikpID4gX3NlcWJ1Zmxlbikgc2VxYnVmX2R1bXAoKQorI2RlZmluZSBTRVFfREVGSU5FQlVGKGxlbikgdW5zaWduZWQgY2hhciBfc2VxYnVmW2xlbl07IGludCBfc2VxYnVmbGVuID0gbGVuOyBpbnQgX3NlcWJ1ZnB0ciA9IDAKKyNkZWZpbmUgX1NFUV9ORUVEQlVGKGxlbikgaWYoKF9zZXFidWZwdHIgKyAobGVuKSkgPiBfc2VxYnVmbGVuKSBzZXFidWZfZHVtcCgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfU0VRX0FEVkJVRihsZW4pIF9zZXFidWZwdHIgKz0gbGVuCiAjZGVmaW5lIFNFUV9EVU1QQlVGIHNlcWJ1Zl9kdW1wCkBAIC04MDIsMjkgKzc5NywyOSBAQAogI2RlZmluZSBfU0VRX05FRURCVUYobGVuKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgotI2RlZmluZSBTRVFfVk9MVU1FX01PREUoZGV2LCBtb2RlKSB7X1NFUV9ORUVEQlVGKDgpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyXSA9IFNFUV9FWFRFTkRFRDsgIF9zZXFidWZbX3NlcWJ1ZnB0cisxXSA9IFNFUV9WT0xNT0RFOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzJdID0gKGRldik7ICBfc2VxYnVmW19zZXFidWZwdHIrM10gPSAobW9kZSk7ICBfc2VxYnVmW19zZXFidWZwdHIrNF0gPSAwOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzVdID0gMDsgIF9zZXFidWZbX3NlcWJ1ZnB0cis2XSA9IDA7ICBfc2VxYnVmW19zZXFidWZwdHIrN10gPSAwOyAgX1NFUV9BRFZCVUYoOCk7fQotI2RlZmluZSBfQ0hOX1ZPSUNFKGRldiwgZXZlbnQsIGNobiwgbm90ZSwgcGFybSkgICB7X1NFUV9ORUVEQlVGKDgpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyXSA9IEVWX0NITl9WT0lDRTsgIF9zZXFidWZbX3NlcWJ1ZnB0cisxXSA9IChkZXYpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzJdID0gKGV2ZW50KTsgIF9zZXFidWZbX3NlcWJ1ZnB0ciszXSA9IChjaG4pOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzRdID0gKG5vdGUpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzVdID0gKHBhcm0pOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzZdID0gKDApOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzddID0gMDsgIF9TRVFfQURWQlVGKDgpO30KLSNkZWZpbmUgU0VRX1NUQVJUX05PVEUoZGV2LCBjaG4sIG5vdGUsIHZvbCkgICBfQ0hOX1ZPSUNFKGRldiwgTUlESV9OT1RFT04sIGNobiwgbm90ZSwgdm9sKQorI2RlZmluZSBTRVFfVk9MVU1FX01PREUoZGV2LG1vZGUpIHsgX1NFUV9ORUVEQlVGKDgpOyBfc2VxYnVmW19zZXFidWZwdHJdID0gU0VRX0VYVEVOREVEOyBfc2VxYnVmW19zZXFidWZwdHIgKyAxXSA9IFNFUV9WT0xNT0RFOyBfc2VxYnVmW19zZXFidWZwdHIgKyAyXSA9IChkZXYpOyBfc2VxYnVmW19zZXFidWZwdHIgKyAzXSA9IChtb2RlKTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgNF0gPSAwOyBfc2VxYnVmW19zZXFidWZwdHIgKyA1XSA9IDA7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDZdID0gMDsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgN10gPSAwOyBfU0VRX0FEVkJVRig4KTsgfQorI2RlZmluZSBfQ0hOX1ZPSUNFKGRldixldmVudCxjaG4sbm90ZSxwYXJtKSB7IF9TRVFfTkVFREJVRig4KTsgX3NlcWJ1Zltfc2VxYnVmcHRyXSA9IEVWX0NITl9WT0lDRTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMV0gPSAoZGV2KTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMl0gPSAoZXZlbnQpOyBfc2VxYnVmW19zZXFidWZwdHIgKyAzXSA9IChjaG4pOyBfc2VxYnVmW19zZXFidWZwdHIgKyA0XSA9IChub3RlKTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgNV0gPSAocGFybSk7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDZdID0gKDApOyBfc2VxYnVmW19zZXFidWZwdHIgKyA3XSA9IDA7IF9TRVFfQURWQlVGKDgpOyB9CisjZGVmaW5lIFNFUV9TVEFSVF9OT1RFKGRldixjaG4sbm90ZSx2b2wpIF9DSE5fVk9JQ0UoZGV2LCBNSURJX05PVEVPTiwgY2huLCBub3RlLCB2b2wpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTRVFfU1RPUF9OT1RFKGRldiwgY2huLCBub3RlLCB2b2wpICAgX0NITl9WT0lDRShkZXYsIE1JRElfTk9URU9GRiwgY2huLCBub3RlLCB2b2wpCi0jZGVmaW5lIFNFUV9LRVlfUFJFU1NVUkUoZGV2LCBjaG4sIG5vdGUsIHByZXNzdXJlKSAgIF9DSE5fVk9JQ0UoZGV2LCBNSURJX0tFWV9QUkVTU1VSRSwgY2huLCBub3RlLCBwcmVzc3VyZSkKLSNkZWZpbmUgX0NITl9DT01NT04oZGV2LCBldmVudCwgY2huLCBwMSwgcDIsIHcxNCkgICB7X1NFUV9ORUVEQlVGKDgpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyXSA9IEVWX0NITl9DT01NT047ICBfc2VxYnVmW19zZXFidWZwdHIrMV0gPSAoZGV2KTsgIF9zZXFidWZbX3NlcWJ1ZnB0cisyXSA9IChldmVudCk7ICBfc2VxYnVmW19zZXFidWZwdHIrM10gPSAoY2huKTsgIF9zZXFidWZbX3NlcWJ1ZnB0cis0XSA9IChwMSk7ICBfc2VxYnVmW19zZXFidWZwdHIrNV0gPSAocDIpOyAgKihzaG9ydCAqKSZfc2VxYnVmW19zZXFidWZwdHIrNl0gPSAodzE0KTsgIF9TRVFfQURWQlVGKDgpO30KLSNkZWZpbmUgU0VRX1NZU0VYKGRldiwgYnVmLCBsZW4pICAge2ludCBpaSwgbGw9KGxlbik7ICAgdW5zaWduZWQgY2hhciAqYnVmcD1idWY7ICBpZiAobGw+NilsbD02OyAgX1NFUV9ORUVEQlVGKDgpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyXSA9IEVWX1NZU0VYOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzFdID0gKGRldik7ICBmb3IoaWk9MDtpaTxsbDtpaSsrKSAgX3NlcWJ1Zltfc2VxYnVmcHRyK2lpKzJdID0gYnVmcFtpaV07ICBmb3IoaWk9bGw7aWk8NjtpaSsrKSAgX3NlcWJ1Zltfc2VxYnVmcHRyK2lpKzJdID0gMHhmZjsgIF9TRVFfQURWQlVGKDgpO30KKyNkZWZpbmUgU0VRX1NUT1BfTk9URShkZXYsY2huLG5vdGUsdm9sKSBfQ0hOX1ZPSUNFKGRldiwgTUlESV9OT1RFT0ZGLCBjaG4sIG5vdGUsIHZvbCkKKyNkZWZpbmUgU0VRX0tFWV9QUkVTU1VSRShkZXYsY2huLG5vdGUscHJlc3N1cmUpIF9DSE5fVk9JQ0UoZGV2LCBNSURJX0tFWV9QUkVTU1VSRSwgY2huLCBub3RlLCBwcmVzc3VyZSkKKyNkZWZpbmUgX0NITl9DT01NT04oZGV2LGV2ZW50LGNobixwMSxwMix3MTQpIHsgX1NFUV9ORUVEQlVGKDgpOyBfc2VxYnVmW19zZXFidWZwdHJdID0gRVZfQ0hOX0NPTU1PTjsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMV0gPSAoZGV2KTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMl0gPSAoZXZlbnQpOyBfc2VxYnVmW19zZXFidWZwdHIgKyAzXSA9IChjaG4pOyBfc2VxYnVmW19zZXFidWZwdHIgKyA0XSA9IChwMSk7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDVdID0gKHAyKTsgKiAoc2hvcnQgKikgJiBfc2VxYnVmW19zZXFidWZwdHIgKyA2XSA9ICh3MTQpOyBfU0VRX0FEVkJVRig4KTsgfQorI2RlZmluZSBTRVFfU1lTRVgoZGV2LGJ1ZixsZW4pIHsgaW50IGlpLCBsbCA9IChsZW4pOyB1bnNpZ25lZCBjaGFyICogYnVmcCA9IGJ1ZjsgaWYobGwgPiA2KSBsbCA9IDY7IF9TRVFfTkVFREJVRig4KTsgX3NlcWJ1Zltfc2VxYnVmcHRyXSA9IEVWX1NZU0VYOyBfc2VxYnVmW19zZXFidWZwdHIgKyAxXSA9IChkZXYpOyBmb3IoaWkgPSAwOyBpaSA8IGxsOyBpaSArKykgX3NlcWJ1Zltfc2VxYnVmcHRyICsgaWkgKyAyXSA9IGJ1ZnBbaWldOyBmb3IoaWkgPSBsbDsgaWkgPCA2OyBpaSArKykgX3NlcWJ1Zltfc2VxYnVmcHRyICsgaWkgKyAyXSA9IDB4ZmY7IF9TRVFfQURWQlVGKDgpOyB9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTRVFfQ0hOX1BSRVNTVVJFKGRldiwgY2huLCBwcmVzc3VyZSkgICBfQ0hOX0NPTU1PTihkZXYsIE1JRElfQ0hOX1BSRVNTVVJFLCBjaG4sIHByZXNzdXJlLCAwLCAwKQorI2RlZmluZSBTRVFfQ0hOX1BSRVNTVVJFKGRldixjaG4scHJlc3N1cmUpIF9DSE5fQ09NTU9OKGRldiwgTUlESV9DSE5fUFJFU1NVUkUsIGNobiwgcHJlc3N1cmUsIDAsIDApCiAjZGVmaW5lIFNFUV9TRVRfUEFUQ0ggU0VRX1BHTV9DSEFOR0UKLSNkZWZpbmUgU0VRX1BHTV9DSEFOR0UoZGV2LCBjaG4sIHBhdGNoKSAgIF9DSE5fQ09NTU9OKGRldiwgTUlESV9QR01fQ0hBTkdFLCBjaG4sIHBhdGNoLCAwLCAwKQotI2RlZmluZSBTRVFfQ09OVFJPTChkZXYsIGNobiwgY29udHJvbGxlciwgdmFsdWUpICAgX0NITl9DT01NT04oZGV2LCBNSURJX0NUTF9DSEFOR0UsIGNobiwgY29udHJvbGxlciwgMCwgdmFsdWUpCisjZGVmaW5lIFNFUV9QR01fQ0hBTkdFKGRldixjaG4scGF0Y2gpIF9DSE5fQ09NTU9OKGRldiwgTUlESV9QR01fQ0hBTkdFLCBjaG4sIHBhdGNoLCAwLCAwKQorI2RlZmluZSBTRVFfQ09OVFJPTChkZXYsY2huLGNvbnRyb2xsZXIsdmFsdWUpIF9DSE5fQ09NTU9OKGRldiwgTUlESV9DVExfQ0hBTkdFLCBjaG4sIGNvbnRyb2xsZXIsIDAsIHZhbHVlKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0VRX0JFTkRFUihkZXYsIGNobiwgdmFsdWUpICAgX0NITl9DT01NT04oZGV2LCBNSURJX1BJVENIX0JFTkQsIGNobiwgMCwgMCwgdmFsdWUpCi0jZGVmaW5lIFNFUV9WMl9YX0NPTlRST0woZGV2LCB2b2ljZSwgY29udHJvbGxlciwgdmFsdWUpIHtfU0VRX05FRURCVUYoOCk7ICBfc2VxYnVmW19zZXFidWZwdHJdID0gU0VRX0VYVEVOREVEOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzFdID0gU0VRX0NPTlRST0xMRVI7ICBfc2VxYnVmW19zZXFidWZwdHIrMl0gPSAoZGV2KTsgIF9zZXFidWZbX3NlcWJ1ZnB0ciszXSA9ICh2b2ljZSk7ICBfc2VxYnVmW19zZXFidWZwdHIrNF0gPSAoY29udHJvbGxlcik7ICBfc2VxYnVmW19zZXFidWZwdHIrNV0gPSAoKHZhbHVlKSYweGZmKTsgIF9zZXFidWZbX3NlcWJ1ZnB0cis2XSA9ICgodmFsdWU+PjgpJjB4ZmYpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzddID0gMDsgIF9TRVFfQURWQlVGKDgpO30KLSNkZWZpbmUgU0VRX1BJVENIQkVORChkZXYsIHZvaWNlLCB2YWx1ZSkgU0VRX1YyX1hfQ09OVFJPTChkZXYsIHZvaWNlLCBDVFJMX1BJVENIX0JFTkRFUiwgdmFsdWUpCi0jZGVmaW5lIFNFUV9CRU5ERVJfUkFOR0UoZGV2LCB2b2ljZSwgdmFsdWUpIFNFUV9WMl9YX0NPTlRST0woZGV2LCB2b2ljZSwgQ1RSTF9QSVRDSF9CRU5ERVJfUkFOR0UsIHZhbHVlKQorI2RlZmluZSBTRVFfQkVOREVSKGRldixjaG4sdmFsdWUpIF9DSE5fQ09NTU9OKGRldiwgTUlESV9QSVRDSF9CRU5ELCBjaG4sIDAsIDAsIHZhbHVlKQorI2RlZmluZSBTRVFfVjJfWF9DT05UUk9MKGRldix2b2ljZSxjb250cm9sbGVyLHZhbHVlKSB7IF9TRVFfTkVFREJVRig4KTsgX3NlcWJ1Zltfc2VxYnVmcHRyXSA9IFNFUV9FWFRFTkRFRDsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMV0gPSBTRVFfQ09OVFJPTExFUjsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMl0gPSAoZGV2KTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgM10gPSAodm9pY2UpOyBfc2VxYnVmW19zZXFidWZwdHIgKyA0XSA9IChjb250cm9sbGVyKTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgNV0gPSAoKHZhbHVlKSAmIDB4ZmYpOyBfc2VxYnVmW19zZXFidWZwdHIgKyA2XSA9ICgodmFsdWUgPj4gOCkgJiAweGZmKTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgN10gPSAwOyBfU0VRX0FEVkJVRig4KTsgfQorI2RlZmluZSBTRVFfUElUQ0hCRU5EKGRldix2b2ljZSx2YWx1ZSkgU0VRX1YyX1hfQ09OVFJPTChkZXYsIHZvaWNlLCBDVFJMX1BJVENIX0JFTkRFUiwgdmFsdWUpCisjZGVmaW5lIFNFUV9CRU5ERVJfUkFOR0UoZGV2LHZvaWNlLHZhbHVlKSBTRVFfVjJfWF9DT05UUk9MKGRldiwgdm9pY2UsIENUUkxfUElUQ0hfQkVOREVSX1JBTkdFLCB2YWx1ZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNFUV9FWFBSRVNTSU9OKGRldiwgdm9pY2UsIHZhbHVlKSBTRVFfQ09OVFJPTChkZXYsIHZvaWNlLCBDVExfRVhQUkVTU0lPTiwgdmFsdWUqMTI4KQotI2RlZmluZSBTRVFfTUFJTl9WT0xVTUUoZGV2LCB2b2ljZSwgdmFsdWUpIFNFUV9DT05UUk9MKGRldiwgdm9pY2UsIENUTF9NQUlOX1ZPTFVNRSwgKHZhbHVlKjE2MzgzKS8xMDApCi0jZGVmaW5lIFNFUV9QQU5OSU5HKGRldiwgdm9pY2UsIHBvcykgU0VRX0NPTlRST0woZGV2LCB2b2ljZSwgQ1RMX1BBTiwgKHBvcysxMjgpIC8gMikKLSNkZWZpbmUgX1RJTUVSX0VWRU5UKGV2LCBwYXJtKSB7X1NFUV9ORUVEQlVGKDgpOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzBdID0gRVZfVElNSU5HOyAgIF9zZXFidWZbX3NlcWJ1ZnB0cisxXSA9IChldik7ICAgX3NlcWJ1Zltfc2VxYnVmcHRyKzJdID0gMDsgIF9zZXFidWZbX3NlcWJ1ZnB0ciszXSA9IDA7ICAqKHVuc2lnbmVkIGludCAqKSZfc2VxYnVmW19zZXFidWZwdHIrNF0gPSAocGFybSk7ICAgX1NFUV9BRFZCVUYoOCk7fQorI2RlZmluZSBTRVFfRVhQUkVTU0lPTihkZXYsdm9pY2UsdmFsdWUpIFNFUV9DT05UUk9MKGRldiwgdm9pY2UsIENUTF9FWFBSRVNTSU9OLCB2YWx1ZSAqIDEyOCkKKyNkZWZpbmUgU0VRX01BSU5fVk9MVU1FKGRldix2b2ljZSx2YWx1ZSkgU0VRX0NPTlRST0woZGV2LCB2b2ljZSwgQ1RMX01BSU5fVk9MVU1FLCAodmFsdWUgKiAxNjM4MykgLyAxMDApCisjZGVmaW5lIFNFUV9QQU5OSU5HKGRldix2b2ljZSxwb3MpIFNFUV9DT05UUk9MKGRldiwgdm9pY2UsIENUTF9QQU4sIChwb3MgKyAxMjgpIC8gMikKKyNkZWZpbmUgX1RJTUVSX0VWRU5UKGV2LHBhcm0pIHsgX1NFUV9ORUVEQlVGKDgpOyBfc2VxYnVmW19zZXFidWZwdHIgKyAwXSA9IEVWX1RJTUlORzsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMV0gPSAoZXYpOyBfc2VxYnVmW19zZXFidWZwdHIgKyAyXSA9IDA7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDNdID0gMDsgKiAodW5zaWduZWQgaW50ICopICYgX3NlcWJ1Zltfc2VxYnVmcHRyICsgNF0gPSAocGFybSk7IF9TRVFfQURWQlVGKDgpOyB9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTRVFfU1RBUlRfVElNRVIoKSBfVElNRVJfRVZFTlQoVE1SX1NUQVJULCAwKQogI2RlZmluZSBTRVFfU1RPUF9USU1FUigpIF9USU1FUl9FVkVOVChUTVJfU1RPUCwgMCkKQEAgLTgzNywxMCArODMyLDEwIEBACiAjZGVmaW5lIFNFUV9TT05HUE9TKHBvcykgX1RJTUVSX0VWRU5UKFRNUl9TUFAsIHBvcykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNFUV9USU1FX1NJR05BVFVSRShzaWcpIF9USU1FUl9FVkVOVChUTVJfVElNRVNJRywgc2lnKQotI2RlZmluZSBfTE9DQUxfRVZFTlQoZXYsIHBhcm0pIHtfU0VRX05FRURCVUYoOCk7ICBfc2VxYnVmW19zZXFidWZwdHIrMF0gPSBFVl9TRVFfTE9DQUw7ICAgX3NlcWJ1Zltfc2VxYnVmcHRyKzFdID0gKGV2KTsgICBfc2VxYnVmW19zZXFidWZwdHIrMl0gPSAwOyAgX3NlcWJ1Zltfc2VxYnVmcHRyKzNdID0gMDsgICoodW5zaWduZWQgaW50ICopJl9zZXFidWZbX3NlcWJ1ZnB0cis0XSA9IChwYXJtKTsgICBfU0VRX0FEVkJVRig4KTt9CisjZGVmaW5lIF9MT0NBTF9FVkVOVChldixwYXJtKSB7IF9TRVFfTkVFREJVRig4KTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMF0gPSBFVl9TRVFfTE9DQUw7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDFdID0gKGV2KTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMl0gPSAwOyBfc2VxYnVmW19zZXFidWZwdHIgKyAzXSA9IDA7ICogKHVuc2lnbmVkIGludCAqKSAmIF9zZXFidWZbX3NlcWJ1ZnB0ciArIDRdID0gKHBhcm0pOyBfU0VRX0FEVkJVRig4KTsgfQogI2RlZmluZSBTRVFfUExBWUFVRElPKGRldm1hc2spIF9MT0NBTF9FVkVOVChMT0NMX1NUQVJUQVVESU8sIGRldm1hc2spCi0jZGVmaW5lIFNFUV9NSURJT1VUKGRldmljZSwgYnl0ZSkge19TRVFfTkVFREJVRig0KTsgIF9zZXFidWZbX3NlcWJ1ZnB0cl0gPSBTRVFfTUlESVBVVEM7ICBfc2VxYnVmW19zZXFidWZwdHIrMV0gPSAoYnl0ZSk7ICBfc2VxYnVmW19zZXFidWZwdHIrMl0gPSAoZGV2aWNlKTsgIF9zZXFidWZbX3NlcWJ1ZnB0ciszXSA9IDA7ICBfU0VRX0FEVkJVRig0KTt9CisjZGVmaW5lIFNFUV9NSURJT1VUKGRldmljZSxieXRlKSB7IF9TRVFfTkVFREJVRig0KTsgX3NlcWJ1Zltfc2VxYnVmcHRyXSA9IFNFUV9NSURJUFVUQzsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMV0gPSAoYnl0ZSk7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDJdID0gKGRldmljZSk7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDNdID0gMDsgX1NFUV9BRFZCVUYoNCk7IH0KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNFUV9XUlBBVENIKHBhdGNoeCwgbGVuKSAgIHtpZiAoX3NlcWJ1ZnB0cikgU0VRX0RVTVBCVUYoKTsgIGlmICh3cml0ZShzZXFmZCwgKGNoYXIqKShwYXRjaHgpLCBsZW4pPT0tMSkgICBwZXJyb3IoIldyaXRlIHBhdGNoOiAvZGV2L3NlcXVlbmNlciIpO30KLSNkZWZpbmUgU0VRX1dSUEFUQ0gyKHBhdGNoeCwgbGVuKSAgIChTRVFfRFVNUEJVRigpLCB3cml0ZShzZXFmZCwgKGNoYXIqKShwYXRjaHgpLCBsZW4pKQorI2RlZmluZSBTRVFfV1JQQVRDSChwYXRjaHgsbGVuKSB7IGlmKF9zZXFidWZwdHIpIFNFUV9EVU1QQlVGKCk7IGlmKHdyaXRlKHNlcWZkLCAoY2hhciAqKSAocGF0Y2h4KSwgbGVuKSA9PSAtIDEpIHBlcnJvcigiV3JpdGUgcGF0Y2g6IC9kZXYvc2VxdWVuY2VyIik7IH0KKyNkZWZpbmUgU0VRX1dSUEFUQ0gyKHBhdGNoeCxsZW4pIChTRVFfRFVNUEJVRigpLCB3cml0ZShzZXFmZCwgKGNoYXIgKikgKHBhdGNoeCksIGxlbikpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3BpL3NwaWRldi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zcGkvc3BpZGV2LmgKaW5kZXggMjQxZGM5NS4uYzEwYmY4ZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zcGkvc3BpZGV2LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zcGkvc3BpZGV2LmgKQEAgLTIyLDExICsyMiwxMSBAQAogI2RlZmluZSBTUElfQ1BIQSAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTUElfQ1BPTCAweDAyCi0jZGVmaW5lIFNQSV9NT0RFXzAgKDB8MCkKLSNkZWZpbmUgU1BJX01PREVfMSAoMHxTUElfQ1BIQSkKLSNkZWZpbmUgU1BJX01PREVfMiAoU1BJX0NQT0x8MCkKKyNkZWZpbmUgU1BJX01PREVfMCAoMCB8IDApCisjZGVmaW5lIFNQSV9NT0RFXzEgKDAgfCBTUElfQ1BIQSkKKyNkZWZpbmUgU1BJX01PREVfMiAoU1BJX0NQT0wgfCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU1BJX01PREVfMyAoU1BJX0NQT0x8U1BJX0NQSEEpCisjZGVmaW5lIFNQSV9NT0RFXzMgKFNQSV9DUE9MIHwgU1BJX0NQSEEpCiAjZGVmaW5lIFNQSV9DU19ISUdIIDB4MDQKICNkZWZpbmUgU1BJX0xTQl9GSVJTVCAweDA4CiAjZGVmaW5lIFNQSV8zV0lSRSAweDEwCkBAIC0zNCwzMSArMzQsNDEgQEAKICNkZWZpbmUgU1BJX0xPT1AgMHgyMAogI2RlZmluZSBTUElfTk9fQ1MgMHg0MAogI2RlZmluZSBTUElfUkVBRFkgMHg4MAorI2RlZmluZSBTUElfVFhfRFVBTCAweDEwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU1BJX1RYX1FVQUQgMHgyMDAKKyNkZWZpbmUgU1BJX1JYX0RVQUwgMHg0MDAKKyNkZWZpbmUgU1BJX1JYX1FVQUQgMHg4MDAKICNkZWZpbmUgU1BJX0lPQ19NQUdJQyAnaycKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc3BpX2lvY190cmFuc2ZlciB7Ci0gX191NjQgdHhfYnVmOwotIF9fdTY0IHJ4X2J1ZjsKLSBfX3UzMiBsZW47CisgIF9fdTY0IHR4X2J1ZjsKKyAgX191NjQgcnhfYnVmOworICBfX3UzMiBsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNwZWVkX2h6OwotIF9fdTE2IGRlbGF5X3VzZWNzOwotIF9fdTggYml0c19wZXJfd29yZDsKLSBfX3U4IGNzX2NoYW5nZTsKKyAgX191MzIgc3BlZWRfaHo7CisgIF9fdTE2IGRlbGF5X3VzZWNzOworICBfX3U4IGJpdHNfcGVyX3dvcmQ7CisgIF9fdTggY3NfY2hhbmdlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwYWQ7CisgIF9fdTggdHhfbmJpdHM7CisgIF9fdTggcnhfbmJpdHM7CisgIF9fdTE2IHBhZDsKIH07Ci0jZGVmaW5lIFNQSV9NU0dTSVpFKE4pICAgKCgoKE4pKihzaXplb2YgKHN0cnVjdCBzcGlfaW9jX3RyYW5zZmVyKSkpIDwgKDEgPDwgX0lPQ19TSVpFQklUUykpICAgPyAoKE4pKihzaXplb2YgKHN0cnVjdCBzcGlfaW9jX3RyYW5zZmVyKSkpIDogMCkKLSNkZWZpbmUgU1BJX0lPQ19NRVNTQUdFKE4pIF9JT1coU1BJX0lPQ19NQUdJQywgMCwgY2hhcltTUElfTVNHU0laRShOKV0pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTUElfTVNHU0laRShOKSAoKCgoTikgKiAoc2l6ZW9mKHN0cnVjdCBzcGlfaW9jX3RyYW5zZmVyKSkpIDwgKDEgPDwgX0lPQ19TSVpFQklUUykpID8gKChOKSAqIChzaXplb2Yoc3RydWN0IHNwaV9pb2NfdHJhbnNmZXIpKSkgOiAwKQorI2RlZmluZSBTUElfSU9DX01FU1NBR0UoTikgX0lPVyhTUElfSU9DX01BR0lDLCAwLCBjaGFyW1NQSV9NU0dTSVpFKE4pXSkKICNkZWZpbmUgU1BJX0lPQ19SRF9NT0RFIF9JT1IoU1BJX0lPQ19NQUdJQywgMSwgX191OCkKICNkZWZpbmUgU1BJX0lPQ19XUl9NT0RFIF9JT1coU1BJX0lPQ19NQUdJQywgMSwgX191OCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNQSV9JT0NfUkRfTFNCX0ZJUlNUIF9JT1IoU1BJX0lPQ19NQUdJQywgMiwgX191OCkKICNkZWZpbmUgU1BJX0lPQ19XUl9MU0JfRklSU1QgX0lPVyhTUElfSU9DX01BR0lDLCAyLCBfX3U4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU1BJX0lPQ19SRF9CSVRTX1BFUl9XT1JEIF9JT1IoU1BJX0lPQ19NQUdJQywgMywgX191OCkKICNkZWZpbmUgU1BJX0lPQ19XUl9CSVRTX1BFUl9XT1JEIF9JT1coU1BJX0lPQ19NQUdJQywgMywgX191OCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNQSV9JT0NfUkRfTUFYX1NQRUVEX0haIF9JT1IoU1BJX0lPQ19NQUdJQywgNCwgX191MzIpCiAjZGVmaW5lIFNQSV9JT0NfV1JfTUFYX1NQRUVEX0haIF9JT1coU1BJX0lPQ19NQUdJQywgNCwgX191MzIpCisjZGVmaW5lIFNQSV9JT0NfUkRfTU9ERTMyIF9JT1IoU1BJX0lPQ19NQUdJQywgNSwgX191MzIpCisjZGVmaW5lIFNQSV9JT0NfV1JfTU9ERTMyIF9JT1coU1BJX0lPQ19NQUdJQywgNSwgX191MzIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N1bnJwYy9kZWJ1Zy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zdW5ycGMvZGVidWcuaAppbmRleCAwYzI1NGMxLi4zZjA5ZjZkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N1bnJwYy9kZWJ1Zy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3VucnBjL2RlYnVnLmgKQEAgLTM2LDE1ICszNiwxNSBAQAogI2RlZmluZSBSUENEQkdfQUxMIDB4N2ZmZgogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIENUTF9SUENERUJVRyA9IDEsCi0gQ1RMX05GU0RFQlVHLAotIENUTF9ORlNEREVCVUcsCi0gQ1RMX05MTURFQlVHLAorICBDVExfUlBDREVCVUcgPSAxLAorICBDVExfTkZTREVCVUcsCisgIENUTF9ORlNEREVCVUcsCisgIENUTF9OTE1ERUJVRywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RMX1NMT1RUQUJMRV9VRFAsCi0gQ1RMX1NMT1RUQUJMRV9UQ1AsCi0gQ1RMX01JTl9SRVNWUE9SVCwKLSBDVExfTUFYX1JFU1ZQT1JULAorICBDVExfU0xPVFRBQkxFX1VEUCwKKyAgQ1RMX1NMT1RUQUJMRV9UQ1AsCisgIENUTF9NSU5fUkVTVlBPUlQsCisgIENUTF9NQVhfUkVTVlBPUlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zdXNwZW5kX2lvY3Rscy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zdXNwZW5kX2lvY3Rscy5oCmluZGV4IDQwYjE3ZTQuLjZlZjE5MmYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3VzcGVuZF9pb2N0bHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N1c3BlbmRfaW9jdGxzLmgKQEAgLTIxLDggKzIxLDggQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHJlc3VtZV9zd2FwX2FyZWEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF9sb2ZmX3Qgb2Zmc2V0OwotIF9fdTMyIGRldjsKKyAgX19rZXJuZWxfbG9mZl90IG9mZnNldDsKKyAgX191MzIgZGV2OwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgU05BUFNIT1RfSU9DX01BR0lDICczJwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTMzLDcgKzMzLDcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNOQVBTSE9UX0ZSRUVfU1dBUF9QQUdFUyBfSU8oU05BUFNIT1RfSU9DX01BR0lDLCA5KQogI2RlZmluZSBTTkFQU0hPVF9TMlJBTSBfSU8oU05BUFNIT1RfSU9DX01BR0lDLCAxMSkKLSNkZWZpbmUgU05BUFNIT1RfU0VUX1NXQVBfQVJFQSBfSU9XKFNOQVBTSE9UX0lPQ19NQUdJQywgMTMsICAgc3RydWN0IHJlc3VtZV9zd2FwX2FyZWEpCisjZGVmaW5lIFNOQVBTSE9UX1NFVF9TV0FQX0FSRUEgX0lPVyhTTkFQU0hPVF9JT0NfTUFHSUMsIDEzLCBzdHJ1Y3QgcmVzdW1lX3N3YXBfYXJlYSkKICNkZWZpbmUgU05BUFNIT1RfR0VUX0lNQUdFX1NJWkUgX0lPUihTTkFQU0hPVF9JT0NfTUFHSUMsIDE0LCBfX2tlcm5lbF9sb2ZmX3QpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkFQU0hPVF9QTEFURk9STV9TVVBQT1JUIF9JTyhTTkFQU0hPVF9JT0NfTUFHSUMsIDE1KQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zd19zeW5jLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N3X3N5bmMuaAppbmRleCA4YWI1MzFjLi5hYzUwMDAwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N3X3N5bmMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N3X3N5bmMuaApAQCAtMjEsMTMgKzIxLDEzIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCBzd19zeW5jX2NyZWF0ZV9mZW5jZV9kYXRhIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdmFsdWU7Ci0gY2hhciBuYW1lWzMyXTsKLSBfX3MzMiBmZW5jZTsKKyAgX191MzIgdmFsdWU7CisgIGNoYXIgbmFtZVszMl07CisgIF9fczMyIGZlbmNlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNXX1NZTkNfSU9DX01BR0lDICdXJwotI2RlZmluZSBTV19TWU5DX0lPQ19DUkVBVEVfRkVOQ0UgX0lPV1IoU1dfU1lOQ19JT0NfTUFHSUMsIDAsICBzdHJ1Y3Qgc3dfc3luY19jcmVhdGVfZmVuY2VfZGF0YSkKKyNkZWZpbmUgU1dfU1lOQ19JT0NfQ1JFQVRFX0ZFTkNFIF9JT1dSKFNXX1NZTkNfSU9DX01BR0lDLCAwLCBzdHJ1Y3Qgc3dfc3luY19jcmVhdGVfZmVuY2VfZGF0YSkKICNkZWZpbmUgU1dfU1lOQ19JT0NfSU5DIF9JT1coU1dfU1lOQ19JT0NfTUFHSUMsIDEsIF9fdTMyKQogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zd2FiLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N3YWIuaAppbmRleCA4YmU4NWE4Li5kN2Q2ZmE2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N3YWIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N3YWIuaApAQCAtMjIsMTQgKzIyLDE0IEBACiAjaW5jbHVkZSA8bGludXgvY29tcGlsZXIuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaW5jbHVkZSA8YXNtL3N3YWIuaD4KLSNkZWZpbmUgX19fY29uc3RhbnRfc3dhYjE2KHgpICgoX191MTYpKCAgICgoKF9fdTE2KSh4KSAmIChfX3UxNikweDAwZmZVKSA8PCA4KSB8ICAgKCgoX191MTYpKHgpICYgKF9fdTE2KTB4ZmYwMFUpID4+IDgpKSkKLSNkZWZpbmUgX19fY29uc3RhbnRfc3dhYjMyKHgpICgoX191MzIpKCAgICgoKF9fdTMyKSh4KSAmIChfX3UzMikweDAwMDAwMGZmVUwpIDw8IDI0KSB8ICAgKCgoX191MzIpKHgpICYgKF9fdTMyKTB4MDAwMGZmMDBVTCkgPDwgOCkgfCAgICgoKF9fdTMyKSh4KSAmIChfX3UzMikweDAwZmYwMDAwVUwpID4+IDgpIHwgICAoKChfX3UzMikoeCkgJiAoX191MzIpMHhmZjAwMDAwMFVMKSA+PiAyNCkpKQotI2RlZmluZSBfX19jb25zdGFudF9zd2FiNjQoeCkgKChfX3U2NCkoICAgKCgoX191NjQpKHgpICYgKF9fdTY0KTB4MDAwMDAwMDAwMDAwMDBmZlVMTCkgPDwgNTYpIHwgICAoKChfX3U2NCkoeCkgJiAoX191NjQpMHgwMDAwMDAwMDAwMDBmZjAwVUxMKSA8PCA0MCkgfCAgICgoKF9fdTY0KSh4KSAmIChfX3U2NCkweDAwMDAwMDAwMDBmZjAwMDBVTEwpIDw8IDI0KSB8ICAgKCgoX191NjQpKHgpICYgKF9fdTY0KTB4MDAwMDAwMDBmZjAwMDAwMFVMTCkgPDwgOCkgfCAgICgoKF9fdTY0KSh4KSAmIChfX3U2NCkweDAwMDAwMGZmMDAwMDAwMDBVTEwpID4+IDgpIHwgICAoKChfX3U2NCkoeCkgJiAoX191NjQpMHgwMDAwZmYwMDAwMDAwMDAwVUxMKSA+PiAyNCkgfCAgICgoKF9fdTY0KSh4KSAmIChfX3U2NCkweDAwZmYwMDAwMDAwMDAwMDBVTEwpID4+IDQwKSB8ICAgKCgoX191NjQpKHgpICYgKF9fdTY0KTB4ZmYwMDAwMDAwMDAwMDAwMFVMTCkgPj4gNTYpKSkKKyNkZWZpbmUgX19fY29uc3RhbnRfc3dhYjE2KHgpICgoX191MTYpICgoKChfX3UxNikgKHgpICYgKF9fdTE2KSAweDAwZmZVKSA8PCA4KSB8ICgoKF9fdTE2KSAoeCkgJiAoX191MTYpIDB4ZmYwMFUpID4+IDgpKSkKKyNkZWZpbmUgX19fY29uc3RhbnRfc3dhYjMyKHgpICgoX191MzIpICgoKChfX3UzMikgKHgpICYgKF9fdTMyKSAweDAwMDAwMGZmVUwpIDw8IDI0KSB8ICgoKF9fdTMyKSAoeCkgJiAoX191MzIpIDB4MDAwMGZmMDBVTCkgPDwgOCkgfCAoKChfX3UzMikgKHgpICYgKF9fdTMyKSAweDAwZmYwMDAwVUwpID4+IDgpIHwgKCgoX191MzIpICh4KSAmIChfX3UzMikgMHhmZjAwMDAwMFVMKSA+PiAyNCkpKQorI2RlZmluZSBfX19jb25zdGFudF9zd2FiNjQoeCkgKChfX3U2NCkgKCgoKF9fdTY0KSAoeCkgJiAoX191NjQpIDB4MDAwMDAwMDAwMDAwMDBmZlVMTCkgPDwgNTYpIHwgKCgoX191NjQpICh4KSAmIChfX3U2NCkgMHgwMDAwMDAwMDAwMDBmZjAwVUxMKSA8PCA0MCkgfCAoKChfX3U2NCkgKHgpICYgKF9fdTY0KSAweDAwMDAwMDAwMDBmZjAwMDBVTEwpIDw8IDI0KSB8ICgoKF9fdTY0KSAoeCkgJiAoX191NjQpIDB4MDAwMDAwMDBmZjAwMDAwMFVMTCkgPDwgOCkgfCAoKChfX3U2NCkgKHgpICYgKF9fdTY0KSAweDAwMDAwMGZmMDAwMDAwMDBVTEwpID4+IDgpIHwgKCgoX191NjQpICh4KSAmIChfX3U2NCkgMHgwMDAwZmYwMDAwMDAwMDAwVUxMKSA+PiAyNCkgfCAoKChfX3U2NCkgKHgpICYgKF9fdTY0KSAweDAwZmYwMDAwMDAwMDAwMDBVTEwpID4+IDQwKSB8ICgoKF9fdTY0KSAoeCkgJiAoX191NjQpIDB4ZmYwMDAwMDAwMDAwMDAwMFVMTCkgPj4gNTYpKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fX2NvbnN0YW50X3N3YWh3MzIoeCkgKChfX3UzMikoICAgKCgoX191MzIpKHgpICYgKF9fdTMyKTB4MDAwMGZmZmZVTCkgPDwgMTYpIHwgICAoKChfX3UzMikoeCkgJiAoX191MzIpMHhmZmZmMDAwMFVMKSA+PiAxNikpKQotI2RlZmluZSBfX19jb25zdGFudF9zd2FoYjMyKHgpICgoX191MzIpKCAgICgoKF9fdTMyKSh4KSAmIChfX3UzMikweDAwZmYwMGZmVUwpIDw8IDgpIHwgICAoKChfX3UzMikoeCkgJiAoX191MzIpMHhmZjAwZmYwMFVMKSA+PiA4KSkpCisjZGVmaW5lIF9fX2NvbnN0YW50X3N3YWh3MzIoeCkgKChfX3UzMikgKCgoKF9fdTMyKSAoeCkgJiAoX191MzIpIDB4MDAwMGZmZmZVTCkgPDwgMTYpIHwgKCgoX191MzIpICh4KSAmIChfX3UzMikgMHhmZmZmMDAwMFVMKSA+PiAxNikpKQorI2RlZmluZSBfX19jb25zdGFudF9zd2FoYjMyKHgpICgoX191MzIpICgoKChfX3UzMikgKHgpICYgKF9fdTMyKSAweDAwZmYwMGZmVUwpIDw8IDgpIHwgKCgoX191MzIpICh4KSAmIChfX3UzMikgMHhmZjAwZmYwMFVMKSA+PiA4KSkpCiAjaWZkZWYgX19IQVZFX0JVSUxUSU5fQlNXQVAxNl9fCi0jZWxpZiBkZWZpbmVkIChfX2FyY2hfc3dhYjE2KQorI2VsaWYgZGVmaW5lZChfX2FyY2hfc3dhYjE2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbHNlCiAjZW5kaWYKQEAgLTM5LDcgKzM5LDcgQEAKICNlbHNlCiAjZW5kaWYKICNpZmRlZiBfX0hBVkVfQlVJTFRJTl9CU1dBUDY0X18KLSNlbGlmIGRlZmluZWQgKF9fYXJjaF9zd2FiNjQpCisjZWxpZiBkZWZpbmVkKF9fYXJjaF9zd2FiNjQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VsaWYgZGVmaW5lZChfX1NXQUJfNjRfVEhSVV8zMl9fKQogI2Vsc2UKQEAgLTUyLDEyICs1MiwxMiBAQAogI2Vsc2UKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKLSNkZWZpbmUgX19zd2FiMTYoeCkgICAoX19idWlsdGluX2NvbnN0YW50X3AoKF9fdTE2KSh4KSkgPyAgIF9fX2NvbnN0YW50X3N3YWIxNih4KSA6ICAgX19mc3dhYjE2KHgpKQotI2RlZmluZSBfX3N3YWIzMih4KSAgIChfX2J1aWx0aW5fY29uc3RhbnRfcCgoX191MzIpKHgpKSA/ICAgX19fY29uc3RhbnRfc3dhYjMyKHgpIDogICBfX2Zzd2FiMzIoeCkpCi0jZGVmaW5lIF9fc3dhYjY0KHgpICAgKF9fYnVpbHRpbl9jb25zdGFudF9wKChfX3U2NCkoeCkpID8gICBfX19jb25zdGFudF9zd2FiNjQoeCkgOiAgIF9fZnN3YWI2NCh4KSkKKyNkZWZpbmUgX19zd2FiMTYoeCkgKF9fYnVpbHRpbl9jb25zdGFudF9wKChfX3UxNikgKHgpKSA/IF9fX2NvbnN0YW50X3N3YWIxNih4KSA6IF9fZnN3YWIxNih4KSkKKyNkZWZpbmUgX19zd2FiMzIoeCkgKF9fYnVpbHRpbl9jb25zdGFudF9wKChfX3UzMikgKHgpKSA/IF9fX2NvbnN0YW50X3N3YWIzMih4KSA6IF9fZnN3YWIzMih4KSkKKyNkZWZpbmUgX19zd2FiNjQoeCkgKF9fYnVpbHRpbl9jb25zdGFudF9wKChfX3U2NCkgKHgpKSA/IF9fX2NvbnN0YW50X3N3YWI2NCh4KSA6IF9fZnN3YWI2NCh4KSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIF9fc3dhaHczMih4KSAgIChfX2J1aWx0aW5fY29uc3RhbnRfcCgoX191MzIpKHgpKSA/ICAgX19fY29uc3RhbnRfc3dhaHczMih4KSA6ICAgX19mc3dhaHczMih4KSkKLSNkZWZpbmUgX19zd2FoYjMyKHgpICAgKF9fYnVpbHRpbl9jb25zdGFudF9wKChfX3UzMikoeCkpID8gICBfX19jb25zdGFudF9zd2FoYjMyKHgpIDogICBfX2Zzd2FoYjMyKHgpKQorI2RlZmluZSBfX3N3YWh3MzIoeCkgKF9fYnVpbHRpbl9jb25zdGFudF9wKChfX3UzMikgKHgpKSA/IF9fX2NvbnN0YW50X3N3YWh3MzIoeCkgOiBfX2Zzd2FodzMyKHgpKQorI2RlZmluZSBfX3N3YWhiMzIoeCkgKF9fYnVpbHRpbl9jb25zdGFudF9wKChfX3UzMikgKHgpKSA/IF9fX2NvbnN0YW50X3N3YWhiMzIoeCkgOiBfX2Zzd2FoYjMyKHgpKQogI2lmZGVmIF9fYXJjaF9zd2FiMTZwCiAjZWxzZQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3luYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zeW5jLmgKaW5kZXggZWY3NGZhZi4uYmJmNjY0MSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zeW5jLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zeW5jLmgKQEAgLTIyLDMyICsyMiwzMiBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHN5bmNfbWVyZ2VfZGF0YSB7Ci0gX19zMzIgZmQyOwotIGNoYXIgbmFtZVszMl07Ci0gX19zMzIgZmVuY2U7CisgIF9fczMyIGZkMjsKKyAgY2hhciBuYW1lWzMyXTsKKyAgX19zMzIgZmVuY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzeW5jX3B0X2luZm8gewotIF9fdTMyIGxlbjsKLSBjaGFyIG9ial9uYW1lWzMyXTsKKyAgX191MzIgbGVuOworICBjaGFyIG9ial9uYW1lWzMyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBkcml2ZXJfbmFtZVszMl07Ci0gX19zMzIgc3RhdHVzOwotIF9fdTY0IHRpbWVzdGFtcF9uczsKLSBfX3U4IGRyaXZlcl9kYXRhWzBdOworICBjaGFyIGRyaXZlcl9uYW1lWzMyXTsKKyAgX19zMzIgc3RhdHVzOworICBfX3U2NCB0aW1lc3RhbXBfbnM7CisgIF9fdTggZHJpdmVyX2RhdGFbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzeW5jX2ZlbmNlX2luZm9fZGF0YSB7Ci0gX191MzIgbGVuOwotIGNoYXIgbmFtZVszMl07CisgIF9fdTMyIGxlbjsKKyAgY2hhciBuYW1lWzMyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgc3RhdHVzOwotIF9fdTggcHRfaW5mb1swXTsKKyAgX19zMzIgc3RhdHVzOworICBfX3U4IHB0X2luZm9bMF07CiB9OwogI2RlZmluZSBTWU5DX0lPQ19NQUdJQyAnPicKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNZTkNfSU9DX1dBSVQgX0lPVyhTWU5DX0lPQ19NQUdJQywgMCwgX19zMzIpCiAjZGVmaW5lIFNZTkNfSU9DX01FUkdFIF9JT1dSKFNZTkNfSU9DX01BR0lDLCAxLCBzdHJ1Y3Qgc3luY19tZXJnZV9kYXRhKQotI2RlZmluZSBTWU5DX0lPQ19GRU5DRV9JTkZPIF9JT1dSKFNZTkNfSU9DX01BR0lDLCAyLCAgc3RydWN0IHN5bmNfZmVuY2VfaW5mb19kYXRhKQorI2RlZmluZSBTWU5DX0lPQ19GRU5DRV9JTkZPIF9JT1dSKFNZTkNfSU9DX01BR0lDLCAyLCBzdHJ1Y3Qgc3luY19mZW5jZV9pbmZvX2RhdGEpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N5bmNsaW5rLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N5bmNsaW5rLmgKaW5kZXggN2ZmODA1ZC4uYmE1MzcyZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zeW5jbGluay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3luY2xpbmsuaApAQCAtMTYyLDE0MCArMTYyLDEzOSBAQAogI2RlZmluZSBNR1NMX0lOVEVSRkFDRV9STCAweDQwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNR1NMX0lOVEVSRkFDRV9NU0JfRklSU1QgMHg4MAotdHlwZWRlZiBzdHJ1Y3QgX01HU0xfUEFSQU1TCi17Ci0gdW5zaWduZWQgbG9uZyBtb2RlOwordHlwZWRlZiBzdHJ1Y3QgX01HU0xfUEFSQU1TIHsKKyAgdW5zaWduZWQgbG9uZyBtb2RlOworICB1bnNpZ25lZCBjaGFyIGxvb3BiYWNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGxvb3BiYWNrOwotIHVuc2lnbmVkIHNob3J0IGZsYWdzOwotIHVuc2lnbmVkIGNoYXIgZW5jb2Rpbmc7Ci0gdW5zaWduZWQgbG9uZyBjbG9ja19zcGVlZDsKKyAgdW5zaWduZWQgc2hvcnQgZmxhZ3M7CisgIHVuc2lnbmVkIGNoYXIgZW5jb2Rpbmc7CisgIHVuc2lnbmVkIGxvbmcgY2xvY2tfc3BlZWQ7CisgIHVuc2lnbmVkIGNoYXIgYWRkcl9maWx0ZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgYWRkcl9maWx0ZXI7Ci0gdW5zaWduZWQgc2hvcnQgY3JjX3R5cGU7Ci0gdW5zaWduZWQgY2hhciBwcmVhbWJsZV9sZW5ndGg7Ci0gdW5zaWduZWQgY2hhciBwcmVhbWJsZTsKKyAgdW5zaWduZWQgc2hvcnQgY3JjX3R5cGU7CisgIHVuc2lnbmVkIGNoYXIgcHJlYW1ibGVfbGVuZ3RoOworICB1bnNpZ25lZCBjaGFyIHByZWFtYmxlOworICB1bnNpZ25lZCBsb25nIGRhdGFfcmF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgbG9uZyBkYXRhX3JhdGU7Ci0gdW5zaWduZWQgY2hhciBkYXRhX2JpdHM7Ci0gdW5zaWduZWQgY2hhciBzdG9wX2JpdHM7Ci0gdW5zaWduZWQgY2hhciBwYXJpdHk7CisgIHVuc2lnbmVkIGNoYXIgZGF0YV9iaXRzOworICB1bnNpZ25lZCBjaGFyIHN0b3BfYml0czsKKyAgdW5zaWduZWQgY2hhciBwYXJpdHk7Cit9IE1HU0xfUEFSQU1TLCAqIFBNR1NMX1BBUkFNUzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19IE1HU0xfUEFSQU1TLCAqUE1HU0xfUEFSQU1TOwogI2RlZmluZSBNSUNST0dBVEVfVkVORE9SX0lEIDB4MTNjMAogI2RlZmluZSBTWU5DTElOS19ERVZJQ0VfSUQgMHgwMDEwCiAjZGVmaW5lIE1HU0NDX0RFVklDRV9JRCAweDAwMjAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNZTkNMSU5LX1NDQV9ERVZJQ0VfSUQgMHgwMDMwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTWU5DTElOS19HVF9ERVZJQ0VfSUQgMHgwMDcwCiAjZGVmaW5lIFNZTkNMSU5LX0dUNF9ERVZJQ0VfSUQgMHgwMDgwCiAjZGVmaW5lIFNZTkNMSU5LX0FDX0RFVklDRV9JRCAweDAwOTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNZTkNMSU5LX0dUMl9ERVZJQ0VfSUQgMHgwMEEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNR1NMX01BWF9TRVJJQUxfTlVNQkVSIDMwCiAjZGVmaW5lIERpYWdTdGF0dXNfT0sgMAogI2RlZmluZSBEaWFnU3RhdHVzX0FkZHJlc3NGYWlsdXJlIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERpYWdTdGF0dXNfQWRkcmVzc0NvbmZsaWN0IDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIERpYWdTdGF0dXNfSXJxRmFpbHVyZSAzCiAjZGVmaW5lIERpYWdTdGF0dXNfSXJxQ29uZmxpY3QgNAogI2RlZmluZSBEaWFnU3RhdHVzX0RtYUZhaWx1cmUgNQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRGlhZ1N0YXR1c19EbWFDb25mbGljdCA2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEaWFnU3RhdHVzX1BjaUFkYXB0ZXJOb3RGb3VuZCA3CiAjZGVmaW5lIERpYWdTdGF0dXNfQ2FudEFzc2lnblBjaVJlc291cmNlcyA4CiAjZGVmaW5lIERpYWdTdGF0dXNfQ2FudEFzc2lnblBjaU1lbUFkZHIgOQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRGlhZ1N0YXR1c19DYW50QXNzaWduUGNpSW9BZGRyIDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBEaWFnU3RhdHVzX0NhbnRBc3NpZ25QY2lJcnEgMTEKICNkZWZpbmUgRGlhZ1N0YXR1c19NZW1vcnlFcnJvciAxMgogI2RlZmluZSBTZXJpYWxTaWduYWxfRENEIDB4MDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNlcmlhbFNpZ25hbF9UWEQgMHgwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU2VyaWFsU2lnbmFsX1JJIDB4MDQKICNkZWZpbmUgU2VyaWFsU2lnbmFsX1JYRCAweDA4CiAjZGVmaW5lIFNlcmlhbFNpZ25hbF9DVFMgMHgxMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU2VyaWFsU2lnbmFsX1JUUyAweDIwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTZXJpYWxTaWduYWxfRFNSIDB4NDAKICNkZWZpbmUgU2VyaWFsU2lnbmFsX0RUUiAweDgwCiBzdHJ1Y3QgbWdzbF9pY291bnQgeworICBfX3UzMiBjdHMsIGRzciwgcm5nLCBkY2QsIHR4LCByeDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY3RzLCBkc3IsIHJuZywgZGNkLCB0eCwgcng7Ci0gX191MzIgZnJhbWUsIHBhcml0eSwgb3ZlcnJ1biwgYnJrOwotIF9fdTMyIGJ1Zl9vdmVycnVuOwotIF9fdTMyIHR4b2s7CisgIF9fdTMyIGZyYW1lLCBwYXJpdHksIG92ZXJydW4sIGJyazsKKyAgX191MzIgYnVmX292ZXJydW47CisgIF9fdTMyIHR4b2s7CisgIF9fdTMyIHR4dW5kZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR4dW5kZXI7Ci0gX191MzIgdHhhYm9ydDsKLSBfX3UzMiB0eHRpbWVvdXQ7Ci0gX191MzIgcnhzaG9ydDsKKyAgX191MzIgdHhhYm9ydDsKKyAgX191MzIgdHh0aW1lb3V0OworICBfX3UzMiByeHNob3J0OworICBfX3UzMiByeGxvbmc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJ4bG9uZzsKLSBfX3UzMiByeGFib3J0OwotIF9fdTMyIHJ4b3ZlcjsKLSBfX3UzMiByeGNyYzsKKyAgX191MzIgcnhhYm9ydDsKKyAgX191MzIgcnhvdmVyOworICBfX3UzMiByeGNyYzsKKyAgX191MzIgcnhvazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcnhvazsKLSBfX3UzMiBleGl0aHVudDsKLSBfX3UzMiByeGlkbGU7CisgIF9fdTMyIGV4aXRodW50OworICBfX3UzMiByeGlkbGU7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBncGlvX2Rlc2MgewotIF9fdTMyIHN0YXRlOwotIF9fdTMyIHNtYXNrOwotIF9fdTMyIGRpcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZG1hc2s7CisgIF9fdTMyIHN0YXRlOworICBfX3UzMiBzbWFzazsKKyAgX191MzIgZGlyOworICBfX3UzMiBkbWFzazsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBERUJVR19MRVZFTF9EQVRBIDEKICNkZWZpbmUgREVCVUdfTEVWRUxfRVJST1IgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgREVCVUdfTEVWRUxfSU5GTyAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBERUJVR19MRVZFTF9CSCA0CiAjZGVmaW5lIERFQlVHX0xFVkVMX0lTUiA1CiAjZGVmaW5lIE1nc2xFdmVudF9Ec3JBY3RpdmUgMHgwMDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNZ3NsRXZlbnRfRHNySW5hY3RpdmUgMHgwMDAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNZ3NsRXZlbnRfRHNyIDB4MDAwMwogI2RlZmluZSBNZ3NsRXZlbnRfQ3RzQWN0aXZlIDB4MDAwNAogI2RlZmluZSBNZ3NsRXZlbnRfQ3RzSW5hY3RpdmUgMHgwMDA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNZ3NsRXZlbnRfQ3RzIDB4MDAwYworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTWdzbEV2ZW50X0RjZEFjdGl2ZSAweDAwMTAKICNkZWZpbmUgTWdzbEV2ZW50X0RjZEluYWN0aXZlIDB4MDAyMAogI2RlZmluZSBNZ3NsRXZlbnRfRGNkIDB4MDAzMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTWdzbEV2ZW50X1JpQWN0aXZlIDB4MDA0MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTWdzbEV2ZW50X1JpSW5hY3RpdmUgMHgwMDgwCiAjZGVmaW5lIE1nc2xFdmVudF9SaSAweDAwYzAKICNkZWZpbmUgTWdzbEV2ZW50X0V4aXRIdW50TW9kZSAweDAxMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1nc2xFdmVudF9JZGxlUmVjZWl2ZWQgMHgwMjAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNR1NMX01BR0lDX0lPQyAnbScKLSNkZWZpbmUgTUdTTF9JT0NTUEFSQU1TIF9JT1coTUdTTF9NQUdJQ19JT0MsMCxzdHJ1Y3QgX01HU0xfUEFSQU1TKQotI2RlZmluZSBNR1NMX0lPQ0dQQVJBTVMgX0lPUihNR1NMX01BR0lDX0lPQywxLHN0cnVjdCBfTUdTTF9QQVJBTVMpCisjZGVmaW5lIE1HU0xfSU9DU1BBUkFNUyBfSU9XKE1HU0xfTUFHSUNfSU9DLCAwLCBzdHJ1Y3QgX01HU0xfUEFSQU1TKQorI2RlZmluZSBNR1NMX0lPQ0dQQVJBTVMgX0lPUihNR1NMX01BR0lDX0lPQywgMSwgc3RydWN0IF9NR1NMX1BBUkFNUykKKyNkZWZpbmUgTUdTTF9JT0NTVFhJRExFIF9JTyhNR1NMX01BR0lDX0lPQywgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE1HU0xfSU9DU1RYSURMRSBfSU8oTUdTTF9NQUdJQ19JT0MsMikKLSNkZWZpbmUgTUdTTF9JT0NHVFhJRExFIF9JTyhNR1NMX01BR0lDX0lPQywzKQotI2RlZmluZSBNR1NMX0lPQ1RYRU5BQkxFIF9JTyhNR1NMX01BR0lDX0lPQyw0KQotI2RlZmluZSBNR1NMX0lPQ1JYRU5BQkxFIF9JTyhNR1NMX01BR0lDX0lPQyw1KQorI2RlZmluZSBNR1NMX0lPQ0dUWElETEUgX0lPKE1HU0xfTUFHSUNfSU9DLCAzKQorI2RlZmluZSBNR1NMX0lPQ1RYRU5BQkxFIF9JTyhNR1NMX01BR0lDX0lPQywgNCkKKyNkZWZpbmUgTUdTTF9JT0NSWEVOQUJMRSBfSU8oTUdTTF9NQUdJQ19JT0MsIDUpCisjZGVmaW5lIE1HU0xfSU9DVFhBQk9SVCBfSU8oTUdTTF9NQUdJQ19JT0MsIDYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNR1NMX0lPQ1RYQUJPUlQgX0lPKE1HU0xfTUFHSUNfSU9DLDYpCi0jZGVmaW5lIE1HU0xfSU9DR1NUQVRTIF9JTyhNR1NMX01BR0lDX0lPQyw3KQotI2RlZmluZSBNR1NMX0lPQ1dBSVRFVkVOVCBfSU9XUihNR1NMX01BR0lDX0lPQyw4LGludCkKLSNkZWZpbmUgTUdTTF9JT0NDTFJNT0RDT1VOVCBfSU8oTUdTTF9NQUdJQ19JT0MsMTUpCisjZGVmaW5lIE1HU0xfSU9DR1NUQVRTIF9JTyhNR1NMX01BR0lDX0lPQywgNykKKyNkZWZpbmUgTUdTTF9JT0NXQUlURVZFTlQgX0lPV1IoTUdTTF9NQUdJQ19JT0MsIDgsIGludCkKKyNkZWZpbmUgTUdTTF9JT0NDTFJNT0RDT1VOVCBfSU8oTUdTTF9NQUdJQ19JT0MsIDE1KQorI2RlZmluZSBNR1NMX0lPQ0xPT1BUWERPTkUgX0lPKE1HU0xfTUFHSUNfSU9DLCA5KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTUdTTF9JT0NMT09QVFhET05FIF9JTyhNR1NMX01BR0lDX0lPQyw5KQotI2RlZmluZSBNR1NMX0lPQ1NJRiBfSU8oTUdTTF9NQUdJQ19JT0MsMTApCi0jZGVmaW5lIE1HU0xfSU9DR0lGIF9JTyhNR1NMX01BR0lDX0lPQywxMSkKLSNkZWZpbmUgTUdTTF9JT0NTR1BJTyBfSU9XKE1HU0xfTUFHSUNfSU9DLDE2LHN0cnVjdCBncGlvX2Rlc2MpCisjZGVmaW5lIE1HU0xfSU9DU0lGIF9JTyhNR1NMX01BR0lDX0lPQywgMTApCisjZGVmaW5lIE1HU0xfSU9DR0lGIF9JTyhNR1NMX01BR0lDX0lPQywgMTEpCisjZGVmaW5lIE1HU0xfSU9DU0dQSU8gX0lPVyhNR1NMX01BR0lDX0lPQywgMTYsIHN0cnVjdCBncGlvX2Rlc2MpCisjZGVmaW5lIE1HU0xfSU9DR0dQSU8gX0lPUihNR1NMX01BR0lDX0lPQywgMTcsIHN0cnVjdCBncGlvX2Rlc2MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBNR1NMX0lPQ0dHUElPIF9JT1IoTUdTTF9NQUdJQ19JT0MsMTcsc3RydWN0IGdwaW9fZGVzYykKLSNkZWZpbmUgTUdTTF9JT0NXQUlUR1BJTyBfSU9XUihNR1NMX01BR0lDX0lPQywxOCxzdHJ1Y3QgZ3Bpb19kZXNjKQorI2RlZmluZSBNR1NMX0lPQ1dBSVRHUElPIF9JT1dSKE1HU0xfTUFHSUNfSU9DLCAxOCwgc3RydWN0IGdwaW9fZGVzYykKICNkZWZpbmUgTUdTTF9JT0NTWFNZTkMgX0lPKE1HU0xfTUFHSUNfSU9DLCAxOSkKICNkZWZpbmUgTUdTTF9JT0NHWFNZTkMgX0lPKE1HU0xfTUFHSUNfSU9DLCAyMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1HU0xfSU9DU1hDVFJMIF9JTyhNR1NMX01BR0lDX0lPQywgMjEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNR1NMX0lPQ0dYQ1RSTCBfSU8oTUdTTF9NQUdJQ19JT0MsIDIyKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N5c2N0bC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zeXNjdGwuaAppbmRleCA4OGNiMDFjLi4yY2FjNWYzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N5c2N0bC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvc3lzY3RsLmgKQEAgLTI2LDk1OCArMjYsOTM1IEBACiAjZGVmaW5lIENUTF9NQVhOQU1FIDEwCiBzdHJ1Y3QgX19zeXNjdGxfYXJncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBfX3VzZXIgKm5hbWU7Ci0gaW50IG5sZW47Ci0gdm9pZCBfX3VzZXIgKm9sZHZhbDsKLSBzaXplX3QgX191c2VyICpvbGRsZW5wOworICBpbnQgX191c2VyICogbmFtZTsKKyAgaW50IG5sZW47CisgIHZvaWQgX191c2VyICogb2xkdmFsOworICBzaXplX3QgX191c2VyICogb2xkbGVucDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCBfX3VzZXIgKm5ld3ZhbDsKLSBzaXplX3QgbmV3bGVuOwotIHVuc2lnbmVkIGxvbmcgX19saW51eF91bnVzZWRbNF07Ci19OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLWVudW0KLXsKLSBDVExfS0VSTj0xLAotIENUTF9WTT0yLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBDVExfTkVUPTMsCi0gQ1RMX1BST0M9NCwKLSBDVExfRlM9NSwKLSBDVExfREVCVUc9NiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RMX0RFVj03LAotIENUTF9CVVM9OCwKLSBDVExfQUJJPTksCi0gQ1RMX0NQVT0xMCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RMX0FSTEFOPTI1NCwKLSBDVExfUzM5MERCRj01Njc3LAotIENUTF9TVU5SUEM9NzI0OSwKLSBDVExfUE09OTg5OSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RMX0ZSVj05ODk4LAotfTsKLWVudW0KLXsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQ1RMX0JVU19JU0E9MQotfTsKLWVudW0KLXsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSU5PVElGWV9NQVhfVVNFUl9JTlNUQU5DRVM9MSwKLSBJTk9USUZZX01BWF9VU0VSX1dBVENIRVM9MiwKLSBJTk9USUZZX01BWF9RVUVVRURfRVZFTlRTPTMKLX07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotZW51bQotewotIEtFUk5fT1NUWVBFPTEsCi0gS0VSTl9PU1JFTEVBU0U9MiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gS0VSTl9PU1JFVj0zLAotIEtFUk5fVkVSU0lPTj00LAotIEtFUk5fU0VDVVJFTUFTSz01LAotIEtFUk5fUFJPRj02LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBLRVJOX05PREVOQU1FPTcsCi0gS0VSTl9ET01BSU5OQU1FPTgsCi0gS0VSTl9QQU5JQz0xNSwKLSBLRVJOX1JFQUxST09UREVWPTE2LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBLRVJOX1NQQVJDX1JFQk9PVD0yMSwKLSBLRVJOX0NUTEFMVERFTD0yMiwKLSBLRVJOX1BSSU5USz0yMywKLSBLRVJOX05BTUVUUkFOUz0yNCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gS0VSTl9QUENfSFRBQlJFQ0xBSU09MjUsCi0gS0VSTl9QUENfWkVST1BBR0VEPTI2LAotIEtFUk5fUFBDX1BPV0VSU0FWRV9OQVA9MjcsCi0gS0VSTl9NT0RQUk9CRT0yOCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gS0VSTl9TR19CSUdfQlVGRj0yOSwKLSBLRVJOX0FDQ1Q9MzAsCi0gS0VSTl9QUENfTDJDUj0zMSwKLSBLRVJOX1JUU0lHTlI9MzIsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEtFUk5fUlRTSUdNQVg9MzMsCi0gS0VSTl9TSE1NQVg9MzQsCi0gS0VSTl9NU0dNQVg9MzUsCi0gS0VSTl9NU0dNTkI9MzYsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEtFUk5fTVNHUE9PTD0zNywKLSBLRVJOX1NZU1JRPTM4LAotIEtFUk5fTUFYX1RIUkVBRFM9MzksCi0gS0VSTl9SQU5ET009NDAsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEtFUk5fU0hNQUxMPTQxLAotIEtFUk5fTVNHTU5JPTQyLAotIEtFUk5fU0VNPTQzLAotIEtFUk5fU1BBUkNfU1RPUF9BPTQ0LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBLRVJOX1NITU1OST00NSwKLSBLRVJOX09WRVJGTE9XVUlEPTQ2LAotIEtFUk5fT1ZFUkZMT1dHSUQ9NDcsCi0gS0VSTl9TSE1QQVRIPTQ4LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBLRVJOX0hPVFBMVUc9NDksCi0gS0VSTl9JRUVFX0VNVUxBVElPTl9XQVJOSU5HUz01MCwKLSBLRVJOX1MzOTBfVVNFUl9ERUJVR19MT0dHSU5HPTUxLAotIEtFUk5fQ09SRV9VU0VTX1BJRD01MiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gS0VSTl9UQUlOVEVEPTUzLAotIEtFUk5fQ0FEUElEPTU0LAotIEtFUk5fUElETUFYPTU1LAotIEtFUk5fQ09SRV9QQVRURVJOPTU2LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBLRVJOX1BBTklDX09OX09PUFM9NTcsCi0gS0VSTl9IUFBBX1BXUlNXPTU4LAotIEtFUk5fSFBQQV9VTkFMSUdORUQ9NTksCi0gS0VSTl9QUklOVEtfUkFURUxJTUlUPTYwLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBLRVJOX1BSSU5US19SQVRFTElNSVRfQlVSU1Q9NjEsCi0gS0VSTl9QVFk9NjIsCi0gS0VSTl9OR1JPVVBTX01BWD02MywKLSBLRVJOX1NQQVJDX1NDT05TX1BXUk9GRj02NCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gS0VSTl9IWl9USU1FUj02NSwKLSBLRVJOX1VOS05PV05fTk1JX1BBTklDPTY2LAotIEtFUk5fQk9PVExPQURFUl9UWVBFPTY3LAotIEtFUk5fUkFORE9NSVpFPTY4LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBLRVJOX1NFVFVJRF9EVU1QQUJMRT02OSwKLSBLRVJOX1NQSU5fUkVUUlk9NzAsCi0gS0VSTl9BQ1BJX1ZJREVPX0ZMQUdTPTcxLAotIEtFUk5fSUE2NF9VTkFMSUdORUQ9NzIsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEtFUk5fQ09NUEFUX0xPRz03MywKLSBLRVJOX01BWF9MT0NLX0RFUFRIPTc0LAotIEtFUk5fTk1JX1dBVENIRE9HPTc1LAotIEtFUk5fUEFOSUNfT05fTk1JPTc2LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX07Ci1lbnVtCi17Ci0gVk1fVU5VU0VEMT0xLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWTV9VTlVTRUQyPTIsCi0gVk1fVU5VU0VEMz0zLAotIFZNX1VOVVNFRDQ9NCwKLSBWTV9PVkVSQ09NTUlUX01FTU9SWT01LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWTV9VTlVTRUQ1PTYsCi0gVk1fVU5VU0VENz03LAotIFZNX1VOVVNFRDg9OCwKLSBWTV9VTlVTRUQ5PTksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZNX1BBR0VfQ0xVU1RFUj0xMCwKLSBWTV9ESVJUWV9CQUNLR1JPVU5EPTExLAotIFZNX0RJUlRZX1JBVElPPTEyLAotIFZNX0RJUlRZX1dCX0NTPTEzLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWTV9ESVJUWV9FWFBJUkVfQ1M9MTQsCi0gVk1fTlJfUERGTFVTSF9USFJFQURTPTE1LAotIFZNX09WRVJDT01NSVRfUkFUSU89MTYsCi0gVk1fUEFHRUJVRj0xNywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVk1fSFVHRVRMQl9QQUdFUz0xOCwKLSBWTV9TV0FQUElORVNTPTE5LAotIFZNX0xPV01FTV9SRVNFUlZFX1JBVElPPTIwLAotIFZNX01JTl9GUkVFX0tCWVRFUz0yMSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVk1fTUFYX01BUF9DT1VOVD0yMiwKLSBWTV9MQVBUT1BfTU9ERT0yMywKLSBWTV9CTE9DS19EVU1QPTI0LAotIFZNX0hVR0VUTEJfR1JPVVA9MjUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZNX1ZGU19DQUNIRV9QUkVTU1VSRT0yNiwKLSBWTV9MRUdBQ1lfVkFfTEFZT1VUPTI3LAotIFZNX1NXQVBfVE9LRU5fVElNRU9VVD0yOCwKLSBWTV9EUk9QX1BBR0VDQUNIRT0yOSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVk1fUEVSQ1BVX1BBR0VMSVNUX0ZSQUNUSU9OPTMwLAotIFZNX1pPTkVfUkVDTEFJTV9NT0RFPTMxLAotIFZNX01JTl9VTk1BUFBFRD0zMiwKLSBWTV9QQU5JQ19PTl9PT009MzMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFZNX1ZEU09fRU5BQkxFRD0zNCwKLSBWTV9NSU5fU0xBQj0zNSwKLX07Ci1lbnVtCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIE5FVF9DT1JFPTEsCi0gTkVUX0VUSEVSPTIsCi0gTkVUXzgwMj0zLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfVU5JWD00LAotIE5FVF9JUFY0PTUsCi0gTkVUX0lQWD02LAotIE5FVF9BVEFMSz03LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTkVUUk9NPTgsCi0gTkVUX0FYMjU9OSwKLSBORVRfQlJJREdFPTEwLAotIE5FVF9ST1NFPTExLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNj0xMiwKLSBORVRfWDI1PTEzLAotIE5FVF9UUj0xNCwKLSBORVRfREVDTkVUPTE1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfRUNPTkVUPTE2LAotIE5FVF9TQ1RQPTE3LAotIE5FVF9MTEM9MTgsCi0gTkVUX05FVEZJTFRFUj0xOSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0RDQ1A9MjAsCi0gTkVUX0lSREE9NDEyLAotfTsKLWVudW0KLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gUkFORE9NX1BPT0xTSVpFPTEsCi0gUkFORE9NX0VOVFJPUFlfQ09VTlQ9MiwKLSBSQU5ET01fUkVBRF9USFJFU0g9MywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUkFORE9NX1dSSVRFX1RIUkVTSD00LAotIFJBTkRPTV9CT09UX0lEPTUsCi0gUkFORE9NX1VVSUQ9NgotfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1lbnVtCi17Ci0gUFRZX01BWD0xLAotIFBUWV9OUj0yCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKLWVudW0KLXsKLSBCVVNfSVNBX01FTV9CQVNFPTEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEJVU19JU0FfUE9SVF9CQVNFPTIsCi0gQlVTX0lTQV9QT1JUX1NISUZUPTMKLX07Ci1lbnVtCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIE5FVF9DT1JFX1dNRU1fTUFYPTEsCi0gTkVUX0NPUkVfUk1FTV9NQVg9MiwKLSBORVRfQ09SRV9XTUVNX0RFRkFVTFQ9MywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0NPUkVfUk1FTV9ERUZBVUxUPTQsCi0gTkVUX0NPUkVfTUFYX0JBQ0tMT0c9NiwKLSBORVRfQ09SRV9GQVNUUk9VVEU9NywKLSBORVRfQ09SRV9NU0dfQ09TVD04LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfQ09SRV9NU0dfQlVSU1Q9OSwKLSBORVRfQ09SRV9PUFRNRU1fTUFYPTEwLAotIE5FVF9DT1JFX0hPVF9MSVNUX0xFTkdUSD0xMSwKLSBORVRfQ09SRV9ESVZFUlRfVkVSU0lPTj0xMiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0NPUkVfTk9fQ09OR19USFJFU0g9MTMsCi0gTkVUX0NPUkVfTk9fQ09ORz0xNCwKLSBORVRfQ09SRV9MT19DT05HPTE1LAotIE5FVF9DT1JFX01PRF9DT05HPTE2LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfQ09SRV9ERVZfV0VJR0hUPTE3LAotIE5FVF9DT1JFX1NPTUFYQ09OTj0xOCwKLSBORVRfQ09SRV9CVURHRVQ9MTksCi0gTkVUX0NPUkVfQUVWRU5UX0VUSU1FPTIwLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfQ09SRV9BRVZFTlRfUlNFUVRIPTIxLAotIE5FVF9DT1JFX1dBUk5JTkdTPTIyLAotfTsKLWVudW0KLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gTkVUX1VOSVhfREVTVFJPWV9ERUxBWT0xLAotIE5FVF9VTklYX0RFTEVURV9ERUxBWT0yLAotIE5FVF9VTklYX01BWF9ER1JBTV9RTEVOPTMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKLWVudW0KLXsKLSBORVRfTkZfQ09OTlRSQUNLX01BWD0xLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX1NZTl9TRU5UPTIsCi0gTkVUX05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9TWU5fUkVDVj0zLAotIE5FVF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfRVNUQUJMSVNIRUQ9NCwKLSBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0ZJTl9XQUlUPTUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfQ0xPU0VfV0FJVD02LAotIE5FVF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfTEFTVF9BQ0s9NywKLSBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX1RJTUVfV0FJVD04LAotIE5FVF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfQ0xPU0U9OSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX05GX0NPTk5UUkFDS19VRFBfVElNRU9VVD0xMCwKLSBORVRfTkZfQ09OTlRSQUNLX1VEUF9USU1FT1VUX1NUUkVBTT0xMSwKLSBORVRfTkZfQ09OTlRSQUNLX0lDTVBfVElNRU9VVD0xMiwKLSBORVRfTkZfQ09OTlRSQUNLX0dFTkVSSUNfVElNRU9VVD0xMywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX05GX0NPTk5UUkFDS19CVUNLRVRTPTE0LAotIE5FVF9ORl9DT05OVFJBQ0tfTE9HX0lOVkFMSUQ9MTUsCi0gTkVUX05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9NQVhfUkVUUkFOUz0xNiwKLSBORVRfTkZfQ09OTlRSQUNLX1RDUF9MT09TRT0xNywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX05GX0NPTk5UUkFDS19UQ1BfQkVfTElCRVJBTD0xOCwKLSBORVRfTkZfQ09OTlRSQUNLX1RDUF9NQVhfUkVUUkFOUz0xOSwKLSBORVRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9DTE9TRUQ9MjAsCi0gTkVUX05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfQ09PS0lFX1dBSVQ9MjEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX0NPT0tJRV9FQ0hPRUQ9MjIsCi0gTkVUX05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfRVNUQUJMSVNIRUQ9MjMsCi0gTkVUX05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfU0hVVERPV05fU0VOVD0yNCwKLSBORVRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9TSFVURE9XTl9SRUNEPTI1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9TSFVURE9XTl9BQ0tfU0VOVD0yNiwKLSBORVRfTkZfQ09OTlRSQUNLX0NPVU5UPTI3LAotIE5FVF9ORl9DT05OVFJBQ0tfSUNNUFY2X1RJTUVPVVQ9MjgsCi0gTkVUX05GX0NPTk5UUkFDS19GUkFHNl9USU1FT1VUPTI5LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTkZfQ09OTlRSQUNLX0ZSQUc2X0xPV19USFJFU0g9MzAsCi0gTkVUX05GX0NPTk5UUkFDS19GUkFHNl9ISUdIX1RIUkVTSD0zMSwKLSBORVRfTkZfQ09OTlRSQUNLX0NIRUNLU1VNPTMyLAotfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1lbnVtCi17Ci0gTkVUX0lQVjRfRk9SV0FSRD04LAotIE5FVF9JUFY0X0RZTkFERFI9OSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfQ09ORj0xNiwKLSBORVRfSVBWNF9ORUlHSD0xNywKLSBORVRfSVBWNF9ST1VURT0xOCwKLSBORVRfSVBWNF9GSUJfSEFTSD0xOSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfTkVURklMVEVSPTIwLAotIE5FVF9JUFY0X1RDUF9USU1FU1RBTVBTPTMzLAotIE5FVF9JUFY0X1RDUF9XSU5ET1dfU0NBTElORz0zNCwKLSBORVRfSVBWNF9UQ1BfU0FDSz0zNSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfVENQX1JFVFJBTlNfQ09MTEFQU0U9MzYsCi0gTkVUX0lQVjRfREVGQVVMVF9UVEw9MzcsCi0gTkVUX0lQVjRfQVVUT0NPTkZJRz0zOCwKLSBORVRfSVBWNF9OT19QTVRVX0RJU0M9MzksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X1RDUF9TWU5fUkVUUklFUz00MCwKLSBORVRfSVBWNF9JUEZSQUdfSElHSF9USFJFU0g9NDEsCi0gTkVUX0lQVjRfSVBGUkFHX0xPV19USFJFU0g9NDIsCi0gTkVUX0lQVjRfSVBGUkFHX1RJTUU9NDMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X1RDUF9NQVhfS0FfUFJPQkVTPTQ0LAotIE5FVF9JUFY0X1RDUF9LRUVQQUxJVkVfVElNRT00NSwKLSBORVRfSVBWNF9UQ1BfS0VFUEFMSVZFX1BST0JFUz00NiwKLSBORVRfSVBWNF9UQ1BfUkVUUklFUzE9NDcsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X1RDUF9SRVRSSUVTMj00OCwKLSBORVRfSVBWNF9UQ1BfRklOX1RJTUVPVVQ9NDksCi0gTkVUX0lQVjRfSVBfTUFTUV9ERUJVRz01MCwKLSBORVRfVENQX1NZTkNPT0tJRVM9NTEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9UQ1BfU1REVVJHPTUyLAotIE5FVF9UQ1BfUkZDMTMzNz01MywKLSBORVRfVENQX1NZTl9UQUlMRFJPUD01NCwKLSBORVRfVENQX01BWF9TWU5fQkFDS0xPRz01NSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfTE9DQUxfUE9SVF9SQU5HRT01NiwKLSBORVRfSVBWNF9JQ01QX0VDSE9fSUdOT1JFX0FMTD01NywKLSBORVRfSVBWNF9JQ01QX0VDSE9fSUdOT1JFX0JST0FEQ0FTVFM9NTgsCi0gTkVUX0lQVjRfSUNNUF9TT1VSQ0VRVUVOQ0hfUkFURT01OSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfSUNNUF9ERVNUVU5SRUFDSF9SQVRFPTYwLAotIE5FVF9JUFY0X0lDTVBfVElNRUVYQ0VFRF9SQVRFPTYxLAotIE5FVF9JUFY0X0lDTVBfUEFSQU1QUk9CX1JBVEU9NjIsCi0gTkVUX0lQVjRfSUNNUF9FQ0hPUkVQTFlfUkFURT02MywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfSUNNUF9JR05PUkVfQk9HVVNfRVJST1JfUkVTUE9OU0VTPTY0LAotIE5FVF9JUFY0X0lHTVBfTUFYX01FTUJFUlNISVBTPTY1LAotIE5FVF9UQ1BfVFdfUkVDWUNMRT02NiwKLSBORVRfSVBWNF9BTFdBWVNfREVGUkFHPTY3LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9UQ1BfS0VFUEFMSVZFX0lOVFZMPTY4LAotIE5FVF9JUFY0X0lORVRfUEVFUl9USFJFU0hPTEQ9NjksCi0gTkVUX0lQVjRfSU5FVF9QRUVSX01JTlRUTD03MCwKLSBORVRfSVBWNF9JTkVUX1BFRVJfTUFYVFRMPTcxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9JTkVUX1BFRVJfR0NfTUlOVElNRT03MiwKLSBORVRfSVBWNF9JTkVUX1BFRVJfR0NfTUFYVElNRT03MywKLSBORVRfVENQX09SUEhBTl9SRVRSSUVTPTc0LAotIE5FVF9UQ1BfQUJPUlRfT05fT1ZFUkZMT1c9NzUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9UQ1BfU1lOQUNLX1JFVFJJRVM9NzYsCi0gTkVUX1RDUF9NQVhfT1JQSEFOUz03NywKLSBORVRfVENQX01BWF9UV19CVUNLRVRTPTc4LAotIE5FVF9UQ1BfRkFDSz03OSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX1RDUF9SRU9SREVSSU5HPTgwLAotIE5FVF9UQ1BfRUNOPTgxLAotIE5FVF9UQ1BfRFNBQ0s9ODIsCi0gTkVUX1RDUF9NRU09ODMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9UQ1BfV01FTT04NCwKLSBORVRfVENQX1JNRU09ODUsCi0gTkVUX1RDUF9BUFBfV0lOPTg2LAotIE5FVF9UQ1BfQURWX1dJTl9TQ0FMRT04NywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfTk9OTE9DQUxfQklORD04OCwKLSBORVRfSVBWNF9JQ01QX1JBVEVMSU1JVD04OSwKLSBORVRfSVBWNF9JQ01QX1JBVEVNQVNLPTkwLAotIE5FVF9UQ1BfVFdfUkVVU0U9OTEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9UQ1BfRlJUTz05MiwKLSBORVRfVENQX0xPV19MQVRFTkNZPTkzLAotIE5FVF9JUFY0X0lQRlJBR19TRUNSRVRfSU5URVJWQUw9OTQsCi0gTkVUX0lQVjRfSUdNUF9NQVhfTVNGPTk2LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfVENQX05PX01FVFJJQ1NfU0FWRT05NywKLSBORVRfVENQX0RFRkFVTFRfV0lOX1NDQUxFPTEwNSwKLSBORVRfVENQX01PREVSQVRFX1JDVkJVRj0xMDYsCi0gTkVUX1RDUF9UU09fV0lOX0RJVklTT1I9MTA3LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfVENQX0JJQ19CRVRBPTEwOCwKLSBORVRfSVBWNF9JQ01QX0VSUk9SU19VU0VfSU5CT1VORF9JRkFERFI9MTA5LAotIE5FVF9UQ1BfQ09OR19DT05UUk9MPTExMCwKLSBORVRfVENQX0FCQz0xMTEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY0X0lQRlJBR19NQVhfRElTVD0xMTIsCi0gTkVUX1RDUF9NVFVfUFJPQklORz0xMTMsCi0gTkVUX1RDUF9CQVNFX01TUz0xMTQsCi0gTkVUX0lQVjRfVENQX1dPUktBUk9VTkRfU0lHTkVEX1dJTkRPV1M9MTE1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfVENQX0RNQV9DT1BZQlJFQUs9MTE2LAotIE5FVF9UQ1BfU0xPV19TVEFSVF9BRlRFUl9JRExFPTExNywKLSBORVRfQ0lQU09WNF9DQUNIRV9FTkFCTEU9MTE4LAotIE5FVF9DSVBTT1Y0X0NBQ0hFX0JVQ0tFVF9TSVpFPTExOSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0NJUFNPVjRfUkJNX09QVEZNVD0xMjAsCi0gTkVUX0NJUFNPVjRfUkJNX1NUUklDVFZBTElEPTEyMSwKLSBORVRfVENQX0FWQUlMX0NPTkdfQ09OVFJPTD0xMjIsCi0gTkVUX1RDUF9BTExPV0VEX0NPTkdfQ09OVFJPTD0xMjMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9UQ1BfTUFYX1NTVEhSRVNIPTEyNCwKLSBORVRfVENQX0ZSVE9fUkVTUE9OU0U9MTI1LAotfTsKLWVudW0gewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9ST1VURV9GTFVTSD0xLAotIE5FVF9JUFY0X1JPVVRFX01JTl9ERUxBWT0yLAotIE5FVF9JUFY0X1JPVVRFX01BWF9ERUxBWT0zLAotIE5FVF9JUFY0X1JPVVRFX0dDX1RIUkVTSD00LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9ST1VURV9NQVhfU0laRT01LAotIE5FVF9JUFY0X1JPVVRFX0dDX01JTl9JTlRFUlZBTD02LAotIE5FVF9JUFY0X1JPVVRFX0dDX1RJTUVPVVQ9NywKLSBORVRfSVBWNF9ST1VURV9HQ19JTlRFUlZBTD04LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9ST1VURV9SRURJUkVDVF9MT0FEPTksCi0gTkVUX0lQVjRfUk9VVEVfUkVESVJFQ1RfTlVNQkVSPTEwLAotIE5FVF9JUFY0X1JPVVRFX1JFRElSRUNUX1NJTEVOQ0U9MTEsCi0gTkVUX0lQVjRfUk9VVEVfRVJST1JfQ09TVD0xMiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfUk9VVEVfRVJST1JfQlVSU1Q9MTMsCi0gTkVUX0lQVjRfUk9VVEVfR0NfRUxBU1RJQ0lUWT0xNCwKLSBORVRfSVBWNF9ST1VURV9NVFVfRVhQSVJFUz0xNSwKLSBORVRfSVBWNF9ST1VURV9NSU5fUE1UVT0xNiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfUk9VVEVfTUlOX0FEVk1TUz0xNywKLSBORVRfSVBWNF9ST1VURV9TRUNSRVRfSU5URVJWQUw9MTgsCi0gTkVUX0lQVjRfUk9VVEVfR0NfTUlOX0lOVEVSVkFMX01TPTE5LAotfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1lbnVtCi17Ci0gTkVUX1BST1RPX0NPTkZfQUxMPS0yLAotIE5FVF9QUk9UT19DT05GX0RFRkFVTFQ9LTMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19OwotZW51bQotewotIE5FVF9JUFY0X0NPTkZfRk9SV0FSRElORz0xLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9DT05GX01DX0ZPUldBUkRJTkc9MiwKLSBORVRfSVBWNF9DT05GX1BST1hZX0FSUD0zLAotIE5FVF9JUFY0X0NPTkZfQUNDRVBUX1JFRElSRUNUUz00LAotIE5FVF9JUFY0X0NPTkZfU0VDVVJFX1JFRElSRUNUUz01LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9DT05GX1NFTkRfUkVESVJFQ1RTPTYsCi0gTkVUX0lQVjRfQ09ORl9TSEFSRURfTUVESUE9NywKLSBORVRfSVBWNF9DT05GX1JQX0ZJTFRFUj04LAotIE5FVF9JUFY0X0NPTkZfQUNDRVBUX1NPVVJDRV9ST1VURT05LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9DT05GX0JPT1RQX1JFTEFZPTEwLAotIE5FVF9JUFY0X0NPTkZfTE9HX01BUlRJQU5TPTExLAotIE5FVF9JUFY0X0NPTkZfVEFHPTEyLAotIE5FVF9JUFY0X0NPTkZfQVJQRklMVEVSPTEzLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9DT05GX01FRElVTV9JRD0xNCwKLSBORVRfSVBWNF9DT05GX05PWEZSTT0xNSwKLSBORVRfSVBWNF9DT05GX05PUE9MSUNZPTE2LAotIE5FVF9JUFY0X0NPTkZfRk9SQ0VfSUdNUF9WRVJTSU9OPTE3LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9DT05GX0FSUF9BTk5PVU5DRT0xOCwKLSBORVRfSVBWNF9DT05GX0FSUF9JR05PUkU9MTksCi0gTkVUX0lQVjRfQ09ORl9QUk9NT1RFX1NFQ09OREFSSUVTPTIwLAotIE5FVF9JUFY0X0NPTkZfQVJQX0FDQ0VQVD0yMSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfQ09ORl9BUlBfTk9USUZZPTIyLAotfTsKLWVudW0KLXsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX01BWD0xLAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9TWU5fU0VOVD0yLAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9TWU5fUkVDVj0zLAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9FU1RBQkxJU0hFRD00LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfRklOX1dBSVQ9NSwKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfQ0xPU0VfV0FJVD02LAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9MQVNUX0FDSz03LAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9USU1FX1dBSVQ9OCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0NMT1NFPTksCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1VEUF9USU1FT1VUPTEwLAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19VRFBfVElNRU9VVF9TVFJFQU09MTEsCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX0lDTVBfVElNRU9VVD0xMiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX0dFTkVSSUNfVElNRU9VVD0xMywKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfQlVDS0VUUz0xNCwKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfTE9HX0lOVkFMSUQ9MTUsCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX01BWF9SRVRSQU5TPTE2LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX0xPT1NFPTE3LAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfQkVfTElCRVJBTD0xOCwKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX01BWF9SRVRSQU5TPTE5LAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfQ0xPU0VEPTIwLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX0NPT0tJRV9XQUlUPTIxLAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfQ09PS0lFX0VDSE9FRD0yMiwKLSBORVRfSVBWNF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX0VTVEFCTElTSEVEPTIzLAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfU0hVVERPV05fU0VOVD0yNCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9TSFVURE9XTl9SRUNEPTI1LAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfU0hVVERPV05fQUNLX1NFTlQ9MjYsCi0gTkVUX0lQVjRfTkZfQ09OTlRSQUNLX0NPVU5UPTI3LAotIE5FVF9JUFY0X05GX0NPTk5UUkFDS19DSEVDS1NVTT0yOCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19OwotZW51bSB7Ci0gTkVUX0lQVjZfQ09ORj0xNiwKLSBORVRfSVBWNl9ORUlHSD0xNywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjZfUk9VVEU9MTgsCi0gTkVUX0lQVjZfSUNNUD0xOSwKLSBORVRfSVBWNl9CSU5EVjZPTkxZPTIwLAotIE5FVF9JUFY2X0lQNkZSQUdfSElHSF9USFJFU0g9MjEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY2X0lQNkZSQUdfTE9XX1RIUkVTSD0yMiwKLSBORVRfSVBWNl9JUDZGUkFHX1RJTUU9MjMsCi0gTkVUX0lQVjZfSVA2RlJBR19TRUNSRVRfSU5URVJWQUw9MjQsCi0gTkVUX0lQVjZfTUxEX01BWF9NU0Y9MjUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKLWVudW0gewotIE5FVF9JUFY2X1JPVVRFX0ZMVVNIPTEsCi0gTkVUX0lQVjZfUk9VVEVfR0NfVEhSRVNIPTIsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY2X1JPVVRFX01BWF9TSVpFPTMsCi0gTkVUX0lQVjZfUk9VVEVfR0NfTUlOX0lOVEVSVkFMPTQsCi0gTkVUX0lQVjZfUk9VVEVfR0NfVElNRU9VVD01LAotIE5FVF9JUFY2X1JPVVRFX0dDX0lOVEVSVkFMPTYsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY2X1JPVVRFX0dDX0VMQVNUSUNJVFk9NywKLSBORVRfSVBWNl9ST1VURV9NVFVfRVhQSVJFUz04LAotIE5FVF9JUFY2X1JPVVRFX01JTl9BRFZNU1M9OSwKLSBORVRfSVBWNl9ST1VURV9HQ19NSU5fSU5URVJWQUxfTVM9MTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19OwotZW51bSB7Ci0gTkVUX0lQVjZfRk9SV0FSRElORz0xLAotIE5FVF9JUFY2X0hPUF9MSU1JVD0yLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBWNl9NVFU9MywKLSBORVRfSVBWNl9BQ0NFUFRfUkE9NCwKLSBORVRfSVBWNl9BQ0NFUFRfUkVESVJFQ1RTPTUsCi0gTkVUX0lQVjZfQVVUT0NPTkY9NiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjZfREFEX1RSQU5TTUlUUz03LAotIE5FVF9JUFY2X1JUUl9TT0xJQ0lUUz04LAotIE5FVF9JUFY2X1JUUl9TT0xJQ0lUX0lOVEVSVkFMPTksCi0gTkVUX0lQVjZfUlRSX1NPTElDSVRfREVMQVk9MTAsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY2X1VTRV9URU1QQUREUj0xMSwKLSBORVRfSVBWNl9URU1QX1ZBTElEX0xGVD0xMiwKLSBORVRfSVBWNl9URU1QX1BSRUZFUkVEX0xGVD0xMywKLSBORVRfSVBWNl9SRUdFTl9NQVhfUkVUUlk9MTQsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY2X01BWF9ERVNZTkNfRkFDVE9SPTE1LAotIE5FVF9JUFY2X01BWF9BRERSRVNTRVM9MTYsCi0gTkVUX0lQVjZfRk9SQ0VfTUxEX1ZFUlNJT049MTcsCi0gTkVUX0lQVjZfQUNDRVBUX1JBX0RFRlJUUj0xOCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0lQVjZfQUNDRVBUX1JBX1BJTkZPPTE5LAotIE5FVF9JUFY2X0FDQ0VQVF9SQV9SVFJfUFJFRj0yMCwKLSBORVRfSVBWNl9SVFJfUFJPQkVfSU5URVJWQUw9MjEsCi0gTkVUX0lQVjZfQUNDRVBUX1JBX1JUX0lORk9fTUFYX1BMRU49MjIsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUFY2X1BST1hZX05EUD0yMywKLSBORVRfSVBWNl9BQ0NFUFRfU09VUkNFX1JPVVRFPTI1LAotIF9fTkVUX0lQVjZfTUFYCisgIHZvaWQgX191c2VyICogbmV3dmFsOworICBzaXplX3QgbmV3bGVuOworICB1bnNpZ25lZCBsb25nIF9fbGludXhfdW51c2VkWzRdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBORVRfSVBWNl9JQ01QX1JBVEVMSU1JVD0xCi19OwotZW51bSB7CisgIENUTF9LRVJOID0gMSwKKyAgQ1RMX1ZNID0gMiwKKyAgQ1RMX05FVCA9IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ORUlHSF9NQ0FTVF9TT0xJQ0lUPTEsCi0gTkVUX05FSUdIX1VDQVNUX1NPTElDSVQ9MiwKLSBORVRfTkVJR0hfQVBQX1NPTElDSVQ9MywKLSBORVRfTkVJR0hfUkVUUkFOU19USU1FPTQsCisgIENUTF9QUk9DID0gNCwKKyAgQ1RMX0ZTID0gNSwKKyAgQ1RMX0RFQlVHID0gNiwKKyAgQ1RMX0RFViA9IDcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ORUlHSF9SRUFDSEFCTEVfVElNRT01LAotIE5FVF9ORUlHSF9ERUxBWV9QUk9CRV9USU1FPTYsCi0gTkVUX05FSUdIX0dDX1NUQUxFX1RJTUU9NywKLSBORVRfTkVJR0hfVU5SRVNfUUxFTj04LAorICBDVExfQlVTID0gOCwKKyAgQ1RMX0FCSSA9IDksCisgIENUTF9DUFUgPSAxMCwKKyAgQ1RMX0FSTEFOID0gMjU0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTkVJR0hfUFJPWFlfUUxFTj05LAotIE5FVF9ORUlHSF9BTllDQVNUX0RFTEFZPTEwLAotIE5FVF9ORUlHSF9QUk9YWV9ERUxBWT0xMSwKLSBORVRfTkVJR0hfTE9DS1RJTUU9MTIsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ORUlHSF9HQ19JTlRFUlZBTD0xMywKLSBORVRfTkVJR0hfR0NfVEhSRVNIMT0xNCwKLSBORVRfTkVJR0hfR0NfVEhSRVNIMj0xNSwKLSBORVRfTkVJR0hfR0NfVEhSRVNIMz0xNiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX05FSUdIX1JFVFJBTlNfVElNRV9NUz0xNywKLSBORVRfTkVJR0hfUkVBQ0hBQkxFX1RJTUVfTVM9MTgsCi19OwotZW51bSB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9EQ0NQX0RFRkFVTFQ9MSwKLX07Ci1lbnVtIHsKLSBORVRfSVBYX1BQUk9QX0JST0FEQ0FTVElORz0xLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVBYX0ZPUldBUkRJTkc9MgotfTsKLWVudW0gewotIE5FVF9MTEMyPTEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9MTENfU1RBVElPTj0yLAotfTsKLWVudW0gewotIE5FVF9MTEMyX1RJTUVPVVQ9MSwKKyAgQ1RMX1MzOTBEQkYgPSA1Njc3LAorICBDVExfU1VOUlBDID0gNzI0OSwKKyAgQ1RMX1BNID0gOTg5OSwKKyAgQ1RMX0ZSViA9IDk4OTgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIE5FVF9MTENfU1RBVElPTl9BQ0tfVElNRU9VVD0xLAorICBDVExfQlVTX0lTQSA9IDEKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gTkVUX0xMQzJfQUNLX1RJTUVPVVQ9MSwKLSBORVRfTExDMl9QX1RJTUVPVVQ9MiwKLSBORVRfTExDMl9SRUpfVElNRU9VVD0zLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTExDMl9CVVNZX1RJTUVPVVQ9NCwKLX07Ci1lbnVtIHsKLSBORVRfQVRBTEtfQUFSUF9FWFBJUllfVElNRT0xLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfQVRBTEtfQUFSUF9USUNLX1RJTUU9MiwKLSBORVRfQVRBTEtfQUFSUF9SRVRSQU5TTUlUX0xJTUlUPTMsCi0gTkVUX0FUQUxLX0FBUlBfUkVTT0xWRV9USU1FPTQKLX07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotZW51bSB7Ci0gTkVUX05FVFJPTV9ERUZBVUxUX1BBVEhfUVVBTElUWT0xLAotIE5FVF9ORVRST01fT0JTT0xFU0NFTkNFX0NPVU5UX0lOSVRJQUxJU0VSPTIsCi0gTkVUX05FVFJPTV9ORVRXT1JLX1RUTF9JTklUSUFMSVNFUj0zLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTkVUUk9NX1RSQU5TUE9SVF9USU1FT1VUPTQsCi0gTkVUX05FVFJPTV9UUkFOU1BPUlRfTUFYSU1VTV9UUklFUz01LAotIE5FVF9ORVRST01fVFJBTlNQT1JUX0FDS05PV0xFREdFX0RFTEFZPTYsCi0gTkVUX05FVFJPTV9UUkFOU1BPUlRfQlVTWV9ERUxBWT03LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTkVUUk9NX1RSQU5TUE9SVF9SRVFVRVNURURfV0lORE9XX1NJWkU9OCwKLSBORVRfTkVUUk9NX1RSQU5TUE9SVF9OT19BQ1RJVklUWV9USU1FT1VUPTksCi0gTkVUX05FVFJPTV9ST1VUSU5HX0NPTlRST0w9MTAsCi0gTkVUX05FVFJPTV9MSU5LX0ZBSUxTX0NPVU5UPTExLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfTkVUUk9NX1JFU0VUPTEyCi19OwotZW51bSB7Ci0gTkVUX0FYMjVfSVBfREVGQVVMVF9NT0RFPTEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9BWDI1X0RFRkFVTFRfTU9ERT0yLAotIE5FVF9BWDI1X0JBQ0tPRkZfVFlQRT0zLAotIE5FVF9BWDI1X0NPTk5FQ1RfTU9ERT00LAotIE5FVF9BWDI1X1NUQU5EQVJEX1dJTkRPVz01LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfQVgyNV9FWFRFTkRFRF9XSU5ET1c9NiwKLSBORVRfQVgyNV9UMV9USU1FT1VUPTcsCi0gTkVUX0FYMjVfVDJfVElNRU9VVD04LAotIE5FVF9BWDI1X1QzX1RJTUVPVVQ9OSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0FYMjVfSURMRV9USU1FT1VUPTEwLAotIE5FVF9BWDI1X04yPTExLAotIE5FVF9BWDI1X1BBQ0xFTj0xMiwKLSBORVRfQVgyNV9QUk9UT0NPTD0xMywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0FYMjVfREFNQV9TTEFWRV9USU1FT1VUPTE0Ci19OwotZW51bSB7Ci0gTkVUX1JPU0VfUkVTVEFSVF9SRVFVRVNUX1RJTUVPVVQ9MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX1JPU0VfQ0FMTF9SRVFVRVNUX1RJTUVPVVQ9MiwKLSBORVRfUk9TRV9SRVNFVF9SRVFVRVNUX1RJTUVPVVQ9MywKLSBORVRfUk9TRV9DTEVBUl9SRVFVRVNUX1RJTUVPVVQ9NCwKLSBORVRfUk9TRV9BQ0tfSE9MRF9CQUNLX1RJTUVPVVQ9NSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX1JPU0VfUk9VVElOR19DT05UUk9MPTYsCi0gTkVUX1JPU0VfTElOS19GQUlMX1RJTUVPVVQ9NywKLSBORVRfUk9TRV9NQVhfVkNTPTgsCi0gTkVUX1JPU0VfV0lORE9XX1NJWkU9OSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX1JPU0VfTk9fQUNUSVZJVFlfVElNRU9VVD0xMAotfTsKLWVudW0gewotIE5FVF9YMjVfUkVTVEFSVF9SRVFVRVNUX1RJTUVPVVQ9MSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX1gyNV9DQUxMX1JFUVVFU1RfVElNRU9VVD0yLAotIE5FVF9YMjVfUkVTRVRfUkVRVUVTVF9USU1FT1VUPTMsCi0gTkVUX1gyNV9DTEVBUl9SRVFVRVNUX1RJTUVPVVQ9NCwKLSBORVRfWDI1X0FDS19IT0xEX0JBQ0tfVElNRU9VVD01LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfWDI1X0ZPUldBUkQ9NgotfTsKLWVudW0KLXsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX1RSX1JJRl9USU1FT1VUPTEKLX07Ci1lbnVtIHsKLSBORVRfREVDTkVUX05PREVfVFlQRSA9IDEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ERUNORVRfTk9ERV9BRERSRVNTID0gMiwKLSBORVRfREVDTkVUX05PREVfTkFNRSA9IDMsCi0gTkVUX0RFQ05FVF9ERUZBVUxUX0RFVklDRSA9IDQsCi0gTkVUX0RFQ05FVF9USU1FX1dBSVQgPSA1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfREVDTkVUX0ROX0NPVU5UID0gNiwKLSBORVRfREVDTkVUX0RJX0NPVU5UID0gNywKLSBORVRfREVDTkVUX0RSX0NPVU5UID0gOCwKLSBORVRfREVDTkVUX0RTVF9HQ19JTlRFUlZBTCA9IDksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ERUNORVRfQ09ORiA9IDEwLAotIE5FVF9ERUNORVRfTk9fRkNfTUFYX0NXTkQgPSAxMSwKLSBORVRfREVDTkVUX01FTSA9IDEyLAotIE5FVF9ERUNORVRfUk1FTSA9IDEzLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfREVDTkVUX1dNRU0gPSAxNCwKLSBORVRfREVDTkVUX0RFQlVHX0xFVkVMID0gMjU1Ci19OwotZW51bSB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ERUNORVRfQ09ORl9MT09QQkFDSyA9IC0yLAotIE5FVF9ERUNORVRfQ09ORl9ERENNUCA9IC0zLAotIE5FVF9ERUNORVRfQ09ORl9QUFAgPSAtNCwKLSBORVRfREVDTkVUX0NPTkZfWDI1ID0gLTUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9ERUNORVRfQ09ORl9HUkUgPSAtNiwKLSBORVRfREVDTkVUX0NPTkZfRVRIRVIgPSAtNwotfTsKLWVudW0gewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfREVDTkVUX0NPTkZfREVWX1BSSU9SSVRZID0gMSwKLSBORVRfREVDTkVUX0NPTkZfREVWX1QxID0gMiwKLSBORVRfREVDTkVUX0NPTkZfREVWX1QyID0gMywKLSBORVRfREVDTkVUX0NPTkZfREVWX1QzID0gNCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0RFQ05FVF9DT05GX0RFVl9GT1JXQVJESU5HID0gNSwKLSBORVRfREVDTkVUX0NPTkZfREVWX0JMS1NJWkUgPSA2LAotIE5FVF9ERUNORVRfQ09ORl9ERVZfU1RBVEUgPSA3Ci19OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLWVudW0gewotIE5FVF9TQ1RQX1JUT19JTklUSUFMID0gMSwKLSBORVRfU0NUUF9SVE9fTUlOID0gMiwKLSBORVRfU0NUUF9SVE9fTUFYID0gMywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX1NDVFBfUlRPX0FMUEhBID0gNCwKLSBORVRfU0NUUF9SVE9fQkVUQSA9IDUsCi0gTkVUX1NDVFBfVkFMSURfQ09PS0lFX0xJRkUgPSA2LAotIE5FVF9TQ1RQX0FTU09DSUFUSU9OX01BWF9SRVRSQU5TID0gNywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX1NDVFBfUEFUSF9NQVhfUkVUUkFOUyA9IDgsCi0gTkVUX1NDVFBfTUFYX0lOSVRfUkVUUkFOU01JVFMgPSA5LAotIE5FVF9TQ1RQX0hCX0lOVEVSVkFMID0gMTAsCi0gTkVUX1NDVFBfUFJFU0VSVkVfRU5BQkxFID0gMTEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9TQ1RQX01BWF9CVVJTVCA9IDEyLAotIE5FVF9TQ1RQX0FERElQX0VOQUJMRSA9IDEzLAotIE5FVF9TQ1RQX1BSU0NUUF9FTkFCTEUgPSAxNCwKLSBORVRfU0NUUF9TTkRCVUZfUE9MSUNZID0gMTUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9TQ1RQX1NBQ0tfVElNRU9VVCA9IDE2LAotIE5FVF9TQ1RQX1JDVkJVRl9QT0xJQ1kgPSAxNywKLX07Ci1lbnVtIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gTkVUX0JSSURHRV9ORl9DQUxMX0FSUFRBQkxFUyA9IDEsCi0gTkVUX0JSSURHRV9ORl9DQUxMX0lQVEFCTEVTID0gMiwKLSBORVRfQlJJREdFX05GX0NBTExfSVA2VEFCTEVTID0gMywKLSBORVRfQlJJREdFX05GX0ZJTFRFUl9WTEFOX1RBR0dFRCA9IDQsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9CUklER0VfTkZfRklMVEVSX1BQUE9FX1RBR0dFRCA9IDUsCi19OwotZW51bSB7Ci0gTkVUX0lSREFfRElTQ09WRVJZPTEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUkRBX0RFVk5BTUU9MiwKLSBORVRfSVJEQV9ERUJVRz0zLAotIE5FVF9JUkRBX0ZBU1RfUE9MTD00LAotIE5FVF9JUkRBX0RJU0NPVkVSWV9TTE9UUz01LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVJEQV9ESVNDT1ZFUllfVElNRU9VVD02LAotIE5FVF9JUkRBX1NMT1RfVElNRU9VVD03LAotIE5FVF9JUkRBX01BWF9CQVVEX1JBVEU9OCwKLSBORVRfSVJEQV9NSU5fVFhfVFVSTl9USU1FPTksCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE5FVF9JUkRBX01BWF9UWF9EQVRBX1NJWkU9MTAsCi0gTkVUX0lSREFfTUFYX1RYX1dJTkRPVz0xMSwKLSBORVRfSVJEQV9NQVhfTk9SRVBMWV9USU1FPTEyLAotIE5FVF9JUkRBX1dBUk5fTk9SRVBMWV9USU1FPTEzLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBORVRfSVJEQV9MQVBfS0VFUEFMSVZFX1RJTUU9MTQsCi19OwotZW51bQotewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGU19OUklOT0RFPTEsCi0gRlNfU1RBVElOT0RFPTIsCi0gRlNfTUFYSU5PREU9MywKLSBGU19OUkRRVU9UPTQsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZTX01BWERRVU9UPTUsCi0gRlNfTlJGSUxFPTYsCi0gRlNfTUFYRklMRT03LAotIEZTX0RFTlRSWT04LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGU19OUlNVUEVSPTksCi0gRlNfTUFYU1VQRVI9MTAsCi0gRlNfT1ZFUkZMT1dVSUQ9MTEsCi0gRlNfT1ZFUkZMT1dHSUQ9MTIsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZTX0xFQVNFUz0xMywKLSBGU19ESVJfTk9USUZZPTE0LAotIEZTX0xFQVNFX1RJTUU9MTUsCi0gRlNfRFFTVEFUUz0xNiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlNfWEZTPTE3LAotIEZTX0FJT19OUj0xOCwKLSBGU19BSU9fTUFYX05SPTE5LAotIEZTX0lOT1RJRlk9MjAsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZTX09DRlMyPTk4OCwKLX07Ci1lbnVtIHsKLSBGU19EUV9MT09LVVBTID0gMSwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlNfRFFfRFJPUFMgPSAyLAotIEZTX0RRX1JFQURTID0gMywKLSBGU19EUV9XUklURVMgPSA0LAotIEZTX0RRX0NBQ0hFX0hJVFMgPSA1LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGU19EUV9BTExPQ0FURUQgPSA2LAotIEZTX0RRX0ZSRUUgPSA3LAotIEZTX0RRX1NZTkNTID0gOCwKLSBGU19EUV9XQVJOSU5HUyA9IDksCisgIElOT1RJRllfTUFYX1VTRVJfSU5TVEFOQ0VTID0gMSwKKyAgSU5PVElGWV9NQVhfVVNFUl9XQVRDSEVTID0gMiwKKyAgSU5PVElGWV9NQVhfUVVFVUVEX0VWRU5UUyA9IDMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gREVWX0NEUk9NPTEsCi0gREVWX0hXTU9OPTIsCisgIEtFUk5fT1NUWVBFID0gMSwKKyAgS0VSTl9PU1JFTEVBU0UgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBERVZfUEFSUE9SVD0zLAotIERFVl9SQUlEPTQsCi0gREVWX01BQ19ISUQ9NSwKLSBERVZfU0NTST02LAorICBLRVJOX09TUkVWID0gMywKKyAgS0VSTl9WRVJTSU9OID0gNCwKKyAgS0VSTl9TRUNVUkVNQVNLID0gNSwKKyAgS0VSTl9QUk9GID0gNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gREVWX0lQTUk9NywKLX07Ci1lbnVtIHsKLSBERVZfQ0RST01fSU5GTz0xLAorICBLRVJOX05PREVOQU1FID0gNywKKyAgS0VSTl9ET01BSU5OQU1FID0gOCwKKyAgS0VSTl9QQU5JQyA9IDE1LAorICBLRVJOX1JFQUxST09UREVWID0gMTYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERFVl9DRFJPTV9BVVRPQ0xPU0U9MiwKLSBERVZfQ0RST01fQVVUT0VKRUNUPTMsCi0gREVWX0NEUk9NX0RFQlVHPTQsCi0gREVWX0NEUk9NX0xPQ0s9NSwKKyAgS0VSTl9TUEFSQ19SRUJPT1QgPSAyMSwKKyAgS0VSTl9DVExBTFRERUwgPSAyMiwKKyAgS0VSTl9QUklOVEsgPSAyMywKKyAgS0VSTl9OQU1FVFJBTlMgPSAyNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gREVWX0NEUk9NX0NIRUNLX01FRElBPTYKLX07Ci1lbnVtIHsKLSBERVZfUEFSUE9SVF9ERUZBVUxUPS0zCisgIEtFUk5fUFBDX0hUQUJSRUNMQUlNID0gMjUsCisgIEtFUk5fUFBDX1pFUk9QQUdFRCA9IDI2LAorICBLRVJOX1BQQ19QT1dFUlNBVkVfTkFQID0gMjcsCisgIEtFUk5fTU9EUFJPQkUgPSAyOCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEtFUk5fU0dfQklHX0JVRkYgPSAyOSwKKyAgS0VSTl9BQ0NUID0gMzAsCisgIEtFUk5fUFBDX0wyQ1IgPSAzMSwKKyAgS0VSTl9SVFNJR05SID0gMzIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBLRVJOX1JUU0lHTUFYID0gMzMsCisgIEtFUk5fU0hNTUFYID0gMzQsCisgIEtFUk5fTVNHTUFYID0gMzUsCisgIEtFUk5fTVNHTU5CID0gMzYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBLRVJOX01TR1BPT0wgPSAzNywKKyAgS0VSTl9TWVNSUSA9IDM4LAorICBLRVJOX01BWF9USFJFQURTID0gMzksCisgIEtFUk5fUkFORE9NID0gNDAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBLRVJOX1NITUFMTCA9IDQxLAorICBLRVJOX01TR01OSSA9IDQyLAorICBLRVJOX1NFTSA9IDQzLAorICBLRVJOX1NQQVJDX1NUT1BfQSA9IDQ0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgS0VSTl9TSE1NTkkgPSA0NSwKKyAgS0VSTl9PVkVSRkxPV1VJRCA9IDQ2LAorICBLRVJOX09WRVJGTE9XR0lEID0gNDcsCisgIEtFUk5fU0hNUEFUSCA9IDQ4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgS0VSTl9IT1RQTFVHID0gNDksCisgIEtFUk5fSUVFRV9FTVVMQVRJT05fV0FSTklOR1MgPSA1MCwKKyAgS0VSTl9TMzkwX1VTRVJfREVCVUdfTE9HR0lORyA9IDUxLAorICBLRVJOX0NPUkVfVVNFU19QSUQgPSA1MiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEtFUk5fVEFJTlRFRCA9IDUzLAorICBLRVJOX0NBRFBJRCA9IDU0LAorICBLRVJOX1BJRE1BWCA9IDU1LAorICBLRVJOX0NPUkVfUEFUVEVSTiA9IDU2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgS0VSTl9QQU5JQ19PTl9PT1BTID0gNTcsCisgIEtFUk5fSFBQQV9QV1JTVyA9IDU4LAorICBLRVJOX0hQUEFfVU5BTElHTkVEID0gNTksCisgIEtFUk5fUFJJTlRLX1JBVEVMSU1JVCA9IDYwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgS0VSTl9QUklOVEtfUkFURUxJTUlUX0JVUlNUID0gNjEsCisgIEtFUk5fUFRZID0gNjIsCisgIEtFUk5fTkdST1VQU19NQVggPSA2MywKKyAgS0VSTl9TUEFSQ19TQ09OU19QV1JPRkYgPSA2NCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEtFUk5fSFpfVElNRVIgPSA2NSwKKyAgS0VSTl9VTktOT1dOX05NSV9QQU5JQyA9IDY2LAorICBLRVJOX0JPT1RMT0FERVJfVFlQRSA9IDY3LAorICBLRVJOX1JBTkRPTUlaRSA9IDY4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgS0VSTl9TRVRVSURfRFVNUEFCTEUgPSA2OSwKKyAgS0VSTl9TUElOX1JFVFJZID0gNzAsCisgIEtFUk5fQUNQSV9WSURFT19GTEFHUyA9IDcxLAorICBLRVJOX0lBNjRfVU5BTElHTkVEID0gNzIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBLRVJOX0NPTVBBVF9MT0cgPSA3MywKKyAgS0VSTl9NQVhfTE9DS19ERVBUSCA9IDc0LAorICBLRVJOX05NSV9XQVRDSERPRyA9IDc1LAorICBLRVJOX1BBTklDX09OX05NSSA9IDc2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBERVZfUkFJRF9TUEVFRF9MSU1JVF9NSU49MSwKLSBERVZfUkFJRF9TUEVFRF9MSU1JVF9NQVg9MgorICBWTV9VTlVTRUQxID0gMSwKKyAgVk1fVU5VU0VEMiA9IDIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWTV9VTlVTRUQzID0gMywKKyAgVk1fVU5VU0VENCA9IDQsCisgIFZNX09WRVJDT01NSVRfTUVNT1JZID0gNSwKKyAgVk1fVU5VU0VENSA9IDYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWTV9VTlVTRUQ3ID0gNywKKyAgVk1fVU5VU0VEOCA9IDgsCisgIFZNX1VOVVNFRDkgPSA5LAorICBWTV9QQUdFX0NMVVNURVIgPSAxMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFZNX0RJUlRZX0JBQ0tHUk9VTkQgPSAxMSwKKyAgVk1fRElSVFlfUkFUSU8gPSAxMiwKKyAgVk1fRElSVFlfV0JfQ1MgPSAxMywKKyAgVk1fRElSVFlfRVhQSVJFX0NTID0gMTQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWTV9OUl9QREZMVVNIX1RIUkVBRFMgPSAxNSwKKyAgVk1fT1ZFUkNPTU1JVF9SQVRJTyA9IDE2LAorICBWTV9QQUdFQlVGID0gMTcsCisgIFZNX0hVR0VUTEJfUEFHRVMgPSAxOCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFZNX1NXQVBQSU5FU1MgPSAxOSwKKyAgVk1fTE9XTUVNX1JFU0VSVkVfUkFUSU8gPSAyMCwKKyAgVk1fTUlOX0ZSRUVfS0JZVEVTID0gMjEsCisgIFZNX01BWF9NQVBfQ09VTlQgPSAyMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFZNX0xBUFRPUF9NT0RFID0gMjMsCisgIFZNX0JMT0NLX0RVTVAgPSAyNCwKKyAgVk1fSFVHRVRMQl9HUk9VUCA9IDI1LAorICBWTV9WRlNfQ0FDSEVfUFJFU1NVUkUgPSAyNiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFZNX0xFR0FDWV9WQV9MQVlPVVQgPSAyNywKKyAgVk1fU1dBUF9UT0tFTl9USU1FT1VUID0gMjgsCisgIFZNX0RST1BfUEFHRUNBQ0hFID0gMjksCisgIFZNX1BFUkNQVV9QQUdFTElTVF9GUkFDVElPTiA9IDMwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVk1fWk9ORV9SRUNMQUlNX01PREUgPSAzMSwKKyAgVk1fTUlOX1VOTUFQUEVEID0gMzIsCisgIFZNX1BBTklDX09OX09PTSA9IDMzLAorICBWTV9WRFNPX0VOQUJMRUQgPSAzNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFZNX01JTl9TTEFCID0gMzUsCit9OworZW51bSB7CisgIE5FVF9DT1JFID0gMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9FVEhFUiA9IDIsCisgIE5FVF84MDIgPSAzLAorICBORVRfVU5JWCA9IDQsCisgIE5FVF9JUFY0ID0gNSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFggPSA2LAorICBORVRfQVRBTEsgPSA3LAorICBORVRfTkVUUk9NID0gOCwKKyAgTkVUX0FYMjUgPSA5LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0JSSURHRSA9IDEwLAorICBORVRfUk9TRSA9IDExLAorICBORVRfSVBWNiA9IDEyLAorICBORVRfWDI1ID0gMTMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfVFIgPSAxNCwKKyAgTkVUX0RFQ05FVCA9IDE1LAorICBORVRfRUNPTkVUID0gMTYsCisgIE5FVF9TQ1RQID0gMTcsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTExDID0gMTgsCisgIE5FVF9ORVRGSUxURVIgPSAxOSwKKyAgTkVUX0RDQ1AgPSAyMCwKKyAgTkVUX0lSREEgPSA0MTIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIERFVl9QQVJQT1JUX0RFRkFVTFRfVElNRVNMSUNFPTEsCi0gREVWX1BBUlBPUlRfREVGQVVMVF9TUElOVElNRT0yCisgIFJBTkRPTV9QT09MU0laRSA9IDEsCisgIFJBTkRPTV9FTlRST1BZX0NPVU5UID0gMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFJBTkRPTV9SRUFEX1RIUkVTSCA9IDMsCisgIFJBTkRPTV9XUklURV9USFJFU0ggPSA0LAorICBSQU5ET01fQk9PVF9JRCA9IDUsCisgIFJBTkRPTV9VVUlEID0gNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHsKLSBERVZfUEFSUE9SVF9TUElOVElNRT0xLAotIERFVl9QQVJQT1JUX0JBU0VfQUREUj0yLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBERVZfUEFSUE9SVF9JUlE9MywKLSBERVZfUEFSUE9SVF9ETUE9NCwKLSBERVZfUEFSUE9SVF9NT0RFUz01LAotIERFVl9QQVJQT1JUX0RFVklDRVM9NiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gREVWX1BBUlBPUlRfQVVUT1BST0JFPTE2Ci19OwotZW51bSB7Ci0gREVWX1BBUlBPUlRfREVWSUNFU19BQ1RJVkU9LTMsCisgIFBUWV9NQVggPSAxLAorICBQVFlfTlIgPSAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIERFVl9QQVJQT1JUX0RFVklDRV9USU1FU0xJQ0U9MSwKKyAgQlVTX0lTQV9NRU1fQkFTRSA9IDEsCisgIEJVU19JU0FfUE9SVF9CQVNFID0gMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEJVU19JU0FfUE9SVF9TSElGVCA9IDMKK307CitlbnVtIHsKKyAgTkVUX0NPUkVfV01FTV9NQVggPSAxLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0NPUkVfUk1FTV9NQVggPSAyLAorICBORVRfQ09SRV9XTUVNX0RFRkFVTFQgPSAzLAorICBORVRfQ09SRV9STUVNX0RFRkFVTFQgPSA0LAorICBORVRfQ09SRV9NQVhfQkFDS0xPRyA9IDYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfQ09SRV9GQVNUUk9VVEUgPSA3LAorICBORVRfQ09SRV9NU0dfQ09TVCA9IDgsCisgIE5FVF9DT1JFX01TR19CVVJTVCA9IDksCisgIE5FVF9DT1JFX09QVE1FTV9NQVggPSAxMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9DT1JFX0hPVF9MSVNUX0xFTkdUSCA9IDExLAorICBORVRfQ09SRV9ESVZFUlRfVkVSU0lPTiA9IDEyLAorICBORVRfQ09SRV9OT19DT05HX1RIUkVTSCA9IDEzLAorICBORVRfQ09SRV9OT19DT05HID0gMTQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfQ09SRV9MT19DT05HID0gMTUsCisgIE5FVF9DT1JFX01PRF9DT05HID0gMTYsCisgIE5FVF9DT1JFX0RFVl9XRUlHSFQgPSAxNywKKyAgTkVUX0NPUkVfU09NQVhDT05OID0gMTgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfQ09SRV9CVURHRVQgPSAxOSwKKyAgTkVUX0NPUkVfQUVWRU5UX0VUSU1FID0gMjAsCisgIE5FVF9DT1JFX0FFVkVOVF9SU0VRVEggPSAyMSwKKyAgTkVUX0NPUkVfV0FSTklOR1MgPSAyMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworZW51bSB7CisgIE5FVF9VTklYX0RFU1RST1lfREVMQVkgPSAxLAorICBORVRfVU5JWF9ERUxFVEVfREVMQVkgPSAyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX1VOSVhfTUFYX0RHUkFNX1FMRU4gPSAzLAorfTsKK2VudW0geworICBORVRfTkZfQ09OTlRSQUNLX01BWCA9IDEsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX1NZTl9TRU5UID0gMiwKKyAgTkVUX05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9TWU5fUkVDViA9IDMsCisgIE5FVF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfRVNUQUJMSVNIRUQgPSA0LAorICBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0ZJTl9XQUlUID0gNSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfQ0xPU0VfV0FJVCA9IDYsCisgIE5FVF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfTEFTVF9BQ0sgPSA3LAorICBORVRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX1RJTUVfV0FJVCA9IDgsCisgIE5FVF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfQ0xPU0UgPSA5LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX05GX0NPTk5UUkFDS19VRFBfVElNRU9VVCA9IDEwLAorICBORVRfTkZfQ09OTlRSQUNLX1VEUF9USU1FT1VUX1NUUkVBTSA9IDExLAorICBORVRfTkZfQ09OTlRSQUNLX0lDTVBfVElNRU9VVCA9IDEyLAorICBORVRfTkZfQ09OTlRSQUNLX0dFTkVSSUNfVElNRU9VVCA9IDEzLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX05GX0NPTk5UUkFDS19CVUNLRVRTID0gMTQsCisgIE5FVF9ORl9DT05OVFJBQ0tfTE9HX0lOVkFMSUQgPSAxNSwKKyAgTkVUX05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9NQVhfUkVUUkFOUyA9IDE2LAorICBORVRfTkZfQ09OTlRSQUNLX1RDUF9MT09TRSA9IDE3LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX05GX0NPTk5UUkFDS19UQ1BfQkVfTElCRVJBTCA9IDE4LAorICBORVRfTkZfQ09OTlRSQUNLX1RDUF9NQVhfUkVUUkFOUyA9IDE5LAorICBORVRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9DTE9TRUQgPSAyMCwKKyAgTkVUX05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfQ09PS0lFX1dBSVQgPSAyMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX0NPT0tJRV9FQ0hPRUQgPSAyMiwKKyAgTkVUX05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfRVNUQUJMSVNIRUQgPSAyMywKKyAgTkVUX05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfU0hVVERPV05fU0VOVCA9IDI0LAorICBORVRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9TSFVURE9XTl9SRUNEID0gMjUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9TSFVURE9XTl9BQ0tfU0VOVCA9IDI2LAorICBORVRfTkZfQ09OTlRSQUNLX0NPVU5UID0gMjcsCisgIE5FVF9ORl9DT05OVFJBQ0tfSUNNUFY2X1RJTUVPVVQgPSAyOCwKKyAgTkVUX05GX0NPTk5UUkFDS19GUkFHNl9USU1FT1VUID0gMjksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTkZfQ09OTlRSQUNLX0ZSQUc2X0xPV19USFJFU0ggPSAzMCwKKyAgTkVUX05GX0NPTk5UUkFDS19GUkFHNl9ISUdIX1RIUkVTSCA9IDMxLAorICBORVRfTkZfQ09OTlRSQUNLX0NIRUNLU1VNID0gMzIsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIERFVl9NQUNfSElEX0tFWUJPQVJEX1NFTkRTX0xJTlVYX0tFWUNPREVTPTEsCi0gREVWX01BQ19ISURfS0VZQk9BUkRfTE9DS19LRVlDT0RFUz0yLAotIERFVl9NQUNfSElEX01PVVNFX0JVVFRPTl9FTVVMQVRJT049MywKKyAgTkVUX0lQVjRfRk9SV0FSRCA9IDgsCisgIE5FVF9JUFY0X0RZTkFERFIgPSA5LAorICBORVRfSVBWNF9DT05GID0gMTYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIERFVl9NQUNfSElEX01PVVNFX0JVVFRPTjJfS0VZQ09ERT00LAotIERFVl9NQUNfSElEX01PVVNFX0JVVFRPTjNfS0VZQ09ERT01LAotIERFVl9NQUNfSElEX0FEQl9NT1VTRV9TRU5EU19LRVlDT0RFUz02CisgIE5FVF9JUFY0X05FSUdIID0gMTcsCisgIE5FVF9JUFY0X1JPVVRFID0gMTgsCisgIE5FVF9JUFY0X0ZJQl9IQVNIID0gMTksCisgIE5FVF9JUFY0X05FVEZJTFRFUiA9IDIwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfVENQX1RJTUVTVEFNUFMgPSAzMywKKyAgTkVUX0lQVjRfVENQX1dJTkRPV19TQ0FMSU5HID0gMzQsCisgIE5FVF9JUFY0X1RDUF9TQUNLID0gMzUsCisgIE5FVF9JUFY0X1RDUF9SRVRSQU5TX0NPTExBUFNFID0gMzYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9ERUZBVUxUX1RUTCA9IDM3LAorICBORVRfSVBWNF9BVVRPQ09ORklHID0gMzgsCisgIE5FVF9JUFY0X05PX1BNVFVfRElTQyA9IDM5LAorICBORVRfSVBWNF9UQ1BfU1lOX1JFVFJJRVMgPSA0MCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X0lQRlJBR19ISUdIX1RIUkVTSCA9IDQxLAorICBORVRfSVBWNF9JUEZSQUdfTE9XX1RIUkVTSCA9IDQyLAorICBORVRfSVBWNF9JUEZSQUdfVElNRSA9IDQzLAorICBORVRfSVBWNF9UQ1BfTUFYX0tBX1BST0JFUyA9IDQ0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfVENQX0tFRVBBTElWRV9USU1FID0gNDUsCisgIE5FVF9JUFY0X1RDUF9LRUVQQUxJVkVfUFJPQkVTID0gNDYsCisgIE5FVF9JUFY0X1RDUF9SRVRSSUVTMSA9IDQ3LAorICBORVRfSVBWNF9UQ1BfUkVUUklFUzIgPSA0OCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X1RDUF9GSU5fVElNRU9VVCA9IDQ5LAorICBORVRfSVBWNF9JUF9NQVNRX0RFQlVHID0gNTAsCisgIE5FVF9UQ1BfU1lOQ09PS0lFUyA9IDUxLAorICBORVRfVENQX1NURFVSRyA9IDUyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX1RDUF9SRkMxMzM3ID0gNTMsCisgIE5FVF9UQ1BfU1lOX1RBSUxEUk9QID0gNTQsCisgIE5FVF9UQ1BfTUFYX1NZTl9CQUNLTE9HID0gNTUsCisgIE5FVF9JUFY0X0xPQ0FMX1BPUlRfUkFOR0UgPSA1NiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X0lDTVBfRUNIT19JR05PUkVfQUxMID0gNTcsCisgIE5FVF9JUFY0X0lDTVBfRUNIT19JR05PUkVfQlJPQURDQVNUUyA9IDU4LAorICBORVRfSVBWNF9JQ01QX1NPVVJDRVFVRU5DSF9SQVRFID0gNTksCisgIE5FVF9JUFY0X0lDTVBfREVTVFVOUkVBQ0hfUkFURSA9IDYwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfSUNNUF9USU1FRVhDRUVEX1JBVEUgPSA2MSwKKyAgTkVUX0lQVjRfSUNNUF9QQVJBTVBST0JfUkFURSA9IDYyLAorICBORVRfSVBWNF9JQ01QX0VDSE9SRVBMWV9SQVRFID0gNjMsCisgIE5FVF9JUFY0X0lDTVBfSUdOT1JFX0JPR1VTX0VSUk9SX1JFU1BPTlNFUyA9IDY0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfSUdNUF9NQVhfTUVNQkVSU0hJUFMgPSA2NSwKKyAgTkVUX1RDUF9UV19SRUNZQ0xFID0gNjYsCisgIE5FVF9JUFY0X0FMV0FZU19ERUZSQUcgPSA2NywKKyAgTkVUX0lQVjRfVENQX0tFRVBBTElWRV9JTlRWTCA9IDY4LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfSU5FVF9QRUVSX1RIUkVTSE9MRCA9IDY5LAorICBORVRfSVBWNF9JTkVUX1BFRVJfTUlOVFRMID0gNzAsCisgIE5FVF9JUFY0X0lORVRfUEVFUl9NQVhUVEwgPSA3MSwKKyAgTkVUX0lQVjRfSU5FVF9QRUVSX0dDX01JTlRJTUUgPSA3MiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X0lORVRfUEVFUl9HQ19NQVhUSU1FID0gNzMsCisgIE5FVF9UQ1BfT1JQSEFOX1JFVFJJRVMgPSA3NCwKKyAgTkVUX1RDUF9BQk9SVF9PTl9PVkVSRkxPVyA9IDc1LAorICBORVRfVENQX1NZTkFDS19SRVRSSUVTID0gNzYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfVENQX01BWF9PUlBIQU5TID0gNzcsCisgIE5FVF9UQ1BfTUFYX1RXX0JVQ0tFVFMgPSA3OCwKKyAgTkVUX1RDUF9GQUNLID0gNzksCisgIE5FVF9UQ1BfUkVPUkRFUklORyA9IDgwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX1RDUF9FQ04gPSA4MSwKKyAgTkVUX1RDUF9EU0FDSyA9IDgyLAorICBORVRfVENQX01FTSA9IDgzLAorICBORVRfVENQX1dNRU0gPSA4NCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9UQ1BfUk1FTSA9IDg1LAorICBORVRfVENQX0FQUF9XSU4gPSA4NiwKKyAgTkVUX1RDUF9BRFZfV0lOX1NDQUxFID0gODcsCisgIE5FVF9JUFY0X05PTkxPQ0FMX0JJTkQgPSA4OCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X0lDTVBfUkFURUxJTUlUID0gODksCisgIE5FVF9JUFY0X0lDTVBfUkFURU1BU0sgPSA5MCwKKyAgTkVUX1RDUF9UV19SRVVTRSA9IDkxLAorICBORVRfVENQX0ZSVE8gPSA5MiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9UQ1BfTE9XX0xBVEVOQ1kgPSA5MywKKyAgTkVUX0lQVjRfSVBGUkFHX1NFQ1JFVF9JTlRFUlZBTCA9IDk0LAorICBORVRfSVBWNF9JR01QX01BWF9NU0YgPSA5NiwKKyAgTkVUX1RDUF9OT19NRVRSSUNTX1NBVkUgPSA5NywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9UQ1BfREVGQVVMVF9XSU5fU0NBTEUgPSAxMDUsCisgIE5FVF9UQ1BfTU9ERVJBVEVfUkNWQlVGID0gMTA2LAorICBORVRfVENQX1RTT19XSU5fRElWSVNPUiA9IDEwNywKKyAgTkVUX1RDUF9CSUNfQkVUQSA9IDEwOCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X0lDTVBfRVJST1JTX1VTRV9JTkJPVU5EX0lGQUREUiA9IDEwOSwKKyAgTkVUX1RDUF9DT05HX0NPTlRST0wgPSAxMTAsCisgIE5FVF9UQ1BfQUJDID0gMTExLAorICBORVRfSVBWNF9JUEZSQUdfTUFYX0RJU1QgPSAxMTIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfVENQX01UVV9QUk9CSU5HID0gMTEzLAorICBORVRfVENQX0JBU0VfTVNTID0gMTE0LAorICBORVRfSVBWNF9UQ1BfV09SS0FST1VORF9TSUdORURfV0lORE9XUyA9IDExNSwKKyAgTkVUX1RDUF9ETUFfQ09QWUJSRUFLID0gMTE2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX1RDUF9TTE9XX1NUQVJUX0FGVEVSX0lETEUgPSAxMTcsCisgIE5FVF9DSVBTT1Y0X0NBQ0hFX0VOQUJMRSA9IDExOCwKKyAgTkVUX0NJUFNPVjRfQ0FDSEVfQlVDS0VUX1NJWkUgPSAxMTksCisgIE5FVF9DSVBTT1Y0X1JCTV9PUFRGTVQgPSAxMjAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfQ0lQU09WNF9SQk1fU1RSSUNUVkFMSUQgPSAxMjEsCisgIE5FVF9UQ1BfQVZBSUxfQ09OR19DT05UUk9MID0gMTIyLAorICBORVRfVENQX0FMTE9XRURfQ09OR19DT05UUk9MID0gMTIzLAorICBORVRfVENQX01BWF9TU1RIUkVTSCA9IDEyNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9UQ1BfRlJUT19SRVNQT05TRSA9IDEyNSwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gREVWX1NDU0lfTE9HR0lOR19MRVZFTD0xLAorICBORVRfSVBWNF9ST1VURV9GTFVTSCA9IDEsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9ST1VURV9NSU5fREVMQVkgPSAyLAorICBORVRfSVBWNF9ST1VURV9NQVhfREVMQVkgPSAzLAorICBORVRfSVBWNF9ST1VURV9HQ19USFJFU0ggPSA0LAorICBORVRfSVBWNF9ST1VURV9NQVhfU0laRSA9IDUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9ST1VURV9HQ19NSU5fSU5URVJWQUwgPSA2LAorICBORVRfSVBWNF9ST1VURV9HQ19USU1FT1VUID0gNywKKyAgTkVUX0lQVjRfUk9VVEVfR0NfSU5URVJWQUwgPSA4LAorICBORVRfSVBWNF9ST1VURV9SRURJUkVDVF9MT0FEID0gOSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X1JPVVRFX1JFRElSRUNUX05VTUJFUiA9IDEwLAorICBORVRfSVBWNF9ST1VURV9SRURJUkVDVF9TSUxFTkNFID0gMTEsCisgIE5FVF9JUFY0X1JPVVRFX0VSUk9SX0NPU1QgPSAxMiwKKyAgTkVUX0lQVjRfUk9VVEVfRVJST1JfQlVSU1QgPSAxMywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X1JPVVRFX0dDX0VMQVNUSUNJVFkgPSAxNCwKKyAgTkVUX0lQVjRfUk9VVEVfTVRVX0VYUElSRVMgPSAxNSwKKyAgTkVUX0lQVjRfUk9VVEVfTUlOX1BNVFUgPSAxNiwKKyAgTkVUX0lQVjRfUk9VVEVfTUlOX0FEVk1TUyA9IDE3LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjRfUk9VVEVfU0VDUkVUX0lOVEVSVkFMID0gMTgsCisgIE5FVF9JUFY0X1JPVVRFX0dDX01JTl9JTlRFUlZBTF9NUyA9IDE5LAogfTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBERVZfSVBNSV9QT1dFUk9GRl9QT1dFUkNZQ0xFPTEsCisgIE5FVF9QUk9UT19DT05GX0FMTCA9IC0gMiwKKyAgTkVUX1BST1RPX0NPTkZfREVGQVVMVCA9IC0gMwogfTsKLWVudW0KLXsKK2VudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBBQklfREVGSEFORExFUl9DT0ZGPTEsCi0gQUJJX0RFRkhBTkRMRVJfRUxGPTIsCi0gQUJJX0RFRkhBTkRMRVJfTENBTEw3PTMsCi0gQUJJX0RFRkhBTkRMRVJfTElCQ1NPPTQsCisgIE5FVF9JUFY0X0NPTkZfRk9SV0FSRElORyA9IDEsCisgIE5FVF9JUFY0X0NPTkZfTUNfRk9SV0FSRElORyA9IDIsCisgIE5FVF9JUFY0X0NPTkZfUFJPWFlfQVJQID0gMywKKyAgTkVUX0lQVjRfQ09ORl9BQ0NFUFRfUkVESVJFQ1RTID0gNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQUJJX1RSQUNFPTUsCi0gQUJJX0ZBS0VfVVRTTkFNRT02LAorICBORVRfSVBWNF9DT05GX1NFQ1VSRV9SRURJUkVDVFMgPSA1LAorICBORVRfSVBWNF9DT05GX1NFTkRfUkVESVJFQ1RTID0gNiwKKyAgTkVUX0lQVjRfQ09ORl9TSEFSRURfTUVESUEgPSA3LAorICBORVRfSVBWNF9DT05GX1JQX0ZJTFRFUiA9IDgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9DT05GX0FDQ0VQVF9TT1VSQ0VfUk9VVEUgPSA5LAorICBORVRfSVBWNF9DT05GX0JPT1RQX1JFTEFZID0gMTAsCisgIE5FVF9JUFY0X0NPTkZfTE9HX01BUlRJQU5TID0gMTEsCisgIE5FVF9JUFY0X0NPTkZfVEFHID0gMTIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9DT05GX0FSUEZJTFRFUiA9IDEzLAorICBORVRfSVBWNF9DT05GX01FRElVTV9JRCA9IDE0LAorICBORVRfSVBWNF9DT05GX05PWEZSTSA9IDE1LAorICBORVRfSVBWNF9DT05GX05PUE9MSUNZID0gMTYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9DT05GX0ZPUkNFX0lHTVBfVkVSU0lPTiA9IDE3LAorICBORVRfSVBWNF9DT05GX0FSUF9BTk5PVU5DRSA9IDE4LAorICBORVRfSVBWNF9DT05GX0FSUF9JR05PUkUgPSAxOSwKKyAgTkVUX0lQVjRfQ09ORl9QUk9NT1RFX1NFQ09OREFSSUVTID0gMjAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9DT05GX0FSUF9BQ0NFUFQgPSAyMSwKKyAgTkVUX0lQVjRfQ09ORl9BUlBfTk9USUZZID0gMjIsCit9OworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfTUFYID0gMSwKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX1NZTl9TRU5UID0gMiwKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX1NZTl9SRUNWID0gMywKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0VTVEFCTElTSEVEID0gNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9GSU5fV0FJVCA9IDUsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfVElNRU9VVF9DTE9TRV9XQUlUID0gNiwKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX0xBU1RfQUNLID0gNywKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9USU1FT1VUX1RJTUVfV0FJVCA9IDgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfQ0xPU0UgPSA5LAorICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVURQX1RJTUVPVVQgPSAxMCwKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1VEUF9USU1FT1VUX1NUUkVBTSA9IDExLAorICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfSUNNUF9USU1FT1VUID0gMTIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfR0VORVJJQ19USU1FT1VUID0gMTMsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19CVUNLRVRTID0gMTQsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19MT0dfSU5WQUxJRCA9IDE1LAorICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfVENQX1RJTUVPVVRfTUFYX1JFVFJBTlMgPSAxNiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfTE9PU0UgPSAxNywKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1RDUF9CRV9MSUJFUkFMID0gMTgsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19UQ1BfTUFYX1JFVFJBTlMgPSAxOSwKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9DTE9TRUQgPSAyMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfQ09PS0lFX1dBSVQgPSAyMSwKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9DT09LSUVfRUNIT0VEID0gMjIsCisgIE5FVF9JUFY0X05GX0NPTk5UUkFDS19TQ1RQX1RJTUVPVVRfRVNUQUJMSVNIRUQgPSAyMywKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9TSFVURE9XTl9TRU5UID0gMjQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfU0NUUF9USU1FT1VUX1NIVVRET1dOX1JFQ0QgPSAyNSwKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX1NDVFBfVElNRU9VVF9TSFVURE9XTl9BQ0tfU0VOVCA9IDI2LAorICBORVRfSVBWNF9ORl9DT05OVFJBQ0tfQ09VTlQgPSAyNywKKyAgTkVUX0lQVjRfTkZfQ09OTlRSQUNLX0NIRUNLU1VNID0gMjgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK2VudW0geworICBORVRfSVBWNl9DT05GID0gMTYsCisgIE5FVF9JUFY2X05FSUdIID0gMTcsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNl9ST1VURSA9IDE4LAorICBORVRfSVBWNl9JQ01QID0gMTksCisgIE5FVF9JUFY2X0JJTkRWNk9OTFkgPSAyMCwKKyAgTkVUX0lQVjZfSVA2RlJBR19ISUdIX1RIUkVTSCA9IDIxLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjZfSVA2RlJBR19MT1dfVEhSRVNIID0gMjIsCisgIE5FVF9JUFY2X0lQNkZSQUdfVElNRSA9IDIzLAorICBORVRfSVBWNl9JUDZGUkFHX1NFQ1JFVF9JTlRFUlZBTCA9IDI0LAorICBORVRfSVBWNl9NTERfTUFYX01TRiA9IDI1LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIHsKKyAgTkVUX0lQVjZfUk9VVEVfRkxVU0ggPSAxLAorICBORVRfSVBWNl9ST1VURV9HQ19USFJFU0ggPSAyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjZfUk9VVEVfTUFYX1NJWkUgPSAzLAorICBORVRfSVBWNl9ST1VURV9HQ19NSU5fSU5URVJWQUwgPSA0LAorICBORVRfSVBWNl9ST1VURV9HQ19USU1FT1VUID0gNSwKKyAgTkVUX0lQVjZfUk9VVEVfR0NfSU5URVJWQUwgPSA2LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjZfUk9VVEVfR0NfRUxBU1RJQ0lUWSA9IDcsCisgIE5FVF9JUFY2X1JPVVRFX01UVV9FWFBJUkVTID0gOCwKKyAgTkVUX0lQVjZfUk9VVEVfTUlOX0FEVk1TUyA9IDksCisgIE5FVF9JUFY2X1JPVVRFX0dDX01JTl9JTlRFUlZBTF9NUyA9IDEwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK2VudW0geworICBORVRfSVBWNl9GT1JXQVJESU5HID0gMSwKKyAgTkVUX0lQVjZfSE9QX0xJTUlUID0gMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9JUFY2X01UVSA9IDMsCisgIE5FVF9JUFY2X0FDQ0VQVF9SQSA9IDQsCisgIE5FVF9JUFY2X0FDQ0VQVF9SRURJUkVDVFMgPSA1LAorICBORVRfSVBWNl9BVVRPQ09ORiA9IDYsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNl9EQURfVFJBTlNNSVRTID0gNywKKyAgTkVUX0lQVjZfUlRSX1NPTElDSVRTID0gOCwKKyAgTkVUX0lQVjZfUlRSX1NPTElDSVRfSU5URVJWQUwgPSA5LAorICBORVRfSVBWNl9SVFJfU09MSUNJVF9ERUxBWSA9IDEwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjZfVVNFX1RFTVBBRERSID0gMTEsCisgIE5FVF9JUFY2X1RFTVBfVkFMSURfTEZUID0gMTIsCisgIE5FVF9JUFY2X1RFTVBfUFJFRkVSRURfTEZUID0gMTMsCisgIE5FVF9JUFY2X1JFR0VOX01BWF9SRVRSWSA9IDE0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjZfTUFYX0RFU1lOQ19GQUNUT1IgPSAxNSwKKyAgTkVUX0lQVjZfTUFYX0FERFJFU1NFUyA9IDE2LAorICBORVRfSVBWNl9GT1JDRV9NTERfVkVSU0lPTiA9IDE3LAorICBORVRfSVBWNl9BQ0NFUFRfUkFfREVGUlRSID0gMTgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBWNl9BQ0NFUFRfUkFfUElORk8gPSAxOSwKKyAgTkVUX0lQVjZfQUNDRVBUX1JBX1JUUl9QUkVGID0gMjAsCisgIE5FVF9JUFY2X1JUUl9QUk9CRV9JTlRFUlZBTCA9IDIxLAorICBORVRfSVBWNl9BQ0NFUFRfUkFfUlRfSU5GT19NQVhfUExFTiA9IDIyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lQVjZfUFJPWFlfTkRQID0gMjMsCisgIE5FVF9JUFY2X0FDQ0VQVF9TT1VSQ0VfUk9VVEUgPSAyNSwKKyAgTkVUX0lQVjZfQUNDRVBUX1JBX0ZST01fTE9DQUwgPSAyNiwKKyAgX19ORVRfSVBWNl9NQVgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworZW51bSB7CisgIE5FVF9JUFY2X0lDTVBfUkFURUxJTUlUID0gMQorfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIHsKKyAgTkVUX05FSUdIX01DQVNUX1NPTElDSVQgPSAxLAorICBORVRfTkVJR0hfVUNBU1RfU09MSUNJVCA9IDIsCisgIE5FVF9ORUlHSF9BUFBfU09MSUNJVCA9IDMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTkVJR0hfUkVUUkFOU19USU1FID0gNCwKKyAgTkVUX05FSUdIX1JFQUNIQUJMRV9USU1FID0gNSwKKyAgTkVUX05FSUdIX0RFTEFZX1BST0JFX1RJTUUgPSA2LAorICBORVRfTkVJR0hfR0NfU1RBTEVfVElNRSA9IDcsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTkVJR0hfVU5SRVNfUUxFTiA9IDgsCisgIE5FVF9ORUlHSF9QUk9YWV9RTEVOID0gOSwKKyAgTkVUX05FSUdIX0FOWUNBU1RfREVMQVkgPSAxMCwKKyAgTkVUX05FSUdIX1BST1hZX0RFTEFZID0gMTEsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTkVJR0hfTE9DS1RJTUUgPSAxMiwKKyAgTkVUX05FSUdIX0dDX0lOVEVSVkFMID0gMTMsCisgIE5FVF9ORUlHSF9HQ19USFJFU0gxID0gMTQsCisgIE5FVF9ORUlHSF9HQ19USFJFU0gyID0gMTUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfTkVJR0hfR0NfVEhSRVNIMyA9IDE2LAorICBORVRfTkVJR0hfUkVUUkFOU19USU1FX01TID0gMTcsCisgIE5FVF9ORUlHSF9SRUFDSEFCTEVfVElNRV9NUyA9IDE4LAorfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIHsKKyAgTkVUX0RDQ1BfREVGQVVMVCA9IDEsCit9OworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVBYX1BQUk9QX0JST0FEQ0FTVElORyA9IDEsCisgIE5FVF9JUFhfRk9SV0FSRElORyA9IDIKK307CitlbnVtIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9MTEMyID0gMSwKKyAgTkVUX0xMQ19TVEFUSU9OID0gMiwKK307CitlbnVtIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9MTEMyX1RJTUVPVVQgPSAxLAorfTsKK2VudW0geworICBORVRfTExDX1NUQVRJT05fQUNLX1RJTUVPVVQgPSAxLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIHsKKyAgTkVUX0xMQzJfQUNLX1RJTUVPVVQgPSAxLAorICBORVRfTExDMl9QX1RJTUVPVVQgPSAyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0xMQzJfUkVKX1RJTUVPVVQgPSAzLAorICBORVRfTExDMl9CVVNZX1RJTUVPVVQgPSA0LAorfTsKK2VudW0geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0FUQUxLX0FBUlBfRVhQSVJZX1RJTUUgPSAxLAorICBORVRfQVRBTEtfQUFSUF9USUNLX1RJTUUgPSAyLAorICBORVRfQVRBTEtfQUFSUF9SRVRSQU5TTUlUX0xJTUlUID0gMywKKyAgTkVUX0FUQUxLX0FBUlBfUkVTT0xWRV9USU1FID0gNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIHsKKyAgTkVUX05FVFJPTV9ERUZBVUxUX1BBVEhfUVVBTElUWSA9IDEsCisgIE5FVF9ORVRST01fT0JTT0xFU0NFTkNFX0NPVU5UX0lOSVRJQUxJU0VSID0gMiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ORVRST01fTkVUV09SS19UVExfSU5JVElBTElTRVIgPSAzLAorICBORVRfTkVUUk9NX1RSQU5TUE9SVF9USU1FT1VUID0gNCwKKyAgTkVUX05FVFJPTV9UUkFOU1BPUlRfTUFYSU1VTV9UUklFUyA9IDUsCisgIE5FVF9ORVRST01fVFJBTlNQT1JUX0FDS05PV0xFREdFX0RFTEFZID0gNiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ORVRST01fVFJBTlNQT1JUX0JVU1lfREVMQVkgPSA3LAorICBORVRfTkVUUk9NX1RSQU5TUE9SVF9SRVFVRVNURURfV0lORE9XX1NJWkUgPSA4LAorICBORVRfTkVUUk9NX1RSQU5TUE9SVF9OT19BQ1RJVklUWV9USU1FT1VUID0gOSwKKyAgTkVUX05FVFJPTV9ST1VUSU5HX0NPTlRST0wgPSAxMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ORVRST01fTElOS19GQUlMU19DT1VOVCA9IDExLAorICBORVRfTkVUUk9NX1JFU0VUID0gMTIKK307CitlbnVtIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9BWDI1X0lQX0RFRkFVTFRfTU9ERSA9IDEsCisgIE5FVF9BWDI1X0RFRkFVTFRfTU9ERSA9IDIsCisgIE5FVF9BWDI1X0JBQ0tPRkZfVFlQRSA9IDMsCisgIE5FVF9BWDI1X0NPTk5FQ1RfTU9ERSA9IDQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfQVgyNV9TVEFOREFSRF9XSU5ET1cgPSA1LAorICBORVRfQVgyNV9FWFRFTkRFRF9XSU5ET1cgPSA2LAorICBORVRfQVgyNV9UMV9USU1FT1VUID0gNywKKyAgTkVUX0FYMjVfVDJfVElNRU9VVCA9IDgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfQVgyNV9UM19USU1FT1VUID0gOSwKKyAgTkVUX0FYMjVfSURMRV9USU1FT1VUID0gMTAsCisgIE5FVF9BWDI1X04yID0gMTEsCisgIE5FVF9BWDI1X1BBQ0xFTiA9IDEyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0FYMjVfUFJPVE9DT0wgPSAxMywKKyAgTkVUX0FYMjVfREFNQV9TTEFWRV9USU1FT1VUID0gMTQKK307CitlbnVtIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ST1NFX1JFU1RBUlRfUkVRVUVTVF9USU1FT1VUID0gMSwKKyAgTkVUX1JPU0VfQ0FMTF9SRVFVRVNUX1RJTUVPVVQgPSAyLAorICBORVRfUk9TRV9SRVNFVF9SRVFVRVNUX1RJTUVPVVQgPSAzLAorICBORVRfUk9TRV9DTEVBUl9SRVFVRVNUX1RJTUVPVVQgPSA0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX1JPU0VfQUNLX0hPTERfQkFDS19USU1FT1VUID0gNSwKKyAgTkVUX1JPU0VfUk9VVElOR19DT05UUk9MID0gNiwKKyAgTkVUX1JPU0VfTElOS19GQUlMX1RJTUVPVVQgPSA3LAorICBORVRfUk9TRV9NQVhfVkNTID0gOCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ST1NFX1dJTkRPV19TSVpFID0gOSwKKyAgTkVUX1JPU0VfTk9fQUNUSVZJVFlfVElNRU9VVCA9IDEwCit9OworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfWDI1X1JFU1RBUlRfUkVRVUVTVF9USU1FT1VUID0gMSwKKyAgTkVUX1gyNV9DQUxMX1JFUVVFU1RfVElNRU9VVCA9IDIsCisgIE5FVF9YMjVfUkVTRVRfUkVRVUVTVF9USU1FT1VUID0gMywKKyAgTkVUX1gyNV9DTEVBUl9SRVFVRVNUX1RJTUVPVVQgPSA0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX1gyNV9BQ0tfSE9MRF9CQUNLX1RJTUVPVVQgPSA1LAorICBORVRfWDI1X0ZPUldBUkQgPSA2Cit9OworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfVFJfUklGX1RJTUVPVVQgPSAxCit9OworZW51bSB7CisgIE5FVF9ERUNORVRfTk9ERV9UWVBFID0gMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ERUNORVRfTk9ERV9BRERSRVNTID0gMiwKKyAgTkVUX0RFQ05FVF9OT0RFX05BTUUgPSAzLAorICBORVRfREVDTkVUX0RFRkFVTFRfREVWSUNFID0gNCwKKyAgTkVUX0RFQ05FVF9USU1FX1dBSVQgPSA1LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0RFQ05FVF9ETl9DT1VOVCA9IDYsCisgIE5FVF9ERUNORVRfRElfQ09VTlQgPSA3LAorICBORVRfREVDTkVUX0RSX0NPVU5UID0gOCwKKyAgTkVUX0RFQ05FVF9EU1RfR0NfSU5URVJWQUwgPSA5LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0RFQ05FVF9DT05GID0gMTAsCisgIE5FVF9ERUNORVRfTk9fRkNfTUFYX0NXTkQgPSAxMSwKKyAgTkVUX0RFQ05FVF9NRU0gPSAxMiwKKyAgTkVUX0RFQ05FVF9STUVNID0gMTMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfREVDTkVUX1dNRU0gPSAxNCwKKyAgTkVUX0RFQ05FVF9ERUJVR19MRVZFTCA9IDI1NQorfTsKK2VudW0geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0RFQ05FVF9DT05GX0xPT1BCQUNLID0gLSAyLAorICBORVRfREVDTkVUX0NPTkZfRERDTVAgPSAtIDMsCisgIE5FVF9ERUNORVRfQ09ORl9QUFAgPSAtIDQsCisgIE5FVF9ERUNORVRfQ09ORl9YMjUgPSAtIDUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfREVDTkVUX0NPTkZfR1JFID0gLSA2LAorICBORVRfREVDTkVUX0NPTkZfRVRIRVIgPSAtIDcKK307CitlbnVtIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9ERUNORVRfQ09ORl9ERVZfUFJJT1JJVFkgPSAxLAorICBORVRfREVDTkVUX0NPTkZfREVWX1QxID0gMiwKKyAgTkVUX0RFQ05FVF9DT05GX0RFVl9UMiA9IDMsCisgIE5FVF9ERUNORVRfQ09ORl9ERVZfVDMgPSA0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0RFQ05FVF9DT05GX0RFVl9GT1JXQVJESU5HID0gNSwKKyAgTkVUX0RFQ05FVF9DT05GX0RFVl9CTEtTSVpFID0gNiwKKyAgTkVUX0RFQ05FVF9DT05GX0RFVl9TVEFURSA9IDcKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworZW51bSB7CisgIE5FVF9TQ1RQX1JUT19JTklUSUFMID0gMSwKKyAgTkVUX1NDVFBfUlRPX01JTiA9IDIsCisgIE5FVF9TQ1RQX1JUT19NQVggPSAzLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX1NDVFBfUlRPX0FMUEhBID0gNCwKKyAgTkVUX1NDVFBfUlRPX0JFVEEgPSA1LAorICBORVRfU0NUUF9WQUxJRF9DT09LSUVfTElGRSA9IDYsCisgIE5FVF9TQ1RQX0FTU09DSUFUSU9OX01BWF9SRVRSQU5TID0gNywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9TQ1RQX1BBVEhfTUFYX1JFVFJBTlMgPSA4LAorICBORVRfU0NUUF9NQVhfSU5JVF9SRVRSQU5TTUlUUyA9IDksCisgIE5FVF9TQ1RQX0hCX0lOVEVSVkFMID0gMTAsCisgIE5FVF9TQ1RQX1BSRVNFUlZFX0VOQUJMRSA9IDExLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX1NDVFBfTUFYX0JVUlNUID0gMTIsCisgIE5FVF9TQ1RQX0FERElQX0VOQUJMRSA9IDEzLAorICBORVRfU0NUUF9QUlNDVFBfRU5BQkxFID0gMTQsCisgIE5FVF9TQ1RQX1NOREJVRl9QT0xJQ1kgPSAxNSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9TQ1RQX1NBQ0tfVElNRU9VVCA9IDE2LAorICBORVRfU0NUUF9SQ1ZCVUZfUE9MSUNZID0gMTcsCit9OworZW51bSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfQlJJREdFX05GX0NBTExfQVJQVEFCTEVTID0gMSwKKyAgTkVUX0JSSURHRV9ORl9DQUxMX0lQVEFCTEVTID0gMiwKKyAgTkVUX0JSSURHRV9ORl9DQUxMX0lQNlRBQkxFUyA9IDMsCisgIE5FVF9CUklER0VfTkZfRklMVEVSX1ZMQU5fVEFHR0VEID0gNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIE5FVF9CUklER0VfTkZfRklMVEVSX1BQUE9FX1RBR0dFRCA9IDUsCit9OworZW51bSB7CisgIE5FVF9JUkRBX0RJU0NPVkVSWSA9IDEsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVJEQV9ERVZOQU1FID0gMiwKKyAgTkVUX0lSREFfREVCVUcgPSAzLAorICBORVRfSVJEQV9GQVNUX1BPTEwgPSA0LAorICBORVRfSVJEQV9ESVNDT1ZFUllfU0xPVFMgPSA1LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lSREFfRElTQ09WRVJZX1RJTUVPVVQgPSA2LAorICBORVRfSVJEQV9TTE9UX1RJTUVPVVQgPSA3LAorICBORVRfSVJEQV9NQVhfQkFVRF9SQVRFID0gOCwKKyAgTkVUX0lSREFfTUlOX1RYX1RVUk5fVElNRSA9IDksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBORVRfSVJEQV9NQVhfVFhfREFUQV9TSVpFID0gMTAsCisgIE5FVF9JUkRBX01BWF9UWF9XSU5ET1cgPSAxMSwKKyAgTkVUX0lSREFfTUFYX05PUkVQTFlfVElNRSA9IDEyLAorICBORVRfSVJEQV9XQVJOX05PUkVQTFlfVElNRSA9IDEzLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTkVUX0lSREFfTEFQX0tFRVBBTElWRV9USU1FID0gMTQsCit9OworZW51bSB7CisgIEZTX05SSU5PREUgPSAxLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgRlNfU1RBVElOT0RFID0gMiwKKyAgRlNfTUFYSU5PREUgPSAzLAorICBGU19OUkRRVU9UID0gNCwKKyAgRlNfTUFYRFFVT1QgPSA1LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgRlNfTlJGSUxFID0gNiwKKyAgRlNfTUFYRklMRSA9IDcsCisgIEZTX0RFTlRSWSA9IDgsCisgIEZTX05SU1VQRVIgPSA5LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgRlNfTUFYU1VQRVIgPSAxMCwKKyAgRlNfT1ZFUkZMT1dVSUQgPSAxMSwKKyAgRlNfT1ZFUkZMT1dHSUQgPSAxMiwKKyAgRlNfTEVBU0VTID0gMTMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBGU19ESVJfTk9USUZZID0gMTQsCisgIEZTX0xFQVNFX1RJTUUgPSAxNSwKKyAgRlNfRFFTVEFUUyA9IDE2LAorICBGU19YRlMgPSAxNywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEZTX0FJT19OUiA9IDE4LAorICBGU19BSU9fTUFYX05SID0gMTksCisgIEZTX0lOT1RJRlkgPSAyMCwKKyAgRlNfT0NGUzIgPSA5ODgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK2VudW0geworICBGU19EUV9MT09LVVBTID0gMSwKKyAgRlNfRFFfRFJPUFMgPSAyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgRlNfRFFfUkVBRFMgPSAzLAorICBGU19EUV9XUklURVMgPSA0LAorICBGU19EUV9DQUNIRV9ISVRTID0gNSwKKyAgRlNfRFFfQUxMT0NBVEVEID0gNiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIEZTX0RRX0ZSRUUgPSA3LAorICBGU19EUV9TWU5DUyA9IDgsCisgIEZTX0RRX1dBUk5JTkdTID0gOSwKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworZW51bSB7CisgIERFVl9DRFJPTSA9IDEsCisgIERFVl9IV01PTiA9IDIsCisgIERFVl9QQVJQT1JUID0gMywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIERFVl9SQUlEID0gNCwKKyAgREVWX01BQ19ISUQgPSA1LAorICBERVZfU0NTSSA9IDYsCisgIERFVl9JUE1JID0gNywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworZW51bSB7CisgIERFVl9DRFJPTV9JTkZPID0gMSwKKyAgREVWX0NEUk9NX0FVVE9DTE9TRSA9IDIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBERVZfQ0RST01fQVVUT0VKRUNUID0gMywKKyAgREVWX0NEUk9NX0RFQlVHID0gNCwKKyAgREVWX0NEUk9NX0xPQ0sgPSA1LAorICBERVZfQ0RST01fQ0hFQ0tfTUVESUEgPSA2CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK2VudW0geworICBERVZfUEFSUE9SVF9ERUZBVUxUID0gLSAzCit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0geworICBERVZfUkFJRF9TUEVFRF9MSU1JVF9NSU4gPSAxLAorICBERVZfUkFJRF9TUEVFRF9MSU1JVF9NQVggPSAyCit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0geworICBERVZfUEFSUE9SVF9ERUZBVUxUX1RJTUVTTElDRSA9IDEsCisgIERFVl9QQVJQT1JUX0RFRkFVTFRfU1BJTlRJTUUgPSAyCit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0geworICBERVZfUEFSUE9SVF9TUElOVElNRSA9IDEsCisgIERFVl9QQVJQT1JUX0JBU0VfQUREUiA9IDIsCisgIERFVl9QQVJQT1JUX0lSUSA9IDMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBERVZfUEFSUE9SVF9ETUEgPSA0LAorICBERVZfUEFSUE9SVF9NT0RFUyA9IDUsCisgIERFVl9QQVJQT1JUX0RFVklDRVMgPSA2LAorICBERVZfUEFSUE9SVF9BVVRPUFJPQkUgPSAxNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIHsKKyAgREVWX1BBUlBPUlRfREVWSUNFU19BQ1RJVkUgPSAtIDMsCit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0geworICBERVZfUEFSUE9SVF9ERVZJQ0VfVElNRVNMSUNFID0gMSwKK307CitlbnVtIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIERFVl9NQUNfSElEX0tFWUJPQVJEX1NFTkRTX0xJTlVYX0tFWUNPREVTID0gMSwKKyAgREVWX01BQ19ISURfS0VZQk9BUkRfTE9DS19LRVlDT0RFUyA9IDIsCisgIERFVl9NQUNfSElEX01PVVNFX0JVVFRPTl9FTVVMQVRJT04gPSAzLAorICBERVZfTUFDX0hJRF9NT1VTRV9CVVRUT04yX0tFWUNPREUgPSA0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgREVWX01BQ19ISURfTU9VU0VfQlVUVE9OM19LRVlDT0RFID0gNSwKKyAgREVWX01BQ19ISURfQURCX01PVVNFX1NFTkRTX0tFWUNPREVTID0gNgorfTsKK2VudW0geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgREVWX1NDU0lfTE9HR0lOR19MRVZFTCA9IDEsCit9OworZW51bSB7CisgIERFVl9JUE1JX1BPV0VST0ZGX1BPV0VSQ1lDTEUgPSAxLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitlbnVtIHsKKyAgQUJJX0RFRkhBTkRMRVJfQ09GRiA9IDEsCisgIEFCSV9ERUZIQU5ETEVSX0VMRiA9IDIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBBQklfREVGSEFORExFUl9MQ0FMTDcgPSAzLAorICBBQklfREVGSEFORExFUl9MSUJDU08gPSA0LAorICBBQklfVFJBQ0UgPSA1LAorICBBQklfRkFLRV9VVFNOQU1FID0gNiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC9zeXNpbmZvLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N5c2luZm8uaAppbmRleCBjNzJmNDExLi43NWM2NzY5IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N5c2luZm8uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3N5c2luZm8uaApAQCAtMjIsMjMgKzIyLDIzIEBACiAjZGVmaW5lIFNJX0xPQURfU0hJRlQgMTYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc3lzaW5mbyB7Ci0gX19rZXJuZWxfbG9uZ190IHVwdGltZTsKLSBfX2tlcm5lbF91bG9uZ190IGxvYWRzWzNdOwotIF9fa2VybmVsX3Vsb25nX3QgdG90YWxyYW07CisgIF9fa2VybmVsX2xvbmdfdCB1cHRpbWU7CisgIF9fa2VybmVsX3Vsb25nX3QgbG9hZHNbM107CisgIF9fa2VybmVsX3Vsb25nX3QgdG90YWxyYW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3Vsb25nX3QgZnJlZXJhbTsKLSBfX2tlcm5lbF91bG9uZ190IHNoYXJlZHJhbTsKLSBfX2tlcm5lbF91bG9uZ190IGJ1ZmZlcnJhbTsKLSBfX2tlcm5lbF91bG9uZ190IHRvdGFsc3dhcDsKKyAgX19rZXJuZWxfdWxvbmdfdCBmcmVlcmFtOworICBfX2tlcm5lbF91bG9uZ190IHNoYXJlZHJhbTsKKyAgX19rZXJuZWxfdWxvbmdfdCBidWZmZXJyYW07CisgIF9fa2VybmVsX3Vsb25nX3QgdG90YWxzd2FwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF91bG9uZ190IGZyZWVzd2FwOwotIF9fdTE2IHByb2NzOwotIF9fdTE2IHBhZDsKLSBfX2tlcm5lbF91bG9uZ190IHRvdGFsaGlnaDsKKyAgX19rZXJuZWxfdWxvbmdfdCBmcmVlc3dhcDsKKyAgX191MTYgcHJvY3M7CisgIF9fdTE2IHBhZDsKKyAgX19rZXJuZWxfdWxvbmdfdCB0b3RhbGhpZ2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3Vsb25nX3QgZnJlZWhpZ2g7Ci0gX191MzIgbWVtX3VuaXQ7Ci0gY2hhciBfZlsyMC0yKnNpemVvZihfX2tlcm5lbF91bG9uZ190KS1zaXplb2YoX191MzIpXTsKKyAgX19rZXJuZWxfdWxvbmdfdCBmcmVlaGlnaDsKKyAgX191MzIgbWVtX3VuaXQ7CisgIGNoYXIgX2ZbMjAgLSAyICogc2l6ZW9mKF9fa2VybmVsX3Vsb25nX3QpIC0gc2l6ZW9mKF9fdTMyKV07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90YXJnZXRfY29yZV91c2VyLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RhcmdldF9jb3JlX3VzZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZTBjZjQzCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90YXJnZXRfY29yZV91c2VyLmgKQEAgLTAsMCArMSw5MSBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqCisgKioqICAgVGhpcyBoZWFkZXIgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gYSBMaW51eCBrZXJuZWwgaGVhZGVyCisgKioqICAgb2YgdGhlIHNhbWUgbmFtZSwgdG8gbWFrZSBpbmZvcm1hdGlvbiBuZWNlc3NhcnkgZm9yIHVzZXJzcGFjZSB0bworICoqKiAgIGNhbGwgaW50byB0aGUga2VybmVsIGF2YWlsYWJsZSB0byBsaWJjLiAgSXQgY29udGFpbnMgb25seSBjb25zdGFudHMsCisgKioqICAgc3RydWN0dXJlcywgYW5kIG1hY3JvcyBnZW5lcmF0ZWQgZnJvbSB0aGUgb3JpZ2luYWwgaGVhZGVyLCBhbmQgdGh1cywKKyAqKiogICBjb250YWlucyBubyBjb3B5cmlnaHRhYmxlIGluZm9ybWF0aW9uLgorICoqKgorICoqKiAgIFRvIGVkaXQgdGhlIGNvbnRlbnQgb2YgdGhpcyBoZWFkZXIsIG1vZGlmeSB0aGUgY29ycmVzcG9uZGluZworICoqKiAgIHNvdXJjZSBmaWxlIChlLmcuIHVuZGVyIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzL29yaWdpbmFsLykgdGhlbgorICoqKiAgIHJ1biBiaW9uaWMvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorICoqKgorICoqKiAgIEFueSBtYW51YWwgY2hhbmdlIGhlcmUgd2lsbCBiZSBsb3N0IHRoZSBuZXh0IHRpbWUgdGhpcyBzY3JpcHQgd2lsbAorICoqKiAgIGJlIHJ1bi4gWW91J3ZlIGJlZW4gd2FybmVkIQorICoqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfX1RBUkdFVF9DT1JFX1VTRVJfSAorI2RlZmluZSBfX1RBUkdFVF9DT1JFX1VTRVJfSAorI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CisjaW5jbHVkZSA8bGludXgvdWlvLmg+CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUQ01VX1ZFUlNJT04gIjEuMCIKKyNkZWZpbmUgVENNVV9NQUlMQk9YX1ZFUlNJT04gMQorI2RlZmluZSBBTElHTl9TSVpFIDY0CitzdHJ1Y3QgdGNtdV9tYWlsYm94IHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IHZlcnNpb247CisgIF9fdTE2IGZsYWdzOworICBfX3UzMiBjbWRyX29mZjsKKyAgX191MzIgY21kcl9zaXplOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgY21kX2hlYWQ7CisgIF9fdTMyIGNtZF90YWlsIF9fYXR0cmlidXRlX18oKF9fYWxpZ25lZF9fKEFMSUdOX1NJWkUpKSk7Cit9IF9fcGFja2VkOworZW51bSB0Y211X29wY29kZSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBUQ01VX09QX1BBRCA9IDAsCisgIFRDTVVfT1BfQ01ELAorfTsKK3N0cnVjdCB0Y211X2NtZF9lbnRyeV9oZHIgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgbGVuX29wOworfSBfX3BhY2tlZDsKKyNkZWZpbmUgVENNVV9PUF9NQVNLIDB4NworI2RlZmluZSBUQ01VX1NFTlNFX0JVRkZFUlNJWkUgOTYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgdGNtdV9jbWRfZW50cnkgeworICBzdHJ1Y3QgdGNtdV9jbWRfZW50cnlfaGRyIGhkcjsKKyAgdWludDE2X3QgY21kX2lkOworICB1aW50MTZfdCBfX3BhZDE7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIHVpbnQ2NF90IGNkYl9vZmY7CisgICAgICB1aW50NjRfdCBpb3ZfY250OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICAgIHN0cnVjdCBpb3ZlYyBpb3ZbMF07CisgICAgfSByZXE7CisgICAgc3RydWN0IHsKKyAgICAgIHVpbnQ4X3Qgc2NzaV9zdGF0dXM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgICAgdWludDhfdCBfX3BhZDE7CisgICAgICB1aW50MTZfdCBfX3BhZDI7CisgICAgICB1aW50MzJfdCBfX3BhZDM7CisgICAgICBjaGFyIHNlbnNlX2J1ZmZlcltUQ01VX1NFTlNFX0JVRkZFUlNJWkVdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICB9IHJzcDsKKyAgfTsKK30gX19wYWNrZWQ7CisjZGVmaW5lIFRDTVVfT1BfQUxJR05fU0laRSBzaXplb2YodWludDY0X3QpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworZW51bSB0Y211X2dlbmxfY21kIHsKKyAgVENNVV9DTURfVU5TUEVDLAorICBUQ01VX0NNRF9BRERFRF9ERVZJQ0UsCisgIFRDTVVfQ01EX1JFTU9WRURfREVWSUNFLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19UQ01VX0NNRF9NQVgsCit9OworI2RlZmluZSBUQ01VX0NNRF9NQVggKF9fVENNVV9DTURfTUFYIC0gMSkKK2VudW0gdGNtdV9nZW5sX2F0dHIgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVENNVV9BVFRSX1VOU1BFQywKKyAgVENNVV9BVFRSX0RFVklDRSwKKyAgVENNVV9BVFRSX01JTk9SLAorICBfX1RDTVVfQVRUUl9NQVgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKKyNkZWZpbmUgVENNVV9BVFRSX01BWCAoX19UQ01VX0FUVFJfTUFYIC0gMSkKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90YXNrc3RhdHMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGFza3N0YXRzLmgKaW5kZXggZmQ3ZTllZC4uMjk4ZWJmMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90YXNrc3RhdHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Rhc2tzdGF0cy5oCkBAIC0yMyw5MyArMjMsOTMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRTX0NPTU1fTEVOIDMyCiBzdHJ1Y3QgdGFza3N0YXRzIHsKLSBfX3UxNiB2ZXJzaW9uOwotIF9fdTMyIGFjX2V4aXRjb2RlOworICBfX3UxNiB2ZXJzaW9uOworICBfX3UzMiBhY19leGl0Y29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBhY19mbGFnOwotIF9fdTggYWNfbmljZTsKLSBfX3U2NCBjcHVfY291bnQgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwotIF9fdTY0IGNwdV9kZWxheV90b3RhbDsKKyAgX191OCBhY19mbGFnOworICBfX3U4IGFjX25pY2U7CisgIF9fdTY0IGNwdV9jb3VudCBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgIF9fdTY0IGNwdV9kZWxheV90b3RhbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgYmxraW9fY291bnQ7Ci0gX191NjQgYmxraW9fZGVsYXlfdG90YWw7Ci0gX191NjQgc3dhcGluX2NvdW50OwotIF9fdTY0IHN3YXBpbl9kZWxheV90b3RhbDsKKyAgX191NjQgYmxraW9fY291bnQ7CisgIF9fdTY0IGJsa2lvX2RlbGF5X3RvdGFsOworICBfX3U2NCBzd2FwaW5fY291bnQ7CisgIF9fdTY0IHN3YXBpbl9kZWxheV90b3RhbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgY3B1X3J1bl9yZWFsX3RvdGFsOwotIF9fdTY0IGNwdV9ydW5fdmlydHVhbF90b3RhbDsKLSBjaGFyIGFjX2NvbW1bVFNfQ09NTV9MRU5dOwotIF9fdTggYWNfc2NoZWQgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICBfX3U2NCBjcHVfcnVuX3JlYWxfdG90YWw7CisgIF9fdTY0IGNwdV9ydW5fdmlydHVhbF90b3RhbDsKKyAgY2hhciBhY19jb21tW1RTX0NPTU1fTEVOXTsKKyAgX191OCBhY19zY2hlZCBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYWNfcGFkWzNdOwotIF9fdTMyIGFjX3VpZCBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7Ci0gX191MzIgYWNfZ2lkOwotIF9fdTMyIGFjX3BpZDsKKyAgX191OCBhY19wYWRbM107CisgIF9fdTMyIGFjX3VpZCBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgIF9fdTMyIGFjX2dpZDsKKyAgX191MzIgYWNfcGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhY19wcGlkOwotIF9fdTMyIGFjX2J0aW1lOwotIF9fdTY0IGFjX2V0aW1lIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKLSBfX3U2NCBhY191dGltZTsKKyAgX191MzIgYWNfcHBpZDsKKyAgX191MzIgYWNfYnRpbWU7CisgIF9fdTY0IGFjX2V0aW1lIF9fYXR0cmlidXRlX18oKGFsaWduZWQoOCkpKTsKKyAgX191NjQgYWNfdXRpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGFjX3N0aW1lOwotIF9fdTY0IGFjX21pbmZsdDsKLSBfX3U2NCBhY19tYWpmbHQ7Ci0gX191NjQgY29yZW1lbTsKKyAgX191NjQgYWNfc3RpbWU7CisgIF9fdTY0IGFjX21pbmZsdDsKKyAgX191NjQgYWNfbWFqZmx0OworICBfX3U2NCBjb3JlbWVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB2aXJ0bWVtOwotIF9fdTY0IGhpd2F0ZXJfcnNzOwotIF9fdTY0IGhpd2F0ZXJfdm07Ci0gX191NjQgcmVhZF9jaGFyOworICBfX3U2NCB2aXJ0bWVtOworICBfX3U2NCBoaXdhdGVyX3JzczsKKyAgX191NjQgaGl3YXRlcl92bTsKKyAgX191NjQgcmVhZF9jaGFyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB3cml0ZV9jaGFyOwotIF9fdTY0IHJlYWRfc3lzY2FsbHM7Ci0gX191NjQgd3JpdGVfc3lzY2FsbHM7CisgIF9fdTY0IHdyaXRlX2NoYXI7CisgIF9fdTY0IHJlYWRfc3lzY2FsbHM7CisgIF9fdTY0IHdyaXRlX3N5c2NhbGxzOwogI2RlZmluZSBUQVNLU1RBVFNfSEFTX0lPX0FDQ09VTlRJTkcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVhZF9ieXRlczsKLSBfX3U2NCB3cml0ZV9ieXRlczsKLSBfX3U2NCBjYW5jZWxsZWRfd3JpdGVfYnl0ZXM7Ci0gX191NjQgbnZjc3c7CisgIF9fdTY0IHJlYWRfYnl0ZXM7CisgIF9fdTY0IHdyaXRlX2J5dGVzOworICBfX3U2NCBjYW5jZWxsZWRfd3JpdGVfYnl0ZXM7CisgIF9fdTY0IG52Y3N3OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBuaXZjc3c7Ci0gX191NjQgYWNfdXRpbWVzY2FsZWQ7Ci0gX191NjQgYWNfc3RpbWVzY2FsZWQ7Ci0gX191NjQgY3B1X3NjYWxlZF9ydW5fcmVhbF90b3RhbDsKKyAgX191NjQgbml2Y3N3OworICBfX3U2NCBhY191dGltZXNjYWxlZDsKKyAgX191NjQgYWNfc3RpbWVzY2FsZWQ7CisgIF9fdTY0IGNwdV9zY2FsZWRfcnVuX3JlYWxfdG90YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGZyZWVwYWdlc19jb3VudDsKLSBfX3U2NCBmcmVlcGFnZXNfZGVsYXlfdG90YWw7CisgIF9fdTY0IGZyZWVwYWdlc19jb3VudDsKKyAgX191NjQgZnJlZXBhZ2VzX2RlbGF5X3RvdGFsOwogfTsKIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQVNLU1RBVFNfQ01EX1VOU1BFQyA9IDAsCi0gVEFTS1NUQVRTX0NNRF9HRVQsCi0gVEFTS1NUQVRTX0NNRF9ORVcsCi0gX19UQVNLU1RBVFNfQ01EX01BWCwKKyAgVEFTS1NUQVRTX0NNRF9VTlNQRUMgPSAwLAorICBUQVNLU1RBVFNfQ01EX0dFVCwKKyAgVEFTS1NUQVRTX0NNRF9ORVcsCisgIF9fVEFTS1NUQVRTX0NNRF9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVEFTS1NUQVRTX0NNRF9NQVggKF9fVEFTS1NUQVRTX0NNRF9NQVggLSAxKQogZW51bSB7Ci0gVEFTS1NUQVRTX1RZUEVfVU5TUEVDID0gMCwKKyAgVEFTS1NUQVRTX1RZUEVfVU5TUEVDID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVEFTS1NUQVRTX1RZUEVfUElELAotIFRBU0tTVEFUU19UWVBFX1RHSUQsCi0gVEFTS1NUQVRTX1RZUEVfU1RBVFMsCi0gVEFTS1NUQVRTX1RZUEVfQUdHUl9QSUQsCisgIFRBU0tTVEFUU19UWVBFX1BJRCwKKyAgVEFTS1NUQVRTX1RZUEVfVEdJRCwKKyAgVEFTS1NUQVRTX1RZUEVfU1RBVFMsCisgIFRBU0tTVEFUU19UWVBFX0FHR1JfUElELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQVNLU1RBVFNfVFlQRV9BR0dSX1RHSUQsCi0gVEFTS1NUQVRTX1RZUEVfTlVMTCwKLSBfX1RBU0tTVEFUU19UWVBFX01BWCwKKyAgVEFTS1NUQVRTX1RZUEVfQUdHUl9UR0lELAorICBUQVNLU1RBVFNfVFlQRV9OVUxMLAorICBfX1RBU0tTVEFUU19UWVBFX01BWCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQVNLU1RBVFNfVFlQRV9NQVggKF9fVEFTS1NUQVRTX1RZUEVfTUFYIC0gMSkKIGVudW0gewotIFRBU0tTVEFUU19DTURfQVRUUl9VTlNQRUMgPSAwLAotIFRBU0tTVEFUU19DTURfQVRUUl9QSUQsCisgIFRBU0tTVEFUU19DTURfQVRUUl9VTlNQRUMgPSAwLAorICBUQVNLU1RBVFNfQ01EX0FUVFJfUElELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQVNLU1RBVFNfQ01EX0FUVFJfVEdJRCwKLSBUQVNLU1RBVFNfQ01EX0FUVFJfUkVHSVNURVJfQ1BVTUFTSywKLSBUQVNLU1RBVFNfQ01EX0FUVFJfREVSRUdJU1RFUl9DUFVNQVNLLAotIF9fVEFTS1NUQVRTX0NNRF9BVFRSX01BWCwKKyAgVEFTS1NUQVRTX0NNRF9BVFRSX1RHSUQsCisgIFRBU0tTVEFUU19DTURfQVRUUl9SRUdJU1RFUl9DUFVNQVNLLAorICBUQVNLU1RBVFNfQ01EX0FUVFJfREVSRUdJU1RFUl9DUFVNQVNLLAorICBfX1RBU0tTVEFUU19DTURfQVRUUl9NQVgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVEFTS1NUQVRTX0NNRF9BVFRSX01BWCAoX19UQVNLU1RBVFNfQ01EX0FUVFJfTUFYIC0gMSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX2NzdW0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX2NzdW0uaAppbmRleCA4ODllZGE4Li44M2MwMGI2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19jc3VtLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfY3N1bS5oCkBAIC0yMywyNyArMjMsMjcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDQV9BQ1RfQ1NVTSAxNgogZW51bSB7Ci0gVENBX0NTVU1fVU5TUEVDLAotIFRDQV9DU1VNX1BBUk1TLAorICBUQ0FfQ1NVTV9VTlNQRUMsCisgIFRDQV9DU1VNX1BBUk1TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfQ1NVTV9UTSwKLSBfX1RDQV9DU1VNX01BWAorICBUQ0FfQ1NVTV9UTSwKKyAgX19UQ0FfQ1NVTV9NQVgKIH07CiAjZGVmaW5lIFRDQV9DU1VNX01BWCAoX19UQ0FfQ1NVTV9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFRDQV9DU1VNX1VQREFURV9GTEFHX0lQVjRIRFIgPSAxLAotIFRDQV9DU1VNX1VQREFURV9GTEFHX0lDTVAgPSAyLAotIFRDQV9DU1VNX1VQREFURV9GTEFHX0lHTVAgPSA0LAorICBUQ0FfQ1NVTV9VUERBVEVfRkxBR19JUFY0SERSID0gMSwKKyAgVENBX0NTVU1fVVBEQVRFX0ZMQUdfSUNNUCA9IDIsCisgIFRDQV9DU1VNX1VQREFURV9GTEFHX0lHTVAgPSA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfQ1NVTV9VUERBVEVfRkxBR19UQ1AgPSA4LAotIFRDQV9DU1VNX1VQREFURV9GTEFHX1VEUCA9IDE2LAotIFRDQV9DU1VNX1VQREFURV9GTEFHX1VEUExJVEUgPSAzMgorICBUQ0FfQ1NVTV9VUERBVEVfRkxBR19UQ1AgPSA4LAorICBUQ0FfQ1NVTV9VUERBVEVfRkxBR19VRFAgPSAxNiwKKyAgVENBX0NTVU1fVVBEQVRFX0ZMQUdfVURQTElURSA9IDMyCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y19jc3VtIHsKLSB0Y19nZW47Ci0gX191MzIgdXBkYXRlX2ZsYWdzOworICB0Y19nZW47CisgIF9fdTMyIHVwZGF0ZV9mbGFnczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19kZWZhY3QuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX2RlZmFjdC5oCmluZGV4IDQ0NTRkZmMuLmI5NmJjZDUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX2RlZmFjdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX2RlZmFjdC5oCkBAIC0yMSwxNSArMjEsMTUgQEAKICNpbmNsdWRlIDxsaW51eC9wa3RfY2xzLmg+CiBzdHJ1Y3QgdGNfZGVmYWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdGNfZ2VuOworICB0Y19nZW47CiB9OwogZW51bSB7Ci0gVENBX0RFRl9VTlNQRUMsCisgIFRDQV9ERUZfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfREVGX1RNLAotIFRDQV9ERUZfUEFSTVMsCi0gVENBX0RFRl9EQVRBLAotIF9fVENBX0RFRl9NQVgKKyAgVENBX0RFRl9UTSwKKyAgVENBX0RFRl9QQVJNUywKKyAgVENBX0RFRl9EQVRBLAorICBfX1RDQV9ERUZfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVENBX0RFRl9NQVggKF9fVENBX0RFRl9NQVggLSAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfZ2FjdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfZ2FjdC5oCmluZGV4IDkwNTM4ZTEuLjE4MTUyZTIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX2dhY3QuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19nYWN0LmgKQEAgLTIzLDcgKzIzLDcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDQV9BQ1RfR0FDVCA1CiBzdHJ1Y3QgdGNfZ2FjdCB7Ci0gdGNfZ2VuOworICB0Y19nZW47CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y19nYWN0X3AgewpAQCAtMzEsMTkgKzMxLDE5IEBACiAjZGVmaW5lIFBHQUNUX05FVFJBTkQgMQogI2RlZmluZSBQR0FDVF9ERVRFUk0gMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgTUFYX1JBTkQgKFBHQUNUX0RFVEVSTSArIDEgKQotIF9fdTE2IHB0eXBlOwotIF9fdTE2IHB2YWw7Ci0gaW50IHBhY3Rpb247CisjZGVmaW5lIE1BWF9SQU5EIChQR0FDVF9ERVRFUk0gKyAxKQorICBfX3UxNiBwdHlwZTsKKyAgX191MTYgcHZhbDsKKyAgaW50IHBhY3Rpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFRDQV9HQUNUX1VOU1BFQywKLSBUQ0FfR0FDVF9UTSwKKyAgVENBX0dBQ1RfVU5TUEVDLAorICBUQ0FfR0FDVF9UTSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0dBQ1RfUEFSTVMsCi0gVENBX0dBQ1RfUFJPQiwKLSBfX1RDQV9HQUNUX01BWAorICBUQ0FfR0FDVF9QQVJNUywKKyAgVENBX0dBQ1RfUFJPQiwKKyAgX19UQ0FfR0FDVF9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0FfR0FDVF9NQVggKF9fVENBX0dBQ1RfTUFYIC0gMSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX2lwdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfaXB0LmgKaW5kZXggMDBiODhiOC4uMTBiODgwNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfaXB0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfaXB0LmgKQEAgLTIzLDE2ICsyMywxNiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX0FDVF9YVCAxMAogZW51bSB7Ci0gVENBX0lQVF9VTlNQRUMsCi0gVENBX0lQVF9UQUJMRSwKKyAgVENBX0lQVF9VTlNQRUMsCisgIFRDQV9JUFRfVEFCTEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9JUFRfSE9PSywKLSBUQ0FfSVBUX0lOREVYLAotIFRDQV9JUFRfQ05ULAotIFRDQV9JUFRfVE0sCisgIFRDQV9JUFRfSE9PSywKKyAgVENBX0lQVF9JTkRFWCwKKyAgVENBX0lQVF9DTlQsCisgIFRDQV9JUFRfVE0sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9JUFRfVEFSRywKLSBfX1RDQV9JUFRfTUFYCisgIFRDQV9JUFRfVEFSRywKKyAgX19UQ0FfSVBUX01BWAogfTsKICNkZWZpbmUgVENBX0lQVF9NQVggKF9fVENBX0lQVF9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX21pcnJlZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfbWlycmVkLmgKaW5kZXggZDk4MmIzMi4uOTgzY2U5MiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfbWlycmVkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfbWlycmVkLmgKQEAgLTI4LDE3ICsyOCwxNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX0lOR1JFU1NfTUlSUk9SIDQKIHN0cnVjdCB0Y19taXJyZWQgewotIHRjX2dlbjsKLSBpbnQgZWFjdGlvbjsKKyAgdGNfZ2VuOworICBpbnQgZWFjdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWZpbmRleDsKKyAgX191MzIgaWZpbmRleDsKIH07CiBlbnVtIHsKLSBUQ0FfTUlSUkVEX1VOU1BFQywKKyAgVENBX01JUlJFRF9VTlNQRUMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDQV9NSVJSRURfVE0sCi0gVENBX01JUlJFRF9QQVJNUywKLSBfX1RDQV9NSVJSRURfTUFYCisgIFRDQV9NSVJSRURfVE0sCisgIFRDQV9NSVJSRURfUEFSTVMsCisgIF9fVENBX01JUlJFRF9NQVgKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0FfTUlSUkVEX01BWCAoX19UQ0FfTUlSUkVEX01BWCAtIDEpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19uYXQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX25hdC5oCmluZGV4IGY4ZGFkZjMuLmU4MTJkNTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX25hdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX25hdC5oCkBAIC0yMywyMiArMjMsMjIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDQV9BQ1RfTkFUIDkKIGVudW0gewotIFRDQV9OQVRfVU5TUEVDLAotIFRDQV9OQVRfUEFSTVMsCisgIFRDQV9OQVRfVU5TUEVDLAorICBUQ0FfTkFUX1BBUk1TLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfTkFUX1RNLAotIF9fVENBX05BVF9NQVgKKyAgVENBX05BVF9UTSwKKyAgX19UQ0FfTkFUX01BWAogfTsKICNkZWZpbmUgVENBX05BVF9NQVggKF9fVENBX05BVF9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX05BVF9GTEFHX0VHUkVTUyAxCiBzdHJ1Y3QgdGNfbmF0IHsKLSB0Y19nZW47Ci0gX19iZTMyIG9sZF9hZGRyOworICB0Y19nZW47CisgIF9fYmUzMiBvbGRfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIG5ld19hZGRyOwotIF9fYmUzMiBtYXNrOwotIF9fdTMyIGZsYWdzOworICBfX2JlMzIgbmV3X2FkZHI7CisgIF9fYmUzMiBtYXNrOworICBfX3UzMiBmbGFnczsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19wZWRpdC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfcGVkaXQuaAppbmRleCBiYWU1ZmUwLi40YTE3MjFhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19wZWRpdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX3BlZGl0LmgKQEAgLTIzLDMwICsyMywzMCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENBX0FDVF9QRURJVCA3CiBlbnVtIHsKLSBUQ0FfUEVESVRfVU5TUEVDLAotIFRDQV9QRURJVF9UTSwKKyAgVENBX1BFRElUX1VOU1BFQywKKyAgVENBX1BFRElUX1RNLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0FfUEVESVRfUEFSTVMsCi0gX19UQ0FfUEVESVRfTUFYCisgIFRDQV9QRURJVF9QQVJNUywKKyAgX19UQ0FfUEVESVRfTUFYCiB9OwogI2RlZmluZSBUQ0FfUEVESVRfTUFYIChfX1RDQV9QRURJVF9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y19wZWRpdF9rZXkgewotIF9fdTMyIG1hc2s7Ci0gX191MzIgdmFsOwotIF9fdTMyIG9mZjsKKyAgX191MzIgbWFzazsKKyAgX191MzIgdmFsOworICBfX3UzMiBvZmY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGF0OwotIF9fdTMyIG9mZm1hc2s7Ci0gX191MzIgc2hpZnQ7CisgIF9fdTMyIGF0OworICBfX3UzMiBvZmZtYXNrOworICBfX3UzMiBzaGlmdDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjX3BlZGl0X3NlbCB7Ci0gdGNfZ2VuOwotIHVuc2lnbmVkIGNoYXIgbmtleXM7Ci0gdW5zaWduZWQgY2hhciBmbGFnczsKKyAgdGNfZ2VuOworICB1bnNpZ25lZCBjaGFyIG5rZXlzOworICB1bnNpZ25lZCBjaGFyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdGNfcGVkaXRfa2V5IGtleXNbMF07CisgIHN0cnVjdCB0Y19wZWRpdF9rZXkga2V5c1swXTsKIH07CiAjZGVmaW5lIHRjX3BlZGl0IHRjX3BlZGl0X3NlbAogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19za2JlZGl0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2FjdC90Y19za2JlZGl0LmgKaW5kZXggM2ZmYWMwNS4uNzNmZDNhOSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19hY3QvdGNfc2tiZWRpdC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfYWN0L3RjX3NrYmVkaXQuaApAQCAtMjYsMTggKzI2LDE4IEBACiAjZGVmaW5lIFNLQkVESVRfRl9NQVJLIDB4NAogc3RydWN0IHRjX3NrYmVkaXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB0Y19nZW47CisgIHRjX2dlbjsKIH07CiBlbnVtIHsKLSBUQ0FfU0tCRURJVF9VTlNQRUMsCisgIFRDQV9TS0JFRElUX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1NLQkVESVRfVE0sCi0gVENBX1NLQkVESVRfUEFSTVMsCi0gVENBX1NLQkVESVRfUFJJT1JJVFksCi0gVENBX1NLQkVESVRfUVVFVUVfTUFQUElORywKKyAgVENBX1NLQkVESVRfVE0sCisgIFRDQV9TS0JFRElUX1BBUk1TLAorICBUQ0FfU0tCRURJVF9QUklPUklUWSwKKyAgVENBX1NLQkVESVRfUVVFVUVfTUFQUElORywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX1NLQkVESVRfTUFSSywKLSBfX1RDQV9TS0JFRElUX01BWAorICBUQ0FfU0tCRURJVF9NQVJLLAorICBfX1RDQV9TS0JFRElUX01BWAogfTsKICNkZWZpbmUgVENBX1NLQkVESVRfTUFYIChfX1RDQV9TS0JFRElUX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19lbWF0Y2gvdGNfZW1fY21wLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2VtYXRjaC90Y19lbV9jbXAuaAppbmRleCA4MDMyZTBmLi5kNTQ1ZGFlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2VtYXRjaC90Y19lbV9jbXAuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2VtYXRjaC90Y19lbV9jbXAuaApAQCAtMjIsMjEgKzIyLDIxIEBACiAjaW5jbHVkZSA8bGludXgvcGt0X2Nscy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y2ZfZW1fY21wIHsKLSBfX3UzMiB2YWw7Ci0gX191MzIgbWFzazsKLSBfX3UxNiBvZmY7CisgIF9fdTMyIHZhbDsKKyAgX191MzIgbWFzazsKKyAgX191MTYgb2ZmOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGFsaWduOjQ7Ci0gX191OCBmbGFnczo0OwotIF9fdTggbGF5ZXI6NDsKLSBfX3U4IG9wbmQ6NDsKKyAgX191OCBhbGlnbiA6IDQ7CisgIF9fdTggZmxhZ3MgOiA0OworICBfX3U4IGxheWVyIDogNDsKKyAgX191OCBvcG5kIDogNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gVENGX0VNX0FMSUdOX1U4ID0gMSwKLSBUQ0ZfRU1fQUxJR05fVTE2ID0gMiwKKyAgVENGX0VNX0FMSUdOX1U4ID0gMSwKKyAgVENGX0VNX0FMSUdOX1UxNiA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDRl9FTV9BTElHTl9VMzIgPSA0CisgIFRDRl9FTV9BTElHTl9VMzIgPSA0CiB9OwogI2RlZmluZSBUQ0ZfRU1fQ01QX1RSQU5TIDEKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19lbWF0Y2gvdGNfZW1fbWV0YS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19lbWF0Y2gvdGNfZW1fbWV0YS5oCmluZGV4IGUwN2UzYjMuLjExYTFkNzIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfZW1hdGNoL3RjX2VtX21ldGEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2VtYXRjaC90Y19lbV9tZXRhLmgKQEAgLTIyLDE5ICsyMiwxOSBAQAogI2luY2x1ZGUgPGxpbnV4L3BrdF9jbHMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBUQ0FfRU1fTUVUQV9VTlNQRUMsCi0gVENBX0VNX01FVEFfSERSLAotIFRDQV9FTV9NRVRBX0xWQUxVRSwKKyAgVENBX0VNX01FVEFfVU5TUEVDLAorICBUQ0FfRU1fTUVUQV9IRFIsCisgIFRDQV9FTV9NRVRBX0xWQUxVRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENBX0VNX01FVEFfUlZBTFVFLAotIF9fVENBX0VNX01FVEFfTUFYCisgIFRDQV9FTV9NRVRBX1JWQUxVRSwKKyAgX19UQ0FfRU1fTUVUQV9NQVgKIH07CiAjZGVmaW5lIFRDQV9FTV9NRVRBX01BWCAoX19UQ0FfRU1fTUVUQV9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y2ZfbWV0YV92YWwgewotIF9fdTE2IGtpbmQ7Ci0gX191OCBzaGlmdDsKLSBfX3U4IG9wOworICBfX3UxNiBraW5kOworICBfX3U4IHNoaWZ0OworICBfX3U4IG9wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRDRl9NRVRBX1RZUEVfTUFTSyAoMHhmIDw8IDEyKQpAQCAtNDMsODEgKzQzLDgxIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ0ZfTUVUQV9JRChraW5kKSAoKGtpbmQpICYgVENGX01FVEFfSURfTUFTSykKIGVudW0gewotIFRDRl9NRVRBX1RZUEVfVkFSLAotIFRDRl9NRVRBX1RZUEVfSU5ULAorICBUQ0ZfTUVUQV9UWVBFX1ZBUiwKKyAgVENGX01FVEFfVFlQRV9JTlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVENGX01FVEFfVFlQRV9NQVgKKyAgX19UQ0ZfTUVUQV9UWVBFX01BWAogfTsKICNkZWZpbmUgVENGX01FVEFfVFlQRV9NQVggKF9fVENGX01FVEFfVFlQRV9NQVggLSAxKQogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDRl9NRVRBX0lEX1ZBTFVFLAotIFRDRl9NRVRBX0lEX1JBTkRPTSwKLSBUQ0ZfTUVUQV9JRF9MT0FEQVZHXzAsCi0gVENGX01FVEFfSURfTE9BREFWR18xLAorICBUQ0ZfTUVUQV9JRF9WQUxVRSwKKyAgVENGX01FVEFfSURfUkFORE9NLAorICBUQ0ZfTUVUQV9JRF9MT0FEQVZHXzAsCisgIFRDRl9NRVRBX0lEX0xPQURBVkdfMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENGX01FVEFfSURfTE9BREFWR18yLAotIFRDRl9NRVRBX0lEX0RFViwKLSBUQ0ZfTUVUQV9JRF9QUklPUklUWSwKLSBUQ0ZfTUVUQV9JRF9QUk9UT0NPTCwKKyAgVENGX01FVEFfSURfTE9BREFWR18yLAorICBUQ0ZfTUVUQV9JRF9ERVYsCisgIFRDRl9NRVRBX0lEX1BSSU9SSVRZLAorICBUQ0ZfTUVUQV9JRF9QUk9UT0NPTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENGX01FVEFfSURfUEtUVFlQRSwKLSBUQ0ZfTUVUQV9JRF9QS1RMRU4sCi0gVENGX01FVEFfSURfREFUQUxFTiwKLSBUQ0ZfTUVUQV9JRF9NQUNMRU4sCisgIFRDRl9NRVRBX0lEX1BLVFRZUEUsCisgIFRDRl9NRVRBX0lEX1BLVExFTiwKKyAgVENGX01FVEFfSURfREFUQUxFTiwKKyAgVENGX01FVEFfSURfTUFDTEVOLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0ZfTUVUQV9JRF9ORk1BUkssCi0gVENGX01FVEFfSURfVENJTkRFWCwKLSBUQ0ZfTUVUQV9JRF9SVENMQVNTSUQsCi0gVENGX01FVEFfSURfUlRJSUYsCisgIFRDRl9NRVRBX0lEX05GTUFSSywKKyAgVENGX01FVEFfSURfVENJTkRFWCwKKyAgVENGX01FVEFfSURfUlRDTEFTU0lELAorICBUQ0ZfTUVUQV9JRF9SVElJRiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENGX01FVEFfSURfU0tfRkFNSUxZLAotIFRDRl9NRVRBX0lEX1NLX1NUQVRFLAotIFRDRl9NRVRBX0lEX1NLX1JFVVNFLAotIFRDRl9NRVRBX0lEX1NLX0JPVU5EX0lGLAorICBUQ0ZfTUVUQV9JRF9TS19GQU1JTFksCisgIFRDRl9NRVRBX0lEX1NLX1NUQVRFLAorICBUQ0ZfTUVUQV9JRF9TS19SRVVTRSwKKyAgVENGX01FVEFfSURfU0tfQk9VTkRfSUYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDRl9NRVRBX0lEX1NLX1JFRkNOVCwKLSBUQ0ZfTUVUQV9JRF9TS19TSFVURE9XTiwKLSBUQ0ZfTUVUQV9JRF9TS19QUk9UTywKLSBUQ0ZfTUVUQV9JRF9TS19UWVBFLAorICBUQ0ZfTUVUQV9JRF9TS19SRUZDTlQsCisgIFRDRl9NRVRBX0lEX1NLX1NIVVRET1dOLAorICBUQ0ZfTUVUQV9JRF9TS19QUk9UTywKKyAgVENGX01FVEFfSURfU0tfVFlQRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENGX01FVEFfSURfU0tfUkNWQlVGLAotIFRDRl9NRVRBX0lEX1NLX1JNRU1fQUxMT0MsCi0gVENGX01FVEFfSURfU0tfV01FTV9BTExPQywKLSBUQ0ZfTUVUQV9JRF9TS19PTUVNX0FMTE9DLAorICBUQ0ZfTUVUQV9JRF9TS19SQ1ZCVUYsCisgIFRDRl9NRVRBX0lEX1NLX1JNRU1fQUxMT0MsCisgIFRDRl9NRVRBX0lEX1NLX1dNRU1fQUxMT0MsCisgIFRDRl9NRVRBX0lEX1NLX09NRU1fQUxMT0MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDRl9NRVRBX0lEX1NLX1dNRU1fUVVFVUVELAotIFRDRl9NRVRBX0lEX1NLX1JDVl9RTEVOLAotIFRDRl9NRVRBX0lEX1NLX1NORF9RTEVOLAotIFRDRl9NRVRBX0lEX1NLX0VSUl9RTEVOLAorICBUQ0ZfTUVUQV9JRF9TS19XTUVNX1FVRVVFRCwKKyAgVENGX01FVEFfSURfU0tfUkNWX1FMRU4sCisgIFRDRl9NRVRBX0lEX1NLX1NORF9RTEVOLAorICBUQ0ZfTUVUQV9JRF9TS19FUlJfUUxFTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENGX01FVEFfSURfU0tfRk9SV0FSRF9BTExPQ1MsCi0gVENGX01FVEFfSURfU0tfU05EQlVGLAotIFRDRl9NRVRBX0lEX1NLX0FMTE9DUywKLSBfX1RDRl9NRVRBX0lEX1NLX1JPVVRFX0NBUFMsCisgIFRDRl9NRVRBX0lEX1NLX0ZPUldBUkRfQUxMT0NTLAorICBUQ0ZfTUVUQV9JRF9TS19TTkRCVUYsCisgIFRDRl9NRVRBX0lEX1NLX0FMTE9DUywKKyAgX19UQ0ZfTUVUQV9JRF9TS19ST1VURV9DQVBTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0ZfTUVUQV9JRF9TS19IQVNILAotIFRDRl9NRVRBX0lEX1NLX0xJTkdFUlRJTUUsCi0gVENGX01FVEFfSURfU0tfQUNLX0JBQ0tMT0csCi0gVENGX01FVEFfSURfU0tfTUFYX0FDS19CQUNLTE9HLAorICBUQ0ZfTUVUQV9JRF9TS19IQVNILAorICBUQ0ZfTUVUQV9JRF9TS19MSU5HRVJUSU1FLAorICBUQ0ZfTUVUQV9JRF9TS19BQ0tfQkFDS0xPRywKKyAgVENGX01FVEFfSURfU0tfTUFYX0FDS19CQUNLTE9HLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0ZfTUVUQV9JRF9TS19QUklPLAotIFRDRl9NRVRBX0lEX1NLX1JDVkxPV0FULAotIFRDRl9NRVRBX0lEX1NLX1JDVlRJTUVPLAotIFRDRl9NRVRBX0lEX1NLX1NORFRJTUVPLAorICBUQ0ZfTUVUQV9JRF9TS19QUklPLAorICBUQ0ZfTUVUQV9JRF9TS19SQ1ZMT1dBVCwKKyAgVENGX01FVEFfSURfU0tfUkNWVElNRU8sCisgIFRDRl9NRVRBX0lEX1NLX1NORFRJTUVPLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ0ZfTUVUQV9JRF9TS19TRU5ETVNHX09GRiwKLSBUQ0ZfTUVUQV9JRF9TS19XUklURV9QRU5ESU5HLAotIFRDRl9NRVRBX0lEX1ZMQU5fVEFHLAotIFRDRl9NRVRBX0lEX1JYSEFTSCwKKyAgVENGX01FVEFfSURfU0tfU0VORE1TR19PRkYsCisgIFRDRl9NRVRBX0lEX1NLX1dSSVRFX1BFTkRJTkcsCisgIFRDRl9NRVRBX0lEX1ZMQU5fVEFHLAorICBUQ0ZfTUVUQV9JRF9SWEhBU0gsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVENGX01FVEFfSURfTUFYCisgIF9fVENGX01FVEFfSURfTUFYCiB9OwogI2RlZmluZSBUQ0ZfTUVUQV9JRF9NQVggKF9fVENGX01FVEFfSURfTUFYIC0gMSkKIHN0cnVjdCB0Y2ZfbWV0YV9oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdGNmX21ldGFfdmFsIGxlZnQ7Ci0gc3RydWN0IHRjZl9tZXRhX3ZhbCByaWdodDsKKyAgc3RydWN0IHRjZl9tZXRhX3ZhbCBsZWZ0OworICBzdHJ1Y3QgdGNmX21ldGFfdmFsIHJpZ2h0OwogfTsKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfZW1hdGNoL3RjX2VtX25ieXRlLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2VtYXRjaC90Y19lbV9uYnl0ZS5oCmluZGV4IGVhMzdlNjcuLmNjMjZjMWQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfZW1hdGNoL3RjX2VtX25ieXRlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19lbWF0Y2gvdGNfZW1fbmJ5dGUuaApAQCAtMjIsOSArMjIsOSBAQAogI2luY2x1ZGUgPGxpbnV4L3BrdF9jbHMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNmX2VtX25ieXRlIHsKLSBfX3UxNiBvZmY7Ci0gX191MTYgbGVuOjEyOwotIF9fdTggbGF5ZXI6NDsKKyAgX191MTYgb2ZmOworICBfX3UxNiBsZW4gOiAxMjsKKyAgX191OCBsYXllciA6IDQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19lbWF0Y2gvdGNfZW1fdGV4dC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y19lbWF0Y2gvdGNfZW1fdGV4dC5oCmluZGV4IDIwMDU3NDYuLjdmNWE0MGUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNfZW1hdGNoL3RjX2VtX3RleHQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjX2VtYXRjaC90Y19lbV90ZXh0LmgKQEAgLTIzLDE0ICsyMywxNCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENfRU1fVEVYVF9BTEdPU0laIDE2CiBzdHJ1Y3QgdGNmX2VtX3RleHQgewotIGNoYXIgYWxnb1tUQ19FTV9URVhUX0FMR09TSVpdOwotIF9fdTE2IGZyb21fb2Zmc2V0OworICBjaGFyIGFsZ29bVENfRU1fVEVYVF9BTEdPU0laXTsKKyAgX191MTYgZnJvbV9vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHRvX29mZnNldDsKLSBfX3UxNiBwYXR0ZXJuX2xlbjsKLSBfX3U4IGZyb21fbGF5ZXI6NDsKLSBfX3U4IHRvX2xheWVyOjQ7CisgIF9fdTE2IHRvX29mZnNldDsKKyAgX191MTYgcGF0dGVybl9sZW47CisgIF9fdTggZnJvbV9sYXllciA6IDQ7CisgIF9fdTggdG9fbGF5ZXIgOiA0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBhZDsKKyAgX191OCBwYWQ7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y3AuaAppbmRleCBhN2I1YzVlLi4zMzQ3YmMxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjcC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNwLmgKQEAgLTIzLDE4NiArMjMsMTY2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L3NvY2tldC5oPgogc3RydWN0IHRjcGhkciB7Ci0gX19iZTE2IHNvdXJjZTsKLSBfX2JlMTYgZGVzdDsKKyAgX19iZTE2IHNvdXJjZTsKKyAgX19iZTE2IGRlc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBzZXE7Ci0gX19iZTMyIGFja19zZXE7CisgIF9fYmUzMiBzZXE7CisgIF9fYmUzMiBhY2tfc2VxOwogI2lmZGVmIF9fTElUVExFX0VORElBTl9CSVRGSUVMRAotIF9fdTE2IHJlczE6NCwKKyAgX191MTYgcmVzMSA6IDQsIGRvZmYgOiA0LCBmaW4gOiAxLCBzeW4gOiAxLCByc3QgOiAxLCBwc2ggOiAxLCBhY2sgOiAxLCB1cmcgOiAxLCBlY2UgOiAxLCBjd3IgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBkb2ZmOjQsCi0gZmluOjEsCi0gc3luOjEsCi0gcnN0OjEsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHBzaDoxLAotIGFjazoxLAotIHVyZzoxLAotIGVjZToxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjd3I6MTsKICNlbGlmIGRlZmluZWQoX19CSUdfRU5ESUFOX0JJVEZJRUxEKQotIF9fdTE2IGRvZmY6NCwKLSByZXMxOjQsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGN3cjoxLAotIGVjZToxLAotIHVyZzoxLAotIGFjazoxLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBwc2g6MSwKLSByc3Q6MSwKLSBzeW46MSwKLSBmaW46MTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IGRvZmYgOiA0LCByZXMxIDogNCwgY3dyIDogMSwgZWNlIDogMSwgdXJnIDogMSwgYWNrIDogMSwgcHNoIDogMSwgcnN0IDogMSwgc3luIDogMSwgZmluIDogMTsKICNlbHNlCiAjZXJyb3IgIkFkanVzdCB5b3VyIDxhc20vYnl0ZW9yZGVyLmg+IGRlZmluZXMiCi0jZW5kaWYKLSBfX2JlMTYgd2luZG93OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3N1bTE2IGNoZWNrOwotIF9fYmUxNiB1cmdfcHRyOworI2VuZGlmCisgIF9fYmUxNiB3aW5kb3c7CisgIF9fc3VtMTYgY2hlY2s7CisgIF9fYmUxNiB1cmdfcHRyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiB1bmlvbiB0Y3Bfd29yZF9oZHIgeworICBzdHJ1Y3QgdGNwaGRyIGhkcjsKKyAgX19iZTMyIHdvcmRzWzVdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdGNwaGRyIGhkcjsKLSBfX2JlMzIgd29yZHNbNV07CiB9OwotI2RlZmluZSB0Y3BfZmxhZ193b3JkKHRwKSAoICgodW5pb24gdGNwX3dvcmRfaGRyICopKHRwKSktPndvcmRzIFszXSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIHRjcF9mbGFnX3dvcmQodHApICgoKHVuaW9uIHRjcF93b3JkX2hkciAqKSAodHApKS0+d29yZHNbM10pCiBlbnVtIHsKLSBUQ1BfRkxBR19DV1IgPSBfX2NvbnN0YW50X2NwdV90b19iZTMyKDB4MDA4MDAwMDApLAotIFRDUF9GTEFHX0VDRSA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHgwMDQwMDAwMCksCi0gVENQX0ZMQUdfVVJHID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwMjAwMDAwKSwKKyAgVENQX0ZMQUdfQ1dSID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwODAwMDAwKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENQX0ZMQUdfQUNLID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwMTAwMDAwKSwKLSBUQ1BfRkxBR19QU0ggPSBfX2NvbnN0YW50X2NwdV90b19iZTMyKDB4MDAwODAwMDApLAotIFRDUF9GTEFHX1JTVCA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHgwMDA0MDAwMCksCi0gVENQX0ZMQUdfU1lOID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwMDIwMDAwKSwKKyAgVENQX0ZMQUdfRUNFID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwNDAwMDAwKSwKKyAgVENQX0ZMQUdfVVJHID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwMjAwMDAwKSwKKyAgVENQX0ZMQUdfQUNLID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwMTAwMDAwKSwKKyAgVENQX0ZMQUdfUFNIID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwMDgwMDAwKSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVENQX0ZMQUdfRklOID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweDAwMDEwMDAwKSwKLSBUQ1BfUkVTRVJWRURfQklUUyA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHgwRjAwMDAwMCksCi0gVENQX0RBVEFfT0ZGU0VUID0gX19jb25zdGFudF9jcHVfdG9fYmUzMigweEYwMDAwMDAwKQorICBUQ1BfRkxBR19SU1QgPSBfX2NvbnN0YW50X2NwdV90b19iZTMyKDB4MDAwNDAwMDApLAorICBUQ1BfRkxBR19TWU4gPSBfX2NvbnN0YW50X2NwdV90b19iZTMyKDB4MDAwMjAwMDApLAorICBUQ1BfRkxBR19GSU4gPSBfX2NvbnN0YW50X2NwdV90b19iZTMyKDB4MDAwMTAwMDApLAorICBUQ1BfUkVTRVJWRURfQklUUyA9IF9fY29uc3RhbnRfY3B1X3RvX2JlMzIoMHgwRjAwMDAwMCksCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBUQ1BfREFUQV9PRkZTRVQgPSBfX2NvbnN0YW50X2NwdV90b19iZTMyKDB4RjAwMDAwMDApCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENQX01TU19ERUZBVUxUIDUzNlUKICNkZWZpbmUgVENQX01TU19ERVNJUkVEIDEyMjBVCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ1BfTk9ERUxBWSAxCiAjZGVmaW5lIFRDUF9NQVhTRUcgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENQX0NPUksgMwogI2RlZmluZSBUQ1BfS0VFUElETEUgNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENQX0tFRVBJTlRWTCA1CiAjZGVmaW5lIFRDUF9LRUVQQ05UIDYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUF9TWU5DTlQgNwogI2RlZmluZSBUQ1BfTElOR0VSMiA4CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ1BfREVGRVJfQUNDRVBUIDkKICNkZWZpbmUgVENQX1dJTkRPV19DTEFNUCAxMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENQX0lORk8gMTEKICNkZWZpbmUgVENQX1FVSUNLQUNLIDEyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ1BfQ09OR0VTVElPTiAxMwogI2RlZmluZSBUQ1BfTUQ1U0lHIDE0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ1BfVEhJTl9MSU5FQVJfVElNRU9VVFMgMTYKICNkZWZpbmUgVENQX1RISU5fRFVQQUNLIDE3CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ1BfVVNFUl9USU1FT1VUIDE4CiAjZGVmaW5lIFRDUF9SRVBBSVIgMTkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUF9SRVBBSVJfUVVFVUUgMjAKICNkZWZpbmUgVENQX1FVRVVFX1NFUSAyMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENQX1JFUEFJUl9PUFRJT05TIDIyCiAjZGVmaW5lIFRDUF9GQVNUT1BFTiAyMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENQX1RJTUVTVEFNUCAyNAogI2RlZmluZSBUQ1BfTk9UU0VOVF9MT1dBVCAyNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0Y3BfcmVwYWlyX29wdCB7Ci0gX191MzIgb3B0X2NvZGU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG9wdF92YWw7CisgIF9fdTMyIG9wdF9jb2RlOworICBfX3UzMiBvcHRfdmFsOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBUQ1BfTk9fUVVFVUUsCisgIFRDUF9OT19RVUVVRSwKKyAgVENQX1JFQ1ZfUVVFVUUsCisgIFRDUF9TRU5EX1FVRVVFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ1BfUkVDVl9RVUVVRSwKLSBUQ1BfU0VORF9RVUVVRSwKLSBUQ1BfUVVFVUVTX05SLAorICBUQ1BfUVVFVUVTX05SLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUElfT1BUX1RJTUVTVEFNUFMgMQogI2RlZmluZSBUQ1BJX09QVF9TQUNLIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUElfT1BUX1dTQ0FMRSA0CiAjZGVmaW5lIFRDUElfT1BUX0VDTiA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUQ1BJX09QVF9FQ05fU0VFTiAxNgogI2RlZmluZSBUQ1BJX09QVF9TWU5fREFUQSAzMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdGNwX2NhX3N0YXRlIHsKLSBUQ1BfQ0FfT3BlbiA9IDAsCisgIFRDUF9DQV9PcGVuID0gMCwKKyNkZWZpbmUgVENQRl9DQV9PcGVuICgxIDw8IFRDUF9DQV9PcGVuKQorICBUQ1BfQ0FfRGlzb3JkZXIgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVENQRl9DQV9PcGVuICgxPDxUQ1BfQ0FfT3BlbikKLSBUQ1BfQ0FfRGlzb3JkZXIgPSAxLAotI2RlZmluZSBUQ1BGX0NBX0Rpc29yZGVyICgxPDxUQ1BfQ0FfRGlzb3JkZXIpCi0gVENQX0NBX0NXUiA9IDIsCisjZGVmaW5lIFRDUEZfQ0FfRGlzb3JkZXIgKDEgPDwgVENQX0NBX0Rpc29yZGVyKQorICBUQ1BfQ0FfQ1dSID0gMiwKKyNkZWZpbmUgVENQRl9DQV9DV1IgKDEgPDwgVENQX0NBX0NXUikKKyAgVENQX0NBX1JlY292ZXJ5ID0gMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFRDUEZfQ0FfQ1dSICgxPDxUQ1BfQ0FfQ1dSKQotIFRDUF9DQV9SZWNvdmVyeSA9IDMsCi0jZGVmaW5lIFRDUEZfQ0FfUmVjb3ZlcnkgKDE8PFRDUF9DQV9SZWNvdmVyeSkKLSBUQ1BfQ0FfTG9zcyA9IDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFRDUEZfQ0FfTG9zcyAoMTw8VENQX0NBX0xvc3MpCisjZGVmaW5lIFRDUEZfQ0FfUmVjb3ZlcnkgKDEgPDwgVENQX0NBX1JlY292ZXJ5KQorICBUQ1BfQ0FfTG9zcyA9IDQKKyNkZWZpbmUgVENQRl9DQV9Mb3NzICgxIDw8IFRDUF9DQV9Mb3NzKQogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGNwX2luZm8gewotIF9fdTggdGNwaV9zdGF0ZTsKKyAgX191OCB0Y3BpX3N0YXRlOworICBfX3U4IHRjcGlfY2Ffc3RhdGU7CisgIF9fdTggdGNwaV9yZXRyYW5zbWl0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0Y3BpX2NhX3N0YXRlOwotIF9fdTggdGNwaV9yZXRyYW5zbWl0czsKLSBfX3U4IHRjcGlfcHJvYmVzOwotIF9fdTggdGNwaV9iYWNrb2ZmOworICBfX3U4IHRjcGlfcHJvYmVzOworICBfX3U4IHRjcGlfYmFja29mZjsKKyAgX191OCB0Y3BpX29wdGlvbnM7CisgIF9fdTggdGNwaV9zbmRfd3NjYWxlIDogNCwgdGNwaV9yY3Zfd3NjYWxlIDogNDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0Y3BpX29wdGlvbnM7Ci0gX191OCB0Y3BpX3NuZF93c2NhbGUgOiA0LCB0Y3BpX3Jjdl93c2NhbGUgOiA0OwotIF9fdTMyIHRjcGlfcnRvOwotIF9fdTMyIHRjcGlfYXRvOworICBfX3UzMiB0Y3BpX3J0bzsKKyAgX191MzIgdGNwaV9hdG87CisgIF9fdTMyIHRjcGlfc25kX21zczsKKyAgX191MzIgdGNwaV9yY3ZfbXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0Y3BpX3NuZF9tc3M7Ci0gX191MzIgdGNwaV9yY3ZfbXNzOwotIF9fdTMyIHRjcGlfdW5hY2tlZDsKLSBfX3UzMiB0Y3BpX3NhY2tlZDsKKyAgX191MzIgdGNwaV91bmFja2VkOworICBfX3UzMiB0Y3BpX3NhY2tlZDsKKyAgX191MzIgdGNwaV9sb3N0OworICBfX3UzMiB0Y3BpX3JldHJhbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHRjcGlfbG9zdDsKLSBfX3UzMiB0Y3BpX3JldHJhbnM7Ci0gX191MzIgdGNwaV9mYWNrZXRzOwotIF9fdTMyIHRjcGlfbGFzdF9kYXRhX3NlbnQ7CisgIF9fdTMyIHRjcGlfZmFja2V0czsKKyAgX191MzIgdGNwaV9sYXN0X2RhdGFfc2VudDsKKyAgX191MzIgdGNwaV9sYXN0X2Fja19zZW50OworICBfX3UzMiB0Y3BpX2xhc3RfZGF0YV9yZWN2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0Y3BpX2xhc3RfYWNrX3NlbnQ7Ci0gX191MzIgdGNwaV9sYXN0X2RhdGFfcmVjdjsKLSBfX3UzMiB0Y3BpX2xhc3RfYWNrX3JlY3Y7Ci0gX191MzIgdGNwaV9wbXR1OworICBfX3UzMiB0Y3BpX2xhc3RfYWNrX3JlY3Y7CisgIF9fdTMyIHRjcGlfcG10dTsKKyAgX191MzIgdGNwaV9yY3Zfc3N0aHJlc2g7CisgIF9fdTMyIHRjcGlfcnR0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0Y3BpX3Jjdl9zc3RocmVzaDsKLSBfX3UzMiB0Y3BpX3J0dDsKLSBfX3UzMiB0Y3BpX3J0dHZhcjsKLSBfX3UzMiB0Y3BpX3NuZF9zc3RocmVzaDsKKyAgX191MzIgdGNwaV9ydHR2YXI7CisgIF9fdTMyIHRjcGlfc25kX3NzdGhyZXNoOworICBfX3UzMiB0Y3BpX3NuZF9jd25kOworICBfX3UzMiB0Y3BpX2Fkdm1zczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGNwaV9zbmRfY3duZDsKLSBfX3UzMiB0Y3BpX2Fkdm1zczsKLSBfX3UzMiB0Y3BpX3Jlb3JkZXJpbmc7Ci0gX191MzIgdGNwaV9yY3ZfcnR0OworICBfX3UzMiB0Y3BpX3Jlb3JkZXJpbmc7CisgIF9fdTMyIHRjcGlfcmN2X3J0dDsKKyAgX191MzIgdGNwaV9yY3Zfc3BhY2U7CisgIF9fdTMyIHRjcGlfdG90YWxfcmV0cmFuczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGNwaV9yY3Zfc3BhY2U7Ci0gX191MzIgdGNwaV90b3RhbF9yZXRyYW5zOworICBfX3U2NCB0Y3BpX3BhY2luZ19yYXRlOworICBfX3U2NCB0Y3BpX21heF9wYWNpbmdfcmF0ZTsKIH07CiAjZGVmaW5lIFRDUF9NRDVTSUdfTUFYS0VZTEVOIDgwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRjcF9tZDVzaWcgewotIHN0cnVjdCBfX2tlcm5lbF9zb2NrYWRkcl9zdG9yYWdlIHRjcG1fYWRkcjsKLSBfX3UxNiBfX3RjcG1fcGFkMTsKLSBfX3UxNiB0Y3BtX2tleWxlbjsKKyAgc3RydWN0IF9fa2VybmVsX3NvY2thZGRyX3N0b3JhZ2UgdGNwbV9hZGRyOworICBfX3UxNiBfX3RjcG1fcGFkMTsKKyAgX191MTYgdGNwbV9rZXlsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIF9fdGNwbV9wYWQyOwotIF9fdTggdGNwbV9rZXlbVENQX01ENVNJR19NQVhLRVlMRU5dOworICBfX3UzMiBfX3RjcG1fcGFkMjsKKyAgX191OCB0Y3BtX2tleVtUQ1BfTUQ1U0lHX01BWEtFWUxFTl07CiB9OwogI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y3BfbWV0cmljcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90Y3BfbWV0cmljcy5oCmluZGV4IDQ0OWVjOTUuLjRiYzNlNDggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGNwX21ldHJpY3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RjcF9tZXRyaWNzLmgKQEAgLTIzLDQ0ICsyMyw0NyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVENQX01FVFJJQ1NfR0VOTF9WRVJTSU9OIDB4MQogZW51bSB0Y3BfbWV0cmljX2luZGV4IHsKLSBUQ1BfTUVUUklDX1JUVCwKLSBUQ1BfTUVUUklDX1JUVFZBUiwKKyAgVENQX01FVFJJQ19SVFQsCisgIFRDUF9NRVRSSUNfUlRUVkFSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ1BfTUVUUklDX1NTVEhSRVNILAotIFRDUF9NRVRSSUNfQ1dORCwKLSBUQ1BfTUVUUklDX1JFT1JERVJJTkcsCi0gX19UQ1BfTUVUUklDX01BWCwKKyAgVENQX01FVFJJQ19TU1RIUkVTSCwKKyAgVENQX01FVFJJQ19DV05ELAorICBUQ1BfTUVUUklDX1JFT1JERVJJTkcsCisgIFRDUF9NRVRSSUNfUlRUX1VTLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVENQX01FVFJJQ19SVFRWQVJfVVMsCisgIF9fVENQX01FVFJJQ19NQVgsCiB9OwogI2RlZmluZSBUQ1BfTUVUUklDX01BWCAoX19UQ1BfTUVUUklDX01BWCAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gVENQX01FVFJJQ1NfQVRUUl9VTlNQRUMsCisgIFRDUF9NRVRSSUNTX0FUVFJfVU5TUEVDLAorICBUQ1BfTUVUUklDU19BVFRSX0FERFJfSVBWNCwKKyAgVENQX01FVFJJQ1NfQVRUUl9BRERSX0lQVjYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDUF9NRVRSSUNTX0FUVFJfQUREUl9JUFY0LAotIFRDUF9NRVRSSUNTX0FUVFJfQUREUl9JUFY2LAotIFRDUF9NRVRSSUNTX0FUVFJfQUdFLAotIFRDUF9NRVRSSUNTX0FUVFJfVFdfVFNWQUwsCisgIFRDUF9NRVRSSUNTX0FUVFJfQUdFLAorICBUQ1BfTUVUUklDU19BVFRSX1RXX1RTVkFMLAorICBUQ1BfTUVUUklDU19BVFRSX1RXX1RTX1NUQU1QLAorICBUQ1BfTUVUUklDU19BVFRSX1ZBTFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFRDUF9NRVRSSUNTX0FUVFJfVFdfVFNfU1RBTVAsCi0gVENQX01FVFJJQ1NfQVRUUl9WQUxTLAotIFRDUF9NRVRSSUNTX0FUVFJfRk9QRU5fTVNTLAotIFRDUF9NRVRSSUNTX0FUVFJfRk9QRU5fU1lOX0RST1BTLAorICBUQ1BfTUVUUklDU19BVFRSX0ZPUEVOX01TUywKKyAgVENQX01FVFJJQ1NfQVRUUl9GT1BFTl9TWU5fRFJPUFMsCisgIFRDUF9NRVRSSUNTX0FUVFJfRk9QRU5fU1lOX0RST1BfVFMsCisgIFRDUF9NRVRSSUNTX0FUVFJfRk9QRU5fQ09PS0lFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ1BfTUVUUklDU19BVFRSX0ZPUEVOX1NZTl9EUk9QX1RTLAotIFRDUF9NRVRSSUNTX0FUVFJfRk9QRU5fQ09PS0lFLAotIFRDUF9NRVRSSUNTX0FUVFJfU0FERFJfSVBWNCwKLSBUQ1BfTUVUUklDU19BVFRSX1NBRERSX0lQVjYsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fVENQX01FVFJJQ1NfQVRUUl9NQVgsCisgIFRDUF9NRVRSSUNTX0FUVFJfU0FERFJfSVBWNCwKKyAgVENQX01FVFJJQ1NfQVRUUl9TQUREUl9JUFY2LAorICBfX1RDUF9NRVRSSUNTX0FUVFJfTUFYLAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDUF9NRVRSSUNTX0FUVFJfTUFYIChfX1RDUF9NRVRSSUNTX0FUVFJfTUFYIC0gMSkKIGVudW0geworICBUQ1BfTUVUUklDU19DTURfVU5TUEVDLAorICBUQ1BfTUVUUklDU19DTURfR0VULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBUQ1BfTUVUUklDU19DTURfVU5TUEVDLAotIFRDUF9NRVRSSUNTX0NNRF9HRVQsCi0gVENQX01FVFJJQ1NfQ01EX0RFTCwKLSBfX1RDUF9NRVRSSUNTX0NNRF9NQVgsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBUQ1BfTUVUUklDU19DTURfREVMLAorICBfX1RDUF9NRVRSSUNTX0NNRF9NQVgsCiB9OwogI2RlZmluZSBUQ1BfTUVUUklDU19DTURfTUFYIChfX1RDUF9NRVRSSUNTX0NNRF9NQVggLSAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90ZWxlcGhvbnkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGVsZXBob255LmgKaW5kZXggZjRjNmQ2My4uNzRhNDkyMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90ZWxlcGhvbnkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RlbGVwaG9ueS5oCkBAIC0zNCwxNTcgKzM0LDE1NSBAQAogI2RlZmluZSBRVElfUEhPTkVKQUNLX1BDSSA1MDAKICNkZWZpbmUgUVRJX1BIT05FQ0FSRCA2MDAKIHR5cGVkZWYgZW51bSB7Ci0gdmVuZG9yID0gMCwKKyAgdmVuZG9yID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZGV2aWNlLAotIHBvcnQsCi0gY29kZWMsCi0gZHNwCisgIGRldmljZSwKKyAgcG9ydCwKKyAgY29kZWMsCisgIGRzcAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gcGhvbmVfY2FwOwogc3RydWN0IHBob25lX2NhcGFiaWxpdHkgewotIGNoYXIgZGVzY1s4MF07Ci0gcGhvbmVfY2FwIGNhcHR5cGU7CisgIGNoYXIgZGVzY1s4MF07CisgIHBob25lX2NhcCBjYXB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2FwOwotIGludCBoYW5kbGU7CisgIGludCBjYXA7CisgIGludCBoYW5kbGU7CiB9OwogdHlwZWRlZiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gcG90cyA9IDAsCi0gcHN0biwKLSBoYW5kc2V0LAotIHNwZWFrZXIKKyAgcG90cyA9IDAsCisgIHBzdG4sCisgIGhhbmRzZXQsCisgIHNwZWFrZXIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IHBob25lX3BvcnRzOwotI2RlZmluZSBQSE9ORV9DQVBBQklMSVRJRVMgX0lPICgncScsIDB4ODApCi0jZGVmaW5lIFBIT05FX0NBUEFCSUxJVElFU19MSVNUIF9JT1IgKCdxJywgMHg4MSwgc3RydWN0IHBob25lX2NhcGFiaWxpdHkgKikKLSNkZWZpbmUgUEhPTkVfQ0FQQUJJTElUSUVTX0NIRUNLIF9JT1cgKCdxJywgMHg4Miwgc3RydWN0IHBob25lX2NhcGFiaWxpdHkgKikKKyNkZWZpbmUgUEhPTkVfQ0FQQUJJTElUSUVTIF9JTygncScsIDB4ODApCisjZGVmaW5lIFBIT05FX0NBUEFCSUxJVElFU19MSVNUIF9JT1IoJ3EnLCAweDgxLCBzdHJ1Y3QgcGhvbmVfY2FwYWJpbGl0eSAqKQorI2RlZmluZSBQSE9ORV9DQVBBQklMSVRJRVNfQ0hFQ0sgX0lPVygncScsIDB4ODIsIHN0cnVjdCBwaG9uZV9jYXBhYmlsaXR5ICopCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBzdHJ1Y3QgewotIGNoYXIgbW9udGhbM107Ci0gY2hhciBkYXlbM107Ci0gY2hhciBob3VyWzNdOworICBjaGFyIG1vbnRoWzNdOworICBjaGFyIGRheVszXTsKKyAgY2hhciBob3VyWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG1pblszXTsKLSBpbnQgbnVtbGVuOwotIGNoYXIgbnVtYmVyWzExXTsKLSBpbnQgbmFtZWxlbjsKKyAgY2hhciBtaW5bM107CisgIGludCBudW1sZW47CisgIGNoYXIgbnVtYmVyWzExXTsKKyAgaW50IG5hbWVsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVs4MF07CisgIGNoYXIgbmFtZVs4MF07CiB9IFBIT05FX0NJRDsKLSNkZWZpbmUgUEhPTkVfUklORyBfSU8gKCdxJywgMHg4MykKLSNkZWZpbmUgUEhPTkVfSE9PS1NUQVRFIF9JTyAoJ3EnLCAweDg0KQorI2RlZmluZSBQSE9ORV9SSU5HIF9JTygncScsIDB4ODMpCisjZGVmaW5lIFBIT05FX0hPT0tTVEFURSBfSU8oJ3EnLCAweDg0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUEhPTkVfTUFYUklOR1MgX0lPVyAoJ3EnLCAweDg1LCBjaGFyKQotI2RlZmluZSBQSE9ORV9SSU5HX0NBREVOQ0UgX0lPVyAoJ3EnLCAweDg2LCBzaG9ydCkKLSNkZWZpbmUgT0xEX1BIT05FX1JJTkdfU1RBUlQgX0lPICgncScsIDB4ODcpCi0jZGVmaW5lIFBIT05FX1JJTkdfU1RBUlQgX0lPVyAoJ3EnLCAweDg3LCBQSE9ORV9DSUQgKikKKyNkZWZpbmUgUEhPTkVfTUFYUklOR1MgX0lPVygncScsIDB4ODUsIGNoYXIpCisjZGVmaW5lIFBIT05FX1JJTkdfQ0FERU5DRSBfSU9XKCdxJywgMHg4Niwgc2hvcnQpCisjZGVmaW5lIE9MRF9QSE9ORV9SSU5HX1NUQVJUIF9JTygncScsIDB4ODcpCisjZGVmaW5lIFBIT05FX1JJTkdfU1RBUlQgX0lPVygncScsIDB4ODcsIFBIT05FX0NJRCAqKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUEhPTkVfUklOR19TVE9QIF9JTyAoJ3EnLCAweDg4KQorI2RlZmluZSBQSE9ORV9SSU5HX1NUT1AgX0lPKCdxJywgMHg4OCkKICNkZWZpbmUgVVNBX1JJTkdfQ0FERU5DRSAweEMwQzAKLSNkZWZpbmUgUEhPTkVfUkVDX0NPREVDIF9JT1cgKCdxJywgMHg4OSwgaW50KQotI2RlZmluZSBQSE9ORV9SRUNfU1RBUlQgX0lPICgncScsIDB4OEEpCisjZGVmaW5lIFBIT05FX1JFQ19DT0RFQyBfSU9XKCdxJywgMHg4OSwgaW50KQorI2RlZmluZSBQSE9ORV9SRUNfU1RBUlQgX0lPKCdxJywgMHg4QSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBIT05FX1JFQ19TVE9QIF9JTyAoJ3EnLCAweDhCKQotI2RlZmluZSBQSE9ORV9SRUNfREVQVEggX0lPVyAoJ3EnLCAweDhDLCBpbnQpCi0jZGVmaW5lIFBIT05FX0ZSQU1FIF9JT1cgKCdxJywgMHg4RCwgaW50KQotI2RlZmluZSBQSE9ORV9SRUNfVk9MVU1FIF9JT1cgKCdxJywgMHg4RSwgaW50KQorI2RlZmluZSBQSE9ORV9SRUNfU1RPUCBfSU8oJ3EnLCAweDhCKQorI2RlZmluZSBQSE9ORV9SRUNfREVQVEggX0lPVygncScsIDB4OEMsIGludCkKKyNkZWZpbmUgUEhPTkVfRlJBTUUgX0lPVygncScsIDB4OEQsIGludCkKKyNkZWZpbmUgUEhPTkVfUkVDX1ZPTFVNRSBfSU9XKCdxJywgMHg4RSwgaW50KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUEhPTkVfUkVDX1ZPTFVNRV9MSU5FQVIgX0lPVyAoJ3EnLCAweERCLCBpbnQpCi0jZGVmaW5lIFBIT05FX1JFQ19MRVZFTCBfSU8gKCdxJywgMHg4RikKLSNkZWZpbmUgUEhPTkVfUExBWV9DT0RFQyBfSU9XICgncScsIDB4OTAsIGludCkKLSNkZWZpbmUgUEhPTkVfUExBWV9TVEFSVCBfSU8gKCdxJywgMHg5MSkKKyNkZWZpbmUgUEhPTkVfUkVDX1ZPTFVNRV9MSU5FQVIgX0lPVygncScsIDB4REIsIGludCkKKyNkZWZpbmUgUEhPTkVfUkVDX0xFVkVMIF9JTygncScsIDB4OEYpCisjZGVmaW5lIFBIT05FX1BMQVlfQ09ERUMgX0lPVygncScsIDB4OTAsIGludCkKKyNkZWZpbmUgUEhPTkVfUExBWV9TVEFSVCBfSU8oJ3EnLCAweDkxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgUEhPTkVfUExBWV9TVE9QIF9JTyAoJ3EnLCAweDkyKQotI2RlZmluZSBQSE9ORV9QTEFZX0RFUFRIIF9JT1cgKCdxJywgMHg5MywgaW50KQotI2RlZmluZSBQSE9ORV9QTEFZX1ZPTFVNRSBfSU9XICgncScsIDB4OTQsIGludCkKLSNkZWZpbmUgUEhPTkVfUExBWV9WT0xVTUVfTElORUFSIF9JT1cgKCdxJywgMHhEQywgaW50KQorI2RlZmluZSBQSE9ORV9QTEFZX1NUT1AgX0lPKCdxJywgMHg5MikKKyNkZWZpbmUgUEhPTkVfUExBWV9ERVBUSCBfSU9XKCdxJywgMHg5MywgaW50KQorI2RlZmluZSBQSE9ORV9QTEFZX1ZPTFVNRSBfSU9XKCdxJywgMHg5NCwgaW50KQorI2RlZmluZSBQSE9ORV9QTEFZX1ZPTFVNRV9MSU5FQVIgX0lPVygncScsIDB4REMsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFBIT05FX1BMQVlfTEVWRUwgX0lPICgncScsIDB4OTUpCi0jZGVmaW5lIFBIT05FX0RUTUZfUkVBRFkgX0lPUiAoJ3EnLCAweDk2LCBpbnQpCi0jZGVmaW5lIFBIT05FX0dFVF9EVE1GIF9JT1IgKCdxJywgMHg5NywgaW50KQotI2RlZmluZSBQSE9ORV9HRVRfRFRNRl9BU0NJSSBfSU9SICgncScsIDB4OTgsIGludCkKKyNkZWZpbmUgUEhPTkVfUExBWV9MRVZFTCBfSU8oJ3EnLCAweDk1KQorI2RlZmluZSBQSE9ORV9EVE1GX1JFQURZIF9JT1IoJ3EnLCAweDk2LCBpbnQpCisjZGVmaW5lIFBIT05FX0dFVF9EVE1GIF9JT1IoJ3EnLCAweDk3LCBpbnQpCisjZGVmaW5lIFBIT05FX0dFVF9EVE1GX0FTQ0lJIF9JT1IoJ3EnLCAweDk4LCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQSE9ORV9EVE1GX09PQiBfSU9XICgncScsIDB4OTksIGludCkKLSNkZWZpbmUgUEhPTkVfRVhDRVBUSU9OIF9JT1IgKCdxJywgMHg5QSwgaW50KQotI2RlZmluZSBQSE9ORV9QTEFZX1RPTkUgX0lPVyAoJ3EnLCAweDlCLCBjaGFyKQotI2RlZmluZSBQSE9ORV9TRVRfVE9ORV9PTl9USU1FIF9JT1cgKCdxJywgMHg5QywgaW50KQorI2RlZmluZSBQSE9ORV9EVE1GX09PQiBfSU9XKCdxJywgMHg5OSwgaW50KQorI2RlZmluZSBQSE9ORV9FWENFUFRJT04gX0lPUigncScsIDB4OUEsIGludCkKKyNkZWZpbmUgUEhPTkVfUExBWV9UT05FIF9JT1coJ3EnLCAweDlCLCBjaGFyKQorI2RlZmluZSBQSE9ORV9TRVRfVE9ORV9PTl9USU1FIF9JT1coJ3EnLCAweDlDLCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQSE9ORV9TRVRfVE9ORV9PRkZfVElNRSBfSU9XICgncScsIDB4OUQsIGludCkKLSNkZWZpbmUgUEhPTkVfR0VUX1RPTkVfT05fVElNRSBfSU8gKCdxJywgMHg5RSkKLSNkZWZpbmUgUEhPTkVfR0VUX1RPTkVfT0ZGX1RJTUUgX0lPICgncScsIDB4OUYpCi0jZGVmaW5lIFBIT05FX0dFVF9UT05FX1NUQVRFIF9JTyAoJ3EnLCAweEEwKQorI2RlZmluZSBQSE9ORV9TRVRfVE9ORV9PRkZfVElNRSBfSU9XKCdxJywgMHg5RCwgaW50KQorI2RlZmluZSBQSE9ORV9HRVRfVE9ORV9PTl9USU1FIF9JTygncScsIDB4OUUpCisjZGVmaW5lIFBIT05FX0dFVF9UT05FX09GRl9USU1FIF9JTygncScsIDB4OUYpCisjZGVmaW5lIFBIT05FX0dFVF9UT05FX1NUQVRFIF9JTygncScsIDB4QTApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQSE9ORV9CVVNZIF9JTyAoJ3EnLCAweEExKQotI2RlZmluZSBQSE9ORV9SSU5HQkFDSyBfSU8gKCdxJywgMHhBMikKLSNkZWZpbmUgUEhPTkVfRElBTFRPTkUgX0lPICgncScsIDB4QTMpCi0jZGVmaW5lIFBIT05FX0NQVF9TVE9QIF9JTyAoJ3EnLCAweEE0KQorI2RlZmluZSBQSE9ORV9CVVNZIF9JTygncScsIDB4QTEpCisjZGVmaW5lIFBIT05FX1JJTkdCQUNLIF9JTygncScsIDB4QTIpCisjZGVmaW5lIFBIT05FX0RJQUxUT05FIF9JTygncScsIDB4QTMpCisjZGVmaW5lIFBIT05FX0NQVF9TVE9QIF9JTygncScsIDB4QTQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQSE9ORV9QU1ROX1NFVF9TVEFURSBfSU9XICgncScsIDB4QTQsIGludCkKLSNkZWZpbmUgUEhPTkVfUFNUTl9HRVRfU1RBVEUgX0lPICgncScsIDB4QTUpCisjZGVmaW5lIFBIT05FX1BTVE5fU0VUX1NUQVRFIF9JT1coJ3EnLCAweEE0LCBpbnQpCisjZGVmaW5lIFBIT05FX1BTVE5fR0VUX1NUQVRFIF9JTygncScsIDB4QTUpCiAjZGVmaW5lIFBTVE5fT05fSE9PSyAwCiAjZGVmaW5lIFBTVE5fUklOR0lORyAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBQU1ROX09GRl9IT09LIDIKICNkZWZpbmUgUFNUTl9QVUxTRV9ESUFMIDMKLSNkZWZpbmUgUEhPTkVfV0lOS19EVVJBVElPTiBfSU9XICgncScsIDB4QTYsIGludCkKLSNkZWZpbmUgUEhPTkVfV0lOSyBfSU9XICgncScsIDB4QUEsIGludCkKKyNkZWZpbmUgUEhPTkVfV0lOS19EVVJBVElPTiBfSU9XKCdxJywgMHhBNiwgaW50KQorI2RlZmluZSBQSE9ORV9XSU5LIF9JT1coJ3EnLCAweEFBLCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdHlwZWRlZiBlbnVtIHsKLSBHNzIzXzYzID0gMSwKLSBHNzIzXzUzID0gMiwKLSBUUzg1ID0gMywKKyAgRzcyM182MyA9IDEsCisgIEc3MjNfNTMgPSAyLAorICBUUzg1ID0gMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVFM0OCA9IDQsCi0gVFM0MSA9IDUsCi0gRzcyOCA9IDYsCi0gRzcyOSA9IDcsCisgIFRTNDggPSA0LAorICBUUzQxID0gNSwKKyAgRzcyOCA9IDYsCisgIEc3MjkgPSA3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBVTEFXID0gOCwKLSBBTEFXID0gOSwKLSBMSU5FQVIxNiA9IDEwLAotIExJTkVBUjggPSAxMSwKKyAgVUxBVyA9IDgsCisgIEFMQVcgPSA5LAorICBMSU5FQVIxNiA9IDEwLAorICBMSU5FQVI4ID0gMTEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFdTUyA9IDEyLAotIEc3MjlCID0gMTMKKyAgV1NTID0gMTIsCisgIEc3MjlCID0gMTMKIH0gcGhvbmVfY29kZWM7Ci1zdHJ1Y3QgcGhvbmVfY29kZWNfZGF0YQorc3RydWN0IHBob25lX2NvZGVjX2RhdGEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBwaG9uZV9jb2RlYyB0eXBlOwotIHVuc2lnbmVkIHNob3J0IGJ1Zl9taW4sIGJ1Zl9vcHQsIGJ1Zl9tYXg7CisgIHBob25lX2NvZGVjIHR5cGU7CisgIHVuc2lnbmVkIHNob3J0IGJ1Zl9taW4sIGJ1Zl9vcHQsIGJ1Zl9tYXg7CiB9OworI2RlZmluZSBQSE9ORV9RVUVSWV9DT0RFQyBfSU9XUigncScsIDB4QTcsIHN0cnVjdCBwaG9uZV9jb2RlY19kYXRhICopCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBQSE9ORV9RVUVSWV9DT0RFQyBfSU9XUiAoJ3EnLCAweEE3LCBzdHJ1Y3QgcGhvbmVfY29kZWNfZGF0YSAqKQotI2RlZmluZSBQSE9ORV9QU1ROX0xJTkVURVNUIF9JTyAoJ3EnLCAweEE4KQotI2RlZmluZSBQSE9ORV9WQUQgX0lPVyAoJ3EnLCAweEE5LCBpbnQpCi1zdHJ1Y3QgcGhvbmVfZXhjZXB0CisjZGVmaW5lIFBIT05FX1BTVE5fTElORVRFU1QgX0lPKCdxJywgMHhBOCkKKyNkZWZpbmUgUEhPTkVfVkFEIF9JT1coJ3EnLCAweEE5LCBpbnQpCitzdHJ1Y3QgcGhvbmVfZXhjZXB0IHsKKyAgdW5zaWduZWQgaW50IGR0bWZfcmVhZHkgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSB1bnNpZ25lZCBpbnQgZHRtZl9yZWFkeToxOwotIHVuc2lnbmVkIGludCBob29rc3RhdGU6MTsKLSB1bnNpZ25lZCBpbnQgcHN0bl9yaW5nOjE7CisgIHVuc2lnbmVkIGludCBob29rc3RhdGUgOiAxOworICB1bnNpZ25lZCBpbnQgcHN0bl9yaW5nIDogMTsKKyAgdW5zaWduZWQgaW50IGNhbGxlcl9pZCA6IDE7CisgIHVuc2lnbmVkIGludCBwc3RuX3dpbmsgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY2FsbGVyX2lkOjE7Ci0gdW5zaWduZWQgaW50IHBzdG5fd2luazoxOwotIHVuc2lnbmVkIGludCBmMDoxOwotIHVuc2lnbmVkIGludCBmMToxOworICB1bnNpZ25lZCBpbnQgZjAgOiAxOworICB1bnNpZ25lZCBpbnQgZjEgOiAxOworICB1bnNpZ25lZCBpbnQgZjIgOiAxOworICB1bnNpZ25lZCBpbnQgZjMgOiAxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZjI6MTsKLSB1bnNpZ25lZCBpbnQgZjM6MTsKLSB1bnNpZ25lZCBpbnQgZmxhc2g6MTsKLSB1bnNpZ25lZCBpbnQgZmMwOjE7CisgIHVuc2lnbmVkIGludCBmbGFzaCA6IDE7CisgIHVuc2lnbmVkIGludCBmYzAgOiAxOworICB1bnNpZ25lZCBpbnQgZmMxIDogMTsKKyAgdW5zaWduZWQgaW50IGZjMiA6IDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBmYzE6MTsKLSB1bnNpZ25lZCBpbnQgZmMyOjE7Ci0gdW5zaWduZWQgaW50IGZjMzoxOwotIHVuc2lnbmVkIGludCByZXNlcnZlZDoxODsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGludCBmYzMgOiAxOworICB1bnNpZ25lZCBpbnQgcmVzZXJ2ZWQgOiAxODsKIH07CiB1bmlvbiB0ZWxlcGhvbnlfZXhjZXB0aW9uIHsKLSBzdHJ1Y3QgcGhvbmVfZXhjZXB0IGJpdHM7Ci0gdW5zaWduZWQgaW50IGJ5dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IHBob25lX2V4Y2VwdCBiaXRzOworICB1bnNpZ25lZCBpbnQgYnl0ZXM7CiB9OwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90ZXJtaW9zLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Rlcm1pb3MuaAppbmRleCAyYWMwMDgzLi4wZTdhMzkxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Rlcm1pb3MuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Rlcm1pb3MuaApAQCAtMjIsMTggKzIyLDE3IEBACiAjaW5jbHVkZSA8YXNtL3Rlcm1pb3MuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE5GRiA1Ci1zdHJ1Y3QgdGVybWlveAotewotIF9fdTE2IHhfaGZsYWc7CitzdHJ1Y3QgdGVybWlveCB7CisgIF9fdTE2IHhfaGZsYWc7CisgIF9fdTE2IHhfY2ZsYWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHhfY2ZsYWc7Ci0gX191MTYgeF9yZmxhZ1tORkZdOwotIF9fdTE2IHhfc2ZsYWc7CisgIF9fdTE2IHhfcmZsYWdbTkZGXTsKKyAgX191MTYgeF9zZmxhZzsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSVFNYT0ZGIDB4MDAwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQ1RTWE9OIDB4MDAwMgogI2RlZmluZSBEVFJYT0ZGIDB4MDAwNAogI2RlZmluZSBEU1JYT04gMHgwMDA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aW1lLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpbWUuaAppbmRleCA2MmZiN2RmLi5iZjI0NWZjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpbWUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpbWUuaApAQCAtMjMsMzMgKzIzLDMzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBfU1RSVUNUX1RJTUVTUEVDCiBzdHJ1Y3QgdGltZXNwZWMgewotIF9fa2VybmVsX3RpbWVfdCB0dl9zZWM7Ci0gbG9uZyB0dl9uc2VjOworICBfX2tlcm5lbF90aW1lX3QgdHZfc2VjOworICBsb25nIHR2X25zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgogc3RydWN0IHRpbWV2YWwgewotIF9fa2VybmVsX3RpbWVfdCB0dl9zZWM7CisgIF9fa2VybmVsX3RpbWVfdCB0dl9zZWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3N1c2Vjb25kc190IHR2X3VzZWM7CisgIF9fa2VybmVsX3N1c2Vjb25kc190IHR2X3VzZWM7CiB9Owogc3RydWN0IHRpbWV6b25lIHsKLSBpbnQgdHpfbWludXRlc3dlc3Q7CisgIGludCB0el9taW51dGVzd2VzdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHR6X2RzdHRpbWU7CisgIGludCB0el9kc3R0aW1lOwogfTsKICNkZWZpbmUgSVRJTUVSX1JFQUwgMAogI2RlZmluZSBJVElNRVJfVklSVFVBTCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJVElNRVJfUFJPRiAyCiBzdHJ1Y3QgaXRpbWVyc3BlYyB7Ci0gc3RydWN0IHRpbWVzcGVjIGl0X2ludGVydmFsOwotIHN0cnVjdCB0aW1lc3BlYyBpdF92YWx1ZTsKKyAgc3RydWN0IHRpbWVzcGVjIGl0X2ludGVydmFsOworICBzdHJ1Y3QgdGltZXNwZWMgaXRfdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpdGltZXJ2YWwgewotIHN0cnVjdCB0aW1ldmFsIGl0X2ludGVydmFsOwotIHN0cnVjdCB0aW1ldmFsIGl0X3ZhbHVlOworICBzdHJ1Y3QgdGltZXZhbCBpdF9pbnRlcnZhbDsKKyAgc3RydWN0IHRpbWV2YWwgaXRfdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQ0xPQ0tfUkVBTFRJTUUgMApkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aW1lcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aW1lcy5oCmluZGV4IGMxZGE4YWUuLmQwNDk0ZDcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGltZXMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpbWVzLmgKQEAgLTIxLDEwICsyMSwxMCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgdG1zIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfY2xvY2tfdCB0bXNfdXRpbWU7Ci0gX19rZXJuZWxfY2xvY2tfdCB0bXNfc3RpbWU7Ci0gX19rZXJuZWxfY2xvY2tfdCB0bXNfY3V0aW1lOwotIF9fa2VybmVsX2Nsb2NrX3QgdG1zX2NzdGltZTsKKyAgX19rZXJuZWxfY2xvY2tfdCB0bXNfdXRpbWU7CisgIF9fa2VybmVsX2Nsb2NrX3QgdG1zX3N0aW1lOworICBfX2tlcm5lbF9jbG9ja190IHRtc19jdXRpbWU7CisgIF9fa2VybmVsX2Nsb2NrX3QgdG1zX2NzdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpbWV4LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpbWV4LmgKaW5kZXggYTU5NjY5OC4uMDA4NDY4ZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aW1leC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGltZXguaApAQCAtMjIsMzQgKzIyLDQ0IEBACiAjZGVmaW5lIE5UUF9BUEkgNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0aW1leCB7Ci0gdW5zaWduZWQgaW50IG1vZGVzOwotIF9fa2VybmVsX2xvbmdfdCBvZmZzZXQ7Ci0gX19rZXJuZWxfbG9uZ190IGZyZXE7CisgIHVuc2lnbmVkIGludCBtb2RlczsKKyAgX19rZXJuZWxfbG9uZ190IG9mZnNldDsKKyAgX19rZXJuZWxfbG9uZ190IGZyZXE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX2xvbmdfdCBtYXhlcnJvcjsKLSBfX2tlcm5lbF9sb25nX3QgZXN0ZXJyb3I7Ci0gaW50IHN0YXR1czsKLSBfX2tlcm5lbF9sb25nX3QgY29uc3RhbnQ7CisgIF9fa2VybmVsX2xvbmdfdCBtYXhlcnJvcjsKKyAgX19rZXJuZWxfbG9uZ190IGVzdGVycm9yOworICBpbnQgc3RhdHVzOworICBfX2tlcm5lbF9sb25nX3QgY29uc3RhbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX2xvbmdfdCBwcmVjaXNpb247Ci0gX19rZXJuZWxfbG9uZ190IHRvbGVyYW5jZTsKLSBzdHJ1Y3QgdGltZXZhbCB0aW1lOwotIF9fa2VybmVsX2xvbmdfdCB0aWNrOworICBfX2tlcm5lbF9sb25nX3QgcHJlY2lzaW9uOworICBfX2tlcm5lbF9sb25nX3QgdG9sZXJhbmNlOworICBzdHJ1Y3QgdGltZXZhbCB0aW1lOworICBfX2tlcm5lbF9sb25nX3QgdGljazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfbG9uZ190IHBwc2ZyZXE7Ci0gX19rZXJuZWxfbG9uZ190IGppdHRlcjsKLSBpbnQgc2hpZnQ7Ci0gX19rZXJuZWxfbG9uZ190IHN0YWJpbDsKKyAgX19rZXJuZWxfbG9uZ190IHBwc2ZyZXE7CisgIF9fa2VybmVsX2xvbmdfdCBqaXR0ZXI7CisgIGludCBzaGlmdDsKKyAgX19rZXJuZWxfbG9uZ190IHN0YWJpbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19rZXJuZWxfbG9uZ190IGppdGNudDsKLSBfX2tlcm5lbF9sb25nX3QgY2FsY250OwotIF9fa2VybmVsX2xvbmdfdCBlcnJjbnQ7Ci0gX19rZXJuZWxfbG9uZ190IHN0YmNudDsKKyAgX19rZXJuZWxfbG9uZ190IGppdGNudDsKKyAgX19rZXJuZWxfbG9uZ190IGNhbGNudDsKKyAgX19rZXJuZWxfbG9uZ190IGVycmNudDsKKyAgX19rZXJuZWxfbG9uZ190IHN0YmNudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHRhaTsKLSBpbnQgOjMyOyBpbnQgOjMyOyBpbnQgOjMyOyBpbnQgOjMyOwotIGludCA6MzI7IGludCA6MzI7IGludCA6MzI7IGludCA6MzI7Ci0gaW50IDozMjsgaW50IDozMjsgaW50IDozMjsKKyAgaW50IHRhaTsKKyAgaW50IDogMzI7CisgIGludCA6IDMyOworICBpbnQgOiAzMjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCA6IDMyOworICBpbnQgOiAzMjsKKyAgaW50IDogMzI7CisgIGludCA6IDMyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgaW50IDogMzI7CisgIGludCA6IDMyOworICBpbnQgOiAzMjsKKyAgaW50IDogMzI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQURKX09GRlNFVCAweDAwMDEKQEAgLTk5LDcgKzEwOSw3IEBACiAjZGVmaW5lIFNUQV9OQU5PIDB4MjAwMAogI2RlZmluZSBTVEFfTU9ERSAweDQwMDAKICNkZWZpbmUgU1RBX0NMSyAweDgwMDAKLSNkZWZpbmUgU1RBX1JPTkxZIChTVEFfUFBTU0lHTkFMIHwgU1RBX1BQU0pJVFRFUiB8IFNUQV9QUFNXQU5ERVIgfCAgIFNUQV9QUFNFUlJPUiB8IFNUQV9DTE9DS0VSUiB8IFNUQV9OQU5PIHwgU1RBX01PREUgfCBTVEFfQ0xLKQorI2RlZmluZSBTVEFfUk9OTFkgKFNUQV9QUFNTSUdOQUwgfCBTVEFfUFBTSklUVEVSIHwgU1RBX1BQU1dBTkRFUiB8IFNUQV9QUFNFUlJPUiB8IFNUQV9DTE9DS0VSUiB8IFNUQV9OQU5PIHwgU1RBX01PREUgfCBTVEFfQ0xLKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElNRV9PSyAwCiAjZGVmaW5lIFRJTUVfSU5TIDEKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGlvY2wuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGlvY2wuaAppbmRleCBmMzgxOGZjLi43NTNkNjExIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Rpb2NsLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aW9jbC5oCkBAIC0yOSwxMiArMjksMTIgQEAKICNkZWZpbmUgVElPQ0xfU0VMTU9VU0VSRVBPUlQgMTYKICNkZWZpbmUgVElPQ0xfU0VMQlVUVE9OTUFTSyAxNQogc3RydWN0IHRpb2NsX3NlbGVjdGlvbiB7Ci0gdW5zaWduZWQgc2hvcnQgeHM7CisgIHVuc2lnbmVkIHNob3J0IHhzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCB5czsKLSB1bnNpZ25lZCBzaG9ydCB4ZTsKLSB1bnNpZ25lZCBzaG9ydCB5ZTsKLSB1bnNpZ25lZCBzaG9ydCBzZWxfbW9kZTsKKyAgdW5zaWduZWQgc2hvcnQgeXM7CisgIHVuc2lnbmVkIHNob3J0IHhlOworICB1bnNpZ25lZCBzaG9ydCB5ZTsKKyAgdW5zaWduZWQgc2hvcnQgc2VsX21vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVElPQ0xfUEFTVEVTRUwgMwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aXBjLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpcGMuaAppbmRleCA2NDVjNjEwLi4yMzBmZjFjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpcGMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpcGMuaApAQCAtMTksMTExICsxOSwxMjYgQEAKICNpZm5kZWYgX0xJTlVYX1RJUENfSF8KICNkZWZpbmUgX0xJTlVYX1RJUENfSF8KICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgorI2luY2x1ZGUgPGxpbnV4L3NvY2tpb3MuaD4KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGlwY19wb3J0aWQgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZWY7Ci0gX191MzIgbm9kZTsKKyAgX191MzIgcmVmOworICBfX3UzMiBub2RlOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGlwY19uYW1lIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UzMiBpbnN0YW5jZTsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgaW5zdGFuY2U7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0aXBjX25hbWVfc2VxIHsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgbG93ZXI7CisgIF9fdTMyIHVwcGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eXBlOwotIF9fdTMyIGxvd2VyOwotIF9fdTMyIHVwcGVyOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJUENfQ0ZHX1NSViAwCiAjZGVmaW5lIFRJUENfVE9QX1NSViAxCisjZGVmaW5lIFRJUENfTElOS19TVEFURSAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX1JFU0VSVkVEX1RZUEVTIDY0CiAjZGVmaW5lIFRJUENfWk9ORV9TQ09QRSAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX0NMVVNURVJfU0NPUEUgMgogI2RlZmluZSBUSVBDX05PREVfU0NPUEUgMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19NQVhfVVNFUl9NU0dfU0laRSA2NjAwMFUKICNkZWZpbmUgVElQQ19MT1dfSU1QT1JUQU5DRSAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX01FRElVTV9JTVBPUlRBTkNFIDEKICNkZWZpbmUgVElQQ19ISUdIX0lNUE9SVEFOQ0UgMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19DUklUSUNBTF9JTVBPUlRBTkNFIDMKICNkZWZpbmUgVElQQ19PSyAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX0VSUl9OT19OQU1FIDEKICNkZWZpbmUgVElQQ19FUlJfTk9fUE9SVCAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX0VSUl9OT19OT0RFIDMKICNkZWZpbmUgVElQQ19FUlJfT1ZFUkxPQUQgNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19DT05OX1NIVVRET1dOIDUKICNkZWZpbmUgVElQQ19TVUJfUE9SVFMgMHgwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19TVUJfU0VSVklDRSAweDAyCiAjZGVmaW5lIFRJUENfU1VCX0NBTkNFTCAweDA0Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX1dBSVRfRk9SRVZFUiAofjApCiBzdHJ1Y3QgdGlwY19zdWJzY3IgewotIHN0cnVjdCB0aXBjX25hbWVfc2VxIHNlcTsKLSBfX3UzMiB0aW1lb3V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmaWx0ZXI7Ci0gY2hhciB1c3JfaGFuZGxlWzhdOworICBzdHJ1Y3QgdGlwY19uYW1lX3NlcSBzZXE7CisgIF9fdTMyIHRpbWVvdXQ7CisgIF9fdTMyIGZpbHRlcjsKKyAgY2hhciB1c3JfaGFuZGxlWzhdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRJUENfUFVCTElTSEVEIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJUENfV0lUSERSQVdOIDIKICNkZWZpbmUgVElQQ19TVUJTQ1JfVElNRU9VVCAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRpcGNfZXZlbnQgewotIF9fdTMyIGV2ZW50OworICBfX3UzMiBldmVudDsKKyAgX191MzIgZm91bmRfbG93ZXI7CisgIF9fdTMyIGZvdW5kX3VwcGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmb3VuZF9sb3dlcjsKLSBfX3UzMiBmb3VuZF91cHBlcjsKLSBzdHJ1Y3QgdGlwY19wb3J0aWQgcG9ydDsKLSBzdHJ1Y3QgdGlwY19zdWJzY3IgczsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCB0aXBjX3BvcnRpZCBwb3J0OworICBzdHJ1Y3QgdGlwY19zdWJzY3IgczsKIH07CiAjaWZuZGVmIEFGX1RJUEMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEFGX1RJUEMgMzAKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpZm5kZWYgUEZfVElQQwogI2RlZmluZSBQRl9USVBDIEFGX1RJUEMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKICNpZm5kZWYgU09MX1RJUEMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNPTF9USVBDIDI3MQogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX0FERFJfTkFNRVNFUSAxCiAjZGVmaW5lIFRJUENfQUREUl9NQ0FTVCAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX0FERFJfTkFNRSAyCiAjZGVmaW5lIFRJUENfQUREUl9JRCAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNvY2thZGRyX3RpcGMgewotIHVuc2lnbmVkIHNob3J0IGZhbWlseTsKKyAgdW5zaWduZWQgc2hvcnQgZmFtaWx5OworICB1bnNpZ25lZCBjaGFyIGFkZHJ0eXBlOworICBzaWduZWQgY2hhciBzY29wZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBhZGRydHlwZTsKLSBzaWduZWQgY2hhciBzY29wZTsKLSB1bmlvbiB7Ci0gc3RydWN0IHRpcGNfcG9ydGlkIGlkOworICB1bmlvbiB7CisgICAgc3RydWN0IHRpcGNfcG9ydGlkIGlkOworICAgIHN0cnVjdCB0aXBjX25hbWVfc2VxIG5hbWVzZXE7CisgICAgc3RydWN0IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRpcGNfbmFtZV9zZXEgbmFtZXNlcTsKLSBzdHJ1Y3QgewotIHN0cnVjdCB0aXBjX25hbWUgbmFtZTsKLSBfX3UzMiBkb21haW47CisgICAgICBzdHJ1Y3QgdGlwY19uYW1lIG5hbWU7CisgICAgICBfX3UzMiBkb21haW47CisgICAgfSBuYW1lOworICB9IGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gbmFtZTsKLSB9IGFkZHI7CiB9OwogI2RlZmluZSBUSVBDX0VSUklORk8gMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19SRVREQVRBIDIKICNkZWZpbmUgVElQQ19ERVNUTkFNRSAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX0lNUE9SVEFOQ0UgMTI3CiAjZGVmaW5lIFRJUENfU1JDX0RST1BQQUJMRSAxMjgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJUENfREVTVF9EUk9QUEFCTEUgMTI5CiAjZGVmaW5lIFRJUENfQ09OTl9USU1FT1VUIDEzMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19OT0RFX1JFQ1ZRX0RFUFRIIDEzMQogI2RlZmluZSBUSVBDX1NPQ0tfUkVDVlFfREVQVEggMTMyCisjZGVmaW5lIFRJUENfTUFYX01FRElBX05BTUUgMTYKKyNkZWZpbmUgVElQQ19NQVhfSUZfTkFNRSAxNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVElQQ19NQVhfQkVBUkVSX05BTUUgMzIKKyNkZWZpbmUgVElQQ19NQVhfTElOS19OQU1FIDYwCisjZGVmaW5lIFNJT0NHRVRMSU5LTkFNRSBTSU9DUFJPVE9QUklWQVRFCitzdHJ1Y3QgdGlwY19zaW9jX2xuX3JlcSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBwZWVyOworICBfX3UzMiBiZWFyZXJfaWQ7CisgIGNoYXIgbGlua25hbWVbVElQQ19NQVhfTElOS19OQU1FXTsKK307CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpcGNfY29uZmlnLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3RpcGNfY29uZmlnLmgKaW5kZXggNmVjYWJkYS4uNzY0MGQ3OSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC90aXBjX2NvbmZpZy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdGlwY19jb25maWcuaApAQCAtMjEsMTc2ICsyMSwxNzMgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogI2luY2x1ZGUgPGxpbnV4L3N0cmluZy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNpbmNsdWRlIDxsaW51eC90aXBjLmg+CiAjaW5jbHVkZSA8YXNtL2J5dGVvcmRlci5oPgogI2luY2x1ZGUgPGFycGEvaW5ldC5oPgogI2RlZmluZSBUSVBDX0NNRF9OT09QIDB4MDAwMAotI2RlZmluZSBUSVBDX0NNRF9HRVRfTk9ERVMgMHgwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUSVBDX0NNRF9HRVRfTk9ERVMgMHgwMDAxCiAjZGVmaW5lIFRJUENfQ01EX0dFVF9NRURJQV9OQU1FUyAweDAwMDIKICNkZWZpbmUgVElQQ19DTURfR0VUX0JFQVJFUl9OQU1FUyAweDAwMDMKICNkZWZpbmUgVElQQ19DTURfR0VUX0xJTktTIDB4MDAwNAotI2RlZmluZSBUSVBDX0NNRF9TSE9XX05BTUVfVEFCTEUgMHgwMDA1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUSVBDX0NNRF9TSE9XX05BTUVfVEFCTEUgMHgwMDA1CiAjZGVmaW5lIFRJUENfQ01EX1NIT1dfUE9SVFMgMHgwMDA2CiAjZGVmaW5lIFRJUENfQ01EX1NIT1dfTElOS19TVEFUUyAweDAwMEIKICNkZWZpbmUgVElQQ19DTURfU0hPV19TVEFUUyAweDAwMEYKLSNkZWZpbmUgVElQQ19DTURfR0VUX1JFTU9URV9NTkcgMHg0MDAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUSVBDX0NNRF9HRVRfUkVNT1RFX01ORyAweDQwMDMKICNkZWZpbmUgVElQQ19DTURfR0VUX01BWF9QT1JUUyAweDQwMDQKICNkZWZpbmUgVElQQ19DTURfR0VUX01BWF9QVUJMIDB4NDAwNQogI2RlZmluZSBUSVBDX0NNRF9HRVRfTUFYX1NVQlNDUiAweDQwMDYKLSNkZWZpbmUgVElQQ19DTURfR0VUX01BWF9aT05FUyAweDQwMDcKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFRJUENfQ01EX0dFVF9NQVhfWk9ORVMgMHg0MDA3CiAjZGVmaW5lIFRJUENfQ01EX0dFVF9NQVhfQ0xVU1RFUlMgMHg0MDA4CiAjZGVmaW5lIFRJUENfQ01EX0dFVF9NQVhfTk9ERVMgMHg0MDA5CiAjZGVmaW5lIFRJUENfQ01EX0dFVF9NQVhfU0xBVkVTIDB4NDAwQQotI2RlZmluZSBUSVBDX0NNRF9HRVRfTkVUSUQgMHg0MDBCCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUSVBDX0NNRF9HRVRfTkVUSUQgMHg0MDBCCiAjZGVmaW5lIFRJUENfQ01EX0VOQUJMRV9CRUFSRVIgMHg0MTAxCiAjZGVmaW5lIFRJUENfQ01EX0RJU0FCTEVfQkVBUkVSIDB4NDEwMgogI2RlZmluZSBUSVBDX0NNRF9TRVRfTElOS19UT0wgMHg0MTA3Ci0jZGVmaW5lIFRJUENfQ01EX1NFVF9MSU5LX1BSSSAweDQxMDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFRJUENfQ01EX1NFVF9MSU5LX1BSSSAweDQxMDgKICNkZWZpbmUgVElQQ19DTURfU0VUX0xJTktfV0lORE9XIDB4NDEwOQogI2RlZmluZSBUSVBDX0NNRF9TRVRfTE9HX1NJWkUgMHg0MTBBCiAjZGVmaW5lIFRJUENfQ01EX0RVTVBfTE9HIDB4NDEwQgotI2RlZmluZSBUSVBDX0NNRF9SRVNFVF9MSU5LX1NUQVRTIDB4NDEwQwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVElQQ19DTURfUkVTRVRfTElOS19TVEFUUyAweDQxMEMKICNkZWZpbmUgVElQQ19DTURfU0VUX05PREVfQUREUiAweDgwMDEKICNkZWZpbmUgVElQQ19DTURfU0VUX1JFTU9URV9NTkcgMHg4MDAzCiAjZGVmaW5lIFRJUENfQ01EX1NFVF9NQVhfUE9SVFMgMHg4MDA0Ci0jZGVmaW5lIFRJUENfQ01EX1NFVF9NQVhfUFVCTCAweDgwMDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFRJUENfQ01EX1NFVF9NQVhfUFVCTCAweDgwMDUKICNkZWZpbmUgVElQQ19DTURfU0VUX01BWF9TVUJTQ1IgMHg4MDA2CiAjZGVmaW5lIFRJUENfQ01EX1NFVF9NQVhfWk9ORVMgMHg4MDA3CiAjZGVmaW5lIFRJUENfQ01EX1NFVF9NQVhfQ0xVU1RFUlMgMHg4MDA4Ci0jZGVmaW5lIFRJUENfQ01EX1NFVF9NQVhfTk9ERVMgMHg4MDA5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUSVBDX0NNRF9TRVRfTUFYX05PREVTIDB4ODAwOQogI2RlZmluZSBUSVBDX0NNRF9TRVRfTUFYX1NMQVZFUyAweDgwMEEKICNkZWZpbmUgVElQQ19DTURfU0VUX05FVElEIDB4ODAwQgogI2RlZmluZSBUSVBDX0NNRF9OT1RfTkVUX0FETUlOIDB4QzAwMQotI2RlZmluZSBUSVBDX1RMVl9OT05FIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFRJUENfVExWX05PTkUgMAogI2RlZmluZSBUSVBDX1RMVl9WT0lEIDEKICNkZWZpbmUgVElQQ19UTFZfVU5TSUdORUQgMgogI2RlZmluZSBUSVBDX1RMVl9TVFJJTkcgMwotI2RlZmluZSBUSVBDX1RMVl9MQVJHRV9TVFJJTkcgNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVElQQ19UTFZfTEFSR0VfU1RSSU5HIDQKICNkZWZpbmUgVElQQ19UTFZfVUxUUkFfU1RSSU5HIDUKICNkZWZpbmUgVElQQ19UTFZfRVJST1JfU1RSSU5HIDE2CiAjZGVmaW5lIFRJUENfVExWX05FVF9BRERSIDE3Ci0jZGVmaW5lIFRJUENfVExWX01FRElBX05BTUUgMTgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFRJUENfVExWX01FRElBX05BTUUgMTgKICNkZWZpbmUgVElQQ19UTFZfQkVBUkVSX05BTUUgMTkKICNkZWZpbmUgVElQQ19UTFZfTElOS19OQU1FIDIwCiAjZGVmaW5lIFRJUENfVExWX05PREVfSU5GTyAyMQotI2RlZmluZSBUSVBDX1RMVl9MSU5LX0lORk8gMjIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFRJUENfVExWX0xJTktfSU5GTyAyMgogI2RlZmluZSBUSVBDX1RMVl9CRUFSRVJfQ09ORklHIDIzCiAjZGVmaW5lIFRJUENfVExWX0xJTktfQ09ORklHIDI0CiAjZGVmaW5lIFRJUENfVExWX05BTUVfVEJMX1FVRVJZIDI1CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX1RMVl9QT1JUX1JFRiAyNgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVElQQ19NQVhfTUVESUFfTkFNRSAxNgotI2RlZmluZSBUSVBDX01BWF9JRl9OQU1FIDE2Ci0jZGVmaW5lIFRJUENfTUFYX0JFQVJFUl9OQU1FIDMyCi0jZGVmaW5lIFRJUENfTUFYX0xJTktfTkFNRSA2MAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19NSU5fTElOS19QUkkgMAogI2RlZmluZSBUSVBDX0RFRl9MSU5LX1BSSSAxMAogI2RlZmluZSBUSVBDX01BWF9MSU5LX1BSSSAzMQotI2RlZmluZSBUSVBDX01FRElBX0xJTktfUFJJIChUSVBDX01BWF9MSU5LX1BSSSArIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBUSVBDX01FRElBX0xJTktfUFJJIChUSVBDX01BWF9MSU5LX1BSSSArIDEpCiAjZGVmaW5lIFRJUENfTUlOX0xJTktfVE9MIDUwCiAjZGVmaW5lIFRJUENfREVGX0xJTktfVE9MIDE1MDAKICNkZWZpbmUgVElQQ19NQVhfTElOS19UT0wgMzAwMDAKLSNpZiBUSVBDX01JTl9MSU5LX1RPTCA8IDE2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2lmIFRJUENfTUlOX0xJTktfVE9MIDwgMTYKICNlcnJvciAiVElQQ19NSU5fTElOS19UT0wgaXMgdG9vIHNtYWxsIChhYm9ydCBsaW1pdCBtYXkgYmUgTmFOKSIKICNlbmRpZgogI2RlZmluZSBUSVBDX01JTl9MSU5LX1dJTiAxNgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVElQQ19ERUZfTElOS19XSU4gNTAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFRJUENfTUFYX0xJTktfV0lOIDE1MAorI2RlZmluZSBUSVBDX01BWF9MSU5LX1dJTiA4MTkxCiBzdHJ1Y3QgdGlwY19ub2RlX2luZm8gewotIF9fYmUzMiBhZGRyOwotIF9fYmUzMiB1cDsKKyAgX19iZTMyIGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX2JlMzIgdXA7CiB9Owogc3RydWN0IHRpcGNfbGlua19pbmZvIHsKLSBfX2JlMzIgZGVzdDsKLSBfX2JlMzIgdXA7CisgIF9fYmUzMiBkZXN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHN0cltUSVBDX01BWF9MSU5LX05BTUVdOworICBfX2JlMzIgdXA7CisgIGNoYXIgc3RyW1RJUENfTUFYX0xJTktfTkFNRV07CiB9Owogc3RydWN0IHRpcGNfYmVhcmVyX2NvbmZpZyB7Ci0gX19iZTMyIHByaW9yaXR5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgZGlzY19kb21haW47Ci0gY2hhciBuYW1lW1RJUENfTUFYX0JFQVJFUl9OQU1FXTsKKyAgX19iZTMyIHByaW9yaXR5OworICBfX2JlMzIgZGlzY19kb21haW47CisgIGNoYXIgbmFtZVtUSVBDX01BWF9CRUFSRVJfTkFNRV07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0aXBjX2xpbmtfY29uZmlnIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHZhbHVlOwotIGNoYXIgbmFtZVtUSVBDX01BWF9MSU5LX05BTUVdOworICBfX2JlMzIgdmFsdWU7CisgIGNoYXIgbmFtZVtUSVBDX01BWF9MSU5LX05BTUVdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJUENfTlRRX0FMTFRZUEVTIDB4ODAwMDAwMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdGlwY19uYW1lX3RhYmxlX3F1ZXJ5IHsKLSBfX2JlMzIgZGVwdGg7Ci0gX19iZTMyIHR5cGU7Ci0gX19iZTMyIGxvd2JvdW5kOworICBfX2JlMzIgZGVwdGg7CisgIF9fYmUzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgdXBib3VuZDsKKyAgX19iZTMyIGxvd2JvdW5kOworICBfX2JlMzIgdXBib3VuZDsKIH07CiAjZGVmaW5lIFRJUENfQ0ZHX1RMVl9FUlJPUiAiXHg4MCIKLSNkZWZpbmUgVElQQ19DRkdfTk9UX05FVF9BRE1JTiAiXHg4MSIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFRJUENfQ0ZHX05PVF9ORVRfQURNSU4gIlx4ODEiCiAjZGVmaW5lIFRJUENfQ0ZHX05PVF9aT05FX01TVFIgIlx4ODIiCiAjZGVmaW5lIFRJUENfQ0ZHX05PX1JFTU9URSAiXHg4MyIKICNkZWZpbmUgVElQQ19DRkdfTk9UX1NVUFBPUlRFRCAiXHg4NCIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRJUENfQ0ZHX0lOVkFMSURfVkFMVUUgIlx4ODUiCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHRsdl9kZXNjIHsKLSBfX2JlMTYgdGx2X2xlbjsKLSBfX2JlMTYgdGx2X3R5cGU7CisgIF9fYmUxNiB0bHZfbGVuOworICBfX2JlMTYgdGx2X3R5cGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRMVl9BTElHTlRPIDQKLSNkZWZpbmUgVExWX0FMSUdOKGRhdGFsZW4pICgoKGRhdGFsZW4pKyhUTFZfQUxJR05UTy0xKSkgJiB+KFRMVl9BTElHTlRPLTEpKQorI2RlZmluZSBUTFZfQUxJR04oZGF0YWxlbikgKCgoZGF0YWxlbikgKyAoVExWX0FMSUdOVE8gLSAxKSkgJiB+KFRMVl9BTElHTlRPIC0gMSkpCiAjZGVmaW5lIFRMVl9MRU5HVEgoZGF0YWxlbikgKHNpemVvZihzdHJ1Y3QgdGx2X2Rlc2MpICsgKGRhdGFsZW4pKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVExWX1NQQUNFKGRhdGFsZW4pIChUTFZfQUxJR04oVExWX0xFTkdUSChkYXRhbGVuKSkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBUTFZfREFUQSh0bHYpICgodm9pZCAqKSgoY2hhciAqKSh0bHYpICsgVExWX0xFTkdUSCgwKSkpCisjZGVmaW5lIFRMVl9EQVRBKHRsdikgKCh2b2lkICopICgoY2hhciAqKSAodGx2KSArIFRMVl9MRU5HVEgoMCkpKQogc3RydWN0IHRsdl9saXN0X2Rlc2MgewotIHN0cnVjdCB0bHZfZGVzYyAqdGx2X3B0cjsKLSBfX3UzMiB0bHZfc3BhY2U7CisgIHN0cnVjdCB0bHZfZGVzYyAqIHRsdl9wdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiB0bHZfc3BhY2U7CiB9OwogI2RlZmluZSBUSVBDX0dFTkxfTkFNRSAiVElQQyIKICNkZWZpbmUgVElQQ19HRU5MX1ZFUlNJT04gMHgxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUSVBDX0dFTkxfQ01EIDB4MQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB0aXBjX2dlbmxtc2doZHIgewotIF9fdTMyIGRlc3Q7Ci0gX191MTYgY21kOwotIF9fdTE2IHJlc2VydmVkOworICBfX3UzMiBkZXN0OworICBfX3UxNiBjbWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiByZXNlcnZlZDsKIH07CiAjZGVmaW5lIFRJUENfR0VOTF9IRFJMRU4gTkxNU0dfQUxJR04oc2l6ZW9mKHN0cnVjdCB0aXBjX2dlbmxtc2doZHIpKQogc3RydWN0IHRpcGNfY2ZnX21zZ19oZHIgewotIF9fYmUzMiB0Y21fbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgdGNtX3R5cGU7Ci0gX19iZTE2IHRjbV9mbGFnczsKLSBjaGFyIHRjbV9yZXNlcnZlZFs4XTsKKyAgX19iZTMyIHRjbV9sZW47CisgIF9fYmUxNiB0Y21fdHlwZTsKKyAgX19iZTE2IHRjbV9mbGFnczsKKyAgY2hhciB0Y21fcmVzZXJ2ZWRbOF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRDTV9GX1JFUVVFU1QgMHgxCiAjZGVmaW5lIFRDTV9GX01PUkUgMHgyCi0jZGVmaW5lIFRDTV9BTElHTihkYXRhbGVuKSAoKChkYXRhbGVuKSszKSAmIH4zKQotI2RlZmluZSBUQ01fTEVOR1RIKGRhdGFsZW4pIChzaXplb2Yoc3RydWN0IHRpcGNfY2ZnX21zZ19oZHIpICsgZGF0YWxlbikKKyNkZWZpbmUgVENNX0FMSUdOKGRhdGFsZW4pICgoKGRhdGFsZW4pICsgMykgJiB+MykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFRDTV9MRU5HVEgoZGF0YWxlbikgKHNpemVvZihzdHJ1Y3QgdGlwY19jZmdfbXNnX2hkcikgKyBkYXRhbGVuKQogI2RlZmluZSBUQ01fU1BBQ0UoZGF0YWxlbikgKFRDTV9BTElHTihUQ01fTEVOR1RIKGRhdGFsZW4pKSkKLSNkZWZpbmUgVENNX0RBVEEodGNtX2hkcikgKCh2b2lkICopKChjaGFyICopKHRjbV9oZHIpICsgVENNX0xFTkdUSCgwKSkpCisjZGVmaW5lIFRDTV9EQVRBKHRjbV9oZHIpICgodm9pZCAqKSAoKGNoYXIgKikgKHRjbV9oZHIpICsgVENNX0xFTkdUSCgwKSkpCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Rvc2hpYmEuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdG9zaGliYS5oCmluZGV4IDA5YjIwYjUuLjA0ZThlZTUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdG9zaGliYS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdG9zaGliYS5oCkBAIC0yMywxMyArMjMsMTMgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFRPU0hfU01NIF9JT1dSKCd0JywgMHg5MCwgaW50KQogdHlwZWRlZiBzdHJ1Y3QgewotIHVuc2lnbmVkIGludCBlYXg7Ci0gdW5zaWduZWQgaW50IGVieCBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIHVuc2lnbmVkIGludCBlYXg7CisgIHVuc2lnbmVkIGludCBlYnggX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBlY3ggX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOwotIHVuc2lnbmVkIGludCBlZHggX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOwotIHVuc2lnbmVkIGludCBlc2kgX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOwotIHVuc2lnbmVkIGludCBlZGkgX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICB1bnNpZ25lZCBpbnQgZWN4IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworICB1bnNpZ25lZCBpbnQgZWR4IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworICB1bnNpZ25lZCBpbnQgZXNpIF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworICB1bnNpZ25lZCBpbnQgZWRpIF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gU01NUmVnaXN0ZXJzOwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3R0eV9mbGFncy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC90dHlfZmxhZ3MuaAppbmRleCAyM2QxZTVkLi5iY2M1ZjYwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3R0eV9mbGFncy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdHR5X2ZsYWdzLmgKQEAgLTc0LDExICs3NCwxMSBAQAogI2RlZmluZSBBU1lOQ19CVUdHWV9VQVJUICgxVSA8PCBBU1lOQ0JfQlVHR1lfVUFSVCkKICNkZWZpbmUgQVNZTkNfQVVUT1BST0JFICgxVSA8PCBBU1lOQ0JfQVVUT1BST0JFKQogI2RlZmluZSBBU1lOQ19GTEFHUyAoKDFVIDw8IChBU1lOQ0JfTEFTVF9VU0VSICsgMSkpIC0gMSkKLSNkZWZpbmUgQVNZTkNfVVNSX01BU0sgKEFTWU5DX1NQRF9NQVNLfEFTWU5DX0NBTExPVVRfTk9IVVB8ICAgQVNZTkNfTE9XX0xBVEVOQ1kpCisjZGVmaW5lIEFTWU5DX1VTUl9NQVNLIChBU1lOQ19TUERfTUFTSyB8IEFTWU5DX0NBTExPVVRfTk9IVVAgfCBBU1lOQ19MT1dfTEFURU5DWSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFTWU5DX1NQRF9DVVNUIChBU1lOQ19TUERfSEl8QVNZTkNfU1BEX1ZISSkKLSNkZWZpbmUgQVNZTkNfU1BEX1dBUlAgKEFTWU5DX1NQRF9ISXxBU1lOQ19TUERfU0hJKQotI2RlZmluZSBBU1lOQ19TUERfTUFTSyAoQVNZTkNfU1BEX0hJfEFTWU5DX1NQRF9WSEl8QVNZTkNfU1BEX1NISSkKKyNkZWZpbmUgQVNZTkNfU1BEX0NVU1QgKEFTWU5DX1NQRF9ISSB8IEFTWU5DX1NQRF9WSEkpCisjZGVmaW5lIEFTWU5DX1NQRF9XQVJQIChBU1lOQ19TUERfSEkgfCBBU1lOQ19TUERfU0hJKQorI2RlZmluZSBBU1lOQ19TUERfTUFTSyAoQVNZTkNfU1BEX0hJIHwgQVNZTkNfU1BEX1ZISSB8IEFTWU5DX1NQRF9TSEkpCiAjZGVmaW5lIEFTWU5DX0lOSVRJQUxJWkVEICgxVSA8PCBBU1lOQ0JfSU5JVElBTElaRUQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBBU1lOQ19OT1JNQUxfQUNUSVZFICgxVSA8PCBBU1lOQ0JfTk9STUFMX0FDVElWRSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdWRwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VkcC5oCmluZGV4IDQxYTA1OTIuLmUxZDU0NmMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdWRwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91ZHAuaApAQCAtMjEsMTYgKzIxLDE5IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB1ZHBoZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgc291cmNlOwotIF9fYmUxNiBkZXN0OwotIF9fYmUxNiBsZW47Ci0gX19zdW0xNiBjaGVjazsKKyAgX19iZTE2IHNvdXJjZTsKKyAgX19iZTE2IGRlc3Q7CisgIF9fYmUxNiBsZW47CisgIF9fc3VtMTYgY2hlY2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVURQX0NPUksgMQogI2RlZmluZSBVRFBfRU5DQVAgMTAwCi0jZGVmaW5lIFVEUF9FTkNBUF9FU1BJTlVEUF9OT05fSUtFIDEKKyNkZWZpbmUgVURQX05PX0NIRUNLNl9UWCAxMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFVEUF9OT19DSEVDSzZfUlggMTAyCisjZGVmaW5lIFVEUF9FTkNBUF9FU1BJTlVEUF9OT05fSUtFIDEKICNkZWZpbmUgVURQX0VOQ0FQX0VTUElOVURQIDIKICNkZWZpbmUgVURQX0VOQ0FQX0wyVFBJTlVEUCAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VoaWQuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdWhpZC5oCmluZGV4IDM3YzNiMTcuLmUwMTJhOGQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdWhpZC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdWhpZC5oCkBAIC0yMSw4OCArMjEsMTY5IEBACiAjaW5jbHVkZSA8bGludXgvaW5wdXQuaD4KICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNpbmNsdWRlIDxsaW51eC9oaWQuaD4KIGVudW0gdWhpZF9ldmVudF90eXBlIHsKLSBVSElEX0NSRUFURSwKLSBVSElEX0RFU1RST1ksCi0gVUhJRF9TVEFSVCwKKyAgX19VSElEX0xFR0FDWV9DUkVBVEUsCisgIFVISURfREVTVFJPWSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVUhJRF9TVE9QLAotIFVISURfT1BFTiwKLSBVSElEX0NMT1NFLAotIFVISURfT1VUUFVULAorICBVSElEX1NUQVJULAorICBVSElEX1NUT1AsCisgIFVISURfT1BFTiwKKyAgVUhJRF9DTE9TRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVUhJRF9PVVRQVVRfRVYsCi0gVUhJRF9JTlBVVCwKLSBVSElEX0ZFQVRVUkUsCi0gVUhJRF9GRUFUVVJFX0FOU1dFUiwKKyAgVUhJRF9PVVRQVVQsCisgIF9fVUhJRF9MRUdBQ1lfT1VUUFVUX0VWLAorICBfX1VISURfTEVHQUNZX0lOUFVULAorICBVSElEX0dFVF9SRVBPUlQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBVSElEX0dFVF9SRVBPUlRfUkVQTFksCisgIFVISURfQ1JFQVRFMiwKKyAgVUhJRF9JTlBVVDIsCisgIFVISURfU0VUX1JFUE9SVCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFVISURfU0VUX1JFUE9SVF9SRVBMWSwKIH07Ci1zdHJ1Y3QgdWhpZF9jcmVhdGVfcmVxIHsKLSBfX3U4IG5hbWVbMTI4XTsKLSBfX3U4IHBoeXNbNjRdOworc3RydWN0IHVoaWRfY3JlYXRlMl9yZXEgeworICBfX3U4IG5hbWVbMTI4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB1bmlxWzY0XTsKLSBfX3U4IF9fdXNlciAqcmRfZGF0YTsKLSBfX3UxNiByZF9zaXplOwotIF9fdTE2IGJ1czsKKyAgX191OCBwaHlzWzY0XTsKKyAgX191OCB1bmlxWzY0XTsKKyAgX191MTYgcmRfc2l6ZTsKKyAgX191MTYgYnVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB2ZW5kb3I7Ci0gX191MzIgcHJvZHVjdDsKLSBfX3UzMiB2ZXJzaW9uOwotIF9fdTMyIGNvdW50cnk7CisgIF9fdTMyIHZlbmRvcjsKKyAgX191MzIgcHJvZHVjdDsKKyAgX191MzIgdmVyc2lvbjsKKyAgX191MzIgY291bnRyeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcmRfZGF0YVtISURfTUFYX0RFU0NSSVBUT1JfU0laRV07CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKK2VudW0gdWhpZF9kZXZfZmxhZyB7CisgIFVISURfREVWX05VTUJFUkVEX0ZFQVRVUkVfUkVQT1JUUyA9ICgxVUxMIDw8IDApLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVUhJRF9ERVZfTlVNQkVSRURfT1VUUFVUX1JFUE9SVFMgPSAoMVVMTCA8PCAxKSwKKyAgVUhJRF9ERVZfTlVNQkVSRURfSU5QVVRfUkVQT1JUUyA9ICgxVUxMIDw8IDIpLAorfTsKK3N0cnVjdCB1aGlkX3N0YXJ0X3JlcSB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBkZXZfZmxhZ3M7Cit9OwogI2RlZmluZSBVSElEX0RBVEFfTUFYIDQwOTYKIGVudW0gdWhpZF9yZXBvcnRfdHlwZSB7Ci0gVUhJRF9GRUFUVVJFX1JFUE9SVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVUhJRF9PVVRQVVRfUkVQT1JULAotIFVISURfSU5QVVRfUkVQT1JULAorICBVSElEX0ZFQVRVUkVfUkVQT1JULAorICBVSElEX09VVFBVVF9SRVBPUlQsCisgIFVISURfSU5QVVRfUkVQT1JULAogfTsKLXN0cnVjdCB1aGlkX2lucHV0X3JlcSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGF0YVtVSElEX0RBVEFfTUFYXTsKLSBfX3UxNiBzaXplOworc3RydWN0IHVoaWRfaW5wdXQyX3JlcSB7CisgIF9fdTE2IHNpemU7CisgIF9fdTggZGF0YVtVSElEX0RBVEFfTUFYXTsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1aGlkX291dHB1dF9yZXEgeworICBfX3U4IGRhdGFbVUhJRF9EQVRBX01BWF07CisgIF9fdTE2IHNpemU7CisgIF9fdTggcnR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGF0YVtVSElEX0RBVEFfTUFYXTsKLSBfX3UxNiBzaXplOwotIF9fdTggcnR5cGU7Cit9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKK3N0cnVjdCB1aGlkX2dldF9yZXBvcnRfcmVxIHsKKyAgX191MzIgaWQ7CisgIF9fdTggcm51bTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcnR5cGU7Cit9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKK3N0cnVjdCB1aGlkX2dldF9yZXBvcnRfcmVwbHlfcmVxIHsKKyAgX191MzIgaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBlcnI7CisgIF9fdTE2IHNpemU7CisgIF9fdTggZGF0YVtVSElEX0RBVEFfTUFYXTsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCB1aGlkX291dHB1dF9ldl9yZXEgewotIF9fdTE2IHR5cGU7Ci0gX191MTYgY29kZTsKLSBfX3MzMiB2YWx1ZTsKK3N0cnVjdCB1aGlkX3NldF9yZXBvcnRfcmVxIHsKKyAgX191MzIgaWQ7CisgIF9fdTggcm51bTsKKyAgX191OCBydHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IHNpemU7CisgIF9fdTggZGF0YVtVSElEX0RBVEFfTUFYXTsKK30gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOworc3RydWN0IHVoaWRfc2V0X3JlcG9ydF9yZXBseV9yZXEgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgaWQ7CisgIF9fdTE2IGVycjsKK30gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOworZW51bSB1aGlkX2xlZ2FjeV9ldmVudF90eXBlIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFVISURfQ1JFQVRFID0gX19VSElEX0xFR0FDWV9DUkVBVEUsCisgIFVISURfT1VUUFVUX0VWID0gX19VSElEX0xFR0FDWV9PVVRQVVRfRVYsCisgIFVISURfSU5QVVQgPSBfX1VISURfTEVHQUNZX0lOUFVULAorICBVSElEX0ZFQVRVUkUgPSBVSElEX0dFVF9SRVBPUlQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBVSElEX0ZFQVRVUkVfQU5TV0VSID0gVUhJRF9HRVRfUkVQT1JUX1JFUExZLAorfTsKK3N0cnVjdCB1aGlkX2NyZWF0ZV9yZXEgeworICBfX3U4IG5hbWVbMTI4XTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcGh5c1s2NF07CisgIF9fdTggdW5pcVs2NF07CisgIF9fdTggX191c2VyICogcmRfZGF0YTsKKyAgX191MTYgcmRfc2l6ZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IGJ1czsKKyAgX191MzIgdmVuZG9yOworICBfX3UzMiBwcm9kdWN0OworICBfX3UzMiB2ZXJzaW9uOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgY291bnRyeTsKK30gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOworc3RydWN0IHVoaWRfaW5wdXRfcmVxIHsKKyAgX191OCBkYXRhW1VISURfREFUQV9NQVhdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgc2l6ZTsKK30gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOworc3RydWN0IHVoaWRfb3V0cHV0X2V2X3JlcSB7CisgIF9fdTE2IHR5cGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBjb2RlOworICBfX3MzMiB2YWx1ZTsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogc3RydWN0IHVoaWRfZmVhdHVyZV9yZXEgewotIF9fdTMyIGlkOwotIF9fdTggcm51bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBydHlwZTsKKyAgX191MzIgaWQ7CisgIF9fdTggcm51bTsKKyAgX191OCBydHlwZTsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1aGlkX2ZlYXR1cmVfYW5zd2VyX3JlcSB7Ci0gX191MzIgaWQ7CisgIF9fdTMyIGlkOworICBfX3UxNiBlcnI7CisgIF9fdTE2IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGVycjsKLSBfX3UxNiBzaXplOwotIF9fdTggZGF0YVtVSElEX0RBVEFfTUFYXTsKKyAgX191OCBkYXRhW1VISURfREFUQV9NQVhdOwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVoaWRfZXZlbnQgewotIF9fdTMyIHR5cGU7Ci0gdW5pb24gewotIHN0cnVjdCB1aGlkX2NyZWF0ZV9yZXEgY3JlYXRlOworICBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdWhpZF9pbnB1dF9yZXEgaW5wdXQ7Ci0gc3RydWN0IHVoaWRfb3V0cHV0X3JlcSBvdXRwdXQ7Ci0gc3RydWN0IHVoaWRfb3V0cHV0X2V2X3JlcSBvdXRwdXRfZXY7Ci0gc3RydWN0IHVoaWRfZmVhdHVyZV9yZXEgZmVhdHVyZTsKKyAgdW5pb24geworICAgIHN0cnVjdCB1aGlkX2NyZWF0ZV9yZXEgY3JlYXRlOworICAgIHN0cnVjdCB1aGlkX2lucHV0X3JlcSBpbnB1dDsKKyAgICBzdHJ1Y3QgdWhpZF9vdXRwdXRfcmVxIG91dHB1dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHVoaWRfZmVhdHVyZV9hbnN3ZXJfcmVxIGZlYXR1cmVfYW5zd2VyOwotIH0gdTsKKyAgICBzdHJ1Y3QgdWhpZF9vdXRwdXRfZXZfcmVxIG91dHB1dF9ldjsKKyAgICBzdHJ1Y3QgdWhpZF9mZWF0dXJlX3JlcSBmZWF0dXJlOworICAgIHN0cnVjdCB1aGlkX2dldF9yZXBvcnRfcmVxIGdldF9yZXBvcnQ7CisgICAgc3RydWN0IHVoaWRfZmVhdHVyZV9hbnN3ZXJfcmVxIGZlYXR1cmVfYW5zd2VyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICBzdHJ1Y3QgdWhpZF9nZXRfcmVwb3J0X3JlcGx5X3JlcSBnZXRfcmVwb3J0X3JlcGx5OworICAgIHN0cnVjdCB1aGlkX2NyZWF0ZTJfcmVxIGNyZWF0ZTI7CisgICAgc3RydWN0IHVoaWRfaW5wdXQyX3JlcSBpbnB1dDI7CisgICAgc3RydWN0IHVoaWRfc2V0X3JlcG9ydF9yZXEgc2V0X3JlcG9ydDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgc3RydWN0IHVoaWRfc2V0X3JlcG9ydF9yZXBseV9yZXEgc2V0X3JlcG9ydF9yZXBseTsKKyAgICBzdHJ1Y3QgdWhpZF9zdGFydF9yZXEgc3RhcnQ7CisgIH0gdTsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwotI2VuZGlmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VpbnB1dC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91aW5wdXQuaAppbmRleCA2YWQwMzM0Li44NDVhZmZjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VpbnB1dC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdWlucHV0LmgKQEAgLTIxLDE5ICsyMSwxOSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiAjaW5jbHVkZSA8bGludXgvaW5wdXQuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFVJTlBVVF9WRVJTSU9OIDMKKyNkZWZpbmUgVUlOUFVUX1ZFUlNJT04gNAogc3RydWN0IHVpbnB1dF9mZl91cGxvYWQgewotIF9fdTMyIHJlcXVlc3RfaWQ7Ci0gX19zMzIgcmV0dmFsOworICBfX3UzMiByZXF1ZXN0X2lkOworICBfX3MzMiByZXR2YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmZl9lZmZlY3QgZWZmZWN0OwotIHN0cnVjdCBmZl9lZmZlY3Qgb2xkOworICBzdHJ1Y3QgZmZfZWZmZWN0IGVmZmVjdDsKKyAgc3RydWN0IGZmX2VmZmVjdCBvbGQ7CiB9Owogc3RydWN0IHVpbnB1dF9mZl9lcmFzZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlcXVlc3RfaWQ7Ci0gX19zMzIgcmV0dmFsOwotIF9fdTMyIGVmZmVjdF9pZDsKKyAgX191MzIgcmVxdWVzdF9pZDsKKyAgX19zMzIgcmV0dmFsOworICBfX3UzMiBlZmZlY3RfaWQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUlOUFVUX0lPQ1RMX0JBU0UgJ1UnCkBAIC00OSw3ICs0OSw3IEBACiAjZGVmaW5lIFVJX1NFVF9MRURCSVQgX0lPVyhVSU5QVVRfSU9DVExfQkFTRSwgMTA1LCBpbnQpCiAjZGVmaW5lIFVJX1NFVF9TTkRCSVQgX0lPVyhVSU5QVVRfSU9DVExfQkFTRSwgMTA2LCBpbnQpCiAjZGVmaW5lIFVJX1NFVF9GRkJJVCBfSU9XKFVJTlBVVF9JT0NUTF9CQVNFLCAxMDcsIGludCkKLSNkZWZpbmUgVUlfU0VUX1BIWVMgX0lPVyhVSU5QVVRfSU9DVExfQkFTRSwgMTA4LCBjaGFyKikKKyNkZWZpbmUgVUlfU0VUX1BIWVMgX0lPVyhVSU5QVVRfSU9DVExfQkFTRSwgMTA4LCBjaGFyICopCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVSV9TRVRfU1dCSVQgX0lPVyhVSU5QVVRfSU9DVExfQkFTRSwgMTA5LCBpbnQpCiAjZGVmaW5lIFVJX1NFVF9QUk9QQklUIF9JT1coVUlOUFVUX0lPQ1RMX0JBU0UsIDExMCwgaW50KQpAQCAtNTgsMjEgKzU4LDIzIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVSV9CRUdJTl9GRl9FUkFTRSBfSU9XUihVSU5QVVRfSU9DVExfQkFTRSwgMjAyLCBzdHJ1Y3QgdWlucHV0X2ZmX2VyYXNlKQogI2RlZmluZSBVSV9FTkRfRkZfRVJBU0UgX0lPVyhVSU5QVVRfSU9DVExfQkFTRSwgMjAzLCBzdHJ1Y3QgdWlucHV0X2ZmX2VyYXNlKQorI2RlZmluZSBVSV9HRVRfU1lTTkFNRShsZW4pIF9JT0MoX0lPQ19SRUFELCBVSU5QVVRfSU9DVExfQkFTRSwgMzAwLCBsZW4pCisjZGVmaW5lIFVJX0dFVF9WRVJTSU9OIF9JT1IoVUlOUFVUX0lPQ1RMX0JBU0UsIDMwMSwgdW5zaWduZWQgaW50KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRVZfVUlOUFVUIDB4MDEwMQogI2RlZmluZSBVSV9GRl9VUExPQUQgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUlfRkZfRVJBU0UgMgogI2RlZmluZSBVSU5QVVRfTUFYX05BTUVfU0laRSA4MAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1aW5wdXRfdXNlcl9kZXYgewotIGNoYXIgbmFtZVtVSU5QVVRfTUFYX05BTUVfU0laRV07CisgIGNoYXIgbmFtZVtVSU5QVVRfTUFYX05BTUVfU0laRV07CisgIHN0cnVjdCBpbnB1dF9pZCBpZDsKKyAgX191MzIgZmZfZWZmZWN0c19tYXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpbnB1dF9pZCBpZDsKLSBfX3UzMiBmZl9lZmZlY3RzX21heDsKLSBfX3MzMiBhYnNtYXhbQUJTX0NOVF07Ci0gX19zMzIgYWJzbWluW0FCU19DTlRdOworICBfX3MzMiBhYnNtYXhbQUJTX0NOVF07CisgIF9fczMyIGFic21pbltBQlNfQ05UXTsKKyAgX19zMzIgYWJzZnV6eltBQlNfQ05UXTsKKyAgX19zMzIgYWJzZmxhdFtBQlNfQ05UXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgYWJzZnV6eltBQlNfQ05UXTsKLSBfX3MzMiBhYnNmbGF0W0FCU19DTlRdOwogfTsKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdWlvLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Vpby5oCmluZGV4IDQ0OTQwYzEuLmVlYWNiNTkgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdWlvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91aW8uaApAQCAtMjEsMTMgKzIxLDExIEBACiAjaW5jbHVkZSA8bGludXgvY29tcGlsZXIuaD4KICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBpb3ZlYwotewotIHZvaWQgX191c2VyICppb3ZfYmFzZTsKLSBfX2tlcm5lbF9zaXplX3QgaW92X2xlbjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgaW92ZWMgeworICB2b2lkIF9fdXNlciAqIGlvdl9iYXNlOworICBfX2tlcm5lbF9zaXplX3QgaW92X2xlbjsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVSU9fRkFTVElPViA4CiAjZGVmaW5lIFVJT19NQVhJT1YgMTAyNAogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91bHRyYXNvdW5kLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VsdHJhc291bmQuaAppbmRleCAzM2M0YjViLi5kOTU4MmJlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VsdHJhc291bmQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VsdHJhc291bmQuaApAQCAtMzksMjcgKzM5LDI3IEBACiAjZGVmaW5lIF9HVVNfVk9MVU1FX1NDQUxFIDB4MGUKICNkZWZpbmUgX0dVU19WT0lDRVZPTDIgMHgwZgogI2RlZmluZSBfR1VTX1ZPSUNFX1BPUyAweDEwCi0jZGVmaW5lIF9HVVNfQ01EKGNobiwgdm9pY2UsIGNtZCwgcDEsIHAyKSAgIHtfU0VRX05FRURCVUYoOCk7IF9zZXFidWZbX3NlcWJ1ZnB0cl0gPSBTRVFfUFJJVkFURTsgIF9zZXFidWZbX3NlcWJ1ZnB0cisxXSA9IChjaG4pOyBfc2VxYnVmW19zZXFidWZwdHIrMl0gPSBjbWQ7ICBfc2VxYnVmW19zZXFidWZwdHIrM10gPSB2b2ljZTsgICoodW5zaWduZWQgc2hvcnQqKSZfc2VxYnVmW19zZXFidWZwdHIrNF0gPSBwMTsgICoodW5zaWduZWQgc2hvcnQqKSZfc2VxYnVmW19zZXFidWZwdHIrNl0gPSBwMjsgIF9TRVFfQURWQlVGKDgpO30KKyNkZWZpbmUgX0dVU19DTUQoY2huLHZvaWNlLGNtZCxwMSxwMikgeyBfU0VRX05FRURCVUYoOCk7IF9zZXFidWZbX3NlcWJ1ZnB0cl0gPSBTRVFfUFJJVkFURTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMV0gPSAoY2huKTsgX3NlcWJ1Zltfc2VxYnVmcHRyICsgMl0gPSBjbWQ7IF9zZXFidWZbX3NlcWJ1ZnB0ciArIDNdID0gdm9pY2U7ICogKHVuc2lnbmVkIHNob3J0ICopICYgX3NlcWJ1Zltfc2VxYnVmcHRyICsgNF0gPSBwMTsgKiAodW5zaWduZWQgc2hvcnQgKikgJiBfc2VxYnVmW19zZXFidWZwdHIgKyA2XSA9IHAyOyBfU0VRX0FEVkJVRig4KTsgfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgR1VTX05VTVZPSUNFUyhjaG4sIHAxKSBfR1VTX0NNRChjaG4sIDAsIF9HVVNfTlVNVk9JQ0VTLCAocDEpLCAwKQotI2RlZmluZSBHVVNfVk9JQ0VTQU1QTEUoY2huLCB2b2ljZSwgcDEpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VTQU1QTEUsIChwMSksIDApCi0jZGVmaW5lIEdVU19WT0lDRU9OKGNobiwgdm9pY2UsIHAxKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPSUNFT04sIChwMSksIDApCi0jZGVmaW5lIEdVU19WT0lDRU9GRihjaG4sIHZvaWNlKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPSUNFT0ZGLCAwLCAwKQorI2RlZmluZSBHVVNfTlVNVk9JQ0VTKGNobixwMSkgX0dVU19DTUQoY2huLCAwLCBfR1VTX05VTVZPSUNFUywgKHAxKSwgMCkKKyNkZWZpbmUgR1VTX1ZPSUNFU0FNUExFKGNobix2b2ljZSxwMSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0lDRVNBTVBMRSwgKHAxKSwgMCkKKyNkZWZpbmUgR1VTX1ZPSUNFT04oY2huLHZvaWNlLHAxKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPSUNFT04sIChwMSksIDApCisjZGVmaW5lIEdVU19WT0lDRU9GRihjaG4sdm9pY2UpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VPRkYsIDAsIDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBHVVNfVk9JQ0VGQURFKGNobiwgdm9pY2UpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VGQURFLCAwLCAwKQotI2RlZmluZSBHVVNfVk9JQ0VNT0RFKGNobiwgdm9pY2UsIHAxKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPSUNFTU9ERSwgKHAxKSwgMCkKLSNkZWZpbmUgR1VTX1ZPSUNFQkFMQShjaG4sIHZvaWNlLCBwMSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0lDRUJBTEEsIChwMSksIDApCi0jZGVmaW5lIEdVU19WT0lDRUZSRVEoY2huLCB2b2ljZSwgcCkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0lDRUZSRVEsICAgKHApICYgMHhmZmZmLCAoKHApID4+IDE2KSAmIDB4ZmZmZikKKyNkZWZpbmUgR1VTX1ZPSUNFRkFERShjaG4sdm9pY2UpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VGQURFLCAwLCAwKQorI2RlZmluZSBHVVNfVk9JQ0VNT0RFKGNobix2b2ljZSxwMSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0lDRU1PREUsIChwMSksIDApCisjZGVmaW5lIEdVU19WT0lDRUJBTEEoY2huLHZvaWNlLHAxKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPSUNFQkFMQSwgKHAxKSwgMCkKKyNkZWZpbmUgR1VTX1ZPSUNFRlJFUShjaG4sdm9pY2UscCkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0lDRUZSRVEsIChwKSAmIDB4ZmZmZiwgKChwKSA+PiAxNikgJiAweGZmZmYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBHVVNfVk9JQ0VWT0woY2huLCB2b2ljZSwgcDEpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VWT0wsIChwMSksIDApCi0jZGVmaW5lIEdVU19WT0lDRVZPTDIoY2huLCB2b2ljZSwgcDEpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VWT0wyLCAocDEpLCAwKQotI2RlZmluZSBHVVNfUkFNUFJBTkdFKGNobiwgdm9pY2UsIGxvdywgaGlnaCkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19SQU1QUkFOR0UsIChsb3cpLCAoaGlnaCkpCi0jZGVmaW5lIEdVU19SQU1QUkFURShjaG4sIHZvaWNlLCBwMSwgcDIpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfUkFNUFJBVEUsIChwMSksIChwMikpCisjZGVmaW5lIEdVU19WT0lDRVZPTChjaG4sdm9pY2UscDEpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfVk9JQ0VWT0wsIChwMSksIDApCisjZGVmaW5lIEdVU19WT0lDRVZPTDIoY2huLHZvaWNlLHAxKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPSUNFVk9MMiwgKHAxKSwgMCkKKyNkZWZpbmUgR1VTX1JBTVBSQU5HRShjaG4sdm9pY2UsbG93LGhpZ2gpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfUkFNUFJBTkdFLCAobG93KSwgKGhpZ2gpKQorI2RlZmluZSBHVVNfUkFNUFJBVEUoY2huLHZvaWNlLHAxLHAyKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1JBTVBSQVRFLCAocDEpLCAocDIpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgR1VTX1JBTVBNT0RFKGNobiwgdm9pY2UsIHAxKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1JBTVBNT0RFLCAocDEpLCAwKQotI2RlZmluZSBHVVNfUkFNUE9OKGNobiwgdm9pY2UsIHAxKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1JBTVBPTiwgKHAxKSwgMCkKLSNkZWZpbmUgR1VTX1JBTVBPRkYoY2huLCB2b2ljZSkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19SQU1QT0ZGLCAwLCAwKQotI2RlZmluZSBHVVNfVk9MVU1FX1NDQUxFKGNobiwgdm9pY2UsIHAxLCBwMikgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0xVTUVfU0NBTEUsIChwMSksIChwMikpCisjZGVmaW5lIEdVU19SQU1QTU9ERShjaG4sdm9pY2UscDEpIF9HVVNfQ01EKGNobiwgdm9pY2UsIF9HVVNfUkFNUE1PREUsIChwMSksIDApCisjZGVmaW5lIEdVU19SQU1QT04oY2huLHZvaWNlLHAxKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1JBTVBPTiwgKHAxKSwgMCkKKyNkZWZpbmUgR1VTX1JBTVBPRkYoY2huLHZvaWNlKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1JBTVBPRkYsIDAsIDApCisjZGVmaW5lIEdVU19WT0xVTUVfU0NBTEUoY2huLHZvaWNlLHAxLHAyKSBfR1VTX0NNRChjaG4sIHZvaWNlLCBfR1VTX1ZPTFVNRV9TQ0FMRSwgKHAxKSwgKHAyKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEdVU19WT0lDRV9QT1MoY2huLCB2b2ljZSwgcCkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0lDRV9QT1MsICAgKHApICYgMHhmZmZmLCAoKHApID4+IDE2KSAmIDB4ZmZmZikKKyNkZWZpbmUgR1VTX1ZPSUNFX1BPUyhjaG4sdm9pY2UscCkgX0dVU19DTUQoY2huLCB2b2ljZSwgX0dVU19WT0lDRV9QT1MsIChwKSAmIDB4ZmZmZiwgKChwKSA+PiAxNikgJiAweGZmZmYpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdW4uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdW4uaAppbmRleCA3MzZiNWJmLi4wN2Y2MTVlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VuLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91bi5oCkBAIC0yMiw4ICsyMiw4IEBACiAjZGVmaW5lIFVOSVhfUEFUSF9NQVggMTA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNvY2thZGRyX3VuIHsKLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzdW5fZmFtaWx5OwotIGNoYXIgc3VuX3BhdGhbVU5JWF9QQVRIX01BWF07CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHN1bl9mYW1pbHk7CisgIGNoYXIgc3VuX3BhdGhbVU5JWF9QQVRIX01BWF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91bml4X2RpYWcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdW5peF9kaWFnLmgKaW5kZXggNDc1NTgzZS4uZmYyMTM4ZSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91bml4X2RpYWcuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VuaXhfZGlhZy5oCkBAIC0yMSwxNCArMjEsMTQgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHVuaXhfZGlhZ19yZXEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNkaWFnX2ZhbWlseTsKLSBfX3U4IHNkaWFnX3Byb3RvY29sOwotIF9fdTE2IHBhZDsKLSBfX3UzMiB1ZGlhZ19zdGF0ZXM7CisgIF9fdTggc2RpYWdfZmFtaWx5OworICBfX3U4IHNkaWFnX3Byb3RvY29sOworICBfX3UxNiBwYWQ7CisgIF9fdTMyIHVkaWFnX3N0YXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdWRpYWdfaW5vOwotIF9fdTMyIHVkaWFnX3Nob3c7Ci0gX191MzIgdWRpYWdfY29va2llWzJdOworICBfX3UzMiB1ZGlhZ19pbm87CisgIF9fdTMyIHVkaWFnX3Nob3c7CisgIF9fdTMyIHVkaWFnX2Nvb2tpZVsyXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVRElBR19TSE9XX05BTUUgMHgwMDAwMDAwMQpAQCAtMzksMzcgKzM5LDM3IEBACiAjZGVmaW5lIFVESUFHX1NIT1dfUlFMRU4gMHgwMDAwMDAxMAogI2RlZmluZSBVRElBR19TSE9XX01FTUlORk8gMHgwMDAwMDAyMAogc3RydWN0IHVuaXhfZGlhZ19tc2cgewotIF9fdTggdWRpYWdfZmFtaWx5OworICBfX3U4IHVkaWFnX2ZhbWlseTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB1ZGlhZ190eXBlOwotIF9fdTggdWRpYWdfc3RhdGU7Ci0gX191OCBwYWQ7Ci0gX191MzIgdWRpYWdfaW5vOworICBfX3U4IHVkaWFnX3R5cGU7CisgIF9fdTggdWRpYWdfc3RhdGU7CisgIF9fdTggcGFkOworICBfX3UzMiB1ZGlhZ19pbm87CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHVkaWFnX2Nvb2tpZVsyXTsKKyAgX191MzIgdWRpYWdfY29va2llWzJdOwogfTsKIGVudW0gewotIFVOSVhfRElBR19OQU1FLAorICBVTklYX0RJQUdfTkFNRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVU5JWF9ESUFHX1ZGUywKLSBVTklYX0RJQUdfUEVFUiwKLSBVTklYX0RJQUdfSUNPTlMsCi0gVU5JWF9ESUFHX1JRTEVOLAorICBVTklYX0RJQUdfVkZTLAorICBVTklYX0RJQUdfUEVFUiwKKyAgVU5JWF9ESUFHX0lDT05TLAorICBVTklYX0RJQUdfUlFMRU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFVOSVhfRElBR19NRU1JTkZPLAotIFVOSVhfRElBR19TSFVURE9XTiwKLSBfX1VOSVhfRElBR19NQVgsCisgIFVOSVhfRElBR19NRU1JTkZPLAorICBVTklYX0RJQUdfU0hVVERPV04sCisgIF9fVU5JWF9ESUFHX01BWCwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVTklYX0RJQUdfTUFYIChfX1VOSVhfRElBR19NQVggLSAxKQogc3RydWN0IHVuaXhfZGlhZ192ZnMgewotIF9fdTMyIHVkaWFnX3Zmc19pbm87Ci0gX191MzIgdWRpYWdfdmZzX2RldjsKKyAgX191MzIgdWRpYWdfdmZzX2lubzsKKyAgX191MzIgdWRpYWdfdmZzX2RldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHVuaXhfZGlhZ19ycWxlbiB7Ci0gX191MzIgdWRpYWdfcnF1ZXVlOwotIF9fdTMyIHVkaWFnX3dxdWV1ZTsKKyAgX191MzIgdWRpYWdfcnF1ZXVlOworICBfX3UzMiB1ZGlhZ193cXVldWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvYXVkaW8uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2F1ZGlvLmgKaW5kZXggNDBkZjc1ZC4uNDU5NTE2YyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvYXVkaW8uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9hdWRpby5oCkBAIC0xMjMsMzMgKzEyMywzNCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFDX1RFUk1JTkFMX1ZFTkRPUl9TUEVDIDB4MUZGCiBzdHJ1Y3QgdWFjMV9hY19oZWFkZXJfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKLSBfX2xlMTYgYmNkQURDOwotIF9fbGUxNiB3VG90YWxMZW5ndGg7Ci0gX191OCBiSW5Db2xsZWN0aW9uOworICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKKyAgX19sZTE2IGJjZEFEQzsKKyAgX19sZTE2IHdUb3RhbExlbmd0aDsKKyAgX191OCBiSW5Db2xsZWN0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJhSW50ZXJmYWNlTnJbXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJhSW50ZXJmYWNlTnJbXTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVBQ19EVF9BQ19IRUFERVJfU0laRShuKSAoOCArIChuKSkKLSNkZWZpbmUgREVDTEFSRV9VQUNfQUNfSEVBREVSX0RFU0NSSVBUT1IobikgIHN0cnVjdCB1YWMxX2FjX2hlYWRlcl9kZXNjcmlwdG9yXyMjbiB7ICAgX191OCBiTGVuZ3RoOyAgIF9fdTggYkRlc2NyaXB0b3JUeXBlOyAgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOyAgIF9fbGUxNiBiY2RBREM7ICAgX19sZTE2IHdUb3RhbExlbmd0aDsgICBfX3U4IGJJbkNvbGxlY3Rpb247ICAgX191OCBiYUludGVyZmFjZU5yW25dOyAgfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkKKyNkZWZpbmUgREVDTEFSRV9VQUNfQUNfSEVBREVSX0RFU0NSSVBUT1Iobikgc3RydWN0IHVhYzFfYWNfaGVhZGVyX2Rlc2NyaXB0b3JfICMjbiB7IF9fdTggYkxlbmd0aDsgX191OCBiRGVzY3JpcHRvclR5cGU7IF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOyBfX2xlMTYgYmNkQURDOyBfX2xlMTYgd1RvdGFsTGVuZ3RoOyBfX3U4IGJJbkNvbGxlY3Rpb247IF9fdTggYmFJbnRlcmZhY2VOcltuXTsgXAorfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1YWNfaW5wdXRfdGVybWluYWxfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiVGVybWluYWxJRDsKLSBfX2xlMTYgd1Rlcm1pbmFsVHlwZTsKLSBfX3U4IGJBc3NvY1Rlcm1pbmFsOwotIF9fdTggYk5yQ2hhbm5lbHM7CisgIF9fdTggYlRlcm1pbmFsSUQ7CisgIF9fbGUxNiB3VGVybWluYWxUeXBlOworICBfX3U4IGJBc3NvY1Rlcm1pbmFsOworICBfX3U4IGJOckNoYW5uZWxzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgd0NoYW5uZWxDb25maWc7Ci0gX191OCBpQ2hhbm5lbE5hbWVzOwotIF9fdTggaVRlcm1pbmFsOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fbGUxNiB3Q2hhbm5lbENvbmZpZzsKKyAgX191OCBpQ2hhbm5lbE5hbWVzOworICBfX3U4IGlUZXJtaW5hbDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQUNfRFRfSU5QVVRfVEVSTUlOQUxfU0laRSAxMgogI2RlZmluZSBVQUNfSU5QVVRfVEVSTUlOQUxfVU5ERUZJTkVEIDB4MjAwCkBAIC0xNjMsMTcgKzE2NCwxNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFDX1RFUk1JTkFMX0NTX0NPUFlfUFJPVEVDVF9DT05UUk9MIDB4MDEKIHN0cnVjdCB1YWMxX291dHB1dF90ZXJtaW5hbF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOwotIF9fdTggYlRlcm1pbmFsSUQ7Ci0gX19sZTE2IHdUZXJtaW5hbFR5cGU7Ci0gX191OCBiQXNzb2NUZXJtaW5hbDsKKyAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CisgIF9fdTggYlRlcm1pbmFsSUQ7CisgIF9fbGUxNiB3VGVybWluYWxUeXBlOworICBfX3U4IGJBc3NvY1Rlcm1pbmFsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJTb3VyY2VJRDsKLSBfX3U4IGlUZXJtaW5hbDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJTb3VyY2VJRDsKKyAgX191OCBpVGVybWluYWw7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVQUNfRFRfT1VUUFVUX1RFUk1JTkFMX1NJWkUgOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFDX09VVFBVVF9URVJNSU5BTF9VTkRFRklORUQgMHgzMDAKQEAgLTE4Nyw1OSArMTg4LDYwIEBACiAjZGVmaW5lIFVBQ19PVVRQVVRfVEVSTUlOQUxfTE9XX0ZSRVFfRUZGRUNUU19TUEVBS0VSIDB4MzA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQUNfRFRfRkVBVFVSRV9VTklUX1NJWkUoY2gpICg3ICsgKChjaCkgKyAxKSAqIDIpCi0jZGVmaW5lIERFQ0xBUkVfVUFDX0ZFQVRVUkVfVU5JVF9ERVNDUklQVE9SKGNoKSAgc3RydWN0IHVhY19mZWF0dXJlX3VuaXRfZGVzY3JpcHRvcl8jI2NoIHsgICBfX3U4IGJMZW5ndGg7ICAgX191OCBiRGVzY3JpcHRvclR5cGU7ICAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7ICAgX191OCBiVW5pdElEOyAgIF9fdTggYlNvdXJjZUlEOyAgIF9fdTggYkNvbnRyb2xTaXplOyAgIF9fbGUxNiBibWFDb250cm9sc1tjaCArIDFdOyAgIF9fdTggaUZlYXR1cmU7ICB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKQorI2RlZmluZSBERUNMQVJFX1VBQ19GRUFUVVJFX1VOSVRfREVTQ1JJUFRPUihjaCkgc3RydWN0IHVhY19mZWF0dXJlX3VuaXRfZGVzY3JpcHRvcl8gIyNjaCB7IF9fdTggYkxlbmd0aDsgX191OCBiRGVzY3JpcHRvclR5cGU7IF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOyBfX3U4IGJVbml0SUQ7IF9fdTggYlNvdXJjZUlEOyBfX3U4IGJDb250cm9sU2l6ZTsgX19sZTE2IGJtYUNvbnRyb2xzW2NoICsgMV07IF9fdTggaUZlYXR1cmU7IFwKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSkKIHN0cnVjdCB1YWNfbWl4ZXJfdW5pdF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX191OCBiVW5pdElEOwotIF9fdTggYk5ySW5QaW5zOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CisgIF9fdTggYlVuaXRJRDsKKyAgX191OCBiTnJJblBpbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYmFTb3VyY2VJRFtdOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggYmFTb3VyY2VJRFtdOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1YWNfc2VsZWN0b3JfdW5pdF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX191OCBiVWludElEOwotIF9fdTggYk5ySW5QaW5zOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CisgIF9fdTggYlVpbnRJRDsKKyAgX191OCBiTnJJblBpbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYmFTb3VyY2VJRFtdOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggYmFTb3VyY2VJRFtdOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1YWNfZmVhdHVyZV91bml0X2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKKyAgX191OCBiTGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKLSBfX3U4IGJVbml0SUQ7Ci0gX191OCBiU291cmNlSUQ7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKKyAgX191OCBiVW5pdElEOworICBfX3U4IGJTb3VyY2VJRDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiQ29udHJvbFNpemU7Ci0gX191OCBibWFDb250cm9sc1swXTsKKyAgX191OCBiQ29udHJvbFNpemU7CisgIF9fdTggYm1hQ29udHJvbHNbMF07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVhY19wcm9jZXNzaW5nX3VuaXRfZGVzY3JpcHRvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKLSBfX3U4IGJVbml0SUQ7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOworICBfX3U4IGJVbml0SUQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHdQcm9jZXNzVHlwZTsKLSBfX3U4IGJOckluUGluczsKLSBfX3U4IGJhU291cmNlSURbXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3UxNiB3UHJvY2Vzc1R5cGU7CisgIF9fdTggYk5ySW5QaW5zOworICBfX3U4IGJhU291cmNlSURbXTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVhYzFfYXNfaGVhZGVyX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYlRlcm1pbmFsTGluazsKLSBfX3U4IGJEZWxheTsKLSBfX2xlMTYgd0Zvcm1hdFRhZzsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJUZXJtaW5hbExpbms7CisgIF9fdTggYkRlbGF5OworICBfX2xlMTYgd0Zvcm1hdFRhZzsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQUNfRFRfQVNfSEVBREVSX1NJWkUgNwogI2RlZmluZSBVQUNfRk9STUFUX1RZUEVfSV9VTkRFRklORUQgMHgwCkBAIC0yNTEsNzcgKzI1Myw3OCBAQAogI2RlZmluZSBVQUNfRk9STUFUX1RZUEVfSV9NVUxBVyAweDUKIHN0cnVjdCB1YWNfZm9ybWF0X3R5cGVfaV9jb250aW51b3VzX2Rlc2NyaXB0b3IgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX191OCBiRm9ybWF0VHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CisgIF9fdTggYkZvcm1hdFR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYk5yQ2hhbm5lbHM7Ci0gX191OCBiU3ViZnJhbWVTaXplOwotIF9fdTggYkJpdFJlc29sdXRpb247Ci0gX191OCBiU2FtRnJlcVR5cGU7CisgIF9fdTggYk5yQ2hhbm5lbHM7CisgIF9fdTggYlN1YmZyYW1lU2l6ZTsKKyAgX191OCBiQml0UmVzb2x1dGlvbjsKKyAgX191OCBiU2FtRnJlcVR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdExvd2VyU2FtRnJlcVszXTsKLSBfX3U4IHRVcHBlclNhbUZyZXFbM107Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCB0TG93ZXJTYW1GcmVxWzNdOworICBfX3U4IHRVcHBlclNhbUZyZXFbM107Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVQUNfRk9STUFUX1RZUEVfSV9DT05USU5VT1VTX0RFU0NfU0laRSAxNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1YWNfZm9ybWF0X3R5cGVfaV9kaXNjcmV0ZV9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJGb3JtYXRUeXBlOwotIF9fdTggYk5yQ2hhbm5lbHM7Ci0gX191OCBiU3ViZnJhbWVTaXplOwotIF9fdTggYkJpdFJlc29sdXRpb247CisgIF9fdTggYkZvcm1hdFR5cGU7CisgIF9fdTggYk5yQ2hhbm5lbHM7CisgIF9fdTggYlN1YmZyYW1lU2l6ZTsKKyAgX191OCBiQml0UmVzb2x1dGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiU2FtRnJlcVR5cGU7Ci0gX191OCB0U2FtRnJlcVtdWzNdOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7Ci0jZGVmaW5lIERFQ0xBUkVfVUFDX0ZPUk1BVF9UWVBFX0lfRElTQ1JFVEVfREVTQyhuKSAgc3RydWN0IHVhY19mb3JtYXRfdHlwZV9pX2Rpc2NyZXRlX2Rlc2NyaXB0b3JfIyNuIHsgICBfX3U4IGJMZW5ndGg7ICAgX191OCBiRGVzY3JpcHRvclR5cGU7ICAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7ICAgX191OCBiRm9ybWF0VHlwZTsgICBfX3U4IGJOckNoYW5uZWxzOyAgIF9fdTggYlN1YmZyYW1lU2l6ZTsgICBfX3U4IGJCaXRSZXNvbHV0aW9uOyAgIF9fdTggYlNhbUZyZXFUeXBlOyAgIF9fdTggdFNhbUZyZXFbbl1bM107ICB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKQorICBfX3U4IGJTYW1GcmVxVHlwZTsKKyAgX191OCB0U2FtRnJlcVtdWzNdOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKyNkZWZpbmUgREVDTEFSRV9VQUNfRk9STUFUX1RZUEVfSV9ESVNDUkVURV9ERVNDKG4pIHN0cnVjdCB1YWNfZm9ybWF0X3R5cGVfaV9kaXNjcmV0ZV9kZXNjcmlwdG9yXyAjI24geyBfX3U4IGJMZW5ndGg7IF9fdTggYkRlc2NyaXB0b3JUeXBlOyBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsgX191OCBiRm9ybWF0VHlwZTsgX191OCBiTnJDaGFubmVsczsgX191OCBiU3ViZnJhbWVTaXplOyBfX3U4IGJCaXRSZXNvbHV0aW9uOyBfX3U4IGJTYW1GcmVxVHlwZTsgX191OCB0U2FtRnJlcVtuXVszXTsgXAorfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFDX0ZPUk1BVF9UWVBFX0lfRElTQ1JFVEVfREVTQ19TSVpFKG4pICg4ICsgKG4gKiAzKSkKIHN0cnVjdCB1YWNfZm9ybWF0X3R5cGVfaV9leHRfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKLSBfX3U4IGJGb3JtYXRUeXBlOwotIF9fdTggYlN1YnNsb3RTaXplOwotIF9fdTggYkJpdFJlc29sdXRpb247CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOworICBfX3U4IGJGb3JtYXRUeXBlOworICBfX3U4IGJTdWJzbG90U2l6ZTsKKyAgX191OCBiQml0UmVzb2x1dGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiSGVhZGVyTGVuZ3RoOwotIF9fdTggYkNvbnRyb2xTaXplOwotIF9fdTggYlNpZGVCYW5kUHJvdG9jb2w7CisgIF9fdTggYkhlYWRlckxlbmd0aDsKKyAgX191OCBiQ29udHJvbFNpemU7CisgIF9fdTggYlNpZGVCYW5kUHJvdG9jb2w7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFDX0ZPUk1BVF9UWVBFX0lJX01QRUcgMHgxMDAxCiAjZGVmaW5lIFVBQ19GT1JNQVRfVFlQRV9JSV9BQzMgMHgxMDAyCiBzdHJ1Y3QgdWFjX2Zvcm1hdF90eXBlX2lpX2Rpc2NyZXRlX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKKyAgX191OCBiTGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKLSBfX3U4IGJGb3JtYXRUeXBlOwotIF9fbGUxNiB3TWF4Qml0UmF0ZTsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOworICBfX3U4IGJGb3JtYXRUeXBlOworICBfX2xlMTYgd01heEJpdFJhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiB3U2FtcGxlc1BlckZyYW1lOwotIF9fdTggYlNhbUZyZXFUeXBlOwotIF9fdTggdFNhbUZyZXFbXVszXTsKKyAgX19sZTE2IHdTYW1wbGVzUGVyRnJhbWU7CisgIF9fdTggYlNhbUZyZXFUeXBlOworICBfX3U4IHRTYW1GcmVxW11bM107CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1YWNfZm9ybWF0X3R5cGVfaWlfZXh0X2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkZvcm1hdFR5cGU7Ci0gX191MTYgd01heEJpdFJhdGU7Ci0gX191MTYgd1NhbXBsZXNQZXJGcmFtZTsKLSBfX3U4IGJIZWFkZXJMZW5ndGg7CisgIF9fdTggYkZvcm1hdFR5cGU7CisgIF9fdTE2IHdNYXhCaXRSYXRlOworICBfX3UxNiB3U2FtcGxlc1BlckZyYW1lOworICBfX3U4IGJIZWFkZXJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYlNpZGVCYW5kUHJvdG9jb2w7CisgIF9fdTggYlNpZGVCYW5kUHJvdG9jb2w7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVQUNfRk9STUFUX1RZUEVfSUlJX0lFQzE5MzdfQUMzIDB4MjAwMQogI2RlZmluZSBVQUNfRk9STUFUX1RZUEVfSUlJX0lFQzE5MzdfTVBFRzFfTEFZRVIxIDB4MjAwMgpAQCAtMzQxLDEzICszNDQsMTMgQEAKICNkZWZpbmUgVUFDX0VYVF9GT1JNQVRfVFlQRV9JSUkgMHg4Mwogc3RydWN0IHVhY19pc29fZW5kcG9pbnRfZGVzY3JpcHRvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKLSBfX3U4IGJtQXR0cmlidXRlczsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CisgIF9fdTggYm1BdHRyaWJ1dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJMb2NrRGVsYXlVbml0czsKLSBfX2xlMTYgd0xvY2tEZWxheTsKKyAgX191OCBiTG9ja0RlbGF5VW5pdHM7CisgIF9fbGUxNiB3TG9ja0RlbGF5OwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVUFDX0lTT19FTkRQT0lOVF9ERVNDX1NJWkUgNwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTM2Myw4ICszNjYsOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVUFDMV9TVEFUVVNfVFlQRV9NRU1fQ0hBTkdFRCAoMSA8PCA2KQogc3RydWN0IHVhYzFfc3RhdHVzX3dvcmQgewotIF9fdTggYlN0YXR1c1R5cGU7Ci0gX191OCBiT3JpZ2luYXRvcjsKKyAgX191OCBiU3RhdHVzVHlwZTsKKyAgX191OCBiT3JpZ2luYXRvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9jZGMtd2RtLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9jZGMtd2RtLmgKaW5kZXggZTE3MGY1OS4uMjM4NTViZCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2RjLXdkbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2NkYy13ZG0uaApAQCAtMTgsNiArMTgsNyBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9VQVBJX19MSU5VWF9VU0JfQ0RDX1dETV9ICiAjZGVmaW5lIF9VQVBJX19MSU5VWF9VU0JfQ0RDX1dETV9ICisjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNkZWZpbmUgSU9DVExfV0RNX01BWF9DT01NQU5EIF9JT1IoJ0gnLCAweEEwLCBfX3UxNikKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2RjLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9jZGMuaAppbmRleCAxNzI3OGUxLi44MTEyM2NiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9jZGMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9jZGMuaApAQCAtNjIsMzEyICs2MiwzMjMgQEAKICNkZWZpbmUgVVNCX0NEQ19OQ01fVFlQRSAweDFhCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVU0JfQ0RDX01CSU1fVFlQRSAweDFiCisjZGVmaW5lIFVTQl9DRENfTUJJTV9FWFRFTkRFRF9UWVBFIDB4MWMKIHN0cnVjdCB1c2JfY2RjX2hlYWRlcl9kZXNjIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX19sZTE2IGJjZENEQzsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fbGUxNiBiY2RDREM7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1c2JfY2RjX2NhbGxfbWdtdF9kZXNjcmlwdG9yIHsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKLSBfX3U4IGJtQ2FwYWJpbGl0aWVzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBibUNhcGFiaWxpdGllczsKICNkZWZpbmUgVVNCX0NEQ19DQUxMX01HTVRfQ0FQX0NBTExfTUdNVCAweDAxCiAjZGVmaW5lIFVTQl9DRENfQ0FMTF9NR01UX0NBUF9EQVRBX0lOVEYgMHgwMgotIF9fdTggYkRhdGFJbnRlcmZhY2U7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiRGF0YUludGVyZmFjZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9jZGNfYWNtX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBibUNhcGFiaWxpdGllczsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBibUNhcGFiaWxpdGllczsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9DRENfQ09NTV9GRUFUVVJFIDB4MDEKLSNkZWZpbmUgVVNCX0NEQ19DQVBfTElORSAweDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBVU0JfQ0RDX0NBUF9MSU5FIDB4MDIKICNkZWZpbmUgVVNCX0NEQ19DQVBfQlJLIDB4MDQKICNkZWZpbmUgVVNCX0NEQ19DQVBfTk9USUZZIDB4MDgKIHN0cnVjdCB1c2JfY2RjX3VuaW9uX2Rlc2MgewotIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX191OCBiTWFzdGVySW50ZXJmYWNlMDsKLSBfX3U4IGJTbGF2ZUludGVyZmFjZTA7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3U4IGJNYXN0ZXJJbnRlcmZhY2UwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJTbGF2ZUludGVyZmFjZTA7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9jZGNfY291bnRyeV9mdW5jdGlvbmFsX2Rlc2MgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKLSBfX3U4IGlDb3VudHJ5Q29kZVJlbERhdGU7Ci0gX19sZTE2IHdDb3VudHlDb2RlMDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggaUNvdW50cnlDb2RlUmVsRGF0ZTsKKyAgX19sZTE2IHdDb3VudHlDb2RlMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9jZGNfbmV0d29ya190ZXJtaW5hbF9kZXNjIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkVudGl0eUlkOwotIF9fdTggaU5hbWU7Ci0gX191OCBiQ2hhbm5lbEluZGV4OwotIF9fdTggYlBoeXNpY2FsSW50ZXJmYWNlOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiRW50aXR5SWQ7CisgIF9fdTggaU5hbWU7CisgIF9fdTggYkNoYW5uZWxJbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiUGh5c2ljYWxJbnRlcmZhY2U7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9jZGNfZXRoZXJfZGVzYyB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwotIF9fdTggaU1BQ0FkZHJlc3M7Ci0gX19sZTMyIGJtRXRoZXJuZXRTdGF0aXN0aWNzOwotIF9fbGUxNiB3TWF4U2VnbWVudFNpemU7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBpTUFDQWRkcmVzczsKKyAgX19sZTMyIGJtRXRoZXJuZXRTdGF0aXN0aWNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgd051bWJlck1DRmlsdGVyczsKLSBfX3U4IGJOdW1iZXJQb3dlckZpbHRlcnM7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX19sZTE2IHdNYXhTZWdtZW50U2l6ZTsKKyAgX19sZTE2IHdOdW1iZXJNQ0ZpbHRlcnM7CisgIF9fdTggYk51bWJlclBvd2VyRmlsdGVyczsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9jZGNfZG1tX2Rlc2MgeworICBfX3U4IGJGdW5jdGlvbkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJGdW5jdGlvbkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKLSBfX3UxNiBiY2RWZXJzaW9uOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgd01heENvbW1hbmQ7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191MTYgYmNkVmVyc2lvbjsKKyAgX19sZTE2IHdNYXhDb21tYW5kOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfY2RjX21kbG1fZGVzYyB7Ci0gX191OCBiTGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKLSBfX2xlMTYgYmNkVmVyc2lvbjsKLSBfX3U4IGJHVUlEWzE2XTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fbGUxNiBiY2RWZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJHVUlEWzE2XTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdXNiX2NkY19tZGxtX2RldGFpbF9kZXNjIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX191OCBiR3VpZERlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRldGFpbERhdGFbMF07Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3U4IGJHdWlkRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRldGFpbERhdGFbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfY2RjX29iZXhfZGVzYyB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgYmNkVmVyc2lvbjsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX19sZTE2IGJjZFZlcnNpb247Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9jZGNfbmNtX2Rlc2MgewotIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX19sZTE2IGJjZE5jbVZlcnNpb247Ci0gX191OCBibU5ldHdvcmtDYXBhYmlsaXRpZXM7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX2xlMTYgYmNkTmNtVmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBibU5ldHdvcmtDYXBhYmlsaXRpZXM7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9jZGNfbWJpbV9kZXNjIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX19sZTE2IGJjZE1CSU1WZXJzaW9uOwotIF9fbGUxNiB3TWF4Q29udHJvbE1lc3NhZ2U7Ci0gX191OCBiTnVtYmVyRmlsdGVyczsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX2xlMTYgYmNkTUJJTVZlcnNpb247CisgIF9fbGUxNiB3TWF4Q29udHJvbE1lc3NhZ2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYk1heEZpbHRlclNpemU7Ci0gX19sZTE2IHdNYXhTZWdtZW50U2l6ZTsKLSBfX3U4IGJtTmV0d29ya0NhcGFiaWxpdGllczsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJOdW1iZXJGaWx0ZXJzOworICBfX3U4IGJNYXhGaWx0ZXJTaXplOworICBfX2xlMTYgd01heFNlZ21lbnRTaXplOworICBfX3U4IGJtTmV0d29ya0NhcGFiaWxpdGllczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworc3RydWN0IHVzYl9jZGNfbWJpbV9leHRlbmRlZF9kZXNjIHsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX2xlMTYgYmNkTUJJTUV4dGVuZGVkVmVyc2lvbjsKKyAgX191OCBiTWF4T3V0c3RhbmRpbmdDb21tYW5kTWVzc2FnZXM7CisgIF9fbGUxNiB3TVRVOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9DRENfU0VORF9FTkNBUFNVTEFURURfQ09NTUFORCAweDAwCiAjZGVmaW5lIFVTQl9DRENfR0VUX0VOQ0FQU1VMQVRFRF9SRVNQT05TRSAweDAxCiAjZGVmaW5lIFVTQl9DRENfUkVRX1NFVF9MSU5FX0NPRElORyAweDIwCi0jZGVmaW5lIFVTQl9DRENfUkVRX0dFVF9MSU5FX0NPRElORyAweDIxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBVU0JfQ0RDX1JFUV9HRVRfTElORV9DT0RJTkcgMHgyMQogI2RlZmluZSBVU0JfQ0RDX1JFUV9TRVRfQ09OVFJPTF9MSU5FX1NUQVRFIDB4MjIKICNkZWZpbmUgVVNCX0NEQ19SRVFfU0VORF9CUkVBSyAweDIzCiAjZGVmaW5lIFVTQl9DRENfU0VUX0VUSEVSTkVUX01VTFRJQ0FTVF9GSUxURVJTIDB4NDAKLSNkZWZpbmUgVVNCX0NEQ19TRVRfRVRIRVJORVRfUE1fUEFUVEVSTl9GSUxURVIgMHg0MQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVVNCX0NEQ19TRVRfRVRIRVJORVRfUE1fUEFUVEVSTl9GSUxURVIgMHg0MQogI2RlZmluZSBVU0JfQ0RDX0dFVF9FVEhFUk5FVF9QTV9QQVRURVJOX0ZJTFRFUiAweDQyCiAjZGVmaW5lIFVTQl9DRENfU0VUX0VUSEVSTkVUX1BBQ0tFVF9GSUxURVIgMHg0MwogI2RlZmluZSBVU0JfQ0RDX0dFVF9FVEhFUk5FVF9TVEFUSVNUSUMgMHg0NAotI2RlZmluZSBVU0JfQ0RDX0dFVF9OVEJfUEFSQU1FVEVSUyAweDgwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBVU0JfQ0RDX0dFVF9OVEJfUEFSQU1FVEVSUyAweDgwCiAjZGVmaW5lIFVTQl9DRENfR0VUX05FVF9BRERSRVNTIDB4ODEKICNkZWZpbmUgVVNCX0NEQ19TRVRfTkVUX0FERFJFU1MgMHg4MgogI2RlZmluZSBVU0JfQ0RDX0dFVF9OVEJfRk9STUFUIDB4ODMKLSNkZWZpbmUgVVNCX0NEQ19TRVRfTlRCX0ZPUk1BVCAweDg0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBVU0JfQ0RDX1NFVF9OVEJfRk9STUFUIDB4ODQKICNkZWZpbmUgVVNCX0NEQ19HRVRfTlRCX0lOUFVUX1NJWkUgMHg4NQogI2RlZmluZSBVU0JfQ0RDX1NFVF9OVEJfSU5QVVRfU0laRSAweDg2CiAjZGVmaW5lIFVTQl9DRENfR0VUX01BWF9EQVRBR1JBTV9TSVpFIDB4ODcKLSNkZWZpbmUgVVNCX0NEQ19TRVRfTUFYX0RBVEFHUkFNX1NJWkUgMHg4OAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVVNCX0NEQ19TRVRfTUFYX0RBVEFHUkFNX1NJWkUgMHg4OAogI2RlZmluZSBVU0JfQ0RDX0dFVF9DUkNfTU9ERSAweDg5CiAjZGVmaW5lIFVTQl9DRENfU0VUX0NSQ19NT0RFIDB4OGEKIHN0cnVjdCB1c2JfY2RjX2xpbmVfY29kaW5nIHsKLSBfX2xlMzIgZHdEVEVSYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJDaGFyRm9ybWF0OworICBfX2xlMzIgZHdEVEVSYXRlOworICBfX3U4IGJDaGFyRm9ybWF0OwogI2RlZmluZSBVU0JfQ0RDXzFfU1RPUF9CSVRTIDAKICNkZWZpbmUgVVNCX0NEQ18xXzVfU1RPUF9CSVRTIDEKLSNkZWZpbmUgVVNCX0NEQ18yX1NUT1BfQklUUyAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYlBhcml0eVR5cGU7CisjZGVmaW5lIFVTQl9DRENfMl9TVE9QX0JJVFMgMgorICBfX3U4IGJQYXJpdHlUeXBlOwogI2RlZmluZSBVU0JfQ0RDX05PX1BBUklUWSAwCiAjZGVmaW5lIFVTQl9DRENfT0REX1BBUklUWSAxCi0jZGVmaW5lIFVTQl9DRENfRVZFTl9QQVJJVFkgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVVNCX0NEQ19FVkVOX1BBUklUWSAyCiAjZGVmaW5lIFVTQl9DRENfTUFSS19QQVJJVFkgMwogI2RlZmluZSBVU0JfQ0RDX1NQQUNFX1BBUklUWSA0Ci0gX191OCBiRGF0YUJpdHM7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiRGF0YUJpdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX0NEQ19QQUNLRVRfVFlQRV9QUk9NSVNDVU9VUyAoMSA8PCAwKQogI2RlZmluZSBVU0JfQ0RDX1BBQ0tFVF9UWVBFX0FMTF9NVUxUSUNBU1QgKDEgPDwgMSkKICNkZWZpbmUgVVNCX0NEQ19QQUNLRVRfVFlQRV9ESVJFQ1RFRCAoMSA8PCAyKQotI2RlZmluZSBVU0JfQ0RDX1BBQ0tFVF9UWVBFX0JST0FEQ0FTVCAoMSA8PCAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVVNCX0NEQ19QQUNLRVRfVFlQRV9CUk9BRENBU1QgKDEgPDwgMykKICNkZWZpbmUgVVNCX0NEQ19QQUNLRVRfVFlQRV9NVUxUSUNBU1QgKDEgPDwgNCkKICNkZWZpbmUgVVNCX0NEQ19OT1RJRllfTkVUV09SS19DT05ORUNUSU9OIDB4MDAKICNkZWZpbmUgVVNCX0NEQ19OT1RJRllfUkVTUE9OU0VfQVZBSUxBQkxFIDB4MDEKLSNkZWZpbmUgVVNCX0NEQ19OT1RJRllfU0VSSUFMX1NUQVRFIDB4MjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFVTQl9DRENfTk9USUZZX1NFUklBTF9TVEFURSAweDIwCiAjZGVmaW5lIFVTQl9DRENfTk9USUZZX1NQRUVEX0NIQU5HRSAweDJhCiBzdHJ1Y3QgdXNiX2NkY19ub3RpZmljYXRpb24gewotIF9fdTggYm1SZXF1ZXN0VHlwZTsKLSBfX3U4IGJOb3RpZmljYXRpb25UeXBlOworICBfX3U4IGJtUmVxdWVzdFR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiB3VmFsdWU7Ci0gX19sZTE2IHdJbmRleDsKLSBfX2xlMTYgd0xlbmd0aDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJOb3RpZmljYXRpb25UeXBlOworICBfX2xlMTYgd1ZhbHVlOworICBfX2xlMTYgd0luZGV4OworICBfX2xlMTYgd0xlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9jZGNfc3BlZWRfY2hhbmdlIHsKLSBfX2xlMzIgRExCaXRSUmF0ZTsKLSBfX2xlMzIgVUxCaXRSYXRlOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fbGUzMiBETEJpdFJSYXRlOworICBfX2xlMzIgVUxCaXRSYXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdXNiX2NkY19uY21fbnRiX3BhcmFtZXRlcnMgewotIF9fbGUxNiB3TGVuZ3RoOwotIF9fbGUxNiBibU50YkZvcm1hdHNTdXBwb3J0ZWQ7Ci0gX19sZTMyIGR3TnRiSW5NYXhTaXplOworICBfX2xlMTYgd0xlbmd0aDsKKyAgX19sZTE2IGJtTnRiRm9ybWF0c1N1cHBvcnRlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHdOZHBJbkRpdmlzb3I7Ci0gX19sZTE2IHdOZHBJblBheWxvYWRSZW1haW5kZXI7Ci0gX19sZTE2IHdOZHBJbkFsaWdubWVudDsKLSBfX2xlMTYgd1BhZGRpbmcxOworICBfX2xlMzIgZHdOdGJJbk1heFNpemU7CisgIF9fbGUxNiB3TmRwSW5EaXZpc29yOworICBfX2xlMTYgd05kcEluUGF5bG9hZFJlbWFpbmRlcjsKKyAgX19sZTE2IHdOZHBJbkFsaWdubWVudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIGR3TnRiT3V0TWF4U2l6ZTsKLSBfX2xlMTYgd05kcE91dERpdmlzb3I7Ci0gX19sZTE2IHdOZHBPdXRQYXlsb2FkUmVtYWluZGVyOwotIF9fbGUxNiB3TmRwT3V0QWxpZ25tZW50OworICBfX2xlMTYgd1BhZGRpbmcxOworICBfX2xlMzIgZHdOdGJPdXRNYXhTaXplOworICBfX2xlMTYgd05kcE91dERpdmlzb3I7CisgIF9fbGUxNiB3TmRwT3V0UGF5bG9hZFJlbWFpbmRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHdOdGJPdXRNYXhEYXRhZ3JhbXM7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX19sZTE2IHdOZHBPdXRBbGlnbm1lbnQ7CisgIF9fbGUxNiB3TnRiT3V0TWF4RGF0YWdyYW1zOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX0NEQ19OQ01fTlRIMTZfU0lHTiAweDQ4NEQ0MzRFCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVU0JfQ0RDX05DTV9OVEgzMl9TSUdOIDB4Njg2RDYzNkUKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXNiX2NkY19uY21fbnRoMTYgewotIF9fbGUzMiBkd1NpZ25hdHVyZTsKLSBfX2xlMTYgd0hlYWRlckxlbmd0aDsKLSBfX2xlMTYgd1NlcXVlbmNlOworICBfX2xlMzIgZHdTaWduYXR1cmU7CisgIF9fbGUxNiB3SGVhZGVyTGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgd0Jsb2NrTGVuZ3RoOwotIF9fbGUxNiB3TmRwSW5kZXg7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX19sZTE2IHdTZXF1ZW5jZTsKKyAgX19sZTE2IHdCbG9ja0xlbmd0aDsKKyAgX19sZTE2IHdOZHBJbmRleDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9jZGNfbmNtX250aDMyIHsKKyAgX19sZTMyIGR3U2lnbmF0dXJlOworICBfX2xlMTYgd0hlYWRlckxlbmd0aDsKKyAgX19sZTE2IHdTZXF1ZW5jZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIGR3U2lnbmF0dXJlOwotIF9fbGUxNiB3SGVhZGVyTGVuZ3RoOwotIF9fbGUxNiB3U2VxdWVuY2U7Ci0gX19sZTMyIGR3QmxvY2tMZW5ndGg7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBkd05kcEluZGV4OwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fbGUzMiBkd0Jsb2NrTGVuZ3RoOworICBfX2xlMzIgZHdOZHBJbmRleDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9DRENfTkNNX05EUDE2X0NSQ19TSUdOIDB4MzE0RDQzNEUKLSNkZWZpbmUgVVNCX0NEQ19OQ01fTkRQMTZfTk9DUkNfU0lHTiAweDMwNEQ0MzRFCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBVU0JfQ0RDX05DTV9ORFAxNl9OT0NSQ19TSUdOIDB4MzA0RDQzNEUKICNkZWZpbmUgVVNCX0NEQ19OQ01fTkRQMzJfQ1JDX1NJR04gMHgzMTZENjM2RQogI2RlZmluZSBVU0JfQ0RDX05DTV9ORFAzMl9OT0NSQ19TSUdOIDB4MzA2RDYzNkUKICNkZWZpbmUgVVNCX0NEQ19NQklNX05EUDE2X0lQU19TSUdOIDB4MDA1MzUwNDkKLSNkZWZpbmUgVVNCX0NEQ19NQklNX05EUDMyX0lQU19TSUdOIDB4MDA3MzcwNjkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFVTQl9DRENfTUJJTV9ORFAzMl9JUFNfU0lHTiAweDAwNzM3MDY5CiAjZGVmaW5lIFVTQl9DRENfTUJJTV9ORFAxNl9EU1NfU0lHTiAweDAwNTM1MzQ0CiAjZGVmaW5lIFVTQl9DRENfTUJJTV9ORFAzMl9EU1NfU0lHTiAweDAwNzM3MzY0CiBzdHJ1Y3QgdXNiX2NkY19uY21fZHBlMTYgewotIF9fbGUxNiB3RGF0YWdyYW1JbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHdEYXRhZ3JhbUxlbmd0aDsKKyAgX19sZTE2IHdEYXRhZ3JhbUluZGV4OworICBfX2xlMTYgd0RhdGFncmFtTGVuZ3RoOwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CiBzdHJ1Y3QgdXNiX2NkY19uY21fbmRwMTYgewotIF9fbGUzMiBkd1NpZ25hdHVyZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHdMZW5ndGg7Ci0gX19sZTE2IHdOZXh0TmRwSW5kZXg7Ci0gc3RydWN0IHVzYl9jZGNfbmNtX2RwZTE2IGRwZTE2WzBdOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fbGUzMiBkd1NpZ25hdHVyZTsKKyAgX19sZTE2IHdMZW5ndGg7CisgIF9fbGUxNiB3TmV4dE5kcEluZGV4OworICBzdHJ1Y3QgdXNiX2NkY19uY21fZHBlMTYgZHBlMTZbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfY2RjX25jbV9kcGUzMiB7Ci0gX19sZTMyIGR3RGF0YWdyYW1JbmRleDsKLSBfX2xlMzIgZHdEYXRhZ3JhbUxlbmd0aDsKKyAgX19sZTMyIGR3RGF0YWdyYW1JbmRleDsKKyAgX19sZTMyIGR3RGF0YWdyYW1MZW5ndGg7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9jZGNfbmNtX25kcDMyIHsKLSBfX2xlMzIgZHdTaWduYXR1cmU7Ci0gX19sZTE2IHdMZW5ndGg7Ci0gX19sZTE2IHdSZXNlcnZlZDY7CisgIF9fbGUzMiBkd1NpZ25hdHVyZTsKKyAgX19sZTE2IHdMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBkd05leHROZHBJbmRleDsKLSBfX2xlMzIgZHdSZXNlcnZlZDEyOwotIHN0cnVjdCB1c2JfY2RjX25jbV9kcGUzMiBkcGUzMlswXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX2xlMTYgd1Jlc2VydmVkNjsKKyAgX19sZTMyIGR3TmV4dE5kcEluZGV4OworICBfX2xlMzIgZHdSZXNlcnZlZDEyOworICBzdHJ1Y3QgdXNiX2NkY19uY21fZHBlMzIgZHBlMzJbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX0NEQ19OQ01fTkRQMTZfSU5ERVhfTUlOIDB4MDAwQwogI2RlZmluZSBVU0JfQ0RDX05DTV9ORFAzMl9JTkRFWF9NSU4gMHgwMDEwCiAjZGVmaW5lIFVTQl9DRENfTkNNX0RBVEFHUkFNX0ZPUk1BVF9DUkMgMHgzMAotI2RlZmluZSBVU0JfQ0RDX05DTV9EQVRBR1JBTV9GT1JNQVRfTk9DUkMgMFgzMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVVNCX0NEQ19OQ01fREFUQUdSQU1fRk9STUFUX05PQ1JDIDBYMzEKICNkZWZpbmUgVVNCX0NEQ19OQ01fUFJPVE9fQ09ERV9OT19FTkNBUF9DT01NQU5EUyAweDAwCiAjZGVmaW5lIFVTQl9DRENfTkNNX1BST1RPX0NPREVfRVhURVJOX1BST1RPIDB4RkUKICNkZWZpbmUgVVNCX0NEQ19OQ01fTkNBUF9FVEhfRklMVEVSICgxIDw8IDApCi0jZGVmaW5lIFVTQl9DRENfTkNNX05DQVBfTkVUX0FERFJFU1MgKDEgPDwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFVTQl9DRENfTkNNX05DQVBfTkVUX0FERFJFU1MgKDEgPDwgMSkKICNkZWZpbmUgVVNCX0NEQ19OQ01fTkNBUF9FTkNBUF9DT01NQU5EICgxIDw8IDIpCiAjZGVmaW5lIFVTQl9DRENfTkNNX05DQVBfTUFYX0RBVEFHUkFNX1NJWkUgKDEgPDwgMykKICNkZWZpbmUgVVNCX0NEQ19OQ01fTkNBUF9DUkNfTU9ERSAoMSA8PCA0KQotI2RlZmluZSBVU0JfQ0RDX05DTV9OQ0FQX05UQl9JTlBVVF9TSVpFICgxIDw8IDUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBVU0JfQ0RDX05DTV9OQ0FQX05UQl9JTlBVVF9TSVpFICgxIDw8IDUpCiAjZGVmaW5lIFVTQl9DRENfTkNNX05UQjE2X1NVUFBPUlRFRCAoMSA8PCAwKQogI2RlZmluZSBVU0JfQ0RDX05DTV9OVEIzMl9TVVBQT1JURUQgKDEgPDwgMSkKICNkZWZpbmUgVVNCX0NEQ19OQ01fTkRQX0FMSUdOX01JTl9TSVpFIDB4MDQKLSNkZWZpbmUgVVNCX0NEQ19OQ01fTlRCX01BWF9MRU5HVEggMHgxQwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVVNCX0NEQ19OQ01fTlRCX01BWF9MRU5HVEggMHgxQwogI2RlZmluZSBVU0JfQ0RDX05DTV9OVEIxNl9GT1JNQVQgMHgwMAogI2RlZmluZSBVU0JfQ0RDX05DTV9OVEIzMl9GT1JNQVQgMHgwMQogI2RlZmluZSBVU0JfQ0RDX05DTV9OVEJfTUlOX0lOX1NJWkUgMjA0OAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCX0NEQ19OQ01fTlRCX01JTl9PVVRfU0laRSAyMDQ4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9jZGNfbmNtX25kcF9pbnB1dF9zaXplIHsKLSBfX2xlMzIgZHdOdGJJbk1heFNpemU7Ci0gX19sZTE2IHdOdGJJbk1heERhdGFncmFtczsKLSBfX2xlMTYgd1Jlc2VydmVkOworICBfX2xlMzIgZHdOdGJJbk1heFNpemU7CisgIF9fbGUxNiB3TnRiSW5NYXhEYXRhZ3JhbXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fbGUxNiB3UmVzZXJ2ZWQ7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfQ0RDX05DTV9DUkNfTk9UX0FQUEVOREVEIDB4MDAKICNkZWZpbmUgVVNCX0NEQ19OQ01fQ1JDX0FQUEVOREVEIDB4MDEKLSNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2gxMS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2gxMS5oCmluZGV4IGNiZTNkNzAuLmY4NTg1ZGYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2NoMTEuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9jaDExLmgKQEAgLTcxLDkgKzcxLDkgQEAKICNkZWZpbmUgVVNCX1BPUlRfRkVBVF9SRU1PVEVfV0FLRV9PVkVSX0NVUlJFTlQgKDEgPDwgMTApCiBzdHJ1Y3QgdXNiX3BvcnRfc3RhdHVzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IHdQb3J0U3RhdHVzOwotIF9fbGUxNiB3UG9ydENoYW5nZTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX2xlMTYgd1BvcnRTdGF0dXM7CisgIF9fbGUxNiB3UG9ydENoYW5nZTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9QT1JUX1NUQVRfQ09OTkVDVElPTiAweDAwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQl9QT1JUX1NUQVRfRU5BQkxFIDB4MDAwMgpAQCAtOTMsNyArOTMsNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCX1NTX1BPUlRfU1RBVF9TUEVFRCAweDFjMDAKICNkZWZpbmUgVVNCX1BPUlRfU1RBVF9TUEVFRF81R0JQUyAweDAwMDAKLSNkZWZpbmUgVVNCX1NTX1BPUlRfU1RBVF9NQVNLIChVU0JfUE9SVF9TVEFUX0NPTk5FQ1RJT04gfCAgIFVTQl9QT1JUX1NUQVRfRU5BQkxFIHwgICBVU0JfUE9SVF9TVEFUX09WRVJDVVJSRU5UIHwgICBVU0JfUE9SVF9TVEFUX1JFU0VUKQorI2RlZmluZSBVU0JfU1NfUE9SVF9TVEFUX01BU0sgKFVTQl9QT1JUX1NUQVRfQ09OTkVDVElPTiB8IFVTQl9QT1JUX1NUQVRfRU5BQkxFIHwgVVNCX1BPUlRfU1RBVF9PVkVSQ1VSUkVOVCB8IFVTQl9QT1JUX1NUQVRfUkVTRVQpCiAjZGVmaW5lIFVTQl9TU19QT1JUX0xTX1UwIDB4MDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCX1NTX1BPUlRfTFNfVTEgMHgwMDIwCkBAIC0xMzYsOSArMTM2LDkgQEAKICNkZWZpbmUgSFVCX0NIQVJfUE9SVElORCAweDAwODAKIHN0cnVjdCB1c2JfaHViX3N0YXR1cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiB3SHViU3RhdHVzOwotIF9fbGUxNiB3SHViQ2hhbmdlOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fbGUxNiB3SHViU3RhdHVzOworICBfX2xlMTYgd0h1YkNoYW5nZTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIEhVQl9TVEFUVVNfTE9DQUxfUE9XRVIgMHgwMDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBIVUJfU1RBVFVTX09WRVJDVVJSRU5UIDB4MDAwMgpAQCAtMTU3LDI4ICsxNTcsMjggQEAKICNkZWZpbmUgVVNCX0hVQl9QUl9TUyAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9odWJfZGVzY3JpcHRvciB7Ci0gX191OCBiRGVzY0xlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJOYnJQb3J0czsKKyAgX191OCBiRGVzY0xlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYk5iclBvcnRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgd0h1YkNoYXJhY3RlcmlzdGljczsKLSBfX3U4IGJQd3JPbjJQd3JHb29kOwotIF9fdTggYkh1YkNvbnRyQ3VycmVudDsKLSB1bmlvbiB7CisgIF9fbGUxNiB3SHViQ2hhcmFjdGVyaXN0aWNzOworICBfX3U4IGJQd3JPbjJQd3JHb29kOworICBfX3U4IGJIdWJDb250ckN1cnJlbnQ7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX3U4IERldmljZVJlbW92YWJsZVsoVVNCX01BWENISUxEUkVOICsgMSArIDcpIC8gOF07Ci0gX191OCBQb3J0UHdyQ3RybE1hc2tbKFVTQl9NQVhDSElMRFJFTiArIDEgKyA3KSAvIDhdOwotIH0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpIGhzOworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IERldmljZVJlbW92YWJsZVsoVVNCX01BWENISUxEUkVOICsgMSArIDcpIC8gOF07CisgICAgICBfX3U4IFBvcnRQd3JDdHJsTWFza1soVVNCX01BWENISUxEUkVOICsgMSArIDcpIC8gOF07CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBoczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX3U4IGJIdWJIZHJEZWNMYXQ7Ci0gX19sZTE2IHdIdWJEZWxheTsKLSBfX2xlMTYgRGV2aWNlUmVtb3ZhYmxlOworICAgIHN0cnVjdCB7CisgICAgICBfX3U4IGJIdWJIZHJEZWNMYXQ7CisgICAgICBfX2xlMTYgd0h1YkRlbGF5OworICAgICAgX19sZTE2IERldmljZVJlbW92YWJsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkgc3M7Ci0gfSB1OwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgICAgfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKSBzczsKKyAgfSB1OworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgSFVCX0xFRF9BVVRPIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEhVQl9MRURfQU1CRVIgMQpAQCAtMTg2LDE2ICsxODYsMjAgQEAKICNkZWZpbmUgSFVCX0xFRF9PRkYgMwogZW51bSBodWJfbGVkX21vZGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJTkRJQ0FUT1JfQVVUTyA9IDAsCi0gSU5ESUNBVE9SX0NZQ0xFLAotIElORElDQVRPUl9HUkVFTl9CTElOSywgSU5ESUNBVE9SX0dSRUVOX0JMSU5LX09GRiwKLSBJTkRJQ0FUT1JfQU1CRVJfQkxJTkssIElORElDQVRPUl9BTUJFUl9CTElOS19PRkYsCisgIElORElDQVRPUl9BVVRPID0gMCwKKyAgSU5ESUNBVE9SX0NZQ0xFLAorICBJTkRJQ0FUT1JfR1JFRU5fQkxJTkssCisgIElORElDQVRPUl9HUkVFTl9CTElOS19PRkYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElORElDQVRPUl9BTFRfQkxJTkssIElORElDQVRPUl9BTFRfQkxJTktfT0ZGCi19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgSU5ESUNBVE9SX0FNQkVSX0JMSU5LLAorICBJTkRJQ0FUT1JfQU1CRVJfQkxJTktfT0ZGLAorICBJTkRJQ0FUT1JfQUxUX0JMSU5LLAorICBJTkRJQ0FUT1JfQUxUX0JMSU5LX09GRgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIEhVQl9UVFRUXzhfQklUUyAweDAwCiAjZGVmaW5lIEhVQl9UVFRUXzE2X0JJVFMgMHgyMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSFVCX1RUVFRfMjRfQklUUyAweDQwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBIVUJfVFRUVF8zMl9CSVRTIDB4NjAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvY2g5LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9jaDkuaAppbmRleCAzZjViOTliLi5jMmRkOTJkIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9jaDkuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9jaDkuaApAQCAtMTA2LDEzICsxMDYsMTMgQEAKICNkZWZpbmUgVVNCX0RFVl9TVEFUX0xUTV9FTkFCTEVEIDQKIHN0cnVjdCB1c2JfY3RybHJlcXVlc3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJSZXF1ZXN0VHlwZTsKLSBfX3U4IGJSZXF1ZXN0OwotIF9fbGUxNiB3VmFsdWU7Ci0gX19sZTE2IHdJbmRleDsKKyAgX191OCBiUmVxdWVzdFR5cGU7CisgIF9fdTggYlJlcXVlc3Q7CisgIF9fbGUxNiB3VmFsdWU7CisgIF9fbGUxNiB3SW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiB3TGVuZ3RoOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fbGUxNiB3TGVuZ3RoOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX0RUX0RFVklDRSAweDAxCiAjZGVmaW5lIFVTQl9EVF9DT05GSUcgMHgwMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTE0OCwzMCArMTQ4LDMwIEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVU0JfRFRfQ1NfRU5EUE9JTlQgKFVTQl9UWVBFX0NMQVNTIHwgVVNCX0RUX0VORFBPSU5UKQogc3RydWN0IHVzYl9kZXNjcmlwdG9yX2hlYWRlciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfZGV2aWNlX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTE2IGJjZFVTQjsKLSBfX3U4IGJEZXZpY2VDbGFzczsKLSBfX3U4IGJEZXZpY2VTdWJDbGFzczsKLSBfX3U4IGJEZXZpY2VQcm90b2NvbDsKKyAgX19sZTE2IGJjZFVTQjsKKyAgX191OCBiRGV2aWNlQ2xhc3M7CisgIF9fdTggYkRldmljZVN1YkNsYXNzOworICBfX3U4IGJEZXZpY2VQcm90b2NvbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTWF4UGFja2V0U2l6ZTA7Ci0gX19sZTE2IGlkVmVuZG9yOwotIF9fbGUxNiBpZFByb2R1Y3Q7Ci0gX19sZTE2IGJjZERldmljZTsKKyAgX191OCBiTWF4UGFja2V0U2l6ZTA7CisgIF9fbGUxNiBpZFZlbmRvcjsKKyAgX19sZTE2IGlkUHJvZHVjdDsKKyAgX19sZTE2IGJjZERldmljZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpTWFudWZhY3R1cmVyOwotIF9fdTggaVByb2R1Y3Q7Ci0gX191OCBpU2VyaWFsTnVtYmVyOwotIF9fdTggYk51bUNvbmZpZ3VyYXRpb25zOworICBfX3U4IGlNYW51ZmFjdHVyZXI7CisgIF9fdTggaVByb2R1Y3Q7CisgIF9fdTggaVNlcmlhbE51bWJlcjsKKyAgX191OCBiTnVtQ29uZmlndXJhdGlvbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfRFRfREVWSUNFX1NJWkUgMTgKICNkZWZpbmUgVVNCX0NMQVNTX1BFUl9JTlRFUkZBQ0UgMAogI2RlZmluZSBVU0JfQ0xBU1NfQVVESU8gMQpAQCAtMTk3LDE3ICsxOTcsMTcgQEAKICNkZWZpbmUgVVNCX1NVQkNMQVNTX1ZFTkRPUl9TUEVDIDB4ZmYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXNiX2NvbmZpZ19kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX19sZTE2IHdUb3RhbExlbmd0aDsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX19sZTE2IHdUb3RhbExlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTnVtSW50ZXJmYWNlczsKLSBfX3U4IGJDb25maWd1cmF0aW9uVmFsdWU7Ci0gX191OCBpQ29uZmlndXJhdGlvbjsKLSBfX3U4IGJtQXR0cmlidXRlczsKKyAgX191OCBiTnVtSW50ZXJmYWNlczsKKyAgX191OCBiQ29uZmlndXJhdGlvblZhbHVlOworICBfX3U4IGlDb25maWd1cmF0aW9uOworICBfX3U4IGJtQXR0cmlidXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTWF4UG93ZXI7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiTWF4UG93ZXI7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfRFRfQ09ORklHX1NJWkUgOQogI2RlZmluZSBVU0JfQ09ORklHX0FUVF9PTkUgKDEgPDwgNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0yMTYsMzggKzIxNiwzOCBAQAogI2RlZmluZSBVU0JfQ09ORklHX0FUVF9CQVRURVJZICgxIDw8IDQpCiBzdHJ1Y3QgdXNiX3N0cmluZ19kZXNjcmlwdG9yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fbGUxNiB3RGF0YVsxXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX2xlMTYgd0RhdGFbMV07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1c2JfaW50ZXJmYWNlX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJJbnRlcmZhY2VOdW1iZXI7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkludGVyZmFjZU51bWJlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiQWx0ZXJuYXRlU2V0dGluZzsKLSBfX3U4IGJOdW1FbmRwb2ludHM7Ci0gX191OCBiSW50ZXJmYWNlQ2xhc3M7Ci0gX191OCBiSW50ZXJmYWNlU3ViQ2xhc3M7CisgIF9fdTggYkFsdGVybmF0ZVNldHRpbmc7CisgIF9fdTggYk51bUVuZHBvaW50czsKKyAgX191OCBiSW50ZXJmYWNlQ2xhc3M7CisgIF9fdTggYkludGVyZmFjZVN1YkNsYXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJJbnRlcmZhY2VQcm90b2NvbDsKLSBfX3U4IGlJbnRlcmZhY2U7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiSW50ZXJmYWNlUHJvdG9jb2w7CisgIF9fdTggaUludGVyZmFjZTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9EVF9JTlRFUkZBQ0VfU0laRSA5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9lbmRwb2ludF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRW5kcG9pbnRBZGRyZXNzOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJFbmRwb2ludEFkZHJlc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYm1BdHRyaWJ1dGVzOwotIF9fbGUxNiB3TWF4UGFja2V0U2l6ZTsKLSBfX3U4IGJJbnRlcnZhbDsKLSBfX3U4IGJSZWZyZXNoOworICBfX3U4IGJtQXR0cmlidXRlczsKKyAgX19sZTE2IHdNYXhQYWNrZXRTaXplOworICBfX3U4IGJJbnRlcnZhbDsKKyAgX191OCBiUmVmcmVzaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiU3luY2hBZGRyZXNzOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggYlN5bmNoQWRkcmVzczsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9EVF9FTkRQT0lOVF9TSVpFIDcKICNkZWZpbmUgVVNCX0RUX0VORFBPSU5UX0FVRElPX1NJWkUgOQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTI3NywxMTggKzI3NywxMTggQEAKICNkZWZpbmUgVVNCX0VORFBPSU5UX1VTQUdFX0lNUExJQ0lUX0ZCIDB4MjAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXNiX3NzX2VwX2NvbXBfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYk1heEJ1cnN0OworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJNYXhCdXJzdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBibUF0dHJpYnV0ZXM7Ci0gX19sZTE2IHdCeXRlc1BlckludGVydmFsOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggYm1BdHRyaWJ1dGVzOworICBfX2xlMTYgd0J5dGVzUGVySW50ZXJ2YWw7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfRFRfU1NfRVBfQ09NUF9TSVpFIDYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQl9TU19NVUxUKHApICgxICsgKChwKSAmIDB4MykpCiBzdHJ1Y3QgdXNiX3F1YWxpZmllcl9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiBiY2RVU0I7Ci0gX191OCBiRGV2aWNlQ2xhc3M7Ci0gX191OCBiRGV2aWNlU3ViQ2xhc3M7Ci0gX191OCBiRGV2aWNlUHJvdG9jb2w7CisgIF9fbGUxNiBiY2RVU0I7CisgIF9fdTggYkRldmljZUNsYXNzOworICBfX3U4IGJEZXZpY2VTdWJDbGFzczsKKyAgX191OCBiRGV2aWNlUHJvdG9jb2w7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYk1heFBhY2tldFNpemUwOwotIF9fdTggYk51bUNvbmZpZ3VyYXRpb25zOwotIF9fdTggYlJFU0VSVkVEOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTggYk1heFBhY2tldFNpemUwOworICBfX3U4IGJOdW1Db25maWd1cmF0aW9uczsKKyAgX191OCBiUkVTRVJWRUQ7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1c2Jfb3RnX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJtQXR0cmlidXRlczsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBibUF0dHJpYnV0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfT1RHX1NSUCAoMSA8PCAwKQogI2RlZmluZSBVU0JfT1RHX0hOUCAoMSA8PCAxKQogc3RydWN0IHVzYl9kZWJ1Z19kZXNjcmlwdG9yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlYnVnSW5FbmRwb2ludDsKLSBfX3U4IGJEZWJ1Z091dEVuZHBvaW50OworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZWJ1Z0luRW5kcG9pbnQ7CisgIF9fdTggYkRlYnVnT3V0RW5kcG9pbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2JfaW50ZXJmYWNlX2Fzc29jX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRmlyc3RJbnRlcmZhY2U7Ci0gX191OCBiSW50ZXJmYWNlQ291bnQ7Ci0gX191OCBiRnVuY3Rpb25DbGFzczsKLSBfX3U4IGJGdW5jdGlvblN1YkNsYXNzOworICBfX3U4IGJGaXJzdEludGVyZmFjZTsKKyAgX191OCBiSW50ZXJmYWNlQ291bnQ7CisgIF9fdTggYkZ1bmN0aW9uQ2xhc3M7CisgIF9fdTggYkZ1bmN0aW9uU3ViQ2xhc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkZ1bmN0aW9uUHJvdG9jb2w7Ci0gX191OCBpRnVuY3Rpb247Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBiRnVuY3Rpb25Qcm90b2NvbDsKKyAgX191OCBpRnVuY3Rpb247Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9zZWN1cml0eV9kZXNjcmlwdG9yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fbGUxNiB3VG90YWxMZW5ndGg7Ci0gX191OCBiTnVtRW5jcnlwdGlvblR5cGVzOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX2xlMTYgd1RvdGFsTGVuZ3RoOworICBfX3U4IGJOdW1FbmNyeXB0aW9uVHlwZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB1c2Jfa2V5X2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0VEtJRFszXTsKLSBfX3U4IGJSZXNlcnZlZDsKLSBfX3U4IGJLZXlEYXRhWzBdOworICBfX3U4IHRUS0lEWzNdOworICBfX3U4IGJSZXNlcnZlZDsKKyAgX191OCBiS2V5RGF0YVswXTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9lbmNyeXB0aW9uX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJFbmNyeXB0aW9uVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRW5jcnlwdGlvblR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVU0JfRU5DX1RZUEVfVU5TRUNVUkUgMAogI2RlZmluZSBVU0JfRU5DX1RZUEVfV0lSRUQgMQogI2RlZmluZSBVU0JfRU5DX1RZUEVfQ0NNXzEgMgogI2RlZmluZSBVU0JfRU5DX1RZUEVfUlNBXzEgMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJFbmNyeXB0aW9uVmFsdWU7Ci0gX191OCBiQXV0aEtleUluZGV4OworICBfX3U4IGJFbmNyeXB0aW9uVmFsdWU7CisgIF9fdTggYkF1dGhLZXlJbmRleDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdXNiX2Jvc19kZXNjcmlwdG9yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fbGUxNiB3VG90YWxMZW5ndGg7Ci0gX191OCBiTnVtRGV2aWNlQ2FwczsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX19sZTE2IHdUb3RhbExlbmd0aDsKKyAgX191OCBiTnVtRGV2aWNlQ2FwczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfRFRfQk9TX1NJWkUgNQogc3RydWN0IHVzYl9kZXZfY2FwX2hlYWRlciB7Ci0gX191OCBiTGVuZ3RoOworICBfX3U4IGJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRldkNhcGFiaWxpdHlUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGV2Q2FwYWJpbGl0eVR5cGU7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfQ0FQX1RZUEVfV0lSRUxFU1NfVVNCIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXNiX3dpcmVsZXNzX2NhcF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGV2Q2FwYWJpbGl0eVR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRldkNhcGFiaWxpdHlUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJtQXR0cmlidXRlczsKKyAgX191OCBibUF0dHJpYnV0ZXM7CiAjZGVmaW5lIFVTQl9XSVJFTEVTU19QMlBfRFJEICgxIDw8IDEpCiAjZGVmaW5lIFVTQl9XSVJFTEVTU19CRUFDT05fTUFTSyAoMyA8PCAyKQogI2RlZmluZSBVU0JfV0lSRUxFU1NfQkVBQ09OX1NFTEYgKDEgPDwgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQl9XSVJFTEVTU19CRUFDT05fRElSRUNURUQgKDIgPDwgMikKICNkZWZpbmUgVVNCX1dJUkVMRVNTX0JFQUNPTl9OT05FICgzIDw8IDIpCi0gX19sZTE2IHdQSFlSYXRlczsKKyAgX19sZTE2IHdQSFlSYXRlczsKICNkZWZpbmUgVVNCX1dJUkVMRVNTX1BIWV81MyAoMSA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCX1dJUkVMRVNTX1BIWV84MCAoMSA8PCAxKQpAQCAtMzk5LDIwICszOTksMjAgQEAKICNkZWZpbmUgVVNCX1dJUkVMRVNTX1BIWV8zMjAgKDEgPDwgNSkKICNkZWZpbmUgVVNCX1dJUkVMRVNTX1BIWV80MDAgKDEgPDwgNikKICNkZWZpbmUgVVNCX1dJUkVMRVNTX1BIWV80ODAgKDEgPDwgNykKLSBfX3U4IGJtVEZJVFhQb3dlckluZm87CisgIF9fdTggYm1URklUWFBvd2VySW5mbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBibUZGSVRYUG93ZXJJbmZvOwotIF9fbGUxNiBibUJhbmRHcm91cDsKLSBfX3U4IGJSZXNlcnZlZDsKKyAgX191OCBibUZGSVRYUG93ZXJJbmZvOworICBfX2xlMTYgYm1CYW5kR3JvdXA7CisgIF9fdTggYlJlc2VydmVkOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQl9DQVBfVFlQRV9FWFQgMgogc3RydWN0IHVzYl9leHRfY2FwX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGV2Q2FwYWJpbGl0eVR5cGU7Ci0gX19sZTMyIGJtQXR0cmlidXRlczsKKyAgX191OCBiRGV2Q2FwYWJpbGl0eVR5cGU7CisgIF9fbGUzMiBibUF0dHJpYnV0ZXM7CiAjZGVmaW5lIFVTQl9MUE1fU1VQUE9SVCAoMSA8PCAxKQogI2RlZmluZSBVU0JfQkVTTF9TVVBQT1JUICgxIDw8IDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNDI2LDQ3ICs0MjYsNDcgQEAKICNkZWZpbmUgVVNCX1NTX0NBUF9UWVBFIDMKIHN0cnVjdCB1c2Jfc3NfY2FwX2Rlc2NyaXB0b3IgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGV2Q2FwYWJpbGl0eVR5cGU7Ci0gX191OCBibUF0dHJpYnV0ZXM7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRldkNhcGFiaWxpdHlUeXBlOworICBfX3U4IGJtQXR0cmlidXRlczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQl9MVE1fU1VQUE9SVCAoMSA8PCAxKQotIF9fbGUxNiB3U3BlZWRTdXBwb3J0ZWQ7CisgIF9fbGUxNiB3U3BlZWRTdXBwb3J0ZWQ7CiAjZGVmaW5lIFVTQl9MT1dfU1BFRURfT1BFUkFUSU9OICgxKQogI2RlZmluZSBVU0JfRlVMTF9TUEVFRF9PUEVSQVRJT04gKDEgPDwgMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQl9ISUdIX1NQRUVEX09QRVJBVElPTiAoMSA8PCAyKQogI2RlZmluZSBVU0JfNUdCUFNfT1BFUkFUSU9OICgxIDw8IDMpCi0gX191OCBiRnVuY3Rpb25hbGl0eVN1cHBvcnQ7Ci0gX191OCBiVTFkZXZFeGl0TGF0OworICBfX3U4IGJGdW5jdGlvbmFsaXR5U3VwcG9ydDsKKyAgX191OCBiVTFkZXZFeGl0TGF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgYlUyRGV2RXhpdExhdDsKKyAgX19sZTE2IGJVMkRldkV4aXRMYXQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0JfRFRfVVNCX1NTX0NBUF9TSVpFIDEwCiAjZGVmaW5lIENPTlRBSU5FUl9JRF9UWVBFIDQKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXNiX3NzX2NvbnRhaW5lcl9pZF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGV2Q2FwYWJpbGl0eVR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRldkNhcGFiaWxpdHlUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJSZXNlcnZlZDsKLSBfX3U4IENvbnRhaW5lcklEWzE2XTsKKyAgX191OCBiUmVzZXJ2ZWQ7CisgIF9fdTggQ29udGFpbmVySURbMTZdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX0RUX1VTQl9TU19DT05UTl9JRF9TSVpFIDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl93aXJlbGVzc19lcF9jb21wX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJNYXhCdXJzdDsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTWF4QnVyc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYk1heFNlcXVlbmNlOwotIF9fbGUxNiB3TWF4U3RyZWFtRGVsYXk7Ci0gX19sZTE2IHdPdmVyVGhlQWlyUGFja2V0U2l6ZTsKLSBfX3U4IGJPdmVyVGhlQWlySW50ZXJ2YWw7CisgIF9fdTggYk1heFNlcXVlbmNlOworICBfX2xlMTYgd01heFN0cmVhbURlbGF5OworICBfX2xlMTYgd092ZXJUaGVBaXJQYWNrZXRTaXplOworICBfX3U4IGJPdmVyVGhlQWlySW50ZXJ2YWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYm1Db21wQXR0cmlidXRlczsKKyAgX191OCBibUNvbXBBdHRyaWJ1dGVzOwogI2RlZmluZSBVU0JfRU5EUE9JTlRfU1dJVENIX01BU0sgMHgwMwogI2RlZmluZSBVU0JfRU5EUE9JTlRfU1dJVENIX05PIDAKICNkZWZpbmUgVVNCX0VORFBPSU5UX1NXSVRDSF9TV0lUQ0ggMQpAQCAtNDc0LDY3ICs0NzQsNjggQEAKICNkZWZpbmUgVVNCX0VORFBPSU5UX1NXSVRDSF9TQ0FMRSAyCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9oYW5kc2hha2UgewotIF9fdTggYk1lc3NhZ2VOdW1iZXI7CisgIF9fdTggYk1lc3NhZ2VOdW1iZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYlN0YXR1czsKLSBfX3U4IHRUS0lEWzNdOwotIF9fdTggYlJlc2VydmVkOwotIF9fdTggQ0RJRFsxNl07CisgIF9fdTggYlN0YXR1czsKKyAgX191OCB0VEtJRFszXTsKKyAgX191OCBiUmVzZXJ2ZWQ7CisgIF9fdTggQ0RJRFsxNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbm9uY2VbMTZdOwotIF9fdTggTUlDWzhdOworICBfX3U4IG5vbmNlWzE2XTsKKyAgX191OCBNSUNbOF07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9jb25uZWN0aW9uX2NvbnRleHQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IENISURbMTZdOwotIF9fdTggQ0RJRFsxNl07Ci0gX191OCBDS1sxNl07CisgIF9fdTggQ0hJRFsxNl07CisgIF9fdTggQ0RJRFsxNl07CisgIF9fdTggQ0tbMTZdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHVzYl9kZXZpY2Vfc3BlZWQgewotIFVTQl9TUEVFRF9VTktOT1dOID0gMCwKLSBVU0JfU1BFRURfTE9XLCBVU0JfU1BFRURfRlVMTCwKLSBVU0JfU1BFRURfSElHSCwKKyAgVVNCX1NQRUVEX1VOS05PV04gPSAwLAorICBVU0JfU1BFRURfTE9XLAorICBVU0JfU1BFRURfRlVMTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVVNCX1NQRUVEX1dJUkVMRVNTLAotIFVTQl9TUEVFRF9TVVBFUiwKKyAgVVNCX1NQRUVEX0hJR0gsCisgIFVTQl9TUEVFRF9XSVJFTEVTUywKKyAgVVNCX1NQRUVEX1NVUEVSLAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHVzYl9kZXZpY2Vfc3RhdGUgeworICBVU0JfU1RBVEVfTk9UQVRUQUNIRUQgPSAwLAorICBVU0JfU1RBVEVfQVRUQUNIRUQsCisgIFVTQl9TVEFURV9QT1dFUkVELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBVU0JfU1RBVEVfTk9UQVRUQUNIRUQgPSAwLAotIFVTQl9TVEFURV9BVFRBQ0hFRCwKLSBVU0JfU1RBVEVfUE9XRVJFRCwKLSBVU0JfU1RBVEVfUkVDT05ORUNUSU5HLAorICBVU0JfU1RBVEVfUkVDT05ORUNUSU5HLAorICBVU0JfU1RBVEVfVU5BVVRIRU5USUNBVEVELAorICBVU0JfU1RBVEVfREVGQVVMVCwKKyAgVVNCX1NUQVRFX0FERFJFU1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFVTQl9TVEFURV9VTkFVVEhFTlRJQ0FURUQsCi0gVVNCX1NUQVRFX0RFRkFVTFQsCi0gVVNCX1NUQVRFX0FERFJFU1MsCi0gVVNCX1NUQVRFX0NPTkZJR1VSRUQsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFVTQl9TVEFURV9TVVNQRU5ERUQKKyAgVVNCX1NUQVRFX0NPTkZJR1VSRUQsCisgIFVTQl9TVEFURV9TVVNQRU5ERUQKIH07CiBlbnVtIHVzYjNfbGlua19zdGF0ZSB7Ci0gVVNCM19MUE1fVTAgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBVU0IzX0xQTV9VMSwKLSBVU0IzX0xQTV9VMiwKLSBVU0IzX0xQTV9VMworICBVU0IzX0xQTV9VMCA9IDAsCisgIFVTQjNfTFBNX1UxLAorICBVU0IzX0xQTV9VMiwKKyAgVVNCM19MUE1fVTMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCM19MUE1fRElTQUJMRUQgMHgwCiAjZGVmaW5lIFVTQjNfTFBNX1UxX01BWF9USU1FT1VUIDB4N0YKICNkZWZpbmUgVVNCM19MUE1fVTJfTUFYX1RJTUVPVVQgMHhGRQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCM19MUE1fREVWSUNFX0lOSVRJQVRFRCAweEZGCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYl9zZXRfc2VsX3JlcSB7Ci0gX191OCB1MV9zZWw7Ci0gX191OCB1MV9wZWw7Ci0gX19sZTE2IHUyX3NlbDsKKyAgX191OCB1MV9zZWw7CisgIF9fdTggdTFfcGVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgdTJfcGVsOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fbGUxNiB1Ml9zZWw7CisgIF9fbGUxNiB1Ml9wZWw7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBVU0IzX0xQTV9NQVhfVTFfU0VMX1BFTCAweEZGCi0jZGVmaW5lIFVTQjNfTFBNX01BWF9VMl9TRUxfUEVMIDB4RkZGRgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVVNCM19MUE1fTUFYX1UyX1NFTF9QRUwgMHhGRkZGCiAjZGVmaW5lIFVTQl9TRUxGX1BPV0VSX1ZCVVNfTUFYX0RSQVcgMTAwCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2ZfbXRwLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9mX210cC5oCmluZGV4IDNjMTgzNTMuLjIyZWM3NzEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2ZfbXRwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvZl9tdHAuaApAQCAtMjIsMTcgKzIyLDE3IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbXRwX2ZpbGVfcmFuZ2UgewotIGludCBmZDsKLSBsb2ZmX3Qgb2Zmc2V0OwotIGludDY0X3QgbGVuZ3RoOworICBpbnQgZmQ7CisgIGxvZmZfdCBvZmZzZXQ7CisgIGludDY0X3QgbGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MTZfdCBjb21tYW5kOwotIHVpbnQzMl90IHRyYW5zYWN0aW9uX2lkOworICB1aW50MTZfdCBjb21tYW5kOworICB1aW50MzJfdCB0cmFuc2FjdGlvbl9pZDsKIH07CiBzdHJ1Y3QgbXRwX2V2ZW50IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2l6ZV90IGxlbmd0aDsKLSB2b2lkICpkYXRhOworICBzaXplX3QgbGVuZ3RoOworICB2b2lkICogZGF0YTsKIH07CiAjZGVmaW5lIE1UUF9TRU5EX0ZJTEUgX0lPVygnTScsIDAsIHN0cnVjdCBtdHBfZmlsZV9yYW5nZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9mdW5jdGlvbmZzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9mdW5jdGlvbmZzLmgKaW5kZXggM2VhMTg1YS4uZjNmNGRhNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvZnVuY3Rpb25mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2Z1bmN0aW9uZnMuaApAQCAtMjMsNTkgKzIzLDEwOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDxsaW51eC91c2IvY2g5Lmg+CiBlbnVtIHsKLSBGVU5DVElPTkZTX0RFU0NSSVBUT1JTX01BR0lDID0gMSwKLSBGVU5DVElPTkZTX1NUUklOR1NfTUFHSUMgPSAyCisgIEZVTkNUSU9ORlNfREVTQ1JJUFRPUlNfTUFHSUMgPSAxLAorICBGVU5DVElPTkZTX1NUUklOR1NfTUFHSUMgPSAyLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgRlVOQ1RJT05GU19ERVNDUklQVE9SU19NQUdJQ19WMiA9IDMsCit9OworZW51bSBmdW5jdGlvbmZzX2ZsYWdzIHsKKyAgRlVOQ1RJT05GU19IQVNfRlNfREVTQyA9IDEsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBGVU5DVElPTkZTX0hBU19IU19ERVNDID0gMiwKKyAgRlVOQ1RJT05GU19IQVNfU1NfREVTQyA9IDQsCisgIEZVTkNUSU9ORlNfSEFTX01TX09TX0RFU0MgPSA4LAorICBGVU5DVElPTkZTX1ZJUlRVQUxfQUREUiA9IDE2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdXNiX2VuZHBvaW50X2Rlc2NyaXB0b3Jfbm9fYXVkaW8gewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRW5kcG9pbnRBZGRyZXNzOwotIF9fdTggYm1BdHRyaWJ1dGVzOwotIF9fbGUxNiB3TWF4UGFja2V0U2l6ZTsKLSBfX3U4IGJJbnRlcnZhbDsKKyAgX191OCBiRW5kcG9pbnRBZGRyZXNzOworICBfX3U4IGJtQXR0cmlidXRlczsKKyAgX19sZTE2IHdNYXhQYWNrZXRTaXplOworICBfX3U4IGJJbnRlcnZhbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworc3RydWN0IHVzYl9mdW5jdGlvbmZzX2Rlc2NzX2hlYWRfdjIgeworICBfX2xlMzIgbWFnaWM7CisgIF9fbGUzMiBsZW5ndGg7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX2xlMzIgZmxhZ3M7Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9mdW5jdGlvbmZzX2Rlc2NzX2hlYWQgewotIF9fbGUzMiBtYWdpYzsKLSBfX2xlMzIgbGVuZ3RoOworICBfX2xlMzIgbWFnaWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBmc19jb3VudDsKLSBfX2xlMzIgaHNfY291bnQ7CisgIF9fbGUzMiBsZW5ndGg7CisgIF9fbGUzMiBmc19jb3VudDsKKyAgX19sZTMyIGhzX2NvdW50OworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGRlcHJlY2F0ZWQpKTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgdXNiX29zX2Rlc2NfaGVhZGVyIHsKKyAgX191OCBpbnRlcmZhY2U7CisgIF9fbGUzMiBkd0xlbmd0aDsKKyAgX19sZTE2IGJjZFZlcnNpb247CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX2xlMTYgd0luZGV4OworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTggYkNvdW50OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICAgIF9fdTggUmVzZXJ2ZWQ7CisgICAgfTsKKyAgICBfX2xlMTYgd0NvdW50OworICB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CitzdHJ1Y3QgdXNiX2V4dF9jb21wYXRfZGVzYyB7CisgIF9fdTggYkZpcnN0SW50ZXJmYWNlTnVtYmVyOworICBfX3U4IFJlc2VydmVkMTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggQ29tcGF0aWJsZUlEWzhdOworICBfX3U4IFN1YkNvbXBhdGlibGVJRFs4XTsKKyAgX191OCBSZXNlcnZlZDJbNl07Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCB1c2JfZXh0X3Byb3BfZGVzYyB7CisgIF9fbGUzMiBkd1NpemU7CisgIF9fbGUzMiBkd1Byb3BlcnR5RGF0YVR5cGU7CisgIF9fbGUxNiB3UHJvcGVydHlOYW1lTGVuZ3RoOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdXNiX2Z1bmN0aW9uZnNfc3RyaW5nc19oZWFkIHsKKyAgX19sZTMyIG1hZ2ljOworICBfX2xlMzIgbGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgbWFnaWM7Ci0gX19sZTMyIGxlbmd0aDsKLSBfX2xlMzIgc3RyX2NvdW50OwotIF9fbGUzMiBsYW5nX2NvdW50OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19sZTMyIHN0cl9jb3VudDsKKyAgX19sZTMyIGxhbmdfY291bnQ7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogZW51bSB1c2JfZnVuY3Rpb25mc19ldmVudF90eXBlIHsKLSBGVU5DVElPTkZTX0JJTkQsCi0gRlVOQ1RJT05GU19VTkJJTkQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZVTkNUSU9ORlNfRU5BQkxFLAotIEZVTkNUSU9ORlNfRElTQUJMRSwKLSBGVU5DVElPTkZTX1NFVFVQLAotIEZVTkNUSU9ORlNfU1VTUEVORCwKKyAgRlVOQ1RJT05GU19CSU5ELAorICBGVU5DVElPTkZTX1VOQklORCwKKyAgRlVOQ1RJT05GU19FTkFCTEUsCisgIEZVTkNUSU9ORlNfRElTQUJMRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRlVOQ1RJT05GU19SRVNVTUUKKyAgRlVOQ1RJT05GU19TRVRVUCwKKyAgRlVOQ1RJT05GU19TVVNQRU5ELAorICBGVU5DVElPTkZTX1JFU1VNRQogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXNiX2Z1bmN0aW9uZnNfZXZlbnQgewotIHVuaW9uIHsKKyAgdW5pb24geworICAgIHN0cnVjdCB1c2JfY3RybHJlcXVlc3Qgc2V0dXA7CisgIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSkgdTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHVzYl9jdHJscmVxdWVzdCBzZXR1cDsKLSB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpIHU7Ci0gX191OCB0eXBlOwotIF9fdTggX3BhZFszXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggdHlwZTsKKyAgX191OCBfcGFkWzNdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgRlVOQ1RJT05GU19GSUZPX1NUQVRVUyBfSU8oJ2cnLCAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlVOQ1RJT05GU19GSUZPX0ZMVVNIIF9JTygnZycsIDIpCiAjZGVmaW5lIEZVTkNUSU9ORlNfQ0xFQVJfSEFMVCBfSU8oJ2cnLCAzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRlVOQ1RJT05GU19JTlRFUkZBQ0VfUkVWTUFQIF9JTygnZycsIDEyOCkKICNkZWZpbmUgRlVOQ1RJT05GU19FTkRQT0lOVF9SRVZNQVAgX0lPKCdnJywgMTI5KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRlVOQ1RJT05GU19FTkRQT0lOVF9ERVNDIF9JT1IoJ2cnLCAxMzAsIHN0cnVjdCB1c2JfZW5kcG9pbnRfZGVzY3JpcHRvcikKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvZ2FkZ2V0ZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL2dhZGdldGZzLmgKaW5kZXggNGI2Y2EwMC4uMzlkYTE4YSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvZ2FkZ2V0ZnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9nYWRnZXRmcy5oCkBAIC0yMywyMSArMjMsMjEgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjaW5jbHVkZSA8bGludXgvdXNiL2NoOS5oPgogZW51bSB1c2JfZ2FkZ2V0ZnNfZXZlbnRfdHlwZSB7Ci0gR0FER0VURlNfTk9QID0gMCwKLSBHQURHRVRGU19DT05ORUNULAorICBHQURHRVRGU19OT1AgPSAwLAorICBHQURHRVRGU19DT05ORUNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBHQURHRVRGU19ESVNDT05ORUNULAotIEdBREdFVEZTX1NFVFVQLAotIEdBREdFVEZTX1NVU1BFTkQsCisgIEdBREdFVEZTX0RJU0NPTk5FQ1QsCisgIEdBREdFVEZTX1NFVFVQLAorICBHQURHRVRGU19TVVNQRU5ELAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXNiX2dhZGdldGZzX2V2ZW50IHsKLSB1bmlvbiB7Ci0gZW51bSB1c2JfZGV2aWNlX3NwZWVkIHNwZWVkOwotIHN0cnVjdCB1c2JfY3RybHJlcXVlc3Qgc2V0dXA7CisgIHVuaW9uIHsKKyAgICBlbnVtIHVzYl9kZXZpY2Vfc3BlZWQgc3BlZWQ7CisgICAgc3RydWN0IHVzYl9jdHJscmVxdWVzdCBzZXR1cDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSB1OwotIGVudW0gdXNiX2dhZGdldGZzX2V2ZW50X3R5cGUgdHlwZTsKKyAgfSB1OworICBlbnVtIHVzYl9nYWRnZXRmc19ldmVudF90eXBlIHR5cGU7CiB9OwogI2RlZmluZSBHQURHRVRGU19GSUZPX1NUQVRVUyBfSU8oJ2cnLCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL21pZGkuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL21pZGkuaAppbmRleCA5OWMzNmY3Li4wMzExMTZiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi9taWRpLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvbWlkaS5oCkBAIC0yOSw1NSArMjksNTcgQEAKICNkZWZpbmUgVVNCX01TX0VNQkVEREVEIDB4MDEKICNkZWZpbmUgVVNCX01TX0VYVEVSTkFMIDB4MDIKIHN0cnVjdCB1c2JfbXNfaGVhZGVyX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKKyAgX191OCBiTGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKLSBfX2xlMTYgYmNkTVNDOwotIF9fbGUxNiB3VG90YWxMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKKyAgX19sZTE2IGJjZE1TQzsKKyAgX19sZTE2IHdUb3RhbExlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9EVF9NU19IRUFERVJfU0laRSA3CiBzdHJ1Y3QgdXNiX21pZGlfaW5famFja19kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX191OCBiSmFja1R5cGU7Ci0gX191OCBiSmFja0lEOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7CisgIF9fdTggYkphY2tUeXBlOworICBfX3U4IGJKYWNrSUQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaUphY2s7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKKyAgX191OCBpSmFjazsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFVTQl9EVF9NSURJX0lOX1NJWkUgNgogc3RydWN0IHVzYl9taWRpX3NvdXJjZV9waW4gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJhU291cmNlSUQ7Ci0gX191OCBiYVNvdXJjZVBpbjsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJhU291cmNlSUQ7CisgIF9fdTggYmFTb3VyY2VQaW47Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHVzYl9taWRpX291dF9qYWNrX2Rlc2NyaXB0b3IgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX191OCBiSmFja1R5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOworICBfX3U4IGJKYWNrVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiSmFja0lEOwotIF9fdTggYk5ySW5wdXRQaW5zOwotIHN0cnVjdCB1c2JfbWlkaV9zb3VyY2VfcGluIHBpbnNbXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGJKYWNrSUQ7CisgIF9fdTggYk5ySW5wdXRQaW5zOworICBzdHJ1Y3QgdXNiX21pZGlfc291cmNlX3BpbiBwaW5zW107Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCX0RUX01JRElfT1VUX1NJWkUocCkgKDcgKyAyICogKHApKQotI2RlZmluZSBERUNMQVJFX1VTQl9NSURJX09VVF9KQUNLX0RFU0NSSVBUT1IocCkgIHN0cnVjdCB1c2JfbWlkaV9vdXRfamFja19kZXNjcmlwdG9yXyMjcCB7ICAgX191OCBiTGVuZ3RoOyAgIF9fdTggYkRlc2NyaXB0b3JUeXBlOyAgIF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOyAgIF9fdTggYkphY2tUeXBlOyAgIF9fdTggYkphY2tJRDsgICBfX3U4IGJOcklucHV0UGluczsgICBzdHJ1Y3QgdXNiX21pZGlfc291cmNlX3BpbiBwaW5zW3BdOyAgIF9fdTggaUphY2s7ICB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKQorI2RlZmluZSBERUNMQVJFX1VTQl9NSURJX09VVF9KQUNLX0RFU0NSSVBUT1IocCkgc3RydWN0IHVzYl9taWRpX291dF9qYWNrX2Rlc2NyaXB0b3JfICMjcCB7IF9fdTggYkxlbmd0aDsgX191OCBiRGVzY3JpcHRvclR5cGU7IF9fdTggYkRlc2NyaXB0b3JTdWJ0eXBlOyBfX3U4IGJKYWNrVHlwZTsgX191OCBiSmFja0lEOyBfX3U4IGJOcklucHV0UGluczsgc3RydWN0IHVzYl9taWRpX3NvdXJjZV9waW4gcGluc1twXTsgX191OCBpSmFjazsgXAorfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKQogc3RydWN0IHVzYl9tc19lbmRwb2ludF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YnR5cGU7Ci0gX191OCBiTnVtRW1iTUlESUphY2s7Ci0gX191OCBiYUFzc29jSmFja0lEW107CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsKKyAgX191OCBiTnVtRW1iTUlESUphY2s7CisgIF9fdTggYmFBc3NvY0phY2tJRFtdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVVNCX0RUX01TX0VORFBPSU5UX1NJWkUobikgKDQgKyAobikpCi0jZGVmaW5lIERFQ0xBUkVfVVNCX01TX0VORFBPSU5UX0RFU0NSSVBUT1IobikgIHN0cnVjdCB1c2JfbXNfZW5kcG9pbnRfZGVzY3JpcHRvcl8jI24geyAgIF9fdTggYkxlbmd0aDsgICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgICBfX3U4IGJEZXNjcmlwdG9yU3VidHlwZTsgICBfX3U4IGJOdW1FbWJNSURJSmFjazsgICBfX3U4IGJhQXNzb2NKYWNrSURbbl07ICB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKQorI2RlZmluZSBERUNMQVJFX1VTQl9NU19FTkRQT0lOVF9ERVNDUklQVE9SKG4pIHN0cnVjdCB1c2JfbXNfZW5kcG9pbnRfZGVzY3JpcHRvcl8gIyNuIHsgX191OCBiTGVuZ3RoOyBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgX191OCBiRGVzY3JpcHRvclN1YnR5cGU7IF9fdTggYk51bUVtYk1JRElKYWNrOyBfX3U4IGJhQXNzb2NKYWNrSURbbl07IFwKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSkKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL3ZpZGVvLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYi92aWRlby5oCmluZGV4IDdhYmFlYWQuLmFiMTBlZDggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiL3ZpZGVvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2IvdmlkZW8uaApAQCAtMTY5LDI4NSArMTY5LDI5MiBAQAogI2RlZmluZSBVVkNfQ09OVFJPTF9DQVBfQVVUT1VQREFURSAoMSA8PCAzKQogI2RlZmluZSBVVkNfQ09OVFJPTF9DQVBfQVNZTkNIUk9OT1VTICgxIDw8IDQpCiBzdHJ1Y3QgdXZjX2Rlc2NyaXB0b3JfaGVhZGVyIHsKLSBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdXZjX2hlYWRlcl9kZXNjcmlwdG9yIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwotIF9fdTE2IGJjZFVWQzsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTE2IGJjZFVWQzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgd1RvdGFsTGVuZ3RoOwotIF9fdTMyIGR3Q2xvY2tGcmVxdWVuY3k7Ci0gX191OCBiSW5Db2xsZWN0aW9uOwotIF9fdTggYmFJbnRlcmZhY2VOcltdOworICBfX3UxNiB3VG90YWxMZW5ndGg7CisgIF9fdTMyIGR3Q2xvY2tGcmVxdWVuY3k7CisgIF9fdTggYkluQ29sbGVjdGlvbjsKKyAgX191OCBiYUludGVyZmFjZU5yW107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7Ci0jZGVmaW5lIFVWQ19EVF9IRUFERVJfU0laRShuKSAoMTIrKG4pKQotI2RlZmluZSBVVkNfSEVBREVSX0RFU0NSSVBUT1IobikgICB1dmNfaGVhZGVyX2Rlc2NyaXB0b3JfIyNuCi0jZGVmaW5lIERFQ0xBUkVfVVZDX0hFQURFUl9ERVNDUklQVE9SKG4pICBzdHJ1Y3QgVVZDX0hFQURFUl9ERVNDUklQVE9SKG4pIHsgICBfX3U4IGJMZW5ndGg7ICAgX191OCBiRGVzY3JpcHRvclR5cGU7ICAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7ICAgX191MTYgYmNkVVZDOyAgIF9fdTE2IHdUb3RhbExlbmd0aDsgICBfX3UzMiBkd0Nsb2NrRnJlcXVlbmN5OyAgIF9fdTggYkluQ29sbGVjdGlvbjsgICBfX3U4IGJhSW50ZXJmYWNlTnJbbl07ICB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKQorI2RlZmluZSBVVkNfRFRfSEVBREVSX1NJWkUobikgKDEyICsgKG4pKQorI2RlZmluZSBVVkNfSEVBREVSX0RFU0NSSVBUT1IobikgdXZjX2hlYWRlcl9kZXNjcmlwdG9yXyAjI24KKyNkZWZpbmUgREVDTEFSRV9VVkNfSEVBREVSX0RFU0NSSVBUT1Iobikgc3RydWN0IFVWQ19IRUFERVJfREVTQ1JJUFRPUihuKSB7IF9fdTggYkxlbmd0aDsgX191OCBiRGVzY3JpcHRvclR5cGU7IF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOyBfX3UxNiBiY2RVVkM7IF9fdTE2IHdUb3RhbExlbmd0aDsgX191MzIgZHdDbG9ja0ZyZXF1ZW5jeTsgX191OCBiSW5Db2xsZWN0aW9uOyBfX3U4IGJhSW50ZXJmYWNlTnJbbl07IFwKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXZjX2lucHV0X3Rlcm1pbmFsX2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYlRlcm1pbmFsSUQ7Ci0gX191MTYgd1Rlcm1pbmFsVHlwZTsKLSBfX3U4IGJBc3NvY1Rlcm1pbmFsOwotIF9fdTggaVRlcm1pbmFsOworICBfX3U4IGJUZXJtaW5hbElEOworICBfX3UxNiB3VGVybWluYWxUeXBlOworICBfX3U4IGJBc3NvY1Rlcm1pbmFsOworICBfX3U4IGlUZXJtaW5hbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKICNkZWZpbmUgVVZDX0RUX0lOUFVUX1RFUk1JTkFMX1NJWkUgOAogc3RydWN0IHV2Y19vdXRwdXRfdGVybWluYWxfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOworICBfX3U4IGJMZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwotIF9fdTggYlRlcm1pbmFsSUQ7Ci0gX191MTYgd1Rlcm1pbmFsVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3U4IGJUZXJtaW5hbElEOworICBfX3UxNiB3VGVybWluYWxUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJBc3NvY1Rlcm1pbmFsOwotIF9fdTggYlNvdXJjZUlEOwotIF9fdTggaVRlcm1pbmFsOworICBfX3U4IGJBc3NvY1Rlcm1pbmFsOworICBfX3U4IGJTb3VyY2VJRDsKKyAgX191OCBpVGVybWluYWw7CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVWQ19EVF9PVVRQVVRfVEVSTUlOQUxfU0laRSA5CiBzdHJ1Y3QgdXZjX2NhbWVyYV90ZXJtaW5hbF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwotIF9fdTggYlRlcm1pbmFsSUQ7Ci0gX191MTYgd1Rlcm1pbmFsVHlwZTsKLSBfX3U4IGJBc3NvY1Rlcm1pbmFsOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiVGVybWluYWxJRDsKKyAgX191MTYgd1Rlcm1pbmFsVHlwZTsKKyAgX191OCBiQXNzb2NUZXJtaW5hbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpVGVybWluYWw7Ci0gX191MTYgd09iamVjdGl2ZUZvY2FsTGVuZ3RoTWluOwotIF9fdTE2IHdPYmplY3RpdmVGb2NhbExlbmd0aE1heDsKLSBfX3UxNiB3T2N1bGFyRm9jYWxMZW5ndGg7CisgIF9fdTggaVRlcm1pbmFsOworICBfX3UxNiB3T2JqZWN0aXZlRm9jYWxMZW5ndGhNaW47CisgIF9fdTE2IHdPYmplY3RpdmVGb2NhbExlbmd0aE1heDsKKyAgX191MTYgd09jdWxhckZvY2FsTGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJDb250cm9sU2l6ZTsKLSBfX3U4IGJtQ29udHJvbHNbM107CisgIF9fdTggYkNvbnRyb2xTaXplOworICBfX3U4IGJtQ29udHJvbHNbM107CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKLSNkZWZpbmUgVVZDX0RUX0NBTUVSQV9URVJNSU5BTF9TSVpFKG4pICgxNSsobikpCisjZGVmaW5lIFVWQ19EVF9DQU1FUkFfVEVSTUlOQUxfU0laRShuKSAoMTUgKyAobikpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHV2Y19zZWxlY3Rvcl91bml0X2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYlVuaXRJRDsKLSBfX3U4IGJOckluUGluczsKLSBfX3U4IGJhU291cmNlSURbMF07Ci0gX191OCBpU2VsZWN0b3I7CisgIF9fdTggYlVuaXRJRDsKKyAgX191OCBiTnJJblBpbnM7CisgIF9fdTggYmFTb3VyY2VJRFswXTsKKyAgX191OCBpU2VsZWN0b3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7Ci0jZGVmaW5lIFVWQ19EVF9TRUxFQ1RPUl9VTklUX1NJWkUobikgKDYrKG4pKQotI2RlZmluZSBVVkNfU0VMRUNUT1JfVU5JVF9ERVNDUklQVE9SKG4pICAgdXZjX3NlbGVjdG9yX3VuaXRfZGVzY3JpcHRvcl8jI24KLSNkZWZpbmUgREVDTEFSRV9VVkNfU0VMRUNUT1JfVU5JVF9ERVNDUklQVE9SKG4pICBzdHJ1Y3QgVVZDX1NFTEVDVE9SX1VOSVRfREVTQ1JJUFRPUihuKSB7ICAgX191OCBiTGVuZ3RoOyAgIF9fdTggYkRlc2NyaXB0b3JUeXBlOyAgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOyAgIF9fdTggYlVuaXRJRDsgICBfX3U4IGJOckluUGluczsgICBfX3U4IGJhU291cmNlSURbbl07ICAgX191OCBpU2VsZWN0b3I7ICB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKQorI2RlZmluZSBVVkNfRFRfU0VMRUNUT1JfVU5JVF9TSVpFKG4pICg2ICsgKG4pKQorI2RlZmluZSBVVkNfU0VMRUNUT1JfVU5JVF9ERVNDUklQVE9SKG4pIHV2Y19zZWxlY3Rvcl91bml0X2Rlc2NyaXB0b3JfICMjbgorI2RlZmluZSBERUNMQVJFX1VWQ19TRUxFQ1RPUl9VTklUX0RFU0NSSVBUT1Iobikgc3RydWN0IFVWQ19TRUxFQ1RPUl9VTklUX0RFU0NSSVBUT1IobikgeyBfX3U4IGJMZW5ndGg7IF9fdTggYkRlc2NyaXB0b3JUeXBlOyBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsgX191OCBiVW5pdElEOyBfX3U4IGJOckluUGluczsgX191OCBiYVNvdXJjZUlEW25dOyBfX3U4IGlTZWxlY3RvcjsgXAorfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1dmNfcHJvY2Vzc2luZ191bml0X2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYlVuaXRJRDsKLSBfX3U4IGJTb3VyY2VJRDsKLSBfX3UxNiB3TWF4TXVsdGlwbGllcjsKLSBfX3U4IGJDb250cm9sU2l6ZTsKKyAgX191OCBiVW5pdElEOworICBfX3U4IGJTb3VyY2VJRDsKKyAgX191MTYgd01heE11bHRpcGxpZXI7CisgIF9fdTggYkNvbnRyb2xTaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJtQ29udHJvbHNbMl07Ci0gX191OCBpUHJvY2Vzc2luZzsKKyAgX191OCBibUNvbnRyb2xzWzJdOworICBfX3U4IGlQcm9jZXNzaW5nOwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7Ci0jZGVmaW5lIFVWQ19EVF9QUk9DRVNTSU5HX1VOSVRfU0laRShuKSAoOSsobikpCisjZGVmaW5lIFVWQ19EVF9QUk9DRVNTSU5HX1VOSVRfU0laRShuKSAoOSArIChuKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXZjX2V4dGVuc2lvbl91bml0X2Rlc2NyaXB0b3IgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYlVuaXRJRDsKLSBfX3U4IGd1aWRFeHRlbnNpb25Db2RlWzE2XTsKLSBfX3U4IGJOdW1Db250cm9sczsKLSBfX3U4IGJOckluUGluczsKKyAgX191OCBiVW5pdElEOworICBfX3U4IGd1aWRFeHRlbnNpb25Db2RlWzE2XTsKKyAgX191OCBiTnVtQ29udHJvbHM7CisgIF9fdTggYk5ySW5QaW5zOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJhU291cmNlSURbMF07Ci0gX191OCBiQ29udHJvbFNpemU7Ci0gX191OCBibUNvbnRyb2xzWzBdOwotIF9fdTggaUV4dGVuc2lvbjsKKyAgX191OCBiYVNvdXJjZUlEWzBdOworICBfX3U4IGJDb250cm9sU2l6ZTsKKyAgX191OCBibUNvbnRyb2xzWzBdOworICBfX3U4IGlFeHRlbnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7Ci0jZGVmaW5lIFVWQ19EVF9FWFRFTlNJT05fVU5JVF9TSVpFKHAsIG4pICgyNCsocCkrKG4pKQotI2RlZmluZSBVVkNfRVhURU5TSU9OX1VOSVRfREVTQ1JJUFRPUihwLCBuKSAgIHV2Y19leHRlbnNpb25fdW5pdF9kZXNjcmlwdG9yXyMjcF8jI24KLSNkZWZpbmUgREVDTEFSRV9VVkNfRVhURU5TSU9OX1VOSVRfREVTQ1JJUFRPUihwLCBuKSAgc3RydWN0IFVWQ19FWFRFTlNJT05fVU5JVF9ERVNDUklQVE9SKHAsIG4pIHsgICBfX3U4IGJMZW5ndGg7ICAgX191OCBiRGVzY3JpcHRvclR5cGU7ICAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7ICAgX191OCBiVW5pdElEOyAgIF9fdTggZ3VpZEV4dGVuc2lvbkNvZGVbMTZdOyAgIF9fdTggYk51bUNvbnRyb2xzOyAgIF9fdTggYk5ySW5QaW5zOyAgIF9fdTggYmFTb3VyY2VJRFtwXTsgICBfX3U4IGJDb250cm9sU2l6ZTsgICBfX3U4IGJtQ29udHJvbHNbbl07ICAgX191OCBpRXh0ZW5zaW9uOyAgfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkKKyNkZWZpbmUgVVZDX0RUX0VYVEVOU0lPTl9VTklUX1NJWkUocCxuKSAoMjQgKyAocCkgKyAobikpCisjZGVmaW5lIFVWQ19FWFRFTlNJT05fVU5JVF9ERVNDUklQVE9SKHAsbikgdXZjX2V4dGVuc2lvbl91bml0X2Rlc2NyaXB0b3JfICMjcF8gIyNuCisjZGVmaW5lIERFQ0xBUkVfVVZDX0VYVEVOU0lPTl9VTklUX0RFU0NSSVBUT1IocCxuKSBzdHJ1Y3QgVVZDX0VYVEVOU0lPTl9VTklUX0RFU0NSSVBUT1IocCwgbikgeyBfX3U4IGJMZW5ndGg7IF9fdTggYkRlc2NyaXB0b3JUeXBlOyBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsgX191OCBiVW5pdElEOyBfX3U4IGd1aWRFeHRlbnNpb25Db2RlWzE2XTsgX191OCBiTnVtQ29udHJvbHM7IF9fdTggYk5ySW5QaW5zOyBfX3U4IGJhU291cmNlSURbcF07IF9fdTggYkNvbnRyb2xTaXplOyBfX3U4IGJtQ29udHJvbHNbbl07IF9fdTggaUV4dGVuc2lvbjsgXAorfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1dmNfY29udHJvbF9lbmRwb2ludF9kZXNjcmlwdG9yIHsKLSBfX3U4IGJMZW5ndGg7Ci0gX191OCBiRGVzY3JpcHRvclR5cGU7Ci0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkxlbmd0aDsKKyAgX191OCBiRGVzY3JpcHRvclR5cGU7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB3TWF4VHJhbnNmZXJTaXplOworICBfX3UxNiB3TWF4VHJhbnNmZXJTaXplOwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CiAjZGVmaW5lIFVWQ19EVF9DT05UUk9MX0VORFBPSU5UX1NJWkUgNQogc3RydWN0IHV2Y19pbnB1dF9oZWFkZXJfZGVzY3JpcHRvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKLSBfX3U4IGJOdW1Gb3JtYXRzOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiTnVtRm9ybWF0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgd1RvdGFsTGVuZ3RoOwotIF9fdTggYkVuZHBvaW50QWRkcmVzczsKLSBfX3U4IGJtSW5mbzsKLSBfX3U4IGJUZXJtaW5hbExpbms7CisgIF9fdTE2IHdUb3RhbExlbmd0aDsKKyAgX191OCBiRW5kcG9pbnRBZGRyZXNzOworICBfX3U4IGJtSW5mbzsKKyAgX191OCBiVGVybWluYWxMaW5rOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJTdGlsbENhcHR1cmVNZXRob2Q7Ci0gX191OCBiVHJpZ2dlclN1cHBvcnQ7Ci0gX191OCBiVHJpZ2dlclVzYWdlOwotIF9fdTggYkNvbnRyb2xTaXplOworICBfX3U4IGJTdGlsbENhcHR1cmVNZXRob2Q7CisgIF9fdTggYlRyaWdnZXJTdXBwb3J0OworICBfX3U4IGJUcmlnZ2VyVXNhZ2U7CisgIF9fdTggYkNvbnRyb2xTaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJtYUNvbnRyb2xzW107CisgIF9fdTggYm1hQ29udHJvbHNbXTsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwotI2RlZmluZSBVVkNfRFRfSU5QVVRfSEVBREVSX1NJWkUobiwgcCkgKDEzKyhuKnApKQotI2RlZmluZSBVVkNfSU5QVVRfSEVBREVSX0RFU0NSSVBUT1IobiwgcCkgICB1dmNfaW5wdXRfaGVhZGVyX2Rlc2NyaXB0b3JfIyNuXyMjcAorI2RlZmluZSBVVkNfRFRfSU5QVVRfSEVBREVSX1NJWkUobixwKSAoMTMgKyAobiAqIHApKQorI2RlZmluZSBVVkNfSU5QVVRfSEVBREVSX0RFU0NSSVBUT1IobixwKSB1dmNfaW5wdXRfaGVhZGVyX2Rlc2NyaXB0b3JfICMjbl8gIyNwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBERUNMQVJFX1VWQ19JTlBVVF9IRUFERVJfREVTQ1JJUFRPUihuLCBwKSAgc3RydWN0IFVWQ19JTlBVVF9IRUFERVJfREVTQ1JJUFRPUihuLCBwKSB7ICAgX191OCBiTGVuZ3RoOyAgIF9fdTggYkRlc2NyaXB0b3JUeXBlOyAgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOyAgIF9fdTggYk51bUZvcm1hdHM7ICAgX191MTYgd1RvdGFsTGVuZ3RoOyAgIF9fdTggYkVuZHBvaW50QWRkcmVzczsgICBfX3U4IGJtSW5mbzsgICBfX3U4IGJUZXJtaW5hbExpbms7ICAgX191OCBiU3RpbGxDYXB0dXJlTWV0aG9kOyAgIF9fdTggYlRyaWdnZXJTdXBwb3J0OyAgIF9fdTggYlRyaWdnZXJVc2FnZTsgICBfX3U4IGJDb250cm9sU2l6ZTsgICBfX3U4IGJtYUNvbnRyb2xzW3BdW25dOyAgfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkKKyNkZWZpbmUgREVDTEFSRV9VVkNfSU5QVVRfSEVBREVSX0RFU0NSSVBUT1IobixwKSBzdHJ1Y3QgVVZDX0lOUFVUX0hFQURFUl9ERVNDUklQVE9SKG4sIHApIHsgX191OCBiTGVuZ3RoOyBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7IF9fdTggYk51bUZvcm1hdHM7IF9fdTE2IHdUb3RhbExlbmd0aDsgX191OCBiRW5kcG9pbnRBZGRyZXNzOyBfX3U4IGJtSW5mbzsgX191OCBiVGVybWluYWxMaW5rOyBfX3U4IGJTdGlsbENhcHR1cmVNZXRob2Q7IF9fdTggYlRyaWdnZXJTdXBwb3J0OyBfX3U4IGJUcmlnZ2VyVXNhZ2U7IF9fdTggYkNvbnRyb2xTaXplOyBfX3U4IGJtYUNvbnRyb2xzW3BdW25dOyBcCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpCiBzdHJ1Y3QgdXZjX291dHB1dF9oZWFkZXJfZGVzY3JpcHRvciB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKLSBfX3U4IGJOdW1Gb3JtYXRzOwotIF9fdTE2IHdUb3RhbExlbmd0aDsKLSBfX3U4IGJFbmRwb2ludEFkZHJlc3M7CisgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOworICBfX3U4IGJOdW1Gb3JtYXRzOworICBfX3UxNiB3VG90YWxMZW5ndGg7CisgIF9fdTggYkVuZHBvaW50QWRkcmVzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiVGVybWluYWxMaW5rOwotIF9fdTggYkNvbnRyb2xTaXplOwotIF9fdTggYm1hQ29udHJvbHNbXTsKKyAgX191OCBiVGVybWluYWxMaW5rOworICBfX3U4IGJDb250cm9sU2l6ZTsKKyAgX191OCBibWFDb250cm9sc1tdOwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBVVkNfRFRfT1VUUFVUX0hFQURFUl9TSVpFKG4sIHApICg5KyhuKnApKQotI2RlZmluZSBVVkNfT1VUUFVUX0hFQURFUl9ERVNDUklQVE9SKG4sIHApICAgdXZjX291dHB1dF9oZWFkZXJfZGVzY3JpcHRvcl8jI25fIyNwCi0jZGVmaW5lIERFQ0xBUkVfVVZDX09VVFBVVF9IRUFERVJfREVTQ1JJUFRPUihuLCBwKSAgc3RydWN0IFVWQ19PVVRQVVRfSEVBREVSX0RFU0NSSVBUT1IobiwgcCkgeyAgIF9fdTggYkxlbmd0aDsgICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsgICBfX3U4IGJOdW1Gb3JtYXRzOyAgIF9fdTE2IHdUb3RhbExlbmd0aDsgICBfX3U4IGJFbmRwb2ludEFkZHJlc3M7ICAgX191OCBiVGVybWluYWxMaW5rOyAgIF9fdTggYkNvbnRyb2xTaXplOyAgIF9fdTggYm1hQ29udHJvbHNbcF1bbl07ICB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKQorI2RlZmluZSBVVkNfRFRfT1VUUFVUX0hFQURFUl9TSVpFKG4scCkgKDkgKyAobiAqIHApKQorI2RlZmluZSBVVkNfT1VUUFVUX0hFQURFUl9ERVNDUklQVE9SKG4scCkgdXZjX291dHB1dF9oZWFkZXJfZGVzY3JpcHRvcl8gIyNuXyAjI3AKKyNkZWZpbmUgREVDTEFSRV9VVkNfT1VUUFVUX0hFQURFUl9ERVNDUklQVE9SKG4scCkgc3RydWN0IFVWQ19PVVRQVVRfSEVBREVSX0RFU0NSSVBUT1IobiwgcCkgeyBfX3U4IGJMZW5ndGg7IF9fdTggYkRlc2NyaXB0b3JUeXBlOyBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsgX191OCBiTnVtRm9ybWF0czsgX191MTYgd1RvdGFsTGVuZ3RoOyBfX3U4IGJFbmRwb2ludEFkZHJlc3M7IF9fdTggYlRlcm1pbmFsTGluazsgX191OCBiQ29udHJvbFNpemU7IF9fdTggYm1hQ29udHJvbHNbcF1bbl07IFwKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSkKIHN0cnVjdCB1dmNfY29sb3JfbWF0Y2hpbmdfZGVzY3JpcHRvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKLSBfX3U4IGJDb2xvclByaW1hcmllczsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkNvbG9yUHJpbWFyaWVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJUcmFuc2ZlckNoYXJhY3RlcmlzdGljczsKLSBfX3U4IGJNYXRyaXhDb2VmZmljaWVudHM7CisgIF9fdTggYlRyYW5zZmVyQ2hhcmFjdGVyaXN0aWNzOworICBfX3U4IGJNYXRyaXhDb2VmZmljaWVudHM7CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKICNkZWZpbmUgVVZDX0RUX0NPTE9SX01BVENISU5HX1NJWkUgNgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1dmNfc3RyZWFtaW5nX2NvbnRyb2wgewotIF9fdTE2IGJtSGludDsKLSBfX3U4IGJGb3JtYXRJbmRleDsKLSBfX3U4IGJGcmFtZUluZGV4OworICBfX3UxNiBibUhpbnQ7CisgIF9fdTggYkZvcm1hdEluZGV4OworICBfX3U4IGJGcmFtZUluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkd0ZyYW1lSW50ZXJ2YWw7Ci0gX191MTYgd0tleUZyYW1lUmF0ZTsKLSBfX3UxNiB3UEZyYW1lUmF0ZTsKLSBfX3UxNiB3Q29tcFF1YWxpdHk7CisgIF9fdTMyIGR3RnJhbWVJbnRlcnZhbDsKKyAgX191MTYgd0tleUZyYW1lUmF0ZTsKKyAgX191MTYgd1BGcmFtZVJhdGU7CisgIF9fdTE2IHdDb21wUXVhbGl0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgd0NvbXBXaW5kb3dTaXplOwotIF9fdTE2IHdEZWxheTsKLSBfX3UzMiBkd01heFZpZGVvRnJhbWVTaXplOwotIF9fdTMyIGR3TWF4UGF5bG9hZFRyYW5zZmVyU2l6ZTsKKyAgX191MTYgd0NvbXBXaW5kb3dTaXplOworICBfX3UxNiB3RGVsYXk7CisgIF9fdTMyIGR3TWF4VmlkZW9GcmFtZVNpemU7CisgIF9fdTMyIGR3TWF4UGF5bG9hZFRyYW5zZmVyU2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZHdDbG9ja0ZyZXF1ZW5jeTsKLSBfX3U4IGJtRnJhbWluZ0luZm87Ci0gX191OCBiUHJlZmVyZWRWZXJzaW9uOwotIF9fdTggYk1pblZlcnNpb247CisgIF9fdTMyIGR3Q2xvY2tGcmVxdWVuY3k7CisgIF9fdTggYm1GcmFtaW5nSW5mbzsKKyAgX191OCBiUHJlZmVyZWRWZXJzaW9uOworICBfX3U4IGJNaW5WZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJNYXhWZXJzaW9uOworICBfX3U4IGJNYXhWZXJzaW9uOwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CiBzdHJ1Y3QgdXZjX2Zvcm1hdF91bmNvbXByZXNzZWQgewotIF9fdTggYkxlbmd0aDsKKyAgX191OCBiTGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKLSBfX3U4IGJGb3JtYXRJbmRleDsKLSBfX3U4IGJOdW1GcmFtZURlc2NyaXB0b3JzOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkZvcm1hdEluZGV4OworICBfX3U4IGJOdW1GcmFtZURlc2NyaXB0b3JzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGd1aWRGb3JtYXRbMTZdOwotIF9fdTggYkJpdHNQZXJQaXhlbDsKLSBfX3U4IGJEZWZhdWx0RnJhbWVJbmRleDsKLSBfX3U4IGJBc3BlY3RSYXRpb1g7CisgIF9fdTggZ3VpZEZvcm1hdFsxNl07CisgIF9fdTggYkJpdHNQZXJQaXhlbDsKKyAgX191OCBiRGVmYXVsdEZyYW1lSW5kZXg7CisgIF9fdTggYkFzcGVjdFJhdGlvWDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiQXNwZWN0UmF0aW9ZOwotIF9fdTggYm1JbnRlcmZhY2VGbGFnczsKLSBfX3U4IGJDb3B5UHJvdGVjdDsKKyAgX191OCBiQXNwZWN0UmF0aW9ZOworICBfX3U4IGJtSW50ZXJmYWNlRmxhZ3M7CisgIF9fdTggYkNvcHlQcm90ZWN0OwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVVkNfRFRfRk9STUFUX1VOQ09NUFJFU1NFRF9TSVpFIDI3CiBzdHJ1Y3QgdXZjX2ZyYW1lX3VuY29tcHJlc3NlZCB7Ci0gX191OCBiTGVuZ3RoOwotIF9fdTggYkRlc2NyaXB0b3JUeXBlOworICBfX3U4IGJMZW5ndGg7CisgIF9fdTggYkRlc2NyaXB0b3JUeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKLSBfX3U4IGJGcmFtZUluZGV4OwotIF9fdTggYm1DYXBhYmlsaXRpZXM7Ci0gX191MTYgd1dpZHRoOworICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKKyAgX191OCBiRnJhbWVJbmRleDsKKyAgX191OCBibUNhcGFiaWxpdGllczsKKyAgX191MTYgd1dpZHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB3SGVpZ2h0OwotIF9fdTMyIGR3TWluQml0UmF0ZTsKLSBfX3UzMiBkd01heEJpdFJhdGU7Ci0gX191MzIgZHdNYXhWaWRlb0ZyYW1lQnVmZmVyU2l6ZTsKKyAgX191MTYgd0hlaWdodDsKKyAgX191MzIgZHdNaW5CaXRSYXRlOworICBfX3UzMiBkd01heEJpdFJhdGU7CisgIF9fdTMyIGR3TWF4VmlkZW9GcmFtZUJ1ZmZlclNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGR3RGVmYXVsdEZyYW1lSW50ZXJ2YWw7Ci0gX191OCBiRnJhbWVJbnRlcnZhbFR5cGU7Ci0gX191MzIgZHdGcmFtZUludGVydmFsW107CisgIF9fdTMyIGR3RGVmYXVsdEZyYW1lSW50ZXJ2YWw7CisgIF9fdTggYkZyYW1lSW50ZXJ2YWxUeXBlOworICBfX3UzMiBkd0ZyYW1lSW50ZXJ2YWxbXTsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVVZDX0RUX0ZSQU1FX1VOQ09NUFJFU1NFRF9TSVpFKG4pICgyNis0KihuKSkKLSNkZWZpbmUgVVZDX0ZSQU1FX1VOQ09NUFJFU1NFRChuKSAgIHV2Y19mcmFtZV91bmNvbXByZXNzZWRfIyNuCi0jZGVmaW5lIERFQ0xBUkVfVVZDX0ZSQU1FX1VOQ09NUFJFU1NFRChuKSAgc3RydWN0IFVWQ19GUkFNRV9VTkNPTVBSRVNTRUQobikgeyAgIF9fdTggYkxlbmd0aDsgICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsgICBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsgICBfX3U4IGJGcmFtZUluZGV4OyAgIF9fdTggYm1DYXBhYmlsaXRpZXM7ICAgX191MTYgd1dpZHRoOyAgIF9fdTE2IHdIZWlnaHQ7ICAgX191MzIgZHdNaW5CaXRSYXRlOyAgIF9fdTMyIGR3TWF4Qml0UmF0ZTsgICBfX3UzMiBkd01heFZpZGVvRnJhbWVCdWZmZXJTaXplOyAgIF9fdTMyIGR3RGVmYXVsdEZyYW1lSW50ZXJ2YWw7ICAgX191OCBiRnJhbWVJbnRlcnZhbFR5cGU7ICAgX191MzIgZHdGcmFtZUludGVydmFsW25dOyAgfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSkKKyNkZWZpbmUgVVZDX0RUX0ZSQU1FX1VOQ09NUFJFU1NFRF9TSVpFKG4pICgyNiArIDQgKiAobikpCisjZGVmaW5lIFVWQ19GUkFNRV9VTkNPTVBSRVNTRUQobikgdXZjX2ZyYW1lX3VuY29tcHJlc3NlZF8gIyNuCisjZGVmaW5lIERFQ0xBUkVfVVZDX0ZSQU1FX1VOQ09NUFJFU1NFRChuKSBzdHJ1Y3QgVVZDX0ZSQU1FX1VOQ09NUFJFU1NFRChuKSB7IF9fdTggYkxlbmd0aDsgX191OCBiRGVzY3JpcHRvclR5cGU7IF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOyBfX3U4IGJGcmFtZUluZGV4OyBfX3U4IGJtQ2FwYWJpbGl0aWVzOyBfX3UxNiB3V2lkdGg7IF9fdTE2IHdIZWlnaHQ7IF9fdTMyIGR3TWluQml0UmF0ZTsgX191MzIgZHdNYXhCaXRSYXRlOyBfX3UzMiBkd01heFZpZGVvRnJhbWVCdWZmZXJTaXplOyBfX3UzMiBkd0RlZmF1bHRGcmFtZUludGVydmFsOyBfX3U4IGJGcmFtZUludGVydmFsVHlwZTsgX191MzIgZHdGcmFtZUludGVydmFsW25dOyBcCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpCiBzdHJ1Y3QgdXZjX2Zvcm1hdF9tanBlZyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKLSBfX3U4IGJEZXNjcmlwdG9yU3ViVHlwZTsKLSBfX3U4IGJGb3JtYXRJbmRleDsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkZvcm1hdEluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJOdW1GcmFtZURlc2NyaXB0b3JzOwotIF9fdTggYm1GbGFnczsKLSBfX3U4IGJEZWZhdWx0RnJhbWVJbmRleDsKLSBfX3U4IGJBc3BlY3RSYXRpb1g7CisgIF9fdTggYk51bUZyYW1lRGVzY3JpcHRvcnM7CisgIF9fdTggYm1GbGFnczsKKyAgX191OCBiRGVmYXVsdEZyYW1lSW5kZXg7CisgIF9fdTggYkFzcGVjdFJhdGlvWDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiQXNwZWN0UmF0aW9ZOwotIF9fdTggYm1JbnRlcmZhY2VGbGFnczsKLSBfX3U4IGJDb3B5UHJvdGVjdDsKKyAgX191OCBiQXNwZWN0UmF0aW9ZOworICBfX3U4IGJtSW50ZXJmYWNlRmxhZ3M7CisgIF9fdTggYkNvcHlQcm90ZWN0OwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVVkNfRFRfRk9STUFUX01KUEVHX1NJWkUgMTEKIHN0cnVjdCB1dmNfZnJhbWVfbWpwZWcgewotIF9fdTggYkxlbmd0aDsKLSBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKKyAgX191OCBiTGVuZ3RoOworICBfX3U4IGJEZXNjcmlwdG9yVHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBiRGVzY3JpcHRvclN1YlR5cGU7Ci0gX191OCBiRnJhbWVJbmRleDsKLSBfX3U4IGJtQ2FwYWJpbGl0aWVzOwotIF9fdTE2IHdXaWR0aDsKKyAgX191OCBiRGVzY3JpcHRvclN1YlR5cGU7CisgIF9fdTggYkZyYW1lSW5kZXg7CisgIF9fdTggYm1DYXBhYmlsaXRpZXM7CisgIF9fdTE2IHdXaWR0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgd0hlaWdodDsKLSBfX3UzMiBkd01pbkJpdFJhdGU7Ci0gX191MzIgZHdNYXhCaXRSYXRlOwotIF9fdTMyIGR3TWF4VmlkZW9GcmFtZUJ1ZmZlclNpemU7CisgIF9fdTE2IHdIZWlnaHQ7CisgIF9fdTMyIGR3TWluQml0UmF0ZTsKKyAgX191MzIgZHdNYXhCaXRSYXRlOworICBfX3UzMiBkd01heFZpZGVvRnJhbWVCdWZmZXJTaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBkd0RlZmF1bHRGcmFtZUludGVydmFsOwotIF9fdTggYkZyYW1lSW50ZXJ2YWxUeXBlOwotIF9fdTMyIGR3RnJhbWVJbnRlcnZhbFtdOworICBfX3UzMiBkd0RlZmF1bHRGcmFtZUludGVydmFsOworICBfX3U4IGJGcmFtZUludGVydmFsVHlwZTsKKyAgX191MzIgZHdGcmFtZUludGVydmFsW107CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFVWQ19EVF9GUkFNRV9NSlBFR19TSVpFKG4pICgyNis0KihuKSkKLSNkZWZpbmUgVVZDX0ZSQU1FX01KUEVHKG4pICAgdXZjX2ZyYW1lX21qcGVnXyMjbgotI2RlZmluZSBERUNMQVJFX1VWQ19GUkFNRV9NSlBFRyhuKSAgc3RydWN0IFVWQ19GUkFNRV9NSlBFRyhuKSB7ICAgX191OCBiTGVuZ3RoOyAgIF9fdTggYkRlc2NyaXB0b3JUeXBlOyAgIF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOyAgIF9fdTggYkZyYW1lSW5kZXg7ICAgX191OCBibUNhcGFiaWxpdGllczsgICBfX3UxNiB3V2lkdGg7ICAgX191MTYgd0hlaWdodDsgICBfX3UzMiBkd01pbkJpdFJhdGU7ICAgX191MzIgZHdNYXhCaXRSYXRlOyAgIF9fdTMyIGR3TWF4VmlkZW9GcmFtZUJ1ZmZlclNpemU7ICAgX191MzIgZHdEZWZhdWx0RnJhbWVJbnRlcnZhbDsgICBfX3U4IGJGcmFtZUludGVydmFsVHlwZTsgICBfX3UzMiBkd0ZyYW1lSW50ZXJ2YWxbbl07ICB9IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKQorI2RlZmluZSBVVkNfRFRfRlJBTUVfTUpQRUdfU0laRShuKSAoMjYgKyA0ICogKG4pKQorI2RlZmluZSBVVkNfRlJBTUVfTUpQRUcobikgdXZjX2ZyYW1lX21qcGVnXyAjI24KKyNkZWZpbmUgREVDTEFSRV9VVkNfRlJBTUVfTUpQRUcobikgc3RydWN0IFVWQ19GUkFNRV9NSlBFRyhuKSB7IF9fdTggYkxlbmd0aDsgX191OCBiRGVzY3JpcHRvclR5cGU7IF9fdTggYkRlc2NyaXB0b3JTdWJUeXBlOyBfX3U4IGJGcmFtZUluZGV4OyBfX3U4IGJtQ2FwYWJpbGl0aWVzOyBfX3UxNiB3V2lkdGg7IF9fdTE2IHdIZWlnaHQ7IF9fdTMyIGR3TWluQml0UmF0ZTsgX191MzIgZHdNYXhCaXRSYXRlOyBfX3UzMiBkd01heFZpZGVvRnJhbWVCdWZmZXJTaXplOyBfX3UzMiBkd0RlZmF1bHRGcmFtZUludGVydmFsOyBfX3U4IGJGcmFtZUludGVydmFsVHlwZTsgX191MzIgZHdGcmFtZUludGVydmFsW25dOyBcCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYmRldmljZV9mcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2JkZXZpY2VfZnMuaAppbmRleCAwYzE3ODFkLi4wYWEyMDYyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYmRldmljZV9mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXNiZGV2aWNlX2ZzLmgKQEAgLTIyLDQzICsyMiw0MyBAQAogI2luY2x1ZGUgPGxpbnV4L21hZ2ljLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHVzYmRldmZzX2N0cmx0cmFuc2ZlciB7Ci0gX191OCBiUmVxdWVzdFR5cGU7Ci0gX191OCBiUmVxdWVzdDsKLSBfX3UxNiB3VmFsdWU7CisgIF9fdTggYlJlcXVlc3RUeXBlOworICBfX3U4IGJSZXF1ZXN0OworICBfX3UxNiB3VmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHdJbmRleDsKLSBfX3UxNiB3TGVuZ3RoOwotIF9fdTMyIHRpbWVvdXQ7Ci0gdm9pZCBfX3VzZXIgKmRhdGE7CisgIF9fdTE2IHdJbmRleDsKKyAgX191MTYgd0xlbmd0aDsKKyAgX191MzIgdGltZW91dDsKKyAgdm9pZCBfX3VzZXIgKiBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdXNiZGV2ZnNfYnVsa3RyYW5zZmVyIHsKLSB1bnNpZ25lZCBpbnQgZXA7Ci0gdW5zaWduZWQgaW50IGxlbjsKKyAgdW5zaWduZWQgaW50IGVwOworICB1bnNpZ25lZCBpbnQgbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdGltZW91dDsKLSB2b2lkIF9fdXNlciAqZGF0YTsKKyAgdW5zaWduZWQgaW50IHRpbWVvdXQ7CisgIHZvaWQgX191c2VyICogZGF0YTsKIH07CiBzdHJ1Y3QgdXNiZGV2ZnNfc2V0aW50ZXJmYWNlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGludGVyZmFjZTsKLSB1bnNpZ25lZCBpbnQgYWx0c2V0dGluZzsKKyAgdW5zaWduZWQgaW50IGludGVyZmFjZTsKKyAgdW5zaWduZWQgaW50IGFsdHNldHRpbmc7CiB9Owogc3RydWN0IHVzYmRldmZzX2Rpc2Nvbm5lY3RzaWduYWwgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc2lnbnI7Ci0gdm9pZCBfX3VzZXIgKmNvbnRleHQ7CisgIHVuc2lnbmVkIGludCBzaWducjsKKyAgdm9pZCBfX3VzZXIgKiBjb250ZXh0OwogfTsKICNkZWZpbmUgVVNCREVWRlNfTUFYRFJJVkVSTkFNRSAyNTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXNiZGV2ZnNfZ2V0ZHJpdmVyIHsKLSB1bnNpZ25lZCBpbnQgaW50ZXJmYWNlOwotIGNoYXIgZHJpdmVyW1VTQkRFVkZTX01BWERSSVZFUk5BTUUgKyAxXTsKKyAgdW5zaWduZWQgaW50IGludGVyZmFjZTsKKyAgY2hhciBkcml2ZXJbVVNCREVWRlNfTUFYRFJJVkVSTkFNRSArIDFdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXNiZGV2ZnNfY29ubmVjdGluZm8gewotIHVuc2lnbmVkIGludCBkZXZudW07Ci0gdW5zaWduZWQgY2hhciBzbG93OworICB1bnNpZ25lZCBpbnQgZGV2bnVtOworICB1bnNpZ25lZCBjaGFyIHNsb3c7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCREVWRlNfVVJCX1NIT1JUX05PVF9PSyAweDAxCkBAIC03NCw1NCArNzQsNjQgQEAKICNkZWZpbmUgVVNCREVWRlNfVVJCX1RZUEVfQ09OVFJPTCAyCiAjZGVmaW5lIFVTQkRFVkZTX1VSQl9UWVBFX0JVTEsgMwogc3RydWN0IHVzYmRldmZzX2lzb19wYWNrZXRfZGVzYyB7Ci0gdW5zaWduZWQgaW50IGxlbmd0aDsKKyAgdW5zaWduZWQgaW50IGxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGFjdHVhbF9sZW5ndGg7Ci0gdW5zaWduZWQgaW50IHN0YXR1czsKKyAgdW5zaWduZWQgaW50IGFjdHVhbF9sZW5ndGg7CisgIHVuc2lnbmVkIGludCBzdGF0dXM7CiB9Owogc3RydWN0IHVzYmRldmZzX3VyYiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgdHlwZTsKLSB1bnNpZ25lZCBjaGFyIGVuZHBvaW50OwotIGludCBzdGF0dXM7Ci0gdW5zaWduZWQgaW50IGZsYWdzOworICB1bnNpZ25lZCBjaGFyIHR5cGU7CisgIHVuc2lnbmVkIGNoYXIgZW5kcG9pbnQ7CisgIGludCBzdGF0dXM7CisgIHVuc2lnbmVkIGludCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCBfX3VzZXIgKmJ1ZmZlcjsKLSBpbnQgYnVmZmVyX2xlbmd0aDsKLSBpbnQgYWN0dWFsX2xlbmd0aDsKLSBpbnQgc3RhcnRfZnJhbWU7CisgIHZvaWQgX191c2VyICogYnVmZmVyOworICBpbnQgYnVmZmVyX2xlbmd0aDsKKyAgaW50IGFjdHVhbF9sZW5ndGg7CisgIGludCBzdGFydF9mcmFtZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG51bWJlcl9vZl9wYWNrZXRzOwotIGludCBlcnJvcl9jb3VudDsKLSB1bnNpZ25lZCBpbnQgc2lnbnI7Ci0gdm9pZCBfX3VzZXIgKnVzZXJjb250ZXh0OworICB1bmlvbiB7CisgICAgaW50IG51bWJlcl9vZl9wYWNrZXRzOworICAgIHVuc2lnbmVkIGludCBzdHJlYW1faWQ7CisgIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB1c2JkZXZmc19pc29fcGFja2V0X2Rlc2MgaXNvX2ZyYW1lX2Rlc2NbMF07CisgIGludCBlcnJvcl9jb3VudDsKKyAgdW5zaWduZWQgaW50IHNpZ25yOworICB2b2lkIF9fdXNlciAqIHVzZXJjb250ZXh0OworICBzdHJ1Y3QgdXNiZGV2ZnNfaXNvX3BhY2tldF9kZXNjIGlzb19mcmFtZV9kZXNjWzBdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdXNiZGV2ZnNfaW9jdGwgewotIGludCBpZm5vOworICBpbnQgaWZubzsKKyAgaW50IGlvY3RsX2NvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBpb2N0bF9jb2RlOwotIHZvaWQgX191c2VyICpkYXRhOworICB2b2lkIF9fdXNlciAqIGRhdGE7CiB9Owogc3RydWN0IHVzYmRldmZzX2h1Yl9wb3J0aW5mbyB7CisgIGNoYXIgbnBvcnRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG5wb3J0czsKLSBjaGFyIHBvcnQgWzEyN107CisgIGNoYXIgcG9ydFsxMjddOwogfTsKICNkZWZpbmUgVVNCREVWRlNfQ0FQX1pFUk9fUEFDS0VUIDB4MDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVTQkRFVkZTX0NBUF9CVUxLX0NPTlRJTlVBVElPTiAweDAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVU0JERVZGU19DQVBfTk9fUEFDS0VUX1NJWkVfTElNIDB4MDQKICNkZWZpbmUgVVNCREVWRlNfQ0FQX0JVTEtfU0NBVFRFUl9HQVRIRVIgMHgwOAogI2RlZmluZSBVU0JERVZGU19ESVNDT05ORUNUX0NMQUlNX0lGX0RSSVZFUiAweDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVU0JERVZGU19ESVNDT05ORUNUX0NMQUlNX0VYQ0VQVF9EUklWRVIgMHgwMgotc3RydWN0IHVzYmRldmZzX2Rpc2Nvbm5lY3RfY2xhaW0gewotIHVuc2lnbmVkIGludCBpbnRlcmZhY2U7Ci0gdW5zaWduZWQgaW50IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGRyaXZlcltVU0JERVZGU19NQVhEUklWRVJOQU1FICsgMV07CitzdHJ1Y3QgdXNiZGV2ZnNfZGlzY29ubmVjdF9jbGFpbSB7CisgIHVuc2lnbmVkIGludCBpbnRlcmZhY2U7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgY2hhciBkcml2ZXJbVVNCREVWRlNfTUFYRFJJVkVSTkFNRSArIDFdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitzdHJ1Y3QgdXNiZGV2ZnNfc3RyZWFtcyB7CisgIHVuc2lnbmVkIGludCBudW1fc3RyZWFtczsKKyAgdW5zaWduZWQgaW50IG51bV9lcHM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBjaGFyIGVwc1swXTsKIH07CiAjZGVmaW5lIFVTQkRFVkZTX0NPTlRST0wgX0lPV1IoJ1UnLCAwLCBzdHJ1Y3QgdXNiZGV2ZnNfY3RybHRyYW5zZmVyKQogI2RlZmluZSBVU0JERVZGU19DT05UUk9MMzIgX0lPV1IoJ1UnLCAwLCBzdHJ1Y3QgdXNiZGV2ZnNfY3RybHRyYW5zZmVyMzIpCkBAIC0xNjIsNCArMTcyLDcgQEAKICNkZWZpbmUgVVNCREVWRlNfR0VUX0NBUEFCSUxJVElFUyBfSU9SKCdVJywgMjYsIF9fdTMyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVVNCREVWRlNfRElTQ09OTkVDVF9DTEFJTSBfSU9SKCdVJywgMjcsIHN0cnVjdCB1c2JkZXZmc19kaXNjb25uZWN0X2NsYWltKQorI2RlZmluZSBVU0JERVZGU19BTExPQ19TVFJFQU1TIF9JT1IoJ1UnLCAyOCwgc3RydWN0IHVzYmRldmZzX3N0cmVhbXMpCisjZGVmaW5lIFVTQkRFVkZTX0ZSRUVfU1RSRUFNUyBfSU9SKCdVJywgMjksIHN0cnVjdCB1c2JkZXZmc19zdHJlYW1zKQogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2JpcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91c2JpcC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVkZGE4YzgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3VzYmlwLmgKQEAgLTAsMCArMSwzMyBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKioqCisgKioqICAgVGhpcyBoZWFkZXIgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gYSBMaW51eCBrZXJuZWwgaGVhZGVyCisgKioqICAgb2YgdGhlIHNhbWUgbmFtZSwgdG8gbWFrZSBpbmZvcm1hdGlvbiBuZWNlc3NhcnkgZm9yIHVzZXJzcGFjZSB0bworICoqKiAgIGNhbGwgaW50byB0aGUga2VybmVsIGF2YWlsYWJsZSB0byBsaWJjLiAgSXQgY29udGFpbnMgb25seSBjb25zdGFudHMsCisgKioqICAgc3RydWN0dXJlcywgYW5kIG1hY3JvcyBnZW5lcmF0ZWQgZnJvbSB0aGUgb3JpZ2luYWwgaGVhZGVyLCBhbmQgdGh1cywKKyAqKiogICBjb250YWlucyBubyBjb3B5cmlnaHRhYmxlIGluZm9ybWF0aW9uLgorICoqKgorICoqKiAgIFRvIGVkaXQgdGhlIGNvbnRlbnQgb2YgdGhpcyBoZWFkZXIsIG1vZGlmeSB0aGUgY29ycmVzcG9uZGluZworICoqKiAgIHNvdXJjZSBmaWxlIChlLmcuIHVuZGVyIGV4dGVybmFsL2tlcm5lbC1oZWFkZXJzL29yaWdpbmFsLykgdGhlbgorICoqKiAgIHJ1biBiaW9uaWMvbGliYy9rZXJuZWwvdG9vbHMvdXBkYXRlX2FsbC5weQorICoqKgorICoqKiAgIEFueSBtYW51YWwgY2hhbmdlIGhlcmUgd2lsbCBiZSBsb3N0IHRoZSBuZXh0IHRpbWUgdGhpcyBzY3JpcHQgd2lsbAorICoqKiAgIGJlIHJ1bi4gWW91J3ZlIGJlZW4gd2FybmVkIQorICoqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworI2lmbmRlZiBfVUFQSV9MSU5VWF9VU0JJUF9ICisjZGVmaW5lIF9VQVBJX0xJTlVYX1VTQklQX0gKK2VudW0gdXNiaXBfZGV2aWNlX3N0YXR1cyB7CisgIFNERVZfU1RfQVZBSUxBQkxFID0gMHgwMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNERVZfU1RfVVNFRCwKKyAgU0RFVl9TVF9FUlJPUiwKKyAgVkRFVl9TVF9OVUxMLAorICBWREVWX1NUX05PVEFTU0lHTkVELAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVkRFVl9TVF9VU0VELAorICBWREVWX1NUX0VSUk9SCit9OworI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91dGltZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91dGltZS5oCmluZGV4IDRjYzA2MTcuLjJlOThhM2QgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXRpbWUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3V0aW1lLmgKQEAgLTIxLDggKzIxLDggQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IHV0aW1idWYgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2tlcm5lbF90aW1lX3QgYWN0aW1lOwotIF9fa2VybmVsX3RpbWVfdCBtb2R0aW1lOworICBfX2tlcm5lbF90aW1lX3QgYWN0aW1lOworICBfX2tlcm5lbF90aW1lX3QgbW9kdGltZTsKIH07CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3V0c25hbWUuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXRzbmFtZS5oCmluZGV4IGVlNWVlOTcuLjQ0NDdkMTggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXRzbmFtZS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXRzbmFtZS5oCkBAIC0yMSwzMSArMjEsMzEgQEAKICNkZWZpbmUgX19PTERfVVRTX0xFTiA4CiBzdHJ1Y3Qgb2xkb2xkX3V0c25hbWUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIHN5c25hbWVbOV07Ci0gY2hhciBub2RlbmFtZVs5XTsKLSBjaGFyIHJlbGVhc2VbOV07Ci0gY2hhciB2ZXJzaW9uWzldOworICBjaGFyIHN5c25hbWVbOV07CisgIGNoYXIgbm9kZW5hbWVbOV07CisgIGNoYXIgcmVsZWFzZVs5XTsKKyAgY2hhciB2ZXJzaW9uWzldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIG1hY2hpbmVbOV07CisgIGNoYXIgbWFjaGluZVs5XTsKIH07CiAjZGVmaW5lIF9fTkVXX1VUU19MRU4gNjQKIHN0cnVjdCBvbGRfdXRzbmFtZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgc3lzbmFtZVs2NV07Ci0gY2hhciBub2RlbmFtZVs2NV07Ci0gY2hhciByZWxlYXNlWzY1XTsKLSBjaGFyIHZlcnNpb25bNjVdOworICBjaGFyIHN5c25hbWVbNjVdOworICBjaGFyIG5vZGVuYW1lWzY1XTsKKyAgY2hhciByZWxlYXNlWzY1XTsKKyAgY2hhciB2ZXJzaW9uWzY1XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBtYWNoaW5lWzY1XTsKKyAgY2hhciBtYWNoaW5lWzY1XTsKIH07CiBzdHJ1Y3QgbmV3X3V0c25hbWUgewotIGNoYXIgc3lzbmFtZVtfX05FV19VVFNfTEVOICsgMV07CisgIGNoYXIgc3lzbmFtZVtfX05FV19VVFNfTEVOICsgMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbm9kZW5hbWVbX19ORVdfVVRTX0xFTiArIDFdOwotIGNoYXIgcmVsZWFzZVtfX05FV19VVFNfTEVOICsgMV07Ci0gY2hhciB2ZXJzaW9uW19fTkVXX1VUU19MRU4gKyAxXTsKLSBjaGFyIG1hY2hpbmVbX19ORVdfVVRTX0xFTiArIDFdOworICBjaGFyIG5vZGVuYW1lW19fTkVXX1VUU19MRU4gKyAxXTsKKyAgY2hhciByZWxlYXNlW19fTkVXX1VUU19MRU4gKyAxXTsKKyAgY2hhciB2ZXJzaW9uW19fTkVXX1VUU19MRU4gKyAxXTsKKyAgY2hhciBtYWNoaW5lW19fTkVXX1VUU19MRU4gKyAxXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBkb21haW5uYW1lW19fTkVXX1VUU19MRU4gKyAxXTsKKyAgY2hhciBkb21haW5uYW1lW19fTkVXX1VUU19MRU4gKyAxXTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXVpZC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91dWlkLmgKaW5kZXggNWMyOTgwOS4uY2M4NmZjMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC91dWlkLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91dWlkLmgKQEAgLTIyLDE1ICsyMiwxOSBAQAogI2luY2x1ZGUgPGxpbnV4L3N0cmluZy5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSBfX3U4IGJbMTZdOworICBfX3U4IGJbMTZdOwogfSB1dWlkX2xlOwogdHlwZWRlZiBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJbMTZdOworICBfX3U4IGJbMTZdOwogfSB1dWlkX2JlOwotI2RlZmluZSBVVUlEX0xFKGEsIGIsIGMsIGQwLCBkMSwgZDIsIGQzLCBkNCwgZDUsIGQ2LCBkNykgICgodXVpZF9sZSkgIHt7IChhKSAmIDB4ZmYsICgoYSkgPj4gOCkgJiAweGZmLCAoKGEpID4+IDE2KSAmIDB4ZmYsICgoYSkgPj4gMjQpICYgMHhmZiwgICAoYikgJiAweGZmLCAoKGIpID4+IDgpICYgMHhmZiwgICAoYykgJiAweGZmLCAoKGMpID4+IDgpICYgMHhmZiwgICAoZDApLCAoZDEpLCAoZDIpLCAoZDMpLCAoZDQpLCAoZDUpLCAoZDYpLCAoZDcpIH19KQotI2RlZmluZSBVVUlEX0JFKGEsIGIsIGMsIGQwLCBkMSwgZDIsIGQzLCBkNCwgZDUsIGQ2LCBkNykgICgodXVpZF9iZSkgIHt7ICgoYSkgPj4gMjQpICYgMHhmZiwgKChhKSA+PiAxNikgJiAweGZmLCAoKGEpID4+IDgpICYgMHhmZiwgKGEpICYgMHhmZiwgICAoKGIpID4+IDgpICYgMHhmZiwgKGIpICYgMHhmZiwgICAoKGMpID4+IDgpICYgMHhmZiwgKGMpICYgMHhmZiwgICAoZDApLCAoZDEpLCAoZDIpLCAoZDMpLCAoZDQpLCAoZDUpLCAoZDYpLCAoZDcpIH19KQorI2RlZmluZSBVVUlEX0xFKGEsYixjLGQwLGQxLGQyLGQzLGQ0LGQ1LGQ2LGQ3KSBcCisoKHV1aWRfbGUpIFwKK3sgeyAoYSkgJiAweGZmLCAoKGEpID4+IDgpICYgMHhmZiwgKChhKSA+PiAxNikgJiAweGZmLCAoKGEpID4+IDI0KSAmIDB4ZmYsIChiKSAmIDB4ZmYsICgoYikgPj4gOCkgJiAweGZmLCAoYykgJiAweGZmLCAoKGMpID4+IDgpICYgMHhmZiwgKGQwKSwgKGQxKSwgKGQyKSwgKGQzKSwgKGQ0KSwgKGQ1KSwgKGQ2KSwgKGQ3KSB9IH0pCisjZGVmaW5lIFVVSURfQkUoYSxiLGMsZDAsZDEsZDIsZDMsZDQsZDUsZDYsZDcpIFwKKygodXVpZF9iZSkgXAoreyB7ICgoYSkgPj4gMjQpICYgMHhmZiwgKChhKSA+PiAxNikgJiAweGZmLCAoKGEpID4+IDgpICYgMHhmZiwgKGEpICYgMHhmZiwgKChiKSA+PiA4KSAmIDB4ZmYsIChiKSAmIDB4ZmYsICgoYykgPj4gOCkgJiAweGZmLCAoYykgJiAweGZmLCAoZDApLCAoZDEpLCAoZDIpLCAoZDMpLCAoZDQpLCAoZDUpLCAoZDYpLCAoZDcpIH0gfSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIE5VTExfVVVJRF9MRSAgIFVVSURfTEUoMHgwMDAwMDAwMCwgMHgwMDAwLCAweDAwMDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCkKLSNkZWZpbmUgTlVMTF9VVUlEX0JFICAgVVVJRF9CRSgweDAwMDAwMDAwLCAweDAwMDAsIDB4MDAwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgICAweDAwLCAweDAwLCAweDAwLCAweDAwKQorI2RlZmluZSBOVUxMX1VVSURfTEUgVVVJRF9MRSgweDAwMDAwMDAwLCAweDAwMDAsIDB4MDAwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCkKKyNkZWZpbmUgTlVMTF9VVUlEX0JFIFVVSURfQkUoMHgwMDAwMDAwMCwgMHgwMDAwLCAweDAwMDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDApCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXZjdmlkZW8uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdXZjdmlkZW8uaAppbmRleCAzZWViZTE3Li43MjQ2ZTMyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3V2Y3ZpZGVvLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC91dmN2aWRlby5oCkBAIC0zOCwzNiArMzgsMzYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVWQ19DVFJMX0ZMQUdfUkVTVE9SRSAoMSA8PCA2KQogI2RlZmluZSBVVkNfQ1RSTF9GTEFHX0FVVE9fVVBEQVRFICgxIDw8IDcpCi0jZGVmaW5lIFVWQ19DVFJMX0ZMQUdfR0VUX1JBTkdFICAgKFVWQ19DVFJMX0ZMQUdfR0VUX0NVUiB8IFVWQ19DVFJMX0ZMQUdfR0VUX01JTiB8ICAgVVZDX0NUUkxfRkxBR19HRVRfTUFYIHwgVVZDX0NUUkxfRkxBR19HRVRfUkVTIHwgICBVVkNfQ1RSTF9GTEFHX0dFVF9ERUYpCisjZGVmaW5lIFVWQ19DVFJMX0ZMQUdfR0VUX1JBTkdFIChVVkNfQ1RSTF9GTEFHX0dFVF9DVVIgfCBVVkNfQ1RSTF9GTEFHX0dFVF9NSU4gfCBVVkNfQ1RSTF9GTEFHX0dFVF9NQVggfCBVVkNfQ1RSTF9GTEFHX0dFVF9SRVMgfCBVVkNfQ1RSTF9GTEFHX0dFVF9ERUYpCiBzdHJ1Y3QgdXZjX21lbnVfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHZhbHVlOwotIF9fdTggbmFtZVszMl07CisgIF9fdTMyIHZhbHVlOworICBfX3U4IG5hbWVbMzJdOwogfTsKIHN0cnVjdCB1dmNfeHVfY29udHJvbF9tYXBwaW5nIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWQ7Ci0gX191OCBuYW1lWzMyXTsKLSBfX3U4IGVudGl0eVsxNl07Ci0gX191OCBzZWxlY3RvcjsKKyAgX191MzIgaWQ7CisgIF9fdTggbmFtZVszMl07CisgIF9fdTggZW50aXR5WzE2XTsKKyAgX191OCBzZWxlY3RvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzaXplOwotIF9fdTggb2Zmc2V0OwotIF9fdTMyIHY0bDJfdHlwZTsKLSBfX3UzMiBkYXRhX3R5cGU7CisgIF9fdTggc2l6ZTsKKyAgX191OCBvZmZzZXQ7CisgIF9fdTMyIHY0bDJfdHlwZTsKKyAgX191MzIgZGF0YV90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdXZjX21lbnVfaW5mbyBfX3VzZXIgKm1lbnVfaW5mbzsKLSBfX3UzMiBtZW51X2NvdW50OwotIF9fdTMyIHJlc2VydmVkWzRdOworICBzdHJ1Y3QgdXZjX21lbnVfaW5mbyBfX3VzZXIgKiBtZW51X2luZm87CisgIF9fdTMyIG1lbnVfY291bnQ7CisgIF9fdTMyIHJlc2VydmVkWzRdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdXZjX3h1X2NvbnRyb2xfcXVlcnkgewotIF9fdTggdW5pdDsKLSBfX3U4IHNlbGVjdG9yOwotIF9fdTggcXVlcnk7CisgIF9fdTggdW5pdDsKKyAgX191OCBzZWxlY3RvcjsKKyAgX191OCBxdWVyeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc2l6ZTsKLSBfX3U4IF9fdXNlciAqZGF0YTsKKyAgX191MTYgc2l6ZTsKKyAgX191OCBfX3VzZXIgKiBkYXRhOwogfTsKICNkZWZpbmUgVVZDSU9DX0NUUkxfTUFQIF9JT1dSKCd1JywgMHgyMCwgc3RydWN0IHV2Y194dV9jb250cm9sX21hcHBpbmcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92NGwyLWNvbW1vbi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92NGwyLWNvbW1vbi5oCmluZGV4IDgxNGQ5NjAuLmEzNzlhN2UgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdjRsMi1jb21tb24uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItY29tbW9uLmgKQEAgLTE4LDI4ICsxOCwzOCBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9fVjRMMl9DT01NT05fXwogI2RlZmluZSBfX1Y0TDJfQ09NTU9OX18KKyNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogI2RlZmluZSBWNEwyX1NFTF9UR1RfQ1JPUCAweDAwMDAKLSNkZWZpbmUgVjRMMl9TRUxfVEdUX0NST1BfREVGQVVMVCAweDAwMDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfU0VMX1RHVF9DUk9QX0RFRkFVTFQgMHgwMDAxCiAjZGVmaW5lIFY0TDJfU0VMX1RHVF9DUk9QX0JPVU5EUyAweDAwMDIKICNkZWZpbmUgVjRMMl9TRUxfVEdUX0NPTVBPU0UgMHgwMTAwCiAjZGVmaW5lIFY0TDJfU0VMX1RHVF9DT01QT1NFX0RFRkFVTFQgMHgwMTAxCi0jZGVmaW5lIFY0TDJfU0VMX1RHVF9DT01QT1NFX0JPVU5EUyAweDAxMDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfU0VMX1RHVF9DT01QT1NFX0JPVU5EUyAweDAxMDIKICNkZWZpbmUgVjRMMl9TRUxfVEdUX0NPTVBPU0VfUEFEREVEIDB4MDEwMwogI2RlZmluZSBWNEwyX1NFTF9UR1RfQ1JPUF9BQ1RJVkUgVjRMMl9TRUxfVEdUX0NST1AKICNkZWZpbmUgVjRMMl9TRUxfVEdUX0NPTVBPU0VfQUNUSVZFIFY0TDJfU0VMX1RHVF9DT01QT1NFCi0jZGVmaW5lIFY0TDJfU1VCREVWX1NFTF9UR1RfQ1JPUF9BQ1RVQUwgVjRMMl9TRUxfVEdUX0NST1AKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfU1VCREVWX1NFTF9UR1RfQ1JPUF9BQ1RVQUwgVjRMMl9TRUxfVEdUX0NST1AKICNkZWZpbmUgVjRMMl9TVUJERVZfU0VMX1RHVF9DT01QT1NFX0FDVFVBTCBWNEwyX1NFTF9UR1RfQ09NUE9TRQogI2RlZmluZSBWNEwyX1NVQkRFVl9TRUxfVEdUX0NST1BfQk9VTkRTIFY0TDJfU0VMX1RHVF9DUk9QX0JPVU5EUwogI2RlZmluZSBWNEwyX1NVQkRFVl9TRUxfVEdUX0NPTVBPU0VfQk9VTkRTIFY0TDJfU0VMX1RHVF9DT01QT1NFX0JPVU5EUwotI2RlZmluZSBWNEwyX1NFTF9GTEFHX0dFICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1NFTF9GTEFHX0dFICgxIDw8IDApCiAjZGVmaW5lIFY0TDJfU0VMX0ZMQUdfTEUgKDEgPDwgMSkKICNkZWZpbmUgVjRMMl9TRUxfRkxBR19LRUVQX0NPTkZJRyAoMSA8PCAyKQogI2RlZmluZSBWNEwyX1NVQkRFVl9TRUxfRkxBR19TSVpFX0dFIFY0TDJfU0VMX0ZMQUdfR0UKLSNkZWZpbmUgVjRMMl9TVUJERVZfU0VMX0ZMQUdfU0laRV9MRSBWNEwyX1NFTF9GTEFHX0xFCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1NVQkRFVl9TRUxfRkxBR19TSVpFX0xFIFY0TDJfU0VMX0ZMQUdfTEUKICNkZWZpbmUgVjRMMl9TVUJERVZfU0VMX0ZMQUdfS0VFUF9DT05GSUcgVjRMMl9TRUxfRkxBR19LRUVQX0NPTkZJRworc3RydWN0IHY0bDJfZWRpZCB7CisgIF9fdTMyIHBhZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHN0YXJ0X2Jsb2NrOworICBfX3UzMiBibG9ja3M7CisgIF9fdTMyIHJlc2VydmVkWzVdOworICBfX3U4ICogZWRpZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItY29udHJvbHMuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdjRsMi1jb250cm9scy5oCmluZGV4IDIyMzZmZjcuLjAyNGFhNGQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdjRsMi1jb250cm9scy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdjRsMi1jb250cm9scy5oCkBAIC0zMSw5MDAgKzMxLDk2NCBAQAogI2RlZmluZSBWNEwyX0NUUkxfQ0xBU1NfRFYgMHgwMGEwMDAwMAogI2RlZmluZSBWNEwyX0NUUkxfQ0xBU1NfRk1fUlggMHgwMGExMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DVFJMX0NMQVNTX1JGX1RVTkVSIDB4MDBhMjAwMDAKKyNkZWZpbmUgVjRMMl9DVFJMX0NMQVNTX0RFVEVDVCAweDAwYTMwMDAwCiAjZGVmaW5lIFY0TDJfQ0lEX0JBU0UgKFY0TDJfQ1RSTF9DTEFTU19VU0VSIHwgMHg5MDApCiAjZGVmaW5lIFY0TDJfQ0lEX1VTRVJfQkFTRSBWNEwyX0NJRF9CQVNFCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9VU0VSX0NMQVNTIChWNEwyX0NUUkxfQ0xBU1NfVVNFUiB8IDEpCi0jZGVmaW5lIFY0TDJfQ0lEX0JSSUdIVE5FU1MgKFY0TDJfQ0lEX0JBU0UrMCkKKyNkZWZpbmUgVjRMMl9DSURfQlJJR0hUTkVTUyAoVjRMMl9DSURfQkFTRSArIDApCisjZGVmaW5lIFY0TDJfQ0lEX0NPTlRSQVNUIChWNEwyX0NJRF9CQVNFICsgMSkKKyNkZWZpbmUgVjRMMl9DSURfU0FUVVJBVElPTiAoVjRMMl9DSURfQkFTRSArIDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9DT05UUkFTVCAoVjRMMl9DSURfQkFTRSsxKQotI2RlZmluZSBWNEwyX0NJRF9TQVRVUkFUSU9OIChWNEwyX0NJRF9CQVNFKzIpCi0jZGVmaW5lIFY0TDJfQ0lEX0hVRSAoVjRMMl9DSURfQkFTRSszKQotI2RlZmluZSBWNEwyX0NJRF9BVURJT19WT0xVTUUgKFY0TDJfQ0lEX0JBU0UrNSkKKyNkZWZpbmUgVjRMMl9DSURfSFVFIChWNEwyX0NJRF9CQVNFICsgMykKKyNkZWZpbmUgVjRMMl9DSURfQVVESU9fVk9MVU1FIChWNEwyX0NJRF9CQVNFICsgNSkKKyNkZWZpbmUgVjRMMl9DSURfQVVESU9fQkFMQU5DRSAoVjRMMl9DSURfQkFTRSArIDYpCisjZGVmaW5lIFY0TDJfQ0lEX0FVRElPX0JBU1MgKFY0TDJfQ0lEX0JBU0UgKyA3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfQVVESU9fQkFMQU5DRSAoVjRMMl9DSURfQkFTRSs2KQotI2RlZmluZSBWNEwyX0NJRF9BVURJT19CQVNTIChWNEwyX0NJRF9CQVNFKzcpCi0jZGVmaW5lIFY0TDJfQ0lEX0FVRElPX1RSRUJMRSAoVjRMMl9DSURfQkFTRSs4KQotI2RlZmluZSBWNEwyX0NJRF9BVURJT19NVVRFIChWNEwyX0NJRF9CQVNFKzkpCisjZGVmaW5lIFY0TDJfQ0lEX0FVRElPX1RSRUJMRSAoVjRMMl9DSURfQkFTRSArIDgpCisjZGVmaW5lIFY0TDJfQ0lEX0FVRElPX01VVEUgKFY0TDJfQ0lEX0JBU0UgKyA5KQorI2RlZmluZSBWNEwyX0NJRF9BVURJT19MT1VETkVTUyAoVjRMMl9DSURfQkFTRSArIDEwKQorI2RlZmluZSBWNEwyX0NJRF9CTEFDS19MRVZFTCAoVjRMMl9DSURfQkFTRSArIDExKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfQVVESU9fTE9VRE5FU1MgKFY0TDJfQ0lEX0JBU0UrMTApCi0jZGVmaW5lIFY0TDJfQ0lEX0JMQUNLX0xFVkVMIChWNEwyX0NJRF9CQVNFKzExKQotI2RlZmluZSBWNEwyX0NJRF9BVVRPX1dISVRFX0JBTEFOQ0UgKFY0TDJfQ0lEX0JBU0UrMTIpCi0jZGVmaW5lIFY0TDJfQ0lEX0RPX1dISVRFX0JBTEFOQ0UgKFY0TDJfQ0lEX0JBU0UrMTMpCisjZGVmaW5lIFY0TDJfQ0lEX0FVVE9fV0hJVEVfQkFMQU5DRSAoVjRMMl9DSURfQkFTRSArIDEyKQorI2RlZmluZSBWNEwyX0NJRF9ET19XSElURV9CQUxBTkNFIChWNEwyX0NJRF9CQVNFICsgMTMpCisjZGVmaW5lIFY0TDJfQ0lEX1JFRF9CQUxBTkNFIChWNEwyX0NJRF9CQVNFICsgMTQpCisjZGVmaW5lIFY0TDJfQ0lEX0JMVUVfQkFMQU5DRSAoVjRMMl9DSURfQkFTRSArIDE1KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfUkVEX0JBTEFOQ0UgKFY0TDJfQ0lEX0JBU0UrMTQpCi0jZGVmaW5lIFY0TDJfQ0lEX0JMVUVfQkFMQU5DRSAoVjRMMl9DSURfQkFTRSsxNSkKLSNkZWZpbmUgVjRMMl9DSURfR0FNTUEgKFY0TDJfQ0lEX0JBU0UrMTYpCisjZGVmaW5lIFY0TDJfQ0lEX0dBTU1BIChWNEwyX0NJRF9CQVNFICsgMTYpCiAjZGVmaW5lIFY0TDJfQ0lEX1dISVRFTkVTUyAoVjRMMl9DSURfR0FNTUEpCisjZGVmaW5lIFY0TDJfQ0lEX0VYUE9TVVJFIChWNEwyX0NJRF9CQVNFICsgMTcpCisjZGVmaW5lIFY0TDJfQ0lEX0FVVE9HQUlOIChWNEwyX0NJRF9CQVNFICsgMTgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9FWFBPU1VSRSAoVjRMMl9DSURfQkFTRSsxNykKLSNkZWZpbmUgVjRMMl9DSURfQVVUT0dBSU4gKFY0TDJfQ0lEX0JBU0UrMTgpCi0jZGVmaW5lIFY0TDJfQ0lEX0dBSU4gKFY0TDJfQ0lEX0JBU0UrMTkpCi0jZGVmaW5lIFY0TDJfQ0lEX0hGTElQIChWNEwyX0NJRF9CQVNFKzIwKQorI2RlZmluZSBWNEwyX0NJRF9HQUlOIChWNEwyX0NJRF9CQVNFICsgMTkpCisjZGVmaW5lIFY0TDJfQ0lEX0hGTElQIChWNEwyX0NJRF9CQVNFICsgMjApCisjZGVmaW5lIFY0TDJfQ0lEX1ZGTElQIChWNEwyX0NJRF9CQVNFICsgMjEpCisjZGVmaW5lIFY0TDJfQ0lEX1BPV0VSX0xJTkVfRlJFUVVFTkNZIChWNEwyX0NJRF9CQVNFICsgMjQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9WRkxJUCAoVjRMMl9DSURfQkFTRSsyMSkKLSNkZWZpbmUgVjRMMl9DSURfUE9XRVJfTElORV9GUkVRVUVOQ1kgKFY0TDJfQ0lEX0JBU0UrMjQpCiBlbnVtIHY0bDJfcG93ZXJfbGluZV9mcmVxdWVuY3kgewotIFY0TDJfQ0lEX1BPV0VSX0xJTkVfRlJFUVVFTkNZX0RJU0FCTEVEID0gMCwKKyAgVjRMMl9DSURfUE9XRVJfTElORV9GUkVRVUVOQ1lfRElTQUJMRUQgPSAwLAorICBWNEwyX0NJRF9QT1dFUl9MSU5FX0ZSRVFVRU5DWV81MEhaID0gMSwKKyAgVjRMMl9DSURfUE9XRVJfTElORV9GUkVRVUVOQ1lfNjBIWiA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfQ0lEX1BPV0VSX0xJTkVfRlJFUVVFTkNZXzUwSFogPSAxLAotIFY0TDJfQ0lEX1BPV0VSX0xJTkVfRlJFUVVFTkNZXzYwSFogPSAyLAotIFY0TDJfQ0lEX1BPV0VSX0xJTkVfRlJFUVVFTkNZX0FVVE8gPSAzLAorICBWNEwyX0NJRF9QT1dFUl9MSU5FX0ZSRVFVRU5DWV9BVVRPID0gMywKIH07CisjZGVmaW5lIFY0TDJfQ0lEX0hVRV9BVVRPIChWNEwyX0NJRF9CQVNFICsgMjUpCisjZGVmaW5lIFY0TDJfQ0lEX1dISVRFX0JBTEFOQ0VfVEVNUEVSQVRVUkUgKFY0TDJfQ0lEX0JBU0UgKyAyNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX0hVRV9BVVRPIChWNEwyX0NJRF9CQVNFKzI1KQotI2RlZmluZSBWNEwyX0NJRF9XSElURV9CQUxBTkNFX1RFTVBFUkFUVVJFIChWNEwyX0NJRF9CQVNFKzI2KQotI2RlZmluZSBWNEwyX0NJRF9TSEFSUE5FU1MgKFY0TDJfQ0lEX0JBU0UrMjcpCi0jZGVmaW5lIFY0TDJfQ0lEX0JBQ0tMSUdIVF9DT01QRU5TQVRJT04gKFY0TDJfQ0lEX0JBU0UrMjgpCisjZGVmaW5lIFY0TDJfQ0lEX1NIQVJQTkVTUyAoVjRMMl9DSURfQkFTRSArIDI3KQorI2RlZmluZSBWNEwyX0NJRF9CQUNLTElHSFRfQ09NUEVOU0FUSU9OIChWNEwyX0NJRF9CQVNFICsgMjgpCisjZGVmaW5lIFY0TDJfQ0lEX0NIUk9NQV9BR0MgKFY0TDJfQ0lEX0JBU0UgKyAyOSkKKyNkZWZpbmUgVjRMMl9DSURfQ09MT1JfS0lMTEVSIChWNEwyX0NJRF9CQVNFICsgMzApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9DSFJPTUFfQUdDIChWNEwyX0NJRF9CQVNFKzI5KQotI2RlZmluZSBWNEwyX0NJRF9DT0xPUl9LSUxMRVIgKFY0TDJfQ0lEX0JBU0UrMzApCi0jZGVmaW5lIFY0TDJfQ0lEX0NPTE9SRlggKFY0TDJfQ0lEX0JBU0UrMzEpCisjZGVmaW5lIFY0TDJfQ0lEX0NPTE9SRlggKFY0TDJfQ0lEX0JBU0UgKyAzMSkKIGVudW0gdjRsMl9jb2xvcmZ4IHsKKyAgVjRMMl9DT0xPUkZYX05PTkUgPSAwLAorICBWNEwyX0NPTE9SRlhfQlcgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0NPTE9SRlhfTk9ORSA9IDAsCi0gVjRMMl9DT0xPUkZYX0JXID0gMSwKLSBWNEwyX0NPTE9SRlhfU0VQSUEgPSAyLAotIFY0TDJfQ09MT1JGWF9ORUdBVElWRSA9IDMsCisgIFY0TDJfQ09MT1JGWF9TRVBJQSA9IDIsCisgIFY0TDJfQ09MT1JGWF9ORUdBVElWRSA9IDMsCisgIFY0TDJfQ09MT1JGWF9FTUJPU1MgPSA0LAorICBWNEwyX0NPTE9SRlhfU0tFVENIID0gNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9DT0xPUkZYX0VNQk9TUyA9IDQsCi0gVjRMMl9DT0xPUkZYX1NLRVRDSCA9IDUsCi0gVjRMMl9DT0xPUkZYX1NLWV9CTFVFID0gNiwKLSBWNEwyX0NPTE9SRlhfR1JBU1NfR1JFRU4gPSA3LAorICBWNEwyX0NPTE9SRlhfU0tZX0JMVUUgPSA2LAorICBWNEwyX0NPTE9SRlhfR1JBU1NfR1JFRU4gPSA3LAorICBWNEwyX0NPTE9SRlhfU0tJTl9XSElURU4gPSA4LAorICBWNEwyX0NPTE9SRlhfVklWSUQgPSA5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0NPTE9SRlhfU0tJTl9XSElURU4gPSA4LAotIFY0TDJfQ09MT1JGWF9WSVZJRCA9IDksCi0gVjRMMl9DT0xPUkZYX0FRVUEgPSAxMCwKLSBWNEwyX0NPTE9SRlhfQVJUX0ZSRUVaRSA9IDExLAorICBWNEwyX0NPTE9SRlhfQVFVQSA9IDEwLAorICBWNEwyX0NPTE9SRlhfQVJUX0ZSRUVaRSA9IDExLAorICBWNEwyX0NPTE9SRlhfU0lMSE9VRVRURSA9IDEyLAorICBWNEwyX0NPTE9SRlhfU09MQVJJWkFUSU9OID0gMTMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfQ09MT1JGWF9TSUxIT1VFVFRFID0gMTIsCi0gVjRMMl9DT0xPUkZYX1NPTEFSSVpBVElPTiA9IDEzLAotIFY0TDJfQ09MT1JGWF9BTlRJUVVFID0gMTQsCi0gVjRMMl9DT0xPUkZYX1NFVF9DQkNSID0gMTUsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWNEwyX0NPTE9SRlhfQU5USVFVRSA9IDE0LAorICBWNEwyX0NPTE9SRlhfU0VUX0NCQ1IgPSAxNSwKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX0FVVE9CUklHSFRORVNTIChWNEwyX0NJRF9CQVNFKzMyKQotI2RlZmluZSBWNEwyX0NJRF9CQU5EX1NUT1BfRklMVEVSIChWNEwyX0NJRF9CQVNFKzMzKQotI2RlZmluZSBWNEwyX0NJRF9ST1RBVEUgKFY0TDJfQ0lEX0JBU0UrMzQpCisjZGVmaW5lIFY0TDJfQ0lEX0FVVE9CUklHSFRORVNTIChWNEwyX0NJRF9CQVNFICsgMzIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9CR19DT0xPUiAoVjRMMl9DSURfQkFTRSszNSkKLSNkZWZpbmUgVjRMMl9DSURfQ0hST01BX0dBSU4gKFY0TDJfQ0lEX0JBU0UrMzYpCi0jZGVmaW5lIFY0TDJfQ0lEX0lMTFVNSU5BVE9SU18xIChWNEwyX0NJRF9CQVNFKzM3KQotI2RlZmluZSBWNEwyX0NJRF9JTExVTUlOQVRPUlNfMiAoVjRMMl9DSURfQkFTRSszOCkKKyNkZWZpbmUgVjRMMl9DSURfQkFORF9TVE9QX0ZJTFRFUiAoVjRMMl9DSURfQkFTRSArIDMzKQorI2RlZmluZSBWNEwyX0NJRF9ST1RBVEUgKFY0TDJfQ0lEX0JBU0UgKyAzNCkKKyNkZWZpbmUgVjRMMl9DSURfQkdfQ09MT1IgKFY0TDJfQ0lEX0JBU0UgKyAzNSkKKyNkZWZpbmUgVjRMMl9DSURfQ0hST01BX0dBSU4gKFY0TDJfQ0lEX0JBU0UgKyAzNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01JTl9CVUZGRVJTX0ZPUl9DQVBUVVJFIChWNEwyX0NJRF9CQVNFKzM5KQotI2RlZmluZSBWNEwyX0NJRF9NSU5fQlVGRkVSU19GT1JfT1VUUFVUIChWNEwyX0NJRF9CQVNFKzQwKQotI2RlZmluZSBWNEwyX0NJRF9BTFBIQV9DT01QT05FTlQgKFY0TDJfQ0lEX0JBU0UrNDEpCi0jZGVmaW5lIFY0TDJfQ0lEX0NPTE9SRlhfQ0JDUiAoVjRMMl9DSURfQkFTRSs0MikKKyNkZWZpbmUgVjRMMl9DSURfSUxMVU1JTkFUT1JTXzEgKFY0TDJfQ0lEX0JBU0UgKyAzNykKKyNkZWZpbmUgVjRMMl9DSURfSUxMVU1JTkFUT1JTXzIgKFY0TDJfQ0lEX0JBU0UgKyAzOCkKKyNkZWZpbmUgVjRMMl9DSURfTUlOX0JVRkZFUlNfRk9SX0NBUFRVUkUgKFY0TDJfQ0lEX0JBU0UgKyAzOSkKKyNkZWZpbmUgVjRMMl9DSURfTUlOX0JVRkZFUlNfRk9SX09VVFBVVCAoVjRMMl9DSURfQkFTRSArIDQwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTEFTVFAxIChWNEwyX0NJRF9CQVNFKzQzKQorI2RlZmluZSBWNEwyX0NJRF9BTFBIQV9DT01QT05FTlQgKFY0TDJfQ0lEX0JBU0UgKyA0MSkKKyNkZWZpbmUgVjRMMl9DSURfQ09MT1JGWF9DQkNSIChWNEwyX0NJRF9CQVNFICsgNDIpCisjZGVmaW5lIFY0TDJfQ0lEX0xBU1RQMSAoVjRMMl9DSURfQkFTRSArIDQzKQogI2RlZmluZSBWNEwyX0NJRF9VU0VSX01FWUVfQkFTRSAoVjRMMl9DSURfVVNFUl9CQVNFICsgMHgxMDAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfVVNFUl9CVFRWX0JBU0UgKFY0TDJfQ0lEX1VTRVJfQkFTRSArIDB4MTAxMCkKICNkZWZpbmUgVjRMMl9DSURfVVNFUl9TMjI1NV9CQVNFIChWNEwyX0NJRF9VU0VSX0JBU0UgKyAweDEwMzApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9VU0VSX1NJNDc2WF9CQVNFIChWNEwyX0NJRF9VU0VSX0JBU0UgKyAweDEwNDApCiAjZGVmaW5lIFY0TDJfQ0lEX1VTRVJfVElfVlBFX0JBU0UgKFY0TDJfQ0lEX1VTRVJfQkFTRSArIDB4MTA1MCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX1VTRVJfU0FBNzEzNF9CQVNFIChWNEwyX0NJRF9VU0VSX0JBU0UgKyAweDEwNjApCiAjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQkFTRSAoVjRMMl9DVFJMX0NMQVNTX01QRUcgfCAweDkwMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ0xBU1MgKFY0TDJfQ1RSTF9DTEFTU19NUEVHIHwgMSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19TVFJFQU1fVFlQRSAoVjRMMl9DSURfTVBFR19CQVNFKzApCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfU1RSRUFNX1RZUEUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB2NGwyX21wZWdfc3RyZWFtX3R5cGUgewotIFY0TDJfTVBFR19TVFJFQU1fVFlQRV9NUEVHMl9QUyA9IDAsCisgIFY0TDJfTVBFR19TVFJFQU1fVFlQRV9NUEVHMl9QUyA9IDAsCisgIFY0TDJfTVBFR19TVFJFQU1fVFlQRV9NUEVHMl9UUyA9IDEsCisgIFY0TDJfTVBFR19TVFJFQU1fVFlQRV9NUEVHMV9TUyA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19TVFJFQU1fVFlQRV9NUEVHMl9UUyA9IDEsCi0gVjRMMl9NUEVHX1NUUkVBTV9UWVBFX01QRUcxX1NTID0gMiwKLSBWNEwyX01QRUdfU1RSRUFNX1RZUEVfTVBFRzJfRFZEID0gMywKLSBWNEwyX01QRUdfU1RSRUFNX1RZUEVfTVBFRzFfVkNEID0gNCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1NUUkVBTV9UWVBFX01QRUcyX1NWQ0QgPSA1LAorICBWNEwyX01QRUdfU1RSRUFNX1RZUEVfTVBFRzJfRFZEID0gMywKKyAgVjRMMl9NUEVHX1NUUkVBTV9UWVBFX01QRUcxX1ZDRCA9IDQsCisgIFY0TDJfTVBFR19TVFJFQU1fVFlQRV9NUEVHMl9TVkNEID0gNSwKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfU1RSRUFNX1BJRF9QTVQgKFY0TDJfQ0lEX01QRUdfQkFTRSsxKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1NUUkVBTV9QSURfQVVESU8gKFY0TDJfQ0lEX01QRUdfQkFTRSsyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19TVFJFQU1fUElEX1ZJREVPIChWNEwyX0NJRF9NUEVHX0JBU0UrMykKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19TVFJFQU1fUElEX1BDUiAoVjRMMl9DSURfTVBFR19CQVNFKzQpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfU1RSRUFNX1BFU19JRF9BVURJTyAoVjRMMl9DSURfTVBFR19CQVNFKzUpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfU1RSRUFNX1BFU19JRF9WSURFTyAoVjRMMl9DSURfTVBFR19CQVNFKzYpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfU1RSRUFNX1BJRF9QTVQgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDEpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfU1RSRUFNX1BJRF9BVURJTyAoVjRMMl9DSURfTVBFR19CQVNFICsgMikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19TVFJFQU1fUElEX1ZJREVPIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1NUUkVBTV9QSURfUENSIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19TVFJFQU1fVkJJX0ZNVCAoVjRMMl9DSURfTVBFR19CQVNFKzcpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfU1RSRUFNX1BFU19JRF9BVURJTyAoVjRMMl9DSURfTVBFR19CQVNFICsgNSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19TVFJFQU1fUEVTX0lEX1ZJREVPIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA2KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1NUUkVBTV9WQklfRk1UIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA3KQogZW51bSB2NGwyX21wZWdfc3RyZWFtX3ZiaV9mbXQgewotIFY0TDJfTVBFR19TVFJFQU1fVkJJX0ZNVF9OT05FID0gMCwKLSBWNEwyX01QRUdfU1RSRUFNX1ZCSV9GTVRfSVZUViA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWNEwyX01QRUdfU1RSRUFNX1ZCSV9GTVRfTk9ORSA9IDAsCisgIFY0TDJfTVBFR19TVFJFQU1fVkJJX0ZNVF9JVlRWID0gMSwKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fU0FNUExJTkdfRlJFUSAoVjRMMl9DSURfTVBFR19CQVNFKzEwMCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19TQU1QTElOR19GUkVRIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAxMDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB2NGwyX21wZWdfYXVkaW9fc2FtcGxpbmdfZnJlcSB7Ci0gVjRMMl9NUEVHX0FVRElPX1NBTVBMSU5HX0ZSRVFfNDQxMDAgPSAwLAorICBWNEwyX01QRUdfQVVESU9fU0FNUExJTkdfRlJFUV80NDEwMCA9IDAsCisgIFY0TDJfTVBFR19BVURJT19TQU1QTElOR19GUkVRXzQ4MDAwID0gMSwKKyAgVjRMMl9NUEVHX0FVRElPX1NBTVBMSU5HX0ZSRVFfMzIwMDAgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fU0FNUExJTkdfRlJFUV80ODAwMCA9IDEsCi0gVjRMMl9NUEVHX0FVRElPX1NBTVBMSU5HX0ZSRVFfMzIwMDAgPSAyLAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19FTkNPRElORyAoVjRMMl9DSURfTVBFR19CQVNFKzEwMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fRU5DT0RJTkcgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDEwMSkKIGVudW0gdjRsMl9tcGVnX2F1ZGlvX2VuY29kaW5nIHsKLSBWNEwyX01QRUdfQVVESU9fRU5DT0RJTkdfTEFZRVJfMSA9IDAsCi0gVjRMMl9NUEVHX0FVRElPX0VOQ09ESU5HX0xBWUVSXzIgPSAxLAotIFY0TDJfTVBFR19BVURJT19FTkNPRElOR19MQVlFUl8zID0gMiwKKyAgVjRMMl9NUEVHX0FVRElPX0VOQ09ESU5HX0xBWUVSXzEgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fRU5DT0RJTkdfQUFDID0gMywKLSBWNEwyX01QRUdfQVVESU9fRU5DT0RJTkdfQUMzID0gNCwKKyAgVjRMMl9NUEVHX0FVRElPX0VOQ09ESU5HX0xBWUVSXzIgPSAxLAorICBWNEwyX01QRUdfQVVESU9fRU5DT0RJTkdfTEFZRVJfMyA9IDIsCisgIFY0TDJfTVBFR19BVURJT19FTkNPRElOR19BQUMgPSAzLAorICBWNEwyX01QRUdfQVVESU9fRU5DT0RJTkdfQUMzID0gNCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0wxX0JJVFJBVEUgKFY0TDJfQ0lEX01QRUdfQkFTRSsxMDIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0wxX0JJVFJBVEUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDEwMikKIGVudW0gdjRsMl9tcGVnX2F1ZGlvX2wxX2JpdHJhdGUgewotIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzMySyA9IDAsCi0gVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfNjRLID0gMSwKLSBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV85NksgPSAyLAorICBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8zMksgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8xMjhLID0gMywKLSBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8xNjBLID0gNCwKLSBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8xOTJLID0gNSwKLSBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8yMjRLID0gNiwKKyAgVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfNjRLID0gMSwKKyAgVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfOTZLID0gMiwKKyAgVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMTI4SyA9IDMsCisgIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzE2MEsgPSA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8yNTZLID0gNywKLSBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8yODhLID0gOCwKLSBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8zMjBLID0gOSwKLSBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8zNTJLID0gMTAsCisgIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzE5MksgPSA1LAorICBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8yMjRLID0gNiwKKyAgVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMjU2SyA9IDcsCisgIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzI4OEsgPSA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV8zODRLID0gMTEsCi0gVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfNDE2SyA9IDEyLAotIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzQ0OEsgPSAxMywKKyAgVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMzIwSyA9IDksCisgIFY0TDJfTVBFR19BVURJT19MMV9CSVRSQVRFXzM1MksgPSAxMCwKKyAgVjRMMl9NUEVHX0FVRElPX0wxX0JJVFJBVEVfMzg0SyA9IDExLAorICBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV80MTZLID0gMTIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWNEwyX01QRUdfQVVESU9fTDFfQklUUkFURV80NDhLID0gMTMsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19MMl9CSVRSQVRFIChWNEwyX0NJRF9NUEVHX0JBU0UrMTAzKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0wyX0JJVFJBVEUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDEwMykKIGVudW0gdjRsMl9tcGVnX2F1ZGlvX2wyX2JpdHJhdGUgewotIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzMySyA9IDAsCi0gVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfNDhLID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfNTZLID0gMiwKLSBWNEwyX01QRUdfQVVESU9fTDJfQklUUkFURV82NEsgPSAzLAotIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzgwSyA9IDQsCi0gVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfOTZLID0gNSwKKyAgVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMzJLID0gMCwKKyAgVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfNDhLID0gMSwKKyAgVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfNTZLID0gMiwKKyAgVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfNjRLID0gMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMTEySyA9IDYsCi0gVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMTI4SyA9IDcsCi0gVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMTYwSyA9IDgsCi0gVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMTkySyA9IDksCisgIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzgwSyA9IDQsCisgIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzk2SyA9IDUsCisgIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzExMksgPSA2LAorICBWNEwyX01QRUdfQVVESU9fTDJfQklUUkFURV8xMjhLID0gNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMjI0SyA9IDEwLAotIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzI1NksgPSAxMSwKLSBWNEwyX01QRUdfQVVESU9fTDJfQklUUkFURV8zMjBLID0gMTIsCi0gVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMzg0SyA9IDEzLAorICBWNEwyX01QRUdfQVVESU9fTDJfQklUUkFURV8xNjBLID0gOCwKKyAgVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMTkySyA9IDksCisgIFY0TDJfTVBFR19BVURJT19MMl9CSVRSQVRFXzIyNEsgPSAxMCwKKyAgVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMjU2SyA9IDExLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVjRMMl9NUEVHX0FVRElPX0wyX0JJVFJBVEVfMzIwSyA9IDEyLAorICBWNEwyX01QRUdfQVVESU9fTDJfQklUUkFURV8zODRLID0gMTMsCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0wzX0JJVFJBVEUgKFY0TDJfQ0lEX01QRUdfQkFTRSsxMDQpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fTDNfQklUUkFURSAoVjRMMl9DSURfTVBFR19CQVNFICsgMTA0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9tcGVnX2F1ZGlvX2wzX2JpdHJhdGUgewotIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzMySyA9IDAsCisgIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzMySyA9IDAsCisgIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzQwSyA9IDEsCisgIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzQ4SyA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzQwSyA9IDEsCi0gVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfNDhLID0gMiwKLSBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV81NksgPSAzLAotIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzY0SyA9IDQsCisgIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzU2SyA9IDMsCisgIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzY0SyA9IDQsCisgIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzgwSyA9IDUsCisgIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzk2SyA9IDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzgwSyA9IDUsCi0gVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfOTZLID0gNiwKLSBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV8xMTJLID0gNywKLSBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV8xMjhLID0gOCwKKyAgVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfMTEySyA9IDcsCisgIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzEyOEsgPSA4LAorICBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV8xNjBLID0gOSwKKyAgVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfMTkySyA9IDEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV8xNjBLID0gOSwKLSBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV8xOTJLID0gMTAsCi0gVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfMjI0SyA9IDExLAotIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzI1NksgPSAxMiwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfMzIwSyA9IDEzLAorICBWNEwyX01QRUdfQVVESU9fTDNfQklUUkFURV8yMjRLID0gMTEsCisgIFY0TDJfTVBFR19BVURJT19MM19CSVRSQVRFXzI1NksgPSAxMiwKKyAgVjRMMl9NUEVHX0FVRElPX0wzX0JJVFJBVEVfMzIwSyA9IDEzLAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19NT0RFIChWNEwyX0NJRF9NUEVHX0JBU0UrMTA1KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19NT0RFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAxMDUpCiBlbnVtIHY0bDJfbXBlZ19hdWRpb19tb2RlIHsKKyAgVjRMMl9NUEVHX0FVRElPX01PREVfU1RFUkVPID0gMCwKKyAgVjRMMl9NUEVHX0FVRElPX01PREVfSk9JTlRfU1RFUkVPID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX01PREVfU1RFUkVPID0gMCwKLSBWNEwyX01QRUdfQVVESU9fTU9ERV9KT0lOVF9TVEVSRU8gPSAxLAotIFY0TDJfTVBFR19BVURJT19NT0RFX0RVQUwgPSAyLAotIFY0TDJfTVBFR19BVURJT19NT0RFX01PTk8gPSAzLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVjRMMl9NUEVHX0FVRElPX01PREVfRFVBTCA9IDIsCisgIFY0TDJfTVBFR19BVURJT19NT0RFX01PTk8gPSAzLAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19NT0RFX0VYVEVOU0lPTiAoVjRMMl9DSURfTVBFR19CQVNFKzEwNikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19NT0RFX0VYVEVOU0lPTiAoVjRMMl9DSURfTVBFR19CQVNFICsgMTA2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9tcGVnX2F1ZGlvX21vZGVfZXh0ZW5zaW9uIHsKLSBWNEwyX01QRUdfQVVESU9fTU9ERV9FWFRFTlNJT05fQk9VTkRfNCA9IDAsCisgIFY0TDJfTVBFR19BVURJT19NT0RFX0VYVEVOU0lPTl9CT1VORF80ID0gMCwKKyAgVjRMMl9NUEVHX0FVRElPX01PREVfRVhURU5TSU9OX0JPVU5EXzggPSAxLAorICBWNEwyX01QRUdfQVVESU9fTU9ERV9FWFRFTlNJT05fQk9VTkRfMTIgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fTU9ERV9FWFRFTlNJT05fQk9VTkRfOCA9IDEsCi0gVjRMMl9NUEVHX0FVRElPX01PREVfRVhURU5TSU9OX0JPVU5EXzEyID0gMiwKLSBWNEwyX01QRUdfQVVESU9fTU9ERV9FWFRFTlNJT05fQk9VTkRfMTYgPSAzLAorICBWNEwyX01QRUdfQVVESU9fTU9ERV9FWFRFTlNJT05fQk9VTkRfMTYgPSAzLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fRU1QSEFTSVMgKFY0TDJfQ0lEX01QRUdfQkFTRSsxMDcpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fRU1QSEFTSVMgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDEwNykKIGVudW0gdjRsMl9tcGVnX2F1ZGlvX2VtcGhhc2lzIHsKLSBWNEwyX01QRUdfQVVESU9fRU1QSEFTSVNfTk9ORSA9IDAsCi0gVjRMMl9NUEVHX0FVRElPX0VNUEhBU0lTXzUwX0RJVl8xNV91UyA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19BVURJT19FTVBIQVNJU19DQ0lUVF9KMTcgPSAyLAorICBWNEwyX01QRUdfQVVESU9fRU1QSEFTSVNfTk9ORSA9IDAsCisgIFY0TDJfTVBFR19BVURJT19FTVBIQVNJU181MF9ESVZfMTVfdVMgPSAxLAorICBWNEwyX01QRUdfQVVESU9fRU1QSEFTSVNfQ0NJVFRfSjE3ID0gMiwKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQVVESU9fQ1JDIChWNEwyX0NJRF9NUEVHX0JBU0UrMTA4KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19DUkMgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDEwOCkKIGVudW0gdjRsMl9tcGVnX2F1ZGlvX2NyYyB7CisgIFY0TDJfTVBFR19BVURJT19DUkNfTk9ORSA9IDAsCisgIFY0TDJfTVBFR19BVURJT19DUkNfQ1JDMTYgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fQ1JDX05PTkUgPSAwLAotIFY0TDJfTVBFR19BVURJT19DUkNfQ1JDMTYgPSAxLAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19NVVRFIChWNEwyX0NJRF9NUEVHX0JBU0UrMTA5KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX01VVEUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDEwOSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19BQUNfQklUUkFURSAoVjRMMl9DSURfTVBFR19CQVNFICsgMTEwKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0FDM19CSVRSQVRFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAxMTEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0FBQ19CSVRSQVRFIChWNEwyX0NJRF9NUEVHX0JBU0UrMTEwKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0FDM19CSVRSQVRFIChWNEwyX0NJRF9NUEVHX0JBU0UrMTExKQogZW51bSB2NGwyX21wZWdfYXVkaW9fYWMzX2JpdHJhdGUgewotIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV8zMksgPSAwLAorICBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfMzJLID0gMCwKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzQwSyA9IDEsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV80OEsgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfNDBLID0gMSwKLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfNDhLID0gMiwKLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfNTZLID0gMywKLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfNjRLID0gNCwKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzU2SyA9IDMsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV82NEsgPSA0LAorICBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfODBLID0gNSwKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzk2SyA9IDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV84MEsgPSA1LAotIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV85NksgPSA2LAotIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV8xMTJLID0gNywKLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfMTI4SyA9IDgsCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV8xMTJLID0gNywKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzEyOEsgPSA4LAorICBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfMTYwSyA9IDksCisgIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV8xOTJLID0gMTAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV8xNjBLID0gOSwKLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfMTkySyA9IDEwLAotIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV8yMjRLID0gMTEsCi0gVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzI1NksgPSAxMiwKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzIyNEsgPSAxMSwKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzI1NksgPSAxMiwKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzMyMEsgPSAxMywKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzM4NEsgPSAxNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzMyMEsgPSAxMywKLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfMzg0SyA9IDE0LAotIFY0TDJfTVBFR19BVURJT19BQzNfQklUUkFURV80NDhLID0gMTUsCi0gVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzUxMksgPSAxNiwKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzQ0OEsgPSAxNSwKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzUxMksgPSAxNiwKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzU3NksgPSAxNywKKyAgVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzY0MEsgPSAxOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0FVRElPX0FDM19CSVRSQVRFXzU3NksgPSAxNywKLSBWNEwyX01QRUdfQVVESU9fQUMzX0JJVFJBVEVfNjQwSyA9IDE4LAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19ERUNfUExBWUJBQ0sgKFY0TDJfQ0lEX01QRUdfQkFTRSsxMTIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0RFQ19QTEFZQkFDSyAoVjRMMl9DSURfTVBFR19CQVNFICsgMTEyKQogZW51bSB2NGwyX21wZWdfYXVkaW9fZGVjX3BsYXliYWNrIHsKLSBWNEwyX01QRUdfQVVESU9fREVDX1BMQVlCQUNLX0FVVE8gPSAwLAotIFY0TDJfTVBFR19BVURJT19ERUNfUExBWUJBQ0tfU1RFUkVPID0gMSwKLSBWNEwyX01QRUdfQVVESU9fREVDX1BMQVlCQUNLX0xFRlQgPSAyLAorICBWNEwyX01QRUdfQVVESU9fREVDX1BMQVlCQUNLX0FVVE8gPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfQVVESU9fREVDX1BMQVlCQUNLX1JJR0hUID0gMywKLSBWNEwyX01QRUdfQVVESU9fREVDX1BMQVlCQUNLX01PTk8gPSA0LAotIFY0TDJfTVBFR19BVURJT19ERUNfUExBWUJBQ0tfU1dBUFBFRF9TVEVSRU8gPSA1LAorICBWNEwyX01QRUdfQVVESU9fREVDX1BMQVlCQUNLX1NURVJFTyA9IDEsCisgIFY0TDJfTVBFR19BVURJT19ERUNfUExBWUJBQ0tfTEVGVCA9IDIsCisgIFY0TDJfTVBFR19BVURJT19ERUNfUExBWUJBQ0tfUklHSFQgPSAzLAorICBWNEwyX01QRUdfQVVESU9fREVDX1BMQVlCQUNLX01PTk8gPSA0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVjRMMl9NUEVHX0FVRElPX0RFQ19QTEFZQkFDS19TV0FQUEVEX1NURVJFTyA9IDUsCiB9OworI2RlZmluZSBWNEwyX0NJRF9NUEVHX0FVRElPX0RFQ19NVUxUSUxJTkdVQUxfUExBWUJBQ0sgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDExMykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19FTkNPRElORyAoVjRMMl9DSURfTVBFR19CQVNFICsgMjAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19BVURJT19ERUNfTVVMVElMSU5HVUFMX1BMQVlCQUNLIChWNEwyX0NJRF9NUEVHX0JBU0UrMTEzKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0VOQ09ESU5HIChWNEwyX0NJRF9NUEVHX0JBU0UrMjAwKQogZW51bSB2NGwyX21wZWdfdmlkZW9fZW5jb2RpbmcgewotIFY0TDJfTVBFR19WSURFT19FTkNPRElOR19NUEVHXzEgPSAwLAorICBWNEwyX01QRUdfVklERU9fRU5DT0RJTkdfTVBFR18xID0gMCwKKyAgVjRMMl9NUEVHX1ZJREVPX0VOQ09ESU5HX01QRUdfMiA9IDEsCisgIFY0TDJfTVBFR19WSURFT19FTkNPRElOR19NUEVHXzRfQVZDID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0VOQ09ESU5HX01QRUdfMiA9IDEsCi0gVjRMMl9NUEVHX1ZJREVPX0VOQ09ESU5HX01QRUdfNF9BVkMgPSAyLAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19BU1BFQ1QgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0FTUEVDVCAoVjRMMl9DSURfTVBFR19CQVNFICsgMjAxKQogZW51bSB2NGwyX21wZWdfdmlkZW9fYXNwZWN0IHsKLSBWNEwyX01QRUdfVklERU9fQVNQRUNUXzF4MSA9IDAsCi0gVjRMMl9NUEVHX1ZJREVPX0FTUEVDVF80eDMgPSAxLAotIFY0TDJfTVBFR19WSURFT19BU1BFQ1RfMTZ4OSA9IDIsCisgIFY0TDJfTVBFR19WSURFT19BU1BFQ1RfMXgxID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0FTUEVDVF8yMjF4MTAwID0gMywKKyAgVjRMMl9NUEVHX1ZJREVPX0FTUEVDVF80eDMgPSAxLAorICBWNEwyX01QRUdfVklERU9fQVNQRUNUXzE2eDkgPSAyLAorICBWNEwyX01QRUdfVklERU9fQVNQRUNUXzIyMXgxMDAgPSAzLAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19CX0ZSQU1FUyAoVjRMMl9DSURfTVBFR19CQVNFKzIwMikKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19HT1BfU0laRSAoVjRMMl9DSURfTVBFR19CQVNFKzIwMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fR09QX0NMT1NVUkUgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMDQpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fUFVMTERPV04gKFY0TDJfQ0lEX01QRUdfQkFTRSsyMDUpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fQklUUkFURV9NT0RFIChWNEwyX0NJRF9NUEVHX0JBU0UrMjA2KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0JfRlJBTUVTIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMDIpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fR09QX1NJWkUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIwMykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19HT1BfQ0xPU1VSRSAoVjRMMl9DSURfTVBFR19CQVNFICsgMjA0KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1BVTExET1dOIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMDUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0JJVFJBVEVfTU9ERSAoVjRMMl9DSURfTVBFR19CQVNFICsgMjA2KQogZW51bSB2NGwyX21wZWdfdmlkZW9fYml0cmF0ZV9tb2RlIHsKKyAgVjRMMl9NUEVHX1ZJREVPX0JJVFJBVEVfTU9ERV9WQlIgPSAwLAorICBWNEwyX01QRUdfVklERU9fQklUUkFURV9NT0RFX0NCUiA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19CSVRSQVRFX01PREVfVkJSID0gMCwKLSBWNEwyX01QRUdfVklERU9fQklUUkFURV9NT0RFX0NCUiA9IDEsCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0JJVFJBVEUgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMDcpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fQklUUkFURSAoVjRMMl9DSURfTVBFR19CQVNFICsgMjA3KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0JJVFJBVEVfUEVBSyAoVjRMMl9DSURfTVBFR19CQVNFICsgMjA4KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1RFTVBPUkFMX0RFQ0lNQVRJT04gKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIwOSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fQklUUkFURV9QRUFLIChWNEwyX0NJRF9NUEVHX0JBU0UrMjA4KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1RFTVBPUkFMX0RFQ0lNQVRJT04gKFY0TDJfQ0lEX01QRUdfQkFTRSsyMDkpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVVURSAoVjRMMl9DSURfTVBFR19CQVNFKzIxMCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NVVRFX1lVViAoVjRMMl9DSURfTVBFR19CQVNFKzIxMSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NVVRFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMTApCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVVURV9ZVVYgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIxMSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19ERUNPREVSX1NMSUNFX0lOVEVSRkFDRSAoVjRMMl9DSURfTVBFR19CQVNFICsgMjEyKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0RFQ09ERVJfTVBFRzRfREVCTE9DS19GSUxURVIgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIxMykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fREVDT0RFUl9TTElDRV9JTlRFUkZBQ0UgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMTIpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fREVDT0RFUl9NUEVHNF9ERUJMT0NLX0ZJTFRFUiAoVjRMMl9DSURfTVBFR19CQVNFKzIxMykKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19DWUNMSUNfSU5UUkFfUkVGUkVTSF9NQiAoVjRMMl9DSURfTVBFR19CQVNFKzIxNCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19GUkFNRV9SQ19FTkFCTEUgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMTUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0hFQURFUl9NT0RFIChWNEwyX0NJRF9NUEVHX0JBU0UrMjE2KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0NZQ0xJQ19JTlRSQV9SRUZSRVNIX01CIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMTQpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fRlJBTUVfUkNfRU5BQkxFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMTUpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSEVBREVSX01PREUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIxNikKIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2hlYWRlcl9tb2RlIHsKLSBWNEwyX01QRUdfVklERU9fSEVBREVSX01PREVfU0VQQVJBVEUgPSAwLAotIFY0TDJfTVBFR19WSURFT19IRUFERVJfTU9ERV9KT0lORURfV0lUSF8xU1RfRlJBTUUgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVjRMMl9NUEVHX1ZJREVPX0hFQURFUl9NT0RFX1NFUEFSQVRFID0gMCwKKyAgVjRMMl9NUEVHX1ZJREVPX0hFQURFUl9NT0RFX0pPSU5FRF9XSVRIXzFTVF9GUkFNRSA9IDEsCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01BWF9SRUZfUElDIChWNEwyX0NJRF9NUEVHX0JBU0UrMjE3KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01CX1JDX0VOQUJMRSAoVjRMMl9DSURfTVBFR19CQVNFKzIxOCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NVUxUSV9TTElDRV9NQVhfQllURVMgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMTkpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTUFYX1JFRl9QSUMgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIxNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVVMVElfU0xJQ0VfTUFYX01CIChWNEwyX0NJRF9NUEVHX0JBU0UrMjIwKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01VTFRJX1NMSUNFX01PREUgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMjEpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTUJfUkNfRU5BQkxFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMTgpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVVMVElfU0xJQ0VfTUFYX0JZVEVTIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMTkpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVVMVElfU0xJQ0VfTUFYX01CIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMjApCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVVMVElfU0xJQ0VfTU9ERSAoVjRMMl9DSURfTVBFR19CQVNFICsgMjIxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9tcGVnX3ZpZGVvX211bHRpX3NsaWNlX21vZGUgewotIFY0TDJfTVBFR19WSURFT19NVUxUSV9TTElDRV9NT0RFX1NJTkdMRSA9IDAsCisgIFY0TDJfTVBFR19WSURFT19NVUxUSV9TTElDRV9NT0RFX1NJTkdMRSA9IDAsCisgIFY0TDJfTVBFR19WSURFT19NVUxUSV9TSUNFX01PREVfTUFYX01CID0gMSwKKyAgVjRMMl9NUEVHX1ZJREVPX01VTFRJX1NJQ0VfTU9ERV9NQVhfQllURVMgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fTVVMVElfU0lDRV9NT0RFX01BWF9NQiA9IDEsCi0gVjRMMl9NUEVHX1ZJREVPX01VTFRJX1NJQ0VfTU9ERV9NQVhfQllURVMgPSAyLAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WQlZfU0laRSAoVjRMMl9DSURfTVBFR19CQVNFKzIyMikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WQlZfU0laRSAoVjRMMl9DSURfTVBFR19CQVNFICsgMjIyKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0RFQ19QVFMgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIyMykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19ERUNfRlJBTUUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIyNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fREVDX1BUUyAoVjRMMl9DSURfTVBFR19CQVNFKzIyMykKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19ERUNfRlJBTUUgKFY0TDJfQ0lEX01QRUdfQkFTRSsyMjQpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVkJWX0RFTEFZIChWNEwyX0NJRF9NUEVHX0JBU0UrMjI1KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1JFUEVBVF9TRVFfSEVBREVSIChWNEwyX0NJRF9NUEVHX0JBU0UrMjI2KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZCVl9ERUxBWSAoVjRMMl9DSURfTVBFR19CQVNFICsgMjI1KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1JFUEVBVF9TRVFfSEVBREVSIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAyMjYpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVZfSF9TRUFSQ0hfUkFOR0UgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDIyNykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NVl9WX1NFQVJDSF9SQU5HRSAoVjRMMl9DSURfTVBFR19CQVNFICsgMjI4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjYzX0lfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSszMDApCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2M19QX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UrMzAxKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjNfQl9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzMwMikKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjYzX01JTl9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzMwMykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjYzX0lfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDMwMCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjYzX1BfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDMwMSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjYzX0JfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDMwMikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjYzX01JTl9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgMzAzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjYzX01BWF9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzMwNCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0lfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSszNTApCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9QX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UrMzUxKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfQl9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzM1MikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjYzX01BWF9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgMzA0KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfSV9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgMzUwKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfUF9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgMzUxKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfQl9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgMzUyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X01JTl9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzM1MykKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X01BWF9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzM1NCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0XzhYOF9UUkFOU0ZPUk0gKFY0TDJfQ0lEX01QRUdfQkFTRSszNTUpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9DUEJfU0laRSAoVjRMMl9DSURfTVBFR19CQVNFKzM1NikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X01JTl9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgMzUzKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfTUFYX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNTQpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF84WDhfVFJBTlNGT1JNIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNTUpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9DUEJfU0laRSAoVjRMMl9DSURfTVBFR19CQVNFICsgMzU2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0VOVFJPUFlfTU9ERSAoVjRMMl9DSURfTVBFR19CQVNFKzM1NykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0VOVFJPUFlfTU9ERSAoVjRMMl9DSURfTVBFR19CQVNFICsgMzU3KQogZW51bSB2NGwyX21wZWdfdmlkZW9faDI2NF9lbnRyb3B5X21vZGUgewotIFY0TDJfTVBFR19WSURFT19IMjY0X0VOVFJPUFlfTU9ERV9DQVZMQyA9IDAsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfRU5UUk9QWV9NT0RFX0NBQkFDID0gMSwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfRU5UUk9QWV9NT0RFX0NBVkxDID0gMCwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfRU5UUk9QWV9NT0RFX0NBQkFDID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfSV9QRVJJT0QgKFY0TDJfQ0lEX01QRUdfQkFTRSszNTgpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9MRVZFTCAoVjRMMl9DSURfTVBFR19CQVNFKzM1OSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0lfUEVSSU9EIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNTgpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9MRVZFTCAoVjRMMl9DSURfTVBFR19CQVNFICsgMzU5KQogZW51bSB2NGwyX21wZWdfdmlkZW9faDI2NF9sZXZlbCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzFfMCA9IDAsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfMUIgPSAxLAotIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzFfMSA9IDIsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfMV8yID0gMywKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfMV8wID0gMCwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfMUIgPSAxLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8xXzEgPSAyLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8xXzIgPSAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8xXzMgPSA0LAotIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzJfMCA9IDUsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfMl8xID0gNiwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8yXzIgPSA3LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8xXzMgPSA0LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8yXzAgPSA1LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8yXzEgPSA2LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8yXzIgPSA3LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF8zXzAgPSA4LAotIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzNfMSA9IDksCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfM18yID0gMTAsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfNF8wID0gMTEsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzNfMCA9IDgsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzNfMSA9IDksCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzNfMiA9IDEwLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF80XzAgPSAxMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfNF8xID0gMTIsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfNF8yID0gMTMsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfNV8wID0gMTQsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfNV8xID0gMTUsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzRfMSA9IDEyLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MRVZFTF80XzIgPSAxMywKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfTEVWRUxfNV8wID0gMTQsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0xFVkVMXzVfMSA9IDE1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9MT09QX0ZJTFRFUl9BTFBIQSAoVjRMMl9DSURfTVBFR19CQVNFKzM2MCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0xPT1BfRklMVEVSX0JFVEEgKFY0TDJfQ0lEX01QRUdfQkFTRSszNjEpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9MT09QX0ZJTFRFUl9NT0RFIChWNEwyX0NJRF9NUEVHX0JBU0UrMzYyKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfTE9PUF9GSUxURVJfQUxQSEEgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM2MCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0xPT1BfRklMVEVSX0JFVEEgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM2MSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0xPT1BfRklMVEVSX01PREUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM2MikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfbXBlZ192aWRlb19oMjY0X2xvb3BfZmlsdGVyX21vZGUgewotIFY0TDJfTVBFR19WSURFT19IMjY0X0xPT1BfRklMVEVSX01PREVfRU5BQkxFRCA9IDAsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTE9PUF9GSUxURVJfTU9ERV9ESVNBQkxFRCA9IDEsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfTE9PUF9GSUxURVJfTU9ERV9ESVNBQkxFRF9BVF9TTElDRV9CT1VOREFSWSA9IDIsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0xPT1BfRklMVEVSX01PREVfRU5BQkxFRCA9IDAsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0xPT1BfRklMVEVSX01PREVfRElTQUJMRUQgPSAxLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9MT09QX0ZJTFRFUl9NT0RFX0RJU0FCTEVEX0FUX1NMSUNFX0JPVU5EQVJZID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRSAoVjRMMl9DSURfTVBFR19CQVNFKzM2MykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1BST0ZJTEUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM2MykKIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2gyNjRfcHJvZmlsZSB7Ci0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9CQVNFTElORSA9IDAsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfQkFTRUxJTkUgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0NPTlNUUkFJTkVEX0JBU0VMSU5FID0gMSwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX01BSU4gPSAyLAotIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfRVhURU5ERUQgPSAzLAotIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfSElHSCA9IDQsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfQ09OU1RSQUlORURfQkFTRUxJTkUgPSAxLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX01BSU4gPSAyLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0VYVEVOREVEID0gMywKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9ISUdIID0gNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9ISUdIXzEwID0gNSwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0hJR0hfNDIyID0gNiwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0hJR0hfNDQ0X1BSRURJQ1RJVkUgPSA3LAotIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfSElHSF8xMF9JTlRSQSA9IDgsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfSElHSF8xMCA9IDUsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfSElHSF80MjIgPSA2LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0hJR0hfNDQ0X1BSRURJQ1RJVkUgPSA3LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0hJR0hfMTBfSU5UUkEgPSA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0hJR0hfNDIyX0lOVFJBID0gOSwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0hJR0hfNDQ0X0lOVFJBID0gMTAsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9DQVZMQ180NDRfSU5UUkEgPSAxMSwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX1NDQUxBQkxFX0JBU0VMSU5FID0gMTIsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfSElHSF80MjJfSU5UUkEgPSA5LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX0hJR0hfNDQ0X0lOVFJBID0gMTAsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfQ0FWTENfNDQ0X0lOVFJBID0gMTEsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfU0NBTEFCTEVfQkFTRUxJTkUgPSAxMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9TQ0FMQUJMRV9ISUdIID0gMTMsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9TQ0FMQUJMRV9ISUdIX0lOVFJBID0gMTQsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9TVEVSRU9fSElHSCA9IDE1LAotIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfTVVMVElWSUVXX0hJR0ggPSAxNiwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfUFJPRklMRV9TQ0FMQUJMRV9ISUdIID0gMTMsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfU0NBTEFCTEVfSElHSF9JTlRSQSA9IDE0LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9QUk9GSUxFX1NURVJFT19ISUdIID0gMTUsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1BST0ZJTEVfTVVMVElWSUVXX0hJR0ggPSAxNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfVlVJX0VYVF9TQVJfSEVJR0hUIChWNEwyX0NJRF9NUEVHX0JBU0UrMzY0KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfVlVJX0VYVF9TQVJfV0lEVEggKFY0TDJfQ0lEX01QRUdfQkFTRSszNjUpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0VOQUJMRSAoVjRMMl9DSURfTVBFR19CQVNFKzM2NikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1ZVSV9FWFRfU0FSX0hFSUdIVCAoVjRMMl9DSURfTVBFR19CQVNFICsgMzY0KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfVlVJX0VYVF9TQVJfV0lEVEggKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM2NSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfRU5BQkxFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNjYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JREMgKFY0TDJfQ0lEX01QRUdfQkFTRSszNjcpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQyAoVjRMMl9DSURfTVBFR19CQVNFICsgMzY3KQogZW51bSB2NGwyX21wZWdfdmlkZW9faDI2NF92dWlfc2FyX2lkYyB7Ci0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfVU5TUEVDSUZJRUQgPSAwLAotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzF4MSA9IDEsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDX1VOU1BFQ0lGSUVEID0gMCwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMXgxID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMTJ4MTEgPSAyLAotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzEweDExID0gMywKLSBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18xNngxMSA9IDQsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfNDB4MzMgPSA1LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18xMngxMSA9IDIsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzEweDExID0gMywKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMTZ4MTEgPSA0LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ180MHgzMyA9IDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzI0eDExID0gNiwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18yMHgxMSA9IDcsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMzJ4MTEgPSA4LAotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzgweDMzID0gOSwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMjR4MTEgPSA2LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18yMHgxMSA9IDcsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzMyeDExID0gOCwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfODB4MzMgPSA5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18xOHgxMSA9IDEwLAotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzE1eDExID0gMTEsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfNjR4MzMgPSAxMiwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18xNjB4OTkgPSAxMywKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMTh4MTEgPSAxMCwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMTV4MTEgPSAxMSwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfNjR4MzMgPSAxMiwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMTYweDk5ID0gMTMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzR4MyA9IDE0LAotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzN4MiA9IDE1LAotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzJ4MSA9IDE2LAotIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDX0VYVEVOREVEID0gMTcsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDXzR4MyA9IDE0LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9WVUlfU0FSX0lEQ18zeDIgPSAxNSwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfVlVJX1NBUl9JRENfMngxID0gMTYsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1ZVSV9TQVJfSURDX0VYVEVOREVEID0gMTcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1NFSV9GUkFNRV9QQUNLSU5HIChWNEwyX0NJRF9NUEVHX0JBU0UrMzY4KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfU0VJX0ZQX0NVUlJFTlRfRlJBTUVfMCAoVjRMMl9DSURfTVBFR19CQVNFKzM2OSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1NFSV9GUF9BUlJBTkdFTUVOVF9UWVBFIChWNEwyX0NJRF9NUEVHX0JBU0UrMzcwKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfU0VJX0ZSQU1FX1BBQ0tJTkcgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM2OCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1NFSV9GUF9DVVJSRU5UX0ZSQU1FXzAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM2OSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X1NFSV9GUF9BUlJBTkdFTUVOVF9UWVBFIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNzApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB2NGwyX21wZWdfdmlkZW9faDI2NF9zZWlfZnBfYXJyYW5nZW1lbnRfdHlwZSB7Ci0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfU0VJX0ZQX0FSUkFOR0VNRU5UX1RZUEVfQ0hFQ0tFUkJPQVJEID0gMCwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9TRUlfRlBfQVJSQU5HRU1FTlRfVFlQRV9DT0xVTU4gPSAxLAotIFY0TDJfTVBFR19WSURFT19IMjY0X1NFSV9GUF9BUlJBTkdFTUVOVF9UWVBFX1JPVyA9IDIsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1NFSV9GUF9BUlJBTkdFTUVOVF9UWVBFX0NIRUNLRVJCT0FSRCA9IDAsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1NFSV9GUF9BUlJBTkdFTUVOVF9UWVBFX0NPTFVNTiA9IDEsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X1NFSV9GUF9BUlJBTkdFTUVOVF9UWVBFX1JPVyA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19IMjY0X1NFSV9GUF9BUlJBTkdFTUVOVF9UWVBFX1NJREVfQllfU0lERSA9IDMsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfU0VJX0ZQX0FSUkFOR0VNRU5UX1RZUEVfVE9QX0JPVFRPTSA9IDQsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfU0VJX0ZQX0FSUkFOR0VNRU5UX1RZUEVfVEVNUE9SQUwgPSA1LAorICBWNEwyX01QRUdfVklERU9fSDI2NF9TRUlfRlBfQVJSQU5HRU1FTlRfVFlQRV9TSURFX0JZX1NJREUgPSAzLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9TRUlfRlBfQVJSQU5HRU1FTlRfVFlQRV9UT1BfQk9UVE9NID0gNCwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfU0VJX0ZQX0FSUkFOR0VNRU5UX1RZUEVfVEVNUE9SQUwgPSA1LAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9GTU8gKFY0TDJfQ0lEX01QRUdfQkFTRSszNzEpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9GTU9fTUFQX1RZUEUgKFY0TDJfQ0lEX01QRUdfQkFTRSszNzIpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9GTU8gKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM3MSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0ZNT19NQVBfVFlQRSAoVjRMMl9DSURfTVBFR19CQVNFICsgMzcyKQogZW51bSB2NGwyX21wZWdfdmlkZW9faDI2NF9mbW9fbWFwX3R5cGUgewotIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19NQVBfVFlQRV9JTlRFUkxFQVZFRF9TTElDRVMgPSAwLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9GTU9fTUFQX1RZUEVfSU5URVJMRUFWRURfU0xJQ0VTID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfRk1PX01BUF9UWVBFX1NDQVRURVJFRF9TTElDRVMgPSAxLAotIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19NQVBfVFlQRV9GT1JFR1JPVU5EX1dJVEhfTEVGVF9PVkVSID0gMiwKLSBWNEwyX01QRUdfVklERU9fSDI2NF9GTU9fTUFQX1RZUEVfQk9YX09VVCA9IDMsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfRk1PX01BUF9UWVBFX1JBU1RFUl9TQ0FOID0gNCwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfRk1PX01BUF9UWVBFX1NDQVRURVJFRF9TTElDRVMgPSAxLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9GTU9fTUFQX1RZUEVfRk9SRUdST1VORF9XSVRIX0xFRlRfT1ZFUiA9IDIsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19NQVBfVFlQRV9CT1hfT1VUID0gMywKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfRk1PX01BUF9UWVBFX1JBU1RFUl9TQ0FOID0gNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfRk1PX01BUF9UWVBFX1dJUEVfU0NBTiA9IDUsCi0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfRk1PX01BUF9UWVBFX0VYUExJQ0lUID0gNiwKKyAgVjRMMl9NUEVHX1ZJREVPX0gyNjRfRk1PX01BUF9UWVBFX1dJUEVfU0NBTiA9IDUsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19NQVBfVFlQRV9FWFBMSUNJVCA9IDYsCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfRk1PX1NMSUNFX0dST1VQIChWNEwyX0NJRF9NUEVHX0JBU0UrMzczKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfRk1PX1NMSUNFX0dST1VQIChWNEwyX0NJRF9NUEVHX0JBU0UgKyAzNzMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfRk1PX0NIQU5HRV9ESVJFQ1RJT04gKFY0TDJfQ0lEX01QRUdfQkFTRSszNzQpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9GTU9fQ0hBTkdFX0RJUkVDVElPTiAoVjRMMl9DSURfTVBFR19CQVNFICsgMzc0KQogZW51bSB2NGwyX21wZWdfdmlkZW9faDI2NF9mbW9fY2hhbmdlX2RpciB7Ci0gVjRMMl9NUEVHX1ZJREVPX0gyNjRfRk1PX0NIQU5HRV9ESVJfUklHSFQgPSAwLAotIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19DSEFOR0VfRElSX0xFRlQgPSAxLAorICBWNEwyX01QRUdfVklERU9fSDI2NF9GTU9fQ0hBTkdFX0RJUl9SSUdIVCA9IDAsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0ZNT19DSEFOR0VfRElSX0xFRlQgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9GTU9fQ0hBTkdFX1JBVEUgKFY0TDJfQ0lEX01QRUdfQkFTRSszNzUpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9GTU9fUlVOX0xFTkdUSCAoVjRMMl9DSURfTVBFR19CQVNFKzM3NikKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0FTTyAoVjRMMl9DSURfTVBFR19CQVNFKzM3NykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0ZNT19DSEFOR0VfUkFURSAoVjRMMl9DSURfTVBFR19CQVNFICsgMzc1KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfRk1PX1JVTl9MRU5HVEggKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM3NikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0FTTyAoVjRMMl9DSURfTVBFR19CQVNFICsgMzc3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0FTT19TTElDRV9PUkRFUiAoVjRMMl9DSURfTVBFR19CQVNFKzM3OCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0hJRVJBUkNISUNBTF9DT0RJTkcgKFY0TDJfQ0lEX01QRUdfQkFTRSszNzkpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9ISUVSQVJDSElDQUxfQ09ESU5HX1RZUEUgKFY0TDJfQ0lEX01QRUdfQkFTRSszODApCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9BU09fU0xJQ0VfT1JERVIgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM3OCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0hJRVJBUkNISUNBTF9DT0RJTkcgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM3OSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0hJRVJBUkNISUNBTF9DT0RJTkdfVFlQRSAoVjRMMl9DSURfTVBFR19CQVNFICsgMzgwKQogZW51bSB2NGwyX21wZWdfdmlkZW9faDI2NF9oaWVyYXJjaGljYWxfY29kaW5nX3R5cGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfVklERU9fSDI2NF9ISUVSQVJDSElDQUxfQ09ESU5HX0IgPSAwLAotIFY0TDJfTVBFR19WSURFT19IMjY0X0hJRVJBUkNISUNBTF9DT0RJTkdfUCA9IDEsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0hJRVJBUkNISUNBTF9DT0RJTkdfQiA9IDAsCisgIFY0TDJfTVBFR19WSURFT19IMjY0X0hJRVJBUkNISUNBTF9DT0RJTkdfUCA9IDEsCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfSElFUkFSQ0hJQ0FMX0NPRElOR19MQVlFUiAoVjRMMl9DSURfTVBFR19CQVNFKzM4MSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IMjY0X0hJRVJBUkNISUNBTF9DT0RJTkdfTEFZRVIgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDM4MSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSDI2NF9ISUVSQVJDSElDQUxfQ09ESU5HX0xBWUVSX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UrMzgyKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01QRUc0X0lfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSs0MDApCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVBFRzRfUF9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzQwMSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NUEVHNF9CX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UrNDAyKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0gyNjRfSElFUkFSQ0hJQ0FMX0NPRElOR19MQVlFUl9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgMzgyKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01QRUc0X0lfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDQwMCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NUEVHNF9QX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA0MDEpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVBFRzRfQl9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgNDAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NUEVHNF9NSU5fUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSs0MDMpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fTVBFRzRfTUFYX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UrNDA0KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01QRUc0X0xFVkVMIChWNEwyX0NJRF9NUEVHX0JBU0UrNDA1KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01QRUc0X01JTl9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgNDAzKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01QRUc0X01BWF9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgNDA0KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01QRUc0X0xFVkVMIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA0MDUpCiBlbnVtIHY0bDJfbXBlZ192aWRlb19tcGVnNF9sZXZlbCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19NUEVHNF9MRVZFTF8wID0gMCwKLSBWNEwyX01QRUdfVklERU9fTVBFRzRfTEVWRUxfMEIgPSAxLAotIFY0TDJfTVBFR19WSURFT19NUEVHNF9MRVZFTF8xID0gMiwKLSBWNEwyX01QRUdfVklERU9fTVBFRzRfTEVWRUxfMiA9IDMsCisgIFY0TDJfTVBFR19WSURFT19NUEVHNF9MRVZFTF8wID0gMCwKKyAgVjRMMl9NUEVHX1ZJREVPX01QRUc0X0xFVkVMXzBCID0gMSwKKyAgVjRMMl9NUEVHX1ZJREVPX01QRUc0X0xFVkVMXzEgPSAyLAorICBWNEwyX01QRUdfVklERU9fTVBFRzRfTEVWRUxfMiA9IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19NUEVHNF9MRVZFTF8zID0gNCwKLSBWNEwyX01QRUdfVklERU9fTVBFRzRfTEVWRUxfM0IgPSA1LAotIFY0TDJfTVBFR19WSURFT19NUEVHNF9MRVZFTF80ID0gNiwKLSBWNEwyX01QRUdfVklERU9fTVBFRzRfTEVWRUxfNSA9IDcsCisgIFY0TDJfTVBFR19WSURFT19NUEVHNF9MRVZFTF8zID0gNCwKKyAgVjRMMl9NUEVHX1ZJREVPX01QRUc0X0xFVkVMXzNCID0gNSwKKyAgVjRMMl9NUEVHX1ZJREVPX01QRUc0X0xFVkVMXzQgPSA2LAorICBWNEwyX01QRUdfVklERU9fTVBFRzRfTEVWRUxfNSA9IDcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NUEVHNF9QUk9GSUxFIChWNEwyX0NJRF9NUEVHX0JBU0UrNDA2KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX01QRUc0X1BST0ZJTEUgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDQwNikKIGVudW0gdjRsMl9tcGVnX3ZpZGVvX21wZWc0X3Byb2ZpbGUgewotIFY0TDJfTVBFR19WSURFT19NUEVHNF9QUk9GSUxFX1NJTVBMRSA9IDAsCisgIFY0TDJfTVBFR19WSURFT19NUEVHNF9QUk9GSUxFX1NJTVBMRSA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19WSURFT19NUEVHNF9QUk9GSUxFX0FEVkFOQ0VEX1NJTVBMRSA9IDEsCi0gVjRMMl9NUEVHX1ZJREVPX01QRUc0X1BST0ZJTEVfQ09SRSA9IDIsCi0gVjRMMl9NUEVHX1ZJREVPX01QRUc0X1BST0ZJTEVfU0lNUExFX1NDQUxBQkxFID0gMywKLSBWNEwyX01QRUdfVklERU9fTVBFRzRfUFJPRklMRV9BRFZBTkNFRF9DT0RJTkdfRUZGSUNJRU5DWSA9IDQsCisgIFY0TDJfTVBFR19WSURFT19NUEVHNF9QUk9GSUxFX0FEVkFOQ0VEX1NJTVBMRSA9IDEsCisgIFY0TDJfTVBFR19WSURFT19NUEVHNF9QUk9GSUxFX0NPUkUgPSAyLAorICBWNEwyX01QRUdfVklERU9fTVBFRzRfUFJPRklMRV9TSU1QTEVfU0NBTEFCTEUgPSAzLAorICBWNEwyX01QRUdfVklERU9fTVBFRzRfUFJPRklMRV9BRFZBTkNFRF9DT0RJTkdfRUZGSUNJRU5DWSA9IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NUEVHNF9RUEVMIChWNEwyX0NJRF9NUEVHX0JBU0UrNDA3KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9OVU1fUEFSVElUSU9OUyAoVjRMMl9DSURfTVBFR19CQVNFKzUwMCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19NUEVHNF9RUEVMIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA0MDcpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX05VTV9QQVJUSVRJT05TIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA1MDApCiBlbnVtIHY0bDJfdnA4X251bV9wYXJ0aXRpb25zIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9DSURfTVBFR19WSURFT19WUFhfMV9QQVJUSVRJT04gPSAwLAotIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYXzJfUEFSVElUSU9OUyA9IDEsCi0gVjRMMl9DSURfTVBFR19WSURFT19WUFhfNF9QQVJUSVRJT05TID0gMiwKLSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF84X1BBUlRJVElPTlMgPSAzLAorICBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF8xX1BBUlRJVElPTiA9IDAsCisgIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYXzJfUEFSVElUSU9OUyA9IDEsCisgIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYXzRfUEFSVElUSU9OUyA9IDIsCisgIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYXzhfUEFSVElUSU9OUyA9IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfSU1EX0RJU0FCTEVfNFg0IChWNEwyX0NJRF9NUEVHX0JBU0UrNTAxKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9OVU1fUkVGX0ZSQU1FUyAoVjRMMl9DSURfTVBFR19CQVNFKzUwMikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfSU1EX0RJU0FCTEVfNFg0IChWNEwyX0NJRF9NUEVHX0JBU0UgKyA1MDEpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX05VTV9SRUZfRlJBTUVTIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA1MDIpCiBlbnVtIHY0bDJfdnA4X251bV9yZWZfZnJhbWVzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9DSURfTVBFR19WSURFT19WUFhfMV9SRUZfRlJBTUUgPSAwLAotIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYXzJfUkVGX0ZSQU1FID0gMSwKLSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF8zX1JFRl9GUkFNRSA9IDIsCisgIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYXzFfUkVGX0ZSQU1FID0gMCwKKyAgVjRMMl9DSURfTVBFR19WSURFT19WUFhfMl9SRUZfRlJBTUUgPSAxLAorICBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF8zX1JFRl9GUkFNRSA9IDIsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfRklMVEVSX0xFVkVMIChWNEwyX0NJRF9NUEVHX0JBU0UrNTAzKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9GSUxURVJfU0hBUlBORVNTIChWNEwyX0NJRF9NUEVHX0JBU0UrNTA0KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9HT0xERU5fRlJBTUVfUkVGX1BFUklPRCAoVjRMMl9DSURfTVBFR19CQVNFKzUwNSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfR09MREVOX0ZSQU1FX1NFTCAoVjRMMl9DSURfTVBFR19CQVNFKzUwNikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfRklMVEVSX0xFVkVMIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA1MDMpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX0ZJTFRFUl9TSEFSUE5FU1MgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDUwNCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfR09MREVOX0ZSQU1FX1JFRl9QRVJJT0QgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDUwNSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfR09MREVOX0ZSQU1FX1NFTCAoVjRMMl9DSURfTVBFR19CQVNFICsgNTA2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl92cDhfZ29sZGVuX2ZyYW1lX3NlbCB7Ci0gVjRMMl9DSURfTVBFR19WSURFT19WUFhfR09MREVOX0ZSQU1FX1VTRV9QUkVWID0gMCwKLSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9HT0xERU5fRlJBTUVfVVNFX1JFRl9QRVJJT0QgPSAxLAorICBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9HT0xERU5fRlJBTUVfVVNFX1BSRVYgPSAwLAorICBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9HT0xERU5fRlJBTUVfVVNFX1JFRl9QRVJJT0QgPSAxLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX01JTl9RUCAoVjRMMl9DSURfTVBFR19CQVNFKzUwNykKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfTUFYX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UrNTA4KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9JX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UrNTA5KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9QX0ZSQU1FX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UrNTEwKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX1ZQWF9NSU5fUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDUwNykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfTUFYX1FQIChWNEwyX0NJRF9NUEVHX0JBU0UgKyA1MDgpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fVlBYX0lfRlJBTUVfUVAgKFY0TDJfQ0lEX01QRUdfQkFTRSArIDUwOSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfUF9GUkFNRV9RUCAoVjRMMl9DSURfTVBFR19CQVNFICsgNTEwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfUFJPRklMRSAoVjRMMl9DSURfTVBFR19CQVNFKzUxMSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19WUFhfUFJPRklMRSAoVjRMMl9DSURfTVBFR19CQVNFICsgNTExKQogI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSAoVjRMMl9DVFJMX0NMQVNTX01QRUcgfCAweDEwMDApCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9WSURFT19TUEFUSUFMX0ZJTFRFUl9NT0RFIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSswKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fU1BBVElBTF9GSUxURVJfTU9ERSAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UgKyAwKQogZW51bSB2NGwyX21wZWdfY3gyMzQxeF92aWRlb19zcGF0aWFsX2ZpbHRlcl9tb2RlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fU1BBVElBTF9GSUxURVJfTU9ERV9NQU5VQUwgPSAwLAotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX1NQQVRJQUxfRklMVEVSX01PREVfQVVUTyA9IDEsCisgIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX1NQQVRJQUxfRklMVEVSX01PREVfTUFOVUFMID0gMCwKKyAgVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fU1BBVElBTF9GSUxURVJfTU9ERV9BVVRPID0gMSwKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9WSURFT19TUEFUSUFMX0ZJTFRFUiAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UrMSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX1NQQVRJQUxfRklMVEVSIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSArIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fTFVNQV9TUEFUSUFMX0ZJTFRFUl9UWVBFIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSsyKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fTFVNQV9TUEFUSUFMX0ZJTFRFUl9UWVBFIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSArIDIpCiBlbnVtIHY0bDJfbXBlZ19jeDIzNDF4X3ZpZGVvX2x1bWFfc3BhdGlhbF9maWx0ZXJfdHlwZSB7Ci0gVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fTFVNQV9TUEFUSUFMX0ZJTFRFUl9UWVBFX09GRiA9IDAsCi0gVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fTFVNQV9TUEFUSUFMX0ZJTFRFUl9UWVBFXzFEX0hPUiA9IDEsCisgIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfU1BBVElBTF9GSUxURVJfVFlQRV9PRkYgPSAwLAorICBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19MVU1BX1NQQVRJQUxfRklMVEVSX1RZUEVfMURfSE9SID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fTFVNQV9TUEFUSUFMX0ZJTFRFUl9UWVBFXzFEX1ZFUlQgPSAyLAotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfU1BBVElBTF9GSUxURVJfVFlQRV8yRF9IVl9TRVBBUkFCTEUgPSAzLAotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfU1BBVElBTF9GSUxURVJfVFlQRV8yRF9TWU1fTk9OX1NFUEFSQUJMRSA9IDQsCisgIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfU1BBVElBTF9GSUxURVJfVFlQRV8xRF9WRVJUID0gMiwKKyAgVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fTFVNQV9TUEFUSUFMX0ZJTFRFUl9UWVBFXzJEX0hWX1NFUEFSQUJMRSA9IDMsCisgIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfU1BBVElBTF9GSUxURVJfVFlQRV8yRF9TWU1fTk9OX1NFUEFSQUJMRSA9IDQsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX0NIUk9NQV9TUEFUSUFMX0ZJTFRFUl9UWVBFIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSszKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fQ0hST01BX1NQQVRJQUxfRklMVEVSX1RZUEUgKFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9CQVNFICsgMykKIGVudW0gdjRsMl9tcGVnX2N4MjM0MXhfdmlkZW9fY2hyb21hX3NwYXRpYWxfZmlsdGVyX3R5cGUgewotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX0NIUk9NQV9TUEFUSUFMX0ZJTFRFUl9UWVBFX09GRiA9IDAsCi0gVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fQ0hST01BX1NQQVRJQUxfRklMVEVSX1RZUEVfMURfSE9SID0gMSwKKyAgVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fQ0hST01BX1NQQVRJQUxfRklMVEVSX1RZUEVfT0ZGID0gMCwKKyAgVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fQ0hST01BX1NQQVRJQUxfRklMVEVSX1RZUEVfMURfSE9SID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fVEVNUE9SQUxfRklMVEVSX01PREUgKFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9CQVNFKzQpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9WSURFT19URU1QT1JBTF9GSUxURVJfTU9ERSAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UgKyA0KQogZW51bSB2NGwyX21wZWdfY3gyMzQxeF92aWRlb190ZW1wb3JhbF9maWx0ZXJfbW9kZSB7Ci0gVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fVEVNUE9SQUxfRklMVEVSX01PREVfTUFOVUFMID0gMCwKKyAgVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fVEVNUE9SQUxfRklMVEVSX01PREVfTUFOVUFMID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fVEVNUE9SQUxfRklMVEVSX01PREVfQVVUTyA9IDEsCisgIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX1RFTVBPUkFMX0ZJTFRFUl9NT0RFX0FVVE8gPSAxLAogfTsKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX1RFTVBPUkFMX0ZJTFRFUiAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UrNSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX01FRElBTl9GSUxURVJfVFlQRSAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UrNikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX1RFTVBPUkFMX0ZJTFRFUiAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UgKyA1KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fTUVESUFOX0ZJTFRFUl9UWVBFIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSArIDYpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB2NGwyX21wZWdfY3gyMzQxeF92aWRlb19tZWRpYW5fZmlsdGVyX3R5cGUgewotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX01FRElBTl9GSUxURVJfVFlQRV9PRkYgPSAwLAotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX01FRElBTl9GSUxURVJfVFlQRV9IT1IgPSAxLAotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX01FRElBTl9GSUxURVJfVFlQRV9WRVJUID0gMiwKKyAgVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fTUVESUFOX0ZJTFRFUl9UWVBFX09GRiA9IDAsCisgIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX01FRElBTl9GSUxURVJfVFlQRV9IT1IgPSAxLAorICBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19NRURJQU5fRklMVEVSX1RZUEVfVkVSVCA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTVBFR19DWDIzNDFYX1ZJREVPX01FRElBTl9GSUxURVJfVFlQRV9IT1JfVkVSVCA9IDMsCi0gVjRMMl9NUEVHX0NYMjM0MVhfVklERU9fTUVESUFOX0ZJTFRFUl9UWVBFX0RJQUcgPSA0LAorICBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19NRURJQU5fRklMVEVSX1RZUEVfSE9SX1ZFUlQgPSAzLAorICBWNEwyX01QRUdfQ1gyMzQxWF9WSURFT19NRURJQU5fRklMVEVSX1RZUEVfRElBRyA9IDQsCiB9OwotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fTFVNQV9NRURJQU5fRklMVEVSX0JPVFRPTSAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UrNykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1ZJREVPX0xVTUFfTUVESUFOX0ZJTFRFUl9CT1RUT00gKFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9CQVNFICsgNykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9WSURFT19MVU1BX01FRElBTl9GSUxURVJfVE9QIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSs4KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fQ0hST01BX01FRElBTl9GSUxURVJfQk9UVE9NIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSs5KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fQ0hST01BX01FRElBTl9GSUxURVJfVE9QIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSsxMCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19DWDIzNDFYX1NUUkVBTV9JTlNFUlRfTkFWX1BBQ0tFVFMgKFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9CQVNFKzExKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fTFVNQV9NRURJQU5fRklMVEVSX1RPUCAoVjRMMl9DSURfTVBFR19DWDIzNDFYX0JBU0UgKyA4KQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX0NYMjM0MVhfVklERU9fQ0hST01BX01FRElBTl9GSUxURVJfQk9UVE9NIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSArIDkpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9WSURFT19DSFJPTUFfTUVESUFOX0ZJTFRFUl9UT1AgKFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9CQVNFICsgMTApCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfQ1gyMzQxWF9TVFJFQU1fSU5TRVJUX05BVl9QQUNLRVRTIChWNEwyX0NJRF9NUEVHX0NYMjM0MVhfQkFTRSArIDExKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFIChWNEwyX0NUUkxfQ0xBU1NfTVBFRyB8IDB4MTEwMCkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19ERUNPREVSX0gyNjRfRElTUExBWV9ERUxBWSAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFKzApCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fREVDT0RFUl9IMjY0X0RJU1BMQVlfREVMQVlfRU5BQkxFIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UrMSkKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19GUkFNRV9TS0lQX01PREUgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSsyKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX0RFQ09ERVJfSDI2NF9ESVNQTEFZX0RFTEFZIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UgKyAwKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX0RFQ09ERVJfSDI2NF9ESVNQTEFZX0RFTEFZX0VOQUJMRSAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFICsgMSkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19GUkFNRV9TS0lQX01PREUgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSArIDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB2NGwyX21wZWdfbWZjNTFfdmlkZW9fZnJhbWVfc2tpcF9tb2RlIHsKLSBWNEwyX01QRUdfTUZDNTFfVklERU9fRlJBTUVfU0tJUF9NT0RFX0RJU0FCTEVEID0gMCwKLSBWNEwyX01QRUdfTUZDNTFfVklERU9fRlJBTUVfU0tJUF9NT0RFX0xFVkVMX0xJTUlUID0gMSwKLSBWNEwyX01QRUdfTUZDNTFfVklERU9fRlJBTUVfU0tJUF9NT0RFX0JVRl9MSU1JVCA9IDIsCisgIFY0TDJfTVBFR19NRkM1MV9WSURFT19GUkFNRV9TS0lQX01PREVfRElTQUJMRUQgPSAwLAorICBWNEwyX01QRUdfTUZDNTFfVklERU9fRlJBTUVfU0tJUF9NT0RFX0xFVkVMX0xJTUlUID0gMSwKKyAgVjRMMl9NUEVHX01GQzUxX1ZJREVPX0ZSQU1FX1NLSVBfTU9ERV9CVUZfTElNSVQgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fRk9SQ0VfRlJBTUVfVFlQRSAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFKzMpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fRk9SQ0VfRlJBTUVfVFlQRSAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFICsgMykKIGVudW0gdjRsMl9tcGVnX21mYzUxX3ZpZGVvX2ZvcmNlX2ZyYW1lX3R5cGUgewotIFY0TDJfTVBFR19NRkM1MV9WSURFT19GT1JDRV9GUkFNRV9UWVBFX0RJU0FCTEVEID0gMCwKKyAgVjRMMl9NUEVHX01GQzUxX1ZJREVPX0ZPUkNFX0ZSQU1FX1RZUEVfRElTQUJMRUQgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01QRUdfTUZDNTFfVklERU9fRk9SQ0VfRlJBTUVfVFlQRV9JX0ZSQU1FID0gMSwKLSBWNEwyX01QRUdfTUZDNTFfVklERU9fRk9SQ0VfRlJBTUVfVFlQRV9OT1RfQ09ERUQgPSAyLAorICBWNEwyX01QRUdfTUZDNTFfVklERU9fRk9SQ0VfRlJBTUVfVFlQRV9JX0ZSQU1FID0gMSwKKyAgVjRMMl9NUEVHX01GQzUxX1ZJREVPX0ZPUkNFX0ZSQU1FX1RZUEVfTk9UX0NPREVEID0gMiwKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fUEFERElORyAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFKzQpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fUEFERElORyAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFICsgNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fUEFERElOR19ZVVYgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSs1KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX1JDX0ZJWEVEX1RBUkdFVF9CSVQgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSs2KQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX1JDX1JFQUNUSU9OX0NPRUZGIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UrNykKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19IMjY0X0FEQVBUSVZFX1JDX0FDVElWSVRZIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UrNTApCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fUEFERElOR19ZVVYgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSArIDUpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fUkNfRklYRURfVEFSR0VUX0JJVCAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFICsgNikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19SQ19SRUFDVElPTl9DT0VGRiAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFICsgNykKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19IMjY0X0FEQVBUSVZFX1JDX0FDVElWSVRZIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UgKyA1MCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fSDI2NF9BREFQVElWRV9SQ19EQVJLIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UrNTEpCi0jZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fSDI2NF9BREFQVElWRV9SQ19TTU9PVEggKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSs1MikKLSNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19IMjY0X0FEQVBUSVZFX1JDX1NUQVRJQyAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFKzUzKQotI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX0gyNjRfTlVNX1JFRl9QSUNfRk9SX1AgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSs1NCkKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19IMjY0X0FEQVBUSVZFX1JDX0RBUksgKFY0TDJfQ0lEX01QRUdfTUZDNTFfQkFTRSArIDUxKQorI2RlZmluZSBWNEwyX0NJRF9NUEVHX01GQzUxX1ZJREVPX0gyNjRfQURBUFRJVkVfUkNfU01PT1RIIChWNEwyX0NJRF9NUEVHX01GQzUxX0JBU0UgKyA1MikKKyNkZWZpbmUgVjRMMl9DSURfTVBFR19NRkM1MV9WSURFT19IMjY0X0FEQVBUSVZFX1JDX1NUQVRJQyAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFICsgNTMpCisjZGVmaW5lIFY0TDJfQ0lEX01QRUdfTUZDNTFfVklERU9fSDI2NF9OVU1fUkVGX1BJQ19GT1JfUCAoVjRMMl9DSURfTVBFR19NRkM1MV9CQVNFICsgNTQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSAoVjRMMl9DVFJMX0NMQVNTX0NBTUVSQSB8IDB4OTAwKQogI2RlZmluZSBWNEwyX0NJRF9DQU1FUkFfQ0xBU1MgKFY0TDJfQ1RSTF9DTEFTU19DQU1FUkEgfCAxKQotI2RlZmluZSBWNEwyX0NJRF9FWFBPU1VSRV9BVVRPIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsxKQorI2RlZmluZSBWNEwyX0NJRF9FWFBPU1VSRV9BVVRPIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDEpCiBlbnVtIHY0bDJfZXhwb3N1cmVfYXV0b190eXBlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9FWFBPU1VSRV9BVVRPID0gMCwKLSBWNEwyX0VYUE9TVVJFX01BTlVBTCA9IDEsCi0gVjRMMl9FWFBPU1VSRV9TSFVUVEVSX1BSSU9SSVRZID0gMiwKLSBWNEwyX0VYUE9TVVJFX0FQRVJUVVJFX1BSSU9SSVRZID0gMworICBWNEwyX0VYUE9TVVJFX0FVVE8gPSAwLAorICBWNEwyX0VYUE9TVVJFX01BTlVBTCA9IDEsCisgIFY0TDJfRVhQT1NVUkVfU0hVVFRFUl9QUklPUklUWSA9IDIsCisgIFY0TDJfRVhQT1NVUkVfQVBFUlRVUkVfUFJJT1JJVFkgPSAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgVjRMMl9DSURfRVhQT1NVUkVfQUJTT0xVVEUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzIpCi0jZGVmaW5lIFY0TDJfQ0lEX0VYUE9TVVJFX0FVVE9fUFJJT1JJVFkgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzMpCi0jZGVmaW5lIFY0TDJfQ0lEX1BBTl9SRUxBVElWRSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrNCkKKyNkZWZpbmUgVjRMMl9DSURfRVhQT1NVUkVfQUJTT0xVVEUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMikKKyNkZWZpbmUgVjRMMl9DSURfRVhQT1NVUkVfQVVUT19QUklPUklUWSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAzKQorI2RlZmluZSBWNEwyX0NJRF9QQU5fUkVMQVRJVkUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX1RJTFRfUkVMQVRJVkUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzUpCi0jZGVmaW5lIFY0TDJfQ0lEX1BBTl9SRVNFVCAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrNikKLSNkZWZpbmUgVjRMMl9DSURfVElMVF9SRVNFVCAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrNykKLSNkZWZpbmUgVjRMMl9DSURfUEFOX0FCU09MVVRFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSs4KQorI2RlZmluZSBWNEwyX0NJRF9USUxUX1JFTEFUSVZFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDUpCisjZGVmaW5lIFY0TDJfQ0lEX1BBTl9SRVNFVCAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyA2KQorI2RlZmluZSBWNEwyX0NJRF9USUxUX1JFU0VUIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDcpCisjZGVmaW5lIFY0TDJfQ0lEX1BBTl9BQlNPTFVURSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyA4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfVElMVF9BQlNPTFVURSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrOSkKLSNkZWZpbmUgVjRMMl9DSURfRk9DVVNfQUJTT0xVVEUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzEwKQotI2RlZmluZSBWNEwyX0NJRF9GT0NVU19SRUxBVElWRSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrMTEpCi0jZGVmaW5lIFY0TDJfQ0lEX0ZPQ1VTX0FVVE8gKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzEyKQorI2RlZmluZSBWNEwyX0NJRF9USUxUX0FCU09MVVRFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDkpCisjZGVmaW5lIFY0TDJfQ0lEX0ZPQ1VTX0FCU09MVVRFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDEwKQorI2RlZmluZSBWNEwyX0NJRF9GT0NVU19SRUxBVElWRSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAxMSkKKyNkZWZpbmUgVjRMMl9DSURfRk9DVVNfQVVUTyAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAxMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX1pPT01fQUJTT0xVVEUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzEzKQotI2RlZmluZSBWNEwyX0NJRF9aT09NX1JFTEFUSVZFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsxNCkKLSNkZWZpbmUgVjRMMl9DSURfWk9PTV9DT05USU5VT1VTIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsxNSkKLSNkZWZpbmUgVjRMMl9DSURfUFJJVkFDWSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrMTYpCisjZGVmaW5lIFY0TDJfQ0lEX1pPT01fQUJTT0xVVEUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMTMpCisjZGVmaW5lIFY0TDJfQ0lEX1pPT01fUkVMQVRJVkUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMTQpCisjZGVmaW5lIFY0TDJfQ0lEX1pPT01fQ09OVElOVU9VUyAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAxNSkKKyNkZWZpbmUgVjRMMl9DSURfUFJJVkFDWSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAxNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX0lSSVNfQUJTT0xVVEUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzE3KQotI2RlZmluZSBWNEwyX0NJRF9JUklTX1JFTEFUSVZFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsxOCkKLSNkZWZpbmUgVjRMMl9DSURfQVVUT19FWFBPU1VSRV9CSUFTIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsxOSkKLSNkZWZpbmUgVjRMMl9DSURfQVVUT19OX1BSRVNFVF9XSElURV9CQUxBTkNFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSsyMCkKKyNkZWZpbmUgVjRMMl9DSURfSVJJU19BQlNPTFVURSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAxNykKKyNkZWZpbmUgVjRMMl9DSURfSVJJU19SRUxBVElWRSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAxOCkKKyNkZWZpbmUgVjRMMl9DSURfQVVUT19FWFBPU1VSRV9CSUFTIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDE5KQorI2RlZmluZSBWNEwyX0NJRF9BVVRPX05fUFJFU0VUX1dISVRFX0JBTEFOQ0UgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMjApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB2NGwyX2F1dG9fbl9wcmVzZXRfd2hpdGVfYmFsYW5jZSB7Ci0gVjRMMl9XSElURV9CQUxBTkNFX01BTlVBTCA9IDAsCi0gVjRMMl9XSElURV9CQUxBTkNFX0FVVE8gPSAxLAotIFY0TDJfV0hJVEVfQkFMQU5DRV9JTkNBTkRFU0NFTlQgPSAyLAorICBWNEwyX1dISVRFX0JBTEFOQ0VfTUFOVUFMID0gMCwKKyAgVjRMMl9XSElURV9CQUxBTkNFX0FVVE8gPSAxLAorICBWNEwyX1dISVRFX0JBTEFOQ0VfSU5DQU5ERVNDRU5UID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9XSElURV9CQUxBTkNFX0ZMVU9SRVNDRU5UID0gMywKLSBWNEwyX1dISVRFX0JBTEFOQ0VfRkxVT1JFU0NFTlRfSCA9IDQsCi0gVjRMMl9XSElURV9CQUxBTkNFX0hPUklaT04gPSA1LAotIFY0TDJfV0hJVEVfQkFMQU5DRV9EQVlMSUdIVCA9IDYsCisgIFY0TDJfV0hJVEVfQkFMQU5DRV9GTFVPUkVTQ0VOVCA9IDMsCisgIFY0TDJfV0hJVEVfQkFMQU5DRV9GTFVPUkVTQ0VOVF9IID0gNCwKKyAgVjRMMl9XSElURV9CQUxBTkNFX0hPUklaT04gPSA1LAorICBWNEwyX1dISVRFX0JBTEFOQ0VfREFZTElHSFQgPSA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX1dISVRFX0JBTEFOQ0VfRkxBU0ggPSA3LAotIFY0TDJfV0hJVEVfQkFMQU5DRV9DTE9VRFkgPSA4LAotIFY0TDJfV0hJVEVfQkFMQU5DRV9TSEFERSA9IDksCisgIFY0TDJfV0hJVEVfQkFMQU5DRV9GTEFTSCA9IDcsCisgIFY0TDJfV0hJVEVfQkFMQU5DRV9DTE9VRFkgPSA4LAorICBWNEwyX1dISVRFX0JBTEFOQ0VfU0hBREUgPSA5LAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX1dJREVfRFlOQU1JQ19SQU5HRSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrMjEpCi0jZGVmaW5lIFY0TDJfQ0lEX0lNQUdFX1NUQUJJTElaQVRJT04gKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzIyKQotI2RlZmluZSBWNEwyX0NJRF9JU09fU0VOU0lUSVZJVFkgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzIzKQotI2RlZmluZSBWNEwyX0NJRF9JU09fU0VOU0lUSVZJVFlfQVVUTyAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrMjQpCisjZGVmaW5lIFY0TDJfQ0lEX1dJREVfRFlOQU1JQ19SQU5HRSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAyMSkKKyNkZWZpbmUgVjRMMl9DSURfSU1BR0VfU1RBQklMSVpBVElPTiAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAyMikKKyNkZWZpbmUgVjRMMl9DSURfSVNPX1NFTlNJVElWSVRZIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDIzKQorI2RlZmluZSBWNEwyX0NJRF9JU09fU0VOU0lUSVZJVFlfQVVUTyAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAyNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfaXNvX3NlbnNpdGl2aXR5X2F1dG9fdHlwZSB7Ci0gVjRMMl9JU09fU0VOU0lUSVZJVFlfTUFOVUFMID0gMCwKLSBWNEwyX0lTT19TRU5TSVRJVklUWV9BVVRPID0gMSwKKyAgVjRMMl9JU09fU0VOU0lUSVZJVFlfTUFOVUFMID0gMCwKKyAgVjRMMl9JU09fU0VOU0lUSVZJVFlfQVVUTyA9IDEsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfRVhQT1NVUkVfTUVURVJJTkcgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzI1KQorI2RlZmluZSBWNEwyX0NJRF9FWFBPU1VSRV9NRVRFUklORyAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAyNSkKIGVudW0gdjRsMl9leHBvc3VyZV9tZXRlcmluZyB7Ci0gVjRMMl9FWFBPU1VSRV9NRVRFUklOR19BVkVSQUdFID0gMCwKLSBWNEwyX0VYUE9TVVJFX01FVEVSSU5HX0NFTlRFUl9XRUlHSFRFRCA9IDEsCisgIFY0TDJfRVhQT1NVUkVfTUVURVJJTkdfQVZFUkFHRSA9IDAsCisgIFY0TDJfRVhQT1NVUkVfTUVURVJJTkdfQ0VOVEVSX1dFSUdIVEVEID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9FWFBPU1VSRV9NRVRFUklOR19TUE9UID0gMiwKLSBWNEwyX0VYUE9TVVJFX01FVEVSSU5HX01BVFJJWCA9IDMsCisgIFY0TDJfRVhQT1NVUkVfTUVURVJJTkdfU1BPVCA9IDIsCisgIFY0TDJfRVhQT1NVUkVfTUVURVJJTkdfTUFUUklYID0gMywKIH07Ci0jZGVmaW5lIFY0TDJfQ0lEX1NDRU5FX01PREUgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzI2KQorI2RlZmluZSBWNEwyX0NJRF9TQ0VORV9NT0RFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSArIDI2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9zY2VuZV9tb2RlIHsKLSBWNEwyX1NDRU5FX01PREVfTk9ORSA9IDAsCi0gVjRMMl9TQ0VORV9NT0RFX0JBQ0tMSUdIVCA9IDEsCi0gVjRMMl9TQ0VORV9NT0RFX0JFQUNIX1NOT1cgPSAyLAorICBWNEwyX1NDRU5FX01PREVfTk9ORSA9IDAsCisgIFY0TDJfU0NFTkVfTU9ERV9CQUNLTElHSFQgPSAxLAorICBWNEwyX1NDRU5FX01PREVfQkVBQ0hfU05PVyA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfU0NFTkVfTU9ERV9DQU5ETEVfTElHSFQgPSAzLAotIFY0TDJfU0NFTkVfTU9ERV9EQVdOX0RVU0sgPSA0LAotIFY0TDJfU0NFTkVfTU9ERV9GQUxMX0NPTE9SUyA9IDUsCi0gVjRMMl9TQ0VORV9NT0RFX0ZJUkVXT1JLUyA9IDYsCisgIFY0TDJfU0NFTkVfTU9ERV9DQU5ETEVfTElHSFQgPSAzLAorICBWNEwyX1NDRU5FX01PREVfREFXTl9EVVNLID0gNCwKKyAgVjRMMl9TQ0VORV9NT0RFX0ZBTExfQ09MT1JTID0gNSwKKyAgVjRMMl9TQ0VORV9NT0RFX0ZJUkVXT1JLUyA9IDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfU0NFTkVfTU9ERV9MQU5EU0NBUEUgPSA3LAotIFY0TDJfU0NFTkVfTU9ERV9OSUdIVCA9IDgsCi0gVjRMMl9TQ0VORV9NT0RFX1BBUlRZX0lORE9PUiA9IDksCi0gVjRMMl9TQ0VORV9NT0RFX1BPUlRSQUlUID0gMTAsCisgIFY0TDJfU0NFTkVfTU9ERV9MQU5EU0NBUEUgPSA3LAorICBWNEwyX1NDRU5FX01PREVfTklHSFQgPSA4LAorICBWNEwyX1NDRU5FX01PREVfUEFSVFlfSU5ET09SID0gOSwKKyAgVjRMMl9TQ0VORV9NT0RFX1BPUlRSQUlUID0gMTAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfU0NFTkVfTU9ERV9TUE9SVFMgPSAxMSwKLSBWNEwyX1NDRU5FX01PREVfU1VOU0VUID0gMTIsCi0gVjRMMl9TQ0VORV9NT0RFX1RFWFQgPSAxMywKKyAgVjRMMl9TQ0VORV9NT0RFX1NQT1JUUyA9IDExLAorICBWNEwyX1NDRU5FX01PREVfU1VOU0VUID0gMTIsCisgIFY0TDJfU0NFTkVfTU9ERV9URVhUID0gMTMsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9DSURfM0FfTE9DSyAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrMjcpCisjZGVmaW5lIFY0TDJfQ0lEXzNBX0xPQ0sgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMjcpCiAjZGVmaW5lIFY0TDJfTE9DS19FWFBPU1VSRSAoMSA8PCAwKQogI2RlZmluZSBWNEwyX0xPQ0tfV0hJVEVfQkFMQU5DRSAoMSA8PCAxKQogI2RlZmluZSBWNEwyX0xPQ0tfRk9DVVMgKDEgPDwgMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQ0lEX0FVVE9fRk9DVVNfU1RBUlQgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzI4KQotI2RlZmluZSBWNEwyX0NJRF9BVVRPX0ZPQ1VTX1NUT1AgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFKzI5KQotI2RlZmluZSBWNEwyX0NJRF9BVVRPX0ZPQ1VTX1NUQVRVUyAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UrMzApCisjZGVmaW5lIFY0TDJfQ0lEX0FVVE9fRk9DVVNfU1RBUlQgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMjgpCisjZGVmaW5lIFY0TDJfQ0lEX0FVVE9fRk9DVVNfU1RPUCAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAyOSkKKyNkZWZpbmUgVjRMMl9DSURfQVVUT19GT0NVU19TVEFUVVMgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMzApCiAjZGVmaW5lIFY0TDJfQVVUT19GT0NVU19TVEFUVVNfSURMRSAoMCA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9BVVRPX0ZPQ1VTX1NUQVRVU19CVVNZICgxIDw8IDApCiAjZGVmaW5lIFY0TDJfQVVUT19GT0NVU19TVEFUVVNfUkVBQ0hFRCAoMSA8PCAxKQogI2RlZmluZSBWNEwyX0FVVE9fRk9DVVNfU1RBVFVTX0ZBSUxFRCAoMSA8PCAyKQotI2RlZmluZSBWNEwyX0NJRF9BVVRPX0ZPQ1VTX1JBTkdFIChWNEwyX0NJRF9DQU1FUkFfQ0xBU1NfQkFTRSszMSkKKyNkZWZpbmUgVjRMMl9DSURfQVVUT19GT0NVU19SQU5HRSAoVjRMMl9DSURfQ0FNRVJBX0NMQVNTX0JBU0UgKyAzMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfYXV0b19mb2N1c19yYW5nZSB7Ci0gVjRMMl9BVVRPX0ZPQ1VTX1JBTkdFX0FVVE8gPSAwLAotIFY0TDJfQVVUT19GT0NVU19SQU5HRV9OT1JNQUwgPSAxLAotIFY0TDJfQVVUT19GT0NVU19SQU5HRV9NQUNSTyA9IDIsCisgIFY0TDJfQVVUT19GT0NVU19SQU5HRV9BVVRPID0gMCwKKyAgVjRMMl9BVVRPX0ZPQ1VTX1JBTkdFX05PUk1BTCA9IDEsCisgIFY0TDJfQVVUT19GT0NVU19SQU5HRV9NQUNSTyA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfQVVUT19GT0NVU19SQU5HRV9JTkZJTklUWSA9IDMsCisgIFY0TDJfQVVUT19GT0NVU19SQU5HRV9JTkZJTklUWSA9IDMsCiB9OworI2RlZmluZSBWNEwyX0NJRF9QQU5fU1BFRUQgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMzIpCisjZGVmaW5lIFY0TDJfQ0lEX1RJTFRfU1BFRUQgKFY0TDJfQ0lEX0NBTUVSQV9DTEFTU19CQVNFICsgMzMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFIChWNEwyX0NUUkxfQ0xBU1NfRk1fVFggfCAweDkwMCkKICNkZWZpbmUgVjRMMl9DSURfRk1fVFhfQ0xBU1MgKFY0TDJfQ1RSTF9DTEFTU19GTV9UWCB8IDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9SRFNfVFhfREVWSUFUSU9OIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgMSkKICNkZWZpbmUgVjRMMl9DSURfUkRTX1RYX1BJIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgMikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX1JEU19UWF9QVFkgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyAzKQogI2RlZmluZSBWNEwyX0NJRF9SRFNfVFhfUFNfTkFNRSAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9SRFNfVFhfUkFESU9fVEVYVCAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDYpCisjZGVmaW5lIFY0TDJfQ0lEX1JEU19UWF9NT05PX1NURVJFTyAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NJRF9SRFNfVFhfQVJUSUZJQ0lBTF9IRUFEIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgOCkKKyNkZWZpbmUgVjRMMl9DSURfUkRTX1RYX0NPTVBSRVNTRUQgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyA5KQorI2RlZmluZSBWNEwyX0NJRF9SRFNfVFhfRFlOQU1JQ19QVFkgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyAxMCkKKyNkZWZpbmUgVjRMMl9DSURfUkRTX1RYX1RSQUZGSUNfQU5OT1VOQ0VNRU5UIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgMTEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NJRF9SRFNfVFhfVFJBRkZJQ19QUk9HUkFNIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgMTIpCisjZGVmaW5lIFY0TDJfQ0lEX1JEU19UWF9NVVNJQ19TUEVFQ0ggKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyAxMykKKyNkZWZpbmUgVjRMMl9DSURfUkRTX1RYX0FMVF9GUkVRU19FTkFCTEUgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyAxNCkKKyNkZWZpbmUgVjRMMl9DSURfUkRTX1RYX0FMVF9GUkVRUyAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDE1KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfQVVESU9fTElNSVRFUl9FTkFCTEVEIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgNjQpCiAjZGVmaW5lIFY0TDJfQ0lEX0FVRElPX0xJTUlURVJfUkVMRUFTRV9USU1FIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgNjUpCiAjZGVmaW5lIFY0TDJfQ0lEX0FVRElPX0xJTUlURVJfREVWSUFUSU9OIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgNjYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9BVURJT19DT01QUkVTU0lPTl9FTkFCTEVEIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgODApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9BVURJT19DT01QUkVTU0lPTl9HQUlOIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgODEpCiAjZGVmaW5lIFY0TDJfQ0lEX0FVRElPX0NPTVBSRVNTSU9OX1RIUkVTSE9MRCAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDgyKQogI2RlZmluZSBWNEwyX0NJRF9BVURJT19DT01QUkVTU0lPTl9BVFRBQ0tfVElNRSAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDgzKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfQVVESU9fQ09NUFJFU1NJT05fUkVMRUFTRV9USU1FIChWNEwyX0NJRF9GTV9UWF9DTEFTU19CQVNFICsgODQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9QSUxPVF9UT05FX0VOQUJMRUQgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyA5NikKICNkZWZpbmUgVjRMMl9DSURfUElMT1RfVE9ORV9ERVZJQVRJT04gKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyA5NykKICNkZWZpbmUgVjRMMl9DSURfUElMT1RfVE9ORV9GUkVRVUVOQ1kgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyA5OCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX1RVTkVfUFJFRU1QSEFTSVMgKFY0TDJfQ0lEX0ZNX1RYX0NMQVNTX0JBU0UgKyAxMTIpCi1lbnVtIHY0bDJfcHJlZW1waGFzaXMgewotIFY0TDJfUFJFRU1QSEFTSVNfRElTQUJMRUQgPSAwLAotIFY0TDJfUFJFRU1QSEFTSVNfNTBfdVMgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX1BSRUVNUEhBU0lTXzc1X3VTID0gMiwKK2VudW0gdjRsMl9wcmVlbXBoYXNpcyB7CisgIFY0TDJfUFJFRU1QSEFTSVNfRElTQUJMRUQgPSAwLAorICBWNEwyX1BSRUVNUEhBU0lTXzUwX3VTID0gMSwKKyAgVjRMMl9QUkVFTVBIQVNJU183NV91UyA9IDIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVjRMMl9DSURfVFVORV9QT1dFUl9MRVZFTCAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDExMykKICNkZWZpbmUgVjRMMl9DSURfVFVORV9BTlRFTk5BX0NBUEFDSVRPUiAoVjRMMl9DSURfRk1fVFhfQ0xBU1NfQkFTRSArIDExNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0ZMQVNIX0NMQVNTX0JBU0UgKFY0TDJfQ1RSTF9DTEFTU19GTEFTSCB8IDB4OTAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfRkxBU0hfQ0xBU1MgKFY0TDJfQ1RSTF9DTEFTU19GTEFTSCB8IDEpCiAjZGVmaW5lIFY0TDJfQ0lEX0ZMQVNIX0xFRF9NT0RFIChWNEwyX0NJRF9GTEFTSF9DTEFTU19CQVNFICsgMSkKIGVudW0gdjRsMl9mbGFzaF9sZWRfbW9kZSB7CisgIFY0TDJfRkxBU0hfTEVEX01PREVfTk9ORSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9GTEFTSF9MRURfTU9ERV9OT05FLAotIFY0TDJfRkxBU0hfTEVEX01PREVfRkxBU0gsCi0gVjRMMl9GTEFTSF9MRURfTU9ERV9UT1JDSCwKKyAgVjRMMl9GTEFTSF9MRURfTU9ERV9GTEFTSCwKKyAgVjRMMl9GTEFTSF9MRURfTU9ERV9UT1JDSCwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9GTEFTSF9TVFJPQkVfU09VUkNFIChWNEwyX0NJRF9GTEFTSF9DTEFTU19CQVNFICsgMikKLWVudW0gdjRsMl9mbGFzaF9zdHJvYmVfc291cmNlIHsKLSBWNEwyX0ZMQVNIX1NUUk9CRV9TT1VSQ0VfU09GVFdBUkUsCi0gVjRMMl9GTEFTSF9TVFJPQkVfU09VUkNFX0VYVEVSTkFMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK2VudW0gdjRsMl9mbGFzaF9zdHJvYmVfc291cmNlIHsKKyAgVjRMMl9GTEFTSF9TVFJPQkVfU09VUkNFX1NPRlRXQVJFLAorICBWNEwyX0ZMQVNIX1NUUk9CRV9TT1VSQ0VfRVhURVJOQUwsCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfRkxBU0hfU1RST0JFIChWNEwyX0NJRF9GTEFTSF9DTEFTU19CQVNFICsgMykKICNkZWZpbmUgVjRMMl9DSURfRkxBU0hfU1RST0JFX1NUT1AgKFY0TDJfQ0lEX0ZMQVNIX0NMQVNTX0JBU0UgKyA0KQogI2RlZmluZSBWNEwyX0NJRF9GTEFTSF9TVFJPQkVfU1RBVFVTIChWNEwyX0NJRF9GTEFTSF9DTEFTU19CQVNFICsgNSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0ZMQVNIX1RJTUVPVVQgKFY0TDJfQ0lEX0ZMQVNIX0NMQVNTX0JBU0UgKyA2KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfRkxBU0hfSU5URU5TSVRZIChWNEwyX0NJRF9GTEFTSF9DTEFTU19CQVNFICsgNykKICNkZWZpbmUgVjRMMl9DSURfRkxBU0hfVE9SQ0hfSU5URU5TSVRZIChWNEwyX0NJRF9GTEFTSF9DTEFTU19CQVNFICsgOCkKICNkZWZpbmUgVjRMMl9DSURfRkxBU0hfSU5ESUNBVE9SX0lOVEVOU0lUWSAoVjRMMl9DSURfRkxBU0hfQ0xBU1NfQkFTRSArIDkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9GTEFTSF9GQVVMVCAoVjRMMl9DSURfRkxBU0hfQ0xBU1NfQkFTRSArIDEwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9GTEFTSF9GQVVMVF9PVkVSX1ZPTFRBR0UgKDEgPDwgMCkKICNkZWZpbmUgVjRMMl9GTEFTSF9GQVVMVF9USU1FT1VUICgxIDw8IDEpCiAjZGVmaW5lIFY0TDJfRkxBU0hfRkFVTFRfT1ZFUl9URU1QRVJBVFVSRSAoMSA8PCAyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9GTEFTSF9GQVVMVF9TSE9SVF9DSVJDVUlUICgxIDw8IDMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0ZMQVNIX0ZBVUxUX09WRVJfQ1VSUkVOVCAoMSA8PCA0KQogI2RlZmluZSBWNEwyX0ZMQVNIX0ZBVUxUX0lORElDQVRPUiAoMSA8PCA1KQotI2RlZmluZSBWNEwyX0NJRF9GTEFTSF9DSEFSR0UgKFY0TDJfQ0lEX0ZMQVNIX0NMQVNTX0JBU0UgKyAxMSkKKyNkZWZpbmUgVjRMMl9GTEFTSF9GQVVMVF9VTkRFUl9WT0xUQUdFICgxIDw8IDYpCisjZGVmaW5lIFY0TDJfRkxBU0hfRkFVTFRfSU5QVVRfVk9MVEFHRSAoMSA8PCA3KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9GTEFTSF9GQVVMVF9MRURfT1ZFUl9URU1QRVJBVFVSRSAoMSA8PCA4KQorI2RlZmluZSBWNEwyX0NJRF9GTEFTSF9DSEFSR0UgKFY0TDJfQ0lEX0ZMQVNIX0NMQVNTX0JBU0UgKyAxMSkKICNkZWZpbmUgVjRMMl9DSURfRkxBU0hfUkVBRFkgKFY0TDJfQ0lEX0ZMQVNIX0NMQVNTX0JBU0UgKyAxMikKICNkZWZpbmUgVjRMMl9DSURfSlBFR19DTEFTU19CQVNFIChWNEwyX0NUUkxfQ0xBU1NfSlBFRyB8IDB4OTAwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSURfSlBFR19DTEFTUyAoVjRMMl9DVFJMX0NMQVNTX0pQRUcgfCAxKQogI2RlZmluZSBWNEwyX0NJRF9KUEVHX0NIUk9NQV9TVUJTQU1QTElORyAoVjRMMl9DSURfSlBFR19DTEFTU19CQVNFICsgMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfanBlZ19jaHJvbWFfc3Vic2FtcGxpbmcgewotIFY0TDJfSlBFR19DSFJPTUFfU1VCU0FNUExJTkdfNDQ0ID0gMCwKLSBWNEwyX0pQRUdfQ0hST01BX1NVQlNBTVBMSU5HXzQyMiA9IDEsCi0gVjRMMl9KUEVHX0NIUk9NQV9TVUJTQU1QTElOR180MjAgPSAyLAorICBWNEwyX0pQRUdfQ0hST01BX1NVQlNBTVBMSU5HXzQ0NCA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfSlBFR19DSFJPTUFfU1VCU0FNUExJTkdfNDExID0gMywKLSBWNEwyX0pQRUdfQ0hST01BX1NVQlNBTVBMSU5HXzQxMCA9IDQsCi0gVjRMMl9KUEVHX0NIUk9NQV9TVUJTQU1QTElOR19HUkFZID0gNSwKKyAgVjRMMl9KUEVHX0NIUk9NQV9TVUJTQU1QTElOR180MjIgPSAxLAorICBWNEwyX0pQRUdfQ0hST01BX1NVQlNBTVBMSU5HXzQyMCA9IDIsCisgIFY0TDJfSlBFR19DSFJPTUFfU1VCU0FNUExJTkdfNDExID0gMywKKyAgVjRMMl9KUEVHX0NIUk9NQV9TVUJTQU1QTElOR180MTAgPSA0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVjRMMl9KUEVHX0NIUk9NQV9TVUJTQU1QTElOR19HUkFZID0gNSwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9KUEVHX1JFU1RBUlRfSU5URVJWQUwgKFY0TDJfQ0lEX0pQRUdfQ0xBU1NfQkFTRSArIDIpCiAjZGVmaW5lIFY0TDJfQ0lEX0pQRUdfQ09NUFJFU1NJT05fUVVBTElUWSAoVjRMMl9DSURfSlBFR19DTEFTU19CQVNFICsgMykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0pQRUdfQUNUSVZFX01BUktFUiAoVjRMMl9DSURfSlBFR19DTEFTU19CQVNFICsgNCkKICNkZWZpbmUgVjRMMl9KUEVHX0FDVElWRV9NQVJLRVJfQVBQMCAoMSA8PCAwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9KUEVHX0FDVElWRV9NQVJLRVJfQVBQMSAoMSA8PCAxKQogI2RlZmluZSBWNEwyX0pQRUdfQUNUSVZFX01BUktFUl9DT00gKDEgPDwgMTYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0pQRUdfQUNUSVZFX01BUktFUl9EUVQgKDEgPDwgMTcpCiAjZGVmaW5lIFY0TDJfSlBFR19BQ1RJVkVfTUFSS0VSX0RIVCAoMSA8PCAxOCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0lNQUdFX1NPVVJDRV9DTEFTU19CQVNFIChWNEwyX0NUUkxfQ0xBU1NfSU1BR0VfU09VUkNFIHwgMHg5MDApCiAjZGVmaW5lIFY0TDJfQ0lEX0lNQUdFX1NPVVJDRV9DTEFTUyAoVjRMMl9DVFJMX0NMQVNTX0lNQUdFX1NPVVJDRSB8IDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9WQkxBTksgKFY0TDJfQ0lEX0lNQUdFX1NPVVJDRV9DTEFTU19CQVNFICsgMSkKICNkZWZpbmUgVjRMMl9DSURfSEJMQU5LIChWNEwyX0NJRF9JTUFHRV9TT1VSQ0VfQ0xBU1NfQkFTRSArIDIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9BTkFMT0dVRV9HQUlOIChWNEwyX0NJRF9JTUFHRV9TT1VSQ0VfQ0xBU1NfQkFTRSArIDMpCisjZGVmaW5lIFY0TDJfQ0lEX1RFU1RfUEFUVEVSTl9SRUQgKFY0TDJfQ0lEX0lNQUdFX1NPVVJDRV9DTEFTU19CQVNFICsgNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQ0lEX1RFU1RfUEFUVEVSTl9HUkVFTlIgKFY0TDJfQ0lEX0lNQUdFX1NPVVJDRV9DTEFTU19CQVNFICsgNSkKKyNkZWZpbmUgVjRMMl9DSURfVEVTVF9QQVRURVJOX0JMVUUgKFY0TDJfQ0lEX0lNQUdFX1NPVVJDRV9DTEFTU19CQVNFICsgNikKKyNkZWZpbmUgVjRMMl9DSURfVEVTVF9QQVRURVJOX0dSRUVOQiAoVjRMMl9DSURfSU1BR0VfU09VUkNFX0NMQVNTX0JBU0UgKyA3KQogI2RlZmluZSBWNEwyX0NJRF9JTUFHRV9QUk9DX0NMQVNTX0JBU0UgKFY0TDJfQ1RSTF9DTEFTU19JTUFHRV9QUk9DIHwgMHg5MDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NJRF9JTUFHRV9QUk9DX0NMQVNTIChWNEwyX0NUUkxfQ0xBU1NfSU1BR0VfUFJPQyB8IDEpCiAjZGVmaW5lIFY0TDJfQ0lEX0xJTktfRlJFUSAoVjRMMl9DSURfSU1BR0VfUFJPQ19DTEFTU19CQVNFICsgMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX1BJWEVMX1JBVEUgKFY0TDJfQ0lEX0lNQUdFX1BST0NfQ0xBU1NfQkFTRSArIDIpCiAjZGVmaW5lIFY0TDJfQ0lEX1RFU1RfUEFUVEVSTiAoVjRMMl9DSURfSU1BR0VfUFJPQ19DTEFTU19CQVNFICsgMykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0RWX0NMQVNTX0JBU0UgKFY0TDJfQ1RSTF9DTEFTU19EViB8IDB4OTAwKQogI2RlZmluZSBWNEwyX0NJRF9EVl9DTEFTUyAoVjRMMl9DVFJMX0NMQVNTX0RWIHwgMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0RWX1RYX0hPVFBMVUcgKFY0TDJfQ0lEX0RWX0NMQVNTX0JBU0UgKyAxKQogI2RlZmluZSBWNEwyX0NJRF9EVl9UWF9SWFNFTlNFIChWNEwyX0NJRF9EVl9DTEFTU19CQVNFICsgMikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0RWX1RYX0VESURfUFJFU0VOVCAoVjRMMl9DSURfRFZfQ0xBU1NfQkFTRSArIDMpCiAjZGVmaW5lIFY0TDJfQ0lEX0RWX1RYX01PREUgKFY0TDJfQ0lEX0RWX0NMQVNTX0JBU0UgKyA0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9kdl90eF9tb2RlIHsKLSBWNEwyX0RWX1RYX01PREVfRFZJX0QgPSAwLAotIFY0TDJfRFZfVFhfTU9ERV9IRE1JID0gMSwKLX07CisgIFY0TDJfRFZfVFhfTU9ERV9EVklfRCA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWNEwyX0RWX1RYX01PREVfSERNSSA9IDEsCit9OwogI2RlZmluZSBWNEwyX0NJRF9EVl9UWF9SR0JfUkFOR0UgKFY0TDJfQ0lEX0RWX0NMQVNTX0JBU0UgKyA1KQogZW51bSB2NGwyX2R2X3JnYl9yYW5nZSB7Ci0gVjRMMl9EVl9SR0JfUkFOR0VfQVVUTyA9IDAsCi0gVjRMMl9EVl9SR0JfUkFOR0VfTElNSVRFRCA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfRFZfUkdCX1JBTkdFX0ZVTEwgPSAyLAorICBWNEwyX0RWX1JHQl9SQU5HRV9BVVRPID0gMCwKKyAgVjRMMl9EVl9SR0JfUkFOR0VfTElNSVRFRCA9IDEsCisgIFY0TDJfRFZfUkdCX1JBTkdFX0ZVTEwgPSAyLAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0RWX1JYX1BPV0VSX1BSRVNFTlQgKFY0TDJfQ0lEX0RWX0NMQVNTX0JBU0UgKyAxMDApCiAjZGVmaW5lIFY0TDJfQ0lEX0RWX1JYX1JHQl9SQU5HRSAoVjRMMl9DSURfRFZfQ0xBU1NfQkFTRSArIDEwMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX0ZNX1JYX0NMQVNTX0JBU0UgKFY0TDJfQ1RSTF9DTEFTU19GTV9SWCB8IDB4OTAwKQogI2RlZmluZSBWNEwyX0NJRF9GTV9SWF9DTEFTUyAoVjRMMl9DVFJMX0NMQVNTX0ZNX1JYIHwgMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX1RVTkVfREVFTVBIQVNJUyAoVjRMMl9DSURfRk1fUlhfQ0xBU1NfQkFTRSArIDEpCiBlbnVtIHY0bDJfZGVlbXBoYXNpcyB7CisgIFY0TDJfREVFTVBIQVNJU19ESVNBQkxFRCA9IFY0TDJfUFJFRU1QSEFTSVNfRElTQUJMRUQsCisgIFY0TDJfREVFTVBIQVNJU181MF91UyA9IFY0TDJfUFJFRU1QSEFTSVNfNTBfdVMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfREVFTVBIQVNJU19ESVNBQkxFRCA9IFY0TDJfUFJFRU1QSEFTSVNfRElTQUJMRUQsCi0gVjRMMl9ERUVNUEhBU0lTXzUwX3VTID0gVjRMMl9QUkVFTVBIQVNJU181MF91UywKLSBWNEwyX0RFRU1QSEFTSVNfNzVfdVMgPSBWNEwyX1BSRUVNUEhBU0lTXzc1X3VTLAorICBWNEwyX0RFRU1QSEFTSVNfNzVfdVMgPSBWNEwyX1BSRUVNUEhBU0lTXzc1X3VTLAogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0lEX1JEU19SRUNFUFRJT04gKFY0TDJfQ0lEX0ZNX1JYX0NMQVNTX0JBU0UgKyAyKQorI2RlZmluZSBWNEwyX0NJRF9SRFNfUlhfUFRZIChWNEwyX0NJRF9GTV9SWF9DTEFTU19CQVNFICsgMykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQ0lEX1JEU19SWF9QU19OQU1FIChWNEwyX0NJRF9GTV9SWF9DTEFTU19CQVNFICsgNCkKKyNkZWZpbmUgVjRMMl9DSURfUkRTX1JYX1JBRElPX1RFWFQgKFY0TDJfQ0lEX0ZNX1JYX0NMQVNTX0JBU0UgKyA1KQorI2RlZmluZSBWNEwyX0NJRF9SRFNfUlhfVFJBRkZJQ19BTk5PVU5DRU1FTlQgKFY0TDJfQ0lEX0ZNX1JYX0NMQVNTX0JBU0UgKyA2KQorI2RlZmluZSBWNEwyX0NJRF9SRFNfUlhfVFJBRkZJQ19QUk9HUkFNIChWNEwyX0NJRF9GTV9SWF9DTEFTU19CQVNFICsgNykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQ0lEX1JEU19SWF9NVVNJQ19TUEVFQ0ggKFY0TDJfQ0lEX0ZNX1JYX0NMQVNTX0JBU0UgKyA4KQorI2RlZmluZSBWNEwyX0NJRF9SRl9UVU5FUl9DTEFTU19CQVNFIChWNEwyX0NUUkxfQ0xBU1NfUkZfVFVORVIgfCAweDkwMCkKKyNkZWZpbmUgVjRMMl9DSURfUkZfVFVORVJfQ0xBU1MgKFY0TDJfQ1RSTF9DTEFTU19SRl9UVU5FUiB8IDEpCisjZGVmaW5lIFY0TDJfQ0lEX1JGX1RVTkVSX0JBTkRXSURUSF9BVVRPIChWNEwyX0NJRF9SRl9UVU5FUl9DTEFTU19CQVNFICsgMTEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NJRF9SRl9UVU5FUl9CQU5EV0lEVEggKFY0TDJfQ0lEX1JGX1RVTkVSX0NMQVNTX0JBU0UgKyAxMikKKyNkZWZpbmUgVjRMMl9DSURfUkZfVFVORVJfTE5BX0dBSU5fQVVUTyAoVjRMMl9DSURfUkZfVFVORVJfQ0xBU1NfQkFTRSArIDQxKQorI2RlZmluZSBWNEwyX0NJRF9SRl9UVU5FUl9MTkFfR0FJTiAoVjRMMl9DSURfUkZfVFVORVJfQ0xBU1NfQkFTRSArIDQyKQorI2RlZmluZSBWNEwyX0NJRF9SRl9UVU5FUl9NSVhFUl9HQUlOX0FVVE8gKFY0TDJfQ0lEX1JGX1RVTkVSX0NMQVNTX0JBU0UgKyA1MSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQ0lEX1JGX1RVTkVSX01JWEVSX0dBSU4gKFY0TDJfQ0lEX1JGX1RVTkVSX0NMQVNTX0JBU0UgKyA1MikKKyNkZWZpbmUgVjRMMl9DSURfUkZfVFVORVJfSUZfR0FJTl9BVVRPIChWNEwyX0NJRF9SRl9UVU5FUl9DTEFTU19CQVNFICsgNjEpCisjZGVmaW5lIFY0TDJfQ0lEX1JGX1RVTkVSX0lGX0dBSU4gKFY0TDJfQ0lEX1JGX1RVTkVSX0NMQVNTX0JBU0UgKyA2MikKKyNkZWZpbmUgVjRMMl9DSURfUkZfVFVORVJfUExMX0xPQ0sgKFY0TDJfQ0lEX1JGX1RVTkVSX0NMQVNTX0JBU0UgKyA5MSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQ0lEX0RFVEVDVF9DTEFTU19CQVNFIChWNEwyX0NUUkxfQ0xBU1NfREVURUNUIHwgMHg5MDApCisjZGVmaW5lIFY0TDJfQ0lEX0RFVEVDVF9DTEFTUyAoVjRMMl9DVFJMX0NMQVNTX0RFVEVDVCB8IDEpCisjZGVmaW5lIFY0TDJfQ0lEX0RFVEVDVF9NRF9NT0RFIChWNEwyX0NJRF9ERVRFQ1RfQ0xBU1NfQkFTRSArIDEpCitlbnVtIHY0bDJfZGV0ZWN0X21kX21vZGUgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVjRMMl9ERVRFQ1RfTURfTU9ERV9ESVNBQkxFRCA9IDAsCisgIFY0TDJfREVURUNUX01EX01PREVfR0xPQkFMID0gMSwKKyAgVjRMMl9ERVRFQ1RfTURfTU9ERV9USFJFU0hPTERfR1JJRCA9IDIsCisgIFY0TDJfREVURUNUX01EX01PREVfUkVHSU9OX0dSSUQgPSAzLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CisjZGVmaW5lIFY0TDJfQ0lEX0RFVEVDVF9NRF9HTE9CQUxfVEhSRVNIT0xEIChWNEwyX0NJRF9ERVRFQ1RfQ0xBU1NfQkFTRSArIDIpCisjZGVmaW5lIFY0TDJfQ0lEX0RFVEVDVF9NRF9USFJFU0hPTERfR1JJRCAoVjRMMl9DSURfREVURUNUX0NMQVNTX0JBU0UgKyAzKQorI2RlZmluZSBWNEwyX0NJRF9ERVRFQ1RfTURfUkVHSU9OX0dSSUQgKFY0TDJfQ0lEX0RFVEVDVF9DTEFTU19CQVNFICsgNCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdjRsMi1kdi10aW1pbmdzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItZHYtdGltaW5ncy5oCmluZGV4IGJiMTM3NGEuLmE0ZjkxZWMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdjRsMi1kdi10aW1pbmdzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92NGwyLWR2LXRpbWluZ3MuaApAQCAtMTksMTM4ICsxOSwyNjUgQEAKICNpZm5kZWYgX1Y0TDJfRFZfVElNSU5HU19ICiAjZGVmaW5lIF9WNEwyX0RWX1RJTUlOR1NfSAogI2lmIF9fR05VQ19fIDwgNCB8fCBfX0dOVUNfXyA9PSA0ICYmIF9fR05VQ19NSU5PUl9fIDwgNgotI2RlZmluZSBWNEwyX0lOSVRfQlRfVElNSU5HUyhfd2lkdGgsIGFyZ3MuLi4pICAgeyAuYnQgPSB7IF93aWR0aCAsICMjIGFyZ3MgfSB9CisjZGVmaW5lIFY0TDJfSU5JVF9CVF9USU1JTkdTKF93aWR0aCxhcmdzLi4uKSB7LmJ0ID0geyBfd2lkdGgsICMjYXJncyB9IH0KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZWxzZQotI2RlZmluZSBWNEwyX0lOSVRfQlRfVElNSU5HUyhfd2lkdGgsIGFyZ3MuLi4pICAgLmJ0ID0geyBfd2lkdGggLCAjIyBhcmdzIH0KKyNkZWZpbmUgVjRMMl9JTklUX0JUX1RJTUlOR1MoX3dpZHRoLGFyZ3MuLi4pIC4gYnQgPSB7IF93aWR0aCwgIyNhcmdzIH0KICNlbmRpZgotI2RlZmluZSBWNEwyX0RWX0JUX0NFQV82NDBYNDgwUDU5Xzk0IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoNjQwLCA0ODAsIDAsIDAsICAgMjUxNzUwMDAsIDE2LCA5NiwgNDgsIDEwLCAyLCAzMywgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIDApICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzY0MFg0ODBQNTlfOTQgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoNjQwLCA0ODAsIDAsIDAsIDI1MTc1MDAwLCAxNiwgOTYsIDQ4LCAxMCwgMiwgMzMsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgMCkgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfNzIwWDQ4MEk1OV85NCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDcyMCwgNDgwLCAxLCAwLCAgIDEzNTAwMDAwLCAxOSwgNjIsIDU3LCA0LCAzLCAxNSwgNCwgMywgMTYsICAgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCBWNEwyX0RWX0ZMX0hBTEZfTElORSkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfNzIwWDQ4MFA1OV85NCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDcyMCwgNDgwLCAwLCAwLCAgIDI3MDAwMDAwLCAxNiwgNjIsIDYwLCA5LCA2LCAzMCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzcyMFg1NzZJNTAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUyg3MjAsIDU3NiwgMSwgMCwgICAxMzUwMDAwMCwgMTIsIDYzLCA2OSwgMiwgMywgMTksIDIsIDMsIDIwLCAgIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9IQUxGX0xJTkUpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzcyMFg1NzZQNTAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUyg3MjAsIDU3NiwgMCwgMCwgICAyNzAwMDAwMCwgMTIsIDY0LCA2OCwgNSwgNSwgMzksIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV83MjBYNDgwSTU5Xzk0IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDcyMCwgNDgwLCAxLCAwLCAxMzUwMDAwMCwgMTksIDYyLCA1NywgNCwgMywgMTUsIDQsIDMsIDE2LCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfSEFMRl9MSU5FKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzcyMFg0ODBQNTlfOTQgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoNzIwLCA0ODAsIDAsIDAsIDI3MDAwMDAwLCAxNiwgNjIsIDYwLCA5LCA2LCAzMCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzcyMFg1NzZJNTAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoNzIwLCA1NzYsIDEsIDAsIDEzNTAwMDAwLCAxMiwgNjMsIDY5LCAyLCAzLCAxOSwgMiwgMywgMjAsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9IQUxGX0xJTkUpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfNzIwWDU3NlA1MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg3MjAsIDU3NiwgMCwgMCwgMjcwMDAwMDAsIDEyLCA2NCwgNjgsIDUsIDUsIDM5LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzEyODBYNzIwUDI0IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgNzIwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA1OTQwMDAwMCwgMTc2MCwgNDAsIDIyMCwgNSwgNSwgMjAsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAgIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzEyODBYNzIwUDI1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgNzIwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA3NDI1MDAwMCwgMjQyMCwgNDAsIDIyMCwgNSwgNSwgMjAsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xMjgwWDcyMFAzMCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDcyMCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgNzQyNTAwMDAsIDE3NjAsIDQwLCAyMjAsIDUsIDUsIDIwLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUykgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTI4MFg3MjBQNTAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA3MjAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDc0MjUwMDAwLCA0NDAsIDQwLCAyMjAsIDUsIDUsIDIwLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgMCkgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTI4MFg3MjBQMjQgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgNzIwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDU5NDAwMDAwLCAxNzYwLCA0MCwgMjIwLCA1LCA1LCAyMCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCBWNEwyX0RWX0ZMX0NBTl9SRURVQ0VfRlBTKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzEyODBYNzIwUDI1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDcyMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA3NDI1MDAwMCwgMjQyMCwgNDAsIDIyMCwgNSwgNSwgMjAsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xMjgwWDcyMFAzMCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA3MjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgNzQyNTAwMDAsIDE3NjAsIDQwLCAyMjAsIDUsIDUsIDIwLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTI4MFg3MjBQNTAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgNzIwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDc0MjUwMDAwLCA0NDAsIDQwLCAyMjAsIDUsIDUsIDIwLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzEyODBYNzIwUDYwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgNzIwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA3NDI1MDAwMCwgMTEwLCA0MCwgMjIwLCA1LCA1LCAyMCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzE5MjBYMTA4MFAyNCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEwODAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDc0MjUwMDAwLCA2MzgsIDQ0LCAxNDgsIDQsIDUsIDM2LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUykgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTkyMFgxMDgwUDI1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTA4MCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgNzQyNTAwMDAsIDUyOCwgNDQsIDE0OCwgNCwgNSwgMzYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xOTIwWDEwODBQMzAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMDgwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA3NDI1MDAwMCwgODgsIDQ0LCAxNDgsIDQsIDUsIDM2LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUykgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTI4MFg3MjBQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgNzIwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDc0MjUwMDAwLCAxMTAsIDQwLCAyMjAsIDUsIDUsIDIwLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTkyMFgxMDgwUDI0IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEwODAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgNzQyNTAwMDAsIDYzOCwgNDQsIDE0OCwgNCwgNSwgMzYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xOTIwWDEwODBQMjUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTA4MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA3NDI1MDAwMCwgNTI4LCA0NCwgMTQ4LCA0LCA1LCAzNiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzE5MjBYMTA4MFAzMCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMDgwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDc0MjUwMDAwLCA4OCwgNDQsIDE0OCwgNCwgNSwgMzYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUykgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTkyMFgxMDgwSTUwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTA4MCwgMSwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgNzQyNTAwMDAsIDUyOCwgNDQsIDE0OCwgMiwgNSwgMTUsIDIsIDUsIDE2LCAgIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9IQUxGX0xJTkUpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzE5MjBYMTA4MFA1MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEwODAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDE0ODUwMDAwMCwgNTI4LCA0NCwgMTQ4LCA0LCA1LCAzNiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzE5MjBYMTA4MEk2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEwODAsIDEsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDc0MjUwMDAwLCA4OCwgNDQsIDE0OCwgMiwgNSwgMTUsIDIsIDUsIDE2LCAgIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgICBWNEwyX0RWX0ZMX0NBTl9SRURVQ0VfRlBTIHwgVjRMMl9EVl9GTF9IQUxGX0xJTkUpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzE5MjBYMTA4MFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEwODAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDE0ODUwMDAwMCwgODgsIDQ0LCAxNDgsIDQsIDUsIDM2LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgICBWNEwyX0RWX0ZMX0NBTl9SRURVQ0VfRlBTKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8xOTIwWDEwODBJNTAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTA4MCwgMSwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA3NDI1MDAwMCwgNTI4LCA0NCwgMTQ4LCAyLCA1LCAxNSwgMiwgNSwgMTYsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9IQUxGX0xJTkUpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTkyMFgxMDgwUDUwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEwODAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTQ4NTAwMDAwLCA1MjgsIDQ0LCAxNDgsIDQsIDUsIDM2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMTkyMFgxMDgwSTYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEwODAsIDEsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgNzQyNTAwMDAsIDg4LCA0NCwgMTQ4LCAyLCA1LCAxNSwgMiwgNSwgMTYsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUyB8IFY0TDJfRFZfRkxfSEFMRl9MSU5FKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzE5MjBYMTA4MFA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMDgwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDE0ODUwMDAwMCwgODgsIDQ0LCAxNDgsIDQsIDUsIDM2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzY0MFgzNTBQODUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUyg2NDAsIDM1MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDMxNTAwMDAwLCAzMiwgNjQsIDk2LCAzMiwgMywgNjAsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF82NDBYNDAwUDg1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoNjQwLCA0MDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAzMTUwMDAwMCwgMzIsIDY0LCA5NiwgMSwgMywgNDEsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF83MjBYNDAwUDg1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoNzIwLCA0MDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAzNTUwMDAwMCwgMzYsIDcyLCAxMDgsIDEsIDMsIDQyLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfMzg0MFgyMTYwUDI0IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDM4NDAsIDIxNjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgMjk3MDAwMDAwLCAxMjc2LCA4OCwgMjk2LCA4LCAxMCwgNzIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8zODQwWDIxNjBQMjUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMzg0MCwgMjE2MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAyOTcwMDAwMDAsIDEwNTYsIDg4LCAyOTYsIDgsIDEwLCA3MiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzM4NDBYMjE2MFAzMCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygzODQwLCAyMTYwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDI5NzAwMDAwMCwgMTc2LCA4OCwgMjk2LCA4LCAxMCwgNzIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8zODQwWDIxNjBQNTAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMzg0MCwgMjE2MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCA1OTQwMDAwMDAsIDEwNTYsIDg4LCAyOTYsIDgsIDEwLCA3MiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfQ0VBODYxLCAwKSBcCit9CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0RWX0JUX0NFQV8zODQwWDIxNjBQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMzg0MCwgMjE2MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCA1OTQwMDAwMDAsIDE3NiwgODgsIDI5NiwgOCwgMTAsIDcyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfNDA5NlgyMTYwUDI0IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDQwOTYsIDIxNjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgMjk3MDAwMDAwLCAxMDIwLCA4OCwgMjk2LCA4LCAxMCwgNzIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV80MDk2WDIxNjBQMjUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoNDA5NiwgMjE2MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAyOTcwMDAwMDAsIDk2OCwgODgsIDEyOCwgOCwgMTAsIDcyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9DRUFfNDA5NlgyMTYwUDMwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDQwOTYsIDIxNjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgMjk3MDAwMDAwLCA4OCwgODgsIDEyOCwgOCwgMTAsIDcyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9DRUE4NjEsIFY0TDJfRFZfRkxfQ0FOX1JFRFVDRV9GUFMpIFwKK30KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfRFZfQlRfQ0VBXzQwOTZYMjE2MFA1MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg0MDk2LCAyMTYwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDU5NDAwMDAwMCwgOTY4LCA4OCwgMTI4LCA4LCAxMCwgNzIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0NFQV80MDk2WDIxNjBQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoNDA5NiwgMjE2MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCA1OTQwMDAwMDAsIDg4LCA4OCwgMTI4LCA4LCAxMCwgNzIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0NFQTg2MSwgVjRMMl9EVl9GTF9DQU5fUkVEVUNFX0ZQUykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF82NDBYMzUwUDg1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDY0MCwgMzUwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDMxNTAwMDAwLCAzMiwgNjQsIDk2LCAzMiwgMywgNjAsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF82NDBYNDAwUDg1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDY0MCwgNDAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDMxNTAwMDAwLCAzMiwgNjQsIDk2LCAxLCAzLCA0MSwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0RWX0JUX0RNVF83MjBYNDAwUDg1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDcyMCwgNDAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDM1NTAwMDAwLCAzNiwgNzIsIDEwOCwgMSwgMywgNDIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQogI2RlZmluZSBWNEwyX0RWX0JUX0RNVF82NDBYNDgwUDYwIFY0TDJfRFZfQlRfQ0VBXzY0MFg0ODBQNTlfOTQKKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfNjQwWDQ4MFA3MiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg2NDAsIDQ4MCwgMCwgMCwgMzE1MDAwMDAsIDI0LCA0MCwgMTI4LCA5LCAzLCAyOCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzY0MFg0ODBQNzUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoNjQwLCA0ODAsIDAsIDAsIDMxNTAwMDAwLCAxNiwgNjQsIDEyMCwgMSwgMywgMTYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfNjQwWDQ4MFA3MiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDY0MCwgNDgwLCAwLCAwLCAgIDMxNTAwMDAwLCAyNCwgNDAsIDEyOCwgOSwgMywgMjgsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF82NDBYNDgwUDc1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoNjQwLCA0ODAsIDAsIDAsICAgMzE1MDAwMDAsIDE2LCA2NCwgMTIwLCAxLCAzLCAxNiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzY0MFg0ODBQODUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUyg2NDAsIDQ4MCwgMCwgMCwgICAzNjAwMDAwMCwgNTYsIDU2LCA4MCwgMSwgMywgMjUsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF84MDBYNjAwUDU2IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoODAwLCA2MDAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDM2MDAwMDAwLCAyNCwgNzIsIDEyOCwgMSwgMiwgMjIsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF82NDBYNDgwUDg1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDY0MCwgNDgwLCAwLCAwLCAzNjAwMDAwMCwgNTYsIDU2LCA4MCwgMSwgMywgMjUsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF84MDBYNjAwUDU2IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDgwMCwgNjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDM2MDAwMDAwLCAyNCwgNzIsIDEyOCwgMSwgMiwgMjIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF84MDBYNjAwUDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDgwMCwgNjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDQwMDAwMDAwLCA0MCwgMTI4LCA4OCwgMSwgNCwgMjMsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF84MDBYNjAwUDcyIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDgwMCwgNjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDUwMDAwMDAwLCA1NiwgMTIwLCA2NCwgMzcsIDYsIDIzLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzgwMFg2MDBQNjAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUyg4MDAsIDYwMCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgNDAwMDAwMDAsIDQwLCAxMjgsIDg4LCAxLCA0LCAyMywgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzgwMFg2MDBQNzIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUyg4MDAsIDYwMCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgNTAwMDAwMDAsIDU2LCAxMjAsIDY0LCAzNywgNiwgMjMsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF84MDBYNjAwUDc1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoODAwLCA2MDAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDQ5NTAwMDAwLCAxNiwgODAsIDE2MCwgMSwgMywgMjEsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF84MDBYNjAwUDg1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoODAwLCA2MDAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDU2MjUwMDAwLCAzMiwgNjQsIDE1MiwgMSwgMywgMjcsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF84MDBYNjAwUDc1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDgwMCwgNjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDQ5NTAwMDAwLCAxNiwgODAsIDE2MCwgMSwgMywgMjEsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF84MDBYNjAwUDg1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDgwMCwgNjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDU2MjUwMDAwLCAzMiwgNjQsIDE1MiwgMSwgMywgMjcsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF84MDBYNjAwUDEyMF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg4MDAsIDYwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCA3MzI1MDAwMCwgNDgsIDMyLCA4MCwgMywgNCwgMjksIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzg0OFg0ODBQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoODQ4LCA0ODAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMzM3NTAwMDAsIDE2LCAxMTIsIDExMiwgNiwgOCwgMjMsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfODAwWDYwMFAxMjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUyg4MDAsIDYwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDczMjUwMDAwLCA0OCwgMzIsIDgwLCAzLCA0LCAyOSwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF84NDhYNDgwUDYwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoODQ4LCA0ODAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDMzNzUwMDAwLCAxNiwgMTEyLCAxMTIsIDYsIDgsIDIzLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTAyNFg3NjhJNDMgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMDI0LCA3NjgsIDEsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDQ0OTAwMDAwLCA4LCAxNzYsIDU2LCAwLCA0LCAyMCwgMCwgNCwgMjEsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMDI0WDc2OFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEwMjQsIDc2OCwgMCwgMCwgICA2NTAwMDAwMCwgMjQsIDEzNiwgMTYwLCAzLCA2LCAyOSwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEwMjRYNzY4STQzIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEwMjQsIDc2OCwgMSwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA0NDkwMDAwMCwgOCwgMTc2LCA1NiwgMCwgNCwgMjAsIDAsIDQsIDIxLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTAyNFg3NjhQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTAyNCwgNzY4LCAwLCAwLCA2NTAwMDAwMCwgMjQsIDEzNiwgMTYwLCAzLCA2LCAyOSwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEwMjRYNzY4UDcwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEwMjQsIDc2OCwgMCwgMCwgNzUwMDAwMDAsIDI0LCAxMzYsIDE0NCwgMywgNiwgMjksIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMDI0WDc2OFA3NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMDI0LCA3NjgsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgNzg3NTAwMDAsIDE2LCA5NiwgMTc2LCAxLCAzLCAyOCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMDI0WDc2OFA3MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEwMjQsIDc2OCwgMCwgMCwgICA3NTAwMDAwMCwgMjQsIDEzNiwgMTQ0LCAzLCA2LCAyOSwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEwMjRYNzY4UDc1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTAyNCwgNzY4LCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA3ODc1MDAwMCwgMTYsIDk2LCAxNzYsIDEsIDMsIDI4LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTAyNFg3NjhQODUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMDI0LCA3NjgsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDk0NTAwMDAwLCA0OCwgOTYsIDIwOCwgMSwgMywgMzYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMDI0WDc2OFAxMjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMDI0LCA3NjgsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgICAxMTU1MDAwMDAsIDQ4LCAzMiwgODAsIDMsIDQsIDM4LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgICBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMTUyWDg2NFA3NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDExNTIsIDg2NCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTA4MDAwMDAwLCA2NCwgMTI4LCAyNTYsIDEsIDMsIDMyLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTAyNFg3NjhQODUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTAyNCwgNzY4LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDk0NTAwMDAwLCA0OCwgOTYsIDIwOCwgMSwgMywgMzYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMDI0WDc2OFAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTAyNCwgNzY4LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDExNTUwMDAwMCwgNDgsIDMyLCA4MCwgMywgNCwgMzgsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzExNTJYODY0UDc1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDExNTIsIDg2NCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxMDgwMDAwMDAsIDY0LCAxMjgsIDI1NiwgMSwgMywgMzIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQogI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDcyMFA2MCBWNEwyX0RWX0JUX0NFQV8xMjgwWDcyMFA2MAotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDc2OFA2MF9SQiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDc2OCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDY4MjUwMDAwLCA0OCwgMzIsIDgwLCAzLCA3LCAxMiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDc2OFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDc2OCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDc5NTAwMDAwLCA2NCwgMTI4LCAxOTIsIDMsIDcsIDIwLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYNzY4UDc1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgNzY4LCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTAyMjUwMDAwLCA4MCwgMTI4LCAyMDgsIDMsIDcsIDI3LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg3NjhQODUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA3NjgsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxMTc1MDAwMDAsIDgwLCAxMzYsIDIxNiwgMywgNywgMzEsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDc2OFAxMjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA3NjgsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgICAxNDAyNTAwMDAsIDQ4LCAzMiwgODAsIDMsIDcsIDM1LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgICBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYODAwUDYwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgODAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgNzEwMDAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDE0LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgICBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYNzY4UDYwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDc2OCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCA2ODI1MDAwMCwgNDgsIDMyLCA4MCwgMywgNywgMTIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYNzY4UDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDc2OCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA3OTUwMDAwMCwgNjQsIDEyOCwgMTkyLCAzLCA3LCAyMCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYNzY4UDc1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDc2OCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxMDIyNTAwMDAsIDgwLCAxMjgsIDIwOCwgMywgNywgMjcsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDc2OFA4NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA3NjgsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTE3NTAwMDAwLCA4MCwgMTM2LCAyMTYsIDMsIDcsIDMxLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYODAwUDYwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgODAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgODM1MDAwMDAsIDcyLCAxMjgsIDIwMCwgMywgNiwgMjIsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDgwMFA3NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDgwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDEwNjUwMDAwMCwgODAsIDEyOCwgMjA4LCAzLCA2LCAyOSwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYODAwUDg1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgODAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTIyNTAwMDAwLCA4MCwgMTM2LCAyMTYsIDMsIDYsIDM0LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg4MDBQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgODAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMTQ2MjUwMDAwLCA0OCwgMzIsIDgwLCAzLCA2LCAzOCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDc2OFAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgNzY4LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDE0MDI1MDAwMCwgNDgsIDMyLCA4MCwgMywgNywgMzUsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYODAwUDYwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDgwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCA3MTAwMDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgMTQsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYODAwUDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDgwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA4MzUwMDAwMCwgNzIsIDEyOCwgMjAwLCAzLCA2LCAyMiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYODAwUDc1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDgwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxMDY1MDAwMDAsIDgwLCAxMjgsIDIwOCwgMywgNiwgMjksIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTI4MFg5NjBQNjAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA5NjAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDEwODAwMDAwMCwgOTYsIDExMiwgMzEyLCAxLCAzLCAzNiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYOTYwUDg1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgOTYwLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxNDg1MDAwMDAsIDY0LCAxNjAsIDIyNCwgMSwgMywgNDcsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDk2MFAxMjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA5NjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgICAxNzU1MDAwMDAsIDQ4LCAzMiwgODAsIDMsIDQsIDUwLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgICBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYMTAyNFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDEwMjQsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDEwODAwMDAwMCwgNDgsIDExMiwgMjQ4LCAxLCAzLCAzOCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYODAwUDg1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDgwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxMjI1MDAwMDAsIDgwLCAxMzYsIDIxNiwgMywgNiwgMzQsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDgwMFAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgODAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDE0NjI1MDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgMzgsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYOTYwUDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDk2MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxMDgwMDAwMDAsIDk2LCAxMTIsIDMxMiwgMSwgMywgMzYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDk2MFA4NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCA5NjAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTQ4NTAwMDAwLCA2NCwgMTYwLCAyMjQsIDEsIDMsIDQ3LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYMTAyNFA3NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDEwMjQsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDEzNTAwMDAwMCwgMTYsIDE0NCwgMjQ4LCAxLCAzLCAzOCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYMTAyNFA4NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEyODAsIDEwMjQsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDE1NzUwMDAwMCwgNjQsIDE2MCwgMjI0LCAxLCAzLCA0NCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYMTAyNFAxMjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCAxMDI0LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMTg3MjUwMDAwLCA0OCwgMzIsIDgwLCAzLCA3LCA1MCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMzYwWDc2OFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEzNjAsIDc2OCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgODU1MDAwMDAsIDY0LCAxMTIsIDI1NiwgMywgNiwgMTgsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMjgwWDk2MFAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgOTYwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDE3NTUwMDAwMCwgNDgsIDMyLCA4MCwgMywgNCwgNTAsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYMTAyNFA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCAxMDI0LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDEwODAwMDAwMCwgNDgsIDExMiwgMjQ4LCAxLCAzLCAzOCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYMTAyNFA3NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCAxMDI0LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDEzNTAwMDAwMCwgMTYsIDE0NCwgMjQ4LCAxLCAzLCAzOCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYMTAyNFA4NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMjgwLCAxMDI0LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDE1NzUwMDAwMCwgNjQsIDE2MCwgMjI0LCAxLCAzLCA0NCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMzYwWDc2OFAxMjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxMzYwLCA3NjgsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgICAxNDgyNTAwMDAsIDQ4LCAzMiwgODAsIDMsIDUsIDM3LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgICBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEzNjZYNzY4UDYwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTM2NiwgNzY4LCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA4NTUwMDAwMCwgNzAsIDE0MywgMjEzLCAzLCAzLCAyNCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEzNjZYNzY4UDYwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTM2NiwgNzY4LCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA3MjAwMDAwMCwgMTQsIDU2LCA2NCwgMSwgMywgMjgsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE0MDBYMTA1MFA2MF9SQiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0MDAsIDEwNTAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgICAxMDEwMDAwMDAsIDQ4LCAzMiwgODAsIDMsIDQsIDIzLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgICBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEyODBYMTAyNFAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTI4MCwgMTAyNCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAxODcyNTAwMDAsIDQ4LCAzMiwgODAsIDMsIDcsIDUwLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMzYwWDc2OFA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMzYwLCA3NjgsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgODU1MDAwMDAsIDY0LCAxMTIsIDI1NiwgMywgNiwgMTgsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMzYwWDc2OFAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTM2MCwgNzY4LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDE0ODI1MDAwMCwgNDgsIDMyLCA4MCwgMywgNSwgMzcsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzEzNjZYNzY4UDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDEzNjYsIDc2OCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA4NTUwMDAwMCwgNzAsIDE0MywgMjEzLCAzLCAzLCAyNCwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDAwWDEwNTBQNjAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNDAwLCAxMDUwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTIxNzUwMDAwLCA4OCwgMTQ0LCAyMzIsIDMsIDQsIDMyLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTQwMFgxMDUwUDc1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQwMCwgMTA1MCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDE1NjAwMDAwMCwgMTA0LCAxNDQsIDI0OCwgMywgNCwgNDIsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDAwWDEwNTBQODUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNDAwLCAxMDUwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTc5NTAwMDAwLCAxMDQsIDE1MiwgMjU2LCAzLCA0LCA0OCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE0MDBYMTA1MFAxMjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNDAwLCAxMDUwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMjA4MDAwMDAwLCA0OCwgMzIsIDgwLCAzLCA0LCA1NSwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xMzY2WDc2OFA2MF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxMzY2LCA3NjgsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgNzIwMDAwMDAsIDE0LCA1NiwgNjQsIDEsIDMsIDI4LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDAwWDEwNTBQNjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQwMCwgMTA1MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAxMDEwMDAwMDAsIDQ4LCAzMiwgODAsIDMsIDQsIDIzLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDAwWDEwNTBQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQwMCwgMTA1MCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxMjE3NTAwMDAsIDg4LCAxNDQsIDIzMiwgMywgNCwgMzIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDAwWDEwNTBQNzUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQwMCwgMTA1MCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxNTYwMDAwMDAsIDEwNCwgMTQ0LCAyNDgsIDMsIDQsIDQyLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE0NDBYOTAwUDYwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQ0MCwgOTAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgODg3NTAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDE3LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgICBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE0NDBYOTAwUDYwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQ0MCwgOTAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTA2NTAwMDAwLCA4MCwgMTUyLCAyMzIsIDMsIDYsIDI1LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTQ0MFg5MDBQNzUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNDQwLCA5MDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxMzY3NTAwMDAsIDk2LCAxNTIsIDI0OCwgMywgNiwgMzMsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDQwWDkwMFA4NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0NDAsIDkwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDE1NzAwMDAwMCwgMTA0LCAxNTIsIDI1NiwgMywgNiwgMzksIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNDAwWDEwNTBQODUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQwMCwgMTA1MCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxNzk1MDAwMDAsIDEwNCwgMTUyLCAyNTYsIDMsIDQsIDQ4LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTQwMFgxMDUwUDEyMF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxNDAwLCAxMDUwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDIwODAwMDAwMCwgNDgsIDMyLCA4MCwgMywgNCwgNTUsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE0NDBYOTAwUDYwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0NDAsIDkwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCA4ODc1MDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgMTcsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE0NDBYOTAwUDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0NDAsIDkwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxMDY1MDAwMDAsIDgwLCAxNTIsIDIzMiwgMywgNiwgMjUsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTQ0MFg5MDBQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQ0MCwgOTAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMTgyNzUwMDAwLCA0OCwgMzIsIDgwLCAzLCA2LCA0NCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjAwWDkwMFA2MF9SQiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2MDAsIDkwMCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTA4MDAwMDAwLCAyNCwgODAsIDk2LCAxLCAzLCA5NiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTYwMFgxMjAwUDYwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTYwMCwgMTIwMCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTYyMDAwMDAwLCA2NCwgMTkyLCAzMDQsIDEsIDMsIDQ2LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTYwMFgxMjAwUDY1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTYwMCwgMTIwMCwgMCwgICBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTc1NTAwMDAwLCA2NCwgMTkyLCAzMDQsIDEsIDMsIDQ2LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTQ0MFg5MDBQNzUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTQ0MCwgOTAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDEzNjc1MDAwMCwgOTYsIDE1MiwgMjQ4LCAzLCA2LCAzMywgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE0NDBYOTAwUDg1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0NDAsIDkwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxNTcwMDAwMDAsIDEwNCwgMTUyLCAyNTYsIDMsIDYsIDM5LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTQ0MFg5MDBQMTIwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE0NDAsIDkwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAxODI3NTAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDQ0LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjAwWDkwMFA2MF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjAwLCA5MDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMTA4MDAwMDAwLCAyNCwgODAsIDk2LCAxLCAzLCA5NiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2MDBYMTIwMFA3MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2MDAsIDEyMDAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDE4OTAwMDAwMCwgNjQsIDE5MiwgMzA0LCAxLCAzLCA0NiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2MDBYMTIwMFA3NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2MDAsIDEyMDAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDIwMjUwMDAwMCwgNjQsIDE5MiwgMzA0LCAxLCAzLCA0NiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2MDBYMTIwMFA4NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2MDAsIDEyMDAsIDAsICAgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDIyOTUwMDAwMCwgNjQsIDE5MiwgMzA0LCAxLCAzLCA0NiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2MDBYMTIwMFAxMjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjAwLCAxMjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMjY4MjUwMDAwLCA0OCwgMzIsIDgwLCAzLCA0LCA2NCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjAwWDEyMDBQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTYwMCwgMTIwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxNjIwMDAwMDAsIDY0LCAxOTIsIDMwNCwgMSwgMywgNDYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjAwWDEyMDBQNjUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTYwMCwgMTIwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxNzU1MDAwMDAsIDY0LCAxOTIsIDMwNCwgMSwgMywgNDYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjAwWDEyMDBQNzAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTYwMCwgMTIwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxODkwMDAwMDAsIDY0LCAxOTIsIDMwNCwgMSwgMywgNDYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjAwWDEyMDBQNzUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTYwMCwgMTIwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MIHwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAyMDI1MDAwMDAsIDY0LCAxOTIsIDMwNCwgMSwgMywgNDYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTY4MFgxMDUwUDYwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTY4MCwgMTA1MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDExOTAwMDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgMjEsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTY4MFgxMDUwUDYwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTY4MCwgMTA1MCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDE0NjI1MDAwMCwgMTA0LCAxNzYsIDI4MCwgMywgNiwgMzAsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjgwWDEwNTBQNzUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjgwLCAxMDUwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMTg3MDAwMDAwLCAxMjAsIDE3NiwgMjk2LCAzLCA2LCA0MCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2ODBYMTA1MFA4NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2ODAsIDEwNTAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAyMTQ3NTAwMDAsIDEyOCwgMTc2LCAzMDQsIDMsIDYsIDQ2LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTYwMFgxMjAwUDg1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2MDAsIDEyMDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMjI5NTAwMDAwLCA2NCwgMTkyLCAzMDQsIDEsIDMsIDQ2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTYwMFgxMjAwUDEyMF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjAwLCAxMjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDI2ODI1MDAwMCwgNDgsIDMyLCA4MCwgMywgNCwgNjQsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2ODBYMTA1MFA2MF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjgwLCAxMDUwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDExOTAwMDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgMjEsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2ODBYMTA1MFA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxNjgwLCAxMDUwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDE0NjI1MDAwMCwgMTA0LCAxNzYsIDI4MCwgMywgNiwgMzAsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTY4MFgxMDUwUDEyMF9SQiB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2ODAsIDEwNTAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgICAyNDU1MDAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDUzLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgICBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE3OTJYMTM0NFA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE3OTIsIDEzNDQsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAyMDQ3NTAwMDAsIDEyOCwgMjAwLCAzMjgsIDEsIDMsIDQ2LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgMCkgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTc5MlgxMzQ0UDc1IHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTc5MiwgMTM0NCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDI2MTAwMDAwMCwgOTYsIDIxNiwgMzUyLCAxLCAzLCA2OSwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE3OTJYMTM0NFAxMjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxNzkyLCAxMzQ0LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMzMzMjUwMDAwLCA0OCwgMzIsIDgwLCAzLCA0LCA3MiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNjgwWDEwNTBQNzUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTY4MCwgMTA1MCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAxODcwMDAwMDAsIDEyMCwgMTc2LCAyOTYsIDMsIDYsIDQwLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTY4MFgxMDUwUDg1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE2ODAsIDEwNTAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMjE0NzUwMDAwLCAxMjgsIDE3NiwgMzA0LCAzLCA2LCA0NiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE2ODBYMTA1MFAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTY4MCwgMTA1MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAyNDU1MDAwMDAsIDQ4LCAzMiwgODAsIDMsIDYsIDUzLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xNzkyWDEzNDRQNjAgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTc5MiwgMTM0NCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAyMDQ3NTAwMDAsIDEyOCwgMjAwLCAzMjgsIDEsIDMsIDQ2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE4NTZYMTM5MlA2MCB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE4NTYsIDEzOTIsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAyMTgyNTAwMDAsIDk2LCAyMjQsIDM1MiwgMSwgMywgNDMsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xODU2WDEzOTJQNzUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxODU2LCAxMzkyLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMjg4MDAwMDAwLCAxMjgsIDIyNCwgMzUyLCAxLCAzLCAxMDQsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xODU2WDEzOTJQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTg1NiwgMTM5MiwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDM1NjUwMDAwMCwgNDgsIDMyLCA4MCwgMywgNCwgNzUsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTc5MlgxMzQ0UDc1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE3OTIsIDEzNDQsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMjYxMDAwMDAwLCA5NiwgMjE2LCAzNTIsIDEsIDMsIDY5LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTc5MlgxMzQ0UDEyMF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxNzkyLCAxMzQ0LCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDMzMzI1MDAwMCwgNDgsIDMyLCA4MCwgMywgNCwgNzIsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE4NTZYMTM5MlA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxODU2LCAxMzkyLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDIxODI1MDAwMCwgOTYsIDIyNCwgMzUyLCAxLCAzLCA0MywgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE4NTZYMTM5MlA3NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxODU2LCAxMzkyLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDI4ODAwMDAwMCwgMTI4LCAyMjQsIDM1MiwgMSwgMywgMTA0LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE4NTZYMTM5MlAxMjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTg1NiwgMTM5MiwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAzNTY1MDAwMDAsIDQ4LCAzMiwgODAsIDMsIDQsIDc1LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgXAorfQogI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xOTIwWDEwODBQNjAgVjRMMl9EVl9CVF9DRUFfMTkyMFgxMDgwUDYwCisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE5MjBYMTIwMFA2MF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDE1NDAwMDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgMjYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE5MjBYMTIwMFA2MCB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMjAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDE5MzI1MDAwMCwgMTM2LCAyMDAsIDMzNiwgMywgNiwgMzYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTkyMFgxMjAwUDYwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTIwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDE1NDAwMDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgMjYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTkyMFgxMjAwUDYwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTIwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDE5MzI1MDAwMCwgMTM2LCAyMDAsIDMzNiwgMywgNiwgMzYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xOTIwWDEyMDBQNzUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMjAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMjQ1MjUwMDAwLCAxMzYsIDIwOCwgMzQ0LCAzLCA2LCA0NiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE5MjBYMTIwMFA4NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEyMDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAyODEyNTAwMDAsIDE0NCwgMjA4LCAzNTIsIDMsIDYsIDUzLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTkyMFgxMjAwUDc1IHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEyMDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMjQ1MjUwMDAwLCAxMzYsIDIwOCwgMzQ0LCAzLCA2LCA0NiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE5MjBYMTIwMFA4NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxMjAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDI4MTI1MDAwMCwgMTQ0LCAyMDgsIDM1MiwgMywgNiwgNTMsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xOTIwWDEyMDBQMTIwX1JCIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDEyMDAsIDAsIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCwgMzE3MDAwMDAwLCA0OCwgMzIsIDgwLCAzLCA2LCA2MiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTkyMFgxNDQwUDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDE5MjAsIDE0NDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMjM0MDAwMDAwLCAxMjgsIDIwOCwgMzQ0LCAxLCAzLCA1NiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xOTIwWDEyMDBQMTIwX1JCIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTIwMCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCAgIDMxNzAwMDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgNjIsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAgIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORykgIH0KLSNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTkyMFgxNDQwUDYwIHsgICAudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsICAgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTQ0MCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAgIDIzNDAwMDAwMCwgMTI4LCAyMDgsIDM0NCwgMSwgMywgNTYsIDAsIDAsIDAsICAgVjRMMl9EVl9CVF9TVERfRE1ULCAwKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xOTIwWDE0NDBQNzUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxNDQwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMjk3MDAwMDAwLCAxNDQsIDIyNCwgMzUyLCAxLCAzLCA1NiwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzE5MjBYMTQ0MFAxMjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxNDQwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMzgwNTAwMDAwLCA0OCwgMzIsIDgwLCAzLCA0LCA3OCwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8xOTIwWDE0NDBQNzUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMTkyMCwgMTQ0MCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCAyOTcwMDAwMDAsIDE0NCwgMjI0LCAzNTIsIDEsIDMsIDU2LCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMTkyMFgxNDQwUDEyMF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygxOTIwLCAxNDQwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDM4MDUwMDAwMCwgNDgsIDMyLCA4MCwgMywgNCwgNzgsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzIwNDhYMTE1MlA2MF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygyMDQ4LCAxMTUyLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wgfCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDE2MjAwMDAwMCwgMjYsIDgwLCA5NiwgMSwgMywgNDQsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzI1NjBYMTYwMFA2MF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygyNTYwLCAxNjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDI2ODUwMDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgMzcsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8yMDQ4WDExNTJQNjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygyMDQ4LCAxMTUyLCAwLCAgIFY0TDJfRFZfSFNZTkNfUE9TX1BPTCB8IFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICAxNjIwMDAwMDAsIDI2LCA4MCwgOTYsIDEsIDMsIDQ0LCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8yNTYwWDE2MDBQNjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygyNTYwLCAxNjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgMjY4NTAwMDAwLCA0OCwgMzIsIDgwLCAzLCA2LCAzNywgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8yNTYwWDE2MDBQNjAgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygyNTYwLCAxNjAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgMzQ4NTAwMDAwLCAxOTIsIDI4MCwgNDcyLCAzLCA2LCA0OSwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzI1NjBYMTYwMFA3NSB7ICAgLnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCAgIFY0TDJfSU5JVF9CVF9USU1JTkdTKDI1NjAsIDE2MDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgICA0NDMyNTAwMDAsIDIwOCwgMjgwLCA0ODgsIDMsIDYsIDYzLCAwLCAwLCAwLCAgIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgIH0KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMjU2MFgxNjAwUDYwIHsudHlwZSA9IFY0TDJfRFZfQlRfNjU2XzExMjAsIFY0TDJfSU5JVF9CVF9USU1JTkdTKDI1NjAsIDE2MDAsIDAsIFY0TDJfRFZfVlNZTkNfUE9TX1BPTCwgMzQ4NTAwMDAwLCAxOTIsIDI4MCwgNDcyLCAzLCA2LCA0OSwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCAwKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzI1NjBYMTYwMFA3NSB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygyNTYwLCAxNjAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsIDQ0MzI1MDAwMCwgMjA4LCAyODAsIDQ4OCwgMywgNiwgNjMsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgMCkgXAorfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8yNTYwWDE2MDBQODUgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoMjU2MCwgMTYwMCwgMCwgVjRMMl9EVl9WU1lOQ19QT1NfUE9MLCA1MDUyNTAwMDAsIDIwOCwgMjgwLCA0ODgsIDMsIDYsIDczLCAwLCAwLCAwLCBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApIFwKK30KKyNkZWZpbmUgVjRMMl9EVl9CVF9ETVRfMjU2MFgxNjAwUDEyMF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUygyNTYwLCAxNjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDU1Mjc1MDAwMCwgNDgsIDMyLCA4MCwgMywgNiwgODUsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0RNVF8yNTYwWDE2MDBQODUgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygyNTYwLCAxNjAwLCAwLCBWNEwyX0RWX1ZTWU5DX1BPU19QT0wsICAgNTA1MjUwMDAwLCAyMDgsIDI4MCwgNDg4LCAzLCA2LCA3MywgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsIDApICB9Ci0jZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzI1NjBYMTYwMFAxMjBfUkIgeyAgIC50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgICBWNEwyX0lOSVRfQlRfVElNSU5HUygyNTYwLCAxNjAwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsICAgNTUyNzUwMDAwLCA0OCwgMzIsIDgwLCAzLCA2LCA4NSwgMCwgMCwgMCwgICBWNEwyX0RWX0JUX1NURF9ETVQgfCBWNEwyX0RWX0JUX1NURF9DVlQsICAgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSAgfQorI2RlZmluZSBWNEwyX0RWX0JUX0RNVF80MDk2WDIxNjBQNjBfUkIgey50eXBlID0gVjRMMl9EVl9CVF82NTZfMTEyMCwgVjRMMl9JTklUX0JUX1RJTUlOR1MoNDA5NiwgMjE2MCwgMCwgVjRMMl9EVl9IU1lOQ19QT1NfUE9MLCA1NTY3NDQwMDAsIDgsIDMyLCA0MCwgNDgsIDgsIDYsIDAsIDAsIDAsIFY0TDJfRFZfQlRfU1REX0RNVCB8IFY0TDJfRFZfQlRfU1REX0NWVCwgVjRMMl9EVl9GTF9SRURVQ0VEX0JMQU5LSU5HKSBcCit9CisjZGVmaW5lIFY0TDJfRFZfQlRfRE1UXzQwOTZYMjE2MFA1OV85NF9SQiB7LnR5cGUgPSBWNEwyX0RWX0JUXzY1Nl8xMTIwLCBWNEwyX0lOSVRfQlRfVElNSU5HUyg0MDk2LCAyMTYwLCAwLCBWNEwyX0RWX0hTWU5DX1BPU19QT0wsIDU1NjE4ODAwMCwgOCwgMzIsIDQwLCA0OCwgOCwgNiwgMCwgMCwgMCwgVjRMMl9EVl9CVF9TVERfRE1UIHwgVjRMMl9EVl9CVF9TVERfQ1ZULCBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcpIFwKK30KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92NGwyLW1lZGlhYnVzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItbWVkaWFidXMuaAppbmRleCA4NGFhNWQzLi4yYzJiMGU3IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItbWVkaWFidXMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItbWVkaWFidXMuaApAQCAtMjIsOTUgKzIyLDExMCBAQAogI2luY2x1ZGUgPGxpbnV4L3ZpZGVvZGV2Mi5oPgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9tYnVzX3BpeGVsY29kZSB7Ci0gVjRMMl9NQlVTX0ZNVF9GSVhFRCA9IDB4MDAwMSwKLSBWNEwyX01CVVNfRk1UX1JHQjQ0NF8yWDhfUEFESElfQkUgPSAweDEwMDEsCi0gVjRMMl9NQlVTX0ZNVF9SR0I0NDRfMlg4X1BBREhJX0xFID0gMHgxMDAyLAorICBWNEwyX01CVVNfRk1UX0ZJWEVEID0gMHgwMDAxLAorICBWNEwyX01CVVNfRk1UX1JHQjQ0NF8yWDhfUEFESElfQkUgPSAweDEwMDEsCisgIFY0TDJfTUJVU19GTVRfUkdCNDQ0XzJYOF9QQURISV9MRSA9IDB4MTAwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NQlVTX0ZNVF9SR0I1NTVfMlg4X1BBREhJX0JFID0gMHgxMDAzLAotIFY0TDJfTUJVU19GTVRfUkdCNTU1XzJYOF9QQURISV9MRSA9IDB4MTAwNCwKLSBWNEwyX01CVVNfRk1UX0JHUjU2NV8yWDhfQkUgPSAweDEwMDUsCi0gVjRMMl9NQlVTX0ZNVF9CR1I1NjVfMlg4X0xFID0gMHgxMDA2LAorICBWNEwyX01CVVNfRk1UX1JHQjU1NV8yWDhfUEFESElfQkUgPSAweDEwMDMsCisgIFY0TDJfTUJVU19GTVRfUkdCNTU1XzJYOF9QQURISV9MRSA9IDB4MTAwNCwKKyAgVjRMMl9NQlVTX0ZNVF9CR1I1NjVfMlg4X0JFID0gMHgxMDA1LAorICBWNEwyX01CVVNfRk1UX0JHUjU2NV8yWDhfTEUgPSAweDEwMDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTUJVU19GTVRfUkdCNTY1XzJYOF9CRSA9IDB4MTAwNywKLSBWNEwyX01CVVNfRk1UX1JHQjU2NV8yWDhfTEUgPSAweDEwMDgsCi0gVjRMMl9NQlVTX0ZNVF9SR0I2NjZfMVgxOCA9IDB4MTAwOSwKLSBWNEwyX01CVVNfRk1UX1JHQjg4OF8xWDI0ID0gMHgxMDBhLAorICBWNEwyX01CVVNfRk1UX1JHQjU2NV8yWDhfQkUgPSAweDEwMDcsCisgIFY0TDJfTUJVU19GTVRfUkdCNTY1XzJYOF9MRSA9IDB4MTAwOCwKKyAgVjRMMl9NQlVTX0ZNVF9SR0I2NjZfMVgxOCA9IDB4MTAwOSwKKyAgVjRMMl9NQlVTX0ZNVF9SR0I4ODhfMVgyNCA9IDB4MTAwYSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NQlVTX0ZNVF9SR0I4ODhfMlgxMl9CRSA9IDB4MTAwYiwKLSBWNEwyX01CVVNfRk1UX1JHQjg4OF8yWDEyX0xFID0gMHgxMDBjLAotIFY0TDJfTUJVU19GTVRfQVJHQjg4ODhfMVgzMiA9IDB4MTAwZCwKLSBWNEwyX01CVVNfRk1UX1k4XzFYOCA9IDB4MjAwMSwKKyAgVjRMMl9NQlVTX0ZNVF9SR0I4ODhfMlgxMl9CRSA9IDB4MTAwYiwKKyAgVjRMMl9NQlVTX0ZNVF9SR0I4ODhfMlgxMl9MRSA9IDB4MTAwYywKKyAgVjRMMl9NQlVTX0ZNVF9BUkdCODg4OF8xWDMyID0gMHgxMDBkLAorICBWNEwyX01CVVNfRk1UX1k4XzFYOCA9IDB4MjAwMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NQlVTX0ZNVF9VVjhfMVg4ID0gMHgyMDE1LAotIFY0TDJfTUJVU19GTVRfVVlWWThfMV81WDggPSAweDIwMDIsCi0gVjRMMl9NQlVTX0ZNVF9WWVVZOF8xXzVYOCA9IDB4MjAwMywKLSBWNEwyX01CVVNfRk1UX1lVWVY4XzFfNVg4ID0gMHgyMDA0LAorICBWNEwyX01CVVNfRk1UX1VWOF8xWDggPSAweDIwMTUsCisgIFY0TDJfTUJVU19GTVRfVVlWWThfMV81WDggPSAweDIwMDIsCisgIFY0TDJfTUJVU19GTVRfVllVWThfMV81WDggPSAweDIwMDMsCisgIFY0TDJfTUJVU19GTVRfWVVZVjhfMV81WDggPSAweDIwMDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTUJVU19GTVRfWVZZVThfMV81WDggPSAweDIwMDUsCi0gVjRMMl9NQlVTX0ZNVF9VWVZZOF8yWDggPSAweDIwMDYsCi0gVjRMMl9NQlVTX0ZNVF9WWVVZOF8yWDggPSAweDIwMDcsCi0gVjRMMl9NQlVTX0ZNVF9ZVVlWOF8yWDggPSAweDIwMDgsCisgIFY0TDJfTUJVU19GTVRfWVZZVThfMV81WDggPSAweDIwMDUsCisgIFY0TDJfTUJVU19GTVRfVVlWWThfMlg4ID0gMHgyMDA2LAorICBWNEwyX01CVVNfRk1UX1ZZVVk4XzJYOCA9IDB4MjAwNywKKyAgVjRMMl9NQlVTX0ZNVF9ZVVlWOF8yWDggPSAweDIwMDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTUJVU19GTVRfWVZZVThfMlg4ID0gMHgyMDA5LAotIFY0TDJfTUJVU19GTVRfWTEwXzFYMTAgPSAweDIwMGEsCi0gVjRMMl9NQlVTX0ZNVF9ZVVlWMTBfMlgxMCA9IDB4MjAwYiwKLSBWNEwyX01CVVNfRk1UX1lWWVUxMF8yWDEwID0gMHgyMDBjLAorICBWNEwyX01CVVNfRk1UX1lWWVU4XzJYOCA9IDB4MjAwOSwKKyAgVjRMMl9NQlVTX0ZNVF9ZMTBfMVgxMCA9IDB4MjAwYSwKKyAgVjRMMl9NQlVTX0ZNVF9VWVZZMTBfMlgxMCA9IDB4MjAxOCwKKyAgVjRMMl9NQlVTX0ZNVF9WWVVZMTBfMlgxMCA9IDB4MjAxOSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NQlVTX0ZNVF9ZMTJfMVgxMiA9IDB4MjAxMywKLSBWNEwyX01CVVNfRk1UX1VZVlk4XzFYMTYgPSAweDIwMGYsCi0gVjRMMl9NQlVTX0ZNVF9WWVVZOF8xWDE2ID0gMHgyMDEwLAotIFY0TDJfTUJVU19GTVRfWVVZVjhfMVgxNiA9IDB4MjAxMSwKKyAgVjRMMl9NQlVTX0ZNVF9ZVVlWMTBfMlgxMCA9IDB4MjAwYiwKKyAgVjRMMl9NQlVTX0ZNVF9ZVllVMTBfMlgxMCA9IDB4MjAwYywKKyAgVjRMMl9NQlVTX0ZNVF9ZMTJfMVgxMiA9IDB4MjAxMywKKyAgVjRMMl9NQlVTX0ZNVF9VWVZZOF8xWDE2ID0gMHgyMDBmLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01CVVNfRk1UX1lWWVU4XzFYMTYgPSAweDIwMTIsCi0gVjRMMl9NQlVTX0ZNVF9ZRFlVWURZVjhfMVgxNiA9IDB4MjAxNCwKLSBWNEwyX01CVVNfRk1UX1lVWVYxMF8xWDIwID0gMHgyMDBkLAotIFY0TDJfTUJVU19GTVRfWVZZVTEwXzFYMjAgPSAweDIwMGUsCisgIFY0TDJfTUJVU19GTVRfVllVWThfMVgxNiA9IDB4MjAxMCwKKyAgVjRMMl9NQlVTX0ZNVF9ZVVlWOF8xWDE2ID0gMHgyMDExLAorICBWNEwyX01CVVNfRk1UX1lWWVU4XzFYMTYgPSAweDIwMTIsCisgIFY0TDJfTUJVU19GTVRfWURZVVlEWVY4XzFYMTYgPSAweDIwMTQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTUJVU19GTVRfWVVWMTBfMVgzMCA9IDB4MjAxNiwKLSBWNEwyX01CVVNfRk1UX0FZVVY4XzFYMzIgPSAweDIwMTcsCi0gVjRMMl9NQlVTX0ZNVF9TQkdHUjhfMVg4ID0gMHgzMDAxLAotIFY0TDJfTUJVU19GTVRfU0dCUkc4XzFYOCA9IDB4MzAxMywKKyAgVjRMMl9NQlVTX0ZNVF9VWVZZMTBfMVgyMCA9IDB4MjAxYSwKKyAgVjRMMl9NQlVTX0ZNVF9WWVVZMTBfMVgyMCA9IDB4MjAxYiwKKyAgVjRMMl9NQlVTX0ZNVF9ZVVlWMTBfMVgyMCA9IDB4MjAwZCwKKyAgVjRMMl9NQlVTX0ZNVF9ZVllVMTBfMVgyMCA9IDB4MjAwZSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NQlVTX0ZNVF9TR1JCRzhfMVg4ID0gMHgzMDAyLAotIFY0TDJfTUJVU19GTVRfU1JHR0I4XzFYOCA9IDB4MzAxNCwKLSBWNEwyX01CVVNfRk1UX1NCR0dSMTBfQUxBVzhfMVg4ID0gMHgzMDE1LAotIFY0TDJfTUJVU19GTVRfU0dCUkcxMF9BTEFXOF8xWDggPSAweDMwMTYsCisgIFY0TDJfTUJVU19GTVRfWVVWMTBfMVgzMCA9IDB4MjAxNiwKKyAgVjRMMl9NQlVTX0ZNVF9BWVVWOF8xWDMyID0gMHgyMDE3LAorICBWNEwyX01CVVNfRk1UX1VZVlkxMl8yWDEyID0gMHgyMDFjLAorICBWNEwyX01CVVNfRk1UX1ZZVVkxMl8yWDEyID0gMHgyMDFkLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01CVVNfRk1UX1NHUkJHMTBfQUxBVzhfMVg4ID0gMHgzMDE3LAotIFY0TDJfTUJVU19GTVRfU1JHR0IxMF9BTEFXOF8xWDggPSAweDMwMTgsCi0gVjRMMl9NQlVTX0ZNVF9TQkdHUjEwX0RQQ004XzFYOCA9IDB4MzAwYiwKLSBWNEwyX01CVVNfRk1UX1NHQlJHMTBfRFBDTThfMVg4ID0gMHgzMDBjLAorICBWNEwyX01CVVNfRk1UX1lVWVYxMl8yWDEyID0gMHgyMDFlLAorICBWNEwyX01CVVNfRk1UX1lWWVUxMl8yWDEyID0gMHgyMDFmLAorICBWNEwyX01CVVNfRk1UX1VZVlkxMl8xWDI0ID0gMHgyMDIwLAorICBWNEwyX01CVVNfRk1UX1ZZVVkxMl8xWDI0ID0gMHgyMDIxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01CVVNfRk1UX1NHUkJHMTBfRFBDTThfMVg4ID0gMHgzMDA5LAotIFY0TDJfTUJVU19GTVRfU1JHR0IxMF9EUENNOF8xWDggPSAweDMwMGQsCi0gVjRMMl9NQlVTX0ZNVF9TQkdHUjEwXzJYOF9QQURISV9CRSA9IDB4MzAwMywKLSBWNEwyX01CVVNfRk1UX1NCR0dSMTBfMlg4X1BBREhJX0xFID0gMHgzMDA0LAorICBWNEwyX01CVVNfRk1UX1lVWVYxMl8xWDI0ID0gMHgyMDIyLAorICBWNEwyX01CVVNfRk1UX1lWWVUxMl8xWDI0ID0gMHgyMDIzLAorICBWNEwyX01CVVNfRk1UX1NCR0dSOF8xWDggPSAweDMwMDEsCisgIFY0TDJfTUJVU19GTVRfU0dCUkc4XzFYOCA9IDB4MzAxMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NQlVTX0ZNVF9TQkdHUjEwXzJYOF9QQURMT19CRSA9IDB4MzAwNSwKLSBWNEwyX01CVVNfRk1UX1NCR0dSMTBfMlg4X1BBRExPX0xFID0gMHgzMDA2LAotIFY0TDJfTUJVU19GTVRfU0JHR1IxMF8xWDEwID0gMHgzMDA3LAotIFY0TDJfTUJVU19GTVRfU0dCUkcxMF8xWDEwID0gMHgzMDBlLAorICBWNEwyX01CVVNfRk1UX1NHUkJHOF8xWDggPSAweDMwMDIsCisgIFY0TDJfTUJVU19GTVRfU1JHR0I4XzFYOCA9IDB4MzAxNCwKKyAgVjRMMl9NQlVTX0ZNVF9TQkdHUjEwX0FMQVc4XzFYOCA9IDB4MzAxNSwKKyAgVjRMMl9NQlVTX0ZNVF9TR0JSRzEwX0FMQVc4XzFYOCA9IDB4MzAxNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NQlVTX0ZNVF9TR1JCRzEwXzFYMTAgPSAweDMwMGEsCi0gVjRMMl9NQlVTX0ZNVF9TUkdHQjEwXzFYMTAgPSAweDMwMGYsCi0gVjRMMl9NQlVTX0ZNVF9TQkdHUjEyXzFYMTIgPSAweDMwMDgsCi0gVjRMMl9NQlVTX0ZNVF9TR0JSRzEyXzFYMTIgPSAweDMwMTAsCisgIFY0TDJfTUJVU19GTVRfU0dSQkcxMF9BTEFXOF8xWDggPSAweDMwMTcsCisgIFY0TDJfTUJVU19GTVRfU1JHR0IxMF9BTEFXOF8xWDggPSAweDMwMTgsCisgIFY0TDJfTUJVU19GTVRfU0JHR1IxMF9EUENNOF8xWDggPSAweDMwMGIsCisgIFY0TDJfTUJVU19GTVRfU0dCUkcxMF9EUENNOF8xWDggPSAweDMwMGMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfTUJVU19GTVRfU0dSQkcxMl8xWDEyID0gMHgzMDExLAotIFY0TDJfTUJVU19GTVRfU1JHR0IxMl8xWDEyID0gMHgzMDEyLAotIFY0TDJfTUJVU19GTVRfSlBFR18xWDggPSAweDQwMDEsCi0gVjRMMl9NQlVTX0ZNVF9TNUNfVVlWWV9KUEVHXzFYOCA9IDB4NTAwMSwKKyAgVjRMMl9NQlVTX0ZNVF9TR1JCRzEwX0RQQ004XzFYOCA9IDB4MzAwOSwKKyAgVjRMMl9NQlVTX0ZNVF9TUkdHQjEwX0RQQ004XzFYOCA9IDB4MzAwZCwKKyAgVjRMMl9NQlVTX0ZNVF9TQkdHUjEwXzJYOF9QQURISV9CRSA9IDB4MzAwMywKKyAgVjRMMl9NQlVTX0ZNVF9TQkdHUjEwXzJYOF9QQURISV9MRSA9IDB4MzAwNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9NQlVTX0ZNVF9BSFNWODg4OF8xWDMyID0gMHg2MDAxLAorICBWNEwyX01CVVNfRk1UX1NCR0dSMTBfMlg4X1BBRExPX0JFID0gMHgzMDA1LAorICBWNEwyX01CVVNfRk1UX1NCR0dSMTBfMlg4X1BBRExPX0xFID0gMHgzMDA2LAorICBWNEwyX01CVVNfRk1UX1NCR0dSMTBfMVgxMCA9IDB4MzAwNywKKyAgVjRMMl9NQlVTX0ZNVF9TR0JSRzEwXzFYMTAgPSAweDMwMGUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWNEwyX01CVVNfRk1UX1NHUkJHMTBfMVgxMCA9IDB4MzAwYSwKKyAgVjRMMl9NQlVTX0ZNVF9TUkdHQjEwXzFYMTAgPSAweDMwMGYsCisgIFY0TDJfTUJVU19GTVRfU0JHR1IxMl8xWDEyID0gMHgzMDA4LAorICBWNEwyX01CVVNfRk1UX1NHQlJHMTJfMVgxMiA9IDB4MzAxMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFY0TDJfTUJVU19GTVRfU0dSQkcxMl8xWDEyID0gMHgzMDExLAorICBWNEwyX01CVVNfRk1UX1NSR0dCMTJfMVgxMiA9IDB4MzAxMiwKKyAgVjRMMl9NQlVTX0ZNVF9KUEVHXzFYOCA9IDB4NDAwMSwKKyAgVjRMMl9NQlVTX0ZNVF9TNUNfVVlWWV9KUEVHXzFYOCA9IDB4NTAwMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFY0TDJfTUJVU19GTVRfQUhTVjg4ODhfMVgzMiA9IDB4NjAwMSwKIH07CiBzdHJ1Y3QgdjRsMl9tYnVzX2ZyYW1lZm10IHsKLSBfX3UzMiB3aWR0aDsKKyAgX191MzIgd2lkdGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGhlaWdodDsKLSBfX3UzMiBjb2RlOwotIF9fdTMyIGZpZWxkOwotIF9fdTMyIGNvbG9yc3BhY2U7CisgIF9fdTMyIGhlaWdodDsKKyAgX191MzIgY29kZTsKKyAgX191MzIgZmllbGQ7CisgIF9fdTMyIGNvbG9yc3BhY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzddOworICBfX3UzMiByZXNlcnZlZFs3XTsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdjRsMi1zdWJkZXYuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdjRsMi1zdWJkZXYuaAppbmRleCBhZDljYjhiLi42NTNmODQ2IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Y0bDItc3ViZGV2LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92NGwyLXN1YmRldi5oCkBAIC0yNCw5NiArMjQsOTUgQEAKICNpbmNsdWRlIDxsaW51eC92NGwyLWNvbW1vbi5oPgogI2luY2x1ZGUgPGxpbnV4L3Y0bDItbWVkaWFidXMuaD4KIGVudW0gdjRsMl9zdWJkZXZfZm9ybWF0X3doZW5jZSB7Ci0gVjRMMl9TVUJERVZfRk9STUFUX1RSWSA9IDAsCisgIFY0TDJfU1VCREVWX0ZPUk1BVF9UUlkgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX1NVQkRFVl9GT1JNQVRfQUNUSVZFID0gMSwKKyAgVjRMMl9TVUJERVZfRk9STUFUX0FDVElWRSA9IDEsCiB9Owogc3RydWN0IHY0bDJfc3ViZGV2X2Zvcm1hdCB7Ci0gX191MzIgd2hpY2g7CisgIF9fdTMyIHdoaWNoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwYWQ7Ci0gc3RydWN0IHY0bDJfbWJ1c19mcmFtZWZtdCBmb3JtYXQ7Ci0gX191MzIgcmVzZXJ2ZWRbOF07CisgIF9fdTMyIHBhZDsKKyAgc3RydWN0IHY0bDJfbWJ1c19mcmFtZWZtdCBmb3JtYXQ7CisgIF9fdTMyIHJlc2VydmVkWzhdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9zdWJkZXZfY3JvcCB7Ci0gX191MzIgd2hpY2g7Ci0gX191MzIgcGFkOwotIHN0cnVjdCB2NGwyX3JlY3QgcmVjdDsKKyAgX191MzIgd2hpY2g7CisgIF9fdTMyIHBhZDsKKyAgc3RydWN0IHY0bDJfcmVjdCByZWN0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNlcnZlZFs4XTsKKyAgX191MzIgcmVzZXJ2ZWRbOF07CiB9Owogc3RydWN0IHY0bDJfc3ViZGV2X21idXNfY29kZV9lbnVtIHsKLSBfX3UzMiBwYWQ7CisgIF9fdTMyIHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW5kZXg7Ci0gX191MzIgY29kZTsKLSBfX3UzMiByZXNlcnZlZFs5XTsKKyAgX191MzIgaW5kZXg7CisgIF9fdTMyIGNvZGU7CisgIF9fdTMyIHJlc2VydmVkWzldOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9zdWJkZXZfZnJhbWVfc2l6ZV9lbnVtIHsKLSBfX3UzMiBpbmRleDsKLSBfX3UzMiBwYWQ7Ci0gX191MzIgY29kZTsKKyAgX191MzIgaW5kZXg7CisgIF9fdTMyIHBhZDsKKyAgX191MzIgY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWluX3dpZHRoOwotIF9fdTMyIG1heF93aWR0aDsKLSBfX3UzMiBtaW5faGVpZ2h0OwotIF9fdTMyIG1heF9oZWlnaHQ7CisgIF9fdTMyIG1pbl93aWR0aDsKKyAgX191MzIgbWF4X3dpZHRoOworICBfX3UzMiBtaW5faGVpZ2h0OworICBfX3UzMiBtYXhfaGVpZ2h0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNlcnZlZFs5XTsKKyAgX191MzIgcmVzZXJ2ZWRbOV07CiB9Owogc3RydWN0IHY0bDJfc3ViZGV2X2ZyYW1lX2ludGVydmFsIHsKLSBfX3UzMiBwYWQ7CisgIF9fdTMyIHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHY0bDJfZnJhY3QgaW50ZXJ2YWw7Ci0gX191MzIgcmVzZXJ2ZWRbOV07CisgIHN0cnVjdCB2NGwyX2ZyYWN0IGludGVydmFsOworICBfX3UzMiByZXNlcnZlZFs5XTsKIH07CiBzdHJ1Y3QgdjRsMl9zdWJkZXZfZnJhbWVfaW50ZXJ2YWxfZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGluZGV4OwotIF9fdTMyIHBhZDsKLSBfX3UzMiBjb2RlOwotIF9fdTMyIHdpZHRoOworICBfX3UzMiBpbmRleDsKKyAgX191MzIgcGFkOworICBfX3UzMiBjb2RlOworICBfX3UzMiB3aWR0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaGVpZ2h0OwotIHN0cnVjdCB2NGwyX2ZyYWN0IGludGVydmFsOwotIF9fdTMyIHJlc2VydmVkWzldOworICBfX3UzMiBoZWlnaHQ7CisgIHN0cnVjdCB2NGwyX2ZyYWN0IGludGVydmFsOworICBfX3UzMiByZXNlcnZlZFs5XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfc3ViZGV2X3NlbGVjdGlvbiB7Ci0gX191MzIgd2hpY2g7Ci0gX191MzIgcGFkOwotIF9fdTMyIHRhcmdldDsKKyAgX191MzIgd2hpY2g7CisgIF9fdTMyIHBhZDsKKyAgX191MzIgdGFyZ2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmbGFnczsKLSBzdHJ1Y3QgdjRsMl9yZWN0IHI7Ci0gX191MzIgcmVzZXJ2ZWRbOF07CisgIF9fdTMyIGZsYWdzOworICBzdHJ1Y3QgdjRsMl9yZWN0IHI7CisgIF9fdTMyIHJlc2VydmVkWzhdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgdjRsMl9zdWJkZXZfZWRpZCB7Ci0gX191MzIgcGFkOwotIF9fdTMyIHN0YXJ0X2Jsb2NrOwotIF9fdTMyIGJsb2NrczsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbNV07Ci0gX191OCBfX3VzZXIgKmVkaWQ7Ci19OworI2RlZmluZSB2NGwyX3N1YmRldl9lZGlkIHY0bDJfZWRpZAogI2RlZmluZSBWSURJT0NfU1VCREVWX0dfRk1UIF9JT1dSKCdWJywgNCwgc3RydWN0IHY0bDJfc3ViZGV2X2Zvcm1hdCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJRElPQ19TVUJERVZfU19GTVQgX0lPV1IoJ1YnLCA1LCBzdHJ1Y3QgdjRsMl9zdWJkZXZfZm9ybWF0KQotI2RlZmluZSBWSURJT0NfU1VCREVWX0dfRlJBTUVfSU5URVJWQUwgICBfSU9XUignVicsIDIxLCBzdHJ1Y3QgdjRsMl9zdWJkZXZfZnJhbWVfaW50ZXJ2YWwpCi0jZGVmaW5lIFZJRElPQ19TVUJERVZfU19GUkFNRV9JTlRFUlZBTCAgIF9JT1dSKCdWJywgMjIsIHN0cnVjdCB2NGwyX3N1YmRldl9mcmFtZV9pbnRlcnZhbCkKLSNkZWZpbmUgVklESU9DX1NVQkRFVl9FTlVNX01CVVNfQ09ERSAgIF9JT1dSKCdWJywgMiwgc3RydWN0IHY0bDJfc3ViZGV2X21idXNfY29kZV9lbnVtKQorI2RlZmluZSBWSURJT0NfU1VCREVWX0dfRlJBTUVfSU5URVJWQUwgX0lPV1IoJ1YnLCAyMSwgc3RydWN0IHY0bDJfc3ViZGV2X2ZyYW1lX2ludGVydmFsKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVklESU9DX1NVQkRFVl9FTlVNX0ZSQU1FX1NJWkUgICBfSU9XUignVicsIDc0LCBzdHJ1Y3QgdjRsMl9zdWJkZXZfZnJhbWVfc2l6ZV9lbnVtKQotI2RlZmluZSBWSURJT0NfU1VCREVWX0VOVU1fRlJBTUVfSU5URVJWQUwgICBfSU9XUignVicsIDc1LCBzdHJ1Y3QgdjRsMl9zdWJkZXZfZnJhbWVfaW50ZXJ2YWxfZW51bSkKKyNkZWZpbmUgVklESU9DX1NVQkRFVl9TX0ZSQU1FX0lOVEVSVkFMIF9JT1dSKCdWJywgMjIsIHN0cnVjdCB2NGwyX3N1YmRldl9mcmFtZV9pbnRlcnZhbCkKKyNkZWZpbmUgVklESU9DX1NVQkRFVl9FTlVNX01CVVNfQ09ERSBfSU9XUignVicsIDIsIHN0cnVjdCB2NGwyX3N1YmRldl9tYnVzX2NvZGVfZW51bSkKKyNkZWZpbmUgVklESU9DX1NVQkRFVl9FTlVNX0ZSQU1FX1NJWkUgX0lPV1IoJ1YnLCA3NCwgc3RydWN0IHY0bDJfc3ViZGV2X2ZyYW1lX3NpemVfZW51bSkKKyNkZWZpbmUgVklESU9DX1NVQkRFVl9FTlVNX0ZSQU1FX0lOVEVSVkFMIF9JT1dSKCdWJywgNzUsIHN0cnVjdCB2NGwyX3N1YmRldl9mcmFtZV9pbnRlcnZhbF9lbnVtKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklESU9DX1NVQkRFVl9HX0NST1AgX0lPV1IoJ1YnLCA1OSwgc3RydWN0IHY0bDJfc3ViZGV2X2Nyb3ApCiAjZGVmaW5lIFZJRElPQ19TVUJERVZfU19DUk9QIF9JT1dSKCdWJywgNjAsIHN0cnVjdCB2NGwyX3N1YmRldl9jcm9wKQorI2RlZmluZSBWSURJT0NfU1VCREVWX0dfU0VMRUNUSU9OIF9JT1dSKCdWJywgNjEsIHN0cnVjdCB2NGwyX3N1YmRldl9zZWxlY3Rpb24pCisjZGVmaW5lIFZJRElPQ19TVUJERVZfU19TRUxFQ1RJT04gX0lPV1IoJ1YnLCA2Miwgc3RydWN0IHY0bDJfc3ViZGV2X3NlbGVjdGlvbikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFZJRElPQ19TVUJERVZfR19TRUxFQ1RJT04gICBfSU9XUignVicsIDYxLCBzdHJ1Y3QgdjRsMl9zdWJkZXZfc2VsZWN0aW9uKQotI2RlZmluZSBWSURJT0NfU1VCREVWX1NfU0VMRUNUSU9OICAgX0lPV1IoJ1YnLCA2Miwgc3RydWN0IHY0bDJfc3ViZGV2X3NlbGVjdGlvbikKLSNkZWZpbmUgVklESU9DX1NVQkRFVl9HX0VESUQgX0lPV1IoJ1YnLCA0MCwgc3RydWN0IHY0bDJfc3ViZGV2X2VkaWQpCi0jZGVmaW5lIFZJRElPQ19TVUJERVZfU19FRElEIF9JT1dSKCdWJywgNDEsIHN0cnVjdCB2NGwyX3N1YmRldl9lZGlkKQorI2RlZmluZSBWSURJT0NfU1VCREVWX0dfRURJRCBfSU9XUignVicsIDQwLCBzdHJ1Y3QgdjRsMl9lZGlkKQorI2RlZmluZSBWSURJT0NfU1VCREVWX1NfRURJRCBfSU9XUignVicsIDQxLCBzdHJ1Y3QgdjRsMl9lZGlkKQorI2RlZmluZSBWSURJT0NfU1VCREVWX1NfRFZfVElNSU5HUyBfSU9XUignVicsIDg3LCBzdHJ1Y3QgdjRsMl9kdl90aW1pbmdzKQorI2RlZmluZSBWSURJT0NfU1VCREVWX0dfRFZfVElNSU5HUyBfSU9XUignVicsIDg4LCBzdHJ1Y3QgdjRsMl9kdl90aW1pbmdzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVklESU9DX1NVQkRFVl9FTlVNX0RWX1RJTUlOR1MgX0lPV1IoJ1YnLCA5OCwgc3RydWN0IHY0bDJfZW51bV9kdl90aW1pbmdzKQorI2RlZmluZSBWSURJT0NfU1VCREVWX1FVRVJZX0RWX1RJTUlOR1MgX0lPUignVicsIDk5LCBzdHJ1Y3QgdjRsMl9kdl90aW1pbmdzKQorI2RlZmluZSBWSURJT0NfU1VCREVWX0RWX1RJTUlOR1NfQ0FQIF9JT1dSKCdWJywgMTAwLCBzdHJ1Y3QgdjRsMl9kdl90aW1pbmdzX2NhcCkKICNlbmRpZgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmVyc2lvbi5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92ZXJzaW9uLmgKaW5kZXggNzFlNTM3My4uYTZjNmEyZiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92ZXJzaW9uLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92ZXJzaW9uLmgKQEAgLTE2LDUgKzE2LDUgQEAKICAqKioKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLSNkZWZpbmUgTElOVVhfVkVSU0lPTl9DT0RFIDIwMDE5MgorI2RlZmluZSBMSU5VWF9WRVJTSU9OX0NPREUgMjAxMjI2CiAjZGVmaW5lIEtFUk5FTF9WRVJTSU9OKGEsYixjKSAoKChhKSA8PCAxNikgKyAoKGIpIDw8IDgpICsgKGMpKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92ZXRoLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZldGguaAppbmRleCAwMDBmNTZiLi5lMDhlYzIzIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZldGguaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZldGguaApAQCAtMTksMTAgKzE5LDEwIEBACiAjaWZuZGVmIF9fTkVUX1ZFVEhfSF8KICNkZWZpbmUgX19ORVRfVkVUSF9IXwogZW51bSB7Ci0gVkVUSF9JTkZPX1VOU1BFQywKKyAgVkVUSF9JTkZPX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVkVUSF9JTkZPX1BFRVIsCi0gX19WRVRIX0lORk9fTUFYCisgIFZFVEhfSU5GT19QRUVSLAorICBfX1ZFVEhfSU5GT19NQVgKICNkZWZpbmUgVkVUSF9JTkZPX01BWCAoX19WRVRIX0lORk9fTUFYIC0gMSkKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92ZmlvLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZmaW8uaAppbmRleCA4OGNiMDY3Li4zMmRiNzBlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZmaW8uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZmaW8uaApAQCAtMjQsNiArMjQsMTEgQEAKICNkZWZpbmUgVkZJT19BUElfVkVSU0lPTiAwCiAjZGVmaW5lIFZGSU9fVFlQRTFfSU9NTVUgMQogI2RlZmluZSBWRklPX1NQQVBSX1RDRV9JT01NVSAyCisjZGVmaW5lIFZGSU9fVFlQRTF2Ml9JT01NVSAzCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWRklPX0RNQV9DQ19JT01NVSA0CisjZGVmaW5lIFZGSU9fRUVIIDUKKyNkZWZpbmUgVkZJT19UWVBFMV9ORVNUSU5HX0lPTU1VIDYKICNkZWZpbmUgVkZJT19UWVBFICgnOycpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWRklPX0JBU0UgMTAwCkBAIC0zMiw4ICszNyw4IEBACiAjZGVmaW5lIFZGSU9fU0VUX0lPTU1VIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHZmaW9fZ3JvdXBfc3RhdHVzIHsKLSBfX3UzMiBhcmdzejsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgYXJnc3o7CisgIF9fdTMyIGZsYWdzOwogI2RlZmluZSBWRklPX0dST1VQX0ZMQUdTX1ZJQUJMRSAoMSA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVkZJT19HUk9VUF9GTEFHU19DT05UQUlORVJfU0VUICgxIDw8IDEpCkBAIC00NCw0OSArNDksNDkgQEAKICNkZWZpbmUgVkZJT19HUk9VUF9VTlNFVF9DT05UQUlORVIgX0lPKFZGSU9fVFlQRSwgVkZJT19CQVNFICsgNSkKICNkZWZpbmUgVkZJT19HUk9VUF9HRVRfREVWSUNFX0ZEIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDYpCiBzdHJ1Y3QgdmZpb19kZXZpY2VfaW5mbyB7Ci0gX191MzIgYXJnc3o7CisgIF9fdTMyIGFyZ3N6OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmbGFnczsKKyAgX191MzIgZmxhZ3M7CiAjZGVmaW5lIFZGSU9fREVWSUNFX0ZMQUdTX1JFU0VUICgxIDw8IDApCiAjZGVmaW5lIFZGSU9fREVWSUNFX0ZMQUdTX1BDSSAoMSA8PCAxKQotIF9fdTMyIG51bV9yZWdpb25zOworICBfX3UzMiBudW1fcmVnaW9uczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbnVtX2lycXM7CisgIF9fdTMyIG51bV9pcnFzOwogfTsKICNkZWZpbmUgVkZJT19ERVZJQ0VfR0VUX0lORk8gX0lPKFZGSU9fVFlQRSwgVkZJT19CQVNFICsgNykKIHN0cnVjdCB2ZmlvX3JlZ2lvbl9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYXJnc3o7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGFyZ3N6OworICBfX3UzMiBmbGFnczsKICNkZWZpbmUgVkZJT19SRUdJT05fSU5GT19GTEFHX1JFQUQgKDEgPDwgMCkKICNkZWZpbmUgVkZJT19SRUdJT05fSU5GT19GTEFHX1dSSVRFICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWRklPX1JFR0lPTl9JTkZPX0ZMQUdfTU1BUCAoMSA8PCAyKQotIF9fdTMyIGluZGV4OwotIF9fdTMyIHJlc3Y7Ci0gX191NjQgc2l6ZTsKKyAgX191MzIgaW5kZXg7CisgIF9fdTMyIHJlc3Y7CisgIF9fdTY0IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IG9mZnNldDsKKyAgX191NjQgb2Zmc2V0OwogfTsKICNkZWZpbmUgVkZJT19ERVZJQ0VfR0VUX1JFR0lPTl9JTkZPIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDgpCiBzdHJ1Y3QgdmZpb19pcnFfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGFyZ3N6OwotIF9fdTMyIGZsYWdzOworICBfX3UzMiBhcmdzejsKKyAgX191MzIgZmxhZ3M7CiAjZGVmaW5lIFZGSU9fSVJRX0lORk9fRVZFTlRGRCAoMSA8PCAwKQogI2RlZmluZSBWRklPX0lSUV9JTkZPX01BU0tBQkxFICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWRklPX0lSUV9JTkZPX0FVVE9NQVNLRUQgKDEgPDwgMikKICNkZWZpbmUgVkZJT19JUlFfSU5GT19OT1JFU0laRSAoMSA8PCAzKQotIF9fdTMyIGluZGV4OwotIF9fdTMyIGNvdW50OworICBfX3UzMiBpbmRleDsKKyAgX191MzIgY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVkZJT19ERVZJQ0VfR0VUX0lSUV9JTkZPIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDkpCiBzdHJ1Y3QgdmZpb19pcnFfc2V0IHsKLSBfX3UzMiBhcmdzejsKKyAgX191MzIgYXJnc3o7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOworICBfX3UzMiBmbGFnczsKICNkZWZpbmUgVkZJT19JUlFfU0VUX0RBVEFfTk9ORSAoMSA8PCAwKQogI2RlZmluZSBWRklPX0lSUV9TRVRfREFUQV9CT09MICgxIDw8IDEpCiAjZGVmaW5lIFZGSU9fSVJRX1NFVF9EQVRBX0VWRU5URkQgKDEgPDwgMikKQEAgLTk0LDEwNiArOTksMTMxIEBACiAjZGVmaW5lIFZGSU9fSVJRX1NFVF9BQ1RJT05fTUFTSyAoMSA8PCAzKQogI2RlZmluZSBWRklPX0lSUV9TRVRfQUNUSU9OX1VOTUFTSyAoMSA8PCA0KQogI2RlZmluZSBWRklPX0lSUV9TRVRfQUNUSU9OX1RSSUdHRVIgKDEgPDwgNSkKLSBfX3UzMiBpbmRleDsKKyAgX191MzIgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN0YXJ0OwotIF9fdTMyIGNvdW50OwotIF9fdTggZGF0YVtdOworICBfX3UzMiBzdGFydDsKKyAgX191MzIgY291bnQ7CisgIF9fdTggZGF0YVtdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZGSU9fREVWSUNFX1NFVF9JUlFTIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDEwKQotI2RlZmluZSBWRklPX0lSUV9TRVRfREFUQV9UWVBFX01BU0sgKFZGSU9fSVJRX1NFVF9EQVRBX05PTkUgfCAgIFZGSU9fSVJRX1NFVF9EQVRBX0JPT0wgfCAgIFZGSU9fSVJRX1NFVF9EQVRBX0VWRU5URkQpCi0jZGVmaW5lIFZGSU9fSVJRX1NFVF9BQ1RJT05fVFlQRV9NQVNLIChWRklPX0lSUV9TRVRfQUNUSU9OX01BU0sgfCAgIFZGSU9fSVJRX1NFVF9BQ1RJT05fVU5NQVNLIHwgICBWRklPX0lSUV9TRVRfQUNUSU9OX1RSSUdHRVIpCisjZGVmaW5lIFZGSU9fSVJRX1NFVF9EQVRBX1RZUEVfTUFTSyAoVkZJT19JUlFfU0VUX0RBVEFfTk9ORSB8IFZGSU9fSVJRX1NFVF9EQVRBX0JPT0wgfCBWRklPX0lSUV9TRVRfREFUQV9FVkVOVEZEKQorI2RlZmluZSBWRklPX0lSUV9TRVRfQUNUSU9OX1RZUEVfTUFTSyAoVkZJT19JUlFfU0VUX0FDVElPTl9NQVNLIHwgVkZJT19JUlFfU0VUX0FDVElPTl9VTk1BU0sgfCBWRklPX0lSUV9TRVRfQUNUSU9OX1RSSUdHRVIpCiAjZGVmaW5lIFZGSU9fREVWSUNFX1JFU0VUIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDExKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFZGSU9fUENJX0JBUjBfUkVHSU9OX0lOREVYLAotIFZGSU9fUENJX0JBUjFfUkVHSU9OX0lOREVYLAotIFZGSU9fUENJX0JBUjJfUkVHSU9OX0lOREVYLAorICBWRklPX1BDSV9CQVIwX1JFR0lPTl9JTkRFWCwKKyAgVkZJT19QQ0lfQkFSMV9SRUdJT05fSU5ERVgsCisgIFZGSU9fUENJX0JBUjJfUkVHSU9OX0lOREVYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWRklPX1BDSV9CQVIzX1JFR0lPTl9JTkRFWCwKLSBWRklPX1BDSV9CQVI0X1JFR0lPTl9JTkRFWCwKLSBWRklPX1BDSV9CQVI1X1JFR0lPTl9JTkRFWCwKLSBWRklPX1BDSV9ST01fUkVHSU9OX0lOREVYLAorICBWRklPX1BDSV9CQVIzX1JFR0lPTl9JTkRFWCwKKyAgVkZJT19QQ0lfQkFSNF9SRUdJT05fSU5ERVgsCisgIFZGSU9fUENJX0JBUjVfUkVHSU9OX0lOREVYLAorICBWRklPX1BDSV9ST01fUkVHSU9OX0lOREVYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWRklPX1BDSV9DT05GSUdfUkVHSU9OX0lOREVYLAotIFZGSU9fUENJX1ZHQV9SRUdJT05fSU5ERVgsCi0gVkZJT19QQ0lfTlVNX1JFR0lPTlMKKyAgVkZJT19QQ0lfQ09ORklHX1JFR0lPTl9JTkRFWCwKKyAgVkZJT19QQ0lfVkdBX1JFR0lPTl9JTkRFWCwKKyAgVkZJT19QQ0lfTlVNX1JFR0lPTlMKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gVkZJT19QQ0lfSU5UWF9JUlFfSU5ERVgsCi0gVkZJT19QQ0lfTVNJX0lSUV9JTkRFWCwKLSBWRklPX1BDSV9NU0lYX0lSUV9JTkRFWCwKKyAgVkZJT19QQ0lfSU5UWF9JUlFfSU5ERVgsCisgIFZGSU9fUENJX01TSV9JUlFfSU5ERVgsCisgIFZGSU9fUENJX01TSVhfSVJRX0lOREVYLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWRklPX1BDSV9FUlJfSVJRX0lOREVYLAotIFZGSU9fUENJX05VTV9JUlFTCisgIFZGSU9fUENJX0VSUl9JUlFfSU5ERVgsCisgIFZGSU9fUENJX05VTV9JUlFTCiB9Owogc3RydWN0IHZmaW9fcGNpX2RlcGVuZGVudF9kZXZpY2UgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBncm91cF9pZDsKLSBfX3UxNiBzZWdtZW50OwotIF9fdTggYnVzOwotIF9fdTggZGV2Zm47CisgIF9fdTMyIGdyb3VwX2lkOworICBfX3UxNiBzZWdtZW50OworICBfX3U4IGJ1czsKKyAgX191OCBkZXZmbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHZmaW9fcGNpX2hvdF9yZXNldF9pbmZvIHsKLSBfX3UzMiBhcmdzejsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgYXJnc3o7CisgIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb3VudDsKLSBzdHJ1Y3QgdmZpb19wY2lfZGVwZW5kZW50X2RldmljZSBkZXZpY2VzW107CisgIF9fdTMyIGNvdW50OworICBzdHJ1Y3QgdmZpb19wY2lfZGVwZW5kZW50X2RldmljZSBkZXZpY2VzW107CiB9OwogI2RlZmluZSBWRklPX0RFVklDRV9HRVRfUENJX0hPVF9SRVNFVF9JTkZPIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDEyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2ZmlvX3BjaV9ob3RfcmVzZXQgewotIF9fdTMyIGFyZ3N6OwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIGNvdW50OworICBfX3UzMiBhcmdzejsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIGNvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBncm91cF9mZHNbXTsKKyAgX19zMzIgZ3JvdXBfZmRzW107CiB9OwogI2RlZmluZSBWRklPX0RFVklDRV9QQ0lfSE9UX1JFU0VUIF9JTyhWRklPX1RZUEUsIFZGSU9fQkFTRSArIDEzKQogc3RydWN0IHZmaW9faW9tbXVfdHlwZTFfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGFyZ3N6OwotIF9fdTMyIGZsYWdzOworICBfX3UzMiBhcmdzejsKKyAgX191MzIgZmxhZ3M7CiAjZGVmaW5lIFZGSU9fSU9NTVVfSU5GT19QR1NJWkVTICgxIDw8IDApCi0gX191NjQgaW92YV9wZ3NpemVzOworICBfX3U2NCBpb3ZhX3Bnc2l6ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVkZJT19JT01NVV9HRVRfSU5GTyBfSU8oVkZJT19UWVBFLCBWRklPX0JBU0UgKyAxMikKIHN0cnVjdCB2ZmlvX2lvbW11X3R5cGUxX2RtYV9tYXAgewotIF9fdTMyIGFyZ3N6OworICBfX3UzMiBhcmdzejsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGZsYWdzOwogI2RlZmluZSBWRklPX0RNQV9NQVBfRkxBR19SRUFEICgxIDw8IDApCiAjZGVmaW5lIFZGSU9fRE1BX01BUF9GTEFHX1dSSVRFICgxIDw8IDEpCi0gX191NjQgdmFkZHI7CisgIF9fdTY0IHZhZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBpb3ZhOwotIF9fdTY0IHNpemU7CisgIF9fdTY0IGlvdmE7CisgIF9fdTY0IHNpemU7CiB9OwogI2RlZmluZSBWRklPX0lPTU1VX01BUF9ETUEgX0lPKFZGSU9fVFlQRSwgVkZJT19CQVNFICsgMTMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHZmaW9faW9tbXVfdHlwZTFfZG1hX3VubWFwIHsKLSBfX3UzMiBhcmdzejsKLSBfX3UzMiBmbGFnczsKLSBfX3U2NCBpb3ZhOworICBfX3UzMiBhcmdzejsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTY0IGlvdmE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHNpemU7CisgIF9fdTY0IHNpemU7CiB9OwogI2RlZmluZSBWRklPX0lPTU1VX1VOTUFQX0RNQSBfSU8oVkZJT19UWVBFLCBWRklPX0JBU0UgKyAxNCkKICNkZWZpbmUgVkZJT19JT01NVV9FTkFCTEUgX0lPKFZGSU9fVFlQRSwgVkZJT19CQVNFICsgMTUpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWRklPX0lPTU1VX0RJU0FCTEUgX0lPKFZGSU9fVFlQRSwgVkZJT19CQVNFICsgMTYpCiBzdHJ1Y3QgdmZpb19pb21tdV9zcGFwcl90Y2VfaW5mbyB7Ci0gX191MzIgYXJnc3o7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTMyIGFyZ3N6OworICBfX3UzMiBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZG1hMzJfd2luZG93X3N0YXJ0OwotIF9fdTMyIGRtYTMyX3dpbmRvd19zaXplOworICBfX3UzMiBkbWEzMl93aW5kb3dfc3RhcnQ7CisgIF9fdTMyIGRtYTMyX3dpbmRvd19zaXplOwogfTsKICNkZWZpbmUgVkZJT19JT01NVV9TUEFQUl9UQ0VfR0VUX0lORk8gX0lPKFZGSU9fVFlQRSwgVkZJT19CQVNFICsgMTIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IHZmaW9fZWVoX3BlX29wIHsKKyAgX191MzIgYXJnc3o7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBvcDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworI2RlZmluZSBWRklPX0VFSF9QRV9ESVNBQkxFIDAKKyNkZWZpbmUgVkZJT19FRUhfUEVfRU5BQkxFIDEKKyNkZWZpbmUgVkZJT19FRUhfUEVfVU5GUkVFWkVfSU8gMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVkZJT19FRUhfUEVfVU5GUkVFWkVfRE1BIDMKKyNkZWZpbmUgVkZJT19FRUhfUEVfR0VUX1NUQVRFIDQKKyNkZWZpbmUgVkZJT19FRUhfUEVfU1RBVEVfTk9STUFMIDAKKyNkZWZpbmUgVkZJT19FRUhfUEVfU1RBVEVfUkVTRVQgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVkZJT19FRUhfUEVfU1RBVEVfU1RPUFBFRCAyCisjZGVmaW5lIFZGSU9fRUVIX1BFX1NUQVRFX1NUT1BQRURfRE1BIDQKKyNkZWZpbmUgVkZJT19FRUhfUEVfU1RBVEVfVU5BVkFJTCA1CisjZGVmaW5lIFZGSU9fRUVIX1BFX1JFU0VUX0RFQUNUSVZBVEUgNQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVkZJT19FRUhfUEVfUkVTRVRfSE9UIDYKKyNkZWZpbmUgVkZJT19FRUhfUEVfUkVTRVRfRlVOREFNRU5UQUwgNworI2RlZmluZSBWRklPX0VFSF9QRV9DT05GSUdVUkUgOAorI2RlZmluZSBWRklPX0VFSF9QRV9PUCBfSU8oVkZJT19UWVBFLCBWRklPX0JBU0UgKyAyMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmhvc3QuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmhvc3QuaAppbmRleCBjNDljMDcxLi4wYTY2ZTdhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Zob3N0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aG9zdC5oCkBAIC0yNiwzOSArMjYsMzkgQEAKICNpbmNsdWRlIDxsaW51eC92aXJ0aW9fcmluZy5oPgogc3RydWN0IHZob3N0X3ZyaW5nX3N0YXRlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGluZGV4OwotIHVuc2lnbmVkIGludCBudW07CisgIHVuc2lnbmVkIGludCBpbmRleDsKKyAgdW5zaWduZWQgaW50IG51bTsKIH07CiBzdHJ1Y3Qgdmhvc3RfdnJpbmdfZmlsZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBpbmRleDsKLSBpbnQgZmQ7CisgIHVuc2lnbmVkIGludCBpbmRleDsKKyAgaW50IGZkOwogfTsKIHN0cnVjdCB2aG9zdF92cmluZ19hZGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGluZGV4OwotIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgaW50IGluZGV4OworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CiAjZGVmaW5lIFZIT1NUX1ZSSU5HX0ZfTE9HIDAKLSBfX3U2NCBkZXNjX3VzZXJfYWRkcjsKKyAgX191NjQgZGVzY191c2VyX2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHVzZWRfdXNlcl9hZGRyOwotIF9fdTY0IGF2YWlsX3VzZXJfYWRkcjsKLSBfX3U2NCBsb2dfZ3Vlc3RfYWRkcjsKKyAgX191NjQgdXNlZF91c2VyX2FkZHI7CisgIF9fdTY0IGF2YWlsX3VzZXJfYWRkcjsKKyAgX191NjQgbG9nX2d1ZXN0X2FkZHI7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2aG9zdF9tZW1vcnlfcmVnaW9uIHsKLSBfX3U2NCBndWVzdF9waHlzX2FkZHI7Ci0gX191NjQgbWVtb3J5X3NpemU7Ci0gX191NjQgdXNlcnNwYWNlX2FkZHI7CisgIF9fdTY0IGd1ZXN0X3BoeXNfYWRkcjsKKyAgX191NjQgbWVtb3J5X3NpemU7CisgIF9fdTY0IHVzZXJzcGFjZV9hZGRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBmbGFnc19wYWRkaW5nOworICBfX3U2NCBmbGFnc19wYWRkaW5nOwogfTsKICNkZWZpbmUgVkhPU1RfUEFHRV9TSVpFIDB4MTAwMAogc3RydWN0IHZob3N0X21lbW9yeSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG5yZWdpb25zOwotIF9fdTMyIHBhZGRpbmc7Ci0gc3RydWN0IHZob3N0X21lbW9yeV9yZWdpb24gcmVnaW9uc1swXTsKKyAgX191MzIgbnJlZ2lvbnM7CisgIF9fdTMyIHBhZGRpbmc7CisgIHN0cnVjdCB2aG9zdF9tZW1vcnlfcmVnaW9uIHJlZ2lvbnNbMF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVkhPU1RfVklSVElPIDB4QUYKQEAgLTg2LDEwICs4NiwxMCBAQAogI2RlZmluZSBWSE9TVF9TQ1NJX0FCSV9WRVJTSU9OIDEKIHN0cnVjdCB2aG9zdF9zY3NpX3RhcmdldCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBhYmlfdmVyc2lvbjsKLSBjaGFyIHZob3N0X3d3cG5bMjI0XTsKLSB1bnNpZ25lZCBzaG9ydCB2aG9zdF90cGd0OwotIHVuc2lnbmVkIHNob3J0IHJlc2VydmVkOworICBpbnQgYWJpX3ZlcnNpb247CisgIGNoYXIgdmhvc3Rfd3dwblsyMjRdOworICB1bnNpZ25lZCBzaG9ydCB2aG9zdF90cGd0OworICB1bnNpZ25lZCBzaG9ydCByZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBWSE9TVF9TQ1NJX1NFVF9FTkRQT0lOVCBfSU9XKFZIT1NUX1ZJUlRJTywgMHg0MCwgc3RydWN0IHZob3N0X3Njc2lfdGFyZ2V0KQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aWRlb2RldjIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlkZW9kZXYyLmgKaW5kZXggYjFjNjA0Mi4uZGYzZWJjMyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aWRlb2RldjIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpZGVvZGV2Mi5oCkBAIC0yOCwxMzkxICsyOCwxNTA4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURFT19NQVhfRlJBTUUgMzIKICNkZWZpbmUgVklERU9fTUFYX1BMQU5FUyA4Ci0jZGVmaW5lIHY0bDJfZm91cmNjKGEsIGIsIGMsIGQpICAoKF9fdTMyKShhKSB8ICgoX191MzIpKGIpIDw8IDgpIHwgKChfX3UzMikoYykgPDwgMTYpIHwgKChfX3UzMikoZCkgPDwgMjQpKQorI2RlZmluZSB2NGwyX2ZvdXJjYyhhLGIsYyxkKSAoKF9fdTMyKSAoYSkgfCAoKF9fdTMyKSAoYikgPDwgOCkgfCAoKF9fdTMyKSAoYykgPDwgMTYpIHwgKChfX3UzMikgKGQpIDw8IDI0KSkKKyNkZWZpbmUgdjRsMl9mb3VyY2NfYmUoYSxiLGMsZCkgKHY0bDJfZm91cmNjKGEsIGIsIGMsIGQpIHwgKDEgPDwgMzEpKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9maWVsZCB7CisgIFY0TDJfRklFTERfQU5ZID0gMCwKKyAgVjRMMl9GSUVMRF9OT05FID0gMSwKKyAgVjRMMl9GSUVMRF9UT1AgPSAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0ZJRUxEX0FOWSA9IDAsCi0gVjRMMl9GSUVMRF9OT05FID0gMSwKLSBWNEwyX0ZJRUxEX1RPUCA9IDIsCi0gVjRMMl9GSUVMRF9CT1RUT00gPSAzLAorICBWNEwyX0ZJRUxEX0JPVFRPTSA9IDMsCisgIFY0TDJfRklFTERfSU5URVJMQUNFRCA9IDQsCisgIFY0TDJfRklFTERfU0VRX1RCID0gNSwKKyAgVjRMMl9GSUVMRF9TRVFfQlQgPSA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0ZJRUxEX0lOVEVSTEFDRUQgPSA0LAotIFY0TDJfRklFTERfU0VRX1RCID0gNSwKLSBWNEwyX0ZJRUxEX1NFUV9CVCA9IDYsCi0gVjRMMl9GSUVMRF9BTFRFUk5BVEUgPSA3LAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0ZJRUxEX0lOVEVSTEFDRURfVEIgPSA4LAotIFY0TDJfRklFTERfSU5URVJMQUNFRF9CVCA9IDksCisgIFY0TDJfRklFTERfQUxURVJOQVRFID0gNywKKyAgVjRMMl9GSUVMRF9JTlRFUkxBQ0VEX1RCID0gOCwKKyAgVjRMMl9GSUVMRF9JTlRFUkxBQ0VEX0JUID0gOSwKIH07Ci0jZGVmaW5lIFY0TDJfRklFTERfSEFTX1RPUChmaWVsZCkgICAoKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX1RPUCB8fCAgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRUQgfHwgIChmaWVsZCkgPT0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEX1RCIHx8ICAoZmllbGQpID09IFY0TDJfRklFTERfSU5URVJMQUNFRF9CVCB8fCAgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX1NFUV9UQiB8fCAgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX1NFUV9CVCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfRklFTERfSEFTX0JPVFRPTShmaWVsZCkgICAoKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0JPVFRPTSB8fCAgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRUQgfHwgIChmaWVsZCkgPT0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEX1RCIHx8ICAoZmllbGQpID09IFY0TDJfRklFTERfSU5URVJMQUNFRF9CVCB8fCAgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX1NFUV9UQiB8fCAgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX1NFUV9CVCkKLSNkZWZpbmUgVjRMMl9GSUVMRF9IQVNfQk9USChmaWVsZCkgICAoKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRUQgfHwgIChmaWVsZCkgPT0gVjRMMl9GSUVMRF9JTlRFUkxBQ0VEX1RCIHx8ICAoZmllbGQpID09IFY0TDJfRklFTERfSU5URVJMQUNFRF9CVCB8fCAgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX1NFUV9UQiB8fCAgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX1NFUV9CVCkKKyNkZWZpbmUgVjRMMl9GSUVMRF9IQVNfVE9QKGZpZWxkKSAoKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX1RPUCB8fCAoZmllbGQpID09IFY0TDJfRklFTERfSU5URVJMQUNFRCB8fCAoZmllbGQpID09IFY0TDJfRklFTERfSU5URVJMQUNFRF9UQiB8fCAoZmllbGQpID09IFY0TDJfRklFTERfSU5URVJMQUNFRF9CVCB8fCAoZmllbGQpID09IFY0TDJfRklFTERfU0VRX1RCIHx8IChmaWVsZCkgPT0gVjRMMl9GSUVMRF9TRVFfQlQpCisjZGVmaW5lIFY0TDJfRklFTERfSEFTX0JPVFRPTShmaWVsZCkgKChmaWVsZCkgPT0gVjRMMl9GSUVMRF9CT1RUT00gfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRUQgfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRURfVEIgfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRURfQlQgfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX1NFUV9UQiB8fCAoZmllbGQpID09IFY0TDJfRklFTERfU0VRX0JUKQorI2RlZmluZSBWNEwyX0ZJRUxEX0hBU19CT1RIKGZpZWxkKSAoKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRUQgfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRURfVEIgfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0lOVEVSTEFDRURfQlQgfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX1NFUV9UQiB8fCAoZmllbGQpID09IFY0TDJfRklFTERfU0VRX0JUKQorI2RlZmluZSBWNEwyX0ZJRUxEX0hBU19UX09SX0IoZmllbGQpICgoZmllbGQpID09IFY0TDJfRklFTERfQk9UVE9NIHx8IChmaWVsZCkgPT0gVjRMMl9GSUVMRF9UT1AgfHwgKGZpZWxkKSA9PSBWNEwyX0ZJRUxEX0FMVEVSTkFURSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHY0bDJfYnVmX3R5cGUgewotIFY0TDJfQlVGX1RZUEVfVklERU9fQ0FQVFVSRSA9IDEsCisgIFY0TDJfQlVGX1RZUEVfVklERU9fQ0FQVFVSRSA9IDEsCisgIFY0TDJfQlVGX1RZUEVfVklERU9fT1VUUFVUID0gMiwKKyAgVjRMMl9CVUZfVFlQRV9WSURFT19PVkVSTEFZID0gMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9CVUZfVFlQRV9WSURFT19PVVRQVVQgPSAyLAotIFY0TDJfQlVGX1RZUEVfVklERU9fT1ZFUkxBWSA9IDMsCi0gVjRMMl9CVUZfVFlQRV9WQklfQ0FQVFVSRSA9IDQsCi0gVjRMMl9CVUZfVFlQRV9WQklfT1VUUFVUID0gNSwKKyAgVjRMMl9CVUZfVFlQRV9WQklfQ0FQVFVSRSA9IDQsCisgIFY0TDJfQlVGX1RZUEVfVkJJX09VVFBVVCA9IDUsCisgIFY0TDJfQlVGX1RZUEVfU0xJQ0VEX1ZCSV9DQVBUVVJFID0gNiwKKyAgVjRMMl9CVUZfVFlQRV9TTElDRURfVkJJX09VVFBVVCA9IDcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfQlVGX1RZUEVfU0xJQ0VEX1ZCSV9DQVBUVVJFID0gNiwKLSBWNEwyX0JVRl9UWVBFX1NMSUNFRF9WQklfT1VUUFVUID0gNywKLSBWNEwyX0JVRl9UWVBFX1ZJREVPX09VVFBVVF9PVkVSTEFZID0gOCwKLSBWNEwyX0JVRl9UWVBFX1ZJREVPX0NBUFRVUkVfTVBMQU5FID0gOSwKKyAgVjRMMl9CVUZfVFlQRV9WSURFT19PVVRQVVRfT1ZFUkxBWSA9IDgsCisgIFY0TDJfQlVGX1RZUEVfVklERU9fQ0FQVFVSRV9NUExBTkUgPSA5LAorICBWNEwyX0JVRl9UWVBFX1ZJREVPX09VVFBVVF9NUExBTkUgPSAxMCwKKyAgVjRMMl9CVUZfVFlQRV9TRFJfQ0FQVFVSRSA9IDExLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0JVRl9UWVBFX1ZJREVPX09VVFBVVF9NUExBTkUgPSAxMCwKLSBWNEwyX0JVRl9UWVBFX1BSSVZBVEUgPSAweDgwLAorICBWNEwyX0JVRl9UWVBFX1BSSVZBVEUgPSAweDgwLAogfTsKLSNkZWZpbmUgVjRMMl9UWVBFX0lTX01VTFRJUExBTkFSKHR5cGUpICAgKCh0eXBlKSA9PSBWNEwyX0JVRl9UWVBFX1ZJREVPX0NBUFRVUkVfTVBMQU5FICAgfHwgKHR5cGUpID09IFY0TDJfQlVGX1RZUEVfVklERU9fT1VUUFVUX01QTEFORSkKKyNkZWZpbmUgVjRMMl9UWVBFX0lTX01VTFRJUExBTkFSKHR5cGUpICgodHlwZSkgPT0gVjRMMl9CVUZfVFlQRV9WSURFT19DQVBUVVJFX01QTEFORSB8fCAodHlwZSkgPT0gVjRMMl9CVUZfVFlQRV9WSURFT19PVVRQVVRfTVBMQU5FKQorI2RlZmluZSBWNEwyX1RZUEVfSVNfT1VUUFVUKHR5cGUpICgodHlwZSkgPT0gVjRMMl9CVUZfVFlQRV9WSURFT19PVVRQVVQgfHwgKHR5cGUpID09IFY0TDJfQlVGX1RZUEVfVklERU9fT1VUUFVUX01QTEFORSB8fCAodHlwZSkgPT0gVjRMMl9CVUZfVFlQRV9WSURFT19PVkVSTEFZIHx8ICh0eXBlKSA9PSBWNEwyX0JVRl9UWVBFX1ZJREVPX09VVFBVVF9PVkVSTEFZIHx8ICh0eXBlKSA9PSBWNEwyX0JVRl9UWVBFX1ZCSV9PVVRQVVQgfHwgKHR5cGUpID09IFY0TDJfQlVGX1RZUEVfU0xJQ0VEX1ZCSV9PVVRQVVQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX1RZUEVfSVNfT1VUUFVUKHR5cGUpICAgKCh0eXBlKSA9PSBWNEwyX0JVRl9UWVBFX1ZJREVPX09VVFBVVCAgIHx8ICh0eXBlKSA9PSBWNEwyX0JVRl9UWVBFX1ZJREVPX09VVFBVVF9NUExBTkUgICB8fCAodHlwZSkgPT0gVjRMMl9CVUZfVFlQRV9WSURFT19PVkVSTEFZICAgfHwgKHR5cGUpID09IFY0TDJfQlVGX1RZUEVfVklERU9fT1VUUFVUX09WRVJMQVkgICB8fCAodHlwZSkgPT0gVjRMMl9CVUZfVFlQRV9WQklfT1VUUFVUICAgfHwgKHR5cGUpID09IFY0TDJfQlVGX1RZUEVfU0xJQ0VEX1ZCSV9PVVRQVVQpCiBlbnVtIHY0bDJfdHVuZXJfdHlwZSB7Ci0gVjRMMl9UVU5FUl9SQURJTyA9IDEsCi0gVjRMMl9UVU5FUl9BTkFMT0dfVFYgPSAyLAorICBWNEwyX1RVTkVSX1JBRElPID0gMSwKKyAgVjRMMl9UVU5FUl9BTkFMT0dfVFYgPSAyLAorICBWNEwyX1RVTkVSX0RJR0lUQUxfVFYgPSAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX1RVTkVSX0RJR0lUQUxfVFYgPSAzLAorICBWNEwyX1RVTkVSX0FEQyA9IDQsCisgIFY0TDJfVFVORVJfUkYgPSA1LAogfTsKIGVudW0gdjRsMl9tZW1vcnkgewotIFY0TDJfTUVNT1JZX01NQVAgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX01FTU9SWV9VU0VSUFRSID0gMiwKLSBWNEwyX01FTU9SWV9PVkVSTEFZID0gMywKLSBWNEwyX01FTU9SWV9ETUFCVUYgPSA0LAorICBWNEwyX01FTU9SWV9NTUFQID0gMSwKKyAgVjRMMl9NRU1PUllfVVNFUlBUUiA9IDIsCisgIFY0TDJfTUVNT1JZX09WRVJMQVkgPSAzLAorICBWNEwyX01FTU9SWV9ETUFCVUYgPSA0LAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB2NGwyX2NvbG9yc3BhY2UgewotIFY0TDJfQ09MT1JTUEFDRV9TTVBURTE3ME0gPSAxLAotIFY0TDJfQ09MT1JTUEFDRV9TTVBURTI0ME0gPSAyLAotIFY0TDJfQ09MT1JTUEFDRV9SRUM3MDkgPSAzLAorICBWNEwyX0NPTE9SU1BBQ0VfU01QVEUxNzBNID0gMSwKKyAgVjRMMl9DT0xPUlNQQUNFX1NNUFRFMjQwTSA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfQ09MT1JTUEFDRV9CVDg3OCA9IDQsCi0gVjRMMl9DT0xPUlNQQUNFXzQ3MF9TWVNURU1fTSA9IDUsCi0gVjRMMl9DT0xPUlNQQUNFXzQ3MF9TWVNURU1fQkcgPSA2LAotIFY0TDJfQ09MT1JTUEFDRV9KUEVHID0gNywKKyAgVjRMMl9DT0xPUlNQQUNFX1JFQzcwOSA9IDMsCisgIFY0TDJfQ09MT1JTUEFDRV9CVDg3OCA9IDQsCisgIFY0TDJfQ09MT1JTUEFDRV80NzBfU1lTVEVNX00gPSA1LAorICBWNEwyX0NPTE9SU1BBQ0VfNDcwX1NZU1RFTV9CRyA9IDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfQ09MT1JTUEFDRV9TUkdCID0gOCwKKyAgVjRMMl9DT0xPUlNQQUNFX0pQRUcgPSA3LAorICBWNEwyX0NPTE9SU1BBQ0VfU1JHQiA9IDgsCiB9OwogZW51bSB2NGwyX3ByaW9yaXR5IHsKLSBWNEwyX1BSSU9SSVRZX1VOU0VUID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gVjRMMl9QUklPUklUWV9CQUNLR1JPVU5EID0gMSwKLSBWNEwyX1BSSU9SSVRZX0lOVEVSQUNUSVZFID0gMiwKLSBWNEwyX1BSSU9SSVRZX1JFQ09SRCA9IDMsCi0gVjRMMl9QUklPUklUWV9ERUZBVUxUID0gVjRMMl9QUklPUklUWV9JTlRFUkFDVElWRSwKKyAgVjRMMl9QUklPUklUWV9VTlNFVCA9IDAsCisgIFY0TDJfUFJJT1JJVFlfQkFDS0dST1VORCA9IDEsCisgIFY0TDJfUFJJT1JJVFlfSU5URVJBQ1RJVkUgPSAyLAorICBWNEwyX1BSSU9SSVRZX1JFQ09SRCA9IDMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBWNEwyX1BSSU9SSVRZX0RFRkFVTFQgPSBWNEwyX1BSSU9SSVRZX0lOVEVSQUNUSVZFLAogfTsKIHN0cnVjdCB2NGwyX3JlY3QgewotIF9fczMyIGxlZnQ7Ci0gX19zMzIgdG9wOworICBfX3MzMiBsZWZ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB3aWR0aDsKLSBfX3UzMiBoZWlnaHQ7CisgIF9fczMyIHRvcDsKKyAgX191MzIgd2lkdGg7CisgIF9fdTMyIGhlaWdodDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfZnJhY3QgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBudW1lcmF0b3I7Ci0gX191MzIgZGVub21pbmF0b3I7CisgIF9fdTMyIG51bWVyYXRvcjsKKyAgX191MzIgZGVub21pbmF0b3I7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2NhcGFiaWxpdHkgeworICBfX3U4IGRyaXZlclsxNl07CisgIF9fdTggY2FyZFszMl07CisgIF9fdTggYnVzX2luZm9bMzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGRyaXZlclsxNl07Ci0gX191OCBjYXJkWzMyXTsKLSBfX3U4IGJ1c19pbmZvWzMyXTsKLSBfX3UzMiB2ZXJzaW9uOworICBfX3UzMiB2ZXJzaW9uOworICBfX3UzMiBjYXBhYmlsaXRpZXM7CisgIF9fdTMyIGRldmljZV9jYXBzOworICBfX3UzMiByZXNlcnZlZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2FwYWJpbGl0aWVzOwotIF9fdTMyIGRldmljZV9jYXBzOwotIF9fdTMyIHJlc2VydmVkWzNdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0FQX1ZJREVPX0NBUFRVUkUgMHgwMDAwMDAwMQogI2RlZmluZSBWNEwyX0NBUF9WSURFT19PVVRQVVQgMHgwMDAwMDAwMgogI2RlZmluZSBWNEwyX0NBUF9WSURFT19PVkVSTEFZIDB4MDAwMDAwMDQKLSNkZWZpbmUgVjRMMl9DQVBfVkJJX0NBUFRVUkUgMHgwMDAwMDAxMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DQVBfVkJJX0NBUFRVUkUgMHgwMDAwMDAxMAogI2RlZmluZSBWNEwyX0NBUF9WQklfT1VUUFVUIDB4MDAwMDAwMjAKICNkZWZpbmUgVjRMMl9DQVBfU0xJQ0VEX1ZCSV9DQVBUVVJFIDB4MDAwMDAwNDAKICNkZWZpbmUgVjRMMl9DQVBfU0xJQ0VEX1ZCSV9PVVRQVVQgMHgwMDAwMDA4MAotI2RlZmluZSBWNEwyX0NBUF9SRFNfQ0FQVFVSRSAweDAwMDAwMTAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NBUF9SRFNfQ0FQVFVSRSAweDAwMDAwMTAwCiAjZGVmaW5lIFY0TDJfQ0FQX1ZJREVPX09VVFBVVF9PVkVSTEFZIDB4MDAwMDAyMDAKICNkZWZpbmUgVjRMMl9DQVBfSFdfRlJFUV9TRUVLIDB4MDAwMDA0MDAKICNkZWZpbmUgVjRMMl9DQVBfUkRTX09VVFBVVCAweDAwMDAwODAwCi0jZGVmaW5lIFY0TDJfQ0FQX1ZJREVPX0NBUFRVUkVfTVBMQU5FIDB4MDAwMDEwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfQ0FQX1ZJREVPX0NBUFRVUkVfTVBMQU5FIDB4MDAwMDEwMDAKICNkZWZpbmUgVjRMMl9DQVBfVklERU9fT1VUUFVUX01QTEFORSAweDAwMDAyMDAwCiAjZGVmaW5lIFY0TDJfQ0FQX1ZJREVPX00yTV9NUExBTkUgMHgwMDAwNDAwMAogI2RlZmluZSBWNEwyX0NBUF9WSURFT19NMk0gMHgwMDAwODAwMAotI2RlZmluZSBWNEwyX0NBUF9UVU5FUiAweDAwMDEwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0NBUF9UVU5FUiAweDAwMDEwMDAwCiAjZGVmaW5lIFY0TDJfQ0FQX0FVRElPIDB4MDAwMjAwMDAKICNkZWZpbmUgVjRMMl9DQVBfUkFESU8gMHgwMDA0MDAwMAogI2RlZmluZSBWNEwyX0NBUF9NT0RVTEFUT1IgMHgwMDA4MDAwMAotI2RlZmluZSBWNEwyX0NBUF9SRUFEV1JJVEUgMHgwMTAwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DQVBfU0RSX0NBUFRVUkUgMHgwMDEwMDAwMAorI2RlZmluZSBWNEwyX0NBUF9FWFRfUElYX0ZPUk1BVCAweDAwMjAwMDAwCisjZGVmaW5lIFY0TDJfQ0FQX1JFQURXUklURSAweDAxMDAwMDAwCiAjZGVmaW5lIFY0TDJfQ0FQX0FTWU5DSU8gMHgwMjAwMDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DQVBfU1RSRUFNSU5HIDB4MDQwMDAwMDAKICNkZWZpbmUgVjRMMl9DQVBfREVWSUNFX0NBUFMgMHg4MDAwMDAwMAogc3RydWN0IHY0bDJfcGl4X2Zvcm1hdCB7CisgIF9fdTMyIHdpZHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB3aWR0aDsKLSBfX3UzMiBoZWlnaHQ7Ci0gX191MzIgcGl4ZWxmb3JtYXQ7Ci0gX191MzIgZmllbGQ7CisgIF9fdTMyIGhlaWdodDsKKyAgX191MzIgcGl4ZWxmb3JtYXQ7CisgIF9fdTMyIGZpZWxkOworICBfX3UzMiBieXRlc3BlcmxpbmU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJ5dGVzcGVybGluZTsKLSBfX3UzMiBzaXplaW1hZ2U7Ci0gX191MzIgY29sb3JzcGFjZTsKLSBfX3UzMiBwcml2OworICBfX3UzMiBzaXplaW1hZ2U7CisgIF9fdTMyIGNvbG9yc3BhY2U7CisgIF9fdTMyIHByaXY7CisgIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9SR0IzMzIgdjRsMl9mb3VyY2MoJ1InLCAnRycsICdCJywgJzEnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfUkdCNDQ0IHY0bDJfZm91cmNjKCdSJywgJzQnLCAnNCcsICc0JykKKyNkZWZpbmUgVjRMMl9QSVhfRk1UX0FSR0I0NDQgdjRsMl9mb3VyY2MoJ0EnLCAnUicsICcxJywgJzInKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9QSVhfRk1UX1hSR0I0NDQgdjRsMl9mb3VyY2MoJ1gnLCAnUicsICcxJywgJzInKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfUkdCNTU1IHY0bDJfZm91cmNjKCdSJywgJ0cnLCAnQicsICdPJykKKyNkZWZpbmUgVjRMMl9QSVhfRk1UX0FSR0I1NTUgdjRsMl9mb3VyY2MoJ0EnLCAnUicsICcxJywgJzUnKQorI2RlZmluZSBWNEwyX1BJWF9GTVRfWFJHQjU1NSB2NGwyX2ZvdXJjYygnWCcsICdSJywgJzEnLCAnNScpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfUkdCNTY1IHY0bDJfZm91cmNjKCdSJywgJ0cnLCAnQicsICdQJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1JHQjU1NVggdjRsMl9mb3VyY2MoJ1InLCAnRycsICdCJywgJ1EnKQorI2RlZmluZSBWNEwyX1BJWF9GTVRfQVJHQjU1NVggdjRsMl9mb3VyY2NfYmUoJ0EnLCAnUicsICcxJywgJzUnKQorI2RlZmluZSBWNEwyX1BJWF9GTVRfWFJHQjU1NVggdjRsMl9mb3VyY2NfYmUoJ1gnLCAnUicsICcxJywgJzUnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1JHQjU2NVggdjRsMl9mb3VyY2MoJ1InLCAnRycsICdCJywgJ1InKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfQkdSNjY2IHY0bDJfZm91cmNjKCdCJywgJ0cnLCAnUicsICdIJykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9CR1IyNCB2NGwyX2ZvdXJjYygnQicsICdHJywgJ1InLCAnMycpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9SR0IyNCB2NGwyX2ZvdXJjYygnUicsICdHJywgJ0InLCAnMycpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfQkdSMzIgdjRsMl9mb3VyY2MoJ0InLCAnRycsICdSJywgJzQnKQorI2RlZmluZSBWNEwyX1BJWF9GTVRfQUJHUjMyIHY0bDJfZm91cmNjKCdBJywgJ1InLCAnMicsICc0JykKKyNkZWZpbmUgVjRMMl9QSVhfRk1UX1hCR1IzMiB2NGwyX2ZvdXJjYygnWCcsICdSJywgJzInLCAnNCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9SR0IzMiB2NGwyX2ZvdXJjYygnUicsICdHJywgJ0InLCAnNCcpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1BJWF9GTVRfQVJHQjMyIHY0bDJfZm91cmNjKCdCJywgJ0EnLCAnMicsICc0JykKKyNkZWZpbmUgVjRMMl9QSVhfRk1UX1hSR0IzMiB2NGwyX2ZvdXJjYygnQicsICdYJywgJzInLCAnNCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9HUkVZIHY0bDJfZm91cmNjKCdHJywgJ1InLCAnRScsICdZJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1k0IHY0bDJfZm91cmNjKCdZJywgJzAnLCAnNCcsICcgJykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZNiB2NGwyX2ZvdXJjYygnWScsICcwJywgJzYnLCAnICcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZMTAgdjRsMl9mb3VyY2MoJ1knLCAnMScsICcwJywgJyAnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1kxMiB2NGwyX2ZvdXJjYygnWScsICcxJywgJzInLCAnICcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZMTYgdjRsMl9mb3VyY2MoJ1knLCAnMScsICc2JywgJyAnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1kxMEJQQUNLIHY0bDJfZm91cmNjKCdZJywgJzEnLCAnMCcsICdCJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1BBTDggdjRsMl9mb3VyY2MoJ1AnLCAnQScsICdMJywgJzgnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1VWOCB2NGwyX2ZvdXJjYygnVScsICdWJywgJzgnLCAnICcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZVlU0MTAgdjRsMl9mb3VyY2MoJ1knLCAnVicsICdVJywgJzknKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1lWVTQyMCB2NGwyX2ZvdXJjYygnWScsICdWJywgJzEnLCAnMicpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZVVlWIHY0bDJfZm91cmNjKCdZJywgJ1UnLCAnWScsICdWJykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZWVVWIHY0bDJfZm91cmNjKCdZJywgJ1knLCAnVScsICdWJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1lWWVUgdjRsMl9mb3VyY2MoJ1knLCAnVicsICdZJywgJ1UnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1VZVlkgdjRsMl9mb3VyY2MoJ1UnLCAnWScsICdWJywgJ1knKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfVllVWSB2NGwyX2ZvdXJjYygnVicsICdZJywgJ1UnLCAnWScpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfWVVWNDIyUCB2NGwyX2ZvdXJjYygnNCcsICcyJywgJzInLCAnUCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZVVY0MTFQIHY0bDJfZm91cmNjKCc0JywgJzEnLCAnMScsICdQJykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZNDFQIHY0bDJfZm91cmNjKCdZJywgJzQnLCAnMScsICdQJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1lVVjQ0NCB2NGwyX2ZvdXJjYygnWScsICc0JywgJzQnLCAnNCcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfWVVWNTU1IHY0bDJfZm91cmNjKCdZJywgJ1UnLCAnVicsICdPJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1lVVjU2NSB2NGwyX2ZvdXJjYygnWScsICdVJywgJ1YnLCAnUCcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfWVVWMzIgdjRsMl9mb3VyY2MoJ1knLCAnVScsICdWJywgJzQnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfWVVWNDEwIHY0bDJfZm91cmNjKCdZJywgJ1UnLCAnVicsICc5JykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZVVY0MjAgdjRsMl9mb3VyY2MoJ1knLCAnVScsICcxJywgJzInKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfSEkyNDAgdjRsMl9mb3VyY2MoJ0gnLCAnSScsICcyJywgJzQnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX0hNMTIgdjRsMl9mb3VyY2MoJ0gnLCAnTScsICcxJywgJzInKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfTTQyMCB2NGwyX2ZvdXJjYygnTScsICc0JywgJzInLCAnMCcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfTlYxMiB2NGwyX2ZvdXJjYygnTicsICdWJywgJzEnLCAnMicpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9OVjIxIHY0bDJfZm91cmNjKCdOJywgJ1YnLCAnMicsICcxJykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9OVjE2IHY0bDJfZm91cmNjKCdOJywgJ1YnLCAnMScsICc2JykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX05WNjEgdjRsMl9mb3VyY2MoJ04nLCAnVicsICc2JywgJzEnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX05WMjQgdjRsMl9mb3VyY2MoJ04nLCAnVicsICcyJywgJzQnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfTlY0MiB2NGwyX2ZvdXJjYygnTicsICdWJywgJzQnLCAnMicpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfTlYxMk0gdjRsMl9mb3VyY2MoJ04nLCAnTScsICcxJywgJzInKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfTlYyMU0gdjRsMl9mb3VyY2MoJ04nLCAnTScsICcyJywgJzEnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX05WMTZNIHY0bDJfZm91cmNjKCdOJywgJ00nLCAnMScsICc2JykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX05WNjFNIHY0bDJfZm91cmNjKCdOJywgJ00nLCAnNicsICcxJykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9OVjEyTVQgdjRsMl9mb3VyY2MoJ1QnLCAnTScsICcxJywgJzInKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfTlYxMk1UXzE2WDE2IHY0bDJfZm91cmNjKCdWJywgJ00nLCAnMScsICcyJykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9ZVVY0MjBNIHY0bDJfZm91cmNjKCdZJywgJ00nLCAnMScsICcyJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1lWVTQyME0gdjRsMl9mb3VyY2MoJ1knLCAnTScsICcyJywgJzEnKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NCR0dSOCB2NGwyX2ZvdXJjYygnQicsICdBJywgJzgnLCAnMScpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TR0JSRzggdjRsMl9mb3VyY2MoJ0cnLCAnQicsICdSJywgJ0cnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NHUkJHOCB2NGwyX2ZvdXJjYygnRycsICdSJywgJ0InLCAnRycpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TUkdHQjggdjRsMl9mb3VyY2MoJ1InLCAnRycsICdHJywgJ0InKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NCR0dSMTAgdjRsMl9mb3VyY2MoJ0InLCAnRycsICcxJywgJzAnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfU0dCUkcxMCB2NGwyX2ZvdXJjYygnRycsICdCJywgJzEnLCAnMCcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfU0dSQkcxMCB2NGwyX2ZvdXJjYygnQicsICdBJywgJzEnLCAnMCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TUkdHQjEwIHY0bDJfZm91cmNjKCdSJywgJ0cnLCAnMScsICcwJykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TQkdHUjEyIHY0bDJfZm91cmNjKCdCJywgJ0cnLCAnMScsICcyJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NHQlJHMTIgdjRsMl9mb3VyY2MoJ0cnLCAnQicsICcxJywgJzInKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NHUkJHMTIgdjRsMl9mb3VyY2MoJ0InLCAnQScsICcxJywgJzInKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfU1JHR0IxMiB2NGwyX2ZvdXJjYygnUicsICdHJywgJzEnLCAnMicpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfU0JHR1IxMEFMQVc4IHY0bDJfZm91cmNjKCdhJywgJ0InLCAnQScsICc4JykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NHQlJHMTBBTEFXOCB2NGwyX2ZvdXJjYygnYScsICdHJywgJ0EnLCAnOCcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfU0dSQkcxMEFMQVc4IHY0bDJfZm91cmNjKCdhJywgJ2cnLCAnQScsICc4JykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NSR0dCMTBBTEFXOCB2NGwyX2ZvdXJjYygnYScsICdSJywgJ0EnLCAnOCcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfU0JHR1IxMERQQ004IHY0bDJfZm91cmNjKCdiJywgJ0InLCAnQScsICc4JykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NHQlJHMTBEUENNOCB2NGwyX2ZvdXJjYygnYicsICdHJywgJ0EnLCAnOCcpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfU0dSQkcxMERQQ004IHY0bDJfZm91cmNjKCdCJywgJ0QnLCAnMScsICcwJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NSR0dCMTBEUENNOCB2NGwyX2ZvdXJjYygnYicsICdSJywgJ0EnLCAnOCcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfU0JHR1IxNiB2NGwyX2ZvdXJjYygnQicsICdZJywgJ1InLCAnMicpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9NSlBFRyB2NGwyX2ZvdXJjYygnTScsICdKJywgJ1AnLCAnRycpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfSlBFRyB2NGwyX2ZvdXJjYygnSicsICdQJywgJ0UnLCAnRycpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9EViB2NGwyX2ZvdXJjYygnZCcsICd2JywgJ3MnLCAnZCcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfTVBFRyB2NGwyX2ZvdXJjYygnTScsICdQJywgJ0UnLCAnRycpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9IMjY0IHY0bDJfZm91cmNjKCdIJywgJzInLCAnNicsICc0JykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9IMjY0X05PX1NDIHY0bDJfZm91cmNjKCdBJywgJ1YnLCAnQycsICcxJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX0gyNjRfTVZDIHY0bDJfZm91cmNjKCdNJywgJzInLCAnNicsICc0JykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9IMjYzIHY0bDJfZm91cmNjKCdIJywgJzInLCAnNicsICczJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX01QRUcxIHY0bDJfZm91cmNjKCdNJywgJ1AnLCAnRycsICcxJykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9NUEVHMiB2NGwyX2ZvdXJjYygnTScsICdQJywgJ0cnLCAnMicpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9NUEVHNCB2NGwyX2ZvdXJjYygnTScsICdQJywgJ0cnLCAnNCcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfWFZJRCB2NGwyX2ZvdXJjYygnWCcsICdWJywgJ0knLCAnRCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9WQzFfQU5ORVhfRyB2NGwyX2ZvdXJjYygnVicsICdDJywgJzEnLCAnRycpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfVkMxX0FOTkVYX0wgdjRsMl9mb3VyY2MoJ1YnLCAnQycsICcxJywgJ0wnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfVlA4IHY0bDJfZm91cmNjKCdWJywgJ1AnLCAnOCcsICcwJykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9DUElBMSB2NGwyX2ZvdXJjYygnQycsICdQJywgJ0knLCAnQScpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9XTlZBIHY0bDJfZm91cmNjKCdXJywgJ04nLCAnVicsICdBJykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TTjlDMTBYIHY0bDJfZm91cmNjKCdTJywgJzknLCAnMScsICcwJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NOOUMyMFhfSTQyMCB2NGwyX2ZvdXJjYygnUycsICc5JywgJzInLCAnMCcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfUFdDMSB2NGwyX2ZvdXJjYygnUCcsICdXJywgJ0MnLCAnMScpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9QV0MyIHY0bDJfZm91cmNjKCdQJywgJ1cnLCAnQycsICcyJykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9FVDYxWDI1MSB2NGwyX2ZvdXJjYygnRScsICc2JywgJzInLCAnNScpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TUENBNTAxIHY0bDJfZm91cmNjKCdTJywgJzUnLCAnMCcsICcxJykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TUENBNTA1IHY0bDJfZm91cmNjKCdTJywgJzUnLCAnMCcsICc1JykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NQQ0E1MDggdjRsMl9mb3VyY2MoJ1MnLCAnNScsICcwJywgJzgnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NQQ0E1NjEgdjRsMl9mb3VyY2MoJ1MnLCAnNScsICc2JywgJzEnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfUEFDMjA3IHY0bDJfZm91cmNjKCdQJywgJzInLCAnMCcsICc3JykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9NUjk3MzEwQSB2NGwyX2ZvdXJjYygnTScsICczJywgJzEnLCAnMCcpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9KTDIwMDVCQ0QgdjRsMl9mb3VyY2MoJ0onLCAnTCcsICcyJywgJzAnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NOOUMyMDI4IHY0bDJfZm91cmNjKCdTJywgJ08nLCAnTicsICdYJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX1NROTA1QyB2NGwyX2ZvdXJjYygnOScsICcwJywgJzUnLCAnQycpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfUEpQRyB2NGwyX2ZvdXJjYygnUCcsICdKJywgJ1AnLCAnRycpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9PVjUxMSB2NGwyX2ZvdXJjYygnTycsICc1JywgJzEnLCAnMScpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfT1Y1MTggdjRsMl9mb3VyY2MoJ08nLCAnNScsICcxJywgJzgnKQogI2RlZmluZSBWNEwyX1BJWF9GTVRfU1RWMDY4MCB2NGwyX2ZvdXJjYygnUycsICc2JywgJzgnLCAnMCcpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1BJWF9GTVRfVE02MDAwIHY0bDJfZm91cmNjKCdUJywgJ00nLCAnNicsICcwJykKICNkZWZpbmUgVjRMMl9QSVhfRk1UX0NJVF9ZWVZZVVkgdjRsMl9mb3VyY2MoJ0MnLCAnSScsICdUJywgJ1YnKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9QSVhfRk1UX0tPTklDQTQyMCB2NGwyX2ZvdXJjYygnSycsICdPJywgJ04nLCAnSScpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9KUEdMIHY0bDJfZm91cmNjKCdKJywgJ1AnLCAnRycsICdMJykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TRTQwMSB2NGwyX2ZvdXJjYygnUycsICc0JywgJzAnLCAnMScpCiAjZGVmaW5lIFY0TDJfUElYX0ZNVF9TNUNfVVlWWV9KUEcgdjRsMl9mb3VyY2MoJ1MnLCAnNScsICdDJywgJ0knKQorI2RlZmluZSBWNEwyX1NEUl9GTVRfQ1U4IHY0bDJfZm91cmNjKCdDJywgJ1UnLCAnMCcsICc4JykKKyNkZWZpbmUgVjRMMl9TRFJfRk1UX0NVMTZMRSB2NGwyX2ZvdXJjYygnQycsICdVJywgJzEnLCAnNicpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1NEUl9GTVRfQ1M4IHY0bDJfZm91cmNjKCdDJywgJ1MnLCAnMCcsICc4JykKKyNkZWZpbmUgVjRMMl9TRFJfRk1UX0NTMTRMRSB2NGwyX2ZvdXJjYygnQycsICdTJywgJzEnLCAnNCcpCisjZGVmaW5lIFY0TDJfU0RSX0ZNVF9SVTEyTEUgdjRsMl9mb3VyY2MoJ1InLCAnVScsICcxJywgJzInKQorI2RlZmluZSBWNEwyX1BJWF9GTVRfUFJJVl9NQUdJQyAweGZlZWRjYWZlCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1BJWF9GTVRfRkxBR19QUkVNVUxfQUxQSEEgMHgwMDAwMDAwMQogc3RydWN0IHY0bDJfZm10ZGVzYyB7Ci0gX191MzIgaW5kZXg7Ci0gX191MzIgdHlwZTsKLSBfX3UzMiBmbGFnczsKKyAgX191MzIgaW5kZXg7CisgIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGVzY3JpcHRpb25bMzJdOwotIF9fdTMyIHBpeGVsZm9ybWF0OwotIF9fdTMyIHJlc2VydmVkWzRdOworICBfX3UzMiBmbGFnczsKKyAgX191OCBkZXNjcmlwdGlvblszMl07CisgIF9fdTMyIHBpeGVsZm9ybWF0OworICBfX3UzMiByZXNlcnZlZFs0XTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9GTVRfRkxBR19DT01QUkVTU0VEIDB4MDAwMQogI2RlZmluZSBWNEwyX0ZNVF9GTEFHX0VNVUxBVEVEIDB4MDAwMgogZW51bSB2NGwyX2ZybXNpemV0eXBlcyB7Ci0gVjRMMl9GUk1TSVpFX1RZUEVfRElTQ1JFVEUgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0ZSTVNJWkVfVFlQRV9DT05USU5VT1VTID0gMiwKLSBWNEwyX0ZSTVNJWkVfVFlQRV9TVEVQV0lTRSA9IDMsCisgIFY0TDJfRlJNU0laRV9UWVBFX0RJU0NSRVRFID0gMSwKKyAgVjRMMl9GUk1TSVpFX1RZUEVfQ09OVElOVU9VUyA9IDIsCisgIFY0TDJfRlJNU0laRV9UWVBFX1NURVBXSVNFID0gMywKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfZnJtc2l6ZV9kaXNjcmV0ZSB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHdpZHRoOwotIF9fdTMyIGhlaWdodDsKKyAgX191MzIgd2lkdGg7CisgIF9fdTMyIGhlaWdodDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfZnJtc2l6ZV9zdGVwd2lzZSB7CisgIF9fdTMyIG1pbl93aWR0aDsKKyAgX191MzIgbWF4X3dpZHRoOworICBfX3UzMiBzdGVwX3dpZHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtaW5fd2lkdGg7Ci0gX191MzIgbWF4X3dpZHRoOwotIF9fdTMyIHN0ZXBfd2lkdGg7Ci0gX191MzIgbWluX2hlaWdodDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X2hlaWdodDsKLSBfX3UzMiBzdGVwX2hlaWdodDsKKyAgX191MzIgbWluX2hlaWdodDsKKyAgX191MzIgbWF4X2hlaWdodDsKKyAgX191MzIgc3RlcF9oZWlnaHQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2ZybXNpemVlbnVtIHsKKyAgX191MzIgaW5kZXg7CisgIF9fdTMyIHBpeGVsX2Zvcm1hdDsKKyAgX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW5kZXg7Ci0gX191MzIgcGl4ZWxfZm9ybWF0OwotIF9fdTMyIHR5cGU7Ci0gdW5pb24geworICB1bmlvbiB7CisgICAgc3RydWN0IHY0bDJfZnJtc2l6ZV9kaXNjcmV0ZSBkaXNjcmV0ZTsKKyAgICBzdHJ1Y3QgdjRsMl9mcm1zaXplX3N0ZXB3aXNlIHN0ZXB3aXNlOworICB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdjRsMl9mcm1zaXplX2Rpc2NyZXRlIGRpc2NyZXRlOwotIHN0cnVjdCB2NGwyX2ZybXNpemVfc3RlcHdpc2Ugc3RlcHdpc2U7Ci0gfTsKLSBfX3UzMiByZXNlcnZlZFsyXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHJlc2VydmVkWzJdOwogfTsKIGVudW0gdjRsMl9mcm1pdmFsdHlwZXMgewotIFY0TDJfRlJNSVZBTF9UWVBFX0RJU0NSRVRFID0gMSwKLSBWNEwyX0ZSTUlWQUxfVFlQRV9DT05USU5VT1VTID0gMiwKKyAgVjRMMl9GUk1JVkFMX1RZUEVfRElTQ1JFVEUgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0ZSTUlWQUxfVFlQRV9TVEVQV0lTRSA9IDMsCisgIFY0TDJfRlJNSVZBTF9UWVBFX0NPTlRJTlVPVVMgPSAyLAorICBWNEwyX0ZSTUlWQUxfVFlQRV9TVEVQV0lTRSA9IDMsCiB9Owogc3RydWN0IHY0bDJfZnJtaXZhbF9zdGVwd2lzZSB7Ci0gc3RydWN0IHY0bDJfZnJhY3QgbWluOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdjRsMl9mcmFjdCBtYXg7Ci0gc3RydWN0IHY0bDJfZnJhY3Qgc3RlcDsKKyAgc3RydWN0IHY0bDJfZnJhY3QgbWluOworICBzdHJ1Y3QgdjRsMl9mcmFjdCBtYXg7CisgIHN0cnVjdCB2NGwyX2ZyYWN0IHN0ZXA7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2ZybWl2YWxlbnVtIHsKKyAgX191MzIgaW5kZXg7CisgIF9fdTMyIHBpeGVsX2Zvcm1hdDsKKyAgX191MzIgd2lkdGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGluZGV4OwotIF9fdTMyIHBpeGVsX2Zvcm1hdDsKLSBfX3UzMiB3aWR0aDsKLSBfX3UzMiBoZWlnaHQ7CisgIF9fdTMyIGhlaWdodDsKKyAgX191MzIgdHlwZTsKKyAgdW5pb24geworICAgIHN0cnVjdCB2NGwyX2ZyYWN0IGRpc2NyZXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eXBlOwotIHVuaW9uIHsKLSBzdHJ1Y3QgdjRsMl9mcmFjdCBkaXNjcmV0ZTsKLSBzdHJ1Y3QgdjRsMl9mcm1pdmFsX3N0ZXB3aXNlIHN0ZXB3aXNlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OwotIF9fdTMyIHJlc2VydmVkWzJdOworICAgIHN0cnVjdCB2NGwyX2ZybWl2YWxfc3RlcHdpc2Ugc3RlcHdpc2U7CisgIH07CisgIF9fdTMyIHJlc2VydmVkWzJdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl90aW1lY29kZSB7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGZsYWdzOworICBfX3U4IGZyYW1lczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UzMiBmbGFnczsKLSBfX3U4IGZyYW1lczsKLSBfX3U4IHNlY29uZHM7CisgIF9fdTggc2Vjb25kczsKKyAgX191OCBtaW51dGVzOworICBfX3U4IGhvdXJzOworICBfX3U4IHVzZXJiaXRzWzRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG1pbnV0ZXM7Ci0gX191OCBob3VyczsKLSBfX3U4IHVzZXJiaXRzWzRdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfVENfVFlQRV8yNEZQUyAxCiAjZGVmaW5lIFY0TDJfVENfVFlQRV8yNUZQUyAyCiAjZGVmaW5lIFY0TDJfVENfVFlQRV8zMEZQUyAzCi0jZGVmaW5lIFY0TDJfVENfVFlQRV81MEZQUyA0CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1RDX1RZUEVfNTBGUFMgNAogI2RlZmluZSBWNEwyX1RDX1RZUEVfNjBGUFMgNQogI2RlZmluZSBWNEwyX1RDX0ZMQUdfRFJPUEZSQU1FIDB4MDAwMQogI2RlZmluZSBWNEwyX1RDX0ZMQUdfQ09MT1JGUkFNRSAweDAwMDIKLSNkZWZpbmUgVjRMMl9UQ19VU0VSQklUU19maWVsZCAweDAwMEMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfVENfVVNFUkJJVFNfZmllbGQgMHgwMDBDCiAjZGVmaW5lIFY0TDJfVENfVVNFUkJJVFNfVVNFUkRFRklORUQgMHgwMDAwCiAjZGVmaW5lIFY0TDJfVENfVVNFUkJJVFNfOEJJVENIQVJTIDB4MDAwOAogc3RydWN0IHY0bDJfanBlZ2NvbXByZXNzaW9uIHsKLSBpbnQgcXVhbGl0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IEFQUG47Ci0gaW50IEFQUF9sZW47Ci0gY2hhciBBUFBfZGF0YVs2MF07Ci0gaW50IENPTV9sZW47CisgIGludCBxdWFsaXR5OworICBpbnQgQVBQbjsKKyAgaW50IEFQUF9sZW47CisgIGNoYXIgQVBQX2RhdGFbNjBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIENPTV9kYXRhWzYwXTsKLSBfX3UzMiBqcGVnX21hcmtlcnM7Ci0jZGVmaW5lIFY0TDJfSlBFR19NQVJLRVJfREhUICgxPDwzKQotI2RlZmluZSBWNEwyX0pQRUdfTUFSS0VSX0RRVCAoMTw8NCkKKyAgaW50IENPTV9sZW47CisgIGNoYXIgQ09NX2RhdGFbNjBdOworICBfX3UzMiBqcGVnX21hcmtlcnM7CisjZGVmaW5lIFY0TDJfSlBFR19NQVJLRVJfREhUICgxIDw8IDMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0pQRUdfTUFSS0VSX0RSSSAoMTw8NSkKLSNkZWZpbmUgVjRMMl9KUEVHX01BUktFUl9DT00gKDE8PDYpCi0jZGVmaW5lIFY0TDJfSlBFR19NQVJLRVJfQVBQICgxPDw3KQorI2RlZmluZSBWNEwyX0pQRUdfTUFSS0VSX0RRVCAoMSA8PCA0KQorI2RlZmluZSBWNEwyX0pQRUdfTUFSS0VSX0RSSSAoMSA8PCA1KQorI2RlZmluZSBWNEwyX0pQRUdfTUFSS0VSX0NPTSAoMSA8PCA2KQorI2RlZmluZSBWNEwyX0pQRUdfTUFSS0VSX0FQUCAoMSA8PCA3KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfcmVxdWVzdGJ1ZmZlcnMgewotIF9fdTMyIGNvdW50OwotIF9fdTMyIHR5cGU7Ci0gX191MzIgbWVtb3J5OworICBfX3UzMiBjb3VudDsKKyAgX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbMl07CisgIF9fdTMyIG1lbW9yeTsKKyAgX191MzIgcmVzZXJ2ZWRbMl07CiB9Owogc3RydWN0IHY0bDJfcGxhbmUgewotIF9fdTMyIGJ5dGVzdXNlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGVuZ3RoOwotIHVuaW9uIHsKLSBfX3UzMiBtZW1fb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgdXNlcnB0cjsKKyAgX191MzIgYnl0ZXN1c2VkOworICBfX3UzMiBsZW5ndGg7CisgIHVuaW9uIHsKKyAgICBfX3UzMiBtZW1fb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBmZDsKLSB9IG07Ci0gX191MzIgZGF0YV9vZmZzZXQ7Ci0gX191MzIgcmVzZXJ2ZWRbMTFdOworICAgIHVuc2lnbmVkIGxvbmcgdXNlcnB0cjsKKyAgICBfX3MzMiBmZDsKKyAgfSBtOworICBfX3UzMiBkYXRhX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHJlc2VydmVkWzExXTsKIH07CiBzdHJ1Y3QgdjRsMl9idWZmZXIgewotIF9fdTMyIGluZGV4OwotIF9fdTMyIHR5cGU7CisgIF9fdTMyIGluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBieXRlc3VzZWQ7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgZmllbGQ7Ci0gc3RydWN0IHRpbWV2YWwgdGltZXN0YW1wOworICBfX3UzMiB0eXBlOworICBfX3UzMiBieXRlc3VzZWQ7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBmaWVsZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHY0bDJfdGltZWNvZGUgdGltZWNvZGU7Ci0gX191MzIgc2VxdWVuY2U7Ci0gX191MzIgbWVtb3J5OwotIHVuaW9uIHsKKyAgc3RydWN0IHRpbWV2YWwgdGltZXN0YW1wOworICBzdHJ1Y3QgdjRsMl90aW1lY29kZSB0aW1lY29kZTsKKyAgX191MzIgc2VxdWVuY2U7CisgIF9fdTMyIG1lbW9yeTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgb2Zmc2V0OwotIHVuc2lnbmVkIGxvbmcgdXNlcnB0cjsKLSBzdHJ1Y3QgdjRsMl9wbGFuZSAqcGxhbmVzOwotIF9fczMyIGZkOworICB1bmlvbiB7CisgICAgX191MzIgb2Zmc2V0OworICAgIHVuc2lnbmVkIGxvbmcgdXNlcnB0cjsKKyAgICBzdHJ1Y3QgdjRsMl9wbGFuZSAqIHBsYW5lczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBtOwotIF9fdTMyIGxlbmd0aDsKLSBfX3UzMiByZXNlcnZlZDI7Ci0gX191MzIgcmVzZXJ2ZWQ7CisgICAgX19zMzIgZmQ7CisgIH0gbTsKKyAgX191MzIgbGVuZ3RoOworICBfX3UzMiByZXNlcnZlZDI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiByZXNlcnZlZDsKIH07Ci0jZGVmaW5lIFY0TDJfQlVGX0ZMQUdfTUFQUEVEIDB4MDAwMQotI2RlZmluZSBWNEwyX0JVRl9GTEFHX1FVRVVFRCAweDAwMDIKLSNkZWZpbmUgVjRMMl9CVUZfRkxBR19ET05FIDB4MDAwNAorI2RlZmluZSBWNEwyX0JVRl9GTEFHX01BUFBFRCAweDAwMDAwMDAxCisjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfUVVFVUVEIDB4MDAwMDAwMDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfQlVGX0ZMQUdfS0VZRlJBTUUgMHgwMDA4Ci0jZGVmaW5lIFY0TDJfQlVGX0ZMQUdfUEZSQU1FIDB4MDAxMAotI2RlZmluZSBWNEwyX0JVRl9GTEFHX0JGUkFNRSAweDAwMjAKLSNkZWZpbmUgVjRMMl9CVUZfRkxBR19FUlJPUiAweDAwNDAKKyNkZWZpbmUgVjRMMl9CVUZfRkxBR19ET05FIDB4MDAwMDAwMDQKKyNkZWZpbmUgVjRMMl9CVUZfRkxBR19LRVlGUkFNRSAweDAwMDAwMDA4CisjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfUEZSQU1FIDB4MDAwMDAwMTAKKyNkZWZpbmUgVjRMMl9CVUZfRkxBR19CRlJBTUUgMHgwMDAwMDAyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9CVUZfRkxBR19USU1FQ09ERSAweDAxMDAKLSNkZWZpbmUgVjRMMl9CVUZfRkxBR19QUkVQQVJFRCAweDA0MDAKLSNkZWZpbmUgVjRMMl9CVUZfRkxBR19OT19DQUNIRV9JTlZBTElEQVRFIDB4MDgwMAotI2RlZmluZSBWNEwyX0JVRl9GTEFHX05PX0NBQ0hFX0NMRUFOIDB4MTAwMAorI2RlZmluZSBWNEwyX0JVRl9GTEFHX0VSUk9SIDB4MDAwMDAwNDAKKyNkZWZpbmUgVjRMMl9CVUZfRkxBR19USU1FQ09ERSAweDAwMDAwMTAwCisjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfUFJFUEFSRUQgMHgwMDAwMDQwMAorI2RlZmluZSBWNEwyX0JVRl9GTEFHX05PX0NBQ0hFX0lOVkFMSURBVEUgMHgwMDAwMDgwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9CVUZfRkxBR19USU1FU1RBTVBfTUFTSyAweGUwMDAKLSNkZWZpbmUgVjRMMl9CVUZfRkxBR19USU1FU1RBTVBfVU5LTk9XTiAweDAwMDAKLSNkZWZpbmUgVjRMMl9CVUZfRkxBR19USU1FU1RBTVBfTU9OT1RPTklDIDB4MjAwMAotI2RlZmluZSBWNEwyX0JVRl9GTEFHX1RJTUVTVEFNUF9DT1BZIDB4NDAwMAorI2RlZmluZSBWNEwyX0JVRl9GTEFHX05PX0NBQ0hFX0NMRUFOIDB4MDAwMDEwMDAKKyNkZWZpbmUgVjRMMl9CVUZfRkxBR19USU1FU1RBTVBfTUFTSyAweDAwMDBlMDAwCisjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfVElNRVNUQU1QX1VOS05PV04gMHgwMDAwMDAwMAorI2RlZmluZSBWNEwyX0JVRl9GTEFHX1RJTUVTVEFNUF9NT05PVE9OSUMgMHgwMDAwMjAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9CVUZfRkxBR19USU1FU1RBTVBfQ09QWSAweDAwMDA0MDAwCisjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfVFNUQU1QX1NSQ19NQVNLIDB4MDAwNzAwMDAKKyNkZWZpbmUgVjRMMl9CVUZfRkxBR19UU1RBTVBfU1JDX0VPRiAweDAwMDAwMDAwCisjZGVmaW5lIFY0TDJfQlVGX0ZMQUdfVFNUQU1QX1NSQ19TT0UgMHgwMDAxMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2V4cG9ydGJ1ZmZlciB7Ci0gX191MzIgdHlwZTsKLSBfX3UzMiBpbmRleDsKLSBfX3UzMiBwbGFuZTsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgaW5kZXg7CisgIF9fdTMyIHBsYW5lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmbGFnczsKLSBfX3MzMiBmZDsKLSBfX3UzMiByZXNlcnZlZFsxMV07CisgIF9fdTMyIGZsYWdzOworICBfX3MzMiBmZDsKKyAgX191MzIgcmVzZXJ2ZWRbMTFdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9mcmFtZWJ1ZmZlciB7Ci0gX191MzIgY2FwYWJpbGl0eTsKLSBfX3UzMiBmbGFnczsKLSB2b2lkICpiYXNlOworICBfX3UzMiBjYXBhYmlsaXR5OworICBfX3UzMiBmbGFnczsKKyAgdm9pZCAqIGJhc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB2NGwyX3BpeF9mb3JtYXQgZm10OworICBzdHJ1Y3QgeworICAgIF9fdTMyIHdpZHRoOworICAgIF9fdTMyIGhlaWdodDsKKyAgICBfX3UzMiBwaXhlbGZvcm1hdDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgX191MzIgZmllbGQ7CisgICAgX191MzIgYnl0ZXNwZXJsaW5lOworICAgIF9fdTMyIHNpemVpbWFnZTsKKyAgICBfX3UzMiBjb2xvcnNwYWNlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICBfX3UzMiBwcml2OworICB9IGZtdDsKIH07CiAjZGVmaW5lIFY0TDJfRkJVRl9DQVBfRVhURVJOT1ZFUkxBWSAweDAwMDEKLSNkZWZpbmUgVjRMMl9GQlVGX0NBUF9DSFJPTUFLRVkgMHgwMDAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0ZCVUZfQ0FQX0NIUk9NQUtFWSAweDAwMDIKICNkZWZpbmUgVjRMMl9GQlVGX0NBUF9MSVNUX0NMSVBQSU5HIDB4MDAwNAogI2RlZmluZSBWNEwyX0ZCVUZfQ0FQX0JJVE1BUF9DTElQUElORyAweDAwMDgKICNkZWZpbmUgVjRMMl9GQlVGX0NBUF9MT0NBTF9BTFBIQSAweDAwMTAKLSNkZWZpbmUgVjRMMl9GQlVGX0NBUF9HTE9CQUxfQUxQSEEgMHgwMDIwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX0ZCVUZfQ0FQX0dMT0JBTF9BTFBIQSAweDAwMjAKICNkZWZpbmUgVjRMMl9GQlVGX0NBUF9MT0NBTF9JTlZfQUxQSEEgMHgwMDQwCiAjZGVmaW5lIFY0TDJfRkJVRl9DQVBfU1JDX0NIUk9NQUtFWSAweDAwODAKICNkZWZpbmUgVjRMMl9GQlVGX0ZMQUdfUFJJTUFSWSAweDAwMDEKLSNkZWZpbmUgVjRMMl9GQlVGX0ZMQUdfT1ZFUkxBWSAweDAwMDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfRkJVRl9GTEFHX09WRVJMQVkgMHgwMDAyCiAjZGVmaW5lIFY0TDJfRkJVRl9GTEFHX0NIUk9NQUtFWSAweDAwMDQKICNkZWZpbmUgVjRMMl9GQlVGX0ZMQUdfTE9DQUxfQUxQSEEgMHgwMDA4CiAjZGVmaW5lIFY0TDJfRkJVRl9GTEFHX0dMT0JBTF9BTFBIQSAweDAwMTAKLSNkZWZpbmUgVjRMMl9GQlVGX0ZMQUdfTE9DQUxfSU5WX0FMUEhBIDB4MDAyMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9GQlVGX0ZMQUdfTE9DQUxfSU5WX0FMUEhBIDB4MDAyMAogI2RlZmluZSBWNEwyX0ZCVUZfRkxBR19TUkNfQ0hST01BS0VZIDB4MDA0MAogc3RydWN0IHY0bDJfY2xpcCB7Ci0gc3RydWN0IHY0bDJfcmVjdCBjOwotIHN0cnVjdCB2NGwyX2NsaXAgX191c2VyICpuZXh0OworICBzdHJ1Y3QgdjRsMl9yZWN0IGM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgdjRsMl9jbGlwIF9fdXNlciAqIG5leHQ7CiB9Owogc3RydWN0IHY0bDJfd2luZG93IHsKLSBzdHJ1Y3QgdjRsMl9yZWN0IHc7Ci0gX191MzIgZmllbGQ7CisgIHN0cnVjdCB2NGwyX3JlY3QgdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2hyb21ha2V5OwotIHN0cnVjdCB2NGwyX2NsaXAgX191c2VyICpjbGlwczsKLSBfX3UzMiBjbGlwY291bnQ7Ci0gdm9pZCBfX3VzZXIgKmJpdG1hcDsKKyAgX191MzIgZmllbGQ7CisgIF9fdTMyIGNocm9tYWtleTsKKyAgc3RydWN0IHY0bDJfY2xpcCBfX3VzZXIgKiBjbGlwczsKKyAgX191MzIgY2xpcGNvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGdsb2JhbF9hbHBoYTsKKyAgdm9pZCBfX3VzZXIgKiBiaXRtYXA7CisgIF9fdTggZ2xvYmFsX2FscGhhOwogfTsKIHN0cnVjdCB2NGwyX2NhcHR1cmVwYXJtIHsKLSBfX3UzMiBjYXBhYmlsaXR5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjYXB0dXJlbW9kZTsKLSBzdHJ1Y3QgdjRsMl9mcmFjdCB0aW1lcGVyZnJhbWU7Ci0gX191MzIgZXh0ZW5kZWRtb2RlOwotIF9fdTMyIHJlYWRidWZmZXJzOworICBfX3UzMiBjYXBhYmlsaXR5OworICBfX3UzMiBjYXB0dXJlbW9kZTsKKyAgc3RydWN0IHY0bDJfZnJhY3QgdGltZXBlcmZyYW1lOworICBfX3UzMiBleHRlbmRlZG1vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzRdOworICBfX3UzMiByZWFkYnVmZmVyczsKKyAgX191MzIgcmVzZXJ2ZWRbNF07CiB9OwogI2RlZmluZSBWNEwyX01PREVfSElHSFFVQUxJVFkgMHgwMDAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NBUF9USU1FUEVSRlJBTUUgMHgxMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfb3V0cHV0cGFybSB7Ci0gX191MzIgY2FwYWJpbGl0eTsKLSBfX3UzMiBvdXRwdXRtb2RlOwotIHN0cnVjdCB2NGwyX2ZyYWN0IHRpbWVwZXJmcmFtZTsKKyAgX191MzIgY2FwYWJpbGl0eTsKKyAgX191MzIgb3V0cHV0bW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZXh0ZW5kZWRtb2RlOwotIF9fdTMyIHdyaXRlYnVmZmVyczsKLSBfX3UzMiByZXNlcnZlZFs0XTsKKyAgc3RydWN0IHY0bDJfZnJhY3QgdGltZXBlcmZyYW1lOworICBfX3UzMiBleHRlbmRlZG1vZGU7CisgIF9fdTMyIHdyaXRlYnVmZmVyczsKKyAgX191MzIgcmVzZXJ2ZWRbNF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9jcm9wY2FwIHsKLSBfX3UzMiB0eXBlOwotIHN0cnVjdCB2NGwyX3JlY3QgYm91bmRzOwotIHN0cnVjdCB2NGwyX3JlY3QgZGVmcmVjdDsKKyAgX191MzIgdHlwZTsKKyAgc3RydWN0IHY0bDJfcmVjdCBib3VuZHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB2NGwyX2ZyYWN0IHBpeGVsYXNwZWN0OworICBzdHJ1Y3QgdjRsMl9yZWN0IGRlZnJlY3Q7CisgIHN0cnVjdCB2NGwyX2ZyYWN0IHBpeGVsYXNwZWN0OwogfTsKIHN0cnVjdCB2NGwyX2Nyb3AgewotIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB2NGwyX3JlY3QgYzsKKyAgX191MzIgdHlwZTsKKyAgc3RydWN0IHY0bDJfcmVjdCBjOwogfTsKIHN0cnVjdCB2NGwyX3NlbGVjdGlvbiB7Ci0gX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGFyZ2V0OwotIF9fdTMyIGZsYWdzOwotIHN0cnVjdCB2NGwyX3JlY3QgcjsKLSBfX3UzMiByZXNlcnZlZFs5XTsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgdGFyZ2V0OworICBfX3UzMiBmbGFnczsKKyAgc3RydWN0IHY0bDJfcmVjdCByOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcmVzZXJ2ZWRbOV07CiB9OwogdHlwZWRlZiBfX3U2NCB2NGwyX3N0ZF9pZDsKLSNkZWZpbmUgVjRMMl9TVERfUEFMX0IgKCh2NGwyX3N0ZF9pZCkweDAwMDAwMDAxKQotI2RlZmluZSBWNEwyX1NURF9QQUxfQjEgKCh2NGwyX3N0ZF9pZCkweDAwMDAwMDAyKQorI2RlZmluZSBWNEwyX1NURF9QQUxfQiAoKHY0bDJfc3RkX2lkKSAweDAwMDAwMDAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9TVERfUEFMX0cgKCh2NGwyX3N0ZF9pZCkweDAwMDAwMDA0KQotI2RlZmluZSBWNEwyX1NURF9QQUxfSCAoKHY0bDJfc3RkX2lkKTB4MDAwMDAwMDgpCi0jZGVmaW5lIFY0TDJfU1REX1BBTF9JICgodjRsMl9zdGRfaWQpMHgwMDAwMDAxMCkKLSNkZWZpbmUgVjRMMl9TVERfUEFMX0QgKCh2NGwyX3N0ZF9pZCkweDAwMDAwMDIwKQorI2RlZmluZSBWNEwyX1NURF9QQUxfQjEgKCh2NGwyX3N0ZF9pZCkgMHgwMDAwMDAwMikKKyNkZWZpbmUgVjRMMl9TVERfUEFMX0cgKCh2NGwyX3N0ZF9pZCkgMHgwMDAwMDAwNCkKKyNkZWZpbmUgVjRMMl9TVERfUEFMX0ggKCh2NGwyX3N0ZF9pZCkgMHgwMDAwMDAwOCkKKyNkZWZpbmUgVjRMMl9TVERfUEFMX0kgKCh2NGwyX3N0ZF9pZCkgMHgwMDAwMDAxMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfU1REX1BBTF9EMSAoKHY0bDJfc3RkX2lkKTB4MDAwMDAwNDApCi0jZGVmaW5lIFY0TDJfU1REX1BBTF9LICgodjRsMl9zdGRfaWQpMHgwMDAwMDA4MCkKLSNkZWZpbmUgVjRMMl9TVERfUEFMX00gKCh2NGwyX3N0ZF9pZCkweDAwMDAwMTAwKQotI2RlZmluZSBWNEwyX1NURF9QQUxfTiAoKHY0bDJfc3RkX2lkKTB4MDAwMDAyMDApCisjZGVmaW5lIFY0TDJfU1REX1BBTF9EICgodjRsMl9zdGRfaWQpIDB4MDAwMDAwMjApCisjZGVmaW5lIFY0TDJfU1REX1BBTF9EMSAoKHY0bDJfc3RkX2lkKSAweDAwMDAwMDQwKQorI2RlZmluZSBWNEwyX1NURF9QQUxfSyAoKHY0bDJfc3RkX2lkKSAweDAwMDAwMDgwKQorI2RlZmluZSBWNEwyX1NURF9QQUxfTSAoKHY0bDJfc3RkX2lkKSAweDAwMDAwMTAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9TVERfUEFMX05jICgodjRsMl9zdGRfaWQpMHgwMDAwMDQwMCkKLSNkZWZpbmUgVjRMMl9TVERfUEFMXzYwICgodjRsMl9zdGRfaWQpMHgwMDAwMDgwMCkKLSNkZWZpbmUgVjRMMl9TVERfTlRTQ19NICgodjRsMl9zdGRfaWQpMHgwMDAwMTAwMCkKLSNkZWZpbmUgVjRMMl9TVERfTlRTQ19NX0pQICgodjRsMl9zdGRfaWQpMHgwMDAwMjAwMCkKKyNkZWZpbmUgVjRMMl9TVERfUEFMX04gKCh2NGwyX3N0ZF9pZCkgMHgwMDAwMDIwMCkKKyNkZWZpbmUgVjRMMl9TVERfUEFMX05jICgodjRsMl9zdGRfaWQpIDB4MDAwMDA0MDApCisjZGVmaW5lIFY0TDJfU1REX1BBTF82MCAoKHY0bDJfc3RkX2lkKSAweDAwMDAwODAwKQorI2RlZmluZSBWNEwyX1NURF9OVFNDX00gKCh2NGwyX3N0ZF9pZCkgMHgwMDAwMTAwMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfU1REX05UU0NfNDQzICgodjRsMl9zdGRfaWQpMHgwMDAwNDAwMCkKLSNkZWZpbmUgVjRMMl9TVERfTlRTQ19NX0tSICgodjRsMl9zdGRfaWQpMHgwMDAwODAwMCkKLSNkZWZpbmUgVjRMMl9TVERfU0VDQU1fQiAoKHY0bDJfc3RkX2lkKTB4MDAwMTAwMDApCi0jZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0QgKCh2NGwyX3N0ZF9pZCkweDAwMDIwMDAwKQorI2RlZmluZSBWNEwyX1NURF9OVFNDX01fSlAgKCh2NGwyX3N0ZF9pZCkgMHgwMDAwMjAwMCkKKyNkZWZpbmUgVjRMMl9TVERfTlRTQ180NDMgKCh2NGwyX3N0ZF9pZCkgMHgwMDAwNDAwMCkKKyNkZWZpbmUgVjRMMl9TVERfTlRTQ19NX0tSICgodjRsMl9zdGRfaWQpIDB4MDAwMDgwMDApCisjZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0IgKCh2NGwyX3N0ZF9pZCkgMHgwMDAxMDAwMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0cgKCh2NGwyX3N0ZF9pZCkweDAwMDQwMDAwKQotI2RlZmluZSBWNEwyX1NURF9TRUNBTV9IICgodjRsMl9zdGRfaWQpMHgwMDA4MDAwMCkKLSNkZWZpbmUgVjRMMl9TVERfU0VDQU1fSyAoKHY0bDJfc3RkX2lkKTB4MDAxMDAwMDApCi0jZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0sxICgodjRsMl9zdGRfaWQpMHgwMDIwMDAwMCkKKyNkZWZpbmUgVjRMMl9TVERfU0VDQU1fRCAoKHY0bDJfc3RkX2lkKSAweDAwMDIwMDAwKQorI2RlZmluZSBWNEwyX1NURF9TRUNBTV9HICgodjRsMl9zdGRfaWQpIDB4MDAwNDAwMDApCisjZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0ggKCh2NGwyX3N0ZF9pZCkgMHgwMDA4MDAwMCkKKyNkZWZpbmUgVjRMMl9TVERfU0VDQU1fSyAoKHY0bDJfc3RkX2lkKSAweDAwMTAwMDAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9TVERfU0VDQU1fTCAoKHY0bDJfc3RkX2lkKTB4MDA0MDAwMDApCi0jZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0xDICgodjRsMl9zdGRfaWQpMHgwMDgwMDAwMCkKLSNkZWZpbmUgVjRMMl9TVERfQVRTQ184X1ZTQiAoKHY0bDJfc3RkX2lkKTB4MDEwMDAwMDApCi0jZGVmaW5lIFY0TDJfU1REX0FUU0NfMTZfVlNCICgodjRsMl9zdGRfaWQpMHgwMjAwMDAwMCkKKyNkZWZpbmUgVjRMMl9TVERfU0VDQU1fSzEgKCh2NGwyX3N0ZF9pZCkgMHgwMDIwMDAwMCkKKyNkZWZpbmUgVjRMMl9TVERfU0VDQU1fTCAoKHY0bDJfc3RkX2lkKSAweDAwNDAwMDAwKQorI2RlZmluZSBWNEwyX1NURF9TRUNBTV9MQyAoKHY0bDJfc3RkX2lkKSAweDAwODAwMDAwKQorI2RlZmluZSBWNEwyX1NURF9BVFNDXzhfVlNCICgodjRsMl9zdGRfaWQpIDB4MDEwMDAwMDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX1NURF9OVFNDIChWNEwyX1NURF9OVFNDX00gfCAgVjRMMl9TVERfTlRTQ19NX0pQIHwgIFY0TDJfU1REX05UU0NfTV9LUikKLSNkZWZpbmUgVjRMMl9TVERfU0VDQU1fREsgKFY0TDJfU1REX1NFQ0FNX0QgfCAgVjRMMl9TVERfU0VDQU1fSyB8ICBWNEwyX1NURF9TRUNBTV9LMSkKLSNkZWZpbmUgVjRMMl9TVERfU0VDQU0gKFY0TDJfU1REX1NFQ0FNX0IgfCAgVjRMMl9TVERfU0VDQU1fRyB8ICBWNEwyX1NURF9TRUNBTV9IIHwgIFY0TDJfU1REX1NFQ0FNX0RLIHwgIFY0TDJfU1REX1NFQ0FNX0wgfCAgVjRMMl9TVERfU0VDQU1fTEMpCi0jZGVmaW5lIFY0TDJfU1REX1BBTF9CRyAoVjRMMl9TVERfUEFMX0IgfCAgVjRMMl9TVERfUEFMX0IxIHwgIFY0TDJfU1REX1BBTF9HKQorI2RlZmluZSBWNEwyX1NURF9BVFNDXzE2X1ZTQiAoKHY0bDJfc3RkX2lkKSAweDAyMDAwMDAwKQorI2RlZmluZSBWNEwyX1NURF9OVFNDIChWNEwyX1NURF9OVFNDX00gfCBWNEwyX1NURF9OVFNDX01fSlAgfCBWNEwyX1NURF9OVFNDX01fS1IpCisjZGVmaW5lIFY0TDJfU1REX1NFQ0FNX0RLIChWNEwyX1NURF9TRUNBTV9EIHwgVjRMMl9TVERfU0VDQU1fSyB8IFY0TDJfU1REX1NFQ0FNX0sxKQorI2RlZmluZSBWNEwyX1NURF9TRUNBTSAoVjRMMl9TVERfU0VDQU1fQiB8IFY0TDJfU1REX1NFQ0FNX0cgfCBWNEwyX1NURF9TRUNBTV9IIHwgVjRMMl9TVERfU0VDQU1fREsgfCBWNEwyX1NURF9TRUNBTV9MIHwgVjRMMl9TVERfU0VDQU1fTEMpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX1NURF9QQUxfREsgKFY0TDJfU1REX1BBTF9EIHwgIFY0TDJfU1REX1BBTF9EMSB8ICBWNEwyX1NURF9QQUxfSykKLSNkZWZpbmUgVjRMMl9TVERfUEFMIChWNEwyX1NURF9QQUxfQkcgfCAgVjRMMl9TVERfUEFMX0RLIHwgIFY0TDJfU1REX1BBTF9IIHwgIFY0TDJfU1REX1BBTF9JKQotI2RlZmluZSBWNEwyX1NURF9CIChWNEwyX1NURF9QQUxfQiB8ICBWNEwyX1NURF9QQUxfQjEgfCAgVjRMMl9TVERfU0VDQU1fQikKLSNkZWZpbmUgVjRMMl9TVERfRyAoVjRMMl9TVERfUEFMX0cgfCAgVjRMMl9TVERfU0VDQU1fRykKKyNkZWZpbmUgVjRMMl9TVERfUEFMX0JHIChWNEwyX1NURF9QQUxfQiB8IFY0TDJfU1REX1BBTF9CMSB8IFY0TDJfU1REX1BBTF9HKQorI2RlZmluZSBWNEwyX1NURF9QQUxfREsgKFY0TDJfU1REX1BBTF9EIHwgVjRMMl9TVERfUEFMX0QxIHwgVjRMMl9TVERfUEFMX0spCisjZGVmaW5lIFY0TDJfU1REX1BBTCAoVjRMMl9TVERfUEFMX0JHIHwgVjRMMl9TVERfUEFMX0RLIHwgVjRMMl9TVERfUEFMX0ggfCBWNEwyX1NURF9QQUxfSSkKKyNkZWZpbmUgVjRMMl9TVERfQiAoVjRMMl9TVERfUEFMX0IgfCBWNEwyX1NURF9QQUxfQjEgfCBWNEwyX1NURF9TRUNBTV9CKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9TVERfSCAoVjRMMl9TVERfUEFMX0ggfCAgVjRMMl9TVERfU0VDQU1fSCkKLSNkZWZpbmUgVjRMMl9TVERfTCAoVjRMMl9TVERfU0VDQU1fTCB8ICBWNEwyX1NURF9TRUNBTV9MQykKLSNkZWZpbmUgVjRMMl9TVERfR0ggKFY0TDJfU1REX0cgfCAgVjRMMl9TVERfSCkKLSNkZWZpbmUgVjRMMl9TVERfREsgKFY0TDJfU1REX1BBTF9ESyB8ICBWNEwyX1NURF9TRUNBTV9ESykKKyNkZWZpbmUgVjRMMl9TVERfRyAoVjRMMl9TVERfUEFMX0cgfCBWNEwyX1NURF9TRUNBTV9HKQorI2RlZmluZSBWNEwyX1NURF9IIChWNEwyX1NURF9QQUxfSCB8IFY0TDJfU1REX1NFQ0FNX0gpCisjZGVmaW5lIFY0TDJfU1REX0wgKFY0TDJfU1REX1NFQ0FNX0wgfCBWNEwyX1NURF9TRUNBTV9MQykKKyNkZWZpbmUgVjRMMl9TVERfR0ggKFY0TDJfU1REX0cgfCBWNEwyX1NURF9IKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVjRMMl9TVERfQkcgKFY0TDJfU1REX0IgfCAgVjRMMl9TVERfRykKLSNkZWZpbmUgVjRMMl9TVERfTU4gKFY0TDJfU1REX1BBTF9NIHwgIFY0TDJfU1REX1BBTF9OIHwgIFY0TDJfU1REX1BBTF9OYyB8ICBWNEwyX1NURF9OVFNDKQotI2RlZmluZSBWNEwyX1NURF9NVFMgKFY0TDJfU1REX05UU0NfTSB8ICBWNEwyX1NURF9QQUxfTSB8ICBWNEwyX1NURF9QQUxfTiB8ICBWNEwyX1NURF9QQUxfTmMpCi0jZGVmaW5lIFY0TDJfU1REXzUyNV82MCAoVjRMMl9TVERfUEFMX00gfCAgVjRMMl9TVERfUEFMXzYwIHwgIFY0TDJfU1REX05UU0MgfCAgVjRMMl9TVERfTlRTQ180NDMpCisjZGVmaW5lIFY0TDJfU1REX0RLIChWNEwyX1NURF9QQUxfREsgfCBWNEwyX1NURF9TRUNBTV9ESykKKyNkZWZpbmUgVjRMMl9TVERfQkcgKFY0TDJfU1REX0IgfCBWNEwyX1NURF9HKQorI2RlZmluZSBWNEwyX1NURF9NTiAoVjRMMl9TVERfUEFMX00gfCBWNEwyX1NURF9QQUxfTiB8IFY0TDJfU1REX1BBTF9OYyB8IFY0TDJfU1REX05UU0MpCisjZGVmaW5lIFY0TDJfU1REX01UUyAoVjRMMl9TVERfTlRTQ19NIHwgVjRMMl9TVERfUEFMX00gfCBWNEwyX1NURF9QQUxfTiB8IFY0TDJfU1REX1BBTF9OYykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFY0TDJfU1REXzYyNV81MCAoVjRMMl9TVERfUEFMIHwgIFY0TDJfU1REX1BBTF9OIHwgIFY0TDJfU1REX1BBTF9OYyB8ICBWNEwyX1NURF9TRUNBTSkKLSNkZWZpbmUgVjRMMl9TVERfQVRTQyAoVjRMMl9TVERfQVRTQ184X1ZTQiB8ICBWNEwyX1NURF9BVFNDXzE2X1ZTQikKKyNkZWZpbmUgVjRMMl9TVERfNTI1XzYwIChWNEwyX1NURF9QQUxfTSB8IFY0TDJfU1REX1BBTF82MCB8IFY0TDJfU1REX05UU0MgfCBWNEwyX1NURF9OVFNDXzQ0MykKKyNkZWZpbmUgVjRMMl9TVERfNjI1XzUwIChWNEwyX1NURF9QQUwgfCBWNEwyX1NURF9QQUxfTiB8IFY0TDJfU1REX1BBTF9OYyB8IFY0TDJfU1REX1NFQ0FNKQorI2RlZmluZSBWNEwyX1NURF9BVFNDIChWNEwyX1NURF9BVFNDXzhfVlNCIHwgVjRMMl9TVERfQVRTQ18xNl9WU0IpCiAjZGVmaW5lIFY0TDJfU1REX1VOS05PV04gMAotI2RlZmluZSBWNEwyX1NURF9BTEwgKFY0TDJfU1REXzUyNV82MCB8ICBWNEwyX1NURF82MjVfNTApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1NURF9BTEwgKFY0TDJfU1REXzUyNV82MCB8IFY0TDJfU1REXzYyNV81MCkKIHN0cnVjdCB2NGwyX3N0YW5kYXJkIHsKLSBfX3UzMiBpbmRleDsKLSB2NGwyX3N0ZF9pZCBpZDsKLSBfX3U4IG5hbWVbMjRdOworICBfX3UzMiBpbmRleDsKKyAgdjRsMl9zdGRfaWQgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB2NGwyX2ZyYWN0IGZyYW1lcGVyaW9kOwotIF9fdTMyIGZyYW1lbGluZXM7Ci0gX191MzIgcmVzZXJ2ZWRbNF07CisgIF9fdTggbmFtZVsyNF07CisgIHN0cnVjdCB2NGwyX2ZyYWN0IGZyYW1lcGVyaW9kOworICBfX3UzMiBmcmFtZWxpbmVzOworICBfX3UzMiByZXNlcnZlZFs0XTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2J0X3RpbWluZ3MgewotIF9fdTMyIHdpZHRoOwotIF9fdTMyIGhlaWdodDsKLSBfX3UzMiBpbnRlcmxhY2VkOworICBfX3UzMiB3aWR0aDsKKyAgX191MzIgaGVpZ2h0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwb2xhcml0aWVzOwotIF9fdTY0IHBpeGVsY2xvY2s7Ci0gX191MzIgaGZyb250cG9yY2g7Ci0gX191MzIgaHN5bmM7CisgIF9fdTMyIGludGVybGFjZWQ7CisgIF9fdTMyIHBvbGFyaXRpZXM7CisgIF9fdTY0IHBpeGVsY2xvY2s7CisgIF9fdTMyIGhmcm9udHBvcmNoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBoYmFja3BvcmNoOwotIF9fdTMyIHZmcm9udHBvcmNoOwotIF9fdTMyIHZzeW5jOwotIF9fdTMyIHZiYWNrcG9yY2g7CisgIF9fdTMyIGhzeW5jOworICBfX3UzMiBoYmFja3BvcmNoOworICBfX3UzMiB2ZnJvbnRwb3JjaDsKKyAgX191MzIgdnN5bmM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlsX3Zmcm9udHBvcmNoOwotIF9fdTMyIGlsX3ZzeW5jOwotIF9fdTMyIGlsX3ZiYWNrcG9yY2g7Ci0gX191MzIgc3RhbmRhcmRzOworICBfX3UzMiB2YmFja3BvcmNoOworICBfX3UzMiBpbF92ZnJvbnRwb3JjaDsKKyAgX191MzIgaWxfdnN5bmM7CisgIF9fdTMyIGlsX3ZiYWNrcG9yY2g7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHJlc2VydmVkWzE0XTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3UzMiBzdGFuZGFyZHM7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiByZXNlcnZlZFsxNF07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9EVl9QUk9HUkVTU0lWRSAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0RWX0lOVEVSTEFDRUQgMQogI2RlZmluZSBWNEwyX0RWX1ZTWU5DX1BPU19QT0wgMHgwMDAwMDAwMQogI2RlZmluZSBWNEwyX0RWX0hTWU5DX1BPU19QT0wgMHgwMDAwMDAwMgotI2RlZmluZSBWNEwyX0RWX0JUX1NURF9DRUE4NjEgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfRFZfQlRfU1REX0NFQTg2MSAoMSA8PCAwKQogI2RlZmluZSBWNEwyX0RWX0JUX1NURF9ETVQgKDEgPDwgMSkKICNkZWZpbmUgVjRMMl9EVl9CVF9TVERfQ1ZUICgxIDw8IDIpCiAjZGVmaW5lIFY0TDJfRFZfQlRfU1REX0dURiAoMSA8PCAzKQotI2RlZmluZSBWNEwyX0RWX0ZMX1JFRFVDRURfQkxBTktJTkcgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfRFZfRkxfUkVEVUNFRF9CTEFOS0lORyAoMSA8PCAwKQogI2RlZmluZSBWNEwyX0RWX0ZMX0NBTl9SRURVQ0VfRlBTICgxIDw8IDEpCiAjZGVmaW5lIFY0TDJfRFZfRkxfUkVEVUNFRF9GUFMgKDEgPDwgMikKICNkZWZpbmUgVjRMMl9EVl9GTF9IQUxGX0xJTkUgKDEgPDwgMykKLSNkZWZpbmUgVjRMMl9EVl9CVF9CTEFOS0lOR19XSURUSChidCkgICAoYnQtPmhmcm9udHBvcmNoICsgYnQtPmhzeW5jICsgYnQtPmhiYWNrcG9yY2gpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBWNEwyX0RWX0JUX0ZSQU1FX1dJRFRIKGJ0KSAgIChidC0+d2lkdGggKyBWNEwyX0RWX0JUX0JMQU5LSU5HX1dJRFRIKGJ0KSkKLSNkZWZpbmUgVjRMMl9EVl9CVF9CTEFOS0lOR19IRUlHSFQoYnQpICAgKGJ0LT52ZnJvbnRwb3JjaCArIGJ0LT52c3luYyArIGJ0LT52YmFja3BvcmNoICsgICBidC0+aWxfdmZyb250cG9yY2ggKyBidC0+aWxfdnN5bmMgKyBidC0+aWxfdmJhY2twb3JjaCkKLSNkZWZpbmUgVjRMMl9EVl9CVF9GUkFNRV9IRUlHSFQoYnQpICAgKGJ0LT5oZWlnaHQgKyBWNEwyX0RWX0JUX0JMQU5LSU5HX0hFSUdIVChidCkpCisjZGVmaW5lIFY0TDJfRFZfQlRfQkxBTktJTkdfV0lEVEgoYnQpICgoYnQpLT5oZnJvbnRwb3JjaCArIChidCktPmhzeW5jICsgKGJ0KS0+aGJhY2twb3JjaCkKKyNkZWZpbmUgVjRMMl9EVl9CVF9GUkFNRV9XSURUSChidCkgKChidCktPndpZHRoICsgVjRMMl9EVl9CVF9CTEFOS0lOR19XSURUSChidCkpCisjZGVmaW5lIFY0TDJfRFZfQlRfQkxBTktJTkdfSEVJR0hUKGJ0KSAoKGJ0KS0+dmZyb250cG9yY2ggKyAoYnQpLT52c3luYyArIChidCktPnZiYWNrcG9yY2ggKyAoYnQpLT5pbF92ZnJvbnRwb3JjaCArIChidCktPmlsX3ZzeW5jICsgKGJ0KS0+aWxfdmJhY2twb3JjaCkKKyNkZWZpbmUgVjRMMl9EVl9CVF9GUkFNRV9IRUlHSFQoYnQpICgoYnQpLT5oZWlnaHQgKyBWNEwyX0RWX0JUX0JMQU5LSU5HX0hFSUdIVChidCkpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfZHZfdGltaW5ncyB7CisgIF9fdTMyIHR5cGU7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgdjRsMl9idF90aW1pbmdzIGJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eXBlOwotIHVuaW9uIHsKLSBzdHJ1Y3QgdjRsMl9idF90aW1pbmdzIGJ0OwotIF9fdTMyIHJlc2VydmVkWzMyXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICAgIF9fdTMyIHJlc2VydmVkWzMyXTsKKyAgfTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFY0TDJfRFZfQlRfNjU2XzExMjAgMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2VudW1fZHZfdGltaW5ncyB7CisgIF9fdTMyIGluZGV4OworICBfX3UzMiBwYWQ7CisgIF9fdTMyIHJlc2VydmVkWzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpbmRleDsKLSBfX3UzMiByZXNlcnZlZFszXTsKLSBzdHJ1Y3QgdjRsMl9kdl90aW1pbmdzIHRpbWluZ3M7CisgIHN0cnVjdCB2NGwyX2R2X3RpbWluZ3MgdGltaW5nczsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfYnRfdGltaW5nc19jYXAgewotIF9fdTMyIG1pbl93aWR0aDsKLSBfX3UzMiBtYXhfd2lkdGg7Ci0gX191MzIgbWluX2hlaWdodDsKKyAgX191MzIgbWluX3dpZHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXhfaGVpZ2h0OwotIF9fdTY0IG1pbl9waXhlbGNsb2NrOwotIF9fdTY0IG1heF9waXhlbGNsb2NrOwotIF9fdTMyIHN0YW5kYXJkczsKKyAgX191MzIgbWF4X3dpZHRoOworICBfX3UzMiBtaW5faGVpZ2h0OworICBfX3UzMiBtYXhfaGVpZ2h0OworICBfX3U2NCBtaW5fcGl4ZWxjbG9jazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY2FwYWJpbGl0aWVzOwotIF9fdTMyIHJlc2VydmVkWzE2XTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U2NCBtYXhfcGl4ZWxjbG9jazsKKyAgX191MzIgc3RhbmRhcmRzOworICBfX3UzMiBjYXBhYmlsaXRpZXM7CisgIF9fdTMyIHJlc2VydmVkWzE2XTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBWNEwyX0RWX0JUX0NBUF9JTlRFUkxBQ0VEICgxIDw8IDApCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0RWX0JUX0NBUF9QUk9HUkVTU0lWRSAoMSA8PCAxKQogI2RlZmluZSBWNEwyX0RWX0JUX0NBUF9SRURVQ0VEX0JMQU5LSU5HICgxIDw8IDIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0RWX0JUX0NBUF9DVVNUT00gKDEgPDwgMykKIHN0cnVjdCB2NGwyX2R2X3RpbWluZ3NfY2FwIHsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgcGFkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eXBlOwotIF9fdTMyIHJlc2VydmVkWzNdOwotIHVuaW9uIHsKLSBzdHJ1Y3QgdjRsMl9idF90aW1pbmdzX2NhcCBidDsKKyAgX191MzIgcmVzZXJ2ZWRbMl07CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgdjRsMl9idF90aW1pbmdzX2NhcCBidDsKKyAgICBfX3UzMiByYXdfZGF0YVszMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJhd19kYXRhWzMyXTsKLSB9OworICB9OwogfTsKIHN0cnVjdCB2NGwyX2lucHV0IHsKKyAgX191MzIgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGluZGV4OwotIF9fdTggbmFtZVszMl07Ci0gX191MzIgdHlwZTsKLSBfX3UzMiBhdWRpb3NldDsKKyAgX191OCBuYW1lWzMyXTsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgYXVkaW9zZXQ7CisgIF9fdTMyIHR1bmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0dW5lcjsKLSB2NGwyX3N0ZF9pZCBzdGQ7Ci0gX191MzIgc3RhdHVzOwotIF9fdTMyIGNhcGFiaWxpdGllczsKKyAgdjRsMl9zdGRfaWQgc3RkOworICBfX3UzMiBzdGF0dXM7CisgIF9fdTMyIGNhcGFiaWxpdGllczsKKyAgX191MzIgcmVzZXJ2ZWRbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzNdOwogfTsKICNkZWZpbmUgVjRMMl9JTlBVVF9UWVBFX1RVTkVSIDEKICNkZWZpbmUgVjRMMl9JTlBVVF9UWVBFX0NBTUVSQSAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0lOX1NUX05PX1BPV0VSIDB4MDAwMDAwMDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfSU5fU1RfTk9fU0lHTkFMIDB4MDAwMDAwMDIKICNkZWZpbmUgVjRMMl9JTl9TVF9OT19DT0xPUiAweDAwMDAwMDA0CiAjZGVmaW5lIFY0TDJfSU5fU1RfSEZMSVAgMHgwMDAwMDAxMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9JTl9TVF9WRkxJUCAweDAwMDAwMDIwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0lOX1NUX05PX0hfTE9DSyAweDAwMDAwMTAwCiAjZGVmaW5lIFY0TDJfSU5fU1RfQ09MT1JfS0lMTCAweDAwMDAwMjAwCiAjZGVmaW5lIFY0TDJfSU5fU1RfTk9fU1lOQyAweDAwMDEwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0lOX1NUX05PX0VRVSAweDAwMDIwMDAwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0lOX1NUX05PX0NBUlJJRVIgMHgwMDA0MDAwMAogI2RlZmluZSBWNEwyX0lOX1NUX01BQ1JPVklTSU9OIDB4MDEwMDAwMDAKICNkZWZpbmUgVjRMMl9JTl9TVF9OT19BQ0NFU1MgMHgwMjAwMDAwMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9JTl9TVF9WVFIgMHgwNDAwMDAwMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9JTl9DQVBfRFZfVElNSU5HUyAweDAwMDAwMDAyCiAjZGVmaW5lIFY0TDJfSU5fQ0FQX0NVU1RPTV9USU1JTkdTIFY0TDJfSU5fQ0FQX0RWX1RJTUlOR1MKICNkZWZpbmUgVjRMMl9JTl9DQVBfU1REIDB4MDAwMDAwMDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9vdXRwdXQgewotIF9fdTMyIGluZGV4OwotIF9fdTggbmFtZVszMl07Ci0gX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYXVkaW9zZXQ7Ci0gX191MzIgbW9kdWxhdG9yOwotIHY0bDJfc3RkX2lkIHN0ZDsKLSBfX3UzMiBjYXBhYmlsaXRpZXM7CisgIF9fdTMyIGluZGV4OworICBfX3U4IG5hbWVbMzJdOworICBfX3UzMiB0eXBlOworICBfX3UzMiBhdWRpb3NldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbM107CisgIF9fdTMyIG1vZHVsYXRvcjsKKyAgdjRsMl9zdGRfaWQgc3RkOworICBfX3UzMiBjYXBhYmlsaXRpZXM7CisgIF9fdTMyIHJlc2VydmVkWzNdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFY0TDJfT1VUUFVUX1RZUEVfTU9EVUxBVE9SIDEKICNkZWZpbmUgVjRMMl9PVVRQVVRfVFlQRV9BTkFMT0cgMgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9PVVRQVVRfVFlQRV9BTkFMT0dWR0FPVkVSTEFZIDMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfT1VUX0NBUF9EVl9USU1JTkdTIDB4MDAwMDAwMDIKICNkZWZpbmUgVjRMMl9PVVRfQ0FQX0NVU1RPTV9USU1JTkdTIFY0TDJfT1VUX0NBUF9EVl9USU1JTkdTCiAjZGVmaW5lIFY0TDJfT1VUX0NBUF9TVEQgMHgwMDAwMDAwNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2NvbnRyb2wgewotIF9fdTMyIGlkOwotIF9fczMyIHZhbHVlOwotfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGlkOworICBfX3MzMiB2YWx1ZTsKK307CiBzdHJ1Y3QgdjRsMl9leHRfY29udHJvbCB7Ci0gX191MzIgaWQ7Ci0gX191MzIgc2l6ZTsKLSBfX3UzMiByZXNlcnZlZDJbMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBfX3MzMiB2YWx1ZTsKLSBfX3M2NCB2YWx1ZTY0OwotIGNoYXIgKnN0cmluZzsKKyAgX191MzIgaWQ7CisgIF9fdTMyIHNpemU7CisgIF9fdTMyIHJlc2VydmVkMlsxXTsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgICAgX19zMzIgdmFsdWU7CisgICAgX19zNjQgdmFsdWU2NDsKKyAgICBjaGFyIF9fdXNlciAqIHN0cmluZzsKKyAgICBfX3U4IF9fdXNlciAqIHBfdTg7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICAgIF9fdTE2IF9fdXNlciAqIHBfdTE2OworICAgIF9fdTMyIF9fdXNlciAqIHBfdTMyOworICAgIHZvaWQgX191c2VyICogcHRyOworICB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdjRsMl9leHRfY29udHJvbHMgewotIF9fdTMyIGN0cmxfY2xhc3M7CisgIF9fdTMyIGN0cmxfY2xhc3M7CisgIF9fdTMyIGNvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb3VudDsKLSBfX3UzMiBlcnJvcl9pZHg7Ci0gX191MzIgcmVzZXJ2ZWRbMl07Ci0gc3RydWN0IHY0bDJfZXh0X2NvbnRyb2wgKmNvbnRyb2xzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZXJyb3JfaWR4OworICBfX3UzMiByZXNlcnZlZFsyXTsKKyAgc3RydWN0IHY0bDJfZXh0X2NvbnRyb2wgKiBjb250cm9sczsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NUUkxfSURfTUFTSyAoMHgwZmZmZmZmZikKICNkZWZpbmUgVjRMMl9DVFJMX0lEMkNMQVNTKGlkKSAoKGlkKSAmIDB4MGZmZjAwMDBVTCkKICNkZWZpbmUgVjRMMl9DVFJMX0RSSVZFUl9QUklWKGlkKSAoKChpZCkgJiAweGZmZmYpID49IDB4MTAwMCkKKyNkZWZpbmUgVjRMMl9DVFJMX01BWF9ESU1TICg0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gdjRsMl9jdHJsX3R5cGUgewotIFY0TDJfQ1RSTF9UWVBFX0lOVEVHRVIgPSAxLAotIFY0TDJfQ1RSTF9UWVBFX0JPT0xFQU4gPSAyLAotIFY0TDJfQ1RSTF9UWVBFX01FTlUgPSAzLAorICBWNEwyX0NUUkxfVFlQRV9JTlRFR0VSID0gMSwKKyAgVjRMMl9DVFJMX1RZUEVfQk9PTEVBTiA9IDIsCisgIFY0TDJfQ1RSTF9UWVBFX01FTlUgPSAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBWNEwyX0NUUkxfVFlQRV9CVVRUT04gPSA0LAotIFY0TDJfQ1RSTF9UWVBFX0lOVEVHRVI2NCA9IDUsCi0gVjRMMl9DVFJMX1RZUEVfQ1RSTF9DTEFTUyA9IDYsCi0gVjRMMl9DVFJMX1RZUEVfU1RSSU5HID0gNywKKyAgVjRMMl9DVFJMX1RZUEVfQlVUVE9OID0gNCwKKyAgVjRMMl9DVFJMX1RZUEVfSU5URUdFUjY0ID0gNSwKKyAgVjRMMl9DVFJMX1RZUEVfQ1RSTF9DTEFTUyA9IDYsCisgIFY0TDJfQ1RSTF9UWVBFX1NUUklORyA9IDcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFY0TDJfQ1RSTF9UWVBFX0JJVE1BU0sgPSA4LAotIFY0TDJfQ1RSTF9UWVBFX0lOVEVHRVJfTUVOVSA9IDksCisgIFY0TDJfQ1RSTF9UWVBFX0JJVE1BU0sgPSA4LAorICBWNEwyX0NUUkxfVFlQRV9JTlRFR0VSX01FTlUgPSA5LAorICBWNEwyX0NUUkxfQ09NUE9VTkRfVFlQRVMgPSAweDAxMDAsCisgIFY0TDJfQ1RSTF9UWVBFX1U4ID0gMHgwMTAwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgVjRMMl9DVFJMX1RZUEVfVTE2ID0gMHgwMTAxLAorICBWNEwyX0NUUkxfVFlQRV9VMzIgPSAweDAxMDIsCiB9Owogc3RydWN0IHY0bDJfcXVlcnljdHJsIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWQ7Ci0gX191MzIgdHlwZTsKLSBfX3U4IG5hbWVbMzJdOwotIF9fczMyIG1pbmltdW07CisgIF9fdTMyIGlkOworICBfX3UzMiB0eXBlOworICBfX3U4IG5hbWVbMzJdOworICBfX3MzMiBtaW5pbXVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBtYXhpbXVtOwotIF9fczMyIHN0ZXA7Ci0gX19zMzIgZGVmYXVsdF92YWx1ZTsKLSBfX3UzMiBmbGFnczsKKyAgX19zMzIgbWF4aW11bTsKKyAgX19zMzIgc3RlcDsKKyAgX19zMzIgZGVmYXVsdF92YWx1ZTsKKyAgX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkWzJdOworICBfX3UzMiByZXNlcnZlZFsyXTsKK307CitzdHJ1Y3QgdjRsMl9xdWVyeV9leHRfY3RybCB7CisgIF9fdTMyIGlkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgdHlwZTsKKyAgY2hhciBuYW1lWzMyXTsKKyAgX19zNjQgbWluaW11bTsKKyAgX19zNjQgbWF4aW11bTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTY0IHN0ZXA7CisgIF9fczY0IGRlZmF1bHRfdmFsdWU7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBlbGVtX3NpemU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBlbGVtczsKKyAgX191MzIgbnJfb2ZfZGltczsKKyAgX191MzIgZGltc1tWNEwyX0NUUkxfTUFYX0RJTVNdOworICBfX3UzMiByZXNlcnZlZFszMl07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB2NGwyX3F1ZXJ5bWVudSB7Ci0gX191MzIgaWQ7CisgIF9fdTMyIGlkOworICBfX3UzMiBpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW5kZXg7Ci0gdW5pb24gewotIF9fdTggbmFtZVszMl07Ci0gX19zNjQgdmFsdWU7CisgIHVuaW9uIHsKKyAgICBfX3U4IG5hbWVbMzJdOworICAgIF9fczY0IHZhbHVlOworICB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9OwotIF9fdTMyIHJlc2VydmVkOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTMyIHJlc2VydmVkOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVjRMMl9DVFJMX0ZMQUdfRElTQUJMRUQgMHgwMDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0NUUkxfRkxBR19HUkFCQkVEIDB4MDAwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DVFJMX0ZMQUdfUkVBRF9PTkxZIDB4MDAwNAogI2RlZmluZSBWNEwyX0NUUkxfRkxBR19VUERBVEUgMHgwMDA4CiAjZGVmaW5lIFY0TDJfQ1RSTF9GTEFHX0lOQUNUSVZFIDB4MDAxMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DVFJMX0ZMQUdfU0xJREVSIDB4MDAyMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DVFJMX0ZMQUdfV1JJVEVfT05MWSAweDAwNDAKICNkZWZpbmUgVjRMMl9DVFJMX0ZMQUdfVk9MQVRJTEUgMHgwMDgwCisjZGVmaW5lIFY0TDJfQ1RSTF9GTEFHX0hBU19QQVlMT0FEIDB4MDEwMAogI2RlZmluZSBWNEwyX0NUUkxfRkxBR19ORVhUX0NUUkwgMHg4MDAwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9DVFJMX0ZMQUdfTkVYVF9DT01QT1VORCAweDQwMDAwMDAwCiAjZGVmaW5lIFY0TDJfQ0lEX01BWF9DVFJMUyAxMDI0CiAjZGVmaW5lIFY0TDJfQ0lEX1BSSVZBVEVfQkFTRSAweDA4MDAwMDAwCiBzdHJ1Y3QgdjRsMl90dW5lciB7Ci0gX191MzIgaW5kZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbmFtZVszMl07Ci0gX191MzIgdHlwZTsKLSBfX3UzMiBjYXBhYmlsaXR5OwotIF9fdTMyIHJhbmdlbG93OworICBfX3UzMiBpbmRleDsKKyAgX191OCBuYW1lWzMyXTsKKyAgX191MzIgdHlwZTsKKyAgX191MzIgY2FwYWJpbGl0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmFuZ2VoaWdoOwotIF9fdTMyIHJ4c3ViY2hhbnM7Ci0gX191MzIgYXVkbW9kZTsKLSBfX3MzMiBzaWduYWw7CisgIF9fdTMyIHJhbmdlbG93OworICBfX3UzMiByYW5nZWhpZ2g7CisgIF9fdTMyIHJ4c3ViY2hhbnM7CisgIF9fdTMyIGF1ZG1vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIGFmYzsKLSBfX3UzMiByZXNlcnZlZFs0XTsKKyAgX19zMzIgc2lnbmFsOworICBfX3MzMiBhZmM7CisgIF9fdTMyIHJlc2VydmVkWzRdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9tb2R1bGF0b3IgeworICBfX3UzMiBpbmRleDsKKyAgX191OCBuYW1lWzMyXTsKKyAgX191MzIgY2FwYWJpbGl0eTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW5kZXg7Ci0gX191OCBuYW1lWzMyXTsKLSBfX3UzMiBjYXBhYmlsaXR5OwotIF9fdTMyIHJhbmdlbG93OworICBfX3UzMiByYW5nZWxvdzsKKyAgX191MzIgcmFuZ2VoaWdoOworICBfX3UzMiB0eHN1YmNoYW5zOworICBfX3UzMiByZXNlcnZlZFs0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmFuZ2VoaWdoOwotIF9fdTMyIHR4c3ViY2hhbnM7Ci0gX191MzIgcmVzZXJ2ZWRbNF07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfTE9XIDB4MDAwMQogI2RlZmluZSBWNEwyX1RVTkVSX0NBUF9OT1JNIDB4MDAwMgogI2RlZmluZSBWNEwyX1RVTkVSX0NBUF9IV1NFRUtfQk9VTkRFRCAweDAwMDQKLSNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfSFdTRUVLX1dSQVAgMHgwMDA4CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWNEwyX1RVTkVSX0NBUF9IV1NFRUtfV1JBUCAweDAwMDgKICNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfU1RFUkVPIDB4MDAxMAogI2RlZmluZSBWNEwyX1RVTkVSX0NBUF9MQU5HMiAweDAwMjAKICNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfU0FQIDB4MDAyMAotI2RlZmluZSBWNEwyX1RVTkVSX0NBUF9MQU5HMSAweDAwNDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfVFVORVJfQ0FQX0xBTkcxIDB4MDA0MAogI2RlZmluZSBWNEwyX1RVTkVSX0NBUF9SRFMgMHgwMDgwCiAjZGVmaW5lIFY0TDJfVFVORVJfQ0FQX1JEU19CTE9DS19JTyAweDAxMDAKICNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfUkRTX0NPTlRST0xTIDB4MDIwMAotI2RlZmluZSBWNEwyX1RVTkVSX0NBUF9GUkVRX0JBTkRTIDB4MDQwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfRlJFUV9CQU5EUyAweDA0MDAKICNkZWZpbmUgVjRMMl9UVU5FUl9DQVBfSFdTRUVLX1BST0dfTElNIDB4MDgwMAorI2RlZmluZSBWNEwyX1RVTkVSX0NBUF8xSFogMHgxMDAwCiAjZGVmaW5lIFY0TDJfVFVORVJfU1VCX01PTk8gMHgwMDAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1RVTkVSX1NVQl9TVEVSRU8gMHgwMDAyCiAjZGVmaW5lIFY0TDJfVFVORVJfU1VCX0xBTkcyIDB4MDAwNAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9UVU5FUl9TVUJfU0FQIDB4MDAwNAogI2RlZmluZSBWNEwyX1RVTkVSX1NVQl9MQU5HMSAweDAwMDgKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfVFVORVJfU1VCX1JEUyAweDAwMTAKICNkZWZpbmUgVjRMMl9UVU5FUl9NT0RFX01PTk8gMHgwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1RVTkVSX01PREVfU1RFUkVPIDB4MDAwMQogI2RlZmluZSBWNEwyX1RVTkVSX01PREVfTEFORzIgMHgwMDAyCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1RVTkVSX01PREVfU0FQIDB4MDAwMgogI2RlZmluZSBWNEwyX1RVTkVSX01PREVfTEFORzEgMHgwMDAzCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX1RVTkVSX01PREVfTEFORzFfTEFORzIgMHgwMDA0CiBzdHJ1Y3QgdjRsMl9mcmVxdWVuY3kgewotIF9fdTMyIHR1bmVyOwotIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZyZXF1ZW5jeTsKLSBfX3UzMiByZXNlcnZlZFs4XTsKKyAgX191MzIgdHVuZXI7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGZyZXF1ZW5jeTsKKyAgX191MzIgcmVzZXJ2ZWRbOF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVjRMMl9CQU5EX01PRFVMQVRJT05fVlNCICgxIDw8IDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0JBTkRfTU9EVUxBVElPTl9GTSAoMSA8PCAyKQogI2RlZmluZSBWNEwyX0JBTkRfTU9EVUxBVElPTl9BTSAoMSA8PCAzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2ZyZXF1ZW5jeV9iYW5kIHsKLSBfX3UzMiB0dW5lcjsKKyAgX191MzIgdHVuZXI7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGluZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eXBlOwotIF9fdTMyIGluZGV4OwotIF9fdTMyIGNhcGFiaWxpdHk7Ci0gX191MzIgcmFuZ2Vsb3c7CisgIF9fdTMyIGNhcGFiaWxpdHk7CisgIF9fdTMyIHJhbmdlbG93OworICBfX3UzMiByYW5nZWhpZ2g7CisgIF9fdTMyIG1vZHVsYXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJhbmdlaGlnaDsKLSBfX3UzMiBtb2R1bGF0aW9uOwotIF9fdTMyIHJlc2VydmVkWzldOworICBfX3UzMiByZXNlcnZlZFs5XTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfaHdfZnJlcV9zZWVrIHsKLSBfX3UzMiB0dW5lcjsKLSBfX3UzMiB0eXBlOwotIF9fdTMyIHNlZWtfdXB3YXJkOworICBfX3UzMiB0dW5lcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgd3JhcF9hcm91bmQ7Ci0gX191MzIgc3BhY2luZzsKLSBfX3UzMiByYW5nZWxvdzsKLSBfX3UzMiByYW5nZWhpZ2g7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIHNlZWtfdXB3YXJkOworICBfX3UzMiB3cmFwX2Fyb3VuZDsKKyAgX191MzIgc3BhY2luZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbNV07CisgIF9fdTMyIHJhbmdlbG93OworICBfX3UzMiByYW5nZWhpZ2g7CisgIF9fdTMyIHJlc2VydmVkWzVdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9yZHNfZGF0YSB7Ci0gX191OCBsc2I7CisgIF9fdTggbHNiOworICBfX3U4IG1zYjsKKyAgX191OCBibG9jazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtc2I7Ci0gX191OCBibG9jazsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgVjRMMl9SRFNfQkxPQ0tfTVNLIDB4NwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9SRFNfQkxPQ0tfQSAwCiAjZGVmaW5lIFY0TDJfUkRTX0JMT0NLX0IgMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9SRFNfQkxPQ0tfQyAyCiAjZGVmaW5lIFY0TDJfUkRTX0JMT0NLX0QgMwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9SRFNfQkxPQ0tfQ19BTFQgNAogI2RlZmluZSBWNEwyX1JEU19CTE9DS19JTlZBTElEIDcKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfUkRTX0JMT0NLX0NPUlJFQ1RFRCAweDQwCiAjZGVmaW5lIFY0TDJfUkRTX0JMT0NLX0VSUk9SIDB4ODAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9hdWRpbyB7Ci0gX191MzIgaW5kZXg7Ci0gX191OCBuYW1lWzMyXTsKLSBfX3UzMiBjYXBhYmlsaXR5OworICBfX3UzMiBpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbW9kZTsKLSBfX3UzMiByZXNlcnZlZFsyXTsKKyAgX191OCBuYW1lWzMyXTsKKyAgX191MzIgY2FwYWJpbGl0eTsKKyAgX191MzIgbW9kZTsKKyAgX191MzIgcmVzZXJ2ZWRbMl07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVjRMMl9BVURDQVBfU1RFUkVPIDB4MDAwMDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQVVEQ0FQX0FWTCAweDAwMDAyCiAjZGVmaW5lIFY0TDJfQVVETU9ERV9BVkwgMHgwMDAwMQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2NGwyX2F1ZGlvb3V0IHsKLSBfX3UzMiBpbmRleDsKKyAgX191MzIgaW5kZXg7CisgIF9fdTggbmFtZVszMl07CisgIF9fdTMyIGNhcGFiaWxpdHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbmFtZVszMl07Ci0gX191MzIgY2FwYWJpbGl0eTsKLSBfX3UzMiBtb2RlOwotIF9fdTMyIHJlc2VydmVkWzJdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgbW9kZTsKKyAgX191MzIgcmVzZXJ2ZWRbMl07CiB9OwogI2RlZmluZSBWNEwyX0VOQ19JRFhfRlJBTUVfSSAoMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfRU5DX0lEWF9GUkFNRV9QICgxKQogI2RlZmluZSBWNEwyX0VOQ19JRFhfRlJBTUVfQiAoMikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfRU5DX0lEWF9GUkFNRV9NQVNLICgweGYpCiBzdHJ1Y3QgdjRsMl9lbmNfaWR4X2VudHJ5IHsKLSBfX3U2NCBvZmZzZXQ7Ci0gX191NjQgcHRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsZW5ndGg7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgcmVzZXJ2ZWRbMl07CisgIF9fdTY0IG9mZnNldDsKKyAgX191NjQgcHRzOworICBfX3UzMiBsZW5ndGg7CisgIF9fdTMyIGZsYWdzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcmVzZXJ2ZWRbMl07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9FTkNfSURYX0VOVFJJRVMgKDY0KQogc3RydWN0IHY0bDJfZW5jX2lkeCB7Ci0gX191MzIgZW50cmllczsKLSBfX3UzMiBlbnRyaWVzX2NhcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRbNF07Ci0gc3RydWN0IHY0bDJfZW5jX2lkeF9lbnRyeSBlbnRyeVtWNEwyX0VOQ19JRFhfRU5UUklFU107CisgIF9fdTMyIGVudHJpZXM7CisgIF9fdTMyIGVudHJpZXNfY2FwOworICBfX3UzMiByZXNlcnZlZFs0XTsKKyAgc3RydWN0IHY0bDJfZW5jX2lkeF9lbnRyeSBlbnRyeVtWNEwyX0VOQ19JRFhfRU5UUklFU107CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVjRMMl9FTkNfQ01EX1NUQVJUICgwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9FTkNfQ01EX1NUT1AgKDEpCiAjZGVmaW5lIFY0TDJfRU5DX0NNRF9QQVVTRSAoMikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfRU5DX0NNRF9SRVNVTUUgKDMpCiAjZGVmaW5lIFY0TDJfRU5DX0NNRF9TVE9QX0FUX0dPUF9FTkQgKDEgPDwgMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9lbmNvZGVyX2NtZCB7Ci0gX191MzIgY21kOwotIF9fdTMyIGZsYWdzOwotIHVuaW9uIHsKKyAgX191MzIgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIF9fdTMyIGRhdGFbOF07Ci0gfSByYXc7Ci0gfTsKKyAgX191MzIgZmxhZ3M7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MzIgZGF0YVs4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgICAgfSByYXc7CisgIH07CiB9OwogI2RlZmluZSBWNEwyX0RFQ19DTURfU1RBUlQgKDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0RFQ19DTURfU1RPUCAoMSkKICNkZWZpbmUgVjRMMl9ERUNfQ01EX1BBVVNFICgyKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9ERUNfQ01EX1JFU1VNRSAoMykKICNkZWZpbmUgVjRMMl9ERUNfQ01EX1NUQVJUX01VVEVfQVVESU8gKDEgPDwgMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfREVDX0NNRF9QQVVTRV9UT19CTEFDSyAoMSA8PCAwKQogI2RlZmluZSBWNEwyX0RFQ19DTURfU1RPUF9UT19CTEFDSyAoMSA8PCAwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9ERUNfQ01EX1NUT1BfSU1NRURJQVRFTFkgKDEgPDwgMSkKICNkZWZpbmUgVjRMMl9ERUNfU1RBUlRfRk1UX05PTkUgKDApCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0RFQ19TVEFSVF9GTVRfR09QICgxKQogc3RydWN0IHY0bDJfZGVjb2Rlcl9jbWQgeworICBfX3UzMiBjbWQ7CisgIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjbWQ7Ci0gX191MzIgZmxhZ3M7Ci0gdW5pb24gewotIHN0cnVjdCB7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgeworICAgICAgX191NjQgcHRzOworICAgIH0gc3RvcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcHRzOwotIH0gc3RvcDsKLSBzdHJ1Y3QgewotIF9fczMyIHNwZWVkOworICAgIHN0cnVjdCB7CisgICAgICBfX3MzMiBzcGVlZDsKKyAgICAgIF9fdTMyIGZvcm1hdDsKKyAgICB9IHN0YXJ0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmb3JtYXQ7Ci0gfSBzdGFydDsKLSBzdHJ1Y3QgewotIF9fdTMyIGRhdGFbMTZdOworICAgIHN0cnVjdCB7CisgICAgICBfX3UzMiBkYXRhWzE2XTsKKyAgICB9IHJhdzsKKyAgfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSByYXc7Ci0gfTsKIH07CiBzdHJ1Y3QgdjRsMl92YmlfZm9ybWF0IHsKKyAgX191MzIgc2FtcGxpbmdfcmF0ZTsKKyAgX191MzIgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzYW1wbGluZ19yYXRlOwotIF9fdTMyIG9mZnNldDsKLSBfX3UzMiBzYW1wbGVzX3Blcl9saW5lOwotIF9fdTMyIHNhbXBsZV9mb3JtYXQ7CisgIF9fdTMyIHNhbXBsZXNfcGVyX2xpbmU7CisgIF9fdTMyIHNhbXBsZV9mb3JtYXQ7CisgIF9fczMyIHN0YXJ0WzJdOworICBfX3UzMiBjb3VudFsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgc3RhcnRbMl07Ci0gX191MzIgY291bnRbMl07Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgcmVzZXJ2ZWRbMl07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBmbGFnczsKKyAgX191MzIgcmVzZXJ2ZWRbMl07CiB9OwogI2RlZmluZSBWNEwyX1ZCSV9VTlNZTkMgKDEgPDwgMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfVkJJX0lOVEVSTEFDRUQgKDEgPDwgMSkKKyNkZWZpbmUgVjRMMl9WQklfSVRVXzUyNV9GMV9TVEFSVCAoMSkKKyNkZWZpbmUgVjRMMl9WQklfSVRVXzUyNV9GMl9TVEFSVCAoMjY0KQorI2RlZmluZSBWNEwyX1ZCSV9JVFVfNjI1X0YxX1NUQVJUICgxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9WQklfSVRVXzYyNV9GMl9TVEFSVCAoMzE0KQogc3RydWN0IHY0bDJfc2xpY2VkX3ZiaV9mb3JtYXQgeworICBfX3UxNiBzZXJ2aWNlX3NldDsKKyAgX191MTYgc2VydmljZV9saW5lc1syXVsyNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNlcnZpY2Vfc2V0OwotIF9fdTE2IHNlcnZpY2VfbGluZXNbMl1bMjRdOwotIF9fdTMyIGlvX3NpemU7Ci0gX191MzIgcmVzZXJ2ZWRbMl07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBpb19zaXplOworICBfX3UzMiByZXNlcnZlZFsyXTsKIH07CiAjZGVmaW5lIFY0TDJfU0xJQ0VEX1RFTEVURVhUX0IgKDB4MDAwMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfU0xJQ0VEX1ZQUyAoMHgwNDAwKQogI2RlZmluZSBWNEwyX1NMSUNFRF9DQVBUSU9OXzUyNSAoMHgxMDAwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9TTElDRURfV1NTXzYyNSAoMHg0MDAwKQogI2RlZmluZSBWNEwyX1NMSUNFRF9WQklfNTI1IChWNEwyX1NMSUNFRF9DQVBUSU9OXzUyNSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfU0xJQ0VEX1ZCSV82MjUgKFY0TDJfU0xJQ0VEX1RFTEVURVhUX0IgfCBWNEwyX1NMSUNFRF9WUFMgfCBWNEwyX1NMSUNFRF9XU1NfNjI1KQogc3RydWN0IHY0bDJfc2xpY2VkX3ZiaV9jYXAgeworICBfX3UxNiBzZXJ2aWNlX3NldDsKKyAgX191MTYgc2VydmljZV9saW5lc1syXVsyNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNlcnZpY2Vfc2V0OwotIF9fdTE2IHNlcnZpY2VfbGluZXNbMl1bMjRdOwotIF9fdTMyIHR5cGU7Ci0gX191MzIgcmVzZXJ2ZWRbM107Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiB0eXBlOworICBfX3UzMiByZXNlcnZlZFszXTsKIH07CiBzdHJ1Y3QgdjRsMl9zbGljZWRfdmJpX2RhdGEgewotIF9fdTMyIGlkOwotIF9fdTMyIGZpZWxkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsaW5lOwotIF9fdTMyIHJlc2VydmVkOwotIF9fdTggZGF0YVs0OF07CisgIF9fdTMyIGlkOworICBfX3UzMiBmaWVsZDsKKyAgX191MzIgbGluZTsKKyAgX191MzIgcmVzZXJ2ZWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGRhdGFbNDhdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfTVBFR19WQklfSVZUVl9URUxFVEVYVF9CICgxKQogI2RlZmluZSBWNEwyX01QRUdfVkJJX0lWVFZfQ0FQVElPTl81MjUgKDQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX01QRUdfVkJJX0lWVFZfV1NTXzYyNSAoNSkKICNkZWZpbmUgVjRMMl9NUEVHX1ZCSV9JVlRWX1ZQUyAoNykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdjRsMl9tcGVnX3ZiaV9pdHYwX2xpbmUgewotIF9fdTggaWQ7Ci0gX191OCBkYXRhWzQyXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBkYXRhWzQyXTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdjRsMl9tcGVnX3ZiaV9pdHYwIHsKLSBfX2xlMzIgbGluZW1hc2tbMl07Ci0gc3RydWN0IHY0bDJfbXBlZ192YmlfaXR2MF9saW5lIGxpbmVbMzVdOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fbGUzMiBsaW5lbWFza1syXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCB2NGwyX21wZWdfdmJpX2l0djBfbGluZSBsaW5lWzM1XTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdjRsMl9tcGVnX3ZiaV9JVFYwIHsKLSBzdHJ1Y3QgdjRsMl9tcGVnX3ZiaV9pdHYwX2xpbmUgbGluZVszNl07Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKLSNkZWZpbmUgVjRMMl9NUEVHX1ZCSV9JVlRWX01BR0lDMCAiaXR2MCIKKyAgc3RydWN0IHY0bDJfbXBlZ192YmlfaXR2MF9saW5lIGxpbmVbMzZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CisjZGVmaW5lIFY0TDJfTVBFR19WQklfSVZUVl9NQUdJQzAgIml0djAiCiAjZGVmaW5lIFY0TDJfTVBFR19WQklfSVZUVl9NQUdJQzEgIklUVjAiCiBzdHJ1Y3QgdjRsMl9tcGVnX3ZiaV9mbXRfaXZ0diB7Ci0gX191OCBtYWdpY1s0XTsKLSB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB2NGwyX21wZWdfdmJpX2l0djAgaXR2MDsKLSBzdHJ1Y3QgdjRsMl9tcGVnX3ZiaV9JVFYwIElUVjA7Ci0gfTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IG1hZ2ljWzRdOworICB1bmlvbiB7CisgICAgc3RydWN0IHY0bDJfbXBlZ192YmlfaXR2MCBpdHYwOworICAgIHN0cnVjdCB2NGwyX21wZWdfdmJpX0lUVjAgSVRWMDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIH07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHY0bDJfcGxhbmVfcGl4X2Zvcm1hdCB7Ci0gX191MzIgc2l6ZWltYWdlOwotIF9fdTE2IGJ5dGVzcGVybGluZTsKLSBfX3UxNiByZXNlcnZlZFs3XTsKKyAgX191MzIgc2l6ZWltYWdlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3UxNiBieXRlc3BlcmxpbmU7CisgIF9fdTE2IHJlc2VydmVkWzddOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB2NGwyX3BpeF9mb3JtYXRfbXBsYW5lIHsKLSBfX3UzMiB3aWR0aDsKLSBfX3UzMiBoZWlnaHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBpeGVsZm9ybWF0OwotIF9fdTMyIGZpZWxkOwotIF9fdTMyIGNvbG9yc3BhY2U7Ci0gc3RydWN0IHY0bDJfcGxhbmVfcGl4X2Zvcm1hdCBwbGFuZV9mbXRbVklERU9fTUFYX1BMQU5FU107CisgIF9fdTMyIHdpZHRoOworICBfX3UzMiBoZWlnaHQ7CisgIF9fdTMyIHBpeGVsZm9ybWF0OworICBfX3UzMiBmaWVsZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBudW1fcGxhbmVzOwotIF9fdTggcmVzZXJ2ZWRbMTFdOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTMyIGNvbG9yc3BhY2U7CisgIHN0cnVjdCB2NGwyX3BsYW5lX3BpeF9mb3JtYXQgcGxhbmVfZm10W1ZJREVPX01BWF9QTEFORVNdOworICBfX3U4IG51bV9wbGFuZXM7CisgIF9fdTggZmxhZ3M7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHJlc2VydmVkWzEwXTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CitzdHJ1Y3QgdjRsMl9zZHJfZm9ybWF0IHsKKyAgX191MzIgcGl4ZWxmb3JtYXQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBidWZmZXJzaXplOworICBfX3U4IHJlc2VydmVkWzI0XTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgdjRsMl9mb3JtYXQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eXBlOwotIHVuaW9uIHsKLSBzdHJ1Y3QgdjRsMl9waXhfZm9ybWF0IHBpeDsKLSBzdHJ1Y3QgdjRsMl9waXhfZm9ybWF0X21wbGFuZSBwaXhfbXA7CisgIF9fdTMyIHR5cGU7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgdjRsMl9waXhfZm9ybWF0IHBpeDsKKyAgICBzdHJ1Y3QgdjRsMl9waXhfZm9ybWF0X21wbGFuZSBwaXhfbXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB2NGwyX3dpbmRvdyB3aW47Ci0gc3RydWN0IHY0bDJfdmJpX2Zvcm1hdCB2Ymk7Ci0gc3RydWN0IHY0bDJfc2xpY2VkX3ZiaV9mb3JtYXQgc2xpY2VkOwotIF9fdTggcmF3X2RhdGFbMjAwXTsKKyAgICBzdHJ1Y3QgdjRsMl93aW5kb3cgd2luOworICAgIHN0cnVjdCB2NGwyX3ZiaV9mb3JtYXQgdmJpOworICAgIHN0cnVjdCB2NGwyX3NsaWNlZF92YmlfZm9ybWF0IHNsaWNlZDsKKyAgICBzdHJ1Y3QgdjRsMl9zZHJfZm9ybWF0IHNkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBmbXQ7CisgICAgX191OCByYXdfZGF0YVsyMDBdOworICB9IGZtdDsKIH07CiBzdHJ1Y3QgdjRsMl9zdHJlYW1wYXJtIHsKLSBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IHY0bDJfY2FwdHVyZXBhcm0gY2FwdHVyZTsKLSBzdHJ1Y3QgdjRsMl9vdXRwdXRwYXJtIG91dHB1dDsKLSBfX3U4IHJhd19kYXRhWzIwMF07CisgIF9fdTMyIHR5cGU7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgdjRsMl9jYXB0dXJlcGFybSBjYXB0dXJlOworICAgIHN0cnVjdCB2NGwyX291dHB1dHBhcm0gb3V0cHV0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHBhcm07CisgICAgX191OCByYXdfZGF0YVsyMDBdOworICB9IHBhcm07CiB9OwogI2RlZmluZSBWNEwyX0VWRU5UX0FMTCAwCi0jZGVmaW5lIFY0TDJfRVZFTlRfVlNZTkMgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVjRMMl9FVkVOVF9WU1lOQyAxCiAjZGVmaW5lIFY0TDJfRVZFTlRfRU9TIDIKICNkZWZpbmUgVjRMMl9FVkVOVF9DVFJMIDMKICNkZWZpbmUgVjRMMl9FVkVOVF9GUkFNRV9TWU5DIDQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFY0TDJfRVZFTlRfU09VUkNFX0NIQU5HRSA1CisjZGVmaW5lIFY0TDJfRVZFTlRfTU9USU9OX0RFVCA2CiAjZGVmaW5lIFY0TDJfRVZFTlRfUFJJVkFURV9TVEFSVCAweDA4MDAwMDAwCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfZXZlbnRfdnN5bmMgewotIF9fdTggZmllbGQ7Ci19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKLSNkZWZpbmUgVjRMMl9FVkVOVF9DVFJMX0NIX1ZBTFVFICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IGZpZWxkOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKyNkZWZpbmUgVjRMMl9FVkVOVF9DVFJMX0NIX1ZBTFVFICgxIDw8IDApCiAjZGVmaW5lIFY0TDJfRVZFTlRfQ1RSTF9DSF9GTEFHUyAoMSA8PCAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9FVkVOVF9DVFJMX0NIX1JBTkdFICgxIDw8IDIpCiBzdHJ1Y3QgdjRsMl9ldmVudF9jdHJsIHsKLSBfX3UzMiBjaGFuZ2VzOworICBfX3UzMiBjaGFuZ2VzOworICBfX3UzMiB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0eXBlOwotIHVuaW9uIHsKLSBfX3MzMiB2YWx1ZTsKLSBfX3M2NCB2YWx1ZTY0OworICB1bmlvbiB7CisgICAgX19zMzIgdmFsdWU7CisgICAgX19zNjQgdmFsdWU2NDsKKyAgfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfTsKLSBfX3UzMiBmbGFnczsKLSBfX3MzMiBtaW5pbXVtOwotIF9fczMyIG1heGltdW07CisgIF9fdTMyIGZsYWdzOworICBfX3MzMiBtaW5pbXVtOworICBfX3MzMiBtYXhpbXVtOworICBfX3MzMiBzdGVwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBzdGVwOwotIF9fczMyIGRlZmF1bHRfdmFsdWU7CisgIF9fczMyIGRlZmF1bHRfdmFsdWU7CiB9Owogc3RydWN0IHY0bDJfZXZlbnRfZnJhbWVfc3luYyB7CisgIF9fdTMyIGZyYW1lX3NlcXVlbmNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmcmFtZV9zZXF1ZW5jZTsKK307CisjZGVmaW5lIFY0TDJfRVZFTlRfU1JDX0NIX1JFU09MVVRJT04gKDEgPDwgMCkKK3N0cnVjdCB2NGwyX2V2ZW50X3NyY19jaGFuZ2UgeworICBfX3UzMiBjaGFuZ2VzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CisjZGVmaW5lIFY0TDJfRVZFTlRfTURfRkxfSEFWRV9GUkFNRV9TRVEgKDEgPDwgMCkKK3N0cnVjdCB2NGwyX2V2ZW50X21vdGlvbl9kZXQgeworICBfX3UzMiBmbGFnczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGZyYW1lX3NlcXVlbmNlOworICBfX3UzMiByZWdpb25fbWFzazsKIH07CiBzdHJ1Y3QgdjRsMl9ldmVudCB7Ci0gX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHN0cnVjdCB2NGwyX2V2ZW50X3ZzeW5jIHZzeW5jOwotIHN0cnVjdCB2NGwyX2V2ZW50X2N0cmwgY3RybDsKLSBzdHJ1Y3QgdjRsMl9ldmVudF9mcmFtZV9zeW5jIGZyYW1lX3N5bmM7CisgIF9fdTMyIHR5cGU7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgdjRsMl9ldmVudF92c3luYyB2c3luYzsKKyAgICBzdHJ1Y3QgdjRsMl9ldmVudF9jdHJsIGN0cmw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGF0YVs2NF07Ci0gfSB1OwotIF9fdTMyIHBlbmRpbmc7Ci0gX191MzIgc2VxdWVuY2U7CisgICAgc3RydWN0IHY0bDJfZXZlbnRfZnJhbWVfc3luYyBmcmFtZV9zeW5jOworICAgIHN0cnVjdCB2NGwyX2V2ZW50X3NyY19jaGFuZ2Ugc3JjX2NoYW5nZTsKKyAgICBzdHJ1Y3QgdjRsMl9ldmVudF9tb3Rpb25fZGV0IG1vdGlvbl9kZXQ7CisgICAgX191OCBkYXRhWzY0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRpbWVzcGVjIHRpbWVzdGFtcDsKLSBfX3UzMiBpZDsKLSBfX3UzMiByZXNlcnZlZFs4XTsKKyAgfSB1OworICBfX3UzMiBwZW5kaW5nOworICBfX3UzMiBzZXF1ZW5jZTsKKyAgc3RydWN0IHRpbWVzcGVjIHRpbWVzdGFtcDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGlkOworICBfX3UzMiByZXNlcnZlZFs4XTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWNEwyX0VWRU5UX1NVQl9GTF9TRU5EX0lOSVRJQUwgKDEgPDwgMCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfRVZFTlRfU1VCX0ZMX0FMTE9XX0ZFRURCQUNLICgxIDw8IDEpCiBzdHJ1Y3QgdjRsMl9ldmVudF9zdWJzY3JpcHRpb24gewotIF9fdTMyIHR5cGU7CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZDsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiByZXNlcnZlZFs1XTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTMyIHJlc2VydmVkWzVdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0hJUF9NQVRDSF9CUklER0UgMAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSElQX01BVENIX1NVQkRFViA0CiAjZGVmaW5lIFY0TDJfQ0hJUF9NQVRDSF9IT1NUIFY0TDJfQ0hJUF9NQVRDSF9CUklER0UKICNkZWZpbmUgVjRMMl9DSElQX01BVENIX0kyQ19EUklWRVIgMQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSElQX01BVENIX0kyQ19BRERSIDIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFY0TDJfQ0hJUF9NQVRDSF9BQzk3IDMKIHN0cnVjdCB2NGwyX2RiZ19tYXRjaCB7Ci0gX191MzIgdHlwZTsKKyAgX191MzIgdHlwZTsKKyAgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gX191MzIgYWRkcjsKLSBjaGFyIG5hbWVbMzJdOwotIH07CisgICAgX191MzIgYWRkcjsKKyAgICBjaGFyIG5hbWVbMzJdOworICB9OworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKIHN0cnVjdCB2NGwyX2RiZ19yZWdpc3RlciB7Ci0gc3RydWN0IHY0bDJfZGJnX21hdGNoIG1hdGNoOwotIF9fdTMyIHNpemU7CisgIHN0cnVjdCB2NGwyX2RiZ19tYXRjaCBtYXRjaDsKKyAgX191MzIgc2l6ZTsKKyAgX191NjQgcmVnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZWc7Ci0gX191NjQgdmFsOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIF9fdTY0IHZhbDsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZGVmaW5lIFY0TDJfQ0hJUF9GTF9SRUFEQUJMRSAoMSA8PCAwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVjRMMl9DSElQX0ZMX1dSSVRBQkxFICgxIDw8IDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHY0bDJfZGJnX2NoaXBfaW5mbyB7Ci0gc3RydWN0IHY0bDJfZGJnX21hdGNoIG1hdGNoOwotIGNoYXIgbmFtZVszMl07CisgIHN0cnVjdCB2NGwyX2RiZ19tYXRjaCBtYXRjaDsKKyAgY2hhciBuYW1lWzMyXTsKKyAgX191MzIgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGZsYWdzOwotIF9fdTMyIHJlc2VydmVkWzMyXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3UzMiByZXNlcnZlZFszMl07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHY0bDJfY3JlYXRlX2J1ZmZlcnMgeworICBfX3UzMiBpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW5kZXg7Ci0gX191MzIgY291bnQ7Ci0gX191MzIgbWVtb3J5OwotIHN0cnVjdCB2NGwyX2Zvcm1hdCBmb3JtYXQ7CisgIF9fdTMyIGNvdW50OworICBfX3UzMiBtZW1vcnk7CisgIHN0cnVjdCB2NGwyX2Zvcm1hdCBmb3JtYXQ7CisgIF9fdTMyIHJlc2VydmVkWzhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNlcnZlZFs4XTsKIH07CiAjZGVmaW5lIFZJRElPQ19RVUVSWUNBUCBfSU9SKCdWJywgMCwgc3RydWN0IHY0bDJfY2FwYWJpbGl0eSkKICNkZWZpbmUgVklESU9DX1JFU0VSVkVEIF9JTygnVicsIDEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURJT0NfRU5VTV9GTVQgX0lPV1IoJ1YnLCAyLCBzdHJ1Y3QgdjRsMl9mbXRkZXNjKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklESU9DX0dfRk1UIF9JT1dSKCdWJywgNCwgc3RydWN0IHY0bDJfZm9ybWF0KQogI2RlZmluZSBWSURJT0NfU19GTVQgX0lPV1IoJ1YnLCA1LCBzdHJ1Y3QgdjRsMl9mb3JtYXQpCiAjZGVmaW5lIFZJRElPQ19SRVFCVUZTIF9JT1dSKCdWJywgOCwgc3RydWN0IHY0bDJfcmVxdWVzdGJ1ZmZlcnMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURJT0NfUVVFUllCVUYgX0lPV1IoJ1YnLCA5LCBzdHJ1Y3QgdjRsMl9idWZmZXIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURJT0NfR19GQlVGIF9JT1IoJ1YnLCAxMCwgc3RydWN0IHY0bDJfZnJhbWVidWZmZXIpCiAjZGVmaW5lIFZJRElPQ19TX0ZCVUYgX0lPVygnVicsIDExLCBzdHJ1Y3QgdjRsMl9mcmFtZWJ1ZmZlcikKICNkZWZpbmUgVklESU9DX09WRVJMQVkgX0lPVygnVicsIDE0LCBpbnQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURJT0NfUUJVRiBfSU9XUignVicsIDE1LCBzdHJ1Y3QgdjRsMl9idWZmZXIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURJT0NfRVhQQlVGIF9JT1dSKCdWJywgMTYsIHN0cnVjdCB2NGwyX2V4cG9ydGJ1ZmZlcikKICNkZWZpbmUgVklESU9DX0RRQlVGIF9JT1dSKCdWJywgMTcsIHN0cnVjdCB2NGwyX2J1ZmZlcikKICNkZWZpbmUgVklESU9DX1NUUkVBTU9OIF9JT1coJ1YnLCAxOCwgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklESU9DX1NUUkVBTU9GRiBfSU9XKCdWJywgMTksIGludCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJRElPQ19HX1BBUk0gX0lPV1IoJ1YnLCAyMSwgc3RydWN0IHY0bDJfc3RyZWFtcGFybSkKICNkZWZpbmUgVklESU9DX1NfUEFSTSBfSU9XUignVicsIDIyLCBzdHJ1Y3QgdjRsMl9zdHJlYW1wYXJtKQogI2RlZmluZSBWSURJT0NfR19TVEQgX0lPUignVicsIDIzLCB2NGwyX3N0ZF9pZCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJRElPQ19TX1NURCBfSU9XKCdWJywgMjQsIHY0bDJfc3RkX2lkKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklESU9DX0VOVU1TVEQgX0lPV1IoJ1YnLCAyNSwgc3RydWN0IHY0bDJfc3RhbmRhcmQpCiAjZGVmaW5lIFZJRElPQ19FTlVNSU5QVVQgX0lPV1IoJ1YnLCAyNiwgc3RydWN0IHY0bDJfaW5wdXQpCiAjZGVmaW5lIFZJRElPQ19HX0NUUkwgX0lPV1IoJ1YnLCAyNywgc3RydWN0IHY0bDJfY29udHJvbCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJRElPQ19TX0NUUkwgX0lPV1IoJ1YnLCAyOCwgc3RydWN0IHY0bDJfY29udHJvbCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJRElPQ19HX1RVTkVSIF9JT1dSKCdWJywgMjksIHN0cnVjdCB2NGwyX3R1bmVyKQogI2RlZmluZSBWSURJT0NfU19UVU5FUiBfSU9XKCdWJywgMzAsIHN0cnVjdCB2NGwyX3R1bmVyKQogI2RlZmluZSBWSURJT0NfR19BVURJTyBfSU9SKCdWJywgMzMsIHN0cnVjdCB2NGwyX2F1ZGlvKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklESU9DX1NfQVVESU8gX0lPVygnVicsIDM0LCBzdHJ1Y3QgdjRsMl9hdWRpbykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJRElPQ19RVUVSWUNUUkwgX0lPV1IoJ1YnLCAzNiwgc3RydWN0IHY0bDJfcXVlcnljdHJsKQogI2RlZmluZSBWSURJT0NfUVVFUllNRU5VIF9JT1dSKCdWJywgMzcsIHN0cnVjdCB2NGwyX3F1ZXJ5bWVudSkKICNkZWZpbmUgVklESU9DX0dfSU5QVVQgX0lPUignVicsIDM4LCBpbnQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSURJT0NfU19JTlBVVCBfSU9XUignVicsIDM5LCBpbnQpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWSURJT0NfR19FRElEIF9JT1dSKCdWJywgNDAsIHN0cnVjdCB2NGwyX2VkaWQpCisjZGVmaW5lIFZJRElPQ19TX0VESUQgX0lPV1IoJ1YnLCA0MSwgc3RydWN0IHY0bDJfZWRpZCkKICNkZWZpbmUgVklESU9DX0dfT1VUUFVUIF9JT1IoJ1YnLCA0NiwgaW50KQogI2RlZmluZSBWSURJT0NfU19PVVRQVVQgX0lPV1IoJ1YnLCA0NywgaW50KQotI2RlZmluZSBWSURJT0NfRU5VTU9VVFBVVCBfSU9XUignVicsIDQ4LCBzdHJ1Y3QgdjRsMl9vdXRwdXQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWSURJT0NfRU5VTU9VVFBVVCBfSU9XUignVicsIDQ4LCBzdHJ1Y3QgdjRsMl9vdXRwdXQpCiAjZGVmaW5lIFZJRElPQ19HX0FVRE9VVCBfSU9SKCdWJywgNDksIHN0cnVjdCB2NGwyX2F1ZGlvb3V0KQogI2RlZmluZSBWSURJT0NfU19BVURPVVQgX0lPVygnVicsIDUwLCBzdHJ1Y3QgdjRsMl9hdWRpb291dCkKICNkZWZpbmUgVklESU9DX0dfTU9EVUxBVE9SIF9JT1dSKCdWJywgNTQsIHN0cnVjdCB2NGwyX21vZHVsYXRvcikKLSNkZWZpbmUgVklESU9DX1NfTU9EVUxBVE9SIF9JT1coJ1YnLCA1NSwgc3RydWN0IHY0bDJfbW9kdWxhdG9yKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVklESU9DX1NfTU9EVUxBVE9SIF9JT1coJ1YnLCA1NSwgc3RydWN0IHY0bDJfbW9kdWxhdG9yKQogI2RlZmluZSBWSURJT0NfR19GUkVRVUVOQ1kgX0lPV1IoJ1YnLCA1Niwgc3RydWN0IHY0bDJfZnJlcXVlbmN5KQogI2RlZmluZSBWSURJT0NfU19GUkVRVUVOQ1kgX0lPVygnVicsIDU3LCBzdHJ1Y3QgdjRsMl9mcmVxdWVuY3kpCiAjZGVmaW5lIFZJRElPQ19DUk9QQ0FQIF9JT1dSKCdWJywgNTgsIHN0cnVjdCB2NGwyX2Nyb3BjYXApCi0jZGVmaW5lIFZJRElPQ19HX0NST1AgX0lPV1IoJ1YnLCA1OSwgc3RydWN0IHY0bDJfY3JvcCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZJRElPQ19HX0NST1AgX0lPV1IoJ1YnLCA1OSwgc3RydWN0IHY0bDJfY3JvcCkKICNkZWZpbmUgVklESU9DX1NfQ1JPUCBfSU9XKCdWJywgNjAsIHN0cnVjdCB2NGwyX2Nyb3ApCiAjZGVmaW5lIFZJRElPQ19HX0pQRUdDT01QIF9JT1IoJ1YnLCA2MSwgc3RydWN0IHY0bDJfanBlZ2NvbXByZXNzaW9uKQogI2RlZmluZSBWSURJT0NfU19KUEVHQ09NUCBfSU9XKCdWJywgNjIsIHN0cnVjdCB2NGwyX2pwZWdjb21wcmVzc2lvbikKLSNkZWZpbmUgVklESU9DX1FVRVJZU1REIF9JT1IoJ1YnLCA2MywgdjRsMl9zdGRfaWQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWSURJT0NfUVVFUllTVEQgX0lPUignVicsIDYzLCB2NGwyX3N0ZF9pZCkKICNkZWZpbmUgVklESU9DX1RSWV9GTVQgX0lPV1IoJ1YnLCA2NCwgc3RydWN0IHY0bDJfZm9ybWF0KQogI2RlZmluZSBWSURJT0NfRU5VTUFVRElPIF9JT1dSKCdWJywgNjUsIHN0cnVjdCB2NGwyX2F1ZGlvKQogI2RlZmluZSBWSURJT0NfRU5VTUFVRE9VVCBfSU9XUignVicsIDY2LCBzdHJ1Y3QgdjRsMl9hdWRpb291dCkKLSNkZWZpbmUgVklESU9DX0dfUFJJT1JJVFkgX0lPUignVicsIDY3LCBfX3UzMikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZJRElPQ19HX1BSSU9SSVRZIF9JT1IoJ1YnLCA2NywgX191MzIpCiAjZGVmaW5lIFZJRElPQ19TX1BSSU9SSVRZIF9JT1coJ1YnLCA2OCwgX191MzIpCiAjZGVmaW5lIFZJRElPQ19HX1NMSUNFRF9WQklfQ0FQIF9JT1dSKCdWJywgNjksIHN0cnVjdCB2NGwyX3NsaWNlZF92YmlfY2FwKQogI2RlZmluZSBWSURJT0NfTE9HX1NUQVRVUyBfSU8oJ1YnLCA3MCkKLSNkZWZpbmUgVklESU9DX0dfRVhUX0NUUkxTIF9JT1dSKCdWJywgNzEsIHN0cnVjdCB2NGwyX2V4dF9jb250cm9scykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZJRElPQ19HX0VYVF9DVFJMUyBfSU9XUignVicsIDcxLCBzdHJ1Y3QgdjRsMl9leHRfY29udHJvbHMpCiAjZGVmaW5lIFZJRElPQ19TX0VYVF9DVFJMUyBfSU9XUignVicsIDcyLCBzdHJ1Y3QgdjRsMl9leHRfY29udHJvbHMpCiAjZGVmaW5lIFZJRElPQ19UUllfRVhUX0NUUkxTIF9JT1dSKCdWJywgNzMsIHN0cnVjdCB2NGwyX2V4dF9jb250cm9scykKICNkZWZpbmUgVklESU9DX0VOVU1fRlJBTUVTSVpFUyBfSU9XUignVicsIDc0LCBzdHJ1Y3QgdjRsMl9mcm1zaXplZW51bSkKLSNkZWZpbmUgVklESU9DX0VOVU1fRlJBTUVJTlRFUlZBTFMgX0lPV1IoJ1YnLCA3NSwgc3RydWN0IHY0bDJfZnJtaXZhbGVudW0pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWSURJT0NfRU5VTV9GUkFNRUlOVEVSVkFMUyBfSU9XUignVicsIDc1LCBzdHJ1Y3QgdjRsMl9mcm1pdmFsZW51bSkKICNkZWZpbmUgVklESU9DX0dfRU5DX0lOREVYIF9JT1IoJ1YnLCA3Niwgc3RydWN0IHY0bDJfZW5jX2lkeCkKICNkZWZpbmUgVklESU9DX0VOQ09ERVJfQ01EIF9JT1dSKCdWJywgNzcsIHN0cnVjdCB2NGwyX2VuY29kZXJfY21kKQogI2RlZmluZSBWSURJT0NfVFJZX0VOQ09ERVJfQ01EIF9JT1dSKCdWJywgNzgsIHN0cnVjdCB2NGwyX2VuY29kZXJfY21kKQotI2RlZmluZSBWSURJT0NfREJHX1NfUkVHSVNURVIgX0lPVygnVicsIDc5LCBzdHJ1Y3QgdjRsMl9kYmdfcmVnaXN0ZXIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWSURJT0NfREJHX1NfUkVHSVNURVIgX0lPVygnVicsIDc5LCBzdHJ1Y3QgdjRsMl9kYmdfcmVnaXN0ZXIpCiAjZGVmaW5lIFZJRElPQ19EQkdfR19SRUdJU1RFUiBfSU9XUignVicsIDgwLCBzdHJ1Y3QgdjRsMl9kYmdfcmVnaXN0ZXIpCiAjZGVmaW5lIFZJRElPQ19TX0hXX0ZSRVFfU0VFSyBfSU9XKCdWJywgODIsIHN0cnVjdCB2NGwyX2h3X2ZyZXFfc2VlaykKICNkZWZpbmUgVklESU9DX1NfRFZfVElNSU5HUyBfSU9XUignVicsIDg3LCBzdHJ1Y3QgdjRsMl9kdl90aW1pbmdzKQotI2RlZmluZSBWSURJT0NfR19EVl9USU1JTkdTIF9JT1dSKCdWJywgODgsIHN0cnVjdCB2NGwyX2R2X3RpbWluZ3MpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWSURJT0NfR19EVl9USU1JTkdTIF9JT1dSKCdWJywgODgsIHN0cnVjdCB2NGwyX2R2X3RpbWluZ3MpCiAjZGVmaW5lIFZJRElPQ19EUUVWRU5UIF9JT1IoJ1YnLCA4OSwgc3RydWN0IHY0bDJfZXZlbnQpCiAjZGVmaW5lIFZJRElPQ19TVUJTQ1JJQkVfRVZFTlQgX0lPVygnVicsIDkwLCBzdHJ1Y3QgdjRsMl9ldmVudF9zdWJzY3JpcHRpb24pCiAjZGVmaW5lIFZJRElPQ19VTlNVQlNDUklCRV9FVkVOVCBfSU9XKCdWJywgOTEsIHN0cnVjdCB2NGwyX2V2ZW50X3N1YnNjcmlwdGlvbikKLSNkZWZpbmUgVklESU9DX0NSRUFURV9CVUZTIF9JT1dSKCdWJywgOTIsIHN0cnVjdCB2NGwyX2NyZWF0ZV9idWZmZXJzKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgVklESU9DX0NSRUFURV9CVUZTIF9JT1dSKCdWJywgOTIsIHN0cnVjdCB2NGwyX2NyZWF0ZV9idWZmZXJzKQogI2RlZmluZSBWSURJT0NfUFJFUEFSRV9CVUYgX0lPV1IoJ1YnLCA5Mywgc3RydWN0IHY0bDJfYnVmZmVyKQogI2RlZmluZSBWSURJT0NfR19TRUxFQ1RJT04gX0lPV1IoJ1YnLCA5NCwgc3RydWN0IHY0bDJfc2VsZWN0aW9uKQogI2RlZmluZSBWSURJT0NfU19TRUxFQ1RJT04gX0lPV1IoJ1YnLCA5NSwgc3RydWN0IHY0bDJfc2VsZWN0aW9uKQotI2RlZmluZSBWSURJT0NfREVDT0RFUl9DTUQgX0lPV1IoJ1YnLCA5Niwgc3RydWN0IHY0bDJfZGVjb2Rlcl9jbWQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWSURJT0NfREVDT0RFUl9DTUQgX0lPV1IoJ1YnLCA5Niwgc3RydWN0IHY0bDJfZGVjb2Rlcl9jbWQpCiAjZGVmaW5lIFZJRElPQ19UUllfREVDT0RFUl9DTUQgX0lPV1IoJ1YnLCA5Nywgc3RydWN0IHY0bDJfZGVjb2Rlcl9jbWQpCiAjZGVmaW5lIFZJRElPQ19FTlVNX0RWX1RJTUlOR1MgX0lPV1IoJ1YnLCA5OCwgc3RydWN0IHY0bDJfZW51bV9kdl90aW1pbmdzKQogI2RlZmluZSBWSURJT0NfUVVFUllfRFZfVElNSU5HUyBfSU9SKCdWJywgOTksIHN0cnVjdCB2NGwyX2R2X3RpbWluZ3MpCi0jZGVmaW5lIFZJRElPQ19EVl9USU1JTkdTX0NBUCBfSU9XUignVicsIDEwMCwgc3RydWN0IHY0bDJfZHZfdGltaW5nc19jYXApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBWSURJT0NfRFZfVElNSU5HU19DQVAgX0lPV1IoJ1YnLCAxMDAsIHN0cnVjdCB2NGwyX2R2X3RpbWluZ3NfY2FwKQogI2RlZmluZSBWSURJT0NfRU5VTV9GUkVRX0JBTkRTIF9JT1dSKCdWJywgMTAxLCBzdHJ1Y3QgdjRsMl9mcmVxdWVuY3lfYmFuZCkKICNkZWZpbmUgVklESU9DX0RCR19HX0NISVBfSU5GTyBfSU9XUignVicsIDEwMiwgc3RydWN0IHY0bDJfZGJnX2NoaXBfaW5mbykKKyNkZWZpbmUgVklESU9DX1FVRVJZX0VYVF9DVFJMIF9JT1dSKCdWJywgMTAzLCBzdHJ1Y3QgdjRsMl9xdWVyeV9leHRfY3RybCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEJBU0VfVklESU9DX1BSSVZBVEUgMTkyCiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb185cC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fOXAuaAppbmRleCAyYWRmMGRmLi43MmJjNjRiIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb185cC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvXzlwLmgKQEAgLTI0LDggKzI0LDggQEAKICNpbmNsdWRlIDxsaW51eC92aXJ0aW9fY29uZmlnLmg+CiAjZGVmaW5lIFZJUlRJT185UF9NT1VOVF9UQUcgMAogc3RydWN0IHZpcnRpb185cF9jb25maWcgewotIF9fdTE2IHRhZ19sZW47CisgIF9fdTE2IHRhZ19sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdGFnWzBdOworICBfX3U4IHRhZ1swXTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX2JhbGxvb24uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX2JhbGxvb24uaAppbmRleCBkNzlkYjZmLi4wMjdiNjVmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb19iYWxsb29uLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fYmFsbG9vbi5oCkBAIC0yNCwyNSArMjQsMjMgQEAKICNkZWZpbmUgVklSVElPX0JBTExPT05fRl9NVVNUX1RFTExfSE9TVCAwCiAjZGVmaW5lIFZJUlRJT19CQUxMT09OX0ZfU1RBVFNfVlEgMQogI2RlZmluZSBWSVJUSU9fQkFMTE9PTl9QRk5fU0hJRlQgMTIKLXN0cnVjdCB2aXJ0aW9fYmFsbG9vbl9jb25maWcKK3N0cnVjdCB2aXJ0aW9fYmFsbG9vbl9jb25maWcgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBfX2xlMzIgbnVtX3BhZ2VzOwotIF9fbGUzMiBhY3R1YWw7CisgIF9fbGUzMiBudW1fcGFnZXM7CisgIF9fbGUzMiBhY3R1YWw7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklSVElPX0JBTExPT05fU19TV0FQX0lOIDAKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJUlRJT19CQUxMT09OX1NfU1dBUF9PVVQgMQogI2RlZmluZSBWSVJUSU9fQkFMTE9PTl9TX01BSkZMVCAyCiAjZGVmaW5lIFZJUlRJT19CQUxMT09OX1NfTUlORkxUIDMKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJUlRJT19CQUxMT09OX1NfTUVNRlJFRSA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSVJUSU9fQkFMTE9PTl9TX01FTVRPVCA1CiAjZGVmaW5lIFZJUlRJT19CQUxMT09OX1NfTlIgNgogc3RydWN0IHZpcnRpb19iYWxsb29uX3N0YXQgeworICBfX3UxNiB0YWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHRhZzsKLSBfX3U2NCB2YWw7CisgIF9fdTY0IHZhbDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZW5kaWYKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb19ibGsuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX2Jsay5oCmluZGV4IDc4ZWM1ZTAuLmI2YTIyZDAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX2Jsay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX2Jsay5oCkBAIC0zNCw1MiArMzQsNTYgQEAKICNkZWZpbmUgVklSVElPX0JMS19GX1dDRSA5CiAjZGVmaW5lIFZJUlRJT19CTEtfRl9UT1BPTE9HWSAxMAogI2RlZmluZSBWSVJUSU9fQkxLX0ZfQ09ORklHX1dDRSAxMQotI2RlZmluZSBWSVJUSU9fQkxLX0ZfRkxVU0ggVklSVElPX0JMS19GX1dDRQorI2RlZmluZSBWSVJUSU9fQkxLX0ZfTVEgMTIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFZJUlRJT19CTEtfRl9GTFVTSCBWSVJUSU9fQkxLX0ZfV0NFCiAjZGVmaW5lIFZJUlRJT19CTEtfSURfQllURVMgMjAKIHN0cnVjdCB2aXJ0aW9fYmxrX2NvbmZpZyB7Ci0gX191NjQgY2FwYWNpdHk7Ci0gX191MzIgc2l6ZV9tYXg7CisgIF9fdTY0IGNhcGFjaXR5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzZWdfbWF4OwotIHN0cnVjdCB2aXJ0aW9fYmxrX2dlb21ldHJ5IHsKLSBfX3UxNiBjeWxpbmRlcnM7Ci0gX191OCBoZWFkczsKKyAgX191MzIgc2l6ZV9tYXg7CisgIF9fdTMyIHNlZ19tYXg7CisgIHN0cnVjdCB2aXJ0aW9fYmxrX2dlb21ldHJ5IHsKKyAgICBfX3UxNiBjeWxpbmRlcnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2VjdG9yczsKLSB9IGdlb21ldHJ5OwotIF9fdTMyIGJsa19zaXplOwotIF9fdTggcGh5c2ljYWxfYmxvY2tfZXhwOworICAgIF9fdTggaGVhZHM7CisgICAgX191OCBzZWN0b3JzOworICB9IGdlb21ldHJ5OworICBfX3UzMiBibGtfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBhbGlnbm1lbnRfb2Zmc2V0OwotIF9fdTE2IG1pbl9pb19zaXplOwotIF9fdTMyIG9wdF9pb19zaXplOwotIF9fdTggd2NlOworICBfX3U4IHBoeXNpY2FsX2Jsb2NrX2V4cDsKKyAgX191OCBhbGlnbm1lbnRfb2Zmc2V0OworICBfX3UxNiBtaW5faW9fc2l6ZTsKKyAgX191MzIgb3B0X2lvX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHdjZTsKKyAgX191OCB1bnVzZWQ7CisgIF9fdTE2IG51bV9xdWV1ZXM7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklSVElPX0JMS19UX0lOIDAKICNkZWZpbmUgVklSVElPX0JMS19UX09VVCAxCiAjZGVmaW5lIFZJUlRJT19CTEtfVF9TQ1NJX0NNRCAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWSVJUSU9fQkxLX1RfRkxVU0ggNAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklSVElPX0JMS19UX0dFVF9JRCA4CiAjZGVmaW5lIFZJUlRJT19CTEtfVF9CQVJSSUVSIDB4ODAwMDAwMDAKIHN0cnVjdCB2aXJ0aW9fYmxrX291dGhkciB7CisgIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHR5cGU7Ci0gX191MzIgaW9wcmlvOwotIF9fdTY0IHNlY3RvcjsKKyAgX191MzIgaW9wcmlvOworICBfX3U2NCBzZWN0b3I7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2aXJ0aW9fc2NzaV9pbmhkciB7Ci0gX191MzIgZXJyb3JzOwotIF9fdTMyIGRhdGFfbGVuOwotIF9fdTMyIHNlbnNlX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzaWR1YWw7CisgIF9fdTMyIGVycm9yczsKKyAgX191MzIgZGF0YV9sZW47CisgIF9fdTMyIHNlbnNlX2xlbjsKKyAgX191MzIgcmVzaWR1YWw7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgVklSVElPX0JMS19TX09LIDAKICNkZWZpbmUgVklSVElPX0JMS19TX0lPRVJSIDEKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJUlRJT19CTEtfU19VTlNVUFAgMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fY29uc29sZS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fY29uc29sZS5oCmluZGV4IDgxZDUxNWMuLjljY2Y3NzAgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX2NvbnNvbGUuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb19jb25zb2xlLmgKQEAgLTI2LDE5ICsyNiwxOSBAQAogI2RlZmluZSBWSVJUSU9fQ09OU09MRV9GX01VTFRJUE9SVCAxCiAjZGVmaW5lIFZJUlRJT19DT05TT0xFX0ZfRU1FUkdfV1JJVEUgMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVklSVElPX0NPTlNPTEVfQkFEX0lEICh+KF9fdTMyKTApCisjZGVmaW5lIFZJUlRJT19DT05TT0xFX0JBRF9JRCAofihfX3UzMikgMCkKIHN0cnVjdCB2aXJ0aW9fY29uc29sZV9jb25maWcgewotIF9fdTE2IGNvbHM7Ci0gX191MTYgcm93czsKKyAgX191MTYgY29sczsKKyAgX191MTYgcm93czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X25yX3BvcnRzOwotIF9fdTMyIGVtZXJnX3dyOworICBfX3UzMiBtYXhfbnJfcG9ydHM7CisgIF9fdTMyIGVtZXJnX3dyOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCB2aXJ0aW9fY29uc29sZV9jb250cm9sIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWQ7Ci0gX191MTYgZXZlbnQ7Ci0gX191MTYgdmFsdWU7CisgIF9fdTMyIGlkOworICBfX3UxNiBldmVudDsKKyAgX191MTYgdmFsdWU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklSVElPX0NPTlNPTEVfREVWSUNFX1JFQURZIDAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX25ldC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fbmV0LmgKaW5kZXggYWFmMWIyOS4uZmVmODA3MCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fbmV0LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fbmV0LmgKQEAgLTUzLDM4ICs1MywzOCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklSVElPX05FVF9TX0FOTk9VTkNFIDIKIHN0cnVjdCB2aXJ0aW9fbmV0X2NvbmZpZyB7Ci0gX191OCBtYWNbRVRIX0FMRU5dOwotIF9fdTE2IHN0YXR1czsKKyAgX191OCBtYWNbRVRIX0FMRU5dOworICBfX3UxNiBzdGF0dXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IG1heF92aXJ0cXVldWVfcGFpcnM7CisgIF9fdTE2IG1heF92aXJ0cXVldWVfcGFpcnM7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IHZpcnRpb19uZXRfaGRyIHsKICNkZWZpbmUgVklSVElPX05FVF9IRFJfRl9ORUVEU19DU1VNIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZJUlRJT19ORVRfSERSX0ZfREFUQV9WQUxJRCAyCi0gX191OCBmbGFnczsKKyAgX191OCBmbGFnczsKICNkZWZpbmUgVklSVElPX05FVF9IRFJfR1NPX05PTkUgMAogI2RlZmluZSBWSVJUSU9fTkVUX0hEUl9HU09fVENQVjQgMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVklSVElPX05FVF9IRFJfR1NPX1VEUCAzCiAjZGVmaW5lIFZJUlRJT19ORVRfSERSX0dTT19UQ1BWNiA0CiAjZGVmaW5lIFZJUlRJT19ORVRfSERSX0dTT19FQ04gMHg4MAotIF9fdTggZ3NvX3R5cGU7CisgIF9fdTggZ3NvX3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGhkcl9sZW47Ci0gX191MTYgZ3NvX3NpemU7Ci0gX191MTYgY3N1bV9zdGFydDsKLSBfX3UxNiBjc3VtX29mZnNldDsKKyAgX191MTYgaGRyX2xlbjsKKyAgX191MTYgZ3NvX3NpemU7CisgIF9fdTE2IGNzdW1fc3RhcnQ7CisgIF9fdTE2IGNzdW1fb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdmlydGlvX25ldF9oZHJfbXJnX3J4YnVmIHsKLSBzdHJ1Y3QgdmlydGlvX25ldF9oZHIgaGRyOwotIF9fdTE2IG51bV9idWZmZXJzOworICBzdHJ1Y3QgdmlydGlvX25ldF9oZHIgaGRyOworICBfX3UxNiBudW1fYnVmZmVyczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHZpcnRpb19uZXRfY3RybF9oZHIgewotIF9fdTggY2xhc3M7Ci0gX191OCBjbWQ7CisgIF9fdTggY2xhc3M7CisgIF9fdTggY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiB0eXBlZGVmIF9fdTggdmlydGlvX25ldF9jdHJsX2FjazsKQEAgLTEwMSw4ICsxMDEsOCBAQAogI2RlZmluZSBWSVJUSU9fTkVUX0NUUkxfUlhfTk9CQ0FTVCA1CiBzdHJ1Y3QgdmlydGlvX25ldF9jdHJsX21hYyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGVudHJpZXM7Ci0gX191OCBtYWNzW11bRVRIX0FMRU5dOworICBfX3UzMiBlbnRyaWVzOworICBfX3U4IG1hY3NbXVtFVEhfQUxFTl07CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogI2RlZmluZSBWSVJUSU9fTkVUX0NUUkxfTUFDIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xMTYsNyArMTE2LDcgQEAKICNkZWZpbmUgVklSVElPX05FVF9DVFJMX0FOTk9VTkNFX0FDSyAwCiBzdHJ1Y3QgdmlydGlvX25ldF9jdHJsX21xIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgdmlydHF1ZXVlX3BhaXJzOworICBfX3UxNiB2aXJ0cXVldWVfcGFpcnM7CiB9OwogI2RlZmluZSBWSVJUSU9fTkVUX0NUUkxfTVEgNAogI2RlZmluZSBWSVJUSU9fTkVUX0NUUkxfTVFfVlFfUEFJUlNfU0VUIDAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX3JpbmcuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdmlydGlvX3JpbmcuaAppbmRleCAwNTc0MGU3Li5hMTcxODc0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZpcnRpb19yaW5nLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC92aXJ0aW9fcmluZy5oCkBAIC0yOSwzOCArMjksMzggQEAKICNkZWZpbmUgVklSVElPX1JJTkdfRl9JTkRJUkVDVF9ERVNDIDI4CiAjZGVmaW5lIFZJUlRJT19SSU5HX0ZfRVZFTlRfSURYIDI5CiBzdHJ1Y3QgdnJpbmdfZGVzYyB7Ci0gX191NjQgYWRkcjsKKyAgX191NjQgYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGVuOwotIF9fdTE2IGZsYWdzOwotIF9fdTE2IG5leHQ7CisgIF9fdTMyIGxlbjsKKyAgX191MTYgZmxhZ3M7CisgIF9fdTE2IG5leHQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB2cmluZ19hdmFpbCB7Ci0gX191MTYgZmxhZ3M7Ci0gX191MTYgaWR4OwotIF9fdTE2IHJpbmdbXTsKKyAgX191MTYgZmxhZ3M7CisgIF9fdTE2IGlkeDsKKyAgX191MTYgcmluZ1tdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgdnJpbmdfdXNlZF9lbGVtIHsKLSBfX3UzMiBpZDsKLSBfX3UzMiBsZW47CisgIF9fdTMyIGlkOworICBfX3UzMiBsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB2cmluZ191c2VkIHsKLSBfX3UxNiBmbGFnczsKLSBfX3UxNiBpZHg7CisgIF9fdTE2IGZsYWdzOworICBfX3UxNiBpZHg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB2cmluZ191c2VkX2VsZW0gcmluZ1tdOworICBzdHJ1Y3QgdnJpbmdfdXNlZF9lbGVtIHJpbmdbXTsKIH07CiBzdHJ1Y3QgdnJpbmcgewotIHVuc2lnbmVkIGludCBudW07CisgIHVuc2lnbmVkIGludCBudW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB2cmluZ19kZXNjICpkZXNjOwotIHN0cnVjdCB2cmluZ19hdmFpbCAqYXZhaWw7Ci0gc3RydWN0IHZyaW5nX3VzZWQgKnVzZWQ7CisgIHN0cnVjdCB2cmluZ19kZXNjICogZGVzYzsKKyAgc3RydWN0IHZyaW5nX2F2YWlsICogYXZhaWw7CisgIHN0cnVjdCB2cmluZ191c2VkICogdXNlZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSB2cmluZ191c2VkX2V2ZW50KHZyKSAoKHZyKS0+YXZhaWwtPnJpbmdbKHZyKS0+bnVtXSkKLSNkZWZpbmUgdnJpbmdfYXZhaWxfZXZlbnQodnIpICgqKF9fdTE2ICopJih2ciktPnVzZWQtPnJpbmdbKHZyKS0+bnVtXSkKKyNkZWZpbmUgdnJpbmdfYXZhaWxfZXZlbnQodnIpICgqIChfX3UxNiAqKSAmICh2ciktPnVzZWQtPnJpbmdbKHZyKS0+bnVtXSkKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92bV9zb2NrZXRzLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZtX3NvY2tldHMuaAppbmRleCAyMGU3YjhjLi5jNWM2ZmQ0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZtX3NvY2tldHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZtX3NvY2tldHMuaApAQCAtMjgsMjkgKzI4LDI2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTT19WTV9TT0NLRVRTX0NPTk5FQ1RfVElNRU9VVCA2CiAjZGVmaW5lIFNPX1ZNX1NPQ0tFVFNfTk9OQkxPQ0tfVFhSWCA3Ci0jZGVmaW5lIFZNQUREUl9DSURfQU5ZIC0xVQotI2RlZmluZSBWTUFERFJfUE9SVF9BTlkgLTFVCisjZGVmaW5lIFZNQUREUl9DSURfQU5ZIC0gMVUKKyNkZWZpbmUgVk1BRERSX1BPUlRfQU5ZIC0gMVUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFZNQUREUl9DSURfSFlQRVJWSVNPUiAwCiAjZGVmaW5lIFZNQUREUl9DSURfUkVTRVJWRUQgMQogI2RlZmluZSBWTUFERFJfQ0lEX0hPU1QgMgotI2RlZmluZSBWTV9TT0NLRVRTX0lOVkFMSURfVkVSU0lPTiAtMVUKKyNkZWZpbmUgVk1fU09DS0VUU19JTlZBTElEX1ZFUlNJT04gLSAxVQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVk1fU09DS0VUU19WRVJTSU9OX0VQT0NIKF92KSAoKChfdikgJiAweEZGMDAwMDAwKSA+PiAyNCkKICNkZWZpbmUgVk1fU09DS0VUU19WRVJTSU9OX01BSk9SKF92KSAoKChfdikgJiAweDAwRkYwMDAwKSA+PiAxNikKICNkZWZpbmUgVk1fU09DS0VUU19WRVJTSU9OX01JTk9SKF92KSAoKChfdikgJiAweDAwMDBGRkZGKSkKIHN0cnVjdCBzb2NrYWRkcl92bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fa2VybmVsX3NhX2ZhbWlseV90IHN2bV9mYW1pbHk7Ci0gdW5zaWduZWQgc2hvcnQgc3ZtX3Jlc2VydmVkMTsKLSB1bnNpZ25lZCBpbnQgc3ZtX3BvcnQ7Ci0gdW5zaWduZWQgaW50IHN2bV9jaWQ7CisgIF9fa2VybmVsX3NhX2ZhbWlseV90IHN2bV9mYW1pbHk7CisgIHVuc2lnbmVkIHNob3J0IHN2bV9yZXNlcnZlZDE7CisgIHVuc2lnbmVkIGludCBzdm1fcG9ydDsKKyAgdW5zaWduZWQgaW50IHN2bV9jaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgc3ZtX3plcm9bc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcikgLQotIHNpemVvZihzYV9mYW1pbHlfdCkgLQotIHNpemVvZih1bnNpZ25lZCBzaG9ydCkgLQotIHNpemVvZih1bnNpZ25lZCBpbnQpIC0gc2l6ZW9mKHVuc2lnbmVkIGludCldOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgY2hhciBzdm1femVyb1tzaXplb2Yoc3RydWN0IHNvY2thZGRyKSAtIHNpemVvZihzYV9mYW1pbHlfdCkgLSBzaXplb2YodW5zaWduZWQgc2hvcnQpIC0gc2l6ZW9mKHVuc2lnbmVkIGludCkgLSBzaXplb2YodW5zaWduZWQgaW50KV07CiB9OwogI2RlZmluZSBJT0NUTF9WTV9TT0NLRVRTX0dFVF9MT0NBTF9DSUQgX0lPKDcsIDB4YjkpCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3ZzcDEuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdnNwMS5oCmluZGV4IGI3NTIyZTcuLjI4ZjdmY2QgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvdnNwMS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdnNwMS5oCkBAIC0yMSw5ICsyMSw5IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KICNpbmNsdWRlIDxsaW51eC92aWRlb2RldjIuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFZJRElPQ19WU1AxX0xVVF9DT05GSUcgICBfSU9XUignVicsIEJBU0VfVklESU9DX1BSSVZBVEUgKyAxLCBzdHJ1Y3QgdnNwMV9sdXRfY29uZmlnKQorI2RlZmluZSBWSURJT0NfVlNQMV9MVVRfQ09ORklHIF9JT1dSKCdWJywgQkFTRV9WSURJT0NfUFJJVkFURSArIDEsIHN0cnVjdCB2c3AxX2x1dF9jb25maWcpCiBzdHJ1Y3QgdnNwMV9sdXRfY29uZmlnIHsKLSB1MzIgbHV0WzI1Nl07CisgIHUzMiBsdXRbMjU2XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Z0LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3Z0LmgKaW5kZXggNjY0ZjM3Zi4uYzlhODI0NSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC92dC5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvdnQuaApAQCAtMjQsMTIgKzI0LDEyIEBACiAjZGVmaW5lIE1BWF9OUl9VU0VSX0NPTlNPTEVTIDYzCiAjZGVmaW5lIFZUX09QRU5RUlkgMHg1NjAwCiBzdHJ1Y3QgdnRfbW9kZSB7Ci0gY2hhciBtb2RlOworICBjaGFyIG1vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgd2FpdHY7Ci0gc2hvcnQgcmVsc2lnOwotIHNob3J0IGFjcXNpZzsKLSBzaG9ydCBmcnNpZzsKKyAgY2hhciB3YWl0djsKKyAgc2hvcnQgcmVsc2lnOworICBzaG9ydCBhY3FzaWc7CisgIHNob3J0IGZyc2lnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFZUX0dFVE1PREUgMHg1NjAxCkBAIC0zOSwxMCArMzksMTAgQEAKICNkZWZpbmUgVlRfUFJPQ0VTUyAweDAxCiAjZGVmaW5lIFZUX0FDS0FDUSAweDAyCiBzdHJ1Y3QgdnRfc3RhdCB7Ci0gdW5zaWduZWQgc2hvcnQgdl9hY3RpdmU7CisgIHVuc2lnbmVkIHNob3J0IHZfYWN0aXZlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCB2X3NpZ25hbDsKLSB1bnNpZ25lZCBzaG9ydCB2X3N0YXRlOworICB1bnNpZ25lZCBzaG9ydCB2X3NpZ25hbDsKKyAgdW5zaWduZWQgc2hvcnQgdl9zdGF0ZTsKIH07CiAjZGVmaW5lIFZUX0dFVFNUQVRFIDB4NTYwMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTUzLDIxICs1MywyMSBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVlRfRElTQUxMT0NBVEUgMHg1NjA4CiBzdHJ1Y3QgdnRfc2l6ZXMgewotIHVuc2lnbmVkIHNob3J0IHZfcm93czsKLSB1bnNpZ25lZCBzaG9ydCB2X2NvbHM7CisgIHVuc2lnbmVkIHNob3J0IHZfcm93czsKKyAgdW5zaWduZWQgc2hvcnQgdl9jb2xzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCB2X3Njcm9sbHNpemU7CisgIHVuc2lnbmVkIHNob3J0IHZfc2Nyb2xsc2l6ZTsKIH07CiAjZGVmaW5lIFZUX1JFU0laRSAweDU2MDkKIHN0cnVjdCB2dF9jb25zaXplIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgdl9yb3dzOwotIHVuc2lnbmVkIHNob3J0IHZfY29sczsKLSB1bnNpZ25lZCBzaG9ydCB2X3ZsaW47Ci0gdW5zaWduZWQgc2hvcnQgdl9jbGluOworICB1bnNpZ25lZCBzaG9ydCB2X3Jvd3M7CisgIHVuc2lnbmVkIHNob3J0IHZfY29sczsKKyAgdW5zaWduZWQgc2hvcnQgdl92bGluOworICB1bnNpZ25lZCBzaG9ydCB2X2NsaW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHZfdmNvbDsKLSB1bnNpZ25lZCBzaG9ydCB2X2Njb2w7CisgIHVuc2lnbmVkIHNob3J0IHZfdmNvbDsKKyAgdW5zaWduZWQgc2hvcnQgdl9jY29sOwogfTsKICNkZWZpbmUgVlRfUkVTSVpFWCAweDU2MEEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC03NiwyNSArNzYsMjUgQEAKICNkZWZpbmUgVlRfR0VUSElGT05UTUFTSyAweDU2MEQKIHN0cnVjdCB2dF9ldmVudCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBldmVudDsKKyAgdW5zaWduZWQgaW50IGV2ZW50OwogI2RlZmluZSBWVF9FVkVOVF9TV0lUQ0ggMHgwMDAxCiAjZGVmaW5lIFZUX0VWRU5UX0JMQU5LIDB4MDAwMgogI2RlZmluZSBWVF9FVkVOVF9VTkJMQU5LIDB4MDAwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgVlRfRVZFTlRfUkVTSVpFIDB4MDAwOAogI2RlZmluZSBWVF9NQVhfRVZFTlQgMHgwMDBGCi0gdW5zaWduZWQgaW50IG9sZGV2OwotIHVuc2lnbmVkIGludCBuZXdldjsKKyAgdW5zaWduZWQgaW50IG9sZGV2OworICB1bnNpZ25lZCBpbnQgbmV3ZXY7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBwYWRbNF07CisgIHVuc2lnbmVkIGludCBwYWRbNF07CiB9OwogI2RlZmluZSBWVF9XQUlURVZFTlQgMHg1NjBFCiBzdHJ1Y3QgdnRfc2V0YWN0aXZhdGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY29uc29sZTsKLSBzdHJ1Y3QgdnRfbW9kZSBtb2RlOworICB1bnNpZ25lZCBpbnQgY29uc29sZTsKKyAgc3RydWN0IHZ0X21vZGUgbW9kZTsKIH07CiAjZGVmaW5lIFZUX1NFVEFDVElWQVRFIDB4NTYwRgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgdnRfZ2V0X2ttc2dfcmVkaXJlY3QoKSB2dF9rbXNnX3JlZGlyZWN0KC0xKQorI2RlZmluZSB2dF9nZXRfa21zZ19yZWRpcmVjdCgpIHZ0X2ttc2dfcmVkaXJlY3QoLSAxKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dhbnJvdXRlci5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC93YW5yb3V0ZXIuaAppbmRleCBkODc5NjAwLi5kNGY0ODIxIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dhbnJvdXRlci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2Fucm91dGVyLmgKQEAgLTE4LDEzICsxOCwxMiBAQAogICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAjaWZuZGVmIF9VQVBJX1JPVVRFUl9ICiAjZGVmaW5lIF9VQVBJX1JPVVRFUl9ICi1lbnVtIHdhbl9zdGF0ZXMKLXsKK2VudW0gd2FuX3N0YXRlcyB7CisgIFdBTl9VTkNPTkZJR1VSRUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFdBTl9VTkNPTkZJR1VSRUQsCi0gV0FOX0RJU0NPTk5FQ1RFRCwKLSBXQU5fQ09OTkVDVElORywKLSBXQU5fQ09OTkVDVEVECi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBXQU5fRElTQ09OTkVDVEVELAorICBXQU5fQ09OTkVDVElORywKKyAgV0FOX0NPTk5FQ1RFRAogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2F0Y2hkb2cuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2F0Y2hkb2cuaAppbmRleCAwNWE5YmM4Li5iOGE5YzMyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dhdGNoZG9nLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC93YXRjaGRvZy5oCkBAIC0yMywxMCArMjMsMTAgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFdBVENIRE9HX0lPQ1RMX0JBU0UgJ1cnCiBzdHJ1Y3Qgd2F0Y2hkb2dfaW5mbyB7Ci0gX191MzIgb3B0aW9uczsKLSBfX3UzMiBmaXJtd2FyZV92ZXJzaW9uOworICBfX3UzMiBvcHRpb25zOworICBfX3UzMiBmaXJtd2FyZV92ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGlkZW50aXR5WzMyXTsKKyAgX191OCBpZGVudGl0eVszMl07CiB9OwogI2RlZmluZSBXRElPQ19HRVRTVVBQT1JUIF9JT1IoV0FUQ0hET0dfSU9DVExfQkFTRSwgMCwgc3RydWN0IHdhdGNoZG9nX2luZm8pCiAjZGVmaW5lIFdESU9DX0dFVFNUQVRVUyBfSU9SKFdBVENIRE9HX0lPQ1RMX0JBU0UsIDEsIGludCkKQEAgLTQyLDggKzQyLDggQEAKICNkZWZpbmUgV0RJT0NfR0VUUFJFVElNRU9VVCBfSU9SKFdBVENIRE9HX0lPQ1RMX0JBU0UsIDksIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFdESU9DX0dFVFRJTUVMRUZUIF9JT1IoV0FUQ0hET0dfSU9DVExfQkFTRSwgMTAsIGludCkKLSNkZWZpbmUgV0RJT0ZfVU5LTk9XTiAtMQotI2RlZmluZSBXRElPU19VTktOT1dOIC0xCisjZGVmaW5lIFdESU9GX1VOS05PV04gLSAxCisjZGVmaW5lIFdESU9TX1VOS05PV04gLSAxCiAjZGVmaW5lIFdESU9GX09WRVJIRUFUIDB4MDAwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgV0RJT0ZfRkFORkFVTFQgMHgwMDAyCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dpbDYyMTBfdWFwaS5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC93aWw2MjEwX3VhcGkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MmFlZDBmCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC93aWw2MjEwX3VhcGkuaApAQCAtMCwwICsxLDUxIEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9fV0lMNjIxMF9VQVBJX0hfXworI2RlZmluZSBfX1dJTDYyMTBfVUFQSV9IX18KKyNkZWZpbmUgX191c2VyCisjaW5jbHVkZSA8bGludXgvc29ja2lvcy5oPgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgV0lMX0lPQ1RMX01FTUlPIChTSU9DREVWUFJJVkFURSArIDIpCisjZGVmaW5lIFdJTF9JT0NUTF9NRU1JT19CTE9DSyAoU0lPQ0RFVlBSSVZBVEUgKyAzKQorZW51bSB3aWxfbWVtaW9fb3AgeworICB3aWxfbW1pb19yZWFkID0gMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHdpbF9tbWlvX3dyaXRlID0gMSwKKyAgd2lsX21taW9fb3BfbWFzayA9IDB4ZmYsCisgIHdpbF9tbWlvX2FkZHJfbGlua2VyID0gMCA8PCA4LAorICB3aWxfbW1pb19hZGRyX2FoYiA9IDEgPDwgOCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHdpbF9tbWlvX2FkZHJfYmFyID0gMiA8PCA4LAorICB3aWxfbW1pb19hZGRyX21hc2sgPSAweGZmMDAsCit9Oworc3RydWN0IHdpbF9tZW1pbyB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1aW50MzJfdCBvcDsKKyAgdWludDMyX3QgYWRkcjsKKyAgdWludDMyX3QgdmFsOworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3Qgd2lsX21lbWlvX2Jsb2NrIHsKKyAgdWludDMyX3Qgb3A7CisgIHVpbnQzMl90IGFkZHI7CisgIHVpbnQzMl90IHNpemU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB2b2lkIF9fdXNlciAqIGJsb2NrOworfTsKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC93aW1heC5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC93aW1heC5oCmluZGV4IDE1MWFiMGQuLjhhZmI1YzEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2ltYXguaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dpbWF4LmgKQEAgLTIxLDY1ICsyMSw2NSBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gV0lNQVhfR05MX1ZFUlNJT04gPSAwMSwKLSBXSU1BWF9HTkxfQVRUUl9JTlZBTElEID0gMHgwMCwKLSBXSU1BWF9HTkxfQVRUUl9NQVggPSAxMCwKKyAgV0lNQVhfR05MX1ZFUlNJT04gPSAwMSwKKyAgV0lNQVhfR05MX0FUVFJfSU5WQUxJRCA9IDB4MDAsCisgIFdJTUFYX0dOTF9BVFRSX01BWCA9IDEwLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBXSU1BWF9HTkxfT1BfTVNHX0ZST01fVVNFUiwKLSBXSU1BWF9HTkxfT1BfTVNHX1RPX1VTRVIsCi0gV0lNQVhfR05MX09QX1JGS0lMTCwKKyAgV0lNQVhfR05MX09QX01TR19GUk9NX1VTRVIsCisgIFdJTUFYX0dOTF9PUF9NU0dfVE9fVVNFUiwKKyAgV0lNQVhfR05MX09QX1JGS0lMTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gV0lNQVhfR05MX09QX1JFU0VULAotIFdJTUFYX0dOTF9SRV9TVEFURV9DSEFOR0UsCi0gV0lNQVhfR05MX09QX1NUQVRFX0dFVCwKKyAgV0lNQVhfR05MX09QX1JFU0VULAorICBXSU1BWF9HTkxfUkVfU1RBVEVfQ0hBTkdFLAorICBXSU1BWF9HTkxfT1BfU1RBVEVfR0VULAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBXSU1BWF9HTkxfTVNHX0lGSURYID0gMSwKLSBXSU1BWF9HTkxfTVNHX1BJUEVfTkFNRSwKLSBXSU1BWF9HTkxfTVNHX0RBVEEsCisgIFdJTUFYX0dOTF9NU0dfSUZJRFggPSAxLAorICBXSU1BWF9HTkxfTVNHX1BJUEVfTkFNRSwKKyAgV0lNQVhfR05MX01TR19EQVRBLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIHdpbWF4X3JmX3N0YXRlIHsKLSBXSU1BWF9SRl9PRkYgPSAwLAotIFdJTUFYX1JGX09OID0gMSwKKyAgV0lNQVhfUkZfT0ZGID0gMCwKKyAgV0lNQVhfUkZfT04gPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBXSU1BWF9SRl9RVUVSWSA9IDIsCisgIFdJTUFYX1JGX1FVRVJZID0gMiwKIH07CiBlbnVtIHsKLSBXSU1BWF9HTkxfUkZLSUxMX0lGSURYID0gMSwKKyAgV0lNQVhfR05MX1JGS0lMTF9JRklEWCA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFdJTUFYX0dOTF9SRktJTExfU1RBVEUsCisgIFdJTUFYX0dOTF9SRktJTExfU1RBVEUsCiB9OwogZW51bSB7Ci0gV0lNQVhfR05MX1JFU0VUX0lGSURYID0gMSwKKyAgV0lNQVhfR05MX1JFU0VUX0lGSURYID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gV0lNQVhfR05MX1NUR0VUX0lGSURYID0gMSwKKyAgV0lNQVhfR05MX1NUR0VUX0lGSURYID0gMSwKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gV0lNQVhfR05MX1NUQ0hfSUZJRFggPSAxLAotIFdJTUFYX0dOTF9TVENIX1NUQVRFX09MRCwKLSBXSU1BWF9HTkxfU1RDSF9TVEFURV9ORVcsCisgIFdJTUFYX0dOTF9TVENIX0lGSURYID0gMSwKKyAgV0lNQVhfR05MX1NUQ0hfU1RBVEVfT0xELAorICBXSU1BWF9HTkxfU1RDSF9TVEFURV9ORVcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSBlbnVtIHdpbWF4X3N0IHsKLSBfX1dJTUFYX1NUX05VTEwgPSAwLAotIFdJTUFYX1NUX0RPV04sCitlbnVtIHdpbWF4X3N0IHsKKyAgX19XSU1BWF9TVF9OVUxMID0gMCwKKyAgV0lNQVhfU1RfRE9XTiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19XSU1BWF9TVF9RVUlFU0NJTkcsCi0gV0lNQVhfU1RfVU5JTklUSUFMSVpFRCwKLSBXSU1BWF9TVF9SQURJT19PRkYsCi0gV0lNQVhfU1RfUkVBRFksCisgIF9fV0lNQVhfU1RfUVVJRVNDSU5HLAorICBXSU1BWF9TVF9VTklOSVRJQUxJWkVELAorICBXSU1BWF9TVF9SQURJT19PRkYsCisgIFdJTUFYX1NUX1JFQURZLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBXSU1BWF9TVF9TQ0FOTklORywKLSBXSU1BWF9TVF9DT05ORUNUSU5HLAotIFdJTUFYX1NUX0NPTk5FQ1RFRCwKLSBfX1dJTUFYX1NUX0lOVkFMSUQKKyAgV0lNQVhfU1RfU0NBTk5JTkcsCisgIFdJTUFYX1NUX0NPTk5FQ1RJTkcsCisgIFdJTUFYX1NUX0NPTk5FQ1RFRCwKKyAgX19XSU1BWF9TVF9JTlZBTElECiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC93aW1heC9pMjQwMG0uaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2ltYXgvaTI0MDBtLmgKaW5kZXggMzA1ODVhOC4uZTI0NzI5YyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC93aW1heC9pMjQwMG0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dpbWF4L2kyNDAwbS5oCkBAIC0yMiwzNjAgKzIyLDM2MCBAQAogI2luY2x1ZGUgPGxpbnV4L2lmX2V0aGVyLmg+CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGkyNDAwbV9iY2ZfaGRyIHsKLSBfX2xlMzIgbW9kdWxlX3R5cGU7Ci0gX19sZTMyIGhlYWRlcl9sZW47Ci0gX19sZTMyIGhlYWRlcl92ZXJzaW9uOworICBfX2xlMzIgbW9kdWxlX3R5cGU7CisgIF9fbGUzMiBoZWFkZXJfbGVuOworICBfX2xlMzIgaGVhZGVyX3ZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBtb2R1bGVfaWQ7Ci0gX19sZTMyIG1vZHVsZV92ZW5kb3I7Ci0gX19sZTMyIGRhdGU7Ci0gX19sZTMyIHNpemU7CisgIF9fbGUzMiBtb2R1bGVfaWQ7CisgIF9fbGUzMiBtb2R1bGVfdmVuZG9yOworICBfX2xlMzIgZGF0ZTsKKyAgX19sZTMyIHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBrZXlfc2l6ZTsKLSBfX2xlMzIgbW9kdWx1c19zaXplOwotIF9fbGUzMiBleHBvbmVudF9zaXplOwotIF9fdTggcmVzZXJ2ZWRbODhdOworICBfX2xlMzIga2V5X3NpemU7CisgIF9fbGUzMiBtb2R1bHVzX3NpemU7CisgIF9fbGUzMiBleHBvbmVudF9zaXplOworICBfX3U4IHJlc2VydmVkWzg4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19IF9fYXR0cmlidXRlX18gKChwYWNrZWQpKTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBlbnVtIGkyNDAwbV9icmhfb3Bjb2RlIHsKLSBJMjQwME1fQlJIX1JFQUQgPSAxLAotIEkyNDAwTV9CUkhfV1JJVEUgPSAyLAorICBJMjQwME1fQlJIX1JFQUQgPSAxLAorICBJMjQwME1fQlJIX1dSSVRFID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX0JSSF9KVU1QID0gMywKLSBJMjQwME1fQlJIX1NJR05FRF9KVU1QID0gOCwKLSBJMjQwME1fQlJIX0hBU0hfUEFZTE9BRF9PTkxZID0gOSwKKyAgSTI0MDBNX0JSSF9KVU1QID0gMywKKyAgSTI0MDBNX0JSSF9TSUdORURfSlVNUCA9IDgsCisgIEkyNDAwTV9CUkhfSEFTSF9QQVlMT0FEX09OTFkgPSA5LAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGkyNDAwbV9icmggewotIEkyNDAwTV9CUkhfU0lHTkFUVVJFID0gMHhjYmJjMDAwMCwKLSBJMjQwME1fQlJIX1NJR05BVFVSRV9NQVNLID0gMHhmZmZmMDAwMCwKLSBJMjQwME1fQlJIX1NJR05BVFVSRV9TSElGVCA9IDE2LAorICBJMjQwME1fQlJIX1NJR05BVFVSRSA9IDB4Y2JiYzAwMDAsCisgIEkyNDAwTV9CUkhfU0lHTkFUVVJFX01BU0sgPSAweGZmZmYwMDAwLAorICBJMjQwME1fQlJIX1NJR05BVFVSRV9TSElGVCA9IDE2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fQlJIX09QQ09ERV9NQVNLID0gMHgwMDAwMDAwZiwKLSBJMjQwME1fQlJIX1JFU1BPTlNFX01BU0sgPSAweDAwMDAwMGYwLAotIEkyNDAwTV9CUkhfUkVTUE9OU0VfU0hJRlQgPSA0LAotIEkyNDAwTV9CUkhfRElSRUNUX0FDQ0VTUyA9IDB4MDAwMDA0MDAsCisgIEkyNDAwTV9CUkhfT1BDT0RFX01BU0sgPSAweDAwMDAwMDBmLAorICBJMjQwME1fQlJIX1JFU1BPTlNFX01BU0sgPSAweDAwMDAwMGYwLAorICBJMjQwME1fQlJIX1JFU1BPTlNFX1NISUZUID0gNCwKKyAgSTI0MDBNX0JSSF9ESVJFQ1RfQUNDRVNTID0gMHgwMDAwMDQwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX0JSSF9SRVNQT05TRV9SRVFVSVJFRCA9IDB4MDAwMDAyMDAsCi0gSTI0MDBNX0JSSF9VU0VfQ0hFQ0tTVU0gPSAweDAwMDAwMTAwLAorICBJMjQwME1fQlJIX1JFU1BPTlNFX1JFUVVJUkVEID0gMHgwMDAwMDIwMCwKKyAgSTI0MDBNX0JSSF9VU0VfQ0hFQ0tTVU0gPSAweDAwMDAwMTAwLAogfTsKIHN0cnVjdCBpMjQwMG1fYm9vdHJvbV9oZWFkZXIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgY29tbWFuZDsKLSBfX2xlMzIgdGFyZ2V0X2FkZHI7Ci0gX19sZTMyIGRhdGFfc2l6ZTsKLSBfX2xlMzIgYmxvY2tfY2hlY2tzdW07CisgIF9fbGUzMiBjb21tYW5kOworICBfX2xlMzIgdGFyZ2V0X2FkZHI7CisgIF9fbGUzMiBkYXRhX3NpemU7CisgIF9fbGUzMiBibG9ja19jaGVja3N1bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBwYXlsb2FkWzBdOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIGNoYXIgcGF5bG9hZFswXTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBlbnVtIGkyNDAwbV9wdCB7Ci0gSTI0MDBNX1BUX0RBVEEgPSAwLAorICBJMjQwME1fUFRfREFUQSA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9QVF9DVFJMLAotIEkyNDAwTV9QVF9UUkFDRSwKLSBJMjQwME1fUFRfUkVTRVRfV0FSTSwKLSBJMjQwME1fUFRfUkVTRVRfQ09MRCwKKyAgSTI0MDBNX1BUX0NUUkwsCisgIEkyNDAwTV9QVF9UUkFDRSwKKyAgSTI0MDBNX1BUX1JFU0VUX1dBUk0sCisgIEkyNDAwTV9QVF9SRVNFVF9DT0xELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fUFRfRURBVEEsCi0gSTI0MDBNX1BUX0lMTEVHQUwKKyAgSTI0MDBNX1BUX0VEQVRBLAorICBJMjQwME1fUFRfSUxMRUdBTAogfTsKIHN0cnVjdCBpMjQwMG1fcGxfZGF0YV9oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMzIgcmVzZXJ2ZWQ7CisgIF9fbGUzMiByZXNlcnZlZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgaTI0MDBtX3BsX2VkYXRhX2hkciB7Ci0gX19sZTMyIHJlb3JkZXI7CisgIF9fbGUzMiByZW9yZGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNzOwotIF9fdTggcmVzZXJ2ZWRbMTFdOworICBfX3U4IGNzOworICBfX3U4IHJlc2VydmVkWzExXTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBlbnVtIGkyNDAwbV9jcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9DU19JUFY0XzAgPSAwLAotIEkyNDAwTV9DU19JUFY0ID0gMiwKKyAgSTI0MDBNX0NTX0lQVjRfMCA9IDAsCisgIEkyNDAwTV9DU19JUFY0ID0gMiwKIH07CiBlbnVtIGkyNDAwbV9ybyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9ST19ORUVERUQgPSAweDAxLAotIEkyNDAwTV9ST19UWVBFID0gMHgwMywKLSBJMjQwME1fUk9fVFlQRV9TSElGVCA9IDEsCi0gSTI0MDBNX1JPX0NJTiA9IDB4MGYsCisgIEkyNDAwTV9ST19ORUVERUQgPSAweDAxLAorICBJMjQwME1fUk9fVFlQRSA9IDB4MDMsCisgIEkyNDAwTV9ST19UWVBFX1NISUZUID0gMSwKKyAgSTI0MDBNX1JPX0NJTiA9IDB4MGYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9ST19DSU5fU0hJRlQgPSA0LAotIEkyNDAwTV9ST19GQk4gPSAweDA3ZmYsCi0gSTI0MDBNX1JPX0ZCTl9TSElGVCA9IDgsCi0gSTI0MDBNX1JPX1NOID0gMHgwN2ZmLAorICBJMjQwME1fUk9fQ0lOX1NISUZUID0gNCwKKyAgSTI0MDBNX1JPX0ZCTiA9IDB4MDdmZiwKKyAgSTI0MDBNX1JPX0ZCTl9TSElGVCA9IDgsCisgIEkyNDAwTV9ST19TTiA9IDB4MDdmZiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX1JPX1NOX1NISUZUID0gMjEsCisgIEkyNDAwTV9ST19TTl9TSElGVCA9IDIxLAogfTsKIGVudW0gaTI0MDBtX3JvX3R5cGUgewotIEkyNDAwTV9ST19UWVBFX1JFU0VUID0gMCwKKyAgSTI0MDBNX1JPX1RZUEVfUkVTRVQgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fUk9fVFlQRV9QQUNLRVQsCi0gSTI0MDBNX1JPX1RZUEVfV1MsCi0gSTI0MDBNX1JPX1RZUEVfUEFDS0VUX1dTLAorICBJMjQwME1fUk9fVFlQRV9QQUNLRVQsCisgIEkyNDAwTV9ST19UWVBFX1dTLAorICBJMjQwME1fUk9fVFlQRV9QQUNLRVRfV1MsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIEkyNDAwTV9QTF9BTElHTiA9IDE2LAotIEkyNDAwTV9QTF9TSVpFX01BWCA9IDB4M0VGRiwKLSBJMjQwME1fTUFYX1BMU19JTl9NU0cgPSA2MCwKKyAgSTI0MDBNX1BMX0FMSUdOID0gMTYsCisgIEkyNDAwTV9QTF9TSVpFX01BWCA9IDB4M0VGRiwKKyAgSTI0MDBNX01BWF9QTFNfSU5fTVNHID0gNjAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9IMkRfUFJFVklFV19CQVJLRVIgPSAweGNhZmU5MDBkLAotIEkyNDAwTV9DT0xEX1JFU0VUX0JBUktFUiA9IDB4YzAxZGMwMWQsCi0gSTI0MDBNX1dBUk1fUkVTRVRfQkFSS0VSID0gMHg1MGY3NTBmNywKLSBJMjQwME1fTkJPT1RfQkFSS0VSID0gMHhkZWFkYmVlZiwKKyAgSTI0MDBNX0gyRF9QUkVWSUVXX0JBUktFUiA9IDB4Y2FmZTkwMGQsCisgIEkyNDAwTV9DT0xEX1JFU0VUX0JBUktFUiA9IDB4YzAxZGMwMWQsCisgIEkyNDAwTV9XQVJNX1JFU0VUX0JBUktFUiA9IDB4NTBmNzUwZjcsCisgIEkyNDAwTV9OQk9PVF9CQVJLRVIgPSAweGRlYWRiZWVmLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fU0JPT1RfQkFSS0VSID0gMHgwZmYxYzFhMSwKLSBJMjQwME1fU0JPT1RfQkFSS0VSXzYwNTAgPSAweDgwMDAwMDAxLAotIEkyNDAwTV9BQ0tfQkFSS0VSID0gMHhmZWVkYmFiZSwKLSBJMjQwME1fRDJIX01TR19CQVJLRVIgPSAweGJlZWZiYWJlLAorICBJMjQwME1fU0JPT1RfQkFSS0VSID0gMHgwZmYxYzFhMSwKKyAgSTI0MDBNX1NCT09UX0JBUktFUl82MDUwID0gMHg4MDAwMDAwMSwKKyAgSTI0MDBNX0FDS19CQVJLRVIgPSAweGZlZWRiYWJlLAorICBJMjQwME1fRDJIX01TR19CQVJLRVIgPSAweGJlZWZiYWJlLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaTI0MDBtX3BsZCB7Ci0gX19sZTMyIHZhbDsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX2xlMzIgdmFsOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEkyNDAwTV9QTERfU0laRV9NQVNLIDB4MDAwMDNmZmYKICNkZWZpbmUgSTI0MDBNX1BMRF9UWVBFX1NISUZUIDE2CiAjZGVmaW5lIEkyNDAwTV9QTERfVFlQRV9NQVNLIDB4MDAwZjAwMDAKIHN0cnVjdCBpMjQwMG1fbXNnX2hkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBfX2xlMzIgYmFya2VyOwotIF9fdTMyIHNpemU7Ci0gfTsKKyAgdW5pb24geworICAgIF9fbGUzMiBiYXJrZXI7CisgICAgX191MzIgc2l6ZTsKKyAgfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIF9fbGUzMiBzZXF1ZW5jZTsKLSBfX3UzMiBvZmZzZXQ7Ci0gfTsKKyAgdW5pb24geworICAgIF9fbGUzMiBzZXF1ZW5jZTsKKyAgICBfX3UzMiBvZmZzZXQ7CisgIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiBudW1fcGxzOwotIF9fbGUxNiByc3YxOwotIF9fbGUxNiBwYWRkaW5nOwotIF9fbGUxNiByc3YyOworICBfX2xlMTYgbnVtX3BsczsKKyAgX19sZTE2IHJzdjE7CisgIF9fbGUxNiBwYWRkaW5nOworICBfX2xlMTYgcnN2MjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGkyNDAwbV9wbGQgcGxkWzBdOwotfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7CisgIHN0cnVjdCBpMjQwMG1fcGxkIHBsZFswXTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBlbnVtIHsKLSBJMjQwME1fTDNMNF9WRVJTSU9OID0gMHgwMTAwLAorICBJMjQwME1fTDNMNF9WRVJTSU9OID0gMHgwMTAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGkyNDAwbV9tdCB7Ci0gSTI0MDBNX01UX1JFU0VSVkVEID0gMHgwMDAwLAotIEkyNDAwTV9NVF9JTlZBTElEID0gMHhmZmZmLAorICBJMjQwME1fTVRfUkVTRVJWRUQgPSAweDAwMDAsCisgIEkyNDAwTV9NVF9JTlZBTElEID0gMHhmZmZmLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fTVRfUkVQT1JUX01BU0sgPSAweDgwMDAsCi0gSTI0MDBNX01UX0dFVF9TQ0FOX1JFU1VMVCA9IDB4NDIwMiwKLSBJMjQwME1fTVRfU0VUX1NDQU5fUEFSQU0gPSAweDQ0MDIsCi0gSTI0MDBNX01UX0NNRF9SRl9DT05UUk9MID0gMHg0NjAyLAorICBJMjQwME1fTVRfUkVQT1JUX01BU0sgPSAweDgwMDAsCisgIEkyNDAwTV9NVF9HRVRfU0NBTl9SRVNVTFQgPSAweDQyMDIsCisgIEkyNDAwTV9NVF9TRVRfU0NBTl9QQVJBTSA9IDB4NDQwMiwKKyAgSTI0MDBNX01UX0NNRF9SRl9DT05UUk9MID0gMHg0NjAyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fTVRfQ01EX1NDQU4gPSAweDQ2MDMsCi0gSTI0MDBNX01UX0NNRF9DT05ORUNUID0gMHg0NjA0LAotIEkyNDAwTV9NVF9DTURfRElTQ09OTkVDVCA9IDB4NDYwNSwKLSBJMjQwME1fTVRfQ01EX0VYSVRfSURMRSA9IDB4NDYwNiwKKyAgSTI0MDBNX01UX0NNRF9TQ0FOID0gMHg0NjAzLAorICBJMjQwME1fTVRfQ01EX0NPTk5FQ1QgPSAweDQ2MDQsCisgIEkyNDAwTV9NVF9DTURfRElTQ09OTkVDVCA9IDB4NDYwNSwKKyAgSTI0MDBNX01UX0NNRF9FWElUX0lETEUgPSAweDQ2MDYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9NVF9HRVRfTE1fVkVSU0lPTiA9IDB4NTIwMSwKLSBJMjQwME1fTVRfR0VUX0RFVklDRV9JTkZPID0gMHg1MjAyLAotIEkyNDAwTV9NVF9HRVRfTElOS19TVEFUVVMgPSAweDUyMDMsCi0gSTI0MDBNX01UX0dFVF9TVEFUSVNUSUNTID0gMHg1MjA0LAorICBJMjQwME1fTVRfR0VUX0xNX1ZFUlNJT04gPSAweDUyMDEsCisgIEkyNDAwTV9NVF9HRVRfREVWSUNFX0lORk8gPSAweDUyMDIsCisgIEkyNDAwTV9NVF9HRVRfTElOS19TVEFUVVMgPSAweDUyMDMsCisgIEkyNDAwTV9NVF9HRVRfU1RBVElTVElDUyA9IDB4NTIwNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX01UX0dFVF9TVEFURSA9IDB4NTIwNSwKLSBJMjQwME1fTVRfR0VUX01FRElBX1NUQVRVUyA9IDB4NTIwNiwKLSBJMjQwME1fTVRfU0VUX0lOSVRfQ09ORklHID0gMHg1NDA0LAotIEkyNDAwTV9NVF9DTURfSU5JVCA9IDB4NTYwMSwKKyAgSTI0MDBNX01UX0dFVF9TVEFURSA9IDB4NTIwNSwKKyAgSTI0MDBNX01UX0dFVF9NRURJQV9TVEFUVVMgPSAweDUyMDYsCisgIEkyNDAwTV9NVF9TRVRfSU5JVF9DT05GSUcgPSAweDU0MDQsCisgIEkyNDAwTV9NVF9DTURfSU5JVCA9IDB4NTYwMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX01UX0NNRF9URVJNSU5BVEUgPSAweDU2MDIsCi0gSTI0MDBNX01UX0NNRF9NT0RFX09GX09QID0gMHg1NjAzLAotIEkyNDAwTV9NVF9DTURfUkVTRVRfREVWSUNFID0gMHg1NjA0LAotIEkyNDAwTV9NVF9DTURfTU9OSVRPUl9DT05UUk9MID0gMHg1NjA1LAorICBJMjQwME1fTVRfQ01EX1RFUk1JTkFURSA9IDB4NTYwMiwKKyAgSTI0MDBNX01UX0NNRF9NT0RFX09GX09QID0gMHg1NjAzLAorICBJMjQwME1fTVRfQ01EX1JFU0VUX0RFVklDRSA9IDB4NTYwNCwKKyAgSTI0MDBNX01UX0NNRF9NT05JVE9SX0NPTlRST0wgPSAweDU2MDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9NVF9DTURfRU5URVJfUE9XRVJTQVZFID0gMHg1NjA2LAotIEkyNDAwTV9NVF9HRVRfVExTX09QRVJBVElPTl9SRVNVTFQgPSAweDYyMDEsCi0gSTI0MDBNX01UX1NFVF9FQVBfU1VDQ0VTUyA9IDB4NjQwMiwKLSBJMjQwME1fTVRfU0VUX0VBUF9GQUlMID0gMHg2NDAzLAorICBJMjQwME1fTVRfQ01EX0VOVEVSX1BPV0VSU0FWRSA9IDB4NTYwNiwKKyAgSTI0MDBNX01UX0dFVF9UTFNfT1BFUkFUSU9OX1JFU1VMVCA9IDB4NjIwMSwKKyAgSTI0MDBNX01UX1NFVF9FQVBfU1VDQ0VTUyA9IDB4NjQwMiwKKyAgSTI0MDBNX01UX1NFVF9FQVBfRkFJTCA9IDB4NjQwMywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX01UX1NFVF9FQVBfS0VZID0gMHg2NDA0LAotIEkyNDAwTV9NVF9DTURfU0VORF9FQVBfUkVTUE9OU0UgPSAweDY2MDIsCi0gSTI0MDBNX01UX1JFUE9SVF9TQ0FOX1JFU1VMVCA9IDB4YzAwMiwKLSBJMjQwME1fTVRfUkVQT1JUX1NUQVRFID0gMHhkMDAyLAorICBJMjQwME1fTVRfU0VUX0VBUF9LRVkgPSAweDY0MDQsCisgIEkyNDAwTV9NVF9DTURfU0VORF9FQVBfUkVTUE9OU0UgPSAweDY2MDIsCisgIEkyNDAwTV9NVF9SRVBPUlRfU0NBTl9SRVNVTFQgPSAweGMwMDIsCisgIEkyNDAwTV9NVF9SRVBPUlRfU1RBVEUgPSAweGQwMDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9NVF9SRVBPUlRfUE9XRVJTQVZFX1JFQURZID0gMHhkMDA1LAotIEkyNDAwTV9NVF9SRVBPUlRfRUFQX1JFUVVFU1QgPSAweGUwMDIsCi0gSTI0MDBNX01UX1JFUE9SVF9FQVBfUkVTVEFSVCA9IDB4ZTAwMywKLSBJMjQwME1fTVRfUkVQT1JUX0FMVF9BQ0NFUFQgPSAweGUwMDQsCisgIEkyNDAwTV9NVF9SRVBPUlRfUE9XRVJTQVZFX1JFQURZID0gMHhkMDA1LAorICBJMjQwME1fTVRfUkVQT1JUX0VBUF9SRVFVRVNUID0gMHhlMDAyLAorICBJMjQwME1fTVRfUkVQT1JUX0VBUF9SRVNUQVJUID0gMHhlMDAzLAorICBJMjQwME1fTVRfUkVQT1JUX0FMVF9BQ0NFUFQgPSAweGUwMDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9NVF9SRVBPUlRfS0VZX1JFUVVFU1QgPSAweGUwMDUsCisgIEkyNDAwTV9NVF9SRVBPUlRfS0VZX1JFUVVFU1QgPSAweGUwMDUsCiB9OwogZW51bSBpMjQwMG1fbXMgewotIEkyNDAwTV9NU19ET05FX09LID0gMCwKKyAgSTI0MDBNX01TX0RPTkVfT0sgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fTVNfRE9ORV9JTl9QUk9HUkVTUyA9IDEsCi0gSTI0MDBNX01TX0lOVkFMSURfT1AgPSAyLAotIEkyNDAwTV9NU19CQURfU1RBVEUgPSAzLAotIEkyNDAwTV9NU19JTExFR0FMX1ZBTFVFID0gNCwKKyAgSTI0MDBNX01TX0RPTkVfSU5fUFJPR1JFU1MgPSAxLAorICBJMjQwME1fTVNfSU5WQUxJRF9PUCA9IDIsCisgIEkyNDAwTV9NU19CQURfU1RBVEUgPSAzLAorICBJMjQwME1fTVNfSUxMRUdBTF9WQUxVRSA9IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9NU19NSVNTSU5HX1BBUkFNUyA9IDUsCi0gSTI0MDBNX01TX1ZFUlNJT05fRVJST1IgPSA2LAotIEkyNDAwTV9NU19BQ0NFU1NJQklMSVRZX0VSUk9SID0gNywKLSBJMjQwME1fTVNfQlVTWSA9IDgsCisgIEkyNDAwTV9NU19NSVNTSU5HX1BBUkFNUyA9IDUsCisgIEkyNDAwTV9NU19WRVJTSU9OX0VSUk9SID0gNiwKKyAgSTI0MDBNX01TX0FDQ0VTU0lCSUxJVFlfRVJST1IgPSA3LAorICBJMjQwME1fTVNfQlVTWSA9IDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9NU19DT1JSVVBURURfVExWID0gOSwKLSBJMjQwME1fTVNfVU5JTklUSUFMSVpFRCA9IDEwLAotIEkyNDAwTV9NU19VTktOT1dOX0VSUk9SID0gMTEsCi0gSTI0MDBNX01TX1BST0RVQ1RJT05fRVJST1IgPSAxMiwKKyAgSTI0MDBNX01TX0NPUlJVUFRFRF9UTFYgPSA5LAorICBJMjQwME1fTVNfVU5JTklUSUFMSVpFRCA9IDEwLAorICBJMjQwME1fTVNfVU5LTk9XTl9FUlJPUiA9IDExLAorICBJMjQwME1fTVNfUFJPRFVDVElPTl9FUlJPUiA9IDEyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fTVNfTk9fUkYgPSAxMywKLSBJMjQwME1fTVNfTk9UX1JFQURZX0ZPUl9QT1dFUlNBVkUgPSAxNCwKLSBJMjQwME1fTVNfVEhFUk1BTF9DUklUSUNBTCA9IDE1LAotIEkyNDAwTV9NU19NQVgKKyAgSTI0MDBNX01TX05PX1JGID0gMTMsCisgIEkyNDAwTV9NU19OT1RfUkVBRFlfRk9SX1BPV0VSU0FWRSA9IDE0LAorICBJMjQwME1fTVNfVEhFUk1BTF9DUklUSUNBTCA9IDE1LAorICBJMjQwME1fTVNfTUFYCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gaTI0MDBtX3RsdiB7Ci0gSTI0MDBNX1RMVl9MNF9NRVNTQUdFX1ZFUlNJT05TID0gMTI5LAotIEkyNDAwTV9UTFZfU1lTVEVNX1NUQVRFID0gMTQxLAorICBJMjQwME1fVExWX0w0X01FU1NBR0VfVkVSU0lPTlMgPSAxMjksCisgIEkyNDAwTV9UTFZfU1lTVEVNX1NUQVRFID0gMTQxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fVExWX01FRElBX1NUQVRVUyA9IDE2MSwKLSBJMjQwME1fVExWX1JGX09QRVJBVElPTiA9IDE2MiwKLSBJMjQwME1fVExWX1JGX1NUQVRVUyA9IDE2MywKLSBJMjQwME1fVExWX0RFVklDRV9SRVNFVF9UWVBFID0gMTMyLAorICBJMjQwME1fVExWX01FRElBX1NUQVRVUyA9IDE2MSwKKyAgSTI0MDBNX1RMVl9SRl9PUEVSQVRJT04gPSAxNjIsCisgIEkyNDAwTV9UTFZfUkZfU1RBVFVTID0gMTYzLAorICBJMjQwME1fVExWX0RFVklDRV9SRVNFVF9UWVBFID0gMTMyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fVExWX0NPTkZJR19JRExFX1BBUkFNRVRFUlMgPSA2MDEsCi0gSTI0MDBNX1RMVl9DT05GSUdfSURMRV9USU1FT1VUID0gNjExLAotIEkyNDAwTV9UTFZfQ09ORklHX0QySF9EQVRBX0ZPUk1BVCA9IDYxNCwKLSBJMjQwME1fVExWX0NPTkZJR19ETF9IT1NUX1JFT1JERVIgPSA2MTUsCisgIEkyNDAwTV9UTFZfQ09ORklHX0lETEVfUEFSQU1FVEVSUyA9IDYwMSwKKyAgSTI0MDBNX1RMVl9DT05GSUdfSURMRV9USU1FT1VUID0gNjExLAorICBJMjQwME1fVExWX0NPTkZJR19EMkhfREFUQV9GT1JNQVQgPSA2MTQsCisgIEkyNDAwTV9UTFZfQ09ORklHX0RMX0hPU1RfUkVPUkRFUiA9IDYxNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGkyNDAwbV90bHZfaGRyIHsKLSBfX2xlMTYgdHlwZTsKLSBfX2xlMTYgbGVuZ3RoOworICBfX2xlMTYgdHlwZTsKKyAgX19sZTE2IGxlbmd0aDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwbFswXTsKKyAgX191OCBwbFswXTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgaTI0MDBtX2wzbDRfaGRyIHsKLSBfX2xlMTYgdHlwZTsKKyAgX19sZTE2IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiBsZW5ndGg7Ci0gX19sZTE2IHZlcnNpb247Ci0gX19sZTE2IHJlc3YxOwotIF9fbGUxNiBzdGF0dXM7CisgIF9fbGUxNiBsZW5ndGg7CisgIF9fbGUxNiB2ZXJzaW9uOworICBfX2xlMTYgcmVzdjE7CisgIF9fbGUxNiBzdGF0dXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUxNiByZXN2MjsKLSBzdHJ1Y3QgaTI0MDBtX3Rsdl9oZHIgcGxbMF07CisgIF9fbGUxNiByZXN2MjsKKyAgc3RydWN0IGkyNDAwbV90bHZfaGRyIHBsWzBdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIGVudW0gaTI0MDBtX3N5c3RlbV9zdGF0ZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9TU19VTklOSVRJQUxJWkVEID0gMSwKLSBJMjQwME1fU1NfSU5JVCwKLSBJMjQwME1fU1NfUkVBRFksCi0gSTI0MDBNX1NTX1NDQU4sCisgIEkyNDAwTV9TU19VTklOSVRJQUxJWkVEID0gMSwKKyAgSTI0MDBNX1NTX0lOSVQsCisgIEkyNDAwTV9TU19SRUFEWSwKKyAgSTI0MDBNX1NTX1NDQU4sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9TU19TVEFOREJZLAotIEkyNDAwTV9TU19DT05ORUNUSU5HLAotIEkyNDAwTV9TU19XSU1BWF9DT05ORUNURUQsCi0gSTI0MDBNX1NTX0RBVEFfUEFUSF9DT05ORUNURUQsCisgIEkyNDAwTV9TU19TVEFOREJZLAorICBJMjQwME1fU1NfQ09OTkVDVElORywKKyAgSTI0MDBNX1NTX1dJTUFYX0NPTk5FQ1RFRCwKKyAgSTI0MDBNX1NTX0RBVEFfUEFUSF9DT05ORUNURUQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9TU19JRExFLAotIEkyNDAwTV9TU19ESVNDT05ORUNUSU5HLAotIEkyNDAwTV9TU19PVVRfT0ZfWk9ORSwKLSBJMjQwME1fU1NfU0xFRVBBQ1RJVkUsCisgIEkyNDAwTV9TU19JRExFLAorICBJMjQwME1fU1NfRElTQ09OTkVDVElORywKKyAgSTI0MDBNX1NTX09VVF9PRl9aT05FLAorICBJMjQwME1fU1NfU0xFRVBBQ1RJVkUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9TU19QUk9EVUNUSU9OLAotIEkyNDAwTV9TU19DT05GSUcsCi0gSTI0MDBNX1NTX1JGX09GRiwKLSBJMjQwME1fU1NfUkZfU0hVVERPV04sCisgIEkyNDAwTV9TU19QUk9EVUNUSU9OLAorICBJMjQwME1fU1NfQ09ORklHLAorICBJMjQwME1fU1NfUkZfT0ZGLAorICBJMjQwME1fU1NfUkZfU0hVVERPV04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEkyNDAwTV9TU19ERVZJQ0VfRElTQ09OTkVDVCwKLSBJMjQwME1fU1NfTUFYLAorICBJMjQwME1fU1NfREVWSUNFX0RJU0NPTk5FQ1QsCisgIEkyNDAwTV9TU19NQVgsCiB9Owogc3RydWN0IGkyNDAwbV90bHZfc3lzdGVtX3N0YXRlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKLSBfX2xlMzIgc3RhdGU7CisgIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7CisgIF9fbGUzMiBzdGF0ZTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgaTI0MDBtX3Rsdl9sNF9tZXNzYWdlX3ZlcnNpb25zIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKLSBfX2xlMTYgbWFqb3I7Ci0gX19sZTE2IG1pbm9yOwotIF9fbGUxNiBicmFuY2g7CisgIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7CisgIF9fbGUxNiBtYWpvcjsKKyAgX19sZTE2IG1pbm9yOworICBfX2xlMTYgYnJhbmNoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2xlMTYgcmVzZXJ2ZWQ7CisgIF9fbGUxNiByZXNlcnZlZDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgaTI0MDBtX3Rsdl9kZXRhaWxlZF9kZXZpY2VfaW5mbyB7Ci0gc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKKyAgc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZDFbNDAwXTsKLSBfX3U4IG1hY19hZGRyZXNzW0VUSF9BTEVOXTsKLSBfX3U4IHJlc2VydmVkMlsyXTsKKyAgX191OCByZXNlcnZlZDFbNDAwXTsKKyAgX191OCBtYWNfYWRkcmVzc1tFVEhfQUxFTl07CisgIF9fdTggcmVzZXJ2ZWQyWzJdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGkyNDAwbV9yZl9zd2l0Y2hfc3RhdHVzIHsKLSBJMjQwME1fUkZfU1dJVENIX09OID0gMSwKLSBJMjQwME1fUkZfU1dJVENIX09GRiA9IDIsCisgIEkyNDAwTV9SRl9TV0lUQ0hfT04gPSAxLAorICBJMjQwME1fUkZfU1dJVENIX09GRiA9IDIsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpMjQwMG1fdGx2X3JmX3N3aXRjaGVzX3N0YXR1cyB7Ci0gc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKLSBfX3U4IHN3X3JmX3N3aXRjaDsKLSBfX3U4IGh3X3JmX3N3aXRjaDsKKyAgc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKKyAgX191OCBzd19yZl9zd2l0Y2g7CisgIF9fdTggaHdfcmZfc3dpdGNoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlc2VydmVkWzJdOworICBfX3U4IHJlc2VydmVkWzJdOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIGVudW0gewotIGkyNDAwbV9yZl9vcGVyYXRpb25fb24gPSAxLAorICBpMjQwMG1fcmZfb3BlcmF0aW9uX29uID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaTI0MDBtX3JmX29wZXJhdGlvbl9vZmYgPSAyCisgIGkyNDAwbV9yZl9vcGVyYXRpb25fb2ZmID0gMgogfTsKIHN0cnVjdCBpMjQwMG1fdGx2X3JmX29wZXJhdGlvbiB7Ci0gc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKKyAgc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIHN0YXR1czsKKyAgX19sZTMyIHN0YXR1czsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBlbnVtIGkyNDAwbV90bHZfcmVzZXRfdHlwZSB7Ci0gSTI0MDBNX1JFU0VUX1RZUEVfQ09MRCA9IDEsCisgIEkyNDAwTV9SRVNFVF9UWVBFX0NPTEQgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJMjQwME1fUkVTRVRfVFlQRV9XQVJNCisgIEkyNDAwTV9SRVNFVF9UWVBFX1dBUk0KIH07CiBzdHJ1Y3QgaTI0MDBtX3Rsdl9kZXZpY2VfcmVzZXRfdHlwZSB7Ci0gc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKKyAgc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19sZTMyIHJlc2V0X3R5cGU7CisgIF9fbGUzMiByZXNldF90eXBlOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBpMjQwMG1fdGx2X2NvbmZpZ19pZGxlX3BhcmFtZXRlcnMgewotIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7CisgIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fbGUzMiBpZGxlX3RpbWVvdXQ7Ci0gX19sZTMyIGlkbGVfcGFnaW5nX2ludGVydmFsOworICBfX2xlMzIgaWRsZV90aW1lb3V0OworICBfX2xlMzIgaWRsZV9wYWdpbmdfaW50ZXJ2YWw7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogZW51bSBpMjQwMG1fbWVkaWFfc3RhdHVzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSTI0MDBNX01FRElBX1NUQVRVU19MSU5LX1VQID0gMSwKLSBJMjQwME1fTUVESUFfU1RBVFVTX0xJTktfRE9XTiwKLSBJMjQwME1fTUVESUFfU1RBVFVTX0xJTktfUkVORVcsCisgIEkyNDAwTV9NRURJQV9TVEFUVVNfTElOS19VUCA9IDEsCisgIEkyNDAwTV9NRURJQV9TVEFUVVNfTElOS19ET1dOLAorICBJMjQwME1fTUVESUFfU1RBVFVTX0xJTktfUkVORVcsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpMjQwMG1fdGx2X21lZGlhX3N0YXR1cyB7Ci0gc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKLSBfX2xlMzIgbWVkaWFfc3RhdHVzOworICBzdHJ1Y3QgaTI0MDBtX3Rsdl9oZHIgaGRyOworICBfX2xlMzIgbWVkaWFfc3RhdHVzOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaTI0MDBtX3Rsdl9jb25maWdfaWRsZV90aW1lb3V0IHsKLSBzdHJ1Y3QgaTI0MDBtX3Rsdl9oZHIgaGRyOwotIF9fbGUzMiB0aW1lb3V0OworICBzdHJ1Y3QgaTI0MDBtX3Rsdl9oZHIgaGRyOworICBfX2xlMzIgdGltZW91dDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGkyNDAwbV90bHZfY29uZmlnX2QyaF9kYXRhX2Zvcm1hdCB7Ci0gc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKLSBfX3U4IGZvcm1hdDsKLSBfX3U4IHJlc2VydmVkWzNdOworICBzdHJ1Y3QgaTI0MDBtX3Rsdl9oZHIgaGRyOworICBfX3U4IGZvcm1hdDsKKyAgX191OCByZXNlcnZlZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGkyNDAwbV90bHZfY29uZmlnX2RsX2hvc3RfcmVvcmRlciB7Ci0gc3RydWN0IGkyNDAwbV90bHZfaGRyIGhkcjsKLSBfX3U4IHJlb3JkZXI7CisgIHN0cnVjdCBpMjQwMG1fdGx2X2hkciBoZHI7CisgIF9fdTggcmVvcmRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZFszXTsKKyAgX191OCByZXNlcnZlZFszXTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2lyZWxlc3MuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgvd2lyZWxlc3MuaAppbmRleCBkY2I5ZjFmLi5kMDE4MDUwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3dpcmVsZXNzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC93aXJlbGVzcy5oCkBAIC05Myw4ICs5Myw4IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTSU9DSVdMQVNUIFNJT0NJV0xBU1RQUklWCiAjZGVmaW5lIElXX0lPQ1RMX0lEWChjbWQpICgoY21kKSAtIFNJT0NJV0ZJUlNUKQotI2RlZmluZSBJV19IQU5ETEVSKGlkLCBmdW5jKSAgIFtJV19JT0NUTF9JRFgoaWQpXSA9IGZ1bmMKLSNkZWZpbmUgSVdfSVNfU0VUKGNtZCkgKCEoKGNtZCkgJiAweDEpKQorI2RlZmluZSBJV19IQU5ETEVSKGlkLGZ1bmMpIFtJV19JT0NUTF9JRFgoaWQpXSA9IGZ1bmMKKyNkZWZpbmUgSVdfSVNfU0VUKGNtZCkgKCEgKChjbWQpICYgMHgxKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElXX0lTX0dFVChjbWQpICgoY21kKSAmIDB4MSkKICNkZWZpbmUgSVdFVlRYRFJPUCAweDhDMDAKQEAgLTMwNywyNTMgKzMwNywyMjggQEAKICNkZWZpbmUgSVdfRU5DX0NBUEFfQ0lQSEVSX0NDTVAgMHgwMDAwMDAwOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSVdfRU5DX0NBUEFfNFdBWV9IQU5EU0hBS0UgMHgwMDAwMDAxMAotI2RlZmluZSBJV19FVkVOVF9DQVBBX0JBU0UoY21kKSAoKGNtZCA+PSBTSU9DSVdGSVJTVFBSSVYpID8gICAoY21kIC0gU0lPQ0lXRklSU1RQUklWICsgMHg2MCkgOiAgIChjbWQgLSBTSU9DSVdGSVJTVCkpCisjZGVmaW5lIElXX0VWRU5UX0NBUEFfQkFTRShjbWQpICgoY21kID49IFNJT0NJV0ZJUlNUUFJJVikgPyAoY21kIC0gU0lPQ0lXRklSU1RQUklWICsgMHg2MCkgOiAoY21kIC0gU0lPQ0lXRklSU1QpKQogI2RlZmluZSBJV19FVkVOVF9DQVBBX0lOREVYKGNtZCkgKElXX0VWRU5UX0NBUEFfQkFTRShjbWQpID4+IDUpCiAjZGVmaW5lIElXX0VWRU5UX0NBUEFfTUFTSyhjbWQpICgxIDw8IChJV19FVkVOVF9DQVBBX0JBU0UoY21kKSAmIDB4MUYpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVdfRVZFTlRfQ0FQQV9LXzAgKElXX0VWRU5UX0NBUEFfTUFTSygweDhCMDQpIHwgICBJV19FVkVOVF9DQVBBX01BU0soMHg4QjA2KSB8ICAgSVdfRVZFTlRfQ0FQQV9NQVNLKDB4OEIxQSkpCisjZGVmaW5lIElXX0VWRU5UX0NBUEFfS18wIChJV19FVkVOVF9DQVBBX01BU0soMHg4QjA0KSB8IElXX0VWRU5UX0NBUEFfTUFTSygweDhCMDYpIHwgSVdfRVZFTlRfQ0FQQV9NQVNLKDB4OEIxQSkpCiAjZGVmaW5lIElXX0VWRU5UX0NBUEFfS18xIChJV19FVkVOVF9DQVBBX01BU0soMHg4QjJBKSkKLSNkZWZpbmUgSVdfRVZFTlRfQ0FQQV9TRVQoZXZlbnRfY2FwYSwgY21kKSAoZXZlbnRfY2FwYVtJV19FVkVOVF9DQVBBX0lOREVYKGNtZCldIHw9IElXX0VWRU5UX0NBUEFfTUFTSyhjbWQpKQotI2RlZmluZSBJV19FVkVOVF9DQVBBX1NFVF9LRVJORUwoZXZlbnRfY2FwYSkge2V2ZW50X2NhcGFbMF0gfD0gSVdfRVZFTlRfQ0FQQV9LXzA7IGV2ZW50X2NhcGFbMV0gfD0gSVdfRVZFTlRfQ0FQQV9LXzE7IH0KKyNkZWZpbmUgSVdfRVZFTlRfQ0FQQV9TRVQoZXZlbnRfY2FwYSxjbWQpIChldmVudF9jYXBhW0lXX0VWRU5UX0NBUEFfSU5ERVgoY21kKV0gfD0gSVdfRVZFTlRfQ0FQQV9NQVNLKGNtZCkpCisjZGVmaW5lIElXX0VWRU5UX0NBUEFfU0VUX0tFUk5FTChldmVudF9jYXBhKSB7IGV2ZW50X2NhcGFbMF0gfD0gSVdfRVZFTlRfQ0FQQV9LXzA7IGV2ZW50X2NhcGFbMV0gfD0gSVdfRVZFTlRfQ0FQQV9LXzE7IH0KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgaXdfcGFyYW0KLXsKLSBfX3MzMiB2YWx1ZTsKLSBfX3U4IGZpeGVkOworc3RydWN0IGl3X3BhcmFtIHsKKyAgX19zMzIgdmFsdWU7CisgIF9fdTggZml4ZWQ7CisgIF9fdTggZGlzYWJsZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZGlzYWJsZWQ7Ci0gX191MTYgZmxhZ3M7CisgIF9fdTE2IGZsYWdzOwogfTsKLXN0cnVjdCBpd19wb2ludAorc3RydWN0IGl3X3BvaW50IHsKKyAgdm9pZCBfX3VzZXIgKiBwb2ludGVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSB2b2lkIF9fdXNlciAqcG9pbnRlcjsKLSBfX3UxNiBsZW5ndGg7Ci0gX191MTYgZmxhZ3M7CisgIF9fdTE2IGxlbmd0aDsKKyAgX191MTYgZmxhZ3M7Cit9Oworc3RydWN0IGl3X2ZyZXEgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19zMzIgbTsKKyAgX19zMTYgZTsKKyAgX191OCBpOworICBfX3U4IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci1zdHJ1Y3QgaXdfZnJlcQotewotIF9fczMyIG07CitzdHJ1Y3QgaXdfcXVhbGl0eSB7CisgIF9fdTggcXVhbDsKKyAgX191OCBsZXZlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMTYgZTsKLSBfX3U4IGk7Ci0gX191OCBmbGFnczsKKyAgX191OCBub2lzZTsKKyAgX191OCB1cGRhdGVkOworfTsKK3N0cnVjdCBpd19kaXNjYXJkZWQgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgbndpZDsKKyAgX191MzIgY29kZTsKKyAgX191MzIgZnJhZ21lbnQ7CisgIF9fdTMyIHJldHJpZXM7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBtaXNjOworfTsKK3N0cnVjdCBpd19taXNzZWQgeworICBfX3UzMiBiZWFjb247CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK3N0cnVjdCBpd190aHJzcHkgeworICBzdHJ1Y3Qgc29ja2FkZHIgYWRkcjsKKyAgc3RydWN0IGl3X3F1YWxpdHkgcXVhbDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBpd19xdWFsaXR5IGxvdzsKKyAgc3RydWN0IGl3X3F1YWxpdHkgaGlnaDsKK307CitzdHJ1Y3QgaXdfc2Nhbl9yZXEgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBzY2FuX3R5cGU7CisgIF9fdTggZXNzaWRfbGVuOworICBfX3U4IG51bV9jaGFubmVsczsKKyAgX191OCBmbGFnczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBzb2NrYWRkciBic3NpZDsKKyAgX191OCBlc3NpZFtJV19FU1NJRF9NQVhfU0laRV07CisgIF9fdTMyIG1pbl9jaGFubmVsX3RpbWU7CisgIF9fdTMyIG1heF9jaGFubmVsX3RpbWU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgaXdfZnJlcSBjaGFubmVsX2xpc3RbSVdfTUFYX0ZSRVFVRU5DSUVTXTsKK307CitzdHJ1Y3QgaXdfZW5jb2RlX2V4dCB7CisgIF9fdTMyIGV4dF9mbGFnczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggdHhfc2VxW0lXX0VOQ09ERV9TRVFfTUFYX1NJWkVdOworICBfX3U4IHJ4X3NlcVtJV19FTkNPREVfU0VRX01BWF9TSVpFXTsKKyAgc3RydWN0IHNvY2thZGRyIGFkZHI7CisgIF9fdTE2IGFsZzsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IGtleV9sZW47CisgIF9fdTgga2V5WzBdOworfTsKK3N0cnVjdCBpd19tbG1lIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IGNtZDsKKyAgX191MTYgcmVhc29uX2NvZGU7CisgIHN0cnVjdCBzb2NrYWRkciBhZGRyOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgaXdfcXVhbGl0eQotewotIF9fdTggcXVhbDsKLSBfX3U4IGxldmVsOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG5vaXNlOwotIF9fdTggdXBkYXRlZDsKLX07Ci1zdHJ1Y3QgaXdfZGlzY2FyZGVkCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotewotIF9fdTMyIG53aWQ7Ci0gX191MzIgY29kZTsKLSBfX3UzMiBmcmFnbWVudDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmV0cmllczsKLSBfX3UzMiBtaXNjOwotfTsKLXN0cnVjdCBpd19taXNzZWQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gX191MzIgYmVhY29uOwotfTsKLXN0cnVjdCBpd190aHJzcHkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi17Ci0gc3RydWN0IHNvY2thZGRyIGFkZHI7Ci0gc3RydWN0IGl3X3F1YWxpdHkgcXVhbDsKLSBzdHJ1Y3QgaXdfcXVhbGl0eSBsb3c7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpd19xdWFsaXR5IGhpZ2g7Ci19Owotc3RydWN0IGl3X3NjYW5fcmVxCi17Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2Nhbl90eXBlOwotIF9fdTggZXNzaWRfbGVuOwotIF9fdTggbnVtX2NoYW5uZWxzOwotIF9fdTggZmxhZ3M7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzb2NrYWRkciBic3NpZDsKLSBfX3U4IGVzc2lkW0lXX0VTU0lEX01BWF9TSVpFXTsKLSBfX3UzMiBtaW5fY2hhbm5lbF90aW1lOwotIF9fdTMyIG1heF9jaGFubmVsX3RpbWU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpd19mcmVxIGNoYW5uZWxfbGlzdFtJV19NQVhfRlJFUVVFTkNJRVNdOwotfTsKLXN0cnVjdCBpd19lbmNvZGVfZXh0Ci17Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGV4dF9mbGFnczsKLSBfX3U4IHR4X3NlcVtJV19FTkNPREVfU0VRX01BWF9TSVpFXTsKLSBfX3U4IHJ4X3NlcVtJV19FTkNPREVfU0VRX01BWF9TSVpFXTsKLSBzdHJ1Y3Qgc29ja2FkZHIgYWRkcjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgYWxnOwotIF9fdTE2IGtleV9sZW47Ci0gX191OCBrZXlbMF07Ci19OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXN0cnVjdCBpd19tbG1lCi17Ci0gX191MTYgY21kOwotIF9fdTE2IHJlYXNvbl9jb2RlOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHIgYWRkcjsKLX07CiAjZGVmaW5lIElXX1BNS1NBX0FERCAxCiAjZGVmaW5lIElXX1BNS1NBX1JFTU9WRSAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJV19QTUtTQV9GTFVTSCAzCiAjZGVmaW5lIElXX1BNS0lEX0xFTiAxNgotc3RydWN0IGl3X3Bta3NhCi17CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNtZDsKLSBzdHJ1Y3Qgc29ja2FkZHIgYnNzaWQ7Ci0gX191OCBwbWtpZFtJV19QTUtJRF9MRU5dOworc3RydWN0IGl3X3Bta3NhIHsKKyAgX191MzIgY21kOworICBzdHJ1Y3Qgc29ja2FkZHIgYnNzaWQ7CisgIF9fdTggcG1raWRbSVdfUE1LSURfTEVOXTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Oworc3RydWN0IGl3X21pY2hhZWxtaWNmYWlsdXJlIHsKKyAgX191MzIgZmxhZ3M7CisgIHN0cnVjdCBzb2NrYWRkciBzcmNfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi1zdHJ1Y3QgaXdfbWljaGFlbG1pY2ZhaWx1cmUKLXsKLSBfX3UzMiBmbGFnczsKLSBzdHJ1Y3Qgc29ja2FkZHIgc3JjX2FkZHI7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHNjW0lXX0VOQ09ERV9TRVFfTUFYX1NJWkVdOworICBfX3U4IHRzY1tJV19FTkNPREVfU0VRX01BWF9TSVpFXTsKIH07CiAjZGVmaW5lIElXX1BNS0lEX0NBTkRfUFJFQVVUSCAweDAwMDAwMDAxCi1zdHJ1Y3QgaXdfcG1raWRfY2FuZAorc3RydWN0IGl3X3Bta2lkX2NhbmQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBpbmRleDsKLSBzdHJ1Y3Qgc29ja2FkZHIgYnNzaWQ7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKLXN0cnVjdCBpd19zdGF0aXN0aWNzCi17Ci0gX191MTYgc3RhdHVzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaXdfcXVhbGl0eSBxdWFsOwotIHN0cnVjdCBpd19kaXNjYXJkZWQgZGlzY2FyZDsKLSBzdHJ1Y3QgaXdfbWlzc2VkIG1pc3M7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiBpbmRleDsKKyAgc3RydWN0IHNvY2thZGRyIGJzc2lkOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi11bmlvbiBpd3JlcV9kYXRhCi17Ci0gY2hhciBuYW1lW0lGTkFNU0laXTsKLSBzdHJ1Y3QgaXdfcG9pbnQgZXNzaWQ7CitzdHJ1Y3QgaXdfc3RhdGlzdGljcyB7CisgIF9fdTE2IHN0YXR1czsKKyAgc3RydWN0IGl3X3F1YWxpdHkgcXVhbDsKKyAgc3RydWN0IGl3X2Rpc2NhcmRlZCBkaXNjYXJkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaXdfcGFyYW0gbndpZDsKLSBzdHJ1Y3QgaXdfZnJlcSBmcmVxOwotIHN0cnVjdCBpd19wYXJhbSBzZW5zOwotIHN0cnVjdCBpd19wYXJhbSBiaXRyYXRlOworICBzdHJ1Y3QgaXdfbWlzc2VkIG1pc3M7Cit9OwordW5pb24gaXdyZXFfZGF0YSB7CisgIGNoYXIgbmFtZVtJRk5BTVNJWl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpd19wYXJhbSB0eHBvd2VyOwotIHN0cnVjdCBpd19wYXJhbSBydHM7Ci0gc3RydWN0IGl3X3BhcmFtIGZyYWc7Ci0gX191MzIgbW9kZTsKKyAgc3RydWN0IGl3X3BvaW50IGVzc2lkOworICBzdHJ1Y3QgaXdfcGFyYW0gbndpZDsKKyAgc3RydWN0IGl3X2ZyZXEgZnJlcTsKKyAgc3RydWN0IGl3X3BhcmFtIHNlbnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpd19wYXJhbSByZXRyeTsKLSBzdHJ1Y3QgaXdfcG9pbnQgZW5jb2Rpbmc7Ci0gc3RydWN0IGl3X3BhcmFtIHBvd2VyOwotIHN0cnVjdCBpd19xdWFsaXR5IHF1YWw7CisgIHN0cnVjdCBpd19wYXJhbSBiaXRyYXRlOworICBzdHJ1Y3QgaXdfcGFyYW0gdHhwb3dlcjsKKyAgc3RydWN0IGl3X3BhcmFtIHJ0czsKKyAgc3RydWN0IGl3X3BhcmFtIGZyYWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzb2NrYWRkciBhcF9hZGRyOwotIHN0cnVjdCBzb2NrYWRkciBhZGRyOwotIHN0cnVjdCBpd19wYXJhbSBwYXJhbTsKLSBzdHJ1Y3QgaXdfcG9pbnQgZGF0YTsKKyAgX191MzIgbW9kZTsKKyAgc3RydWN0IGl3X3BhcmFtIHJldHJ5OworICBzdHJ1Y3QgaXdfcG9pbnQgZW5jb2Rpbmc7CisgIHN0cnVjdCBpd19wYXJhbSBwb3dlcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBpd19xdWFsaXR5IHF1YWw7CisgIHN0cnVjdCBzb2NrYWRkciBhcF9hZGRyOworICBzdHJ1Y3Qgc29ja2FkZHIgYWRkcjsKKyAgc3RydWN0IGl3X3BhcmFtIHBhcmFtOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGl3X3BvaW50IGRhdGE7Cit9Oworc3RydWN0IGl3cmVxIHsKKyAgdW5pb24geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgICBjaGFyIGlmcm5fbmFtZVtJRk5BTVNJWl07CisgIH0gaWZyX2lmcm47CisgIHVuaW9uIGl3cmVxX2RhdGEgdTsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGl3X3JhbmdlIHsKKyAgX191MzIgdGhyb3VnaHB1dDsKKyAgX191MzIgbWluX253aWQ7CisgIF9fdTMyIG1heF9ud2lkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgb2xkX251bV9jaGFubmVsczsKKyAgX191OCBvbGRfbnVtX2ZyZXF1ZW5jeTsKKyAgX191OCBzY2FuX2NhcGE7CisgIF9fdTMyIGV2ZW50X2NhcGFbNl07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3MzMiBzZW5zaXRpdml0eTsKKyAgc3RydWN0IGl3X3F1YWxpdHkgbWF4X3F1YWw7CisgIHN0cnVjdCBpd19xdWFsaXR5IGF2Z19xdWFsOworICBfX3U4IG51bV9iaXRyYXRlczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fczMyIGJpdHJhdGVbSVdfTUFYX0JJVFJBVEVTXTsKKyAgX19zMzIgbWluX3J0czsKKyAgX19zMzIgbWF4X3J0czsKKyAgX19zMzIgbWluX2ZyYWc7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3MzMiBtYXhfZnJhZzsKKyAgX19zMzIgbWluX3BtcDsKKyAgX19zMzIgbWF4X3BtcDsKKyAgX19zMzIgbWluX3BtdDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fczMyIG1heF9wbXQ7CisgIF9fdTE2IHBtcF9mbGFnczsKKyAgX191MTYgcG10X2ZsYWdzOworICBfX3UxNiBwbV9jYXBhOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgZW5jb2Rpbmdfc2l6ZVtJV19NQVhfRU5DT0RJTkdfU0laRVNdOworICBfX3U4IG51bV9lbmNvZGluZ19zaXplczsKKyAgX191OCBtYXhfZW5jb2RpbmdfdG9rZW5zOworICBfX3U4IGVuY29kaW5nX2xvZ2luX2luZGV4OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgdHhwb3dlcl9jYXBhOworICBfX3U4IG51bV90eHBvd2VyOworICBfX3MzMiB0eHBvd2VyW0lXX01BWF9UWFBPV0VSXTsKKyAgX191OCB3ZV92ZXJzaW9uX2NvbXBpbGVkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCB3ZV92ZXJzaW9uX3NvdXJjZTsKKyAgX191MTYgcmV0cnlfY2FwYTsKKyAgX191MTYgcmV0cnlfZmxhZ3M7CisgIF9fdTE2IHJfdGltZV9mbGFnczsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fczMyIG1pbl9yZXRyeTsKKyAgX19zMzIgbWF4X3JldHJ5OworICBfX3MzMiBtaW5fcl90aW1lOworICBfX3MzMiBtYXhfcl90aW1lOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgbnVtX2NoYW5uZWxzOworICBfX3U4IG51bV9mcmVxdWVuY3k7CisgIHN0cnVjdCBpd19mcmVxIGZyZXFbSVdfTUFYX0ZSRVFVRU5DSUVTXTsKKyAgX191MzIgZW5jX2NhcGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLXN0cnVjdCBpd3JlcQotewotIHVuaW9uCitzdHJ1Y3QgaXdfcHJpdl9hcmdzIHsKKyAgX191MzIgY21kOworICBfX3UxNiBzZXRfYXJnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gewotIGNoYXIgaWZybl9uYW1lW0lGTkFNU0laXTsKLSB9IGlmcl9pZnJuOwotIHVuaW9uIGl3cmVxX2RhdGEgdTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IGdldF9hcmdzOworICBjaGFyIG5hbWVbSUZOQU1TSVpdOwogfTsKLXN0cnVjdCBpd19yYW5nZQotewotIF9fdTMyIHRocm91Z2hwdXQ7CitzdHJ1Y3QgaXdfZXZlbnQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtaW5fbndpZDsKLSBfX3UzMiBtYXhfbndpZDsKLSBfX3UxNiBvbGRfbnVtX2NoYW5uZWxzOwotIF9fdTggb2xkX251bV9mcmVxdWVuY3k7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2Nhbl9jYXBhOwotIF9fdTMyIGV2ZW50X2NhcGFbNl07Ci0gX19zMzIgc2Vuc2l0aXZpdHk7Ci0gc3RydWN0IGl3X3F1YWxpdHkgbWF4X3F1YWw7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpd19xdWFsaXR5IGF2Z19xdWFsOwotIF9fdTggbnVtX2JpdHJhdGVzOwotIF9fczMyIGJpdHJhdGVbSVdfTUFYX0JJVFJBVEVTXTsKLSBfX3MzMiBtaW5fcnRzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBtYXhfcnRzOwotIF9fczMyIG1pbl9mcmFnOwotIF9fczMyIG1heF9mcmFnOwotIF9fczMyIG1pbl9wbXA7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIG1heF9wbXA7Ci0gX19zMzIgbWluX3BtdDsKLSBfX3MzMiBtYXhfcG10OwotIF9fdTE2IHBtcF9mbGFnczsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcG10X2ZsYWdzOwotIF9fdTE2IHBtX2NhcGE7Ci0gX191MTYgZW5jb2Rpbmdfc2l6ZVtJV19NQVhfRU5DT0RJTkdfU0laRVNdOwotIF9fdTggbnVtX2VuY29kaW5nX3NpemVzOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG1heF9lbmNvZGluZ190b2tlbnM7Ci0gX191OCBlbmNvZGluZ19sb2dpbl9pbmRleDsKLSBfX3UxNiB0eHBvd2VyX2NhcGE7Ci0gX191OCBudW1fdHhwb3dlcjsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgdHhwb3dlcltJV19NQVhfVFhQT1dFUl07Ci0gX191OCB3ZV92ZXJzaW9uX2NvbXBpbGVkOwotIF9fdTggd2VfdmVyc2lvbl9zb3VyY2U7Ci0gX191MTYgcmV0cnlfY2FwYTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcmV0cnlfZmxhZ3M7Ci0gX191MTYgcl90aW1lX2ZsYWdzOwotIF9fczMyIG1pbl9yZXRyeTsKLSBfX3MzMiBtYXhfcmV0cnk7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIG1pbl9yX3RpbWU7Ci0gX19zMzIgbWF4X3JfdGltZTsKLSBfX3UxNiBudW1fY2hhbm5lbHM7Ci0gX191OCBudW1fZnJlcXVlbmN5OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaXdfZnJlcSBmcmVxW0lXX01BWF9GUkVRVUVOQ0lFU107Ci0gX191MzIgZW5jX2NhcGE7Ci19Owotc3RydWN0IGl3X3ByaXZfYXJncwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLXsKLSBfX3UzMiBjbWQ7Ci0gX191MTYgc2V0X2FyZ3M7Ci0gX191MTYgZ2V0X2FyZ3M7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVtJRk5BTVNJWl07Ci19Owotc3RydWN0IGl3X2V2ZW50Ci17Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGxlbjsKLSBfX3UxNiBjbWQ7Ci0gdW5pb24gaXdyZXFfZGF0YSB1OworICBfX3UxNiBsZW47CisgIF9fdTE2IGNtZDsKKyAgdW5pb24gaXdyZXFfZGF0YSB1OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElXX0VWX0xDUF9MRU4gKHNpemVvZihzdHJ1Y3QgaXdfZXZlbnQpIC0gc2l6ZW9mKHVuaW9uIGl3cmVxX2RhdGEpKQpAQCAtNTY0LDkgKzUzOSw5IEBACiAjZGVmaW5lIElXX0VWX1BBUkFNX0xFTiAoSVdfRVZfTENQX0xFTiArIHNpemVvZihzdHJ1Y3QgaXdfcGFyYW0pKQogI2RlZmluZSBJV19FVl9BRERSX0xFTiAoSVdfRVZfTENQX0xFTiArIHNpemVvZihzdHJ1Y3Qgc29ja2FkZHIpKQogI2RlZmluZSBJV19FVl9RVUFMX0xFTiAoSVdfRVZfTENQX0xFTiArIHNpemVvZihzdHJ1Y3QgaXdfcXVhbGl0eSkpCi0jZGVmaW5lIElXX0VWX1BPSU5UX09GRiAoKChjaGFyICopICYoKChzdHJ1Y3QgaXdfcG9pbnQgKikgTlVMTCktPmxlbmd0aCkpIC0gICAoY2hhciAqKSBOVUxMKQorI2RlZmluZSBJV19FVl9QT0lOVF9PRkYgKCgoY2hhciAqKSAmICgoKHN0cnVjdCBpd19wb2ludCAqKSBOVUxMKS0+bGVuZ3RoKSkgLSAoY2hhciAqKSBOVUxMKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSVdfRVZfUE9JTlRfTEVOIChJV19FVl9MQ1BfTEVOICsgc2l6ZW9mKHN0cnVjdCBpd19wb2ludCkgLSAgIElXX0VWX1BPSU5UX09GRikKKyNkZWZpbmUgSVdfRVZfUE9JTlRfTEVOIChJV19FVl9MQ1BfTEVOICsgc2l6ZW9mKHN0cnVjdCBpd19wb2ludCkgLSBJV19FVl9QT0lOVF9PRkYpCiAjZGVmaW5lIElXX0VWX0xDUF9QS19MRU4gKDQpCiAjZGVmaW5lIElXX0VWX0NIQVJfUEtfTEVOIChJV19FVl9MQ1BfUEtfTEVOICsgSUZOQU1TSVopCiAjZGVmaW5lIElXX0VWX1VJTlRfUEtfTEVOIChJV19FVl9MQ1BfUEtfTEVOICsgc2l6ZW9mKF9fdTMyKSkKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgveDI1LmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3gyNS5oCmluZGV4IGU5OGQxMjMuLjcxNGMyMmEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgveDI1LmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC94MjUuaApAQCAtNTEsMTggKzUxLDE4IEBACiAjZGVmaW5lIFgyNV9QUzQwOTYgMTIKIHN0cnVjdCB4MjVfYWRkcmVzcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgeDI1X2FkZHJbMTZdOworICBjaGFyIHgyNV9hZGRyWzE2XTsKIH07CiBzdHJ1Y3Qgc29ja2FkZHJfeDI1IHsKLSBfX2tlcm5lbF9zYV9mYW1pbHlfdCBzeDI1X2ZhbWlseTsKKyAgX19rZXJuZWxfc2FfZmFtaWx5X3Qgc3gyNV9mYW1pbHk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4MjVfYWRkcmVzcyBzeDI1X2FkZHI7CisgIHN0cnVjdCB4MjVfYWRkcmVzcyBzeDI1X2FkZHI7CiB9Owogc3RydWN0IHgyNV9zdWJzY3JpcF9zdHJ1Y3QgewotIGNoYXIgZGV2aWNlWzIwMC1zaXplb2YodW5zaWduZWQgbG9uZyldOworICBjaGFyIGRldmljZVsyMDAgLSBzaXplb2YodW5zaWduZWQgbG9uZyldOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIGdsb2JhbF9mYWNpbF9tYXNrOwotIHVuc2lnbmVkIGludCBleHRlbmRlZDsKKyAgdW5zaWduZWQgbG9uZyBnbG9iYWxfZmFjaWxfbWFzazsKKyAgdW5zaWduZWQgaW50IGV4dGVuZGVkOwogfTsKICNkZWZpbmUgWDI1X01BU0tfUkVWRVJTRSAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNzMsNDQgKzczLDQ0IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYMjVfTUFTS19DQUxMRURfQUUgMHgyMAogc3RydWN0IHgyNV9yb3V0ZV9zdHJ1Y3QgewotIHN0cnVjdCB4MjVfYWRkcmVzcyBhZGRyZXNzOwotIHVuc2lnbmVkIGludCBzaWdkaWdpdHM7CisgIHN0cnVjdCB4MjVfYWRkcmVzcyBhZGRyZXNzOworICB1bnNpZ25lZCBpbnQgc2lnZGlnaXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGRldmljZVsyMDBdOworICBjaGFyIGRldmljZVsyMDBdOwogfTsKIHN0cnVjdCB4MjVfZmFjaWxpdGllcyB7Ci0gdW5zaWduZWQgaW50IHdpbnNpemVfaW4sIHdpbnNpemVfb3V0OworICB1bnNpZ25lZCBpbnQgd2luc2l6ZV9pbiwgd2luc2l6ZV9vdXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBwYWNzaXplX2luLCBwYWNzaXplX291dDsKLSB1bnNpZ25lZCBpbnQgdGhyb3VnaHB1dDsKLSB1bnNpZ25lZCBpbnQgcmV2ZXJzZTsKKyAgdW5zaWduZWQgaW50IHBhY3NpemVfaW4sIHBhY3NpemVfb3V0OworICB1bnNpZ25lZCBpbnQgdGhyb3VnaHB1dDsKKyAgdW5zaWduZWQgaW50IHJldmVyc2U7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4MjVfZHRlX2ZhY2lsaXRpZXMgewotIF9fdTE2IGRlbGF5X2N1bXVsOwotIF9fdTE2IGRlbGF5X3RhcmdldDsKLSBfX3UxNiBkZWxheV9tYXg7CisgIF9fdTE2IGRlbGF5X2N1bXVsOworICBfX3UxNiBkZWxheV90YXJnZXQ7CisgIF9fdTE2IGRlbGF5X21heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBtaW5fdGhyb3VnaHB1dDsKLSBfX3U4IGV4cGVkaXRlZDsKLSBfX3U4IGNhbGxpbmdfbGVuOwotIF9fdTggY2FsbGVkX2xlbjsKKyAgX191OCBtaW5fdGhyb3VnaHB1dDsKKyAgX191OCBleHBlZGl0ZWQ7CisgIF9fdTggY2FsbGluZ19sZW47CisgIF9fdTggY2FsbGVkX2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjYWxsaW5nX2FlWzIwXTsKLSBfX3U4IGNhbGxlZF9hZVsyMF07CisgIF9fdTggY2FsbGluZ19hZVsyMF07CisgIF9fdTggY2FsbGVkX2FlWzIwXTsKIH07CiBzdHJ1Y3QgeDI1X2NhbGx1c2VyZGF0YSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBjdWRsZW5ndGg7Ci0gdW5zaWduZWQgY2hhciBjdWRkYXRhWzEyOF07CisgIHVuc2lnbmVkIGludCBjdWRsZW5ndGg7CisgIHVuc2lnbmVkIGNoYXIgY3VkZGF0YVsxMjhdOwogfTsKIHN0cnVjdCB4MjVfY2F1c2VkaWFnIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBjYXVzZTsKLSB1bnNpZ25lZCBjaGFyIGRpYWdub3N0aWM7CisgIHVuc2lnbmVkIGNoYXIgY2F1c2U7CisgIHVuc2lnbmVkIGNoYXIgZGlhZ25vc3RpYzsKIH07CiBzdHJ1Y3QgeDI1X3N1YmFkZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY3VkbWF0Y2hsZW5ndGg7CisgIHVuc2lnbmVkIGludCBjdWRtYXRjaGxlbmd0aDsKIH07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbGludXgveGF0dHIuaCBiL2xpYmMva2VybmVsL3VhcGkvbGludXgveGF0dHIuaAppbmRleCBlY2FkYzZhLi5hM2JiYTc0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3hhdHRyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC94YXR0ci5oCkBAIC0xNiwxMCArMTYsMTUgQEAKICAqKioKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKyNpbmNsdWRlIDxsaW51eC9saWJjLWNvbXBhdC5oPgogI2lmbmRlZiBfVUFQSV9MSU5VWF9YQVRUUl9ICiAjZGVmaW5lIF9VQVBJX0xJTlVYX1hBVFRSX0gKKyNpZiBfX1VBUElfREVGX1hBVFRSCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBfX1VTRV9LRVJORUxfWEFUVFJfREVGUwogI2RlZmluZSBYQVRUUl9DUkVBVEUgMHgxCiAjZGVmaW5lIFhBVFRSX1JFUExBQ0UgMHgyCisjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFhBVFRSX09TMl9QUkVGSVggIm9zMi4iCiAjZGVmaW5lIFhBVFRSX09TMl9QUkVGSVhfTEVOIChzaXplb2YoWEFUVFJfT1MyX1BSRUZJWCkgLSAxKQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC94ZnJtLmggYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3hmcm0uaAppbmRleCA0YjA5ZWU4Li4zYWIxNzNhIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3hmcm0uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3hmcm0uaApAQCAtMjEsMjMgKzIxLDIzIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHR5cGVkZWYgdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgYTQ7Ci0gX19iZTMyIGE2WzRdOworICBfX2JlMzIgYTQ7CisgIF9fYmUzMiBhNls0XTsKIH0geGZybV9hZGRyZXNzX3Q7CiBzdHJ1Y3QgeGZybV9pZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHhmcm1fYWRkcmVzc190IGRhZGRyOwotIF9fYmUzMiBzcGk7Ci0gX191OCBwcm90bzsKKyAgeGZybV9hZGRyZXNzX3QgZGFkZHI7CisgIF9fYmUzMiBzcGk7CisgIF9fdTggcHJvdG87CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4ZnJtX3NlY19jdHggewotIF9fdTggY3R4X2RvaTsKLSBfX3U4IGN0eF9hbGc7Ci0gX191MTYgY3R4X2xlbjsKKyAgX191OCBjdHhfZG9pOworICBfX3U4IGN0eF9hbGc7CisgIF9fdTE2IGN0eF9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGN0eF9zaWQ7Ci0gY2hhciBjdHhfc3RyWzBdOworICBfX3UzMiBjdHhfc2lkOworICBjaGFyIGN0eF9zdHJbMF07CiB9OwogI2RlZmluZSBYRlJNX1NDX0RPSV9SRVNFUlZFRCAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtNDYsMTEyICs0NiwxMTIgQEAKICNkZWZpbmUgWEZSTV9TQ19BTEdfU0VMSU5VWCAxCiBzdHJ1Y3QgeGZybV9zZWxlY3RvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHhmcm1fYWRkcmVzc190IGRhZGRyOwotIHhmcm1fYWRkcmVzc190IHNhZGRyOwotIF9fYmUxNiBkcG9ydDsKLSBfX2JlMTYgZHBvcnRfbWFzazsKKyAgeGZybV9hZGRyZXNzX3QgZGFkZHI7CisgIHhmcm1fYWRkcmVzc190IHNhZGRyOworICBfX2JlMTYgZHBvcnQ7CisgIF9fYmUxNiBkcG9ydF9tYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgc3BvcnQ7Ci0gX19iZTE2IHNwb3J0X21hc2s7Ci0gX191MTYgZmFtaWx5OwotIF9fdTggcHJlZml4bGVuX2Q7CisgIF9fYmUxNiBzcG9ydDsKKyAgX19iZTE2IHNwb3J0X21hc2s7CisgIF9fdTE2IGZhbWlseTsKKyAgX191OCBwcmVmaXhsZW5fZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwcmVmaXhsZW5fczsKLSBfX3U4IHByb3RvOwotIGludCBpZmluZGV4OwotIF9fa2VybmVsX3VpZDMyX3QgdXNlcjsKKyAgX191OCBwcmVmaXhsZW5fczsKKyAgX191OCBwcm90bzsKKyAgaW50IGlmaW5kZXg7CisgIF9fa2VybmVsX3VpZDMyX3QgdXNlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBYRlJNX0lORiAofihfX3U2NCkwKQorI2RlZmluZSBYRlJNX0lORiAofihfX3U2NCkgMCkKIHN0cnVjdCB4ZnJtX2xpZmV0aW1lX2NmZyB7Ci0gX191NjQgc29mdF9ieXRlX2xpbWl0OworICBfX3U2NCBzb2Z0X2J5dGVfbGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGhhcmRfYnl0ZV9saW1pdDsKLSBfX3U2NCBzb2Z0X3BhY2tldF9saW1pdDsKLSBfX3U2NCBoYXJkX3BhY2tldF9saW1pdDsKLSBfX3U2NCBzb2Z0X2FkZF9leHBpcmVzX3NlY29uZHM7CisgIF9fdTY0IGhhcmRfYnl0ZV9saW1pdDsKKyAgX191NjQgc29mdF9wYWNrZXRfbGltaXQ7CisgIF9fdTY0IGhhcmRfcGFja2V0X2xpbWl0OworICBfX3U2NCBzb2Z0X2FkZF9leHBpcmVzX3NlY29uZHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGhhcmRfYWRkX2V4cGlyZXNfc2Vjb25kczsKLSBfX3U2NCBzb2Z0X3VzZV9leHBpcmVzX3NlY29uZHM7Ci0gX191NjQgaGFyZF91c2VfZXhwaXJlc19zZWNvbmRzOworICBfX3U2NCBoYXJkX2FkZF9leHBpcmVzX3NlY29uZHM7CisgIF9fdTY0IHNvZnRfdXNlX2V4cGlyZXNfc2Vjb25kczsKKyAgX191NjQgaGFyZF91c2VfZXhwaXJlc19zZWNvbmRzOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeGZybV9saWZldGltZV9jdXIgewotIF9fdTY0IGJ5dGVzOwotIF9fdTY0IHBhY2tldHM7Ci0gX191NjQgYWRkX3RpbWU7CisgIF9fdTY0IGJ5dGVzOworICBfX3U2NCBwYWNrZXRzOworICBfX3U2NCBhZGRfdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgdXNlX3RpbWU7CisgIF9fdTY0IHVzZV90aW1lOwogfTsKIHN0cnVjdCB4ZnJtX3JlcGxheV9zdGF0ZSB7Ci0gX191MzIgb3NlcTsKKyAgX191MzIgb3NlcTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2VxOwotIF9fdTMyIGJpdG1hcDsKKyAgX191MzIgc2VxOworICBfX3UzMiBiaXRtYXA7CiB9OwogI2RlZmluZSBYRlJNQV9SRVBMQVlfRVNOX01BWCA0MDk2CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHhmcm1fcmVwbGF5X3N0YXRlX2VzbiB7Ci0gdW5zaWduZWQgaW50IGJtcF9sZW47Ci0gX191MzIgb3NlcTsKLSBfX3UzMiBzZXE7CisgIHVuc2lnbmVkIGludCBibXBfbGVuOworICBfX3UzMiBvc2VxOworICBfX3UzMiBzZXE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG9zZXFfaGk7Ci0gX191MzIgc2VxX2hpOwotIF9fdTMyIHJlcGxheV93aW5kb3c7Ci0gX191MzIgYm1wWzBdOworICBfX3UzMiBvc2VxX2hpOworICBfX3UzMiBzZXFfaGk7CisgIF9fdTMyIHJlcGxheV93aW5kb3c7CisgIF9fdTMyIGJtcFswXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHhmcm1fYWxnbyB7Ci0gY2hhciBhbGdfbmFtZVs2NF07Ci0gdW5zaWduZWQgaW50IGFsZ19rZXlfbGVuOworICBjaGFyIGFsZ19uYW1lWzY0XTsKKyAgdW5zaWduZWQgaW50IGFsZ19rZXlfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBjaGFyIGFsZ19rZXlbMF07CisgIGNoYXIgYWxnX2tleVswXTsKIH07CiBzdHJ1Y3QgeGZybV9hbGdvX2F1dGggewotIGNoYXIgYWxnX25hbWVbNjRdOworICBjaGFyIGFsZ19uYW1lWzY0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGFsZ19rZXlfbGVuOwotIHVuc2lnbmVkIGludCBhbGdfdHJ1bmNfbGVuOwotIGNoYXIgYWxnX2tleVswXTsKKyAgdW5zaWduZWQgaW50IGFsZ19rZXlfbGVuOworICB1bnNpZ25lZCBpbnQgYWxnX3RydW5jX2xlbjsKKyAgY2hhciBhbGdfa2V5WzBdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeGZybV9hbGdvX2FlYWQgewotIGNoYXIgYWxnX25hbWVbNjRdOwotIHVuc2lnbmVkIGludCBhbGdfa2V5X2xlbjsKLSB1bnNpZ25lZCBpbnQgYWxnX2ljdl9sZW47CisgIGNoYXIgYWxnX25hbWVbNjRdOworICB1bnNpZ25lZCBpbnQgYWxnX2tleV9sZW47CisgIHVuc2lnbmVkIGludCBhbGdfaWN2X2xlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY2hhciBhbGdfa2V5WzBdOworICBjaGFyIGFsZ19rZXlbMF07CiB9Owogc3RydWN0IHhmcm1fc3RhdHMgewotIF9fdTMyIHJlcGxheV93aW5kb3c7CisgIF9fdTMyIHJlcGxheV93aW5kb3c7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlcGxheTsKLSBfX3UzMiBpbnRlZ3JpdHlfZmFpbGVkOworICBfX3UzMiByZXBsYXk7CisgIF9fdTMyIGludGVncml0eV9mYWlsZWQ7CiB9OwogZW51bSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1fUE9MSUNZX1RZUEVfTUFJTiA9IDAsCi0gWEZSTV9QT0xJQ1lfVFlQRV9TVUIgPSAxLAotIFhGUk1fUE9MSUNZX1RZUEVfTUFYID0gMiwKLSBYRlJNX1BPTElDWV9UWVBFX0FOWSA9IDI1NQorICBYRlJNX1BPTElDWV9UWVBFX01BSU4gPSAwLAorICBYRlJNX1BPTElDWV9UWVBFX1NVQiA9IDEsCisgIFhGUk1fUE9MSUNZX1RZUEVfTUFYID0gMiwKKyAgWEZSTV9QT0xJQ1lfVFlQRV9BTlkgPSAyNTUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gWEZSTV9QT0xJQ1lfSU4gPSAwLAotIFhGUk1fUE9MSUNZX09VVCA9IDEsCisgIFhGUk1fUE9MSUNZX0lOID0gMCwKKyAgWEZSTV9QT0xJQ1lfT1VUID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTV9QT0xJQ1lfRldEID0gMiwKLSBYRlJNX1BPTElDWV9NQVNLID0gMywKLSBYRlJNX1BPTElDWV9NQVggPSAzCisgIFhGUk1fUE9MSUNZX0ZXRCA9IDIsCisgIFhGUk1fUE9MSUNZX01BU0sgPSAzLAorICBYRlJNX1BPTElDWV9NQVggPSAzCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFhGUk1fU0hBUkVfQU5ZLAotIFhGUk1fU0hBUkVfU0VTU0lPTiwKLSBYRlJNX1NIQVJFX1VTRVIsCisgIFhGUk1fU0hBUkVfQU5ZLAorICBYRlJNX1NIQVJFX1NFU1NJT04sCisgIFhGUk1fU0hBUkVfVVNFUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTV9TSEFSRV9VTklRVUUKKyAgWEZSTV9TSEFSRV9VTklRVUUKIH07CiAjZGVmaW5lIFhGUk1fTU9ERV9UUkFOU1BPUlQgMAogI2RlZmluZSBYRlJNX01PREVfVFVOTkVMIDEKQEAgLTE2MiwyMTcgKzE2MiwyMjcgQEAKICNkZWZpbmUgWEZSTV9NT0RFX01BWCA1CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gWEZSTV9NU0dfQkFTRSA9IDB4MTAsCi0gWEZSTV9NU0dfTkVXU0EgPSAweDEwLAorICBYRlJNX01TR19CQVNFID0gMHgxMCwKKyAgWEZSTV9NU0dfTkVXU0EgPSAweDEwLAogI2RlZmluZSBYRlJNX01TR19ORVdTQSBYRlJNX01TR19ORVdTQQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNX01TR19ERUxTQSwKKyAgWEZSTV9NU0dfREVMU0EsCiAjZGVmaW5lIFhGUk1fTVNHX0RFTFNBIFhGUk1fTVNHX0RFTFNBCi0gWEZSTV9NU0dfR0VUU0EsCisgIFhGUk1fTVNHX0dFVFNBLAogI2RlZmluZSBYRlJNX01TR19HRVRTQSBYRlJNX01TR19HRVRTQQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNX01TR19ORVdQT0xJQ1ksCisgIFhGUk1fTVNHX05FV1BPTElDWSwKICNkZWZpbmUgWEZSTV9NU0dfTkVXUE9MSUNZIFhGUk1fTVNHX05FV1BPTElDWQotIFhGUk1fTVNHX0RFTFBPTElDWSwKKyAgWEZSTV9NU0dfREVMUE9MSUNZLAogI2RlZmluZSBYRlJNX01TR19ERUxQT0xJQ1kgWEZSTV9NU0dfREVMUE9MSUNZCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1fTVNHX0dFVFBPTElDWSwKKyAgWEZSTV9NU0dfR0VUUE9MSUNZLAogI2RlZmluZSBYRlJNX01TR19HRVRQT0xJQ1kgWEZSTV9NU0dfR0VUUE9MSUNZCi0gWEZSTV9NU0dfQUxMT0NTUEksCisgIFhGUk1fTVNHX0FMTE9DU1BJLAogI2RlZmluZSBYRlJNX01TR19BTExPQ1NQSSBYRlJNX01TR19BTExPQ1NQSQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNX01TR19BQ1FVSVJFLAorICBYRlJNX01TR19BQ1FVSVJFLAogI2RlZmluZSBYRlJNX01TR19BQ1FVSVJFIFhGUk1fTVNHX0FDUVVJUkUKLSBYRlJNX01TR19FWFBJUkUsCisgIFhGUk1fTVNHX0VYUElSRSwKICNkZWZpbmUgWEZSTV9NU0dfRVhQSVJFIFhGUk1fTVNHX0VYUElSRQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNX01TR19VUERQT0xJQ1ksCisgIFhGUk1fTVNHX1VQRFBPTElDWSwKICNkZWZpbmUgWEZSTV9NU0dfVVBEUE9MSUNZIFhGUk1fTVNHX1VQRFBPTElDWQotIFhGUk1fTVNHX1VQRFNBLAorICBYRlJNX01TR19VUERTQSwKICNkZWZpbmUgWEZSTV9NU0dfVVBEU0EgWEZSTV9NU0dfVVBEU0EKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTV9NU0dfUE9MRVhQSVJFLAorICBYRlJNX01TR19QT0xFWFBJUkUsCiAjZGVmaW5lIFhGUk1fTVNHX1BPTEVYUElSRSBYRlJNX01TR19QT0xFWFBJUkUKLSBYRlJNX01TR19GTFVTSFNBLAorICBYRlJNX01TR19GTFVTSFNBLAogI2RlZmluZSBYRlJNX01TR19GTFVTSFNBIFhGUk1fTVNHX0ZMVVNIU0EKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTV9NU0dfRkxVU0hQT0xJQ1ksCisgIFhGUk1fTVNHX0ZMVVNIUE9MSUNZLAogI2RlZmluZSBYRlJNX01TR19GTFVTSFBPTElDWSBYRlJNX01TR19GTFVTSFBPTElDWQotIFhGUk1fTVNHX05FV0FFLAorICBYRlJNX01TR19ORVdBRSwKICNkZWZpbmUgWEZSTV9NU0dfTkVXQUUgWEZSTV9NU0dfTkVXQUUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTV9NU0dfR0VUQUUsCisgIFhGUk1fTVNHX0dFVEFFLAogI2RlZmluZSBYRlJNX01TR19HRVRBRSBYRlJNX01TR19HRVRBRQotIFhGUk1fTVNHX1JFUE9SVCwKKyAgWEZSTV9NU0dfUkVQT1JULAogI2RlZmluZSBYRlJNX01TR19SRVBPUlQgWEZSTV9NU0dfUkVQT1JUCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1fTVNHX01JR1JBVEUsCisgIFhGUk1fTVNHX01JR1JBVEUsCiAjZGVmaW5lIFhGUk1fTVNHX01JR1JBVEUgWEZSTV9NU0dfTUlHUkFURQotIFhGUk1fTVNHX05FV1NBRElORk8sCisgIFhGUk1fTVNHX05FV1NBRElORk8sCiAjZGVmaW5lIFhGUk1fTVNHX05FV1NBRElORk8gWEZSTV9NU0dfTkVXU0FESU5GTwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNX01TR19HRVRTQURJTkZPLAorICBYRlJNX01TR19HRVRTQURJTkZPLAogI2RlZmluZSBYRlJNX01TR19HRVRTQURJTkZPIFhGUk1fTVNHX0dFVFNBRElORk8KLSBYRlJNX01TR19ORVdTUERJTkZPLAorICBYRlJNX01TR19ORVdTUERJTkZPLAogI2RlZmluZSBYRlJNX01TR19ORVdTUERJTkZPIFhGUk1fTVNHX05FV1NQRElORk8KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTV9NU0dfR0VUU1BESU5GTywKKyAgWEZSTV9NU0dfR0VUU1BESU5GTywKICNkZWZpbmUgWEZSTV9NU0dfR0VUU1BESU5GTyBYRlJNX01TR19HRVRTUERJTkZPCi0gWEZSTV9NU0dfTUFQUElORywKKyAgWEZSTV9NU0dfTUFQUElORywKICNkZWZpbmUgWEZSTV9NU0dfTUFQUElORyBYRlJNX01TR19NQVBQSU5HCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fWEZSTV9NU0dfTUFYCisgIF9fWEZSTV9NU0dfTUFYCiB9OwogI2RlZmluZSBYRlJNX01TR19NQVggKF9fWEZSTV9NU0dfTUFYIC0gMSkKICNkZWZpbmUgWEZSTV9OUl9NU0dUWVBFUyAoWEZSTV9NU0dfTUFYICsgMSAtIFhGUk1fTVNHX0JBU0UpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHhmcm1fdXNlcl9zZWNfY3R4IHsKLSBfX3UxNiBsZW47Ci0gX191MTYgZXh0dHlwZTsKLSBfX3U4IGN0eF9hbGc7CisgIF9fdTE2IGxlbjsKKyAgX191MTYgZXh0dHlwZTsKKyAgX191OCBjdHhfYWxnOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGN0eF9kb2k7Ci0gX191MTYgY3R4X2xlbjsKKyAgX191OCBjdHhfZG9pOworICBfX3UxNiBjdHhfbGVuOwogfTsKIHN0cnVjdCB4ZnJtX3VzZXJfdG1wbCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4ZnJtX2lkIGlkOwotIF9fdTE2IGZhbWlseTsKLSB4ZnJtX2FkZHJlc3NfdCBzYWRkcjsKLSBfX3UzMiByZXFpZDsKKyAgc3RydWN0IHhmcm1faWQgaWQ7CisgIF9fdTE2IGZhbWlseTsKKyAgeGZybV9hZGRyZXNzX3Qgc2FkZHI7CisgIF9fdTMyIHJlcWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG1vZGU7Ci0gX191OCBzaGFyZTsKLSBfX3U4IG9wdGlvbmFsOwotIF9fdTMyIGFhbGdvczsKKyAgX191OCBtb2RlOworICBfX3U4IHNoYXJlOworICBfX3U4IG9wdGlvbmFsOworICBfX3UzMiBhYWxnb3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGVhbGdvczsKLSBfX3UzMiBjYWxnb3M7CisgIF9fdTMyIGVhbGdvczsKKyAgX191MzIgY2FsZ29zOwogfTsKIHN0cnVjdCB4ZnJtX2VuY2FwX3RtcGwgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBlbmNhcF90eXBlOwotIF9fYmUxNiBlbmNhcF9zcG9ydDsKLSBfX2JlMTYgZW5jYXBfZHBvcnQ7Ci0geGZybV9hZGRyZXNzX3QgZW5jYXBfb2E7CisgIF9fdTE2IGVuY2FwX3R5cGU7CisgIF9fYmUxNiBlbmNhcF9zcG9ydDsKKyAgX19iZTE2IGVuY2FwX2Rwb3J0OworICB4ZnJtX2FkZHJlc3NfdCBlbmNhcF9vYTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB4ZnJtX2FlX2Z0eXBlX3QgewotIFhGUk1fQUVfVU5TUEVDLAotIFhGUk1fQUVfUlRIUj0xLAorICBYRlJNX0FFX1VOU1BFQywKKyAgWEZSTV9BRV9SVEhSID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTV9BRV9SVkFMPTIsCi0gWEZSTV9BRV9MVkFMPTQsCi0gWEZSTV9BRV9FVEhSPTgsCi0gWEZSTV9BRV9DUj0xNiwKKyAgWEZSTV9BRV9SVkFMID0gMiwKKyAgWEZSTV9BRV9MVkFMID0gNCwKKyAgWEZSTV9BRV9FVEhSID0gOCwKKyAgWEZSTV9BRV9DUiA9IDE2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNX0FFX0NFPTMyLAotIFhGUk1fQUVfQ1U9NjQsCi0gX19YRlJNX0FFX01BWAorICBYRlJNX0FFX0NFID0gMzIsCisgIFhGUk1fQUVfQ1UgPSA2NCwKKyAgX19YRlJNX0FFX01BWAogI2RlZmluZSBYRlJNX0FFX01BWCAoX19YRlJNX0FFX01BWCAtIDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4ZnJtX3VzZXJwb2xpY3lfdHlwZSB7Ci0gX191OCB0eXBlOwotIF9fdTE2IHJlc2VydmVkMTsKKyAgX191OCB0eXBlOworICBfX3UxNiByZXNlcnZlZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWQyOworICBfX3U4IHJlc2VydmVkMjsKIH07CiBlbnVtIHhmcm1fYXR0cl90eXBlX3QgewotIFhGUk1BX1VOU1BFQywKKyAgWEZSTUFfVU5TUEVDLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNQV9BTEdfQVVUSCwKLSBYRlJNQV9BTEdfQ1JZUFQsCi0gWEZSTUFfQUxHX0NPTVAsCi0gWEZSTUFfRU5DQVAsCisgIFhGUk1BX0FMR19BVVRILAorICBYRlJNQV9BTEdfQ1JZUFQsCisgIFhGUk1BX0FMR19DT01QLAorICBYRlJNQV9FTkNBUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTUFfVE1QTCwKLSBYRlJNQV9TQSwKLSBYRlJNQV9QT0xJQ1ksCi0gWEZSTUFfU0VDX0NUWCwKKyAgWEZSTUFfVE1QTCwKKyAgWEZSTUFfU0EsCisgIFhGUk1BX1BPTElDWSwKKyAgWEZSTUFfU0VDX0NUWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTUFfTFRJTUVfVkFMLAotIFhGUk1BX1JFUExBWV9WQUwsCi0gWEZSTUFfUkVQTEFZX1RIUkVTSCwKLSBYRlJNQV9FVElNRVJfVEhSRVNILAorICBYRlJNQV9MVElNRV9WQUwsCisgIFhGUk1BX1JFUExBWV9WQUwsCisgIFhGUk1BX1JFUExBWV9USFJFU0gsCisgIFhGUk1BX0VUSU1FUl9USFJFU0gsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1BX1NSQ0FERFIsCi0gWEZSTUFfQ09BRERSLAotIFhGUk1BX0xBU1RVU0VELAotIFhGUk1BX1BPTElDWV9UWVBFLAorICBYRlJNQV9TUkNBRERSLAorICBYRlJNQV9DT0FERFIsCisgIFhGUk1BX0xBU1RVU0VELAorICBYRlJNQV9QT0xJQ1lfVFlQRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTUFfTUlHUkFURSwKLSBYRlJNQV9BTEdfQUVBRCwKLSBYRlJNQV9LTUFERFJFU1MsCi0gWEZSTUFfQUxHX0FVVEhfVFJVTkMsCisgIFhGUk1BX01JR1JBVEUsCisgIFhGUk1BX0FMR19BRUFELAorICBYRlJNQV9LTUFERFJFU1MsCisgIFhGUk1BX0FMR19BVVRIX1RSVU5DLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNQV9NQVJLLAotIFhGUk1BX1RGQ1BBRCwKLSBYRlJNQV9SRVBMQVlfRVNOX1ZBTCwKLSBYRlJNQV9TQV9FWFRSQV9GTEFHUywKKyAgWEZSTUFfTUFSSywKKyAgWEZSTUFfVEZDUEFELAorICBYRlJNQV9SRVBMQVlfRVNOX1ZBTCwKKyAgWEZSTUFfU0FfRVhUUkFfRkxBR1MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fWEZSTUFfTUFYCisgIFhGUk1BX1BST1RPLAorICBYRlJNQV9BRERSRVNTX0ZJTFRFUiwKKyAgX19YRlJNQV9NQVgKICNkZWZpbmUgWEZSTUFfTUFYIChfX1hGUk1BX01BWCAtIDEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4ZnJtX21hcmsgeworICBfX3UzMiB2OworICBfX3UzMiBtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB2OwotIF9fdTMyIG07CiB9OwogZW51bSB4ZnJtX3NhZGF0dHJfdHlwZV90IHsKKyAgWEZSTUFfU0FEX1VOU1BFQywKKyAgWEZSTUFfU0FEX0NOVCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTUFfU0FEX1VOU1BFQywKLSBYRlJNQV9TQURfQ05ULAotIFhGUk1BX1NBRF9ISU5GTywKLSBfX1hGUk1BX1NBRF9NQVgKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFhGUk1BX1NBRF9ISU5GTywKKyAgX19YRlJNQV9TQURfTUFYCiAjZGVmaW5lIFhGUk1BX1NBRF9NQVggKF9fWEZSTUFfU0FEX01BWCAtIDEpCiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4ZnJtdV9zYWRoaW5mbyB7Ci0gX191MzIgc2FkaGNudDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc2FkaG1jbnQ7CisgIF9fdTMyIHNhZGhjbnQ7CisgIF9fdTMyIHNhZGhtY250OwogfTsKLWVudW0geGZybV9zcGRhdHRyX3R5cGVfdCB7Ci0gWEZSTUFfU1BEX1VOU1BFQywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTUFfU1BEX0lORk8sCi0gWEZSTUFfU1BEX0hJTkZPLAotIF9fWEZSTUFfU1BEX01BWAorZW51bSB4ZnJtX3NwZGF0dHJfdHlwZV90IHsKKyAgWEZSTUFfU1BEX1VOU1BFQywKKyAgWEZSTUFfU1BEX0lORk8sCisgIFhGUk1BX1NQRF9ISU5GTywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFhGUk1BX1NQRF9JUFY0X0hUSFJFU0gsCisgIFhGUk1BX1NQRF9JUFY2X0hUSFJFU0gsCisgIF9fWEZSTUFfU1BEX01BWAogI2RlZmluZSBYRlJNQV9TUERfTUFYIChfX1hGUk1BX1NQRF9NQVggLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeGZybXVfc3BkaW5mbyB7Ci0gX191MzIgaW5jbnQ7Ci0gX191MzIgb3V0Y250OworICBfX3UzMiBpbmNudDsKKyAgX191MzIgb3V0Y250OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmd2RjbnQ7Ci0gX191MzIgaW5zY250OwotIF9fdTMyIG91dHNjbnQ7Ci0gX191MzIgZndkc2NudDsKKyAgX191MzIgZndkY250OworICBfX3UzMiBpbnNjbnQ7CisgIF9fdTMyIG91dHNjbnQ7CisgIF9fdTMyIGZ3ZHNjbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCB4ZnJtdV9zcGRoaW5mbyB7Ci0gX191MzIgc3BkaGNudDsKLSBfX3UzMiBzcGRobWNudDsKKyAgX191MzIgc3BkaGNudDsKKyAgX191MzIgc3BkaG1jbnQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK3N0cnVjdCB4ZnJtdV9zcGRodGhyZXNoIHsKKyAgX191OCBsYml0czsKKyAgX191OCByYml0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHhmcm1fdXNlcnNhX2luZm8gewotIHN0cnVjdCB4ZnJtX3NlbGVjdG9yIHNlbDsKLSBzdHJ1Y3QgeGZybV9pZCBpZDsKKyAgc3RydWN0IHhmcm1fc2VsZWN0b3Igc2VsOworICBzdHJ1Y3QgeGZybV9pZCBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0geGZybV9hZGRyZXNzX3Qgc2FkZHI7Ci0gc3RydWN0IHhmcm1fbGlmZXRpbWVfY2ZnIGxmdDsKLSBzdHJ1Y3QgeGZybV9saWZldGltZV9jdXIgY3VybGZ0OwotIHN0cnVjdCB4ZnJtX3N0YXRzIHN0YXRzOworICB4ZnJtX2FkZHJlc3NfdCBzYWRkcjsKKyAgc3RydWN0IHhmcm1fbGlmZXRpbWVfY2ZnIGxmdDsKKyAgc3RydWN0IHhmcm1fbGlmZXRpbWVfY3VyIGN1cmxmdDsKKyAgc3RydWN0IHhmcm1fc3RhdHMgc3RhdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNlcTsKLSBfX3UzMiByZXFpZDsKLSBfX3UxNiBmYW1pbHk7Ci0gX191OCBtb2RlOworICBfX3UzMiBzZXE7CisgIF9fdTMyIHJlcWlkOworICBfX3UxNiBmYW1pbHk7CisgIF9fdTggbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXBsYXlfd2luZG93OwotIF9fdTggZmxhZ3M7CisgIF9fdTggcmVwbGF5X3dpbmRvdzsKKyAgX191OCBmbGFnczsKICNkZWZpbmUgWEZSTV9TVEFURV9OT0VDTiAxCiAjZGVmaW5lIFhGUk1fU1RBVEVfREVDQVBfRFNDUCAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMzg3LDE0NyArMzk3LDE1NSBAQAogI2RlZmluZSBYRlJNX1NBX1hGTEFHX0RPTlRfRU5DQVBfRFNDUCAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHhmcm1fdXNlcnNhX2lkIHsKLSB4ZnJtX2FkZHJlc3NfdCBkYWRkcjsKLSBfX2JlMzIgc3BpOwotIF9fdTE2IGZhbWlseTsKKyAgeGZybV9hZGRyZXNzX3QgZGFkZHI7CisgIF9fYmUzMiBzcGk7CisgIF9fdTE2IGZhbWlseTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwcm90bzsKKyAgX191OCBwcm90bzsKIH07CiBzdHJ1Y3QgeGZybV9hZXZlbnRfaWQgewotIHN0cnVjdCB4ZnJtX3VzZXJzYV9pZCBzYV9pZDsKKyAgc3RydWN0IHhmcm1fdXNlcnNhX2lkIHNhX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB4ZnJtX2FkZHJlc3NfdCBzYWRkcjsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiByZXFpZDsKKyAgeGZybV9hZGRyZXNzX3Qgc2FkZHI7CisgIF9fdTMyIGZsYWdzOworICBfX3UzMiByZXFpZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHhmcm1fdXNlcnNwaV9pbmZvIHsKLSBzdHJ1Y3QgeGZybV91c2Vyc2FfaW5mbyBpbmZvOwotIF9fdTMyIG1pbjsKLSBfX3UzMiBtYXg7CisgIHN0cnVjdCB4ZnJtX3VzZXJzYV9pbmZvIGluZm87CisgIF9fdTMyIG1pbjsKKyAgX191MzIgbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeGZybV91c2VycG9saWN5X2luZm8gewotIHN0cnVjdCB4ZnJtX3NlbGVjdG9yIHNlbDsKLSBzdHJ1Y3QgeGZybV9saWZldGltZV9jZmcgbGZ0OworICBzdHJ1Y3QgeGZybV9zZWxlY3RvciBzZWw7CisgIHN0cnVjdCB4ZnJtX2xpZmV0aW1lX2NmZyBsZnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4ZnJtX2xpZmV0aW1lX2N1ciBjdXJsZnQ7Ci0gX191MzIgcHJpb3JpdHk7Ci0gX191MzIgaW5kZXg7Ci0gX191OCBkaXI7CisgIHN0cnVjdCB4ZnJtX2xpZmV0aW1lX2N1ciBjdXJsZnQ7CisgIF9fdTMyIHByaW9yaXR5OworICBfX3UzMiBpbmRleDsKKyAgX191OCBkaXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYWN0aW9uOworICBfX3U4IGFjdGlvbjsKICNkZWZpbmUgWEZSTV9QT0xJQ1lfQUxMT1cgMAogI2RlZmluZSBYRlJNX1BPTElDWV9CTE9DSyAxCi0gX191OCBmbGFnczsKKyAgX191OCBmbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFhGUk1fUE9MSUNZX0xPQ0FMT0sgMQogI2RlZmluZSBYRlJNX1BPTElDWV9JQ01QIDIKLSBfX3U4IHNoYXJlOworICBfX3U4IHNoYXJlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeGZybV91c2VycG9saWN5X2lkIHsKLSBzdHJ1Y3QgeGZybV9zZWxlY3RvciBzZWw7Ci0gX191MzIgaW5kZXg7Ci0gX191OCBkaXI7CisgIHN0cnVjdCB4ZnJtX3NlbGVjdG9yIHNlbDsKKyAgX191MzIgaW5kZXg7CisgIF9fdTggZGlyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgeGZybV91c2VyX2FjcXVpcmUgewotIHN0cnVjdCB4ZnJtX2lkIGlkOwotIHhmcm1fYWRkcmVzc190IHNhZGRyOworICBzdHJ1Y3QgeGZybV9pZCBpZDsKKyAgeGZybV9hZGRyZXNzX3Qgc2FkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB4ZnJtX3NlbGVjdG9yIHNlbDsKLSBzdHJ1Y3QgeGZybV91c2VycG9saWN5X2luZm8gcG9saWN5OwotIF9fdTMyIGFhbGdvczsKLSBfX3UzMiBlYWxnb3M7CisgIHN0cnVjdCB4ZnJtX3NlbGVjdG9yIHNlbDsKKyAgc3RydWN0IHhmcm1fdXNlcnBvbGljeV9pbmZvIHBvbGljeTsKKyAgX191MzIgYWFsZ29zOworICBfX3UzMiBlYWxnb3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNhbGdvczsKLSBfX3UzMiBzZXE7CisgIF9fdTMyIGNhbGdvczsKKyAgX191MzIgc2VxOwogfTsKIHN0cnVjdCB4ZnJtX3VzZXJfZXhwaXJlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHhmcm1fdXNlcnNhX2luZm8gc3RhdGU7Ci0gX191OCBoYXJkOworICBzdHJ1Y3QgeGZybV91c2Vyc2FfaW5mbyBzdGF0ZTsKKyAgX191OCBoYXJkOwogfTsKIHN0cnVjdCB4ZnJtX3VzZXJfcG9sZXhwaXJlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHhmcm1fdXNlcnBvbGljeV9pbmZvIHBvbDsKLSBfX3U4IGhhcmQ7CisgIHN0cnVjdCB4ZnJtX3VzZXJwb2xpY3lfaW5mbyBwb2w7CisgIF9fdTggaGFyZDsKIH07CiBzdHJ1Y3QgeGZybV91c2Vyc2FfZmx1c2ggewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHByb3RvOworICBfX3U4IHByb3RvOwogfTsKIHN0cnVjdCB4ZnJtX3VzZXJfcmVwb3J0IHsKLSBfX3U4IHByb3RvOworICBfX3U4IHByb3RvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgeGZybV9zZWxlY3RvciBzZWw7CisgIHN0cnVjdCB4ZnJtX3NlbGVjdG9yIHNlbDsKIH07CiBzdHJ1Y3QgeGZybV91c2VyX2ttYWRkcmVzcyB7Ci0geGZybV9hZGRyZXNzX3QgbG9jYWw7CisgIHhmcm1fYWRkcmVzc190IGxvY2FsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB4ZnJtX2FkZHJlc3NfdCByZW1vdGU7Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0gX191MTYgZmFtaWx5OworICB4ZnJtX2FkZHJlc3NfdCByZW1vdGU7CisgIF9fdTMyIHJlc2VydmVkOworICBfX3UxNiBmYW1pbHk7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB4ZnJtX3VzZXJfbWlncmF0ZSB7Ci0geGZybV9hZGRyZXNzX3Qgb2xkX2RhZGRyOwotIHhmcm1fYWRkcmVzc190IG9sZF9zYWRkcjsKLSB4ZnJtX2FkZHJlc3NfdCBuZXdfZGFkZHI7CisgIHhmcm1fYWRkcmVzc190IG9sZF9kYWRkcjsKKyAgeGZybV9hZGRyZXNzX3Qgb2xkX3NhZGRyOworICB4ZnJtX2FkZHJlc3NfdCBuZXdfZGFkZHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHhmcm1fYWRkcmVzc190IG5ld19zYWRkcjsKLSBfX3U4IHByb3RvOwotIF9fdTggbW9kZTsKLSBfX3UxNiByZXNlcnZlZDsKKyAgeGZybV9hZGRyZXNzX3QgbmV3X3NhZGRyOworICBfX3U4IHByb3RvOworICBfX3U4IG1vZGU7CisgIF9fdTE2IHJlc2VydmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXFpZDsKLSBfX3UxNiBvbGRfZmFtaWx5OwotIF9fdTE2IG5ld19mYW1pbHk7CisgIF9fdTMyIHJlcWlkOworICBfX3UxNiBvbGRfZmFtaWx5OworICBfX3UxNiBuZXdfZmFtaWx5OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgeGZybV91c2VyX21hcHBpbmcgewotIHN0cnVjdCB4ZnJtX3VzZXJzYV9pZCBpZDsKLSBfX3UzMiByZXFpZDsKLSB4ZnJtX2FkZHJlc3NfdCBvbGRfc2FkZHI7CisgIHN0cnVjdCB4ZnJtX3VzZXJzYV9pZCBpZDsKKyAgX191MzIgcmVxaWQ7CisgIHhmcm1fYWRkcmVzc190IG9sZF9zYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0geGZybV9hZGRyZXNzX3QgbmV3X3NhZGRyOwotIF9fYmUxNiBvbGRfc3BvcnQ7Ci0gX19iZTE2IG5ld19zcG9ydDsKKyAgeGZybV9hZGRyZXNzX3QgbmV3X3NhZGRyOworICBfX2JlMTYgb2xkX3Nwb3J0OworICBfX2JlMTYgbmV3X3Nwb3J0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgeGZybV9hZGRyZXNzX2ZpbHRlciB7CisgIHhmcm1fYWRkcmVzc190IHNhZGRyOworICB4ZnJtX2FkZHJlc3NfdCBkYWRkcjsKKyAgX191MTYgZmFtaWx5OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCBzcGxlbjsKKyAgX191OCBkcGxlbjsKK307CiAjZGVmaW5lIFhGUk1HUlBfQUNRVUlSRSAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYRlJNR1JQX0VYUElSRSAyCiAjZGVmaW5lIFhGUk1HUlBfU0EgNAogI2RlZmluZSBYRlJNR1JQX1BPTElDWSA4Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBYRlJNR1JQX1JFUE9SVCAweDIwCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB4ZnJtX25sZ3JvdXBzIHsKLSBYRlJNTkxHUlBfTk9ORSwKKyAgWEZSTU5MR1JQX05PTkUsCiAjZGVmaW5lIFhGUk1OTEdSUF9OT05FIFhGUk1OTEdSUF9OT05FCisgIFhGUk1OTEdSUF9BQ1FVSVJFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNTkxHUlBfQUNRVUlSRSwKICNkZWZpbmUgWEZSTU5MR1JQX0FDUVVJUkUgWEZSTU5MR1JQX0FDUVVJUkUKLSBYRlJNTkxHUlBfRVhQSVJFLAorICBYRlJNTkxHUlBfRVhQSVJFLAogI2RlZmluZSBYRlJNTkxHUlBfRVhQSVJFIFhGUk1OTEdSUF9FWFBJUkUKKyAgWEZSTU5MR1JQX1NBLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBYRlJNTkxHUlBfU0EsCiAjZGVmaW5lIFhGUk1OTEdSUF9TQSBYRlJNTkxHUlBfU0EKLSBYRlJNTkxHUlBfUE9MSUNZLAorICBYRlJNTkxHUlBfUE9MSUNZLAogI2RlZmluZSBYRlJNTkxHUlBfUE9MSUNZIFhGUk1OTEdSUF9QT0xJQ1kKKyAgWEZSTU5MR1JQX0FFVkVOVFMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFhGUk1OTEdSUF9BRVZFTlRTLAogI2RlZmluZSBYRlJNTkxHUlBfQUVWRU5UUyBYRlJNTkxHUlBfQUVWRU5UUwotIFhGUk1OTEdSUF9SRVBPUlQsCisgIFhGUk1OTEdSUF9SRVBPUlQsCiAjZGVmaW5lIFhGUk1OTEdSUF9SRVBPUlQgWEZSTU5MR1JQX1JFUE9SVAorICBYRlJNTkxHUlBfTUlHUkFURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gWEZSTU5MR1JQX01JR1JBVEUsCiAjZGVmaW5lIFhGUk1OTEdSUF9NSUdSQVRFIFhGUk1OTEdSUF9NSUdSQVRFCi0gWEZSTU5MR1JQX01BUFBJTkcsCisgIFhGUk1OTEdSUF9NQVBQSU5HLAogI2RlZmluZSBYRlJNTkxHUlBfTUFQUElORyBYRlJNTkxHUlBfTUFQUElORworICBfX1hGUk1OTEdSUF9NQVgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19YRlJNTkxHUlBfTUFYCiB9OwogI2RlZmluZSBYRlJNTkxHUlBfTUFYIChfX1hGUk1OTEdSUF9NQVggLSAxKQogI2VuZGlmCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9saW51eC96b3Jyby5oIGIvbGliYy9rZXJuZWwvdWFwaS9saW51eC96b3Jyby5oCmluZGV4IDIxOWVmNzAuLjE4MWNkOGYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbGludXgvem9ycm8uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL2xpbnV4L3pvcnJvLmgKQEAgLTIzLDcgKzIzLDcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFpPUlJPX1BST0QoaWQpICgoKGlkKSA+PiA4KSAmIDB4ZmYpCiAjZGVmaW5lIFpPUlJPX0VQQyhpZCkgKChpZCkgJiAweGZmKQotI2RlZmluZSBaT1JST19JRChtYW51ZiwgcHJvZCwgZXBjKSAgICgoWk9SUk9fTUFOVUZfIyNtYW51ZiA8PCAxNikgfCAoKHByb2QpIDw8IDgpIHwgKGVwYykpCisjZGVmaW5lIFpPUlJPX0lEKG1hbnVmLHByb2QsZXBjKSAoKFpPUlJPX01BTlVGXyAjI21hbnVmIDw8IDE2KSB8ICgocHJvZCkgPDwgOCkgfCAoZXBjKSkKIHR5cGVkZWYgX191MzIgem9ycm9faWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2luY2x1ZGUgPGxpbnV4L3pvcnJvX2lkcy5oPgpAQCAtMzEsMzkgKzMxLDM5IEBACiAjZGVmaW5lIEdWUF9TQ1NJQ0xLTUFTSyAoMHgwMSkKIGVudW0gR1ZQX2ZsYWdzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gR1ZQX0lPID0gMHgwMSwKLSBHVlBfQUNDRUwgPSAweDAyLAotIEdWUF9TQ1NJID0gMHgwNCwKLSBHVlBfMjRCSVRETUEgPSAweDA4LAorICBHVlBfSU8gPSAweDAxLAorICBHVlBfQUNDRUwgPSAweDAyLAorICBHVlBfU0NTSSA9IDB4MDQsCisgIEdWUF8yNEJJVERNQSA9IDB4MDgsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEdWUF8yNUJJVERNQSA9IDB4MTAsCi0gR1ZQX05PQkFOSyA9IDB4MjAsCi0gR1ZQXzE0TUhaID0gMHg0MCwKKyAgR1ZQXzI1QklURE1BID0gMHgxMCwKKyAgR1ZQX05PQkFOSyA9IDB4MjAsCisgIEdWUF8xNE1IWiA9IDB4NDAsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBOb2RlIHsKLSBfX2JlMzIgbG5fU3VjYzsKLSBfX2JlMzIgbG5fUHJlZDsKLSBfX3U4IGxuX1R5cGU7CisgIF9fYmUzMiBsbl9TdWNjOworICBfX2JlMzIgbG5fUHJlZDsKKyAgX191OCBsbl9UeXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3M4IGxuX1ByaTsKLSBfX2JlMzIgbG5fTmFtZTsKKyAgX19zOCBsbl9Qcmk7CisgIF9fYmUzMiBsbl9OYW1lOwogfSBfX3BhY2tlZDsKIHN0cnVjdCBFeHBhbnNpb25Sb20gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGVyX1R5cGU7Ci0gX191OCBlcl9Qcm9kdWN0OwotIF9fdTggZXJfRmxhZ3M7Ci0gX191OCBlcl9SZXNlcnZlZDAzOworICBfX3U4IGVyX1R5cGU7CisgIF9fdTggZXJfUHJvZHVjdDsKKyAgX191OCBlcl9GbGFnczsKKyAgX191OCBlcl9SZXNlcnZlZDAzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgZXJfTWFudWZhY3R1cmVyOwotIF9fYmUzMiBlcl9TZXJpYWxOdW1iZXI7Ci0gX19iZTE2IGVyX0luaXREaWFnVmVjOwotIF9fdTggZXJfUmVzZXJ2ZWQwYzsKKyAgX19iZTE2IGVyX01hbnVmYWN0dXJlcjsKKyAgX19iZTMyIGVyX1NlcmlhbE51bWJlcjsKKyAgX19iZTE2IGVyX0luaXREaWFnVmVjOworICBfX3U4IGVyX1Jlc2VydmVkMGM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZXJfUmVzZXJ2ZWQwZDsKLSBfX3U4IGVyX1Jlc2VydmVkMGU7Ci0gX191OCBlcl9SZXNlcnZlZDBmOworICBfX3U4IGVyX1Jlc2VydmVkMGQ7CisgIF9fdTggZXJfUmVzZXJ2ZWQwZTsKKyAgX191OCBlcl9SZXNlcnZlZDBmOwogfSBfX3BhY2tlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEVSVF9UWVBFTUFTSyAweGMwCkBAIC03MSwyMiArNzEsMjIgQEAKICNkZWZpbmUgRVJUX1pPUlJPSUlJIDB4ODAKICNkZWZpbmUgRVJUQl9NRU1MSVNUIDUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEVSVEZfTUVNTElTVCAoMTw8NSkKKyNkZWZpbmUgRVJURl9NRU1MSVNUICgxIDw8IDUpCiBzdHJ1Y3QgQ29uZmlnRGV2IHsKLSBzdHJ1Y3QgTm9kZSBjZF9Ob2RlOwotIF9fdTggY2RfRmxhZ3M7CisgIHN0cnVjdCBOb2RlIGNkX05vZGU7CisgIF9fdTggY2RfRmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY2RfUGFkOwotIHN0cnVjdCBFeHBhbnNpb25Sb20gY2RfUm9tOwotIF9fYmUzMiBjZF9Cb2FyZEFkZHI7Ci0gX19iZTMyIGNkX0JvYXJkU2l6ZTsKKyAgX191OCBjZF9QYWQ7CisgIHN0cnVjdCBFeHBhbnNpb25Sb20gY2RfUm9tOworICBfX2JlMzIgY2RfQm9hcmRBZGRyOworICBfX2JlMzIgY2RfQm9hcmRTaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgY2RfU2xvdEFkZHI7Ci0gX19iZTE2IGNkX1Nsb3RTaXplOwotIF9fYmUzMiBjZF9Ecml2ZXI7Ci0gX19iZTMyIGNkX05leHRDRDsKKyAgX19iZTE2IGNkX1Nsb3RBZGRyOworICBfX2JlMTYgY2RfU2xvdFNpemU7CisgIF9fYmUzMiBjZF9Ecml2ZXI7CisgIF9fYmUzMiBjZF9OZXh0Q0Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBjZF9VbnVzZWRbNF07CisgIF9fYmUzMiBjZF9VbnVzZWRbNF07CiB9IF9fcGFja2VkOwogI2RlZmluZSBaT1JST19OVU1fQVVUTyAxNgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL21pc2MvY3hsLmggYi9saWJjL2tlcm5lbC91YXBpL21pc2MvY3hsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTUwYTBkOQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbWlzYy9jeGwuaApAQCAtMCwwICsxLDk2IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqKioKKyAqKiogICBUaGlzIGhlYWRlciB3YXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZnJvbSBhIExpbnV4IGtlcm5lbCBoZWFkZXIKKyAqKiogICBvZiB0aGUgc2FtZSBuYW1lLCB0byBtYWtlIGluZm9ybWF0aW9uIG5lY2Vzc2FyeSBmb3IgdXNlcnNwYWNlIHRvCisgKioqICAgY2FsbCBpbnRvIHRoZSBrZXJuZWwgYXZhaWxhYmxlIHRvIGxpYmMuICBJdCBjb250YWlucyBvbmx5IGNvbnN0YW50cywKKyAqKiogICBzdHJ1Y3R1cmVzLCBhbmQgbWFjcm9zIGdlbmVyYXRlZCBmcm9tIHRoZSBvcmlnaW5hbCBoZWFkZXIsIGFuZCB0aHVzLAorICoqKiAgIGNvbnRhaW5zIG5vIGNvcHlyaWdodGFibGUgaW5mb3JtYXRpb24uCisgKioqCisgKioqICAgVG8gZWRpdCB0aGUgY29udGVudCBvZiB0aGlzIGhlYWRlciwgbW9kaWZ5IHRoZSBjb3JyZXNwb25kaW5nCisgKioqICAgc291cmNlIGZpbGUgKGUuZy4gdW5kZXIgZXh0ZXJuYWwva2VybmVsLWhlYWRlcnMvb3JpZ2luYWwvKSB0aGVuCisgKioqICAgcnVuIGJpb25pYy9saWJjL2tlcm5lbC90b29scy91cGRhdGVfYWxsLnB5CisgKioqCisgKioqICAgQW55IG1hbnVhbCBjaGFuZ2UgaGVyZSB3aWxsIGJlIGxvc3QgdGhlIG5leHQgdGltZSB0aGlzIHNjcmlwdCB3aWxsCisgKioqICAgYmUgcnVuLiBZb3UndmUgYmVlbiB3YXJuZWQhCisgKioqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisjaWZuZGVmIF9VQVBJX01JU0NfQ1hMX0gKKyNkZWZpbmUgX1VBUElfTUlTQ19DWExfSAorI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CisjaW5jbHVkZSA8bGludXgvaW9jdGwuaD4KKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgY3hsX2lvY3RsX3N0YXJ0X3dvcmsgeworICBfX3U2NCBmbGFnczsKKyAgX191NjQgd29ya19lbGVtZW50X2Rlc2NyaXB0b3I7CisgIF9fdTY0IGFtcjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fczE2IG51bV9pbnRlcnJ1cHRzOworICBfX3MxNiByZXNlcnZlZDE7CisgIF9fczMyIHJlc2VydmVkMjsKKyAgX191NjQgcmVzZXJ2ZWQzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgcmVzZXJ2ZWQ0OworICBfX3U2NCByZXNlcnZlZDU7CisgIF9fdTY0IHJlc2VydmVkNjsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBDWExfU1RBUlRfV09SS19BTVIgMHgwMDAwMDAwMDAwMDAwMDAxVUxMCisjZGVmaW5lIENYTF9TVEFSVF9XT1JLX05VTV9JUlFTIDB4MDAwMDAwMDAwMDAwMDAwMlVMTAorI2RlZmluZSBDWExfU1RBUlRfV09SS19BTEwgKENYTF9TVEFSVF9XT1JLX0FNUiB8IENYTF9TVEFSVF9XT1JLX05VTV9JUlFTKQorI2RlZmluZSBDWExfTUFHSUMgMHhDQQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgQ1hMX0lPQ1RMX1NUQVJUX1dPUksgX0lPVyhDWExfTUFHSUMsIDB4MDAsIHN0cnVjdCBjeGxfaW9jdGxfc3RhcnRfd29yaykKKyNkZWZpbmUgQ1hMX0lPQ1RMX0dFVF9QUk9DRVNTX0VMRU1FTlQgX0lPUihDWExfTUFHSUMsIDB4MDEsIF9fdTMyKQorI2RlZmluZSBDWExfUkVBRF9NSU5fU0laRSAweDEwMDAKK2VudW0gY3hsX2V2ZW50X3R5cGUgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgQ1hMX0VWRU5UX1JFU0VSVkVEID0gMCwKKyAgQ1hMX0VWRU5UX0FGVV9JTlRFUlJVUFQgPSAxLAorICBDWExfRVZFTlRfREFUQV9TVE9SQUdFID0gMiwKKyAgQ1hMX0VWRU5UX0FGVV9FUlJPUiA9IDMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKK3N0cnVjdCBjeGxfZXZlbnRfaGVhZGVyIHsKKyAgX191MTYgdHlwZTsKKyAgX191MTYgc2l6ZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTE2IHByb2Nlc3NfZWxlbWVudDsKKyAgX191MTYgcmVzZXJ2ZWQxOworfTsKK3N0cnVjdCBjeGxfZXZlbnRfYWZ1X2ludGVycnVwdCB7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UxNiBmbGFnczsKKyAgX191MTYgaXJxOworICBfX3UzMiByZXNlcnZlZDE7Cit9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK3N0cnVjdCBjeGxfZXZlbnRfZGF0YV9zdG9yYWdlIHsKKyAgX191MTYgZmxhZ3M7CisgIF9fdTE2IHJlc2VydmVkMTsKKyAgX191MzIgcmVzZXJ2ZWQyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgYWRkcjsKKyAgX191NjQgZHNpc3I7CisgIF9fdTY0IHJlc2VydmVkMzsKK307CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IGN4bF9ldmVudF9hZnVfZXJyb3IgeworICBfX3UxNiBmbGFnczsKKyAgX191MTYgcmVzZXJ2ZWQxOworICBfX3UzMiByZXNlcnZlZDI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBlcnJvcjsKK307CitzdHJ1Y3QgY3hsX2V2ZW50IHsKKyAgc3RydWN0IGN4bF9ldmVudF9oZWFkZXIgaGVhZGVyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5pb24geworICAgIHN0cnVjdCBjeGxfZXZlbnRfYWZ1X2ludGVycnVwdCBpcnE7CisgICAgc3RydWN0IGN4bF9ldmVudF9kYXRhX3N0b3JhZ2UgZmF1bHQ7CisgICAgc3RydWN0IGN4bF9ldmVudF9hZnVfZXJyb3IgYWZ1X2Vycm9yOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgfTsKK307CisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbXRkL2luZnRsLXVzZXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbXRkL2luZnRsLXVzZXIuaAppbmRleCA5MjZkZTAxLi44NWVmMGI1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL210ZC9pbmZ0bC11c2VyLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9tdGQvaW5mdGwtdXNlci5oCkBAIC0yNCw3MiArMjQsNzIgQEAKICNkZWZpbmUgUEVSQ0VOVFVTRUQgOTgKICNkZWZpbmUgU0VDVE9SU0laRSA1MTIKIHN0cnVjdCBpbmZ0bF9iY2kgewotIF9fdTggRUNDc2lnWzZdOworICBfX3U4IEVDQ3NpZ1s2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBTdGF0dXM7Ci0gX191OCBTdGF0dXMxOworICBfX3U4IFN0YXR1czsKKyAgX191OCBTdGF0dXMxOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBpbmZ0bF91bml0aGVhZDEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiB2aXJ0dWFsVW5pdE5vOwotIF9fdTE2IHByZXZVbml0Tm87Ci0gX191OCBBTkFDOwotIF9fdTggTkFDczsKKyAgX191MTYgdmlydHVhbFVuaXRObzsKKyAgX191MTYgcHJldlVuaXRObzsKKyAgX191OCBBTkFDOworICBfX3U4IE5BQ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcGFyaXR5UGVyRmllbGQ7Ci0gX191OCBkaXNjYXJkZWQ7CisgIF9fdTggcGFyaXR5UGVyRmllbGQ7CisgIF9fdTggZGlzY2FyZGVkOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBpbmZ0bF91bml0aGVhZDIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBhcml0eVBlckZpZWxkOwotIF9fdTggQU5BQzsKLSBfX3UxNiBwcmV2VW5pdE5vOwotIF9fdTE2IHZpcnR1YWxVbml0Tm87CisgIF9fdTggcGFyaXR5UGVyRmllbGQ7CisgIF9fdTggQU5BQzsKKyAgX191MTYgcHJldlVuaXRObzsKKyAgX191MTYgdmlydHVhbFVuaXRObzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBOQUNzOwotIF9fdTggZGlzY2FyZGVkOworICBfX3U4IE5BQ3M7CisgIF9fdTggZGlzY2FyZGVkOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBpbmZ0bF91bml0dGFpbCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggUmVzZXJ2ZWRbNF07Ci0gX191MTYgRXJhc2VNYXJrOwotIF9fdTE2IEVyYXNlTWFyazE7CisgIF9fdTggUmVzZXJ2ZWRbNF07CisgIF9fdTE2IEVyYXNlTWFyazsKKyAgX191MTYgRXJhc2VNYXJrMTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdW5pb24gaW5mdGxfdWNpIHsKLSBzdHJ1Y3QgaW5mdGxfdW5pdGhlYWQxIGE7Ci0gc3RydWN0IGluZnRsX3VuaXRoZWFkMiBiOwotIHN0cnVjdCBpbmZ0bF91bml0dGFpbCBjOworICBzdHJ1Y3QgaW5mdGxfdW5pdGhlYWQxIGE7CisgIHN0cnVjdCBpbmZ0bF91bml0aGVhZDIgYjsKKyAgc3RydWN0IGluZnRsX3VuaXR0YWlsIGM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpbmZ0bF9vb2IgewotIHN0cnVjdCBpbmZ0bF9iY2kgYjsKLSB1bmlvbiBpbmZ0bF91Y2kgdTsKKyAgc3RydWN0IGluZnRsX2JjaSBiOworICB1bmlvbiBpbmZ0bF91Y2kgdTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IElORlRMUGFydGl0aW9uIHsKLSBfX3UzMiB2aXJ0dWFsVW5pdHM7Ci0gX191MzIgZmlyc3RVbml0OworICBfX3UzMiB2aXJ0dWFsVW5pdHM7CisgIF9fdTMyIGZpcnN0VW5pdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGFzdFVuaXQ7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgc3BhcmVVbml0czsKLSBfX3UzMiBSZXNlcnZlZDA7CisgIF9fdTMyIGxhc3RVbml0OworICBfX3UzMiBmbGFnczsKKyAgX191MzIgc3BhcmVVbml0czsKKyAgX191MzIgUmVzZXJ2ZWQwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBSZXNlcnZlZDE7CisgIF9fdTMyIFJlc2VydmVkMTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgSU5GVExNZWRpYUhlYWRlciB7Ci0gY2hhciBib290UmVjb3JkSURbOF07CisgIGNoYXIgYm9vdFJlY29yZElEWzhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBOb09mQm9vdEltYWdlQmxvY2tzOwotIF9fdTMyIE5vT2ZCaW5hcnlQYXJ0aXRpb25zOwotIF9fdTMyIE5vT2ZCRFRMUGFydGl0aW9uczsKLSBfX3UzMiBCbG9ja011bHRpcGxpZXJCaXRzOworICBfX3UzMiBOb09mQm9vdEltYWdlQmxvY2tzOworICBfX3UzMiBOb09mQmluYXJ5UGFydGl0aW9uczsKKyAgX191MzIgTm9PZkJEVExQYXJ0aXRpb25zOworICBfX3UzMiBCbG9ja011bHRpcGxpZXJCaXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBGb3JtYXRGbGFnczsKLSBfX3UzMiBPc2FrVmVyc2lvbjsKLSBfX3UzMiBQZXJjZW50VXNlZDsKLSBzdHJ1Y3QgSU5GVExQYXJ0aXRpb24gUGFydGl0aW9uc1s0XTsKKyAgX191MzIgRm9ybWF0RmxhZ3M7CisgIF9fdTMyIE9zYWtWZXJzaW9uOworICBfX3UzMiBQZXJjZW50VXNlZDsKKyAgc3RydWN0IElORlRMUGFydGl0aW9uIFBhcnRpdGlvbnNbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKICNkZWZpbmUgSU5GVExfQklOQVJZIDB4MjAwMDAwMDAKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvbXRkL210ZC1hYmkuaCBiL2xpYmMva2VybmVsL3VhcGkvbXRkL210ZC1hYmkuaAppbmRleCAwYmI3YzYxLi40ZmUxOTczIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL210ZC9tdGQtYWJpLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9tdGQvbXRkLWFiaS5oCkBAIC0yMSw0NCArMjEsNDQgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGVyYXNlX2luZm9fdXNlciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN0YXJ0OwotIF9fdTMyIGxlbmd0aDsKKyAgX191MzIgc3RhcnQ7CisgIF9fdTMyIGxlbmd0aDsKIH07CiBzdHJ1Y3QgZXJhc2VfaW5mb191c2VyNjQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzdGFydDsKLSBfX3U2NCBsZW5ndGg7CisgIF9fdTY0IHN0YXJ0OworICBfX3U2NCBsZW5ndGg7CiB9Owogc3RydWN0IG10ZF9vb2JfYnVmIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3RhcnQ7Ci0gX191MzIgbGVuZ3RoOwotIHVuc2lnbmVkIGNoYXIgX191c2VyICpwdHI7CisgIF9fdTMyIHN0YXJ0OworICBfX3UzMiBsZW5ndGg7CisgIHVuc2lnbmVkIGNoYXIgX191c2VyICogcHRyOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbXRkX29vYl9idWY2NCB7Ci0gX191NjQgc3RhcnQ7Ci0gX191MzIgcGFkOwotIF9fdTMyIGxlbmd0aDsKKyAgX191NjQgc3RhcnQ7CisgIF9fdTMyIHBhZDsKKyAgX191MzIgbGVuZ3RoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1c3JfcHRyOworICBfX3U2NCB1c3JfcHRyOwogfTsKIGVudW0gewotIE1URF9PUFNfUExBQ0VfT09CID0gMCwKKyAgTVREX09QU19QTEFDRV9PT0IgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNVERfT1BTX0FVVE9fT09CID0gMSwKLSBNVERfT1BTX1JBVyA9IDIsCisgIE1URF9PUFNfQVVUT19PT0IgPSAxLAorICBNVERfT1BTX1JBVyA9IDIsCiB9Owogc3RydWN0IG10ZF93cml0ZV9yZXEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBzdGFydDsKLSBfX3U2NCBsZW47Ci0gX191NjQgb29ibGVuOwotIF9fdTY0IHVzcl9kYXRhOworICBfX3U2NCBzdGFydDsKKyAgX191NjQgbGVuOworICBfX3U2NCBvb2JsZW47CisgIF9fdTY0IHVzcl9kYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB1c3Jfb29iOwotIF9fdTggbW9kZTsKLSBfX3U4IHBhZGRpbmdbN107CisgIF9fdTY0IHVzcl9vb2I7CisgIF9fdTggbW9kZTsKKyAgX191OCBwYWRkaW5nWzddOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1URF9BQlNFTlQgMApAQCAtODEsMTA1ICs4MSwxMDYgQEAKICNkZWZpbmUgTVREX0NBUF9OT1JGTEFTSCAoTVREX1dSSVRFQUJMRSB8IE1URF9CSVRfV1JJVEVBQkxFKQogI2RlZmluZSBNVERfQ0FQX05BTkRGTEFTSCAoTVREX1dSSVRFQUJMRSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1URF9DQVBfTlZSQU0gKE1URF9XUklURUFCTEUgfCBNVERfQklUX1dSSVRFQUJMRSB8IE1URF9OT19FUkFTRSkKICNkZWZpbmUgTVREX05BTkRFQ0NfT0ZGIDAKICNkZWZpbmUgTVREX05BTkRFQ0NfUExBQ0UgMQogI2RlZmluZSBNVERfTkFOREVDQ19BVVRPUExBQ0UgMgotI2RlZmluZSBNVERfTkFOREVDQ19QTEFDRU9OTFkgMwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTVREX05BTkRFQ0NfUExBQ0VPTkxZIDMKICNkZWZpbmUgTVREX05BTkRFQ0NfQVVUT1BMX1VTUiA0CiAjZGVmaW5lIE1URF9PVFBfT0ZGIDAKICNkZWZpbmUgTVREX09UUF9GQUNUT1JZIDEKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1URF9PVFBfVVNFUiAyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG10ZF9pbmZvX3VzZXIgewotIF9fdTggdHlwZTsKLSBfX3UzMiBmbGFnczsKLSBfX3UzMiBzaXplOworICBfX3U4IHR5cGU7CisgIF9fdTMyIGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlcmFzZXNpemU7Ci0gX191MzIgd3JpdGVzaXplOwotIF9fdTMyIG9vYnNpemU7Ci0gX191NjQgcGFkZGluZzsKKyAgX191MzIgc2l6ZTsKKyAgX191MzIgZXJhc2VzaXplOworICBfX3UzMiB3cml0ZXNpemU7CisgIF9fdTMyIG9vYnNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBwYWRkaW5nOwogfTsKIHN0cnVjdCByZWdpb25faW5mb191c2VyIHsKLSBfX3UzMiBvZmZzZXQ7Ci0gX191MzIgZXJhc2VzaXplOworICBfX3UzMiBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG51bWJsb2NrczsKLSBfX3UzMiByZWdpb25pbmRleDsKKyAgX191MzIgZXJhc2VzaXplOworICBfX3UzMiBudW1ibG9ja3M7CisgIF9fdTMyIHJlZ2lvbmluZGV4OwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgb3RwX2luZm8geworICBfX3UzMiBzdGFydDsKKyAgX191MzIgbGVuZ3RoOworICBfX3UzMiBsb2NrZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN0YXJ0OwotIF9fdTMyIGxlbmd0aDsKLSBfX3UzMiBsb2NrZWQ7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgTUVNR0VUSU5GTyBfSU9SKCdNJywgMSwgc3RydWN0IG10ZF9pbmZvX3VzZXIpCiAjZGVmaW5lIE1FTUVSQVNFIF9JT1coJ00nLCAyLCBzdHJ1Y3QgZXJhc2VfaW5mb191c2VyKQogI2RlZmluZSBNRU1XUklURU9PQiBfSU9XUignTScsIDMsIHN0cnVjdCBtdGRfb29iX2J1ZikKLSNkZWZpbmUgTUVNUkVBRE9PQiBfSU9XUignTScsIDQsIHN0cnVjdCBtdGRfb29iX2J1ZikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE1FTVJFQURPT0IgX0lPV1IoJ00nLCA0LCBzdHJ1Y3QgbXRkX29vYl9idWYpCiAjZGVmaW5lIE1FTUxPQ0sgX0lPVygnTScsIDUsIHN0cnVjdCBlcmFzZV9pbmZvX3VzZXIpCiAjZGVmaW5lIE1FTVVOTE9DSyBfSU9XKCdNJywgNiwgc3RydWN0IGVyYXNlX2luZm9fdXNlcikKICNkZWZpbmUgTUVNR0VUUkVHSU9OQ09VTlQgX0lPUignTScsIDcsIGludCkKLSNkZWZpbmUgTUVNR0VUUkVHSU9OSU5GTyBfSU9XUignTScsIDgsIHN0cnVjdCByZWdpb25faW5mb191c2VyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUVNR0VUUkVHSU9OSU5GTyBfSU9XUignTScsIDgsIHN0cnVjdCByZWdpb25faW5mb191c2VyKQogI2RlZmluZSBNRU1HRVRPT0JTRUwgX0lPUignTScsIDEwLCBzdHJ1Y3QgbmFuZF9vb2JpbmZvKQogI2RlZmluZSBNRU1HRVRCQURCTE9DSyBfSU9XKCdNJywgMTEsIF9fa2VybmVsX2xvZmZfdCkKICNkZWZpbmUgTUVNU0VUQkFEQkxPQ0sgX0lPVygnTScsIDEyLCBfX2tlcm5lbF9sb2ZmX3QpCi0jZGVmaW5lIE9UUFNFTEVDVCBfSU9SKCdNJywgMTMsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIE9UUFNFTEVDVCBfSU9SKCdNJywgMTMsIGludCkKICNkZWZpbmUgT1RQR0VUUkVHSU9OQ09VTlQgX0lPVygnTScsIDE0LCBpbnQpCiAjZGVmaW5lIE9UUEdFVFJFR0lPTklORk8gX0lPVygnTScsIDE1LCBzdHJ1Y3Qgb3RwX2luZm8pCiAjZGVmaW5lIE9UUExPQ0sgX0lPUignTScsIDE2LCBzdHJ1Y3Qgb3RwX2luZm8pCi0jZGVmaW5lIEVDQ0dFVExBWU9VVCBfSU9SKCdNJywgMTcsIHN0cnVjdCBuYW5kX2VjY2xheW91dF91c2VyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgRUNDR0VUTEFZT1VUIF9JT1IoJ00nLCAxNywgc3RydWN0IG5hbmRfZWNjbGF5b3V0X3VzZXIpCiAjZGVmaW5lIEVDQ0dFVFNUQVRTIF9JT1IoJ00nLCAxOCwgc3RydWN0IG10ZF9lY2Nfc3RhdHMpCiAjZGVmaW5lIE1UREZJTEVNT0RFIF9JTygnTScsIDE5KQogI2RlZmluZSBNRU1FUkFTRTY0IF9JT1coJ00nLCAyMCwgc3RydWN0IGVyYXNlX2luZm9fdXNlcjY0KQotI2RlZmluZSBNRU1XUklURU9PQjY0IF9JT1dSKCdNJywgMjEsIHN0cnVjdCBtdGRfb29iX2J1ZjY0KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgTUVNV1JJVEVPT0I2NCBfSU9XUignTScsIDIxLCBzdHJ1Y3QgbXRkX29vYl9idWY2NCkKICNkZWZpbmUgTUVNUkVBRE9PQjY0IF9JT1dSKCdNJywgMjIsIHN0cnVjdCBtdGRfb29iX2J1ZjY0KQogI2RlZmluZSBNRU1JU0xPQ0tFRCBfSU9SKCdNJywgMjMsIHN0cnVjdCBlcmFzZV9pbmZvX3VzZXIpCiAjZGVmaW5lIE1FTVdSSVRFIF9JT1dSKCdNJywgMjQsIHN0cnVjdCBtdGRfd3JpdGVfcmVxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBuYW5kX29vYmluZm8geworICBfX3UzMiB1c2VlY2M7CisgIF9fdTMyIGVjY2J5dGVzOworICBfX3UzMiBvb2JmcmVlWzhdWzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB1c2VlY2M7Ci0gX191MzIgZWNjYnl0ZXM7Ci0gX191MzIgb29iZnJlZVs4XVsyXTsKLSBfX3UzMiBlY2Nwb3NbMzJdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZWNjcG9zWzMyXTsKIH07CiBzdHJ1Y3QgbmFuZF9vb2JmcmVlIHsKLSBfX3UzMiBvZmZzZXQ7Ci0gX191MzIgbGVuZ3RoOworICBfX3UzMiBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3UzMiBsZW5ndGg7CiB9OwogI2RlZmluZSBNVERfTUFYX09PQkZSRUVfRU5UUklFUyA4CiAjZGVmaW5lIE1URF9NQVhfRUNDUE9TX0VOVFJJRVMgNjQKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgbmFuZF9lY2NsYXlvdXRfdXNlciB7CisgIF9fdTMyIGVjY2J5dGVzOworICBfX3UzMiBlY2Nwb3NbTVREX01BWF9FQ0NQT1NfRU5UUklFU107CisgIF9fdTMyIG9vYmF2YWlsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlY2NieXRlczsKLSBfX3UzMiBlY2Nwb3NbTVREX01BWF9FQ0NQT1NfRU5UUklFU107Ci0gX191MzIgb29iYXZhaWw7Ci0gc3RydWN0IG5hbmRfb29iZnJlZSBvb2JmcmVlW01URF9NQVhfT09CRlJFRV9FTlRSSUVTXTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHN0cnVjdCBuYW5kX29vYmZyZWUgb29iZnJlZVtNVERfTUFYX09PQkZSRUVfRU5UUklFU107CiB9Owogc3RydWN0IG10ZF9lY2Nfc3RhdHMgewotIF9fdTMyIGNvcnJlY3RlZDsKLSBfX3UzMiBmYWlsZWQ7CisgIF9fdTMyIGNvcnJlY3RlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYmFkYmxvY2tzOwotIF9fdTMyIGJidGJsb2NrczsKKyAgX191MzIgZmFpbGVkOworICBfX3UzMiBiYWRibG9ja3M7CisgIF9fdTMyIGJidGJsb2NrczsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBtdGRfZmlsZV9tb2RlcyB7CisgIE1URF9GSUxFX01PREVfTk9STUFMID0gTVREX09UUF9PRkYsCisgIE1URF9GSUxFX01PREVfT1RQX0ZBQ1RPUlkgPSBNVERfT1RQX0ZBQ1RPUlksCisgIE1URF9GSUxFX01PREVfT1RQX1VTRVIgPSBNVERfT1RQX1VTRVIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIE1URF9GSUxFX01PREVfTk9STUFMID0gTVREX09UUF9PRkYsCi0gTVREX0ZJTEVfTU9ERV9PVFBfRkFDVE9SWSA9IE1URF9PVFBfRkFDVE9SWSwKLSBNVERfRklMRV9NT0RFX09UUF9VU0VSID0gTVREX09UUF9VU0VSLAotIE1URF9GSUxFX01PREVfUkFXLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgTVREX0ZJTEVfTU9ERV9SQVcsCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL210ZC9uZnRsLXVzZXIuaCBiL2xpYmMva2VybmVsL3VhcGkvbXRkL25mdGwtdXNlci5oCmluZGV4IGRjN2I4OTYuLjk4YTdlOGEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvbXRkL25mdGwtdXNlci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbXRkL25mdGwtdXNlci5oCkBAIC0yMSw0OSArMjEsNDkgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IG5mdGxfYmNpIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBFQ0NTaWdbNl07Ci0gX191OCBTdGF0dXM7Ci0gX191OCBTdGF0dXMxOwotfV9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworICB1bnNpZ25lZCBjaGFyIEVDQ1NpZ1s2XTsKKyAgX191OCBTdGF0dXM7CisgIF9fdTggU3RhdHVzMTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IG5mdGxfdWNpMCB7Ci0gX191MTYgVmlydFVuaXROdW07Ci0gX191MTYgUmVwbFVuaXROdW07Ci0gX191MTYgU3BhcmVWaXJ0VW5pdE51bTsKKyAgX191MTYgVmlydFVuaXROdW07CisgIF9fdTE2IFJlcGxVbml0TnVtOworICBfX3UxNiBTcGFyZVZpcnRVbml0TnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBTcGFyZVJlcGxVbml0TnVtOworICBfX3UxNiBTcGFyZVJlcGxVbml0TnVtOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIHN0cnVjdCBuZnRsX3VjaTEgewotIF9fdTMyIFdlYXJJbmZvOworICBfX3UzMiBXZWFySW5mbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgRXJhc2VNYXJrOwotIF9fdTE2IEVyYXNlTWFyazE7CisgIF9fdTE2IEVyYXNlTWFyazsKKyAgX191MTYgRXJhc2VNYXJrMTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3QgbmZ0bF91Y2kyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgRm9sZE1hcms7Ci0gX191MTYgRm9sZE1hcmsxOwotIF9fdTMyIHVudXNlZDsKKyAgX191MTYgRm9sZE1hcms7CisgIF9fdTE2IEZvbGRNYXJrMTsKKyAgX191MzIgdW51c2VkOwogfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB1bmlvbiBuZnRsX3VjaSB7Ci0gc3RydWN0IG5mdGxfdWNpMCBhOwotIHN0cnVjdCBuZnRsX3VjaTEgYjsKLSBzdHJ1Y3QgbmZ0bF91Y2kyIGM7CisgIHN0cnVjdCBuZnRsX3VjaTAgYTsKKyAgc3RydWN0IG5mdGxfdWNpMSBiOworICBzdHJ1Y3QgbmZ0bF91Y2kyIGM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBuZnRsX29vYiB7Ci0gc3RydWN0IG5mdGxfYmNpIGI7Ci0gdW5pb24gbmZ0bF91Y2kgdTsKKyAgc3RydWN0IG5mdGxfYmNpIGI7CisgIHVuaW9uIG5mdGxfdWNpIHU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBORlRMTWVkaWFIZWFkZXIgewotIGNoYXIgRGF0YU9yZ0lEWzZdOwotIF9fdTE2IE51bUVyYXNlVW5pdHM7CisgIGNoYXIgRGF0YU9yZ0lEWzZdOworICBfX3UxNiBOdW1FcmFzZVVuaXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBGaXJzdFBoeXNpY2FsRVVOOwotIF9fdTMyIEZvcm1hdHRlZFNpemU7Ci0gdW5zaWduZWQgY2hhciBVbml0U2l6ZUZhY3RvcjsKKyAgX191MTYgRmlyc3RQaHlzaWNhbEVVTjsKKyAgX191MzIgRm9ybWF0dGVkU2l6ZTsKKyAgdW5zaWduZWQgY2hhciBVbml0U2l6ZUZhY3RvcjsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBNQVhfRVJBU0VfWk9ORVMgKDgxOTIgLSA1MTIpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL210ZC91YmktdXNlci5oIGIvbGliYy9rZXJuZWwvdWFwaS9tdGQvdWJpLXVzZXIuaAppbmRleCBmYTZiZTMyLi5lMDU1MTcyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL210ZC91YmktdXNlci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvbXRkL3ViaS11c2VyLmgKQEAgLTE5LDkgKzE5LDkgQEAKICNpZm5kZWYgX19VQklfVVNFUl9IX18KICNkZWZpbmUgX19VQklfVVNFUl9IX18KICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgotI2RlZmluZSBVQklfVk9MX05VTV9BVVRPICgtMSkKKyNkZWZpbmUgVUJJX1ZPTF9OVU1fQVVUTyAoLSAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgVUJJX0RFVl9OVU1fQVVUTyAoLTEpCisjZGVmaW5lIFVCSV9ERVZfTlVNX0FVVE8gKC0gMSkKICNkZWZpbmUgVUJJX01BWF9WT0xVTUVfTkFNRSAxMjcKICNkZWZpbmUgVUJJX0lPQ19NQUdJQyAnbycKICNkZWZpbmUgVUJJX0lPQ01LVk9MIF9JT1coVUJJX0lPQ19NQUdJQywgMCwgc3RydWN0IHViaV9ta3ZvbF9yZXEpCkBAIC00Miw3NSArNDIsODIgQEAKICNkZWZpbmUgVUJJX0lPQ0VCVU5NQVAgX0lPVyhVQklfVk9MX0lPQ19NQUdJQywgNCwgX19zMzIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBVQklfSU9DRUJJU01BUCBfSU9SKFVCSV9WT0xfSU9DX01BR0lDLCA1LCBfX3MzMikKLSNkZWZpbmUgVUJJX0lPQ1NFVFZPTFBST1AgX0lPVyhVQklfVk9MX0lPQ19NQUdJQywgNiwgICBzdHJ1Y3QgdWJpX3NldF92b2xfcHJvcF9yZXEpCisjZGVmaW5lIFVCSV9JT0NTRVRWT0xQUk9QIF9JT1coVUJJX1ZPTF9JT0NfTUFHSUMsIDYsIHN0cnVjdCB1Ymlfc2V0X3ZvbF9wcm9wX3JlcSkKKyNkZWZpbmUgVUJJX0lPQ1ZPTENSQkxLIF9JT1coVUJJX1ZPTF9JT0NfTUFHSUMsIDcsIHN0cnVjdCB1YmlfYmxrY3JlYXRlX3JlcSkKKyNkZWZpbmUgVUJJX0lPQ1ZPTFJNQkxLIF9JTyhVQklfVk9MX0lPQ19NQUdJQywgOCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIE1BWF9VQklfTVREX05BTUVfTEVOIDEyNwogI2RlZmluZSBVQklfTUFYX1JOVk9MIDMyCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gVUJJX0RZTkFNSUNfVk9MVU1FID0gMywKLSBVQklfU1RBVElDX1ZPTFVNRSA9IDQsCisgIFVCSV9EWU5BTUlDX1ZPTFVNRSA9IDMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBVQklfU1RBVElDX1ZPTFVNRSA9IDQsCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFVCSV9WT0xfUFJPUF9ESVJFQ1RfV1JJVEUgPSAxLAorICBVQklfVk9MX1BST1BfRElSRUNUX1dSSVRFID0gMSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHViaV9hdHRhY2hfcmVxIHsKKyAgX19zMzIgdWJpX251bTsKKyAgX19zMzIgbXRkX251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgdWJpX251bTsKLSBfX3MzMiBtdGRfbnVtOwotIF9fczMyIHZpZF9oZHJfb2Zmc2V0OwotIF9fczE2IG1heF9iZWJfcGVyMTAyNDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zOCBwYWRkaW5nWzEwXTsKKyAgX19zMzIgdmlkX2hkcl9vZmZzZXQ7CisgIF9fczE2IG1heF9iZWJfcGVyMTAyNDsKKyAgX19zOCBwYWRkaW5nWzEwXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHViaV9ta3ZvbF9yZXEgewotIF9fczMyIHZvbF9pZDsKKyAgX19zMzIgdm9sX2lkOworICBfX3MzMiBhbGlnbm1lbnQ7CisgIF9fczY0IGJ5dGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiBhbGlnbm1lbnQ7Ci0gX19zNjQgYnl0ZXM7Ci0gX19zOCB2b2xfdHlwZTsKLSBfX3M4IHBhZGRpbmcxOworICBfX3M4IHZvbF90eXBlOworICBfX3M4IHBhZGRpbmcxOworICBfX3MxNiBuYW1lX2xlbjsKKyAgX19zOCBwYWRkaW5nMls0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMTYgbmFtZV9sZW47Ci0gX19zOCBwYWRkaW5nMls0XTsKLSBjaGFyIG5hbWVbVUJJX01BWF9WT0xVTUVfTkFNRSArIDFdOworICBjaGFyIG5hbWVbVUJJX01BWF9WT0xVTUVfTkFNRSArIDFdOwogfSBfX3BhY2tlZDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgdWJpX3Jzdm9sX3JlcSB7Ci0gX19zNjQgYnl0ZXM7Ci0gX19zMzIgdm9sX2lkOwotfSBfX3BhY2tlZDsKKyAgX19zNjQgYnl0ZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3MzMiB2b2xfaWQ7Cit9IF9fcGFja2VkOwogc3RydWN0IHViaV9ybnZvbF9yZXEgewotIF9fczMyIGNvdW50OwotIF9fczggcGFkZGluZzFbMTJdOwotIHN0cnVjdCB7CisgIF9fczMyIGNvdW50OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3MzMiB2b2xfaWQ7Ci0gX19zMTYgbmFtZV9sZW47Ci0gX19zOCBwYWRkaW5nMlsyXTsKLSBjaGFyIG5hbWVbVUJJX01BWF9WT0xVTUVfTkFNRSArIDFdOworICBfX3M4IHBhZGRpbmcxWzEyXTsKKyAgc3RydWN0IHsKKyAgICBfX3MzMiB2b2xfaWQ7CisgICAgX19zMTYgbmFtZV9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gZW50c1tVQklfTUFYX1JOVk9MXTsKKyAgICBfX3M4IHBhZGRpbmcyWzJdOworICAgIGNoYXIgbmFtZVtVQklfTUFYX1ZPTFVNRV9OQU1FICsgMV07CisgIH0gZW50c1tVQklfTUFYX1JOVk9MXTsKIH0gX19wYWNrZWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHViaV9sZWJfY2hhbmdlX3JlcSB7Ci0gX19zMzIgbG51bTsKKyAgX19zMzIgbG51bTsKKyAgX19zMzIgYnl0ZXM7CisgIF9fczggZHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIGJ5dGVzOwotIF9fczggZHR5cGU7Ci0gX19zOCBwYWRkaW5nWzddOworICBfX3M4IHBhZGRpbmdbN107CiB9IF9fcGFja2VkOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCB1YmlfbWFwX3JlcSB7Ci0gX19zMzIgbG51bTsKLSBfX3M4IGR0eXBlOwotIF9fczggcGFkZGluZ1szXTsKKyAgX19zMzIgbG51bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fczggZHR5cGU7CisgIF9fczggcGFkZGluZ1szXTsKIH0gX19wYWNrZWQ7CiBzdHJ1Y3QgdWJpX3NldF92b2xfcHJvcF9yZXEgewotIF9fdTggcHJvcGVydHk7Ci0gX191OCBwYWRkaW5nWzddOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCB2YWx1ZTsKKyAgX191OCBwcm9wZXJ0eTsKKyAgX191OCBwYWRkaW5nWzddOworICBfX3U2NCB2YWx1ZTsKK30gX19wYWNrZWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworc3RydWN0IHViaV9ibGtjcmVhdGVfcmVxIHsKKyAgX19zOCBwYWRkaW5nWzEyOF07CiB9IF9fcGFja2VkOwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9yZG1hL2liX3VzZXJfY20uaCBiL2xpYmMva2VybmVsL3VhcGkvcmRtYS9pYl91c2VyX2NtLmgKaW5kZXggMGE5ZmYyNi4uYzQ3NWZmYyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9yZG1hL2liX3VzZXJfY20uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3JkbWEvaWJfdXNlcl9jbS5oCkBAIC0yMywyNzcgKzIzLDI3NyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgSUJfVVNFUl9DTV9BQklfVkVSU0lPTiA1CiBlbnVtIHsKLSBJQl9VU0VSX0NNX0NNRF9DUkVBVEVfSUQsCi0gSUJfVVNFUl9DTV9DTURfREVTVFJPWV9JRCwKKyAgSUJfVVNFUl9DTV9DTURfQ1JFQVRFX0lELAorICBJQl9VU0VSX0NNX0NNRF9ERVNUUk9ZX0lELAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQl9VU0VSX0NNX0NNRF9BVFRSX0lELAotIElCX1VTRVJfQ01fQ01EX0xJU1RFTiwKLSBJQl9VU0VSX0NNX0NNRF9OT1RJRlksCi0gSUJfVVNFUl9DTV9DTURfU0VORF9SRVEsCisgIElCX1VTRVJfQ01fQ01EX0FUVFJfSUQsCisgIElCX1VTRVJfQ01fQ01EX0xJU1RFTiwKKyAgSUJfVVNFUl9DTV9DTURfTk9USUZZLAorICBJQl9VU0VSX0NNX0NNRF9TRU5EX1JFUSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUJfVVNFUl9DTV9DTURfU0VORF9SRVAsCi0gSUJfVVNFUl9DTV9DTURfU0VORF9SVFUsCi0gSUJfVVNFUl9DTV9DTURfU0VORF9EUkVRLAotIElCX1VTRVJfQ01fQ01EX1NFTkRfRFJFUCwKKyAgSUJfVVNFUl9DTV9DTURfU0VORF9SRVAsCisgIElCX1VTRVJfQ01fQ01EX1NFTkRfUlRVLAorICBJQl9VU0VSX0NNX0NNRF9TRU5EX0RSRVEsCisgIElCX1VTRVJfQ01fQ01EX1NFTkRfRFJFUCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUJfVVNFUl9DTV9DTURfU0VORF9SRUosCi0gSUJfVVNFUl9DTV9DTURfU0VORF9NUkEsCi0gSUJfVVNFUl9DTV9DTURfU0VORF9MQVAsCi0gSUJfVVNFUl9DTV9DTURfU0VORF9BUFIsCisgIElCX1VTRVJfQ01fQ01EX1NFTkRfUkVKLAorICBJQl9VU0VSX0NNX0NNRF9TRU5EX01SQSwKKyAgSUJfVVNFUl9DTV9DTURfU0VORF9MQVAsCisgIElCX1VTRVJfQ01fQ01EX1NFTkRfQVBSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQl9VU0VSX0NNX0NNRF9TRU5EX1NJRFJfUkVRLAotIElCX1VTRVJfQ01fQ01EX1NFTkRfU0lEUl9SRVAsCi0gSUJfVVNFUl9DTV9DTURfRVZFTlQsCi0gSUJfVVNFUl9DTV9DTURfSU5JVF9RUF9BVFRSLAorICBJQl9VU0VSX0NNX0NNRF9TRU5EX1NJRFJfUkVRLAorICBJQl9VU0VSX0NNX0NNRF9TRU5EX1NJRFJfUkVQLAorICBJQl9VU0VSX0NNX0NNRF9FVkVOVCwKKyAgSUJfVVNFUl9DTV9DTURfSU5JVF9RUF9BVFRSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdWNtX2NtZF9oZHIgewotIF9fdTMyIGNtZDsKLSBfX3UxNiBpbjsKKyAgX191MzIgY21kOworICBfX3UxNiBpbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgb3V0OworICBfX3UxNiBvdXQ7CiB9Owogc3RydWN0IGliX3VjbV9jcmVhdGVfaWQgewotIF9fdTY0IHVpZDsKKyAgX191NjQgdWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXNwb25zZTsKKyAgX191NjQgcmVzcG9uc2U7CiB9Owogc3RydWN0IGliX3VjbV9jcmVhdGVfaWRfcmVzcCB7Ci0gX191MzIgaWQ7CisgIF9fdTMyIGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdWNtX2Rlc3Ryb3lfaWQgewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTMyIGlkOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHJlc2VydmVkOworICBfX3UzMiByZXNlcnZlZDsKIH07CiBzdHJ1Y3QgaWJfdWNtX2Rlc3Ryb3lfaWRfcmVzcCB7Ci0gX191MzIgZXZlbnRzX3JlcG9ydGVkOworICBfX3UzMiBldmVudHNfcmVwb3J0ZWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpYl91Y21fYXR0cl9pZCB7Ci0gX191NjQgcmVzcG9uc2U7Ci0gX191MzIgaWQ7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTMyIHJlc2VydmVkOwogfTsKIHN0cnVjdCBpYl91Y21fYXR0cl9pZF9yZXNwIHsKLSBfX2JlNjQgc2VydmljZV9pZDsKKyAgX19iZTY0IHNlcnZpY2VfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmU2NCBzZXJ2aWNlX21hc2s7Ci0gX19iZTMyIGxvY2FsX2lkOwotIF9fYmUzMiByZW1vdGVfaWQ7CisgIF9fYmU2NCBzZXJ2aWNlX21hc2s7CisgIF9fYmUzMiBsb2NhbF9pZDsKKyAgX19iZTMyIHJlbW90ZV9pZDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3VjbV9pbml0X3FwX2F0dHIgewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTMyIGlkOwotIF9fdTMyIHFwX3N0YXRlOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgaWQ7CisgIF9fdTMyIHFwX3N0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdWNtX2xpc3RlbiB7Ci0gX19iZTY0IHNlcnZpY2VfaWQ7Ci0gX19iZTY0IHNlcnZpY2VfbWFzazsKKyAgX19iZTY0IHNlcnZpY2VfaWQ7CisgIF9fYmU2NCBzZXJ2aWNlX21hc2s7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlkOwotIF9fdTMyIHJlc2VydmVkOworICBfX3UzMiBpZDsKKyAgX191MzIgcmVzZXJ2ZWQ7CiB9Owogc3RydWN0IGliX3VjbV9ub3RpZnkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZDsKLSBfX3UzMiBldmVudDsKKyAgX191MzIgaWQ7CisgIF9fdTMyIGV2ZW50OwogfTsKIHN0cnVjdCBpYl91Y21fcHJpdmF0ZV9kYXRhIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZGF0YTsKLSBfX3UzMiBpZDsKLSBfX3U4IGxlbjsKLSBfX3U4IHJlc2VydmVkWzNdOworICBfX3U2NCBkYXRhOworICBfX3UzMiBpZDsKKyAgX191OCBsZW47CisgIF9fdTggcmVzZXJ2ZWRbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpYl91Y21fcmVxIHsKLSBfX3UzMiBpZDsKLSBfX3UzMiBxcG47CisgIF9fdTMyIGlkOworICBfX3UzMiBxcG47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFwX3R5cGU7Ci0gX191MzIgcHNuOwotIF9fYmU2NCBzaWQ7Ci0gX191NjQgZGF0YTsKKyAgX191MzIgcXBfdHlwZTsKKyAgX191MzIgcHNuOworICBfX2JlNjQgc2lkOworICBfX3U2NCBkYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBwcmltYXJ5X3BhdGg7Ci0gX191NjQgYWx0ZXJuYXRlX3BhdGg7Ci0gX191OCBsZW47Ci0gX191OCBwZWVyX3RvX3BlZXI7CisgIF9fdTY0IHByaW1hcnlfcGF0aDsKKyAgX191NjQgYWx0ZXJuYXRlX3BhdGg7CisgIF9fdTggbGVuOworICBfX3U4IHBlZXJfdG9fcGVlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNwb25kZXJfcmVzb3VyY2VzOwotIF9fdTggaW5pdGlhdG9yX2RlcHRoOwotIF9fdTggcmVtb3RlX2NtX3Jlc3BvbnNlX3RpbWVvdXQ7Ci0gX191OCBmbG93X2NvbnRyb2w7CisgIF9fdTggcmVzcG9uZGVyX3Jlc291cmNlczsKKyAgX191OCBpbml0aWF0b3JfZGVwdGg7CisgIF9fdTggcmVtb3RlX2NtX3Jlc3BvbnNlX3RpbWVvdXQ7CisgIF9fdTggZmxvd19jb250cm9sOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGxvY2FsX2NtX3Jlc3BvbnNlX3RpbWVvdXQ7Ci0gX191OCByZXRyeV9jb3VudDsKLSBfX3U4IHJucl9yZXRyeV9jb3VudDsKLSBfX3U4IG1heF9jbV9yZXRyaWVzOworICBfX3U4IGxvY2FsX2NtX3Jlc3BvbnNlX3RpbWVvdXQ7CisgIF9fdTggcmV0cnlfY291bnQ7CisgIF9fdTggcm5yX3JldHJ5X2NvdW50OworICBfX3U4IG1heF9jbV9yZXRyaWVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNycTsKLSBfX3U4IHJlc2VydmVkWzVdOworICBfX3U4IHNycTsKKyAgX191OCByZXNlcnZlZFs1XTsKIH07CiBzdHJ1Y3QgaWJfdWNtX3JlcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHVpZDsKLSBfX3U2NCBkYXRhOwotIF9fdTMyIGlkOwotIF9fdTMyIHFwbjsKKyAgX191NjQgdWlkOworICBfX3U2NCBkYXRhOworICBfX3UzMiBpZDsKKyAgX191MzIgcXBuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwc247Ci0gX191OCBsZW47Ci0gX191OCByZXNwb25kZXJfcmVzb3VyY2VzOwotIF9fdTggaW5pdGlhdG9yX2RlcHRoOworICBfX3UzMiBwc247CisgIF9fdTggbGVuOworICBfX3U4IHJlc3BvbmRlcl9yZXNvdXJjZXM7CisgIF9fdTggaW5pdGlhdG9yX2RlcHRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHRhcmdldF9hY2tfZGVsYXk7Ci0gX191OCBmYWlsb3Zlcl9hY2NlcHRlZDsKLSBfX3U4IGZsb3dfY29udHJvbDsKLSBfX3U4IHJucl9yZXRyeV9jb3VudDsKKyAgX191OCB0YXJnZXRfYWNrX2RlbGF5OworICBfX3U4IGZhaWxvdmVyX2FjY2VwdGVkOworICBfX3U4IGZsb3dfY29udHJvbDsKKyAgX191OCBybnJfcmV0cnlfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc3JxOwotIF9fdTggcmVzZXJ2ZWRbNF07CisgIF9fdTggc3JxOworICBfX3U4IHJlc2VydmVkWzRdOwogfTsKIHN0cnVjdCBpYl91Y21faW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGlkOwotIF9fdTMyIHN0YXR1czsKLSBfX3U2NCBpbmZvOwotIF9fdTY0IGRhdGE7CisgIF9fdTMyIGlkOworICBfX3UzMiBzdGF0dXM7CisgIF9fdTY0IGluZm87CisgIF9fdTY0IGRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW5mb19sZW47Ci0gX191OCBkYXRhX2xlbjsKLSBfX3U4IHJlc2VydmVkWzZdOworICBfX3U4IGluZm9fbGVuOworICBfX3U4IGRhdGFfbGVuOworICBfX3U4IHJlc2VydmVkWzZdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdWNtX21yYSB7Ci0gX191NjQgZGF0YTsKLSBfX3UzMiBpZDsKLSBfX3U4IGxlbjsKKyAgX191NjQgZGF0YTsKKyAgX191MzIgaWQ7CisgIF9fdTggbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHRpbWVvdXQ7Ci0gX191OCByZXNlcnZlZFsyXTsKKyAgX191OCB0aW1lb3V0OworICBfX3U4IHJlc2VydmVkWzJdOwogfTsKIHN0cnVjdCBpYl91Y21fbGFwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcGF0aDsKLSBfX3U2NCBkYXRhOwotIF9fdTMyIGlkOwotIF9fdTggbGVuOworICBfX3U2NCBwYXRoOworICBfX3U2NCBkYXRhOworICBfX3UzMiBpZDsKKyAgX191OCBsZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWRbM107CisgIF9fdTggcmVzZXJ2ZWRbM107CiB9Owogc3RydWN0IGliX3VjbV9zaWRyX3JlcSB7Ci0gX191MzIgaWQ7CisgIF9fdTMyIGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0aW1lb3V0OwotIF9fYmU2NCBzaWQ7Ci0gX191NjQgZGF0YTsKLSBfX3U2NCBwYXRoOworICBfX3UzMiB0aW1lb3V0OworICBfX2JlNjQgc2lkOworICBfX3U2NCBkYXRhOworICBfX3U2NCBwYXRoOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiByZXNlcnZlZF9wa2V5OwotIF9fdTggbGVuOwotIF9fdTggbWF4X2NtX3JldHJpZXM7Ci0gX191OCByZXNlcnZlZFs0XTsKKyAgX191MTYgcmVzZXJ2ZWRfcGtleTsKKyAgX191OCBsZW47CisgIF9fdTggbWF4X2NtX3JldHJpZXM7CisgIF9fdTggcmVzZXJ2ZWRbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpYl91Y21fc2lkcl9yZXAgewotIF9fdTMyIGlkOwotIF9fdTMyIHFwbjsKKyAgX191MzIgaWQ7CisgIF9fdTMyIHFwbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcWtleTsKLSBfX3UzMiBzdGF0dXM7Ci0gX191NjQgaW5mbzsKLSBfX3U2NCBkYXRhOworICBfX3UzMiBxa2V5OworICBfX3UzMiBzdGF0dXM7CisgIF9fdTY0IGluZm87CisgIF9fdTY0IGRhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggaW5mb19sZW47Ci0gX191OCBkYXRhX2xlbjsKLSBfX3U4IHJlc2VydmVkWzZdOworICBfX3U4IGluZm9fbGVuOworICBfX3U4IGRhdGFfbGVuOworICBfX3U4IHJlc2VydmVkWzZdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdWNtX2V2ZW50X2dldCB7Ci0gX191NjQgcmVzcG9uc2U7Ci0gX191NjQgZGF0YTsKLSBfX3U2NCBpbmZvOworICBfX3U2NCByZXNwb25zZTsKKyAgX191NjQgZGF0YTsKKyAgX191NjQgaW5mbzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBkYXRhX2xlbjsKLSBfX3U4IGluZm9fbGVuOwotIF9fdTggcmVzZXJ2ZWRbNl07CisgIF9fdTggZGF0YV9sZW47CisgIF9fdTggaW5mb19sZW47CisgIF9fdTggcmVzZXJ2ZWRbNl07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91Y21fcmVxX2V2ZW50X3Jlc3AgewotIHN0cnVjdCBpYl91c2VyX3BhdGhfcmVjIHByaW1hcnlfcGF0aDsKLSBzdHJ1Y3QgaWJfdXNlcl9wYXRoX3JlYyBhbHRlcm5hdGVfcGF0aDsKLSBfX2JlNjQgcmVtb3RlX2NhX2d1aWQ7CisgIHN0cnVjdCBpYl91c2VyX3BhdGhfcmVjIHByaW1hcnlfcGF0aDsKKyAgc3RydWN0IGliX3VzZXJfcGF0aF9yZWMgYWx0ZXJuYXRlX3BhdGg7CisgIF9fYmU2NCByZW1vdGVfY2FfZ3VpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVtb3RlX3FrZXk7Ci0gX191MzIgcmVtb3RlX3FwbjsKLSBfX3UzMiBxcF90eXBlOwotIF9fdTMyIHN0YXJ0aW5nX3BzbjsKKyAgX191MzIgcmVtb3RlX3FrZXk7CisgIF9fdTMyIHJlbW90ZV9xcG47CisgIF9fdTMyIHFwX3R5cGU7CisgIF9fdTMyIHN0YXJ0aW5nX3BzbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNwb25kZXJfcmVzb3VyY2VzOwotIF9fdTggaW5pdGlhdG9yX2RlcHRoOwotIF9fdTggbG9jYWxfY21fcmVzcG9uc2VfdGltZW91dDsKLSBfX3U4IGZsb3dfY29udHJvbDsKKyAgX191OCByZXNwb25kZXJfcmVzb3VyY2VzOworICBfX3U4IGluaXRpYXRvcl9kZXB0aDsKKyAgX191OCBsb2NhbF9jbV9yZXNwb25zZV90aW1lb3V0OworICBfX3U4IGZsb3dfY29udHJvbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZW1vdGVfY21fcmVzcG9uc2VfdGltZW91dDsKLSBfX3U4IHJldHJ5X2NvdW50OwotIF9fdTggcm5yX3JldHJ5X2NvdW50OwotIF9fdTggc3JxOworICBfX3U4IHJlbW90ZV9jbV9yZXNwb25zZV90aW1lb3V0OworICBfX3U4IHJldHJ5X2NvdW50OworICBfX3U4IHJucl9yZXRyeV9jb3VudDsKKyAgX191OCBzcnE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcG9ydDsKLSBfX3U4IHJlc2VydmVkWzddOworICBfX3U4IHBvcnQ7CisgIF9fdTggcmVzZXJ2ZWRbN107CiB9Owogc3RydWN0IGliX3VjbV9yZXBfZXZlbnRfcmVzcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmU2NCByZW1vdGVfY2FfZ3VpZDsKLSBfX3UzMiByZW1vdGVfcWtleTsKLSBfX3UzMiByZW1vdGVfcXBuOwotIF9fdTMyIHN0YXJ0aW5nX3BzbjsKKyAgX19iZTY0IHJlbW90ZV9jYV9ndWlkOworICBfX3UzMiByZW1vdGVfcWtleTsKKyAgX191MzIgcmVtb3RlX3FwbjsKKyAgX191MzIgc3RhcnRpbmdfcHNuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlc3BvbmRlcl9yZXNvdXJjZXM7Ci0gX191OCBpbml0aWF0b3JfZGVwdGg7Ci0gX191OCB0YXJnZXRfYWNrX2RlbGF5OwotIF9fdTggZmFpbG92ZXJfYWNjZXB0ZWQ7CisgIF9fdTggcmVzcG9uZGVyX3Jlc291cmNlczsKKyAgX191OCBpbml0aWF0b3JfZGVwdGg7CisgIF9fdTggdGFyZ2V0X2Fja19kZWxheTsKKyAgX191OCBmYWlsb3Zlcl9hY2NlcHRlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmbG93X2NvbnRyb2w7Ci0gX191OCBybnJfcmV0cnlfY291bnQ7Ci0gX191OCBzcnE7Ci0gX191OCByZXNlcnZlZFs1XTsKKyAgX191OCBmbG93X2NvbnRyb2w7CisgIF9fdTggcm5yX3JldHJ5X2NvdW50OworICBfX3U4IHNycTsKKyAgX191OCByZXNlcnZlZFs1XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3VjbV9yZWpfZXZlbnRfcmVzcCB7Ci0gX191MzIgcmVhc29uOworICBfX3UzMiByZWFzb247CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91Y21fbXJhX2V2ZW50X3Jlc3AgewotIF9fdTggdGltZW91dDsKLSBfX3U4IHJlc2VydmVkWzNdOworICBfX3U4IHRpbWVvdXQ7CisgIF9fdTggcmVzZXJ2ZWRbM107CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91Y21fbGFwX2V2ZW50X3Jlc3AgewotIHN0cnVjdCBpYl91c2VyX3BhdGhfcmVjIHBhdGg7CisgIHN0cnVjdCBpYl91c2VyX3BhdGhfcmVjIHBhdGg7CiB9Owogc3RydWN0IGliX3VjbV9hcHJfZXZlbnRfcmVzcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHN0YXR1czsKKyAgX191MzIgc3RhdHVzOwogfTsKIHN0cnVjdCBpYl91Y21fc2lkcl9yZXFfZXZlbnRfcmVzcCB7Ci0gX191MTYgcGtleTsKKyAgX191MTYgcGtleTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwb3J0OwotIF9fdTggcmVzZXJ2ZWQ7CisgIF9fdTggcG9ydDsKKyAgX191OCByZXNlcnZlZDsKIH07CiBzdHJ1Y3QgaWJfdWNtX3NpZHJfcmVwX2V2ZW50X3Jlc3AgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzdGF0dXM7Ci0gX191MzIgcWtleTsKLSBfX3UzMiBxcG47CisgIF9fdTMyIHN0YXR1czsKKyAgX191MzIgcWtleTsKKyAgX191MzIgcXBuOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElCX1VDTV9QUkVTX0RBVEEgMHgwMQpAQCAtMzAyLDI1ICszMDIsMjUgQEAKICNkZWZpbmUgSUJfVUNNX1BSRVNfQUxURVJOQVRFIDB4MDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdWNtX2V2ZW50X3Jlc3AgewotIF9fdTY0IHVpZDsKLSBfX3UzMiBpZDsKLSBfX3UzMiBldmVudDsKKyAgX191NjQgdWlkOworICBfX3UzMiBpZDsKKyAgX191MzIgZXZlbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHByZXNlbnQ7Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0gdW5pb24gewotIHN0cnVjdCBpYl91Y21fcmVxX2V2ZW50X3Jlc3AgcmVxX3Jlc3A7CisgIF9fdTMyIHByZXNlbnQ7CisgIF9fdTMyIHJlc2VydmVkOworICB1bmlvbiB7CisgICAgc3RydWN0IGliX3VjbV9yZXFfZXZlbnRfcmVzcCByZXFfcmVzcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGliX3VjbV9yZXBfZXZlbnRfcmVzcCByZXBfcmVzcDsKLSBzdHJ1Y3QgaWJfdWNtX3Jlal9ldmVudF9yZXNwIHJlal9yZXNwOwotIHN0cnVjdCBpYl91Y21fbXJhX2V2ZW50X3Jlc3AgbXJhX3Jlc3A7Ci0gc3RydWN0IGliX3VjbV9sYXBfZXZlbnRfcmVzcCBsYXBfcmVzcDsKKyAgICBzdHJ1Y3QgaWJfdWNtX3JlcF9ldmVudF9yZXNwIHJlcF9yZXNwOworICAgIHN0cnVjdCBpYl91Y21fcmVqX2V2ZW50X3Jlc3AgcmVqX3Jlc3A7CisgICAgc3RydWN0IGliX3VjbV9tcmFfZXZlbnRfcmVzcCBtcmFfcmVzcDsKKyAgICBzdHJ1Y3QgaWJfdWNtX2xhcF9ldmVudF9yZXNwIGxhcF9yZXNwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaWJfdWNtX2Fwcl9ldmVudF9yZXNwIGFwcl9yZXNwOwotIHN0cnVjdCBpYl91Y21fc2lkcl9yZXFfZXZlbnRfcmVzcCBzaWRyX3JlcV9yZXNwOwotIHN0cnVjdCBpYl91Y21fc2lkcl9yZXBfZXZlbnRfcmVzcCBzaWRyX3JlcF9yZXNwOwotIF9fdTMyIHNlbmRfc3RhdHVzOworICAgIHN0cnVjdCBpYl91Y21fYXByX2V2ZW50X3Jlc3AgYXByX3Jlc3A7CisgICAgc3RydWN0IGliX3VjbV9zaWRyX3JlcV9ldmVudF9yZXNwIHNpZHJfcmVxX3Jlc3A7CisgICAgc3RydWN0IGliX3VjbV9zaWRyX3JlcF9ldmVudF9yZXNwIHNpZHJfcmVwX3Jlc3A7CisgICAgX191MzIgc2VuZF9zdGF0dXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gdTsKKyAgfSB1OwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9yZG1hL2liX3VzZXJfbWFkLmggYi9saWJjL2tlcm5lbC91YXBpL3JkbWEvaWJfdXNlcl9tYWQuaAppbmRleCBkZTVhM2Y5Li4zMTE3ODg4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3JkbWEvaWJfdXNlcl9tYWQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3JkbWEvaWJfdXNlcl9tYWQuaApAQCAtMjMsNzQgKzIzLDk2IEBACiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBJQl9VU0VSX01BRF9BQklfVkVSU0lPTiA1CiBzdHJ1Y3QgaWJfdXNlcl9tYWRfaGRyX29sZCB7Ci0gX191MzIgaWQ7Ci0gX191MzIgc3RhdHVzOworICBfX3UzMiBpZDsKKyAgX191MzIgc3RhdHVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiB0aW1lb3V0X21zOwotIF9fdTMyIHJldHJpZXM7Ci0gX191MzIgbGVuZ3RoOwotIF9fYmUzMiBxcG47CisgIF9fdTMyIHRpbWVvdXRfbXM7CisgIF9fdTMyIHJldHJpZXM7CisgIF9fdTMyIGxlbmd0aDsKKyAgX19iZTMyIHFwbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHFrZXk7Ci0gX19iZTE2IGxpZDsKLSBfX3U4IHNsOwotIF9fdTggcGF0aF9iaXRzOworICBfX2JlMzIgcWtleTsKKyAgX19iZTE2IGxpZDsKKyAgX191OCBzbDsKKyAgX191OCBwYXRoX2JpdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZ3JoX3ByZXNlbnQ7Ci0gX191OCBnaWRfaW5kZXg7Ci0gX191OCBob3BfbGltaXQ7Ci0gX191OCB0cmFmZmljX2NsYXNzOworICBfX3U4IGdyaF9wcmVzZW50OworICBfX3U4IGdpZF9pbmRleDsKKyAgX191OCBob3BfbGltaXQ7CisgIF9fdTggdHJhZmZpY19jbGFzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBnaWRbMTZdOwotIF9fYmUzMiBmbG93X2xhYmVsOworICBfX3U4IGdpZFsxNl07CisgIF9fYmUzMiBmbG93X2xhYmVsOwogfTsKIHN0cnVjdCBpYl91c2VyX21hZF9oZHIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBpZDsKLSBfX3UzMiBzdGF0dXM7Ci0gX191MzIgdGltZW91dF9tczsKLSBfX3UzMiByZXRyaWVzOworICBfX3UzMiBpZDsKKyAgX191MzIgc3RhdHVzOworICBfX3UzMiB0aW1lb3V0X21zOworICBfX3UzMiByZXRyaWVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBsZW5ndGg7Ci0gX19iZTMyIHFwbjsKLSBfX2JlMzIgcWtleTsKLSBfX2JlMTYgbGlkOworICBfX3UzMiBsZW5ndGg7CisgIF9fYmUzMiBxcG47CisgIF9fYmUzMiBxa2V5OworICBfX2JlMTYgbGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNsOwotIF9fdTggcGF0aF9iaXRzOwotIF9fdTggZ3JoX3ByZXNlbnQ7Ci0gX191OCBnaWRfaW5kZXg7CisgIF9fdTggc2w7CisgIF9fdTggcGF0aF9iaXRzOworICBfX3U4IGdyaF9wcmVzZW50OworICBfX3U4IGdpZF9pbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBob3BfbGltaXQ7Ci0gX191OCB0cmFmZmljX2NsYXNzOwotIF9fdTggZ2lkWzE2XTsKLSBfX2JlMzIgZmxvd19sYWJlbDsKKyAgX191OCBob3BfbGltaXQ7CisgIF9fdTggdHJhZmZpY19jbGFzczsKKyAgX191OCBnaWRbMTZdOworICBfX2JlMzIgZmxvd19sYWJlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcGtleV9pbmRleDsKLSBfX3U4IHJlc2VydmVkWzZdOworICBfX3UxNiBwa2V5X2luZGV4OworICBfX3U4IHJlc2VydmVkWzZdOwogfTsKIHN0cnVjdCBpYl91c2VyX21hZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBpYl91c2VyX21hZF9oZHIgaGRyOwotIF9fdTY0IGRhdGFbMF07CisgIHN0cnVjdCBpYl91c2VyX21hZF9oZHIgaGRyOworICBfX3U2NCBkYXRhWzBdOwogfTsKIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDQpKSkgcGFja2VkX3Vsb25nOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSUJfVVNFUl9NQURfTE9OR1NfUEVSX01FVEhPRF9NQVNLICgxMjggLyAoOCAqIHNpemVvZiAobG9uZykpKQorI2RlZmluZSBJQl9VU0VSX01BRF9MT05HU19QRVJfTUVUSE9EX01BU0sgKDEyOCAvICg4ICogc2l6ZW9mKGxvbmcpKSkKIHN0cnVjdCBpYl91c2VyX21hZF9yZWdfcmVxIHsKLSBfX3UzMiBpZDsKLSBwYWNrZWRfdWxvbmcgbWV0aG9kX21hc2tbSUJfVVNFUl9NQURfTE9OR1NfUEVSX01FVEhPRF9NQVNLXTsKKyAgX191MzIgaWQ7CisgIHBhY2tlZF91bG9uZyBtZXRob2RfbWFza1tJQl9VU0VSX01BRF9MT05HU19QRVJfTUVUSE9EX01BU0tdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHFwbjsKLSBfX3U4IG1nbXRfY2xhc3M7Ci0gX191OCBtZ210X2NsYXNzX3ZlcnNpb247Ci0gX191OCBvdWlbM107CisgIF9fdTggcXBuOworICBfX3U4IG1nbXRfY2xhc3M7CisgIF9fdTggbWdtdF9jbGFzc192ZXJzaW9uOworICBfX3U4IG91aVszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBybXBwX3ZlcnNpb247CisgIF9fdTggcm1wcF92ZXJzaW9uOworfTsKK2VudW0geworICBJQl9VU0VSX01BRF9VU0VSX1JNUFAgPSAoMSA8PCAwKSwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworI2RlZmluZSBJQl9VU0VSX01BRF9SRUdfRkxBR1NfQ0FQIChJQl9VU0VSX01BRF9VU0VSX1JNUFApCitzdHJ1Y3QgaWJfdXNlcl9tYWRfcmVnX3JlcTIgeworICBfX3UzMiBpZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHFwbjsKKyAgX191OCBtZ210X2NsYXNzOworICBfX3U4IG1nbXRfY2xhc3NfdmVyc2lvbjsKKyAgX191MTYgcmVzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZmxhZ3M7CisgIF9fdTY0IG1ldGhvZF9tYXNrWzJdOworICBfX3UzMiBvdWk7CisgIF9fdTggcm1wcF92ZXJzaW9uOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCByZXNlcnZlZFszXTsKIH07CiAjZGVmaW5lIElCX0lPQ1RMX01BR0lDIDB4MWIKLSNkZWZpbmUgSUJfVVNFUl9NQURfUkVHSVNURVJfQUdFTlQgX0lPV1IoSUJfSU9DVExfTUFHSUMsIDEsICAgc3RydWN0IGliX3VzZXJfbWFkX3JlZ19yZXEpCisjZGVmaW5lIElCX1VTRVJfTUFEX1JFR0lTVEVSX0FHRU5UIF9JT1dSKElCX0lPQ1RMX01BR0lDLCAxLCBzdHJ1Y3QgaWJfdXNlcl9tYWRfcmVnX3JlcSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElCX1VTRVJfTUFEX1VOUkVHSVNURVJfQUdFTlQgX0lPVyhJQl9JT0NUTF9NQUdJQywgMiwgX191MzIpCiAjZGVmaW5lIElCX1VTRVJfTUFEX0VOQUJMRV9QS0VZIF9JTyhJQl9JT0NUTF9NQUdJQywgMykKKyNkZWZpbmUgSUJfVVNFUl9NQURfUkVHSVNURVJfQUdFTlQyIF9JT1dSKElCX0lPQ1RMX01BR0lDLCA0LCBzdHJ1Y3QgaWJfdXNlcl9tYWRfcmVnX3JlcTIpCiAjZW5kaWYKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3JkbWEvaWJfdXNlcl9zYS5oIGIvbGliYy9rZXJuZWwvdWFwaS9yZG1hL2liX3VzZXJfc2EuaAppbmRleCBkZTVkZjg5Li4zNmY0YTgwIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3JkbWEvaWJfdXNlcl9zYS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvcmRtYS9pYl91c2VyX3NhLmgKQEAgLTIxLDQ2ICsyMSw0NiBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBlbnVtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUJfUEFUSF9HTVAgPSAxLAotIElCX1BBVEhfUFJJTUFSWSA9ICgxPDwxKSwKLSBJQl9QQVRIX0FMVEVSTkFURSA9ICgxPDwyKSwKLSBJQl9QQVRIX09VVEJPVU5EID0gKDE8PDMpLAorICBJQl9QQVRIX0dNUCA9IDEsCisgIElCX1BBVEhfUFJJTUFSWSA9ICgxIDw8IDEpLAorICBJQl9QQVRIX0FMVEVSTkFURSA9ICgxIDw8IDIpLAorICBJQl9QQVRIX09VVEJPVU5EID0gKDEgPDwgMyksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElCX1BBVEhfSU5CT1VORCA9ICgxPDw0KSwKLSBJQl9QQVRIX0lOQk9VTkRfUkVWRVJTRSA9ICgxPDw1KSwKLSBJQl9QQVRIX0JJRElSRUNUSU9OQUwgPSBJQl9QQVRIX09VVEJPVU5EIHwgSUJfUEFUSF9JTkJPVU5EX1JFVkVSU0UKKyAgSUJfUEFUSF9JTkJPVU5EID0gKDEgPDwgNCksCisgIElCX1BBVEhfSU5CT1VORF9SRVZFUlNFID0gKDEgPDwgNSksCisgIElCX1BBVEhfQklESVJFQ1RJT05BTCA9IElCX1BBVEhfT1VUQk9VTkQgfCBJQl9QQVRIX0lOQk9VTkRfUkVWRVJTRQogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfcGF0aF9yZWNfZGF0YSB7Ci0gX191MzIgZmxhZ3M7Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0gX191MzIgcGF0aF9yZWNbMTZdOworICBfX3UzMiBmbGFnczsKKyAgX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTMyIHBhdGhfcmVjWzE2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3VzZXJfcGF0aF9yZWMgewotIF9fdTggZGdpZFsxNl07Ci0gX191OCBzZ2lkWzE2XTsKKyAgX191OCBkZ2lkWzE2XTsKKyAgX191OCBzZ2lkWzE2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTE2IGRsaWQ7Ci0gX19iZTE2IHNsaWQ7Ci0gX191MzIgcmF3X3RyYWZmaWM7Ci0gX19iZTMyIGZsb3dfbGFiZWw7CisgIF9fYmUxNiBkbGlkOworICBfX2JlMTYgc2xpZDsKKyAgX191MzIgcmF3X3RyYWZmaWM7CisgIF9fYmUzMiBmbG93X2xhYmVsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXZlcnNpYmxlOwotIF9fdTMyIG10dTsKLSBfX2JlMTYgcGtleTsKLSBfX3U4IGhvcF9saW1pdDsKKyAgX191MzIgcmV2ZXJzaWJsZTsKKyAgX191MzIgbXR1OworICBfX2JlMTYgcGtleTsKKyAgX191OCBob3BfbGltaXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHJhZmZpY19jbGFzczsKLSBfX3U4IG51bWJfcGF0aDsKLSBfX3U4IHNsOwotIF9fdTggbXR1X3NlbGVjdG9yOworICBfX3U4IHRyYWZmaWNfY2xhc3M7CisgIF9fdTggbnVtYl9wYXRoOworICBfX3U4IHNsOworICBfX3U4IG10dV9zZWxlY3RvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByYXRlX3NlbGVjdG9yOwotIF9fdTggcmF0ZTsKLSBfX3U4IHBhY2tldF9saWZlX3RpbWVfc2VsZWN0b3I7Ci0gX191OCBwYWNrZXRfbGlmZV90aW1lOworICBfX3U4IHJhdGVfc2VsZWN0b3I7CisgIF9fdTggcmF0ZTsKKyAgX191OCBwYWNrZXRfbGlmZV90aW1lX3NlbGVjdG9yOworICBfX3U4IHBhY2tldF9saWZlX3RpbWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcHJlZmVyZW5jZTsKKyAgX191OCBwcmVmZXJlbmNlOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9yZG1hL2liX3VzZXJfdmVyYnMuaCBiL2xpYmMva2VybmVsL3VhcGkvcmRtYS9pYl91c2VyX3ZlcmJzLmgKaW5kZXggZGQ5MzFkOC4uOWMyM2FjMiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9yZG1hL2liX3VzZXJfdmVyYnMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3JkbWEvaWJfdXNlcl92ZXJicy5oCkBAIC0yMyw3MiArMjMsNzIgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElCX1VTRVJfVkVSQlNfQ01EX1RIUkVTSE9MRCA1MAogZW51bSB7Ci0gSUJfVVNFUl9WRVJCU19DTURfR0VUX0NPTlRFWFQsCi0gSUJfVVNFUl9WRVJCU19DTURfUVVFUllfREVWSUNFLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9HRVRfQ09OVEVYVCwKKyAgSUJfVVNFUl9WRVJCU19DTURfUVVFUllfREVWSUNFLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQl9VU0VSX1ZFUkJTX0NNRF9RVUVSWV9QT1JULAotIElCX1VTRVJfVkVSQlNfQ01EX0FMTE9DX1BELAotIElCX1VTRVJfVkVSQlNfQ01EX0RFQUxMT0NfUEQsCi0gSUJfVVNFUl9WRVJCU19DTURfQ1JFQVRFX0FILAorICBJQl9VU0VSX1ZFUkJTX0NNRF9RVUVSWV9QT1JULAorICBJQl9VU0VSX1ZFUkJTX0NNRF9BTExPQ19QRCwKKyAgSUJfVVNFUl9WRVJCU19DTURfREVBTExPQ19QRCwKKyAgSUJfVVNFUl9WRVJCU19DTURfQ1JFQVRFX0FILAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQl9VU0VSX1ZFUkJTX0NNRF9NT0RJRllfQUgsCi0gSUJfVVNFUl9WRVJCU19DTURfUVVFUllfQUgsCi0gSUJfVVNFUl9WRVJCU19DTURfREVTVFJPWV9BSCwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9SRUdfTVIsCisgIElCX1VTRVJfVkVSQlNfQ01EX01PRElGWV9BSCwKKyAgSUJfVVNFUl9WRVJCU19DTURfUVVFUllfQUgsCisgIElCX1VTRVJfVkVSQlNfQ01EX0RFU1RST1lfQUgsCisgIElCX1VTRVJfVkVSQlNfQ01EX1JFR19NUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUJfVVNFUl9WRVJCU19DTURfUkVHX1NNUiwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9SRVJFR19NUiwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9RVUVSWV9NUiwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9ERVJFR19NUiwKKyAgSUJfVVNFUl9WRVJCU19DTURfUkVHX1NNUiwKKyAgSUJfVVNFUl9WRVJCU19DTURfUkVSRUdfTVIsCisgIElCX1VTRVJfVkVSQlNfQ01EX1FVRVJZX01SLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9ERVJFR19NUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUJfVVNFUl9WRVJCU19DTURfQUxMT0NfTVcsCi0gSUJfVVNFUl9WRVJCU19DTURfQklORF9NVywKLSBJQl9VU0VSX1ZFUkJTX0NNRF9ERUFMTE9DX01XLAotIElCX1VTRVJfVkVSQlNfQ01EX0NSRUFURV9DT01QX0NIQU5ORUwsCisgIElCX1VTRVJfVkVSQlNfQ01EX0FMTE9DX01XLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9CSU5EX01XLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9ERUFMTE9DX01XLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9DUkVBVEVfQ09NUF9DSEFOTkVMLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBJQl9VU0VSX1ZFUkJTX0NNRF9DUkVBVEVfQ1EsCi0gSUJfVVNFUl9WRVJCU19DTURfUkVTSVpFX0NRLAotIElCX1VTRVJfVkVSQlNfQ01EX0RFU1RST1lfQ1EsCi0gSUJfVVNFUl9WRVJCU19DTURfUE9MTF9DUSwKKyAgSUJfVVNFUl9WRVJCU19DTURfQ1JFQVRFX0NRLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9SRVNJWkVfQ1EsCisgIElCX1VTRVJfVkVSQlNfQ01EX0RFU1RST1lfQ1EsCisgIElCX1VTRVJfVkVSQlNfQ01EX1BPTExfQ1EsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElCX1VTRVJfVkVSQlNfQ01EX1BFRUtfQ1EsCi0gSUJfVVNFUl9WRVJCU19DTURfUkVRX05PVElGWV9DUSwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9DUkVBVEVfUVAsCi0gSUJfVVNFUl9WRVJCU19DTURfUVVFUllfUVAsCisgIElCX1VTRVJfVkVSQlNfQ01EX1BFRUtfQ1EsCisgIElCX1VTRVJfVkVSQlNfQ01EX1JFUV9OT1RJRllfQ1EsCisgIElCX1VTRVJfVkVSQlNfQ01EX0NSRUFURV9RUCwKKyAgSUJfVVNFUl9WRVJCU19DTURfUVVFUllfUVAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElCX1VTRVJfVkVSQlNfQ01EX01PRElGWV9RUCwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9ERVNUUk9ZX1FQLAotIElCX1VTRVJfVkVSQlNfQ01EX1BPU1RfU0VORCwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9QT1NUX1JFQ1YsCisgIElCX1VTRVJfVkVSQlNfQ01EX01PRElGWV9RUCwKKyAgSUJfVVNFUl9WRVJCU19DTURfREVTVFJPWV9RUCwKKyAgSUJfVVNFUl9WRVJCU19DTURfUE9TVF9TRU5ELAorICBJQl9VU0VSX1ZFUkJTX0NNRF9QT1NUX1JFQ1YsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElCX1VTRVJfVkVSQlNfQ01EX0FUVEFDSF9NQ0FTVCwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9ERVRBQ0hfTUNBU1QsCi0gSUJfVVNFUl9WRVJCU19DTURfQ1JFQVRFX1NSUSwKLSBJQl9VU0VSX1ZFUkJTX0NNRF9NT0RJRllfU1JRLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9BVFRBQ0hfTUNBU1QsCisgIElCX1VTRVJfVkVSQlNfQ01EX0RFVEFDSF9NQ0FTVCwKKyAgSUJfVVNFUl9WRVJCU19DTURfQ1JFQVRFX1NSUSwKKyAgSUJfVVNFUl9WRVJCU19DTURfTU9ESUZZX1NSUSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSUJfVVNFUl9WRVJCU19DTURfUVVFUllfU1JRLAotIElCX1VTRVJfVkVSQlNfQ01EX0RFU1RST1lfU1JRLAotIElCX1VTRVJfVkVSQlNfQ01EX1BPU1RfU1JRX1JFQ1YsCi0gSUJfVVNFUl9WRVJCU19DTURfT1BFTl9YUkNELAorICBJQl9VU0VSX1ZFUkJTX0NNRF9RVUVSWV9TUlEsCisgIElCX1VTRVJfVkVSQlNfQ01EX0RFU1RST1lfU1JRLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9QT1NUX1NSUV9SRUNWLAorICBJQl9VU0VSX1ZFUkJTX0NNRF9PUEVOX1hSQ0QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIElCX1VTRVJfVkVSQlNfQ01EX0NMT1NFX1hSQ0QsCi0gSUJfVVNFUl9WRVJCU19DTURfQ1JFQVRFX1hTUlEsCi0gSUJfVVNFUl9WRVJCU19DTURfT1BFTl9RUCwKKyAgSUJfVVNFUl9WRVJCU19DTURfQ0xPU0VfWFJDRCwKKyAgSUJfVVNFUl9WRVJCU19DTURfQ1JFQVRFX1hTUlEsCisgIElCX1VTRVJfVkVSQlNfQ01EX09QRU5fUVAsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIElCX1VTRVJfVkVSQlNfRVhfQ01EX0NSRUFURV9GTE9XID0gSUJfVVNFUl9WRVJCU19DTURfVEhSRVNIT0xELAotIElCX1VTRVJfVkVSQlNfRVhfQ01EX0RFU1RST1lfRkxPVworICBJQl9VU0VSX1ZFUkJTX0VYX0NNRF9DUkVBVEVfRkxPVyA9IElCX1VTRVJfVkVSQlNfQ01EX1RIUkVTSE9MRCwKKyAgSUJfVVNFUl9WRVJCU19FWF9DTURfREVTVFJPWV9GTE9XCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfYXN5bmNfZXZlbnRfZGVzYyB7Ci0gX191NjQgZWxlbWVudDsKLSBfX3UzMiBldmVudF90eXBlOwotIF9fdTMyIHJlc2VydmVkOworICBfX3U2NCBlbGVtZW50OworICBfX3UzMiBldmVudF90eXBlOworICBfX3UzMiByZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3V2ZXJic19jb21wX2V2ZW50X2Rlc2MgewotIF9fdTY0IGNxX2hhbmRsZTsKKyAgX191NjQgY3FfaGFuZGxlOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIElCX1VTRVJfVkVSQlNfQ01EX0NPTU1BTkRfTUFTSyAweGZmCkBAIC05Nyw3OTUgKzk3LDgxMyBAQAogI2RlZmluZSBJQl9VU0VSX1ZFUkJTX0NNRF9GTEFHX0VYVEVOREVEIDB4ODAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX2NtZF9oZHIgewotIF9fdTMyIGNvbW1hbmQ7Ci0gX191MTYgaW5fd29yZHM7Ci0gX191MTYgb3V0X3dvcmRzOworICBfX3UzMiBjb21tYW5kOworICBfX3UxNiBpbl93b3JkczsKKyAgX191MTYgb3V0X3dvcmRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX2V4X2NtZF9oZHIgewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTE2IHByb3ZpZGVyX2luX3dvcmRzOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MTYgcHJvdmlkZXJfaW5fd29yZHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHByb3ZpZGVyX291dF93b3JkczsKLSBfX3UzMiBjbWRfaGRyX3Jlc2VydmVkOworICBfX3UxNiBwcm92aWRlcl9vdXRfd29yZHM7CisgIF9fdTMyIGNtZF9oZHJfcmVzZXJ2ZWQ7CiB9Owogc3RydWN0IGliX3V2ZXJic19nZXRfY29udGV4dCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTY0IGRyaXZlcl9kYXRhWzBdOworICBfX3U2NCByZXNwb25zZTsKKyAgX191NjQgZHJpdmVyX2RhdGFbMF07CiB9Owogc3RydWN0IGliX3V2ZXJic19nZXRfY29udGV4dF9yZXNwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYXN5bmNfZmQ7Ci0gX191MzIgbnVtX2NvbXBfdmVjdG9yczsKKyAgX191MzIgYXN5bmNfZmQ7CisgIF9fdTMyIG51bV9jb21wX3ZlY3RvcnM7CiB9Owogc3RydWN0IGliX3V2ZXJic19xdWVyeV9kZXZpY2UgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXNwb25zZTsKLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfcXVlcnlfZGV2aWNlX3Jlc3AgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBmd192ZXI7Ci0gX19iZTY0IG5vZGVfZ3VpZDsKLSBfX2JlNjQgc3lzX2ltYWdlX2d1aWQ7Ci0gX191NjQgbWF4X21yX3NpemU7CisgIF9fdTY0IGZ3X3ZlcjsKKyAgX19iZTY0IG5vZGVfZ3VpZDsKKyAgX19iZTY0IHN5c19pbWFnZV9ndWlkOworICBfX3U2NCBtYXhfbXJfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcGFnZV9zaXplX2NhcDsKLSBfX3UzMiB2ZW5kb3JfaWQ7Ci0gX191MzIgdmVuZG9yX3BhcnRfaWQ7Ci0gX191MzIgaHdfdmVyOworICBfX3U2NCBwYWdlX3NpemVfY2FwOworICBfX3UzMiB2ZW5kb3JfaWQ7CisgIF9fdTMyIHZlbmRvcl9wYXJ0X2lkOworICBfX3UzMiBod192ZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heF9xcDsKLSBfX3UzMiBtYXhfcXBfd3I7Ci0gX191MzIgZGV2aWNlX2NhcF9mbGFnczsKLSBfX3UzMiBtYXhfc2dlOworICBfX3UzMiBtYXhfcXA7CisgIF9fdTMyIG1heF9xcF93cjsKKyAgX191MzIgZGV2aWNlX2NhcF9mbGFnczsKKyAgX191MzIgbWF4X3NnZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X3NnZV9yZDsKLSBfX3UzMiBtYXhfY3E7Ci0gX191MzIgbWF4X2NxZTsKLSBfX3UzMiBtYXhfbXI7CisgIF9fdTMyIG1heF9zZ2VfcmQ7CisgIF9fdTMyIG1heF9jcTsKKyAgX191MzIgbWF4X2NxZTsKKyAgX191MzIgbWF4X21yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXhfcGQ7Ci0gX191MzIgbWF4X3FwX3JkX2F0b207Ci0gX191MzIgbWF4X2VlX3JkX2F0b207Ci0gX191MzIgbWF4X3Jlc19yZF9hdG9tOworICBfX3UzMiBtYXhfcGQ7CisgIF9fdTMyIG1heF9xcF9yZF9hdG9tOworICBfX3UzMiBtYXhfZWVfcmRfYXRvbTsKKyAgX191MzIgbWF4X3Jlc19yZF9hdG9tOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXhfcXBfaW5pdF9yZF9hdG9tOwotIF9fdTMyIG1heF9lZV9pbml0X3JkX2F0b207Ci0gX191MzIgYXRvbWljX2NhcDsKLSBfX3UzMiBtYXhfZWU7CisgIF9fdTMyIG1heF9xcF9pbml0X3JkX2F0b207CisgIF9fdTMyIG1heF9lZV9pbml0X3JkX2F0b207CisgIF9fdTMyIGF0b21pY19jYXA7CisgIF9fdTMyIG1heF9lZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X3JkZDsKLSBfX3UzMiBtYXhfbXc7Ci0gX191MzIgbWF4X3Jhd19pcHY2X3FwOwotIF9fdTMyIG1heF9yYXdfZXRoeV9xcDsKKyAgX191MzIgbWF4X3JkZDsKKyAgX191MzIgbWF4X213OworICBfX3UzMiBtYXhfcmF3X2lwdjZfcXA7CisgIF9fdTMyIG1heF9yYXdfZXRoeV9xcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X21jYXN0X2dycDsKLSBfX3UzMiBtYXhfbWNhc3RfcXBfYXR0YWNoOwotIF9fdTMyIG1heF90b3RhbF9tY2FzdF9xcF9hdHRhY2g7Ci0gX191MzIgbWF4X2FoOworICBfX3UzMiBtYXhfbWNhc3RfZ3JwOworICBfX3UzMiBtYXhfbWNhc3RfcXBfYXR0YWNoOworICBfX3UzMiBtYXhfdG90YWxfbWNhc3RfcXBfYXR0YWNoOworICBfX3UzMiBtYXhfYWg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG1heF9mbXI7Ci0gX191MzIgbWF4X21hcF9wZXJfZm1yOwotIF9fdTMyIG1heF9zcnE7Ci0gX191MzIgbWF4X3NycV93cjsKKyAgX191MzIgbWF4X2ZtcjsKKyAgX191MzIgbWF4X21hcF9wZXJfZm1yOworICBfX3UzMiBtYXhfc3JxOworICBfX3UzMiBtYXhfc3JxX3dyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXhfc3JxX3NnZTsKLSBfX3UxNiBtYXhfcGtleXM7Ci0gX191OCBsb2NhbF9jYV9hY2tfZGVsYXk7Ci0gX191OCBwaHlzX3BvcnRfY250OworICBfX3UzMiBtYXhfc3JxX3NnZTsKKyAgX191MTYgbWF4X3BrZXlzOworICBfX3U4IGxvY2FsX2NhX2Fja19kZWxheTsKKyAgX191OCBwaHlzX3BvcnRfY250OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlc2VydmVkWzRdOworICBfX3U4IHJlc2VydmVkWzRdOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfcXVlcnlfcG9ydCB7Ci0gX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IHJlc3BvbnNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBvcnRfbnVtOwotIF9fdTggcmVzZXJ2ZWRbN107Ci0gX191NjQgZHJpdmVyX2RhdGFbMF07CisgIF9fdTggcG9ydF9udW07CisgIF9fdTggcmVzZXJ2ZWRbN107CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX3F1ZXJ5X3BvcnRfcmVzcCB7Ci0gX191MzIgcG9ydF9jYXBfZmxhZ3M7Ci0gX191MzIgbWF4X21zZ19zejsKLSBfX3UzMiBiYWRfcGtleV9jbnRyOworICBfX3UzMiBwb3J0X2NhcF9mbGFnczsKKyAgX191MzIgbWF4X21zZ19zejsKKyAgX191MzIgYmFkX3BrZXlfY250cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcWtleV92aW9sX2NudHI7Ci0gX191MzIgZ2lkX3RibF9sZW47Ci0gX191MTYgcGtleV90YmxfbGVuOwotIF9fdTE2IGxpZDsKKyAgX191MzIgcWtleV92aW9sX2NudHI7CisgIF9fdTMyIGdpZF90YmxfbGVuOworICBfX3UxNiBwa2V5X3RibF9sZW47CisgIF9fdTE2IGxpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgc21fbGlkOwotIF9fdTggc3RhdGU7Ci0gX191OCBtYXhfbXR1OwotIF9fdTggYWN0aXZlX210dTsKKyAgX191MTYgc21fbGlkOworICBfX3U4IHN0YXRlOworICBfX3U4IG1heF9tdHU7CisgIF9fdTggYWN0aXZlX210dTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBsbWM7Ci0gX191OCBtYXhfdmxfbnVtOwotIF9fdTggc21fc2w7Ci0gX191OCBzdWJuZXRfdGltZW91dDsKKyAgX191OCBsbWM7CisgIF9fdTggbWF4X3ZsX251bTsKKyAgX191OCBzbV9zbDsKKyAgX191OCBzdWJuZXRfdGltZW91dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBpbml0X3R5cGVfcmVwbHk7Ci0gX191OCBhY3RpdmVfd2lkdGg7Ci0gX191OCBhY3RpdmVfc3BlZWQ7Ci0gX191OCBwaHlzX3N0YXRlOworICBfX3U4IGluaXRfdHlwZV9yZXBseTsKKyAgX191OCBhY3RpdmVfd2lkdGg7CisgIF9fdTggYWN0aXZlX3NwZWVkOworICBfX3U4IHBoeXNfc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbGlua19sYXllcjsKLSBfX3U4IHJlc2VydmVkWzJdOworICBfX3U4IGxpbmtfbGF5ZXI7CisgIF9fdTggcmVzZXJ2ZWRbMl07CiB9Owogc3RydWN0IGliX3V2ZXJic19hbGxvY19wZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTY0IGRyaXZlcl9kYXRhWzBdOworICBfX3U2NCByZXNwb25zZTsKKyAgX191NjQgZHJpdmVyX2RhdGFbMF07CiB9Owogc3RydWN0IGliX3V2ZXJic19hbGxvY19wZF9yZXNwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGRfaGFuZGxlOworICBfX3UzMiBwZF9oYW5kbGU7CiB9Owogc3RydWN0IGliX3V2ZXJic19kZWFsbG9jX3BkIHsKLSBfX3UzMiBwZF9oYW5kbGU7CisgIF9fdTMyIHBkX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3V2ZXJic19vcGVuX3hyY2QgewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTMyIGZkOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgZmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG9mbGFnczsKLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX191MzIgb2ZsYWdzOworICBfX3U2NCBkcml2ZXJfZGF0YVswXTsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX29wZW5feHJjZF9yZXNwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgeHJjZF9oYW5kbGU7CisgIF9fdTMyIHhyY2RfaGFuZGxlOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfY2xvc2VfeHJjZCB7Ci0gX191MzIgeHJjZF9oYW5kbGU7CisgIF9fdTMyIHhyY2RfaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX3JlZ19tciB7Ci0gX191NjQgcmVzcG9uc2U7Ci0gX191NjQgc3RhcnQ7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCBzdGFydDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbGVuZ3RoOwotIF9fdTY0IGhjYV92YTsKLSBfX3UzMiBwZF9oYW5kbGU7Ci0gX191MzIgYWNjZXNzX2ZsYWdzOworICBfX3U2NCBsZW5ndGg7CisgIF9fdTY0IGhjYV92YTsKKyAgX191MzIgcGRfaGFuZGxlOworICBfX3UzMiBhY2Nlc3NfZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGRyaXZlcl9kYXRhWzBdOworICBfX3U2NCBkcml2ZXJfZGF0YVswXTsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX3JlZ19tcl9yZXNwIHsKLSBfX3UzMiBtcl9oYW5kbGU7CisgIF9fdTMyIG1yX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbGtleTsKLSBfX3UzMiBya2V5OworICBfX3UzMiBsa2V5OworICBfX3UzMiBya2V5OworfTsKK3N0cnVjdCBpYl91dmVyYnNfcmVyZWdfbXIgeworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTMyIG1yX2hhbmRsZTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTY0IHN0YXJ0OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191NjQgbGVuZ3RoOworICBfX3U2NCBoY2FfdmE7CisgIF9fdTMyIHBkX2hhbmRsZTsKKyAgX191MzIgYWNjZXNzX2ZsYWdzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KK307CitzdHJ1Y3QgaWJfdXZlcmJzX3JlcmVnX21yX3Jlc3AgeworICBfX3UzMiBsa2V5OworICBfX3UzMiBya2V5OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX2RlcmVnX21yIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbXJfaGFuZGxlOworICBfX3UzMiBtcl9oYW5kbGU7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfYWxsb2NfbXcgewotIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgcGRfaGFuZGxlOworICBfX3U4IG13X3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBkX2hhbmRsZTsKLSBfX3U4IG13X3R5cGU7Ci0gX191OCByZXNlcnZlZFszXTsKKyAgX191OCByZXNlcnZlZFszXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19hbGxvY19td19yZXNwIHsKLSBfX3UzMiBtd19oYW5kbGU7Ci0gX191MzIgcmtleTsKLX07CisgIF9fdTMyIG13X2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHJrZXk7Cit9Owogc3RydWN0IGliX3V2ZXJic19kZWFsbG9jX213IHsKLSBfX3UzMiBtd19oYW5kbGU7CisgIF9fdTMyIG13X2hhbmRsZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3V2ZXJic19jcmVhdGVfY29tcF9jaGFubmVsIHsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IHJlc3BvbnNlOwogfTsKLXN0cnVjdCBpYl91dmVyYnNfY3JlYXRlX2NvbXBfY2hhbm5lbF9yZXNwIHsKLSBfX3UzMiBmZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgaWJfdXZlcmJzX2NyZWF0ZV9jb21wX2NoYW5uZWxfcmVzcCB7CisgIF9fdTMyIGZkOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfY3JlYXRlX2NxIHsKLSBfX3U2NCByZXNwb25zZTsKLSBfX3U2NCB1c2VyX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY3FlOwotIF9fdTMyIGNvbXBfdmVjdG9yOwotIF9fczMyIGNvbXBfY2hhbm5lbDsKLSBfX3UzMiByZXNlcnZlZDsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IHVzZXJfaGFuZGxlOworICBfX3UzMiBjcWU7CisgIF9fdTMyIGNvbXBfdmVjdG9yOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX19zMzIgY29tcF9jaGFubmVsOworICBfX3UzMiByZXNlcnZlZDsKKyAgX191NjQgZHJpdmVyX2RhdGFbMF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfY3JlYXRlX2NxX3Jlc3AgewotIF9fdTMyIGNxX2hhbmRsZTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgY3FlOworICBfX3UzMiBjcV9oYW5kbGU7CisgIF9fdTMyIGNxZTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19yZXNpemVfY3EgewotIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgY3FfaGFuZGxlOworICBfX3UzMiBjcWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGNxX2hhbmRsZTsKLSBfX3UzMiBjcWU7Ci0gX191NjQgZHJpdmVyX2RhdGFbMF07CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX3Jlc2l6ZV9jcV9yZXNwIHsKLSBfX3UzMiBjcWU7Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0gX191NjQgZHJpdmVyX2RhdGFbMF07CisgIF9fdTMyIGNxZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHJlc2VydmVkOworICBfX3U2NCBkcml2ZXJfZGF0YVswXTsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX3BvbGxfY3EgewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTMyIGNxX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbmU7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3UzMiBjcV9oYW5kbGU7CisgIF9fdTMyIG5lOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX3djIHsKLSBfX3U2NCB3cl9pZDsKKyAgX191NjQgd3JfaWQ7CisgIF9fdTMyIHN0YXR1czsKKyAgX191MzIgb3Bjb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzdGF0dXM7Ci0gX191MzIgb3Bjb2RlOwotIF9fdTMyIHZlbmRvcl9lcnI7Ci0gX191MzIgYnl0ZV9sZW47CisgIF9fdTMyIHZlbmRvcl9lcnI7CisgIF9fdTMyIGJ5dGVfbGVuOworICB1bmlvbiB7CisgICAgX191MzIgaW1tX2RhdGE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBfX3UzMiBpbW1fZGF0YTsKLSBfX3UzMiBpbnZhbGlkYXRlX3JrZXk7Ci0gfSBleDsKKyAgICBfX3UzMiBpbnZhbGlkYXRlX3JrZXk7CisgIH0gZXg7CisgIF9fdTMyIHFwX251bTsKKyAgX191MzIgc3JjX3FwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBxcF9udW07Ci0gX191MzIgc3JjX3FwOwotIF9fdTMyIHdjX2ZsYWdzOwotIF9fdTE2IHBrZXlfaW5kZXg7CisgIF9fdTMyIHdjX2ZsYWdzOworICBfX3UxNiBwa2V5X2luZGV4OworICBfX3UxNiBzbGlkOworICBfX3U4IHNsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBzbGlkOwotIF9fdTggc2w7Ci0gX191OCBkbGlkX3BhdGhfYml0czsKLSBfX3U4IHBvcnRfbnVtOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlc2VydmVkOworICBfX3U4IGRsaWRfcGF0aF9iaXRzOworICBfX3U4IHBvcnRfbnVtOworICBfX3U4IHJlc2VydmVkOwogfTsKLXN0cnVjdCBpYl91dmVyYnNfcG9sbF9jcV9yZXNwIHsKLSBfX3UzMiBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWQ7Ci0gc3RydWN0IGliX3V2ZXJic193YyB3Y1swXTsKK3N0cnVjdCBpYl91dmVyYnNfcG9sbF9jcV9yZXNwIHsKKyAgX191MzIgY291bnQ7CisgIF9fdTMyIHJlc2VydmVkOworICBzdHJ1Y3QgaWJfdXZlcmJzX3djIHdjWzBdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX3JlcV9ub3RpZnlfY3EgeworICBfX3UzMiBjcV9oYW5kbGU7CisgIF9fdTMyIHNvbGljaXRlZF9vbmx5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjcV9oYW5kbGU7Ci0gX191MzIgc29saWNpdGVkX29ubHk7CiB9Owogc3RydWN0IGliX3V2ZXJic19kZXN0cm95X2NxIHsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTMyIGNxX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzcG9uc2U7Ci0gX191MzIgY3FfaGFuZGxlOwotIF9fdTMyIHJlc2VydmVkOworICBfX3UzMiByZXNlcnZlZDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19kZXN0cm95X2NxX3Jlc3AgewotIF9fdTMyIGNvbXBfZXZlbnRzX3JlcG9ydGVkOwotIF9fdTMyIGFzeW5jX2V2ZW50c19yZXBvcnRlZDsKLX07CisgIF9fdTMyIGNvbXBfZXZlbnRzX3JlcG9ydGVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgYXN5bmNfZXZlbnRzX3JlcG9ydGVkOworfTsKIHN0cnVjdCBpYl91dmVyYnNfZ2xvYmFsX3JvdXRlIHsKLSBfX3U4IGRnaWRbMTZdOwotIF9fdTMyIGZsb3dfbGFiZWw7Ci0gX191OCBzZ2lkX2luZGV4OworICBfX3U4IGRnaWRbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGhvcF9saW1pdDsKLSBfX3U4IHRyYWZmaWNfY2xhc3M7Ci0gX191OCByZXNlcnZlZDsKKyAgX191MzIgZmxvd19sYWJlbDsKKyAgX191OCBzZ2lkX2luZGV4OworICBfX3U4IGhvcF9saW1pdDsKKyAgX191OCB0cmFmZmljX2NsYXNzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCByZXNlcnZlZDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19haF9hdHRyIHsKLSBzdHJ1Y3QgaWJfdXZlcmJzX2dsb2JhbF9yb3V0ZSBncmg7Ci0gX191MTYgZGxpZDsKLSBfX3U4IHNsOworICBzdHJ1Y3QgaWJfdXZlcmJzX2dsb2JhbF9yb3V0ZSBncmg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc3JjX3BhdGhfYml0czsKLSBfX3U4IHN0YXRpY19yYXRlOwotIF9fdTggaXNfZ2xvYmFsOwotIF9fdTggcG9ydF9udW07CisgIF9fdTE2IGRsaWQ7CisgIF9fdTggc2w7CisgIF9fdTggc3JjX3BhdGhfYml0czsKKyAgX191OCBzdGF0aWNfcmF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZXNlcnZlZDsKKyAgX191OCBpc19nbG9iYWw7CisgIF9fdTggcG9ydF9udW07CisgIF9fdTggcmVzZXJ2ZWQ7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfcXBfYXR0ciB7Ci0gX191MzIgcXBfYXR0cl9tYXNrOworICBfX3UzMiBxcF9hdHRyX21hc2s7CisgIF9fdTMyIHFwX3N0YXRlOworICBfX3UzMiBjdXJfcXBfc3RhdGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFwX3N0YXRlOwotIF9fdTMyIGN1cl9xcF9zdGF0ZTsKLSBfX3UzMiBwYXRoX210dTsKLSBfX3UzMiBwYXRoX21pZ19zdGF0ZTsKKyAgX191MzIgcGF0aF9tdHU7CisgIF9fdTMyIHBhdGhfbWlnX3N0YXRlOworICBfX3UzMiBxa2V5OworICBfX3UzMiBycV9wc247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFrZXk7Ci0gX191MzIgcnFfcHNuOwotIF9fdTMyIHNxX3BzbjsKLSBfX3UzMiBkZXN0X3FwX251bTsKKyAgX191MzIgc3FfcHNuOworICBfX3UzMiBkZXN0X3FwX251bTsKKyAgX191MzIgcXBfYWNjZXNzX2ZsYWdzOworICBzdHJ1Y3QgaWJfdXZlcmJzX2FoX2F0dHIgYWhfYXR0cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcXBfYWNjZXNzX2ZsYWdzOwotIHN0cnVjdCBpYl91dmVyYnNfYWhfYXR0ciBhaF9hdHRyOwotIHN0cnVjdCBpYl91dmVyYnNfYWhfYXR0ciBhbHRfYWhfYXR0cjsKLSBfX3UzMiBtYXhfc2VuZF93cjsKKyAgc3RydWN0IGliX3V2ZXJic19haF9hdHRyIGFsdF9haF9hdHRyOworICBfX3UzMiBtYXhfc2VuZF93cjsKKyAgX191MzIgbWF4X3JlY3Zfd3I7CisgIF9fdTMyIG1heF9zZW5kX3NnZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X3JlY3Zfd3I7Ci0gX191MzIgbWF4X3NlbmRfc2dlOwotIF9fdTMyIG1heF9yZWN2X3NnZTsKLSBfX3UzMiBtYXhfaW5saW5lX2RhdGE7CisgIF9fdTMyIG1heF9yZWN2X3NnZTsKKyAgX191MzIgbWF4X2lubGluZV9kYXRhOworICBfX3UxNiBwa2V5X2luZGV4OworICBfX3UxNiBhbHRfcGtleV9pbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcGtleV9pbmRleDsKLSBfX3UxNiBhbHRfcGtleV9pbmRleDsKLSBfX3U4IGVuX3NxZF9hc3luY19ub3RpZnk7Ci0gX191OCBzcV9kcmFpbmluZzsKKyAgX191OCBlbl9zcWRfYXN5bmNfbm90aWZ5OworICBfX3U4IHNxX2RyYWluaW5nOworICBfX3U4IG1heF9yZF9hdG9taWM7CisgIF9fdTggbWF4X2Rlc3RfcmRfYXRvbWljOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG1heF9yZF9hdG9taWM7Ci0gX191OCBtYXhfZGVzdF9yZF9hdG9taWM7Ci0gX191OCBtaW5fcm5yX3RpbWVyOwotIF9fdTggcG9ydF9udW07CisgIF9fdTggbWluX3Jucl90aW1lcjsKKyAgX191OCBwb3J0X251bTsKKyAgX191OCB0aW1lb3V0OworICBfX3U4IHJldHJ5X2NudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0aW1lb3V0OwotIF9fdTggcmV0cnlfY250OwotIF9fdTggcm5yX3JldHJ5OwotIF9fdTggYWx0X3BvcnRfbnVtOworICBfX3U4IHJucl9yZXRyeTsKKyAgX191OCBhbHRfcG9ydF9udW07CisgIF9fdTggYWx0X3RpbWVvdXQ7CisgIF9fdTggcmVzZXJ2ZWRbNV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggYWx0X3RpbWVvdXQ7Ci0gX191OCByZXNlcnZlZFs1XTsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX2NyZWF0ZV9xcCB7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCB1c2VyX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgcmVzcG9uc2U7Ci0gX191NjQgdXNlcl9oYW5kbGU7Ci0gX191MzIgcGRfaGFuZGxlOwotIF9fdTMyIHNlbmRfY3FfaGFuZGxlOworICBfX3UzMiBwZF9oYW5kbGU7CisgIF9fdTMyIHNlbmRfY3FfaGFuZGxlOworICBfX3UzMiByZWN2X2NxX2hhbmRsZTsKKyAgX191MzIgc3JxX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVjdl9jcV9oYW5kbGU7Ci0gX191MzIgc3JxX2hhbmRsZTsKLSBfX3UzMiBtYXhfc2VuZF93cjsKLSBfX3UzMiBtYXhfcmVjdl93cjsKKyAgX191MzIgbWF4X3NlbmRfd3I7CisgIF9fdTMyIG1heF9yZWN2X3dyOworICBfX3UzMiBtYXhfc2VuZF9zZ2U7CisgIF9fdTMyIG1heF9yZWN2X3NnZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X3NlbmRfc2dlOwotIF9fdTMyIG1heF9yZWN2X3NnZTsKLSBfX3UzMiBtYXhfaW5saW5lX2RhdGE7Ci0gX191OCBzcV9zaWdfYWxsOworICBfX3UzMiBtYXhfaW5saW5lX2RhdGE7CisgIF9fdTggc3Ffc2lnX2FsbDsKKyAgX191OCBxcF90eXBlOworICBfX3U4IGlzX3NycTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBxcF90eXBlOwotIF9fdTggaXNfc3JxOwotIF9fdTggcmVzZXJ2ZWQ7Ci0gX191NjQgZHJpdmVyX2RhdGFbMF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHJlc2VydmVkOworICBfX3U2NCBkcml2ZXJfZGF0YVswXTsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX29wZW5fcXAgewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTY0IHVzZXJfaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBwZF9oYW5kbGU7Ci0gX191MzIgcXBuOwotIF9fdTggcXBfdHlwZTsKLSBfX3U4IHJlc2VydmVkWzddOworICBfX3U2NCByZXNwb25zZTsKKyAgX191NjQgdXNlcl9oYW5kbGU7CisgIF9fdTMyIHBkX2hhbmRsZTsKKyAgX191MzIgcXBuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX191OCBxcF90eXBlOworICBfX3U4IHJlc2VydmVkWzddOworICBfX3U2NCBkcml2ZXJfZGF0YVswXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19jcmVhdGVfcXBfcmVzcCB7Ci0gX191MzIgcXBfaGFuZGxlOworICBfX3UzMiBxcF9oYW5kbGU7CisgIF9fdTMyIHFwbjsKKyAgX191MzIgbWF4X3NlbmRfd3I7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFwbjsKLSBfX3UzMiBtYXhfc2VuZF93cjsKLSBfX3UzMiBtYXhfcmVjdl93cjsKLSBfX3UzMiBtYXhfc2VuZF9zZ2U7CisgIF9fdTMyIG1heF9yZWN2X3dyOworICBfX3UzMiBtYXhfc2VuZF9zZ2U7CisgIF9fdTMyIG1heF9yZWN2X3NnZTsKKyAgX191MzIgbWF4X2lubGluZV9kYXRhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXhfcmVjdl9zZ2U7Ci0gX191MzIgbWF4X2lubGluZV9kYXRhOwotIF9fdTMyIHJlc2VydmVkOworICBfX3UzMiByZXNlcnZlZDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19xcF9kZXN0IHsKLSBfX3U4IGRnaWRbMTZdOwotIF9fdTMyIGZsb3dfbGFiZWw7Ci0gX191MTYgZGxpZDsKKyAgX191OCBkZ2lkWzE2XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgcmVzZXJ2ZWQ7Ci0gX191OCBzZ2lkX2luZGV4OwotIF9fdTggaG9wX2xpbWl0OwotIF9fdTggdHJhZmZpY19jbGFzczsKKyAgX191MzIgZmxvd19sYWJlbDsKKyAgX191MTYgZGxpZDsKKyAgX191MTYgcmVzZXJ2ZWQ7CisgIF9fdTggc2dpZF9pbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzbDsKLSBfX3U4IHNyY19wYXRoX2JpdHM7Ci0gX191OCBzdGF0aWNfcmF0ZTsKLSBfX3U4IGlzX2dsb2JhbDsKKyAgX191OCBob3BfbGltaXQ7CisgIF9fdTggdHJhZmZpY19jbGFzczsKKyAgX191OCBzbDsKKyAgX191OCBzcmNfcGF0aF9iaXRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBvcnRfbnVtOworICBfX3U4IHN0YXRpY19yYXRlOworICBfX3U4IGlzX2dsb2JhbDsKKyAgX191OCBwb3J0X251bTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19xdWVyeV9xcCB7Ci0gX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3UzMiBxcF9oYW5kbGU7CisgIF9fdTMyIGF0dHJfbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcXBfaGFuZGxlOwotIF9fdTMyIGF0dHJfbWFzazsKLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX191NjQgZHJpdmVyX2RhdGFbMF07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfcXVlcnlfcXBfcmVzcCB7Ci0gc3RydWN0IGliX3V2ZXJic19xcF9kZXN0IGRlc3Q7Ci0gc3RydWN0IGliX3V2ZXJic19xcF9kZXN0IGFsdF9kZXN0OwotIF9fdTMyIG1heF9zZW5kX3dyOworICBzdHJ1Y3QgaWJfdXZlcmJzX3FwX2Rlc3QgZGVzdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X3JlY3Zfd3I7Ci0gX191MzIgbWF4X3NlbmRfc2dlOwotIF9fdTMyIG1heF9yZWN2X3NnZTsKLSBfX3UzMiBtYXhfaW5saW5lX2RhdGE7CisgIHN0cnVjdCBpYl91dmVyYnNfcXBfZGVzdCBhbHRfZGVzdDsKKyAgX191MzIgbWF4X3NlbmRfd3I7CisgIF9fdTMyIG1heF9yZWN2X3dyOworICBfX3UzMiBtYXhfc2VuZF9zZ2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFrZXk7Ci0gX191MzIgcnFfcHNuOwotIF9fdTMyIHNxX3BzbjsKLSBfX3UzMiBkZXN0X3FwX251bTsKKyAgX191MzIgbWF4X3JlY3Zfc2dlOworICBfX3UzMiBtYXhfaW5saW5lX2RhdGE7CisgIF9fdTMyIHFrZXk7CisgIF9fdTMyIHJxX3BzbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcXBfYWNjZXNzX2ZsYWdzOwotIF9fdTE2IHBrZXlfaW5kZXg7Ci0gX191MTYgYWx0X3BrZXlfaW5kZXg7Ci0gX191OCBxcF9zdGF0ZTsKKyAgX191MzIgc3FfcHNuOworICBfX3UzMiBkZXN0X3FwX251bTsKKyAgX191MzIgcXBfYWNjZXNzX2ZsYWdzOworICBfX3UxNiBwa2V5X2luZGV4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGN1cl9xcF9zdGF0ZTsKLSBfX3U4IHBhdGhfbXR1OwotIF9fdTggcGF0aF9taWdfc3RhdGU7Ci0gX191OCBzcV9kcmFpbmluZzsKKyAgX191MTYgYWx0X3BrZXlfaW5kZXg7CisgIF9fdTggcXBfc3RhdGU7CisgIF9fdTggY3VyX3FwX3N0YXRlOworICBfX3U4IHBhdGhfbXR1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IG1heF9yZF9hdG9taWM7Ci0gX191OCBtYXhfZGVzdF9yZF9hdG9taWM7Ci0gX191OCBtaW5fcm5yX3RpbWVyOwotIF9fdTggcG9ydF9udW07CisgIF9fdTggcGF0aF9taWdfc3RhdGU7CisgIF9fdTggc3FfZHJhaW5pbmc7CisgIF9fdTggbWF4X3JkX2F0b21pYzsKKyAgX191OCBtYXhfZGVzdF9yZF9hdG9taWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdGltZW91dDsKLSBfX3U4IHJldHJ5X2NudDsKLSBfX3U4IHJucl9yZXRyeTsKLSBfX3U4IGFsdF9wb3J0X251bTsKKyAgX191OCBtaW5fcm5yX3RpbWVyOworICBfX3U4IHBvcnRfbnVtOworICBfX3U4IHRpbWVvdXQ7CisgIF9fdTggcmV0cnlfY250OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGFsdF90aW1lb3V0OwotIF9fdTggc3Ffc2lnX2FsbDsKLSBfX3U4IHJlc2VydmVkWzVdOwotIF9fdTY0IGRyaXZlcl9kYXRhWzBdOworICBfX3U4IHJucl9yZXRyeTsKKyAgX191OCBhbHRfcG9ydF9udW07CisgIF9fdTggYWx0X3RpbWVvdXQ7CisgIF9fdTggc3Ffc2lnX2FsbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcmVzZXJ2ZWRbNV07CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfbW9kaWZ5X3FwIHsKLSBzdHJ1Y3QgaWJfdXZlcmJzX3FwX2Rlc3QgZGVzdDsKLSBzdHJ1Y3QgaWJfdXZlcmJzX3FwX2Rlc3QgYWx0X2Rlc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFwX2hhbmRsZTsKLSBfX3UzMiBhdHRyX21hc2s7Ci0gX191MzIgcWtleTsKLSBfX3UzMiBycV9wc247CisgIHN0cnVjdCBpYl91dmVyYnNfcXBfZGVzdCBkZXN0OworICBzdHJ1Y3QgaWJfdXZlcmJzX3FwX2Rlc3QgYWx0X2Rlc3Q7CisgIF9fdTMyIHFwX2hhbmRsZTsKKyAgX191MzIgYXR0cl9tYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcV9wc247Ci0gX191MzIgZGVzdF9xcF9udW07Ci0gX191MzIgcXBfYWNjZXNzX2ZsYWdzOwotIF9fdTE2IHBrZXlfaW5kZXg7CisgIF9fdTMyIHFrZXk7CisgIF9fdTMyIHJxX3BzbjsKKyAgX191MzIgc3FfcHNuOworICBfX3UzMiBkZXN0X3FwX251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgYWx0X3BrZXlfaW5kZXg7Ci0gX191OCBxcF9zdGF0ZTsKLSBfX3U4IGN1cl9xcF9zdGF0ZTsKLSBfX3U4IHBhdGhfbXR1OworICBfX3UzMiBxcF9hY2Nlc3NfZmxhZ3M7CisgIF9fdTE2IHBrZXlfaW5kZXg7CisgIF9fdTE2IGFsdF9wa2V5X2luZGV4OworICBfX3U4IHFwX3N0YXRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHBhdGhfbWlnX3N0YXRlOwotIF9fdTggZW5fc3FkX2FzeW5jX25vdGlmeTsKLSBfX3U4IG1heF9yZF9hdG9taWM7Ci0gX191OCBtYXhfZGVzdF9yZF9hdG9taWM7CisgIF9fdTggY3VyX3FwX3N0YXRlOworICBfX3U4IHBhdGhfbXR1OworICBfX3U4IHBhdGhfbWlnX3N0YXRlOworICBfX3U4IGVuX3NxZF9hc3luY19ub3RpZnk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbWluX3Jucl90aW1lcjsKLSBfX3U4IHBvcnRfbnVtOwotIF9fdTggdGltZW91dDsKLSBfX3U4IHJldHJ5X2NudDsKKyAgX191OCBtYXhfcmRfYXRvbWljOworICBfX3U4IG1heF9kZXN0X3JkX2F0b21pYzsKKyAgX191OCBtaW5fcm5yX3RpbWVyOworICBfX3U4IHBvcnRfbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJucl9yZXRyeTsKLSBfX3U4IGFsdF9wb3J0X251bTsKLSBfX3U4IGFsdF90aW1lb3V0OwotIF9fdTggcmVzZXJ2ZWRbMl07CisgIF9fdTggdGltZW91dDsKKyAgX191OCByZXRyeV9jbnQ7CisgIF9fdTggcm5yX3JldHJ5OworICBfX3U4IGFsdF9wb3J0X251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgZHJpdmVyX2RhdGFbMF07CisgIF9fdTggYWx0X3RpbWVvdXQ7CisgIF9fdTggcmVzZXJ2ZWRbMl07CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX21vZGlmeV9xcF9yZXNwIHsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19kZXN0cm95X3FwIHsKLSBfX3U2NCByZXNwb25zZTsKLSBfX3UzMiBxcF9oYW5kbGU7Ci0gX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTY0IHJlc3BvbnNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgcXBfaGFuZGxlOworICBfX3UzMiByZXNlcnZlZDsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX2Rlc3Ryb3lfcXBfcmVzcCB7Ci0gX191MzIgZXZlbnRzX3JlcG9ydGVkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgZXZlbnRzX3JlcG9ydGVkOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX3NnZSB7Ci0gX191NjQgYWRkcjsKLSBfX3UzMiBsZW5ndGg7Ci0gX191MzIgbGtleTsKKyAgX191NjQgYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGxlbmd0aDsKKyAgX191MzIgbGtleTsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX3NlbmRfd3IgewotIF9fdTY0IHdyX2lkOwotIF9fdTMyIG51bV9zZ2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG9wY29kZTsKLSBfX3UzMiBzZW5kX2ZsYWdzOwotIHVuaW9uIHsKLSBfX3UzMiBpbW1fZGF0YTsKKyAgX191NjQgd3JfaWQ7CisgIF9fdTMyIG51bV9zZ2U7CisgIF9fdTMyIG9wY29kZTsKKyAgX191MzIgc2VuZF9mbGFnczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW52YWxpZGF0ZV9ya2V5OwotIH0gZXg7Ci0gdW5pb24gewotIHN0cnVjdCB7CisgIHVuaW9uIHsKKyAgICBfX3UzMiBpbW1fZGF0YTsKKyAgICBfX3UzMiBpbnZhbGlkYXRlX3JrZXk7CisgIH0gZXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlbW90ZV9hZGRyOwotIF9fdTMyIHJrZXk7Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0gfSByZG1hOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIF9fdTY0IHJlbW90ZV9hZGRyOworICAgICAgX191MzIgcmtleTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX3U2NCByZW1vdGVfYWRkcjsKLSBfX3U2NCBjb21wYXJlX2FkZDsKLSBfX3U2NCBzd2FwOworICAgICAgX191MzIgcmVzZXJ2ZWQ7CisgICAgfSByZG1hOworICAgIHN0cnVjdCB7CisgICAgICBfX3U2NCByZW1vdGVfYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmtleTsKLSBfX3UzMiByZXNlcnZlZDsKLSB9IGF0b21pYzsKLSBzdHJ1Y3QgeworICAgICAgX191NjQgY29tcGFyZV9hZGQ7CisgICAgICBfX3U2NCBzd2FwOworICAgICAgX191MzIgcmtleTsKKyAgICAgIF9fdTMyIHJlc2VydmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhaDsKLSBfX3UzMiByZW1vdGVfcXBuOwotIF9fdTMyIHJlbW90ZV9xa2V5OwotIF9fdTMyIHJlc2VydmVkOworICAgIH0gYXRvbWljOworICAgIHN0cnVjdCB7CisgICAgICBfX3UzMiBhaDsKKyAgICAgIF9fdTMyIHJlbW90ZV9xcG47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gdWQ7Ci0gfSB3cjsKKyAgICAgIF9fdTMyIHJlbW90ZV9xa2V5OworICAgICAgX191MzIgcmVzZXJ2ZWQ7CisgICAgfSB1ZDsKKyAgfSB3cjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3V2ZXJic19wb3N0X3NlbmQgeworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgcXBfaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXNwb25zZTsKLSBfX3UzMiBxcF9oYW5kbGU7Ci0gX191MzIgd3JfY291bnQ7Ci0gX191MzIgc2dlX2NvdW50OworICBfX3UzMiB3cl9jb3VudDsKKyAgX191MzIgc2dlX2NvdW50OworICBfX3UzMiB3cWVfc2l6ZTsKKyAgc3RydWN0IGliX3V2ZXJic19zZW5kX3dyIHNlbmRfd3JbMF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHdxZV9zaXplOwotIHN0cnVjdCBpYl91dmVyYnNfc2VuZF93ciBzZW5kX3dyWzBdOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfcG9zdF9zZW5kX3Jlc3AgewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBiYWRfd3I7CisgIF9fdTMyIGJhZF93cjsKIH07Ci1zdHJ1Y3QgaWJfdXZlcmJzX3JlY3Zfd3IgewotIF9fdTY0IHdyX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBudW1fc2dlOwotIF9fdTMyIHJlc2VydmVkOworc3RydWN0IGliX3V2ZXJic19yZWN2X3dyIHsKKyAgX191NjQgd3JfaWQ7CisgIF9fdTMyIG51bV9zZ2U7CisgIF9fdTMyIHJlc2VydmVkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX3Bvc3RfcmVjdiB7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3UzMiBxcF9oYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTMyIHFwX2hhbmRsZTsKLSBfX3UzMiB3cl9jb3VudDsKLSBfX3UzMiBzZ2VfY291bnQ7CisgIF9fdTMyIHdyX2NvdW50OworICBfX3UzMiBzZ2VfY291bnQ7CisgIF9fdTMyIHdxZV9zaXplOworICBzdHJ1Y3QgaWJfdXZlcmJzX3JlY3Zfd3IgcmVjdl93clswXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgd3FlX3NpemU7Ci0gc3RydWN0IGliX3V2ZXJic19yZWN2X3dyIHJlY3Zfd3JbMF07CiB9Owogc3RydWN0IGliX3V2ZXJic19wb3N0X3JlY3ZfcmVzcCB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJhZF93cjsKKyAgX191MzIgYmFkX3dyOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX3Bvc3Rfc3JxX3JlY3YgewotIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgc3JxX2hhbmRsZTsKKyAgX191MzIgd3JfY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNycV9oYW5kbGU7Ci0gX191MzIgd3JfY291bnQ7Ci0gX191MzIgc2dlX2NvdW50OwotIF9fdTMyIHdxZV9zaXplOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaWJfdXZlcmJzX3JlY3Zfd3IgcmVjdlswXTsKKyAgX191MzIgc2dlX2NvdW50OworICBfX3UzMiB3cWVfc2l6ZTsKKyAgc3RydWN0IGliX3V2ZXJic19yZWN2X3dyIHJlY3ZbMF07CiB9Owotc3RydWN0IGliX3V2ZXJic19wb3N0X3NycV9yZWN2X3Jlc3AgewotIF9fdTMyIGJhZF93cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3QgaWJfdXZlcmJzX3Bvc3Rfc3JxX3JlY3ZfcmVzcCB7CisgIF9fdTMyIGJhZF93cjsKIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX2NyZWF0ZV9haCB7Ci0gX191NjQgcmVzcG9uc2U7Ci0gX191NjQgdXNlcl9oYW5kbGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBkX2hhbmRsZTsKLSBfX3UzMiByZXNlcnZlZDsKLSBzdHJ1Y3QgaWJfdXZlcmJzX2FoX2F0dHIgYXR0cjsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IHVzZXJfaGFuZGxlOworICBfX3UzMiBwZF9oYW5kbGU7CisgIF9fdTMyIHJlc2VydmVkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgc3RydWN0IGliX3V2ZXJic19haF9hdHRyIGF0dHI7CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfY3JlYXRlX2FoX3Jlc3AgewotIF9fdTMyIGFoX2hhbmRsZTsKKyAgX191MzIgYWhfaGFuZGxlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX2Rlc3Ryb3lfYWggewotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBhaF9oYW5kbGU7CisgIF9fdTMyIGFoX2hhbmRsZTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19hdHRhY2hfbWNhc3QgewotIF9fdTggZ2lkWzE2XTsKKyAgX191OCBnaWRbMTZdOworICBfX3UzMiBxcF9oYW5kbGU7CisgIF9fdTE2IG1saWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHFwX2hhbmRsZTsKLSBfX3UxNiBtbGlkOwotIF9fdTE2IHJlc2VydmVkOwotIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MTYgcmVzZXJ2ZWQ7CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKIHN0cnVjdCBpYl91dmVyYnNfZGV0YWNoX21jYXN0IHsKLSBfX3U4IGdpZFsxNl07Ci0gX191MzIgcXBfaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBtbGlkOwotIF9fdTE2IHJlc2VydmVkOwotIF9fdTY0IGRyaXZlcl9kYXRhWzBdOworICBfX3U4IGdpZFsxNl07CisgIF9fdTMyIHFwX2hhbmRsZTsKKyAgX191MTYgbWxpZDsKKyAgX191MTYgcmVzZXJ2ZWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U2NCBkcml2ZXJfZGF0YVswXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19mbG93X3NwZWNfaGRyIHsKLSBfX3UzMiB0eXBlOwotIF9fdTE2IHNpemU7Ci0gX191MTYgcmVzZXJ2ZWQ7CisgIF9fdTMyIHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IGZsb3dfc3BlY19kYXRhWzBdOworICBfX3UxNiBzaXplOworICBfX3UxNiByZXNlcnZlZDsKKyAgX191NjQgZmxvd19zcGVjX2RhdGFbMF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfZmxvd19ldGhfZmlsdGVyIHsKLSBfX3U4IGRzdF9tYWNbNl07CisgIF9fdTggZHN0X21hY1s2XTsKKyAgX191OCBzcmNfbWFjWzZdOworICBfX2JlMTYgZXRoZXJfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzcmNfbWFjWzZdOwotIF9fYmUxNiBldGhlcl90eXBlOwotIF9fYmUxNiB2bGFuX3RhZzsKKyAgX19iZTE2IHZsYW5fdGFnOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfc3BlY19ldGggewotIHVuaW9uIHsKLSBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfc3BlY19oZHIgaGRyOwotIHN0cnVjdCB7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UxNiBzaXplOwotIF9fdTE2IHJlc2VydmVkOwotIH07CisgICAgc3RydWN0IGliX3V2ZXJic19mbG93X3NwZWNfaGRyIGhkcjsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MzIgdHlwZTsKKyAgICAgIF9fdTE2IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07Ci0gc3RydWN0IGliX3V2ZXJic19mbG93X2V0aF9maWx0ZXIgdmFsOwotIHN0cnVjdCBpYl91dmVyYnNfZmxvd19ldGhfZmlsdGVyIG1hc2s7CisgICAgICBfX3UxNiByZXNlcnZlZDsKKyAgICB9OworICB9OworICBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfZXRoX2ZpbHRlciB2YWw7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfZXRoX2ZpbHRlciBtYXNrOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfaXB2NF9maWx0ZXIgewotIF9fYmUzMiBzcmNfaXA7Ci0gX19iZTMyIGRzdF9pcDsKLX07CisgIF9fYmUzMiBzcmNfaXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX2JlMzIgZHN0X2lwOworfTsKIHN0cnVjdCBpYl91dmVyYnNfZmxvd19zcGVjX2lwdjQgewotIHVuaW9uIHsKLSBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfc3BlY19oZHIgaGRyOwotIHN0cnVjdCB7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UxNiBzaXplOwotIF9fdTE2IHJlc2VydmVkOwotIH07CisgICAgc3RydWN0IGliX3V2ZXJic19mbG93X3NwZWNfaGRyIGhkcjsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MzIgdHlwZTsKKyAgICAgIF9fdTE2IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07Ci0gc3RydWN0IGliX3V2ZXJic19mbG93X2lwdjRfZmlsdGVyIHZhbDsKLSBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfaXB2NF9maWx0ZXIgbWFzazsKKyAgICAgIF9fdTE2IHJlc2VydmVkOworICAgIH07CisgIH07CisgIHN0cnVjdCBpYl91dmVyYnNfZmxvd19pcHY0X2ZpbHRlciB2YWw7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfaXB2NF9maWx0ZXIgbWFzazsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19mbG93X3RjcF91ZHBfZmlsdGVyIHsKLSBfX2JlMTYgZHN0X3BvcnQ7Ci0gX19iZTE2IHNyY19wb3J0OwotfTsKKyAgX19iZTE2IGRzdF9wb3J0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX19iZTE2IHNyY19wb3J0OworfTsKIHN0cnVjdCBpYl91dmVyYnNfZmxvd19zcGVjX3RjcF91ZHAgewotIHVuaW9uIHsKLSBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfc3BlY19oZHIgaGRyOwotIHN0cnVjdCB7CisgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdHlwZTsKLSBfX3UxNiBzaXplOwotIF9fdTE2IHJlc2VydmVkOwotIH07CisgICAgc3RydWN0IGliX3V2ZXJic19mbG93X3NwZWNfaGRyIGhkcjsKKyAgICBzdHJ1Y3QgeworICAgICAgX191MzIgdHlwZTsKKyAgICAgIF9fdTE2IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH07Ci0gc3RydWN0IGliX3V2ZXJic19mbG93X3RjcF91ZHBfZmlsdGVyIHZhbDsKLSBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfdGNwX3VkcF9maWx0ZXIgbWFzazsKKyAgICAgIF9fdTE2IHJlc2VydmVkOworICAgIH07CisgIH07CisgIHN0cnVjdCBpYl91dmVyYnNfZmxvd190Y3BfdWRwX2ZpbHRlciB2YWw7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgaWJfdXZlcmJzX2Zsb3dfdGNwX3VkcF9maWx0ZXIgbWFzazsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGliX3V2ZXJic19mbG93X2F0dHIgewotIF9fdTMyIHR5cGU7Ci0gX191MTYgc2l6ZTsKLSBfX3UxNiBwcmlvcml0eTsKKyAgX191MzIgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBudW1fb2Zfc3BlY3M7Ci0gX191OCByZXNlcnZlZFsyXTsKLSBfX3U4IHBvcnQ7Ci0gX191MzIgZmxhZ3M7CisgIF9fdTE2IHNpemU7CisgIF9fdTE2IHByaW9yaXR5OworICBfX3U4IG51bV9vZl9zcGVjczsKKyAgX191OCByZXNlcnZlZFsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGliX3V2ZXJic19mbG93X3NwZWNfaGRyIGZsb3dfc3BlY3NbMF07CisgIF9fdTggcG9ydDsKKyAgX191MzIgZmxhZ3M7CisgIHN0cnVjdCBpYl91dmVyYnNfZmxvd19zcGVjX2hkciBmbG93X3NwZWNzWzBdOwogfTsKLXN0cnVjdCBpYl91dmVyYnNfY3JlYXRlX2Zsb3cgewotIF9fdTMyIGNvbXBfbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcXBfaGFuZGxlOwotIHN0cnVjdCBpYl91dmVyYnNfZmxvd19hdHRyIGZsb3dfYXR0cjsKK3N0cnVjdCBpYl91dmVyYnNfY3JlYXRlX2Zsb3cgeworICBfX3UzMiBjb21wX21hc2s7CisgIF9fdTMyIHFwX2hhbmRsZTsKKyAgc3RydWN0IGliX3V2ZXJic19mbG93X2F0dHIgZmxvd19hdHRyOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgaWJfdXZlcmJzX2NyZWF0ZV9mbG93X3Jlc3AgeworICBfX3UzMiBjb21wX21hc2s7CisgIF9fdTMyIGZsb3dfaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb21wX21hc2s7Ci0gX191MzIgZmxvd19oYW5kbGU7CiB9Owogc3RydWN0IGliX3V2ZXJic19kZXN0cm95X2Zsb3cgeworICBfX3UzMiBjb21wX21hc2s7CisgIF9fdTMyIGZsb3dfaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjb21wX21hc2s7Ci0gX191MzIgZmxvd19oYW5kbGU7CiB9Owogc3RydWN0IGliX3V2ZXJic19jcmVhdGVfc3JxIHsKKyAgX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IHVzZXJfaGFuZGxlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXNwb25zZTsKLSBfX3U2NCB1c2VyX2hhbmRsZTsKLSBfX3UzMiBwZF9oYW5kbGU7Ci0gX191MzIgbWF4X3dyOworICBfX3UzMiBwZF9oYW5kbGU7CisgIF9fdTMyIG1heF93cjsKKyAgX191MzIgbWF4X3NnZTsKKyAgX191MzIgc3JxX2xpbWl0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXhfc2dlOwotIF9fdTMyIHNycV9saW1pdDsKLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX191NjQgZHJpdmVyX2RhdGFbMF07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfY3JlYXRlX3hzcnEgewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTY0IHVzZXJfaGFuZGxlOwotIF9fdTMyIHNycV90eXBlOworICBfX3U2NCByZXNwb25zZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcGRfaGFuZGxlOwotIF9fdTMyIG1heF93cjsKLSBfX3UzMiBtYXhfc2dlOwotIF9fdTMyIHNycV9saW1pdDsKKyAgX191NjQgdXNlcl9oYW5kbGU7CisgIF9fdTMyIHNycV90eXBlOworICBfX3UzMiBwZF9oYW5kbGU7CisgIF9fdTMyIG1heF93cjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWQ7Ci0gX191MzIgeHJjZF9oYW5kbGU7Ci0gX191MzIgY3FfaGFuZGxlOwotIF9fdTY0IGRyaXZlcl9kYXRhWzBdOworICBfX3UzMiBtYXhfc2dlOworICBfX3UzMiBzcnFfbGltaXQ7CisgIF9fdTMyIHJlc2VydmVkOworICBfX3UzMiB4cmNkX2hhbmRsZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGNxX2hhbmRsZTsKKyAgX191NjQgZHJpdmVyX2RhdGFbMF07CiB9Owogc3RydWN0IGliX3V2ZXJic19jcmVhdGVfc3JxX3Jlc3AgewotIF9fdTMyIHNycV9oYW5kbGU7Ci0gX191MzIgbWF4X3dyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYXhfc2dlOwotIF9fdTMyIHNycW47CisgIF9fdTMyIHNycV9oYW5kbGU7CisgIF9fdTMyIG1heF93cjsKKyAgX191MzIgbWF4X3NnZTsKKyAgX191MzIgc3JxbjsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGliX3V2ZXJic19tb2RpZnlfc3JxIHsKKyAgX191MzIgc3JxX2hhbmRsZTsKKyAgX191MzIgYXR0cl9tYXNrOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzcnFfaGFuZGxlOwotIF9fdTMyIGF0dHJfbWFzazsKLSBfX3UzMiBtYXhfd3I7Ci0gX191MzIgc3JxX2xpbWl0OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX191MzIgbWF4X3dyOworICBfX3UzMiBzcnFfbGltaXQ7CisgIF9fdTY0IGRyaXZlcl9kYXRhWzBdOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaWJfdXZlcmJzX3F1ZXJ5X3NycSB7Ci0gX191NjQgcmVzcG9uc2U7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3UzMiBzcnFfaGFuZGxlOworICBfX3UzMiByZXNlcnZlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3JxX2hhbmRsZTsKLSBfX3UzMiByZXNlcnZlZDsKLSBfX3U2NCBkcml2ZXJfZGF0YVswXTsKKyAgX191NjQgZHJpdmVyX2RhdGFbMF07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpYl91dmVyYnNfcXVlcnlfc3JxX3Jlc3AgewotIF9fdTMyIG1heF93cjsKLSBfX3UzMiBtYXhfc2dlOwotIF9fdTMyIHNycV9saW1pdDsKKyAgX191MzIgbWF4X3dyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNlcnZlZDsKKyAgX191MzIgbWF4X3NnZTsKKyAgX191MzIgc3JxX2xpbWl0OworICBfX3UzMiByZXNlcnZlZDsKIH07Ci1zdHJ1Y3QgaWJfdXZlcmJzX2Rlc3Ryb3lfc3JxIHsKLSBfX3U2NCByZXNwb25zZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgc3JxX2hhbmRsZTsKLSBfX3UzMiByZXNlcnZlZDsKK3N0cnVjdCBpYl91dmVyYnNfZGVzdHJveV9zcnEgeworICBfX3U2NCByZXNwb25zZTsKKyAgX191MzIgc3JxX2hhbmRsZTsKKyAgX191MzIgcmVzZXJ2ZWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBpYl91dmVyYnNfZGVzdHJveV9zcnFfcmVzcCB7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGV2ZW50c19yZXBvcnRlZDsKKyAgX191MzIgZXZlbnRzX3JlcG9ydGVkOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvcmRtYS9yZG1hX25ldGxpbmsuaCBiL2xpYmMva2VybmVsL3VhcGkvcmRtYS9yZG1hX25ldGxpbmsuaAppbmRleCAxOTViN2YxLi5lNDliZmZmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3JkbWEvcmRtYV9uZXRsaW5rLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9yZG1hL3JkbWFfbmV0bGluay5oCkBAIC0yMSwzNCArMjEsMTM1IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSRE1BX05MX1JETUFfQ00gPSAxCisgIFJETUFfTkxfUkRNQV9DTSA9IDEsCisgIFJETUFfTkxfTkVTLAorICBSRE1BX05MX0M0SVcsCisgIFJETUFfTkxfTlVNX0NMSUVOVFMKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCit9OworZW51bSB7CisgIFJETUFfTkxfR1JPVVBfQ00gPSAxLAorICBSRE1BX05MX0dST1VQX0lXUE0sCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBSRE1BX05MX05VTV9HUk9VUFMKIH07CiAjZGVmaW5lIFJETUFfTkxfR0VUX0NMSUVOVCh0eXBlKSAoKHR5cGUgJiAoKCgxIDw8IDYpIC0gMSkgPDwgMTApKSA+PiAxMCkKICNkZWZpbmUgUkRNQV9OTF9HRVRfT1AodHlwZSkgKHR5cGUgJiAoKDEgPDwgMTApIC0gMSkpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBSRE1BX05MX0dFVF9UWVBFKGNsaWVudCwgb3ApICgoY2xpZW50IDw8IDEwKSArIG9wKQorI2RlZmluZSBSRE1BX05MX0dFVF9UWVBFKGNsaWVudCxvcCkgKChjbGllbnQgPDwgMTApICsgb3ApCiBlbnVtIHsKLSBSRE1BX05MX1JETUFfQ01fSURfU1RBVFMgPSAwLAotIFJETUFfTkxfUkRNQV9DTV9OVU1fT1BTCisgIFJETUFfTkxfUkRNQV9DTV9JRF9TVEFUUyA9IDAsCisgIFJETUFfTkxfUkRNQV9DTV9OVU1fT1BTCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gewotIFJETUFfTkxfUkRNQV9DTV9BVFRSX1NSQ19BRERSID0gMSwKLSBSRE1BX05MX1JETUFfQ01fQVRUUl9EU1RfQUREUiwKKyAgUkRNQV9OTF9SRE1BX0NNX0FUVFJfU1JDX0FERFIgPSAxLAorICBSRE1BX05MX1JETUFfQ01fQVRUUl9EU1RfQUREUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUkRNQV9OTF9SRE1BX0NNX05VTV9BVFRSLAorICBSRE1BX05MX1JETUFfQ01fTlVNX0FUVFIsCiB9OworZW51bSB7CisgIFJETUFfTkxfSVdQTV9SRUdfUElEID0gMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFJETUFfTkxfSVdQTV9BRERfTUFQUElORywKKyAgUkRNQV9OTF9JV1BNX1FVRVJZX01BUFBJTkcsCisgIFJETUFfTkxfSVdQTV9SRU1PVkVfTUFQUElORywKKyAgUkRNQV9OTF9JV1BNX0hBTkRMRV9FUlIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBSRE1BX05MX0lXUE1fTUFQSU5GTywKKyAgUkRNQV9OTF9JV1BNX01BUElORk9fTlVNLAorICBSRE1BX05MX0lXUE1fTlVNX09QUworfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcmRtYV9jbV9pZF9zdGF0cyB7Ci0gX191MzIgcXBfbnVtOworICBfX3UzMiBxcF9udW07CisgIF9fdTMyIGJvdW5kX2Rldl9pZjsKKyAgX191MzIgcG9ydF9zcGFjZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYm91bmRfZGV2X2lmOwotIF9fdTMyIHBvcnRfc3BhY2U7Ci0gX19zMzIgcGlkOwotIF9fdTggY21fc3RhdGU7CisgIF9fczMyIHBpZDsKKyAgX191OCBjbV9zdGF0ZTsKKyAgX191OCBub2RlX3R5cGU7CisgIF9fdTggcG9ydF9udW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbm9kZV90eXBlOwotIF9fdTggcG9ydF9udW07Ci0gX191OCBxcF90eXBlOworICBfX3U4IHFwX3R5cGU7Cit9OworZW51bSB7CisgIElXUE1fTkxBX1JFR19QSURfVU5TUEVDID0gMCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElXUE1fTkxBX1JFR19QSURfU0VRLAorICBJV1BNX05MQV9SRUdfSUZfTkFNRSwKKyAgSVdQTV9OTEFfUkVHX0lCREVWX05BTUUsCisgIElXUE1fTkxBX1JFR19VTElCX05BTUUsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJV1BNX05MQV9SRUdfUElEX01BWAorfTsKK2VudW0geworICBJV1BNX05MQV9SUkVHX1BJRF9VTlNQRUMgPSAwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVdQTV9OTEFfUlJFR19QSURfU0VRLAorICBJV1BNX05MQV9SUkVHX0lCREVWX05BTUUsCisgIElXUE1fTkxBX1JSRUdfVUxJQl9OQU1FLAorICBJV1BNX05MQV9SUkVHX1VMSUJfVkVSLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVdQTV9OTEFfUlJFR19QSURfRVJSLAorICBJV1BNX05MQV9SUkVHX1BJRF9NQVgKK307CitlbnVtIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIElXUE1fTkxBX01BTkFHRV9NQVBQSU5HX1VOU1BFQyA9IDAsCisgIElXUE1fTkxBX01BTkFHRV9NQVBQSU5HX1NFUSwKKyAgSVdQTV9OTEFfTUFOQUdFX0FERFIsCisgIElXUE1fTkxBX01BTkFHRV9NQVBQRURfTE9DX0FERFIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJV1BNX05MQV9STUFOQUdFX01BUFBJTkdfRVJSLAorICBJV1BNX05MQV9STUFOQUdFX01BUFBJTkdfTUFYCit9OworI2RlZmluZSBJV1BNX05MQV9NQU5BR0VfTUFQUElOR19NQVggMworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgSVdQTV9OTEFfUVVFUllfTUFQUElOR19NQVggNAorI2RlZmluZSBJV1BNX05MQV9NQVBJTkZPX1NFTkRfTUFYIDMKK2VudW0geworICBJV1BNX05MQV9RVUVSWV9NQVBQSU5HX1VOU1BFQyA9IDAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJV1BNX05MQV9RVUVSWV9NQVBQSU5HX1NFUSwKKyAgSVdQTV9OTEFfUVVFUllfTE9DQUxfQUREUiwKKyAgSVdQTV9OTEFfUVVFUllfUkVNT1RFX0FERFIsCisgIElXUE1fTkxBX1JRVUVSWV9NQVBQRURfTE9DX0FERFIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJV1BNX05MQV9SUVVFUllfTUFQUEVEX1JFTV9BRERSLAorICBJV1BNX05MQV9SUVVFUllfTUFQUElOR19FUlIsCisgIElXUE1fTkxBX1JRVUVSWV9NQVBQSU5HX01BWAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIHsKKyAgSVdQTV9OTEFfTUFQSU5GT19SRVFfVU5TUEVDID0gMCwKKyAgSVdQTV9OTEFfTUFQSU5GT19VTElCX05BTUUsCisgIElXUE1fTkxBX01BUElORk9fVUxJQl9WRVIsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJV1BNX05MQV9NQVBJTkZPX1JFUV9NQVgKK307CitlbnVtIHsKKyAgSVdQTV9OTEFfTUFQSU5GT19VTlNQRUMgPSAwLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVdQTV9OTEFfTUFQSU5GT19MT0NBTF9BRERSLAorICBJV1BNX05MQV9NQVBJTkZPX01BUFBFRF9BRERSLAorICBJV1BNX05MQV9NQVBJTkZPX01BWAorfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitlbnVtIHsKKyAgSVdQTV9OTEFfTUFQSU5GT19OVU1fVU5TUEVDID0gMCwKKyAgSVdQTV9OTEFfTUFQSU5GT19TRVEsCisgIElXUE1fTkxBX01BUElORk9fU0VORF9OVU0sCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBJV1BNX05MQV9NQVBJTkZPX0FDS19OVU0sCisgIElXUE1fTkxBX01BUElORk9fTlVNX01BWAorfTsKK2VudW0geworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgSVdQTV9OTEFfRVJSX1VOU1BFQyA9IDAsCisgIElXUE1fTkxBX0VSUl9TRVEsCisgIElXUE1fTkxBX0VSUl9DT0RFLAorICBJV1BNX05MQV9FUlJfTUFYCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9yZG1hL3JkbWFfdXNlcl9jbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9yZG1hL3JkbWFfdXNlcl9jbS5oCmluZGV4IDc0ZTVhMDUuLmYyNDQ5MjYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvcmRtYS9yZG1hX3VzZXJfY20uaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3JkbWEvcmRtYV91c2VyX2NtLmgKQEAgLTE5LDI4MyArMTksMjg1IEBACiAjaWZuZGVmIFJETUFfVVNFUl9DTV9ICiAjZGVmaW5lIFJETUFfVVNFUl9DTV9ICiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KLSNpbmNsdWRlIDxsaW51eC9pbjYuaD4KKyNpbmNsdWRlIDxsaW51eC9zb2NrZXQuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjaW5jbHVkZSA8bGludXgvaW42Lmg+CiAjaW5jbHVkZSA8cmRtYS9pYl91c2VyX3ZlcmJzLmg+CiAjaW5jbHVkZSA8cmRtYS9pYl91c2VyX3NhLmg+CiAjZGVmaW5lIFJETUFfVVNFUl9DTV9BQklfVkVSU0lPTiA0CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBSRE1BX01BWF9QUklWQVRFX0RBVEEgMjU2Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gUkRNQV9VU0VSX0NNX0NNRF9DUkVBVEVfSUQsCi0gUkRNQV9VU0VSX0NNX0NNRF9ERVNUUk9ZX0lELAotIFJETUFfVVNFUl9DTV9DTURfQklORF9JUCwKKyAgUkRNQV9VU0VSX0NNX0NNRF9DUkVBVEVfSUQsCisgIFJETUFfVVNFUl9DTV9DTURfREVTVFJPWV9JRCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUkRNQV9VU0VSX0NNX0NNRF9SRVNPTFZFX0lQLAotIFJETUFfVVNFUl9DTV9DTURfUkVTT0xWRV9ST1VURSwKLSBSRE1BX1VTRVJfQ01fQ01EX1FVRVJZX1JPVVRFLAotIFJETUFfVVNFUl9DTV9DTURfQ09OTkVDVCwKKyAgUkRNQV9VU0VSX0NNX0NNRF9CSU5EX0lQLAorICBSRE1BX1VTRVJfQ01fQ01EX1JFU09MVkVfSVAsCisgIFJETUFfVVNFUl9DTV9DTURfUkVTT0xWRV9ST1VURSwKKyAgUkRNQV9VU0VSX0NNX0NNRF9RVUVSWV9ST1VURSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gUkRNQV9VU0VSX0NNX0NNRF9MSVNURU4sCi0gUkRNQV9VU0VSX0NNX0NNRF9BQ0NFUFQsCi0gUkRNQV9VU0VSX0NNX0NNRF9SRUpFQ1QsCi0gUkRNQV9VU0VSX0NNX0NNRF9ESVNDT05ORUNULAorICBSRE1BX1VTRVJfQ01fQ01EX0NPTk5FQ1QsCisgIFJETUFfVVNFUl9DTV9DTURfTElTVEVOLAorICBSRE1BX1VTRVJfQ01fQ01EX0FDQ0VQVCwKKyAgUkRNQV9VU0VSX0NNX0NNRF9SRUpFQ1QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJETUFfVVNFUl9DTV9DTURfSU5JVF9RUF9BVFRSLAotIFJETUFfVVNFUl9DTV9DTURfR0VUX0VWRU5ULAotIFJETUFfVVNFUl9DTV9DTURfR0VUX09QVElPTiwKLSBSRE1BX1VTRVJfQ01fQ01EX1NFVF9PUFRJT04sCisgIFJETUFfVVNFUl9DTV9DTURfRElTQ09OTkVDVCwKKyAgUkRNQV9VU0VSX0NNX0NNRF9JTklUX1FQX0FUVFIsCisgIFJETUFfVVNFUl9DTV9DTURfR0VUX0VWRU5ULAorICBSRE1BX1VTRVJfQ01fQ01EX0dFVF9PUFRJT04sCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJETUFfVVNFUl9DTV9DTURfTk9USUZZLAotIFJETUFfVVNFUl9DTV9DTURfSk9JTl9JUF9NQ0FTVCwKLSBSRE1BX1VTRVJfQ01fQ01EX0xFQVZFX01DQVNULAotIFJETUFfVVNFUl9DTV9DTURfTUlHUkFURV9JRCwKKyAgUkRNQV9VU0VSX0NNX0NNRF9TRVRfT1BUSU9OLAorICBSRE1BX1VTRVJfQ01fQ01EX05PVElGWSwKKyAgUkRNQV9VU0VSX0NNX0NNRF9KT0lOX0lQX01DQVNULAorICBSRE1BX1VTRVJfQ01fQ01EX0xFQVZFX01DQVNULAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBSRE1BX1VTRVJfQ01fQ01EX1FVRVJZLAotIFJETUFfVVNFUl9DTV9DTURfQklORCwKLSBSRE1BX1VTRVJfQ01fQ01EX1JFU09MVkVfQUREUiwKLSBSRE1BX1VTRVJfQ01fQ01EX0pPSU5fTUNBU1QKKyAgUkRNQV9VU0VSX0NNX0NNRF9NSUdSQVRFX0lELAorICBSRE1BX1VTRVJfQ01fQ01EX1FVRVJZLAorICBSRE1BX1VTRVJfQ01fQ01EX0JJTkQsCisgIFJETUFfVVNFUl9DTV9DTURfUkVTT0xWRV9BRERSLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgUkRNQV9VU0VSX0NNX0NNRF9KT0lOX01DQVNUCiB9Owogc3RydWN0IHJkbWFfdWNtX2NtZF9oZHIgewotIF9fdTMyIGNtZDsKLSBfX3UxNiBpbjsKKyAgX191MzIgY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBvdXQ7CisgIF9fdTE2IGluOworICBfX3UxNiBvdXQ7CiB9Owogc3RydWN0IHJkbWFfdWNtX2NyZWF0ZV9pZCB7Ci0gX191NjQgdWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXNwb25zZTsKLSBfX3UxNiBwczsKLSBfX3U4IHFwX3R5cGU7Ci0gX191OCByZXNlcnZlZFs1XTsKKyAgX191NjQgdWlkOworICBfX3U2NCByZXNwb25zZTsKKyAgX191MTYgcHM7CisgIF9fdTggcXBfdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggcmVzZXJ2ZWRbNV07CiB9Owogc3RydWN0IHJkbWFfdWNtX2NyZWF0ZV9pZF9yZXNwIHsKLSBfX3UzMiBpZDsKKyAgX191MzIgaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcmRtYV91Y21fZGVzdHJveV9pZCB7Ci0gX191NjQgcmVzcG9uc2U7Ci0gX191MzIgaWQ7Ci0gX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHJlc2VydmVkOwogfTsKIHN0cnVjdCByZG1hX3VjbV9kZXN0cm95X2lkX3Jlc3AgewotIF9fdTMyIGV2ZW50c19yZXBvcnRlZDsKKyAgX191MzIgZXZlbnRzX3JlcG9ydGVkOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJkbWFfdWNtX2JpbmRfaXAgewotIF9fdTY0IHJlc3BvbnNlOwotIHN0cnVjdCBzb2NrYWRkcl9pbjYgYWRkcjsKLSBfX3UzMiBpZDsKKyAgX191NjQgcmVzcG9uc2U7CisgIHN0cnVjdCBzb2NrYWRkcl9pbjYgYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGlkOwogfTsKIHN0cnVjdCByZG1hX3VjbV9iaW5kIHsKLSBfX3UzMiBpZDsKLSBfX3UxNiBhZGRyX3NpemU7CisgIF9fdTMyIGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiByZXNlcnZlZDsKLSBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBhZGRyOworICBfX3UxNiBhZGRyX3NpemU7CisgIF9fdTE2IHJlc2VydmVkOworICBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBhZGRyOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcmRtYV91Y21fcmVzb2x2ZV9pcCB7CisgIHN0cnVjdCBzb2NrYWRkcl9pbjYgc3JjX2FkZHI7CisgIHN0cnVjdCBzb2NrYWRkcl9pbjYgZHN0X2FkZHI7CisgIF9fdTMyIGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHJfaW42IHNyY19hZGRyOwotIHN0cnVjdCBzb2NrYWRkcl9pbjYgZHN0X2FkZHI7Ci0gX191MzIgaWQ7Ci0gX191MzIgdGltZW91dF9tczsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIHRpbWVvdXRfbXM7CiB9Owogc3RydWN0IHJkbWFfdWNtX3Jlc29sdmVfYWRkciB7Ci0gX191MzIgaWQ7Ci0gX191MzIgdGltZW91dF9tczsKKyAgX191MzIgaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IHNyY19zaXplOwotIF9fdTE2IGRzdF9zaXplOwotIF9fdTMyIHJlc2VydmVkOwotIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIHNyY19hZGRyOworICBfX3UzMiB0aW1lb3V0X21zOworICBfX3UxNiBzcmNfc2l6ZTsKKyAgX191MTYgZHN0X3NpemU7CisgIF9fdTMyIHJlc2VydmVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBkc3RfYWRkcjsKKyAgc3RydWN0IHNvY2thZGRyX3N0b3JhZ2Ugc3JjX2FkZHI7CisgIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIGRzdF9hZGRyOwogfTsKIHN0cnVjdCByZG1hX3VjbV9yZXNvbHZlX3JvdXRlIHsKLSBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgdGltZW91dF9tczsKKyAgX191MzIgaWQ7CisgIF9fdTMyIHRpbWVvdXRfbXM7CiB9OwogZW51bSB7Ci0gUkRNQV9VU0VSX0NNX1FVRVJZX0FERFIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJETUFfVVNFUl9DTV9RVUVSWV9QQVRILAotIFJETUFfVVNFUl9DTV9RVUVSWV9HSUQKKyAgUkRNQV9VU0VSX0NNX1FVRVJZX0FERFIsCisgIFJETUFfVVNFUl9DTV9RVUVSWV9QQVRILAorICBSRE1BX1VTRVJfQ01fUVVFUllfR0lECiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCByZG1hX3VjbV9xdWVyeSB7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3UzMiBpZDsKKyAgX191MzIgb3B0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U2NCByZXNwb25zZTsKLSBfX3UzMiBpZDsKLSBfX3UzMiBvcHRpb247CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCByZG1hX3VjbV9xdWVyeV9yb3V0ZV9yZXNwIHsKLSBfX3U2NCBub2RlX2d1aWQ7Ci0gc3RydWN0IGliX3VzZXJfcGF0aF9yZWMgaWJfcm91dGVbMl07Ci0gc3RydWN0IHNvY2thZGRyX2luNiBzcmNfYWRkcjsKKyAgX191NjQgbm9kZV9ndWlkOworICBzdHJ1Y3QgaWJfdXNlcl9wYXRoX3JlYyBpYl9yb3V0ZVsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNvY2thZGRyX2luNiBkc3RfYWRkcjsKLSBfX3UzMiBudW1fcGF0aHM7Ci0gX191OCBwb3J0X251bTsKLSBfX3U4IHJlc2VydmVkWzNdOworICBzdHJ1Y3Qgc29ja2FkZHJfaW42IHNyY19hZGRyOworICBzdHJ1Y3Qgc29ja2FkZHJfaW42IGRzdF9hZGRyOworICBfX3UzMiBudW1fcGF0aHM7CisgIF9fdTggcG9ydF9udW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX3U4IHJlc2VydmVkWzNdOwogfTsKIHN0cnVjdCByZG1hX3VjbV9xdWVyeV9hZGRyX3Jlc3AgewotIF9fdTY0IG5vZGVfZ3VpZDsKLSBfX3U4IHBvcnRfbnVtOworICBfX3U2NCBub2RlX2d1aWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWQ7Ci0gX191MTYgcGtleTsKLSBfX3UxNiBzcmNfc2l6ZTsKLSBfX3UxNiBkc3Rfc2l6ZTsKKyAgX191OCBwb3J0X251bTsKKyAgX191OCByZXNlcnZlZDsKKyAgX191MTYgcGtleTsKKyAgX191MTYgc3JjX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIHNyY19hZGRyOwotIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIGRzdF9hZGRyOworICBfX3UxNiBkc3Rfc2l6ZTsKKyAgc3RydWN0IHNvY2thZGRyX3N0b3JhZ2Ugc3JjX2FkZHI7CisgIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIGRzdF9hZGRyOwogfTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcmRtYV91Y21fcXVlcnlfcGF0aF9yZXNwIHsKKyAgX191MzIgbnVtX3BhdGhzOworICBfX3UzMiByZXNlcnZlZDsKKyAgc3RydWN0IGliX3BhdGhfcmVjX2RhdGEgcGF0aF9kYXRhWzBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBudW1fcGF0aHM7Ci0gX191MzIgcmVzZXJ2ZWQ7Ci0gc3RydWN0IGliX3BhdGhfcmVjX2RhdGEgcGF0aF9kYXRhWzBdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcmRtYV91Y21fY29ubl9wYXJhbSB7Ci0gX191MzIgcXBfbnVtOwotIF9fdTMyIHFrZXk7Ci0gX191OCBwcml2YXRlX2RhdGFbUkRNQV9NQVhfUFJJVkFURV9EQVRBXTsKKyAgX191MzIgcXBfbnVtOworICBfX3UzMiBxa2V5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHByaXZhdGVfZGF0YV9sZW47Ci0gX191OCBzcnE7Ci0gX191OCByZXNwb25kZXJfcmVzb3VyY2VzOwotIF9fdTggaW5pdGlhdG9yX2RlcHRoOworICBfX3U4IHByaXZhdGVfZGF0YVtSRE1BX01BWF9QUklWQVRFX0RBVEFdOworICBfX3U4IHByaXZhdGVfZGF0YV9sZW47CisgIF9fdTggc3JxOworICBfX3U4IHJlc3BvbmRlcl9yZXNvdXJjZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmxvd19jb250cm9sOwotIF9fdTggcmV0cnlfY291bnQ7Ci0gX191OCBybnJfcmV0cnlfY291bnQ7Ci0gX191OCB2YWxpZDsKKyAgX191OCBpbml0aWF0b3JfZGVwdGg7CisgIF9fdTggZmxvd19jb250cm9sOworICBfX3U4IHJldHJ5X2NvdW50OworICBfX3U4IHJucl9yZXRyeV9jb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTggdmFsaWQ7CiB9Owogc3RydWN0IHJkbWFfdWNtX3VkX3BhcmFtIHsKLSBfX3UzMiBxcF9udW07Ci0gX191MzIgcWtleTsKKyAgX191MzIgcXBfbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaWJfdXZlcmJzX2FoX2F0dHIgYWhfYXR0cjsKLSBfX3U4IHByaXZhdGVfZGF0YVtSRE1BX01BWF9QUklWQVRFX0RBVEFdOwotIF9fdTggcHJpdmF0ZV9kYXRhX2xlbjsKLSBfX3U4IHJlc2VydmVkWzddOworICBfX3UzMiBxa2V5OworICBzdHJ1Y3QgaWJfdXZlcmJzX2FoX2F0dHIgYWhfYXR0cjsKKyAgX191OCBwcml2YXRlX2RhdGFbUkRNQV9NQVhfUFJJVkFURV9EQVRBXTsKKyAgX191OCBwcml2YXRlX2RhdGFfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191OCByZXNlcnZlZFs3XTsKIH07CiBzdHJ1Y3QgcmRtYV91Y21fY29ubmVjdCB7Ci0gc3RydWN0IHJkbWFfdWNtX2Nvbm5fcGFyYW0gY29ubl9wYXJhbTsKLSBfX3UzMiBpZDsKKyAgc3RydWN0IHJkbWFfdWNtX2Nvbm5fcGFyYW0gY29ubl9wYXJhbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWQ7CisgIF9fdTMyIGlkOworICBfX3UzMiByZXNlcnZlZDsKIH07CiBzdHJ1Y3QgcmRtYV91Y21fbGlzdGVuIHsKLSBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgYmFja2xvZzsKKyAgX191MzIgaWQ7CisgIF9fdTMyIGJhY2tsb2c7CiB9Owogc3RydWN0IHJkbWFfdWNtX2FjY2VwdCB7Ci0gX191NjQgdWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgcmRtYV91Y21fY29ubl9wYXJhbSBjb25uX3BhcmFtOwotIF9fdTMyIGlkOwotIF9fdTMyIHJlc2VydmVkOworICBfX3U2NCB1aWQ7CisgIHN0cnVjdCByZG1hX3VjbV9jb25uX3BhcmFtIGNvbm5fcGFyYW07CisgIF9fdTMyIGlkOworICBfX3UzMiByZXNlcnZlZDsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCByZG1hX3VjbV9yZWplY3QgewotIF9fdTMyIGlkOwotIF9fdTggcHJpdmF0ZV9kYXRhX2xlbjsKLSBfX3U4IHJlc2VydmVkWzNdOworICBfX3UzMiBpZDsKKyAgX191OCBwcml2YXRlX2RhdGFfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHByaXZhdGVfZGF0YVtSRE1BX01BWF9QUklWQVRFX0RBVEFdOworICBfX3U4IHJlc2VydmVkWzNdOworICBfX3U4IHByaXZhdGVfZGF0YVtSRE1BX01BWF9QUklWQVRFX0RBVEFdOwogfTsKIHN0cnVjdCByZG1hX3VjbV9kaXNjb25uZWN0IHsKLSBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fdTMyIGlkOwogfTsKIHN0cnVjdCByZG1hX3VjbV9pbml0X3FwX2F0dHIgewotIF9fdTY0IHJlc3BvbnNlOwotIF9fdTMyIGlkOworICBfX3U2NCByZXNwb25zZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcXBfc3RhdGU7CisgIF9fdTMyIGlkOworICBfX3UzMiBxcF9zdGF0ZTsKIH07CiBzdHJ1Y3QgcmRtYV91Y21fbm90aWZ5IHsKLSBfX3UzMiBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZXZlbnQ7CisgIF9fdTMyIGlkOworICBfX3UzMiBldmVudDsKIH07CiBzdHJ1Y3QgcmRtYV91Y21fam9pbl9pcF9tY2FzdCB7Ci0gX191NjQgcmVzcG9uc2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHVpZDsKLSBzdHJ1Y3Qgc29ja2FkZHJfaW42IGFkZHI7Ci0gX191MzIgaWQ7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3U2NCB1aWQ7CisgIHN0cnVjdCBzb2NrYWRkcl9pbjYgYWRkcjsKKyAgX191MzIgaWQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcmRtYV91Y21fam9pbl9tY2FzdCB7Ci0gX191NjQgcmVzcG9uc2U7Ci0gX191NjQgdWlkOwotIF9fdTMyIGlkOworICBfX3U2NCByZXNwb25zZTsKKyAgX191NjQgdWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBhZGRyX3NpemU7Ci0gX191MTYgcmVzZXJ2ZWQ7Ci0gc3RydWN0IHNvY2thZGRyX3N0b3JhZ2UgYWRkcjsKKyAgX191MzIgaWQ7CisgIF9fdTE2IGFkZHJfc2l6ZTsKKyAgX191MTYgcmVzZXJ2ZWQ7CisgIHN0cnVjdCBzb2NrYWRkcl9zdG9yYWdlIGFkZHI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgcmRtYV91Y21fZ2V0X2V2ZW50IHsKLSBfX3U2NCByZXNwb25zZTsKKyAgX191NjQgcmVzcG9uc2U7CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCByZG1hX3VjbV9ldmVudF9yZXNwIHsKKyAgX191NjQgdWlkOworICBfX3UzMiBpZDsKKyAgX191MzIgZXZlbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTY0IHVpZDsKLSBfX3UzMiBpZDsKLSBfX3UzMiBldmVudDsKLSBfX3UzMiBzdGF0dXM7CisgIF9fdTMyIHN0YXR1czsKKyAgdW5pb24geworICAgIHN0cnVjdCByZG1hX3VjbV9jb25uX3BhcmFtIGNvbm47CisgICAgc3RydWN0IHJkbWFfdWNtX3VkX3BhcmFtIHVkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bmlvbiB7Ci0gc3RydWN0IHJkbWFfdWNtX2Nvbm5fcGFyYW0gY29ubjsKLSBzdHJ1Y3QgcmRtYV91Y21fdWRfcGFyYW0gdWQ7Ci0gfSBwYXJhbTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIH0gcGFyYW07CiB9OwogZW51bSB7Ci0gUkRNQV9PUFRJT05fSUQgPSAwLAotIFJETUFfT1BUSU9OX0lCID0gMQorICBSRE1BX09QVElPTl9JRCA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBSRE1BX09QVElPTl9JQiA9IDEKIH07CiBlbnVtIHsKLSBSRE1BX09QVElPTl9JRF9UT1MgPSAwLAotIFJETUFfT1BUSU9OX0lEX1JFVVNFQUREUiA9IDEsCisgIFJETUFfT1BUSU9OX0lEX1RPUyA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJETUFfT1BUSU9OX0lEX0FGT05MWSA9IDIsCi0gUkRNQV9PUFRJT05fSUJfUEFUSCA9IDEKKyAgUkRNQV9PUFRJT05fSURfUkVVU0VBRERSID0gMSwKKyAgUkRNQV9PUFRJT05fSURfQUZPTkxZID0gMiwKKyAgUkRNQV9PUFRJT05fSUJfUEFUSCA9IDEKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHJkbWFfdWNtX3NldF9vcHRpb24geworICBfX3U2NCBvcHR2YWw7CisgIF9fdTMyIGlkOworICBfX3UzMiBsZXZlbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgb3B0dmFsOwotIF9fdTMyIGlkOwotIF9fdTMyIGxldmVsOwotIF9fdTMyIG9wdG5hbWU7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG9wdGxlbjsKKyAgX191MzIgb3B0bmFtZTsKKyAgX191MzIgb3B0bGVuOwogfTsKIHN0cnVjdCByZG1hX3VjbV9taWdyYXRlX2lkIHsKLSBfX3U2NCByZXNwb25zZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaWQ7Ci0gX191MzIgZmQ7CisgIF9fdTY0IHJlc3BvbnNlOworICBfX3UzMiBpZDsKKyAgX191MzIgZmQ7CiB9Owotc3RydWN0IHJkbWFfdWNtX21pZ3JhdGVfcmVzcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGV2ZW50c19yZXBvcnRlZDsKK3N0cnVjdCByZG1hX3VjbV9taWdyYXRlX3Jlc3AgeworICBfX3UzMiBldmVudHNfcmVwb3J0ZWQ7CiB9OwogI2VuZGlmCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9zY3NpL2ZjL2ZjX2Vscy5oIGIvbGliYy9rZXJuZWwvdWFwaS9zY3NpL2ZjL2ZjX2Vscy5oCmluZGV4IDRlMmE5MjAuLmMxZjllOTQgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvc2NzaS9mYy9mY19lbHMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3Njc2kvZmMvZmNfZWxzLmgKQEAgLTIxLDE1MiArMjEsMTUzIEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIGVudW0gZmNfZWxzX2NtZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19MU19SSlQgPSAweDAxLAotIEVMU19MU19BQ0MgPSAweDAyLAotIEVMU19QTE9HSSA9IDB4MDMsCi0gRUxTX0ZMT0dJID0gMHgwNCwKKyAgRUxTX0xTX1JKVCA9IDB4MDEsCisgIEVMU19MU19BQ0MgPSAweDAyLAorICBFTFNfUExPR0kgPSAweDAzLAorICBFTFNfRkxPR0kgPSAweDA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfTE9HTyA9IDB4MDUsCi0gRUxTX0FCVFggPSAweDA2LAotIEVMU19SQ1MgPSAweDA3LAotIEVMU19SRVMgPSAweDA4LAorICBFTFNfTE9HTyA9IDB4MDUsCisgIEVMU19BQlRYID0gMHgwNiwKKyAgRUxTX1JDUyA9IDB4MDcsCisgIEVMU19SRVMgPSAweDA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfUlNTID0gMHgwOSwKLSBFTFNfUlNJID0gMHgwYSwKLSBFTFNfRVNUUyA9IDB4MGIsCi0gRUxTX0VTVEMgPSAweDBjLAorICBFTFNfUlNTID0gMHgwOSwKKyAgRUxTX1JTSSA9IDB4MGEsCisgIEVMU19FU1RTID0gMHgwYiwKKyAgRUxTX0VTVEMgPSAweDBjLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfQURWQyA9IDB4MGQsCi0gRUxTX1JUViA9IDB4MGUsCi0gRUxTX1JMUyA9IDB4MGYsCi0gRUxTX0VDSE8gPSAweDEwLAorICBFTFNfQURWQyA9IDB4MGQsCisgIEVMU19SVFYgPSAweDBlLAorICBFTFNfUkxTID0gMHgwZiwKKyAgRUxTX0VDSE8gPSAweDEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfVEVTVCA9IDB4MTEsCi0gRUxTX1JSUSA9IDB4MTIsCi0gRUxTX1JFQyA9IDB4MTMsCi0gRUxTX1NSUiA9IDB4MTQsCisgIEVMU19URVNUID0gMHgxMSwKKyAgRUxTX1JSUSA9IDB4MTIsCisgIEVMU19SRUMgPSAweDEzLAorICBFTFNfU1JSID0gMHgxNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX1BSTEkgPSAweDIwLAotIEVMU19QUkxPID0gMHgyMSwKLSBFTFNfU0NOID0gMHgyMiwKLSBFTFNfVFBMUyA9IDB4MjMsCisgIEVMU19QUkxJID0gMHgyMCwKKyAgRUxTX1BSTE8gPSAweDIxLAorICBFTFNfU0NOID0gMHgyMiwKKyAgRUxTX1RQTFMgPSAweDIzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfVFBSTE8gPSAweDI0LAotIEVMU19MQ0xNID0gMHgyNSwKLSBFTFNfR0FJRCA9IDB4MzAsCi0gRUxTX0ZBQ1QgPSAweDMxLAorICBFTFNfVFBSTE8gPSAweDI0LAorICBFTFNfTENMTSA9IDB4MjUsCisgIEVMU19HQUlEID0gMHgzMCwKKyAgRUxTX0ZBQ1QgPSAweDMxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfRkRBQ0RUID0gMHgzMiwKLSBFTFNfTkFDVCA9IDB4MzMsCi0gRUxTX05EQUNUID0gMHgzNCwKLSBFTFNfUU9TUiA9IDB4NDAsCisgIEVMU19GREFDRFQgPSAweDMyLAorICBFTFNfTkFDVCA9IDB4MzMsCisgIEVMU19OREFDVCA9IDB4MzQsCisgIEVMU19RT1NSID0gMHg0MCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX1JWQ1MgPSAweDQxLAotIEVMU19QRElTQyA9IDB4NTAsCi0gRUxTX0ZESVNDID0gMHg1MSwKLSBFTFNfQURJU0MgPSAweDUyLAorICBFTFNfUlZDUyA9IDB4NDEsCisgIEVMU19QRElTQyA9IDB4NTAsCisgIEVMU19GRElTQyA9IDB4NTEsCisgIEVMU19BRElTQyA9IDB4NTIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19STkMgPSAweDUzLAotIEVMU19GQVJQX1JFUSA9IDB4NTQsCi0gRUxTX0ZBUlBfUkVQTCA9IDB4NTUsCi0gRUxTX1JQUyA9IDB4NTYsCisgIEVMU19STkMgPSAweDUzLAorICBFTFNfRkFSUF9SRVEgPSAweDU0LAorICBFTFNfRkFSUF9SRVBMID0gMHg1NSwKKyAgRUxTX1JQUyA9IDB4NTYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19SUEwgPSAweDU3LAotIEVMU19SUEJDID0gMHg1OCwKLSBFTFNfRkFOID0gMHg2MCwKLSBFTFNfUlNDTiA9IDB4NjEsCisgIEVMU19SUEwgPSAweDU3LAorICBFTFNfUlBCQyA9IDB4NTgsCisgIEVMU19GQU4gPSAweDYwLAorICBFTFNfUlNDTiA9IDB4NjEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19TQ1IgPSAweDYyLAotIEVMU19STkZUID0gMHg2MywKLSBFTFNfQ1NSID0gMHg2OCwKLSBFTFNfQ1NVID0gMHg2OSwKKyAgRUxTX1NDUiA9IDB4NjIsCisgIEVMU19STkZUID0gMHg2MywKKyAgRUxTX0NTUiA9IDB4NjgsCisgIEVMU19DU1UgPSAweDY5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfTElOSVQgPSAweDcwLAotIEVMU19MU1RTID0gMHg3MiwKLSBFTFNfUk5JRCA9IDB4NzgsCi0gRUxTX1JMSVIgPSAweDc5LAorICBFTFNfTElOSVQgPSAweDcwLAorICBFTFNfTFNUUyA9IDB4NzIsCisgIEVMU19STklEID0gMHg3OCwKKyAgRUxTX1JMSVIgPSAweDc5LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfTElSUiA9IDB4N2EsCi0gRUxTX1NSTCA9IDB4N2IsCi0gRUxTX1NCUlAgPSAweDdjLAotIEVMU19SUFNDID0gMHg3ZCwKKyAgRUxTX0xJUlIgPSAweDdhLAorICBFTFNfU1JMID0gMHg3YiwKKyAgRUxTX1NCUlAgPSAweDdjLAorICBFTFNfUlBTQyA9IDB4N2QsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19RU0EgPSAweDdlLAotIEVMU19FVkZQID0gMHg3ZiwKLSBFTFNfTEtBID0gMHg4MCwKLSBFTFNfQVVUSF9FTFMgPSAweDkwLAorICBFTFNfUVNBID0gMHg3ZSwKKyAgRUxTX0VWRlAgPSAweDdmLAorICBFTFNfTEtBID0gMHg4MCwKKyAgRUxTX0FVVEhfRUxTID0gMHg5MCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBGQ19FTFNfQ01EU19JTklUIHsgICBbRUxTX0xTX1JKVF0gPSAiTFNfUkpUIiwgICBbRUxTX0xTX0FDQ10gPSAiTFNfQUNDIiwgICBbRUxTX1BMT0dJXSA9ICJQTE9HSSIsICAgW0VMU19GTE9HSV0gPSAiRkxPR0kiLCAgIFtFTFNfTE9HT10gPSAiTE9HTyIsICAgW0VMU19BQlRYXSA9ICJBQlRYIiwgICBbRUxTX1JDU10gPSAiUkNTIiwgICBbRUxTX1JFU10gPSAiUkVTIiwgICBbRUxTX1JTU10gPSAiUlNTIiwgICBbRUxTX1JTSV0gPSAiUlNJIiwgICBbRUxTX0VTVFNdID0gIkVTVFMiLCAgIFtFTFNfRVNUQ10gPSAiRVNUQyIsICAgW0VMU19BRFZDXSA9ICJBRFZDIiwgICBbRUxTX1JUVl0gPSAiUlRWIiwgICBbRUxTX1JMU10gPSAiUkxTIiwgICBbRUxTX0VDSE9dID0gIkVDSE8iLCAgIFtFTFNfVEVTVF0gPSAiVEVTVCIsICAgW0VMU19SUlFdID0gIlJSUSIsICAgW0VMU19SRUNdID0gIlJFQyIsICAgW0VMU19TUlJdID0gIlNSUiIsICAgW0VMU19QUkxJXSA9ICJQUkxJIiwgICBbRUxTX1BSTE9dID0gIlBSTE8iLCAgIFtFTFNfU0NOXSA9ICJTQ04iLCAgIFtFTFNfVFBMU10gPSAiVFBMUyIsICAgW0VMU19UUFJMT10gPSAiVFBSTE8iLCAgIFtFTFNfTENMTV0gPSAiTENMTSIsICAgW0VMU19HQUlEXSA9ICJHQUlEIiwgICBbRUxTX0ZBQ1RdID0gIkZBQ1QiLCAgIFtFTFNfRkRBQ0RUXSA9ICJGREFDRFQiLCAgIFtFTFNfTkFDVF0gPSAiTkFDVCIsICAgW0VMU19OREFDVF0gPSAiTkRBQ1QiLCAgIFtFTFNfUU9TUl0gPSAiUU9TUiIsICAgW0VMU19SVkNTXSA9ICJSVkNTIiwgICBbRUxTX1BESVNDXSA9ICJQRElTQyIsICAgW0VMU19GRElTQ10gPSAiRkRJU0MiLCAgIFtFTFNfQURJU0NdID0gIkFESVNDIiwgICBbRUxTX1JOQ10gPSAiUk5DIiwgICBbRUxTX0ZBUlBfUkVRXSA9ICJGQVJQX1JFUSIsICAgW0VMU19GQVJQX1JFUExdID0gIkZBUlBfUkVQTCIsICAgW0VMU19SUFNdID0gIlJQUyIsICAgW0VMU19SUExdID0gIlJQTCIsICAgW0VMU19SUEJDXSA9ICJSUEJDIiwgICBbRUxTX0ZBTl0gPSAiRkFOIiwgICBbRUxTX1JTQ05dID0gIlJTQ04iLCAgIFtFTFNfU0NSXSA9ICJTQ1IiLCAgIFtFTFNfUk5GVF0gPSAiUk5GVCIsICAgW0VMU19DU1JdID0gIkNTUiIsICAgW0VMU19DU1VdID0gIkNTVSIsICAgW0VMU19MSU5JVF0gPSAiTElOSVQiLCAgIFtFTFNfTFNUU10gPSAiTFNUUyIsICAgW0VMU19STklEXSA9ICJSTklEIiwgICBbRUxTX1JMSVJdID0gIlJMSVIiLCAgIFtFTFNfTElSUl0gPSAiTElSUiIsICAgW0VMU19TUkxdID0gIlNSTCIsICAgW0VMU19TQlJQXSA9ICJTQlJQIiwgICBbRUxTX1JQU0NdID0gIlJQU0MiLCAgIFtFTFNfUVNBXSA9ICJRU0EiLCAgIFtFTFNfRVZGUF0gPSAiRVZGUCIsICAgW0VMU19MS0FdID0gIkxLQSIsICAgW0VMU19BVVRIX0VMU10gPSAiQVVUSF9FTFMiLCAgfQorI2RlZmluZSBGQ19FTFNfQ01EU19JTklUIHtbRUxTX0xTX1JKVF0gPSAiTFNfUkpUIixbRUxTX0xTX0FDQ10gPSAiTFNfQUNDIixbRUxTX1BMT0dJXSA9ICJQTE9HSSIsW0VMU19GTE9HSV0gPSAiRkxPR0kiLFtFTFNfTE9HT10gPSAiTE9HTyIsW0VMU19BQlRYXSA9ICJBQlRYIixbRUxTX1JDU10gPSAiUkNTIixbRUxTX1JFU10gPSAiUkVTIixbRUxTX1JTU10gPSAiUlNTIixbRUxTX1JTSV0gPSAiUlNJIixbRUxTX0VTVFNdID0gIkVTVFMiLFtFTFNfRVNUQ10gPSAiRVNUQyIsW0VMU19BRFZDXSA9ICJBRFZDIixbRUxTX1JUVl0gPSAiUlRWIixbRUxTX1JMU10gPSAiUkxTIixbRUxTX0VDSE9dID0gIkVDSE8iLFtFTFNfVEVTVF0gPSAiVEVTVCIsW0VMU19SUlFdID0gIlJSUSIsW0VMU19SRUNdID0gIlJFQyIsW0VMU19TUlJdID0gIlNSUiIsW0VMU19QUkxJXSA9ICJQUkxJIixbRUxTX1BSTE9dID0gIlBSTE8iLFtFTFNfU0NOXSA9ICJTQ04iLFtFTFNfVFBMU10gPSAiVFBMUyIsW0VMU19UUFJMT10gPSAiVFBSTE8iLFtFTFNfTENMTV0gPSAiTENMTSIsW0VMU19HQUlEXSA9ICJHQUlEIixbRUxTX0ZBQ1RdID0gIkZBQ1QiLFtFTFNfRkRBQ0RUXSA9ICJGREFDRFQiLFtFTFNfTkFDVF0gPSAiTkFDVCIsW0VMU19OREFDVF0gPSAiTkRBQ1QiLFtFTFNfUU9TUl0gPSAiUU9TUiIsW0VMU19SVkNTXSA9ICJSVkNTIixbRUxTX1BESVNDXSA9ICJQRElTQyIsW0VMU19GRElTQ10gPSAiRkRJU0MiLFtFTFNfQURJU0NdID0gIkFESVNDIixbRUxTX1JOQ10gPSAiUk5DIixbRUxTX0ZBUlBfUkVRXSA9ICJGQVJQX1JFUSIsW0VMU19GQVJQX1JFUExdID0gIkZBUlBfUkVQTCIsW0VMU19SUFNdID0gIlJQUyIsW0VMU19SUExdID0gIlJQTCIsW0VMU19SUEJDXSA9ICJSUEJDIixbRUxTX0ZBTl0gPSAiRkFOIixbRUxTX1JTQ05dID0gIlJTQ04iLFtFTFNfU0NSXSA9ICJTQ1IiLFtFTFNfUk5GVF0gPSAiUk5GVCIsW0VMU19DU1JdID0gIkNTUiIsW0VMU19DU1VdID0gIkNTVSIsW0VMU19MSU5JVF0gPSAiTElOSVQiLFtFTFNfTFNUU10gPSAiTFNUUyIsW0VMU19STklEXSA9ICJSTklEIixbRUxTX1JMSVJdID0gIlJMSVIiLFtFTFNfTElSUl0gPSAiTElSUiIsW0VMU19TUkxdID0gIlNSTCIsW0VMU19TQlJQXSA9ICJTQlJQIixbRUxTX1JQU0NdID0gIlJQU0MiLFtFTFNfUVNBXSA9ICJRU0EiLFtFTFNfRVZGUF0gPSAiRVZGUCIsW0VMU19MS0FdID0gIkxLQSIsW0VMU19BVVRIX0VMU10gPSAiQVVUSF9FTFMiLCBcCit9CiBzdHJ1Y3QgZmNfZWxzX2xzX2FjYyB7Ci0gX191OCBsYV9jbWQ7CisgIF9fdTggbGFfY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGxhX3Jlc3ZbM107CisgIF9fdTggbGFfcmVzdlszXTsKIH07CiBzdHJ1Y3QgZmNfZWxzX2xzX3JqdCB7Ci0gX191OCBlcl9jbWQ7CisgIF9fdTggZXJfY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGVyX3Jlc3ZbNF07Ci0gX191OCBlcl9yZWFzb247Ci0gX191OCBlcl9leHBsYW47Ci0gX191OCBlcl92ZW5kb3I7CisgIF9fdTggZXJfcmVzdls0XTsKKyAgX191OCBlcl9yZWFzb247CisgIF9fdTggZXJfZXhwbGFuOworICBfX3U4IGVyX3ZlbmRvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBmY19lbHNfcmp0X3JlYXNvbiB7Ci0gRUxTX1JKVF9OT05FID0gMCwKLSBFTFNfUkpUX0lOVkFMID0gMHgwMSwKKyAgRUxTX1JKVF9OT05FID0gMCwKKyAgRUxTX1JKVF9JTlZBTCA9IDB4MDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19SSlRfTE9HSUMgPSAweDAzLAotIEVMU19SSlRfQlVTWSA9IDB4MDUsCi0gRUxTX1JKVF9QUk9UID0gMHgwNywKLSBFTFNfUkpUX1VOQUIgPSAweDA5LAorICBFTFNfUkpUX0xPR0lDID0gMHgwMywKKyAgRUxTX1JKVF9CVVNZID0gMHgwNSwKKyAgRUxTX1JKVF9QUk9UID0gMHgwNywKKyAgRUxTX1JKVF9VTkFCID0gMHgwOSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX1JKVF9VTlNVUCA9IDB4MGIsCi0gRUxTX1JKVF9JTlBST0cgPSAweDBlLAotIEVMU19SSlRfRklQID0gMHgyMCwKLSBFTFNfUkpUX1ZFTkRPUiA9IDB4ZmYsCisgIEVMU19SSlRfVU5TVVAgPSAweDBiLAorICBFTFNfUkpUX0lOUFJPRyA9IDB4MGUsCisgIEVMU19SSlRfRklQID0gMHgyMCwKKyAgRUxTX1JKVF9WRU5ET1IgPSAweGZmLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGZjX2Vsc19yanRfZXhwbGFuIHsKLSBFTFNfRVhQTF9OT05FID0gMHgwMCwKLSBFTFNfRVhQTF9TUFBfT1BUX0VSUiA9IDB4MDEsCisgIEVMU19FWFBMX05PTkUgPSAweDAwLAorICBFTFNfRVhQTF9TUFBfT1BUX0VSUiA9IDB4MDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19FWFBMX1NQUF9JQ1RMX0VSUiA9IDB4MDMsCi0gRUxTX0VYUExfQUggPSAweDExLAotIEVMU19FWFBMX0FIX1JFUSA9IDB4MTMsCi0gRUxTX0VYUExfU0lEID0gMHgxNSwKKyAgRUxTX0VYUExfU1BQX0lDVExfRVJSID0gMHgwMywKKyAgRUxTX0VYUExfQUggPSAweDExLAorICBFTFNfRVhQTF9BSF9SRVEgPSAweDEzLAorICBFTFNfRVhQTF9TSUQgPSAweDE1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfRVhQTF9PWElEX1JYSUQgPSAweDE3LAotIEVMU19FWFBMX0lOUFJPRyA9IDB4MTksCi0gRUxTX0VYUExfUExPR0lfUkVRRCA9IDB4MWUsCi0gRUxTX0VYUExfSU5TVUZfUkVTID0gMHgyOSwKKyAgRUxTX0VYUExfT1hJRF9SWElEID0gMHgxNywKKyAgRUxTX0VYUExfSU5QUk9HID0gMHgxOSwKKyAgRUxTX0VYUExfUExPR0lfUkVRRCA9IDB4MWUsCisgIEVMU19FWFBMX0lOU1VGX1JFUyA9IDB4MjksCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19FWFBMX1VOQUJfREFUQSA9IDB4MmEsCi0gRUxTX0VYUExfVU5TVVBSID0gMHgyYywKLSBFTFNfRVhQTF9JTlZfTEVOID0gMHgyZCwKLSBFTFNfRVhQTF9OT1RfTkVJR0hCT1IgPSAweDYyLAorICBFTFNfRVhQTF9VTkFCX0RBVEEgPSAweDJhLAorICBFTFNfRVhQTF9VTlNVUFIgPSAweDJjLAorICBFTFNfRVhQTF9JTlZfTEVOID0gMHgyZCwKKyAgRUxTX0VYUExfTk9UX05FSUdIQk9SID0gMHg2MiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX2Vsc19jc3AgewotIF9fdTggc3BfaGlfdmVyOwotIF9fdTggc3BfbG9fdmVyOworICBfX3U4IHNwX2hpX3ZlcjsKKyAgX191OCBzcF9sb192ZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBzcF9iYl9jcmVkOwotIF9fYmUxNiBzcF9mZWF0dXJlczsKLSBfX2JlMTYgc3BfYmJfZGF0YTsKLSB1bmlvbiB7CisgIF9fYmUxNiBzcF9iYl9jcmVkOworICBfX2JlMTYgc3BfZmVhdHVyZXM7CisgIF9fYmUxNiBzcF9iYl9kYXRhOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB7Ci0gX19iZTE2IF9zcF90b3Rfc2VxOwotIF9fYmUxNiBfc3BfcmVsX29mZjsKLSB9IHNwX3Bsb2dpOworICAgIHN0cnVjdCB7CisgICAgICBfX2JlMTYgX3NwX3RvdF9zZXE7CisgICAgICBfX2JlMTYgX3NwX3JlbF9vZmY7CisgICAgfSBzcF9wbG9naTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHsKLSBfX2JlMzIgX3NwX3JfYV90b3Y7Ci0gfSBzcF9mbG9naV9hY2M7Ci0gfSBzcF91OworICAgIHN0cnVjdCB7CisgICAgICBfX2JlMzIgX3NwX3JfYV90b3Y7CisgICAgfSBzcF9mbG9naV9hY2M7CisgIH0gc3BfdTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHNwX2VfZF90b3Y7CisgIF9fYmUzMiBzcF9lX2RfdG92OwogfTsKICNkZWZpbmUgc3BfdG90X3NlcSBzcF91LnNwX3Bsb2dpLl9zcF90b3Rfc2VxCiAjZGVmaW5lIHNwX3JlbF9vZmYgc3BfdS5zcF9wbG9naS5fc3BfcmVsX29mZgpAQCAtMjAxLDE3ICsyMDIsMTcgQEAKICNkZWZpbmUgRkNfU1BfRlRfUEFZTCAweDAwMDEKIHN0cnVjdCBmY19lbHNfY3NzcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBjcF9jbGFzczsKLSBfX2JlMTYgY3BfaW5pdDsKLSBfX2JlMTYgY3BfcmVjaXA7Ci0gX19iZTE2IGNwX3JkZnM7CisgIF9fYmUxNiBjcF9jbGFzczsKKyAgX19iZTE2IGNwX2luaXQ7CisgIF9fYmUxNiBjcF9yZWNpcDsKKyAgX19iZTE2IGNwX3JkZnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBjcF9jb25fc2VxOwotIF9fYmUxNiBjcF9lZV9jcmVkOwotIF9fdTggY3BfcmVzdjE7Ci0gX191OCBjcF9vcGVuX3NlcTsKKyAgX19iZTE2IGNwX2Nvbl9zZXE7CisgIF9fYmUxNiBjcF9lZV9jcmVkOworICBfX3U4IGNwX3Jlc3YxOworICBfX3U4IGNwX29wZW5fc2VxOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IF9jcF9yZXN2MlsyXTsKKyAgX191OCBfY3BfcmVzdjJbMl07CiB9OwogI2RlZmluZSBGQ19DUENfVkFMSUQgMHg4MDAwCiAjZGVmaW5lIEZDX0NQQ19JTUlYIDB4NDAwMApAQCAtMjIzLDI2ICsyMjQsMjYgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZDX0NQUl9DU1lOIDB4MDAwOAogc3RydWN0IGZjX2Vsc19mbG9naSB7Ci0gX191OCBmbF9jbWQ7Ci0gX191OCBfZmxfcmVzdmRbM107CisgIF9fdTggZmxfY21kOworICBfX3U4IF9mbF9yZXN2ZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGZjX2Vsc19jc3AgZmxfY3NwOwotIF9fYmU2NCBmbF93d3BuOwotIF9fYmU2NCBmbF93d25uOwotIHN0cnVjdCBmY19lbHNfY3NzcCBmbF9jc3NwWzRdOworICBzdHJ1Y3QgZmNfZWxzX2NzcCBmbF9jc3A7CisgIF9fYmU2NCBmbF93d3BuOworICBfX2JlNjQgZmxfd3dubjsKKyAgc3RydWN0IGZjX2Vsc19jc3NwIGZsX2Nzc3BbNF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmxfdmVuZFsxNl07CisgIF9fdTggZmxfdmVuZFsxNl07CiB9IF9fYXR0cmlidXRlX18oKF9fcGFja2VkX18pKTsKIHN0cnVjdCBmY19lbHNfc3BwIHsKLSBfX3U4IHNwcF90eXBlOworICBfX3U4IHNwcF90eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNwcF90eXBlX2V4dDsKLSBfX3U4IHNwcF9mbGFnczsKLSBfX3U4IF9zcHBfcmVzdmQ7Ci0gX19iZTMyIHNwcF9vcmlnX3BhOworICBfX3U4IHNwcF90eXBlX2V4dDsKKyAgX191OCBzcHBfZmxhZ3M7CisgIF9fdTggX3NwcF9yZXN2ZDsKKyAgX19iZTMyIHNwcF9vcmlnX3BhOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgc3BwX3Jlc3BfcGE7Ci0gX19iZTMyIHNwcF9wYXJhbXM7CisgIF9fYmUzMiBzcHBfcmVzcF9wYTsKKyAgX19iZTMyIHNwcF9wYXJhbXM7CiB9OwogI2RlZmluZSBGQ19TUFBfT1BBX1ZBTCAweDgwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMjUxLDEyNSArMjUyLDEyNSBAQAogI2RlZmluZSBGQ19TUFBfUkVTUF9NQVNLIDB4MGYKIGVudW0gZmNfZWxzX3NwcF9yZXNwIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfU1BQX1JFU1BfQUNLID0gMSwKLSBGQ19TUFBfUkVTUF9SRVMgPSAyLAotIEZDX1NQUF9SRVNQX0lOSVQgPSAzLAotIEZDX1NQUF9SRVNQX05PX1BBID0gNCwKKyAgRkNfU1BQX1JFU1BfQUNLID0gMSwKKyAgRkNfU1BQX1JFU1BfUkVTID0gMiwKKyAgRkNfU1BQX1JFU1BfSU5JVCA9IDMsCisgIEZDX1NQUF9SRVNQX05PX1BBID0gNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfU1BQX1JFU1BfQ09ORiA9IDUsCi0gRkNfU1BQX1JFU1BfQ09ORCA9IDYsCi0gRkNfU1BQX1JFU1BfTVVMVCA9IDcsCi0gRkNfU1BQX1JFU1BfSU5WTCA9IDgsCisgIEZDX1NQUF9SRVNQX0NPTkYgPSA1LAorICBGQ19TUFBfUkVTUF9DT05EID0gNiwKKyAgRkNfU1BQX1JFU1BfTVVMVCA9IDcsCisgIEZDX1NQUF9SRVNQX0lOVkwgPSA4LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfZWxzX3JycSB7Ci0gX191OCBycnFfY21kOwotIF9fdTggcnJxX3plcm9bM107CisgIF9fdTggcnJxX2NtZDsKKyAgX191OCBycnFfemVyb1szXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBycnFfcmVzdmQ7Ci0gX191OCBycnFfc19pZFszXTsKLSBfX2JlMTYgcnJxX294X2lkOwotIF9fYmUxNiBycnFfcnhfaWQ7CisgIF9fdTggcnJxX3Jlc3ZkOworICBfX3U4IHJycV9zX2lkWzNdOworICBfX2JlMTYgcnJxX294X2lkOworICBfX2JlMTYgcnJxX3J4X2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfZWxzX3JlYyB7Ci0gX191OCByZWNfY21kOwotIF9fdTggcmVjX3plcm9bM107CisgIF9fdTggcmVjX2NtZDsKKyAgX191OCByZWNfemVyb1szXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCByZWNfcmVzdmQ7Ci0gX191OCByZWNfc19pZFszXTsKLSBfX2JlMTYgcmVjX294X2lkOwotIF9fYmUxNiByZWNfcnhfaWQ7CisgIF9fdTggcmVjX3Jlc3ZkOworICBfX3U4IHJlY19zX2lkWzNdOworICBfX2JlMTYgcmVjX294X2lkOworICBfX2JlMTYgcmVjX3J4X2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfZWxzX3JlY19hY2MgewotIF9fdTggcmVjYV9jbWQ7Ci0gX191OCByZWNhX3plcm9bM107CisgIF9fdTggcmVjYV9jbWQ7CisgIF9fdTggcmVjYV96ZXJvWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgcmVjYV9veF9pZDsKLSBfX2JlMTYgcmVjYV9yeF9pZDsKLSBfX3U4IHJlY2FfcmVzdmQxOwotIF9fdTggcmVjYV9vZmlkWzNdOworICBfX2JlMTYgcmVjYV9veF9pZDsKKyAgX19iZTE2IHJlY2FfcnhfaWQ7CisgIF9fdTggcmVjYV9yZXN2ZDE7CisgIF9fdTggcmVjYV9vZmlkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJlY2FfcmVzdmQyOwotIF9fdTggcmVjYV9yZmlkWzNdOwotIF9fYmUzMiByZWNhX2ZjNHZhbHVlOwotIF9fYmUzMiByZWNhX2Vfc3RhdDsKKyAgX191OCByZWNhX3Jlc3ZkMjsKKyAgX191OCByZWNhX3JmaWRbM107CisgIF9fYmUzMiByZWNhX2ZjNHZhbHVlOworICBfX2JlMzIgcmVjYV9lX3N0YXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmY19lbHNfcHJsaSB7Ci0gX191OCBwcmxpX2NtZDsKLSBfX3U4IHBybGlfc3BwX2xlbjsKKyAgX191OCBwcmxpX2NtZDsKKyAgX191OCBwcmxpX3NwcF9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBwcmxpX2xlbjsKKyAgX19iZTE2IHBybGlfbGVuOwogfTsKIHN0cnVjdCBmY19lbHNfcHJsbyB7Ci0gX191OCBwcmxvX2NtZDsKKyAgX191OCBwcmxvX2NtZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBwcmxvX29iczsKLSBfX2JlMTYgcHJsb19sZW47CisgIF9fdTggcHJsb19vYnM7CisgIF9fYmUxNiBwcmxvX2xlbjsKIH07CiBzdHJ1Y3QgZmNfZWxzX2FkaXNjIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBhZGlzY19jbWQ7Ci0gX191OCBhZGlzY19yZXN2WzNdOwotIF9fdTggYWRpc2NfcmVzdjE7Ci0gX191OCBhZGlzY19oYXJkX2FkZHJbM107CisgIF9fdTggYWRpc2NfY21kOworICBfX3U4IGFkaXNjX3Jlc3ZbM107CisgIF9fdTggYWRpc2NfcmVzdjE7CisgIF9fdTggYWRpc2NfaGFyZF9hZGRyWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlNjQgYWRpc2Nfd3dwbjsKLSBfX2JlNjQgYWRpc2Nfd3dubjsKLSBfX3U4IGFkaXNjX3Jlc3YyOwotIF9fdTggYWRpc2NfcG9ydF9pZFszXTsKKyAgX19iZTY0IGFkaXNjX3d3cG47CisgIF9fYmU2NCBhZGlzY193d25uOworICBfX3U4IGFkaXNjX3Jlc3YyOworICBfX3U4IGFkaXNjX3BvcnRfaWRbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CiBzdHJ1Y3QgZmNfZWxzX2xvZ28gewotIF9fdTggZmxfY21kOwotIF9fdTggZmxfemVyb1szXTsKKyAgX191OCBmbF9jbWQ7CisgIF9fdTggZmxfemVyb1szXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmbF9yZXN2ZDsKLSBfX3U4IGZsX25fcG9ydF9pZFszXTsKLSBfX2JlNjQgZmxfbl9wb3J0X3d3bjsKKyAgX191OCBmbF9yZXN2ZDsKKyAgX191OCBmbF9uX3BvcnRfaWRbM107CisgIF9fYmU2NCBmbF9uX3BvcnRfd3duOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmNfZWxzX3J0diB7Ci0gX191OCBydHZfY21kOwotIF9fdTggcnR2X3plcm9bM107CisgIF9fdTggcnR2X2NtZDsKKyAgX191OCBydHZfemVyb1szXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZjX2Vsc19ydHZfYWNjIHsKLSBfX3U4IHJ0dl9jbWQ7Ci0gX191OCBydHZfemVyb1szXTsKLSBfX2JlMzIgcnR2X3JfYV90b3Y7CisgIF9fdTggcnR2X2NtZDsKKyAgX191OCBydHZfemVyb1szXTsKKyAgX19iZTMyIHJ0dl9yX2FfdG92OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgcnR2X2VfZF90b3Y7Ci0gX19iZTMyIHJ0dl90b3E7CisgIF9fYmUzMiBydHZfZV9kX3RvdjsKKyAgX19iZTMyIHJ0dl90b3E7CiB9OwogI2RlZmluZSBGQ19FTFNfUlRWX0VEUkVTICgxIDw8IDI2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkNfRUxTX1JUVl9SVFRPViAoMSA8PCAxOSkKIHN0cnVjdCBmY19lbHNfc2NyIHsKLSBfX3U4IHNjcl9jbWQ7Ci0gX191OCBzY3JfcmVzdls2XTsKKyAgX191OCBzY3JfY21kOworICBfX3U4IHNjcl9yZXN2WzZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNjcl9yZWdfZnVuYzsKKyAgX191OCBzY3JfcmVnX2Z1bmM7CiB9OwogZW51bSBmY19lbHNfc2NyX2Z1bmMgewotIEVMU19TQ1JGX0ZBQiA9IDEsCisgIEVMU19TQ1JGX0ZBQiA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19TQ1JGX05QT1JUID0gMiwKLSBFTFNfU0NSRl9GVUxMID0gMywKLSBFTFNfU0NSRl9DTEVBUiA9IDI1NSwKKyAgRUxTX1NDUkZfTlBPUlQgPSAyLAorICBFTFNfU0NSRl9GVUxMID0gMywKKyAgRUxTX1NDUkZfQ0xFQVIgPSAyNTUsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmY19lbHNfcnNjbiB7Ci0gX191OCByc2NuX2NtZDsKLSBfX3U4IHJzY25fcGFnZV9sZW47Ci0gX19iZTE2IHJzY25fcGxlbjsKKyAgX191OCByc2NuX2NtZDsKKyAgX191OCByc2NuX3BhZ2VfbGVuOworICBfX2JlMTYgcnNjbl9wbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfZWxzX3JzY25fcGFnZSB7Ci0gX191OCByc2NuX3BhZ2VfZmxhZ3M7Ci0gX191OCByc2NuX2ZpZFszXTsKKyAgX191OCByc2NuX3BhZ2VfZmxhZ3M7CisgIF9fdTggcnNjbl9maWRbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRUxTX1JTQ05fRVZfUVVBTF9CSVQgMgpAQCAtMzc4LDI5OCArMzc5LDI5OCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRUxTX1JTQ05fQUREUl9GTVRfTUFTSyAweDMKIGVudW0gZmNfZWxzX3JzY25fZXZfcXVhbCB7Ci0gRUxTX0VWX1FVQUxfTk9ORSA9IDAsCi0gRUxTX0VWX1FVQUxfTlNfT0JKID0gMSwKKyAgRUxTX0VWX1FVQUxfTk9ORSA9IDAsCisgIEVMU19FVl9RVUFMX05TX09CSiA9IDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19FVl9RVUFMX1BPUlRfQVRUUiA9IDIsCi0gRUxTX0VWX1FVQUxfU0VSVl9PQkogPSAzLAotIEVMU19FVl9RVUFMX1NXX0NPTkZJRyA9IDQsCi0gRUxTX0VWX1FVQUxfUkVNX09CSiA9IDUsCisgIEVMU19FVl9RVUFMX1BPUlRfQVRUUiA9IDIsCisgIEVMU19FVl9RVUFMX1NFUlZfT0JKID0gMywKKyAgRUxTX0VWX1FVQUxfU1dfQ09ORklHID0gNCwKKyAgRUxTX0VWX1FVQUxfUkVNX09CSiA9IDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZmNfZWxzX3JzY25fYWRkcl9mbXQgewotIEVMU19BRERSX0ZNVF9QT1JUID0gMCwKLSBFTFNfQUREUl9GTVRfQVJFQSA9IDEsCisgIEVMU19BRERSX0ZNVF9QT1JUID0gMCwKKyAgRUxTX0FERFJfRk1UX0FSRUEgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfQUREUl9GTVRfRE9NID0gMiwKLSBFTFNfQUREUl9GTVRfRkFCID0gMywKKyAgRUxTX0FERFJfRk1UX0RPTSA9IDIsCisgIEVMU19BRERSX0ZNVF9GQUIgPSAzLAogfTsKIHN0cnVjdCBmY19lbHNfcm5pZCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcm5pZF9jbWQ7Ci0gX191OCBybmlkX3Jlc3ZbM107Ci0gX191OCBybmlkX2ZtdDsKLSBfX3U4IHJuaWRfcmVzdjJbM107CisgIF9fdTggcm5pZF9jbWQ7CisgIF9fdTggcm5pZF9yZXN2WzNdOworICBfX3U4IHJuaWRfZm10OworICBfX3U4IHJuaWRfcmVzdjJbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZmNfZWxzX3JuaWRfZm10IHsKLSBFTFNfUk5JREZfTk9ORSA9IDAsCi0gRUxTX1JOSURGX0dFTiA9IDB4ZGYsCisgIEVMU19STklERl9OT05FID0gMCwKKyAgRUxTX1JOSURGX0dFTiA9IDB4ZGYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmY19lbHNfcm5pZF9yZXNwIHsKLSBfX3U4IHJuaWRfY21kOwotIF9fdTggcm5pZF9yZXN2WzNdOworICBfX3U4IHJuaWRfY21kOworICBfX3U4IHJuaWRfcmVzdlszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBybmlkX2ZtdDsKLSBfX3U4IHJuaWRfY2lkX2xlbjsKLSBfX3U4IHJuaWRfcmVzdjI7Ci0gX191OCBybmlkX3NpZF9sZW47CisgIF9fdTggcm5pZF9mbXQ7CisgIF9fdTggcm5pZF9jaWRfbGVuOworICBfX3U4IHJuaWRfcmVzdjI7CisgIF9fdTggcm5pZF9zaWRfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfZWxzX3JuaWRfY2lkIHsKLSBfX2JlNjQgcm5pZF93d3BuOwotIF9fYmU2NCBybmlkX3d3bm47CisgIF9fYmU2NCBybmlkX3d3cG47CisgIF9fYmU2NCBybmlkX3d3bm47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmY19lbHNfcm5pZF9nZW4gewotIF9fdTggcm5pZF92ZW5kX2lkWzE2XTsKLSBfX2JlMzIgcm5pZF9hdHlwZTsKKyAgX191OCBybmlkX3ZlbmRfaWRbMTZdOworICBfX2JlMzIgcm5pZF9hdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTMyIHJuaWRfcGh5c19wb3J0OwotIF9fYmUzMiBybmlkX2F0dF9ub2RlczsKLSBfX3U4IHJuaWRfbm9kZV9tZ210OwotIF9fdTggcm5pZF9pcF92ZXI7CisgIF9fYmUzMiBybmlkX3BoeXNfcG9ydDsKKyAgX19iZTMyIHJuaWRfYXR0X25vZGVzOworICBfX3U4IHJuaWRfbm9kZV9tZ210OworICBfX3U4IHJuaWRfaXBfdmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMTYgcm5pZF9wcm90X3BvcnQ7Ci0gX19iZTMyIHJuaWRfaXBfYWRkcls0XTsKLSBfX3U4IHJuaWRfcmVzdmRbMl07Ci0gX19iZTE2IHJuaWRfdmVuZF9zcGVjOworICBfX2JlMTYgcm5pZF9wcm90X3BvcnQ7CisgIF9fYmUzMiBybmlkX2lwX2FkZHJbNF07CisgIF9fdTggcm5pZF9yZXN2ZFsyXTsKKyAgX19iZTE2IHJuaWRfdmVuZF9zcGVjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGZjX2Vsc19ybmlkX2F0eXBlIHsKLSBFTFNfUk5JREFfVU5LID0gMHgwMSwKLSBFTFNfUk5JREFfT1RIRVIgPSAweDAyLAorICBFTFNfUk5JREFfVU5LID0gMHgwMSwKKyAgRUxTX1JOSURBX09USEVSID0gMHgwMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX1JOSURBX0hVQiA9IDB4MDMsCi0gRUxTX1JOSURBX1NXSVRDSCA9IDB4MDQsCi0gRUxTX1JOSURBX0dBVEVXQVkgPSAweDA1LAotIEVMU19STklEQV9DT05WID0gMHgwNiwKKyAgRUxTX1JOSURBX0hVQiA9IDB4MDMsCisgIEVMU19STklEQV9TV0lUQ0ggPSAweDA0LAorICBFTFNfUk5JREFfR0FURVdBWSA9IDB4MDUsCisgIEVMU19STklEQV9DT05WID0gMHgwNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX1JOSURBX0hCQSA9IDB4MDcsCi0gRUxTX1JOSURBX1BST1hZID0gMHgwOCwKLSBFTFNfUk5JREFfU1RPUkFHRSA9IDB4MDksCi0gRUxTX1JOSURBX0hPU1QgPSAweDBhLAorICBFTFNfUk5JREFfSEJBID0gMHgwNywKKyAgRUxTX1JOSURBX1BST1hZID0gMHgwOCwKKyAgRUxTX1JOSURBX1NUT1JBR0UgPSAweDA5LAorICBFTFNfUk5JREFfSE9TVCA9IDB4MGEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19STklEQV9TVUJTWVMgPSAweDBiLAotIEVMU19STklEQV9BQ0NFU1MgPSAweDBlLAotIEVMU19STklEQV9OQVMgPSAweDExLAotIEVMU19STklEQV9CUklER0UgPSAweDEyLAorICBFTFNfUk5JREFfU1VCU1lTID0gMHgwYiwKKyAgRUxTX1JOSURBX0FDQ0VTUyA9IDB4MGUsCisgIEVMU19STklEQV9OQVMgPSAweDExLAorICBFTFNfUk5JREFfQlJJREdFID0gMHgxMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX1JOSURBX1ZJUlQgPSAweDEzLAotIEVMU19STklEQV9NRiA9IDB4ZmYsCi0gRUxTX1JOSURBX01GX0hVQiA9IDFVTCA8PCAzMSwKLSBFTFNfUk5JREFfTUZfU1cgPSAxVUwgPDwgMzAsCisgIEVMU19STklEQV9WSVJUID0gMHgxMywKKyAgRUxTX1JOSURBX01GID0gMHhmZiwKKyAgRUxTX1JOSURBX01GX0hVQiA9IDFVTCA8PCAzMSwKKyAgRUxTX1JOSURBX01GX1NXID0gMVVMIDw8IDMwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfUk5JREFfTUZfR1cgPSAxVUwgPDwgMjksCi0gRUxTX1JOSURBX01GX1NUID0gMVVMIDw8IDI4LAotIEVMU19STklEQV9NRl9IT1NUID0gMVVMIDw8IDI3LAotIEVMU19STklEQV9NRl9TVUIgPSAxVUwgPDwgMjYsCisgIEVMU19STklEQV9NRl9HVyA9IDFVTCA8PCAyOSwKKyAgRUxTX1JOSURBX01GX1NUID0gMVVMIDw8IDI4LAorICBFTFNfUk5JREFfTUZfSE9TVCA9IDFVTCA8PCAyNywKKyAgRUxTX1JOSURBX01GX1NVQiA9IDFVTCA8PCAyNiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX1JOSURBX01GX0FDQyA9IDFVTCA8PCAyNSwKLSBFTFNfUk5JREFfTUZfV0RNID0gMVVMIDw8IDI0LAotIEVMU19STklEQV9NRl9OQVMgPSAxVUwgPDwgMjMsCi0gRUxTX1JOSURBX01GX0JSID0gMVVMIDw8IDIyLAorICBFTFNfUk5JREFfTUZfQUNDID0gMVVMIDw8IDI1LAorICBFTFNfUk5JREFfTUZfV0RNID0gMVVMIDw8IDI0LAorICBFTFNfUk5JREFfTUZfTkFTID0gMVVMIDw8IDIzLAorICBFTFNfUk5JREFfTUZfQlIgPSAxVUwgPDwgMjIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19STklEQV9NRl9WSVJUID0gMVVMIDw8IDIxLAorICBFTFNfUk5JREFfTUZfVklSVCA9IDFVTCA8PCAyMSwKIH07CiBlbnVtIGZjX2Vsc19ybmlkX21nbXQgewotIEVMU19STklETV9TTk1QID0gMCwKKyAgRUxTX1JOSURNX1NOTVAgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfUk5JRE1fVEVMTkVUID0gMSwKLSBFTFNfUk5JRE1fSFRUUCA9IDIsCi0gRUxTX1JOSURNX0hUVFBTID0gMywKLSBFTFNfUk5JRE1fWE1MID0gNCwKKyAgRUxTX1JOSURNX1RFTE5FVCA9IDEsCisgIEVMU19STklETV9IVFRQID0gMiwKKyAgRUxTX1JOSURNX0hUVFBTID0gMywKKyAgRUxTX1JOSURNX1hNTCA9IDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZmNfZWxzX3JuaWRfaXB2ZXIgewotIEVMU19STklESVBfTk9ORSA9IDAsCi0gRUxTX1JOSURJUF9WNCA9IDEsCisgIEVMU19STklESVBfTk9ORSA9IDAsCisgIEVMU19STklESVBfVjQgPSAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfUk5JRElQX1Y2ID0gMiwKKyAgRUxTX1JOSURJUF9WNiA9IDIsCiB9Owogc3RydWN0IGZjX2Vsc19ycGwgewotIF9fdTggcnBsX2NtZDsKKyAgX191OCBycGxfY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJwbF9yZXN2WzVdOwotIF9fYmUxNiBycGxfbWF4X3NpemU7Ci0gX191OCBycGxfcmVzdjE7Ci0gX191OCBycGxfaW5kZXhbM107CisgIF9fdTggcnBsX3Jlc3ZbNV07CisgIF9fYmUxNiBycGxfbWF4X3NpemU7CisgIF9fdTggcnBsX3Jlc3YxOworICBfX3U4IHJwbF9pbmRleFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IGZjX2Vsc19wbmIgewotIF9fYmUzMiBwbmJfcGh5c19wbjsKLSBfX3U4IHBuYl9yZXN2OworICBfX2JlMzIgcG5iX3BoeXNfcG47CisgIF9fdTggcG5iX3Jlc3Y7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcG5iX3BvcnRfaWRbM107Ci0gX19iZTY0IHBuYl93d3BuOworICBfX3U4IHBuYl9wb3J0X2lkWzNdOworICBfX2JlNjQgcG5iX3d3cG47CiB9Owogc3RydWN0IGZjX2Vsc19ycGxfcmVzcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcnBsX2NtZDsKLSBfX3U4IHJwbF9yZXN2MTsKLSBfX2JlMTYgcnBsX3BsZW47Ci0gX191OCBycGxfcmVzdjI7CisgIF9fdTggcnBsX2NtZDsKKyAgX191OCBycGxfcmVzdjE7CisgIF9fYmUxNiBycGxfcGxlbjsKKyAgX191OCBycGxfcmVzdjI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcnBsX2xsZW5bM107Ci0gX191OCBycGxfcmVzdjM7Ci0gX191OCBycGxfaW5kZXhbM107Ci0gc3RydWN0IGZjX2Vsc19wbmIgcnBsX3BuYlsxXTsKKyAgX191OCBycGxfbGxlblszXTsKKyAgX191OCBycGxfcmVzdjM7CisgIF9fdTggcnBsX2luZGV4WzNdOworICBzdHJ1Y3QgZmNfZWxzX3BuYiBycGxfcG5iWzFdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfZWxzX2xlc2IgewotIF9fYmUzMiBsZXNiX2xpbmtfZmFpbDsKLSBfX2JlMzIgbGVzYl9zeW5jX2xvc3M7CisgIF9fYmUzMiBsZXNiX2xpbmtfZmFpbDsKKyAgX19iZTMyIGxlc2Jfc3luY19sb3NzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX2JlMzIgbGVzYl9zaWdfbG9zczsKLSBfX2JlMzIgbGVzYl9wcmltX2VycjsKLSBfX2JlMzIgbGVzYl9pbnZfd29yZDsKLSBfX2JlMzIgbGVzYl9pbnZfY3JjOworICBfX2JlMzIgbGVzYl9zaWdfbG9zczsKKyAgX19iZTMyIGxlc2JfcHJpbV9lcnI7CisgIF9fYmUzMiBsZXNiX2ludl93b3JkOworICBfX2JlMzIgbGVzYl9pbnZfY3JjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfZWxzX3JwcyB7Ci0gX191OCBycHNfY21kOwotIF9fdTggcnBzX3Jlc3ZbMl07CisgIF9fdTggcnBzX2NtZDsKKyAgX191OCBycHNfcmVzdlsyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBycHNfZmxhZzsKLSBfX2JlNjQgcnBzX3BvcnRfc3BlYzsKKyAgX191OCBycHNfZmxhZzsKKyAgX19iZTY0IHJwc19wb3J0X3NwZWM7CiB9OwogZW51bSBmY19lbHNfcnBzX2ZsYWcgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19FTFNfUlBTX0RJRCA9IDB4MDAsCi0gRkNfRUxTX1JQU19QUE4gPSAweDAxLAotIEZDX0VMU19SUFNfV1dQTiA9IDB4MDIsCisgIEZDX0VMU19SUFNfRElEID0gMHgwMCwKKyAgRkNfRUxTX1JQU19QUE4gPSAweDAxLAorICBGQ19FTFNfUlBTX1dXUE4gPSAweDAyLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmNfZWxzX3Jwc19yZXNwIHsKLSBfX3U4IHJwc19jbWQ7Ci0gX191OCBycHNfcmVzdlsyXTsKLSBfX3U4IHJwc19mbGFnOworICBfX3U4IHJwc19jbWQ7CisgIF9fdTggcnBzX3Jlc3ZbMl07CisgIF9fdTggcnBzX2ZsYWc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcnBzX3Jlc3YyWzJdOwotIF9fYmUxNiBycHNfc3RhdHVzOwotIHN0cnVjdCBmY19lbHNfbGVzYiBycHNfbGVzYjsKKyAgX191OCBycHNfcmVzdjJbMl07CisgIF9fYmUxNiBycHNfc3RhdHVzOworICBzdHJ1Y3QgZmNfZWxzX2xlc2IgcnBzX2xlc2I7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gZmNfZWxzX3Jwc19yZXNwX2ZsYWcgewotIEZDX0VMU19SUFNfTFBFViA9IDB4MDEsCisgIEZDX0VMU19SUFNfTFBFViA9IDB4MDEsCiB9OwogZW51bSBmY19lbHNfcnBzX3Jlc3Bfc3RhdHVzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfRUxTX1JQU19QVFAgPSAxIDw8IDUsCi0gRkNfRUxTX1JQU19MT09QID0gMSA8PCA0LAotIEZDX0VMU19SUFNfRkFCID0gMSA8PCAzLAotIEZDX0VMU19SUFNfTk9fU0lHID0gMSA8PCAyLAorICBGQ19FTFNfUlBTX1BUUCA9IDEgPDwgNSwKKyAgRkNfRUxTX1JQU19MT09QID0gMSA8PCA0LAorICBGQ19FTFNfUlBTX0ZBQiA9IDEgPDwgMywKKyAgRkNfRUxTX1JQU19OT19TSUcgPSAxIDw8IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX0VMU19SUFNfTk9fU1lOQyA9IDEgPDwgMSwKLSBGQ19FTFNfUlBTX1JFU0VUID0gMSA8PCAwLAorICBGQ19FTFNfUlBTX05PX1NZTkMgPSAxIDw8IDEsCisgIEZDX0VMU19SUFNfUkVTRVQgPSAxIDw8IDAsCiB9Owogc3RydWN0IGZjX2Vsc19saXJyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBsaXJyX2NtZDsKLSBfX3U4IGxpcnJfcmVzdlszXTsKLSBfX3U4IGxpcnJfZnVuYzsKLSBfX3U4IGxpcnJfZm10OworICBfX3U4IGxpcnJfY21kOworICBfX3U4IGxpcnJfcmVzdlszXTsKKyAgX191OCBsaXJyX2Z1bmM7CisgIF9fdTggbGlycl9mbXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggbGlycl9yZXN2MlsyXTsKKyAgX191OCBsaXJyX3Jlc3YyWzJdOwogfTsKIGVudW0gZmNfZWxzX2xpcnJfZnVuYyB7Ci0gRUxTX0xJUlJfU0VUX0NPTkQgPSAweDAxLAorICBFTFNfTElSUl9TRVRfQ09ORCA9IDB4MDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19MSVJSX1NFVF9VTkNPTkQgPSAweDAyLAotIEVMU19MSVJSX0NMRUFSID0gMHhmZgorICBFTFNfTElSUl9TRVRfVU5DT05EID0gMHgwMiwKKyAgRUxTX0xJUlJfQ0xFQVIgPSAweGZmCiB9Owogc3RydWN0IGZjX2Vsc19zcmwgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNybF9jbWQ7Ci0gX191OCBzcmxfcmVzdlszXTsKLSBfX3U4IHNybF9mbGFnOwotIF9fdTggc3JsX2ZsYWdfcGFyYW1bM107CisgIF9fdTggc3JsX2NtZDsKKyAgX191OCBzcmxfcmVzdlszXTsKKyAgX191OCBzcmxfZmxhZzsKKyAgX191OCBzcmxfZmxhZ19wYXJhbVszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBmY19lbHNfc3JsX2ZsYWcgewotIEZDX0VMU19TUkxfQUxMID0gMHgwMCwKLSBGQ19FTFNfU1JMX09ORSA9IDB4MDEsCisgIEZDX0VMU19TUkxfQUxMID0gMHgwMCwKKyAgRkNfRUxTX1NSTF9PTkUgPSAweDAxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19FTFNfU1JMX0VOX1BFUiA9IDB4MDIsCi0gRkNfRUxTX1NSTF9ESVNfUEVSID0gMHgwMywKKyAgRkNfRUxTX1NSTF9FTl9QRVIgPSAweDAyLAorICBGQ19FTFNfU1JMX0RJU19QRVIgPSAweDAzLAogfTsKIHN0cnVjdCBmY19lbHNfcmxzIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBybHNfY21kOwotIF9fdTggcmxzX3Jlc3ZbNF07Ci0gX191OCBybHNfcG9ydF9pZFszXTsKKyAgX191OCBybHNfY21kOworICBfX3U4IHJsc19yZXN2WzRdOworICBfX3U4IHJsc19wb3J0X2lkWzNdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgZmNfZWxzX3Jsc19yZXNwIHsKLSBfX3U4IHJsc19jbWQ7Ci0gX191OCBybHNfcmVzdlszXTsKLSBzdHJ1Y3QgZmNfZWxzX2xlc2IgcmxzX2xlc2I7CisgIF9fdTggcmxzX2NtZDsKKyAgX191OCBybHNfcmVzdlszXTsKKyAgc3RydWN0IGZjX2Vsc19sZXNiIHJsc19sZXNiOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfZWxzX3JsaXIgewotIF9fdTggcmxpcl9jbWQ7Ci0gX191OCBybGlyX3Jlc3ZbM107CisgIF9fdTggcmxpcl9jbWQ7CisgIF9fdTggcmxpcl9yZXN2WzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHJsaXJfZm10OwotIF9fdTggcmxpcl9jbHJfbGVuOwotIF9fdTggcmxpcl9jbGRfbGVuOwotIF9fdTggcmxpcl9zbHJfbGVuOworICBfX3U4IHJsaXJfZm10OworICBfX3U4IHJsaXJfY2xyX2xlbjsKKyAgX191OCBybGlyX2NsZF9sZW47CisgIF9fdTggcmxpcl9zbHJfbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfZWxzX2NsaXIgewotIF9fYmU2NCBjbGlyX3d3cG47Ci0gX19iZTY0IGNsaXJfd3dubjsKKyAgX19iZTY0IGNsaXJfd3dwbjsKKyAgX19iZTY0IGNsaXJfd3dubjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjbGlyX3BvcnRfdHlwZTsKLSBfX3U4IGNsaXJfcG9ydF9pZFszXTsKLSBfX2JlNjQgY2xpcl9jb25uX3d3cG47Ci0gX19iZTY0IGNsaXJfY29ubl93d25uOworICBfX3U4IGNsaXJfcG9ydF90eXBlOworICBfX3U4IGNsaXJfcG9ydF9pZFszXTsKKyAgX19iZTY0IGNsaXJfY29ubl93d3BuOworICBfX2JlNjQgY2xpcl9jb25uX3d3bm47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmU2NCBjbGlyX2ZhYl9uYW1lOwotIF9fYmUzMiBjbGlyX3BoeXNfcG9ydDsKLSBfX2JlMzIgY2xpcl90cmFuc19pZDsKLSBfX3U4IGNsaXJfcmVzdlszXTsKKyAgX19iZTY0IGNsaXJfZmFiX25hbWU7CisgIF9fYmUzMiBjbGlyX3BoeXNfcG9ydDsKKyAgX19iZTMyIGNsaXJfdHJhbnNfaWQ7CisgIF9fdTggY2xpcl9yZXN2WzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGNsaXJfdHNfZm10OwotIF9fYmU2NCBjbGlyX3RpbWVzdGFtcDsKKyAgX191OCBjbGlyX3RzX2ZtdDsKKyAgX19iZTY0IGNsaXJfdGltZXN0YW1wOwogfTsKIGVudW0gZmNfZWxzX2NsaXJfdHNfZm10IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX0NMSVJfVFNfVU5LTk9XTiA9IDAsCi0gRUxTX0NMSVJfVFNfU0VDX0ZSQUMgPSAxLAotIEVMU19DTElSX1RTX0NTVSA9IDIsCisgIEVMU19DTElSX1RTX1VOS05PV04gPSAwLAorICBFTFNfQ0xJUl9UU19TRUNfRlJBQyA9IDEsCisgIEVMU19DTElSX1RTX0NTVSA9IDIsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmY19lbHNfY2xpZCB7Ci0gX191OCBjbGlkX2lxOwotIF9fdTggY2xpZF9pYzsKLSBfX2JlMTYgY2xpZF9lcGFpOworICBfX3U4IGNsaWRfaXE7CisgIF9fdTggY2xpZF9pYzsKKyAgX19iZTE2IGNsaWRfZXBhaTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBmY19lbHNfY2xpZF9pcSB7Ci0gRUxTX0NMSURfU1dJVENIID0gMHgyMCwKLSBFTFNfQ0xJRF9FX1BPUlQgPSAweDEwLAorICBFTFNfQ0xJRF9TV0lUQ0ggPSAweDIwLAorICBFTFNfQ0xJRF9FX1BPUlQgPSAweDEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBFTFNfQ0xJRF9TRVZfTUFTSyA9IDB4MGMsCi0gRUxTX0NMSURfU0VWX0lORk8gPSAweDAwLAotIEVMU19DTElEX1NFVl9JTk9QID0gMHgwOCwKLSBFTFNfQ0xJRF9TRVZfREVHID0gMHgwNCwKKyAgRUxTX0NMSURfU0VWX01BU0sgPSAweDBjLAorICBFTFNfQ0xJRF9TRVZfSU5GTyA9IDB4MDAsCisgIEVMU19DTElEX1NFVl9JTk9QID0gMHgwOCwKKyAgRUxTX0NMSURfU0VWX0RFRyA9IDB4MDQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19DTElEX0xBU0VSID0gMHgwMiwKLSBFTFNfQ0xJRF9GUlUgPSAweDAxLAorICBFTFNfQ0xJRF9MQVNFUiA9IDB4MDIsCisgIEVMU19DTElEX0ZSVSA9IDB4MDEsCiB9OwogZW51bSBmY19lbHNfY2xpZF9pYyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEVMU19DTElEX0lDX0lNUEwgPSAxLAotIEVMU19DTElEX0lDX0JFUiA9IDIsCi0gRUxTX0NMSURfSUNfTE9TID0gMywKLSBFTFNfQ0xJRF9JQ19OT1MgPSA0LAorICBFTFNfQ0xJRF9JQ19JTVBMID0gMSwKKyAgRUxTX0NMSURfSUNfQkVSID0gMiwKKyAgRUxTX0NMSURfSUNfTE9TID0gMywKKyAgRUxTX0NMSURfSUNfTk9TID0gNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRUxTX0NMSURfSUNfUFNUID0gNSwKLSBFTFNfQ0xJRF9JQ19JTlZBTCA9IDYsCi0gRUxTX0NMSURfSUNfTE9PUF9UTyA9IDcsCi0gRUxTX0NMSURfSUNfTElQID0gOCwKKyAgRUxTX0NMSURfSUNfUFNUID0gNSwKKyAgRUxTX0NMSURfSUNfSU5WQUwgPSA2LAorICBFTFNfQ0xJRF9JQ19MT09QX1RPID0gNywKKyAgRUxTX0NMSURfSUNfTElQID0gOCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3Njc2kvZmMvZmNfZnMuaCBiL2xpYmMva2VybmVsL3VhcGkvc2NzaS9mYy9mY19mcy5oCmluZGV4IDYyYjdmNGEuLmJkYzYxN2UgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvc2NzaS9mYy9mY19mcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc2NzaS9mYy9mY19mcy5oCkBAIC0yMSwyMCArMjEsMjAgQEAKICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgogc3RydWN0IGZjX2ZyYW1lX2hlYWRlciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZmhfcl9jdGw7Ci0gX191OCBmaF9kX2lkWzNdOwotIF9fdTggZmhfY3NfY3RsOwotIF9fdTggZmhfc19pZFszXTsKKyAgX191OCBmaF9yX2N0bDsKKyAgX191OCBmaF9kX2lkWzNdOworICBfX3U4IGZoX2NzX2N0bDsKKyAgX191OCBmaF9zX2lkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZoX3R5cGU7Ci0gX191OCBmaF9mX2N0bFszXTsKLSBfX3U4IGZoX3NlcV9pZDsKLSBfX3U4IGZoX2RmX2N0bDsKKyAgX191OCBmaF90eXBlOworICBfX3U4IGZoX2ZfY3RsWzNdOworICBfX3U4IGZoX3NlcV9pZDsKKyAgX191OCBmaF9kZl9jdGw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBmaF9zZXFfY250OwotIF9fYmUxNiBmaF9veF9pZDsKLSBfX2JlMTYgZmhfcnhfaWQ7Ci0gX19iZTMyIGZoX3Bhcm1fb2Zmc2V0OworICBfX2JlMTYgZmhfc2VxX2NudDsKKyAgX19iZTE2IGZoX294X2lkOworICBfX2JlMTYgZmhfcnhfaWQ7CisgIF9fYmUzMiBmaF9wYXJtX29mZnNldDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBGQ19GUkFNRV9IRUFERVJfTEVOIDI0CkBAIC00NCw2NSArNDQsNjYgQEAKICNkZWZpbmUgRkNfTUFYX0ZSQU1FIChGQ19NQVhfUEFZTE9BRCArIEZDX0ZSQU1FX0hFQURFUl9MRU4pCiAjZGVmaW5lIEZDX01JTl9NQVhfRlJBTUUgKEZDX01JTl9NQVhfUEFZTE9BRCArIEZDX0ZSQU1FX0hFQURFUl9MRU4pCiBlbnVtIGZjX3JjdGwgewotIEZDX1JDVExfRERfVU5DQVQgPSAweDAwLAorICBGQ19SQ1RMX0REX1VOQ0FUID0gMHgwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfUkNUTF9ERF9TT0xfREFUQSA9IDB4MDEsCi0gRkNfUkNUTF9ERF9VTlNPTF9DVEwgPSAweDAyLAotIEZDX1JDVExfRERfU09MX0NUTCA9IDB4MDMsCi0gRkNfUkNUTF9ERF9VTlNPTF9EQVRBID0gMHgwNCwKKyAgRkNfUkNUTF9ERF9TT0xfREFUQSA9IDB4MDEsCisgIEZDX1JDVExfRERfVU5TT0xfQ1RMID0gMHgwMiwKKyAgRkNfUkNUTF9ERF9TT0xfQ1RMID0gMHgwMywKKyAgRkNfUkNUTF9ERF9VTlNPTF9EQVRBID0gMHgwNCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfUkNUTF9ERF9EQVRBX0RFU0MgPSAweDA1LAotIEZDX1JDVExfRERfVU5TT0xfQ01EID0gMHgwNiwKLSBGQ19SQ1RMX0REX0NNRF9TVEFUVVMgPSAweDA3LAorICBGQ19SQ1RMX0REX0RBVEFfREVTQyA9IDB4MDUsCisgIEZDX1JDVExfRERfVU5TT0xfQ01EID0gMHgwNiwKKyAgRkNfUkNUTF9ERF9DTURfU1RBVFVTID0gMHgwNywKICNkZWZpbmUgRkNfUkNUTF9JTFNfUkVRIEZDX1JDVExfRERfVU5TT0xfQ1RMCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBGQ19SQ1RMX0lMU19SRVAgRkNfUkNUTF9ERF9TT0xfQ1RMCi0gRkNfUkNUTF9FTFNfUkVRID0gMHgyMiwKLSBGQ19SQ1RMX0VMU19SRVAgPSAweDIzLAotIEZDX1JDVExfRUxTNF9SRVEgPSAweDMyLAorICBGQ19SQ1RMX0VMU19SRVEgPSAweDIyLAorICBGQ19SQ1RMX0VMU19SRVAgPSAweDIzLAorICBGQ19SQ1RMX0VMUzRfUkVRID0gMHgzMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfUkNUTF9FTFM0X1JFUCA9IDB4MzMsCi0gRkNfUkNUTF9WRlRIID0gMHg1MCwKLSBGQ19SQ1RMX0lGUkggPSAweDUxLAotIEZDX1JDVExfRU5DSCA9IDB4NTIsCisgIEZDX1JDVExfRUxTNF9SRVAgPSAweDMzLAorICBGQ19SQ1RMX1ZGVEggPSAweDUwLAorICBGQ19SQ1RMX0lGUkggPSAweDUxLAorICBGQ19SQ1RMX0VOQ0ggPSAweDUyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19SQ1RMX0JBX05PUCA9IDB4ODAsCi0gRkNfUkNUTF9CQV9BQlRTID0gMHg4MSwKLSBGQ19SQ1RMX0JBX1JNQyA9IDB4ODIsCi0gRkNfUkNUTF9CQV9BQ0MgPSAweDg0LAorICBGQ19SQ1RMX0JBX05PUCA9IDB4ODAsCisgIEZDX1JDVExfQkFfQUJUUyA9IDB4ODEsCisgIEZDX1JDVExfQkFfUk1DID0gMHg4MiwKKyAgRkNfUkNUTF9CQV9BQ0MgPSAweDg0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19SQ1RMX0JBX1JKVCA9IDB4ODUsCi0gRkNfUkNUTF9CQV9QUk1UID0gMHg4NiwKLSBGQ19SQ1RMX0FDS18xID0gMHhjMCwKLSBGQ19SQ1RMX0FDS18wID0gMHhjMSwKKyAgRkNfUkNUTF9CQV9SSlQgPSAweDg1LAorICBGQ19SQ1RMX0JBX1BSTVQgPSAweDg2LAorICBGQ19SQ1RMX0FDS18xID0gMHhjMCwKKyAgRkNfUkNUTF9BQ0tfMCA9IDB4YzEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1JDVExfUF9SSlQgPSAweGMyLAotIEZDX1JDVExfRl9SSlQgPSAweGMzLAotIEZDX1JDVExfUF9CU1kgPSAweGM0LAotIEZDX1JDVExfRl9CU1kgPSAweGM1LAorICBGQ19SQ1RMX1BfUkpUID0gMHhjMiwKKyAgRkNfUkNUTF9GX1JKVCA9IDB4YzMsCisgIEZDX1JDVExfUF9CU1kgPSAweGM0LAorICBGQ19SQ1RMX0ZfQlNZID0gMHhjNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfUkNUTF9GX0JTWUwgPSAweGM2LAotIEZDX1JDVExfTENSID0gMHhjNywKLSBGQ19SQ1RMX0VORCA9IDB4YzksCisgIEZDX1JDVExfRl9CU1lMID0gMHhjNiwKKyAgRkNfUkNUTF9MQ1IgPSAweGM3LAorICBGQ19SQ1RMX0VORCA9IDB4YzksCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgRkNfUkNUTF9OQU1FU19JTklUIHsgICBbRkNfUkNUTF9ERF9VTkNBVF0gPSAidW5jYXQiLCAgIFtGQ19SQ1RMX0REX1NPTF9EQVRBXSA9ICJzb2wgZGF0YSIsICAgW0ZDX1JDVExfRERfVU5TT0xfQ1RMXSA9ICJ1bnNvbCBjdGwiLCAgIFtGQ19SQ1RMX0REX1NPTF9DVExdID0gInNvbCBjdGwvcmVwbHkiLCAgIFtGQ19SQ1RMX0REX1VOU09MX0RBVEFdID0gInVuc29sIGRhdGEiLCAgIFtGQ19SQ1RMX0REX0RBVEFfREVTQ10gPSAiZGF0YSBkZXNjIiwgICBbRkNfUkNUTF9ERF9VTlNPTF9DTURdID0gInVuc29sIGNtZCIsICAgW0ZDX1JDVExfRERfQ01EX1NUQVRVU10gPSAiY21kIHN0YXR1cyIsICAgW0ZDX1JDVExfRUxTX1JFUV0gPSAiRUxTIHJlcSIsICAgW0ZDX1JDVExfRUxTX1JFUF0gPSAiRUxTIHJlcCIsICAgW0ZDX1JDVExfRUxTNF9SRVFdID0gIkZDLTQgRUxTIHJlcSIsICAgW0ZDX1JDVExfRUxTNF9SRVBdID0gIkZDLTQgRUxTIHJlcCIsICAgW0ZDX1JDVExfQkFfTk9QXSA9ICJCTFMgTk9QIiwgICBbRkNfUkNUTF9CQV9BQlRTXSA9ICJCTFMgYWJvcnQiLCAgIFtGQ19SQ1RMX0JBX1JNQ10gPSAiQkxTIHJlbW92ZSBjb25uZWN0aW9uIiwgICBbRkNfUkNUTF9CQV9BQ0NdID0gIkJMUyBhY2NlcHQiLCAgIFtGQ19SQ1RMX0JBX1JKVF0gPSAiQkxTIHJlamVjdCIsICAgW0ZDX1JDVExfQkFfUFJNVF0gPSAiQkxTIGRlZGljYXRlZCBjb25uZWN0aW9uIHByZWVtcHRlZCIsICAgW0ZDX1JDVExfQUNLXzFdID0gIkxDIEFDS18xIiwgICBbRkNfUkNUTF9BQ0tfMF0gPSAiTEMgQUNLXzAiLCAgIFtGQ19SQ1RMX1BfUkpUXSA9ICJMQyBwb3J0IHJlamVjdCIsICAgW0ZDX1JDVExfRl9SSlRdID0gIkxDIGZhYnJpYyByZWplY3QiLCAgIFtGQ19SQ1RMX1BfQlNZXSA9ICJMQyBwb3J0IGJ1c3kiLCAgIFtGQ19SQ1RMX0ZfQlNZXSA9ICJMQyBmYWJyaWMgYnVzeSB0byBkYXRhIGZyYW1lIiwgICBbRkNfUkNUTF9GX0JTWUxdID0gIkxDIGZhYnJpYyBidXN5IHRvIGxpbmsgY29udHJvbCBmcmFtZSIsICBbRkNfUkNUTF9MQ1JdID0gIkxDIGxpbmsgY3JlZGl0IHJlc2V0IiwgICBbRkNfUkNUTF9FTkRdID0gIkxDIGVuZCIsICB9CisjZGVmaW5lIEZDX1JDVExfTkFNRVNfSU5JVCB7W0ZDX1JDVExfRERfVU5DQVRdID0gInVuY2F0IixbRkNfUkNUTF9ERF9TT0xfREFUQV0gPSAic29sIGRhdGEiLFtGQ19SQ1RMX0REX1VOU09MX0NUTF0gPSAidW5zb2wgY3RsIixbRkNfUkNUTF9ERF9TT0xfQ1RMXSA9ICJzb2wgY3RsL3JlcGx5IixbRkNfUkNUTF9ERF9VTlNPTF9EQVRBXSA9ICJ1bnNvbCBkYXRhIixbRkNfUkNUTF9ERF9EQVRBX0RFU0NdID0gImRhdGEgZGVzYyIsW0ZDX1JDVExfRERfVU5TT0xfQ01EXSA9ICJ1bnNvbCBjbWQiLFtGQ19SQ1RMX0REX0NNRF9TVEFUVVNdID0gImNtZCBzdGF0dXMiLFtGQ19SQ1RMX0VMU19SRVFdID0gIkVMUyByZXEiLFtGQ19SQ1RMX0VMU19SRVBdID0gIkVMUyByZXAiLFtGQ19SQ1RMX0VMUzRfUkVRXSA9ICJGQy00IEVMUyByZXEiLFtGQ19SQ1RMX0VMUzRfUkVQXSA9ICJGQy00IEVMUyByZXAiLFtGQ19SQ1RMX0JBX05PUF0gPSAiQkxTIE5PUCIsW0ZDX1JDVExfQkFfQUJUU10gPSAiQkxTIGFib3J0IixbRkNfUkNUTF9CQV9STUNdID0gIkJMUyByZW1vdmUgY29ubmVjdGlvbiIsW0ZDX1JDVExfQkFfQUNDXSA9ICJCTFMgYWNjZXB0IixbRkNfUkNUTF9CQV9SSlRdID0gIkJMUyByZWplY3QiLFtGQ19SQ1RMX0JBX1BSTVRdID0gIkJMUyBkZWRpY2F0ZWQgY29ubmVjdGlvbiBwcmVlbXB0ZWQiLFtGQ19SQ1RMX0FDS18xXSA9ICJMQyBBQ0tfMSIsW0ZDX1JDVExfQUNLXzBdID0gIkxDIEFDS18wIixbRkNfUkNUTF9QX1JKVF0gPSAiTEMgcG9ydCByZWplY3QiLFtGQ19SQ1RMX0ZfUkpUXSA9ICJMQyBmYWJyaWMgcmVqZWN0IixbRkNfUkNUTF9QX0JTWV0gPSAiTEMgcG9ydCBidXN5IixbRkNfUkNUTF9GX0JTWV0gPSAiTEMgZmFicmljIGJ1c3kgdG8gZGF0YSBmcmFtZSIsW0ZDX1JDVExfRl9CU1lMXSA9ICJMQyBmYWJyaWMgYnVzeSB0byBsaW5rIGNvbnRyb2wgZnJhbWUiLFtGQ19SQ1RMX0xDUl0gPSAiTEMgbGluayBjcmVkaXQgcmVzZXQiLFtGQ19SQ1RMX0VORF0gPSAiTEMgZW5kIiwgXAorfQogZW51bSBmY193ZWxsX2tub3duX2ZpZCB7Ci0gRkNfRklEX05PTkUgPSAweDAwMDAwMCwKLSBGQ19GSURfQkNBU1QgPSAweGZmZmZmZiwKKyAgRkNfRklEX05PTkUgPSAweDAwMDAwMCwKKyAgRkNfRklEX0JDQVNUID0gMHhmZmZmZmYsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX0ZJRF9GTE9HSSA9IDB4ZmZmZmZlLAotIEZDX0ZJRF9GQ1RSTCA9IDB4ZmZmZmZkLAotIEZDX0ZJRF9ESVJfU0VSViA9IDB4ZmZmZmZjLAotIEZDX0ZJRF9USU1FX1NFUlYgPSAweGZmZmZmYiwKKyAgRkNfRklEX0ZMT0dJID0gMHhmZmZmZmUsCisgIEZDX0ZJRF9GQ1RSTCA9IDB4ZmZmZmZkLAorICBGQ19GSURfRElSX1NFUlYgPSAweGZmZmZmYywKKyAgRkNfRklEX1RJTUVfU0VSViA9IDB4ZmZmZmZiLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19GSURfTUdNVF9TRVJWID0gMHhmZmZmZmEsCi0gRkNfRklEX1FPUyA9IDB4ZmZmZmY5LAotIEZDX0ZJRF9BTElBU0VTID0gMHhmZmZmZjgsCi0gRkNfRklEX1NFQ19LRVkgPSAweGZmZmZmNywKKyAgRkNfRklEX01HTVRfU0VSViA9IDB4ZmZmZmZhLAorICBGQ19GSURfUU9TID0gMHhmZmZmZjksCisgIEZDX0ZJRF9BTElBU0VTID0gMHhmZmZmZjgsCisgIEZDX0ZJRF9TRUNfS0VZID0gMHhmZmZmZjcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX0ZJRF9DTE9DSyA9IDB4ZmZmZmY2LAotIEZDX0ZJRF9NQ0FTVF9TRVJWID0gMHhmZmZmZjUsCisgIEZDX0ZJRF9DTE9DSyA9IDB4ZmZmZmY2LAorICBGQ19GSURfTUNBU1RfU0VSViA9IDB4ZmZmZmY1LAogfTsKICNkZWZpbmUgRkNfRklEX1dFTExfS05PV05fTUFYIDB4ZmZmZmZmCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTEzLDE2ICsxMTQsMTcgQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZDX0ZJRF9MSU5LIDIKIGVudW0gZmNfZmhfdHlwZSB7Ci0gRkNfVFlQRV9CTFMgPSAweDAwLAotIEZDX1RZUEVfRUxTID0gMHgwMSwKKyAgRkNfVFlQRV9CTFMgPSAweDAwLAorICBGQ19UWVBFX0VMUyA9IDB4MDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1RZUEVfSVAgPSAweDA1LAotIEZDX1RZUEVfRkNQID0gMHgwOCwKLSBGQ19UWVBFX0NUID0gMHgyMCwKLSBGQ19UWVBFX0lMUyA9IDB4MjIsCisgIEZDX1RZUEVfSVAgPSAweDA1LAorICBGQ19UWVBFX0ZDUCA9IDB4MDgsCisgIEZDX1RZUEVfQ1QgPSAweDIwLAorICBGQ19UWVBFX0lMUyA9IDB4MjIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgRkNfVFlQRV9OQU1FU19JTklUIHsgICBbRkNfVFlQRV9CTFNdID0gIkJMUyIsICAgW0ZDX1RZUEVfRUxTXSA9ICJFTFMiLCAgIFtGQ19UWVBFX0lQXSA9ICJJUCIsICAgW0ZDX1RZUEVfRkNQXSA9ICJGQ1AiLCAgIFtGQ19UWVBFX0NUXSA9ICJDVCIsICAgW0ZDX1RZUEVfSUxTXSA9ICJJTFMiLCAgfQorI2RlZmluZSBGQ19UWVBFX05BTUVTX0lOSVQge1tGQ19UWVBFX0JMU10gPSAiQkxTIixbRkNfVFlQRV9FTFNdID0gIkVMUyIsW0ZDX1RZUEVfSVBdID0gIklQIixbRkNfVFlQRV9GQ1BdID0gIkZDUCIsW0ZDX1RZUEVfQ1RdID0gIkNUIixbRkNfVFlQRV9JTFNdID0gIklMUyIsIFwKK30KICNkZWZpbmUgRkNfWElEX1VOS05PV04gMHhmZmZmCiAjZGVmaW5lIEZDX1hJRF9NSU4gMHgwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwpAQCAtMTU2LDk3ICsxNTgsOTcgQEAKICNkZWZpbmUgRkNfRkNfRklMTChpKSAoKGkpICYgMykKIHN0cnVjdCBmY19iYV9hY2MgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJhX3NlcV9pZF92YWw7CisgIF9fdTggYmFfc2VxX2lkX3ZhbDsKICNkZWZpbmUgRkNfQkFfU0VRX0lEX1ZBTCAweDgwCi0gX191OCBiYV9zZXFfaWQ7Ci0gX191OCBiYV9yZXN2ZFsyXTsKKyAgX191OCBiYV9zZXFfaWQ7CisgIF9fdTggYmFfcmVzdmRbMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUxNiBiYV9veF9pZDsKLSBfX2JlMTYgYmFfcnhfaWQ7Ci0gX19iZTE2IGJhX2xvd19zZXFfY250OwotIF9fYmUxNiBiYV9oaWdoX3NlcV9jbnQ7CisgIF9fYmUxNiBiYV9veF9pZDsKKyAgX19iZTE2IGJhX3J4X2lkOworICBfX2JlMTYgYmFfbG93X3NlcV9jbnQ7CisgIF9fYmUxNiBiYV9oaWdoX3NlcV9jbnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmY19iYV9yanQgewotIF9fdTggYnJfcmVzdmQ7Ci0gX191OCBicl9yZWFzb247CisgIF9fdTggYnJfcmVzdmQ7CisgIF9fdTggYnJfcmVhc29uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGJyX2V4cGxhbjsKLSBfX3U4IGJyX3ZlbmRvcjsKKyAgX191OCBicl9leHBsYW47CisgIF9fdTggYnJfdmVuZG9yOwogfTsKIGVudW0gZmNfYmFfcmp0X3JlYXNvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX0JBX1JKVF9OT05FID0gMCwKLSBGQ19CQV9SSlRfSU5WTF9DTUQgPSAweDAxLAotIEZDX0JBX1JKVF9MT0dfRVJSID0gMHgwMywKLSBGQ19CQV9SSlRfTE9HX0JVU1kgPSAweDA1LAorICBGQ19CQV9SSlRfTk9ORSA9IDAsCisgIEZDX0JBX1JKVF9JTlZMX0NNRCA9IDB4MDEsCisgIEZDX0JBX1JKVF9MT0dfRVJSID0gMHgwMywKKyAgRkNfQkFfUkpUX0xPR19CVVNZID0gMHgwNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfQkFfUkpUX1BST1RPX0VSUiA9IDB4MDcsCi0gRkNfQkFfUkpUX1VOQUJMRSA9IDB4MDksCi0gRkNfQkFfUkpUX1ZFTkRPUiA9IDB4ZmYsCisgIEZDX0JBX1JKVF9QUk9UT19FUlIgPSAweDA3LAorICBGQ19CQV9SSlRfVU5BQkxFID0gMHgwOSwKKyAgRkNfQkFfUkpUX1ZFTkRPUiA9IDB4ZmYsCiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gZmNfYmFfcmp0X2V4cGxhbiB7Ci0gRkNfQkFfUkpUX0VYUF9OT05FID0gMHgwMCwKLSBGQ19CQV9SSlRfSU5WX1hJRCA9IDB4MDMsCi0gRkNfQkFfUkpUX0FCVCA9IDB4MDUsCisgIEZDX0JBX1JKVF9FWFBfTk9ORSA9IDB4MDAsCisgIEZDX0JBX1JKVF9JTlZfWElEID0gMHgwMywKKyAgRkNfQkFfUkpUX0FCVCA9IDB4MDUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmY19wZl9yanQgewotIF9fdTggcmpfYWN0aW9uOwotIF9fdTggcmpfcmVhc29uOworICBfX3U4IHJqX2FjdGlvbjsKKyAgX191OCByal9yZWFzb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmpfcmVzdmQ7Ci0gX191OCByal92ZW5kb3I7CisgIF9fdTggcmpfcmVzdmQ7CisgIF9fdTggcmpfdmVuZG9yOwogfTsKIGVudW0gZmNfcGZfcmp0X3JlYXNvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1JKVF9OT05FID0gMCwKLSBGQ19SSlRfSU5WTF9ESUQgPSAweDAxLAotIEZDX1JKVF9JTlZMX1NJRCA9IDB4MDIsCi0gRkNfUkpUX1BfVU5BVl9UID0gMHgwMywKKyAgRkNfUkpUX05PTkUgPSAwLAorICBGQ19SSlRfSU5WTF9ESUQgPSAweDAxLAorICBGQ19SSlRfSU5WTF9TSUQgPSAweDAyLAorICBGQ19SSlRfUF9VTkFWX1QgPSAweDAzLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19SSlRfUF9VTkFWID0gMHgwNCwKLSBGQ19SSlRfQ0xTX1VOU1VQID0gMHgwNSwKLSBGQ19SSlRfREVMX1VTQUdFID0gMHgwNiwKLSBGQ19SSlRfVFlQRV9VTlNVUCA9IDB4MDcsCisgIEZDX1JKVF9QX1VOQVYgPSAweDA0LAorICBGQ19SSlRfQ0xTX1VOU1VQID0gMHgwNSwKKyAgRkNfUkpUX0RFTF9VU0FHRSA9IDB4MDYsCisgIEZDX1JKVF9UWVBFX1VOU1VQID0gMHgwNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfUkpUX0xJTktfQ1RMID0gMHgwOCwKLSBGQ19SSlRfUl9DVEwgPSAweDA5LAotIEZDX1JKVF9GX0NUTCA9IDB4MGEsCi0gRkNfUkpUX09YX0lEID0gMHgwYiwKKyAgRkNfUkpUX0xJTktfQ1RMID0gMHgwOCwKKyAgRkNfUkpUX1JfQ1RMID0gMHgwOSwKKyAgRkNfUkpUX0ZfQ1RMID0gMHgwYSwKKyAgRkNfUkpUX09YX0lEID0gMHgwYiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfUkpUX1JYX0lEID0gMHgwYywKLSBGQ19SSlRfU0VRX0lEID0gMHgwZCwKLSBGQ19SSlRfREZfQ1RMID0gMHgwZSwKLSBGQ19SSlRfU0VRX0NOVCA9IDB4MGYsCisgIEZDX1JKVF9SWF9JRCA9IDB4MGMsCisgIEZDX1JKVF9TRVFfSUQgPSAweDBkLAorICBGQ19SSlRfREZfQ1RMID0gMHgwZSwKKyAgRkNfUkpUX1NFUV9DTlQgPSAweDBmLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19SSlRfUEFSQU0gPSAweDEwLAotIEZDX1JKVF9FWENIX0VSUiA9IDB4MTEsCi0gRkNfUkpUX1BST1RPID0gMHgxMiwKLSBGQ19SSlRfTEVOID0gMHgxMywKKyAgRkNfUkpUX1BBUkFNID0gMHgxMCwKKyAgRkNfUkpUX0VYQ0hfRVJSID0gMHgxMSwKKyAgRkNfUkpUX1BST1RPID0gMHgxMiwKKyAgRkNfUkpUX0xFTiA9IDB4MTMsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1JKVF9VTkVYUF9BQ0sgPSAweDE0LAotIEZDX1JKVF9GQUJfQ0xBU1MgPSAweDE1LAotIEZDX1JKVF9MT0dJX1JFUSA9IDB4MTYsCi0gRkNfUkpUX1NFUV9YUyA9IDB4MTcsCisgIEZDX1JKVF9VTkVYUF9BQ0sgPSAweDE0LAorICBGQ19SSlRfRkFCX0NMQVNTID0gMHgxNSwKKyAgRkNfUkpUX0xPR0lfUkVRID0gMHgxNiwKKyAgRkNfUkpUX1NFUV9YUyA9IDB4MTcsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1JKVF9FWENIX0VTVCA9IDB4MTgsCi0gRkNfUkpUX0ZBQl9VTkFWID0gMHgxYSwKLSBGQ19SSlRfVkNfSUQgPSAweDFiLAotIEZDX1JKVF9DU19DVEwgPSAweDFjLAorICBGQ19SSlRfRVhDSF9FU1QgPSAweDE4LAorICBGQ19SSlRfRkFCX1VOQVYgPSAweDFhLAorICBGQ19SSlRfVkNfSUQgPSAweDFiLAorICBGQ19SSlRfQ1NfQ1RMID0gMHgxYywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfUkpUX0lOU1VGX1JFUyA9IDB4MWQsCi0gRkNfUkpUX0lOVkxfQ0xTID0gMHgxZiwKLSBGQ19SSlRfUFJFRU1UX1JKVCA9IDB4MjAsCi0gRkNfUkpUX1BSRUVNVF9ESVMgPSAweDIxLAorICBGQ19SSlRfSU5TVUZfUkVTID0gMHgxZCwKKyAgRkNfUkpUX0lOVkxfQ0xTID0gMHgxZiwKKyAgRkNfUkpUX1BSRUVNVF9SSlQgPSAweDIwLAorICBGQ19SSlRfUFJFRU1UX0RJUyA9IDB4MjEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX1JKVF9NQ0FTVF9FUlIgPSAweDIyLAotIEZDX1JKVF9NQ0FTVF9FVCA9IDB4MjMsCi0gRkNfUkpUX1BSTElfUkVRID0gMHgyNCwKLSBGQ19SSlRfSU5WTF9BVFQgPSAweDI1LAorICBGQ19SSlRfTUNBU1RfRVJSID0gMHgyMiwKKyAgRkNfUkpUX01DQVNUX0VUID0gMHgyMywKKyAgRkNfUkpUX1BSTElfUkVRID0gMHgyNCwKKyAgRkNfUkpUX0lOVkxfQVRUID0gMHgyNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfUkpUX1ZFTkRPUiA9IDB4ZmYsCisgIEZDX1JKVF9WRU5ET1IgPSAweGZmLAogfTsKICNkZWZpbmUgRkNfREVGX0VfRF9UT1YgMjAwMFVMCiAjZGVmaW5lIEZDX0RFRl9SX0FfVE9WIDEwMDAwVUwKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvc2NzaS9mYy9mY19ncy5oIGIvbGliYy9rZXJuZWwvdWFwaS9zY3NpL2ZjL2ZjX2dzLmgKaW5kZXggYjQxZmM1Ni4uMDViNmM1MiAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9zY3NpL2ZjL2ZjX2dzLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9zY3NpL2ZjL2ZjX2dzLmgKQEAgLTIxLDYwICsyMSw2MCBAQAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiBzdHJ1Y3QgZmNfY3RfaGRyIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBjdF9yZXY7Ci0gX191OCBjdF9pbl9pZFszXTsKLSBfX3U4IGN0X2ZzX3R5cGU7Ci0gX191OCBjdF9mc19zdWJ0eXBlOworICBfX3U4IGN0X3JldjsKKyAgX191OCBjdF9pbl9pZFszXTsKKyAgX191OCBjdF9mc190eXBlOworICBfX3U4IGN0X2ZzX3N1YnR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggY3Rfb3B0aW9uczsKLSBfX3U4IF9jdF9yZXN2ZDE7Ci0gX19iZTE2IGN0X2NtZDsKLSBfX2JlMTYgY3RfbXJfc2l6ZTsKKyAgX191OCBjdF9vcHRpb25zOworICBfX3U4IF9jdF9yZXN2ZDE7CisgIF9fYmUxNiBjdF9jbWQ7CisgIF9fYmUxNiBjdF9tcl9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IF9jdF9yZXN2ZDI7Ci0gX191OCBjdF9yZWFzb247Ci0gX191OCBjdF9leHBsYW47Ci0gX191OCBjdF92ZW5kb3I7CisgIF9fdTggX2N0X3Jlc3ZkMjsKKyAgX191OCBjdF9yZWFzb247CisgIF9fdTggY3RfZXhwbGFuOworICBfX3U4IGN0X3ZlbmRvcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBGQ19DVF9IRFJfTEVOIDE2CiBlbnVtIGZjX2N0X3JldiB7Ci0gRkNfQ1RfUkVWID0gMQorICBGQ19DVF9SRVYgPSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZmNfY3RfZnNfdHlwZSB7Ci0gRkNfRlNUX0FMSUFTID0gMHhmOCwKLSBGQ19GU1RfTUdNVCA9IDB4ZmEsCisgIEZDX0ZTVF9BTElBUyA9IDB4ZjgsCisgIEZDX0ZTVF9NR01UID0gMHhmYSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfRlNUX1RJTUUgPSAweGZiLAotIEZDX0ZTVF9ESVIgPSAweGZjLAorICBGQ19GU1RfVElNRSA9IDB4ZmIsCisgIEZDX0ZTVF9ESVIgPSAweGZjLAogfTsKIGVudW0gZmNfY3RfY21kIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfRlNfUkpUID0gMHg4MDAxLAotIEZDX0ZTX0FDQyA9IDB4ODAwMiwKKyAgRkNfRlNfUkpUID0gMHg4MDAxLAorICBGQ19GU19BQ0MgPSAweDgwMDIsCiB9OwogZW51bSBmY19jdF9yZWFzb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19GU19SSlRfQ01EID0gMHgwMSwKLSBGQ19GU19SSlRfVkVSID0gMHgwMiwKLSBGQ19GU19SSlRfTE9HID0gMHgwMywKLSBGQ19GU19SSlRfSVVTSVogPSAweDA0LAorICBGQ19GU19SSlRfQ01EID0gMHgwMSwKKyAgRkNfRlNfUkpUX1ZFUiA9IDB4MDIsCisgIEZDX0ZTX1JKVF9MT0cgPSAweDAzLAorICBGQ19GU19SSlRfSVVTSVogPSAweDA0LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19GU19SSlRfQlNZID0gMHgwNSwKLSBGQ19GU19SSlRfUFJPVE8gPSAweDA3LAotIEZDX0ZTX1JKVF9VTkFCTCA9IDB4MDksCi0gRkNfRlNfUkpUX1VOU1VQID0gMHgwYiwKKyAgRkNfRlNfUkpUX0JTWSA9IDB4MDUsCisgIEZDX0ZTX1JKVF9QUk9UTyA9IDB4MDcsCisgIEZDX0ZTX1JKVF9VTkFCTCA9IDB4MDksCisgIEZDX0ZTX1JKVF9VTlNVUCA9IDB4MGIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gZmNfY3RfZXhwbGFuIHsKLSBGQ19GU19FWFBfTk9ORSA9IDB4MDAsCi0gRkNfRlNfRVhQX1BJRCA9IDB4MDEsCisgIEZDX0ZTX0VYUF9OT05FID0gMHgwMCwKKyAgRkNfRlNfRVhQX1BJRCA9IDB4MDEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX0ZTX0VYUF9QTkFNID0gMHgwMiwKLSBGQ19GU19FWFBfTk5BTSA9IDB4MDMsCi0gRkNfRlNfRVhQX0NPUyA9IDB4MDQsCi0gRkNfRlNfRVhQX0ZUTlIgPSAweDA3LAorICBGQ19GU19FWFBfUE5BTSA9IDB4MDIsCisgIEZDX0ZTX0VYUF9OTkFNID0gMHgwMywKKyAgRkNfRlNfRVhQX0NPUyA9IDB4MDQsCisgIEZDX0ZTX0VYUF9GVE5SID0gMHgwNywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3Njc2kvZmMvZmNfbnMuaCBiL2xpYmMva2VybmVsL3VhcGkvc2NzaS9mYy9mY19ucy5oCmluZGV4IDYyN2NkNDYuLmNkMDI4ZjMgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvc2NzaS9mYy9mY19ucy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc2NzaS9mYy9mY19ucy5oCkBAIC0yMiw0OCArMjIsNDggQEAKICNkZWZpbmUgRkNfTlNfU1VCVFlQRSAyCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBmY19uc19yZXEgewotIEZDX05TX0dBX05YVCA9IDB4MDEwMCwKLSBGQ19OU19HSV9BID0gMHgwMTAxLAotIEZDX05TX0dQTl9JRCA9IDB4MDExMiwKKyAgRkNfTlNfR0FfTlhUID0gMHgwMTAwLAorICBGQ19OU19HSV9BID0gMHgwMTAxLAorICBGQ19OU19HUE5fSUQgPSAweDAxMTIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX05TX0dOTl9JRCA9IDB4MDExMywKLSBGQ19OU19HU1BOX0lEID0gMHgwMTE4LAotIEZDX05TX0dJRF9QTiA9IDB4MDEyMSwKLSBGQ19OU19HSURfTk4gPSAweDAxMzEsCisgIEZDX05TX0dOTl9JRCA9IDB4MDExMywKKyAgRkNfTlNfR1NQTl9JRCA9IDB4MDExOCwKKyAgRkNfTlNfR0lEX1BOID0gMHgwMTIxLAorICBGQ19OU19HSURfTk4gPSAweDAxMzEsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX05TX0dJRF9GVCA9IDB4MDE3MSwKLSBGQ19OU19HUE5fRlQgPSAweDAxNzIsCi0gRkNfTlNfR0lEX1BUID0gMHgwMWExLAotIEZDX05TX1JQTl9JRCA9IDB4MDIxMiwKKyAgRkNfTlNfR0lEX0ZUID0gMHgwMTcxLAorICBGQ19OU19HUE5fRlQgPSAweDAxNzIsCisgIEZDX05TX0dJRF9QVCA9IDB4MDFhMSwKKyAgRkNfTlNfUlBOX0lEID0gMHgwMjEyLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19OU19STk5fSUQgPSAweDAyMTMsCi0gRkNfTlNfUkZUX0lEID0gMHgwMjE3LAotIEZDX05TX1JTUE5fSUQgPSAweDAyMTgsCi0gRkNfTlNfUkZGX0lEID0gMHgwMjFmLAorICBGQ19OU19STk5fSUQgPSAweDAyMTMsCisgIEZDX05TX1JGVF9JRCA9IDB4MDIxNywKKyAgRkNfTlNfUlNQTl9JRCA9IDB4MDIxOCwKKyAgRkNfTlNfUkZGX0lEID0gMHgwMjFmLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBGQ19OU19SU05OX05OID0gMHgwMjM5LAorICBGQ19OU19SU05OX05OID0gMHgwMjM5LAogfTsKIGVudW0gZmNfbnNfcHQgewotIEZDX05TX1VOSURfUE9SVCA9IDB4MDAsCisgIEZDX05TX1VOSURfUE9SVCA9IDB4MDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIEZDX05TX05fUE9SVCA9IDB4MDEsCi0gRkNfTlNfTkxfUE9SVCA9IDB4MDIsCi0gRkNfTlNfRk5MX1BPUlQgPSAweDAzLAotIEZDX05TX05YX1BPUlQgPSAweDdmLAorICBGQ19OU19OX1BPUlQgPSAweDAxLAorICBGQ19OU19OTF9QT1JUID0gMHgwMiwKKyAgRkNfTlNfRk5MX1BPUlQgPSAweDAzLAorICBGQ19OU19OWF9QT1JUID0gMHg3ZiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gRkNfTlNfRl9QT1JUID0gMHg4MSwKLSBGQ19OU19GTF9QT1JUID0gMHg4MiwKLSBGQ19OU19FX1BPUlQgPSAweDg0LAotIEZDX05TX0JfUE9SVCA9IDB4ODUsCisgIEZDX05TX0ZfUE9SVCA9IDB4ODEsCisgIEZDX05TX0ZMX1BPUlQgPSAweDgyLAorICBGQ19OU19FX1BPUlQgPSAweDg0LAorICBGQ19OU19CX1BPUlQgPSAweDg1LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfbnNfcHRfb2JqIHsKLSBfX3U4IHB0X3R5cGU7CisgIF9fdTggcHRfdHlwZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGZjX25zX2ZpZCB7Ci0gX191OCBmcF9mbGFnczsKLSBfX3U4IGZwX2ZpZFszXTsKKyAgX191OCBmcF9mbGFnczsKKyAgX191OCBmcF9maWRbM107CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkNfTlNfRklEX0xBU1QgMHg4MApAQCAtNzEsNzYgKzcxLDc2IEBACiAjZGVmaW5lIEZDX05TX0JQVyAzMgogc3RydWN0IGZjX25zX2Z0cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBmZl90eXBlX21hcFtGQ19OU19UWVBFUyAvIEZDX05TX0JQV107CisgIF9fYmUzMiBmZl90eXBlX21hcFtGQ19OU19UWVBFUyAvIEZDX05TX0JQV107CiB9Owogc3RydWN0IGZjX25zX2ZmIHsKLSBfX2JlMzIgZmRfZmVhdFtGQ19OU19UWVBFUyAqIDQgLyBGQ19OU19CUFddOworICBfX2JlMzIgZmRfZmVhdFtGQ19OU19UWVBFUyAqIDQgLyBGQ19OU19CUFddOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfbnNfZ2lkX3B0IHsKLSBfX3U4IGZuX3B0X3R5cGU7Ci0gX191OCBmbl9kb21haW5faWRfc2NvcGU7CisgIF9fdTggZm5fcHRfdHlwZTsKKyAgX191OCBmbl9kb21haW5faWRfc2NvcGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZm5fYXJlYV9pZF9zY29wZTsKLSBfX3U4IGZuX3Jlc3ZkOworICBfX3U4IGZuX2FyZWFfaWRfc2NvcGU7CisgIF9fdTggZm5fcmVzdmQ7CiB9Owogc3RydWN0IGZjX25zX2dpZF9mdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZm5fcmVzdmQ7Ci0gX191OCBmbl9kb21haW5faWRfc2NvcGU7Ci0gX191OCBmbl9hcmVhX2lkX3Njb3BlOwotIF9fdTggZm5fZmM0X3R5cGU7CisgIF9fdTggZm5fcmVzdmQ7CisgIF9fdTggZm5fZG9tYWluX2lkX3Njb3BlOworICBfX3U4IGZuX2FyZWFfaWRfc2NvcGU7CisgIF9fdTggZm5fZmM0X3R5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmY19ncG5fZnRfcmVzcCB7Ci0gX191OCBmcF9mbGFnczsKLSBfX3U4IGZwX2ZpZFszXTsKKyAgX191OCBmcF9mbGFnczsKKyAgX191OCBmcF9maWRbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fYmUzMiBmcF9yZXN2ZDsKLSBfX2JlNjQgZnBfd3dwbjsKKyAgX19iZTMyIGZwX3Jlc3ZkOworICBfX2JlNjQgZnBfd3dwbjsKIH07CiBzdHJ1Y3QgZmNfbnNfZ2lkX3BuIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTY0IGZuX3d3cG47CisgIF9fYmU2NCBmbl93d3BuOwogfTsKIHN0cnVjdCBmY19naWRfcG5fcmVzcCB7Ci0gX191OCBmcF9yZXN2ZDsKKyAgX191OCBmcF9yZXN2ZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBmcF9maWRbM107CisgIF9fdTggZnBfZmlkWzNdOwogfTsKIHN0cnVjdCBmY19nc3BuX3Jlc3AgewotIF9fdTggZnBfbmFtZV9sZW47CisgIF9fdTggZnBfbmFtZV9sZW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgZnBfbmFtZVtdOworICBjaGFyIGZwX25hbWVbXTsKIH07CiBzdHJ1Y3QgZmNfbnNfcmZ0X2lkIHsKLSBzdHJ1Y3QgZmNfbnNfZmlkIGZyX2ZpZDsKKyAgc3RydWN0IGZjX25zX2ZpZCBmcl9maWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmY19uc19mdHMgZnJfZnRzOworICBzdHJ1Y3QgZmNfbnNfZnRzIGZyX2Z0czsKIH07CiBzdHJ1Y3QgZmNfbnNfcm5faWQgewotIHN0cnVjdCBmY19uc19maWQgZnJfZmlkOworICBzdHJ1Y3QgZmNfbnNfZmlkIGZyX2ZpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19iZTY0IGZyX3d3bjsKKyAgX19iZTY0IGZyX3d3bjsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogc3RydWN0IGZjX25zX3Jzbm4gewotIF9fYmU2NCBmcl93d247CisgIF9fYmU2NCBmcl93d247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggZnJfbmFtZV9sZW47Ci0gY2hhciBmcl9uYW1lW107CisgIF9fdTggZnJfbmFtZV9sZW47CisgIGNoYXIgZnJfbmFtZVtdOwogfSBfX2F0dHJpYnV0ZV9fKChfX3BhY2tlZF9fKSk7CiBzdHJ1Y3QgZmNfbnNfcnNwbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmY19uc19maWQgZnJfZmlkOwotIF9fdTggZnJfbmFtZV9sZW47Ci0gY2hhciBmcl9uYW1lW107CisgIHN0cnVjdCBmY19uc19maWQgZnJfZmlkOworICBfX3U4IGZyX25hbWVfbGVuOworICBjaGFyIGZyX25hbWVbXTsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmY19uc19yZmZfaWQgewotIHN0cnVjdCBmY19uc19maWQgZnJfZmlkOwotIF9fdTggZnJfcmVzdmRbMl07Ci0gX191OCBmcl9mZWF0OworICBzdHJ1Y3QgZmNfbnNfZmlkIGZyX2ZpZDsKKyAgX191OCBmcl9yZXN2ZFsyXTsKKyAgX191OCBmcl9mZWF0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IGZyX3R5cGU7CisgIF9fdTggZnJfdHlwZTsKIH0gX19hdHRyaWJ1dGVfXygoX19wYWNrZWRfXykpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3Njc2kvc2NzaV9ic2dfZmMuaCBiL2xpYmMva2VybmVsL3VhcGkvc2NzaS9zY3NpX2JzZ19mYy5oCmluZGV4IGFjZDk4NzQuLjhlOThmZTYgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvc2NzaS9zY3NpX2JzZ19mYy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc2NzaS9zY3NpX2JzZ19mYy5oCkBAIC0zMywxOCArMzMsMTggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIEZDX0JTR19SUFRfQ1QgKEZDX0JTR19SUFRfTUFTSyB8IDB4MDAwMDAwMDIpCiBzdHJ1Y3QgZmNfYnNnX2hvc3RfYWRkX3Jwb3J0IHsKLSB1aW50OF90IHJlc2VydmVkOwotIHVpbnQ4X3QgcG9ydF9pZFszXTsKKyAgdWludDhfdCByZXNlcnZlZDsKKyAgdWludDhfdCBwb3J0X2lkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfYnNnX2hvc3RfZGVsX3Jwb3J0IHsKLSB1aW50OF90IHJlc2VydmVkOwotIHVpbnQ4X3QgcG9ydF9pZFszXTsKKyAgdWludDhfdCByZXNlcnZlZDsKKyAgdWludDhfdCBwb3J0X2lkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3QgZmNfYnNnX2hvc3RfZWxzIHsKLSB1aW50OF90IGNvbW1hbmRfY29kZTsKLSB1aW50OF90IHBvcnRfaWRbM107CisgIHVpbnQ4X3QgY29tbWFuZF9jb2RlOworICB1aW50OF90IHBvcnRfaWRbM107CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgRkNfQ1RFTFNfU1RBVFVTX09LIDB4MDAwMDAwMDAKQEAgLTU2LDY2ICs1Niw2NiBAQAogI2RlZmluZSBGQ19DVEVMU19TVEFUVVNfRl9CU1kgMHgwMDAwMDAwNgogc3RydWN0IGZjX2JzZ19jdGVsc19yZXBseSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHN0YXR1czsKLSBzdHJ1Y3QgewotIHVpbnQ4X3QgYWN0aW9uOwotIHVpbnQ4X3QgcmVhc29uX2NvZGU7CisgIHVpbnQzMl90IHN0YXR1czsKKyAgc3RydWN0IHsKKyAgICB1aW50OF90IGFjdGlvbjsKKyAgICB1aW50OF90IHJlYXNvbl9jb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50OF90IHJlYXNvbl9leHBsYW5hdGlvbjsKLSB1aW50OF90IHZlbmRvcl91bmlxdWU7Ci0gfSByanRfZGF0YTsKKyAgICB1aW50OF90IHJlYXNvbl9leHBsYW5hdGlvbjsKKyAgICB1aW50OF90IHZlbmRvcl91bmlxdWU7CisgIH0gcmp0X2RhdGE7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBmY19ic2dfaG9zdF9jdCB7Ci0gdWludDhfdCByZXNlcnZlZDsKLSB1aW50OF90IHBvcnRfaWRbM107Ci0gdWludDMyX3QgcHJlYW1ibGVfd29yZDA7CisgIHVpbnQ4X3QgcmVzZXJ2ZWQ7CisgIHVpbnQ4X3QgcG9ydF9pZFszXTsKKyAgdWludDMyX3QgcHJlYW1ibGVfd29yZDA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHByZWFtYmxlX3dvcmQxOwotIHVpbnQzMl90IHByZWFtYmxlX3dvcmQyOworICB1aW50MzJfdCBwcmVhbWJsZV93b3JkMTsKKyAgdWludDMyX3QgcHJlYW1ibGVfd29yZDI7CiB9Owogc3RydWN0IGZjX2JzZ19ob3N0X3ZlbmRvciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IHZlbmRvcl9pZDsKLSB1aW50MzJfdCB2ZW5kb3JfY21kWzBdOworICB1aW50NjRfdCB2ZW5kb3JfaWQ7CisgIHVpbnQzMl90IHZlbmRvcl9jbWRbMF07CiB9Owogc3RydWN0IGZjX2JzZ19ob3N0X3ZlbmRvcl9yZXBseSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHZlbmRvcl9yc3BbMF07CisgIHVpbnQzMl90IHZlbmRvcl9yc3BbMF07CiB9Owogc3RydWN0IGZjX2JzZ19ycG9ydF9lbHMgewotIHVpbnQ4X3QgZWxzX2NvZGU7CisgIHVpbnQ4X3QgZWxzX2NvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBmY19ic2dfcnBvcnRfY3QgewotIHVpbnQzMl90IHByZWFtYmxlX3dvcmQwOwotIHVpbnQzMl90IHByZWFtYmxlX3dvcmQxOworICB1aW50MzJfdCBwcmVhbWJsZV93b3JkMDsKKyAgdWludDMyX3QgcHJlYW1ibGVfd29yZDE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHByZWFtYmxlX3dvcmQyOworICB1aW50MzJfdCBwcmVhbWJsZV93b3JkMjsKIH07CiBzdHJ1Y3QgZmNfYnNnX3JlcXVlc3QgewotIHVpbnQzMl90IG1zZ2NvZGU7CisgIHVpbnQzMl90IG1zZ2NvZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBzdHJ1Y3QgZmNfYnNnX2hvc3RfYWRkX3Jwb3J0IGhfYWRkcnBvcnQ7Ci0gc3RydWN0IGZjX2JzZ19ob3N0X2RlbF9ycG9ydCBoX2RlbHJwb3J0OwotIHN0cnVjdCBmY19ic2dfaG9zdF9lbHMgaF9lbHM7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgZmNfYnNnX2hvc3RfYWRkX3Jwb3J0IGhfYWRkcnBvcnQ7CisgICAgc3RydWN0IGZjX2JzZ19ob3N0X2RlbF9ycG9ydCBoX2RlbHJwb3J0OworICAgIHN0cnVjdCBmY19ic2dfaG9zdF9lbHMgaF9lbHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBmY19ic2dfaG9zdF9jdCBoX2N0OwotIHN0cnVjdCBmY19ic2dfaG9zdF92ZW5kb3IgaF92ZW5kb3I7Ci0gc3RydWN0IGZjX2JzZ19ycG9ydF9lbHMgcl9lbHM7Ci0gc3RydWN0IGZjX2JzZ19ycG9ydF9jdCByX2N0OworICAgIHN0cnVjdCBmY19ic2dfaG9zdF9jdCBoX2N0OworICAgIHN0cnVjdCBmY19ic2dfaG9zdF92ZW5kb3IgaF92ZW5kb3I7CisgICAgc3RydWN0IGZjX2JzZ19ycG9ydF9lbHMgcl9lbHM7CisgICAgc3RydWN0IGZjX2JzZ19ycG9ydF9jdCByX2N0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IHJxc3RfZGF0YTsKKyAgfSBycXN0X2RhdGE7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOwogc3RydWN0IGZjX2JzZ19yZXBseSB7Ci0gdWludDMyX3QgcmVzdWx0OworICB1aW50MzJfdCByZXN1bHQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IHJlcGx5X3BheWxvYWRfcmN2X2xlbjsKLSB1bmlvbiB7Ci0gc3RydWN0IGZjX2JzZ19ob3N0X3ZlbmRvcl9yZXBseSB2ZW5kb3JfcmVwbHk7Ci0gc3RydWN0IGZjX2JzZ19jdGVsc19yZXBseSBjdGVsc19yZXBseTsKKyAgdWludDMyX3QgcmVwbHlfcGF5bG9hZF9yY3ZfbGVuOworICB1bmlvbiB7CisgICAgc3RydWN0IGZjX2JzZ19ob3N0X3ZlbmRvcl9yZXBseSB2ZW5kb3JfcmVwbHk7CisgICAgc3RydWN0IGZjX2JzZ19jdGVsc19yZXBseSBjdGVsc19yZXBseTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSByZXBseV9kYXRhOworICB9IHJlcGx5X2RhdGE7CiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3Njc2kvc2NzaV9uZXRsaW5rLmggYi9saWJjL2tlcm5lbC91YXBpL3Njc2kvc2NzaV9uZXRsaW5rLmgKaW5kZXggYjA0ZjQ2NC4uZGJjM2M5OSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9zY3NpL3Njc2lfbmV0bGluay5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc2NzaS9zY3NpX25ldGxpbmsuaApAQCAtMjIsMTYgKzIyLDE2IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNDU0lfVFJBTlNQT1JUX01TRyBOTE1TR19NSU5fVFlQRSArIDEKLSNkZWZpbmUgU0NTSV9OTF9HUlBfRkNfRVZFTlRTICgxPDwyKQorI2RlZmluZSBTQ1NJX05MX0dSUF9GQ19FVkVOVFMgKDEgPDwgMikKICNkZWZpbmUgU0NTSV9OTF9HUlBfQ05UIDMKIHN0cnVjdCBzY3NpX25sX2hkciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ4X3QgdmVyc2lvbjsKLSB1aW50OF90IHRyYW5zcG9ydDsKLSB1aW50MTZfdCBtYWdpYzsKLSB1aW50MTZfdCBtc2d0eXBlOworICB1aW50OF90IHZlcnNpb247CisgIHVpbnQ4X3QgdHJhbnNwb3J0OworICB1aW50MTZfdCBtYWdpYzsKKyAgdWludDE2X3QgbXNndHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDE2X3QgbXNnbGVuOworICB1aW50MTZfdCBtc2dsZW47CiB9IF9fYXR0cmlidXRlX18oKGFsaWduZWQoc2l6ZW9mKHVpbnQ2NF90KSkpKTsKICNkZWZpbmUgU0NTSV9OTF9WRVJTSU9OIDEKICNkZWZpbmUgU0NTSV9OTF9NQUdJQyAweEExQjIKQEAgLTQzLDE3ICs0MywxNyBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0NTSV9OTF9NU0dBTElHTihsZW4pICgoKGxlbikgKyA3KSAmIH43KQogc3RydWN0IHNjc2lfbmxfaG9zdF92ZW5kb3JfbXNnIHsKLSBzdHJ1Y3Qgc2NzaV9ubF9oZHIgc25saDsKLSB1aW50NjRfdCB2ZW5kb3JfaWQ7CisgIHN0cnVjdCBzY3NpX25sX2hkciBzbmxoOworICB1aW50NjRfdCB2ZW5kb3JfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQxNl90IGhvc3Rfbm87Ci0gdWludDE2X3Qgdm1zZ19kYXRhbGVuOworICB1aW50MTZfdCBob3N0X25vOworICB1aW50MTZfdCB2bXNnX2RhdGFsZW47CiB9IF9fYXR0cmlidXRlX18oKGFsaWduZWQoc2l6ZW9mKHVpbnQ2NF90KSkpKTsKICNkZWZpbmUgU0NTSV9OTF9WSURfVFlQRV9TSElGVCA1NgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0NTSV9OTF9WSURfVFlQRV9NQVNLICgoX191NjQpMHhGRiA8PCBTQ1NJX05MX1ZJRF9UWVBFX1NISUZUKQotI2RlZmluZSBTQ1NJX05MX1ZJRF9UWVBFX1BDSSAoKF9fdTY0KTB4MDEgPDwgU0NTSV9OTF9WSURfVFlQRV9TSElGVCkKLSNkZWZpbmUgU0NTSV9OTF9WSURfSURfTUFTSyAofiBTQ1NJX05MX1ZJRF9UWVBFX01BU0spCi0jZGVmaW5lIElOSVRfU0NTSV9OTF9IRFIoaGRyLCB0LCBtdHlwZSwgbWxlbikgICB7ICAgKGhkciktPnZlcnNpb24gPSBTQ1NJX05MX1ZFUlNJT047ICAgKGhkciktPnRyYW5zcG9ydCA9IHQ7ICAgKGhkciktPm1hZ2ljID0gU0NTSV9OTF9NQUdJQzsgICAoaGRyKS0+bXNndHlwZSA9IG10eXBlOyAgIChoZHIpLT5tc2dsZW4gPSBtbGVuOyAgIH0KKyNkZWZpbmUgU0NTSV9OTF9WSURfVFlQRV9NQVNLICgoX191NjQpIDB4RkYgPDwgU0NTSV9OTF9WSURfVFlQRV9TSElGVCkKKyNkZWZpbmUgU0NTSV9OTF9WSURfVFlQRV9QQ0kgKChfX3U2NCkgMHgwMSA8PCBTQ1NJX05MX1ZJRF9UWVBFX1NISUZUKQorI2RlZmluZSBTQ1NJX05MX1ZJRF9JRF9NQVNLICh+U0NTSV9OTF9WSURfVFlQRV9NQVNLKQorI2RlZmluZSBJTklUX1NDU0lfTkxfSERSKGhkcix0LG10eXBlLG1sZW4pIHsgKGhkciktPnZlcnNpb24gPSBTQ1NJX05MX1ZFUlNJT047IChoZHIpLT50cmFuc3BvcnQgPSB0OyAoaGRyKS0+bWFnaWMgPSBTQ1NJX05MX01BR0lDOyAoaGRyKS0+bXNndHlwZSA9IG10eXBlOyAoaGRyKS0+bXNnbGVuID0gbWxlbjsgfQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9zY3NpL3Njc2lfbmV0bGlua19mYy5oIGIvbGliYy9rZXJuZWwvdWFwaS9zY3NpL3Njc2lfbmV0bGlua19mYy5oCmluZGV4IGM0NzUxOTkuLmRkNGU4MzcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvc2NzaS9zY3NpX25ldGxpbmtfZmMuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3Njc2kvc2NzaV9uZXRsaW5rX2ZjLmgKQEAgLTIzLDE2ICsyMywxNiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgRkNfTkxfTVNHQUxJR04obGVuKSAoKChsZW4pICsgNykgJiB+NykKIHN0cnVjdCBmY19ubF9ldmVudCB7Ci0gc3RydWN0IHNjc2lfbmxfaGRyIHNubGg7Ci0gdWludDY0X3Qgc2Vjb25kczsKKyAgc3RydWN0IHNjc2lfbmxfaGRyIHNubGg7CisgIHVpbnQ2NF90IHNlY29uZHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ2NF90IHZlbmRvcl9pZDsKLSB1aW50MTZfdCBob3N0X25vOwotIHVpbnQxNl90IGV2ZW50X2RhdGFsZW47Ci0gdWludDMyX3QgZXZlbnRfbnVtOworICB1aW50NjRfdCB2ZW5kb3JfaWQ7CisgIHVpbnQxNl90IGhvc3Rfbm87CisgIHVpbnQxNl90IGV2ZW50X2RhdGFsZW47CisgIHVpbnQzMl90IGV2ZW50X251bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZXZlbnRfY29kZTsKLSB1aW50MzJfdCBldmVudF9kYXRhOworICB1aW50MzJfdCBldmVudF9jb2RlOworICB1aW50MzJfdCBldmVudF9kYXRhOwogfSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKHNpemVvZih1aW50NjRfdCkpKSk7CiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2FzZXF1ZW5jZXIuaCBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvYXNlcXVlbmNlci5oCmluZGV4IGQ1YTRjZjYuLmZiNTg5OTEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvc291bmQvYXNlcXVlbmNlci5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvYXNlcXVlbmNlci5oCkBAIC0xOCw3ICsxOCw3IEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX1VBUElfX1NPVU5EX0FTRVFVRU5DRVJfSAogI2RlZmluZSBfVUFQSV9fU09VTkRfQVNFUVVFTkNFUl9ICi0jZGVmaW5lIFNORFJWX1NFUV9WRVJTSU9OIFNORFJWX1BST1RPQ09MX1ZFUlNJT04gKDEsIDAsIDEpCisjZGVmaW5lIFNORFJWX1NFUV9WRVJTSU9OIFNORFJWX1BST1RPQ09MX1ZFUlNJT04oMSwgMCwgMSkKICNkZWZpbmUgU05EUlZfU0VRX0VWRU5UX1NZU1RFTSAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9TRVFfRVZFTlRfUkVTVUxUIDEKQEAgLTk3LDEzICs5NywxMyBAQAogdHlwZWRlZiB1bnNpZ25lZCBjaGFyIHNuZF9zZXFfZXZlbnRfdHlwZV90OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfc2VxX2FkZHIgewotIHVuc2lnbmVkIGNoYXIgY2xpZW50OwotIHVuc2lnbmVkIGNoYXIgcG9ydDsKKyAgdW5zaWduZWQgY2hhciBjbGllbnQ7CisgIHVuc2lnbmVkIGNoYXIgcG9ydDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9zZXFfY29ubmVjdCB7Ci0gc3RydWN0IHNuZF9zZXFfYWRkciBzZW5kZXI7Ci0gc3RydWN0IHNuZF9zZXFfYWRkciBkZXN0OworICBzdHJ1Y3Qgc25kX3NlcV9hZGRyIHNlbmRlcjsKKyAgc3RydWN0IHNuZF9zZXFfYWRkciBkZXN0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NFUV9BRERSRVNTX1VOS05PV04gMjUzCkBAIC0xMTEsMTQ0ICsxMTEsMTQ0IEBACiAjZGVmaW5lIFNORFJWX1NFUV9BRERSRVNTX0JST0FEQ0FTVCAyNTUKICNkZWZpbmUgU05EUlZfU0VRX1FVRVVFX0RJUkVDVCAyNTMKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1NFUV9USU1FX1NUQU1QX1RJQ0sgKDA8PDApCi0jZGVmaW5lIFNORFJWX1NFUV9USU1FX1NUQU1QX1JFQUwgKDE8PDApCi0jZGVmaW5lIFNORFJWX1NFUV9USU1FX1NUQU1QX01BU0sgKDE8PDApCi0jZGVmaW5lIFNORFJWX1NFUV9USU1FX01PREVfQUJTICgwPDwxKQorI2RlZmluZSBTTkRSVl9TRVFfVElNRV9TVEFNUF9USUNLICgwIDw8IDApCisjZGVmaW5lIFNORFJWX1NFUV9USU1FX1NUQU1QX1JFQUwgKDEgPDwgMCkKKyNkZWZpbmUgU05EUlZfU0VRX1RJTUVfU1RBTVBfTUFTSyAoMSA8PCAwKQorI2RlZmluZSBTTkRSVl9TRVFfVElNRV9NT0RFX0FCUyAoMCA8PCAxKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX1RJTUVfTU9ERV9SRUwgKDE8PDEpCi0jZGVmaW5lIFNORFJWX1NFUV9USU1FX01PREVfTUFTSyAoMTw8MSkKLSNkZWZpbmUgU05EUlZfU0VRX0VWRU5UX0xFTkdUSF9GSVhFRCAoMDw8MikKLSNkZWZpbmUgU05EUlZfU0VRX0VWRU5UX0xFTkdUSF9WQVJJQUJMRSAoMTw8MikKKyNkZWZpbmUgU05EUlZfU0VRX1RJTUVfTU9ERV9SRUwgKDEgPDwgMSkKKyNkZWZpbmUgU05EUlZfU0VRX1RJTUVfTU9ERV9NQVNLICgxIDw8IDEpCisjZGVmaW5lIFNORFJWX1NFUV9FVkVOVF9MRU5HVEhfRklYRUQgKDAgPDwgMikKKyNkZWZpbmUgU05EUlZfU0VRX0VWRU5UX0xFTkdUSF9WQVJJQUJMRSAoMSA8PCAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX0VWRU5UX0xFTkdUSF9WQVJVU1IgKDI8PDIpCi0jZGVmaW5lIFNORFJWX1NFUV9FVkVOVF9MRU5HVEhfTUFTSyAoMzw8MikKLSNkZWZpbmUgU05EUlZfU0VRX1BSSU9SSVRZX05PUk1BTCAoMDw8NCkKLSNkZWZpbmUgU05EUlZfU0VRX1BSSU9SSVRZX0hJR0ggKDE8PDQpCisjZGVmaW5lIFNORFJWX1NFUV9FVkVOVF9MRU5HVEhfVkFSVVNSICgyIDw8IDIpCisjZGVmaW5lIFNORFJWX1NFUV9FVkVOVF9MRU5HVEhfTUFTSyAoMyA8PCAyKQorI2RlZmluZSBTTkRSVl9TRVFfUFJJT1JJVFlfTk9STUFMICgwIDw8IDQpCisjZGVmaW5lIFNORFJWX1NFUV9QUklPUklUWV9ISUdIICgxIDw8IDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9TRVFfUFJJT1JJVFlfTUFTSyAoMTw8NCkKKyNkZWZpbmUgU05EUlZfU0VRX1BSSU9SSVRZX01BU0sgKDEgPDwgNCkKIHN0cnVjdCBzbmRfc2VxX2V2X25vdGUgewotIHVuc2lnbmVkIGNoYXIgY2hhbm5lbDsKLSB1bnNpZ25lZCBjaGFyIG5vdGU7CisgIHVuc2lnbmVkIGNoYXIgY2hhbm5lbDsKKyAgdW5zaWduZWQgY2hhciBub3RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHZlbG9jaXR5OwotIHVuc2lnbmVkIGNoYXIgb2ZmX3ZlbG9jaXR5OwotIHVuc2lnbmVkIGludCBkdXJhdGlvbjsKKyAgdW5zaWduZWQgY2hhciB2ZWxvY2l0eTsKKyAgdW5zaWduZWQgY2hhciBvZmZfdmVsb2NpdHk7CisgIHVuc2lnbmVkIGludCBkdXJhdGlvbjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9zZXFfZXZfY3RybCB7Ci0gdW5zaWduZWQgY2hhciBjaGFubmVsOwotIHVuc2lnbmVkIGNoYXIgdW51c2VkMSwgdW51c2VkMiwgdW51c2VkMzsKLSB1bnNpZ25lZCBpbnQgcGFyYW07CisgIHVuc2lnbmVkIGNoYXIgY2hhbm5lbDsKKyAgdW5zaWduZWQgY2hhciB1bnVzZWQxLCB1bnVzZWQyLCB1bnVzZWQzOworICB1bnNpZ25lZCBpbnQgcGFyYW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNpZ25lZCBpbnQgdmFsdWU7CisgIHNpZ25lZCBpbnQgdmFsdWU7CiB9Owogc3RydWN0IHNuZF9zZXFfZXZfcmF3OCB7Ci0gdW5zaWduZWQgY2hhciBkWzEyXTsKKyAgdW5zaWduZWQgY2hhciBkWzEyXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNuZF9zZXFfZXZfcmF3MzIgewotIHVuc2lnbmVkIGludCBkWzNdOworICB1bnNpZ25lZCBpbnQgZFszXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9zZXFfZXZfZXh0IHsKLSB1bnNpZ25lZCBpbnQgbGVuOwotIHZvaWQgKnB0cjsKKyAgdW5zaWduZWQgaW50IGxlbjsKKyAgdm9pZCAqIHB0cjsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9zZXFfcmVzdWx0IHsKLSBpbnQgZXZlbnQ7Ci0gaW50IHJlc3VsdDsKKyAgaW50IGV2ZW50OworICBpbnQgcmVzdWx0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX3NlcV9yZWFsX3RpbWUgewotIHVuc2lnbmVkIGludCB0dl9zZWM7Ci0gdW5zaWduZWQgaW50IHR2X25zZWM7CisgIHVuc2lnbmVkIGludCB0dl9zZWM7CisgIHVuc2lnbmVkIGludCB0dl9uc2VjOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB0eXBlZGVmIHVuc2lnbmVkIGludCBzbmRfc2VxX3RpY2tfdGltZV90OwogdW5pb24gc25kX3NlcV90aW1lc3RhbXAgewotIHNuZF9zZXFfdGlja190aW1lX3QgdGljazsKLSBzdHJ1Y3Qgc25kX3NlcV9yZWFsX3RpbWUgdGltZTsKKyAgc25kX3NlcV90aWNrX3RpbWVfdCB0aWNrOworICBzdHJ1Y3Qgc25kX3NlcV9yZWFsX3RpbWUgdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNuZF9zZXFfcXVldWVfc2tldyB7Ci0gdW5zaWduZWQgaW50IHZhbHVlOwotIHVuc2lnbmVkIGludCBiYXNlOworICB1bnNpZ25lZCBpbnQgdmFsdWU7CisgIHVuc2lnbmVkIGludCBiYXNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc25kX3NlcV9ldl9xdWV1ZV9jb250cm9sIHsKLSB1bnNpZ25lZCBjaGFyIHF1ZXVlOwotIHVuc2lnbmVkIGNoYXIgcGFkWzNdOworICB1bnNpZ25lZCBjaGFyIHF1ZXVlOworICB1bnNpZ25lZCBjaGFyIHBhZFszXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIHNpZ25lZCBpbnQgdmFsdWU7Ci0gdW5pb24gc25kX3NlcV90aW1lc3RhbXAgdGltZTsKLSB1bnNpZ25lZCBpbnQgcG9zaXRpb247CisgIHVuaW9uIHsKKyAgICBzaWduZWQgaW50IHZhbHVlOworICAgIHVuaW9uIHNuZF9zZXFfdGltZXN0YW1wIHRpbWU7CisgICAgdW5zaWduZWQgaW50IHBvc2l0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV9za2V3IHNrZXc7Ci0gdW5zaWduZWQgaW50IGQzMlsyXTsKLSB1bnNpZ25lZCBjaGFyIGQ4WzhdOwotIH0gcGFyYW07CisgICAgc3RydWN0IHNuZF9zZXFfcXVldWVfc2tldyBza2V3OworICAgIHVuc2lnbmVkIGludCBkMzJbMl07CisgICAgdW5zaWduZWQgY2hhciBkOFs4XTsKKyAgfSBwYXJhbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNuZF9zZXFfZXZfcXVvdGUgewotIHN0cnVjdCBzbmRfc2VxX2FkZHIgb3JpZ2luOwotIHVuc2lnbmVkIHNob3J0IHZhbHVlOworICBzdHJ1Y3Qgc25kX3NlcV9hZGRyIG9yaWdpbjsKKyAgdW5zaWduZWQgc2hvcnQgdmFsdWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzbmRfc2VxX2V2ZW50ICpldmVudDsKKyAgc3RydWN0IHNuZF9zZXFfZXZlbnQgKiBldmVudDsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiBzdHJ1Y3Qgc25kX3NlcV9ldmVudCB7Ci0gc25kX3NlcV9ldmVudF90eXBlX3QgdHlwZTsKKyAgc25kX3NlcV9ldmVudF90eXBlX3QgdHlwZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBmbGFnczsKLSBjaGFyIHRhZzsKLSB1bnNpZ25lZCBjaGFyIHF1ZXVlOwotIHVuaW9uIHNuZF9zZXFfdGltZXN0YW1wIHRpbWU7CisgIHVuc2lnbmVkIGNoYXIgZmxhZ3M7CisgIGNoYXIgdGFnOworICB1bnNpZ25lZCBjaGFyIHF1ZXVlOworICB1bmlvbiBzbmRfc2VxX3RpbWVzdGFtcCB0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc25kX3NlcV9hZGRyIHNvdXJjZTsKLSBzdHJ1Y3Qgc25kX3NlcV9hZGRyIGRlc3Q7Ci0gdW5pb24gewotIHN0cnVjdCBzbmRfc2VxX2V2X25vdGUgbm90ZTsKKyAgc3RydWN0IHNuZF9zZXFfYWRkciBzb3VyY2U7CisgIHN0cnVjdCBzbmRfc2VxX2FkZHIgZGVzdDsKKyAgdW5pb24geworICAgIHN0cnVjdCBzbmRfc2VxX2V2X25vdGUgbm90ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNuZF9zZXFfZXZfY3RybCBjb250cm9sOwotIHN0cnVjdCBzbmRfc2VxX2V2X3JhdzggcmF3ODsKLSBzdHJ1Y3Qgc25kX3NlcV9ldl9yYXczMiByYXczMjsKLSBzdHJ1Y3Qgc25kX3NlcV9ldl9leHQgZXh0OworICAgIHN0cnVjdCBzbmRfc2VxX2V2X2N0cmwgY29udHJvbDsKKyAgICBzdHJ1Y3Qgc25kX3NlcV9ldl9yYXc4IHJhdzg7CisgICAgc3RydWN0IHNuZF9zZXFfZXZfcmF3MzIgcmF3MzI7CisgICAgc3RydWN0IHNuZF9zZXFfZXZfZXh0IGV4dDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNuZF9zZXFfZXZfcXVldWVfY29udHJvbCBxdWV1ZTsKLSB1bmlvbiBzbmRfc2VxX3RpbWVzdGFtcCB0aW1lOwotIHN0cnVjdCBzbmRfc2VxX2FkZHIgYWRkcjsKLSBzdHJ1Y3Qgc25kX3NlcV9jb25uZWN0IGNvbm5lY3Q7CisgICAgc3RydWN0IHNuZF9zZXFfZXZfcXVldWVfY29udHJvbCBxdWV1ZTsKKyAgICB1bmlvbiBzbmRfc2VxX3RpbWVzdGFtcCB0aW1lOworICAgIHN0cnVjdCBzbmRfc2VxX2FkZHIgYWRkcjsKKyAgICBzdHJ1Y3Qgc25kX3NlcV9jb25uZWN0IGNvbm5lY3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzbmRfc2VxX3Jlc3VsdCByZXN1bHQ7Ci0gc3RydWN0IHNuZF9zZXFfZXZfcXVvdGUgcXVvdGU7Ci0gfSBkYXRhOworICAgIHN0cnVjdCBzbmRfc2VxX3Jlc3VsdCByZXN1bHQ7CisgICAgc3RydWN0IHNuZF9zZXFfZXZfcXVvdGUgcXVvdGU7CisgIH0gZGF0YTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9zZXFfZXZlbnRfYm91bmNlIHsKLSBpbnQgZXJyOwotIHN0cnVjdCBzbmRfc2VxX2V2ZW50IGV2ZW50OworICBpbnQgZXJyOworICBzdHJ1Y3Qgc25kX3NlcV9ldmVudCBldmVudDsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9zZXFfc3lzdGVtX2luZm8gewotIGludCBxdWV1ZXM7Ci0gaW50IGNsaWVudHM7Ci0gaW50IHBvcnRzOworICBpbnQgcXVldWVzOworICBpbnQgY2xpZW50czsKKyAgaW50IHBvcnRzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2hhbm5lbHM7Ci0gaW50IGN1cl9jbGllbnRzOwotIGludCBjdXJfcXVldWVzOwotIGNoYXIgcmVzZXJ2ZWRbMjRdOworICBpbnQgY2hhbm5lbHM7CisgIGludCBjdXJfY2xpZW50czsKKyAgaW50IGN1cl9xdWV1ZXM7CisgIGNoYXIgcmVzZXJ2ZWRbMjRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc25kX3NlcV9ydW5uaW5nX2luZm8gewotIHVuc2lnbmVkIGNoYXIgY2xpZW50OwotIHVuc2lnbmVkIGNoYXIgYmlnX2VuZGlhbjsKKyAgdW5zaWduZWQgY2hhciBjbGllbnQ7CisgIHVuc2lnbmVkIGNoYXIgYmlnX2VuZGlhbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBjcHVfbW9kZTsKLSB1bnNpZ25lZCBjaGFyIHBhZDsKLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzEyXTsKKyAgdW5zaWduZWQgY2hhciBjcHVfbW9kZTsKKyAgdW5zaWduZWQgY2hhciBwYWQ7CisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMTJdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NFUV9DTElFTlRfU1lTVEVNIDAKQEAgLTI1OSwxNDYgKzI1OSwxNDYgQEAKICNkZWZpbmUgTk9fQ0xJRU5UICgoX19mb3JjZSBzbmRfc2VxX2NsaWVudF90eXBlX3QpIDApCiAjZGVmaW5lIFVTRVJfQ0xJRU5UICgoX19mb3JjZSBzbmRfc2VxX2NsaWVudF90eXBlX3QpIDEpCiAjZGVmaW5lIEtFUk5FTF9DTElFTlQgKChfX2ZvcmNlIHNuZF9zZXFfY2xpZW50X3R5cGVfdCkgMikKLSNkZWZpbmUgU05EUlZfU0VRX0ZJTFRFUl9CUk9BRENBU1QgKDE8PDApCisjZGVmaW5lIFNORFJWX1NFUV9GSUxURVJfQlJPQURDQVNUICgxIDw8IDApCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9TRVFfRklMVEVSX01VTFRJQ0FTVCAoMTw8MSkKLSNkZWZpbmUgU05EUlZfU0VRX0ZJTFRFUl9CT1VOQ0UgKDE8PDIpCi0jZGVmaW5lIFNORFJWX1NFUV9GSUxURVJfVVNFX0VWRU5UICgxPDwzMSkKKyNkZWZpbmUgU05EUlZfU0VRX0ZJTFRFUl9NVUxUSUNBU1QgKDEgPDwgMSkKKyNkZWZpbmUgU05EUlZfU0VRX0ZJTFRFUl9CT1VOQ0UgKDEgPDwgMikKKyNkZWZpbmUgU05EUlZfU0VRX0ZJTFRFUl9VU0VfRVZFTlQgKDEgPDwgMzEpCiBzdHJ1Y3Qgc25kX3NlcV9jbGllbnRfaW5mbyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBjbGllbnQ7Ci0gc25kX3NlcV9jbGllbnRfdHlwZV90IHR5cGU7Ci0gY2hhciBuYW1lWzY0XTsKLSB1bnNpZ25lZCBpbnQgZmlsdGVyOworICBpbnQgY2xpZW50OworICBzbmRfc2VxX2NsaWVudF90eXBlX3QgdHlwZTsKKyAgY2hhciBuYW1lWzY0XTsKKyAgdW5zaWduZWQgaW50IGZpbHRlcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBtdWx0aWNhc3RfZmlsdGVyWzhdOwotIHVuc2lnbmVkIGNoYXIgZXZlbnRfZmlsdGVyWzMyXTsKLSBpbnQgbnVtX3BvcnRzOwotIGludCBldmVudF9sb3N0OworICB1bnNpZ25lZCBjaGFyIG11bHRpY2FzdF9maWx0ZXJbOF07CisgIHVuc2lnbmVkIGNoYXIgZXZlbnRfZmlsdGVyWzMyXTsKKyAgaW50IG51bV9wb3J0czsKKyAgaW50IGV2ZW50X2xvc3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcmVzZXJ2ZWRbNjRdOworICBjaGFyIHJlc2VydmVkWzY0XTsKIH07CiBzdHJ1Y3Qgc25kX3NlcV9jbGllbnRfcG9vbCB7Ci0gaW50IGNsaWVudDsKKyAgaW50IGNsaWVudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IG91dHB1dF9wb29sOwotIGludCBpbnB1dF9wb29sOwotIGludCBvdXRwdXRfcm9vbTsKLSBpbnQgb3V0cHV0X2ZyZWU7CisgIGludCBvdXRwdXRfcG9vbDsKKyAgaW50IGlucHV0X3Bvb2w7CisgIGludCBvdXRwdXRfcm9vbTsKKyAgaW50IG91dHB1dF9mcmVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgaW5wdXRfZnJlZTsKLSBjaGFyIHJlc2VydmVkWzY0XTsKKyAgaW50IGlucHV0X2ZyZWU7CisgIGNoYXIgcmVzZXJ2ZWRbNjRdOwogfTsKLSNkZWZpbmUgU05EUlZfU0VRX1JFTU9WRV9JTlBVVCAoMTw8MCkKKyNkZWZpbmUgU05EUlZfU0VRX1JFTU9WRV9JTlBVVCAoMSA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX1JFTU9WRV9PVVRQVVQgKDE8PDEpCi0jZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfREVTVCAoMTw8MikKLSNkZWZpbmUgU05EUlZfU0VRX1JFTU9WRV9ERVNUX0NIQU5ORUwgKDE8PDMpCi0jZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfVElNRV9CRUZPUkUgKDE8PDQpCisjZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfT1VUUFVUICgxIDw8IDEpCisjZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfREVTVCAoMSA8PCAyKQorI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX0RFU1RfQ0hBTk5FTCAoMSA8PCAzKQorI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX1RJTUVfQkVGT1JFICgxIDw8IDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX1RJTUVfQUZURVIgKDE8PDUpCi0jZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfVElNRV9USUNLICgxPDw2KQotI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX0VWRU5UX1RZUEUgKDE8PDcpCi0jZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfSUdOT1JFX09GRiAoMTw8OCkKKyNkZWZpbmUgU05EUlZfU0VRX1JFTU9WRV9USU1FX0FGVEVSICgxIDw8IDUpCisjZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfVElNRV9USUNLICgxIDw8IDYpCisjZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfRVZFTlRfVFlQRSAoMSA8PCA3KQorI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX0lHTk9SRV9PRkYgKDEgPDwgOCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1NFUV9SRU1PVkVfVEFHX01BVENIICgxPDw5KQorI2RlZmluZSBTTkRSVl9TRVFfUkVNT1ZFX1RBR19NQVRDSCAoMSA8PCA5KQogc3RydWN0IHNuZF9zZXFfcmVtb3ZlX2V2ZW50cyB7Ci0gdW5zaWduZWQgaW50IHJlbW92ZV9tb2RlOwotIHVuaW9uIHNuZF9zZXFfdGltZXN0YW1wIHRpbWU7CisgIHVuc2lnbmVkIGludCByZW1vdmVfbW9kZTsKKyAgdW5pb24gc25kX3NlcV90aW1lc3RhbXAgdGltZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBxdWV1ZTsKLSBzdHJ1Y3Qgc25kX3NlcV9hZGRyIGRlc3Q7Ci0gdW5zaWduZWQgY2hhciBjaGFubmVsOwotIGludCB0eXBlOworICB1bnNpZ25lZCBjaGFyIHF1ZXVlOworICBzdHJ1Y3Qgc25kX3NlcV9hZGRyIGRlc3Q7CisgIHVuc2lnbmVkIGNoYXIgY2hhbm5lbDsKKyAgaW50IHR5cGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgdGFnOwotIGludCByZXNlcnZlZFsxMF07CisgIGNoYXIgdGFnOworICBpbnQgcmVzZXJ2ZWRbMTBdOwogfTsKICNkZWZpbmUgU05EUlZfU0VRX1BPUlRfU1lTVEVNX1RJTUVSIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1NZU1RFTV9BTk5PVU5DRSAxCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX0NBUF9SRUFEICgxPDwwKQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9DQVBfV1JJVEUgKDE8PDEpCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX0NBUF9TWU5DX1JFQUQgKDE8PDIpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX0NBUF9SRUFEICgxIDw8IDApCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX0NBUF9XUklURSAoMSA8PCAxKQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9DQVBfU1lOQ19SRUFEICgxIDw8IDIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9DQVBfU1lOQ19XUklURSAoMTw8MykKLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfQ0FQX0RVUExFWCAoMTw8NCkKLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfQ0FQX1NVQlNfUkVBRCAoMTw8NSkKLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfQ0FQX1NVQlNfV1JJVEUgKDE8PDYpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX0NBUF9TWU5DX1dSSVRFICgxIDw8IDMpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX0NBUF9EVVBMRVggKDEgPDwgNCkKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfQ0FQX1NVQlNfUkVBRCAoMSA8PCA1KQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9DQVBfU1VCU19XUklURSAoMSA8PCA2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfQ0FQX05PX0VYUE9SVCAoMTw8NykKLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9TUEVDSUZJQyAoMTw8MCkKLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9NSURJX0dFTkVSSUMgKDE8PDEpCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfTUlESV9HTSAoMTw8MikKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfQ0FQX05PX0VYUE9SVCAoMSA8PCA3KQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX1NQRUNJRklDICgxIDw8IDApCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfTUlESV9HRU5FUklDICgxIDw8IDEpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfTUlESV9HTSAoMSA8PCAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9NSURJX0dTICgxPDwzKQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX01JRElfWEcgKDE8PDQpCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfTUlESV9NVDMyICgxPDw1KQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX01JRElfR00yICgxPDw2KQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX01JRElfR1MgKDEgPDwgMykKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9NSURJX1hHICgxIDw8IDQpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfTUlESV9NVDMyICgxIDw8IDUpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfTUlESV9HTTIgKDEgPDwgNikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfU1lOVEggKDE8PDEwKQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX0RJUkVDVF9TQU1QTEUgKDE8PDExKQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX1NBTVBMRSAoMTw8MTIpCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfSEFSRFdBUkUgKDE8PDE2KQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX1NZTlRIICgxIDw8IDEwKQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX0RJUkVDVF9TQU1QTEUgKDEgPDwgMTEpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfU0FNUExFICgxIDw8IDEyKQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX0hBUkRXQVJFICgxIDw8IDE2KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9TT0ZUV0FSRSAoMTw8MTcpCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX1RZUEVfU1lOVEhFU0laRVIgKDE8PDE4KQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX1BPUlQgKDE8PDE5KQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX0FQUExJQ0FUSU9OICgxPDwyMCkKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9TT0ZUV0FSRSAoMSA8PCAxNykKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9TWU5USEVTSVpFUiAoMSA8PCAxOCkKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfVFlQRV9QT1JUICgxIDw8IDE5KQorI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9UWVBFX0FQUExJQ0FUSU9OICgxIDw8IDIwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfRkxHX0dJVkVOX1BPUlQgKDE8PDApCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX0ZMR19USU1FU1RBTVAgKDE8PDEpCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX0ZMR19USU1FX1JFQUwgKDE8PDIpCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX0ZMR19HSVZFTl9QT1JUICgxIDw8IDApCisjZGVmaW5lIFNORFJWX1NFUV9QT1JUX0ZMR19USU1FU1RBTVAgKDEgPDwgMSkKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfRkxHX1RJTUVfUkVBTCAoMSA8PCAyKQogc3RydWN0IHNuZF9zZXFfcG9ydF9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNuZF9zZXFfYWRkciBhZGRyOwotIGNoYXIgbmFtZVs2NF07Ci0gdW5zaWduZWQgaW50IGNhcGFiaWxpdHk7Ci0gdW5zaWduZWQgaW50IHR5cGU7CisgIHN0cnVjdCBzbmRfc2VxX2FkZHIgYWRkcjsKKyAgY2hhciBuYW1lWzY0XTsKKyAgdW5zaWduZWQgaW50IGNhcGFiaWxpdHk7CisgIHVuc2lnbmVkIGludCB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbWlkaV9jaGFubmVsczsKLSBpbnQgbWlkaV92b2ljZXM7Ci0gaW50IHN5bnRoX3ZvaWNlczsKLSBpbnQgcmVhZF91c2U7CisgIGludCBtaWRpX2NoYW5uZWxzOworICBpbnQgbWlkaV92b2ljZXM7CisgIGludCBzeW50aF92b2ljZXM7CisgIGludCByZWFkX3VzZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHdyaXRlX3VzZTsKLSB2b2lkICprZXJuZWw7Ci0gdW5zaWduZWQgaW50IGZsYWdzOwotIHVuc2lnbmVkIGNoYXIgdGltZV9xdWV1ZTsKKyAgaW50IHdyaXRlX3VzZTsKKyAgdm9pZCAqIGtlcm5lbDsKKyAgdW5zaWduZWQgaW50IGZsYWdzOworICB1bnNpZ25lZCBjaGFyIHRpbWVfcXVldWU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcmVzZXJ2ZWRbNTldOworICBjaGFyIHJlc2VydmVkWzU5XTsKIH07Ci0jZGVmaW5lIFNORFJWX1NFUV9RVUVVRV9GTEdfU1lOQyAoMTw8MCkKKyNkZWZpbmUgU05EUlZfU0VRX1FVRVVFX0ZMR19TWU5DICgxIDw8IDApCiBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV9pbmZvIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHF1ZXVlOwotIGludCBvd25lcjsKLSB1bnNpZ25lZCBsb2NrZWQ6MTsKLSBjaGFyIG5hbWVbNjRdOworICBpbnQgcXVldWU7CisgIGludCBvd25lcjsKKyAgdW5zaWduZWQgbG9ja2VkIDogMTsKKyAgY2hhciBuYW1lWzY0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGZsYWdzOwotIGNoYXIgcmVzZXJ2ZWRbNjBdOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CisgIGNoYXIgcmVzZXJ2ZWRbNjBdOwogfTsKIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX3N0YXR1cyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBxdWV1ZTsKLSBpbnQgZXZlbnRzOwotIHNuZF9zZXFfdGlja190aW1lX3QgdGljazsKLSBzdHJ1Y3Qgc25kX3NlcV9yZWFsX3RpbWUgdGltZTsKKyAgaW50IHF1ZXVlOworICBpbnQgZXZlbnRzOworICBzbmRfc2VxX3RpY2tfdGltZV90IHRpY2s7CisgIHN0cnVjdCBzbmRfc2VxX3JlYWxfdGltZSB0aW1lOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcnVubmluZzsKLSBpbnQgZmxhZ3M7Ci0gY2hhciByZXNlcnZlZFs2NF07CisgIGludCBydW5uaW5nOworICBpbnQgZmxhZ3M7CisgIGNoYXIgcmVzZXJ2ZWRbNjRdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV90ZW1wbyB7Ci0gaW50IHF1ZXVlOwotIHVuc2lnbmVkIGludCB0ZW1wbzsKLSBpbnQgcHBxOworICBpbnQgcXVldWU7CisgIHVuc2lnbmVkIGludCB0ZW1wbzsKKyAgaW50IHBwcTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHNrZXdfdmFsdWU7Ci0gdW5zaWduZWQgaW50IHNrZXdfYmFzZTsKLSBjaGFyIHJlc2VydmVkWzI0XTsKKyAgdW5zaWduZWQgaW50IHNrZXdfdmFsdWU7CisgIHVuc2lnbmVkIGludCBza2V3X2Jhc2U7CisgIGNoYXIgcmVzZXJ2ZWRbMjRdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NFUV9USU1FUl9BTFNBIDAKQEAgLTQwNiw5MiArNDA2LDkyIEBACiAjZGVmaW5lIFNORFJWX1NFUV9USU1FUl9NSURJX1RJQ0sgMgogc3RydWN0IHNuZF9zZXFfcXVldWVfdGltZXIgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgcXVldWU7Ci0gaW50IHR5cGU7Ci0gdW5pb24gewotIHN0cnVjdCB7CisgIGludCBxdWV1ZTsKKyAgaW50IHR5cGU7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc25kX3RpbWVyX2lkIGlkOwotIHVuc2lnbmVkIGludCByZXNvbHV0aW9uOwotIH0gYWxzYTsKLSB9IHU7CisgICAgICBzdHJ1Y3Qgc25kX3RpbWVyX2lkIGlkOworICAgICAgdW5zaWduZWQgaW50IHJlc29sdXRpb247CisgICAgfSBhbHNhOworICB9IHU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgcmVzZXJ2ZWRbNjRdOworICBjaGFyIHJlc2VydmVkWzY0XTsKIH07CiBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV9jbGllbnQgewotIGludCBxdWV1ZTsKKyAgaW50IHF1ZXVlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgY2xpZW50OwotIGludCB1c2VkOwotIGNoYXIgcmVzZXJ2ZWRbNjRdOworICBpbnQgY2xpZW50OworICBpbnQgdXNlZDsKKyAgY2hhciByZXNlcnZlZFs2NF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX1BPUlRfU1VCU19FWENMVVNJVkUgKDE8PDApCi0jZGVmaW5lIFNORFJWX1NFUV9QT1JUX1NVQlNfVElNRVNUQU1QICgxPDwxKQotI2RlZmluZSBTTkRSVl9TRVFfUE9SVF9TVUJTX1RJTUVfUkVBTCAoMTw8MikKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfU1VCU19FWENMVVNJVkUgKDEgPDwgMCkKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfU1VCU19USU1FU1RBTVAgKDEgPDwgMSkKKyNkZWZpbmUgU05EUlZfU0VRX1BPUlRfU1VCU19USU1FX1JFQUwgKDEgPDwgMikKIHN0cnVjdCBzbmRfc2VxX3BvcnRfc3Vic2NyaWJlIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNuZF9zZXFfYWRkciBzZW5kZXI7Ci0gc3RydWN0IHNuZF9zZXFfYWRkciBkZXN0OwotIHVuc2lnbmVkIGludCB2b2ljZXM7Ci0gdW5zaWduZWQgaW50IGZsYWdzOworICBzdHJ1Y3Qgc25kX3NlcV9hZGRyIHNlbmRlcjsKKyAgc3RydWN0IHNuZF9zZXFfYWRkciBkZXN0OworICB1bnNpZ25lZCBpbnQgdm9pY2VzOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcXVldWU7Ci0gdW5zaWduZWQgY2hhciBwYWRbM107Ci0gY2hhciByZXNlcnZlZFs2NF07CisgIHVuc2lnbmVkIGNoYXIgcXVldWU7CisgIHVuc2lnbmVkIGNoYXIgcGFkWzNdOworICBjaGFyIHJlc2VydmVkWzY0XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9TRVFfUVVFUllfU1VCU19SRUFEIDAKICNkZWZpbmUgU05EUlZfU0VRX1FVRVJZX1NVQlNfV1JJVEUgMQogc3RydWN0IHNuZF9zZXFfcXVlcnlfc3VicyB7Ci0gc3RydWN0IHNuZF9zZXFfYWRkciByb290OworICBzdHJ1Y3Qgc25kX3NlcV9hZGRyIHJvb3Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCB0eXBlOwotIGludCBpbmRleDsKLSBpbnQgbnVtX3N1YnM7Ci0gc3RydWN0IHNuZF9zZXFfYWRkciBhZGRyOworICBpbnQgdHlwZTsKKyAgaW50IGluZGV4OworICBpbnQgbnVtX3N1YnM7CisgIHN0cnVjdCBzbmRfc2VxX2FkZHIgYWRkcjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBxdWV1ZTsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gY2hhciByZXNlcnZlZFs2NF07CisgIHVuc2lnbmVkIGNoYXIgcXVldWU7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgY2hhciByZXNlcnZlZFs2NF07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1BWRVJTSU9OIF9JT1IgKCdTJywgMHgwMCwgaW50KQotI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfQ0xJRU5UX0lEIF9JT1IgKCdTJywgMHgwMSwgaW50KQorI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfUFZFUlNJT04gX0lPUignUycsIDB4MDAsIGludCkKKyNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX0NMSUVOVF9JRCBfSU9SKCdTJywgMHgwMSwgaW50KQogI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfU1lTVEVNX0lORk8gX0lPV1IoJ1MnLCAweDAyLCBzdHJ1Y3Qgc25kX3NlcV9zeXN0ZW1faW5mbykKICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1JVTk5JTkdfTU9ERSBfSU9XUignUycsIDB4MDMsIHN0cnVjdCBzbmRfc2VxX3J1bm5pbmdfaW5mbykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9HRVRfQ0xJRU5UX0lORk8gX0lPV1IoJ1MnLCAweDEwLCBzdHJ1Y3Qgc25kX3NlcV9jbGllbnRfaW5mbykKLSNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NFVF9DTElFTlRfSU5GTyBfSU9XICgnUycsIDB4MTEsIHN0cnVjdCBzbmRfc2VxX2NsaWVudF9pbmZvKQorI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfU0VUX0NMSUVOVF9JTkZPIF9JT1coJ1MnLCAweDExLCBzdHJ1Y3Qgc25kX3NlcV9jbGllbnRfaW5mbykKICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX0NSRUFURV9QT1JUIF9JT1dSKCdTJywgMHgyMCwgc3RydWN0IHNuZF9zZXFfcG9ydF9pbmZvKQotI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfREVMRVRFX1BPUlQgX0lPVyAoJ1MnLCAweDIxLCBzdHJ1Y3Qgc25kX3NlcV9wb3J0X2luZm8pCisjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9ERUxFVEVfUE9SVCBfSU9XKCdTJywgMHgyMSwgc3RydWN0IHNuZF9zZXFfcG9ydF9pbmZvKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX0dFVF9QT1JUX0lORk8gX0lPV1IoJ1MnLCAweDIyLCBzdHJ1Y3Qgc25kX3NlcV9wb3J0X2luZm8pCi0jZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9TRVRfUE9SVF9JTkZPIF9JT1cgKCdTJywgMHgyMywgc3RydWN0IHNuZF9zZXFfcG9ydF9pbmZvKQotI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfU1VCU0NSSUJFX1BPUlQgX0lPVyAoJ1MnLCAweDMwLCBzdHJ1Y3Qgc25kX3NlcV9wb3J0X3N1YnNjcmliZSkKLSNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1VOU1VCU0NSSUJFX1BPUlQgX0lPVyAoJ1MnLCAweDMxLCBzdHJ1Y3Qgc25kX3NlcV9wb3J0X3N1YnNjcmliZSkKKyNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NFVF9QT1JUX0lORk8gX0lPVygnUycsIDB4MjMsIHN0cnVjdCBzbmRfc2VxX3BvcnRfaW5mbykKKyNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NVQlNDUklCRV9QT1JUIF9JT1coJ1MnLCAweDMwLCBzdHJ1Y3Qgc25kX3NlcV9wb3J0X3N1YnNjcmliZSkKKyNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1VOU1VCU0NSSUJFX1BPUlQgX0lPVygnUycsIDB4MzEsIHN0cnVjdCBzbmRfc2VxX3BvcnRfc3Vic2NyaWJlKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX0NSRUFURV9RVUVVRSBfSU9XUignUycsIDB4MzIsIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX2luZm8pCi0jZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9ERUxFVEVfUVVFVUUgX0lPVyAoJ1MnLCAweDMzLCBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV9pbmZvKQorI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfREVMRVRFX1FVRVVFIF9JT1coJ1MnLCAweDMzLCBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV9pbmZvKQogI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfR0VUX1FVRVVFX0lORk8gX0lPV1IoJ1MnLCAweDM0LCBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV9pbmZvKQogI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfU0VUX1FVRVVFX0lORk8gX0lPV1IoJ1MnLCAweDM1LCBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV9pbmZvKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX0dFVF9OQU1FRF9RVUVVRSBfSU9XUignUycsIDB4MzYsIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX2luZm8pCiAjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9HRVRfUVVFVUVfU1RBVFVTIF9JT1dSKCdTJywgMHg0MCwgc3RydWN0IHNuZF9zZXFfcXVldWVfc3RhdHVzKQogI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfR0VUX1FVRVVFX1RFTVBPIF9JT1dSKCdTJywgMHg0MSwgc3RydWN0IHNuZF9zZXFfcXVldWVfdGVtcG8pCi0jZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9TRVRfUVVFVUVfVEVNUE8gX0lPVyAoJ1MnLCAweDQyLCBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV90ZW1wbykKKyNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NFVF9RVUVVRV9URU1QTyBfSU9XKCdTJywgMHg0Miwgc3RydWN0IHNuZF9zZXFfcXVldWVfdGVtcG8pCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfR0VUX1FVRVVFX09XTkVSIF9JT1dSKCdTJywgMHg0Mywgc3RydWN0IHNuZF9zZXFfcXVldWVfb3duZXIpCi0jZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9TRVRfUVVFVUVfT1dORVIgX0lPVyAoJ1MnLCAweDQ0LCBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV9vd25lcikKKyNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NFVF9RVUVVRV9PV05FUiBfSU9XKCdTJywgMHg0NCwgc3RydWN0IHNuZF9zZXFfcXVldWVfb3duZXIpCiAjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9HRVRfUVVFVUVfVElNRVIgX0lPV1IoJ1MnLCAweDQ1LCBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV90aW1lcikKLSNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NFVF9RVUVVRV9USU1FUiBfSU9XICgnUycsIDB4NDYsIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX3RpbWVyKQorI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfU0VUX1FVRVVFX1RJTUVSIF9JT1coJ1MnLCAweDQ2LCBzdHJ1Y3Qgc25kX3NlcV9xdWV1ZV90aW1lcikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9HRVRfUVVFVUVfQ0xJRU5UIF9JT1dSKCdTJywgMHg0OSwgc3RydWN0IHNuZF9zZXFfcXVldWVfY2xpZW50KQotI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfU0VUX1FVRVVFX0NMSUVOVCBfSU9XICgnUycsIDB4NGEsIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX2NsaWVudCkKKyNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1NFVF9RVUVVRV9DTElFTlQgX0lPVygnUycsIDB4NGEsIHN0cnVjdCBzbmRfc2VxX3F1ZXVlX2NsaWVudCkKICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX0dFVF9DTElFTlRfUE9PTCBfSU9XUignUycsIDB4NGIsIHN0cnVjdCBzbmRfc2VxX2NsaWVudF9wb29sKQotI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfU0VUX0NMSUVOVF9QT09MIF9JT1cgKCdTJywgMHg0Yywgc3RydWN0IHNuZF9zZXFfY2xpZW50X3Bvb2wpCisjZGVmaW5lIFNORFJWX1NFUV9JT0NUTF9TRVRfQ0xJRU5UX1BPT0wgX0lPVygnUycsIDB4NGMsIHN0cnVjdCBzbmRfc2VxX2NsaWVudF9wb29sKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1JFTU9WRV9FVkVOVFMgX0lPVyAoJ1MnLCAweDRlLCBzdHJ1Y3Qgc25kX3NlcV9yZW1vdmVfZXZlbnRzKQorI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfUkVNT1ZFX0VWRU5UUyBfSU9XKCdTJywgMHg0ZSwgc3RydWN0IHNuZF9zZXFfcmVtb3ZlX2V2ZW50cykKICNkZWZpbmUgU05EUlZfU0VRX0lPQ1RMX1FVRVJZX1NVQlMgX0lPV1IoJ1MnLCAweDRmLCBzdHJ1Y3Qgc25kX3NlcV9xdWVyeV9zdWJzKQogI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfR0VUX1NVQlNDUklQVElPTiBfSU9XUignUycsIDB4NTAsIHN0cnVjdCBzbmRfc2VxX3BvcnRfc3Vic2NyaWJlKQogI2RlZmluZSBTTkRSVl9TRVFfSU9DVExfUVVFUllfTkVYVF9DTElFTlQgX0lPV1IoJ1MnLCAweDUxLCBzdHJ1Y3Qgc25kX3NlcV9jbGllbnRfaW5mbykKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvc291bmQvYXNvdW5kLmggYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2Fzb3VuZC5oCmluZGV4IDlkMTg3YWEuLjE0MTlmZTggMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvc291bmQvYXNvdW5kLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9hc291bmQuaApAQCAtMTksOTczICsxOSw5NzcgQEAKICNpZm5kZWYgX1VBUElfX1NPVU5EX0FTT1VORF9ICiAjZGVmaW5lIF9VQVBJX19TT1VORF9BU09VTkRfSAogI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+Ci0jZGVmaW5lIFNORFJWX1BST1RPQ09MX1ZFUlNJT04obWFqb3IsIG1pbm9yLCBzdWJtaW5vcikgKCgobWFqb3IpPDwxNil8KChtaW5vcik8PDgpfChzdWJtaW5vcikpCisjZGVmaW5lIFNORFJWX1BST1RPQ09MX1ZFUlNJT04obWFqb3IsbWlub3Isc3VibWlub3IpICgoKG1ham9yKSA8PCAxNikgfCAoKG1pbm9yKSA8PCA4KSB8IChzdWJtaW5vcikpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9QUk9UT0NPTF9NQUpPUih2ZXJzaW9uKSAoKCh2ZXJzaW9uKT4+MTYpJjB4ZmZmZikKLSNkZWZpbmUgU05EUlZfUFJPVE9DT0xfTUlOT1IodmVyc2lvbikgKCgodmVyc2lvbik+PjgpJjB4ZmYpCi0jZGVmaW5lIFNORFJWX1BST1RPQ09MX01JQ1JPKHZlcnNpb24pICgodmVyc2lvbikmMHhmZikKLSNkZWZpbmUgU05EUlZfUFJPVE9DT0xfSU5DT01QQVRJQkxFKGt2ZXJzaW9uLCB1dmVyc2lvbikgICAoU05EUlZfUFJPVE9DT0xfTUFKT1Ioa3ZlcnNpb24pICE9IFNORFJWX1BST1RPQ09MX01BSk9SKHV2ZXJzaW9uKSB8fCAgIChTTkRSVl9QUk9UT0NPTF9NQUpPUihrdmVyc2lvbikgPT0gU05EUlZfUFJPVE9DT0xfTUFKT1IodXZlcnNpb24pICYmICAgU05EUlZfUFJPVE9DT0xfTUlOT1Ioa3ZlcnNpb24pICE9IFNORFJWX1BST1RPQ09MX01JTk9SKHV2ZXJzaW9uKSkpCisjZGVmaW5lIFNORFJWX1BST1RPQ09MX01BSk9SKHZlcnNpb24pICgoKHZlcnNpb24pID4+IDE2KSAmIDB4ZmZmZikKKyNkZWZpbmUgU05EUlZfUFJPVE9DT0xfTUlOT1IodmVyc2lvbikgKCgodmVyc2lvbikgPj4gOCkgJiAweGZmKQorI2RlZmluZSBTTkRSVl9QUk9UT0NPTF9NSUNSTyh2ZXJzaW9uKSAoKHZlcnNpb24pICYgMHhmZikKKyNkZWZpbmUgU05EUlZfUFJPVE9DT0xfSU5DT01QQVRJQkxFKGt2ZXJzaW9uLHV2ZXJzaW9uKSAoU05EUlZfUFJPVE9DT0xfTUFKT1Ioa3ZlcnNpb24pICE9IFNORFJWX1BST1RPQ09MX01BSk9SKHV2ZXJzaW9uKSB8fCAoU05EUlZfUFJPVE9DT0xfTUFKT1Ioa3ZlcnNpb24pID09IFNORFJWX1BST1RPQ09MX01BSk9SKHV2ZXJzaW9uKSAmJiBTTkRSVl9QUk9UT0NPTF9NSU5PUihrdmVyc2lvbikgIT0gU05EUlZfUFJPVE9DT0xfTUlOT1IodXZlcnNpb24pKSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX2Flc19pZWM5NTggewotIHVuc2lnbmVkIGNoYXIgc3RhdHVzWzI0XTsKLSB1bnNpZ25lZCBjaGFyIHN1YmNvZGVbMTQ3XTsKLSB1bnNpZ25lZCBjaGFyIHBhZDsKKyAgdW5zaWduZWQgY2hhciBzdGF0dXNbMjRdOworICB1bnNpZ25lZCBjaGFyIHN1YmNvZGVbMTQ3XTsKKyAgdW5zaWduZWQgY2hhciBwYWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZGlnX3N1YmZyYW1lWzRdOworICB1bnNpZ25lZCBjaGFyIGRpZ19zdWJmcmFtZVs0XTsKIH07CiBzdHJ1Y3Qgc25kX2NlYV84NjFfYXVkX2lmIHsKLSB1bnNpZ25lZCBjaGFyIGRiMV9jdF9jYzsKKyAgdW5zaWduZWQgY2hhciBkYjFfY3RfY2M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZGIyX3NmX3NzOwotIHVuc2lnbmVkIGNoYXIgZGIzOwotIHVuc2lnbmVkIGNoYXIgZGI0X2NhOwotIHVuc2lnbmVkIGNoYXIgZGI1X2RtaW5oX2xzdjsKKyAgdW5zaWduZWQgY2hhciBkYjJfc2Zfc3M7CisgIHVuc2lnbmVkIGNoYXIgZGIzOworICB1bnNpZ25lZCBjaGFyIGRiNF9jYTsKKyAgdW5zaWduZWQgY2hhciBkYjVfZG1pbmhfbHN2OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFNORFJWX0hXREVQX1ZFUlNJT04gU05EUlZfUFJPVE9DT0xfVkVSU0lPTigxLCAwLCAxKQogZW51bSB7Ci0gU05EUlZfSFdERVBfSUZBQ0VfT1BMMiA9IDAsCisgIFNORFJWX0hXREVQX0lGQUNFX09QTDIgPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9IV0RFUF9JRkFDRV9PUEwzLAotIFNORFJWX0hXREVQX0lGQUNFX09QTDQsCi0gU05EUlZfSFdERVBfSUZBQ0VfU0IxNkNTUCwKLSBTTkRSVl9IV0RFUF9JRkFDRV9FTVUxMEsxLAorICBTTkRSVl9IV0RFUF9JRkFDRV9PUEwzLAorICBTTkRSVl9IV0RFUF9JRkFDRV9PUEw0LAorICBTTkRSVl9IV0RFUF9JRkFDRV9TQjE2Q1NQLAorICBTTkRSVl9IV0RFUF9JRkFDRV9FTVUxMEsxLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9IV0RFUF9JRkFDRV9ZU1MyMjUsCi0gU05EUlZfSFdERVBfSUZBQ0VfSUNTMjExNSwKLSBTTkRSVl9IV0RFUF9JRkFDRV9TU0NBUEUsCi0gU05EUlZfSFdERVBfSUZBQ0VfVlgsCisgIFNORFJWX0hXREVQX0lGQUNFX1lTUzIyNSwKKyAgU05EUlZfSFdERVBfSUZBQ0VfSUNTMjExNSwKKyAgU05EUlZfSFdERVBfSUZBQ0VfU1NDQVBFLAorICBTTkRSVl9IV0RFUF9JRkFDRV9WWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfSFdERVBfSUZBQ0VfTUlYQVJULAotIFNORFJWX0hXREVQX0lGQUNFX1VTWDJZLAotIFNORFJWX0hXREVQX0lGQUNFX0VNVVhfV0FWRVRBQkxFLAotIFNORFJWX0hXREVQX0lGQUNFX0JMVUVUT09USCwKKyAgU05EUlZfSFdERVBfSUZBQ0VfTUlYQVJULAorICBTTkRSVl9IV0RFUF9JRkFDRV9VU1gyWSwKKyAgU05EUlZfSFdERVBfSUZBQ0VfRU1VWF9XQVZFVEFCTEUsCisgIFNORFJWX0hXREVQX0lGQUNFX0JMVUVUT09USCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfSFdERVBfSUZBQ0VfVVNYMllfUENNLAotIFNORFJWX0hXREVQX0lGQUNFX1BDWEhSLAotIFNORFJWX0hXREVQX0lGQUNFX1NCX1JDLAotIFNORFJWX0hXREVQX0lGQUNFX0hEQSwKKyAgU05EUlZfSFdERVBfSUZBQ0VfVVNYMllfUENNLAorICBTTkRSVl9IV0RFUF9JRkFDRV9QQ1hIUiwKKyAgU05EUlZfSFdERVBfSUZBQ0VfU0JfUkMsCisgIFNORFJWX0hXREVQX0lGQUNFX0hEQSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfSFdERVBfSUZBQ0VfVVNCX1NUUkVBTSwKLSBTTkRSVl9IV0RFUF9JRkFDRV9GV19ESUNFLAotIFNORFJWX0hXREVQX0lGQUNFX0xBU1QgPSBTTkRSVl9IV0RFUF9JRkFDRV9GV19ESUNFCisgIFNORFJWX0hXREVQX0lGQUNFX1VTQl9TVFJFQU0sCisgIFNORFJWX0hXREVQX0lGQUNFX0ZXX0RJQ0UsCisgIFNORFJWX0hXREVQX0lGQUNFX0ZXX0ZJUkVXT1JLUywKKyAgU05EUlZfSFdERVBfSUZBQ0VfRldfQkVCT0IsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTTkRSVl9IV0RFUF9JRkFDRV9MQVNUID0gU05EUlZfSFdERVBfSUZBQ0VfRldfQkVCT0IKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9od2RlcF9pbmZvIHsKLSB1bnNpZ25lZCBpbnQgZGV2aWNlOwotIGludCBjYXJkOwotIHVuc2lnbmVkIGNoYXIgaWRbNjRdOworICB1bnNpZ25lZCBpbnQgZGV2aWNlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIG5hbWVbODBdOwotIGludCBpZmFjZTsKLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0XTsKKyAgaW50IGNhcmQ7CisgIHVuc2lnbmVkIGNoYXIgaWRbNjRdOworICB1bnNpZ25lZCBjaGFyIG5hbWVbODBdOworICBpbnQgaWZhY2U7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0XTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9od2RlcF9kc3Bfc3RhdHVzIHsKLSB1bnNpZ25lZCBpbnQgdmVyc2lvbjsKLSB1bnNpZ25lZCBjaGFyIGlkWzMyXTsKLSB1bnNpZ25lZCBpbnQgbnVtX2RzcHM7CisgIHVuc2lnbmVkIGludCB2ZXJzaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZHNwX2xvYWRlZDsKLSB1bnNpZ25lZCBpbnQgY2hpcF9yZWFkeTsKLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzE2XTsKKyAgdW5zaWduZWQgY2hhciBpZFszMl07CisgIHVuc2lnbmVkIGludCBudW1fZHNwczsKKyAgdW5zaWduZWQgaW50IGRzcF9sb2FkZWQ7CisgIHVuc2lnbmVkIGludCBjaGlwX3JlYWR5OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFsxNl07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfaHdkZXBfZHNwX2ltYWdlIHsKLSB1bnNpZ25lZCBpbnQgaW5kZXg7Ci0gdW5zaWduZWQgY2hhciBuYW1lWzY0XTsKLSB1bnNpZ25lZCBjaGFyIF9fdXNlciAqaW1hZ2U7CisgIHVuc2lnbmVkIGludCBpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2l6ZV90IGxlbmd0aDsKLSB1bnNpZ25lZCBsb25nIGRyaXZlcl9kYXRhOworICB1bnNpZ25lZCBjaGFyIG5hbWVbNjRdOworICB1bnNpZ25lZCBjaGFyIF9fdXNlciAqIGltYWdlOworICBzaXplX3QgbGVuZ3RoOworICB1bnNpZ25lZCBsb25nIGRyaXZlcl9kYXRhOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07Ci0jZGVmaW5lIFNORFJWX0hXREVQX0lPQ1RMX1BWRVJTSU9OIF9JT1IgKCdIJywgMHgwMCwgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfSFdERVBfSU9DVExfSU5GTyBfSU9SICgnSCcsIDB4MDEsIHN0cnVjdCBzbmRfaHdkZXBfaW5mbykKKyNkZWZpbmUgU05EUlZfSFdERVBfSU9DVExfUFZFUlNJT04gX0lPUignSCcsIDB4MDAsIGludCkKKyNkZWZpbmUgU05EUlZfSFdERVBfSU9DVExfSU5GTyBfSU9SKCdIJywgMHgwMSwgc3RydWN0IHNuZF9od2RlcF9pbmZvKQogI2RlZmluZSBTTkRSVl9IV0RFUF9JT0NUTF9EU1BfU1RBVFVTIF9JT1IoJ0gnLCAweDAyLCBzdHJ1Y3Qgc25kX2h3ZGVwX2RzcF9zdGF0dXMpCi0jZGVmaW5lIFNORFJWX0hXREVQX0lPQ1RMX0RTUF9MT0FEIF9JT1coJ0gnLCAweDAzLCBzdHJ1Y3Qgc25kX2h3ZGVwX2RzcF9pbWFnZSkKLSNkZWZpbmUgU05EUlZfUENNX1ZFUlNJT04gU05EUlZfUFJPVE9DT0xfVkVSU0lPTigyLCAwLCAxMSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX0hXREVQX0lPQ1RMX0RTUF9MT0FEIF9JT1coJ0gnLCAweDAzLCBzdHJ1Y3Qgc25kX2h3ZGVwX2RzcF9pbWFnZSkKKyNkZWZpbmUgU05EUlZfUENNX1ZFUlNJT04gU05EUlZfUFJPVE9DT0xfVkVSU0lPTigyLCAwLCAxMikKIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBzbmRfcGNtX3VmcmFtZXNfdDsKIHR5cGVkZWYgc2lnbmVkIGxvbmcgc25kX3BjbV9zZnJhbWVzX3Q7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gU05EUlZfUENNX0NMQVNTX0dFTkVSSUMgPSAwLAorICBTTkRSVl9QQ01fQ0xBU1NfR0VORVJJQyA9IDAsCisgIFNORFJWX1BDTV9DTEFTU19NVUxUSSwKKyAgU05EUlZfUENNX0NMQVNTX01PREVNLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9QQ01fQ0xBU1NfTVVMVEksCi0gU05EUlZfUENNX0NMQVNTX01PREVNLAotIFNORFJWX1BDTV9DTEFTU19ESUdJVElaRVIsCi0gU05EUlZfUENNX0NMQVNTX0xBU1QgPSBTTkRSVl9QQ01fQ0xBU1NfRElHSVRJWkVSLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU05EUlZfUENNX0NMQVNTX0RJR0lUSVpFUiwKKyAgU05EUlZfUENNX0NMQVNTX0xBU1QgPSBTTkRSVl9QQ01fQ0xBU1NfRElHSVRJWkVSLAogfTsKIGVudW0gewotIFNORFJWX1BDTV9TVUJDTEFTU19HRU5FUklDX01JWCA9IDAsCi0gU05EUlZfUENNX1NVQkNMQVNTX01VTFRJX01JWCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfUENNX1NVQkNMQVNTX0xBU1QgPSBTTkRSVl9QQ01fU1VCQ0xBU1NfTVVMVElfTUlYLAorICBTTkRSVl9QQ01fU1VCQ0xBU1NfR0VORVJJQ19NSVggPSAwLAorICBTTkRSVl9QQ01fU1VCQ0xBU1NfTVVMVElfTUlYLAorICBTTkRSVl9QQ01fU1VCQ0xBU1NfTEFTVCA9IFNORFJWX1BDTV9TVUJDTEFTU19NVUxUSV9NSVgsCiB9OwotZW51bSB7Ci0gU05EUlZfUENNX1NUUkVBTV9QTEFZQkFDSyA9IDAsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX1BDTV9TVFJFQU1fQ0FQVFVSRSwKLSBTTkRSVl9QQ01fU1RSRUFNX0xBU1QgPSBTTkRSVl9QQ01fU1RSRUFNX0NBUFRVUkUsCitlbnVtIHsKKyAgU05EUlZfUENNX1NUUkVBTV9QTEFZQkFDSyA9IDAsCisgIFNORFJWX1BDTV9TVFJFQU1fQ0FQVFVSRSwKKyAgU05EUlZfUENNX1NUUkVBTV9MQVNUID0gU05EUlZfUENNX1NUUkVBTV9DQVBUVVJFLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiB0eXBlZGVmIGludCBfX2JpdHdpc2Ugc25kX3BjbV9hY2Nlc3NfdDsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9BQ0NFU1NfTU1BUF9JTlRFUkxFQVZFRCAoKF9fZm9yY2Ugc25kX3BjbV9hY2Nlc3NfdCkgMCkKICNkZWZpbmUgU05EUlZfUENNX0FDQ0VTU19NTUFQX05PTklOVEVSTEVBVkVEICgoX19mb3JjZSBzbmRfcGNtX2FjY2Vzc190KSAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0FDQ0VTU19NTUFQX0NPTVBMRVggKChfX2ZvcmNlIHNuZF9wY21fYWNjZXNzX3QpIDIpCiAjZGVmaW5lIFNORFJWX1BDTV9BQ0NFU1NfUldfSU5URVJMRUFWRUQgKChfX2ZvcmNlIHNuZF9wY21fYWNjZXNzX3QpIDMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fQUNDRVNTX1JXX05PTklOVEVSTEVBVkVEICgoX19mb3JjZSBzbmRfcGNtX2FjY2Vzc190KSA0KQogI2RlZmluZSBTTkRSVl9QQ01fQUNDRVNTX0xBU1QgU05EUlZfUENNX0FDQ0VTU19SV19OT05JTlRFUkxFQVZFRAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgaW50IF9fYml0d2lzZSBzbmRfcGNtX2Zvcm1hdF90OwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1M4ICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VOCAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMSkKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMTZfTEUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1MxNl9CRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMykKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMTZfTEUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1UxNl9CRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNSkKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMjRfTEUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1MyNF9CRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNykKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMjRfTEUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDgpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1UyNF9CRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgOSkKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMzJfTEUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDEwKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMzJfQkUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDExKQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1UzMl9MRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMTIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1UzMl9CRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMTMpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRkxPQVRfTEUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDE0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9GTE9BVF9CRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMTUpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRkxPQVQ2NF9MRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMTYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0ZMT0FUNjRfQkUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDE3KQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0lFQzk1OF9TVUJGUkFNRV9MRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMTgpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0lFQzk1OF9TVUJGUkFNRV9CRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMTkpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfTVVfTEFXICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAyMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfQV9MQVcgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDIxKQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0lNQV9BRFBDTSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMjIpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX01QRUcgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDIzKQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0dTTSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMjQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1NQRUNJQUwgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDMxKQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1MyNF8zTEUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDMyKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMjRfM0JFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAzMykKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMjRfM0xFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAzNCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfVTI0XzNCRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMzUpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfUzIwXzNMRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgMzYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1MyMF8zQkUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDM3KQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1UyMF8zTEUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDM4KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMjBfM0JFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSAzOSkKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMThfM0xFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA0MCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfUzE4XzNCRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNDEpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfVTE4XzNMRSAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNDIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1UxOF8zQkUgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDQzKQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0c3MjNfMjQgKChfX2ZvcmNlIHNuZF9wY21fZm9ybWF0X3QpIDQ0KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9HNzIzXzI0XzFCICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA0NSkKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9HNzIzXzQwICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA0NikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRzcyM180MF8xQiAoKF9fZm9yY2Ugc25kX3BjbV9mb3JtYXRfdCkgNDcpCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRFNEX1U4ICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA0OCkKLSNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9EU0RfVTE2X0xFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA0OSkKLSNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9MQVNUIFNORFJWX1BDTV9GT1JNQVRfRFNEX1UxNl9MRQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9EU0RfVTE2X0xFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA0OSkKKyNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9EU0RfVTMyX0xFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA1MCkKKyNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9EU0RfVTE2X0JFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA1MSkKKyNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9EU0RfVTMyX0JFICgoX19mb3JjZSBzbmRfcGNtX2Zvcm1hdF90KSA1MikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfTEFTVCBTTkRSVl9QQ01fRk9STUFUX0RTRF9VMzJfQkUKICNpZmRlZiBTTkRSVl9MSVRUTEVfRU5ESUFOCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfUzE2IFNORFJWX1BDTV9GT1JNQVRfUzE2X0xFCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfVTE2IFNORFJWX1BDTV9GT1JNQVRfVTE2X0xFCi0jZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfUzI0IFNORFJWX1BDTV9GT1JNQVRfUzI0X0xFCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1MyNCBTTkRSVl9QQ01fRk9STUFUX1MyNF9MRQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1UyNCBTTkRSVl9QQ01fRk9STUFUX1UyNF9MRQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1MzMiBTTkRSVl9QQ01fRk9STUFUX1MzMl9MRQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX1UzMiBTTkRSVl9QQ01fRk9STUFUX1UzMl9MRQotI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0ZMT0FUIFNORFJWX1BDTV9GT1JNQVRfRkxPQVRfTEUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRkxPQVQgU05EUlZfUENNX0ZPUk1BVF9GTE9BVF9MRQogI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0ZMT0FUNjQgU05EUlZfUENNX0ZPUk1BVF9GTE9BVDY0X0xFCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfSUVDOTU4X1NVQkZSQU1FIFNORFJWX1BDTV9GT1JNQVRfSUVDOTU4X1NVQkZSQU1FX0xFCiAjZW5kaWYKLSNpZmRlZiBTTkRSVl9CSUdfRU5ESUFOCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2lmZGVmIFNORFJWX0JJR19FTkRJQU4KICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMTYgU05EUlZfUENNX0ZPUk1BVF9TMTZfQkUKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMTYgU05EUlZfUENNX0ZPUk1BVF9VMTZfQkUKICNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9TMjQgU05EUlZfUENNX0ZPUk1BVF9TMjRfQkUKLSNkZWZpbmUgU05EUlZfUENNX0ZPUk1BVF9VMjQgU05EUlZfUENNX0ZPUk1BVF9VMjRfQkUKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfVTI0IFNORFJWX1BDTV9GT1JNQVRfVTI0X0JFCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfUzMyIFNORFJWX1BDTV9GT1JNQVRfUzMyX0JFCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfVTMyIFNORFJWX1BDTV9GT1JNQVRfVTMyX0JFCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfRkxPQVQgU05EUlZfUENNX0ZPUk1BVF9GTE9BVF9CRQotI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0ZMT0FUNjQgU05EUlZfUENNX0ZPUk1BVF9GTE9BVDY0X0JFCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fRk9STUFUX0ZMT0FUNjQgU05EUlZfUENNX0ZPUk1BVF9GTE9BVDY0X0JFCiAjZGVmaW5lIFNORFJWX1BDTV9GT1JNQVRfSUVDOTU4X1NVQkZSQU1FIFNORFJWX1BDTV9GT1JNQVRfSUVDOTU4X1NVQkZSQU1FX0JFCiAjZW5kaWYKIHR5cGVkZWYgaW50IF9fYml0d2lzZSBzbmRfcGNtX3N1YmZvcm1hdF90OwotI2RlZmluZSBTTkRSVl9QQ01fU1VCRk9STUFUX1NURCAoKF9fZm9yY2Ugc25kX3BjbV9zdWJmb3JtYXRfdCkgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9TVUJGT1JNQVRfU1REICgoX19mb3JjZSBzbmRfcGNtX3N1YmZvcm1hdF90KSAwKQogI2RlZmluZSBTTkRSVl9QQ01fU1VCRk9STUFUX0xBU1QgU05EUlZfUENNX1NVQkZPUk1BVF9TVEQKICNkZWZpbmUgU05EUlZfUENNX0lORk9fTU1BUCAweDAwMDAwMDAxCiAjZGVmaW5lIFNORFJWX1BDTV9JTkZPX01NQVBfVkFMSUQgMHgwMDAwMDAwMgotI2RlZmluZSBTTkRSVl9QQ01fSU5GT19ET1VCTEUgMHgwMDAwMDAwNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EUlZfUENNX0lORk9fRE9VQkxFIDB4MDAwMDAwMDQKICNkZWZpbmUgU05EUlZfUENNX0lORk9fQkFUQ0ggMHgwMDAwMDAxMAogI2RlZmluZSBTTkRSVl9QQ01fSU5GT19JTlRFUkxFQVZFRCAweDAwMDAwMTAwCiAjZGVmaW5lIFNORFJWX1BDTV9JTkZPX05PTklOVEVSTEVBVkVEIDB4MDAwMDAyMDAKLSNkZWZpbmUgU05EUlZfUENNX0lORk9fQ09NUExFWCAweDAwMDAwNDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fSU5GT19DT01QTEVYIDB4MDAwMDA0MDAKICNkZWZpbmUgU05EUlZfUENNX0lORk9fQkxPQ0tfVFJBTlNGRVIgMHgwMDAxMDAwMAogI2RlZmluZSBTTkRSVl9QQ01fSU5GT19PVkVSUkFOR0UgMHgwMDAyMDAwMAogI2RlZmluZSBTTkRSVl9QQ01fSU5GT19SRVNVTUUgMHgwMDA0MDAwMAotI2RlZmluZSBTTkRSVl9QQ01fSU5GT19QQVVTRSAweDAwMDgwMDAwCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fSU5GT19QQVVTRSAweDAwMDgwMDAwCiAjZGVmaW5lIFNORFJWX1BDTV9JTkZPX0hBTEZfRFVQTEVYIDB4MDAxMDAwMDAKICNkZWZpbmUgU05EUlZfUENNX0lORk9fSk9JTlRfRFVQTEVYIDB4MDAyMDAwMDAKICNkZWZpbmUgU05EUlZfUENNX0lORk9fU1lOQ19TVEFSVCAweDAwNDAwMDAwCi0jZGVmaW5lIFNORFJWX1BDTV9JTkZPX05PX1BFUklPRF9XQUtFVVAgMHgwMDgwMDAwMAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EUlZfUENNX0lORk9fTk9fUEVSSU9EX1dBS0VVUCAweDAwODAwMDAwCiAjZGVmaW5lIFNORFJWX1BDTV9JTkZPX0hBU19XQUxMX0NMT0NLIDB4MDEwMDAwMDAKICNkZWZpbmUgU05EUlZfUENNX0lORk9fRklGT19JTl9GUkFNRVMgMHg4MDAwMDAwMAogdHlwZWRlZiBpbnQgX19iaXR3aXNlIHNuZF9wY21fc3RhdGVfdDsKLSNkZWZpbmUgU05EUlZfUENNX1NUQVRFX09QRU4gKChfX2ZvcmNlIHNuZF9wY21fc3RhdGVfdCkgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9TVEFURV9PUEVOICgoX19mb3JjZSBzbmRfcGNtX3N0YXRlX3QpIDApCiAjZGVmaW5lIFNORFJWX1BDTV9TVEFURV9TRVRVUCAoKF9fZm9yY2Ugc25kX3BjbV9zdGF0ZV90KSAxKQogI2RlZmluZSBTTkRSVl9QQ01fU1RBVEVfUFJFUEFSRUQgKChfX2ZvcmNlIHNuZF9wY21fc3RhdGVfdCkgMikKICNkZWZpbmUgU05EUlZfUENNX1NUQVRFX1JVTk5JTkcgKChfX2ZvcmNlIHNuZF9wY21fc3RhdGVfdCkgMykKLSNkZWZpbmUgU05EUlZfUENNX1NUQVRFX1hSVU4gKChfX2ZvcmNlIHNuZF9wY21fc3RhdGVfdCkgNCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9TVEFURV9YUlVOICgoX19mb3JjZSBzbmRfcGNtX3N0YXRlX3QpIDQpCiAjZGVmaW5lIFNORFJWX1BDTV9TVEFURV9EUkFJTklORyAoKF9fZm9yY2Ugc25kX3BjbV9zdGF0ZV90KSA1KQogI2RlZmluZSBTTkRSVl9QQ01fU1RBVEVfUEFVU0VEICgoX19mb3JjZSBzbmRfcGNtX3N0YXRlX3QpIDYpCiAjZGVmaW5lIFNORFJWX1BDTV9TVEFURV9TVVNQRU5ERUQgKChfX2ZvcmNlIHNuZF9wY21fc3RhdGVfdCkgNykKLSNkZWZpbmUgU05EUlZfUENNX1NUQVRFX0RJU0NPTk5FQ1RFRCAoKF9fZm9yY2Ugc25kX3BjbV9zdGF0ZV90KSA4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EUlZfUENNX1NUQVRFX0RJU0NPTk5FQ1RFRCAoKF9fZm9yY2Ugc25kX3BjbV9zdGF0ZV90KSA4KQogI2RlZmluZSBTTkRSVl9QQ01fU1RBVEVfTEFTVCBTTkRSVl9QQ01fU1RBVEVfRElTQ09OTkVDVEVECiBlbnVtIHsKLSBTTkRSVl9QQ01fTU1BUF9PRkZTRVRfREFUQSA9IDB4MDAwMDAwMDAsCi0gU05EUlZfUENNX01NQVBfT0ZGU0VUX1NUQVRVUyA9IDB4ODAwMDAwMDAsCisgIFNORFJWX1BDTV9NTUFQX09GRlNFVF9EQVRBID0gMHgwMDAwMDAwMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfUENNX01NQVBfT0ZGU0VUX0NPTlRST0wgPSAweDgxMDAwMDAwLAorICBTTkRSVl9QQ01fTU1BUF9PRkZTRVRfU1RBVFVTID0gMHg4MDAwMDAwMCwKKyAgU05EUlZfUENNX01NQVBfT0ZGU0VUX0NPTlRST0wgPSAweDgxMDAwMDAwLAogfTsKIHVuaW9uIHNuZF9wY21fc3luY19pZCB7Ci0gdW5zaWduZWQgY2hhciBpZFsxNl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IGlkMTZbOF07Ci0gdW5zaWduZWQgaW50IGlkMzJbNF07CisgIHVuc2lnbmVkIGNoYXIgaWRbMTZdOworICB1bnNpZ25lZCBzaG9ydCBpZDE2WzhdOworICB1bnNpZ25lZCBpbnQgaWQzMls0XTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9wY21faW5mbyB7CisgIHVuc2lnbmVkIGludCBkZXZpY2U7CisgIHVuc2lnbmVkIGludCBzdWJkZXZpY2U7CisgIGludCBzdHJlYW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBkZXZpY2U7Ci0gdW5zaWduZWQgaW50IHN1YmRldmljZTsKLSBpbnQgc3RyZWFtOwotIGludCBjYXJkOworICBpbnQgY2FyZDsKKyAgdW5zaWduZWQgY2hhciBpZFs2NF07CisgIHVuc2lnbmVkIGNoYXIgbmFtZVs4MF07CisgIHVuc2lnbmVkIGNoYXIgc3VibmFtZVszMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgaWRbNjRdOwotIHVuc2lnbmVkIGNoYXIgbmFtZVs4MF07Ci0gdW5zaWduZWQgY2hhciBzdWJuYW1lWzMyXTsKLSBpbnQgZGV2X2NsYXNzOworICBpbnQgZGV2X2NsYXNzOworICBpbnQgZGV2X3N1YmNsYXNzOworICB1bnNpZ25lZCBpbnQgc3ViZGV2aWNlc19jb3VudDsKKyAgdW5zaWduZWQgaW50IHN1YmRldmljZXNfYXZhaWw7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBkZXZfc3ViY2xhc3M7Ci0gdW5zaWduZWQgaW50IHN1YmRldmljZXNfY291bnQ7Ci0gdW5zaWduZWQgaW50IHN1YmRldmljZXNfYXZhaWw7Ci0gdW5pb24gc25kX3BjbV9zeW5jX2lkIHN5bmM7Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNjRdOworICB1bmlvbiBzbmRfcGNtX3N5bmNfaWQgc3luYzsKKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFs2NF07CiB9OwogdHlwZWRlZiBpbnQgc25kX3BjbV9od19wYXJhbV90OwotI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fQUNDRVNTIDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9BQ0NFU1MgMAogI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fRk9STUFUIDEKICNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX1NVQkZPUk1BVCAyCiAjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9GSVJTVF9NQVNLIFNORFJWX1BDTV9IV19QQVJBTV9BQ0NFU1MKLSNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX0xBU1RfTUFTSyBTTkRSVl9QQ01fSFdfUEFSQU1fU1VCRk9STUFUCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fTEFTVF9NQVNLIFNORFJWX1BDTV9IV19QQVJBTV9TVUJGT1JNQVQKICNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX1NBTVBMRV9CSVRTIDgKICNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX0ZSQU1FX0JJVFMgOQogI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fQ0hBTk5FTFMgMTAKLSNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX1JBVEUgMTEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9SQVRFIDExCiAjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9QRVJJT0RfVElNRSAxMgogI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fUEVSSU9EX1NJWkUgMTMKICNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX1BFUklPRF9CWVRFUyAxNAotI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fUEVSSU9EUyAxNQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX1BFUklPRFMgMTUKICNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX0JVRkZFUl9USU1FIDE2CiAjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9CVUZGRVJfU0laRSAxNwogI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fQlVGRkVSX0JZVEVTIDE4Ci0jZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9USUNLX1RJTUUgMTkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTV9USUNLX1RJTUUgMTkKICNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNX0ZJUlNUX0lOVEVSVkFMIFNORFJWX1BDTV9IV19QQVJBTV9TQU1QTEVfQklUUwogI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1fTEFTVF9JTlRFUlZBTCBTTkRSVl9QQ01fSFdfUEFSQU1fVElDS19USU1FCi0jZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTVNfTk9SRVNBTVBMRSAoMTw8MCkKLSNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNU19FWFBPUlRfQlVGRkVSICgxPDwxKQorI2RlZmluZSBTTkRSVl9QQ01fSFdfUEFSQU1TX05PUkVTQU1QTEUgKDEgPDwgMCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTVNfTk9fUEVSSU9EX1dBS0VVUCAoMTw8MikKKyNkZWZpbmUgU05EUlZfUENNX0hXX1BBUkFNU19FWFBPUlRfQlVGRkVSICgxIDw8IDEpCisjZGVmaW5lIFNORFJWX1BDTV9IV19QQVJBTVNfTk9fUEVSSU9EX1dBS0VVUCAoMSA8PCAyKQogc3RydWN0IHNuZF9pbnRlcnZhbCB7Ci0gdW5zaWduZWQgaW50IG1pbiwgbWF4OwotIHVuc2lnbmVkIGludCBvcGVubWluOjEsCisgIHVuc2lnbmVkIGludCBtaW4sIG1heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gb3Blbm1heDoxLAotIGludGVnZXI6MSwKLSBlbXB0eToxOworICB1bnNpZ25lZCBpbnQgb3Blbm1pbiA6IDEsIG9wZW5tYXggOiAxLCBpbnRlZ2VyIDogMSwgZW1wdHkgOiAxOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX01BU0tfTUFYIDI1Ngogc3RydWN0IHNuZF9tYXNrIHsKLSBfX3UzMiBiaXRzWyhTTkRSVl9NQVNLX01BWCszMSkvMzJdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgX191MzIgYml0c1soU05EUlZfTUFTS19NQVggKyAzMSkgLyAzMl07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfcGNtX2h3X3BhcmFtcyB7Ci0gdW5zaWduZWQgaW50IGZsYWdzOwotIHN0cnVjdCBzbmRfbWFzayBtYXNrc1tTTkRSVl9QQ01fSFdfUEFSQU1fTEFTVF9NQVNLIC0KLSBTTkRSVl9QQ01fSFdfUEFSQU1fRklSU1RfTUFTSyArIDFdOworICB1bnNpZ25lZCBpbnQgZmxhZ3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzbmRfbWFzayBtcmVzWzVdOwotIHN0cnVjdCBzbmRfaW50ZXJ2YWwgaW50ZXJ2YWxzW1NORFJWX1BDTV9IV19QQVJBTV9MQVNUX0lOVEVSVkFMIC0KLSBTTkRSVl9QQ01fSFdfUEFSQU1fRklSU1RfSU5URVJWQUwgKyAxXTsKLSBzdHJ1Y3Qgc25kX2ludGVydmFsIGlyZXNbOV07CisgIHN0cnVjdCBzbmRfbWFzayBtYXNrc1tTTkRSVl9QQ01fSFdfUEFSQU1fTEFTVF9NQVNLIC0gU05EUlZfUENNX0hXX1BBUkFNX0ZJUlNUX01BU0sgKyAxXTsKKyAgc3RydWN0IHNuZF9tYXNrIG1yZXNbNV07CisgIHN0cnVjdCBzbmRfaW50ZXJ2YWwgaW50ZXJ2YWxzW1NORFJWX1BDTV9IV19QQVJBTV9MQVNUX0lOVEVSVkFMIC0gU05EUlZfUENNX0hXX1BBUkFNX0ZJUlNUX0lOVEVSVkFMICsgMV07CisgIHN0cnVjdCBzbmRfaW50ZXJ2YWwgaXJlc1s5XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJtYXNrOwotIHVuc2lnbmVkIGludCBjbWFzazsKLSB1bnNpZ25lZCBpbnQgaW5mbzsKLSB1bnNpZ25lZCBpbnQgbXNiaXRzOworICB1bnNpZ25lZCBpbnQgcm1hc2s7CisgIHVuc2lnbmVkIGludCBjbWFzazsKKyAgdW5zaWduZWQgaW50IGluZm87CisgIHVuc2lnbmVkIGludCBtc2JpdHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCByYXRlX251bTsKLSB1bnNpZ25lZCBpbnQgcmF0ZV9kZW47Ci0gc25kX3BjbV91ZnJhbWVzX3QgZmlmb19zaXplOwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNjRdOworICB1bnNpZ25lZCBpbnQgcmF0ZV9udW07CisgIHVuc2lnbmVkIGludCByYXRlX2RlbjsKKyAgc25kX3BjbV91ZnJhbWVzX3QgZmlmb19zaXplOworICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSB7Ci0gU05EUlZfUENNX1RTVEFNUF9OT05FID0gMCwKLSBTTkRSVl9QQ01fVFNUQU1QX0VOQUJMRSwKKyAgU05EUlZfUENNX1RTVEFNUF9OT05FID0gMCwKKyAgU05EUlZfUENNX1RTVEFNUF9FTkFCTEUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX1BDTV9UU1RBTVBfTEFTVCA9IFNORFJWX1BDTV9UU1RBTVBfRU5BQkxFLAorICBTTkRSVl9QQ01fVFNUQU1QX0xBU1QgPSBTTkRSVl9QQ01fVFNUQU1QX0VOQUJMRSwKIH07CiBzdHJ1Y3Qgc25kX3BjbV9zd19wYXJhbXMgewotIGludCB0c3RhbXBfbW9kZTsKKyAgaW50IHRzdGFtcF9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcGVyaW9kX3N0ZXA7Ci0gdW5zaWduZWQgaW50IHNsZWVwX21pbjsKLSBzbmRfcGNtX3VmcmFtZXNfdCBhdmFpbF9taW47Ci0gc25kX3BjbV91ZnJhbWVzX3QgeGZlcl9hbGlnbjsKKyAgdW5zaWduZWQgaW50IHBlcmlvZF9zdGVwOworICB1bnNpZ25lZCBpbnQgc2xlZXBfbWluOworICBzbmRfcGNtX3VmcmFtZXNfdCBhdmFpbF9taW47CisgIHNuZF9wY21fdWZyYW1lc190IHhmZXJfYWxpZ247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNuZF9wY21fdWZyYW1lc190IHN0YXJ0X3RocmVzaG9sZDsKLSBzbmRfcGNtX3VmcmFtZXNfdCBzdG9wX3RocmVzaG9sZDsKLSBzbmRfcGNtX3VmcmFtZXNfdCBzaWxlbmNlX3RocmVzaG9sZDsKLSBzbmRfcGNtX3VmcmFtZXNfdCBzaWxlbmNlX3NpemU7CisgIHNuZF9wY21fdWZyYW1lc190IHN0YXJ0X3RocmVzaG9sZDsKKyAgc25kX3BjbV91ZnJhbWVzX3Qgc3RvcF90aHJlc2hvbGQ7CisgIHNuZF9wY21fdWZyYW1lc190IHNpbGVuY2VfdGhyZXNob2xkOworICBzbmRfcGNtX3VmcmFtZXNfdCBzaWxlbmNlX3NpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNuZF9wY21fdWZyYW1lc190IGJvdW5kYXJ5OwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNjRdOworICBzbmRfcGNtX3VmcmFtZXNfdCBib3VuZGFyeTsKKyAgdW5zaWduZWQgaW50IHByb3RvOworICB1bnNpZ25lZCBpbnQgdHN0YW1wX3R5cGU7CisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNTZdOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc25kX3BjbV9jaGFubmVsX2luZm8geworICB1bnNpZ25lZCBpbnQgY2hhbm5lbDsKKyAgX19rZXJuZWxfb2ZmX3Qgb2Zmc2V0OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgY2hhbm5lbDsKLSBfX2tlcm5lbF9vZmZfdCBvZmZzZXQ7Ci0gdW5zaWduZWQgaW50IGZpcnN0OwotIHVuc2lnbmVkIGludCBzdGVwOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IGZpcnN0OworICB1bnNpZ25lZCBpbnQgc3RlcDsKIH07CiBzdHJ1Y3Qgc25kX3BjbV9zdGF0dXMgewotIHNuZF9wY21fc3RhdGVfdCBzdGF0ZTsKLSBzdHJ1Y3QgdGltZXNwZWMgdHJpZ2dlcl90c3RhbXA7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCB0aW1lc3BlYyB0c3RhbXA7Ci0gc25kX3BjbV91ZnJhbWVzX3QgYXBwbF9wdHI7Ci0gc25kX3BjbV91ZnJhbWVzX3QgaHdfcHRyOwotIHNuZF9wY21fc2ZyYW1lc190IGRlbGF5OworICBzbmRfcGNtX3N0YXRlX3Qgc3RhdGU7CisgIHN0cnVjdCB0aW1lc3BlYyB0cmlnZ2VyX3RzdGFtcDsKKyAgc3RydWN0IHRpbWVzcGVjIHRzdGFtcDsKKyAgc25kX3BjbV91ZnJhbWVzX3QgYXBwbF9wdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNuZF9wY21fdWZyYW1lc190IGF2YWlsOwotIHNuZF9wY21fdWZyYW1lc190IGF2YWlsX21heDsKLSBzbmRfcGNtX3VmcmFtZXNfdCBvdmVycmFuZ2U7Ci0gc25kX3BjbV9zdGF0ZV90IHN1c3BlbmRlZF9zdGF0ZTsKKyAgc25kX3BjbV91ZnJhbWVzX3QgaHdfcHRyOworICBzbmRfcGNtX3NmcmFtZXNfdCBkZWxheTsKKyAgc25kX3BjbV91ZnJhbWVzX3QgYXZhaWw7CisgIHNuZF9wY21fdWZyYW1lc190IGF2YWlsX21heDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmVzZXJ2ZWRfYWxpZ25tZW50OwotIHN0cnVjdCB0aW1lc3BlYyBhdWRpb190c3RhbXA7Ci0gdW5zaWduZWQgY2hhciByZXNlcnZlZFs1Ni1zaXplb2Yoc3RydWN0IHRpbWVzcGVjKV07CisgIHNuZF9wY21fdWZyYW1lc190IG92ZXJyYW5nZTsKKyAgc25kX3BjbV9zdGF0ZV90IHN1c3BlbmRlZF9zdGF0ZTsKKyAgX191MzIgcmVzZXJ2ZWRfYWxpZ25tZW50OworICBzdHJ1Y3QgdGltZXNwZWMgYXVkaW9fdHN0YW1wOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFs1NiAtIHNpemVvZihzdHJ1Y3QgdGltZXNwZWMpXTsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9wY21fbW1hcF9zdGF0dXMgewotIHNuZF9wY21fc3RhdGVfdCBzdGF0ZTsKLSBpbnQgcGFkMTsKLSBzbmRfcGNtX3VmcmFtZXNfdCBod19wdHI7CisgIHNuZF9wY21fc3RhdGVfdCBzdGF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHRpbWVzcGVjIHRzdGFtcDsKLSBzbmRfcGNtX3N0YXRlX3Qgc3VzcGVuZGVkX3N0YXRlOwotIHN0cnVjdCB0aW1lc3BlYyBhdWRpb190c3RhbXA7CisgIGludCBwYWQxOworICBzbmRfcGNtX3VmcmFtZXNfdCBod19wdHI7CisgIHN0cnVjdCB0aW1lc3BlYyB0c3RhbXA7CisgIHNuZF9wY21fc3RhdGVfdCBzdXNwZW5kZWRfc3RhdGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3QgdGltZXNwZWMgYXVkaW9fdHN0YW1wOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX3BjbV9tbWFwX2NvbnRyb2wgewotIHNuZF9wY21fdWZyYW1lc190IGFwcGxfcHRyOwotIHNuZF9wY21fdWZyYW1lc190IGF2YWlsX21pbjsKLX07CisgIHNuZF9wY21fdWZyYW1lc190IGFwcGxfcHRyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfUENNX1NZTkNfUFRSX0hXU1lOQyAoMTw8MCkKLSNkZWZpbmUgU05EUlZfUENNX1NZTkNfUFRSX0FQUEwgKDE8PDEpCi0jZGVmaW5lIFNORFJWX1BDTV9TWU5DX1BUUl9BVkFJTF9NSU4gKDE8PDIpCisgIHNuZF9wY21fdWZyYW1lc190IGF2YWlsX21pbjsKK307CisjZGVmaW5lIFNORFJWX1BDTV9TWU5DX1BUUl9IV1NZTkMgKDEgPDwgMCkKKyNkZWZpbmUgU05EUlZfUENNX1NZTkNfUFRSX0FQUEwgKDEgPDwgMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIFNORFJWX1BDTV9TWU5DX1BUUl9BVkFJTF9NSU4gKDEgPDwgMikKIHN0cnVjdCBzbmRfcGNtX3N5bmNfcHRyIHsKKyAgdW5zaWduZWQgaW50IGZsYWdzOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBmbGFnczsKLSB1bmlvbiB7Ci0gc3RydWN0IHNuZF9wY21fbW1hcF9zdGF0dXMgc3RhdHVzOwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNjRdOworICAgIHN0cnVjdCBzbmRfcGNtX21tYXBfc3RhdHVzIHN0YXR1czsKKyAgICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0XTsKKyAgfSBzOworICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gczsKLSB1bmlvbiB7Ci0gc3RydWN0IHNuZF9wY21fbW1hcF9jb250cm9sIGNvbnRyb2w7Ci0gdW5zaWduZWQgY2hhciByZXNlcnZlZFs2NF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIH0gYzsKKyAgICBzdHJ1Y3Qgc25kX3BjbV9tbWFwX2NvbnRyb2wgY29udHJvbDsKKyAgICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0XTsKKyAgfSBjOwogfTsKLXN0cnVjdCBzbmRfeGZlcmkgewotIHNuZF9wY21fc2ZyYW1lc190IHJlc3VsdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdm9pZCBfX3VzZXIgKmJ1ZjsKLSBzbmRfcGNtX3VmcmFtZXNfdCBmcmFtZXM7CitzdHJ1Y3Qgc25kX3hmZXJpIHsKKyAgc25kX3BjbV9zZnJhbWVzX3QgcmVzdWx0OworICB2b2lkIF9fdXNlciAqIGJ1ZjsKKyAgc25kX3BjbV91ZnJhbWVzX3QgZnJhbWVzOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc25kX3hmZXJuIHsKKyAgc25kX3BjbV9zZnJhbWVzX3QgcmVzdWx0OworICB2b2lkIF9fdXNlciAqIF9fdXNlciAqIGJ1ZnM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNuZF9wY21fc2ZyYW1lc190IHJlc3VsdDsKLSB2b2lkIF9fdXNlciAqIF9fdXNlciAqYnVmczsKLSBzbmRfcGNtX3VmcmFtZXNfdCBmcmFtZXM7CisgIHNuZF9wY21fdWZyYW1lc190IGZyYW1lczsKK307CitlbnVtIHsKKyAgU05EUlZfUENNX1RTVEFNUF9UWVBFX0dFVFRJTUVPRkRBWSA9IDAsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTTkRSVl9QQ01fVFNUQU1QX1RZUEVfTU9OT1RPTklDLAorICBTTkRSVl9QQ01fVFNUQU1QX1RZUEVfTU9OT1RPTklDX1JBVywKKyAgU05EUlZfUENNX1RTVEFNUF9UWVBFX0xBU1QgPSBTTkRSVl9QQ01fVFNUQU1QX1RZUEVfTU9OT1RPTklDX1JBVywKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSB7Ci0gU05EUlZfUENNX1RTVEFNUF9UWVBFX0dFVFRJTUVPRkRBWSA9IDAsCi0gU05EUlZfUENNX1RTVEFNUF9UWVBFX01PTk9UT05JQywKLSBTTkRSVl9QQ01fVFNUQU1QX1RZUEVfTEFTVCA9IFNORFJWX1BDTV9UU1RBTVBfVFlQRV9NT05PVE9OSUMsCisgIFNORFJWX0NITUFQX1VOS05PV04gPSAwLAorICBTTkRSVl9DSE1BUF9OQSwKKyAgU05EUlZfQ0hNQVBfTU9OTywKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNORFJWX0NITUFQX0ZMLAorICBTTkRSVl9DSE1BUF9GUiwKKyAgU05EUlZfQ0hNQVBfUkwsCisgIFNORFJWX0NITUFQX1JSLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU05EUlZfQ0hNQVBfRkMsCisgIFNORFJWX0NITUFQX0xGRSwKKyAgU05EUlZfQ0hNQVBfU0wsCisgIFNORFJWX0NITUFQX1NSLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU05EUlZfQ0hNQVBfUkMsCisgIFNORFJWX0NITUFQX0ZMQywKKyAgU05EUlZfQ0hNQVBfRlJDLAorICBTTkRSVl9DSE1BUF9STEMsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTTkRSVl9DSE1BUF9SUkMsCisgIFNORFJWX0NITUFQX0ZMVywKKyAgU05EUlZfQ0hNQVBfRlJXLAorICBTTkRSVl9DSE1BUF9GTEgsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTTkRSVl9DSE1BUF9GQ0gsCisgIFNORFJWX0NITUFQX0ZSSCwKKyAgU05EUlZfQ0hNQVBfVEMsCisgIFNORFJWX0NITUFQX1RGTCwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNORFJWX0NITUFQX1RGUiwKKyAgU05EUlZfQ0hNQVBfVEZDLAorICBTTkRSVl9DSE1BUF9UUkwsCisgIFNORFJWX0NITUFQX1RSUiwKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNORFJWX0NITUFQX1RSQywKKyAgU05EUlZfQ0hNQVBfVEZMQywKKyAgU05EUlZfQ0hNQVBfVEZSQywKKyAgU05EUlZfQ0hNQVBfVFNMLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU05EUlZfQ0hNQVBfVFNSLAorICBTTkRSVl9DSE1BUF9MTEZFLAorICBTTkRSVl9DSE1BUF9STEZFLAorICBTTkRSVl9DSE1BUF9CQywKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIFNORFJWX0NITUFQX0JMQywKKyAgU05EUlZfQ0hNQVBfQlJDLAorICBTTkRSVl9DSE1BUF9MQVNUID0gU05EUlZfQ0hNQVBfQlJDLAogfTsKLWVudW0gewotIFNORFJWX0NITUFQX1VOS05PV04gPSAwLAotIFNORFJWX0NITUFQX05BLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9DSE1BUF9NT05PLAotIFNORFJWX0NITUFQX0ZMLAotIFNORFJWX0NITUFQX0ZSLAotIFNORFJWX0NITUFQX1JMLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9DSE1BUF9SUiwKLSBTTkRSVl9DSE1BUF9GQywKLSBTTkRSVl9DSE1BUF9MRkUsCi0gU05EUlZfQ0hNQVBfU0wsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX0NITUFQX1NSLAotIFNORFJWX0NITUFQX1JDLAotIFNORFJWX0NITUFQX0ZMQywKLSBTTkRSVl9DSE1BUF9GUkMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX0NITUFQX1JMQywKLSBTTkRSVl9DSE1BUF9SUkMsCi0gU05EUlZfQ0hNQVBfRkxXLAotIFNORFJWX0NITUFQX0ZSVywKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfQ0hNQVBfRkxILAotIFNORFJWX0NITUFQX0ZDSCwKLSBTTkRSVl9DSE1BUF9GUkgsCi0gU05EUlZfQ0hNQVBfVEMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX0NITUFQX1RGTCwKLSBTTkRSVl9DSE1BUF9URlIsCi0gU05EUlZfQ0hNQVBfVEZDLAotIFNORFJWX0NITUFQX1RSTCwKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfQ0hNQVBfVFJSLAotIFNORFJWX0NITUFQX1RSQywKLSBTTkRSVl9DSE1BUF9URkxDLAotIFNORFJWX0NITUFQX1RGUkMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX0NITUFQX1RTTCwKLSBTTkRSVl9DSE1BUF9UU1IsCi0gU05EUlZfQ0hNQVBfTExGRSwKLSBTTkRSVl9DSE1BUF9STEZFLAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9DSE1BUF9CQywKLSBTTkRSVl9DSE1BUF9CTEMsCi0gU05EUlZfQ0hNQVBfQlJDLAotIFNORFJWX0NITUFQX0xBU1QgPSBTTkRSVl9DSE1BUF9CUkMsCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKICNkZWZpbmUgU05EUlZfQ0hNQVBfUE9TSVRJT05fTUFTSyAweGZmZmYKICNkZWZpbmUgU05EUlZfQ0hNQVBfUEhBU0VfSU5WRVJTRSAoMHgwMSA8PCAxNikKICNkZWZpbmUgU05EUlZfQ0hNQVBfRFJJVkVSX1NQRUMgKDB4MDIgPDwgMTYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfUFZFUlNJT04gX0lPUignQScsIDB4MDAsIGludCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9JTkZPIF9JT1IoJ0EnLCAweDAxLCBzdHJ1Y3Qgc25kX3BjbV9pbmZvKQogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfVFNUQU1QIF9JT1coJ0EnLCAweDAyLCBpbnQpCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9UVFNUQU1QIF9JT1coJ0EnLCAweDAzLCBpbnQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfSFdfUkVGSU5FIF9JT1dSKCdBJywgMHgxMCwgc3RydWN0IHNuZF9wY21faHdfcGFyYW1zKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX0hXX1BBUkFNUyBfSU9XUignQScsIDB4MTEsIHN0cnVjdCBzbmRfcGNtX2h3X3BhcmFtcykKICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX0hXX0ZSRUUgX0lPKCdBJywgMHgxMikKICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX1NXX1BBUkFNUyBfSU9XUignQScsIDB4MTMsIHN0cnVjdCBzbmRfcGNtX3N3X3BhcmFtcykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9TVEFUVVMgX0lPUignQScsIDB4MjAsIHN0cnVjdCBzbmRfcGNtX3N0YXR1cykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9ERUxBWSBfSU9SKCdBJywgMHgyMSwgc25kX3BjbV9zZnJhbWVzX3QpCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9IV1NZTkMgX0lPKCdBJywgMHgyMikKICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX1NZTkNfUFRSIF9JT1dSKCdBJywgMHgyMywgc3RydWN0IHNuZF9wY21fc3luY19wdHIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfQ0hBTk5FTF9JTkZPIF9JT1IoJ0EnLCAweDMyLCBzdHJ1Y3Qgc25kX3BjbV9jaGFubmVsX2luZm8pCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfUFJFUEFSRSBfSU8oJ0EnLCAweDQwKQogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfUkVTRVQgX0lPKCdBJywgMHg0MSkKICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX1NUQVJUIF9JTygnQScsIDB4NDIpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfRFJPUCBfSU8oJ0EnLCAweDQzKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX0RSQUlOIF9JTygnQScsIDB4NDQpCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9QQVVTRSBfSU9XKCdBJywgMHg0NSwgaW50KQogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfUkVXSU5EIF9JT1coJ0EnLCAweDQ2LCBzbmRfcGNtX3VmcmFtZXNfdCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9SRVNVTUUgX0lPKCdBJywgMHg0NykKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9YUlVOIF9JTygnQScsIDB4NDgpCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9GT1JXQVJEIF9JT1coJ0EnLCAweDQ5LCBzbmRfcGNtX3VmcmFtZXNfdCkKICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX1dSSVRFSV9GUkFNRVMgX0lPVygnQScsIDB4NTAsIHN0cnVjdCBzbmRfeGZlcmkpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfUkVBRElfRlJBTUVTIF9JT1IoJ0EnLCAweDUxLCBzdHJ1Y3Qgc25kX3hmZXJpKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUENNX0lPQ1RMX1dSSVRFTl9GUkFNRVMgX0lPVygnQScsIDB4NTIsIHN0cnVjdCBzbmRfeGZlcm4pCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9SRUFETl9GUkFNRVMgX0lPUignQScsIDB4NTMsIHN0cnVjdCBzbmRfeGZlcm4pCiAjZGVmaW5lIFNORFJWX1BDTV9JT0NUTF9MSU5LIF9JT1coJ0EnLCAweDYwLCBpbnQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9QQ01fSU9DVExfVU5MSU5LIF9JTygnQScsIDB4NjEpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9SQVdNSURJX1ZFUlNJT04gU05EUlZfUFJPVE9DT0xfVkVSU0lPTigyLCAwLCAwKQogZW51bSB7Ci0gU05EUlZfUkFXTUlESV9TVFJFQU1fT1VUUFVUID0gMCwKKyAgU05EUlZfUkFXTUlESV9TVFJFQU1fT1VUUFVUID0gMCwKKyAgU05EUlZfUkFXTUlESV9TVFJFQU1fSU5QVVQsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX1JBV01JRElfU1RSRUFNX0lOUFVULAotIFNORFJWX1JBV01JRElfU1RSRUFNX0xBU1QgPSBTTkRSVl9SQVdNSURJX1NUUkVBTV9JTlBVVCwKKyAgU05EUlZfUkFXTUlESV9TVFJFQU1fTEFTVCA9IFNORFJWX1JBV01JRElfU1RSRUFNX0lOUFVULAogfTsKICNkZWZpbmUgU05EUlZfUkFXTUlESV9JTkZPX09VVFBVVCAweDAwMDAwMDAxCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9SQVdNSURJX0lORk9fSU5QVVQgMHgwMDAwMDAwMgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUkFXTUlESV9JTkZPX0RVUExFWCAweDAwMDAwMDA0CiBzdHJ1Y3Qgc25kX3Jhd21pZGlfaW5mbyB7Ci0gdW5zaWduZWQgaW50IGRldmljZTsKKyAgdW5zaWduZWQgaW50IGRldmljZTsKKyAgdW5zaWduZWQgaW50IHN1YmRldmljZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN1YmRldmljZTsKLSBpbnQgc3RyZWFtOwotIGludCBjYXJkOwotIHVuc2lnbmVkIGludCBmbGFnczsKKyAgaW50IHN0cmVhbTsKKyAgaW50IGNhcmQ7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgdW5zaWduZWQgY2hhciBpZFs2NF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgaWRbNjRdOwotIHVuc2lnbmVkIGNoYXIgbmFtZVs4MF07Ci0gdW5zaWduZWQgY2hhciBzdWJuYW1lWzMyXTsKLSB1bnNpZ25lZCBpbnQgc3ViZGV2aWNlc19jb3VudDsKKyAgdW5zaWduZWQgY2hhciBuYW1lWzgwXTsKKyAgdW5zaWduZWQgY2hhciBzdWJuYW1lWzMyXTsKKyAgdW5zaWduZWQgaW50IHN1YmRldmljZXNfY291bnQ7CisgIHVuc2lnbmVkIGludCBzdWJkZXZpY2VzX2F2YWlsOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc3ViZGV2aWNlc19hdmFpbDsKLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0XTsKKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFs2NF07CiB9Owogc3RydWN0IHNuZF9yYXdtaWRpX3BhcmFtcyB7CisgIGludCBzdHJlYW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBzdHJlYW07Ci0gc2l6ZV90IGJ1ZmZlcl9zaXplOwotIHNpemVfdCBhdmFpbF9taW47Ci0gdW5zaWduZWQgaW50IG5vX2FjdGl2ZV9zZW5zaW5nOiAxOworICBzaXplX3QgYnVmZmVyX3NpemU7CisgIHNpemVfdCBhdmFpbF9taW47CisgIHVuc2lnbmVkIGludCBub19hY3RpdmVfc2Vuc2luZyA6IDE7CisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMTZdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzE2XTsKIH07CiBzdHJ1Y3Qgc25kX3Jhd21pZGlfc3RhdHVzIHsKLSBpbnQgc3RyZWFtOworICBpbnQgc3RyZWFtOworICBzdHJ1Y3QgdGltZXNwZWMgdHN0YW1wOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgdGltZXNwZWMgdHN0YW1wOwotIHNpemVfdCBhdmFpbDsKLSBzaXplX3QgeHJ1bnM7Ci0gdW5zaWduZWQgY2hhciByZXNlcnZlZFsxNl07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzaXplX3QgYXZhaWw7CisgIHNpemVfdCB4cnVuczsKKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFsxNl07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfUkFXTUlESV9JT0NUTF9QVkVSU0lPTiBfSU9SKCdXJywgMHgwMCwgaW50KQogI2RlZmluZSBTTkRSVl9SQVdNSURJX0lPQ1RMX0lORk8gX0lPUignVycsIDB4MDEsIHN0cnVjdCBzbmRfcmF3bWlkaV9pbmZvKQogI2RlZmluZSBTTkRSVl9SQVdNSURJX0lPQ1RMX1BBUkFNUyBfSU9XUignVycsIDB4MTAsIHN0cnVjdCBzbmRfcmF3bWlkaV9wYXJhbXMpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9SQVdNSURJX0lPQ1RMX1NUQVRVUyBfSU9XUignVycsIDB4MjAsIHN0cnVjdCBzbmRfcmF3bWlkaV9zdGF0dXMpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9SQVdNSURJX0lPQ1RMX0RST1AgX0lPVygnVycsIDB4MzAsIGludCkKICNkZWZpbmUgU05EUlZfUkFXTUlESV9JT0NUTF9EUkFJTiBfSU9XKCdXJywgMHgzMSwgaW50KQogI2RlZmluZSBTTkRSVl9USU1FUl9WRVJTSU9OIFNORFJWX1BST1RPQ09MX1ZFUlNJT04oMiwgMCwgNikKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIHsKLSBTTkRSVl9USU1FUl9DTEFTU19OT05FID0gLTEsCi0gU05EUlZfVElNRVJfQ0xBU1NfU0xBVkUgPSAwLAotIFNORFJWX1RJTUVSX0NMQVNTX0dMT0JBTCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfVElNRVJfQ0xBU1NfQ0FSRCwKLSBTTkRSVl9USU1FUl9DTEFTU19QQ00sCi0gU05EUlZfVElNRVJfQ0xBU1NfTEFTVCA9IFNORFJWX1RJTUVSX0NMQVNTX1BDTSwKKyAgU05EUlZfVElNRVJfQ0xBU1NfTk9ORSA9IC0gMSwKKyAgU05EUlZfVElNRVJfQ0xBU1NfU0xBVkUgPSAwLAorICBTTkRSVl9USU1FUl9DTEFTU19HTE9CQUwsCisgIFNORFJWX1RJTUVSX0NMQVNTX0NBUkQsCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBTTkRSVl9USU1FUl9DTEFTU19QQ00sCisgIFNORFJWX1RJTUVSX0NMQVNTX0xBU1QgPSBTTkRSVl9USU1FUl9DTEFTU19QQ00sCiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gewotIFNORFJWX1RJTUVSX1NDTEFTU19OT05FID0gMCwKLSBTTkRSVl9USU1FUl9TQ0xBU1NfQVBQTElDQVRJT04sCi0gU05EUlZfVElNRVJfU0NMQVNTX1NFUVVFTkNFUiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfVElNRVJfU0NMQVNTX09TU19TRVFVRU5DRVIsCi0gU05EUlZfVElNRVJfU0NMQVNTX0xBU1QgPSBTTkRSVl9USU1FUl9TQ0xBU1NfT1NTX1NFUVVFTkNFUiwKKyAgU05EUlZfVElNRVJfU0NMQVNTX05PTkUgPSAwLAorICBTTkRSVl9USU1FUl9TQ0xBU1NfQVBQTElDQVRJT04sCisgIFNORFJWX1RJTUVSX1NDTEFTU19TRVFVRU5DRVIsCisgIFNORFJWX1RJTUVSX1NDTEFTU19PU1NfU0VRVUVOQ0VSLAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgU05EUlZfVElNRVJfU0NMQVNTX0xBU1QgPSBTTkRSVl9USU1FUl9TQ0xBU1NfT1NTX1NFUVVFTkNFUiwKIH07CiAjZGVmaW5lIFNORFJWX1RJTUVSX0dMT0JBTF9TWVNURU0gMAotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfVElNRVJfR0xPQkFMX1JUQyAxCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9USU1FUl9HTE9CQUxfSFBFVCAyCiAjZGVmaW5lIFNORFJWX1RJTUVSX0dMT0JBTF9IUlRJTUVSIDMKLSNkZWZpbmUgU05EUlZfVElNRVJfRkxHX1NMQVZFICgxPDwwKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EUlZfVElNRVJfRkxHX1NMQVZFICgxIDw8IDApCiBzdHJ1Y3Qgc25kX3RpbWVyX2lkIHsKLSBpbnQgZGV2X2NsYXNzOwotIGludCBkZXZfc2NsYXNzOwotIGludCBjYXJkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgZGV2aWNlOwotIGludCBzdWJkZXZpY2U7CisgIGludCBkZXZfY2xhc3M7CisgIGludCBkZXZfc2NsYXNzOworICBpbnQgY2FyZDsKKyAgaW50IGRldmljZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBzdWJkZXZpY2U7CiB9Owogc3RydWN0IHNuZF90aW1lcl9naW5mbyB7CisgIHN0cnVjdCBzbmRfdGltZXJfaWQgdGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3Qgc25kX3RpbWVyX2lkIHRpZDsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gaW50IGNhcmQ7Ci0gdW5zaWduZWQgY2hhciBpZFs2NF07CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgaW50IGNhcmQ7CisgIHVuc2lnbmVkIGNoYXIgaWRbNjRdOworICB1bnNpZ25lZCBjaGFyIG5hbWVbODBdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIG5hbWVbODBdOwotIHVuc2lnbmVkIGxvbmcgcmVzZXJ2ZWQwOwotIHVuc2lnbmVkIGxvbmcgcmVzb2x1dGlvbjsKLSB1bnNpZ25lZCBsb25nIHJlc29sdXRpb25fbWluOworICB1bnNpZ25lZCBsb25nIHJlc2VydmVkMDsKKyAgdW5zaWduZWQgbG9uZyByZXNvbHV0aW9uOworICB1bnNpZ25lZCBsb25nIHJlc29sdXRpb25fbWluOworICB1bnNpZ25lZCBsb25nIHJlc29sdXRpb25fbWF4OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBsb25nIHJlc29sdXRpb25fbWF4OwotIHVuc2lnbmVkIGludCBjbGllbnRzOwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMzJdOworICB1bnNpZ25lZCBpbnQgY2xpZW50czsKKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFszMl07CiB9OwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfdGltZXJfZ3BhcmFtcyB7Ci0gc3RydWN0IHNuZF90aW1lcl9pZCB0aWQ7Ci0gdW5zaWduZWQgbG9uZyBwZXJpb2RfbnVtOwotIHVuc2lnbmVkIGxvbmcgcGVyaW9kX2RlbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciByZXNlcnZlZFszMl07CisgIHN0cnVjdCBzbmRfdGltZXJfaWQgdGlkOworICB1bnNpZ25lZCBsb25nIHBlcmlvZF9udW07CisgIHVuc2lnbmVkIGxvbmcgcGVyaW9kX2RlbjsKKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFszMl07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzbmRfdGltZXJfZ3N0YXR1cyB7Ci0gc3RydWN0IHNuZF90aW1lcl9pZCB0aWQ7CisgIHN0cnVjdCBzbmRfdGltZXJfaWQgdGlkOworICB1bnNpZ25lZCBsb25nIHJlc29sdXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGxvbmcgcmVzb2x1dGlvbjsKLSB1bnNpZ25lZCBsb25nIHJlc29sdXRpb25fbnVtOwotIHVuc2lnbmVkIGxvbmcgcmVzb2x1dGlvbl9kZW47Ci0gdW5zaWduZWQgY2hhciByZXNlcnZlZFszMl07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBsb25nIHJlc29sdXRpb25fbnVtOworICB1bnNpZ25lZCBsb25nIHJlc29sdXRpb25fZGVuOworICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzMyXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF90aW1lcl9zZWxlY3QgewotIHN0cnVjdCBzbmRfdGltZXJfaWQgaWQ7Ci0gdW5zaWduZWQgY2hhciByZXNlcnZlZFszMl07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3Qgc25kX3RpbWVyX2lkIGlkOworICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzMyXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF90aW1lcl9pbmZvIHsKLSB1bnNpZ25lZCBpbnQgZmxhZ3M7Ci0gaW50IGNhcmQ7CisgIHVuc2lnbmVkIGludCBmbGFnczsKKyAgaW50IGNhcmQ7CisgIHVuc2lnbmVkIGNoYXIgaWRbNjRdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGlkWzY0XTsKLSB1bnNpZ25lZCBjaGFyIG5hbWVbODBdOwotIHVuc2lnbmVkIGxvbmcgcmVzZXJ2ZWQwOwotIHVuc2lnbmVkIGxvbmcgcmVzb2x1dGlvbjsKKyAgdW5zaWduZWQgY2hhciBuYW1lWzgwXTsKKyAgdW5zaWduZWQgbG9uZyByZXNlcnZlZDA7CisgIHVuc2lnbmVkIGxvbmcgcmVzb2x1dGlvbjsKKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFs2NF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNjRdOwogfTsKLSNkZWZpbmUgU05EUlZfVElNRVJfUFNGTEdfQVVUTyAoMTw8MCkKLSNkZWZpbmUgU05EUlZfVElNRVJfUFNGTEdfRVhDTFVTSVZFICgxPDwxKQorI2RlZmluZSBTTkRSVl9USU1FUl9QU0ZMR19BVVRPICgxIDw8IDApCisjZGVmaW5lIFNORFJWX1RJTUVSX1BTRkxHX0VYQ0xVU0lWRSAoMSA8PCAxKQorI2RlZmluZSBTTkRSVl9USU1FUl9QU0ZMR19FQVJMWV9FVkVOVCAoMSA8PCAyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfVElNRVJfUFNGTEdfRUFSTFlfRVZFTlQgKDE8PDIpCiBzdHJ1Y3Qgc25kX3RpbWVyX3BhcmFtcyB7Ci0gdW5zaWduZWQgaW50IGZsYWdzOwotIHVuc2lnbmVkIGludCB0aWNrczsKKyAgdW5zaWduZWQgaW50IGZsYWdzOworICB1bnNpZ25lZCBpbnQgdGlja3M7CisgIHVuc2lnbmVkIGludCBxdWV1ZV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcXVldWVfc2l6ZTsKLSB1bnNpZ25lZCBpbnQgcmVzZXJ2ZWQwOwotIHVuc2lnbmVkIGludCBmaWx0ZXI7Ci0gdW5zaWduZWQgY2hhciByZXNlcnZlZFs2MF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBpbnQgcmVzZXJ2ZWQwOworICB1bnNpZ25lZCBpbnQgZmlsdGVyOworICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzYwXTsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF90aW1lcl9zdGF0dXMgewotIHN0cnVjdCB0aW1lc3BlYyB0c3RhbXA7Ci0gdW5zaWduZWQgaW50IHJlc29sdXRpb247CisgIHN0cnVjdCB0aW1lc3BlYyB0c3RhbXA7CisgIHVuc2lnbmVkIGludCByZXNvbHV0aW9uOworICB1bnNpZ25lZCBpbnQgbG9zdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGxvc3Q7Ci0gdW5zaWduZWQgaW50IG92ZXJydW47Ci0gdW5zaWduZWQgaW50IHF1ZXVlOwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNjRdOwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IG92ZXJydW47CisgIHVuc2lnbmVkIGludCBxdWV1ZTsKKyAgdW5zaWduZWQgY2hhciByZXNlcnZlZFs2NF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfVElNRVJfSU9DVExfUFZFUlNJT04gX0lPUignVCcsIDB4MDAsIGludCkKICNkZWZpbmUgU05EUlZfVElNRVJfSU9DVExfTkVYVF9ERVZJQ0UgX0lPV1IoJ1QnLCAweDAxLCBzdHJ1Y3Qgc25kX3RpbWVyX2lkKQogI2RlZmluZSBTTkRSVl9USU1FUl9JT0NUTF9UUkVBRCBfSU9XKCdUJywgMHgwMiwgaW50KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfVElNRVJfSU9DVExfR0lORk8gX0lPV1IoJ1QnLCAweDAzLCBzdHJ1Y3Qgc25kX3RpbWVyX2dpbmZvKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfVElNRVJfSU9DVExfR1BBUkFNUyBfSU9XKCdUJywgMHgwNCwgc3RydWN0IHNuZF90aW1lcl9ncGFyYW1zKQogI2RlZmluZSBTTkRSVl9USU1FUl9JT0NUTF9HU1RBVFVTIF9JT1dSKCdUJywgMHgwNSwgc3RydWN0IHNuZF90aW1lcl9nc3RhdHVzKQogI2RlZmluZSBTTkRSVl9USU1FUl9JT0NUTF9TRUxFQ1QgX0lPVygnVCcsIDB4MTAsIHN0cnVjdCBzbmRfdGltZXJfc2VsZWN0KQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfVElNRVJfSU9DVExfSU5GTyBfSU9SKCdUJywgMHgxMSwgc3RydWN0IHNuZF90aW1lcl9pbmZvKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfVElNRVJfSU9DVExfUEFSQU1TIF9JT1coJ1QnLCAweDEyLCBzdHJ1Y3Qgc25kX3RpbWVyX3BhcmFtcykKICNkZWZpbmUgU05EUlZfVElNRVJfSU9DVExfU1RBVFVTIF9JT1IoJ1QnLCAweDE0LCBzdHJ1Y3Qgc25kX3RpbWVyX3N0YXR1cykKICNkZWZpbmUgU05EUlZfVElNRVJfSU9DVExfU1RBUlQgX0lPKCdUJywgMHhhMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1RJTUVSX0lPQ1RMX1NUT1AgX0lPKCdUJywgMHhhMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1RJTUVSX0lPQ1RMX0NPTlRJTlVFIF9JTygnVCcsIDB4YTIpCiAjZGVmaW5lIFNORFJWX1RJTUVSX0lPQ1RMX1BBVVNFIF9JTygnVCcsIDB4YTMpCiBzdHJ1Y3Qgc25kX3RpbWVyX3JlYWQgeworICB1bnNpZ25lZCBpbnQgcmVzb2x1dGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHJlc29sdXRpb247Ci0gdW5zaWduZWQgaW50IHRpY2tzOworICB1bnNpZ25lZCBpbnQgdGlja3M7CiB9OwogZW51bSB7CisgIFNORFJWX1RJTUVSX0VWRU5UX1JFU09MVVRJT04gPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9USU1FUl9FVkVOVF9SRVNPTFVUSU9OID0gMCwKLSBTTkRSVl9USU1FUl9FVkVOVF9USUNLLAotIFNORFJWX1RJTUVSX0VWRU5UX1NUQVJULAotIFNORFJWX1RJTUVSX0VWRU5UX1NUT1AsCisgIFNORFJWX1RJTUVSX0VWRU5UX1RJQ0ssCisgIFNORFJWX1RJTUVSX0VWRU5UX1NUQVJULAorICBTTkRSVl9USU1FUl9FVkVOVF9TVE9QLAorICBTTkRSVl9USU1FUl9FVkVOVF9DT05USU5VRSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EUlZfVElNRVJfRVZFTlRfQ09OVElOVUUsCi0gU05EUlZfVElNRVJfRVZFTlRfUEFVU0UsCi0gU05EUlZfVElNRVJfRVZFTlRfRUFSTFksCi0gU05EUlZfVElNRVJfRVZFTlRfU1VTUEVORCwKKyAgU05EUlZfVElNRVJfRVZFTlRfUEFVU0UsCisgIFNORFJWX1RJTUVSX0VWRU5UX0VBUkxZLAorICBTTkRSVl9USU1FUl9FVkVOVF9TVVNQRU5ELAorICBTTkRSVl9USU1FUl9FVkVOVF9SRVNVTUUsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFNORFJWX1RJTUVSX0VWRU5UX1JFU1VNRSwKLSBTTkRSVl9USU1FUl9FVkVOVF9NU1RBUlQgPSBTTkRSVl9USU1FUl9FVkVOVF9TVEFSVCArIDEwLAotIFNORFJWX1RJTUVSX0VWRU5UX01TVE9QID0gU05EUlZfVElNRVJfRVZFTlRfU1RPUCArIDEwLAotIFNORFJWX1RJTUVSX0VWRU5UX01DT05USU5VRSA9IFNORFJWX1RJTUVSX0VWRU5UX0NPTlRJTlVFICsgMTAsCisgIFNORFJWX1RJTUVSX0VWRU5UX01TVEFSVCA9IFNORFJWX1RJTUVSX0VWRU5UX1NUQVJUICsgMTAsCisgIFNORFJWX1RJTUVSX0VWRU5UX01TVE9QID0gU05EUlZfVElNRVJfRVZFTlRfU1RPUCArIDEwLAorICBTTkRSVl9USU1FUl9FVkVOVF9NQ09OVElOVUUgPSBTTkRSVl9USU1FUl9FVkVOVF9DT05USU5VRSArIDEwLAorICBTTkRSVl9USU1FUl9FVkVOVF9NUEFVU0UgPSBTTkRSVl9USU1FUl9FVkVOVF9QQVVTRSArIDEwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9USU1FUl9FVkVOVF9NUEFVU0UgPSBTTkRSVl9USU1FUl9FVkVOVF9QQVVTRSArIDEwLAotIFNORFJWX1RJTUVSX0VWRU5UX01TVVNQRU5EID0gU05EUlZfVElNRVJfRVZFTlRfU1VTUEVORCArIDEwLAotIFNORFJWX1RJTUVSX0VWRU5UX01SRVNVTUUgPSBTTkRSVl9USU1FUl9FVkVOVF9SRVNVTUUgKyAxMCwKKyAgU05EUlZfVElNRVJfRVZFTlRfTVNVU1BFTkQgPSBTTkRSVl9USU1FUl9FVkVOVF9TVVNQRU5EICsgMTAsCisgIFNORFJWX1RJTUVSX0VWRU5UX01SRVNVTUUgPSBTTkRSVl9USU1FUl9FVkVOVF9SRVNVTUUgKyAxMCwKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF90aW1lcl90cmVhZCB7Ci0gaW50IGV2ZW50OwotIHN0cnVjdCB0aW1lc3BlYyB0c3RhbXA7Ci0gdW5zaWduZWQgaW50IHZhbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGludCBldmVudDsKKyAgc3RydWN0IHRpbWVzcGVjIHRzdGFtcDsKKyAgdW5zaWduZWQgaW50IHZhbDsKIH07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfVkVSU0lPTiBTTkRSVl9QUk9UT0NPTF9WRVJTSU9OKDIsIDAsIDcpCiBzdHJ1Y3Qgc25kX2N0bF9jYXJkX2luZm8gewotIGludCBjYXJkOworICBpbnQgY2FyZDsKKyAgaW50IHBhZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IHBhZDsKLSB1bnNpZ25lZCBjaGFyIGlkWzE2XTsKLSB1bnNpZ25lZCBjaGFyIGRyaXZlclsxNl07Ci0gdW5zaWduZWQgY2hhciBuYW1lWzMyXTsKKyAgdW5zaWduZWQgY2hhciBpZFsxNl07CisgIHVuc2lnbmVkIGNoYXIgZHJpdmVyWzE2XTsKKyAgdW5zaWduZWQgY2hhciBuYW1lWzMyXTsKKyAgdW5zaWduZWQgY2hhciBsb25nbmFtZVs4MF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgbG9uZ25hbWVbODBdOwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRfWzE2XTsKLSB1bnNpZ25lZCBjaGFyIG1peGVybmFtZVs4MF07Ci0gdW5zaWduZWQgY2hhciBjb21wb25lbnRzWzEyOF07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkX1sxNl07CisgIHVuc2lnbmVkIGNoYXIgbWl4ZXJuYW1lWzgwXTsKKyAgdW5zaWduZWQgY2hhciBjb21wb25lbnRzWzEyOF07CiB9OworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHR5cGVkZWYgaW50IF9fYml0d2lzZSBzbmRfY3RsX2VsZW1fdHlwZV90OwogI2RlZmluZSBTTkRSVl9DVExfRUxFTV9UWVBFX05PTkUgKChfX2ZvcmNlIHNuZF9jdGxfZWxlbV90eXBlX3QpIDApCiAjZGVmaW5lIFNORFJWX0NUTF9FTEVNX1RZUEVfQk9PTEVBTiAoKF9fZm9yY2Ugc25kX2N0bF9lbGVtX3R5cGVfdCkgMSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9FTEVNX1RZUEVfSU5URUdFUiAoKF9fZm9yY2Ugc25kX2N0bF9lbGVtX3R5cGVfdCkgMikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9FTEVNX1RZUEVfRU5VTUVSQVRFRCAoKF9fZm9yY2Ugc25kX2N0bF9lbGVtX3R5cGVfdCkgMykKICNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fVFlQRV9CWVRFUyAoKF9fZm9yY2Ugc25kX2N0bF9lbGVtX3R5cGVfdCkgNCkKICNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fVFlQRV9JRUM5NTggKChfX2ZvcmNlIHNuZF9jdGxfZWxlbV90eXBlX3QpIDUpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfRUxFTV9UWVBFX0lOVEVHRVI2NCAoKF9fZm9yY2Ugc25kX2N0bF9lbGVtX3R5cGVfdCkgNikKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9FTEVNX1RZUEVfTEFTVCBTTkRSVl9DVExfRUxFTV9UWVBFX0lOVEVHRVI2NAogdHlwZWRlZiBpbnQgX19iaXR3aXNlIHNuZF9jdGxfZWxlbV9pZmFjZV90OwogI2RlZmluZSBTTkRSVl9DVExfRUxFTV9JRkFDRV9DQVJEICgoX19mb3JjZSBzbmRfY3RsX2VsZW1faWZhY2VfdCkgMCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0lGQUNFX0hXREVQICgoX19mb3JjZSBzbmRfY3RsX2VsZW1faWZhY2VfdCkgMSkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0lGQUNFX01JWEVSICgoX19mb3JjZSBzbmRfY3RsX2VsZW1faWZhY2VfdCkgMikKICNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fSUZBQ0VfUENNICgoX19mb3JjZSBzbmRfY3RsX2VsZW1faWZhY2VfdCkgMykKICNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fSUZBQ0VfUkFXTUlESSAoKF9fZm9yY2Ugc25kX2N0bF9lbGVtX2lmYWNlX3QpIDQpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfRUxFTV9JRkFDRV9USU1FUiAoKF9fZm9yY2Ugc25kX2N0bF9lbGVtX2lmYWNlX3QpIDUpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfRUxFTV9JRkFDRV9TRVFVRU5DRVIgKChfX2ZvcmNlIHNuZF9jdGxfZWxlbV9pZmFjZV90KSA2KQogI2RlZmluZSBTTkRSVl9DVExfRUxFTV9JRkFDRV9MQVNUIFNORFJWX0NUTF9FTEVNX0lGQUNFX1NFUVVFTkNFUgotI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfUkVBRCAoMTw8MCkKKyNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1JFQUQgKDEgPDwgMCkKKyNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1dSSVRFICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfV1JJVEUgKDE8PDEpCi0jZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19SRUFEV1JJVEUgKFNORFJWX0NUTF9FTEVNX0FDQ0VTU19SRUFEfFNORFJWX0NUTF9FTEVNX0FDQ0VTU19XUklURSkKLSNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1ZPTEFUSUxFICgxPDwyKQotI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVElNRVNUQU1QICgxPDwzKQorI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfUkVBRFdSSVRFIChTTkRSVl9DVExfRUxFTV9BQ0NFU1NfUkVBRCB8IFNORFJWX0NUTF9FTEVNX0FDQ0VTU19XUklURSkKKyNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1ZPTEFUSUxFICgxIDw8IDIpCisjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19USU1FU1RBTVAgKDEgPDwgMykKKyNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1RMVl9SRUFEICgxIDw8IDQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVExWX1JFQUQgKDE8PDQpCi0jZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19UTFZfV1JJVEUgKDE8PDUpCi0jZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19UTFZfUkVBRFdSSVRFIChTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVExWX1JFQUR8U05EUlZfQ1RMX0VMRU1fQUNDRVNTX1RMVl9XUklURSkKLSNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX1RMVl9DT01NQU5EICgxPDw2KQorI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVExWX1dSSVRFICgxIDw8IDUpCisjZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19UTFZfUkVBRFdSSVRFIChTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVExWX1JFQUQgfCBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVExWX1dSSVRFKQorI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVExWX0NPTU1BTkQgKDEgPDwgNikKKyNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX0lOQUNUSVZFICgxIDw8IDgpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfSU5BQ1RJVkUgKDE8PDgpCi0jZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19MT0NLICgxPDw5KQotI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfT1dORVIgKDE8PDEwKQotI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVExWX0NBTExCQUNLICgxPDwyOCkKKyNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX0xPQ0sgKDEgPDwgOSkKKyNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fQUNDRVNTX09XTkVSICgxIDw8IDEwKQorI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVExWX0NBTExCQUNLICgxIDw8IDI4KQorI2RlZmluZSBTTkRSVl9DVExfRUxFTV9BQ0NFU1NfVVNFUiAoMSA8PCAyOSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX0NUTF9FTEVNX0FDQ0VTU19VU0VSICgxPDwyOSkKICNkZWZpbmUgU05EUlZfQ1RMX1BPV0VSX0QwIDB4MDAwMAogI2RlZmluZSBTTkRSVl9DVExfUE9XRVJfRDEgMHgwMTAwCiAjZGVmaW5lIFNORFJWX0NUTF9QT1dFUl9EMiAweDAyMDAKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9QT1dFUl9EMyAweDAzMDAKLSNkZWZpbmUgU05EUlZfQ1RMX1BPV0VSX0QzaG90IChTTkRSVl9DVExfUE9XRVJfRDN8MHgwMDAwKQotI2RlZmluZSBTTkRSVl9DVExfUE9XRVJfRDNjb2xkIChTTkRSVl9DVExfUE9XRVJfRDN8MHgwMDAxKQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EUlZfQ1RMX1BPV0VSX0QzaG90IChTTkRSVl9DVExfUE9XRVJfRDMgfCAweDAwMDApCisjZGVmaW5lIFNORFJWX0NUTF9QT1dFUl9EM2NvbGQgKFNORFJWX0NUTF9QT1dFUl9EMyB8IDB4MDAwMSkKICNkZWZpbmUgU05EUlZfQ1RMX0VMRU1fSURfTkFNRV9NQVhMRU4gNDQKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2lkIHsKLSB1bnNpZ25lZCBpbnQgbnVtaWQ7Ci0gc25kX2N0bF9lbGVtX2lmYWNlX3QgaWZhY2U7Ci0gdW5zaWduZWQgaW50IGRldmljZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHN1YmRldmljZTsKLSB1bnNpZ25lZCBjaGFyIG5hbWVbNDRdOwotIHVuc2lnbmVkIGludCBpbmRleDsKKyAgdW5zaWduZWQgaW50IG51bWlkOworICBzbmRfY3RsX2VsZW1faWZhY2VfdCBpZmFjZTsKKyAgdW5zaWduZWQgaW50IGRldmljZTsKKyAgdW5zaWduZWQgaW50IHN1YmRldmljZTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGNoYXIgbmFtZVs0NF07CisgIHVuc2lnbmVkIGludCBpbmRleDsKIH07Ci0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9jdGxfZWxlbV9saXN0IHsKLSB1bnNpZ25lZCBpbnQgb2Zmc2V0OwotIHVuc2lnbmVkIGludCBzcGFjZTsKLSB1bnNpZ25lZCBpbnQgdXNlZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGNvdW50OwotIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQgX191c2VyICpwaWRzOwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNTBdOworICB1bnNpZ25lZCBpbnQgb2Zmc2V0OworICB1bnNpZ25lZCBpbnQgc3BhY2U7CisgIHVuc2lnbmVkIGludCB1c2VkOworICB1bnNpZ25lZCBpbnQgY291bnQ7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2lkIF9fdXNlciAqIHBpZHM7CisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbNTBdOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2luZm8gewotIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQgaWQ7Ci0gc25kX2N0bF9lbGVtX3R5cGVfdCB0eXBlOwotIHVuc2lnbmVkIGludCBhY2Nlc3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBjb3VudDsKLSBfX2tlcm5lbF9waWRfdCBvd25lcjsKLSB1bmlvbiB7Ci0gc3RydWN0IHsKKyAgc3RydWN0IHNuZF9jdGxfZWxlbV9pZCBpZDsKKyAgc25kX2N0bF9lbGVtX3R5cGVfdCB0eXBlOworICB1bnNpZ25lZCBpbnQgYWNjZXNzOworICB1bnNpZ25lZCBpbnQgY291bnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGxvbmcgbWluOwotIGxvbmcgbWF4OwotIGxvbmcgc3RlcDsKLSB9IGludGVnZXI7CisgIF9fa2VybmVsX3BpZF90IG93bmVyOworICB1bmlvbiB7CisgICAgc3RydWN0IHsKKyAgICAgIGxvbmcgbWluOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgewotIGxvbmcgbG9uZyBtaW47Ci0gbG9uZyBsb25nIG1heDsKLSBsb25nIGxvbmcgc3RlcDsKKyAgICAgIGxvbmcgbWF4OworICAgICAgbG9uZyBzdGVwOworICAgIH0gaW50ZWdlcjsKKyAgICBzdHJ1Y3QgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB9IGludGVnZXI2NDsKLSBzdHJ1Y3QgewotIHVuc2lnbmVkIGludCBpdGVtczsKLSB1bnNpZ25lZCBpbnQgaXRlbTsKKyAgICAgIGxvbmcgbG9uZyBtaW47CisgICAgICBsb25nIGxvbmcgbWF4OworICAgICAgbG9uZyBsb25nIHN0ZXA7CisgICAgfSBpbnRlZ2VyNjQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbmFtZVs2NF07Ci0gX191NjQgbmFtZXNfcHRyOwotIHVuc2lnbmVkIGludCBuYW1lc19sZW5ndGg7Ci0gfSBlbnVtZXJhdGVkOworICAgIHN0cnVjdCB7CisgICAgICB1bnNpZ25lZCBpbnQgaXRlbXM7CisgICAgICB1bnNpZ25lZCBpbnQgaXRlbTsKKyAgICAgIGNoYXIgbmFtZVs2NF07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMTI4XTsKLSB9IHZhbHVlOwotIHVuaW9uIHsKLSB1bnNpZ25lZCBzaG9ydCBkWzRdOworICAgICAgX191NjQgbmFtZXNfcHRyOworICAgICAgdW5zaWduZWQgaW50IG5hbWVzX2xlbmd0aDsKKyAgICB9IGVudW1lcmF0ZWQ7CisgICAgdW5zaWduZWQgY2hhciByZXNlcnZlZFsxMjhdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCAqZF9wdHI7Ci0gfSBkaW1lbjsKLSB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0LTQqc2l6ZW9mKHVuc2lnbmVkIHNob3J0KV07CisgIH0gdmFsdWU7CisgIHVuaW9uIHsKKyAgICB1bnNpZ25lZCBzaG9ydCBkWzRdOworICAgIHVuc2lnbmVkIHNob3J0ICogZF9wdHI7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB9IGRpbWVuOworICB1bnNpZ25lZCBjaGFyIHJlc2VydmVkWzY0IC0gNCAqIHNpemVvZih1bnNpZ25lZCBzaG9ydCldOwogfTsKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX2N0bF9lbGVtX3ZhbHVlIHsKLSBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2lkIGlkOwotIHVuc2lnbmVkIGludCBpbmRpcmVjdDogMTsKLSB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSBsb25nIHZhbHVlWzEyOF07Ci0gbG9uZyAqdmFsdWVfcHRyOwotIH0gaW50ZWdlcjsKKyAgc3RydWN0IHNuZF9jdGxfZWxlbV9pZCBpZDsKKyAgdW5zaWduZWQgaW50IGluZGlyZWN0IDogMTsKKyAgdW5pb24geworICAgIHVuaW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5pb24gewotIGxvbmcgbG9uZyB2YWx1ZVs2NF07Ci0gbG9uZyBsb25nICp2YWx1ZV9wdHI7Ci0gfSBpbnRlZ2VyNjQ7CisgICAgICBsb25nIHZhbHVlWzEyOF07CisgICAgICBsb25nICogdmFsdWVfcHRyOworICAgIH0gaW50ZWdlcjsKKyAgICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSB1bnNpZ25lZCBpbnQgaXRlbVsxMjhdOwotIHVuc2lnbmVkIGludCAqaXRlbV9wdHI7Ci0gfSBlbnVtZXJhdGVkOworICAgICAgbG9uZyBsb25nIHZhbHVlWzY0XTsKKyAgICAgIGxvbmcgbG9uZyAqIHZhbHVlX3B0cjsKKyAgICB9IGludGVnZXI2NDsKKyAgICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuaW9uIHsKLSB1bnNpZ25lZCBjaGFyIGRhdGFbNTEyXTsKLSB1bnNpZ25lZCBjaGFyICpkYXRhX3B0cjsKLSB9IGJ5dGVzOworICAgICAgdW5zaWduZWQgaW50IGl0ZW1bMTI4XTsKKyAgICAgIHVuc2lnbmVkIGludCAqIGl0ZW1fcHRyOworICAgIH0gZW51bWVyYXRlZDsKKyAgICB1bmlvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzbmRfYWVzX2llYzk1OCBpZWM5NTg7Ci0gfSB2YWx1ZTsKLSBzdHJ1Y3QgdGltZXNwZWMgdHN0YW1wOwotIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMTI4LXNpemVvZihzdHJ1Y3QgdGltZXNwZWMpXTsKKyAgICAgIHVuc2lnbmVkIGNoYXIgZGF0YVs1MTJdOworICAgICAgdW5zaWduZWQgY2hhciAqIGRhdGFfcHRyOworICAgIH0gYnl0ZXM7CisgICAgc3RydWN0IHNuZF9hZXNfaWVjOTU4IGllYzk1ODsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIH0gdmFsdWU7CisgIHN0cnVjdCB0aW1lc3BlYyB0c3RhbXA7CisgIHVuc2lnbmVkIGNoYXIgcmVzZXJ2ZWRbMTI4IC0gc2l6ZW9mKHN0cnVjdCB0aW1lc3BlYyldOwogfTsKLXN0cnVjdCBzbmRfY3RsX3RsdiB7Ci0gdW5zaWduZWQgaW50IG51bWlkOwotIHVuc2lnbmVkIGludCBsZW5ndGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCB0bHZbMF07CitzdHJ1Y3Qgc25kX2N0bF90bHYgeworICB1bnNpZ25lZCBpbnQgbnVtaWQ7CisgIHVuc2lnbmVkIGludCBsZW5ndGg7CisgIHVuc2lnbmVkIGludCB0bHZbMF07CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgU05EUlZfQ1RMX0lPQ1RMX1BWRVJTSU9OIF9JT1IoJ1UnLCAweDAwLCBpbnQpCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9DQVJEX0lORk8gX0lPUignVScsIDB4MDEsIHN0cnVjdCBzbmRfY3RsX2NhcmRfaW5mbykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9FTEVNX0xJU1QgX0lPV1IoJ1UnLCAweDEwLCBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2xpc3QpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfRUxFTV9JTkZPIF9JT1dSKCdVJywgMHgxMSwgc3RydWN0IHNuZF9jdGxfZWxlbV9pbmZvKQogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfRUxFTV9SRUFEIF9JT1dSKCdVJywgMHgxMiwgc3RydWN0IHNuZF9jdGxfZWxlbV92YWx1ZSkKICNkZWZpbmUgU05EUlZfQ1RMX0lPQ1RMX0VMRU1fV1JJVEUgX0lPV1IoJ1UnLCAweDEzLCBzdHJ1Y3Qgc25kX2N0bF9lbGVtX3ZhbHVlKQotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ1RMX0lPQ1RMX0VMRU1fTE9DSyBfSU9XKCdVJywgMHgxNCwgc3RydWN0IHNuZF9jdGxfZWxlbV9pZCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9FTEVNX1VOTE9DSyBfSU9XKCdVJywgMHgxNSwgc3RydWN0IHNuZF9jdGxfZWxlbV9pZCkKICNkZWZpbmUgU05EUlZfQ1RMX0lPQ1RMX1NVQlNDUklCRV9FVkVOVFMgX0lPV1IoJ1UnLCAweDE2LCBpbnQpCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9FTEVNX0FERCBfSU9XUignVScsIDB4MTcsIHN0cnVjdCBzbmRfY3RsX2VsZW1faW5mbykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9FTEVNX1JFUExBQ0UgX0lPV1IoJ1UnLCAweDE4LCBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2luZm8pCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfRUxFTV9SRU1PVkUgX0lPV1IoJ1UnLCAweDE5LCBzdHJ1Y3Qgc25kX2N0bF9lbGVtX2lkKQogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfVExWX1JFQUQgX0lPV1IoJ1UnLCAweDFhLCBzdHJ1Y3Qgc25kX2N0bF90bHYpCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9UTFZfV1JJVEUgX0lPV1IoJ1UnLCAweDFiLCBzdHJ1Y3Qgc25kX2N0bF90bHYpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfVExWX0NPTU1BTkQgX0lPV1IoJ1UnLCAweDFjLCBzdHJ1Y3Qgc25kX2N0bF90bHYpCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfSFdERVBfTkVYVF9ERVZJQ0UgX0lPV1IoJ1UnLCAweDIwLCBpbnQpCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9IV0RFUF9JTkZPIF9JT1IoJ1UnLCAweDIxLCBzdHJ1Y3Qgc25kX2h3ZGVwX2luZm8pCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9QQ01fTkVYVF9ERVZJQ0UgX0lPUignVScsIDB4MzAsIGludCkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9QQ01fSU5GTyBfSU9XUignVScsIDB4MzEsIHN0cnVjdCBzbmRfcGNtX2luZm8pCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfSU9DVExfUENNX1BSRUZFUl9TVUJERVZJQ0UgX0lPVygnVScsIDB4MzIsIGludCkKICNkZWZpbmUgU05EUlZfQ1RMX0lPQ1RMX1JBV01JRElfTkVYVF9ERVZJQ0UgX0lPV1IoJ1UnLCAweDQwLCBpbnQpCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9SQVdNSURJX0lORk8gX0lPV1IoJ1UnLCAweDQxLCBzdHJ1Y3Qgc25kX3Jhd21pZGlfaW5mbykKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9SQVdNSURJX1BSRUZFUl9TVUJERVZJQ0UgX0lPVygnVScsIDB4NDIsIGludCkKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9JT0NUTF9QT1dFUiBfSU9XUignVScsIDB4ZDAsIGludCkKICNkZWZpbmUgU05EUlZfQ1RMX0lPQ1RMX1BPV0VSX1NUQVRFIF9JT1IoJ1UnLCAweGQxLCBpbnQpCiBlbnVtIHNuZHJ2X2N0bF9ldmVudF90eXBlIHsKKyAgU05EUlZfQ1RMX0VWRU5UX0VMRU0gPSAwLAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBTTkRSVl9DVExfRVZFTlRfRUxFTSA9IDAsCi0gU05EUlZfQ1RMX0VWRU5UX0xBU1QgPSBTTkRSVl9DVExfRVZFTlRfRUxFTSwKKyAgU05EUlZfQ1RMX0VWRU5UX0xBU1QgPSBTTkRSVl9DVExfRVZFTlRfRUxFTSwKIH07Ci0jZGVmaW5lIFNORFJWX0NUTF9FVkVOVF9NQVNLX1ZBTFVFICgxPDwwKQorI2RlZmluZSBTTkRSVl9DVExfRVZFTlRfTUFTS19WQUxVRSAoMSA8PCAwKQorI2RlZmluZSBTTkRSVl9DVExfRVZFTlRfTUFTS19JTkZPICgxIDw8IDEpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9DVExfRVZFTlRfTUFTS19JTkZPICgxPDwxKQotI2RlZmluZSBTTkRSVl9DVExfRVZFTlRfTUFTS19BREQgKDE8PDIpCi0jZGVmaW5lIFNORFJWX0NUTF9FVkVOVF9NQVNLX1RMViAoMTw8MykKKyNkZWZpbmUgU05EUlZfQ1RMX0VWRU5UX01BU0tfQUREICgxIDw8IDIpCisjZGVmaW5lIFNORFJWX0NUTF9FVkVOVF9NQVNLX1RMViAoMSA8PCAzKQogI2RlZmluZSBTTkRSVl9DVExfRVZFTlRfTUFTS19SRU1PVkUgKH4wVSkKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX2N0bF9ldmVudCB7Ci0gaW50IHR5cGU7Ci0gdW5pb24gewotIHN0cnVjdCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBtYXNrOwotIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQgaWQ7Ci0gfSBlbGVtOwotIHVuc2lnbmVkIGNoYXIgZGF0YThbNjBdOworICBpbnQgdHlwZTsKKyAgdW5pb24geworICAgIHN0cnVjdCB7CisgICAgICB1bnNpZ25lZCBpbnQgbWFzazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gfSBkYXRhOworICAgICAgc3RydWN0IHNuZF9jdGxfZWxlbV9pZCBpZDsKKyAgICB9IGVsZW07CisgICAgdW5zaWduZWQgY2hhciBkYXRhOFs2MF07CisgIH0gZGF0YTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBTTkRSVl9DVExfTkFNRV9OT05FICIiCiAjZGVmaW5lIFNORFJWX0NUTF9OQU1FX1BMQVlCQUNLICJQbGF5YmFjayAiCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfTkFNRV9DQVBUVVJFICJDYXB0dXJlICIKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9OQU1FX0lFQzk1OF9OT05FICIiCiAjZGVmaW5lIFNORFJWX0NUTF9OQU1FX0lFQzk1OF9TV0lUQ0ggIlN3aXRjaCIKICNkZWZpbmUgU05EUlZfQ1RMX05BTUVfSUVDOTU4X1ZPTFVNRSAiVm9sdW1lIgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ1RMX05BTUVfSUVDOTU4X0RFRkFVTFQgIkRlZmF1bHQiCisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9DVExfTkFNRV9JRUM5NThfTUFTSyAiTWFzayIKICNkZWZpbmUgU05EUlZfQ1RMX05BTUVfSUVDOTU4X0NPTl9NQVNLICJDb24gTWFzayIKICNkZWZpbmUgU05EUlZfQ1RMX05BTUVfSUVDOTU4X1BST19NQVNLICJQcm8gTWFzayIKLS8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NUTF9OQU1FX0lFQzk1OF9QQ01fU1RSRUFNICJQQ00gU3RyZWFtIgotI2RlZmluZSBTTkRSVl9DVExfTkFNRV9JRUM5NTgoZXhwbCxkaXJlY3Rpb24sd2hhdCkgIklFQzk1OCAiIGV4cGwgU05EUlZfQ1RMX05BTUVfIyNkaXJlY3Rpb24gU05EUlZfQ1RMX05BTUVfSUVDOTU4XyMjd2hhdAorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU05EUlZfQ1RMX05BTUVfSUVDOTU4KGV4cGwsZGlyZWN0aW9uLHdoYXQpICJJRUM5NTggIiBleHBsIFNORFJWX0NUTF9OQU1FXyAjI2RpcmVjdGlvbiBTTkRSVl9DVExfTkFNRV9JRUM5NThfICMjd2hhdAogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2Fzb3VuZF9mbS5oIGIvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9hc291bmRfZm0uaAppbmRleCA1MWEwM2YxLi4wODE5ZWZlIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2Fzb3VuZF9mbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvYXNvdW5kX2ZtLmgKQEAgLTIyLDU4ICsyMiw1OCBAQAogI2RlZmluZSBTTkRSVl9ETV9GTV9NT0RFX09QTDMgMHgwMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfZG1fZm1faW5mbyB7Ci0gdW5zaWduZWQgY2hhciBmbV9tb2RlOwotIHVuc2lnbmVkIGNoYXIgcmh5dGhtOworICB1bnNpZ25lZCBjaGFyIGZtX21vZGU7CisgIHVuc2lnbmVkIGNoYXIgcmh5dGhtOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc25kX2RtX2ZtX3ZvaWNlIHsKLSB1bnNpZ25lZCBjaGFyIG9wOwotIHVuc2lnbmVkIGNoYXIgdm9pY2U7Ci0gdW5zaWduZWQgY2hhciBhbTsKKyAgdW5zaWduZWQgY2hhciBvcDsKKyAgdW5zaWduZWQgY2hhciB2b2ljZTsKKyAgdW5zaWduZWQgY2hhciBhbTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciB2aWJyYXRvOwotIHVuc2lnbmVkIGNoYXIgZG9fc3VzdGFpbjsKLSB1bnNpZ25lZCBjaGFyIGtiZF9zY2FsZTsKLSB1bnNpZ25lZCBjaGFyIGhhcm1vbmljOworICB1bnNpZ25lZCBjaGFyIHZpYnJhdG87CisgIHVuc2lnbmVkIGNoYXIgZG9fc3VzdGFpbjsKKyAgdW5zaWduZWQgY2hhciBrYmRfc2NhbGU7CisgIHVuc2lnbmVkIGNoYXIgaGFybW9uaWM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgc2NhbGVfbGV2ZWw7Ci0gdW5zaWduZWQgY2hhciB2b2x1bWU7Ci0gdW5zaWduZWQgY2hhciBhdHRhY2s7Ci0gdW5zaWduZWQgY2hhciBkZWNheTsKKyAgdW5zaWduZWQgY2hhciBzY2FsZV9sZXZlbDsKKyAgdW5zaWduZWQgY2hhciB2b2x1bWU7CisgIHVuc2lnbmVkIGNoYXIgYXR0YWNrOworICB1bnNpZ25lZCBjaGFyIGRlY2F5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHN1c3RhaW47Ci0gdW5zaWduZWQgY2hhciByZWxlYXNlOwotIHVuc2lnbmVkIGNoYXIgZmVlZGJhY2s7Ci0gdW5zaWduZWQgY2hhciBjb25uZWN0aW9uOworICB1bnNpZ25lZCBjaGFyIHN1c3RhaW47CisgIHVuc2lnbmVkIGNoYXIgcmVsZWFzZTsKKyAgdW5zaWduZWQgY2hhciBmZWVkYmFjazsKKyAgdW5zaWduZWQgY2hhciBjb25uZWN0aW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGxlZnQ7Ci0gdW5zaWduZWQgY2hhciByaWdodDsKLSB1bnNpZ25lZCBjaGFyIHdhdmVmb3JtOworICB1bnNpZ25lZCBjaGFyIGxlZnQ7CisgIHVuc2lnbmVkIGNoYXIgcmlnaHQ7CisgIHVuc2lnbmVkIGNoYXIgd2F2ZWZvcm07CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBzbmRfZG1fZm1fbm90ZSB7Ci0gdW5zaWduZWQgY2hhciB2b2ljZTsKLSB1bnNpZ25lZCBjaGFyIG9jdGF2ZTsKLSB1bnNpZ25lZCBpbnQgZm51bTsKKyAgdW5zaWduZWQgY2hhciB2b2ljZTsKKyAgdW5zaWduZWQgY2hhciBvY3RhdmU7CisgIHVuc2lnbmVkIGludCBmbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGtleV9vbjsKKyAgdW5zaWduZWQgY2hhciBrZXlfb247CiB9Owogc3RydWN0IHNuZF9kbV9mbV9wYXJhbXMgewotIHVuc2lnbmVkIGNoYXIgYW1fZGVwdGg7CisgIHVuc2lnbmVkIGNoYXIgYW1fZGVwdGg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgdmliX2RlcHRoOwotIHVuc2lnbmVkIGNoYXIga2JkX3NwbGl0OwotIHVuc2lnbmVkIGNoYXIgcmh5dGhtOwotIHVuc2lnbmVkIGNoYXIgYmFzczsKKyAgdW5zaWduZWQgY2hhciB2aWJfZGVwdGg7CisgIHVuc2lnbmVkIGNoYXIga2JkX3NwbGl0OworICB1bnNpZ25lZCBjaGFyIHJoeXRobTsKKyAgdW5zaWduZWQgY2hhciBiYXNzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIHNuYXJlOwotIHVuc2lnbmVkIGNoYXIgdG9tdG9tOwotIHVuc2lnbmVkIGNoYXIgY3ltYmFsOwotIHVuc2lnbmVkIGNoYXIgaGloYXQ7CisgIHVuc2lnbmVkIGNoYXIgc25hcmU7CisgIHVuc2lnbmVkIGNoYXIgdG9tdG9tOworICB1bnNpZ25lZCBjaGFyIGN5bWJhbDsKKyAgdW5zaWduZWQgY2hhciBoaWhhdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBTTkRSVl9ETV9GTV9JT0NUTF9JTkZPIF9JT1IoJ0gnLCAweDIwLCBzdHJ1Y3Qgc25kX2RtX2ZtX2luZm8pCi0jZGVmaW5lIFNORFJWX0RNX0ZNX0lPQ1RMX1JFU0VUIF9JTyAoJ0gnLCAweDIxKQorI2RlZmluZSBTTkRSVl9ETV9GTV9JT0NUTF9SRVNFVCBfSU8oJ0gnLCAweDIxKQogI2RlZmluZSBTTkRSVl9ETV9GTV9JT0NUTF9QTEFZX05PVEUgX0lPVygnSCcsIDB4MjIsIHN0cnVjdCBzbmRfZG1fZm1fbm90ZSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0RNX0ZNX0lPQ1RMX1NFVF9WT0lDRSBfSU9XKCdIJywgMHgyMywgc3RydWN0IHNuZF9kbV9mbV92b2ljZSkKQEAgLTgxLDcgKzgxLDcgQEAKICNkZWZpbmUgU05EUlZfRE1fRk1fSU9DVExfU0VUX01PREUgX0lPVygnSCcsIDB4MjUsIGludCkKICNkZWZpbmUgU05EUlZfRE1fRk1fSU9DVExfU0VUX0NPTk5FQ1RJT04gX0lPVygnSCcsIDB4MjYsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX0RNX0ZNX0lPQ1RMX0NMRUFSX1BBVENIRVMgX0lPICgnSCcsIDB4NDApCisjZGVmaW5lIFNORFJWX0RNX0ZNX0lPQ1RMX0NMRUFSX1BBVENIRVMgX0lPKCdIJywgMHg0MCkKICNkZWZpbmUgU05EUlZfRE1fRk1fT1NTX0lPQ1RMX1JFU0VUIDB4MjAKICNkZWZpbmUgU05EUlZfRE1fRk1fT1NTX0lPQ1RMX1BMQVlfTk9URSAweDIxCiAjZGVmaW5lIFNORFJWX0RNX0ZNX09TU19JT0NUTF9TRVRfVk9JQ0UgMHgyMgpAQCAtOTQsMTMgKzk0LDEzIEBACiAjZGVmaW5lIEZNX0tFWV8yT1AgIjJPUFwwMzIiCiAjZGVmaW5lIEZNX0tFWV80T1AgIjRPUFwwMzIiCiBzdHJ1Y3Qgc2JpX3BhdGNoIHsKLSB1bnNpZ25lZCBjaGFyIHByb2c7CisgIHVuc2lnbmVkIGNoYXIgcHJvZzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBiYW5rOwotIGNoYXIga2V5WzRdOwotIGNoYXIgbmFtZVsyNV07Ci0gY2hhciBleHRlbnNpb25bN107CisgIHVuc2lnbmVkIGNoYXIgYmFuazsKKyAgY2hhciBrZXlbNF07CisgIGNoYXIgbmFtZVsyNV07CisgIGNoYXIgZXh0ZW5zaW9uWzddOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGRhdGFbMzJdOworICB1bnNpZ25lZCBjaGFyIGRhdGFbMzJdOwogfTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9jb21wcmVzc19vZmZsb2FkLmggYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2NvbXByZXNzX29mZmxvYWQuaAppbmRleCA1YjA2NzQxLi44OTI4Y2JmIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2NvbXByZXNzX29mZmxvYWQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2NvbXByZXNzX29mZmxvYWQuaApAQCAtMjQsNzIgKzI0LDcyIEBACiAjaW5jbHVkZSA8c291bmQvY29tcHJlc3NfcGFyYW1zLmg+CiAjZGVmaW5lIFNORFJWX0NPTVBSRVNTX1ZFUlNJT04gU05EUlZfUFJPVE9DT0xfVkVSU0lPTigwLCAxLCAyKQogc3RydWN0IHNuZF9jb21wcmVzc2VkX2J1ZmZlciB7Ci0gX191MzIgZnJhZ21lbnRfc2l6ZTsKKyAgX191MzIgZnJhZ21lbnRfc2l6ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZnJhZ21lbnRzOwotfTsKKyAgX191MzIgZnJhZ21lbnRzOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKIHN0cnVjdCBzbmRfY29tcHJfcGFyYW1zIHsKLSBzdHJ1Y3Qgc25kX2NvbXByZXNzZWRfYnVmZmVyIGJ1ZmZlcjsKKyAgc3RydWN0IHNuZF9jb21wcmVzc2VkX2J1ZmZlciBidWZmZXI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzbmRfY29kZWMgY29kZWM7Ci0gX191OCBub193YWtlX21vZGU7Ci19OworICBzdHJ1Y3Qgc25kX2NvZGVjIGNvZGVjOworICBfX3U4IG5vX3dha2VfbW9kZTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CiBzdHJ1Y3Qgc25kX2NvbXByX3RzdGFtcCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGJ5dGVfb2Zmc2V0OwotIF9fdTMyIGNvcGllZF90b3RhbDsKLSBfX3UzMiBwY21fZnJhbWVzOwotIF9fdTMyIHBjbV9pb19mcmFtZXM7CisgIF9fdTMyIGJ5dGVfb2Zmc2V0OworICBfX3UzMiBjb3BpZWRfdG90YWw7CisgIF9fdTMyIHBjbV9mcmFtZXM7CisgIF9fdTMyIHBjbV9pb19mcmFtZXM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNhbXBsaW5nX3JhdGU7Ci19OworICBfX3UzMiBzYW1wbGluZ19yYXRlOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKIHN0cnVjdCBzbmRfY29tcHJfYXZhaWwgewotIF9fdTY0IGF2YWlsOworICBfX3U2NCBhdmFpbDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNuZF9jb21wcl90c3RhbXAgdHN0YW1wOwotfTsKKyAgc3RydWN0IHNuZF9jb21wcl90c3RhbXAgdHN0YW1wOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKIGVudW0gc25kX2NvbXByX2RpcmVjdGlvbiB7Ci0gU05EX0NPTVBSRVNTX1BMQVlCQUNLID0gMCwKKyAgU05EX0NPTVBSRVNTX1BMQVlCQUNLID0gMCwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gU05EX0NPTVBSRVNTX0NBUFRVUkUKKyAgU05EX0NPTVBSRVNTX0NBUFRVUkUKIH07CiBzdHJ1Y3Qgc25kX2NvbXByX2NhcHMgewotIF9fdTMyIG51bV9jb2RlY3M7CisgIF9fdTMyIG51bV9jb2RlY3M7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGRpcmVjdGlvbjsKLSBfX3UzMiBtaW5fZnJhZ21lbnRfc2l6ZTsKLSBfX3UzMiBtYXhfZnJhZ21lbnRfc2l6ZTsKLSBfX3UzMiBtaW5fZnJhZ21lbnRzOworICBfX3UzMiBkaXJlY3Rpb247CisgIF9fdTMyIG1pbl9mcmFnbWVudF9zaXplOworICBfX3UzMiBtYXhfZnJhZ21lbnRfc2l6ZTsKKyAgX191MzIgbWluX2ZyYWdtZW50czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbWF4X2ZyYWdtZW50czsKLSBfX3UzMiBjb2RlY3NbTUFYX05VTV9DT0RFQ1NdOwotIF9fdTMyIHJlc2VydmVkWzExXTsKLX07CisgIF9fdTMyIG1heF9mcmFnbWVudHM7CisgIF9fdTMyIGNvZGVjc1tNQVhfTlVNX0NPREVDU107CisgIF9fdTMyIHJlc2VydmVkWzExXTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9jb21wcl9jb2RlY19jYXBzIHsKLSBfX3UzMiBjb2RlYzsKLSBfX3UzMiBudW1fZGVzY3JpcHRvcnM7Ci0gc3RydWN0IHNuZF9jb2RlY19kZXNjIGRlc2NyaXB0b3JbTUFYX05VTV9DT0RFQ19ERVNDUklQVE9SU107CisgIF9fdTMyIGNvZGVjOworICBfX3UzMiBudW1fZGVzY3JpcHRvcnM7CisgIHN0cnVjdCBzbmRfY29kZWNfZGVzYyBkZXNjcmlwdG9yW01BWF9OVU1fQ09ERUNfREVTQ1JJUFRPUlNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOwogZW51bSB7Ci0gU05EUlZfQ09NUFJFU1NfRU5DT0RFUl9QQURESU5HID0gMSwKLSBTTkRSVl9DT01QUkVTU19FTkNPREVSX0RFTEFZID0gMiwKKyAgU05EUlZfQ09NUFJFU1NfRU5DT0RFUl9QQURESU5HID0gMSwKKyAgU05EUlZfQ09NUFJFU1NfRU5DT0RFUl9ERUxBWSA9IDIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzbmRfY29tcHJfbWV0YWRhdGEgewotIF9fdTMyIGtleTsKLSBfX3UzMiB2YWx1ZVs4XTsKKyAgX191MzIga2V5OworICBfX3UzMiB2YWx1ZVs4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19OworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKICNkZWZpbmUgU05EUlZfQ09NUFJFU1NfSU9DVExfVkVSU0lPTiBfSU9SKCdDJywgMHgwMCwgaW50KQogI2RlZmluZSBTTkRSVl9DT01QUkVTU19HRVRfQ0FQUyBfSU9XUignQycsIDB4MTAsIHN0cnVjdCBzbmRfY29tcHJfY2FwcykKLSNkZWZpbmUgU05EUlZfQ09NUFJFU1NfR0VUX0NPREVDX0NBUFMgX0lPV1IoJ0MnLCAweDExLCAgc3RydWN0IHNuZF9jb21wcl9jb2RlY19jYXBzKQorI2RlZmluZSBTTkRSVl9DT01QUkVTU19HRVRfQ09ERUNfQ0FQUyBfSU9XUignQycsIDB4MTEsIHN0cnVjdCBzbmRfY29tcHJfY29kZWNfY2FwcykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0NPTVBSRVNTX1NFVF9QQVJBTVMgX0lPVygnQycsIDB4MTIsIHN0cnVjdCBzbmRfY29tcHJfcGFyYW1zKQogI2RlZmluZSBTTkRSVl9DT01QUkVTU19HRVRfUEFSQU1TIF9JT1IoJ0MnLCAweDEzLCBzdHJ1Y3Qgc25kX2NvZGVjKQotI2RlZmluZSBTTkRSVl9DT01QUkVTU19TRVRfTUVUQURBVEEgX0lPVygnQycsIDB4MTQsICBzdHJ1Y3Qgc25kX2NvbXByX21ldGFkYXRhKQotI2RlZmluZSBTTkRSVl9DT01QUkVTU19HRVRfTUVUQURBVEEgX0lPV1IoJ0MnLCAweDE1LCAgc3RydWN0IHNuZF9jb21wcl9tZXRhZGF0YSkKKyNkZWZpbmUgU05EUlZfQ09NUFJFU1NfU0VUX01FVEFEQVRBIF9JT1coJ0MnLCAweDE0LCBzdHJ1Y3Qgc25kX2NvbXByX21ldGFkYXRhKQorI2RlZmluZSBTTkRSVl9DT01QUkVTU19HRVRfTUVUQURBVEEgX0lPV1IoJ0MnLCAweDE1LCBzdHJ1Y3Qgc25kX2NvbXByX21ldGFkYXRhKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfQ09NUFJFU1NfVFNUQU1QIF9JT1IoJ0MnLCAweDIwLCBzdHJ1Y3Qgc25kX2NvbXByX3RzdGFtcCkKICNkZWZpbmUgU05EUlZfQ09NUFJFU1NfQVZBSUwgX0lPUignQycsIDB4MjEsIHN0cnVjdCBzbmRfY29tcHJfYXZhaWwpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2NvbXByZXNzX3BhcmFtcy5oIGIvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9jb21wcmVzc19wYXJhbXMuaAppbmRleCA4YWEwYmZlLi5iMTcwM2RjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2NvbXByZXNzX3BhcmFtcy5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvY29tcHJlc3NfcGFyYW1zLmgKQEAgLTE3MSw3NSArMTcxLDc1IEBACiAjZGVmaW5lIFNORF9SQVRFQ09OVFJPTE1PREVfVkFSSUFCTEVCSVRSQVRFICgoX191MzIpIDB4MDAwMDAwMDIpCiBzdHJ1Y3Qgc25kX2VuY193bWEgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzdXBlcl9ibG9ja19hbGlnbjsKKyAgX191MzIgc3VwZXJfYmxvY2tfYWxpZ247CiB9Owogc3RydWN0IHNuZF9lbmNfdm9yYmlzIHsKLSBfX3MzMiBxdWFsaXR5OworICBfX3MzMiBxdWFsaXR5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtYW5hZ2VkOwotIF9fdTMyIG1heF9iaXRfcmF0ZTsKLSBfX3UzMiBtaW5fYml0X3JhdGU7Ci0gX191MzIgZG93bm1peDsKKyAgX191MzIgbWFuYWdlZDsKKyAgX191MzIgbWF4X2JpdF9yYXRlOworICBfX3UzMiBtaW5fYml0X3JhdGU7CisgIF9fdTMyIGRvd25taXg7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotfTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CiBzdHJ1Y3Qgc25kX2VuY19yZWFsIHsKLSBfX3UzMiBxdWFudF9iaXRzOwotIF9fdTMyIHN0YXJ0X3JlZ2lvbjsKKyAgX191MzIgcXVhbnRfYml0czsKKyAgX191MzIgc3RhcnRfcmVnaW9uOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBudW1fcmVnaW9uczsKLX07CisgIF9fdTMyIG51bV9yZWdpb25zOworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKIHN0cnVjdCBzbmRfZW5jX2ZsYWMgewotIF9fdTMyIG51bTsKKyAgX191MzIgbnVtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBnYWluOwotfTsKKyAgX191MzIgZ2FpbjsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CiBzdHJ1Y3Qgc25kX2VuY19nZW5lcmljIHsKLSBfX3UzMiBidzsKKyAgX191MzIgYnc7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fczMyIHJlc2VydmVkWzE1XTsKLX07CisgIF9fczMyIHJlc2VydmVkWzE1XTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkLCBhbGlnbmVkKDQpKSk7CiB1bmlvbiBzbmRfY29kZWNfb3B0aW9ucyB7Ci0gc3RydWN0IHNuZF9lbmNfd21hIHdtYTsKKyAgc3RydWN0IHNuZF9lbmNfd21hIHdtYTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IHNuZF9lbmNfdm9yYmlzIHZvcmJpczsKLSBzdHJ1Y3Qgc25kX2VuY19yZWFsIHJlYWw7Ci0gc3RydWN0IHNuZF9lbmNfZmxhYyBmbGFjOwotIHN0cnVjdCBzbmRfZW5jX2dlbmVyaWMgZ2VuZXJpYzsKKyAgc3RydWN0IHNuZF9lbmNfdm9yYmlzIHZvcmJpczsKKyAgc3RydWN0IHNuZF9lbmNfcmVhbCByZWFsOworICBzdHJ1Y3Qgc25kX2VuY19mbGFjIGZsYWM7CisgIHN0cnVjdCBzbmRfZW5jX2dlbmVyaWMgZ2VuZXJpYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi19OworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQsIGFsaWduZWQoNCkpKTsKIHN0cnVjdCBzbmRfY29kZWNfZGVzYyB7Ci0gX191MzIgbWF4X2NoOwotIF9fdTMyIHNhbXBsZV9yYXRlc1tNQVhfTlVNX1NBTVBMRV9SQVRFU107CisgIF9fdTMyIG1heF9jaDsKKyAgX191MzIgc2FtcGxlX3JhdGVzW01BWF9OVU1fU0FNUExFX1JBVEVTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgbnVtX3NhbXBsZV9yYXRlczsKLSBfX3UzMiBiaXRfcmF0ZVtNQVhfTlVNX0JJVFJBVEVTXTsKLSBfX3UzMiBudW1fYml0cmF0ZXM7Ci0gX191MzIgcmF0ZV9jb250cm9sOworICBfX3UzMiBudW1fc2FtcGxlX3JhdGVzOworICBfX3UzMiBiaXRfcmF0ZVtNQVhfTlVNX0JJVFJBVEVTXTsKKyAgX191MzIgbnVtX2JpdHJhdGVzOworICBfX3UzMiByYXRlX2NvbnRyb2w7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHByb2ZpbGVzOwotIF9fdTMyIG1vZGVzOwotIF9fdTMyIGZvcm1hdHM7Ci0gX191MzIgbWluX2J1ZmZlcjsKKyAgX191MzIgcHJvZmlsZXM7CisgIF9fdTMyIG1vZGVzOworICBfX3UzMiBmb3JtYXRzOworICBfX3UzMiBtaW5fYnVmZmVyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiByZXNlcnZlZFsxNV07Ci19OworICBfX3UzMiByZXNlcnZlZFsxNV07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOwogc3RydWN0IHNuZF9jb2RlYyB7Ci0gX191MzIgaWQ7CisgIF9fdTMyIGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBjaF9pbjsKLSBfX3UzMiBjaF9vdXQ7Ci0gX191MzIgc2FtcGxlX3JhdGU7Ci0gX191MzIgYml0X3JhdGU7CisgIF9fdTMyIGNoX2luOworICBfX3UzMiBjaF9vdXQ7CisgIF9fdTMyIHNhbXBsZV9yYXRlOworICBfX3UzMiBiaXRfcmF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgcmF0ZV9jb250cm9sOwotIF9fdTMyIHByb2ZpbGU7Ci0gX191MzIgbGV2ZWw7Ci0gX191MzIgY2hfbW9kZTsKKyAgX191MzIgcmF0ZV9jb250cm9sOworICBfX3UzMiBwcm9maWxlOworICBfX3UzMiBsZXZlbDsKKyAgX191MzIgY2hfbW9kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZm9ybWF0OwotIF9fdTMyIGFsaWduOwotIHVuaW9uIHNuZF9jb2RlY19vcHRpb25zIG9wdGlvbnM7Ci0gX191MzIgcmVzZXJ2ZWRbM107CisgIF9fdTMyIGZvcm1hdDsKKyAgX191MzIgYWxpZ247CisgIHVuaW9uIHNuZF9jb2RlY19vcHRpb25zIG9wdGlvbnM7CisgIF9fdTMyIHJlc2VydmVkWzNdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLX07Cit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCwgYWxpZ25lZCg0KSkpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2VtdTEwazEuaCBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvZW11MTBrMS5oCmluZGV4IGNiZmM5ZjkuLjk3MDEyMjcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkvc291bmQvZW11MTBrMS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvZW11MTBrMS5oCkBAIC0yNjksMTQgKzI2OSwxNCBAQAogI2RlZmluZSBUQU5LTUVNQUREUlJFR19XUklURSAweDAwMjAwMDAwCiAjZGVmaW5lIFRBTktNRU1BRERSUkVHX1JFQUQgMHgwMDEwMDAwMAogc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9pbmZvIHsKLSB1bnNpZ25lZCBpbnQgaW50ZXJuYWxfdHJhbV9zaXplOworICB1bnNpZ25lZCBpbnQgaW50ZXJuYWxfdHJhbV9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgZXh0ZXJuYWxfdHJhbV9zaXplOwotIGNoYXIgZnhidXNfbmFtZXNbMTZdWzMyXTsKLSBjaGFyIGV4dGluX25hbWVzWzE2XVszMl07Ci0gY2hhciBleHRvdXRfbmFtZXNbMzJdWzMyXTsKKyAgdW5zaWduZWQgaW50IGV4dGVybmFsX3RyYW1fc2l6ZTsKKyAgY2hhciBmeGJ1c19uYW1lc1sxNl1bMzJdOworICBjaGFyIGV4dGluX25hbWVzWzE2XVszMl07CisgIGNoYXIgZXh0b3V0X25hbWVzWzMyXVszMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBncHJfY29udHJvbHM7CisgIHVuc2lnbmVkIGludCBncHJfY29udHJvbHM7CiB9OwogI2RlZmluZSBFTVUxMEsxX0dQUl9UUkFOU0xBVElPTl9OT05FIDAKICNkZWZpbmUgRU1VMTBLMV9HUFJfVFJBTlNMQVRJT05fVEFCTEUxMDAgMQpAQCAtMjg2LDk3ICsyODYsOTcgQEAKICNkZWZpbmUgRU1VMTBLMV9HUFJfVFJBTlNMQVRJT05fT05PRkYgNAogc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9jb250cm9sX2dwciB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQgaWQ7Ci0gdW5zaWduZWQgaW50IHZjb3VudDsKLSB1bnNpZ25lZCBpbnQgY291bnQ7Ci0gdW5zaWduZWQgc2hvcnQgZ3ByWzMyXTsKKyAgc3RydWN0IHNuZF9jdGxfZWxlbV9pZCBpZDsKKyAgdW5zaWduZWQgaW50IHZjb3VudDsKKyAgdW5zaWduZWQgaW50IGNvdW50OworICB1bnNpZ25lZCBzaG9ydCBncHJbMzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgdmFsdWVbMzJdOwotIHVuc2lnbmVkIGludCBtaW47Ci0gdW5zaWduZWQgaW50IG1heDsKLSB1bnNpZ25lZCBpbnQgdHJhbnNsYXRpb247CisgIHVuc2lnbmVkIGludCB2YWx1ZVszMl07CisgIHVuc2lnbmVkIGludCBtaW47CisgIHVuc2lnbmVkIGludCBtYXg7CisgIHVuc2lnbmVkIGludCB0cmFuc2xhdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gY29uc3QgdW5zaWduZWQgaW50ICp0bHY7CisgIGNvbnN0IHVuc2lnbmVkIGludCAqIHRsdjsKIH07CiBzdHJ1Y3Qgc25kX2VtdTEwazFfZng4MDEwX2NvbnRyb2xfb2xkX2dwciB7Ci0gc3RydWN0IHNuZF9jdGxfZWxlbV9pZCBpZDsKKyAgc3RydWN0IHNuZF9jdGxfZWxlbV9pZCBpZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHZjb3VudDsKLSB1bnNpZ25lZCBpbnQgY291bnQ7Ci0gdW5zaWduZWQgc2hvcnQgZ3ByWzMyXTsKLSB1bnNpZ25lZCBpbnQgdmFsdWVbMzJdOworICB1bnNpZ25lZCBpbnQgdmNvdW50OworICB1bnNpZ25lZCBpbnQgY291bnQ7CisgIHVuc2lnbmVkIHNob3J0IGdwclszMl07CisgIHVuc2lnbmVkIGludCB2YWx1ZVszMl07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBtaW47Ci0gdW5zaWduZWQgaW50IG1heDsKLSB1bnNpZ25lZCBpbnQgdHJhbnNsYXRpb247CisgIHVuc2lnbmVkIGludCBtaW47CisgIHVuc2lnbmVkIGludCBtYXg7CisgIHVuc2lnbmVkIGludCB0cmFuc2xhdGlvbjsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9jb2RlIHsKLSBjaGFyIG5hbWVbMTI4XTsKLSBERUNMQVJFX0JJVE1BUChncHJfdmFsaWQsIDB4MjAwKTsKLSBfX3UzMiBfX3VzZXIgKmdwcl9tYXA7CisgIGNoYXIgbmFtZVsxMjhdOworICBERUNMQVJFX0JJVE1BUChncHJfdmFsaWQsIDB4MjAwKTsKKyAgX191MzIgX191c2VyICogZ3ByX21hcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGdwcl9hZGRfY29udHJvbF9jb3VudDsKLSBzdHJ1Y3Qgc25kX2VtdTEwazFfZng4MDEwX2NvbnRyb2xfZ3ByIF9fdXNlciAqZ3ByX2FkZF9jb250cm9sczsKLSB1bnNpZ25lZCBpbnQgZ3ByX2RlbF9jb250cm9sX2NvdW50OwotIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQgX191c2VyICpncHJfZGVsX2NvbnRyb2xzOworICB1bnNpZ25lZCBpbnQgZ3ByX2FkZF9jb250cm9sX2NvdW50OworICBzdHJ1Y3Qgc25kX2VtdTEwazFfZng4MDEwX2NvbnRyb2xfZ3ByIF9fdXNlciAqIGdwcl9hZGRfY29udHJvbHM7CisgIHVuc2lnbmVkIGludCBncHJfZGVsX2NvbnRyb2xfY291bnQ7CisgIHN0cnVjdCBzbmRfY3RsX2VsZW1faWQgX191c2VyICogZ3ByX2RlbF9jb250cm9sczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGdwcl9saXN0X2NvbnRyb2xfY291bnQ7Ci0gdW5zaWduZWQgaW50IGdwcl9saXN0X2NvbnRyb2xfdG90YWw7Ci0gc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9jb250cm9sX2dwciBfX3VzZXIgKmdwcl9saXN0X2NvbnRyb2xzOwotIERFQ0xBUkVfQklUTUFQKHRyYW1fdmFsaWQsIDB4MTAwKTsKKyAgdW5zaWduZWQgaW50IGdwcl9saXN0X2NvbnRyb2xfY291bnQ7CisgIHVuc2lnbmVkIGludCBncHJfbGlzdF9jb250cm9sX3RvdGFsOworICBzdHJ1Y3Qgc25kX2VtdTEwazFfZng4MDEwX2NvbnRyb2xfZ3ByIF9fdXNlciAqIGdwcl9saXN0X2NvbnRyb2xzOworICBERUNMQVJFX0JJVE1BUCh0cmFtX3ZhbGlkLCAweDEwMCk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIF9fdXNlciAqdHJhbV9kYXRhX21hcDsKLSBfX3UzMiBfX3VzZXIgKnRyYW1fYWRkcl9tYXA7Ci0gREVDTEFSRV9CSVRNQVAoY29kZV92YWxpZCwgMTAyNCk7Ci0gX191MzIgX191c2VyICpjb2RlOworICBfX3UzMiBfX3VzZXIgKiB0cmFtX2RhdGFfbWFwOworICBfX3UzMiBfX3VzZXIgKiB0cmFtX2FkZHJfbWFwOworICBERUNMQVJFX0JJVE1BUChjb2RlX3ZhbGlkLCAxMDI0KTsKKyAgX191MzIgX191c2VyICogY29kZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF90cmFtIHsKLSB1bnNpZ25lZCBpbnQgYWRkcmVzczsKLSB1bnNpZ25lZCBpbnQgc2l6ZTsKKyAgdW5zaWduZWQgaW50IGFkZHJlc3M7CisgIHVuc2lnbmVkIGludCBzaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgKnNhbXBsZXM7CisgIHVuc2lnbmVkIGludCAqIHNhbXBsZXM7CiB9Owogc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9wY21fcmVjIHsKLSB1bnNpZ25lZCBpbnQgc3Vic3RyZWFtOworICB1bnNpZ25lZCBpbnQgc3Vic3RyZWFtOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmVzMTsKLSB1bnNpZ25lZCBpbnQgY2hhbm5lbHM7Ci0gdW5zaWduZWQgaW50IHRyYW1fc3RhcnQ7Ci0gdW5zaWduZWQgaW50IGJ1ZmZlcl9zaXplOworICB1bnNpZ25lZCBpbnQgcmVzMTsKKyAgdW5zaWduZWQgaW50IGNoYW5uZWxzOworICB1bnNpZ25lZCBpbnQgdHJhbV9zdGFydDsKKyAgdW5zaWduZWQgaW50IGJ1ZmZlcl9zaXplOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBncHJfc2l6ZTsKLSB1bnNpZ25lZCBzaG9ydCBncHJfcHRyOwotIHVuc2lnbmVkIHNob3J0IGdwcl9jb3VudDsKLSB1bnNpZ25lZCBzaG9ydCBncHJfdG1wY291bnQ7CisgIHVuc2lnbmVkIHNob3J0IGdwcl9zaXplOworICB1bnNpZ25lZCBzaG9ydCBncHJfcHRyOworICB1bnNpZ25lZCBzaG9ydCBncHJfY291bnQ7CisgIHVuc2lnbmVkIHNob3J0IGdwcl90bXBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgZ3ByX3RyaWdnZXI7Ci0gdW5zaWduZWQgc2hvcnQgZ3ByX3J1bm5pbmc7Ci0gdW5zaWduZWQgY2hhciBwYWQ7Ci0gdW5zaWduZWQgY2hhciBldHJhbVszMl07CisgIHVuc2lnbmVkIHNob3J0IGdwcl90cmlnZ2VyOworICB1bnNpZ25lZCBzaG9ydCBncHJfcnVubmluZzsKKyAgdW5zaWduZWQgY2hhciBwYWQ7CisgIHVuc2lnbmVkIGNoYXIgZXRyYW1bMzJdOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmVzMjsKKyAgdW5zaWduZWQgaW50IHJlczI7CiB9OwogI2RlZmluZSBTTkRSVl9FTVUxMEsxX1ZFUlNJT04gU05EUlZfUFJPVE9DT0xfVkVSU0lPTigxLCAwLCAxKQotI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX0lORk8gX0lPUiAoJ0gnLCAweDEwLCBzdHJ1Y3Qgc25kX2VtdTEwazFfZng4MDEwX2luZm8pCisjZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfSU5GTyBfSU9SKCdIJywgMHgxMCwgc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9pbmZvKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9DT0RFX1BPS0UgX0lPVyAoJ0gnLCAweDExLCBzdHJ1Y3Qgc25kX2VtdTEwazFfZng4MDEwX2NvZGUpCisjZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfQ09ERV9QT0tFIF9JT1coJ0gnLCAweDExLCBzdHJ1Y3Qgc25kX2VtdTEwazFfZng4MDEwX2NvZGUpCiAjZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfQ09ERV9QRUVLIF9JT1dSKCdIJywgMHgxMiwgc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9jb2RlKQotI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX1RSQU1fU0VUVVAgX0lPVyAoJ0gnLCAweDIwLCBpbnQpCi0jZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfVFJBTV9QT0tFIF9JT1cgKCdIJywgMHgyMSwgc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF90cmFtKQorI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX1RSQU1fU0VUVVAgX0lPVygnSCcsIDB4MjAsIGludCkKKyNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9UUkFNX1BPS0UgX0lPVygnSCcsIDB4MjEsIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfdHJhbSkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfVFJBTV9QRUVLIF9JT1dSKCdIJywgMHgyMiwgc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF90cmFtKQotI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX1BDTV9QT0tFIF9JT1cgKCdIJywgMHgzMCwgc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9wY21fcmVjKQorI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX1BDTV9QT0tFIF9JT1coJ0gnLCAweDMwLCBzdHJ1Y3Qgc25kX2VtdTEwazFfZng4MDEwX3BjbV9yZWMpCiAjZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfUENNX1BFRUsgX0lPV1IoJ0gnLCAweDMxLCBzdHJ1Y3Qgc25kX2VtdTEwazFfZng4MDEwX3BjbV9yZWMpCi0jZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfUFZFUlNJT04gX0lPUiAoJ0gnLCAweDQwLCBpbnQpCisjZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfUFZFUlNJT04gX0lPUignSCcsIDB4NDAsIGludCkKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfU1RPUCBfSU8gKCdIJywgMHg4MCkKLSNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9DT05USU5VRSBfSU8gKCdIJywgMHg4MSkKLSNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9aRVJPX1RSQU1fQ09VTlRFUiBfSU8gKCdIJywgMHg4MikKLSNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9TSU5HTEVfU1RFUCBfSU9XICgnSCcsIDB4ODMsIGludCkKKyNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9TVE9QIF9JTygnSCcsIDB4ODApCisjZGVmaW5lIFNORFJWX0VNVTEwSzFfSU9DVExfQ09OVElOVUUgX0lPKCdIJywgMHg4MSkKKyNkZWZpbmUgU05EUlZfRU1VMTBLMV9JT0NUTF9aRVJPX1RSQU1fQ09VTlRFUiBfSU8oJ0gnLCAweDgyKQorI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX1NJTkdMRV9TVEVQIF9JT1coJ0gnLCAweDgzLCBpbnQpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX0RCR19SRUFEIF9JT1IgKCdIJywgMHg4NCwgaW50KQorI2RlZmluZSBTTkRSVl9FTVUxMEsxX0lPQ1RMX0RCR19SRUFEIF9JT1IoJ0gnLCAweDg0LCBpbnQpCiB0eXBlZGVmIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfaW5mbyBlbXUxMGsxX2Z4ODAxMF9pbmZvX3Q7CiB0eXBlZGVmIHN0cnVjdCBzbmRfZW11MTBrMV9meDgwMTBfY29udHJvbF9ncHIgZW11MTBrMV9meDgwMTBfY29udHJvbF9ncHJfdDsKIHR5cGVkZWYgc3RydWN0IHNuZF9lbXUxMGsxX2Z4ODAxMF9jb2RlIGVtdTEwazFfZng4MDEwX2NvZGVfdDsKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvc291bmQvZmlyZXdpcmUuaCBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvZmlyZXdpcmUuaAppbmRleCA1ZDBmZDE0Li43OTY1ZmM0IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2ZpcmV3aXJlLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9maXJld2lyZS5oCkBAIC0xOSw0MCArMTksNjMgQEAKICNpZm5kZWYgX1VBUElfU09VTkRfRklSRVdJUkVfSF9JTkNMVURFRAogI2RlZmluZSBfVUFQSV9TT1VORF9GSVJFV0lSRV9IX0lOQ0xVREVECiAjaW5jbHVkZSA8bGludXgvaW9jdGwuaD4KKyNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfRklSRVdJUkVfRVZFTlRfTE9DS19TVEFUVVMgMHgwMDAwMTBjYwotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfRklSRVdJUkVfRVZFTlRfRElDRV9OT1RJRklDQVRJT04gMHhkMWNlMDA0ZQorI2RlZmluZSBTTkRSVl9GSVJFV0lSRV9FVkVOVF9FRldfUkVTUE9OU0UgMHg0ZTYxNzQ3NQogc3RydWN0IHNuZF9maXJld2lyZV9ldmVudF9jb21tb24gewotIHVuc2lnbmVkIGludCB0eXBlOwotfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIHVuc2lnbmVkIGludCB0eXBlOworfTsKIHN0cnVjdCBzbmRfZmlyZXdpcmVfZXZlbnRfbG9ja19zdGF0dXMgewotIHVuc2lnbmVkIGludCB0eXBlOwotIHVuc2lnbmVkIGludCBzdGF0dXM7CisgIHVuc2lnbmVkIGludCB0eXBlOworLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyAgdW5zaWduZWQgaW50IHN0YXR1czsKK307CitzdHJ1Y3Qgc25kX2ZpcmV3aXJlX2V2ZW50X2RpY2Vfbm90aWZpY2F0aW9uIHsKKyAgdW5zaWduZWQgaW50IHR5cGU7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICB1bnNpZ25lZCBpbnQgbm90aWZpY2F0aW9uOworfTsKKyNkZWZpbmUgU05EX0VGV19UUkFOU0FDVElPTl9VU0VSX1NFUU5VTV9NQVggKChfX3UzMikgKChfX3UxNikgfjApIC0gMSkKK3N0cnVjdCBzbmRfZWZ3X3RyYW5zYWN0aW9uIHsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIF9fYmUzMiBsZW5ndGg7CisgIF9fYmUzMiB2ZXJzaW9uOworICBfX2JlMzIgc2VxbnVtOworICBfX2JlMzIgY2F0ZWdvcnk7CisvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBfX2JlMzIgY29tbWFuZDsKKyAgX19iZTMyIHN0YXR1czsKKyAgX19iZTMyIHBhcmFtc1swXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotc3RydWN0IHNuZF9maXJld2lyZV9ldmVudF9kaWNlX25vdGlmaWNhdGlvbiB7Ci0gdW5zaWduZWQgaW50IHR5cGU7Ci0gdW5zaWduZWQgaW50IG5vdGlmaWNhdGlvbjsKK3N0cnVjdCBzbmRfZmlyZXdpcmVfZXZlbnRfZWZ3X3Jlc3BvbnNlIHsKKyAgdW5zaWduZWQgaW50IHR5cGU7CisgIF9fYmUzMiByZXNwb25zZVswXTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogdW5pb24gc25kX2ZpcmV3aXJlX2V2ZW50IHsKLSBzdHJ1Y3Qgc25kX2ZpcmV3aXJlX2V2ZW50X2NvbW1vbiBjb21tb247Ci0gc3RydWN0IHNuZF9maXJld2lyZV9ldmVudF9sb2NrX3N0YXR1cyBsb2NrX3N0YXR1czsKLSBzdHJ1Y3Qgc25kX2ZpcmV3aXJlX2V2ZW50X2RpY2Vfbm90aWZpY2F0aW9uIGRpY2Vfbm90aWZpY2F0aW9uOworICBzdHJ1Y3Qgc25kX2ZpcmV3aXJlX2V2ZW50X2NvbW1vbiBjb21tb247CisgIHN0cnVjdCBzbmRfZmlyZXdpcmVfZXZlbnRfbG9ja19zdGF0dXMgbG9ja19zdGF0dXM7CisgIHN0cnVjdCBzbmRfZmlyZXdpcmVfZXZlbnRfZGljZV9ub3RpZmljYXRpb24gZGljZV9ub3RpZmljYXRpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLworICBzdHJ1Y3Qgc25kX2ZpcmV3aXJlX2V2ZW50X2Vmd19yZXNwb25zZSBlZndfcmVzcG9uc2U7CiB9OwogI2RlZmluZSBTTkRSVl9GSVJFV0lSRV9JT0NUTF9HRVRfSU5GTyBfSU9SKCdIJywgMHhmOCwgc3RydWN0IHNuZF9maXJld2lyZV9nZXRfaW5mbykKICNkZWZpbmUgU05EUlZfRklSRVdJUkVfSU9DVExfTE9DSyBfSU8oJ0gnLCAweGY5KQorLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfRklSRVdJUkVfSU9DVExfVU5MT0NLIF9JTygnSCcsIDB4ZmEpCi0vKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9GSVJFV0lSRV9UWVBFX0RJQ0UgMQotc3RydWN0IHNuZF9maXJld2lyZV9nZXRfaW5mbyB7Ci0gdW5zaWduZWQgaW50IHR5cGU7Ci0gdW5zaWduZWQgaW50IGNhcmQ7CisjZGVmaW5lIFNORFJWX0ZJUkVXSVJFX1RZUEVfRklSRVdPUktTIDIKKyNkZWZpbmUgU05EUlZfRklSRVdJUkVfVFlQRV9CRUJPQiAzCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgZ3VpZFs4XTsKLSBjaGFyIGRldmljZV9uYW1lWzE2XTsKK3N0cnVjdCBzbmRfZmlyZXdpcmVfZ2V0X2luZm8geworICB1bnNpZ25lZCBpbnQgdHlwZTsKKyAgdW5zaWduZWQgaW50IGNhcmQ7CisgIHVuc2lnbmVkIGNoYXIgZ3VpZFs4XTsKKy8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisgIGNoYXIgZGV2aWNlX25hbWVbMTZdOwogfTsKICNlbmRpZgotLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvc291bmQvaGRzcC5oIGIvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9oZHNwLmgKaW5kZXggODE4NTViNy4uZDIxNTVlNCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9oZHNwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9oZHNwLmgKQEAgLTIyLDc4ICsyMiw3OCBAQAogI2RlZmluZSBIRFNQX01BVFJJWF9NSVhFUl9TSVpFIDIwNDgKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIEhEU1BfSU9fVHlwZSB7Ci0gRGlnaWZhY2UsCi0gTXVsdGlmYWNlLAotIEg5NjUyLAorICBEaWdpZmFjZSwKKyAgTXVsdGlmYWNlLAorICBIOTY1MiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gSDk2MzIsCi0gUlBNLAotIFVuZGVmaW5lZCwKKyAgSDk2MzIsCisgIFJQTSwKKyAgVW5kZWZpbmVkLAogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaGRzcF9wZWFrX3JtcyB7Ci0gX191MzIgaW5wdXRfcGVha3NbMjZdOwotIF9fdTMyIHBsYXliYWNrX3BlYWtzWzI2XTsKLSBfX3UzMiBvdXRwdXRfcGVha3NbMjhdOworICBfX3UzMiBpbnB1dF9wZWFrc1syNl07CisgIF9fdTMyIHBsYXliYWNrX3BlYWtzWzI2XTsKKyAgX191MzIgb3V0cHV0X3BlYWtzWzI4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgaW5wdXRfcm1zWzI2XTsKLSBfX3U2NCBwbGF5YmFja19ybXNbMjZdOwotIF9fdTY0IG91dHB1dF9ybXNbMjZdOworICBfX3U2NCBpbnB1dF9ybXNbMjZdOworICBfX3U2NCBwbGF5YmFja19ybXNbMjZdOworICBfX3U2NCBvdXRwdXRfcm1zWzI2XTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9IRFNQX0lPQ1RMX0dFVF9QRUFLX1JNUyBfSU9SKCdIJywgMHg0MCwgc3RydWN0IGhkc3BfcGVha19ybXMpCiBzdHJ1Y3QgaGRzcF9jb25maWdfaW5mbyB7Ci0gdW5zaWduZWQgY2hhciBwcmVmX3N5bmNfcmVmOwotIHVuc2lnbmVkIGNoYXIgd29yZGNsb2NrX3N5bmNfY2hlY2s7CisgIHVuc2lnbmVkIGNoYXIgcHJlZl9zeW5jX3JlZjsKKyAgdW5zaWduZWQgY2hhciB3b3JkY2xvY2tfc3luY19jaGVjazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBzcGRpZl9zeW5jX2NoZWNrOwotIHVuc2lnbmVkIGNoYXIgYWRhdHN5bmNfc3luY19jaGVjazsKLSB1bnNpZ25lZCBjaGFyIGFkYXRfc3luY19jaGVja1szXTsKLSB1bnNpZ25lZCBjaGFyIHNwZGlmX2luOworICB1bnNpZ25lZCBjaGFyIHNwZGlmX3N5bmNfY2hlY2s7CisgIHVuc2lnbmVkIGNoYXIgYWRhdHN5bmNfc3luY19jaGVjazsKKyAgdW5zaWduZWQgY2hhciBhZGF0X3N5bmNfY2hlY2tbM107CisgIHVuc2lnbmVkIGNoYXIgc3BkaWZfaW47CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgc3BkaWZfb3V0OwotIHVuc2lnbmVkIGNoYXIgc3BkaWZfcHJvZmVzc2lvbmFsOwotIHVuc2lnbmVkIGNoYXIgc3BkaWZfZW1waGFzaXM7Ci0gdW5zaWduZWQgY2hhciBzcGRpZl9ub25hdWRpbzsKKyAgdW5zaWduZWQgY2hhciBzcGRpZl9vdXQ7CisgIHVuc2lnbmVkIGNoYXIgc3BkaWZfcHJvZmVzc2lvbmFsOworICB1bnNpZ25lZCBjaGFyIHNwZGlmX2VtcGhhc2lzOworICB1bnNpZ25lZCBjaGFyIHNwZGlmX25vbmF1ZGlvOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgc3BkaWZfc2FtcGxlX3JhdGU7Ci0gdW5zaWduZWQgaW50IHN5c3RlbV9zYW1wbGVfcmF0ZTsKLSB1bnNpZ25lZCBpbnQgYXV0b3N5bmNfc2FtcGxlX3JhdGU7Ci0gdW5zaWduZWQgY2hhciBzeXN0ZW1fY2xvY2tfbW9kZTsKKyAgdW5zaWduZWQgaW50IHNwZGlmX3NhbXBsZV9yYXRlOworICB1bnNpZ25lZCBpbnQgc3lzdGVtX3NhbXBsZV9yYXRlOworICB1bnNpZ25lZCBpbnQgYXV0b3N5bmNfc2FtcGxlX3JhdGU7CisgIHVuc2lnbmVkIGNoYXIgc3lzdGVtX2Nsb2NrX21vZGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgY2xvY2tfc291cmNlOwotIHVuc2lnbmVkIGNoYXIgYXV0b3N5bmNfcmVmOwotIHVuc2lnbmVkIGNoYXIgbGluZV9vdXQ7Ci0gdW5zaWduZWQgY2hhciBwYXNzdGhydTsKKyAgdW5zaWduZWQgY2hhciBjbG9ja19zb3VyY2U7CisgIHVuc2lnbmVkIGNoYXIgYXV0b3N5bmNfcmVmOworICB1bnNpZ25lZCBjaGFyIGxpbmVfb3V0OworICB1bnNpZ25lZCBjaGFyIHBhc3N0aHJ1OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGRhX2dhaW47Ci0gdW5zaWduZWQgY2hhciBhZF9nYWluOwotIHVuc2lnbmVkIGNoYXIgcGhvbmVfZ2FpbjsKLSB1bnNpZ25lZCBjaGFyIHhscl9icmVha291dF9jYWJsZTsKKyAgdW5zaWduZWQgY2hhciBkYV9nYWluOworICB1bnNpZ25lZCBjaGFyIGFkX2dhaW47CisgIHVuc2lnbmVkIGNoYXIgcGhvbmVfZ2FpbjsKKyAgdW5zaWduZWQgY2hhciB4bHJfYnJlYWtvdXRfY2FibGU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgYW5hbG9nX2V4dGVuc2lvbl9ib2FyZDsKKyAgdW5zaWduZWQgY2hhciBhbmFsb2dfZXh0ZW5zaW9uX2JvYXJkOwogfTsKICNkZWZpbmUgU05EUlZfSERTUF9JT0NUTF9HRVRfQ09ORklHX0lORk8gX0lPUignSCcsIDB4NDEsIHN0cnVjdCBoZHNwX2NvbmZpZ19pbmZvKQogc3RydWN0IGhkc3BfZmlybXdhcmUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB2b2lkIF9fdXNlciAqZmlybXdhcmVfZGF0YTsKKyAgdm9pZCBfX3VzZXIgKiBmaXJtd2FyZV9kYXRhOwogfTsKICNkZWZpbmUgU05EUlZfSERTUF9JT0NUTF9VUExPQURfRklSTVdBUkUgX0lPVygnSCcsIDB4NDIsIHN0cnVjdCBoZHNwX2Zpcm13YXJlKQogc3RydWN0IGhkc3BfdmVyc2lvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGVudW0gSERTUF9JT19UeXBlIGlvX3R5cGU7Ci0gdW5zaWduZWQgc2hvcnQgZmlybXdhcmVfcmV2OworICBlbnVtIEhEU1BfSU9fVHlwZSBpb190eXBlOworICB1bnNpZ25lZCBzaG9ydCBmaXJtd2FyZV9yZXY7CiB9OwogI2RlZmluZSBTTkRSVl9IRFNQX0lPQ1RMX0dFVF9WRVJTSU9OIF9JT1IoJ0gnLCAweDQzLCBzdHJ1Y3QgaGRzcF92ZXJzaW9uKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBoZHNwX21peGVyIHsKLSB1bnNpZ25lZCBzaG9ydCBtYXRyaXhbSERTUF9NQVRSSVhfTUlYRVJfU0laRV07CisgIHVuc2lnbmVkIHNob3J0IG1hdHJpeFtIRFNQX01BVFJJWF9NSVhFUl9TSVpFXTsKIH07CiAjZGVmaW5lIFNORFJWX0hEU1BfSU9DVExfR0VUX01JWEVSIF9JT1IoJ0gnLCAweDQ0LCBzdHJ1Y3QgaGRzcF9taXhlcikKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaGRzcF85NjMyX2FlYiB7Ci0gaW50IGFlYmk7Ci0gaW50IGFlYm87CisgIGludCBhZWJpOworICBpbnQgYWVibzsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9IRFNQX0lPQ1RMX0dFVF85NjMyX0FFQiBfSU9SKCdIJywgMHg0NSwgc3RydWN0IGhkc3BfOTYzMl9hZWIpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2hkc3BtLmggYi9saWJjL2tlcm5lbC91YXBpL3NvdW5kL2hkc3BtLmgKaW5kZXggOGIzNjg4Zi4uMTZkMDNiYSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9oZHNwbS5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvaGRzcG0uaApAQCAtMjEsMTU3ICsyMSwxNTcgQEAKICNkZWZpbmUgSERTUE1fTUFYX0NIQU5ORUxTIDY0CiBlbnVtIGhkc3BtX2lvX3R5cGUgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBNQURJLAotIE1BRElmYWNlLAotIEFJTywKLSBBRVMzMiwKKyAgTUFESSwKKyAgTUFESWZhY2UsCisgIEFJTywKKyAgQUVTMzIsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIFJheURBVAorICBSYXlEQVQKIH07CiBlbnVtIGhkc3BtX3NwZWVkIHsKLSBzcywKKyAgc3MsCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGRzLAotIHFzCisgIGRzLAorICBxcwogfTsKIHN0cnVjdCBoZHNwbV9wZWFrX3JtcyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQzMl90IGlucHV0X3BlYWtzWzY0XTsKLSB1aW50MzJfdCBwbGF5YmFja19wZWFrc1s2NF07Ci0gdWludDMyX3Qgb3V0cHV0X3BlYWtzWzY0XTsKLSB1aW50NjRfdCBpbnB1dF9ybXNbNjRdOworICB1aW50MzJfdCBpbnB1dF9wZWFrc1s2NF07CisgIHVpbnQzMl90IHBsYXliYWNrX3BlYWtzWzY0XTsKKyAgdWludDMyX3Qgb3V0cHV0X3BlYWtzWzY0XTsKKyAgdWludDY0X3QgaW5wdXRfcm1zWzY0XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgcGxheWJhY2tfcm1zWzY0XTsKLSB1aW50NjRfdCBvdXRwdXRfcm1zWzY0XTsKLSB1aW50OF90IHNwZWVkOwotIGludCBzdGF0dXMyOworICB1aW50NjRfdCBwbGF5YmFja19ybXNbNjRdOworICB1aW50NjRfdCBvdXRwdXRfcm1zWzY0XTsKKyAgdWludDhfdCBzcGVlZDsKKyAgaW50IHN0YXR1czI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgU05EUlZfSERTUE1fSU9DVExfR0VUX1BFQUtfUk1TICAgX0lPUignSCcsIDB4NDIsIHN0cnVjdCBoZHNwbV9wZWFrX3JtcykKKyNkZWZpbmUgU05EUlZfSERTUE1fSU9DVExfR0VUX1BFQUtfUk1TIF9JT1IoJ0gnLCAweDQyLCBzdHJ1Y3QgaGRzcG1fcGVha19ybXMpCiBzdHJ1Y3QgaGRzcG1fY29uZmlnIHsKLSB1bnNpZ25lZCBjaGFyIHByZWZfc3luY19yZWY7CisgIHVuc2lnbmVkIGNoYXIgcHJlZl9zeW5jX3JlZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciB3b3JkY2xvY2tfc3luY19jaGVjazsKLSB1bnNpZ25lZCBjaGFyIG1hZGlfc3luY19jaGVjazsKLSB1bnNpZ25lZCBpbnQgc3lzdGVtX3NhbXBsZV9yYXRlOwotIHVuc2lnbmVkIGludCBhdXRvc3luY19zYW1wbGVfcmF0ZTsKKyAgdW5zaWduZWQgY2hhciB3b3JkY2xvY2tfc3luY19jaGVjazsKKyAgdW5zaWduZWQgY2hhciBtYWRpX3N5bmNfY2hlY2s7CisgIHVuc2lnbmVkIGludCBzeXN0ZW1fc2FtcGxlX3JhdGU7CisgIHVuc2lnbmVkIGludCBhdXRvc3luY19zYW1wbGVfcmF0ZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgY2hhciBzeXN0ZW1fY2xvY2tfbW9kZTsKLSB1bnNpZ25lZCBjaGFyIGNsb2NrX3NvdXJjZTsKLSB1bnNpZ25lZCBjaGFyIGF1dG9zeW5jX3JlZjsKLSB1bnNpZ25lZCBjaGFyIGxpbmVfb3V0OworICB1bnNpZ25lZCBjaGFyIHN5c3RlbV9jbG9ja19tb2RlOworICB1bnNpZ25lZCBjaGFyIGNsb2NrX3NvdXJjZTsKKyAgdW5zaWduZWQgY2hhciBhdXRvc3luY19yZWY7CisgIHVuc2lnbmVkIGNoYXIgbGluZV9vdXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBwYXNzdGhydTsKLSB1bnNpZ25lZCBpbnQgYW5hbG9nX291dDsKKyAgdW5zaWduZWQgaW50IHBhc3N0aHJ1OworICB1bnNpZ25lZCBpbnQgYW5hbG9nX291dDsKIH07Ci0jZGVmaW5lIFNORFJWX0hEU1BNX0lPQ1RMX0dFVF9DT05GSUcgICBfSU9SKCdIJywgMHg0MSwgc3RydWN0IGhkc3BtX2NvbmZpZykKKyNkZWZpbmUgU05EUlZfSERTUE1fSU9DVExfR0VUX0NPTkZJRyBfSU9SKCdIJywgMHg0MSwgc3RydWN0IGhkc3BtX2NvbmZpZykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBlbnVtIGhkc3BtX2x0Y19mb3JtYXQgewotIGZvcm1hdF9pbnZhbGlkLAotIGZwc18yNCwKLSBmcHNfMjUsCisgIGZvcm1hdF9pbnZhbGlkLAorICBmcHNfMjQsCisgIGZwc18yNSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZnBzXzI5OTcsCi0gZnBzXzMwCisgIGZwc18yOTk3LAorICBmcHNfMzAKIH07CiBlbnVtIGhkc3BtX2x0Y19mcmFtZSB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGZyYW1lX2ludmFsaWQsCi0gZHJvcF9mcmFtZSwKLSBmdWxsX2ZyYW1lCisgIGZyYW1lX2ludmFsaWQsCisgIGRyb3BfZnJhbWUsCisgIGZ1bGxfZnJhbWUKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogZW51bSBoZHNwbV9sdGNfaW5wdXRfZm9ybWF0IHsKLSBudHNjLAotIHBhbCwKLSBub192aWRlbworICBudHNjLAorICBwYWwsCisgIG5vX3ZpZGVvCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBoZHNwbV9sdGMgewotIHVuc2lnbmVkIGludCBsdGM7Ci0gZW51bSBoZHNwbV9sdGNfZm9ybWF0IGZvcm1hdDsKKyAgdW5zaWduZWQgaW50IGx0YzsKKyAgZW51bSBoZHNwbV9sdGNfZm9ybWF0IGZvcm1hdDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZW51bSBoZHNwbV9sdGNfZnJhbWUgZnJhbWU7Ci0gZW51bSBoZHNwbV9sdGNfaW5wdXRfZm9ybWF0IGlucHV0X2Zvcm1hdDsKKyAgZW51bSBoZHNwbV9sdGNfZnJhbWUgZnJhbWU7CisgIGVudW0gaGRzcG1fbHRjX2lucHV0X2Zvcm1hdCBpbnB1dF9mb3JtYXQ7CiB9OwogI2RlZmluZSBTTkRSVl9IRFNQTV9JT0NUTF9HRVRfTFRDIF9JT1IoJ0gnLCAweDQ2LCBzdHJ1Y3QgaGRzcG1fbHRjKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gaGRzcG1fc3luYyB7Ci0gaGRzcG1fc3luY19ub19sb2NrID0gMCwKLSBoZHNwbV9zeW5jX2xvY2sgPSAxLAotIGhkc3BtX3N5bmNfc3luYyA9IDIKKyAgaGRzcG1fc3luY19ub19sb2NrID0gMCwKKyAgaGRzcG1fc3luY19sb2NrID0gMSwKKyAgaGRzcG1fc3luY19zeW5jID0gMgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGhkc3BtX21hZGlfaW5wdXQgewotIGhkc3BtX2lucHV0X29wdGljYWwgPSAwLAotIGhkc3BtX2lucHV0X2NvYXggPSAxCisgIGhkc3BtX2lucHV0X29wdGljYWwgPSAwLAorICBoZHNwbV9pbnB1dF9jb2F4ID0gMQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBlbnVtIGhkc3BtX21hZGlfY2hhbm5lbF9mb3JtYXQgewotIGhkc3BtX2Zvcm1hdF9jaF82NCA9IDAsCi0gaGRzcG1fZm9ybWF0X2NoXzU2ID0gMQorICBoZHNwbV9mb3JtYXRfY2hfNjQgPSAwLAorICBoZHNwbV9mb3JtYXRfY2hfNTYgPSAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIGVudW0gaGRzcG1fbWFkaV9mcmFtZV9mb3JtYXQgewotIGhkc3BtX2ZyYW1lXzQ4ID0gMCwKLSBoZHNwbV9mcmFtZV85NiA9IDEKKyAgaGRzcG1fZnJhbWVfNDggPSAwLAorICBoZHNwbV9mcmFtZV85NiA9IDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogZW51bSBoZHNwbV9zeW5jc291cmNlIHsKLSBzeW5jc291cmNlX3djID0gMCwKLSBzeW5jc291cmNlX21hZGkgPSAxLAorICBzeW5jc291cmNlX3djID0gMCwKKyAgc3luY3NvdXJjZV9tYWRpID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3luY3NvdXJjZV90Y28gPSAyLAotIHN5bmNzb3VyY2Vfc3luYyA9IDMsCi0gc3luY3NvdXJjZV9ub25lID0gNAorICBzeW5jc291cmNlX3RjbyA9IDIsCisgIHN5bmNzb3VyY2Vfc3luYyA9IDMsCisgIHN5bmNzb3VyY2Vfbm9uZSA9IDQKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGhkc3BtX3N0YXR1cyB7Ci0gdWludDhfdCBjYXJkX3R5cGU7Ci0gZW51bSBoZHNwbV9zeW5jc291cmNlIGF1dG9zeW5jX3NvdXJjZTsKLSB1aW50NjRfdCBjYXJkX2Nsb2NrOworICB1aW50OF90IGNhcmRfdHlwZTsKKyAgZW51bSBoZHNwbV9zeW5jc291cmNlIGF1dG9zeW5jX3NvdXJjZTsKKyAgdWludDY0X3QgY2FyZF9jbG9jazsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgbWFzdGVyX3BlcmlvZDsKLSB1bmlvbiB7Ci0gc3RydWN0IHsKLSB1aW50OF90IHN5bmNfd2M7CisgIHVpbnQzMl90IG1hc3Rlcl9wZXJpb2Q7CisgIHVuaW9uIHsKKyAgICBzdHJ1Y3QgeworICAgICAgdWludDhfdCBzeW5jX3djOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50OF90IHN5bmNfbWFkaTsKLSB1aW50OF90IHN5bmNfdGNvOwotIHVpbnQ4X3Qgc3luY19pbjsKLSB1aW50OF90IG1hZGlfaW5wdXQ7CisgICAgICB1aW50OF90IHN5bmNfbWFkaTsKKyAgICAgIHVpbnQ4X3Qgc3luY190Y287CisgICAgICB1aW50OF90IHN5bmNfaW47CisgICAgICB1aW50OF90IG1hZGlfaW5wdXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ4X3QgY2hhbm5lbF9mb3JtYXQ7Ci0gdWludDhfdCBmcmFtZV9mb3JtYXQ7Ci0gfSBtYWRpOwotIH0gY2FyZF9zcGVjaWZpYzsKKyAgICAgIHVpbnQ4X3QgY2hhbm5lbF9mb3JtYXQ7CisgICAgICB1aW50OF90IGZyYW1lX2Zvcm1hdDsKKyAgICB9IG1hZGk7CisgIH0gY2FyZF9zcGVjaWZpYzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwotI2RlZmluZSBTTkRSVl9IRFNQTV9JT0NUTF9HRVRfU1RBVFVTICAgX0lPUignSCcsIDB4NDcsIHN0cnVjdCBoZHNwbV9zdGF0dXMpCisjZGVmaW5lIFNORFJWX0hEU1BNX0lPQ1RMX0dFVF9TVEFUVVMgX0lPUignSCcsIDB4NDcsIHN0cnVjdCBoZHNwbV9zdGF0dXMpCiAjZGVmaW5lIEhEU1BNX0FERE9OX1RDTyAxCiBzdHJ1Y3QgaGRzcG1fdmVyc2lvbiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQ4X3QgY2FyZF90eXBlOwotIGNoYXIgY2FyZG5hbWVbMjBdOwotIHVuc2lnbmVkIGludCBzZXJpYWw7Ci0gdW5zaWduZWQgc2hvcnQgZmlybXdhcmVfcmV2OworICB1aW50OF90IGNhcmRfdHlwZTsKKyAgY2hhciBjYXJkbmFtZVsyMF07CisgIHVuc2lnbmVkIGludCBzZXJpYWw7CisgIHVuc2lnbmVkIHNob3J0IGZpcm13YXJlX3JldjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gaW50IGFkZG9uczsKKyAgaW50IGFkZG9uczsKIH07CiAjZGVmaW5lIFNORFJWX0hEU1BNX0lPQ1RMX0dFVF9WRVJTSU9OIF9JT1IoJ0gnLCAweDQ4LCBzdHJ1Y3QgaGRzcG1fdmVyc2lvbikKICNkZWZpbmUgSERTUE1fTUlYRVJfQ0hBTk5FTFMgSERTUE1fTUFYX0NIQU5ORUxTCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGhkc3BtX2NoYW5uZWxmYWRlciB7Ci0gdW5zaWduZWQgaW50IGluW0hEU1BNX01JWEVSX0NIQU5ORUxTXTsKLSB1bnNpZ25lZCBpbnQgcGJbSERTUE1fTUlYRVJfQ0hBTk5FTFNdOworICB1bnNpZ25lZCBpbnQgaW5bSERTUE1fTUlYRVJfQ0hBTk5FTFNdOworICB1bnNpZ25lZCBpbnQgcGJbSERTUE1fTUlYRVJfQ0hBTk5FTFNdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3QgaGRzcG1fbWl4ZXIgewotIHN0cnVjdCBoZHNwbV9jaGFubmVsZmFkZXIgY2hbSERTUE1fTUlYRVJfQ0hBTk5FTFNdOworICBzdHJ1Y3QgaGRzcG1fY2hhbm5lbGZhZGVyIGNoW0hEU1BNX01JWEVSX0NIQU5ORUxTXTsKIH07CiBzdHJ1Y3QgaGRzcG1fbWl4ZXJfaW9jdGwgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgaGRzcG1fbWl4ZXIgKm1peGVyOworICBzdHJ1Y3QgaGRzcG1fbWl4ZXIgKiBtaXhlcjsKIH07CiAjZGVmaW5lIFNORFJWX0hEU1BNX0lPQ1RMX0dFVF9NSVhFUiBfSU9SKCdIJywgMHg0NCwgc3RydWN0IGhkc3BtX21peGVyX2lvY3RsKQogdHlwZWRlZiBzdHJ1Y3QgaGRzcG1fcGVha19ybXMgaGRzcG1fcGVha19ybXNfdDsKZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkvc291bmQvc2IxNl9jc3AuaCBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvc2IxNl9jc3AuaAppbmRleCAyOWMxYTAxLi5hMDJlNmJjIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL3NiMTZfY3NwLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9zYjE2X2NzcC5oCkBAIC00OCwzOCArNDgsMzggQEAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NCX0NTUF9NQVhfTUlDUk9DT0RFX0ZJTEVfU0laRSAweDMwMDAKIHN0cnVjdCBzbmRfc2JfY3NwX21jX2hlYWRlciB7Ci0gY2hhciBjb2RlY19uYW1lWzE2XTsKLSB1bnNpZ25lZCBzaG9ydCBmdW5jX3JlcTsKKyAgY2hhciBjb2RlY19uYW1lWzE2XTsKKyAgdW5zaWduZWQgc2hvcnQgZnVuY19yZXE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzbmRfc2JfY3NwX21pY3JvY29kZSB7Ci0gc3RydWN0IHNuZF9zYl9jc3BfbWNfaGVhZGVyIGluZm87Ci0gdW5zaWduZWQgY2hhciBkYXRhW1NORFJWX1NCX0NTUF9NQVhfTUlDUk9DT0RFX0ZJTEVfU0laRV07CisgIHN0cnVjdCBzbmRfc2JfY3NwX21jX2hlYWRlciBpbmZvOworICB1bnNpZ25lZCBjaGFyIGRhdGFbU05EUlZfU0JfQ1NQX01BWF9NSUNST0NPREVfRklMRV9TSVpFXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9Owogc3RydWN0IHNuZF9zYl9jc3Bfc3RhcnQgewotIGludCBzYW1wbGVfd2lkdGg7Ci0gaW50IGNoYW5uZWxzOworICBpbnQgc2FtcGxlX3dpZHRoOworICBpbnQgY2hhbm5lbHM7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBzbmRfc2JfY3NwX2luZm8gewotIGNoYXIgY29kZWNfbmFtZVsxNl07Ci0gdW5zaWduZWQgc2hvcnQgZnVuY19ucjsKKyAgY2hhciBjb2RlY19uYW1lWzE2XTsKKyAgdW5zaWduZWQgc2hvcnQgZnVuY19ucjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IGFjY19mb3JtYXQ7Ci0gdW5zaWduZWQgc2hvcnQgYWNjX2NoYW5uZWxzOwotIHVuc2lnbmVkIHNob3J0IGFjY193aWR0aDsKLSB1bnNpZ25lZCBzaG9ydCBhY2NfcmF0ZXM7CisgIHVuc2lnbmVkIGludCBhY2NfZm9ybWF0OworICB1bnNpZ25lZCBzaG9ydCBhY2NfY2hhbm5lbHM7CisgIHVuc2lnbmVkIHNob3J0IGFjY193aWR0aDsKKyAgdW5zaWduZWQgc2hvcnQgYWNjX3JhdGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBjc3BfbW9kZTsKLSB1bnNpZ25lZCBzaG9ydCBydW5fY2hhbm5lbHM7Ci0gdW5zaWduZWQgc2hvcnQgcnVuX3dpZHRoOwotIHVuc2lnbmVkIHNob3J0IHZlcnNpb247CisgIHVuc2lnbmVkIHNob3J0IGNzcF9tb2RlOworICB1bnNpZ25lZCBzaG9ydCBydW5fY2hhbm5lbHM7CisgIHVuc2lnbmVkIHNob3J0IHJ1bl93aWR0aDsKKyAgdW5zaWduZWQgc2hvcnQgdmVyc2lvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgc3RhdGU7CisgIHVuc2lnbmVkIHNob3J0IHN0YXRlOwogfTsKICNkZWZpbmUgU05EUlZfU0JfQ1NQX0lPQ1RMX0lORk8gX0lPUignSCcsIDB4MTAsIHN0cnVjdCBzbmRfc2JfY3NwX2luZm8pCi0jZGVmaW5lIFNORFJWX1NCX0NTUF9JT0NUTF9MT0FEX0NPREUgICBfSU9DKF9JT0NfV1JJVEUsICdIJywgMHgxMSwgc2l6ZW9mKHN0cnVjdCBzbmRfc2JfY3NwX21pY3JvY29kZSkpCisjZGVmaW5lIFNORFJWX1NCX0NTUF9JT0NUTF9MT0FEX0NPREUgX0lPQyhfSU9DX1dSSVRFLCAnSCcsIDB4MTEsIHNpemVvZihzdHJ1Y3Qgc25kX3NiX2NzcF9taWNyb2NvZGUpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfU0JfQ1NQX0lPQ1RMX1VOTE9BRF9DT0RFIF9JTygnSCcsIDB4MTIpCiAjZGVmaW5lIFNORFJWX1NCX0NTUF9JT0NUTF9TVEFSVCBfSU9XKCdIJywgMHgxMywgc3RydWN0IHNuZF9zYl9jc3Bfc3RhcnQpCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL3NmbnRfaW5mby5oIGIvbGliYy9rZXJuZWwvdWFwaS9zb3VuZC9zZm50X2luZm8uaAppbmRleCBhYmU2YTU1Li5lNGQzMWM4IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3NvdW5kL3NmbnRfaW5mby5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvc291bmQvc2ZudF9pbmZvLmgKQEAgLTIxLDIwICsyMSwyMCBAQAogI2luY2x1ZGUgPHNvdW5kL2Fzb3VuZC5oPgogI2lmZGVmIFNORFJWX0JJR19FTkRJQU4KIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIFNORFJWX09TU19QQVRDSEtFWShpZCkgKDB4ZmQwMHxpZCkKKyNkZWZpbmUgU05EUlZfT1NTX1BBVENIS0VZKGlkKSAoMHhmZDAwIHwgaWQpCiAjZWxzZQotI2RlZmluZSBTTkRSVl9PU1NfUEFUQ0hLRVkoaWQpICgoaWQ8PDgpfDB4ZmQpCisjZGVmaW5lIFNORFJWX09TU19QQVRDSEtFWShpZCkgKChpZCA8PCA4KSB8IDB4ZmQpCiAjZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc291bmRmb250X3BhdGNoX2luZm8gewotIHVuc2lnbmVkIHNob3J0IGtleTsKKyAgdW5zaWduZWQgc2hvcnQga2V5OwogI2RlZmluZSBTTkRSVl9PU1NfU09VTkRGT05UX1BBVENIIFNORFJWX09TU19QQVRDSEtFWSgweDA3KQotIHNob3J0IGRldmljZV9ubzsKKyAgc2hvcnQgZGV2aWNlX25vOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBzZl9pZDsKLSBzaG9ydCBvcHRhcmc7Ci0gaW50IGxlbjsKLSBzaG9ydCB0eXBlOworICB1bnNpZ25lZCBzaG9ydCBzZl9pZDsKKyAgc2hvcnQgb3B0YXJnOworICBpbnQgbGVuOworICBzaG9ydCB0eXBlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfU0ZOVF9MT0FEX0lORk8gMAogI2RlZmluZSBTTkRSVl9TRk5UX0xPQURfREFUQSAxCkBAIC00Niw1OSArNDYsNTkgQEAKICNkZWZpbmUgU05EUlZfU0ZOVF9QUk9CRV9EQVRBIDgKICNkZWZpbmUgU05EUlZfU0ZOVF9SRU1PVkVfSU5GTyA5CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IHJlc2VydmVkOworICBzaG9ydCByZXNlcnZlZDsKIH07CiAjZGVmaW5lIFNORFJWX1NGTlRfUEFUQ0hfTkFNRV9MRU4gMzIKIHN0cnVjdCBzb3VuZGZvbnRfb3Blbl9wYXJtIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgdHlwZTsKKyAgdW5zaWduZWQgc2hvcnQgdHlwZTsKICNkZWZpbmUgU05EUlZfU0ZOVF9QQVRfVFlQRV9NSVNDIDAKICNkZWZpbmUgU05EUlZfU0ZOVF9QQVRfVFlQRV9HVVMgNgogI2RlZmluZSBTTkRSVl9TRk5UX1BBVF9UWVBFX01BUCA3CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBTTkRSVl9TRk5UX1BBVF9MT0NLRUQgMHgxMDAKICNkZWZpbmUgU05EUlZfU0ZOVF9QQVRfU0hBUkVEIDB4MjAwCi0gc2hvcnQgcmVzZXJ2ZWQ7Ci0gY2hhciBuYW1lW1NORFJWX1NGTlRfUEFUQ0hfTkFNRV9MRU5dOworICBzaG9ydCByZXNlcnZlZDsKKyAgY2hhciBuYW1lW1NORFJWX1NGTlRfUEFUQ0hfTkFNRV9MRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc291bmRmb250X3ZvaWNlX3Bhcm0gewotIHVuc2lnbmVkIHNob3J0IG1vZGRlbGF5OwotIHVuc2lnbmVkIHNob3J0IG1vZGF0a2hsZDsKKyAgdW5zaWduZWQgc2hvcnQgbW9kZGVsYXk7CisgIHVuc2lnbmVkIHNob3J0IG1vZGF0a2hsZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgbW9kZGN5c3VzOwotIHVuc2lnbmVkIHNob3J0IG1vZHJlbGVhc2U7Ci0gc2hvcnQgbW9ka2V5aG9sZCwgbW9ka2V5ZGVjYXk7Ci0gdW5zaWduZWQgc2hvcnQgdm9sZGVsYXk7CisgIHVuc2lnbmVkIHNob3J0IG1vZGRjeXN1czsKKyAgdW5zaWduZWQgc2hvcnQgbW9kcmVsZWFzZTsKKyAgc2hvcnQgbW9ka2V5aG9sZCwgbW9ka2V5ZGVjYXk7CisgIHVuc2lnbmVkIHNob3J0IHZvbGRlbGF5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCB2b2xhdGtobGQ7Ci0gdW5zaWduZWQgc2hvcnQgdm9sZGN5c3VzOwotIHVuc2lnbmVkIHNob3J0IHZvbHJlbGVhc2U7Ci0gc2hvcnQgdm9sa2V5aG9sZCwgdm9sa2V5ZGVjYXk7CisgIHVuc2lnbmVkIHNob3J0IHZvbGF0a2hsZDsKKyAgdW5zaWduZWQgc2hvcnQgdm9sZGN5c3VzOworICB1bnNpZ25lZCBzaG9ydCB2b2xyZWxlYXNlOworICBzaG9ydCB2b2xrZXlob2xkLCB2b2xrZXlkZWNheTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgc2hvcnQgbGZvMWRlbGF5OwotIHVuc2lnbmVkIHNob3J0IGxmbzJkZWxheTsKLSB1bnNpZ25lZCBzaG9ydCBwZWZlOwotIHVuc2lnbmVkIHNob3J0IGZtbW9kOworICB1bnNpZ25lZCBzaG9ydCBsZm8xZGVsYXk7CisgIHVuc2lnbmVkIHNob3J0IGxmbzJkZWxheTsKKyAgdW5zaWduZWQgc2hvcnQgcGVmZTsKKyAgdW5zaWduZWQgc2hvcnQgZm1tb2Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIHNob3J0IHRyZW1mcnE7Ci0gdW5zaWduZWQgc2hvcnQgZm0yZnJxMjsKLSB1bnNpZ25lZCBjaGFyIGN1dG9mZjsKLSB1bnNpZ25lZCBjaGFyIGZpbHRlclE7CisgIHVuc2lnbmVkIHNob3J0IHRyZW1mcnE7CisgIHVuc2lnbmVkIHNob3J0IGZtMmZycTI7CisgIHVuc2lnbmVkIGNoYXIgY3V0b2ZmOworICB1bnNpZ25lZCBjaGFyIGZpbHRlclE7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGNoYXIgY2hvcnVzOwotIHVuc2lnbmVkIGNoYXIgcmV2ZXJiOwotIHVuc2lnbmVkIHNob3J0IHJlc2VydmVkWzRdOworICB1bnNpZ25lZCBjaGFyIGNob3J1czsKKyAgdW5zaWduZWQgY2hhciByZXZlcmI7CisgIHVuc2lnbmVkIHNob3J0IHJlc2VydmVkWzRdOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiBzdHJ1Y3Qgc291bmRmb250X3ZvaWNlX2luZm8gewotIHVuc2lnbmVkIHNob3J0IHNmX2lkOwotIHVuc2lnbmVkIHNob3J0IHNhbXBsZTsKLSBpbnQgc3RhcnQsIGVuZDsKKyAgdW5zaWduZWQgc2hvcnQgc2ZfaWQ7CisgIHVuc2lnbmVkIHNob3J0IHNhbXBsZTsKKyAgaW50IHN0YXJ0LCBlbmQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBsb29wc3RhcnQsIGxvb3BlbmQ7Ci0gc2hvcnQgcmF0ZV9vZmZzZXQ7Ci0gdW5zaWduZWQgc2hvcnQgbW9kZTsKKyAgaW50IGxvb3BzdGFydCwgbG9vcGVuZDsKKyAgc2hvcnQgcmF0ZV9vZmZzZXQ7CisgIHVuc2lnbmVkIHNob3J0IG1vZGU7CiAjZGVmaW5lIFNORFJWX1NGTlRfTU9ERV9ST01TT1VORCAweDgwMDAKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NGTlRfTU9ERV9TVEVSRU8gMQpAQCAtMTA2LDQzICsxMDYsNDMgQEAKICNkZWZpbmUgU05EUlZfU0ZOVF9NT0RFX05PUkVMRUFTRSA0CiAjZGVmaW5lIFNORFJWX1NGTlRfTU9ERV9JTklUX1BBUk0gOAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaG9ydCByb290OwotIHNob3J0IHR1bmU7Ci0gdW5zaWduZWQgY2hhciBsb3csIGhpZ2g7Ci0gdW5zaWduZWQgY2hhciB2ZWxsb3csIHZlbGhpZ2g7CisgIHNob3J0IHJvb3Q7CisgIHNob3J0IHR1bmU7CisgIHVuc2lnbmVkIGNoYXIgbG93LCBoaWdoOworICB1bnNpZ25lZCBjaGFyIHZlbGxvdywgdmVsaGlnaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2lnbmVkIGNoYXIgZml4a2V5LCBmaXh2ZWw7Ci0gc2lnbmVkIGNoYXIgcGFuLCBmaXhwYW47Ci0gc2hvcnQgZXhjbHVzaXZlQ2xhc3M7Ci0gdW5zaWduZWQgY2hhciBhbXBsaXR1ZGU7CisgIHNpZ25lZCBjaGFyIGZpeGtleSwgZml4dmVsOworICBzaWduZWQgY2hhciBwYW4sIGZpeHBhbjsKKyAgc2hvcnQgZXhjbHVzaXZlQ2xhc3M7CisgIHVuc2lnbmVkIGNoYXIgYW1wbGl0dWRlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBjaGFyIGF0dGVudWF0aW9uOwotIHNob3J0IHNjYWxlVHVuaW5nOwotIHN0cnVjdCBzb3VuZGZvbnRfdm9pY2VfcGFybSBwYXJtOwotIHVuc2lnbmVkIHNob3J0IHNhbXBsZV9tb2RlOworICB1bnNpZ25lZCBjaGFyIGF0dGVudWF0aW9uOworICBzaG9ydCBzY2FsZVR1bmluZzsKKyAgc3RydWN0IHNvdW5kZm9udF92b2ljZV9wYXJtIHBhcm07CisgIHVuc2lnbmVkIHNob3J0IHNhbXBsZV9tb2RlOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiBzdHJ1Y3Qgc291bmRmb250X3ZvaWNlX3JlY19oZHIgewotIHVuc2lnbmVkIGNoYXIgYmFuazsKLSB1bnNpZ25lZCBjaGFyIGluc3RyOworICB1bnNpZ25lZCBjaGFyIGJhbms7CisgIHVuc2lnbmVkIGNoYXIgaW5zdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGNoYXIgbnZvaWNlczsKLSBjaGFyIHdyaXRlX21vZGU7CisgIGNoYXIgbnZvaWNlczsKKyAgY2hhciB3cml0ZV9tb2RlOwogI2RlZmluZSBTTkRSVl9TRk5UX1dSX0FQUEVORCAwCiAjZGVmaW5lIFNORFJWX1NGTlRfV1JfRVhDTFVTSVZFIDEKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX1NGTlRfV1JfUkVQTEFDRSAyCiB9Owogc3RydWN0IHNvdW5kZm9udF9zYW1wbGVfaW5mbyB7Ci0gdW5zaWduZWQgc2hvcnQgc2ZfaWQ7CisgIHVuc2lnbmVkIHNob3J0IHNmX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBzaG9ydCBzYW1wbGU7Ci0gaW50IHN0YXJ0LCBlbmQ7Ci0gaW50IGxvb3BzdGFydCwgbG9vcGVuZDsKLSBpbnQgc2l6ZTsKKyAgdW5zaWduZWQgc2hvcnQgc2FtcGxlOworICBpbnQgc3RhcnQsIGVuZDsKKyAgaW50IGxvb3BzdGFydCwgbG9vcGVuZDsKKyAgaW50IHNpemU7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHNob3J0IGR1bW15OwotIHVuc2lnbmVkIHNob3J0IG1vZGVfZmxhZ3M7CisgIHNob3J0IGR1bW15OworICB1bnNpZ25lZCBzaG9ydCBtb2RlX2ZsYWdzOwogI2RlZmluZSBTTkRSVl9TRk5UX1NBTVBMRV84QklUUyAxCiAjZGVmaW5lIFNORFJWX1NGTlRfU0FNUExFX1VOU0lHTkVEIDIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCkBAIC0xNTMsMjIgKzE1MywyMiBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfU0ZOVF9TQU1QTEVfU1RFUkVPX1JJR0hUIDY0CiAjZGVmaW5lIFNORFJWX1NGTlRfU0FNUExFX1JFVkVSU0VfTE9PUCAxMjgKLSB1bnNpZ25lZCBpbnQgdHJ1ZXNpemU7CisgIHVuc2lnbmVkIGludCB0cnVlc2l6ZTsKIH07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNvdW5kZm9udF92b2ljZV9tYXAgewotIGludCBtYXBfYmFuaywgbWFwX2luc3RyLCBtYXBfa2V5OwotIGludCBzcmNfYmFuaywgc3JjX2luc3RyLCBzcmNfa2V5OworICBpbnQgbWFwX2JhbmssIG1hcF9pbnN0ciwgbWFwX2tleTsKKyAgaW50IHNyY19iYW5rLCBzcmNfaW5zdHIsIHNyY19rZXk7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU05EUlZfRU1VWF9IV0RFUF9OQU1FICJFbXV4IFdhdmVUYWJsZSIKICNkZWZpbmUgU05EUlZfRU1VWF9WRVJTSU9OICgoMSA8PCAxNikgfCAoMCA8PCA4KSB8IDApCiBzdHJ1Y3Qgc25kX2VtdXhfbWlzY19tb2RlIHsKLSBpbnQgcG9ydDsKKyAgaW50IHBvcnQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIGludCBtb2RlOwotIGludCB2YWx1ZTsKLSBpbnQgdmFsdWUyOworICBpbnQgbW9kZTsKKyAgaW50IHZhbHVlOworICBpbnQgdmFsdWUyOwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFNORFJWX0VNVVhfSU9DVExfVkVSU0lPTiBfSU9SKCdIJywgMHg4MCwgdW5zaWduZWQgaW50KQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS92aWRlby9hZGYuaCBiL2xpYmMva2VybmVsL3VhcGkvdmlkZW8vYWRmLmgKaW5kZXggZmUyM2UwMS4uNzcyMDNhNSAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS92aWRlby9hZGYuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3ZpZGVvL2FkZi5oCkBAIC0yNywxMzcgKzI3LDEzNyBAQAogI2RlZmluZSBBREZfTUFYX0NVU1RPTV9EQVRBX1NJWkUgNDA5NgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIGVudW0gYWRmX2ludGVyZmFjZV90eXBlIHsKLSBBREZfSU5URl9EU0kgPSAwLAotIEFERl9JTlRGX2VEUCA9IDEsCi0gQURGX0lOVEZfRFBJID0gMiwKKyAgQURGX0lOVEZfRFNJID0gMCwKKyAgQURGX0lOVEZfZURQID0gMSwKKyAgQURGX0lOVEZfRFBJID0gMiwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQURGX0lOVEZfVkdBID0gMywKLSBBREZfSU5URl9EVkkgPSA0LAotIEFERl9JTlRGX0hETUkgPSA1LAotIEFERl9JTlRGX01FTU9SWSA9IDYsCisgIEFERl9JTlRGX1ZHQSA9IDMsCisgIEFERl9JTlRGX0RWSSA9IDQsCisgIEFERl9JTlRGX0hETUkgPSA1LAorICBBREZfSU5URl9NRU1PUlkgPSA2LAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBBREZfSU5URl9UWVBFX0RFVklDRV9DVVNUT00gPSAxMjgsCi0gQURGX0lOVEZfVFlQRV9NQVggPSAofihfX3UzMikwKSwKKyAgQURGX0lOVEZfVFlQRV9ERVZJQ0VfQ1VTVE9NID0gMTI4LAorICBBREZfSU5URl9UWVBFX01BWCA9ICh+KF9fdTMyKSAwKSwKIH07CiAjZGVmaW5lIEFERl9JTlRGX0ZMQUdfUFJJTUFSWSAoMSA8PCAwKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQURGX0lOVEZfRkxBR19FWFRFUk5BTCAoMSA8PCAxKQogZW51bSBhZGZfZXZlbnRfdHlwZSB7Ci0gQURGX0VWRU5UX1ZTWU5DID0gMCwKLSBBREZfRVZFTlRfSE9UUExVRyA9IDEsCisgIEFERl9FVkVOVF9WU1lOQyA9IDAsCisgIEFERl9FVkVOVF9IT1RQTFVHID0gMSwKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gQURGX0VWRU5UX0RFVklDRV9DVVNUT00gPSAxMjgsCi0gQURGX0VWRU5UX1RZUEVfTUFYID0gMjU1LAorICBBREZfRVZFTlRfREVWSUNFX0NVU1RPTSA9IDEyOCwKKyAgQURGX0VWRU5UX1RZUEVfTUFYID0gMjU1LAogfTsKIHN0cnVjdCBhZGZfc2V0X2V2ZW50IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCB0eXBlOwotIF9fdTggZW5hYmxlZDsKKyAgX191OCB0eXBlOworICBfX3U4IGVuYWJsZWQ7CiB9Owogc3RydWN0IGFkZl9ldmVudCB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggdHlwZTsKLSBfX3UzMiBsZW5ndGg7CisgIF9fdTggdHlwZTsKKyAgX191MzIgbGVuZ3RoOwogfTsKIHN0cnVjdCBhZGZfdnN5bmNfZXZlbnQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzdHJ1Y3QgYWRmX2V2ZW50IGJhc2U7Ci0gX19hbGlnbmVkX3U2NCB0aW1lc3RhbXA7CisgIHN0cnVjdCBhZGZfZXZlbnQgYmFzZTsKKyAgX19hbGlnbmVkX3U2NCB0aW1lc3RhbXA7CiB9Owogc3RydWN0IGFkZl9ob3RwbHVnX2V2ZW50IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGFkZl9ldmVudCBiYXNlOwotIF9fdTggY29ubmVjdGVkOworICBzdHJ1Y3QgYWRmX2V2ZW50IGJhc2U7CisgIF9fdTggY29ubmVjdGVkOwogfTsKICNkZWZpbmUgQURGX01BWF9QTEFORVMgNAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBhZGZfYnVmZmVyX2NvbmZpZyB7Ci0gX191MzIgb3ZlcmxheV9lbmdpbmU7Ci0gX191MzIgdzsKLSBfX3UzMiBoOworICBfX3UzMiBvdmVybGF5X2VuZ2luZTsKKyAgX191MzIgdzsKKyAgX191MzIgaDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZm9ybWF0OwotIF9fczMyIGZkW0FERl9NQVhfUExBTkVTXTsKLSBfX3UzMiBvZmZzZXRbQURGX01BWF9QTEFORVNdOwotIF9fdTMyIHBpdGNoW0FERl9NQVhfUExBTkVTXTsKKyAgX191MzIgZm9ybWF0OworICBfX3MzMiBmZFtBREZfTUFYX1BMQU5FU107CisgIF9fdTMyIG9mZnNldFtBREZfTUFYX1BMQU5FU107CisgIF9fdTMyIHBpdGNoW0FERl9NQVhfUExBTkVTXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBuX3BsYW5lczsKLSBfX3MzMiBhY3F1aXJlX2ZlbmNlOworICBfX3U4IG5fcGxhbmVzOworICBfX3MzMiBhY3F1aXJlX2ZlbmNlOwogfTsKICNkZWZpbmUgQURGX01BWF9CVUZGRVJTICg0MDk2IC8gc2l6ZW9mKHN0cnVjdCBhZGZfYnVmZmVyX2NvbmZpZykpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGFkZl9wb3N0X2NvbmZpZyB7Ci0gc2l6ZV90IG5faW50ZXJmYWNlczsKLSBfX3UzMiBfX3VzZXIgKmludGVyZmFjZXM7Ci0gc2l6ZV90IG5fYnVmczsKKyAgc2l6ZV90IG5faW50ZXJmYWNlczsKKyAgX191MzIgX191c2VyICogaW50ZXJmYWNlczsKKyAgc2l6ZV90IG5fYnVmczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc3RydWN0IGFkZl9idWZmZXJfY29uZmlnIF9fdXNlciAqYnVmczsKLSBzaXplX3QgY3VzdG9tX2RhdGFfc2l6ZTsKLSB2b2lkIF9fdXNlciAqY3VzdG9tX2RhdGE7Ci0gX19zMzIgY29tcGxldGVfZmVuY2U7CisgIHN0cnVjdCBhZGZfYnVmZmVyX2NvbmZpZyBfX3VzZXIgKiBidWZzOworICBzaXplX3QgY3VzdG9tX2RhdGFfc2l6ZTsKKyAgdm9pZCBfX3VzZXIgKiBjdXN0b21fZGF0YTsKKyAgX19zMzIgY29tcGxldGVfZmVuY2U7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKICNkZWZpbmUgQURGX01BWF9JTlRFUkZBQ0VTICg0MDk2IC8gc2l6ZW9mKF9fdTMyKSkKIHN0cnVjdCBhZGZfc2ltcGxlX2J1ZmZlcl9hbGxvYyB7Ci0gX191MTYgdzsKKyAgX191MTYgdzsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgaDsKLSBfX3UzMiBmb3JtYXQ7Ci0gX19zMzIgZmQ7Ci0gX191MzIgb2Zmc2V0OworICBfX3UxNiBoOworICBfX3UzMiBmb3JtYXQ7CisgIF9fczMyIGZkOworICBfX3UzMiBvZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHBpdGNoOworICBfX3UzMiBwaXRjaDsKIH07CiBzdHJ1Y3QgYWRmX3NpbXBsZV9wb3N0X2NvbmZpZyB7Ci0gc3RydWN0IGFkZl9idWZmZXJfY29uZmlnIGJ1ZjsKKyAgc3RydWN0IGFkZl9idWZmZXJfY29uZmlnIGJ1ZjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX19zMzIgY29tcGxldGVfZmVuY2U7CisgIF9fczMyIGNvbXBsZXRlX2ZlbmNlOwogfTsKIHN0cnVjdCBhZGZfYXR0YWNobWVudF9jb25maWcgewotIF9fdTMyIG92ZXJsYXlfZW5naW5lOworICBfX3UzMiBvdmVybGF5X2VuZ2luZTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgaW50ZXJmYWNlOworICBfX3UzMiBpbnRlcmZhY2U7CiB9Owogc3RydWN0IGFkZl9kZXZpY2VfZGF0YSB7Ci0gY2hhciBuYW1lW0FERl9OQU1FX0xFTl07CisgIGNoYXIgbmFtZVtBREZfTkFNRV9MRU5dOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaXplX3Qgbl9hdHRhY2htZW50czsKLSBzdHJ1Y3QgYWRmX2F0dGFjaG1lbnRfY29uZmlnIF9fdXNlciAqYXR0YWNobWVudHM7Ci0gc2l6ZV90IG5fYWxsb3dlZF9hdHRhY2htZW50czsKLSBzdHJ1Y3QgYWRmX2F0dGFjaG1lbnRfY29uZmlnIF9fdXNlciAqYWxsb3dlZF9hdHRhY2htZW50czsKKyAgc2l6ZV90IG5fYXR0YWNobWVudHM7CisgIHN0cnVjdCBhZGZfYXR0YWNobWVudF9jb25maWcgX191c2VyICogYXR0YWNobWVudHM7CisgIHNpemVfdCBuX2FsbG93ZWRfYXR0YWNobWVudHM7CisgIHN0cnVjdCBhZGZfYXR0YWNobWVudF9jb25maWcgX191c2VyICogYWxsb3dlZF9hdHRhY2htZW50czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2l6ZV90IGN1c3RvbV9kYXRhX3NpemU7Ci0gdm9pZCBfX3VzZXIgKmN1c3RvbV9kYXRhOworICBzaXplX3QgY3VzdG9tX2RhdGFfc2l6ZTsKKyAgdm9pZCBfX3VzZXIgKiBjdXN0b21fZGF0YTsKIH07CiAjZGVmaW5lIEFERl9NQVhfQVRUQUNITUVOVFMgKDQwOTYgLyBzaXplb2Yoc3RydWN0IGFkZl9hdHRhY2htZW50X2NvbmZpZykpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGFkZl9pbnRlcmZhY2VfZGF0YSB7Ci0gY2hhciBuYW1lW0FERl9OQU1FX0xFTl07Ci0gX191MzIgdHlwZTsKLSBfX3UzMiBpZDsKKyAgY2hhciBuYW1lW0FERl9OQU1FX0xFTl07CisgIF9fdTMyIHR5cGU7CisgIF9fdTMyIGlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBmbGFnczsKLSBfX3U4IGRwbXNfc3RhdGU7Ci0gX191OCBob3RwbHVnX2RldGVjdDsKLSBfX3UxNiB3aWR0aF9tbTsKKyAgX191MzIgZmxhZ3M7CisgIF9fdTggZHBtc19zdGF0ZTsKKyAgX191OCBob3RwbHVnX2RldGVjdDsKKyAgX191MTYgd2lkdGhfbW07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTE2IGhlaWdodF9tbTsKLSBzdHJ1Y3QgZHJtX21vZGVfbW9kZWluZm8gY3VycmVudF9tb2RlOwotIHNpemVfdCBuX2F2YWlsYWJsZV9tb2RlczsKLSBzdHJ1Y3QgZHJtX21vZGVfbW9kZWluZm8gX191c2VyICphdmFpbGFibGVfbW9kZXM7CisgIF9fdTE2IGhlaWdodF9tbTsKKyAgc3RydWN0IGRybV9tb2RlX21vZGVpbmZvIGN1cnJlbnRfbW9kZTsKKyAgc2l6ZV90IG5fYXZhaWxhYmxlX21vZGVzOworICBzdHJ1Y3QgZHJtX21vZGVfbW9kZWluZm8gX191c2VyICogYXZhaWxhYmxlX21vZGVzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBzaXplX3QgY3VzdG9tX2RhdGFfc2l6ZTsKLSB2b2lkIF9fdXNlciAqY3VzdG9tX2RhdGE7CisgIHNpemVfdCBjdXN0b21fZGF0YV9zaXplOworICB2b2lkIF9fdXNlciAqIGN1c3RvbV9kYXRhOwogfTsKICNkZWZpbmUgQURGX01BWF9NT0RFUyAoNDA5NiAvIHNpemVvZihzdHJ1Y3QgZHJtX21vZGVfbW9kZWluZm8pKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBhZGZfb3ZlcmxheV9lbmdpbmVfZGF0YSB7Ci0gY2hhciBuYW1lW0FERl9OQU1FX0xFTl07Ci0gc2l6ZV90IG5fc3VwcG9ydGVkX2Zvcm1hdHM7Ci0gX191MzIgX191c2VyICpzdXBwb3J0ZWRfZm9ybWF0czsKKyAgY2hhciBuYW1lW0FERl9OQU1FX0xFTl07CisgIHNpemVfdCBuX3N1cHBvcnRlZF9mb3JtYXRzOworICBfX3UzMiBfX3VzZXIgKiBzdXBwb3J0ZWRfZm9ybWF0czsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gc2l6ZV90IGN1c3RvbV9kYXRhX3NpemU7Ci0gdm9pZCBfX3VzZXIgKmN1c3RvbV9kYXRhOworICBzaXplX3QgY3VzdG9tX2RhdGFfc2l6ZTsKKyAgdm9pZCBfX3VzZXIgKiBjdXN0b21fZGF0YTsKIH07CiAjZGVmaW5lIEFERl9NQVhfU1VQUE9SVEVEX0ZPUk1BVFMgKDQwOTYgLyBzaXplb2YoX191MzIpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTE2NywxNCArMTY3LDE0IEBACiAjZGVmaW5lIEFERl9CTEFOSyBfSU9XKEFERl9JT0NUTF9UWVBFLCAxLCBfX3U4KQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgQURGX1BPU1RfQ09ORklHIF9JT1coQURGX0lPQ1RMX1RZUEUsIDIsIHN0cnVjdCBhZGZfcG9zdF9jb25maWcpCi0jZGVmaW5lIEFERl9TRVRfTU9ERSBfSU9XKEFERl9JT0NUTF9UWVBFLCAzLCAgIHN0cnVjdCBkcm1fbW9kZV9tb2RlaW5mbykKKyNkZWZpbmUgQURGX1NFVF9NT0RFIF9JT1coQURGX0lPQ1RMX1RZUEUsIDMsIHN0cnVjdCBkcm1fbW9kZV9tb2RlaW5mbykKICNkZWZpbmUgQURGX0dFVF9ERVZJQ0VfREFUQSBfSU9SKEFERl9JT0NUTF9UWVBFLCA0LCBzdHJ1Y3QgYWRmX2RldmljZV9kYXRhKQotI2RlZmluZSBBREZfR0VUX0lOVEVSRkFDRV9EQVRBIF9JT1IoQURGX0lPQ1RMX1RZUEUsIDUsICAgc3RydWN0IGFkZl9pbnRlcmZhY2VfZGF0YSkKKyNkZWZpbmUgQURGX0dFVF9JTlRFUkZBQ0VfREFUQSBfSU9SKEFERl9JT0NUTF9UWVBFLCA1LCBzdHJ1Y3QgYWRmX2ludGVyZmFjZV9kYXRhKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgQURGX0dFVF9PVkVSTEFZX0VOR0lORV9EQVRBICAgX0lPUihBREZfSU9DVExfVFlQRSwgNiwgICBzdHJ1Y3QgYWRmX292ZXJsYXlfZW5naW5lX2RhdGEpCi0jZGVmaW5lIEFERl9TSU1QTEVfUE9TVF9DT05GSUcgX0lPVyhBREZfSU9DVExfVFlQRSwgNywgICBzdHJ1Y3QgYWRmX3NpbXBsZV9wb3N0X2NvbmZpZykKLSNkZWZpbmUgQURGX1NJTVBMRV9CVUZGRVJfQUxMT0MgX0lPVyhBREZfSU9DVExfVFlQRSwgOCwgICBzdHJ1Y3QgYWRmX3NpbXBsZV9idWZmZXJfYWxsb2MpCi0jZGVmaW5lIEFERl9BVFRBQ0ggX0lPVyhBREZfSU9DVExfVFlQRSwgOSwgICBzdHJ1Y3QgYWRmX2F0dGFjaG1lbnRfY29uZmlnKQorI2RlZmluZSBBREZfR0VUX09WRVJMQVlfRU5HSU5FX0RBVEEgX0lPUihBREZfSU9DVExfVFlQRSwgNiwgc3RydWN0IGFkZl9vdmVybGF5X2VuZ2luZV9kYXRhKQorI2RlZmluZSBBREZfU0lNUExFX1BPU1RfQ09ORklHIF9JT1coQURGX0lPQ1RMX1RZUEUsIDcsIHN0cnVjdCBhZGZfc2ltcGxlX3Bvc3RfY29uZmlnKQorI2RlZmluZSBBREZfU0lNUExFX0JVRkZFUl9BTExPQyBfSU9XKEFERl9JT0NUTF9UWVBFLCA4LCBzdHJ1Y3QgYWRmX3NpbXBsZV9idWZmZXJfYWxsb2MpCisjZGVmaW5lIEFERl9BVFRBQ0ggX0lPVyhBREZfSU9DVExfVFlQRSwgOSwgc3RydWN0IGFkZl9hdHRhY2htZW50X2NvbmZpZykKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0jZGVmaW5lIEFERl9ERVRBQ0ggX0lPVyhBREZfSU9DVExfVFlQRSwgMTAsICAgc3RydWN0IGFkZl9hdHRhY2htZW50X2NvbmZpZykKKyNkZWZpbmUgQURGX0RFVEFDSCBfSU9XKEFERl9JT0NUTF9UWVBFLCAxMCwgc3RydWN0IGFkZl9hdHRhY2htZW50X2NvbmZpZykKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS92aWRlby9lZGlkLmggYi9saWJjL2tlcm5lbC91YXBpL3ZpZGVvL2VkaWQuaAppbmRleCA2ODU1YzVlLi4yYWIyYjYyIDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3ZpZGVvL2VkaWQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3ZpZGVvL2VkaWQuaApAQCAtMTksNyArMTksNyBAQAogI2lmbmRlZiBfVUFQSV9fbGludXhfdmlkZW9fZWRpZF9oX18KICNkZWZpbmUgX1VBUElfX2xpbnV4X3ZpZGVvX2VkaWRfaF9fCiBzdHJ1Y3QgZWRpZF9pbmZvIHsKLSB1bnNpZ25lZCBjaGFyIGR1bW15WzEyOF07CisgIHVuc2lnbmVkIGNoYXIgZHVtbXlbMTI4XTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3ZpZGVvL3Npc2ZiLmggYi9saWJjL2tlcm5lbC91YXBpL3ZpZGVvL3Npc2ZiLmgKaW5kZXggYTQ2NDUzMC4uMjljZGFlMCAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvdWFwaS92aWRlby9zaXNmYi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkvdmlkZW8vc2lzZmIuaApAQCAtNTIsNyArNTIsNyBAQAogI2RlZmluZSBDUlQyX0VOQUJMRSAoQ1JUMl9MQ0QgfCBDUlQyX1RWIHwgQ1JUMl9WR0EpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBUVl9TVEFOREFSRCAoVFZfTlRTQyB8IFRWX1BBTCB8IFRWX1BBTE0gfCBUVl9QQUxOIHwgVFZfTlRTQ0opCi0jZGVmaW5lIFRWX0lOVEVSRkFDRSAoVFZfQVZJREVPfFRWX1NWSURFT3xUVl9TQ0FSVHxUVl9ISVZJU0lPTnxUVl9ZUEJQUnxUVl9DSFNDQVJUfFRWX0NIWVBCUFI1MjVJKQorI2RlZmluZSBUVl9JTlRFUkZBQ0UgKFRWX0FWSURFTyB8IFRWX1NWSURFTyB8IFRWX1NDQVJUIHwgVFZfSElWSVNJT04gfCBUVl9ZUEJQUiB8IFRWX0NIU0NBUlQgfCBUVl9DSFlQQlBSNTI1SSkKICNkZWZpbmUgVFZfWVBCUFI1MjVJIFRWX05UU0MKICNkZWZpbmUgVFZfWVBCUFI1MjVQIFRWX1BBTAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KQEAgLTY5LDUyICs2OSw1MiBAQAogI2RlZmluZSBWQl9ESVNQTU9ERV9EVUFMIFZCX0RVQUxWSUVXX01PREUKICNkZWZpbmUgVkJfRElTUExBWV9NT0RFIChTSU5HTEVfTU9ERSB8IE1JUlJPUl9NT0RFIHwgRFVBTFZJRVdfTU9ERSkKIHN0cnVjdCBzaXNmYl9pbmZvIHsKLSBfX3UzMiBzaXNmYl9pZDsKKyAgX191MzIgc2lzZmJfaWQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2lmbmRlZiBTSVNGQl9JRAogI2RlZmluZSBTSVNGQl9JRCAweDUzNDk1MzQ2CiAjZW5kaWYKLSBfX3UzMiBjaGlwX2lkOworICBfX3UzMiBjaGlwX2lkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBtZW1vcnk7Ci0gX191MzIgaGVhcHN0YXJ0OwotIF9fdTggZmJ2aWRtb2RlOwotIF9fdTggc2lzZmJfdmVyc2lvbjsKKyAgX191MzIgbWVtb3J5OworICBfX3UzMiBoZWFwc3RhcnQ7CisgIF9fdTggZmJ2aWRtb2RlOworICBfX3U4IHNpc2ZiX3ZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggc2lzZmJfcmV2aXNpb247Ci0gX191OCBzaXNmYl9wYXRjaGxldmVsOwotIF9fdTggc2lzZmJfY2FwczsKLSBfX3UzMiBzaXNmYl90cWxlbjsKKyAgX191OCBzaXNmYl9yZXZpc2lvbjsKKyAgX191OCBzaXNmYl9wYXRjaGxldmVsOworICBfX3U4IHNpc2ZiX2NhcHM7CisgIF9fdTMyIHNpc2ZiX3RxbGVuOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzaXNmYl9wY2lidXM7Ci0gX191MzIgc2lzZmJfcGNpc2xvdDsKLSBfX3UzMiBzaXNmYl9wY2lmdW5jOwotIF9fdTggc2lzZmJfbGNkcGRjOworICBfX3UzMiBzaXNmYl9wY2lidXM7CisgIF9fdTMyIHNpc2ZiX3BjaXNsb3Q7CisgIF9fdTMyIHNpc2ZiX3BjaWZ1bmM7CisgIF9fdTggc2lzZmJfbGNkcGRjOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3U4IHNpc2ZiX2xjZGE7Ci0gX191MzIgc2lzZmJfdmJmbGFnczsKLSBfX3UzMiBzaXNmYl9jdXJyZW50dmJmbGFnczsKLSBfX3UzMiBzaXNmYl9zY2FsZWxjZDsKKyAgX191OCBzaXNmYl9sY2RhOworICBfX3UzMiBzaXNmYl92YmZsYWdzOworICBfX3UzMiBzaXNmYl9jdXJyZW50dmJmbGFnczsKKyAgX191MzIgc2lzZmJfc2NhbGVsY2Q7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNpc2ZiX3NwZWNpYWx0aW1pbmc7Ci0gX191OCBzaXNmYl9oYXZlZW1pOwotIF9fdTggc2lzZmJfZW1pMzAsc2lzZmJfZW1pMzEsc2lzZmJfZW1pMzIsc2lzZmJfZW1pMzM7Ci0gX191OCBzaXNmYl9oYXZlZW1pbGNkOworICBfX3UzMiBzaXNmYl9zcGVjaWFsdGltaW5nOworICBfX3U4IHNpc2ZiX2hhdmVlbWk7CisgIF9fdTggc2lzZmJfZW1pMzAsIHNpc2ZiX2VtaTMxLCBzaXNmYl9lbWkzMiwgc2lzZmJfZW1pMzM7CisgIF9fdTggc2lzZmJfaGF2ZWVtaWxjZDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzaXNmYl9sY2RwZGNhOwotIF9fdTE2IHNpc2ZiX3R2eHBvcywgc2lzZmJfdHZ5cG9zOwotIF9fdTMyIHNpc2ZiX2hlYXBzaXplOwotIF9fdTMyIHNpc2ZiX3ZpZGVvb2Zmc2V0OworICBfX3U4IHNpc2ZiX2xjZHBkY2E7CisgIF9fdTE2IHNpc2ZiX3R2eHBvcywgc2lzZmJfdHZ5cG9zOworICBfX3UzMiBzaXNmYl9oZWFwc2l6ZTsKKyAgX191MzIgc2lzZmJfdmlkZW9vZmZzZXQ7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIHNpc2ZiX2N1cmZzdG47Ci0gX191MzIgc2lzZmJfY3VyZHN0bjsKLSBfX3UxNiBzaXNmYl9wY2lfdmVuZG9yOwotIF9fdTMyIHNpc2ZiX3ZiZmxhZ3MyOworICBfX3UzMiBzaXNmYl9jdXJmc3RuOworICBfX3UzMiBzaXNmYl9jdXJkc3RuOworICBfX3UxNiBzaXNmYl9wY2lfdmVuZG9yOworICBfX3UzMiBzaXNmYl92YmZsYWdzMjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191OCBzaXNmYl9jYW5fcG9zdDsKLSBfX3U4IHNpc2ZiX2NhcmRfcG9zdGVkOwotIF9fdTggc2lzZmJfd2FzX2Jvb3RfZGV2aWNlOwotIF9fdTggcmVzZXJ2ZWRbMTgzXTsKKyAgX191OCBzaXNmYl9jYW5fcG9zdDsKKyAgX191OCBzaXNmYl9jYXJkX3Bvc3RlZDsKKyAgX191OCBzaXNmYl93YXNfYm9vdF9kZXZpY2U7CisgIF9fdTggcmVzZXJ2ZWRbMTgzXTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBTSVNGQl9DTURfR0VUVkJGTEFHUyAweDU1QUEwMDAxCkBAIC0xMjksMzEgKzEyOSwzMSBAQAogI2RlZmluZSBTSVNGQl9DTURfRVJSX1VOS05PV04gMHg4MDAwZmZmZgogI2RlZmluZSBTSVNGQl9DTURfRVJSX09USEVSIDB4ODAwMTAwMDAKIHN0cnVjdCBzaXNmYl9jbWQgewotIF9fdTMyIHNpc2ZiX2NtZDsKKyAgX191MzIgc2lzZmJfY21kOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBzaXNmYl9hcmdbMTZdOwotIF9fdTMyIHNpc2ZiX3Jlc3VsdFs0XTsKKyAgX191MzIgc2lzZmJfYXJnWzE2XTsKKyAgX191MzIgc2lzZmJfcmVzdWx0WzRdOwogfTsKLSNkZWZpbmUgU0lTRkJfR0VUX0lORk9fU0laRSBfSU9SKDB4RjMsMHgwMCxfX3UzMikKKyNkZWZpbmUgU0lTRkJfR0VUX0lORk9fU0laRSBfSU9SKDB4RjMsIDB4MDAsIF9fdTMyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0lTRkJfR0VUX0lORk8gX0lPUigweEYzLDB4MDEsc3RydWN0IHNpc2ZiX2luZm8pCi0jZGVmaW5lIFNJU0ZCX0dFVF9WQlJTVEFUVVMgX0lPUigweEYzLDB4MDIsX191MzIpCi0jZGVmaW5lIFNJU0ZCX0dFVF9BVVRPTUFYSU1JWkUgX0lPUigweEYzLDB4MDMsX191MzIpCi0jZGVmaW5lIFNJU0ZCX1NFVF9BVVRPTUFYSU1JWkUgX0lPVygweEYzLDB4MDMsX191MzIpCisjZGVmaW5lIFNJU0ZCX0dFVF9JTkZPIF9JT1IoMHhGMywgMHgwMSwgc3RydWN0IHNpc2ZiX2luZm8pCisjZGVmaW5lIFNJU0ZCX0dFVF9WQlJTVEFUVVMgX0lPUigweEYzLCAweDAyLCBfX3UzMikKKyNkZWZpbmUgU0lTRkJfR0VUX0FVVE9NQVhJTUlaRSBfSU9SKDB4RjMsIDB4MDMsIF9fdTMyKQorI2RlZmluZSBTSVNGQl9TRVRfQVVUT01BWElNSVpFIF9JT1coMHhGMywgMHgwMywgX191MzIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotI2RlZmluZSBTSVNGQl9HRVRfVFZQT1NPRkZTRVQgX0lPUigweEYzLDB4MDQsX191MzIpCi0jZGVmaW5lIFNJU0ZCX1NFVF9UVlBPU09GRlNFVCBfSU9XKDB4RjMsMHgwNCxfX3UzMikKLSNkZWZpbmUgU0lTRkJfQ09NTUFORCBfSU9XUigweEYzLDB4MDUsc3RydWN0IHNpc2ZiX2NtZCkKLSNkZWZpbmUgU0lTRkJfU0VUX0xPQ0sgX0lPVygweEYzLDB4MDYsX191MzIpCisjZGVmaW5lIFNJU0ZCX0dFVF9UVlBPU09GRlNFVCBfSU9SKDB4RjMsIDB4MDQsIF9fdTMyKQorI2RlZmluZSBTSVNGQl9TRVRfVFZQT1NPRkZTRVQgX0lPVygweEYzLCAweDA0LCBfX3UzMikKKyNkZWZpbmUgU0lTRkJfQ09NTUFORCBfSU9XUigweEYzLCAweDA1LCBzdHJ1Y3Qgc2lzZmJfY21kKQorI2RlZmluZSBTSVNGQl9TRVRfTE9DSyBfSU9XKDB4RjMsIDB4MDYsIF9fdTMyKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgU0lTRkJfR0VUX0lORk9fT0xEIF9JT1IoJ24nLDB4RjgsX191MzIpCi0jZGVmaW5lIFNJU0ZCX0dFVF9WQlJTVEFUVVNfT0xEIF9JT1IoJ24nLDB4RjksX191MzIpCi0jZGVmaW5lIFNJU0ZCX0dFVF9BVVRPTUFYSU1JWkVfT0xEIF9JT1IoJ24nLDB4RkEsX191MzIpCi0jZGVmaW5lIFNJU0ZCX1NFVF9BVVRPTUFYSU1JWkVfT0xEIF9JT1coJ24nLDB4RkEsX191MzIpCisjZGVmaW5lIFNJU0ZCX0dFVF9JTkZPX09MRCBfSU9SKCduJywgMHhGOCwgX191MzIpCisjZGVmaW5lIFNJU0ZCX0dFVF9WQlJTVEFUVVNfT0xEIF9JT1IoJ24nLCAweEY5LCBfX3UzMikKKyNkZWZpbmUgU0lTRkJfR0VUX0FVVE9NQVhJTUlaRV9PTEQgX0lPUignbicsIDB4RkEsIF9fdTMyKQorI2RlZmluZSBTSVNGQl9TRVRfQVVUT01BWElNSVpFX09MRCBfSU9XKCduJywgMHhGQSwgX191MzIpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IHNpc19tZW1yZXEgewotIF9fdTMyIG9mZnNldDsKLSBfX3UzMiBzaXplOworICBfX3UzMiBvZmZzZXQ7CisgIF9fdTMyIHNpemU7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS92aWRlby91dmVzYWZiLmggYi9saWJjL2tlcm5lbC91YXBpL3ZpZGVvL3V2ZXNhZmIuaAppbmRleCBhYzMzMDY0Li4yMjQwNzg1IDEwMDY0NAotLS0gYS9saWJjL2tlcm5lbC91YXBpL3ZpZGVvL3V2ZXNhZmIuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3ZpZGVvL3V2ZXNhZmIuaApAQCAtMjEsMjUgKzIxLDI1IEBACiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIHN0cnVjdCB2ODZfcmVncyB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIGVieDsKLSBfX3UzMiBlY3g7Ci0gX191MzIgZWR4OwotIF9fdTMyIGVzaTsKKyAgX191MzIgZWJ4OworICBfX3UzMiBlY3g7CisgIF9fdTMyIGVkeDsKKyAgX191MzIgZXNpOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UzMiBlZGk7Ci0gX191MzIgZWJwOwotIF9fdTMyIGVheDsKLSBfX3UzMiBlaXA7CisgIF9fdTMyIGVkaTsKKyAgX191MzIgZWJwOworICBfX3UzMiBlYXg7CisgIF9fdTMyIGVpcDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MzIgZWZsYWdzOwotIF9fdTMyIGVzcDsKLSBfX3UxNiBjczsKLSBfX3UxNiBzczsKKyAgX191MzIgZWZsYWdzOworICBfX3UzMiBlc3A7CisgIF9fdTE2IGNzOworICBfX3UxNiBzczsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191MTYgZXM7Ci0gX191MTYgZHM7Ci0gX191MTYgZnM7Ci0gX191MTYgZ3M7CisgIF9fdTE2IGVzOworICBfX3UxNiBkczsKKyAgX191MTYgZnM7CisgIF9fdTE2IGdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIH07CiAjZGVmaW5lIFRGX1ZCRUlCIDB4MDEKQEAgLTQ5LDMxICs0OSwzMSBAQAogI2RlZmluZSBURl9CVUZfUkVUIDB4MDgKICNkZWZpbmUgVEZfRVhJVCAweDEwCiBzdHJ1Y3QgdXZlc2FmYl90YXNrIHsKLSBfX3U4IGZsYWdzOworICBfX3U4IGZsYWdzOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgYnVmX2xlbjsKLSBzdHJ1Y3Qgdjg2X3JlZ3MgcmVnczsKKyAgaW50IGJ1Zl9sZW47CisgIHN0cnVjdCB2ODZfcmVncyByZWdzOwogfTsKICNkZWZpbmUgVkJFX0NBUF9DQU5fU1dJVENIX0RBQyAweDAxCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2RlZmluZSBWQkVfQ0FQX1ZHQUNPTVBBVCAweDAyCiBzdHJ1Y3QgdmJlX2liIHsKLSBjaGFyIHZiZV9zaWduYXR1cmVbNF07Ci0gX191MTYgdmJlX3ZlcnNpb247CisgIGNoYXIgdmJlX3NpZ25hdHVyZVs0XTsKKyAgX191MTYgdmJlX3ZlcnNpb247CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTMyIG9lbV9zdHJpbmdfcHRyOwotIF9fdTMyIGNhcGFiaWxpdGllczsKLSBfX3UzMiBtb2RlX2xpc3RfcHRyOwotIF9fdTE2IHRvdGFsX21lbW9yeTsKKyAgX191MzIgb2VtX3N0cmluZ19wdHI7CisgIF9fdTMyIGNhcGFiaWxpdGllczsKKyAgX191MzIgbW9kZV9saXN0X3B0cjsKKyAgX191MTYgdG90YWxfbWVtb3J5OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBfX3UxNiBvZW1fc29mdHdhcmVfcmV2OwotIF9fdTMyIG9lbV92ZW5kb3JfbmFtZV9wdHI7Ci0gX191MzIgb2VtX3Byb2R1Y3RfbmFtZV9wdHI7Ci0gX191MzIgb2VtX3Byb2R1Y3RfcmV2X3B0cjsKKyAgX191MTYgb2VtX3NvZnR3YXJlX3JldjsKKyAgX191MzIgb2VtX3ZlbmRvcl9uYW1lX3B0cjsKKyAgX191MzIgb2VtX3Byb2R1Y3RfbmFtZV9wdHI7CisgIF9fdTMyIG9lbV9wcm9kdWN0X3Jldl9wdHI7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIF9fdTggcmVzZXJ2ZWRbMjIyXTsKLSBjaGFyIG9lbV9kYXRhWzI1Nl07Ci0gY2hhciBtaXNjX2RhdGFbNTEyXTsKLX0gX19hdHRyaWJ1dGVfXyAoKHBhY2tlZCkpOworICBfX3U4IHJlc2VydmVkWzIyMl07CisgIGNoYXIgb2VtX2RhdGFbMjU2XTsKKyAgY2hhciBtaXNjX2RhdGFbNTEyXTsKK30gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3hlbi9ldnRjaG4uaCBiL2xpYmMva2VybmVsL3VhcGkveGVuL2V2dGNobi5oCmluZGV4IGQyMzVmNmEuLjJkZDIzYmUgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkveGVuL2V2dGNobi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkveGVuL2V2dGNobi5oCkBAIC0xOCwzMSArMTgsMzEgQEAKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2lmbmRlZiBfX0xJTlVYX1BVQkxJQ19FVlRDSE5fSF9fCiAjZGVmaW5lIF9fTElOVVhfUFVCTElDX0VWVENITl9IX18KLSNkZWZpbmUgSU9DVExfRVZUQ0hOX0JJTkRfVklSUSAgIF9JT0MoX0lPQ19OT05FLCAnRScsIDAsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZXZ0Y2huX2JpbmRfdmlycSkpCisjZGVmaW5lIElPQ1RMX0VWVENITl9CSU5EX1ZJUlEgX0lPQyhfSU9DX05PTkUsICdFJywgMCwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9ldnRjaG5fYmluZF92aXJxKSkKIHN0cnVjdCBpb2N0bF9ldnRjaG5fYmluZF92aXJxIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdW5zaWduZWQgaW50IHZpcnE7CisgIHVuc2lnbmVkIGludCB2aXJxOwogfTsKLSNkZWZpbmUgSU9DVExfRVZUQ0hOX0JJTkRfSU5URVJET01BSU4gICBfSU9DKF9JT0NfTk9ORSwgJ0UnLCAxLCBzaXplb2Yoc3RydWN0IGlvY3RsX2V2dGNobl9iaW5kX2ludGVyZG9tYWluKSkKKyNkZWZpbmUgSU9DVExfRVZUQ0hOX0JJTkRfSU5URVJET01BSU4gX0lPQyhfSU9DX05PTkUsICdFJywgMSwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9ldnRjaG5fYmluZF9pbnRlcmRvbWFpbikpCiBzdHJ1Y3QgaW9jdGxfZXZ0Y2huX2JpbmRfaW50ZXJkb21haW4gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmVtb3RlX2RvbWFpbiwgcmVtb3RlX3BvcnQ7CisgIHVuc2lnbmVkIGludCByZW1vdGVfZG9tYWluLCByZW1vdGVfcG9ydDsKIH07Ci0jZGVmaW5lIElPQ1RMX0VWVENITl9CSU5EX1VOQk9VTkRfUE9SVCAgIF9JT0MoX0lPQ19OT05FLCAnRScsIDIsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZXZ0Y2huX2JpbmRfdW5ib3VuZF9wb3J0KSkKKyNkZWZpbmUgSU9DVExfRVZUQ0hOX0JJTkRfVU5CT1VORF9QT1JUIF9JT0MoX0lPQ19OT05FLCAnRScsIDIsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZXZ0Y2huX2JpbmRfdW5ib3VuZF9wb3J0KSkKIHN0cnVjdCBpb2N0bF9ldnRjaG5fYmluZF91bmJvdW5kX3BvcnQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcmVtb3RlX2RvbWFpbjsKKyAgdW5zaWduZWQgaW50IHJlbW90ZV9kb21haW47CiB9OwotI2RlZmluZSBJT0NUTF9FVlRDSE5fVU5CSU5EICAgX0lPQyhfSU9DX05PTkUsICdFJywgMywgc2l6ZW9mKHN0cnVjdCBpb2N0bF9ldnRjaG5fdW5iaW5kKSkKKyNkZWZpbmUgSU9DVExfRVZUQ0hOX1VOQklORCBfSU9DKF9JT0NfTk9ORSwgJ0UnLCAzLCBzaXplb2Yoc3RydWN0IGlvY3RsX2V2dGNobl91bmJpbmQpKQogc3RydWN0IGlvY3RsX2V2dGNobl91bmJpbmQgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcG9ydDsKKyAgdW5zaWduZWQgaW50IHBvcnQ7CiB9OwotI2RlZmluZSBJT0NUTF9FVlRDSE5fTk9USUZZICAgX0lPQyhfSU9DX05PTkUsICdFJywgNCwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9ldnRjaG5fbm90aWZ5KSkKKyNkZWZpbmUgSU9DVExfRVZUQ0hOX05PVElGWSBfSU9DKF9JT0NfTk9ORSwgJ0UnLCA0LCBzaXplb2Yoc3RydWN0IGlvY3RsX2V2dGNobl9ub3RpZnkpKQogc3RydWN0IGlvY3RsX2V2dGNobl9ub3RpZnkgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1bnNpZ25lZCBpbnQgcG9ydDsKKyAgdW5zaWduZWQgaW50IHBvcnQ7CiB9OwotI2RlZmluZSBJT0NUTF9FVlRDSE5fUkVTRVQgICBfSU9DKF9JT0NfTk9ORSwgJ0UnLCA1LCAwKQorI2RlZmluZSBJT0NUTF9FVlRDSE5fUkVTRVQgX0lPQyhfSU9DX05PTkUsICdFJywgNSwgMCkKICNlbmRpZgogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KZGlmZiAtLWdpdCBhL2xpYmMva2VybmVsL3VhcGkveGVuL2dudGFsbG9jLmggYi9saWJjL2tlcm5lbC91YXBpL3hlbi9nbnRhbGxvYy5oCmluZGV4IDIwNzY4NDMuLjE3MTBmNGEgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkveGVuL2dudGFsbG9jLmgKKysrIGIvbGliYy9rZXJuZWwvdWFwaS94ZW4vZ250YWxsb2MuaApAQCAtMTgsMzAgKzE4LDMwIEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KICNpZm5kZWYgX19MSU5VWF9QVUJMSUNfR05UQUxMT0NfSF9fCiAjZGVmaW5lIF9fTElOVVhfUFVCTElDX0dOVEFMTE9DX0hfXwotI2RlZmluZSBJT0NUTF9HTlRBTExPQ19BTExPQ19HUkVGICBfSU9DKF9JT0NfTk9ORSwgJ0cnLCA1LCBzaXplb2Yoc3RydWN0IGlvY3RsX2dudGFsbG9jX2FsbG9jX2dyZWYpKQorI2RlZmluZSBJT0NUTF9HTlRBTExPQ19BTExPQ19HUkVGIF9JT0MoX0lPQ19OT05FLCAnRycsIDUsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZ250YWxsb2NfYWxsb2NfZ3JlZikpCiBzdHJ1Y3QgaW9jdGxfZ250YWxsb2NfYWxsb2NfZ3JlZiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVpbnQxNl90IGRvbWlkOwotIHVpbnQxNl90IGZsYWdzOwotIHVpbnQzMl90IGNvdW50OwotIHVpbnQ2NF90IGluZGV4OworICB1aW50MTZfdCBkb21pZDsKKyAgdWludDE2X3QgZmxhZ3M7CisgIHVpbnQzMl90IGNvdW50OworICB1aW50NjRfdCBpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZ3JlZl9pZHNbMV07CisgIHVpbnQzMl90IGdyZWZfaWRzWzFdOwogfTsKICNkZWZpbmUgR05UQUxMT0NfRkxBR19XUklUQUJMRSAxCi0jZGVmaW5lIElPQ1RMX0dOVEFMTE9DX0RFQUxMT0NfR1JFRiAgX0lPQyhfSU9DX05PTkUsICdHJywgNiwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9nbnRhbGxvY19kZWFsbG9jX2dyZWYpKQorI2RlZmluZSBJT0NUTF9HTlRBTExPQ19ERUFMTE9DX0dSRUYgX0lPQyhfSU9DX05PTkUsICdHJywgNiwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9nbnRhbGxvY19kZWFsbG9jX2dyZWYpKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KIHN0cnVjdCBpb2N0bF9nbnRhbGxvY19kZWFsbG9jX2dyZWYgewotIHVpbnQ2NF90IGluZGV4OwotIHVpbnQzMl90IGNvdW50OworICB1aW50NjRfdCBpbmRleDsKKyAgdWludDMyX3QgY291bnQ7CiB9OwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSU9DVExfR05UQUxMT0NfU0VUX1VOTUFQX05PVElGWSAgX0lPQyhfSU9DX05PTkUsICdHJywgNywgc2l6ZW9mKHN0cnVjdCBpb2N0bF9nbnRhbGxvY191bm1hcF9ub3RpZnkpKQorI2RlZmluZSBJT0NUTF9HTlRBTExPQ19TRVRfVU5NQVBfTk9USUZZIF9JT0MoX0lPQ19OT05FLCAnRycsIDcsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZ250YWxsb2NfdW5tYXBfbm90aWZ5KSkKIHN0cnVjdCBpb2N0bF9nbnRhbGxvY191bm1hcF9ub3RpZnkgewotIHVpbnQ2NF90IGluZGV4OwotIHVpbnQzMl90IGFjdGlvbjsKKyAgdWludDY0X3QgaW5kZXg7CisgIHVpbnQzMl90IGFjdGlvbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgZXZlbnRfY2hhbm5lbF9wb3J0OworICB1aW50MzJfdCBldmVudF9jaGFubmVsX3BvcnQ7CiB9OwogI2RlZmluZSBVTk1BUF9OT1RJRllfQ0xFQVJfQllURSAweDEKICNkZWZpbmUgVU5NQVBfTk9USUZZX1NFTkRfRVZFTlQgMHgyCmRpZmYgLS1naXQgYS9saWJjL2tlcm5lbC91YXBpL3hlbi9nbnRkZXYuaCBiL2xpYmMva2VybmVsL3VhcGkveGVuL2dudGRldi5oCmluZGV4IDI4YTJhM2EuLmMwMGU1YWIgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkveGVuL2dudGRldi5oCisrKyBiL2xpYmMva2VybmVsL3VhcGkveGVuL2dudGRldi5oCkBAIC0xOSw0NiArMTksNDYgQEAKICNpZm5kZWYgX19MSU5VWF9QVUJMSUNfR05UREVWX0hfXwogI2RlZmluZSBfX0xJTlVYX1BVQkxJQ19HTlRERVZfSF9fCiBzdHJ1Y3QgaW9jdGxfZ250ZGV2X2dyYW50X3JlZiB7Ci0gdWludDMyX3QgZG9taWQ7CisgIHVpbnQzMl90IGRvbWlkOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCByZWY7CisgIHVpbnQzMl90IHJlZjsKIH07Ci0jZGVmaW5lIElPQ1RMX0dOVERFVl9NQVBfR1JBTlRfUkVGICBfSU9DKF9JT0NfTk9ORSwgJ0cnLCAwLCBzaXplb2Yoc3RydWN0IGlvY3RsX2dudGRldl9tYXBfZ3JhbnRfcmVmKSkKKyNkZWZpbmUgSU9DVExfR05UREVWX01BUF9HUkFOVF9SRUYgX0lPQyhfSU9DX05PTkUsICdHJywgMCwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9nbnRkZXZfbWFwX2dyYW50X3JlZikpCiBzdHJ1Y3QgaW9jdGxfZ250ZGV2X21hcF9ncmFudF9yZWYgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBjb3VudDsKLSB1aW50MzJfdCBwYWQ7Ci0gdWludDY0X3QgaW5kZXg7Ci0gc3RydWN0IGlvY3RsX2dudGRldl9ncmFudF9yZWYgcmVmc1sxXTsKKyAgdWludDMyX3QgY291bnQ7CisgIHVpbnQzMl90IHBhZDsKKyAgdWludDY0X3QgaW5kZXg7CisgIHN0cnVjdCBpb2N0bF9nbnRkZXZfZ3JhbnRfcmVmIHJlZnNbMV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKLSNkZWZpbmUgSU9DVExfR05UREVWX1VOTUFQX0dSQU5UX1JFRiAgX0lPQyhfSU9DX05PTkUsICdHJywgMSwgc2l6ZW9mKHN0cnVjdCBpb2N0bF9nbnRkZXZfdW5tYXBfZ3JhbnRfcmVmKSkKKyNkZWZpbmUgSU9DVExfR05UREVWX1VOTUFQX0dSQU5UX1JFRiBfSU9DKF9JT0NfTk9ORSwgJ0cnLCAxLCBzaXplb2Yoc3RydWN0IGlvY3RsX2dudGRldl91bm1hcF9ncmFudF9yZWYpKQogc3RydWN0IGlvY3RsX2dudGRldl91bm1hcF9ncmFudF9yZWYgewotIHVpbnQ2NF90IGluZGV4OworICB1aW50NjRfdCBpbmRleDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgY291bnQ7Ci0gdWludDMyX3QgcGFkOworICB1aW50MzJfdCBjb3VudDsKKyAgdWludDMyX3QgcGFkOwogfTsKLSNkZWZpbmUgSU9DVExfR05UREVWX0dFVF9PRkZTRVRfRk9SX1ZBRERSICBfSU9DKF9JT0NfTk9ORSwgJ0cnLCAyLCBzaXplb2Yoc3RydWN0IGlvY3RsX2dudGRldl9nZXRfb2Zmc2V0X2Zvcl92YWRkcikpCisjZGVmaW5lIElPQ1RMX0dOVERFVl9HRVRfT0ZGU0VUX0ZPUl9WQUREUiBfSU9DKF9JT0NfTk9ORSwgJ0cnLCAyLCBzaXplb2Yoc3RydWN0IGlvY3RsX2dudGRldl9nZXRfb2Zmc2V0X2Zvcl92YWRkcikpCiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogc3RydWN0IGlvY3RsX2dudGRldl9nZXRfb2Zmc2V0X2Zvcl92YWRkciB7Ci0gdWludDY0X3QgdmFkZHI7Ci0gdWludDY0X3Qgb2Zmc2V0OwotIHVpbnQzMl90IGNvdW50OworICB1aW50NjRfdCB2YWRkcjsKKyAgdWludDY0X3Qgb2Zmc2V0OworICB1aW50MzJfdCBjb3VudDsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDMyX3QgcGFkOworICB1aW50MzJfdCBwYWQ7CiB9OwotI2RlZmluZSBJT0NUTF9HTlRERVZfU0VUX01BWF9HUkFOVFMgIF9JT0MoX0lPQ19OT05FLCAnRycsIDMsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZ250ZGV2X3NldF9tYXhfZ3JhbnRzKSkKKyNkZWZpbmUgSU9DVExfR05UREVWX1NFVF9NQVhfR1JBTlRTIF9JT0MoX0lPQ19OT05FLCAnRycsIDMsIHNpemVvZihzdHJ1Y3QgaW9jdGxfZ250ZGV2X3NldF9tYXhfZ3JhbnRzKSkKIHN0cnVjdCBpb2N0bF9nbnRkZXZfc2V0X21heF9ncmFudHMgewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSB1aW50MzJfdCBjb3VudDsKKyAgdWludDMyX3QgY291bnQ7CiB9OwotI2RlZmluZSBJT0NUTF9HTlRERVZfU0VUX1VOTUFQX05PVElGWSAgX0lPQyhfSU9DX05PTkUsICdHJywgNywgc2l6ZW9mKHN0cnVjdCBpb2N0bF9nbnRkZXZfdW5tYXBfbm90aWZ5KSkKKyNkZWZpbmUgSU9DVExfR05UREVWX1NFVF9VTk1BUF9OT1RJRlkgX0lPQyhfSU9DX05PTkUsICdHJywgNywgc2l6ZW9mKHN0cnVjdCBpb2N0bF9nbnRkZXZfdW5tYXBfbm90aWZ5KSkKIHN0cnVjdCBpb2N0bF9nbnRkZXZfdW5tYXBfbm90aWZ5IHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gdWludDY0X3QgaW5kZXg7Ci0gdWludDMyX3QgYWN0aW9uOwotIHVpbnQzMl90IGV2ZW50X2NoYW5uZWxfcG9ydDsKKyAgdWludDY0X3QgaW5kZXg7CisgIHVpbnQzMl90IGFjdGlvbjsKKyAgdWludDMyX3QgZXZlbnRfY2hhbm5lbF9wb3J0OwogfTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiAjZGVmaW5lIFVOTUFQX05PVElGWV9DTEVBUl9CWVRFIDB4MQpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvdWFwaS94ZW4vcHJpdmNtZC5oIGIvbGliYy9rZXJuZWwvdWFwaS94ZW4vcHJpdmNtZC5oCmluZGV4IGVlMjA1NDQuLjEwYzBjNDcgMTAwNjQ0Ci0tLSBhL2xpYmMva2VybmVsL3VhcGkveGVuL3ByaXZjbWQuaAorKysgYi9saWJjL2tlcm5lbC91YXBpL3hlbi9wcml2Y21kLmgKQEAgLTIzLDQ0ICsyMyw0NCBAQAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNpbmNsdWRlIDx4ZW4vaW50ZXJmYWNlL3hlbi5oPgogc3RydWN0IHByaXZjbWRfaHlwZXJjYWxsIHsKLSBfX3U2NCBvcDsKLSBfX3U2NCBhcmdbNV07CisgIF9fdTY0IG9wOworICBfX3U2NCBhcmdbNV07CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwogfTsKIHN0cnVjdCBwcml2Y21kX21tYXBfZW50cnkgewotIF9fdTY0IHZhOwotIF9fdTY0IG1mbjsKKyAgX191NjQgdmE7CisgIF9fdTY0IG1mbjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gX191NjQgbnBhZ2VzOworICBfX3U2NCBucGFnZXM7CiB9Owogc3RydWN0IHByaXZjbWRfbW1hcCB7Ci0gaW50IG51bTsKKyAgaW50IG51bTsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCi0gZG9taWRfdCBkb207Ci0gc3RydWN0IHByaXZjbWRfbW1hcF9lbnRyeSBfX3VzZXIgKmVudHJ5OworICBkb21pZF90IGRvbTsKKyAgc3RydWN0IHByaXZjbWRfbW1hcF9lbnRyeSBfX3VzZXIgKiBlbnRyeTsKIH07CiBzdHJ1Y3QgcHJpdmNtZF9tbWFwYmF0Y2ggewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgbnVtOwotIGRvbWlkX3QgZG9tOwotIF9fdTY0IGFkZHI7Ci0geGVuX3Bmbl90IF9fdXNlciAqYXJyOworICBpbnQgbnVtOworICBkb21pZF90IGRvbTsKKyAgX191NjQgYWRkcjsKKyAgeGVuX3Bmbl90IF9fdXNlciAqIGFycjsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCiB9OwogI2RlZmluZSBQUklWQ01EX01NQVBCQVRDSF9NRk5fRVJST1IgMHhmMDAwMDAwMFUKICNkZWZpbmUgUFJJVkNNRF9NTUFQQkFUQ0hfUEFHRURfRVJST1IgMHg4MDAwMDAwMFUKIHN0cnVjdCBwcml2Y21kX21tYXBiYXRjaF92MiB7CiAvKiBXQVJOSU5HOiBETyBOT1QgRURJVCwgQVVUTy1HRU5FUkFURUQgQ09ERSAtIFNFRSBUT1AgRk9SIElOU1RSVUNUSU9OUyAqLwotIHVuc2lnbmVkIGludCBudW07Ci0gZG9taWRfdCBkb207Ci0gX191NjQgYWRkcjsKLSBjb25zdCB4ZW5fcGZuX3QgX191c2VyICphcnI7CisgIHVuc2lnbmVkIGludCBudW07CisgIGRvbWlkX3QgZG9tOworICBfX3U2NCBhZGRyOworICBjb25zdCB4ZW5fcGZuX3QgX191c2VyICogYXJyOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSBpbnQgX191c2VyICplcnI7CisgIGludCBfX3VzZXIgKiBlcnI7CiB9OwotI2RlZmluZSBJT0NUTF9QUklWQ01EX0hZUEVSQ0FMTCAgIF9JT0MoX0lPQ19OT05FLCAnUCcsIDAsIHNpemVvZihzdHJ1Y3QgcHJpdmNtZF9oeXBlcmNhbGwpKQotI2RlZmluZSBJT0NUTF9QUklWQ01EX01NQVAgICBfSU9DKF9JT0NfTk9ORSwgJ1AnLCAyLCBzaXplb2Yoc3RydWN0IHByaXZjbWRfbW1hcCkpCisjZGVmaW5lIElPQ1RMX1BSSVZDTURfSFlQRVJDQUxMIF9JT0MoX0lPQ19OT05FLCAnUCcsIDAsIHNpemVvZihzdHJ1Y3QgcHJpdmNtZF9oeXBlcmNhbGwpKQorI2RlZmluZSBJT0NUTF9QUklWQ01EX01NQVAgX0lPQyhfSU9DX05PTkUsICdQJywgMiwgc2l6ZW9mKHN0cnVjdCBwcml2Y21kX21tYXApKQogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KLSNkZWZpbmUgSU9DVExfUFJJVkNNRF9NTUFQQkFUQ0ggICBfSU9DKF9JT0NfTk9ORSwgJ1AnLCAzLCBzaXplb2Yoc3RydWN0IHByaXZjbWRfbW1hcGJhdGNoKSkKLSNkZWZpbmUgSU9DVExfUFJJVkNNRF9NTUFQQkFUQ0hfVjIgICBfSU9DKF9JT0NfTk9ORSwgJ1AnLCA0LCBzaXplb2Yoc3RydWN0IHByaXZjbWRfbW1hcGJhdGNoX3YyKSkKKyNkZWZpbmUgSU9DVExfUFJJVkNNRF9NTUFQQkFUQ0ggX0lPQyhfSU9DX05PTkUsICdQJywgMywgc2l6ZW9mKHN0cnVjdCBwcml2Y21kX21tYXBiYXRjaCkpCisjZGVmaW5lIElPQ1RMX1BSSVZDTURfTU1BUEJBVENIX1YyIF9JT0MoX0lPQ19OT05FLCAnUCcsIDQsIHNpemVvZihzdHJ1Y3QgcHJpdmNtZF9tbWFwYmF0Y2hfdjIpKQogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL3ByaXZhdGUvVGhyZWFkTG9jYWxCdWZmZXIuaCBiL2xpYmMvcHJpdmF0ZS9UaHJlYWRMb2NhbEJ1ZmZlci5oCmluZGV4IGU1YmQyOGMuLjVlNDM2NjUgMTAwNjQ0Ci0tLSBhL2xpYmMvcHJpdmF0ZS9UaHJlYWRMb2NhbEJ1ZmZlci5oCisrKyBiL2xpYmMvcHJpdmF0ZS9UaHJlYWRMb2NhbEJ1ZmZlci5oCkBAIC0zMiwzMCArMzIsMzAgQEAKICNpbmNsdWRlIDxtYWxsb2MuaD4KICNpbmNsdWRlIDxwdGhyZWFkLmg+CiAKLS8vIGxpYnN0ZGMrKyBjdXJyZW50bHkgY29udGFpbnMgX19jeGFfZ3VhcmRfYWNxdWlyZSBhbmQgX19jeGFfZ3VhcmRfcmVsZWFzZSwKLS8vIHNvIHdlIG1ha2UgZG8gd2l0aCBtYWNyb3MgaW5zdGVhZCBvZiBhIEMrKyBjbGFzcy4KLS8vIFRPRE86IG1vdmUgX19jeGFfZ3VhcmRfYWNxdWlyZSBhbmQgX19jeGFfZ3VhcmRfcmVsZWFzZSBpbnRvIGxpYmMuCisvLyBUT0RPOiB1c2UgX190aHJlYWQgaW5zdGVhZD8KIAotLy8gV2UgdXNlZCB0byB1c2UgcHRocmVhZF9vbmNlIHRvIGluaXRpYWxpemUgdGhlIGtleXMsIGJ1dCBsaWZlIGlzIG1vcmUgcHJlZGljdGFibGUKLS8vIGlmIHdlIGFsbG9jYXRlIHRoZW0gYWxsIHVwIGZyb250IHdoZW4gdGhlIEMgbGlicmFyeSBzdGFydHMgdXAsIHZpYSBfX2NvbnN0cnVjdG9yX18uCi0KLSNkZWZpbmUgR0xPQkFMX0lOSVRfVEhSRUFEX0xPQ0FMX0JVRkZFUihuYW1lKSBcCi0gIHN0YXRpYyBwdGhyZWFkX2tleV90IF9fYmlvbmljX3Rsc18gIyMgbmFtZSAjIyBfa2V5OyBcCi0gIHN0YXRpYyB2b2lkIF9fYmlvbmljX3Rsc18gIyMgbmFtZSAjIyBfa2V5X2Rlc3Ryb3kodm9pZCogYnVmZmVyKSB7IFwKLSAgICBmcmVlKGJ1ZmZlcik7IFwKLSAgfSBcCi0gIF9fYXR0cmlidXRlX18oKGNvbnN0cnVjdG9yKSkgc3RhdGljIHZvaWQgX19iaW9uaWNfdGxzXyAjIyBuYW1lICMjIF9rZXlfaW5pdCgpIHsgXAotICAgIHB0aHJlYWRfa2V5X2NyZWF0ZSgmX19iaW9uaWNfdGxzXyAjIyBuYW1lICMjIF9rZXksIF9fYmlvbmljX3Rsc18gIyMgbmFtZSAjIyBfa2V5X2Rlc3Ryb3kpOyBcCit0ZW1wbGF0ZSA8dHlwZW5hbWUgVCwgc2l6ZV90IFNpemUgPSBzaXplb2YoVCk+CitjbGFzcyBUaHJlYWRMb2NhbEJ1ZmZlciB7CisgcHVibGljOgorICBUaHJlYWRMb2NhbEJ1ZmZlcigpIHsKKyAgICAvLyBXZSB1c2VkIHRvIHVzZSBwdGhyZWFkX29uY2UgdG8gaW5pdGlhbGl6ZSB0aGUga2V5cywgYnV0IGxpZmUgaXMgbW9yZSBwcmVkaWN0YWJsZQorICAgIC8vIGlmIHdlIGFsbG9jYXRlIHRoZW0gYWxsIHVwIGZyb250IHdoZW4gdGhlIEMgbGlicmFyeSBzdGFydHMgdXAsIHZpYSBfX2NvbnN0cnVjdG9yX18uCisgICAgcHRocmVhZF9rZXlfY3JlYXRlKCZrZXlfLCBmcmVlKTsKICAgfQogCi0vLyBMZWF2ZXMgIm5hbWVfdGxzX2J1ZmZlciIgYW5kICJuYW1lX3Rsc19idWZmZXJfc2l6ZSIgZGVmaW5lZCBhbmQgaW5pdGlhbGl6ZWQuCi0jZGVmaW5lIExPQ0FMX0lOSVRfVEhSRUFEX0xPQ0FMX0JVRkZFUih0eXBlLCBuYW1lLCBieXRlX2NvdW50KSBcCi0gIHR5cGUgbmFtZSAjIyBfdGxzX2J1ZmZlciA9IFwKLSAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dHlwZT4ocHRocmVhZF9nZXRzcGVjaWZpYyhfX2Jpb25pY190bHNfICMjIG5hbWUgIyMgX2tleSkpOyBcCi0gIGlmIChuYW1lICMjIF90bHNfYnVmZmVyID09IE5VTEwpIHsgXAotICAgIG5hbWUgIyMgX3Rsc19idWZmZXIgPSByZWludGVycHJldF9jYXN0PHR5cGU+KGNhbGxvYygxLCBieXRlX2NvdW50KSk7IFwKLSAgICBwdGhyZWFkX3NldHNwZWNpZmljKF9fYmlvbmljX3Rsc18gIyMgbmFtZSAjIyBfa2V5LCBuYW1lICMjIF90bHNfYnVmZmVyKTsgXAotICB9IFwKLSAgY29uc3Qgc2l6ZV90IG5hbWUgIyMgX3Rsc19idWZmZXJfc2l6ZSBfX2F0dHJpYnV0ZV9fKCh1bnVzZWQpKSA9IGJ5dGVfY291bnQKKyAgVCogZ2V0KCkgeworICAgIFQqIHJlc3VsdCA9IHJlaW50ZXJwcmV0X2Nhc3Q8VCo+KHB0aHJlYWRfZ2V0c3BlY2lmaWMoa2V5XykpOworICAgIGlmIChyZXN1bHQgPT0gbnVsbHB0cikgeworICAgICAgcmVzdWx0ID0gcmVpbnRlcnByZXRfY2FzdDxUKj4oY2FsbG9jKDEsIFNpemUpKTsKKyAgICAgIHB0aHJlYWRfc2V0c3BlY2lmaWMoa2V5XywgcmVzdWx0KTsKKyAgICB9CisgICAgcmV0dXJuIHJlc3VsdDsKKyAgfQorCisgIHNpemVfdCBzaXplKCkgeyByZXR1cm4gU2l6ZTsgfQorCisgcHJpdmF0ZToKKyAgcHRocmVhZF9rZXlfdCBrZXlfOworfTsKIAogI2VuZGlmIC8vIF9CSU9OSUNfVEhSRUFEX0xPQ0FMX0JVRkZFUl9IX2luY2x1ZGVkCmRpZmYgLS1naXQgYS9saWJjL3ByaXZhdGUvYmlvbmljX2FzbS5oIGIvbGliYy9wcml2YXRlL2Jpb25pY19hc20uaAppbmRleCA3YzI2ODZmLi41ZmNhMjIyIDEwMDY0NAotLS0gYS9saWJjL3ByaXZhdGUvYmlvbmljX2FzbS5oCisrKyBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXNtLmgKQEAgLTQxLDcgKzQxLDcgQEAKICNkZWZpbmUgRU5UUlkoZikgXAogICAgIC50ZXh0OyBcCiAgICAgLmdsb2JsIGY7IFwKLSAgICBfQUxJR05fVEVYVDsgXAorICAgIC5hbGlnbiBfX2Jpb25pY19hc21fYWxpZ247IFwKICAgICAudHlwZSBmLCBfX2Jpb25pY19hc21fZnVuY3Rpb25fdHlwZTsgXAogICAgIGY6IFwKICAgICBfX2Jpb25pY19hc21fY3VzdG9tX2VudHJ5KGYpOyBcCkBAIC01Nyw0ICs1Nyw4IEBACiAgICAgRU5UUlkoZik7IFwKICAgICAuaGlkZGVuIGYgXAogCisjZGVmaW5lIEFMSUFTX1NZTUJPTChhbGlhcywgb3JpZ2luYWwpIFwKKyAgICAuZ2xvYmwgYWxpYXM7IFwKKyAgICAuZXF1IGFsaWFzLCBvcmlnaW5hbAorCiAjZW5kaWYgLyogX1BSSVZBVEVfQklPTklDX0FTTV9IXyAqLwpkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL2Jpb25pY19hdG9taWNfYXJtLmggYi9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY19hcm0uaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjE1NmU2YS4uMDAwMDAwMAotLS0gYS9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY19hcm0uaAorKysgL2Rldi9udWxsCkBAIC0xLDc5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICoKLSAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOwotICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgotICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0Ci0gKgotICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKLSAqCi0gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCi0gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAotICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCi0gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCi0gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KLSAqLwotI2lmbmRlZiBCSU9OSUNfQVRPTUlDX0FSTV9ICi0jZGVmaW5lIEJJT05JQ19BVE9NSUNfQVJNX0gKLQotX19BVE9NSUNfSU5MSU5FX18gdm9pZCBfX2Jpb25pY19tZW1vcnlfYmFycmllcigpIHsKLSNpZiBkZWZpbmVkKEFORFJPSURfU01QKSAmJiBBTkRST0lEX1NNUCA9PSAxCi0gIF9fYXNtX18gX192b2xhdGlsZV9fICggImRtYiBpc2giIDogOiA6ICJtZW1vcnkiICk7Ci0jZWxzZQotICAvKiBBIHNpbXBsZSBjb21waWxlciBiYXJyaWVyLiAqLwotICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoICIiIDogOiA6ICJtZW1vcnkiICk7Ci0jZW5kaWYKLX0KLQotLyogQ29tcGFyZS1hbmQtc3dhcCwgd2l0aG91dCBhbnkgZXhwbGljaXQgYmFycmllcnMuIE5vdGUgdGhhdCB0aGlzIGZ1bmN0aW9uCi0gKiByZXR1cm5zIDAgb24gc3VjY2VzcywgYW5kIDEgb24gZmFpbHVyZS4gVGhlIG9wcG9zaXRlIGNvbnZlbnRpb24gaXMgdHlwaWNhbGx5Ci0gKiB1c2VkIG9uIG90aGVyIHBsYXRmb3Jtcy4KLSAqLwotX19BVE9NSUNfSU5MSU5FX18gaW50IF9fYmlvbmljX2NtcHhjaGcoaW50MzJfdCBvbGRfdmFsdWUsIGludDMyX3QgbmV3X3ZhbHVlLCB2b2xhdGlsZSBpbnQzMl90KiBwdHIpIHsKLSAgaW50MzJfdCBwcmV2LCBzdGF0dXM7Ci0gIGRvIHsKLSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoCi0gICAgICAgICAgImxkcmV4ICUwLCBbJTNdXG4iCi0gICAgICAgICAgIm1vdiAlMSwgIzBcbiIKLSAgICAgICAgICAidGVxICUwLCAlNFxuIgotI2lmZGVmIF9fdGh1bWIyX18KLSAgICAgICAgICAiaXQgZXFcbiIKLSNlbmRpZgotICAgICAgICAgICJzdHJleGVxICUxLCAlNSwgWyUzXSIKLSAgICAgICAgICA6ICI9JnIiIChwcmV2KSwgIj0mciIgKHN0YXR1cyksICIrbSIoKnB0cikKLSAgICAgICAgICA6ICJyIiAocHRyKSwgIklyIiAob2xkX3ZhbHVlKSwgInIiIChuZXdfdmFsdWUpCi0gICAgICAgICAgOiAiY2MiKTsKLSAgfSB3aGlsZSAoX19idWlsdGluX2V4cGVjdChzdGF0dXMgIT0gMCwgMCkpOwotICByZXR1cm4gcHJldiAhPSBvbGRfdmFsdWU7Ci19Ci0KLS8qIFN3YXAsIHdpdGhvdXQgYW55IGV4cGxpY2l0IGJhcnJpZXJzLiAqLwotX19BVE9NSUNfSU5MSU5FX18gaW50MzJfdCBfX2Jpb25pY19zd2FwKGludDMyX3QgbmV3X3ZhbHVlLCB2b2xhdGlsZSBpbnQzMl90KiBwdHIpIHsKLSAgaW50MzJfdCBwcmV2LCBzdGF0dXM7Ci0gIGRvIHsKLSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoCi0gICAgICAgICAgImxkcmV4ICUwLCBbJTNdXG4iCi0gICAgICAgICAgInN0cmV4ICUxLCAlNCwgWyUzXSIKLSAgICAgICAgICA6ICI9JnIiIChwcmV2KSwgIj0mciIgKHN0YXR1cyksICIrbSIgKCpwdHIpCi0gICAgICAgICAgOiAiciIgKHB0ciksICJyIiAobmV3X3ZhbHVlKQotICAgICAgICAgIDogImNjIik7Ci0gIH0gd2hpbGUgKF9fYnVpbHRpbl9leHBlY3Qoc3RhdHVzICE9IDAsIDApKTsKLSAgcmV0dXJuIHByZXY7Ci19Ci0KLS8qIEF0b21pYyBkZWNyZW1lbnQsIHdpdGhvdXQgZXhwbGljaXQgYmFycmllcnMuICovCi1fX0FUT01JQ19JTkxJTkVfXyBpbnQzMl90IF9fYmlvbmljX2F0b21pY19kZWModm9sYXRpbGUgaW50MzJfdCogcHRyKSB7Ci0gIGludDMyX3QgcHJldiwgdG1wLCBzdGF0dXM7Ci0gIGRvIHsKLSAgICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoCi0gICAgICAgICAgImxkcmV4ICUwLCBbJTRdXG4iCi0gICAgICAgICAgInN1YiAlMSwgJTAsICMxXG4iCi0gICAgICAgICAgInN0cmV4ICUyLCAlMSwgWyU0XSIKLSAgICAgICAgICA6ICI9JnIiIChwcmV2KSwgIj0mciIgKHRtcCksICI9JnIiIChzdGF0dXMpLCAiK20iKCpwdHIpCi0gICAgICAgICAgOiAiciIgKHB0cikKLSAgICAgICAgICA6ICJjYyIpOwotICB9IHdoaWxlIChfX2J1aWx0aW5fZXhwZWN0KHN0YXR1cyAhPSAwLCAwKSk7Ci0gIHJldHVybiBwcmV2OwotfQotCi0jZW5kaWYgLyogU1lTX0FUT01JQ1NfQVJNX0ggKi8KZGlmZiAtLWdpdCBhL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXRvbWljX2FybTY0LmggYi9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY19hcm02NC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjM2EzNGUxLi4wMDAwMDAwCi0tLSBhL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXRvbWljX2FybTY0LmgKKysrIC9kZXYvbnVsbApAQCAtMSw3MiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLSNpZm5kZWYgQklPTklDX0FUT01JQ19BQVJDSDY0X0gKLSNkZWZpbmUgQklPTklDX0FUT01JQ19BQVJDSDY0X0gKLQotLyogRm9yIEFSTXY4LCB3ZSBjYW4gdXNlIHRoZSAnZG1iJyBpbnN0cnVjdGlvbiBkaXJlY3RseSAqLwotX19BVE9NSUNfSU5MSU5FX18gdm9pZCBfX2Jpb25pY19tZW1vcnlfYmFycmllcigpIHsKLSAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCAiZG1iIGlzaCIgOiA6IDogIm1lbW9yeSIgKTsKLX0KLQotLyogQ29tcGFyZS1hbmQtc3dhcCwgd2l0aG91dCBhbnkgZXhwbGljaXQgYmFycmllcnMuIE5vdGUgdGhhdCB0aGlzIGZ1bmN0aW9uCi0gKiByZXR1cm5zIDAgb24gc3VjY2VzcywgYW5kIDEgb24gZmFpbHVyZS4gVGhlIG9wcG9zaXRlIGNvbnZlbnRpb24gaXMgdHlwaWNhbGx5Ci0gKiB1c2VkIG9uIG90aGVyIHBsYXRmb3Jtcy4KLSAqLwotX19BVE9NSUNfSU5MSU5FX18gaW50IF9fYmlvbmljX2NtcHhjaGcoaW50MzJfdCBvbGRfdmFsdWUsIGludDMyX3QgbmV3X3ZhbHVlLCB2b2xhdGlsZSBpbnQzMl90KiBwdHIpIHsKLSAgaW50MzJfdCB0bXAsIG9sZHZhbDsKLSAgX19hc21fXyBfX3ZvbGF0aWxlX18gKAotICAgICAgIi8vIGF0b21pY19jbXB4Y2hnXG4iCi0gICAgICAiMTogIGxkeHIgJXcxLCBbJTNdXG4iCi0gICAgICAiICAgIGNtcCAldzEsICV3NFxuIgotICAgICAgIiAgICBiLm5lIDJmXG4iCi0gICAgICAiICAgIHN0eHIgJXcwLCAldzUsIFslM11cbiIKLSAgICAgICIgICAgY2JueiAgJXcwLCAxYlxuIgotICAgICAgIjI6IgotICAgICAgOiAiPSZyIiAodG1wKSwgIj0mciIgKG9sZHZhbCksICIrbyIoKnB0cikKLSAgICAgIDogInIiIChwdHIpLCAiSXIiIChvbGRfdmFsdWUpLCAiciIgKG5ld192YWx1ZSkKLSAgICAgIDogImNjIiwgIm1lbW9yeSIpOwotICByZXR1cm4gb2xkdmFsICE9IG9sZF92YWx1ZTsKLX0KLQotLyogU3dhcCwgd2l0aG91dCBhbnkgZXhwbGljaXQgYmFycmllcnMuICAqLwotX19BVE9NSUNfSU5MSU5FX18gaW50MzJfdCBfX2Jpb25pY19zd2FwKGludDMyX3QgbmV3X3ZhbHVlLCB2b2xhdGlsZSBpbnQzMl90KiBwdHIpIHsKLSAgaW50MzJfdCBwcmV2LCBzdGF0dXM7Ci0gIF9fYXNtX18gX192b2xhdGlsZV9fICgKLSAgICAgICIvLyBhdG9taWNfc3dhcFxuIgotICAgICAgIjE6ICBsZHhyICV3MCwgWyUzXVxuIgotICAgICAgIiAgICBzdHhyICV3MSwgJXc0LCBbJTNdXG4iCi0gICAgICAiICAgIGNibnogJXcxLCAxYlxuIgotICAgICAgOiAiPSZyIiAocHJldiksICI9JnIiIChzdGF0dXMpLCAiK28iICgqcHRyKQotICAgICAgOiAiciIgKHB0ciksICJyIiAobmV3X3ZhbHVlKQotICAgICAgOiAiY2MiLCAibWVtb3J5Iik7Ci0gIHJldHVybiBwcmV2OwotfQotCi0vKiBBdG9taWMgZGVjcmVtZW50LCB3aXRob3V0IGV4cGxpY2l0IGJhcnJpZXJzLiAgKi8KLV9fQVRPTUlDX0lOTElORV9fIGludDMyX3QgX19iaW9uaWNfYXRvbWljX2RlYyh2b2xhdGlsZSBpbnQzMl90KiBwdHIpIHsKLSAgaW50MzJfdCBwcmV2LCB0bXAsIHN0YXR1czsKLSAgX19hc21fXyBfX3ZvbGF0aWxlX18gKAotICAgICAgIjE6ICBsZHhyICV3MCwgWyU0XVxuIgotICAgICAgIiAgICBzdWIgJXcxLCAldzAsICMxXG4iCi0gICAgICAiICAgIHN0eHIgJXcyLCAldzEsIFslNF1cbiIKLSAgICAgICIgICAgY2JueiAldzIsIDFiIgotICAgICAgOiAiPSZyIiAocHJldiksICI9JnIiICh0bXApLCAiPSZyIiAoc3RhdHVzKSwgIittIigqcHRyKQotICAgICAgOiAiciIgKHB0cikKLSAgICAgIDogImNjIiwgIm1lbW9yeSIpOwotICByZXR1cm4gcHJldjsKLX0KLQotI2VuZGlmIC8qIEJJT05JQ19BVE9NSUNTX0FBUkNINjRfSCAqLwpkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL2Jpb25pY19hdG9taWNfZ2NjX2J1aWx0aW4uaCBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXRvbWljX2djY19idWlsdGluLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDcwZWI4NjEuLjAwMDAwMDAKLS0tIGEvbGliYy9wcml2YXRlL2Jpb25pY19hdG9taWNfZ2NjX2J1aWx0aW4uaAorKysgL2Rldi9udWxsCkBAIC0xLDUwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTEgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICoKLSAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOwotICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgotICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0Ci0gKgotICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKLSAqCi0gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCi0gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAotICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCi0gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCi0gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KLSAqLwotI2lmbmRlZiBCSU9OSUNfQVRPTUlDX0dDQ19CVUlMVElOX0gKLSNkZWZpbmUgQklPTklDX0FUT01JQ19HQ0NfQlVJTFRJTl9ICi0KLS8qCi0gKiBUaGlzIGhlYWRlciBmaWxlIGlzIHVzZWQgYnkgZGVmYXVsdCBpZiB3ZSBkb24ndCBoYXZlIG9wdGltaXplZCBhdG9taWMKLSAqIHJvdXRpbmVzIGZvciBhIGdpdmVuIHBsYXRmb3JtLiBTZWUgYmlvbmljX2F0b21pY19hcm0uaCBhbmQKLSAqIGJpb25pY19hdG9taWNfeDg2LmggZm9yIGV4YW1wbGVzLgotICoKLSAqIE5vdGUgdGhhdCB0aGUgR0NDIGJ1aWx0aW5zIGluY2x1ZGUgYmFycmllcnMgdGhhdCBhcmVuJ3QgcHJlc2VudCBpbgotICogdGhlIGFyY2hpdGVjdHVyZS1zcGVjaWZpYyBhc3NlbWJsZXIgdmVyc2lvbnMuCi0gKi8KLQotX19BVE9NSUNfSU5MSU5FX18gdm9pZCBfX2Jpb25pY19tZW1vcnlfYmFycmllcigpIHsKLSAgX19zeW5jX3N5bmNocm9uaXplKCk7Ci19Ci0KLV9fQVRPTUlDX0lOTElORV9fIGludCBfX2Jpb25pY19jbXB4Y2hnKGludDMyX3Qgb2xkX3ZhbHVlLCBpbnQzMl90IG5ld192YWx1ZSwgdm9sYXRpbGUgaW50MzJfdCogcHRyKSB7Ci0gIC8qIFdlIG11c3QgcmV0dXJuIDAgb24gc3VjY2Vzcy4gKi8KLSAgcmV0dXJuIF9fc3luY192YWxfY29tcGFyZV9hbmRfc3dhcChwdHIsIG9sZF92YWx1ZSwgbmV3X3ZhbHVlKSAhPSBvbGRfdmFsdWU7Ci19Ci0KLV9fQVRPTUlDX0lOTElORV9fIGludDMyX3QgX19iaW9uaWNfc3dhcChpbnQzMl90IG5ld192YWx1ZSwgdm9sYXRpbGUgaW50MzJfdCogcHRyKSB7Ci0gIGludDMyX3Qgb2xkX3ZhbHVlOwotICBkbyB7Ci0gICAgb2xkX3ZhbHVlID0gKnB0cjsKLSAgfSB3aGlsZSAoX19zeW5jX3ZhbF9jb21wYXJlX2FuZF9zd2FwKHB0ciwgb2xkX3ZhbHVlLCBuZXdfdmFsdWUpICE9IG9sZF92YWx1ZSk7Ci0gIHJldHVybiBvbGRfdmFsdWU7Ci19Ci0KLV9fQVRPTUlDX0lOTElORV9fIGludDMyX3QgX19iaW9uaWNfYXRvbWljX2RlYyh2b2xhdGlsZSBpbnQzMl90KiBwdHIpIHsKLSAgLyogV2UgbXVzdCByZXR1cm4gdGhlIG9sZCB2YWx1ZS4gKi8KLSAgcmV0dXJuIF9fc3luY19mZXRjaF9hbmRfYWRkKHB0ciwgLTEpOwotfQotCi0jZW5kaWYgLyogQklPTklDX0FUT01JQ19HQ0NfQlVJTFRJTl9IICovCmRpZmYgLS1naXQgYS9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY19pbmxpbmUuaCBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXRvbWljX2lubGluZS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiODM0YTI3Li4wMDAwMDAwCi0tLSBhL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXRvbWljX2lubGluZS5oCisrKyAvZGV2L251bGwKQEAgLTEsNjUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKgotICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7Ci0gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCi0gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKLSAqCi0gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAotICoKLSAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKLSAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCi0gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KLSAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKLSAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICovCi0KLSNpZm5kZWYgQklPTklDX0FUT01JQ19JTkxJTkVfSAotI2RlZmluZSBCSU9OSUNfQVRPTUlDX0lOTElORV9ICi0KLS8qCi0gKiBJbmxpbmUgZGVjbGFyYXRpb25zIGFuZCBtYWNyb3MgZm9yIHNvbWUgc3BlY2lhbC1wdXJwb3NlIGF0b21pYwotICogb3BlcmF0aW9ucy4gIFRoZXNlIGFyZSBpbnRlbmRlZCBmb3IgcmFyZSBjaXJjdW1zdGFuY2VzIHdoZXJlIGEKLSAqIG1lbW9yeSBiYXJyaWVyIG5lZWRzIHRvIGJlIGlzc3VlZCBpbmxpbmUgcmF0aGVyIHRoYW4gYXMgYSBmdW5jdGlvbgotICogY2FsbC4KLSAqCi0gKiBNYWNyb3MgZGVmaW5lZCBpbiB0aGlzIGhlYWRlcjoKLSAqCi0gKiB2b2lkIEFORFJPSURfTUVNQkFSX0ZVTEwoKQotICogICBGdWxsIG1lbW9yeSBiYXJyaWVyLiAgUHJvdmlkZXMgYSBjb21waWxlciByZW9yZGVyaW5nIGJhcnJpZXIsIGFuZAotICogICBvbiBTTVAgc3lzdGVtcyBlbWl0cyBhbiBhcHByb3ByaWF0ZSBpbnN0cnVjdGlvbi4KLSAqLwotCi0jaWYgIWRlZmluZWQoQU5EUk9JRF9TTVApCi0jIGVycm9yICJNdXN0IGRlZmluZSBBTkRST0lEX1NNUCBiZWZvcmUgaW5jbHVkaW5nIGF0b21pYy1pbmxpbmUuaCIKLSNlbmRpZgotCi0jaWZkZWYgX19jcGx1c3BsdXMKLWV4dGVybiAiQyIgewotI2VuZGlmCi0KLS8qIERlZmluZSBfX0FUT01JQ19JTkxJTkVfXyB0byBjb250cm9sIHRoZSBpbmxpbmluZyBvZiBhbGwgYXRvbWljcwotICogZnVuY3Rpb25zIGRlY2xhcmVkIGhlcmUuIEZvciBhIHNsaWdodCBwZXJmb3JtYW5jZSBib29zdCwgd2Ugd2FudAotICogYWxsIG9mIHRoZW0gdG8gYmUgYWx3YXlzX2lubGluZQotICovCi0jZGVmaW5lICBfX0FUT01JQ19JTkxJTkVfXyAgc3RhdGljIF9faW5saW5lX18gX19hdHRyaWJ1dGVfXygoYWx3YXlzX2lubGluZSkpCi0KLSNpZiBkZWZpbmVkKF9fYXJtX18pCi0jICBpbmNsdWRlICJiaW9uaWNfYXRvbWljX2FybS5oIgotI2VsaWYgZGVmaW5lZChfX2FhcmNoNjRfXykKLSMgIGluY2x1ZGUgImJpb25pY19hdG9taWNfYXJtNjQuaCIKLSNlbGlmIGRlZmluZWQoX19pMzg2X18pCi0jICBpbmNsdWRlICJiaW9uaWNfYXRvbWljX3g4Ni5oIgotI2VsaWYgZGVmaW5lZChfX21pcHNfXykKLSMgIGluY2x1ZGUgImJpb25pY19hdG9taWNfbWlwcy5oIgotI2Vsc2UKLSMgIGluY2x1ZGUgImJpb25pY19hdG9taWNfZ2NjX2J1aWx0aW4uaCIKLSNlbmRpZgotCi0jZGVmaW5lIEFORFJPSURfTUVNQkFSX0ZVTEwgIF9fYmlvbmljX21lbW9yeV9iYXJyaWVyCi0KLSNpZmRlZiBfX2NwbHVzcGx1cwotfSAvLyBleHRlcm4gIkMiCi0jZW5kaWYKLQotI2VuZGlmIC8vIEJJT05JQ19BVE9NSUNfSU5MSU5FX0gKZGlmZiAtLWdpdCBhL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXRvbWljX21pcHMuaCBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXRvbWljX21pcHMuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWUwODExNi4uMDAwMDAwMAotLS0gYS9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY19taXBzLmgKKysrIC9kZXYvbnVsbApAQCAtMSw3NiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLSNpZm5kZWYgQklPTklDX0FUT01JQ19NSVBTX0gKLSNkZWZpbmUgQklPTklDX0FUT01JQ19NSVBTX0gKLQotLyogRGVmaW5lIGEgZnVsbCBtZW1vcnkgYmFycmllciwgdGhpcyBpcyBvbmx5IG5lZWRlZCBpZiB3ZSBidWlsZCB0aGUKLSAqIHBsYXRmb3JtIGZvciBhIG11bHRpLWNvcmUgZGV2aWNlLgotICovCi0KLV9fQVRPTUlDX0lOTElORV9fIHZvaWQgX19iaW9uaWNfbWVtb3J5X2JhcnJpZXIoKSB7Ci0jaWYgZGVmaW5lZChBTkRST0lEX1NNUCkgJiYgQU5EUk9JRF9TTVAgPT0gMQotICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoICJzeW5jIiA6IDogOiAibWVtb3J5IiApOwotI2Vsc2UKLSAgLyogQSBzaW1wbGUgY29tcGlsZXIgYmFycmllci4gKi8KLSAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCAiIiA6IDogOiAibWVtb3J5IiApOwotI2VuZGlmCi19Ci0KLS8qIENvbXBhcmUtYW5kLXN3YXAsIHdpdGhvdXQgYW55IGV4cGxpY2l0IGJhcnJpZXJzLiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbgotICogcmV0dXJucyAwIG9uIHN1Y2Nlc3MsIGFuZCAxIG9uIGZhaWx1cmUuIFRoZSBvcHBvc2l0ZSBjb252ZW50aW9uIGlzIHR5cGljYWxseQotICogdXNlZCBvbiBvdGhlciBwbGF0Zm9ybXMuCi0gKi8KLV9fQVRPTUlDX0lOTElORV9fIGludCBfX2Jpb25pY19jbXB4Y2hnKGludDMyX3Qgb2xkX3ZhbHVlLCBpbnQzMl90IG5ld192YWx1ZSwgdm9sYXRpbGUgaW50MzJfdCogcHRyKSB7Ci0gIGludDMyX3QgcHJldiwgc3RhdHVzOwotICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoIjE6IG1vdmUgJVtzdGF0dXNdLCAlW25ld192YWx1ZV0gIFxuIgotICAgICAgICAgICAgICAgICAgICAgICAgIiAgIGxsICVbcHJldl0sIDAoJVtwdHJdKSAgICAgICAgIFxuIgotICAgICAgICAgICAgICAgICAgICAgICAgIiAgIGJuZSAlW29sZF92YWx1ZV0sICVbcHJldl0sIDJmIFxuIgotICAgICAgICAgICAgICAgICAgICAgICAgIiAgIHNjICAgJVtzdGF0dXNdLCAwKCVbcHRyXSkgICAgIFxuIgotICAgICAgICAgICAgICAgICAgICAgICAgIiAgIGJlcXogJVtzdGF0dXNdLCAxYiAgICAgICAgICAgIFxuIgotICAgICAgICAgICAgICAgICAgICAgICAgIjI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuIgotICAgICAgICAgICAgICAgICAgICAgICAgOiBbcHJldl0iPSZyIihwcmV2KSwgW3N0YXR1c10iPSZyIihzdGF0dXMpLCAiK20iKCpwdHIpCi0gICAgICAgICAgICAgICAgICAgICAgICA6IFtuZXdfdmFsdWVdInIiKG5ld192YWx1ZSksIFtvbGRfdmFsdWVdInIiKG9sZF92YWx1ZSksIFtwdHJdInIiKHB0cikKLSAgICAgICAgICAgICAgICAgICAgICAgIDogIm1lbW9yeSIpOwotICByZXR1cm4gcHJldiAhPSBvbGRfdmFsdWU7Ci19Ci0KLS8qIFN3YXAsIHdpdGhvdXQgYW55IGV4cGxpY2l0IGJhcnJpZXJzLiAqLwotX19BVE9NSUNfSU5MSU5FX18gaW50MzJfdCBfX2Jpb25pY19zd2FwKGludDMyX3QgbmV3X3ZhbHVlLCB2b2xhdGlsZSBpbnQzMl90KiBwdHIpIHsKLSAgaW50MzJfdCBwcmV2LCBzdGF0dXM7Ci0gIF9fYXNtX18gX192b2xhdGlsZV9fICgiMTogIG1vdmUgJVtzdGF0dXNdLCAlW25ld192YWx1ZV0gXG4iCi0gICAgICAgICAgICAgICAgICAgICAgICAiICAgIGxsICVbcHJldl0sIDAoJVtwdHJdKSAgICAgICAgXG4iCi0gICAgICAgICAgICAgICAgICAgICAgICAiICAgIHNjICVbc3RhdHVzXSwgMCglW3B0cl0pICAgICAgXG4iCi0gICAgICAgICAgICAgICAgICAgICAgICAiICAgIGJlcXogJVtzdGF0dXNdLCAxYiAgICAgICAgICAgXG4iCi0gICAgICAgICAgICAgICAgICAgICAgICA6IFtwcmV2XSI9JnIiKHByZXYpLCBbc3RhdHVzXSI9JnIiKHN0YXR1cyksICIrbSIoKnB0cikKLSAgICAgICAgICAgICAgICAgICAgICAgIDogW3B0cl0iciIocHRyKSwgW25ld192YWx1ZV0iciIobmV3X3ZhbHVlKQotICAgICAgICAgICAgICAgICAgICAgICAgOiAibWVtb3J5Iik7Ci0gIHJldHVybiBwcmV2OwotfQotCi0vKiBBdG9taWMgZGVjcmVtZW50LCB3aXRob3V0IGV4cGxpY2l0IGJhcnJpZXJzLiAqLwotX19BVE9NSUNfSU5MSU5FX18gaW50MzJfdCBfX2Jpb25pY19hdG9taWNfZGVjKHZvbGF0aWxlIGludDMyX3QqIHB0cikgewotICBpbnQzMl90IHByZXYsIHN0YXR1czsKLSAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCIxOiAgbGwgJVtwcmV2XSwgMCglW3B0cl0pICAgICAgICBcbiIKLSAgICAgICAgICAgICAgICAgICAgICAgICIgICAgYWRkaXUgJVtzdGF0dXNdLCAlW3ByZXZdLCAtMSBcbiIKLSAgICAgICAgICAgICAgICAgICAgICAgICIgICAgc2MgICAlW3N0YXR1c10sIDAoJVtwdHJdKSAgICBcbiIKLSAgICAgICAgICAgICAgICAgICAgICAgICIgICAgYmVxeiAlW3N0YXR1c10sIDFiICAgICAgICAgICBcbiIKLSAgICAgICAgICAgICAgICAgICAgICAgIDogW3ByZXZdIj0mciIgKHByZXYpLCBbc3RhdHVzXSI9JnIiKHN0YXR1cyksICIrbSIgKCpwdHIpCi0gICAgICAgICAgICAgICAgICAgICAgICA6IFtwdHJdInIiKHB0cikKLSAgICAgICAgICAgICAgICAgICAgICAgIDogIm1lbW9yeSIpOwotICByZXR1cm4gcHJldjsKLX0KLQotI2VuZGlmIC8qIEJJT05JQ19BVE9NSUNfTUlQU19IICovCmRpZmYgLS1naXQgYS9saWJjL3ByaXZhdGUvYmlvbmljX2F0b21pY194ODYuaCBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXRvbWljX3g4Ni5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4OTYzOWM4Li4wMDAwMDAwCi0tLSBhL2xpYmMvcHJpdmF0ZS9iaW9uaWNfYXRvbWljX3g4Ni5oCisrKyAvZGV2L251bGwKQEAgLTEsNjMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKgotICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7Ci0gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCi0gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKLSAqCi0gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAotICoKLSAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKLSAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCi0gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KLSAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKLSAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICovCi0jaWZuZGVmIEJJT05JQ19BVE9NSUNfWDg2X0gKLSNkZWZpbmUgQklPTklDX0FUT01JQ19YODZfSAotCi0vKiBEZWZpbmUgYSBmdWxsIG1lbW9yeSBiYXJyaWVyLCB0aGlzIGlzIG9ubHkgbmVlZGVkIGlmIHdlIGJ1aWxkIHRoZQotICogcGxhdGZvcm0gZm9yIGEgbXVsdGktY29yZSBkZXZpY2UuCi0gKi8KLV9fQVRPTUlDX0lOTElORV9fIHZvaWQgX19iaW9uaWNfbWVtb3J5X2JhcnJpZXIoKSB7Ci0jaWYgZGVmaW5lZChBTkRST0lEX1NNUCkgJiYgQU5EUk9JRF9TTVAgPT0gMQotICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoICJtZmVuY2UiIDogOiA6ICJtZW1vcnkiICk7Ci0jZWxzZQotICAvKiBBIHNpbXBsZSBjb21waWxlciBiYXJyaWVyLiAqLwotICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoICIiIDogOiA6ICJtZW1vcnkiICk7Ci0jZW5kaWYKLX0KLQotLyogQ29tcGFyZS1hbmQtc3dhcCwgd2l0aG91dCBhbnkgZXhwbGljaXQgYmFycmllcnMuIE5vdGUgdGhhdCB0aGlzIGZ1bmN0aW9uCi0gKiByZXR1cm5zIDAgb24gc3VjY2VzcywgYW5kIDEgb24gZmFpbHVyZS4gVGhlIG9wcG9zaXRlIGNvbnZlbnRpb24gaXMgdHlwaWNhbGx5Ci0gKiB1c2VkIG9uIG90aGVyIHBsYXRmb3Jtcy4KLSAqLwotX19BVE9NSUNfSU5MSU5FX18gaW50IF9fYmlvbmljX2NtcHhjaGcoaW50MzJfdCBvbGRfdmFsdWUsIGludDMyX3QgbmV3X3ZhbHVlLCB2b2xhdGlsZSBpbnQzMl90KiBwdHIpIHsKLSAgICBpbnQzMl90IHByZXY7Ci0gICAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCJsb2NrOyBjbXB4Y2hnbCAlMSwgJTIiCi0gICAgICAgICAgICAgICAgICAgICAgICAgIDogIj1hIiAocHJldikKLSAgICAgICAgICAgICAgICAgICAgICAgICAgOiAicSIgKG5ld192YWx1ZSksICJtIiAoKnB0ciksICIwIiAob2xkX3ZhbHVlKQotICAgICAgICAgICAgICAgICAgICAgICAgICA6ICJtZW1vcnkiKTsKLSAgICByZXR1cm4gcHJldiAhPSBvbGRfdmFsdWU7Ci19Ci0KLS8qIFN3YXAsIHdpdGhvdXQgYW55IGV4cGxpY2l0IGJhcnJpZXJzLiAqLwotX19BVE9NSUNfSU5MSU5FX18gaW50MzJfdCBfX2Jpb25pY19zd2FwKGludDMyX3QgbmV3X3ZhbHVlLCB2b2xhdGlsZSBpbnQzMl90ICpwdHIpIHsKLSAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCJ4Y2hnbCAlMSwgJTAiCi0gICAgICAgICAgICAgICAgICAgICAgICA6ICI9ciIgKG5ld192YWx1ZSkKLSAgICAgICAgICAgICAgICAgICAgICAgIDogIm0iICgqcHRyKSwgIjAiIChuZXdfdmFsdWUpCi0gICAgICAgICAgICAgICAgICAgICAgICA6ICJtZW1vcnkiKTsKLSAgcmV0dXJuIG5ld192YWx1ZTsKLX0KLQotLyogQXRvbWljIGRlY3JlbWVudCwgd2l0aG91dCBleHBsaWNpdCBiYXJyaWVycy4gKi8KLV9fQVRPTUlDX0lOTElORV9fIGludDMyX3QgX19iaW9uaWNfYXRvbWljX2RlYyh2b2xhdGlsZSBpbnQzMl90KiBwdHIpIHsKLSAgaW50IGluY3JlbWVudCA9IC0xOwotICBfX2FzbV9fIF9fdm9sYXRpbGVfXyAoImxvY2s7IHhhZGRsICUwLCAlMSIKLSAgICAgICAgICAgICAgICAgICAgICAgIDogIityIiAoaW5jcmVtZW50KSwgIittIiAoKnB0cikKLSAgICAgICAgICAgICAgICAgICAgICAgIDogOiAibWVtb3J5Iik7Ci0gIC8qIGluY3JlbWVudCBub3cgaG9sZHMgdGhlIG9sZCB2YWx1ZSBvZiAqcHRyICovCi0gIHJldHVybiBpbmNyZW1lbnQ7Ci19Ci0KLSNlbmRpZiAvKiBCSU9OSUNfQVRPTUlDX1g4Nl9IICovCmRpZmYgLS1naXQgYS9saWJjL3ByaXZhdGUvYmlvbmljX2NvbnN0YW50cy5oIGIvbGliYy9wcml2YXRlL2Jpb25pY19jb25zdGFudHMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45YWUxYzhkCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9wcml2YXRlL2Jpb25pY19jb25zdGFudHMuaApAQCAtMCwwICsxLDIyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2lmbmRlZiBfQklPTklDX0NPTlNUQU5UU19IXworI2RlZmluZSBfQklPTklDX0NPTlNUQU5UU19IXworCisjZGVmaW5lIE5TX1BFUl9TIDEwMDAwMDAwMDAKKworI2VuZGlmIC8vIF9CSU9OSUNfQ09OU1RBTlRTX0hfCmRpZmYgLS1naXQgYS9saWJjL3ByaXZhdGUvYmlvbmljX2Z1dGV4LmggYi9saWJjL3ByaXZhdGUvYmlvbmljX2Z1dGV4LmgKaW5kZXggYmQyYmQzNi4uNDAxNTc3YSAxMDA2NDQKLS0tIGEvbGliYy9wcml2YXRlL2Jpb25pY19mdXRleC5oCisrKyBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfZnV0ZXguaApAQCAtMzQsNiArMzQsNyBAQAogI2luY2x1ZGUgPHN0ZGRlZi5oPgogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgogI2luY2x1ZGUgPHN5cy9zeXNjYWxsLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CiAKIF9fQkVHSU5fREVDTFMKIApkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL2Jpb25pY19sb2NrLmggYi9saWJjL3ByaXZhdGUvYmlvbmljX2xvY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YTBmZDA2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9wcml2YXRlL2Jpb25pY19sb2NrLmgKQEAgLTAsMCArMSw3NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworI2lmbmRlZiBfQklPTklDX0xPQ0tfSAorI2RlZmluZSBfQklPTklDX0xPQ0tfSAorCisjaW5jbHVkZSA8c3RkYXRvbWljLmg+CisjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfZnV0ZXguaCIKKworY2xhc3MgTG9jayB7CisgcHJpdmF0ZToKKyAgZW51bSBMb2NrU3RhdGUgeworICAgIFVubG9ja2VkID0gMCwKKyAgICBMb2NrZWRXaXRob3V0V2FpdGVyLAorICAgIExvY2tlZFdpdGhXYWl0ZXIsCisgIH07CisgIF9BdG9taWMoTG9ja1N0YXRlKSBzdGF0ZTsKKyAgYm9vbCBwcm9jZXNzX3NoYXJlZDsKKworIHB1YmxpYzoKKyAgTG9jayhib29sIHByb2Nlc3Nfc2hhcmVkID0gZmFsc2UpIHsKKyAgICBpbml0KHByb2Nlc3Nfc2hhcmVkKTsKKyAgfQorCisgIHZvaWQgaW5pdChib29sIHByb2Nlc3Nfc2hhcmVkKSB7CisgICAgYXRvbWljX2luaXQoJnN0YXRlLCBVbmxvY2tlZCk7CisgICAgdGhpcy0+cHJvY2Vzc19zaGFyZWQgPSBwcm9jZXNzX3NoYXJlZDsKKyAgfQorCisgIHZvaWQgbG9jaygpIHsKKyAgICBMb2NrU3RhdGUgb2xkX3N0YXRlID0gVW5sb2NrZWQ7CisgICAgaWYgKF9fcHJlZGljdF90cnVlKGF0b21pY19jb21wYXJlX2V4Y2hhbmdlX3N0cm9uZ19leHBsaWNpdCgmc3RhdGUsICZvbGRfc3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgTG9ja2VkV2l0aG91dFdhaXRlciwgbWVtb3J5X29yZGVyX2FjcXVpcmUsIG1lbW9yeV9vcmRlcl9yZWxheGVkKSkpIHsKKyAgICAgIHJldHVybjsKKyAgICB9CisgICAgd2hpbGUgKGF0b21pY19leGNoYW5nZV9leHBsaWNpdCgmc3RhdGUsIExvY2tlZFdpdGhXYWl0ZXIsIG1lbW9yeV9vcmRlcl9hY3F1aXJlKSAhPSBVbmxvY2tlZCkgeworICAgICAgLy8gVE9ETzogQXMgdGhlIGNyaXRpY2FsIHNlY3Rpb24gaXMgYnJpZWYsIGl0IGlzIGEgYmV0dGVyIGNob2ljZSB0byBzcGluIGEgZmV3IHRpbWVzIGJlZm9yIHNsZWVwaW5nLgorICAgICAgX19mdXRleF93YWl0X2V4KCZzdGF0ZSwgcHJvY2Vzc19zaGFyZWQsIExvY2tlZFdpdGhXYWl0ZXIsIE5VTEwpOworICAgIH0KKyAgICByZXR1cm47CisgIH0KKworICB2b2lkIHVubG9jaygpIHsKKyAgICBpZiAoYXRvbWljX2V4Y2hhbmdlX2V4cGxpY2l0KCZzdGF0ZSwgVW5sb2NrZWQsIG1lbW9yeV9vcmRlcl9yZWxlYXNlKSA9PSBMb2NrZWRXaXRoV2FpdGVyKSB7CisgICAgICBfX2Z1dGV4X3dha2VfZXgoJnN0YXRlLCBwcm9jZXNzX3NoYXJlZCwgMSk7CisgICAgfQorICB9Cit9OworCisjZW5kaWYgIC8vIF9CSU9OSUNfTE9DS19ICmRpZmYgLS1naXQgYS9saWJjL3ByaXZhdGUvYmlvbmljX21hY3Jvcy5oIGIvbGliYy9wcml2YXRlL2Jpb25pY19tYWNyb3MuaAppbmRleCA0OTFiM2FjLi40ZjNjZjg5IDEwMDY0NAotLS0gYS9saWJjL3ByaXZhdGUvYmlvbmljX21hY3Jvcy5oCisrKyBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfbWFjcm9zLmgKQEAgLTE3LDExICsxNywxNiBAQAogI2lmbmRlZiBfQklPTklDX01BQ1JPU19IXwogI2RlZmluZSBfQklPTklDX01BQ1JPU19IXwogCisvLyBGcmFtZXdvcmtzIE9wZW5HTCBjb2RlIGN1cnJlbnRseSBsZWFrcyB0aGlzIGhlYWRlciBhbmQgYWxsb3dzCisvLyBjb2xsaXNpb25zIHdpdGggb3RoZXIgZGVjbGFyYXRpb25zLCBlLmcuLCBmcm9tIGxpYm5hdGl2ZWhlbHBlci4KKy8vIFRPRE86IFJlbW92ZSBvbmNlIGNsZWFuZWQgdXAuIGIvMTgzMzQ1MTYKKyNpZiAhZGVmaW5lZChESVNBTExPV19DT1BZX0FORF9BU1NJR04pCiAvLyBESVNBTExPV19DT1BZX0FORF9BU1NJR04gZGlzYWxsb3dzIHRoZSBjb3B5IGFuZCBvcGVyYXRvcj0gZnVuY3Rpb25zLgogLy8gSXQgZ29lcyBpbiB0aGUgcHJpdmF0ZTogZGVjbGFyYXRpb25zIGluIGEgY2xhc3MuCiAjZGVmaW5lIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihUeXBlTmFtZSkgXAogICBUeXBlTmFtZShjb25zdCBUeXBlTmFtZSYpID0gZGVsZXRlOyAgICAgIFwKICAgdm9pZCBvcGVyYXRvcj0oY29uc3QgVHlwZU5hbWUmKSA9IGRlbGV0ZQorI2VuZGlmICAvLyAhZGVmaW5lZChESVNBTExPV19DT1BZX0FORF9BU1NJR04pCiAKIC8vIEEgbWFjcm8gdG8gZGlzYWxsb3cgYWxsIHRoZSBpbXBsaWNpdCBjb25zdHJ1Y3RvcnMsIG5hbWVseSB0aGUKIC8vIGRlZmF1bHQgY29uc3RydWN0b3IsIGNvcHkgY29uc3RydWN0b3IgYW5kIG9wZXJhdG9yPSBmdW5jdGlvbnMuCmRpZmYgLS1naXQgYS9saWJjL3ByaXZhdGUvYmlvbmljX3B0aHJlYWQuaCBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfcHRocmVhZC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwN2JjYmQ0Li4wMDAwMDAwCi0tLSBhL2xpYmMvcHJpdmF0ZS9iaW9uaWNfcHRocmVhZC5oCisrKyAvZGV2L251bGwKQEAgLTEsNDEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSAqICAgIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKLSAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCi0gKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCi0gKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKLSAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKLSAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAotICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIF9CSU9OSUNfUFRIUkVBRF9ICi0jZGVmaW5lIF9CSU9OSUNfUFRIUkVBRF9ICi0KLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLQotX19CRUdJTl9ERUNMUwotCi0vKiBJbnRlcm5hbCwgbm90IGFuIE5ESyBBUEkgKi8KLWV4dGVybiBwaWRfdCBfX3B0aHJlYWRfZ2V0dGlkKHB0aHJlYWRfdCB0aGlkKTsKLQotX19FTkRfREVDTFMKLQotI2VuZGlmIC8qIF9CSU9OSUNfUFRIUkVBRF9IICovCmRpZmYgLS1naXQgYS9saWJjL3ByaXZhdGUvYmlvbmljX3N5c3RyYWNlLmggYi9saWJjL3ByaXZhdGUvYmlvbmljX3N5c3RyYWNlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGI0NTYwZgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfc3lzdHJhY2UuaApAQCAtMCwwICsxLDM1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2lmbmRlZiBCSU9OSUNfU1lTVFJBQ0VfSAorI2RlZmluZSBCSU9OSUNfU1lTVFJBQ0VfSAorCisjaW5jbHVkZSAiYmlvbmljX21hY3Jvcy5oIgorCisvLyBUcmFjaW5nIGNsYXNzIGZvciBiaW9uaWMuIFRvIGJlZ2luIGEgdHJhY2UgYXQgYSBzcGVjaWZpZWQgcG9pbnQ6CisvLyAgIFNjb3BlZFRyYWNlKCJUcmFjZSBtZXNzYWdlIik7CisvLyBUaGUgdHJhY2Ugd2lsbCBlbmQgd2hlbiB0aGUgY29udHJ1Y3RvciBnb2VzIG91dCBvZiBzY29wZS4KKworY2xhc3MgX19MSUJDX0hJRERFTl9fIFNjb3BlZFRyYWNlIHsKKyBwdWJsaWM6CisgIGV4cGxpY2l0IFNjb3BlZFRyYWNlKGNvbnN0IGNoYXIqIG1lc3NhZ2UpOworICB+U2NvcGVkVHJhY2UoKTsKKworIHByaXZhdGU6CisgIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihTY29wZWRUcmFjZSk7Cit9OworCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMvcHJpdmF0ZS9iaW9uaWNfdGltZV9jb252ZXJzaW9ucy5oIGIvbGliYy9wcml2YXRlL2Jpb25pY190aW1lX2NvbnZlcnNpb25zLmgKaW5kZXggNTFmNTQzZi4uY2YwMDQ2YSAxMDA2NDQKLS0tIGEvbGliYy9wcml2YXRlL2Jpb25pY190aW1lX2NvbnZlcnNpb25zLmgKKysrIGIvbGliYy9wcml2YXRlL2Jpb25pY190aW1lX2NvbnZlcnNpb25zLmgKQEAgLTM5LDYgKzM5LDggQEAKIAogX19MSUJDX0hJRERFTl9fIHZvaWQgdGltZXZhbF9mcm9tX3RpbWVzcGVjKHRpbWV2YWwmIHR2LCBjb25zdCB0aW1lc3BlYyYgdHMpOwogCitfX0xJQkNfSElEREVOX18gYm9vbCB0aW1lc3BlY19mcm9tX2Fic29sdXRlX3RpbWVzcGVjKHRpbWVzcGVjJiB0cywgY29uc3QgdGltZXNwZWMmIGFic190cywgY2xvY2tpZF90IGNsb2NrKTsKKwogX19FTkRfREVDTFMKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL3ByaXZhdGUvYmlvbmljX3Rscy5oIGIvbGliYy9wcml2YXRlL2Jpb25pY190bHMuaAppbmRleCA1NmE2MWJlLi4zMGRjMGViIDEwMDY0NAotLS0gYS9saWJjL3ByaXZhdGUvYmlvbmljX3Rscy5oCisrKyBiL2xpYmMvcHJpdmF0ZS9iaW9uaWNfdGxzLmgKQEAgLTY3LDMwICs2Nyw0OCBAQAogICBUTFNfU0xPVF9TVEFDS19HVUFSRCA9IDUsIC8vIEdDQyByZXF1aXJlcyB0aGlzIHNwZWNpZmljIHNsb3QgZm9yIHg4Ni4KICAgVExTX1NMT1RfRExFUlJPUiwKIAotICBUTFNfU0xPVF9GSVJTVF9VU0VSX1NMT1QgLy8gTXVzdCBjb21lIGxhc3QhCisgIEJJT05JQ19UTFNfU0xPVFMgLy8gTXVzdCBjb21lIGxhc3QhCiB9OwogCiAvKgotICogVGhlcmUgYXJlIHR3byBraW5kcyBvZiBzbG90IHVzZWQgaW50ZXJuYWxseSBieSBiaW9uaWMgLS0tIHRoZXJlIGFyZSB0aGUgd2VsbC1rbm93biBzbG90cwotICogZW51bWVyYXRlZCBhYm92ZSwgYW5kIHRoZW4gdGhlcmUgYXJlIHRob3NlIHRoYXQgYXJlIGFsbG9jYXRlZCBkdXJpbmcgc3RhcnR1cCBieSBjYWxscyB0bwotICogcHRocmVhZF9rZXlfY3JlYXRlOyBncmVwIGZvciBHTE9CQUxfSU5JVF9USFJFQURfTE9DQUxfQlVGRkVSIHRvIGZpbmQgdGhvc2UuIFdlIG5lZWQgdG8gbWFudWFsbHkKLSAqIG1haW50YWluIHRoYXQgc2Vjb25kIG51bWJlciwgYnV0IHB0aHJlYWRfdGVzdCB3aWxsIGZhaWwgaWYgd2UgZm9yZ2V0LgorICogQmlvbmljIHVzZXMgc29tZSBwdGhyZWFkIGtleXMgaW50ZXJuYWxseS4gQWxsIHB0aHJlYWQga2V5cyB1c2VkIGludGVybmFsbHkKKyAqIHNob3VsZCBiZSBjcmVhdGVkIGluIGNvbnN0cnVjdG9ycywgZXhjZXB0IGZvciBrZXlzIHRoYXQgbWF5IGJlIHVzZWQgaW4gb3IKKyAqIGJlZm9yZSBjb25zdHJ1Y3RvcnMuCisgKgorICogV2UgbmVlZCB0byBtYW51YWxseSBtYWludGFpbiB0aGUgY291bnQgb2YgcHRocmVhZCBrZXlzIHVzZWQgaW50ZXJuYWxseSwgYnV0CisgKiBwdGhyZWFkX3Rlc3Qgc2hvdWxkIGZhaWwgaWYgd2UgZm9yZ2V0LgorICoKKyAqIFRoZXNlIGFyZSB0aGUgcHRocmVhZCBrZXlzIGN1cnJlbnRseSB1c2VkIGludGVybmFsbHkgYnkgbGliYzoKKyAqCisgKiAgYmFzZW5hbWUgICAgICAgICAgICAgICBsaWJjIChUaHJlYWRMb2NhbEJ1ZmZlcikKKyAqICBkaXJuYW1lICAgICAgICAgICAgICAgIGxpYmMgKFRocmVhZExvY2FsQnVmZmVyKQorICogIHVzZWxvY2FsZSAgICAgICAgICAgICAgbGliYyAoY2FuIGJlIHVzZWQgaW4gY29uc3RydWN0b3JzKQorICogIGdldG1udGVudF9tbnRlbnQgICAgICAgbGliYyAoVGhyZWFkTG9jYWxCdWZmZXIpCisgKiAgZ2V0bW50ZW50X3N0cmluZ3MgICAgICBsaWJjIChUaHJlYWRMb2NhbEJ1ZmZlcikKKyAqICBwdHNuYW1lICAgICAgICAgICAgICAgIGxpYmMgKFRocmVhZExvY2FsQnVmZmVyKQorICogIHR0eW5hbWUgICAgICAgICAgICAgICAgbGliYyAoVGhyZWFkTG9jYWxCdWZmZXIpCisgKiAgc3RyZXJyb3IgICAgICAgICAgICAgICBsaWJjIChUaHJlYWRMb2NhbEJ1ZmZlcikKKyAqICBzdHJzaWduYWwgICAgICAgICAgICAgIGxpYmMgKFRocmVhZExvY2FsQnVmZmVyKQorICogIHBhc3N3ZCAgICAgICAgICAgICAgICAgbGliYyAoVGhyZWFkTG9jYWxCdWZmZXIpCisgKiAgZ3JvdXAgICAgICAgICAgICAgICAgICBsaWJjIChUaHJlYWRMb2NhbEJ1ZmZlcikKKyAqICBfcmVzX2tleSAgICAgICAgICAgICAgIGxpYmMgKGNvbnN0cnVjdG9yIGluIEJTRCBjb2RlKQogICovCi0jZGVmaW5lIEdMT0JBTF9JTklUX1RIUkVBRF9MT0NBTF9CVUZGRVJfQ09VTlQgNQorCisjZGVmaW5lIExJQkNfUFRIUkVBRF9LRVlfUkVTRVJWRURfQ09VTlQgMTIKIAogI2lmIGRlZmluZWQoVVNFX0pFTUFMTE9DKQotLyogamVtYWxsb2MgdXNlcyA1IGtleXMgZm9yIGl0c2VsZi4gKi8KLSNkZWZpbmUgQklPTklDX1RMU19SRVNFUlZFRF9TTE9UUyAoR0xPQkFMX0lOSVRfVEhSRUFEX0xPQ0FMX0JVRkZFUl9DT1VOVCArIDUpCisvKiBJbnRlcm5hbGx5LCBqZW1hbGxvYyB1c2VzIGEgc2luZ2xlIGtleSBmb3IgcGVyIHRocmVhZCBkYXRhLiAqLworI2RlZmluZSBKRU1BTExPQ19QVEhSRUFEX0tFWV9SRVNFUlZFRF9DT1VOVCAxCisjZGVmaW5lIEJJT05JQ19QVEhSRUFEX0tFWV9SRVNFUlZFRF9DT1VOVCAoTElCQ19QVEhSRUFEX0tFWV9SRVNFUlZFRF9DT1VOVCArIEpFTUFMTE9DX1BUSFJFQURfS0VZX1JFU0VSVkVEX0NPVU5UKQogI2Vsc2UKLSNkZWZpbmUgQklPTklDX1RMU19SRVNFUlZFRF9TTE9UUyBHTE9CQUxfSU5JVF9USFJFQURfTE9DQUxfQlVGRkVSX0NPVU5UCisjZGVmaW5lIEJJT05JQ19QVEhSRUFEX0tFWV9SRVNFUlZFRF9DT1VOVCBMSUJDX1BUSFJFQURfS0VZX1JFU0VSVkVEX0NPVU5UCiAjZW5kaWYKIAogLyoKLSAqIE1heGltdW0gbnVtYmVyIG9mIGVsZW1lbnRzIGluIHRoZSBUTFMgYXJyYXkuCi0gKiBUaGlzIGluY2x1ZGVzIHNwYWNlIGZvciBwdGhyZWFkIGtleXMgYW5kIG91ciBvd24gaW50ZXJuYWwgc2xvdHMuCi0gKiBXZSBuZWVkIHRvIHJvdW5kIHVwIHRvIG1haW50YWluIHN0YWNrIGFsaWdubWVudC4KKyAqIE1heGltdW0gbnVtYmVyIG9mIHB0aHJlYWQga2V5cyBhbGxvY2F0ZWQuCisgKiBUaGlzIGluY2x1ZGVzIHB0aHJlYWQga2V5cyB1c2VkIGludGVybmFsbHkgYW5kIGV4dGVybmFsbHkuCiAgKi8KLSNkZWZpbmUgQklPTklDX1RMU19TTE9UUyBCSU9OSUNfQUxJR04oUFRIUkVBRF9LRVlTX01BWCArIFRMU19TTE9UX0ZJUlNUX1VTRVJfU0xPVCArIEJJT05JQ19UTFNfUkVTRVJWRURfU0xPVFMsIDQpCisjZGVmaW5lIEJJT05JQ19QVEhSRUFEX0tFWV9DT1VOVCAoQklPTklDX1BUSFJFQURfS0VZX1JFU0VSVkVEX0NPVU5UICsgUFRIUkVBRF9LRVlTX01BWCkKIAogX19FTkRfREVDTFMKIApkaWZmIC0tZ2l0IGEvbGliYy9wcml2YXRlL2tlcm5lbF9zaWdzZXRfdC5oIGIvbGliYy9wcml2YXRlL2tlcm5lbF9zaWdzZXRfdC5oCmluZGV4IGIyZDYzODYuLjk0MTVmY2YgMTAwNjQ0Ci0tLSBhL2xpYmMvcHJpdmF0ZS9rZXJuZWxfc2lnc2V0X3QuaAorKysgYi9saWJjL3ByaXZhdGUva2VybmVsX3NpZ3NldF90LmgKQEAgLTE3LDYgKzE3LDggQEAKICNpZm5kZWYgTElCQ19QUklWQVRFX0tFUk5FTF9TSUdTRVRfVF9IXwogI2RlZmluZSBMSUJDX1BSSVZBVEVfS0VSTkVMX1NJR1NFVF9UX0hfCiAKKyNpbmNsdWRlIDxzaWduYWwuaD4KKwogLy8gT3VyIHNpZ3NldF90IGlzIHdyb25nIGZvciBBUk0gYW5kIHg4Ni4gSXQncyAzMi1iaXQgYnV0IHRoZSBrZXJuZWwgZXhwZWN0cyA2NCBiaXRzLgogLy8gVGhpcyBtZWFucyB3ZSBjYW4ndCBzdXBwb3J0IHJlYWwtdGltZSBzaWduYWxzIGNvcnJlY3RseSB1bnRpbCB3ZSBjYW4gY2hhbmdlIHRoZSBBQkkuCiAvLyBJbiB0aGUgbWVhbnRpbWUsIHdlIGNhbiB1c2UgdGhpcyB1bmlvbiB0byBwYXNzIGFuIGFwcHJvcHJpYXRlbHktc2l6ZWQgYmxvY2sgb2YgbWVtb3J5CmRpZmYgLS1naXQgYS9saWJjL3N0ZGlvL2ZpbGVleHQuaCBiL2xpYmMvc3RkaW8vZmlsZWV4dC5oCmluZGV4IGMwNzRiNGIuLjZjYWNjMGYgMTAwNjQ0Ci0tLSBhL2xpYmMvc3RkaW8vZmlsZWV4dC5oCisrKyBiL2xpYmMvc3RkaW8vZmlsZWV4dC5oCkBAIC0zMyw2ICszMyw3IEBACiAjZGVmaW5lIF9GSUxFRVhUX0hfCiAKICNpbmNsdWRlIDxwdGhyZWFkLmg+CisjaW5jbHVkZSA8c3RkYm9vbC5oPgogCiBfX0JFR0lOX0RFQ0xTCiAKQEAgLTQwLDE0ICs0MSwxOCBAQAogICogZmlsZSBleHRlbnNpb24KICAqLwogc3RydWN0IF9fc2ZpbGVleHQgewotCXN0cnVjdAlfX3NidWYgX3ViOyAvKiB1bmdldGMgYnVmZmVyICovCisJc3RydWN0CV9fc2J1ZiBfdWI7CQkvKiB1bmdldGMgYnVmZmVyICovCiAJc3RydWN0IHdjaGFyX2lvX2RhdGEgX3djaW87CS8qIHdpZGUgY2hhciBpbyBzdGF0dXMgKi8KLQlwdGhyZWFkX211dGV4X3QgX2xvY2s7IC8qIGZpbGUgbG9jayAqLworCXB0aHJlYWRfbXV0ZXhfdCBfbG9jazsJCS8qIGZpbGUgbG9jayAqLworCWJvb2wgX3N0ZGlvX2hhbmRsZXNfbG9ja2luZzsJLyogX19mc2V0bG9ja2luZyBzdXBwb3J0ICovCiB9OwogCi0jZGVmaW5lIF9GSUxFRVhUX0lOSVRJQUxJWkVSICB7e05VTEwsMH0sezB9LFBUSFJFQURfUkVDVVJTSVZFX01VVEVYX0lOSVRJQUxJWkVSfQotCisjaWYgZGVmaW5lZChfX2NwbHVzcGx1cykKKyNkZWZpbmUgX0VYVChmcCkgcmVpbnRlcnByZXRfY2FzdDxfX3NmaWxlZXh0Kj4oKGZwKS0+X2V4dC5fYmFzZSkKKyNlbHNlCiAjZGVmaW5lIF9FWFQoZnApICgoc3RydWN0IF9fc2ZpbGVleHQgKikoKGZwKS0+X2V4dC5fYmFzZSkpCisjZW5kaWYKKwogI2RlZmluZSBfVUIoZnApIF9FWFQoZnApLT5fdWIKICNkZWZpbmUgX0ZMT0NLKGZwKSAgX0VYVChmcCktPl9sb2NrCiAKQEAgLTU2LDcgKzYxLDEyIEBACiAJX1VCKGZwKS5fYmFzZSA9IE5VTEw7IFwKIAlfVUIoZnApLl9zaXplID0gMDsgXAogCVdDSU9fSU5JVChmcCk7IFwKLSAgICAgICAgX0ZMT0NLKGZwKS52YWx1ZSA9IF9fUFRIUkVBRF9SRUNVUlNJVkVfTVVURVhfSU5JVF9WQUxVRTsgXAorCXB0aHJlYWRfbXV0ZXhhdHRyX3QgYXR0cjsgXAorCXB0aHJlYWRfbXV0ZXhhdHRyX2luaXQoJmF0dHIpOyBcCisJcHRocmVhZF9tdXRleGF0dHJfc2V0dHlwZSgmYXR0ciwgUFRIUkVBRF9NVVRFWF9SRUNVUlNJVkUpOyBcCisJcHRocmVhZF9tdXRleF9pbml0KCZfRkxPQ0soZnApLCAmYXR0cik7IFwKKwlwdGhyZWFkX211dGV4YXR0cl9kZXN0cm95KCZhdHRyKTsgXAorCV9FWFQoZnApLT5fc3RkaW9faGFuZGxlc19sb2NraW5nID0gdHJ1ZTsgXAogfSB3aGlsZSAoMCkKIAogI2RlZmluZSBfRklMRUVYVF9TRVRVUChmLCBmZXh0KSBcCmRpZmYgLS1naXQgYS9saWJjL3N0ZGlvL2ZpbmRmcC5jIGIvbGliYy9zdGRpby9maW5kZnAuYwppbmRleCBjZmJiNjZiLi41ZTUxMTk4IDEwMDY0NAotLS0gYS9saWJjL3N0ZGlvL2ZpbmRmcC5jCisrKyBiL2xpYmMvc3RkaW8vZmluZGZwLmMKQEAgLTQ0LDE3ICs0NCwxMyBAQAogI2RlZmluZSBBTElHTkJZVEVTIChzaXplb2YodWludHB0cl90KSAtIDEpCiAjZGVmaW5lIEFMSUdOKHApICgoKHVpbnRwdHJfdCkocCkgKyBBTElHTkJZVEVTKSAmfiBBTElHTkJZVEVTKQogCi0jdW5kZWYgc3RkaW4KLSN1bmRlZiBzdGRvdXQKLSN1bmRlZiBzdGRlcnIKLQogaW50CV9fc2RpZGluaXQ7CiAKICNkZWZpbmUJTkRZTkFNSUMgMTAJCS8qIGFkZCB0ZW4gbW9yZSB3aGVuZXZlciBuZWNlc3NhcnkgKi8KIAogI2RlZmluZQlzdGQoZmxhZ3MsIGZpbGUpIFwKLQl7MCwwLDAsZmxhZ3MsZmlsZSx7MH0sMCxfX3NGK2ZpbGUsX19zY2xvc2UsX19zcmVhZCxfX3NzZWVrLF9fc3dyaXRlLCBcCi0JICAgIHsodW5zaWduZWQgY2hhciAqKShfX3NGZXh0K2ZpbGUpLCAwfSxOVUxMLDAsezB9LHswfSx7MH0sMCwwfQorCXswLDAsMCxmbGFncyxmaWxlLHswLDB9LDAsX19zRitmaWxlLF9fc2Nsb3NlLF9fc3JlYWQsX19zc2VlayxfX3N3cml0ZSwgXAorCSAgICB7KHVuc2lnbmVkIGNoYXIgKikoX19zRmV4dCtmaWxlKSwgMH0sTlVMTCwwLHswfSx7MH0sezAsMH0sMCwwfQogCiAJCQkJLyogdGhlIHVzdWFsIC0gKHN0ZGluICsgc3Rkb3V0ICsgc3RkZXJyKSAqLwogc3RhdGljIEZJTEUgdXN1YWxbRk9QRU5fTUFYIC0gM107CmRpZmYgLS1naXQgYS9saWJjL3N0ZGlvL2ZyZWFkLmMgYi9saWJjL3N0ZGlvL2ZyZWFkLmMKaW5kZXggZTA1MjEyOC4uZjNmMDEyNyAxMDA2NDQKLS0tIGEvbGliYy9zdGRpby9mcmVhZC5jCisrKyBiL2xpYmMvc3RkaW8vZnJlYWQuYwpAQCAtMzUsNiArMzUsNyBAQAogI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPHN0ZGludC5oPgogI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CiAjaW5jbHVkZSAibG9jYWwuaCIKIAogI2RlZmluZSBNVUxfTk9fT1ZFUkZMT1cJKDFVTCA8PCAoc2l6ZW9mKHNpemVfdCkgKiA0KSkKQEAgLTQyLDEzICs0Myw4IEBACiBzaXplX3QKIGZyZWFkKHZvaWQgKmJ1Ziwgc2l6ZV90IHNpemUsIHNpemVfdCBjb3VudCwgRklMRSAqZnApCiB7Ci0Jc2l6ZV90IHJlc2lkOwotCWNoYXIgKnA7Ci0JaW50IHI7Ci0Jc2l6ZV90IHRvdGFsOwotCiAJLyoKLQkgKiBFeHRlbnNpb246ICBDYXRjaCBpbnRlZ2VyIG92ZXJmbG93CisJICogRXh0ZW5zaW9uOiAgQ2F0Y2ggaW50ZWdlciBvdmVyZmxvdy4KIAkgKi8KIAlpZiAoKHNpemUgPj0gTVVMX05PX09WRVJGTE9XIHx8IGNvdW50ID49IE1VTF9OT19PVkVSRkxPVykgJiYKIAkgICAgc2l6ZSA+IDAgJiYgU0laRV9NQVggLyBzaXplIDwgY291bnQpIHsKQEAgLTU3LDQ4ICs1Myw4NyBAQAogCQlyZXR1cm4gKDApOwogCX0KIAorCWNvbnN0IHNpemVfdCBkZXNpcmVkX3RvdGFsID0gY291bnQgKiBzaXplOworCXNpemVfdCB0b3RhbCA9IGRlc2lyZWRfdG90YWw7CisKIAkvKgogCSAqIEFOU0kgYW5kIFNVU3YyIHJlcXVpcmUgYSByZXR1cm4gdmFsdWUgb2YgMCBpZiBzaXplIG9yIGNvdW50IGFyZSAwLgogCSAqLwotCWlmICgocmVzaWQgPSBjb3VudCAqIHNpemUpID09IDApCisJaWYgKHRvdGFsID09IDApIHsKIAkJcmV0dXJuICgwKTsKKwl9CisKIAlGTE9DS0ZJTEUoZnApOwogCV9TRVRfT1JJRU5UQVRJT04oZnAsIC0xKTsKKworCS8vIFRPRE86IGhvdyBjYW4gdGhpcyBldmVyIGhhcHBlbj8hCiAJaWYgKGZwLT5fciA8IDApCiAJCWZwLT5fciA9IDA7Ci0JdG90YWwgPSByZXNpZDsKLQlwID0gYnVmOwogCi0JLy8gQkVHSU4gYW5kcm9pZC1hZGRlZAotCS8vIEF2b2lkIHBhdGhvbG9naWNhbCBiZWhhdmlvciBvbiB1bmJ1ZmZlcmVkIGZpbGVzLiBPcGVuQlNECi0JLy8gd2lsbCBsb29wIHJlYWRpbmcgb25lIGJ5dGUgdGhlbiBtZW1jcHlpbmcgb25lIGJ5dGUhCi0JaWYgKChmcC0+X2ZsYWdzICYgX19TTkJGKSAhPSAwKSB7Ci0JCS8vIFdlIGtub3cgaWYgd2UncmUgdW5idWZmZXJlZCB0aGF0IG91ciBidWZmZXIgaXMgZW1wdHksIHNvCi0JCS8vIHdlIGNhbiBqdXN0IHJlYWQgZGlyZWN0bHkuCi0JCXdoaWxlIChyZXNpZCA+IDAgJiYgKHIgPSAoKmZwLT5fcmVhZCkoZnAtPl9jb29raWUsIHAsIHJlc2lkKSkgPiAwKSB7Ci0JCQlwICs9IHI7Ci0JCQlyZXNpZCAtPSByOwotCQl9Ci0JCUZVTkxPQ0tGSUxFKGZwKTsKLQkJcmV0dXJuICgodG90YWwgLSByZXNpZCkgLyBzaXplKTsKKwkvKgorCSAqIEVuc3VyZSBfYmYuX3NpemUgaXMgdmFsaWQuCisJICovCisJaWYgKGZwLT5fYmYuX2Jhc2UgPT0gTlVMTCkgeworCQlfX3NtYWtlYnVmKGZwKTsKIAl9Ci0JLy8gRU5EIGFuZHJvaWQtYWRkZWQKIAotCXdoaWxlIChyZXNpZCA+IChzaXplX3QpKHIgPSBmcC0+X3IpKSB7Ci0JCSh2b2lkKW1lbWNweSgodm9pZCAqKXAsICh2b2lkICopZnAtPl9wLCAoc2l6ZV90KXIpOwotCQlmcC0+X3AgKz0gcjsKLQkJLyogZnAtPl9yID0gMCAuLi4gZG9uZSBpbiBfX3NyZWZpbGwgKi8KLQkJcCArPSByOwotCQlyZXNpZCAtPSByOworCWNoYXIqIGRzdCA9IGJ1ZjsKKworCXdoaWxlICh0b3RhbCA+IDApIHsKKwkJLyoKKwkJICogQ29weSBkYXRhIG91dCBvZiB0aGUgYnVmZmVyLgorCQkgKi8KKwkJc2l6ZV90IGJ1ZmZlcmVkX2J5dGVzID0gTUlOKChzaXplX3QpIGZwLT5fciwgdG90YWwpOworCQltZW1jcHkoZHN0LCBmcC0+X3AsIGJ1ZmZlcmVkX2J5dGVzKTsKKwkJZnAtPl9wICs9IGJ1ZmZlcmVkX2J5dGVzOworCQlmcC0+X3IgLT0gYnVmZmVyZWRfYnl0ZXM7CisJCWRzdCArPSBidWZmZXJlZF9ieXRlczsKKwkJdG90YWwgLT0gYnVmZmVyZWRfYnl0ZXM7CisKKwkJLyoKKwkJICogQXJlIHdlIGRvbmU/CisJCSAqLworCQlpZiAodG90YWwgPT0gMCkgeworCQkJZ290byBvdXQ7CisJCX0KKworCQkvKgorCQkgKiBEbyB3ZSBoYXZlIHNvIG11Y2ggbW9yZSB0byByZWFkIHRoYXQgd2Ugc2hvdWxkCisJCSAqIGF2b2lkIGNvcHlpbmcgaXQgdGhyb3VnaCB0aGUgYnVmZmVyPworCQkgKi8KKwkJaWYgKHRvdGFsID4gKHNpemVfdCkgZnAtPl9iZi5fc2l6ZSkgeworCQkJLyoKKwkJCSAqIE1ha2Ugc3VyZSB0aGF0IGZzZWVrIGRvZXNuJ3QgdGhpbmsgaXQgY2FuCisJCQkgKiByZXVzZSB0aGUgYnVmZmVyIHNpbmNlIHdlIGFyZSBnb2luZyB0byByZWFkCisJCQkgKiBkaXJlY3RseSBmcm9tIHRoZSBmaWxlIGRlc2NyaXB0b3IuCisJCQkgKi8KKwkJCWZwLT5fZmxhZ3MgfD0gX19TTU9EOworCQkJYnJlYWs7CisJCX0KKworCQkvKgorCQkgKiBMZXNzIHRoYW4gYSBidWZmZXIgdG8gZ28sIHNvIHJlZmlsbCB0aGUgYnVmZmVyIGFuZAorCQkgKiBnbyBhcm91bmQgdGhlIGxvb3AgYWdhaW4uCisJCSAqLwogCQlpZiAoX19zcmVmaWxsKGZwKSkgewotCQkJLyogbm8gbW9yZSBpbnB1dDogcmV0dXJuIHBhcnRpYWwgcmVzdWx0ICovCi0JCQlGVU5MT0NLRklMRShmcCk7Ci0JCQlyZXR1cm4gKCh0b3RhbCAtIHJlc2lkKSAvIHNpemUpOworCQkJZ290byBvdXQ7CiAJCX0KIAl9Ci0JKHZvaWQpbWVtY3B5KCh2b2lkICopcCwgKHZvaWQgKilmcC0+X3AsIHJlc2lkKTsKLQlmcC0+X3IgLT0gcmVzaWQ7Ci0JZnAtPl9wICs9IHJlc2lkOworCisJLyoKKwkgKiBSZWFkIGRpcmVjdGx5IGludG8gdGhlIGNhbGxlcidzIGJ1ZmZlci4KKwkgKi8KKwl3aGlsZSAodG90YWwgPiAwKSB7CisJCXNzaXplX3QgYnl0ZXNfcmVhZCA9ICgqZnAtPl9yZWFkKShmcC0+X2Nvb2tpZSwgZHN0LCB0b3RhbCk7CisJCWlmIChieXRlc19yZWFkIDw9IDApIHsKKwkJCWZwLT5fZmxhZ3MgfD0gKGJ5dGVzX3JlYWQgPT0gMCkgPyBfX1NFT0YgOiBfX1NFUlI7CisJCQlicmVhazsKKwkJfQorCQlkc3QgKz0gYnl0ZXNfcmVhZDsKKwkJdG90YWwgLT0gYnl0ZXNfcmVhZDsKKwl9CisKK291dDoKIAlGVU5MT0NLRklMRShmcCk7Ci0JcmV0dXJuIChjb3VudCk7CisJcmV0dXJuICgoZGVzaXJlZF90b3RhbCAtIHRvdGFsKSAvIHNpemUpOwogfQpkaWZmIC0tZ2l0IGEvbGliYy9zdGRpby9sb2NhbC5oIGIvbGliYy9zdGRpby9sb2NhbC5oCmluZGV4IDQ2YjExZjEuLmNlMDQxNDEgMTAwNjQ0Ci0tLSBhL2xpYmMvc3RkaW8vbG9jYWwuaAorKysgYi9saWJjL3N0ZGlvL2xvY2FsLmgKQEAgLTExMSw4ICsxMTEsOCBAQAogCShmcCktPl9sYi5fYmFzZSA9IE5VTEw7IFwKIH0KIAotI2RlZmluZSBGTE9DS0ZJTEUoZnApICAgZmxvY2tmaWxlKGZwKQotI2RlZmluZSBGVU5MT0NLRklMRShmcCkgZnVubG9ja2ZpbGUoZnApCisjZGVmaW5lIEZMT0NLRklMRShmcCkgICBpZiAoX0VYVChmcCktPl9zdGRpb19oYW5kbGVzX2xvY2tpbmcpIGZsb2NrZmlsZShmcCkKKyNkZWZpbmUgRlVOTE9DS0ZJTEUoZnApIGlmIChfRVhUKGZwKS0+X3N0ZGlvX2hhbmRsZXNfbG9ja2luZykgZnVubG9ja2ZpbGUoZnApCiAKICNkZWZpbmUgRkxPQVRJTkdfUE9JTlQKICNkZWZpbmUgUFJJTlRGX1dJREVfQ0hBUgpAQCAtMTI0LDYgKzEyNCw3IEBACiAjZGVmaW5lIF9fc2ZlcnJvcihwKSAgICgoKHApLT5fZmxhZ3MgJiBfX1NFUlIpICE9IDApCiAjZGVmaW5lIF9fc2NsZWFyZXJyKHApICgodm9pZCkoKHApLT5fZmxhZ3MgJj0gfihfX1NFUlJ8X19TRU9GKSkpCiAjZGVmaW5lIF9fc2ZpbGVubyhwKSAgICgocCktPl9maWxlKQorI2lmICFkZWZpbmVkKF9fY3BsdXNwbHVzKQogI2RlZmluZSBfX3NnZXRjKHApICgtLShwKS0+X3IgPCAwID8gX19zcmdldChwKSA6IChpbnQpKCoocCktPl9wKyspKQogc3RhdGljIF9faW5saW5lIGludCBfX3NwdXRjKGludCBfYywgRklMRSogX3ApIHsKICAgaWYgKC0tX3AtPl93ID49IDAgfHwgKF9wLT5fdyA+PSBfcC0+X2xiZnNpemUgJiYgKGNoYXIpX2MgIT0gJ1xuJykpIHsKQEAgLTEzMiw2ICsxMzMsNyBAQAogICAgIHJldHVybiAoX19zd2J1ZihfYywgX3ApKTsKICAgfQogfQorI2VuZGlmCiAKIC8qIE9wZW5CU0QgZGVjbGFyZXMgdGhlc2UgaW4gZnZ3cml0ZS5oIGJ1dCB3ZSB3YW50IHRvIGVuc3VyZSB0aGV5J3JlIGhpZGRlbi4gKi8KIHN0cnVjdCBfX3N1aW87CmRpZmYgLS1naXQgYS9saWJjL3N0ZGlvL3N0ZGlvLmMgYi9saWJjL3N0ZGlvL3N0ZGlvLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTNiOTg4NwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvc3RkaW8vc3RkaW8uYwpAQCAtMCwwICsxLDkwIEBACisvKgkkT3BlbkJTRDogc3RkaW8uYyx2IDEuOSAyMDA1LzA4LzA4IDA4OjA1OjM2IGVzcGllIEV4cCAkICovCisvKi0KKyAqIENvcHlyaWdodCAoYykgMTk5MCwgMTk5MworICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQorICogQ2hyaXMgVG9yZWsuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlICJsb2NhbC5oIgorCisvKgorICogU21hbGwgc3RhbmRhcmQgSS9PL3NlZWsvY2xvc2UgZnVuY3Rpb25zLgorICogVGhlc2UgbWFpbnRhaW4gdGhlIGBrbm93biBzZWVrIG9mZnNldCcgZm9yIHNlZWsgb3B0aW1pc2F0aW9uLgorICovCitpbnQKK19fc3JlYWQodm9pZCAqY29va2llLCBjaGFyICpidWYsIGludCBuKQoreworCUZJTEUgKmZwID0gY29va2llOworCWludCByZXQ7CisJCisJcmV0ID0gVEVNUF9GQUlMVVJFX1JFVFJZKHJlYWQoZnAtPl9maWxlLCBidWYsIG4pKTsKKwkvKiBpZiB0aGUgcmVhZCBzdWNjZWVkZWQsIHVwZGF0ZSB0aGUgY3VycmVudCBvZmZzZXQgKi8KKwlpZiAocmV0ID49IDApCisJCWZwLT5fb2Zmc2V0ICs9IHJldDsKKwllbHNlCisJCWZwLT5fZmxhZ3MgJj0gfl9fU09GRjsJLyogcGFyYW5vaWEgKi8KKwlyZXR1cm4gKHJldCk7Cit9CisKK2ludAorX19zd3JpdGUodm9pZCAqY29va2llLCBjb25zdCBjaGFyICpidWYsIGludCBuKQoreworCUZJTEUgKmZwID0gY29va2llOworCisJaWYgKGZwLT5fZmxhZ3MgJiBfX1NBUFApCisJCSh2b2lkKSBURU1QX0ZBSUxVUkVfUkVUUlkobHNlZWsoZnAtPl9maWxlLCAob2ZmX3QpMCwgU0VFS19FTkQpKTsKKwlmcC0+X2ZsYWdzICY9IH5fX1NPRkY7CS8qIGluIGNhc2UgRkFQUEVORCBtb2RlIGlzIHNldCAqLworCXJldHVybiBURU1QX0ZBSUxVUkVfUkVUUlkod3JpdGUoZnAtPl9maWxlLCBidWYsIG4pKTsKK30KKworZnBvc190CitfX3NzZWVrKHZvaWQgKmNvb2tpZSwgZnBvc190IG9mZnNldCwgaW50IHdoZW5jZSkKK3sKKwlGSUxFICpmcCA9IGNvb2tpZTsKKwlvZmZfdCByZXQ7CisJCisJcmV0ID0gVEVNUF9GQUlMVVJFX1JFVFJZKGxzZWVrKGZwLT5fZmlsZSwgKG9mZl90KW9mZnNldCwgd2hlbmNlKSk7CisJaWYgKHJldCA9PSAob2ZmX3QpLTEpCisJCWZwLT5fZmxhZ3MgJj0gfl9fU09GRjsKKwllbHNlIHsKKwkJZnAtPl9mbGFncyB8PSBfX1NPRkY7CisJCWZwLT5fb2Zmc2V0ID0gcmV0OworCX0KKwlyZXR1cm4gKHJldCk7Cit9CisKK2ludAorX19zY2xvc2Uodm9pZCAqY29va2llKQoreworCXJldHVybiBURU1QX0ZBSUxVUkVfUkVUUlkoY2xvc2UoKChGSUxFICopY29va2llKS0+X2ZpbGUpKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvc3RkaW8vc3RkaW9fZXh0LmNwcCBiL2xpYmMvc3RkaW8vc3RkaW9fZXh0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZWE0NGY2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9zdGRpby9zdGRpb19leHQuY3BwCkBAIC0wLDAgKzEsMTAxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgorICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogICAgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwKKyAqIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MKKyAqIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRAorICogQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLAorICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUCisgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxzdGRpb19leHQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworI2luY2x1ZGUgImxvY2FsLmgiCisjaW5jbHVkZSAicHJpdmF0ZS9saWJjX2xvZ2dpbmcuaCIKKworc2l6ZV90IF9fZmJ1ZnNpemUoRklMRSogZnApIHsKKyAgcmV0dXJuIGZwLT5fYmYuX3NpemU7Cit9CisKKy8qIEZvciBhIF9TUlcgc3RyZWFtLCB3ZSBkb24ndCBrbm93IHdoZXRoZXIgd2UgbGFzdCByZWFkIG9yIHdyb3RlLgoraW50IF9fZnJlYWRpbmcoRklMRSogZnApIHsKKyAgcmV0dXJuIChmcC0+X2ZsYWdzICYgX1NSRCkgIT0gMCB8fCAuLi47Cit9CisqLworCisvKiBGb3IgYSBfU1JXIHN0cmVhbSwgd2UgZG9uJ3Qga25vdyB3aGV0aGVyIHdlIGxhc3QgcmVhZCBvciB3cm90ZS4KK2ludCBfX2Z3cml0aW5nKEZJTEUqKSB7CisgIHJldHVybiAoZnAtPl9mbGFncyAmIF9TV1IpICE9IDAgfHwgLi4uOworfQorKi8KKworaW50IF9fZnJlYWRhYmxlKEZJTEUqIGZwKSB7CisgIHJldHVybiAoZnAtPl9mbGFncyAmIChfX1NSRHxfX1NSVykpICE9IDA7Cit9CisKK2ludCBfX2Z3cml0YWJsZShGSUxFKiBmcCkgeworICByZXR1cm4gKGZwLT5fZmxhZ3MgJiAoX19TV1J8X19TUlcpKSAhPSAwOworfQorCitpbnQgX19mbGJmKEZJTEUqIGZwKSB7CisgIHJldHVybiAoZnAtPl9mbGFncyAmIF9fU0xCRikgIT0gMDsKK30KKwordm9pZCBfX2ZwdXJnZShGSUxFKiBmcCkgeworICBmcHVyZ2UoZnApOworfQorCitzaXplX3QgX19mcGVuZGluZyhGSUxFKiBmcCkgeworICByZXR1cm4gZnAtPl9wIC0gZnAtPl9iZi5fYmFzZTsKK30KKwordm9pZCBfZmx1c2hsYmYoKSB7CisgIC8vIElmIHdlIGZsdXNoIGFsbCBzdHJlYW1zLCB3ZSBrbm93IHdlJ3ZlIGZsdXNoZWQgYWxsIHRoZSBsaW5lLWJ1ZmZlcmVkIHN0cmVhbXMuCisgIGZmbHVzaChOVUxMKTsKK30KKworaW50IF9fZnNldGxvY2tpbmcoRklMRSogZnAsIGludCB0eXBlKSB7CisgIGludCBvbGRfc3RhdGUgPSBfRVhUKGZwKS0+X3N0ZGlvX2hhbmRsZXNfbG9ja2luZyA/IEZTRVRMT0NLSU5HX0lOVEVSTkFMIDogRlNFVExPQ0tJTkdfQllDQUxMRVI7CisgIGlmICh0eXBlID09IEZTRVRMT0NLSU5HX1FVRVJZKSB7CisgICAgcmV0dXJuIG9sZF9zdGF0ZTsKKyAgfQorCisgIGlmICh0eXBlICE9IEZTRVRMT0NLSU5HX0lOVEVSTkFMICYmIHR5cGUgIT0gRlNFVExPQ0tJTkdfQllDQUxMRVIpIHsKKyAgICAvLyBUaGUgQVBJIGRvZXNuJ3QgbGV0IHVzIHJlcG9ydCBhbiBlcnJvciwgc28gYmxvdyB1cC4KKyAgICBfX2xpYmNfZmF0YWwoIkJhZCB0eXBlICglZCkgcGFzc2VkIHRvIF9fZnNldGxvY2tpbmciLCB0eXBlKTsKKyAgfQorCisgIF9FWFQoZnApLT5fc3RkaW9faGFuZGxlc19sb2NraW5nID0gKHR5cGUgPT0gRlNFVExPQ0tJTkdfSU5URVJOQUwpOworICByZXR1cm4gb2xkX3N0YXRlOworfQorCit2b2lkIGNsZWFyZXJyX3VubG9ja2VkKEZJTEUqIGZwKSB7CisgIHJldHVybiBfX3NjbGVhcmVycihmcCk7Cit9CisKK2ludCBmZW9mX3VubG9ja2VkKEZJTEUqIGZwKSB7CisgIHJldHVybiBfX3NmZW9mKGZwKTsKK30KKworaW50IGZlcnJvcl91bmxvY2tlZChGSUxFKiBmcCkgeworICByZXR1cm4gX19zZmVycm9yKGZwKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvc3RkbGliL2F0ZXhpdC5jIGIvbGliYy9zdGRsaWIvYXRleGl0LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGYyYjFiNQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvc3RkbGliL2F0ZXhpdC5jCkBAIC0wLDAgKzEsMjEyIEBACisvKgkkT3BlbkJTRDogYXRleGl0LmMsdiAxLjIwIDIwMTQvMDcvMTEgMDk6NTE6Mzcga2V0dGVuaXMgRXhwICQgKi8KKy8qCisgKiBDb3B5cmlnaHQgKGMpIDIwMDIgRGFuaWVsIEhhcnRtZWllcgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAgICAtIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgIC0gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogICAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZworICogICAgICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKKyAqICAgICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBIT0xERVJTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywKKyAqIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIKKyAqIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4KKyAqIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQorICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICovCisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvbW1hbi5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgImF0ZXhpdC5oIgorI2luY2x1ZGUgInByaXZhdGUvdGhyZWFkX3ByaXZhdGUuaCIKKworc3RydWN0IGF0ZXhpdCAqX19hdGV4aXQ7CitzdGF0aWMgaW50IHJlc3RhcnRsb29wOworCisvKiBCRUdJTiBhbmRyb2lkLWNoYW5nZWQ6IF9fdW5yZWdpc3Rlcl9hdGZvcmsgaXMgdXNlZCBieSBfX2N4YV9maW5hbGl6ZSAqLworZXh0ZXJuIHZvaWQgX191bnJlZ2lzdGVyX2F0Zm9yayh2b2lkKiBkc28pOworLyogRU5EIGFuZHJvaWQtY2hhbmdlZCAqLworCisvKgorICogRnVuY3Rpb24gcG9pbnRlcnMgYXJlIHN0b3JlZCBpbiBhIGxpbmtlZCBsaXN0IG9mIHBhZ2VzLiBUaGUgbGlzdAorICogaXMgaW5pdGlhbGx5IGVtcHR5LCBhbmQgcGFnZXMgYXJlIGFsbG9jYXRlZCBvbiBkZW1hbmQuIFRoZSBmaXJzdAorICogZnVuY3Rpb24gcG9pbnRlciBpbiB0aGUgZmlyc3QgYWxsb2NhdGVkIHBhZ2UgKHRoZSBsYXN0IG9uZSBpbgorICogdGhlIGxpbmtlZCBsaXN0KSBpcyByZXNlcnZlZCBmb3IgdGhlIGNsZWFudXAgZnVuY3Rpb24uCisgKgorICogT3V0c2lkZSB0aGUgZm9sbG93aW5nIGZ1bmN0aW9ucywgYWxsIHBhZ2VzIGFyZSBtcHJvdGVjdCgpJ2VkCisgKiB0byBwcmV2ZW50IHVuaW50ZW50aW9uYWwvbWFsaWNpb3VzIGNvcnJ1cHRpb24uCisgKi8KKworLyoKKyAqIFJlZ2lzdGVyIGEgZnVuY3Rpb24gdG8gYmUgcGVyZm9ybWVkIGF0IGV4aXQgb3Igd2hlbiBhIHNoYXJlZCBvYmplY3QKKyAqIHdpdGggdGhlIGdpdmVuIGRzbyBoYW5kbGUgaXMgdW5sb2FkZWQgZHluYW1pY2FsbHkuICBBbHNvIHVzZWQgYXMKKyAqIHRoZSBiYWNrZW5kIGZvciBhdGV4aXQoKS4gIEZvciBtb3JlIGluZm8gb24gdGhpcyBBUEksIHNlZToKKyAqCisgKglodHRwOi8vd3d3LmNvZGVzb3VyY2VyeS5jb20vY3h4LWFiaS9hYmkuaHRtbCNkc28tZHRvcgorICovCitpbnQKK19fY3hhX2F0ZXhpdCh2b2lkICgqZnVuYykodm9pZCAqKSwgdm9pZCAqYXJnLCB2b2lkICpkc28pCit7CisJc3RydWN0IGF0ZXhpdCAqcCA9IF9fYXRleGl0OworCXN0cnVjdCBhdGV4aXRfZm4gKmZucDsKKwlzaXplX3QgcGdzaXplID0gZ2V0cGFnZXNpemUoKTsKKwlpbnQgcmV0ID0gLTE7CisKKwlpZiAocGdzaXplIDwgc2l6ZW9mKCpwKSkKKwkJcmV0dXJuICgtMSk7CisJX0FURVhJVF9MT0NLKCk7CisJcCA9IF9fYXRleGl0OworCWlmIChwICE9IE5VTEwpIHsKKwkJaWYgKHAtPmluZCArIDEgPj0gcC0+bWF4KQorCQkJcCA9IE5VTEw7CisJCWVsc2UgaWYgKG1wcm90ZWN0KHAsIHBnc2l6ZSwgUFJPVF9SRUFEIHwgUFJPVF9XUklURSkpCisJCQlnb3RvIHVubG9jazsKKwl9CisJaWYgKHAgPT0gTlVMTCkgeworCQlwID0gbW1hcChOVUxMLCBwZ3NpemUsIFBST1RfUkVBRCB8IFBST1RfV1JJVEUsCisJCSAgICBNQVBfQU5PTiB8IE1BUF9QUklWQVRFLCAtMSwgMCk7CisJCWlmIChwID09IE1BUF9GQUlMRUQpCisJCQlnb3RvIHVubG9jazsKKwkJaWYgKF9fYXRleGl0ID09IE5VTEwpIHsKKwkJCW1lbXNldCgmcC0+Zm5zWzBdLCAwLCBzaXplb2YocC0+Zm5zWzBdKSk7CisJCQlwLT5pbmQgPSAxOworCQl9IGVsc2UKKwkJCXAtPmluZCA9IDA7CisJCXAtPm1heCA9IChwZ3NpemUgLSAoKGNoYXIgKikmcC0+Zm5zWzBdIC0gKGNoYXIgKilwKSkgLworCQkgICAgc2l6ZW9mKHAtPmZuc1swXSk7CisJCXAtPm5leHQgPSBfX2F0ZXhpdDsKKwkJX19hdGV4aXQgPSBwOworCX0KKwlmbnAgPSAmcC0+Zm5zW3AtPmluZCsrXTsKKwlmbnAtPmZuX3B0ciA9IGZ1bmM7CisJZm5wLT5mbl9hcmcgPSBhcmc7CisJZm5wLT5mbl9kc28gPSBkc287CisJaWYgKG1wcm90ZWN0KHAsIHBnc2l6ZSwgUFJPVF9SRUFEKSkKKwkJZ290byB1bmxvY2s7CisJcmVzdGFydGxvb3AgPSAxOworCXJldCA9IDA7Cit1bmxvY2s6CisJX0FURVhJVF9VTkxPQ0soKTsKKwlyZXR1cm4gKHJldCk7Cit9CisKKy8qCisgKiBDYWxsIGFsbCBoYW5kbGVycyByZWdpc3RlcmVkIHdpdGggX19jeGFfYXRleGl0KCkgZm9yIHRoZSBzaGFyZWQKKyAqIG9iamVjdCBvd25pbmcgJ2RzbycuCisgKiBOb3RlOiBpZiAnZHNvJyBpcyBOVUxMLCB0aGVuIGFsbCByZW1haW5pbmcgaGFuZGxlcnMgYXJlIGNhbGxlZC4KKyAqLwordm9pZAorX19jeGFfZmluYWxpemUodm9pZCAqZHNvKQoreworCXN0cnVjdCBhdGV4aXQgKnAsICpxOworCXN0cnVjdCBhdGV4aXRfZm4gZm47CisJaW50IG4sIHBnc2l6ZSA9IGdldHBhZ2VzaXplKCk7CisJc3RhdGljIGludCBjYWxsX2RlcHRoOworCisJX0FURVhJVF9MT0NLKCk7CisJY2FsbF9kZXB0aCsrOworCityZXN0YXJ0OgorCXJlc3RhcnRsb29wID0gMDsKKwlmb3IgKHAgPSBfX2F0ZXhpdDsgcCAhPSBOVUxMOyBwID0gcC0+bmV4dCkgeworCQlmb3IgKG4gPSBwLT5pbmQ7IC0tbiA+PSAwOykgeworCQkJaWYgKHAtPmZuc1tuXS5mbl9wdHIgPT0gTlVMTCkKKwkJCQljb250aW51ZTsJLyogYWxyZWFkeSBjYWxsZWQgKi8KKwkJCWlmIChkc28gIT0gTlVMTCAmJiBkc28gIT0gcC0+Zm5zW25dLmZuX2RzbykKKwkJCQljb250aW51ZTsJLyogd3JvbmcgRFNPICovCisKKwkJCS8qCisJCQkgKiBNYXJrIGhhbmRsZXIgYXMgaGF2aW5nIGJlZW4gYWxyZWFkeSBjYWxsZWQgdG8gYXZvaWQKKwkJCSAqIGR1cGVzIGFuZCBsb29wcywgdGhlbiBjYWxsIHRoZSBhcHByb3ByaWF0ZSBmdW5jdGlvbi4KKwkJCSAqLworCQkJZm4gPSBwLT5mbnNbbl07CisJCQlpZiAobXByb3RlY3QocCwgcGdzaXplLCBQUk9UX1JFQUQgfCBQUk9UX1dSSVRFKSA9PSAwKSB7CisJCQkJcC0+Zm5zW25dLmZuX3B0ciA9IE5VTEw7CisJCQkJbXByb3RlY3QocCwgcGdzaXplLCBQUk9UX1JFQUQpOworCQkJfQorCQkJX0FURVhJVF9VTkxPQ0soKTsKKwkJCSgqZm4uZm5fcHRyKShmbi5mbl9hcmcpOworCQkJX0FURVhJVF9MT0NLKCk7CisJCQlpZiAocmVzdGFydGxvb3ApCisJCQkJZ290byByZXN0YXJ0OworCQl9CisJfQorCisJY2FsbF9kZXB0aC0tOworCisJLyoKKwkgKiBJZiBjYWxsZWQgdmlhIGV4aXQoKSwgdW5tYXAgdGhlIHBhZ2VzIHNpbmNlIHdlIGhhdmUgbm93IHJ1bgorCSAqIGFsbCB0aGUgaGFuZGxlcnMuICBXZSBkZWZlciB0aGlzIHVudGlsIGNhbGxkZXB0aCA9PSAwIHNvIHRoYXQKKwkgKiB3ZSBkb24ndCB1bm1hcCB0aGluZ3MgcHJlbWF0dXJlbHkgaWYgY2FsbGVkIHJlY3Vyc2l2ZWx5LgorCSAqLworCWlmIChkc28gPT0gTlVMTCAmJiBjYWxsX2RlcHRoID09IDApIHsKKwkJZm9yIChwID0gX19hdGV4aXQ7IHAgIT0gTlVMTDsgKSB7CisJCQlxID0gcDsKKwkJCXAgPSBwLT5uZXh0OworCQkJbXVubWFwKHEsIHBnc2l6ZSk7CisJCX0KKwkJX19hdGV4aXQgPSBOVUxMOworCX0KKwlfQVRFWElUX1VOTE9DSygpOworCisgIC8qIEJFR0lOIGFuZHJvaWQtY2hhbmdlZDogY2FsbCBfX3VucmVnaXN0ZXJfYXRmb3JrIGlmIGRzbyBpcyBub3QgbnVsbCAqLworICBpZiAoZHNvICE9IE5VTEwpIHsKKyAgICBfX3VucmVnaXN0ZXJfYXRmb3JrKGRzbyk7CisgIH0KKyAgLyogRU5EIGFuZHJvaWQtY2hhbmdlZCAqLworfQorCisvKgorICogUmVnaXN0ZXIgdGhlIGNsZWFudXAgZnVuY3Rpb24KKyAqLwordm9pZAorX19hdGV4aXRfcmVnaXN0ZXJfY2xlYW51cCh2b2lkICgqZnVuYykodm9pZCkpCit7CisJc3RydWN0IGF0ZXhpdCAqcDsKKwlzaXplX3QgcGdzaXplID0gZ2V0cGFnZXNpemUoKTsKKworCWlmIChwZ3NpemUgPCBzaXplb2YoKnApKQorCQlyZXR1cm47CisJX0FURVhJVF9MT0NLKCk7CisJcCA9IF9fYXRleGl0OworCXdoaWxlIChwICE9IE5VTEwgJiYgcC0+bmV4dCAhPSBOVUxMKQorCQlwID0gcC0+bmV4dDsKKwlpZiAocCA9PSBOVUxMKSB7CisJCXAgPSBtbWFwKE5VTEwsIHBnc2l6ZSwgUFJPVF9SRUFEIHwgUFJPVF9XUklURSwKKwkJICAgIE1BUF9BTk9OIHwgTUFQX1BSSVZBVEUsIC0xLCAwKTsKKwkJaWYgKHAgPT0gTUFQX0ZBSUxFRCkKKwkJCWdvdG8gdW5sb2NrOworCQlwLT5pbmQgPSAxOworCQlwLT5tYXggPSAocGdzaXplIC0gKChjaGFyICopJnAtPmZuc1swXSAtIChjaGFyICopcCkpIC8KKwkJICAgIHNpemVvZihwLT5mbnNbMF0pOworCQlwLT5uZXh0ID0gTlVMTDsKKwkJX19hdGV4aXQgPSBwOworCX0gZWxzZSB7CisJCWlmIChtcHJvdGVjdChwLCBwZ3NpemUsIFBST1RfUkVBRCB8IFBST1RfV1JJVEUpKQorCQkJZ290byB1bmxvY2s7CisJfQorCXAtPmZuc1swXS5mbl9wdHIgPSAodm9pZCAoKikodm9pZCAqKSlmdW5jOworCXAtPmZuc1swXS5mbl9hcmcgPSBOVUxMOworCXAtPmZuc1swXS5mbl9kc28gPSBOVUxMOworCW1wcm90ZWN0KHAsIHBnc2l6ZSwgUFJPVF9SRUFEKTsKKwlyZXN0YXJ0bG9vcCA9IDE7Cit1bmxvY2s6CisJX0FURVhJVF9VTkxPQ0soKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvYXRleGl0LmggYi9saWJjL3N0ZGxpYi9hdGV4aXQuaApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9hdGV4aXQuaApyZW5hbWUgdG8gbGliYy9zdGRsaWIvYXRleGl0LmgKZGlmZiAtLWdpdCBhL2xpYmMvc3RkbGliL2V4aXQuYyBiL2xpYmMvc3RkbGliL2V4aXQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMGNlNjc0Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9zdGRsaWIvZXhpdC5jCkBAIC0wLDAgKzEsNjYgQEAKKy8qCSRPcGVuQlNEOiBleGl0LmMsdiAxLjEyIDIwMDcvMDkvMDMgMTQ6NDA6MTYgbWlsbGVydCBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTAgVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvbW1hbi5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorCisvKgorICogVGhpcyB2YXJpYWJsZSBpcyB6ZXJvIHVudGlsIGEgcHJvY2VzcyBoYXMgY3JlYXRlZCBhIHRocmVhZC4KKyAqIEl0IGlzIHVzZWQgdG8gYXZvaWQgY2FsbGluZyBsb2NraW5nIGZ1bmN0aW9ucyBpbiBsaWJjIHdoZW4gdGhleQorICogYXJlIG5vdCByZXF1aXJlZC4gQnkgZGVmYXVsdCwgbGliYyBpcyBpbnRlbmRlZCB0byBiZShjb21lKQorICogdGhyZWFkLXNhZmUsIGJ1dCB3aXRob3V0IGEgKHNpZ25pZmljYW50KSBwZW5hbHR5IHRvIG5vbi10aHJlYWRlZAorICogcHJvY2Vzc2VzLgorICovCitpbnQgICAgIF9faXN0aHJlYWRlZCAgICA9IDA7CisKKy8qIEJFR0lOIGFuZHJvaWQtYWRkZWQ6IHVzaW5nIF9fY3hhX2ZpbmFsaXplIGFuZCBfX2N4YV90aHJlYWRfZmluYWxpemUgKi8KK2V4dGVybiB2b2lkIF9fY3hhX2ZpbmFsaXplKHZvaWQqIGRzb19oYW5kbGUpOworZXh0ZXJuIHZvaWQgX19jeGFfdGhyZWFkX2ZpbmFsaXplKCk7CisvKiBFTkQgYW5kcm9pZC1hZGRlZCAqLworCisvKgorICogRXhpdCwgZmx1c2hpbmcgc3RkaW8gYnVmZmVycyBpZiBuZWNlc3NhcnkuCisgKi8KK3ZvaWQKK2V4aXQoaW50IHN0YXR1cykKK3sKKyAgLyogQkVHSU4gYW5kcm9pZC1hZGRlZDogY2FsbCB0aHJlYWRfbG9jYWwgZC10b3JzICovCisgIF9fY3hhX3RocmVhZF9maW5hbGl6ZSgpOworICAvKiBFTkQgYW5kcm9pZC1hZGRlZCAqLworCisJLyoKKwkgKiBDYWxsIGZ1bmN0aW9ucyByZWdpc3RlcmVkIGJ5IGF0ZXhpdCgpIG9yIF9jeGFfYXRleGl0KCkKKwkgKiAoaW5jbHVkaW5nIHRoZSBzdGRpbyBjbGVhbnVwIHJvdXRpbmUpIGFuZCB0aGVuIF9leGl0KCkuCisJICovCisJX19jeGFfZmluYWxpemUoTlVMTCk7CisJX2V4aXQoc3RhdHVzKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvdG9vbHMvYmlvbmljX3V0aWxzLnB5IGIvbGliYy90b29scy9iaW9uaWNfdXRpbHMucHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGMzOGVmYjUuLjAwMDAwMDAKLS0tIGEvbGliYy90b29scy9iaW9uaWNfdXRpbHMucHkKKysrIC9kZXYvbnVsbApAQCAtMSwxNjUgKzAsMCBAQAotIyBjb21tb24gcHl0aG9uIHV0aWxpdHkgcm91dGluZXMgZm9yIHRoZSBCaW9uaWMgdG9vbCBzY3JpcHRzCi0KLWltcG9ydCBzeXMsIG9zLCBjb21tYW5kcywgc3RyaW5nCi0KLWFsbF9hcmNoZXMgPSBbICJhcm0iLCAiYXJtNjQiLCAibWlwcyIsICJtaXBzNjQiLCAieDg2IiwgIng4Nl82NCIgXQotCi0jIGJhc2ljIGRlYnVnZ2luZyB0cmFjZSBzdXBwb3J0Ci0jIGNhbGwgRF9zZXRsZXZlbCB0byBzZXQgdGhlIHZlcmJvc2l0eSBsZXZlbAotIyBhbmQgRCgpLCBEMigpLCBEMygpLCBENCgpIHRvIGFkZCB0cmFjZXMKLSMKLXZlcmJvc2UgPSAwCi0KLWRlZiBEKG1zZyk6Ci0gICAgZ2xvYmFsIHZlcmJvc2UKLSAgICBpZiB2ZXJib3NlID4gMDoKLSAgICAgICAgcHJpbnQgbXNnCi0KLWRlZiBEMihtc2cpOgotICAgIGdsb2JhbCB2ZXJib3NlCi0gICAgaWYgdmVyYm9zZSA+PSAyOgotICAgICAgICBwcmludCBtc2cKLQotZGVmIEQzKG1zZyk6Ci0gICAgZ2xvYmFsIHZlcmJvc2UKLSAgICBpZiB2ZXJib3NlID49IDM6Ci0gICAgICAgIHByaW50IG1zZwotCi1kZWYgRDQobXNnKToKLSAgICBnbG9iYWwgdmVyYm9zZQotICAgIGlmIHZlcmJvc2UgPj0gNDoKLSAgICAgICAgcHJpbnQgbXNnCi0KLWRlZiBEX3NldGxldmVsKGxldmVsKToKLSAgICBnbG9iYWwgdmVyYm9zZQotICAgIHZlcmJvc2UgPSBsZXZlbAotCi0KLSMgcGFyc2VyIGZvciB0aGUgU1lTQ0FMTFMuVFhUIGZpbGUKLSMKLWNsYXNzIFN5c0NhbGxzVHh0UGFyc2VyOgotICAgIGRlZiBfX2luaXRfXyhzZWxmKToKLSAgICAgICAgc2VsZi5zeXNjYWxscyA9IFtdCi0gICAgICAgIHNlbGYubGluZW5vICAgPSAwCi0KLSAgICBkZWYgRShzZWxmLCBtc2cpOgotICAgICAgICBwcmludCAiJWQ6ICVzIiAlIChzZWxmLmxpbmVubywgbXNnKQotCi0gICAgZGVmIHBhcnNlX2xpbmUoc2VsZiwgbGluZSk6Ci0gICAgICAgICIiIiBwYXJzZSBhIHN5c2NhbGwgc3BlYyBsaW5lLgotCi0gICAgICAgIGxpbmUgcHJvY2Vzc2luZywgZm9ybWF0IGlzCi0gICAgICAgICAgIHJldHVybiB0eXBlICAgIGZ1bmNfbmFtZVt8YWxpYXNfbGlzdF1bOnN5c2NhbGxfbmFtZVs6c29ja2V0Y2FsbF9pZF1dICggW3BhcmFtbGlzdF0gKSBhcmNoaXRlY3R1cmVfbGlzdAotICAgICAgICAiIiIKLSAgICAgICAgcG9zX2xwYXJlbiA9IGxpbmUuZmluZCgnKCcpCi0gICAgICAgIEUgICAgICAgICAgPSBzZWxmLkUKLSAgICAgICAgaWYgcG9zX2xwYXJlbiA8IDA6Ci0gICAgICAgICAgICBFKCJtaXNzaW5nIGxlZnQgcGFyZW50aGVzaXMgaW4gJyVzJyIgJSBsaW5lKQotICAgICAgICAgICAgcmV0dXJuCi0KLSAgICAgICAgcG9zX3JwYXJlbiA9IGxpbmUucmZpbmQoJyknKQotICAgICAgICBpZiBwb3NfcnBhcmVuIDwgMCBvciBwb3NfcnBhcmVuIDw9IHBvc19scGFyZW46Ci0gICAgICAgICAgICBFKCJtaXNzaW5nIG9yIG1pc3BsYWNlZCByaWdodCBwYXJlbnRoZXNpcyBpbiAnJXMnIiAlIGxpbmUpCi0gICAgICAgICAgICByZXR1cm4KLQotICAgICAgICByZXR1cm5fdHlwZSA9IGxpbmVbOnBvc19scGFyZW5dLnN0cmlwKCkuc3BsaXQoKQotICAgICAgICBpZiBsZW4ocmV0dXJuX3R5cGUpIDwgMjoKLSAgICAgICAgICAgIEUoIm1pc3NpbmcgcmV0dXJuIHR5cGUgaW4gJyVzJyIgJSBsaW5lKQotICAgICAgICAgICAgcmV0dXJuCi0KLSAgICAgICAgc3lzY2FsbF9mdW5jID0gcmV0dXJuX3R5cGVbLTFdCi0gICAgICAgIHJldHVybl90eXBlICA9IHN0cmluZy5qb2luKHJldHVybl90eXBlWzotMV0sJyAnKQotICAgICAgICBzb2NrZXRjYWxsX2lkID0gLTEKLQotICAgICAgICBwb3NfY29sb24gPSBzeXNjYWxsX2Z1bmMuZmluZCgnOicpCi0gICAgICAgIGlmIHBvc19jb2xvbiA8IDA6Ci0gICAgICAgICAgICBzeXNjYWxsX25hbWUgPSBzeXNjYWxsX2Z1bmMKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIGlmIHBvc19jb2xvbiA9PSAwIG9yIHBvc19jb2xvbisxID49IGxlbihzeXNjYWxsX2Z1bmMpOgotICAgICAgICAgICAgICAgIEUoIm1pc3BsYWNlZCBjb2xvbiBpbiAnJXMnIiAlIGxpbmUpCi0gICAgICAgICAgICAgICAgcmV0dXJuCi0KLSAgICAgICAgICAgICMgbm93IGZpbmQgaWYgdGhlcmUgaXMgYSBzb2NrZXRjYWxsX2lkIGZvciBhIGRpc3BhdGNoLXR5cGUgc3lzY2FsbAotICAgICAgICAgICAgIyBhZnRlciB0aGUgb3B0aW9uYWwgMm5kIGNvbG9uCi0gICAgICAgICAgICBwb3NfY29sb24yID0gc3lzY2FsbF9mdW5jLmZpbmQoJzonLCBwb3NfY29sb24gKyAxKQotICAgICAgICAgICAgaWYgcG9zX2NvbG9uMiA8IDA6Ci0gICAgICAgICAgICAgICAgc3lzY2FsbF9uYW1lID0gc3lzY2FsbF9mdW5jW3Bvc19jb2xvbisxOl0KLSAgICAgICAgICAgICAgICBzeXNjYWxsX2Z1bmMgPSBzeXNjYWxsX2Z1bmNbOnBvc19jb2xvbl0KLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgaWYgcG9zX2NvbG9uMisxID49IGxlbihzeXNjYWxsX2Z1bmMpOgotICAgICAgICAgICAgICAgICAgICBFKCJtaXNwbGFjZWQgY29sb24yIGluICclcyciICUgbGluZSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuCi0gICAgICAgICAgICAgICAgc3lzY2FsbF9uYW1lID0gc3lzY2FsbF9mdW5jWyhwb3NfY29sb24rMSk6cG9zX2NvbG9uMl0KLSAgICAgICAgICAgICAgICBzb2NrZXRjYWxsX2lkID0gaW50KHN5c2NhbGxfZnVuY1twb3NfY29sb24yKzE6XSkKLSAgICAgICAgICAgICAgICBzeXNjYWxsX2Z1bmMgPSBzeXNjYWxsX2Z1bmNbOnBvc19jb2xvbl0KLQotICAgICAgICBhbGlhc19kZWxpbSA9IHN5c2NhbGxfZnVuYy5maW5kKCd8JykKLSAgICAgICAgaWYgYWxpYXNfZGVsaW0gPiAwOgotICAgICAgICAgICAgYWxpYXNfbGlzdCA9IHN5c2NhbGxfZnVuY1thbGlhc19kZWxpbSsxOl0uc3RyaXAoKQotICAgICAgICAgICAgc3lzY2FsbF9mdW5jID0gc3lzY2FsbF9mdW5jWzphbGlhc19kZWxpbV0KLSAgICAgICAgICAgIGFsaWFzX2RlbGltID0gc3lzY2FsbF9uYW1lLmZpbmQoJ3wnKQotICAgICAgICAgICAgaWYgYWxpYXNfZGVsaW0gPiAwOgotICAgICAgICAgICAgICAgIHN5c2NhbGxfbmFtZSA9IHN5c2NhbGxfbmFtZVs6YWxpYXNfZGVsaW1dCi0gICAgICAgICAgICBzeXNjYWxsX2FsaWFzZXMgPSBzdHJpbmcuc3BsaXQoYWxpYXNfbGlzdCwgJywnKQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgc3lzY2FsbF9hbGlhc2VzID0gW10KLQotICAgICAgICBpZiBwb3NfcnBhcmVuID4gcG9zX2xwYXJlbisxOgotICAgICAgICAgICAgc3lzY2FsbF9wYXJhbXMgPSBsaW5lW3Bvc19scGFyZW4rMTpwb3NfcnBhcmVuXS5zcGxpdCgnLCcpCi0gICAgICAgICAgICBwYXJhbXMgICAgICAgICA9IHN0cmluZy5qb2luKHN5c2NhbGxfcGFyYW1zLCcsJykKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHN5c2NhbGxfcGFyYW1zID0gW10KLSAgICAgICAgICAgIHBhcmFtcyAgICAgICAgID0gInZvaWQiCi0KLSAgICAgICAgdCA9IHsKLSAgICAgICAgICAgICAgIm5hbWUiICAgIDogc3lzY2FsbF9uYW1lLAotICAgICAgICAgICAgICAiZnVuYyIgICAgOiBzeXNjYWxsX2Z1bmMsCi0gICAgICAgICAgICAgICJhbGlhc2VzIiA6IHN5c2NhbGxfYWxpYXNlcywKLSAgICAgICAgICAgICAgInBhcmFtcyIgIDogc3lzY2FsbF9wYXJhbXMsCi0gICAgICAgICAgICAgICJkZWNsIiAgICA6ICIlLTE1cyAgJXMgKCVzKTsiICUgKHJldHVybl90eXBlLCBzeXNjYWxsX2Z1bmMsIHBhcmFtcyksCi0gICAgICAgICAgICAgICJzb2NrZXRjYWxsX2lkIiA6IHNvY2tldGNhbGxfaWQKLSAgICAgICAgfQotCi0gICAgICAgICMgUGFyc2UgdGhlIGFyY2hpdGVjdHVyZSBsaXN0LgotICAgICAgICBhcmNoX2xpc3QgPSBsaW5lW3Bvc19ycGFyZW4rMTpdLnN0cmlwKCkKLSAgICAgICAgaWYgYXJjaF9saXN0ID09ICJhbGwiOgotICAgICAgICAgICAgZm9yIGFyY2ggaW4gYWxsX2FyY2hlczoKLSAgICAgICAgICAgICAgICB0W2FyY2hdID0gVHJ1ZQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgZm9yIGFyY2ggaW4gc3RyaW5nLnNwbGl0KGFyY2hfbGlzdCwgJywnKToKLSAgICAgICAgICAgICAgICBpZiBhcmNoIGluIGFsbF9hcmNoZXM6Ci0gICAgICAgICAgICAgICAgICAgIHRbYXJjaF0gPSBUcnVlCi0gICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgRSgiaW52YWxpZCBzeXNjYWxsIGFyY2hpdGVjdHVyZSAnJXMnIGluICclcyciICUgKGFyY2gsIGxpbmUpKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4KLQotICAgICAgICBzZWxmLnN5c2NhbGxzLmFwcGVuZCh0KQotCi0gICAgICAgIGdsb2JhbCB2ZXJib3NlCi0gICAgICAgIGlmIHZlcmJvc2UgPj0gMjoKLSAgICAgICAgICAgIHByaW50IHQKLQotCi0gICAgZGVmIHBhcnNlX2ZpbGUoc2VsZiwgZmlsZV9wYXRoKToKLSAgICAgICAgRDIoInBhcnNlX2ZpbGU6ICVzIiAlIGZpbGVfcGF0aCkKLSAgICAgICAgZnAgPSBvcGVuKGZpbGVfcGF0aCkKLSAgICAgICAgZm9yIGxpbmUgaW4gZnAueHJlYWRsaW5lcygpOgotICAgICAgICAgICAgc2VsZi5saW5lbm8gKz0gMQotICAgICAgICAgICAgbGluZSA9IGxpbmUuc3RyaXAoKQotICAgICAgICAgICAgaWYgbm90IGxpbmU6IGNvbnRpbnVlCi0gICAgICAgICAgICBpZiBsaW5lWzBdID09ICcjJzogY29udGludWUKLSAgICAgICAgICAgIHNlbGYucGFyc2VfbGluZShsaW5lKQotCi0gICAgICAgIGZwLmNsb3NlKCkKLQotCi1jbGFzcyBTdHJpbmdPdXRwdXQ6Ci0gICAgZGVmIF9faW5pdF9fKHNlbGYpOgotICAgICAgICBzZWxmLmxpbmUgPSAiIgotCi0gICAgZGVmIHdyaXRlKHNlbGYsbXNnKToKLSAgICAgICAgc2VsZi5saW5lICs9IG1zZwotICAgICAgICBEMigid3JpdGUgJyVzJyIgJSBtc2cpCi0KLSAgICBkZWYgZ2V0KHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5saW5lCmRpZmYgLS1naXQgYS9saWJjL3Rvb2xzL2NoZWNrLXN5bWJvbHMtZ2xpYmMucHkgYi9saWJjL3Rvb2xzL2NoZWNrLXN5bWJvbHMtZ2xpYmMucHkKaW5kZXggNThhMTBlMC4uMmMzNTJiMiAxMDA3NTUKLS0tIGEvbGliYy90b29scy9jaGVjay1zeW1ib2xzLWdsaWJjLnB5CisrKyBiL2xpYmMvdG9vbHMvY2hlY2stc3ltYm9scy1nbGliYy5weQpAQCAtMSw2NiArMSw3MyBAQAotIyEvdXNyL2Jpbi9weXRob24KLQorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMgorIworIyBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgJ0xpY2Vuc2UnKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMKKyMgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyMKKyMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorIyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLAorIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorIyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyMKKyMgcHlsaW50OiBkaXNhYmxlPWJhZC1pbmRlbnRhdGlvbixiYWQtY29udGludWF0aW9uCiBpbXBvcnQgZ2xvYgogaW1wb3J0IG9zCiBpbXBvcnQgcmUKLWltcG9ydCBzdHJpbmcKLWltcG9ydCBzdWJwcm9jZXNzCiBpbXBvcnQgc3lzCiAKK2ltcG9ydCBzeW1ib2xzCisKK29ubHlfdW53YW50ZWQgPSBGYWxzZQoraWYgbGVuKHN5cy5hcmd2KSA+IDE6CisgIGlmIHN5cy5hcmd2WzFdIGluICgnLXUnLCAnLS11bndhbnRlZCcpOgorICAgIG9ubHlfdW53YW50ZWQgPSBUcnVlCisKIHRvb2xjaGFpbiA9IG9zLmVudmlyb25bJ0FORFJPSURfVE9PTENIQUlOJ10KIGFyY2ggPSByZS5zdWIocicuKi9saW51eC14ODYvKFteL10rKS8uKicsIHInXDEnLCB0b29sY2hhaW4pCi0KLWRlZiBHZXRTeW1ib2xzRnJvbVNvKHNvX2ZpbGUpOgotICAjIEV4YW1wbGUgcmVhZGVsZiBvdXRwdXQ6Ci0gICMgICAyNjQ6IDAwMDE2MjNjICAgICA0IEZVTkMgICAgR0xPQkFMIERFRkFVTFQgICAgOCBjYWJzZgotICAjICAgMjY2OiAwMDAxNjI0NCAgICAgNCBGVU5DICAgIEdMT0JBTCBERUZBVUxUICAgIDggZHJlbWYKLSAgIyAgIDI2NzogMDAwMTkwMTggICAgIDQgT0JKRUNUICBHTE9CQUwgREVGQVVMVCAgIDExIF9fZmVfZGZsX2VudgotICAjICAgMjY4OiAwMDAwMDAwMCAgICAgMCBGVU5DICAgIEdMT0JBTCBERUZBVUxUICBVTkQgX19hZWFiaV9kY21wbHQKLQotICByID0gcmUuY29tcGlsZShyJyArXGQrOiBbMC05YS1mXSsgK1xkKyAoST9GVU5DfE9CSkVDVCkgK1xTKyArXFMrICtcZCsgKFxTKyknKQotCi0gIHN5bWJvbHMgPSBzZXQoKQotCi0gIGZvciBsaW5lIGluIHN1YnByb2Nlc3MuY2hlY2tfb3V0cHV0KFsncmVhZGVsZicsICctLWR5bi1zeW1zJywgJy1XJywgc29fZmlsZV0pLnNwbGl0KCdcbicpOgotICAgIGlmICcgSElEREVOICcgaW4gbGluZSBvciAnIFVORCAnIGluIGxpbmU6Ci0gICAgICBjb250aW51ZQotICAgIG0gPSByLm1hdGNoKGxpbmUpCi0gICAgaWYgbToKLSAgICAgIHN5bWJvbCA9IG0uZ3JvdXAoMikKLSAgICAgIHN5bWJvbCA9IHJlLnN1YignQC4qJywgJycsIHN5bWJvbCkKLSAgICAgIHN5bWJvbHMuYWRkKHN5bWJvbCkKLQotICByZXR1cm4gc3ltYm9scwotCi1kZWYgR2V0U3ltYm9sc0Zyb21BbmRyb2lkU28oKmZpbGVzKToKLSAgc3ltYm9scyA9IHNldCgpCi0gIGZvciBmIGluIGZpbGVzOgotICAgIHN5bWJvbHMgPSBzeW1ib2xzIHwgR2V0U3ltYm9sc0Zyb21TbygnJXMvc3lzdGVtL2xpYjY0LyVzJyAlIChvcy5lbnZpcm9uWydBTkRST0lEX1BST0RVQ1RfT1VUJ10sIGYpKQotICByZXR1cm4gc3ltYm9scwotCi1kZWYgR2V0U3ltYm9sc0Zyb21TeXN0ZW1TbygqZmlsZXMpOgotICBzeW1ib2xzID0gc2V0KCkKLSAgZm9yIGYgaW4gZmlsZXM6Ci0gICAgZiA9IGdsb2IuZ2xvYignL2xpYi94ODZfNjQtbGludXgtZ251LyVzJyAlIGYpWy0xXQotICAgIHN5bWJvbHMgPSBzeW1ib2xzIHwgR2V0U3ltYm9sc0Zyb21TbyhmKQotICByZXR1cm4gc3ltYm9scworaWYgYXJjaCA9PSAnYWFyY2g2NCc6CisgIGFyY2ggPSAnYXJtNjQnCiAKIGRlZiBNYW5nbGVHbGliY05hbWVUb0Jpb25pYyhuYW1lKToKICAgaWYgbmFtZSBpbiBnbGliY190b19iaW9uaWNfbmFtZXM6CiAgICAgcmV0dXJuIGdsaWJjX3RvX2Jpb25pY19uYW1lc1tuYW1lXQogICByZXR1cm4gbmFtZQogCitkZWYgR2V0TmRrSWdub3JlZChhcmNoKTogICMgcHlsaW50OiBkaXNhYmxlPXJlZGVmaW5lZC1vdXRlci1uYW1lCisgIGlnbm9yZWRfc3ltYm9scyA9IHNldCgpCisgIGZpbGVzID0gZ2xvYi5nbG9iKCclcy9uZGsvYnVpbGQvdG9vbHMvdW53YW50ZWQtc3ltYm9scy8lcy8qJyAlCisgICAgICAgICAgICAgICAgICAgIChvcy5nZXRlbnYoJ0FORFJPSURfQlVJTERfVE9QJyksIGFyY2gpKQorICBmb3IgZiBpbiBmaWxlczoKKyAgICBpZ25vcmVkX3N5bWJvbHMgfD0gc2V0KG9wZW4oZiwgJ3InKS5yZWFkKCkuc3BsaXRsaW5lcygpKQorICByZXR1cm4gaWdub3JlZF9zeW1ib2xzCisKIGdsaWJjX3RvX2Jpb25pY19uYW1lcyA9IHsKICAgJ19fcmVzX2luaXQnOiAncmVzX2luaXQnLAogICAnX19yZXNfbWtxdWVyeSc6ICdyZXNfbWtxdWVyeScsCiAgICdfX3Jlc19xdWVyeSc6ICdyZXNfcXVlcnknLAogICAnX19yZXNfc2VhcmNoJzogJ3Jlc19zZWFyY2gnLAorICAnX194cGdfYmFzZW5hbWUnOiAnX19nbnVfYmFzZW5hbWUnLAogfQogCi1nbGliYyA9IEdldFN5bWJvbHNGcm9tU3lzdGVtU28oJ2xpYmMuc28uKicsICdsaWJydC5zby4qJywgJ2xpYnB0aHJlYWQuc28uKicsICdsaWJyZXNvbHYuc28uKicsICdsaWJtLnNvLionKQotYmlvbmljID0gR2V0U3ltYm9sc0Zyb21BbmRyb2lkU28oJ2xpYmMuc28nLCAnbGlibS5zbycpCitnbGliYyA9IHN5bWJvbHMuR2V0RnJvbVN5c3RlbVNvKFsKKyAgICAnbGliYy5zby4qJywKKyAgICAnbGlicnQuc28uKicsCisgICAgJ2xpYnB0aHJlYWQuc28uKicsCisgICAgJ2xpYnJlc29sdi5zby4qJywKKyAgICAnbGlibS5zby4qJywKKyAgICAnbGlidXRpbC5zby4qJywKK10pCiAKLWdsaWJjID0gbWFwKE1hbmdsZUdsaWJjTmFtZVRvQmlvbmljLCBnbGliYykKK2Jpb25pYyA9IHN5bWJvbHMuR2V0RnJvbUFuZHJvaWRTbyhbJ2xpYmMuc28nLCAnbGlibS5zbyddKQordGhpc19kaXIgPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5yZWFscGF0aChfX2ZpbGVfXykpCitwb3NpeCA9IHN5bWJvbHMuR2V0RnJvbVR4dChvcy5wYXRoLmpvaW4odGhpc19kaXIsICdwb3NpeC0yMDEzLnR4dCcpKQorbmRrX2lnbm9yZWQgPSBHZXROZGtJZ25vcmVkKGFyY2gpCisKK2dsaWJjID0gc2V0KG1hcChNYW5nbGVHbGliY05hbWVUb0Jpb25pYywgZ2xpYmMpKQogCiAjIGJpb25pYyBpbmNsdWRlcyB2YXJpb3VzIEJTRCBzeW1ib2xzIHRvIGVhc2UgcG9ydGluZyBvdGhlciBCU0QtbGljZW5zZWQgY29kZS4KIGJzZF9zdHVmZiA9IHNldChbCkBAIC0xMDAsNiArMTA3LDE2IEBACiAgICdfX2Vycm5vJywKICAgJ19fZmVfZGZsX2VudicsCiAgICdfX2dldF9oX2Vycm5vJywKKyAgJ19fZnBjbGFzc2lmeWQnLAorICAnX19pc2Zpbml0ZScsCisgICdfX2lzZmluaXRlZicsCisgICdfX2lzZmluaXRlbCcsCisgICdfX2lzbm9ybWFsJywKKyAgJ19faXNub3JtYWxmJywKKyAgJ19faXNub3JtYWxsJywKKyAgJ19fc0YnLAorICAnX19wdGhyZWFkX2NsZWFudXBfcG9wJywKKyAgJ19fcHRocmVhZF9jbGVhbnVwX3B1c2gnLAogXSkKICMgYmlvbmljIGV4cG9zZXMgdmFyaW91cyBMaW51eCBmZWF0dXJlcyB0aGF0IGdsaWJjIGRvZXNuJ3QuCiBsaW51eF9zdHVmZiA9IHNldChbCkBAIC0xMzMsMjEgKzE1MCw1MyBAQAogICAnbWtub2RhdCcsCiAgICdzdGF0JywKICAgJ3N0YXQ2NCcsCisgICdvcHRyZXNldCcsCisgICdzaWdzZXRqbXAnLAorXSkKKyMgVGhlc2UgZXhpc3QgaW4gZ2xpYmMsIGJ1dCB1bmRlciBzbGlnaHRseSBkaWZmZXJlbnQgbmFtZXMgKGdlbmVyYWxseSBvbmUgZXh0cmEKKyMgb3Igb25lIGZld2VyIF8pLiBUT0RPOiBjaGVjayBhZ2FpbnN0IGdsaWJjIG5hbWVzLgorbGlicmVzb2x2X3N0dWZmID0gc2V0KFsKKyAgJ19fcmVzX3NlbmRfc2V0cWhvb2snLAorICAnX19yZXNfc2VuZF9zZXRyaG9vaycsCisgICdfcmVzb2x2X2ZsdXNoX2NhY2hlX2Zvcl9uZXQnLAorICAnX3Jlc29sdl9zZXRfbmFtZXNlcnZlcnNfZm9yX25ldCcsCisgICdkbl9leHBhbmQnLAorICAnbnNkaXNwYXRjaCcsCitdKQorIyBJbXBsZW1lbnRhdGlvbiBkZXRhaWxzIHdlIGtub3cgd2UgZXhwb3J0IChhbmQgY2FuJ3QgZ2V0IGF3YXkgZnJvbSkuCitrbm93biA9IHNldChbCisgICdfY3R5cGVfJywKKyAgJ19fbGliY19pbml0JywKIF0pCiAKLXByaW50ICdnbGliYzonCi1mb3Igc3ltYm9sIGluIHNvcnRlZChnbGliYyk6Ci0gIHByaW50IHN5bWJvbAoraWYgbm90IG9ubHlfdW53YW50ZWQ6CisgICNwcmludCAnZ2xpYmM6JworICAjZm9yIHN5bWJvbCBpbiBzb3J0ZWQoZ2xpYmMpOgorICAjICBwcmludCBzeW1ib2wKKyAgI3ByaW50CiAKLXByaW50Ci1wcmludCAnYmlvbmljOicKLWZvciBzeW1ib2wgaW4gc29ydGVkKGJpb25pYyk6Ci0gIHByaW50IHN5bWJvbAorICAjcHJpbnQgJ2Jpb25pYzonCisgICNmb3Igc3ltYm9sIGluIHNvcnRlZChiaW9uaWMpOgorICAjICBwcmludCBzeW1ib2wKKyAgI3ByaW50CiAKLXByaW50Ci1wcmludCAnaW4gYmlvbmljIGJ1dCBub3QgZ2xpYmM6JwotYWxsb3dlZF9zdHVmZiA9IChic2Rfc3R1ZmYgfCBGT1JUSUZZX3N0dWZmIHwgbGludXhfc3R1ZmYgfCBtYWNyb19zdHVmZiB8IHN0ZF9zdHVmZiB8IHdlaXJkX3N0dWZmKQorICBwcmludCAnaW4gZ2xpYmMgKGJ1dCBub3QgcG9zaXgpIGJ1dCBub3QgYmlvbmljOicKKyAgZm9yIHN5bWJvbCBpbiBzb3J0ZWQoKGdsaWJjIC0gcG9zaXgpLmRpZmZlcmVuY2UoYmlvbmljKSk6CisgICAgcHJpbnQgc3ltYm9sCisgIHByaW50CisKKyAgcHJpbnQgJ2luIHBvc2l4IChhbmQgaW1wbGVtZW50ZWQgaW4gZ2xpYmMpIGJ1dCBub3QgYmlvbmljOicKKyAgZm9yIHN5bWJvbCBpbiBzb3J0ZWQoKHBvc2l4LmludGVyc2VjdGlvbihnbGliYykpLmRpZmZlcmVuY2UoYmlvbmljKSk6CisgICAgcHJpbnQgc3ltYm9sCisgIHByaW50CisKKyAgcHJpbnQgJ2luIGJpb25pYyBidXQgbm90IGdsaWJjOicKKworYWxsb3dlZF9zdHVmZiA9IChic2Rfc3R1ZmYgfCBGT1JUSUZZX3N0dWZmIHwgbGludXhfc3R1ZmYgfCBtYWNyb19zdHVmZiB8CisgICAgICAgICAgICAgICAgIHN0ZF9zdHVmZiB8IHdlaXJkX3N0dWZmIHwgbGlicmVzb2x2X3N0dWZmIHwga25vd24pCiBmb3Igc3ltYm9sIGluIHNvcnRlZCgoYmlvbmljIC0gYWxsb3dlZF9zdHVmZikuZGlmZmVyZW5jZShnbGliYykpOgorICBpZiBzeW1ib2wgaW4gbmRrX2lnbm9yZWQ6CisgICAgc3ltYm9sICs9ICcqJwogICBwcmludCBzeW1ib2wKIAogc3lzLmV4aXQoMCkKZGlmZiAtLWdpdCBhL2xpYmMvdG9vbHMvZ2VuZXJhdGUtTk9USUNFLnB5IGIvbGliYy90b29scy9nZW5lcmF0ZS1OT1RJQ0UucHkKaW5kZXggOGNkNzVhMy4uNzliNGVhOSAxMDA3NTUKLS0tIGEvbGliYy90b29scy9nZW5lcmF0ZS1OT1RJQ0UucHkKKysrIGIvbGliYy90b29scy9nZW5lcmF0ZS1OT1RJQ0UucHkKQEAgLTEsNyArMSw3IEBACiAjIS91c3IvYmluL3B5dGhvbgogIyBSdW4gd2l0aCBkaXJlY3RvcnkgYXJndW1lbnRzIGZyb20gYW55IGRpcmVjdG9yeSwgd2l0aCBubyBzcGVjaWFsIHNldHVwIHJlcXVpcmVkLgogIyBPcjoKLSMgZm9yIGkgaW4gbGliYyBsaWJkbCBsaWJtIGxpbmtlciBsaWJzdGRjKysgbGlidGhyZWFkX2RiIDsgZG8gLi9saWJjL3Rvb2xzL2dlbmVyYXRlLU5PVElDRS5weSAkaSA+ICRpL05PVElDRSA7IGRvbmUKKyMgZm9yIGkgaW4gbGliYyBsaWJkbCBsaWJtIGxpbmtlciBsaWJzdGRjKysgOyBkbyAuL2xpYmMvdG9vbHMvZ2VuZXJhdGUtTk9USUNFLnB5ICRpID4gJGkvTk9USUNFIDsgZG9uZQogCiBpbXBvcnQgZnRwbGliCiBpbXBvcnQgaGFzaGxpYgpAQCAtMTIxLDcgKzEyMSw2IEBACiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgY29udGVudCA9IG9wZW4ocGF0aCwgJ3InKS5yZWFkKCkuZGVjb2RlKCd1dGYtOCcpCiAgICAgICAgICAgICBleGNlcHQ6Ci0gICAgICAgICAgICAgICAgIyBUT0RPOiB1cGRhdGUgaGFzaC5oLCBtZDUuYywgYW5kIG1kNS5oOyB1cHN0cmVhbSBpcyBwcm9iYWJseSBVVEYtOCBhbHJlYWR5LgogICAgICAgICAgICAgICAgIHN5cy5zdGRlcnIud3JpdGUoJ3dhcm5pbmc6IGJhZCBVVEYtOCBpbiAlc1xuJyAlIHBhdGgpCiAgICAgICAgICAgICAgICAgY29udGVudCA9IG9wZW4ocGF0aCwgJ3InKS5yZWFkKCkuZGVjb2RlKCdpc28tODg1OS0xJykKIApkaWZmIC0tZ2l0IGEvbGliYy90b29scy9nZW5zeXNjYWxscy5weSBiL2xpYmMvdG9vbHMvZ2Vuc3lzY2FsbHMucHkKaW5kZXggZThlYzYzNi4uNGQwYWZlMiAxMDA3NTUKLS0tIGEvbGliYy90b29scy9nZW5zeXNjYWxscy5weQorKysgYi9saWJjL3Rvb2xzL2dlbnN5c2NhbGxzLnB5CkBAIC00LDIxICs0LDI5IEBACiAjIHRoZSBoZWFkZXIgZmlsZXMgbGlzdGluZyBhbGwgYXZhaWxhYmxlIHN5c3RlbSBjYWxscywgYW5kIHRoZQogIyBtYWtlZmlsZXMgdXNlZCB0byBidWlsZCBhbGwgdGhlIHN0dWJzLgogCitpbXBvcnQgYXRleGl0CiBpbXBvcnQgY29tbWFuZHMKIGltcG9ydCBmaWxlY21wCiBpbXBvcnQgZ2xvYgoraW1wb3J0IGxvZ2dpbmcKIGltcG9ydCBvcy5wYXRoCiBpbXBvcnQgcmUKIGltcG9ydCBzaHV0aWwKIGltcG9ydCBzdGF0CitpbXBvcnQgc3RyaW5nCiBpbXBvcnQgc3lzCitpbXBvcnQgdGVtcGZpbGUKIAotZnJvbSBiaW9uaWNfdXRpbHMgaW1wb3J0ICoKIAotYmlvbmljX2xpYmNfcm9vdCA9IG9zLmVudmlyb25bIkFORFJPSURfQlVJTERfVE9QIl0gKyAiL2Jpb25pYy9saWJjLyIKK2FsbF9hcmNoZXMgPSBbICJhcm0iLCAiYXJtNjQiLCAibWlwcyIsICJtaXBzNjQiLCAieDg2IiwgIng4Nl82NCIgXQorCiAKICMgdGVtcCBkaXJlY3Rvcnkgd2hlcmUgd2Ugc3RvcmUgYWxsIGludGVybWVkaWF0ZSBmaWxlcwotYmlvbmljX3RlbXAgPSAiL3RtcC9iaW9uaWNfZ2Vuc3lzY2FsbHMvIgorYmlvbmljX3RlbXAgPSB0ZW1wZmlsZS5ta2R0ZW1wKHByZWZpeD0iYmlvbmljX2dlbnN5c2NhbGxzIik7CisjIE1ha2Ugc3VyZSB0aGUgZGlyZWN0b3J5IGlzIGRlbGV0ZWQgd2hlbiB0aGUgc2NyaXB0IGV4aXRzLgorYXRleGl0LnJlZ2lzdGVyKHNodXRpbC5ybXRyZWUsIGJpb25pY190ZW1wKQorCitiaW9uaWNfbGliY19yb290ID0gb3MucGF0aC5qb2luKG9zLmVudmlyb25bIkFORFJPSURfQlVJTERfVE9QIl0sICJiaW9uaWMvbGliYyIpCiAKIHdhcm5pbmcgPSAiR2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LiBEbyBub3QgZWRpdC4iCiAKQEAgLTM0LDkgKzQyLDEwIEBACiAKIAogZGVmIGNyZWF0ZV9maWxlKHJlbHBhdGgpOgotICAgIGRpciA9IG9zLnBhdGguZGlybmFtZShiaW9uaWNfdGVtcCArIHJlbHBhdGgpCisgICAgZnVsbF9wYXRoID0gb3MucGF0aC5qb2luKGJpb25pY190ZW1wLCByZWxwYXRoKQorICAgIGRpciA9IG9zLnBhdGguZGlybmFtZShmdWxsX3BhdGgpCiAgICAgbWFrZV9kaXIoZGlyKQotICAgIHJldHVybiBvcGVuKGJpb25pY190ZW1wICsgcmVscGF0aCwgInciKQorICAgIHJldHVybiBvcGVuKGZ1bGxfcGF0aCwgInciKQogCiAKIHN5c2NhbGxfc3R1Yl9oZWFkZXIgPSAiLyogIiArIHdhcm5pbmcgKyAiICovXG4iICsgXApAQCAtNDcsMTIgKzU2LDYgQEAKICIiIgogCiAKLWZ1bmN0aW9uX2FsaWFzID0gIiIiCi0gICAgLmdsb2JsICUoYWxpYXMpcwotICAgIC5lcXUgJShhbGlhcylzLCAlKGZ1bmMpcwotIiIiCi0KLQogIwogIyBBUk0gYXNzZW1ibGVyIHRlbXBsYXRlcyBmb3IgZWFjaCBzeXNjYWxsIHN0dWIKICMKQEAgLTI2NSw3ICsyNjgsNyBAQAogIyBUaGlzIGxldHMgdXMgc3VwcG9ydCByZWd1bGFyIHN5c3RlbSBjYWxscyBsaWtlIF9fTlJfd3JpdGUgYW5kIGFsc28gd2VpcmQKICMgb25lcyBsaWtlIF9fQVJNX05SX2NhY2hlZmx1c2gsIHdoZXJlIHRoZSBOUiBkb2Vzbid0IGNvbWUgYXQgdGhlIHN0YXJ0LgogZGVmIG1ha2VfX05SX25hbWUobmFtZSk6Ci0gICAgaWYgbmFtZS5zdGFydHN3aXRoKCJfXyIpOgorICAgIGlmIG5hbWUuc3RhcnRzd2l0aCgiX19BUk1fTlJfIik6CiAgICAgICAgIHJldHVybiBuYW1lCiAgICAgZWxzZToKICAgICAgICAgcmV0dXJuICJfX05SXyVzIiAlIChuYW1lKQpAQCAtMjc1LDEwICsyNzgsMTEgQEAKICAgICAjIEFkZCBhbnkgYWxpYXNlcyBmb3IgdGhpcyBzeXNjYWxsLgogICAgIGFsaWFzZXMgPSBzeXNjYWxsWyJhbGlhc2VzIl0KICAgICBmb3IgYWxpYXMgaW4gYWxpYXNlczoKLSAgICAgICAgc3R1YiArPSBmdW5jdGlvbl9hbGlhcyAlIHsgImZ1bmMiIDogc3lzY2FsbFsiZnVuYyJdLCAiYWxpYXMiIDogYWxpYXMgfQorICAgICAgICBzdHViICs9ICJcbkFMSUFTX1NZTUJPTCglcywgJXMpXG4iICUgKGFsaWFzLCBzeXNjYWxsWyJmdW5jIl0pCiAKLSAgICAjIFVzZSBoaWRkZW4gdmlzaWJpbGl0eSBmb3IgYW55IGZ1bmN0aW9ucyBiZWdpbm5pbmcgd2l0aCB1bmRlcnNjb3Jlcy4KLSAgICBpZiBwb2ludGVyX2xlbmd0aCA9PSA2NCBhbmQgc3lzY2FsbFsiZnVuYyJdLnN0YXJ0c3dpdGgoIl9fIik6CisgICAgIyBVc2UgaGlkZGVuIHZpc2liaWxpdHkgb24gTFA2NCBmb3IgYW55IGZ1bmN0aW9ucyBiZWdpbm5pbmcgd2l0aCB1bmRlcnNjb3Jlcy4KKyAgICAjIEZvcmNlIGhpZGRlbiB2aXNpYmlsaXR5IGZvciBhbnkgZnVuY3Rpb25zIHdoaWNoIGJlZ2luIHdpdGggMyB1bmRlcnNjb3JlcworICAgIGlmIChwb2ludGVyX2xlbmd0aCA9PSA2NCBhbmQgc3lzY2FsbFsiZnVuYyJdLnN0YXJ0c3dpdGgoIl9fIikpIG9yIHN5c2NhbGxbImZ1bmMiXS5zdGFydHN3aXRoKCJfX18iKToKICAgICAgICAgc3R1YiArPSAnLmhpZGRlbiAnICsgc3lzY2FsbFsiZnVuYyJdICsgJ1xuJwogCiAgICAgcmV0dXJuIHN0dWIKQEAgLTM4MCw2ICszODQsMTIwIEBACiAgICAgcmV0dXJuIHJlc3VsdAogCiAKK2NsYXNzIFN5c0NhbGxzVHh0UGFyc2VyOgorICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgc2VsZi5zeXNjYWxscyA9IFtdCisgICAgICAgIHNlbGYubGluZW5vICAgPSAwCisKKyAgICBkZWYgRShzZWxmLCBtc2cpOgorICAgICAgICBwcmludCAiJWQ6ICVzIiAlIChzZWxmLmxpbmVubywgbXNnKQorCisgICAgZGVmIHBhcnNlX2xpbmUoc2VsZiwgbGluZSk6CisgICAgICAgICIiIiBwYXJzZSBhIHN5c2NhbGwgc3BlYyBsaW5lLgorCisgICAgICAgIGxpbmUgcHJvY2Vzc2luZywgZm9ybWF0IGlzCisgICAgICAgICAgIHJldHVybiB0eXBlICAgIGZ1bmNfbmFtZVt8YWxpYXNfbGlzdF1bOnN5c2NhbGxfbmFtZVs6c29ja2V0Y2FsbF9pZF1dICggW3BhcmFtbGlzdF0gKSBhcmNoaXRlY3R1cmVfbGlzdAorICAgICAgICAiIiIKKyAgICAgICAgcG9zX2xwYXJlbiA9IGxpbmUuZmluZCgnKCcpCisgICAgICAgIEUgICAgICAgICAgPSBzZWxmLkUKKyAgICAgICAgaWYgcG9zX2xwYXJlbiA8IDA6CisgICAgICAgICAgICBFKCJtaXNzaW5nIGxlZnQgcGFyZW50aGVzaXMgaW4gJyVzJyIgJSBsaW5lKQorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgcG9zX3JwYXJlbiA9IGxpbmUucmZpbmQoJyknKQorICAgICAgICBpZiBwb3NfcnBhcmVuIDwgMCBvciBwb3NfcnBhcmVuIDw9IHBvc19scGFyZW46CisgICAgICAgICAgICBFKCJtaXNzaW5nIG9yIG1pc3BsYWNlZCByaWdodCBwYXJlbnRoZXNpcyBpbiAnJXMnIiAlIGxpbmUpCisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICByZXR1cm5fdHlwZSA9IGxpbmVbOnBvc19scGFyZW5dLnN0cmlwKCkuc3BsaXQoKQorICAgICAgICBpZiBsZW4ocmV0dXJuX3R5cGUpIDwgMjoKKyAgICAgICAgICAgIEUoIm1pc3NpbmcgcmV0dXJuIHR5cGUgaW4gJyVzJyIgJSBsaW5lKQorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgc3lzY2FsbF9mdW5jID0gcmV0dXJuX3R5cGVbLTFdCisgICAgICAgIHJldHVybl90eXBlICA9IHN0cmluZy5qb2luKHJldHVybl90eXBlWzotMV0sJyAnKQorICAgICAgICBzb2NrZXRjYWxsX2lkID0gLTEKKworICAgICAgICBwb3NfY29sb24gPSBzeXNjYWxsX2Z1bmMuZmluZCgnOicpCisgICAgICAgIGlmIHBvc19jb2xvbiA8IDA6CisgICAgICAgICAgICBzeXNjYWxsX25hbWUgPSBzeXNjYWxsX2Z1bmMKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIHBvc19jb2xvbiA9PSAwIG9yIHBvc19jb2xvbisxID49IGxlbihzeXNjYWxsX2Z1bmMpOgorICAgICAgICAgICAgICAgIEUoIm1pc3BsYWNlZCBjb2xvbiBpbiAnJXMnIiAlIGxpbmUpCisgICAgICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgICAgICMgbm93IGZpbmQgaWYgdGhlcmUgaXMgYSBzb2NrZXRjYWxsX2lkIGZvciBhIGRpc3BhdGNoLXR5cGUgc3lzY2FsbAorICAgICAgICAgICAgIyBhZnRlciB0aGUgb3B0aW9uYWwgMm5kIGNvbG9uCisgICAgICAgICAgICBwb3NfY29sb24yID0gc3lzY2FsbF9mdW5jLmZpbmQoJzonLCBwb3NfY29sb24gKyAxKQorICAgICAgICAgICAgaWYgcG9zX2NvbG9uMiA8IDA6CisgICAgICAgICAgICAgICAgc3lzY2FsbF9uYW1lID0gc3lzY2FsbF9mdW5jW3Bvc19jb2xvbisxOl0KKyAgICAgICAgICAgICAgICBzeXNjYWxsX2Z1bmMgPSBzeXNjYWxsX2Z1bmNbOnBvc19jb2xvbl0KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgaWYgcG9zX2NvbG9uMisxID49IGxlbihzeXNjYWxsX2Z1bmMpOgorICAgICAgICAgICAgICAgICAgICBFKCJtaXNwbGFjZWQgY29sb24yIGluICclcyciICUgbGluZSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuCisgICAgICAgICAgICAgICAgc3lzY2FsbF9uYW1lID0gc3lzY2FsbF9mdW5jWyhwb3NfY29sb24rMSk6cG9zX2NvbG9uMl0KKyAgICAgICAgICAgICAgICBzb2NrZXRjYWxsX2lkID0gaW50KHN5c2NhbGxfZnVuY1twb3NfY29sb24yKzE6XSkKKyAgICAgICAgICAgICAgICBzeXNjYWxsX2Z1bmMgPSBzeXNjYWxsX2Z1bmNbOnBvc19jb2xvbl0KKworICAgICAgICBhbGlhc19kZWxpbSA9IHN5c2NhbGxfZnVuYy5maW5kKCd8JykKKyAgICAgICAgaWYgYWxpYXNfZGVsaW0gPiAwOgorICAgICAgICAgICAgYWxpYXNfbGlzdCA9IHN5c2NhbGxfZnVuY1thbGlhc19kZWxpbSsxOl0uc3RyaXAoKQorICAgICAgICAgICAgc3lzY2FsbF9mdW5jID0gc3lzY2FsbF9mdW5jWzphbGlhc19kZWxpbV0KKyAgICAgICAgICAgIGFsaWFzX2RlbGltID0gc3lzY2FsbF9uYW1lLmZpbmQoJ3wnKQorICAgICAgICAgICAgaWYgYWxpYXNfZGVsaW0gPiAwOgorICAgICAgICAgICAgICAgIHN5c2NhbGxfbmFtZSA9IHN5c2NhbGxfbmFtZVs6YWxpYXNfZGVsaW1dCisgICAgICAgICAgICBzeXNjYWxsX2FsaWFzZXMgPSBzdHJpbmcuc3BsaXQoYWxpYXNfbGlzdCwgJywnKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc3lzY2FsbF9hbGlhc2VzID0gW10KKworICAgICAgICBpZiBwb3NfcnBhcmVuID4gcG9zX2xwYXJlbisxOgorICAgICAgICAgICAgc3lzY2FsbF9wYXJhbXMgPSBsaW5lW3Bvc19scGFyZW4rMTpwb3NfcnBhcmVuXS5zcGxpdCgnLCcpCisgICAgICAgICAgICBwYXJhbXMgICAgICAgICA9IHN0cmluZy5qb2luKHN5c2NhbGxfcGFyYW1zLCcsJykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHN5c2NhbGxfcGFyYW1zID0gW10KKyAgICAgICAgICAgIHBhcmFtcyAgICAgICAgID0gInZvaWQiCisKKyAgICAgICAgdCA9IHsKKyAgICAgICAgICAgICAgIm5hbWUiICAgIDogc3lzY2FsbF9uYW1lLAorICAgICAgICAgICAgICAiZnVuYyIgICAgOiBzeXNjYWxsX2Z1bmMsCisgICAgICAgICAgICAgICJhbGlhc2VzIiA6IHN5c2NhbGxfYWxpYXNlcywKKyAgICAgICAgICAgICAgInBhcmFtcyIgIDogc3lzY2FsbF9wYXJhbXMsCisgICAgICAgICAgICAgICJkZWNsIiAgICA6ICIlLTE1cyAgJXMgKCVzKTsiICUgKHJldHVybl90eXBlLCBzeXNjYWxsX2Z1bmMsIHBhcmFtcyksCisgICAgICAgICAgICAgICJzb2NrZXRjYWxsX2lkIiA6IHNvY2tldGNhbGxfaWQKKyAgICAgICAgfQorCisgICAgICAgICMgUGFyc2UgdGhlIGFyY2hpdGVjdHVyZSBsaXN0LgorICAgICAgICBhcmNoX2xpc3QgPSBsaW5lW3Bvc19ycGFyZW4rMTpdLnN0cmlwKCkKKyAgICAgICAgaWYgYXJjaF9saXN0ID09ICJhbGwiOgorICAgICAgICAgICAgZm9yIGFyY2ggaW4gYWxsX2FyY2hlczoKKyAgICAgICAgICAgICAgICB0W2FyY2hdID0gVHJ1ZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZm9yIGFyY2ggaW4gc3RyaW5nLnNwbGl0KGFyY2hfbGlzdCwgJywnKToKKyAgICAgICAgICAgICAgICBpZiBhcmNoIGluIGFsbF9hcmNoZXM6CisgICAgICAgICAgICAgICAgICAgIHRbYXJjaF0gPSBUcnVlCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgRSgiaW52YWxpZCBzeXNjYWxsIGFyY2hpdGVjdHVyZSAnJXMnIGluICclcyciICUgKGFyY2gsIGxpbmUpKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBzZWxmLnN5c2NhbGxzLmFwcGVuZCh0KQorCisgICAgICAgIGxvZ2dpbmcuZGVidWcodCkKKworCisgICAgZGVmIHBhcnNlX2ZpbGUoc2VsZiwgZmlsZV9wYXRoKToKKyAgICAgICAgbG9nZ2luZy5kZWJ1ZygicGFyc2VfZmlsZTogJXMiICUgZmlsZV9wYXRoKQorICAgICAgICBmcCA9IG9wZW4oZmlsZV9wYXRoKQorICAgICAgICBmb3IgbGluZSBpbiBmcC54cmVhZGxpbmVzKCk6CisgICAgICAgICAgICBzZWxmLmxpbmVubyArPSAxCisgICAgICAgICAgICBsaW5lID0gbGluZS5zdHJpcCgpCisgICAgICAgICAgICBpZiBub3QgbGluZTogY29udGludWUKKyAgICAgICAgICAgIGlmIGxpbmVbMF0gPT0gJyMnOiBjb250aW51ZQorICAgICAgICAgICAgc2VsZi5wYXJzZV9saW5lKGxpbmUpCisKKyAgICAgICAgZnAuY2xvc2UoKQorCisKIGNsYXNzIFN0YXRlOgogICAgIGRlZiBfX2luaXRfXyhzZWxmKToKICAgICAgICAgc2VsZi5vbGRfc3R1YnMgPSBbXQpAQCAtNDM3LDIyICs1NTUsMjIgQEAKICAgICBkZWYgZ2VuX2dsaWJjX3N5c2NhbGxzX2goc2VsZik6CiAgICAgICAgICMgVE9ETzogZ2VuZXJhdGUgYSBzZXBhcmF0ZSBmaWxlIGZvciBlYWNoIGFyY2hpdGVjdHVyZSwgbGlrZSBnbGliYydzIGJpdHMvc3lzY2FsbC5oLgogICAgICAgICBnbGliY19zeXNjYWxsc19oX3BhdGggPSAiaW5jbHVkZS9zeXMvZ2xpYmMtc3lzY2FsbHMuaCIKLSAgICAgICAgRCgiZ2VuZXJhdGluZyAiICsgZ2xpYmNfc3lzY2FsbHNfaF9wYXRoKQorICAgICAgICBsb2dnaW5nLmluZm8oImdlbmVyYXRpbmcgIiArIGdsaWJjX3N5c2NhbGxzX2hfcGF0aCkKICAgICAgICAgZ2xpYmNfZnAgPSBjcmVhdGVfZmlsZShnbGliY19zeXNjYWxsc19oX3BhdGgpCiAgICAgICAgIGdsaWJjX2ZwLndyaXRlKCIvKiAlcyAqL1xuIiAlIHdhcm5pbmcpCiAgICAgICAgIGdsaWJjX2ZwLndyaXRlKCIjaWZuZGVmIF9CSU9OSUNfR0xJQkNfU1lTQ0FMTFNfSF9cbiIpCiAgICAgICAgIGdsaWJjX2ZwLndyaXRlKCIjZGVmaW5lIF9CSU9OSUNfR0xJQkNfU1lTQ0FMTFNfSF9cbiIpCiAKICAgICAgICAgZ2xpYmNfZnAud3JpdGUoIiNpZiBkZWZpbmVkKF9fYWFyY2g2NF9fKVxuIikKLSAgICAgICAgc2VsZi5zY2FuX2xpbnV4X3VuaXN0ZF9oKGdsaWJjX2ZwLCBiaW9uaWNfbGliY19yb290ICsgIi9rZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy91bmlzdGQuaCIpCisgICAgICAgIHNlbGYuc2Nhbl9saW51eF91bmlzdGRfaChnbGliY19mcCwgb3MucGF0aC5qb2luKGJpb25pY19saWJjX3Jvb3QsICJrZXJuZWwvdWFwaS9hc20tZ2VuZXJpYy91bmlzdGQuaCIpKQogICAgICAgICBnbGliY19mcC53cml0ZSgiI2VsaWYgZGVmaW5lZChfX2FybV9fKVxuIikKLSAgICAgICAgc2VsZi5zY2FuX2xpbnV4X3VuaXN0ZF9oKGdsaWJjX2ZwLCBiaW9uaWNfbGliY19yb290ICsgIi9rZXJuZWwvdWFwaS9hc20tYXJtL2FzbS91bmlzdGQuaCIpCisgICAgICAgIHNlbGYuc2Nhbl9saW51eF91bmlzdGRfaChnbGliY19mcCwgb3MucGF0aC5qb2luKGJpb25pY19saWJjX3Jvb3QsICJrZXJuZWwvdWFwaS9hc20tYXJtL2FzbS91bmlzdGQuaCIpKQogICAgICAgICBnbGliY19mcC53cml0ZSgiI2VsaWYgZGVmaW5lZChfX21pcHNfXylcbiIpCi0gICAgICAgIHNlbGYuc2Nhbl9saW51eF91bmlzdGRfaChnbGliY19mcCwgYmlvbmljX2xpYmNfcm9vdCArICIva2VybmVsL3VhcGkvYXNtLW1pcHMvYXNtL3VuaXN0ZC5oIikKKyAgICAgICAgc2VsZi5zY2FuX2xpbnV4X3VuaXN0ZF9oKGdsaWJjX2ZwLCBvcy5wYXRoLmpvaW4oYmlvbmljX2xpYmNfcm9vdCwgImtlcm5lbC91YXBpL2FzbS1taXBzL2FzbS91bmlzdGQuaCIpKQogICAgICAgICBnbGliY19mcC53cml0ZSgiI2VsaWYgZGVmaW5lZChfX2kzODZfXylcbiIpCi0gICAgICAgIHNlbGYuc2Nhbl9saW51eF91bmlzdGRfaChnbGliY19mcCwgYmlvbmljX2xpYmNfcm9vdCArICIva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdW5pc3RkXzMyLmgiKQorICAgICAgICBzZWxmLnNjYW5fbGludXhfdW5pc3RkX2goZ2xpYmNfZnAsIG9zLnBhdGguam9pbihiaW9uaWNfbGliY19yb290LCAia2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdW5pc3RkXzMyLmgiKSkKICAgICAgICAgZ2xpYmNfZnAud3JpdGUoIiNlbGlmIGRlZmluZWQoX194ODZfNjRfXylcbiIpCi0gICAgICAgIHNlbGYuc2Nhbl9saW51eF91bmlzdGRfaChnbGliY19mcCwgYmlvbmljX2xpYmNfcm9vdCArICIva2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdW5pc3RkXzY0LmgiKQorICAgICAgICBzZWxmLnNjYW5fbGludXhfdW5pc3RkX2goZ2xpYmNfZnAsIG9zLnBhdGguam9pbihiaW9uaWNfbGliY19yb290LCAia2VybmVsL3VhcGkvYXNtLXg4Ni9hc20vdW5pc3RkXzY0LmgiKSkKICAgICAgICAgZ2xpYmNfZnAud3JpdGUoIiNlbmRpZlxuIikKIAogICAgICAgICBnbGliY19mcC53cml0ZSgiI2VuZGlmIC8qIF9CSU9OSUNfR0xJQkNfU1lTQ0FMTFNfSF8gKi9cbiIpCkBAIC00NjYsNyArNTg0LDcgQEAKICAgICAgICAgICAgIGZvciBhcmNoIGluIGFsbF9hcmNoZXM6CiAgICAgICAgICAgICAgICAgaWYgc3lzY2FsbC5oYXNfa2V5KCJhc20tJXMiICUgYXJjaCk6CiAgICAgICAgICAgICAgICAgICAgIGZpbGVuYW1lID0gImFyY2gtJXMvc3lzY2FsbHMvJXMuUyIgJSAoYXJjaCwgc3lzY2FsbFsiZnVuYyJdKQotICAgICAgICAgICAgICAgICAgICBEMigiPj4+IGdlbmVyYXRpbmcgIiArIGZpbGVuYW1lKQorICAgICAgICAgICAgICAgICAgICBsb2dnaW5nLmluZm8oIj4+PiBnZW5lcmF0aW5nICIgKyBmaWxlbmFtZSkKICAgICAgICAgICAgICAgICAgICAgZnAgPSBjcmVhdGVfZmlsZShmaWxlbmFtZSkKICAgICAgICAgICAgICAgICAgICAgZnAud3JpdGUoc3lzY2FsbFsiYXNtLSVzIiAlIGFyY2hdKQogICAgICAgICAgICAgICAgICAgICBmcC5jbG9zZSgpCkBAIC00NzQsNDggKzU5Miw0OSBAQAogCiAKICAgICBkZWYgcmVnZW5lcmF0ZShzZWxmKToKLSAgICAgICAgRCgic2Nhbm5pbmcgZm9yIGV4aXN0aW5nIGFyY2hpdGVjdHVyZS1zcGVjaWZpYyBzdHViIGZpbGVzLi4uIikKLQotICAgICAgICBiaW9uaWNfbGliY19yb290X2xlbiA9IGxlbihiaW9uaWNfbGliY19yb290KQorICAgICAgICBsb2dnaW5nLmluZm8oInNjYW5uaW5nIGZvciBleGlzdGluZyBhcmNoaXRlY3R1cmUtc3BlY2lmaWMgc3R1YiBmaWxlcy4uLiIpCiAKICAgICAgICAgZm9yIGFyY2ggaW4gYWxsX2FyY2hlczoKLSAgICAgICAgICAgIGFyY2hfcGF0aCA9IGJpb25pY19saWJjX3Jvb3QgKyAiYXJjaC0iICsgYXJjaAotICAgICAgICAgICAgRCgic2Nhbm5pbmcgIiArIGFyY2hfcGF0aCkKLSAgICAgICAgICAgIGZpbGVzID0gZ2xvYi5nbG9iKGFyY2hfcGF0aCArICIvc3lzY2FsbHMvKi5TIikKLSAgICAgICAgICAgIGZvciBmIGluIGZpbGVzOgotICAgICAgICAgICAgICAgIHNlbGYub2xkX3N0dWJzLmFwcGVuZChmW2Jpb25pY19saWJjX3Jvb3RfbGVuOl0pCisgICAgICAgICAgICBhcmNoX2RpciA9ICJhcmNoLSIgKyBhcmNoCisgICAgICAgICAgICBsb2dnaW5nLmluZm8oInNjYW5uaW5nICIgKyBvcy5wYXRoLmpvaW4oYmlvbmljX2xpYmNfcm9vdCwgYXJjaF9kaXIpKQorICAgICAgICAgICAgcmVsX3BhdGggPSBvcy5wYXRoLmpvaW4oYXJjaF9kaXIsICJzeXNjYWxscyIpCisgICAgICAgICAgICBmb3IgZmlsZSBpbiBvcy5saXN0ZGlyKG9zLnBhdGguam9pbihiaW9uaWNfbGliY19yb290LCByZWxfcGF0aCkpOgorICAgICAgICAgICAgICAgIGlmIGZpbGUuZW5kc3dpdGgoIi5TIik6CisgICAgICAgICAgICAgICAgICBzZWxmLm9sZF9zdHVicy5hcHBlbmQob3MucGF0aC5qb2luKHJlbF9wYXRoLCBmaWxlKSkKIAotICAgICAgICBEKCJmb3VuZCAlZCBzdHViIGZpbGVzIiAlIGxlbihzZWxmLm9sZF9zdHVicykpCisgICAgICAgIGxvZ2dpbmcuaW5mbygiZm91bmQgJWQgc3R1YiBmaWxlcyIgJSBsZW4oc2VsZi5vbGRfc3R1YnMpKQogCiAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhiaW9uaWNfdGVtcCk6Ci0gICAgICAgICAgICBEKCJjcmVhdGluZyAlcy4uLiIgJSBiaW9uaWNfdGVtcCkKKyAgICAgICAgICAgIGxvZ2dpbmcuaW5mbygiY3JlYXRpbmcgJXMuLi4iICUgYmlvbmljX3RlbXApCiAgICAgICAgICAgICBtYWtlX2RpcihiaW9uaWNfdGVtcCkKIAotICAgICAgICBEKCJyZS1nZW5lcmF0aW5nIHN0dWJzIGFuZCBzdXBwb3J0IGZpbGVzLi4uIikKKyAgICAgICAgbG9nZ2luZy5pbmZvKCJyZS1nZW5lcmF0aW5nIHN0dWJzIGFuZCBzdXBwb3J0IGZpbGVzLi4uIikKIAogICAgICAgICBzZWxmLmdlbl9nbGliY19zeXNjYWxsc19oKCkKICAgICAgICAgc2VsZi5nZW5fc3lzY2FsbF9zdHVicygpCiAKLSAgICAgICAgRCgiY29tcGFyaW5nIGZpbGVzLi4uIikKKyAgICAgICAgbG9nZ2luZy5pbmZvKCJjb21wYXJpbmcgZmlsZXMuLi4iKQogICAgICAgICBhZGRzICAgID0gW10KICAgICAgICAgZWRpdHMgICA9IFtdCiAKICAgICAgICAgZm9yIHN0dWIgaW4gc2VsZi5uZXdfc3R1YnMgKyBzZWxmLm90aGVyX2ZpbGVzOgotICAgICAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKGJpb25pY19saWJjX3Jvb3QgKyBzdHViKToKKyAgICAgICAgICAgIHRtcF9maWxlID0gb3MucGF0aC5qb2luKGJpb25pY190ZW1wLCBzdHViKQorICAgICAgICAgICAgbGliY19maWxlID0gb3MucGF0aC5qb2luKGJpb25pY19saWJjX3Jvb3QsIHN0dWIpCisgICAgICAgICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMobGliY19maWxlKToKICAgICAgICAgICAgICAgICAjIG5ldyBmaWxlLCBnaXQgYWRkIGl0Ci0gICAgICAgICAgICAgICAgRCgibmV3IGZpbGU6ICAgICAiICsgc3R1YikKLSAgICAgICAgICAgICAgICBhZGRzLmFwcGVuZChiaW9uaWNfbGliY19yb290ICsgc3R1YikKLSAgICAgICAgICAgICAgICBzaHV0aWwuY29weWZpbGUoYmlvbmljX3RlbXAgKyBzdHViLCBiaW9uaWNfbGliY19yb290ICsgc3R1YikKKyAgICAgICAgICAgICAgICBsb2dnaW5nLmluZm8oIm5ldyBmaWxlOiAgICAgIiArIHN0dWIpCisgICAgICAgICAgICAgICAgYWRkcy5hcHBlbmQobGliY19maWxlKQorICAgICAgICAgICAgICAgIHNodXRpbC5jb3B5ZmlsZSh0bXBfZmlsZSwgbGliY19maWxlKQogCi0gICAgICAgICAgICBlbGlmIG5vdCBmaWxlY21wLmNtcChiaW9uaWNfdGVtcCArIHN0dWIsIGJpb25pY19saWJjX3Jvb3QgKyBzdHViKToKLSAgICAgICAgICAgICAgICBEKCJjaGFuZ2VkIGZpbGU6ICIgKyBzdHViKQorICAgICAgICAgICAgZWxpZiBub3QgZmlsZWNtcC5jbXAodG1wX2ZpbGUsIGxpYmNfZmlsZSk6CisgICAgICAgICAgICAgICAgbG9nZ2luZy5pbmZvKCJjaGFuZ2VkIGZpbGU6ICIgKyBzdHViKQogICAgICAgICAgICAgICAgIGVkaXRzLmFwcGVuZChzdHViKQogCiAgICAgICAgIGRlbGV0ZXMgPSBbXQogICAgICAgICBmb3Igc3R1YiBpbiBzZWxmLm9sZF9zdHViczoKICAgICAgICAgICAgIGlmIG5vdCBzdHViIGluIHNlbGYubmV3X3N0dWJzOgotICAgICAgICAgICAgICAgIEQoImRlbGV0ZWQgZmlsZTogIiArIHN0dWIpCi0gICAgICAgICAgICAgICAgZGVsZXRlcy5hcHBlbmQoYmlvbmljX2xpYmNfcm9vdCArIHN0dWIpCisgICAgICAgICAgICAgICAgbG9nZ2luZy5pbmZvKCJkZWxldGVkIGZpbGU6ICIgKyBzdHViKQorICAgICAgICAgICAgICAgIGRlbGV0ZXMuYXBwZW5kKG9zLnBhdGguam9pbihiaW9uaWNfbGliY19yb290LCBzdHViKSkKIAogICAgICAgICBpZiBub3QgRFJZX1JVTjoKICAgICAgICAgICAgIGlmIGFkZHM6CkBAIC01MjQsMTggKzY0MywxOSBAQAogICAgICAgICAgICAgICAgIGNvbW1hbmRzLmdldG91dHB1dCgiZ2l0IHJtICIgKyAiICIuam9pbihkZWxldGVzKSkKICAgICAgICAgICAgIGlmIGVkaXRzOgogICAgICAgICAgICAgICAgIGZvciBmaWxlIGluIGVkaXRzOgotICAgICAgICAgICAgICAgICAgICBzaHV0aWwuY29weWZpbGUoYmlvbmljX3RlbXAgKyBmaWxlLCBiaW9uaWNfbGliY19yb290ICsgZmlsZSkKLSAgICAgICAgICAgICAgICBjb21tYW5kcy5nZXRvdXRwdXQoImdpdCBhZGQgIiArICIgIi5qb2luKChiaW9uaWNfbGliY19yb290ICsgZmlsZSkgZm9yIGZpbGUgaW4gZWRpdHMpKQorICAgICAgICAgICAgICAgICAgICBzaHV0aWwuY29weWZpbGUob3MucGF0aC5qb2luKGJpb25pY190ZW1wLCBmaWxlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbihiaW9uaWNfbGliY19yb290LCBmaWxlKSkKKyAgICAgICAgICAgICAgICBjb21tYW5kcy5nZXRvdXRwdXQoImdpdCBhZGQgIiArICIgIi5qb2luKChvcy5wYXRoLmpvaW4oYmlvbmljX2xpYmNfcm9vdCwgZmlsZSkpIGZvciBmaWxlIGluIGVkaXRzKSkKIAotICAgICAgICAgICAgY29tbWFuZHMuZ2V0b3V0cHV0KCJnaXQgYWRkICVzJXMiICUgKGJpb25pY19saWJjX3Jvb3QsIlNZU0NBTExTLlRYVCIpKQorICAgICAgICAgICAgY29tbWFuZHMuZ2V0b3V0cHV0KCJnaXQgYWRkICVzIiAlIChvcy5wYXRoLmpvaW4oYmlvbmljX2xpYmNfcm9vdCwgIlNZU0NBTExTLlRYVCIpKSkKIAogICAgICAgICBpZiAobm90IGFkZHMpIGFuZCAobm90IGRlbGV0ZXMpIGFuZCAobm90IGVkaXRzKToKLSAgICAgICAgICAgIEQoIm5vIGNoYW5nZXMgZGV0ZWN0ZWQhIikKKyAgICAgICAgICAgIGxvZ2dpbmcuaW5mbygibm8gY2hhbmdlcyBkZXRlY3RlZCEiKQogICAgICAgICBlbHNlOgotICAgICAgICAgICAgRCgicmVhZHkgdG8gZ28hISIpCisgICAgICAgICAgICBsb2dnaW5nLmluZm8oInJlYWR5IHRvIGdvISEiKQogCi1EX3NldGxldmVsKDEpCitsb2dnaW5nLmJhc2ljQ29uZmlnKGxldmVsPWxvZ2dpbmcuSU5GTykKIAogc3RhdGUgPSBTdGF0ZSgpCi1zdGF0ZS5wcm9jZXNzX2ZpbGUoYmlvbmljX2xpYmNfcm9vdCsiU1lTQ0FMTFMuVFhUIikKK3N0YXRlLnByb2Nlc3NfZmlsZShvcy5wYXRoLmpvaW4oYmlvbmljX2xpYmNfcm9vdCwgIlNZU0NBTExTLlRYVCIpKQogc3RhdGUucmVnZW5lcmF0ZSgpCmRpZmYgLS1naXQgYS9saWJjL3Rvb2xzL25ka19taXNzaW5nX3N5bWJvbHMucHkgYi9saWJjL3Rvb2xzL25ka19taXNzaW5nX3N5bWJvbHMucHkKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uYTlmOTJiMQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdG9vbHMvbmRrX21pc3Npbmdfc3ltYm9scy5weQpAQCAtMCwwICsxLDQ4IEBACisjIS91c3IvYmluL2VudiBweXRob24yCisjCisjIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisjCisjIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAnTGljZW5zZScpOworIyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisjIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorIworIyAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorIworIyBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisjIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICdBUyBJUycgQkFTSVMsCisjIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorIyBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisjIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorIworaW1wb3J0IG9zCitpbXBvcnQgc3VicHJvY2VzcworaW1wb3J0IHRlbXBmaWxlCisKK2ltcG9ydCBzeW1ib2xzCisKKworZGVmIGFkYl9wdWxsKHNyYywgZHN0KToKKyAgICB3aXRoIG9wZW4ob3MuZGV2bnVsbCwgJ3cnKSBhcyBkZXZudWxsOgorICAgICAgICBzdWJwcm9jZXNzLmNoZWNrX2NhbGwoWydhZGInLCAncHVsbCcsIHNyYywgZHN0XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZG91dD1kZXZudWxsLCBzdGRlcnI9ZGV2bnVsbCkKKworCitkZWYgbWFpbigpOgorICAgIHRtcF9kaXIgPSB0ZW1wZmlsZS5ta2R0ZW1wKCkKKyAgICBhZGJfcHVsbCgnL3N5c3RlbS9saWIvbGliYy5zbycsIHRtcF9kaXIpCisgICAgYWRiX3B1bGwoJy9zeXN0ZW0vbGliL2xpYm0uc28nLCB0bXBfZGlyKQorCisgICAgY3VycmVudCA9IHN5bWJvbHMuR2V0RnJvbUFuZHJvaWRTbyhbJ2xpYmMuc28nLCAnbGlibS5zbyddKQorICAgIGRldmljZSA9IChzeW1ib2xzLkdldEZyb21FbGYob3MucGF0aC5qb2luKHRtcF9kaXIsICdsaWJjLnNvJykpIHwKKyAgICAgICAgICAgICAgc3ltYm9scy5HZXRGcm9tRWxmKG9zLnBhdGguam9pbih0bXBfZGlyLCAnbGlibS5zbycpKSkKKyAgICBjb21wYXRfbGliID0gc3ltYm9scy5HZXRGcm9tQW5kcm9pZFN0YXRpY0xpYihbJ2xpYmNfbmRrLmEnXSkKKworICAgIG1pc3Npbmdfc3ltYm9scyA9IGN1cnJlbnQgLSBkZXZpY2UKKyAgICBjb21wYXRfbm90X2NvdmVyZWQgPSBtaXNzaW5nX3N5bWJvbHMgLSBjb21wYXRfbGliCisKKyAgICBmb3Igc3ltYm9sIGluIHNvcnRlZChjb21wYXRfbm90X2NvdmVyZWQpOgorICAgICAgICBwcmludCBzeW1ib2wKKworCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIG1haW4oKQpkaWZmIC0tZ2l0IGEvbGliYy90b29scy9wb3NpeC0yMDEzLnR4dCBiL2xpYmMvdG9vbHMvcG9zaXgtMjAxMy50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjk3MmM4MQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdG9vbHMvcG9zaXgtMjAxMy50eHQKQEAgLTAsMCArMSwxMTkxIEBACitGRF9DTFIKK0ZEX0lTU0VUCitGRF9TRVQKK0ZEX1pFUk8KK19FeGl0CitfZXhpdAorX2xvbmdqbXAKK19zZXRqbXAKK190b2xvd2VyCitfdG91cHBlcgorYTY0bAorYWJvcnQKK2FicworYWNjZXB0CithY2Nlc3MKK2Fjb3NmCithY29zaGYKK2Fjb3NoCithY29zaGwKK2Fjb3MKK2Fjb3NsCithaW9fY2FuY2VsCithaW9fZXJyb3IKK2Fpb19mc3luYworYWlvX3JlYWQKK2Fpb19yZXR1cm4KK2Fpb19zdXNwZW5kCithaW9fd3JpdGUKK2FsYXJtCithbHBoYXNvcnQKK2FzY3RpbWUKK2FzY3RpbWVfcgorYXNpbmYKK2FzaW5oZgorYXNpbmgKK2FzaW5obAorYXNpbgorYXNpbmwKK2Fzc2VydAorYXRhbjJmCithdGFuMgorYXRhbjJsCithdGFuZgorYXRhbmhmCithdGFuaAorYXRhbmhsCithdGFuCithdGFubAorYXRleGl0CithdG9mCithdG9pCithdG9sCithdG9sbAorYmFzZW5hbWUKK2JpbmQKK2JzZWFyY2gKK2J0b3djCitjYWJzZgorY2FicworY2Fic2wKK2NhY29zZgorY2Fjb3NoZgorY2Fjb3NoCitjYWNvc2hsCitjYWNvcworY2Fjb3NsCitjYWxsb2MKK2NhcmdmCitjYXJnCitjYXJnbAorY2FzaW5mCitjYXNpbmhmCitjYXNpbmgKK2Nhc2luaGwKK2Nhc2luCitjYXNpbmwKK2NhdGFuZgorY2F0YW5oZgorY2F0YW5oCitjYXRhbmhsCitjYXRhbgorY2F0YW5sCitjYXRjbG9zZQorY2F0Z2V0cworY2F0b3BlbgorY2JydGYKK2NicnQKK2NicnRsCitjY29zZgorY2Nvc2hmCitjY29zaAorY2Nvc2hsCitjY29zCitjY29zbAorY2VpbGYKK2NlaWwKK2NlaWxsCitjZXhwZgorY2V4cAorY2V4cGwKK2NmZ2V0aXNwZWVkCitjZmdldG9zcGVlZAorY2ZzZXRpc3BlZWQKK2Nmc2V0b3NwZWVkCitjaGRpcgorY2htb2QKK2Nob3duCitjaW1hZ2YKK2NpbWFnCitjaW1hZ2wKK2NsZWFyZXJyCitjbG9ja19nZXRjcHVjbG9ja2lkCitjbG9ja19nZXRyZXMKK2Nsb2NrX2dldHRpbWUKK2Nsb2NrCitjbG9ja19uYW5vc2xlZXAKK2Nsb2NrX3NldHRpbWUKK2Nsb2dmCitjbG9nCitjbG9nbAorY2xvc2VkaXIKK2Nsb3NlCitjbG9zZWxvZworY29uZnN0cgorY29uamYKK2NvbmoKK2NvbmpsCitjb25uZWN0Citjb3B5c2lnbmYKK2NvcHlzaWduCitjb3B5c2lnbmwKK2Nvc2YKK2Nvc2hmCitjb3NoCitjb3NobAorY29zCitjb3NsCitjcG93ZgorY3BvdworY3Bvd2wKK2Nwcm9qZgorY3Byb2oKK2Nwcm9qbAorY3JlYWxmCitjcmVhbAorY3JlYWxsCitjcmVhdAorY3J5cHQKK2NzaW5mCitjc2luaGYKK2NzaW5oCitjc2luaGwKK2NzaW4KK2NzaW5sCitjc3FydGYKK2NzcXJ0Citjc3FydGwKK2N0YW5mCitjdGFuaGYKK2N0YW5oCitjdGFuaGwKK2N0YW4KK2N0YW5sCitjdGVybWlkCitjdGltZQorY3RpbWVfcgorZGF5bGlnaHQKK2RibV9jbGVhcmVycgorZGJtX2Nsb3NlCitkYm1fZGVsZXRlCitkYm1fZXJyb3IKK2RibV9mZXRjaAorZGJtX2ZpcnN0a2V5CitkYm1fbmV4dGtleQorZGJtX29wZW4KK2RibV9zdG9yZQorZGlmZnRpbWUKK2RpcmZkCitkaXJuYW1lCitkaXYKK2RsY2xvc2UKK2RsZXJyb3IKK2Rsb3BlbgorZGxzeW0KK2RwcmludGYKK2RyYW5kNDgKK2R1cDIKK2R1cAorZHVwbG9jYWxlCitlbmNyeXB0CitlbmRncmVudAorZW5kaG9zdGVudAorZW5kbmV0ZW50CitlbmRwcm90b2VudAorZW5kcHdlbnQKK2VuZHNlcnZlbnQKK2VuZHV0eGVudAorZW52aXJvbgorZXJhbmQ0OAorZXJmY2YKK2VyZmMKK2VyZmNsCitlcmZmCitlcmYKK2VyZmwKK2Vycm5vCitleGVjbGUKK2V4ZWNsCitleGVjbHAKK2V4ZWN2ZQorZXhlY3YKK2V4ZWN2cAorZXhpdAorZXhwMmYKK2V4cDIKK2V4cDJsCitleHBmCitleHAKK2V4cGwKK2V4cG0xZgorZXhwbTEKK2V4cG0xbAorZmFic2YKK2ZhYnMKK2ZhYnNsCitmYWNjZXNzYXQKK2ZhdHRhY2gKK2ZjaGRpcgorZmNobW9kYXQKK2ZjaG1vZAorZmNob3duYXQKK2ZjaG93bgorZmNsb3NlCitmY250bAorZmRhdGFzeW5jCitmZGV0YWNoCitmZGltZgorZmRpbQorZmRpbWwKK2Zkb3BlbmRpcgorZmRvcGVuCitmZWNsZWFyZXhjZXB0CitmZWdldGVudgorZmVnZXRleGNlcHRmbGFnCitmZWdldHJvdW5kCitmZWhvbGRleGNlcHQKK2Zlb2YKK2ZlcmFpc2VleGNlcHQKK2ZlcnJvcgorZmVzZXRlbnYKK2Zlc2V0ZXhjZXB0ZmxhZworZmVzZXRyb3VuZAorZmV0ZXN0ZXhjZXB0CitmZXVwZGF0ZWVudgorZmV4ZWN2ZQorZmZsdXNoCitmZnMKK2ZnZXRjCitmZ2V0cG9zCitmZ2V0cworZmdldHdjCitmZ2V0d3MKK2ZpbGVubworZmxvY2tmaWxlCitmbG9vcmYKK2Zsb29yCitmbG9vcmwKK2ZtYWYKK2ZtYQorZm1hbAorZm1heGYKK2ZtYXgKK2ZtYXhsCitmbWVtb3BlbgorZm1pbmYKK2ZtaW4KK2ZtaW5sCitmbW9kZgorZm1vZAorZm1vZGwKK2ZtdG1zZworZm5tYXRjaAorZm9wZW4KK2ZvcmsKK2ZwYXRoY29uZgorZnBjbGFzc2lmeQorZnByaW50ZgorZnB1dGMKK2ZwdXRzCitmcHV0d2MKK2ZwdXR3cworZnJlYWQKK2ZyZWVhZGRyaW5mbworZnJlZQorZnJlZWxvY2FsZQorZnJlb3BlbgorZnJleHBmCitmcmV4cAorZnJleHBsCitmc2NhbmYKK2ZzZWVrCitmc2Vla28KK2ZzZXRwb3MKK2ZzdGF0YXQKK2ZzdGF0Citmc3RhdHZmcworZnN5bmMKK2Z0ZWxsCitmdGVsbG8KK2Z0b2sKK2Z0cnVuY2F0ZQorZnRyeWxvY2tmaWxlCitmdHcKK2Z1bmxvY2tmaWxlCitmdXRpbWVucworZndpZGUKK2Z3cHJpbnRmCitmd3JpdGUKK2Z3c2NhbmYKK2dhaV9zdHJlcnJvcgorZ2V0YWRkcmluZm8KK2dldGNoYXIKK2dldGNoYXJfdW5sb2NrZWQKK2dldGMKK2dldGNfdW5sb2NrZWQKK2dldGN3ZAorZ2V0ZGF0ZV9lcnIKK2dldGRhdGUKK2dldGRlbGltCitnZXRlZ2lkCitnZXRlbnYKK2dldGV1aWQKK2dldGdpZAorZ2V0Z3JlbnQKK2dldGdyZ2lkCitnZXRncmdpZF9yCitnZXRncm5hbQorZ2V0Z3JuYW1fcgorZ2V0Z3JvdXBzCitnZXRob3N0ZW50CitnZXRob3N0aWQKK2dldGhvc3RuYW1lCitnZXRpdGltZXIKK2dldGxpbmUKK2dldGxvZ2luCitnZXRsb2dpbl9yCitnZXRtc2cKK2dldG5hbWVpbmZvCitnZXRuZXRieWFkZHIKK2dldG5ldGJ5bmFtZQorZ2V0bmV0ZW50CitnZXRvcHQKK2dldHBlZXJuYW1lCitnZXRwZ2lkCitnZXRwZ3JwCitnZXRwaWQKK2dldHBtc2cKK2dldHBwaWQKK2dldHByaW9yaXR5CitnZXRwcm90b2J5bmFtZQorZ2V0cHJvdG9ieW51bWJlcgorZ2V0cHJvdG9lbnQKK2dldHB3ZW50CitnZXRwd25hbQorZ2V0cHduYW1fcgorZ2V0cHd1aWQKK2dldHB3dWlkX3IKK2dldHJsaW1pdAorZ2V0cnVzYWdlCitnZXRzZXJ2YnluYW1lCitnZXRzZXJ2Ynlwb3J0CitnZXRzZXJ2ZW50CitnZXRzCitnZXRzaWQKK2dldHNvY2tuYW1lCitnZXRzb2Nrb3B0CitnZXRzdWJvcHQKK2dldHRpbWVvZmRheQorZ2V0dWlkCitnZXR1dHhlbnQKK2dldHV0eGlkCitnZXR1dHhsaW5lCitnZXR3Y2hhcgorZ2V0d2MKK2dsb2JmcmVlCitnbG9iCitnbXRpbWUKK2dtdGltZV9yCitncmFudHB0CitoY3JlYXRlCitoZGVzdHJveQoraHNlYXJjaAoraHRvbmwKK2h0b25zCitoeXBvdGYKK2h5cG90CitoeXBvdGwKK2ljb252X2Nsb3NlCitpY29udgoraWNvbnZfb3BlbgoraWZfZnJlZW5hbWVpbmRleAoraWZfaW5kZXh0b25hbWUKK2lmX25hbWVpbmRleAoraWZfbmFtZXRvaW5kZXgKK2lsb2diZgoraWxvZ2IKK2lsb2dibAoraW1heGFicworaW1heGRpdgoraW5ldF9hZGRyCitpbmV0X250b2EKK2luZXRfbnRvcAoraW5ldF9wdG9uCitpbml0c3RhdGUKK2luc3F1ZQoraW9jdGwKK2lzYWxudW0KK2lzYWxudW1fbAoraXNhbHBoYQoraXNhbHBoYV9sCitpc2FzY2lpCitpc2FzdHJlYW0KK2lzYXR0eQoraXNibGFuaworaXNibGFua19sCitpc2NudHJsCitpc2NudHJsX2wKK2lzZGlnaXQKK2lzZGlnaXRfbAoraXNmaW5pdGUKK2lzZ3JhcGgKK2lzZ3JhcGhfbAoraXNncmVhdGVyZXF1YWwKK2lzZ3JlYXRlcgoraXNpbmYKK2lzbGVzc2VxdWFsCitpc2xlc3NncmVhdGVyCitpc2xlc3MKK2lzbG93ZXIKK2lzbG93ZXJfbAoraXNuYW4KK2lzbm9ybWFsCitpc3ByaW50Citpc3ByaW50X2wKK2lzcHVuY3QKK2lzcHVuY3RfbAoraXNzcGFjZQoraXNzcGFjZV9sCitpc3Vub3JkZXJlZAoraXN1cHBlcgoraXN1cHBlcl9sCitpc3dhbG51bQoraXN3YWxudW1fbAoraXN3YWxwaGEKK2lzd2FscGhhX2wKK2lzd2JsYW5rCitpc3dibGFua19sCitpc3djbnRybAoraXN3Y250cmxfbAoraXN3Y3R5cGUKK2lzd2N0eXBlX2wKK2lzd2RpZ2l0Citpc3dkaWdpdF9sCitpc3dncmFwaAoraXN3Z3JhcGhfbAoraXN3bG93ZXIKK2lzd2xvd2VyX2wKK2lzd3ByaW50Citpc3dwcmludF9sCitpc3dwdW5jdAoraXN3cHVuY3RfbAoraXN3c3BhY2UKK2lzd3NwYWNlX2wKK2lzd3VwcGVyCitpc3d1cHBlcl9sCitpc3d4ZGlnaXQKK2lzd3hkaWdpdF9sCitpc3hkaWdpdAoraXN4ZGlnaXRfbAorajAKK2oxCitqbgoranJhbmQ0OAora2lsbAora2lsbHBnCitsNjRhCitsYWJzCitsY2hvd24KK2xjb25nNDgKK2xkZXhwZgorbGRleHAKK2xkZXhwbAorbGRpdgorbGZpbmQKK2xnYW1tYWYKK2xnYW1tYQorbGdhbW1hbAorbGlua2F0CitsaW5rCitsaW9fbGlzdGlvCitsaXN0ZW4KK2xsYWJzCitsbGRpdgorbGxyaW50ZgorbGxyaW50CitsbHJpbnRsCitsbHJvdW5kZgorbGxyb3VuZAorbGxyb3VuZGwKK2xvY2FsZWNvbnYKK2xvY2FsdGltZQorbG9jYWx0aW1lX3IKK2xvY2tmCitsb2cxMGYKK2xvZzEwCitsb2cxMGwKK2xvZzFwZgorbG9nMXAKK2xvZzFwbAorbG9nMmYKK2xvZzIKK2xvZzJsCitsb2diZgorbG9nYgorbG9nYmwKK2xvZ2YKK2xvZworbG9nbAorbG9uZ2ptcAorbHJhbmQ0OAorbHJpbnRmCitscmludAorbHJpbnRsCitscm91bmRmCitscm91bmQKK2xyb3VuZGwKK2xzZWFyY2gKK2xzZWVrCitsc3RhdAorbWFsbG9jCittYmxlbgorbWJybGVuCittYnJ0b3djCittYnNpbml0CittYnNucnRvd2NzCittYnNydG93Y3MKK21ic3Rvd2NzCittYnRvd2MKK21lbWNjcHkKK21lbWNocgorbWVtY21wCittZW1jcHkKK21lbW1vdmUKK21lbXNldAorbWtkaXJhdAorbWtkaXIKK21rZHRlbXAKK21rZmlmb2F0Citta2ZpZm8KK21rbm9kYXQKK21rbm9kCitta3N0ZW1wCitta3RpbWUKK21sb2NrYWxsCittbG9jaworbW1hcAorbW9kZmYKK21vZGYKK21vZGZsCittcHJvdGVjdAorbXFfY2xvc2UKK21xX2dldGF0dHIKK21xX25vdGlmeQorbXFfb3BlbgorbXFfcmVjZWl2ZQorbXFfc2VuZAorbXFfc2V0YXR0cgorbXFfdGltZWRyZWNlaXZlCittcV90aW1lZHNlbmQKK21xX3VubGluaworbXJhbmQ0OAorbXNnY3RsCittc2dnZXQKK21zZ3JjdgorbXNnc25kCittc3luYworbXVubG9ja2FsbAorbXVubG9jaworbXVubWFwCituYW5mCituYW4KK25hbmwKK25hbm9zbGVlcAorbmVhcmJ5aW50ZgorbmVhcmJ5aW50CituZWFyYnlpbnRsCituZXdsb2NhbGUKK25leHRhZnRlcmYKK25leHRhZnRlcgorbmV4dGFmdGVybAorbmV4dHRvd2FyZGYKK25leHR0b3dhcmQKK25leHR0b3dhcmRsCituZnR3CituaWNlCitubF9sYW5naW5mbworbmxfbGFuZ2luZm9fbAorbnJhbmQ0OAorbnRvaGwKK250b2hzCitvcGVuYXQKK29wZW5kaXIKK29wZW4KK29wZW5sb2cKK29wZW5fbWVtc3RyZWFtCitvcGVuX3dtZW1zdHJlYW0KK29wdGFyZworb3B0ZXJyCitvcHRpbmQKK29wdG9wdAorcGF0aGNvbmYKK3BhdXNlCitwY2xvc2UKK3BlcnJvcgorcGlwZQorcG9sbAorcG9wZW4KK3Bvc2l4X2ZhZHZpc2UKK3Bvc2l4X2ZhbGxvY2F0ZQorcG9zaXhfbWFkdmlzZQorcG9zaXhfbWVtYWxpZ24KK3Bvc2l4X21lbV9vZmZzZXQKK3Bvc2l4X29wZW5wdAorcG9zaXhfc3Bhd25hdHRyX2Rlc3Ryb3kKK3Bvc2l4X3NwYXduYXR0cl9nZXRmbGFncworcG9zaXhfc3Bhd25hdHRyX2dldHBncm91cAorcG9zaXhfc3Bhd25hdHRyX2dldHNjaGVkcGFyYW0KK3Bvc2l4X3NwYXduYXR0cl9nZXRzY2hlZHBvbGljeQorcG9zaXhfc3Bhd25hdHRyX2dldHNpZ2RlZmF1bHQKK3Bvc2l4X3NwYXduYXR0cl9nZXRzaWdtYXNrCitwb3NpeF9zcGF3bmF0dHJfaW5pdAorcG9zaXhfc3Bhd25hdHRyX3NldGZsYWdzCitwb3NpeF9zcGF3bmF0dHJfc2V0cGdyb3VwCitwb3NpeF9zcGF3bmF0dHJfc2V0c2NoZWRwYXJhbQorcG9zaXhfc3Bhd25hdHRyX3NldHNjaGVkcG9saWN5Citwb3NpeF9zcGF3bmF0dHJfc2V0c2lnZGVmYXVsdAorcG9zaXhfc3Bhd25hdHRyX3NldHNpZ21hc2sKK3Bvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19hZGRjbG9zZQorcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25zX2FkZGR1cDIKK3Bvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19hZGRvcGVuCitwb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfZGVzdHJveQorcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25zX2luaXQKK3Bvc2l4X3NwYXduCitwb3NpeF9zcGF3bnAKK3Bvc2l4X3RyYWNlX2F0dHJfZGVzdHJveQorcG9zaXhfdHJhY2VfYXR0cl9nZXRjbG9ja3JlcworcG9zaXhfdHJhY2VfYXR0cl9nZXRjcmVhdGV0aW1lCitwb3NpeF90cmFjZV9hdHRyX2dldGdlbnZlcnNpb24KK3Bvc2l4X3RyYWNlX2F0dHJfZ2V0aW5oZXJpdGVkCitwb3NpeF90cmFjZV9hdHRyX2dldGxvZ2Z1bGxwb2xpY3kKK3Bvc2l4X3RyYWNlX2F0dHJfZ2V0bG9nc2l6ZQorcG9zaXhfdHJhY2VfYXR0cl9nZXRtYXhkYXRhc2l6ZQorcG9zaXhfdHJhY2VfYXR0cl9nZXRtYXhzeXN0ZW1ldmVudHNpemUKK3Bvc2l4X3RyYWNlX2F0dHJfZ2V0bWF4dXNlcmV2ZW50c2l6ZQorcG9zaXhfdHJhY2VfYXR0cl9nZXRuYW1lCitwb3NpeF90cmFjZV9hdHRyX2dldHN0cmVhbWZ1bGxwb2xpY3kKK3Bvc2l4X3RyYWNlX2F0dHJfZ2V0c3RyZWFtc2l6ZQorcG9zaXhfdHJhY2VfYXR0cl9pbml0Citwb3NpeF90cmFjZV9hdHRyX3NldGluaGVyaXRlZAorcG9zaXhfdHJhY2VfYXR0cl9zZXRsb2dmdWxscG9saWN5Citwb3NpeF90cmFjZV9hdHRyX3NldGxvZ3NpemUKK3Bvc2l4X3RyYWNlX2F0dHJfc2V0bWF4ZGF0YXNpemUKK3Bvc2l4X3RyYWNlX2F0dHJfc2V0bmFtZQorcG9zaXhfdHJhY2VfYXR0cl9zZXRzdHJlYW1mdWxscG9saWN5Citwb3NpeF90cmFjZV9hdHRyX3NldHN0cmVhbXNpemUKK3Bvc2l4X3RyYWNlX2NsZWFyCitwb3NpeF90cmFjZV9jbG9zZQorcG9zaXhfdHJhY2VfY3JlYXRlCitwb3NpeF90cmFjZV9jcmVhdGVfd2l0aGxvZworcG9zaXhfdHJhY2VfZXZlbnQKK3Bvc2l4X3RyYWNlX2V2ZW50aWRfZXF1YWwKK3Bvc2l4X3RyYWNlX2V2ZW50aWRfZ2V0X25hbWUKK3Bvc2l4X3RyYWNlX2V2ZW50aWRfb3BlbgorcG9zaXhfdHJhY2VfZXZlbnRzZXRfYWRkCitwb3NpeF90cmFjZV9ldmVudHNldF9kZWwKK3Bvc2l4X3RyYWNlX2V2ZW50c2V0X2VtcHR5Citwb3NpeF90cmFjZV9ldmVudHNldF9maWxsCitwb3NpeF90cmFjZV9ldmVudHNldF9pc21lbWJlcgorcG9zaXhfdHJhY2VfZXZlbnR0eXBlbGlzdF9nZXRuZXh0X2lkCitwb3NpeF90cmFjZV9ldmVudHR5cGVsaXN0X3Jld2luZAorcG9zaXhfdHJhY2VfZmx1c2gKK3Bvc2l4X3RyYWNlX2dldF9hdHRyCitwb3NpeF90cmFjZV9nZXRfZmlsdGVyCitwb3NpeF90cmFjZV9nZXRuZXh0X2V2ZW50Citwb3NpeF90cmFjZV9nZXRfc3RhdHVzCitwb3NpeF90cmFjZV9vcGVuCitwb3NpeF90cmFjZV9yZXdpbmQKK3Bvc2l4X3RyYWNlX3NldF9maWx0ZXIKK3Bvc2l4X3RyYWNlX3NodXRkb3duCitwb3NpeF90cmFjZV9zdGFydAorcG9zaXhfdHJhY2Vfc3RvcAorcG9zaXhfdHJhY2VfdGltZWRnZXRuZXh0X2V2ZW50Citwb3NpeF90cmFjZV90cmlkX2V2ZW50aWRfb3BlbgorcG9zaXhfdHJhY2VfdHJ5Z2V0bmV4dF9ldmVudAorcG9zaXhfdHlwZWRfbWVtX2dldF9pbmZvCitwb3NpeF90eXBlZF9tZW1fb3BlbgorcG93ZgorcG93Citwb3dsCitwcmVhZAorcHJpbnRmCitwc2VsZWN0Citwc2lnaW5mbworcHNpZ25hbAorcHRocmVhZF9hdGZvcmsKK3B0aHJlYWRfYXR0cl9kZXN0cm95CitwdGhyZWFkX2F0dHJfZ2V0ZGV0YWNoc3RhdGUKK3B0aHJlYWRfYXR0cl9nZXRndWFyZHNpemUKK3B0aHJlYWRfYXR0cl9nZXRpbmhlcml0c2NoZWQKK3B0aHJlYWRfYXR0cl9nZXRzY2hlZHBhcmFtCitwdGhyZWFkX2F0dHJfZ2V0c2NoZWRwb2xpY3kKK3B0aHJlYWRfYXR0cl9nZXRzY29wZQorcHRocmVhZF9hdHRyX2dldHN0YWNrCitwdGhyZWFkX2F0dHJfZ2V0c3RhY2tzaXplCitwdGhyZWFkX2F0dHJfaW5pdAorcHRocmVhZF9hdHRyX3NldGRldGFjaHN0YXRlCitwdGhyZWFkX2F0dHJfc2V0Z3VhcmRzaXplCitwdGhyZWFkX2F0dHJfc2V0aW5oZXJpdHNjaGVkCitwdGhyZWFkX2F0dHJfc2V0c2NoZWRwYXJhbQorcHRocmVhZF9hdHRyX3NldHNjaGVkcG9saWN5CitwdGhyZWFkX2F0dHJfc2V0c2NvcGUKK3B0aHJlYWRfYXR0cl9zZXRzdGFjaworcHRocmVhZF9hdHRyX3NldHN0YWNrc2l6ZQorcHRocmVhZF9iYXJyaWVyYXR0cl9kZXN0cm95CitwdGhyZWFkX2JhcnJpZXJhdHRyX2dldHBzaGFyZWQKK3B0aHJlYWRfYmFycmllcmF0dHJfaW5pdAorcHRocmVhZF9iYXJyaWVyYXR0cl9zZXRwc2hhcmVkCitwdGhyZWFkX2JhcnJpZXJfZGVzdHJveQorcHRocmVhZF9iYXJyaWVyX2luaXQKK3B0aHJlYWRfYmFycmllcl93YWl0CitwdGhyZWFkX2NhbmNlbAorcHRocmVhZF9jbGVhbnVwX3BvcAorcHRocmVhZF9jbGVhbnVwX3B1c2gKK3B0aHJlYWRfY29uZGF0dHJfZGVzdHJveQorcHRocmVhZF9jb25kYXR0cl9nZXRjbG9jaworcHRocmVhZF9jb25kYXR0cl9nZXRwc2hhcmVkCitwdGhyZWFkX2NvbmRhdHRyX2luaXQKK3B0aHJlYWRfY29uZGF0dHJfc2V0Y2xvY2sKK3B0aHJlYWRfY29uZGF0dHJfc2V0cHNoYXJlZAorcHRocmVhZF9jb25kX2Jyb2FkY2FzdAorcHRocmVhZF9jb25kX2Rlc3Ryb3kKK3B0aHJlYWRfY29uZF9pbml0CitwdGhyZWFkX2NvbmRfc2lnbmFsCitwdGhyZWFkX2NvbmRfdGltZWR3YWl0CitwdGhyZWFkX2NvbmRfd2FpdAorcHRocmVhZF9jcmVhdGUKK3B0aHJlYWRfZGV0YWNoCitwdGhyZWFkX2VxdWFsCitwdGhyZWFkX2V4aXQKK3B0aHJlYWRfZ2V0Y29uY3VycmVuY3kKK3B0aHJlYWRfZ2V0Y3B1Y2xvY2tpZAorcHRocmVhZF9nZXRzY2hlZHBhcmFtCitwdGhyZWFkX2dldHNwZWNpZmljCitwdGhyZWFkX2pvaW4KK3B0aHJlYWRfa2V5X2NyZWF0ZQorcHRocmVhZF9rZXlfZGVsZXRlCitwdGhyZWFkX2tpbGwKK3B0aHJlYWRfbXV0ZXhhdHRyX2Rlc3Ryb3kKK3B0aHJlYWRfbXV0ZXhhdHRyX2dldHByaW9jZWlsaW5nCitwdGhyZWFkX211dGV4YXR0cl9nZXRwcm90b2NvbAorcHRocmVhZF9tdXRleGF0dHJfZ2V0cHNoYXJlZAorcHRocmVhZF9tdXRleGF0dHJfZ2V0cm9idXN0CitwdGhyZWFkX211dGV4YXR0cl9nZXR0eXBlCitwdGhyZWFkX211dGV4YXR0cl9pbml0CitwdGhyZWFkX211dGV4YXR0cl9zZXRwcmlvY2VpbGluZworcHRocmVhZF9tdXRleGF0dHJfc2V0cHJvdG9jb2wKK3B0aHJlYWRfbXV0ZXhhdHRyX3NldHBzaGFyZWQKK3B0aHJlYWRfbXV0ZXhhdHRyX3NldHJvYnVzdAorcHRocmVhZF9tdXRleGF0dHJfc2V0dHlwZQorcHRocmVhZF9tdXRleF9jb25zaXN0ZW50CitwdGhyZWFkX211dGV4X2Rlc3Ryb3kKK3B0aHJlYWRfbXV0ZXhfZ2V0cHJpb2NlaWxpbmcKK3B0aHJlYWRfbXV0ZXhfaW5pdAorcHRocmVhZF9tdXRleF9sb2NrCitwdGhyZWFkX211dGV4X3NldHByaW9jZWlsaW5nCitwdGhyZWFkX211dGV4X3RpbWVkbG9jaworcHRocmVhZF9tdXRleF90cnlsb2NrCitwdGhyZWFkX211dGV4X3VubG9jaworcHRocmVhZF9vbmNlCitwdGhyZWFkX3J3bG9ja2F0dHJfZGVzdHJveQorcHRocmVhZF9yd2xvY2thdHRyX2dldHBzaGFyZWQKK3B0aHJlYWRfcndsb2NrYXR0cl9pbml0CitwdGhyZWFkX3J3bG9ja2F0dHJfc2V0cHNoYXJlZAorcHRocmVhZF9yd2xvY2tfZGVzdHJveQorcHRocmVhZF9yd2xvY2tfaW5pdAorcHRocmVhZF9yd2xvY2tfcmRsb2NrCitwdGhyZWFkX3J3bG9ja190aW1lZHJkbG9jaworcHRocmVhZF9yd2xvY2tfdGltZWR3cmxvY2sKK3B0aHJlYWRfcndsb2NrX3RyeXJkbG9jaworcHRocmVhZF9yd2xvY2tfdHJ5d3Jsb2NrCitwdGhyZWFkX3J3bG9ja191bmxvY2sKK3B0aHJlYWRfcndsb2NrX3dybG9jaworcHRocmVhZF9zZWxmCitwdGhyZWFkX3NldGNhbmNlbHN0YXRlCitwdGhyZWFkX3NldGNhbmNlbHR5cGUKK3B0aHJlYWRfc2V0Y29uY3VycmVuY3kKK3B0aHJlYWRfc2V0c2NoZWRwYXJhbQorcHRocmVhZF9zZXRzY2hlZHByaW8KK3B0aHJlYWRfc2V0c3BlY2lmaWMKK3B0aHJlYWRfc2lnbWFzaworcHRocmVhZF9zcGluX2Rlc3Ryb3kKK3B0aHJlYWRfc3Bpbl9pbml0CitwdGhyZWFkX3NwaW5fbG9jaworcHRocmVhZF9zcGluX3RyeWxvY2sKK3B0aHJlYWRfc3Bpbl91bmxvY2sKK3B0aHJlYWRfdGVzdGNhbmNlbAorcHRzbmFtZQorcHV0Y2hhcgorcHV0Y2hhcl91bmxvY2tlZAorcHV0YworcHV0Y191bmxvY2tlZAorcHV0ZW52CitwdXRtc2cKK3B1dHBtc2cKK3B1dHMKK3B1dHV0eGxpbmUKK3B1dHdjaGFyCitwdXR3YworcHdyaXRlCitxc29ydAorcmFpc2UKK3JhbmQKK3JhbmRvbQorcmFuZF9yCityZWFkZGlyCityZWFkZGlyX3IKK3JlYWQKK3JlYWRsaW5rYXQKK3JlYWRsaW5rCityZWFkdgorcmVhbGxvYworcmVhbHBhdGgKK3JlY3Zmcm9tCityZWN2CityZWN2bXNnCityZWdjb21wCityZWdlcnJvcgorcmVnZXhlYworcmVnZnJlZQorcmVtYWluZGVyZgorcmVtYWluZGVyCityZW1haW5kZXJsCityZW1vdmUKK3JlbXF1ZQorcmVtcXVvZgorcmVtcXVvCityZW1xdW9sCityZW5hbWVhdAorcmVuYW1lCityZXdpbmRkaXIKK3Jld2luZAorcmludGYKK3JpbnQKK3JpbnRsCitybWRpcgorcm91bmRmCityb3VuZAorcm91bmRsCitzY2FsYmxuZgorc2NhbGJsbgorc2NhbGJsbmwKK3NjYWxibmYKK3NjYWxibgorc2NhbGJubAorc2NhbmRpcgorc2NhbmYKK3NjaGVkX2dldHBhcmFtCitzY2hlZF9nZXRfcHJpb3JpdHlfbWF4CitzY2hlZF9nZXRfcHJpb3JpdHlfbWluCitzY2hlZF9nZXRzY2hlZHVsZXIKK3NjaGVkX3JyX2dldF9pbnRlcnZhbAorc2NoZWRfc2V0cGFyYW0KK3NjaGVkX3NldHNjaGVkdWxlcgorc2NoZWRfeWllbGQKK3NlZWQ0OAorc2Vla2Rpcgorc2VsZWN0CitzZW1fY2xvc2UKK3NlbWN0bAorc2VtX2Rlc3Ryb3kKK3NlbWdldAorc2VtX2dldHZhbHVlCitzZW1faW5pdAorc2VtX29wZW4KK3NlbW9wCitzZW1fcG9zdAorc2VtX3RpbWVkd2FpdAorc2VtX3RyeXdhaXQKK3NlbV91bmxpbmsKK3NlbV93YWl0CitzZW5kCitzZW5kbXNnCitzZW5kdG8KK3NldGJ1Zgorc2V0ZWdpZAorc2V0ZW52CitzZXRldWlkCitzZXRnaWQKK3NldGdyZW50CitzZXRob3N0ZW50CitzZXRpdGltZXIKK3NldGptcAorc2V0a2V5CitzZXRsb2NhbGUKK3NldGxvZ21hc2sKK3NldG5ldGVudAorc2V0cGdpZAorc2V0cGdycAorc2V0cHJpb3JpdHkKK3NldHByb3RvZW50CitzZXRwd2VudAorc2V0cmVnaWQKK3NldHJldWlkCitzZXRybGltaXQKK3NldHNlcnZlbnQKK3NldHNpZAorc2V0c29ja29wdAorc2V0c3RhdGUKK3NldHVpZAorc2V0dXR4ZW50CitzZXR2YnVmCitzaG1hdAorc2htY3RsCitzaG1kdAorc2htZ2V0CitzaG1fb3Blbgorc2htX3VubGluaworc2h1dGRvd24KK3NpZ2FjdGlvbgorc2lnYWRkc2V0CitzaWdhbHRzdGFjaworc2lnZGVsc2V0CitzaWdlbXB0eXNldAorc2lnZmlsbHNldAorc2lnaG9sZAorc2lnaWdub3JlCitzaWdpbnRlcnJ1cHQKK3NpZ2lzbWVtYmVyCitzaWdsb25nam1wCitzaWduYWwKK3NpZ25iaXQKK3NpZ25nYW0KK3NpZ3BhdXNlCitzaWdwZW5kaW5nCitzaWdwcm9jbWFzaworc2lncXVldWUKK3NpZ3JlbHNlCitzaWdzZXQKK3NpZ3NldGptcAorc2lnc3VzcGVuZAorc2lndGltZWR3YWl0CitzaWd3YWl0CitzaWd3YWl0aW5mbworc2luZgorc2luaGYKK3NpbmgKK3NpbmhsCitzaW4KK3NpbmwKK3NsZWVwCitzbnByaW50Zgorc29ja2F0bWFyaworc29ja2V0Citzb2NrZXRwYWlyCitzcHJpbnRmCitzcXJ0Zgorc3FydAorc3FydGwKK3NyYW5kNDgKK3NyYW5kCitzcmFuZG9tCitzc2NhbmYKK3N0YXQKK3N0YXR2ZnMKK3N0ZGVycgorc3RkaW4KK3N0ZG91dAorc3RwY3B5CitzdHBuY3B5CitzdHJjYXNlY21wCitzdHJjYXNlY21wX2wKK3N0cmNhdAorc3RyY2hyCitzdHJjbXAKK3N0cmNvbGwKK3N0cmNvbGxfbAorc3RyY3B5CitzdHJjc3BuCitzdHJkdXAKK3N0cmVycm9yCitzdHJlcnJvcl9sCitzdHJlcnJvcl9yCitzdHJmbW9uCitzdHJmbW9uX2wKK3N0cmZ0aW1lCitzdHJmdGltZV9sCitzdHJsZW4KK3N0cm5jYXNlY21wCitzdHJuY2FzZWNtcF9sCitzdHJuY2F0CitzdHJuY21wCitzdHJuY3B5CitzdHJuZHVwCitzdHJubGVuCitzdHJwYnJrCitzdHJwdGltZQorc3RycmNocgorc3Ryc2lnbmFsCitzdHJzcG4KK3N0cnN0cgorc3RydG9kCitzdHJ0b2YKK3N0cnRvaW1heAorc3RydG9rCitzdHJ0b2tfcgorc3RydG9sZAorc3RydG9sCitzdHJ0b2xsCitzdHJ0b3VsCitzdHJ0b3VsbAorc3RydG91bWF4CitzdHJ4ZnJtCitzdHJ4ZnJtX2wKK3N3YWIKK3N3cHJpbnRmCitzd3NjYW5mCitzeW1saW5rYXQKK3N5bWxpbmsKK3N5bmMKK3N5c2NvbmYKK3N5c2xvZworc3lzdGVtCit0YW5mCit0YW5oZgordGFuaAordGFuaGwKK3RhbgordGFubAordGNkcmFpbgordGNmbG93Cit0Y2ZsdXNoCit0Y2dldGF0dHIKK3RjZ2V0cGdycAordGNnZXRzaWQKK3Rjc2VuZGJyZWFrCit0Y3NldGF0dHIKK3Rjc2V0cGdycAordGRlbGV0ZQordGVsbGRpcgordGVtcG5hbQordGZpbmQKK3RnYW1tYWYKK3RnYW1tYQordGdhbW1hbAordGltZQordGltZXJfY3JlYXRlCit0aW1lcl9kZWxldGUKK3RpbWVyX2dldG92ZXJydW4KK3RpbWVyX2dldHRpbWUKK3RpbWVyX3NldHRpbWUKK3RpbWVzCit0aW1lem9uZQordG1wZmlsZQordG1wbmFtCit0b2FzY2lpCit0b2xvd2VyCit0b2xvd2VyX2wKK3RvdXBwZXIKK3RvdXBwZXJfbAordG93Y3RyYW5zCit0b3djdHJhbnNfbAordG93bG93ZXIKK3Rvd2xvd2VyX2wKK3Rvd3VwcGVyCit0b3d1cHBlcl9sCit0cnVuY2F0ZQordHJ1bmNmCit0cnVuYwordHJ1bmNsCit0c2VhcmNoCit0dHluYW1lCit0dHluYW1lX3IKK3R3YWxrCit0em5hbWUKK3R6c2V0Cit1bGltaXQKK3VtYXNrCit1bmFtZQordW5nZXRjCit1bmdldHdjCit1bmxpbmthdAordW5saW5rCit1bmxvY2twdAordW5zZXRlbnYKK3VzZWxvY2FsZQordXRpbWUKK3V0aW1lbnNhdAordXRpbWVzCit2YV9hcmcKK3ZhX2NvcHkKK3ZhX2VuZAordmFfc3RhcnQKK3ZkcHJpbnRmCit2ZnByaW50ZgordmZzY2FuZgordmZ3cHJpbnRmCit2ZndzY2FuZgordnByaW50ZgordnNjYW5mCit2c25wcmludGYKK3ZzcHJpbnRmCit2c3NjYW5mCit2c3dwcmludGYKK3Zzd3NjYW5mCit2d3ByaW50ZgordndzY2FuZgord2FpdAord2FpdGlkCit3YWl0cGlkCit3Y3BjcHkKK3djcG5jcHkKK3djcnRvbWIKK3djc2Nhc2VjbXAKK3djc2Nhc2VjbXBfbAord2NzY2F0Cit3Y3NjaHIKK3djc2NtcAord2NzY29sbAord2NzY29sbF9sCit3Y3NjcHkKK3djc2NzcG4KK3djc2R1cAord2NzZnRpbWUKK3djc2xlbgord2NzbmNhc2VjbXAKK3djc25jYXNlY21wX2wKK3djc25jYXQKK3djc25jbXAKK3djc25jcHkKK3djc25sZW4KK3djc25ydG9tYnMKK3djc3BicmsKK3djc3JjaHIKK3djc3J0b21icword2Nzc3BuCit3Y3NzdHIKK3djc3RvZAord2NzdG9mCit3Y3N0b2ltYXgKK3djc3Rvaword2NzdG9sZAord2NzdG9sCit3Y3N0b2xsCit3Y3N0b21icword2NzdG91bAord2NzdG91bGwKK3djc3RvdW1heAord2Nzd2lkdGgKK3djc3hmcm0KK3djc3hmcm1fbAord2N0b2IKK3djdG9tYgord2N0cmFucword2N0cmFuc19sCit3Y3R5cGUKK3djdHlwZV9sCit3Y3dpZHRoCit3bWVtY2hyCit3bWVtY21wCit3bWVtY3B5Cit3bWVtbW92ZQord21lbXNldAord29yZGV4cAord29yZGZyZWUKK3dwcmludGYKK3dyaXRlCit3cml0ZXYKK3dzY2FuZgoreTAKK3kxCit5bgpkaWZmIC0tZ2l0IGEvbGliYy90b29scy9zeW1ib2xzLnB5IGIvbGliYy90b29scy9zeW1ib2xzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNmNDBhYWQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Rvb2xzL3N5bWJvbHMucHkKQEAgLTAsMCArMSw5MCBAQAorIworIyBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgJ0xpY2Vuc2UnKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMKKyMgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyMKKyMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorIyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLAorIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorIyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyMKK2ltcG9ydCBnbG9iCitpbXBvcnQgb3MKK2ltcG9ydCByZQoraW1wb3J0IHN1YnByb2Nlc3MKKworCitkZWYgR2V0RnJvbVR4dCh0eHRfZmlsZSk6CisgICAgc3ltYm9scyA9IHNldCgpCisgICAgZiA9IG9wZW4odHh0X2ZpbGUsICdyJykKKyAgICBmb3IgbGluZSBpbiBmLnJlYWQoKS5zcGxpdGxpbmVzKCk6CisgICAgICAgIHN5bWJvbHMuYWRkKGxpbmUpCisgICAgZi5jbG9zZSgpCisgICAgcmV0dXJuIHN5bWJvbHMKKworCitkZWYgR2V0RnJvbUVsZihlbGZfZmlsZSwgc3ltX3R5cGU9Jy0tZHluLXN5bXMnKToKKyAgICAjIHB5bGludDogZGlzYWJsZT1saW5lLXRvby1sb25nCisgICAgIyBFeGFtcGxlIHJlYWRlbGYgb3V0cHV0OgorICAgICMgICAgIDI2NDogMDAwMTYyM2MgICAgICAgICA0IEZVTkMgICAgICAgIEdMT0JBTCBERUZBVUxUICAgICAgICA4IGNhYnNmCisgICAgIyAgICAgMjY2OiAwMDAxNjI0NCAgICAgICAgIDQgRlVOQyAgICAgICAgR0xPQkFMIERFRkFVTFQgICAgICAgIDggZHJlbWYKKyAgICAjICAgICAyNjc6IDAwMDE5MDE4ICAgICAgICAgNCBPQkpFQ1QgICAgR0xPQkFMIERFRkFVTFQgICAgIDExIF9fZmVfZGZsX2VudgorICAgICMgICAgIDI2ODogMDAwMDAwMDAgICAgICAgICAwIEZVTkMgICAgICAgIEdMT0JBTCBERUZBVUxUICAgIFVORCBfX2FlYWJpX2RjbXBsdAorCisgICAgciA9IHJlLmNvbXBpbGUoCisgICAgICAgIHInICtcZCs6IFswLTlhLWZdKyArXGQrIChJP0ZVTkN8T0JKRUNUKSArXFMrICtcUysgK1xkKyAoXFMrKScpCisKKyAgICBzeW1ib2xzID0gc2V0KCkKKworICAgIG91dHB1dCA9IHN1YnByb2Nlc3MuY2hlY2tfb3V0cHV0KFsncmVhZGVsZicsIHN5bV90eXBlLCAnLVcnLCBlbGZfZmlsZV0pCisgICAgZm9yIGxpbmUgaW4gb3V0cHV0LnNwbGl0KCdcbicpOgorICAgICAgICBpZiAnIEhJRERFTiAnIGluIGxpbmUgb3IgJyBVTkQgJyBpbiBsaW5lOgorICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgbSA9IHIubWF0Y2gobGluZSkKKyAgICAgICAgaWYgbToKKyAgICAgICAgICAgIHN5bWJvbCA9IG0uZ3JvdXAoMikKKyAgICAgICAgICAgIHN5bWJvbCA9IHJlLnN1YignQC4qJywgJycsIHN5bWJvbCkKKyAgICAgICAgICAgIHN5bWJvbHMuYWRkKHN5bWJvbCkKKworICAgIHJldHVybiBzeW1ib2xzCisKKworZGVmIEdldEZyb21BbmRyb2lkU3RhdGljTGliKGZpbGVzKToKKyAgICBvdXRfZGlyID0gb3MuZW52aXJvblsnQU5EUk9JRF9QUk9EVUNUX09VVCddCisgICAgbGliX2RpciA9IG9zLnBhdGguam9pbihvdXRfZGlyLCAnb2JqJykKKworICAgIHJlc3VsdHMgPSBzZXQoKQorICAgIGZvciBmIGluIGZpbGVzOgorICAgICAgICBzdGF0aWNfbGliX2RpciA9IG9zLnBhdGguam9pbigKKyAgICAgICAgICAgIGxpYl9kaXIsCisgICAgICAgICAgICAnU1RBVElDX0xJQlJBUklFUycsCisgICAgICAgICAgICAne31faW50ZXJtZWRpYXRlcycuZm9ybWF0KG9zLnBhdGguc3BsaXRleHQoZilbMF0pKQorICAgICAgICByZXN1bHRzIHw9IEdldEZyb21FbGYoCisgICAgICAgICAgICBvcy5wYXRoLmpvaW4oc3RhdGljX2xpYl9kaXIsIGYpLAorICAgICAgICAgICAgc3ltX3R5cGU9Jy0tc3ltcycpCisgICAgcmV0dXJuIHJlc3VsdHMKKworCitkZWYgR2V0RnJvbUFuZHJvaWRTbyhmaWxlcyk6CisgICAgb3V0X2RpciA9IG9zLmVudmlyb25bJ0FORFJPSURfUFJPRFVDVF9PVVQnXQorICAgIGxpYl9kaXIgPSBvcy5wYXRoLmpvaW4ob3V0X2RpciwgJ3N5c3RlbS9saWI2NCcpCisgICAgaWYgbm90IG9zLnBhdGguaXNkaXIobGliX2Rpcik6CisgICAgICAgIGxpYl9kaXIgPSBvcy5wYXRoLmpvaW4ob3V0X2RpciwgJ3N5c3RlbS9saWInKQorCisgICAgcmVzdWx0cyA9IHNldCgpCisgICAgZm9yIGYgaW4gZmlsZXM6CisgICAgICAgIHJlc3VsdHMgfD0gR2V0RnJvbUVsZihvcy5wYXRoLmpvaW4obGliX2RpciwgZikpCisgICAgcmV0dXJuIHJlc3VsdHMKKworCitkZWYgR2V0RnJvbVN5c3RlbVNvKGZpbGVzKToKKyAgICBsaWJfZGlyID0gJy9saWIveDg2XzY0LWxpbnV4LWdudScKKyAgICByZXN1bHRzID0gc2V0KCkKKyAgICBmb3IgZiBpbiBmaWxlczoKKyAgICAgICAgcmVzdWx0cyB8PSBHZXRGcm9tRWxmKGdsb2IuZ2xvYihvcy5wYXRoLmpvaW4obGliX2RpciwgZikpWy0xXSkKKyAgICByZXR1cm4gcmVzdWx0cwpkaWZmIC0tZ2l0IGEvbGliYy90b29scy96b25laW5mby91cGRhdGUtdHpkYXRhLnB5IGIvbGliYy90b29scy96b25laW5mby91cGRhdGUtdHpkYXRhLnB5CmluZGV4IDQ4NDczNTYuLjY4YTVmZjUgMTAwNzU1Ci0tLSBhL2xpYmMvdG9vbHMvem9uZWluZm8vdXBkYXRlLXR6ZGF0YS5weQorKysgYi9saWJjL3Rvb2xzL3pvbmVpbmZvL3VwZGF0ZS10emRhdGEucHkKQEAgLTMzLDkgKzMzLDEyIEBACiBDaGVja0RpckV4aXN0cyhiaW9uaWNfbGliY190b29sc196b25laW5mb19kaXIsICdiaW9uaWMvbGliYy90b29scy96b25laW5mbycpCiBwcmludCAnRm91bmQgYmlvbmljIGluICVzIC4uLicgJSBiaW9uaWNfZGlyCiAKLSMgRmluZCB0aGUgaWN1NGMgZGlyZWN0b3J5LgotaWN1X2RpciA9IG9zLnBhdGgucmVhbHBhdGgoJyVzLy4uL2V4dGVybmFsL2ljdS9pY3U0Yy9zb3VyY2UnICUgYmlvbmljX2RpcikKLUNoZWNrRGlyRXhpc3RzKGljdV9kaXIsICdleHRlcm5hbC9pY3UvaWN1NGMvc291cmNlJykKKyMgRmluZCB0aGUgaWN1IGRpcmVjdG9yeS4KK2ljdV9kaXIgPSBvcy5wYXRoLnJlYWxwYXRoKCclcy8uLi9leHRlcm5hbC9pY3UnICUgYmlvbmljX2RpcikKK2ljdTRjX2RpciA9IG9zLnBhdGgucmVhbHBhdGgoJyVzL2ljdTRjL3NvdXJjZScgJSBpY3VfZGlyKQoraWN1NGpfZGlyID0gb3MucGF0aC5yZWFscGF0aCgnJXMvaWN1NGonICUgaWN1X2RpcikKK0NoZWNrRGlyRXhpc3RzKGljdTRjX2RpciwgJ2V4dGVybmFsL2ljdS9pY3U0Yy9zb3VyY2UnKQorQ2hlY2tEaXJFeGlzdHMoaWN1NGpfZGlyLCAnZXh0ZXJuYWwvaWN1L2ljdTRqJykKIHByaW50ICdGb3VuZCBpY3UgaW4gJXMgLi4uJyAlIGljdV9kaXIKIAogCkBAIC0xMTYsMTQgKzExOSwxNCBAQAogCiAgICMgQnVpbGQgdGhlIElDVSB0b29scy4KICAgcHJpbnQgJ0NvbmZpZ3VyaW5nIElDVSB0b29scy4uLicKLSAgc3VicHJvY2Vzcy5jaGVja19jYWxsKFsnJXMvcnVuQ29uZmlndXJlSUNVJyAlIGljdV9kaXIsICdMaW51eCddKQorICBzdWJwcm9jZXNzLmNoZWNrX2NhbGwoWyclcy9ydW5Db25maWd1cmVJQ1UnICUgaWN1NGNfZGlyLCAnTGludXgnXSkKIAogICAjIFJ1biB0aGUgSUNVIHRvb2xzLgogICBvcy5jaGRpcigndG9vbHMvdHpjb2RlJykKIAogICAjIFRoZSB0ejJpY3UgdG9vbCBvbmx5IHBpY2tzIHVwIGljdXJlZ2lvbnMgYW5kIGljdXpvbmVzIGluIHRoZXkgYXJlIGluIHRoZSBDV0QKICAgZm9yIGljdV9kYXRhX2ZpbGUgaW4gWyAnaWN1cmVnaW9ucycsICdpY3V6b25lcyddOgotICAgIGljdV9kYXRhX2ZpbGVfc291cmNlID0gJyVzL3Rvb2xzL3R6Y29kZS8lcycgJSAoaWN1X2RpciwgaWN1X2RhdGFfZmlsZSkKKyAgICBpY3VfZGF0YV9maWxlX3NvdXJjZSA9ICclcy90b29scy90emNvZGUvJXMnICUgKGljdTRjX2RpciwgaWN1X2RhdGFfZmlsZSkKICAgICBpY3VfZGF0YV9maWxlX3N5bWxpbmsgPSAnLi8lcycgJSBpY3VfZGF0YV9maWxlCiAgICAgb3Muc3ltbGluayhpY3VfZGF0YV9maWxlX3NvdXJjZSwgaWN1X2RhdGFfZmlsZV9zeW1saW5rKQogCkBAIC0xMzQsMTYgKzEzNywxNiBAQAogICBzdWJwcm9jZXNzLmNoZWNrX2NhbGwoWydtYWtlJ10pCiAKICAgIyBDb3B5IHRoZSBzb3VyY2UgZmlsZSB0byBpdHMgdWx0aW1hdGUgZGVzdGluYXRpb24uCi0gIGljdV90eHRfZGF0YV9kaXIgPSAnJXMvZGF0YS9taXNjJyAlIGljdV9kaXIKKyAgaWN1X3R4dF9kYXRhX2RpciA9ICclcy9kYXRhL21pc2MnICUgaWN1NGNfZGlyCiAgIHByaW50ICdDb3B5aW5nIHpvbmVpbmZvNjQudHh0IHRvICVzIC4uLicgJSBpY3VfdHh0X2RhdGFfZGlyCiAgIHNodXRpbC5jb3B5KCd6b25laW5mbzY0LnR4dCcsIGljdV90eHRfZGF0YV9kaXIpCiAKICAgIyBSZWdlbmVyYXRlIHRoZSAuZGF0IGZpbGUuCiAgIG9zLmNoZGlyKGljdV93b3JraW5nX2RpcikKLSAgc3VicHJvY2Vzcy5jaGVja19jYWxsKFsnbWFrZScsICctajMyJ10pCisgIHN1YnByb2Nlc3MuY2hlY2tfY2FsbChbJ21ha2UnLCAnSU5DTFVERV9VTklfQ09SRV9EQVRBPTEnLCAnLWozMiddKQogCiAgICMgQ29weSB0aGUgLmRhdCBmaWxlIHRvIGl0cyB1bHRpbWF0ZSBkZXN0aW5hdGlvbi4KLSAgaWN1X2RhdF9kYXRhX2RpciA9ICclcy9zdHViZGF0YScgJSBpY3VfZGlyCisgIGljdV9kYXRfZGF0YV9kaXIgPSAnJXMvc3R1YmRhdGEnICUgaWN1NGNfZGlyCiAgIGRhdGZpbGVzID0gZ2xvYi5nbG9iKCdkYXRhL291dC90bXAvaWN1ZHQ/P2wuZGF0JykKICAgaWYgbGVuKGRhdGZpbGVzKSAhPSAxOgogICAgIHByaW50ICdFUlJPUjogVW5leHBlY3RlZGx5IGZvdW5kICVkIC5kYXQgZmlsZXMgKCVzKS4gSGFsdGluZy4nICUgKGxlbihkYXRmaWxlcyksIGRhdGZpbGVzKQpAQCAtMTUyLDYgKzE1NSwyMCBAQAogICBwcmludCAnQ29weWluZyAlcyB0byAlcyAuLi4nICUgKGRhdGZpbGUsIGljdV9kYXRfZGF0YV9kaXIpCiAgIHNodXRpbC5jb3B5KGRhdGZpbGUsIGljdV9kYXRfZGF0YV9kaXIpCiAKKyAgIyBHZW5lcmF0ZSB0aGUgSUNVNEogLmphciBmaWxlcworICBvcy5jaGRpcignJXMvZGF0YScgJSBpY3Vfd29ya2luZ19kaXIpCisgIHN1YnByb2Nlc3MuY2hlY2tfY2FsbChbJ21ha2UnLCAnaWN1NGotZGF0YSddKQorCisgICMgQ29weSB0aGUgSUNVNEogLmphciBmaWxlcyB0byB0aGVpciB1bHRpbWF0ZSBkZXN0aW5hdGlvbi4KKyAgaWN1X2phcl9kYXRhX2RpciA9ICclcy9tYWluL3NoYXJlZC9kYXRhJyAlIGljdTRqX2RpcgorICBqYXJmaWxlcyA9IGdsb2IuZ2xvYignb3V0L2ljdTRqLyouamFyJykKKyAgaWYgbGVuKGphcmZpbGVzKSAhPSAyOgorICAgIHByaW50ICdFUlJPUjogVW5leHBlY3RlZGx5IGZvdW5kICVkIC5qYXIgZmlsZXMgKCVzKS4gSGFsdGluZy4nICUgKGxlbihqYXJmaWxlcyksIGphcmZpbGVzKQorICAgIHN5cy5leGl0KDEpCisgIGZvciBqYXJmaWxlIGluIGphcmZpbGVzOgorICAgIHByaW50ICdDb3B5aW5nICVzIHRvICVzIC4uLicgJSAoamFyZmlsZSwgaWN1X2phcl9kYXRhX2RpcikKKyAgICBzaHV0aWwuY29weShqYXJmaWxlLCBpY3VfamFyX2RhdGFfZGlyKQorCiAgICMgU3dpdGNoIGJhY2sgdG8gdGhlIG9yaWdpbmFsIHdvcmtpbmcgY3dkLgogICBvcy5jaGRpcihvcmlnaW5hbF93b3JraW5nX2RpcikKIApkaWZmIC0tZ2l0IGEvbGliYy90emNvZGUvYXNjdGltZS5jIGIvbGliYy90emNvZGUvYXNjdGltZS5jCmluZGV4IDE1MmIwZGIuLmZlYTI0ZTQgMTAwNjQ0Ci0tLSBhL2xpYmMvdHpjb2RlL2FzY3RpbWUuYworKysgYi9saWJjL3R6Y29kZS9hc2N0aW1lLmMKQEAgLTEwMyw3ICsxMDMsNyBAQAogCS8qCiAJKiogV2UgYXZvaWQgdXNpbmcgc25wcmludGYgc2luY2UgaXQncyBub3QgYXZhaWxhYmxlIG9uIGFsbCBzeXN0ZW1zLgogCSovCi0JKHZvaWQpIHNwcmludGYocmVzdWx0LAorCSh2b2lkKSBzbnByaW50ZihyZXN1bHQsIHNpemVvZihyZXN1bHQpLCAvKiBBbmRyb2lkIGNoYW5nZTogdXNlIHNucHJpbnRmLiAqLwogCQkoKHN0cmxlbih5ZWFyKSA8PSA0KSA/IEFTQ1RJTUVfRk1UIDogQVNDVElNRV9GTVRfQiksCiAJCXduLCBtbiwKIAkJdGltZXB0ci0+dG1fbWRheSwgdGltZXB0ci0+dG1faG91ciwKZGlmZiAtLWdpdCBhL2xpYmMvdHpjb2RlL2xvY2FsdGltZS5jIGIvbGliYy90emNvZGUvbG9jYWx0aW1lLmMKaW5kZXggMjhkMTNmNC4uYmYwOWM1ZSAxMDA2NDQKLS0tIGEvbGliYy90emNvZGUvbG9jYWx0aW1lLmMKKysrIGIvbGliYy90emNvZGUvbG9jYWx0aW1lLmMKQEAgLTEyNTcsNiArMTI1Nyw3IEBACiAgICAgICAgIGxjbHB0ci0+dHRpc1swXS50dF9nbXRvZmYgPSAwOwogICAgICAgICBsY2xwdHItPnR0aXNbMF0udHRfYWJicmluZCA9IDA7CiAgICAgICAgICh2b2lkKSBzdHJjcHkobGNscHRyLT5jaGFycywgZ210KTsKKyAgICAgICAgbGNscHRyLT5kZWZhdWx0dHlwZSA9IDA7CiAgICAgfSBlbHNlIGlmICh0emxvYWQobmFtZSwgbGNscHRyLCBUUlVFKSAhPSAwKQogICAgICAgICBpZiAobmFtZVswXSA9PSAnOicgfHwgdHpwYXJzZShuYW1lLCBsY2xwdHIsIEZBTFNFKSAhPSAwKQogICAgICAgICAgICAgKHZvaWQpIGdtdGxvYWQobGNscHRyKTsKQEAgLTIyNTIsMTEgKzIyNTMsMTQgQEAKIH0KIAogc3RhdGljIGludCBfX2Jpb25pY19vcGVuX3R6ZGF0YShjb25zdCBjaGFyKiBvbHNvbl9pZCwgaW50KiBkYXRhX3NpemUpIHsKLSAgaW50IGZkID0gX19iaW9uaWNfb3Blbl90emRhdGFfcGF0aCgiQU5EUk9JRF9ST09UIiwgIi91c3Ivc2hhcmUvem9uZWluZm8vdHpkYXRhIiwgb2xzb25faWQsIGRhdGFfc2l6ZSk7Ci0gIGlmIChmZCA9PSAtMikgewotICAgIC8vIFRoZSBmaXJzdCB0aGluZyB0aGF0ICdyZWNvdmVyeScgZG9lcyBpcyB0cnkgdG8gZm9ybWF0IHRoZSBjdXJyZW50IHRpbWUuIEl0IGRvZXNuJ3QgaGF2ZQotICAgIC8vIGFueSB0emRhdGEgYXZhaWxhYmxlLCBzbyB3ZSBtdXN0IG5vdCBhYm9ydCBoZXJlIC0tLSBkb2luZyBzbyBicmVha3MgdGhlIHJlY292ZXJ5IGltYWdlIQotICAgIGZwcmludGYoc3RkZXJyLCAiJXM6IGNvdWxkbid0IGZpbmQgYW55IHR6ZGF0YSB3aGVuIGxvb2tpbmcgZm9yICVzIVxuIiwgX19GVU5DVElPTl9fLCBvbHNvbl9pZCk7CisgIGludCBmZCA9IF9fYmlvbmljX29wZW5fdHpkYXRhX3BhdGgoIkFORFJPSURfREFUQSIsICIvbWlzYy96b25laW5mby9jdXJyZW50L3R6ZGF0YSIsIG9sc29uX2lkLCBkYXRhX3NpemUpOworICBpZiAoZmQgPCAwKSB7CisgICAgZmQgPSBfX2Jpb25pY19vcGVuX3R6ZGF0YV9wYXRoKCJBTkRST0lEX1JPT1QiLCAiL3Vzci9zaGFyZS96b25laW5mby90emRhdGEiLCBvbHNvbl9pZCwgZGF0YV9zaXplKTsKKyAgICBpZiAoZmQgPT0gLTIpIHsKKyAgICAgIC8vIFRoZSBmaXJzdCB0aGluZyB0aGF0ICdyZWNvdmVyeScgZG9lcyBpcyB0cnkgdG8gZm9ybWF0IHRoZSBjdXJyZW50IHRpbWUuIEl0IGRvZXNuJ3QgaGF2ZQorICAgICAgLy8gYW55IHR6ZGF0YSBhdmFpbGFibGUsIHNvIHdlIG11c3Qgbm90IGFib3J0IGhlcmUgLS0tIGRvaW5nIHNvIGJyZWFrcyB0aGUgcmVjb3ZlcnkgaW1hZ2UhCisgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBjb3VsZG4ndCBmaW5kIGFueSB0emRhdGEgd2hlbiBsb29raW5nIGZvciAlcyFcbiIsIF9fRlVOQ1RJT05fXywgb2xzb25faWQpOworICAgIH0KICAgfQogICByZXR1cm4gZmQ7CiB9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLWZyZWVic2QvYW5kcm9pZC9pbmNsdWRlL2ZyZWVic2QtY29tcGF0LmggYi9saWJjL3Vwc3RyZWFtLWZyZWVic2QvYW5kcm9pZC9pbmNsdWRlL2ZyZWVic2QtY29tcGF0LmgKaW5kZXggZDVmMTQyNS4uN2FjZGY3YyAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1mcmVlYnNkL2FuZHJvaWQvaW5jbHVkZS9mcmVlYnNkLWNvbXBhdC5oCisrKyBiL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9hbmRyb2lkL2luY2x1ZGUvZnJlZWJzZC1jb21wYXQuaApAQCAtMTcsNyArMTcsNyBAQAogI2lmbmRlZiBfQklPTklDX0ZSRUVCU0RfQ09NUEFUX0hfaW5jbHVkZWQKICNkZWZpbmUgX0JJT05JQ19GUkVFQlNEX0NPTVBBVF9IX2luY2x1ZGVkCiAKLSNkZWZpbmUgX19VU0VfQlNECisjZGVmaW5lIF9CU0RfU09VUkNFCiAjZGVmaW5lIFJFUExBQ0VfR0VUT1BUCiAKIC8qCkBAIC0zOCwxNyArMzgsNiBAQAogI2RlZmluZSBfX3VzbGVlcCB1c2xlZXAKIAogLyogUmVkaXJlY3QgaW50ZXJuYWwgQyBsaWJyYXJ5IGNhbGxzIHRvIHRoZSBwdWJsaWMgZnVuY3Rpb24uICovCi0jZGVmaW5lIF9jbG9zZSBjbG9zZQotI2RlZmluZSBfZmNudGwgZmNudGwKLSNkZWZpbmUgX2ZzdGF0IGZzdGF0CiAjZGVmaW5lIF9uYW5vc2xlZXAgbmFub3NsZWVwCi0jZGVmaW5lIF9vcGVuIG9wZW4KLQotLyogVGhpcyBvbmUgaXMgb25seSBuZWVkZWQgYXMgbG9uZyBhcyB3ZSBoYXZlIGEgbWl4IG9mIE9wZW5CU0QgYW5kIEZyZWVCU0Qgc3RkaW8uICovCi0jZGVmaW5lIF9zc2VlayBfX3NzZWVrCi0KLS8qIFRoaXMgaXMgaW4gQlNEJ3MgPHN0ZGxpYi5oPi4gKi8KLSNpbmNsdWRlIDxzdGRpbnQuaD4KLWV4dGVybiB1aW50MzJfdCBhcmM0cmFuZG9tX3VuaWZvcm0odWludDMyX3QgdXBwZXJfYm91bmQpOwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9hbmRyb2lkL2luY2x1ZGUvbGliY19wcml2YXRlLmggYi9saWJjL3Vwc3RyZWFtLWZyZWVic2QvYW5kcm9pZC9pbmNsdWRlL2xpYmNfcHJpdmF0ZS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjNmE2NDMzLi4wMDAwMDAwCi0tLSBhL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9hbmRyb2lkL2luY2x1ZGUvbGliY19wcml2YXRlLmgKKysrIC9kZXYvbnVsbApAQCAtMSwyNSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLQotI2lmbmRlZiBfQklPTklDX0ZSRUVCU0RfTElCQ19QUklWQVRFX0hfaW5jbHVkZWQKLSNkZWZpbmUgX0JJT05JQ19GUkVFQlNEX0xJQkNfUFJJVkFURV9IX2luY2x1ZGVkCi0KLSNkZWZpbmUgU1RESU9fVEhSRUFEX0xPQ0soKSAgIC8qIFRPRE86IHVudGlsIHdlIGhhdmUgdGhlIEZyZWVCU0QgZmluZGZwLmMsIHRoaXMgaXMgdXNlbGVzcy4gKi8KLSNkZWZpbmUgU1RESU9fVEhSRUFEX1VOTE9DSygpIC8qIFRPRE86IHVudGlsIHdlIGhhdmUgdGhlIEZyZWVCU0QgZmluZGZwLmMsIHRoaXMgaXMgdXNlbGVzcy4gKi8KLQotI2RlZmluZSBPUklFTlQoZnAsIG8pIC8qIE9ubHkgbmVlZGVkIGZvciB3aWRlLWNoYXJhY3RlciBzdHJlYW0gc3VwcG9ydC4gKi8KLQotI2VuZGlmCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkaW8vZmNsb3NlLmMgYi9saWJjL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkaW8vZmNsb3NlLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVlZDhiMmMuLjAwMDAwMDAKLS0tIGEvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0ZGlvL2ZjbG9zZS5jCisrKyAvZGV2L251bGwKQEAgLTEsODUgKzAsMCBAQAotLyotCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKLSAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKLSAqIENocmlzIFRvcmVrLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWYgZGVmaW5lZChMSUJDX1NDQ1MpICYmICFkZWZpbmVkKGxpbnQpCi1zdGF0aWMgY2hhciBzY2NzaWRbXSA9ICJAKCMpZmNsb3NlLmMJOC4xIChCZXJrZWxleSkgNi80LzkzIjsKLSNlbmRpZiAvKiBMSUJDX1NDQ1MgYW5kIG5vdCBsaW50ICovCi0jaW5jbHVkZSA8c3lzL2NkZWZzLmg+Ci1fX0ZCU0RJRCgiJEZyZWVCU0QkIik7Ci0KLSNpbmNsdWRlICJuYW1lc3BhY2UuaCIKLSNpbmNsdWRlIDxlcnJuby5oPgotI2luY2x1ZGUgPHN0ZGlvLmg+Ci0jaW5jbHVkZSA8c3RkbGliLmg+Ci0jaW5jbHVkZSAidW4tbmFtZXNwYWNlLmgiCi0jaW5jbHVkZSA8c3BpbmxvY2suaD4KLSNpbmNsdWRlICJsaWJjX3ByaXZhdGUuaCIKLSNpbmNsdWRlICJsb2NhbC5oIgotCi1pbnQKLWZjbG9zZShGSUxFICpmcCkKLXsKLQlpbnQgcjsKLQotCWlmIChmcC0+X2ZsYWdzID09IDApIHsJLyogbm90IG9wZW4hICovCi0JCWVycm5vID0gRUJBREY7Ci0JCXJldHVybiAoRU9GKTsKLQl9Ci0JRkxPQ0tGSUxFKGZwKTsKLQlyID0gZnAtPl9mbGFncyAmIF9fU1dSID8gX19zZmx1c2goZnApIDogMDsKLQlpZiAoZnAtPl9jbG9zZSAhPSBOVUxMICYmICgqZnAtPl9jbG9zZSkoZnAtPl9jb29raWUpIDwgMCkKLQkJciA9IEVPRjsKLQlpZiAoZnAtPl9mbGFncyAmIF9fU01CRikKLQkJZnJlZSgoY2hhciAqKWZwLT5fYmYuX2Jhc2UpOwotCWlmIChIQVNVQihmcCkpCi0JCUZSRUVVQihmcCk7Ci0JaWYgKEhBU0xCKGZwKSkKLQkJRlJFRUxCKGZwKTsKLQlmcC0+X2ZpbGUgPSAtMTsKLQlmcC0+X3IgPSBmcC0+X3cgPSAwOwkvKiBNZXNzIHVwIGlmIHJlYWNjZXNzZWQuICovCi0KLQkvKgotCSAqIExvY2sgdGhlIHNwaW5sb2NrIHVzZWQgdG8gcHJvdGVjdCBfX3NnbHVlIGxpc3Qgd2FsayBpbgotCSAqIF9fc2ZwKCkuICBUaGUgX19zZnAoKSB1c2VzIGZwLT5fZmxhZ3MgPT0gMCB0ZXN0IGFzIGFuCi0JICogaW5kaWNhdGlvbiBvZiB0aGUgdW51c2VkIEZJTEUuCi0JICoKLQkgKiBUYWtpbmcgdGhlIGxvY2sgcHJldmVudHMgcG9zc2libGUgY29tcGlsZXIgb3IgcHJvY2Vzc29yCi0JICogcmVvcmRlcmluZyBvZiB0aGUgd3JpdGVzIHBlcmZvcm1lZCBiZWZvcmUgdGhlIGZpbmFsIF9mbGFncwotCSAqIGNsZWFudXAsIG1ha2luZyBzdXJlIHRoYXQgd2UgYXJlIGRvbmUgd2l0aCB0aGUgRklMRSBiZWZvcmUKLQkgKiBpdCBpcyBjb25zaWRlcmVkIGF2YWlsYWJsZS4KLQkgKi8KLQlTVERJT19USFJFQURfTE9DSygpOwotCWZwLT5fZmxhZ3MgPSAwOwkJLyogUmVsZWFzZSB0aGlzIEZJTEUgZm9yIHJldXNlLiAqLwotCVNURElPX1RIUkVBRF9VTkxPQ0soKTsKLQlGVU5MT0NLRklMRShmcCk7Ci0JcmV0dXJuIChyKTsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRpby9mbGFncy5jIGIvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0ZGlvL2ZsYWdzLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE4NzhjMmYuLjAwMDAwMDAKLS0tIGEvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0ZGlvL2ZsYWdzLmMKKysrIC9kZXYvbnVsbApAQCAtMSwxMTIgKzAsMCBAQAotLyotCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKLSAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKLSAqIENocmlzIFRvcmVrLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWYgZGVmaW5lZChMSUJDX1NDQ1MpICYmICFkZWZpbmVkKGxpbnQpCi1zdGF0aWMgY2hhciBzY2NzaWRbXSA9ICJAKCMpZmxhZ3MuYwk4LjEgKEJlcmtlbGV5KSA2LzQvOTMiOwotI2VuZGlmIC8qIExJQkNfU0NDUyBhbmQgbm90IGxpbnQgKi8KLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLV9fRkJTRElEKCIkRnJlZUJTRCQiKTsKLQotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPHN5cy9maWxlLmg+Ci0jaW5jbHVkZSA8c3RkaW8uaD4KLSNpbmNsdWRlIDxlcnJuby5oPgotCi0jaW5jbHVkZSAibG9jYWwuaCIKLQotLyoKLSAqIFJldHVybiB0aGUgKHN0ZGlvKSBmbGFncyBmb3IgYSBnaXZlbiBtb2RlLiAgU3RvcmUgdGhlIGZsYWdzCi0gKiB0byBiZSBwYXNzZWQgdG8gYW4gX29wZW4oKSBzeXNjYWxsIHRocm91Z2ggKm9wdHIuCi0gKiBSZXR1cm4gMCBvbiBlcnJvci4KLSAqLwotaW50Ci1fX3NmbGFncyhjb25zdCBjaGFyICptb2RlLCBpbnQgKm9wdHIpCi17Ci0JaW50IHJldCwgbSwgbzsKLQotCXN3aXRjaCAoKm1vZGUrKykgewotCi0JY2FzZSAncic6CS8qIG9wZW4gZm9yIHJlYWRpbmcgKi8KLQkJcmV0ID0gX19TUkQ7Ci0JCW0gPSBPX1JET05MWTsKLQkJbyA9IDA7Ci0JCWJyZWFrOwotCi0JY2FzZSAndyc6CS8qIG9wZW4gZm9yIHdyaXRpbmcgKi8KLQkJcmV0ID0gX19TV1I7Ci0JCW0gPSBPX1dST05MWTsKLQkJbyA9IE9fQ1JFQVQgfCBPX1RSVU5DOwotCQlicmVhazsKLQotCWNhc2UgJ2EnOgkvKiBvcGVuIGZvciBhcHBlbmRpbmcgKi8KLQkJcmV0ID0gX19TV1I7Ci0JCW0gPSBPX1dST05MWTsKLQkJbyA9IE9fQ1JFQVQgfCBPX0FQUEVORDsKLQkJYnJlYWs7Ci0KLQlkZWZhdWx0OgkvKiBpbGxlZ2FsIG1vZGUgKi8KLQkJZXJybm8gPSBFSU5WQUw7Ci0JCXJldHVybiAoMCk7Ci0JfQotCi0JLyogJ2InIChiaW5hcnkpIGlzIGlnbm9yZWQgKi8KLQlpZiAoKm1vZGUgPT0gJ2InKQotCQltb2RlKys7Ci0KLQkvKiBbcndhXVtiXVwrIG1lYW5zIHJlYWQgYW5kIHdyaXRlICovCi0JaWYgKCptb2RlID09ICcrJykgewotCQltb2RlKys7Ci0JCXJldCA9IF9fU1JXOwotCQltID0gT19SRFdSOwotCX0KLQotCS8qICdiJyAoYmluYXJ5KSBjYW4gYXBwZWFyIGhlcmUsIHRvbyAtLSBhbmQgaXMgaWdub3JlZCBhZ2FpbiAqLwotCWlmICgqbW9kZSA9PSAnYicpCi0JCW1vZGUrKzsKLQotCS8qICd4JyBtZWFucyBleGNsdXNpdmUgKGZhaWwgaWYgdGhlIGZpbGUgZXhpc3RzKSAqLwotCWlmICgqbW9kZSA9PSAneCcpIHsKLQkJbW9kZSsrOwotCQlpZiAobSA9PSBPX1JET05MWSkgewotCQkJZXJybm8gPSBFSU5WQUw7Ci0JCQlyZXR1cm4gKDApOwotCQl9Ci0JCW8gfD0gT19FWENMOwotCX0KLQotCS8qIHNldCBjbG9zZS1vbi1leGVjICovCi0JaWYgKCptb2RlID09ICdlJykKLQkJbyB8PSBPX0NMT0VYRUM7Ci0KLQkqb3B0ciA9IG0gfCBvOwotCXJldHVybiAocmV0KTsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRpby9mb3Blbi5jIGIvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0ZGlvL2ZvcGVuLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIwOGUzMzYuLjAwMDAwMDAKLS0tIGEvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0ZGlvL2ZvcGVuLmMKKysrIC9kZXYvbnVsbApAQCAtMSw5NyArMCwwIEBACi0vKi0KLSAqIENvcHlyaWdodCAoYykgMTk5MCwgMTk5MwotICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQotICogQ2hyaXMgVG9yZWsuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCi0gKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAotICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZiBkZWZpbmVkKExJQkNfU0NDUykgJiYgIWRlZmluZWQobGludCkKLXN0YXRpYyBjaGFyIHNjY3NpZFtdID0gIkAoIylmb3Blbi5jCTguMSAoQmVya2VsZXkpIDYvNC85MyI7Ci0jZW5kaWYgLyogTElCQ19TQ0NTIGFuZCBub3QgbGludCAqLwotI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgotX19GQlNESUQoIiRGcmVlQlNEJCIpOwotCi0jaW5jbHVkZSAibmFtZXNwYWNlLmgiCi0jaW5jbHVkZSA8c3lzL3R5cGVzLmg+Ci0jaW5jbHVkZSA8c3lzL3N0YXQuaD4KLSNpbmNsdWRlIDxmY250bC5oPgotI2luY2x1ZGUgPHVuaXN0ZC5oPgotI2luY2x1ZGUgPHN0ZGlvLmg+Ci0jaW5jbHVkZSA8ZXJybm8uaD4KLSNpbmNsdWRlIDxsaW1pdHMuaD4KLSNpbmNsdWRlICJ1bi1uYW1lc3BhY2UuaCIKLQotI2luY2x1ZGUgImxvY2FsLmgiCi0KLUZJTEUgKgotZm9wZW4oY29uc3QgY2hhciAqIF9fcmVzdHJpY3QgZmlsZSwgY29uc3QgY2hhciAqIF9fcmVzdHJpY3QgbW9kZSkKLXsKLQlGSUxFICpmcDsKLQlpbnQgZjsKLQlpbnQgZmxhZ3MsIG9mbGFnczsKLQotCWlmICgoZmxhZ3MgPSBfX3NmbGFncyhtb2RlLCAmb2ZsYWdzKSkgPT0gMCkKLQkJcmV0dXJuIChOVUxMKTsKLQlpZiAoKGZwID0gX19zZnAoKSkgPT0gTlVMTCkKLQkJcmV0dXJuIChOVUxMKTsKLQlpZiAoKGYgPSBfb3BlbihmaWxlLCBvZmxhZ3MsIERFRkZJTEVNT0RFKSkgPCAwKSB7Ci0JCWZwLT5fZmxhZ3MgPSAwOwkJCS8qIHJlbGVhc2UgKi8KLQkJcmV0dXJuIChOVUxMKTsKLQl9Ci0JLyoKLQkgKiBGaWxlIGRlc2NyaXB0b3JzIGFyZSBhIGZ1bGwgaW50LCBidXQgX2ZpbGUgaXMgb25seSBhIHNob3J0LgotCSAqIElmIHdlIGdldCBhIHZhbGlkIGZpbGUgZGVzY3JpcHRvciB0aGF0IGlzIGdyZWF0ZXIgdGhhbgotCSAqIFNIUlRfTUFYLCB0aGVuIHRoZSBmZCB3aWxsIGdldCBzaWduLWV4dGVuZGVkIGludG8gYW4KLQkgKiBpbnZhbGlkIGZpbGUgZGVzY3JpcHRvci4gIEhhbmRsZSB0aGlzIGNhc2UgYnkgZmFpbGluZyB0aGUKLQkgKiBvcGVuLgotCSAqLwotCWlmIChmID4gU0hSVF9NQVgpIHsKLQkJZnAtPl9mbGFncyA9IDA7CQkJLyogcmVsZWFzZSAqLwotCQlfY2xvc2UoZik7Ci0JCWVycm5vID0gRU1GSUxFOwotCQlyZXR1cm4gKE5VTEwpOwotCX0KLQlmcC0+X2ZpbGUgPSBmOwotCWZwLT5fZmxhZ3MgPSBmbGFnczsKLQlmcC0+X2Nvb2tpZSA9IGZwOwotCWZwLT5fcmVhZCA9IF9fc3JlYWQ7Ci0JZnAtPl93cml0ZSA9IF9fc3dyaXRlOwotCWZwLT5fc2VlayA9IF9fc3NlZWs7Ci0JZnAtPl9jbG9zZSA9IF9fc2Nsb3NlOwotCS8qCi0JICogV2hlbiBvcGVuaW5nIGluIGFwcGVuZCBtb2RlLCBldmVuIHRob3VnaCB3ZSB1c2UgT19BUFBFTkQsCi0JICogd2UgbmVlZCB0byBzZWVrIHRvIHRoZSBlbmQgc28gdGhhdCBmdGVsbCgpIGdldHMgdGhlIHJpZ2h0Ci0JICogYW5zd2VyLiAgSWYgdGhlIHVzZXIgdGhlbiBhbHRlcnMgdGhlIHNlZWsgcG9pbnRlciwgb3IKLQkgKiB0aGUgZmlsZSBleHRlbmRzLCB0aGlzIHdpbGwgZmFpbCwgYnV0IHRoZXJlIGlzIG5vdCBtdWNoCi0JICogd2UgY2FuIGRvIGFib3V0IHRoaXMuICAoV2UgY291bGQgc2V0IF9fU0FQUCBhbmQgY2hlY2sgaW4KLQkgKiBmc2VlayBhbmQgZnRlbGwuKQotCSAqLwotCWlmIChvZmxhZ3MgJiBPX0FQUEVORCkKLQkJKHZvaWQpX3NzZWVrKGZwLCAoZnBvc190KTAsIFNFRUtfRU5EKTsKLQlyZXR1cm4gKGZwKTsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRsaWIvZ2V0b3B0X2xvbmcuYyBiL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRsaWIvZ2V0b3B0X2xvbmcuYwppbmRleCA5ZjdmNmQ1Li45NTM0YTJhIDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkbGliL2dldG9wdF9sb25nLmMKKysrIGIvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0ZGxpYi9nZXRvcHRfbG9uZy5jCkBAIC0xLDQgKzEsNCBAQAotLyoJJE9wZW5CU0Q6IGdldG9wdF9sb25nLmMsdiAxLjIyIDIwMDYvMTAvMDQgMjE6Mjk6MDQgam1jIEV4cCAkCSovCisvKgkkT3BlbkJTRDogZ2V0b3B0X2xvbmcuYyx2IDEuMjYgMjAxMy8wNi8wOCAyMjo0Nzo1NiBtaWxsZXJ0IEV4cCAkCSovCiAvKgkkTmV0QlNEOiBnZXRvcHRfbG9uZy5jLHYgMS4xNSAyMDAyLzAxLzMxIDIyOjQzOjQwIHR2IEV4cCAkCSovCiAKIC8qCkBAIC0yNDgsNyArMjQ4LDcgQEAKIAkJaWYgKHNob3J0X3RvbyAmJiBjdXJyZW50X2FyZ3ZfbGVuID09IDEpCiAJCQljb250aW51ZTsKIAotCQlpZiAobWF0Y2ggPT0gLTEpICAgICAgICAvKiBmaXJzdCBwYXJ0aWFsIG1hdGNoICovCisJCWlmIChtYXRjaCA9PSAtMSkJLyogZmlyc3QgcGFydGlhbCBtYXRjaCAqLwogCQkJbWF0Y2ggPSBpOwogCQllbHNlIGlmICgoZmxhZ3MgJiBGTEFHX0xPTkdPTkxZKSB8fAogCQkJIGxvbmdfb3B0aW9uc1tpXS5oYXNfYXJnICE9CkBAIC0zNTksMzcgKzM1OSwzMSBAQAogewogCWNoYXIgKm9saTsJCQkJLyogb3B0aW9uIGxldHRlciBsaXN0IGluZGV4ICovCiAJaW50IG9wdGNoYXIsIHNob3J0X3RvbzsKLQlpbnQgcG9zaXhseV9jb3JyZWN0OwkvKiBubyBzdGF0aWMsIGNhbiBiZSBjaGFuZ2VkIG9uIHRoZSBmbHkgKi8KKwlzdGF0aWMgaW50IHBvc2l4bHlfY29ycmVjdCA9IC0xOwogCiAJaWYgKG9wdGlvbnMgPT0gTlVMTCkKIAkJcmV0dXJuICgtMSk7CiAKIAkvKgotCSAqIERpc2FibGUgR05VIGV4dGVuc2lvbnMgaWYgUE9TSVhMWV9DT1JSRUNUIGlzIHNldCBvciBvcHRpb25zCi0JICogc3RyaW5nIGJlZ2lucyB3aXRoIGEgJysnLgotCSAqLwotCXBvc2l4bHlfY29ycmVjdCA9IChnZXRlbnYoIlBPU0lYTFlfQ09SUkVDVCIpICE9IE5VTEwpOwotI2lmZGVmIEdOVV9DT01QQVRJQkxFCi0JaWYgKCpvcHRpb25zID09ICctJykKLQkJZmxhZ3MgfD0gRkxBR19BTExBUkdTOwotCWVsc2UgaWYgKHBvc2l4bHlfY29ycmVjdCB8fCAqb3B0aW9ucyA9PSAnKycpCi0JCWZsYWdzICY9IH5GTEFHX1BFUk1VVEU7Ci0jZWxzZQotCWlmIChwb3NpeGx5X2NvcnJlY3QgfHwgKm9wdGlvbnMgPT0gJysnKQotCQlmbGFncyAmPSB+RkxBR19QRVJNVVRFOwotCWVsc2UgaWYgKCpvcHRpb25zID09ICctJykKLQkJZmxhZ3MgfD0gRkxBR19BTExBUkdTOwotI2VuZGlmCi0JaWYgKCpvcHRpb25zID09ICcrJyB8fCAqb3B0aW9ucyA9PSAnLScpCi0JCW9wdGlvbnMrKzsKLQotCS8qCiAJICogWFhYIFNvbWUgR05VIHByb2dyYW1zIChsaWtlIGN2cykgc2V0IG9wdGluZCB0byAwIGluc3RlYWQgb2YKIAkgKiBYWFggdXNpbmcgb3B0cmVzZXQuICBXb3JrIGFyb3VuZCB0aGlzIGJyYWluZGFtYWdlLgogCSAqLwogCWlmIChvcHRpbmQgPT0gMCkKIAkJb3B0aW5kID0gb3B0cmVzZXQgPSAxOwogCisJLyoKKwkgKiBEaXNhYmxlIEdOVSBleHRlbnNpb25zIGlmIFBPU0lYTFlfQ09SUkVDVCBpcyBzZXQgb3Igb3B0aW9ucworCSAqIHN0cmluZyBiZWdpbnMgd2l0aCBhICcrJy4KKwkgKi8KKwlpZiAocG9zaXhseV9jb3JyZWN0ID09IC0xIHx8IG9wdHJlc2V0KQorCQlwb3NpeGx5X2NvcnJlY3QgPSAoZ2V0ZW52KCJQT1NJWExZX0NPUlJFQ1QiKSAhPSBOVUxMKTsKKwlpZiAoKm9wdGlvbnMgPT0gJy0nKQorCQlmbGFncyB8PSBGTEFHX0FMTEFSR1M7CisJZWxzZSBpZiAocG9zaXhseV9jb3JyZWN0IHx8ICpvcHRpb25zID09ICcrJykKKwkJZmxhZ3MgJj0gfkZMQUdfUEVSTVVURTsKKwlpZiAoKm9wdGlvbnMgPT0gJysnIHx8ICpvcHRpb25zID09ICctJykKKwkJb3B0aW9ucysrOworCiAJb3B0YXJnID0gTlVMTDsKIAlpZiAob3B0cmVzZXQpCiAJCW5vbm9wdF9zdGFydCA9IG5vbm9wdF9lbmQgPSAtMTsKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRsaWIvcmVhbHBhdGguYyBiL2xpYmMvdXBzdHJlYW0tZnJlZWJzZC9saWIvbGliYy9zdGRsaWIvcmVhbHBhdGguYwppbmRleCA4ZmQ1NDU3Li5jNGJkOTUzIDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RkbGliL3JlYWxwYXRoLmMKKysrIGIvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0ZGxpYi9yZWFscGF0aC5jCkBAIC0xMzIsMjYgKzEzMiw3IEBACiAJCQlyZXNvbHZlZFtyZXNvbHZlZF9sZW5dID0gJ1wwJzsKIAkJfQogCQlpZiAobmV4dF90b2tlblswXSA9PSAnXDAnKSB7Ci0JCQkvKgotCQkJICogSGFuZGxlIGNvbnNlcXVlbnRpYWwgc2xhc2hlcy4gIFRoZSBwYXRoCi0JCQkgKiBiZWZvcmUgc2xhc2ggc2hhbGwgcG9pbnQgdG8gYSBkaXJlY3RvcnkuCi0JCQkgKgotCQkJICogT25seSB0aGUgdHJhaWxpbmcgc2xhc2hlcyBhcmUgbm90IGNvdmVyZWQKLQkJCSAqIGJ5IG90aGVyIGNoZWNrcyBpbiB0aGUgbG9vcCwgYnV0IHdlIHZlcmlmeQotCQkJICogdGhlIHByZWZpeCBmb3IgYW55IChyYXJlKSAiLy8iIG9yICIvXDAiCi0JCQkgKiBvY2N1cmVuY2UgdG8gbm90IGltcGxlbWVudCBsb29rYWhlYWQuCi0JCQkgKi8KLQkJCWlmIChsc3RhdChyZXNvbHZlZCwgJnNiKSAhPSAwKSB7Ci0JCQkJaWYgKG0pCi0JCQkJCWZyZWUocmVzb2x2ZWQpOwotCQkJCXJldHVybiAoTlVMTCk7Ci0JCQl9Ci0JCQlpZiAoIVNfSVNESVIoc2Iuc3RfbW9kZSkpIHsKLQkJCQlpZiAobSkKLQkJCQkJZnJlZShyZXNvbHZlZCk7Ci0JCQkJZXJybm8gPSBFTk9URElSOwotCQkJCXJldHVybiAoTlVMTCk7Ci0JCQl9CisJCQkvKiBIYW5kbGUgY29uc2VxdWVudGlhbCBzbGFzaGVzLiAqLwogCQkJY29udGludWU7CiAJCX0KIAkJZWxzZSBpZiAoc3RyY21wKG5leHRfdG9rZW4sICIuIikgPT0gMCkKQEAgLTIzNiw2ICsyMTcsMTEgQEAKIAkJCQl9CiAJCQl9CiAJCQlsZWZ0X2xlbiA9IHN0cmxjcHkobGVmdCwgc3ltbGluaywgc2l6ZW9mKGxlZnQpKTsKKwkJfSBlbHNlIGlmICghU19JU0RJUihzYi5zdF9tb2RlKSAmJiBwICE9IE5VTEwpIHsKKwkJCWlmIChtKQorCQkJCWZyZWUocmVzb2x2ZWQpOworCQkJZXJybm8gPSBFTk9URElSOworCQkJcmV0dXJuIChOVUxMKTsKIAkJfQogCX0KIApkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1mcmVlYnNkL2xpYi9saWJjL3N0cmluZy93bWVtY3B5LmMgYi9saWJjL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RyaW5nL3dtZW1jcHkuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzEwNzcwYy4uMDAwMDAwMAotLS0gYS9saWJjL3Vwc3RyZWFtLWZyZWVic2QvbGliL2xpYmMvc3RyaW5nL3dtZW1jcHkuYworKysgL2Rldi9udWxsCkBAIC0xLDQ0ICswLDAgQEAKLS8qLQotICogQ29weXJpZ2h0IChjKTE5OTkgQ2l0cnVzIFByb2plY3QsCi0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICoKLSAqCWNpdHJ1cyBJZDogd21lbWNweS5jLHYgMS4yIDIwMDAvMTIvMjAgMTQ6MDg6MzEgaXRvanVuIEV4cAotICovCi0KLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLSNpZiAwCi0jaWYgZGVmaW5lZChMSUJDX1NDQ1MpICYmICFkZWZpbmVkKGxpbnQpCi1fX1JDU0lEKCIkTmV0QlNEOiB3bWVtY3B5LmMsdiAxLjEgMjAwMC8xMi8yMyAyMzoxNDozNyBpdG9qdW4gRXhwICQiKTsKLSNlbmRpZiAvKiBMSUJDX1NDQ1MgYW5kIG5vdCBsaW50ICovCi0jZW5kaWYKLV9fRkJTRElEKCIkRnJlZUJTRCQiKTsKLQotI2luY2x1ZGUgPHN0cmluZy5oPgotI2luY2x1ZGUgPHdjaGFyLmg+Ci0KLXdjaGFyX3QgKgotd21lbWNweSh3Y2hhcl90ICogX19yZXN0cmljdCBkLCBjb25zdCB3Y2hhcl90ICogX19yZXN0cmljdCBzLCBzaXplX3QgbikKLXsKLQlyZXR1cm4gKHdjaGFyX3QgKiltZW1jcHkoZCwgcywgbiAqIHNpemVvZih3Y2hhcl90KSk7Ci19CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW5ldGJzZC9hbmRyb2lkL2luY2x1ZGUvZmRfc2V0c2l6ZS5oIGIvbGliYy91cHN0cmVhbS1uZXRic2QvYW5kcm9pZC9pbmNsdWRlL2ZkX3NldHNpemUuaAppbmRleCBlNjlkZTI5Li40MWJmY2I3IDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW5ldGJzZC9hbmRyb2lkL2luY2x1ZGUvZmRfc2V0c2l6ZS5oCisrKyBiL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2FuZHJvaWQvaW5jbHVkZS9mZF9zZXRzaXplLmgKQEAgLTAsMCArMSBAQAorI2luY2x1ZGUgPHN5cy9zZWxlY3QuaD4KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2FuZHJvaWQvaW5jbHVkZS9uYW1lc3BhY2UuaCBiL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2FuZHJvaWQvaW5jbHVkZS9uYW1lc3BhY2UuaAppbmRleCA1ZGY1NDNjLi42MzBlYTliIDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW5ldGJzZC9hbmRyb2lkL2luY2x1ZGUvbmFtZXNwYWNlLmgKKysrIGIvbGliYy91cHN0cmVhbS1uZXRic2QvYW5kcm9pZC9pbmNsdWRlL25hbWVzcGFjZS5oCkBAIC0xNywxMSArMTcsNiBAQAogI2lmbmRlZiBfQklPTklDX05FVEJTRF9OQU1FU1BBQ0VfSF9pbmNsdWRlZAogI2RlZmluZSBfQklPTklDX05FVEJTRF9OQU1FU1BBQ0VfSF9pbmNsdWRlZAogCi0vLyBOZXRCU0QgdXNlcyBfX3dlYWtfYWxpYXMgb24gYSBsb3Qgb2YgZnVuY3Rpb25zLiBXZSBkb24ndCB3YW50IHRoYXQuCi0jaWYgZGVmaW5lZChfX3dlYWtfYWxpYXMpCi0jdW5kZWYgX193ZWFrX2FsaWFzCi0jZW5kaWYKLQogX19MSUJDX0hJRERFTl9fIGludCBfX3Jlc19lbmFibGVfbXQodm9pZCk7CiBfX0xJQkNfSElEREVOX18gaW50IF9fcmVzX2Rpc2FibGVfbXQodm9pZCk7CiAKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2FuZHJvaWQvaW5jbHVkZS9uZXRic2QtY29tcGF0LmggYi9saWJjL3Vwc3RyZWFtLW5ldGJzZC9hbmRyb2lkL2luY2x1ZGUvbmV0YnNkLWNvbXBhdC5oCmluZGV4IDg0YmU5MzEuLjA0YmM3MjggMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2FuZHJvaWQvaW5jbHVkZS9uZXRic2QtY29tcGF0LmgKKysrIGIvbGliYy91cHN0cmVhbS1uZXRic2QvYW5kcm9pZC9pbmNsdWRlL25ldGJzZC1jb21wYXQuaApAQCAtMTcsNiArMTcsOSBAQAogI2lmbmRlZiBfQklPTklDX05FVEJTRF9DT01QQVRfSF9pbmNsdWRlZAogI2RlZmluZSBfQklPTklDX05FVEJTRF9DT01QQVRfSF9pbmNsdWRlZAogCisjZGVmaW5lIF9CU0RfU09VUkNFCisjZGVmaW5lIF9HTlVfU09VUkNFCisKIC8vIE5ldEJTRCB1c2VzIF9ESUFHQVNTRVJUIHRvIG51bGwtY2hlY2sgYXJndW1lbnRzIGFuZCB0aGUgbGlrZS4KICNpbmNsdWRlIDxhc3NlcnQuaD4KICNkZWZpbmUgX0RJQUdBU1NFUlQoZSkgKChlKSA/ICh2b2lkKSAwIDogX19hc3NlcnQyKF9fRklMRV9fLCBfX0xJTkVfXywgX19mdW5jX18sICNlKSkKQEAgLTI0LDkgKzI3LDYgQEAKIC8vIFRPRE86IHVwZGF0ZSBvdXIgPHN5cy9jZGVmcy5oPiB0byBzdXBwb3J0IHRoaXMgcHJvcGVybHkuCiAjZGVmaW5lIF9fdHlwZV9maXQodCwgYSkgKDAgPT0gMCkKIAotI2RlZmluZSBfR05VX1NPVVJDRQotI2RlZmluZSBfX1VTRV9CU0QKLQogLy8gVE9ETzogd2UgZG9uJ3QgeWV0IGhhdmUgdGhyZWFkLXNhZmUgZW52aXJvbm1lbnQgdmFyaWFibGVzLgogI2RlZmluZSBfX3JlYWRsb2NrZW52KCkgMAogI2RlZmluZSBfX3VubG9ja2VudigpIDAKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9pbnNxdWUuYyBiL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9pbnNxdWUuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDkwMjBhZS4uMDAwMDAwMAotLS0gYS9saWJjL3Vwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvaW5zcXVlLmMKKysrIC9kZXYvbnVsbApAQCAtMSw1OCArMCwwIEBACi0vKgotICogIENvcHlyaWdodCAoYykgMTk5MyBKb2huIEJyZXphawotICogIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogIGFyZSBtZXQ6Ci0gKiAgMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqICAzLiBUaGUgbmFtZSBvZiB0aGUgYXV0aG9yIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cwotICogICAgIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IKLSAqIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECi0gKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCi0gKiBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsCi0gKiBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUgotICogU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsCi0gKiBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4KLSAqIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRQotICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgotI2lmIGRlZmluZWQoTElCQ19TQ0NTKSAmJiAhZGVmaW5lZChsaW50KQotX19SQ1NJRCgiJE5ldEJTRDogaW5zcXVlLmMsdiAxLjMgMjAxMi8wNi8yNSAyMjozMjo0NSBhYnMgRXhwICQiKTsKLSNlbmRpZiAvKiBMSUJDX1NDQ1MgYW5kIG5vdCBsaW50ICovCi0KLSNpbmNsdWRlIDxhc3NlcnQuaD4KLSNpbmNsdWRlIDxzZWFyY2guaD4KLQotc3RydWN0IHFlbGVtIHsKLSAgICAgICAgc3RydWN0IHFlbGVtICpxX2Zvcnc7Ci0gICAgICAgIHN0cnVjdCBxZWxlbSAqcV9iYWNrOwotfTsKLQotdm9pZAotaW5zcXVlKHZvaWQgKmVudHJ5LCB2b2lkICpwcmVkKQotewotCXN0cnVjdCBxZWxlbSAqZSA9IChzdHJ1Y3QgcWVsZW0gKikgZW50cnk7Ci0Jc3RydWN0IHFlbGVtICpwID0gKHN0cnVjdCBxZWxlbSAqKSBwcmVkOwotCi0JX0RJQUdBU1NFUlQoZSAhPSAwKTsKLQotCWUtPnFfYmFjayA9IHA7Ci0JaWYgKHApIHsKLQkJZS0+cV9mb3J3ID0gcC0+cV9mb3J3OwotCQlpZiAocC0+cV9mb3J3KQotCQkJcC0+cV9mb3J3LT5xX2JhY2sgPSBlOwotCQlwLT5xX2ZvcncgPSBlOwotCX0gZWxzZQotCQllLT5xX2ZvcncgPSAwOwotfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RkbGliL2xjb25nNDguYyBiL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9sY29uZzQ4LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDJjZTk3OQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3N0ZGxpYi9sY29uZzQ4LmMKQEAgLTAsMCArMSw0MyBAQAorLyoJJE5ldEJTRDogbGNvbmc0OC5jLHYgMS44IDIwMDUvMDYvMTIgMDU6MjE6MjggbHVrZW0gRXhwICQJKi8KKworLyoKKyAqIENvcHlyaWdodCAoYykgMTk5MyBNYXJ0aW4gQmlyZ21laWVyCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFlvdSBtYXkgcmVkaXN0cmlidXRlIHVubW9kaWZpZWQgb3IgbW9kaWZpZWQgdmVyc2lvbnMgb2YgdGhpcyBzb3VyY2UKKyAqIGNvZGUgcHJvdmlkZWQgdGhhdCB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBhbmQgdGhlCisgKiBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgcmV0YWluZWQuCisgKgorICogVGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBgYGFzIGlzJycsIGFuZCBjb21lcyB3aXRoIG5vIHdhcnJhbnRpZXMKKyAqIG9mIGFueSBraW5kLiBJIHNoYWxsIGluIG5vIGV2ZW50IGJlIGxpYWJsZSBmb3IgYW55dGhpbmcgdGhhdCBoYXBwZW5zCisgKiB0byBhbnlvbmUvYW55dGhpbmcgd2hlbiB1c2luZyB0aGlzIHNvZnR3YXJlLgorICovCisKKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKyNpZiBkZWZpbmVkKExJQkNfU0NDUykgJiYgIWRlZmluZWQobGludCkKK19fUkNTSUQoIiROZXRCU0Q6IGxjb25nNDguYyx2IDEuOCAyMDA1LzA2LzEyIDA1OjIxOjI4IGx1a2VtIEV4cCAkIik7CisjZW5kaWYgLyogTElCQ19TQ0NTIGFuZCBub3QgbGludCAqLworCisjaW5jbHVkZSAibmFtZXNwYWNlLmgiCisKKyNpbmNsdWRlIDxhc3NlcnQuaD4KKworI2luY2x1ZGUgInJhbmQ0OC5oIgorCisjaWZkZWYgX193ZWFrX2FsaWFzCitfX3dlYWtfYWxpYXMobGNvbmc0OCxfbGNvbmc0OCkKKyNlbmRpZgorCit2b2lkCitsY29uZzQ4KHVuc2lnbmVkIHNob3J0IHBbN10pCit7CisJX0RJQUdBU1NFUlQocCAhPSBOVUxMKTsKKworCV9fcmFuZDQ4X3NlZWRbMF0gPSBwWzBdOworCV9fcmFuZDQ4X3NlZWRbMV0gPSBwWzFdOworCV9fcmFuZDQ4X3NlZWRbMl0gPSBwWzJdOworCV9fcmFuZDQ4X211bHRbMF0gPSBwWzNdOworCV9fcmFuZDQ4X211bHRbMV0gPSBwWzRdOworCV9fcmFuZDQ4X211bHRbMl0gPSBwWzVdOworCV9fcmFuZDQ4X2FkZCA9IHBbNl07Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvcmVtcXVlLmMgYi9saWJjL3Vwc3RyZWFtLW5ldGJzZC9saWIvbGliYy9zdGRsaWIvcmVtcXVlLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYwNjBhZDguLjAwMDAwMDAKLS0tIGEvbGliYy91cHN0cmVhbS1uZXRic2QvbGliL2xpYmMvc3RkbGliL3JlbXF1ZS5jCisrKyAvZGV2L251bGwKQEAgLTEsNTMgKzAsMCBAQAotLyoKLSAqICBDb3B5cmlnaHQgKGMpIDE5OTMgSm9obiBCcmV6YWsKLSAqICBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqICBhcmUgbWV0OgotICogIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAgMy4gVGhlIG5hbWUgb2YgdGhlIGF1dGhvciBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMKLSAqICAgICBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULAotICogSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IKLSAqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULAotICogU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOCi0gKiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUKLSAqIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KLSNpZiBkZWZpbmVkKExJQkNfU0NDUykgJiYgIWRlZmluZWQobGludCkKLV9fUkNTSUQoIiROZXRCU0Q6IHJlbXF1ZS5jLHYgMS4zIDIwMTIvMDYvMjUgMjI6MzI6NDUgYWJzIEV4cCAkIik7Ci0jZW5kaWYgLyogTElCQ19TQ0NTIGFuZCBub3QgbGludCAqLwotCi0jaW5jbHVkZSA8YXNzZXJ0Lmg+Ci0jaW5jbHVkZSA8c2VhcmNoLmg+Ci0KLXN0cnVjdCBxZWxlbSB7Ci0gICAgICAgIHN0cnVjdCBxZWxlbSAqcV9mb3J3OwotICAgICAgICBzdHJ1Y3QgcWVsZW0gKnFfYmFjazsKLX07Ci0KLXZvaWQKLXJlbXF1ZSh2b2lkICplbGVtZW50KQotewotCXN0cnVjdCBxZWxlbSAqZSA9IChzdHJ1Y3QgcWVsZW0gKikgZWxlbWVudDsKLQotCV9ESUFHQVNTRVJUKGUgIT0gMCk7Ci0KLQlpZiAoZS0+cV9mb3J3KQotCQllLT5xX2ZvcnctPnFfYmFjayA9IGUtPnFfYmFjazsKLQlpZiAoZS0+cV9iYWNrKQotCQllLT5xX2JhY2stPnFfZm9ydyA9IGUtPnFfZm9ydzsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3VuaXN0ZC9raWxscGcuYyBiL2xpYmMvdXBzdHJlYW0tbmV0YnNkL2xpYi9saWJjL3VuaXN0ZC9raWxscGcuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2VhYzNmNC4uMDAwMDAwMAotLS0gYS9saWJjL3Vwc3RyZWFtLW5ldGJzZC9saWIvbGliYy91bmlzdGQva2lsbHBnLmMKKysrIC9kZXYvbnVsbApAQCAtMSw1NiArMCwwIEBACi0vKgkkTmV0QlNEOiBraWxscGcuYyx2IDEuOCAyMDAzLzA4LzA3IDE2OjQyOjM5IGFnYyBFeHAgJAkqLwotCi0vKgotICogQ29weXJpZ2h0IChjKSAxOTg5LCAxOTkzCi0gKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCi0gKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKLSAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUwotICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0gKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgotICogU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgotI2lmIGRlZmluZWQoTElCQ19TQ0NTKSAmJiAhZGVmaW5lZChsaW50KQotI2lmIDAKLXN0YXRpYyBjaGFyIHNjY3NpZFtdID0gIkAoIylraWxscGcuYwk4LjEgKEJlcmtlbGV5KSA2LzIvOTMiOwotI2Vsc2UKLV9fUkNTSUQoIiROZXRCU0Q6IGtpbGxwZy5jLHYgMS44IDIwMDMvMDgvMDcgMTY6NDI6MzkgYWdjIEV4cCAkIik7Ci0jZW5kaWYKLSNlbmRpZiAvKiBMSUJDX1NDQ1MgYW5kIG5vdCBsaW50ICovCi0KLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxzaWduYWwuaD4KLSNpbmNsdWRlIDxlcnJuby5oPgotCi0vKgotICogQmFja3dhcmRzLWNvbXBhdGlibGUga2lsbHBnKCkuCi0gKi8KLWludAota2lsbHBnKHBpZF90IHBnaWQsIGludCBzaWcpCi17Ci0JaWYgKHBnaWQgPT0gMSkgewotCQllcnJubyA9IEVTUkNIOwotCQlyZXR1cm4gKC0xKTsKLQl9Ci0JcmV0dXJuIChraWxsKC1wZ2lkLCBzaWcpKTsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9hbmRyb2lkL2luY2x1ZGUvb3BlbmJzZC1jb21wYXQuaCBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9hbmRyb2lkL2luY2x1ZGUvb3BlbmJzZC1jb21wYXQuaAppbmRleCAzNGFkMmM1Li44ZjU1YTI2IDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvYW5kcm9pZC9pbmNsdWRlL29wZW5ic2QtY29tcGF0LmgKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2FuZHJvaWQvaW5jbHVkZS9vcGVuYnNkLWNvbXBhdC5oCkBAIC0xNywxMCArMTcsMjYgQEAKICNpZm5kZWYgX0JJT05JQ19PUEVOQlNEX0NPTVBBVF9IX2luY2x1ZGVkCiAjZGVmaW5lIF9CSU9OSUNfT1BFTkJTRF9DT01QQVRfSF9pbmNsdWRlZAogCisjZGVmaW5lIF9CU0RfU09VUkNFCisKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KICNpbmNsdWRlIDxzdGRkZWYuaD4gLy8gRm9yIHNpemVfdC4KIAotI2RlZmluZSBfX1VTRV9CU0QKKy8qIFJlZGlyZWN0IGludGVybmFsIEMgbGlicmFyeSBjYWxscyB0byB0aGUgcHVibGljIGZ1bmN0aW9uLiAqLworI2RlZmluZSBfZXJyIGVycgorI2RlZmluZSBfZXJyeCBlcnJ4CisjZGVmaW5lIF92ZXJyIHZlcnIKKyNkZWZpbmUgX3ZlcnJ4IHZlcnJ4CisjZGVmaW5lIF92d2FybiB2d2FybgorI2RlZmluZSBfdndhcm54IHZ3YXJueAorI2RlZmluZSBfd2FybiB3YXJuCisjZGVmaW5lIF93YXJueCB3YXJueAorCisvKiBJZ25vcmUgYWxsIF9fd2Vha19hbGlhcyBpbiBPcGVuQlNELiAqLworI2RlZmluZSBfX3dlYWtfYWxpYXMoYWxpYXMsc3ltKQorCisvKiBJZ25vcmUgYWxsIF9fd2Fybl9yZWZlcmVuY2VzIGluIE9wZW5CU0QuICovCisjZGVmaW5lIF9fd2Fybl9yZWZlcmVuY2VzKHN5bSxtc2cpCiAKIC8qIE9wZW5CU0QncyA8Y3R5cGUuaD4gdXNlcyB0aGVzZSBuYW1lcywgd2hpY2ggY29uZmxpY3RlZCB3aXRoIHN0bHBvcnQuCiAgKiBBZGRpdGlvbmFsbHksIHdlIGNoYW5nZWQgdGhlIG51bWVyaWMvZGlnaXQgdHlwZSBmcm9tIE4gdG8gRCBmb3IgbGliY3h4LgpAQCAtMzksOSArNTUsMjEgQEAKIAogI2RlZmluZSBleHBsaWNpdF9iemVybyhwLCBzKSBtZW1zZXQocCwgMCwgcykKIAorLyogT3BlbkJTRCBoYXMgdGhlc2UgaW4gPHN5cy9wYXJhbS5oPiwgYnV0ICJBTElHTiIgaXNuJ3Qgc29tZXRoaW5nIHdlIHdhbnQgdG8gcmVzZXJ2ZS4gKi8KKyNkZWZpbmUgQUxJR05CWVRFUyAoc2l6ZW9mKHVpbnRwdHJfdCkgLSAxKQorI2RlZmluZSBBTElHTihwKSAoKCh1aW50cHRyX3QpKHApICsgQUxJR05CWVRFUykgJn4gQUxJR05CWVRFUykKKworLyogT3BlbkJTRCBoYXMgdGhpcyBpbiBwYXRocy5oLiBCdXQgdGhpcyBkaXJlY3RvcnkgZG9lc24ndCBub3JtYWxseSBleGlzdC4KKyAqIEV2ZW4gd2hlbiBpdCBkb2VzIGV4aXN0LCBvbmx5IHRoZSAnc2hlbGwnIHVzZXIgaGFzIHBlcm1pc3Npb25zLgorICovCisjZGVmaW5lIF9QQVRIX1RNUCAiL2RhdGEvbG9jYWwvdG1wLyIKKwogLyogV2UgaGF2ZSBPcGVuQlNEJ3MgZ2V0ZW50cm9weV9saW51eC5jLCBidXQgd2UgZG9uJ3QgbWVudGlvbiBnZXRlbnRyb3B5IGluIGFueSBoZWFkZXIuICovCiBfX0xJQkNfSElEREVOX18gZXh0ZXJuIGludCBnZXRlbnRyb3B5KHZvaWQqLCBzaXplX3QpOwogCisvKiBPcGVuQlNEIGhhcyB0aGlzIGFzIEFQSSwgYnV0IHdlIGp1c3QgdXNlIGl0IGludGVybmFsbHkuICovCitfX0xJQkNfSElEREVOX18gdm9pZCogcmVhbGxvY2FycmF5KHZvaWQqLCBzaXplX3QsIHNpemVfdCk7CisKIC8qIExQMzIgTkRLIGN0eXBlLmggY29udGFpbmVkIHJlZmVyZW5jZXMgdG8gdGhlc2UuICovCiBfX0xJQkM2NF9ISURERU5fXyBleHRlcm4gY29uc3Qgc2hvcnQqIF90b2xvd2VyX3RhYl87CiBfX0xJQkM2NF9ISURERU5fXyBleHRlcm4gY29uc3Qgc2hvcnQqIF90b3VwcGVyX3RhYl87CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvY29tcGF0LTQzL2tpbGxwZy5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2NvbXBhdC00My9raWxscGcuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NWIxYWQ5Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2NvbXBhdC00My9raWxscGcuYwpAQCAtMCwwICsxLDQ1IEBACisvKgorICogQ29weXJpZ2h0IChjKSAxOTg5IFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c2lnbmFsLmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKworLyoKKyAqIEJhY2t3YXJkcy1jb21wYXRpYmxlIGtpbGxwZygpLgorICovCitpbnQKK2tpbGxwZyhwaWRfdCBwZ2lkLCBpbnQgc2lnKQoreworCWlmIChwZ2lkID09IDEpIHsKKwkJZXJybm8gPSBFU1JDSDsKKwkJcmV0dXJuICgtMSk7CisJfQorCXJldHVybiAoa2lsbCgtcGdpZCwgc2lnKSk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2R0b2EvbGR0b2EuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZHRvYS9sZHRvYS5jCmluZGV4IDc5M2Q3MWMuLjE2ZjZmOWMgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZHRvYS9sZHRvYS5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZHRvYS9sZHRvYS5jCkBAIC0xLDQgKzEsNCBAQAotLyoJJE9wZW5CU0Q6IGxkdG9hLmMsdiAxLjEgMjAwOC8wOS8wNyAyMDozNjowOCBtYXJ0eW5hcyBFeHAgJAkqLworLyoJJE9wZW5CU0Q6IGxkdG9hLmMsdiAxLjIgMjAxNC8wOC8xMCAwMjoxNToxOCBndWVudGhlciBFeHAgJAkqLwogLyotCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDMgRGF2aWQgU2NodWx0eiA8ZGFzQEZyZWVCU0QuT1JHPgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KQEAgLTMwLDcgKzMwLDcgQEAKICNpbmNsdWRlIDxtYWNoaW5lL2llZWUuaD4KICNlbmRpZiAvKiAhX192YXhfXyAqLwogI2luY2x1ZGUgPGZsb2F0Lmg+Ci0jaW5jbHVkZSA8aW50dHlwZXMuaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDxsaW1pdHMuaD4KICNpbmNsdWRlIDxtYXRoLmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL2RhZW1vbi5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi9kYWVtb24uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OWY0MjY0Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi9kYWVtb24uYwpAQCAtMCwwICsxLDY0IEBACisvKgkkT3BlbkJTRDogZGFlbW9uLmMsdiAxLjcgMjAxMC8wNy8yNyAyMjoyOTowOSBtYXJjbyBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxwYXRocy5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorCitpbnQKK2RhZW1vbihpbnQgbm9jaGRpciwgaW50IG5vY2xvc2UpCit7CisJaW50IGZkOworCisJc3dpdGNoIChmb3JrKCkpIHsKKwljYXNlIC0xOgorCQlyZXR1cm4gKC0xKTsKKwljYXNlIDA6CisJCWJyZWFrOworCWRlZmF1bHQ6CisJCV9leGl0KDApOworCX0KKworCWlmIChzZXRzaWQoKSA9PSAtMSkKKwkJcmV0dXJuICgtMSk7CisKKwlpZiAoIW5vY2hkaXIpCisJCSh2b2lkKWNoZGlyKCIvIik7CisKKwlpZiAoIW5vY2xvc2UgJiYgKGZkID0gb3BlbihfUEFUSF9ERVZOVUxMLCBPX1JEV1IsIDApKSAhPSAtMSkgeworCQkodm9pZClkdXAyKGZkLCBTVERJTl9GSUxFTk8pOworCQkodm9pZClkdXAyKGZkLCBTVERPVVRfRklMRU5PKTsKKwkJKHZvaWQpZHVwMihmZCwgU1RERVJSX0ZJTEVOTyk7CisJCWlmIChmZCA+IDIpCisJCQkodm9pZCljbG9zZShmZCk7CisJfQorCXJldHVybiAoMCk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL2Vyci5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi9lcnIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lN2VjMjlkCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi9lcnIuYwpAQCAtMCwwICsxLDQ3IEBACisvKgkkT3BlbkJTRDogZXJyLmMsdiAxLjExIDIwMTIvMTIvMDUgMjM6MTk6NTkgZGVyYWFkdCBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTMKKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8ZXJyLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisKKy8qIFBSSU5URkxJS0UyICovCitfX2RlYWQgdm9pZAorX2VycihpbnQgZXZhbCwgY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcDsKKworCXZhX3N0YXJ0KGFwLCBmbXQpOworCV92ZXJyKGV2YWwsIGZtdCwgYXApOworCXZhX2VuZChhcCk7Cit9CisKKy8qIFBSSU5URkxJS0UyICovCitfX3dlYWtfYWxpYXMoZXJyLCBfZXJyKTsKKwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi9lcnJ4LmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL2VycnguYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMjEzNDM1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi9lcnJ4LmMKQEAgLTAsMCArMSw0NyBAQAorLyoJJE9wZW5CU0Q6IGVycnguYyx2IDEuMTAgMjAxMi8xMi8wNSAyMzoxOTo1OSBkZXJhYWR0IEV4cCAkICovCisvKi0KKyAqIENvcHlyaWdodCAoYykgMTk5MworICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxlcnIuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKworLyogUFJJTlRGTElLRTIgKi8KK19fZGVhZCB2b2lkCitfZXJyeChpbnQgZXZhbCwgY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcDsKKworCXZhX3N0YXJ0KGFwLCBmbXQpOworCV92ZXJyeChldmFsLCBmbXQsIGFwKTsKKwl2YV9lbmQoYXApOworfQorCisvKiBQUklOVEZMSUtFMiAqLworX193ZWFrX2FsaWFzKGVycngsIF9lcnJ4KTsKKwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi92ZXJyLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3ZlcnIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kY2Q4ZWRjCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi92ZXJyLmMKQEAgLTAsMCArMSw1NiBAQAorLyoJJE9wZW5CU0Q6IHZlcnIuYyx2IDEuOSAyMDEyLzEyLzA1IDIzOjIwOjAwIGRlcmFhZHQgRXhwICQgKi8KKy8qLQorICogQ29weXJpZ2h0IChjKSAxOTkzCisgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPGVyci5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKworZXh0ZXJuIGNoYXIgKl9fcHJvZ25hbWU7CQkvKiBQcm9ncmFtIG5hbWUsIGZyb20gY3J0MC4gKi8KKworX19kZWFkIHZvaWQKK192ZXJyKGludCBldmFsLCBjb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXApCit7CisJaW50IHN2ZXJybm87CisKKwlzdmVycm5vID0gZXJybm87CisJKHZvaWQpZnByaW50ZihzdGRlcnIsICIlczogIiwgX19wcm9nbmFtZSk7CisJaWYgKGZtdCAhPSBOVUxMKSB7CisJCSh2b2lkKXZmcHJpbnRmKHN0ZGVyciwgZm10LCBhcCk7CisJCSh2b2lkKWZwcmludGYoc3RkZXJyLCAiOiAiKTsKKwl9CisJKHZvaWQpZnByaW50ZihzdGRlcnIsICIlc1xuIiwgc3RyZXJyb3Ioc3ZlcnJubykpOworCWV4aXQoZXZhbCk7Cit9CisKK19fd2Vha19hbGlhcyh2ZXJyLCBfdmVycik7CisKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vdmVycnguYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vdmVycnguYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MGRhMDYyCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi92ZXJyeC5jCkBAIC0wLDAgKzEsNDkgQEAKKy8qCSRPcGVuQlNEOiB2ZXJyeC5jLHYgMS45IDIwMTIvMTIvMDUgMjM6MjA6MDAgZGVyYWFkdCBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTMKKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8ZXJyLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKworZXh0ZXJuIGNoYXIgKl9fcHJvZ25hbWU7CQkvKiBQcm9ncmFtIG5hbWUsIGZyb20gY3J0MC4gKi8KKworX19kZWFkIHZvaWQKK192ZXJyeChpbnQgZXZhbCwgY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFwKQoreworCSh2b2lkKWZwcmludGYoc3RkZXJyLCAiJXM6ICIsIF9fcHJvZ25hbWUpOworCWlmIChmbXQgIT0gTlVMTCkKKwkJKHZvaWQpdmZwcmludGYoc3RkZXJyLCBmbXQsIGFwKTsKKwkodm9pZClmcHJpbnRmKHN0ZGVyciwgIlxuIik7CisJZXhpdChldmFsKTsKK30KKworX193ZWFrX2FsaWFzKHZlcnJ4LCBfdmVycngpOworCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3Z3YXJuLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3Z3YXJuLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjZiNjBmMwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vdndhcm4uYwpAQCAtMCwwICsxLDU0IEBACisvKgkkT3BlbkJTRDogdndhcm4uYyx2IDEuOSAyMDEyLzEyLzA1IDIzOjIwOjAwIGRlcmFhZHQgRXhwICQgKi8KKy8qLQorICogQ29weXJpZ2h0IChjKSAxOTkzCisgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPGVyci5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKworZXh0ZXJuIGNoYXIgKl9fcHJvZ25hbWU7CQkvKiBQcm9ncmFtIG5hbWUsIGZyb20gY3J0MC4gKi8KKwordm9pZAorX3Z3YXJuKGNvbnN0IGNoYXIgKmZtdCwgdmFfbGlzdCBhcCkKK3sKKwlpbnQgc3ZlcnJubzsKKworCXN2ZXJybm8gPSBlcnJubzsKKwkodm9pZClmcHJpbnRmKHN0ZGVyciwgIiVzOiAiLCBfX3Byb2duYW1lKTsKKwlpZiAoZm10ICE9IE5VTEwpIHsKKwkJKHZvaWQpdmZwcmludGYoc3RkZXJyLCBmbXQsIGFwKTsKKwkJKHZvaWQpZnByaW50ZihzdGRlcnIsICI6ICIpOworCX0KKwkodm9pZClmcHJpbnRmKHN0ZGVyciwgIiVzXG4iLCBzdHJlcnJvcihzdmVycm5vKSk7Cit9CisKK19fd2Vha19hbGlhcyh2d2FybiwgX3Z3YXJuKTsKKwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi92d2FybnguYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vdndhcm54LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTZiMTk1NwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vdndhcm54LmMKQEAgLTAsMCArMSw0NyBAQAorLyoJJE9wZW5CU0Q6IHZ3YXJueC5jLHYgMS45IDIwMTIvMTIvMDUgMjM6MjA6MDAgZGVyYWFkdCBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTMKKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8ZXJyLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKworZXh0ZXJuIGNoYXIgKl9fcHJvZ25hbWU7CQkvKiBQcm9ncmFtIG5hbWUsIGZyb20gY3J0MC4gKi8KKwordm9pZAorX3Z3YXJueChjb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXApCit7CisJKHZvaWQpZnByaW50ZihzdGRlcnIsICIlczogIiwgX19wcm9nbmFtZSk7CisJaWYgKGZtdCAhPSBOVUxMKQorCQkodm9pZCl2ZnByaW50ZihzdGRlcnIsIGZtdCwgYXApOworCSh2b2lkKWZwcmludGYoc3RkZXJyLCAiXG4iKTsKK30KKworX193ZWFrX2FsaWFzKHZ3YXJueCwgX3Z3YXJueCk7CisKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vd2Fybi5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL2dlbi93YXJuLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzFiNDdhNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vd2Fybi5jCkBAIC0wLDAgKzEsNDcgQEAKKy8qCSRPcGVuQlNEOiB3YXJuLmMsdiAxLjEwIDIwMTIvMTIvMDUgMjM6MjA6MDAgZGVyYWFkdCBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTMKKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8ZXJyLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisKKy8qIFBSSU5URkxJS0UxICovCit2b2lkCitfd2Fybihjb25zdCBjaGFyICpmbXQsIC4uLikKK3sKKwl2YV9saXN0IGFwOworCisJdmFfc3RhcnQoYXAsIGZtdCk7CisJX3Z3YXJuKGZtdCwgYXApOworCXZhX2VuZChhcCk7Cit9CisKKy8qIFBSSU5URkxJS0UxICovCitfX3dlYWtfYWxpYXMod2FybiwgX3dhcm4pOworCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3dhcm54LmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvZ2VuL3dhcm54LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWYyYWI2NgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9nZW4vd2FybnguYwpAQCAtMCwwICsxLDQ3IEBACisvKgkkT3BlbkJTRDogd2FybnguYyx2IDEuOSAyMDEyLzEyLzA1IDIzOjIwOjAwIGRlcmFhZHQgRXhwICQgKi8KKy8qLQorICogQ29weXJpZ2h0IChjKSAxOTkzCisgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqIDMuIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIFVuaXZlcnNpdHkgbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgKiAgICBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAqICAgIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIFJFR0VOVFMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBSRUdFTlRTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPGVyci5oPgorI2luY2x1ZGUgPHN0ZGFyZy5oPgorCisvKiBQUklOVEZMSUtFMSAqLwordm9pZAorX3dhcm54KGNvbnN0IGNoYXIgKmZtdCwgLi4uKQoreworCXZhX2xpc3QgYXA7CisKKwl2YV9zdGFydChhcCwgZm10KTsKKwlfdndhcm54KGZtdCwgYXApOworCXZhX2VuZChhcCk7Cit9CisKKy8qIFBSSU5URkxJS0UxICovCitfX3dlYWtfYWxpYXMod2FybngsIF93YXJueCk7CisKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvaHRvbmwuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvaHRvbmwuYwppbmRleCA1YWI0MTg5Li42ZWU2ZTdlIDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L2h0b25sLmMKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL25ldC9odG9ubC5jCkBAIC0xLDExICsxLDExIEBACi0vKgkkT3BlbkJTRDogaHRvbmwuYyx2IDEuNiAyMDA1LzA4LzA2IDIwOjMwOjAzIGVzcGllIEV4cCAkICovCisvKgkkT3BlbkJTRDogaHRvbmwuYyx2IDEuNyAyMDE0LzA3LzIxIDAxOjUxOjEwIGd1ZW50aGVyIEV4cCAkICovCiAvKgogICogV3JpdHRlbiBieSBKLlQuIENvbmtsaW4gPGp0Y0BuZXRic2Qub3JnPi4KICAqIFB1YmxpYyBkb21haW4uCiAgKi8KIAogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPG1hY2hpbmUvZW5kaWFuLmg+CisjaW5jbHVkZSA8ZW5kaWFuLmg+CiAKICN1bmRlZiBodG9ubAogCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L2h0b25zLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L2h0b25zLmMKaW5kZXggYzhiNzNmZC4uZjQ4ZDkxZSAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL25ldC9odG9ucy5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvaHRvbnMuYwpAQCAtMSwxMSArMSwxMSBAQAotLyoJJE9wZW5CU0Q6IGh0b25zLmMsdiAxLjggMjAwNS8wOC8wNiAyMDozMDowMyBlc3BpZSBFeHAgJCAqLworLyoJJE9wZW5CU0Q6IGh0b25zLmMsdiAxLjkgMjAxNC8wNy8yMSAwMTo1MToxMCBndWVudGhlciBFeHAgJCAqLwogLyoKICAqIFdyaXR0ZW4gYnkgSi5ULiBDb25rbGluIDxqdGNAbmV0YnNkLm9yZz4uCiAgKiBQdWJsaWMgZG9tYWluLgogICovCiAKICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxtYWNoaW5lL2VuZGlhbi5oPgorI2luY2x1ZGUgPGVuZGlhbi5oPgogCiAjdW5kZWYgaHRvbnMKIApkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL25ldC9udG9obC5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL25ldC9udG9obC5jCmluZGV4IDM2NDE0YjcuLjBkMDViYWMgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvbnRvaGwuYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L250b2hsLmMKQEAgLTEsMTEgKzEsMTEgQEAKLS8qCSRPcGVuQlNEOiBudG9obC5jLHYgMS42IDIwMDUvMDgvMDYgMjA6MzA6MDMgZXNwaWUgRXhwICQgKi8KKy8qCSRPcGVuQlNEOiBudG9obC5jLHYgMS43IDIwMTQvMDcvMjEgMDE6NTE6MTAgZ3VlbnRoZXIgRXhwICQgKi8KIC8qCiAgKiBXcml0dGVuIGJ5IEouVC4gQ29ua2xpbiA8anRjQG5ldGJzZC5vcmc+LgogICogUHVibGljIGRvbWFpbi4KICAqLwogCiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+Ci0jaW5jbHVkZSA8bWFjaGluZS9lbmRpYW4uaD4KKyNpbmNsdWRlIDxlbmRpYW4uaD4KIAogI3VuZGVmIG50b2hsCiAKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvbnRvaHMuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvbnRvaHMuYwppbmRleCA4ZjM0NWU4Li5iNWVhMzYxIDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L250b2hzLmMKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL25ldC9udG9ocy5jCkBAIC0xLDExICsxLDExIEBACi0vKgkkT3BlbkJTRDogbnRvaHMuYyx2IDEuOCAyMDA1LzA4LzA2IDIwOjMwOjAzIGVzcGllIEV4cCAkICovCisvKgkkT3BlbkJTRDogbnRvaHMuYyx2IDEuOSAyMDE0LzA3LzIxIDAxOjUxOjEwIGd1ZW50aGVyIEV4cCAkICovCiAvKgogICogV3JpdHRlbiBieSBKLlQuIENvbmtsaW4gPGp0Y0BuZXRic2Qub3JnPi4KICAqIFB1YmxpYyBkb21haW4uCiAgKi8KIAogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPG1hY2hpbmUvZW5kaWFuLmg+CisjaW5jbHVkZSA8ZW5kaWFuLmg+CiAKICN1bmRlZiBudG9ocwogCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L3Jlc19yYW5kb20uYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9uZXQvcmVzX3JhbmRvbS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYyODY5MmYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvbmV0L3Jlc19yYW5kb20uYwpAQCAtMCwwICsxLDI3NSBAQAorLyogJE9wZW5CU0Q6IHJlc19yYW5kb20uYyx2IDEuMjEgMjAxNC8wNy8yMCAwNDoyMjozNCBndWVudGhlciBFeHAgJCAqLworCisvKgorICogQ29weXJpZ2h0IDE5OTcgTmllbHMgUHJvdm9zIDxwcm92b3NAcGh5c25ldC51bmktaGFtYnVyZy5kZT4KKyAqIENvcHlyaWdodCAyMDA4IERhbWllbiBNaWxsZXIgPGRqbUBvcGVuYnNkLm9yZz4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhlbyBkZSBSYWFkdCA8ZGVyYWFkdEBvcGVuYnNkLm9yZz4gY2FtZSB1cCB3aXRoIHRoZSBpZGVhIG9mIHVzaW5nCisgKiBzdWNoIGEgbWF0aGVtYXRpY2FsIHN5c3RlbSB0byBnZW5lcmF0ZSBtb3JlIHJhbmRvbSAoeWV0IG5vbi1yZXBlYXRpbmcpCisgKiBpZHMgdG8gc29sdmUgdGhlIHJlc29sdmVyL25hbWVkIHByb2JsZW0uICBCdXQgTmllbHMgZGVzaWduZWQgdGhlCisgKiBhY3R1YWwgc3lzdGVtIGJhc2VkIG9uIHRoZSBjb25zdHJhaW50cy4KKyAqCisgKiBMYXRlciBtb2RpZmllZCBieSBEYW1pZW4gTWlsbGVyIHRvIHdyYXAgdGhlIExDRyBvdXRwdXQgaW4gYSAxNS1iaXQKKyAqIHBlcm11dGF0aW9uIGdlbmVyYXRvciBiYXNlZCBvbiBhIEx1YnktUmFja29mZiBibG9jayBjaXBoZXIuIFRoaXMKKyAqIGVuc3VyZXMgdGhlIG91dHB1dCBpcyBub24tcmVwZWF0aW5nIGFuZCBwcmVzZXJ2ZXMgdGhlIE1TQiB0d2lkZGxlCisgKiB0cmljaywgYnV0IG1ha2VzIGl0IG1vcmUgcmVzaXN0YW50IHRvIExDRyBwcmVkaWN0aW9uLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBgYEFTIElTJycgQU5EIEFOWSBFWFBSRVNTIE9SCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTCisgKiBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELgorICogSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULAorICogSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUCisgKiBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgorICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisvKiAKKyAqIHNlZWQgPSByYW5kb20gMTViaXQKKyAqIG4gPSBwcmltZSwgZzAgPSBnZW5lcmF0b3IgdG8gbiwKKyAqIGogPSByYW5kb20gc28gdGhhdCBnY2QoaixuLTEpID09IDEKKyAqIGcgPSBnMF5qIG1vZCBuIHdpbGwgYmUgYSBnZW5lcmF0b3IgYWdhaW4uCisgKgorICogWFswXSA9IHJhbmRvbSBzZWVkLgorICogWFtuXSA9IGEqWFtuLTFdK2IgbW9kIG0gaXMgYSBMaW5lYXIgQ29uZ3J1ZW50aWFsIEdlbmVyYXRvcgorICogd2l0aCBhID0gN14oZXZlbiByYW5kb20pIG1vZCBtLCAKKyAqICAgICAgYiA9IHJhbmRvbSB3aXRoIGdjZChiLG0pID09IDEKKyAqICAgICAgbSA9IDMxMTA0IGFuZCBhIG1heGltYWwgcGVyaW9kIG9mIG0tMS4KKyAqCisgKiBUaGUgdHJhbnNhY3Rpb24gaWQgaXMgZGV0ZXJtaW5lZCBieToKKyAqIGlkW25dID0gc2VlZCB4b3IgKGdeWFtuXSBtb2QgbikKKyAqCisgKiBFZmZlY3Rpdmx5IHRoZSBpZCBpcyByZXN0cmljdGVkIHRvIHRoZSBsb3dlciAxNSBiaXRzLCB0aHVzCisgKiB5aWVsZGluZyB0d28gZGlmZmVyZW50IGN5Y2xlcyBieSB0b2dnbGluZyB0aGUgbXNiIG9uIGFuZCBvZmYuCisgKiBUaGlzIGF2b2lkcyByZXVzZSBpc3N1ZXMgY2F1c2VkIGJ5IHJlc2VlZGluZy4KKyAqCisgKiBUaGUgb3V0cHV0IG9mIHRoaXMgZ2VuZXJhdG9yIGlzIHRoZW4gcmFuZG9tbHkgcGVybXV0ZWQgdGhvdWdoIGEKKyAqIGN1c3RvbSAxNSBiaXQgTHVieS1SYWNrb2ZmIGJsb2NrIGNpcGhlci4KKyAqLworCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgorI2luY2x1ZGUgPHN5cy90aW1lLmg+CisjaW5jbHVkZSA8cmVzb2x2Lmg+CisKKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKworI2luY2x1ZGUgInRocmVhZF9wcml2YXRlLmgiCisKKyNkZWZpbmUgUlVfT1VUICAJMTgwCS8qIFRpbWUgYWZ0ZXIgd2ljaCB3aWxsIGJlIHJlc2VlZGVkICovCisjZGVmaW5lIFJVX01BWAkJMzAwMDAJLyogVW5pcSBjeWNsZSwgYXZvaWQgYmxhY2tqYWNrIHByZWRpY3Rpb24gKi8KKyNkZWZpbmUgUlVfR0VOCQkyCS8qIFN0YXJ0aW5nIGdlbmVyYXRvciAqLworI2RlZmluZSBSVV9OCQkzMjc0OQkvKiBSVV9OLTEgPSAyKjIqMyoyNzI5ICovCisjZGVmaW5lIFJVX0FHRU4JCTcJLyogZGV0ZXJtaW5lIHJ1X2EgYXMgUlVfQUdFTl4oMipyYW5kKSAqLworI2RlZmluZSBSVV9NCQkzMTEwNAkvKiBSVV9NID0gMl43KjNeNSAtIGRvbid0IGNoYW5nZSAqLworI2RlZmluZSBSVV9ST1VORFMJMTEJLyogTnVtYmVyIG9mIHJvdW5kcyBmb3IgcGVybXV0ZSAob2RkKSAqLworCitzdHJ1Y3QgcHJmX2N0eCB7CisJLyogUFJGIGxvb2t1cCB0YWJsZSBmb3Igb2RkIHJvdW5kcyAoNyBiaXRzIGlucHV0IHRvIDggYml0cyBvdXRwdXQpICovCisJdV9jaGFyIHByZjdbKFJVX1JPVU5EUyAvIDIpICogKDEgPDwgNyldOworCisJLyogUFJGIGxvb2t1cCB0YWJsZSBmb3IgZXZlbiByb3VuZHMgKDggYml0cyBpbnB1dCB0byA3IGJpdHMgb3V0cHV0KSAqLworCXVfY2hhciBwcmY4WygoUlVfUk9VTkRTICsgMSkgLyAyKSAqICgxIDw8IDgpXTsKK307CisKKyNkZWZpbmUgUEZBQ19OIDMKK3N0YXRpYyBjb25zdCB1X2ludDE2X3QgcGZhY3RzW1BGQUNfTl0gPSB7CisJMiwgCisJMywKKwkyNzI5Cit9OworCitzdGF0aWMgdV9pbnQxNl90IHJ1X3g7CitzdGF0aWMgdV9pbnQxNl90IHJ1X3NlZWQsIHJ1X3NlZWQyOworc3RhdGljIHVfaW50MTZfdCBydV9hLCBydV9iOworc3RhdGljIHVfaW50MTZfdCBydV9nOworc3RhdGljIHVfaW50MTZfdCBydV9jb3VudGVyID0gMDsKK3N0YXRpYyB1X2ludDE2X3QgcnVfbXNiID0gMDsKK3N0YXRpYyBzdHJ1Y3QgcHJmX2N0eCAqcnVfcHJmID0gTlVMTDsKK3N0YXRpYyB0aW1lX3QgcnVfcmVzZWVkOworCitzdGF0aWMgdV9pbnQxNl90IHBtb2QodV9pbnQxNl90LCB1X2ludDE2X3QsIHVfaW50MTZfdCk7CitzdGF0aWMgdm9pZCByZXNfaW5pdGlkKHZvaWQpOworCisvKgorICogRG8gYSBmYXN0IG1vZHVsYXIgZXhwb25hdGlvbiwgcmV0dXJuZWQgdmFsdWUgd2lsbCBiZSBpbiB0aGUgcmFuZ2UKKyAqIG9mIDAgLSAobW9kLTEpCisgKi8KK3N0YXRpYyB1X2ludDE2X3QKK3Btb2QodV9pbnQxNl90IGdlbiwgdV9pbnQxNl90IGV4cCwgdV9pbnQxNl90IG1vZCkKK3sKKwl1X2ludDE2X3QgcywgdCwgdTsKKworCXMgPSAxOworCXQgPSBnZW47CisJdSA9IGV4cDsKKworCXdoaWxlICh1KSB7CisJCWlmICh1ICYgMSkKKwkJCXMgPSAocyAqIHQpICUgbW9kOworCQl1ID4+PSAxOworCQl0ID0gKHQgKiB0KSAlIG1vZDsKKwl9CisJcmV0dXJuIChzKTsKK30KKworLyoKKyAqIDE1LWJpdCBwZXJtdXRhdGlvbiBiYXNlZCBvbiBMdWJ5LVJhY2tvZmYgYmxvY2sgY2lwaGVyCisgKi8KK3N0YXRpYyB1X2ludAorcGVybXV0ZTE1KHVfaW50IGluKQoreworCWludCBpOworCXVfaW50IGxlZnQsIHJpZ2h0LCB0bXA7CisKKwlpZiAocnVfcHJmID09IE5VTEwpCisJCXJldHVybiBpbjsKKworCWxlZnQgPSAoaW4gPj4gOCkgJiAweDdmOworCXJpZ2h0ID0gaW4gJiAweGZmOworCisJLyoKKwkgKiBFYWNoIHJvdW5kIHN3YXBzIHRoZSB3aWR0aCBvZiBsZWZ0IGFuZCByaWdodC4gRXZlbiByb3VuZHMgaGF2ZQorCSAqIGEgNy1iaXQgbGVmdCwgb2RkIHJvdW5kcyBoYXZlIGFuIDgtYml0IGxlZnQuCVNpbmNlIHRoaXMgdXNlcyBhbgorCSAqIG9kZCBudW1iZXIgb2Ygcm91bmRzLCBsZWZ0IGlzIGFsd2F5cyA4IGJpdHMgd2lkZSBhdCB0aGUgZW5kLgorCSAqLworCWZvciAoaSA9IDA7IGkgPCBSVV9ST1VORFM7IGkrKykgeworCQlpZiAoKGkgJiAxKSA9PSAwKQorCQkJdG1wID0gcnVfcHJmLT5wcmY4WyhpIDw8ICg4IC0gMSkpIHwgcmlnaHRdICYgMHg3ZjsKKwkJZWxzZQorCQkJdG1wID0gcnVfcHJmLT5wcmY3WygoaSAtIDEpIDw8ICg3IC0gMSkpIHwgcmlnaHRdOworCQl0bXAgXj0gbGVmdDsKKwkJbGVmdCA9IHJpZ2h0OworCQlyaWdodCA9IHRtcDsKKwl9CisKKwlyZXR1cm4gKHJpZ2h0IDw8IDgpIHwgbGVmdDsKK30KKworLyogCisgKiBJbml0aWFsaXplcyB0aGUgc2VlZCBhbmQgY2hvb3NlcyBhIHN1aXRhYmxlIGdlbmVyYXRvci4gQWxzbyB0b2dnbGVzIAorICogdGhlIG1zYiBmbGFnLiBUaGUgbXNiIGZsYWcgaXMgdXNlZCB0byBnZW5lcmF0ZSB0d28gZGlzdGluY3QKKyAqIGN5Y2xlcyBvZiByYW5kb20gbnVtYmVycyBhbmQgdGh1cyBhdm9pZGluZyByZXVzZSBvZiBpZHMuCisgKgorICogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgZnJvbSByZXNfcmFuZG9taWQoKSB3aGVuIG5lZWRlZCwgYW4gCisgKiBhcHBsaWNhdGlvbiBkb2VzIG5vdCBoYXZlIHRvIHdvcnJ5IGFib3V0IGl0LgorICovCitzdGF0aWMgdm9pZCAKK3Jlc19pbml0aWQodm9pZCkKK3sKKwl1X2ludDE2X3QgaiwgaTsKKwl1X2ludDMyX3QgdG1wOworCWludCBub3ByaW1lID0gMTsKKwlzdHJ1Y3QgdGltZXNwZWMgdHM7CisKKwlydV94ID0gYXJjNHJhbmRvbV91bmlmb3JtKFJVX00pOworCisJLyogMTUgYml0cyBvZiByYW5kb20gc2VlZCAqLworCXRtcCA9IGFyYzRyYW5kb20oKTsKKwlydV9zZWVkID0gKHRtcCA+PiAxNikgJiAweDdGRkY7CisJcnVfc2VlZDIgPSB0bXAgJiAweDdGRkY7CisKKwkvKiBEZXRlcm1pbmUgdGhlIExDRyB3ZSB1c2UgKi8KKwl0bXAgPSBhcmM0cmFuZG9tKCk7CisJcnVfYiA9ICh0bXAgJiAweGZmZmUpIHwgMTsKKwlydV9hID0gcG1vZChSVV9BR0VOLCAodG1wID4+IDE2KSAmIDB4ZmZmZSwgUlVfTSk7CisJd2hpbGUgKHJ1X2IgJSAzID09IDApCisJCXJ1X2IgKz0gMjsKKwkKKwlqID0gYXJjNHJhbmRvbV91bmlmb3JtKFJVX04pOworCisJLyogCisJICogRG8gYSBmYXN0IGdjZChqLFJVX04tMSksIHNvIHdlIGNhbiBmaW5kIGEgaiB3aXRoCisJICogZ2NkKGosIFJVX04tMSkgPT0gMSwgZ2l2aW5nIGEgbmV3IGdlbmVyYXRvciBmb3IKKwkgKiBSVV9HRU5eaiBtb2QgUlVfTgorCSAqLworCisJd2hpbGUgKG5vcHJpbWUpIHsKKwkJZm9yIChpID0gMDsgaSA8IFBGQUNfTjsgaSsrKQorCQkJaWYgKGogJSBwZmFjdHNbaV0gPT0gMCkKKwkJCQlicmVhazsKKworCQlpZiAoaSA+PSBQRkFDX04pCisJCQlub3ByaW1lID0gMDsKKwkJZWxzZSAKKwkJCWogPSAoaiArIDEpICUgUlVfTjsKKwl9CisKKwlydV9nID0gcG1vZChSVV9HRU4sIGosIFJVX04pOworCXJ1X2NvdW50ZXIgPSAwOworCisJLyogSW5pdGlhbGlzZSBQUkYgZm9yIEx1YnktUmFja29mZiBwZXJtdXRhdGlvbiAqLworCWlmIChydV9wcmYgPT0gTlVMTCkKKwkJcnVfcHJmID0gbWFsbG9jKHNpemVvZigqcnVfcHJmKSk7CisJaWYgKHJ1X3ByZiAhPSBOVUxMKQorCQlhcmM0cmFuZG9tX2J1ZihydV9wcmYsIHNpemVvZigqcnVfcHJmKSk7CisKKwljbG9ja19nZXR0aW1lKENMT0NLX01PTk9UT05JQywgJnRzKTsKKwlydV9yZXNlZWQgPSB0cy50dl9zZWMgKyBSVV9PVVQ7CisJcnVfbXNiID0gcnVfbXNiID09IDB4ODAwMCA/IDAgOiAweDgwMDA7IAorfQorCit1X2ludAorcmVzX3JhbmRvbWlkKHZvaWQpCit7CisJc3RydWN0IHRpbWVzcGVjIHRzOworCXVfaW50IHI7CisJX1RIUkVBRF9QUklWQVRFX01VVEVYKHJhbmRvbSk7CisKKwljbG9ja19nZXR0aW1lKENMT0NLX01PTk9UT05JQywgJnRzKTsKKworCV9USFJFQURfUFJJVkFURV9NVVRFWF9MT0NLKHJhbmRvbSk7CisKKwlpZiAocnVfY291bnRlciA+PSBSVV9NQVggfHwgdHMudHZfc2VjID4gcnVfcmVzZWVkKQorCQlyZXNfaW5pdGlkKCk7CisKKwkvKiBMaW5lYXIgQ29uZ3J1ZW50aWFsIEdlbmVyYXRvciAqLworCXJ1X3ggPSAocnVfYSAqIHJ1X3ggKyBydV9iKSAlIFJVX007CisJcnVfY291bnRlcisrOworCisJciA9IHBlcm11dGUxNShydV9zZWVkIF4gcG1vZChydV9nLCBydV9zZWVkMiArIHJ1X3gsIFJVX04pKSB8IHJ1X21zYjsKKworCV9USFJFQURfUFJJVkFURV9NVVRFWF9VTkxPQ0socmFuZG9tKTsKKworCXJldHVybiAocik7Cit9CisKKyNpZiAwCitpbnQKK21haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQoreworCWludCBpLCBuOworCXVfaW50MTZfdCB3ZXJ0OworCisJcmVzX2luaXRpZCgpOworCisJcHJpbnRmKCJHZW5lcmF0b3I6ICV1XG4iLCBydV9nKTsKKwlwcmludGYoIlNlZWQ6ICV1XG4iLCBydV9zZWVkKTsKKwlwcmludGYoIlJlc2VlZCBhdCAlbGRcbiIsIHJ1X3Jlc2VlZCk7CisJcHJpbnRmKCJSdV9YOiAldVxuIiwgcnVfeCk7CisJcHJpbnRmKCJSdV9BOiAldVxuIiwgcnVfYSk7CisJcHJpbnRmKCJSdV9COiAldVxuIiwgcnVfYik7CisKKwluID0gYXJnYyA+IDEgPyBhdG9pKGFyZ3ZbMV0pIDogNjAwMDE7CisJZm9yIChpPTA7aTxuO2krKykgeworCQl3ZXJ0ID0gcmVzX3JhbmRvbWlkKCk7CisJCXByaW50ZigiJXVcbiIsIHdlcnQpOworCX0KKwlyZXR1cm4gMDsKK30KKyNlbmRpZgorCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmNsb3NlLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmNsb3NlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzcyYWY1NAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mY2xvc2UuYwpAQCAtMCwwICsxLDYzIEBACisvKgkkT3BlbkJTRDogZmNsb3NlLmMsdiAxLjkgMjAwOS8xMS8wOSAwMDoxODoyNyBrdXJ0IEV4cCAkICovCisvKi0KKyAqIENvcHlyaWdodCAoYykgMTk5MCwgMTk5MworICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQorICogQ2hyaXMgVG9yZWsuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSAibG9jYWwuaCIKKworaW50CitmY2xvc2UoRklMRSAqZnApCit7CisJaW50IHI7CisKKwlpZiAoZnAtPl9mbGFncyA9PSAwKSB7CS8qIG5vdCBvcGVuISAqLworCQllcnJubyA9IEVCQURGOworCQlyZXR1cm4gKEVPRik7CisJfQorCUZMT0NLRklMRShmcCk7CisJV0NJT19GUkVFKGZwKTsKKwlyID0gZnAtPl9mbGFncyAmIF9fU1dSID8gX19zZmx1c2goZnApIDogMDsKKwlpZiAoZnAtPl9jbG9zZSAhPSBOVUxMICYmICgqZnAtPl9jbG9zZSkoZnAtPl9jb29raWUpIDwgMCkKKwkJciA9IEVPRjsKKwlpZiAoZnAtPl9mbGFncyAmIF9fU01CRikKKwkJZnJlZSgoY2hhciAqKWZwLT5fYmYuX2Jhc2UpOworCWlmIChIQVNVQihmcCkpCisJCUZSRUVVQihmcCk7CisJaWYgKEhBU0xCKGZwKSkKKwkJRlJFRUxCKGZwKTsKKwlmcC0+X3IgPSBmcC0+X3cgPSAwOwkvKiBNZXNzIHVwIGlmIHJlYWNjZXNzZWQuICovCisJZnAtPl9mbGFncyA9IDA7CQkvKiBSZWxlYXNlIHRoaXMgRklMRSBmb3IgcmV1c2UuICovCisJRlVOTE9DS0ZJTEUoZnApOworCXJldHVybiAocik7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmRvcGVuLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmRvcGVuLmMKaW5kZXggM2U0N2YyYy4uMWMwYzgxMyAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2Zkb3Blbi5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mZG9wZW4uYwpAQCAtMSw0ICsxLDQgQEAKLS8qCSRPcGVuQlNEOiBmZG9wZW4uYyx2IDEuNiAyMDA4LzA0LzIxIDEyOjI4OjM1IG90dG8gRXhwICQgKi8KKy8qCSRPcGVuQlNEOiBmZG9wZW4uYyx2IDEuNyAyMDE0LzA4LzMxIDAyOjIxOjE4IGd1ZW50aGVyIEV4cCAkICovCiAvKi0KICAqIENvcHlyaWdodCAoYykgMTk5MCwgMTk5MwogICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCkBAIC02Niw2ICs2Niw3IEBACiAJaWYgKChmcCA9IF9fc2ZwKCkpID09IE5VTEwpCiAJCXJldHVybiAoTlVMTCk7CiAJZnAtPl9mbGFncyA9IGZsYWdzOworCiAJLyoKIAkgKiBJZiBvcGVuZWQgZm9yIGFwcGVuZGluZywgYnV0IHVuZGVybHlpbmcgZGVzY3JpcHRvciBkb2VzIG5vdCBoYXZlCiAJICogT19BUFBFTkQgYml0IHNldCwgYXNzZXJ0IF9fU0FQUCBzbyB0aGF0IF9fc3dyaXRlKCkgd2lsbCBsc2VlayB0bwpAQCAtNzMsNiArNzQsMTMgQEAKIAkgKi8KIAlpZiAoKG9mbGFncyAmIE9fQVBQRU5EKSAmJiAhKGZkZmxhZ3MgJiBPX0FQUEVORCkpCiAJCWZwLT5fZmxhZ3MgfD0gX19TQVBQOworCisJLyoKKwkgKiBJZiBjbG9zZS1vbi1leGVjIHdhcyByZXF1ZXN0ZWQsIHRoZW4gdHVybiBpdCBvbiBpZiBub3QgYWxyZWFkeQorCSAqLworCWlmICgob2ZsYWdzICYgT19DTE9FWEVDKSAmJiAhKCh0bXAgPSBmY250bChmZCwgRl9HRVRGRCkpICYgRkRfQ0xPRVhFQykpCisJCWZjbnRsKGZkLCBGX1NFVEZELCB0bXAgfCBGRF9DTE9FWEVDKTsKKwogCWZwLT5fZmlsZSA9IGZkOwogCWZwLT5fY29va2llID0gZnA7CiAJZnAtPl9yZWFkID0gX19zcmVhZDsKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mZ2V0bG4uYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mZ2V0bG4uYwppbmRleCBkMGMwODA5Li4xMTA5Y2YyIDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmdldGxuLmMKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZnZXRsbi5jCkBAIC0xLDQgKzEsNCBAQAotLyoJJE9wZW5CU0Q6IGZnZXRsbi5jLHYgMS4xMiAyMDEzLzExLzEyIDA3OjA0OjA2IGRlcmFhZHQgRXhwICQgKi8KKy8qCSRPcGVuQlNEOiBmZ2V0bG4uYyx2IDEuMTMgMjAxNS8wMS8wNSAyMTo1ODo1MiBtaWxsZXJ0IEV4cCAkICovCiAvKi0KICAqIENvcHlyaWdodCAoYykgMTk5MCwgMTk5MwogICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCkBAIC0zOCwxOSArMzgsMTIgQEAKIAogLyoKICAqIEV4cGFuZCB0aGUgbGluZSBidWZmZXIuICBSZXR1cm4gLTEgb24gZXJyb3IuCi0jaWZkZWYgbm90ZGVmCi0gKiBUaGUgYG5ldyBzaXplJyBkb2VzIG5vdCBhY2NvdW50IGZvciBhIHRlcm1pbmF0aW5nICdcMCcsCi0gKiBzbyB3ZSBhZGQgMSBoZXJlLgotI2VuZGlmCiAgKi8KIHN0YXRpYyBpbnQKIF9fc2xiZXhwYW5kKEZJTEUgKmZwLCBzaXplX3QgbmV3c2l6ZSkKIHsKIAl2b2lkICpwOwogCi0jaWZkZWYgbm90ZGVmCi0JKytuZXdzaXplOwotI2VuZGlmCiAJaWYgKGZwLT5fbGIuX3NpemUgPj0gbmV3c2l6ZSkKIAkJcmV0dXJuICgwKTsKIAlpZiAoKHAgPSByZWFsbG9jKGZwLT5fbGIuX2Jhc2UsIG5ld3NpemUpKSA9PSBOVUxMKQpAQCAtMTQxLDE0ICsxMzQsMTEgQEAKIAl9CiAJKmxlbnAgPSBsZW47CiAJcmV0ID0gKGNoYXIgKilmcC0+X2xiLl9iYXNlOwotI2lmZGVmIG5vdGRlZgotCXJldFtsZW5dID0gJ1wwJzsKLSNlbmRpZgogCUZVTkxPQ0tGSUxFKGZwKTsKIAlyZXR1cm4gKHJldCk7CiAKIGVycm9yOgotCSpsZW5wID0gMDsJCS8qID8/PyAqLwogCUZVTkxPQ0tGSUxFKGZwKTsKLQlyZXR1cm4gKE5VTEwpOwkJLyogPz8/ICovCisJKmxlbnAgPSAwOworCXJldHVybiAoTlVMTCk7CiB9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmxhZ3MuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mbGFncy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ2ZGY2ZGEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZmxhZ3MuYwpAQCAtMCwwICsxLDEwNSBAQAorLyoJJE9wZW5CU0Q6IGZsYWdzLmMsdiAxLjggMjAxNC8wOC8zMSAwMjoyMToxOCBndWVudGhlciBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKKyAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKKyAqIENocmlzIFRvcmVrLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL2ZpbGUuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSAibG9jYWwuaCIKKworLyoKKyAqIFJldHVybiB0aGUgKHN0ZGlvKSBmbGFncyBmb3IgYSBnaXZlbiBtb2RlLiAgU3RvcmUgdGhlIGZsYWdzCisgKiB0byBiZSBwYXNzZWQgdG8gYW4gb3BlbigpIHN5c2NhbGwgdGhyb3VnaCAqb3B0ci4KKyAqIFJldHVybiAwIG9uIGVycm9yLgorICovCitpbnQKK19fc2ZsYWdzKGNvbnN0IGNoYXIgKm1vZGUsIGludCAqb3B0cikKK3sKKwlpbnQgcmV0LCBtLCBvOworCisJc3dpdGNoICgqbW9kZSsrKSB7CisKKwljYXNlICdyJzoJLyogb3BlbiBmb3IgcmVhZGluZyAqLworCQlyZXQgPSBfX1NSRDsKKwkJbSA9IE9fUkRPTkxZOworCQlvID0gMDsKKwkJYnJlYWs7CisKKwljYXNlICd3JzoJLyogb3BlbiBmb3Igd3JpdGluZyAqLworCQlyZXQgPSBfX1NXUjsKKwkJbSA9IE9fV1JPTkxZOworCQlvID0gT19DUkVBVCB8IE9fVFJVTkM7CisJCWJyZWFrOworCisJY2FzZSAnYSc6CS8qIG9wZW4gZm9yIGFwcGVuZGluZyAqLworCQlyZXQgPSBfX1NXUjsKKwkJbSA9IE9fV1JPTkxZOworCQlvID0gT19DUkVBVCB8IE9fQVBQRU5EOworCQlicmVhazsKKworCWRlZmF1bHQ6CS8qIGlsbGVnYWwgbW9kZSAqLworCQllcnJubyA9IEVJTlZBTDsKKwkJcmV0dXJuICgwKTsKKwl9CisKKwl3aGlsZSAoKm1vZGUgIT0gJ1wwJykgCisJCXN3aXRjaCAoKm1vZGUrKykgeworCQljYXNlICdiJzoKKwkJCWJyZWFrOworCQljYXNlICcrJzoKKwkJCXJldCA9IF9fU1JXOworCQkJbSA9IE9fUkRXUjsKKwkJCWJyZWFrOworCQljYXNlICdlJzoKKwkJCW8gfD0gT19DTE9FWEVDOworCQkJYnJlYWs7CisJCWNhc2UgJ3gnOgorCQkJaWYgKG8gJiBPX0NSRUFUKQorCQkJCW8gfD0gT19FWENMOworCQkJYnJlYWs7CisJCWRlZmF1bHQ6CisJCQkvKgorCQkJICogTG90cyBvZiBzb2Z0d2FyZSBwYXNzZXMgb3RoZXIgZXh0ZW5zaW9uIG1vZGUKKwkJCSAqIGxldHRlcnMsIGxpa2UgV2luZG93J3MgJ3QnCisJCQkgKi8KKyNpZiAwCisJCQllcnJubyA9IEVJTlZBTDsKKwkJCXJldHVybiAoMCk7CisjZWxzZQorCQkJYnJlYWs7CisjZW5kaWYKKwkJfQorCisJKm9wdHIgPSBtIHwgbzsKKwlyZXR1cm4gKHJldCk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZm1lbW9wZW4uYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mbWVtb3Blbi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhjZGEwNDcKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZm1lbW9wZW4uYwpAQCAtMCwwICsxLDE4MyBAQAorLyoJJE9wZW5CU0Q6IGZtZW1vcGVuLmMsdiAxLjIgMjAxMy8wMy8yNyAxNTowNjoyNSBtcGkgRXhwICQJKi8KKworLyoKKyAqIENvcHlyaWdodCAoYykgMjAxMSBNYXJ0aW4gUGlldWNob3QgPG1waUBvcGVuYnNkLm9yZz4KKyAqIENvcHlyaWdodCAoYykgMjAwOSBUZWQgVW5hbmdzdAorICoKKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueQorICogcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBlYXIgaW4gYWxsIGNvcGllcy4KKyAqCisgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMIFdBUlJBTlRJRVMKKyAqIFdJVEggUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVEIFdBUlJBTlRJRVMgT0YKKyAqIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SCisgKiBBTlkgU1BFQ0lBTCwgRElSRUNULCBJTkRJUkVDVCwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTCisgKiBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NIExPU1MgT0YgVVNFLCBEQVRBIE9SIFBST0ZJVFMsIFdIRVRIRVIgSU4gQU4KKyAqIEFDVElPTiBPRiBDT05UUkFDVCwgTkVHTElHRU5DRSBPUiBPVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GCisgKiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUiBQRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLgorICovCisKKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlICJsb2NhbC5oIgorCitzdHJ1Y3Qgc3RhdGUgeworCWNoYXIJCSpzdHJpbmc7CS8qIGFjdHVhbCBzdHJlYW0gKi8KKwlzaXplX3QJCSBwb3M7CQkvKiBjdXJyZW50IHBvc2l0aW9uICovCisJc2l6ZV90CQkgc2l6ZTsJCS8qIGFsbG9jYXRlZCBzaXplICovCisJc2l6ZV90CQkgbGVuOwkJLyogbGVuZ3RoIG9mIHRoZSBkYXRhICovCisJaW50CQkgdXBkYXRlOwkvKiBvcGVuIGZvciB1cGRhdGUgKi8KK307CisKK3N0YXRpYyBpbnQKK2ZtZW1vcGVuX3JlYWQodm9pZCAqdiwgY2hhciAqYiwgaW50IGwpCit7CisJc3RydWN0IHN0YXRlCSpzdCA9IHY7CisJaW50CQkgaTsKKworCWZvciAoaSA9IDA7IGkgPCBsICYmIGkgKyBzdC0+cG9zIDwgc3QtPmxlbjsgaSsrKQorCQliW2ldID0gc3QtPnN0cmluZ1tzdC0+cG9zICsgaV07CisJc3QtPnBvcyArPSBpOworCisJcmV0dXJuIChpKTsKK30KKworc3RhdGljIGludAorZm1lbW9wZW5fd3JpdGUodm9pZCAqdiwgY29uc3QgY2hhciAqYiwgaW50IGwpCit7CisJc3RydWN0IHN0YXRlCSpzdCA9IHY7CisJaW50CQlpOworCisJZm9yIChpID0gMDsgaSA8IGwgJiYgaSArIHN0LT5wb3MgPCBzdC0+c2l6ZTsgaSsrKQorCQlzdC0+c3RyaW5nW3N0LT5wb3MgKyBpXSA9IGJbaV07CisJc3QtPnBvcyArPSBpOworCisJaWYgKHN0LT5wb3MgPj0gc3QtPmxlbikgeworCQlzdC0+bGVuID0gc3QtPnBvczsKKworCQlpZiAoc3QtPmxlbiA8IHN0LT5zaXplKQorCQkJc3QtPnN0cmluZ1tzdC0+bGVuXSA9ICdcMCc7CisJCWVsc2UgaWYgKCFzdC0+dXBkYXRlKQorCQkJc3QtPnN0cmluZ1tzdC0+c2l6ZSAtIDFdID0gJ1wwJzsKKwl9CisKKwlyZXR1cm4gKGkpOworfQorCitzdGF0aWMgZnBvc190CitmbWVtb3Blbl9zZWVrKHZvaWQgKnYsIGZwb3NfdCBvZmYsIGludCB3aGVuY2UpCit7CisJc3RydWN0IHN0YXRlCSpzdCA9IHY7CisJc3NpemVfdAkJIGJhc2UgPSAwOworCisJc3dpdGNoICh3aGVuY2UpIHsKKwljYXNlIFNFRUtfU0VUOgorCQlicmVhazsKKwljYXNlIFNFRUtfQ1VSOgorCQliYXNlID0gc3QtPnBvczsKKwkJYnJlYWs7CisJY2FzZSBTRUVLX0VORDoKKwkJYmFzZSA9IHN0LT5sZW47CisJCWJyZWFrOworCX0KKworCWlmIChvZmYgPiBzdC0+c2l6ZSAtIGJhc2UgfHwgb2ZmIDwgLWJhc2UpIHsKKwkJZXJybm8gPSBFT1ZFUkZMT1c7CisJCXJldHVybiAoLTEpOworCX0KKworCXN0LT5wb3MgPSBiYXNlICsgb2ZmOworCisJcmV0dXJuIChzdC0+cG9zKTsKK30KKworc3RhdGljIGludAorZm1lbW9wZW5fY2xvc2Uodm9pZCAqdikKK3sKKwlmcmVlKHYpOworCisJcmV0dXJuICgwKTsKK30KKworc3RhdGljIGludAorZm1lbW9wZW5fY2xvc2VfZnJlZSh2b2lkICp2KQoreworCXN0cnVjdCBzdGF0ZQkqc3QgPSB2OworCisJZnJlZShzdC0+c3RyaW5nKTsKKwlmcmVlKHN0KTsKKworCXJldHVybiAoMCk7Cit9CisKK0ZJTEUgKgorZm1lbW9wZW4odm9pZCAqYnVmLCBzaXplX3Qgc2l6ZSwgY29uc3QgY2hhciAqbW9kZSkKK3sKKwlzdHJ1Y3Qgc3RhdGUJKnN0OworCUZJTEUJCSpmcDsKKwlpbnQJCSBmbGFncywgb2ZsYWdzOworCisJaWYgKHNpemUgPT0gMCkgeworCQllcnJubyA9IEVJTlZBTDsKKwkJcmV0dXJuIChOVUxMKTsKKwl9CisKKwlpZiAoKGZsYWdzID0gX19zZmxhZ3MobW9kZSwgJm9mbGFncykpID09IDApIHsKKwkJZXJybm8gPSBFSU5WQUw7CisJCXJldHVybiAoTlVMTCk7CisJfQorCisJaWYgKGJ1ZiA9PSBOVUxMICYmICgob2ZsYWdzICYgT19SRFdSKSA9PSAwKSkgeworCQllcnJubyA9IEVJTlZBTDsKKwkJcmV0dXJuIChOVUxMKTsKKwl9CisKKwlpZiAoKHN0ID0gbWFsbG9jKHNpemVvZigqc3QpKSkgPT0gTlVMTCkKKwkJcmV0dXJuIChOVUxMKTsKKworCWlmICgoZnAgPSBfX3NmcCgpKSA9PSBOVUxMKSB7CisJCWZyZWUoc3QpOworCQlyZXR1cm4gKE5VTEwpOworCX0KKworCXN0LT5wb3MgPSAwOworCXN0LT5sZW4gPSAob2ZsYWdzICYgT19XUk9OTFkpID8gMCA6IHNpemU7CisJc3QtPnNpemUgPSBzaXplOworCXN0LT51cGRhdGUgPSBvZmxhZ3MgJiBPX1JEV1I7CisKKwlpZiAoYnVmID09IE5VTEwpIHsKKwkJaWYgKChzdC0+c3RyaW5nID0gbWFsbG9jKHNpemUpKSA9PSBOVUxMKSB7CisJCQlmcmVlKHN0KTsKKwkJCWZwLT5fZmxhZ3MgPSAwOworCQkJcmV0dXJuIChOVUxMKTsKKwkJfQorCQkqc3QtPnN0cmluZyA9ICdcMCc7CisJfSBlbHNlIHsKKwkJc3QtPnN0cmluZyA9IChjaGFyICopYnVmOworCisJCWlmIChvZmxhZ3MgJiBPX1RSVU5DKQorCQkJKnN0LT5zdHJpbmcgPSAnXDAnOworCisJCWlmIChvZmxhZ3MgJiBPX0FQUEVORCkgeworCQkJY2hhcgkqcDsKKworCQkJaWYgKChwID0gbWVtY2hyKHN0LT5zdHJpbmcsICdcMCcsIHNpemUpKSAhPSBOVUxMKQorCQkJCXN0LT5wb3MgPSBzdC0+bGVuID0gKHAgLSBzdC0+c3RyaW5nKTsKKwkJCWVsc2UKKwkJCQlzdC0+cG9zID0gc3QtPmxlbiA9IHNpemU7CisJCX0KKwl9CisKKwlmcC0+X2ZsYWdzID0gKHNob3J0KWZsYWdzOworCWZwLT5fZmlsZSA9IC0xOworCWZwLT5fY29va2llID0gKHZvaWQgKilzdDsKKwlmcC0+X3JlYWQgPSAoZmxhZ3MgJiBfX1NXUikgPyBOVUxMIDogZm1lbW9wZW5fcmVhZDsKKwlmcC0+X3dyaXRlID0gKGZsYWdzICYgX19TUkQpID8gTlVMTCA6IGZtZW1vcGVuX3dyaXRlOworCWZwLT5fc2VlayA9IGZtZW1vcGVuX3NlZWs7CisJZnAtPl9jbG9zZSA9IChidWYgPT0gTlVMTCkgPyBmbWVtb3Blbl9jbG9zZV9mcmVlIDogZm1lbW9wZW5fY2xvc2U7CisKKwlyZXR1cm4gKGZwKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mb3Blbi5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZvcGVuLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTQ2NTA1MgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mb3Blbi5jCkBAIC0wLDAgKzEsODYgQEAKKy8qCSRPcGVuQlNEOiBmb3Blbi5jLHYgMS43IDIwMDgvMDUvMDMgMTg6NDY6NDEgY2hsIEV4cCAkICovCisvKi0KKyAqIENvcHlyaWdodCAoYykgMTk5MCwgMTk5MworICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQorICogQ2hyaXMgVG9yZWsuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgImxvY2FsLmgiCisKK0ZJTEUgKgorZm9wZW4oY29uc3QgY2hhciAqZmlsZSwgY29uc3QgY2hhciAqbW9kZSkKK3sKKwlGSUxFICpmcDsKKwlpbnQgZjsKKwlpbnQgZmxhZ3MsIG9mbGFnczsKKworCWlmICgoZmxhZ3MgPSBfX3NmbGFncyhtb2RlLCAmb2ZsYWdzKSkgPT0gMCkKKwkJcmV0dXJuIChOVUxMKTsKKwlpZiAoKGZwID0gX19zZnAoKSkgPT0gTlVMTCkKKwkJcmV0dXJuIChOVUxMKTsKKwlpZiAoKGYgPSBvcGVuKGZpbGUsIG9mbGFncywgREVGRklMRU1PREUpKSA8IDApIHsKKwkJZnAtPl9mbGFncyA9IDA7CQkJLyogcmVsZWFzZSAqLworCQlyZXR1cm4gKE5VTEwpOworCX0KKworCS8qIF9maWxlIGlzIG9ubHkgYSBzaG9ydCAqLworCWlmIChmID4gU0hSVF9NQVgpIHsKKwkJZnAtPl9mbGFncyA9IDA7CQkJLyogcmVsZWFzZSAqLworCQljbG9zZShmKTsKKwkJZXJybm8gPSBFTUZJTEU7CisJCXJldHVybiAoTlVMTCk7CisJfQorCisJZnAtPl9maWxlID0gZjsKKwlmcC0+X2ZsYWdzID0gZmxhZ3M7CisJZnAtPl9jb29raWUgPSBmcDsKKwlmcC0+X3JlYWQgPSBfX3NyZWFkOworCWZwLT5fd3JpdGUgPSBfX3N3cml0ZTsKKwlmcC0+X3NlZWsgPSBfX3NzZWVrOworCWZwLT5fY2xvc2UgPSBfX3NjbG9zZTsKKworCS8qCisJICogV2hlbiBvcGVuaW5nIGluIGFwcGVuZCBtb2RlLCBldmVuIHRob3VnaCB3ZSB1c2UgT19BUFBFTkQsCisJICogd2UgbmVlZCB0byBzZWVrIHRvIHRoZSBlbmQgc28gdGhhdCBmdGVsbCgpIGdldHMgdGhlIHJpZ2h0CisJICogYW5zd2VyLiAgSWYgdGhlIHVzZXIgdGhlbiBhbHRlcnMgdGhlIHNlZWsgcG9pbnRlciwgb3IKKwkgKiB0aGUgZmlsZSBleHRlbmRzLCB0aGlzIHdpbGwgZmFpbCwgYnV0IHRoZXJlIGlzIG5vdCBtdWNoCisJICogd2UgY2FuIGRvIGFib3V0IHRoaXMuICAoV2UgY291bGQgc2V0IF9fU0FQUCBhbmQgY2hlY2sgaW4KKwkgKiBmc2VlayBhbmQgZnRlbGwuKQorCSAqLworCWlmIChvZmxhZ3MgJiBPX0FQUEVORCkKKwkJKHZvaWQpIF9fc3NlZWsoKHZvaWQgKilmcCwgKGZwb3NfdCkwLCBTRUVLX0VORCk7CisJcmV0dXJuIChmcCk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZnJlb3Blbi5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2ZyZW9wZW4uYwppbmRleCAzMTU4ZmIxLi44MjcxN2IxIDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vZnJlb3Blbi5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9mcmVvcGVuLmMKQEAgLTEsNCArMSw0IEBACi0vKgkkT3BlbkJTRDogZnJlb3Blbi5jLHYgMS4xMyAyMDA5LzExLzA5IDAwOjE4OjI3IGt1cnQgRXhwICQgKi8KKy8qCSRPcGVuQlNEOiBmcmVvcGVuLmMsdiAxLjE0IDIwMTQvMDgvMzEgMDI6MjE6MTggZ3VlbnRoZXIgRXhwICQgKi8KIC8qLQogICogQ29weXJpZ2h0IChjKSAxOTkwLCAxOTkzCiAgKglUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KQEAgLTEzNCw3ICsxMzQsNyBAQAogCSAqIGFzc3VtZSBzdGRlcnIgaXMgYWx3YXlzIGZkIFNUREVSUl9GSUxFTk8sIGV2ZW4gaWYgYmVpbmcgZnJlb3BlbidkLgogCSAqLwogCWlmICh3YW50ZmQgPj0gMCAmJiBmICE9IHdhbnRmZCkgewotCQlpZiAoZHVwMihmLCB3YW50ZmQpID49IDApIHsKKwkJaWYgKGR1cDMoZiwgd2FudGZkLCBvZmxhZ3MgJiBPX0NMT0VYRUMpID49IDApIHsKIAkJCSh2b2lkKSBjbG9zZShmKTsKIAkJCWYgPSB3YW50ZmQ7CiAJCX0KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9nZXRkZWxpbS5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2dldGRlbGltLmMKaW5kZXggZGNkZTBjMy4uNWU1ODNjYiAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2dldGRlbGltLmMKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL2dldGRlbGltLmMKQEAgLTEsNCArMSw0IEBACi0vKgkkT3BlbkJTRDogZ2V0ZGVsaW0uYyx2IDEuMSAyMDEyLzAzLzIxIDIzOjQ0OjM1IGZnc2NoIEV4cCAkCSovCisvKgkkT3BlbkJTRDogZ2V0ZGVsaW0uYyx2IDEuMiAyMDE0LzEwLzE2IDE3OjMxOjUxIG1pbGxlcnQgRXhwICQJKi8KIC8qICROZXRCU0Q6IGdldGRlbGltLmMsdiAxLjEzIDIwMTEvMDcvMjIgMjM6MTI6MzAgam9lcmcgRXhwICQgKi8KIAogLyoKQEAgLTc4LDEzICs3OCwxMiBAQAogCQllbHNlCiAJCQlsZW4gPSAocCAtIGZwLT5fcCkgKyAxOwogCi0JCW5ld2xlbiA9IG9mZiArIGxlbjsKIAkJLyogRW5zdXJlIHdlIGNhbiBoYW5kbGUgaXQgKi8KLQkJaWYgKG5ld2xlbiA8IG9mZiB8fCBuZXdsZW4gPiBTU0laRV9NQVgpIHsKKwkJaWYgKG9mZiA+IFNTSVpFX01BWCB8fCBsZW4gKyAxID4gU1NJWkVfTUFYIC0gb2ZmKSB7CiAJCQllcnJubyA9IEVPVkVSRkxPVzsKIAkJCWdvdG8gZXJyb3I7CiAJCX0KLQkJbmV3bGVuKys7IC8qIHJlc2VydmUgc3BhY2UgZm9yIHRoZSBOVUxMIHRlcm1pbmF0b3IgKi8KKwkJbmV3bGVuID0gb2ZmICsgbGVuICsgMTsgLyogcmVzZXJ2ZSBzcGFjZSBmb3IgTlVMIHRlcm1pbmF0b3IgKi8KIAkJaWYgKG5ld2xlbiA+ICpidWZsZW4pIHsKIAkJCWlmIChuZXdsZW4gPCBNSU5CVUYpCiAJCQkJbmV3bGVuID0gTUlOQlVGOwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL21ha2VidWYuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9tYWtlYnVmLmMKaW5kZXggZDQ3ZTI3Yy4uNTZlNWYyMSAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL21ha2VidWYuYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vbWFrZWJ1Zi5jCkBAIC0xLDQgKzEsNCBAQAotLyoJJE9wZW5CU0Q6IG1ha2VidWYuYyx2IDEuOCAyMDA1LzEyLzI4IDE4OjUwOjIyIG1pbGxlcnQgRXhwICQgKi8KKy8qCSRPcGVuQlNEOiBtYWtlYnVmLmMsdiAxLjkgMjAxNS8wMS8xMyAwNzoxODoyMSBndWVudGhlciBFeHAgJCAqLwogLyotCiAgKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKICAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgpAQCAtNjUsNyArNjUsNiBAQAogCQlmcC0+X2JmLl9zaXplID0gMTsKIAkJcmV0dXJuOwogCX0KLQlfX2F0ZXhpdF9yZWdpc3Rlcl9jbGVhbnVwKF9jbGVhbnVwKTsKIAlmbGFncyB8PSBfX1NNQkY7CiAJZnAtPl9iZi5fYmFzZSA9IGZwLT5fcCA9IHA7CiAJZnAtPl9iZi5fc2l6ZSA9IHNpemU7CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vbWt0ZW1wLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vbWt0ZW1wLmMKaW5kZXggY2IxNTRjNC4uOTU2NjA4YyAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL21rdGVtcC5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9ta3RlbXAuYwpAQCAtMSw0ICsxLDQgQEAKLS8qCSRPcGVuQlNEOiBta3RlbXAuYyx2IDEuMzMgMjAxNC8wNS8wNiAyMjo1NToyNyBtaWxsZXJ0IEV4cCAkICovCisvKgkkT3BlbkJTRDogbWt0ZW1wLmMsdiAxLjM1IDIwMTQvMTAvMzEgMTU6NTQ6MTQgbWlsbGVydCBFeHAgJCAqLwogLyoKICAqIENvcHlyaWdodCAoYykgMTk5Ni0xOTk4LCAyMDA4IFRoZW8gZGUgUmFhZHQKICAqIENvcHlyaWdodCAoYykgMTk5NywgMjAwOC0yMDA5IFRvZGQgQy4gTWlsbGVyCkBAIC0zNSwxNSArMzUsMTcgQEAKICNkZWZpbmUgTlVNX0NIQVJTCShzaXplb2YoVEVNUENIQVJTKSAtIDEpCiAjZGVmaW5lIE1JTl9YCQk2CiAKKyNkZWZpbmUgTUtPVEVNUF9GTEFHUwkoT19BUFBFTkQgfCBPX0NMT0VYRUMgfCBPX0RTWU5DIHwgT19SU1lOQyB8IE9fU1lOQykKKwogI2lmbmRlZiBuaXRlbXMKICNkZWZpbmUgbml0ZW1zKF9hKQkoc2l6ZW9mKChfYSkpIC8gc2l6ZW9mKChfYSlbMF0pKQogI2VuZGlmCiAKIHN0YXRpYyBpbnQKLW1rdGVtcF9pbnRlcm5hbChjaGFyICpwYXRoLCBpbnQgc2xlbiwgaW50IG1vZGUpCitta3RlbXBfaW50ZXJuYWwoY2hhciAqcGF0aCwgaW50IHNsZW4sIGludCBtb2RlLCBpbnQgZmxhZ3MpCiB7CiAJY2hhciAqc3RhcnQsICpjcCwgKmVwOwotCWNvbnN0IGNoYXIgKnRlbXBjaGFycyA9IFRFTVBDSEFSUzsKKwljb25zdCBjaGFyIHRlbXBjaGFyc1tdID0gVEVNUENIQVJTOwogCXVuc2lnbmVkIGludCB0cmllczsKIAlzdHJ1Y3Qgc3RhdCBzYjsKIAlzaXplX3QgbGVuOwpAQCAtNjMsNiArNjUsMTIgQEAKIAkJcmV0dXJuKC0xKTsKIAl9CiAKKwlpZiAoZmxhZ3MgJiB+TUtPVEVNUF9GTEFHUykgeworCQllcnJubyA9IEVJTlZBTDsKKwkJcmV0dXJuKC0xKTsKKwl9CisJZmxhZ3MgfD0gT19DUkVBVCB8IE9fRVhDTCB8IE9fUkRXUjsKKwogCXRyaWVzID0gSU5UX01BWDsKIAlkbyB7CiAJCWNwID0gc3RhcnQ7CkBAIC04NSw3ICs5Myw3IEBACiAJCQkJcmV0dXJuKGVycm5vID09IEVOT0VOVCA/IDAgOiAtMSk7CiAJCQlicmVhazsKIAkJY2FzZSBNS1RFTVBfRklMRToKLQkJCWZkID0gb3BlbihwYXRoLCBPX0NSRUFUfE9fRVhDTHxPX1JEV1IsIFNfSVJVU1J8U19JV1VTUik7CisJCQlmZCA9IG9wZW4ocGF0aCwgZmxhZ3MsIFNfSVJVU1J8U19JV1VTUik7CiAJCQlpZiAoZmQgIT0gLTEgfHwgZXJybm8gIT0gRUVYSVNUKQogCQkJCXJldHVybihmZCk7CiAJCQlicmVhazsKQEAgLTEwNyw3ICsxMTUsNyBAQAogY2hhciAqCiBfbWt0ZW1wKGNoYXIgKnBhdGgpCiB7Ci0JaWYgKG1rdGVtcF9pbnRlcm5hbChwYXRoLCAwLCBNS1RFTVBfTkFNRSkgPT0gLTEpCisJaWYgKG1rdGVtcF9pbnRlcm5hbChwYXRoLCAwLCBNS1RFTVBfTkFNRSwgMCkgPT0gLTEpCiAJCXJldHVybihOVUxMKTsKIAlyZXR1cm4ocGF0aCk7CiB9CkBAIC0xMjIsMTUgKzEzMCwyNyBAQAogfQogCiBpbnQKK21rb3N0ZW1wcyhjaGFyICpwYXRoLCBpbnQgc2xlbiwgaW50IGZsYWdzKQoreworCXJldHVybihta3RlbXBfaW50ZXJuYWwocGF0aCwgc2xlbiwgTUtURU1QX0ZJTEUsIGZsYWdzKSk7Cit9CisKK2ludAogbWtzdGVtcChjaGFyICpwYXRoKQogewotCXJldHVybihta3RlbXBfaW50ZXJuYWwocGF0aCwgMCwgTUtURU1QX0ZJTEUpKTsKKwlyZXR1cm4obWt0ZW1wX2ludGVybmFsKHBhdGgsIDAsIE1LVEVNUF9GSUxFLCAwKSk7Cit9CisKK2ludAorbWtvc3RlbXAoY2hhciAqcGF0aCwgaW50IGZsYWdzKQoreworCXJldHVybihta3RlbXBfaW50ZXJuYWwocGF0aCwgMCwgTUtURU1QX0ZJTEUsIGZsYWdzKSk7CiB9CiAKIGludAogbWtzdGVtcHMoY2hhciAqcGF0aCwgaW50IHNsZW4pCiB7Ci0JcmV0dXJuKG1rdGVtcF9pbnRlcm5hbChwYXRoLCBzbGVuLCBNS1RFTVBfRklMRSkpOworCXJldHVybihta3RlbXBfaW50ZXJuYWwocGF0aCwgc2xlbiwgTUtURU1QX0ZJTEUsIDApKTsKIH0KIAogY2hhciAqCkBAIC0xMzgsNiArMTU4LDYgQEAKIHsKIAlpbnQgZXJyb3I7CiAKLQllcnJvciA9IG1rdGVtcF9pbnRlcm5hbChwYXRoLCAwLCBNS1RFTVBfRElSKTsKKwllcnJvciA9IG1rdGVtcF9pbnRlcm5hbChwYXRoLCAwLCBNS1RFTVBfRElSLCAwKTsKIAlyZXR1cm4oZXJyb3IgPyBOVUxMIDogcGF0aCk7CiB9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vb3Blbl9tZW1zdHJlYW0uYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9vcGVuX21lbXN0cmVhbS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ2MTA1MzUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vb3Blbl9tZW1zdHJlYW0uYwpAQCAtMCwwICsxLDE1OCBAQAorLyoJJE9wZW5CU0Q6IG9wZW5fbWVtc3RyZWFtLmMsdiAxLjMgMjAxMy8wNC8wMyAwMzoxMTo1MyBndWVudGhlciBFeHAgJAkqLworCisvKgorICogQ29weXJpZ2h0IChjKSAyMDExIE1hcnRpbiBQaWV1Y2hvdCA8bXBpQG9wZW5ic2Qub3JnPgorICoKKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgZm9yIGFueQorICogcHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBhcHBlYXIgaW4gYWxsIGNvcGllcy4KKyAqCisgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMIFdBUlJBTlRJRVMKKyAqIFdJVEggUkVHQVJEIFRPIFRISVMgU09GVFdBUkUgSU5DTFVESU5HIEFMTCBJTVBMSUVEIFdBUlJBTlRJRVMgT0YKKyAqIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUy4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBCRSBMSUFCTEUgRk9SCisgKiBBTlkgU1BFQ0lBTCwgRElSRUNULCBJTkRJUkVDVCwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTCisgKiBXSEFUU09FVkVSIFJFU1VMVElORyBGUk9NIExPU1MgT0YgVVNFLCBEQVRBIE9SIFBST0ZJVFMsIFdIRVRIRVIgSU4gQU4KKyAqIEFDVElPTiBPRiBDT05UUkFDVCwgTkVHTElHRU5DRSBPUiBPVEhFUiBUT1JUSU9VUyBBQ1RJT04sIEFSSVNJTkcgT1VUIE9GCisgKiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUiBQRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLgorICovCisKKyNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgImxvY2FsLmgiCisKK3N0cnVjdCBzdGF0ZSB7CisJY2hhcgkJICpzdHJpbmc7CS8qIGFjdHVhbCBzdHJlYW0gKi8KKwljaGFyCQkqKnBidWY7CQkvKiBwb2ludCB0byB0aGUgc3RyZWFtICovCisJc2l6ZV90CQkgKnBzaXplOwkvKiBwb2ludCB0byBtaW4ocG9zLCBsZW4pICovCisJc2l6ZV90CQkgIHBvczsJCS8qIGN1cnJlbnQgcG9zaXRpb24gKi8KKwlzaXplX3QJCSAgc2l6ZTsJCS8qIG51bWJlciBvZiBhbGxvY2F0ZWQgY2hhciAqLworCXNpemVfdAkJICBsZW47CQkvKiBsZW5ndGggb2YgdGhlIGRhdGEgKi8KK307CisKK3N0YXRpYyBpbnQKK21lbXN0cmVhbV93cml0ZSh2b2lkICp2LCBjb25zdCBjaGFyICpiLCBpbnQgbCkKK3sKKwlzdHJ1Y3Qgc3RhdGUJKnN0ID0gdjsKKwljaGFyCQkqcDsKKwlzaXplX3QJCSBpLCBlbmQ7CisKKwllbmQgPSAoc3QtPnBvcyArIGwpOworCisJaWYgKGVuZCA+PSBzdC0+c2l6ZSkgeworCQkvKiAxLjYgaXMgKHZlcnkpIGNsb3NlIHRvIHRoZSBnb2xkZW4gcmF0aW8uICovCisJCXNpemVfdAlzeiA9IHN0LT5zaXplICogOCAvIDU7CisKKwkJaWYgKHN6IDwgZW5kICsgMSkKKwkJCXN6ID0gZW5kICsgMTsKKwkJcCA9IHJlYWxsb2Moc3QtPnN0cmluZywgc3opOworCQlpZiAoIXApCisJCQlyZXR1cm4gKC0xKTsKKwkJYnplcm8ocCArIHN0LT5zaXplLCBzeiAtIHN0LT5zaXplKTsKKwkJKnN0LT5wYnVmID0gc3QtPnN0cmluZyA9IHA7CisJCXN0LT5zaXplID0gc3o7CisJfQorCisJZm9yIChpID0gMDsgaSA8IGw7IGkrKykKKwkJc3QtPnN0cmluZ1tzdC0+cG9zICsgaV0gPSBiW2ldOworCXN0LT5wb3MgKz0gbDsKKworCWlmIChzdC0+cG9zID4gc3QtPmxlbikgeworCQlzdC0+bGVuID0gc3QtPnBvczsKKwkJc3QtPnN0cmluZ1tzdC0+bGVuXSA9ICdcMCc7CisJfQorCisJKnN0LT5wc2l6ZSA9IHN0LT5wb3M7CisKKwlyZXR1cm4gKGkpOworfQorCitzdGF0aWMgZnBvc190CittZW1zdHJlYW1fc2Vlayh2b2lkICp2LCBmcG9zX3Qgb2ZmLCBpbnQgd2hlbmNlKQoreworCXN0cnVjdCBzdGF0ZQkqc3QgPSB2OworCXNzaXplX3QJCSBiYXNlID0gMDsKKworCXN3aXRjaCAod2hlbmNlKSB7CisJY2FzZSBTRUVLX1NFVDoKKwkJYnJlYWs7CisJY2FzZSBTRUVLX0NVUjoKKwkJYmFzZSA9IHN0LT5wb3M7CisJCWJyZWFrOworCWNhc2UgU0VFS19FTkQ6CisJCWJhc2UgPSBzdC0+bGVuOworCQlicmVhazsKKwl9CisKKwlpZiAob2ZmID4gU0laRV9NQVggLSBiYXNlIHx8IG9mZiA8IC1iYXNlKSB7CisJCWVycm5vID0gRU9WRVJGTE9XOworCQlyZXR1cm4gKC0xKTsKKwl9CisKKwlzdC0+cG9zID0gYmFzZSArIG9mZjsKKwkqc3QtPnBzaXplID0gTUlOKHN0LT5wb3MsIHN0LT5sZW4pOworCisJcmV0dXJuIChzdC0+cG9zKTsKK30KKworc3RhdGljIGludAorbWVtc3RyZWFtX2Nsb3NlKHZvaWQgKnYpCit7CisJc3RydWN0IHN0YXRlCSpzdCA9IHY7CisKKwlmcmVlKHN0KTsKKworCXJldHVybiAoMCk7Cit9CisKK0ZJTEUgKgorb3Blbl9tZW1zdHJlYW0oY2hhciAqKnBidWYsIHNpemVfdCAqcHNpemUpCit7CisJc3RydWN0IHN0YXRlCSpzdDsKKwlGSUxFCQkqZnA7CisKKwlpZiAocGJ1ZiA9PSBOVUxMIHx8IHBzaXplID09IE5VTEwpIHsKKwkJZXJybm8gPSBFSU5WQUw7CisJCXJldHVybiAoTlVMTCk7CisJfQorCisJaWYgKChzdCA9IG1hbGxvYyhzaXplb2YoKnN0KSkpID09IE5VTEwpCisJCXJldHVybiAoTlVMTCk7CisKKwlpZiAoKGZwID0gX19zZnAoKSkgPT0gTlVMTCkgeworCQlmcmVlKHN0KTsKKwkJcmV0dXJuIChOVUxMKTsKKwl9CisKKwlzdC0+c2l6ZSA9IEJVRlNJWjsKKwlpZiAoKHN0LT5zdHJpbmcgPSBjYWxsb2MoMSwgc3QtPnNpemUpKSA9PSBOVUxMKSB7CisJCWZyZWUoc3QpOworCQlmcC0+X2ZsYWdzID0gMDsKKwkJcmV0dXJuIChOVUxMKTsKKwl9CisKKwkqc3QtPnN0cmluZyA9ICdcMCc7CisJc3QtPnBvcyA9IDA7CisJc3QtPmxlbiA9IDA7CisJc3QtPnBidWYgPSBwYnVmOworCXN0LT5wc2l6ZSA9IHBzaXplOworCisJKnBidWYgPSBzdC0+c3RyaW5nOworCSpwc2l6ZSA9IHN0LT5sZW47CisKKwlmcC0+X2ZsYWdzID0gX19TV1I7CisJZnAtPl9maWxlID0gLTE7CisJZnAtPl9jb29raWUgPSBzdDsKKwlmcC0+X3JlYWQgPSBOVUxMOworCWZwLT5fd3JpdGUgPSBtZW1zdHJlYW1fd3JpdGU7CisJZnAtPl9zZWVrID0gbWVtc3RyZWFtX3NlZWs7CisJZnAtPl9jbG9zZSA9IG1lbXN0cmVhbV9jbG9zZTsKKwlfU0VUX09SSUVOVEFUSU9OKGZwLCAtMSk7CisKKwlyZXR1cm4gKGZwKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9vcGVuX3dtZW1zdHJlYW0uYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9vcGVuX3dtZW1zdHJlYW0uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zOTFhOTQ0Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL29wZW5fd21lbXN0cmVhbS5jCkBAIC0wLDAgKzEsMTY5IEBACisvKgkkT3BlbkJTRDogb3Blbl93bWVtc3RyZWFtLmMsdiAxLjQgMjAxNC8xMC8wOCAwNToyODoxOSBkZXJhYWR0IEV4cCAkCSovCisKKy8qCisgKiBDb3B5cmlnaHQgKGMpIDIwMTEgTWFydGluIFBpZXVjaG90IDxtcGlAb3BlbmJzZC5vcmc+CisgKgorICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcyBzb2Z0d2FyZSBmb3IgYW55CisgKiBwdXJwb3NlIHdpdGggb3Igd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIGFwcGVhciBpbiBhbGwgY29waWVzLgorICoKKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBUSEUgQVVUSE9SIERJU0NMQUlNUyBBTEwgV0FSUkFOVElFUworICogV0lUSCBSRUdBUkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxMIElNUExJRUQgV0FSUkFOVElFUyBPRgorICogTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTLiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IKKyAqIEFOWSBTUEVDSUFMLCBESVJFQ1QsIElORElSRUNULCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgT1IgQU5ZIERBTUFHRVMKKyAqIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZST00gTE9TUyBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTgorICogQUNUSU9OIE9GIENPTlRSQUNULCBORUdMSUdFTkNFIE9SIE9USEVSIFRPUlRJT1VTIEFDVElPTiwgQVJJU0lORyBPVVQgT0YKKyAqIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgVVNFIE9SIFBFUkZPUk1BTkNFIE9GIFRISVMgU09GVFdBUkUuCisgKi8KKworI2luY2x1ZGUgPHN5cy9wYXJhbS5oPgorCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8d2NoYXIuaD4KKyNpbmNsdWRlICJsb2NhbC5oIgorCitzdHJ1Y3Qgc3RhdGUgeworCXdjaGFyX3QJCSAqc3RyaW5nOwkvKiBhY3R1YWwgc3RyZWFtICovCisJd2NoYXJfdAkJKipwYnVmOwkJLyogcG9pbnQgdG8gdGhlIHN0cmVhbSAqLworCXNpemVfdAkJICpwc2l6ZTsJLyogcG9pbnQgdG8gbWluKHBvcywgbGVuKSAqLworCXNpemVfdAkJICBwb3M7CQkvKiBjdXJyZW50IHBvc2l0aW9uICovCisJc2l6ZV90CQkgIHNpemU7CQkvKiBudW1iZXIgb2YgYWxsb2NhdGVkIHdjaGFyX3QgKi8KKwlzaXplX3QJCSAgbGVuOwkJLyogbGVuZ3RoIG9mIHRoZSBkYXRhICovCisJbWJzdGF0ZV90CSAgbWJzOwkJLyogY29udmVyc2lvbiBzdGF0ZSBvZiB0aGUgc3RyZWFtICovCit9OworCitzdGF0aWMgaW50Cit3bWVtc3RyZWFtX3dyaXRlKHZvaWQgKnYsIGNvbnN0IGNoYXIgKmIsIGludCBsKQoreworCXN0cnVjdCBzdGF0ZQkqc3QgPSB2OworCXdjaGFyX3QJCSpwOworCXNpemVfdAkJIG5tYywgbGVuLCBlbmQ7CisKKwllbmQgPSAoc3QtPnBvcyArIGwpOworCisJaWYgKGVuZCA+PSBzdC0+c2l6ZSkgeworCQkvKiAxLjYgaXMgKHZlcnkpIGNsb3NlIHRvIHRoZSBnb2xkZW4gcmF0aW8uICovCisJCXNpemVfdAlzeiA9IHN0LT5zaXplICogOCAvIDU7CisKKwkJaWYgKHN6IDwgZW5kICsgMSkKKwkJCXN6ID0gZW5kICsgMTsKKwkJcCA9IHJlYWxsb2NhcnJheShzdC0+c3RyaW5nLCBzeiwgc2l6ZW9mKHdjaGFyX3QpKTsKKwkJaWYgKCFwKQorCQkJcmV0dXJuICgtMSk7CisJCWJ6ZXJvKHAgKyBzdC0+c2l6ZSwgKHN6IC0gc3QtPnNpemUpICogc2l6ZW9mKHdjaGFyX3QpKTsKKwkJKnN0LT5wYnVmID0gc3QtPnN0cmluZyA9IHA7CisJCXN0LT5zaXplID0gc3o7CisJfQorCisJbm1jID0gKHN0LT5zaXplIC0gc3QtPnBvcykgKiBzaXplb2Yod2NoYXJfdCk7CisJbGVuID0gbWJzbnJ0b3djcyhzdC0+c3RyaW5nICsgc3QtPnBvcywgJmIsIG5tYywgbCwgJnN0LT5tYnMpOworCWlmIChsZW4gPT0gKHNpemVfdCktMSkKKwkJcmV0dXJuICgtMSk7CisJc3QtPnBvcyArPSBsZW47CisKKwlpZiAoc3QtPnBvcyA+IHN0LT5sZW4pIHsKKwkJc3QtPmxlbiA9IHN0LT5wb3M7CisJCXN0LT5zdHJpbmdbc3QtPmxlbl0gPSBMJ1wwJzsKKwl9CisKKwkqc3QtPnBzaXplID0gc3QtPnBvczsKKworCXJldHVybiAobGVuKTsKK30KKworc3RhdGljIGZwb3NfdAord21lbXN0cmVhbV9zZWVrKHZvaWQgKnYsIGZwb3NfdCBvZmYsIGludCB3aGVuY2UpCit7CisJc3RydWN0IHN0YXRlCSpzdCA9IHY7CisJc3NpemVfdAkJIGJhc2UgPSAwOworCisJc3dpdGNoICh3aGVuY2UpIHsKKwljYXNlIFNFRUtfU0VUOgorCQlicmVhazsKKwljYXNlIFNFRUtfQ1VSOgorCQliYXNlID0gc3QtPnBvczsKKwkJYnJlYWs7CisJY2FzZSBTRUVLX0VORDoKKwkJYmFzZSA9IHN0LT5sZW47CisJCWJyZWFrOworCX0KKworCWlmIChvZmYgPiAoU0laRV9NQVggLyBzaXplb2Yod2NoYXJfdCkpIC0gYmFzZSB8fCBvZmYgPCAtYmFzZSkgeworCQllcnJubyA9IEVPVkVSRkxPVzsKKwkJcmV0dXJuICgtMSk7CisJfQorCisJLyoKKwkgKiBYWFggQ2xlYXJpbmcgbWJzIGhlcmUgaW52YWxpZGF0ZXMgc2hpZnQgc3RhdGUgZm9yIHN0YXRlLQorCSAqIGRlcGVuZGVudCBlbmNvZGluZ3MsIGJ1dCB0aGV5IGFyZSBub3QgKHlldCkgc3VwcG9ydGVkLgorCSAqLworCWJ6ZXJvKCZzdC0+bWJzLCBzaXplb2Yoc3QtPm1icykpOworCisJc3QtPnBvcyA9IGJhc2UgKyBvZmY7CisJKnN0LT5wc2l6ZSA9IE1JTihzdC0+cG9zLCBzdC0+bGVuKTsKKworCXJldHVybiAoc3QtPnBvcyk7Cit9CisKK3N0YXRpYyBpbnQKK3dtZW1zdHJlYW1fY2xvc2Uodm9pZCAqdikKK3sKKwlzdHJ1Y3Qgc3RhdGUJKnN0ID0gdjsKKworCWZyZWUoc3QpOworCisJcmV0dXJuICgwKTsKK30KKworRklMRSAqCitvcGVuX3dtZW1zdHJlYW0od2NoYXJfdCAqKnBidWYsIHNpemVfdCAqcHNpemUpCit7CisJc3RydWN0IHN0YXRlCSpzdDsKKwlGSUxFCQkqZnA7CisKKwlpZiAocGJ1ZiA9PSBOVUxMIHx8IHBzaXplID09IE5VTEwpIHsKKwkJZXJybm8gPSBFSU5WQUw7CisJCXJldHVybiAoTlVMTCk7CisJfQorCisJaWYgKChzdCA9IG1hbGxvYyhzaXplb2YoKnN0KSkpID09IE5VTEwpCisJCXJldHVybiAoTlVMTCk7CisKKwlpZiAoKGZwID0gX19zZnAoKSkgPT0gTlVMTCkgeworCQlmcmVlKHN0KTsKKwkJcmV0dXJuIChOVUxMKTsKKwl9CisKKwlzdC0+c2l6ZSA9IEJVRlNJWiAqIHNpemVvZih3Y2hhcl90KTsKKwlpZiAoKHN0LT5zdHJpbmcgPSBjYWxsb2MoMSwgc3QtPnNpemUpKSA9PSBOVUxMKSB7CisJCWZyZWUoc3QpOworCQlmcC0+X2ZsYWdzID0gMDsKKwkJcmV0dXJuIChOVUxMKTsKKwl9CisKKwkqc3QtPnN0cmluZyA9IEwnXDAnOworCXN0LT5wb3MgPSAwOworCXN0LT5sZW4gPSAwOworCXN0LT5wYnVmID0gcGJ1ZjsKKwlzdC0+cHNpemUgPSBwc2l6ZTsKKwliemVybygmc3QtPm1icywgc2l6ZW9mKHN0LT5tYnMpKTsKKworCSpwYnVmID0gc3QtPnN0cmluZzsKKwkqcHNpemUgPSBzdC0+bGVuOworCisJZnAtPl9mbGFncyA9IF9fU1dSOworCWZwLT5fZmlsZSA9IC0xOworCWZwLT5fY29va2llID0gc3Q7CisJZnAtPl9yZWFkID0gTlVMTDsKKwlmcC0+X3dyaXRlID0gd21lbXN0cmVhbV93cml0ZTsKKwlmcC0+X3NlZWsgPSB3bWVtc3RyZWFtX3NlZWs7CisJZnAtPl9jbG9zZSA9IHdtZW1zdHJlYW1fY2xvc2U7CisJX1NFVF9PUklFTlRBVElPTihmcCwgMSk7CisKKwlyZXR1cm4gKGZwKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9zZXR2YnVmLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vc2V0dmJ1Zi5jCmluZGV4IDZjNDlmN2EuLjliMmFiNTcgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9zZXR2YnVmLmMKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3NldHZidWYuYwpAQCAtMSw0ICsxLDQgQEAKLS8qCSRPcGVuQlNEOiBzZXR2YnVmLmMsdiAxLjExIDIwMDkvMTEvMDkgMDA6MTg6Mjcga3VydCBFeHAgJCAqLworLyoJJE9wZW5CU0Q6IHNldHZidWYuYyx2IDEuMTIgMjAxNS8wMS8xMyAwNzoxODoyMSBndWVudGhlciBFeHAgJCAqLwogLyotCiAgKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKICAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgpAQCAtMTE1LDYgKzExNSwxMyBAQAogCX0KIAogCS8qCisJICogV2UncmUgY29tbWl0dGVkIHRvIGJ1ZmZlcmluZyBmcm9tIGhlcmUsIHNvIG1ha2Ugc3VyZSB3ZSd2ZQorCSAqIHJlZ2lzdGVyZWQgdG8gZmx1c2ggYnVmZmVycyBvbiBleGl0LgorCSAqLworCWlmICghX19zZGlkaW5pdCkKKwkJX19zaW5pdCgpOworCisJLyoKIAkgKiBLaWxsIGFueSBzZWVrIG9wdGltaXphdGlvbiBpZiB0aGUgYnVmZmVyIGlzIG5vdCB0aGUKIAkgKiByaWdodCBzaXplLgogCSAqCkBAIC0xMjQsOCArMTMxLDcgQEAKIAkJZmxhZ3MgfD0gX19TTlBUOwogCiAJLyoKLQkgKiBGaXggdXAgdGhlIEZJTEUgZmllbGRzLCBhbmQgc2V0IF9fY2xlYW51cCBmb3Igb3V0cHV0IGZsdXNoIG9uCi0JICogZXhpdCAoc2luY2Ugd2UgYXJlIGJ1ZmZlcmVkIGluIHNvbWUgd2F5KS4KKwkgKiBGaXggdXAgdGhlIEZJTEUgZmllbGRzLgogCSAqLwogCWlmIChtb2RlID09IF9JT0xCRikKIAkJZmxhZ3MgfD0gX19TTEJGOwpAQCAtMTQ4LDcgKzE1NCw2IEBACiAJCWZwLT5fdyA9IDA7CiAJfQogCUZVTkxPQ0tGSUxFKGZwKTsKLQlfX2F0ZXhpdF9yZWdpc3Rlcl9jbGVhbnVwKF9jbGVhbnVwKTsKIAogCXJldHVybiAocmV0KTsKIH0KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby9zdGRpby5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3N0ZGlvLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE0YTI3YjUuLjAwMDAwMDAKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3N0ZGlvLmMKKysrIC9kZXYvbnVsbApAQCAtMSw4OSArMCwwIEBACi0vKgkkT3BlbkJTRDogc3RkaW8uYyx2IDEuOSAyMDA1LzA4LzA4IDA4OjA1OjM2IGVzcGllIEV4cCAkICovCi0vKi0KLSAqIENvcHlyaWdodCAoYykgMTk5MCwgMTk5MwotICoJVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQotICogQ2hyaXMgVG9yZWsuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycwotICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCi0gKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAotICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi0gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLSAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLSAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLSAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLSAqIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlIDxmY250bC5oPgotI2luY2x1ZGUgPHVuaXN0ZC5oPgotI2luY2x1ZGUgPHN0ZGlvLmg+Ci0jaW5jbHVkZSAibG9jYWwuaCIKLQotLyoKLSAqIFNtYWxsIHN0YW5kYXJkIEkvTy9zZWVrL2Nsb3NlIGZ1bmN0aW9ucy4KLSAqIFRoZXNlIG1haW50YWluIHRoZSBga25vd24gc2VlayBvZmZzZXQnIGZvciBzZWVrIG9wdGltaXNhdGlvbi4KLSAqLwotaW50Ci1fX3NyZWFkKHZvaWQgKmNvb2tpZSwgY2hhciAqYnVmLCBpbnQgbikKLXsKLQlGSUxFICpmcCA9IGNvb2tpZTsKLQlpbnQgcmV0OwotCQotCXJldCA9IHJlYWQoZnAtPl9maWxlLCBidWYsIG4pOwotCS8qIGlmIHRoZSByZWFkIHN1Y2NlZWRlZCwgdXBkYXRlIHRoZSBjdXJyZW50IG9mZnNldCAqLwotCWlmIChyZXQgPj0gMCkKLQkJZnAtPl9vZmZzZXQgKz0gcmV0OwotCWVsc2UKLQkJZnAtPl9mbGFncyAmPSB+X19TT0ZGOwkvKiBwYXJhbm9pYSAqLwotCXJldHVybiAocmV0KTsKLX0KLQotaW50Ci1fX3N3cml0ZSh2b2lkICpjb29raWUsIGNvbnN0IGNoYXIgKmJ1ZiwgaW50IG4pCi17Ci0JRklMRSAqZnAgPSBjb29raWU7Ci0KLQlpZiAoZnAtPl9mbGFncyAmIF9fU0FQUCkKLQkJKHZvaWQpIGxzZWVrKGZwLT5fZmlsZSwgKG9mZl90KTAsIFNFRUtfRU5EKTsKLQlmcC0+X2ZsYWdzICY9IH5fX1NPRkY7CS8qIGluIGNhc2UgRkFQUEVORCBtb2RlIGlzIHNldCAqLwotCXJldHVybiAod3JpdGUoZnAtPl9maWxlLCBidWYsIG4pKTsKLX0KLQotZnBvc190Ci1fX3NzZWVrKHZvaWQgKmNvb2tpZSwgZnBvc190IG9mZnNldCwgaW50IHdoZW5jZSkKLXsKLQlGSUxFICpmcCA9IGNvb2tpZTsKLQlvZmZfdCByZXQ7Ci0JCi0JcmV0ID0gbHNlZWsoZnAtPl9maWxlLCAob2ZmX3Qpb2Zmc2V0LCB3aGVuY2UpOwotCWlmIChyZXQgPT0gKG9mZl90KS0xKQotCQlmcC0+X2ZsYWdzICY9IH5fX1NPRkY7Ci0JZWxzZSB7Ci0JCWZwLT5fZmxhZ3MgfD0gX19TT0ZGOwotCQlmcC0+X29mZnNldCA9IHJldDsKLQl9Ci0JcmV0dXJuIChyZXQpOwotfQotCi1pbnQKLV9fc2Nsb3NlKHZvaWQgKmNvb2tpZSkKLXsKLQlyZXR1cm4gKGNsb3NlKCgoRklMRSAqKWNvb2tpZSktPl9maWxlKSk7Ci19CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vdW5nZXRjLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vdW5nZXRjLmMKaW5kZXggNjc1NzMzYS4uZWM5OGYyNiAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3VuZ2V0Yy5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby91bmdldGMuYwpAQCAtMSw0ICsxLDQgQEAKLS8qCSRPcGVuQlNEOiB1bmdldGMuYyx2IDEuMTIgMjAwOS8xMS8wOSAwMDoxODoyNyBrdXJ0IEV4cCAkICovCisvKgkkT3BlbkJTRDogdW5nZXRjLmMsdiAxLjEzIDIwMTQvMTAvMTEgMDQ6MDU6MTAgZGVyYWFkdCBFeHAgJCAqLwogLyotCiAgKiBDb3B5cmlnaHQgKGMpIDE5OTAsIDE5OTMKICAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgpAQCAtNjQsMTQgKzY0LDE0IEBACiAJCXJldHVybiAoMCk7CiAJfQogCWkgPSBfVUIoZnApLl9zaXplOwotCXAgPSByZWFsbG9jKF9VQihmcCkuX2Jhc2UsIGkgPDwgMSk7CisJcCA9IHJlYWxsb2NhcnJheShfVUIoZnApLl9iYXNlLCBpLCAyKTsKIAlpZiAocCA9PSBOVUxMKQogCQlyZXR1cm4gKEVPRik7CiAJLyogbm8gb3ZlcmxhcCAoaGVuY2UgY2FuIHVzZSBtZW1jcHkpIGJlY2F1c2Ugd2UgZG91YmxlZCB0aGUgc2l6ZSAqLwogCSh2b2lkKW1lbWNweSgodm9pZCAqKShwICsgaSksICh2b2lkICopcCwgKHNpemVfdClpKTsKIAlmcC0+X3AgPSBwICsgaTsKIAlfVUIoZnApLl9iYXNlID0gcDsKLQlfVUIoZnApLl9zaXplID0gaSA8PCAxOworCV9VQihmcCkuX3NpemUgPSBpICogMjsKIAlyZXR1cm4gKDApOwogfQogCmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vdmZwcmludGYuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby92ZnByaW50Zi5jCmluZGV4IDdmOGZmMzEuLjVmNGZiN2YgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby92ZnByaW50Zi5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby92ZnByaW50Zi5jCkBAIC0xLDQgKzEsNCBAQAotLyoJJE9wZW5CU0Q6IHZmcHJpbnRmLmMsdiAxLjY2IDIwMTQvMDUvMDMgMTI6MzY6NDUgZGVyYWFkdCBFeHAgJAkqLworLyoJJE9wZW5CU0Q6IHZmcHJpbnRmLmMsdiAxLjY3IDIwMTQvMTIvMjEgMDA6MjM6MzAgZGFuaWVsIEV4cCAkCSovCiAvKi0KICAqIENvcHlyaWdodCAoYykgMTk5MCBUaGUgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KQEAgLTc1MywxMCArNzUzLDkgQEAKIAkJCWlmIChzaWduZmxhZykKIAkJCQlzaWduID0gJy0nOwogCQkJaWYgKGV4cHQgPT0gSU5UX01BWCkgewkvKiBpbmYgb3IgbmFuICovCi0JCQkJaWYgKCpjcCA9PSAnTicpIHsKKwkJCQlpZiAoKmNwID09ICdOJykKIAkJCQkJY3AgPSAoY2ggPj0gJ2EnKSA/ICJuYW4iIDogIk5BTiI7Ci0JCQkJCXNpZ24gPSAnXDAnOwotCQkJCX0gZWxzZQorCQkJCWVsc2UKIAkJCQkJY3AgPSAoY2ggPj0gJ2EnKSA/ICJpbmYiIDogIklORiI7CiAgCQkJCXNpemUgPSAzOwogCQkJCWZsYWdzICY9IH5aRVJPUEFEOwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3Zmd3ByaW50Zi5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGlvL3Zmd3ByaW50Zi5jCmluZGV4IGVmMGNhNDMuLmE2ZjQxMjMgMTAwNjQ0Ci0tLSBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRpby92ZndwcmludGYuYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkaW8vdmZ3cHJpbnRmLmMKQEAgLTEsNCArMSw0IEBACi0vKgkkT3BlbkJTRDogdmZ3cHJpbnRmLmMsdiAxLjExIDIwMTQvMDYvMDQgMDc6NDU6MjUgc3RzcCBFeHAgJCAqLworLyoJJE9wZW5CU0Q6IHZmd3ByaW50Zi5jLHYgMS4xMiAyMDE0LzEyLzIxIDAwOjIzOjMwIGRhbmllbCBFeHAgJCAqLwogLyotCiAgKiBDb3B5cmlnaHQgKGMpIDE5OTAgVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCkBAIC03MzEsMTAgKzczMSw5IEBACiAJCQlpZiAoc2lnbmZsYWcpCiAJCQkJc2lnbiA9ICctJzsKIAkJCWlmIChleHB0ID09IElOVF9NQVgpIHsJLyogaW5mIG9yIG5hbiAqLwotCQkJCWlmICgqY3AgPT0gJ04nKSB7CisJCQkJaWYgKCpjcCA9PSAnTicpCiAJCQkJCWNwID0gKGNoID49ICdhJykgPyBMIm5hbiIgOiBMIk5BTiI7Ci0JCQkJCXNpZ24gPSAnXDAnOwotCQkJCX0gZWxzZQorCQkJCWVsc2UKIAkJCQkJY3AgPSAoY2ggPj0gJ2EnKSA/IEwiaW5mIiA6IEwiSU5GIjsKICAJCQkJc2l6ZSA9IDM7CiAJCQkJZmxhZ3MgJj0gflpFUk9QQUQ7CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL2F0ZXhpdC5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9hdGV4aXQuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjUzMmIzOC4uMDAwMDAwMAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL2F0ZXhpdC5jCisrKyAvZGV2L251bGwKQEAgLTEsMjAyICswLDAgQEAKLS8qCSRPcGVuQlNEOiBhdGV4aXQuYyx2IDEuMjAgMjAxNC8wNy8xMSAwOTo1MTozNyBrZXR0ZW5pcyBFeHAgJCAqLwotLyoKLSAqIENvcHlyaWdodCAoYykgMjAwMiBEYW5pZWwgSGFydG1laWVyCi0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICoKLSAqICAgIC0gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogICAgLSBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiAgICAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCi0gKiAgICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAotICogICAgICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwotICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKLSAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCi0gKiBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQotICogQ09QWVJJR0hUIEhPTERFUlMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCi0gKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAotICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgotICogQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTgotICogQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCi0gKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqCi0gKi8KLQotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPHN5cy9tbWFuLmg+Ci0jaW5jbHVkZSA8c3RkbGliLmg+Ci0jaW5jbHVkZSA8c3RyaW5nLmg+Ci0jaW5jbHVkZSA8dW5pc3RkLmg+Ci0jaW5jbHVkZSAiYXRleGl0LmgiCi0jaW5jbHVkZSAidGhyZWFkX3ByaXZhdGUuaCIKLQotc3RydWN0IGF0ZXhpdCAqX19hdGV4aXQ7Ci1zdGF0aWMgaW50IHJlc3RhcnRsb29wOwotCi0vKgotICogRnVuY3Rpb24gcG9pbnRlcnMgYXJlIHN0b3JlZCBpbiBhIGxpbmtlZCBsaXN0IG9mIHBhZ2VzLiBUaGUgbGlzdAotICogaXMgaW5pdGlhbGx5IGVtcHR5LCBhbmQgcGFnZXMgYXJlIGFsbG9jYXRlZCBvbiBkZW1hbmQuIFRoZSBmaXJzdAotICogZnVuY3Rpb24gcG9pbnRlciBpbiB0aGUgZmlyc3QgYWxsb2NhdGVkIHBhZ2UgKHRoZSBsYXN0IG9uZSBpbgotICogdGhlIGxpbmtlZCBsaXN0KSBpcyByZXNlcnZlZCBmb3IgdGhlIGNsZWFudXAgZnVuY3Rpb24uCi0gKgotICogT3V0c2lkZSB0aGUgZm9sbG93aW5nIGZ1bmN0aW9ucywgYWxsIHBhZ2VzIGFyZSBtcHJvdGVjdCgpJ2VkCi0gKiB0byBwcmV2ZW50IHVuaW50ZW50aW9uYWwvbWFsaWNpb3VzIGNvcnJ1cHRpb24uCi0gKi8KLQotLyoKLSAqIFJlZ2lzdGVyIGEgZnVuY3Rpb24gdG8gYmUgcGVyZm9ybWVkIGF0IGV4aXQgb3Igd2hlbiBhIHNoYXJlZCBvYmplY3QKLSAqIHdpdGggdGhlIGdpdmVuIGRzbyBoYW5kbGUgaXMgdW5sb2FkZWQgZHluYW1pY2FsbHkuICBBbHNvIHVzZWQgYXMKLSAqIHRoZSBiYWNrZW5kIGZvciBhdGV4aXQoKS4gIEZvciBtb3JlIGluZm8gb24gdGhpcyBBUEksIHNlZToKLSAqCi0gKglodHRwOi8vd3d3LmNvZGVzb3VyY2VyeS5jb20vY3h4LWFiaS9hYmkuaHRtbCNkc28tZHRvcgotICovCi1pbnQKLV9fY3hhX2F0ZXhpdCh2b2lkICgqZnVuYykodm9pZCAqKSwgdm9pZCAqYXJnLCB2b2lkICpkc28pCi17Ci0Jc3RydWN0IGF0ZXhpdCAqcCA9IF9fYXRleGl0OwotCXN0cnVjdCBhdGV4aXRfZm4gKmZucDsKLQlpbnQgcGdzaXplID0gZ2V0cGFnZXNpemUoKTsKLQlpbnQgcmV0ID0gLTE7Ci0KLQlpZiAocGdzaXplIDwgc2l6ZW9mKCpwKSkKLQkJcmV0dXJuICgtMSk7Ci0JX0FURVhJVF9MT0NLKCk7Ci0JcCA9IF9fYXRleGl0OwotCWlmIChwICE9IE5VTEwpIHsKLQkJaWYgKHAtPmluZCArIDEgPj0gcC0+bWF4KQotCQkJcCA9IE5VTEw7Ci0JCWVsc2UgaWYgKG1wcm90ZWN0KHAsIHBnc2l6ZSwgUFJPVF9SRUFEIHwgUFJPVF9XUklURSkpCi0JCQlnb3RvIHVubG9jazsKLQl9Ci0JaWYgKHAgPT0gTlVMTCkgewotCQlwID0gbW1hcChOVUxMLCBwZ3NpemUsIFBST1RfUkVBRCB8IFBST1RfV1JJVEUsCi0JCSAgICBNQVBfQU5PTiB8IE1BUF9QUklWQVRFLCAtMSwgMCk7Ci0JCWlmIChwID09IE1BUF9GQUlMRUQpCi0JCQlnb3RvIHVubG9jazsKLQkJaWYgKF9fYXRleGl0ID09IE5VTEwpIHsKLQkJCW1lbXNldCgmcC0+Zm5zWzBdLCAwLCBzaXplb2YocC0+Zm5zWzBdKSk7Ci0JCQlwLT5pbmQgPSAxOwotCQl9IGVsc2UKLQkJCXAtPmluZCA9IDA7Ci0JCXAtPm1heCA9IChwZ3NpemUgLSAoKGNoYXIgKikmcC0+Zm5zWzBdIC0gKGNoYXIgKilwKSkgLwotCQkgICAgc2l6ZW9mKHAtPmZuc1swXSk7Ci0JCXAtPm5leHQgPSBfX2F0ZXhpdDsKLQkJX19hdGV4aXQgPSBwOwotCX0KLQlmbnAgPSAmcC0+Zm5zW3AtPmluZCsrXTsKLQlmbnAtPmZuX3B0ciA9IGZ1bmM7Ci0JZm5wLT5mbl9hcmcgPSBhcmc7Ci0JZm5wLT5mbl9kc28gPSBkc287Ci0JaWYgKG1wcm90ZWN0KHAsIHBnc2l6ZSwgUFJPVF9SRUFEKSkKLQkJZ290byB1bmxvY2s7Ci0JcmVzdGFydGxvb3AgPSAxOwotCXJldCA9IDA7Ci11bmxvY2s6Ci0JX0FURVhJVF9VTkxPQ0soKTsKLQlyZXR1cm4gKHJldCk7Ci19Ci0KLS8qCi0gKiBDYWxsIGFsbCBoYW5kbGVycyByZWdpc3RlcmVkIHdpdGggX19jeGFfYXRleGl0KCkgZm9yIHRoZSBzaGFyZWQKLSAqIG9iamVjdCBvd25pbmcgJ2RzbycuCi0gKiBOb3RlOiBpZiAnZHNvJyBpcyBOVUxMLCB0aGVuIGFsbCByZW1haW5pbmcgaGFuZGxlcnMgYXJlIGNhbGxlZC4KLSAqLwotdm9pZAotX19jeGFfZmluYWxpemUodm9pZCAqZHNvKQotewotCXN0cnVjdCBhdGV4aXQgKnAsICpxOwotCXN0cnVjdCBhdGV4aXRfZm4gZm47Ci0JaW50IG4sIHBnc2l6ZSA9IGdldHBhZ2VzaXplKCk7Ci0Jc3RhdGljIGludCBjYWxsX2RlcHRoOwotCi0JX0FURVhJVF9MT0NLKCk7Ci0JY2FsbF9kZXB0aCsrOwotCi1yZXN0YXJ0OgotCXJlc3RhcnRsb29wID0gMDsKLQlmb3IgKHAgPSBfX2F0ZXhpdDsgcCAhPSBOVUxMOyBwID0gcC0+bmV4dCkgewotCQlmb3IgKG4gPSBwLT5pbmQ7IC0tbiA+PSAwOykgewotCQkJaWYgKHAtPmZuc1tuXS5mbl9wdHIgPT0gTlVMTCkKLQkJCQljb250aW51ZTsJLyogYWxyZWFkeSBjYWxsZWQgKi8KLQkJCWlmIChkc28gIT0gTlVMTCAmJiBkc28gIT0gcC0+Zm5zW25dLmZuX2RzbykKLQkJCQljb250aW51ZTsJLyogd3JvbmcgRFNPICovCi0KLQkJCS8qCi0JCQkgKiBNYXJrIGhhbmRsZXIgYXMgaGF2aW5nIGJlZW4gYWxyZWFkeSBjYWxsZWQgdG8gYXZvaWQKLQkJCSAqIGR1cGVzIGFuZCBsb29wcywgdGhlbiBjYWxsIHRoZSBhcHByb3ByaWF0ZSBmdW5jdGlvbi4KLQkJCSAqLwotCQkJZm4gPSBwLT5mbnNbbl07Ci0JCQlpZiAobXByb3RlY3QocCwgcGdzaXplLCBQUk9UX1JFQUQgfCBQUk9UX1dSSVRFKSA9PSAwKSB7Ci0JCQkJcC0+Zm5zW25dLmZuX3B0ciA9IE5VTEw7Ci0JCQkJbXByb3RlY3QocCwgcGdzaXplLCBQUk9UX1JFQUQpOwotCQkJfQotCQkJX0FURVhJVF9VTkxPQ0soKTsKLQkJCSgqZm4uZm5fcHRyKShmbi5mbl9hcmcpOwotCQkJX0FURVhJVF9MT0NLKCk7Ci0JCQlpZiAocmVzdGFydGxvb3ApCi0JCQkJZ290byByZXN0YXJ0OwotCQl9Ci0JfQotCi0JY2FsbF9kZXB0aC0tOwotCi0JLyoKLQkgKiBJZiBjYWxsZWQgdmlhIGV4aXQoKSwgdW5tYXAgdGhlIHBhZ2VzIHNpbmNlIHdlIGhhdmUgbm93IHJ1bgotCSAqIGFsbCB0aGUgaGFuZGxlcnMuICBXZSBkZWZlciB0aGlzIHVudGlsIGNhbGxkZXB0aCA9PSAwIHNvIHRoYXQKLQkgKiB3ZSBkb24ndCB1bm1hcCB0aGluZ3MgcHJlbWF0dXJlbHkgaWYgY2FsbGVkIHJlY3Vyc2l2ZWx5LgotCSAqLwotCWlmIChkc28gPT0gTlVMTCAmJiBjYWxsX2RlcHRoID09IDApIHsKLQkJZm9yIChwID0gX19hdGV4aXQ7IHAgIT0gTlVMTDsgKSB7Ci0JCQlxID0gcDsKLQkJCXAgPSBwLT5uZXh0OwotCQkJbXVubWFwKHEsIHBnc2l6ZSk7Ci0JCX0KLQkJX19hdGV4aXQgPSBOVUxMOwotCX0KLQlfQVRFWElUX1VOTE9DSygpOwotfQotCi0vKgotICogUmVnaXN0ZXIgdGhlIGNsZWFudXAgZnVuY3Rpb24KLSAqLwotdm9pZAotX19hdGV4aXRfcmVnaXN0ZXJfY2xlYW51cCh2b2lkICgqZnVuYykodm9pZCkpCi17Ci0Jc3RydWN0IGF0ZXhpdCAqcDsKLQlpbnQgcGdzaXplID0gZ2V0cGFnZXNpemUoKTsKLQotCWlmIChwZ3NpemUgPCBzaXplb2YoKnApKQotCQlyZXR1cm47Ci0JX0FURVhJVF9MT0NLKCk7Ci0JcCA9IF9fYXRleGl0OwotCXdoaWxlIChwICE9IE5VTEwgJiYgcC0+bmV4dCAhPSBOVUxMKQotCQlwID0gcC0+bmV4dDsKLQlpZiAocCA9PSBOVUxMKSB7Ci0JCXAgPSBtbWFwKE5VTEwsIHBnc2l6ZSwgUFJPVF9SRUFEIHwgUFJPVF9XUklURSwKLQkJICAgIE1BUF9BTk9OIHwgTUFQX1BSSVZBVEUsIC0xLCAwKTsKLQkJaWYgKHAgPT0gTUFQX0ZBSUxFRCkKLQkJCWdvdG8gdW5sb2NrOwotCQlwLT5pbmQgPSAxOwotCQlwLT5tYXggPSAocGdzaXplIC0gKChjaGFyICopJnAtPmZuc1swXSAtIChjaGFyICopcCkpIC8KLQkJICAgIHNpemVvZihwLT5mbnNbMF0pOwotCQlwLT5uZXh0ID0gTlVMTDsKLQkJX19hdGV4aXQgPSBwOwotCX0gZWxzZSB7Ci0JCWlmIChtcHJvdGVjdChwLCBwZ3NpemUsIFBST1RfUkVBRCB8IFBST1RfV1JJVEUpKQotCQkJZ290byB1bmxvY2s7Ci0JfQotCXAtPmZuc1swXS5mbl9wdHIgPSAodm9pZCAoKikodm9pZCAqKSlmdW5jOwotCXAtPmZuc1swXS5mbl9hcmcgPSBOVUxMOwotCXAtPmZuc1swXS5mbl9kc28gPSBOVUxMOwotCW1wcm90ZWN0KHAsIHBnc2l6ZSwgUFJPVF9SRUFEKTsKLQlyZXN0YXJ0bG9vcCA9IDE7Ci11bmxvY2s6Ci0JX0FURVhJVF9VTkxPQ0soKTsKLX0KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvZXhpdC5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9leGl0LmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDgzZmUzZDIuLjAwMDAwMDAKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9leGl0LmMKKysrIC9kZXYvbnVsbApAQCAtMSw1OSArMCwwIEBACi0vKgkkT3BlbkJTRDogZXhpdC5jLHYgMS4xMiAyMDA3LzA5LzAzIDE0OjQwOjE2IG1pbGxlcnQgRXhwICQgKi8KLS8qLQotICogQ29weXJpZ2h0IChjKSAxOTkwIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCi0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSA8c3lzL3R5cGVzLmg+Ci0jaW5jbHVkZSA8c3lzL21tYW4uaD4KLSNpbmNsdWRlIDxzdGRsaWIuaD4KLSNpbmNsdWRlIDx1bmlzdGQuaD4KLSNpbmNsdWRlICJhdGV4aXQuaCIKLSNpbmNsdWRlICJ0aHJlYWRfcHJpdmF0ZS5oIgotCi0vKgotICogVGhpcyB2YXJpYWJsZSBpcyB6ZXJvIHVudGlsIGEgcHJvY2VzcyBoYXMgY3JlYXRlZCBhIHRocmVhZC4KLSAqIEl0IGlzIHVzZWQgdG8gYXZvaWQgY2FsbGluZyBsb2NraW5nIGZ1bmN0aW9ucyBpbiBsaWJjIHdoZW4gdGhleQotICogYXJlIG5vdCByZXF1aXJlZC4gQnkgZGVmYXVsdCwgbGliYyBpcyBpbnRlbmRlZCB0byBiZShjb21lKQotICogdGhyZWFkLXNhZmUsIGJ1dCB3aXRob3V0IGEgKHNpZ25pZmljYW50KSBwZW5hbHR5IHRvIG5vbi10aHJlYWRlZAotICogcHJvY2Vzc2VzLgotICovCi1pbnQgICAgIF9faXN0aHJlYWRlZCAgICA9IDA7Ci0KLS8qCi0gKiBFeGl0LCBmbHVzaGluZyBzdGRpbyBidWZmZXJzIGlmIG5lY2Vzc2FyeS4KLSAqLwotdm9pZAotZXhpdChpbnQgc3RhdHVzKQotewotCS8qCi0JICogQ2FsbCBmdW5jdGlvbnMgcmVnaXN0ZXJlZCBieSBhdGV4aXQoKSBvciBfY3hhX2F0ZXhpdCgpCi0JICogKGluY2x1ZGluZyB0aGUgc3RkaW8gY2xlYW51cCByb3V0aW5lKSBhbmQgdGhlbiBfZXhpdCgpLgotCSAqLwotCV9fY3hhX2ZpbmFsaXplKE5VTEwpOwotCV9leGl0KHN0YXR1cyk7Ci19CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL2luc3F1ZS5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9pbnNxdWUuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41OTBmZjgzCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9pbnNxdWUuYwpAQCAtMCwwICsxLDU0IEBACisvKgkkT3BlbkJTRDogaW5zcXVlLmMsdiAxLjMgMjAxNC8wOC8xNSAwNDoxNDozNiBndWVudGhlciBFeHAgJAkqLworCisvKgorICogIENvcHlyaWdodCAoYykgMTk5MyBKb2huIEJyZXphaworICogIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiAKKyAqICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqICBhcmUgbWV0OgorICogIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAgMy4gVGhlIG5hbWUgb2YgdGhlIGF1dGhvciBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMKKyAqICAgICBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqIAorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUgorICogSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwKKyAqIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SCisgKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwKKyAqIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTgorICogQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c2VhcmNoLmg+CisKK3N0cnVjdCBxZWxlbSB7CisgICAgICAgIHN0cnVjdCBxZWxlbSAqcV9mb3J3OworICAgICAgICBzdHJ1Y3QgcWVsZW0gKnFfYmFjazsKK307CisKK3ZvaWQKK2luc3F1ZSh2b2lkICplbnRyeSwgdm9pZCAqcHJlZCkKK3sKKwlzdHJ1Y3QgcWVsZW0gKmUgPSBlbnRyeTsKKwlzdHJ1Y3QgcWVsZW0gKnAgPSBwcmVkOworCisJaWYgKHAgPT0gTlVMTCkKKwkJZS0+cV9mb3J3ID0gZS0+cV9iYWNrID0gTlVMTDsKKwllbHNlIHsKKwkJZS0+cV9mb3J3ID0gcC0+cV9mb3J3OworCQllLT5xX2JhY2sgPSBwOworCQlpZiAocC0+cV9mb3J3ICE9IE5VTEwpCisJCQlwLT5xX2ZvcnctPnFfYmFjayA9IGU7CisJCXAtPnFfZm9ydyA9IGU7CisJfQorfQpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9yZWFsbG9jYXJyYXkuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvcmVhbGxvY2FycmF5LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2FjY2Q5OQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvcmVhbGxvY2FycmF5LmMKQEAgLTAsMCArMSwzOCBAQAorLyoJJE9wZW5CU0Q6IHJlYWxsb2NhcnJheS5jLHYgMS4xIDIwMTQvMDUvMDggMjE6NDM6NDkgZGVyYWFkdCBFeHAgJAkqLworLyoKKyAqIENvcHlyaWdodCAoYykgMjAwOCBPdHRvIE1vZXJiZWVrIDxvdHRvQGRyaWpmLm5ldD4KKyAqCisgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkKKyAqIHB1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyIGluIGFsbCBjb3BpZXMuCisgKgorICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTCBXQVJSQU5USUVTCisgKiBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GCisgKiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUgorICogQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUworICogV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOCisgKiBBQ1RJT04gT0YgQ09OVFJBQ1QsIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRgorICogT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS4KKyAqLworCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworLyoKKyAqIFRoaXMgaXMgc3FydChTSVpFX01BWCsxKSwgYXMgczEqczIgPD0gU0laRV9NQVgKKyAqIGlmIGJvdGggczEgPCBNVUxfTk9fT1ZFUkZMT1cgYW5kIHMyIDwgTVVMX05PX09WRVJGTE9XCisgKi8KKyNkZWZpbmUgTVVMX05PX09WRVJGTE9XCSgxVUwgPDwgKHNpemVvZihzaXplX3QpICogNCkpCisKK3ZvaWQgKgorcmVhbGxvY2FycmF5KHZvaWQgKm9wdHIsIHNpemVfdCBubWVtYiwgc2l6ZV90IHNpemUpCit7CisJaWYgKChubWVtYiA+PSBNVUxfTk9fT1ZFUkZMT1cgfHwgc2l6ZSA+PSBNVUxfTk9fT1ZFUkZMT1cpICYmCisJICAgIG5tZW1iID4gMCAmJiBTSVpFX01BWCAvIG5tZW1iIDwgc2l6ZSkgeworCQllcnJubyA9IEVOT01FTTsKKwkJcmV0dXJuIE5VTEw7CisJfQorCXJldHVybiByZWFsbG9jKG9wdHIsIHNpemUgKiBubWVtYik7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3JlbXF1ZS5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9yZW1xdWUuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MWI3NGIyCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9yZW1xdWUuYwpAQCAtMCwwICsxLDQ4IEBACisvKgkkT3BlbkJTRDogcmVtcXVlLmMsdiAxLjMgMjAxNC8wOC8xNSAwNDoxNDozNiBndWVudGhlciBFeHAgJAkqLworCisvKgorICogIENvcHlyaWdodCAoYykgMTk5MyBKb2huIEJyZXphaworICogIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiAKKyAqICBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqICBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqICBhcmUgbWV0OgorICogIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAgMy4gVGhlIG5hbWUgb2YgdGhlIGF1dGhvciBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMKKyAqICAgICBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqIAorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBBUyBJUycnIEFORCBBTlkgRVhQUkVTUyBPUgorICogSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwKKyAqIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SCisgKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwKKyAqIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTgorICogQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFCisgKiBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c2VhcmNoLmg+CisKK3N0cnVjdCBxZWxlbSB7CisgICAgICAgIHN0cnVjdCBxZWxlbSAqcV9mb3J3OworICAgICAgICBzdHJ1Y3QgcWVsZW0gKnFfYmFjazsKK307CisKK3ZvaWQKK3JlbXF1ZSh2b2lkICplbGVtZW50KQoreworCXN0cnVjdCBxZWxlbSAqZSA9IGVsZW1lbnQ7CisKKwlpZiAoZS0+cV9mb3J3ICE9IE5VTEwpCisJCWUtPnFfZm9ydy0+cV9iYWNrID0gZS0+cV9iYWNrOworCWlmIChlLT5xX2JhY2sgIT0gTlVMTCkKKwkJZS0+cV9iYWNrLT5xX2ZvcncgPSBlLT5xX2Zvcnc7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvaW1heC5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b2ltYXguYwppbmRleCAyYzc3ZjQxLi4yZmMwNGU0IDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvaW1heC5jCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc3RydG9pbWF4LmMKQEAgLTEsNiArMSw1IEBACi0vKgkkT3BlbkJTRDogc3RydG9pbWF4LmMsdiAxLjEgMjAwNi8wMS8xMyAxNzo1ODowOSBtaWxsZXJ0IEV4cCAkCSovCi0KLS8qLQorLyoJJE9wZW5CU0Q6IHN0cnRvaW1heC5jLHYgMS4yIDIwMTQvMDkvMTMgMjA6MTA6MTIgc2Nod2FyemUgRXhwICQJKi8KKy8qCiAgKiBDb3B5cmlnaHQgKGMpIDE5OTIgVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgpAQCAtNDgsNiArNDcsMTcgQEAKIAlpbnQgbmVnLCBhbnksIGN1dGxpbTsKIAogCS8qCisJICogRW5zdXJlIHRoYXQgYmFzZSBpcyBiZXR3ZWVuIDIgYW5kIDM2IGluY2x1c2l2ZSwgb3IgdGhlIHNwZWNpYWwKKwkgKiB2YWx1ZSBvZiAwLgorCSAqLworCWlmIChiYXNlIDwgMCB8fCBiYXNlID09IDEgfHwgYmFzZSA+IDM2KSB7CisJCWlmIChlbmRwdHIgIT0gMCkKKwkJCSplbmRwdHIgPSAoY2hhciAqKW5wdHI7CisJCWVycm5vID0gRUlOVkFMOworCQlyZXR1cm4gMDsKKwl9CisKKwkvKgogCSAqIFNraXAgd2hpdGUgc3BhY2UgYW5kIHBpY2sgdXAgbGVhZGluZyArLy0gc2lnbiBpZiBhbnkuCiAJICogSWYgYmFzZSBpcyAwLCBhbGxvdyAweCBmb3IgaGV4IGFuZCAwIGZvciBvY3RhbCwgZWxzZQogCSAqIGFzc3VtZSBkZWNpbWFsOyBpZiBiYXNlIGlzIGFscmVhZHkgMTYsIGFsbG93IDB4LgpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b2wuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc3RydG9sLmMKaW5kZXggZGMyY2Y4OC4uODZjZWMzNSAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b2wuYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvbC5jCkBAIC0xLDUgKzEsNSBAQAotLyoJJE9wZW5CU0Q6IHN0cnRvbC5jLHYgMS45IDIwMTMvMDQvMTcgMTc6NDA6MzUgdGVkdSBFeHAgJCAqLwotLyotCisvKgkkT3BlbkJTRDogc3RydG9sLmMsdiAxLjEwIDIwMTQvMDkvMTMgMjA6MTA6MTIgc2Nod2FyemUgRXhwICQgKi8KKy8qCiAgKiBDb3B5cmlnaHQgKGMpIDE5OTAgVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgpAQCAtMzMsNyArMzMsNiBAQAogI2luY2x1ZGUgPGxpbWl0cy5oPgogI2luY2x1ZGUgPHN0ZGxpYi5oPgogCi0KIC8qCiAgKiBDb252ZXJ0IGEgc3RyaW5nIHRvIGEgbG9uZyBpbnRlZ2VyLgogICoKQEAgLTUyLDcgKzUxLDcgQEAKIAkgKiBFbnN1cmUgdGhhdCBiYXNlIGlzIGJldHdlZW4gMiBhbmQgMzYgaW5jbHVzaXZlLCBvciB0aGUgc3BlY2lhbAogCSAqIHZhbHVlIG9mIDAuCiAJICovCi0JaWYgKGJhc2UgIT0gMCAmJiAoYmFzZSA8IDIgfHwgYmFzZSA+IDM2KSkgeworCWlmIChiYXNlIDwgMCB8fCBiYXNlID09IDEgfHwgYmFzZSA+IDM2KSB7CiAJCWlmIChlbmRwdHIgIT0gMCkKIAkJCSplbmRwdHIgPSAoY2hhciAqKW5wdHI7CiAJCWVycm5vID0gRUlOVkFMOwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b2xsLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvbGwuYwppbmRleCA0YmNjNTU2Li5jZjgyYzhlIDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvbGwuYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvbGwuYwpAQCAtMSw1ICsxLDUgQEAKLS8qICRPcGVuQlNEOiBzdHJ0b2xsLmMsdiAxLjcgMjAxMy8wMy8yOCAxODowOTozOCBtYXJ0eW5hcyBFeHAgJCAqLwotLyotCisvKgkkT3BlbkJTRDogc3RydG9sbC5jLHYgMS44IDIwMTQvMDkvMTMgMjA6MTA6MTIgc2Nod2FyemUgRXhwICQgKi8KKy8qCiAgKiBDb3B5cmlnaHQgKGMpIDE5OTIgVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgpAQCAtNTAsNiArNTAsMTcgQEAKIAlpbnQgbmVnLCBhbnksIGN1dGxpbTsKIAogCS8qCisJICogRW5zdXJlIHRoYXQgYmFzZSBpcyBiZXR3ZWVuIDIgYW5kIDM2IGluY2x1c2l2ZSwgb3IgdGhlIHNwZWNpYWwKKwkgKiB2YWx1ZSBvZiAwLgorCSAqLworCWlmIChiYXNlIDwgMCB8fCBiYXNlID09IDEgfHwgYmFzZSA+IDM2KSB7CisJCWlmIChlbmRwdHIgIT0gMCkKKwkJCSplbmRwdHIgPSAoY2hhciAqKW5wdHI7CisJCWVycm5vID0gRUlOVkFMOworCQlyZXR1cm4gMDsKKwl9CisKKwkvKgogCSAqIFNraXAgd2hpdGUgc3BhY2UgYW5kIHBpY2sgdXAgbGVhZGluZyArLy0gc2lnbiBpZiBhbnkuCiAJICogSWYgYmFzZSBpcyAwLCBhbGxvdyAweCBmb3IgaGV4IGFuZCAwIGZvciBvY3RhbCwgZWxzZQogCSAqIGFzc3VtZSBkZWNpbWFsOyBpZiBiYXNlIGlzIGFscmVhZHkgMTYsIGFsbG93IDB4LgpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b3VsLmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvdWwuYwppbmRleCBhMjM2MzY1Li4yYWE0MWI3IDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvdWwuYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvdWwuYwpAQCAtMSw2ICsxLDYgQEAKLS8qCSRPcGVuQlNEOiBzdHJ0b3VsLmMsdiAxLjggMjAxMy8wNC8xNyAxNzo0MDozNSB0ZWR1IEV4cCAkICovCisvKgkkT3BlbkJTRDogc3RydG91bC5jLHYgMS45IDIwMTQvMDkvMTMgMjA6MTA6MTIgc2Nod2FyemUgRXhwICQgKi8KIC8qCi0gKiBDb3B5cmlnaHQgKGMpIDE5OTAgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLgorICogQ29weXJpZ2h0IChjKSAxOTkwIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dApAQCAtNTAsNiArNTAsMTMgQEAKIAkvKgogCSAqIFNlZSBzdHJ0b2wgZm9yIGNvbW1lbnRzIGFzIHRvIHRoZSBsb2dpYyB1c2VkLgogCSAqLworCWlmIChiYXNlIDwgMCB8fCBiYXNlID09IDEgfHwgYmFzZSA+IDM2KSB7CisJCWlmIChlbmRwdHIgIT0gMCkKKwkJCSplbmRwdHIgPSAoY2hhciAqKW5wdHI7CisJCWVycm5vID0gRUlOVkFMOworCQlyZXR1cm4gMDsKKwl9CisKIAlzID0gbnB0cjsKIAlkbyB7CiAJCWMgPSAodW5zaWduZWQgY2hhcikgKnMrKzsKZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc3RydG91bGwuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc3RydG91bGwuYwppbmRleCAyOGY2MTNhLi44NDY0MTc2IDEwMDY0NAotLS0gYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvdWxsLmMKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b3VsbC5jCkBAIC0xLDUgKzEsNSBAQAotLyoJJE9wZW5CU0Q6IHN0cnRvdWxsLmMsdiAxLjYgMjAxMy8wMy8yOCAxODowOTozOCBtYXJ0eW5hcyBFeHAgJCAqLwotLyotCisvKgkkT3BlbkJTRDogc3RydG91bGwuYyx2IDEuNyAyMDE0LzA5LzEzIDIwOjEwOjEyIHNjaHdhcnplIEV4cCAkICovCisvKgogICogQ29weXJpZ2h0IChjKSAxOTkyIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTUwLDggKzUwLDE1IEBACiAJaW50IG5lZywgYW55LCBjdXRsaW07CiAKIAkvKgotCSAqIFNlZSBzdHJ0b3EgZm9yIGNvbW1lbnRzIGFzIHRvIHRoZSBsb2dpYyB1c2VkLgorCSAqIFNlZSBzdHJ0b2xsIGZvciBjb21tZW50cyBhcyB0byB0aGUgbG9naWMgdXNlZC4KIAkgKi8KKwlpZiAoYmFzZSA8IDAgfHwgYmFzZSA9PSAxIHx8IGJhc2UgPiAzNikgeworCQlpZiAoZW5kcHRyICE9IDApCisJCQkqZW5kcHRyID0gKGNoYXIgKilucHRyOworCQllcnJubyA9IEVJTlZBTDsKKwkJcmV0dXJuIDA7CisJfQorCiAJcyA9IG5wdHI7CiAJZG8gewogCQljID0gKHVuc2lnbmVkIGNoYXIpICpzKys7CkBAIC01OSw3ICs2Niw3IEBACiAJaWYgKGMgPT0gJy0nKSB7CiAJCW5lZyA9IDE7CiAJCWMgPSAqcysrOwotCX0gZWxzZSB7IAorCX0gZWxzZSB7CiAJCW5lZyA9IDA7CiAJCWlmIChjID09ICcrJykKIAkJCWMgPSAqcysrOwpkaWZmIC0tZ2l0IGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b3VtYXguYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdGRsaWIvc3RydG91bWF4LmMKaW5kZXggY2U2ZTJjMC4uYzczZjdlNSAxMDA2NDQKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0ZGxpYi9zdHJ0b3VtYXguYworKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RkbGliL3N0cnRvdW1heC5jCkBAIC0xLDYgKzEsNSBAQAotLyoJJE9wZW5CU0Q6IHN0cnRvdW1heC5jLHYgMS4xIDIwMDYvMDEvMTMgMTc6NTg6MDkgbWlsbGVydCBFeHAgJAkqLwotCi0vKi0KKy8qCSRPcGVuQlNEOiBzdHJ0b3VtYXguYyx2IDEuMiAyMDE0LzA5LzEzIDIwOjEwOjEyIHNjaHdhcnplIEV4cCAkCSovCisvKgogICogQ29weXJpZ2h0IChjKSAxOTkyIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKQEAgLTQ4LDggKzQ3LDE1IEBACiAJaW50IG5lZywgYW55LCBjdXRsaW07CiAKIAkvKgotCSAqIFNlZSBzdHJ0b3EgZm9yIGNvbW1lbnRzIGFzIHRvIHRoZSBsb2dpYyB1c2VkLgorCSAqIFNlZSBzdHJ0b2ltYXggZm9yIGNvbW1lbnRzIGFzIHRvIHRoZSBsb2dpYyB1c2VkLgogCSAqLworCWlmIChiYXNlIDwgMCB8fCBiYXNlID09IDEgfHwgYmFzZSA+IDM2KSB7CisJCWlmIChlbmRwdHIgIT0gMCkKKwkJCSplbmRwdHIgPSAoY2hhciAqKW5wdHI7CisJCWVycm5vID0gRUlOVkFMOworCQlyZXR1cm4gMDsKKwl9CisKIAlzID0gbnB0cjsKIAlkbyB7CiAJCWMgPSAodW5zaWduZWQgY2hhcikgKnMrKzsKQEAgLTU3LDcgKzYzLDcgQEAKIAlpZiAoYyA9PSAnLScpIHsKIAkJbmVnID0gMTsKIAkJYyA9ICpzKys7Ci0JfSBlbHNlIHsgCisJfSBlbHNlIHsKIAkJbmVnID0gMDsKIAkJaWYgKGMgPT0gJysnKQogCQkJYyA9ICpzKys7CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL2Jjb3B5LmMgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL2Jjb3B5LmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQzMDhjNjQuLjAwMDAwMDAKLS0tIGEvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9iY29weS5jCisrKyAvZGV2L251bGwKQEAgLTEsMTI4ICswLDAgQEAKLS8qCSRPcGVuQlNEOiBiY29weS5jLHYgMS41IDIwMDUvMDgvMDggMDg6MDU6MzcgZXNwaWUgRXhwICQgKi8KLS8qLQotICogQ29weXJpZ2h0IChjKSAxOTkwIFRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuCi0gKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFRoaXMgY29kZSBpcyBkZXJpdmVkIGZyb20gc29mdHdhcmUgY29udHJpYnV0ZWQgdG8gQmVya2VsZXkgYnkKLSAqIENocmlzIFRvcmVrLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogMy4gTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgVW5pdmVyc2l0eSBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKLSAqICAgIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQotICogICAgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgUkVHRU5UUyBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLSAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLSAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFJFR0VOVFMgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSA8c3RyaW5nLmg+Ci0KLS8qCi0gKiBzaXplb2Yod29yZCkgTVVTVCBCRSBBIFBPV0VSIE9GIFRXTwotICogU08gVEhBVCB3bWFzayBCRUxPVyBJUyBBTEwgT05FUwotICovCi10eXBlZGVmCWxvbmcgd29yZDsJCS8qICJ3b3JkIiB1c2VkIGZvciBvcHRpbWFsIGNvcHkgc3BlZWQgKi8KLQotI2RlZmluZQl3c2l6ZQlzaXplb2Yod29yZCkKLSNkZWZpbmUJd21hc2sJKHdzaXplIC0gMSkKLQotLyoKLSAqIENvcHkgYSBibG9jayBvZiBtZW1vcnksIGhhbmRsaW5nIG92ZXJsYXAuCi0gKiBUaGlzIGlzIHRoZSByb3V0aW5lIHRoYXQgYWN0dWFsbHkgaW1wbGVtZW50cwotICogKHRoZSBwb3J0YWJsZSB2ZXJzaW9ucyBvZikgYmNvcHksIG1lbWNweSwgYW5kIG1lbW1vdmUuCi0gKi8KLSNpZmRlZiBNRU1DT1BZCi12b2lkICoKLW1lbWNweSh2b2lkICpkc3QwLCBjb25zdCB2b2lkICpzcmMwLCBzaXplX3QgbGVuZ3RoKQotI2Vsc2UKLSNpZmRlZiBNRU1NT1ZFCi12b2lkICoKLW1lbW1vdmUodm9pZCAqZHN0MCwgY29uc3Qgdm9pZCAqc3JjMCwgc2l6ZV90IGxlbmd0aCkKLSNlbHNlCi12b2lkCi1iY29weShjb25zdCB2b2lkICpzcmMwLCB2b2lkICpkc3QwLCBzaXplX3QgbGVuZ3RoKQotI2VuZGlmCi0jZW5kaWYKLXsKLQljaGFyICpkc3QgPSBkc3QwOwotCWNvbnN0IGNoYXIgKnNyYyA9IHNyYzA7Ci0Jc2l6ZV90IHQ7Ci0KLQlpZiAobGVuZ3RoID09IDAgfHwgZHN0ID09IHNyYykJCS8qIG5vdGhpbmcgdG8gZG8gKi8KLQkJZ290byBkb25lOwotCi0JLyoKLQkgKiBNYWNyb3M6IGxvb3AtdC10aW1lczsgYW5kIGxvb3AtdC10aW1lcywgdD4wCi0JICovCi0jZGVmaW5lCVRMT09QKHMpIGlmICh0KSBUTE9PUDEocykKLSNkZWZpbmUJVExPT1AxKHMpIGRvIHsgczsgfSB3aGlsZSAoLS10KQotCi0JaWYgKCh1bnNpZ25lZCBsb25nKWRzdCA8ICh1bnNpZ25lZCBsb25nKXNyYykgewotCQkvKgotCQkgKiBDb3B5IGZvcndhcmQuCi0JCSAqLwotCQl0ID0gKGxvbmcpc3JjOwkvKiBvbmx5IG5lZWQgbG93IGJpdHMgKi8KLQkJaWYgKCh0IHwgKGxvbmcpZHN0KSAmIHdtYXNrKSB7Ci0JCQkvKgotCQkJICogVHJ5IHRvIGFsaWduIG9wZXJhbmRzLiAgVGhpcyBjYW5ub3QgYmUgZG9uZQotCQkJICogdW5sZXNzIHRoZSBsb3cgYml0cyBtYXRjaC4KLQkJCSAqLwotCQkJaWYgKCh0IF4gKGxvbmcpZHN0KSAmIHdtYXNrIHx8IGxlbmd0aCA8IHdzaXplKQotCQkJCXQgPSBsZW5ndGg7Ci0JCQllbHNlCi0JCQkJdCA9IHdzaXplIC0gKHQgJiB3bWFzayk7Ci0JCQlsZW5ndGggLT0gdDsKLQkJCVRMT09QMSgqZHN0KysgPSAqc3JjKyspOwotCQl9Ci0JCS8qCi0JCSAqIENvcHkgd2hvbGUgd29yZHMsIHRoZW4gbW9wIHVwIGFueSB0cmFpbGluZyBieXRlcy4KLQkJICovCi0JCXQgPSBsZW5ndGggLyB3c2l6ZTsKLQkJVExPT1AoKih3b3JkICopZHN0ID0gKih3b3JkICopc3JjOyBzcmMgKz0gd3NpemU7IGRzdCArPSB3c2l6ZSk7Ci0JCXQgPSBsZW5ndGggJiB3bWFzazsKLQkJVExPT1AoKmRzdCsrID0gKnNyYysrKTsKLQl9IGVsc2UgewotCQkvKgotCQkgKiBDb3B5IGJhY2t3YXJkcy4gIE90aGVyd2lzZSBlc3NlbnRpYWxseSB0aGUgc2FtZS4KLQkJICogQWxpZ25tZW50IHdvcmtzIGFzIGJlZm9yZSwgZXhjZXB0IHRoYXQgaXQgdGFrZXMKLQkJICogKHQmd21hc2spIGJ5dGVzIHRvIGFsaWduLCBub3Qgd3NpemUtKHQmd21hc2spLgotCQkgKi8KLQkJc3JjICs9IGxlbmd0aDsKLQkJZHN0ICs9IGxlbmd0aDsKLQkJdCA9IChsb25nKXNyYzsKLQkJaWYgKCh0IHwgKGxvbmcpZHN0KSAmIHdtYXNrKSB7Ci0JCQlpZiAoKHQgXiAobG9uZylkc3QpICYgd21hc2sgfHwgbGVuZ3RoIDw9IHdzaXplKQotCQkJCXQgPSBsZW5ndGg7Ci0JCQllbHNlCi0JCQkJdCAmPSB3bWFzazsKLQkJCWxlbmd0aCAtPSB0OwotCQkJVExPT1AxKCotLWRzdCA9ICotLXNyYyk7Ci0JCX0KLQkJdCA9IGxlbmd0aCAvIHdzaXplOwotCQlUTE9PUChzcmMgLT0gd3NpemU7IGRzdCAtPSB3c2l6ZTsgKih3b3JkICopZHN0ID0gKih3b3JkICopc3JjKTsKLQkJdCA9IGxlbmd0aCAmIHdtYXNrOwotCQlUTE9PUCgqLS1kc3QgPSAqLS1zcmMpOwotCX0KLWRvbmU6Ci0jaWYgZGVmaW5lZChNRU1DT1BZKSB8fCBkZWZpbmVkKE1FTU1PVkUpCi0JcmV0dXJuIChkc3QwKTsKLSNlbHNlCi0JcmV0dXJuOwotI2VuZGlmCi19CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL21lbWNoci5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9tZW1jaHIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NTczZTNjCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9tZW1jaHIuYwpAQCAtMCwwICsxLDQ4IEBACisvKgkkT3BlbkJTRDogbWVtY2hyLmMsdiAxLjcgMjAwNS8wOC8wOCAwODowNTozNyBlc3BpZSBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTAgVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQorICogQ2hyaXMgVG9yZWsuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKwordm9pZCAqCittZW1jaHIoY29uc3Qgdm9pZCAqcywgaW50IGMsIHNpemVfdCBuKQoreworCWlmIChuICE9IDApIHsKKwkJY29uc3QgdW5zaWduZWQgY2hhciAqcCA9IHM7CisKKwkJZG8geworCQkJaWYgKCpwKysgPT0gKHVuc2lnbmVkIGNoYXIpYykKKwkJCQlyZXR1cm4gKCh2b2lkICopKHAgLSAxKSk7CisJCX0gd2hpbGUgKC0tbiAhPSAwKTsKKwl9CisJcmV0dXJuIChOVUxMKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtbW92ZS5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy9tZW1tb3ZlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWJhYWQ1MwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtbW92ZS5jCkBAIC0wLDAgKzEsMTEyIEBACisvKgkkT3BlbkJTRDogbWVtbW92ZS5jLHYgMS4xIDIwMTQvMTEvMzAgMTk6NDM6NTYgZGVyYWFkdCBFeHAgJCAqLworLyotCisgKiBDb3B5cmlnaHQgKGMpIDE5OTAgVGhlIFJlZ2VudHMgb2YgdGhlIFVuaXZlcnNpdHkgb2YgQ2FsaWZvcm5pYS4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBzb2Z0d2FyZSBjb250cmlidXRlZCB0byBCZXJrZWxleSBieQorICogQ2hyaXMgVG9yZWsuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBVbml2ZXJzaXR5IG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICogICAgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgKiAgICB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBSRUdFTlRTIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgUkVHRU5UUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKworLyoKKyAqIHNpemVvZih3b3JkKSBNVVNUIEJFIEEgUE9XRVIgT0YgVFdPCisgKiBTTyBUSEFUIHdtYXNrIEJFTE9XIElTIEFMTCBPTkVTCisgKi8KK3R5cGVkZWYJbG9uZyB3b3JkOwkJLyogIndvcmQiIHVzZWQgZm9yIG9wdGltYWwgY29weSBzcGVlZCAqLworCisjZGVmaW5lCXdzaXplCXNpemVvZih3b3JkKQorI2RlZmluZQl3bWFzawkod3NpemUgLSAxKQorCisvKgorICogQ29weSBhIGJsb2NrIG9mIG1lbW9yeSwgaGFuZGxpbmcgb3ZlcmxhcC4KKyAqLwordm9pZCAqCittZW1tb3ZlKHZvaWQgKmRzdDAsIGNvbnN0IHZvaWQgKnNyYzAsIHNpemVfdCBsZW5ndGgpCit7CisJY2hhciAqZHN0ID0gZHN0MDsKKwljb25zdCBjaGFyICpzcmMgPSBzcmMwOworCXNpemVfdCB0OworCisJaWYgKGxlbmd0aCA9PSAwIHx8IGRzdCA9PSBzcmMpCQkvKiBub3RoaW5nIHRvIGRvICovCisJCWdvdG8gZG9uZTsKKworCS8qCisJICogTWFjcm9zOiBsb29wLXQtdGltZXM7IGFuZCBsb29wLXQtdGltZXMsIHQ+MAorCSAqLworI2RlZmluZQlUTE9PUChzKSBpZiAodCkgVExPT1AxKHMpCisjZGVmaW5lCVRMT09QMShzKSBkbyB7IHM7IH0gd2hpbGUgKC0tdCkKKworCWlmICgodW5zaWduZWQgbG9uZylkc3QgPCAodW5zaWduZWQgbG9uZylzcmMpIHsKKwkJLyoKKwkJICogQ29weSBmb3J3YXJkLgorCQkgKi8KKwkJdCA9IChsb25nKXNyYzsJLyogb25seSBuZWVkIGxvdyBiaXRzICovCisJCWlmICgodCB8IChsb25nKWRzdCkgJiB3bWFzaykgeworCQkJLyoKKwkJCSAqIFRyeSB0byBhbGlnbiBvcGVyYW5kcy4gIFRoaXMgY2Fubm90IGJlIGRvbmUKKwkJCSAqIHVubGVzcyB0aGUgbG93IGJpdHMgbWF0Y2guCisJCQkgKi8KKwkJCWlmICgodCBeIChsb25nKWRzdCkgJiB3bWFzayB8fCBsZW5ndGggPCB3c2l6ZSkKKwkJCQl0ID0gbGVuZ3RoOworCQkJZWxzZQorCQkJCXQgPSB3c2l6ZSAtICh0ICYgd21hc2spOworCQkJbGVuZ3RoIC09IHQ7CisJCQlUTE9PUDEoKmRzdCsrID0gKnNyYysrKTsKKwkJfQorCQkvKgorCQkgKiBDb3B5IHdob2xlIHdvcmRzLCB0aGVuIG1vcCB1cCBhbnkgdHJhaWxpbmcgYnl0ZXMuCisJCSAqLworCQl0ID0gbGVuZ3RoIC8gd3NpemU7CisJCVRMT09QKCood29yZCAqKWRzdCA9ICood29yZCAqKXNyYzsgc3JjICs9IHdzaXplOyBkc3QgKz0gd3NpemUpOworCQl0ID0gbGVuZ3RoICYgd21hc2s7CisJCVRMT09QKCpkc3QrKyA9ICpzcmMrKyk7CisJfSBlbHNlIHsKKwkJLyoKKwkJICogQ29weSBiYWNrd2FyZHMuICBPdGhlcndpc2UgZXNzZW50aWFsbHkgdGhlIHNhbWUuCisJCSAqIEFsaWdubWVudCB3b3JrcyBhcyBiZWZvcmUsIGV4Y2VwdCB0aGF0IGl0IHRha2VzCisJCSAqICh0JndtYXNrKSBieXRlcyB0byBhbGlnbiwgbm90IHdzaXplLSh0JndtYXNrKS4KKwkJICovCisJCXNyYyArPSBsZW5ndGg7CisJCWRzdCArPSBsZW5ndGg7CisJCXQgPSAobG9uZylzcmM7CisJCWlmICgodCB8IChsb25nKWRzdCkgJiB3bWFzaykgeworCQkJaWYgKCh0IF4gKGxvbmcpZHN0KSAmIHdtYXNrIHx8IGxlbmd0aCA8PSB3c2l6ZSkKKwkJCQl0ID0gbGVuZ3RoOworCQkJZWxzZQorCQkJCXQgJj0gd21hc2s7CisJCQlsZW5ndGggLT0gdDsKKwkJCVRMT09QMSgqLS1kc3QgPSAqLS1zcmMpOworCQl9CisJCXQgPSBsZW5ndGggLyB3c2l6ZTsKKwkJVExPT1Aoc3JjIC09IHdzaXplOyBkc3QgLT0gd3NpemU7ICood29yZCAqKWRzdCA9ICood29yZCAqKXNyYyk7CisJCXQgPSBsZW5ndGggJiB3bWFzazsKKwkJVExPT1AoKi0tZHN0ID0gKi0tc3JjKTsKKwl9Citkb25lOgorCXJldHVybiAoZHN0MCk7Cit9CmRpZmYgLS1naXQgYS9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL21lbXJjaHIuYyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvbWVtcmNoci5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJkMjdlYmMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL3Vwc3RyZWFtLW9wZW5ic2QvbGliL2xpYmMvc3RyaW5nL21lbXJjaHIuYwpAQCAtMCwwICsxLDM4IEBACisvKgkkT3BlbkJTRDogbWVtcmNoci5jLHYgMS4yIDIwMDcvMTEvMjcgMTY6MjI6MTIgbWFydHluYXMgRXhwICQJKi8KKworLyoKKyAqIENvcHlyaWdodCAoYykgMjAwNyBUb2RkIEMuIE1pbGxlciA8VG9kZC5NaWxsZXJAY291cnRlc2FuLmNvbT4KKyAqCisgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkKKyAqIHB1cnBvc2Ugd2l0aCBvciB3aXRob3V0IGZlZSBpcyBoZXJlYnkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2UgYXBwZWFyIGluIGFsbCBjb3BpZXMuCisgKgorICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIFRIRSBBVVRIT1IgRElTQ0xBSU1TIEFMTCBXQVJSQU5USUVTCisgKiBXSVRIIFJFR0FSRCBUTyBUSElTIFNPRlRXQVJFIElOQ0xVRElORyBBTEwgSU1QTElFRCBXQVJSQU5USUVTIE9GCisgKiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUgorICogQU5ZIFNQRUNJQUwsIERJUkVDVCwgSU5ESVJFQ1QsIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyBPUiBBTlkgREFNQUdFUworICogV0hBVFNPRVZFUiBSRVNVTFRJTkcgRlJPTSBMT1NTIE9GIFVTRSwgREFUQSBPUiBQUk9GSVRTLCBXSEVUSEVSIElOIEFOCisgKiBBQ1RJT04gT0YgQ09OVFJBQ1QsIE5FR0xJR0VOQ0UgT1IgT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRgorICogT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBVU0UgT1IgUEVSRk9STUFOQ0UgT0YgVEhJUyBTT0ZUV0FSRS4KKyAqLworCisjaW5jbHVkZSA8c3RyaW5nLmg+CisKKy8qCisgKiBSZXZlcnNlIG1lbWNocigpCisgKiBGaW5kIHRoZSBsYXN0IG9jY3VycmVuY2Ugb2YgJ2MnIGluIHRoZSBidWZmZXIgJ3MnIG9mIHNpemUgJ24nLgorICovCit2b2lkICoKK21lbXJjaHIoY29uc3Qgdm9pZCAqcywgaW50IGMsIHNpemVfdCBuKQoreworCWNvbnN0IHVuc2lnbmVkIGNoYXIgKmNwOworCisJaWYgKG4gIT0gMCkgeworCQljcCA9ICh1bnNpZ25lZCBjaGFyICopcyArIG47CisJCWRvIHsKKwkJCWlmICgqKC0tY3ApID09ICh1bnNpZ25lZCBjaGFyKWMpCisJCQkJcmV0dXJuKCh2b2lkICopY3ApOworCQl9IHdoaWxlICgtLW4gIT0gMCk7CisJfQorCXJldHVybihOVUxMKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvd21lbWNweS5jIGIvbGliYy91cHN0cmVhbS1vcGVuYnNkL2xpYi9saWJjL3N0cmluZy93bWVtY3B5LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWJiZDgzNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdXBzdHJlYW0tb3BlbmJzZC9saWIvbGliYy9zdHJpbmcvd21lbWNweS5jCkBAIC0wLDAgKzEsNDAgQEAKKy8qCSRPcGVuQlNEOiB3bWVtY3B5LmMsdiAxLjMgMjAwNS8wOC8wOCAwODowNTozNyBlc3BpZSBFeHAgJAkqLworLyoJJE5ldEJTRDogd21lbWNweS5jLHYgMS4yIDIwMDEvMDEvMDMgMTQ6Mjk6MzcgbHVrZW0gRXhwICQJKi8KKworLyotCisgKiBDb3B5cmlnaHQgKGMpMTk5OSBDaXRydXMgUHJvamVjdCwKKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKgorICoJY2l0cnVzIElkOiB3bWVtY3B5LmMsdiAxLjIgMjAwMC8xMi8yMCAxNDowODozMSBpdG9qdW4gRXhwCisgKi8KKworI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHdjaGFyLmg+CisKK3djaGFyX3QgKgord21lbWNweSh3Y2hhcl90ICpkLCBjb25zdCB3Y2hhcl90ICpzLCBzaXplX3QgbikKK3sKKworCXJldHVybiAod2NoYXJfdCAqKW1lbWNweShkLCBzLCBuICogc2l6ZW9mKHdjaGFyX3QpKTsKK30KZGlmZiAtLWdpdCBhL2xpYmMvdmVyc2lvbl9zY3JpcHQudHh0IGIvbGliYy92ZXJzaW9uX3NjcmlwdC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzQ5YTJmYwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvdmVyc2lvbl9zY3JpcHQudHh0CkBAIC0wLDAgKzEsMTcgQEAKK0xJQkMgeworICBnbG9iYWw6CisgICAgLyogV29yay1hcm91bmQgZm9yIGh0dHA6Ly9iLzIwMDY1Nzc0LiAqLworICAgIF9fY2xlYXJfY2FjaGU7CisgICAgX1Vud2luZF9CYWNrdHJhY2U7CisgICAgX1Vud2luZF9HZXRJUDsKKyAgbG9jYWw6CisgICAgX1pTdDdub3Rocm93OworICAgIF9aZGFQdjsKKyAgICBfWmRhUHZSS1N0OW5vdGhyb3dfdDsKKyAgICBfWmRsUHY7CisgICAgX1pkbFB2UktTdDlub3Rocm93X3Q7CisgICAgX1puYWo7CisgICAgX1puYWpSS1N0OW5vdGhyb3dfdDsKKyAgICBfWm53ajsKKyAgICBfWm53alJLU3Q5bm90aHJvd190OworfTsKZGlmZiAtLWdpdCBhL2xpYmMvem9uZWluZm8vdHpkYXRhIGIvbGliYy96b25laW5mby90emRhdGEKaW5kZXggYjlhNjYyMS4uMmM3MzRmYSAxMDA2NDQKLS0tIGEvbGliYy96b25laW5mby90emRhdGEKKysrIGIvbGliYy96b25laW5mby90emRhdGEKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvbGliZGwvQW5kcm9pZC5tayBiL2xpYmRsL0FuZHJvaWQubWsKaW5kZXggY2IxY2I3ZC4uMmEwNzI0YSAxMDA2NDQKLS0tIGEvbGliZGwvQW5kcm9pZC5taworKysgYi9saWJkbC9BbmRyb2lkLm1rCkBAIC0yMyw2ICsyMyw3IEBACiAKIExPQ0FMX1NSQ19GSUxFUzo9IGxpYmRsLmMKIExPQ0FMX0NGTEFHUyA6PSAtV2FsbCAtV2V4dHJhIC1XdW51c2VkIC1XZXJyb3IKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQogCiBMT0NBTF9NT0RVTEUgOj0gbGliZGwKIExPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5tawpAQCAtMzUsNCArMzYsMTggQEAKIExPQ0FMX0FMTE9XX1VOREVGSU5FRF9TWU1CT0xTIDo9IHRydWUKIExPQ0FMX1NZU1RFTV9TSEFSRURfTElCUkFSSUVTIDo9CiAKK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCiBpbmNsdWRlICQoQlVJTERfU0hBUkVEX0xJQlJBUlkpCisKKyMgQSBkdW1teSBsaWJkbC5hLiBOZWVkIGZvciBzdGF0aWMgZXhlY3V0YWJsZXMgdXNpbmcgdGhlIExMVk0gdW53aW5kZXIuIE1vc3QKKyMgZnVuY3Rpb25zIGRlZmF1bHQgdG8gZmFpbHVyZSwgb3RoZXJzIHVzZSBhIHNlbnNpYmxlIGRlZmF1bHQgKGRsX2l0ZXJhdGVfcGhkcigpCisjIHJldHVybnMgMCwgYXMgd291bGQgaGFwcGVuIGlmIHRoZSB1c2VyIGl0ZXJhdGVkIG92ZXIgZXZlcnkgcGhkcikuCitpbmNsdWRlICQoQ0xFQVJfVkFSUykKK0xPQ0FMX1NSQ19GSUxFUzo9IGxpYmRsLmMKK0xPQ0FMX0NGTEFHUyA6PSAtV2FsbCAtV2V4dHJhIC1XdW51c2VkIC1XZXJyb3IKK0xPQ0FMX0NYWF9TVEwgOj0gbm9uZQorCitMT0NBTF9NT0RVTEUgOj0gbGliZGwKK0xPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5taworTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKK2luY2x1ZGUgJChCVUlMRF9TVEFUSUNfTElCUkFSWSkKZGlmZiAtLWdpdCBhL2xpYm0vQW5kcm9pZC5tayBiL2xpYm0vQW5kcm9pZC5tawppbmRleCA5OTRjYWEwLi42NDcyYTE1IDEwMDY0NAotLS0gYS9saWJtL0FuZHJvaWQubWsKKysrIGIvbGlibS9BbmRyb2lkLm1rCkBAIC0xLDM0ICsxLDM0IEBACiBpZm5lcSAoJChUQVJHRVRfVVNFX1BSSVZBVEVfTElCTSksdHJ1ZSkKIExPQ0FMX1BBVEg6PSAkKGNhbGwgbXktZGlyKQogCi0jIFRPRE86IHRoaXMgY29tZXMgZnJvbSBmcm9tIHVwc3RyZWFtJ3MgbGliYywgbm90IGxpYm0sIGJ1dCBpdCdzIGFuCi0jIGltcGxlbWVudGF0aW9uIGRldGFpbCB0aGF0IHNob3VsZCBoYXZlIGhpZGRlbiB2aXNpYmlsaXR5LCBzbyBpdCBuZWVkcwotIyB0byBiZSBpbiB3aGF0ZXZlciBsaWJyYXJ5IHRoZSBtYXRoIGNvZGUgaXMgaW4uCi1saWJtX2NvbW1vbl9zcmNfZmlsZXMgOj0gXAotICAgIGRpZ2l0dG9pbnQuYyAgXAorYmlvbmljX2NvdmVyYWdlIDo9IGZhbHNlCiAKLSMgVE9ETzogdGhpcyBpcyBub3QgaW4gdGhlIEJTRHMuCi1saWJtX2NvbW1vbl9zcmNfZmlsZXMgKz0gXAotICAgIHNpZ25pZmljYW5kbC5jIFwKLSAgICBzaW5jb3MuYyBcCitpZm5lcSAoLCQoZmlsdGVyICQoVEFSR0VUX0FSQ0gpLHg4NiB4ODZfNjQpKQorIyBDbGFuZyBoYXMgd3JvbmcgbG9uZyBkb3VibGUgc2l6ZXMgZm9yIHg4Ni4KK2xpYm1fY2xhbmcgOj0gZmFsc2UKK2VuZGlmCiAKLWxpYm1fY29tbW9uX3NyY19maWxlcyArPSBcCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIGxpYm0uYQorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoraW5jbHVkZSAkKENMRUFSX1ZBUlMpCisKK0xPQ0FMX01PRFVMRSA6PSBsaWJtCisKK0xPQ0FMX1NSQ19GSUxFUyA6PSBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9ic2RzcmMvYl9leHAuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9ic2RzcmMvYl9sb2cuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9ic2RzcmMvYl90Z2FtbWEuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hY29zLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2NhdHJpZy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9jYXRyaWdmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYWNvc2YuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hY29zaC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Fjb3NoZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2FzaW4uYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hc2luZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2F0YW4yLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYXRhbjJmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYXRhbmguYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hdGFuaGYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9jb3NoLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfY29zaGYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9leHAuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9leHBmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfZm1vZC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Ztb2RmLmMgXApAQCAtMzYsNyArMzYsNiBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfZ2FtbWFmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfZ2FtbWFmX3IuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9nYW1tYV9yLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfaHlwb3QuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9oeXBvdGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9qMC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2owZi5jIFwKQEAgLTQ4LDEzICs0NywxMCBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbGdhbW1hZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYWZfci5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYV9yLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbG9nMTAuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sb2cxMGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sb2cyLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbG9nMmYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sb2cuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sb2dmLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfcG93LmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfcG93Zi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3JlbWFpbmRlci5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3JlbWFpbmRlcmYuYyBcCkBAIC02MiwxMCArNTgsNyBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfcmVtX3BpbzJmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc2NhbGIuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9zY2FsYmYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9zaW5oLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc2luaGYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9zcXJ0LmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc3FydGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvaW1wcmVjaXNlLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2tfY29zLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2tfY29zZi5jIFwKQEAgLTc4LDUxICs3MSw0NyBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2tfdGFuZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2FzaW5oLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfYXNpbmhmLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfYXRhbi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2F0YW5mLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2FyZy5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NhcmdmLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2JydC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NhcmdsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2JydGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jY29zaC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Njb3NoZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NlaWwuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jZWlsZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NleHAuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jZXhwZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NpbWFnLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2ltYWdmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2ltYWdsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY29uai5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NvbmpmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY29uamwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jb3B5c2lnbi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NvcHlzaWduZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Nvcy5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Nvc2YuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jcHJvai5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Nwcm9qZi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Nwcm9qbC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NyZWFsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY3JlYWxmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY3JlYWxsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY3NpbmguYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jc2luaGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jc3FydC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NzcXJ0Zi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NzcXJ0bC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2N0YW5oLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY3RhbmhmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZXJmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZXJmZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2V4cDIuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19leHAyZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2V4cG0xLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZXhwbTFmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZmFicy5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2ZhYnNmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZmRpbS5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Zpbml0ZS5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Zpbml0ZWYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbG9vci5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Zsb29yZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2ZtYS5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2ZtYWYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbWF4LmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZm1heGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbWluLmMgXApAQCAtMTMxLDE2ICsxMjAsMTEgQEAKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2ZyZXhwZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2lsb2diLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfaWxvZ2JmLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbGxyaW50LmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbGxyaW50Zi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xscm91bmQuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19sbHJvdW5kZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xvZzFwLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbG9nMXBmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbG9nYi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xvZ2JmLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbHJpbnQuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19scmludGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19scm91bmQuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19scm91bmRmLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbW9kZi5jIFwKQEAgLTE1MSw4ICsxMzUsNiBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbmV4dGFmdGVyZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JlbXF1by5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JlbXF1b2YuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yaW50LmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yb3VuZC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JvdW5kZi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3NjYWxibG4uYyBcCkBAIC0xNjEsMjUgKzE0MywyMCBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfc2lnbmdhbS5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3NpZ25pZmljYW5kLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfc2lnbmlmaWNhbmRmLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfc2luLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfc2luZi5jIFwKLSAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3Rhbi5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RhbmYuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5oLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGFuaGYuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190Z2FtbWFmLmMgXAotICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdHJ1bmMuYyBcCi0gICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190cnVuY2YuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvd19jYWJzLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3dfY2Fic2YuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvd19jYWJzbC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy93X2RyZW0uYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvd19kcmVtZi5jIFwKIAotbGlibV9jb21tb25fc3JjX2ZpbGVzICs9IFwKK0xPQ0FMX1NSQ19GSUxFU18zMiArPSBcCiAgICAgZmFrZV9sb25nX2RvdWJsZS5jIFwKLSAgICBzaWduYml0LmMgXAogCi1saWJtX2xkX3NyY19maWxlcyA9IFwKK0xPQ0FMX1NSQ19GSUxFU182NCA6PSBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hY29zbC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Fjb3NobC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2FzaW5sLmMgXApAQCAtMTg3LDYgKzE2NCw3IEBACiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hdGFuaGwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9mbW9kbC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2h5cG90bC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYWwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9yZW1haW5kZXJsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc3FydGwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19hc2luaGwuYyBcCkBAIC0xOTQsNiArMTcyLDcgQEAKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NicnRsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2VpbGwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jb3B5c2lnbmwuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9jb3NobC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Nvc2wuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mYWJzbC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Zsb29ybC5jIFwKQEAgLTIxNSwyNSArMTk0LDI5NCBAQAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludGwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yb3VuZGwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19zY2FsYm5sLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc2luaGwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19zaW5sLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGFuaGwuYyBcCiAgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5sLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdHJ1bmNsLmMgXAogCi1saWJtX2xkX3NyY19maWxlcyArPSBcCitMT0NBTF9TUkNfRklMRVNfNjQgKz0gXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvaW52dHJpZy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2VfbGdhbW1hbF9yLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgva19jb3NsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgva19zaW5sLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgva190YW5sLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvc19lcmZsLmMgXAogICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvc19leHAybC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L3NfZXhwbC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L3NfbG9nbC5jIFwKICAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L3NfbmFubC5jIFwKIAotIyBUT0RPOiByZS1lbmFibGUgaTM4Ny9lX3NxcnRmLlMgZm9yIHg4NiwgYW5kIG1heWJlIG90aGVycy4KKyMgVE9ETzogdGhpcyBjb21lcyBmcm9tIGZyb20gdXBzdHJlYW0ncyBsaWJjLCBub3QgbGlibSwgYnV0IGl0J3MgYW4KKyMgaW1wbGVtZW50YXRpb24gZGV0YWlsIHRoYXQgc2hvdWxkIGhhdmUgaGlkZGVuIHZpc2liaWxpdHksIHNvIGl0IG5lZWRzCisjIHRvIGJlIGluIHdoYXRldmVyIGxpYnJhcnkgdGhlIG1hdGggY29kZSBpcyBpbi4KK0xPQ0FMX1NSQ19GSUxFUyArPSBcCisgICAgZGlnaXR0b2ludC5jICBcCiAKLWxpYm1fY29tbW9uX2NmbGFncyA6PSBcCisjIEZ1bmN0aW9uYWxpdHkgbm90IGluIHRoZSBCU0RzLgorTE9DQUxfU1JDX0ZJTEVTICs9IFwKKyAgICBzaWduaWZpY2FuZGwuYyBcCisgICAgc2luY29zLmMgXAorCisjIE1vZGlmaWVkIHZlcnNpb25zIG9mIEJTRCBjb2RlLgorTE9DQUxfU1JDX0ZJTEVTICs9IFwKKyAgICBzaWduYml0LmMgXAorCisjIEFyY2ggc3BlY2lmaWMgb3B0aW1pemF0aW9ucy4KKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBhcm0KKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0xPQ0FMX1NSQ19GSUxFU19hcm0gKz0gXAorICAgIGFybS9mZW52LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYWNvcy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2FzaW4uYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hdGFuMi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Nvc2guYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9leHAuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9oeXBvdC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xvZy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xvZzEwLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfcG93LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc2luaC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2F0YW4uYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jYnJ0LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2VpbC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NlaWxmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY29zLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZm1hLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZm1hZi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Zsb29yZi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2V4cG0xLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbGxyaW50LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbGxyaW50Zi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xvZzFwLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbHJpbnQuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19scmludGYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yaW50LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludGYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19zaW4uYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW4uYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5oLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdHJ1bmMuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190cnVuY2YuYyBcCisKKyMgc19mbG9vci5TIHJlcXVpcmVzIG5lb24gaW5zdHJ1Y3Rpb25zLgoraWZkZWYgVEFSR0VUXzJORF9BUkNICithcmNoX3ZhcmlhbnQgOj0gJChUQVJHRVRfMk5EX0FSQ0hfVkFSSUFOVCkKK2Vsc2UKK2FyY2hfdmFyaWFudCA6PSAkKFRBUkdFVF9BUkNIX1ZBUklBTlQpCitlbmRpZgorCisjIFVzZSB0aGUgQyB2ZXJzaW9uIG9uIGFybXY3LWEgc2luY2UgaXQgZG9lc24ndCBzdXBwb3J0IG5lb24gaW5zdHJ1Y3Rpb25zLgoraWZlcSAoJChhcmNoX3ZhcmlhbnQpLGFybXY3LWEpCitMT0NBTF9TUkNfRklMRVNfYXJtICs9IFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NxcnQuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9zcXJ0Zi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Zsb29yLmMgXAorCitlbHNlCitMT0NBTF9TUkNfRklMRVNfYXJtICs9IFwKKyAgICBhcm0vZV9zcXJ0LlMgXAorICAgIGFybS9lX3NxcnRmLlMgXAorICAgIGFybS9zX2Zsb29yLlMgXAorCitlbmRpZgorCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIGFybTY0CisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitMT0NBTF9TUkNfRklMRVNfYXJtNjQgKz0gXAorICAgIGFybTY0L2NlaWwuUyBcCisgICAgYXJtNjQvZmVudi5jIFwKKyAgICBhcm02NC9mbWEuUyBcCisgICAgYXJtNjQvZmxvb3IuUyBcCisgICAgYXJtNjQvbHJpbnQuUyBcCisgICAgYXJtNjQvcmludC5TIFwKKyAgICBhcm02NC9zcXJ0LlMgXAorICAgIGFybTY0L3RydW5jLlMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYWNvcy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2FzaW4uYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hdGFuMi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Nvc2guYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9leHAuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9oeXBvdC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xvZy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xvZzEwLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfcG93LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc2luaC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2F0YW4uYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jYnJ0LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY29zLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZXhwbTEuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19sb2cxcC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3Npbi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3Rhbi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RhbmguYyBcCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgbWlwcworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlibV9taXBzX2FyY2hfZmlsZXMgOj0gXAorICAgIG1pcHMvZmVudi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Fjb3MuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hc2luLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYXRhbjIuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9jb3NoLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfZXhwLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfaHlwb3QuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sb2cuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sb2cxMC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3Bvdy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NpbmguYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9zcXJ0LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc3FydGYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19hdGFuLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2JydC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NlaWwuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jZWlsZi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Nvcy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2ZtYS5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2ZtYWYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbG9vci5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Zsb29yZi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2V4cG0xLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbGxyaW50LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbGxyaW50Zi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xvZzFwLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbHJpbnQuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19scmludGYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yaW50LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludGYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19zaW4uYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW4uYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5oLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdHJ1bmMuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190cnVuY2YuYyBcCisKK0xPQ0FMX1NSQ19GSUxFU19taXBzICs9ICQobGlibV9taXBzX2FyY2hfZmlsZXMpCitMT0NBTF9TUkNfRklMRVNfbWlwczY0ICs9ICQobGlibV9taXBzX2FyY2hfZmlsZXMpCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgeDg2CisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitMT0NBTF9TUkNfRklMRVNfeDg2ICs9IFwKKyAgICBpMzg3L2ZlbnYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbWEuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbWFmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbGxyaW50LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbGxyaW50Zi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2xyaW50LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbHJpbnRmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JpbnRmLmMgXAorICAgIHg4Ni9zcXJ0LlMgXAorICAgIHg4Ni9zcXJ0Zi5TIFwKKyAgICB4ODYvZV9hY29zLlMgXAorICAgIHg4Ni9lX2FzaW4uUyBcCisgICAgeDg2L2VfYXRhbjIuUyBcCisgICAgeDg2L2VfY29zaC5TIFwKKyAgICB4ODYvZV9leHAuUyBcCisgICAgeDg2L2VfaHlwb3QuUyBcCisgICAgeDg2L2VfbG9nMTAuUyBcCisgICAgeDg2L2VfbG9nLlMgXAorICAgIHg4Ni9lX3Bvdy5TIFwKKyAgICB4ODYvZV9zaW5oLlMgXAorICAgIHg4Ni9saWJtX3JlZHVjZV9waTA0bC5TIFwKKyAgICB4ODYvbGlibV9zaW5jb3NfaHVnZS5TIFwKKyAgICB4ODYvbGlibV90YW5jb3RfaHVnZS5TIFwKKyAgICB4ODYvc19hdGFuLlMgXAorICAgIHg4Ni9zX2NicnQuUyBcCisgICAgeDg2L3NfY29zLlMgXAorICAgIHg4Ni9zX2V4cG0xLlMgXAorICAgIHg4Ni9zX2xvZzFwLlMgXAorICAgIHg4Ni9zX3Npbi5TIFwKKyAgICB4ODYvc190YW5oLlMgXAorICAgIHg4Ni9zX3Rhbi5TIFwKKworaWZlcSAoJChBUkNIX1g4Nl9IQVZFX1NTRTRfMSksdHJ1ZSkKK0xPQ0FMX1NSQ19GSUxFU194ODYgKz0gXAorICAgIHg4Ni9jZWlsLlMgXAorICAgIHg4Ni9jZWlsZi5TIFwKKyAgICB4ODYvZmxvb3IuUyBcCisgICAgeDg2L2Zsb29yZi5TIFwKKyAgICB4ODYvdHJ1bmMuUyBcCisgICAgeDg2L3RydW5jZi5TIFwKKworZWxzZQorTE9DQUxfU1JDX0ZJTEVTX3g4NiArPSBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19jZWlsLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2VpbGYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbG9vci5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2Zsb29yZi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RydW5jLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdHJ1bmNmLmMgXAorCitlbmRpZgorCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIHg4Nl82NAorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorTE9DQUxfU1JDX0ZJTEVTX3g4Nl82NCArPSBcCisgICAgYW1kNjQvZmVudi5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2ZtYS5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2ZtYWYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19sbHJpbnQuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19sbHJpbnRmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfbHJpbnQuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19scmludGYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yaW50LmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludGYuYyBcCisgICAgeDg2XzY0L3NxcnQuUyBcCisgICAgeDg2XzY0L3NxcnRmLlMgXAorICAgIHg4Nl82NC9lX2Fjb3MuUyBcCisgICAgeDg2XzY0L2VfYXNpbi5TIFwKKyAgICB4ODZfNjQvZV9hdGFuMi5TIFwKKyAgICB4ODZfNjQvZV9jb3NoLlMgXAorICAgIHg4Nl82NC9lX2V4cC5TIFwKKyAgICB4ODZfNjQvZV9oeXBvdC5TIFwKKyAgICB4ODZfNjQvZV9sb2cxMC5TIFwKKyAgICB4ODZfNjQvZV9sb2cuUyBcCisgICAgeDg2XzY0L2VfcG93LlMgXAorICAgIHg4Nl82NC9lX3NpbmguUyBcCisgICAgeDg2XzY0L3NfYXRhbi5TIFwKKyAgICB4ODZfNjQvc19jYnJ0LlMgXAorICAgIHg4Nl82NC9zX2Nvcy5TIFwKKyAgICB4ODZfNjQvc19leHBtMS5TIFwKKyAgICB4ODZfNjQvc19sb2cxcC5TIFwKKyAgICB4ODZfNjQvc19zaW4uUyBcCisgICAgeDg2XzY0L3NfdGFuaC5TIFwKKyAgICB4ODZfNjQvc190YW4uUyBcCisKK2lmZXEgKCQoQVJDSF9YODZfSEFWRV9TU0U0XzEpLHRydWUpCitMT0NBTF9TUkNfRklMRVNfeDg2XzY0ICs9IFwKKyAgICB4ODZfNjQvY2VpbC5TIFwKKyAgICB4ODZfNjQvY2VpbGYuUyBcCisgICAgeDg2XzY0L2Zsb29yLlMgXAorICAgIHg4Nl82NC9mbG9vcmYuUyBcCisgICAgeDg2XzY0L3RydW5jLlMgXAorICAgIHg4Nl82NC90cnVuY2YuUyBcCisKK2Vsc2UKK0xPQ0FMX1NSQ19GSUxFU194ODZfNjQgKz0gXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfY2VpbC5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2NlaWxmLmMgXAorICAgIHVwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZmxvb3IuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19mbG9vcmYuYyBcCisgICAgdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190cnVuYy5jIFwKKyAgICB1cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RydW5jZi5jIFwKKworZW5kaWYKKworTE9DQUxfQ19JTkNMVURFU194ODYgKz0gJChMT0NBTF9QQVRIKS9pMzg3CisKK0xPQ0FMX0NfSU5DTFVERVMgKz0gJChMT0NBTF9QQVRIKS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy8KK0xPQ0FMX0NfSU5DTFVERVNfNjQgKz0gJChMT0NBTF9QQVRIKS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4LworCitMT0NBTF9DTEFORyA6PSAkKGxpYm1fY2xhbmcpCitMT0NBTF9BUk1fTU9ERSA6PSBhcm0KK0xPQ0FMX0NGTEFHUyA6PSBcCiAgICAgLURGTFRfRVZBTF9NRVRIT0Q9MCBcCi0gICAgLXN0ZD1jOTkgXAogICAgIC1pbmNsdWRlICQoTE9DQUxfUEFUSCkvZnJlZWJzZC1jb21wYXQuaCBcCiAgICAgLVduby1taXNzaW5nLWJyYWNlcyBcCiAgICAgLVduby1wYXJlbnRoZXNlcyBcCkBAIC0yNDIsNjEgKzQ5MCw0NiBAQAogICAgIC1Xbm8tdW5rbm93bi1wcmFnbWFzIFwKICAgICAtZnZpc2liaWxpdHk9aGlkZGVuIFwKIAorTE9DQUxfQVNGTEFHUyA6PSBcCisgICAgLUliaW9uaWMvbGliYyBcCisKICMgV29ya2Fyb3VuZCB0aGUgR0NDICIobG9uZylmbiAtPiBsZm4iIG9wdGltaXphdGlvbiBidWcgd2hpY2ggd2lsbCByZXN1bHQgaW4KICMgc2VsZiByZWN1cnNpb25zIGZvciBscmludCwgbHJpbnRmLCBhbmQgbHJpbnRsLgogIyBCVUc6IDE0MjI1OTY4Ci1saWJtX2NvbW1vbl9jZmxhZ3MgKz0gLWZuby1idWlsdGluLXJpbnQgLWZuby1idWlsdGluLXJpbnRmIC1mbm8tYnVpbHRpbi1yaW50bAorTE9DQUxfQ0ZMQUdTICs9IFwKKyAgICAtZm5vLWJ1aWx0aW4tcmludCBcCisgICAgLWZuby1idWlsdGluLXJpbnRmIFwKKyAgICAtZm5vLWJ1aWx0aW4tcmludGwgXAogCi1saWJtX2NvbW1vbl9pbmNsdWRlcyA6PSAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjLworTE9DQUxfQ09OTFlfRkxBR1MgOj0gXAorICAgIC1zdGQ9Yzk5IFwKIAotbGlibV9sZF9pbmNsdWRlcyA6PSAkKExPQ0FMX1BBVEgpL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvCi0KLSMKLSMgbGlibS5hIGZvciB0YXJnZXQuCi0jCi1pbmNsdWRlICQoQ0xFQVJfVkFSUykKLUxPQ0FMX01PRFVMRTo9IGxpYm0KLUxPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5tawotTE9DQUxfQVJNX01PREUgOj0gYXJtCi1MT0NBTF9DRkxBR1MgOj0gJChsaWJtX2NvbW1vbl9jZmxhZ3MpCi1MT0NBTF9DX0lOQ0xVREVTICs9ICQobGlibV9jb21tb25faW5jbHVkZXMpCi1MT0NBTF9TUkNfRklMRVMgOj0gJChsaWJtX2NvbW1vbl9zcmNfZmlsZXMpCi1MT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PSBsaWJjCi0KLSMgYXJjaC1zcGVjaWZpYyBzZXR0aW5ncwotTE9DQUxfQ19JTkNMVURFU19hcm0gOj0gJChMT0NBTF9QQVRIKS9hcm0KLUxPQ0FMX1NSQ19GSUxFU19hcm0gOj0gYXJtL2ZlbnYuYwotCi1MT0NBTF9DX0lOQ0xVREVTX2FybTY0IDo9ICQobGlibV9sZF9pbmNsdWRlcykKLUxPQ0FMX1NSQ19GSUxFU19hcm02NCA6PSBhcm02NC9mZW52LmMgJChsaWJtX2xkX3NyY19maWxlcykKLQotTE9DQUxfQ19JTkNMVURFU194ODYgOj0gJChMT0NBTF9QQVRIKS9pMzg3Ci1MT0NBTF9TUkNfRklMRVNfeDg2IDo9IGkzODcvZmVudi5jCi0KLUxPQ0FMX0NfSU5DTFVERVNfeDg2XzY0IDo9ICQobGlibV9sZF9pbmNsdWRlcykKLUxPQ0FMX1NSQ19GSUxFU194ODZfNjQgOj0gYW1kNjQvZmVudi5jICQobGlibV9sZF9zcmNfZmlsZXMpCi0KLUxPQ0FMX1NSQ19GSUxFU19taXBzIDo9IG1pcHMvZmVudi5jCi0KLUxPQ0FMX0NfSU5DTFVERVNfbWlwczY0IDo9ICQobGlibV9sZF9pbmNsdWRlcykKLUxPQ0FMX1NSQ19GSUxFU19taXBzNjQgOj0gbWlwcy9mZW52LmMgJChsaWJtX2xkX3NyY19maWxlcykKLQorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQorTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKIGluY2x1ZGUgJChCVUlMRF9TVEFUSUNfTElCUkFSWSkKIAotIwotIyBsaWJtLnNvIGZvciB0YXJnZXQuCi0jCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIGxpYm0uc28KKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGluY2x1ZGUgJChDTEVBUl9WQVJTKQotTE9DQUxfTU9EVUxFOj0gbGlibQotTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChMT0NBTF9QQVRIKS9BbmRyb2lkLm1rCisKKyMgVE9ETzogVGhpcyBpcyB0byB3b3JrIGFyb3VuZCBiLzE5MDU5ODg1LiBSZW1vdmUgYWZ0ZXIgcm9vdCBjYXVzZSBpcyBmaXhlZAorTE9DQUxfTERGTEFHU19hcm0gOj0gLVdsLC0taGFzaC1zdHlsZT1zeXN2CisKK0xPQ0FMX01PRFVMRSA6PSBsaWJtCitMT0NBTF9DTEFORyA6PSAkKGxpYm1fY2xhbmcpCiBMT0NBTF9TWVNURU1fU0hBUkVEX0xJQlJBUklFUyA6PSBsaWJjCiBMT0NBTF9XSE9MRV9TVEFUSUNfTElCUkFSSUVTIDo9IGxpYm0KIAorTE9DQUxfTkFUSVZFX0NPVkVSQUdFIDo9ICQoYmlvbmljX2NvdmVyYWdlKQorTE9DQUxfQUREUkVTU19TQU5JVElaRVIgOj0gZmFsc2UKKworTE9DQUxfQ1hYX1NUTCA6PSBub25lCisKICMgV2UnZCByZWFsbHkgbGlrZSB0byBkbyB0aGlzIGZvciBhbGwgYXJjaGl0ZWN0dXJlcywgYnV0IHNpbmNlIHRoaXMgd2Fzbid0IGRvbmUKICMgYmVmb3JlLCB0aGVzZSBzeW1ib2xzIG11c3QgY29udGludWUgdG8gYmUgZXhwb3J0ZWQgb24gTFAzMiBmb3IgYmluYXJ5CiAjIGNvbXBhdGliaWxpdHkuCi1MT0NBTF9MREZMQUdTX2FybTY0IDo9IC1XbCwtLWV4Y2x1ZGUtbGlicyxsaWJnY2MuYQotTE9DQUxfTERGTEFHU19taXBzNjQgOj0gLVdsLC0tZXhjbHVkZS1saWJzLGxpYmdjYy5hCi1MT0NBTF9MREZMQUdTX3g4Nl82NCA6PSAtV2wsLS1leGNsdWRlLWxpYnMsbGliZ2NjLmEKK0xPQ0FMX0xERkxBR1NfNjQgOj0gLVdsLC0tZXhjbHVkZS1saWJzLGxpYmdjYy5hCisKIGluY2x1ZGUgJChCVUlMRF9TSEFSRURfTElCUkFSWSkKIGVuZGlmCmRpZmYgLS1naXQgYS9saWJtL05PVElDRSBiL2xpYm0vTk9USUNFCmluZGV4IDViZTYwZGIuLjcwZjJmNDYgMTAwNjQ0Ci0tLSBhL2xpYm0vTk9USUNFCisrKyBiL2xpYm0vTk9USUNFCkBAIC01NDksMzIgKzU0OSw2IEBACiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotQ29weXJpZ2h0IChjKSAyMDA0LTIwMTEgRGF2aWQgU2NodWx0eiA8ZGFzQEZyZWVCU0QuT1JHPgotQWxsIHJpZ2h0cyByZXNlcnZlZC4KLQotUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci1tb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLWFyZSBtZXQ6Ci0xLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0KLVRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKLUFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKLUFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCi1GT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAotREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKLU9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKLUxJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKLU9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKLVNVQ0ggREFNQUdFLgotCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KIENvcHlyaWdodCAoYykgMjAwNSBCcnVjZSBELiBFdmFucyBhbmQgU3RldmVuIEcuIEthcmdsCiBBbGwgcmlnaHRzIHJlc2VydmVkLgogCkBAIC05NzYsNiArOTUwLDMyIEBACiAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAorQ29weXJpZ2h0IChjKSAyMDEyIFN0ZXBoZW4gTW9udGdvbWVyeS1TbWl0aCA8c3RlcGhlbkBGcmVlQlNELk9SRz4KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCithcmUgbWV0OgorMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKzIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKK0lNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCitBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKK0RBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCitPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKK0hPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCitMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCitPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCitTVUNIIERBTUFHRS4KKworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCiBDb3B5cmlnaHQgKGMpIDIwMTMgRGF2aWQgQ2hpc25hbGwKIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAKZGlmZiAtLWdpdCBhL2xpYm0vYXJtL2Vfc3FydC5TIGIvbGlibS9hcm0vZV9zcXJ0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTczMTJmNQotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vYXJtL2Vfc3FydC5TCkBAIC0wLDAgKzEsNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKGMpIDIwMTMtMjAxNCwgTlZJRElBIENvcnBvcmF0aW9uLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIEpvaG5ueSBRaXUgPGpvcWl1QG52aWRpYS5jb20+CisgKiBTaHUgWmhhbmcgPGNoYXpoYW5nQG52aWRpYS5jb20+CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogICAgICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAqICAgICAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAorICogICAgICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBUaGUgTGludXggRm91bmRhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogICAgICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCisgKiAgICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVECisgKiBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRgorICogTUVSQ0hBTlRBQklMSVRZLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OLUlORlJJTkdFTUVOVAorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUgorICogQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksCisgKiBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRQorICogT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTgorICogSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgPGZsb2F0Lmg+CisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKHNxcnQpCisgICAgdm1vdi5mNjQgICAgZDAsIHIwLCByMQorICAgIHZzcXJ0LmY2NCAgIGQwLCBkMAorICAgIHZtb3YuZjY0ICAgIHIwLCByMSwgZDAKKyAgICBieCAgICAgICAgICBscgorRU5EKHNxcnQpCisKK0FMSUFTX1NZTUJPTChzcXJ0bCwgc3FydCk7CmRpZmYgLS1naXQgYS9saWJtL2FybS9lX3NxcnRmLlMgYi9saWJtL2FybS9lX3NxcnRmLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGRlZmIyMgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vYXJtL2Vfc3FydGYuUwpAQCAtMCwwICsxLDM5IEBACisvKgorICogQ29weXJpZ2h0IChjKSAyMDEzLTIwMTQsIE5WSURJQSBDb3Jwb3JhdGlvbi4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBKb2hobm55IFFpdSA8am9xaXVAbnZpZGlhLmNvbT4KKyAqIFNodSBaaGFuZyA8Y2hhemhhbmdAbnZpZGlhLmNvbT4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiAgICAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZworICogICAgICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCisgKiAgICAgICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIFRoZSBMaW51eCBGb3VuZGF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiAgICAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKKyAqICAgICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyAqIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GCisgKiBNRVJDSEFOVEFCSUxJVFksIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT04tSU5GUklOR0VNRU5UCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SCisgKiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwKKyAqIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFCisgKiBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOCisgKiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKHNxcnRmKQorICAgIHZtb3YuZjMyICAgIHMwLCByMAorICAgIHZzcXJ0LmYzMiAgIHMwLCBzMAorICAgIHZtb3YuZjMyICAgIHIwLCBzMAorICAgIGJ4ICAgICAgICAgIGxyCitFTkQoc3FydGYpCmRpZmYgLS1naXQgYS9saWJtL2FybS9zX2Zsb29yLlMgYi9saWJtL2FybS9zX2Zsb29yLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2FmOGY3NgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vYXJtL3NfZmxvb3IuUwpAQCAtMCwwICsxLDEzOSBAQAorLyoKKyAqIENvcHlyaWdodCAoYykgMjAxMy0yMDE0LCBOVklESUEgQ29ycG9yYXRpb24uICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogSm9obm55IFFpdSA8am9xaXVAbnZpZGlhLmNvbT4KKyAqIFNodSBaaGFuZyA8Y2hhemhhbmdAbnZpZGlhLmNvbT4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiAgICAgICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZworICogICAgICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCisgKiAgICAgICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIFRoZSBMaW51eCBGb3VuZGF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiAgICAgICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKKyAqICAgICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQKKyAqIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GCisgKiBNRVJDSEFOVEFCSUxJVFksIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT04tSU5GUklOR0VNRU5UCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SCisgKiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwKKyAqIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFCisgKiBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOCisgKiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8ZmxvYXQuaD4KKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoZmxvb3IpICAgIC8qIHggaW4gcjAsIHIxICovCisKKyAgICAgICAgYW5kICAgICAgICAgICAgIHIzLCByMSwgIzB4ODAwMDAwMDAgICAgIC8qIHNpZ24oeCkgKi8KKyAgICAgICAgYmljICAgICAgICAgICAgIHIxLCByMSwgIzB4ODAwMDAwMDAgICAgIC8qIHggPSBhYnMoeCkgKi8KKworICAgICAgICAvKiBleHRyYWN0IGV4cCBvZiB4ICovCisgICAgICAgIGxzciAgICAgICAgICAgICByMiwgcjEsICMyMAorICAgICAgICBzdWIgICAgICAgICAgICAgcjIsIHIyLCAjMHgzZmMKKyAgICAgICAgc3VicyAgICAgICAgICAgIHIyLCByMiwgIzB4MyAgICAgICAgICAgIC8qIHIyIDwtIGV4cCAqLworCisgICAgICAgIC8qIHx4fCA8IDEuMD8gKi8KKyAgICAgICAgYmx0ICAgICAgICAgICAgIC5MeF9sdF9vbmUKKworICAgICAgICAvKiB4IDwgMD8gKi8KKyAgICAgICAgY21wICAgICAgICAgICAgIHIzLCAjMAorICAgICAgICBibmUgICAgICAgICAgICAgLkxjbHJfZnJhY19uZWcKKworICAgICAgICAvKiB8eHwgPD0gMl4yMD8gKi8KKyAgICAgICAgY21wICAgICAgICAgICAgIHIyLCAjMjAKKyAgICAgICAgYmxlICAgICAgICAgICAgIC5MY2xyX2ZyYWNfcjEKKworICAgICAgICAvKiB8eHwgPCAyXjUyPyAqLworICAgICAgICBjbXAgICAgICAgICAgICAgcjIsICM1MgorICAgICAgICBibHQgICAgICAgICAgICAgLkxjbHJfZnJhY19yMAorCisgICAgICAgIC8qIHJldHVybiB4ICovCisgICAgICAgIGJ4ICAgICAgICAgICAgICBscgorCisuTGNscl9mcmFjX3IxOgorICAgICAgICByc2IgICAgICAgICAgICAgcjIsIHIyLCAjMjAKKyAgICAgICAgbHNyICAgICAgICAgICAgIHIxLCByMSwgcjIKKyAgICAgICAgbHNsICAgICAgICAgICAgIHIxLCByMSwgcjIKKyAgICAgICAgbW92ICAgICAgICAgICAgIHIwLCAjMAorICAgICAgICBieCAgICAgICAgICAgICAgbHIKKworLkxjbHJfZnJhY19yMDoKKyAgICAgICAgcnNiICAgICAgICAgICAgIHIyLCByMiwgIzUyCisgICAgICAgIGxzciAgICAgICAgICAgICByMCwgcjAsIHIyCisgICAgICAgIGxzbCAgICAgICAgICAgICByMCwgcjAsIHIyCisgICAgICAgIGJ4ICAgICAgICAgICAgICBscgorCisuTGNscl9mcmFjX25lZzoKKyAgICAgICAgLyogfHh8IDw9IDJeMjA/ICovCisgICAgICAgIGNtcCAgICAgICAgICAgICByMiwgIzIwCisgICAgICAgIGJsZSAgICAgICAgICAgICAuTGNscl9mcmFjX3IxX25lZworCisgICAgICAgIC8qIHx4fCA8IDJeNTI/ICovCisgICAgICAgIGNtcCAgICAgICAgICAgICByMiwgIzUyCisgICAgICAgIGJsdCAgICAgICAgICAgICAuTGNscl9mcmFjX3IwX25lZworCisgICAgICAgIC8qIHJldHVybiB4ICovCisgICAgICAgIG9yciAgICAgICAgICAgICByMSwgcjEsICMweDgwMDAwMDAwCisgICAgICAgIGJ4ICAgICAgICAgICAgICBscgorCisuTGNscl9mcmFjX3IxX25lZzoKKyAgICAgICAgcnNiICAgICAgICAgICAgIHIyLCByMiwgIzIwCisgICAgICAgIG1vdiAgICAgICAgICAgICByMywgIzEKKyAgICAgICAgbHNsICAgICAgICAgICAgIHIzLCByMywgcjIKKyAgICAgICAgc3ViICAgICAgICAgICAgIHIzLCByMywgIzEKKyAgICAgICAgYW5kICAgICAgICAgICAgIHIzLCByMSwgcjMKKyAgICAgICAgb3JyICAgICAgICAgICAgIHIzLCByMywgcjAKKyAgICAgICAgbHNyICAgICAgICAgICAgIHIxLCByMSwgcjIKKyAgICAgICAgbHNsICAgICAgICAgICAgIHIxLCByMSwgcjIKKyAgICAgICAgbW92ICAgICAgICAgICAgIHIwLCAjMAorICAgICAgICBiICAgICAgICAgICAgICAgLkxyZXR1cm5feF9uZWcKKworLkxjbHJfZnJhY19yMF9uZWc6CisgICAgICAgIHJzYiAgICAgICAgICAgICByMiwgcjIsICM1MgorICAgICAgICBtb3YgICAgICAgICAgICAgcjMsICMxCisgICAgICAgIGxzbCAgICAgICAgICAgICByMywgcjMsIHIyCisgICAgICAgIHN1YiAgICAgICAgICAgICByMywgcjMsICMxCisgICAgICAgIGFuZCAgICAgICAgICAgICByMywgcjAsIHIzCisgICAgICAgIGxzciAgICAgICAgICAgICByMCwgcjAsIHIyCisgICAgICAgIGxzbCAgICAgICAgICAgICByMCwgcjAsIHIyCisgICAgICAgIGIgICAgICAgICAgICAgICAuTHJldHVybl94X25lZworCisuTHhfbHRfb25lOgorICAgICAgICAvKiB4ID09ICstMD8gKi8KKyAgICAgICAgY21wICAgICAgICAgICAgIHIwLCAjMAorICAgICAgICBjbXBlcSAgICAgICAgICAgcjEsICMwCisgICAgICAgIG9ycmVxICAgICAgICAgICByMSwgcjEsIHIzCisgICAgICAgIGJ4ZXEgICAgICAgICAgICBscgorCisgICAgICAgIC8qICh4ID4gMCkgPyAwIDogLTEgKi8KKyAgICAgICAgbW92ICAgICAgICAgICAgIHIxLCAjMHgwMDEwMDAwMAorICAgICAgICBtb3YgICAgICAgICAgICAgcjAsICMwCisgICAgICAgIGNtcCAgICAgICAgICAgICByMywgIzAKKyAgICAgICAgbW92bmUgICAgICAgICAgIHIxLCAjMHhjMDAwMDAwMAorICAgICAgICBzdWIgICAgICAgICAgICAgcjEsIHIxLCAjMHgwMDEwMDAwMAorICAgICAgICBieCAgICAgICAgICAgICAgbHIKKworLkxyZXR1cm5feF9uZWc6CisgICAgICAgIGNtcCAgICAgICAgICAgICByMywgIzAKKyAgICAgICAgb3JyICAgICAgICAgICAgIHIxLCByMSwgIzB4ODAwMDAwMDAKKyAgICAgICAgYnhlcSAgICAgICAgICAgIGxyCisKKyAgICAgICAgdm1vdiAgICAgICAgICAgIGQxNiwgcjAsIHIxCisgICAgICAgIHZtb3YuZjY0ICAgICAgICBkMTgsICMxLjAKKyAgICAgICAgdnN1Yi5mNjQgICAgICAgIGQxNiwgZDE2LCBkMTgKKyAgICAgICAgdm1vdiAgICAgICAgICAgIHIwLCByMSwgZDE2CisgICAgICAgIGJ4ICAgICAgICAgICAgICBscgorCitFTkQoZmxvb3IpCisKK0FMSUFTX1NZTUJPTChmbG9vcmwsIGZsb29yKTsKZGlmZiAtLWdpdCBhL2xpYm0vYXJtNjQvY2VpbC5TIGIvbGlibS9hcm02NC9jZWlsLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDA2Yzk4OAotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vYXJtNjQvY2VpbC5TCkBAIC0wLDAgKzEsMjcgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNSwgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoY2VpbCkKKyAgZnJpbnRQIGQwLCBkMAorICByZXQKK0VORChjZWlsKQorCitFTlRSWShjZWlsZikKKyAgZnJpbnRQIHMwLCBzMAorICByZXQKK0VORChjZWlsZikKZGlmZiAtLWdpdCBhL2xpYm0vYXJtNjQvZmxvb3IuUyBiL2xpYm0vYXJtNjQvZmxvb3IuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZDc5MmU1Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS9hcm02NC9mbG9vci5TCkBAIC0wLDAgKzEsMjcgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNSwgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoZmxvb3IpCisgIGZyaW50TSBkMCwgZDAKKyAgcmV0CitFTkQoZmxvb3IpCisKK0VOVFJZKGZsb29yZikKKyAgZnJpbnRNIHMwLCBzMAorICByZXQKK0VORChmbG9vcmYpCmRpZmYgLS1naXQgYS9saWJtL2FybTY0L2ZtYS5TIGIvbGlibS9hcm02NC9mbWEuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNjRlODA3Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS9hcm02NC9mbWEuUwpAQCAtMCwwICsxLDI3IEBACisvKgorICogQ29weXJpZ2h0IDIwMTUsIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKGZtYSkKKyAgZm1hZGQgZDAsIGQwLCBkMSwgZDIKKyAgcmV0CitFTkQoZm1hKQorCitFTlRSWShmbWFmKQorICBmbWFkZCBzMCwgczAsIHMxLCBzMgorICByZXQKK0VORChmbWFmKQpkaWZmIC0tZ2l0IGEvbGlibS9hcm02NC9scmludC5TIGIvbGlibS9hcm02NC9scmludC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ2NDI3NTkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL2FybTY0L2xyaW50LlMKQEAgLTAsMCArMSwzNCBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE1LCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShscmludCkKKyAgZnJpbnRYIGQwLCBkMAorICBmY3Z0enMgeDAsIGQwCisgIHJldAorRU5EKGxyaW50KQorCitFTlRSWShscmludGYpCisgIGZyaW50WCBzMCwgczAKKyAgZmN2dHpzIHgwLCBzMAorICByZXQKK0VORChscmludGYpCisKKy8vIHNpemVvZihsb25nKSBhbmQgc2l6ZW9mKGxvbmcgbG9uZykgYXJlIHRoZSBzYW1lIGZvciBhYXJjaDY0CitBTElBU19TWU1CT0wobGxyaW50LCBscmludCk7CisKK0FMSUFTX1NZTUJPTChsbHJpbnRmLCBscmludGYpOwpkaWZmIC0tZ2l0IGEvbGlibS9hcm02NC9yaW50LlMgYi9saWJtL2FybTY0L3JpbnQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wODIwYzIyCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS9hcm02NC9yaW50LlMKQEAgLTAsMCArMSwyNyBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE1LCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShyaW50KQorICBmcmludFggZDAsIGQwCisgIHJldAorRU5EKHJpbnQpCisKK0VOVFJZKHJpbnRmKQorICBmcmludFggczAsIHMwCisgIHJldAorRU5EKHJpbnRmKQpkaWZmIC0tZ2l0IGEvbGlibS9hcm02NC9zcXJ0LlMgYi9saWJtL2FybTY0L3NxcnQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZTAwMjBiCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS9hcm02NC9zcXJ0LlMKQEAgLTAsMCArMSwyNyBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE1LCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShzcXJ0KQorICBmc3FydCBkMCwgZDAKKyAgcmV0CitFTkQoc3FydCkKKworRU5UUlkoc3FydGYpCisgIGZzcXJ0IHMwLCBzMAorICByZXQKK0VORChzcXJ0ZikKZGlmZiAtLWdpdCBhL2xpYm0vYXJtNjQvdHJ1bmMuUyBiL2xpYm0vYXJtNjQvdHJ1bmMuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMjljMDhkCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS9hcm02NC90cnVuYy5TCkBAIC0wLDAgKzEsMjcgQEAKKy8qCisgKiBDb3B5cmlnaHQgMjAxNSwgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkodHJ1bmMpCisgIGZyaW50WiBkMCwgZDAKKyAgcmV0CitFTkQodHJ1bmMpCisKK0VOVFJZKHRydW5jZikKKyAgZnJpbnRaIHMwLCBzMAorICByZXQKK0VORCh0cnVuY2YpCmRpZmYgLS1naXQgYS9saWJtL2ZyZWVic2QtY29tcGF0LmggYi9saWJtL2ZyZWVic2QtY29tcGF0LmgKaW5kZXggMTQ4MWNjMi4uYTRkZDZjMiAxMDA2NDQKLS0tIGEvbGlibS9mcmVlYnNkLWNvbXBhdC5oCisrKyBiL2xpYm0vZnJlZWJzZC1jb21wYXQuaApAQCAtMjYsNiArMjYsOCBAQAogI2RlZmluZSBfX3N0cm9uZ19yZWZlcmVuY2Uoc3ltLGFsaWFzc3ltKSBcCiAgICAgZXh0ZXJuIF9fdHlwZW9mIChzeW0pIGFsaWFzc3ltIF9fYXR0cmlidXRlX18gKChfX2FsaWFzX18gKCNzeW0pKSkKIAorI2RlZmluZSBfX3dhcm5fcmVmZXJlbmNlcyhzeW0sbXNnKSAvKiBpZ25vcmVkICovCisKIC8qIGRpZ2l0dG9pbnQgaXMgaW4gQlNEJ3MgPGN0eXBlLmg+LiAqLwogaW50IGRpZ2l0dG9pbnQoY2hhciBjaCk7CiAKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC14ODZfNjQvaW5jbHVkZS9tYWNoaW5lL2ZwdS5oIGIvbGlibS9pbmNsdWRlL2FtZDY0L21hY2hpbmUvZnB1LmgKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIGxpYmMvYXJjaC14ODZfNjQvaW5jbHVkZS9tYWNoaW5lL2ZwdS5oCnJlbmFtZSB0byBsaWJtL2luY2x1ZGUvYW1kNjQvbWFjaGluZS9mcHUuaApkaWZmIC0tZ2l0IGEvbGlibS9pbmNsdWRlL2NvbXBsZXguaCBiL2xpYm0vaW5jbHVkZS9jb21wbGV4LmgKaW5kZXggMDcwMjU0MS4uZmY2YjE2NiAxMDA2NDQKLS0tIGEvbGlibS9pbmNsdWRlL2NvbXBsZXguaAorKysgYi9saWJtL2luY2x1ZGUvY29tcGxleC5oCkBAIC00NiwxNCArNDYsMzkgQEAKICNkZWZpbmUJY29tcGxleAkJX0NvbXBsZXgKICNkZWZpbmUJSQkJX0NvbXBsZXhfSQogCisjaWYgX19JU09fQ19WSVNJQkxFID49IDIwMTEKKyNpZmRlZiBfX2NsYW5nX18KKyNkZWZpbmUJQ01QTFgoeCwgeSkJKChkb3VibGUgY29tcGxleCl7IHgsIHkgfSkKKyNkZWZpbmUJQ01QTFhGKHgsIHkpCSgoZmxvYXQgY29tcGxleCl7IHgsIHkgfSkKKyNkZWZpbmUJQ01QTFhMKHgsIHkpCSgobG9uZyBkb3VibGUgY29tcGxleCl7IHgsIHkgfSkKKyNlbGlmIF9fR05VQ19QUkVSRVFfXyg0LCA3KQorI2RlZmluZQlDTVBMWCh4LCB5KQlfX2J1aWx0aW5fY29tcGxleCgoZG91YmxlKSh4KSwgKGRvdWJsZSkoeSkpCisjZGVmaW5lCUNNUExYRih4LCB5KQlfX2J1aWx0aW5fY29tcGxleCgoZmxvYXQpKHgpLCAoZmxvYXQpKHkpKQorI2RlZmluZQlDTVBMWEwoeCwgeSkJX19idWlsdGluX2NvbXBsZXgoKGxvbmcgZG91YmxlKSh4KSwgKGxvbmcgZG91YmxlKSh5KSkKKyNlbmRpZgorI2VuZGlmIC8qIF9fSVNPX0NfVklTSUJMRSA+PSAyMDExICovCisKIF9fQkVHSU5fREVDTFMKKyNwcmFnbWEgR0NDIHZpc2liaWxpdHkgcHVzaChkZWZhdWx0KQogCiBkb3VibGUJCWNhYnMoZG91YmxlIGNvbXBsZXgpOwogZmxvYXQJCWNhYnNmKGZsb2F0IGNvbXBsZXgpOwogbG9uZyBkb3VibGUJY2Fic2wobG9uZyBkb3VibGUgY29tcGxleCk7Citkb3VibGUgY29tcGxleAljYWNvcyhkb3VibGUgY29tcGxleCk7CitmbG9hdCBjb21wbGV4CWNhY29zZihmbG9hdCBjb21wbGV4KTsKK2RvdWJsZSBjb21wbGV4CWNhY29zaChkb3VibGUgY29tcGxleCk7CitmbG9hdCBjb21wbGV4CWNhY29zaGYoZmxvYXQgY29tcGxleCk7CiBkb3VibGUJCWNhcmcoZG91YmxlIGNvbXBsZXgpOwogZmxvYXQJCWNhcmdmKGZsb2F0IGNvbXBsZXgpOwogbG9uZyBkb3VibGUJY2FyZ2wobG9uZyBkb3VibGUgY29tcGxleCk7Citkb3VibGUgY29tcGxleAljYXNpbihkb3VibGUgY29tcGxleCk7CitmbG9hdCBjb21wbGV4CWNhc2luZihmbG9hdCBjb21wbGV4KTsKK2RvdWJsZSBjb21wbGV4CWNhc2luaChkb3VibGUgY29tcGxleCk7CitmbG9hdCBjb21wbGV4CWNhc2luaGYoZmxvYXQgY29tcGxleCk7Citkb3VibGUgY29tcGxleAljYXRhbihkb3VibGUgY29tcGxleCk7CitmbG9hdCBjb21wbGV4CWNhdGFuZihmbG9hdCBjb21wbGV4KTsKK2RvdWJsZSBjb21wbGV4CWNhdGFuaChkb3VibGUgY29tcGxleCk7CitmbG9hdCBjb21wbGV4CWNhdGFuaGYoZmxvYXQgY29tcGxleCk7CiBkb3VibGUgY29tcGxleAljY29zKGRvdWJsZSBjb21wbGV4KTsKIGZsb2F0IGNvbXBsZXgJY2Nvc2YoZmxvYXQgY29tcGxleCk7CiBkb3VibGUgY29tcGxleAljY29zaChkb3VibGUgY29tcGxleCk7CkBAIC04Nyw2ICsxMTIsNyBAQAogZG91YmxlIGNvbXBsZXgJY3RhbmgoZG91YmxlIGNvbXBsZXgpOwogZmxvYXQgY29tcGxleAljdGFuaGYoZmxvYXQgY29tcGxleCk7CiAKKyNwcmFnbWEgR0NDIHZpc2liaWxpdHkgcG9wCiBfX0VORF9ERUNMUwogCiAjZW5kaWYgLyogX0NPTVBMRVhfSCAqLwpkaWZmIC0tZ2l0IGEvbGlibS9pbmNsdWRlL21hdGguaCBiL2xpYm0vaW5jbHVkZS9tYXRoLmgKaW5kZXggM2VjYTE0MC4uMTU0MjM3NCAxMDA2NDQKLS0tIGEvbGlibS9pbmNsdWRlL21hdGguaAorKysgYi9saWJtL2luY2x1ZGUvbWF0aC5oCkBAIC00NTksMTQgKzQ1OSwxNyBAQAogbG9uZyBkb3VibGUJdGFubChsb25nIGRvdWJsZSk7CiBsb25nIGRvdWJsZQl0Z2FtbWFsKGxvbmcgZG91YmxlKTsKIGxvbmcgZG91YmxlCXRydW5jbChsb25nIGRvdWJsZSk7Ci0KICNlbmRpZiAvKiBfX0lTT19DX1ZJU0lCTEUgPj0gMTk5OSAqLwogCi0jaWYgZGVmaW5lZChfR05VX1NPVVJDRSkKKyNpZiBfX0JTRF9WSVNJQkxFCitsb25nIGRvdWJsZQlsZ2FtbWFsX3IobG9uZyBkb3VibGUsIGludCAqKTsKKyNlbmRpZgorCisjaWYgZGVmaW5lZChfX1VTRV9HTlUpCiB2b2lkIHNpbmNvcyhkb3VibGUsIGRvdWJsZSosIGRvdWJsZSopOwogdm9pZCBzaW5jb3NmKGZsb2F0LCBmbG9hdCosIGZsb2F0Kik7CiB2b2lkIHNpbmNvc2wobG9uZyBkb3VibGUsIGxvbmcgZG91YmxlKiwgbG9uZyBkb3VibGUqKTsKLSNlbmRpZiAvKiBfR05VX1NPVVJDRSAqLworI2VuZGlmIC8qIF9fVVNFX0dOVSAqLwogCiAjcHJhZ21hIEdDQyB2aXNpYmlsaXR5IHBvcAogX19FTkRfREVDTFMKZGlmZiAtLWdpdCBhL2xpYm0vc2luY29zLmMgYi9saWJtL3NpbmNvcy5jCmluZGV4IGFkNzU1NDkuLmE1NjA4Y2YgMTAwNjQ0Ci0tLSBhL2xpYm0vc2luY29zLmMKKysrIGIvbGlibS9zaW5jb3MuYwpAQCAtMjIsOCArMjIsOCBAQAogICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQogICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgogICogU1VDSCBEQU1BR0UuCi0gKgogICovCisKICNkZWZpbmUgX0dOVV9TT1VSQ0UgMQogI2luY2x1ZGUgPG1hdGguaD4KIApkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2VfbGdhbW1hbF9yLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvZV9sZ2FtbWFsX3IuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41M2QzYWYxCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2VfbGdhbW1hbF9yLmMKQEAgLTAsMCArMSwzMzAgQEAKKy8qIEAoIyllX2xnYW1tYV9yLmMgMS4zIDk1LzAxLzE4ICovCisvKgorICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorICogQ29weXJpZ2h0IChDKSAxOTkzIGJ5IFN1biBNaWNyb3N5c3RlbXMsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBEZXZlbG9wZWQgYXQgU3VuU29mdCwgYSBTdW4gTWljcm9zeXN0ZW1zLCBJbmMuIGJ1c2luZXNzLgorICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcworICogc29mdHdhcmUgaXMgZnJlZWx5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhpcyBub3RpY2UKKyAqIGlzIHByZXNlcnZlZC4KKyAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAqLworCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CitfX0ZCU0RJRCgiJEZyZWVCU0QkIik7CisKKy8qCisgKiBTZWUgZV9sZ2FtbWFfci5jIGZvciBjb21wbGV0ZSBjb21tZW50cy4KKyAqCisgKiBDb252ZXJ0ZWQgdG8gbG9uZyBkb3VibGUgYnkgU3RldmVuIEcuIEthcmdsLgorICovCisKKyNpbmNsdWRlICJmcG1hdGguaCIKKyNpbmNsdWRlICJtYXRoLmgiCisjaW5jbHVkZSAibWF0aF9wcml2YXRlLmgiCisKK3N0YXRpYyBjb25zdCB2b2xhdGlsZSBkb3VibGUgdnplcm8gPSAwOworCitzdGF0aWMgY29uc3QgZG91YmxlCit6ZXJvPSAgMCwKK2hhbGY9ICAwLjUsCitvbmUgPSAgMTsKKworc3RhdGljIGNvbnN0IGxvbmcgZG91YmxlCitwaSAgPSAgMy4xNDE1OTI2NTM1ODk3OTMyMzg0NjI2NDMzODMyNzk1MDI4OGUrMDBMOworLyoKKyAqIERvbWFpbiB5IGluIFsweDFwLTExOSwgMC4yOF0sIHJhbmdlIH5bLTEuNDA2NWUtMzYsIDEuNDA2NWUtMzZdOgorICogfChsZ2FtbWEoMiAtIHkpICsgeSAvIDIpIC8geSAtIGEoeSl8IDwgMioqLTExOS4xCisgKi8KK3N0YXRpYyBjb25zdCBsb25nIGRvdWJsZQorYTAgID0gIDcuNzIxNTY2NDkwMTUzMjg2MDYwNjUxMjA5MDA4MjQwMjQyOTZlLTAyTCwKK2ExICA9ICAzLjIyNDY3MDMzNDI0MTEzMjE4MjM2MjA3NTgzMzIzMDE4NDk4ZS0wMUwsCithMiAgPSAgNi43MzUyMzAxMDUzMTk4MDk1MTMzMjQ2MDUzODMzMDI4MjIxN2UtMDJMLAorYTMgID0gIDIuMDU4MDgwODQyNzc4NDU0Nzg3OTAwMDkyNTI4MDM0NjMxMjllLTAyTCwKK2E0ICA9ICA3LjM4NTU1MTAyODY3Mzk4NTI2NjI3MjkyODM5Mjk2MDAxNjI2ZS0wM0wsCithNSAgPSAgMi44OTA1MTAzMzA3NDE1MjMyODU3NjgyOTUwOTUyMjQ4MzQ2OGUtMDNMLAorYTYgID0gIDEuMTkyNzUzOTExNzAzMjYwOTc2MTgzNTczNDk4ODE4NDI5MTNlLTAzTCwKK2E3ICA9ICA1LjA5NjY5NTI0NzQzMDQyNDYyNTE1MjU2MzQwMjA2MjAzMDE5ZS0wNEwsCithOCAgPSAgMi4yMzE1NDc1ODQ1MzU3ODA5NjE0MzYwOTI1NTU1OTU3NjAxN2UtMDRMLAorYTkgID0gIDkuOTQ1NzUxMjc4MTgzOTc2MzIxMjY5Nzg3MzE1NDI3NTUxMjllLTA1TCwKK2ExMCA9ICA0LjQ5MjYyMzY3Mzc1NDIwNDcxMjg3NTQ1ODk1MDI3MDk4MTQ1ZS0wNUwsCithMTEgPSAgMi4wNTA3MjEyNzg0NTExNzk5NTQyNjUxOTY3MTQ4MTYyODg0OWUtMDVMLAorYTEyID0gIDkuNDM5NDg4MTY5NTkwOTY3NDg0NTQwODcxNDE0NDc5Mzk1MTNlLTA2TCwKK2ExMyA9ICA0LjM3NDg2NzgwNjk3MzU5MzMwMzAzODUyMDUwNzE4Mjg3NDE5ZS0wNkwsCithMTQgPSAgMi4wMzkyMDc4Mzg5MjM2MjU1ODI3NjAzNzM2Mzg0NzY1MTgwOWUtMDZMLAorYTE1ID0gIDkuNTUxOTEwNzAwNTc5NjcyODc4Nzc5MjMwNzMyMDAzMjQ2NDllLTA3TCwKK2ExNiA9ICA0LjQ4OTkzMjg2MTg1NzQwODUzMTcwNjU3MTM5NDg3NjIwNTYwZS0wN0wsCithMTcgPSAgMi4xMzEwNzU0MzU5NzYyMDkxMTY3NTMxNjcyODE3OTU2MzUyMmUtMDdMLAorYTE4ID0gIDkuNzA3NDUzNzk4NTUzMDQ0OTk4Njc1NDY1NDk1NTEwMjM0NzNlLTA4TCwKK2ExOSA9ICA1LjYxODg5OTcwMzkwMjkwMjU3OTI2NDg3NzM0Njk1NDAyMDc1ZS0wOEwsCithMjAgPSAgNi40MjczOTY1MzAyNDEzMDA3MTg2NjY4NDM1ODk2MDk2MDk1MWUtMDlMLAorYTIxID0gIDMuMzQ0OTEwNjIxNDM2NDkyOTE3NDYxOTU2MTI5OTE4NzAxMTllLTA4TCwKK2EyMiA9IC0xLjU3MDY4NTQ3Mzk0MzE1MjIzOTM0NjUzMDExNDQwNjQxNDcyZS0wOEwsCithMjMgPSAgMS4zMDgxMjgyNTQyMjQxNTg0MTIxMzczMzQ4Nzc0NTIwMDYzMmUtMDhMOworLyoKKyAqIERvbWFpbiB4IGluIFt0Yy0wLjI0LCB0YyswLjI4XSwgcmFuZ2UgflstNi4zMjAxZS0zNywgNi4zMjAxZS0zN106CisgKiB8KGxnYW1tYSh4KSAtIHRmKSAtIHQoeCAtIHRjKXwgPCAyKiotMTIwLjMuCisgKi8KK3N0YXRpYyBjb25zdCBsb25nIGRvdWJsZQordGMgID0gIDEuNDYxNjMyMTQ0OTY4MzYyMzQxMjYyNjU5NTQyMzI1NzIxMzNlKzAwTCwKK3RmICA9IC0xLjIxNDg2MjkwNTM1ODQ5NjA4MDk1NTE0NTU3MTc3NjkxNTg0ZS0wMUwsCit0dCAgPSAgMS41NzA2MTczOTk0NTA3NzY3NTQ4NDIzNzgzNzk5Mjk1MTcwNGUtMzZMLAordDAgID0gLTEuOTkyMzgzMjk0OTkzMTQ2OTI3Mjg2NTU2MjM3NjcwMTkyNDBlLTM2TCwKK3QxICA9IC02LjA4NDUzNDMwNzExNzExNDA0MTE2ODg3NDU3NjYzMjgxNDE2ZS0zNUwsCit0MiAgPSAgNC44MzgzNjEyMjcyMzgxMDU4NTIxMzcyMjM4MDg1NDgyODkwNGUtMDFMLAordDMgID0gLTEuNDc1ODc3MjI5OTQ1MzA3MDIwMzA5NTUwOTM5NTA2NjgyNzVlLTAxTCwKK3Q0ICA9ICA2LjQ2MjQ5NDAyMzg5MTI3NTI2NTYxMDAzNDY0MjAyNjcxOTIzZS0wMkwsCit0NSAgPSAtMy4yNzg4NTQxMDg4NDgxMzA1NTAwODUwMjU4Njg2Mzc0ODA2M2UtMDJMLAordDYgID0gIDEuNzk3MDY3NTExNTIxMDM5NDI5Mjg2MzgyNzYwNjcxNjQ5MzVlLTAyTCwKK3Q3ICA9IC0xLjAzMTQyMjMwMzY2MzYzODcyNzUxNjAyMDI5NjcyNzY3OTc4ZS0wMkwsCit0OCAgPSAgNi4xMDA1MzYwMjA1MTc4ODg0MDMxMzU3MzE1MDc4NTA4MDk1OGUtMDNMLAordDkgID0gLTMuNjg0NTY5NjA4MzE2MzczMjU0NzA2NDEwMjE4OTI5Njg5NTRlLTAzTCwKK3QxMCA9ICAyLjI1OTc2NDgyMzIyMTgxMDQ2NjExNDQwODU1MzQwOTY4NTYwZS0wM0wsCit0MTEgPSAtMS40MDIyNTE0NDU5MDQ0NTA4MjkzMzQ5MDM5NTk1MDY2NDk2MWUtMDNMLAordDEyID0gIDguNzgyMzI2MzQ3MTc2ODEyNjQwMzUwMTQ4NzgxNzI0ODU1NzVlLTA0TCwKK3QxMyA9IC01LjU0MTk0OTUyNzk2NjgyMzAxMjIwNjg0NzYwNTkxNDAzODk5ZS0wNEwsCit0MTQgPSAgMy41MTkxMjk1NjgzNzg0ODIwOTIyMDQyMTIxMzk3NTAwMDI5OGUtMDRMLAordDE1ID0gLTIuMjQ2NTM0NDM2OTU5NDc0NTY1NDI2NjkyODkzNjcwNTU1NDJlLTA0TCwKK3QxNiA9ICAxLjQ0MDcwMzk1NDIwODQwNzM3Njk1NjExOTI5NjgwNTExODIzZS0wNEwsCit0MTcgPSAtOS4yNzYwOTg2NTU1MDM5NDE0MDA2NzA1OTQ4NzUxODg2MjUxMmUtMDVMLAordDE4ID0gIDUuOTkzNDczMzQ0Mzg0MzcwODE0MTI5NDU0MjgzNjU0MzMwNzNlLTA1TCwKK3QxOSA9IC0zLjg4NDU4Mzg4ODU0NTcyODI1NjAzOTY0Mjc0MTM0ODAxMDA5ZS0wNUwsCit0MjAgPSAgMi41MjQ3NjYzMTYxMDMyODEyOTIxNzg5NjQzNjE4NjU1MTA0M2UtMDVMLAordDIxID0gLTEuNjQ1MDg1ODQ5ODE2NTg2OTI1NTY5OTQyMTI0NTc1MTg1MzZlLTA1TCwKK3QyMiA9ICAxLjA3NDM0NTgzNDc1OTg3MDA3NDk1NTIzMzQwMjk2MTczODM5ZS0wNUwsCit0MjMgPSAtNy4wMzA3MDQwNzUxOTM5NzI2MDkyOTQ4MjU1MDQ0ODg3ODM5OWUtMDZMLAordDI0ID0gIDQuNjA5Njg1OTA2OTM3NTM1Nzk2NDgzODU2MjkwMDMxMDA0NjllLTA2TCwKK3QyNSA9IC0zLjAyNzY1NDczNzc4ODMyMDM2MDE4NDM4Njc2OTQ1NTEyNjYxZS0wNkwsCit0MjYgPSAgMS45OTIzODc3MTU0NTUwMzgxOTk3Mjc0MTI4ODUxMTMwMzQwMWUtMDZMLAordDI3ID0gLTEuMzEyODEyOTk4MjI2MTQwODQ4NjE4Njg4MTc5NTE3ODg1NzllLTA2TCwKK3QyOCA9ICA4LjYwODQ0NDMyMjY3Mzk5NjU1MDU1NTc0NjQyMDUyMzcwMjIzZS0wN0wsCit0MjkgPSAtNS42NDUzNTQ4NjQzMjM5NzQxMzI3MzI0ODM2MzU1MDUzNjM3NGUtMDdMLAordDMwID0gIDMuOTkzNTc3ODM2NzYyNzU2NjA5MzQ5MDMxMzk1OTI3Mjc3MzdlLTA3TCwKK3QzMSA9IC0yLjk1ODQ5MDI5MTkzNDMzMTIxNzk1NDk1MjE1ODY5MzExNjEwZS0wN0wsCit0MzIgPSAgMS4zNzc5MDE0NDQzNTA3MzEyNDk3NjY5NjI1MDgwNDk0MDM4NGUtMDdMOworLyoKKyAqIERvbWFpbiB5IGluIFstMC4xLCAwLjIzMl0sIHJhbmdlIH5bLTEuNDA0NmUtMzcsIDEuNDE4MWUtMzddOgorICogfChsZ2FtbWEoMSArIHkpICsgMC41ICogeSkgLyB5IC0gdSh5KSAvIHYoeSl8IDwgMioqLTEyMi44CisgKi8KK3N0YXRpYyBjb25zdCBsb25nIGRvdWJsZQordTAgID0gLTcuNzIxNTY2NDkwMTUzMjg2MDYwNjUxMjA5MDA4MjQwMjQzMTFlLTAyTCwKK3UxICA9ICA0LjI0MDgyNzcyMjcxOTM4MTY3NDMwOTgzMTEzMjQyNDgyNjU2ZS0wMUwsCit1MiAgPSAgMi45NjE5NDAwMzQ4MTQ1NzEwMTA1ODMyMTk3NzQxMzMzMjE3MWUrMDBMLAordTMgID0gIDYuNDk1MDMyNjc3MTEyNTgwNDM5OTc3OTA5ODMwNzE1NDM3MTBlKzAwTCwKK3U0ICA9ICA3LjQwMDkwMDUxMjg4MTUwMTc3MTUyODM1Njk4OTQ4NjQ0NDgzZSswMEwsCit1NSAgPSAgNC45NDY5ODAzNjI5Njc1NjA0NDYxMDgwNTkwMDM0MDcyMzQ2NGUrMDBMLAordTYgID0gIDIuMDAxOTQyMjQ2MTA3OTYyOTQ3NjI0Njk1NTA2ODQ5NDc3NjhlKzAwTCwKK3U3ICA9ICA0LjgyMDczMDg3NzUwNjA4ODk1OTk2OTE1MDUxNTY4ODM0OTQ5ZS0wMUwsCit1OCAgPSAgNi40NjY5NDA1MjI4MDUwNjU2ODE5MjMzMzg0ODQzNzU4NTQyN2UtMDJMLAordTkgID0gIDQuMTc2ODU1MjY3NTUxMDAyNTkzMTY2MjUzNDg5MzMxMDg4MTBlLTAzTCwKK3UxMCA9ICA5LjA2MzYxMDAzNTUwMzE0MzI3MTQ0MTE5MzA3ODEwMDUzNDEwZS0wNUwsCit2MSAgPSAgNS4xNTkzNzA5ODU5Mjg4NzI3NTk5NDMyMDQ5Njk5OTk1MTk0N2UrMDBMLAordjIgID0gIDEuMTQwNjg0MTg3NjYyNTE0ODY3Nzc2MDQ0MDMzMDQ3MTc1NThlKzAxTCwKK3YzICA9ICAxLjQxMTY0ODM5NDM3NTI0NzQ0MDU1NzIzODcxODM5NzQ4NDg5ZSswMUwsCit2NCAgPSAgMS4wNzE3MDcwMjY1NjE3OTU4MjgwNTc5MTA2MzI3Nzk2MDUzMmUrMDFMLAordjUgID0gIDUuMTQ0NDg2OTQxNzkwNDc4Nzk5MTUwNDI5OTg0NTM2MzI0MzRlKzAwTCwKK3Y2ICA9ICAxLjU1MjEwMDg4MDk0NTg1NTQwNjM3NDkzODI2NDMxMTcwMjg5ZSswMEwsCit2NyAgPSAgMi44Mjk3NTczMjg0OTQyNDU2MjcxOTg5MzY1NzQxNjM2NTY3M2UtMDFMLAordjggID0gIDIuODY0MjQ2MjI3NTQ3NTMxOTgwMTA1MjU3ODYwMDU0NDM1MzllLTAyTCwKK3Y5ICA9ICAxLjM1MzY0MjUzNTcwNDAzNzcxMDA1OTIyNDQxNDQyNjg4OTc4ZS0wM0wsCit2MTAgPSAgMS45MTUxNDE3MzcwMjM5ODM3NTM0NjY1ODk0Mzc0OTU4MDY2NmUtMDVMLAordjExID0gLTMuMjUzNjQ2ODY4OTAyNDIzMjc5NDQ1ODQ2OTE0NjYwMzQyNjhlLTA4TDsKKy8qCisgKiBEb21haW4geCBpbiAoMiwgM10sIHJhbmdlIH5bLTEuMzM0MWUtMzYsIDEuMzUzNmUtMzZdOgorICogfChsZ2FtbWEoeSsyKSAtIDAuNSAqIHkpIC8geSAtIHMoeSkvcih5KXwgPCAyKiotMTIwLjEKKyAqIHdpdGggeSA9IHggLSAyLgorICovCitzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKK3MwICA9IC03LjcyMTU2NjQ5MDE1MzI4NjA2MDY1MTIwOTAwODI0MDI0Mjk3ZS0wMkwsCitzMSAgPSAgMS4yMzIyMTY4Nzg1MDkxNjQ0ODkwMzkxNDE3MDgwNTg1MjI1M2UtMDFMLAorczIgID0gIDUuNDM2NzMxODg2OTk5MzcyMzk4MDgyNTUzNzgyOTM4MjAwMjBlLTAxTCwKK3MzICA9ICA2LjMxOTk4MTM3MTE5MDA1MjMzMzgzNjY2NzkxMTc2MzAxODAwZS0wMUwsCitzNCAgPSAgMy43NTg4NTM0MDE3OTQ3OTg1MDk5MzgxMTUwMTU5NjIxMzc2M2UtMDFMLAorczUgID0gIDEuMzE1NzI5MDg3NDMyNzUwNTI2MjM0MTAxOTUwMTEyNjE1NzVlLTAxTCwKK3M2ICA9ICAyLjgyNTI4NDUzMjk5MTM4Njg1NTA3MTg2Mjg3MTQ5Njk5NzQ5ZS0wMkwsCitzNyAgPSAgMy43MDI2MjAyMTU1MDM0MDgxNzg2NzY4ODcxNDg4MDc5NzAxOWUtMDNMLAorczggID0gIDIuODMzNzQwMDAzMTIzNzExOTk2MjU3NzQxMjkyOTA5NzM2NDhlLTA0TCwKK3M5ICA9ICAxLjE1MDkxODMwMjM5MTQ4MjkwNzU4ODgzNTA1NTgyMzQzNjkxZS0wNUwsCitzMTAgPSAgMi4wNDIwMzQ3NDI4MTQ5Mzk3MTMyNjUwNjM4NDY0NjY5MjQ0NmUtMDdMLAorczExID0gIDkuNzk1NDQxOTgwNzg5OTIwNTg1NDg2MDc0MDc2MzU2NDU3NjNlLTEwTCwKK3IxICA9ICAyLjU4MDM3NDY2NjU1NjA1Mjg1OTM3MTEyODMyMDM5NTM3NDkyZSswMEwsCityMiAgPSAgMi44NjI4OTQxMzM5Mjc3NjM5OTI2MjUxMzg0OTkxMTUzMTE4MGUrMDBMLAorcjMgID0gIDEuNzg2OTEwNDQ3MzUyNjc0OTc0NTI4NDc4Mjk1Nzk1MTQzNjdlKzAwTCwKK3I0ICA9ICA2Ljg5NDAwMzgxNDQ2NzI1MzQyODQ2ODU0MjE1NjAwMDA4MDU1ZS0wMUwsCityNSAgPSAgMS43MDEzNTg2NTQ2MjU2Nzk1NTg2NzEzNDE5NzU5NTM2NTM0M2UtMDFMLAorcjYgID0gIDIuNjg3OTQ4MTYxODM5NjQ0MjAzNzU0OTg5ODYxNTI3NjY3NjNlLTAyTCwKK3I3ICA9ICAyLjY0NjE3MjM0MjQ0ODYxODMyODcwMDg4ODkzMzMyMDA2Njc5ZS0wM0wsCityOCAgPSAgMS41Mjg4MTc2MTIzOTE4MDgwMDY0MDA2ODEyODY4MTcyNTcwMmUtMDRMLAorcjkgID0gIDQuNjMyNjQ4MTM3NjIyOTYwMjk4MjQ4NTEzNTEyNTc2Mzg1NThlLTA2TCwKK3IxMCA9ICA1Ljg5NDYxNTE5MTQ2OTU3MzQzMDgzODQ4OTY3MzMzNjcxMTQyZS0wOEwsCityMTEgPSAgMS43OTAyNzY3ODE3NjU4MjUyNzc5ODMyNzQ0MTYzNjU1Mjk2OGUtMTBMOworLyoKKyAqIERvbWFpbiB6IGluIFs4LCAweDFwNzBdLCByYW5nZSB+Wy05LjgyMTRlLTM1LCA5LjgyMTRlLTM1XToKKyAqIHxsZ2FtbWEoeCkgLSAoeCAtIDAuNSkgKiAobG9nKHgpIC0gMSkgLSB3KDEveCl8IDwgMioqLTExMy4wCisgKi8KK3N0YXRpYyBjb25zdCBsb25nIGRvdWJsZQordzAgID0gIDQuMTg5Mzg1MzMyMDQ2NzI3NDE3ODAzMjk3MzY0MDU2MTc3MzhlLTAxTCwKK3cxICA9ICA4LjMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMyODUyMDI2ZS0wMkwsCit3MiAgPSAtMi43Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcyNzgxMDEyMzUyOGUtMDNMLAordzMgID0gIDcuOTM2NTA3OTM2NTA3OTM2NTA3OTE3MDg5Mzk0OTM5MDczODBlLTA0TCwKK3c0ICA9IC01Ljk1MjM4MDk1MjM4MDk1MjM0MzkwNDUwMDA0NDQ0MzcwOTU5ZS0wNEwsCit3NSAgPSAgOC40MTc1MDg0MTc1MDgzNzYzMzg4NzgxNzY1ODg0ODg0NTY5NWUtMDRMLAordzYgID0gLTEuOTE3NTI2OTE3NTIzOTY4NDk5NDMxNzIzMzczNDcyNTk3NDNlLTAzTCwKK3c3ICA9ICA2LjQxMDI1NjQwODgwMzMzMDY5NDI5MTA2NTQxNDU5MDE1NTU3ZS0wM0wsCit3OCAgPSAtMi45NTUwNjUzMDgwMTczMjEzMzQzNzk5MDQzMzA4MDMyNzA3NGUtMDJMLAordzkgID0gIDEuNzk2NDQyMzczMjg0NDQxMDE1OTY3NjY1ODY5Nzk1NzY5MjdlLTAxTCwKK3cxMCA9IC0xLjM5MjQwNTM5MTA4MzY3NjQxOTIwMTcyNjQ5MjU5NzM2Mzk0ZSswMEwsCit3MTEgPSAgMS4zMzk4NzcwMTQ3OTAwNzIzMzMyNTI4ODg1Nzc1ODY0MTc2MWUrMDFMLAordzEyID0gLTEuNTYzNjM1OTY0MzEwODQyNzk3ODA5NjY1OTAxMTYwMDYyNTVlKzAyTCwKK3cxMyA9ICAyLjE0ODMwOTc4MDQ0NDEwMjY3MjAxMTcyMzMyOTUyMDQwNzc3ZSswM0wsCit3MTQgPSAtMy4yODYzNjA2NzQ3NDIyNzM3ODM1Mjc2MTUxNjU4OTA5MjMzNGUrMDRMLAordzE1ID0gIDUuMDYyMDEyNTc3NDc4NjUxMzg0MzI2NjM1NzQyNTE0NjI0ODVlKzA1TCwKK3cxNiA9IC02Ljc5NzIwMTIzMzUyMDIzNjM2NzA2MjQ3NTk5NzI4MDQ4MzQ0ZSswNkwsCit3MTcgPSAgNi41NzU1NjYwMTcwNTQ3MjEwNjk4OTQ5NzI4OTQ2NTk0OTI1NWUrMDdMLAordzE4ID0gLTMuMjYyMjkwNTgxNDExODE3ODM1MzQyNTc2MzIzODk0MTU1ODBlKzA4TDsKKworc3RhdGljIGxvbmcgZG91YmxlCitzaW5fcGlsKGxvbmcgZG91YmxlIHgpCit7CisJdm9sYXRpbGUgbG9uZyBkb3VibGUgdno7CisJbG9uZyBkb3VibGUgeSx6OworCXVpbnQ2NF90IGx4LCBuOworCXVpbnQxNl90IGh4OworCisJeSA9IC14OworCisJdnogPSB5KzB4MS5wMTEyOworCXogPSB2ei0weDEucDExMjsKKwlpZiAoeiA9PSB5KQorCSAgICByZXR1cm4gemVybzsKKworCXZ6ID0geSsweDEucDExMDsKKwlFWFRSQUNUX0xEQkwxMjhfV09SRFMoaHgsbHgsbix2eik7CisJeiA9IHZ6LTB4MS5wMTEwOworCWlmICh6ID4geSkgeworCSAgICB6IC09IDAuMjU7CisJICAgIG4tLTsKKwl9CisJbiAmPSA3OworCXkgPSB5IC0geiArIG4gKiAwLjI1OworCisJc3dpdGNoIChuKSB7CisJICAgIGNhc2UgMDogICB5ID0gIF9fa2VybmVsX3NpbmwocGkqeSx6ZXJvLDApOyBicmVhazsKKwkgICAgY2FzZSAxOgorCSAgICBjYXNlIDI6ICAgeSA9ICBfX2tlcm5lbF9jb3NsKHBpKigwLjUteSksemVybyk7IGJyZWFrOworCSAgICBjYXNlIDM6CisJICAgIGNhc2UgNDogICB5ID0gIF9fa2VybmVsX3NpbmwocGkqKG9uZS15KSx6ZXJvLDApOyBicmVhazsKKwkgICAgY2FzZSA1OgorCSAgICBjYXNlIDY6ICAgeSA9IC1fX2tlcm5lbF9jb3NsKHBpKih5LTEuNSksemVybyk7IGJyZWFrOworCSAgICBkZWZhdWx0OiAgeSA9ICBfX2tlcm5lbF9zaW5sKHBpKih5LTIuMCksemVybywwKTsgYnJlYWs7CisJICAgIH0KKwlyZXR1cm4gLXk7Cit9CisKK2xvbmcgZG91YmxlCitsZ2FtbWFsX3IobG9uZyBkb3VibGUgeCwgaW50ICpzaWduZ2FtcCkKK3sKKwlsb25nIGRvdWJsZSBuYWRqLHAscDEscDIscDMscSxyLHQsdyx5LHo7CisJdWludDY0X3QgbGx4LGx4OworCWludCBpOworCXVpbnQxNl90IGh4LGl4OworCisJRVhUUkFDVF9MREJMMTI4X1dPUkRTKGh4LGx4LGxseCx4KTsKKworICAgIC8qIHB1cmdlICstSW5mIGFuZCBOYU5zICovCisJKnNpZ25nYW1wID0gMTsKKwlpeCA9IGh4JjB4N2ZmZjsKKwlpZihpeD09MHg3ZmZmKSByZXR1cm4geCp4OworCisgICAvKiBwdXJnZSArLTAgYW5kIHRpbnkgYXJndW1lbnRzICovCisJKnNpZ25nYW1wID0gMS0yKihoeD4+MTUpOworCWlmKGl4PDB4M2ZmZi0xMTYpIHsJCS8qIHx4fDwyKiotKHArMyksIHJldHVybiAtbG9nKHx4fCkgKi8KKwkgICAgaWYoKGl4fGx4fGxseCk9PTApCisJCXJldHVybiBvbmUvdnplcm87CisJICAgIHJldHVybiAtbG9nbChmYWJzbCh4KSk7CisJfQorCisgICAgLyogcHVyZ2UgbmVnYXRpdmUgaW50ZWdlcnMgYW5kIHN0YXJ0IGV2YWx1YXRpb24gZm9yIG90aGVyIHggPCAwICovCisJaWYoaHgmMHg4MDAwKSB7CisJICAgICpzaWduZ2FtcCA9IDE7CisJICAgIGlmKGl4Pj0weDNmZmYrMTEyKSAJCS8qIHx4fD49MioqKHAtMSksIG11c3QgYmUgLWludGVnZXIgKi8KKwkJcmV0dXJuIG9uZS92emVybzsKKwkgICAgdCA9IHNpbl9waWwoeCk7CisJICAgIGlmKHQ9PXplcm8pIHJldHVybiBvbmUvdnplcm87CisJICAgIG5hZGogPSBsb2dsKHBpL2ZhYnNsKHQqeCkpOworCSAgICBpZih0PHplcm8pICpzaWduZ2FtcCA9IC0xOworCSAgICB4ID0gLXg7CisJfQorCisgICAgLyogcHVyZ2UgMSBhbmQgMiAqLworCWlmKChpeD09MHgzZmZmIHx8IGl4PT0weDQwMDApICYmIChseHxsbHgpPT0wKSByID0gMDsKKyAgICAvKiBmb3IgeCA8IDIuMCAqLworCWVsc2UgaWYoaXg8MHg0MDAwKSB7CisJICAgIGlmKHg8PTguOTk5OTk2MTg1MzAyNzM0NGUtMDEpIHsKKwkJciA9IC1sb2dsKHgpOworCQlpZih4Pj03LjMxNTk5ODA3NzM5MjU3ODFlLTAxKSB7eSA9IDEteDsgaT0gMDt9CisJCWVsc2UgaWYoeD49Mi4zMTYzOTk4MTI2OTgzNjQzZS0wMSkge3k9IHgtKHRjLTEpOyBpPTE7fQorCSAgCWVsc2Uge3kgPSB4OyBpPTI7fQorCSAgICB9IGVsc2UgeworCQlyID0gMDsKKwkgICAgICAgIGlmKHg+PTEuNzMxNjMxMjc4OTkxNjk5MmUrMDApIHt5PTIteDtpPTA7fQorCSAgICAgICAgZWxzZSBpZih4Pj0xLjIzMTYzMjIzMjY2NjAxNTZlKzAwKSB7eT14LXRjO2k9MTt9CisJCWVsc2Uge3k9eC0xO2k9Mjt9CisJICAgIH0KKwkgICAgc3dpdGNoKGkpIHsKKwkgICAgICBjYXNlIDA6CisJCXogPSB5Knk7CisJCXAxID0gYTAreiooYTIreiooYTQreiooYTYreiooYTgreiooYTEwK3oqKGExMit6KihhMTQreiooYTE2KworCQkgICAgeiooYTE4K3oqKGEyMCt6KmEyMikpKSkpKSkpKSk7CisJCXAyID0geiooYTEreiooYTMreiooYTUreiooYTcreiooYTkreiooYTExK3oqKGExMyt6KihhMTUrCisJCSAgICB6KihhMTcreiooYTE5K3oqKGEyMSt6KmEyMykpKSkpKSkpKSkpOworCQlwICA9IHkqcDErcDI7CisJCXIgICs9IHAteS8yOyBicmVhazsKKwkgICAgICBjYXNlIDE6CisJCXAgPSB0MCt5KnQxK3R0K3kqeSoodDIreSoodDMreSoodDQreSoodDUreSoodDYreSoodDcreSoodDgrCisJCSAgICB5Kih0OSt5Kih0MTAreSoodDExK3kqKHQxMit5Kih0MTMreSoodDE0K3kqKHQxNSt5Kih0MTYrCisJCSAgICB5Kih0MTcreSoodDE4K3kqKHQxOSt5Kih0MjAreSoodDIxK3kqKHQyMit5Kih0MjMrCisJCSAgICB5Kih0MjQreSoodDI1K3kqKHQyNit5Kih0MjcreSoodDI4K3kqKHQyOSt5Kih0MzArCisJCSAgICB5Kih0MzEreSp0MzIpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSk7CisJCXIgKz0gdGYgKyBwOyBicmVhazsKKwkgICAgICBjYXNlIDI6CisJCXAxID0geSoodTAreSoodTEreSoodTIreSoodTMreSoodTQreSoodTUreSoodTYreSoodTcrCisJCSAgICB5Kih1OCt5Kih1OSt5KnUxMCkpKSkpKSkpKSk7CisJCXAyID0gb25lK3kqKHYxK3kqKHYyK3kqKHYzK3kqKHY0K3kqKHY1K3kqKHY2K3kqKHY3KworCQkgICAgeSoodjgreSoodjkreSoodjEwK3kqdjExKSkpKSkpKSkpKTsKKwkJciArPSBwMS9wMi15LzI7CisJICAgIH0KKwl9CisgICAgLyogeCA8IDguMCAqLworCWVsc2UgaWYoaXg8MHg0MDAyKSB7CisJICAgIGkgPSB4OworCSAgICB5ID0geC1pOworCSAgICBwID0geSooczAreSooczEreSooczIreSooczMreSooczQreSooczUreSooczYreSooczcreSooczgrCisJCXkqKHM5K3kqKHMxMCt5KnMxMSkpKSkpKSkpKSkpOworCSAgICBxID0gb25lK3kqKHIxK3kqKHIyK3kqKHIzK3kqKHI0K3kqKHI1K3kqKHI2K3kqKHI3K3kqKHI4KworCQl5KihyOSt5KihyMTAreSpyMTEpKSkpKSkpKSkpOworCSAgICByID0geS8yK3AvcTsKKwkgICAgeiA9IDE7CS8qIGxnYW1tYSgxK3MpID0gbG9nKHMpICsgbGdhbW1hKHMpICovCisJICAgIHN3aXRjaChpKSB7CisJICAgIGNhc2UgNzogeiAqPSAoeSs2KTsJCS8qIEZBTExUSFJVICovCisJICAgIGNhc2UgNjogeiAqPSAoeSs1KTsJCS8qIEZBTExUSFJVICovCisJICAgIGNhc2UgNTogeiAqPSAoeSs0KTsJCS8qIEZBTExUSFJVICovCisJICAgIGNhc2UgNDogeiAqPSAoeSszKTsJCS8qIEZBTExUSFJVICovCisJICAgIGNhc2UgMzogeiAqPSAoeSsyKTsJCS8qIEZBTExUSFJVICovCisJCSAgICByICs9IGxvZ2woeik7IGJyZWFrOworCSAgICB9CisgICAgLyogOC4wIDw9IHggPCAyKioocCszKSAqLworCX0gZWxzZSBpZiAoaXg8MHgzZmZmKzExNikgeworCSAgICB0ID0gbG9nbCh4KTsKKwkgICAgeiA9IG9uZS94OworCSAgICB5ID0geip6OworCSAgICB3ID0gdzAreioodzEreSoodzIreSoodzMreSoodzQreSoodzUreSoodzYreSoodzcreSoodzgrCisJCXkqKHc5K3kqKHcxMCt5Kih3MTEreSoodzEyK3kqKHcxMyt5Kih3MTQreSoodzE1K3kqKHcxNisKKwkJeSoodzE3K3kqdzE4KSkpKSkpKSkpKSkpKSkpKSk7CisJICAgIHIgPSAoeC1oYWxmKSoodC1vbmUpK3c7CisgICAgLyogMioqKHArMykgPD0geCA8PSBpbmYgKi8KKwl9IGVsc2UgCisJICAgIHIgPSAgeCoobG9nbCh4KS0xKTsKKwlpZihoeCYweDgwMDApIHIgPSBuYWRqIC0gcjsKKwlyZXR1cm4gcjsKK30KZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9lX3JlbV9waW8ybC5oIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2VfcmVtX3BpbzJsLmgKaW5kZXggMDc4ZDBjMy4uNWQ3OGM0ZCAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2VfcmVtX3BpbzJsLmgKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2VfcmVtX3BpbzJsLmgKQEAgLTYsNyArNiw3IEBACiAgKgogICogRGV2ZWxvcGVkIGF0IFN1blNvZnQsIGEgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBidXNpbmVzcy4KICAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMKLSAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlCisgKiBzb2Z0d2FyZSBpcyBmcmVlbHkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGlzIG5vdGljZSAKICAqIGlzIHByZXNlcnZlZC4KICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICAqCkBAIC0xNyw4ICsxNyw4IEBACiBfX0ZCU0RJRCgiJEZyZWVCU0QkIik7CiAKIC8qIGxkMTI4IHZlcnNpb24gb2YgX19pZWVlNzU0X3JlbV9waW8ybCh4LHkpCi0gKgotICogcmV0dXJuIHRoZSByZW1haW5kZXIgb2YgeCByZW0gcGkvMiBpbiB5WzBdK3lbMV0KKyAqIAorICogcmV0dXJuIHRoZSByZW1haW5kZXIgb2YgeCByZW0gcGkvMiBpbiB5WzBdK3lbMV0gCiAgKiB1c2UgX19rZXJuZWxfcmVtX3BpbzIoKQogICovCiAKQEAgLTg4LDI0ICs4OCwyNCBAQAogCQl1bmlvbiBJRUVFbDJiaXRzIHUyOwogCSAgICAgICAgaW50IGV4MTsKIAkgICAgICAgIGogID0gZXg7Ci0JICAgICAgICB5WzBdID0gci13OworCSAgICAgICAgeVswXSA9IHItdzsgCiAJCXUyLmUgPSB5WzBdOwogCQlleDEgPSB1Mi54Yml0cy5leHBzaWduICYgMHg3ZmZmOwogCSAgICAgICAgaSA9IGotZXgxOwogCSAgICAgICAgaWYoaT41MSkgeyAgLyogMm5kIGl0ZXJhdGlvbiBuZWVkZWQsIGdvb2QgdG8gMjQ4ICovCiAJCSAgICB0ICA9IHI7Ci0JCSAgICB3ICA9IGZuKnBpbzJfMjsKKwkJICAgIHcgID0gZm4qcGlvMl8yOwkKIAkJICAgIHIgID0gdC13OwotCQkgICAgdyAgPSBmbipwaW8yXzJ0LSgodC1yKS13KTsKKwkJICAgIHcgID0gZm4qcGlvMl8ydC0oKHQtciktdyk7CQogCQkgICAgeVswXSA9IHItdzsKIAkJICAgIHUyLmUgPSB5WzBdOwogCQkgICAgZXgxID0gdTIueGJpdHMuZXhwc2lnbiAmIDB4N2ZmZjsKIAkJICAgIGkgPSBqLWV4MTsKIAkJICAgIGlmKGk+MTE5KSB7CS8qIDNyZCBpdGVyYXRpb24gbmVlZCwgMzE2IGJpdHMgYWNjICovCiAJCSAgICAJdCAgPSByOwkvKiB3aWxsIGNvdmVyIGFsbCBwb3NzaWJsZSBjYXNlcyAqLwotCQkgICAgCXcgID0gZm4qcGlvMl8zOworCQkgICAgCXcgID0gZm4qcGlvMl8zOwkKIAkJICAgIAlyICA9IHQtdzsKLQkJICAgIAl3ICA9IGZuKnBpbzJfM3QtKCh0LXIpLXcpOworCQkgICAgCXcgID0gZm4qcGlvMl8zdC0oKHQtciktdyk7CQogCQkgICAgCXlbMF0gPSByLXc7CiAJCSAgICB9CiAJCX0KQEAgLTExMyw3ICsxMTMsNyBAQAogCSAgICB5WzFdID0gKHIteVswXSktdzsKIAkgICAgcmV0dXJuIG47CiAJfQotICAgIC8qCisgICAgLyogCiAgICAgICogYWxsIG90aGVyIChsYXJnZSkgYXJndW1lbnRzCiAgICAgICovCiAJaWYoZXg9PTB4N2ZmZikgewkJLyogeCBpcyBpbmYgb3IgTmFOICovCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvaW52dHJpZy5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2ludnRyaWcuYwppbmRleCBkZjY3ZDE2Li40Y2VjYThhIDEwMDY0NAotLS0gYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvaW52dHJpZy5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9pbnZ0cmlnLmMKQEAgLTU4LDggKzU4LDggQEAKICAqLwogY29uc3QgbG9uZyBkb3VibGUgYXRhbmhpW10gPSB7CiAJIDQuNjM2NDc2MDkwMDA4MDYxMTYyMTQyNTYyMzE0NjEyMTQzOTdlLTAxTCwKLQkgNy44NTM5ODE2MzM5NzQ0ODMwOTYxNTY2MDg0NTgxOTg3NTY5OWUtMDFMLAotCSA5LjgyNzkzNzIzMjQ3MzI5MDY3OTg1NzEwNjExMDE0NjY2MDM4ZS0wMUwsCisJIDcuODUzOTgxNjMzOTc0NDgzMDk2MTU2NjA4NDU4MTk4NzU2OTllLTAxTCwgICAgICAgCisJIDkuODI3OTM3MjMyNDczMjkwNjc5ODU3MTA2MTEwMTQ2NjYwMzhlLTAxTCwgICAgICAgCiAJIDEuNTcwNzk2MzI2Nzk0ODk2NjE5MjMxMzIxNjkxNjM5NzUxNDBlKzAwTCwKIH07CiAKZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9rX2Nvc2wuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9rX2Nvc2wuYwppbmRleCA1ZjRhYTM3Li5mZTU3NzczIDEwMDY0NAotLS0gYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgva19jb3NsLmMKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2tfY29zbC5jCkBAIC02LDcgKzYsNyBAQAogICoKICAqIERldmVsb3BlZCBhdCBTdW5Tb2Z0LCBhIFN1biBNaWNyb3N5c3RlbXMsIEluYy4gYnVzaW5lc3MuCiAgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzCi0gKiBzb2Z0d2FyZSBpcyBmcmVlbHkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGlzIG5vdGljZQorICogc29mdHdhcmUgaXMgZnJlZWx5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhpcyBub3RpY2UgCiAgKiBpcyBwcmVzZXJ2ZWQuCiAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgKi8KZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9rX2V4cGwuaCBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9rX2V4cGwuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNTY2OGZkCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2tfZXhwbC5oCkBAIC0wLDAgKzEsMzI4IEBACisvKiBmcm9tOiBGcmVlQlNEOiBoZWFkL2xpYi9tc3VuL2xkMTI4L3NfZXhwbC5jIDI1MTM0NSAyMDEzLTA2LTAzIDIwOjA5OjIyWiBrYXJnbCAqLworCisvKi0KKyAqIENvcHlyaWdodCAoYykgMjAwOS0yMDEzIFN0ZXZlbiBHLiBLYXJnbAorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UgdW5tb2RpZmllZCwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMsIGFuZCB0aGUgZm9sbG93aW5nCisgKiAgICBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IKKyAqIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMKKyAqIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuCisgKiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQKKyAqIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICoKKyAqIE9wdGltaXplZCBieSBCcnVjZSBELiBFdmFucy4KKyAqLworCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CitfX0ZCU0RJRCgiJEZyZWVCU0QkIik7CisKKy8qCisgKiBsZDEyOCB2ZXJzaW9uIG9mIGtfZXhwbC5oLiAgU2VlIC4uL2xkODAvc19leHBsLmMgZm9yIG1vc3QgY29tbWVudHMuCisgKgorICogU2VlIC4uL3NyYy9lX2V4cC5jIGFuZCAuLi9zcmMva19leHAuaCBmb3IgcHJlY2lzaW9uLWluZGVwZW5kZW50IGNvbW1lbnRzCisgKiBhYm91dCB0aGUgc2Vjb25kYXJ5IGtlcm5lbHMuCisgKi8KKworI2RlZmluZQlJTlRFUlZBTFMJMTI4CisjZGVmaW5lCUxPRzJfSU5URVJWQUxTCTcKKyNkZWZpbmUJQklBUwkoTERCTF9NQVhfRVhQIC0gMSkKKworc3RhdGljIGNvbnN0IGRvdWJsZQorLyoKKyAqIGxuMi9JTlRFUlZBTFMgPSBMMStMMiAoaGkrbG8gZGVjb21wb3NpdGlvbiBmb3IgbXVsdGlwbGljYXRpb24pLiAgTDEgbXVzdAorICogaGF2ZSBhdCBsZWFzdCAyMiAoPSBsb2cyKHxMREJMX01JTl9FWFAtZXh0cmFzfCkgKyBsb2cyKElOVEVSVkFMUykpIGxvd2VzdAorICogYml0cyB6ZXJvIHNvIHRoYXQgbXVsdGlwbGljYXRpb24gb2YgaXQgYnkgbiBpcyBleGFjdC4KKyAqLworSU5WX0wgPSAxLjg0NjY0OTY1MjMzNzg3MzFlKzIsCQkvKiAgMHgxNzE1NDc2NTJiODJmZS4wcC00NSAqLworTDIgPSAtMS4wMjUzNjcwNjM4ODk0NzMxZS0yOTsJCS8qIC0weDEuOWZmMDM0MjU0MmZjM3AtOTcgKi8KK3N0YXRpYyBjb25zdCBsb25nIGRvdWJsZQorLyogMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjgwMDAwMDBwLTggKi8KK0wxID0gIDUuNDE1MjEyMzQ4MTI0NTcyNzI5ODIyMTI1OTU5MTQ1Njc1MDhlLTNMOworCisvKgorICogWFhYIHZhbHVlcyBpbiBoZXggaW4gY29tbWVudHMgaGF2ZSBiZWVuIGxvc3QgKG9yIHdlcmUgbmV2ZXIgcHJlc2VudCkKKyAqIGZyb20gaGVyZS4KKyAqLworc3RhdGljIGNvbnN0IGxvbmcgZG91YmxlCisvKgorICogRG9tYWluIFstMC4wMDI3MDgsIDAuMDAyNzA4XSwgcmFuZ2UgflstMi40MDIxZS0zOCwgMi40MjM0ZS0zOF06CisgKiB8ZXhwKHgpIC0gcCh4KXwgPCAyKiotMTI0LjkKKyAqICgwLjAwMjcwOCBpcyBsbjIvKDIqSU5URVJWQUxTKSByb3VuZGVkIHVwIGEgbGl0dGxlKS4KKyAqCisgKiBYWFggdGhlIGNvZWZmcyBhcmVuJ3QgdmVyeSBjYXJlZnVsbHkgcm91bmRlZCwgYW5kIEkgZ2V0IDMuNiBtb3JlIGJpdHMuCisgKi8KK0EyICA9ICAwLjUsCitBMyAgPSAgMS42NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY1MTA4NTUwMGUtMUwsCitBNCAgPSAgNC4xNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjQyNTg4NTMyMGUtMkwsCitBNSAgPSAgOC4zMzMzMzMzMzMzMzMzMzMzMzMzNDUyMjg3NzE2MDE3NTg0MmUtM0wsCitBNiAgPSAgMS4zODg4ODg4ODg4ODg4ODg4ODg4OTk3MTEzOTc1MTU5NjgzNmUtM0w7CisKK3N0YXRpYyBjb25zdCBkb3VibGUKK0E3ICA9ICAxLjk4NDEyNjk4NDEyNjk0NzBlLTQsCQkvKiAgMHgxLmEwMWEwMWEwMTlmOTFwLTEzICovCitBOCAgPSAgMi40ODAxNTg3MzAxNTg1Mjg2ZS01LAkJLyogIDB4MS43MWRlM2VjNzVhOTY3cC0xOSAqLworQTkgID0gIDIuNzU1NzMyNDI3NzQxMTIzNWUtNiwJCS8qICAweDEuNzFkZTNlYzc1YTk2N3AtMTkgKi8KK0ExMCA9ICAyLjc1NTczMzM3MjIzNzUwNjllLTc7CQkvKiAgMHgxLjI3ZTUwNWFiNTYyNTlwLTIyICovCisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgeworCS8qCisJICogaGkgbXVzdCBiZSByb3VuZGVkIHRvIGF0IG1vc3QgMTA2IGJpdHMgc28gdGhhdCBtdWx0aXBsaWNhdGlvbgorCSAqIGJ5IHIxIGluIGV4cG0xbCgpIGlzIGV4YWN0LCBidXQgaXQgaXMgcm91bmRlZCB0byA4OCBiaXRzIGR1ZSB0bworCSAqIGhpc3RvcmljYWwgYWNjaWRlbnRzLgorCSAqCisJICogWFhYIGl0IGlzIHdhc3RlZnVsIHRvIHVzZSBsb25nIGRvdWJsZSBmb3IgYm90aCBoaSBhbmQgbG8uICBsZDEyOAorCSAqIGV4cDJsKCkgdXNlcyBvbmx5IGZsb2F0IGZvciBsbyAoaW4gYSB2ZXJ5IGRpZmZlcmVudGx5IG9yZ2FuaXplZAorCSAqIHRhYmxlOyBsZDgwIGV4cDJsKCkgaXMgZGlmZmVyZW50IGFnYWluLiAgSXQgdXNlcyAyIGRvdWJsZXMgaW4gYQorCSAqIHRhYmxlIG9yZ2FuaXplZCBsaWtlIHRoaXMgb25lLiAgMSBkb3VibGUgYW5kIDEgZmxvYXQgd291bGQKKwkgKiBzdWZmaWNlKS4gIFRoZXJlIGFyZSBkaWZmZXJlbnQgcGFja2luZy9sb2NhbGl0eS9hbGlnbm1lbnQvY2FjaGluZworCSAqIHByb2JsZW1zIHdpdGggdGhlc2UgbWV0aG9kcy4KKwkgKgorCSAqIFhYWCBDJ3MgYmFkICVhIGZvcm1hdCBtYWtlcyB0aGUgYml0cyB1bnJlYWRhYmxlLiAgVGhleSBoYXBwZW4KKwkgKiB0byBhbGwgbGluZSB1cCBmb3IgdGhlIGhpIHZhbHVlcyAxIGJlZm9yZSB0aGUgcG9pbnQgYW5kIDg4CisJICogaW4gMjIgbnliYmxlcywgYnV0IGZvciB0aGUgbG93IHZhbHVlcyB0aGUgbnliYmxlcyBhcmUgc2hpZnRlZAorCSAqIHJhbmRvbWx5LgorCSAqLworCWxvbmcgZG91YmxlCWhpOworCWxvbmcgZG91YmxlCWxvOworfSB0YmxbSU5URVJWQUxTXSA9IHsKKwkweDFwMEwsIDB4MHAwTCwKKwkweDEuMDE2M2RhOWZiMzMzNTZkODRhNjZhZXAwTCwgMHgzLjM2ZGNkZmE0MDAzZWMwNGMzNjBiZTI0MDQwNzhwLTkyTCwKKwkweDEuMDJjOWEzZTc3ODA2MGVlNmY3Y2FjYXAwTCwgMHg0LmY3YTI5YmRlOTNkNzBhMmNhYmM1Y2I4OWJhMTBwLTkyTCwKKwkweDEuMDQzMTVlODZlN2Y4NGJkNzM4ZjlhMnAwTCwgMHhkLmE0N2U2ZWQwNDBiYjRiZmMwNWFmNjQ1NWU5YjhwLTk2TCwKKwkweDEuMDU5YjBkMzE1ODU3NDNhZTdjNTQ4ZXAwTCwgMHhiLjY4Y2E0MTdmZTUzZTM0OTVmN2RmNGJhZjg0YTBwLTkyTCwKKwkweDEuMDcwNmIyOWRkZjZkZGM2ZGM0MDNhOHAwTCwgMHgxLmQ4N2IyN2VkMDdjYjhiMDkyYWM3NWUzMTE3NTNwLTg4TCwKKwkweDEuMDg3NDUxODc1OWJjODA4YzM1ZjI1Y3AwTCwgMHgxLjk0MjdmYTJiMDQxYjJkNjgyOWQ4OTkzYTBkMDFwLTg4TCwKKwkweDEuMDllM2VjYWM2ZjM4MzQ1MjFlMDYwY3AwTCwgMHg1Ljg0ZDZiNzRiYTJlMDIzZGE3MzBlN2ZjY2I3NThwLTkyTCwKKwkweDEuMGI1NTg2Y2Y5ODkwZjYyOThiOTJiNnAwTCwgMHgxLjE4NDJhOTgzNjQyOTE0MDhiM2NlYjBhMmEyYmJwLTg4TCwKKwkweDEuMGNjOTIyYjcyNDdmNzQwN2I3MDViOHAwTCwgMHg5LjNkYzVlOGFhYzU2NGU2ZmUyZWYxZDQzMWZkOThwLTkyTCwKKwkweDEuMGUzZWMzMmQzZDFhMjAyMDc0MmU0ZXAwTCwgMHgxLjhhZjZhNTUyYWM0YjM1OGIxMTI5ZTlmOTY2YTRwLTg4TCwKKwkweDEuMGZiNjZhZmZlZDMxYWYyMzIwOTFkY3AwTCwgMHgxLjhhMTQyNjUxNGUwYjYyN2JkYTY5NGE0MDBhMjdwLTg4TCwKKwkweDEuMTEzMDFkMDEyNWI1MGE0ZWJiZjFhZXAwTCwgMHhkLjkzMThjZWFjNWNjNDdhYjE2NmVlNTc0MjcxNzhwLTkyTCwKKwkweDEuMTJhYmRjMDZjMzFjYmZiOTJiYWQzMnAwTCwgMHg0LmQ2OGUyZjcyNzBiZGY3Y2VkZjk0ZWIxY2I4MThwLTkyTCwKKwkweDEuMTQyOWFhZWE5MmRkZmIzNDEwMTk0MnAwTCwgMHgxLmIyNTg2ZDAxODQ0YjM4OWJlYTdhZWRkMjIxZDRwLTg4TCwKKwkweDEuMTVhOThjOGE1OGU1MTI0ODBkNTczY3AwTCwgMHgxLmQ1NjEzYmY5MmEyYjYxOGVlMzFiMzc2YzI2ODlwLTg4TCwKKwkweDEuMTcyYjgzYzdkNTE3YWRjZGY3YzhjNHAwTCwgMHgxLjBlYjE0YTc5MjAzNTUwOWZmN2Q3NTg2OTNmMjRwLTg4TCwKKwkweDEuMThhZjkzODhjOGRlOWJiYmY3MGI5YXAwTCwgMHgzLmMyNTA1Yzk3YzAxMDJlNWYxMjExOTQxZDI4NDBwLTkyTCwKKwkweDEuMWEzNWJlYjZmY2I3NTNjYjY5OGY2OHAwTCwgMHgxLjJkMWM4MzVhNmMzMDcyNGQ1Y2ZhZTMxYjg0ZTVwLTg4TCwKKwkweDEuMWJiZTA4NDA0NWNkMzlhYjFlNzJiNHAwTCwgMHg0LjI3ZTM1ZjlhY2I1N2U0NzM5MTU1MTlhMWI0NDhwLTkyTCwKKwkweDEuMWQ0ODczMTY4YjlhYTc4MDViODAyOHAwTCwgMHg5LjkwZjA3YTk4YjQyMjA2ZTQ2MTY2Y2YwNTFkNzBwLTkyTCwKKwkweDEuMWVkNTAyMmZjZDkxY2I4ODE5ZmY2MHAwTCwgMHgxLjEyMWQxZTUwNGQzNmM0NzQ3NGM5YjdkZTYwNjdwLTg4TCwKKwkweDEuMjA2M2I4ODYyOGNkNjNiOGVlYjAyOHAwTCwgMHgxLjUwOTI5ZDBmYzQ4N2QyMWMyYjg0MDA0MjY0ZGVwLTg4TCwKKwkweDEuMjFmNDk5MTdkZGM5NjI1NTJmZDI5MnAwTCwgMHg5LjRiZGI0YjYxZWE2MjQ3N2NhYTFkY2U4MjNiYTBwLTkyTCwKKwkweDEuMjM4N2E2ZTc1NjIzODY2YzFmYWRiMHAwTCwgMHgxLmMxNWNiNTkzYjAzMjg1NjY5MDJkZjY5ZTRkZTJwLTg4TCwKKwkweDEuMjUxY2U0ZmIyYTYzZjM1ODJhYjdkZXAwTCwgMHg5LmU5NDgxMWE5YzhhZmRjZjc5NjkzNGJjNjUyZDBwLTkyTCwKKwkweDEuMjZiNDU2NWUyN2NkZDI1N2E2NzMyOHAwTCwgMHgxLmQzYjI0OWRjZTRlOTE4NmRkZDVmZjQ0ZTZiMDhwLTkyTCwKKwkweDEuMjg0ZGZlMWY1NjM4MDk2Y2YxNWNmMHAwTCwgMHgzLmNhMDk2N2ZkYWEyZTUyZDdjODEwNmYyZTI2MmNwLTkyTCwKKwkweDEuMjllOWRmNTFmZGVlMTJjMjVkMTVmNHAwTCwgMHgxLmEyNGFhM2JjYTg5MGFjMDhkMjAzZmVkODBhMDdwLTg4TCwKKwkweDEuMmI4N2ZkMGRhZDk4ZmZkZGVhNDY1MnAwTCwgMHgxLjhmY2FiODg0NDJmZGMzY2I2ZGU0NTE5MTY1ZWRwLTg4TCwKKwkweDEuMmQyODVhNmU0MDMwYjQwMDkxZDUzNnAwTCwgMHhkLjA3NTM4NDU4OWMxY2QxYjNlNDAxOGE2YjEzNDhwLTkyTCwKKwkweDEuMmVjYWZhOTNlMmY1NjExY2EwZjQ1Y3AwTCwgMHgxLjUyMzgzM2FmNjExYmRjZGEyNTNjNTU0Y2YyNzhwLTg4TCwKKwkweDEuMzA2ZmUwYTMxYjcxNTJkZThkNWE0NnAwTCwgMHgzLjA1Yzg1ZWRlY2JjMjczNDM2MjlmNTAyZjFhZjJwLTkyTCwKKwkweDEuMzIxNzBmYzRjZDgzMTM1MzljZjFjMnAwTCwgMHgxLjAwOGY4NmRkZTMyMjBhZTE3YTAwNWI2NDEyYmVwLTg4TCwKKwkweDEuMzNjMDhiMjY0MTZmZjRjOWM4NjEwY3AwTCwgMHgxLjk2Njk2YmY5NWQxNTkzMDM5NTM5ZDk0ZDY2MmJwLTg4TCwKKwkweDEuMzU2YzU1ZjkyOWZmMGM5NDYyMzQ3NnAwTCwgMHgzLjczYWYzOGQ2ZDhkNmY5NTA2YzliYmM5M2NiYzBwLTkyTCwKKwkweDEuMzcxYTczNzNhYTljYWE3MTQ1NTAyZXAwTCwgMHgxLjQ1NDc5ODdlM2UxMjUxNmJmOWM2OTliZTQzMmZwLTg4TCwKKwkweDEuMzhjYWU2ZDA1ZDg2NTg1YTljYjBkOHAwTCwgMHgxLmJlZDBjODUzYmQzMGEwMjc5MDkzMWViMmU4ZjBwLTg4TCwKKwkweDEuM2E3ZGIzNGU1OWZmNmVhMWJjOTI5OHAwTCwgMHgxLmUwYTFkMzM2MTYzZmUyZjg1MmNlZWIxMzQwNjdwLTg4TCwKKwkweDEuM2MzMmRjMzEzYThlNDg0MDAxZjIyOHAwTCwgMHhiLjU4ZjM3NzVlMDZhYjY2MzUzMDAxZmFlOWZjYTBwLTkyTCwKKwkweDEuM2RlYTY0YzEyMzQyMjM1YjQxMjIzZXAwTCwgMHgxLjNkNzczZmJhMmNiODJiODI0NDI2N2M1NDQ0M2ZwLTkyTCwKKwkweDEuM2ZhNDUwNGFjODAxYmEwYmY3MDFhYXAwTCwgMHg0LjE4MzJmYjhjMWM4ZGJkZmYyYzQ5OTA5ZTZjNjBwLTkyTCwKKwkweDEuNDE2MGEyMWY3MmUyOWY4NDMyNWI4ZXAwTCwgMHgxLjNkYjYxZmIzNTJmMDU0MGU2YmEwNTYzNDQxM2VwLTg4TCwKKwkweDEuNDMxZjVkOTUwYTg5NmRjNzA0NDM5NHAwTCwgMHgxLjBjY2VjODFlMjRiMGNhZmY3NTgxZWY0MTI3ZjdwLTkyTCwKKwkweDEuNDRlMDg2MDYxODkyZDAzMTM2ZjQwOHAwTCwgMHgxLmRmMDE5ZmJkNGYzYjQ4NzA5Yjc4NTkxZDVjYjVwLTg4TCwKKwkweDEuNDZhNDFlZDFkMDA1NzcyNTEyZjQ1OHAwTCwgMHgxLjIyOWQ5N2RmNDA0ZmYyMWYzOWMxYjU5NGQzYThwLTg4TCwKKwkweDEuNDg2YTJiNWMxM2NkMDEzYzFhM2I2OHAwTCwgMHgxLjA2MmYwM2MzZGQ3NWNlODc1N2Y3ODBlNmVjOTlwLTg4TCwKKwkweDEuNGEzMmFmMGQ3ZDNkZTY3MmQ4YmNmNHAwTCwgMHg2LmY5NTg2NDYxZGIxZDg3OGIxZDE0OGJkM2NjYjhwLTkyTCwKKwkweDEuNGJmZGFkNTM2MmEyNzFkNDM5N2FmZXAwTCwgMHhjLjQyZTIwZTAzNjNiYTJlMTU5YzU3OWY4MmU0YjBwLTkyTCwKKwkweDEuNGRjYjI5OWZkZGQwZDYzYjM2ZWYxYXAwTCwgMHg5LmUwY2M0ODRiMjVhNTU2NmQwYmQ1ZjU4YWQyMzhwLTkyTCwKKwkweDEuNGY5YjI3NjlkMmNhNmFkMzNkOGI2OHAwTCwgMHgxLmFhMDczZWU1NWUwMjg0OTdhMzI5YTczMzNkYmFwLTg4TCwKKwkweDEuNTE2ZGFhMmNmNjY0MWMxMTJmNTJjOHAwTCwgMHg0LmQ4MjIxOTBlNzE4MjI2MTc3ZDc2MDhkMjAwMzhwLTkyTCwKKwkweDEuNTM0MmI1NjlkNGY4MWRmMGE4M2M0OHAwTCwgMHgxLmQ4NmE2M2Y0ZTY3MmEzZTQyOTgwNWIwNDk0NjVwLTg4TCwKKwkweDEuNTUxYTRjYTVkOTIwZWM1MmVjNjIwMnAwTCwgMHg0LjM0Y2E2NzI2NDVkYzZjMTI0ZDY2MTlhODc1NzRwLTkyTCwKKwkweDEuNTZmNDczNmI1MjdkYTY2ZWNiMDA0NnAwTCwgMHgxLjY0ZWIzYzAwZjJmNWFiM2Q4MDFkN2NjNzI3MmRwLTg4TCwKKwkweDEuNThkMTJkNDk3YzdmZDI1MmJjMmI3MnAwTCwgMHgxLjQzYmNmMmVjOTM2YTk3MGQ5Y2MyNjZmMDA3MmZwLTg4TCwKKwkweDEuNWFiMDdkZDQ4NTQyOTU4YzkzMDE1MHAwTCwgMHgxLjkxZWIzNDVkODhkN2M4MTI4MGUwNjlmYmRiNjNwLTg4TCwKKwkweDEuNWM5MjY4YTU5NDZiNzAxYzRiMWI4MHAwTCwgMHgxLjY5ODZhMjAzZDg0ZTZhNGE5MmYxNzllNzE4ODlwLTg4TCwKKwkweDEuNWU3NmYxNWFkMjE0ODZlOWJlNGMyMHAwTCwgMHgzLjk5NzY2YTA2NTQ4YTA1ODI5ZTg1M2JkYjJiNTJwLTkyTCwKKwkweDEuNjA1ZTFiOTc2ZGMwOGIwNzZmNTkyYXAwTCwgMHg0Ljg2ZTNiMzRlYWQxYjQ3NjlkZjg2N2I5Yzg5Y2NwLTkyTCwKKwkweDEuNjI0N2ViMDNhNTU4NGIxZjBmYTA2ZXAwTCwgMHgxLmQyZGE0MmJiMWNlYWY5ZjczMjI3NWI4YWVmMzBwLTg4TCwKKwkweDEuNjQzNDYzNGNjYzMxZmM3NmY4NzE0Y3AwTCwgMHg0LmVkOWE0ZTQxMDAwMzA3MTAzYTE4Y2Y3YTZlMDhwLTkyTCwKKwkweDEuNjYyMzg4MjU1MjIyNDkxMjdkOWUyOHAwTCwgMHgxLmI4ZjMxNGEzMzdmNGRjMGEzYWRmMTc4N2ZmNzRwLTg4TCwKKwkweDEuNjgxNTVkNDRjYTk3MzA4MWM1NzIyNnAwTCwgMHgxLmI5ZjMyNzA2YmZlNGU2MjdkODA5YTg1ZGNjNjZwLTg4TCwKKwkweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMnAwTCwgMHgxLjY2ZWE5NTdkM2UzYWRlYzE3NTEyNzc1MDk5ZGFwLTg4TCwKKwkweDEuNmMwMTI3NTBiZGFiZWVkNzZhOTk4MHAwTCwgMHhmLjRmMzNmZGViOGIwZWNkODMxMTA2ZjU3YjNkMDBwLTk2TCwKKwkweDEuNmRmYjIzYzY1MWEyZWYyMjBlMmNiZXAwTCwgMHgxLmJiYWE4MzRiM2YxMTU3N2NlZWZiZTZjMWM0MTFwLTkyTCwKKwkweDEuNmZmN2RmOTUxOTQ4M2NmODdlMWI0ZXAwTCwgMHgxLjNlMjEzYmZmOWI3MDJkNWFhNDc3YzEyNTIzY2VwLTg4TCwKKwkweDEuNzFmNzVlOGVjNWY3M2RkMjM3MGYyZXAwTCwgMHhmLjBhY2Q2Y2I0MzRiNTYyZDllOGEyMGFkZGE2NDhwLTkyTCwKKwkweDEuNzNmOWE0OGE1ODE3M2JkNWM5YTRlNnAwTCwgMHg4LmFiMTE4MmFlMjE3ZjNhNzY4MTc1OTU1M2U4NDBwLTkyTCwKKwkweDEuNzVmZWI1NjQyNjdjOGJmNmU5YWEzMnAwTCwgMHgxLmE0OGIyNzA3MTgwNWU2MWExN2I5NTRhMmRhZDhwLTg4TCwKKwkweDEuNzgwNjk0ZmRlNWQzZjYxOWFlMDI4MHAwTCwgMHg4LjU4YjJiYjJiZGNmODZjZDA4ZTM1ZmIwNGMwZjBwLTkyTCwKKwkweDEuN2ExMTQ3M2ViMDE4NmQ3ZDUxMDIzZXAwTCwgMHgxLjZjZGExZjVlZjQyYjY2OTc3OTYwNTMxZTgyMWJwLTg4TCwKKwkweDEuN2MxZWQwMTMwYzEzMjdjNDkzMzQ0NHAwTCwgMHgxLjkzNzU2MmIyZGM5MzNkNDRmYzgyOGVmZDRjOWNwLTg4TCwKKwkweDEuN2UyZjMzNmNmNGU2MjEwNWQwMmJhMHAwTCwgMHgxLjU3OTdlMTcwYTE0MjdmOGZjZGY1ZjM5MDYxMDhwLTg4TCwKKwkweDEuODA0Mjc1NDNlMWExMWI2MGRlNjc2NHAwTCwgMHg5LmEzNTRlYTcwNmI4ZTRkOGI3MThhNjcyYmY3YzhwLTkyTCwKKwkweDEuODI1ODk5OTRjY2UxMjhhY2Y4OGFmYXAwTCwgMHhiLjM0YTAxMGY2YWQ2NWNiYmFjMGY1MzJkMzliZTBwLTkyTCwKKwkweDEuODQ3MWE0NjIzYzdhY2NlNTJmNmI5NnAwTCwgMHgxLmM2NDA5NTM3MGY1MWY0ODgxNzkxNGRkNzg2NjVwLTg4TCwKKwkweDEuODY4ZDk5YjQ0OTJlYzgwZTQxZDkwYXAwTCwgMHhjLjI1MTcwNzQ4NGQ3M2YxMzZmYjU3Nzk2NTZiNzBwLTkyTCwKKwkweDEuODhhYzdkOThhNjY5OTY2NTMwYmNkZXAwTCwgMHgxLjJkNGU5ZDYxMjgzZWYzODVkZTE3MGFiMjBmOTZwLTg4TCwKKwkweDEuOGFjZTU0MjJhYTBkYjViYTdjNTVhMHAwTCwgMHgxLjkyYzliYjNlNmVkNjFmMjczMzMwNGEzNDZkOGZwLTg4TCwKKwkweDEuOGNmMzIxNmI1NDQ4YmVmMmFhMWNkMHAwTCwgMHgxLjYxYzU1ZDg0YTk4NDhmOGM0NTNiM2NhOGM5NDZwLTg4TCwKKwkweDEuOGYxYWU5OTE1NzczNjJiOTgyNzQ1Y3AwTCwgMHg3LjJlZDgwNGVmYzliNGFlMTQ1OGFlOTQ2MDk5ZDRwLTkyTCwKKwkweDEuOTE0NWIwYjkxZmZjNTg4YTYxYjQ2OHAwTCwgMHgxLmY2YjcwZTAxYzJhOTAyMjlhNGM0MzA5ZWE3MTlwLTg4TCwKKwkweDEuOTM3MzdiMGNkYzVlNGY0NTAxYzNmMnAwTCwgMHg1LjQwYTIyZDJmYzRhZjU4MWI2M2U4MzI2ZWZlOWNwLTkyTCwKKwkweDEuOTVhNDRjYmM4NTIwZWU5YjQ4MzY5NHAwTCwgMHgxLmEwZmM2ZjdjN2Q2MWIyYjNhMjJhMGVhYjJjYWRwLTg4TCwKKwkweDEuOTdkODI5ZmRlNGU0ZjhiOWU5MjBmOHAwTCwgMHgxLjFlOGJkN2VkYjlkNzE0NGI2ZjY4MTgwODRjYzdwLTg4TCwKKwkweDEuOWEwZjE3MGNhMDdiOWJhMzEwOWI4Y3AwTCwgMHg0LjY3MzdiZWIxOWUxZWFkYTY4MjVkM2M1NTc0MjhwLTkyTCwKKwkweDEuOWM0OTE4MmEzZjA5MDFjN2M0NmIwNnAwTCwgMHgxLjFmMmJlNThkZGFkZTUwYzIxNzE4NmM5MGI0NTdwLTg4TCwKKwkweDEuOWU4NjMxOWUzMjMyMzE4MjRjYTc4ZXAwTCwgMHg2LjRjNmUwMTBmOTJjMDgyYmJhZGZhZjYwNWNmZDRwLTkyTCwKKwkweDEuYTBjNjY3YjVkZTU2NGIyOWFkYThiOHAwTCwgMHhjLmFiMzQ5YWEwNDIyYThkYTdkNDUxMmVkYWM1NDhwLTkyTCwKKwkweDEuYTMwOWJlYzRhMmQzMzU4YzE3MWY3NnAwTCwgMHgxLjBkYWFkNTQ3ZmEyMmMyNmQxNjhlYTc2MmQ4NTRwLTg4TCwKKwkweDEuYTU1MDNiMjNlMjU1YzhiNDI0NDkxY3AwTCwgMHhhLmY4N2JjODA1MGE0MDUzODE3MDNlZjdjYWZmNTBwLTkyTCwKKwkweDEuYTc5OWUxMzMwYjM1ODZmMmRmYjJiMHAwTCwgMHgxLjU4ZjFhOTg3OTZjZTg5MDhhZTg1MjIzNmNhOTRwLTg4TCwKKwkweDEuYTllNmI1NTc5ZmRiZjQzZWIyNDNiY3AwTCwgMHgxLmZmNGM0YzU4YjU3MWNmNDY1Y2FmMDdiNGI5ZjVwLTg4TCwKKwkweDEuYWMzNmJiZmQzZjM3OWMwZGI5NjZhMnAwTCwgMHgxLjEyNjVmYzczZTQ4MDcxMmQyMGY4NTk3YThlN2JwLTg4TCwKKwkweDEuYWU4OWY5OTVhZDNhZDVlODczNGQxNnAwTCwgMHgxLjczMjA1YTdmYmMzYWU2NzVlYTQ0MGIxNjJkNmNwLTg4TCwKKwkweDEuYjBlMDcyOThkYjY2NTkwODQyYWNkZXAwTCwgMHgxLmM2ZjZjYTBlNWRjYWUyYWFmZmZhN2EwNTU0Y2JwLTg4TCwKKwkweDEuYjMzYTJiODRmMTVmYWY2YmZkMGU3YXAwTCwgMHgxLmQ5NDdjMjU3NTc4MWRiYjQ5YjEyMzdjODdiNmVwLTg4TCwKKwkweDEuYjU5NzI4ZGU1NTkzOThlMzg4MTExMHAwTCwgMHgxLjY0ODczYzcxNzFmZWZjNDEwNDE2YmUwYTY1MjVwLTg4TCwKKwkweDEuYjdmNzZmMmZiNWU0NmVhYTdiMDgxYXAwTCwgMHhiLjUzYzUzNTRjODkwM2MzNTZlNGI2MjVhYWNjMjhwLTkyTCwKKwkweDEuYmE1YjAzMGExMDY0OTg0MGNiM2M2YXAwTCwgMHhmLjViNDdmMjk3MjAzNzU3ZTFjYzZlYWRjOGJhZDBwLTkyTCwKKwkweDEuYmNjMWU5MDRiYzFkMjI0N2JhMGY0NHAwTCwgMHgxLmIzZDA4Y2QwYjIwMjg3MDkyYmQ1OWJlNGFkOThwLTg4TCwKKwkweDEuYmYyYzI1YmQ3MWUwODg0MDhkNzAyNHAwTCwgMHgxLjE4ZTM0NDlmYTA3M2IzNTY3NjZkZmI1NjhmZjRwLTg4TCwKKwkweDEuYzE5OWJkZDg1NTI5YzIyMjBjYjEyYXAwTCwgMHg5LjFiYTY2Nzk0NDQ5NjRhMzY2NjEyNDAwNDM5NzBwLTk2TCwKKwkweDEuYzQwYWI1ZmZmZDA3YTZkMTRkZjgyMHAwTCwgMHhmLjE4MjhhNTM2NmZkMzg3YTdiZGQ1NGNkZjczMDBwLTkyTCwKKwkweDEuYzY3ZjEyZTU3ZDE0YjRhMjEzN2ZkMnAwTCwgMHhmLjJiMzAxZGQ5ZTZiMTUxYTZkMWY5ZDVkNWY1MjBwLTk2TCwKKwkweDEuYzhmNmQ5NDA2ZTdiNTExYWNiYzQ4OHAwTCwgMHg1LmM0NDJkZGI1NTgyMDE3MWYzMTlkOWU1MDc2YThwLTk2TCwKKwkweDEuY2I3MjBkY2VmOTA2OTE1MDNjYmQxZXAwTCwgMHg5LjQ5ZGI3NjFkOTU1OWFjMGNiNmRkM2VkNTk5ZTBwLTkyTCwKKwkweDEuY2RmMGI1NTVkYzNmOWM0NGY4OTU4ZXAwTCwgMHgxLmFjNTFiZTUxNWY4YzU4YmRmYjZmNTc0MGEzYTRwLTg4TCwKKwkweDEuZDA3MmQ0YTA3ODk3YjhkMGYyMmYyMHAwTCwgMHgxLmExNThlMThmYmJmYzYyNWYwOWY0Y2NhNDA4NzRwLTg4TCwKKwkweDEuZDJmODcwODBkODlmMThhZGUxMjM5OHAwTCwgMHg5LmVhMjAyNWI0YzU2NTUzZjVjZGVlNGM5MjQ3MjhwLTkyTCwKKwkweDEuZDU4MThkY2ZiYTQ4NzI1ZGEwNWFlYXAwTCwgMHgxLjY2ZTBkY2E5ZjU4OWY1NTljMDg3NmZmMjM4MzBwLTg4TCwKKwkweDEuZDgwZTMxNmM5ODM5N2JiODRmOWQwNHAwTCwgMHg4LjgwNWY4NGJlYzYxNGRlMjY5OTAwZGRmOThkMjhwLTkyTCwKKwkweDEuZGE5ZTYwM2RiMzI4NTcwOGMwMWE1YXAwTCwgMHgxLjZkNGM5N2Y2MjQ2ZjBlYzYxNGVjOTVjOTkzOTJwLTg4TCwKKwkweDEuZGQzMjFmMzAxYjQ2MDRiNjk1ZGUzY3AwTCwgMHg2LjMwYTM5MzIxNTI5OWUzMGQ0ZmI3MzUwM2MzNDhwLTk2TCwKKwkweDEuZGZjOTczMzdiOWI1ZWI5NjhjYWMzOHAwTCwgMHgxLmVkMjkxYjcyMjVhOTQ0ZWZkNWJiNTUyNGI5MjdwLTg4TCwKKwkweDEuZTI2NDYxNGY1YTEyOGExMjc2MWZhMHAwTCwgMHgxLjdhZGE2NDY3ZTc3ZjczYmY2NWUwNGM5NWUyOWRwLTg4TCwKKwkweDEuZTUwMmVlNzhiM2ZmNjI3M2QxMzAxNHAwTCwgMHgxLjM5OTFlOGY0OTY1OWUxNjkzYmUxN2FlMWQyZjlwLTg4TCwKKwkweDEuZTdhNTFmYmM3NGM4MzRiNTQ4YjI4MnAwTCwgMHgxLjIzNzg2NzU4YTg0ZjQ5NTYzNTQ2MzRhNDE2Y2VwLTg4TCwKKwkweDEuZWE0YWZhMmE0OTBkOTg1OGY3M2ExOHAwTCwgMHhmLjVkYjMwMWY4NmRlYTIwNjEwY2VlZTEzZWI3YjhwLTkyTCwKKwkweDEuZWNmNDgyZDhlNjdmMDhkYjAzMTJmYXAwTCwgMHgxLjk0OWNlZjQ2MjAxMGJiNGJjNGNlNzJhOTAwZGZwLTg4TCwKKwkweDEuZWZhMWJlZTYxNWEyNzc3MWZkMjFhOHAwTCwgMHgxLjJkYWMxZjZkZDVkMjI5ZmY2OGU0NmYyN2UzZGZwLTg4TCwKKwkweDEuZjI1MmIzNzZiYmE5NzRlODY5NmZjMnAwTCwgMHgxLjYzOTBkNGM2YWQ1NDc2YjUxNjJmNDBlMWQ5YTlwLTg4TCwKKwkweDEuZjUwNzY1YjZlNDU0MDY3NGY4NGI3NnAwTCwgMHgyLjg2MmJhZmY5OTAwMGRmYzQzNTJiYTI5Yjg5MDhwLTkyTCwKKwkweDEuZjdiZmRhZDljYmUxMzg5MTNiNGJmZXAwTCwgMHg3LjJiZDk1YzVjZTcyODBmYTRkMjM0NGEzZjU2MThwLTkyTCwKKwkweDEuZmE3YzE4MTllOTBkODJlOTBhN2U3NHAwTCwgMHhiLjI2M2MxZGMwNjBjMzZmNzY1MGI0YzBmMjMzYThwLTkyTCwKKwkweDEuZmQzYzIyYjhmNzFmMTA5NzViYTRiMnAwTCwgMHgxLjJiY2YzYTVlMTJkMjY5ZDhhZDdjMWE0YTg4NzVwLTg4TAorfTsKKworLyoKKyAqIEtlcm5lbCBmb3IgZXhwbCh4KS4gIHggbXVzdCBiZSBmaW5pdGUgYW5kIG5vdCB0aW55IG9yIGh1Z2UuCisgKiAidGlueSIgaXMgYW55dGhpbmcgdGhhdCB3b3VsZCBtYWtlIHVzIHVuZGVyZmxvdyAofEE2KnheNnwgPCB+TERCTF9NSU4pLgorICogImh1Z2UiIGlzIGFueXRoaW5nIHRoYXQgd291bGQgbWFrZSBmbipMMSBpbmV4YWN0ICh8eHwgPiB+MioqMTcqbG4yKS4KKyAqLworc3RhdGljIGlubGluZSB2b2lkCitfX2tfZXhwbChsb25nIGRvdWJsZSB4LCBsb25nIGRvdWJsZSAqaGlwLCBsb25nIGRvdWJsZSAqbG9wLCBpbnQgKmtwKQoreworCWxvbmcgZG91YmxlIHEsIHIsIHIxLCB0OworCWRvdWJsZSBkciwgZm4sIHIyOworCWludCBuLCBuMjsKKworCS8qIFJlZHVjZSB4IHRvIChrKmxuMiArIGVuZHBvaW50W24yXSArIHIxICsgcjIpLiAqLworCS8qIFVzZSBhIHNwZWNpYWxpemVkIHJpbnQoKSB0byBnZXQgZm4uICBBc3N1bWUgcm91bmQtdG8tbmVhcmVzdC4gKi8KKwkvKiBYWFggYXNzdW1lIG5vIGV4dHJhIHByZWNpc2lvbiBmb3IgdGhlIGFkZGl0aW9ucywgYXMgZm9yIHRyaWcgZm5zLiAqLworCS8qIFhYWCB0aGlzIHNldCBvZiBjb21tZW50cyBpcyBub3cgcXVhZHJ1cGxpY2F0ZWQuICovCisJLyogWFhYIGJ1dCBzZWUgLi4vc3JjL2VfZXhwLmMgZm9yIGEgZml4IHVzaW5nIGRvdWJsZV90LiAqLworCWZuID0gKGRvdWJsZSl4ICogSU5WX0wgKyAweDEuOHA1MiAtIDB4MS44cDUyOworI2lmIGRlZmluZWQoSEFWRV9FRkZJQ0lFTlRfSVJJTlQpCisJbiA9IGlyaW50KGZuKTsKKyNlbHNlCisJbiA9IChpbnQpZm47CisjZW5kaWYKKwluMiA9ICh1bnNpZ25lZCluICUgSU5URVJWQUxTOworCS8qIERlcGVuZCBvbiB0aGUgc2lnbiBiaXQgYmVpbmcgcHJvcGFnYXRlZDogKi8KKwkqa3AgPSBuID4+IExPRzJfSU5URVJWQUxTOworCXIxID0geCAtIGZuICogTDE7CisJcjIgPSBmbiAqIC1MMjsKKwlyID0gcjEgKyByMjsKKworCS8qIEV2YWx1YXRlIGV4cGwoZW5kcG9pbnRbbjJdICsgcjEgKyByMikgPSB0YmxbbjJdICogZXhwbChyMSArIHIyKS4gKi8KKwlkciA9IHI7CisJcSA9IHIyICsgciAqIHIgKiAoQTIgKyByICogKEEzICsgciAqIChBNCArIHIgKiAoQTUgKyByICogKEE2ICsKKwkgICAgZHIgKiAoQTcgKyBkciAqIChBOCArIGRyICogKEE5ICsgZHIgKiBBMTApKSkpKSkpKTsKKwl0ID0gdGJsW24yXS5sbyArIHRibFtuMl0uaGk7CisJKmhpcCA9IHRibFtuMl0uaGk7CisJKmxvcCA9IHRibFtuMl0ubG8gKyB0ICogKHEgKyByMSk7Cit9CisKKy8qCisgKiBYWFg6IHRoZSByZXN0IG9mIHRoZSBmdW5jdGlvbnMgYXJlIGlkZW50aWNhbCBmb3IgbGQ4MCBhbmQgbGQxMjguCisgKiBIb3dldmVyLCB3ZSBzaG91bGQgdXNlIHNjYWxibmwoKSBmb3IgbGQxMjgsIHNpbmNlIGxvbmcgZG91YmxlCisgKiBtdWx0aXBsaWNhdGlvbiBpcyB2ZXJ5IHNsb3cgb24gdGhlIG9ubHkgc3VwcG9ydGVkIGxkMTI4IGFyY2ggKHNwYXJjNjQpLgorICovCisKK3N0YXRpYyBpbmxpbmUgdm9pZAora19oZXhwbChsb25nIGRvdWJsZSB4LCBsb25nIGRvdWJsZSAqaGlwLCBsb25nIGRvdWJsZSAqbG9wKQoreworCWZsb2F0IHR3b3BrbTE7CisJaW50IGs7CisKKwlfX2tfZXhwbCh4LCBoaXAsIGxvcCwgJmspOworCVNFVF9GTE9BVF9XT1JEKHR3b3BrbTEsIDB4M2Y4MDAwMDAgKyAoKGsgLSAxKSA8PCAyMykpOworCSpoaXAgKj0gdHdvcGttMTsKKwkqbG9wICo9IHR3b3BrbTE7Cit9CisKK3N0YXRpYyBpbmxpbmUgbG9uZyBkb3VibGUKK2hleHBsKGxvbmcgZG91YmxlIHgpCit7CisJbG9uZyBkb3VibGUgaGksIGxvLCB0d29wa20yOworCWludCBrOworCisJdHdvcGttMiA9IDE7CisJX19rX2V4cGwoeCwgJmhpLCAmbG8sICZrKTsKKwlTRVRfTERCTF9FWFBTSUdOKHR3b3BrbTIsIEJJQVMgKyBrIC0gMik7CisJcmV0dXJuIChsbyArIGhpKSAqIDIgKiB0d29wa20yOworfQorCisjaWZkZWYgX0NPTVBMRVhfSAorLyoKKyAqIFNlZSAuLi9zcmMva19leHAuYyBmb3IgZGV0YWlscy4KKyAqLworc3RhdGljIGlubGluZSBsb25nIGRvdWJsZSBjb21wbGV4CitfX2xkZXhwX2NleHBsKGxvbmcgZG91YmxlIGNvbXBsZXggeiwgaW50IGV4cHQpCit7CisJbG9uZyBkb3VibGUgZXhwX3gsIGhpLCBsbzsKKwlsb25nIGRvdWJsZSB4LCB5LCBzY2FsZTEsIHNjYWxlMjsKKwlpbnQgaGFsZl9leHB0LCBrOworCisJeCA9IGNyZWFsbCh6KTsKKwl5ID0gY2ltYWdsKHopOworCV9fa19leHBsKHgsICZoaSwgJmxvLCAmayk7CisKKwlleHBfeCA9IChsbyArIGhpKSAqIDB4MXAxNjM4MjsKKwlleHB0ICs9IGsgLSAxNjM4MjsKKworCXNjYWxlMSA9IDE7CisJaGFsZl9leHB0ID0gZXhwdCAvIDI7CisJU0VUX0xEQkxfRVhQU0lHTihzY2FsZTEsIEJJQVMgKyBoYWxmX2V4cHQpOworCXNjYWxlMiA9IDE7CisJU0VUX0xEQkxfRVhQU0lHTihzY2FsZTEsIEJJQVMgKyBleHB0IC0gaGFsZl9leHB0KTsKKworCXJldHVybiAoY3BhY2tsKGNvcyh5KSAqIGV4cF94ICogc2NhbGUxICogc2NhbGUyLAorCSAgICBzaW5sKHkpICogZXhwX3ggKiBzY2FsZTEgKiBzY2FsZTIpKTsKK30KKyNlbmRpZiAvKiBfQ09NUExFWF9IICovCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgva19zaW5sLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgva19zaW5sLmMKaW5kZXggYmQ0MTVjMC4uMDk0NzJkNiAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L2tfc2lubC5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9rX3NpbmwuYwpAQCAtNiw3ICs2LDcgQEAKICAqCiAgKiBEZXZlbG9wZWQgYXQgU3VuU29mdCwgYSBTdW4gTWljcm9zeXN0ZW1zLCBJbmMuIGJ1c2luZXNzLgogICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcwotICogc29mdHdhcmUgaXMgZnJlZWx5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhpcyBub3RpY2UKKyAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlIAogICogaXMgcHJlc2VydmVkLgogICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICovCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvc19lcmZsLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvc19lcmZsLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTI5Yzk2OQotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9zX2VyZmwuYwpAQCAtMCwwICsxLDMyOSBAQAorLyogQCgjKXNfZXJmLmMgNS4xIDkzLzA5LzI0ICovCisvKgorICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorICogQ29weXJpZ2h0IChDKSAxOTkzIGJ5IFN1biBNaWNyb3N5c3RlbXMsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBEZXZlbG9wZWQgYXQgU3VuUHJvLCBhIFN1biBNaWNyb3N5c3RlbXMsIEluYy4gYnVzaW5lc3MuCisgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzCisgKiBzb2Z0d2FyZSBpcyBmcmVlbHkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGlzIG5vdGljZQorICogaXMgcHJlc2VydmVkLgorICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorICovCisKKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KK19fRkJTRElEKCIkRnJlZUJTRCQiKTsKKworLyoKKyAqIFNlZSBzX2VyZi5jIGZvciBjb21wbGV0ZSBjb21tZW50cy4KKyAqCisgKiBDb252ZXJ0ZWQgdG8gbG9uZyBkb3VibGUgYnkgU3RldmVuIEcuIEthcmdsLgorICovCisjaW5jbHVkZSA8ZmxvYXQuaD4KKworI2luY2x1ZGUgImZwbWF0aC5oIgorI2luY2x1ZGUgIm1hdGguaCIKKyNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKKworLyogWFhYIFByZXZlbnQgY29tcGlsZXJzIGZyb20gZXJyb25lb3VzbHkgY29uc3RhbnQgZm9sZGluZyB0aGVzZTogKi8KK3N0YXRpYyBjb25zdCB2b2xhdGlsZSBsb25nIGRvdWJsZSB0aW55ID0gMHgxcC0xMDAwMEw7CisKK3N0YXRpYyBjb25zdCBkb3VibGUKK2hhbGY9IDAuNSwKK29uZSA9IDEsCit0d28gPSAyOworLyoKKyAqIEluIHRoZSBkb21haW4gWzAsIDIqKi00MF0sIG9ubHkgdGhlIGZpcnN0IHRlcm0gaW4gdGhlIHBvd2VyIHNlcmllcworICogZXhwYW5zaW9uIG9mIGVyZih4KSBpcyB1c2VkLiAgVGhlIG1hZ25pdHVkZSBvZiB0aGUgZmlyc3QgbmVnbGVjdGVkCisgKiB0ZXJtcyBpcyBsZXNzIHRoYW4gMioqLTEyMC4KKyAqLworc3RhdGljIGNvbnN0IGxvbmcgZG91YmxlCitlZnggID0gIDEuMjgzNzkxNjcwOTU1MTI1NzM4OTYxNTg5MDMxMjE1NDUxNjdlLTAxTCwJLyogMHhlY2JmZjZhNywgMHg0ODFkZDc4OCwgMHhiNjRkMjFhOCwgMHhlYjA2ZmMzZiAqLworZWZ4OCA9ICAxLjAyNzAzMzMzNjc2NDEwMDU5MTE2OTI3MTIyNDk3MjM2MTMzZSswMEwsCS8qIDB4ZWNiZmY2YTcsIDB4NDgxZGQ3ODgsIDB4YjY0ZDIxYTgsIDB4ZWIwNmZmM2YgKi8KKy8qCisgKiBEb21haW4gWzAsIDAuODQzNzVdLCByYW5nZSB+Wy0xLjkxOWUtMzgsIDEuOTE5ZS0zOF06CisgKiB8KGVyZih4KSAtIHgpL3ggLSBwcCh4KS9xcSh4KXwgPCAyKiotMTI1LjI5CisgKi8KK3BwMCAgPSAgMS4yODM3OTE2NzA5NTUxMjU3Mzg5NjE1ODkwMzEyMTU0NTE2N2UtMDFMLAkvKiAweDNmZmMwNmViLCAweGE4MjE0ZGI2LCAweDg4ZDcxZDQ4LCAweGE3ZjZiZmVjICovCitwcDEgID0gLTMuMTQ5MzE1NTQzOTY1Njg1NzM4MDIwNDY5MzExNTk2ODM0MDRlLTAxTCwJLyogMHhiZmZkNDI3ZCwgMHg2YWRhNzI2MywgMHg1NDdlYjA5NiwgMHg5NWYzNzQ2MyAqLworcHAyICA9IC01LjI3NTE0OTIwMjgyMTgzNDg3MTAzNTc2OTU2OTU2NzI1MzA5ZS0wMkwsCS8qIDB4YmZmYWIwMjMsIDB4ZTVhMjcxZTMsIDB4YjBlNzliMDEsIDB4MmY3YWM5NjIgKi8KK3BwMyAgPSAtMS4xMzIwMjgyODUwOTAwNTI4MTM1NTYwOTQ5NTUyMzQ1MjcxM2UtMDJMLAkvKiAweGJmZjg3MmYxLCAweDZhNTAyM2ExLCAweGUwOGIzODg0LCAweDMyNmFmMjBmICovCitwcDQgID0gLTkuMTg2MjYxNTU4NzI1MjI0NTM4NjU5OTgzOTEyMDYwNDg1MDZlLTA0TCwJLyogMHhiZmY0ZTE5ZiwgMHhlYTVmYjAyNCwgMHg0MzI0N2EzNywgMHhlNDMwYjA2YyAqLworcHA1ICA9IC03Ljg3NTE4ODYyNDA2MTc2Mjc0OTIyNTA2NDQ3MTU3Mjg0MjMwZS0wNUwsCS8qIDB4YmZmMTRhNGYsIDB4MzFhODVmZTAsIDB4N2ZmZjIyMDQsIDB4MDljNDliMzcgKi8KK3BwNiAgPSAtMy40MjM1Nzk0NDQ3MjI0MDQzNjU0ODExNTMzMTA5MDU2MDg4MWUtMDZMLAkvKiAweGJmZWNjYjgxLCAweDRiNDNjMzM2LCAweGNkMmViNmMyLCAweDkwM2YyZDg3ICovCitwcDcgID0gLTEuMzczMTc0MzI1NzM4OTA0MTI2MzQ3MTc4OTA3MjY3NDU0MjhlLTA3TCwJLyogMHhiZmU4MjZlMywgMHgwZTkxNWViNiwgMHg0MmFlZTQxNCwgMHhmN2UzNjgwNSAqLworcHA4ICA9IC0yLjcxMTE1MTcwMTEzODYxNzU1ODU1MDQ5MDA4NzMyMTEzNzI2ZS0wOUwsCS8qIDB4YmZlMjc0OWUsIDB4MmI5NGZkMDAsIDB4ZWNiNGQxNjYsIDB4MGVmYjkxZjggKi8KK3BwOSAgPSAtMy4zNzkyNTc1NjE5NjU1NTk1OTQ1NDAxODE4OTcxODExNzg2NGUtMTFMLAkvKiAweGJmZGMyOTNlLCAweDFkOTA2MGNiLCAweGQwNDMyMDRhLCAweDMxNGNkN2YwICovCitxcTEgID0gIDQuNzY2NzI2MjU0NzE1NTExNzA0ODk5Nzg1NTUxODI0NDk0NTBlLTAxTCwJLyogMHgzZmZkZTgxYywgMHhkZTY1MzFmMCwgMHg3NjgwM2JlZSwgMHg1MjZlMjllOSAqLworcXEyICA9ICAxLjA2NzEzMTQ0NjcyMjgxNTAyMDU4ODA3NTI1ODUwNzMyMjQwZS0wMUwsCS8qIDB4M2ZmYmI1MTgsIDB4ZDdhNmJiNzQsIDB4Y2Q5YmRkMzMsIDB4NzYwMWVlZTUgKi8KK3FxMyAgPSAgMS40Nzc0NzYxMzEyNzUxMzc2MTEwMjE4OTIwMTkyMzE0NzQ5MGUtMDJMLAkvKiAweDNmZjhlNDIzLCAweGFlNTI3ZTE4LCAweGYxMmNiNDQ3LCAweDcyM2I0NzQ5ICovCitxcTQgID0gIDEuMzk5MzkzNzc2NzIwMjg2NzE4OTExNDg3NzA5MDg4NzQ4MTZlLTAzTCwJLyogMHgzZmY1NmVkNywgMHhiYTA1NWQ4NCwgMHhjMjFiNDVjNCwgMHgzODhkMTgxMiAqLworcXE1ICA9ICA5LjQ0MzAyOTM5MzU5NDU1MjQxMjcxOTgzMzA5Mzc4NzM4Mjc2ZS0wNUwsCS8qIDB4M2ZmMThjMTEsIDB4YzE4Yzk5YTQsIDB4ODZkMGZlMDksIDB4NDYzODdiNGMgKi8KK3FxNiAgPSAgNC41NjE5OTM0MjMxMjUyMjg0MjE2MTMwMTY3MTc0NTM2NTY1MGUtMDZMLAkvKiAweDNmZWQzMjI2LCAweDczNDIxZDA1LCAweDA4ODc1MzAwLCAweDMyZmExNDMyICovCitxcTcgID0gIDEuNTMwMTkyNjA0ODM3NjQ3NzM4NDUyOTQ2MDAwOTIzNjExOTdlLTA3TCwJLyogMHgzZmU4NDg5YiwgMHgzYTYzZjYyNywgMHgyYjlhZDJjZSwgMHgyNjUxNmU1NyAqLworcXE4ICA9ICAzLjI1NTQyNjkxMTIxMzI0ODA1MDk0Nzc3OTAxMjUwMDA1NTA4ZS0wOUwsCS8qIDB4M2ZlMmJmNmMsIDB4MjZkOTNhMjksIDB4OTE0MmJlN2MsIDB4OWYxZGQwNDMgKi8KK3FxOSAgPSAgMy4zNzQwNTU4MTk2NDQ3ODA2MDQzNDQxMDE2NzI2MjY4NDk3OWUtMTFMOwkvKiAweDNmZGMyOGM4LCAweGZiOGZhMWJlLCAweDEwZTU3ZWVjLCAweGFhMTllNDlmICovCisKK3N0YXRpYyBjb25zdCBsb25nIGRvdWJsZQorZXJ4ICA9ICA4LjQyNzAwNzkyOTQ5NzE0ODk0MTQyMjMyNDI0MjAxMjEwOTYxZS0wMUwsCS8qIDB4M2ZmZWFmNzYsIDB4N2E3NDEwODgsIDB4YjAwMDAwMDAsIDB4MDAwMDAwMDAgKi8KKy8qCisgKiBEb21haW4gWzAuODQzNzUsIDEuMjVdLCByYW5nZSB+Wy0yLjUyMWUtMzYsIDIuNTIzZS0zNl06CisgKiB8KGVyZih4KSAtIGVyeCkgLSBwYSh4KS9xYSh4KXwgPCAyKiotMTIwLjE1CisgKi8KK3BhMCAgPSAtMi40ODAxMDExNzg5MTE4NjAxNzAyNDQzODIzMzMyMzc5NTg5N2UtMTdMLAkvKiAweGJmYzdjOTdmLCAweDc3ODEyMjc5LCAweDZjODc3ZjIyLCAweGVmNGJmYjJlICovCitwYTEgID0gIDQuMTUxMDc0OTc0MjA1OTQ2ODA4OTQzMjc5Njk1MDQ1MjY0ODllLTAxTCwJLyogMHgzZmZkYTkxMSwgMHhmMDk2ZmJjMiwgMHg1NTY2MjAwNSwgMHgyMzM3ZmE2NCAqLworcGEyICA9IC0zLjk0MTgwNjI4MDg3MDg0ODQ2NzI0NDQ4NTE1ODUxODkyNjA5ZS0wMkwsCS8qIDB4YmZmYTQyZTksIDB4YWI1NDUyOGMsIDB4YWQ1MjlkYTEsIDB4NmVmYzJhZjMgKi8KK3BhMyAgPSAgNC40ODg5NzU5OTYyNTE5MjEwNzI5NTk1NDc5MDY4MTY3NzQ2MmUtMDJMLAkvKiAweDNmZmE2ZmJjLCAweGE2NWVkYmExLCAweDBlNGNiY2VhLCAweDczZWY5YTMxICovCitwYTQgID0gIDguMDIwNjkyNTIxNDMwMTY2MDAxMTA5NzIwMTkyMzI5OTU1MjhlLTAyTCwJLyogMHgzZmZiNDg4NywgMHgwZThiNTQ4ZSwgMHgzMjMwYjQxNywgMHgxMWI1NTNiMyAqLworcGE1ICA9IC0xLjAyNzI5ODE2NTMzNDM1Mjc5NDQzNjIxMTIwMjQyMzkxMjk1ZS0wMkwsCS8qIDB4YmZmODUwYTAsIDB4MDQxZGUzZWUsIDB4ZDViY2E2YzksIDB4NGVmNWY5ZjIgKi8KK3BhNiAgPSAgNS43MDc3NzY5NDUzMDc1NTYzNDg2NDgyMTA5NDQxOTk4MjA5NWUtMDNMLAkvKiAweDNmZjc3NjEwLCAweDliNTAxZTEwLCAweDRjOTc4MzgyLCAweDc0MmRmNjhmICovCitwYTcgID0gIDEuMjI2MzUxNTAyMzMwNzU1MjEwMTgyMzE3NzkyNjcwNzcwNzFlLTAzTCwJLyogMHgzZmY1NDE3YiwgMHgwZTYyMzY4MiwgMHg2MDMyN2RhMCwgMHg5NmI5MjE5ZSAqLworcGE4ICA9ICA1LjM2MTAwMjM0ODIwMjA0NTY5NDI4NDEyNTQyODU2NjY2NTAzZS0wNEwsCS8qIDB4M2ZmNDE5MTIsIDB4MjdjZWI0YzEsIDB4MWQzMjk4ZWMsIDB4ODRjZWQ2MjcgKi8KK3BhOSAgPSAtMS45Nzc1MzU3MTg0NjM2NTE2NzE3NzE4Nzg1ODY2NzU4MzE2NWUtMDRMLAkvKiAweGJmZjI5ZWI4LCAweDIzZjViY2YzLCAweDE1YzgzYzQ2LCAweGU0ZmRhOThiICovCitwYTEwID0gIDYuMTkzMzMwMzk5MDA4NDY5NzA2NzQ3OTQ3ODk1Njg0MTUxMDVlLTA1TCwJLyogMHgzZmYxMDNjNCwgMHg2MGY4OGU0NiwgMHhjMGM5ZmIwMiwgMHgxM2NjN2ZjMSAqLworcGExMSA9IC01LjQwNTMxNDAwNDM2NjQ1ODYxNDkyMjkwMjcwMzExNzUxMzQ5ZS0wNkwsCS8qIDB4YmZlZDZhYmUsIDB4OTY2NWY4YTgsIDB4ZGQwYWQzYmEsIDB4ZTVkYzBlZTMgKi8KK3FhMSAgPSAgOS4wNTA0MTMxMzI2NTQ5MDQ4Nzc5MzIzMTgxMDI5MTkwNzg1MWUtMDFMLAkvKiAweDNmZmVjZjYxLCAweDkzMzQwMjIyLCAweGU5OTMwNjIwLCAweGM0ZTYxMTY4ICovCitxYTIgID0gIDYuNzk4NDgwNjQ3MDg4ODY4NjQ3NjcyNDA4ODA4MzQ4NjgwOTJlLTAxTCwJLyogMHgzZmZlNWMxNSwgMHgwYmE4NThkYywgMHhmNzkwMGFlOSwgMHhmZWExZTA5YSAqLworcWEzICA9ICA0LjA0NzIwNjA5OTI2NDcxNjc3NTgxMDY2Njg5MzE2NTE2NDQ1ZS0wMUwsCS8qIDB4M2ZmZDllNmYsIDB4MTQ1ZTliMDAsIDB4NmQ4YzE3NDksIDB4ZDI5Mjg2MjMgKi8KK3FhNCAgPSAgMS42OTE4MzI3Mzg5ODM2OTk5NjM2NDY2MTA3NTY2NDMwMjIyNWUtMDFMLAkvKiAweDNmZmM1YTdjLCAweGMyYTM2M2MxLCAweGQ2YzE5MDk3LCAweGVmOWI0MDYzICovCitxYTUgID0gIDcuNDQ0NzYxODU5ODgwNjc5OTIzNDI0Nzk3NTA0ODY3NjQyNDhlLTAyTCwJLyogMHgzZmZiMzBlZiwgMHhmYzcyNTllZiwgMHgxYmNiYjA4OSwgMHg2ODZkZDYyZCAqLworcWE2ICA9ICAyLjAyOTgxMTcyNzI1ODkyNDA3MjAwNDIwMzg5NjA0Nzg4NTczZS0wMkwsCS8qIDB4M2ZmOTRjOTAsIDB4Nzk3NmNiMGUsIDB4MjFlMWQzNmIsIDB4MGYwOWNhMmIgKi8KK3FhNyAgPSAgNi45NDI4MTg2NjI3MTYwNzY2ODI2ODI2OTQwMzEwMjI3NzIzNGUtMDNMLAkvKiAweDNmZjdjNzAxLCAweDJiMTkzMjUwLCAweGM1ZDQ2ZWNjLCAweDM3NDg0M2Q4ICovCitxYTggID0gIDEuMTI5NTIyNzU0NjkxNzE1NTk2MTE2NTE1OTQ3MDY4MjAwMzRlLTAzTCwJLyogMHgzZmY1MjgxOCwgMHhmZDJhN2MwNiwgMHhkMTNlMzhmZCwgMHhkYTRiMzRmNSAqLworcWE5ICA9ICAzLjEzNzM2NjgzMjQxOTkyNzM3MTk3MjI2NTc4NTk3NzEwMTc5ZS0wNEwsCS8qIDB4M2ZmMzQ4ZmEsIDB4MGNiNDhkMTgsIDB4MDUxZjg0OWIsIDB4MTM1Y2NmNzQgKi8KK3FhMTAgPSAgMS4xNzAzNzY3NTIwNDAzMzIyNTQ3MDEyMTEzNDA4Nzc3MTQxMGUtMDVMLAkvKiAweDNmZWU4OGI2LCAweDk4ZjQ3NzA0LCAweGE1ZDhmOGYyLCAweGM2NDIyZTExICovCitxYTExID0gIDQuNjEzMTI1MTgyOTM4NTM5OTE0MzkzNjI4MDY4ODA5NzM1OTJlLTA2TCwJLyogMHgzZmVkMzU5NCwgMHhlMzFkYjk0ZiwgMHgzNTkyYjY5MywgMHhlZDQzODZiNCAqLworcWExMiA9IC0xLjAyMTU4NTcyMDM3NDU2ODkzNjg3NzM3NTUzNjU3NDMxNzcxZS0wNkw7CS8qIDB4YmZlYjEyM2EsIDB4ZDYwZDliMWUsIDB4MWY2ZmRlYjksIDB4N2RjODQxMGEgKi8KKy8qCisgKiBEb21haW4gWzEuMjUsMi44NTcxNV0sIHJhbmdlIH5bLTIuOTIyZS0zNywyLjkyMmUtMzddOgorICogfGxvZyh4KmVyZmMoeCkpICsgeCoqMiArIDAuNTYyNSAtIHJhKHgpL3NhKHgpfCA8IDIqKi0xMjEuMzYKKyAqLworc3RhdGljIGNvbnN0IGxvbmcgZG91YmxlCityYTAgID0gLTkuODY0OTQyOTI0NzAwNjkwMDk1NTU3MDY5OTQ0MjYwMTQ0NjFlLTAzTCwJLyogMHhiZmY4NDM0MSwgMHgyMzllODcwOSwgMHhlOTQxYjA2YSwgMHhjYjRiNmVjNSAqLworcmExICA9IC0xLjEzNTgwNDM2OTkyNTY1NjQwNDU3NTc5MDQwMTE3NTY4ODcwZSswMEwsCS8qIDB4YmZmZjIyYzQsIDB4MTMzZjdjMGQsIDB4NzJkNWUyMzEsIDB4MmViMWVlM2YgKi8KK3JhMiAgPSAtNC44OTc0NDMzMDI5NTI5MTk1MDY2MTE4NTcwNzA2NjkyMTc1NWUrMDFMLAkvKiAweGMwMDQ4N2NiLCAweGEzOGI0ZmMyLCAweGMxMzY2OTViLCAweGMxZGY4MDQ3ICovCityYTMgID0gLTEuMTA3NjYxNDkzMDAyMTU5MzcxNzM3NjgwNzI3MTUzNTIxNDBlKzAzTCwJLyogMHhjMDA5MTRlYSwgMHg1NWU2YmViMywgMHhhYmM1MGUwNywgMHhiNmU1NjY0ZCAqLworcmE0ICA9IC0xLjQ5OTkxMDMxMjMyMTcwOTM0OTY3NjQyNzk1NjAxOTUyMTAwZSswNEwsCS8qIDB4YzAwY2Q0YjgsIDB4ZDMzMjQzZTYsIDB4ZmZiZjY1NDUsIDB4M2M1N2VmNmUgKi8KK3JhNSAgPSAtMS4yOTgwNTc0OTczODMxODQ2Mjg4MjUyNDE4MTU1Njk5NjY5MmUrMDVMLAkvKiAweGMwMGZmYjBkLCAweGJmZWVkOWI2LCAweDViMmEzZmY0LCAweGUyNDViZDNjICovCityYTYgID0gLTcuNDI4Mjg0OTcwNDQ5NDAwNjU4Mjg4NzE5NzY2NDQ2NDc4NTBlKzA1TCwJLyogMHhjMDEyNmFiNSwgMHg4ZmU3Y2FjYSwgMHg0NzMzNTJkOSwgMHhjZDRlMGM5MCAqLworcmE3ICA9IC0yLjg1NjM3Mjk5NTgxODkwNzM0Mjg3OTk1MTcxMjQyNDIxMTA2ZSswNkwsCS8qIDB4YzAxNDVjYWQsIDB4YTdmNzZmZTcsIDB4M2UzNTgwNTEsIDB4MTc5OWY5MjcgKi8KK3JhOCAgPSAtNy40MDY3NDc5NzEyOTgyNDk5OTM4Mzc0ODg2NTU3MTAyNjA4NGUrMDZMLAkvKiAweGMwMTVjNDEyLCAweDZmZTI5YzAyLCAweDI5OGFkMTU4LCAweDdkMjRlNDVjICovCityYTkgID0gLTEuMjg2NTM0MjA5MTE5MzA5NzM5MTQwNzg3MjQyMDQxNTE3NTllKzA3TCwJLyogMHhjMDE2ODg5ZSwgMHg3YzJlYjBkYywgMHg5NWQ1ODYzYiwgMHgwYWEzNGRjMyAqLworcmExMCA9IC0xLjQ3MTk4MTYzNTk5MzMwMTc5NTUyOTMyNDg5MTA5NDUyNjM4ZSswN0wsCS8qIDB4YzAxNmMxMzYsIDB4OTBiODQ5MjMsIDB4ZjliY2I0OTcsIDB4MTliYmQwZjUgKi8KK3JhMTEgPSAtMS4wNzgxMjk5MjI1ODM4MjgwMDMxODY2NTI0ODMxMTUyMjYyNGUrMDdMLAkvKiAweGMwMTY0OTA0LCAweGU2NzNhMTEzLCAweDM1ZDdmMDc5LCAweGUxMzcwMWYzICovCityYTEyID0gLTQuODM1NDU1NjU2ODE3MDg2NDI2MzA0MTk5MDU1Mzc3NTYwNzZlKzA2TCwJLyogMHhjMDE1MjcyMSwgMHhmZWEwOTRhOCwgMHg4NjllYjM5ZCwgMHg0MTNkNmYxMyAqLworcmExMyA9IC0xLjIzOTU2NTIxMjAxNjczOTY0ODIyOTc2OTE3MzU2Njg1Mjg2ZSswNkwsCS8qIDB4YzAxMzJlYTAsIDB4ZDM2NDZiYWEsIDB4MmZlNjJiMGQsIDB4YmFlNWNlODUgKi8KK3JhMTQgPSAtMS42MjI4OTMzMzU1MzY1MjQxNzU5MTI3NTMzMzI0MDM3MTgxMmUrMDVMLAkvKiAweGMwMTAzY2Y4LCAweGFhYjFlMmQ2LCAweDRjMjVlMDE0LCAweDI0OGQ3NmFiICovCityYTE1ID0gLTguODI4OTAzOTI2MDExNzY5Njk3MjkxNjg4OTQzODk4MzMxMTBlKzAzTCwJLyogMHhjMDBjMTNlNywgMHgzYjNkOGY5NCwgMHg2ZmJkYTZmNiwgMHhlNzA0OWE4MiAqLworcmExNiA9IC0xLjIyNTkxODY2MzM3MjYxNzIwMDIzNjgxNTM1NTY4MzM0NjE5ZSswMkwsCS8qIDB4YzAwNWVhNWUsIDB4MTIzNTg4OTEsIDB4Y2ZhNzEyYzUsIDB4NzdmMDUwZDQgKi8KK3NhMSAgPSAgNi40NDUwODkxODg4NDcxMDgyOTM3MTg1MjcyMzM1Mzc5NDA0N2UrMDFMLAkvKiAweDQwMDUwMWNkLCAweGI2OWE2YzBmLCAweDU3MTZkZTE0LCAweDQ3MTYxYWY2ICovCitzYTIgID0gIDEuNzYxMTg0NzU0NzMxNzE0ODE1MjM3MDQ4MjQzMjczNTg1MzRlKzAzTCwJLyogMHg0MDA5Yjg0YiwgMHhkMzA1ODI5ZiwgMHhjNGM3NzFiMCwgMHhiZjFmN2Y5YiAqLworc2EzICA9ICAyLjY5NDQ4MzQ2OTY5NDg4Mzc0ODU3MDg3NjQ2MTMxOTUwMTg4ZSswNEwsCS8qIDB4NDAwZGE1MDMsIDB4NTZiYWNjMDUsIDB4NGZkYmE2OGQsIDB4MmNjYTI3ZTYgKi8KK3NhNCAgPSAgMi41NjgyNjYzMzM2OTk0MTQ1Njc3ODMyNjQ5NzM4NDU0Mzc2M2UrMDVMLAkvKiAweDQwMTBmNTlkLCAweDUxMTI0NDI4LCAweDY5YzQxZGU2LCAweGJkMGQ1NzUzICovCitzYTUgID0gIDEuNjA2NDc0MTMwOTIyNTcyMDY4NDc3MDAwNTQ2NDU5MDU4NTllKzA2TCwJLyogMHg0MDEzODgzNCwgMHhhMjE4NDI0NCwgMHg1NTdhMWJlZCwgMHg2OGM5ZDU1NiAqLworc2E2ICA9ICA2Ljc2OTYzMDc1MTY1MDk5NzE4NTc0NzUzNDQ3MTIyMzkzNzk3ZSswNkwsCS8qIDB4NDAxNTlkMmYsIDB4N2IwMWIwY2MsIDB4OGJhYzllOTUsIDB4NWQzNWQ1NmUgKi8KK3NhNyAgPSAgMS45NDI5NTY5MDkwNTM2MTg4NDI5MDk4NjkzMjQ5MzY0Nzc0MWUrMDdMLAkvKiAweDQwMTcyODc4LCAweGMxMTcyZDYxLCAweDMwNjg1MDFlLCAweDJmM2M3MWRhICovCitzYTggID0gIDMuNzk3NzQ3ODEwMTc3NTkxNDkwNjA4MzkyNTU1NDcwNzM1NDFlKzA3TCwJLyogMHg0MDE4MjFiZSwgMHhjMzBkMDZmZSwgMHg0MTA1NjNkNywgMHgwMzIxMTFmZCAqLworc2E5ICA9ICA1LjAwNjU5ODMxODQ2MDI5NDg0MjQ4MzAyMjM2NDU3NzI3Mzk3ZSswN0wsCS8qIDB4NDAxODdkZjksIDB4MWY5N2ExMTEsIDB4YzUxZDZhYzIsIDB4NGIzODk3OTMgKi8KK3NhMTAgPSAgNC4zNjQ4NjI4NzYyMDUwNjQ4NDI3NjEzMDUyNTk0MTk3MjU0MWUrMDdMLAkvKiAweDQwMTg0ZDAzLCAweDNhNjE4YWUwLCAweDJhNzIzMzU3LCAweGZhNDVjNjBhICovCitzYTExID0gIDIuNDM3Nzk2Nzg3OTEzMzM4OTQyNTU1MTA1MDgyNTM5NTE5MzRlKzA3TCwJLyogMHg0MDE3NzNmYSwgMHg2ZmUxMGVlMiwgMHhjNDY3ODUwZCwgMHhjNmI3ZmYzMCAqLworc2ExMiA9ICA4LjMwNzMyMzYwMzg0NDQzMjAyMDM5MzcyMzcyMjEyOTY2NTQyZSswNkwsCS8qIDB4NDAxNWZiMDksIDB4ZWU2YTU2MzEsIDB4ZGQ5OGRlN2UsIDB4OGIwMDQ2MWEgKi8KK3NhMTMgPSAgMS42MDE2MDg0Njk0MjA1MDUxNTczNDE5MjM5NzQ5NTEwNTY5M2UrMDZMLAkvKiAweDQwMTM4NzA0LCAweDg3ODJiZjEzLCAweDViOGZiMzE1LCAweGE4OThhYmU1ICovCitzYTE0ID0gIDEuNTQyNTU1MDUyNDI1MzMyOTEwMTQ1NTUxNTM3NTcwMDE4MjVlKzA1TCwJLyogMHg0MDEwMmQ0NywgMHhjMGFiYzk4ZSwgMHg4NDNjOTQ5MCwgMHhiNDM1MjQ0MCAqLworc2ExNSA9ICA1Ljg3OTQ5MjIwMDAyMzc1NTQ3NTYxNDY3Mjc1NDkzODg4ODI0ZSswM0wsCS8qIDB4NDAwYjZmNzcsIDB4ZTAwZDIxZDEsIDB4ZWM0ZDQxZTgsIDB4MmY4ZTE2NzMgKi8KK3NhMTYgPSAgNC45NzI3Mjk3NjM0Njc5MzE5Mzg2MDM4NTk4MzM3MjIzNzcxMGUrMDFMOwkvKiAweDQwMDQ4ZGQxLCAweDgxNmMxYjNmLCAweDI0ZjU0MGE2LCAweDRjZmUwM2NjICovCisvKgorICogRG9tYWluIFsyLjg1NzE1LDldLCByYW5nZSB+Wy03Ljg4NmUtMzcsNy45MThlLTM3XToKKyAqIHxsb2coeCplcmZjKHgpKSArIHgqKjIgKyAwLjU2MjUgLSByYih4KS9zYih4KXwgPCAyKiotMTIwCisgKi8KK3N0YXRpYyBjb25zdCBsb25nIGRvdWJsZQorcmIwICA9IC05Ljg2NDk0MjkyNDcwMDA4NzA3MTcxMzcxOTk0NDc5MTYyMzY5ZS0zTCwgLyogMHhiZmY4NDM0MSwgMHgyMzllODZmNCwgMHgyZjU3ZTU2MSwgMHhmNDQ2OTM2MCAqLworcmIxICA9IC0xLjU3MDQ3MzI2NjI0MTEwNzI3OTg2MzI2NTAzNzI5NDQyODMwTCwgICAgLyogMHhiZmZmOTIwYSwgMHg4OTM1YmY3MywgMHg4ODAzYjg5NCwgMHg0NjU2NDgyZCAqLworcmIyICA9IC0xLjAzMjI4MTk2MzY0ODg1NDc0MzQyMTMyMjU1NDQwMzE3MDY1ZTJMLCAgLyogMHhjMDA1OWNlOSwgMHhhYzRlZDBmZiwgMHgyY2ZmMGZmNywgMHg1ZTcwZDFhYiAqLworcmIzICA9IC0zLjc0MDAwNTcwNjUzNDE4MjI3MTc5MzU4NzEwODY1MjI0Mzc2ZTNMLCAgLyogMHhjMDBhZDM4MCwgMHgyZWJmNzgzNSwgMHhmNmIwN2VkMiwgMHg4NjEyNDJmNyAqLworcmI0ICA9IC04LjM1NDM1NDc3NzM5MDk4MDQ0MTkwODYwMzkwNjMyODEzOTU2ZTRMLCAgLyogMHhjMDBmNDY1NywgMHg4YzNhZTkzNCwgMHgzNjQ3ZDdiMywgMHg4MGU3NmZiNyAqLworcmI1ICA9IC0xLjIxMzk4NjcyMDU1MjIzNjQyMTE4NzE2NjQwMjE2NzQ3MTUyZTZMLCAgLyogMHhjMDEzMjg2MiwgMHgyYjg3NjFjOCwgMHgyN2QxOGMwZiwgMHgxMzdjOTQ2MyAqLworcmI2ICA9IC0xLjE3NjY5MTc1ODc3MjQ4Nzk2MTAxNjY1MzQ0ODczMjczOTcwZTdMLCAgLyogMHhjMDE2NjcxOSwgMHgwYjJjZWE0NiwgMHg4MWYxNDE3NCwgMHgxMTYwMmVhNSAqLworcmI3ICA9IC03LjY2MTA4MDA2MDg2OTk4MjUzNjA2NzczMDY0MjY0NTk5NjE1ZTdMLCAgLyogMHhjMDE5MjQzZiwgMHgzYzI2ZjRmMCwgMHgxY2MwNTI0MSwgMHgzYjk1MzcyOCAqLworcmI4ICA9IC0zLjMyNTQ3MTE3NTU4MTQxODQ1OTY4NzA0NzI1MzUzMTMwODA0ZThMLCAgLyogMHhjMDFiM2QyNCwgMHg0MmQ4ZWUyNiwgMHgyNGVmNmYzYiwgMHg2MDRhOGM2NSAqLworcmI5ICA9IC05LjQxNTYxMjUyNDI2MzUwNjk2ODAyMTY3NzExMjIxNzM5NzQ2ZThMLCAgLyogMHhjMDFjYzBmOCwgMHhhZDIzNjkyYSwgMHg4ZGRiMjMxMCwgMHhlOTkzNzE0NSAqLworcmIxMCA9IC0xLjY3MTU3MTEwODA1MzkwOTQ0NTQ5NDI3MzI5NjI2MjgxMDYzZTlMLCAgLyogMHhjMDFkOGU4OCwgMHg5YTkwMzczNCwgMHgwOWE1NWZhMywgMHhkMjA1YzkwMyAqLworcmIxMSA9IC0xLjc0MzM5NjMxMDA0NDEwODQxMzM3NjQ1OTMxNDIxNDI3MzczZTlMLCAgLyogMHhjMDFkOWZhOCwgMHg3NzU4MmQyYSwgMHhjMTgzYjhhYiwgMHg3ZTAwY2IwNSAqLworcmIxMiA9IC05LjU3NjU1MjMzNTk2OTM0OTE1NzI3NTczMTQxMzU3NDcxNzAzZThMLCAgLyogMHhjMDFjYzhhNSwgMHg0NjBjYzY4NSwgMHhkMDI3MWZhMCwgMHg2YTcwZTNkYSAqLworcmIxMyA9IC0yLjI2MzIwMDYyNzMxMzM5MzUzMDM1MjU0NzA0MDgyNDk1MDY2ZThMLCAgLyogMHhjMDFhYWZhYiwgMHhkN2Q3NjcyMSwgMHhjOTcyMGUxMSwgMHg2YThiZDQ4OSAqLworcmIxNCA9IC0xLjQyNzc3MzAyOTk2MjYzMjU2Njg2MDAyOTczODUxODM3MDM5ZTdMLCAgLyogMHhjMDE2YjNiOCwgMHhjNDk5Njg5ZiwgMHgyYjg4ZDk2NSwgMHhjMzI0MTRmOSAqLworc2IxICA9ICAxLjA4NTEyODY5NzA1NTk0NTQwMjExMDMzNzMzOTc2MzQ4NTA2ZTJMLCAgLyogMHg0MDA1YjIwZCwgMHgyZGI3NTI4ZCwgMHgwMGQyMGRjYiwgMHg4NThmNjE5MSAqLworc2IyICA9ICA1LjAyNzU3NzEzNzYxMzkwNDYwNTM0NDk0NTMwNTM3NTcyODM0ZTNMLCAgLyogMHg0MDBiM2EzOSwgMHgzYmY0YTY5MCwgMHgzMDI1ZDI4ZCwgMHhmZDQwYTg5MSAqLworc2IzICA9ICAxLjMxMDE5MTA3MjA1NDEyODcwMDU5MzMxNjQ3MDc4MzI4NDMwZTVMLCAgLyogMHg0MDBmZmZjYiwgMHgxYjcxZDA1ZSwgMHgzYjI4MzYxZCwgMHgyYTNjMzY5MCAqLworc2I0ICA9ICAyLjEzMDIxNTU1MTUyMjk2ODQ2MTY2NzM2NzU3NDU1MDE4MDMwZTZMLCAgLyogMHg0MDE0MDQwOSwgMHgzYzY5ODRkZiwgMHhjNDQ5MWQ3YywgMHhiMDRhYTA4ZCAqLworc2I1ICA9ICAyLjI2NjQ5MTA1MjgxODIwODYxOTUzODY4NTY4NjE5NzY4Mjg2ZTdMLCAgLyogMHg0MDE3NTlkNiwgMHhjZTg3MzZmMCwgMHhmMjhhZDAzNywgMHgyYTkwMWUwYyAqLworc2I2ICA9ICAxLjYxMDcxOTM5NDkwODc1OTIxODEyMzE4Njg0MTQzMDc2MDgxZThMLCAgLyogMHg0MDFhMzMzOCwgMHg2ODZmYjU0MSwgMHg2YmQyN2QwNiwgMHg0Zjk1YzlhYyAqLworc2I3ICA9ICA3LjY2ODk1NjczODQ0MzAxODUyNjc2MDU2NzUwNDk3OTkxOTY2ZThMLCAgLyogMHg0MDFjNmRhZiwgMHgzMWNlYzEyMSwgMHg1NDY5OTEyNiwgMHg0YmQ5YmY5ZSAqLworc2I4ICA9ICAyLjQxODg0NDUwNDM2MTAxOTM2NDM2MDIzMDU4MTk2MDQyNTI2ZTlMLCAgLyogMHg0MDFlMjA1OSwgMHg0NmIwYjhkNywgMHg4N2I2NGNiZiwgMHg3OGJjMjk2ZCAqLworc2I5ICA9ICA0LjkyNDAzMDU1ODg0MDcxNjk1MDkzMzA1MjkxNTM1MTA3NjY2ZTlMLCAgLyogMHg0MDFmMjU3ZSwgMHhiZTVlZDczOSwgMHgzOWUxNzM0NiwgMHhjYWRkMmU1NSAqLworc2IxMCA9ICA2LjE4NjI3Nzg2MzY1NTg3NDg2NDU5NjMzNjE1NTczNzg2NDE2ZTlMLCAgLyogMHg0MDFmNzBiYiwgMHgxYmU3YTdlNywgMHg2YTQ1YjVhZSwgMHg2MDdjNzBmMCAqLworc2IxMSA9ICA0LjQ1ODk4MDEzNDI2NTAxMzc4MDk3NDMwMjI2MzI0NzQzMTk5ZTlMLCAgLyogMHg0MDFmMDljNiwgMHhhMzI2NDNkNywgMHhmMTcyNDYyMCwgMHg5ZWE0NmMzMiAqLworc2IxMiA9ICAxLjYzMDA2MTE1NzYzMzI5ODQ4MTE3MTYwMzQ0ODU0MjI0OTc1ZTlMLCAgLyogMHg0MDFkODRhMywgMHgwOTk2ODg3ZiwgMHg2NWE0ZjQzYiwgMHg5NzhjMWQ3NCAqLworc2IxMyA9ICAyLjM5MjE2NzE3MDEyNDIxNjk3NDQ2MzA0MDE1ODQ3NTY3NzIxZThMLCAgLyogMHg0MDFhYzg0NSwgMHgwOWEwNjVjMiwgMHgzMDA5NWRhNywgMHg5ZDcyZDZhZSAqLworc2IxNCA9ICA3Ljg0ODM3MzI5MDA5Mjc4Njk0OTM3MjUwMzU4ODEwMjI1NjA5ZTZMOyAgLyogMHg0MDE1ZGYwNiwgMHhkNTI5MGUxNSwgMHg2MzAzMWZhYywgMHg0ZDljODk0YyAqLworLyoKKyAqIERvbWFpbiBbOSwxMDhdLCByYW5nZSB+Wy01LjMyNGUtMzgsNS4zNDBlLTM4XToKKyAqIHxsb2coeCplcmZjKHgpKSArIHgqKjIgKyAwLjU2MjUgLSByKHgpL3MoeCl8IDwgMioqLTEyNAorICovCitzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKK3JjMCAgPSAtOS44NjQ5NDI5MjQ3MDAwODcwNzE3MTM2NzU2NzY1MjkzNTY3M2UtM0wsIC8qIDB4YmZmODQzNDEsIDB4MjM5ZTg2ZjQsIDB4MmY1N2U1NWIsIDB4MWFhMTBmZDMgKi8KK3JjMSAgPSAtMS4yNjIyOTQ0Nzc0NzMxNTA5NjQwNjUxODg0NjQxMTU2MjI2NkwsICAgIC8qIDB4YmZmZjQzMjUsIDB4YmIxYWFiMjgsIDB4ZGEzOTVjZDksIDB4ZmI4NjFjMTUgKi8KK3JjMiAgPSAtNi4xMzc0MjYzNDQzODkyMjU5MTc4MDc0MjYzNzcyODY2NjE2MmUxTCwgIC8qIDB4YzAwNGVhZmUsIDB4N2RkNTFjZDgsIDB4M2M3YzU5MjgsIDB4NzUxZTUwY2YgKi8KK3JjMyAgPSAtMS41MDQ1NTgzNTQ3ODkwODI4MDQwMjkxMjg1NDMzODQyMTUxN2UzTCwgIC8qIDB4YzAwOTc4MjMsIDB4YmMxNWI5YWIsIDB4M2Q2MDc0NWMsIDB4NTIzZTgwYTUgKi8KK3JjNCAgPSAtMi4wNDQxNTYzMTg2NTg2MTU0OTkyMDE4NDAzOTkwMjk0NTY4NWU0TCwgIC8qIDB4YzAwZDNmNjYsIDB4NDBiM2ZjMDQsIDB4NTM4OGYyZWMsIDB4YjAwOWUxZjAgKi8KK3JjNSAgPSAtMS41NzYyNTY2Mjk4MTcxNDU4Mjc1MzQ5MDYxMDU2MDAzNzYzOGU1TCwgIC8qIDB4YzAxMDMzZGMsIDB4ZDRkYzk1YjYsIDB4ZmQ0ZGE5M2IsIDB4ZjM1NWI0YTkgKi8KK3JjNiAgPSAtNi43MzQ3MzQ1MTYxNjc1MjUyODQwMjkxNzUzODAzMzI4Mzc5NGU1TCwgIC8qIDB4YzAxMjQ4ZDgsIDB4MmU3M2E0ZjksIDB4Y2RlZDQ5YzUsIDB4ZmEzYmZlYjcgKi8KK3JjNyAgPSAtMS40NzQzMzE2NTQyMTM4NzQ4MzE2NzE4NjY4Mzc2NDM2NDg1N2U2TCwgIC8qIDB4YzAxMzY3ZjEsIDB4YmE3N2E4ZjcsIDB4Y2ZkZDBkYmIsIDB4MjVkNTU0YjMgKi8KK3JjOCAgPSAtMS4zODgxMTk4MTgwNzg2ODgyODU2Mzc5NDkyOTk5Nzc0NDEzOWU2TCwgIC8qIDB4YzAxMzUyZTUsIDB4N2QxNmQ5YWQsIDB4YmJkY2JmMzgsIDB4MzhmYmM1ZWEgKi8KK3JjOSAgPSAtMy41OTY1OTcwMDUzMDgzMTgyNTY0MDc2NjQ3OTY5ODE1NTA2MGU1TCwgIC8qIDB4YzAxMTVmM2EsIDB4ZWNkNTdmNDUsIDB4MjFmOGFkNmMsIDB4OTEwYTU5NTggKi8KK3NjMSAgPSAgNy43MjczMDc1MzAyMjkwODI5ODYzNzUwODk5ODA3MjYzNTY5NmUxTCwgIC8qIDB4NDAwNTM1MTcsIDB4YTEwZDUyYmMsIDB4ZGFiYjU1YjYsIDB4YmQwMzI4Y2QgKi8KK3NjMiAgPSAgMi4zNjgyNTc1NzM0MTY5NDA1MDUwMDMzMzI2MTc2OTA4MjE4MmUzTCwgIC8qIDB4NDAwYTI4MDgsIDB4M2UwYTliNDIsIDB4ODI5Nzc4NDIsIDB4OWM1ZGUyOWUgKi8KK3NjMyAgPSAgMy43MjIxMDU0MDE3MzAzNDczNTM1Mjg4ODg0NzEzNDA3MzA5OWU0TCwgIC8qIDB4NDAwZTIyY2EsIDB4MWJhODI3ZWYsIDB4YWM4MzkwZDcsIDB4MWZjMzlhNDEgKi8KK3NjNCAgPSAgMy4yNDEzNjAzMjY0NjQxODMzNjcxMjQ2MTAzMzU5MTM5MzQxMmU1TCwgIC8qIDB4NDAxMTNjOGEsIDB4MDIxNmUxMDAsIDB4YzU5ZDFlNDQsIDB4ZjBlNjhkOWQgKi8KK3NjNSAgPSAgMS41NzgzNjEzNTg1MTEzNDM5MzgwMjUwNTgyMzM3MDAwOTE3NWU2TCwgIC8qIDB4NDAxMzgxNTcsIDB4OTViYzc2NjQsIDB4MTc1NzU5NjEsIDB4ZGJlNThlZWIgKi8KK3NjNiAgPSAgNC4xMjg4MTk4MTM5MjA2MzczODAyNjY3OTA4OTcxNDE4MjM1NWU2TCwgIC8qIDB4NDAxNGY4MDEsIDB4OWU4MmU4ZDIsIDB4YjhiM2E3MGUsIDB4ZmQ4NDE4NWQgKi8KK3NjNyAgPSAgNS4yNDQzODQyNzI4OTIxMzQ4ODQxMDU5NjM5NTM2MTU0NDE0MmU2TCwgIC8qIDB4NDAxNTQwMTcsIDB4ODExNzcxMDksIDB4MmFhNmMzYjAsIDB4MWYxMDY2MjUgKi8KK3NjOCAgPSAgMi41OTkwOTU0NDU2MzYxNjEyMTczNTk2MzQyOTcxMDM4MjE0OWU2TCwgIC8qIDB4NDAxNDNkNDUsIDB4YmI5MGE5YjEsIDB4MTJiZjkzOTAsIDB4YTgyN2E3MDAgKi8KK3NjOSAgPSAgMi44MDkzMDY2NTE2OTI4MjUwMTYzOTY1MTk5NTA4MjMzNTY5M2U1TDsgIC8qIDB4NDAxMTEyNTgsIDB4YWE5MjIyMmUsIDB4YTk3ZTMyMTYsIDB4YTIzN2ZhNmMgKi8KKworbG9uZyBkb3VibGUKK2VyZmwobG9uZyBkb3VibGUgeCkKK3sKKwlsb25nIGRvdWJsZSBheCxSLFMsUCxRLHMseSx6LHI7CisJdWludDY0X3QgbHgsIGxseDsKKwlpbnQzMl90IGk7CisJdWludDE2X3QgaHg7CisKKwlFWFRSQUNUX0xEQkwxMjhfV09SRFMoaHgsIGx4LCBsbHgsIHgpOworCisJaWYoKGh4ICYgMHg3ZmZmKSA9PSAweDdmZmYpIHsJLyogZXJmbChuYW4pPW5hbiAqLworCQlpID0gKGh4Pj4xNSk8PDE7CisJCXJldHVybiAoMS1pKStvbmUveDsJLyogZXJmbCgrLWluZik9Ky0xICovCisJfQorCisJYXggPSBmYWJzbCh4KTsKKwlpZihheCA8IDAuODQzNzUpIHsKKwkgICAgaWYoYXggPCAweDFwLTQwTCkgeworCSAgICAgICAgaWYoYXggPCAweDFwLTE2MzczTCkJCisJCSAgICByZXR1cm4gKDgqeCtlZng4KngpLzg7CS8qIGF2b2lkIHNwdXJpb3VzIHVuZGVyZmxvdyAqLworCQlyZXR1cm4geCArIGVmeCp4OworCSAgICB9CisJICAgIHogPSB4Kng7CisJICAgIHIgPSBwcDAreioocHAxK3oqKHBwMit6KihwcDMreioocHA0K3oqKHBwNSt6KihwcDYreioocHA3KworCQl6KihwcDgreipwcDkpKSkpKSkpKTsKKwkgICAgcyA9IG9uZSt6KihxcTEreioocXEyK3oqKHFxMyt6KihxcTQreioocXE1K3oqKHFxNit6KihxcTcrCisJCXoqKHFxOCt6KnFxOSkpKSkpKSkpOworCSAgICB5ID0gci9zOworCSAgICByZXR1cm4geCArIHgqeTsKKwl9CisJaWYoYXggPCAxLjI1KSB7CisJICAgIHMgPSBheC1vbmU7CisJICAgIFAgPSBwYTArcyoocGExK3MqKHBhMitzKihwYTMrcyoocGE0K3MqKHBhNStzKihwYTYrcyoocGE3KworCQlzKihwYTgrcyoocGE5K3MqKHBhMTArcypwYTExKSkpKSkpKSkpKTsKKwkgICAgUSA9IG9uZStzKihxYTErcyoocWEyK3MqKHFhMytzKihxYTQrcyoocWE1K3MqKHFhNitzKihxYTcrCisJCXMqKHFhOCtzKihxYTkrcyoocWExMCtzKihxYTExK3MqcWExMikpKSkpKSkpKSkpOworCSAgICBpZih4Pj0wKSByZXR1cm4gKGVyeCArIFAvUSk7IGVsc2UgcmV0dXJuICgtZXJ4IC0gUC9RKTsKKwl9CisJaWYgKGF4ID49IDkpIHsJCQkvKiBpbmY+fHh8Pj0gOSAqLworCSAgICBpZih4Pj0wKSByZXR1cm4gKG9uZS10aW55KTsgZWxzZSByZXR1cm4gKHRpbnktb25lKTsKKwl9CisJcyA9IG9uZS8oYXgqYXgpOworCWlmKGF4IDwgMi44NTcxNSkgewkvKiB8eHwgPCAyLjg1NzE1ICovCisJICAgIFI9cmEwK3MqKHJhMStzKihyYTIrcyoocmEzK3MqKHJhNCtzKihyYTUrcyoocmE2K3MqKHJhNysKKwkJcyoocmE4K3MqKHJhOStzKihyYTEwK3MqKHJhMTErcyoocmExMitzKihyYTEzK3MqKHJhMTQrCisJCXMqKHJhMTUrcypyYTE2KSkpKSkpKSkpKSkpKSkpOworCSAgICBTPW9uZStzKihzYTErcyooc2EyK3MqKHNhMytzKihzYTQrcyooc2E1K3MqKHNhNitzKihzYTcrCisJCXMqKHNhOCtzKihzYTkrcyooc2ExMCtzKihzYTExK3MqKHNhMTIrcyooc2ExMytzKihzYTE0KworCQlzKihzYTE1K3Mqc2ExNikpKSkpKSkpKSkpKSkpKTsKKwl9IGVsc2UgewkvKiB8eHwgPj0gMi44NTcxNSAqLworCSAgICBSPXJiMCtzKihyYjErcyoocmIyK3MqKHJiMytzKihyYjQrcyoocmI1K3MqKHJiNitzKihyYjcrCisJCXMqKHJiOCtzKihyYjkrcyoocmIxMCtzKihyYjExK3MqKHJiMTIrcyoocmIxMysKKwkJcypyYjE0KSkpKSkpKSkpKSkpKTsKKwkgICAgUz1vbmUrcyooc2IxK3MqKHNiMitzKihzYjMrcyooc2I0K3MqKHNiNStzKihzYjYrcyooc2I3KworCQlzKihzYjgrcyooc2I5K3MqKHNiMTArcyooc2IxMStzKihzYjEyK3MqKHNiMTMrCisJCXMqc2IxNCkpKSkpKSkpKSkpKSk7CisJfQorCXogPSAoZmxvYXQpYXg7CisJciA9IGV4cGwoLXoqei0wLjU2MjUpKmV4cGwoKHotYXgpKih6K2F4KStSL1MpOworCWlmKHg+PTApIHJldHVybiAob25lLXIvYXgpOyBlbHNlIHJldHVybiAoci9heC1vbmUpOworfQorCitsb25nIGRvdWJsZQorZXJmY2wobG9uZyBkb3VibGUgeCkKK3sKKwlsb25nIGRvdWJsZSBheCxSLFMsUCxRLHMseSx6LHI7CisJdWludDY0X3QgbHgsIGxseDsKKwl1aW50MTZfdCBoeDsKKworCUVYVFJBQ1RfTERCTDEyOF9XT1JEUyhoeCwgbHgsIGxseCwgeCk7CisKKwlpZigoaHggJiAweDdmZmYpID09IDB4N2ZmZikgewkvKiBlcmZjbChuYW4pPW5hbiAqLworCQkJCQkvKiBlcmZjbCgrLWluZik9MCwyICovCisJICAgIHJldHVybiAoKGh4Pj4xNSk8PDEpK29uZS94OworCX0KKworCWF4ID0gZmFic2woeCk7CisJaWYoYXggPCAwLjg0Mzc1TCkgeworCSAgICBpZihheCA8IDB4MXAtMzRMKQorCQlyZXR1cm4gb25lLXg7CisJICAgIHogPSB4Kng7CisJICAgIHIgPSBwcDAreioocHAxK3oqKHBwMit6KihwcDMreioocHA0K3oqKHBwNSt6KihwcDYreioocHA3KworCQl6KihwcDgreipwcDkpKSkpKSkpKTsKKwkgICAgcyA9IG9uZSt6KihxcTEreioocXEyK3oqKHFxMyt6KihxcTQreioocXE1K3oqKHFxNit6KihxcTcrCisJCXoqKHFxOCt6KnFxOSkpKSkpKSkpOworCSAgICB5ID0gci9zOworCSAgICBpZihheCA8IDAuMjVMKSB7ICAJLyogeDwxLzQgKi8KKwkJcmV0dXJuIG9uZS0oeCt4KnkpOworCSAgICB9IGVsc2UgeworCQlyID0geCp5OworCQlyICs9ICh4LWhhbGYpOworCSAgICAgICByZXR1cm4gaGFsZiAtIHI7CisJICAgIH0KKwl9CisJaWYoYXggPCAxLjI1TCkgeworCSAgICBzID0gYXgtb25lOworCSAgICBQID0gcGEwK3MqKHBhMStzKihwYTIrcyoocGEzK3MqKHBhNCtzKihwYTUrcyoocGE2K3MqKHBhNysKKwkJICAgIHMqKHBhOCtzKihwYTkrcyoocGExMCtzKnBhMTEpKSkpKSkpKSkpOworCSAgICBRID0gb25lK3MqKHFhMStzKihxYTIrcyoocWEzK3MqKHFhNCtzKihxYTUrcyoocWE2K3MqKHFhNysKKwkJICAgIHMqKHFhOCtzKihxYTkrcyoocWExMCtzKihxYTExK3MqcWExMikpKSkpKSkpKSkpOworCSAgICBpZih4Pj0wKSB7CisJICAgICAgICB6ICA9IG9uZS1lcng7IHJldHVybiB6IC0gUC9ROworCSAgICB9IGVsc2UgeworCQl6ID0gZXJ4K1AvUTsgcmV0dXJuIG9uZSt6OworCSAgICB9CisJfQorCisJaWYoYXggPCAxMDgpIHsJCQkvKiB8eHwgPCAxMDggKi8KKyAJICAgIHMgPSBvbmUvKGF4KmF4KTsKKwkgICAgaWYoYXggPCAyLjg1NzE1KSB7CQkvKiB8eHwgPCAyLjg1NzE1ICovCisJICAgICAgICBSPXJhMCtzKihyYTErcyoocmEyK3MqKHJhMytzKihyYTQrcyoocmE1K3MqKHJhNitzKihyYTcrCisJCSAgICBzKihyYTgrcyoocmE5K3MqKHJhMTArcyoocmExMStzKihyYTEyK3MqKHJhMTMrcyoocmExNCsKKwkJICAgIHMqKHJhMTUrcypyYTE2KSkpKSkpKSkpKSkpKSkpOworCSAgICAgICAgUz1vbmUrcyooc2ExK3MqKHNhMitzKihzYTMrcyooc2E0K3MqKHNhNStzKihzYTYrcyooc2E3KworCQkgICAgcyooc2E4K3MqKHNhOStzKihzYTEwK3MqKHNhMTErcyooc2ExMitzKihzYTEzK3MqKHNhMTQrCisJCSAgICBzKihzYTE1K3Mqc2ExNikpKSkpKSkpKSkpKSkpKTsKKwkgICAgfSBlbHNlIGlmKGF4IDwgOSkgeworCQlSPXJiMCtzKihyYjErcyoocmIyK3MqKHJiMytzKihyYjQrcyoocmI1K3MqKHJiNitzKihyYjcrCisJCSAgICBzKihyYjgrcyoocmI5K3MqKHJiMTArcyoocmIxMStzKihyYjEyK3MqKHJiMTMrCisJCSAgICBzKnJiMTQpKSkpKSkpKSkpKSkpOworCQlTPW9uZStzKihzYjErcyooc2IyK3MqKHNiMytzKihzYjQrcyooc2I1K3MqKHNiNitzKihzYjcrCisJCSAgICBzKihzYjgrcyooc2I5K3MqKHNiMTArcyooc2IxMStzKihzYjEyK3MqKHNiMTMrCisJCSAgICBzKnNiMTQpKSkpKSkpKSkpKSkpOworCSAgICB9IGVsc2UgeworCQlpZih4IDwgLTkpIHJldHVybiB0d28tdGlueTsJLyogeCA8IC05ICovCisJCVI9cmMwK3MqKHJjMStzKihyYzIrcyoocmMzK3MqKHJjNCtzKihyYzUrcyoocmM2K3MqKHJjNysKKwkJICAgIHMqKHJjOCtzKnJjOSkpKSkpKSkpOworCQlTPW9uZStzKihzYzErcyooc2MyK3MqKHNjMytzKihzYzQrcyooc2M1K3MqKHNjNitzKihzYzcrCisJCSAgICBzKihzYzgrcypzYzkpKSkpKSkpKTsKKwkgICAgfQorCSAgICB6ID0gKGZsb2F0KWF4OworCSAgICByID0gZXhwbCgteip6LTAuNTYyNSkqZXhwbCgoei1heCkqKHorYXgpK1IvUyk7CisJICAgIGlmKHg+MCkgcmV0dXJuIHIvYXg7IGVsc2UgcmV0dXJuIHR3by1yL2F4OworCX0gZWxzZSB7CisJICAgIGlmKHg+MCkgcmV0dXJuIHRpbnkqdGlueTsgZWxzZSByZXR1cm4gdHdvLXRpbnk7CisJfQorfQpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L3NfZXhwMmwuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9zX2V4cDJsLmMKaW5kZXggNWVkNTE0Yy4uNWFmYTM3ZSAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L3NfZXhwMmwuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvc19leHAybC5jCkBAIC0zNjksNyArMzY5LDcgQEAKIAkJCSAgICB8fCB1LnhiaXRzLm1hbmwgIT0gMAogCQkJICAgIHx8IChoeCAmIDB4ODAwMCkgPT0gMCkKIAkJCQlyZXR1cm4gKHggKyB4KTsJLyogeCBpcyBOYU4gb3IgK0luZiAqLwotCQkJZWxzZQorCQkJZWxzZSAKIAkJCQlyZXR1cm4gKDAuMCk7CS8qIHggaXMgLUluZiAqLwogCQl9CiAJCWlmICh4ID49IDE2Mzg0KQpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L3NfZXhwbC5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL2xkMTI4L3NfZXhwbC5jCmluZGV4IDE3NmM5MzIuLmE2YTk2NzYgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9sZDEyOC9zX2V4cGwuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vbGQxMjgvc19leHBsLmMKQEAgLTM4LDE2ICszOCwxNSBAQAogI2luY2x1ZGUgImZwbWF0aC5oIgogI2luY2x1ZGUgIm1hdGguaCIKICNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKKyNpbmNsdWRlICJrX2V4cGwuaCIKIAotI2RlZmluZQlJTlRFUlZBTFMJMTI4Ci0jZGVmaW5lCUxPRzJfSU5URVJWQUxTCTcKLSNkZWZpbmUJQklBUwkoTERCTF9NQVhfRVhQIC0gMSkKKy8qIFhYWCBQcmV2ZW50IGNvbXBpbGVycyBmcm9tIGVycm9uZW91c2x5IGNvbnN0YW50IGZvbGRpbmcgdGhlc2U6ICovCitzdGF0aWMgY29uc3Qgdm9sYXRpbGUgbG9uZyBkb3VibGUKK2h1Z2UgPSAweDFwMTAwMDBMLAordGlueSA9IDB4MXAtMTAwMDBMOwogCiBzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKLWh1Z2UgPSAweDFwMTAwMDBMLAogdHdvbTEwMDAwID0gMHgxcC0xMDAwMEw7Ci0vKiBYWFggUHJldmVudCBnY2MgZnJvbSBlcnJvbmVvdXNseSBjb25zdGFudCBmb2xkaW5nIHRoaXM6ICovCi1zdGF0aWMgdm9sYXRpbGUgY29uc3QgbG9uZyBkb3VibGUgdGlueSA9IDB4MXAtMTAwMDBMOwogCiBzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKIC8qIGxvZygyKioxNjM4NCAtIDAuNSkgcm91bmRlZCB0b3dhcmRzIHplcm86ICovCkBAIC01NiwxODQgKzU1LDE2IEBACiAvKiBsb2coMioqKC0xNjM4MS02NC0xKSkgcm91bmRlZCB0b3dhcmRzIHplcm86ICovCiB1X3RocmVzaG9sZCA9IC0xMTQzMy40NjI3NDMzMzYyOTc4Nzg4MzcyNDM4NDM0NTI2MjE1MDNMOwogCi1zdGF0aWMgY29uc3QgZG91YmxlCi0vKgotICogbG4yL0lOVEVSVkFMUyA9IEwxK0wyIChoaStsbyBkZWNvbXBvc2l0aW9uIGZvciBtdWx0aXBsaWNhdGlvbikuICBMMSBtdXN0Ci0gKiBoYXZlIGF0IGxlYXN0IDIyICg9IGxvZzIofExEQkxfTUlOX0VYUC1leHRyYXN8KSArIGxvZzIoSU5URVJWQUxTKSkgbG93ZXN0Ci0gKiBiaXRzIHplcm8gc28gdGhhdCBtdWx0aXBsaWNhdGlvbiBvZiBpdCBieSBuIGlzIGV4YWN0LgotICovCi1JTlZfTCA9IDEuODQ2NjQ5NjUyMzM3ODczMWUrMiwJCS8qICAweDE3MTU0NzY1MmI4MmZlLjBwLTQ1ICovCi1MMiA9IC0xLjAyNTM2NzA2Mzg4OTQ3MzFlLTI5OwkJLyogLTB4MS45ZmYwMzQyNTQyZmMzcC05NyAqLwotc3RhdGljIGNvbnN0IGxvbmcgZG91YmxlCi0vKiAweDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2ODAwMDAwMHAtOCAqLwotTDEgPSAgNS40MTUyMTIzNDgxMjQ1NzI3Mjk4MjIxMjU5NTkxNDU2NzUwOGUtM0w7Ci0KLXN0YXRpYyBjb25zdCBsb25nIGRvdWJsZQotLyoKLSAqIERvbWFpbiBbLTAuMDAyNzA4LCAwLjAwMjcwOF0sIHJhbmdlIH5bLTIuNDAyMWUtMzgsIDIuNDIzNGUtMzhdOgotICogfGV4cCh4KSAtIHAoeCl8IDwgMioqLTEyNC45Ci0gKiAoMC4wMDI3MDggaXMgbG4yLygyKklOVEVSVkFMUykgcm91bmRlZCB1cCBhIGxpdHRsZSkuCi0gKi8KLUEyICA9ICAwLjUsCi1BMyAgPSAgMS42NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY1MTA4NTUwMGUtMUwsCi1BNCAgPSAgNC4xNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjQyNTg4NTMyMGUtMkwsCi1BNSAgPSAgOC4zMzMzMzMzMzMzMzMzMzMzMzMzNDUyMjg3NzE2MDE3NTg0MmUtM0wsCi1BNiAgPSAgMS4zODg4ODg4ODg4ODg4ODg4ODg4OTk3MTEzOTc1MTU5NjgzNmUtM0w7Ci0KLXN0YXRpYyBjb25zdCBkb3VibGUKLUE3ICA9ICAxLjk4NDEyNjk4NDEyNjk0NzFlLTQsCi1BOCAgPSAgMi40ODAxNTg3MzAxNTg1Mjg0ZS01LAotQTkgID0gIDIuNzU1NzMyNDI3NzQxMTIzNGUtNiwKLUExMCA9ICAyLjc1NTczMzM3MjIzNzUwNzJlLTc7Ci0KLXN0YXRpYyBjb25zdCBzdHJ1Y3QgewotCS8qCi0JICogaGkgbXVzdCBiZSByb3VuZGVkIHRvIGF0IG1vc3QgMTA2IGJpdHMgc28gdGhhdCBtdWx0aXBsaWNhdGlvbgotCSAqIGJ5IHIxIGluIGV4cG0xbCgpIGlzIGV4YWN0LCBidXQgaXQgaXMgcm91bmRlZCB0byA4OCBiaXRzIGR1ZSB0bwotCSAqIGhpc3RvcmljYWwgYWNjaWRlbnRzLgotCSAqLwotCWxvbmcgZG91YmxlCWhpOwotCWxvbmcgZG91YmxlCWxvOwotfSB0YmxbSU5URVJWQUxTXSA9IHsKLQkweDFwMEwsIDB4MHAwTCwKLQkweDEuMDE2M2RhOWZiMzMzNTZkODRhNjZhZXAwTCwgMHgzLjM2ZGNkZmE0MDAzZWMwNGMzNjBiZTI0MDQwNzhwLTkyTCwKLQkweDEuMDJjOWEzZTc3ODA2MGVlNmY3Y2FjYXAwTCwgMHg0LmY3YTI5YmRlOTNkNzBhMmNhYmM1Y2I4OWJhMTBwLTkyTCwKLQkweDEuMDQzMTVlODZlN2Y4NGJkNzM4ZjlhMnAwTCwgMHhkLmE0N2U2ZWQwNDBiYjRiZmMwNWFmNjQ1NWU5YjhwLTk2TCwKLQkweDEuMDU5YjBkMzE1ODU3NDNhZTdjNTQ4ZXAwTCwgMHhiLjY4Y2E0MTdmZTUzZTM0OTVmN2RmNGJhZjg0YTBwLTkyTCwKLQkweDEuMDcwNmIyOWRkZjZkZGM2ZGM0MDNhOHAwTCwgMHgxLmQ4N2IyN2VkMDdjYjhiMDkyYWM3NWUzMTE3NTNwLTg4TCwKLQkweDEuMDg3NDUxODc1OWJjODA4YzM1ZjI1Y3AwTCwgMHgxLjk0MjdmYTJiMDQxYjJkNjgyOWQ4OTkzYTBkMDFwLTg4TCwKLQkweDEuMDllM2VjYWM2ZjM4MzQ1MjFlMDYwY3AwTCwgMHg1Ljg0ZDZiNzRiYTJlMDIzZGE3MzBlN2ZjY2I3NThwLTkyTCwKLQkweDEuMGI1NTg2Y2Y5ODkwZjYyOThiOTJiNnAwTCwgMHgxLjE4NDJhOTgzNjQyOTE0MDhiM2NlYjBhMmEyYmJwLTg4TCwKLQkweDEuMGNjOTIyYjcyNDdmNzQwN2I3MDViOHAwTCwgMHg5LjNkYzVlOGFhYzU2NGU2ZmUyZWYxZDQzMWZkOThwLTkyTCwKLQkweDEuMGUzZWMzMmQzZDFhMjAyMDc0MmU0ZXAwTCwgMHgxLjhhZjZhNTUyYWM0YjM1OGIxMTI5ZTlmOTY2YTRwLTg4TCwKLQkweDEuMGZiNjZhZmZlZDMxYWYyMzIwOTFkY3AwTCwgMHgxLjhhMTQyNjUxNGUwYjYyN2JkYTY5NGE0MDBhMjdwLTg4TCwKLQkweDEuMTEzMDFkMDEyNWI1MGE0ZWJiZjFhZXAwTCwgMHhkLjkzMThjZWFjNWNjNDdhYjE2NmVlNTc0MjcxNzhwLTkyTCwKLQkweDEuMTJhYmRjMDZjMzFjYmZiOTJiYWQzMnAwTCwgMHg0LmQ2OGUyZjcyNzBiZGY3Y2VkZjk0ZWIxY2I4MThwLTkyTCwKLQkweDEuMTQyOWFhZWE5MmRkZmIzNDEwMTk0MnAwTCwgMHgxLmIyNTg2ZDAxODQ0YjM4OWJlYTdhZWRkMjIxZDRwLTg4TCwKLQkweDEuMTVhOThjOGE1OGU1MTI0ODBkNTczY3AwTCwgMHgxLmQ1NjEzYmY5MmEyYjYxOGVlMzFiMzc2YzI2ODlwLTg4TCwKLQkweDEuMTcyYjgzYzdkNTE3YWRjZGY3YzhjNHAwTCwgMHgxLjBlYjE0YTc5MjAzNTUwOWZmN2Q3NTg2OTNmMjRwLTg4TCwKLQkweDEuMThhZjkzODhjOGRlOWJiYmY3MGI5YXAwTCwgMHgzLmMyNTA1Yzk3YzAxMDJlNWYxMjExOTQxZDI4NDBwLTkyTCwKLQkweDEuMWEzNWJlYjZmY2I3NTNjYjY5OGY2OHAwTCwgMHgxLjJkMWM4MzVhNmMzMDcyNGQ1Y2ZhZTMxYjg0ZTVwLTg4TCwKLQkweDEuMWJiZTA4NDA0NWNkMzlhYjFlNzJiNHAwTCwgMHg0LjI3ZTM1ZjlhY2I1N2U0NzM5MTU1MTlhMWI0NDhwLTkyTCwKLQkweDEuMWQ0ODczMTY4YjlhYTc4MDViODAyOHAwTCwgMHg5LjkwZjA3YTk4YjQyMjA2ZTQ2MTY2Y2YwNTFkNzBwLTkyTCwKLQkweDEuMWVkNTAyMmZjZDkxY2I4ODE5ZmY2MHAwTCwgMHgxLjEyMWQxZTUwNGQzNmM0NzQ3NGM5YjdkZTYwNjdwLTg4TCwKLQkweDEuMjA2M2I4ODYyOGNkNjNiOGVlYjAyOHAwTCwgMHgxLjUwOTI5ZDBmYzQ4N2QyMWMyYjg0MDA0MjY0ZGVwLTg4TCwKLQkweDEuMjFmNDk5MTdkZGM5NjI1NTJmZDI5MnAwTCwgMHg5LjRiZGI0YjYxZWE2MjQ3N2NhYTFkY2U4MjNiYTBwLTkyTCwKLQkweDEuMjM4N2E2ZTc1NjIzODY2YzFmYWRiMHAwTCwgMHgxLmMxNWNiNTkzYjAzMjg1NjY5MDJkZjY5ZTRkZTJwLTg4TCwKLQkweDEuMjUxY2U0ZmIyYTYzZjM1ODJhYjdkZXAwTCwgMHg5LmU5NDgxMWE5YzhhZmRjZjc5NjkzNGJjNjUyZDBwLTkyTCwKLQkweDEuMjZiNDU2NWUyN2NkZDI1N2E2NzMyOHAwTCwgMHgxLmQzYjI0OWRjZTRlOTE4NmRkZDVmZjQ0ZTZiMDhwLTkyTCwKLQkweDEuMjg0ZGZlMWY1NjM4MDk2Y2YxNWNmMHAwTCwgMHgzLmNhMDk2N2ZkYWEyZTUyZDdjODEwNmYyZTI2MmNwLTkyTCwKLQkweDEuMjllOWRmNTFmZGVlMTJjMjVkMTVmNHAwTCwgMHgxLmEyNGFhM2JjYTg5MGFjMDhkMjAzZmVkODBhMDdwLTg4TCwKLQkweDEuMmI4N2ZkMGRhZDk4ZmZkZGVhNDY1MnAwTCwgMHgxLjhmY2FiODg0NDJmZGMzY2I2ZGU0NTE5MTY1ZWRwLTg4TCwKLQkweDEuMmQyODVhNmU0MDMwYjQwMDkxZDUzNnAwTCwgMHhkLjA3NTM4NDU4OWMxY2QxYjNlNDAxOGE2YjEzNDhwLTkyTCwKLQkweDEuMmVjYWZhOTNlMmY1NjExY2EwZjQ1Y3AwTCwgMHgxLjUyMzgzM2FmNjExYmRjZGEyNTNjNTU0Y2YyNzhwLTg4TCwKLQkweDEuMzA2ZmUwYTMxYjcxNTJkZThkNWE0NnAwTCwgMHgzLjA1Yzg1ZWRlY2JjMjczNDM2MjlmNTAyZjFhZjJwLTkyTCwKLQkweDEuMzIxNzBmYzRjZDgzMTM1MzljZjFjMnAwTCwgMHgxLjAwOGY4NmRkZTMyMjBhZTE3YTAwNWI2NDEyYmVwLTg4TCwKLQkweDEuMzNjMDhiMjY0MTZmZjRjOWM4NjEwY3AwTCwgMHgxLjk2Njk2YmY5NWQxNTkzMDM5NTM5ZDk0ZDY2MmJwLTg4TCwKLQkweDEuMzU2YzU1ZjkyOWZmMGM5NDYyMzQ3NnAwTCwgMHgzLjczYWYzOGQ2ZDhkNmY5NTA2YzliYmM5M2NiYzBwLTkyTCwKLQkweDEuMzcxYTczNzNhYTljYWE3MTQ1NTAyZXAwTCwgMHgxLjQ1NDc5ODdlM2UxMjUxNmJmOWM2OTliZTQzMmZwLTg4TCwKLQkweDEuMzhjYWU2ZDA1ZDg2NTg1YTljYjBkOHAwTCwgMHgxLmJlZDBjODUzYmQzMGEwMjc5MDkzMWViMmU4ZjBwLTg4TCwKLQkweDEuM2E3ZGIzNGU1OWZmNmVhMWJjOTI5OHAwTCwgMHgxLmUwYTFkMzM2MTYzZmUyZjg1MmNlZWIxMzQwNjdwLTg4TCwKLQkweDEuM2MzMmRjMzEzYThlNDg0MDAxZjIyOHAwTCwgMHhiLjU4ZjM3NzVlMDZhYjY2MzUzMDAxZmFlOWZjYTBwLTkyTCwKLQkweDEuM2RlYTY0YzEyMzQyMjM1YjQxMjIzZXAwTCwgMHgxLjNkNzczZmJhMmNiODJiODI0NDI2N2M1NDQ0M2ZwLTkyTCwKLQkweDEuM2ZhNDUwNGFjODAxYmEwYmY3MDFhYXAwTCwgMHg0LjE4MzJmYjhjMWM4ZGJkZmYyYzQ5OTA5ZTZjNjBwLTkyTCwKLQkweDEuNDE2MGEyMWY3MmUyOWY4NDMyNWI4ZXAwTCwgMHgxLjNkYjYxZmIzNTJmMDU0MGU2YmEwNTYzNDQxM2VwLTg4TCwKLQkweDEuNDMxZjVkOTUwYTg5NmRjNzA0NDM5NHAwTCwgMHgxLjBjY2VjODFlMjRiMGNhZmY3NTgxZWY0MTI3ZjdwLTkyTCwKLQkweDEuNDRlMDg2MDYxODkyZDAzMTM2ZjQwOHAwTCwgMHgxLmRmMDE5ZmJkNGYzYjQ4NzA5Yjc4NTkxZDVjYjVwLTg4TCwKLQkweDEuNDZhNDFlZDFkMDA1NzcyNTEyZjQ1OHAwTCwgMHgxLjIyOWQ5N2RmNDA0ZmYyMWYzOWMxYjU5NGQzYThwLTg4TCwKLQkweDEuNDg2YTJiNWMxM2NkMDEzYzFhM2I2OHAwTCwgMHgxLjA2MmYwM2MzZGQ3NWNlODc1N2Y3ODBlNmVjOTlwLTg4TCwKLQkweDEuNGEzMmFmMGQ3ZDNkZTY3MmQ4YmNmNHAwTCwgMHg2LmY5NTg2NDYxZGIxZDg3OGIxZDE0OGJkM2NjYjhwLTkyTCwKLQkweDEuNGJmZGFkNTM2MmEyNzFkNDM5N2FmZXAwTCwgMHhjLjQyZTIwZTAzNjNiYTJlMTU5YzU3OWY4MmU0YjBwLTkyTCwKLQkweDEuNGRjYjI5OWZkZGQwZDYzYjM2ZWYxYXAwTCwgMHg5LmUwY2M0ODRiMjVhNTU2NmQwYmQ1ZjU4YWQyMzhwLTkyTCwKLQkweDEuNGY5YjI3NjlkMmNhNmFkMzNkOGI2OHAwTCwgMHgxLmFhMDczZWU1NWUwMjg0OTdhMzI5YTczMzNkYmFwLTg4TCwKLQkweDEuNTE2ZGFhMmNmNjY0MWMxMTJmNTJjOHAwTCwgMHg0LmQ4MjIxOTBlNzE4MjI2MTc3ZDc2MDhkMjAwMzhwLTkyTCwKLQkweDEuNTM0MmI1NjlkNGY4MWRmMGE4M2M0OHAwTCwgMHgxLmQ4NmE2M2Y0ZTY3MmEzZTQyOTgwNWIwNDk0NjVwLTg4TCwKLQkweDEuNTUxYTRjYTVkOTIwZWM1MmVjNjIwMnAwTCwgMHg0LjM0Y2E2NzI2NDVkYzZjMTI0ZDY2MTlhODc1NzRwLTkyTCwKLQkweDEuNTZmNDczNmI1MjdkYTY2ZWNiMDA0NnAwTCwgMHgxLjY0ZWIzYzAwZjJmNWFiM2Q4MDFkN2NjNzI3MmRwLTg4TCwKLQkweDEuNThkMTJkNDk3YzdmZDI1MmJjMmI3MnAwTCwgMHgxLjQzYmNmMmVjOTM2YTk3MGQ5Y2MyNjZmMDA3MmZwLTg4TCwKLQkweDEuNWFiMDdkZDQ4NTQyOTU4YzkzMDE1MHAwTCwgMHgxLjkxZWIzNDVkODhkN2M4MTI4MGUwNjlmYmRiNjNwLTg4TCwKLQkweDEuNWM5MjY4YTU5NDZiNzAxYzRiMWI4MHAwTCwgMHgxLjY5ODZhMjAzZDg0ZTZhNGE5MmYxNzllNzE4ODlwLTg4TCwKLQkweDEuNWU3NmYxNWFkMjE0ODZlOWJlNGMyMHAwTCwgMHgzLjk5NzY2YTA2NTQ4YTA1ODI5ZTg1M2JkYjJiNTJwLTkyTCwKLQkweDEuNjA1ZTFiOTc2ZGMwOGIwNzZmNTkyYXAwTCwgMHg0Ljg2ZTNiMzRlYWQxYjQ3NjlkZjg2N2I5Yzg5Y2NwLTkyTCwKLQkweDEuNjI0N2ViMDNhNTU4NGIxZjBmYTA2ZXAwTCwgMHgxLmQyZGE0MmJiMWNlYWY5ZjczMjI3NWI4YWVmMzBwLTg4TCwKLQkweDEuNjQzNDYzNGNjYzMxZmM3NmY4NzE0Y3AwTCwgMHg0LmVkOWE0ZTQxMDAwMzA3MTAzYTE4Y2Y3YTZlMDhwLTkyTCwKLQkweDEuNjYyMzg4MjU1MjIyNDkxMjdkOWUyOHAwTCwgMHgxLmI4ZjMxNGEzMzdmNGRjMGEzYWRmMTc4N2ZmNzRwLTg4TCwKLQkweDEuNjgxNTVkNDRjYTk3MzA4MWM1NzIyNnAwTCwgMHgxLmI5ZjMyNzA2YmZlNGU2MjdkODA5YTg1ZGNjNjZwLTg4TCwKLQkweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMnAwTCwgMHgxLjY2ZWE5NTdkM2UzYWRlYzE3NTEyNzc1MDk5ZGFwLTg4TCwKLQkweDEuNmMwMTI3NTBiZGFiZWVkNzZhOTk4MHAwTCwgMHhmLjRmMzNmZGViOGIwZWNkODMxMTA2ZjU3YjNkMDBwLTk2TCwKLQkweDEuNmRmYjIzYzY1MWEyZWYyMjBlMmNiZXAwTCwgMHgxLmJiYWE4MzRiM2YxMTU3N2NlZWZiZTZjMWM0MTFwLTkyTCwKLQkweDEuNmZmN2RmOTUxOTQ4M2NmODdlMWI0ZXAwTCwgMHgxLjNlMjEzYmZmOWI3MDJkNWFhNDc3YzEyNTIzY2VwLTg4TCwKLQkweDEuNzFmNzVlOGVjNWY3M2RkMjM3MGYyZXAwTCwgMHhmLjBhY2Q2Y2I0MzRiNTYyZDllOGEyMGFkZGE2NDhwLTkyTCwKLQkweDEuNzNmOWE0OGE1ODE3M2JkNWM5YTRlNnAwTCwgMHg4LmFiMTE4MmFlMjE3ZjNhNzY4MTc1OTU1M2U4NDBwLTkyTCwKLQkweDEuNzVmZWI1NjQyNjdjOGJmNmU5YWEzMnAwTCwgMHgxLmE0OGIyNzA3MTgwNWU2MWExN2I5NTRhMmRhZDhwLTg4TCwKLQkweDEuNzgwNjk0ZmRlNWQzZjYxOWFlMDI4MHAwTCwgMHg4LjU4YjJiYjJiZGNmODZjZDA4ZTM1ZmIwNGMwZjBwLTkyTCwKLQkweDEuN2ExMTQ3M2ViMDE4NmQ3ZDUxMDIzZXAwTCwgMHgxLjZjZGExZjVlZjQyYjY2OTc3OTYwNTMxZTgyMWJwLTg4TCwKLQkweDEuN2MxZWQwMTMwYzEzMjdjNDkzMzQ0NHAwTCwgMHgxLjkzNzU2MmIyZGM5MzNkNDRmYzgyOGVmZDRjOWNwLTg4TCwKLQkweDEuN2UyZjMzNmNmNGU2MjEwNWQwMmJhMHAwTCwgMHgxLjU3OTdlMTcwYTE0MjdmOGZjZGY1ZjM5MDYxMDhwLTg4TCwKLQkweDEuODA0Mjc1NDNlMWExMWI2MGRlNjc2NHAwTCwgMHg5LmEzNTRlYTcwNmI4ZTRkOGI3MThhNjcyYmY3YzhwLTkyTCwKLQkweDEuODI1ODk5OTRjY2UxMjhhY2Y4OGFmYXAwTCwgMHhiLjM0YTAxMGY2YWQ2NWNiYmFjMGY1MzJkMzliZTBwLTkyTCwKLQkweDEuODQ3MWE0NjIzYzdhY2NlNTJmNmI5NnAwTCwgMHgxLmM2NDA5NTM3MGY1MWY0ODgxNzkxNGRkNzg2NjVwLTg4TCwKLQkweDEuODY4ZDk5YjQ0OTJlYzgwZTQxZDkwYXAwTCwgMHhjLjI1MTcwNzQ4NGQ3M2YxMzZmYjU3Nzk2NTZiNzBwLTkyTCwKLQkweDEuODhhYzdkOThhNjY5OTY2NTMwYmNkZXAwTCwgMHgxLjJkNGU5ZDYxMjgzZWYzODVkZTE3MGFiMjBmOTZwLTg4TCwKLQkweDEuOGFjZTU0MjJhYTBkYjViYTdjNTVhMHAwTCwgMHgxLjkyYzliYjNlNmVkNjFmMjczMzMwNGEzNDZkOGZwLTg4TCwKLQkweDEuOGNmMzIxNmI1NDQ4YmVmMmFhMWNkMHAwTCwgMHgxLjYxYzU1ZDg0YTk4NDhmOGM0NTNiM2NhOGM5NDZwLTg4TCwKLQkweDEuOGYxYWU5OTE1NzczNjJiOTgyNzQ1Y3AwTCwgMHg3LjJlZDgwNGVmYzliNGFlMTQ1OGFlOTQ2MDk5ZDRwLTkyTCwKLQkweDEuOTE0NWIwYjkxZmZjNTg4YTYxYjQ2OHAwTCwgMHgxLmY2YjcwZTAxYzJhOTAyMjlhNGM0MzA5ZWE3MTlwLTg4TCwKLQkweDEuOTM3MzdiMGNkYzVlNGY0NTAxYzNmMnAwTCwgMHg1LjQwYTIyZDJmYzRhZjU4MWI2M2U4MzI2ZWZlOWNwLTkyTCwKLQkweDEuOTVhNDRjYmM4NTIwZWU5YjQ4MzY5NHAwTCwgMHgxLmEwZmM2ZjdjN2Q2MWIyYjNhMjJhMGVhYjJjYWRwLTg4TCwKLQkweDEuOTdkODI5ZmRlNGU0ZjhiOWU5MjBmOHAwTCwgMHgxLjFlOGJkN2VkYjlkNzE0NGI2ZjY4MTgwODRjYzdwLTg4TCwKLQkweDEuOWEwZjE3MGNhMDdiOWJhMzEwOWI4Y3AwTCwgMHg0LjY3MzdiZWIxOWUxZWFkYTY4MjVkM2M1NTc0MjhwLTkyTCwKLQkweDEuOWM0OTE4MmEzZjA5MDFjN2M0NmIwNnAwTCwgMHgxLjFmMmJlNThkZGFkZTUwYzIxNzE4NmM5MGI0NTdwLTg4TCwKLQkweDEuOWU4NjMxOWUzMjMyMzE4MjRjYTc4ZXAwTCwgMHg2LjRjNmUwMTBmOTJjMDgyYmJhZGZhZjYwNWNmZDRwLTkyTCwKLQkweDEuYTBjNjY3YjVkZTU2NGIyOWFkYThiOHAwTCwgMHhjLmFiMzQ5YWEwNDIyYThkYTdkNDUxMmVkYWM1NDhwLTkyTCwKLQkweDEuYTMwOWJlYzRhMmQzMzU4YzE3MWY3NnAwTCwgMHgxLjBkYWFkNTQ3ZmEyMmMyNmQxNjhlYTc2MmQ4NTRwLTg4TCwKLQkweDEuYTU1MDNiMjNlMjU1YzhiNDI0NDkxY3AwTCwgMHhhLmY4N2JjODA1MGE0MDUzODE3MDNlZjdjYWZmNTBwLTkyTCwKLQkweDEuYTc5OWUxMzMwYjM1ODZmMmRmYjJiMHAwTCwgMHgxLjU4ZjFhOTg3OTZjZTg5MDhhZTg1MjIzNmNhOTRwLTg4TCwKLQkweDEuYTllNmI1NTc5ZmRiZjQzZWIyNDNiY3AwTCwgMHgxLmZmNGM0YzU4YjU3MWNmNDY1Y2FmMDdiNGI5ZjVwLTg4TCwKLQkweDEuYWMzNmJiZmQzZjM3OWMwZGI5NjZhMnAwTCwgMHgxLjEyNjVmYzczZTQ4MDcxMmQyMGY4NTk3YThlN2JwLTg4TCwKLQkweDEuYWU4OWY5OTVhZDNhZDVlODczNGQxNnAwTCwgMHgxLjczMjA1YTdmYmMzYWU2NzVlYTQ0MGIxNjJkNmNwLTg4TCwKLQkweDEuYjBlMDcyOThkYjY2NTkwODQyYWNkZXAwTCwgMHgxLmM2ZjZjYTBlNWRjYWUyYWFmZmZhN2EwNTU0Y2JwLTg4TCwKLQkweDEuYjMzYTJiODRmMTVmYWY2YmZkMGU3YXAwTCwgMHgxLmQ5NDdjMjU3NTc4MWRiYjQ5YjEyMzdjODdiNmVwLTg4TCwKLQkweDEuYjU5NzI4ZGU1NTkzOThlMzg4MTExMHAwTCwgMHgxLjY0ODczYzcxNzFmZWZjNDEwNDE2YmUwYTY1MjVwLTg4TCwKLQkweDEuYjdmNzZmMmZiNWU0NmVhYTdiMDgxYXAwTCwgMHhiLjUzYzUzNTRjODkwM2MzNTZlNGI2MjVhYWNjMjhwLTkyTCwKLQkweDEuYmE1YjAzMGExMDY0OTg0MGNiM2M2YXAwTCwgMHhmLjViNDdmMjk3MjAzNzU3ZTFjYzZlYWRjOGJhZDBwLTkyTCwKLQkweDEuYmNjMWU5MDRiYzFkMjI0N2JhMGY0NHAwTCwgMHgxLmIzZDA4Y2QwYjIwMjg3MDkyYmQ1OWJlNGFkOThwLTg4TCwKLQkweDEuYmYyYzI1YmQ3MWUwODg0MDhkNzAyNHAwTCwgMHgxLjE4ZTM0NDlmYTA3M2IzNTY3NjZkZmI1NjhmZjRwLTg4TCwKLQkweDEuYzE5OWJkZDg1NTI5YzIyMjBjYjEyYXAwTCwgMHg5LjFiYTY2Nzk0NDQ5NjRhMzY2NjEyNDAwNDM5NzBwLTk2TCwKLQkweDEuYzQwYWI1ZmZmZDA3YTZkMTRkZjgyMHAwTCwgMHhmLjE4MjhhNTM2NmZkMzg3YTdiZGQ1NGNkZjczMDBwLTkyTCwKLQkweDEuYzY3ZjEyZTU3ZDE0YjRhMjEzN2ZkMnAwTCwgMHhmLjJiMzAxZGQ5ZTZiMTUxYTZkMWY5ZDVkNWY1MjBwLTk2TCwKLQkweDEuYzhmNmQ5NDA2ZTdiNTExYWNiYzQ4OHAwTCwgMHg1LmM0NDJkZGI1NTgyMDE3MWYzMTlkOWU1MDc2YThwLTk2TCwKLQkweDEuY2I3MjBkY2VmOTA2OTE1MDNjYmQxZXAwTCwgMHg5LjQ5ZGI3NjFkOTU1OWFjMGNiNmRkM2VkNTk5ZTBwLTkyTCwKLQkweDEuY2RmMGI1NTVkYzNmOWM0NGY4OTU4ZXAwTCwgMHgxLmFjNTFiZTUxNWY4YzU4YmRmYjZmNTc0MGEzYTRwLTg4TCwKLQkweDEuZDA3MmQ0YTA3ODk3YjhkMGYyMmYyMHAwTCwgMHgxLmExNThlMThmYmJmYzYyNWYwOWY0Y2NhNDA4NzRwLTg4TCwKLQkweDEuZDJmODcwODBkODlmMThhZGUxMjM5OHAwTCwgMHg5LmVhMjAyNWI0YzU2NTUzZjVjZGVlNGM5MjQ3MjhwLTkyTCwKLQkweDEuZDU4MThkY2ZiYTQ4NzI1ZGEwNWFlYXAwTCwgMHgxLjY2ZTBkY2E5ZjU4OWY1NTljMDg3NmZmMjM4MzBwLTg4TCwKLQkweDEuZDgwZTMxNmM5ODM5N2JiODRmOWQwNHAwTCwgMHg4LjgwNWY4NGJlYzYxNGRlMjY5OTAwZGRmOThkMjhwLTkyTCwKLQkweDEuZGE5ZTYwM2RiMzI4NTcwOGMwMWE1YXAwTCwgMHgxLjZkNGM5N2Y2MjQ2ZjBlYzYxNGVjOTVjOTkzOTJwLTg4TCwKLQkweDEuZGQzMjFmMzAxYjQ2MDRiNjk1ZGUzY3AwTCwgMHg2LjMwYTM5MzIxNTI5OWUzMGQ0ZmI3MzUwM2MzNDhwLTk2TCwKLQkweDEuZGZjOTczMzdiOWI1ZWI5NjhjYWMzOHAwTCwgMHgxLmVkMjkxYjcyMjVhOTQ0ZWZkNWJiNTUyNGI5MjdwLTg4TCwKLQkweDEuZTI2NDYxNGY1YTEyOGExMjc2MWZhMHAwTCwgMHgxLjdhZGE2NDY3ZTc3ZjczYmY2NWUwNGM5NWUyOWRwLTg4TCwKLQkweDEuZTUwMmVlNzhiM2ZmNjI3M2QxMzAxNHAwTCwgMHgxLjM5OTFlOGY0OTY1OWUxNjkzYmUxN2FlMWQyZjlwLTg4TCwKLQkweDEuZTdhNTFmYmM3NGM4MzRiNTQ4YjI4MnAwTCwgMHgxLjIzNzg2NzU4YTg0ZjQ5NTYzNTQ2MzRhNDE2Y2VwLTg4TCwKLQkweDEuZWE0YWZhMmE0OTBkOTg1OGY3M2ExOHAwTCwgMHhmLjVkYjMwMWY4NmRlYTIwNjEwY2VlZTEzZWI3YjhwLTkyTCwKLQkweDEuZWNmNDgyZDhlNjdmMDhkYjAzMTJmYXAwTCwgMHgxLjk0OWNlZjQ2MjAxMGJiNGJjNGNlNzJhOTAwZGZwLTg4TCwKLQkweDEuZWZhMWJlZTYxNWEyNzc3MWZkMjFhOHAwTCwgMHgxLjJkYWMxZjZkZDVkMjI5ZmY2OGU0NmYyN2UzZGZwLTg4TCwKLQkweDEuZjI1MmIzNzZiYmE5NzRlODY5NmZjMnAwTCwgMHgxLjYzOTBkNGM2YWQ1NDc2YjUxNjJmNDBlMWQ5YTlwLTg4TCwKLQkweDEuZjUwNzY1YjZlNDU0MDY3NGY4NGI3NnAwTCwgMHgyLjg2MmJhZmY5OTAwMGRmYzQzNTJiYTI5Yjg5MDhwLTkyTCwKLQkweDEuZjdiZmRhZDljYmUxMzg5MTNiNGJmZXAwTCwgMHg3LjJiZDk1YzVjZTcyODBmYTRkMjM0NGEzZjU2MThwLTkyTCwKLQkweDEuZmE3YzE4MTllOTBkODJlOTBhN2U3NHAwTCwgMHhiLjI2M2MxZGMwNjBjMzZmNzY1MGI0YzBmMjMzYThwLTkyTCwKLQkweDEuZmQzYzIyYjhmNzFmMTA5NzViYTRiMnAwTCwgMHgxLjJiY2YzYTVlMTJkMjY5ZDhhZDdjMWE0YTg4NzVwLTg4TAotfTsKLQogbG9uZyBkb3VibGUKIGV4cGwobG9uZyBkb3VibGUgeCkKIHsKLQl1bmlvbiBJRUVFbDJiaXRzIHUsIHY7Ci0JbG9uZyBkb3VibGUgcSwgciwgcjEsIHQsIHR3b3BrLCB0d29wa3AxMDAwMDsKLQlkb3VibGUgZHIsIGZuLCByMjsKLQlpbnQgaywgbiwgbjI7CisJdW5pb24gSUVFRWwyYml0cyB1OworCWxvbmcgZG91YmxlIGhpLCBsbywgdCwgdHdvcGs7CisJaW50IGs7CiAJdWludDE2X3QgaHgsIGl4OwogCisJRE9QUklOVF9TVEFSVCgmeCk7CisKIAkvKiBGaWx0ZXIgb3V0IGV4Y2VwdGlvbmFsIGNhc2VzLiAqLwogCXUuZSA9IHg7CiAJaHggPSB1LnhiaXRzLmV4cHNpZ247CkBAIC0yNDEsNjAgKzcyLDMzIEBACiAJaWYgKGl4ID49IEJJQVMgKyAxMykgewkJLyogfHh8ID49IDgxOTIgb3IgeCBpcyBOYU4gKi8KIAkJaWYgKGl4ID09IEJJQVMgKyBMREJMX01BWF9FWFApIHsKIAkJCWlmIChoeCAmIDB4ODAwMCkgIC8qIHggaXMgLUluZiBvciAtTmFOICovCi0JCQkJcmV0dXJuICgtMSAvIHgpOwotCQkJcmV0dXJuICh4ICsgeCk7CS8qIHggaXMgK0luZiBvciArTmFOICovCisJCQkJUkVUVVJOUCgtMSAvIHgpOworCQkJUkVUVVJOUCh4ICsgeCk7CS8qIHggaXMgK0luZiBvciArTmFOICovCiAJCX0KIAkJaWYgKHggPiBvX3RocmVzaG9sZCkKLQkJCXJldHVybiAoaHVnZSAqIGh1Z2UpOworCQkJUkVUVVJOUChodWdlICogaHVnZSk7CiAJCWlmICh4IDwgdV90aHJlc2hvbGQpCi0JCQlyZXR1cm4gKHRpbnkgKiB0aW55KTsKKwkJCVJFVFVSTlAodGlueSAqIHRpbnkpOwogCX0gZWxzZSBpZiAoaXggPCBCSUFTIC0gMTE0KSB7CS8qIHx4fCA8IDB4MXAtMTE0ICovCi0JCXJldHVybiAoMSArIHgpOwkJLyogMSB3aXRoIGluZXhhY3QgaWZmIHggIT0gMCAqLworCQlSRVRVUk4yUCgxLCB4KTsJCS8qIDEgd2l0aCBpbmV4YWN0IGlmZiB4ICE9IDAgKi8KIAl9CiAKIAlFTlRFUkkoKTsKIAotCS8qIFJlZHVjZSB4IHRvIChrKmxuMiArIGVuZHBvaW50W24yXSArIHIxICsgcjIpLiAqLwotCS8qIFVzZSBhIHNwZWNpYWxpemVkIHJpbnQoKSB0byBnZXQgZm4uICBBc3N1bWUgcm91bmQtdG8tbmVhcmVzdC4gKi8KLQkvKiBYWFggYXNzdW1lIG5vIGV4dHJhIHByZWNpc2lvbiBmb3IgdGhlIGFkZGl0aW9ucywgYXMgZm9yIHRyaWcgZm5zLiAqLwotCS8qIFhYWCB0aGlzIHNldCBvZiBjb21tZW50cyBpcyBub3cgcXVhZHJ1cGxpY2F0ZWQuICovCi0JZm4gPSAoZG91YmxlKXggKiBJTlZfTCArIDB4MS44cDUyIC0gMHgxLjhwNTI7Ci0jaWYgZGVmaW5lZChIQVZFX0VGRklDSUVOVF9JUklOVCkKLQluID0gaXJpbnQoZm4pOwotI2Vsc2UKLQluID0gKGludClmbjsKLSNlbmRpZgotCW4yID0gKHVuc2lnbmVkKW4gJSBJTlRFUlZBTFM7Ci0JayA9IG4gPj4gTE9HMl9JTlRFUlZBTFM7Ci0JcjEgPSB4IC0gZm4gKiBMMTsKLQlyMiA9IGZuICogLUwyOwotCXIgPSByMSArIHIyOwotCi0JLyogUHJlcGFyZSBzY2FsZSBmYWN0b3JzLiAqLwotCS8qIFhYWCBzcGFyYzY0IG11bHRpcGxpY2F0aW9uIGlzIHNvIHNsb3cgdGhhdCBzY2FsYm5sKCkgaXMgZmFzdGVyLiAqLwotCXYuZSA9IDE7Ci0JaWYgKGsgPj0gTERCTF9NSU5fRVhQKSB7Ci0JCXYueGJpdHMuZXhwc2lnbiA9IEJJQVMgKyBrOwotCQl0d29wayA9IHYuZTsKLQl9IGVsc2UgewotCQl2LnhiaXRzLmV4cHNpZ24gPSBCSUFTICsgayArIDEwMDAwOwotCQl0d29wa3AxMDAwMCA9IHYuZTsKLQl9Ci0KLQkvKiBFdmFsdWF0ZSBleHBsKGVuZHBvaW50W24yXSArIHIxICsgcjIpID0gdGJsW24yXSAqIGV4cGwocjEgKyByMikuICovCi0JZHIgPSByOwotCXEgPSByMiArIHIgKiByICogKEEyICsgciAqIChBMyArIHIgKiAoQTQgKyByICogKEE1ICsgciAqIChBNiArCi0JICAgIGRyICogKEE3ICsgZHIgKiAoQTggKyBkciAqIChBOSArIGRyICogQTEwKSkpKSkpKSk7Ci0JdCA9IHRibFtuMl0ubG8gKyB0YmxbbjJdLmhpOwotCXQgPSB0YmxbbjJdLmxvICsgdCAqIChxICsgcjEpICsgdGJsW24yXS5oaTsKKwl0d29wayA9IDE7CisJX19rX2V4cGwoeCwgJmhpLCAmbG8sICZrKTsKKwl0ID0gU1VNMlAoaGksIGxvKTsKIAogCS8qIFNjYWxlIGJ5IDIqKmsuICovCisJLyogWFhYIHNwYXJjNjQgbXVsdGlwbGljYXRpb24gaXMgc28gc2xvdyB0aGF0IHNjYWxibmwoKSBpcyBmYXN0ZXIuICovCiAJaWYgKGsgPj0gTERCTF9NSU5fRVhQKSB7CiAJCWlmIChrID09IExEQkxfTUFYX0VYUCkKIAkJCVJFVFVSTkkodCAqIDIgKiAweDFwMTYzODNMKTsKKwkJU0VUX0xEQkxfRVhQU0lHTih0d29waywgQklBUyArIGspOwogCQlSRVRVUk5JKHQgKiB0d29wayk7CiAJfSBlbHNlIHsKLQkJUkVUVVJOSSh0ICogdHdvcGtwMTAwMDAgKiB0d29tMTAwMDApOworCQlTRVRfTERCTF9FWFBTSUdOKHR3b3BrLCBCSUFTICsgayArIDEwMDAwKTsKKwkJUkVUVVJOSSh0ICogdHdvcGsgKiB0d29tMTAwMDApOwogCX0KIH0KIApAQCAtMzEyLDYgKzExNiwxMiBAQAogICogU2V0dGluZyBUMyB0byAwIHdvdWxkIHJlcXVpcmUgdGhlIHx4fCA8IDB4MXAtMTEzIGNvbmRpdGlvbiB0byBhcHBlYXIKICAqIGluIGJvdGggc3ViaW50ZXJ2YWxzLCBzbyBzZXQgVDMgPSAyKiotNSwgd2hpY2ggcGxhY2VzIHRoZSBjb25kaXRpb24KICAqIGludG8gdGhlIFtUMSwgVDNdIGludGVydmFsLgorICoKKyAqIFhYWCB3ZSBub3cgZG8gdGhpcyBtb3JlIHRvIChwYXJ0aWFsbHkpIGJhbGFuY2UgdGhlIG51bWJlciBvZiB0ZXJtcworICogaW4gdGhlIEMgYW5kIEQgcG9seXMgdGhhbiB0byBhdm9pZCBjaGVja2luZyB0aGUgY29uZGl0aW9uIGluIGJvdGgKKyAqIGludGVydmFscy4KKyAqCisgKiBYWFggdGhlc2UgbWljcm8tb3B0aW1pemF0aW9ucyBhcmUgZXhjZXNzaXZlLgogICovCiBzdGF0aWMgY29uc3QgZG91YmxlCiBUMSA9IC0wLjE2NTksCQkJCS8qIH4tMzAuNjI1LzEyOCAqIGxvZygyKSAqLwpAQCAtMzIxLDYgKzEzMSwxMiBAQAogLyoKICAqIERvbWFpbiBbLTAuMTY1OSwgMC4wMzEyNV0sIHJhbmdlIH5bMi45MTM0ZS00NCwgMS44NDA0ZS0zN106CiAgKiB8KGV4cCh4KS0xLXgteCoqMi8yKS94IC0gcCh4KXwgPCAyKiotMTIyLjAzCisgKgorICogWFhYIG5vbmUgb2YgdGhlIGxvbmcgZG91YmxlIEMgb3IgRCBjb2VmZnMgZXhjZXB0IEMxMCBpcyBjb3JyZWN0bHkgcHJpbnRlZC4KKyAqIElmIHlvdSByZS1wcmludCB0aGVpciB2YWx1ZXMgaW4gJS4zNUxlIGZvcm1hdCwgdGhlIHJlc3VsdCBpcyBhbHdheXMKKyAqIGRpZmZlcmVudC4gIEZvciBleGFtcGxlLCB0aGUgbGFzdCAyIGRpZ2l0cyBpbiBDMyBzaG91bGQgYmUgNTksIG5vdCA2Ny4KKyAqIDY3IGlzIGFwcGFyZW50bHkgZnJvbSByb3VuZGluZyBhbiBleHRyYS1wcmVjaXNpb24gdmFsdWUgdG8gMzYgZGVjaW1hbAorICogcGxhY2VzLgogICovCiBzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKIEMzICA9ICAxLjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY3ZS0xTCwKQEAgLTMzNSw2ICsxNTEsMTMgQEAKIEMxMiA9ICAyLjA4NzY3NTY5ODc4Njc5NTc2NDU3MjcyMjgyNTY2NTIwNjQ5ZS05TCwKIEMxMyA9ICAxLjYwNTkwNDM4MzY3MjUyNDcxNzgzNTQ4NzQ4ODI0MjU1NzA3ZS0xMEw7CiAKKy8qCisgKiBYWFggdGhpcyBoYXMgMSBtb3JlIGNvZWZmIHRoYW4gbmVlZGVkLgorICogWFhYIGNhbiBzdGFydCB0aGUgZG91YmxlIGNvZWZmcyBidXQgbm90IHRoZSBkb3VibGUgbXVsdHMgYXQgQzEwLgorICogV2l0aCBteSBjb2VmZnMgKEMxMC1DMTcgZG91YmxlOyBzID0gYmVzdF9zKToKKyAqIERvbWFpbiBbLTAuMTY1OSwgMC4wMzEyNV0sIHJhbmdlIH5bLTEuMTk3NmUtMzcsIDEuMTk3NmUtMzddOgorICogfChleHAoeCktMS14LXgqKjIvMikveCAtIHAoeCl8IH48IDIqKi0xMjIuNjUKKyAqLwogc3RhdGljIGNvbnN0IGRvdWJsZQogQzE0ID0gIDEuMTQ3MDc0NTU4MDQ5MTkzMmUtMTEsCQkvKiAgMHgxLjkzOTc0YTgxZGFlMzBwLTM3ICovCiBDMTUgPSAgNy42NDcxNjIwMTgxMDkwNDY4ZS0xMywJCS8qICAweDEuYWU3ZjM4MjBhZGFiMXAtNDEgKi8KQEAgLTM1OSw2ICsxODIsMTMgQEAKIEQxMiA9ICAyLjA4NzY3NTY5ODE5NzM4NTI0NDg4Njg2MzE4MDI0ODU0OTQyZS05TCwKIEQxMyA9ICAxLjYwNTkwNDQyMjk3MDA4NDk1MzAxOTI3NDQ4MTIyNDk5MzEzZS0xMEw7CiAKKy8qCisgKiBYWFggdGhpcyBoYXMgMSBtb3JlIGNvZWZmIHRoYW4gbmVlZGVkLgorICogWFhYIGNhbiBzdGFydCB0aGUgZG91YmxlIGNvZWZmcyBidXQgbm90IHRoZSBkb3VibGUgbXVsdHMgYXQgRDExLgorICogV2l0aCBteSBjb2VmZnMgKEQxMS1EMTYgZG91YmxlKToKKyAqIERvbWFpbiBbMC4wMzEyNSwgMC4xNjU5XSwgcmFuZ2UgflstMS4xOTgwZS0zNywgMS4xOTgwZS0zN106CisgKiB8KGV4cCh4KS0xLXgteCoqMi8yKS94IC0gcCh4KXwgfjwgMioqLTEyMi42NQorICovCiBzdGF0aWMgY29uc3QgZG91YmxlCiBEMTQgPSAgMS4xNDcwNzI2MTc2MjA0MzM2ZS0xMSwJCS8qICAweDEuOTM5NzFkYzM5NWQ5ZXAtMzcgKi8KIEQxNSA9ICA3LjY0Nzg1MzIyNDk1ODE2ODZlLTEzLAkJLyogIDB4MS5hZTg5MmUzRDE2ZmNlcC00MSAqLwpAQCAtMzc1LDYgKzIwNSw4IEBACiAJaW50IGssIG4sIG4yOwogCXVpbnQxNl90IGh4LCBpeDsKIAorCURPUFJJTlRfU1RBUlQoJngpOworCiAJLyogRmlsdGVyIG91dCBleGNlcHRpb25hbCBjYXNlcy4gKi8KIAl1LmUgPSB4OwogCWh4ID0gdS54Yml0cy5leHBzaWduOwpAQCAtMzgyLDExICsyMTQsMTEgQEAKIAlpZiAoaXggPj0gQklBUyArIDcpIHsJCS8qIHx4fCA+PSAxMjggb3IgeCBpcyBOYU4gKi8KIAkJaWYgKGl4ID09IEJJQVMgKyBMREJMX01BWF9FWFApIHsKIAkJCWlmIChoeCAmIDB4ODAwMCkgIC8qIHggaXMgLUluZiBvciAtTmFOICovCi0JCQkJcmV0dXJuICgtMSAvIHggLSAxKTsKLQkJCXJldHVybiAoeCArIHgpOwkvKiB4IGlzICtJbmYgb3IgK05hTiAqLworCQkJCVJFVFVSTlAoLTEgLyB4IC0gMSk7CisJCQlSRVRVUk5QKHggKyB4KTsJLyogeCBpcyArSW5mIG9yICtOYU4gKi8KIAkJfQogCQlpZiAoeCA+IG9fdGhyZXNob2xkKQotCQkJcmV0dXJuIChodWdlICogaHVnZSk7CisJCQlSRVRVUk5QKGh1Z2UgKiBodWdlKTsKIAkJLyoKIAkJICogZXhwbTFsKCkgbmV2ZXIgdW5kZXJmbG93cywgYnV0IGl0IG11c3QgYXZvaWQKIAkJICogdW5yZXByZXNlbnRhYmxlIGxhcmdlIG5lZ2F0aXZlIGV4cG9uZW50cy4gIFdlIHVzZWQgYQpAQCAtMzk1LDcgKzIyNyw3IEBACiAJCSAqIGluIHRoZSBzYW1lIHdheSBhcyBsYXJnZSBvbmVzIGhlcmUuCiAJCSAqLwogCQlpZiAoaHggJiAweDgwMDApCS8qIHggPD0gLTEyOCAqLwotCQkJcmV0dXJuICh0aW55IC0gMSk7CS8qIGdvb2QgZm9yIHggPCAtMTE0bG4yIC0gZXBzICovCisJCQlSRVRVUk4yUCh0aW55LCAtMSk7CS8qIGdvb2QgZm9yIHggPCAtMTE0bG4yIC0gZXBzICovCiAJfQogCiAJRU5URVJJKCk7CkBAIC00MDcsNyArMjM5LDcgQEAKIAkJaWYgKHggPCBUMykgewogCQkJaWYgKGl4IDwgQklBUyAtIDExMykgewkvKiB8eHwgPCAweDFwLTExMyAqLwogCQkJCS8qIHggKHJvdW5kZWQpIHdpdGggaW5leGFjdCBpZiB4ICE9IDA6ICovCi0JCQkJUkVUVVJOSSh4ID09IDAgPyB4IDoKKwkJCQlSRVRVUk5QSSh4ID09IDAgPyB4IDoKIAkJCQkgICAgKDB4MXAyMDAgKiB4ICsgZmFic2woeCkpICogMHgxcC0yMDApOwogCQkJfQogCQkJcSA9IHggKiB4MiAqIEMzICsgeDIgKiB4MiAqIChDNCArIHggKiAoQzUgKyB4ICogKEM2ICsKQEAgLTQyOCw5ICsyNjAsOSBAQAogCQloeDJfaGkgPSB4X2hpICogeF9oaSAvIDI7CiAJCWh4Ml9sbyA9IHhfbG8gKiAoeCArIHhfaGkpIC8gMjsKIAkJaWYgKGl4ID49IEJJQVMgLSA3KQotCQkJUkVUVVJOSShoeDJfbG8gKyB4X2xvICsgcSArIChoeDJfaGkgKyB4X2hpKSk7CisJCQlSRVRVUk4yUEkoaHgyX2hpICsgeF9oaSwgaHgyX2xvICsgeF9sbyArIHEpOwogCQllbHNlCi0JCQlSRVRVUk5JKGh4Ml9sbyArIHEgKyBoeDJfaGkgKyB4KTsKKwkJCVJFVFVSTjJQSSh4LCBoeDJfbG8gKyBxICsgaHgyX2hpKTsKIAl9CiAKIAkvKiBSZWR1Y2UgeCB0byAoaypsbjIgKyBlbmRwb2ludFtuMl0gKyByMSArIHIyKS4gKi8KQEAgLTQ2MywyMSArMjk1LDIxIEBACiAJdCA9IHRibFtuMl0ubG8gKyB0YmxbbjJdLmhpOwogCiAJaWYgKGsgPT0gMCkgewotCQl0ID0gdGJsW24yXS5sbyAqIChyMSArIDEpICsgdCAqIHEgKyB0YmxbbjJdLmhpICogcjEgKwotCQkgICAgKHRibFtuMl0uaGkgLSAxKTsKKwkJdCA9IFNVTTJQKHRibFtuMl0uaGkgLSAxLCB0YmxbbjJdLmxvICogKHIxICsgMSkgKyB0ICogcSArCisJCSAgICB0YmxbbjJdLmhpICogcjEpOwogCQlSRVRVUk5JKHQpOwogCX0KIAlpZiAoayA9PSAtMSkgewotCQl0ID0gdGJsW24yXS5sbyAqIChyMSArIDEpICsgdCAqIHEgKyB0YmxbbjJdLmhpICogcjEgKyAKLQkJICAgICh0YmxbbjJdLmhpIC0gMik7CisJCXQgPSBTVU0yUCh0YmxbbjJdLmhpIC0gMiwgdGJsW24yXS5sbyAqIChyMSArIDEpICsgdCAqIHEgKworCQkgICAgdGJsW24yXS5oaSAqIHIxKTsKIAkJUkVUVVJOSSh0IC8gMik7CiAJfQogCWlmIChrIDwgLTcpIHsKLQkJdCA9IHRibFtuMl0ubG8gKyB0ICogKHEgKyByMSkgKyB0YmxbbjJdLmhpOworCQl0ID0gU1VNMlAodGJsW24yXS5oaSwgdGJsW24yXS5sbyArIHQgKiAocSArIHIxKSk7CiAJCVJFVFVSTkkodCAqIHR3b3BrIC0gMSk7CiAJfQogCWlmIChrID4gMiAqIExEQkxfTUFOVF9ESUcgLSAxKSB7Ci0JCXQgPSB0YmxbbjJdLmxvICsgdCAqIChxICsgcjEpICsgdGJsW24yXS5oaTsKKwkJdCA9IFNVTTJQKHRibFtuMl0uaGksIHRibFtuMl0ubG8gKyB0ICogKHEgKyByMSkpOwogCQlpZiAoayA9PSBMREJMX01BWF9FWFApCiAJCQlSRVRVUk5JKHQgKiAyICogMHgxcDE2MzgzTCAtIDEpOwogCQlSRVRVUk5JKHQgKiB0d29wayAtIDEpOwpAQCAtNDg3LDggKzMxOSw4IEBACiAJdHdvbWsgPSB2LmU7CiAKIAlpZiAoayA+IExEQkxfTUFOVF9ESUcgLSAxKQotCQl0ID0gdGJsW24yXS5sbyAtIHR3b21rICsgdCAqIChxICsgcjEpICsgdGJsW24yXS5oaTsKKwkJdCA9IFNVTTJQKHRibFtuMl0uaGksIHRibFtuMl0ubG8gLSB0d29tayArIHQgKiAocSArIHIxKSk7CiAJZWxzZQotCQl0ID0gdGJsW24yXS5sbyArIHQgKiAocSArIHIxKSArICh0YmxbbjJdLmhpIC0gdHdvbWspOworCQl0ID0gU1VNMlAodGJsW24yXS5oaSAtIHR3b21rLCB0YmxbbjJdLmxvICsgdCAqIChxICsgcjEpKTsKIAlSRVRVUk5JKHQgKiB0d29wayk7CiB9CmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2NhdHJpZy5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9jYXRyaWcuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMDA5NzdjCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9jYXRyaWcuYwpAQCAtMCwwICsxLDYzOSBAQAorLyotCisgKiBDb3B5cmlnaHQgKGMpIDIwMTIgU3RlcGhlbiBNb250Z29tZXJ5LVNtaXRoIDxzdGVwaGVuQEZyZWVCU0QuT1JHPgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CitfX0ZCU0RJRCgiJEZyZWVCU0QkIik7CisKKyNpbmNsdWRlIDxjb21wbGV4Lmg+CisjaW5jbHVkZSA8ZmxvYXQuaD4KKworI2luY2x1ZGUgIm1hdGguaCIKKyNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKKworI3VuZGVmIGlzaW5mCisjZGVmaW5lIGlzaW5mKHgpCShmYWJzKHgpID09IElORklOSVRZKQorI3VuZGVmIGlzbmFuCisjZGVmaW5lIGlzbmFuKHgpCSgoeCkgIT0gKHgpKQorI2RlZmluZQlyYWlzZV9pbmV4YWN0KCkJZG8geyB2b2xhdGlsZSBmbG9hdCBqdW5rID0gMSArIHRpbnk7IH0gd2hpbGUoMCkKKyN1bmRlZiBzaWduYml0CisjZGVmaW5lIHNpZ25iaXQoeCkJKF9fYnVpbHRpbl9zaWduYml0KHgpKQorCisvKiBXZSBuZWVkIHRoYXQgREJMX0VQU0lMT05eMi8xMjggaXMgbGFyZ2VyIHRoYW4gRk9VUl9TUVJUX01JTi4gKi8KK3N0YXRpYyBjb25zdCBkb3VibGUKK0FfY3Jvc3NvdmVyID0JCTEwLCAvKiBIdWxsIGV0IGFsIHN1Z2dlc3QgMS41LCBidXQgMTAgd29ya3MgYmV0dGVyICovCitCX2Nyb3Nzb3ZlciA9CQkwLjY0MTcsCQkJLyogc3VnZ2VzdGVkIGJ5IEh1bGwgZXQgYWwgKi8KK0ZPVVJfU1FSVF9NSU4gPQkJMHgxcC01MDksCQkvKiA+PSA0ICogc3FydChEQkxfTUlOKSAqLworUVVBUlRFUl9TUVJUX01BWCA9CTB4MXA1MDksCQkvKiA8PSBzcXJ0KERCTF9NQVgpIC8gNCAqLworbV9lID0JCQkyLjcxODI4MTgyODQ1OTA0NTJlMCwJLyogIDB4MTViZjBhOGIxNDU3NjkuMHAtNTEgKi8KK21fbG4yID0JCQk2LjkzMTQ3MTgwNTU5OTQ1MzFlLTEsCS8qICAweDE2MmU0MmZlZmEzOWVmLjBwLTUzICovCitwaW8yX2hpID0JCTEuNTcwNzk2MzI2Nzk0ODk2NmUwLAkvKiAgMHgxOTIxZmI1NDQ0MmQxOC4wcC01MiAqLworUkVDSVBfRVBTSUxPTiA9CQkxIC8gREJMX0VQU0lMT04sCitTUVJUXzNfRVBTSUxPTiA9CTIuNTgwOTU2ODI3OTUxNzg0OWUtOCwJLyogIDB4MWJiNjdhZTg1ODRjYWEuMHAtNzggKi8KK1NRUlRfNl9FUFNJTE9OID0JMy42NTAwMjQxNDk5ODg4NTcxZS04LAkvKiAgMHgxMzk4OGUxNDA5MjEyZS4wcC03NyAqLworU1FSVF9NSU4gPQkJMHgxcC01MTE7CQkvKiA+PSBzcXJ0KERCTF9NSU4pICovCisKK3N0YXRpYyBjb25zdCB2b2xhdGlsZSBkb3VibGUKK3BpbzJfbG8gPQkJNi4xMjMyMzM5OTU3MzY3NjU5ZS0xNzsJLyogIDB4MTFhNjI2MzMxNDVjMDcuMHAtMTA2ICovCitzdGF0aWMgY29uc3Qgdm9sYXRpbGUgZmxvYXQKK3RpbnkgPQkJCTB4MXAtMTAwOyAKKworc3RhdGljIGRvdWJsZSBjb21wbGV4IGNsb2dfZm9yX2xhcmdlX3ZhbHVlcyhkb3VibGUgY29tcGxleCB6KTsKKworLyoKKyAqIFRlc3RpbmcgaW5kaWNhdGVzIHRoYXQgYWxsIHRoZXNlIGZ1bmN0aW9ucyBhcmUgYWNjdXJhdGUgdXAgdG8gNCBVTFAuCisgKiBUaGUgZnVuY3Rpb25zIGNhc2luKGgpIGFuZCBjYWNvcyhoKSBhcmUgYWJvdXQgMi41IHRpbWVzIHNsb3dlciB0aGFuIGFzaW5oLgorICogVGhlIGZ1bmN0aW9ucyBjYXRhbihoKSBhcmUgYSBsaXR0bGUgdW5kZXIgMiB0aW1lcyBzbG93ZXIgdGhhbiBhdGFuaC4KKyAqCisgKiBUaGUgY29kZSBmb3IgY2FzaW5oLCBjYXNpbiwgY2Fjb3MsIGFuZCBjYWNvc2ggY29tZXMgZmlyc3QuICBUaGUgY29kZSBpcworICogcmF0aGVyIGNvbXBsaWNhdGVkLCBhbmQgdGhlIGZvdXIgZnVuY3Rpb25zIGFyZSBoaWdobHkgaW50ZXJkZXBlbmRlbnQuCisgKgorICogVGhlIGNvZGUgZm9yIGNhdGFuaCBhbmQgY2F0YW4gY29tZXMgYXQgdGhlIGVuZC4gIEl0IGlzIG11Y2ggc2ltcGxlciB0aGFuCisgKiB0aGUgb3RoZXIgZnVuY3Rpb25zLCBhbmQgdGhlIGNvZGUgZm9yIHRoZXNlIGNhbiBiZSBkaXNjb25uZWN0ZWQgZnJvbSB0aGUKKyAqIHJlc3Qgb2YgdGhlIGNvZGUuCisgKi8KKworLyoKKyAqCQkJPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAqCQkJfCBjYXNpbmgsIGNhc2luLCBjYWNvcywgY2Fjb3NoIHwKKyAqCQkJPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAqLworCisvKgorICogVGhlIGFsZ29yaXRobSBpcyB2ZXJ5IGNsb3NlIHRvIHRoYXQgaW4gIkltcGxlbWVudGluZyB0aGUgY29tcGxleCBhcmNzaW5lCisgKiBhbmQgYXJjY29zaW5lIGZ1bmN0aW9ucyB1c2luZyBleGNlcHRpb24gaGFuZGxpbmciIGJ5IFQuIEUuIEh1bGwsIFRob21hcyBGLgorICogRmFpcmdyaWV2ZSwgYW5kIFBpbmcgVGFrIFBldGVyIFRhbmcsIHB1Ymxpc2hlZCBpbiBBQ00gVHJhbnNhY3Rpb25zIG9uCisgKiBNYXRoZW1hdGljYWwgU29mdHdhcmUsIFZvbHVtZSAyMyBJc3N1ZSAzLCAxOTk3LCBQYWdlcyAyOTktMzM1LAorICogaHR0cDovL2RsLmFjbS5vcmcvY2l0YXRpb24uY2ZtP2lkPTI3NTMyNC4KKyAqCisgKiBUaHJvdWdob3V0IHdlIHVzZSB0aGUgY29udmVudGlvbiB6ID0geCArIEkqeS4KKyAqCisgKiBjYXNpbmgoeikgPSBzaWduKHgpKmxvZyhBK3NxcnQoQSpBLTEpKSArIEkqYXNpbihCKQorICogd2hlcmUKKyAqIEEgPSAofHorSXwgKyB8ei1JfCkgLyAyCisgKiBCID0gKHx6K0l8IC0gfHotSXwpIC8gMiA9IHkvQQorICoKKyAqIFRoZXNlIGZvcm11bGFzIGJlY29tZSBudW1lcmljYWxseSB1bnN0YWJsZToKKyAqICAgKGEpIGZvciBSZShjYXNpbmgoeikpIHdoZW4geiBpcyBjbG9zZSB0byB0aGUgbGluZSBzZWdtZW50IFstSSwgSV0gKHRoYXQKKyAqICAgICAgIGlzLCBSZShjYXNpbmgoeikpIGlzIGNsb3NlIHRvIDApOworICogICAoYikgZm9yIEltKGNhc2luaCh6KSkgd2hlbiB6IGlzIGNsb3NlIHRvIGVpdGhlciBvZiB0aGUgaW50ZXJ2YWxzCisgKiAgICAgICBbSSwgSSppbmZpbml0eSkgb3IgKC1JKmluZmluaXR5LCAtSV0gKHRoYXQgaXMsIHxJbShjYXNpbmgoeikpfCBpcworICogICAgICAgY2xvc2UgdG8gUEkvMikuCisgKgorICogVGhlc2UgbnVtZXJpY2FsIHByb2JsZW1zIGFyZSBvdmVyY29tZSBieSBkZWZpbmluZworICogZihhLCBiKSA9IChoeXBvdChhLCBiKSAtIGIpIC8gMiA9IGEqYSAvIChoeXBvdChhLCBiKSArIGIpIC8gMgorICogVGhlbiBpZiBBIDwgQV9jcm9zc292ZXIsIHdlIHVzZQorICogICBsb2coQSArIHNxcnQoQSpBLTEpKSA9IGxvZzFwKChBLTEpICsgc3FydCgoQS0xKSooQSsxKSkpCisgKiAgIEEtMSA9IGYoeCwgMSt5KSArIGYoeCwgMS15KQorICogYW5kIGlmIEIgPiBCX2Nyb3Nzb3Zlciwgd2UgdXNlCisgKiAgIGFzaW4oQikgPSBhdGFuMih5LCBzcXJ0KEEqQSAtIHkqeSkpID0gYXRhbjIoeSwgc3FydCgoQSt5KSooQS15KSkpCisgKiAgIEEteSA9IGYoeCwgeSsxKSArIGYoeCwgeS0xKQorICogd2hlcmUgd2l0aG91dCBsb3NzIG9mIGdlbmVyYWxpdHkgd2UgaGF2ZSBhc3N1bWVkIHRoYXQgeCBhbmQgeSBhcmUKKyAqIG5vbi1uZWdhdGl2ZS4KKyAqCisgKiBNdWNoIG9mIHRoZSBkaWZmaWN1bHR5IGNvbWVzIGJlY2F1c2UgdGhlIGludGVybWVkaWF0ZSBjb21wdXRhdGlvbnMgbWF5CisgKiBwcm9kdWNlIG92ZXJmbG93cyBvciB1bmRlcmZsb3dzLiAgVGhpcyBpcyBkZWFsdCB3aXRoIGluIHRoZSBwYXBlciBieSBIdWxsCisgKiBldCBhbCBieSB1c2luZyBleGNlcHRpb24gaGFuZGxpbmcuICBXZSBkbyB0aGlzIGJ5IGRldGVjdGluZyB3aGVuCisgKiBjb21wdXRhdGlvbnMgcmlzayB1bmRlcmZsb3cgb3Igb3ZlcmZsb3cuICBUaGUgaGFyZGVzdCBwYXJ0IGlzIGhhbmRsaW5nIHRoZQorICogdW5kZXJmbG93cyB3aGVuIGNvbXB1dGluZyBmKGEsIGIpLgorICoKKyAqIE5vdGUgdGhhdCB0aGUgZnVuY3Rpb24gZihhLCBiKSBkb2VzIG5vdCBhcHBlYXIgZXhwbGljaXRseSBpbiB0aGUgcGFwZXIgYnkKKyAqIEh1bGwgZXQgYWwsIGJ1dCB0aGUgaWRlYSBtYXkgYmUgZm91bmQgb24gcGFnZXMgMzA4IGFuZCAzMDkuICBJbnRyb2R1Y2luZyB0aGUKKyAqIGZ1bmN0aW9uIGYoYSwgYikgYWxsb3dzIHVzIHRvIGNvbmNlbnRyYXRlIG1hbnkgb2YgdGhlIGNsZXZlciB0cmlja3MgaW4gdGhpcworICogcGFwZXIgaW50byBvbmUgZnVuY3Rpb24uCisgKi8KKworLyoKKyAqIEZ1bmN0aW9uIGYoYSwgYiwgaHlwb3RfYV9iKSA9IChoeXBvdChhLCBiKSAtIGIpIC8gMi4KKyAqIFBhc3MgaHlwb3QoYSwgYikgYXMgdGhlIHRoaXJkIGFyZ3VtZW50LgorICovCitzdGF0aWMgaW5saW5lIGRvdWJsZQorZihkb3VibGUgYSwgZG91YmxlIGIsIGRvdWJsZSBoeXBvdF9hX2IpCit7CisJaWYgKGIgPCAwKQorCQlyZXR1cm4gKChoeXBvdF9hX2IgLSBiKSAvIDIpOworCWlmIChiID09IDApCisJCXJldHVybiAoYSAvIDIpOworCXJldHVybiAoYSAqIGEgLyAoaHlwb3RfYV9iICsgYikgLyAyKTsKK30KKworLyoKKyAqIEFsbCB0aGUgaGFyZCB3b3JrIGlzIGNvbnRhaW5lZCBpbiB0aGlzIGZ1bmN0aW9uLgorICogeCBhbmQgeSBhcmUgYXNzdW1lZCBwb3NpdGl2ZSBvciB6ZXJvLCBhbmQgbGVzcyB0aGFuIFJFQ0lQX0VQU0lMT04uCisgKiBVcG9uIHJldHVybjoKKyAqIHJ4ID0gUmUoY2FzaW5oKHopKSA9IC1JbShjYWNvcyh5ICsgSSp4KSkuCisgKiBCX2lzX3VzYWJsZSBpcyBzZXQgdG8gMSBpZiB0aGUgdmFsdWUgb2YgQiBpcyB1c2FibGUuCisgKiBJZiBCX2lzX3VzYWJsZSBpcyBzZXQgdG8gMCwgc3FydF9BMm15MiA9IHNxcnQoQSpBIC0geSp5KSwgYW5kIG5ld195ID0geS4KKyAqIElmIHJldHVybmluZyBzcXJ0X0EybXkyIGhhcyBwb3RlbnRpYWwgdG8gcmVzdWx0IGluIGFuIHVuZGVyZmxvdywgaXQgaXMKKyAqIHJlc2NhbGVkLCBhbmQgbmV3X3kgaXMgc2ltaWxhcmx5IHJlc2NhbGVkLgorICovCitzdGF0aWMgaW5saW5lIHZvaWQKK2RvX2hhcmRfd29yayhkb3VibGUgeCwgZG91YmxlIHksIGRvdWJsZSAqcngsIGludCAqQl9pc191c2FibGUsIGRvdWJsZSAqQiwKKyAgICBkb3VibGUgKnNxcnRfQTJteTIsIGRvdWJsZSAqbmV3X3kpCit7CisJZG91YmxlIFIsIFMsIEE7IC8qIEEsIEIsIFIsIGFuZCBTIGFyZSBhcyBpbiBIdWxsIGV0IGFsLiAqLworCWRvdWJsZSBBbTEsIEFteTsgLyogQS0xLCBBLXkuICovCisKKwlSID0gaHlwb3QoeCwgeSArIDEpOwkJLyogfHorSXwgKi8KKwlTID0gaHlwb3QoeCwgeSAtIDEpOwkJLyogfHotSXwgKi8KKworCS8qIEEgPSAofHorSXwgKyB8ei1JfCkgLyAyICovCisJQSA9IChSICsgUykgLyAyOworCS8qCisJICogTWF0aGVtYXRpY2FsbHkgQSA+PSAxLiAgVGhlcmUgaXMgYSBzbWFsbCBjaGFuY2UgdGhhdCB0aGlzIHdpbGwgbm90CisJICogYmUgc28gYmVjYXVzZSBvZiByb3VuZGluZyBlcnJvcnMuICBTbyB3ZSB3aWxsIG1ha2UgY2VydGFpbiBpdCBpcworCSAqIHNvLgorCSAqLworCWlmIChBIDwgMSkKKwkJQSA9IDE7CisKKwlpZiAoQSA8IEFfY3Jvc3NvdmVyKSB7CisJCS8qCisJCSAqIEFtMSA9IGZwICsgZm0sIHdoZXJlIGZwID0gZih4LCAxK3kpLCBhbmQgZm0gPSBmKHgsIDEteSkuCisJCSAqIHJ4ID0gbG9nMXAoQW0xICsgc3FydChBbTEqKEErMSkpKQorCQkgKi8KKwkJaWYgKHkgPT0gMSAmJiB4IDwgREJMX0VQU0lMT04gKiBEQkxfRVBTSUxPTiAvIDEyOCkgeworCQkJLyoKKwkJCSAqIGZwIGlzIG9mIG9yZGVyIHheMiwgYW5kIGZtID0geC8yLgorCQkJICogQSA9IDEgKGluZXhhY3RseSkuCisJCQkgKi8KKwkJCSpyeCA9IHNxcnQoeCk7CisJCX0gZWxzZSBpZiAoeCA+PSBEQkxfRVBTSUxPTiAqIGZhYnMoeSAtIDEpKSB7CisJCQkvKgorCQkJICogVW5kZXJmbG93IHdpbGwgbm90IG9jY3VyIGJlY2F1c2UKKwkJCSAqIHggPj0gREJMX0VQU0lMT05eMi8xMjggPj0gRk9VUl9TUVJUX01JTgorCQkJICovCisJCQlBbTEgPSBmKHgsIDEgKyB5LCBSKSArIGYoeCwgMSAtIHksIFMpOworCQkJKnJ4ID0gbG9nMXAoQW0xICsgc3FydChBbTEgKiAoQSArIDEpKSk7CisJCX0gZWxzZSBpZiAoeSA8IDEpIHsKKwkJCS8qCisJCQkgKiBmcCA9IHgqeC8oMSt5KS80LCBmbSA9IHgqeC8oMS15KS80LCBhbmQKKwkJCSAqIEEgPSAxIChpbmV4YWN0bHkpLgorCQkJICovCisJCQkqcnggPSB4IC8gc3FydCgoMSAtIHkpICogKDEgKyB5KSk7CisJCX0gZWxzZSB7CQkvKiBpZiAoeSA+IDEpICovCisJCQkvKgorCQkJICogQS0xID0geS0xIChpbmV4YWN0bHkpLgorCQkJICovCisJCQkqcnggPSBsb2cxcCgoeSAtIDEpICsgc3FydCgoeSAtIDEpICogKHkgKyAxKSkpOworCQl9CisJfSBlbHNlIHsKKwkJKnJ4ID0gbG9nKEEgKyBzcXJ0KEEgKiBBIC0gMSkpOworCX0KKworCSpuZXdfeSA9IHk7CisKKwlpZiAoeSA8IEZPVVJfU1FSVF9NSU4pIHsKKwkJLyoKKwkJICogQXZvaWQgYSBwb3NzaWJsZSB1bmRlcmZsb3cgY2F1c2VkIGJ5IHkvQS4gIEZvciBjYXNpbmggdGhpcworCQkgKiB3b3VsZCBiZSBsZWdpdGltYXRlLCBidXQgd2lsbCBiZSBwaWNrZWQgdXAgYnkgaW52b2tpbmcgYXRhbjIKKwkJICogbGF0ZXIgb24uICBGb3IgY2Fjb3MgdGhpcyB3b3VsZCBub3QgYmUgbGVnaXRpbWF0ZS4KKwkJICovCisJCSpCX2lzX3VzYWJsZSA9IDA7CisJCSpzcXJ0X0EybXkyID0gQSAqICgyIC8gREJMX0VQU0lMT04pOworCQkqbmV3X3kgPSB5ICogKDIgLyBEQkxfRVBTSUxPTik7CisJCXJldHVybjsKKwl9CisKKwkvKiBCID0gKHx6K0l8IC0gfHotSXwpIC8gMiA9IHkvQSAqLworCSpCID0geSAvIEE7CisJKkJfaXNfdXNhYmxlID0gMTsKKworCWlmICgqQiA+IEJfY3Jvc3NvdmVyKSB7CisJCSpCX2lzX3VzYWJsZSA9IDA7CisJCS8qCisJCSAqIEFteSA9IGZwICsgZm0sIHdoZXJlIGZwID0gZih4LCB5KzEpLCBhbmQgZm0gPSBmKHgsIHktMSkuCisJCSAqIHNxcnRfQTJteTIgPSBzcXJ0KEFteSooQSt5KSkKKwkJICovCisJCWlmICh5ID09IDEgJiYgeCA8IERCTF9FUFNJTE9OIC8gMTI4KSB7CisJCQkvKgorCQkJICogZnAgaXMgb2Ygb3JkZXIgeF4yLCBhbmQgZm0gPSB4LzIuCisJCQkgKiBBID0gMSAoaW5leGFjdGx5KS4KKwkJCSAqLworCQkJKnNxcnRfQTJteTIgPSBzcXJ0KHgpICogc3FydCgoQSArIHkpIC8gMik7CisJCX0gZWxzZSBpZiAoeCA+PSBEQkxfRVBTSUxPTiAqIGZhYnMoeSAtIDEpKSB7CisJCQkvKgorCQkJICogVW5kZXJmbG93IHdpbGwgbm90IG9jY3VyIGJlY2F1c2UKKwkJCSAqIHggPj0gREJMX0VQU0lMT04vMTI4ID49IEZPVVJfU1FSVF9NSU4KKwkJCSAqIGFuZAorCQkJICogeCA+PSBEQkxfRVBTSUxPTl4yID49IEZPVVJfU1FSVF9NSU4KKwkJCSAqLworCQkJQW15ID0gZih4LCB5ICsgMSwgUikgKyBmKHgsIHkgLSAxLCBTKTsKKwkJCSpzcXJ0X0EybXkyID0gc3FydChBbXkgKiAoQSArIHkpKTsKKwkJfSBlbHNlIGlmICh5ID4gMSkgeworCQkJLyoKKwkJCSAqIGZwID0geCp4Lyh5KzEpLzQsIGZtID0geCp4Lyh5LTEpLzQsIGFuZAorCQkJICogQSA9IHkgKGluZXhhY3RseSkuCisJCQkgKgorCQkJICogeSA8IFJFQ0lQX0VQU0lMT04uICBTbyB0aGUgZm9sbG93aW5nCisJCQkgKiBzY2FsaW5nIHNob3VsZCBhdm9pZCBhbnkgdW5kZXJmbG93IHByb2JsZW1zLgorCQkJICovCisJCQkqc3FydF9BMm15MiA9IHggKiAoNCAvIERCTF9FUFNJTE9OIC8gREJMX0VQU0lMT04pICogeSAvCisJCQkgICAgc3FydCgoeSArIDEpICogKHkgLSAxKSk7CisJCQkqbmV3X3kgPSB5ICogKDQgLyBEQkxfRVBTSUxPTiAvIERCTF9FUFNJTE9OKTsKKwkJfSBlbHNlIHsJCS8qIGlmICh5IDwgMSkgKi8KKwkJCS8qCisJCQkgKiBmbSA9IDEteSA+PSBEQkxfRVBTSUxPTiwgZnAgaXMgb2Ygb3JkZXIgeF4yLCBhbmQKKwkJCSAqIEEgPSAxIChpbmV4YWN0bHkpLgorCQkJICovCisJCQkqc3FydF9BMm15MiA9IHNxcnQoKDEgLSB5KSAqICgxICsgeSkpOworCQl9CisJfQorfQorCisvKgorICogY2FzaW5oKHopID0geiArIE8oel4zKSAgIGFzIHogLT4gMAorICoKKyAqIGNhc2luaCh6KSA9IHNpZ24oeCkqY2xvZyhzaWduKHgpKnopICsgTygxL3peMikgICBhcyB6IC0+IGluZmluaXR5CisgKiBUaGUgYWJvdmUgZm9ybXVsYSB3b3JrcyBmb3IgdGhlIGltYWdpbmFyeSBwYXJ0IGFzIHdlbGwsIGJlY2F1c2UKKyAqIEltKGNhc2luaCh6KSkgPSBzaWduKHgpKmF0YW4yKHNpZ24oeCkqeSwgZmFicyh4KSkgKyBPKHkvel4zKQorICogICAgYXMgeiAtPiBpbmZpbml0eSwgdW5pZm9ybWx5IGluIHkKKyAqLworZG91YmxlIGNvbXBsZXgKK2Nhc2luaChkb3VibGUgY29tcGxleCB6KQoreworCWRvdWJsZSB4LCB5LCBheCwgYXksIHJ4LCByeSwgQiwgc3FydF9BMm15MiwgbmV3X3k7CisJaW50IEJfaXNfdXNhYmxlOworCWRvdWJsZSBjb21wbGV4IHc7CisKKwl4ID0gY3JlYWwoeik7CisJeSA9IGNpbWFnKHopOworCWF4ID0gZmFicyh4KTsKKwlheSA9IGZhYnMoeSk7CisKKwlpZiAoaXNuYW4oeCkgfHwgaXNuYW4oeSkpIHsKKwkJLyogY2FzaW5oKCstSW5mICsgSSpOYU4pID0gKy1JbmYgKyBJKk5hTiAqLworCQlpZiAoaXNpbmYoeCkpCisJCQlyZXR1cm4gKGNwYWNrKHgsIHkgKyB5KSk7CisJCS8qIGNhc2luaChOYU4gKyBJKistSW5mKSA9IG9wdCgrLSlJbmYgKyBJKk5hTiAqLworCQlpZiAoaXNpbmYoeSkpCisJCQlyZXR1cm4gKGNwYWNrKHksIHggKyB4KSk7CisJCS8qIGNhc2luaChOYU4gKyBJKjApID0gTmFOICsgSSowICovCisJCWlmICh5ID09IDApCisJCQlyZXR1cm4gKGNwYWNrKHggKyB4LCB5KSk7CisJCS8qCisJCSAqIEFsbCBvdGhlciBjYXNlcyBpbnZvbHZpbmcgTmFOIHJldHVybiBOYU4gKyBJKk5hTi4KKwkJICogQzk5IGxlYXZlcyBpdCBvcHRpb25hbCB3aGV0aGVyIHRvIHJhaXNlIGludmFsaWQgaWYgb25lIG9mCisJCSAqIHRoZSBhcmd1bWVudHMgaXMgbm90IE5hTiwgc28gd2Ugb3B0IG5vdCB0byByYWlzZSBpdC4KKwkJICovCisJCXJldHVybiAoY3BhY2soeCArIDAuMEwgKyAoeSArIDApLCB4ICsgMC4wTCArICh5ICsgMCkpKTsKKwl9CisKKwlpZiAoYXggPiBSRUNJUF9FUFNJTE9OIHx8IGF5ID4gUkVDSVBfRVBTSUxPTikgeworCQkvKiBjbG9nLi4uKCkgd2lsbCByYWlzZSBpbmV4YWN0IHVubGVzcyB4IG9yIHkgaXMgaW5maW5pdGUuICovCisJCWlmIChzaWduYml0KHgpID09IDApCisJCQl3ID0gY2xvZ19mb3JfbGFyZ2VfdmFsdWVzKHopICsgbV9sbjI7CisJCWVsc2UKKwkJCXcgPSBjbG9nX2Zvcl9sYXJnZV92YWx1ZXMoLXopICsgbV9sbjI7CisJCXJldHVybiAoY3BhY2soY29weXNpZ24oY3JlYWwodyksIHgpLCBjb3B5c2lnbihjaW1hZyh3KSwgeSkpKTsKKwl9CisKKwkvKiBBdm9pZCBzcHVyaW91c2x5IHJhaXNpbmcgaW5leGFjdCBmb3IgeiA9IDAuICovCisJaWYgKHggPT0gMCAmJiB5ID09IDApCisJCXJldHVybiAoeik7CisKKwkvKiBBbGwgcmVtYWluaW5nIGNhc2VzIGFyZSBpbmV4YWN0LiAqLworCXJhaXNlX2luZXhhY3QoKTsKKworCWlmIChheCA8IFNRUlRfNl9FUFNJTE9OIC8gNCAmJiBheSA8IFNRUlRfNl9FUFNJTE9OIC8gNCkKKwkJcmV0dXJuICh6KTsKKworCWRvX2hhcmRfd29yayhheCwgYXksICZyeCwgJkJfaXNfdXNhYmxlLCAmQiwgJnNxcnRfQTJteTIsICZuZXdfeSk7CisJaWYgKEJfaXNfdXNhYmxlKQorCQlyeSA9IGFzaW4oQik7CisJZWxzZQorCQlyeSA9IGF0YW4yKG5ld195LCBzcXJ0X0EybXkyKTsKKwlyZXR1cm4gKGNwYWNrKGNvcHlzaWduKHJ4LCB4KSwgY29weXNpZ24ocnksIHkpKSk7Cit9CisKKy8qCisgKiBjYXNpbih6KSA9IHJldmVyc2UoY2FzaW5oKHJldmVyc2UoeikpKQorICogd2hlcmUgcmV2ZXJzZSh4ICsgSSp5KSA9IHkgKyBJKnggPSBJKmNvbmooeikuCisgKi8KK2RvdWJsZSBjb21wbGV4CitjYXNpbihkb3VibGUgY29tcGxleCB6KQoreworCWRvdWJsZSBjb21wbGV4IHcgPSBjYXNpbmgoY3BhY2soY2ltYWcoeiksIGNyZWFsKHopKSk7CisKKwlyZXR1cm4gKGNwYWNrKGNpbWFnKHcpLCBjcmVhbCh3KSkpOworfQorCisvKgorICogY2Fjb3MoeikgPSBQSS8yIC0gY2FzaW4oeikKKyAqIGJ1dCBkbyB0aGUgY29tcHV0YXRpb24gY2FyZWZ1bGx5IHNvIGNhY29zKHopIGlzIGFjY3VyYXRlIHdoZW4geiBpcworICogY2xvc2UgdG8gMS4KKyAqCisgKiBjYWNvcyh6KSA9IFBJLzIgLSB6ICsgTyh6XjMpICAgYXMgeiAtPiAwCisgKgorICogY2Fjb3MoeikgPSAtc2lnbih5KSpJKmNsb2coeikgKyBPKDEvel4yKSAgIGFzIHogLT4gaW5maW5pdHkKKyAqIFRoZSBhYm92ZSBmb3JtdWxhIHdvcmtzIGZvciB0aGUgcmVhbCBwYXJ0IGFzIHdlbGwsIGJlY2F1c2UKKyAqIFJlKGNhY29zKHopKSA9IGF0YW4yKGZhYnMoeSksIHgpICsgTyh5L3peMykKKyAqICAgIGFzIHogLT4gaW5maW5pdHksIHVuaWZvcm1seSBpbiB5CisgKi8KK2RvdWJsZSBjb21wbGV4CitjYWNvcyhkb3VibGUgY29tcGxleCB6KQoreworCWRvdWJsZSB4LCB5LCBheCwgYXksIHJ4LCByeSwgQiwgc3FydF9BMm14MiwgbmV3X3g7CisJaW50IHN4LCBzeTsKKwlpbnQgQl9pc191c2FibGU7CisJZG91YmxlIGNvbXBsZXggdzsKKworCXggPSBjcmVhbCh6KTsKKwl5ID0gY2ltYWcoeik7CisJc3ggPSBzaWduYml0KHgpOworCXN5ID0gc2lnbmJpdCh5KTsKKwlheCA9IGZhYnMoeCk7CisJYXkgPSBmYWJzKHkpOworCisJaWYgKGlzbmFuKHgpIHx8IGlzbmFuKHkpKSB7CisJCS8qIGNhY29zKCstSW5mICsgSSpOYU4pID0gTmFOICsgSSpvcHQoLSlJbmYgKi8KKwkJaWYgKGlzaW5mKHgpKQorCQkJcmV0dXJuIChjcGFjayh5ICsgeSwgLUlORklOSVRZKSk7CisJCS8qIGNhY29zKE5hTiArIEkqKy1JbmYpID0gTmFOICsgSSotK0luZiAqLworCQlpZiAoaXNpbmYoeSkpCisJCQlyZXR1cm4gKGNwYWNrKHggKyB4LCAteSkpOworCQkvKiBjYWNvcygwICsgSSpOYU4pID0gUEkvMiArIEkqTmFOIHdpdGggaW5leGFjdCAqLworCQlpZiAoeCA9PSAwKQorCQkJcmV0dXJuIChjcGFjayhwaW8yX2hpICsgcGlvMl9sbywgeSArIHkpKTsKKwkJLyoKKwkJICogQWxsIG90aGVyIGNhc2VzIGludm9sdmluZyBOYU4gcmV0dXJuIE5hTiArIEkqTmFOLgorCQkgKiBDOTkgbGVhdmVzIGl0IG9wdGlvbmFsIHdoZXRoZXIgdG8gcmFpc2UgaW52YWxpZCBpZiBvbmUgb2YKKwkJICogdGhlIGFyZ3VtZW50cyBpcyBub3QgTmFOLCBzbyB3ZSBvcHQgbm90IHRvIHJhaXNlIGl0LgorCQkgKi8KKwkJcmV0dXJuIChjcGFjayh4ICsgMC4wTCArICh5ICsgMCksIHggKyAwLjBMICsgKHkgKyAwKSkpOworCX0KKworCWlmIChheCA+IFJFQ0lQX0VQU0lMT04gfHwgYXkgPiBSRUNJUF9FUFNJTE9OKSB7CisJCS8qIGNsb2cuLi4oKSB3aWxsIHJhaXNlIGluZXhhY3QgdW5sZXNzIHggb3IgeSBpcyBpbmZpbml0ZS4gKi8KKwkJdyA9IGNsb2dfZm9yX2xhcmdlX3ZhbHVlcyh6KTsKKwkJcnggPSBmYWJzKGNpbWFnKHcpKTsKKwkJcnkgPSBjcmVhbCh3KSArIG1fbG4yOworCQlpZiAoc3kgPT0gMCkKKwkJCXJ5ID0gLXJ5OworCQlyZXR1cm4gKGNwYWNrKHJ4LCByeSkpOworCX0KKworCS8qIEF2b2lkIHNwdXJpb3VzbHkgcmFpc2luZyBpbmV4YWN0IGZvciB6ID0gMS4gKi8KKwlpZiAoeCA9PSAxICYmIHkgPT0gMCkKKwkJcmV0dXJuIChjcGFjaygwLCAteSkpOworCisJLyogQWxsIHJlbWFpbmluZyBjYXNlcyBhcmUgaW5leGFjdC4gKi8KKwlyYWlzZV9pbmV4YWN0KCk7CisKKwlpZiAoYXggPCBTUVJUXzZfRVBTSUxPTiAvIDQgJiYgYXkgPCBTUVJUXzZfRVBTSUxPTiAvIDQpCisJCXJldHVybiAoY3BhY2socGlvMl9oaSAtICh4IC0gcGlvMl9sbyksIC15KSk7CisKKwlkb19oYXJkX3dvcmsoYXksIGF4LCAmcnksICZCX2lzX3VzYWJsZSwgJkIsICZzcXJ0X0EybXgyLCAmbmV3X3gpOworCWlmIChCX2lzX3VzYWJsZSkgeworCQlpZiAoc3ggPT0gMCkKKwkJCXJ4ID0gYWNvcyhCKTsKKwkJZWxzZQorCQkJcnggPSBhY29zKC1CKTsKKwl9IGVsc2UgeworCQlpZiAoc3ggPT0gMCkKKwkJCXJ4ID0gYXRhbjIoc3FydF9BMm14MiwgbmV3X3gpOworCQllbHNlCisJCQlyeCA9IGF0YW4yKHNxcnRfQTJteDIsIC1uZXdfeCk7CisJfQorCWlmIChzeSA9PSAwKQorCQlyeSA9IC1yeTsKKwlyZXR1cm4gKGNwYWNrKHJ4LCByeSkpOworfQorCisvKgorICogY2Fjb3NoKHopID0gSSpjYWNvcyh6KSBvciAtSSpjYWNvcyh6KQorICogd2hlcmUgdGhlIHNpZ24gaXMgY2hvc2VuIHNvIFJlKGNhY29zaCh6KSkgPj0gMC4KKyAqLworZG91YmxlIGNvbXBsZXgKK2NhY29zaChkb3VibGUgY29tcGxleCB6KQoreworCWRvdWJsZSBjb21wbGV4IHc7CisJZG91YmxlIHJ4LCByeTsKKworCXcgPSBjYWNvcyh6KTsKKwlyeCA9IGNyZWFsKHcpOworCXJ5ID0gY2ltYWcodyk7CisJLyogY2Fjb3NoKE5hTiArIEkqTmFOKSA9IE5hTiArIEkqTmFOICovCisJaWYgKGlzbmFuKHJ4KSAmJiBpc25hbihyeSkpCisJCXJldHVybiAoY3BhY2socnksIHJ4KSk7CisJLyogY2Fjb3NoKE5hTiArIEkqKy1JbmYpID0gK0luZiArIEkqTmFOICovCisJLyogY2Fjb3NoKCstSW5mICsgSSpOYU4pID0gK0luZiArIEkqTmFOICovCisJaWYgKGlzbmFuKHJ4KSkKKwkJcmV0dXJuIChjcGFjayhmYWJzKHJ5KSwgcngpKTsKKwkvKiBjYWNvc2goMCArIEkqTmFOKSA9IE5hTiArIEkqTmFOICovCisJaWYgKGlzbmFuKHJ5KSkKKwkJcmV0dXJuIChjcGFjayhyeSwgcnkpKTsKKwlyZXR1cm4gKGNwYWNrKGZhYnMocnkpLCBjb3B5c2lnbihyeCwgY2ltYWcoeikpKSk7Cit9CisKKy8qCisgKiBPcHRpbWl6ZWQgdmVyc2lvbiBvZiBjbG9nKCkgZm9yIHx6fCBmaW5pdGUgYW5kIGxhcmdlciB0aGFuIH5SRUNJUF9FUFNJTE9OLgorICovCitzdGF0aWMgZG91YmxlIGNvbXBsZXgKK2Nsb2dfZm9yX2xhcmdlX3ZhbHVlcyhkb3VibGUgY29tcGxleCB6KQoreworCWRvdWJsZSB4LCB5OworCWRvdWJsZSBheCwgYXksIHQ7CisKKwl4ID0gY3JlYWwoeik7CisJeSA9IGNpbWFnKHopOworCWF4ID0gZmFicyh4KTsKKwlheSA9IGZhYnMoeSk7CisJaWYgKGF4IDwgYXkpIHsKKwkJdCA9IGF4OworCQlheCA9IGF5OworCQlheSA9IHQ7CisJfQorCisJLyoKKwkgKiBBdm9pZCBvdmVyZmxvdyBpbiBoeXBvdCgpIHdoZW4geCBhbmQgeSBhcmUgYm90aCB2ZXJ5IGxhcmdlLgorCSAqIERpdmlkZSB4IGFuZCB5IGJ5IEUsIGFuZCB0aGVuIGFkZCAxIHRvIHRoZSBsb2dhcml0aG0uICBUaGlzIGRlcGVuZHMKKwkgKiBvbiBFIGJlaW5nIGxhcmdlciB0aGFuIHNxcnQoMikuCisJICogRGl2aWRpbmcgYnkgRSBjYXVzZXMgYW4gaW5zaWduaWZpY2FudCBsb3NzIG9mIGFjY3VyYWN5OyBob3dldmVyCisJICogdGhpcyBtZXRob2QgaXMgc3RpbGwgcG9vciBzaW5jZSBpdCBpcyB1bmVjY2Vzc2FyaWx5IHNsb3cuCisJICovCisJaWYgKGF4ID4gREJMX01BWCAvIDIpCisJCXJldHVybiAoY3BhY2sobG9nKGh5cG90KHggLyBtX2UsIHkgLyBtX2UpKSArIDEsIGF0YW4yKHksIHgpKSk7CisKKwkvKgorCSAqIEF2b2lkIG92ZXJmbG93IHdoZW4geCBvciB5IGlzIGxhcmdlLiAgQXZvaWQgdW5kZXJmbG93IHdoZW4geCBvcgorCSAqIHkgaXMgc21hbGwuCisJICovCisJaWYgKGF4ID4gUVVBUlRFUl9TUVJUX01BWCB8fCBheSA8IFNRUlRfTUlOKQorCQlyZXR1cm4gKGNwYWNrKGxvZyhoeXBvdCh4LCB5KSksIGF0YW4yKHksIHgpKSk7CisKKwlyZXR1cm4gKGNwYWNrKGxvZyhheCAqIGF4ICsgYXkgKiBheSkgLyAyLCBhdGFuMih5LCB4KSkpOworfQorCisvKgorICoJCQkJPT09PT09PT09PT09PT09PT0KKyAqCQkJCXwgY2F0YW5oLCBjYXRhbiB8CisgKgkJCQk9PT09PT09PT09PT09PT09PQorICovCisKKy8qCisgKiBzdW1fc3F1YXJlcyh4LHkpID0geCp4ICsgeSp5IChvciBqdXN0IHgqeCBpZiB5Knkgd291bGQgdW5kZXJmbG93KS4KKyAqIEFzc3VtZXMgeCp4IGFuZCB5Knkgd2lsbCBub3Qgb3ZlcmZsb3cuCisgKiBBc3N1bWVzIHggYW5kIHkgYXJlIGZpbml0ZS4KKyAqIEFzc3VtZXMgeSBpcyBub24tbmVnYXRpdmUuCisgKiBBc3N1bWVzIGZhYnMoeCkgPj0gREJMX0VQU0lMT04uCisgKi8KK3N0YXRpYyBpbmxpbmUgZG91YmxlCitzdW1fc3F1YXJlcyhkb3VibGUgeCwgZG91YmxlIHkpCit7CisKKwkvKiBBdm9pZCB1bmRlcmZsb3cgd2hlbiB5IGlzIHNtYWxsLiAqLworCWlmICh5IDwgU1FSVF9NSU4pCisJCXJldHVybiAoeCAqIHgpOworCisJcmV0dXJuICh4ICogeCArIHkgKiB5KTsKK30KKworLyoKKyAqIHJlYWxfcGFydF9yZWNpcHJvY2FsKHgsIHkpID0gUmUoMS8oeCtJKnkpKSA9IHgvKHgqeCArIHkqeSkuCisgKiBBc3N1bWVzIHggYW5kIHkgYXJlIG5vdCBOYU4sIGFuZCBvbmUgb2YgeCBhbmQgeSBpcyBsYXJnZXIgdGhhbgorICogUkVDSVBfRVBTSUxPTi4gIFdlIGF2b2lkIHVud2FycmFudGVkIHVuZGVyZmxvdy4gIEl0IGlzIGltcG9ydGFudCB0byBub3QgdXNlCisgKiB0aGUgY29kZSBjcmVhbCgxL3opLCBiZWNhdXNlIHRoZSBpbWFnaW5hcnkgcGFydCBtYXkgcHJvZHVjZSBhbiB1bndhbnRlZAorICogdW5kZXJmbG93LgorICogVGhpcyBpcyBvbmx5IGNhbGxlZCBpbiBhIGNvbnRleHQgd2hlcmUgaW5leGFjdCBpcyBhbHdheXMgcmFpc2VkIGJlZm9yZQorICogdGhlIGNhbGwsIHNvIG5vIGVmZm9ydCBpcyBtYWRlIHRvIGF2b2lkIG9yIGZvcmNlIGluZXhhY3QuCisgKi8KK3N0YXRpYyBpbmxpbmUgZG91YmxlCityZWFsX3BhcnRfcmVjaXByb2NhbChkb3VibGUgeCwgZG91YmxlIHkpCit7CisJZG91YmxlIHNjYWxlOworCXVpbnQzMl90IGh4LCBoeTsKKwlpbnQzMl90IGl4LCBpeTsKKworCS8qCisJICogVGhpcyBjb2RlIGlzIGluc3BpcmVkIGJ5IHRoZSBDOTkgZG9jdW1lbnQgbjExMjQucGRmLCBTZWN0aW9uIEcuNS4xLAorCSAqIGV4YW1wbGUgMi4KKwkgKi8KKwlHRVRfSElHSF9XT1JEKGh4LCB4KTsKKwlpeCA9IGh4ICYgMHg3ZmYwMDAwMDsKKwlHRVRfSElHSF9XT1JEKGh5LCB5KTsKKwlpeSA9IGh5ICYgMHg3ZmYwMDAwMDsKKyNkZWZpbmUJQklBUwkoREJMX01BWF9FWFAgLSAxKQorLyogWFhYIG1vcmUgZ3VhcmQgZGlnaXRzIGFyZSB1c2VmdWwgaWZmIHRoZXJlIGlzIGV4dHJhIHByZWNpc2lvbi4gKi8KKyNkZWZpbmUJQ1VUT0ZGCShEQkxfTUFOVF9ESUcgLyAyICsgMSkJLyoganVzdCBoYWxmIG9yIDEgZ3VhcmQgZGlnaXQgKi8KKwlpZiAoaXggLSBpeSA+PSBDVVRPRkYgPDwgMjAgfHwgaXNpbmYoeCkpCisJCXJldHVybiAoMSAvIHgpOwkJLyogKy1JbmYgLT4gKy0wIGlzIHNwZWNpYWwgKi8KKwlpZiAoaXkgLSBpeCA+PSBDVVRPRkYgPDwgMjApCisJCXJldHVybiAoeCAvIHkgLyB5KTsJLyogc2hvdWxkIGF2b2lkIGRvdWJsZSBkaXYsIGJ1dCBoYXJkICovCisJaWYgKGl4IDw9IChCSUFTICsgREJMX01BWF9FWFAgLyAyIC0gQ1VUT0ZGKSA8PCAyMCkKKwkJcmV0dXJuICh4IC8gKHggKiB4ICsgeSAqIHkpKTsKKwlzY2FsZSA9IDE7CisJU0VUX0hJR0hfV09SRChzY2FsZSwgMHg3ZmYwMDAwMCAtIGl4KTsJLyogMioqKDEtaWxvZ2IoeCkpICovCisJeCAqPSBzY2FsZTsKKwl5ICo9IHNjYWxlOworCXJldHVybiAoeCAvICh4ICogeCArIHkgKiB5KSAqIHNjYWxlKTsKK30KKworLyoKKyAqIGNhdGFuaCh6KSA9IGxvZygoMSt6KS8oMS16KSkgLyAyCisgKiAgICAgICAgICAgPSBsb2cxcCg0KnggLyB8ei0xfF4yKSAvIDQKKyAqICAgICAgICAgICAgICsgSSAqIGF0YW4yKDIqeSwgKDEteCkqKDEreCkteSp5KSAvIDIKKyAqCisgKiBjYXRhbmgoeikgPSB6ICsgTyh6XjMpICAgYXMgeiAtPiAwCisgKgorICogY2F0YW5oKHopID0gMS96ICsgc2lnbih5KSpJKlBJLzIgKyBPKDEvel4zKSAgIGFzIHogLT4gaW5maW5pdHkKKyAqIFRoZSBhYm92ZSBmb3JtdWxhIHdvcmtzIGZvciB0aGUgcmVhbCBwYXJ0IGFzIHdlbGwsIGJlY2F1c2UKKyAqIFJlKGNhdGFuaCh6KSkgPSB4L3x6fF4yICsgTyh4L3peNCkKKyAqICAgIGFzIHogLT4gaW5maW5pdHksIHVuaWZvcm1seSBpbiB4CisgKi8KK2RvdWJsZSBjb21wbGV4CitjYXRhbmgoZG91YmxlIGNvbXBsZXggeikKK3sKKwlkb3VibGUgeCwgeSwgYXgsIGF5LCByeCwgcnk7CisKKwl4ID0gY3JlYWwoeik7CisJeSA9IGNpbWFnKHopOworCWF4ID0gZmFicyh4KTsKKwlheSA9IGZhYnMoeSk7CisKKwkvKiBUaGlzIGhlbHBzIGhhbmRsZSBtYW55IGNhc2VzLiAqLworCWlmICh5ID09IDAgJiYgYXggPD0gMSkKKwkJcmV0dXJuIChjcGFjayhhdGFuaCh4KSwgeSkpOworCisJLyogVG8gZW5zdXJlIHRoZSBzYW1lIGFjY3VyYWN5IGFzIGF0YW4oKSwgYW5kIHRvIGZpbHRlciBvdXQgeiA9IDAuICovCisJaWYgKHggPT0gMCkKKwkJcmV0dXJuIChjcGFjayh4LCBhdGFuKHkpKSk7CisKKwlpZiAoaXNuYW4oeCkgfHwgaXNuYW4oeSkpIHsKKwkJLyogY2F0YW5oKCstSW5mICsgSSpOYU4pID0gKy0wICsgSSpOYU4gKi8KKwkJaWYgKGlzaW5mKHgpKQorCQkJcmV0dXJuIChjcGFjayhjb3B5c2lnbigwLCB4KSwgeSArIHkpKTsKKwkJLyogY2F0YW5oKE5hTiArIEkqKy1JbmYpID0gc2lnbihOYU4pMCArIEkqKy1QSS8yICovCisJCWlmIChpc2luZih5KSkKKwkJCXJldHVybiAoY3BhY2soY29weXNpZ24oMCwgeCksCisJCQkgICAgY29weXNpZ24ocGlvMl9oaSArIHBpbzJfbG8sIHkpKSk7CisJCS8qCisJCSAqIEFsbCBvdGhlciBjYXNlcyBpbnZvbHZpbmcgTmFOIHJldHVybiBOYU4gKyBJKk5hTi4KKwkJICogQzk5IGxlYXZlcyBpdCBvcHRpb25hbCB3aGV0aGVyIHRvIHJhaXNlIGludmFsaWQgaWYgb25lIG9mCisJCSAqIHRoZSBhcmd1bWVudHMgaXMgbm90IE5hTiwgc28gd2Ugb3B0IG5vdCB0byByYWlzZSBpdC4KKwkJICovCisJCXJldHVybiAoY3BhY2soeCArIDAuMEwgKyAoeSArIDApLCB4ICsgMC4wTCArICh5ICsgMCkpKTsKKwl9CisKKwlpZiAoYXggPiBSRUNJUF9FUFNJTE9OIHx8IGF5ID4gUkVDSVBfRVBTSUxPTikKKwkJcmV0dXJuIChjcGFjayhyZWFsX3BhcnRfcmVjaXByb2NhbCh4LCB5KSwKKwkJICAgIGNvcHlzaWduKHBpbzJfaGkgKyBwaW8yX2xvLCB5KSkpOworCisJaWYgKGF4IDwgU1FSVF8zX0VQU0lMT04gLyAyICYmIGF5IDwgU1FSVF8zX0VQU0lMT04gLyAyKSB7CisJCS8qCisJCSAqIHogPSAwIHdhcyBmaWx0ZXJlZCBvdXQgYWJvdmUuICBBbGwgb3RoZXIgY2FzZXMgbXVzdCByYWlzZQorCQkgKiBpbmV4YWN0LCBidXQgdGhpcyBpcyB0aGUgb25seSBvbmx5IHRoYXQgbmVlZHMgdG8gZG8gaXQKKwkJICogZXhwbGljaXRseS4KKwkJICovCisJCXJhaXNlX2luZXhhY3QoKTsKKwkJcmV0dXJuICh6KTsKKwl9CisKKwlpZiAoYXggPT0gMSAmJiBheSA8IERCTF9FUFNJTE9OKQorCQlyeCA9IChtX2xuMiAtIGxvZyhheSkpIC8gMjsKKwllbHNlCisJCXJ4ID0gbG9nMXAoNCAqIGF4IC8gc3VtX3NxdWFyZXMoYXggLSAxLCBheSkpIC8gNDsKKworCWlmIChheCA9PSAxKQorCQlyeSA9IGF0YW4yKDIsIC1heSkgLyAyOworCWVsc2UgaWYgKGF5IDwgREJMX0VQU0lMT04pCisJCXJ5ID0gYXRhbjIoMiAqIGF5LCAoMSAtIGF4KSAqICgxICsgYXgpKSAvIDI7CisJZWxzZQorCQlyeSA9IGF0YW4yKDIgKiBheSwgKDEgLSBheCkgKiAoMSArIGF4KSAtIGF5ICogYXkpIC8gMjsKKworCXJldHVybiAoY3BhY2soY29weXNpZ24ocngsIHgpLCBjb3B5c2lnbihyeSwgeSkpKTsKK30KKworLyoKKyAqIGNhdGFuKHopID0gcmV2ZXJzZShjYXRhbmgocmV2ZXJzZSh6KSkpCisgKiB3aGVyZSByZXZlcnNlKHggKyBJKnkpID0geSArIEkqeCA9IEkqY29uaih6KS4KKyAqLworZG91YmxlIGNvbXBsZXgKK2NhdGFuKGRvdWJsZSBjb21wbGV4IHopCit7CisJZG91YmxlIGNvbXBsZXggdyA9IGNhdGFuaChjcGFjayhjaW1hZyh6KSwgY3JlYWwoeikpKTsKKworCXJldHVybiAoY3BhY2soY2ltYWcodyksIGNyZWFsKHcpKSk7Cit9CmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2NhdHJpZ2YuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvY2F0cmlnZi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA4ZWJlZjcKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2NhdHJpZ2YuYwpAQCAtMCwwICsxLDM5MyBAQAorLyotCisgKiBDb3B5cmlnaHQgKGMpIDIwMTIgU3RlcGhlbiBNb250Z29tZXJ5LVNtaXRoIDxzdGVwaGVuQEZyZWVCU0QuT1JHPgorICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCisgKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisvKgorICogVGhlIGFsZ29yaXRobSBpcyB2ZXJ5IGNsb3NlIHRvIHRoYXQgaW4gIkltcGxlbWVudGluZyB0aGUgY29tcGxleCBhcmNzaW5lCisgKiBhbmQgYXJjY29zaW5lIGZ1bmN0aW9ucyB1c2luZyBleGNlcHRpb24gaGFuZGxpbmciIGJ5IFQuIEUuIEh1bGwsIFRob21hcyBGLgorICogRmFpcmdyaWV2ZSwgYW5kIFBpbmcgVGFrIFBldGVyIFRhbmcsIHB1Ymxpc2hlZCBpbiBBQ00gVHJhbnNhY3Rpb25zIG9uCisgKiBNYXRoZW1hdGljYWwgU29mdHdhcmUsIFZvbHVtZSAyMyBJc3N1ZSAzLCAxOTk3LCBQYWdlcyAyOTktMzM1LAorICogaHR0cDovL2RsLmFjbS5vcmcvY2l0YXRpb24uY2ZtP2lkPTI3NTMyNC4KKyAqCisgKiBTZWUgY2F0cmlnLmMgZm9yIGNvbXBsZXRlIGNvbW1lbnRzLgorICoKKyAqIFhYWCBjb21tZW50cyB3ZXJlIHJlbW92ZWQgYXV0b21hdGljYWxseSwgYW5kIGV2ZW4gc2hvcnQgb25lcyBvbiB0aGUgcmlnaHQKKyAqIG9mIHN0YXRlbWVudHMgd2VyZSByZW1vdmVkIChhbGwgb2YgdGhlbSksIGNvbnRyYXJ5IHRvIG5vcm1hbCBzdHlsZS4gIE9ubHkKKyAqIGEgZmV3IGNvbW1lbnRzIG9uIHRoZSByaWdodCBvZiBkZWNsYXJhdGlvbnMgcmVtYWluLgorICovCisKKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KK19fRkJTRElEKCIkRnJlZUJTRCQiKTsKKworI2luY2x1ZGUgPGNvbXBsZXguaD4KKyNpbmNsdWRlIDxmbG9hdC5oPgorCisjaW5jbHVkZSAibWF0aC5oIgorI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgorCisjdW5kZWYgaXNpbmYKKyNkZWZpbmUgaXNpbmYoeCkJKGZhYnNmKHgpID09IElORklOSVRZKQorI3VuZGVmIGlzbmFuCisjZGVmaW5lIGlzbmFuKHgpCSgoeCkgIT0gKHgpKQorI2RlZmluZQlyYWlzZV9pbmV4YWN0KCkJZG8geyB2b2xhdGlsZSBmbG9hdCBqdW5rID0gMSArIHRpbnk7IH0gd2hpbGUoMCkKKyN1bmRlZiBzaWduYml0CisjZGVmaW5lIHNpZ25iaXQoeCkJKF9fYnVpbHRpbl9zaWduYml0Zih4KSkKKworc3RhdGljIGNvbnN0IGZsb2F0CitBX2Nyb3Nzb3ZlciA9CQkxMCwKK0JfY3Jvc3NvdmVyID0JCTAuNjQxNywKK0ZPVVJfU1FSVF9NSU4gPQkJMHgxcC02MSwKK1FVQVJURVJfU1FSVF9NQVggPQkweDFwNjEsCittX2UgPQkJCTIuNzE4MjgxODI4NWUwLAkJLyogIDB4YWRmODU0LjBwLTIyICovCittX2xuMiA9CQkJNi45MzE0NzE4MDU2ZS0xLAkvKiAgMHhiMTcyMTguMHAtMjQgKi8KK3BpbzJfaGkgPQkJMS41NzA3OTYyNTEzZTAsCQkvKiAgMHhjOTBmZGEuMHAtMjMgKi8KK1JFQ0lQX0VQU0lMT04gPQkJMSAvIEZMVF9FUFNJTE9OLAorU1FSVF8zX0VQU0lMT04gPQk1Ljk4MDE5OTU2NzNlLTQsCS8qICAweDljYzQ3MS4wcC0zNCAqLworU1FSVF82X0VQU0lMT04gPQk4LjQ1NzI3OTMzMzhlLTQsCS8qICAweGRkYjNkNy4wcC0zNCAqLworU1FSVF9NSU4gPQkJMHgxcC02MzsKKworc3RhdGljIGNvbnN0IHZvbGF0aWxlIGZsb2F0CitwaW8yX2xvID0JCTcuNTQ5Nzg5OTU0OWUtOCwJLyogIDB4YTIyMTY5LjBwLTQ3ICovCit0aW55ID0JCQkweDFwLTEwMDsKKworc3RhdGljIGZsb2F0IGNvbXBsZXggY2xvZ19mb3JfbGFyZ2VfdmFsdWVzKGZsb2F0IGNvbXBsZXggeik7CisKK3N0YXRpYyBpbmxpbmUgZmxvYXQKK2YoZmxvYXQgYSwgZmxvYXQgYiwgZmxvYXQgaHlwb3RfYV9iKQoreworCWlmIChiIDwgMCkKKwkJcmV0dXJuICgoaHlwb3RfYV9iIC0gYikgLyAyKTsKKwlpZiAoYiA9PSAwKQorCQlyZXR1cm4gKGEgLyAyKTsKKwlyZXR1cm4gKGEgKiBhIC8gKGh5cG90X2FfYiArIGIpIC8gMik7Cit9CisKK3N0YXRpYyBpbmxpbmUgdm9pZAorZG9faGFyZF93b3JrKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0ICpyeCwgaW50ICpCX2lzX3VzYWJsZSwgZmxvYXQgKkIsCisgICAgZmxvYXQgKnNxcnRfQTJteTIsIGZsb2F0ICpuZXdfeSkKK3sKKwlmbG9hdCBSLCBTLCBBOworCWZsb2F0IEFtMSwgQW15OworCisJUiA9IGh5cG90Zih4LCB5ICsgMSk7CisJUyA9IGh5cG90Zih4LCB5IC0gMSk7CisKKwlBID0gKFIgKyBTKSAvIDI7CisJaWYgKEEgPCAxKQorCQlBID0gMTsKKworCWlmIChBIDwgQV9jcm9zc292ZXIpIHsKKwkJaWYgKHkgPT0gMSAmJiB4IDwgRkxUX0VQU0lMT04gKiBGTFRfRVBTSUxPTiAvIDEyOCkgeworCQkJKnJ4ID0gc3FydGYoeCk7CisJCX0gZWxzZSBpZiAoeCA+PSBGTFRfRVBTSUxPTiAqIGZhYnNmKHkgLSAxKSkgeworCQkJQW0xID0gZih4LCAxICsgeSwgUikgKyBmKHgsIDEgLSB5LCBTKTsKKwkJCSpyeCA9IGxvZzFwZihBbTEgKyBzcXJ0ZihBbTEgKiAoQSArIDEpKSk7CisJCX0gZWxzZSBpZiAoeSA8IDEpIHsKKwkJCSpyeCA9IHggLyBzcXJ0ZigoMSAtIHkpICogKDEgKyB5KSk7CisJCX0gZWxzZSB7CisJCQkqcnggPSBsb2cxcGYoKHkgLSAxKSArIHNxcnRmKCh5IC0gMSkgKiAoeSArIDEpKSk7CisJCX0KKwl9IGVsc2UgeworCQkqcnggPSBsb2dmKEEgKyBzcXJ0ZihBICogQSAtIDEpKTsKKwl9CisKKwkqbmV3X3kgPSB5OworCisJaWYgKHkgPCBGT1VSX1NRUlRfTUlOKSB7CisJCSpCX2lzX3VzYWJsZSA9IDA7CisJCSpzcXJ0X0EybXkyID0gQSAqICgyIC8gRkxUX0VQU0lMT04pOworCQkqbmV3X3kgPSB5ICogKDIgLyBGTFRfRVBTSUxPTik7CisJCXJldHVybjsKKwl9CisKKwkqQiA9IHkgLyBBOworCSpCX2lzX3VzYWJsZSA9IDE7CisKKwlpZiAoKkIgPiBCX2Nyb3Nzb3ZlcikgeworCQkqQl9pc191c2FibGUgPSAwOworCQlpZiAoeSA9PSAxICYmIHggPCBGTFRfRVBTSUxPTiAvIDEyOCkgeworCQkJKnNxcnRfQTJteTIgPSBzcXJ0Zih4KSAqIHNxcnRmKChBICsgeSkgLyAyKTsKKwkJfSBlbHNlIGlmICh4ID49IEZMVF9FUFNJTE9OICogZmFic2YoeSAtIDEpKSB7CisJCQlBbXkgPSBmKHgsIHkgKyAxLCBSKSArIGYoeCwgeSAtIDEsIFMpOworCQkJKnNxcnRfQTJteTIgPSBzcXJ0ZihBbXkgKiAoQSArIHkpKTsKKwkJfSBlbHNlIGlmICh5ID4gMSkgeworCQkJKnNxcnRfQTJteTIgPSB4ICogKDQgLyBGTFRfRVBTSUxPTiAvIEZMVF9FUFNJTE9OKSAqIHkgLworCQkJICAgIHNxcnRmKCh5ICsgMSkgKiAoeSAtIDEpKTsKKwkJCSpuZXdfeSA9IHkgKiAoNCAvIEZMVF9FUFNJTE9OIC8gRkxUX0VQU0lMT04pOworCQl9IGVsc2UgeworCQkJKnNxcnRfQTJteTIgPSBzcXJ0ZigoMSAtIHkpICogKDEgKyB5KSk7CisJCX0KKwl9Cit9CisKK2Zsb2F0IGNvbXBsZXgKK2Nhc2luaGYoZmxvYXQgY29tcGxleCB6KQoreworCWZsb2F0IHgsIHksIGF4LCBheSwgcngsIHJ5LCBCLCBzcXJ0X0EybXkyLCBuZXdfeTsKKwlpbnQgQl9pc191c2FibGU7CisJZmxvYXQgY29tcGxleCB3OworCisJeCA9IGNyZWFsZih6KTsKKwl5ID0gY2ltYWdmKHopOworCWF4ID0gZmFic2YoeCk7CisJYXkgPSBmYWJzZih5KTsKKworCWlmIChpc25hbih4KSB8fCBpc25hbih5KSkgeworCQlpZiAoaXNpbmYoeCkpCisJCQlyZXR1cm4gKGNwYWNrZih4LCB5ICsgeSkpOworCQlpZiAoaXNpbmYoeSkpCisJCQlyZXR1cm4gKGNwYWNrZih5LCB4ICsgeCkpOworCQlpZiAoeSA9PSAwKQorCQkJcmV0dXJuIChjcGFja2YoeCArIHgsIHkpKTsKKwkJcmV0dXJuIChjcGFja2YoeCArIDAuMEwgKyAoeSArIDApLCB4ICsgMC4wTCArICh5ICsgMCkpKTsKKwl9CisKKwlpZiAoYXggPiBSRUNJUF9FUFNJTE9OIHx8IGF5ID4gUkVDSVBfRVBTSUxPTikgeworCQlpZiAoc2lnbmJpdCh4KSA9PSAwKQorCQkJdyA9IGNsb2dfZm9yX2xhcmdlX3ZhbHVlcyh6KSArIG1fbG4yOworCQllbHNlCisJCQl3ID0gY2xvZ19mb3JfbGFyZ2VfdmFsdWVzKC16KSArIG1fbG4yOworCQlyZXR1cm4gKGNwYWNrZihjb3B5c2lnbmYoY3JlYWxmKHcpLCB4KSwKKwkJICAgIGNvcHlzaWduZihjaW1hZ2YodyksIHkpKSk7CisJfQorCisJaWYgKHggPT0gMCAmJiB5ID09IDApCisJCXJldHVybiAoeik7CisKKwlyYWlzZV9pbmV4YWN0KCk7CisKKwlpZiAoYXggPCBTUVJUXzZfRVBTSUxPTiAvIDQgJiYgYXkgPCBTUVJUXzZfRVBTSUxPTiAvIDQpCisJCXJldHVybiAoeik7CisKKwlkb19oYXJkX3dvcmsoYXgsIGF5LCAmcngsICZCX2lzX3VzYWJsZSwgJkIsICZzcXJ0X0EybXkyLCAmbmV3X3kpOworCWlmIChCX2lzX3VzYWJsZSkKKwkJcnkgPSBhc2luZihCKTsKKwllbHNlCisJCXJ5ID0gYXRhbjJmKG5ld195LCBzcXJ0X0EybXkyKTsKKwlyZXR1cm4gKGNwYWNrZihjb3B5c2lnbmYocngsIHgpLCBjb3B5c2lnbmYocnksIHkpKSk7Cit9CisKK2Zsb2F0IGNvbXBsZXgKK2Nhc2luZihmbG9hdCBjb21wbGV4IHopCit7CisJZmxvYXQgY29tcGxleCB3ID0gY2FzaW5oZihjcGFja2YoY2ltYWdmKHopLCBjcmVhbGYoeikpKTsKKworCXJldHVybiAoY3BhY2tmKGNpbWFnZih3KSwgY3JlYWxmKHcpKSk7Cit9CisKK2Zsb2F0IGNvbXBsZXgKK2NhY29zZihmbG9hdCBjb21wbGV4IHopCit7CisJZmxvYXQgeCwgeSwgYXgsIGF5LCByeCwgcnksIEIsIHNxcnRfQTJteDIsIG5ld194OworCWludCBzeCwgc3k7CisJaW50IEJfaXNfdXNhYmxlOworCWZsb2F0IGNvbXBsZXggdzsKKworCXggPSBjcmVhbGYoeik7CisJeSA9IGNpbWFnZih6KTsKKwlzeCA9IHNpZ25iaXQoeCk7CisJc3kgPSBzaWduYml0KHkpOworCWF4ID0gZmFic2YoeCk7CisJYXkgPSBmYWJzZih5KTsKKworCWlmIChpc25hbih4KSB8fCBpc25hbih5KSkgeworCQlpZiAoaXNpbmYoeCkpCisJCQlyZXR1cm4gKGNwYWNrZih5ICsgeSwgLUlORklOSVRZKSk7CisJCWlmIChpc2luZih5KSkKKwkJCXJldHVybiAoY3BhY2tmKHggKyB4LCAteSkpOworCQlpZiAoeCA9PSAwKQorCQkJcmV0dXJuIChjcGFja2YocGlvMl9oaSArIHBpbzJfbG8sIHkgKyB5KSk7CisJCXJldHVybiAoY3BhY2tmKHggKyAwLjBMICsgKHkgKyAwKSwgeCArIDAuMEwgKyAoeSArIDApKSk7CisJfQorCisJaWYgKGF4ID4gUkVDSVBfRVBTSUxPTiB8fCBheSA+IFJFQ0lQX0VQU0lMT04pIHsKKwkJdyA9IGNsb2dfZm9yX2xhcmdlX3ZhbHVlcyh6KTsKKwkJcnggPSBmYWJzZihjaW1hZ2YodykpOworCQlyeSA9IGNyZWFsZih3KSArIG1fbG4yOworCQlpZiAoc3kgPT0gMCkKKwkJCXJ5ID0gLXJ5OworCQlyZXR1cm4gKGNwYWNrZihyeCwgcnkpKTsKKwl9CisKKwlpZiAoeCA9PSAxICYmIHkgPT0gMCkKKwkJcmV0dXJuIChjcGFja2YoMCwgLXkpKTsKKworCXJhaXNlX2luZXhhY3QoKTsKKworCWlmIChheCA8IFNRUlRfNl9FUFNJTE9OIC8gNCAmJiBheSA8IFNRUlRfNl9FUFNJTE9OIC8gNCkKKwkJcmV0dXJuIChjcGFja2YocGlvMl9oaSAtICh4IC0gcGlvMl9sbyksIC15KSk7CisKKwlkb19oYXJkX3dvcmsoYXksIGF4LCAmcnksICZCX2lzX3VzYWJsZSwgJkIsICZzcXJ0X0EybXgyLCAmbmV3X3gpOworCWlmIChCX2lzX3VzYWJsZSkgeworCQlpZiAoc3ggPT0gMCkKKwkJCXJ4ID0gYWNvc2YoQik7CisJCWVsc2UKKwkJCXJ4ID0gYWNvc2YoLUIpOworCX0gZWxzZSB7CisJCWlmIChzeCA9PSAwKQorCQkJcnggPSBhdGFuMmYoc3FydF9BMm14MiwgbmV3X3gpOworCQllbHNlCisJCQlyeCA9IGF0YW4yZihzcXJ0X0EybXgyLCAtbmV3X3gpOworCX0KKwlpZiAoc3kgPT0gMCkKKwkJcnkgPSAtcnk7CisJcmV0dXJuIChjcGFja2YocngsIHJ5KSk7Cit9CisKK2Zsb2F0IGNvbXBsZXgKK2NhY29zaGYoZmxvYXQgY29tcGxleCB6KQoreworCWZsb2F0IGNvbXBsZXggdzsKKwlmbG9hdCByeCwgcnk7CisKKwl3ID0gY2Fjb3NmKHopOworCXJ4ID0gY3JlYWxmKHcpOworCXJ5ID0gY2ltYWdmKHcpOworCWlmIChpc25hbihyeCkgJiYgaXNuYW4ocnkpKQorCQlyZXR1cm4gKGNwYWNrZihyeSwgcngpKTsKKwlpZiAoaXNuYW4ocngpKQorCQlyZXR1cm4gKGNwYWNrZihmYWJzZihyeSksIHJ4KSk7CisJaWYgKGlzbmFuKHJ5KSkKKwkJcmV0dXJuIChjcGFja2YocnksIHJ5KSk7CisJcmV0dXJuIChjcGFja2YoZmFic2YocnkpLCBjb3B5c2lnbmYocngsIGNpbWFnZih6KSkpKTsKK30KKworc3RhdGljIGZsb2F0IGNvbXBsZXgKK2Nsb2dfZm9yX2xhcmdlX3ZhbHVlcyhmbG9hdCBjb21wbGV4IHopCit7CisJZmxvYXQgeCwgeTsKKwlmbG9hdCBheCwgYXksIHQ7CisKKwl4ID0gY3JlYWxmKHopOworCXkgPSBjaW1hZ2Yoeik7CisJYXggPSBmYWJzZih4KTsKKwlheSA9IGZhYnNmKHkpOworCWlmIChheCA8IGF5KSB7CisJCXQgPSBheDsKKwkJYXggPSBheTsKKwkJYXkgPSB0OworCX0KKworCWlmIChheCA+IEZMVF9NQVggLyAyKQorCQlyZXR1cm4gKGNwYWNrZihsb2dmKGh5cG90Zih4IC8gbV9lLCB5IC8gbV9lKSkgKyAxLAorCQkgICAgYXRhbjJmKHksIHgpKSk7CisKKwlpZiAoYXggPiBRVUFSVEVSX1NRUlRfTUFYIHx8IGF5IDwgU1FSVF9NSU4pCisJCXJldHVybiAoY3BhY2tmKGxvZ2YoaHlwb3RmKHgsIHkpKSwgYXRhbjJmKHksIHgpKSk7CisKKwlyZXR1cm4gKGNwYWNrZihsb2dmKGF4ICogYXggKyBheSAqIGF5KSAvIDIsIGF0YW4yZih5LCB4KSkpOworfQorCitzdGF0aWMgaW5saW5lIGZsb2F0CitzdW1fc3F1YXJlcyhmbG9hdCB4LCBmbG9hdCB5KQoreworCisJaWYgKHkgPCBTUVJUX01JTikKKwkJcmV0dXJuICh4ICogeCk7CisKKwlyZXR1cm4gKHggKiB4ICsgeSAqIHkpOworfQorCitzdGF0aWMgaW5saW5lIGZsb2F0CityZWFsX3BhcnRfcmVjaXByb2NhbChmbG9hdCB4LCBmbG9hdCB5KQoreworCWZsb2F0IHNjYWxlOworCXVpbnQzMl90IGh4LCBoeTsKKwlpbnQzMl90IGl4LCBpeTsKKworCUdFVF9GTE9BVF9XT1JEKGh4LCB4KTsKKwlpeCA9IGh4ICYgMHg3ZjgwMDAwMDsKKwlHRVRfRkxPQVRfV09SRChoeSwgeSk7CisJaXkgPSBoeSAmIDB4N2Y4MDAwMDA7CisjZGVmaW5lCUJJQVMJKEZMVF9NQVhfRVhQIC0gMSkKKyNkZWZpbmUJQ1VUT0ZGCShGTFRfTUFOVF9ESUcgLyAyICsgMSkKKwlpZiAoaXggLSBpeSA+PSBDVVRPRkYgPDwgMjMgfHwgaXNpbmYoeCkpCisJCXJldHVybiAoMSAvIHgpOworCWlmIChpeSAtIGl4ID49IENVVE9GRiA8PCAyMykKKwkJcmV0dXJuICh4IC8geSAvIHkpOworCWlmIChpeCA8PSAoQklBUyArIEZMVF9NQVhfRVhQIC8gMiAtIENVVE9GRikgPDwgMjMpCisJCXJldHVybiAoeCAvICh4ICogeCArIHkgKiB5KSk7CisJU0VUX0ZMT0FUX1dPUkQoc2NhbGUsIDB4N2Y4MDAwMDAgLSBpeCk7CisJeCAqPSBzY2FsZTsKKwl5ICo9IHNjYWxlOworCXJldHVybiAoeCAvICh4ICogeCArIHkgKiB5KSAqIHNjYWxlKTsKK30KKworZmxvYXQgY29tcGxleAorY2F0YW5oZihmbG9hdCBjb21wbGV4IHopCit7CisJZmxvYXQgeCwgeSwgYXgsIGF5LCByeCwgcnk7CisKKwl4ID0gY3JlYWxmKHopOworCXkgPSBjaW1hZ2Yoeik7CisJYXggPSBmYWJzZih4KTsKKwlheSA9IGZhYnNmKHkpOworCisJaWYgKHkgPT0gMCAmJiBheCA8PSAxKQorCQlyZXR1cm4gKGNwYWNrZihhdGFuaGYoeCksIHkpKTsKKworCWlmICh4ID09IDApCisJCXJldHVybiAoY3BhY2tmKHgsIGF0YW5mKHkpKSk7CisKKwlpZiAoaXNuYW4oeCkgfHwgaXNuYW4oeSkpIHsKKwkJaWYgKGlzaW5mKHgpKQorCQkJcmV0dXJuIChjcGFja2YoY29weXNpZ25mKDAsIHgpLCB5ICsgeSkpOworCQlpZiAoaXNpbmYoeSkpCisJCQlyZXR1cm4gKGNwYWNrZihjb3B5c2lnbmYoMCwgeCksCisJCQkgICAgY29weXNpZ25mKHBpbzJfaGkgKyBwaW8yX2xvLCB5KSkpOworCQlyZXR1cm4gKGNwYWNrZih4ICsgMC4wTCArICh5ICsgMCksIHggKyAwLjBMICsgKHkgKyAwKSkpOworCX0KKworCWlmIChheCA+IFJFQ0lQX0VQU0lMT04gfHwgYXkgPiBSRUNJUF9FUFNJTE9OKQorCQlyZXR1cm4gKGNwYWNrZihyZWFsX3BhcnRfcmVjaXByb2NhbCh4LCB5KSwKKwkJICAgIGNvcHlzaWduZihwaW8yX2hpICsgcGlvMl9sbywgeSkpKTsKKworCWlmIChheCA8IFNRUlRfM19FUFNJTE9OIC8gMiAmJiBheSA8IFNRUlRfM19FUFNJTE9OIC8gMikgeworCQlyYWlzZV9pbmV4YWN0KCk7CisJCXJldHVybiAoeik7CisJfQorCisJaWYgKGF4ID09IDEgJiYgYXkgPCBGTFRfRVBTSUxPTikKKwkJcnggPSAobV9sbjIgLSBsb2dmKGF5KSkgLyAyOworCWVsc2UKKwkJcnggPSBsb2cxcGYoNCAqIGF4IC8gc3VtX3NxdWFyZXMoYXggLSAxLCBheSkpIC8gNDsKKworCWlmIChheCA9PSAxKQorCQlyeSA9IGF0YW4yZigyLCAtYXkpIC8gMjsKKwllbHNlIGlmIChheSA8IEZMVF9FUFNJTE9OKQorCQlyeSA9IGF0YW4yZigyICogYXksICgxIC0gYXgpICogKDEgKyBheCkpIC8gMjsKKwllbHNlCisJCXJ5ID0gYXRhbjJmKDIgKiBheSwgKDEgLSBheCkgKiAoMSArIGF4KSAtIGF5ICogYXkpIC8gMjsKKworCXJldHVybiAoY3BhY2tmKGNvcHlzaWduZihyeCwgeCksIGNvcHlzaWduZihyeSwgeSkpKTsKK30KKworZmxvYXQgY29tcGxleAorY2F0YW5mKGZsb2F0IGNvbXBsZXggeikKK3sKKwlmbG9hdCBjb21wbGV4IHcgPSBjYXRhbmhmKGNwYWNrZihjaW1hZ2YoeiksIGNyZWFsZih6KSkpOworCisJcmV0dXJuIChjcGFja2YoY2ltYWdmKHcpLCBjcmVhbGYodykpKTsKK30KZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hY29zaGwuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hY29zaGwuYwppbmRleCA1OWZhZWIwLi5iOWYzYWVkIDEwMDY0NAotLS0gYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYWNvc2hsLmMKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Fjb3NobC5jCkBAIC03LDcgKzcsNyBAQAogICoKICAqIERldmVsb3BlZCBhdCBTdW5Tb2Z0LCBhIFN1biBNaWNyb3N5c3RlbXMsIEluYy4gYnVzaW5lc3MuCiAgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzCi0gKiBzb2Z0d2FyZSBpcyBmcmVlbHkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGlzIG5vdGljZQorICogc29mdHdhcmUgaXMgZnJlZWx5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhpcyBub3RpY2UgCiAgKiBpcyBwcmVzZXJ2ZWQuCiAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgKgpAQCAtNzUsNyArNzUsNyBAQAogCX0gZWxzZSBpZiAoaHggPj0gQklBUyArIEVYUF9MQVJHRSkgeyAvKiB4ID49IExBUkdFICovCiAJICAgIGlmIChoeCA+PSAweDdmZmYpIHsJCS8qIHggaXMgaW5mLCBOYU4gb3IgbWlzbm9ybWFsICovCiAJICAgICAgICBSRVRVUk5JKHgreCk7Ci0JICAgIH0gZWxzZQorCSAgICB9IGVsc2UgCiAJCVJFVFVSTkkobG9nbCh4KStsbjIpOwkvKiBhY29zaChodWdlKT1sb2coMngpLCBvciBtaXNub3JtYWwgKi8KIAl9IGVsc2UgaWYgKGh4ID09IDB4M2ZmZiAmJiB4ID09IDEpIHsKIAkgICAgUkVUVVJOSSgwLjApOwkJLyogYWNvc2goMSkgPSAwICovCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYXRhbmhsLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfYXRhbmhsLmMKaW5kZXggYTg4ODQyNi4uMTFkNTZlYSAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2F0YW5obC5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9hdGFuaGwuYwpAQCAtNyw3ICs3LDcgQEAKICAqCiAgKiBEZXZlbG9wZWQgYXQgU3VuU29mdCwgYSBTdW4gTWljcm9zeXN0ZW1zLCBJbmMuIGJ1c2luZXNzLgogICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcwotICogc29mdHdhcmUgaXMgZnJlZWx5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhpcyBub3RpY2UKKyAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlIAogICogaXMgcHJlc2VydmVkLgogICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICoKQEAgLTY4LDcgKzY4LDcgQEAKIAlpZiAoaXggPCAweDNmZmUpIHsJCS8qIHx4fCA8IDAuNSwgb3IgbWlzbm9ybWFsICovCiAJICAgIHQgPSB4K3g7CiAJICAgIHQgPSAwLjUqbG9nMXBsKHQrdCp4LyhvbmUteCkpOwotCX0gZWxzZQorCX0gZWxzZSAKIAkgICAgdCA9IDAuNSpsb2cxcGwoKHgreCkvKG9uZS14KSk7CiAJUkVUVVJOSSgoaHggJiAweDgwMDApID09IDAgPyB0IDogLXQpOwogfQpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Nvc2guYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9jb3NoLmMKaW5kZXggYTM2MzY5NS4uMjQ2YjVmYiAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Nvc2guYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfY29zaC5jCkBAIC0zNSw2ICszNSw4IEBACiAgKglvbmx5IGNvc2goMCk9MSBpcyBleGFjdCBmb3IgZmluaXRlIHguCiAgKi8KIAorI2luY2x1ZGUgPGZsb2F0Lmg+CisKICNpbmNsdWRlICJtYXRoLmgiCiAjaW5jbHVkZSAibWF0aF9wcml2YXRlLmgiCiAKQEAgLTc3LDMgKzc5LDcgQEAKICAgICAvKiB8eHwgPiBvdmVyZmxvd3RocmVzb2xkLCBjb3NoKHgpIG92ZXJmbG93ICovCiAJcmV0dXJuIGh1Z2UqaHVnZTsKIH0KKworI2lmIChMREJMX01BTlRfRElHID09IDUzKQorX193ZWFrX3JlZmVyZW5jZShjb3NoLCBjb3NobCk7CisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9jb3NobC5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2Nvc2hsLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGEyMTI3NwotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9jb3NobC5jCkBAIC0wLDAgKzEsMTMwIEBACisvKiBmcm9tOiBGcmVlQlNEOiBoZWFkL2xpYi9tc3VuL3NyYy9lX2Nvc2hsLmMgWFhYICovCisKKy8qCisgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKiBDb3B5cmlnaHQgKEMpIDE5OTMgYnkgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIERldmVsb3BlZCBhdCBTdW5Qcm8sIGEgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBidXNpbmVzcy4KKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMKKyAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlCisgKiBpcyBwcmVzZXJ2ZWQuCisgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKi8KKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorX19GQlNESUQoIiRGcmVlQlNEJCIpOworCisvKgorICogU2VlIGVfY29zaC5jIGZvciBjb21wbGV0ZSBjb21tZW50cy4KKyAqCisgKiBDb252ZXJ0ZWQgdG8gbG9uZyBkb3VibGUgYnkgQnJ1Y2UgRC4gRXZhbnMuCisgKi8KKworI2luY2x1ZGUgPGZsb2F0Lmg+CisjaWZkZWYgX19pMzg2X18KKyNpbmNsdWRlIDxpZWVlZnAuaD4KKyNlbmRpZgorCisjaW5jbHVkZSAiZnBtYXRoLmgiCisjaW5jbHVkZSAibWF0aC5oIgorI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgorI2luY2x1ZGUgImtfZXhwbC5oIgorCisjaWYgTERCTF9NQVhfRVhQICE9IDB4NDAwMAorLyogV2UgYWxzbyByZXF1aXJlIHRoZSB1c3VhbCBleHBzaWduIGVuY29kaW5nLiAqLworI2Vycm9yICJVbnN1cHBvcnRlZCBsb25nIGRvdWJsZSBmb3JtYXQiCisjZW5kaWYKKworI2RlZmluZQlCSUFTCShMREJMX01BWF9FWFAgLSAxKQorCitzdGF0aWMgY29uc3Qgdm9sYXRpbGUgbG9uZyBkb3VibGUgaHVnZSA9IDB4MXAxMDAwMEwsIHRpbnkgPSAweDFwLTEwMDAwTDsKKyNpZiBMREJMX01BTlRfRElHID09IDY0CisvKgorICogRG9tYWluIFstMSwgMV0sIHJhbmdlIH5bLTEuODIxMWUtMjEsIDEuODIxMWUtMjFdOgorICogfGNvc2goeCkgLSBjKHgpfCA8IDIqKi02OC44CisgKi8KK3N0YXRpYyBjb25zdCB1bmlvbiBJRUVFbDJiaXRzCitDNHUgPSBMRDgwQygweGFhYWFhYWFhYWFhYWFjNzgsIC01LCAgNC4xNjY2NjY2NjY2NjY2NjY4MjI5N2UtMkwpOworI2RlZmluZQlDNAlDNHUuZQorc3RhdGljIGNvbnN0IGRvdWJsZQorQzIgID0gIDAuNSwKK0M2ICA9ICAxLjM4ODg4ODg4ODg4ODg2MTZlLTMsCQkvKiAgMHgxNmMxNmMxNmMxNmI5OS4wcC02MiAqLworQzggID0gIDIuNDgwMTU4NzMwMTc2Nzk1M2UtNSwJCS8qICAweDFhMDFhMDFhMDI3MDYxLjBwLTY4ICovCitDMTAgPSAgMi43NTU3MzE5MTYzMzAwMzk4ZS03LAkJLyogIDB4MTI3ZTRmYjZjOWI1NWYuMHAtNzQgKi8KK0MxMiA9ICAyLjA4NzY3NjgzNzEzOTMwNzVlLTksCQkvKiAgMHgxMWVlZDk5NDA2YTNmNC4wcC04MSAqLworQzE0ID0gIDEuMTQ2OTUzNzAzOTM3NDQ4MGUtMTEsCQkvKiAgMHgxOTM4YzY3Y2QxOGM0OC4wcC04OSAqLworQzE2ID0gIDQuODQ3MzQ5MDg5Njg1MjA0MWUtMTQ7CQkvKiAgMHgxYjQ5YzQyOTcwMWU0NS4wcC05NyAqLworI2VsaWYgTERCTF9NQU5UX0RJRyA9PSAxMTMKKy8qCisgKiBEb21haW4gWy0xLCAxXSwgcmFuZ2UgflstMi4zMTk0ZS0zNywgMi4zMTk0ZS0zN106CisgKiB8Y29zaCh4KSAtIGMoeCl8IDwgMioqLTEyMS42OQorICovCitzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUKK0M0ICA9ICA0LjE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2MjI1ZS0yTCwJLyogIDB4MTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NGUuMHAtMTE3TCAqLworQzYgID0gIDEuMzg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODk0MzQ4MzFlLTNMLAkvKiAgMHgxNmMxNmMxNmMxNmMxNmMxNmMxNmMxNmMxZGQ3YS4wcC0xMjJMICovCitDOCAgPSAgMi40ODAxNTg3MzAxNTg3MzAxNTg3MzAxNTg3MTg3MDk2MjA4OWUtNUwsCS8qICAweDFhMDFhMDFhMDFhMDFhMDFhMDFhMDE3YWYyNzU2LjBwLTEyOEwgKi8KK0MxMCA9ICAyLjc1NTczMTkyMjM5ODU4OTA2NTI1NTc0MzE4NjAwODAwMjAxZS03TCwJLyogIDB4MTI3ZTRmYjc3ODlmNWM3MmVmMDFjOGEwNDA2NDAuMHAtMTM0TCAqLworQzEyID0gIDIuMDg3Njc1Njk4Nzg2ODA5ODk3OTE0NDQ2OTE3NTU0NjgyNjllLTlMLAkvKiAgMHgxMWVlZDhlZmY4ZDg5N2I1NDNkMDY3OTYwNzM5OS4wcC0xNDFMICovCitDMTQ9ICAxLjE0NzA3NDU1OTc3Mjk3MjQ3Mzg3ODAxMTg5NjUwNDk1MzUxZS0xMUwsCS8qICAweDE5Mzk3NGE4YzA3YzlkMjRhZTE2OWE3ZmE5YjU0LjBwLTE0OUwgKi8KK0MxNiA9ICA0Ljc3OTQ3NzMzMjM4NzM3ODgzNjI2NDE2ODc2NDg2Mjc5OTg1ZS0xNEw7CS8qICAweDFhZTdmM2U3MzNiODE0ZDRlMWI5MGY1NzI3ZmU0LjBwLTE1N0wgKi8KK3N0YXRpYyBjb25zdCBkb3VibGUKK0MyICA9ICAwLjUsCitDMTggPSAgMS41NjE5MjA2OTY4NTk3ODcxZS0xNiwJCS8qICAweDE2ODI3ODYzYjk5MDBiLjBwLTEwNSAqLworQzIwID0gIDQuMTEwMzE3NjIxODUyODA0OWUtMTksCQkvKiAgMHgxZTU0MmJhM2QzYzI2OS4wcC0xMTQgKi8KK0MyMiA9ICA4Ljg5Njc5MjY0MDE2NDE3MDFlLTIyLAkJLyogIDB4MTBjZTM5OTU0MmEwMTQuMHAtMTIyICovCitDMjQgPSAgMS42MTE2NjgxNjI2NTIzOTA0ZS0yNCwJCS8qICAweDFmMmM5ODFkMWYwY2I3LjBwLTEzMiAqLworQzI2ID0gIDIuNTAyMjM3NDczMjgwNDYzMmUtMjc7CQkvKiAgMHgxOGM3ZWNmOGIyYzRhMC4wcC0xNDEgKi8KKyNlbHNlCisjZXJyb3IgIlVuc3VwcG9ydGVkIGxvbmcgZG91YmxlIGZvcm1hdCIKKyNlbmRpZiAvKiBMREJMX01BTlRfRElHID09IDY0ICovCisKKy8qIGxvZygyKioxNjM4NSAtIDAuNSkgcm91bmRlZCB1cDogKi8KK3N0YXRpYyBjb25zdCBmbG9hdAorb190aHJlc2hvbGQgPSAgMS4xMzU3MjE2OGU0OwkJLyogIDB4YjE3NGRlLjBwLTEwICovCisKK2xvbmcgZG91YmxlCitjb3NobChsb25nIGRvdWJsZSB4KQoreworCWxvbmcgZG91YmxlIGhpLGxvLHgyLHg0OworCWRvdWJsZSBkeDI7CisJdWludDE2X3QgaXg7CisKKwlHRVRfTERCTF9FWFBTSUdOKGl4LHgpOworCWl4ICY9IDB4N2ZmZjsKKworICAgIC8qIHggaXMgSU5GIG9yIE5hTiAqLworCWlmKGl4Pj0weDdmZmYpIHJldHVybiB4Kng7CisKKwlFTlRFUkkoKTsKKworICAgIC8qIHx4fCA8IDEsIHJldHVybiAxIG9yIGMoeCkgKi8KKwlpZihpeDwweDNmZmYpIHsKKwkgICAgaWYgKGl4PEJJQVMtKExEQkxfTUFOVF9ESUcrMSkvMikgCS8qIHx4fCA8IFRJTlkgKi8KKwkJUkVUVVJOSSgxK3RpbnkpOwkvKiBjb3NoKHRpbnkpID0gMSgrKSB3aXRoIGluZXhhY3QgKi8KKwkgICAgeDIgPSB4Kng7CisjaWYgTERCTF9NQU5UX0RJRyA9PSA2NAorCSAgICB4NCA9IHgyKngyOworCSAgICBSRVRVUk5JKCgoQzE2KngyICsgQzE0KSp4NCArIChDMTIqeDIgKyBDMTApKSooeDQqeDQqeDIpICsKKwkJKChDOCp4MiArIEM2KSp4MiArIEM0KSp4NCArIEMyKngyICsgMSk7CisjZWxpZiBMREJMX01BTlRfRElHID09IDExMworCSAgICBkeDIgPSB4MjsKKwkgICAgUkVUVVJOSSgoKCgoKCgoKCgoKEMyNipkeDIgKyBDMjQpKmR4MiArIEMyMikqZHgyICsKKwkJQzIwKSp4MiArIEMxOCkqeDIgKworCQlDMTYpKngyICsgQzE0KSp4MiArIEMxMikqeDIgKyBDMTApKngyICsgQzgpKngyICsgQzYpKngyICsKKwkJQzQpKih4Mip4MikgKyBDMip4MiArIDEpOworI2VuZGlmCisJfQorCisgICAgLyogfHh8IGluIFsxLCA2NCksIHJldHVybiBhY2N1cmF0ZSBleHAofHh8KS8yKzEvZXhwKHx4fCkvMiAqLworCWlmIChpeCA8IDB4NDAwNSkgeworCSAgICBrX2hleHBsKGZhYnNsKHgpLCAmaGksICZsbyk7CisJICAgIFJFVFVSTkkobG8gKyAwLjI1LyhoaSArIGxvKSArIGhpKTsKKwl9CisKKyAgICAvKiB8eHwgaW4gWzY0LCBvX3RocmVzaG9sZF0sIHJldHVybiBjb3JyZWN0bHktb3ZlcmZsb3dpbmcgZXhwKHx4fCkvMiAqLworCWlmIChmYWJzbCh4KSA8PSBvX3RocmVzaG9sZCkKKwkgICAgUkVUVVJOSShoZXhwbChmYWJzbCh4KSkpOworCisgICAgLyogfHh8ID4gb190aHJlc2hvbGQsIGNvc2goeCkgb3ZlcmZsb3cgKi8KKwlSRVRVUk5JKGh1Z2UqaHVnZSk7Cit9CmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbGdhbW1hLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbGdhbW1hLmMKaW5kZXggNDY3NGQ5Yi4uNDNmNTE3NSAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYS5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sZ2FtbWEuYwpAQCAtMjEsNiArMjEsOCBAQAogICogTWV0aG9kOiBjYWxsIF9faWVlZTc1NF9sZ2FtbWFfcgogICovCiAKKyNpbmNsdWRlIDxmbG9hdC5oPgorCiAjaW5jbHVkZSAibWF0aC5oIgogI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgogCkBAIC0zMSwzICszMyw3IEBACiB7CiAJcmV0dXJuIF9faWVlZTc1NF9sZ2FtbWFfcih4LCZzaWduZ2FtKTsKIH0KKworI2lmIChMREJMX01BTlRfRElHID09IDUzKQorX193ZWFrX3JlZmVyZW5jZShsZ2FtbWEsIGxnYW1tYWwpOworI2VuZGlmCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbGdhbW1hX3IuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sZ2FtbWFfci5jCmluZGV4IDFjZmY1OTIuLmJlNzA3NjcgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sZ2FtbWFfci5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sZ2FtbWFfci5jCkBAIC0xLDQgKzEsMyBAQAotCiAvKiBAKCMpZV9sZ2FtbWFfci5jIDEuMyA5NS8wMS8xOCAqLwogLyoKICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQEAgLTYsMjIgKzUsMjEgQEAKICAqCiAgKiBEZXZlbG9wZWQgYXQgU3VuU29mdCwgYSBTdW4gTWljcm9zeXN0ZW1zLCBJbmMuIGJ1c2luZXNzLgogICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcwotICogc29mdHdhcmUgaXMgZnJlZWx5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhpcyBub3RpY2UgCisgKiBzb2Z0d2FyZSBpcyBmcmVlbHkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGlzIG5vdGljZQogICogaXMgcHJlc2VydmVkLgogICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotICoKICAqLwogCiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CiBfX0ZCU0RJRCgiJEZyZWVCU0QkIik7CiAKIC8qIF9faWVlZTc1NF9sZ2FtbWFfcih4LCBzaWduZ2FtcCkKLSAqIFJlZW50cmFudCB2ZXJzaW9uIG9mIHRoZSBsb2dhcml0aG0gb2YgdGhlIEdhbW1hIGZ1bmN0aW9uIAotICogd2l0aCB1c2VyIHByb3ZpZGUgcG9pbnRlciBmb3IgdGhlIHNpZ24gb2YgR2FtbWEoeCkuIAorICogUmVlbnRyYW50IHZlcnNpb24gb2YgdGhlIGxvZ2FyaXRobSBvZiB0aGUgR2FtbWEgZnVuY3Rpb24KKyAqIHdpdGggdXNlciBwcm92aWRlIHBvaW50ZXIgZm9yIHRoZSBzaWduIG9mIEdhbW1hKHgpLgogICoKICAqIE1ldGhvZDoKICAqICAgMS4gQXJndW1lbnQgUmVkdWN0aW9uIGZvciAwIDwgeCA8PSA4Ci0gKiAJU2luY2UgZ2FtbWEoMStzKT1zKmdhbW1hKHMpLCBmb3IgeCBpbiBbMCw4XSwgd2UgbWF5IAorICogCVNpbmNlIGdhbW1hKDErcyk9cypnYW1tYShzKSwgZm9yIHggaW4gWzAsOF0sIHdlIG1heQogICogCXJlZHVjZSB4IHRvIGEgbnVtYmVyIGluIFsxLjUsMi41XSBieQogICogCQlsZ2FtbWEoMStzKSA9IGxvZyhzKSArIGxnYW1tYShzKQogICoJZm9yIGV4YW1wbGUsCkBAIC01OSwyMCArNTcsMjAgQEAKICAqCWJ5CiAgKgkgIAkJCSAgICAzICAgICAgIDUgICAgICAgICAgICAgMTEKICAqCQl3ID0gdzAgKyB3MSp6ICsgdzIqeiAgKyB3Myp6ICArIC4uLiArIHc2KnoKLSAqCXdoZXJlIAorICoJd2hlcmUKICAqCQl8dyAtIGYoeil8IDwgMioqLTU4Ljc0Ci0gKgkJCisgKgogICogICA0LiBGb3IgbmVnYXRpdmUgeCwgc2luY2UgKEcgaXMgZ2FtbWEgZnVuY3Rpb24pCiAgKgkJLXgqRygteCkqRyh4KSA9IHBpL3NpbihwaSp4KSwKICAqIAl3ZSBoYXZlCiAgKiAJCUcoeCkgPSBwaS8oc2luKHBpKngpKigteCkqRygteCkpCiAgKglzaW5jZSBHKC14KSBpcyBwb3NpdGl2ZSwgc2lnbihHKHgpKSA9IHNpZ24oc2luKHBpKngpKSBmb3IgeDwwCi0gKglIZW5jZSwgZm9yIHg8MCwgc2lnbmdhbSA9IHNpZ24oc2luKHBpKngpKSBhbmQgCisgKglIZW5jZSwgZm9yIHg8MCwgc2lnbmdhbSA9IHNpZ24oc2luKHBpKngpKSBhbmQKICAqCQlsZ2FtbWEoeCkgPSBsb2cofEdhbW1hKHgpfCkKICAqCQkJICA9IGxvZyhwaS8ofHgqc2luKHBpKngpfCkpIC0gbGdhbW1hKC14KTsKLSAqCU5vdGU6IG9uZSBzaG91bGQgYXZvaWQgY29tcHV0ZSBwaSooLXgpIGRpcmVjdGx5IGluIHRoZSAKKyAqCU5vdGU6IG9uZSBzaG91bGQgYXZvaWQgY29tcHV0ZSBwaSooLXgpIGRpcmVjdGx5IGluIHRoZQogICoJICAgICAgY29tcHV0YXRpb24gb2Ygc2luKHBpKigteCkpLgotICoJCQorICoKICAqICAgNS4gU3BlY2lhbCBDYXNlcwogICoJCWxnYW1tYSgyK3MpIH4gcyooMS1FdWxlcikgZm9yIHRpbnkgcwogICoJCWxnYW1tYSgxKSA9IGxnYW1tYSgyKSA9IDAKQEAgLTgwLDE0ICs3OCwxNyBAQAogICoJCWxnYW1tYSgwKSA9IGxnYW1tYShuZWcuaW50ZWdlcikgPSBpbmYgYW5kIHJhaXNlIGRpdmlkZS1ieS16ZXJvCiAgKgkJbGdhbW1hKGluZikgPSBpbmYKICAqCQlsZ2FtbWEoLWluZikgPSBpbmYgKGJ1ZyBmb3IgYnVnIGNvbXBhdGlibGUgd2l0aCBDOTkhPykKLSAqCQogICovCiAKKyNpbmNsdWRlIDxmbG9hdC5oPgorCiAjaW5jbHVkZSAibWF0aC5oIgogI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgogCitzdGF0aWMgY29uc3Qgdm9sYXRpbGUgZG91YmxlIHZ6ZXJvID0gMDsKKwogc3RhdGljIGNvbnN0IGRvdWJsZQotdHdvNTI9ICA0LjUwMzU5OTYyNzM3MDQ5NjAwMDAwZSsxNSwgLyogMHg0MzMwMDAwMCwgMHgwMDAwMDAwMCAqLworemVybz0gIDAuMDAwMDAwMDAwMDAwMDAwMDAwMDBlKzAwLAogaGFsZj0gIDUuMDAwMDAwMDAwMDAwMDAwMDAwMDBlLTAxLCAvKiAweDNGRTAwMDAwLCAweDAwMDAwMDAwICovCiBvbmUgPSAgMS4wMDAwMDAwMDAwMDAwMDAwMDAwMGUrMDAsIC8qIDB4M0ZGMDAwMDAsIDB4MDAwMDAwMDAgKi8KIHBpICA9ICAzLjE0MTU5MjY1MzU4OTc5MzExNjAwZSswMCwgLyogMHg0MDA5MjFGQiwgMHg1NDQ0MkQxOCAqLwpAQCAtMTU0LDQ0ICsxNTUsNDAgQEAKIHc1ICA9ICA4LjM2MzM5OTE4OTk2MjgyMTM5MTI2ZS0wNCwgLyogMHgzRjRCNjdCQSwgMHg0Q0RBRDVEMSAqLwogdzYgID0gLTEuNjMwOTI5MzQwOTY1NzUyNzM5ODllLTAzOyAvKiAweEJGNUFCODlELCAweDBCOUU0M0U0ICovCiAKLXN0YXRpYyBjb25zdCBkb3VibGUgemVybz0gIDAuMDAwMDAwMDAwMDAwMDAwMDAwMDBlKzAwOwotCi0Jc3RhdGljIGRvdWJsZSBzaW5fcGkoZG91YmxlIHgpCisvKgorICogQ29tcHV0ZSBzaW4ocGkqeCkgd2l0aG91dCBhY3R1YWxseSBkb2luZyB0aGUgcGkqeCBtdWx0aXBsaWNhdGlvbi4KKyAqIHNpbl9waSh4KSBpcyBvbmx5IGNhbGxlZCBmb3IgeCA8IDAgYW5kIHx4fCA8IDIqKihwLTEpIHdoZXJlIHAgaXMKKyAqIHRoZSBwcmVjaXNpb24gb2YgeC4KKyAqLworc3RhdGljIGRvdWJsZQorc2luX3BpKGRvdWJsZSB4KQogeworCXZvbGF0aWxlIGRvdWJsZSB2ejsKIAlkb3VibGUgeSx6OwotCWludCBuLGl4OworCWludCBuOwogCi0JR0VUX0hJR0hfV09SRChpeCx4KTsKLQlpeCAmPSAweDdmZmZmZmZmOworCXkgPSAteDsKIAotCWlmKGl4PDB4M2ZkMDAwMDApIHJldHVybiBfX2tlcm5lbF9zaW4ocGkqeCx6ZXJvLDApOwotCXkgPSAteDsJCS8qIHggaXMgYXNzdW1lIG5lZ2F0aXZlICovCisJdnogPSB5KzB4MXA1MjsJCQkvKiBkZXBlbmQgb24gMCA8PSB5IDwgMHgxcDUyICovCisJeiA9IHZ6LTB4MXA1MjsJCQkvKiByaW50KHkpIGZvciB0aGUgYWJvdmUgcmFuZ2UgKi8KKwlpZiAoeiA9PSB5KQorCSAgICByZXR1cm4gemVybzsKIAotICAgIC8qCi0gICAgICogYXJndW1lbnQgcmVkdWN0aW9uLCBtYWtlIHN1cmUgaW5leGFjdCBmbGFnIG5vdCByYWlzZWQgaWYgaW5wdXQKLSAgICAgKiBpcyBhbiBpbnRlZ2VyCi0gICAgICovCi0JeiA9IGZsb29yKHkpOwotCWlmKHohPXkpIHsJCQkJLyogaW5leGFjdCBhbnl3YXkgKi8KLQkgICAgeSAgKj0gMC41OwotCSAgICB5ICAgPSAyLjAqKHkgLSBmbG9vcih5KSk7CQkvKiB5ID0gfHh8IG1vZCAyLjAgKi8KLQkgICAgbiAgID0gKGludCkgKHkqNC4wKTsKLQl9IGVsc2UgewotICAgICAgICAgICAgaWYoaXg+PTB4NDM0MDAwMDApIHsKLSAgICAgICAgICAgICAgICB5ID0gemVybzsgbiA9IDA7ICAgICAgICAgICAgICAgICAvKiB5IG11c3QgYmUgZXZlbiAqLwotICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBpZihpeDwweDQzMzAwMDAwKSB6ID0geSt0d281MjsJLyogZXhhY3QgKi8KLQkJR0VUX0xPV19XT1JEKG4seik7Ci0JCW4gJj0gMTsKLSAgICAgICAgICAgICAgICB5ICA9IG47Ci0gICAgICAgICAgICAgICAgbjw8PSAyOwotICAgICAgICAgICAgfQotICAgICAgICB9CisJdnogPSB5KzB4MXA1MDsKKwlHRVRfTE9XX1dPUkQobix2eik7CQkvKiBiaXRzIGZvciByb3VuZGVkIHkgKHVuaXRzIDAuMjUpICovCisJeiA9IHZ6LTB4MXA1MDsJCQkvKiB5IHJvdW5kZWQgdG8gYSBtdWx0aXBsZSBvZiAwLjI1ICovCisJaWYgKHogPiB5KSB7CisJICAgIHogLT0gMC4yNTsJCQkvKiBhZGp1c3QgdG8gcm91bmQgZG93biAqLworCSAgICBuLS07CisJfQorCW4gJj0gNzsJCQkJLyogb2N0YW50IG9mIHkgbW9kIDIgKi8KKwl5ID0geSAtIHogKyBuICogMC4yNTsJCS8qIHkgbW9kIDIgKi8KKwogCXN3aXRjaCAobikgewogCSAgICBjYXNlIDA6ICAgeSA9ICBfX2tlcm5lbF9zaW4ocGkqeSx6ZXJvLDApOyBicmVhazsKLQkgICAgY2FzZSAxOiAgIAorCSAgICBjYXNlIDE6CiAJICAgIGNhc2UgMjogICB5ID0gIF9fa2VybmVsX2NvcyhwaSooMC41LXkpLHplcm8pOyBicmVhazsKLQkgICAgY2FzZSAzOiAgCisJICAgIGNhc2UgMzoKIAkgICAgY2FzZSA0OiAgIHkgPSAgX19rZXJuZWxfc2luKHBpKihvbmUteSksemVybywwKTsgYnJlYWs7CiAJICAgIGNhc2UgNToKIAkgICAgY2FzZSA2OiAgIHkgPSAtX19rZXJuZWxfY29zKHBpKih5LTEuNSksemVybyk7IGJyZWFrOwpAQCAtMjA0LDM0ICsyMDEsMzggQEAKIGRvdWJsZQogX19pZWVlNzU0X2xnYW1tYV9yKGRvdWJsZSB4LCBpbnQgKnNpZ25nYW1wKQogewotCWRvdWJsZSB0LHkseixuYWRqLHAscDEscDIscDMscSxyLHc7CisJZG91YmxlIG5hZGoscCxwMSxwMixwMyxxLHIsdCx3LHksejsKIAlpbnQzMl90IGh4OwotCWludCBpLGx4LGl4OworCWludCBpLGl4LGx4OwogCiAJRVhUUkFDVF9XT1JEUyhoeCxseCx4KTsKIAotICAgIC8qIHB1cmdlIG9mZiArLWluZiwgTmFOLCArLTAsIHRpbnkgYW5kIG5lZ2F0aXZlIGFyZ3VtZW50cyAqLworICAgIC8qIHB1cmdlICstSW5mIGFuZCBOYU5zICovCiAJKnNpZ25nYW1wID0gMTsKIAlpeCA9IGh4JjB4N2ZmZmZmZmY7CiAJaWYoaXg+PTB4N2ZmMDAwMDApIHJldHVybiB4Kng7Ci0JaWYoKGl4fGx4KT09MCkgcmV0dXJuIG9uZS96ZXJvOwotCWlmKGl4PDB4M2I5MDAwMDApIHsJLyogfHh8PDIqKi03MCwgcmV0dXJuIC1sb2cofHh8KSAqLwotCSAgICBpZihoeDwwKSB7Ci0JICAgICAgICAqc2lnbmdhbXAgPSAtMTsKLQkgICAgICAgIHJldHVybiAtX19pZWVlNzU0X2xvZygteCk7Ci0JICAgIH0gZWxzZSByZXR1cm4gLV9faWVlZTc1NF9sb2coeCk7CisKKyAgICAvKiBwdXJnZSArLTAgYW5kIHRpbnkgYXJndW1lbnRzICovCisJKnNpZ25nYW1wID0gMS0yKigodWludDMyX3QpaHg+PjMxKTsKKwlpZihpeDwweDNjNzAwMDAwKSB7CS8qIHx4fDwyKiotNTYsIHJldHVybiAtbG9nKHx4fCkgKi8KKwkgICAgaWYoKGl4fGx4KT09MCkKKwkgICAgICAgIHJldHVybiBvbmUvdnplcm87CisJICAgIHJldHVybiAtX19pZWVlNzU0X2xvZyhmYWJzKHgpKTsKIAl9CisKKyAgICAvKiBwdXJnZSBuZWdhdGl2ZSBpbnRlZ2VycyBhbmQgc3RhcnQgZXZhbHVhdGlvbiBmb3Igb3RoZXIgeCA8IDAgKi8KIAlpZihoeDwwKSB7CisJICAgICpzaWduZ2FtcCA9IDE7CiAJICAgIGlmKGl4Pj0weDQzMzAwMDAwKSAJLyogfHh8Pj0yKio1MiwgbXVzdCBiZSAtaW50ZWdlciAqLwotCQlyZXR1cm4gb25lL3plcm87CisJCXJldHVybiBvbmUvdnplcm87CiAJICAgIHQgPSBzaW5fcGkoeCk7Ci0JICAgIGlmKHQ9PXplcm8pIHJldHVybiBvbmUvemVybzsgLyogLWludGVnZXIgKi8KKwkgICAgaWYodD09emVybykgcmV0dXJuIG9uZS92emVybzsgLyogLWludGVnZXIgKi8KIAkgICAgbmFkaiA9IF9faWVlZTc1NF9sb2cocGkvZmFicyh0KngpKTsKIAkgICAgaWYodDx6ZXJvKSAqc2lnbmdhbXAgPSAtMTsKIAkgICAgeCA9IC14OwogCX0KIAotICAgIC8qIHB1cmdlIG9mZiAxIGFuZCAyICovCisgICAgLyogcHVyZ2UgMSBhbmQgMiAqLwogCWlmKCgoKGl4LTB4M2ZmMDAwMDApfGx4KT09MCl8fCgoKGl4LTB4NDAwMDAwMDApfGx4KT09MCkpIHIgPSAwOwogICAgIC8qIGZvciB4IDwgMi4wICovCiAJZWxzZSBpZihpeDwweDQwMDAwMDAwKSB7CkBAIC0yNTIsNyArMjUzLDcgQEAKIAkJcDEgPSBhMCt6KihhMit6KihhNCt6KihhNit6KihhOCt6KmExMCkpKSk7CiAJCXAyID0geiooYTEreiooYTMreiooYTUreiooYTcreiooYTkreiphMTEpKSkpKTsKIAkJcCAgPSB5KnAxK3AyOwotCQlyICArPSAocC0wLjUqeSk7IGJyZWFrOworCQlyICArPSBwLXkvMjsgYnJlYWs7CiAJICAgICAgY2FzZSAxOgogCQl6ID0geSp5OwogCQl3ID0geip5OwpAQCAtMjYwLDM4ICsyNjEsNDMgQEAKIAkJcDIgPSB0MSt3Kih0NCt3Kih0Nyt3Kih0MTArdyp0MTMpKSk7CiAJCXAzID0gdDIrdyoodDUrdyoodDgrdyoodDExK3cqdDE0KSkpOwogCQlwICA9IHoqcDEtKHR0LXcqKHAyK3kqcDMpKTsKLQkJciArPSAodGYgKyBwKTsgYnJlYWs7Ci0JICAgICAgY2FzZSAyOgkKKwkJciArPSB0ZiArIHA7IGJyZWFrOworCSAgICAgIGNhc2UgMjoKIAkJcDEgPSB5Kih1MCt5Kih1MSt5Kih1Mit5Kih1Myt5Kih1NCt5KnU1KSkpKSk7CiAJCXAyID0gb25lK3kqKHYxK3kqKHYyK3kqKHYzK3kqKHY0K3kqdjUpKSkpOwotCQlyICs9ICgtMC41KnkgKyBwMS9wMik7CisJCXIgKz0gcDEvcDIteS8yOwogCSAgICB9CiAJfQotCWVsc2UgaWYoaXg8MHg0MDIwMDAwMCkgeyAJCQkvKiB4IDwgOC4wICovCi0JICAgIGkgPSAoaW50KXg7Ci0JICAgIHkgPSB4LShkb3VibGUpaTsKKyAgICAvKiB4IDwgOC4wICovCisJZWxzZSBpZihpeDwweDQwMjAwMDAwKSB7CisJICAgIGkgPSB4OworCSAgICB5ID0geC1pOwogCSAgICBwID0geSooczAreSooczEreSooczIreSooczMreSooczQreSooczUreSpzNikpKSkpKTsKIAkgICAgcSA9IG9uZSt5KihyMSt5KihyMit5KihyMyt5KihyNCt5KihyNSt5KnI2KSkpKSk7Ci0JICAgIHIgPSBoYWxmKnkrcC9xOworCSAgICByID0geS8yK3AvcTsKIAkgICAgeiA9IG9uZTsJLyogbGdhbW1hKDErcykgPSBsb2cocykgKyBsZ2FtbWEocykgKi8KIAkgICAgc3dpdGNoKGkpIHsKLQkgICAgY2FzZSA3OiB6ICo9ICh5KzYuMCk7CS8qIEZBTExUSFJVICovCi0JICAgIGNhc2UgNjogeiAqPSAoeSs1LjApOwkvKiBGQUxMVEhSVSAqLwotCSAgICBjYXNlIDU6IHogKj0gKHkrNC4wKTsJLyogRkFMTFRIUlUgKi8KLQkgICAgY2FzZSA0OiB6ICo9ICh5KzMuMCk7CS8qIEZBTExUSFJVICovCi0JICAgIGNhc2UgMzogeiAqPSAoeSsyLjApOwkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDc6IHogKj0gKHkrNik7CQkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDY6IHogKj0gKHkrNSk7CQkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDU6IHogKj0gKHkrNCk7CQkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDQ6IHogKj0gKHkrMyk7CQkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDM6IHogKj0gKHkrMik7CQkvKiBGQUxMVEhSVSAqLwogCQkgICAgciArPSBfX2llZWU3NTRfbG9nKHopOyBicmVhazsKIAkgICAgfQotICAgIC8qIDguMCA8PSB4IDwgMioqNTggKi8KLQl9IGVsc2UgaWYgKGl4IDwgMHg0MzkwMDAwMCkgeworICAgIC8qIDguMCA8PSB4IDwgMioqNTYgKi8KKwl9IGVsc2UgaWYgKGl4IDwgMHg0MzcwMDAwMCkgewogCSAgICB0ID0gX19pZWVlNzU0X2xvZyh4KTsKIAkgICAgeiA9IG9uZS94OwogCSAgICB5ID0geip6OwogCSAgICB3ID0gdzAreioodzEreSoodzIreSoodzMreSoodzQreSoodzUreSp3NikpKSkpOwogCSAgICByID0gKHgtaGFsZikqKHQtb25lKSt3OwotCX0gZWxzZSAKLSAgICAvKiAyKio1OCA8PSB4IDw9IGluZiAqLworCX0gZWxzZQorICAgIC8qIDIqKjU2IDw9IHggPD0gaW5mICovCiAJICAgIHIgPSAgeCooX19pZWVlNzU0X2xvZyh4KS1vbmUpOwogCWlmKGh4PDApIHIgPSBuYWRqIC0gcjsKIAlyZXR1cm4gcjsKIH0KKworI2lmIChMREJMX01BTlRfRElHID09IDUzKQorX193ZWFrX3JlZmVyZW5jZShsZ2FtbWFfciwgbGdhbW1hbF9yKTsKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYWZfci5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYWZfci5jCmluZGV4IGUyZDkwZWYuLjkwODRlMTggMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9sZ2FtbWFmX3IuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbGdhbW1hZl9yLmMKQEAgLTEsNSArMSw2IEBACiAvKiBlX2xnYW1tYWZfci5jIC0tIGZsb2F0IHZlcnNpb24gb2YgZV9sZ2FtbWFfci5jLgogICogQ29udmVyc2lvbiB0byBmbG9hdCBieSBJYW4gTGFuY2UgVGF5bG9yLCBDeWdudXMgU3VwcG9ydCwgaWFuQGN5Z251cy5jb20uCisgKiBDb252ZXJzaW9uIHRvIGZsb2F0IGZpeGVkIEJ5IFN0ZXZlbiBHLiBLYXJnbC4KICAqLwogCiAvKgpAQCAtMTksMTA3ICsyMCw5MSBAQAogI2luY2x1ZGUgIm1hdGguaCIKICNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKIAorc3RhdGljIGNvbnN0IHZvbGF0aWxlIGZsb2F0IHZ6ZXJvID0gMDsKKwogc3RhdGljIGNvbnN0IGZsb2F0Ci10d28yMz0gIDguMzg4NjA4MDAwMGUrMDYsIC8qIDB4NGIwMDAwMDAgKi8KLWhhbGY9ICA1LjAwMDAwMDAwMDBlLTAxLCAvKiAweDNmMDAwMDAwICovCi1vbmUgPSAgMS4wMDAwMDAwMDAwZSswMCwgLyogMHgzZjgwMDAwMCAqLworemVybz0gIDAsCitoYWxmPSAgMC41LAorb25lID0gIDEsCiBwaSAgPSAgMy4xNDE1OTI3NDEwZSswMCwgLyogMHg0MDQ5MGZkYiAqLwotYTAgID0gIDcuNzIxNTY2NDA4OWUtMDIsIC8qIDB4M2Q5ZTIzM2YgKi8KLWExICA9ICAzLjIyNDY3MDI5MDllLTAxLCAvKiAweDNlYTUxYTY2ICovCi1hMiAgPSAgNi43MzUyMzAyMzcyZS0wMiwgLyogMHgzZDg5ZjAwMSAqLwotYTMgID0gIDIuMDU4MDgwNzcwMWUtMDIsIC8qIDB4M2NhODk5MTUgKi8KLWE0ICA9ICA3LjM4NTU1MDk5ODJlLTAzLCAvKiAweDNiZjIwMjdlICovCi1hNSAgPSAgMi44OTA1MTM3NDQyZS0wMywgLyogMHgzYjNkNmVjNiAqLwotYTYgID0gIDEuMTkyNzA3Njg0OGUtMDMsIC8qIDB4M2E5YzU0YTEgKi8KLWE3ICA9ICA1LjEwMDY5Nzc0NDZlLTA0LCAvKiAweDNhMDViNjM0ICovCi1hOCAgPSAgMi4yMDg2Mjc4NDc3ZS0wNCwgLyogMHgzOTY3OTc2NyAqLwotYTkgID0gIDEuMDgwMTE1Njg5NWUtMDQsIC8qIDB4MzhlMjg0NDUgKi8KLWExMCA9ICAyLjUyMTQ0NTY0MDBlLTA1LCAvKiAweDM3ZDM4M2EyICovCi1hMTEgPSAgNC40ODY0MDk2NzA4ZS0wNSwgLyogMHgzODNjMmM3NSAqLwotdGMgID0gIDEuNDYxNjMyMTMyNWUrMDAsIC8qIDB4M2ZiYjE2YzMgKi8KLXRmICA9IC0xLjIxNDg2MjgzODRlLTAxLCAvKiAweGJkZjhjZGNkICovCi0vKiB0dCA9IC0odGFpbCBvZiB0ZikgKi8KLXR0ICA9ICA2LjY5NzEwMDY1MThlLTA5LCAvKiAweDMxZTYxYzUyICovCi10MCAgPSAgNC44MzgzNjExNDQxZS0wMSwgLyogMHgzZWY3Yjk1ZSAqLwotdDEgID0gLTEuNDc1ODc3MTY1OGUtMDEsIC8qIDB4YmUxNzIxM2MgKi8KLXQyICA9ICA2LjQ2MjQ5NDI4MzllLTAyLCAvKiAweDNkODQ1YTE1ICovCi10MyAgPSAtMy4yNzg4NTQxMTY4ZS0wMiwgLyogMHhiZDA2NGQ0NyAqLwotdDQgID0gIDEuNzk3MDY3NTYwM2UtMDIsIC8qIDB4M2M5MzM3M2QgKi8KLXQ1ICA9IC0xLjAzMTQyMjQyODhlLTAyLCAvKiAweGJjMjhmY2ZlICovCi10NiAgPSAgNi4xMDA1Mzg2NTI0ZS0wMywgLyogMHgzYmM3ZTcwNyAqLwotdDcgID0gLTMuNjg0NTIwMjU1OGUtMDMsIC8qIDB4YmI3MTc3ZmUgKi8KLXQ4ICA9ICAyLjI1OTY0NzcwNjVlLTAzLCAvKiAweDNiMTQxNjk5ICovCi10OSAgPSAtMS40MDM0NjQ3MDI5ZS0wMywgLyogMHhiYWI3ZjQ3NiAqLwotdDEwID0gIDguODEwODE4NTQ0NmUtMDQsIC8qIDB4M2E2NmY4NjcgKi8KLXQxMSA9IC01LjM4NTk1MzExODFlLTA0LCAvKiAweGJhMGQzMDg1ICovCi10MTIgPSAgMy4xNTYzMjA1OTk0ZS0wNCwgLyogMHgzOWE1N2I2YiAqLwotdDEzID0gLTMuMTI3NTQxNTY3N2UtMDQsIC8qIDB4YjlhM2Y5MjcgKi8KLXQxNCA9ICAzLjM1NTI5MTg0NjdlLTA0LCAvKiAweDM5YWZlOWY3ICovCi11MCAgPSAtNy43MjE1NjY0MDg5ZS0wMiwgLyogMHhiZDllMjMzZiAqLwotdTEgID0gIDYuMzI4MjcwNDM1M2UtMDEsIC8qIDB4M2YyMjAwZjQgKi8KLXUyICA9ICAxLjQ1NDkyMjU1NjllKzAwLCAvKiAweDNmYmEzYWU3ICovCi11MyAgPSAgOS43NzcxNzUxODgxZS0wMSwgLyogMHgzZjdhNGJiMiAqLwotdTQgID0gIDIuMjg5NjM3MzI3MmUtMDEsIC8qIDB4M2U2YTc1NzggKi8KLXU1ICA9ICAxLjMzODEwOTE4NzhlLTAyLCAvKiAweDNjNWIzYzVlICovCi12MSAgPSAgMi40NTU5Nzc5MTY3ZSswMCwgLyogMHg0MDFkMmViZSAqLwotdjIgID0gIDIuMTI4NDg5NzMyN2UrMDAsIC8qIDB4NDAwODM5MmQgKi8KLXYzICA9ICA3LjY5Mjg1MTQyNDJlLTAxLCAvKiAweDNmNDRlZmRmICovCi12NCAgPSAgMS4wNDIyMjY0Nzg1ZS0wMSwgLyogMHgzZGQ1NzJhZiAqLwotdjUgID0gIDMuMjE3MDkyNDgyNGUtMDMsIC8qIDB4M2I1MmQ1ZGIgKi8KLXMwICA9IC03LjcyMTU2NjQwODllLTAyLCAvKiAweGJkOWUyMzNmICovCi1zMSAgPSAgMi4xNDk4MjQyMDIxZS0wMSwgLyogMHgzZTVjMjQ1YSAqLwotczIgID0gIDMuMjU3Nzg3ODIzN2UtMDEsIC8qIDB4M2VhNmNjN2EgKi8KLXMzICA9ICAxLjQ2MzUwNDczMTdlLTAxLCAvKiAweDNlMTVkY2U2ICovCi1zNCAgPSAgMi42NjQyMjcwMzg2ZS0wMiwgLyogMHgzY2RhNDBlNCAqLwotczUgID0gIDEuODQwMjg0NTU5OWUtMDMsIC8qIDB4M2FmMTM1YjQgKi8KLXM2ICA9ICAzLjE5NDc1MzI5ODllLTA1LCAvKiAweDM4MDVmZjY3ICovCi1yMSAgPSAgMS4zOTIwMDUzMjQ0ZSswMCwgLyogMHgzZmIyMmQzYiAqLwotcjIgID0gIDcuMjE5MzU1NzAyNGUtMDEsIC8qIDB4M2YzOGQwYzUgKi8KLXIzICA9ICAxLjcxOTMzODU5NTllLTAxLCAvKiAweDNlMzAwZjZlICovCi1yNCAgPSAgMS44NjQ1OTE5ODU5ZS0wMiwgLyogMHgzYzk4YmY1NCAqLwotcjUgID0gIDcuNzc5NDI0Nzc3M2UtMDQsIC8qIDB4M2E0YmVlZDYgKi8KLXI2ICA9ICA3LjMyNjY4NDIyNjRlLTA2LCAvKiAweDM2ZjVkN2JkICovCi13MCAgPSAgNC4xODkzODU0NzM3ZS0wMSwgLyogMHgzZWQ2N2YxZCAqLwotdzEgID0gIDguMzMzMzMzNTgxN2UtMDIsIC8qIDB4M2RhYWFhYWIgKi8KLXcyICA9IC0yLjc3Nzc3Nzg0NTBlLTAzLCAvKiAweGJiMzYwYjYxICovCi13MyAgPSAgNy45MzY1MDU3MTcyZS0wNCwgLyogMHgzYTUwMGNmZCAqLwotdzQgID0gLTUuOTUxODc1MzU1MWUtMDQsIC8qIDB4YmExYzA2NWMgKi8KLXc1ICA9ICA4LjM2MzM5ODk1NjFlLTA0LCAvKiAweDNhNWIzZGQyICovCi13NiAgPSAtMS42MzA5MjkyOTg3ZS0wMzsgLyogMHhiYWQ1YzRlOCAqLworLyoKKyAqIERvbWFpbiB5IGluIFsweDFwLTI3LCAwLjI3XSwgcmFuZ2UgflstMy40NTk5ZS0xMCwgMy40NTkwZS0xMF06CisgKiB8KGxnYW1tYSgyIC0geSkgKyAwLjUgKiB5KSAvIHkgLSBhKHkpfCA8IDIqKi0zMS40CisgKi8KK2EwICA9ICA3LjcyMTU2NjQxZS0wMiwgLyogMHgzZDllMjMzZiAqLworYTEgID0gIDMuMjI0NjcxMTllLTAxLCAvKiAweDNlYTUxYTY5ICovCithMiAgPSAgNi43MzQ4NDgwMmUtMDIsIC8qIDB4M2Q4OWVlMDAgKi8KK2EzICA9ICAyLjA2Mzk1NjY3ZS0wMiwgLyogMHgzY2E5MTQ0ZiAqLworYTQgID0gIDYuOTgyNzU2MzFlLTAzLCAvKiAweDNiZTRjZjliICovCithNSAgPSAgNC4xMTc2ODQ0NGUtMDMsIC8qIDB4M2I4NmVkYTQgKi8KKy8qCisgKiBEb21haW4geCBpbiBbdGMtMC4yNCwgdGMrMC4yOF0sIHJhbmdlIH5bLTUuNjU3N2UtMTAsIDUuNTY3N2UtMTBdOgorICogfChsZ2FtbWEoeCkgLSB0ZikgLSB0KHggLSB0Yyl8IDwgMioqLTMwLjguCisgKi8KK3RjICA9ICAxLjQ2MTYzMjEzZSswMCwgLyogMHgzZmJiMTZjMyAqLwordGYgID0gLTEuMjE0ODYyOTFlLTAxLCAvKiAweGJkZjhjZGNlICovCit0MCAgPSAtMi45NDA2NDQ2MGUtMTEsIC8qIDB4YWUwMTU0YjcgKi8KK3QxICA9IC0yLjM1OTM5ODM3ZS0wOCwgLyogMHhiMmNhYWJiOCAqLwordDIgID0gIDQuODM4MzY0MTJlLTAxLCAvKiAweDNlZjdiOTY4ICovCit0MyAgPSAtMS40NzU4NjIxMmUtMDEsIC8qIDB4YmUxNzIwZDcgKi8KK3Q0ICA9ICA2LjQ2MDEzMDk2ZS0wMiwgLyogMHgzZDg0NGRiMSAqLwordDUgID0gLTMuMjg0NTAzNTJlLTAyLCAvKiAweGJkMDY4ODg0ICovCit0NiAgPSAgMS44NjQ4Mzc0OGUtMDIsIC8qIDB4M2M5OGM0N2EgKi8KK3Q3ICA9IC05Ljg5MjA2MjI4ZS0wMywgLyogMHhiYzIyMTI1MSAqLworLyoKKyAqIERvbWFpbiB5IGluIFstMC4xLCAwLjIzMl0sIHJhbmdlIH5bLTguNDkzMWUtMTAsIDguNzc5NGUtMTBdOgorICogfChsZ2FtbWEoMSArIHkpICsgMC41ICogeSkgLyB5IC0gdSh5KSAvIHYoeSl8IDwgMioqLTMxLjIKKyAqLwordTAgID0gLTcuNzIxNTY2NDFlLTAyLCAvKiAweGJkOWUyMzNmICovCit1MSAgPSAgNy4zNjc4OTcwM2UtMDEsIC8qIDB4M2YzYzllNDAgKi8KK3UyICA9ICA0Ljk1NjQ5MDQwZS0wMSwgLyogMHgzZWZkYzViNiAqLwordjEgID0gIDEuMTA5NTg0MjFlKzAwLCAvKiAweDNmOGUwNmRiICovCit2MiAgPSAgMi4xMDU5ODExMWUtMDEsIC8qIDB4M2U1N2E3MDggKi8KK3YzICA9IC0xLjAyOTk1NDk0ZS0wMiwgLyogMHhiYzI4YmY3MSAqLworLyoKKyAqIERvbWFpbiB4IGluICgyLCAzXSwgcmFuZ2UgflstNS41MTg5ZS0xMSwgNS4yMzE3ZS0xMV06CisgKiB8KGxnYW1tYSh5KzIpIC0gMC41ICogeSkgLyB5IC0gcyh5KS9yKHkpfCA8IDIqKi0zNS4wCisgKiB3aXRoIHkgPSB4IC0gMi4KKyAqLworczAgPSAtNy43MjE1NjY0MWUtMDIsIC8qIDB4YmQ5ZTIzM2YgKi8KK3MxID0gIDIuNjk5ODc0MDRlLTAxLCAvKiAweDNlOGEzYmNhICovCitzMiA9ICAxLjQyODUxMDEwZS0wMSwgLyogMHgzZTEyNDc4OSAqLworczMgPSAgMS4xOTM4OTUxOWUtMDIsIC8qIDB4M2M0MzliOTggKi8KK3IxID0gIDYuNzk2NTAwNjhlLTAxLCAvKiAweDNmMmRmZDhjICovCityMiA9ICAxLjE2MDU4NzMwZS0wMSwgLyogMHgzZGVkYjAzMyAqLworcjMgPSAgMy43NTY3MzY4N2UtMDMsIC8qIDB4M2I3NjMzOTYgKi8KKy8qCisgKiBEb21haW4geiBpbiBbOCwgMHgxcDI0XSwgcmFuZ2UgflstMS4yNjQwZS0wOSwgMS4yNjQwZS0wOV06CisgKiB8bGdhbW1hKHgpIC0gKHggLSAwLjUpICogKGxvZyh4KSAtIDEpIC0gdygxL3gpfCA8IDIqKi0yOS42LgorICovCit3MCA9ICA0LjE4OTM4NTQ3ZS0wMSwgLyogMHgzZWQ2N2YxZCAqLwordzEgPSAgOC4zMzMzMjQ2NGUtMDIsIC8qIDB4M2RhYWFhOWYgKi8KK3cyID0gLTIuNzYxMjkwODdlLTAzOyAvKiAweGJiMzRmNmM2ICovCiAKLXN0YXRpYyBjb25zdCBmbG9hdCB6ZXJvPSAgMC4wMDAwMDAwMDAwZSswMDsKLQotCXN0YXRpYyBmbG9hdCBzaW5fcGlmKGZsb2F0IHgpCitzdGF0aWMgZmxvYXQKK3Npbl9waWYoZmxvYXQgeCkKIHsKKwl2b2xhdGlsZSBmbG9hdCB2ejsKIAlmbG9hdCB5LHo7Ci0JaW50IG4saXg7CisJaW50IG47CiAKLQlHRVRfRkxPQVRfV09SRChpeCx4KTsKLQlpeCAmPSAweDdmZmZmZmZmOworCXkgPSAteDsKIAotCWlmKGl4PDB4M2U4MDAwMDApIHJldHVybiBfX2tlcm5lbF9zaW5kZihwaSp4KTsKLQl5ID0gLXg7CQkvKiB4IGlzIGFzc3VtZSBuZWdhdGl2ZSAqLworCXZ6ID0geSsweDFwMjNGOwkJCS8qIGRlcGVuZCBvbiAwIDw9IHkgPCAweDFwMjMgKi8KKwl6ID0gdnotMHgxcDIzRjsJCQkvKiByaW50Zih5KSBmb3IgdGhlIGFib3ZlIHJhbmdlICovCisJaWYgKHogPT0geSkKKwkgICAgcmV0dXJuIHplcm87CiAKLSAgICAvKgotICAgICAqIGFyZ3VtZW50IHJlZHVjdGlvbiwgbWFrZSBzdXJlIGluZXhhY3QgZmxhZyBub3QgcmFpc2VkIGlmIGlucHV0Ci0gICAgICogaXMgYW4gaW50ZWdlcgotICAgICAqLwotCXogPSBmbG9vcmYoeSk7Ci0JaWYoeiE9eSkgewkJCQkvKiBpbmV4YWN0IGFueXdheSAqLwotCSAgICB5ICAqPSAoZmxvYXQpMC41OwotCSAgICB5ICAgPSAoZmxvYXQpMi4wKih5IC0gZmxvb3JmKHkpKTsJLyogeSA9IHx4fCBtb2QgMi4wICovCi0JICAgIG4gICA9IChpbnQpICh5KihmbG9hdCk0LjApOwotCX0gZWxzZSB7Ci0gICAgICAgICAgICBpZihpeD49MHg0YjgwMDAwMCkgewotICAgICAgICAgICAgICAgIHkgPSB6ZXJvOyBuID0gMDsgICAgICAgICAgICAgICAgIC8qIHkgbXVzdCBiZSBldmVuICovCi0gICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgIGlmKGl4PDB4NGIwMDAwMDApIHogPSB5K3R3bzIzOwkvKiBleGFjdCAqLwotCQlHRVRfRkxPQVRfV09SRChuLHopOwotCQluICY9IDE7Ci0gICAgICAgICAgICAgICAgeSAgPSBuOwotICAgICAgICAgICAgICAgIG48PD0gMjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQorCXZ6ID0geSsweDFwMjFGOworCUdFVF9GTE9BVF9XT1JEKG4sdnopOwkJLyogYml0cyBmb3Igcm91bmRlZCB5ICh1bml0cyAwLjI1KSAqLworCXogPSB2ei0weDFwMjFGOwkJCS8qIHkgcm91bmRlZCB0byBhIG11bHRpcGxlIG9mIDAuMjUgKi8KKwlpZiAoeiA+IHkpIHsKKwkgICAgeiAtPSAwLjI1RjsJCQkvKiBhZGp1c3QgdG8gcm91bmQgZG93biAqLworCSAgICBuLS07CisJfQorCW4gJj0gNzsJCQkJLyogb2N0YW50IG9mIHkgbW9kIDIgKi8KKwl5ID0geSAtIHogKyBuICogMC4yNUY7CQkvKiB5IG1vZCAyICovCisKIAlzd2l0Y2ggKG4pIHsKIAkgICAgY2FzZSAwOiAgIHkgPSAgX19rZXJuZWxfc2luZGYocGkqeSk7IGJyZWFrOwogCSAgICBjYXNlIDE6CkBAIC0xMzcsMzQgKzEyMiwzOCBAQAogZmxvYXQKIF9faWVlZTc1NF9sZ2FtbWFmX3IoZmxvYXQgeCwgaW50ICpzaWduZ2FtcCkKIHsKLQlmbG9hdCB0LHkseixuYWRqLHAscDEscDIscDMscSxyLHc7CisJZmxvYXQgbmFkaixwLHAxLHAyLHAzLHEscix0LHcseSx6OwogCWludDMyX3QgaHg7CiAJaW50IGksaXg7CiAKIAlHRVRfRkxPQVRfV09SRChoeCx4KTsKIAotICAgIC8qIHB1cmdlIG9mZiArLWluZiwgTmFOLCArLTAsIHRpbnkgYW5kIG5lZ2F0aXZlIGFyZ3VtZW50cyAqLworICAgIC8qIHB1cmdlICstSW5mIGFuZCBOYU5zICovCiAJKnNpZ25nYW1wID0gMTsKIAlpeCA9IGh4JjB4N2ZmZmZmZmY7CiAJaWYoaXg+PTB4N2Y4MDAwMDApIHJldHVybiB4Kng7Ci0JaWYoaXg9PTApIHJldHVybiBvbmUvemVybzsKLQlpZihpeDwweDM1MDAwMDAwKSB7CS8qIHx4fDwyKiotMjEsIHJldHVybiAtbG9nKHx4fCkgKi8KLQkgICAgaWYoaHg8MCkgewotCSAgICAgICAgKnNpZ25nYW1wID0gLTE7Ci0JICAgICAgICByZXR1cm4gLV9faWVlZTc1NF9sb2dmKC14KTsKLQkgICAgfSBlbHNlIHJldHVybiAtX19pZWVlNzU0X2xvZ2YoeCk7CisKKyAgICAvKiBwdXJnZSArLTAgYW5kIHRpbnkgYXJndW1lbnRzICovCisJKnNpZ25nYW1wID0gMS0yKigodWludDMyX3QpaHg+PjMxKTsKKwlpZihpeDwweDMyMDAwMDAwKSB7CQkvKiB8eHw8MioqLTI3LCByZXR1cm4gLWxvZyh8eHwpICovCisJICAgIGlmKGl4PT0wKQorCSAgICAgICAgcmV0dXJuIG9uZS92emVybzsKKwkgICAgcmV0dXJuIC1fX2llZWU3NTRfbG9nZihmYWJzZih4KSk7CiAJfQorCisgICAgLyogcHVyZ2UgbmVnYXRpdmUgaW50ZWdlcnMgYW5kIHN0YXJ0IGV2YWx1YXRpb24gZm9yIG90aGVyIHggPCAwICovCiAJaWYoaHg8MCkgewotCSAgICBpZihpeD49MHg0YjAwMDAwMCkgCS8qIHx4fD49MioqMjMsIG11c3QgYmUgLWludGVnZXIgKi8KLQkJcmV0dXJuIG9uZS96ZXJvOworCSAgICAqc2lnbmdhbXAgPSAxOworCSAgICBpZihpeD49MHg0YjAwMDAwMCkgCQkvKiB8eHw+PTIqKjIzLCBtdXN0IGJlIC1pbnRlZ2VyICovCisJCXJldHVybiBvbmUvdnplcm87CiAJICAgIHQgPSBzaW5fcGlmKHgpOwotCSAgICBpZih0PT16ZXJvKSByZXR1cm4gb25lL3plcm87IC8qIC1pbnRlZ2VyICovCisJICAgIGlmKHQ9PXplcm8pIHJldHVybiBvbmUvdnplcm87IC8qIC1pbnRlZ2VyICovCiAJICAgIG5hZGogPSBfX2llZWU3NTRfbG9nZihwaS9mYWJzZih0KngpKTsKIAkgICAgaWYodDx6ZXJvKSAqc2lnbmdhbXAgPSAtMTsKIAkgICAgeCA9IC14OwogCX0KIAotICAgIC8qIHB1cmdlIG9mZiAxIGFuZCAyICovCisgICAgLyogcHVyZ2UgMSBhbmQgMiAqLwogCWlmIChpeD09MHgzZjgwMDAwMHx8aXg9PTB4NDAwMDAwMDApIHIgPSAwOwogICAgIC8qIGZvciB4IDwgMi4wICovCiAJZWxzZSBpZihpeDwweDQwMDAwMDAwKSB7CkBAIC0xNzUsNTUgKzE2NCw1MSBAQAogCSAgCWVsc2Uge3kgPSB4OyBpPTI7fQogCSAgICB9IGVsc2UgewogCSAgCXIgPSB6ZXJvOwotCSAgICAgICAgaWYoaXg+PTB4M2ZkZGE2MTgpIHt5PShmbG9hdCkyLjAteDtpPTA7fSAvKiBbMS43MzE2LDJdICovCisJICAgICAgICBpZihpeD49MHgzZmRkYTYxOCkge3k9Mi14O2k9MDt9IC8qIFsxLjczMTYsMl0gKi8KIAkgICAgICAgIGVsc2UgaWYoaXg+PTB4M0Y5ZGE2MjApIHt5PXgtdGM7aT0xO30gLyogWzEuMjMsMS43M10gKi8KIAkJZWxzZSB7eT14LW9uZTtpPTI7fQogCSAgICB9CiAJICAgIHN3aXRjaChpKSB7CiAJICAgICAgY2FzZSAwOgogCQl6ID0geSp5OwotCQlwMSA9IGEwK3oqKGEyK3oqKGE0K3oqKGE2K3oqKGE4K3oqYTEwKSkpKTsKLQkJcDIgPSB6KihhMSt6KihhMyt6KihhNSt6KihhNyt6KihhOSt6KmExMSkpKSkpOworCQlwMSA9IGEwK3oqKGEyK3oqYTQpOworCQlwMiA9IHoqKGExK3oqKGEzK3oqYTUpKTsKIAkJcCAgPSB5KnAxK3AyOwotCQlyICArPSAocC0oZmxvYXQpMC41KnkpOyBicmVhazsKKwkJciAgKz0gcC15LzI7IGJyZWFrOwogCSAgICAgIGNhc2UgMToKLQkJeiA9IHkqeTsKLQkJdyA9IHoqeTsKLQkJcDEgPSB0MCt3Kih0Myt3Kih0Nit3Kih0OSArdyp0MTIpKSk7CS8qIHBhcmFsbGVsIGNvbXAgKi8KLQkJcDIgPSB0MSt3Kih0NCt3Kih0Nyt3Kih0MTArdyp0MTMpKSk7Ci0JCXAzID0gdDIrdyoodDUrdyoodDgrdyoodDExK3cqdDE0KSkpOwotCQlwICA9IHoqcDEtKHR0LXcqKHAyK3kqcDMpKTsKLQkJciArPSAodGYgKyBwKTsgYnJlYWs7CisJCXAgPSB0MCt5KnQxK3kqeSoodDIreSoodDMreSoodDQreSoodDUreSoodDYreSp0NykpKSkpOworCQlyICs9IHRmICsgcDsgYnJlYWs7CiAJICAgICAgY2FzZSAyOgotCQlwMSA9IHkqKHUwK3kqKHUxK3kqKHUyK3kqKHUzK3kqKHU0K3kqdTUpKSkpKTsKLQkJcDIgPSBvbmUreSoodjEreSoodjIreSoodjMreSoodjQreSp2NSkpKSk7Ci0JCXIgKz0gKC0oZmxvYXQpMC41KnkgKyBwMS9wMik7CisJCXAxID0geSoodTAreSoodTEreSp1MikpOworCQlwMiA9IG9uZSt5Kih2MSt5Kih2Mit5KnYzKSk7CisJCXIgKz0gcDEvcDIteS8yOwogCSAgICB9CiAJfQotCWVsc2UgaWYoaXg8MHg0MTAwMDAwMCkgeyAJCQkvKiB4IDwgOC4wICovCi0JICAgIGkgPSAoaW50KXg7Ci0JICAgIHkgPSB4LShmbG9hdClpOwotCSAgICBwID0geSooczAreSooczEreSooczIreSooczMreSooczQreSooczUreSpzNikpKSkpKTsKLQkgICAgcSA9IG9uZSt5KihyMSt5KihyMit5KihyMyt5KihyNCt5KihyNSt5KnI2KSkpKSk7Ci0JICAgIHIgPSBoYWxmKnkrcC9xOworICAgIC8qIHggPCA4LjAgKi8KKwllbHNlIGlmKGl4PDB4NDEwMDAwMDApIHsKKwkgICAgaSA9IHg7CisJICAgIHkgPSB4LWk7CisJICAgIHAgPSB5KihzMCt5KihzMSt5KihzMit5KnMzKSkpOworCSAgICBxID0gb25lK3kqKHIxK3kqKHIyK3kqcjMpKTsKKwkgICAgciA9IHkvMitwL3E7CiAJICAgIHogPSBvbmU7CS8qIGxnYW1tYSgxK3MpID0gbG9nKHMpICsgbGdhbW1hKHMpICovCiAJICAgIHN3aXRjaChpKSB7Ci0JICAgIGNhc2UgNzogeiAqPSAoeSsoZmxvYXQpNi4wKTsJLyogRkFMTFRIUlUgKi8KLQkgICAgY2FzZSA2OiB6ICo9ICh5KyhmbG9hdCk1LjApOwkvKiBGQUxMVEhSVSAqLwotCSAgICBjYXNlIDU6IHogKj0gKHkrKGZsb2F0KTQuMCk7CS8qIEZBTExUSFJVICovCi0JICAgIGNhc2UgNDogeiAqPSAoeSsoZmxvYXQpMy4wKTsJLyogRkFMTFRIUlUgKi8KLQkgICAgY2FzZSAzOiB6ICo9ICh5KyhmbG9hdCkyLjApOwkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDc6IHogKj0gKHkrNik7CQkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDY6IHogKj0gKHkrNSk7CQkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDU6IHogKj0gKHkrNCk7CQkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDQ6IHogKj0gKHkrMyk7CQkvKiBGQUxMVEhSVSAqLworCSAgICBjYXNlIDM6IHogKj0gKHkrMik7CQkvKiBGQUxMVEhSVSAqLwogCQkgICAgciArPSBfX2llZWU3NTRfbG9nZih6KTsgYnJlYWs7CiAJICAgIH0KLSAgICAvKiA4LjAgPD0geCA8IDIqKjU4ICovCi0JfSBlbHNlIGlmIChpeCA8IDB4NWM4MDAwMDApIHsKKyAgICAvKiA4LjAgPD0geCA8IDIqKjI3ICovCisJfSBlbHNlIGlmIChpeCA8IDB4NGQwMDAwMDApIHsKIAkgICAgdCA9IF9faWVlZTc1NF9sb2dmKHgpOwogCSAgICB6ID0gb25lL3g7CiAJICAgIHkgPSB6Kno7Ci0JICAgIHcgPSB3MCt6Kih3MSt5Kih3Mit5Kih3Myt5Kih3NCt5Kih3NSt5Knc2KSkpKSk7CisJICAgIHcgPSB3MCt6Kih3MSt5KncyKTsKIAkgICAgciA9ICh4LWhhbGYpKih0LW9uZSkrdzsKIAl9IGVsc2UKLSAgICAvKiAyKio1OCA8PSB4IDw9IGluZiAqLworICAgIC8qIDIqKjI3IDw9IHggPD0gaW5mICovCiAJICAgIHIgPSAgeCooX19pZWVlNzU0X2xvZ2YoeCktb25lKTsKIAlpZihoeDwwKSByID0gbmFkaiAtIHI7CiAJcmV0dXJuIHI7CmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfbGdhbW1hbC5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYWwuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYmMyZmM3Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX2xnYW1tYWwuYwpAQCAtMCwwICsxLDI1IEBACisvKiBAKCMpZV9sZ2FtbWEuYyAxLjMgOTUvMDEvMTggKi8KKy8qCisgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKiBDb3B5cmlnaHQgKEMpIDE5OTMgYnkgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIERldmVsb3BlZCBhdCBTdW5Tb2Z0LCBhIFN1biBNaWNyb3N5c3RlbXMsIEluYy4gYnVzaW5lc3MuCisgKiBQZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQgZGlzdHJpYnV0ZSB0aGlzCisgKiBzb2Z0d2FyZSBpcyBmcmVlbHkgZ3JhbnRlZCwgcHJvdmlkZWQgdGhhdCB0aGlzIG5vdGljZQorICogaXMgcHJlc2VydmVkLgorICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorICovCisKKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KK19fRkJTRElEKCIkRnJlZUJTRCQiKTsKKworI2luY2x1ZGUgIm1hdGguaCIKKyNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKKworZXh0ZXJuIGludCBzaWduZ2FtOworCitsb25nIGRvdWJsZQorbGdhbW1hbChsb25nIGRvdWJsZSB4KQoreworCXJldHVybiBsZ2FtbWFsX3IoeCwmc2lnbmdhbSk7Cit9CmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfcG93LmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2VfcG93LmMKaW5kZXggNzYwN2E0YS4uZDU0YWY5ZCAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3Bvdy5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9wb3cuYwpAQCAtMTksMjAgKzE5LDIwIEBACiAgKgkxLiBDb21wdXRlIGFuZCByZXR1cm4gbG9nMih4KSBpbiB0d28gcGllY2VzOgogICoJCWxvZzIoeCkgPSB3MSArIHcyLAogICoJICAgd2hlcmUgdzEgaGFzIDUzLTI0ID0gMjkgYml0IHRyYWlsaW5nIHplcm9zLgotICoJMi4gUGVyZm9ybSB5KmxvZzIoeCkgPSBuK3knIGJ5IHNpbXVsYXRpbmcgbXV0aS1wcmVjaXNpb24gCisgKgkyLiBQZXJmb3JtIHkqbG9nMih4KSA9IG4reScgYnkgc2ltdWxhdGluZyBtdWx0aS1wcmVjaXNpb24gCiAgKgkgICBhcml0aG1ldGljLCB3aGVyZSB8eSd8PD0wLjUuCiAgKgkzLiBSZXR1cm4geCoqeSA9IDIqKm4qZXhwKHknKmxvZzIpCiAgKgogICogU3BlY2lhbCBjYXNlczoKICAqCTEuICAoYW55dGhpbmcpICoqIDAgIGlzIDEKICAqCTIuICAoYW55dGhpbmcpICoqIDEgIGlzIGl0c2VsZgotICoJMy4gIChhbnl0aGluZykgKiogTkFOIGlzIE5BTgorICoJMy4gIChhbnl0aGluZykgKiogTkFOIGlzIE5BTiBleGNlcHQgMSAqKiBOQU4gPSAxCiAgKgk0LiAgTkFOICoqIChhbnl0aGluZyBleGNlcHQgMCkgaXMgTkFOCiAgKgk1LiAgKy0ofHh8ID4gMSkgKiogICtJTkYgaXMgK0lORgogICoJNi4gICstKHx4fCA+IDEpICoqICAtSU5GIGlzICswCiAgKgk3LiAgKy0ofHh8IDwgMSkgKiogICtJTkYgaXMgKzAKICAqCTguICArLSh8eHwgPCAxKSAqKiAgLUlORiBpcyArSU5GCi0gKgk5LiAgKy0xICAgICAgICAgKiogKy1JTkYgaXMgTkFOCisgKgk5LiAgKy0xICAgICAgICAgKiogKy1JTkYgaXMgMQogICoJMTAuICswICoqICgrYW55dGhpbmcgZXhjZXB0IDAsIE5BTikgICAgICAgICAgICAgICBpcyArMAogICoJMTEuIC0wICoqICgrYW55dGhpbmcgZXhjZXB0IDAsIE5BTiwgb2RkIGludGVnZXIpICBpcyArMAogICoJMTIuICswICoqICgtYW55dGhpbmcgZXhjZXB0IDAsIE5BTikgICAgICAgICAgICAgICBpcyArSU5GCkBAIC0xNDEsNyArMTQxLDcgQEAKIAlpZihseT09MCkgeyAJCiAJICAgIGlmIChpeT09MHg3ZmYwMDAwMCkgewkvKiB5IGlzICstaW5mICovCiAJICAgICAgICBpZigoKGl4LTB4M2ZmMDAwMDApfGx4KT09MCkKLQkJICAgIHJldHVybiAgb25lOwkvKiAoLTEpKiorLWluZiBpcyBOYU4gKi8KKwkJICAgIHJldHVybiAgb25lOwkvKiAoLTEpKiorLWluZiBpcyAxICovCiAJICAgICAgICBlbHNlIGlmIChpeCA+PSAweDNmZjAwMDAwKS8qICh8eHw+MSkqKistaW5mID0gaW5mLDAgKi8KIAkJICAgIHJldHVybiAoaHk+PTApPyB5OiB6ZXJvOwogCSAgICAgICAgZWxzZQkJCS8qICh8eHw8MSkqKi0sK2luZiA9IGluZiwwICovCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc2luaC5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NpbmguYwppbmRleCAxNzQ0MmQwLi42YzAxZjRhIDEwMDY0NAotLS0gYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2Vfc2luaC5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9zaW5oLmMKQEAgLTMyLDYgKzMyLDggQEAKICAqCW9ubHkgc2luaCgwKT0wIGlzIGV4YWN0IGZvciBmaW5pdGUgeC4KICAqLwogCisjaW5jbHVkZSA8ZmxvYXQuaD4KKwogI2luY2x1ZGUgIm1hdGguaCIKICNpbmNsdWRlICJtYXRoX3ByaXZhdGUuaCIKIApAQCAtNzEsMyArNzMsNyBAQAogICAgIC8qIHx4fCA+IG92ZXJmbG93dGhyZXNvbGQsIHNpbmgoeCkgb3ZlcmZsb3cgKi8KIAlyZXR1cm4geCpzaHVnZTsKIH0KKworI2lmIChMREJMX01BTlRfRElHID09IDUzKQorX193ZWFrX3JlZmVyZW5jZShzaW5oLCBzaW5obCk7CisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9zaW5obC5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9lX3NpbmhsLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2U3ZTMzMwotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvZV9zaW5obC5jCkBAIC0wLDAgKzEsMTMxIEBACisvKiBmcm9tOiBGcmVlQlNEOiBoZWFkL2xpYi9tc3VuL3NyYy9lX3NpbmhsLmMgWFhYICovCisKKy8qCisgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKiBDb3B5cmlnaHQgKEMpIDE5OTMgYnkgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIERldmVsb3BlZCBhdCBTdW5Qcm8sIGEgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBidXNpbmVzcy4KKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMKKyAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlCisgKiBpcyBwcmVzZXJ2ZWQuCisgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKi8KKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorX19GQlNESUQoIiRGcmVlQlNEJCIpOworCisvKgorICogU2VlIGVfc2luaC5jIGZvciBjb21wbGV0ZSBjb21tZW50cy4KKyAqCisgKiBDb252ZXJ0ZWQgdG8gbG9uZyBkb3VibGUgYnkgQnJ1Y2UgRC4gRXZhbnMuCisgKi8KKworI2luY2x1ZGUgPGZsb2F0Lmg+CisjaWZkZWYgX19pMzg2X18KKyNpbmNsdWRlIDxpZWVlZnAuaD4KKyNlbmRpZgorCisjaW5jbHVkZSAiZnBtYXRoLmgiCisjaW5jbHVkZSAibWF0aC5oIgorI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgorI2luY2x1ZGUgImtfZXhwbC5oIgorCisjaWYgTERCTF9NQVhfRVhQICE9IDB4NDAwMAorLyogV2UgYWxzbyByZXF1aXJlIHRoZSB1c3VhbCBleHBzaWduIGVuY29kaW5nLiAqLworI2Vycm9yICJVbnN1cHBvcnRlZCBsb25nIGRvdWJsZSBmb3JtYXQiCisjZW5kaWYKKworI2RlZmluZQlCSUFTCShMREJMX01BWF9FWFAgLSAxKQorCitzdGF0aWMgY29uc3QgbG9uZyBkb3VibGUgc2h1Z2UgPSAweDFwMTYzODNMOworI2lmIExEQkxfTUFOVF9ESUcgPT0gNjQKKy8qCisgKiBEb21haW4gWy0xLCAxXSwgcmFuZ2UgflstNi42NzQ5ZS0yMiwgNi42NzQ5ZS0yMl06CisgKiB8c2luaCh4KS94IC0gcyh4KXwgPCAyKiotNzAuMworICovCitzdGF0aWMgY29uc3QgdW5pb24gSUVFRWwyYml0cworUzN1ID0gTEQ4MEMoMHhhYWFhYWFhYWFhYWFhYWFhLCAtMywgIDEuNjY2NjY2NjY2NjY2NjY2NjY2NThlLTFMKTsKKyNkZWZpbmUJUzMJUzN1LmUKK3N0YXRpYyBjb25zdCBkb3VibGUKK1M1ICA9ICA4LjMzMzMzMzMzMzMzMzMzMzJlLTMsCQkvKiAgMHgxMTExMTExMTExMTExMS4wcC01OSAqLworUzcgID0gIDEuOTg0MTI2OTg0MTI3MDA3NGUtNCwJCS8qICAweDFhMDFhMDFhMDFhMDcwLjBwLTY1ICovCitTOSAgPSAgMi43NTU3MzE5MjIzODczODg5ZS02LAkJLyogIDB4MTcxZGUzYTU1NjVmZTYuMHAtNzEgKi8KK1MxMSA9ICAyLjUwNTIxMDg0MDY3MDQwODRlLTgsCQkvKiAgMHgxYWU2NDU2ODU3NTMwZi4wcC03OCAqLworUzEzID0gIDEuNjA1OTA0Mjc0ODY1NTI5N2UtMTAsCQkvKiAgMHgxNjEyNDVmYTkxMDY5Ny4wcC04NSAqLworUzE1ID0gIDcuNjQ3MDAwNjkxNDM5NjkyMGUtMTMsCQkvKiAgMHgxYWU3Y2U0ZWZmMjc5Mi4wcC05MyAqLworUzE3ID0gIDIuODM0NjE0MjMwODQyNDI2N2UtMTU7CQkvKiAgMHgxOTg4MmNlNzg5ZmZjNi4wcC0xMDEgKi8KKyNlbGlmIExEQkxfTUFOVF9ESUcgPT0gMTEzCisvKgorICogRG9tYWluIFstMSwgMV0sIHJhbmdlIH5bLTIuOTY3M2UtMzYsIDIuOTY3M2UtMzZdOgorICogfHNpbmgoeCkveCAtIHMoeCl8IDwgMioqLTExOC4wCisgKi8KK3N0YXRpYyBjb25zdCBsb25nIGRvdWJsZQorUzMgID0gIDEuNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYwMzNlLTFMLAkvKiAgMHgxNTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTUzYi4wcC0xMTVMICovCitTNSAgPSAgOC4zMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzNzY0MzE5M2UtM0wsCS8qICAweDExMTExMTExMTExMTExMTExMTExMTExMTE4MGY1LjBwLTExOUwgKi8KK1M3ICA9ICAxLjk4NDEyNjk4NDEyNjk4NDEyNjk4NDEyNjk3MzkxMjYzMTk5ZS00TCwJLyogIDB4MWEwMWEwMWEwMWEwMWEwMWEwMWEwMTc2YWFkMTEuMHAtMTI1TCAqLworUzkgID0gIDIuNzU1NzMxOTIyMzk4NTg5MDY1MjU1NzQ0MDYyMDU0NjQyMThlLTZMLAkvKiAgMHgxNzFkZTNhNTU2YzczMzhmYWFjMjQzYWFhOTU5Mi4wcC0xMzFMICovCitTMTEgPSAgMi41MDUyMTA4Mzg1NDQxNzE4Nzc0OTY3NTYzNzQ2MDk3Nzk5N2UtOEwsCS8qICAweDFhZTY0NTY3ZjU0NGUzOGZlNTliMzM4MGQ3NDEzLjBwLTEzOEwgKi8KK1MxMyA9ICAxLjYwNTkwNDM4MzY4MjE2MTQ2MzY4NzM3NzYyNDMxNTUyNzAyZS0xMEwsCS8qICAweDE2MTI0NjEzYTg2ZDA5ODA1OWM3NjIwODUwZmMyLjBwLTE0NUwgKi8KK1MxNSA9ICA3LjY0NzE2MzczMTgxOTgwNTM5Nzg2ODAyNDcwOTY5MDk2NDQwZS0xM0wsCS8qICAweDFhZTdmM2U3MzNiODE0MTkzYWYwOWNlNzIzMDQzLjBwLTE1M0wgKi8KK1MxNyA9ICAyLjgxMTQ1NzI1NDM0Nzc1NDA5ODcwNTg0MjgwNzIyNzAxNTc0ZS0xNUw7CS8qICAweDE5NTJjNzcwMzBjMzY4OThjM2ZkMGI2ZGZjNTYyLjBwLTE2MUwgKi8KK3N0YXRpYyBjb25zdCBkb3VibGUKK1MxOT0gIDguMjIwNjM1MjQzNTQxMTAwNWUtMTgsCQkvKiAgMHgxMmY0OWI0NjYyYjg2ZC4wcC0xMDkgKi8KK1MyMT0gIDEuOTU3Mjk0MzkzMTQxODg5MWUtMjAsCQkvKiAgMHgxNzFiOGYyZmFiOTYyOC4wcC0xMTggKi8KK1MyMyA9ICAzLjg2Nzk5ODM1MzA2NjY5MzllLTIzLAkJLyogIDB4MTc2MTcwMDJiNzNhZmMuMHAtMTI3ICovCitTMjUgPSAgNi41MDY3ODY3OTExNTEyNzQ5ZS0yNjsJCS8qICAweDE0MjMzNTI2MjYwNDhhLjBwLTEzNiAqLworI2Vsc2UKKyNlcnJvciAiVW5zdXBwb3J0ZWQgbG9uZyBkb3VibGUgZm9ybWF0IgorI2VuZGlmIC8qIExEQkxfTUFOVF9ESUcgPT0gNjQgKi8KKworLyogbG9nKDIqKjE2Mzg1IC0gMC41KSByb3VuZGVkIHVwOiAqLworc3RhdGljIGNvbnN0IGZsb2F0CitvX3RocmVzaG9sZCA9ICAxLjEzNTcyMTY4ZTQ7CQkvKiAgMHhiMTc0ZGUuMHAtMTAgKi8KKworbG9uZyBkb3VibGUKK3NpbmhsKGxvbmcgZG91YmxlIHgpCit7CisJbG9uZyBkb3VibGUgaGksbG8seDIseDQ7CisJZG91YmxlIGR4MixzOworCWludDE2X3QgaXgsang7CisKKwlHRVRfTERCTF9FWFBTSUdOKGp4LHgpOworCWl4ID0gangmMHg3ZmZmOworCisgICAgLyogeCBpcyBJTkYgb3IgTmFOICovCisJaWYoaXg+PTB4N2ZmZikgcmV0dXJuIHgreDsKKworCUVOVEVSSSgpOworCisJcyA9IDE7CisJaWYgKGp4PDApIHMgPSAtMTsKKworICAgIC8qIHx4fCA8IDY0LCByZXR1cm4geCwgcyh4KSwgb3IgYWNjdXJhdGUgcyooZXhwKHx4fCkvMi0xL2V4cCh8eHwpLzIpICovCisJaWYgKGl4PDB4NDAwNSkgewkJLyogfHh8PDY0ICovCisJICAgIGlmIChpeDxCSUFTLShMREJMX01BTlRfRElHKzEpLzIpIAkvKiB8eHw8VElOWSAqLworCQlpZihzaHVnZSt4PjEpIFJFVFVSTkkoeCk7ICAvKiBzaW5oKHRpbnkpID0gdGlueSB3aXRoIGluZXhhY3QgKi8KKwkgICAgaWYgKGl4PDB4M2ZmZikgewkJLyogfHh8PDEgKi8KKwkJeDIgPSB4Kng7CisjaWYgTERCTF9NQU5UX0RJRyA9PSA2NAorCQl4NCA9IHgyKngyOworCQlSRVRVUk5JKCgoUzE3KngyICsgUzE1KSp4NCArIChTMTMqeDIgKyBTMTEpKSooeDIqeCp4NCp4NCkgKworCQkgICAgKChTOSp4MiArIFM3KSp4MiArIFM1KSooeDIqeCp4MikgKyBTMyooeDIqeCkgKyB4KTsKKyNlbGlmIExEQkxfTUFOVF9ESUcgPT0gMTEzCisJCWR4MiA9IHgyOworCQlSRVRVUk5JKCgoKCgoKCgoKChTMjUqZHgyICsgUzIzKSpkeDIgKworCQkgICAgUzIxKSp4MiArIFMxOSkqeDIgKworCQkgICAgUzE3KSp4MiArIFMxNSkqeDIgKyBTMTMpKngyICsgUzExKSp4MiArIFM5KSp4MiArIFM3KSp4MiArCisJCSAgICBTNSkqICh4Mip4KngyKSArCisJCSAgICBTMyooeDIqeCkgKyB4KTsKKyNlbmRpZgorCSAgICB9CisJICAgIGtfaGV4cGwoZmFic2woeCksICZoaSwgJmxvKTsKKwkgICAgUkVUVVJOSShzKihsbyAtIDAuMjUvKGhpICsgbG8pICsgaGkpKTsKKwl9CisKKyAgICAvKiB8eHwgaW4gWzY0LCBvX3RocmVzaG9sZF0sIHJldHVybiBjb3JyZWN0bHktb3ZlcmZsb3dpbmcgcypleHAofHh8KS8yICovCisJaWYgKGZhYnNsKHgpIDw9IG9fdGhyZXNob2xkKQorCSAgICBSRVRVUk5JKHMqaGV4cGwoZmFic2woeCkpKTsKKworICAgIC8qIHx4fCA+IG9fdGhyZXNob2xkLCBzaW5oKHgpIG92ZXJmbG93ICovCisJcmV0dXJuIHgqc2h1Z2U7Cit9CmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2ZlbnYtc29mdGZsb2F0LmggYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2ZlbnYtc29mdGZsb2F0LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAyZDJhMmMuLjAwMDAwMDAKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9mZW52LXNvZnRmbG9hdC5oCisrKyAvZGV2L251bGwKQEAgLTEsMTg0ICswLDAgQEAKLS8qLQotICogQ29weXJpZ2h0IChjKSAyMDA0LTIwMTEgRGF2aWQgU2NodWx0eiA8ZGFzQEZyZWVCU0QuT1JHPgotICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBBVVRIT1IgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTCi0gKiBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCi0gKiBTVUNIIERBTUFHRS4KLSAqCi0gKiAkRnJlZUJTRCQKLSAqLwotCi0jaWZuZGVmCV9GRU5WX0hfCi0jZXJyb3IgIlRoaXMgZmlsZSBpcyBtZWFudCB0byBiZSBpbmNsdWRlZCBvbmx5IGJ5IDxmZW52Lmg+LiIKLSNlbmRpZgotCi0vKgotICogVGhpcyBmaWxlIGltcGxlbWVudHMgdGhlIGZ1bmN0aW9uYWxpdHkgb2YgPGZlbnYuaD4gb24gcGxhdGZvcm1zIHRoYXQKLSAqIGxhY2sgYW4gRlBVIGFuZCB1c2Ugc29mdGZsb2F0IGluIGxpYmMgZm9yIGZsb2F0aW5nIHBvaW50LiAgVG8gdXNlIGl0LAotICogeW91IG11c3Qgd3JpdGUgYW4gPGZlbnYuaD4gdGhhdCBwcm92aWRlcyB0aGUgZm9sbG93aW5nOgotICoKLSAqICAgLSBhIHR5cGVkZWYgZm9yIGZlbnZfdCwgd2hpY2ggbWF5IGJlIGFuIGludGVnZXIgb3Igc3RydWN0IHR5cGUKLSAqICAgLSBhIHR5cGVkZWYgZm9yIGZleGNlcHRfdCAoWFhYIFRoaXMgZmlsZSBhc3N1bWVzIGZleGNlcHRfdCBpcyBhCi0gKiAgICAgc2ltcGxlIGludGVnZXIgdHlwZSBjb250YWluaW5nIHRoZSBleGNlcHRpb24gbWFzay4pCi0gKiAgIC0gZGVmaW5pdGlvbnMgb2YgRkVfKiBjb25zdGFudHMgZm9yIHRoZSBmaXZlIGV4Y2VwdGlvbnMgYW5kIGZvdXIKLSAqICAgICByb3VuZGluZyBtb2RlcyBpbiBJRUVFIDc1NCwgYXMgZGVzY3JpYmVkIGluIGZlbnYoMykKLSAqICAgLSBhIGRlZmluaXRpb24sIGFuZCB0aGUgY29ycmVzcG9uZGluZyBleHRlcm5hbCBzeW1ib2wsIGZvciBGRV9ERkxfRU5WCi0gKiAgIC0gYSBtYWNybyBfX3NldF9lbnYoZW52LCBmbGFncywgbWFzaywgcm5kKSwgd2hpY2ggc2V0cyB0aGUgZ2l2ZW4gZmVudl90Ci0gKiAgICAgZnJvbSB0aGUgZXhjZXB0aW9uIGZsYWdzLCBtYXNrLCBhbmQgcm91bmRpbmcgbW9kZQotICogICAtIG1hY3JvcyBfX2Vudl9mbGFncyhlbnYpLCBfX2Vudl9tYXNrKGVudiksIGFuZCBfX2Vudl9yb3VuZChlbnYpLCB3aGljaAotICogICAgIGV4dHJhY3QgZmllbGRzIGZyb20gYW4gZmVudl90Ci0gKiAgIC0gYSBkZWZpbml0aW9uIG9mIF9fZmVudl9zdGF0aWMKLSAqCi0gKiBJZiB0aGUgYXJjaGl0ZWN0dXJlIHN1cHBvcnRzIGFuIG9wdGlvbmFsIEZQVSwgaXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdQotICogZGVmaW5lIGZlbnZfdCBhbmQgZmV4Y2VwdF90IHRvIG1hdGNoIHRoZSBoYXJkd2FyZSBBQkkuICBPdGhlcndpc2UsIGl0Ci0gKiBkb2Vzbid0IG1hdHRlciBob3cgeW91IGRlZmluZSB0aGVtLgotICovCi0KLWV4dGVybiBpbnQgX19zb2Z0ZmxvYXRfZmxvYXRfZXhjZXB0aW9uX2ZsYWdzOwotZXh0ZXJuIGludCBfX3NvZnRmbG9hdF9mbG9hdF9leGNlcHRpb25fbWFzazsKLWV4dGVybiBpbnQgX19zb2Z0ZmxvYXRfZmxvYXRfcm91bmRpbmdfbW9kZTsKLXZvaWQgX19zb2Z0ZmxvYXRfZmxvYXRfcmFpc2UoaW50KTsKLQotX19mZW52X3N0YXRpYyBpbmxpbmUgaW50Ci1mZWNsZWFyZXhjZXB0KGludCBfX2V4Y2VwdHMpCi17Ci0KLQlfX3NvZnRmbG9hdF9mbG9hdF9leGNlcHRpb25fZmxhZ3MgJj0gfl9fZXhjZXB0czsKLQlyZXR1cm4gKDApOwotfQotCi1fX2ZlbnZfc3RhdGljIGlubGluZSBpbnQKLWZlZ2V0ZXhjZXB0ZmxhZyhmZXhjZXB0X3QgKl9fZmxhZ3AsIGludCBfX2V4Y2VwdHMpCi17Ci0KLQkqX19mbGFncCA9IF9fc29mdGZsb2F0X2Zsb2F0X2V4Y2VwdGlvbl9mbGFncyAmIF9fZXhjZXB0czsKLQlyZXR1cm4gKDApOwotfQotCi1fX2ZlbnZfc3RhdGljIGlubGluZSBpbnQKLWZlc2V0ZXhjZXB0ZmxhZyhjb25zdCBmZXhjZXB0X3QgKl9fZmxhZ3AsIGludCBfX2V4Y2VwdHMpCi17Ci0KLQlfX3NvZnRmbG9hdF9mbG9hdF9leGNlcHRpb25fZmxhZ3MgJj0gfl9fZXhjZXB0czsKLQlfX3NvZnRmbG9hdF9mbG9hdF9leGNlcHRpb25fZmxhZ3MgfD0gKl9fZmxhZ3AgJiBfX2V4Y2VwdHM7Ci0JcmV0dXJuICgwKTsKLX0KLQotX19mZW52X3N0YXRpYyBpbmxpbmUgaW50Ci1mZXJhaXNlZXhjZXB0KGludCBfX2V4Y2VwdHMpCi17Ci0KLQlfX3NvZnRmbG9hdF9mbG9hdF9yYWlzZShfX2V4Y2VwdHMpOwotCXJldHVybiAoMCk7Ci19Ci0KLV9fZmVudl9zdGF0aWMgaW5saW5lIGludAotZmV0ZXN0ZXhjZXB0KGludCBfX2V4Y2VwdHMpCi17Ci0KLQlyZXR1cm4gKF9fc29mdGZsb2F0X2Zsb2F0X2V4Y2VwdGlvbl9mbGFncyAmIF9fZXhjZXB0cyk7Ci19Ci0KLV9fZmVudl9zdGF0aWMgaW5saW5lIGludAotZmVnZXRyb3VuZCh2b2lkKQotewotCi0JcmV0dXJuIChfX3NvZnRmbG9hdF9mbG9hdF9yb3VuZGluZ19tb2RlKTsKLX0KLQotX19mZW52X3N0YXRpYyBpbmxpbmUgaW50Ci1mZXNldHJvdW5kKGludCBfX3JvdW5kKQotewotCi0JX19zb2Z0ZmxvYXRfZmxvYXRfcm91bmRpbmdfbW9kZSA9IF9fcm91bmQ7Ci0JcmV0dXJuICgwKTsKLX0KLQotX19mZW52X3N0YXRpYyBpbmxpbmUgaW50Ci1mZWdldGVudihmZW52X3QgKl9fZW52cCkKLXsKLQotCV9fc2V0X2VudigqX19lbnZwLCBfX3NvZnRmbG9hdF9mbG9hdF9leGNlcHRpb25fZmxhZ3MsCi0JICAgIF9fc29mdGZsb2F0X2Zsb2F0X2V4Y2VwdGlvbl9tYXNrLCBfX3NvZnRmbG9hdF9mbG9hdF9yb3VuZGluZ19tb2RlKTsKLQlyZXR1cm4gKDApOwotfQotCi1fX2ZlbnZfc3RhdGljIGlubGluZSBpbnQKLWZlaG9sZGV4Y2VwdChmZW52X3QgKl9fZW52cCkKLXsKLQlmZW52X3QgX19lbnY7Ci0KLQlmZWdldGVudihfX2VudnApOwotCV9fc29mdGZsb2F0X2Zsb2F0X2V4Y2VwdGlvbl9mbGFncyA9IDA7Ci0JX19zb2Z0ZmxvYXRfZmxvYXRfZXhjZXB0aW9uX21hc2sgPSAwOwotCXJldHVybiAoMCk7Ci19Ci0KLV9fZmVudl9zdGF0aWMgaW5saW5lIGludAotZmVzZXRlbnYoY29uc3QgZmVudl90ICpfX2VudnApCi17Ci0KLQlfX3NvZnRmbG9hdF9mbG9hdF9leGNlcHRpb25fZmxhZ3MgPSBfX2Vudl9mbGFncygqX19lbnZwKTsKLQlfX3NvZnRmbG9hdF9mbG9hdF9leGNlcHRpb25fbWFzayA9IF9fZW52X21hc2soKl9fZW52cCk7Ci0JX19zb2Z0ZmxvYXRfZmxvYXRfcm91bmRpbmdfbW9kZSA9IF9fZW52X3JvdW5kKCpfX2VudnApOwotCXJldHVybiAoMCk7Ci19Ci0KLV9fZmVudl9zdGF0aWMgaW5saW5lIGludAotZmV1cGRhdGVlbnYoY29uc3QgZmVudl90ICpfX2VudnApCi17Ci0JaW50IF9fb2ZsYWdzID0gX19zb2Z0ZmxvYXRfZmxvYXRfZXhjZXB0aW9uX2ZsYWdzOwotCi0JZmVzZXRlbnYoX19lbnZwKTsKLQlmZXJhaXNlZXhjZXB0KF9fb2ZsYWdzKTsKLQlyZXR1cm4gKDApOwotfQotCi0jaWYgX19CU0RfVklTSUJMRQotCi0vKiBXZSBjdXJyZW50bHkgcHJvdmlkZSBubyBleHRlcm5hbCBkZWZpbml0aW9ucyBvZiB0aGUgZnVuY3Rpb25zIGJlbG93LiAqLwotCi1zdGF0aWMgaW5saW5lIGludAotZmVlbmFibGVleGNlcHQoaW50IF9fbWFzaykKLXsKLQlpbnQgX19vbWFzayA9IF9fc29mdGZsb2F0X2Zsb2F0X2V4Y2VwdGlvbl9tYXNrOwotCi0JX19zb2Z0ZmxvYXRfZmxvYXRfZXhjZXB0aW9uX21hc2sgfD0gX19tYXNrOwotCXJldHVybiAoX19vbWFzayk7Ci19Ci0KLXN0YXRpYyBpbmxpbmUgaW50Ci1mZWRpc2FibGVleGNlcHQoaW50IF9fbWFzaykKLXsKLQlpbnQgX19vbWFzayA9IF9fc29mdGZsb2F0X2Zsb2F0X2V4Y2VwdGlvbl9tYXNrOwotCi0JX19zb2Z0ZmxvYXRfZmxvYXRfZXhjZXB0aW9uX21hc2sgJj0gfl9fbWFzazsKLQlyZXR1cm4gKF9fb21hc2spOwotfQotCi1zdGF0aWMgaW5saW5lIGludAotZmVnZXRleGNlcHQodm9pZCkKLXsKLQotCXJldHVybiAoX19zb2Z0ZmxvYXRfZmxvYXRfZXhjZXB0aW9uX21hc2spOwotfQotCi0jZW5kaWYgLyogX19CU0RfVklTSUJMRSAqLwpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9pbXByZWNpc2UuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvaW1wcmVjaXNlLmMKaW5kZXggYTc1MDNiZi4uMDhjZDIzOSAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9pbXByZWNpc2UuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL2ltcHJlY2lzZS5jCkBAIC02MCwxMCArNjAsNCBAQAogCWxvbmcgZG91YmxlIGltcHJlY2lzZV8gIyMgZiAjIyBsKGxvbmcgZG91YmxlIHYpIHsgcmV0dXJuIGYodik7IH1cCiAJREVDTEFSRV9XRUFLKGYgIyMgbCkKIAotREVDTEFSRV9JTVBSRUNJU0UoY29zaCk7Ci1ERUNMQVJFX0lNUFJFQ0lTRShlcmZjKTsKLURFQ0xBUkVfSU1QUkVDSVNFKGVyZik7Ci1ERUNMQVJFX0lNUFJFQ0lTRShsZ2FtbWEpOwotREVDTEFSRV9JTVBSRUNJU0Uoc2luaCk7Ci1ERUNMQVJFX0lNUFJFQ0lTRSh0YW5oKTsKIERFQ0xBUkVfSU1QUkVDSVNFKHRnYW1tYSk7CmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZXJmLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZXJmLmMKaW5kZXggMDg4NmU1ZS4uZTFkNjNiYyAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2VyZi5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19lcmYuYwpAQCAtMTExLDE4ICsxMTEsMjUgQEAKICNpbmNsdWRlICJtYXRoLmgiCiAjaW5jbHVkZSAibWF0aF9wcml2YXRlLmgiCiAKKy8qIFhYWCBQcmV2ZW50IGNvbXBpbGVycyBmcm9tIGVycm9uZW91c2x5IGNvbnN0YW50IGZvbGRpbmc6ICovCitzdGF0aWMgY29uc3Qgdm9sYXRpbGUgZG91YmxlIHRpbnk9IDFlLTMwMDsKKwogc3RhdGljIGNvbnN0IGRvdWJsZQotdGlueQkgICAgPSAxZS0zMDAsCi1oYWxmPSAgNS4wMDAwMDAwMDAwMDAwMDAwMDAwMGUtMDEsIC8qIDB4M0ZFMDAwMDAsIDB4MDAwMDAwMDAgKi8KLW9uZSA9ICAxLjAwMDAwMDAwMDAwMDAwMDAwMDAwZSswMCwgLyogMHgzRkYwMDAwMCwgMHgwMDAwMDAwMCAqLwotdHdvID0gIDIuMDAwMDAwMDAwMDAwMDAwMDAwMDBlKzAwLCAvKiAweDQwMDAwMDAwLCAweDAwMDAwMDAwICovCi0JLyogYyA9IChmbG9hdCkwLjg0NTA2MjkxMTUxICovCitoYWxmPSAwLjUsCitvbmUgPSAxLAordHdvID0gMiwKKy8qIGMgPSAoZmxvYXQpMC44NDUwNjI5MTE1MSAqLwogZXJ4ID0gIDguNDUwNjI5MTE1MTA0Njc1MjkyOTdlLTAxLCAvKiAweDNGRUIwQUMxLCAweDYwMDAwMDAwICovCiAvKgotICogQ29lZmZpY2llbnRzIGZvciBhcHByb3hpbWF0aW9uIHRvICBlcmYgb24gWzAsMC44NDM3NV0KKyAqIEluIHRoZSBkb21haW4gWzAsIDIqKi0yOF0sIG9ubHkgdGhlIGZpcnN0IHRlcm0gaW4gdGhlIHBvd2VyIHNlcmllcworICogZXhwYW5zaW9uIG9mIGVyZih4KSBpcyB1c2VkLiAgVGhlIG1hZ25pdHVkZSBvZiB0aGUgZmlyc3QgbmVnbGVjdGVkCisgKiB0ZXJtcyBpcyBsZXNzIHRoYW4gMioqLTg0LgogICovCiBlZnggPSAgMS4yODM3OTE2NzA5NTUxMjU4NjMxNmUtMDEsIC8qIDB4M0ZDMDZFQkEsIDB4ODIxNERCNjkgKi8KIGVmeDg9ICAxLjAyNzAzMzMzNjc2NDEwMDY5MDUzZSswMCwgLyogMHgzRkYwNkVCQSwgMHg4MjE0REI2OSAqLworLyoKKyAqIENvZWZmaWNpZW50cyBmb3IgYXBwcm94aW1hdGlvbiB0byBlcmYgb24gWzAsMC44NDM3NV0KKyAqLwogcHAwICA9ICAxLjI4Mzc5MTY3MDk1NTEyNTU4NTYxZS0wMSwgLyogMHgzRkMwNkVCQSwgMHg4MjE0REI2OCAqLwogcHAxICA9IC0zLjI1MDQyMTA3MjQ3MDAxNDk5MzcwZS0wMSwgLyogMHhCRkQ0Q0Q3RCwgMHg2OTFDQjkxMyAqLwogcHAyICA9IC0yLjg0ODE3NDk1NzU1OTg1MTA0NzY2ZS0wMiwgLyogMHhCRjlEMkE1MSwgMHhEQkQ3MTk0RiAqLwpAQCAtMTM0LDcgKzE0MSw3IEBACiBxcTQgID0gIDEuMzI0OTQ3MzgwMDQzMjE2NDQ1MjZlLTA0LCAvKiAweDNGMjE1REM5LCAweDIyMUMxQTEwICovCiBxcTUgID0gLTMuOTYwMjI4Mjc4Nzc1MzY4MTIzMjBlLTA2LCAvKiAweEJFRDA5QzQzLCAweDQyQTI2MTIwICovCiAvKgotICogQ29lZmZpY2llbnRzIGZvciBhcHByb3hpbWF0aW9uIHRvICBlcmYgIGluIFswLjg0Mzc1LDEuMjVdCisgKiBDb2VmZmljaWVudHMgZm9yIGFwcHJveGltYXRpb24gdG8gZXJmIGluIFswLjg0Mzc1LDEuMjVdCiAgKi8KIHBhMCAgPSAtMi4zNjIxMTg1NjA3NTI2NTk0NDA3N2UtMDMsIC8qIDB4QkY2MzU5QjgsIDB4QkVGNzc1MzggKi8KIHBhMSAgPSAgNC4xNDg1NjExODY4Mzc0ODMzMTY2NmUtMDEsIC8qIDB4M0ZEQThEMDAsIDB4QUQ5MkIzNEQgKi8KQEAgLTE1MCw3ICsxNTcsNyBAQAogcWE1ICA9ICAxLjM2MzcwODM5MTIwMjkwNTA3MzYyZS0wMiwgLyogMHgzRjhCRURDMiwgMHg2QjUxREQxQyAqLwogcWE2ICA9ICAxLjE5ODQ0OTk4NDY3OTkxMDc0MTcwZS0wMiwgLyogMHgzRjg4OEI1NCwgMHg1NzM1MTUxRCAqLwogLyoKLSAqIENvZWZmaWNpZW50cyBmb3IgYXBwcm94aW1hdGlvbiB0byAgZXJmYyBpbiBbMS4yNSwxLzAuMzVdCisgKiBDb2VmZmljaWVudHMgZm9yIGFwcHJveGltYXRpb24gdG8gZXJmYyBpbiBbMS4yNSwxLzAuMzVdCiAgKi8KIHJhMCAgPSAtOS44NjQ5NDQwMzQ4NDcxNDgyMjcwNWUtMDMsIC8qIDB4QkY4NDM0MTIsIDB4NjAwRDY0MzUgKi8KIHJhMSAgPSAtNi45Mzg1ODU3MjcwNzE4MTc2NDM3MmUtMDEsIC8qIDB4QkZFNjM0MTYsIDB4RTRCQTczNjAgKi8KQEAgLTE2OSw3ICsxNzYsNyBAQAogc2E3ICA9ICA2LjU3MDI0OTc3MDMxOTI4MTcwMTM1ZSswMCwgLyogMHg0MDFBNDdFRiwgMHg4RTQ4NEE5MyAqLwogc2E4ICA9IC02LjA0MjQ0MTUyMTQ4NTgwOTg3NDM4ZS0wMiwgLyogMHhCRkFFRUZGMiwgMHhFRTc0OUE2MiAqLwogLyoKLSAqIENvZWZmaWNpZW50cyBmb3IgYXBwcm94aW1hdGlvbiB0byAgZXJmYyBpbiBbMS8uMzUsMjhdCisgKiBDb2VmZmljaWVudHMgZm9yIGFwcHJveGltYXRpb24gdG8gZXJmYyBpbiBbMS8uMzUsMjhdCiAgKi8KIHJiMCAgPSAtOS44NjQ5NDI5MjQ3MDAwOTkyODU5N2UtMDMsIC8qIDB4QkY4NDM0MTIsIDB4MzlFODZGNEEgKi8KIHJiMSAgPSAtNy45OTI4MzIzNzY4MDUyMzAwNjU3NGUtMDEsIC8qIDB4QkZFOTkzQkEsIDB4NzBDMjg1REUgKi8KQEAgLTIwMSw3ICsyMDgsNyBAQAogCWlmKGl4IDwgMHgzZmViMDAwMCkgewkJLyogfHh8PDAuODQzNzUgKi8KIAkgICAgaWYoaXggPCAweDNlMzAwMDAwKSB7IAkvKiB8eHw8MioqLTI4ICovCiAJICAgICAgICBpZiAoaXggPCAweDAwODAwMDAwKQotCQkgICAgcmV0dXJuIDAuMTI1Kig4LjAqeCtlZng4KngpOyAgLyphdm9pZCB1bmRlcmZsb3cgKi8KKwkJICAgIHJldHVybiAoOCp4K2VmeDgqeCkvODsJLyogYXZvaWQgc3B1cmlvdXMgdW5kZXJmbG93ICovCiAJCXJldHVybiB4ICsgZWZ4Kng7CiAJICAgIH0KIAkgICAgeiA9IHgqeDsKQEAgLTIyMiwxNSArMjI5LDEyIEBACiAJeCA9IGZhYnMoeCk7CiAgCXMgPSBvbmUvKHgqeCk7CiAJaWYoaXg8IDB4NDAwNkRCNkUpIHsJLyogfHh8IDwgMS8wLjM1ICovCi0JICAgIFI9cmEwK3MqKHJhMStzKihyYTIrcyoocmEzK3MqKHJhNCtzKigKLQkJCQlyYTUrcyoocmE2K3MqcmE3KSkpKSkpOwotCSAgICBTPW9uZStzKihzYTErcyooc2EyK3MqKHNhMytzKihzYTQrcyooCi0JCQkJc2E1K3MqKHNhNitzKihzYTcrcypzYTgpKSkpKSkpOworCSAgICBSPXJhMCtzKihyYTErcyoocmEyK3MqKHJhMytzKihyYTQrcyoocmE1K3MqKHJhNitzKnJhNykpKSkpKTsKKwkgICAgUz1vbmUrcyooc2ExK3MqKHNhMitzKihzYTMrcyooc2E0K3MqKHNhNStzKihzYTYrcyooc2E3KworCQlzKnNhOCkpKSkpKSk7CiAJfSBlbHNlIHsJLyogfHh8ID49IDEvMC4zNSAqLwotCSAgICBSPXJiMCtzKihyYjErcyoocmIyK3MqKHJiMytzKihyYjQrcyooCi0JCQkJcmI1K3MqcmI2KSkpKSk7Ci0JICAgIFM9b25lK3MqKHNiMStzKihzYjIrcyooc2IzK3MqKHNiNCtzKigKLQkJCQlzYjUrcyooc2I2K3Mqc2I3KSkpKSkpOworCSAgICBSPXJiMCtzKihyYjErcyoocmIyK3MqKHJiMytzKihyYjQrcyoocmI1K3MqcmI2KSkpKSk7CisJICAgIFM9b25lK3MqKHNiMStzKihzYjIrcyooc2IzK3MqKHNiNCtzKihzYjUrcyooc2I2K3Mqc2I3KSkpKSkpOwogCX0KIAl6ICA9IHg7CiAJU0VUX0xPV19XT1JEKHosMCk7CkBAIC0yMzgsNiArMjQyLDEwIEBACiAJaWYoaHg+PTApIHJldHVybiBvbmUtci94OyBlbHNlIHJldHVybiAgci94LW9uZTsKIH0KIAorI2lmIChMREJMX01BTlRfRElHID09IDUzKQorX193ZWFrX3JlZmVyZW5jZShlcmYsIGVyZmwpOworI2VuZGlmCisKIGRvdWJsZQogZXJmYyhkb3VibGUgeCkKIHsKQEAgLTI3OSwyMyArMjg3LDIzIEBACiAJICAgIHggPSBmYWJzKHgpOwogIAkgICAgcyA9IG9uZS8oeCp4KTsKIAkgICAgaWYoaXg8IDB4NDAwNkRCNkQpIHsJLyogfHh8IDwgMS8uMzUgfiAyLjg1NzE0MyovCi0JICAgICAgICBSPXJhMCtzKihyYTErcyoocmEyK3MqKHJhMytzKihyYTQrcyooCi0JCQkJcmE1K3MqKHJhNitzKnJhNykpKSkpKTsKLQkgICAgICAgIFM9b25lK3MqKHNhMStzKihzYTIrcyooc2EzK3MqKHNhNCtzKigKLQkJCQlzYTUrcyooc2E2K3MqKHNhNytzKnNhOCkpKSkpKSk7CisJCVI9cmEwK3MqKHJhMStzKihyYTIrcyoocmEzK3MqKHJhNCtzKihyYTUrcyoocmE2K3MqcmE3KSkpKSkpOworCQlTPW9uZStzKihzYTErcyooc2EyK3MqKHNhMytzKihzYTQrcyooc2E1K3MqKHNhNitzKihzYTcrCisJCSAgICBzKnNhOCkpKSkpKSk7CiAJICAgIH0gZWxzZSB7CQkJLyogfHh8ID49IDEvLjM1IH4gMi44NTcxNDMgKi8KIAkJaWYoaHg8MCYmaXg+PTB4NDAxODAwMDApIHJldHVybiB0d28tdGlueTsvKiB4IDwgLTYgKi8KLQkgICAgICAgIFI9cmIwK3MqKHJiMStzKihyYjIrcyoocmIzK3MqKHJiNCtzKigKLQkJCQlyYjUrcypyYjYpKSkpKTsKLQkgICAgICAgIFM9b25lK3MqKHNiMStzKihzYjIrcyooc2IzK3MqKHNiNCtzKigKLQkJCQlzYjUrcyooc2I2K3Mqc2I3KSkpKSkpOworCQlSPXJiMCtzKihyYjErcyoocmIyK3MqKHJiMytzKihyYjQrcyoocmI1K3MqcmI2KSkpKSk7CisJCVM9b25lK3MqKHNiMStzKihzYjIrcyooc2IzK3MqKHNiNCtzKihzYjUrcyooc2I2K3Mqc2I3KSkpKSkpOwogCSAgICB9CiAJICAgIHogID0geDsKIAkgICAgU0VUX0xPV19XT1JEKHosMCk7Ci0JICAgIHIgID0gIF9faWVlZTc1NF9leHAoLXoqei0wLjU2MjUpKgotCQkJX19pZWVlNzU0X2V4cCgoei14KSooeit4KStSL1MpOworCSAgICByICA9ICBfX2llZWU3NTRfZXhwKC16KnotMC41NjI1KSpfX2llZWU3NTRfZXhwKCh6LXgpKih6K3gpK1IvUyk7CiAJICAgIGlmKGh4PjApIHJldHVybiByL3g7IGVsc2UgcmV0dXJuIHR3by1yL3g7CiAJfSBlbHNlIHsKIAkgICAgaWYoaHg+MCkgcmV0dXJuIHRpbnkqdGlueTsgZWxzZSByZXR1cm4gdHdvLXRpbnk7CiAJfQogfQorCisjaWYgKExEQkxfTUFOVF9ESUcgPT0gNTMpCitfX3dlYWtfcmVmZXJlbmNlKGVyZmMsIGVyZmNsKTsKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2VyZmYuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19lcmZmLmMKaW5kZXggYTM1NzlmMS4uZDZjZmJkMiAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX2VyZmYuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfZXJmZi5jCkBAIC0xOSw2NCArMTksNjMgQEAKICNpbmNsdWRlICJtYXRoLmgiCiAjaW5jbHVkZSAibWF0aF9wcml2YXRlLmgiCiAKKy8qIFhYWCBQcmV2ZW50IGNvbXBpbGVycyBmcm9tIGVycm9uZW91c2x5IGNvbnN0YW50IGZvbGRpbmc6ICovCitzdGF0aWMgY29uc3Qgdm9sYXRpbGUgZmxvYXQgdGlueSA9IDFlLTMwOworCiBzdGF0aWMgY29uc3QgZmxvYXQKLXRpbnkJICAgID0gMWUtMzAsCi1oYWxmPSAgNS4wMDAwMDAwMDAwZS0wMSwgLyogMHgzRjAwMDAwMCAqLwotb25lID0gIDEuMDAwMDAwMDAwMGUrMDAsIC8qIDB4M0Y4MDAwMDAgKi8KLXR3byA9ICAyLjAwMDAwMDAwMDBlKzAwLCAvKiAweDQwMDAwMDAwICovCitoYWxmPSAwLjUsCitvbmUgPSAxLAordHdvID0gMiwKK2VyeCA9IDguNDI2OTcxNDRlLTAxLAkJCS8qIDB4M2Y1N2JiMDAgKi8KIC8qCi0gKiBDb2VmZmljaWVudHMgZm9yIGFwcHJveGltYXRpb24gdG8gIGVyZiBvbiBbMCwwLjg0Mzc1XQorICogSW4gdGhlIGRvbWFpbiBbMCwgMioqLTE0XSwgb25seSB0aGUgZmlyc3QgdGVybSBpbiB0aGUgcG93ZXIgc2VyaWVzCisgKiBleHBhbnNpb24gb2YgZXJmKHgpIGlzIHVzZWQuICBUaGUgbWFnbml0dWRlIG9mIHRoZSBmaXJzdCBuZWdsZWN0ZWQKKyAqIHRlcm1zIGlzIGxlc3MgdGhhbiAyKiotNDIuCiAgKi8KLWVmeCA9ICAxLjI4Mzc5MTY2MTNlLTAxLCAvKiAweDNlMDM3NWQ0ICovCi1lZng4PSAgMS4wMjcwMzMzMjkwZSswMCwgLyogMHgzZjgzNzVkNCAqLworZWZ4ID0gMS4yODM3OTE2NmUtMDEsIC8qIDB4M2UwMzc1ZDQgKi8KK2VmeDg9IDEuMDI3MDMzMzNlKzAwLCAvKiAweDNmODM3NWQ0ICovCiAvKgotICogIERvbWFpbiBbMCwgMC44NDM3NV0sIHJhbmdlIH5bLTUuNDQ0NmUtMTAsNS41MTk3ZS0xMF06Ci0gKiAgfChlcmYoeCkgLSB4KS94IC0gcCh4KS9xKHgpfCA8IDIqKi0zMS4KKyAqIERvbWFpbiBbMCwgMC44NDM3NV0sIHJhbmdlIH5bLTUuNDQxOWUtMTAsIDUuNTE3OWUtMTBdOgorICogfChlcmYoeCkgLSB4KS94IC0gcHAoeCkvcXEoeCl8IDwgMioqLTMxCiAgKi8KLXBwMCAgPSAgMS4yODM3OTE2NmUtMDFGLCAvKiAgMHgxLjA2ZWJhOHAtMyAqLwotcHAxICA9IC0zLjM2MDMwMzk0ZS0wMUYsIC8qIC0weDEuNTgxODVhcC0yICovCi1wcDIgID0gLTEuODYyNjAyMTllLTAzRiwgLyogLTB4MS5lODQ1MWVwLTEwICovCi1xcTEgID0gIDMuMTIzMjQyODZlLTAxRiwgLyogIDB4MS4zZmQxZjBwLTIgKi8KLXFxMiAgPSAgMi4xNjA3MDMwMmUtMDJGLCAvKiAgMHgxLjYyMDI3NHAtNiAqLwotcXEzICA9IC0xLjk4ODU5NDE5ZS0wM0YsIC8qIC0weDEuMDRhNjI2cC05ICovCitwcDAgID0gIDEuMjgzNzkxNjZlLTAxLCAvKiAweDNlMDM3NWQ0ICovCitwcDEgID0gLTMuMzYwMzAzOTRlLTAxLCAvKiAweGJlYWMwYzJkICovCitwcDIgID0gLTEuODYyNjEzOTVlLTAzLCAvKiAweGJhZjQyMmY0ICovCitxcTEgID0gIDMuMTIzMjQzMTVlLTAxLCAvKiAweDNlOWZlOGY5ICovCitxcTIgID0gIDIuMTYwNzA0MTRlLTAyLCAvKiAweDNjYjEwMTQwICovCitxcTMgID0gLTEuOTg4NTkzNzJlLTAzLCAvKiAweGJiMDI1MzExICovCiAvKgotICogRG9tYWluIFswLjg0Mzc1LCAxLjI1XSwgcmFuZ2UgflstMS45NTNlLTExLDEuOTQwZS0xMV06Ci0gKiB8KGVyZih4KSAtIGVyeCkgLSBwKHgpL3EoeCl8IDwgMioqLTM2LgorICogRG9tYWluIFswLjg0Mzc1LCAxLjI1XSwgcmFuZ2UgflstMS4wMjNlLTksIDEuMDIzZS05XToKKyAqIHwoZXJmKHgpIC0gZXJ4KSAtIHBhKHgpL3FhKHgpfCA8IDIqKi0zMQogICovCi1lcnggID0gIDguNDI2OTcxNDRlLTAxRiwgLyogIDB4MS5hZjc2MDBwLTEuICBlcmYoMSkgcm91bmRlZCB0byAxNiBiaXRzLiAqLwotcGEwICA9ICAzLjY0OTM5MTM3ZS0wNkYsIC8qICAweDEuZTlkMDIycC0xOSAqLwotcGExICA9ICA0LjE1MTA5Njk0ZS0wMUYsIC8qICAweDEuYTkxMjg0cC0yICovCi1wYTIgID0gLTEuNjUxNzk5MzhlLTAxRiwgLyogLTB4MS41MjQ5ZGNwLTMgKi8KLXBhMyAgPSAgMS4xMDkxNDQ5MWUtMDFGLCAvKiAgMHgxLmM2NGU0NnAtNCAqLwotcWExICA9ICA2LjAyMDc0Mzg1ZS0wMUYsIC8qICAweDEuMzQ0MzE4cC0xICovCi1xYTIgID0gIDUuMzU5MzQ2ODdlLTAxRiwgLyogIDB4MS4xMjY2MDhwLTEgKi8KLXFhMyAgPSAgMS42ODU3NjEwNmUtMDFGLCAvKiAgMHgxLjU5M2U2ZXAtMyAqLwotcWE0ICA9ICA1LjYyMTgxMjEyZS0wMkYsIC8qICAweDEuY2M4OWYycC01ICovCitwYTAgID0gIDMuNjUwNDEwNDZlLTA2LCAvKiAweDM2NzRmOTkzICovCitwYTEgID0gIDQuMTUxMDkzMDdlLTAxLCAvKiAweDNlZDQ4OTM1ICovCitwYTIgID0gLTIuMDkzOTU3MjJlLTAxLCAvKiAweGJlNTY2YmQ1ICovCitwYTMgID0gIDguNjc2Nzc1NTRlLTAyLCAvKiAweDNkYjFiMzRiICovCitxYTEgID0gIDQuOTU1NjA5NzRlLTAxLCAvKiAweDNlZmRiYTJiICovCitxYTIgID0gIDMuNzEyNDg1MTNlLTAxLCAvKiAweDNlYmUxNDQ5ICovCitxYTMgID0gIDMuOTI0Nzg5NjVlLTAyLCAvKiAweDNkMjBjMjY3ICovCiAvKgotICogRG9tYWluIFsxLjI1LDEvMC4zNV0sIHJhbmdlIH5bLTcuMDQzZS0xMCw3LjQ1N2UtMTBdOgotICogfGxvZyh4KmVyZmMoeCkpICsgeCoqMiArIDAuNTYyNSAtIHIoeCkvcyh4KXwgPCAyKiotMzAKKyAqIERvbWFpbiBbMS4yNSwxLzAuMzVdLCByYW5nZSB+Wy00LjgyMWUtOSwgNC45MjdlLTldOgorICogfGxvZyh4KmVyZmMoeCkpICsgeCoqMiArIDAuNTYyNSAtIHJhKHgpL3NhKHgpfCA8IDIqKi0yOAogICovCi1yYTAgID0gLTkuODcxMzI3MzJlLTAzRiwgLyogLTB4MS40Mzc2YjJwLTcgKi8KLXJhMSAgPSAtNS41MzYwNTkxNGUtMDFGLCAvKiAtMHgxLjFiNzIzY3AtMSAqLwotcmEyICA9IC0yLjE3NTg5MTg4ZSswMEYsIC8qIC0weDEuMTY4M2EwcCsxICovCi1yYTMgID0gLTEuNDMyNjgwODVlKzAwRiwgLyogLTB4MS42ZWM0MmNwKzAgKi8KLXNhMSAgPSAgNS40NTk5NTQyNmUrMDBGLCAvKiAgMHgxLjVkNmZlNHArMiAqLwotc2EyICA9ICA2LjY5Nzk4MDg4ZSswMEYsIC8qICAweDEuYWNhYmI4cCsyICovCi1zYTMgID0gIDEuNDMxMTMwODllKzAwRiwgLyogIDB4MS42ZTVlOThwKzAgKi8KLXNhNCAgPSAtNS43NzM5NzQ5NmUtMDJGLCAvKiAtMHgxLmQ5MDEwOHAtNSAqLworcmEwICA9IC05Ljg4MTU2NzIxZS0wMywgLyogMHhiYzIxZTY0YyAqLworcmExICA9IC01LjQzNjU4Mzc2ZS0wMSwgLyogMHhiZjBiMmQzMiAqLworcmEyICA9IC0xLjY2ODI4MzEwZSswMCwgLyogMHhiZmQ1OGE0ZCAqLworcmEzICA9IC02LjkxNTU0MTg5ZS0wMSwgLyogMHhiZjMxMDliMiAqLworc2ExICA9ICA0LjQ4NTgxNTUzZSswMCwgLyogMHg0MDhmOGJjZCAqLworc2EyICA9ICA0LjEwNzk5MTcwZSswMCwgLyogMHg0MDgzNzRhYiAqLworc2EzICA9ICA1LjUzODU1MTgxZS0wMSwgLyogMHgzZjBkYzk3NCAqLwogLyoKLSAqIERvbWFpbiBbMS8wLjM1LCAxMV0sIHJhbmdlIH5bLTIuMjY0ZS0xMywyLjMzNmUtMTNdOgotICogfGxvZyh4KmVyZmMoeCkpICsgeCoqMiArIDAuNTYyNSAtIHIoeCkvcyh4KXwgPCAyKiotNDIKKyAqIERvbWFpbiBbMi44NTcxNSwgMTFdLCByYW5nZSB+Wy0xLjQ4NGUtOSwgMS41MDVlLTldOgorICogfGxvZyh4KmVyZmMoeCkpICsgeCoqMiArIDAuNTYyNSAtIHJiKHgpL3NiKHgpfCA8IDIqKi0zMAogICovCi1yYjAgID0gLTkuODY0OTQzMTBlLTAzRiwgLyogLTB4MS40MzQxMjRwLTcgKi8KLXJiMSAgPSAtNi4yNTE3MTI0NGUtMDFGLCAvKiAtMHgxLjQwMTY3MnAtMSAqLwotcmIyICA9IC02LjE2NDk4MzI3ZSswMEYsIC8qIC0weDEuOGE4ZjE2cCsyICovCi1yYjMgID0gLTEuNjY2OTY4NzNlKzAxRiwgLyogLTB4MS4wYWI3MGFwKzQgKi8KLXJiNCAgPSAtOS41Mzc2NDM0M2UrMDBGLCAvKiAtMHgxLjMxMzQ2MHArMyAqLwotc2IxICA9ICAxLjI2ODg0ODk5ZSswMUYsIC8qICAweDEuOTYwODFjcCszICovCi1zYjIgID0gIDQuNTE4Mzk1MjNlKzAxRiwgLyogIDB4MS42OTc4YmNwKzUgKi8KLXNiMyAgPSAgNC43MjgxMDIxMWUrMDFGLCAvKiAgMHgxLjdhM2Y4OHArNSAqLwotc2I0ICA9ICA4LjkzMDMzMzE0ZSswMEY7IC8qICAweDEuMWRjNTRhcCszICovCityYjAgID0gLTkuODY0OTY5MThlLTAzLCAvKiAweGJjMjFhMGFlICovCityYjEgID0gLTUuNDgwNDk4MDhlLTAxLCAvKiAweGJmMGM0Y2ZlICovCityYjIgID0gLTEuODQxMTU2ODRlKzAwLCAvKiAweGJmZWJhYjA3ICovCitzYjEgID0gIDQuODcxMzI3NDBlKzAwLCAvKiAweDQwOWJlMWVhICovCitzYjIgID0gIDMuMDQ5ODI3MTBlKzAwLCAvKiAweDQwNDMzMDVlICovCitzYjMgID0gLTcuNjE5MDA2NjNlLTAxOyAvKiAweGJmNDMwYmVjICovCiAKIGZsb2F0CiBlcmZmKGZsb2F0IHgpCkBAIC04NSw5ICs4NCw5IEBACiAJZmxvYXQgUixTLFAsUSxzLHkseixyOwogCUdFVF9GTE9BVF9XT1JEKGh4LHgpOwogCWl4ID0gaHgmMHg3ZmZmZmZmZjsKLQlpZihpeD49MHg3ZjgwMDAwMCkgewkJLyogZXJmKG5hbik9bmFuICovCisJaWYoaXg+PTB4N2Y4MDAwMDApIHsJCS8qIGVyZmYobmFuKT1uYW4gKi8KIAkgICAgaSA9ICgodV9pbnQzMl90KWh4Pj4zMSk8PDE7Ci0JICAgIHJldHVybiAoZmxvYXQpKDEtaSkrb25lL3g7CS8qIGVyZigrLWluZik9Ky0xICovCisJICAgIHJldHVybiAoZmxvYXQpKDEtaSkrb25lL3g7CS8qIGVyZmYoKy1pbmYpPSstMSAqLwogCX0KIAogCWlmKGl4IDwgMHgzZjU4MDAwMCkgewkJLyogfHh8PDAuODQzNzUgKi8KQEAgLTEwNSw3ICsxMDQsNyBAQAogCWlmKGl4IDwgMHgzZmEwMDAwMCkgewkJLyogMC44NDM3NSA8PSB8eHwgPCAxLjI1ICovCiAJICAgIHMgPSBmYWJzZih4KS1vbmU7CiAJICAgIFAgPSBwYTArcyoocGExK3MqKHBhMitzKnBhMykpOwotCSAgICBRID0gb25lK3MqKHFhMStzKihxYTIrcyoocWEzK3MqcWE0KSkpOworCSAgICBRID0gb25lK3MqKHFhMStzKihxYTIrcypxYTMpKTsKIAkgICAgaWYoaHg+PTApIHJldHVybiBlcnggKyBQL1E7IGVsc2UgcmV0dXJuIC1lcnggLSBQL1E7CiAJfQogCWlmIChpeCA+PSAweDQwODAwMDAwKSB7CQkvKiBpbmY+fHh8Pj00ICovCkBAIC0xMTMsMTIgKzExMiwxMiBAQAogCX0KIAl4ID0gZmFic2YoeCk7CiAgCXMgPSBvbmUvKHgqeCk7Ci0JaWYoaXg8IDB4NDAzNkRCNkUpIHsJLyogfHh8IDwgMS8wLjM1ICovCisJaWYoaXg8IDB4NDAzNmRiOGMpIHsJLyogfHh8IDwgMi44NTcxNSB+IDEvMC4zNSAqLwogCSAgICBSPXJhMCtzKihyYTErcyoocmEyK3MqcmEzKSk7Ci0JICAgIFM9b25lK3MqKHNhMStzKihzYTIrcyooc2EzK3Mqc2E0KSkpOwotCX0gZWxzZSB7CS8qIHx4fCA+PSAxLzAuMzUgKi8KLQkgICAgUj1yYjArcyoocmIxK3MqKHJiMitzKihyYjMrcypyYjQpKSk7Ci0JICAgIFM9b25lK3MqKHNiMStzKihzYjIrcyooc2IzK3Mqc2I0KSkpOworCSAgICBTPW9uZStzKihzYTErcyooc2EyK3Mqc2EzKSk7CisJfSBlbHNlIHsJLyogfHh8ID49IDIuODU3MTUgfiAxLzAuMzUgKi8KKwkgICAgUj1yYjArcyoocmIxK3MqcmIyKTsKKwkgICAgUz1vbmUrcyooc2IxK3MqKHNiMitzKnNiMykpOwogCX0KIAlTRVRfRkxPQVRfV09SRCh6LGh4JjB4ZmZmZmUwMDApOwogCXIgID0gZXhwZigteip6LTAuNTYyNUYpKmV4cGYoKHoteCkqKHoreCkrUi9TKTsKQEAgLTEzMiw4ICsxMzEsOCBAQAogCWZsb2F0IFIsUyxQLFEscyx5LHoscjsKIAlHRVRfRkxPQVRfV09SRChoeCx4KTsKIAlpeCA9IGh4JjB4N2ZmZmZmZmY7Ci0JaWYoaXg+PTB4N2Y4MDAwMDApIHsJCQkvKiBlcmZjKG5hbik9bmFuICovCi0JCQkJCQkvKiBlcmZjKCstaW5mKT0wLDIgKi8KKwlpZihpeD49MHg3ZjgwMDAwMCkgewkJCS8qIGVyZmNmKG5hbik9bmFuICovCisJCQkJCQkvKiBlcmZjZigrLWluZik9MCwyICovCiAJICAgIHJldHVybiAoZmxvYXQpKCgodV9pbnQzMl90KWh4Pj4zMSk8PDEpK29uZS94OwogCX0KIApAQCAtMTU1LDcgKzE1NCw3IEBACiAJaWYoaXggPCAweDNmYTAwMDAwKSB7CQkvKiAwLjg0Mzc1IDw9IHx4fCA8IDEuMjUgKi8KIAkgICAgcyA9IGZhYnNmKHgpLW9uZTsKIAkgICAgUCA9IHBhMCtzKihwYTErcyoocGEyK3MqcGEzKSk7Ci0JICAgIFEgPSBvbmUrcyoocWExK3MqKHFhMitzKihxYTMrcypxYTQpKSk7CisJICAgIFEgPSBvbmUrcyoocWExK3MqKHFhMitzKnFhMykpOwogCSAgICBpZihoeD49MCkgewogCSAgICAgICAgeiAgPSBvbmUtZXJ4OyByZXR1cm4geiAtIFAvUTsKIAkgICAgfSBlbHNlIHsKQEAgLTE2NSwxMyArMTY0LDEzIEBACiAJaWYgKGl4IDwgMHg0MTMwMDAwMCkgewkJLyogfHh8PDExICovCiAJICAgIHggPSBmYWJzZih4KTsKICAJICAgIHMgPSBvbmUvKHgqeCk7Ci0JICAgIGlmKGl4PCAweDQwMzZEQjZEKSB7CS8qIHx4fCA8IDEvLjM1IH4gMi44NTcxNDMqLwotCSAgICAgICAgUj1yYTArcyoocmExK3MqKHJhMitzKnJhMykpOwotCSAgICAgICAgUz1vbmUrcyooc2ExK3MqKHNhMitzKihzYTMrcypzYTQpKSk7Ci0JICAgIH0gZWxzZSB7CQkJLyogfHh8ID49IDEvLjM1IH4gMi44NTcxNDMgKi8KKwkgICAgaWYoaXg8IDB4NDAzNmRiOGMpIHsJLyogfHh8IDwgMi44NTcxNSB+IDEvLjM1ICovCisJCVI9cmEwK3MqKHJhMStzKihyYTIrcypyYTMpKTsKKwkJUz1vbmUrcyooc2ExK3MqKHNhMitzKnNhMykpOworCSAgICB9IGVsc2UgewkJCS8qIHx4fCA+PSAyLjg1NzE1IH4gMS8uMzUgKi8KIAkJaWYoaHg8MCYmaXg+PTB4NDBhMDAwMDApIHJldHVybiB0d28tdGlueTsvKiB4IDwgLTUgKi8KLQkgICAgICAgIFI9cmIwK3MqKHJiMStzKihyYjIrcyoocmIzK3MqcmI0KSkpOwotCQlTPW9uZStzKihzYjErcyooc2IyK3MqKHNiMytzKnNiNCkpKTsKKwkJUj1yYjArcyoocmIxK3MqcmIyKTsKKwkJUz1vbmUrcyooc2IxK3MqKHNiMitzKnNiMykpOwogCSAgICB9CiAJICAgIFNFVF9GTE9BVF9XT1JEKHosaHgmMHhmZmZmZTAwMCk7CiAJICAgIHIgID0gZXhwZigteip6LTAuNTYyNUYpKmV4cGYoKHoteCkqKHoreCkrUi9TKTsKZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yZW1xdW9sLmMgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmVtcXVvbC5jCmluZGV4IDg4OTkyOTMuLjcxMjY1MWMgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yZW1xdW9sLmMKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JlbXF1b2wuYwpAQCAtNSw3ICs1LDcgQEAKICAqCiAgKiBEZXZlbG9wZWQgYXQgU3VuU29mdCwgYSBTdW4gTWljcm9zeXN0ZW1zLCBJbmMuIGJ1c2luZXNzLgogICogUGVybWlzc2lvbiB0byB1c2UsIGNvcHksIG1vZGlmeSwgYW5kIGRpc3RyaWJ1dGUgdGhpcwotICogc29mdHdhcmUgaXMgZnJlZWx5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhpcyBub3RpY2UKKyAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlIAogICogaXMgcHJlc2VydmVkLgogICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICovCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfcmludGwuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yaW50bC5jCmluZGV4IGU1NWI0MGUuLmI0M2RmODkgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yaW50bC5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yaW50bC5jCkBAIC0yOSw3ICsyOSw2IEBACiAKICNpbmNsdWRlIDxmbG9hdC5oPgogI2luY2x1ZGUgPG1hdGguaD4KLSNpbmNsdWRlIDxzdGRpbnQuaD4KIAogI2luY2x1ZGUgImZwbWF0aC5oIgogCmRpZmYgLS1naXQgYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfcm91bmQuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yb3VuZC5jCmluZGV4IDY1ZGUzMWIuLmZhYjMwMTkgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yb3VuZC5jCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yb3VuZC5jCkBAIC0yNywyNSArMjcsMzQgQEAKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KIF9fRkJTRElEKCIkRnJlZUJTRCQiKTsKIAotI2luY2x1ZGUgPG1hdGguaD4KKyNpbmNsdWRlIDxmbG9hdC5oPgorCisjaW5jbHVkZSAibWF0aC5oIgorI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgogCiBkb3VibGUKIHJvdW5kKGRvdWJsZSB4KQogewogCWRvdWJsZSB0OworCXVpbnQzMl90IGh4OwogCi0JaWYgKCFpc2Zpbml0ZSh4KSkKLQkJcmV0dXJuICh4KTsKKwlHRVRfSElHSF9XT1JEKGh4LCB4KTsKKwlpZiAoKGh4ICYgMHg3ZmZmZmZmZikgPT0gMHg3ZmYwMDAwMCkKKwkJcmV0dXJuICh4ICsgeCk7CiAKLQlpZiAoeCA+PSAwLjApIHsKKwlpZiAoIShoeCAmIDB4ODAwMDAwMDApKSB7CiAJCXQgPSBmbG9vcih4KTsKIAkJaWYgKHQgLSB4IDw9IC0wLjUpCi0JCQl0ICs9IDEuMDsKKwkJCXQgKz0gMTsKIAkJcmV0dXJuICh0KTsKIAl9IGVsc2UgewogCQl0ID0gZmxvb3IoLXgpOwogCQlpZiAodCArIHggPD0gLTAuNSkKLQkJCXQgKz0gMS4wOworCQkJdCArPSAxOwogCQlyZXR1cm4gKC10KTsKIAl9CiB9CisKKyNpZiAoTERCTF9NQU5UX0RJRyA9PSA1MykKK19fd2Vha19yZWZlcmVuY2Uocm91bmQsIHJvdW5kbCk7CisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yb3VuZGYuYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yb3VuZGYuYwppbmRleCA5NTJlOGU3Li5lN2UyZWI5IDEwMDY0NAotLS0gYS9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfcm91bmRmLmMKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JvdW5kZi5jCkBAIC0yNywyNSArMjcsMjggQEAKICNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KIF9fRkJTRElEKCIkRnJlZUJTRCQiKTsKIAotI2luY2x1ZGUgPG1hdGguaD4KKyNpbmNsdWRlICJtYXRoLmgiCisjaW5jbHVkZSAibWF0aF9wcml2YXRlLmgiCiAKIGZsb2F0CiByb3VuZGYoZmxvYXQgeCkKIHsKIAlmbG9hdCB0OworCXVpbnQzMl90IGh4OwogCi0JaWYgKCFpc2Zpbml0ZSh4KSkKLQkJcmV0dXJuICh4KTsKKwlHRVRfRkxPQVRfV09SRChoeCwgeCk7CisJaWYgKChoeCAmIDB4N2ZmZmZmZmYpID09IDB4N2Y4MDAwMDApCisJCXJldHVybiAoeCArIHgpOwogCi0JaWYgKHggPj0gMC4wKSB7CisJaWYgKCEoaHggJiAweDgwMDAwMDAwKSkgewogCQl0ID0gZmxvb3JmKHgpOwotCQlpZiAodCAtIHggPD0gLTAuNSkKLQkJCXQgKz0gMS4wOworCQlpZiAodCAtIHggPD0gLTAuNUYpCisJCQl0ICs9IDE7CiAJCXJldHVybiAodCk7CiAJfSBlbHNlIHsKIAkJdCA9IGZsb29yZigteCk7Ci0JCWlmICh0ICsgeCA8PSAtMC41KQotCQkJdCArPSAxLjA7CisJCWlmICh0ICsgeCA8PSAtMC41RikKKwkJCXQgKz0gMTsKIAkJcmV0dXJuICgtdCk7CiAJfQogfQpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JvdW5kbC5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3JvdW5kbC5jCmluZGV4IGE3MGI2MTcuLjJkMTVlMTMgMTAwNjQ0Ci0tLSBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc19yb3VuZGwuYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3Nfcm91bmRsLmMKQEAgLTI3LDI1ICsyNywzNiBAQAogI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgogX19GQlNESUQoIiRGcmVlQlNEJCIpOwogCi0jaW5jbHVkZSA8bWF0aC5oPgorI2luY2x1ZGUgPGZsb2F0Lmg+CisjaWZkZWYgX19pMzg2X18KKyNpbmNsdWRlIDxpZWVlZnAuaD4KKyNlbmRpZgorCisjaW5jbHVkZSAiZnBtYXRoLmgiCisjaW5jbHVkZSAibWF0aC5oIgorI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgogCiBsb25nIGRvdWJsZQogcm91bmRsKGxvbmcgZG91YmxlIHgpCiB7CiAJbG9uZyBkb3VibGUgdDsKKwl1aW50MTZfdCBoeDsKIAotCWlmICghaXNmaW5pdGUoeCkpCi0JCXJldHVybiAoeCk7CisJR0VUX0xEQkxfRVhQU0lHTihoeCwgeCk7CisJaWYgKChoeCAmIDB4N2ZmZikgPT0gMHg3ZmZmKQorCQlyZXR1cm4gKHggKyB4KTsKIAotCWlmICh4ID49IDAuMCkgeworCUVOVEVSSSgpOworCisJaWYgKCEoaHggJiAweDgwMDApKSB7CiAJCXQgPSBmbG9vcmwoeCk7Ci0JCWlmICh0IC0geCA8PSAtMC41KQotCQkJdCArPSAxLjA7Ci0JCXJldHVybiAodCk7CisJCWlmICh0IC0geCA8PSAtMC41TCkKKwkJCXQgKz0gMTsKKwkJUkVUVVJOSSh0KTsKIAl9IGVsc2UgewogCQl0ID0gZmxvb3JsKC14KTsKLQkJaWYgKHQgKyB4IDw9IC0wLjUpCi0JCQl0ICs9IDEuMDsKLQkJcmV0dXJuICgtdCk7CisJCWlmICh0ICsgeCA8PSAtMC41TCkKKwkJCXQgKz0gMTsKKwkJUkVUVVJOSSgtdCk7CiAJfQogfQpkaWZmIC0tZ2l0IGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RhbmguYyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5oLmMKaW5kZXggOTZlMzU2NS4uNmQyNmM2OSAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RhbmguYworKysgYi9saWJtL3Vwc3RyZWFtLWZyZWVic2QvbGliL21zdW4vc3JjL3NfdGFuaC5jCkBAIC0zNywxMCArMzcsMTMgQEAKICAqCW9ubHkgdGFuaCgwKT0wIGlzIGV4YWN0IGZvciBmaW5pdGUgYXJndW1lbnQuCiAgKi8KIAorI2luY2x1ZGUgPGZsb2F0Lmg+CisKICNpbmNsdWRlICJtYXRoLmgiCiAjaW5jbHVkZSAibWF0aF9wcml2YXRlLmgiCiAKLXN0YXRpYyBjb25zdCBkb3VibGUgb25lID0gMS4wLCB0d28gPSAyLjAsIHRpbnkgPSAxLjBlLTMwMCwgaHVnZSA9IDEuMGUzMDA7CitzdGF0aWMgY29uc3Qgdm9sYXRpbGUgZG91YmxlIHRpbnkgPSAxLjBlLTMwMDsKK3N0YXRpYyBjb25zdCBkb3VibGUgb25lID0gMS4wLCB0d28gPSAyLjAsIGh1Z2UgPSAxLjBlMzAwOwogCiBkb3VibGUKIHRhbmgoZG91YmxlIHgpCkBAIC03NSwzICs3OCw3IEBACiAJfQogCXJldHVybiAoang+PTApPyB6OiAtejsKIH0KKworI2lmIChMREJMX01BTlRfRElHID09IDUzKQorX193ZWFrX3JlZmVyZW5jZSh0YW5oLCB0YW5obCk7CisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5oZi5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RhbmhmLmMKaW5kZXggMDRmMDljNi4uZjUzN2JlNCAxMDA2NDQKLS0tIGEvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RhbmhmLmMKKysrIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RhbmhmLmMKQEAgLTE5LDcgKzE5LDkgQEAKICNpbmNsdWRlICJtYXRoLmgiCiAjaW5jbHVkZSAibWF0aF9wcml2YXRlLmgiCiAKLXN0YXRpYyBjb25zdCBmbG9hdCBvbmU9MS4wLCB0d289Mi4wLCB0aW55ID0gMS4wZS0zMCwgaHVnZSA9IDEuMGUzMDsKK3N0YXRpYyBjb25zdCB2b2xhdGlsZSBmbG9hdCB0aW55ID0gMS4wZS0zMDsKK3N0YXRpYyBjb25zdCBmbG9hdCBvbmU9MS4wLCB0d289Mi4wLCBodWdlID0gMS4wZTMwOworCiBmbG9hdAogdGFuaGYoZmxvYXQgeCkKIHsKZGlmZiAtLWdpdCBhL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5obC5jIGIvbGlibS91cHN0cmVhbS1mcmVlYnNkL2xpYi9tc3VuL3NyYy9zX3RhbmhsLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODg2MTU4YgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0vdXBzdHJlYW0tZnJlZWJzZC9saWIvbXN1bi9zcmMvc190YW5obC5jCkBAIC0wLDAgKzEsMTcyIEBACisvKiBmcm9tOiBGcmVlQlNEOiBoZWFkL2xpYi9tc3VuL3NyYy9zX3RhbmhsLmMgWFhYICovCisKKy8qIEAoIylzX3RhbmguYyA1LjEgOTMvMDkvMjQgKi8KKy8qCisgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKiBDb3B5cmlnaHQgKEMpIDE5OTMgYnkgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIERldmVsb3BlZCBhdCBTdW5Qcm8sIGEgU3VuIE1pY3Jvc3lzdGVtcywgSW5jLiBidXNpbmVzcy4KKyAqIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMKKyAqIHNvZnR3YXJlIGlzIGZyZWVseSBncmFudGVkLCBwcm92aWRlZCB0aGF0IHRoaXMgbm90aWNlCisgKiBpcyBwcmVzZXJ2ZWQuCisgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKi8KKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorX19GQlNESUQoIiRGcmVlQlNEJCIpOworCisvKgorICogU2VlIHNfdGFuaC5jIGZvciBjb21wbGV0ZSBjb21tZW50cy4KKyAqCisgKiBDb252ZXJ0ZWQgdG8gbG9uZyBkb3VibGUgYnkgQnJ1Y2UgRC4gRXZhbnMuCisgKi8KKworI2luY2x1ZGUgPGZsb2F0Lmg+CisjaWZkZWYgX19pMzg2X18KKyNpbmNsdWRlIDxpZWVlZnAuaD4KKyNlbmRpZgorCisjaW5jbHVkZSAibWF0aC5oIgorI2luY2x1ZGUgIm1hdGhfcHJpdmF0ZS5oIgorI2luY2x1ZGUgImZwbWF0aC5oIgorI2luY2x1ZGUgImtfZXhwbC5oIgorCisjaWYgTERCTF9NQVhfRVhQICE9IDB4NDAwMAorLyogV2UgYWxzbyByZXF1aXJlIHRoZSB1c3VhbCBleHBzaWduIGVuY29kaW5nLiAqLworI2Vycm9yICJVbnN1cHBvcnRlZCBsb25nIGRvdWJsZSBmb3JtYXQiCisjZW5kaWYKKworI2RlZmluZQlCSUFTCShMREJMX01BWF9FWFAgLSAxKQorCitzdGF0aWMgY29uc3Qgdm9sYXRpbGUgZG91YmxlIHRpbnkgPSAxLjBlLTMwMDsKK3N0YXRpYyBjb25zdCBkb3VibGUgb25lID0gMS4wOworI2lmIExEQkxfTUFOVF9ESUcgPT0gNjQKKy8qCisgKiBEb21haW4gWy0wLjI1LCAwLjI1XSwgcmFuZ2UgflstMS42MzA0ZS0yMiwgMS42MzA0ZS0yMl06CisgKiB8dGFuaCh4KS94IC0gdCh4KXwgPCAyKiotNzIuMworICovCitzdGF0aWMgY29uc3QgdW5pb24gSUVFRWwyYml0cworVDN1ID0gTEQ4MEMoMHhhYWFhYWFhYWFhYWFhYTlmLCAtMiwgLTMuMzMzMzMzMzMzMzMzMzMzMzMwMTdlLTFMKTsKKyNkZWZpbmUJVDMJVDN1LmUKK3N0YXRpYyBjb25zdCBkb3VibGUKK1Q1ICA9ICAxLjMzMzMzMzMzMzMzMzMzMTRlLTEsCQkvKiAgMHgxMTExMTExMTExMTEwYS4wcC01NSAqLworVDcgID0gLTUuMzk2ODI1Mzk2ODIxMDQ4NWUtMiwJCS8qIC0weDFiYTFiYTFiYTFhMWExLjBwLTU3ICovCitUOSAgPSAgMi4xODY5NDg4NTMxMzkzODE3ZS0yLAkJLyogIDB4MTY2NGY0ODgxNzIwMjIuMHAtNTggKi8KK1QxMSA9IC04Ljg2MzIzNTIzNDU5NjQ1OTFlLTMsCQkvKiAtMHgxMjI2ZTM0YmMxMzhkNS4wcC01OSAqLworVDEzID0gIDMuNTkyMTE2OTcwOTk5Mzc3MWUtMywJCS8qICAweDFkNmQzNzFkM2U0MDBmLjBwLTYxICovCitUMTUgPSAtMS40NTU1Nzg2NDE1NzU2MDAxZS0zLAkJLyogLTB4MTdkOTIzYWE2MzgxNGQuMHAtNjIgKi8KK1QxNyA9ICA1Ljg2NDUyNjc4NzYyOTY3OTNlLTQsCQkvKiAgMHgxMzM3ODU4OWI4NWFhNy4wcC02MyAqLworVDE5ID0gLTIuMTEyMTAzMzU3MTM5MjIyNGUtNDsJCS8qIC0weDFiYWYwYWY4MGM0MDkwLjBwLTY1ICovCisjZWxpZiBMREJMX01BTlRfRElHID09IDExMworLyoKKyAqIERvbWFpbiBbLTAuMjUsIDAuMjVdLCByYW5nZSB+Wy0yLjQyMTFlLTM3LCAyLjQyMTFlLTM3XToKKyAqIHx0YW5oKHgpL3ggLSB0KHgpfCA8IDIqKjEyMS42CisgKi8KK3N0YXRpYyBjb25zdCBsb25nIGRvdWJsZQorVDMgPSAtMy4zMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMjk4MGUtMUwsCS8qIC0weDE1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTRlLjBwLTExNEwgKi8KK1Q1ICA9ICAxLjMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMyNzA3MjYwZS0xTCwJLyogIDB4MTExMTExMTExMTExMTExMTExMTExMTExMGFiN2IuMHAtMTE1TCAqLworVDcgID0gLTUuMzk2ODI1Mzk2ODI1Mzk2ODI1Mzk2ODI1MzU3MjM0ODIzMTRlLTJMLAkvKiAtMHgxYmExYmExYmExYmExYmExYmExYmExN2I1ZmM5OC4wcC0xMTdMICovCitUOSAgPSAgMi4xODY5NDg4NTM2MTU1MjAyODIxODY5MzU5MTE0OTA2MTcxN2UtMkwsCS8qICAweDE2NjRmNDg4MmMxMGY5ZjMyZDZiMWExMmEyNWU1LjBwLTExOEwgKi8KK1QxMSA9IC04Ljg2MzIzNTUyOTkwMjE5NjU2ODgzNzYyMzQ3NzM2MzgxODUxZS0zTCwJLyogLTB4MTIyNmUzNTVlNmMyM2M4ZjVhNWEwZjM4NmNiNGQuMHAtMTE5TCAqLworVDEzID0gIDMuNTkyMTI4MDM2NTcyNDgxMDEzNTgzMTQzOTgyMjA4MjI3MjJlLTNMLAkvKiAgMHgxZDZkM2QwZTE1N2RkZmI0MDNhZDM2Mzc0NDJjNi4wcC0xMjFMICovCitUMTUgPSAtMS40NTU4MzQzODcwNTEzMTc5NjUxMjU2ODAxMDM0ODg3NDY2MmUtM0w7CS8qIC0weDE3ZGEzNjQ1MmI3NWUxNTBjNDRjYzM0MjUzYjM0LjBwLTEyMkwgKi8KK3N0YXRpYyBjb25zdCBkb3VibGUKK1QxNyA9ICA1LjkwMDI3NDQwOTQ1NTY2MjFlLTQsCQkvKiAgMHgxMzU1ODI0ODAzNjY4ZS4wcC02MyAqLworVDE5ID0gLTIuMzkxMjkxMTQyNDI2MDUxNmUtNCwJCS8qIC0weDFmNTdkNzczNGM4ZGRlLjBwLTY1ICovCitUMjEgPSAgOS42OTE1Mzc5NTM1NTEyODk4ZS01LAkJLyogIDB4MTk2N2UxOGFkNmE2Y2EuMHAtNjYgKi8KK1QyMyA9IC0zLjkyNzgzMjI5ODMxNTYzNTNlLTUsCQkvKiAtMHgxNDk3ZDhlNmI3NTcyOS4wcC02NyAqLworVDI1ID0gIDEuNTkxODg4NzIyMDE0Mzg2OWUtNSwJCS8qICAweDEwYjEzMTk5OThjYWZhLjBwLTY4ICovCitUMjcgPSAtNi40NTE0Mjk1MjMxNjMwOTU2ZS02LAkJLyogLTB4MWIwZjJiNzFiMjE4ZWIuMHAtNzAgKi8KK1QyOSA9ICAyLjYxMjA3NTQwNDM5NjQzNjVlLTYsCQkvKiAgMHgxNWU5NjNhM2NmM2EzOS4wcC03MSAqLworVDMxID0gLTEuMDQwNzU2NzIzMTAwMzMxNGUtNiwJCS8qIC0weDExNzYwNDFlNjU2ODY5LjBwLTcyICovCitUMzMgPSAgMy40NzQ0MTE3NTU0MDYzNTc0ZS03OwkJLyogIDB4MTc1MGZlNzMyY2FiOWMuMHAtNzQgKi8KKyNlbmRpZiAvKiBMREJMX01BTlRfRElHID09IDY0ICovCisKK3N0YXRpYyBpbmxpbmUgbG9uZyBkb3VibGUKK2RpdmwobG9uZyBkb3VibGUgYSwgbG9uZyBkb3VibGUgYiwgbG9uZyBkb3VibGUgYywgbG9uZyBkb3VibGUgZCwKKyAgICBsb25nIGRvdWJsZSBlLCBsb25nIGRvdWJsZSBmKQoreworCWxvbmcgZG91YmxlIGludiwgcjsKKwlmbG9hdCBmciwgZnc7CisKKwlfMnN1bUYoYSwgYyk7CisJYiA9IGIgKyBjOworCV8yc3VtRihkLCBmKTsKKwllID0gZSArIGY7CisKKwlpbnYgPSAxIC8gKGQgKyBlKTsKKworCXIgPSAoYSArIGIpICogaW52OworCWZyID0gcjsKKwlyID0gZnI7CisKKwlmdyA9IGQgKyBlOworCWUgPSBkIC0gZncgKyBlOworCWQgPSBmdzsKKworCXIgPSByICsgKGEgLSBkICogciArIGIgLSBlICogcikgKiBpbnY7CisKKwlyZXR1cm4gcjsKK30KKworbG9uZyBkb3VibGUKK3RhbmhsKGxvbmcgZG91YmxlIHgpCit7CisJbG9uZyBkb3VibGUgaGksbG8scyx4Mix4NCx6OworCWRvdWJsZSBkeDI7CisJaW50MTZfdCBqeCxpeDsKKworCUdFVF9MREJMX0VYUFNJR04oangseCk7CisJaXggPSBqeCYweDdmZmY7CisKKyAgICAvKiB4IGlzIElORiBvciBOYU4gKi8KKwlpZihpeD49MHg3ZmZmKSB7CisJICAgIGlmIChqeD49MCkgcmV0dXJuIG9uZS94K29uZTsgICAgLyogdGFuaCgrLWluZik9Ky0xICovCisJICAgIGVsc2UgICAgICAgcmV0dXJuIG9uZS94LW9uZTsgICAgLyogdGFuaChOYU4pID0gTmFOICovCisJfQorCisJRU5URVJJKCk7CisKKyAgICAvKiB8eHwgPCA0MCAqLworCWlmIChpeCA8IDB4NDAwNCB8fCBmYWJzbCh4KSA8IDQwKSB7CS8qIHx4fDw0MCAqLworCSAgICBpZiAoX19wcmVkaWN0X2ZhbHNlKGl4PEJJQVMtKExEQkxfTUFOVF9ESUcrMSkvMikpIHsJLyogfHh8PFRJTlkgKi8KKwkJLyogdGFuaCgrLTApID0gKzA7IHRhbmgodGlueSkgPSB0aW55KC0rKSB3aXRoIGluZXhhY3Q6ICovCisJCXJldHVybiAoeCA9PSAwID8geCA6ICgweDFwMjAwICogeCAtIHgpICogMHgxcC0yMDApOworCSAgICB9CisJICAgIGlmIChpeDwweDNmZmQpIHsJCS8qIHx4fDwwLjI1ICovCisJCXgyID0geCp4OworI2lmIExEQkxfTUFOVF9ESUcgPT0gNjQKKwkJeDQgPSB4Mip4MjsKKwkJUkVUVVJOSSgoKFQxOSp4MiArIFQxNykqeDQgKyAoVDE1KngyICsgVDEzKSkqKHgyKngqeDIqeDQqeDQpICsKKwkJICAgICgoVDExKngyICsgVDkpKng0ICsgKFQ3KngyICsgVDUpKSooeDIqeCp4MikgKworCQkgICAgVDMqKHgyKngpICsgeCk7CisjZWxpZiBMREJMX01BTlRfRElHID09IDExMworCQlkeDIgPSB4MjsKKyNpZiAwCisJCVJFVFVSTkkoKCgoKCgoKCgoKCgoKChUMzMqZHgyICsgVDMxKSpkeDIgKyBUMjkpKmR4MiArIFQyNykqZHgyICsKKwkJICAgIFQyNSkqeDIgKyBUMjMpKngyICsgVDIxKSp4MiArIFQxOSkqeDIgKyBUMTcpKngyICsKKwkJICAgIFQxNSkqeDIgKyBUMTMpKngyICsgVDExKSp4MiArIFQ5KSp4MiArIFQ3KSp4MiArIFQ1KSoKKwkJICAgICh4Mip4KngyKSArCisJCSAgICBUMyooeDIqeCkgKyB4KTsKKyNlbHNlCisJCWxvbmcgZG91YmxlIHEgPSAoKCgoKCgoKCgoKCgoKFQzMypkeDIgKyBUMzEpKmR4MiArIFQyOSkqZHgyICsgVDI3KSpkeDIgKworCQkgICAgVDI1KSp4MiArIFQyMykqeDIgKyBUMjEpKngyICsgVDE5KSp4MiArIFQxNykqeDIgKworCQkgICAgVDE1KSp4MiArIFQxMykqeDIgKyBUMTEpKngyICsgVDkpKngyICsgVDcpKngyICsgVDUpKgorCQkgICAgKHgyKngqeDIpOworCQlSRVRVUk5JKHEgKyBUMyooeDIqeCkgKyB4KTsKKyNlbmRpZgorI2VuZGlmCisJICAgIH0KKwkgICAga19oZXhwbCgyKmZhYnNsKHgpLCAmaGksICZsbyk7CisJICAgIGlmIChpeDwweDQwMDEgJiYgZmFic2woeCkgPCAxLjUpCS8qIHx4fDwxLjUgKi8KKwkJeiA9IGRpdmwoaGksIGxvLCAtMC41LCBoaSwgbG8sIDAuNSk7CisJICAgIGVsc2UKKwkJeiA9IG9uZSAtIG9uZS8obG8rMC41K2hpKTsKKyAgICAvKiB8eHwgPj0gNDAsIHJldHVybiArLTEgKi8KKwl9IGVsc2UgeworCSAgICB6ID0gb25lIC0gdGlueTsJCS8qIHJhaXNlIGluZXhhY3QgZmxhZyAqLworCX0KKwlzID0gMTsKKwlpZiAoang8MCkgcyA9IC0xOworCVJFVFVSTkkocyp6KTsKK30KZGlmZiAtLWdpdCBhL2xpYm0veDg2L2NlaWwuUyBiL2xpYm0veDg2L2NlaWwuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MzAyMDM3Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvY2VpbC5TCkBAIC0wLDAgKzEsNDMgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoY2VpbCkKKwltb3YgICAgJWVzcCwlZWF4CisJYW5kICAgICQweGZmZmZmZmY4LCVlYXgKKwltb3ZzZCAgMHg0KCVlc3ApLCV4bW0wCisJcm91bmRzZCAkMHgyLCV4bW0wLCV4bW0wCisJbW92bHBkICV4bW0wLC0weDgoJWVheCkKKwlmbGRsICAgLTB4OCglZWF4KQorCXJldAorRU5EKGNlaWwpCisKK0FMSUFTX1NZTUJPTChjZWlsbCwgY2VpbCk7CmRpZmYgLS1naXQgYS9saWJtL3g4Ni9jZWlsZi5TIGIvbGlibS94ODYvY2VpbGYuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MWViNDQwCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvY2VpbGYuUwpAQCAtMCwwICsxLDM5IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKGNlaWxmKQorCW1vdnNzICAweDQoJWVzcCksJXhtbTAKKwlyb3VuZHNzICQweDIsJXhtbTAsJXhtbTAKKwltb3ZzcyAgJXhtbTAsLTB4NCglZXNwKQorCWZsZHMgICAtMHg0KCVlc3ApCisJcmV0CitFTkQoY2VpbGYpCmRpZmYgLS1naXQgYS9saWJtL3g4Ni9lX2Fjb3MuUyBiL2xpYm0veDg2L2VfYWNvcy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZhNjE4NTMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9lX2Fjb3MuUwpAQCAtMCwwICsxLDE5MjkgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgVG8gY29tcHV0ZSBhY29zKHMpLCBzZXBhcmF0ZSBzY2hlbWVzIGFyZSB1c2VkIHdoZW4gcyBpcyBpbiBkaWZmZXJlbnQKKy8vICBpbnRlcnZhbHMuCisvLworLy8gIHxzfCBpbiBbMl57LTR9LCBzcXJ0KDMpLzIpOgorLy8gICAgICAgTGV0IHQ9Ml5rKjEuYjEgYjIuLmI2IDEsIHdoZXJlIHM9Ml5rKjEuYjEgYjIgLi4gYjUyCisvLyAgICAgICBhY29zKHMpPXBpLzItYXNpbih0KS1hc2luKHIpLCB3aGVyZSByPXMqc3FydCgxLXReMiktdCpzcXJ0KDEtc14yKQorLy8gICAgICAgYXNpbihyKS1yIGV2YWx1YXRlZCBhcyA3LWRlZ3JlZSBwb2x5bm9taWFsIChjMypyXjMrYzUqcl41K2M3KnJeNykKKy8vICAgICAgIEZvciB0aGUgZmlyc3QgZGVncmVlIHRlcm0sIHIgaXMgZXZhbHVhdGVkIGFzCisvLyAgICAgICAgICAgICAgICBSPShzXjItdF4yKS8oc3FydCgxLXReMikqcytzcXJ0KDEtc14yKSp0KQorLy8gICAgICAgKHNxcnQoMS10XjIpIHJlYWQgZnJvbSB0YWJsZSkKKy8vICBUaGUgbWFpbiBzb3VyY2Ugb2YgZXJyb3IgaXMgc3RpbGwgUiAobWF5IHN0aWxsIGJlIGFmZmVjdGVkIGJ5IHVwIHRvIDMgdWxwcworLy8gIG9mIHJvdW5kaW5nIGVycm9yKS4gVGhlIHRhYmxlIHNpemUgbXVzdCBiZSBzdWZmaWNpZW50bHkgbGFyZ2UsIHRvIG1pbmltaXplCisvLyAgdGhpcyBlZmZlY3QuCisvLworLy8gIHxzfCBpbiBbc3FydCgzKS8yLCAyNTUvMjU2KToKKy8vICAgICAgIExldCB0PTJeayoxLmIxIGIyLi5iNiAxLCB3aGVyZSBzcXJ0KDEtc14yKT0yXmsqMS5iMSBiMiAuLiBiNTIgKHJvdW5kZWQpCisvLyAgICAgICBhY29zKHxzfCk9YXNpbih0KS1hc2luKHIpLCByPXMqdC1zcXJ0KDEtc14yKSpzcXJ0KDEtdF4yKQorLy8gICBhY29zKC18c3wpPXBpLWFjb3MofHN8KQorLy8gICAgICAgKFRoZSAtUEkgY29uc3RhbnQsIG9yIDAsIGlzIGFkZGVkIHRvIHRoZSByZXN1bHQuIFRoZSBzaWduIGlzIHNldCBhdAorLy8gICAgICAgIHRoZSBlbmQpCisvLyAgICAgICBhc2luKHIpIGV2YWx1YXRlZCBhcyBhIHBvbHlub21pYWwgKHNhbWUgYXMgYWJvdmUpCisvLyAgICAgICBUaGUgZmlyc3QgZGVncmVlIHRlcm0gaXMgZXZhbHVhdGVkIGFzCisvLyAgICAgICAgICAgICAgICAgICAgICAgIHI9KHNeMit0XjItMSkvKHMqdCtzcXJ0KDEtc14yKSpzcXJ0KDEtdF4yKSkKKy8vCisvLyAgfHN8PDJeey00fTogYWNvcyhzKT1waS8yLWFzaW4ocykKKy8vICAgICAgICAgICAgICBldmFsdWF0ZSBhc2luKHMpIGFzIDEzLWRlZ3JlZSBwb2x5bm9taWFsCisvLworLy8gIHxzfCBpbiBbMjU1LzI1NiwxKTogYWNvcyh8c3wpPTIqYXNpbihxKSwgd2hlcmUgcT1zcXJ0KCgxLXxzfCkvMikKKy8vICBhc2luKHEpIGlzIGV2YWx1YXRlZCBhcyAxMy1kZWdyZWUgcG9seW5vbWlhbAorLy8gICAgICBxXjI9KDEtfHN8KS8yIGlzIG9idGFpbmVkIGluIGFkdmFuY2UKKy8vICAgICAgICAgMipxKmVwcyB+ICgoMS18c3wpLzItcV4yKS9xIHVzZWQgZm9yIGZpcnN0IHRlcm0KKy8vICAgYWNvcygtfHN8KT1waS1hY29zKHxzfCkKKy8vICAgICAgIChUaGUgLVBJIGNvbnN0YW50LCBvciAwLCBpcyBhZGRlZCB0byB0aGUgcmVzdWx0LiBUaGUgc2lnbiBpcyBzZXQgYXQKKy8vICAgICAgICB0aGUgZW5kKQorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgYWNvcyhOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBhY29zKElORikgPSBRTmFOIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIGFjb3MoeCkgPSBRTmFOIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbiwgZm9yIHx4fD4xLjAKKy8vICBhY29zKDEpID0gKzAKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24JCitzdGF0aWNfZnVuYzoKKy4uQjEuMToKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZWF4CisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZWF4KSwgJWVheAorICAgICAgICBsZWEgICAgICAgc3RhdGljX2NvbnN0X3RhYmxlQEdPVE9GRiglZWF4KSwgJWVheAorICAgICAgICByZXQgICAgICAgCisgICAgICAgIC5zaXplICAgc3RhdGljX2Z1bmMsLi1zdGF0aWNfZnVuYworIyAtLSBFbmQgIHN0YXRpY19mdW5jCisKKyMgLS0gQmVnaW4gIGFjb3MKK0VOVFJZKGFjb3MpCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEwNCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNDgoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICA2MDQ4KCVlYngpLCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgNjA4MCglZWJ4KSwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBtb3ZzZCAgICAgNjA2NCglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDgoJWVzcCkKKyAgICAgICAgcHNybHEgICAgICQ0NCwgJXhtbTAKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgbW92bCAgICAgICQ4MTkyLCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMiwgJWVjeCwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDUyNDI4NywgJWVheAorICAgICAgICBhbmRsICAgICAgJWVkeCwgJWVheAorICAgICAgICBzdWJsICAgICAgJDI2MDg2NCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDk1NSwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBhbmRsICAgICAgJDY1NTM1LCAlZWR4CisgICAgICAgIHN1YnNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgc3FydHNkICAgICV4bW0zLCAleG1tMworICAgICAgICBhbmRwZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFuZGwgICAgICAkLTQsICVlZHgKKyAgICAgICAgc3VibCAgICAgICQ2NDI1NiwgJWVkeAorICAgICAgICBtb3ZzZCAgICAgMzg0MCglZWJ4LCVlZHgsMiksICV4bW0xCisgICAgICAgIG9ycGQgICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgICglZWJ4LCVlZHgsNCksICV4bW00CisgICAgICAgIG1vdmFwZCAgICAleG1tNywgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBkaXZzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIG1vdnNkICAgICA1OTc2KCVlYngpLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgNTk2MCglZWJ4KSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBwc3JscSAgICAgJDYzLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHBzbGxxICAgICAkNjMsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdnNkICAgICA1OTY4KCVlYngpLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIHN1YnBkICAgICA1ODg4KCVlYngpLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorICAgICAgICBzdWJsICAgICAgJDk1NSwgJWVheAorICAgICAgICBjbXBsICAgICAgJDY1LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICBwc3JscSAgICAgJDM4LCAleG1tNworICAgICAgICBwc2xscSAgICAgJDM4LCAleG1tNworICAgICAgICBwbW92bXNrYiAgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbnBkICAgICV4bW0wLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tNywgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG9ycGQgICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAleG1tMywgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBzcXJ0c2QgICAgJXhtbTMsICV4bW0zCisgICAgICAgIGFuZGwgICAgICAkMTI4LCAlZWF4CisgICAgICAgIHNocmwgICAgICAkNywgJWVheAorICAgICAgICBuZWdsICAgICAgJWVheAorICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW03CisgICAgICAgIGFuZHBkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgcHNsbHEgICAgICQyLCAleG1tMworICAgICAgICBwZXh0cncgICAgJDMsICV4bW0zLCAlZWR4CisgICAgICAgIG9ycGQgICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICVlYXgsICV4bW0zCisgICAgICAgIHBzaHVmZCAgICAkMCwgJXhtbTMsICV4bW0zCisgICAgICAgIHN1YmwgICAgICAkNjUyMTYsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgbXVsc2QgICAgIDM4NDAoJWVieCwlZWR4LDQpLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIGFuZHBkICAgICA1OTA0KCVlYngpLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNworICAgICAgICBtb3ZzZCAgICAgNTk2MCglZWJ4KSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIG1vdnNkICAgICA1OTc2KCVlYngpLCAleG1tMAorICAgICAgICBkaXZzZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIG1vdnNkICAgICA1OTY4KCVlYngpLCAleG1tMgorICAgICAgICBhZGRwZCAgICAgKCVlYngsJWVkeCw4KSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICV4bW02LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBweG9yICAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGFuZGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgJXhtbTQsICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMywgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBhZGRsICAgICAgJDE1MjkxLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTQzMzYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIHVucGNrbHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDU5ODQoJWVieCksICV4bW02CisgICAgICAgIHVucGNrbHBkICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIDYwMDAoJWVieCksICV4bW0yCisgICAgICAgIG1vdmFwZCAgICA2MDE2KCVlYngpLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICA1ODg4KCVlYngpLCAleG1tNQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW00LCAleG1tNgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBzdWJsICAgICAgJDE1MzU2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkNCwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBhbmRwZCAgICAgNjA0OCglZWJ4KSwgJXhtbTcKKyAgICAgICAgbW92c2QgICAgIDYwOTYoJWVieCksICV4bW00CisgICAgICAgIG1vdmFwZCAgICA1OTg0KCVlYngpLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW03CisgICAgICAgIG1vdmFwZCAgICA2MDAwKCVlYngpLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIG1vdmFwZCAgICA2MDE2KCVlYngpLCAleG1tMworICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNCwgJXhtbTcKKyAgICAgICAgc3FydHNkICAgICV4bW00LCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW03LCAleG1tNQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgNTkzNiglZWJ4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMworICAgICAgICBjbXBzZCAgICAgJDEsICV4bW02LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgIDU5MDQoJWVieCksICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgICV4bW00LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNCwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0zLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIGRpdnNkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBhZGRsICAgICAgJDI2MTg4NCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDI2MTg4OCwgJWVheAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgbW92ZCAgICAgICV4bW03LCAlZWN4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW03CisgICAgICAgIG1vdmQgICAgICAleG1tNywgJWVkeAorICAgICAgICBhbmRsICAgICAgJDIxNDc0ODM2NDcsICVlZHgKKyAgICAgICAgbW92bCAgICAgICQxMDcyNjkzMjQ4LCAlZWF4CisgICAgICAgIHN1YmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWN4LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgbW92cSAgICAgIDgoJWVzcCksICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVkeAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQyMTQ3NDgzNjQ3LCAlZWN4CisgICAgICAgIHN1YmwgICAgICAkMSwgJWVkeAorICAgICAgICBzYmJsICAgICAgJDIxNDY0MzUwNzIsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGpnZSAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICBwZXh0cncgICAgJDEsICV4bW03LCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMTUsICVlZHgKKyAgICAgICAgbmVnbCAgICAgICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkMCwgJXhtbTcsICV4bW03CisgICAgICAgIG1vdnNkICAgICA1OTIwKCVlYngpLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgNTkyOCglZWJ4KSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW03LCAleG1tMgorICAgICAgICBhbmRwZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBtb3ZzZCAgICAgNTg4OCglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDU4OTYoJWVieCksICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIG1vdmwgICAgICA0OCglZXNwKSwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIyLjM6CitFTkQoYWNvcykKKyMgLS0gRW5kICBhY29zCisKKyMgU3RhcnQgZmlsZSBzY29wZSBBU00KK0FMSUFTX1NZTUJPTChhY29zbCwgYWNvcyk7CisjIEVuZCBmaWxlIHNjb3BlIEFTTQorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorc3RhdGljX2NvbnN0X3RhYmxlOgorCS5sb25nCTM4MjI5NTI3OTIKKwkubG9uZwkxMDIxNjM5MzcyCisJLmxvbmcJMTgyNzkyNDQ4CisJLmxvbmcJMTA2ODUwNzgzNgorCS5sb25nCTIyNjQyMTMyNzEKKwkubG9uZwkxMDE5NTU4OTA4CisJLmxvbmcJNjQ5MDUyOTI4CisJLmxvbmcJMTA2ODUyNDI1MworCS5sb25nCTE3OTcxMzk2MDkKKwkubG9uZwkxMDIyMjk1MTQzCisJLmxvbmcJMTI0MzA5NTI5NgorCS5sb25nCTEwNjg1NDA2NzEKKwkubG9uZwkxNDE1OTM4NzU2CisJLmxvbmcJMTAyMTQzOTUzNworCS5sb25nCTIwMzMyOTQ1OTIKKwkubG9uZwkxMDY4NTU3MDkwCisJLmxvbmcJMjM1NjgwOTk3OAorCS5sb25nCTEwMjE3Nzc5MTYKKwkubG9uZwkzMDg4MDYzNzQ0CisJLmxvbmcJMTA2ODU3MzUxMAorCS5sb25nCTI2NjkwNTUzMTgKKwkubG9uZwkxMDIyMTI0NDgyCisJLmxvbmcJMTgwODg4NTc2CisJLmxvbmcJMTA2ODU4OTkzMgorCS5sb25nCTM1NjY0NDUzMjUKKwkubG9uZwkxMDIxMzU4NzEyCisJLmxvbmcJMTk3MDE5Njk5MgorCS5sb25nCTEwNjg2MDYzNTQKKwkubG9uZwk4OTY5ODAzMjMKKwkubG9uZwkxMDIxMzE5NjU5CisJLmxvbmcJNDIyOTU1NTQ1NgorCS5sb25nCTEwNjg2MjI3NzcKKwkubG9uZwk0MzYwNDk3MTIKKwkubG9uZwkxMDIxMzE5NzU4CisJLmxvbmcJMjczMjU3MjE2MAorCS5sb25nCTEwNjg2MzkyMDIKKwkubG9uZwk1ODMxMjMyMDkKKwkubG9uZwkxMDIwNzk3OTYwCisJLmxvbmcJMTg0MjgzMTg3MgorCS5sb25nCTEwNjg2NTU2MjgKKwkubG9uZwkxMzcwNDQ5ODA0CisJLmxvbmcJMTAyMTQyOTI3MAorCS5sb25nCTE2Mjg5OTQ1NjAKKwkubG9uZwkxMDY4NjcyMDU1CisJLmxvbmcJMjQxMTM5MTQ2NAorCS5sb25nCTEwMjEwNTc5ODAKKwkubG9uZwkyMTU5NzYzNzEyCisJLmxvbmcJMTA2ODY4ODQ4MworCS5sb25nCTEyMDg2OTI3NDkKKwkubG9uZwkxMDIxOTQzOTAzCisJLmxvbmcJMzUwMzg4NjMzNgorCS5sb25nCTEwNjg3MDQ5MTIKKwkubG9uZwk1Mzg3OTMzMDkKKwkubG9uZwkxMDE5NzQ0MDYzCisJLmxvbmcJMTQzNTE4NzIwMAorCS5sb25nCTEwNjg3MjEzNDMKKwkubG9uZwk0MDg1MDg3NjEyCisJLmxvbmcJMTAyMDYwODQxOQorCS5sb25nCTMxNzQ2OTk1MgorCS5sb25nCTEwNjg3Mzc3NzUKKwkubG9uZwkxNDQzODY5NDIKKwkubG9uZwkxMDIxNDQwNzMyCisJLmxvbmcJMjE5NjE3MjgwCisJLmxvbmcJMTA2ODc1NDIwOAorCS5sb25nCTI5NDAwODgzNjEKKwkubG9uZwkxMDE5OTgxMTIyCisJLmxvbmcJMTIxMDU1ODIwOAorCS5sb25nCTEwNjg3NzA2NDIKKwkubG9uZwkyMTc2ODUwMzQ3CisJLmxvbmcJMTAxODM3MzcwNQorCS5sb25nCTMzNTkyNjgzNTIKKwkubG9uZwkxMDY4Nzg3MDc3CisJLmxvbmcJMjM5NTYxMTQ1NAorCS5sb25nCTEwMjE4ODkwNDIKKwkubG9uZwkyNDM5ODAzNjQ4CisJLmxvbmcJMTA2ODgwMzUxNAorCS5sb25nCTE2NTA3MDUyNTMKKwkubG9uZwkxMDIwMjI3OTY2CisJLmxvbmcJMjgxNjIwMzUyMAorCS5sb25nCTEwNjg4MTk5NTIKKwkubG9uZwkzNzAyMTY2Mzg2CisJLmxvbmcJMTAxOTM3OTkxNAorCS5sb25nCTI2MjYyMDY3MgorCS5sb25nCTEwNjg4MzYzOTIKKwkubG9uZwkxODU1NjQ5MzcwCisJLmxvbmcJMTAyMDQ1MzEyNAorCS5sb25nCTM0MzgxNTk2MTYKKwkubG9uZwkxMDY4ODUyODMyCisJLmxvbmcJOTIzMDYzODYwCisJLmxvbmcJMTAxOTI3MzgzNAorCS5sb25nCTM4MjIxMDU4NTYKKwkubG9uZwkxMDY4ODY5Mjc0CisJLmxvbmcJNDI4OTk0Nzk0NworCS5sb25nCTEwMTk0MzQyNDkKKwkubG9uZwkxNDgzNzI5OTIwCisJLmxvbmcJMTA2ODg4NTcxOAorCS5sb25nCTc4NzQ1NTgxNAorCS5sb25nCTEwMjA3MzgzNzkKKwkubG9uZwk3ODczMjEwODgKKwkubG9uZwkxMDY4OTAyMTYzCisJLmxvbmcJMzMyMTY1MzMzNworCS5sb25nCTEwMjE4NDI1NjkKKwkubG9uZwkxODAyMjUzMzEyCisJLmxvbmcJMTA2ODkxODYwOQorCS5sb25nCTI2NTM2MzM1MjYKKwkubG9uZwkxMDIxODIxNTI1CisJLmxvbmcJMzAyOTg1OTg0CisJLmxvbmcJMTA2ODkzNTA1NworCS5sb25nCTE2MTI3MjAyOAorCS5sb25nCTEwMjE2NTUxNDkKKwkubG9uZwk2NTM5NjYwODAKKwkubG9uZwkxMDY4OTUxNTA2CisJLmxvbmcJMjU2NjA5ODY2NworCS5sb25nCTEwMjAwNjYyMTkKKwkubG9uZwkyOTI0NzI3Mjk2CisJLmxvbmcJMTA2ODk2Nzk1NgorCS5sb25nCTM2NDY0OTM3MjIKKwkubG9uZwkxMDE0MjkyMjg1CisJLmxvbmcJMjg4OTg5MDMwNAorCS5sb25nCTEwNjg5ODQ0MDgKKwkubG9uZwkxMDgxMDA5MTk2CisJLmxvbmcJMTAyMjE4OTYyMAorCS5sb25nCTYxOTA5ODExMgorCS5sb25nCTEwNjkwMDA4NjIKKwkubG9uZwk0MDExNjQzMzU1CisJLmxvbmcJMTAyMTc3MzI5NworCS5sb25nCTQ3NzAxNzYwMAorCS5sb25nCTEwNjkwMTczMTcKKwkubG9uZwk0MDMwMzA1NTM0CisJLmxvbmcJMTAyMTI5MjI1MgorCS5sb25nCTI1MzM0MDM5MDQKKwkubG9uZwkxMDY5MDMzNzczCisJLmxvbmcJMjY0NTE4NzU5MQorCS5sb25nCTEwMTk1MjcwOTkKKwkubG9uZwkyNTYzMTAyMjA4CisJLmxvbmcJMTA2OTA1MDIzMQorCS5sb25nCTM4NTcyOTM3OTIKKwkubG9uZwkxMDIyMzExNjk3CisJLmxvbmcJNjM1OTgyMzM2CisJLmxvbmcJMTA2OTA2NjY5MQorCS5sb25nCTM2MjU5MzY2MzcKKwkubG9uZwkxMDE3NTExNzQ0CisJLmxvbmcJMTExNjk0MDgwMAorCS5sb25nCTEwNjkwODMxNTIKKwkubG9uZwkzNjUzODcyOTkzCisJLmxvbmcJMTAyMjAxNjYzMQorCS5sb25nCTQwNzU5NjQxNjAKKwkubG9uZwkxMDY5MDk5NjE0CisJLmxvbmcJMjQ2ODkwMDI3MQorCS5sb25nCTEwMjE3Njk1MzIKKwkubG9uZwk5OTMxNjU1NjgKKwkubG9uZwkxMDY5MTE2MDc5CisJLmxvbmcJMTM1ODEwNDIyNAorCS5sb25nCTEwMjExOTk3NzYKKwkubG9uZwk1Mjg1ODY3NTIKKwkubG9uZwkxMDY5MTMyNTQ1CisJLmxvbmcJMjIwMDk1MDMzMgorCS5sb25nCTEwMjIwMjQ4NzIKKwkubG9uZwkyNzUyMzk1Nzc2CisJLmxvbmcJMTA2OTE0OTAxMgorCS5sb25nCTMxOTcwNzI0NTQKKwkubG9uZwkxMDE3NzUxMzE5CisJLmxvbmcJMzQzOTg1NTYxNgorCS5sb25nCTEwNjkxNjU0ODEKKwkubG9uZwkxNjUxMDgxODA2CisJLmxvbmcJMTAyMDgwOTMzOAorCS5sb25nCTI2NjEyNTc3MjgKKwkubG9uZwkxMDY5MTgxOTUyCisJLmxvbmcJNTM5MDMyNzUyCisJLmxvbmcJMTAyMTcyODgwNQorCS5sb25nCTQ4Njk1NzMxMgorCS5sb25nCTEwNjkxOTg0MjUKKwkubG9uZwkzMTM2MDQ1MTQ5CisJLmxvbmcJMTAxNjg4ODY3MQorCS5sb25nCTEyODIzNDAzNTIKKwkubG9uZwkxMDY5MjE0ODk5CisJLmxvbmcJMjU5Mzk2MzI1OQorCS5sb25nCTEwMTg5NTYxMDMKKwkubG9uZwk4MjI5MjE3MjgKKwkubG9uZwkxMDY5MjMxMzc1CisJLmxvbmcJMjE0NjAzMjczNworCS5sb25nCTEwMjIzMDY0NjUKKwkubG9uZwkzNDc0MjE2MTkyCisJLmxvbmcJMTA2OTI0Nzg1MgorCS5sb25nCTM5NzY4MTE2MjUKKwkubG9uZwkxMDIxMzUwMjA3CisJLmxvbmcJNzE2OTAyNjU2CisJLmxvbmcJMTA2OTI2NDMzMgorCS5sb25nCTcxODI2NzIyMgorCS5sb25nCTEwMTg2MjQ3MjcKKwkubG9uZwkxMjExNTk0NDk2CisJLmxvbmcJMTA2OTI4MDgxMworCS5sb25nCTE0ODU2NDEzODkKKwkubG9uZwkxMDE4NDQ3NDUxCisJLmxvbmcJNzM0MDcwMjcyCisJLmxvbmcJMTA2OTI5NzI5NgorCS5sb25nCTM1NDQ1NTEyOAorCS5sb25nCTEwMjEzNDEyOTEKKwkubG9uZwkzNjUwMTEwNzIwCisJLmxvbmcJMTA2OTMxMzc4MAorCS5sb25nCTY4MjE4NTk0NworCS5sb25nCTEwMjE2NTE4NTMKKwkubG9uZwkxNDQwNjYzMDQwCisJLmxvbmcJMTA2OTMzMDI2NworCS5sb25nCTM1NTg1NzQ1NTAKKwkubG9uZwkxMDIxNjE1MTEwCisJLmxvbmcJMjc2NjYxMjIyNAorCS5sb25nCTEwNjkzNDY3NTUKKwkubG9uZwk4NzQ2MDc5NzgKKwkubG9uZwkxMDE3NzQ2ODcyCisJLmxvbmcJMzQwNDAxMTAwOAorCS5sb25nCTEwNjkzNjMyNDUKKwkubG9uZwk0MTU0OTg4NTAyCisJLmxvbmcJMTAyMTQzOTkwNgorCS5sb25nCTM0MjM5NDkwNTYKKwkubG9uZwkxMDY5Mzc5NzM3CisJLmxvbmcJMjI2MzIwMjMwOQorCS5sb25nCTEwMjE0Nzk2MTUKKwkubG9uZwkyODk3NTg3NzEyCisJLmxvbmcJMTA2OTM5NjIzMQorCS5sb25nCTI1NjIwNjUwMzEKKwkubG9uZwkxMDIyMDkwMzYzCisJLmxvbmcJMTg5NjE1OTIzMgorCS5sb25nCTEwNjk0MTI3MjcKKwkubG9uZwkzODM2MjM3NjYzCisJLmxvbmcJMTAxOTg2NzI4OAorCS5sb25nCTQ5MDk2ODU3NgorCS5sb25nCTEwNjk0MjkyMjUKKwkubG9uZwkzMzIyMDU2NzQzCisJLmxvbmcJMTAwNjc1Mjc2MgorCS5sb25nCTMwNDgzNjAxOTIKKwkubG9uZwkxMDY5NDQ1NzI0CisJLmxvbmcJMTE1MjMxNDgzMworCS5sb25nCTEwMTMxMjIyNTIKKwkubG9uZwkxMDQ5ODUwNjI0CisJLmxvbmcJMTA2OTQ2MjIyNgorCS5sb25nCTM2MDE1OTA3MjcKKwkubG9uZwkxMDIyMjE0NjEwCisJLmxvbmcJMzE1Njg5OTU4NAorCS5sb25nCTEwNjk0Nzg3MjkKKwkubG9uZwkxODU1MTY5OTcwCisJLmxvbmcJMTAxOTQ4NzI3MQorCS5sb25nCTg1MTE3MzM3NgorCS5sb25nCTEwNjk0OTUyMzUKKwkubG9uZwkzMTI2NDk1OTQKKwkubG9uZwkxMDIwODY4NjA0CisJLmxvbmcJMjc5NDI4MTcyOAorCS5sb25nCTEwNjk1MTE3NDIKKwkubG9uZwkxMDkzNDkwMTgxCisJLmxvbmcJMTAyMDc3NzU3NworCS5sb25nCTQ2ODA0MjQ5NgorCS5sb25nCTEwNjk1MjgyNTIKKwkubG9uZwkxMTUyNTQwNjc5CisJLmxvbmcJMTAyMTQwMzczMgorCS5sb25nCTI1MzQyMTkyNjQKKwkubG9uZwkxMDY5NTQ0NzYzCisJLmxvbmcJMjI5MjEyNjAzNQorCS5sb25nCTEwMjE4NzI0MzAKKwkubG9uZwkxMzc2MTQ2NDMyCisJLmxvbmcJMTA2OTU1ODUyNworCS5sb25nCTMyOTM3NTM2NDEKKwkubG9uZwkxMDIwNTAwNDU0CisJLmxvbmcJNDE3NTQ0MjQzMgorCS5sb25nCTEwNjk1NzUwNDQKKwkubG9uZwkzNjI2MzQ3NTY0CisJLmxvbmcJMTAyMTYxMDk2OQorCS5sb25nCTM1MjMxMTM0NzIKKwkubG9uZwkxMDY5NTkxNTY2CisJLmxvbmcJMzM5OTU2NTAwCisJLmxvbmcJMTAyMTExOTAzOQorCS5sb25nCTQwMDMzNTA1MjgKKwkubG9uZwkxMDY5NjA4MDkyCisJLmxvbmcJMzQyOTMzMzA4MgorCS5sb25nCTEwMjI4MTM1NDIKKwkubG9uZwkxNjExMDY3MzkyCisJLmxvbmcJMTA2OTYyNDYyMworCS5sb25nCTIyOTgwMTc1NDQKKwkubG9uZwkxMDIxOTc3NTg3CisJLmxvbmcJOTMxNzgyMTQ0CisJLmxvbmcJMTA2OTY0MTE1OAorCS5sb25nCTIxNjQ2ODQ3NDMKKwkubG9uZwkxMDIxMjUwOTg4CisJLmxvbmcJMjI1NjcyNTUwNAorCS5sb25nCTEwNjk2NTc2OTcKKwkubG9uZwkxMTM4NzYyMzM1CisJLmxvbmcJMTAyMTQ0Mzc3NgorCS5sb25nCTE1ODI4NTMxMjAKKwkubG9uZwkxMDY5Njc0MjQxCisJLmxvbmcJMTA4NDAxMDM4MgorCS5sb25nCTEwMjI5OTQ2OTMKKwkubG9uZwkzNDk3NzU4NzIwCisJLmxvbmcJMTA2OTY5MDc4OQorCS5sb25nCTQwNjM2NjI0NAorCS5sb25nCTEwMjI3MTM1ODYKKwkubG9uZwkzOTk5ODE2OTYwCisJLmxvbmcJMTA2OTcwNzM0MgorCS5sb25nCTE0ODg3MjMwNDIKKwkubG9uZwkxMDIzMzgxMjkwCisJLmxvbmcJMzM4MzA5NjA2NAorCS5sb25nCTEwNjk3MjM5MDAKKwkubG9uZwkyNTQxNTU4OTUzCisJLmxvbmcJMTAxOTEzNzg4NworCS5sb25nCTE5NDI0MDM1ODQKKwkubG9uZwkxMDY5NzQwNDYzCisJLmxvbmcJMTg3OTYyMDM0MworCS5sb25nCTEwMjI2NTM2NDIKKwkubG9uZwk0MjY4MjYzNjgwCisJLmxvbmcJMTA2OTc1NzAzMAorCS5sb25nCTMwMzkwNzcwNDcKKwkubG9uZwkxMDIyMjUyNTQ1CisJLmxvbmcJMjA2NzA2MjI3MgorCS5sb25nCTEwNjk3NzM2MDMKKwkubG9uZwk0MTkwNjcwNjc3CisJLmxvbmcJMTAyMDcyNTg2MworCS5sb25nCTQyMjU4MjgwOTYKKwkubG9uZwkxMDY5NzkwMTgwCisJLmxvbmcJMTk5ODU2NzMyMQorCS5sb25nCTEwMjIwMTQzODUKKwkubG9uZwkyNDUyNTA3MTM2CisJLmxvbmcJMTA2OTgwNjc2MworCS5sb25nCTE1MTE2Mjg4NzMKKwkubG9uZwkxMDIxOTAwMzAwCisJLmxvbmcJMTM0MDc0NjI0MAorCS5sb25nCTEwNjk4MjMzNTEKKwkubG9uZwk3ODgzNjczNDEKKwkubG9uZwkxMDIyNzI2MjA4CisJLmxvbmcJMTE5MDAzNTQ1NgorCS5sb25nCTEwNjk4Mzk5NDQKKwkubG9uZwkzODU2MzM3MjMwCisJLmxvbmcJMTAyMTgzNDExOAorCS5sb25nCTIzMDA2ODgzODQKKwkubG9uZwkxMDY5ODU2NTQyCisJLmxvbmcJMzIxMTM5NjU3OQorCS5sb25nCTEwMjI2MjEzNjUKKwkubG9uZwk2Nzg4ODY0MDAKKwkubG9uZwkxMDY5ODczMTQ2CisJLmxvbmcJNDAwMTAxMTg4NworCS5sb25nCTEwMjIwNDI2NDYKKwkubG9uZwk5MjE1OTQxMTIKKwkubG9uZwkxMDY5ODg5NzU1CisJLmxvbmcJNTU3ODExOTY4CisJLmxvbmcJMTAyMzA2NTUzMworCS5sb25nCTMzMzE2Njg5OTIKKwkubG9uZwkxMDY5OTA2MzY5CisJLmxvbmcJMTg3NzA2MDY3OQorCS5sb25nCTEwMjI0MTk3NDIKKwkubG9uZwkzOTE3ODc1MjAwCisJLmxvbmcJMTA2OTkyMjk4OQorCS5sb25nCTExODEwNTUxNzEKKwkubG9uZwkxMDIyNzUyNzEyCisJLmxvbmcJMjk4NDgyOTY5NgorCS5sb25nCTEwNjk5Mzk2MTUKKwkubG9uZwk0Mjk0NTI2OTMyCisJLmxvbmcJMTAyMTQ5OTk4OAorCS5sb25nCTgzODA0OTAyNAorCS5sb25nCTEwNjk5NTYyNDcKKwkubG9uZwkzNjU4MDgxODc4CisJLmxvbmcJMTAyMjk1Nzk1MgorCS5sb25nCTIwNzg5MjgzODQKKwkubG9uZwkxMDY5OTcyODg0CisJLmxvbmcJODIwMzUzNzAxCisJLmxvbmcJMTAxOTM5MTEwNworCS5sb25nCTI3MTk4NTQzMzYKKwkubG9uZwkxMDY5OTg5NTI3CisJLmxvbmcJMTY0NDAyMjQ4OQorCS5sb25nCTEwMjMzNzgyNDAKKwkubG9uZwkzMDY5MTE3Njk2CisJLmxvbmcJMTA3MDAwNjE3NgorCS5sb25nCTI3NzEzOTM3MDIKKwkubG9uZwkxMDE5MzE5OTU0CisJLmxvbmcJMzQzNTk2MjM2OAorCS5sb25nCTEwNzAwMjI4MzEKKwkubG9uZwkzODc2Mzk0MTQ1CisJLmxvbmcJMTAyMzAyNDQzMworCS5sb25nCTQxMzA1OTUzMjgKKwkubG9uZwkxMDcwMDM5NDkyCisJLmxvbmcJMTYzMDQ0Nzc0OAorCS5sb25nCTEwMjE0NjU4ODIKKwkubG9uZwkxMTY5MjM2MjI0CisJLmxvbmcJMTA3MDA1NjE2MAorCS5sb25nCTI4MjgzNTU5OTcKKwkubG9uZwkxMDIwNDU4MTIwCisJLmxvbmcJMzQ1Mzk5NzMxMgorCS5sb25nCTEwNzAwNzI4MzMKKwkubG9uZwkxNjQwOTE2NDEKKwkubG9uZwkxMDIwMzg4Mjc5CisJLmxvbmcJMjcwODEyNzc0NAorCS5sb25nCTEwNzAwODk1MTMKKwkubG9uZwkzMDM2NTUwMjIzCisJLmxvbmcJMTAyMzMyODY4NAorCS5sb25nCTM1NDA3OTc2OTYKKwkubG9uZwkxMDcwMTA2MTk5CisJLmxvbmcJMzcxMDk0OTQ2MworCS5sb25nCTEwMjI1Njg4MDUKKwkubG9uZwkxOTcyMjc2NzM2CisJLmxvbmcJMTA3MDEyMjg5MgorCS5sb25nCTM4ODUyNzc5NTAKKwkubG9uZwkxMDE5NzYxNjc0CisJLmxvbmcJMjYxMzgxNTU1MgorCS5sb25nCTEwNzAxMzk1OTEKKwkubG9uZwkyNzY0MTY1MDc3CisJLmxvbmcJMTAyMjkyMTAyMworCS5sb25nCTE0ODc3OTE2MTYKKwkubG9uZwkxMDcwMTU2Mjk3CisJLmxvbmcJMTMzMDY0NDc2OQorCS5sb25nCTEwMjMxNjI2NzkKKwkubG9uZwkzMjA3NTkzNDcyCisJLmxvbmcJMTA3MDE3MzAwOQorCS5sb25nCTM5MTEwMDcyMjEKKwkubG9uZwkxMDIyOTkzNDk2CisJLmxvbmcJMzc5Nzc2NDYwOAorCS5sb25nCTEwNzAxODk3MjgKKwkubG9uZwk5Nzk3MTI1OTgKKwkubG9uZwkxMDIyNTU0NTgwCisJLmxvbmcJMzU3ODkyMDQ0OAorCS5sb25nCTEwNzAyMDY0NTQKKwkubG9uZwkyODI1NzM4MjIzCisJLmxvbmcJMTAyMDIyMzcwOAorCS5sb25nCTI4NzI3OTU2NDgKKwkubG9uZwkxMDcwMjIzMTg3CisJLmxvbmcJMzkyNDUxMTI0CisJLmxvbmcJMTAyMjY2NjI3OQorCS5sb25nCTIwMDIyNTg0MzIKKwkubG9uZwkxMDcwMjM5OTI3CisJLmxvbmcJMzczMDQwNzYzMgorCS5sb25nCTEwMjMxNDgyOTEKKwkubG9uZwkxMjkxMzI2NDY0CisJLmxvbmcJMTA3MDI1NjY3NAorCS5sb25nCTM3MjM4MDI5ODAKKwkubG9uZwkxMDIyNTE0MDg5CisJLmxvbmcJMTA2NTE4MDkyOAorCS5sb25nCTEwNzAyNzM0MjgKKwkubG9uZwkyNjM1NjE3NDYzCisJLmxvbmcJMTAyMjY1NDQ3MAorCS5sb25nCTE2NTAxODE2MzIKKwkubG9uZwkxMDcwMjkwMTg5CisJLmxvbmcJMjA2MTk4Mjg4MworCS5sb25nCTEwMjI4NTM0MTEKKwkubG9uZwkzMzczODgyODgwCisJLmxvbmcJMTA3MDMwNjk1NworCS5sb25nCTMxOTczMjc4NQorCS5sb25nCTEwMjIwMTcxNzUKKwkubG9uZwkyMjcwMDgxMjgwCisJLmxvbmcJMTA3MDMyMzczMworCS5sb25nCTIyMzc3NTc0MTEKKwkubG9uZwkxMDIzMDY0MDg3CisJLmxvbmcJMjk2MzczMjczNgorCS5sb25nCTEwNzAzNDA1MTYKKwkubG9uZwk0Njg4MzkxNjUKKwkubG9uZwkxMDIzMjkzNzc0CisJLmxvbmcJMTQ5MTA5OTkwNAorCS5sb25nCTEwNzAzNTczMDcKKwkubG9uZwkxNTAyNjU3OTQ2CisJLmxvbmcJMTAyMTUzMzQ3OQorCS5sb25nCTI0Nzk2MzY0ODAKKwkubG9uZwkxMDcwMzc0MTA1CisJLmxvbmcJNDgyOTEzNTYyCisJLmxvbmcJMTAyMTk4NjI4NgorCS5sb25nCTE5NjgxMzM2MzIKKwkubG9uZwkxMDcwMzkwOTExCisJLmxvbmcJMzI4MTQ3NDMzNworCS5sb25nCTEwMjI2NDY0MDAKKwkubG9uZwkyOTE2MzkwNDAKKwkubG9uZwkxMDcwNDA3NzI1CisJLmxvbmcJMjQ1MzMyMDI1OQorCS5sb25nCTEwMjI4MTI0MjMKKwkubG9uZwkyMDgxNDcyNTEyCisJLmxvbmcJMTA3MDQyNDU0NgorCS5sb25nCTI5Mzk5ODk1NzAKKwkubG9uZwkxMDIzMDkxODg4CisJLmxvbmcJMzM4MDM0MDQ4MAorCS5sb25nCTEwNzA0NDEzNzUKKwkubG9uZwkyODUwNzA3NDk5CisJLmxvbmcJMTAyMTkyMTEwOQorCS5sb25nCTIzMjI4NzQ4OAorCS5sb25nCTEwNzA0NTgyMTMKKwkubG9uZwkzNjc0NjI1MzQyCisJLmxvbmcJMTAyMDcyNTEzMAorCS5sb25nCTE1Njc2MTQyMDgKKwkubG9uZwkxMDcwNDc1MDU4CisJLmxvbmcJOTM0NzMzNAorCS5sb25nCTEwMjIwMjQwMDkKKwkubG9uZwkzNDMzMDkxMDcyCisJLmxvbmcJMTA3MDQ5MTkxMQorCS5sb25nCTI4MjUyNDk5OQorCS5sb25nCTEwMjE0MzM1MjMKKwkubG9uZwkxODc2ODc3MzEyCisJLmxvbmcJMTA3MDUwODc3MworCS5sb25nCTM0NzA0NDk0NDAKKwkubG9uZwkxMDE5MzA5NzIxCisJLmxvbmcJMTUzODQ3MjE5MgorCS5sb25nCTEwNzA1MjU2NDMKKwkubG9uZwkyMDg5NDg2ODI1CisJLmxvbmcJMTAxOTY5ODkxNgorCS5sb25nCTI3NjM4MzA3ODQKKwkubG9uZwkxMDcwNTQyNTIxCisJLmxvbmcJNDQzNDk4MTE1CisJLmxvbmcJMTAyMDUwNTE5NAorCS5sb25nCTE2MDUzODE2MzIKKwkubG9uZwkxMDcwNTU5NDA4CisJLmxvbmcJMzAxODg3MTYwMQorCS5sb25nCTEwMjI4Njk5MTMKKwkubG9uZwkyNzA2OTQ2MDQ4CisJLmxvbmcJMTA3MDU3NjMwMworCS5sb25nCTM5MzYyNjA4OTIKKwkubG9uZwkxMDIzMTc1ODc1CisJLmxvbmcJMjEyMzg4NzM2MAorCS5sb25nCTEwNzA1OTMyMDcKKwkubG9uZwkyOTk0MjIwNjU1CisJLmxvbmcJMTAyMjgyNTk0OAorCS5sb25nCTEwNDAxNTEwNAorCS5sb25nCTEwNzA2MDMxMDgKKwkubG9uZwkzMzUwNTQ0OTMKKwkubG9uZwkxMDIzNDQxODUzCisJLmxvbmcJMjkwNDU2ODgzMgorCS5sb25nCTEwNzA2MTU4MDAKKwkubG9uZwkxNDUxMjE1NjMzCisJLmxvbmcJMTAyMzg1Mzg1NworCS5sb25nCTM0NTYxOTcxMjAKKwkubG9uZwkxMDcwNjMyNzM5CisJLmxvbmcJNDM2MzM0NzMzCisJLmxvbmcJMTAyNDAyNjQzMgorCS5sb25nCTI1MjQ1MjM1MgorCS5sb25nCTEwNzA2NDk2OTcKKwkubG9uZwkzNDU5NjE2NworCS5sb25nCTEwMjQwMzEzOTYKKwkubG9uZwkzMzI4MDE4NDMyCisJLmxvbmcJMTA3MDY2NjY3MgorCS5sb25nCTI2NDQ1NDcwNzMKKwkubG9uZwkxMDI0Mjk2NzU4CisJLmxvbmcJMTI1NTgyOTI0OAorCS5sb25nCTEwNzA2ODM2NjcKKwkubG9uZwk1NTI4MzI1ODYKKwkubG9uZwkxMDIzNzYzMTIyCisJLmxvbmcJNDA5NzA1ODU2MAorCS5sb25nCTEwNzA3MDA2ODAKKwkubG9uZwkxOTU1NjQwNjIzCisJLmxvbmcJMTAyMTM5NDY1NAorCS5sb25nCTQ1MTc3MDExMgorCS5sb25nCTEwNzA3MTc3MTQKKwkubG9uZwkzNDI4OTAzNzc3CisJLmxvbmcJMTAyMjk0MTE0MgorCS5sb25nCTQwODkyMDgzMgorCS5sb25nCTEwNzA3MzQ3NjcKKwkubG9uZwkxNjU1MDMyNjMKKwkubG9uZwkxMDIzODk0OTU4CisJLmxvbmcJMTE4Njk2MDY0MAorCS5sb25nCTEwNzA3NTE4NDAKKwkubG9uZwk0MzU4MjY0NTAKKwkubG9uZwkxMDI0MDI2MTM0CisJLmxvbmcJMTkwNzg2NTYKKwkubG9uZwkxMDcwNzY4OTM0CisJLmxvbmcJMTgzNDE2OTc0OQorCS5sb25nCTEwMjI4OTkyODQKKwkubG9uZwkyNzQzNDkwMzA0CisJLmxvbmcJMTA3MDc4NjA0OAorCS5sb25nCTQ5NDU4MTA3NAorCS5sb25nCTEwMTg4MTg0NzkKKwkubG9uZwkyMzI4OTYxMDI0CisJLmxvbmcJMTA3MDgwMzE4NAorCS5sb25nCTI5ODc5MDg4MzQKKwkubG9uZwkxMDIyNTgxMTEwCisJLmxvbmcJMzUwMDExMzkyCisJLmxvbmcJMTA3MDgyMDM0MgorCS5sb25nCTI0MDc3MTE4NAorCS5sb25nCTEwMjQxNDMwODMKKwkubG9uZwkyNjkyMzI2OTEyCisJLmxvbmcJMTA3MDgzNzUyMQorCS5sb25nCTY2NjA1NjgzNworCS5sb25nCTEwMjIzOTQ3NzYKKwkubG9uZwkyMzczMjc0MzY4CisJLmxvbmcJMTA3MDg1NDcyMworCS5sb25nCTI0ODQzMzc3NzAKKwkubG9uZwkxMDI0MjI4MTU2CisJLmxvbmcJMTAxNzEzMTUyMAorCS5sb25nCTEwNzA4NzE5NDgKKwkubG9uZwkzMjg1NjQ4Mjc5CisJLmxvbmcJMTAyNDAyNTc4OQorCS5sb25nCTI2NTU1ODI3MgorCS5sb25nCTEwNzA4ODkxOTYKKwkubG9uZwkzOTIyNDE4OTYKKwkubG9uZwkxMDI0MjUyODA5CisJLmxvbmcJMTc3ODAwODA2NAorCS5sb25nCTEwNzA5MDY0NjcKKwkubG9uZwkxNTM2MTA3OTQzCisJLmxvbmcJMTAyMzk0OTMwMAorCS5sb25nCTI5MzcxODQ3NjgKKwkubG9uZwkxMDcwOTIzNzYyCisJLmxvbmcJMzU0MTA2MjI1MQorCS5sb25nCTEwMTk0NDg2NDYKKwkubG9uZwkxMTQ0NDQyODgwCisJLmxvbmcJMTA3MDk0MTA4MgorCS5sb25nCTM2OTE2ODM3ODEKKwkubG9uZwkxMDIyMTIzOTQ4CisJLmxvbmcJMjQxMDE2NTUwNAorCS5sb25nCTEwNzA5NTg0MjYKKwkubG9uZwkxODA0MTgxOTYwCisJLmxvbmcJMTAyMzk0NTIyMQorCS5sb25nCTQxNzQzNTA4NDgKKwkubG9uZwkxMDcwOTc1Nzk1CisJLmxvbmcJMjAxNjA5NDg2MQorCS5sb25nCTEwMjE3MTY1ODUKKwkubG9uZwkzODk3MDEyNDgwCisJLmxvbmcJMTA3MDk5MzE5MAorCS5sb25nCTE3NTI5NDQxMAorCS5sb25nCTEwMjM3MDM0MDQKKwkubG9uZwkzMzUzNjIzMDQwCisJLmxvbmcJMTA3MTAxMDYxMQorCS5sb25nCTE2Nzk3MzI0MgorCS5sb25nCTEwMjMyNDA4MzkKKwkubG9uZwk0NTY3MTE2OAorCS5sb25nCTEwNzEwMjgwNTkKKwkubG9uZwkyMTY2ODU2MTEzCisJLmxvbmcJMTAyMTU2NTQxMworCS5sb25nCTg2MDYzODcyCisJLmxvbmcJMTA3MTA0NTUzMworCS5sb25nCTI2NzYyNTQ3MjcKKwkubG9uZwkxMDIzOTg1Mjk5CisJLmxvbmcJMTAxOTc3MjY3MgorCS5sb25nCTEwNzEwNjMwMzQKKwkubG9uZwk5ODkwNDM1OTMKKwkubG9uZwkxMDIxNTQ5NTg3CisJLmxvbmcJNDE0Mjk3MzQ0CisJLmxvbmcJMTA3MTA4MDU2MworCS5sb25nCTM5NjA5NzIwNDYKKwkubG9uZwkxMDI0MzA3MjUxCisJLmxvbmcJMTU1MTczMTIwCisJLmxvbmcJMTA3MTA5ODEyMAorCS5sb25nCTE4MzA5MTkyOTEKKwkubG9uZwkxMDIxNTkyMjUxCisJLmxvbmcJMjE1MTU2MjI0MAorCS5sb25nCTEwNzExMTU3MDUKKwkubG9uZwk0MDU0MDg2NjYKKwkubG9uZwkxMDIzNDIzMTI4CisJLmxvbmcJNDA0MTg1NDcyMAorCS5sb25nCTEwNzExMzMzMTkKKwkubG9uZwkyMDQzNDk3ODI3CisJLmxvbmcJMTAyNDQxMTUwMworCS5sb25nCTM0ODkyMjQxOTIKKwkubG9uZwkxMDcxMTUwOTYzCisJLmxvbmcJMzA3MjIxNTg2NAorCS5sb25nCTEwMjI2OTg2MzUKKwkubG9uZwkyNDc3MTk2Mjg4CisJLmxvbmcJMTA3MTE2ODYzNworCS5sb25nCTE4MTIxOTUxMzkKKwkubG9uZwkxMDIyNjg5MTkyCisJLmxvbmcJMzAxNTI5ODgxNgorCS5sb25nCTEwNzExODYzNDEKKwkubG9uZwk3NjQ4NDE5NjkKKwkubG9uZwkxMDIxMDI3MzMxCisJLmxvbmcJMjg0NDczMTEzNgorCS5sb25nCTEwNzEyMDQwNzYKKwkubG9uZwkyODc4MTE3MzIxCisJLmxvbmcJMTAxOTExNjUxMworCS5sb25nCTQwMjg5NTA1MjgKKwkubG9uZwkxMDcxMjIxODQyCisJLmxvbmcJNjk4OTExNDUyCisJLmxvbmcJMTAyMzI2NTYwMgorCS5sb25nCTY5NDQxNTM2CisJLmxvbmcJMTA3MTIzOTY0MQorCS5sb25nCTMyNTM0Njc4NDcKKwkubG9uZwkxMDIwNzk1MDc1CisJLmxvbmcJMTY3NjIwOTkyMAorCS5sb25nCTEwNzEyNTc0NzEKKwkubG9uZwk0MjcyNDMxMTY3CisJLmxvbmcJMTAyMjg3Mzk4MgorCS5sb25nCTI0MDg3NTIzODQKKwkubG9uZwkxMDcxMjc1MzM0CisJLmxvbmcJNjQ4NTE5MTAwCisJLmxvbmcJMTAyNDM4NTcxNworCS5sb25nCTE1MTYyMzY4MAorCS5sb25nCTEwNzEyOTMyMzEKKwkubG9uZwkzNDUyNTcwMTcKKwkubG9uZwkxMDE5NTYxNDA4CisJLmxvbmcJMTQxMDE1NDI0MAorCS5sb25nCTEwNzEzMTExNjEKKwkubG9uZwkxOTc4NjM5OTMKKwkubG9uZwkxMDIzMjI0MjA3CisJLmxvbmcJNDEzMTM1MTU1MgorCS5sb25nCTEwNzEzMjkxMjUKKwkubG9uZwkyNjIwODAxNzg5CisJLmxvbmcJMTAyNDQxMTE2OQorCS5sb25nCTE5OTk2NjQzODQKKwkubG9uZwkxMDcxMzQ3MTI1CisJLmxvbmcJMzk1MjY5MjYxNgorCS5sb25nCTEwMjQxNjgwODYKKwkubG9uZwkxNjE3NjY4ODY0CisJLmxvbmcJMTA3MTM2NTE2MAorCS5sb25nCTMwMTk4ODk4MDkKKwkubG9uZwkxMDIxOTA3NjkyCisJLmxvbmcJMTAzMjA3NDI0MAorCS5sb25nCTEwNzEzODMyMzEKKwkubG9uZwk1OTQ2OTg5OQorCS5sb25nCTEwMjM2NTYxOTQKKwkubG9uZwkyNjE5NDkyMDk2CisJLmxvbmcJMTA3MTQwMTMzOAorCS5sb25nCTE0MTc1MjY4MjAKKwkubG9uZwkxMDIxNDU3NzgzCisJLmxvbmcJMjAyNDI5NDQwCisJLmxvbmcJMTA3MTQxOTQ4MworCS5sb25nCTI5Mjc2Njc5MzUKKwkubG9uZwkxMDE5MTc1NDQ3CisJLmxvbmcJNTI1MDQ0MjI0CisJLmxvbmcJMTA3MTQzNzY2NQorCS5sb25nCTM4MTY2ODExCisJLmxvbmcJMTAyMzk4MTg3OQorCS5sb25nCTE3NzkyNTg4ODAKKwkubG9uZwkxMDcxNDU1ODg1CisJLmxvbmcJNDgxMjUyNTAwCisJLmxvbmcJMTAyMzMxMDIzNAorCS5sb25nCTIxOTU2NzM2MDAKKwkubG9uZwkxMDcxNDc0MTQ0CisJLmxvbmcJMzk2MjM5NTk4MQorCS5sb25nCTEwMjEzMzkwODgKKwkubG9uZwk0NDU3MzY5NgorCS5sb25nCTEwNzE0OTI0NDMKKwkubG9uZwkzOTM2MjgxMzk1CisJLmxvbmcJMTAyMzAxNDgyOQorCS5sb25nCTIyMjY5MDUzNDQKKwkubG9uZwkxMDcxNTEwNzgxCisJLmxvbmcJMTUxNTMyMDQ3NgorCS5sb25nCTEwMjQzMjA2MjMKKwkubG9uZwkyODAwNTEyNTEyCisJLmxvbmcJMTA3MTUyOTE2MAorCS5sb25nCTEyMjU0MDM2OTcKKwkubG9uZwkxMDIxMDgxODQ2CisJLmxvbmcJMTYxMTEzNjAwCisJLmxvbmcJMTA3MTU0NzU4MQorCS5sb25nCTMwNjQ4MDk3MzMKKwkubG9uZwkxMDI0MTczOTE3CisJLmxvbmcJMTMzODQxMDI0MAorCS5sb25nCTEwNzE1NjYwNDMKKwkubG9uZwkyMDI3NjA0OTczCisJLmxvbmcJMTAyNDM2MjUyNgorCS5sb25nCTUyMjQzMzI4MAorCS5sb25nCTEwNzE1ODQ1NDgKKwkubG9uZwkyMDU1MTcxNzIzCisJLmxvbmcJMTAyMzg1ODgyNQorCS5sb25nCTUzOTU5NTc3NgorCS5sb25nCTEwNzE2MDMwOTYKKwkubG9uZwkzODY4ODIwMTM1CisJLmxvbmcJMTAyMjkzNjQyNAorCS5sb25nCTQyNjQwMTc2NjQKKwkubG9uZwkxMDcxNjIxNjg3CisJLmxvbmcJMzIyODA2NTE0NQorCS5sb25nCTEwMjM0Nzk1NzgKKwkubG9uZwkxNzMzOTI0MDk2CisJLmxvbmcJMTA3MTY0MDMyNAorCS5sb25nCTM1MTE5MzQ0NzUKKwkubG9uZwkxMDIyNDk2MzU1CisJLmxvbmcJMTA4ODgwMzg0CisJLmxvbmcJMTA3MTY1MTgzOQorCS5sb25nCTYxNTg4MDk2NworCS5sb25nCTEwMjM1MTk3MDYKKwkubG9uZwkzNTE3ODU2NTEyCisJLmxvbmcJMTA3MTY2MTIwMgorCS5sb25nCTMxMTMxMDg1NTkKKwkubG9uZwkxMDI1MTkwMjg5CisJLmxvbmcJNDA0MzE1MzE1MgorCS5sb25nCTEwNzE2NzA1ODkKKwkubG9uZwkxNTcxODM2MjE4CisJLmxvbmcJMTAyMzEwNjExNgorCS5sb25nCTMyNTEyOTkwNzIKKwkubG9uZwkxMDcxNjgwMDAwCisJLmxvbmcJMzQ0NDA3NjEwMgorCS5sb25nCTEwMjIxODc4NDEKKwkubG9uZwkyNzM2OTIxNjAwCisJLmxvbmcJMTA3MTY4OTQzNQorCS5sb25nCTI3Mjc3MTQ4MworCS5sb25nCTEwMjUwOTUyODAKKwkubG9uZwkzODk3Njk4NTYwCisJLmxvbmcJMTA3MTcwMzYzMworCS5sb25nCTIwNzUzOTAxODgKKwkubG9uZwkxMDIyNDg5MDIyCisJLmxvbmcJMzIwOTQ4NTA1NgorCS5sb25nCTEwNzE3MjI2NTIKKwkubG9uZwkxNDM4MDk0MDY1CisJLmxvbmcJMTAyMTg0NDk0NAorCS5sb25nCTM3ODE0MzIwNjQKKwkubG9uZwkxMDcxNzQxNzc0CisJLmxvbmcJMTY3NTAxNzE0NQorCS5sb25nCTEwMjQxNDM4MjgKKwkubG9uZwkyNjg0MTg0MDY0CisJLmxvbmcJMTA3MTc2MTAwMworCS5sb25nCTIyNTk5NjM3NTMKKwkubG9uZwkxMDI0NzMxMzkzCisJLmxvbmcJMTg0MDQ4OTcyOAorCS5sb25nCTEwNzE3ODAzNDIKKwkubG9uZwkzMzcyODgzNTk3CisJLmxvbmcJMTAyMzQzMTQwOAorCS5sb25nCTM3NjQwODc4MDgKKwkubG9uZwkxMDcxNzk5Nzk0CisJLmxvbmcJMzMwNzUyMzEwMgorCS5sb25nCTEwMjQ0ODU3ODgKKwkubG9uZwkzMDA2MjMyMzIwCisJLmxvbmcJMTA3MTgxOTM2NAorCS5sb25nCTMwODg5NzE5NjYKKwkubG9uZwkxMDI1MjEzMjUxCisJLmxvbmcJMzM3NDg4MTI4MAorCS5sb25nCTEwNzE4MzkwNTUKKwkubG9uZwk4MzQ0Mzc3NDkKKwkubG9uZwkxMDI1MjM2NDUyCisJLmxvbmcJNzk3Mjg0ODY0CisJLmxvbmcJMTA3MTg1ODg3MgorCS5sb25nCTMxMjI2NjM5NDEKKwkubG9uZwkxMDI1MzIwNDczCisJLmxvbmcJNTQ1NzY1MTIwCisJLmxvbmcJMTA3MTg3ODgxOAorCS5sb25nCTgyNjUzOTYyNQorCS5sb25nCTEwMjI0NTA5NTUKKwkubG9uZwkxMDc1NjIyNDAKKwkubG9uZwkxMDcxODk4ODk4CisJLmxvbmcJMzM5NTg0NjAwCisJLmxvbmcJMTAyMjQ4MTI1NQorCS5sb25nCTIxMjM2NDkwMjQKKwkubG9uZwkxMDcxOTE5MTE2CisJLmxvbmcJMzkxMjk1OTgzMworCS5sb25nCTEwMjQzMjEwMDkKKwkubG9uZwkxNTYyMzg1NjY0CisJLmxvbmcJMTA3MTkzOTQ3OAorCS5sb25nCTI4NDYwNjcyMzAKKwkubG9uZwkxMDIzMzQzOTgxCisJLmxvbmcJMjk2MzA4NTgyNAorCS5sb25nCTEwNzE5NTk5ODgKKwkubG9uZwk5NTQ1NDg2MjcKKwkubG9uZwkxMDIxNDc1MjExCisJLmxvbmcJMzMyNTU1MDU5MgorCS5sb25nCTEwNzE5ODA2NTIKKwkubG9uZwkzNDU5NjUxMTU1CisJLmxvbmcJMTAyNTMwNTU3MworCS5sb25nCTc3NTc1MjQ0OAorCS5sb25nCTEwNzIwMDE0NzYKKwkubG9uZwkzNTgyNzQ2NjY3CisJLmxvbmcJMTAyMzg1OTQ2MAorCS5sb25nCTMyMzg1OTA3MjAKKwkubG9uZwkxMDcyMDIyNDY0CisJLmxvbmcJNjM0NjM2MTYyCisJLmxvbmcJMTAyNDQ3MjM1MworCS5sb25nCTI3NTg4MDE5MjAKKwkubG9uZwkxMDcyMDQzNjI0CisJLmxvbmcJMzA3ODIxNjMxOQorCS5sb25nCTEwMjUzMDQ1MTYKKwkubG9uZwkxMzcwMzE5MTA0CisJLmxvbmcJMTA3MjA2NDk2MgorCS5sb25nCTI1NzA1NjkwNzgKKwkubG9uZwkxMDI1MDk5NDQyCisJLmxvbmcJMjYxNTgwNTE4NAorCS5sb25nCTEwNzIwODY0ODQKKwkubG9uZwkzNzI5OTMzNDEyCisJLmxvbmcJMTAyNDYwNTExMgorCS5sb25nCTMwNzczMzY1NzYKKwkubG9uZwkxMDcyMTA4MTk4CisJLmxvbmcJMTk0ODkxNjA2NgorCS5sb25nCTEwMjQ3ODE2MDMKKwkubG9uZwkxMDk5NTI4MTkyCisJLmxvbmcJMTA3MjEzMDExMgorCS5sb25nCTMxMzkxNDMxNTcKKwkubG9uZwkxMDIzNzI5MzYwCisJLmxvbmcJMTIzMTkwMzIzMgorCS5sb25nCTEwNzIxNTIyMzMKKwkubG9uZwkxMzQ5NTEzNDc3CisJLmxvbmcJMTAyNDczNzUxNQorCS5sb25nCTE1MDc1MDQxMjgKKwkubG9uZwkxMDcyMTc0NTcwCisJLmxvbmcJMzQ4NDUxNjMyMgorCS5sb25nCTEwMjQwMDA5NTkKKwkubG9uZwkyMjE0NjU5ODQwCisJLmxvbmcJMTA3MjE5NzEzMgorCS5sb25nCTI1NjM4MjA5MTcKKwkubG9uZwkxMDI1MjI1NTM1CisJLmxvbmcJMTgwNDczOTg0MAorCS5sb25nCTEwNzIyMTk5MjkKKwkubG9uZwk3NjAwMzg3NDYKKwkubG9uZwkxMDI0NDgyODU1CisJLmxvbmcJMTQxMzc0NjY4OAorCS5sb25nCTEwNzIyNDI5NzEKKwkubG9uZwkzNDAxNzM0NzE0CisJLmxvbmcJMTAyNTEyOTgzOAorCS5sb25nCTgyMTQwOTUzNgorCS5sb25nCTEwNzIyNjYyNjkKKwkubG9uZwkzNzI5NzcyNTUxCisJLmxvbmcJMTAyNTQ4NDc5NgorCS5sb25nCTMwMzE4MjU2NjQKKwkubG9uZwkxMDcyMjg5ODM0CisJLmxvbmcJMTIyMjU2NzQ5CisJLmxvbmcJMTAyNDc1MjU5NAorCS5sb25nCTE3MTA3ODQyNTYKKwkubG9uZwkxMDcyMzEzNjgwCisJLmxvbmcJMTUxODIwNTQ4MworCS5sb25nCTEwMjQ3MjQ4MDkKKwkubG9uZwkzMDI1MjY1MTUyCisJLmxvbmcJMTA3MjMzNzgxOQorCS5sb25nCTQwOTk1MTk4OQorCS5sb25nCTEwMjI4MzU1NTUKKwkubG9uZwkyODc3NjkwODgKKwkubG9uZwkxMDcyMzYyMjY3CisJLmxvbmcJODAwMzU1NTk0CisJLmxvbmcJMTAyMjQ4NDg1MAorCS5sb25nCTE5ODE3OTg0MAorCS5sb25nCTEwNzIzODcwMzgKKwkubG9uZwkzNTAyOTI2MjEzCisJLmxvbmcJMTAyNDIwOTM3MworCS5sb25nCTE5MDkxMzA0OTYKKwkubG9uZwkxMDcyNDEyMTQ5CisJLmxvbmcJMzA2NDY5NDMxOQorCS5sb25nCTEwMjUzODA4MjMKKwkubG9uZwkxOTQxNzMyMDk2CisJLmxvbmcJMTA3MjQzNzYxOQorCS5sb25nCTQxMTI5MzAzOTAKKwkubG9uZwkxMDI0Mjk0Njc5CisJLmxvbmcJMzQ5MjAxMDQ5NgorCS5sb25nCTEwNzI0NjM0NjcKKwkubG9uZwkyNjg0OTE4MTA3CisJLmxvbmcJMTAyMzIyMDIzMworCS5sb25nCTgxOTU5NjgwCisJLmxvbmcJMTA3MjQ4OTcxNgorCS5sb25nCTIyMDAyMTM2NgorCS5sb25nCTEwMjA2MzUxMzEKKwkubG9uZwkyMjk3ODM3MDU2CisJLmxvbmcJMTA3MjUxNjM4NworCS5sb25nCTQwMjc2ODM4MjYKKwkubG9uZwkxMDIxMDQxMTg1CisJLmxvbmcJMjcwNDA0MDk2CisJLmxvbmcJMTA3MjU0MzUwOAorCS5sb25nCTIwMTI3NjYwNjUKKwkubG9uZwkxMDIxNzgwNzUzCisJLmxvbmcJMzY2NzM3Njg5NgorCS5sb25nCTEwNzI1NzExMDUKKwkubG9uZwkyNzI3OTgxNTIyCisJLmxvbmcJMTAyMzAwOTg3NAorCS5sb25nCTMzMDQwMDI1NgorCS5sb25nCTEwNzI1OTkyMTIKKwkubG9uZwkyOTQwMDE3MDAzCisJLmxvbmcJMTAyNTM5MzQzOQorCS5sb25nCTExMTkyOTM5NTIKKwkubG9uZwkxMDcyNjI3ODYxCisJLmxvbmcJMTYwODU1MDQxNgorCS5sb25nCTEwMjI2NzU2MTIKKwkubG9uZwkzNTM2MTU1OTA0CisJLmxvbmcJMTA3MjY1NzA5MQorCS5sb25nCTM0OTY2NTc3OAorCS5sb25nCTEwMjUxNTY3NTEKKwkubG9uZwkzMDc4MDQ2NzIwCisJLmxvbmcJMTA3MjY4Njk0NgorCS5sb25nCTIwMTYxNTk5OTYKKwkubG9uZwkxMDIyMTkzMTY5CisJLmxvbmcJNDU1MjI4NDE2CisJLmxvbmcJMTA3MjcwNTM2MQorCS5sb25nCTE5MDg1MzkzMjgKKwkubG9uZwkxMDI2MTI2MzMyCisJLmxvbmcJMTg3MTUwNTY2NAorCS5sb25nCTEwNzI3MjA5ODgKKwkubG9uZwkyNzg0NzAwODk0CisJLmxvbmcJMTAyNTkyMjI3NworCS5sb25nCTE2MzA5OTQ0MzIKKwkubG9uZwkxMDcyNzM3MDEwCisJLmxvbmcJMzYxMTA3Njc4CisJLmxvbmcJMTAyMjg4NzI0NAorCS5sb25nCTIwODQ1NTgzMzYKKwkubG9uZwkxMDcyNzUzNDYyCisJLmxvbmcJMjY0Mjc4NDUwOQorCS5sb25nCTEwNzI2ODkwODMKKwkubG9uZwkxNTE0NDQyNTMxCisJLmxvbmcJMTA3MjY4ODk1MworCS5sb25nCTMzMzEwODkzMworCS5sb25nCTEwNzI2ODg4MjEKKwkubG9uZwkzMzkyMTEyMDI0CisJLmxvbmcJMTA3MjY4ODY4NgorCS5sb25nCTIwOTk4NTI4NjIKKwkubG9uZwkxMDcyNjg4NTUwCisJLmxvbmcJNzQ5NjA5MDA0CisJLmxvbmcJMTA3MjY4ODQxMgorCS5sb25nCTM2MzQ2MzI1OTYKKwkubG9uZwkxMDcyNjg4MjcxCisJLmxvbmcJMjE2MzI0ODQ2MQorCS5sb25nCTEwNzI2ODgxMjkKKwkubG9uZwk2Mjg2NTc4NDYKKwkubG9uZwkxMDcyNjg3OTg1CisJLmxvbmcJMzMyNDAzNjUxMQorCS5sb25nCTEwNzI2ODc4MzgKKwkubG9uZwkxNjU3NjMyODE1CisJLmxvbmcJMTA3MjY4NzY5MAorCS5sb25nCTQyMTc1Mzg3NjAKKwkubG9uZwkxMDcyNjg3NTM5CisJLmxvbmcJMjQxMTk1MTU5NworCS5sb25nCTEwNzI2ODczODcKKwkubG9uZwk1MzM5NDQ4NzIKKwkubG9uZwkxMDcyNjg3MjMzCisJLmxvbmcJMjg3NjU2NjUwOAorCS5sb25nCTEwNzI2ODcwNzYKKwkubG9uZwk4NDc5MzY4OTEKKwkubG9uZwkxMDcyNjg2OTE4CisJLmxvbmcJMzAzNjAxOTkxMworCS5sb25nCTEwNzI2ODY3NTcKKwkubG9uZwk4NDg4ODQ1NzUKKwkubG9uZwkxMDcyNjg2NTk1CisJLmxvbmcJMjg3NDQ0MzMyNgorCS5sb25nCTEwNzI2ODY0MzAKKwkubG9uZwk1MjA3MTM2NjYKKwkubG9uZwkxMDcyNjg2MjY0CisJLmxvbmcJMjM3NTU1NjQ4MQorCS5sb25nCTEwNzI2ODYwOTUKKwkubG9uZwk0MTQxOTA0OTQ4CisJLmxvbmcJMTA3MjY4NTkyNAorCS5sb25nCTE1MjI2NjYzODIKKwkubG9uZwkxMDcyNjg1NzUyCisJLmxvbmcJMzEwNTYyNDEwNAorCS5sb25nCTEwNzI2ODU1NzcKKwkubG9uZwkyOTg2NjYzMjcKKwkubG9uZwkxMDcyNjg1NDAxCisJLmxvbmcJMTY4OTUyNDUwMAorCS5sb25nCTEwNzI2ODUyMjIKKwkubG9uZwkyOTgxMDAyMjAwCisJLmxvbmcJMTA3MjY4NTA0MQorCS5sb25nCTQxNzA4NDQyODQKKwkubG9uZwkxMDcyNjg0ODU4CisJLmxvbmcJOTYxODAyMjYzCisJLmxvbmcJMTA3MjY4NDY3NAorCS5sb25nCTE5NDE1MDM0NTQKKwkubG9uZwkxMDcyNjg0NDg3CisJLmxvbmcJMjgxMjY0NzE3MAorCS5sb25nCTEwNzI2ODQyOTgKKwkubG9uZwkzNTcyODczODY5CisJLmxvbmcJMTA3MjY4NDEwNworCS5sb25nCTQyMTk3OTc4MjMKKwkubG9uZwkxMDcyNjgzOTE0CisJLmxvbmcJNDU2MDM5Nzg4CisJLmxvbmcJMTA3MjY4MzcyMAorCS5sb25nCTg2OTA5NjE1MQorCS5sb25nCTEwNzI2ODM1MjMKKwkubG9uZwkxMTYxNTM1MTE5CisJLmxvbmcJMTA3MjY4MzMyNAorCS5sb25nCTEzMzA4NjU4NjYKKwkubG9uZwkxMDcyNjgzMTIzCisJLmxvbmcJMTM3NDU3MTIwNAorCS5sb25nCTEwNzI2ODI5MjAKKwkubG9uZwkxMjkwMTA3NTM4CisJLmxvbmcJMTA3MjY4MjcxNQorCS5sb25nCTEwNzQ5MDQ4MzYKKwkubG9uZwkxMDcyNjgyNTA4CisJLmxvbmcJNzI2MzY2NTg3CisJLmxvbmcJMTA3MjY4MjI5OQorCS5sb25nCTI0MTg2OTc2MworCS5sb25nCTEwNzI2ODIwODgKKwkubG9uZwkzOTEzNzMyMDc5CisJLmxvbmcJMTA3MjY4MTg3NAorCS5sb25nCTMxNDkzNDI3NjUKKwkubG9uZwkxMDcyNjgxNjU5CisJLmxvbmcJMjI0MDk2NjMwNgorCS5sb25nCTEwNzI2ODE0NDIKKwkubG9uZwkxMTg1ODczMjE2CisJLmxvbmcJMTA3MjY4MTIyMworCS5sb25nCTQyNzYyNzQ1OTEKKwkubG9uZwkxMDcyNjgxMDAxCisJLmxvbmcJMjkxOTQ1Mjg4MworCS5sb25nCTEwNzI2ODA3NzgKKwkubG9uZwkxNDA3NTY1NjM1CisJLmxvbmcJMTA3MjY4MDU1MworCS5sb25nCTQwMzI3NDM1NTEKKwkubG9uZwkxMDcyNjgwMzI1CisJLmxvbmcJMjIwMjE4ODU2NQorCS5sb25nCTEwNzI2ODAwOTYKKwkubG9uZwkyMDc5Nzc1NzcKKwkubG9uZwkxMDcyNjc5ODY1CisJLmxvbmcJMjM0MjE2MDUxOAorCS5sb25nCTEwNzI2Nzk2MzEKKwkubG9uZwkxMTg1ODQyMworCS5sb25nCTEwNzI2NzkzOTYKKwkubG9uZwkxODA0MDM0NDUzCisJLmxvbmcJMTA3MjY3OTE1OAorCS5sb25nCTM0MjA3MjI3ODcKKwkubG9uZwkxMDcyNjc4OTE4CisJLmxvbmcJNTYzOTMwNDU2CisJLmxvbmcJMTA3MjY3ODY3NworCS5sb25nCTE4MjA1MzkxOTIKKwkubG9uZwkxMDcyNjc4NDMzCisJLmxvbmcJMjg5MjUwMTYwNgorCS5sb25nCTEwNzI2NzgxODcKKwkubG9uZwkzNzc2NzEwMzIwCisJLmxvbmcJMTA3MjY3NzkzOQorCS5sb25nCTE3NTA2MzMzNworCS5sb25nCTEwNzI2Nzc2OTAKKwkubG9uZwk2NzQzMzMxNzEKKwkubG9uZwkxMDcyNjc3NDM4CisJLmxvbmcJOTc2MzYzMDI2CisJLmxvbmcJMTA3MjY3NzE4NAorCS5sb25nCTEwNzc5MzU5MzQKKwkubG9uZwkxMDcyNjc2OTI4CisJLmxvbmcJMTkyMTA3NTQ5MAorCS5sb25nCTEwNzI2NzY1NDAKKwkubG9uZwk4ODE0OTMzMDIKKwkubG9uZwkxMDcyNjc2MDE2CisJLmxvbmcJMzI3NTc1MjQzOQorCS5sb25nCTEwNzI2NzU0ODMKKwkubG9uZwk0ODY4NTU1ODgKKwkubG9uZwkxMDcyNjc0OTQzCisJLmxvbmcJMTA3NzIyOTExMQorCS5sb25nCTEwNzI2NzQzOTQKKwkubG9uZwk3MjM5NTAzMDgKKwkubG9uZwkxMDcyNjczODM3CisJLmxvbmcJMzY5MzU4MjE5OQorCS5sb25nCTEwNzI2NzMyNzEKKwkubG9uZwkxMzY3MzM1MzE2CisJLmxvbmcJMTA3MjY3MjY5OAorCS5sb25nCTIzMDU4MzcwMjAKKwkubG9uZwkxMDcyNjcyMTE2CisJLmxvbmcJMjE4NDM1ODY0MQorCS5sb25nCTEwNzI2NzE1MjYKKwkubG9uZwk5NzI2ODI4NDAKKwkubG9uZwkxMDcyNjcwOTI4CisJLmxvbmcJMjkzNTEwMTc2MgorCS5sb25nCTEwNzI2NzAzMjEKKwkubG9uZwkzNzQ1NTEzMjYzCisJLmxvbmcJMTA3MjY2OTcwNgorCS5sb25nCTMzNzIzMjA4ODYKKwkubG9uZwkxMDcyNjY5MDgzCisJLmxvbmcJMTc4MzQ2NDYyMAorCS5sb25nCTEwNzI2Njg0NTIKKwkubG9uZwkzMjQxMzg2MjE1CisJLmxvbmcJMTA3MjY2NzgxMgorCS5sb25nCTM0MTgxMjUyODQKKwkubG9uZwkxMDcyNjY3MTY0CisJLmxvbmcJMjI4MDIxOTE0OAorCS5sb25nCTEwNzI2NjY1MDgKKwkubG9uZwk0MDg4NzAwNzU4CisJLmxvbmcJMTA3MjY2NTg0MworCS5sb25nCTIxOTIyNzQwMAorCS5sb25nCTEwNzI2NjUxNzEKKwkubG9uZwkzNTIxODE2OTE4CisJLmxvbmcJMTA3MjY2NDQ4OQorCS5sb25nCTEwNzYyMDUyNzkKKwkubG9uZwkxMDcyNjYzODAwCisJLmxvbmcJMTQzNjQ4NDYxNgorCS5sb25nCTEwNzI2NjMxMDIKKwkubG9uZwkyNzEzNjI2MTAKKwkubG9uZwkxMDcyNjYyMzk2CisJLmxvbmcJMTgzODk5NjY4OAorCS5sb25nCTEwNzI2NjE2ODEKKwkubG9uZwkxODA3MTIyNTE4CisJLmxvbmcJMTA3MjY2MDk1OAorCS5sb25nCTEzNzk1MzU0MgorCS5sb25nCTEwNzI2NjAyMjcKKwkubG9uZwkxMDg4MTc4NTg0CisJLmxvbmcJMTA3MjY1OTQ4NworCS5sb25nCTMyNDA1NzUzNworCS5sb25nCTEwNzI2NTg3MzkKKwkubG9uZwkyMTAxMjg4MDc2CisJLmxvbmcJMTA3MjY1Nzk4MgorCS5sb25nCTIwODUxMzM5NzQKKwkubG9uZwkxMDcyNjU3MjE3CisJLmxvbmcJMjM1MzI0NDUxCisJLmxvbmcJMTA3MjY1NjQ0NAorCS5sb25nCTgwNjA1MTU5MgorCS5sb25nCTEwNzI2NTU2NjIKKwkubG9uZwkzNzU2MDMzMTQwCisJLmxvbmcJMTA3MjY1NDg3MQorCS5sb25nCTQ1MzU0MjU0MworCS5sb25nCTEwNzI2NTQwNzMKKwkubG9uZwkzNzQxMTc3MzI3CisJLmxvbmcJMTA3MjY1MzI2NQorCS5sb25nCTY5MTIxNjEwOQorCS5sb25nCTEwNzI2NTI0NTAKKwkubG9uZwk0MTQ1MjIzMzcyCisJLmxvbmcJMTA3MjY1MTYyNQorCS5sb25nCTExNzQ0MzkwOTEKKwkubG9uZwkxMDcyNjUwNzkzCisJLmxvbmcJMzI0NDE2MTM5CisJLmxvbmcJMTA3MjY0OTk1MgorCS5sb25nCTE1NTAyNDYzMTAKKwkubG9uZwkxMDcyNjQ5MTAyCisJLmxvbmcJNTExNTI0Njc0CisJLmxvbmcJMTA3MjY0ODI0NAorCS5sb25nCTE0NTcyNDg0ODIKKwkubG9uZwkxMDcyNjQ3Mzc3CisJLmxvbmcJNDU5NDQ5NTUKKwkubG9uZwkxMDcyNjQ2NTAyCisJLmxvbmcJNTI1NTM3Mzk3CisJLmxvbmcJMTA3MjY0NTYxOAorCS5sb25nCTI4NDg0NDAxODgKKwkubG9uZwkxMDcyNjQ0NzI1CisJLmxvbmcJMjY3MTU1NTYzMworCS5sb25nCTEwNzI2NDM4MjQKKwkubG9uZwk0MjQxMTcyNjM3CisJLmxvbmcJMTA3MjY0MjkxNAorCS5sb25nCTMyMTMwOTQyNzgKKwkubG9uZwkxMDcyNjQxOTk2CisJLmxvbmcJMzgzMjUwMzY4OAorCS5sb25nCTEwNzI2NDEwNjkKKwkubG9uZwkxNzU0MDkxNTM0CisJLmxvbmcJMTA3MjY0MDEzNAorCS5sb25nCTEyMjE5MjE4MDQKKwkubG9uZwkxMDcyNjM5MTkwCisJLmxvbmcJMjE4NDUyNjQ4OQorCS5sb25nCTEwNzI2MzgyMzcKKwkubG9uZwkyOTQ5MDIwODkKKwkubG9uZwkxMDcyNjM3Mjc2CisJLmxvbmcJNDA5MDM3NTI3MAorCS5sb25nCTEwNzI2MzYzMDUKKwkubG9uZwk2MzI4NjA5MDYKKwkubG9uZwkxMDcyNjM1MzI3CisJLmxvbmcJMjc1MzQ5ODcwMgorCS5sb25nCTEwNzI2MzQzMzkKKwkubG9uZwkxODA4MDA5MjUyCisJLmxvbmcJMTA3MjYzMzM0MworCS5sb25nCTIwMzY0Mjg2NzIKKwkubG9uZwkxMDcyNjMyMzM4CisJLmxvbmcJMzM4MzIzNTYyNgorCS5sb25nCTEwNzI2MzEzMjQKKwkubG9uZwkxNDk3MzQ3NDg0CisJLmxvbmcJMTA3MjYzMDMwMgorCS5sb25nCTYxNzAxODMxNworCS5sb25nCTEwNzI2MjkyNzEKKwkubG9uZwk2ODQ5MzMwNTgKKwkubG9uZwkxMDcyNjI4MjMxCisJLmxvbmcJMTY0MzE3MDc5OAorCS5sb25nCTEwNzI2MjcxODIKKwkubG9uZwkzMDExMDY2MzYwCisJLmxvbmcJMTA3MjYyNTU5MgorCS5sb25nCTk1NzE1ODcxMworCS5sb25nCTEwNzI2MjM0NDIKKwkubG9uZwkxMzkwOTA3OTQxCisJLmxvbmcJMTA3MjYyMTI1NgorCS5sb25nCTM4MTkxNTUyNzAKKwkubG9uZwkxMDcyNjE5MDM0CisJLmxvbmcJMzQ0MzU3MTE5NgorCS5sb25nCTEwNzI2MTY3NzcKKwkubG9uZwk0MDQ1NDEyNDU4CisJLmxvbmcJMTA3MjYxNDQ4NAorCS5sb25nCTgwNTUwMzkyMworCS5sb25nCTEwNzI2MTIxNTYKKwkubG9uZwkxNzc4OTIyMDE1CisJLmxvbmcJMTA3MjYwOTc5MQorCS5sb25nCTIxMjUwMzM2NjUKKwkubG9uZwkxMDcyNjA3MzkwCisJLmxvbmcJMTI4NzIwMzg2MworCS5sb25nCTEwNzI2MDQ5NTMKKwkubG9uZwkyOTkyNjI5NTY4CisJLmxvbmcJMTA3MjYwMjQ3OQorCS5sb25nCTIzNjcyNjcxMjcKKwkubG9uZwkxMDcyNTk5OTY5CisJLmxvbmcJMzExNTUyNjA0NworCS5sb25nCTEwNzI1OTc0MjIKKwkubG9uZwkzNDAyMTk1MzkKKwkubG9uZwkxMDcyNTk0ODM5CisJLmxvbmcJMjAxNzIxNTcxOQorCS5sb25nCTEwNzI1OTIyMTgKKwkubG9uZwkzMjI1NDQzNDI0CisJLmxvbmcJMTA3MjU4OTU2MAorCS5sb25nCTMzMjY1NjU2NzMKKwkubG9uZwkxMDcyNTg2ODY1CisJLmxvbmcJMTY2OTgxMTIxMQorCS5sb25nCTEwNzI1ODQxMzMKKwkubG9uZwkxODg2NzM1MDIyCisJLmxvbmcJMTA3MjU4MTM2MworCS5sb25nCTMzMDEwNzExNzEKKwkubG9uZwkxMDcyNTc4NTU1CisJLmxvbmcJOTI4NTE0MjgzCisJLmxvbmcJMTA3MjU3NTcxMAorCS5sb25nCTI2NTYzNjQwNTkKKwkubG9uZwkxMDcyNTcyODI2CisJLmxvbmcJMzQ3MzQ5MDUwNworCS5sb25nCTEwNzI1Njk5MDQKKwkubG9uZwkyNjQ5OTY1NjA2CisJLmxvbmcJMTA3MjU2Njk0NAorCS5sb25nCTM3MzY4MTkwNTIKKwkubG9uZwkxMDcyNTYzOTQ1CisJLmxvbmcJMTY4MDg4NTE3NQorCS5sb25nCTEwNzI1NjA5MDgKKwkubG9uZwk0NDEzNzcxCisJLmxvbmcJMTA3MjU1NzgzMgorCS5sb25nCTIyMTQ4Njk3NTMKKwkubG9uZwkxMDcyNTU0NzE2CisJLmxvbmcJMzIxNDcyNTE4NAorCS5sb25nCTEwNzI1NTE1NjEKKwkubG9uZwkyMTg2MDc5OTAzCisJLmxvbmcJMTA3MjU0ODM2NworCS5sb25nCTI1OTAzNzIxMzEKKwkubG9uZwkxMDcyNTQ1MTMzCisJLmxvbmcJMzU3ODE0NjA3OQorCS5sb25nCTEwNzI1NDE4NTkKKwkubG9uZwk0MjgzNzEyNzU1CisJLmxvbmcJMTA3MjUzODU0NQorCS5sb25nCTM4MjQ4MzQ1MTAKKwkubG9uZwkxMDcyNTM1MTkxCisJLmxvbmcJMTMwMjQwMDI5OAorCS5sb25nCTEwNzI1MzE3OTcKKwkubG9uZwk5NTA1ODYzNgorCS5sb25nCTEwNzI1MjgzNjIKKwkubG9uZwkzNTYzOTA2MDYzCisJLmxvbmcJMTA3MjUyNDg4NQorCS5sb25nCTIxNjcyMzA3MzAKKwkubG9uZwkxMDcyNTIxMzY4CisJLmxvbmcJMzUyNDkxODMzNAorCS5sb25nCTEwNzI1MTc4MDkKKwkubG9uZwkyMzUzMzA0OTE4CisJLmxvbmcJMTA3MjUxNDIwOQorCS5sb25nCTE5Mzk2MjU4MzkKKwkubG9uZwkxMDcyNTEwNTY3CisJLmxvbmcJMTI1NjcxNDU4MQorCS5sb25nCTEwNzI1MDY4ODMKKwkubG9uZwkzNTUyNTI1ODQ4CisJLmxvbmcJMTA3MjUwMzE1NgorCS5sb25nCTM0NjQ4MDk1MjIKKwkubG9uZwkxMDcyNDk5Mzg3CisJLmxvbmcJNDIwMDU0MjU5MworCS5sb25nCTEwNzI0OTU1NzUKKwkubG9uZwkzNTU2MDkxMjQKKwkubG9uZwkxMDcyNDkxNzIxCisJLmxvbmcJMzY4NDEzOTA5OQorCS5sb25nCTEwNzI0ODc4MjIKKwkubG9uZwkxNDgzNTU5MTgKKwkubG9uZwkxMDcyNDgzODgxCisJLmxvbmcJMTQ1NzY4OTI0MgorCS5sb25nCTEwNzI0Nzk4OTUKKwkubG9uZwkyMTE4NTkxNTk2CisJLmxvbmcJMTA3MjQ3NTg2NQorCS5sb25nCTkwODg0ODA4OQorCS5sb25nCTEwNzI0NzE3OTEKKwkubG9uZwk4NzcwMzI2ODkKKwkubG9uZwkxMDcyNDY3NjcyCisJLmxvbmcJNzUyMDEyMzA0CisJLmxvbmcJMTA3MjQ2MzUwOAorCS5sb25nCTM1MzIzMDE3NDkKKwkubG9uZwkxMDcyNDU5Mjk4CisJLmxvbmcJMzYwMDU2MzIyMQorCS5sb25nCTEwNzI0NTUwNDMKKwkubG9uZwkzOTAyODU3MDg0CisJLmxvbmcJMTA3MjQ1MDc0MgorCS5sb25nCTMwNjMxMDEwMzYKKwkubG9uZwkxMDcyNDQ2Mzk1CisJLmxvbmcJMzk3MjM0NDM3NAorCS5sb25nCTEwNzI0NDIwMDEKKwkubG9uZwk5MDMxODM1NDkKKwkubG9uZwkxMDcyNDM3NTYxCisJLmxvbmcJOTgzODkyOTM4CisJLmxvbmcJMTA3MjQzMzA3MworCS5sb25nCTI3MjI4NTg1NjgKKwkubG9uZwkxMDcyNDI4NTM3CisJLmxvbmcJMzAyNzkwNTE1CisJLmxvbmcJMTA3MjQyMzk1NAorCS5sb25nCTc1OTgxMTA1NworCS5sb25nCTEwNzI0MTkzMjIKKwkubG9uZwkyNTA3ODA5OTIyCisJLmxvbmcJMTA3MjQxNDY0MQorCS5sb25nCTIzODg0MDg4MTMKKwkubG9uZwkxMDcyNDA3NTI4CisJLmxvbmcJMjA4NDQ5Mjk0MgorCS5sb25nCTEwNzIzOTc4NzAKKwkubG9uZwkyNDM1NzAzMzAxCisJLmxvbmcJMTA3MjM4ODAxMAorCS5sb25nCTE5MzU0MzMzNjAKKwkubG9uZwkxMDcyMzc3OTQ1CisJLmxvbmcJMjc0MjA0NzI5MAorCS5sb25nCTEwNzIzNjc2NzEKKwkubG9uZwkyMDUzMjg0MjA1CisJLmxvbmcJMTA3MjM1NzE4NQorCS5sb25nCTY1Nzc4MzM2NworCS5sb25nCTEwNzIzNDY0ODMKKwkubG9uZwkyODkzNjY0ODQxCisJLmxvbmcJMTA3MjMzNTU2MAorCS5sb25nCTM3MTg5MDY0MDUKKwkubG9uZwkxMDcyMzI0NDEzCisJLmxvbmcJMTU0Nzg5NjMwMworCS5sb25nCTEwNzIzMTMwMzgKKwkubG9uZwkyNDk0MDU4NDQwCisJLmxvbmcJMTA3MjMwMTQyOQorCS5sb25nCTMxMzMyMzg3NDIKKwkubG9uZwkxMDcyMjg5NTgyCisJLmxvbmcJMzMyNzAwMDA4NgorCS5sb25nCTEwNzIyNzc0OTIKKwkubG9uZwkxODYwNjY3Mjc0CisJLmxvbmcJMTA3MjI2NTE1NAorCS5sb25nCTY2NTM0MDc0NworCS5sb25nCTEwNzIyNTI1NjIKKwkubG9uZwk0NDMzNDc4NDEKKwkubG9uZwkxMDcyMjM5NzEwCisJLmxvbmcJNTgxMjgyNjE4CisJLmxvbmcJMTA3MjIyNjU5MgorCS5sb25nCTMzNDk3ODA0NjUKKwkubG9uZwkxMDcyMjEzMjAxCisJLmxvbmcJOTE0MjE3NjA2CisJLmxvbmcJMTA3MjE5OTUzMgorCS5sb25nCTk4OTc5NzY2MQorCS5sb25nCTEwNzIxODU1NzYKKwkubG9uZwk5NDU0MzY0MTYKKwkubG9uZwkxMDcyMTcxMzI2CisJLmxvbmcJNTQ5MjkxMzAwCisJLmxvbmcJMTA3MjE1Njc3NAorCS5sb25nCTE4MTQ2MzYzODkKKwkubG9uZwkxMDcyMTQxOTExCisJLmxvbmcJMjM5MDkyODU4CisJLmxvbmcJMTA3MjEyNjcyOQorCS5sb25nCTE3OTQ2ODA3MjQKKwkubG9uZwkxMDcyMTExMjE3CisJLmxvbmcJMTI0MTUzNDY3OAorCS5sb25nCTEwNzIwOTUzNjYKKwkubG9uZwkzMzY2NTY2MjE0CisJLmxvbmcJMTA3MjA3OTE2NAorCS5sb25nCTEyNDQwOTA4MjgKKwkubG9uZwkxMDcyMDYyNjAxCisJLmxvbmcJMTcwODQ0ODEyMAorCS5sb25nCTEwNzIwNDU2NjMKKwkubG9uZwkzNTQ0MjYwNjUwCisJLmxvbmcJMTA3MjAyODMzNworCS5sb25nCTE0MDI3NDE0MDMKKwkubG9uZwkxMDcyMDEwNjEwCisJLmxvbmcJMjU1MTkzNjg4OAorCS5sb25nCTEwNzE5OTI0NjUKKwkubG9uZwk2MTc2Njk3MzkKKwkubG9uZwkxMDcxOTczODg3CisJLmxvbmcJNzk0MDAyMTg2CisJLmxvbmcJMTA3MTk1NDg1NworCS5sb25nCTIwMjEyMzc2OTMKKwkubG9uZwkxMDcxOTM1MzU2CisJLmxvbmcJNTQwNDUwMzg0CisJLmxvbmcJMTA3MTkxNTM2NAorCS5sb25nCTE5MjA1NTU1MzcKKwkubG9uZwkxMDcxODk0ODU3CisJLmxvbmcJMjg3OTU4NTIwNgorCS5sb25nCTEwNzE4NzM4MTEKKwkubG9uZwkzMDAwMjM3NDU1CisJLmxvbmcJMTA3MTg1MjE5OQorCS5sb25nCTMzNTI5NzQzNDYKKwkubG9uZwkxMDcxODI5OTkxCisJLmxvbmcJNTY5NjI5OTM3CisJLmxvbmcJMTA3MTgwNzE1NQorCS5sb25nCTIwNzcyMzcyMDgKKwkubG9uZwkxMDcxNzgzNjUzCisJLmxvbmcJMjI4NDg5MTgwNQorCS5sb25nCTEwNzE3NTk0NDYKKwkubG9uZwkxMjI2NjUxNzg0CisJLmxvbmcJMTA3MTczNDQ4OQorCS5sb25nCTExMDIwNDc0MDUKKwkubG9uZwkxMDcxNzA4NzMxCisJLmxvbmcJMjAwOTg5NjM4NAorCS5sb25nCTEwNzE2ODIxMTUKKwkubG9uZwk5Mjc0MTkwODIKKwkubG9uZwkxMDcxNjU0NTc3CisJLmxvbmcJODUwMTAzNjYKKwkubG9uZwkxMDcxNjA3NDEzCisJLmxvbmcJNjk2NDMxMDI1CisJLmxvbmcJMTA3MTU0ODE4MAorCS5sb25nCTI2MTE0MTA1NDEKKwkubG9uZwkxMDcxNDg2NTg1CisJLmxvbmcJMjYxMjU5MzY1OAorCS5sb25nCTEwNzE0MjIzOTYKKwkubG9uZwkzNTQ4MTU1MzA2CisJLmxvbmcJMTA3MTM1NTMzNgorCS5sb25nCTM4ODc5OTc0ODQKKwkubG9uZwkxMDcxMjg1MDczCisJLmxvbmcJMjQ0ODU0NzYzCisJLmxvbmcJMTA3MTIxMTIwMgorCS5sb25nCTQyMTQ0NDU2NDgKKwkubG9uZwkxMDcxMTMzMjE2CisJLmxvbmcJMjMwMzk2NjcyNworCS5sb25nCTEwNzEwNTA0NzgKKwkubG9uZwkzOTkxMDQwMDEzCisJLmxvbmcJMTA3MDk2MjE1MgorCS5sb25nCTMxMjY5NTIyNzgKKwkubG9uZwkxMDcwODY3MTE4CisJLmxvbmcJMTgxNzQ0ODM3OAorCS5sb25nCTEwNzA3NjM4MDQKKwkubG9uZwkxNzkzODE0ODY0CisJLmxvbmcJMTA3MDY0OTg4NAorCS5sb25nCTM1MDcyMjQwNzIKKwkubG9uZwkxMDcwNDQ3MTkzCisJLmxvbmcJNDAyNzYwOTEwNQorCS5sb25nCTEwNzAxNDg3NzIKKwkubG9uZwk1Nzc1MDc5OTMKKwkubG9uZwkxMDY5Nzc5NDE0CisJLmxvbmcJMjMxMDIzMjQxOQorCS5sb25nCTEwNjg5MzE4MjkKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE2MTc4MjE0CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzMyOTE3NzEKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkzMTY0NzEwNDM4CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTMyMjE4MjM5OTUKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE3MjI2NzkwCisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzQzNDAzNDcKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQxNjA3NDk1NjgKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMzIxNzM4MDY5MworCS5sb25nCTg1ODk5MzQ1OQorCS5sb25nCTMyMTYxOTIzMDcKKwkubG9uZwkzMDY3ODMzNzgzCisJLmxvbmcJMzIxNTM4MzQwNQorCS5sb25nCTc4MDkwMzE0NQorCS5sb25nCTEwNjY4NTQ1ODYKKwkubG9uZwk4NTg5OTM0NTkKKwkubG9uZwkxMDY4NzA4NjU5CisJLmxvbmcJMzM0MDUzMDExOQorCS5sb25nCTEwNjczOTIxMTMKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA2OTg5NzA0NQorCS5sb25nCTEzMjE1MjgzOTkKKwkubG9uZwkxMDY2NTE3NzQwCisJLmxvbmcJMzA2NzgzMzc4MworCS5sb25nCTEwNjc4OTk3NTcKKwkubG9uZwkyMDIxMTU5NDYwCisJLmxvbmcJMTA2NTg1NTA5NgorCS5sb25nCTI1NzY5ODAzNzgKKwkubG9uZwkxMDY2MTc4OTY5CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTIxNDc0ODM2NDcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTUwOTEyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkwCisJLmxvbmcJMAorCS50eXBlCXN0YXRpY19jb25zdF90YWJsZSxAb2JqZWN0CisJLnNpemUJc3RhdGljX2NvbnN0X3RhYmxlLDYxMTIKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Ni9lX2FzaW4uUyBiL2xpYm0veDg2L2VfYXNpbi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVkN2YzMzEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9lX2FzaW4uUwpAQCAtMCwwICsxLDIwMDMgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgVG8gY29tcHV0ZSBhc2luKHMpLCBzZXBhcmF0ZSBzY2hlbWVzIGFyZSB1c2VkIHdoZW4gcyBpcyBpbiBkaWZmZXJlbnQKKy8vICBpbnRlcnZhbHMuCisvLworLy8gIHxzfCBpbiBbMl57LTR9LCBzcXJ0KDMpLzIpOgorLy8gICAgICAgTGV0IHQ9Ml5rKjEuYjEgYjIuLmI2IDEsIHdoZXJlIHM9Ml5rKjEuYjEgYjIgLi4gYjUyCisvLyAgICAgICBhc2luKHMpPWFzaW4odCkrYXNpbihyKSwgd2hlcmUgcj1zKnNxcnQoMS10XjIpLXQqc3FydCgxLXNeMikKKy8vICAgICAgIGFzaW4ociktciBldmFsdWF0ZWQgYXMgNy1kZWdyZWUgcG9seW5vbWlhbCAoYzMqcl4zK2M1KnJeNStjNypyXjcpCisvLyAgICAgICBGb3IgdGhlIGZpcnN0IGRlZ3JlZSB0ZXJtLCByIGlzIGV2YWx1YXRlZCBhcworLy8gICAgICAgICAgICAgICAgUj0oc14yLXReMikvKHNxcnQoMS10XjIpKnMrc3FydCgxLXNeMikqdCkKKy8vICAgICAgIChzcXJ0KDEtdF4yKSByZWFkIGZyb20gdGFibGUpCisvLyAgVGhlIG1haW4gc291cmNlIG9mIGVycm9yIGlzIHN0aWxsIFIgKG1heSBzdGlsbCBiZSBhZmZlY3RlZCBieSB1cCB0byAzIHVscHMKKy8vICBvZiByb3VuZGluZyBlcnJvcikuIFRoZSB0YWJsZSBzaXplIG11c3QgYmUgc3VmZmljaWVudGx5IGxhcmdlLCB0byBtaW5pbWl6ZQorLy8gIHRoaXMgZWZmZWN0LgorLy8KKy8vICB8c3wgaW4gW3NxcnQoMykvMiwgMjU1LzI1Nik6CisvLyAgICAgICBMZXQgdD0yXmsqMS5iMSBiMi4uYjYgMSwgd2hlcmUgc3FydCgxLXNeMik9Ml5rKjEuYjEgYjIgLi4gYjUyIChyb3VuZGVkKQorLy8gICAgICAgYXNpbih8c3wpPXBpLzItYXNpbih0KSthc2luKHIpLCByPXMqdC1zcXJ0KDEtc14yKSpzcXJ0KDEtdF4yKQorLy8gICAgICAgYXNpbihyKSBldmFsdWF0ZWQgYXMgcG9seW5vbWlhbCAoc2FtZSBhcyBhYm92ZSkKKy8vICAgICAgIFRoZSBmaXJzdCBkZWdyZWUgdGVybSBpcyBldmFsdWF0ZWQgYXMKKy8vICAgICAgICAgICAgICAgICAgICAgICAgcj0oc14yK3ReMi0xKS8ocyp0K3NxcnQoMS1zXjIpKnNxcnQoMS10XjIpKQorLy8KKy8vICB8c3w8Ml57LTR9OiBldmFsdWF0ZSBhcyAxMy1kZWdyZWUgcG9seW5vbWlhbAorLy8KKy8vICB8c3wgaW4gWzI1NS8yNTYsMSk6IGFzaW4ofHN8KT1waS8yLWFzaW4oc3FydCgxLXNeMikpCisvLyAgICAgICAgIHVzZSAxNy1kZWdyZWUgcG9seW5vbWlhbCwgZ2V0IGVycm9yIHRlcm0KKy8vICAgICAgICAgUSplcHMgfiAoMS1zXjItUV4yKS8oMipRKSBmb3IgZmlyc3QgdGVybQorLy8gICAgICAgICAgICAgICAgICggUSgxK2Vwcyk9c3FydCgxLXNeMikgKQorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgYXNpbihOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBhc2luKElORikgPSBRTmFOIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIGFzaW4oeCkgPSBRTmFOIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbiwgZm9yIHx4fD4xLjAKKy8vICBhc2luKCsvLTApID0gKy8tMAorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHN0YXRpY19mdW5jCisgICAgICAgIC50ZXh0CisgICAgICAgIC5hbGlnbiBfX2Jpb25pY19hc21fYWxpZ24KKyAgICAgICAgLnR5cGUgc3RhdGljX2Z1bmMsIEBmdW5jdGlvbgorc3RhdGljX2Z1bmM6CisuLkIxLjE6CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVheAorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVheCksICVlYXgKKyAgICAgICAgbGVhICAgICAgIHN0YXRpY19jb25zdF90YWJsZUBHT1RPRkYoJWVheCksICVlYXgKKyAgICAgICAgcmV0CisgICAgICAgIC5zaXplICAgc3RhdGljX2Z1bmMsLi1zdGF0aWNfZnVuYworIyAtLSBFbmQgIHN0YXRpY19mdW5jCisKKyMgLS0gQmVnaW4gIGFzaW4KK0VOVFJZKGFzaW4pCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEyMCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNjQoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMjgoJWVzcCksICV4bW0wCisgICAgICAgIHN0bXhjc3IgICAxNiglZXNwKQorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQtMjQ1NzcsICVlZHgKKyAgICAgICAgY21wbCAgICAgICVlZHgsIDE2KCVlc3ApCisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIG1vdnNkICAgICA1OTg0KCVlYngpLCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgNjAxNiglZWJ4KSwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBtb3ZzZCAgICAgNjAwMCglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQ4MTkyLCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMiwgJWVjeCwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDgoJWVzcCkKKyAgICAgICAgcHNybHEgICAgICQ0NCwgJXhtbTAKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgbW92bCAgICAgICQ4MTkyLCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMiwgJWVjeCwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDUyNDI4NywgJWVheAorICAgICAgICBhbmRsICAgICAgJWVkeCwgJWVheAorICAgICAgICBzdWJsICAgICAgJDI2MDg2NCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDk1NSwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBhbmRsICAgICAgJDY1NTM1LCAlZWR4CisgICAgICAgIHN1YnNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgc3FydHNkICAgICV4bW0zLCAleG1tMworICAgICAgICBhbmRwZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFuZGwgICAgICAkLTQsICVlZHgKKyAgICAgICAgc3VibCAgICAgICQ2NDI1NiwgJWVkeAorICAgICAgICBtb3ZzZCAgICAgMzkzNiglZWJ4LCVlZHgsMiksICV4bW0xCisgICAgICAgIG9ycGQgICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDk2KCVlYngsJWVkeCw0KSwgJXhtbTQKKyAgICAgICAgbW92YXBkICAgICV4bW03LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICV4bW02LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIGRpdnNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDgwKCVlYngpLCAleG1tNworICAgICAgICBtb3ZzZCAgICAgNjQoJWVieCksICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYW5kcGQgICAgIDYwNjQoJWVieCksICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgNzIoJWVieCksICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTQsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgb3JwZCAgICAgICV4bW0yLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJC0yNDU3NywgJWVheAorICAgICAgICBjbXBsICAgICAgMTYoJWVzcCksICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIHN0bXhjc3IgICAyNCglZXNwKQorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyNDU3NiwgJWVheAorICAgICAgICBvcmwgICAgICAgJWVheCwgMjQoJWVzcCkKKyAgICAgICAgbGRteGNzciAgIDI0KCVlc3ApCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIHN1YmwgICAgICAkOTU1LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkNjcsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBzcXJ0c2QgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGFuZHBkICAgICA1OTg0KCVlYngpLCAleG1tMAorICAgICAgICBhbmRwZCAgICAgNjA0OCglZWJ4KSwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgNjAxNiglZWJ4KSwgJXhtbTQKKyAgICAgICAgbW92YXBkICAgICV4bW03LCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW0zLCAleG1tNworICAgICAgICBhbmRwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHBzbGxxICAgICAkMiwgJXhtbTMKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMywgJWVkeAorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIHN1YmwgICAgICAkNjUyMTYsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgbXVsc2QgICAgIDM5MzYoJWVieCwlZWR4LDQpLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG1vdmFwZCAgICA2MDgwKCVlYngpLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNworICAgICAgICBtb3ZzZCAgICAgNjQoJWVieCksICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZzZCAgICAgODAoJWVieCksICV4bW0wCisgICAgICAgIGRpdnNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDcyKCVlYngpLCAleG1tMgorICAgICAgICBzdWJwZCAgICAgOTYoJWVieCwlZWR4LDgpLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgYW5kbCAgICAgICQ1MjQyODgsICVlYXgKKyAgICAgICAgc2hybCAgICAgICQ0LCAlZWF4CisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBweG9yICAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNQorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW00LCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTMsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgIDE2KCVlc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkLTI0NTc3LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAxNiglZXNwKSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgc3RteGNzciAgIDI0KCVlc3ApCisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDI0NTc2LCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAyNCglZXNwKQorICAgICAgICBsZG14Y3NyICAgMjQoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIGFkZGwgICAgICAkMTUyOTEsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQxNDMzNiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgdW5wY2tscGQgICV4bW03LCAleG1tNworICAgICAgICBtb3ZhcGQgICAgKCVlYngpLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTcsICV4bW02CisgICAgICAgIG1vdmFwZCAgICAxNiglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDMyKCVlYngpLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIG1vdmFwZCAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNgorICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBhZGRwZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0xLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJC0yNDU3NywgJWVheAorICAgICAgICBjbXBsICAgICAgMTYoJWVzcCksICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisgICAgICAgIHN0bXhjc3IgICAyNCglZXNwKQorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyNDU3NiwgJWVheAorICAgICAgICBvcmwgICAgICAgJWVheCwgMjQoJWVzcCkKKyAgICAgICAgbGRteGNzciAgIDI0KCVlc3ApCisuTF8yVEFHX1BBQ0tFVF84LjAuMjoKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisgICAgICAgIHN1YmwgICAgICAkMTUzNTgsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyLCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF85LjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgc3FydHNkICAgICV4bW0zLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVheAorICAgICAgICBhbmRwZCAgICAgNjAzMiglZWJ4KSwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTMsICV4bW01CisgICAgICAgIGFuZHBkICAgICA2MDMyKCVlYngpLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG1vdnNkICAgICA2MDE2KCVlYngpLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgJXhtbTcsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdmFwZCAgICAoJWVieCksICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW03LCAleG1tNgorICAgICAgICBkaXZzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdmFwZCAgICA0OCglZWJ4KSwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIDE2KCVlYngpLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgMzIoJWVieCksICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgbW92YXBkICAgICV4bW02LCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgc2hybCAgICAgICQ0LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW02LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgIDYwODAoJWVieCksICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTIKKyAgICAgICAgYWRkcGQgICAgICV4bW01LCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTEsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW03LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTYsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQtMjQ1NzcsICVlYXgKKyAgICAgICAgY21wbCAgICAgIDE2KCVlc3ApLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjIKKyAgICAgICAgc3RteGNzciAgIDI0KCVlc3ApCisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDI0NTc2LCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAyNCglZXNwKQorICAgICAgICBsZG14Y3NyICAgMjQoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzEwLjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzkuMC4yOgorICAgICAgICBhZGRsICAgICAgJDI2MTg4NiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDI2MTg4OCwgJWVheAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4yCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVjeAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMAorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQyMTQ3NDgzNjQ3LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAkMTA3MjY5MzI0OCwgJWVheAorICAgICAgICBzdWJsICAgICAgJWVkeCwgJWVheAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEyLjAuMgorICAgICAgICBtb3ZxICAgICAgOCglZXNwKSwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDIxNDc0ODM2NDcsICVlY3gKKyAgICAgICAgc3VibCAgICAgICQxLCAlZWR4CisgICAgICAgIHNiYmwgICAgICAkMjE0NjQzNTA3MiwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgamdlICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTMuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMi4wLjI6CisgICAgICAgIG1vdnNkICAgICA1OTg0KCVlYngpLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgNjA4MCglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDYwODgoJWVieCksICV4bW0wCisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJC0yNDU3NywgJWVheAorICAgICAgICBjbXBsICAgICAgMTYoJWVzcCksICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE0LjAuMgorICAgICAgICBzdG14Y3NyICAgMjQoJWVzcCkKKyAgICAgICAgbW92bCAgICAgIDE2KCVlc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjQ1NzYsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlYXgsIDI0KCVlc3ApCisgICAgICAgIGxkbXhjc3IgICAyNCglZXNwKQorLkxfMlRBR19QQUNLRVRfMTQuMC4yOgorICAgICAgICBhbmRucGQgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG9ycGQgICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgb3JwZCAgICAgICV4bW0xLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDE2KCVlc3ApLCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkLTI0NTc3LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAyNCglZXNwKQorICAgICAgICBsZG14Y3NyICAgMjQoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMS4wLjI6CisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkMTYsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQzMjczNiwgJWVkeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMTUuMC4yCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgb3JwZCAgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW03CisuTF8yVEFHX1BBQ0tFVF8xNS4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzEzLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDE2KCVlc3ApLCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkLTI0NTc3LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAxNiglZXNwKSwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgc3RteGNzciAgIDI0KCVlc3ApCisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDI0NTc2LCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAyNCglZXNwKQorICAgICAgICBsZG14Y3NyICAgMjQoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBtb3ZsICAgICAgNjQoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKGFzaW4pCisjIC0tIEVuZCAgYXNpbgorCisjIFN0YXJ0IGZpbGUgc2NvcGUgQVNNCitBTElBU19TWU1CT0woYXNpbmwsIGFzaW4pOworIyBFbmQgZmlsZSBzY29wZSBBU00KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK3N0YXRpY19jb25zdF90YWJsZToKKwkubG9uZwk3ODA5MDMxNDUKKwkubG9uZwkxMDY2ODU0NTg2CisJLmxvbmcJODU4OTkzNDU5CisJLmxvbmcJMTA2ODcwODY1OQorCS5sb25nCTMzNDA1MzAxMTkKKwkubG9uZwkxMDY3MzkyMTEzCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjk4OTcwNDUKKwkubG9uZwkxMzIxNTI4Mzk5CisJLmxvbmcJMTA2NjUxNzc0MAorCS5sb25nCTMwNjc4MzM3ODMKKwkubG9uZwkxMDY3ODk5NzU3CisJLmxvbmcJMjAyMTE1OTQ2MAorCS5sb25nCTEwNjU4NTUwOTYKKwkubG9uZwkyNTc2OTgwMzc4CisJLmxvbmcJMTA2NjE3ODk2OQorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY5ODk3MDQ1CisJLmxvbmcJODU4OTkzNDU5CisJLmxvbmcJMTA2ODcwODY1OQorCS5sb25nCTMwNjc4MzM3ODMKKwkubG9uZwkxMDY3ODk5NzU3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzODIyOTUyNzkyCisJLmxvbmcJMTAyMTYzOTM3MgorCS5sb25nCTE4Mjc5MjQ0OAorCS5sb25nCTEwNjg1MDc4MzYKKwkubG9uZwkyMjY0MjEzMjcxCisJLmxvbmcJMTAxOTU1ODkwOAorCS5sb25nCTY0OTA1MjkyOAorCS5sb25nCTEwNjg1MjQyNTMKKwkubG9uZwkxNzk3MTM5NjA5CisJLmxvbmcJMTAyMjI5NTE0MworCS5sb25nCTEyNDMwOTUyOTYKKwkubG9uZwkxMDY4NTQwNjcxCisJLmxvbmcJMTQxNTkzODc1NgorCS5sb25nCTEwMjE0Mzk1MzcKKwkubG9uZwkyMDMzMjk0NTkyCisJLmxvbmcJMTA2ODU1NzA5MAorCS5sb25nCTIzNTY4MDk5NzgKKwkubG9uZwkxMDIxNzc3OTE2CisJLmxvbmcJMzA4ODA2Mzc0NAorCS5sb25nCTEwNjg1NzM1MTAKKwkubG9uZwkyNjY5MDU1MzE4CisJLmxvbmcJMTAyMjEyNDQ4MgorCS5sb25nCTE4MDg4ODU3NgorCS5sb25nCTEwNjg1ODk5MzIKKwkubG9uZwkzNTY2NDQ1MzI1CisJLmxvbmcJMTAyMTM1ODcxMgorCS5sb25nCTE5NzAxOTY5OTIKKwkubG9uZwkxMDY4NjA2MzU0CisJLmxvbmcJODk2OTgwMzIzCisJLmxvbmcJMTAyMTMxOTY1OQorCS5sb25nCTQyMjk1NTU0NTYKKwkubG9uZwkxMDY4NjIyNzc3CisJLmxvbmcJNDM2MDQ5NzEyCisJLmxvbmcJMTAyMTMxOTc1OAorCS5sb25nCTI3MzI1NzIxNjAKKwkubG9uZwkxMDY4NjM5MjAyCisJLmxvbmcJNTgzMTIzMjA5CisJLmxvbmcJMTAyMDc5Nzk2MAorCS5sb25nCTE4NDI4MzE4NzIKKwkubG9uZwkxMDY4NjU1NjI4CisJLmxvbmcJMTM3MDQ0OTgwNAorCS5sb25nCTEwMjE0MjkyNzAKKwkubG9uZwkxNjI4OTk0NTYwCisJLmxvbmcJMTA2ODY3MjA1NQorCS5sb25nCTI0MTEzOTE0NjQKKwkubG9uZwkxMDIxMDU3OTgwCisJLmxvbmcJMjE1OTc2MzcxMgorCS5sb25nCTEwNjg2ODg0ODMKKwkubG9uZwkxMjA4NjkyNzQ5CisJLmxvbmcJMTAyMTk0MzkwMworCS5sb25nCTM1MDM4ODYzMzYKKwkubG9uZwkxMDY4NzA0OTEyCisJLmxvbmcJNTM4NzkzMzA5CisJLmxvbmcJMTAxOTc0NDA2MworCS5sb25nCTE0MzUxODcyMDAKKwkubG9uZwkxMDY4NzIxMzQzCisJLmxvbmcJNDA4NTA4NzYxMgorCS5sb25nCTEwMjA2MDg0MTkKKwkubG9uZwkzMTc0Njk5NTIKKwkubG9uZwkxMDY4NzM3Nzc1CisJLmxvbmcJMTQ0Mzg2OTQyCisJLmxvbmcJMTAyMTQ0MDczMgorCS5sb25nCTIxOTYxNzI4MAorCS5sb25nCTEwNjg3NTQyMDgKKwkubG9uZwkyOTQwMDg4MzYxCisJLmxvbmcJMTAxOTk4MTEyMgorCS5sb25nCTEyMTA1NTgyMDgKKwkubG9uZwkxMDY4NzcwNjQyCisJLmxvbmcJMjE3Njg1MDM0NworCS5sb25nCTEwMTgzNzM3MDUKKwkubG9uZwkzMzU5MjY4MzUyCisJLmxvbmcJMTA2ODc4NzA3NworCS5sb25nCTIzOTU2MTE0NTQKKwkubG9uZwkxMDIxODg5MDQyCisJLmxvbmcJMjQzOTgwMzY0OAorCS5sb25nCTEwNjg4MDM1MTQKKwkubG9uZwkxNjUwNzA1MjUzCisJLmxvbmcJMTAyMDIyNzk2NgorCS5sb25nCTI4MTYyMDM1MjAKKwkubG9uZwkxMDY4ODE5OTUyCisJLmxvbmcJMzcwMjE2NjM4NgorCS5sb25nCTEwMTkzNzk5MTQKKwkubG9uZwkyNjI2MjA2NzIKKwkubG9uZwkxMDY4ODM2MzkyCisJLmxvbmcJMTg1NTY0OTM3MAorCS5sb25nCTEwMjA0NTMxMjQKKwkubG9uZwkzNDM4MTU5NjE2CisJLmxvbmcJMTA2ODg1MjgzMgorCS5sb25nCTkyMzA2Mzg2MAorCS5sb25nCTEwMTkyNzM4MzQKKwkubG9uZwkzODIyMTA1ODU2CisJLmxvbmcJMTA2ODg2OTI3NAorCS5sb25nCTQyODk5NDc5NDcKKwkubG9uZwkxMDE5NDM0MjQ5CisJLmxvbmcJMTQ4MzcyOTkyMAorCS5sb25nCTEwNjg4ODU3MTgKKwkubG9uZwk3ODc0NTU4MTQKKwkubG9uZwkxMDIwNzM4Mzc5CisJLmxvbmcJNzg3MzIxMDg4CisJLmxvbmcJMTA2ODkwMjE2MworCS5sb25nCTMzMjE2NTMzMzcKKwkubG9uZwkxMDIxODQyNTY5CisJLmxvbmcJMTgwMjI1MzMxMgorCS5sb25nCTEwNjg5MTg2MDkKKwkubG9uZwkyNjUzNjMzNTI2CisJLmxvbmcJMTAyMTgyMTUyNQorCS5sb25nCTMwMjk4NTk4NAorCS5sb25nCTEwNjg5MzUwNTcKKwkubG9uZwkxNjEyNzIwMjgKKwkubG9uZwkxMDIxNjU1MTQ5CisJLmxvbmcJNjUzOTY2MDgwCisJLmxvbmcJMTA2ODk1MTUwNgorCS5sb25nCTI1NjYwOTg2NjcKKwkubG9uZwkxMDIwMDY2MjE5CisJLmxvbmcJMjkyNDcyNzI5NgorCS5sb25nCTEwNjg5Njc5NTYKKwkubG9uZwkzNjQ2NDkzNzIyCisJLmxvbmcJMTAxNDI5MjI4NQorCS5sb25nCTI4ODk4OTAzMDQKKwkubG9uZwkxMDY4OTg0NDA4CisJLmxvbmcJMTA4MTAwOTE5NgorCS5sb25nCTEwMjIxODk2MjAKKwkubG9uZwk2MTkwOTgxMTIKKwkubG9uZwkxMDY5MDAwODYyCisJLmxvbmcJNDAxMTY0MzM1NQorCS5sb25nCTEwMjE3NzMyOTcKKwkubG9uZwk0NzcwMTc2MDAKKwkubG9uZwkxMDY5MDE3MzE3CisJLmxvbmcJNDAzMDMwNTUzNAorCS5sb25nCTEwMjEyOTIyNTIKKwkubG9uZwkyNTMzNDAzOTA0CisJLmxvbmcJMTA2OTAzMzc3MworCS5sb25nCTI2NDUxODc1OTEKKwkubG9uZwkxMDE5NTI3MDk5CisJLmxvbmcJMjU2MzEwMjIwOAorCS5sb25nCTEwNjkwNTAyMzEKKwkubG9uZwkzODU3MjkzNzkyCisJLmxvbmcJMTAyMjMxMTY5NworCS5sb25nCTYzNTk4MjMzNgorCS5sb25nCTEwNjkwNjY2OTEKKwkubG9uZwkzNjI1OTM2NjM3CisJLmxvbmcJMTAxNzUxMTc0NAorCS5sb25nCTExMTY5NDA4MDAKKwkubG9uZwkxMDY5MDgzMTUyCisJLmxvbmcJMzY1Mzg3Mjk5MworCS5sb25nCTEwMjIwMTY2MzEKKwkubG9uZwk0MDc1OTY0MTYwCisJLmxvbmcJMTA2OTA5OTYxNAorCS5sb25nCTI0Njg5MDAyNzEKKwkubG9uZwkxMDIxNzY5NTMyCisJLmxvbmcJOTkzMTY1NTY4CisJLmxvbmcJMTA2OTExNjA3OQorCS5sb25nCTEzNTgxMDQyMjQKKwkubG9uZwkxMDIxMTk5Nzc2CisJLmxvbmcJNTI4NTg2NzUyCisJLmxvbmcJMTA2OTEzMjU0NQorCS5sb25nCTIyMDA5NTAzMzIKKwkubG9uZwkxMDIyMDI0ODcyCisJLmxvbmcJMjc1MjM5NTc3NgorCS5sb25nCTEwNjkxNDkwMTIKKwkubG9uZwkzMTk3MDcyNDU0CisJLmxvbmcJMTAxNzc1MTMxOQorCS5sb25nCTM0Mzk4NTU2MTYKKwkubG9uZwkxMDY5MTY1NDgxCisJLmxvbmcJMTY1MTA4MTgwNgorCS5sb25nCTEwMjA4MDkzMzgKKwkubG9uZwkyNjYxMjU3NzI4CisJLmxvbmcJMTA2OTE4MTk1MgorCS5sb25nCTUzOTAzMjc1MgorCS5sb25nCTEwMjE3Mjg4MDUKKwkubG9uZwk0ODY5NTczMTIKKwkubG9uZwkxMDY5MTk4NDI1CisJLmxvbmcJMzEzNjA0NTE0OQorCS5sb25nCTEwMTY4ODg2NzEKKwkubG9uZwkxMjgyMzQwMzUyCisJLmxvbmcJMTA2OTIxNDg5OQorCS5sb25nCTI1OTM5NjMyNTkKKwkubG9uZwkxMDE4OTU2MTAzCisJLmxvbmcJODIyOTIxNzI4CisJLmxvbmcJMTA2OTIzMTM3NQorCS5sb25nCTIxNDYwMzI3MzcKKwkubG9uZwkxMDIyMzA2NDY1CisJLmxvbmcJMzQ3NDIxNjE5MgorCS5sb25nCTEwNjkyNDc4NTIKKwkubG9uZwkzOTc2ODExNjI1CisJLmxvbmcJMTAyMTM1MDIwNworCS5sb25nCTcxNjkwMjY1NgorCS5sb25nCTEwNjkyNjQzMzIKKwkubG9uZwk3MTgyNjcyMjIKKwkubG9uZwkxMDE4NjI0NzI3CisJLmxvbmcJMTIxMTU5NDQ5NgorCS5sb25nCTEwNjkyODA4MTMKKwkubG9uZwkxNDg1NjQxMzg5CisJLmxvbmcJMTAxODQ0NzQ1MQorCS5sb25nCTczNDA3MDI3MgorCS5sb25nCTEwNjkyOTcyOTYKKwkubG9uZwkzNTQ0NTUxMjgKKwkubG9uZwkxMDIxMzQxMjkxCisJLmxvbmcJMzY1MDExMDcyMAorCS5sb25nCTEwNjkzMTM3ODAKKwkubG9uZwk2ODIxODU5NDcKKwkubG9uZwkxMDIxNjUxODUzCisJLmxvbmcJMTQ0MDY2MzA0MAorCS5sb25nCTEwNjkzMzAyNjcKKwkubG9uZwkzNTU4NTc0NTUwCisJLmxvbmcJMTAyMTYxNTExMAorCS5sb25nCTI3NjY2MTIyMjQKKwkubG9uZwkxMDY5MzQ2NzU1CisJLmxvbmcJODc0NjA3OTc4CisJLmxvbmcJMTAxNzc0Njg3MgorCS5sb25nCTM0MDQwMTEwMDgKKwkubG9uZwkxMDY5MzYzMjQ1CisJLmxvbmcJNDE1NDk4ODUwMgorCS5sb25nCTEwMjE0Mzk5MDYKKwkubG9uZwkzNDIzOTQ5MDU2CisJLmxvbmcJMTA2OTM3OTczNworCS5sb25nCTIyNjMyMDIzMDkKKwkubG9uZwkxMDIxNDc5NjE1CisJLmxvbmcJMjg5NzU4NzcxMgorCS5sb25nCTEwNjkzOTYyMzEKKwkubG9uZwkyNTYyMDY1MDMxCisJLmxvbmcJMTAyMjA5MDM2MworCS5sb25nCTE4OTYxNTkyMzIKKwkubG9uZwkxMDY5NDEyNzI3CisJLmxvbmcJMzgzNjIzNzY2MworCS5sb25nCTEwMTk4NjcyODgKKwkubG9uZwk0OTA5Njg1NzYKKwkubG9uZwkxMDY5NDI5MjI1CisJLmxvbmcJMzMyMjA1Njc0MworCS5sb25nCTEwMDY3NTI3NjIKKwkubG9uZwkzMDQ4MzYwMTkyCisJLmxvbmcJMTA2OTQ0NTcyNAorCS5sb25nCTExNTIzMTQ4MzMKKwkubG9uZwkxMDEzMTIyMjUyCisJLmxvbmcJMTA0OTg1MDYyNAorCS5sb25nCTEwNjk0NjIyMjYKKwkubG9uZwkzNjAxNTkwNzI3CisJLmxvbmcJMTAyMjIxNDYxMAorCS5sb25nCTMxNTY4OTk1ODQKKwkubG9uZwkxMDY5NDc4NzI5CisJLmxvbmcJMTg1NTE2OTk3MAorCS5sb25nCTEwMTk0ODcyNzEKKwkubG9uZwk4NTExNzMzNzYKKwkubG9uZwkxMDY5NDk1MjM1CisJLmxvbmcJMzEyNjQ5NTk0CisJLmxvbmcJMTAyMDg2ODYwNAorCS5sb25nCTI3OTQyODE3MjgKKwkubG9uZwkxMDY5NTExNzQyCisJLmxvbmcJMTA5MzQ5MDE4MQorCS5sb25nCTEwMjA3Nzc1NzcKKwkubG9uZwk0NjgwNDI0OTYKKwkubG9uZwkxMDY5NTI4MjUyCisJLmxvbmcJMTE1MjU0MDY3OQorCS5sb25nCTEwMjE0MDM3MzIKKwkubG9uZwkyNTM0MjE5MjY0CisJLmxvbmcJMTA2OTU0NDc2MworCS5sb25nCTIyOTIxMjYwMzUKKwkubG9uZwkxMDIxODcyNDMwCisJLmxvbmcJMTM3NjE0NjQzMgorCS5sb25nCTEwNjk1NTg1MjcKKwkubG9uZwkzMjkzNzUzNjQxCisJLmxvbmcJMTAyMDUwMDQ1NAorCS5sb25nCTQxNzU0NDI0MzIKKwkubG9uZwkxMDY5NTc1MDQ0CisJLmxvbmcJMzYyNjM0NzU2NAorCS5sb25nCTEwMjE2MTA5NjkKKwkubG9uZwkzNTIzMTEzNDcyCisJLmxvbmcJMTA2OTU5MTU2NgorCS5sb25nCTMzOTk1NjUwMAorCS5sb25nCTEwMjExMTkwMzkKKwkubG9uZwk0MDAzMzUwNTI4CisJLmxvbmcJMTA2OTYwODA5MgorCS5sb25nCTM0MjkzMzMwODIKKwkubG9uZwkxMDIyODEzNTQyCisJLmxvbmcJMTYxMTA2NzM5MgorCS5sb25nCTEwNjk2MjQ2MjMKKwkubG9uZwkyMjk4MDE3NTQ0CisJLmxvbmcJMTAyMTk3NzU4NworCS5sb25nCTkzMTc4MjE0NAorCS5sb25nCTEwNjk2NDExNTgKKwkubG9uZwkyMTY0Njg0NzQzCisJLmxvbmcJMTAyMTI1MDk4OAorCS5sb25nCTIyNTY3MjU1MDQKKwkubG9uZwkxMDY5NjU3Njk3CisJLmxvbmcJMTEzODc2MjMzNQorCS5sb25nCTEwMjE0NDM3NzYKKwkubG9uZwkxNTgyODUzMTIwCisJLmxvbmcJMTA2OTY3NDI0MQorCS5sb25nCTEwODQwMTAzODIKKwkubG9uZwkxMDIyOTk0NjkzCisJLmxvbmcJMzQ5Nzc1ODcyMAorCS5sb25nCTEwNjk2OTA3ODkKKwkubG9uZwk0MDYzNjYyNDQKKwkubG9uZwkxMDIyNzEzNTg2CisJLmxvbmcJMzk5OTgxNjk2MAorCS5sb25nCTEwNjk3MDczNDIKKwkubG9uZwkxNDg4NzIzMDQyCisJLmxvbmcJMTAyMzM4MTI5MAorCS5sb25nCTMzODMwOTYwNjQKKwkubG9uZwkxMDY5NzIzOTAwCisJLmxvbmcJMjU0MTU1ODk1MworCS5sb25nCTEwMTkxMzc4ODcKKwkubG9uZwkxOTQyNDAzNTg0CisJLmxvbmcJMTA2OTc0MDQ2MworCS5sb25nCTE4Nzk2MjAzNDMKKwkubG9uZwkxMDIyNjUzNjQyCisJLmxvbmcJNDI2ODI2MzY4MAorCS5sb25nCTEwNjk3NTcwMzAKKwkubG9uZwkzMDM5MDc3MDQ3CisJLmxvbmcJMTAyMjI1MjU0NQorCS5sb25nCTIwNjcwNjIyNzIKKwkubG9uZwkxMDY5NzczNjAzCisJLmxvbmcJNDE5MDY3MDY3NworCS5sb25nCTEwMjA3MjU4NjMKKwkubG9uZwk0MjI1ODI4MDk2CisJLmxvbmcJMTA2OTc5MDE4MAorCS5sb25nCTE5OTg1NjczMjEKKwkubG9uZwkxMDIyMDE0Mzg1CisJLmxvbmcJMjQ1MjUwNzEzNgorCS5sb25nCTEwNjk4MDY3NjMKKwkubG9uZwkxNTExNjI4ODczCisJLmxvbmcJMTAyMTkwMDMwMAorCS5sb25nCTEzNDA3NDYyNDAKKwkubG9uZwkxMDY5ODIzMzUxCisJLmxvbmcJNzg4MzY3MzQxCisJLmxvbmcJMTAyMjcyNjIwOAorCS5sb25nCTExOTAwMzU0NTYKKwkubG9uZwkxMDY5ODM5OTQ0CisJLmxvbmcJMzg1NjMzNzIzMAorCS5sb25nCTEwMjE4MzQxMTgKKwkubG9uZwkyMzAwNjg4Mzg0CisJLmxvbmcJMTA2OTg1NjU0MgorCS5sb25nCTMyMTEzOTY1NzkKKwkubG9uZwkxMDIyNjIxMzY1CisJLmxvbmcJNjc4ODg2NDAwCisJLmxvbmcJMTA2OTg3MzE0NgorCS5sb25nCTQwMDEwMTE4ODcKKwkubG9uZwkxMDIyMDQyNjQ2CisJLmxvbmcJOTIxNTk0MTEyCisJLmxvbmcJMTA2OTg4OTc1NQorCS5sb25nCTU1NzgxMTk2OAorCS5sb25nCTEwMjMwNjU1MzMKKwkubG9uZwkzMzMxNjY4OTkyCisJLmxvbmcJMTA2OTkwNjM2OQorCS5sb25nCTE4NzcwNjA2NzkKKwkubG9uZwkxMDIyNDE5NzQyCisJLmxvbmcJMzkxNzg3NTIwMAorCS5sb25nCTEwNjk5MjI5ODkKKwkubG9uZwkxMTgxMDU1MTcxCisJLmxvbmcJMTAyMjc1MjcxMgorCS5sb25nCTI5ODQ4Mjk2OTYKKwkubG9uZwkxMDY5OTM5NjE1CisJLmxvbmcJNDI5NDUyNjkzMgorCS5sb25nCTEwMjE0OTk5ODgKKwkubG9uZwk4MzgwNDkwMjQKKwkubG9uZwkxMDY5OTU2MjQ3CisJLmxvbmcJMzY1ODA4MTg3OAorCS5sb25nCTEwMjI5NTc5NTIKKwkubG9uZwkyMDc4OTI4Mzg0CisJLmxvbmcJMTA2OTk3Mjg4NAorCS5sb25nCTgyMDM1MzcwMQorCS5sb25nCTEwMTkzOTExMDcKKwkubG9uZwkyNzE5ODU0MzM2CisJLmxvbmcJMTA2OTk4OTUyNworCS5sb25nCTE2NDQwMjI0ODkKKwkubG9uZwkxMDIzMzc4MjQwCisJLmxvbmcJMzA2OTExNzY5NgorCS5sb25nCTEwNzAwMDYxNzYKKwkubG9uZwkyNzcxMzkzNzAyCisJLmxvbmcJMTAxOTMxOTk1NAorCS5sb25nCTM0MzU5NjIzNjgKKwkubG9uZwkxMDcwMDIyODMxCisJLmxvbmcJMzg3NjM5NDE0NQorCS5sb25nCTEwMjMwMjQ0MzMKKwkubG9uZwk0MTMwNTk1MzI4CisJLmxvbmcJMTA3MDAzOTQ5MgorCS5sb25nCTE2MzA0NDc3NDgKKwkubG9uZwkxMDIxNDY1ODgyCisJLmxvbmcJMTE2OTIzNjIyNAorCS5sb25nCTEwNzAwNTYxNjAKKwkubG9uZwkyODI4MzU1OTk3CisJLmxvbmcJMTAyMDQ1ODEyMAorCS5sb25nCTM0NTM5OTczMTIKKwkubG9uZwkxMDcwMDcyODMzCisJLmxvbmcJMTY0MDkxNjQxCisJLmxvbmcJMTAyMDM4ODI3OQorCS5sb25nCTI3MDgxMjc3NDQKKwkubG9uZwkxMDcwMDg5NTEzCisJLmxvbmcJMzAzNjU1MDIyMworCS5sb25nCTEwMjMzMjg2ODQKKwkubG9uZwkzNTQwNzk3Njk2CisJLmxvbmcJMTA3MDEwNjE5OQorCS5sb25nCTM3MTA5NDk0NjMKKwkubG9uZwkxMDIyNTY4ODA1CisJLmxvbmcJMTk3MjI3NjczNgorCS5sb25nCTEwNzAxMjI4OTIKKwkubG9uZwkzODg1Mjc3OTUwCisJLmxvbmcJMTAxOTc2MTY3NAorCS5sb25nCTI2MTM4MTU1NTIKKwkubG9uZwkxMDcwMTM5NTkxCisJLmxvbmcJMjc2NDE2NTA3NworCS5sb25nCTEwMjI5MjEwMjMKKwkubG9uZwkxNDg3NzkxNjE2CisJLmxvbmcJMTA3MDE1NjI5NworCS5sb25nCTEzMzA2NDQ3NjkKKwkubG9uZwkxMDIzMTYyNjc5CisJLmxvbmcJMzIwNzU5MzQ3MgorCS5sb25nCTEwNzAxNzMwMDkKKwkubG9uZwkzOTExMDA3MjIxCisJLmxvbmcJMTAyMjk5MzQ5NgorCS5sb25nCTM3OTc3NjQ2MDgKKwkubG9uZwkxMDcwMTg5NzI4CisJLmxvbmcJOTc5NzEyNTk4CisJLmxvbmcJMTAyMjU1NDU4MAorCS5sb25nCTM1Nzg5MjA0NDgKKwkubG9uZwkxMDcwMjA2NDU0CisJLmxvbmcJMjgyNTczODIyMworCS5sb25nCTEwMjAyMjM3MDgKKwkubG9uZwkyODcyNzk1NjQ4CisJLmxvbmcJMTA3MDIyMzE4NworCS5sb25nCTM5MjQ1MTEyNAorCS5sb25nCTEwMjI2NjYyNzkKKwkubG9uZwkyMDAyMjU4NDMyCisJLmxvbmcJMTA3MDIzOTkyNworCS5sb25nCTM3MzA0MDc2MzIKKwkubG9uZwkxMDIzMTQ4MjkxCisJLmxvbmcJMTI5MTMyNjQ2NAorCS5sb25nCTEwNzAyNTY2NzQKKwkubG9uZwkzNzIzODAyOTgwCisJLmxvbmcJMTAyMjUxNDA4OQorCS5sb25nCTEwNjUxODA5MjgKKwkubG9uZwkxMDcwMjczNDI4CisJLmxvbmcJMjYzNTYxNzQ2MworCS5sb25nCTEwMjI2NTQ0NzAKKwkubG9uZwkxNjUwMTgxNjMyCisJLmxvbmcJMTA3MDI5MDE4OQorCS5sb25nCTIwNjE5ODI4ODMKKwkubG9uZwkxMDIyODUzNDExCisJLmxvbmcJMzM3Mzg4Mjg4MAorCS5sb25nCTEwNzAzMDY5NTcKKwkubG9uZwkzMTk3MzI3ODUKKwkubG9uZwkxMDIyMDE3MTc1CisJLmxvbmcJMjI3MDA4MTI4MAorCS5sb25nCTEwNzAzMjM3MzMKKwkubG9uZwkyMjM3NzU3NDExCisJLmxvbmcJMTAyMzA2NDA4NworCS5sb25nCTI5NjM3MzI3MzYKKwkubG9uZwkxMDcwMzQwNTE2CisJLmxvbmcJNDY4ODM5MTY1CisJLmxvbmcJMTAyMzI5Mzc3NAorCS5sb25nCTE0OTEwOTk5MDQKKwkubG9uZwkxMDcwMzU3MzA3CisJLmxvbmcJMTUwMjY1Nzk0NgorCS5sb25nCTEwMjE1MzM0NzkKKwkubG9uZwkyNDc5NjM2NDgwCisJLmxvbmcJMTA3MDM3NDEwNQorCS5sb25nCTQ4MjkxMzU2MgorCS5sb25nCTEwMjE5ODYyODYKKwkubG9uZwkxOTY4MTMzNjMyCisJLmxvbmcJMTA3MDM5MDkxMQorCS5sb25nCTMyODE0NzQzMzcKKwkubG9uZwkxMDIyNjQ2NDAwCisJLmxvbmcJMjkxNjM5MDQwCisJLmxvbmcJMTA3MDQwNzcyNQorCS5sb25nCTI0NTMzMjAyNTkKKwkubG9uZwkxMDIyODEyNDIzCisJLmxvbmcJMjA4MTQ3MjUxMgorCS5sb25nCTEwNzA0MjQ1NDYKKwkubG9uZwkyOTM5OTg5NTcwCisJLmxvbmcJMTAyMzA5MTg4OAorCS5sb25nCTMzODAzNDA0ODAKKwkubG9uZwkxMDcwNDQxMzc1CisJLmxvbmcJMjg1MDcwNzQ5OQorCS5sb25nCTEwMjE5MjExMDkKKwkubG9uZwkyMzIyODc0ODgKKwkubG9uZwkxMDcwNDU4MjEzCisJLmxvbmcJMzY3NDYyNTM0MgorCS5sb25nCTEwMjA3MjUxMzAKKwkubG9uZwkxNTY3NjE0MjA4CisJLmxvbmcJMTA3MDQ3NTA1OAorCS5sb25nCTkzNDczMzQKKwkubG9uZwkxMDIyMDI0MDA5CisJLmxvbmcJMzQzMzA5MTA3MgorCS5sb25nCTEwNzA0OTE5MTEKKwkubG9uZwkyODI1MjQ5OTkKKwkubG9uZwkxMDIxNDMzNTIzCisJLmxvbmcJMTg3Njg3NzMxMgorCS5sb25nCTEwNzA1MDg3NzMKKwkubG9uZwkzNDcwNDQ5NDQwCisJLmxvbmcJMTAxOTMwOTcyMQorCS5sb25nCTE1Mzg0NzIxOTIKKwkubG9uZwkxMDcwNTI1NjQzCisJLmxvbmcJMjA4OTQ4NjgyNQorCS5sb25nCTEwMTk2OTg5MTYKKwkubG9uZwkyNzYzODMwNzg0CisJLmxvbmcJMTA3MDU0MjUyMQorCS5sb25nCTQ0MzQ5ODExNQorCS5sb25nCTEwMjA1MDUxOTQKKwkubG9uZwkxNjA1MzgxNjMyCisJLmxvbmcJMTA3MDU1OTQwOAorCS5sb25nCTMwMTg4NzE2MDEKKwkubG9uZwkxMDIyODY5OTEzCisJLmxvbmcJMjcwNjk0NjA0OAorCS5sb25nCTEwNzA1NzYzMDMKKwkubG9uZwkzOTM2MjYwODkyCisJLmxvbmcJMTAyMzE3NTg3NQorCS5sb25nCTIxMjM4ODczNjAKKwkubG9uZwkxMDcwNTkzMjA3CisJLmxvbmcJMjk5NDIyMDY1NQorCS5sb25nCTEwMjI4MjU5NDgKKwkubG9uZwkxMDQwMTUxMDQKKwkubG9uZwkxMDcwNjAzMTA4CisJLmxvbmcJMzM1MDU0NDkzCisJLmxvbmcJMTAyMzQ0MTg1MworCS5sb25nCTI5MDQ1Njg4MzIKKwkubG9uZwkxMDcwNjE1ODAwCisJLmxvbmcJMTQ1MTIxNTYzMworCS5sb25nCTEwMjM4NTM4NTcKKwkubG9uZwkzNDU2MTk3MTIwCisJLmxvbmcJMTA3MDYzMjczOQorCS5sb25nCTQzNjMzNDczMworCS5sb25nCTEwMjQwMjY0MzIKKwkubG9uZwkyNTI0NTIzNTIKKwkubG9uZwkxMDcwNjQ5Njk3CisJLmxvbmcJMzQ1OTYxNjcKKwkubG9uZwkxMDI0MDMxMzk2CisJLmxvbmcJMzMyODAxODQzMgorCS5sb25nCTEwNzA2NjY2NzIKKwkubG9uZwkyNjQ0NTQ3MDczCisJLmxvbmcJMTAyNDI5Njc1OAorCS5sb25nCTEyNTU4MjkyNDgKKwkubG9uZwkxMDcwNjgzNjY3CisJLmxvbmcJNTUyODMyNTg2CisJLmxvbmcJMTAyMzc2MzEyMgorCS5sb25nCTQwOTcwNTg1NjAKKwkubG9uZwkxMDcwNzAwNjgwCisJLmxvbmcJMTk1NTY0MDYyMworCS5sb25nCTEwMjEzOTQ2NTQKKwkubG9uZwk0NTE3NzAxMTIKKwkubG9uZwkxMDcwNzE3NzE0CisJLmxvbmcJMzQyODkwMzc3NworCS5sb25nCTEwMjI5NDExNDIKKwkubG9uZwk0MDg5MjA4MzIKKwkubG9uZwkxMDcwNzM0NzY3CisJLmxvbmcJMTY1NTAzMjYzCisJLmxvbmcJMTAyMzg5NDk1OAorCS5sb25nCTExODY5NjA2NDAKKwkubG9uZwkxMDcwNzUxODQwCisJLmxvbmcJNDM1ODI2NDUwCisJLmxvbmcJMTAyNDAyNjEzNAorCS5sb25nCTE5MDc4NjU2CisJLmxvbmcJMTA3MDc2ODkzNAorCS5sb25nCTE4MzQxNjk3NDkKKwkubG9uZwkxMDIyODk5Mjg0CisJLmxvbmcJMjc0MzQ5MDMwNAorCS5sb25nCTEwNzA3ODYwNDgKKwkubG9uZwk0OTQ1ODEwNzQKKwkubG9uZwkxMDE4ODE4NDc5CisJLmxvbmcJMjMyODk2MTAyNAorCS5sb25nCTEwNzA4MDMxODQKKwkubG9uZwkyOTg3OTA4ODM0CisJLmxvbmcJMTAyMjU4MTExMAorCS5sb25nCTM1MDAxMTM5MgorCS5sb25nCTEwNzA4MjAzNDIKKwkubG9uZwkyNDA3NzExODQKKwkubG9uZwkxMDI0MTQzMDgzCisJLmxvbmcJMjY5MjMyNjkxMgorCS5sb25nCTEwNzA4Mzc1MjEKKwkubG9uZwk2NjYwNTY4MzcKKwkubG9uZwkxMDIyMzk0Nzc2CisJLmxvbmcJMjM3MzI3NDM2OAorCS5sb25nCTEwNzA4NTQ3MjMKKwkubG9uZwkyNDg0MzM3NzcwCisJLmxvbmcJMTAyNDIyODE1NgorCS5sb25nCTEwMTcxMzE1MjAKKwkubG9uZwkxMDcwODcxOTQ4CisJLmxvbmcJMzI4NTY0ODI3OQorCS5sb25nCTEwMjQwMjU3ODkKKwkubG9uZwkyNjU1NTgyNzIKKwkubG9uZwkxMDcwODg5MTk2CisJLmxvbmcJMzkyMjQxODk2CisJLmxvbmcJMTAyNDI1MjgwOQorCS5sb25nCTE3NzgwMDgwNjQKKwkubG9uZwkxMDcwOTA2NDY3CisJLmxvbmcJMTUzNjEwNzk0MworCS5sb25nCTEwMjM5NDkzMDAKKwkubG9uZwkyOTM3MTg0NzY4CisJLmxvbmcJMTA3MDkyMzc2MgorCS5sb25nCTM1NDEwNjIyNTEKKwkubG9uZwkxMDE5NDQ4NjQ2CisJLmxvbmcJMTE0NDQ0Mjg4MAorCS5sb25nCTEwNzA5NDEwODIKKwkubG9uZwkzNjkxNjgzNzgxCisJLmxvbmcJMTAyMjEyMzk0OAorCS5sb25nCTI0MTAxNjU1MDQKKwkubG9uZwkxMDcwOTU4NDI2CisJLmxvbmcJMTgwNDE4MTk2MAorCS5sb25nCTEwMjM5NDUyMjEKKwkubG9uZwk0MTc0MzUwODQ4CisJLmxvbmcJMTA3MDk3NTc5NQorCS5sb25nCTIwMTYwOTQ4NjEKKwkubG9uZwkxMDIxNzE2NTg1CisJLmxvbmcJMzg5NzAxMjQ4MAorCS5sb25nCTEwNzA5OTMxOTAKKwkubG9uZwkxNzUyOTQ0MTAKKwkubG9uZwkxMDIzNzAzNDA0CisJLmxvbmcJMzM1MzYyMzA0MAorCS5sb25nCTEwNzEwMTA2MTEKKwkubG9uZwkxNjc5NzMyNDIKKwkubG9uZwkxMDIzMjQwODM5CisJLmxvbmcJNDU2NzExNjgKKwkubG9uZwkxMDcxMDI4MDU5CisJLmxvbmcJMjE2Njg1NjExMworCS5sb25nCTEwMjE1NjU0MTMKKwkubG9uZwk4NjA2Mzg3MgorCS5sb25nCTEwNzEwNDU1MzMKKwkubG9uZwkyNjc2MjU0NzI3CisJLmxvbmcJMTAyMzk4NTI5OQorCS5sb25nCTEwMTk3NzI2NzIKKwkubG9uZwkxMDcxMDYzMDM0CisJLmxvbmcJOTg5MDQzNTkzCisJLmxvbmcJMTAyMTU0OTU4NworCS5sb25nCTQxNDI5NzM0NAorCS5sb25nCTEwNzEwODA1NjMKKwkubG9uZwkzOTYwOTcyMDQ2CisJLmxvbmcJMTAyNDMwNzI1MQorCS5sb25nCTE1NTE3MzEyMAorCS5sb25nCTEwNzEwOTgxMjAKKwkubG9uZwkxODMwOTE5MjkxCisJLmxvbmcJMTAyMTU5MjI1MQorCS5sb25nCTIxNTE1NjIyNDAKKwkubG9uZwkxMDcxMTE1NzA1CisJLmxvbmcJNDA1NDA4NjY2CisJLmxvbmcJMTAyMzQyMzEyOAorCS5sb25nCTQwNDE4NTQ3MjAKKwkubG9uZwkxMDcxMTMzMzE5CisJLmxvbmcJMjA0MzQ5NzgyNworCS5sb25nCTEwMjQ0MTE1MDMKKwkubG9uZwkzNDg5MjI0MTkyCisJLmxvbmcJMTA3MTE1MDk2MworCS5sb25nCTMwNzIyMTU4NjQKKwkubG9uZwkxMDIyNjk4NjM1CisJLmxvbmcJMjQ3NzE5NjI4OAorCS5sb25nCTEwNzExNjg2MzcKKwkubG9uZwkxODEyMTk1MTM5CisJLmxvbmcJMTAyMjY4OTE5MgorCS5sb25nCTMwMTUyOTg4MTYKKwkubG9uZwkxMDcxMTg2MzQxCisJLmxvbmcJNzY0ODQxOTY5CisJLmxvbmcJMTAyMTAyNzMzMQorCS5sb25nCTI4NDQ3MzExMzYKKwkubG9uZwkxMDcxMjA0MDc2CisJLmxvbmcJMjg3ODExNzMyMQorCS5sb25nCTEwMTkxMTY1MTMKKwkubG9uZwk0MDI4OTUwNTI4CisJLmxvbmcJMTA3MTIyMTg0MgorCS5sb25nCTY5ODkxMTQ1MgorCS5sb25nCTEwMjMyNjU2MDIKKwkubG9uZwk2OTQ0MTUzNgorCS5sb25nCTEwNzEyMzk2NDEKKwkubG9uZwkzMjUzNDY3ODQ3CisJLmxvbmcJMTAyMDc5NTA3NQorCS5sb25nCTE2NzYyMDk5MjAKKwkubG9uZwkxMDcxMjU3NDcxCisJLmxvbmcJNDI3MjQzMTE2NworCS5sb25nCTEwMjI4NzM5ODIKKwkubG9uZwkyNDA4NzUyMzg0CisJLmxvbmcJMTA3MTI3NTMzNAorCS5sb25nCTY0ODUxOTEwMAorCS5sb25nCTEwMjQzODU3MTcKKwkubG9uZwkxNTE2MjM2ODAKKwkubG9uZwkxMDcxMjkzMjMxCisJLmxvbmcJMzQ1MjU3MDE3CisJLmxvbmcJMTAxOTU2MTQwOAorCS5sb25nCTE0MTAxNTQyNDAKKwkubG9uZwkxMDcxMzExMTYxCisJLmxvbmcJMTk3ODYzOTkzCisJLmxvbmcJMTAyMzIyNDIwNworCS5sb25nCTQxMzEzNTE1NTIKKwkubG9uZwkxMDcxMzI5MTI1CisJLmxvbmcJMjYyMDgwMTc4OQorCS5sb25nCTEwMjQ0MTExNjkKKwkubG9uZwkxOTk5NjY0Mzg0CisJLmxvbmcJMTA3MTM0NzEyNQorCS5sb25nCTM5NTI2OTI2MTYKKwkubG9uZwkxMDI0MTY4MDg2CisJLmxvbmcJMTYxNzY2ODg2NAorCS5sb25nCTEwNzEzNjUxNjAKKwkubG9uZwkzMDE5ODg5ODA5CisJLmxvbmcJMTAyMTkwNzY5MgorCS5sb25nCTEwMzIwNzQyNDAKKwkubG9uZwkxMDcxMzgzMjMxCisJLmxvbmcJNTk0Njk4OTkKKwkubG9uZwkxMDIzNjU2MTk0CisJLmxvbmcJMjYxOTQ5MjA5NgorCS5sb25nCTEwNzE0MDEzMzgKKwkubG9uZwkxNDE3NTI2ODIwCisJLmxvbmcJMTAyMTQ1Nzc4MworCS5sb25nCTIwMjQyOTQ0MAorCS5sb25nCTEwNzE0MTk0ODMKKwkubG9uZwkyOTI3NjY3OTM1CisJLmxvbmcJMTAxOTE3NTQ0NworCS5sb25nCTUyNTA0NDIyNAorCS5sb25nCTEwNzE0Mzc2NjUKKwkubG9uZwkzODE2NjgxMQorCS5sb25nCTEwMjM5ODE4NzkKKwkubG9uZwkxNzc5MjU4ODgwCisJLmxvbmcJMTA3MTQ1NTg4NQorCS5sb25nCTQ4MTI1MjUwMAorCS5sb25nCTEwMjMzMTAyMzQKKwkubG9uZwkyMTk1NjczNjAwCisJLmxvbmcJMTA3MTQ3NDE0NAorCS5sb25nCTM5NjIzOTU5ODEKKwkubG9uZwkxMDIxMzM5MDg4CisJLmxvbmcJNDQ1NzM2OTYKKwkubG9uZwkxMDcxNDkyNDQzCisJLmxvbmcJMzkzNjI4MTM5NQorCS5sb25nCTEwMjMwMTQ4MjkKKwkubG9uZwkyMjI2OTA1MzQ0CisJLmxvbmcJMTA3MTUxMDc4MQorCS5sb25nCTE1MTUzMjA0NzYKKwkubG9uZwkxMDI0MzIwNjIzCisJLmxvbmcJMjgwMDUxMjUxMgorCS5sb25nCTEwNzE1MjkxNjAKKwkubG9uZwkxMjI1NDAzNjk3CisJLmxvbmcJMTAyMTA4MTg0NgorCS5sb25nCTE2MTExMzYwMAorCS5sb25nCTEwNzE1NDc1ODEKKwkubG9uZwkzMDY0ODA5NzMzCisJLmxvbmcJMTAyNDE3MzkxNworCS5sb25nCTEzMzg0MTAyNDAKKwkubG9uZwkxMDcxNTY2MDQzCisJLmxvbmcJMjAyNzYwNDk3MworCS5sb25nCTEwMjQzNjI1MjYKKwkubG9uZwk1MjI0MzMyODAKKwkubG9uZwkxMDcxNTg0NTQ4CisJLmxvbmcJMjA1NTE3MTcyMworCS5sb25nCTEwMjM4NTg4MjUKKwkubG9uZwk1Mzk1OTU3NzYKKwkubG9uZwkxMDcxNjAzMDk2CisJLmxvbmcJMzg2ODgyMDEzNQorCS5sb25nCTEwMjI5MzY0MjQKKwkubG9uZwk0MjY0MDE3NjY0CisJLmxvbmcJMTA3MTYyMTY4NworCS5sb25nCTMyMjgwNjUxNDUKKwkubG9uZwkxMDIzNDc5NTc4CisJLmxvbmcJMTczMzkyNDA5NgorCS5sb25nCTEwNzE2NDAzMjQKKwkubG9uZwkzNTExOTM0NDc1CisJLmxvbmcJMTAyMjQ5NjM1NQorCS5sb25nCTEwODg4MDM4NAorCS5sb25nCTEwNzE2NTE4MzkKKwkubG9uZwk2MTU4ODA5NjcKKwkubG9uZwkxMDIzNTE5NzA2CisJLmxvbmcJMzUxNzg1NjUxMgorCS5sb25nCTEwNzE2NjEyMDIKKwkubG9uZwkzMTEzMTA4NTU5CisJLmxvbmcJMTAyNTE5MDI4OQorCS5sb25nCTQwNDMxNTMxNTIKKwkubG9uZwkxMDcxNjcwNTg5CisJLmxvbmcJMTU3MTgzNjIxOAorCS5sb25nCTEwMjMxMDYxMTYKKwkubG9uZwkzMjUxMjk5MDcyCisJLmxvbmcJMTA3MTY4MDAwMAorCS5sb25nCTM0NDQwNzYxMDIKKwkubG9uZwkxMDIyMTg3ODQxCisJLmxvbmcJMjczNjkyMTYwMAorCS5sb25nCTEwNzE2ODk0MzUKKwkubG9uZwkyNzI3NzE0ODMKKwkubG9uZwkxMDI1MDk1MjgwCisJLmxvbmcJMzg5NzY5ODU2MAorCS5sb25nCTEwNzE3MDM2MzMKKwkubG9uZwkyMDc1MzkwMTg4CisJLmxvbmcJMTAyMjQ4OTAyMgorCS5sb25nCTMyMDk0ODUwNTYKKwkubG9uZwkxMDcxNzIyNjUyCisJLmxvbmcJMTQzODA5NDA2NQorCS5sb25nCTEwMjE4NDQ5NDQKKwkubG9uZwkzNzgxNDMyMDY0CisJLmxvbmcJMTA3MTc0MTc3NAorCS5sb25nCTE2NzUwMTcxNDUKKwkubG9uZwkxMDI0MTQzODI4CisJLmxvbmcJMjY4NDE4NDA2NAorCS5sb25nCTEwNzE3NjEwMDMKKwkubG9uZwkyMjU5OTYzNzUzCisJLmxvbmcJMTAyNDczMTM5MworCS5sb25nCTE4NDA0ODk3MjgKKwkubG9uZwkxMDcxNzgwMzQyCisJLmxvbmcJMzM3Mjg4MzU5NworCS5sb25nCTEwMjM0MzE0MDgKKwkubG9uZwkzNzY0MDg3ODA4CisJLmxvbmcJMTA3MTc5OTc5NAorCS5sb25nCTMzMDc1MjMxMDIKKwkubG9uZwkxMDI0NDg1Nzg4CisJLmxvbmcJMzAwNjIzMjMyMAorCS5sb25nCTEwNzE4MTkzNjQKKwkubG9uZwkzMDg4OTcxOTY2CisJLmxvbmcJMTAyNTIxMzI1MQorCS5sb25nCTMzNzQ4ODEyODAKKwkubG9uZwkxMDcxODM5MDU1CisJLmxvbmcJODM0NDM3NzQ5CisJLmxvbmcJMTAyNTIzNjQ1MgorCS5sb25nCTc5NzI4NDg2NAorCS5sb25nCTEwNzE4NTg4NzIKKwkubG9uZwkzMTIyNjYzOTQxCisJLmxvbmcJMTAyNTMyMDQ3MworCS5sb25nCTU0NTc2NTEyMAorCS5sb25nCTEwNzE4Nzg4MTgKKwkubG9uZwk4MjY1Mzk2MjUKKwkubG9uZwkxMDIyNDUwOTU1CisJLmxvbmcJMTA3NTYyMjQwCisJLmxvbmcJMTA3MTg5ODg5OAorCS5sb25nCTMzOTU4NDYwMAorCS5sb25nCTEwMjI0ODEyNTUKKwkubG9uZwkyMTIzNjQ5MDI0CisJLmxvbmcJMTA3MTkxOTExNgorCS5sb25nCTM5MTI5NTk4MzMKKwkubG9uZwkxMDI0MzIxMDA5CisJLmxvbmcJMTU2MjM4NTY2NAorCS5sb25nCTEwNzE5Mzk0NzgKKwkubG9uZwkyODQ2MDY3MjMwCisJLmxvbmcJMTAyMzM0Mzk4MQorCS5sb25nCTI5NjMwODU4MjQKKwkubG9uZwkxMDcxOTU5OTg4CisJLmxvbmcJOTU0NTQ4NjI3CisJLmxvbmcJMTAyMTQ3NTIxMQorCS5sb25nCTMzMjU1NTA1OTIKKwkubG9uZwkxMDcxOTgwNjUyCisJLmxvbmcJMzQ1OTY1MTE1NQorCS5sb25nCTEwMjUzMDU1NzMKKwkubG9uZwk3NzU3NTI0NDgKKwkubG9uZwkxMDcyMDAxNDc2CisJLmxvbmcJMzU4Mjc0NjY2NworCS5sb25nCTEwMjM4NTk0NjAKKwkubG9uZwkzMjM4NTkwNzIwCisJLmxvbmcJMTA3MjAyMjQ2NAorCS5sb25nCTYzNDYzNjE2MgorCS5sb25nCTEwMjQ0NzIzNTMKKwkubG9uZwkyNzU4ODAxOTIwCisJLmxvbmcJMTA3MjA0MzYyNAorCS5sb25nCTMwNzgyMTYzMTkKKwkubG9uZwkxMDI1MzA0NTE2CisJLmxvbmcJMTM3MDMxOTEwNAorCS5sb25nCTEwNzIwNjQ5NjIKKwkubG9uZwkyNTcwNTY5MDc4CisJLmxvbmcJMTAyNTA5OTQ0MgorCS5sb25nCTI2MTU4MDUxODQKKwkubG9uZwkxMDcyMDg2NDg0CisJLmxvbmcJMzcyOTkzMzQxMgorCS5sb25nCTEwMjQ2MDUxMTIKKwkubG9uZwkzMDc3MzM2NTc2CisJLmxvbmcJMTA3MjEwODE5OAorCS5sb25nCTE5NDg5MTYwNjYKKwkubG9uZwkxMDI0NzgxNjAzCisJLmxvbmcJMTA5OTUyODE5MgorCS5sb25nCTEwNzIxMzAxMTIKKwkubG9uZwkzMTM5MTQzMTU3CisJLmxvbmcJMTAyMzcyOTM2MAorCS5sb25nCTEyMzE5MDMyMzIKKwkubG9uZwkxMDcyMTUyMjMzCisJLmxvbmcJMTM0OTUxMzQ3NworCS5sb25nCTEwMjQ3Mzc1MTUKKwkubG9uZwkxNTA3NTA0MTI4CisJLmxvbmcJMTA3MjE3NDU3MAorCS5sb25nCTM0ODQ1MTYzMjIKKwkubG9uZwkxMDI0MDAwOTU5CisJLmxvbmcJMjIxNDY1OTg0MAorCS5sb25nCTEwNzIxOTcxMzIKKwkubG9uZwkyNTYzODIwOTE3CisJLmxvbmcJMTAyNTIyNTUzNQorCS5sb25nCTE4MDQ3Mzk4NDAKKwkubG9uZwkxMDcyMjE5OTI5CisJLmxvbmcJNzYwMDM4NzQ2CisJLmxvbmcJMTAyNDQ4Mjg1NQorCS5sb25nCTE0MTM3NDY2ODgKKwkubG9uZwkxMDcyMjQyOTcxCisJLmxvbmcJMzQwMTczNDcxNAorCS5sb25nCTEwMjUxMjk4MzgKKwkubG9uZwk4MjE0MDk1MzYKKwkubG9uZwkxMDcyMjY2MjY5CisJLmxvbmcJMzcyOTc3MjU1MQorCS5sb25nCTEwMjU0ODQ3OTYKKwkubG9uZwkzMDMxODI1NjY0CisJLmxvbmcJMTA3MjI4OTgzNAorCS5sb25nCTEyMjI1Njc0OQorCS5sb25nCTEwMjQ3NTI1OTQKKwkubG9uZwkxNzEwNzg0MjU2CisJLmxvbmcJMTA3MjMxMzY4MAorCS5sb25nCTE1MTgyMDU0ODMKKwkubG9uZwkxMDI0NzI0ODA5CisJLmxvbmcJMzAyNTI2NTE1MgorCS5sb25nCTEwNzIzMzc4MTkKKwkubG9uZwk0MDk5NTE5ODkKKwkubG9uZwkxMDIyODM1NTU1CisJLmxvbmcJMjg3NzY5MDg4CisJLmxvbmcJMTA3MjM2MjI2NworCS5sb25nCTgwMDM1NTU5NAorCS5sb25nCTEwMjI0ODQ4NTAKKwkubG9uZwkxOTgxNzk4NDAKKwkubG9uZwkxMDcyMzg3MDM4CisJLmxvbmcJMzUwMjkyNjIxMworCS5sb25nCTEwMjQyMDkzNzMKKwkubG9uZwkxOTA5MTMwNDk2CisJLmxvbmcJMTA3MjQxMjE0OQorCS5sb25nCTMwNjQ2OTQzMTkKKwkubG9uZwkxMDI1MzgwODIzCisJLmxvbmcJMTk0MTczMjA5NgorCS5sb25nCTEwNzI0Mzc2MTkKKwkubG9uZwk0MTEyOTMwMzkwCisJLmxvbmcJMTAyNDI5NDY3OQorCS5sb25nCTM0OTIwMTA0OTYKKwkubG9uZwkxMDcyNDYzNDY3CisJLmxvbmcJMjY4NDkxODEwNworCS5sb25nCTEwMjMyMjAyMzMKKwkubG9uZwk4MTk1OTY4MAorCS5sb25nCTEwNzI0ODk3MTYKKwkubG9uZwkyMjAwMjEzNjYKKwkubG9uZwkxMDIwNjM1MTMxCisJLmxvbmcJMjI5NzgzNzA1NgorCS5sb25nCTEwNzI1MTYzODcKKwkubG9uZwk0MDI3NjgzODI2CisJLmxvbmcJMTAyMTA0MTE4NQorCS5sb25nCTI3MDQwNDA5NgorCS5sb25nCTEwNzI1NDM1MDgKKwkubG9uZwkyMDEyNzY2MDY1CisJLmxvbmcJMTAyMTc4MDc1MworCS5sb25nCTM2NjczNzY4OTYKKwkubG9uZwkxMDcyNTcxMTA1CisJLmxvbmcJMjcyNzk4MTUyMgorCS5sb25nCTEwMjMwMDk4NzQKKwkubG9uZwkzMzA0MDAyNTYKKwkubG9uZwkxMDcyNTk5MjEyCisJLmxvbmcJMjk0MDAxNzAwMworCS5sb25nCTEwMjUzOTM0MzkKKwkubG9uZwkxMTE5MjkzOTUyCisJLmxvbmcJMTA3MjYyNzg2MQorCS5sb25nCTE2MDg1NTA0MTYKKwkubG9uZwkxMDIyNjc1NjEyCisJLmxvbmcJMzUzNjE1NTkwNAorCS5sb25nCTEwNzI2NTcwOTEKKwkubG9uZwkzNDk2NjU3NzgKKwkubG9uZwkxMDI1MTU2NzUxCisJLmxvbmcJMzA3ODA0NjcyMAorCS5sb25nCTEwNzI2ODY5NDYKKwkubG9uZwkyMDE2MTU5OTk2CisJLmxvbmcJMTAyMjE5MzE2OQorCS5sb25nCTQ1NTIyODQxNgorCS5sb25nCTEwNzI3MDUzNjEKKwkubG9uZwkxOTA4NTM5MzI4CisJLmxvbmcJMTAyNjEyNjMzMgorCS5sb25nCTE4NzE1MDU2NjQKKwkubG9uZwkxMDcyNzIwOTg4CisJLmxvbmcJMjc4NDcwMDg5NAorCS5sb25nCTEwMjU5MjIyNzcKKwkubG9uZwkxNjMwOTk0NDMyCisJLmxvbmcJMTA3MjczNzAxMAorCS5sb25nCTM2MTEwNzY3OAorCS5sb25nCTEwMjI4ODcyNDQKKwkubG9uZwkyMDg0NTU4MzM2CisJLmxvbmcJMTA3Mjc1MzQ2MgorCS5sb25nCTI2NDI3ODQ1MDkKKwkubG9uZwkxMDcyNjg5MDgzCisJLmxvbmcJMTUxNDQ0MjUzMQorCS5sb25nCTEwNzI2ODg5NTMKKwkubG9uZwkzMzMxMDg5MzMKKwkubG9uZwkxMDcyNjg4ODIxCisJLmxvbmcJMzM5MjExMjAyNAorCS5sb25nCTEwNzI2ODg2ODYKKwkubG9uZwkyMDk5ODUyODYyCisJLmxvbmcJMTA3MjY4ODU1MAorCS5sb25nCTc0OTYwOTAwNAorCS5sb25nCTEwNzI2ODg0MTIKKwkubG9uZwkzNjM0NjMyNTk2CisJLmxvbmcJMTA3MjY4ODI3MQorCS5sb25nCTIxNjMyNDg0NjEKKwkubG9uZwkxMDcyNjg4MTI5CisJLmxvbmcJNjI4NjU3ODQ2CisJLmxvbmcJMTA3MjY4Nzk4NQorCS5sb25nCTMzMjQwMzY1MTEKKwkubG9uZwkxMDcyNjg3ODM4CisJLmxvbmcJMTY1NzYzMjgxNQorCS5sb25nCTEwNzI2ODc2OTAKKwkubG9uZwk0MjE3NTM4NzYwCisJLmxvbmcJMTA3MjY4NzUzOQorCS5sb25nCTI0MTE5NTE1OTcKKwkubG9uZwkxMDcyNjg3Mzg3CisJLmxvbmcJNTMzOTQ0ODcyCisJLmxvbmcJMTA3MjY4NzIzMworCS5sb25nCTI4NzY1NjY1MDgKKwkubG9uZwkxMDcyNjg3MDc2CisJLmxvbmcJODQ3OTM2ODkxCisJLmxvbmcJMTA3MjY4NjkxOAorCS5sb25nCTMwMzYwMTk5MTMKKwkubG9uZwkxMDcyNjg2NzU3CisJLmxvbmcJODQ4ODg0NTc1CisJLmxvbmcJMTA3MjY4NjU5NQorCS5sb25nCTI4NzQ0NDMzMjYKKwkubG9uZwkxMDcyNjg2NDMwCisJLmxvbmcJNTIwNzEzNjY2CisJLmxvbmcJMTA3MjY4NjI2NAorCS5sb25nCTIzNzU1NTY0ODEKKwkubG9uZwkxMDcyNjg2MDk1CisJLmxvbmcJNDE0MTkwNDk0OAorCS5sb25nCTEwNzI2ODU5MjQKKwkubG9uZwkxNTIyNjY2MzgyCisJLmxvbmcJMTA3MjY4NTc1MgorCS5sb25nCTMxMDU2MjQxMDQKKwkubG9uZwkxMDcyNjg1NTc3CisJLmxvbmcJMjk4NjY2MzI3CisJLmxvbmcJMTA3MjY4NTQwMQorCS5sb25nCTE2ODk1MjQ1MDAKKwkubG9uZwkxMDcyNjg1MjIyCisJLmxvbmcJMjk4MTAwMjIwMAorCS5sb25nCTEwNzI2ODUwNDEKKwkubG9uZwk0MTcwODQ0Mjg0CisJLmxvbmcJMTA3MjY4NDg1OAorCS5sb25nCTk2MTgwMjI2MworCS5sb25nCTEwNzI2ODQ2NzQKKwkubG9uZwkxOTQxNTAzNDU0CisJLmxvbmcJMTA3MjY4NDQ4NworCS5sb25nCTI4MTI2NDcxNzAKKwkubG9uZwkxMDcyNjg0Mjk4CisJLmxvbmcJMzU3Mjg3Mzg2OQorCS5sb25nCTEwNzI2ODQxMDcKKwkubG9uZwk0MjE5Nzk3ODIzCisJLmxvbmcJMTA3MjY4MzkxNAorCS5sb25nCTQ1NjAzOTc4OAorCS5sb25nCTEwNzI2ODM3MjAKKwkubG9uZwk4NjkwOTYxNTEKKwkubG9uZwkxMDcyNjgzNTIzCisJLmxvbmcJMTE2MTUzNTExOQorCS5sb25nCTEwNzI2ODMzMjQKKwkubG9uZwkxMzMwODY1ODY2CisJLmxvbmcJMTA3MjY4MzEyMworCS5sb25nCTEzNzQ1NzEyMDQKKwkubG9uZwkxMDcyNjgyOTIwCisJLmxvbmcJMTI5MDEwNzUzOAorCS5sb25nCTEwNzI2ODI3MTUKKwkubG9uZwkxMDc0OTA0ODM2CisJLmxvbmcJMTA3MjY4MjUwOAorCS5sb25nCTcyNjM2NjU4NworCS5sb25nCTEwNzI2ODIyOTkKKwkubG9uZwkyNDE4Njk3NjMKKwkubG9uZwkxMDcyNjgyMDg4CisJLmxvbmcJMzkxMzczMjA3OQorCS5sb25nCTEwNzI2ODE4NzQKKwkubG9uZwkzMTQ5MzQyNzY1CisJLmxvbmcJMTA3MjY4MTY1OQorCS5sb25nCTIyNDA5NjYzMDYKKwkubG9uZwkxMDcyNjgxNDQyCisJLmxvbmcJMTE4NTg3MzIxNgorCS5sb25nCTEwNzI2ODEyMjMKKwkubG9uZwk0Mjc2Mjc0NTkxCisJLmxvbmcJMTA3MjY4MTAwMQorCS5sb25nCTI5MTk0NTI4ODMKKwkubG9uZwkxMDcyNjgwNzc4CisJLmxvbmcJMTQwNzU2NTYzNQorCS5sb25nCTEwNzI2ODA1NTMKKwkubG9uZwk0MDMyNzQzNTUxCisJLmxvbmcJMTA3MjY4MDMyNQorCS5sb25nCTIyMDIxODg1NjUKKwkubG9uZwkxMDcyNjgwMDk2CisJLmxvbmcJMjA3OTc3NTc3CisJLmxvbmcJMTA3MjY3OTg2NQorCS5sb25nCTIzNDIxNjA1MTgKKwkubG9uZwkxMDcyNjc5NjMxCisJLmxvbmcJMTE4NTg0MjMKKwkubG9uZwkxMDcyNjc5Mzk2CisJLmxvbmcJMTgwNDAzNDQ1MworCS5sb25nCTEwNzI2NzkxNTgKKwkubG9uZwkzNDIwNzIyNzg3CisJLmxvbmcJMTA3MjY3ODkxOAorCS5sb25nCTU2MzkzMDQ1NgorCS5sb25nCTEwNzI2Nzg2NzcKKwkubG9uZwkxODIwNTM5MTkyCisJLmxvbmcJMTA3MjY3ODQzMworCS5sb25nCTI4OTI1MDE2MDYKKwkubG9uZwkxMDcyNjc4MTg3CisJLmxvbmcJMzc3NjcxMDMyMAorCS5sb25nCTEwNzI2Nzc5MzkKKwkubG9uZwkxNzUwNjMzMzcKKwkubG9uZwkxMDcyNjc3NjkwCisJLmxvbmcJNjc0MzMzMTcxCisJLmxvbmcJMTA3MjY3NzQzOAorCS5sb25nCTk3NjM2MzAyNgorCS5sb25nCTEwNzI2NzcxODQKKwkubG9uZwkxMDc3OTM1OTM0CisJLmxvbmcJMTA3MjY3NjkyOAorCS5sb25nCTE5MjEwNzU0OTAKKwkubG9uZwkxMDcyNjc2NTQwCisJLmxvbmcJODgxNDkzMzAyCisJLmxvbmcJMTA3MjY3NjAxNgorCS5sb25nCTMyNzU3NTI0MzkKKwkubG9uZwkxMDcyNjc1NDgzCisJLmxvbmcJNDg2ODU1NTg4CisJLmxvbmcJMTA3MjY3NDk0MworCS5sb25nCTEwNzcyMjkxMTEKKwkubG9uZwkxMDcyNjc0Mzk0CisJLmxvbmcJNzIzOTUwMzA4CisJLmxvbmcJMTA3MjY3MzgzNworCS5sb25nCTM2OTM1ODIxOTkKKwkubG9uZwkxMDcyNjczMjcxCisJLmxvbmcJMTM2NzMzNTMxNgorCS5sb25nCTEwNzI2NzI2OTgKKwkubG9uZwkyMzA1ODM3MDIwCisJLmxvbmcJMTA3MjY3MjExNgorCS5sb25nCTIxODQzNTg2NDEKKwkubG9uZwkxMDcyNjcxNTI2CisJLmxvbmcJOTcyNjgyODQwCisJLmxvbmcJMTA3MjY3MDkyOAorCS5sb25nCTI5MzUxMDE3NjIKKwkubG9uZwkxMDcyNjcwMzIxCisJLmxvbmcJMzc0NTUxMzI2MworCS5sb25nCTEwNzI2Njk3MDYKKwkubG9uZwkzMzcyMzIwODg2CisJLmxvbmcJMTA3MjY2OTA4MworCS5sb25nCTE3ODM0NjQ2MjAKKwkubG9uZwkxMDcyNjY4NDUyCisJLmxvbmcJMzI0MTM4NjIxNQorCS5sb25nCTEwNzI2Njc4MTIKKwkubG9uZwkzNDE4MTI1Mjg0CisJLmxvbmcJMTA3MjY2NzE2NAorCS5sb25nCTIyODAyMTkxNDgKKwkubG9uZwkxMDcyNjY2NTA4CisJLmxvbmcJNDA4ODcwMDc1OAorCS5sb25nCTEwNzI2NjU4NDMKKwkubG9uZwkyMTkyMjc0MDAKKwkubG9uZwkxMDcyNjY1MTcxCisJLmxvbmcJMzUyMTgxNjkxOAorCS5sb25nCTEwNzI2NjQ0ODkKKwkubG9uZwkxMDc2MjA1Mjc5CisJLmxvbmcJMTA3MjY2MzgwMAorCS5sb25nCTE0MzY0ODQ2MTYKKwkubG9uZwkxMDcyNjYzMTAyCisJLmxvbmcJMjcxMzYyNjEwCisJLmxvbmcJMTA3MjY2MjM5NgorCS5sb25nCTE4Mzg5OTY2ODgKKwkubG9uZwkxMDcyNjYxNjgxCisJLmxvbmcJMTgwNzEyMjUxOAorCS5sb25nCTEwNzI2NjA5NTgKKwkubG9uZwkxMzc5NTM1NDIKKwkubG9uZwkxMDcyNjYwMjI3CisJLmxvbmcJMTA4ODE3ODU4NAorCS5sb25nCTEwNzI2NTk0ODcKKwkubG9uZwkzMjQwNTc1MzcKKwkubG9uZwkxMDcyNjU4NzM5CisJLmxvbmcJMjEwMTI4ODA3NgorCS5sb25nCTEwNzI2NTc5ODIKKwkubG9uZwkyMDg1MTMzOTc0CisJLmxvbmcJMTA3MjY1NzIxNworCS5sb25nCTIzNTMyNDQ1MQorCS5sb25nCTEwNzI2NTY0NDQKKwkubG9uZwk4MDYwNTE1OTIKKwkubG9uZwkxMDcyNjU1NjYyCisJLmxvbmcJMzc1NjAzMzE0MAorCS5sb25nCTEwNzI2NTQ4NzEKKwkubG9uZwk0NTM1NDI1NDMKKwkubG9uZwkxMDcyNjU0MDczCisJLmxvbmcJMzc0MTE3NzMyNworCS5sb25nCTEwNzI2NTMyNjUKKwkubG9uZwk2OTEyMTYxMDkKKwkubG9uZwkxMDcyNjUyNDUwCisJLmxvbmcJNDE0NTIyMzM3MgorCS5sb25nCTEwNzI2NTE2MjUKKwkubG9uZwkxMTc0NDM5MDkxCisJLmxvbmcJMTA3MjY1MDc5MworCS5sb25nCTMyNDQxNjEzOQorCS5sb25nCTEwNzI2NDk5NTIKKwkubG9uZwkxNTUwMjQ2MzEwCisJLmxvbmcJMTA3MjY0OTEwMgorCS5sb25nCTUxMTUyNDY3NAorCS5sb25nCTEwNzI2NDgyNDQKKwkubG9uZwkxNDU3MjQ4NDgyCisJLmxvbmcJMTA3MjY0NzM3NworCS5sb25nCTQ1OTQ0OTU1CisJLmxvbmcJMTA3MjY0NjUwMgorCS5sb25nCTUyNTUzNzM5NworCS5sb25nCTEwNzI2NDU2MTgKKwkubG9uZwkyODQ4NDQwMTg4CisJLmxvbmcJMTA3MjY0NDcyNQorCS5sb25nCTI2NzE1NTU2MzMKKwkubG9uZwkxMDcyNjQzODI0CisJLmxvbmcJNDI0MTE3MjYzNworCS5sb25nCTEwNzI2NDI5MTQKKwkubG9uZwkzMjEzMDk0Mjc4CisJLmxvbmcJMTA3MjY0MTk5NgorCS5sb25nCTM4MzI1MDM2ODgKKwkubG9uZwkxMDcyNjQxMDY5CisJLmxvbmcJMTc1NDA5MTUzNAorCS5sb25nCTEwNzI2NDAxMzQKKwkubG9uZwkxMjIxOTIxODA0CisJLmxvbmcJMTA3MjYzOTE5MAorCS5sb25nCTIxODQ1MjY0ODkKKwkubG9uZwkxMDcyNjM4MjM3CisJLmxvbmcJMjk0OTAyMDg5CisJLmxvbmcJMTA3MjYzNzI3NgorCS5sb25nCTQwOTAzNzUyNzAKKwkubG9uZwkxMDcyNjM2MzA1CisJLmxvbmcJNjMyODYwOTA2CisJLmxvbmcJMTA3MjYzNTMyNworCS5sb25nCTI3NTM0OTg3MDIKKwkubG9uZwkxMDcyNjM0MzM5CisJLmxvbmcJMTgwODAwOTI1MgorCS5sb25nCTEwNzI2MzMzNDMKKwkubG9uZwkyMDM2NDI4NjcyCisJLmxvbmcJMTA3MjYzMjMzOAorCS5sb25nCTMzODMyMzU2MjYKKwkubG9uZwkxMDcyNjMxMzI0CisJLmxvbmcJMTQ5NzM0NzQ4NAorCS5sb25nCTEwNzI2MzAzMDIKKwkubG9uZwk2MTcwMTgzMTcKKwkubG9uZwkxMDcyNjI5MjcxCisJLmxvbmcJNjg0OTMzMDU4CisJLmxvbmcJMTA3MjYyODIzMQorCS5sb25nCTE2NDMxNzA3OTgKKwkubG9uZwkxMDcyNjI3MTgyCisJLmxvbmcJMzAxMTA2NjM2MAorCS5sb25nCTEwNzI2MjU1OTIKKwkubG9uZwk5NTcxNTg3MTMKKwkubG9uZwkxMDcyNjIzNDQyCisJLmxvbmcJMTM5MDkwNzk0MQorCS5sb25nCTEwNzI2MjEyNTYKKwkubG9uZwkzODE5MTU1MjcwCisJLmxvbmcJMTA3MjYxOTAzNAorCS5sb25nCTM0NDM1NzExOTYKKwkubG9uZwkxMDcyNjE2Nzc3CisJLmxvbmcJNDA0NTQxMjQ1OAorCS5sb25nCTEwNzI2MTQ0ODQKKwkubG9uZwk4MDU1MDM5MjMKKwkubG9uZwkxMDcyNjEyMTU2CisJLmxvbmcJMTc3ODkyMjAxNQorCS5sb25nCTEwNzI2MDk3OTEKKwkubG9uZwkyMTI1MDMzNjY1CisJLmxvbmcJMTA3MjYwNzM5MAorCS5sb25nCTEyODcyMDM4NjMKKwkubG9uZwkxMDcyNjA0OTUzCisJLmxvbmcJMjk5MjYyOTU2OAorCS5sb25nCTEwNzI2MDI0NzkKKwkubG9uZwkyMzY3MjY3MTI3CisJLmxvbmcJMTA3MjU5OTk2OQorCS5sb25nCTMxMTU1MjYwNDcKKwkubG9uZwkxMDcyNTk3NDIyCisJLmxvbmcJMzQwMjE5NTM5CisJLmxvbmcJMTA3MjU5NDgzOQorCS5sb25nCTIwMTcyMTU3MTkKKwkubG9uZwkxMDcyNTkyMjE4CisJLmxvbmcJMzIyNTQ0MzQyNAorCS5sb25nCTEwNzI1ODk1NjAKKwkubG9uZwkzMzI2NTY1NjczCisJLmxvbmcJMTA3MjU4Njg2NQorCS5sb25nCTE2Njk4MTEyMTEKKwkubG9uZwkxMDcyNTg0MTMzCisJLmxvbmcJMTg4NjczNTAyMgorCS5sb25nCTEwNzI1ODEzNjMKKwkubG9uZwkzMzAxMDcxMTcxCisJLmxvbmcJMTA3MjU3ODU1NQorCS5sb25nCTkyODUxNDI4MworCS5sb25nCTEwNzI1NzU3MTAKKwkubG9uZwkyNjU2MzY0MDU5CisJLmxvbmcJMTA3MjU3MjgyNgorCS5sb25nCTM0NzM0OTA1MDcKKwkubG9uZwkxMDcyNTY5OTA0CisJLmxvbmcJMjY0OTk2NTYwNgorCS5sb25nCTEwNzI1NjY5NDQKKwkubG9uZwkzNzM2ODE5MDUyCisJLmxvbmcJMTA3MjU2Mzk0NQorCS5sb25nCTE2ODA4ODUxNzUKKwkubG9uZwkxMDcyNTYwOTA4CisJLmxvbmcJNDQxMzc3MQorCS5sb25nCTEwNzI1NTc4MzIKKwkubG9uZwkyMjE0ODY5NzUzCisJLmxvbmcJMTA3MjU1NDcxNgorCS5sb25nCTMyMTQ3MjUxODQKKwkubG9uZwkxMDcyNTUxNTYxCisJLmxvbmcJMjE4NjA3OTkwMworCS5sb25nCTEwNzI1NDgzNjcKKwkubG9uZwkyNTkwMzcyMTMxCisJLmxvbmcJMTA3MjU0NTEzMworCS5sb25nCTM1NzgxNDYwNzkKKwkubG9uZwkxMDcyNTQxODU5CisJLmxvbmcJNDI4MzcxMjc1NQorCS5sb25nCTEwNzI1Mzg1NDUKKwkubG9uZwkzODI0ODM0NTEwCisJLmxvbmcJMTA3MjUzNTE5MQorCS5sb25nCTEzMDI0MDAyOTgKKwkubG9uZwkxMDcyNTMxNzk3CisJLmxvbmcJOTUwNTg2MzYKKwkubG9uZwkxMDcyNTI4MzYyCisJLmxvbmcJMzU2MzkwNjA2MworCS5sb25nCTEwNzI1MjQ4ODUKKwkubG9uZwkyMTY3MjMwNzMwCisJLmxvbmcJMTA3MjUyMTM2OAorCS5sb25nCTM1MjQ5MTgzMzQKKwkubG9uZwkxMDcyNTE3ODA5CisJLmxvbmcJMjM1MzMwNDkxOAorCS5sb25nCTEwNzI1MTQyMDkKKwkubG9uZwkxOTM5NjI1ODM5CisJLmxvbmcJMTA3MjUxMDU2NworCS5sb25nCTEyNTY3MTQ1ODEKKwkubG9uZwkxMDcyNTA2ODgzCisJLmxvbmcJMzU1MjUyNTg0OAorCS5sb25nCTEwNzI1MDMxNTYKKwkubG9uZwkzNDY0ODA5NTIyCisJLmxvbmcJMTA3MjQ5OTM4NworCS5sb25nCTQyMDA1NDI1OTMKKwkubG9uZwkxMDcyNDk1NTc1CisJLmxvbmcJMzU1NjA5MTI0CisJLmxvbmcJMTA3MjQ5MTcyMQorCS5sb25nCTM2ODQxMzkwOTkKKwkubG9uZwkxMDcyNDg3ODIyCisJLmxvbmcJMTQ4MzU1OTE4CisJLmxvbmcJMTA3MjQ4Mzg4MQorCS5sb25nCTE0NTc2ODkyNDIKKwkubG9uZwkxMDcyNDc5ODk1CisJLmxvbmcJMjExODU5MTU5NgorCS5sb25nCTEwNzI0NzU4NjUKKwkubG9uZwk5MDg4NDgwODkKKwkubG9uZwkxMDcyNDcxNzkxCisJLmxvbmcJODc3MDMyNjg5CisJLmxvbmcJMTA3MjQ2NzY3MgorCS5sb25nCTc1MjAxMjMwNAorCS5sb25nCTEwNzI0NjM1MDgKKwkubG9uZwkzNTMyMzAxNzQ5CisJLmxvbmcJMTA3MjQ1OTI5OAorCS5sb25nCTM2MDA1NjMyMjEKKwkubG9uZwkxMDcyNDU1MDQzCisJLmxvbmcJMzkwMjg1NzA4NAorCS5sb25nCTEwNzI0NTA3NDIKKwkubG9uZwkzMDYzMTAxMDM2CisJLmxvbmcJMTA3MjQ0NjM5NQorCS5sb25nCTM5NzIzNDQzNzQKKwkubG9uZwkxMDcyNDQyMDAxCisJLmxvbmcJOTAzMTgzNTQ5CisJLmxvbmcJMTA3MjQzNzU2MQorCS5sb25nCTk4Mzg5MjkzOAorCS5sb25nCTEwNzI0MzMwNzMKKwkubG9uZwkyNzIyODU4NTY4CisJLmxvbmcJMTA3MjQyODUzNworCS5sb25nCTMwMjc5MDUxNQorCS5sb25nCTEwNzI0MjM5NTQKKwkubG9uZwk3NTk4MTEwNTcKKwkubG9uZwkxMDcyNDE5MzIyCisJLmxvbmcJMjUwNzgwOTkyMgorCS5sb25nCTEwNzI0MTQ2NDEKKwkubG9uZwkyMzg4NDA4ODEzCisJLmxvbmcJMTA3MjQwNzUyOAorCS5sb25nCTIwODQ0OTI5NDIKKwkubG9uZwkxMDcyMzk3ODcwCisJLmxvbmcJMjQzNTcwMzMwMQorCS5sb25nCTEwNzIzODgwMTAKKwkubG9uZwkxOTM1NDMzMzYwCisJLmxvbmcJMTA3MjM3Nzk0NQorCS5sb25nCTI3NDIwNDcyOTAKKwkubG9uZwkxMDcyMzY3NjcxCisJLmxvbmcJMjA1MzI4NDIwNQorCS5sb25nCTEwNzIzNTcxODUKKwkubG9uZwk2NTc3ODMzNjcKKwkubG9uZwkxMDcyMzQ2NDgzCisJLmxvbmcJMjg5MzY2NDg0MQorCS5sb25nCTEwNzIzMzU1NjAKKwkubG9uZwkzNzE4OTA2NDA1CisJLmxvbmcJMTA3MjMyNDQxMworCS5sb25nCTE1NDc4OTYzMDMKKwkubG9uZwkxMDcyMzEzMDM4CisJLmxvbmcJMjQ5NDA1ODQ0MAorCS5sb25nCTEwNzIzMDE0MjkKKwkubG9uZwkzMTMzMjM4NzQyCisJLmxvbmcJMTA3MjI4OTU4MgorCS5sb25nCTMzMjcwMDAwODYKKwkubG9uZwkxMDcyMjc3NDkyCisJLmxvbmcJMTg2MDY2NzI3NAorCS5sb25nCTEwNzIyNjUxNTQKKwkubG9uZwk2NjUzNDA3NDcKKwkubG9uZwkxMDcyMjUyNTYyCisJLmxvbmcJNDQzMzQ3ODQxCisJLmxvbmcJMTA3MjIzOTcxMAorCS5sb25nCTU4MTI4MjYxOAorCS5sb25nCTEwNzIyMjY1OTIKKwkubG9uZwkzMzQ5NzgwNDY1CisJLmxvbmcJMTA3MjIxMzIwMQorCS5sb25nCTkxNDIxNzYwNgorCS5sb25nCTEwNzIxOTk1MzIKKwkubG9uZwk5ODk3OTc2NjEKKwkubG9uZwkxMDcyMTg1NTc2CisJLmxvbmcJOTQ1NDM2NDE2CisJLmxvbmcJMTA3MjE3MTMyNgorCS5sb25nCTU0OTI5MTMwMAorCS5sb25nCTEwNzIxNTY3NzQKKwkubG9uZwkxODE0NjM2Mzg5CisJLmxvbmcJMTA3MjE0MTkxMQorCS5sb25nCTIzOTA5Mjg1OAorCS5sb25nCTEwNzIxMjY3MjkKKwkubG9uZwkxNzk0NjgwNzI0CisJLmxvbmcJMTA3MjExMTIxNworCS5sb25nCTEyNDE1MzQ2NzgKKwkubG9uZwkxMDcyMDk1MzY2CisJLmxvbmcJMzM2NjU2NjIxNAorCS5sb25nCTEwNzIwNzkxNjQKKwkubG9uZwkxMjQ0MDkwODI4CisJLmxvbmcJMTA3MjA2MjYwMQorCS5sb25nCTE3MDg0NDgxMjAKKwkubG9uZwkxMDcyMDQ1NjYzCisJLmxvbmcJMzU0NDI2MDY1MAorCS5sb25nCTEwNzIwMjgzMzcKKwkubG9uZwkxNDAyNzQxNDAzCisJLmxvbmcJMTA3MjAxMDYxMAorCS5sb25nCTI1NTE5MzY4ODgKKwkubG9uZwkxMDcxOTkyNDY1CisJLmxvbmcJNjE3NjY5NzM5CisJLmxvbmcJMTA3MTk3Mzg4NworCS5sb25nCTc5NDAwMjE4NgorCS5sb25nCTEwNzE5NTQ4NTcKKwkubG9uZwkyMDIxMjM3NjkzCisJLmxvbmcJMTA3MTkzNTM1NgorCS5sb25nCTU0MDQ1MDM4NAorCS5sb25nCTEwNzE5MTUzNjQKKwkubG9uZwkxOTIwNTU1NTM3CisJLmxvbmcJMTA3MTg5NDg1NworCS5sb25nCTI4Nzk1ODUyMDYKKwkubG9uZwkxMDcxODczODExCisJLmxvbmcJMzAwMDIzNzQ1NQorCS5sb25nCTEwNzE4NTIxOTkKKwkubG9uZwkzMzUyOTc0MzQ2CisJLmxvbmcJMTA3MTgyOTk5MQorCS5sb25nCTU2OTYyOTkzNworCS5sb25nCTEwNzE4MDcxNTUKKwkubG9uZwkyMDc3MjM3MjA4CisJLmxvbmcJMTA3MTc4MzY1MworCS5sb25nCTIyODQ4OTE4MDUKKwkubG9uZwkxMDcxNzU5NDQ2CisJLmxvbmcJMTIyNjY1MTc4NAorCS5sb25nCTEwNzE3MzQ0ODkKKwkubG9uZwkxMTAyMDQ3NDA1CisJLmxvbmcJMTA3MTcwODczMQorCS5sb25nCTIwMDk4OTYzODQKKwkubG9uZwkxMDcxNjgyMTE1CisJLmxvbmcJOTI3NDE5MDgyCisJLmxvbmcJMTA3MTY1NDU3NworCS5sb25nCTg1MDEwMzY2CisJLmxvbmcJMTA3MTYwNzQxMworCS5sb25nCTY5NjQzMTAyNQorCS5sb25nCTEwNzE1NDgxODAKKwkubG9uZwkyNjExNDEwNTQxCisJLmxvbmcJMTA3MTQ4NjU4NQorCS5sb25nCTI2MTI1OTM2NTgKKwkubG9uZwkxMDcxNDIyMzk2CisJLmxvbmcJMzU0ODE1NTMwNgorCS5sb25nCTEwNzEzNTUzMzYKKwkubG9uZwkzODg3OTk3NDg0CisJLmxvbmcJMTA3MTI4NTA3MworCS5sb25nCTI0NDg1NDc2MworCS5sb25nCTEwNzEyMTEyMDIKKwkubG9uZwk0MjE0NDQ1NjQ4CisJLmxvbmcJMTA3MTEzMzIxNgorCS5sb25nCTIzMDM5NjY3MjcKKwkubG9uZwkxMDcxMDUwNDc4CisJLmxvbmcJMzk5MTA0MDAxMworCS5sb25nCTEwNzA5NjIxNTIKKwkubG9uZwkzMTI2OTUyMjc4CisJLmxvbmcJMTA3MDg2NzExOAorCS5sb25nCTE4MTc0NDgzNzgKKwkubG9uZwkxMDcwNzYzODA0CisJLmxvbmcJMTc5MzgxNDg2NAorCS5sb25nCTEwNzA2NDk4ODQKKwkubG9uZwkzNTA3MjI0MDcyCisJLmxvbmcJMTA3MDQ0NzE5MworCS5sb25nCTQwMjc2MDkxMDUKKwkubG9uZwkxMDcwMTQ4NzcyCisJLmxvbmcJNTc3NTA3OTkzCisJLmxvbmcJMTA2OTc3OTQxNAorCS5sb25nCTIzMTAyMzI0MTkKKwkubG9uZwkxMDY4OTMxODI5CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTIxNDc0ODM2NDcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTUwOTEyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNTg0CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNjE3ODIxNAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDczMjkxNzcxCisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsNjA5NgorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L2VfYXRhbjIuUyBiL2xpYm0veDg2L2VfYXRhbjIuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZWZkZjY1Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvZV9hdGFuMi5TCkBAIC0wLDAgKzEsMTIyMSBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vCisvLzEuIFRoZSBtZXRob2QgaXMgYmFzZWQgb24gdGhlIHJlbGF0aW9uc2hpcCBvZiBhdGFuMihZLFgpIHRvIGF0YW4ofFkvWHwpCisvLyAgIGFzIGZvbGxvd3MuCisvLyAgICAgICAgICAgICAgICAgICAvICBzaWduKFkpIGF0YW4ofFkvWHwpICAgICAgICAgICAgICAgIGlmIFggPiAwCisvLyAgICAgICBhdGFuMihZLFgpID0KKy8vICAgICAgICAgICAgICAgICAgIFwgIHNpZ24oWSkqcGkgIC0gc2lnbihZKSphdGFuKHxZL1h8KSAgaWYgWCA8IDAKKy8vCisvLyAgIFRodXMsIGF0YW4yKFksWCkgaXMgb2YgdGhlIGZvcm0gIGF0YW4yKFksWCkgPSBQSSArIHNnbiphdGFuKHxZL1h8KQorLy8gICB3aGVyZSBQSSBhbmQgc2duIGNhbiBiZSBkZXRlcm1pbmVkIGJ5IHRoZSBmb3VyIHBvc3NpYmxlIGNvbWJpbmF0aW9ucyBvZgorLy8gICBvZiB0aGUgcGFpciAoc2lnbihYKSxzaWduKFkpKS4gV2UgY29uY2VudHJhdGUgb24gdGhlIG51bWVyaWNhbCBtZXRob2QKKy8vICAgZm9yIGF0YW4ofFkvWHwpLgorLy8KKy8vMi4gRm9yIHxZL1h8IDwgMl4oLTY0KSwgYXRhbih8WS9YfCkgfj1+IHxZL1h8LiBIZW5jZSwgYXRhbjIoWSxYKSBpcyAgWS9YCisvLyAgIGlmIFggPiAwLCBhbmQgc2lnbihZKSpwaSBvdGhlcndpc2UuCisvLzMuIEZvciB8WS9YfCA+PSAyXig2NSksIGF0YW4ofFkvWHwpIH49fiBwaS8yLiBIZW5jZSBhdGFuMihZLFgpIGlzIHNpZ24oWSlwaS8yLgorLy80LiBGb3IgMl4oLTY0KSA8PSB8WS9YfCA8IDJeKC01KSwgYXRhbih8WS9YfCkgaXMgYXBwcm94aW1hdGVkIGJ5IGEgcG9seW5vbWlhbAorLy8gICBvZiB0aGUgZm9ybSAgWiArIFoqRSpwb2x5bm9taWFsKEUpLCB3aGVyZSBaID0gfFkvWHwgYW5kIEUgPSBaKlouCisvLzUuIEZvciB8WS9YfCA+IDJeKDUpLCBhdGFuKHxZL1h8KSA9IHBpLzIgKyBhdGFuKC18WC9ZfCksIGFuZCBhdGFuKC18WC9ZfCkgaXMKKy8vICAgY2FsY3VsYXRlZCB1c2luZyB0aGUgcG9seW5vbWlhbCBpbiA0IGFib3ZlLgorLy82LiBGb3IgMl4oLTUpIDw9IHxZL1h8IDw9IDJeKDUpLCB3ZSBlbXBsb3kgYSB0YWJsZSBsb29rdXAgbWV0aG9kLiBGaXJzdCwKKy8vICAgd2Ugb2J0YWluIEIgPSAyXmsgKiAxLmIxIGIyIGIzIGI0ID0gMl5rICogKDEray8xNikgdGhhdCBhcHByb3hpbWF0ZQorLy8gICB8WS9YfCB0byBhcHByb3hpbWF0ZWx5IDUgc2lnbmlmaWNhbnQgYml0cy4gSGVuY2UsIGF0YW4ofFkvWHwpIGlzCisvLworLy8gICAgICBhdGFuKHxZL1h8KSAgPSAgYXRhbihCKSArIGF0YW4oWiksIHdoZXJlICBaID0gKHxZfC1CfFh8KS8ofFh8K0J8WXwpLgorLy8gICAgICAgICAgICAgICAgICB+PX4gICB0YXUgICArIFogKyBaKkUqcG9seW5vbWlhbChFKSwgd2hlcmUgRSA9IFoqWi4KKy8vCisvLyAgIEIgaGFzIHRoZSByYW5nZSBmcm9tIDJeKC02KSooMSsxNC8xNikgdG8gMl41ID0gMl4oNSkqKDErMC8xNiksIHRvdGFsbHkKKy8vICAgMTYzIHBvc3NpYmxlIHZhbHVlcy4gVGhlc2UgdmFsdWVzIGFyZSBjYWxjdWxhdGVkIGJlZm9yZWhhbmQgYW5kIHN0b3JlZAorLy8gICBpbiBhIHRhYmxlLiBUaGUgcG9seW5vbWlhbCBpcyB0aGUgb25lIHVzZWQgaW4gNC4KKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGF0YW4yKCstMCwgKzApID0gKy0wCisvLyAgYXRhbjIoKy0wLCAtMCkgPSArLXBpCisvLyAgYXRhbjIoKy0wLCB4KSA9ICstMCwgZm9yIHggPiAwLCBhbmQgKy1waSwgZm9yIHggPCAwCisvLyAgYXRhbjIoeSwgKy0wKSA9ICtwaS8yIGZvciB5ID4gMCwgYW5kIC1waS8yIGZvciB5IDwgMAorLy8gIGF0YW4yKCsteSwgK0lORikgPSArLTAsIGZvciBmaW5pdGUgeSA+IDAKKy8vICBhdGFuMigrLXksIC1JTkYpID0gKy1waSwgZm9yIGZpbml0ZSB5ID4gMAorLy8gIGF0YW4yKCstSU5GLCB4KSA9ICstcGkvMiwgZm9yIGZpbml0ZSB4CisvLyAgYXRhbjIoKy1JTkYsICtJTkYpID0gKy1waS80CisvLyAgYXRhbjIoKy1JTkYsIC1JTkYpID0gKy0zKnBpLzQKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24KK3N0YXRpY19mdW5jOgorLi5CMS4xOgorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlYXgKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlYXgpLCAlZWF4CisgICAgICAgIGxlYSAgICAgICBzdGF0aWNfY29uc3RfdGFibGVAR09UT0ZGKCVlYXgpLCAlZWF4CisgICAgICAgIHJldAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICBhdGFuMgorRU5UUlkoYXRhbjIpCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorIyBwYXJhbWV0ZXIgMjogMTYgKyAlZWJwCisuLkIyLjE6CisuLkIyLjI6CisgICAgICAgIHB1c2hsICAgICAlZWJwCisgICAgICAgIG1vdmwgICAgICAlZXNwLCAlZWJwCisgICAgICAgIHN1YmwgICAgICAkMTIwLCAlZXNwCisgICAgICAgIG1vdmwgICAgICAlZWJ4LCA2NCglZXNwKQorICAgICAgICBjYWxsICAgICAgc3RhdGljX2Z1bmMKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlYngKKyAgICAgICAgbW92c2QgICAgIDEzNiglZXNwKSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDEyOCglZXNwKSwgJXhtbTAKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBtb3ZxICAgICAgJXhtbTAsIDgoJWVzcCkKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBtb3ZxICAgICAgJXhtbTEsIDE2KCVlc3ApCisgICAgICAgIHN1YmwgICAgICAkMTQ0NDgsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzODQwLCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxNDQ0OCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDM4NDAsICVlYXgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgdW5wY2tscGQgICV4bW0xLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQyMDQ4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTUKKyAgICAgICAgcGFkZHcgICAgICV4bW0xLCAleG1tNQorICAgICAgICBwc3JscSAgICAgJDI5LCAleG1tNQorICAgICAgICByY3BzcyAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgbW92bCAgICAgICQxNDMzNiwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW00CisgICAgICAgIHBzbGxxICAgICAkMjksICV4bW0zCisgICAgICAgIHBhZGR3ICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgeG9ycGQgICAgICV4bW03LCAleG1tNworICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMiwgJWVheCwgJXhtbTYKKyAgICAgICAgbW92bCAgICAgICQzMjc2NywgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW03CisgICAgICAgIHBhZGRkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgYW5kcGQgICAgICV4bW03LCAleG1tMworICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW01CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTMsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQxNjQ0OCwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW0yCisgICAgICAgIG1pbnNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgbW92bXNrcGQgICV4bW0wLCAlZWR4CisgICAgICAgIHBzbGxxICAgICAkMSwgJXhtbTAKKyAgICAgICAgcHNybHEgICAgICQxLCAleG1tMAorICAgICAgICBjbXBzZCAgICAgJDIsICV4bW0yLCAleG1tNQorICAgICAgICBwc2xscSAgICAgJDEsICV4bW0xCisgICAgICAgIHBzcmxxICAgICAkMSwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQwLCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMCwgJWVjeCwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIGFuZHBkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTYyODYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQxMTIxLCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBkaXZzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTMsICVlY3gKKyAgICAgICAgbW92c2QgICAgIDI5NDQoJWVieCksICV4bW0yCisgICAgICAgIG1vdnNkICAgICAyOTYwKCVlYngpLCAleG1tMworICAgICAgICBwZXh0cncgICAgJDAsICV4bW01LCAlZWF4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIG1vdmFwZCAgICAyNjg4KCVlYngsJWVkeCw4KSwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgIDI3NTIoJWVieCwlZWR4LDgpLCAleG1tMQorICAgICAgICBzdWJsICAgICAgJDE2Mjg2LCAlZWN4CisgICAgICAgIG5vdGwgICAgICAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMSwgJWVheAorICAgICAgICBhZGRsICAgICAgJWVheCwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVjeAorICAgICAgICBtb3ZhcGQgICAgKCVlYngsJWVjeCw4KSwgJXhtbTUKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTYsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgdW5wY2tocGQgICV4bW01LCAleG1tNQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgIDI5NTIoJWVieCksICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgIDI5NjgoJWVieCksICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG1vdnNkICAgICAleG1tMSwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQ5NDIsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQ5NDIsICVlYXgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW00CisgICAgICAgIGRpdnNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgbW92YXBkICAgIDI3NTIoJWVieCwlZWR4LDgpLCAleG1tNgorICAgICAgICB1bnBja2xwZCAgJXhtbTMsICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tMgorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAyODE2KCVlYngsJWVkeCw4KSwgJXhtbTcKKyAgICAgICAgbW92c2QgICAgIDI5NDQoJWVieCksICV4bW0xCisgICAgICAgIG1vdnNkICAgICAyOTYwKCVlYngpLCAleG1tNQorICAgICAgICBhbmRwZCAgICAgMjg4MCglZWJ4LCVlZHgsOCksICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgIDI5NTIoJWVieCksICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgIDI5NjgoJWVieCksICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNQorICAgICAgICB1bnBja2hwZCAgJXhtbTcsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTUKKyAgICAgICAgbW92c2QgICAgICV4bW01LCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGpnICAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMzI3NjcsICVlY3gKKyAgICAgICAgamcgICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisgICAgICAgIGRpdnNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBhbmRwZCAgICAgMjY3MiglZWJ4KSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDI2NDAoJWVieCksICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICBhbmRwZCAgICAgMjY3MiglZWJ4KSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDI2MjQoJWVieCksICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjIKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjIKKyAgICAgICAgbW92c2QgICAgIDI5OTIoJWVieCksICV4bW0zCisgICAgICAgIG1vdmwgICAgICAkMTAyNCwgJWVkeAorICAgICAgICBtb3ZzZCAgICAgMjk3NiglZWJ4KSwgJXhtbTQKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBtb3ZzZCAgICAgMzAwOCglZWJ4KSwgJXhtbTcKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjIKKy5MXzJUQUdfUEFDS0VUXzExLjAuMjoKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzEzLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgc3VibCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQyMDQ4LCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBhZGRsICAgICAgJDE1MzQ0LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTYKKyAgICAgICAgYW5kcGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIG9ycGQgICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgb3JwZCAgICAgICV4bW03LCAleG1tMQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzEwLjAuMjoKKyAgICAgICAgc3VibCAgICAgICQ4ODAsICVlZHgKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNC4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMgorLkxfMlRBR19QQUNLRVRfMTIuMC4yOgorICAgICAgICBhZGRsICAgICAgJDg4MCwgJWVkeAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE1LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTMuMC4yCisuTF8yVEFHX1BBQ0tFVF84LjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMTA0ODU3NSwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzE2LjAuMgorICAgICAgICBwc3JscSAgICAgJDYzLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDYzLCAleG1tMAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNy4wLjIKKyAgICAgICAgbW92YXBkICAgIDI2MjQoJWVieCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0wCisuTF8yVEFHX1BBQ0tFVF8xOC4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF8xNi4wLjI6CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorLkxfMlRBR19QQUNLRVRfMTcuMC4yOgorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tMgorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgbW92bCAgICAgICQtMjE0NzQ4MzY0OCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDEwNDg1NzUsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlYXgsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOS4wLjIKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yMC4wLjIKKyAgICAgICAgbW92YXBkICAgIDI2NTYoJWVieCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF8xOS4wLjI6CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzIwLjAuMjoKKyAgICAgICAgbW92YXBkICAgIDI2NTYoJWVieCksICV4bW01CisgICAgICAgIG1vdmFwZCAgICAyNjI0KCVlYngpLCAleG1tNgorICAgICAgICBhZGRwZCAgICAgJXhtbTYsICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tNQorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF85LjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWN4CisgICAgICAgIG1vdmwgICAgICAkLTIxNDc0ODM2NDgsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQxMDQ4NTc1LCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTkuMC4yCisgICAgICAgIHBzcmxxICAgICAkNjMsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkNjMsICV4bW0wCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjEuMC4yCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF8yMS4wLjI6CisgICAgICAgIG1vdmFwZCAgICAyNjQwKCVlYngpLCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgb3JwZCAgICAgICV4bW01LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfMTQuMC4yOgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjgsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yMi4wLjIKKyAgICAgICAgbW92YXBkICAgIDI2NDAoJWVieCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBjb21pc2QgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG9ycGQgICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzIzLjAuMgorLkxfMlRBR19QQUNLRVRfMjQuMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfMjMuMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfMjIuMC4yOgorICAgICAgICBjb21pc2QgICAgJXhtbTAsICV4bW0xCisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yMy4wLjIKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzI0LjAuMgorLkxfMlRBR19QQUNLRVRfMTUuMC4yOgorICAgICAgICBtb3ZhcGQgICAgMjYyNCglZWJ4KSwgJXhtbTUKKyAgICAgICAgcHNybHEgICAgICQ2MywgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQ2MywgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIG9ycGQgICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIG1vdmwgICAgICA2NCglZXNwKSwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIyLjM6CitFTkQoYXRhbjIpCisjIC0tIEVuZCAgYXRhbjIKKworIyBTdGFydCBmaWxlIHNjb3BlIEFTTQorQUxJQVNfU1lNQk9MKGF0YW4ybCwgYXRhbjIpOworIyBFbmQgZmlsZSBzY29wZSBBU00KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK3N0YXRpY19jb25zdF90YWJsZToKKwkubG9uZwkzMzkwODgxMjgwCisJLmxvbmcJMTA2NzMxODczMworCS5sb25nCTE0MTExMTY3NzkKKwkubG9uZwkxMDE4OTUwMDYzCisJLmxvbmcJMjk4NTk4Nzg0MAorCS5sb25nCTEwNjczODQyMTEKKwkubG9uZwkyMDg4OTAzNjk1CisJLmxvbmcJMTAxODA4NjAyNworCS5sb25nCTMxNDg0NDUxODQKKwkubG9uZwkxMDY3NDQ5Njg1CisJLmxvbmcJMjA0NDE2MzgwNgorCS5sb25nCTEwMTcyNzEzMzUKKwkubG9uZwkzNjY3NjI5MTg0CisJLmxvbmcJMTA2NzUxNTQ5NAorCS5sb25nCTIzNTMwOTI3NzUKKwkubG9uZwkxMDE5OTY3MzA5CisJLmxvbmcJMTU0NjU2ODgzMgorCS5sb25nCTEwNjc1ODA5NTQKKwkubG9uZwk2MTE5OTEzMTUKKwkubG9uZwkxMDE3NjAyNTg0CisJLmxvbmcJMzgxNTk5NjgwMAorCS5sb25nCTEwNjc2NDY0MDQKKwkubG9uZwk0NjYwMzg1OTgKKwkubG9uZwkxMDE5Njg2NDI2CisJLmxvbmcJNDA1MDI0MTkyMAorCS5sb25nCTEwNjc3MTE4NDUKKwkubG9uZwkzMjY1MDI2MzI4CisJLmxvbmcJMTAxOTYyNjk1MgorCS5sb25nCTEyMDQ1NDkxMgorCS5sb25nCTEwNjc3NzcyNzcKKwkubG9uZwkxNTQyMjA3Njk2CisJLmxvbmcJMTAyMDE1NTYwOAorCS5sb25nCTI3ODQ2Mzk3NDQKKwkubG9uZwkxMDY3ODQyNjk3CisJLmxvbmcJMzg4MzgzNDYyMworCS5sb25nCTEwMTg2MDI4NzAKKwkubG9uZwkxMzI4MDEwNjI0CisJLmxvbmcJMTA2NzkwODEwNworCS5sb25nCTE3OTEwOTc0NTYKKwkubG9uZwkxMDE5MDUzMTI2CisJLmxvbmcJMjIxNzc5NDA0OAorCS5sb25nCTEwNjc5NzM1MDUKKwkubG9uZwk1NTE2MTk5MzgKKwkubG9uZwkxMDE4NDk0MTk0CisJLmxvbmcJMzMzMzUyMDAwMAorCS5sb25nCTEwNjgwMzg4OTEKKwkubG9uZwkyMzkwMzMxODIzCisJLmxvbmcJMTAxOTAzMzAyMgorCS5sb25nCTI1NTcwNTIwMzIKKwkubG9uZwkxMDY4MTA0MjY1CisJLmxvbmcJMjQyMzk3NjEwOAorCS5sb25nCTEwMTk3Mjg2NzQKKwkubG9uZwkyMDY3NjQ5NTM2CisJLmxvbmcJMTA2ODE2OTYyNgorCS5sb25nCTM3NTczOTc3NDUKKwkubG9uZwkxMDE4NjcyMzYyCisJLmxvbmcJNDA0NzA5NDc4NAorCS5sb25nCTEwNjgyMzQ5NzMKKwkubG9uZwk0ODE2MTMxODQKKwkubG9uZwkxMDE5Mjc1MTA0CisJLmxvbmcJMjA4OTg1MzE4NAorCS5sb25nCTEwNjgzMDAzMDcKKwkubG9uZwkxNzMzOTE0Mzc0CisJLmxvbmcJMTAyMDEyNDY3NworCS5sb25nCTI2NzgwMDM4NDAKKwkubG9uZwkxMDY4MzY1NjI2CisJLmxvbmcJMTM3MzYwMDI4MgorCS5sb25nCTEwMTM5MzU0NzQKKwkubG9uZwkzNzA2NDk2MTI4CisJLmxvbmcJMTA2ODQzMDkzMAorCS5sb25nCTEwMDA2MTA5MDIKKwkubG9uZwkxMDE5NjczMjg1CisJLmxvbmcJMzA3MzE3OTAwOAorCS5sb25nCTEwNjg0OTYyMTkKKwkubG9uZwkxNDk3MTQzMDA4CisJLmxvbmcJMTAxOTkwMDM0MgorCS5sb25nCTI4MDM3MTY3MzYKKwkubG9uZwkxMDY4NTYyODQ2CisJLmxvbmcJMTQ3NjY3NzQxNgorCS5sb25nCTEwMTk0NDQwOTQKKwkubG9uZwkzMjA0OTg0MTI4CisJLmxvbmcJMTA2ODYyODA3NworCS5sb25nCTExOTIzMzU5MDUKKwkubG9uZwkxMDE4NzQ4NjI4CisJLmxvbmcJODMxMTQ2NjI0CisJLmxvbmcJMTA2ODY5MzI3MworCS5sb25nCTI3MzM1ODYyMjQKKwkubG9uZwkxMDE4ODIzMjk1CisJLmxvbmcJMjQzMDI5Mzc2CisJLmxvbmcJMTA2ODc1ODQzMQorCS5sb25nCTk1MDEwNjA4MQorCS5sb25nCTEwMTkwNDY2NzUKKwkubG9uZwkxNzM1NTYxOTIwCisJLmxvbmcJMTA2ODgyMzU0OQorCS5sb25nCTM1NDY0NDA4NTYKKwkubG9uZwkxMDIwMTA0NzEyCisJLmxvbmcJMTMzOTIxNzc5MgorCS5sb25nCTEwNjg4ODg2MjYKKwkubG9uZwkzMDI4ODEyMzg3CisJLmxvbmcJMTAxOTgxODMyMQorCS5sb25nCTM3MDYzNDIxNDQKKwkubG9uZwkxMDY4OTUzNjU5CisJLmxvbmcJMzgxNDU2NDAyOQorCS5sb25nCTEwMTc3NjM4NzEKKwkubG9uZwk2Mzc3MjY5NzYKKwkubG9uZwkxMDY5MDE4NjQ4CisJLmxvbmcJMzU4NDAwNzY5OQorCS5sb25nCTEwMTc5NzY4NjgKKwkubG9uZwkxMTQ4Nzc5MjY0CisJLmxvbmcJMTA2OTA4MzU4OQorCS5sb25nCTIyODI1MzIxMzMKKwkubG9uZwkxMDE5NDgzOTU0CisJLmxvbmcJMTQwNjEzMTM5MgorCS5sb25nCTEwNjkxNDg0ODEKKwkubG9uZwkxNTQ3MzU5MTEzCisJLmxvbmcJMTAxOTc4NjM0MgorCS5sb25nCTE5MDg4NzU5MDQKKwkubG9uZwkxMDY5MjEzMzIyCisJLmxvbmcJMTMxNTUwODQxMAorCS5sb25nCTEwMjAwMDk0NzMKKwkubG9uZwkzMTk0OTQ3NTIwCisJLmxvbmcJMTA2OTI3ODExMAorCS5sb25nCTM4NDUzOTMyMDEKKwkubG9uZwkxMDE1ODAzNzYxCisJLmxvbmcJMTU0NzQ4Nzc0NAorCS5sb25nCTEwNjkzNDI4NDQKKwkubG9uZwkzODYzMTA3ODY1CisJLmxvbmcJMTAxOTgxMDEwNAorCS5sb25nCTE4ODEwNjE5NTIKKwkubG9uZwkxMDY5NDA3NTIxCisJLmxvbmcJNDI4ODM0MzU0OAorCS5sb25nCTEwMTk2ODc1ODEKKwkubG9uZwk1NjMwODYzMzYKKwkubG9uZwkxMDY5NDcyMTQwCisJLmxvbmcJMjU4MjIzMDI0MQorCS5sb25nCTEwMjAwOTkzNTAKKwkubG9uZwkyNTk0OTc1NTUyCisJLmxvbmcJMTA2OTUzNjY5OAorCS5sb25nCTIzMDY0NDM3NjQKKwkubG9uZwkxMDE5NjY3MjQ0CisJLmxvbmcJMzQzODU0NTAyNAorCS5sb25nCTEwNjk2MDY1NzMKKwkubG9uZwk5NTc0NTU1NDkKKwkubG9uZwkxMDE1NTg3NzM1CisJLmxvbmcJNDIxMTM1NzQ3MgorCS5sb25nCTEwNjk2NzA5MDYKKwkubG9uZwkyNjExNzc4NzU0CisJLmxvbmcJMTAxNzg3NzIxNAorCS5sb25nCTMwMDI4MzU0MjQKKwkubG9uZwkxMDY5NzM1MTAxCisJLmxvbmcJMjM1NTgwNDU4CisJLmxvbmcJMTAyMDIxMTY4NQorCS5sb25nCTM5MDUzMTU0MjQKKwkubG9uZwkxMDY5Nzk5MTUwCisJLmxvbmcJMzYzMDY0NzYxNworCS5sb25nCTEwMTg3MzY4NDkKKwkubG9uZwkyODQ5NjU2NTc2CisJLmxvbmcJMTA2OTg2MzA0NworCS5sb25nCTI0MTIxNjUwNjIKKwkubG9uZwkxMDE5NjkzMDA0CisJLmxvbmcJNTA3NDI5NDcyCisJLmxvbmcJMTA2OTkyNjc4NQorCS5sb25nCTEzOTc3NTA3MjMKKwkubG9uZwkxMDE4NDEyNzE3CisJLmxvbmcJMjMwNzQ3MDI3MgorCS5sb25nCTEwNjk5OTAzNTYKKwkubG9uZwkxNzk2NDcwOTA0CisJLmxvbmcJMTAxOTc5NjE4MQorCS5sb25nCTEyNzE4MTQ5MTIKKwkubG9uZwkxMDcwMDUzNzU1CisJLmxvbmcJMTg5NzYxNTY1CisJLmxvbmcJMTAxNjE0OTExNQorCS5sb25nCTM4MDA1MzgxNDQKKwkubG9uZwkxMDcwMTE2OTc0CisJLmxvbmcJMjUyNDg3MTU4MgorCS5sb25nCTEwMTgyNjMzNTMKKwkubG9uZwkzOTE2MjAzNTUyCisJLmxvbmcJMTA3MDE4MDAwOAorCS5sb25nCTEyNzg0ODY1OAorCS5sb25nCTEwMTc2NzI2NjQKKwkubG9uZwk0NTcxOTIwMzIKKwkubG9uZwkxMDcwMjQyODUxCisJLmxvbmcJNDAyMDQwMDkzOAorCS5sb25nCTEwMTk4MjMwMTAKKwkubG9uZwkxMzg1MzI0NzA0CisJLmxvbmcJMTA3MDMwNTQ5NQorCS5sb25nCTU2NDUxMTE3OQorCS5sb25nCTEwMTYwNzkwOTQKKwkubG9uZwkyMzIyODY5ODU2CisJLmxvbmcJMTA3MDM2NzkzNQorCS5sb25nCTIzNDcxMDMzMTkKKwkubG9uZwkxMDE4OTI3NzYwCisJLmxvbmcJMzc0MzQzODYyNAorCS5sb25nCTEwNzA0MzAxNjUKKwkubG9uZwk4Nzc5NzM4NjIKKwkubG9uZwkxMDE5NjM4MTYyCisJLmxvbmcJMjM5MjI1NTU1MgorCS5sb25nCTEwNzA0OTIxODAKKwkubG9uZwkyNDMyNzgyMjY3CisJLmxvbmcJMTAxODg3MjYyOQorCS5sb25nCTQxODA0NDMzMjgKKwkubG9uZwkxMDcwNTUzOTczCisJLmxvbmcJMzEwMjk5MDAxNQorCS5sb25nCTEwMjAwOTMxMDEKKwkubG9uZwkyNTQ3NTQwODMyCisJLmxvbmcJMTA3MDYzNjQ4NQorCS5sb25nCTM4Nzc3MzgyNTMKKwkubG9uZwkxMDE3MzAwNDI0CisJLmxvbmcJMjczNTQ2ODkxMgorCS5sb25nCTEwNzA2OTc0NjEKKwkubG9uZwkyNDQ2NDcwMjU2CisJLmxvbmcJMTAxOTIzNTM3OAorCS5sb25nCTU0MjYzMzc5MgorCS5sb25nCTEwNzA3NTc5NDMKKwkubG9uZwk1ODM2MDYzMjgKKwkubG9uZwkxMDE4NjI0MTMxCisJLmxvbmcJOTIzMjY1OTg0CisJLmxvbmcJMTA3MDgxNzkxMQorCS5sb25nCTE3OTM5MjY3MDgKKwkubG9uZwkxMDE5NzE0MTYxCisJLmxvbmcJOTE4NzI4NDQ4CisJLmxvbmcJMTA3MDg3NzM0OAorCS5sb25nCTM3MjY0NjM1ODYKKwkubG9uZwkxMDE5NDMzMjk2CisJLmxvbmcJMjU3MjI3NTAwOAorCS5sb25nCTEwNzA5MzYyMzcKKwkubG9uZwkxODQ1MzU0MjM4CisJLmxvbmcJMTAxOTQ1OTIzOAorCS5sb25nCTUwOTc0Njg4CisJLmxvbmcJMTA3MDk5NDU2NAorCS5sb25nCTk4MzgwODA2NAorCS5sb25nCTEwMTY2ODU0MTgKKwkubG9uZwkxMTA1NTE4MzIwCisJLmxvbmcJMTA3MTA1MjMxMworCS5sb25nCTIzNTc0OTY2OTIKKwkubG9uZwkxMDE1MTM5ODgyCisJLmxvbmcJMTI2NDgyNTMyOAorCS5sb25nCTEwNzExMDk0NzIKKwkubG9uZwkyMjQ0MTI5MzU0CisJLmxvbmcJMTAxOTA0NjM0NAorCS5sb25nCTk2MTE1NzkyMAorCS5sb25nCTEwNzExNjYwMjkKKwkubG9uZwkzMTI0MTg1MzM5CisJLmxvbmcJMTAxODU0MTc3NgorCS5sb25nCTExNjI3MDE1ODQKKwkubG9uZwkxMDcxMjIxOTczCisJLmxvbmcJMTI3OTc4MDk0OAorCS5sb25nCTEwMTkyNjg5MTgKKwkubG9uZwkzMjg0OTM1NjY0CisJLmxvbmcJMTA3MTI3NzI5NAorCS5sb25nCTI2NzAwMzM0NzIKKwkubG9uZwkxMDE5ODMzNzQ0CisJLmxvbmcJNDk3NDQxODg4CisJLmxvbmcJMTA3MTMzMTk4NQorCS5sb25nCTEwMzI3Mzc0MTAKKwkubG9uZwkxMDE5Nzk1MjEyCisJLmxvbmcJMzM3NzM4MzkwNAorCS5sb25nCTEwNzEzODYwMzYKKwkubG9uZwkyMzU2ODk3MTgyCisJLmxvbmcJMTAyMDIwNTU1MworCS5sb25nCTExMjY5NjIwMDAKKwkubG9uZwkxMDcxNDM5NDQzCisJLmxvbmcJMzcyMzcyNDU4NgorCS5sb25nCTEwMTUyMTI0MTgKKwkubG9uZwk5MDI5MTAwOAorCS5sb25nCTEwNzE0OTIxOTkKKwkubG9uZwk0MTc4NjcyNDMxCisJLmxvbmcJMTAyMDE4Njk3MQorCS5sb25nCTE5MDA1OTUzNgorCS5sb25nCTEwNzE1OTU3NDEKKwkubG9uZwkxNzYzNTg5ODA3CisJLmxvbmcJMTAxOTE2MjE2MworCS5sb25nCTI0OTczOTI4NDAKKwkubG9uZwkxMDcxNjcwNjU0CisJLmxvbmcJMzAzNjk5NzA0MQorCS5sb25nCTEwMjAyMDQzMjUKKwkubG9uZwkyNjE2OTcxOTQ0CisJLmxvbmcJMTA3MTcxOTc3MworCS5sb25nCTMwMDE1MTA2OQorCS5sb25nCTEwMTcwNDE5NTcKKwkubG9uZwkyODgzNTE4MTI4CisJLmxvbmcJMTA3MTc2NzU2MworCS5sb25nCTIyMDM5ODE0MTQKKwkubG9uZwkxMDE5MTkwMTA4CisJLmxvbmcJMTQ5NjM1NDM1MgorCS5sb25nCTEwNzE4MTQwMzAKKwkubG9uZwkzMzIyODc5NjYKKwkubG9uZwkxMDE2ODQ2NDM1CisJLmxvbmcJNDgzMjc2NzI4CisJLmxvbmcJMTA3MTg1OTE4NAorCS5sb25nCTY1Mzg0NTAyNAorCS5sb25nCTEwMTg4MzA5MTQKKwkubG9uZwkzMDk3NDAxMDcyCisJLmxvbmcJMTA3MTkwMzAzOQorCS5sb25nCTE1MTQ3NDY0MDgKKwkubG9uZwkxMDE5Mjc4OTcyCisJLmxvbmcJMjczNzIxNzI0OAorCS5sb25nCTEwNzE5NDU2MTUKKwkubG9uZwkxMzU4ODQ1MDY3CisJLmxvbmcJMTAxNzI2ODI3NQorCS5sb25nCTIwNzI1Nzc1NjAKKwkubG9uZwkxMDcxOTg2OTMzCisJLmxvbmcJMzA0MTAyNDczNQorCS5sb25nCTEwMTk5Mjk2NzIKKwkubG9uZwkyMjY2NDA1NjU2CisJLmxvbmcJMTA3MjAyNzAxNworCS5sb25nCTEyNzEyNjExMzAKKwkubG9uZwkxMDEyOTI1MDcwCisJLmxvbmcJOTU4NjUyNTQ0CisJLmxvbmcJMTA3MjA2NTg5NAorCS5sb25nCTIxNTgwMTcwNTgKKwkubG9uZwkxMDE5OTU1MzcyCisJLmxvbmcJMzMxMjk5Mzg0MAorCS5sb25nCTEwNzIxMDM1OTEKKwkubG9uZwk3NjU4MDkxNjkKKwkubG9uZwkxMDE5MTE0NDQzCisJLmxvbmcJMzE3NzAwMTMwNAorCS5sb25nCTEwNzIxNDAxMzkKKwkubG9uZwkxNDQxODAwODQKKwkubG9uZwkxMDE5ODIyMTg2CisJLmxvbmcJMzA3MTY0MjE4NAorCS5sb25nCTEwNzIxNzU1NjgKKwkubG9uZwk0MDA0NjAyNDI0CisJLmxvbmcJMTAxOTQyMDc0MAorCS5sb25nCTQyODM5NTM2NDgKKwkubG9uZwkxMDcyMjA5OTA5CisJLmxvbmcJMTUxMTk1MDQzMAorCS5sb25nCTEwMjAxNzY5NjYKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3MjI0MzE5NQorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTUxMjk2MzgKKwkubG9uZwk0MDczMjAyOTQ0CisJLmxvbmcJMTA3MjMwNjcyNQorCS5sb25nCTQwNjgxOTQ4MDQKKwkubG9uZwkxMDE5NzE0ODYwCisJLmxvbmcJOTQ2MTE3NzYwCisJLmxvbmcJMTA3MjM2NjQxNQorCS5sb25nCTY5NDk4MDczMworCS5sb25nCTEwMjAxNTAxMzUKKwkubG9uZwkzOTgwNjMyMDMyCisJLmxvbmcJMTA3MjQyMjUxMgorCS5sb25nCTEzMTMyNTEyODAKKwkubG9uZwkxMDE5OTQ4NzA5CisJLmxvbmcJMTQ2ODI5NzExMgorCS5sb25nCTEwNzI0NzUyNjAKKwkubG9uZwkzMzAxMTExNDMKKwkubG9uZwkxMDE5ODA5MTk4CisJLmxvbmcJMzQ3ODA2MzgxNgorCS5sb25nCTEwNzI1MjQ4ODcKKwkubG9uZwkyOTMwMDY3MDQ0CisJLmxvbmcJMTAxNzc4NDA4MQorCS5sb25nCTExNTM5Nzk4NTYKKwkubG9uZwkxMDcyNTcxNjEzCisJLmxvbmcJMjIyNTc4NjEwMgorCS5sb25nCTEwMTc2MzQ0ODEKKwkubG9uZwkyMDg5ODI4ODA4CisJLmxvbmcJMTA3MjYxNTY0MQorCS5sb25nCTQ3NDYyMTM2NworCS5sb25nCTEwMTcwNDM0MTQKKwkubG9uZwkzNTMxNzMyNjMyCisJLmxvbmcJMTA3MjY1NzE2MworCS5sb25nCTIyNzYzOTYyMjAKKwkubG9uZwkxMDE4NzU3MjQwCisJLmxvbmcJNzc1MjE0NjEyCisJLmxvbmcJMTA3MjY5NDgwMworCS5sb25nCTMyMDk3NDQ4MTgKKwkubG9uZwkxMDE5OTYzMDE1CisJLmxvbmcJNjYyMzA3Mjg0CisJLmxvbmcJMTA3MjcxMzMxOQorCS5sb25nCTEzODE2OTY3NjMKKwkubG9uZwkxMDE5NzYzNzgxCisJLmxvbmcJMTE5Mjc3NjY1MgorCS5sb25nCTEwNzI3MzA4MzAKKwkubG9uZwkzMDE3OTMyOTk0CisJLmxvbmcJMTAxNTE3OTc2OQorCS5sb25nCTc0NDIwMjM5NgorCS5sb25nCTEwNzI3NDc0MDcKKwkubG9uZwkyMDczODU0MDM0CisJLmxvbmcJMTAxOTUxMjI5MgorCS5sb25nCTgzMzc5MDgKKwkubG9uZwkxMDcyNzYzMTE1CisJLmxvbmcJMTYwMDQ0NDgKKwkubG9uZwkxMDE5NTk5NTE0CisJLmxvbmcJMzU4OTg2ODc2OAorCS5sb25nCTEwNzI3NzgwMTMKKwkubG9uZwkxMzc0MzY5ODA0CisJLmxvbmcJMTAxODAxOTIzNworCS5sb25nCTEyMTY0NzMyMAorCS5sb25nCTEwNzI3OTIxNTkKKwkubG9uZwkxMjg0ODE2MzQKKwkubG9uZwkxMDE4MTE1NDM4CisJLmxvbmcJMjQ2NDkyMzIwNAorCS5sb25nCTEwNzI4MDU2MDEKKwkubG9uZwkxNzg3MzMxMjE0CisJLmxvbmcJMTAxNjc5ODAyMgorCS5sb25nCTQwOTMzMDQzNzIKKwkubG9uZwkxMDcyODMwNTYyCisJLmxvbmcJMzMwNjg2ODk2OQorCS5sb25nCTEwMTkzODQwNzgKKwkubG9uZwkxNDM2ODkxNjg0CisJLmxvbmcJMTA3Mjg1MzIzMQorCS5sb25nCTY3NjM0NzI2NgorCS5sb25nCTEwMTczMDIxODMKKwkubG9uZwkxMTA0NTcxODQwCisJLmxvbmcJMTA3Mjg3Mzg5MAorCS5sb25nCTI4NzA0MDAyODUKKwkubG9uZwkxMDE5OTM4MTQ5CisJLmxvbmcJMjAzNzAwOTgzMgorCS5sb25nCTEwNzI4OTI3ODEKKwkubG9uZwkyOTU2NzAyMTA1CisJLmxvbmcJMTAxNjQ3MjkwOAorCS5sb25nCTMxMzkwMzc5NjAKKwkubG9uZwkxMDcyOTEwMTExCisJLmxvbmcJOTE2MDU3MTQ3CisJLmxvbmcJMTAxODM2NDMzNQorCS5sb25nCTE4MjY2OTgwNjQKKwkubG9uZwkxMDcyOTI2MDU4CisJLmxvbmcJMjE3MTk2MTA5OAorCS5sb25nCTEwMTk2Njk4MTYKKwkubG9uZwkxMzUzOTQxMDYwCisJLmxvbmcJMTA3Mjk0MDc3NAorCS5sb25nCTE3MjI5Mjg3ODIKKwkubG9uZwkxMDE5OTI2MjE1CisJLmxvbmcJMTgwMzE5MTY0NAorCS5sb25nCTEwNzI5NTQzOTEKKwkubG9uZwkxNTQ3ODc4NjM5CisJLmxvbmcJMTAyMDI1OTI2MgorCS5sb25nCTEwOTI1OTEyOTYKKwkubG9uZwkxMDcyOTY3MDI0CisJLmxvbmcJMzA3MDEwNzkyMworCS5sb25nCTEwMTgzMjA0MDEKKwkubG9uZwkyMjA1MzcyODMyCisJLmxvbmcJMTA3Mjk3ODc3MgorCS5sb25nCTc4NzMyODE5NgorCS5sb25nCTEwMTQ2MjEzNTEKKwkubG9uZwkxMjkxNTc3MTAwCisJLmxvbmcJMTA3Mjk4OTcyMworCS5sb25nCTI5NjQ3NTczMDEKKwkubG9uZwkxMDIwMjQyNTI4CisJLmxvbmcJNDIzNDUxMjgwNAorCS5sb25nCTEwNzI5OTk5NTIKKwkubG9uZwkzMTM2MDMwMDM4CisJLmxvbmcJMTAxNzUyMjE0NAorCS5sb25nCTMyNDgwNjkxMzIKKwkubG9uZwkxMDczMDA5NTI4CisJLmxvbmcJMTUwNjE5MjM1NQorCS5sb25nCTEwMTgwNTA0NzIKKwkubG9uZwkzOTMyNjI4NTAwCisJLmxvbmcJMTA3MzAxODUwOQorCS5sb25nCTEwNDU4MjM1NTQKKwkubG9uZwkxMDE5OTQ2NjU1CisJLmxvbmcJNDE5NTY5Nzg0OAorCS5sb25nCTEwNzMwMjY5NDgKKwkubG9uZwkyMzM0NDMzMjIKKwkubG9uZwkxMDE4OTE3NDQ3CisJLmxvbmcJMjUwMTgxMTQ1MgorCS5sb25nCTEwNzMwMzQ4OTIKKwkubG9uZwk5MDE0Mjc5NzYKKwkubG9uZwkxMDE3MzMzODUyCisJLmxvbmcJODY2Mzc5NDI4CisJLmxvbmcJMTA3MzA0OTQ1NQorCS5sb25nCTI0Mzc0NDM3NDIKKwkubG9uZwkxMDE5Njc4NzkyCisJLmxvbmcJMTM3Njg2NTg4OAorCS5sb25nCTEwNzMwNjI0ODAKKwkubG9uZwkzMzY1NzkwMjMyCisJLmxvbmcJMTAxNDU0NzE1MgorCS5sb25nCTMyOTAwOTQyNjgKKwkubG9uZwkxMDczMDc0MTk1CisJLmxvbmcJMzg5ODk0NzQxNQorCS5sb25nCTEwMTg2ODM1NjYKKwkubG9uZwkzNTQ3NjQ4ODQKKwkubG9uZwkxMDczMDg0Nzg3CisJLmxvbmcJMzg1NDMyMjQwNAorCS5sb25nCTEwMTk2NjIwNTgKKwkubG9uZwkzMzMyOTc1NDk2CisJLmxvbmcJMTA3MzA5NDQwNgorCS5sb25nCTMxNzE3MDE2NTUKKwkubG9uZwkxMDE3ODMwOTIyCisJLmxvbmcJMTE0MTQ2MDA4OAorCS5sb25nCTEwNzMxMDMxODEKKwkubG9uZwkzOTQ2MDgyNzAxCisJLmxvbmcJMTAyMDAzMjAxOQorCS5sb25nCTc0NTc2MTI4NAorCS5sb25nCTEwNzMxMTEyMTYKKwkubG9uZwkxMzQ3MjEwNTkxCisJLmxvbmcJMTAxOTEwNjEyMQorCS5sb25nCTE2NzMzMDQ1MDgKKwkubG9uZwkxMDczMTE4NjAwCisJLmxvbmcJMTc2MDYwNjY0MgorCS5sb25nCTEwMTczMjQ1NzcKKwkubG9uZwk5ODMzODgyNDAKKwkubG9uZwkxMDczMTI1NDA5CisJLmxvbmcJMzc0MDY1MTIwNAorCS5sb25nCTEwMTk1MTQxMDQKKwkubG9uZwkzODk1NTA5MTAwCisJLmxvbmcJMTA3MzEzMTcwNgorCS5sb25nCTI0MDk2Mjk5ODMKKwkubG9uZwkxMDIwMDY5MzIyCisJLmxvbmcJMjEyODUyMzY2OAorCS5sb25nCTEwNzMxMzc1NDgKKwkubG9uZwkzMDQ1NjA1MzY4CisJLmxvbmcJMTAxODU3OTE3NAorCS5sb25nCTIwNzU0ODU2OTIKKwkubG9uZwkxMDczMTQyOTgxCisJLmxvbmcJMzcyMDU3MTc4OQorCS5sb25nCTEwMTc1NTc0MzYKKwkubG9uZwkxMjE4NTU5NzYKKwkubG9uZwkxMDczMTQ4MDQ3CisJLmxvbmcJMjM5MTc0NDc2NworCS5sb25nCTEwMjAxNjA2NDUKKwkubG9uZwk0MTgxNzMzNzgwCisJLmxvbmcJMTA3MzE1Mjc4MAorCS5sb25nCTk5NTAyODgxNgorCS5sb25nCTEwMTk2ODEyOTUKKwkubG9uZwkyODg3ODEzMjgwCisJLmxvbmcJMTA3MzE1NzIxNAorCS5sb25nCTIxODczMzI0NworCS5sb25nCTEwMjAwMDM1MDkKKwkubG9uZwkyODYyMTgwODk2CisJLmxvbmcJMTA3MzE2MTM3NQorCS5sb25nCTIwNDM4MDY0OTAKKwkubG9uZwkxMDE4NjAyMjg4CisJLmxvbmcJMzkwOTM3NTE4NAorCS5sb25nCTEwNzMxNjg5NzMKKwkubG9uZwkxNTU5OTAzNDEyCisJLmxvbmcJMTAyMDEwMzQ0NAorCS5sb25nCTM1MzM5NjYyOTIKKwkubG9uZwkxMDczMTc1NzM4CisJLmxvbmcJNzM0ODg0MTQ5CisJLmxvbmcJMTAxODQ2Mjk2MgorCS5sb25nCTM4MTUwNDQ2MDgKKwkubG9uZwkxMDczMTgxNzk5CisJLmxvbmcJMzYzMDUyMzQyOAorCS5sb25nCTEwMTcyNTAwOTMKKwkubG9uZwk3Mzk2MzkzNzYKKwkubG9uZwkxMDczMTg3MjYxCisJLmxvbmcJNDE2NzQ3NjY2MQorCS5sb25nCTEwMjAwMDgyNzcKKwkubG9uZwkxMDY4MzA5NjQ4CisJLmxvbmcJMTA3MzE5MjIwNworCS5sb25nCTIxMTAwNjE0MzcKKwkubG9uZwkxMDE5Mjk1ODU4CisJLmxvbmcJMjM1MDU2NjM1MgorCS5sb25nCTEwNzMxOTY3MDcKKwkubG9uZwk1ODI1OTY1MTYKKwkubG9uZwkxMDE4NTY4ODIxCisJLmxvbmcJMjUyOTUyMDAyNAorCS5sb25nCTEwNzMyMDA4MTkKKwkubG9uZwk3NDU1NTI3ODcKKwkubG9uZwkxMDE5MDUzMTY1CisJLmxvbmcJMTg0MTY2NzUwOAorCS5sb25nCTEwNzMyMDQ1OTEKKwkubG9uZwkzOTgyNTY4NzAwCisJLmxvbmcJMTAxNjUwMzMyNworCS5sb25nCTIyNDIyNjEwODAKKwkubG9uZwkxMDczMjA4MDYzCisJLmxvbmcJMzQzMzU4MjI1OAorCS5sb25nCTEwMTYxOTY3NjMKKwkubG9uZwk3MTUxMzQzMjgKKwkubG9uZwkxMDczMjExMjcwCisJLmxvbmcJMzU1OTAxMzU4CisJLmxvbmcJMTAyMDA4NzkxNgorCS5sb25nCTI3MDA3MzU4NzYKKwkubG9uZwkxMDczMjE0MjQwCisJLmxvbmcJMzY0MDk1NzczNgorCS5sb25nCTEwMTk3ODAyMDUKKwkubG9uZwkxNDE2MDc1ODAKKwkubG9uZwkxMDczMjE3MDAwCisJLmxvbmcJMjQ4ODI0NTA1MQorCS5sb25nCTEwMjAyNjIzOTUKKwkubG9uZwkyODc5MzQ0MDQKKwkubG9uZwkxMDczMjE5NTcwCisJLmxvbmcJMjM5MjY5MTA4NQorCS5sb25nCTEwMTk4ODMyOTIKKwkubG9uZwkyMzYzMzczOTg4CisJLmxvbmcJMTA3MzIyMTk2OQorCS5sb25nCTQxOTQ1NjE3MzcKKwkubG9uZwkxMDE5MjM3NDQ3CisJLmxvbmcJMzgyOTM0MDQyNAorCS5sb25nCTEwNzMyMjQyMTQKKwkubG9uZwk0Mjk0NTU1MjYKKwkubG9uZwkxMDE5NDkwOTc1CisJLmxvbmcJMTk4ODgwNTkyOAorCS5sb25nCTEwNzMyMjYzMjAKKwkubG9uZwkzMDI5ODQ4NzA2CisJLmxvbmcJMTAxODEwNDg4OQorCS5sb25nCTE2NDc1NzIzMjAKKwkubG9uZwkxMDczMjMwMTYxCisJLmxvbmcJMTAyODk5MzgKKwkubG9uZwkxMDE3Mzk0ODgwCisJLmxvbmcJMzk4ODAwMDYyNAorCS5sb25nCTEwNzMyMzM1NzYKKwkubG9uZwkxOTU3NTU5MTY5CisJLmxvbmcJMTAxOTQzNDgxNgorCS5sb25nCTQyNjM4NDM5NDQKKwkubG9uZwkxMDczMjM2NjMzCisJLmxvbmcJMjA0NzEwMjY0CisJLmxvbmcJMTAxOTkwODc2MQorCS5sb25nCTY2MzE5NzcyNAorCS5sb25nCTEwNzMyMzkzODYKKwkubG9uZwkxOTIxNzU3NTc4CisJLmxvbmcJMTAxOTc3ODk0OAorCS5sb25nCTM1NjA4MDA3MDAKKwkubG9uZwkxMDczMjQxODc2CisJLmxvbmcJMzk5NDM0ODg5NgorCS5sb25nCTEwMTkyMzAxOTIKKwkubG9uZwkyNDQxNzg1NjU2CisJLmxvbmcJMTA3MzI0NDE0MQorCS5sb25nCTg3MTQ2ODYxMQorCS5sb25nCTEwMTQ4MDA1MDUKKwkubG9uZwkzMjc3NDAwMjcyCisJLmxvbmcJMTA3MzI0NjIwOQorCS5sb25nCTQwOTIyMTgxMzkKKwkubG9uZwkxMDIwMDQwODQyCisJLmxvbmcJMzk1MTk5MDEyMAorCS5sb25nCTEwNzMyNDgxMDUKKwkubG9uZwk0Mjc2NTQ2NDc4CisJLmxvbmcJMTAxOTc2MzY3NworCS5sb25nCTI3MzczMzg1NDAKKwkubG9uZwkxMDczMjQ5ODUwCisJLmxvbmcJMjUyNzc2MDEyCisJLmxvbmcJMTAxODc5NDk1MQorCS5sb25nCTE1MTEzNjEzMTYKKwkubG9uZwkxMDczMjUxNDYxCisJLmxvbmcJMzExOTY1Mzk5OQorCS5sb25nCTEwMTg1MTQ4MDMKKwkubG9uZwkzOTY5MTYyNTE2CisJLmxvbmcJMTA3MzI1Mjk1MgorCS5sb25nCTEwMzcwNjkwMTYKKwkubG9uZwkxMDE2NzkyOTAwCisJLmxvbmcJNDEzOTg1MjQwCisJLmxvbmcJMTA3MzI1NDMzOAorCS5sb25nCTQxMTAxNzE0MzIKKwkubG9uZwkxMDIwMDAxMzQ1CisJLmxvbmcJMzY4MTI4MzU3NgorCS5sb25nCTEwNzMyNTU2MjcKKwkubG9uZwkxNDYzMDkyODE4CisJLmxvbmcJMTAyMDI2MDM1NAorCS5sb25nCTMxNDY0NTU0ODgKKwkubG9uZwkxMDczMjU2ODMxCisJLmxvbmcJMTAzMTIwOTEyMworCS5sb25nCTEwMTY1NTQ3OTkKKwkubG9uZwk5NTIxNDUxMgorCS5sb25nCTEwNzMyNTc5NTgKKwkubG9uZwkxMzczODA4NjMyCisJLmxvbmcJMTAxOTQ5MzAzMQorCS5sb25nCTQyNTAyNDA4MjgKKwkubG9uZwkxMDczMjU5MDEzCisJLmxvbmcJMzg5MTA0Nzg4MgorCS5sb25nCTEwMjAxMDg3MzAKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3MzI5MTc3MQorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTYxNzgyMTQKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3MzI5MTc3MQorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTYxNzgyMTQKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3NDM0MDM0NworCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTcyMjY3OTAKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3MjI0MzE5NQorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTUxMjk2MzgKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3NDM0MDM0NworCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTcyMjY3OTAKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMzIyMTgyMzk5NQorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTMxNjQ3MTA0MzgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE3MjI2NzkwCisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzQzNDAzNDcKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkzMTY0NzEwNDM4CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTMyMjE4MjM5OTUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjAwNjI2Mjk4NQorCS5sb25nCTEwNjkzMTA4NjMKKwkubG9uZwkyMzU4NDQ5NDcxCisJLmxvbmcJMzIxNzM0MjEzMQorCS5sb25nCTM4NDU0NTQzNTIKKwkubG9uZwkxMDY5OTUyMjk3CisJLmxvbmcJMjgyOTY3OTE0OQorCS5sb25nCTEwNzM3NzE1NjUKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMjE0ODUzMjIyMworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTExMzAzNjQ5MjgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkudHlwZQlzdGF0aWNfY29uc3RfdGFibGUsQG9iamVjdAorCS5zaXplCXN0YXRpY19jb25zdF90YWJsZSwzMDI0CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvZV9jb3NoLlMgYi9saWJtL3g4Ni9lX2Nvc2guUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lY2VhOGY0Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvZV9jb3NoLlMKQEAgLTAsMCArMSwxMzQ5IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gIGNvc2goeCk9KGV4cCh4KStleHAoLXgpKS8yCisvLworLy8gIExldCB8eHw9eEgreEwgKHVwcGVyIDI2IGJpdHMsIGxvd2VyIDI3IGJpdHMpCisvLyAgbG9nMihlKSByb3VuZGVkIHRvIDI2IGJpdHMgKGhpZ2ggcGFydCkgcGx1cyBhIGRvdWJsZSBwcmVjaXNpb24gbG93IHBhcnQgaXMKKy8vICAgICAgICAgIEwyRUgrTDJFTCAodXBwZXIgMjYsIGxvd2VyIDUzIGJpdHMpCisvLworLy8gIExldCB4SCpMMkVIPWsrZityYCwgd2hlcmUgKGsrZikqMl43PWludCh4SCpMMkVIKjJeNyksCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGY9MC5iMSBiMiAuLi4gYjcsIGsgaW50ZWdlcgorLy8gIDJeZiBpcyBhcHByb3hpbWF0ZWQgYXMgVHBbZl0rRHBbZl0sIGFuZCAyXnstZn0gYXMgVG5bZl0rRG5bZl0KKy8vICBUcCBzdG9yZXMgaGlnaGVyIDUzIGJpdHMsIERwIHN0b3JlcyAoMl5mLVRwW2ZdKSByb3VuZGVkIHRvIGRvdWJsZSBwcmVjaXNpb24KKy8vCisvLyAgZV58eHw9Ml57aytmfSoyXnIsIHI9cmAreEwqTDJFSCt8eHwqTDJFTCwgfHJ8PDJeey04fSsyXnstMTR9LAorLy8gICAgICAgICAgICAgICAgICAgICAgIGZvciB8eHwgaW4gWzEvOCwzKjJeOCkKKy8vICBlXnstfHh8fT0yXnstay1mfSoyXnstcn0KKy8vCisvLyAgZV58eHwgaXMgYXBwcm94aW1hdGVkIGFzIDJeaypUcCsyXmsqVHAqYzEqcigxK2MyKnIrLi4rYzUqcl40KSsyXmsqRHA9CisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgID0yXmsqVHArMl5rKlRwKlAxNSsyXmsqRHAKKy8vICBlXnstfHh8fSBhcHByb3hpbWF0ZWQgYXMgMl57LWt9KlRuLTJeey1rfSpUbipjMSpyKDEtYzIqcisuLitjNSpyXjQpCisvLworLy8gIEZvciB8eHwgaW4gWzEvOCwgMyoyXjcpLCBjb3NoKHgpIGlzIGZvcm1lZCBhcworLy8gICBSTigyXmsqVHArMl57LWt9KlRuKSsyXmsqVHAqUDE1KzJeey1rfSpUbipQYDE1KzJeey1rfSpUbkwrMl57LWt9KkRuKzJeaypEcAorLy8KKy8vICBGb3IgfHh8IGluIFszKjJeNywgMyoyXjgpLCAoZV58eHwpLzIgaXMgcmV0dXJuZWQsIGFuZAorLy8gIHRoZSByZXN1bHQgaXMgY2hlY2tlZCBmb3Igb3ZlcmZsb3cuCisvLworLy8gIEZvciB8eHw8MS84LCBhIFRheWxvciBwb2x5bm9taWFsIGV4cGFuc2lvbiBpcyB1c2VkIChkZWdyZWUgMTApCisvLyAgKGVycm9yIGJvdW5kIGZvciBwb2x5bm9taWFsIGV4cGFuc2lvbiBpcyBiZWxvdyAwLjUwMSB1bHApCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBjb3NoKE5hTikgPSBxdWlldCBOYU4sIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIGNvc2goSU5GKSA9IHRoYXQgSU5GCisvLyAgY29zaCgwKT0xCisvLyAgZm9yIGZpbml0ZSBhcmd1bWVudCwgb25seSBjb3NoKDApPTEgaXMgZXhhY3QKKy8vICBGb3IgSUVFRSBkb3VibGUKKy8vICBjb3NoKHgpIG92ZXJmbG93cworLy8gIGZvciB4ID4gNzEwLjQ3NTg2MDA3Mzk0Mzg2MzQyNjM5MzM2MzYyNDgxMTE3MjQ4NTM1MTU2MjUwID0gTUFYTE9HK2xvZygyKQorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHN0YXRpY19mdW5jCisgICAgICAgIC50ZXh0CisgICAgICAgIC5hbGlnbiBfX2Jpb25pY19hc21fYWxpZ24KKyAgICAgICAgLnR5cGUgc3RhdGljX2Z1bmMsIEBmdW5jdGlvbgorc3RhdGljX2Z1bmM6CisuLkIxLjE6CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVheAorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVheCksICVlYXgKKyAgICAgICAgbGVhICAgICAgIHN0YXRpY19jb25zdF90YWJsZUBHT1RPRkYoJWVheCksICVlYXgKKyAgICAgICAgcmV0CisgICAgICAgIC5zaXplICAgc3RhdGljX2Z1bmMsLi1zdGF0aWNfZnVuYworIyAtLSBFbmQgIHN0YXRpY19mdW5jCisKKyMgLS0gQmVnaW4gIGNvc2gKK0VOVFJZKGNvc2gpCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEwNCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNDAoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICA0MjQwKCVlYngpLCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIG1vdnNkICAgICA0MTkyKCVlYngpLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgNDIwMCglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW00CisgICAgICAgIG1vdnNkICAgICA0MDk2KCVlYngpLCAleG1tNgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgYW5kbnBkICAgICV4bW0wLCAleG1tNAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNCwgJXhtbTUKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVjeAorICAgICAgICBzdWJsICAgICAgJDE2MzIwLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMjAwLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMgorICAgICAgICBjdnRzZDJzaSAgJXhtbTMsICVlYXgKKyAgICAgICAgbW92YXBkICAgICV4bW0zLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICA0MTEyKCVlYngpLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICA0MTI4KCVlYngpLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG1vdmwgICAgICAkMzI3MDQsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgNDE0NCglZWJ4KSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDEyNywgJWVkeAorICAgICAgICBhbmRsICAgICAgJWVheCwgJWVkeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBzaHJsICAgICAgJDMsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQ2NTUyMCwgJWVheAorICAgICAgICBhZGRsICAgICAgJDE2MzUyLCAlZWF4CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgY21wbCAgICAgICQxODQsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW01LCAleG1tNQorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMAorICAgICAgICBwc3VidyAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG11bHBkICAgICAoJWVieCwlZWR4LDgpLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgMjA0OCglZWJ4LCVlZHgsOCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgNDE2MCglZWJ4KSwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHBkICAgICA0MTc2KCVlYngpLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFkZHBkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHNodWZwZCAgICAkMCwgJXhtbTUsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMgorICAgICAgICBhZGRwZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQxNjMyMCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDE2MzIwLCAlZWN4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBjbXBsICAgICAgJDE1OTUyLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG1vdnNkICAgICA0MjQ4KCVlYngpLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBzdWJsICAgICAgJDE2MzUyLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc2hybCAgICAgICQxLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkNjU1MjAsICVlYXgKKyAgICAgICAgc3VibCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgKCVlYngsJWVkeCw4KSwgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdnNkICAgICA0MTYwKCVlYngpLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgNDE3NiglZWJ4KSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkbCAgICAgICQxNjM2OCwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQ2NCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBtb3ZhcGQgICAgNDIwOCglZWJ4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgNDIyNCglZWJ4KSwgJXhtbTIKKyAgICAgICAgeG9ycGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDQyNDgoJWVieCksICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbW92bCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0zCisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTEsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMzI3MzYsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkNjQsICVlZHgKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBtb3ZzZCAgICAgMTEyKCVlc3ApLCAleG1tMAorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAyNCglZXNwKQorICAgICAgICBmbGRsICAgICAgMjQoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBtb3ZsICAgICAgNDAoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKGNvc2gpCisjIC0tIEVuZCAgY29zaAorCisjIFN0YXJ0IGZpbGUgc2NvcGUgQVNNCitBTElBU19TWU1CT0woY29zaGwsIGNvc2gpOworIyBFbmQgZmlsZSBzY29wZSBBU00KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK3N0YXRpY19jb25zdF90YWJsZToKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjg1MTgxMjE0OQorCS5sb25nCTEwNzI2OTg5NDEKKwkubG9uZwkyNTk1ODAyNTUxCisJLmxvbmcJMTAxNjgxNTkxMworCS5sb25nCTEwNDgwMTkwNDEKKwkubG9uZwkxMDcyNzA0NjY2CisJLmxvbmcJMTM5ODQ3NDg0NQorCS5sb25nCTMxNjE1NTkxNzEKKwkubG9uZwkzODk5NTU1NzE3CisJLmxvbmcJMTA3MjcxMDQyMQorCS5sb25nCTQyNzI4MDc1MAorCS5sb25nCTMxNjM1OTU1NDgKKwkubG9uZwkzNTQxNDAyOTk2CisJLmxvbmcJMTA3MjcxNjIwOAorCS5sb25nCTI3NTkxNzczMTcKKwkubG9uZwkxMDE1OTAzMjAyCisJLmxvbmcJNzAyNDEyNTEwCisJLmxvbmcJMTA3MjcyMjAyNworCS5sb25nCTM4MDMyNjYwODcKKwkubG9uZwkzMTYzMzI4OTkxCisJLmxvbmcJNDEwMzYwNzc2CisJLmxvbmcJMTA3MjcyNzg3NworCS5sb25nCTEyNjk5OTA2NTUKKwkubG9uZwkxMDEzMDI0NDQ2CisJLmxvbmcJMzQwMjAzNjA5OQorCS5sb25nCTEwNzI3MzM3NTgKKwkubG9uZwk0MDU4ODkzMzQKKwkubG9uZwkxMDE2MTU0MjMyCisJLmxvbmcJMTgyODI5Mjg3OQorCS5sb25nCTEwNzI3Mzk2NzIKKwkubG9uZwkxMjU1OTU2NzQ3CisJLmxvbmcJMTAxNjYzNjk3NAorCS5sb25nCTcyODkwOTgxNQorCS5sb25nCTEwNzI3NDU2MTgKKwkubG9uZwkzODM5MzAyMjUKKwkubG9uZwkxMDE2MDc4MDQ0CisJLmxvbmcJODUyNzQyNTYyCisJLmxvbmcJMTA3Mjc1MTU5NgorCS5sb25nCTY2NzI1MzU4NgorCS5sb25nCTEwMTA4NDIxMzUKKwkubG9uZwkyOTUyNzEyOTg3CisJLmxvbmcJMTA3Mjc1NzYwNgorCS5sb25nCTMyOTM0OTQ2NTEKKwkubG9uZwkzMTYxMTY4ODc3CisJLmxvbmcJMzQ5MDg2Mzk1MworCS5sb25nCTEwNzI3NjM2NDkKKwkubG9uZwk5NjA3OTc0OTgKKwkubG9uZwkzMTYzOTk3NDU2CisJLmxvbmcJMzIyODMxNjEwOAorCS5sb25nCTEwNzI3Njk3MjUKKwkubG9uZwkzMDEwMjQxOTkxCisJLmxvbmcJMzE1OTQ3MTM4MAorCS5sb25nCTI5MzAzMjI5MTIKKwkubG9uZwkxMDcyNzc1ODM0CisJLmxvbmcJMjU5OTQ5OTQyMgorCS5sb25nCTMxNjM3NjI2MjMKKwkubG9uZwkzMzY2MjkzMDczCisJLmxvbmcJMTA3Mjc4MTk3NgorCS5sb25nCTMxMTk0MjYzMTQKKwkubG9uZwkxMDE1MTY5MTMwCisJLmxvbmcJMTAxNDg0NTgxOQorCS5sb25nCTEwNzI3ODgxNTIKKwkubG9uZwkzMTE3OTEwNjQ2CisJLmxvbmcJMzE2MjYwNzY4MQorCS5sb25nCTk0ODczNTQ2NgorCS5sb25nCTEwNzI3OTQzNjEKKwkubG9uZwkzNTE2MzM4MDI4CisJLmxvbmcJMzE2MzYyMzQ1OQorCS5sb25nCTM5NDk5NzIzNDEKKwkubG9uZwkxMDcyODAwNjAzCisJLmxvbmcJMjA2ODQwODU0OAorCS5sb25nCTEwMTU5NjI0NDQKKwkubG9uZwkyMjE0ODc4NDIwCisJLmxvbmcJMTA3MjgwNjg4MAorCS5sb25nCTg5MjI3MDA4NworCS5sb25nCTMxNjQxNjQ5OTgKKwkubG9uZwk4Mjg5NDY4NTgKKwkubG9uZwkxMDcyODEzMTkxCisJLmxvbmcJMTA2NDI0OTIKKwkubG9uZwkxMDE2OTg4MDE0CisJLmxvbmcJNTg2OTk1OTk3CisJLmxvbmcJMTA3MjgxOTUzNgorCS5sb25nCTQxNjYyMzQ4CisJLmxvbmcJMzE2MzY3NjU2OAorCS5sb25nCTIyODgxNTk5NTgKKwkubG9uZwkxMDcyODI1OTE1CisJLmxvbmcJMjE2OTE0NDQ2OQorCS5sb25nCTEwMTU5MjQ1OTcKKwkubG9uZwkyNDQwOTQ0NzkwCisJLmxvbmcJMTA3MjgzMjMyOQorCS5sb25nCTI0OTI3Njk3NzQKKwkubG9uZwkxMDE1MTk2MDMwCisJLmxvbmcJMTg1MzE4NjYxNgorCS5sb25nCTEwNzI4Mzg3NzgKKwkubG9uZwkzMDY2NDk2MzcxCisJLmxvbmcJMTAxNjcwNTE1MAorCS5sb25nCTEzMzcxMDgwMzEKKwkubG9uZwkxMDcyODQ1MjYyCisJLmxvbmcJMzIwMzcyNDQ1MgorCS5sb25nCTEwMTU3MjY0MjEKKwkubG9uZwkxNzA5MzQxOTE3CisJLmxvbmcJMTA3Mjg1MTc4MQorCS5sb25nCTI1NzExNjgyMTcKKwkubG9uZwkxMDE1MjAxMDc1CisJLmxvbmcJMzc5MDk1NTM5MworCS5sb25nCTEwNzI4NTgzMzUKKwkubG9uZwkyMzUyOTQyNDYyCisJLmxvbmcJMzE2NDIyODY2NgorCS5sb25nCTQxMTI1MDY1OTMKKwkubG9uZwkxMDcyODY0OTI1CisJLmxvbmcJMjk0NzM1NTIyMQorCS5sb25nCTEwMTU0MTk2MjQKKwkubG9uZwkzNTA0MDAzNDcyCisJLmxvbmcJMTA3Mjg3MTU1MQorCS5sb25nCTM1OTQwMDEwNjAKKwkubG9uZwkzMTU4Mzc5MjI4CisJLmxvbmcJMjc5OTk2MDg0MworCS5sb25nCTEwNzI4NzgyMTMKKwkubG9uZwkxNDIzNjU1MzgxCisJLmxvbmcJMTAxNjA3MDcyNworCS5sb25nCTI4Mzk0MjQ4NTQKKwkubG9uZwkxMDcyODg0OTExCisJLmxvbmcJMTE3MTU5NjE2MworCS5sb25nCTEwMTQwOTAyNTUKKwkubG9uZwkxNzEwMzAyOTMKKwkubG9uZwkxMDcyODkxNjQ2CisJLmxvbmcJMzUyNjQ2MDEzMgorCS5sb25nCTEwMTU0NzczNTQKKwkubG9uZwk0MjMyODk0NTEzCisJLmxvbmcJMTA3Mjg5ODQxNgorCS5sb25nCTIzODM5Mzg2ODQKKwkubG9uZwkxMDE1NzE3MDk1CisJLmxvbmcJMjk5MjkwMzkzNQorCS5sb25nCTEwNzI5MDUyMjQKKwkubG9uZwkyMjE4MTU0NDA2CisJLmxvbmcJMTAxNjI3Njc2OQorCS5sb25nCTE2MDM0NDQ3MjEKKwkubG9uZwkxMDcyOTEyMDY5CisJLmxvbmcJMTU0ODYzMzY0MAorCS5sb25nCTMxNjMyNDk5MDIKKwkubG9uZwk5MjY1OTE0MzUKKwkubG9uZwkxMDcyOTE4OTUxCisJLmxvbmcJMzIwODgzMzc2MgorCS5sb25nCTMxNjM5NjIwOTAKKwkubG9uZwkxODI5MDk5NjIyCisJLmxvbmcJMTA3MjkyNTg3MAorCS5sb25nCTEwMTY2NjExODEKKwkubG9uZwkzMTY0NTA5NTgxCisJLmxvbmcJODg3NDYzOTI3CisJLmxvbmcJMTA3MjkzMjgyNworCS5sb25nCTM1OTY3NDQxNjMKKwkubG9uZwkzMTYxODQyNzQyCisJLmxvbmcJMzI3Mjg0NTU0MQorCS5sb25nCTEwNzI5Mzk4MjEKKwkubG9uZwk5Mjg4NTI0MTkKKwkubG9uZwkzMTY0NTM2ODI0CisJLmxvbmcJMTI3NjI2MTQxMAorCS5sb25nCTEwNzI5NDY4NTQKKwkubG9uZwkzMDA5ODE5NDgKKwkubG9uZwkxMDE1NzMyNzQ1CisJLmxvbmcJNzg0MTM4NTIKKwkubG9uZwkxMDcyOTUzOTI1CisJLmxvbmcJNDE4MzIyNjg2NworCS5sb25nCTMxNjQwNjU4MjcKKwkubG9uZwk1Njk4NDczMzgKKwkubG9uZwkxMDcyOTYxMDM0CisJLmxvbmcJNDcyOTQ1MjcyCisJLmxvbmcJMzE2MDMzOTMwNQorCS5sb25nCTM2NDU5NDE5MTEKKwkubG9uZwkxMDcyOTY4MTgxCisJLmxvbmcJMzgxNDY4NTA4MQorCS5sb25nCTMxNjI2MjE5MTcKKwkubG9uZwkxNjE3MDA0ODQ1CisJLmxvbmcJMTA3Mjk3NTM2OAorCS5sb25nCTgyODA0OTQ0CisJLmxvbmcJMTAxMTM5MTM1NAorCS5sb25nCTM5NzgxMDA4MjMKKwkubG9uZwkxMDcyOTgyNTkzCisJLmxvbmcJMzUxMzAyNzE5MAorCS5sb25nCTEwMTY4OTQ1MzkKKwkubG9uZwkzMDQ5MzQwMTEyCisJLmxvbmcJMTA3Mjk4OTg1OAorCS5sb25nCTMwNjI5MTU4MjQKKwkubG9uZwkxMDE0MjE5MTcxCisJLmxvbmcJNDA0MDY3NjMxOAorCS5sb25nCTEwNzI5OTcxNjIKKwkubG9uZwk0MDkwNjA5MjM4CisJLmxvbmcJMTAxNjcxMjAzNAorCS5sb25nCTM1NzcwOTY3NDMKKwkubG9uZwkxMDczMDA0NTA2CisJLmxvbmcJMjk1MTQ5NjQxOAorCS5sb25nCTEwMTQ4NDIyNjMKKwkubG9uZwkyNTgzNTUxMjQ1CisJLmxvbmcJMTA3MzAxMTg5MAorCS5sb25nCTMxNjEwOTQxOTUKKwkubG9uZwkxMDE2NjU1MDY3CisJLmxvbmcJMTk5MDAxMjA3MQorCS5sb25nCTEwNzMwMTkzMTQKKwkubG9uZwkzNTI5MDcwNTYzCisJLmxvbmcJMzE2Mzg2MTc2OQorCS5sb25nCTI3MzE1MDExMjIKKwkubG9uZwkxMDczMDI2Nzc4CisJLmxvbmcJMTc3NDAzMTg1NQorCS5sb25nCTMxNjM1MTg1OTcKKwkubG9uZwkxNDUzMTUwMDgyCisJLmxvbmcJMTA3MzAzNDI4MworCS5sb25nCTQ5ODE1NDY2OQorCS5sb25nCTMxNjI1MzY2MzgKKwkubG9uZwkzMzk1MTI5ODcxCisJLmxvbmcJMTA3MzA0MTgyOAorCS5sb25nCTQwMjUzNDU0MzUKKwkubG9uZwkzMTYzMzgzOTY0CisJLmxvbmcJOTE3ODQxODgyCisJLmxvbmcJMTA3MzA0OTQxNQorCS5sb25nCTE4NzE1NTY1CisJLmxvbmcJMTAxNjcwNzg4NAorCS5sb25nCTM1NjY3MTY5MjUKKwkubG9uZwkxMDczMDU3MDQyCisJLmxvbmcJMTUzNjgyNjg1NgorCS5sb25nCTEwMTUxOTEwMDkKKwkubG9uZwkzNzEyNTA0ODczCisJLmxvbmcJMTA3MzA2NDcxMQorCS5sb25nCTg4NDkxOTQ5CisJLmxvbmcJMTAxNjQ3NjIzNgorCS5sb25nCTIzMjExMDY2MTUKKwkubG9uZwkxMDczMDcyNDIyCisJLmxvbmcJMjE3MTE3NjYxMAorCS5sb25nCTEwMTA1ODQzNDcKKwkubG9uZwkzNjM2Njc3ODQKKwkubG9uZwkxMDczMDgwMTc1CisJLmxvbmcJODEzNzUzOTUwCisJLmxvbmcJMTAxNjgzMzc4NQorCS5sb25nCTMxMTE1NzQ1MzcKKwkubG9uZwkxMDczMDg3OTY5CisJLmxvbmcJMjYwNjE2MTQ3OQorCS5sb25nCTMxNjM4MDgzMjIKKwkubG9uZwkyOTU2NjEyOTk3CisJLmxvbmcJMTA3MzA5NTgwNgorCS5sb25nCTIxMTgxNjk3NTEKKwkubG9uZwkzMTYzNzg0MTI5CisJLmxvbmcJODg1ODM0NTI4CisJLmxvbmcJMTA3MzEwMzY4NgorCS5sb25nCTE5NzMyNTg1NDcKKwkubG9uZwkzMTYzMzEwMTQwCisJLmxvbmcJMjE4NjYxNzM4MQorCS5sb25nCTEwNzMxMTE2MDgKKwkubG9uZwkyMjcwNzY0MDg0CisJLmxvbmcJMzE2NDMyMTI4OQorCS5sb25nCTM1NjE3OTM5MDcKKwkubG9uZwkxMDczMTE5NTczCisJLmxvbmcJMTE1NzA1NDA1MworCS5sb25nCTEwMTI5Mzg5MjYKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MzEyNzU4MgorCS5sb25nCTMzMDQ1ODE5OAorCS5sb25nCTMxNjQzMzEzMTYKKwkubG9uZwkxOTYzNzExMTY3CisJLmxvbmcJMTA3MzEzNTYzNAorCS5sb25nCTE3NDQ3Njc3NTcKKwkubG9uZwkzMTYxNjIyODcwCisJLmxvbmcJMTAxMzI1ODc5OQorCS5sb25nCTEwNzMxNDM3MzAKKwkubG9uZwkxNzQ4Nzk3NjExCisJLmxvbmcJMzE2MTE3NzY1OAorCS5sb25nCTQxODI4NzMyMjAKKwkubG9uZwkxMDczMTUxODY5CisJLmxvbmcJNjI5NTQyNjQ2CisJLmxvbmcJMzE2MzA0NDg3OQorCS5sb25nCTM5MDc4MDUwNDQKKwkubG9uZwkxMDczMTYwMDUzCisJLmxvbmcJMjI1NzA5MTIyNQorCS5sb25nCTMxNjI1OTg5ODMKKwkubG9uZwkxMjE4ODA2MTMyCisJLmxvbmcJMTA3MzE2ODI4MgorCS5sb25nCTE4MTg2MTMwNTIKKwkubG9uZwkzMTYzNTk3MDE3CisJLmxvbmcJMTQ0NzE5MjUyMQorCS5sb25nCTEwNzMxNzY1NTUKKwkubG9uZwkxNDYyODU3MTcxCisJLmxvbmcJMzE2MzU2MzA5NworCS5sb25nCTEzMzk5NzI5MjcKKwkubG9uZwkxMDczMTg0ODczCisJLmxvbmcJMTY3OTA4OTA5CisJLmxvbmcJMTAxNjYyMDcyOAorCS5sb25nCTE5NDQ3ODExOTEKKwkubG9uZwkxMDczMTkzMjM2CisJLmxvbmcJMzk5MzI3ODc2NworCS5sb25nCTMxNjI3NzI4NTUKKwkubG9uZwkxOTk3MjQwMgorCS5sb25nCTEwNzMyMDE2NDUKKwkubG9uZwkzNTA3ODk5ODYyCisJLmxvbmcJMTAxNzA1Nzg2OAorCS5sb25nCTkxOTU1NTY4MgorCS5sb25nCTEwNzMyMTAwOTkKKwkubG9uZwkzMTIxOTY5NTM0CisJLmxvbmcJMTAxMzk5NjgwMgorCS5sb25nCTE0MTMzNTYwNTAKKwkubG9uZwkxMDczMjE4NTk5CisJLmxvbmcJMTY1MTM0OTI5MQorCS5sb25nCTMxNjM3MTY3NDIKKwkubG9uZwkyNTcxOTQ3NTM5CisJLmxvbmcJMTA3MzIyNzE0NQorCS5sb25nCTM1NTgxNTkwNjQKKwkubG9uZwkzMTY0NDI1MjQ1CisJLmxvbmcJMTE3Njc0OTk5NworCS5sb25nCTEwNzMyMzU3MzgKKwkubG9uZwkyNzM4OTk4Nzc5CisJLmxvbmcJMzE2MzA4NDQyMAorCS5sb25nCTI2MDQ5NjI1NDEKKwkubG9uZwkxMDczMjQ0Mzc3CisJLmxvbmcJMjYxNDQyNTI3NAorCS5sb25nCTMxNjQ1ODc3NjgKKwkubG9uZwkzNjQ5NzI2MTA1CisJLmxvbmcJMTA3MzI1MzA2MworCS5sb25nCTQwODUwMzYzNDYKKwkubG9uZwkxMDE2Njk4MDUwCisJLmxvbmcJMTExMDA4OTk0NworCS5sb25nCTEwNzMyNjE3OTcKKwkubG9uZwkxNDUxNjQxNjM5CisJLmxvbmcJMTAxNjUyMzI0OQorCS5sb25nCTM4MDk3ODMxNgorCS5sb25nCTEwNzMyNzA1NzgKKwkubG9uZwk4NTQxODg5NzAKKwkubG9uZwkzMTYxNTExMjYyCisJLmxvbmcJMjU2ODMyMDgyMgorCS5sb25nCTEwNzMyNzk0MDYKKwkubG9uZwkyNzMyODI0NDI4CisJLmxvbmcJMTAxNTQwMTQ5MQorCS5sb25nCTE5NDExNzU3NAorCS5sb25nCTEwNzMyODgyODMKKwkubG9uZwk3Nzc1Mjg2MTIKKwkubG9uZwkzMTY0NDYwNjY1CisJLmxvbmcJMjk2NjI3NTU1NworCS5sb25nCTEwNzMyOTcyMDcKKwkubG9uZwkyMTc2MTU1MzI0CisJLmxvbmcJMzE2MDg5MTMzNQorCS5sb25nCTM0MTg5MDMwNTUKKwkubG9uZwkxMDczMzA2MTgwCisJLmxvbmcJMjUyNzQ1NzMzNworCS5sb25nCTMxNjE4NjkxODAKKwkubG9uZwkyNjgyMTQ2Mzg0CisJLmxvbmcJMTA3MzMxNTIwMgorCS5sb25nCTIwODIxNzg1MTMKKwkubG9uZwkzMTY0NDExOTk1CisJLmxvbmcJMTg5MjI4ODQ0MgorCS5sb25nCTEwNzMzMjQyNzMKKwkubG9uZwkyNDQ2MjU1NjY2CisJLmxvbmcJMzE2MzY0ODk1NworCS5sb25nCTIxOTE3ODIwMzIKKwkubG9uZwkxMDczMzMzMzkzCisJLmxvbmcJMjk2MDI1NzcyNgorCS5sb25nCTEwMTQ3OTEyMzgKKwkubG9uZwk0MzQzMTYwNjcKKwkubG9uZwkxMDczMzQyNTYzCisJLmxvbmcJMjAyODM1ODc2NgorCS5sb25nCTEwMTQ1MDY2OTgKKwkubG9uZwkyMDY5NzUxMTQxCisJLmxvbmcJMTA3MzM1MTc4MgorCS5sb25nCTE1NjIxNzA2NzUKKwkubG9uZwkzMTYzNzczMjU3CisJLmxvbmcJMzk2NDI4NDIxMQorCS5sb25nCTEwNzMzNjEwNTEKKwkubG9uZwkyMTExNTgzOTE1CisJLmxvbmcJMTAxNjQ3NTc0MAorCS5sb25nCTI5OTA0MTcyNDUKKwkubG9uZwkxMDczMzcwMzcxCisJLmxvbmcJMzY4MzQ2Nzc0NQorCS5sb25nCTMxNjQ0MTc5MDIKKwkubG9uZwkzMjE5NTg3NDQKKwkubG9uZwkxMDczMzc5NzQyCisJLmxvbmcJMzQwMTkzMzc2NworCS5sb25nCTEwMTY4NDMxMzQKKwkubG9uZwkxNDM0MDU4MTc1CisJLmxvbmcJMTA3MzM4OTE2MworCS5sb25nCTI1MTEzMzIzMworCS5sb25nCTEwMTYxMzQzNDUKKwkubG9uZwkzMjE4MzM4NjgyCisJLmxvbmcJMTA3MzM5ODYzNQorCS5sb25nCTM0MDQxNjQzMDQKKwkubG9uZwkzMTYzNTI1Njg0CisJLmxvbmcJMjU3Mjg2NjQ3NworCS5sb25nCTEwNzM0MDgxNTkKKwkubG9uZwk4Nzg1NjI0MzMKKwkubG9uZwkxMDE2NTcwMzE3CisJLmxvbmcJNjk3MTUzMTI2CisJLmxvbmcJMTA3MzQxNzczNQorCS5sb25nCTEyODM1MTU0MjkKKwkubG9uZwkzMTY0MzMxNzY1CisJLmxvbmcJMzA5MjE5MDcxNQorCS5sb25nCTEwNzM0MjczNjIKKwkubG9uZwk4MTQwMTIxNjgKKwkubG9uZwkzMTYwNTcxOTk4CisJLmxvbmcJMjM4MDYxODA0MgorCS5sb25nCTEwNzM0MzcwNDIKKwkubG9uZwkzMTQ5NTU3MjE5CisJLmxvbmcJMzE2NDM2OTM3NQorCS5sb25nCTQwNzY1NTk5NDMKKwkubG9uZwkxMDczNDQ2Nzc0CisJLmxvbmcJMjExOTQ3ODMzMQorCS5sb25nCTMxNjE4MDY5MjcKKwkubG9uZwk4MTU4NTkyNzQKKwkubG9uZwkxMDczNDU2NTYwCisJLmxvbmcJMjQwMzk2NTkwCisJLmxvbmcJMzE2NDUzNjAxOQorCS5sb25nCTI0MjA4ODM5MjIKKwkubG9uZwkxMDczNDY2Mzk4CisJLmxvbmcJMjA0OTgxMDA1MgorCS5sb25nCTEwMTUxNjg0NjQKKwkubG9uZwkxNTQwODI0NTg1CisJLmxvbmcJMTA3MzQ3NjI5MAorCS5sb25nCTEwNjQwMTcwMTEKKwkubG9uZwkzMTY0NTM2MjY2CisJLmxvbmcJMzcxNjUwMjE3MgorCS5sb25nCTEwNzM0ODYyMzUKKwkubG9uZwkyMzAzNzQwMTI1CisJLmxvbmcJMTAxNTA5MTMwMQorCS5sb25nCTE2MTA2MDA1NzAKKwkubG9uZwkxMDczNDk2MjM1CisJLmxvbmcJMzc2NjczMjI5OAorCS5sb25nCTEwMTY4MDg3NTkKKwkubG9uZwk3Nzc1MDcxNDcKKwkubG9uZwkxMDczNTA2Mjg5CisJLmxvbmcJNDI4MjkyNDIwNQorCS5sb25nCTEwMTYyMzYxMDkKKwkubG9uZwkyNDgzNDgwNTAxCisJLmxvbmcJMTA3MzUxNjM5NworCS5sb25nCTEyMTYzNzE3ODAKKwkubG9uZwkxMDE0MDgyNzQ4CisJLmxvbmcJMzcwNjY4NzU5MworCS5sb25nCTEwNzM1MjY1NjAKKwkubG9uZwkzNTIxNzI2OTQwCisJLmxvbmcJMTAxNDMwMTY0MworCS5sb25nCTE0MzIyMDgzNzgKKwkubG9uZwkxMDczNTM2Nzc5CisJLmxvbmcJMTQwMTA2ODkxNAorCS5sb25nCTMxNjM0MTI1MzkKKwkubG9uZwkxMjQyMDA3OTMyCisJLmxvbmcJMTA3MzU0NzA1MworCS5sb25nCTExMzIwMzQ3MTYKKwkubG9uZwkzMTY0Mzg4NDA3CisJLmxvbmcJMTM1MTA1MDEwCisJLmxvbmcJMTA3MzU1NzM4MworCS5sb25nCTE5MDYxNDg3MjgKKwkubG9uZwkzMTY0NDI0MzE1CisJLmxvbmcJMzcwNzQ3OTE3NQorCS5sb25nCTEwNzM1Njc3NjgKKwkubG9uZwkzNjEzMDc5MzAzCisJLmxvbmcJMTAxNTIxMzMxNAorCS5sb25nCTM4MjMwNTE3NgorCS5sb25nCTEwNzM1NzgyMTEKKwkubG9uZwkyMzQ3NjIyMzc2CisJLmxvbmcJMzE2MzYyNzIwMQorCS5sb25nCTY0Njk2OTY1CisJLmxvbmcJMTA3MzU4ODcxMAorCS5sb25nCTE3Njg3OTc0OTAKKwkubG9uZwkxMDE2ODY1NTM2CisJLmxvbmcJNDA3Njk3NTIwMAorCS5sb25nCTEwNzM1OTkyNjUKKwkubG9uZwkyMDI5MDAwODk5CisJLmxvbmcJMTAxNjI1NzExMQorCS5sb25nCTg2MzczODcxOQorCS5sb25nCTEwNzM2MDk4NzkKKwkubG9uZwkxMzI2OTkyMjIwCisJLmxvbmcJMzE2MzY2MTc3MworCS5sb25nCTM1MTY0MTg5NworCS5sb25nCTEwNzM2MjA1NTAKKwkubG9uZwkyMTcyMjYxNTI2CisJLmxvbmcJMzE2NDA1OTE3NQorCS5sb25nCTM4ODQ2NjI3NzQKKwkubG9uZwkxMDczNjMxMjc4CisJLmxvbmcJMjE1ODYxMTU5OQorCS5sb25nCTEwMTUyNTg3NjEKKwkubG9uZwk0MjI0MTQyNDY3CisJLmxvbmcJMTA3MzY0MjA2NQorCS5sb25nCTMzODk4MjAzODYKKwkubG9uZwkxMDE2MjU1Nzc4CisJLmxvbmcJMjcyODY5Mzk3OAorCS5sb25nCTEwNzM2NTI5MTEKKwkubG9uZwkzOTYxMDk5NzEKKwkubG9uZwkzMTY0NTExMjY3CisJLmxvbmcJNzY0MzA3NDQxCisJLmxvbmcJMTA3MzY2MzgxNgorCS5sb25nCTMwMjEwNTc0MjAKKwkubG9uZwkzMTY0Mzc4MDk5CisJLmxvbmcJMzk5OTM1NzQ3OQorCS5sb25nCTEwNzM2NzQ3NzkKKwkubG9uZwkyMjU4OTQxNjE2CisJLmxvbmcJMTAxNjk3MzMwMAorCS5sb25nCTkyOTgwNjk5OQorCS5sb25nCTEwNzM2ODU4MDMKKwkubG9uZwkzMjA1MzM2NjQzCisJLmxvbmcJMTAxNjMwODEzMworCS5sb25nCTE1MzM5NTMzNDQKKwkubG9uZwkxMDczNjk2ODg2CisJLmxvbmcJNzY5MTcxODUxCisJLmxvbmcJMTAxNjcxNDIwOQorCS5sb25nCTI5MTI3MzA2NDQKKwkubG9uZwkxMDczNzA4MDI5CisJLmxvbmcJMzQ5MDA2NzcyMgorCS5sb25nCTMxNjQ0NTM2NTAKKwkubG9uZwkyMTc0NjUyNjMyCisJLmxvbmcJMTA3MzcxOTIzMworCS5sb25nCTQwODc3MTQ1OTAKKwkubG9uZwkxMDE1NDk4ODM1CisJLmxvbmcJNzMwODIxMTA1CisJLmxvbmcJMTA3MzczMDQ5OAorCS5sb25nCTI1MjMyMzI3NDMKKwkubG9uZwkxMDEzMTE1NzY0CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTczMDgyMTEwNQorCS5sb25nCTEwNzI2ODE5MjIKKwkubG9uZwkyNTIzMjMyNzQzCisJLmxvbmcJMTAxMjA2NzE4OAorCS5sb25nCTIxNzQ2NTI2MzIKKwkubG9uZwkxMDcyNjcwNjU3CisJLmxvbmcJNDA4NzcxNDU5MAorCS5sb25nCTEwMTQ0NTAyNTkKKwkubG9uZwkyOTEyNzMwNjQ0CisJLmxvbmcJMTA3MjY1OTQ1MworCS5sb25nCTM0OTAwNjc3MjIKKwkubG9uZwkzMTYzNDA1MDc0CisJLmxvbmcJMTUzMzk1MzM0NAorCS5sb25nCTEwNzI2NDgzMTAKKwkubG9uZwk3NjkxNzE4NTEKKwkubG9uZwkxMDE1NjY1NjMzCisJLmxvbmcJOTI5ODA2OTk5CisJLmxvbmcJMTA3MjYzNzIyNworCS5sb25nCTMyMDUzMzY2NDMKKwkubG9uZwkxMDE1MjU5NTU3CisJLmxvbmcJMzk5OTM1NzQ3OQorCS5sb25nCTEwNzI2MjYyMDMKKwkubG9uZwkyMjU4OTQxNjE2CisJLmxvbmcJMTAxNTkyNDcyNAorCS5sb25nCTc2NDMwNzQ0MQorCS5sb25nCTEwNzI2MTUyNDAKKwkubG9uZwkzMDIxMDU3NDIwCisJLmxvbmcJMzE2MzMyOTUyMworCS5sb25nCTI3Mjg2OTM5NzgKKwkubG9uZwkxMDcyNjA0MzM1CisJLmxvbmcJMzk2MTA5OTcxCisJLmxvbmcJMzE2MzQ2MjY5MQorCS5sb25nCTQyMjQxNDI0NjcKKwkubG9uZwkxMDcyNTkzNDg5CisJLmxvbmcJMzM4OTgyMDM4NgorCS5sb25nCTEwMTUyMDcyMDIKKwkubG9uZwkzODg0NjYyNzc0CisJLmxvbmcJMTA3MjU4MjcwMgorCS5sb25nCTIxNTg2MTE1OTkKKwkubG9uZwkxMDE0MjEwMTg1CisJLmxvbmcJMzUxNjQxODk3CisJLmxvbmcJMTA3MjU3MTk3NAorCS5sb25nCTIxNzIyNjE1MjYKKwkubG9uZwkzMTYzMDEwNTk5CisJLmxvbmcJODYzNzM4NzE5CisJLmxvbmcJMTA3MjU2MTMwMworCS5sb25nCTEzMjY5OTIyMjAKKwkubG9uZwkzMTYyNjEzMTk3CisJLmxvbmcJNDA3Njk3NTIwMAorCS5sb25nCTEwNzI1NTA2ODkKKwkubG9uZwkyMDI5MDAwODk5CisJLmxvbmcJMTAxNTIwODUzNQorCS5sb25nCTY0Njk2OTY1CisJLmxvbmcJMTA3MjU0MDEzNAorCS5sb25nCTE3Njg3OTc0OTAKKwkubG9uZwkxMDE1ODE2OTYwCisJLmxvbmcJMzgyMzA1MTc2CisJLmxvbmcJMTA3MjUyOTYzNQorCS5sb25nCTIzNDc2MjIzNzYKKwkubG9uZwkzMTYyNTc4NjI1CisJLmxvbmcJMzcwNzQ3OTE3NQorCS5sb25nCTEwNzI1MTkxOTIKKwkubG9uZwkzNjEzMDc5MzAzCisJLmxvbmcJMTAxNDE2NDczOAorCS5sb25nCTEzNTEwNTAxMAorCS5sb25nCTEwNzI1MDg4MDcKKwkubG9uZwkxOTA2MTQ4NzI4CisJLmxvbmcJMzE2MzM3NTczOQorCS5sb25nCTEyNDIwMDc5MzIKKwkubG9uZwkxMDcyNDk4NDc3CisJLmxvbmcJMTEzMjAzNDcxNgorCS5sb25nCTMxNjMzMzk4MzEKKwkubG9uZwkxNDMyMjA4Mzc4CisJLmxvbmcJMTA3MjQ4ODIwMworCS5sb25nCTE0MDEwNjg5MTQKKwkubG9uZwkzMTYyMzYzOTYzCisJLmxvbmcJMzcwNjY4NzU5MworCS5sb25nCTEwNzI0Nzc5ODQKKwkubG9uZwkzNTIxNzI2OTQwCisJLmxvbmcJMTAxMzI1MzA2NworCS5sb25nCTI0ODM0ODA1MDEKKwkubG9uZwkxMDcyNDY3ODIxCisJLmxvbmcJMTIxNjM3MTc4MAorCS5sb25nCTEwMTMwMzQxNzIKKwkubG9uZwk3Nzc1MDcxNDcKKwkubG9uZwkxMDcyNDU3NzEzCisJLmxvbmcJNDI4MjkyNDIwNQorCS5sb25nCTEwMTUxODc1MzMKKwkubG9uZwkxNjEwNjAwNTcwCisJLmxvbmcJMTA3MjQ0NzY1OQorCS5sb25nCTM3NjY3MzIyOTgKKwkubG9uZwkxMDE1NzYwMTgzCisJLmxvbmcJMzcxNjUwMjE3MgorCS5sb25nCTEwNzI0Mzc2NTkKKwkubG9uZwkyMzAzNzQwMTI1CisJLmxvbmcJMTAxNDA0MjcyNQorCS5sb25nCTE1NDA4MjQ1ODUKKwkubG9uZwkxMDcyNDI3NzE0CisJLmxvbmcJMTA2NDAxNzAxMQorCS5sb25nCTMxNjM0ODc2OTAKKwkubG9uZwkyNDIwODgzOTIyCisJLmxvbmcJMTA3MjQxNzgyMgorCS5sb25nCTIwNDk4MTAwNTIKKwkubG9uZwkxMDE0MTE5ODg4CisJLmxvbmcJODE1ODU5Mjc0CisJLmxvbmcJMTA3MjQwNzk4NAorCS5sb25nCTI0MDM5NjU5MAorCS5sb25nCTMxNjM0ODc0NDMKKwkubG9uZwk0MDc2NTU5OTQzCisJLmxvbmcJMTA3MjM5ODE5OAorCS5sb25nCTIxMTk0NzgzMzEKKwkubG9uZwkzMTYwNzU4MzUxCisJLmxvbmcJMjM4MDYxODA0MgorCS5sb25nCTEwNzIzODg0NjYKKwkubG9uZwkzMTQ5NTU3MjE5CisJLmxvbmcJMzE2MzMyMDc5OQorCS5sb25nCTMwOTIxOTA3MTUKKwkubG9uZwkxMDcyMzc4Nzg2CisJLmxvbmcJODE0MDEyMTY4CisJLmxvbmcJMzE1OTUyMzQyMgorCS5sb25nCTY5NzE1MzEyNgorCS5sb25nCTEwNzIzNjkxNTkKKwkubG9uZwkxMjgzNTE1NDI5CisJLmxvbmcJMzE2MzI4MzE4OQorCS5sb25nCTI1NzI4NjY0NzcKKwkubG9uZwkxMDcyMzU5NTgzCisJLmxvbmcJODc4NTYyNDMzCisJLmxvbmcJMTAxNTUyMTc0MQorCS5sb25nCTMyMTgzMzg2ODIKKwkubG9uZwkxMDcyMzUwMDU5CisJLmxvbmcJMzQwNDE2NDMwNAorCS5sb25nCTMxNjI0NzcxMDgKKwkubG9uZwkxNDM0MDU4MTc1CisJLmxvbmcJMTA3MjM0MDU4NworCS5sb25nCTI1MTEzMzIzMworCS5sb25nCTEwMTUwODU3NjkKKwkubG9uZwkzMjE5NTg3NDQKKwkubG9uZwkxMDcyMzMxMTY2CisJLmxvbmcJMzQwMTkzMzc2NworCS5sb25nCTEwMTU3OTQ1NTgKKwkubG9uZwkyOTkwNDE3MjQ1CisJLmxvbmcJMTA3MjMyMTc5NQorCS5sb25nCTM2ODM0Njc3NDUKKwkubG9uZwkzMTYzMzY5MzI2CisJLmxvbmcJMzk2NDI4NDIxMQorCS5sb25nCTEwNzIzMTI0NzUKKwkubG9uZwkyMTExNTgzOTE1CisJLmxvbmcJMTAxNTQyNzE2NAorCS5sb25nCTIwNjk3NTExNDEKKwkubG9uZwkxMDcyMzAzMjA2CisJLmxvbmcJMTU2MjE3MDY3NQorCS5sb25nCTMxNjI3MjQ2ODEKKwkubG9uZwk0MzQzMTYwNjcKKwkubG9uZwkxMDcyMjkzOTg3CisJLmxvbmcJMjAyODM1ODc2NgorCS5sb25nCTEwMTM0NTgxMjIKKwkubG9uZwkyMTkxNzgyMDMyCisJLmxvbmcJMTA3MjI4NDgxNworCS5sb25nCTI5NjAyNTc3MjYKKwkubG9uZwkxMDEzNzQyNjYyCisJLmxvbmcJMTg5MjI4ODQ0MgorCS5sb25nCTEwNzIyNzU2OTcKKwkubG9uZwkyNDQ2MjU1NjY2CisJLmxvbmcJMzE2MjYwMDM4MQorCS5sb25nCTI2ODIxNDYzODQKKwkubG9uZwkxMDcyMjY2NjI2CisJLmxvbmcJMjA4MjE3ODUxMworCS5sb25nCTMxNjMzNjM0MTkKKwkubG9uZwkzNDE4OTAzMDU1CisJLmxvbmcJMTA3MjI1NzYwNAorCS5sb25nCTI1Mjc0NTczMzcKKwkubG9uZwkzMTYwODIwNjA0CisJLmxvbmcJMjk2NjI3NTU1NworCS5sb25nCTEwNzIyNDg2MzEKKwkubG9uZwkyMTc2MTU1MzI0CisJLmxvbmcJMzE1OTg0Mjc1OQorCS5sb25nCTE5NDExNzU3NAorCS5sb25nCTEwNzIyMzk3MDcKKwkubG9uZwk3Nzc1Mjg2MTIKKwkubG9uZwkzMTYzNDEyMDg5CisJLmxvbmcJMjU2ODMyMDgyMgorCS5sb25nCTEwNzIyMzA4MzAKKwkubG9uZwkyNzMyODI0NDI4CisJLmxvbmcJMTAxNDM1MjkxNQorCS5sb25nCTM4MDk3ODMxNgorCS5sb25nCTEwNzIyMjIwMDIKKwkubG9uZwk4NTQxODg5NzAKKwkubG9uZwkzMTYwNDYyNjg2CisJLmxvbmcJMTExMDA4OTk0NworCS5sb25nCTEwNzIyMTMyMjEKKwkubG9uZwkxNDUxNjQxNjM5CisJLmxvbmcJMTAxNTQ3NDY3MworCS5sb25nCTM2NDk3MjYxMDUKKwkubG9uZwkxMDcyMjA0NDg3CisJLmxvbmcJNDA4NTAzNjM0NgorCS5sb25nCTEwMTU2NDk0NzQKKwkubG9uZwkyNjA0OTYyNTQxCisJLmxvbmcJMTA3MjE5NTgwMQorCS5sb25nCTI2MTQ0MjUyNzQKKwkubG9uZwkzMTYzNTM5MTkyCisJLmxvbmcJMTE3Njc0OTk5NworCS5sb25nCTEwNzIxODcxNjIKKwkubG9uZwkyNzM4OTk4Nzc5CisJLmxvbmcJMzE2MjAzNTg0NAorCS5sb25nCTI1NzE5NDc1MzkKKwkubG9uZwkxMDcyMTc4NTY5CisJLmxvbmcJMzU1ODE1OTA2NAorCS5sb25nCTMxNjMzNzY2NjkKKwkubG9uZwkxNDEzMzU2MDUwCisJLmxvbmcJMTA3MjE3MDAyMworCS5sb25nCTE2NTEzNDkyOTEKKwkubG9uZwkzMTYyNjY4MTY2CisJLmxvbmcJOTE5NTU1NjgyCisJLmxvbmcJMTA3MjE2MTUyMworCS5sb25nCTMxMjE5Njk1MzQKKwkubG9uZwkxMDEyOTQ4MjI2CisJLmxvbmcJMTk5NzI0MDIKKwkubG9uZwkxMDcyMTUzMDY5CisJLmxvbmcJMzUwNzg5OTg2MgorCS5sb25nCTEwMTYwMDkyOTIKKwkubG9uZwkxOTQ0NzgxMTkxCisJLmxvbmcJMTA3MjE0NDY2MAorCS5sb25nCTM5OTMyNzg3NjcKKwkubG9uZwkzMTYxNzI0Mjc5CisJLmxvbmcJMTMzOTk3MjkyNworCS5sb25nCTEwNzIxMzYyOTcKKwkubG9uZwkxNjc5MDg5MDkKKwkubG9uZwkxMDE1NTcyMTUyCisJLmxvbmcJMTQ0NzE5MjUyMQorCS5sb25nCTEwNzIxMjc5NzkKKwkubG9uZwkxNDYyODU3MTcxCisJLmxvbmcJMzE2MjUxNDUyMQorCS5sb25nCTEyMTg4MDYxMzIKKwkubG9uZwkxMDcyMTE5NzA2CisJLmxvbmcJMTgxODYxMzA1MgorCS5sb25nCTMxNjI1NDg0NDEKKwkubG9uZwkzOTA3ODA1MDQ0CisJLmxvbmcJMTA3MjExMTQ3NworCS5sb25nCTIyNTcwOTEyMjUKKwkubG9uZwkzMTYxNTUwNDA3CisJLmxvbmcJNDE4Mjg3MzIyMAorCS5sb25nCTEwNzIxMDMyOTMKKwkubG9uZwk2Mjk1NDI2NDYKKwkubG9uZwkzMTYxOTk2MzAzCisJLmxvbmcJMTAxMzI1ODc5OQorCS5sb25nCTEwNzIwOTUxNTQKKwkubG9uZwkxNzQ4Nzk3NjExCisJLmxvbmcJMzE2MDEyOTA4MgorCS5sb25nCTE5NjM3MTExNjcKKwkubG9uZwkxMDcyMDg3MDU4CisJLmxvbmcJMTc0NDc2Nzc1NworCS5sb25nCTMxNjA1NzQyOTQKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MjA3OTAwNgorCS5sb25nCTMzMDQ1ODE5OAorCS5sb25nCTMxNjMyODI3NDAKKwkubG9uZwkzNTYxNzkzOTA3CisJLmxvbmcJMTA3MjA3MDk5NworCS5sb25nCTExNTcwNTQwNTMKKwkubG9uZwkxMDExODkwMzUwCisJLmxvbmcJMjE4NjYxNzM4MQorCS5sb25nCTEwNzIwNjMwMzIKKwkubG9uZwkyMjcwNzY0MDg0CisJLmxvbmcJMzE2MzI3MjcxMworCS5sb25nCTg4NTgzNDUyOAorCS5sb25nCTEwNzIwNTUxMTAKKwkubG9uZwkxOTczMjU4NTQ3CisJLmxvbmcJMzE2MjI2MTU2NAorCS5sb25nCTI5NTY2MTI5OTcKKwkubG9uZwkxMDcyMDQ3MjMwCisJLmxvbmcJMjExODE2OTc1MQorCS5sb25nCTMxNjI3MzU1NTMKKwkubG9uZwkzMTExNTc0NTM3CisJLmxvbmcJMTA3MjAzOTM5MworCS5sb25nCTI2MDYxNjE0NzkKKwkubG9uZwkzMTYyNzU5NzQ2CisJLmxvbmcJMzYzNjY3Nzg0CisJLmxvbmcJMTA3MjAzMTU5OQorCS5sb25nCTgxMzc1Mzk1MAorCS5sb25nCTEwMTU3ODUyMDkKKwkubG9uZwkyMzIxMTA2NjE1CisJLmxvbmcJMTA3MjAyMzg0NgorCS5sb25nCTIxNzExNzY2MTAKKwkubG9uZwkxMDA5NTM1NzcxCisJLmxvbmcJMzcxMjUwNDg3MworCS5sb25nCTEwNzIwMTYxMzUKKwkubG9uZwk4ODQ5MTk0OQorCS5sb25nCTEwMTU0Mjc2NjAKKwkubG9uZwkzNTY2NzE2OTI1CisJLmxvbmcJMTA3MjAwODQ2NgorCS5sb25nCTE1MzY4MjY4NTYKKwkubG9uZwkxMDE0MTQyNDMzCisJLmxvbmcJOTE3ODQxODgyCisJLmxvbmcJMTA3MjAwMDgzOQorCS5sb25nCTE4NzE1NTY1CisJLmxvbmcJMTAxNTY1OTMwOAorCS5sb25nCTMzOTUxMjk4NzEKKwkubG9uZwkxMDcxOTkzMjUyCisJLmxvbmcJNDAyNTM0NTQzNQorCS5sb25nCTMxNjIzMzUzODgKKwkubG9uZwkxNDUzMTUwMDgyCisJLmxvbmcJMTA3MTk4NTcwNworCS5sb25nCTQ5ODE1NDY2OQorCS5sb25nCTMxNjE0ODgwNjIKKwkubG9uZwkyNzMxNTAxMTIyCisJLmxvbmcJMTA3MTk3ODIwMgorCS5sb25nCTE3NzQwMzE4NTUKKwkubG9uZwkzMTYyNDcwMDIxCisJLmxvbmcJMTk5MDAxMjA3MQorCS5sb25nCTEwNzE5NzA3MzgKKwkubG9uZwkzNTI5MDcwNTYzCisJLmxvbmcJMzE2MjgxMzE5MworCS5sb25nCTI1ODM1NTEyNDUKKwkubG9uZwkxMDcxOTYzMzE0CisJLmxvbmcJMzE2MTA5NDE5NQorCS5sb25nCTEwMTU2MDY0OTEKKwkubG9uZwkzNTc3MDk2NzQzCisJLmxvbmcJMTA3MTk1NTkzMAorCS5sb25nCTI5NTE0OTY0MTgKKwkubG9uZwkxMDEzNzkzNjg3CisJLmxvbmcJNDA0MDY3NjMxOAorCS5sb25nCTEwNzE5NDg1ODYKKwkubG9uZwk0MDkwNjA5MjM4CisJLmxvbmcJMTAxNTY2MzQ1OAorCS5sb25nCTMwNDkzNDAxMTIKKwkubG9uZwkxMDcxOTQxMjgyCisJLmxvbmcJMzA2MjkxNTgyNAorCS5sb25nCTEwMTMxNzA1OTUKKwkubG9uZwkzOTc4MTAwODIzCisJLmxvbmcJMTA3MTkzNDAxNworCS5sb25nCTM1MTMwMjcxOTAKKwkubG9uZwkxMDE1ODQ1OTYzCisJLmxvbmcJMTYxNzAwNDg0NQorCS5sb25nCTEwNzE5MjY3OTIKKwkubG9uZwk4MjgwNDk0NAorCS5sb25nCTEwMTAzNDI3NzgKKwkubG9uZwkzNjQ1OTQxOTExCisJLmxvbmcJMTA3MTkxOTYwNQorCS5sb25nCTM4MTQ2ODUwODEKKwkubG9uZwkzMTYxNTczMzQxCisJLmxvbmcJNTY5ODQ3MzM4CisJLmxvbmcJMTA3MTkxMjQ1OAorCS5sb25nCTQ3Mjk0NTI3MgorCS5sb25nCTMxNTkyOTA3MjkKKwkubG9uZwk3ODQxMzg1MgorCS5sb25nCTEwNzE5MDUzNDkKKwkubG9uZwk0MTgzMjI2ODY3CisJLmxvbmcJMzE2MzAxNzI1MQorCS5sb25nCTEyNzYyNjE0MTAKKwkubG9uZwkxMDcxODk4Mjc4CisJLmxvbmcJMzAwOTgxOTQ4CisJLmxvbmcJMTAxNDY4NDE2OQorCS5sb25nCTMyNzI4NDU1NDEKKwkubG9uZwkxMDcxODkxMjQ1CisJLmxvbmcJOTI4ODUyNDE5CisJLmxvbmcJMzE2MzQ4ODI0OAorCS5sb25nCTg4NzQ2MzkyNworCS5sb25nCTEwNzE4ODQyNTEKKwkubG9uZwkzNTk2NzQ0MTYzCisJLmxvbmcJMzE2MDc5NDE2NgorCS5sb25nCTE4MjkwOTk2MjIKKwkubG9uZwkxMDcxODc3Mjk0CisJLmxvbmcJMTAxNjY2MTE4MQorCS5sb25nCTMxNjM0NjEwMDUKKwkubG9uZwk5MjY1OTE0MzUKKwkubG9uZwkxMDcxODcwMzc1CisJLmxvbmcJMzIwODgzMzc2MgorCS5sb25nCTMxNjI5MTM1MTQKKwkubG9uZwkxNjAzNDQ0NzIxCisJLmxvbmcJMTA3MTg2MzQ5MworCS5sb25nCTE1NDg2MzM2NDAKKwkubG9uZwkzMTYyMjAxMzI2CisJLmxvbmcJMjk5MjkwMzkzNQorCS5sb25nCTEwNzE4NTY2NDgKKwkubG9uZwkyMjE4MTU0NDA2CisJLmxvbmcJMTAxNTIyODE5MworCS5sb25nCTQyMzI4OTQ1MTMKKwkubG9uZwkxMDcxODQ5ODQwCisJLmxvbmcJMjM4MzkzODY4NAorCS5sb25nCTEwMTQ2Njg1MTkKKwkubG9uZwkxNzEwMzAyOTMKKwkubG9uZwkxMDcxODQzMDcwCisJLmxvbmcJMzUyNjQ2MDEzMgorCS5sb25nCTEwMTQ0Mjg3NzgKKwkubG9uZwkyODM5NDI0ODU0CisJLmxvbmcJMTA3MTgzNjMzNQorCS5sb25nCTExNzE1OTYxNjMKKwkubG9uZwkxMDEzMDQxNjc5CisJLmxvbmcJMjc5OTk2MDg0MworCS5sb25nCTEwNzE4Mjk2MzcKKwkubG9uZwkxNDIzNjU1MzgxCisJLmxvbmcJMTAxNTAyMjE1MQorCS5sb25nCTM1MDQwMDM0NzIKKwkubG9uZwkxMDcxODIyOTc1CisJLmxvbmcJMzU5NDAwMTA2MAorCS5sb25nCTMxNTczMzA2NTIKKwkubG9uZwk0MTEyNTA2NTkzCisJLmxvbmcJMTA3MTgxNjM0OQorCS5sb25nCTI5NDczNTUyMjEKKwkubG9uZwkxMDE0MzcxMDQ4CisJLmxvbmcJMzc5MDk1NTM5MworCS5sb25nCTEwNzE4MDk3NTkKKwkubG9uZwkyMzUyOTQyNDYyCisJLmxvbmcJMzE2MzE4MDA5MAorCS5sb25nCTE3MDkzNDE5MTcKKwkubG9uZwkxMDcxODAzMjA1CisJLmxvbmcJMjU3MTE2ODIxNworCS5sb25nCTEwMTQxNTI0OTkKKwkubG9uZwkxMzM3MTA4MDMxCisJLmxvbmcJMTA3MTc5NjY4NgorCS5sb25nCTMyMDM3MjQ0NTIKKwkubG9uZwkxMDE0Njc3ODQ1CisJLmxvbmcJMTg1MzE4NjYxNgorCS5sb25nCTEwNzE3OTAyMDIKKwkubG9uZwkzMDY2NDk2MzcxCisJLmxvbmcJMTAxNTY1NjU3NAorCS5sb25nCTI0NDA5NDQ3OTAKKwkubG9uZwkxMDcxNzgzNzUzCisJLmxvbmcJMjQ5Mjc2OTc3NAorCS5sb25nCTEwMTQxNDc0NTQKKwkubG9uZwkyMjg4MTU5OTU4CisJLmxvbmcJMTA3MTc3NzMzOQorCS5sb25nCTIxNjkxNDQ0NjkKKwkubG9uZwkxMDE0ODc2MDIxCisJLmxvbmcJNTg2OTk1OTk3CisJLmxvbmcJMTA3MTc3MDk2MAorCS5sb25nCTQxNjYyMzQ4CisJLmxvbmcJMzE2MjYyNzk5MgorCS5sb25nCTgyODk0Njg1OAorCS5sb25nCTEwNzE3NjQ2MTUKKwkubG9uZwkxMDY0MjQ5MgorCS5sb25nCTEwMTU5Mzk0MzgKKwkubG9uZwkyMjE0ODc4NDIwCisJLmxvbmcJMTA3MTc1ODMwNAorCS5sb25nCTg5MjI3MDA4NworCS5sb25nCTMxNjMxMTY0MjIKKwkubG9uZwkzOTQ5OTcyMzQxCisJLmxvbmcJMTA3MTc1MjAyNworCS5sb25nCTIwNjg0MDg1NDgKKwkubG9uZwkxMDE0OTEzODY4CisJLmxvbmcJOTQ4NzM1NDY2CisJLmxvbmcJMTA3MTc0NTc4NQorCS5sb25nCTM1MTYzMzgwMjgKKwkubG9uZwkzMTYyNTc0ODgzCisJLmxvbmcJMTAxNDg0NTgxOQorCS5sb25nCTEwNzE3Mzk1NzYKKwkubG9uZwkzMTE3OTEwNjQ2CisJLmxvbmcJMzE2MTU1OTEwNQorCS5sb25nCTMzNjYyOTMwNzMKKwkubG9uZwkxMDcxNzMzNDAwCisJLmxvbmcJMzExOTQyNjMxNAorCS5sb25nCTEwMTQxMjA1NTQKKwkubG9uZwkyOTMwMzIyOTEyCisJLmxvbmcJMTA3MTcyNzI1OAorCS5sb25nCTI1OTk0OTk0MjIKKwkubG9uZwkzMTYyNzE0MDQ3CisJLmxvbmcJMzIyODMxNjEwOAorCS5sb25nCTEwNzE3MjExNDkKKwkubG9uZwkzMDEwMjQxOTkxCisJLmxvbmcJMzE1ODQyMjgwNAorCS5sb25nCTM0OTA4NjM5NTMKKwkubG9uZwkxMDcxNzE1MDczCisJLmxvbmcJOTYwNzk3NDk4CisJLmxvbmcJMzE2Mjk0ODg4MAorCS5sb25nCTI5NTI3MTI5ODcKKwkubG9uZwkxMDcxNzA5MDMwCisJLmxvbmcJMzI5MzQ5NDY1MQorCS5sb25nCTMxNjAxMjAzMDEKKwkubG9uZwk4NTI3NDI1NjIKKwkubG9uZwkxMDcxNzAzMDIwCisJLmxvbmcJNjY3MjUzNTg2CisJLmxvbmcJMTAwOTc5MzU1OQorCS5sb25nCTcyODkwOTgxNQorCS5sb25nCTEwNzE2OTcwNDIKKwkubG9uZwkzODM5MzAyMjUKKwkubG9uZwkxMDE1MDI5NDY4CisJLmxvbmcJMTgyODI5Mjg3OQorCS5sb25nCTEwNzE2OTEwOTYKKwkubG9uZwkxMjU1OTU2NzQ3CisJLmxvbmcJMTAxNTU4ODM5OAorCS5sb25nCTM0MDIwMzYwOTkKKwkubG9uZwkxMDcxNjg1MTgyCisJLmxvbmcJNDA1ODg5MzM0CisJLmxvbmcJMTAxNTEwNTY1NgorCS5sb25nCTQxMDM2MDc3NgorCS5sb25nCTEwNzE2NzkzMDEKKwkubG9uZwkxMjY5OTkwNjU1CisJLmxvbmcJMTAxMTk3NTg3MAorCS5sb25nCTcwMjQxMjUxMAorCS5sb25nCTEwNzE2NzM0NTEKKwkubG9uZwkzODAzMjY2MDg3CisJLmxvbmcJMzE2MjI4MDQxNQorCS5sb25nCTM1NDE0MDI5OTYKKwkubG9uZwkxMDcxNjY3NjMyCisJLmxvbmcJMjc1OTE3NzMxNworCS5sb25nCTEwMTQ4NTQ2MjYKKwkubG9uZwkzODk5NTU1NzE3CisJLmxvbmcJMTA3MTY2MTg0NQorCS5sb25nCTQyNzI4MDc1MAorCS5sb25nCTMxNjI1NDY5NzIKKwkubG9uZwkxMDQ4MDE5MDQxCisJLmxvbmcJMTA3MTY1NjA5MAorCS5sb25nCTEzOTg0NzQ4NDUKKwkubG9uZwkzMTYwNTEwNTk1CisJLmxvbmcJMjg1MTgxMjE0OQorCS5sb25nCTEwNzE2NTAzNjUKKwkubG9uZwkyNTk1ODAyNTUxCisJLmxvbmcJMTAxNTc2NzMzNworCS5sb25nCTAKKwkubG9uZwkxMTI3NzQzNDg4CisJLmxvbmcJMAorCS5sb25nCTMyNzUyMjcxMzYKKwkubG9uZwkzNjA3NDA0NzM2CisJLmxvbmcJMTA0NDE0Njk1MgorCS5sb25nCTM2MDc0MDQ3MzYKKwkubG9uZwkzMTkxNjMwNjAwCisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTEwNjM2NjExMjIKKwkubG9uZwk0Mjc3ODExNjk1CisJLmxvbmcJMzIxMTE0NDc3MAorCS5sb25nCTIxNDAxNzU3NTUKKwkubG9uZwkxMDMzODY0MjYxCisJLmxvbmcJMjE0MDE3NTc1NQorCS5sb25nCTEwMzM4NjQyNjEKKwkubG9uZwk0Mjg5NDk1OTg4CisJLmxvbmcJMTA1NDExMzc0NworCS5sb25nCTQyODk0OTU5ODgKKwkubG9uZwkxMDU0MTEzNzQ3CisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTEwNjQ3MDk2OTgKKwkubG9uZwk0Mjc3ODExNjk1CisJLmxvbmcJMzIxMjE5MzM0NgorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDgwNDk3NDc5CisJLmxvbmcJNDE2NjkwMTU3MgorCS5sb25nCTEwNTMwNzcwMDMKKwkubG9uZwkzMDc4MTM1NjQ0CisJLmxvbmcJMTA0OTc4Nzk4MworCS5sb25nCTM4MTc3NDg3MAorCS5sb25nCTEwNjI2NTAyMjAKKwkubG9uZwk0MzYzMTQxMzcKKwkubG9uZwkxMDU2NTcxODA4CisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjc3OTk4OTMKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJMjE0NzQ4MzY0NworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsNDI1NgorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L2VfZXhwLlMgYi9saWJtL3g4Ni9lX2V4cC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVhYjYxOWQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9lX2V4cC5TCkBAIC0wLDAgKzEsNTc2IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gRGVzY3JpcHRpb246CisvLyAgTGV0IEsgPSA2NCAodGFibGUgc2l6ZSkuCisvLyAgICAgICAgeCAgICB4L2xvZygyKSAgICAgbgorLy8gICAgICAgZSAgPSAyICAgICAgICAgID0gMiAqIFRbal0gKiAoMSArIFAoeSkpCisvLyAgd2hlcmUKKy8vICAgICAgIHggPSBtKmxvZygyKS9LICsgeSwgICAgeSBpbiBbLWxvZygyKS9LLi5sb2coMikvS10KKy8vICAgICAgIG0gPSBuKksgKyBqLCAgICAgICAgICAgbSxuLGogLSBzaWduZWQgaW50ZWdlciwgaiBpbiBbLUsvMi4uSy8yXQorLy8gICAgICAgICAgICAgICAgICBqL0sKKy8vICAgICAgIHZhbHVlcyBvZiAyICAgYXJlIHRhYnVsYXRlZCBhcyBUW2pdID0gVF9oaVtqXSAoIDEgKyBUX2xvW2pdKS4KKy8vCisvLyAgICAgICBQKHkpIGlzIGEgbWluaW1heCBwb2x5bm9taWFsIGFwcHJveGltYXRpb24gb2YgZXhwKHgpLTEKKy8vICAgICAgIG9uIHNtYWxsIGludGVydmFsIFstbG9nKDIpL0suLmxvZygyKS9LXSAod2VyZSBjYWxjdWxhdGVkIGJ5IE1hcGxlIFYpLgorLy8KKy8vICBUbyBhdm9pZCBwcm9ibGVtcyB3aXRoIGFyaXRobWV0aWMgb3ZlcmZsb3cgYW5kIHVuZGVyZmxvdywKKy8vICAgICAgICAgICAgbiAgICAgICAgICAgICAgICAgICAgICAgIG4xICBuMgorLy8gIHZhbHVlIG9mIDIgIGlzIHNhZmVseSBjb21wdXRlZCBhcyAyICogMiB3aGVyZSBuMSBpbiBbLUJJQVMvMi4uQklBUy8yXQorLy8gIHdoZXJlIEJJQVMgaXMgYSB2YWx1ZSBvZiBleHBvbmVudCBiaWFzLgorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgZXhwKE5hTikgPSBOYU4KKy8vICBleHAoK0lORikgPSArSU5GCisvLyAgZXhwKC1JTkYpID0gMAorLy8gIGV4cCh4KSA9IDEgZm9yIHN1Ym5vcm1hbHMKKy8vICBmb3IgZmluaXRlIGFyZ3VtZW50LCBvbmx5IGV4cCgwKT0xIGlzIGV4YWN0CisvLyAgRm9yIElFRUUgZG91YmxlCisvLyAgICBpZiB4ID4gIDcwOS43ODI3MTI4OTMzODM5NzMwOTYgdGhlbiBleHAoeCkgb3ZlcmZsb3cKKy8vICAgIGlmIHggPCAtNzQ1LjEzMzIxOTEwMTk0MTEwODQyMCB0aGVuIGV4cCh4KSB1bmRlcmZsb3cKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24KK3N0YXRpY19mdW5jOgorLi5CMS4xOgorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlYXgKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlYXgpLCAlZWF4CisgICAgICAgIGxlYSAgICAgICBzdGF0aWNfY29uc3RfdGFibGVAR09UT0ZGKCVlYXgpLCAlZWF4CisgICAgICAgIHJldAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICBleHAKK0VOVFJZKGV4cCkKKyMgcGFyYW1ldGVyIDE6IDggKyAlZWJwCisuLkIyLjE6CisuLkIyLjI6CisgICAgICAgIHB1c2hsICAgICAlZWJwCisgICAgICAgIG1vdmwgICAgICAlZXNwLCAlZWJwCisgICAgICAgIHN1YmwgICAgICAkMTIwLCAlZXNwCisgICAgICAgIG1vdmwgICAgICAlZWJ4LCA2NCglZXNwKQorICAgICAgICBjYWxsICAgICAgc3RhdGljX2Z1bmMKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlYngKKyAgICAgICAgbW92c2QgICAgIDEyOCglZXNwKSwgJXhtbTAKKyAgICAgICAgdW5wY2tscGQgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgNjQoJWVieCksICV4bW0xCisgICAgICAgIG1vdmFwZCAgICA0OCglZWJ4KSwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgIDgwKCVlYngpLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgOTYoJWVieCksICV4bW0zCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBtb3ZsICAgICAgJDE2NTI3LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkMTU1MDQsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlYXgsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQtMjE0NzQ4MzY0OCwgJWVkeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgc3VicGQgICAgICV4bW02LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAxMjgoJWVieCksICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIDE0NCglZWJ4KSwgJXhtbTUKKyAgICAgICAgc3VicGQgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZkICAgICAgJXhtbTcsICVlYXgKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQ2MywgJWVjeAorICAgICAgICBzaGxsICAgICAgJDQsICVlY3gKKyAgICAgICAgc2FybCAgICAgICQ2LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIG1vdmRxYSAgICAxNiglZWJ4KSwgJXhtbTYKKyAgICAgICAgcGFuZCAgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZkcWEgICAgMzIoJWVieCksICV4bW02CisgICAgICAgIHBhZGRxICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgcHNsbHEgICAgICQ0NiwgJXhtbTcKKyAgICAgICAgc3VicGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgMTYwKCVlYngsJWVjeCksICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBhZGRwZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgIDExMiglZWJ4KSwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICB1bnBja2hwZCAgJXhtbTIsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBvcnBkICAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIHVucGNraHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIGFkZGwgICAgICAkODk0LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTkxNiwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIGZzdGN3ICAgICAyNCglZXNwKQorICAgICAgICBtb3Z6d2wgICAgMjQoJWVzcCksICVlZHgKKyAgICAgICAgb3JsICAgICAgICQ3NjgsICVlZHgKKyAgICAgICAgbW92dyAgICAgICVkeCwgMjgoJWVzcCkKKyAgICAgICAgZmxkY3cgICAgIDI4KCVlc3ApCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHNhcmwgICAgICAkMSwgJWVheAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVkeAorICAgICAgICBtb3ZkcWEgICAgKCVlYngpLCAleG1tNgorICAgICAgICBwYW5kbiAgICAgJXhtbTIsICV4bW02CisgICAgICAgIGFkZGwgICAgICAkMTAyMywgJWVheAorICAgICAgICBtb3ZkICAgICAgJWVheCwgJXhtbTMKKyAgICAgICAgcHNsbHEgICAgICQ1MiwgJXhtbTMKKyAgICAgICAgb3JwZCAgICAgICV4bW0zLCAleG1tNgorICAgICAgICBhZGRsICAgICAgJDEwMjMsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW00CisgICAgICAgIHBzbGxxICAgICAkNTIsICV4bW00CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgOCglZXNwKQorICAgICAgICBmbGRsICAgICAgOCglZXNwKQorICAgICAgICBtb3ZzZCAgICAgJXhtbTYsIDE2KCVlc3ApCisgICAgICAgIGZsZGwgICAgICAxNiglZXNwKQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIG1vdnNkICAgICAleG1tNCwgOCglZXNwKQorICAgICAgICBmbGRsICAgICAgOCglZXNwKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgIDgoJWVzcCkKKyAgICAgICAgbW92c2QgICAgIDgoJWVzcCksICV4bW0wCisgICAgICAgIGZsZGN3ICAgICAyNCglZXNwKQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKyAgICAgICAgY21wbCAgICAgICQtMjE0NzQ4MzY0OCwgJWVjeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgY21wbCAgICAgICQtMTA2NDk1MDk5NywgJWVjeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIG1vdmwgICAgICAxMjgoJWVzcCksICVlZHgKKyAgICAgICAgY21wbCAgICAgICQtMTcxNTU2MDEsICVlZHgKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIG1vdmwgICAgICAkMTQsICVlZHgKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgbW92bCAgICAgICQxNSwgJWVkeAorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIG1vdnNkICAgICAxMjgoJWVzcCksICV4bW0wCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgY21wbCAgICAgICQyMTQ2NDM1MDcyLCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorICAgICAgICBtb3ZsICAgICAgMTMyKCVlc3ApLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkLTIxNDc0ODM2NDgsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisgICAgICAgIG1vdnNkICAgICAxMjA4KCVlYngpLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTQsICVlZHgKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisuTF8yVEFHX1BBQ0tFVF85LjAuMjoKKyAgICAgICAgbW92c2QgICAgIDEyMTYoJWVieCksICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNSwgJWVkeAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKy5MXzJUQUdfUEFDS0VUXzguMC4yOgorICAgICAgICBtb3ZsICAgICAgMTI4KCVlc3ApLCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMjE0NjQzNTA3MiwgJWVheAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4yCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4yCisgICAgICAgIG1vdmwgICAgICAxMzIoJWVzcCksICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyMTQ2NDM1MDcyLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMS4wLjIKKyAgICAgICAgbW92c2QgICAgIDExOTIoJWVieCksICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfMTEuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTIwMCglZWJ4KSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjI6CisgICAgICAgIG1vdnNkICAgICAxMjgoJWVzcCksICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDEzMiglZXNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDIxNDc0ODM2NDcsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQxMDgzMTc5MDA4LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorICAgICAgICBtb3ZzZCAgICAgMTI4KCVlc3ApLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgMTE4NCglZWJ4KSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCA0OCglZXNwKQorICAgICAgICBmbGRsICAgICAgNDgoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICBtb3ZsICAgICAgNjQoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKGV4cCkKKyMgLS0gRW5kICBleHAKKworIyBTdGFydCBmaWxlIHNjb3BlIEFTTQorQUxJQVNfU1lNQk9MKGV4cGwsIGV4cCk7CisjIEVuZCBmaWxlIHNjb3BlIEFTTQorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorc3RhdGljX2NvbnN0X3RhYmxlOgorCS5sb25nCTAKKwkubG9uZwk0MjkzOTE4NzIwCisJLmxvbmcJMAorCS5sb25nCTQyOTM5MTg3MjAKKwkubG9uZwk0Mjk0OTY3MjMyCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyMzIKKwkubG9uZwkwCisJLmxvbmcJNjU0NzIKKwkubG9uZwkwCisJLmxvbmcJNjU0NzIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTExMjc3NDM0ODgKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS5sb25nCTE2OTczNTAzOTgKKwkubG9uZwkxMDc5NDQ4OTAzCisJLmxvbmcJMTY5NzM1MDM5OAorCS5sb25nCTEwNzk0NDg5MDMKKwkubG9uZwk0Mjc3Nzk2ODY0CisJLmxvbmcJMTA2NTc1ODI3NAorCS5sb25nCTQyNzc3OTY4NjQKKwkubG9uZwkxMDY1NzU4Mjc0CisJLmxvbmcJMzE2NDQ4NjQ1OAorCS5sb25nCTEwMjUzMDg1NzAKKwkubG9uZwkzMTY0NDg2NDU4CisJLmxvbmcJMTAyNTMwODU3MAorCS5sb25nCTQyOTQ5NjcyOTQKKwkubG9uZwkxMDcxNjQ0NjcxCisJLmxvbmcJNDI5NDk2NzI5NAorCS5sb25nCTEwNzE2NDQ2NzEKKwkubG9uZwkzODExMDg4NDgwCisJLmxvbmcJMTA2MjY1MDIwNAorCS5sb25nCTE0MzIwNjc2MjEKKwkubG9uZwkxMDY3Nzk5ODkzCisJLmxvbmcJMzIzMDcxNTY2MworCS5sb25nCTEwNjU0MjMxMjUKKwkubG9uZwkxNDMxNjA0MTI5CisJLmxvbmcJMTA2OTg5NzA0NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMzUxMDc2NjEKKwkubG9uZwkxMDE4MDAyMzY3CisJLmxvbmcJMTA0ODAxOTA0MAorCS5sb25nCTExNDE4CisJLmxvbmcJODk2MDA1NjUxCisJLmxvbmcJMTAxNTg2MTg0MgorCS5sb25nCTM1NDE0MDI5OTYKKwkubG9uZwkyMjk2MAorCS5sb25nCTE2NDI1MTQ1MjkKKwkubG9uZwkxMDEyOTg3NzI2CisJLmxvbmcJNDEwMzYwNzc2CisJLmxvbmcJMzQ2MjkKKwkubG9uZwkxNTY4ODk3OTAwCisJLmxvbmcJMTAxNjU2ODQ4NgorCS5sb25nCTE4MjgyOTI4NzkKKwkubG9uZwk0NjQyNAorCS5sb25nCTE4ODIxNjg1MjkKKwkubG9uZwkxMDEwNzQ0ODkzCisJLmxvbmcJODUyNzQyNTYyCisJLmxvbmcJNTgzNDgKKwkubG9uZwk1MDk4NTI4ODgKKwkubG9uZwkxMDE3MzM2MTc0CisJLmxvbmcJMzQ5MDg2Mzk1MgorCS5sb25nCTcwNDAxCisJLmxvbmcJNjUzMjc3MzA3CisJLmxvbmcJMTAxNzQzMTM4MAorCS5sb25nCTI5MzAzMjI5MTEKKwkubG9uZwk4MjU4NgorCS5sb25nCTE2NDk1NTc0MzAKKwkubG9uZwkxMDE3NzI5MzYzCisJLmxvbmcJMTAxNDg0NTgxOAorCS5sb25nCTk0OTA0CisJLmxvbmcJMTA1ODIzMTIzMQorCS5sb25nCTEwMTU3Nzc2NzYKKwkubG9uZwkzOTQ5OTcyMzQxCisJLmxvbmcJMTA3MzU1CisJLmxvbmcJMTA0NDAwMDYwNworCS5sb25nCTEwMTY3ODYxNjcKKwkubG9uZwk4Mjg5NDY4NTgKKwkubG9uZwkxMTk5NDMKKwkubG9uZwkxMTUxNzc5NzI1CisJLmxvbmcJMTAxNTcwNTQwOQorCS5sb25nCTIyODgxNTk5NTgKKwkubG9uZwkxMzI2NjcKKwkubG9uZwkzODE5NDgxMjM2CisJLmxvbmcJMTAxNjQ5OTk2NQorCS5sb25nCTE4NTMxODY2MTYKKwkubG9uZwkxNDU1MzAKKwkubG9uZwkyNTUyMjI3ODI2CisJLmxvbmcJMTAxNTAzOTc4NworCS5sb25nCTE3MDkzNDE5MTcKKwkubG9uZwkxNTg1MzMKKwkubG9uZwkxODI5MzUwMTkzCisJLmxvbmcJMTAxNTIxNjA5NworCS5sb25nCTQxMTI1MDY1OTMKKwkubG9uZwkxNzE2NzcKKwkubG9uZwkxOTEzMzkxNzk1CisJLmxvbmcJMTAxNTc1NjY3NAorCS5sb25nCTI3OTk5NjA4NDMKKwkubG9uZwkxODQ5NjUKKwkubG9uZwkxMzAzNDIzOTI2CisJLmxvbmcJMTAxNTIzODAwNQorCS5sb25nCTE3MTAzMDI5MworCS5sb25nCTE5ODM5OAorCS5sb25nCTE1NzQxNzI3NDYKKwkubG9uZwkxMDE2MDYxMjQxCisJLmxvbmcJMjk5MjkwMzkzNQorCS5sb25nCTIxMTk3NgorCS5sb25nCTM0MjQxNTY5NjkKKwkubG9uZwkxMDE3MTk2NDI4CisJLmxvbmcJOTI2NTkxNDM0CisJLmxvbmcJMjI1NzAzCisJLmxvbmcJMTkzODUxMzU0NworCS5sb25nCTEwMTc2MzEyNzMKKwkubG9uZwk4ODc0NjM5MjYKKwkubG9uZwkyMzk1NzkKKwkubG9uZwkyODA0NTY3MTQ5CisJLmxvbmcJMTAxNTM5MDAyNAorCS5sb25nCTEyNzYyNjE0MTAKKwkubG9uZwkyNTM2MDYKKwkubG9uZwk2MzEwODM1MjUKKwkubG9uZwkxMDE3NjkwMTgyCisJLmxvbmcJNTY5ODQ3MzM3CisJLmxvbmcJMjY3Nzg2CisJLmxvbmcJMTYyMzM3MDc3MAorCS5sb25nCTEwMTEwNDk0NTMKKwkubG9uZwkxNjE3MDA0ODQ1CisJLmxvbmcJMjgyMTIwCisJLmxvbmcJMzY2Nzk4NTI3MworCS5sb25nCTEwMTM4OTQzNjkKKwkubG9uZwkzMDQ5MzQwMTEyCisJLmxvbmcJMjk2NjEwCisJLmxvbmcJMzE0NTM3OTc2MAorCS5sb25nCTEwMTQ0MDMyNzgKKwkubG9uZwkzNTc3MDk2NzQzCisJLmxvbmcJMzExMjU4CisJLmxvbmcJMjYwMzEwMDY4MQorCS5sb25nCTEwMTcxNTI0NjAKKwkubG9uZwkxOTkwMDEyMDcwCisJLmxvbmcJMzI2MDY2CisJLmxvbmcJMzI0OTIwMjk1MQorCS5sb25nCTEwMTc0NDg4ODAKKwkubG9uZwkxNDUzMTUwMDgxCisJLmxvbmcJMzQxMDM1CisJLmxvbmcJNDE5Mjg4OTc0CisJLmxvbmcJMTAxNjI4MDMyNQorCS5sb25nCTkxNzg0MTg4MgorCS5sb25nCTM1NjE2NworCS5sb25nCTM3OTM1MDczMzcKKwkubG9uZwkxMDE2MDk1NzEzCisJLmxvbmcJMzcxMjUwNDg3MworCS5sb25nCTM3MTQ2MworCS5sb25nCTcyODAyMzA5MworCS5sb25nCTEwMTYzNDUzMTgKKwkubG9uZwkzNjM2Njc3ODQKKwkubG9uZwkzODY5MjcKKwkubG9uZwkyNTgyNjc4NTM4CisJLmxvbmcJMTAxNzEyMzQ2MAorCS5sb25nCTI5NTY2MTI5OTYKKwkubG9uZwk0MDI1NTgKKwkubG9uZwk3NTkyOTY2CisJLmxvbmcJMTAxNjcyMTU0MworCS5sb25nCTIxODY2MTczODAKKwkubG9uZwk0MTgzNjAKKwkubG9uZwkyMjg2MTE0NDEKKwkubG9uZwkxMDE2Njk2MTQxCisJLmxvbmcJMTcxOTYxNDQxMgorCS5sb25nCTQzNDMzNAorCS5sb25nCTIyNjE2NjU2NzAKKwkubG9uZwkxMDE3NDU3NTkzCisJLmxvbmcJMTAxMzI1ODc5OAorCS5sb25nCTQ1MDQ4MgorCS5sb25nCTU0NDE0ODkwNworCS5sb25nCTEwMTczMjM2NjYKKwkubG9uZwkzOTA3ODA1MDQzCisJLmxvbmcJNDY2ODA1CisJLmxvbmcJMjM4MzkxNDkxOAorCS5sb25nCTEwMTcxNDM1ODYKKwkubG9uZwkxNDQ3MTkyNTIwCisJLmxvbmcJNDgzMzA3CisJLmxvbmcJMTE3NjQxMjAzOAorCS5sb25nCTEwMTcyNjczNzIKKwkubG9uZwkxOTQ0NzgxMTkwCisJLmxvbmcJNDk5OTg4CisJLmxvbmcJMjg4Mjk1NjM3MworCS5sb25nCTEwMTMzMTI0ODEKKwkubG9uZwk5MTk1NTU2ODIKKwkubG9uZwk1MTY4NTEKKwkubG9uZwkzMTU0MDc3NjQ4CisJLmxvbmcJMTAxNjUyODU0MworCS5sb25nCTI1NzE5NDc1MzgKKwkubG9uZwk1MzM4OTcKKwkubG9uZwkzNDg2NTE5OTkKKwkubG9uZwkxMDE2NDA1NzgwCisJLmxvbmcJMjYwNDk2MjU0MAorCS5sb25nCTU1MTEyOQorCS5sb25nCTMyNTM3OTE0MTIKKwkubG9uZwkxMDE1OTIwNDMxCisJLmxvbmcJMTExMDA4OTk0NworCS5sb25nCTU2ODU0OQorCS5sb25nCTE1MDkxMjE4NjAKKwkubG9uZwkxMDE0NzU2OTk1CisJLmxvbmcJMjU2ODMyMDgyMgorCS5sb25nCTU4NjE1OAorCS5sb25nCTI2MTc2NDkyMTIKKwkubG9uZwkxMDE3MzQwMDkwCisJLmxvbmcJMjk2NjI3NTU1NgorCS5sb25nCTYwMzk1OQorCS5sb25nCTU1MzIxNDYzNAorCS5sb25nCTEwMTY0NTc0MjUKKwkubG9uZwkyNjgyMTQ2MzgzCisJLmxvbmcJNjIxOTU0CisJLmxvbmcJNzMwOTc1NzgzCisJLmxvbmcJMTAxNDA4MzU4MAorCS5sb25nCTIxOTE3ODIwMzIKKwkubG9uZwk2NDAxNDUKKwkubG9uZwkxNDg2NDk5NTE3CisJLmxvbmcJMTAxNjgxODk5NgorCS5sb25nCTIwNjk3NTExNDAKKwkubG9uZwk2NTg1MzQKKwkubG9uZwkyNTk1Nzg4OTI4CisJLmxvbmcJMTAxNjQwNzkzMgorCS5sb25nCTI5OTA0MTcyNDQKKwkubG9uZwk2NzcxMjMKKwkubG9uZwkxODUzMDUzNjE5CisJLmxvbmcJMTAxNTMxMDcyNAorCS5sb25nCTE0MzQwNTgxNzUKKwkubG9uZwk2OTU5MTUKKwkubG9uZwkyNDYyNzkwNTM1CisJLmxvbmcJMTAxNTgxNDc3NQorCS5sb25nCTI1NzI4NjY0NzcKKwkubG9uZwk3MTQ5MTEKKwkubG9uZwkzNjkzOTQ0MjE0CisJLmxvbmcJMTAxNzI1OTExMAorCS5sb25nCTMwOTIxOTA3MTQKKwkubG9uZwk3MzQxMTQKKwkubG9uZwkyOTc5MzMzNTUwCisJLmxvbmcJMTAxNzE4ODY1NAorCS5sb25nCTQwNzY1NTk5NDIKKwkubG9uZwk3NTM1MjYKKwkubG9uZwkxNzQwNTQ4NjEKKwkubG9uZwkxMDE0MzAwNjMxCisJLmxvbmcJMjQyMDg4MzkyMgorCS5sb25nCTc3MzE1MAorCS5sb25nCTgxNjc3ODQxOQorCS5sb25nCTEwMTQxOTc5MzQKKwkubG9uZwkzNzE2NTAyMTcyCisJLmxvbmcJNzkyOTg3CisJLmxvbmcJMzUwNzA1MDkyNAorCS5sb25nCTEwMTUzNDExOTkKKwkubG9uZwk3Nzc1MDcxNDcKKwkubG9uZwk4MTMwNDEKKwkubG9uZwkxODIxNTE0MDg4CisJLmxvbmcJMTAxMzQxMDYwNAorCS5sb25nCTM3MDY2ODc1OTMKKwkubG9uZwk4MzMzMTIKKwkubG9uZwk5MjA2MjM1MzkKKwkubG9uZwkxMDE2Mjk1NDMzCisJLmxvbmcJMTI0MjAwNzkzMQorCS5sb25nCTg1MzgwNQorCS5sb25nCTI3ODkwMTc1MTEKKwkubG9uZwkxMDE0Mjc2OTk3CisJLmxvbmcJMzcwNzQ3OTE3NQorCS5sb25nCTg3NDUyMAorCS5sb25nCTM1ODYyMzMwMDQKKwkubG9uZwkxMDE1OTYyMTkyCisJLmxvbmcJNjQ2OTY5NjUKKwkubG9uZwk4OTU0NjIKKwkubG9uZwk0NzQ2NTA1MTQKKwkubG9uZwkxMDE2NjQyNDE5CisJLmxvbmcJODYzNzM4NzE4CisJLmxvbmcJOTE2NjMxCisJLmxvbmcJMTYxNDQ0ODg1MQorCS5sb25nCTEwMTQyODE3MzIKKwkubG9uZwkzODg0NjYyNzc0CisJLmxvbmcJOTM4MDMwCisJLmxvbmcJMjQ1MDA4MjA4NgorCS5sb25nCTEwMTYxNjQxMzUKKwkubG9uZwkyNzI4NjkzOTc3CisJLmxvbmcJOTU5NjYzCisJLmxvbmcJMTEwMTY2ODM2MAorCS5sb25nCTEwMTU5ODkxODAKKwkubG9uZwkzOTk5MzU3NDc5CisJLmxvbmcJOTgxNTMxCisJLmxvbmcJODM1ODE0ODk0CisJLmxvbmcJMTAxNTcwMjY5NworCS5sb25nCTE1MzM5NTMzNDQKKwkubG9uZwkxMDAzNjM4CisJLmxvbmcJMTMwMTQwMDk4OQorCS5sb25nCTEwMTQ0NjY4NzUKKwkubG9uZwkyMTc0NjUyNjMyCisJLmxvbmcJMTAyNTk4NQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTIxNDY0MzUwNzIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkyMTQ2NDM1MDcxCisJLmxvbmcJMAorCS5sb25nCTEwNDg1NzYKKwkudHlwZQlzdGF0aWNfY29uc3RfdGFibGUsQG9iamVjdAorCS5zaXplCXN0YXRpY19jb25zdF90YWJsZSwxMjI0CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvZV9oeXBvdC5TIGIvbGlibS94ODYvZV9oeXBvdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZhMTQzZTUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9lX2h5cG90LlMKQEAgLTAsMCArMSwyMjAgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyBYODcgdmVyc2lvbjoKKy8vIFVzZSA4MC1iaXQgRlBVIHByZWNpc2lvbiBmbXVsLCBmc3FydCB0byBjb21wdXRlIHNxdWFyZSBhbmQgc3FydC4KKy8vCisvLyBTU0UgdmVyc2lvbjoKKy8vIFN3YXAgeCwgeSBpZiB8eHw8fHl8CisvLyBGb3IgeD0yXmsqeCwgZ2V0IHk9eSoyXigtaykKKy8vIEdldCBTIH4gc3FydCh4XjIreV4yKSAgKGxlYWRpbmcgMSArIGxlYWRpbmcgMjUgbWFudGlzc2EgYml0cykKKy8vCisvLyBHZXQgRCA9ICggUk4oeF4yK3leMikgLSBTXjIgKSArICggeF4yIC0gUk4oeF4yKSApICsKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgKCB5XjIgLSAoKFJOKHheMit5XjIpLVJOKHheMikpICkKKy8vCisvLyBSZXN1bHQgaXMgMl5rKihTICsgU2UpLCAgd2hlcmUgU2UgPSBTKmUKKy8vICAgICAgICBTKmUgaXMgYXBwcm94aW1hdGVkIGFzIChELzJTKSooIDEgLSAoRC8yUyleMioxLjAvUyApCisvLworLy8gUmV0dXJuIDJeayooUytTZSkKKy8vCisvLyBGb3IgfHkveHw8Ml4oLTY0KSwgcmV0dXJuIHgKKy8vCisvLyBGb3IgY2FzZXMgd2hlcmUgbWF4aW11bSBiaWFzZWQgZXhwb25lbnQgaXMgZWl0aGVyIGdyZWF0ZXIgdGhhbiA3ZmRoIG9yCisvLyBiZWxvdyAzMiwgdGFrZSBhIHNwZWNpYWwgcGF0aCB0byBjaGVjayBmb3Igc3BlY2lhbCBjYXNlcyAoMCwgTmFOLCBJbmYpLAorLy8gcG9zc2libGUgb3ZlcmZsb3csIGFuZCBtb3JlIGFjY3VyYXRlIGNvbXB1dGF0aW9uIGZvciBkZW5vcm1hbCByZXN1bHRzCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBoeXBvdCh4LHkpLCBoeXBvdCh5LHgpLCBhbmQgaHlwb3QoeCwteSkgYXJlIGVxdWl2YWxlbnQKKy8vICBoeXBvdCh4LCstMCkgaXMgZXF1aXZhbGVudCB0byBmYWJzKHgpCisvLyAgaHlwb3QoeCx5KSA9IHkgaWYgKHg9PU5hTiBvciB4PT1JTkYpIGFuZCB5PT1JTkYKKy8vICBoeXBvdCh4LHkpID0geCBpZiAoeD09TmFOIG9yIHg9PUlORikgYW5kIHkhPUlORiAoZXZlbiBpZiB5PT1OYU4hKQorLy8gIGh5cG90KHgseSkgPSB5IGlmICh4IT1OYU4gYW5kIHghPUlORikgYW5kICh5PT1OYU4gb3IgeT09SU5GKQorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHN0YXRpY19mdW5jCisgICAgICAgIC50ZXh0CisgICAgICAgIC5hbGlnbiBfX2Jpb25pY19hc21fYWxpZ24KKyAgICAgICAgLnR5cGUgc3RhdGljX2Z1bmMsIEBmdW5jdGlvbgorc3RhdGljX2Z1bmM6CisuLkIxLjE6CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVheAorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVheCksICVlYXgKKyAgICAgICAgbGVhICAgICAgIHN0YXRpY19jb25zdF90YWJsZUBHT1RPRkYoJWVheCksICVlYXgKKyAgICAgICAgcmV0CisgICAgICAgIC5zaXplICAgc3RhdGljX2Z1bmMsLi1zdGF0aWNfZnVuYworIyAtLSBFbmQgIHN0YXRpY19mdW5jCisKKyMgLS0gQmVnaW4gIGh5cG90CitFTlRSWShoeXBvdCkKKyMgcGFyYW1ldGVyIDE6IDggKyAlZWJwCisjIHBhcmFtZXRlciAyOiAxNiArICVlYnAKKy4uQjIuMToKKy4uQjIuMjoKKyAgICAgICAgcHVzaGwgICAgICVlYnAKKyAgICAgICAgbW92bCAgICAgICVlc3AsICVlYnAKKyAgICAgICAgc3VibCAgICAgICQxNTIsICVlc3AKKyAgICAgICAgbW92bCAgICAgICVlYngsIDk2KCVlc3ApCisgICAgICAgIGNhbGwgICAgICBzdGF0aWNfZnVuYworICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVieAorICAgICAgICBtb3ZhcGQgICAgKCVlYngpLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgMTYwKCVlc3ApLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgMTY4KCVlc3ApLCAleG1tMQorICAgICAgICBhbmRwZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMjQ1MjgsICVlYXgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisgICAgICAgIGNtcGwgICAgICAkMjQ1MjgsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgZmxkbCAgICAgIDE2MCglZXNwKQorICAgICAgICBmbGRsICAgICAgMTY4KCVlc3ApCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgwKSwgJXN0CisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgbm9wICAgICAgIAorICAgICAgICBmbXVsICAgICAgJXN0KDApLCAlc3QKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzcXJ0ICAgICAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgc3VibCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgYWRkbCAgICAgICQ5MjgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQxODU2LCAlZWN4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBjbXBsICAgICAgJDQ5MDU2LCAlZWF4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorICAgICAgICBmbGRsICAgICAgMTYwKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAxNjgoJWVzcCkKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDApLCAlc3QKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBub3AgICAgICAgCisgICAgICAgIGZtdWwgICAgICAlc3QoMCksICVzdAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnNxcnQgICAgIAorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIGZzdGwgICAgICAoJWVzcCkKKyAgICAgICAgZnN0cHQgICAgIDE2KCVlc3ApCisgICAgICAgIHhvcmwgICAgICAlZWF4LCAlZWF4CisgICAgICAgIG1vdncgICAgICAyNCglZXNwKSwgJWF4CisgICAgICAgIGNtcGwgICAgICAkMTc0MDcsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAzMiglZXNwKQorICAgICAgICBtb3ZzZCAgICAgJXhtbTEsIDQwKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAzMiglZXNwKQorICAgICAgICBmYWRkbCAgICAgNDAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgbW92bCAgICAgICQ0NiwgJWVkeAorLkxfMlRBR19QQUNLRVRfOC4wLjI6CisgICAgICAgIG1vdnNkICAgICAxNjAoJWVzcCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICAxNjgoJWVzcCksICV4bW0xCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgc2h1ZnBkICAgICQwLCAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92ZHFhICAgICV4bW0wLCAleG1tMgorICAgICAgICBtb3ZkcWEgICAgMTYoJWVieCksICV4bW0zCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgMzIoJWVzcCkKKyAgICAgICAgbW92c2QgICAgICV4bW0xLCA0MCglZXNwKQorICAgICAgICBjbXBwZCAgICAgJDMsICV4bW0wLCAleG1tMgorICAgICAgICBjbXBwZCAgICAgJDAsICV4bW0wLCAleG1tMworICAgICAgICBtb3Ztc2twZCAgJXhtbTIsICVlZHgKKyAgICAgICAgbW92bXNrcGQgICV4bW0zLCAlZWF4CisgICAgICAgIHRlc3RsICAgICAlZWR4LCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF85LjAuMgorICAgICAgICBmbGRsICAgICAgMzIoJWVzcCkKKyAgICAgICAgZm11bGwgICAgIDQwKCVlc3ApCisgICAgICAgIHRlc3RsICAgICAkMSwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4yCisgICAgICAgIHRlc3RsICAgICAkMiwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfOS4wLjI6CisgICAgICAgIGZsZGwgICAgICAzMiglZXNwKQorICAgICAgICBmYWRkbCAgICAgNDAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjI6CisgICAgICAgIGZzdHBsICAgICA0MCglZXNwKQorICAgICAgICBmbGRsICAgICAgMzIoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMS4wLjI6CisgICAgICAgIGZzdHBsICAgICAzMiglZXNwKQorICAgICAgICBmbGRsICAgICAgNDAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBtb3ZsICAgICAgOTYoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKGh5cG90KQorIyAtLSBFbmQgIGh5cG90CisKKyMgU3RhcnQgZmlsZSBzY29wZSBBU00KK0FMSUFTX1NZTUJPTChoeXBvdGwsIGh5cG90KTsKKyMgRW5kIGZpbGUgc2NvcGUgQVNNCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitzdGF0aWNfY29uc3RfdGFibGU6CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTIxNDc0ODM2NDcKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMjE0NzQ4MzY0NworCS5sb25nCTAKKwkubG9uZwkyMTQ2NDM1MDcyCisJLmxvbmcJMAorCS5sb25nCTIxNDY0MzUwNzIKKwkudHlwZQlzdGF0aWNfY29uc3RfdGFibGUsQG9iamVjdAorCS5zaXplCXN0YXRpY19jb25zdF90YWJsZSwzMgorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L2VfbG9nLlMgYi9saWJtL3g4Ni9lX2xvZy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE2MTgxY2EKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9lX2xvZy5TCkBAIC0wLDAgKzEsNzgwIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gICAgeD0yXmsgKiBteCwgbXggaW4gWzEsMikKKy8vCisvLyAgICBHZXQgQn4xL214IGJhc2VkIG9uIHRoZSBvdXRwdXQgb2YgcmNwc3MgaW5zdHJ1Y3Rpb24gKEIwKQorLy8gICAgQiA9IGludCgoQjAqMl43KzAuNSkpLzJeNworLy8KKy8vICAgIFJlZHVjZWQgYXJndW1lbnQ6IHI9QipteC0xLjAgKGNvbXB1dGVkIGFjY3VyYXRlbHkgaW4gaGlnaCBhbmQgbG93IHBhcnRzKQorLy8KKy8vICAgIFJlc3VsdDogIGsqbG9nKDIpIC0gbG9nKEIpICsgcChyKSBpZiB8eC0xfCA+PSBzbWFsbCB2YWx1ZSAoMl4tNikgIGFuZAorLy8gICAgICAgICAgICAgcChyKSBpcyBhIGRlZ3JlZSA3IHBvbHlub21pYWwKKy8vICAgICAgICAgICAgIC1sb2coQikgcmVhZCBmcm9tIGRhdGEgdGFibGUgKGhpZ2gsIGxvdyBwYXJ0cykKKy8vICAgICAgICAgICAgIFJlc3VsdCBpcyBmb3JtZWQgZnJvbSBoaWdoIGFuZCBsb3cgcGFydHMKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGxvZyhOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBsb2coK0lORikgPSB0aGF0IElORgorLy8gIGxvZygwKSA9IC1JTkYgd2l0aCBkaXZpZGUtYnktemVybyBleGNlcHRpb24gcmFpc2VkCisvLyAgbG9nKDEpID0gKzAKKy8vICBsb2coeCkgPSBOYU4gd2l0aCBpbnZhbGlkIGV4Y2VwdGlvbiByYWlzZWQgaWYgeCA8IC0wLCBpbmNsdWRpbmcgLUlORgorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHN0YXRpY19mdW5jCisgICAgICAgIC50ZXh0CisgICAgICAgIC5hbGlnbiBfX2Jpb25pY19hc21fYWxpZ24KKyAgICAgICAgLnR5cGUgc3RhdGljX2Z1bmMsIEBmdW5jdGlvbgorc3RhdGljX2Z1bmM6CisuLkIxLjE6CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVheAorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVheCksICVlYXgKKyAgICAgICAgbGVhICAgICAgIHN0YXRpY19jb25zdF90YWJsZUBHT1RPRkYoJWVheCksICVlYXgKKyAgICAgICAgcmV0CisgICAgICAgIC5zaXplICAgc3RhdGljX2Z1bmMsLi1zdGF0aWNfZnVuYworIyAtLSBFbmQgIHN0YXRpY19mdW5jCisKKyMgLS0gQmVnaW4gIGxvZworRU5UUlkobG9nKQorIyBwYXJhbWV0ZXIgMTogOCArICVlYnAKKy4uQjIuMToKKy4uQjIuMjoKKyAgICAgICAgcHVzaGwgICAgICVlYnAKKyAgICAgICAgbW92bCAgICAgICVlc3AsICVlYnAKKyAgICAgICAgc3VibCAgICAgICQxMDQsICVlc3AKKyAgICAgICAgbW92bCAgICAgICVlYngsIDQwKCVlc3ApCisgICAgICAgIGNhbGwgICAgICBzdGF0aWNfZnVuYworICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVieAorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMgorICAgICAgICB4b3JwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAkMzA3MDQsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tMworICAgICAgICBtb3ZzZCAgICAgMTEyKCVlc3ApLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlY3gKKyAgICAgICAgbW92ZCAgICAgICVlY3gsICV4bW00CisgICAgICAgIG1vdnNkICAgICAyMTI4KCVlYngpLCAleG1tNQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQ1LCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE2MzUyLCAlZWN4CisgICAgICAgIHBzcmxxICAgICAkMzQsICV4bW0wCisgICAgICAgIHJjcHNzICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQxMiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMjgsICV4bW01LCAleG1tNgorICAgICAgICBwc3JscSAgICAgJDEyLCAleG1tMQorICAgICAgICBzdWJsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3MzYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgcGFkZGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBvcnBkICAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVkeAorICAgICAgICBwc2xscSAgICAgJDI5LCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc3VibCAgICAgICVlY3gsICVlYXgKKyAgICAgICAgY3Z0c2kyc2RsICVlYXgsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDIwNjQoJWVieCksICV4bW02CisgICAgICAgIG1vdmFwZCAgICAyMDgwKCVlYngpLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIGFuZGwgICAgICAkMTY3MTE2ODAsICVlZHgKKyAgICAgICAgc2hybCAgICAgICQxMiwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgKCVlYngsJWVkeCksICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAyMDk2KCVlYngpLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAyMTEyKCVlYngpLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgMjA3MiglZWJ4KSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIyOCwgJXhtbTAsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW00LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgbW92c2QgICAgIDExMiglZXNwKSwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIGNtcGwgICAgICAkMTYsICVlYXgKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkLTIwOTcxNTIsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIG9ybCAgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMywgJWVkeAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisuTF8yVEFHX1BBQ0tFVF85LjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgbW92c2QgICAgIDExMiglZXNwKSwgJXhtbTAKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4yCisuTF8yVEFHX1BBQ0tFVF84LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkNDkxMzYsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBkaXZzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMiwgJWVkeAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjIKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDE4NDE2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgb3JwZCAgICAgICV4bW0yLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDUsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTg0MTYsICVlY3gKKyAgICAgICAgcHNybHEgICAgICQzNCwgJXhtbTAKKyAgICAgICAgcmNwc3MgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDEyLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIyOCwgJXhtbTUsICV4bW02CisgICAgICAgIHBzcmxxICAgICAkMTIsICV4bW0xCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgMjQoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDI0KCVlc3ApCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjI6CisgICAgICAgIG1vdmwgICAgICA0MCglZXNwKSwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIyLjM6CitFTkQobG9nKQorIyAtLSBFbmQgIGxvZworCisjIFN0YXJ0IGZpbGUgc2NvcGUgQVNNCitBTElBU19TWU1CT0wobG9nbCwgbG9nKTsKKyMgRW5kIGZpbGUgc2NvcGUgQVNNCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitzdGF0aWNfY29uc3RfdGFibGU6CisJLmxvbmcJNDI3NzgxMTIwMAorCS5sb25nCTEwNzIwNDk3MzAKKwkubG9uZwkyNDc5MzE4ODMyCisJLmxvbmcJMTAyNjQ4NzEyNworCS5sb25nCTI4NTQ0OTIxNjAKKwkubG9uZwkxMDcyMDMzNDEwCisJLmxvbmcJMjE1NjMxNTUwCisJLmxvbmcJMTAyNTYzODk2OAorCS5sb25nCTE1NDcwNjEyNDgKKwkubG9uZwkxMDcyMDE3MjE2CisJLmxvbmcJMjg4Njc4MTQzNQorCS5sb25nCTEwMjY0MjMzOTUKKwkubG9uZwk2NDk4MjUyODAKKwkubG9uZwkxMDcyMDAxMTQ2CisJLmxvbmcJNDI4MTUzMzQwNQorCS5sb25nCTEwMjQwMzg5MjMKKwkubG9uZwk2NDYzNDY3NTIKKwkubG9uZwkxMDcxOTg1MTk4CisJLmxvbmcJMTU2MjczNTkyMQorCS5sb25nCTEwMjM3OTAyNzYKKwkubG9uZwkyMjAzNzM0MDE2CisJLmxvbmcJMTA3MTk2OTM3MAorCS5sb25nCTE4MzgzOTc2OTEKKwkubG9uZwkzMTczOTM2MjA5CisJLmxvbmcJMTg3MjE2OTk4NAorCS5sb25nCTEwNzE5NTM2NjEKKwkubG9uZwkzOTgxMjAyNDYwCisJLmxvbmcJMTAyMjMyNTAxMworCS5sb25nCTY2OTU1Nzc2MAorCS5sb25nCTEwNzE5MzgwNjkKKwkubG9uZwk0MTgyNTk3ODAyCisJLmxvbmcJMzE3MzE3NDEyMgorCS5sb25nCTQwNzY0MTM5NTIKKwkubG9uZwkxMDcxOTIyNTkxCisJLmxvbmcJMTIwOTAyOTExMQorCS5sb25nCTMxNzA3MzYyMDcKKwkubG9uZwk1NTYxMjUxODQKKwkubG9uZwkxMDcxOTA3MjI4CisJLmxvbmcJODIxMDg2MDI4CisJLmxvbmcJMzE3MzQzNzA0OQorCS5sb25nCTIwNDkxNDY4OAorCS5sb25nCTEwNzE4OTE5NzYKKwkubG9uZwkyMDk3MDI1OTg2CisJLmxvbmcJMzE3MTA3MTc5OAorCS5sb25nCTM4NzU0NTA4OAorCS5sb25nCTEwNzE4NzY4MzQKKwkubG9uZwkzMTQyOTM2OTk2CisJLmxvbmcJMzE3MzA5MjIxOAorCS5sb25nCTI5MTI3ODMzNjAKKwkubG9uZwkxMDcxODYxODAwCisJLmxvbmcJMjUwMjQyMDE0MAorCS5sb25nCTEwMjQ1MDU5MTkKKwkubG9uZwkxMTQ0MjYwNjA4CisJLmxvbmcJMTA3MTg0Njg3NAorCS5sb25nCTMzMTU2NTgxNDAKKwkubG9uZwkzMTczNDY5ODQzCisJLmxvbmcJMTQ3MTIwOTQ3MgorCS5sb25nCTEwNzE4MzIwNTMKKwkubG9uZwkxMjk2MjEwMDkKKwkubG9uZwkzMTcyNDQzODc3CisJLmxvbmcJMTgyOTY4MzIwMAorCS5sb25nCTEwNzE4MTczMzYKKwkubG9uZwkzODg1NDY3NjkzCisJLmxvbmcJMTAyNTUzNTI3NQorCS5sb25nCTI4ODY3Njg2NAorCS5sb25nCTEwNzE4MDI3MjIKKwkubG9uZwk4NjEzOTQ3MgorCS5sb25nCTMxNzE2Mzk3OTMKKwkubG9uZwkzNjM2Mzc4NjI0CisJLmxvbmcJMTA3MTc4ODIwOAorCS5sb25nCTE4NTAyMzg1ODcKKwkubG9uZwkxMDI0NjU0MzQyCisJLmxvbmcJMTYwNjgxNzc5MgorCS5sb25nCTEwNzE3NzM3OTUKKwkubG9uZwkzMzg4ODk5Nzk1CisJLmxvbmcJMzE3MzY3NTU4NgorCS5sb25nCTEyMzYxNjQ2MDgKKwkubG9uZwkxMDcxNzU5NDgwCisJLmxvbmcJMzk4MzU5OTIwNworCS5sb25nCTEwMjAwNDY1NTgKKwkubG9uZwkxMDg5NjE2ODk2CisJLmxvbmcJMTA3MTc0NTI2MgorCS5sb25nCTQxNzE5NzQyMjQKKwkubG9uZwkxMDI0NzczMTk4CisJLmxvbmcJNDE0MzA5Mzc2MAorCS5sb25nCTEwNzE3MzExMzkKKwkubG9uZwkyNzI3NTg3NDAxCisJLmxvbmcJMzE3Mzk2NTIwNworCS5sb25nCTYwMDI2Nzc3NgorCS5sb25nCTEwNzE3MTcxMTIKKwkubG9uZwkzMTQ3Njg1MDQyCisJLmxvbmcJMzE3MzM1MzAzMQorCS5sb25nCTIyNDkzMTMyODAKKwkubG9uZwkxMDcxNzAzMTc3CisJLmxvbmcJMTI1ODM1MDc0CisJLmxvbmcJMTAyNTI1NTgzMgorCS5sb25nCTM4MDUzMDM4MDgKKwkubG9uZwkxMDcxNjg5MzM0CisJLmxvbmcJMjI4OTk5MTIwNworCS5sb25nCTEwMjU0NjAzMzEKKwkubG9uZwk4NzI3ODU5MgorCS5sb25nCTEwNzE2NzU1ODMKKwkubG9uZwkxMTA2MTE0MDQ1CisJLmxvbmcJMTAyNTkzMzYwMgorCS5sb25nCTMxOTU0MDUzMTIKKwkubG9uZwkxMDcxNjYxOTIwCisJLmxvbmcJMzg4NTMxNjU3NgorCS5sb25nCTMxNzEyMDYyMzkKKwkubG9uZwkzODUzNjQ5OTIwCisJLmxvbmcJMTA3MTY0ODM0NgorCS5sb25nCTI5NzcwNjk4NTIKKwkubG9uZwkzMTcxMjM2NzcxCisJLmxvbmcJMjk0NDAyNjYyNAorCS5sb25nCTEwNzE2MjUwNDgKKwkubG9uZwkxMDA4MDkzNDkzCisJLmxvbmcJMTAyMzQ0NDQ3NAorCS5sb25nCTM5OTMxODAxNjAKKwkubG9uZwkxMDcxNTk4MjQ3CisJLmxvbmcJMTg2MjM1NTU5NQorCS5sb25nCTEwMjQ2NDI1MzMKKwkubG9uZwkxNDU0NjQxMTUyCisJLmxvbmcJMTA3MTU3MTYxNworCS5sb25nCTE1MTQ2MDMwODkKKwkubG9uZwkxMDI2NTAwNTk2CisJLmxvbmcJMzI4NjA4NTYzMgorCS5sb25nCTEwNzE1NDUxNTQKKwkubG9uZwkxNDAwMDI4NDI0CisJLmxvbmcJMzE3MzI3OTA1NgorCS5sb25nCTQzODc3Mzc2MAorCS5sb25nCTEwNzE1MTg4NTgKKwkubG9uZwkxMjA3Mjc4NjQKKwkubG9uZwkzMTcyMTQ4OTE0CisJLmxvbmcJMTIxMjk3OTIwMAorCS5sb25nCTEwNzE0OTI3MjUKKwkubG9uZwkxNjI1MDU1NTk0CisJLmxvbmcJMzE3MjkwMTkzMworCS5sb25nCTExODkwMTc2MDAKKwkubG9uZwkxMDcxNDY2NzU0CisJLmxvbmcJMzkyMDA2MjM3NgorCS5sb25nCTEwMjU3Mjc0MDcKKwkubG9uZwk0MDMwNjQ4MzIKKwkubG9uZwkxMDcxNDQwOTQzCisJLmxvbmcJMTA1MzI3MTcyOAorCS5sb25nCTMxNzEzOTE0MjcKKwkubG9uZwkzMzQzMjEwNDk2CisJLmxvbmcJMTA3MTQxNTI4OQorCS5sb25nCTMyNDMzOTU1MDIKKwkubG9uZwkzMTczNjI3NjEzCisJLmxvbmcJMTc2NTc3NzQwOAorCS5sb25nCTEwNzEzODk3OTIKKwkubG9uZwkyMTQ1OTY4NTEyCisJLmxvbmcJMTAyNjM1NDMwNAorCS5sb25nCTQ2MTQzMDc4NAorCS5sb25nCTEwNzEzNjQ0NDkKKwkubG9uZwk0MDk0MzIyMjg1CisJLmxvbmcJMTAyNjAyMTQ2NworCS5sb25nCTcxNzA2NjI0CisJLmxvbmcJMTA3MTMzOTI1OAorCS5sb25nCTc2MzYzMjAyMQorCS5sb25nCTEwMjQ0OTY5MzMKKwkubG9uZwkxMzgwNTAzNTUyCisJLmxvbmcJMTA3MTMxNDIxNworCS5sb25nCTEzODM1NDc5OTIKKwkubG9uZwkzMTczMDg4NDUzCisJLmxvbmcJMTAxNTczMjIyNAorCS5sb25nCTEwNzEyODkzMjUKKwkubG9uZwkzMTk4NjQ2ODc3CisJLmxvbmcJMTAyNTM5MDMyMgorCS5sb25nCTM1OTc3MjE2CisJLmxvbmcJMTA3MTI2NDU4MAorCS5sb25nCTIxNDEwMjY4MDUKKwkubG9uZwkxMDI1NzU0NjkzCisJLmxvbmcJMzkyNzMwNjI0MAorCS5sb25nCTEwNzEyMzk5NzkKKwkubG9uZwkyODIxMTYyNzIKKwkubG9uZwkzMTczMzk0MzM0CisJLmxvbmcJMTEyNTM0MTE4NAorCS5sb25nCTEwNzEyMTU1MjMKKwkubG9uZwkyNzY4NDI3NTA0CisJLmxvbmcJMzE3MjI3OTA1OQorCS5sb25nCTE2NjY5NzE2NDgKKwkubG9uZwkxMDcxMTkxMjA4CisJLmxvbmcJNzg2ODM3NjI5CisJLmxvbmcJMzE3MjQyNzQ0NQorCS5sb25nCTI4Mjc2OTQwODAKKwkubG9uZwkxMDcxMTY3MDMzCisJLmxvbmcJMzg1NzEyMjQxNgorCS5sb25nCTMxNzMwMTQyNDEKKwkubG9uZwkyMDAzNjgzMzI4CisJLmxvbmcJMTA3MTE0Mjk5NworCS5sb25nCTg1OTAxMDk1NAorCS5sb25nCTEwMjY1NDUwMDcKKwkubG9uZwkxMDA0MDE3NjY0CisJLmxvbmcJMTA3MTExOTA5OAorCS5sb25nCTMzNTY2NDQ5NzAKKwkubG9uZwkzMTczNDU4MDY0CisJLmxvbmcJMTc1MzAyMDQxNgorCS5sb25nCTEwNzEwOTUzMzQKKwkubG9uZwk3ODgzMzg1NTIKKwkubG9uZwkxMDI2MTU3NjkzCisJLmxvbmcJMTk5MjcxODMzNgorCS5sb25nCTEwNzEwNzE3MDQKKwkubG9uZwkxMjM5MTc5NDQzCisJLmxvbmcJMTAyNjM5NDg4OQorCS5sb25nCTM4NzAyMzQ2MjQKKwkubG9uZwkxMDcxMDQ4MjA2CisJLmxvbmcJMjA4MjYxNDY2MworCS5sb25nCTEwMjQ5MjYwNTMKKwkubG9uZwkxMDUwNDM3NjMyCisJLmxvbmcJMTA3MTAyNDg0MAorCS5sb25nCTY2MDAwNzg0MAorCS5sb25nCTEwMjU1NDg0OTkKKwkubG9uZwkxODgzOTU1MjAKKwkubG9uZwkxMDcxMDAxNjAzCisJLmxvbmcJMzg3ODc5MjcwNAorCS5sb25nCTMxNzM4ODk1NzEKKwkubG9uZwkzNzQ3MTc2NDQ4CisJLmxvbmcJMTA3MDk3ODQ5MworCS5sb25nCTE0NDk5MTcwOAorCS5sb25nCTMxNzE1NTIwNDIKKwkubG9uZwkxNDA1NjY5Mzc2CisJLmxvbmcJMTA3MDk1NTUxMQorCS5sb25nCTM5OTkwODg4NzkKKwkubG9uZwkxMDI1NDg2MzE3CisJLmxvbmcJMTIxMTUxNDg4CisJLmxvbmcJMTA3MDkzMjY1NAorCS5sb25nCTIxNzA4NjU0OTcKKwkubG9uZwkxMDI2NDczNTg0CisJLmxvbmcJMjY1MjMxOTc0NAorCS5sb25nCTEwNzA5MDk5MjAKKwkubG9uZwk0NTM2OTU2NTIKKwkubG9uZwkzMTczOTE2ODA5CisJLmxvbmcJMzI2MjIzNjY3MgorCS5sb25nCTEwNzA4ODczMDkKKwkubG9uZwkxNTc4MDAwNTMKKwkubG9uZwkzMTczOTg0MjA2CisJLmxvbmcJNjAxMjIxMTIwCisJLmxvbmcJMTA3MDg2NDgyMAorCS5sb25nCTM5Njg5MTc2NjEKKwkubG9uZwkxMDIzOTkyODg2CisJLmxvbmcJMTk5OTg0MzMyOAorCS5sb25nCTEwNzA4NDI0NTAKKwkubG9uZwkzMDUzODk1MDA0CisJLmxvbmcJMTAyNDk5ODIyOAorCS5sb25nCTE5OTIxNjc0MjQKKwkubG9uZwkxMDcwODIwMTk5CisJLmxvbmcJMjk2ODYxNDg1NgorCS5sb25nCTEwMjQ1NTI2NTMKKwkubG9uZwkzNzg4NzI2MjcyCisJLmxvbmcJMTA3MDc5ODA2NQorCS5sb25nCTM1NDIxNzA4MDgKKwkubG9uZwkzMTczNTczMjQyCisJLmxvbmcJMjA5NDgyOTU2OAorCS5sb25nCTEwNzA3NzYwNDgKKwkubG9uZwkxMjQ2NzU4MTMyCisJLmxvbmcJMTAyNjIwMjg3NAorCS5sb25nCTI4ODY3NTg0MAorCS5sb25nCTEwNzA3NTQxNDYKKwkubG9uZwkzNzQ3MzI4OTUwCisJLmxvbmcJMTAyNjMzMTU4NQorCS5sb25nCTE4Mjk2ODExNTIKKwkubG9uZwkxMDcwNzMyMzU3CisJLmxvbmcJMzEyNTE5NzU0NgorCS5sb25nCTEwMjQxMDAzMTgKKwkubG9uZwkxNjY2ODY5MjQ4CisJLmxvbmcJMTA3MDcxMDY4MQorCS5sb25nCTEzNjM2NTYxMTkKKwkubG9uZwkxMDI2MzM2NDkzCisJLmxvbmcJMzQxNzExMDUyOAorCS5sb25nCTEwNzA2ODkxMTYKKwkubG9uZwk0MTU0NzkxNTUzCisJLmxvbmcJMTAyNjI2Nzg1MworCS5sb25nCTIxODM2NTMzNzYKKwkubG9uZwkxMDcwNjY3NjYyCisJLmxvbmcJMTY3MTgxOTI5MgorCS5sb25nCTMxNzM3ODU4NzAKKwkubG9uZwkxNzM0NDM0ODE2CisJLmxvbmcJMTA3MDY0NjMxNworCS5sb25nCTM3MzA5MTA0OQorCS5sb25nCTEwMjU5NzIzNjMKKwkubG9uZwkxNjE1NjgxNTM2CisJLmxvbmcJMTA3MDYyNTA4MAorCS5sb25nCTM4NDY1MDg5NworCS5sb25nCTEwMjI5MjYwNDMKKwkubG9uZwkxNDQ1MzgyMTQ0CisJLmxvbmcJMTA3MDYwMzk1MAorCS5sb25nCTM0NDMyMDMzMAorCS5sb25nCTMxNzIzOTcxOTYKKwkubG9uZwkxODIzNzE1MzI4CisJLmxvbmcJMTA3MDU2OTc1NgorCS5sb25nCTMzODk4NDEyMDAKKwkubG9uZwkxMDI1MjMxODUyCisJLmxvbmcJMzgzOTY4ODcwNAorCS5sb25nCTEwNzA1Mjc5MTcKKwkubG9uZwkxNzA2NzkwNDE3CisJLmxvbmcJMzE2NzM2MzM0OQorCS5sb25nCTQyOTMzMzI5OTIKKwkubG9uZwkxMDcwNDg2Mjg2CisJLmxvbmcJMTYxNDkzNTA4OAorCS5sb25nCTEwMTkzNTE1OTEKKwkubG9uZwkyOTY2NzIwNTEyCisJLmxvbmcJMTA3MDQ0NDg2MQorCS5sb25nCTQxNDUzOTM3MTcKKwkubG9uZwkzMTczNzExNjU4CisJLmxvbmcJNDA2NjcyOTk4NAorCS5sb25nCTEwNzA0MDM2MzkKKwkubG9uZwkxOTc0OTI1MDI4CisJLmxvbmcJMzE3MTQzNzE4MgorCS5sb25nCTMzMzc2MjE1MDQKKwkubG9uZwkxMDcwMzYyNjE5CisJLmxvbmcJMzMxNDk1MzE3MAorCS5sb25nCTMxNjk5NzEzMTQKKwkubG9uZwk5NDM0NDgwNjQKKwkubG9uZwkxMDcwMzIxNzk5CisJLmxvbmcJMTQ5ODY4MjAzOAorCS5sb25nCTMxNzM4NjIzNDAKKwkubG9uZwkxNDY1NjM0ODE2CisJLmxvbmcJMTA3MDI4MTE3NgorCS5sb25nCTEzMTk5NTI4MTAKKwkubG9uZwkzMTcxNjkzOTY1CisJLmxvbmcJMTAxNTczNDI3MgorCS5sb25nCTEwNzAyNDA3NDkKKwkubG9uZwkxMzQ3ODIxOTI5CisJLmxvbmcJMzE3MzU0NDUxNQorCS5sb25nCTExODAwMTY2NAorCS5sb25nCTEwNzAyMDA1MTYKKwkubG9uZwkxNzUxNDgyNzQ2CisJLmxvbmcJMTAyNjEzNDA5MworCS5sb25nCTM3MDcxNzQ5MTIKKwkubG9uZwkxMDcwMTYwNDc0CisJLmxvbmcJMTQ4Njk0NjE1OQorCS5sb25nCTEwMjM5MzA5MjAKKwkubG9uZwkzOTQ2MzgxMzEyCisJLmxvbmcJMTA3MDEyMDYyMworCS5sb25nCTI4Njc0MDgwODEKKwkubG9uZwkzMTcxMzY4Mjc2CisJLmxvbmcJMTY5OTg0ODE5MgorCS5sb25nCTEwNzAwODA5NjEKKwkubG9uZwkyNTkwMTg3MTM5CisJLmxvbmcJMTAyNTM3OTgwMworCS5sb25nCTIyMzU4NDY2NTYKKwkubG9uZwkxMDcwMDQxNDg1CisJLmxvbmcJMTg4ODU2ODA2OQorCS5sb25nCTMxNzI3NTQ5NjAKKwkubG9uZwkyMzM5NzI5NDA4CisJLmxvbmcJMTA3MDAwMjE5NAorCS5sb25nCTM4NTIyMTQ3NTMKKwkubG9uZwkzMTczMzIzMTQ5CisJLmxvbmcJMzE5Njg1MDE3NgorCS5sb25nCTEwNjk5NjMwODYKKwkubG9uZwk3NDIxNDE1NjAKKwkubG9uZwkxMDI1MTAxNzA3CisJLmxvbmcJMTgwMDY4MzUyMAorCS5sb25nCTEwNjk5MjQxNjAKKwkubG9uZwkzOTQ5NTAwNDQ0CisJLmxvbmcJMzE3MjEwMjE3OQorCS5sb25nCTM4MzU4MDE2MDAKKwkubG9uZwkxMDY5ODg1NDEzCisJLmxvbmcJMzg0ODg5NTk0MworCS5sb25nCTEwMjU5MTM4MzIKKwkubG9uZwkyMjAxMjAyNjg4CisJLmxvbmcJMTA2OTg0Njg0NQorCS5sb25nCTE0MjU5MTM0NjQKKwkubG9uZwkxMDI1ODY4NjY1CisJLmxvbmcJMjc3ODI3OTkzNgorCS5sb25nCTEwNjk4MDg0NTMKKwkubG9uZwkyMTIwODg5Njc3CisJLmxvbmcJMzE3MzgzMTEyOAorCS5sb25nCTI5NTQyMDMxMzYKKwkubG9uZwkxMDY5NzcwMjM2CisJLmxvbmcJNTkyMTQ3MDgxCisJLmxvbmcJMTAxOTYyMTI4OAorCS5sb25nCTIxMDE0MTE4NAorCS5sb25nCTEwNjk3MzIxOTMKKwkubG9uZwkzNDE0Mjc1MjMzCisJLmxvbmcJMTAyMzY0NzA4NAorCS5sb25nCTcwOTQ3NjM1MgorCS5sb25nCTEwNjk2OTQzMjEKKwkubG9uZwkyNDEzMDI3MTY0CisJLmxvbmcJMTAyNDQ2MjExNQorCS5sb25nCTIxMTYyODQ0MTYKKwkubG9uZwkxMDY5NjU2NjE5CisJLmxvbmcJMTE0NDU1OTkyNAorCS5sb25nCTEwMjYzMzY2NTQKKwkubG9uZwkyMTgzNjUxMzI4CisJLmxvbmcJMTA2OTYxOTA4NgorCS5sb25nCTM0NTkwNTc2NTAKKwkubG9uZwkxMDI1NjM0MTY4CisJLmxvbmcJMzA0NzA0NzE2OAorCS5sb25nCTEwNjk1ODE3MjAKKwkubG9uZwkxODc5Njc0OTI0CisJLmxvbmcJMzE3MzUwODU3MworCS5sb25nCTk3MDcxMTA0MAorCS5sb25nCTEwNjk1NDE1MjEKKwkubG9uZwkxMzM1OTU0MTczCisJLmxvbmcJMzE3MzMzMjE4MgorCS5sb25nCTIxOTg0Nzg4NDgKKwkubG9uZwkxMDY5NDY3NDQ5CisJLmxvbmcJMjk1MTEwMzk2OAorCS5sb25nCTMxNzM4OTIyMDAKKwkubG9uZwkxNjY5NjExNTIwCisJLmxvbmcJMTA2OTM5MzcwMworCS5sb25nCTUzMTA0NDE0NworCS5sb25nCTEwMjUxNDkyNDgKKwkubG9uZwkyOTExNDM2OAorCS5sb25nCTEwNjkzMjAyODAKKwkubG9uZwkzMzI3ODMxMjUxCisJLmxvbmcJMTAyNTkxODY3MworCS5sb25nCTIzNzY5NDk3NjAKKwkubG9uZwkxMDY5MjQ3MTc2CisJLmxvbmcJNzM3NjM0NTMzCisJLmxvbmcJMzE3MjE3NjAwMAorCS5sb25nCTEwODUzOTA4NDgKKwkubG9uZwkxMDY5MTc0MzkwCisJLmxvbmcJMzEwODI0MzQwMAorCS5sb25nCTMxNzE4Mjg0MDYKKwkubG9uZwkxNTY2MTMwMTc2CisJLmxvbmcJMTA2OTEwMTkxOAorCS5sb25nCTk4NTQ4MzIyNgorCS5sb25nCTEwMjU3MDgzODAKKwkubG9uZwk3OTI3ODA4MDAKKwkubG9uZwkxMDY5MDI5NzU4CisJLmxvbmcJNDE4NDg2NjI5NQorCS5sb25nCTEwMjQ0MjYyMDQKKwkubG9uZwkxODMxNTY3MzYKKwkubG9uZwkxMDY4OTU3OTA3CisJLmxvbmcJMjg0NTY5OTM3OAorCS5sb25nCTEwMjIxMDcyNzcKKwkubG9uZwkxMzAxNzgyNTI4CisJLmxvbmcJMTA2ODg4NjM2MgorCS5sb25nCTEwMTI3MzUyNjIKKwkubG9uZwkzMTczODA0Mjk0CisJLmxvbmcJMTU2MjQxMTAwOAorCS5sb25nCTEwNjg4MTUxMjEKKwkubG9uZwkyMTk3MDg2NzAzCisJLmxvbmcJMzE3MDE4NzgxMworCS5sb25nCTI4MTU1NDk0NDAKKwkubG9uZwkxMDY4NzQ0MTgxCisJLmxvbmcJMjc4MjYxMzIwNworCS5sb25nCTEwMjYzNDUwNTQKKwkubG9uZwkyNzU2MTI0NjcyCisJLmxvbmcJMTA2ODY3MzU0MAorCS5sb25nCTI5Mjk0ODYyMDUKKwkubG9uZwkzMTczMDM3ODAwCisJLmxvbmcJMzUxMTA1MDI0MAorCS5sb25nCTEwNjg2MDMxOTUKKwkubG9uZwkxNDQzNzMzMTQ3CisJLmxvbmcJMzE3MzMzMTU0OQorCS5sb25nCTMwNDcwNDcxNjgKKwkubG9uZwkxMDY4NTMzMTQ0CisJLmxvbmcJMTg3OTY3NDkyNAorCS5sb25nCTMxNzI0NTk5OTcKKwkubG9uZwkzMjIxNjY3ODQwCisJLmxvbmcJMTA2ODQyNzgyNQorCS5sb25nCTEzMzg1ODgwMjcKKwkubG9uZwkzMTcxODE1NzQyCisJLmxvbmcJMzQ1Mzg2MTg4OAorCS5sb25nCTEwNjgyODg4ODMKKwkubG9uZwkxMjA1MzQ4MzU5CisJLmxvbmcJMzE3MjYyNDYyNgorCS5sb25nCTM1MDYxMTA0NjQKKwkubG9uZwkxMDY4MTUwNTE0CisJLmxvbmcJODkzMTA1MTk4CisJLmxvbmcJMTAyNTU3MTg2NgorCS5sb25nCTM0NjAxMzY5NgorCS5sb25nCTEwNjgwMTI3MTQKKwkubG9uZwkzNDk1NTY5MDIxCisJLmxvbmcJMzE3MjU2MzM0OQorCS5sb25nCTQwNzQwMjkwNTYKKwkubG9uZwkxMDY3ODc1NDc2CisJLmxvbmcJMzk2MTEwNjMzOAorCS5sb25nCTMxNzEwNjU1OTUKKwkubG9uZwkzNTU5Nzg0NDQ4CisJLmxvbmcJMTA2NzczODc5OAorCS5sb25nCTE5NzUzODUzODQKKwkubG9uZwkzMTczNzgzMTU1CisJLmxvbmcJNzk3NzY5NzI4CisJLmxvbmcJMTA2NzYwMjY3NQorCS5sb25nCTM3NjAzMDU3ODcKKwkubG9uZwkxMDI2MDQ3NjQyCisJLmxvbmcJMjMxMzYzMzc5MgorCS5sb25nCTEwNjc0NjcxMDEKKwkubG9uZwkxNTU5MzUzMTcxCisJLmxvbmcJMTAyMzQ4MDI1NgorCS5sb25nCTM5NjA3NjY0NjQKKwkubG9uZwkxMDY3MjEzNzc4CisJLmxvbmcJMTA2NzM2NTEwNworCS5sb25nCTEwMjU4NjU5MjYKKwkubG9uZwk2ODQyNjEzNzYKKwkubG9uZwkxMDY2OTQ0ODA1CisJLmxvbmcJODQ0NzYyMTY0CisJLmxvbmcJMzE3MzY4NzQ4MgorCS5sb25nCTYzMDcxODQ2NAorCS5sb25nCTEwNjY2NzY5MDUKKwkubG9uZwkyNDU4MjY5Njk0CisJLmxvbmcJMTAyNDAzMzA4MQorCS5sb25nCTE0ODYwNjE1NjgKKwkubG9uZwkxMDY2NDEwMDcwCisJLmxvbmcJMTE1NTM3ODc0CisJLmxvbmcJMzE3MzI0Mzk5NQorCS5sb25nCTI3NDM2NjQ2NDAKKwkubG9uZwkxMDY1ODg2NzkyCisJLmxvbmcJMzY2NTA5ODMwNAorCS5sb25nCTMxNzM0NzE2MDcKKwkubG9uZwkxOTcxOTEyNzA0CisJLmxvbmcJMTA2NTM1NzMzMworCS5sb25nCTI1NzcyMTQ0NDAKKwkubG9uZwkzMTcxOTkzNDUxCisJLmxvbmcJMTQ5ODkzOTM5MgorCS5sb25nCTEwNjQzMDY2OTMKKwkubG9uZwkzNDA5MDM2OTIzCisJLmxvbmcJMTAyNTU5OTE1MQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwk0Mjc3ODExMjAwCisJLmxvbmcJMTA2Nzg1NTQyNgorCS5sb25nCTI0NzkzMTg4MzIKKwkubG9uZwkxMDIyMjkyODIzCisJLmxvbmcJMjQ1NDI2NzAyNgorCS5sb25nCTEwNjk2OTczMTYKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTEwMzA3MzAxMDEKKwkubG9uZwkzMjE3MzgwNzAyCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNzA5NDU2MjEKKwkubG9uZwkyNTc2OTgwMzc4CisJLmxvbmcJMTA3MDE3NjY2NQorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NTkxMDQKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk1OTEwNAorCS50eXBlCXN0YXRpY19jb25zdF90YWJsZSxAb2JqZWN0CisJLnNpemUJc3RhdGljX2NvbnN0X3RhYmxlLDIxNDQKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Ni9lX2xvZzEwLlMgYi9saWJtL3g4Ni9lX2xvZzEwLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDliMjk1MgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L2VfbG9nMTAuUwpAQCAtMCwwICsxLDc5NSBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vICAgIExldCB4PTJeayAqIG14LCBteCBpbiBbMSwyKQorLy8KKy8vICAgIEdldCBCfjEvbXggYmFzZWQgb24gdGhlIG91dHB1dCBvZiByY3BzcyBpbnN0cnVjdGlvbiAoQjApCisvLyAgICBCID0gaW50KChCMCpMSCoyXjcrMC41KSkvMl43CisvLyAgICBMSCBpcyBhIHNob3J0IGFwcHJveGltYXRpb24gZm9yIGxvZzEwKGUpCisvLworLy8gICAgUmVkdWNlZCBhcmd1bWVudDogcj1CKm14LUxIIChjb21wdXRlZCBhY2N1cmF0ZWx5IGluIGhpZ2ggYW5kIGxvdyBwYXJ0cykKKy8vCisvLyAgICBSZXN1bHQ6ICBrKmxvZzEwKDIpIC0gbG9nKEIpICsgcChyKQorLy8gICAgICAgICAgICAgcChyKSBpcyBhIGRlZ3JlZSA3IHBvbHlub21pYWwKKy8vICAgICAgICAgICAgIC1sb2coQikgcmVhZCBmcm9tIGRhdGEgdGFibGUgKGhpZ2gsIGxvdyBwYXJ0cykKKy8vICAgICAgICAgICAgIFJlc3VsdCBpcyBmb3JtZWQgZnJvbSBoaWdoIGFuZCBsb3cgcGFydHMKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGxvZzEwKDApID0gLUlORiB3aXRoIGRpdmlkZS1ieS16ZXJvIGV4Y2VwdGlvbiByYWlzZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisvLyAgbG9nMTAoMSkgPSArMAorLy8gIGxvZzEwKHgpID0gTmFOIHdpdGggaW52YWxpZCBleGNlcHRpb24gcmFpc2VkIGlmIHggPCAtMCwgaW5jbHVkaW5nIC1JTkYKKy8vICBsb2cxMCgrSU5GKSA9ICtJTkYKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24KK3N0YXRpY19mdW5jOgorLi5CMS4xOgorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlYXgKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlYXgpLCAlZWF4CisgICAgICAgIGxlYSAgICAgICBzdGF0aWNfY29uc3RfdGFibGVAR09UT0ZGKCVlYXgpLCAlZWF4CisgICAgICAgIHJldAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICBsb2cxMAorRU5UUlkobG9nMTApCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEwNCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNDAoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTA1NDczNjM4NCwgJWVjeAorICAgICAgICBtb3ZkICAgICAgJWVjeCwgJXhtbTcKKyAgICAgICAgeG9ycGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJDMwNzA0LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTMKKyAgICAgICAgbW92c2QgICAgIDExMiglZXNwKSwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWR4CisgICAgICAgIG1vdmQgICAgICAlZWR4LCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgMjEyOCglZWJ4KSwgJXhtbTUKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTYzNTIsICVlY3gKKyAgICAgICAgcHNsbHEgICAgICQ1LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgMjE0NCglZWJ4KSwgJXhtbTIKKyAgICAgICAgcHNybHEgICAgICQzNCwgJXhtbTAKKyAgICAgICAgcmNwc3MgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDEyLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDc4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgcHNybHEgICAgICQxMiwgJXhtbTEKKyAgICAgICAgc3VibCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzM2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIG11bHNzICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgb3JwZCAgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhbmRwZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIHBhZGRkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgcHNsbHEgICAgICQyOSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAlZWN4LCAlZWF4CisgICAgICAgIGN2dHNpMnNkbCAlZWF4LCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDIwNjQoJWVieCksICV4bW02CisgICAgICAgIG1vdmFwZCAgICAyMDgwKCVlYngpLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIGFuZGwgICAgICAkMTY3MTE2ODAsICVlZHgKKyAgICAgICAgc2hybCAgICAgICQxMiwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgLTE1MDQoJWVieCwlZWR4KSwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDIwOTYoJWVieCksICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIDIxMTIoJWVieCksICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTEsICV4bW01CisgICAgICAgIG11bHNkICAgICAyMDcyKCVlYngpLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgMjE1MiglZWJ4KSwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgcHNodWZkICAgICQyMjgsICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkbCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBjbXBsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJC0yMDk3MTUyLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDksICVlZHgKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorLkxfMlRBR19QQUNLRVRfOS4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMgorLkxfMlRBR19QQUNLRVRfOC4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDQ5MTM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgZGl2c2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDgsICVlZHgKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQxODQxNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxODQxNiwgJWVjeAorICAgICAgICBwc2xscSAgICAgJDUsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAyMTQ0KCVlYngpLCAleG1tMgorICAgICAgICBwc3JscSAgICAgJDM0LCAleG1tMAorICAgICAgICByY3BzcyAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNzgsICV4bW01LCAleG1tNgorICAgICAgICBwc3JscSAgICAgJDEyLCAleG1tMQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDI0KCVlc3ApCisgICAgICAgIGZsZGwgICAgICAyNCglZXNwKQorLkxfMlRBR19QQUNLRVRfMTAuMC4yOgorICAgICAgICBtb3ZsICAgICAgNDAoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKGxvZzEwKQorIyAtLSBFbmQgIGxvZzEwCisKKyMgU3RhcnQgZmlsZSBzY29wZSBBU00KK0FMSUFTX1NZTUJPTChsb2cxMGwsIGxvZzEwKTsKKyMgRW5kIGZpbGUgc2NvcGUgQVNNCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitzdGF0aWNfY29uc3RfdGFibGU6CisJLmxvbmcJMTM1MjYyODIyNAorCS5sb25nCTEwNzA4MTAxMzEKKwkubG9uZwk1MjEzMTkyNTYKKwkubG9uZwkxMDI1NTAzMDI1CisJLmxvbmcJMjE1MDgzOTI5NgorCS5sb25nCTEwNzA4MDE5NDQKKwkubG9uZwkzMzI5MzUwMDk2CisJLmxvbmcJMzE3MDE5MDAxNQorCS5sb25nCTEzNjA2MTMzNzYKKwkubG9uZwkxMDcwNzkzNzk0CisJLmxvbmcJMjAyNDA1OTA3NQorCS5sb25nCTEwMjQ5OTE1OTQKKwkubG9uZwkxODc1MzUwNTI4CisJLmxvbmcJMTA3MDc4NTY4MAorCS5sb25nCTIxNjM4ODIxNDEKKwkubG9uZwkzMTYzNTY0MTM3CisJLmxvbmcJMjMxMjEyNjQ2NAorCS5sb25nCTEwNzA3Nzc2MDIKKwkubG9uZwkxOTc1NzExMDc2CisJLmxvbmcJMTAyMzY3NDE5NgorCS5sb25nCTEzMDYzMzYyNTYKKwkubG9uZwkxMDcwNzY5NTYwCisJLmxvbmcJMzUyNDg5OTUyMworCS5sb25nCTMxNzA1MDgxNjQKKwkubG9uZwkxODA2MzM0OTc2CisJLmxvbmcJMTA3MDc2MTU1MworCS5sb25nCTQyNTQ3NzcwMjUKKwkubG9uZwkxMDI1MjM4NzM5CisJLmxvbmcJMjQ4MzE5Mzg1NgorCS5sb25nCTEwNzA3NTM1ODEKKwkubG9uZwkzODAwNjcxMzE3CisJLmxvbmcJMzE3MjkxNjgzMAorCS5sb25nCTIwMjUzNTAxNDQKKwkubG9uZwkxMDcwNzQ1NjQ0CisJLmxvbmcJMTczMTUxNDc0NQorCS5sb25nCTEwMjU1MDEwODMKKwkubG9uZwkzNDMzMjg1NjMyCisJLmxvbmcJMTA3MDczNzc0MQorCS5sb25nCTI1NTE4NTczMzYKKwkubG9uZwkzMTY5NjYyMTg2CisJLmxvbmcJMTEzNDMxNzU2OAorCS5sb25nCTEwNzA3Mjk4NzMKKwkubG9uZwkzNDI2Mjk3NjU1CisJLmxvbmcJMzE3MjYzNzg5MQorCS5sb25nCTI0NTcxNTI1MTIKKwkubG9uZwkxMDcwNzIyMDM4CisJLmxvbmcJNjM1NDk0MTUKKwkubG9uZwkxMDI1NDE1NDE2CisJLmxvbmcJMTg2MTgwMzAwOAorCS5sb25nCTEwNzA3MTQyMzcKKwkubG9uZwkxOTEwMTcxNjM2CisJLmxvbmcJMTAyMzk3NzU4MAorCS5sb25nCTI0MTQxNDA0MTYKKwkubG9uZwkxMDcwNzA2NDY5CisJLmxvbmcJNDAwMjUxNDMzNworCS5sb25nCTMxNzA4NDE2MTgKKwkubG9uZwkyOTAwNzI2Nzg0CisJLmxvbmcJMTA3MDY5ODczNAorCS5sb25nCTMyNjgwNjQwODMKKwkubG9uZwkxMDIyNDU5NjA5CisJLmxvbmcJMjEyMzUxNzk1MgorCS5sb25nCTEwNzA2OTEwMzIKKwkubG9uZwkxNzY3MDMxMjE4CisJLmxvbmcJMTAyMjQ0ODE1NgorCS5sb25nCTMxOTQ1Njk3MjgKKwkubG9uZwkxMDcwNjgzMzYyCisJLmxvbmcJMzQwMjMzMjYxOAorCS5sb25nCTMxNzE2NzExNjAKKwkubG9uZwk2NTA4ODIwNDgKKwkubG9uZwkxMDcwNjc1NzI1CisJLmxvbmcJNDE0NjAyMzkwNQorCS5sb25nCTMxNzEwMjMwMzgKKwkubG9uZwkxOTI4OTg4NjcyCisJLmxvbmcJMTA3MDY2ODExOQorCS5sb25nCTE0Mzg2MTc4NjcKKwkubG9uZwkxMDE2MzYwNDkxCisJLmxvbmcJMTU5NDkwODY3MgorCS5sb25nCTEwNzA2NjA1NDUKKwkubG9uZwk5NzEzODkzNzcKKwkubG9uZwkxMDI0NzYzOTc5CisJLmxvbmcJMjgxODc0NjM2OAorCS5sb25nCTEwNzA2NTMwMDIKKwkubG9uZwkzNTU1OTI1MzQxCisJLmxvbmcJMzE3MjQzNDgyMQorCS5sb25nCTE5NDU4NDU3NgorCS5sb25nCTEwNzA2NDU0OTEKKwkubG9uZwk5NDM5MTkyMTUKKwkubG9uZwkzMTcyOTUwMDYzCisJLmxvbmcJMTIxNTA5NjgzMgorCS5sb25nCTEwNzA2MzgwMTAKKwkubG9uZwkyMjgzMzU4NTg4CisJLmxvbmcJMTAyMjMzNTA5OAorCS5sb25nCTUwMTUxOTM2MAorCS5sb25nCTEwNzA2MzA1NjAKKwkubG9uZwk0ODA5MDQyOTUKKwkubG9uZwkxMDI0NDM3OTU5CisJLmxvbmcJMTI3ODI2NjM2OAorCS5sb25nCTEwNzA2MjMxNDAKKwkubG9uZwkyNzU1ODA2MDY2CisJLmxvbmcJMzE3MjM0MjAxMgorCS5sb25nCTI0ODc4MTIwOTYKKwkubG9uZwkxMDcwNjE1NzUwCisJLmxvbmcJMjQ4OTY1MzIwMgorCS5sb25nCTMxNzI0ODEwOTkKKwkubG9uZwkzMDg1NDUxMjY0CisJLmxvbmcJMTA3MDYwODM5MAorCS5sb25nCTM3NTkxODQ5NTEKKwkubG9uZwkzMTcyNTc0ODkyCisJLmxvbmcJMjAzOTA5MDE3NgorCS5sb25nCTEwNzA2MDEwNjAKKwkubG9uZwkxMzYxMTc2Njc2CisJLmxvbmcJMzE3MjM1NTMxOQorCS5sb25nCTk1MzA1NzI4MAorCS5sb25nCTEwNzA1OTE0MjMKKwkubG9uZwkxMTc2NTg3NTQ2CisJLmxvbmcJMzE2NjQyMjAxOAorCS5sb25nCTMzNzA1MjQ2NzIKKwkubG9uZwkxMDcwNTc2ODc5CisJLmxvbmcJMzY2OTU3MDA1MQorCS5sb25nCTEwMjUzNzY2MzAKKwkubG9uZwk3NDk3NDIwODAKKwkubG9uZwkxMDcwNTYyMzk0CisJLmxvbmcJNzA3NzAwOTY0CisJLmxvbmcJMzE3MDgxNDA1OAorCS5sb25nCTQwMDgzNTM3OTIKKwkubG9uZwkxMDcwNTQ3OTY1CisJLmxvbmcJMzI0NzMyNzY1MgorCS5sb25nCTEwMjI0MzE0MDAKKwkubG9uZwkyNjEyNDU1NDI0CisJLmxvbmcJMTA3MDUzMzU5NAorCS5sb25nCTI0NTM0NTczNDQKKwkubG9uZwkzMTcyMzIyOTY5CisJLmxvbmcJMzIzMDkyMDcwNAorCS5sb25nCTEwNzA1MTkyNzkKKwkubG9uZwkxMjk2NzgxODAxCisJLmxvbmcJMTAyNTExNTMzNQorCS5sb25nCTM5NjUyNTM2MzIKKwkubG9uZwkxMDcwNTA1MDIwCisJLmxvbmcJMzczMDc1Mjg5CisJLmxvbmcJMTAxNzkzODUyOAorCS5sb25nCTI1OTMxNTcxMjAKKwkubG9uZwkxMDcwNDc2NjY5CisJLmxvbmcJMTA2ODA1NDA4NgorCS5sb25nCTEwMjE2MTY1NzYKKwkubG9uZwk5MjU5NjIyNDAKKwkubG9uZwkxMDcwNDQ4NTM3CisJLmxvbmcJODUwMTIxMjEzCisJLmxvbmcJMTAyMzkyODk4OQorCS5sb25nCTE3MzI1NTY4MDAKKwkubG9uZwkxMDcwNDIwNjIwCisJLmxvbmcJMTMwNTIwNjc0MAorCS5sb25nCTMxNzI2NjU1NzAKKwkubG9uZwkzODE1NjMwODQ4CisJLmxvbmcJMTA3MDM5MjkxNQorCS5sb25nCTE5MjY0Mjk0MworCS5sb25nCTMxNzI2OTk5MDcKKwkubG9uZwkyMDAxNzU4MjA4CisJLmxvbmcJMTA3MDM2NTQyMAorCS5sb25nCTI4MjA3ODY2ODMKKwkubG9uZwkxMDI0NzA0ODY3CisJLmxvbmcJMTY3NDY0OTYKKwkubG9uZwkxMDcwMzM4MTMxCisJLmxvbmcJMTM5OTU3MzExMAorCS5sb25nCTMxNzEzNzI3NzMKKwkubG9uZwkxODg2NDkyNjcyCisJLmxvbmcJMTA3MDMxMTA0NAorCS5sb25nCTM2MjE0MjgwNzUKKwkubG9uZwkzMTcyOTc0MzU4CisJLmxvbmcJMzMzODE5Njk5MgorCS5sb25nCTEwNzAyODQxNTcKKwkubG9uZwkzNzkzODgyMDM1CisJLmxvbmcJMTAyNTEyNDcwMQorCS5sb25nCTM4MTc2OTcyOAorCS5sb25nCTEwNzAyNTc0NjgKKwkubG9uZwkzODc3OTMzMzQyCisJLmxvbmcJMzE3MDE5NTQ5MAorCS5sb25nCTIxODY0OTE5MDQKKwkubG9uZwkxMDcwMjMwOTcyCisJLmxvbmcJMTgzODY4NzA4OQorCS5sb25nCTEwMTc5MjcyOTIKKwkubG9uZwkxMDA4MzMwNzUyCisJLmxvbmcJMTA3MDIwNDY2OAorCS5sb25nCTIyMjgzMjE2NjQKKwkubG9uZwkxMDI1MzUyMTk2CisJLmxvbmcJMjI0NzA2NTYwMAorCS5sb25nCTEwNzAxNzg1NTIKKwkubG9uZwkxNDEzOTAwOTA2CisJLmxvbmcJMzE3MDkwMjUzMgorCS5sb25nCTI5NjQwNzA0MDAKKwkubG9uZwkxMDcwMTUyNjIyCisJLmxvbmcJMzU5MDQ1NDYyOQorCS5sb25nCTEwMjUwMTY4NDQKKwkubG9uZwk0NjUxNTQwNDgKKwkubG9uZwkxMDcwMTI2ODc2CisJLmxvbmcJMjA3OTY4ODU1MAorCS5sb25nCTMxNzIyNjgxODMKKwkubG9uZwk4ODM2MTU3NDQKKwkubG9uZwkxMDcwMTAxMzEwCisJLmxvbmcJOTg5MjQ0NDUyCisJLmxvbmcJMzE3MTkwMDQ4NQorCS5sb25nCTE5OTM3Njg5NjAKKwkubG9uZwkxMDcwMDc1OTIyCisJLmxvbmcJMTEyNDMyNzg0MQorCS5sb25nCTMxNzI5NjQ5OTIKKwkubG9uZwkxNzk0NDcxOTM2CisJLmxvbmcJMTA3MDA1MDcxMAorCS5sb25nCTExNDA1NzUwNDYKKwkubG9uZwkxMDIyNjczNzI2CisJLmxvbmcJMjc5NzkzMjU0NAorCS5sb25nCTEwNzAwMjU2NzEKKwkubG9uZwkxODk0ODM2OTMzCisJLmxvbmcJMzE3MjU0NDA1OQorCS5sb25nCTM0MzM3OTc2MzIKKwkubG9uZwkxMDcwMDAwODAzCisJLmxvbmcJMzIyMTgzMTE2NgorCS5sb25nCTMxNzE5MjE2ODUKKwkubG9uZwkyMzM4MzcxNTg0CisJLmxvbmcJMTA2OTk3NjEwNAorCS5sb25nCTM3MzI0NjEwNTMKKwkubG9uZwkzMTY0NTEzNTE4CisJLmxvbmcJMjY0NDAxMzA1NgorCS5sb25nCTEwNjk5NTE1NzEKKwkubG9uZwkyNTE5NDYwNDYyCisJLmxvbmcJMzE3MjU0ODc0MAorCS5sb25nCTMzODM4MTQxNDQKKwkubG9uZwkxMDY5OTI3MjAyCisJLmxvbmcJMjI5MDk5NzY1NworCS5sb25nCTEwMjU0OTk2NDkKKwkubG9uZwkzNzgxMzgwMDk2CisJLmxvbmcJMTA2OTkwMjk5NQorCS5sb25nCTM4MDQ3OTQwNQorCS5sb25nCTEwMjUxODQxMzYKKwkubG9uZwkzMjQ1Nzg1MDg4CisJLmxvbmcJMTA2OTg3ODk0OAorCS5sb25nCTEwOTYzOTgyNjEKKwkubG9uZwkzMTY5ODg1MTkyCisJLmxvbmcJMTM2NjcxMjMyMAorCS5sb25nCTEwNjk4NTUwNTkKKwkubG9uZwkyMjE4MzQzNzE1CisJLmxvbmcJMzE3MDI4MTYyOAorCS5sb25nCTIyMDQ3MTcwNTYKKwkubG9uZwkxMDY5ODMxMzI1CisJLmxvbmcJMjY2ODMzNDAxMQorCS5sb25nCTEwMjUyNjQ1MjQKKwkubG9uZwkxNDAxNzcyMDMyCisJLmxvbmcJMTA2OTgwNzc0NQorCS5sb25nCTQxMDM5OTMxNTkKKwkubG9uZwkxMDIyOTI1NzIxCisJLmxvbmcJMzM1NjcyMTE1MgorCS5sb25nCTEwNjk3ODQzMTYKKwkubG9uZwkzNTczNzkwNzcyCisJLmxvbmcJMzE3MjE4NjUyNworCS5sb25nCTQwNDExNDg0MTYKKwkubG9uZwkxMDY5NzYxMDM3CisJLmxvbmcJNDAyNzY5MTkxMAorCS5sb25nCTMxNzEyNzY5OTAKKwkubG9uZwkzODgwMTUxMDQwCisJLmxvbmcJMTA2OTczNzkwNgorCS5sb25nCTQwODcxMTg3ODYKKwkubG9uZwkzMTcyNzEwNzM0CisJLmxvbmcJMzQ1MzM2NDIyNAorCS5sb25nCTEwNjk3MTQ5MjEKKwkubG9uZwk5OTAxNDI5OQorCS5sb25nCTMxNzIwMDMwNzcKKwkubG9uZwkzNDkxMDkyNDgwCisJLmxvbmcJMTA2OTY5MjA4MAorCS5sb25nCTM4MDE4MzY3MDEKKwkubG9uZwkzMTcyOTg5Mjg3CisJLmxvbmcJNTc1NTgwMTYwCisJLmxvbmcJMTA2OTY2OTM4MgorCS5sb25nCTE5MjA0MDYwMTIKKwkubG9uZwkzMTcwODc0MTI1CisJLmxvbmcJMjIyODIyNDAKKwkubG9uZwkxMDY5NjQ2ODI0CisJLmxvbmcJOTY0MTkzMzcwCisJLmxvbmcJMTAxOTM2MzE1OQorCS5sb25nCTI5OTE0Mjk2MzIKKwkubG9uZwkxMDY5NjI0NDA0CisJLmxvbmcJMzM3MjU4OTg5MAorCS5sb25nCTEwMjM0MjUwNTMKKwkubG9uZwkyMTg5NjQ1ODI0CisJLmxvbmcJMTA2OTYwMjEyMgorCS5sb25nCTI2MTA1MDM4NzIKKwkubG9uZwkxMDIzNjUyNDQyCisJLmxvbmcJMzM0MTQ2NzY0OAorCS5sb25nCTEwNjk1Nzk5NzUKKwkubG9uZwkxMTkwMjkyMDA0CisJLmxvbmcJMTAyMjQyNTY2NQorCS5sb25nCTM3MTEyOTM0NDAKKwkubG9uZwkxMDY5NTU3OTYyCisJLmxvbmcJMTEwNDc5NTM1NgorCS5sb25nCTEwMjM2MjU4MjkKKwkubG9uZwkxMzgwNDAxMTUyCisJLmxvbmcJMTA2OTUyNDY0NAorCS5sb25nCTExNTY5OTgyMTcKKwkubG9uZwkxMDI1MTAwNDk5CisJLmxvbmcJNzY1NzEwMzM2CisJLmxvbmcJMTA2OTQ4MTE0NAorCS5sb25nCTE3MzY2NDkxMTMKKwkubG9uZwkxMDI0OTk5NDM5CisJLmxvbmcJODQ5NDEyMDk2CisJLmxvbmcJMTA2OTQzNzkwMgorCS5sb25nCTI2MTgxNzgzMzAKKwkubG9uZwkzMTcwODUzNjI5CisJLmxvbmcJMTQzMzEwNDM4NAorCS5sb25nCTEwNjkzOTQ5MTUKKwkubG9uZwk0MzQ3NzI2NworCS5sb25nCTMxNzAzNzg4MTEKKwkubG9uZwkyNTQ4NTk2NzM2CisJLmxvbmcJMTA2OTM1MjE4MAorCS5sb25nCTM5NjczNjcwNjMKKwkubG9uZwkxMDI1MjQ2NTg0CisJLmxvbmcJMTU3NTc3MjE2CisJLmxvbmcJMTA2OTMwOTY5NQorCS5sb25nCTEwMDQwMjUzMworCS5sb25nCTMxNzI4MjU1MDIKKwkubG9uZwkzMzI2MjM4NzIwCisJLmxvbmcJMTA2OTI2NzQ1NQorCS5sb25nCTExNzY4OTI5MDkKKwkubG9uZwkxMDI1NDY0MDk5CisJLmxvbmcJNDE1NTQ5NDQwMAorCS5sb25nCTEwNjkyMjU0NTkKKwkubG9uZwkzNzEzNzA3NjE3CisJLmxvbmcJMzE3MjYzMDA0NgorCS5sb25nCTM1NDU4MDQ4MDAKKwkubG9uZwkxMDY5MTgzNzA0CisJLmxvbmcJODU3MDA3MzE1CisJLmxvbmcJMTAyNDk2NTc3NworCS5sb25nCTI2MDI1MjA1NzYKKwkubG9uZwkxMDY5MTQyMTg3CisJLmxvbmcJMjU4ODc1ODM0NworCS5sb25nCTEwMjI0NjMxMzEKKwkubG9uZwkyNjMxMTk2NjcyCisJLmxvbmcJMTA2OTEwMDkwNQorCS5sb25nCTIxMTg0MjQyMzUKKwkubG9uZwkxMDIyNDkwOTg5CisJLmxvbmcJODM4MTM1ODA4CisJLmxvbmcJMTA2OTA1OTg1NgorCS5sb25nCTQxMTcwMDI3MjcKKwkubG9uZwkxMDI0ODc0NTIwCisJLmxvbmcJMzIxMDkwMzU1MgorCS5sb25nCTEwNjkwMTkwMzYKKwkubG9uZwk2NTAwNzAxMjUKKwkubG9uZwkzMTcyMDEyOTY2CisJLmxvbmcJMzAzOTIxMTUyMAorCS5sb25nCTEwNjg5Nzg0NDQKKwkubG9uZwk0MzgwNTU4MTIKKwkubG9uZwkxMDE3NzQzNzU3CisJLmxvbmcJMjM4NTYzMzI4MAorCS5sb25nCTEwNjg5MzgwNzcKKwkubG9uZwkzMDExOTkwMzY5CisJLmxvbmcJMzE3MTMxMjA0NAorCS5sb25nCTM0OTE2MTg4MTYKKwkubG9uZwkxMDY4ODk3OTMyCisJLmxvbmcJNzEyODEzODE4CisJLmxvbmcJMzE3MjcyMDQwMAorCS5sb25nCTE4MzY0NDE2MAorCS5sb25nCTEwNjg4NTgwMDgKKwkubG9uZwk0Mjg3MDA2NzQyCisJLmxvbmcJMTAyMjM3OTcyOAorCS5sb25nCTM2MzkyMTQwODAKKwkubG9uZwkxMDY4ODE4MzAwCisJLmxvbmcJMzUzNzYyMjc5CisJLmxvbmcJMzE3Mjk4MDAwOQorCS5sb25nCTM3Mjg0MTY3NjgKKwkubG9uZwkxMDY4Nzc4ODA4CisJLmxvbmcJMTg1MTM2NzczMAorCS5sb25nCTEwMjU0ODY1NzQKKwkubG9uZwkzMzcwMDk0NTkyCisJLmxvbmcJMTA2ODczOTUyOQorCS5sb25nCTQwNDY1OTQ5MTMKKwkubG9uZwkzMTcyNTY3MDQ3CisJLmxvbmcJMTM0ODQwNzI5NgorCS5sb25nCTEwNjg3MDA0NjEKKwkubG9uZwkxNDMxODk2NzUKKwkubG9uZwkxMDI1Mzk3NjMyCisJLmxvbmcJODk5NDAzNzc2CisJLmxvbmcJMTA2ODY2MTYwMQorCS5sb25nCTM3NTM2ODc4NDIKKwkubG9uZwkzMTcwNzcyNzcyCisJLmxvbmcJMTExNzcwODI4OAorCS5sb25nCTEwNjg2MjI5NDcKKwkubG9uZwkxODU3MzQwODEyCisJLmxvbmcJMzE3MDc4MjY3OAorCS5sb25nCTEyNDgyNzY0ODAKKwkubG9uZwkxMDY4NTg0NDk3CisJLmxvbmcJMTI4OTg1ODIwMworCS5sb25nCTEwMjUyMjIyODkKKwkubG9uZwk2ODMyMzczNzYKKwkubG9uZwkxMDY4NTQ2MjQ5CisJLmxvbmcJMjM1NjY3OTYwOAorCS5sb25nCTMxNzE2MjkxNzAKKwkubG9uZwkzMjUzNzY0MDk2CisJLmxvbmcJMTA2ODUwODIwMAorCS5sb25nCTMyNjcxMzY1NTYKKwkubG9uZwkxMDE4NTU0OTg3CisJLmxvbmcJOTQ0NzgzMzYKKwkubG9uZwkxMDY4NDQxNzU2CisJLmxvbmcJMTkyNzg2ODgxNAorCS5sb25nCTMxNjkzNzgxODAKKwkubG9uZwkzMjMzMTQ0ODMyCisJLmxvbmcJMTA2ODM2NjQ0NQorCS5sb25nCTI2ODIxODg4NTQKKwkubG9uZwkxMDIzOTY0MDA0CisJLmxvbmcJMjk0MDI5NzIxNgorCS5sb25nCTEwNjgyOTE1MjIKKwkubG9uZwkyNzUzMDEyODkKKwkubG9uZwkxMDIzOTQ0Njc5CisJLmxvbmcJMzY3NzcwODI4OAorCS5sb25nCTEwNjgyMTY5ODIKKwkubG9uZwkzMDI2NTg3NzEKKwkubG9uZwkxMDI0NDY1NTY3CisJLmxvbmcJMTU3Njk2ODE5MgorCS5sb25nCTEwNjgxNDI4MjIKKwkubG9uZwkzNjcyMDM1OTQwCisJLmxvbmcJMzE3MjI1NDYxMAorCS5sb25nCTE2MTQwNjk3NjAKKwkubG9uZwkxMDY4MDY5MDM3CisJLmxvbmcJNDgwMDUyOTA1CisJLmxvbmcJMzE3MjY5MjA2MgorCS5sb25nCTQyNDQzNTcxMgorCS5sb25nCTEwNjc5OTU2MjQKKwkubG9uZwkyMjA3ODY5NjU3CisJLmxvbmcJMzE3MDk2NTQzNgorCS5sb25nCTM0Nzc3ODI1MjgKKwkubG9uZwkxMDY3OTIyNTc4CisJLmxvbmcJMjk4MDY2MTg1OAorCS5sb25nCTMxNjQ5OTAwMTgKKwkubG9uZwkzNTk4NDAxNTM2CisJLmxvbmcJMTA2Nzg0OTg5NworCS5sb25nCTE5NzQzOTMwMzQKKwkubG9uZwkzMTcxMzU3MDgzCisJLmxvbmcJMjQzNTIzNTg0MAorCS5sb25nCTEwNjc3Nzc1NzcKKwkubG9uZwkxMzg1Mjg5MDExCisJLmxvbmcJMTAyNDYxNTgyMworCS5sb25nCTE4NjczMzM2MzIKKwkubG9uZwkxMDY3NzA1NjE0CisJLmxvbmcJMzQ0MjIzNjYzMworCS5sb25nCTEwMjUzMzQzODQKKwkubG9uZwkzOTk5MzAxNjMyCisJLmxvbmcJMTA2NzYzNDAwNAorCS5sb25nCTM1MDY0NzIwNzMKKwkubG9uZwkxMDI1MTMyNTQ2CisJLmxvbmcJMjU2Njk3MTM5MgorCS5sb25nCTEwNjc1NjI3NDUKKwkubG9uZwkxNDI1NzU3NTkyCisJLmxvbmcJMzE3MjM1ODQ2MworCS5sb25nCTExMjk0MzEwNAorCS5sb25nCTEwNjc0OTE4MzMKKwkubG9uZwkxNjkzNDA3MTU2CisJLmxvbmcJMzE3MjQyNjYwMworCS5sb25nCTMwNzk5Mjk4NTYKKwkubG9uZwkxMDY3MzkyMTU5CisJLmxvbmcJMzk5OTk0MjQ1NQorCS5sb25nCTEwMTg1NDkzNjkKKwkubG9uZwkyNDQzODM3NDQwCisJLmxvbmcJMTA2NzI1MTcwMQorCS5sb25nCTk3NDUzNDQ2MAorCS5sb25nCTEwMjM5NjM0MTIKKwkubG9uZwkzNTkzNjY2NTYKKwkubG9uZwkxMDY3MTExOTE3CisJLmxvbmcJMjIwNDkxNTAxOAorCS5sb25nCTEwMTM1MTQ0MTYKKwkubG9uZwkzNTY0NTE5NDI0CisJLmxvbmcJMTA2Njk3Mjc5OQorCS5sb25nCTM5Nzc0NDE2NTkKKwkubG9uZwkzMTcwODc5ODYwCisJLmxvbmcJMjAxMTA4Njg0OAorCS5sb25nCTEwNjY4MzQzNDMKKwkubG9uZwk1OTAxNDU1MTQKKwkubG9uZwkxMDI1MzkwMDExCisJLmxvbmcJMzIxNjk4MjAxNgorCS5sb25nCTEwNjY2OTY1NDEKKwkubG9uZwkzNjI5MTIwMTEwCisJLmxvbmcJMTAyNDMzMDMxMworCS5sb25nCTIxOTQxMjg4OTYKKwkubG9uZwkxMDY2NTU5Mzg4CisJLmxvbmcJMjM2NzA5ODUxMgorCS5sb25nCTMxNzIyNjAzMzgKKwkubG9uZwkyOTE2MjIwOTI4CisJLmxvbmcJMTA2NjQyMjg3NworCS5sb25nCTIyNjI0MzE4ODYKKwkubG9uZwkxMDIxMjI5NDQ2CisJLmxvbmcJMjI2Mzk0MTEyMAorCS5sb25nCTEwNjYxNzIyMTQKKwkubG9uZwkzMTE4NTA3Mjg3CisJLmxvbmcJMTAyMTQ4NDk3MAorCS5sb25nCTMwNzYyOTI2MDgKKwkubG9uZwkxMDY1OTAxNzI2CisJLmxvbmcJMTQxMTczNzgwMworCS5sb25nCTMxNzI5NTcxNDcKKwkubG9uZwkxMTg2MTM2MDY0CisJLmxvbmcJMTA2NTYzMjQ4OAorCS5sb25nCTMxMDkzNDkzMzcKKwkubG9uZwkxMDI1Mzk3MzgzCisJLmxvbmcJMzA4NTMwMzgwOAorCS5sb25nCTEwNjUzNjQ0ODcKKwkubG9uZwk1ODQ3MTUwMzEKKwkubG9uZwkzMTcyNTk2NTE5CisJLmxvbmcJMTgyMTA0ODgzMgorCS5sb25nCTEwNjQ4NDIyMTEKKwkubG9uZwkyMTgyMjQ2ODk1CisJLmxvbmcJMzE3MjUzNjIxNAorCS5sb25nCTY5NzM2ODU3NgorCS5sb25nCTEwNjQzMTEwOTQKKwkubG9uZwkzMTU3NTYxNzY1CisJLmxvbmcJMzE3MjcxNjM1NworCS5sb25nCTg5NDA0MjExMgorCS5sb25nCTEwNjMyNjAxMzEKKwkubG9uZwkzMjM3OTU4MTU0CisJLmxvbmcJMzE3MjU4NzI5MgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMzUyNjI4MjI0CisJLmxvbmcJMTA2NjYxNTgyNworCS5sb25nCTUyMTMxOTI1NgorCS5sb25nCTEwMjEzMDg3MjEKKwkubG9uZwkzMjQ4ODc3ODcwCisJLmxvbmcJMTA3NzI1MDE2NAorCS5sb25nCTE2OTE2NzY0MjkKKwkubG9uZwkzMjIxNzg3NDAxCisJLmxvbmcJOTQ1MTMyNDY1CisJLmxvbmcJMzIyMzcwMTc4MworCS5sb25nCTM3MDA4MzEzMzUKKwkubG9uZwkxMDczNTA2ODE4CisJLmxvbmcJMjE0MTAxMDU5MworCS5sb25nCTEwNzUyMjc1NTEKKwkubG9uZwkzNjk4ODMxNjM3CisJLmxvbmcJMzIyMDMzOTQ0MgorCS5sb25nCTQxNjA3NDk1NjgKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NTkxMDQKKwkubG9uZwkwCisJLmxvbmcJMTA3MTM2NjE0NAorCS5sb25nCTMyMDc0Nzk1NjAKKwkubG9uZwkxMDYyODk0MTg4CisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsMjE2MAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L2VfcG93LlMgYi9saWJtL3g4Ni9lX3Bvdy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQzZTMwZDgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9lX3Bvdy5TCkBAIC0wLDAgKzEsNDI3NyBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vICAgIExldCB4PTJeayAqIG14LCBteCBpbiBbMSwyKQorLy8KKy8vICAgIGxvZzIoeCkgY2FsY3VsYXRpb246CisvLworLy8gICAgR2V0IEJ+MS9teCBiYXNlZCBvbiB0aGUgb3V0cHV0IG9mIHJjcHBzIGluc3RydWN0aW9uIChCMCkKKy8vICAgIEIgPSBpbnQoKEIwKkxIKjJeOSswLjUpKS8yXjkKKy8vICAgIExIIGlzIGEgc2hvcnQgYXBwcm94aW1hdGlvbiBmb3IgbG9nMihlKQorLy8KKy8vICAgIFJlZHVjZWQgYXJndW1lbnQsIHNjYWxlZCBieSBMSDoKKy8vICAgICAgICAgICAgICAgIHI9QipteC1MSCAoY29tcHV0ZWQgYWNjdXJhdGVseSBpbiBoaWdoIGFuZCBsb3cgcGFydHMpCisvLworLy8gICAgbG9nMih4KSByZXN1bHQ6ICBrIC0gbG9nMihCKSArIHAocikKKy8vICAgICAgICAgICAgIHAocikgaXMgYSBkZWdyZWUgOCBwb2x5bm9taWFsCisvLyAgICAgICAgICAgICAtbG9nMihCKSByZWFkIGZyb20gZGF0YSB0YWJsZSAoaGlnaCwgbG93IHBhcnRzKQorLy8gICAgICAgICAgICAgbG9nMih4KSBpcyBmb3JtZWQgZnJvbSBoaWdoIGFuZCBsb3cgcGFydHMKKy8vICAgIEZvciB8eHwgaW4gWzEtMS8zMiwgMSsxLzE2KSwgYSBzbG93ZXIgYnV0IG1vcmUgYWNjdXJhdGUgY29tcHV0YXRpb24KKy8vICAgIGJhc2VkIG9tIHRoZSBzYW1lIHRhYmxlIGRlc2lnbiBpcyBwZXJmb3JtZWQuCisvLworLy8gICBNYWluIHBhdGggaXMgdGFrZW4gaWYgfCBmbG9vcihsb2cyKHxsb2cyKHx4fCl8KSArIGZsb29yKGxvZzJ8eXwpIHwgPCA4LAorLy8gICB0byBmaWx0ZXIgb3V0IGFsbCBwb3RlbnRpYWwgT0YvVUYgY2FzZXMuCisvLyAgIGV4cDIoeSpsb2cyKHgpKSBpcyBjb21wdXRlZCB1c2luZyBhbiA4LWJpdCBpbmRleCB0YWJsZSBhbmQgYSBkZWdyZWUgNQorLy8gICBwb2x5bm9taWFsCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBwb3coLTAseSkgPSAtSU5GIGFuZCByYWlzZXMgdGhlIGRpdmlkZS1ieS16ZXJvIGV4Y2VwdGlvbiBmb3IgeSBhbiBvZGQgCisvLyAgaW50ZWdlciA8IDAuCisvLyAgcG93KC0wLHkpID0gK0lORiBhbmQgcmFpc2VzIHRoZSBkaXZpZGUtYnktemVybyBleGNlcHRpb24gZm9yIHkgPCAwIGFuZCAKKy8vICBub3QgYW4gb2RkIGludGVnZXIuCisvLyAgcG93KC0wLHkpID0gLTAgZm9yIHkgYW4gb2RkIGludGVnZXIgPiAwLgorLy8gIHBvdygtMCx5KSA9ICswIGZvciB5ID4gMCBhbmQgbm90IGFuIG9kZCBpbnRlZ2VyLgorLy8gIHBvdygtMSwtSU5GKSA9IDEuCisvLyAgcG93KCsxLHkpID0gMSBmb3IgYW55IHksIGV2ZW4gYSBOYU4uCisvLyAgcG93KHgsLTApID0gMSBmb3IgYW55IHgsIGV2ZW4gYSBOYU4uCisvLyAgcG93KHgseSkgPSBhIE5hTiBhbmQgcmFpc2VzIHRoZSBpbnZhbGlkIGV4Y2VwdGlvbiBmb3IgZmluaXRlIHggPCAwIGFuZAorLy8gIGZpbml0ZSBub24taW50ZWdlciB5LgorLy8gIHBvdyh4LC1JTkYpID0gK0lORiBmb3IgfHh8PDEuCisvLyAgcG93KHgsLUlORikgPSArMCBmb3IgfHh8PjEuCisvLyAgcG93KHgsK0lORikgPSArMCBmb3IgfHh8PDEuCisvLyAgcG93KHgsK0lORikgPSArSU5GIGZvciB8eHw+MS4KKy8vICBwb3coLUlORix5KSA9IC0wIGZvciB5IGFuIG9kZCBpbnRlZ2VyIDwgMC4KKy8vICBwb3coLUlORix5KSA9ICswIGZvciB5IDwgMCBhbmQgbm90IGFuIG9kZCBpbnRlZ2VyLgorLy8gIHBvdygtSU5GLHkpID0gLUlORiBmb3IgeSBhbiBvZGQgaW50ZWdlciA+IDAuCisvLyAgcG93KC1JTkYseSkgPSArSU5GIGZvciB5ID4gMCBhbmQgbm90IGFuIG9kZCBpbnRlZ2VyLgorLy8gIHBvdygrSU5GLHkpID0gKzAgZm9yIHkgPDAuCisvLyAgcG93KCtJTkYseSkgPSArSU5GIGZvciB5ID4wLgorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHN0YXRpY19mdW5jCisgICAgICAgIC50ZXh0CisgICAgICAgIC5hbGlnbiBfX2Jpb25pY19hc21fYWxpZ24KKyAgICAgICAgLnR5cGUgc3RhdGljX2Z1bmMsIEBmdW5jdGlvbgorc3RhdGljX2Z1bmM6CisuLkIxLjE6CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVheAorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVheCksICVlYXgKKyAgICAgICAgbGVhICAgICAgIHN0YXRpY19jb25zdF90YWJsZUBHT1RPRkYoJWVheCksICVlYXgKKyAgICAgICAgcmV0CisgICAgICAgIC5zaXplICAgc3RhdGljX2Z1bmMsLi1zdGF0aWNfZnVuYworIyAtLSBFbmQgIHN0YXRpY19mdW5jCisKKyMgLS0gQmVnaW4gIHBvdworRU5UUlkocG93KQorIyBwYXJhbWV0ZXIgMTogOCArICVlYnAKKyMgcGFyYW1ldGVyIDI6IDE2ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEyMCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNjQoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMjgoJWVzcCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICAxMzYoJWVzcCksICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTA2OTA4ODc2OCwgJWVjeAorICAgICAgICBtb3ZkICAgICAgJWVjeCwgJXhtbTcKKyAgICAgICAgbW92c2QgICAgICV4bW0xLCAxNiglZXNwKQorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMzA3MDQsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDgoJWVzcCkKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJDgxOTIsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW00CisgICAgICAgIG1vdmFwZCAgICA4MjQwKCVlYngpLCAleG1tNgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQ1LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgODI1NiglZWJ4KSwgJXhtbTIKKyAgICAgICAgcHNybHEgICAgICQzNCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBzdWJsICAgICAgJDE2MzY4LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkMzEsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgcmNwc3MgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDEyLCAleG1tMworICAgICAgICBhZGRsICAgICAgJDE2LCAlZWN4CisgICAgICAgIGJzciAgICAgICAlZWN4LCAlZWN4CisgICAgICAgIHBzcmxxICAgICAkMTIsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAlZXNpLCAyNCglZXNwKQorICAgICAgICBzdWJsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3MzYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisgICAgICAgIG1vdmwgICAgICAkMCwgJWVzaQorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIG11bHNzICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQtMSwgJWVkeAorICAgICAgICBzdWJsICAgICAgJDQsICVlY3gKKyAgICAgICAgc2hsbCAgICAgICVjbCwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJWVkeCwgJXhtbTUKKyAgICAgICAgb3JwZCAgICAgICV4bW0xLCAleG1tMworICAgICAgICBzdWJsICAgICAgJDE2MzUxLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMSwgJWVheAorICAgICAgICBqYmUgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKyAgICAgICAgcGFkZGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDMyLCAleG1tNQorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgcHNsbHEgICAgICQyOSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW0zLCAleG1tNQorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMworICAgICAgICBzdWJsICAgICAgJDEsICVlYXgKKyAgICAgICAgc2FybCAgICAgICQ0LCAlZWF4CisgICAgICAgIGN2dHNpMnNkbCAlZWF4LCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgODI3MiglZWJ4KSwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgODI4OCglZWJ4KSwgJXhtbTQKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgc2FybCAgICAgICQzMSwgJWVheAorICAgICAgICBhZGRsICAgICAgJWVheCwgJWVjeAorICAgICAgICB4b3JsICAgICAgJWVjeCwgJWVheAorICAgICAgICBhZGRsICAgICAgJDEsICVlYXgKKyAgICAgICAgYnNyICAgICAgICVlYXgsICVlYXgKKyAgICAgICAgdW5wY2tscGQgICV4bW0zLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgODMwNCglZWJ4KSwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMworICAgICAgICBhbmRsICAgICAgJDE2NzYwODMyLCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMTAsICVlZHgKKyAgICAgICAgYWRkcGQgICAgIC0zNjE2KCVlYngsJWVkeCksICV4bW01CisgICAgICAgIG1vdmFwZCAgICA4MzIwKCVlYngpLCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMywgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMworICAgICAgICBhZGRwZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTEKKyAgICAgICAgbW92endsICAgIDIyKCVlc3ApLCAlZWN4CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTcKKyAgICAgICAgbW92c2QgICAgIDgzNjgoJWVieCksICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTMsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgc2hsbCAgICAgICQ0LCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTU4NzIsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVheAorICAgICAgICBtdWxwZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIGNtcGwgICAgICAkNjI0LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG1vdmwgICAgICAkMTcwODAsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW0yCisgICAgICAgIGFuZHBkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTYsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgYWRkcGQgICAgICV4bW0wLCAleG1tMworICAgICAgICBtb3ZkICAgICAgJXhtbTYsICVlZHgKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTMsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDI1NSwgJWVkeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgODM4NCglZWJ4LCVlZHgsOCksICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgMTI0ODAoJWVieCksICV4bW03CisgICAgICAgIG1vdmFwZCAgICAxMjQ5NiglZWJ4KSwgJXhtbTMKKyAgICAgICAgc2hsbCAgICAgICQxMiwgJWVjeAorICAgICAgICB4b3JsICAgICAgJWVzaSwgJWVjeAorICAgICAgICBhbmRsICAgICAgJC0xMDQ4NTc2LCAlZWN4CisgICAgICAgIG1vdmQgICAgICAlZWN4LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIG1vdnNkICAgICAxMjUxMiglZWJ4KSwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAyNCglZXNwKSwgJWVzaQorICAgICAgICBtdWxwZCAgICAgJXhtbTQsICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkMTcsICV4bW02LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcGFkZGQgICAgICV4bW02LCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTI4KCVlc3ApLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgMTM2KCVlc3ApLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQxNiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIGFuZGwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisgICAgICAgIHRlc3RsICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjI6CisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVjeAorICAgICAgICB4b3JsICAgICAgJWVkeCwgJWVkeAorICAgICAgICB0ZXN0bCAgICAgJWVjeCwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJDEsICVlY3gKKyAgICAgICAgY21vdm5lICAgICVlY3gsICVlZHgKKyAgICAgICAgb3JsICAgICAgIDIwKCVlc3ApLCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTA3MjY5MzI0OCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgbW92c2QgICAgIDgoJWVzcCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMworICAgICAgICBtb3ZkICAgICAgJXhtbTMsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTMKKyAgICAgICAgbW92ZCAgICAgICV4bW0zLCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQxODQxNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMworICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxODQxNiwgJWVjeAorICAgICAgICBwc2xscSAgICAgJDUsICV4bW0wCisgICAgICAgIG1vdnNkICAgICA4MjU2KCVlYngpLCAleG1tMgorICAgICAgICBwc3JscSAgICAgJDM0LCAleG1tMAorICAgICAgICByY3BzcyAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMTIsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICA4MjQwKCVlYngpLCAleG1tNgorICAgICAgICBwc3JscSAgICAgJDEyLCAleG1tMworICAgICAgICBtdWxzcyAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkLTEwMjQsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW01CisgICAgICAgIG9ycGQgICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgcGFkZGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDMyLCAleG1tNQorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgcHNsbHEgICAgICQyOSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW0zLCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJDAsICVlc2kKKyAgICAgICAgYW5kcGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxODQxNiwgJWVheAorICAgICAgICBzYXJsICAgICAgJDQsICVlYXgKKyAgICAgICAgY3Z0c2kyc2RsICVlYXgsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMi4wLjI6CisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVjeAorICAgICAgICB4b3JsICAgICAgJWVkeCwgJWVkeAorICAgICAgICB0ZXN0bCAgICAgJWVjeCwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJDEsICVlY3gKKyAgICAgICAgY21vdm5lICAgICVlY3gsICVlZHgKKyAgICAgICAgb3JsICAgICAgIDIwKCVlc3ApLCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTA3MjY5MzI0OCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgbW92c2QgICAgIDgoJWVzcCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMworICAgICAgICBtb3ZkICAgICAgJXhtbTMsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTMKKyAgICAgICAgbW92ZCAgICAgICV4bW0zLCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQxODQxNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMworICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxODQxNiwgJWVjeAorICAgICAgICBwc2xscSAgICAgJDUsICV4bW0wCisgICAgICAgIG1vdnNkICAgICA4MjU2KCVlYngpLCAleG1tMgorICAgICAgICBwc3JscSAgICAgJDM0LCAleG1tMAorICAgICAgICByY3BzcyAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMTIsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICA4MjQwKCVlYngpLCAleG1tNgorICAgICAgICBwc3JscSAgICAgJDEyLCAleG1tMworICAgICAgICBtdWxzcyAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkLTEwMjQsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW01CisgICAgICAgIG9ycGQgICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgcGFkZGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDMyLCAleG1tNQorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgcHNsbHEgICAgICQyOSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW0zLCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJC0yMTQ3NDgzNjQ4LCAlZXNpCisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMworICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTg0MTYsICVlYXgKKyAgICAgICAgc2FybCAgICAgICQ0LCAlZWF4CisgICAgICAgIGN2dHNpMnNkbCAlZWF4LCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVheAorICAgICAgICBqbCAgICAgICAgLkxfMlRBR19QQUNLRVRfMTMuMC4yCisgICAgICAgIGNtcGwgICAgICAkNzM2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzE1LjAuMjoKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgMTI1NDQoJWVieCksICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBtb3ZsICAgICAgJDE3MDgwLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgJXhtbTIsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICV4bW01LCAleG1tNworICAgICAgICBhbmRwZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgICV4bW0xLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTYsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNgorICAgICAgICBtb3ZkICAgICAgJXhtbTYsICVlYXgKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAxMjQ4MCglZWJ4KSwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgIDEyNDk2KCVlYngpLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTYsICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQyNTUsICVlYXgKKyAgICAgICAgYWRkbCAgICAgICVlYXgsICVlYXgKKyAgICAgICAgbW92YXBkICAgIDgzODQoJWVieCwlZWF4LDgpLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIHNhcmwgICAgICAkOCwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJWVjeCwgJWVheAorICAgICAgICBzYXJsICAgICAgJDEsICVlY3gKKyAgICAgICAgc3VibCAgICAgICVlY3gsICVlYXgKKyAgICAgICAgc2hsbCAgICAgICQyMCwgJWVjeAorICAgICAgICB4b3JsICAgICAgJWVzaSwgJWVjeAorICAgICAgICBtb3ZkICAgICAgJWVjeCwgJXhtbTYKKyAgICAgICAgbW92c2QgICAgIDEyNTEyKCVlYngpLCAleG1tMQorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTY1MjksICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE0LjAuMgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMiwgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW00LCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDE3LCAleG1tNiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBhZGRkICAgICAleG1tNiwgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW03LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIHNobGwgICAgICAkNCwgJWVheAorICAgICAgICB4b3JwZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIGFkZGwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAyNCglZXNwKSwgJWVzaQorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTYuMC4yCisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE3LjAuMgorLkxfMlRBR19QQUNLRVRfMTguMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorLkxfMlRBR19QQUNLRVRfOC4wLjI6CisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDgoJWVzcCksICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMjAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTkuMC4yCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjAuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzIwLjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQyOSwgJWVkeAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMjEuMC4yCisuTF8yVEFHX1BBQ0tFVF8yMi4wLjI6CisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisuTF8yVEFHX1BBQ0tFVF8xOS4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjMuMC4yCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTIsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yNC4wLjIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMjAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjIuMC4yCisuTF8yVEFHX1BBQ0tFVF8yNC4wLjI6CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgdGVzdGwgICAgICQzMjc2OCwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjUuMC4yCisgICAgICAgIHRlc3RsICAgICAkLTIxNDc0ODM2NDgsICVlY3gKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzI2LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisuTF8yVEFHX1BBQ0tFVF8yNy4wLjI6CisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIHRlc3RsICAgICAkMSwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjguMC4yCisgICAgICAgIHRlc3RsICAgICAkMiwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjkuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzI1LjAuMjoKKyAgICAgICAgc2hybCAgICAgICQyMCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDIwNDcsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQxMDc1LCAlZWN4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yOC4wLjIKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMwLjAuMgorICAgICAgICBjbXBsICAgICAgJDEwNzQsICVlY3gKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzI3LjAuMgorICAgICAgICBjbXBsICAgICAgJDEwMjMsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzI4LjAuMgorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMTcyMDgsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yOC4wLjIKKyAgICAgICAgbW92ZCAgICAgICV4bW0zLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjguMC4yCisuTF8yVEFHX1BBQ0tFVF8yOS4wLjI6CisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorLkxfMlRBR19QQUNLRVRfMjguMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjYuMC4yCisuTF8yVEFHX1BBQ0tFVF8zMS4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzMwLjAuMjoKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQxLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yOC4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzI5LjAuMgorLkxfMlRBR19QQUNLRVRfMzIuMC4yOgorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgcHNybHEgICAgICQyMCwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zMy4wLjIKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzMzLjAuMjoKKyAgICAgICAgbW92c2QgICAgIDgoJWVzcCksICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQ0OTEzNiwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMzQuMC4yCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVjeAorICAgICAgICBwc3JscSAgICAgJDIwLCAleG1tMAorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlY3gKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzM0LjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisuTF8yVEFHX1BBQ0tFVF8zNC4wLjI6CisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTEKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBzdWJsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlZHgKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICB4b3JsICAgICAgJWVkeCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzM1LjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTcxODQsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzM2LjAuMgorICAgICAgICB0ZXN0bCAgICAgJDEsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzM3LjAuMgorICAgICAgICB0ZXN0bCAgICAgJDIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzM4LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMzkuMC4yCisuTF8yVEFHX1BBQ0tFVF8zNi4wLjI6CisgICAgICAgIHRlc3RsICAgICAkMSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMzguMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8zOS4wLjIKKy5MXzJUQUdfUEFDS0VUXzkuMC4yOgorICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMzEsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4yCisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tMgorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlYXgsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQwLjAuMgorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMyLjAuMgorICAgICAgICBjbXBsICAgICAgJDE3MjAwLCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zOC4wLjIKKyAgICAgICAgY21wbCAgICAgICQxNzE4NCwgJWVkeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMzUuMC4yCisgICAgICAgIGNtcGwgICAgICAkMTYzNjgsICVlZHgKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzM3LjAuMgorICAgICAgICBtb3ZsICAgICAgJDE3MjA4LCAlZWF4CisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMzcuMC4yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVheAorICAgICAgICBhbmRsICAgICAgJDEsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzM4LjAuMgorLkxfMlRBR19QQUNLRVRfMzkuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMzA3MDQsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgODI1NiglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDgoJWVzcCksICV4bW00CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTQsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQ4MTkyLCAlZWR4CisgICAgICAgIG1vdmQgICAgICAlZWR4LCAleG1tNAorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTYsICVlYXgKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEyLjAuMgorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkMTYzNjgsICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgc2FybCAgICAgICQzMSwgJWVkeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVjeAorICAgICAgICB4b3JsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBhZGRsICAgICAgJDE2LCAlZWN4CisgICAgICAgIGJzciAgICAgICAlZWN4LCAlZWN4CisgICAgICAgIG1vdmwgICAgICAkLTIxNDc0ODM2NDgsICVlc2kKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8zNy4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDI4LCAlZWR4CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzM4LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDMwNzA0LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDgyNTYoJWVieCksICV4bW0yCisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tNAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW00LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAkODE5MiwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJWVkeCwgJXhtbTQKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBzdWJsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjIKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBzdWJsICAgICAgJDE2MzY4LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkMzEsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQxNiwgJWVjeAorICAgICAgICBic3IgICAgICAgJWVjeCwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJDAsICVlc2kKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8yMy4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzI2LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisuTF8yVEFHX1BBQ0tFVF8xMy4wLjI6CisgICAgICAgIGFkZGwgICAgICAkMzg0LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVheAorICAgICAgICBqbCAgICAgICAgLkxfMlRBR19QQUNLRVRfNDEuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBzaHJsICAgICAgJDMxLCAlZXNpCisgICAgICAgIGFkZHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG1vdnNkICAgICAxMjUyOCglZWJ4LCVlc2ksOCksICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHNobGwgICAgICAkMTUsICVlc2kKKyAgICAgICAgb3JsICAgICAgICVlc2ksICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIG1vdmwgICAgICAyNCglZXNwKSwgJWVzaQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorLkxfMlRBR19QQUNLRVRfNDEuMC4yOgorICAgICAgICBtb3ZsICAgICAgMjQoJWVzcCksICVlc2kKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorLkxfMlRBR19QQUNLRVRfNDAuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisuTF8yVEFHX1BBQ0tFVF80Mi4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMjYsICVlZHgKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIxLjAuMgorLkxfMlRBR19QQUNLRVRfMTEuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzQzLjAuMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlYXgKKyAgICAgICAgcHNybHEgICAgICQyMCwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzQzLjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNDIuMC4yCisgICAgICAgIHNocmwgICAgICAkMjEsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxMDc1LCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF80NC4wLjIKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ1LjAuMgorICAgICAgICBjbXBsICAgICAgJDEwMjMsICVlZHgKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ0LjAuMgorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMTcyMDgsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80NC4wLjIKKyAgICAgICAgbW92ZCAgICAgICV4bW0zLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNDQuMC4yCisuTF8yVEFHX1BBQ0tFVF80Ni4wLjI6CisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMAorICAgICAgICB0ZXN0bCAgICAgJC0yMTQ3NDgzNjQ4LCAlZWN4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80Ny4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorLkxfMlRBR19QQUNLRVRfNDUuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICB0ZXN0bCAgICAgJDEsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ2LjAuMgorLkxfMlRBR19QQUNLRVRfNDQuMC4yOgorICAgICAgICB0ZXN0bCAgICAgJC0yMTQ3NDgzNjQ4LCAlZWN4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yNi4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorLkxfMlRBR19QQUNLRVRfNDcuMC4yOgorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMQorICAgICAgICBkaXZzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQyNywgJWVkeAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMjEuMC4yCisuTF8yVEFHX1BBQ0tFVF8xNC4wLjI6CisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW02CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTIsICVlYXgKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tNiwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ4LjAuMgorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgeG9ybCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgdGVzdGwgICAgICQzMjc2OCwgJWVkeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfNDkuMC4yCisuTF8yVEFHX1BBQ0tFVF81MC4wLjI6CisgICAgICAgIG1vdmwgICAgICAkMzI3MzYsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBzaHJsICAgICAgJDE2LCAlZXNpCisgICAgICAgIG9ybCAgICAgICAlZXNpLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgIDI0KCVlc3ApLCAlZXNpCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzE3LjAuMjoKKyAgICAgICAgbW92bCAgICAgICQyNCwgJWVkeAorLkxfMlRBR19QQUNLRVRfMjEuMC4yOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorLkxfMlRBR19QQUNLRVRfNDkuMC4yOgorICAgICAgICBtb3ZsICAgICAgJDE2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICB0ZXN0bCAgICAgJC0yMTQ3NDgzNjQ4LCAlZXNpCisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF81MS4wLjIKKyAgICAgICAgbW92c2QgICAgIDEyNTYwKCVlYngpLCAleG1tMgorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0wCisuTF8yVEFHX1BBQ0tFVF81MS4wLjI6CisgICAgICAgIG1vdmwgICAgICAyNCglZXNwKSwgJWVzaQorICAgICAgICBtb3ZsICAgICAgJDI1LCAlZWR4CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzE2LjAuMjoKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tNSwgJWVjeAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW00LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAkLTEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBzdWJsICAgICAgJDE2MzY4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgbW92bCAgICAgICQtMzEsICVlY3gKKyAgICAgICAgc2FybCAgICAgICQ0LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGpsZSAgICAgICAuTF8yVEFHX1BBQ0tFVF81Mi4wLjIKKyAgICAgICAgY21wbCAgICAgICQyMCwgJWVjeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNTMuMC4yCisgICAgICAgIHNobGwgICAgICAlY2wsICVlYXgKKy5MXzJUQUdfUEFDS0VUXzUyLjAuMjoKKyAgICAgICAgbW92ZCAgICAgICVlYXgsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMzIsICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisuTF8yVEFHX1BBQ0tFVF81My4wLjI6CisgICAgICAgIG1vdmwgICAgICAkMjUsICVlZHgKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIxLjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIG1vdnp3bCAgICAyMiglZXNwKSwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJC0yMTQ3NDgzNjQ4LCAlZWR4CisgICAgICAgIG1vdmQgICAgICAlZWR4LCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIHBhZGRkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQzMiwgJXhtbTUKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIHBzbGxxICAgICAkMjksICV4bW0wCisgICAgICAgIHBhZGRxICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYW5kcGQgICAgICV4bW0xLCAleG1tNQorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMTY1NjAsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMworICAgICAgICBhZGRsICAgICAgJDE2MzUxLCAlZWF4CisgICAgICAgIHNocmwgICAgICAkNCwgJWVheAorICAgICAgICBzdWJsICAgICAgJDEwMjIsICVlYXgKKyAgICAgICAgY3Z0c2kyc2RsICVlYXgsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92c2QgICAgICglZWJ4KSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgKCVlYngpLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIG1vdnNkICAgICA4KCVlYngpLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMywgJXhtbTIKKyAgICAgICAgdW5wY2tscGQgICV4bW0zLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIG1vdnNkICAgICA4KCVlYngpLCAleG1tMAorICAgICAgICBhbmRsICAgICAgJDE2NzYwODMyLCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMTAsICVlZHgKKyAgICAgICAgYWRkcGQgICAgIC0zNjE2KCVlYngsJWVkeCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgICV4bW01LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW03LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAleG1tNywgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG1vdmFwZCAgICA4MjcyKCVlYngpLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgICV4bW03LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgIDgzMzYoJWVieCksICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNywgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW03LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgODM1MiglZWJ4KSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTMsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgODMwNCglZWJ4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0zLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIGFkZHBkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdnNkICAgICAxNiglZWJ4KSwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisgICAgICAgIG1vdnp3bCAgICAyMiglZXNwKSwgJWVjeAorICAgICAgICBtdWxwZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTcsICVlYXgKKyAgICAgICAgbXVscGQgICAgICV4bW00LCAleG1tNQorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIG1vdnNkICAgICA4Mzc2KCVlYngpLCAleG1tNAorICAgICAgICBhbmRwZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ4LjAuMgorICAgICAgICBhZGRsICAgICAgJWVheCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDE2NTc2LCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF81NC4wLjIKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgbW92bCAgICAgICQxNzA4MCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tNiwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIDEyNDgwKCVlYngpLCAleG1tNworICAgICAgICBtb3ZkICAgICAgJXhtbTYsICVlZHgKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgMTI0OTYoJWVieCksICV4bW0zCisgICAgICAgIG1vdnNkICAgICAxMjUxMiglZWJ4KSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDI1NSwgJWVkeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgODM4NCglZWJ4LCVlZHgsOCksICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tNiwgJWVkeAorICAgICAgICBzaHJsICAgICAgJDgsICVlY3gKKyAgICAgICAgbW92bCAgICAgICVlY3gsICVlYXgKKyAgICAgICAgc2hybCAgICAgICQxLCAlZWN4CisgICAgICAgIHN1YmwgICAgICAlZWN4LCAlZWF4CisgICAgICAgIHNobGwgICAgICAkMjAsICVlY3gKKyAgICAgICAgbW92ZCAgICAgICVlY3gsICV4bW02CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW00LCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNCwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkMTcsICV4bW02LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxNjUyOSwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTQuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcGFkZGQgICAgICV4bW02LCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tMworICAgICAgICBhZGRsICAgICAgJDEwMjMsICVlYXgKKyAgICAgICAgc2hsbCAgICAgICQyMCwgJWVheAorICAgICAgICBvcmwgICAgICAgJWVzaSwgJWVheAorICAgICAgICBtb3ZkICAgICAgJWVheCwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQzMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgIDI0KCVlc3ApLCAlZXNpCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNi4wLjIKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTcuMC4yCisuTF8yVEFHX1BBQ0tFVF81NS4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisuTF8yVEFHX1BBQ0tFVF80OC4wLjI6CisgICAgICAgIG1vdmwgICAgICAyNCglZXNwKSwgJWVzaQorLkxfMlRBR19QQUNLRVRfNTYuMC4yOgorICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQ0OTEzNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tMworICAgICAgICBwc3JscSAgICAgJDIwLCAleG1tMworICAgICAgICBtb3ZkICAgICAgJXhtbTMsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzU3LjAuMgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE4LjAuMgorLkxfMlRBR19QQUNLRVRfNTcuMC4yOgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVkeAorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHN1YmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgeG9ybCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgdGVzdGwgICAgICQzMjc2OCwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisuTF8yVEFHX1BBQ0tFVF81NC4wLjI6CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlYXgKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMiwgJWVjeAorICAgICAgICB4b3JsICAgICAgJWVjeCwgJWVheAorICAgICAgICB0ZXN0bCAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF81MC4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ5LjAuMgorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIG1vdmwgICAgICA2NCglZXNwKSwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIyLjM6CitFTkQocG93KQorIyAtLSBFbmQgIHBvdworCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorc3RhdGljX2NvbnN0X3RhYmxlOgorCS5sb25nCTAKKwkubG9uZwkzMjE4NDc5NjE2CisJLmxvbmcJMAorCS5sb25nCTMyMTA1ODcxMDUKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY1MjQ4CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzI2ODkxNjIKKwkubG9uZwkyNTIzMDEzMDEzCisJLmxvbmcJMTA0NjE1NzM5OAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNjg1MDgxCisJLmxvbmcJMzg1MTUxMzc1OAorCS5sb25nCTMxOTA5Njg5NTIKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY4MTAwNworCS5sb25nCTIyNDE0NjY0NjYKKwkubG9uZwkxMDQ2MDQ0NTk5CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzI2NzY5MzcKKwkubG9uZwkyOTkwOTI4MjcxCisJLmxvbmcJMzE5MzA4NDk4NAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNjcyODczCisJLmxvbmcJMjkwNTExMjc0MworCS5sb25nCTMxOTI5MTg1NzYKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjY2ODgxNQorCS5sb25nCTMzNzA1OTEyNjQKKwkubG9uZwkxMDQ2MDUxNzkzCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI2NjQ3NjIKKwkubG9uZwkzMjcyMzYxMjE2CisJLmxvbmcJMzE5Mzc5MzY1MworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNjYwNzE0CisJLmxvbmcJNDY1NDY3NTUKKwkubG9uZwkxMDQzMjA2OTM2CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzI2NTY2NzIKKwkubG9uZwkzMDE3MDY3NzI0CisJLmxvbmcJMzE5MjE3Nzk2MgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjUyNjM2CisJLmxvbmcJMzY4ODQzNjYzMQorCS5sb25nCTMxOTI4MTQ5NTYKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjY0ODYwNAorCS5sb25nCTE3MDc0NjE5OTIKKwkubG9uZwkzMTkzMDU2NzEyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzI2NDQ1NzgKKwkubG9uZwkxMTg4MTE0NTQwCisJLmxvbmcJMzE5MzYwMzA4NgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNjQwNTU3CisJLmxvbmcJMzUzMzE4MDU2NAorCS5sb25nCTEwNDU0NTkzNzUKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjYzNjU0MgorCS5sb25nCTIwMDAzMzc2MzAKKwkubG9uZwkzMTkzNDc1NTU3CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzI2MzI1MzIKKwkubG9uZwkzNjk4MDYyNDQzCisJLmxvbmcJMzE5Mzc1Mjc2NgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNjI4NTI3CisJLmxvbmcJMzE2MTYwNjEzOAorCS5sb25nCTMxOTA1MzI5OTUKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjYyNDUyOAorCS5sb25nCTMxNjUyNjU0NzgKKwkubG9uZwkzMTkzMTU4NDU5CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI2MjA1MzQKKwkubG9uZwkxNjAwOTQwMDc3CisJLmxvbmcJMzE5MzIyNjc3NworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNjE2NTQ1CisJLmxvbmcJMTM2MzI3MjU1MgorCS5sb25nCTMxOTI2MTQyNzgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjYxMjU2MQorCS5sb25nCTM5NjYyMDk5MTAKKwkubG9uZwkzMTkxMjQ5NjU0CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI2MDg1ODMKKwkubG9uZwkxMDkzNjcyNzg5CisJLmxvbmcJMzE5MDYzNzMzMAorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNjA0NjEwCisJLmxvbmcJMTczNTIzOTM1NworCS5sb25nCTMxOTI3NTM2MTYKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjYwMDY0MgorCS5sb25nCTE0NzA2NjUxNTYKKwkubG9uZwkxMDQ1NTU5Njk3CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzI1OTY2NzkKKwkubG9uZwkzODQwNjI0OTI2CisJLmxvbmcJMTA0NTkyODk1MworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzI1OTI3MjIKKwkubG9uZwk0MjU5MDcyNTU2CisJLmxvbmcJMzE5MTAzNTYyMgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNTg4NzY5CisJLmxvbmcJMzYxMzA4ODc1MworCS5sb25nCTMxOTIxNjU2ODEKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjU4NDgyMgorCS5sb25nCTMxNzUyMzQ0NDYKKwkubG9uZwkxMDM5NDg2OTQ4CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI1ODA4ODAKKwkubG9uZwk4NTY1NzY0NDEKKwkubG9uZwkxMDQ1NzAyODEyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI1NzY5NDMKKwkubG9uZwkyMjUzNDk4NzE5CisJLmxvbmcJMzE5MzI4NTMzNAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyNTczMDExCisJLmxvbmcJMTU4NzA3MDcyOAorCS5sb25nCTMxOTA4MDE1NzcKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjU2OTA4NAorCS5sb25nCTE1OTk4NjMxNworCS5sb25nCTEwNDI1MTk0MzYKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjU2NTE2MworCS5sb25nCTM5OTk1NDE5NDkKKwkubG9uZwkzMTkyMDIwNDQwCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzI1NjEyNDYKKwkubG9uZwkzMjgxMzEwMjYyCisJLmxvbmcJMTA0NTU4Njc4NgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzI1NTczMzUKKwkubG9uZwkzNzc1MTc5NDA2CisJLmxvbmcJMTA0NTIyNjA1NQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNTUzNDI4CisJLmxvbmcJNjQzNDcyMzU2CisJLmxvbmcJMzE5MzY4MTc4NgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyNTQ5NTI3CisJLmxvbmcJMjQ4MTY5Nzc1CisJLmxvbmcJMTA0NTA2ODk3NworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNTQ1NjMwCisJLmxvbmcJMzA3MDE2NjMyCisJLmxvbmcJMTA0MjY0MDkzMgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNTQxNzM5CisJLmxvbmcJMzg3MjcxODUyNgorCS5sb25nCTMxODk3ODE0ODYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyNTM3ODUzCisJLmxvbmcJOTY5NzExNjMwCisJLmxvbmcJMzE5MTcyNDczMgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNTMzOTcxCisJLmxvbmcJNDAxODgyMDM5NAorCS5sb25nCTMxOTMxODkyNjQKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjUzMDA5NQorCS5sb25nCTMxMDIyMzMwOTIKKwkubG9uZwkxMDQ1NTEwMjI0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzI1MjYyMjMKKwkubG9uZwkxMDI5MzA3OTEyCisJLmxvbmcJMzE5MzgxMjc3NgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyNTIyMzU3CisJLmxvbmcJOTg0MDgzMTUzCisJLmxvbmcJMTA0NTk4NzQwMworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNTE4NDk1CisJLmxvbmcJNDE3MTQ1NTQwMQorCS5sb25nCTMxOTMwODQwODAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjUxNDYzOQorCS5sb25nCTI1OTI2NjA3NTcKKwkubG9uZwkxMDQ2MTIxNjkxCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzI1MTA3ODcKKwkubG9uZwkyOTY0MzY1NzEyCisJLmxvbmcJMTA0NjA1NDQ1MworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNTA2OTQwCisJLmxvbmcJMzc5Mjc3Nzg3NworCS5sb25nCTMxOTM3MDQ3MjkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjUwMzA5OAorCS5sb25nCTI5NDg1MzYxMDQKKwkubG9uZwkzMTkyNDY3MTAwCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI0OTkyNjEKKwkubG9uZwkzODM2MDA1NjE5CisJLmxvbmcJMTA0MTg3MzE2NgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzI0OTU0MjkKKwkubG9uZwkzMTI0NTQzMTYwCisJLmxvbmcJMTA0NDQwOTE2OAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNDkxNjAxCisJLmxvbmcJMjg2MjI3OTMzCisJLmxvbmcJMTA0MTA2NTk5MAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyNDg3Nzc5CisJLmxvbmcJMjExMTI5Njc3NgorCS5sb25nCTMxOTM2MDQ0MTkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjQ4Mzk2MQorCS5sb25nCTI2MDY4MjIwMDEKKwkubG9uZwkzMTkyOTQwMzk0CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI0ODAxNDgKKwkubG9uZwkxOTQ2OTY4MDAKKwkubG9uZwkxMDQ2MDI2MDYzCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI0NzYzNDAKKwkubG9uZwk4NTM1NDUyCisJLmxvbmcJMTA0NjIwMDE3OAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzI0NzI1MzcKKwkubG9uZwk5NTA0NjM2MjUKKwkubG9uZwkzMTkyNzMxODk3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI0Njg3MzgKKwkubG9uZwk5NzM4MzE1NjYKKwkubG9uZwkxMDQ1NjgzMTk3CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzI0NjQ5NDQKKwkubG9uZwkzMzMwNDM1ODkyCisJLmxvbmcJMzE5MDI3NzU3NworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNDYxMTU1CisJLmxvbmcJMjA4NjkyMDk3CisJLmxvbmcJMzE5MzUxNzY1MQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNDU3MzcxCisJLmxvbmcJMjExMzA5NzQxNQorCS5sb25nCTEwNDQ3ODE3NDkKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjQ1MzU5MQorCS5sb25nCTEwODg4MDg5MzYKKwkubG9uZwkzMTkzNzE2MTQyCisJLmxvbmcJMAorCS5sb25nCTEwNzI0NDk4MTcKKwkubG9uZwkxNDQzMDAyMTI3CisJLmxvbmcJMzE5MzI1MDIwNQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyNDQ2MDQ2CisJLmxvbmcJMzk2NzM1NzQxOQorCS5sb25nCTEwNDYxMDk0NzcKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjQ0MjI4MQorCS5sb25nCTMwMTM1MTc4NjEKKwkubG9uZwkzMTkzMTU5NjkxCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI0Mzg1MjAKKwkubG9uZwkyNTI0NTg2Mjg2CisJLmxvbmcJMTA0NjEyMTk1MQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNDM0NzY0CisJLmxvbmcJMTQ3Njg5Mjg2MQorCS5sb25nCTEwNDY0MzQ3MzEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjQzMTAxMworCS5sb25nCTMwODk2NDA5NTAKKwkubG9uZwkzMTkyMzA1NzgwCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjQyNzI2NgorCS5sb25nCTM4MTIyNTU1MjkKKwkubG9uZwkxMDQ1NzMwODc5CisJLmxvbmcJMAorCS5sb25nCTEwNzI0MjM1MjQKKwkubG9uZwk5OTUzNTQ3NjIKKwkubG9uZwkzMTkxNTI4NjczCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI0MTk3ODYKKwkubG9uZwkzMjYwNTY3Njg0CisJLmxvbmcJMTA0NjI3MzY5NQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNDE2MDUzCisJLmxvbmcJMjczODIxMDI4NgorCS5sb25nCTMxOTE0NzE1MTYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyNDEyMzI1CisJLmxvbmcJMTkzMTg0OTgwNQorCS5sb25nCTEwNDQ1NjA0MDUKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjQwODYwMQorCS5sb25nCTM1ODg5NjY1NQorCS5sb25nCTEwNDQwMjkyMzcKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjQwNDg4MgorCS5sb25nCTIyMTQ1ODk4NDIKKwkubG9uZwkzMTkzMjAyMTI2CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzI0MDExNjcKKwkubG9uZwkzMTE4MDk3MzYzCisJLmxvbmcJMzE5MjU5MjkwNgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMzk3NDU3CisJLmxvbmcJMTgzNTk5ODg4NAorCS5sb25nCTEwNDU3ODgyNDcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjM5Mzc1MgorCS5sb25nCTE1ODU0ODgzMTkKKwkubG9uZwkxMDQ1Mjg5OTEwCisJLmxvbmcJMAorCS5sb25nCTEwNzIzOTAwNTEKKwkubG9uZwk0ODAxNjA5NDkKKwkubG9uZwkxMDQ2MDMwNDU1CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIzODYzNTQKKwkubG9uZwkxODMyOTU5NjY3CisJLmxvbmcJMzE5MzAxMzY0NAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMzgyNjYyCisJLmxvbmcJMzYxMTM0NjU1NQorCS5sb25nCTEwNDQ1NDQyMTAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjM3ODk3NQorCS5sb25nCTI3NDk0MTg3MzQKKwkubG9uZwkzMTkzNzEyNTgwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIzNzUyOTIKKwkubG9uZwkyMzkwMDQzNDcyCisJLmxvbmcJMzE5MTcxMDY1OAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMzcxNjEzCisJLmxvbmcJMjgyODE5OTkwMgorCS5sb25nCTEwNDIyNjUyMTcKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjM2NzkzOQorCS5sb25nCTU2OTIwOTMyMQorCS5sb25nCTMxOTEyMzA5ODIKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMzY0MjcwCisJLmxvbmcJMjM2MTU5MTM5CisJLmxvbmcJMTA0NjI0MDEyMworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIzNjA2MDUKKwkubG9uZwkxMDEwNjU2MjcwCisJLmxvbmcJMzE5MzgxMzk2OAorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyMzU2OTQ0CisJLmxvbmcJMjQwOTA4MDU5NworCS5sb25nCTEwNDQwMjUwMjkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMzUzMjg4CisJLmxvbmcJNTk4NDE5NTEzCisJLmxvbmcJMTA0MzMyNzM3MAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMzQ5NjM2CisJLmxvbmcJNDEwNTk1MDQ3OQorCS5sb25nCTEwNDU3NDc5NTgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjM0NTk4OAorCS5sb25nCTM0MzI0Mzg1MworCS5sb25nCTMxOTI0MjAxNzIKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjM0MjM0NQorCS5sb25nCTIwODg0Mzk1MzAKKwkubG9uZwkxMDQ2MTcyMDkxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjMzODcwNworCS5sb25nCTQxMTc3MjExMDcKKwkubG9uZwkxMDQzODgyNDk2CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIzMzUwNzIKKwkubG9uZwkzMTkyMDMyOTU4CisJLmxvbmcJMzE5Mjk5ODY0NQorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMzMxNDQyCisJLmxvbmcJMjM2NjUyMjUxOAorCS5sb25nCTEwNDU0MDE5NTcKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjMyNzgxNworCS5sb25nCTM2ODU1MzMxNDEKKwkubG9uZwkzMTkzNzAxOTQ3CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjMyNDE5NgorCS5sb25nCTEwNTg2NTg2NzIKKwkubG9uZwkzMTkzNTcyNDkyCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjMyMDU3OQorCS5sb25nCTE2NjM0NjM0NworCS5sb25nCTEwNDU0NTYzNDgKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjMxNjk2NgorCS5sb25nCTIwMjc4ODk3NzIKKwkubG9uZwkxMDQ2MzQ5MzAyCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIzMTMzNTgKKwkubG9uZwkxMDc5NDk3ODg4CisJLmxvbmcJMTA0NDU4NTI1OQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMzA5NzU0CisJLmxvbmcJMjE4OTg1MTU3MworCS5sb25nCTEwNDUxMzI5OTAKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjMwNjE1NAorCS5sb25nCTI0ODY2MjkzODYKKwkubG9uZwkzMTkzNjEzNjI1CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjMwMjU1OQorCS5sb25nCTEyNjM2ODY1NzkKKwkubG9uZwkxMDQ0Nzg5MjU5CisJLmxvbmcJMAorCS5sb25nCTEwNzIyOTg5NjgKKwkubG9uZwkyNDEyMDYxNzk4CisJLmxvbmcJMzE5MTM2OTYyNworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIyOTUzODEKKwkubG9uZwk1ODQzMTU3MTYKKwkubG9uZwkzMTkzMTQ0MTM1CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIyOTE3OTgKKwkubG9uZwk0NDkwMDA3MzgKKwkubG9uZwkxMDQ2MzMwNDUxCisJLmxvbmcJMAorCS5sb25nCTEwNzIyODgyMjAKKwkubG9uZwkzOTM4MzIwMTU3CisJLmxvbmcJMTA0NDQ0NjIyMAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMjg0NjQ1CisJLmxvbmcJMjk0OTg0NDU5NQorCS5sb25nCTMxOTM0NjIzNzEKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjI4MTA3NQorCS5sb25nCTI3NzEzMjk2NDIKKwkubG9uZwkzMTkyMTIxNTkzCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjI3NzUxMAorCS5sb25nCTM5NzE1MDg2MjEKKwkubG9uZwkzMTkzMDAyODA2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIyNzM5NDgKKwkubG9uZwk0MDcxOTQyMzAxCisJLmxvbmcJMTA0NDk1MjYxOQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIyNzAzOTEKKwkubG9uZwkyMDkwNTAyMzk1CisJLmxvbmcJMTA0NDY2MDU1NgorCS5sb25nCTAKKwkubG9uZwkxMDcyMjY2ODM4CisJLmxvbmcJMzY1NzUyMDk2MQorCS5sb25nCTMxOTM3NzA5MzgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjI2MzI4OAorCS5sb25nCTE2MDgxNzUxMTAKKwkubG9uZwkxMDQ1NTQzMjM5CisJLmxvbmcJMAorCS5sb25nCTEwNzIyNTk3NDQKKwkubG9uZwkyNTA2OTI0MTgwCisJLmxvbmcJMTA0NTUzMDUwMQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMjU2MjAzCisJLmxvbmcJMTgyMzg0OTMKKwkubG9uZwkxMDQ2MzA1NjIzCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIyNTI2NjYKKwkubG9uZwkzODYyNjQwNDg3CisJLmxvbmcJMzE5Mjg4MjQwNworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMjQ5MTM0CisJLmxvbmcJMzg1MDE1ODc2MQorCS5sb25nCTEwNDM2NTYwOTkKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjI0NTYwNQorCS5sb25nCTIzNTY1MjQzNTYKKwkubG9uZwkxMDQ1OTE1Mjk2CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIyNDIwODEKKwkubG9uZwk5MzY0OTcyODcKKwkubG9uZwkzMTkzODQyMzUzCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIyMzg1NjEKKwkubG9uZwkyODQwODQ1MzQ0CisJLmxvbmcJMTA0NjQ1NDc3MQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMjM1MDQ1CisJLmxvbmcJMzY4ODEwMDcxMworCS5sb25nCTEwNDQ4OTU0NTEKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjIzMTUzMworCS5sb25nCTQ3OTk3OTkxMworCS5sb25nCTMxOTM4NDI0NDIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjIyODAyNQorCS5sb25nCTEwMTYzMjE4OTgKKwkubG9uZwkxMDQ2MjUxMDMyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIyMjQ1MjEKKwkubG9uZwk1NjIyMzI0NzQKKwkubG9uZwkzMTkxOTc0NTU4CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjIyMTAyMgorCS5sb25nCTM4NzA1MTIwMjkKKwkubG9uZwkzMTkzMTEzODgxCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIyMTc1MjYKKwkubG9uZwkxMjM5NzgwNTQ3CisJLmxvbmcJMzE5MTU4MzYwNAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMjE0MDM0CisJLmxvbmcJMjgxNTQyMTMyNworCS5sb25nCTEwNDU4NzM2ODIKKwkubG9uZwkwCisJLmxvbmcJMTA3MjIxMDU0NworCS5sb25nCTIzNzEwMDk1NjEKKwkubG9uZwkxMDQxNTA4NzkyCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIyMDcwNjMKKwkubG9uZwkxMzA0NjM2NTI0CisJLmxvbmcJMzE5MjQxNDI4NAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMjAzNTgzCisJLmxvbmcJMjEwMTQ0ODU0CisJLmxvbmcJMzE5MzMyNzMzMworCS5sb25nCTAKKwkubG9uZwkxMDcyMjAwMTA4CisJLmxvbmcJMTQ1NDMwMzI3MgorCS5sb25nCTEwNDYzNjAwMjQKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjE5NjYzNgorCS5sb25nCTIwOTU3NTc1NDgKKwkubG9uZwkxMDQ0OTg0Njc3CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIxOTMxNjgKKwkubG9uZwkyMDI3MjE1NTgwCisJLmxvbmcJMzE5Mjg4MDkzMworCS5sb25nCTAKKwkubG9uZwkxMDcyMTg5NzA1CisJLmxvbmcJMjE0Nzk0ODgwCisJLmxvbmcJMTA0MzQ1Nzk1NAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMTg2MjQ1CisJLmxvbmcJODg0NjI0OTE3CisJLmxvbmcJMTA0MzQ5NzA3OQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMTgyNzg5CisJLmxvbmcJMjc5MjM5NjYzNAorCS5sb25nCTMxOTMxNzE2ODUKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjE3OTMzNworCS5sb25nCTQxMjg5OTUyNTAKKwkubG9uZwkzMTkyMTAzNDM0CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIxNzU4ODkKKwkubG9uZwkzMzM4NjYwNDMKKwkubG9uZwkxMDQ2MzcyMzI1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIxNzI0NDUKKwkubG9uZwkyMTk0NDQ1NTQ0CisJLmxvbmcJMzE5Mzk1ODkwNQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMTY5MDA1CisJLmxvbmcJMjMxNjA4MjI2OQorCS5sb25nCTMxOTIwNDE3MDMKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjE2NTU2OQorCS5sb25nCTU4MTAwNTA1NworCS5sb25nCTEwNDYzMjI4NDgKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMTYyMTM3CisJLmxvbmcJMzI4MDc4NjUxMworCS5sb25nCTEwNDU0NTcyNTEKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjE1ODcwOAorCS5sb25nCTI1NjcwOTMzNjEKKwkubG9uZwkxMDQ0NzEwMzU5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIxNTUyODQKKwkubG9uZwkzNzQwNDQzNTg0CisJLmxvbmcJMTA0NDIyNDIzNworCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMTUxODYzCisJLmxvbmcJMzk4MTAyODI3MgorCS5sb25nCTEwNDI1OTYzNTEKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjE0ODQ0NgorCS5sb25nCTM4MjAwMTExMjAKKwkubG9uZwkzMTkxOTE1NjIzCisJLmxvbmcJMAorCS5sb25nCTEwNzIxNDUwMzQKKwkubG9uZwkyOTQ2NDM5NDg0CisJLmxvbmcJMzE5MzgzMTI3NgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMTQxNjI0CisJLmxvbmcJMzA3NTI3NDQyMgorCS5sb25nCTMxOTAxMzI0MzIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjEzODIxOQorCS5sb25nCTQ5NjA1MjE2NworCS5sb25nCTEwNDM2MTk3NjAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjEzNDgxOAorCS5sb25nCTI3MTEwNjU4OQorCS5sb25nCTMxOTIyNjUxNDkKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjEzMTQyMAorCS5sb25nCTIwOTE5NTU2ODQKKwkubG9uZwkxMDQ0NDQzNTU0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIxMjgwMjYKKwkubG9uZwk3MjMyNDAxMDkKKwkubG9uZwkzMTkxMDA3NDE5CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIxMjQ2MzYKKwkubG9uZwkxNzQ4NjI5MDcwCisJLmxvbmcJMTA0NDUxMDA3NQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMTIxMjUwCisJLmxvbmcJMzI4OTUyMjA0NgorCS5sb25nCTMxOTMwOTUxNzgKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjExNzg2OAorCS5sb25nCTM1OTkwNTIxNDYKKwkubG9uZwkzMTkzNzIwNDI3CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIxMTQ0ODkKKwkubG9uZwkyNDQ2NzU4MTM1CisJLmxvbmcJMzE5MzQzNjMwMworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMTExMTE0CisJLmxvbmcJMTY1MjE3MTA5NworCS5sb25nCTMxOTIxMzcxNzMKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjEwNzc0MworCS5sb25nCTEzNTMwMDcxNTUKKwkubG9uZwkxMDQ0NTIzOTAyCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIxMDQzNzYKKwkubG9uZwk5OTA2MDExMDUKKwkubG9uZwkxMDQ2Mjk2NjYzCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIxMDEwMTIKKwkubG9uZwkyMjI4NjI3NjE4CisJLmxvbmcJMzE5MzA0MTA0MAorCS5sb25nCTAKKwkubG9uZwkxMDcyMDk3NjUzCisJLmxvbmcJODEyNDg0NzU2CisJLmxvbmcJMzE5MTk1MDcyMworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMDk0Mjk2CisJLmxvbmcJODE3ODMzMTMwCisJLmxvbmcJMzE5MjI3OTI0MgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMDkwOTQ0CisJLmxvbmcJMzU2MzIyODUyMQorCS5sb25nCTMxOTM4MTA5NTEKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjA4NzU5NQorCS5sb25nCTI3MjkxMDg4NTkKKwkubG9uZwkzMTkwOTM2MTg1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIwODQyNTAKKwkubG9uZwkyMjQ5MTIxNjYyCisJLmxvbmcJMzE5MDYzOTY5MAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMDgwOTA5CisJLmxvbmcJNDA4MjQ3MTc0NQorCS5sb25nCTMxOTM5MjkzNjgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjA3NzU3MQorCS5sb25nCTI4MjczMjM4MDYKKwkubG9uZwkzMTkzNzA4NTYxCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIwNzQyMzcKKwkubG9uZwk3MzU4NjYxNjcKKwkubG9uZwkxMDQyNDM0NjkwCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIwNzA5MDcKKwkubG9uZwkzMjQwODA4ODg5CisJLmxvbmcJMzE5MTkxODQyMgorCS5sb25nCTAKKwkubG9uZwkxMDcyMDY3NTgxCisJLmxvbmcJNDY2NDgyNzc3CisJLmxvbmcJMzE4Njk2MjIyMQorCS5sb25nCTAKKwkubG9uZwkxMDcyMDY0MjU4CisJLmxvbmcJMTU3NjA3NjI5NgorCS5sb25nCTEwNDU4NDkwNTYKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjA2MDkzOAorCS5sb25nCTI3NTE5MjM1NjAKKwkubG9uZwkzMTkxOTEwNzAzCisJLmxvbmcJMAorCS5sb25nCTEwNzIwNTc2MjMKKwkubG9uZwkxOTA4NzU1NTI3CisJLmxvbmcJMTA0NjQzNzUxNQorCS5sb25nCTAKKwkubG9uZwkxMDcyMDU0MzExCisJLmxvbmcJMzE3NTg0MTQxMQorCS5sb25nCTEwNDQ1NzI4ODYKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjA1MTAwMgorCS5sb25nCTE2MzMyNTg0NTAKKwkubG9uZwkzMTkyNjcwNDIwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIwNDc2OTcKKwkubG9uZwkxODY3NzQ2NjU3CisJLmxvbmcJMTA0NTcyNjIwOQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMDQ0Mzk2CisJLmxvbmcJMzM4OTY4ODY0CisJLmxvbmcJMzE5MzA4NDY2MgorCS5sb25nCTAKKwkubG9uZwkxMDcyMDQxMDk5CisJLmxvbmcJMTUwMTc0MjQ3MQorCS5sb25nCTMxOTE3NDIwMzEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjAzNzgwNQorCS5sb25nCTQyNjY3NzU3ODYKKwkubG9uZwkzMTkyNjg2OTcwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIwMzQ1MTQKKwkubG9uZwk0MjQ5MjgzNTUzCisJLmxvbmcJMTA0NTc2OTcyOAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMDMxMjI3CisJLmxvbmcJMjc1ODM2Njg3MworCS5sb25nCTEwNDY0MDIxNjEKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjAyNzk0NAorCS5sb25nCTIxNjExODY5OTAKKwkubG9uZwkxMDQ0NzM2ODY1CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIwMjQ2NjQKKwkubG9uZwk4MTAzMDAxNzEKKwkubG9uZwkxMDQ1NzQ4Nzc3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIwMjEzODgKKwkubG9uZwkxODM2ODg5MjcKKwkubG9uZwkzMTkxNTE1NTgxCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIwMTgxMTUKKwkubG9uZwkzNjg4NzQwNzIKKwkubG9uZwkzMTkyMzYzNTc1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIwMTQ4NDYKKwkubG9uZwkyNDU5MDkyOTcwCisJLmxvbmcJMTA0MTc5NDY0MAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIwMTE1ODEKKwkubG9uZwk4Njc0ODg2NDAKKwkubG9uZwkxMDQ2MzEwMjkxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjAwODMxOQorCS5sb25nCTUwMTQwODcxCisJLmxvbmcJMTA0MzMyNzMyOQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMDA1MDYwCisJLmxvbmcJMTI0MTkwMjUxOAorCS5sb25nCTMxOTI3MzkyNTIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjAwMTgwNQorCS5sb25nCTEwMjc4ODE2NTkKKwkubG9uZwkzMTkzODU4Mzg4CisJLmxvbmcJMAorCS5sb25nCTEwNzE5OTg1NTQKKwkubG9uZwkzODQ1NzMyMgorCS5sb25nCTEwNDU0ODkxNzkKKwkubG9uZwkwCisJLmxvbmcJMTA3MTk5NTMwNgorCS5sb25nCTM0MzI5NjMzMzcKKwkubG9uZwkzMTkwOTY5MzQ3CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE5OTIwNjEKKwkubG9uZwk1MzQ5MzE3OTIKKwkubG9uZwkxMDQ2MzAyNzM0CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE5ODg4MjAKKwkubG9uZwkxODE3ODk1MjY4CisJLmxvbmcJMzE5MjU1MTg2MAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxOTg1NTgyCisJLmxvbmcJMzU3MjM3MzgzCisJLmxvbmcJMzE5MTg3MDgzMworCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxOTgyMzQ4CisJLmxvbmcJMTA4MjYyNDAxCisJLmxvbmcJMzE5MzM2NTg2NworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxOTc5MTE3CisJLmxvbmcJMTk2NDcyOTI0NAorCS5sb25nCTEwNDI1MDIyNDkKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTk3NTg5MAorCS5sb25nCTIwODg0NDY5NTcKKwkubG9uZwkxMDM4MDEwNTAzCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE5NzI2NjYKKwkubG9uZwkyOTQ3MjM5NDQ3CisJLmxvbmcJMTA0NjM3Nzg0NQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcxOTY5NDQ2CisJLmxvbmcJNzc0OTMyMDcyCisJLmxvbmcJMTA0NjA2NDg1NAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxOTY2MjI5CisJLmxvbmcJNDA4MDkzNzU5MAorCS5sb25nCTMxOTMwNDEyODQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MTk2MzAxNQorCS5sb25nCTIyMDgyNTE0NTQKKwkubG9uZwkxMDQ1OTQ1MDg5CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE5NTk4MDUKKwkubG9uZwkyODUwOTI0NDc1CisJLmxvbmcJMTA0NTY1MDk1OQorCS5sb25nCTAKKwkubG9uZwkxMDcxOTU2NTk5CisJLmxvbmcJNzE0MDQwOTk3CisJLmxvbmcJMTA0NjI3NTE1MworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxOTUzMzk1CisJLmxvbmcJODU1MzM3ODIKKwkubG9uZwkzMTkyODE2OTIwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE5NTAxOTUKKwkubG9uZwkxMjUyNTExMDA1CisJLmxvbmcJMTA0NDgwNTcwNgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxOTQ2OTk5CisJLmxvbmcJMjM4NDY1OTAzOAorCS5sb25nCTMxOTMzOTE2MDIKKwkubG9uZwkwCisJLmxvbmcJMTA3MTk0MzgwNgorCS5sb25nCTQxNjQ4MTgxMworCS5sb25nCTEwNDM3MzAyMzMKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxOTQwNjE2CisJLmxvbmcJMTY3NTQyNDQ5OQorCS5sb25nCTEwNDYzNDgwMzAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTkzNzQyOQorCS5sb25nCTExNzU5ODk1MTMKKwkubG9uZwkzMTkzMDA5MTEzCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE5MzQyNDYKKwkubG9uZwkyNDAwMDg0NjUwCisJLmxvbmcJMzE5MjQ1MTcxMworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxOTMxMDY2CisJLmxvbmcJMTQ2NzMzNTY5MgorCS5sb25nCTMxOTMzNTA4NjgKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MTkyNzg5MAorCS5sb25nCTI2NjQ5MzgwMQorCS5sb25nCTEwNDQ5NTQ0ODEKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTkyNDcxNworCS5sb25nCTM5MTkwOTM0NDUKKwkubG9uZwkxMDQ2MDIzNTc1CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE5MjE1NDcKKwkubG9uZwkzMDE3NDA4NDgzCisJLmxvbmcJMTA0NDg4MDgyOAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE5MTgzODEKKwkubG9uZwk5NDg4NDk5NjYKKwkubG9uZwkzMTkzODkyMjI0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzE5MTUyMTcKKwkubG9uZwkxODcwMjMyNjAwCisJLmxvbmcJMTA0NTc3NzIyOAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE5MTIwNTgKKwkubG9uZwk4MjIzODE0OTIKKwkubG9uZwkzMTkzNjM5MTg2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE5MDg5MDEKKwkubG9uZwk3ODgyNDM3MDUKKwkubG9uZwkxMDQ0OTY2MzQzCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE5MDU3NDgKKwkubG9uZwkxMzQ0Mjc4ODA5CisJLmxvbmcJMTA0NDQyODU0NQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxOTAyNTk4CisJLmxvbmcJMTcyODY0MzAwCisJLmxvbmcJMTA0NTc2NTYwOAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxODk5NDUxCisJLmxvbmcJMjExNTU1NDY3CisJLmxvbmcJMzE5Mjk2MzU3NAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE4OTYzMDgKKwkubG9uZwkzMzczNDM4MDIzCisJLmxvbmcJMTA0NTY0MzE2OAorCS5sb25nCTAKKwkubG9uZwkxMDcxODkzMTY4CisJLmxvbmcJMjg2NzE4MDk2MAorCS5sb25nCTMxODk5NDU5OTgKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxODkwMDMxCisJLmxvbmcJMzY3MjQzNjIKKwkubG9uZwkzMTkzMjQwNTg0CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE4ODY4OTcKKwkubG9uZwkyMTQwMTc2OTg0CisJLmxvbmcJMTA0NTk0NTM0OQorCS5sb25nCTAKKwkubG9uZwkxMDcxODgzNzY3CisJLmxvbmcJNDM2ODQyMzYwCisJLmxvbmcJMTA0MDcxMjU4NworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxODgwNjM5CisJLmxvbmcJMTIyNTE0NzMyOQorCS5sb25nCTMxOTM4MTQ1OTQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MTg3NzUxNQorCS5sb25nCTE1ODYxNTczNDgKKwkubG9uZwkzMTkxNjE0MzIyCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTg3NDM5NQorCS5sb25nCTMzMjkzMzI5MTgKKwkubG9uZwkxMDQxNjk5NzkxCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE4NzEyNzcKKwkubG9uZwkxNjM1OTY4MDQxCisJLmxvbmcJMzE5MTc4Mzc1NgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxODY4MTYzCisJLmxvbmcJMjg3NjE1ODM4MgorCS5sb25nCTEwNDYwOTcwOTMKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTg2NTA1MgorCS5sb25nCTQyNjc1NTY5NjQKKwkubG9uZwkzMTkzNzIzMDAwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE4NjE5NDQKKwkubG9uZwkxOTU0NzU5NDAKKwkubG9uZwkxMDQ1NTIwNzk1CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE4NTg4MzkKKwkubG9uZwkyMjM5MTkzNTE0CisJLmxvbmcJMTA0NjQ3ODY3NQorCS5sb25nCTAKKwkubG9uZwkxMDcxODU1NzM4CisJLmxvbmcJNDE2ODI3NTU5NgorCS5sb25nCTEwNDQ5MjYyODUKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTg1MjYzOQorCS5sb25nCTE0MjUxNDExNAorCS5sb25nCTEwNDU1OTUxODIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTg0OTU0NAorCS5sb25nCTE5NDM0NTc5ODQKKwkubG9uZwkzMTkyOTMwMDE1CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE4NDY0NTIKKwkubG9uZwkyMDI2NTk0ODkKKwkubG9uZwkzMTkzOTI2MzE3CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE4NDMzNjMKKwkubG9uZwkyMjA4NDA4Nzg5CisJLmxvbmcJMzE5Mzg1NzQ4NAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxODQwMjc3CisJLmxvbmcJMjIzNzI5NzU1MgorCS5sb25nCTMxOTI5Mzk1NzYKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTgzNzE5NQorCS5sb25nCTI3MjY5MjA4MzkKKwkubG9uZwkxMDQ0MTkzOTU0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzE4MzQxMTUKKwkubG9uZwkyMzM3NzMyMjA3CisJLmxvbmcJMzE5MzYxMTc3MworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxODMxMDM5CisJLmxvbmcJMTM5MDA4ODYwMgorCS5sb25nCTEwNDQwMDAzMTcKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MTgyNzk2NgorCS5sb25nCTM4MDYxODg3MzYKKwkubG9uZwkzMTkzNDYzOTEzCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE4MjQ4OTYKKwkubG9uZwkxNzk1Mjc2NTYwCisJLmxvbmcJMTA0MzY3MTk2NQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxODIxODI5CisJLmxvbmcJMjk2MDc5Mjc5OQorCS5sb25nCTEwNDYyNDA0NzQKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTgxODc2NQorCS5sb25nCTMzNTA1OTE1OTIKKwkubG9uZwkzMTkzMzMzOTM5CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE4MTU3MDQKKwkubG9uZwk0MDg4NzA3NTQKKwkubG9uZwkzMTkzMzIyODU0CisJLmxvbmcJMAorCS5sb25nCTEwNzE4MTI2NDcKKwkubG9uZwk0MTQ2NzE3MTMyCisJLmxvbmcJMTA0NjA2MzUyMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxODA5NTkyCisJLmxvbmcJMTY4MTExNDkxOQorCS5sb25nCTMxOTIxMTQzMTMKKwkubG9uZwkwCisJLmxvbmcJMTA3MTgwNjU0MQorCS5sb25nCTEwOTgzOTMxMzcKKwkubG9uZwkzMTkwODQ2NzMyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE4MDM0OTIKKwkubG9uZwkyNDM3NDg0OTgzCisJLmxvbmcJMzE5MzQ0ODcxOAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxODAwNDQ3CisJLmxvbmcJMTAzNjgwOTE4NQorCS5sb25nCTMxOTIwMjM1MDEKKwkubG9uZwkwCisJLmxvbmcJMTA3MTc5NzQwNQorCS5sb25nCTY1OTY2ODg0OAorCS5sb25nCTMxOTM1OTYzMTIKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTc5NDM2NQorCS5sb25nCTExMTIwNjI0NTkKKwkubG9uZwkzMTkyNzczMzc2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE3OTEzMjkKKwkubG9uZwk0MDgyOTU2MzM1CisJLmxvbmcJMTA0NTgzMDUxMworCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcxNzg4Mjk2CisJLmxvbmcJMjM4NzA4OTk2NQorCS5sb25nCTEwNDU1MzI2MDEKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MTc4NTI2NgorCS5sb25nCTE1MjIxMDE5ODAKKwkubG9uZwkzMTkzOTQxOTU3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE3ODIyMzkKKwkubG9uZwkyMTU3MTk3NTg1CisJLmxvbmcJMzE4ODE5MzMwNQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNzc5MjE1CisJLmxvbmcJOTQ2ODEwMjIwCisJLmxvbmcJMzE5MzIyMzgxOQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNzc2MTk0CisJLmxvbmcJNDA2OTk0MjQ0NAorCS5sb25nCTMxOTM4Nzg1NDkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNzczMTc2CisJLmxvbmcJMTY5MzQ2MzQ0MAorCS5sb25nCTEwNDYzNjA1ODgKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNzcwMTYxCisJLmxvbmcJMTk1NDU0MzI1NAorCS5sb25nCTEwNDY0MDkzODEKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTc2NzE0OQorCS5sb25nCTEwNTA0NzEyNDkKKwkubG9uZwkzMTkzOTMzMDk1CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTc2NDE0MAorCS5sb25nCTEyNTYyNDA0NzgKKwkubG9uZwkxMDQ2NDU2ODY1CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTc2MTEzNAorCS5sb25nCTY3Njc2NDI1NAorCS5sb25nCTEwNDYwNTU1MDMKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNzU4MTMxCisJLmxvbmcJMTQyMTAzMjk2NworCS5sb25nCTEwNDQ3Nzk3ODYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNzU1MTMxCisJLmxvbmcJMzg3MzU5OTIKKwkubG9uZwkzMTkyNzY2MzU1CisJLmxvbmcJMAorCS5sb25nCTEwNzE3NTIxMzQKKwkubG9uZwkyOTYwNjY5NjkwCisJLmxvbmcJMTA0NDQ4NDY4MAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxNzQ5MTM5CisJLmxvbmcJNzg4NzA3MzgyCisJLmxvbmcJMTA0NTI5OTg5NQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxNzQ2MTQ4CisJLmxvbmcJNjg1Njg5MzAwCisJLmxvbmcJMTA0MDc3ODgzMQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxNzQzMTYwCisJLmxvbmcJMTE3MDk5NDE4MgorCS5sb25nCTEwNDYxNTkxNzQKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTc0MDE3NQorCS5sb25nCTY0NTkxNDM2CisJLmxvbmcJMTA0NjE1Mzg0OQorCS5sb25nCTAKKwkubG9uZwkxMDcxNzM3MTkzCisJLmxvbmcJMjMzODAzMTY1OQorCS5sb25nCTMxODk5OTc3MDIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTczNDIxMworCS5sb25nCTE5NDE2MjQ1NjgKKwkubG9uZwkzMTg2NzUyNjc2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTczMTIzNworCS5sb25nCTE0MDEyNTU1ODAKKwkubG9uZwkxMDQ2MzgzOTkwCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE3MjgyNjMKKwkubG9uZwkzNzY4ODg0MjcKKwkubG9uZwkxMDQ1ODk2NDU2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTcyNTI5MworCS5sb25nCTI4MzE0MjQ2MzkKKwkubG9uZwkzMTkzNTM5MTA5CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE3MjIzMjUKKwkubG9uZwkzMzAzMTIzNjk2CisJLmxvbmcJMTA0NDU5OTQxNQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxNzE5MzYwCisJLmxvbmcJMTA3NzI5NTMyOQorCS5sb25nCTMxODk4NzczNzIKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTcxNjM5OAorCS5sb25nCTE0MzQwNjEwOTkKKwkubG9uZwkzMTg0NTI5NzcxCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE3MTM0MzkKKwkubG9uZwkyMTA0OTkxNTkwCisJLmxvbmcJMTA0NTA2MjA3NAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxNzEwNDgzCisJLmxvbmcJNzIyMDYwODY5CisJLmxvbmcJMzE5Mzc4ODUyNgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE3MDQ1ODAKKwkubG9uZwkzOTI4Nzk2NDg2CisJLmxvbmcJMTA0NjEyOTAyMAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE2OTg2ODgKKwkubG9uZwk1ODg4NDQ2MjgKKwkubG9uZwkxMDQ1NDkyMTM1CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE2OTI4MDcKKwkubG9uZwkzMjY3MzkzNjYKKwkubG9uZwkzMTkzMDA0NDQ1CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE2ODY5MzgKKwkubG9uZwkyNDU2NDM2MDQyCisJLmxvbmcJMTA0NjI3ODE2OQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxNjgxMDgwCisJLmxvbmcJMjgzMTMwMzUxMgorCS5sb25nCTEwNDM2NzAwNDYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNjc1MjM0CisJLmxvbmcJNjA3MjIzNDE4CisJLmxvbmcJMTA0NTUwNzMyMgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjY5Mzk5CisJLmxvbmcJNDI1NDkyMTMzMgorCS5sb25nCTMxOTMyOTA0ODMKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY2MzU3NQorCS5sb25nCTkxNDk5NDMzMworCS5sb25nCTMxOTEyNjM4NTMKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTY1Nzc2MgorCS5sb25nCTQxNDcwNTAxODAKKwkubG9uZwkzMTkzMjI4NTUyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE2NTE5NjAKKwkubG9uZwk1OTQ1NTQxNTcKKwkubG9uZwkzMTkzNTAzOTM1CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDYxNzAKKwkubG9uZwkxMDYyODQ2Nzk2CisJLmxvbmcJMTA0NTk0NDMzMQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNjM2MTA5CisJLmxvbmcJMjkwOTIzODg5MworCS5sb25nCTMxOTM0MzY4ODQKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTYyNDU3MgorCS5sb25nCTE2ODI5MTgxMTkKKwkubG9uZwkxMDQyMjExODk5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE2MTMwNTcKKwkubG9uZwkyNDE5MjA5NDI2CisJLmxvbmcJMTA0NTQzNzA2MgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNjAxNTY0CisJLmxvbmcJMjk1MTM0MTMyMQorCS5sb25nCTMxOTAxOTMyMTQKKwkubG9uZwkwCisJLmxvbmcJMTA3MTU5MDA5MworCS5sb25nCTMwODQ5MDA4NzUKKwkubG9uZwkzMTkyMzk0OTA3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE1Nzg2NDMKKwkubG9uZwk5OTk1Njc0NTQKKwkubG9uZwkxMDQ2NDMzNDQ3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE1NjcyMTUKKwkubG9uZwkxNTcwMTAxODU3CisJLmxvbmcJMzE5MzI5MTE2MAorCS5sb25nCTAKKwkubG9uZwkxMDcxNTU1ODA5CisJLmxvbmcJMTA4MDY0Nzg4MQorCS5sb25nCTMxODUxNTQ1ODUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTU0NDQyNAorCS5sb25nCTM1MjYzMDkxNzcKKwkubG9uZwkxMDQ0ODQzNjQwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE1MzMwNjAKKwkubG9uZwkyMjEzNDYzMzQ5CisJLmxvbmcJMzE5MTczODkzMAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNTIxNzE4CisJLmxvbmcJMTAzOTkyNTE5NQorCS5sb25nCTMxOTI2MTgzNTMKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTUxMDM5NworCS5sb25nCTIxMTU3NTcyODAKKwkubG9uZwkzMTkzNjcxNTY3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE0OTkwOTcKKwkubG9uZwkxMTg4NzUxNDk1CisJLmxvbmcJMzE5MTE0NTU2MAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxNDg3ODE4CisJLmxvbmcJMzk4MzQ2MTQ0OQorCS5sb25nCTMxOTM4OTcwMjkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTQ3NjU2MAorCS5sb25nCTc4MjE0MTUwMAorCS5sb25nCTEwNDI4Nzk5NjIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTQ2NTMyMworCS5sb25nCTQwMzg5MDQ2MjYKKwkubG9uZwkxMDQ1MDYzODgxCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE0NTQxMDcKKwkubG9uZwkyNjEzMDM2OTIxCisJLmxvbmcJMzE5MzIxNzY0MgorCS5sb25nCTAKKwkubG9uZwkxMDcxNDQyOTEyCisJLmxvbmcJMjA5NTcyMzQzNQorCS5sb25nCTEwNDQ2MjkxNzUKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTQzMTczNworCS5sb25nCTM4Nzk3OTU5NzQKKwkubG9uZwkxMDQ1NzY3ODc0CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE0MjA1ODMKKwkubG9uZwkyNjYyMTk4MDQyCisJLmxvbmcJMzE5MTQzNDYzNworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxNDA5NDQ5CisJLmxvbmcJNDAzNzYwNTcyMgorCS5sb25nCTMxOTM3MDMwOTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTM5ODMzNgorCS5sb25nCTE4NjAzMzE4MzUKKwkubG9uZwkxMDQwODE0ODIyCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzEzODcyNDMKKwkubG9uZwkxNTIyOTcyMDMzCisJLmxvbmcJMzE5MDMwNTk3NAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxMzc2MTcxCisJLmxvbmcJMjM2MTUzNDIwNworCS5sb25nCTEwNDM2OTkzNjYKKwkubG9uZwkwCisJLmxvbmcJMTA3MTM2NTExOQorCS5sb25nCTQxODAzMDkxNzkKKwkubG9uZwkxMDQ0MTQyMDk5CisJLmxvbmcJMAorCS5sb25nCTEwNzEzNTQwODcKKwkubG9uZwkxMjAxMDM4NTI4CisJLmxvbmcJMzE5Mjk2ODc3MgorCS5sb25nCTAKKwkubG9uZwkxMDcxMzQzMDc1CisJLmxvbmcJMTM0MjQ3ODE3MQorCS5sb25nCTMxOTMyNTEyMTUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTMzMjA4MworCS5sb25nCTM4MzY4ODMzNDgKKwkubG9uZwkzMTkzNDcyMDA3CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzEzMjExMTAKKwkubG9uZwkzODY0ODc0MjUwCisJLmxvbmcJMTA0NTU5MzEyNgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMzEwMTU4CisJLmxvbmcJMjE2OTQ5NDk5OAorCS5sb25nCTEwNDYwNDUzNDYKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTI5OTIyNgorCS5sb25nCTM3ODUxNjUwNzUKKwkubG9uZwkzMTkzMzE5MjQ2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzEyODgzMTMKKwkubG9uZwkxMTM3NjkyNjc4CisJLmxvbmcJMzE5MjcxNjc3OQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxMjc3NDIwCisJLmxvbmcJMTc1MjEwNzU5OAorCS5sb25nCTEwNDYzNjYxMjAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTI2NjU0NgorCS5sb25nCTE5MTI2NTY5MTIKKwkubG9uZwkxMDQ2MzUyMjgxCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzEyNTU2OTIKKwkubG9uZwkyODgyNjc2MzM0CisJLmxvbmcJMTA0NjQwNjM1MworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxMjQ0ODU4CisJLmxvbmcJOTYzNjEyNDYwCisJLmxvbmcJMTA0NTI4MjgxMQorCS5sb25nCTAKKwkubG9uZwkxMDcxMjM0MDQzCisJLmxvbmcJMzgxMTI1NTc3MworCS5sb25nCTEwNDYyMzE2MzYKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTIyMzI0NworCS5sb25nCTExMjYwNTU5ODkKKwkubG9uZwkzMTkyMjI0MDM3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzEyMTI0NzAKKwkubG9uZwkyMDc5MTQ1NDI3CisJLmxvbmcJMTA0NDQzMjQxMworCS5sb25nCTAKKwkubG9uZwkxMDcxMjAxNzEzCisJLmxvbmcJMzYxMTU5NTYyMQorCS5sb25nCTEwNDMzNTg3NDUKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTE5MDk3NAorCS5sb25nCTM5MDUyMjc2OQorCS5sb25nCTEwNDU4ODgyNTIKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTE4MDI1NQorCS5sb25nCTQwODc5Mzk3MjMKKwkubG9uZwkzMTkyOTMwNzQ1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzExNjk1NTQKKwkubG9uZwkxNDUxNDk0NDgwCisJLmxvbmcJMzE5MDIxOTI3NAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxMTU4ODczCisJLmxvbmcJNDI3MTc2MTk0CisJLmxvbmcJMzE5MzA0MjAyMgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMTQ4MjEwCisJLmxvbmcJMTg4MjM4MTk0OAorCS5sb25nCTMxOTI3Mjc5NDYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTEzNzU2NgorCS5sb25nCTM3MzYzMTM3NzEKKwkubG9uZwkzMTkyMDg3MDE5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzExMjY5NDEKKwkubG9uZwkxNTYwMzk4ODE2CisJLmxvbmcJMzE5MzE4NTcxNQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMTE2MzM0CisJLmxvbmcJMTAyMTk0MjQ0MQorCS5sb25nCTEwNDE1MjY2OTYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTEwNTc0NgorCS5sb25nCTM1MTcwODAyNDkKKwkubG9uZwkzMTkzNTc2MDQxCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzEwOTUxNzYKKwkubG9uZwkyMjQ4NTg5ODc4CisJLmxvbmcJMTA0NDUyNzYyNAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMDg0NjI1CisJLmxvbmcJMjQxMjg5NjY5NQorCS5sb25nCTEwNDYxMTI4NjcKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTA3NDA5MgorCS5sb25nCTM4MzQ3MjU3MzgKKwkubG9uZwkxMDQ0NTYyMzc4CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzEwNjM1NzgKKwkubG9uZwkxMTUwOTIwNDA3CisJLmxvbmcJMTA0Mzc2ODk4NgorCS5sb25nCTAKKwkubG9uZwkxMDcxMDUzMDgyCisJLmxvbmcJMTM3OTM5MzQyOAorCS5sb25nCTMxODg2OTA2OTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MTA0MjYwNAorCS5sb25nCTMwNTgxODMyNzgKKwkubG9uZwkzMTkzNjE3NjU1CisJLmxvbmcJMAorCS5sb25nCTEwNzEwMzIxNDQKKwkubG9uZwk0MjExMzM2NjUKKwkubG9uZwkzMTkzNDE3MTg2CisJLmxvbmcJMAorCS5sb25nCTEwNzEwMjE3MDIKKwkubG9uZwkyODYwMTYxMzU3CisJLmxvbmcJMzE5MTgxNjEyNQorCS5sb25nCTAKKwkubG9uZwkxMDcxMDExMjc4CisJLmxvbmcJMTc0MjQwNTk2NAorCS5sb25nCTEwNDM1ODAyNDAKKwkubG9uZwkwCisJLmxvbmcJMTA3MTAwMDg3MgorCS5sb25nCTI4MjEyMTU5MjcKKwkubG9uZwkzMTg4OTg0MjczCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA5OTA0ODMKKwkubG9uZwk1MTAyNzU1OTcKKwkubG9uZwkxMDQ1ODEzNDAxCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA5ODAxMTMKKwkubG9uZwkzMDQyNjY1ODgKKwkubG9uZwkzMTkxMTkzNTM2CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA5Njk3NjAKKwkubG9uZwkxODU0Nzg0MjExCisJLmxvbmcJMTA0NjMwMjA3MworCS5sb25nCTAKKwkubG9uZwkxMDcwOTU5NDI2CisJLmxvbmcJMzc3MzA4Mjg1NAorCS5sb25nCTMxOTMwMDg4OTkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDk0OTEwOAorCS5sb25nCTMwMDM1NzIzOTIKKwkubG9uZwkxMDQ2NDA0ODc5CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA5Mzg4MDgKKwkubG9uZwkxNzAyMTQ5MjA0CisJLmxvbmcJMTA0NjQwNzI1NworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwOTI4NTI2CisJLmxvbmcJMzkzNTMxNDQzOQorCS5sb25nCTEwNDY0MzgyODAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDkxODI2MQorCS5sb25nCTI2NzcwODc2MDkKKwkubG9uZwkxMDQ1NTAxNzQ5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA5MDgwMTQKKwkubG9uZwk0MTkwNTk4MDM5CisJLmxvbmcJMzE5MzY0MDUxNQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcwODk3Nzg0CisJLmxvbmcJMzY4ODc0MDcyCisJLmxvbmcJMTA0NDg3OTkyNworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwODg3NTcxCisJLmxvbmcJMzU4NDA1MjY5NworCS5sb25nCTMxOTIwMjQ2NjIKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDg3NzM3NQorCS5sb25nCTM3NjIzMDc4MjkKKwkubG9uZwkxMDQ1ODg2OTE4CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzA4NjcxOTcKKwkubG9uZwk0OTU3MTA5MjAKKwkubG9uZwkxMDQ2MzE3MDcyCisJLmxvbmcJMAorCS5sb25nCTEwNzA4NTcwMzYKKwkubG9uZwkyMjkyNzY4MjM4CisJLmxvbmcJMzE5MDg4NzUwOAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwODQ2ODkxCisJLmxvbmcJMTA0NDA3ODE1MQorCS5sb25nCTMxOTM3NzI5MTQKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MDgzNjc2NAorCS5sb25nCTMyNjYwMTA0NTcKKwkubG9uZwkxMDQzNDQzNzU1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA4MjY2NTMKKwkubG9uZwkzNTcxNjY1ODIyCisJLmxvbmcJMTA0NTU0NzgyMworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcwODE2NTYwCisJLmxvbmcJMzkzMzQ4MzQ3CisJLmxvbmcJMzE5MDUyNTE0MworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwODA2NDgzCisJLmxvbmcJNDI0MTcyMjQ5OAorCS5sb25nCTMxOTIwODQxOTMKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDc5NjQyMworCS5sb25nCTE2OTM3OTcwNjgKKwkubG9uZwkzMTkyODA3OTcyCisJLmxvbmcJMAorCS5sb25nCTEwNzA3ODYzODAKKwkubG9uZwkyODYwMDg2NzQ1CisJLmxvbmcJMTA0NjMzMTY0NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNzc2MzUzCisJLmxvbmcJMTM2NjE0MTc1OQorCS5sb25nCTMxOTI5NzkzNjMKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MDc2NjM0MworCS5sb25nCTczNzg5OTI4MworCS5sb25nCTEwNDU4NTMzNDYKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDc1NjM0OQorCS5sb25nCTg4NzM0ODczCisJLmxvbmcJMTA0Mzg4MTI1NworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwNzQ2MzcyCisJLmxvbmcJMTQzODAwMzMxNQorCS5sb25nCTMxOTI5MTcxMDEKKwkubG9uZwkwCisJLmxvbmcJMTA3MDczNjQxMgorCS5sb25nCTEwNjY1MDU1MzAKKwkubG9uZwkxMDQzODk2Njk1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA3MjY0NjcKKwkubG9uZwkyNzA2NjUzMDQxCisJLmxvbmcJMzE5MTExMzY0MworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwNzE2NTM5CisJLmxvbmcJMTMyMTc2NDQ3NgorCS5sb25nCTEwMzk1NzM3MjQKKwkubG9uZwkwCisJLmxvbmcJMTA3MDcwNjYyOAorCS5sb25nCTExMjY3NTMyMTEKKwkubG9uZwkxMDQ0NTAyOTc2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA2OTY3MzIKKwkubG9uZwk3NzM2NDI4ODQKKwkubG9uZwkxMDQ0MTEwNzI3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzA2ODY4NTMKKwkubG9uZwkxMjYzNzQzNDA2CisJLmxvbmcJMzE5MzExNTI3OAorCS5sb25nCTAKKwkubG9uZwkxMDcwNjc2OTkwCisJLmxvbmcJMzExNTIzNzczMgorCS5sb25nCTMxOTMwODkxNzYKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDY2NzE0MgorCS5sb25nCTM2NDI2MjY4MzgKKwkubG9uZwkzMTkxMTQ2MDMyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA2NTczMTEKKwkubG9uZwkyMDkxNjk2NDI4CisJLmxvbmcJMTA0NDMzNzE3NworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcwNjQ3NDk2CisJLmxvbmcJMzE2ODk1ODM5MQorCS5sb25nCTEwNDQxOTc1NjgKKwkubG9uZwkwCisJLmxvbmcJMTA3MDYzNzY5NworCS5sb25nCTcxMTE0ODY2OQorCS5sb25nCTMxOTMxODEwNDcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDYyNzkxMworCS5sb25nCTQyMDcxODI3NzMKKwkubG9uZwkzMTkzNDAyMDkyCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA2MTgxNDUKKwkubG9uZwk5MTgwNzA2NDAKKwkubG9uZwkzMTkyOTAyODQ1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA2MDgzOTMKKwkubG9uZwkzMTM1NTcxNDQ3CisJLmxvbmcJMzE5MjE5MzkyOAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNTk4NjU3CisJLmxvbmcJMTA0MzcwNTUxNworCS5sb25nCTMxOTMxODg2MDQKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDU4MTc3NworCS5sb25nCTE4ODY2ODA0OTIKKwkubG9uZwkxMDQzODkwMjg2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA1NjIzNjcKKwkubG9uZwkzMzczNzk5NDIwCisJLmxvbmcJMzE5MTkxNzgwMgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNTQyOTg4CisJLmxvbmcJMjkxOTYxODAyNQorCS5sb25nCTMxOTI0NjE3NTIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDUyMzY0MAorCS5sb25nCTI5MjYzNjUxNTgKKwkubG9uZwkzMTkzMTEzNDkyCisJLmxvbmcJMAorCS5sb25nCTEwNzA1MDQzMjMKKwkubG9uZwk1MTk5Nzg2MzgKKwkubG9uZwkxMDQ1OTE4ODQ2CisJLmxvbmcJMAorCS5sb25nCTEwNzA0ODUwMzcKKwkubG9uZwkzNjY1MzUzMTUxCisJLmxvbmcJMzE5MzU0NjI0OAorCS5sb25nCTAKKwkubG9uZwkxMDcwNDY1NzgxCisJLmxvbmcJMjMyNzcxODk1OAorCS5sb25nCTEwNDUwNTA3OTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MDQ0NjU1NgorCS5sb25nCTM0NTMyNjg2MQorCS5sb25nCTMxODgyMjQ3MTYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDQyNzM2MQorCS5sb25nCTIyNjM3NDc0ODgKKwkubG9uZwkzMTkyODcxMzI4CisJLmxvbmcJMAorCS5sb25nCTEwNzA0MDgxOTcKKwkubG9uZwkzODk0MTkyMjY0CisJLmxvbmcJMTA0NTY5MzEyMworCS5sb25nCTAKKwkubG9uZwkxMDcwMzg5MDYzCisJLmxvbmcJOTk0MzIxNTkzCisJLmxvbmcJMTA0NjM0NzIwMworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwMzY5OTU5CisJLmxvbmcJMzU0MDM2NjcwMAorCS5sb25nCTEwNDIyOTYyMzAKKwkubG9uZwkwCisJLmxvbmcJMTA3MDM1MDg4NgorCS5sb25nCTk2NjQyMDc1MgorCS5sb25nCTMxOTI0MDA0MTIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDMzMTg0MgorCS5sb25nCTE5NTQ1MTExNjAKKwkubG9uZwkzMTkzNDY3NzYyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzAzMTI4MjgKKwkubG9uZwkxODc1MDAzMDQwCisJLmxvbmcJMTA0NTQ4NTYyOQorCS5sb25nCTAKKwkubG9uZwkxMDcwMjkzODQ1CisJLmxvbmcJNDAwMzM3MjAwNQorCS5sb25nCTMxOTM3MTQxMDkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDI3NDg5MAorCS5sb25nCTIyMTYwODM2NDQKKwkubG9uZwkxMDQ1NzIwMzk5CisJLmxvbmcJMAorCS5sb25nCTEwNzAyNTU5NjYKKwkubG9uZwkxMjQwOTg1NzQzCisJLmxvbmcJMTA0NTg3OTQxNAorCS5sb25nCTAKKwkubG9uZwkxMDcwMjM3MDcxCisJLmxvbmcJMTU3MzA2NDE2MgorCS5sb25nCTEwNDY0Mjc5MTYKKwkubG9uZwkwCisJLmxvbmcJMTA3MDIxODIwNgorCS5sb25nCTI1MDAxNjY1ODIKKwkubG9uZwkzMTkzODQ4MTY5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzAxOTkzNjkKKwkubG9uZwk4NjIxMzE1MzkKKwkubG9uZwkxMDQ1NjA2MDY1CisJLmxvbmcJMAorCS5sb25nCTEwNzAxODA1NjMKKwkubG9uZwkzNzMzNDI3NjIyCisJLmxvbmcJMzE5MzU0NTk4OAorCS5sb25nCTAKKwkubG9uZwkxMDcwMTYxNzg1CisJLmxvbmcJMTI0NTE1MzU4CisJLmxvbmcJMTA0NTUwNDc2NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwMTQzMDM2CisJLmxvbmcJNjg5MjI4MDA3CisJLmxvbmcJMTA0NDIzODQzNgorCS5sb25nCTAKKwkubG9uZwkxMDcwMTI0MzE3CisJLmxvbmcJOTc2Mjg0ODM1CisJLmxvbmcJMzE4OTg3OTk3OAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwMTA1NjI2CisJLmxvbmcJMjk5NzQ0NjIyNAorCS5sb25nCTMxOTMzOTQyNDQKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDA4Njk2NAorCS5sb25nCTU5NDk4NTE2MworCS5sb25nCTMxOTA0NTM0NDcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDA2ODMzMQorCS5sb25nCTM2MzQ0MTEwOTEKKwkubG9uZwkzMTkzMDEyNjYyCisJLmxvbmcJMAorCS5sb25nCTEwNzAwNDk3MjcKKwkubG9uZwk4NDEzMTY0ODIKKwkubG9uZwkzMTkyNTUxNjA0CisJLmxvbmcJMAorCS5sb25nCTEwNzAwMzExNTEKKwkubG9uZwk1MTg5NDk4NDkKKwkubG9uZwkzMTg5NTA1NjkzCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzAwMTI2MDMKKwkubG9uZwkyMDc2MzM2MDQKKwkubG9uZwkxMDQzNzkxMzA1CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk5OTQwODQKKwkubG9uZwk5MjU0MTU2MzEKKwkubG9uZwkzMTg5NjU4NjcwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk5NzU1OTMKKwkubG9uZwkzMzQ4Nzc1MDE1CisJLmxvbmcJMTA0NjIzMTA1NQorCS5sb25nCTAKKwkubG9uZwkxMDY5OTU3MTMxCisJLmxvbmcJNDEzNzU5Mzk2MQorCS5sb25nCTEwNDU3NjA2NDQKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTkzODY5NgorCS5sb25nCTMwODEyMDc5NzIKKwkubG9uZwkxMDQ2MzE5NjUyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk5MjAyOTAKKwkubG9uZwkyOTEyODExODA2CisJLmxvbmcJMzE5MzI1MDg2MworCS5sb25nCTAKKwkubG9uZwkxMDY5OTAxOTEyCisJLmxvbmcJMTcwNDY2MzIzMAorCS5sb25nCTMxOTI2NTExNzEKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTg4MzU2MQorCS5sb25nCTE3MjY4ODc0NzMKKwkubG9uZwkzMTkzNDI3ODE3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk4NjUyMzgKKwkubG9uZwk1MTYzMDI4NzMKKwkubG9uZwkxMDQyNTU2OTE5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk4NDY5NDMKKwkubG9uZwkzNzM3Mjc3Mjg5CisJLmxvbmcJMzE5MjA4MzUwNQorCS5sb25nCTAKKwkubG9uZwkxMDY5ODI4Njc2CisJLmxvbmcJMjgyOTkwOTA2NworCS5sb25nCTMxOTE2Mjg1MjAKKwkubG9uZwkwCisJLmxvbmcJMTA2OTgxMDQzNgorCS5sb25nCTM0NzQ4MDAyOTkKKwkubG9uZwkzMTg3Mzg0OTkxCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk3OTIyMjMKKwkubG9uZwkyMDQxMjkxNzU0CisJLmxvbmcJMzE4NjczNTA0OAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5Nzc0MDM4CisJLmxvbmcJMzEwMDczOTI5MAorCS5sb25nCTMxOTI5OTE5NTEKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTc1NTg4MAorCS5sb25nCTI2NDE2ODY4NjYKKwkubG9uZwkxMDQyNDQ5ODQ2CisJLmxvbmcJMAorCS5sb25nCTEwNjk3Mzc3NTAKKwkubG9uZwkxMzUzNjEyNDU3CisJLmxvbmcJMzE5MjkyODU0NAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5NzE5NjQ2CisJLmxvbmcJMTgyMzM5ODE5MAorCS5sb25nCTMxOTMxMjUxNTYKKwkubG9uZwkwCisJLmxvbmcJMTA2OTcwMTU3MAorCS5sb25nCTI2MjkxMDg1NTgKKwkubG9uZwkzMTkyOTgzMDg5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk2ODM1MjAKKwkubG9uZwkzMTQ4ODkwODAKKwkubG9uZwkzMTkzMTc4OTQ3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk2NjU0OTcKKwkubG9uZwkzNDI2ODQ2NDcwCisJLmxvbmcJMTA0NjA1NTAzNAorCS5sb25nCTAKKwkubG9uZwkxMDY5NjQ3NTAyCisJLmxvbmcJMjQ1MTUyMTc5OAorCS5sb25nCTMxOTMwODE0NDcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTYyOTUzMgorCS5sb25nCTk2MzIwMDAzMAorCS5sb25nCTEwNDYzMTUwODkKKwkubG9uZwkwCisJLmxvbmcJMTA2OTYxMTU5MAorCS5sb25nCTM2NDQ5NzY5ODcKKwkubG9uZwkxMDQ2NDUwMjk3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk1OTM2NzQKKwkubG9uZwkxNTE0MDQ1ODc0CisJLmxvbmcJMzE5MzMzNzQ4OQorCS5sb25nCTAKKwkubG9uZwkxMDY5NTc1Nzg1CisJLmxvbmcJMjY0MDc1MjYxNQorCS5sb25nCTMxOTI3MzQ3MTUKKwkubG9uZwkwCisJLmxvbmcJMTA2OTU1NzkyMgorCS5sb25nCTE3NzM4MTczMAorCS5sb25nCTMxOTMxMDczNDgKKwkubG9uZwkwCisJLmxvbmcJMTA2OTUzMjY1MAorCS5sb25nCTU0Njg3MTI2OQorCS5sb25nCTEwNDU2MDE4NDcKKwkubG9uZwkwCisJLmxvbmcJMTA2OTQ5NzAyOQorCS5sb25nCTIyMjA0MDgxODcKKwkubG9uZwkxMDQ1OTY0ODQ5CisJLmxvbmcJMAorCS5sb25nCTEwNjk0NjE0NjEKKwkubG9uZwkzMTAxMjA5Nzg0CisJLmxvbmcJMzE5MjQxNzA5OAorCS5sb25nCTAKKwkubG9uZwkxMDY5NDI1OTQ0CisJLmxvbmcJMzc2ODgyNTc4MgorCS5sb25nCTEwNDYxOTYxNzgKKwkubG9uZwkwCisJLmxvbmcJMTA2OTM5MDQ4MAorCS5sb25nCTczNzMwODk0MgorCS5sb25nCTEwNDM4NzI1NTUKKwkubG9uZwkwCisJLmxvbmcJMTA2OTM1NTA2OAorCS5sb25nCTE5NDQ4MDgxMTkKKwkubG9uZwkzMTkzMzYyMzE3CisJLmxvbmcJMAorCS5sb25nCTEwNjkzMTk3MDcKKwkubG9uZwk4NTI0MDYyNjEKKwkubG9uZwkzMTkxMDA0MjUwCisJLmxvbmcJMAorCS5sb25nCTEwNjkyODQzOTgKKwkubG9uZwkzMjAyMzcwNzQzCisJLmxvbmcJMzE5MjU0OTc5NgorCS5sb25nCTAKKwkubG9uZwkxMDY5MjQ5MTQwCisJLmxvbmcJOTAwNjMzOTc1CisJLmxvbmcJMTA0Mzg2MjU3NQorCS5sb25nCTAKKwkubG9uZwkxMDY5MjEzOTM0CisJLmxvbmcJMzQxNzE2ODU2NAorCS5sb25nCTMxOTMyMTMxNjgKKwkubG9uZwkwCisJLmxvbmcJMTA2OTE3ODc3OAorCS5sb25nCTI1MTMzMDk5NzIKKwkubG9uZwkxMDQ2MDUxOTUzCisJLmxvbmcJMAorCS5sb25nCTEwNjkxNDM2NzQKKwkubG9uZwkxODM2ODQ2OTY4CisJLmxvbmcJMTA0NDAzNjY1MworCS5sb25nCTAKKwkubG9uZwkxMDY5MTA4NjIxCisJLmxvbmcJNjc1MzkxMzYyCisJLmxvbmcJMzE5MzMzNDk3MgorCS5sb25nCTAKKwkubG9uZwkxMDY5MDczNjE4CisJLmxvbmcJMTg1OTM5ODA4NgorCS5sb25nCTMxOTE2Njg3MjkKKwkubG9uZwkwCisJLmxvbmcJMTA2OTAzODY2NgorCS5sb25nCTM4MzU5OTQwNDMKKwkubG9uZwkzMTkzMjUyMTk2CisJLmxvbmcJMAorCS5sb25nCTEwNjkwMDM3NjQKKwkubG9uZwk1NjMzMzcyNDYKKwkubG9uZwkzMTkyMDYwNTMwCisJLmxvbmcJMAorCS5sb25nCTEwNjg5Njg5MTIKKwkubG9uZwkzNzE1MTU0MjEwCisJLmxvbmcJMTA0NTU5MjcxNgorCS5sb25nCTAKKwkubG9uZwkxMDY4OTM0MTExCisJLmxvbmcJNTE0MTU2MzYKKwkubG9uZwkzMTkyMTkzOTM5CisJLmxvbmcJMAorCS5sb25nCTEwNjg4OTkzNTkKKwkubG9uZwk4MjIwNDkxMDgKKwkubG9uZwkxMDQ1ODQ2MDgwCisJLmxvbmcJMAorCS5sb25nCTEwNjg4NjQ2NTgKKwkubG9uZwkzNzM5MDQzMzQwCisJLmxvbmcJMzE5MzE4NDk0OQorCS5sb25nCTAKKwkubG9uZwkxMDY4ODMwMDA2CisJLmxvbmcJMjUwMDgyODk5NworCS5sb25nCTMxOTMxMTU2MzgKKwkubG9uZwkwCisJLmxvbmcJMTA2ODc5NTQwMworCS5sb25nCTE0NzkzMzUwODkKKwkubG9uZwkxMDQ1NDU4MjMzCisJLmxvbmcJMAorCS5sb25nCTEwNjg3NjA4NTAKKwkubG9uZwkxOTE0MDk4NTk4CisJLmxvbmcJMTA0NTA3OTgzMworCS5sb25nCTAKKwkubG9uZwkxMDY4NzI2MzQ2CisJLmxvbmcJMTQ3MDM3NDkwOQorCS5sb25nCTEwNDYxMjU0NzEKKwkubG9uZwkwCisJLmxvbmcJMTA2ODY5MTg5MgorCS5sb25nCTIwNDgxMDExODUKKwkubG9uZwkzMTkyOTYwMDI0CisJLmxvbmcJMAorCS5sb25nCTEwNjg2NTc0ODYKKwkubG9uZwk4MDExMDE4MDIKKwkubG9uZwkxMDQyNTIzNDU0CisJLmxvbmcJMAorCS5sb25nCTEwNjg2MjMxMjkKKwkubG9uZwk0MTIxNzE0NjcKKwkubG9uZwkxMDQ0Nzk5NDI1CisJLmxvbmcJMAorCS5sb25nCTEwNjg1ODg4MjEKKwkubG9uZwkyMTI0NTY2MDQ5CisJLmxvbmcJMTA0MDQ1OTg0MworCS5sb25nCTAKKwkubG9uZwkxMDY4NTU0NTYxCisJLmxvbmcJMjA4NzU1ODI2MworCS5sb25nCTEwNDYwODMxMDIKKwkubG9uZwkwCisJLmxvbmcJMTA2ODUyMDM1MAorCS5sb25nCTI5MDM4OTMxNgorCS5sb25nCTEwNDUyMjAwMjMKKwkubG9uZwkwCisJLmxvbmcJMTA2ODQ3MzQzMAorCS5sb25nCTM5MzczNzgxNQorCS5sb25nCTEwNDU3NzAwODUKKwkubG9uZwkwCisJLmxvbmcJMTA2ODQwNTIwMgorCS5sb25nCTMyNzMxMTE2NTgKKwkubG9uZwkzMTkzNTk0MzM2CisJLmxvbmcJMAorCS5sb25nCTEwNjgzMzcwNjgKKwkubG9uZwkzMDc2OTM1NDE5CisJLmxvbmcJMzE5MTk5MzkzNAorCS5sb25nCTAKKwkubG9uZwkxMDY4MjY5MDMwCisJLmxvbmcJMTU2NDI3OTcyMQorCS5sb25nCTEwNDA3MTM2MzIKKwkubG9uZwkwCisJLmxvbmcJMTA2ODIwMTA4OAorCS5sb25nCTE5NTAxMDM3ODcKKwkubG9uZwkzMTkxMjg1NDczCisJLmxvbmcJMAorCS5sb25nCTEwNjgxMzMyNDAKKwkubG9uZwkxMTEzMDE2MTcKKwkubG9uZwkxMDQ2MTQwNDcwCisJLmxvbmcJMAorCS5sb25nCTEwNjgwNjU0ODgKKwkubG9uZwkyNzQwOTMzNjU5CisJLmxvbmcJMTA0NjA5MTg5OAorCS5sb25nCTAKKwkubG9uZwkxMDY3OTk3ODMyCisJLmxvbmcJMTI2NzEzMTQ2MgorCS5sb25nCTMxOTI5NDcwMjQKKwkubG9uZwkwCisJLmxvbmcJMTA2NzkzMDI2OAorCS5sb25nCTYyOTc4NzM0MworCS5sb25nCTEwNDU1OTkxMTQKKwkubG9uZwkwCisJLmxvbmcJMTA2Nzg2MjgwMAorCS5sb25nCTI5NDMwMjk3NDYKKwkubG9uZwkzMTkxMTAwNjIxCisJLmxvbmcJMAorCS5sb25nCTEwNjc3OTU0MjYKKwkubG9uZwkyNTM4NjMxMTUxCisJLmxvbmcJMzE5Mzk1Mzk4OQorCS5sb25nCTAKKwkubG9uZwkxMDY3NzI4MTQ0CisJLmxvbmcJMzg4MTc5NTAzMworCS5sb25nCTMxOTEzNzczNjMKKwkubG9uZwkwCisJLmxvbmcJMTA2NzY2MDk1NgorCS5sb25nCTI3NTI3NDcwNTgKKwkubG9uZwkzMTg2MjUwMTAzCisJLmxvbmcJMAorCS5sb25nCTEwNjc1OTM4NjIKKwkubG9uZwk4OTIxNzAwMTQKKwkubG9uZwkzMTkzMzMwMzkwCisJLmxvbmcJMAorCS5sb25nCTEwNjc1MjY4NjAKKwkubG9uZwkyMDAwOTg1NzgzCisJLmxvbmcJMzE5Mjk2ODY0NworCS5sb25nCTAKKwkubG9uZwkxMDY3NDU5OTUwCisJLmxvbmcJMTk1NDA3NzMwNAorCS5sb25nCTEwNDQzOTk5MDgKKwkubG9uZwkwCisJLmxvbmcJMTA2NzMzNTkwMAorCS5sb25nCTQxMjA3MDI4NDcKKwkubG9uZwkzMTkzMTUwNzMwCisJLmxvbmcJMAorCS5sb25nCTEwNjcyMDI0NDgKKwkubG9uZwkzNTM0ODk5ODAKKwkubG9uZwkxMDQ1Njc2NzQ0CisJLmxvbmcJMAorCS5sb25nCTEwNjcwNjkxODQKKwkubG9uZwkyNjA5NjQzMzI0CisJLmxvbmcJMzE5MjEwODAwMQorCS5sb25nCTAKKwkubG9uZwkxMDY2OTM2MTAwCisJLmxvbmcJMjkwNDQzMzMxNworCS5sb25nCTEwNDQ4MzY1NDEKKwkubG9uZwkwCisJLmxvbmcJMTA2NjgwMzIwMAorCS5sb25nCTMxOTY1Njc5MAorCS5sb25nCTEwNDQ4NjM5MDQKKwkubG9uZwkwCisJLmxvbmcJMTA2NjY3MDQ4NAorCS5sb25nCTI0MDc5ODczMzEKKwkubG9uZwkzMTkyOTk1MDgzCisJLmxvbmcJMAorCS5sb25nCTEwNjY1Mzc5NDgKKwkubG9uZwkyNDM3NzQ2MTIwCisJLmxvbmcJMzE5MzEyNzczMworCS5sb25nCTAKKwkubG9uZwkxMDY2NDA1NTkyCisJLmxvbmcJNzYyNTcwMjE1CisJLmxvbmcJMzE4OTk0Njk5NworCS5sb25nCTAKKwkubG9uZwkxMDY2MTQ1MDQwCisJLmxvbmcJMzMxNzE1OTY5NAorCS5sb25nCTEwNDYwNjAxMjUKKwkubG9uZwkwCisJLmxvbmcJMTA2NTg4MTA1NgorCS5sb25nCTIzMTc4NDU4ODYKKwkubG9uZwkzMTkxNjc5MTc2CisJLmxvbmcJMAorCS5sb25nCTEwNjU2MTc0MjQKKwkubG9uZwkzNjY1MTk1ODE2CisJLmxvbmcJMTA0NTYzMzg1MworCS5sb25nCTAKKwkubG9uZwkxMDY1MzU0MTYwCisJLmxvbmcJMjAwODczMDM1NQorCS5sb25nCTMxOTM4OTgyMTEKKwkubG9uZwkwCisJLmxvbmcJMTA2NDgyOTI2NAorCS5sb25nCTM3NDYyMzYxOTIKKwkubG9uZwkxMDQ2MTIxNDcxCisJLmxvbmcJMAorCS5sb25nCTEwNjQzMDM2ODAKKwkubG9uZwk4ODUyOTY3NTMKKwkubG9uZwkzMTkxODUyNDQxCisJLmxvbmcJMAorCS5sb25nCTEwNjMyNTM2OTYKKwkubG9uZwk0NDk5NzY0OTUKKwkubG9uZwkzMTkyNjgyNjYzCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY1MjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjUyNDgKKwkubG9uZwkwCisJLmxvbmcJMTA3MzE2MDE5MgorCS5sb25nCTM3MDkxMzg1NworCS5sb25nCTMyMTA1ODcxMDUKKwkubG9uZwkxODQxOTE0MTMwCisJLmxvbmcJMzIxMzA1OTQ0OAorCS5sb25nCTM5OTUzNDE5MzgKKwkubG9uZwkzMjE0NjA3MTA1CisJLmxvbmcJMjY3NzM4MTIxMAorCS5sb25nCTMyMTYzMjA3MzEKKwkubG9uZwkzMDExNzc5ODgyCisJLmxvbmcJMzIxODQ3OTU0MgorCS5sb25nCTEzNjc4MzIwMzUKKwkubG9uZwkxMDY2NDAzMDU4CisJLmxvbmcJMjg5NDI4NTI0MworCS5sb25nCTEwNjc5MzY5MjMKKwkubG9uZwkxMjE1MjIxNDUyCisJLmxvbmcJMTA2OTgzNTEwMgorCS5sb25nCTM3MDkxMzg1NworCS5sb25nCTMyMTA1ODcxMDUKKwkubG9uZwkyNjc3MzgxMjEwCisJLmxvbmcJMzIxNjMyMDczMQorCS5sb25nCTQxNzI2NDI0MjkKKwkubG9uZwkxMDU2MDY4MzgyCisJLmxvbmcJMTIxNTIyMTQ1MQorCS5sb25nCTEwNjk4MzUxMDIKKwkubG9uZwkxMDkyNjM4MTU2CisJLmxvbmcJMzE4NDkyNTYxOAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk5OTcxOTU3NzYKKwkubG9uZwk0MjAwMjUwNTU5CisJLmxvbmcJMTA3MjY5NjA5MAorCS5sb25nCTI4MDgxMjczNDUKKwkubG9uZwkzMTYyODMwNTE0CisJLmxvbmcJMjg1MTgxMjE0OQorCS5sb25nCTEwNzI2OTg5NDEKKwkubG9uZwkyNTk1ODAyNTUxCisJLmxvbmcJMTAxNjgxNTkxMworCS5sb25nCTMzOTQxMTU4NQorCS5sb25nCTEwNzI3MDE4MDAKKwkubG9uZwkyNjQ1ODg5ODIKKwkubG9uZwkzMTYyNjg1MjMzCisJLmxvbmcJMTA0ODAxOTA0MQorCS5sb25nCTEwNzI3MDQ2NjYKKwkubG9uZwkxMzk4NDc0ODQ1CisJLmxvbmcJMzE2MTU1OTE3MQorCS5sb25nCTc3MjkxNDEyNAorCS5sb25nCTEwNzI3MDc1NDAKKwkubG9uZwk0MDA0MzcyNzYyCisJLmxvbmcJMTAxMzI3ODczNworCS5sb25nCTM4OTk1NTU3MTcKKwkubG9uZwkxMDcyNzEwNDIxCisJLmxvbmcJNDI3MjgwNzUwCisJLmxvbmcJMzE2MzU5NTU0OAorCS5sb25nCTE5Mjg3NDYxNjEKKwkubG9uZwkxMDcyNzEzMzExCisJLmxvbmcJOTgzNjE3Njc2CisJLmxvbmcJMTAxNTMzMzc1MworCS5sb25nCTM1NDE0MDI5OTYKKwkubG9uZwkxMDcyNzE2MjA4CisJLmxvbmcJMjc1OTE3NzMxNworCS5sb25nCTEwMTU5MDMyMDIKKwkubG9uZwkyMzg4MjEyNTcKKwkubG9uZwkxMDcyNzE5MTE0CisJLmxvbmcJMTQ2OTY5NDg3MQorCS5sb25nCTMxNjM5MzM1NjMKKwkubG9uZwk3MDI0MTI1MTAKKwkubG9uZwkxMDcyNzIyMDI3CisJLmxvbmcJMzgwMzI2NjA4NworCS5sb25nCTMxNjMzMjg5OTEKKwkubG9uZwk3Mjg5MzQ0NTQKKwkubG9uZwkxMDcyNzI0OTQ4CisJLmxvbmcJMTQxMzg0MjY4OAorCS5sb25nCTEwMTUyMjcxODgKKwkubG9uZwk0MTAzNjA3NzYKKwkubG9uZwkxMDcyNzI3ODc3CisJLmxvbmcJMTI2OTk5MDY1NQorCS5sb25nCTEwMTMwMjQ0NDYKKwkubG9uZwk0MTMzODgxODI0CisJLmxvbmcJMTA3MjczMDgxMworCS5sb25nCTIxNDgxNTUzNDUKKwkubG9uZwkzMTYzOTc5ODc1CisJLmxvbmcJMzQwMjAzNjA5OQorCS5sb25nCTEwNzI3MzM3NTgKKwkubG9uZwk0MDU4ODkzMzQKKwkubG9uZwkxMDE2MTU0MjMyCisJLmxvbmcJMjYwMjUxNDcxMworCS5sb25nCTEwNzI3MzY3MTEKKwkubG9uZwkyMjY4OTI5MzM2CisJLmxvbmcJMTAxNTQwMjg2MAorCS5sb25nCTE4MjgyOTI4NzkKKwkubG9uZwkxMDcyNzM5NjcyCisJLmxvbmcJMTI1NTk1Njc0NworCS5sb25nCTEwMTY2MzY5NzQKKwkubG9uZwkxMTcyNTk3ODkzCisJLmxvbmcJMTA3Mjc0MjY0MQorCS5sb25nCTExNDQzMzI2MworCS5sb25nCTEwMTYzOTYxNjkKKwkubG9uZwk3Mjg5MDk4MTUKKwkubG9uZwkxMDcyNzQ1NjE4CisJLmxvbmcJMzgzOTMwMjI1CisJLmxvbmcJMTAxNjA3ODA0NAorCS5sb25nCTU5MDk2MjE1NgorCS5sb25nCTEwNzI3NDg2MDMKKwkubG9uZwkzODI5MzQ2NjY2CisJLmxvbmcJMzE2NDMyNDE3MworCS5sb25nCTg1Mjc0MjU2MgorCS5sb25nCTEwNzI3NTE1OTYKKwkubG9uZwk2NjcyNTM1ODYKKwkubG9uZwkxMDEwODQyMTM1CisJLmxvbmcJMTYwODQ5MzUwOQorCS5sb25nCTEwNzI3NTQ1OTcKKwkubG9uZwkzMTU5NjIyMTcxCisJLmxvbmcJMzE2Mzg1NjMxMworCS5sb25nCTI5NTI3MTI5ODcKKwkubG9uZwkxMDcyNzU3NjA2CisJLmxvbmcJMzI5MzQ5NDY1MQorCS5sb25nCTMxNjExNjg4NzcKKwkubG9uZwk2ODUxODc5MDIKKwkubG9uZwkxMDcyNzYwNjI0CisJLmxvbmcJMzc4NzMxOTg5CisJLmxvbmcJMTAxNTg5MTY5MQorCS5sb25nCTM0OTA4NjM5NTMKKwkubG9uZwkxMDcyNzYzNjQ5CisJLmxvbmcJOTYwNzk3NDk4CisJLmxvbmcJMzE2Mzk5NzQ1NgorCS5sb25nCTI4NzUwNzUyNTQKKwkubG9uZwkxMDcyNzY2NjgzCisJLmxvbmcJNDE0NDIzMzMzMAorCS5sb25nCTMxNjQzODIyOTIKKwkubG9uZwkzMjI4MzE2MTA4CisJLmxvbmcJMTA3Mjc2OTcyNQorCS5sb25nCTMwMTAyNDE5OTEKKwkubG9uZwkzMTU5NDcxMzgwCisJLmxvbmcJMzUxNDA1MjI3CisJLmxvbmcJMTA3Mjc3Mjc3NgorCS5sb25nCTMxMjUzMzczMjgKKwkubG9uZwkzMTYwODcxMDU1CisJLmxvbmcJMjkzMDMyMjkxMgorCS5sb25nCTEwNzI3NzU4MzQKKwkubG9uZwkyNTk5NDk5NDIyCisJLmxvbmcJMzE2Mzc2MjYyMworCS5sb25nCTI0NzE0NDA2ODYKKwkubG9uZwkxMDcyNzc4OTAxCisJLmxvbmcJOTY4ODM2MjY3CisJLmxvbmcJMzE2MzI2MzQ2NAorCS5sb25nCTMzNjYyOTMwNzMKKwkubG9uZwkxMDcyNzgxOTc2CisJLmxvbmcJMzExOTQyNjMxNAorCS5sb25nCTEwMTUxNjkxMzAKKwkubG9uZwkxNDE2NzQxODI2CisJLmxvbmcJMTA3Mjc4NTA2MAorCS5sb25nCTIxOTYzODAyMTAKKwkubG9uZwkxMDEyNDYyMTM5CisJLmxvbmcJMTAxNDg0NTgxOQorCS5sb25nCTEwNzI3ODgxNTIKKwkubG9uZwkzMTE3OTEwNjQ2CisJLmxvbmcJMzE2MjYwNzY4MQorCS5sb25nCTIyNTc5NTk4NzIKKwkubG9uZwkxMDcyNzkxMjUyCisJLmxvbmcJMzgwMjk0NjE0OAorCS5sb25nCTEwMTQwMTM1MDMKKwkubG9uZwk5NDg3MzU0NjYKKwkubG9uZwkxMDcyNzk0MzYxCisJLmxvbmcJMzUxNjMzODAyOAorCS5sb25nCTMxNjM2MjM0NTkKKwkubG9uZwkxNDgwMDIzMzQzCisJLmxvbmcJMTA3Mjc5NzQ3OAorCS5sb25nCTIyNDcxOTYxNjgKKwkubG9uZwkxMDE2Mzc2MDI5CisJLmxvbmcJMzk0OTk3MjM0MQorCS5sb25nCTEwNzI4MDA2MDMKKwkubG9uZwkyMDY4NDA4NTQ4CisJLmxvbmcJMTAxNTk2MjQ0NAorCS5sb25nCTQxNjIwMzAxMDgKKwkubG9uZwkxMDcyODAzNzM3CisJLmxvbmcJMjc2MzQyODQ4MAorCS5sb25nCTEwMTY1Nzc5MjUKKwkubG9uZwkyMjE0ODc4NDIwCisJLmxvbmcJMTA3MjgwNjg4MAorCS5sb25nCTg5MjI3MDA4NworCS5sb25nCTMxNjQxNjQ5OTgKKwkubG9uZwkyNTAyNDMzODk5CisJLmxvbmcJMTA3MjgxMDAzMQorCS5sb25nCTIxNDg1OTU5MTMKKwkubG9uZwkxMDE2MDcyNTY3CisJLmxvbmcJODI4OTQ2ODU4CisJLmxvbmcJMTA3MjgxMzE5MQorCS5sb25nCTEwNjQyNDkyCisJLmxvbmcJMTAxNjk4ODAxNAorCS5sb25nCTE1ODg4NzEyMDcKKwkubG9uZwkxMDcyODE2MzU5CisJLmxvbmcJMTQzNDM5NTgyCisJLmxvbmcJMzE2NDAxMTk5MgorCS5sb25nCTU4Njk5NTk5NworCS5sb25nCTEwNzI4MTk1MzYKKwkubG9uZwk0MTY2MjM0OAorCS5sb25nCTMxNjM2NzY1NjgKKwkubG9uZwkyMjE4MzE1MzQxCisJLmxvbmcJMTA3MjgyMjcyMQorCS5sb25nCTI2OTQyOTUzODgKKwkubG9uZwkzMTY0MzM3NDQ0CisJLmxvbmcJMjI4ODE1OTk1OAorCS5sb25nCTEwNzI4MjU5MTUKKwkubG9uZwkyMTY5MTQ0NDY5CisJLmxvbmcJMTAxNTkyNDU5NworCS5sb25nCTg5NzA5OTgwMQorCS5sb25nCTEwNzI4MjkxMTgKKwkubG9uZwk3NTQ3NTYyOTcKKwkubG9uZwkxMDE2Mjg5NTgxCisJLmxvbmcJMjQ0MDk0NDc5MAorCS5sb25nCTEwNzI4MzIzMjkKKwkubG9uZwkyNDkyNzY5Nzc0CisJLmxvbmcJMTAxNTE5NjAzMAorCS5sb25nCTI3MjU4NDM2NjUKKwkubG9uZwkxMDcyODM1NTQ5CisJLmxvbmcJMTQzMzkxNzA4NworCS5sb25nCTEwMTU4ODcwOTkKKwkubG9uZwkxODUzMTg2NjE2CisJLmxvbmcJMTA3MjgzODc3OAorCS5sb25nCTMwNjY0OTYzNzEKKwkubG9uZwkxMDE2NzA1MTUwCisJLmxvbmcJNDIxOTYwNjAyNgorCS5sb25nCTEwNzI4NDIwMTUKKwkubG9uZwkyNDM0NTc0NzQyCisJLmxvbmcJMTAxNTczMDEyNAorCS5sb25nCTEzMzcxMDgwMzEKKwkubG9uZwkxMDcyODQ1MjYyCisJLmxvbmcJMzIwMzcyNDQ1MgorCS5sb25nCTEwMTU3MjY0MjEKKwkubG9uZwkxODk3ODQ0MzQxCisJLmxvbmcJMTA3Mjg0ODUxNworCS5sb25nCTEyNTQzMDA0NjAKKwkubG9uZwkxMDE2MzI0NTE0CisJLmxvbmcJMTcwOTM0MTkxNworCS5sb25nCTEwNzI4NTE3ODEKKwkubG9uZwkyNTcxMTY4MjE3CisJLmxvbmcJMTAxNTIwMTA3NQorCS5sb25nCTg3NDM3MjkwNQorCS5sb25nCTEwNzI4NTUwNTQKKwkubG9uZwkxMDAyNjM3ODgKKwkubG9uZwkxMDE2OTg5MzA4CisJLmxvbmcJMzc5MDk1NTM5MworCS5sb25nCTEwNzI4NTgzMzUKKwkubG9uZwkyMzUyOTQyNDYyCisJLmxvbmcJMzE2NDIyODY2NgorCS5sb25nCTE5NzI0ODQ5NzYKKwkubG9uZwkxMDcyODYxNjI2CisJLmxvbmcJNjc1MjkwMzAxCisJLmxvbmcJMzE2MjY4ODYyNgorCS5sb25nCTQxMTI1MDY1OTMKKwkubG9uZwkxMDcyODY0OTI1CisJLmxvbmcJMjk0NzM1NTIyMQorCS5sb25nCTEwMTU0MTk2MjQKKwkubG9uZwkxNzI0OTc2OTE1CisJLmxvbmcJMTA3Mjg2ODIzNAorCS5sb25nCTQyMDkwOTIyMworCS5sb25nCTMxNjQxNjU5NTUKKwkubG9uZwkzNTA0MDAzNDcyCisJLmxvbmcJMTA3Mjg3MTU1MQorCS5sb25nCTM1OTQwMDEwNjAKKwkubG9uZwkzMTU4Mzc5MjI4CisJLmxvbmcJOTY0MTA3MDU1CisJLmxvbmcJMTA3Mjg3NDg3OAorCS5sb25nCTI4MDA0Mzk1ODgKKwkubG9uZwkzMTYzODgxNzk3CisJLmxvbmcJMjc5OTk2MDg0MworCS5sb25nCTEwNzI4NzgyMTMKKwkubG9uZwkxNDIzNjU1MzgxCisJLmxvbmcJMTAxNjA3MDcyNworCS5sb25nCTUyNjY1MjgwOQorCS5sb25nCTEwNzI4ODE1NTgKKwkubG9uZwk0MjIzNDU5NzM2CisJLmxvbmcJMTAxNjkyNzk1MQorCS5sb25nCTI4Mzk0MjQ4NTQKKwkubG9uZwkxMDcyODg0OTExCisJLmxvbmcJMTE3MTU5NjE2MworCS5sb25nCTEwMTQwOTAyNTUKKwkubG9uZwkxMjUzOTM1MjExCisJLmxvbmcJMTA3Mjg4ODI3NAorCS5sb25nCTEzOTUzODI5MzEKKwkubG9uZwkzMTYwNzUxMTg5CisJLmxvbmcJMTcxMDMwMjkzCisJLmxvbmcJMTA3Mjg5MTY0NgorCS5sb25nCTM1MjY0NjAxMzIKKwkubG9uZwkxMDE1NDc3MzU0CisJLmxvbmcJMzk5MTg0MzU4MQorCS5sb25nCTEwNzI4OTUwMjYKKwkubG9uZwk0MDkyODUzNDU3CisJLmxvbmcJMTAxNTYzNDMzOQorCS5sb25nCTQyMzI4OTQ1MTMKKwkubG9uZwkxMDcyODk4NDE2CisJLmxvbmcJMjM4MzkzODY4NAorCS5sb25nCTEwMTU3MTcwOTUKKwkubG9uZwkxMDAwOTI1NzQ2CisJLmxvbmcJMTA3MjkwMTgxNgorCS5sb25nCTEwMTg0OTE2NzIKKwkubG9uZwkzMTY0MzU4MTIwCisJLmxvbmcJMjk5MjkwMzkzNQorCS5sb25nCTEwNzI5MDUyMjQKKwkubG9uZwkyMjE4MTU0NDA2CisJLmxvbmcJMTAxNjI3Njc2OQorCS5sb25nCTE3MjYyMTY3NDkKKwkubG9uZwkxMDcyOTA4NjQyCisJLmxvbmcJMjQ2NjgwODIyOAorCS5sb25nCTMxNjI3MjQ5ODEKKwkubG9uZwkxNjAzNDQ0NzIxCisJLmxvbmcJMTA3MjkxMjA2OQorCS5sb25nCTE1NDg2MzM2NDAKKwkubG9uZwkzMTYzMjQ5OTAyCisJLmxvbmcJMjczMjQ5Mjg1OQorCS5sb25nCTEwNzI5MTU1MDUKKwkubG9uZwkyNjkxNDc5NjQ2CisJLmxvbmcJMzE2MzMwNDI2MAorCS5sb25nCTkyNjU5MTQzNQorCS5sb25nCTEwNzI5MTg5NTEKKwkubG9uZwkzMjA4ODMzNzYyCisJLmxvbmcJMzE2Mzk2MjA5MAorCS5sb25nCTU4OTE5ODY2NgorCS5sb25nCTEwNzI5MjI0MDYKKwkubG9uZwkyNjY0MzQ2MTcyCisJLmxvbmcJMzE2NDIwNjUzOAorCS5sb25nCTE4MjkwOTk2MjIKKwkubG9uZwkxMDcyOTI1ODcwCisJLmxvbmcJMTAxNjY2MTE4MQorCS5sb25nCTMxNjQ1MDk1ODEKKwkubG9uZwk0NjA0MDcwMjMKKwkubG9uZwkxMDcyOTI5MzQ0CisJLmxvbmcJNDIzNzE3NTA5MgorCS5sb25nCTMxNjQxODcwNDUKKwkubG9uZwk4ODc0NjM5MjcKKwkubG9uZwkxMDcyOTMyODI3CisJLmxvbmcJMzU5Njc0NDE2MworCS5sb25nCTMxNjE4NDI3NDIKKwkubG9uZwkzMjE5OTQyNjQ0CisJLmxvbmcJMTA3MjkzNjMxOQorCS5sb25nCTM3OTg5OTA2MTYKKwkubG9uZwkxMDE2NDE3MzgyCisJLmxvbmcJMzI3Mjg0NTU0MQorCS5sb25nCTEwNzI5Mzk4MjEKKwkubG9uZwk5Mjg4NTI0MTkKKwkubG9uZwkzMTY0NTM2ODI0CisJLmxvbmcJMTE1NjQ0MDQzNQorCS5sb25nCTEwNzI5NDMzMzMKKwkubG9uZwkyMzUxNDUxMjQ5CisJLmxvbmcJMTAxNTAxNTYzMgorCS5sb25nCTEyNzYyNjE0MTAKKwkubG9uZwkxMDcyOTQ2ODU0CisJLmxvbmcJMzAwOTgxOTQ4CisJLmxvbmcJMTAxNTczMjc0NQorCS5sb25nCTM3NDMxNzUwMjkKKwkubG9uZwkxMDcyOTUwMzg0CisJLmxvbmcJMjA3MjgxMjQ5MAorCS5sb25nCTMxNjMyMjM2NTEKKwkubG9uZwk3ODQxMzg1MgorCS5sb25nCTEwNzI5NTM5MjUKKwkubG9uZwk0MTgzMjI2ODY3CisJLmxvbmcJMzE2NDA2NTgyNworCS5sb25nCTMyNzgzNDgzMjQKKwkubG9uZwkxMDcyOTU3NDc0CisJLmxvbmcJMzA2OTQ5NzQxNgorCS5sb25nCTEwMTU3OTkyODgKKwkubG9uZwk1Njk4NDczMzgKKwkubG9uZwkxMDcyOTYxMDM0CisJLmxvbmcJNDcyOTQ1MjcyCisJLmxvbmcJMzE2MDMzOTMwNQorCS5sb25nCTY1NDkxOTMwNgorCS5sb25nCTEwNzI5NjQ2MDMKKwkubG9uZwkzMjMyOTYxNzU3CisJLmxvbmcJMzE2NDA5NjA0NQorCS5sb25nCTM2NDU5NDE5MTEKKwkubG9uZwkxMDcyOTY4MTgxCisJLmxvbmcJMzgxNDY4NTA4MQorCS5sb25nCTMxNjI2MjE5MTcKKwkubG9uZwkxMDY1NjYyOTMyCisJLmxvbmcJMTA3Mjk3MTc3MAorCS5sb25nCTI1MzM2NzA5MTUKKwkubG9uZwkxMDE1NTc4ODE0CisJLmxvbmcJMTYxNzAwNDg0NQorCS5sb25nCTEwNzI5NzUzNjgKKwkubG9uZwk4MjgwNDk0NAorCS5sb25nCTEwMTEzOTEzNTQKKwkubG9uZwkxMTE4Mjk0NTc4CisJLmxvbmcJMTA3Mjk3ODk3NgorCS5sb25nCTIxOTc0OTU2OTQKKwkubG9uZwkzMTYwOTU3OTc3CisJLmxvbmcJMzk3ODEwMDgyMworCS5sb25nCTEwNzI5ODI1OTMKKwkubG9uZwkzNTEzMDI3MTkwCisJLmxvbmcJMTAxNjg5NDUzOQorCS5sb25nCTE3MjAzOTgzOTEKKwkubG9uZwkxMDcyOTg2MjIxCisJLmxvbmcJMzk4MDY3ODk2MworCS5sb25nCTMxNjQzNDg2NTYKKwkubG9uZwkzMDQ5MzQwMTEyCisJLmxvbmcJMTA3Mjk4OTg1OAorCS5sb25nCTMwNjI5MTU4MjQKKwkubG9uZwkxMDE0MjE5MTcxCisJLmxvbmcJMzc4NDQ4NjYxMAorCS5sb25nCTEwNzI5OTM1MDUKKwkubG9uZwkxNTgxODgzMDQwCisJLmxvbmcJMzE2Mjc0NzUyOQorCS5sb25nCTQwNDA2NzYzMTgKKwkubG9uZwkxMDcyOTk3MTYyCisJLmxvbmcJNDA5MDYwOTIzOAorCS5sb25nCTEwMTY3MTIwMzQKKwkubG9uZwkzOTMzMDU5MDMxCisJLmxvbmcJMTA3MzAwMDgyOQorCS5sb25nCTIxMzMzNjY3NjgKKwkubG9uZwkzMTYyNTgwNDA4CisJLmxvbmcJMzU3NzA5Njc0MworCS5sb25nCTEwNzMwMDQ1MDYKKwkubG9uZwkyOTUxNDk2NDE4CisJLmxvbmcJMTAxNDg0MjI2MworCS5sb25nCTMwODg1NjQ1MDAKKwkubG9uZwkxMDczMDA4MTkzCisJLmxvbmcJMTc2MjMxMTUxNworCS5sb25nCTEwMTYwOTQyNDkKKwkubG9uZwkyNTgzNTUxMjQ1CisJLmxvbmcJMTA3MzAxMTg5MAorCS5sb25nCTMxNjEwOTQxOTUKKwkubG9uZwkxMDE2NjU1MDY3CisJLmxvbmcJMjE3ODQ2MDY3MQorCS5sb25nCTEwNzMwMTU1OTcKKwkubG9uZwk3Nzc4NzgwOTgKKwkubG9uZwkzMTYzODkxMDY5CisJLmxvbmcJMTk5MDAxMjA3MQorCS5sb25nCTEwNzMwMTkzMTQKKwkubG9uZwkzNTI5MDcwNTYzCisJLmxvbmcJMzE2Mzg2MTc2OQorCS5sb25nCTIxMzUyNDExOTgKKwkubG9uZwkxMDczMDIzMDQxCisJLmxvbmcJMTIzNjc0Nzg3MQorCS5sb25nCTEwMTQ2Mzc3MjMKKwkubG9uZwkyNzMxNTAxMTIyCisJLmxvbmcJMTA3MzAyNjc3OAorCS5sb25nCTE3NzQwMzE4NTUKKwkubG9uZwkzMTYzNTE4NTk3CisJLmxvbmcJMzg5NjQ2MzA4NworCS5sb25nCTEwNzMwMzA1MjUKKwkubG9uZwkxMTM5Nzk3ODczCisJLmxvbmcJMzE2MjI4MjM4MQorCS5sb25nCTE0NTMxNTAwODIKKwkubG9uZwkxMDczMDM0MjgzCisJLmxvbmcJNDk4MTU0NjY5CisJLmxvbmcJMzE2MjUzNjYzOAorCS5sb25nCTQxMDk4MDY4ODcKKwkubG9uZwkxMDczMDM4MDUwCisJLmxvbmcJNDIyNDAzOTY2CisJLmxvbmcJMTAxNTUxNzgwNQorCS5sb25nCTMzOTUxMjk4NzEKKwkubG9uZwkxMDczMDQxODI4CisJLmxvbmcJNDAyNTM0NTQzNQorCS5sb25nCTMxNjMzODM5NjQKKwkubG9uZwkzNzIzMDM4OTMwCisJLmxvbmcJMTA3MzA0NTYxNgorCS5sb25nCTM3ODQ2NTI2NAorCS5sb25nCTMxNjM2MTgxNTgKKwkubG9uZwk5MTc4NDE4ODIKKwkubG9uZwkxMDczMDQ5NDE1CisJLmxvbmcJMTg3MTU1NjUKKwkubG9uZwkxMDE2NzA3ODg0CisJLmxvbmcJMzY4OTA3MTgyMworCS5sb25nCTEwNzMwNTMyMjMKKwkubG9uZwkyMzIxMDA0OTk2CisJLmxvbmcJMzE2MzYwMTI5MgorCS5sb25nCTM1NjY3MTY5MjUKKwkubG9uZwkxMDczMDU3MDQyCisJLmxvbmcJMTUzNjgyNjg1NgorCS5sb25nCTEwMTUxOTEwMDkKKwkubG9uZwk2NzEwMjUxMDAKKwkubG9uZwkxMDczMDYwODcyCisJLmxvbmcJMzgzMjAxNDM1MQorCS5sb25nCTMxNjQwNzA2MDYKKwkubG9uZwkzNzEyNTA0ODczCisJLmxvbmcJMTA3MzA2NDcxMQorCS5sb25nCTg4NDkxOTQ5CisJLmxvbmcJMTAxNjQ3NjIzNgorCS5sb25nCTQyMjIxMjI0OTkKKwkubG9uZwkxMDczMDY4NTYxCisJLmxvbmcJMTI3NzM3ODA3NAorCS5sb25nCTMxNjQzMDUzMTMKKwkubG9uZwkyMzIxMTA2NjE1CisJLmxvbmcJMTA3MzA3MjQyMgorCS5sb25nCTIxNzExNzY2MTAKKwkubG9uZwkxMDEwNTg0MzQ3CisJLmxvbmcJMjQyNTk4MTg0MworCS5sb25nCTEwNzMwNzYyOTMKKwkubG9uZwkyODMwMzkwODUxCisJLmxvbmcJMzE2NDM5NTE3NQorCS5sb25nCTM2MzY2Nzc4NAorCS5sb25nCTEwNzMwODAxNzUKKwkubG9uZwk4MTM3NTM5NTAKKwkubG9uZwkxMDE2ODMzNzg1CisJLmxvbmcJNTUxMzQ5MTA1CisJLmxvbmcJMTA3MzA4NDA2NworCS5sb25nCTM4MjE5MTYwNTAKKwkubG9uZwkzMTYzMTU1MTY1CisJLmxvbmcJMzExMTU3NDUzNworCS5sb25nCTEwNzMwODc5NjkKKwkubG9uZwkyNjA2MTYxNDc5CisJLmxvbmcJMzE2MzgwODMyMgorCS5sb25nCTM4NzIyNTc3ODAKKwkubG9uZwkxMDczMDkxODgyCisJLmxvbmcJMTI1MzU5MjEwMworCS5sb25nCTEwMTcwMDY5MTAKKwkubG9uZwkyOTU2NjEyOTk3CisJLmxvbmcJMTA3MzA5NTgwNgorCS5sb25nCTIxMTgxNjk3NTEKKwkubG9uZwkzMTYzNzg0MTI5CisJLmxvbmcJNDg4MTg4NDEzCisJLmxvbmcJMTA3MzA5OTc0MQorCS5sb25nCTMxOTk4MjEwMjkKKwkubG9uZwkxMDE2NjEyNjI0CisJLmxvbmcJODg1ODM0NTI4CisJLmxvbmcJMTA3MzEwMzY4NgorCS5sb25nCTE5NzMyNTg1NDcKKwkubG9uZwkzMTYzMzEwMTQwCisJLmxvbmcJNDI3Mzc3MDQyMworCS5sb25nCTEwNzMxMDc2NDEKKwkubG9uZwkzMzgzMTgwODA5CisJLmxvbmcJMzE2NDI2NzQ3NworCS5sb25nCTIxODY2MTczODEKKwkubG9uZwkxMDczMTExNjA4CisJLmxvbmcJMjI3MDc2NDA4NAorCS5sb25nCTMxNjQzMjEyODkKKwkubG9uZwkzMzM5MjAzNTc0CisJLmxvbmcJMTA3MzExNTU4NQorCS5sb25nCTE0ODM0OTc3ODAKKwkubG9uZwkzMTYzNDU3MzMwCisJLmxvbmcJMzU2MTc5MzkwNworCS5sb25nCTEwNzMxMTk1NzMKKwkubG9uZwkxMTU3MDU0MDUzCisJLmxvbmcJMTAxMjkzODkyNgorCS5sb25nCTI5Nzk5NjAxMjAKKwkubG9uZwkxMDczMTIzNTcyCisJLmxvbmcJMjU5OTEwOTcyNQorCS5sb25nCTEwMTU1NDcwNjkKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MzEyNzU4MgorCS5sb25nCTMzMDQ1ODE5OAorCS5sb25nCTMxNjQzMzEzMTYKKwkubG9uZwk0MjAxOTc3NjYyCisJLmxvbmcJMTA3MzEzMTYwMgorCS5sb25nCTc0ODMzMDI1NAorCS5sb25nCTEwMTQ2NDI5MzMKKwkubG9uZwkxOTYzNzExMTY3CisJLmxvbmcJMTA3MzEzNTYzNAorCS5sb25nCTE3NDQ3Njc3NTcKKwkubG9uZwkzMTYxNjIyODcwCisJLmxvbmcJMzcyMTY4ODY0NQorCS5sb25nCTEwNzMxMzk2NzYKKwkubG9uZwkzMDY5Mjc2OTM3CisJLmxvbmcJMTAxNjg4Nzk3NworCS5sb25nCTEwMTMyNTg3OTkKKwkubG9uZwkxMDczMTQzNzMwCisJLmxvbmcJMTc0ODc5NzYxMQorCS5sb25nCTMxNjExNzc2NTgKKwkubG9uZwkyNTU1OTg0NjEzCisJLmxvbmcJMTA3MzE0Nzc5NAorCS5sb25nCTI2NTI1NTU0NDIKKwkubG9uZwkzMTYzNjAxMjY4CisJLmxvbmcJNDE4Mjg3MzIyMAorCS5sb25nCTEwNzMxNTE4NjkKKwkubG9uZwk2Mjk1NDI2NDYKKwkubG9uZwkzMTYzMDQ0ODc5CisJLmxvbmcJMTcyNzI3ODcyNworCS5sb25nCTEwNzMxNTU5NTYKKwkubG9uZwkzNTYyNzEwNjIzCisJLmxvbmcJMTAxMjUyMDUxNgorCS5sb25nCTM5MDc4MDUwNDQKKwkubG9uZwkxMDczMTYwMDUzCisJLmxvbmcJMjI1NzA5MTIyNQorCS5sb25nCTMxNjI1OTg5ODMKKwkubG9uZwkyMjYzNTM1NzU0CisJLmxvbmcJMTA3MzE2NDE2MgorCS5sb25nCTc1MjIzMzU4NgorCS5sb25nCTMxNjM2ODc1ODQKKwkubG9uZwkxMjE4ODA2MTMyCisJLmxvbmcJMTA3MzE2ODI4MgorCS5sb25nCTE4MTg2MTMwNTIKKwkubG9uZwkzMTYzNTk3MDE3CisJLmxvbmcJOTAzMzM0OTA5CisJLmxvbmcJMTA3MzE3MjQxMworCS5sb25nCTE2MzY0NjIxMDgKKwkubG9uZwkxMDE2MDg4NTczCisJLmxvbmcJMTQ0NzE5MjUyMQorCS5sb25nCTEwNzMxNzY1NTUKKwkubG9uZwkxNDYyODU3MTcxCisJLmxvbmcJMzE2MzU2MzA5NworCS5sb25nCTI5ODA4MDIwNTcKKwkubG9uZwkxMDczMTgwNzA4CisJLmxvbmcJMzc4NjE5ODk2CisJLmxvbmcJMTAxNjgyMTg3OQorCS5sb25nCTEzMzk5NzI5MjcKKwkubG9uZwkxMDczMTg0ODczCisJLmxvbmcJMTY3OTA4OTA5CisJLmxvbmcJMTAxNjYyMDcyOAorCS5sb25nCTk1MDgwMzcwMgorCS5sb25nCTEwNzMxODkwNDkKKwkubG9uZwkxNjU1MzY0OTI2CisJLmxvbmcJMTAxNjI4NTYwOAorCS5sb25nCTE5NDQ3ODExOTEKKwkubG9uZwkxMDczMTkzMjM2CisJLmxvbmcJMzk5MzI3ODc2NworCS5sb25nCTMxNjI3NzI4NTUKKwkubG9uZwkxNTg3ODE0MDMKKwkubG9uZwkxMDczMTk3NDM1CisJLmxvbmcJMjIyMTQ2NDcxMgorCS5sb25nCTMxNjQzMzUwMjkKKwkubG9uZwkxOTk3MjQwMgorCS5sb25nCTEwNzMyMDE2NDUKKwkubG9uZwkzNTA3ODk5ODYyCisJLmxvbmcJMTAxNzA1Nzg2OAorCS5sb25nCTE2NjA5MTMzOTIKKwkubG9uZwkxMDczMjA1ODY2CisJLmxvbmcJNDIxODU5OTYwNAorCS5sb25nCTEwMTYxODQyODMKKwkubG9uZwk5MTk1NTU2ODIKKwkubG9uZwkxMDczMjEwMDk5CisJLmxvbmcJMzEyMTk2OTUzNAorCS5sb25nCTEwMTM5OTY4MDIKKwkubG9uZwkyMjI0MTQ1NTUzCisJLmxvbmcJMTA3MzIxNDM0MworCS5sb25nCTM0ODI1MjIwMzAKKwkubG9uZwkzMTYyNTM3NzQ1CisJLmxvbmcJMTQxMzM1NjA1MAorCS5sb25nCTEwNzMyMTg1OTkKKwkubG9uZwkxNjUxMzQ5MjkxCisJLmxvbmcJMzE2MzcxNjc0MgorCS5sb25nCTI5MTYxNTcxNDUKKwkubG9uZwkxMDczMjIyODY2CisJLmxvbmcJMjE5NDg3NTY1CisJLmxvbmcJMTAxNjM1Nzk0MworCS5sb25nCTI1NzE5NDc1MzkKKwkubG9uZwkxMDczMjI3MTQ1CisJLmxvbmcJMzU1ODE1OTA2NAorCS5sb25nCTMxNjQ0MjUyNDUKKwkubG9uZwk1MTU0NTc1MjcKKwkubG9uZwkxMDczMjMxNDM2CisJLmxvbmcJODM2NzA5MzMzCisJLmxvbmcJMTAxNjY5OTgwMgorCS5sb25nCTExNzY3NDk5OTcKKwkubG9uZwkxMDczMjM1NzM4CisJLmxvbmcJMjczODk5ODc3OQorCS5sb25nCTMxNjMwODQ0MjAKKwkubG9uZwkzOTYzMTk1MjEKKwkubG9uZwkxMDczMjQwMDUyCisJLmxvbmcJNDE3MjQyMDgxNgorCS5sb25nCTMxNjAxMjMyMDgKKwkubG9uZwkyNjA0OTYyNTQxCisJLmxvbmcJMTA3MzI0NDM3NworCS5sb25nCTI2MTQ0MjUyNzQKKwkubG9uZwkzMTY0NTg3NzY4CisJLmxvbmcJMzY0MzkwOTE3NAorCS5sb25nCTEwNzMyNDg3MTQKKwkubG9uZwkzNTM3NTg2MTA5CisJLmxvbmcJMTAxNTQwMzIyMworCS5sb25nCTM2NDk3MjYxMDUKKwkubG9uZwkxMDczMjUzMDYzCisJLmxvbmcJNDA4NTAzNjM0NgorCS5sb25nCTEwMTY2OTgwNTAKKwkubG9uZwkyNzU5MzUwMjg3CisJLmxvbmcJMTA3MzI1NzQyNAorCS5sb25nCTExNDg1MjY2MzQKKwkubG9uZwkxMDE2OTQzNTA5CisJLmxvbmcJMTExMDA4OTk0NworCS5sb25nCTEwNzMyNjE3OTcKKwkubG9uZwkxNDUxNjQxNjM5CisJLmxvbmcJMTAxNjUyMzI0OQorCS5sb25nCTMxMzQ1OTI4ODgKKwkubG9uZwkxMDczMjY2MTgxCisJLmxvbmcJNDIzMjI2Njg2MgorCS5sb25nCTEwMTcwMzk3MTAKKwkubG9uZwkzODA5NzgzMTYKKwkubG9uZwkxMDczMjcwNTc4CisJLmxvbmcJODU0MTg4OTcwCisJLmxvbmcJMzE2MTUxMTI2MgorCS5sb25nCTE1Nzc2MDg5MjEKKwkubG9uZwkxMDczMjc0OTg2CisJLmxvbmcJMTg3NTQ4OTUxMAorCS5sb25nCTMxNjQwMTY5NzAKKwkubG9uZwkyNTY4MzIwODIyCisJLmxvbmcJMTA3MzI3OTQwNgorCS5sb25nCTI3MzI4MjQ0MjgKKwkubG9uZwkxMDE1NDAxNDkxCisJLmxvbmcJMzQ5MjI5Mzc3MAorCS5sb25nCTEwNzMyODM4MzgKKwkubG9uZwkyMjQ4MDMyMjEwCisJLmxvbmcJMTAxNjQzNTQwMgorCS5sb25nCTE5NDExNzU3NAorCS5sb25nCTEwNzMyODgyODMKKwkubG9uZwk3Nzc1Mjg2MTIKKwkubG9uZwkzMTY0NDYwNjY1CisJLmxvbmcJMTQwMzY2MjMwNgorCS5sb25nCTEwNzMyOTI3MzkKKwkubG9uZwkyNzg4ODA5NTk5CisJLmxvbmcJMzE2MjcxOTU4MworCS5sb25nCTI5NjYyNzU1NTcKKwkubG9uZwkxMDczMjk3MjA3CisJLmxvbmcJMjE3NjE1NTMyNAorCS5sb25nCTMxNjA4OTEzMzUKKwkubG9uZwk3Mjc2ODUzNDkKKwkubG9uZwkxMDczMzAxNjg4CisJLmxvbmcJMjAzODI0NjgwOQorCS5sb25nCTMxNjM0MDczMTgKKwkubG9uZwkzNDE4OTAzMDU1CisJLmxvbmcJMTA3MzMwNjE4MAorCS5sb25nCTI1Mjc0NTczMzcKKwkubG9uZwkzMTYxODY5MTgwCisJLmxvbmcJMjU5MTQ1MzM2MworCS5sb25nCTEwNzMzMTA2ODUKKwkubG9uZwkyMTMyMzk2MTgyCisJLmxvbmcJMzE2MDEyMjc3NAorCS5sb25nCTI2ODIxNDYzODQKKwkubG9uZwkxMDczMzE1MjAyCisJLmxvbmcJMjA4MjE3ODUxMworCS5sb25nCTMxNjQ0MTE5OTUKKwkubG9uZwkzODMzMjA5NTA2CisJLmxvbmcJMTA3MzMxOTczMQorCS5sb25nCTI3MjI5MjA2ODQKKwkubG9uZwkxMDE0ODAzNDE4CisJLmxvbmcJMTg5MjI4ODQ0MgorCS5sb25nCTEwNzMzMjQyNzMKKwkubG9uZwkyNDQ2MjU1NjY2CisJLmxvbmcJMzE2MzY0ODk1NworCS5sb25nCTEyOTczNTAxNTcKKwkubG9uZwkxMDczMzI4ODI3CisJLmxvbmcJMTMwODAyMjA0MAorCS5sb25nCTMxNjQ0NjExMzQKKwkubG9uZwkyMTkxNzgyMDMyCisJLmxvbmcJMTA3MzMzMzM5MworCS5sb25nCTI5NjAyNTc3MjYKKwkubG9uZwkxMDE0NzkxMjM4CisJLmxvbmcJNDI0MzkyOTE3CisJLmxvbmcJMTA3MzMzNzk3MgorCS5sb25nCTI3NDkyMDI5OTUKKwkubG9uZwkzMTYzODg3Mjk0CisJLmxvbmcJNDM0MzE2MDY3CisJLmxvbmcJMTA3MzM0MjU2MworCS5sb25nCTIwMjgzNTg3NjYKKwkubG9uZwkxMDE0NTA2Njk4CisJLmxvbmcJMjM2NjEwODMxOAorCS5sb25nCTEwNzMzNDcxNjYKKwkubG9uZwkyODY3OTg1MTAyCisJLmxvbmcJMzE2MjgxMDgzMAorCS5sb25nCTIwNjk3NTExNDEKKwkubG9uZwkxMDczMzUxNzgyCisJLmxvbmcJMTU2MjE3MDY3NQorCS5sb25nCTMxNjM3NzMyNTcKKwkubG9uZwkzOTg1NTUzNTk1CisJLmxvbmcJMTA3MzM1NjQxMAorCS5sb25nCTQwMDIxNDYwNjIKKwkubG9uZwkxMDE2ODgyNzEyCisJLmxvbmcJMzk2NDI4NDIxMQorCS5sb25nCTEwNzMzNjEwNTEKKwkubG9uZwkyMTExNTgzOTE1CisJLmxvbmcJMTAxNjQ3NTc0MAorCS5sb25nCTIxNTIwNzM5NDQKKwkubG9uZwkxMDczMzY1NzA1CisJLmxvbmcJMTQ4Njg2MDU3NgorCS5sb25nCTMxNjQyNTIwMzIKKwkubG9uZwkyOTkwNDE3MjQ1CisJLmxvbmcJMTA3MzM3MDM3MQorCS5sb25nCTM2ODM0Njc3NDUKKwkubG9uZwkzMTY0NDE3OTAyCisJLmxvbmcJMjMzMTI3MTI1MAorCS5sb25nCTEwNzMzNzUwNTAKKwkubG9uZwk4MTIwNTc0NDYKKwkubG9uZwkxMDEzMjU2MDIyCisJLmxvbmcJMzIxOTU4NzQ0CisJLmxvbmcJMTA3MzM3OTc0MgorCS5sb25nCTM0MDE5MzM3NjcKKwkubG9uZwkxMDE2ODQzMTM0CisJLmxvbmcJMTQwNTE2OTI0MQorCS5sb25nCTEwNzMzODQ0NDYKKwkubG9uZwkyOTk4NTM5Njg5CisJLmxvbmcJMzE2Mzg3OTUyNworCS5sb25nCTE0MzQwNTgxNzUKKwkubG9uZwkxMDczMzg5MTYzCisJLmxvbmcJMjUxMTMzMjMzCisJLmxvbmcJMTAxNjEzNDM0NQorCS5sb25nCTU1NzE0OTg4MgorCS5sb25nCTEwNzMzOTM4OTMKKwkubG9uZwkzNjcyNzIwNzA5CisJLmxvbmcJMTAxNTU4NTg0MQorCS5sb25nCTMyMTgzMzg2ODIKKwkubG9uZwkxMDczMzk4NjM1CisJLmxvbmcJMzQwNDE2NDMwNAorCS5sb25nCTMxNjM1MjU2ODQKKwkubG9uZwk5NzcwMjA3ODgKKwkubG9uZwkxMDczNDAzMzkxCisJLmxvbmcJMzA2NTEwMDUxNworCS5sb25nCTEwMTY1OTAxMzkKKwkubG9uZwkyNTcyODY2NDc3CisJLmxvbmcJMTA3MzQwODE1OQorCS5sb25nCTg3ODU2MjQzMworCS5sb25nCTEwMTY1NzAzMTcKKwkubG9uZwkzODYxMDUwMTExCisJLmxvbmcJMTA3MzQxMjk0MAorCS5sb25nCTI1NDg5Mzc3MworCS5sb25nCTMxNjM4NjE3NTYKKwkubG9uZwk2OTcxNTMxMjYKKwkubG9uZwkxMDczNDE3NzM1CisJLmxvbmcJMTI4MzUxNTQyOQorCS5sb25nCTMxNjQzMzE3NjUKKwkubG9uZwkxODIyMDY3MDI2CisJLmxvbmcJMTA3MzQyMjU0MgorCS5sb25nCTEyNDE5OTQ5NTYKKwkubG9uZwkxMDE2Mzg4ODY2CisJLmxvbmcJMzA5MjE5MDcxNQorCS5sb25nCTEwNzM0MjczNjIKKwkubG9uZwk4MTQwMTIxNjgKKwkubG9uZwkzMTYwNTcxOTk4CisJLmxvbmcJMzY0MzMzNDg5CisJLmxvbmcJMTA3MzQzMjE5NgorCS5sb25nCTM5MjM3Mzc3NDQKKwkubG9uZwkzMTYyNDY5OTQ5CisJLmxvbmcJMjM4MDYxODA0MgorCS5sb25nCTEwNzM0MzcwNDIKKwkubG9uZwkzMTQ5NTU3MjE5CisJLmxvbmcJMzE2NDM2OTM3NQorCS5sb25nCTcwMzcxMDUwNgorCS5sb25nCTEwNzM0NDE5MDIKKwkubG9uZwkxMzg0NjYwODQ2CisJLmxvbmcJMTAxNjI0NDQ2NworCS5sb25nCTQwNzY1NTk5NDMKKwkubG9uZwkxMDczNDQ2Nzc0CisJLmxvbmcJMjExOTQ3ODMzMQorCS5sb25nCTMxNjE4MDY5MjcKKwkubG9uZwk0MDYyNjYxMDkyCisJLmxvbmcJMTA3MzQ1MTY2MAorCS5sb25nCTE0MjI2MTYwMDYKKwkubG9uZwkzMTY0MzAzODk0CisJLmxvbmcJODE1ODU5Mjc0CisJLmxvbmcJMTA3MzQ1NjU2MAorCS5sb25nCTI0MDM5NjU5MAorCS5sb25nCTMxNjQ1MzYwMTkKKwkubG9uZwkzMDgwMzUxNTE5CisJLmxvbmcJMTA3MzQ2MTQ3MgorCS5sb25nCTMzNzkxMjY3ODkKKwkubG9uZwkzMTU4MjY2NTc3CisJLmxvbmcJMjQyMDg4MzkyMgorCS5sb25nCTEwNzM0NjYzOTgKKwkubG9uZwkyMDQ5ODEwMDUyCisJLmxvbmcJMTAxNTE2ODQ2NAorCS5sb25nCTMyODc1MjM4NDcKKwkubG9uZwkxMDczNDcxMzM3CisJLmxvbmcJMTYyNTk3MTUzOQorCS5sb25nCTMxNTgwNTg1MzEKKwkubG9uZwkxNTQwODI0NTg1CisJLmxvbmcJMTA3MzQ3NjI5MAorCS5sb25nCTEwNjQwMTcwMTEKKwkubG9uZwkzMTY0NTM2MjY2CisJLmxvbmcJMTYzMTY5NTY3NworCS5sb25nCTEwNzM0ODEyNTYKKwkubG9uZwkyNzE3NjMzMDc2CisJLmxvbmcJMzE2MzM5MjYwMgorCS5sb25nCTM3MTY1MDIxNzIKKwkubG9uZwkxMDczNDg2MjM1CisJLmxvbmcJMjMwMzc0MDEyNQorCS5sb25nCTEwMTUwOTEzMDEKKwkubG9uZwkzNjU3MDY1NzcyCisJLmxvbmcJMTA3MzQ5MTIyOAorCS5sb25nCTM5OTAyNTYyMworCS5sb25nCTMxNjQwMDU2NTQKKwkubG9uZwkxNjEwNjAwNTcwCisJLmxvbmcJMTA3MzQ5NjIzNQorCS5sb25nCTM3NjY3MzIyOTgKKwkubG9uZwkxMDE2ODA4NzU5CisJLmxvbmcJMjAyOTcxNDIxMAorCS5sb25nCTEwNzM1MDEyNTUKKwkubG9uZwk2MTM2NjAwNzkKKwkubG9uZwkxMDE2MTQ3NzE5CisJLmxvbmcJNzc3NTA3MTQ3CisJLmxvbmcJMTA3MzUwNjI4OQorCS5sb25nCTQyODI5MjQyMDUKKwkubG9uZwkxMDE2MjM2MTA5CisJLmxvbmcJMjMwNzQ0Mjk5NQorCS5sb25nCTEwNzM1MTEzMzYKKwkubG9uZwkzMTkwMTE3NzIxCisJLmxvbmcJMzE2MzQ1MzExNQorCS5sb25nCTI0ODM0ODA1MDEKKwkubG9uZwkxMDczNTE2Mzk3CisJLmxvbmcJMTIxNjM3MTc4MAorCS5sb25nCTEwMTQwODI3NDgKKwkubG9uZwkxNDY0OTc2NjAzCisJLmxvbmcJMTA3MzUyMTQ3MgorCS5sb25nCTM1MDcyOTI0MDUKKwkubG9uZwkzMTYzMDI2MTEwCisJLmxvbmcJMzcwNjY4NzU5MworCS5sb25nCTEwNzM1MjY1NjAKKwkubG9uZwkzNTIxNzI2OTM5CisJLmxvbmcJMTAxNDMwMTY0MworCS5sb25nCTc3ODkwMTEwOQorCS5sb25nCTEwNzM1MzE2NjMKKwkubG9uZwkyMjQ4MTgzOTU0CisJLmxvbmcJMzE2MjMxNzMyNworCS5sb25nCTE0MzIyMDgzNzgKKwkubG9uZwkxMDczNTM2Nzc5CisJLmxvbmcJMTQwMTA2ODkxNAorCS5sb25nCTMxNjM0MTI1MzkKKwkubG9uZwkxNTMyNzM0MzI0CisJLmxvbmcJMTA3MzU0MTkwOQorCS5sb25nCTMwOTQyMTY1MzUKKwkubG9uZwkzMTY0MjExNDMzCisJLmxvbmcJMTI0MjAwNzkzMgorCS5sb25nCTEwNzM1NDcwNTMKKwkubG9uZwkxMTMyMDM0NzE2CisJLmxvbmcJMzE2NDM4ODQwNworCS5sb25nCTcyMTk5NjEzNgorCS5sb25nCTEwNzM1NTIyMTEKKwkubG9uZwk1NjM3NTQ3MzQKKwkubG9uZwkxMDE2NDE5ODk0CisJLmxvbmcJMTM1MTA1MDEwCisJLmxvbmcJMTA3MzU1NzM4MworCS5sb25nCTE5MDYxNDg3MjgKKwkubG9uZwkzMTY0NDI0MzE1CisJLmxvbmcJMzkzOTE0ODI0NgorCS5sb25nCTEwNzM1NjI1NjgKKwkubG9uZwkzMjEwMzUyMTQ4CisJLmxvbmcJMTAxNjMyMjg5OQorCS5sb25nCTM3MDc0NzkxNzUKKwkubG9uZwkxMDczNTY3NzY4CisJLmxvbmcJMzYxMzA3OTMwMworCS5sb25nCTEwMTUyMTMzMTQKKwkubG9uZwkzODk4Nzk1NzMxCisJLmxvbmcJMTA3MzU3Mjk4MgorCS5sb25nCTEyNDk5OTQxNDQKKwkubG9uZwkxMDEyOTE4Mzk0CisJLmxvbmcJMzgyMzA1MTc2CisJLmxvbmcJMTA3MzU3ODIxMQorCS5sb25nCTIzNDc2MjIzNzYKKwkubG9uZwkzMTYzNjI3MjAxCisJLmxvbmcJMTkxMjU2MTc4MQorCS5sb25nCTEwNzM1ODM0NTMKKwkubG9uZwkzMTQ3NDk1MTAyCisJLmxvbmcJMTAxNjcyNjgyOQorCS5sb25nCTY0Njk2OTY1CisJLmxvbmcJMTA3MzU4ODcxMAorCS5sb25nCTE3Njg3OTc0OTAKKwkubG9uZwkxMDE2ODY1NTM2CisJLmxvbmcJMzU5NDE1ODg2OQorCS5sb25nCTEwNzM1OTM5ODAKKwkubG9uZwkyNDU2NTIxNzAwCisJLmxvbmcJMzE2NDMwNTEzNworCS5sb25nCTQwNzY5NzUyMDAKKwkubG9uZwkxMDczNTk5MjY1CisJLmxvbmcJMjAyOTAwMDg5OQorCS5sb25nCTEwMTYyNTcxMTEKKwkubG9uZwkxNjc5NTU4MjMyCisJLmxvbmcJMTA3MzYwNDU2NQorCS5sb25nCTIzOTAzNDIyODcKKwkubG9uZwkzMTY0MzgyNTQ2CisJLmxvbmcJODYzNzM4NzE5CisJLmxvbmcJMTA3MzYwOTg3OQorCS5sb25nCTEzMjY5OTIyMjAKKwkubG9uZwkzMTYzNjYxNzczCisJLmxvbmcJMTc5NjgzMjUzNQorCS5sb25nCTEwNzM2MTUyMDcKKwkubG9uZwkzMTc2OTU1NzE2CisJLmxvbmcJMzE2MTYzNDA4OQorCS5sb25nCTM1MTY0MTg5NworCS5sb25nCTEwNzM2MjA1NTAKKwkubG9uZwkyMTcyMjYxNTI2CisJLmxvbmcJMzE2NDA1OTE3NQorCS5sb25nCTk5MTM1ODQ4MgorCS5sb25nCTEwNzM2MjU5MDcKKwkubG9uZwk4Mzg3MTUwMTkKKwkubG9uZwkzMTY0MjA2MjQ0CisJLmxvbmcJMzg4NDY2Mjc3NAorCS5sb25nCTEwNzM2MzEyNzgKKwkubG9uZwkyMTU4NjExNTk5CisJLmxvbmcJMTAxNTI1ODc2MQorCS5sb25nCTYxMDc1ODAwNgorCS5sb25nCTEwNzM2MzY2NjUKKwkubG9uZwkxOTY1MjA5Mzk3CisJLmxvbmcJMzE2MjkxNDgwOAorCS5sb25nCTQyMjQxNDI0NjcKKwkubG9uZwkxMDczNjQyMDY1CisJLmxvbmcJMzM4OTgyMDM4NgorCS5sb25nCTEwMTYyNTU3NzgKKwkubG9uZwkyMDA5OTcwNDk2CisJLmxvbmcJMTA3MzY0NzQ4MQorCS5sb25nCTIxNTkwMzk2NjUKKwkubG9uZwkzMTYzNjIxNTI0CisJLmxvbmcJMjcyODY5Mzk3OAorCS5sb25nCTEwNzM2NTI5MTEKKwkubG9uZwkzOTYxMDk5NzEKKwkubG9uZwkzMTY0NTExMjY3CisJLmxvbmcJMjI1NjMyNTIzMAorCS5sb25nCTEwNzM2NTgzNTYKKwkubG9uZwk1ODAxMTc3NDYKKwkubG9uZwkxMDE2MzY1ODcxCisJLmxvbmcJNzY0MzA3NDQxCisJLmxvbmcJMTA3MzY2MzgxNgorCS5sb25nCTMwMjEwNTc0MjAKKwkubG9uZwkzMTY0Mzc4MDk5CisJLmxvbmcJMjcxOTUxNTkyMAorCS5sb25nCTEwNzM2NjkyOTAKKwkubG9uZwkyNzYwMzMyOTQxCisJLmxvbmcJMTAxNjE4NjUwOQorCS5sb25nCTM5OTkzNTc0NzkKKwkubG9uZwkxMDczNjc0Nzc5CisJLmxvbmcJMjI1ODk0MTYxNgorCS5sb25nCTEwMTY5NzMzMDAKKwkubG9uZwk0ODE3MDYyODIKKwkubG9uZwkxMDczNjgwMjg0CisJLmxvbmcJMTY5NjA3OTE3MworCS5sb25nCTMxNjM3NTkxMDQKKwkubG9uZwk5Mjk4MDY5OTkKKwkubG9uZwkxMDczNjg1ODAzCisJLmxvbmcJMzIwNTMzNjY0MworCS5sb25nCTEwMTYzMDgxMzMKKwkubG9uZwkxMjIyNDcyMzA4CisJLmxvbmcJMTA3MzY5MTMzNworCS5sb25nCTEwNTQzNTc0NzAKKwkubG9uZwkzMTYyMDY5NTk0CisJLmxvbmcJMTUzMzk1MzM0NAorCS5sb25nCTEwNzM2OTY4ODYKKwkubG9uZwk3NjkxNzE4NTEKKwkubG9uZwkxMDE2NzE0MjA5CisJLmxvbmcJMjAzODk3MzY4OAorCS5sb25nCTEwNzM3MDI0NTAKKwkubG9uZwk4OTI5NDEzNzQKKwkubG9uZwkxMDE3MDk1MDM1CisJLmxvbmcJMjkxMjczMDY0NAorCS5sb25nCTEwNzM3MDgwMjkKKwkubG9uZwkzNDkwMDY3NzIyCisJLmxvbmcJMzE2NDQ1MzY1MAorCS5sb25nCTM1OTI5MjI1CisJLmxvbmcJMTA3MzcxMzYyNAorCS5sb25nCTI4MDk3ODgwNDEKKwkubG9uZwkzMTYwNDg1NTQ0CisJLmxvbmcJMjE3NDY1MjYzMgorCS5sb25nCTEwNzM3MTkyMzMKKwkubG9uZwk0MDg3NzE0NTkwCisJLmxvbmcJMTAxNTQ5ODgzNQorCS5sb25nCTkxNTU5MjQ2OAorCS5sb25nCTEwNzM3MjQ4NTgKKwkubG9uZwkzNTI5NDc4OTQKKwkubG9uZwkzMTYyMDcyOTQ3CisJLmxvbmcJNzMwODIxMTA1CisJLmxvbmcJMTA3MzczMDQ5OAorCS5sb25nCTI1MjMyMzI3NDMKKwkubG9uZwkxMDEzMTE1NzY0CisJLmxvbmcJMTc5NzkyMzgwMQorCS5sb25nCTEwNzM3MzYxNTMKKwkubG9uZwkxOTUwNTQ3NDI3CisJLmxvbmcJMTAxNDI3NzYzNQorCS5sb25nCTM4ODQ2MDcyODEKKwkubG9uZwkxMDYyNTkwNTkxCisJLmxvbmcJMzYwNzQwNDczNgorCS5sb25nCTEwNjgyNjQyMDAKKwkubG9uZwkxODc0NDgwNzU5CisJLmxvbmcJMTA2NTU5NTU2MworCS5sb25nCTQyODY3NjAzMzUKKwkubG9uZwkxMDcwNTE0MTA5CisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTEwNzIwNDk3MzAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkxMDcyMDQ5NzMwCisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTMyMTk1MzMzNzgKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQxNjA3NDk1NjgKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS50eXBlCXN0YXRpY19jb25zdF90YWJsZSxAb2JqZWN0CisJLnNpemUJc3RhdGljX2NvbnN0X3RhYmxlLDEyNTc2CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvZV9zaW5oLlMgYi9saWJtL3g4Ni9lX3NpbmguUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNmIwNGI1Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvZV9zaW5oLlMKQEAgLTAsMCArMSwxNDA3IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vICBzaW5oKHgpPShleHAoeCktZXhwKC14KSkvMgorLy8KKy8vICBMZXQgfHh8PXhIK3hMICh1cHBlciAyNiBiaXRzLCBsb3dlciAyNyBiaXRzKQorLy8gIGxvZzIoZSkgcm91bmRlZCB0byAyNiBiaXRzIChoaWdoIHBhcnQpIHBsdXMgYSBkb3VibGUgcHJlY2lzaW9uIGxvdyBwYXJ0IGlzCisvLyAgICAgICAgICBMMkVIK0wyRUwgKHVwcGVyIDI2LCBsb3dlciA1MyBiaXRzKQorLy8KKy8vICBMZXQgeEgqTDJFSD1rK2YrcmAsIHdoZXJlIChrK2YpKjJeNz1pbnQoeEgqTDJFSCoyXjcpLAorLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmPTAuYjEgYjIgLi4uIGI3LCBrIGludGVnZXIKKy8vICAyXmYgaXMgYXBwcm94aW1hdGVkIGFzIFRwW2ZdK0RwW2ZdLCBhbmQgMl57LWZ9IGFzIFRuW2ZdK0RuW2ZdCisvLyAgVHAgc3RvcmVzIHRoZSBoaWdoIDUzIGJpdHMsIERwIHN0b3JlcyAoMl5mLVRwW2ZdKSByb3VuZGVkIHRvIGRvdWJsZSBwcmVjaXNpb24KKy8vCisvLyAgZV58eHw9Ml57aytmfSoyXnIsIHI9cmAreEwqTDJFSCt8eHwqTDJFTCwgfHJ8PDJeey04fSsyXnstMTR9LAorLy8gICAgICAgICAgICAgICAgICAgICAgIGZvciB8eHwgaW4gWzIzLzY0LDMqMl43KQorLy8gIGVeey18eHx9PTJeey1rLWZ9KjJeey1yfQorLy8KKy8vICBlXnx4fCBpcyBhcHByb3hpbWF0ZWQgYXMgMl5rKlRwKzJeaypUcCpjMSpyKDErYzIqcisuLitjNSpyXjQpKzJeaypEcD0KKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgPTJeaypUcCsyXmsqVHAqUDE1KzJeaypEcAorLy8gIGVeey18eHx9IGFwcHJveGltYXRlZCBhcyAyXnsta30qVG4tMl57LWt9KlRuKmMxKnIoMS1jMipyKy4uK2M1KnJeNCkrMl57LWt9KkRuCisvLworLy8gIEZvciB8eHwgaW4gWzEvOCwgMyoyXjcpLCBzaW5oKHgpIGlzIGZvcm1lZCBhcworLy8gICAgICBSTigyXmsqVHAtMl57LWt9KlRuKSsyXmsqVHAqUDE1LTJeey1rfSpUbipQYDE1LTJeey1rfSpUbkwtMl57LWt9KkRuKzJeaypEcAorLy8KKy8vICBGb3IgeCBpbiAoMyoyXjcsIDMqMl44KSwgc2lnbih4KSooZV58eHwpLzIgaXMgcmV0dXJuZWQsIGFuZAorLy8gIHRoZSByZXN1bHQgaXMgY2hlY2tlZCBmb3Igb3ZlcmZsb3cuCisvLworLy8gIEZvciB8eHw8MjMvNjQsIGEgVGF5bG9yIHBvbHlub21pYWwgZXhwYW5zaW9uIGlzIHVzZWQgKGRlZ3JlZSAxMykKKy8vICBUbyByZWR1Y2Ugcm91bmRpbmcgZXJyb3JzLCB0aGUgcDMqeF4zIHRlcm0gaXMgY29tcHV0ZWQgYXMKKy8vICAgICAocDMqeGheMylfaGlnaCtbKHAzKnhsKigzKngqeGgreGxeMikpKyhwMyp4aF4zKV9sb3ddLAorLy8gIHdoZXJlIHg9eGgreGwsICh4aCBhcmUgdGhlIGxlYWRpbmcgMTcgYml0cyBvZiB4KSwgYW5kCisvLyAgICAgKHAzKnhoXjMpX2hpZ2g9Uk4oeCtwMyp4aF4zKS14CisvLyAgKGVycm9yIGJvdW5kIGZvciBwb2x5bm9taWFsIGV4cGFuc2lvbiBpcyBiZWxvdyAwLjUxIHVscCkKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIHNpbmgoTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgc2luaCgrLy1JTkYpID0gKy8tSU5GCisvLyAgc2luaCh4KSA9IHggZm9yIHN1Ym5vcm1hbHMKKy8vICBmb3IgZmluaXRlIGFyZ3VtZW50LCBvbmx5IHNpbmgoMCk9MCBpcyBleGFjdAorLy8gIEZvciBJRUVFIGRvdWJsZQorLy8gICAgc2luaCh4KSBvdmVyZmxvd3MgIGZvciB4ID4gCisvLyAgICA3MTAuNDc1ODYwMDczOTQzODYzNDI2MzkzMzYzNjI0ODExMTcyNDg1MzUxNTYyNTAgPSBNQVhMT0crbG9nKDIpCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgc3RhdGljX2Z1bmMKKyAgICAgICAgLnRleHQKKyAgICAgICAgLmFsaWduIF9fYmlvbmljX2FzbV9hbGlnbgorICAgICAgICAudHlwZSBzdGF0aWNfZnVuYywgQGZ1bmN0aW9uCitzdGF0aWNfZnVuYzoKKy4uQjEuMToKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZWF4CisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZWF4KSwgJWVheAorICAgICAgICBsZWEgICAgICAgc3RhdGljX2NvbnN0X3RhYmxlQEdPVE9GRiglZWF4KSwgJWVheAorICAgICAgICByZXQKKyAgICAgICAgLnNpemUgICBzdGF0aWNfZnVuYywuLXN0YXRpY19mdW5jCisjIC0tIEVuZCAgc3RhdGljX2Z1bmMKKworIyAtLSBCZWdpbiAgc2luaAorRU5UUlkoc2luaCkKKyMgcGFyYW1ldGVyIDE6IDggKyAlZWJwCisuLkIyLjE6CisuLkIyLjI6CisgICAgICAgIHB1c2hsICAgICAlZWJwCisgICAgICAgIG1vdmwgICAgICAlZXNwLCAlZWJwCisgICAgICAgIHN1YmwgICAgICAkMTA0LCAlZXNwCisgICAgICAgIG1vdmwgICAgICAlZWJ4LCA0MCglZXNwKQorICAgICAgICBjYWxsICAgICAgc3RhdGljX2Z1bmMKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlYngKKyAgICAgICAgbW92c2QgICAgIDExMiglZXNwKSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDQyNzIoJWVieCksICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDQxOTIoJWVieCksICV4bW0xCisgICAgICAgIG1vdnNkICAgICA0MjAwKCVlYngpLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDQwOTYoJWVieCksICV4bW02CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tMworICAgICAgICBhbmRucGQgICAgJXhtbTAsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW00LCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlY3gKKyAgICAgICAgc3VibCAgICAgICQxNjM0MywgJWVjeAorICAgICAgICBjbXBsICAgICAgJDE3NywgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgY3Z0c2Qyc2kgICV4bW0zLCAlZWF4CisgICAgICAgIHNobGwgICAgICAkMywgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIDQxMTIoJWVieCksICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDQxMjgoJWVieCksICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTcKKyAgICAgICAgbW92bCAgICAgICQzMjcwNCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW01CisgICAgICAgIG1vdmFwZCAgICA0MTQ0KCVlYngpLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTI3LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMywgJWVheAorICAgICAgICBhbmRsICAgICAgJDY1NTIwLCAlZWF4CisgICAgICAgIGFkZGwgICAgICAkMTYzNTIsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBjbXBsICAgICAgJDE2MSwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTUsICV4bW01CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW0wCisgICAgICAgIHBzdWJ3ICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICglZWJ4LCVlZHgsOCksICV4bW0wCisgICAgICAgIG11bHBkICAgICAyMDQ4KCVlYngsJWVkeCw4KSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICA0MTYwKCVlYngpLCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMiwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgIDQxNzYoJWVieCksICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW03LCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc2h1ZnBkICAgICQwLCAleG1tNSwgJXhtbTcKKyAgICAgICAgc3VicGQgICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW00LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBzdWJsICAgICAgJDE2MzUyLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc2hybCAgICAgICQxLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkNjU1MjAsICVlYXgKKyAgICAgICAgc3VibCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgKCVlYngsJWVkeCw4KSwgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdnNkICAgICA0MTYwKCVlYngpLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgNDE3NiglZWJ4KSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkbCAgICAgICQxNjM2OCwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQxMjcsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQxNjM0MywgJWVjeAorICAgICAgICBjbXBsICAgICAgJDE2MzQzLCAlZWN4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBjbXBsICAgICAgJDE1ODU2LCAlZWN4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBtb3ZhcGQgICAgNDIwOCglZWJ4KSwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIDQyMjQoJWVieCksICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgNDI0MCglZWJ4KSwgJXhtbTMKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW00CisgICAgICAgIGFuZHBkICAgICA0MjU2KCVlYngpLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgc3VicGQgICAgICV4bW02LCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTYsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTQsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0yLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW03CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBjbXBsICAgICAgJDE2LCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDE3MzkyLCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVjeCwgJXhtbTIKKyAgICAgICAgeG9ycGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJDE1MzQ0LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDMyNzM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTI3LCAlZWR4CisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgbW92c2QgICAgIDExMiglZXNwKSwgJXhtbTAKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMQorICAgICAgICBhbmRucGQgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAyNCglZXNwKQorICAgICAgICBmbGRsICAgICAgMjQoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzguMC4yOgorICAgICAgICBtb3ZsICAgICAgNDAoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKHNpbmgpCisjIC0tIEVuZCAgc2luaAorCisjIFN0YXJ0IGZpbGUgc2NvcGUgQVNNCitBTElBU19TWU1CT0woc2luaGwsIHNpbmgpOworIyBFbmQgZmlsZSBzY29wZSBBU00KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK3N0YXRpY19jb25zdF90YWJsZToKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjg1MTgxMjE0OQorCS5sb25nCTEwNzI2OTg5NDEKKwkubG9uZwkyNTk1ODAyNTUxCisJLmxvbmcJMTAxNjgxNTkxMworCS5sb25nCTEwNDgwMTkwNDEKKwkubG9uZwkxMDcyNzA0NjY2CisJLmxvbmcJMTM5ODQ3NDg0NQorCS5sb25nCTMxNjE1NTkxNzEKKwkubG9uZwkzODk5NTU1NzE3CisJLmxvbmcJMTA3MjcxMDQyMQorCS5sb25nCTQyNzI4MDc1MAorCS5sb25nCTMxNjM1OTU1NDgKKwkubG9uZwkzNTQxNDAyOTk2CisJLmxvbmcJMTA3MjcxNjIwOAorCS5sb25nCTI3NTkxNzczMTcKKwkubG9uZwkxMDE1OTAzMjAyCisJLmxvbmcJNzAyNDEyNTEwCisJLmxvbmcJMTA3MjcyMjAyNworCS5sb25nCTM4MDMyNjYwODcKKwkubG9uZwkzMTYzMzI4OTkxCisJLmxvbmcJNDEwMzYwNzc2CisJLmxvbmcJMTA3MjcyNzg3NworCS5sb25nCTEyNjk5OTA2NTUKKwkubG9uZwkxMDEzMDI0NDQ2CisJLmxvbmcJMzQwMjAzNjA5OQorCS5sb25nCTEwNzI3MzM3NTgKKwkubG9uZwk0MDU4ODkzMzQKKwkubG9uZwkxMDE2MTU0MjMyCisJLmxvbmcJMTgyODI5Mjg3OQorCS5sb25nCTEwNzI3Mzk2NzIKKwkubG9uZwkxMjU1OTU2NzQ3CisJLmxvbmcJMTAxNjYzNjk3NAorCS5sb25nCTcyODkwOTgxNQorCS5sb25nCTEwNzI3NDU2MTgKKwkubG9uZwkzODM5MzAyMjUKKwkubG9uZwkxMDE2MDc4MDQ0CisJLmxvbmcJODUyNzQyNTYyCisJLmxvbmcJMTA3Mjc1MTU5NgorCS5sb25nCTY2NzI1MzU4NgorCS5sb25nCTEwMTA4NDIxMzUKKwkubG9uZwkyOTUyNzEyOTg3CisJLmxvbmcJMTA3Mjc1NzYwNgorCS5sb25nCTMyOTM0OTQ2NTEKKwkubG9uZwkzMTYxMTY4ODc3CisJLmxvbmcJMzQ5MDg2Mzk1MworCS5sb25nCTEwNzI3NjM2NDkKKwkubG9uZwk5NjA3OTc0OTgKKwkubG9uZwkzMTYzOTk3NDU2CisJLmxvbmcJMzIyODMxNjEwOAorCS5sb25nCTEwNzI3Njk3MjUKKwkubG9uZwkzMDEwMjQxOTkxCisJLmxvbmcJMzE1OTQ3MTM4MAorCS5sb25nCTI5MzAzMjI5MTIKKwkubG9uZwkxMDcyNzc1ODM0CisJLmxvbmcJMjU5OTQ5OTQyMgorCS5sb25nCTMxNjM3NjI2MjMKKwkubG9uZwkzMzY2MjkzMDczCisJLmxvbmcJMTA3Mjc4MTk3NgorCS5sb25nCTMxMTk0MjYzMTQKKwkubG9uZwkxMDE1MTY5MTMwCisJLmxvbmcJMTAxNDg0NTgxOQorCS5sb25nCTEwNzI3ODgxNTIKKwkubG9uZwkzMTE3OTEwNjQ2CisJLmxvbmcJMzE2MjYwNzY4MQorCS5sb25nCTk0ODczNTQ2NgorCS5sb25nCTEwNzI3OTQzNjEKKwkubG9uZwkzNTE2MzM4MDI4CisJLmxvbmcJMzE2MzYyMzQ1OQorCS5sb25nCTM5NDk5NzIzNDEKKwkubG9uZwkxMDcyODAwNjAzCisJLmxvbmcJMjA2ODQwODU0OAorCS5sb25nCTEwMTU5NjI0NDQKKwkubG9uZwkyMjE0ODc4NDIwCisJLmxvbmcJMTA3MjgwNjg4MAorCS5sb25nCTg5MjI3MDA4NworCS5sb25nCTMxNjQxNjQ5OTgKKwkubG9uZwk4Mjg5NDY4NTgKKwkubG9uZwkxMDcyODEzMTkxCisJLmxvbmcJMTA2NDI0OTIKKwkubG9uZwkxMDE2OTg4MDE0CisJLmxvbmcJNTg2OTk1OTk3CisJLmxvbmcJMTA3MjgxOTUzNgorCS5sb25nCTQxNjYyMzQ4CisJLmxvbmcJMzE2MzY3NjU2OAorCS5sb25nCTIyODgxNTk5NTgKKwkubG9uZwkxMDcyODI1OTE1CisJLmxvbmcJMjE2OTE0NDQ2OQorCS5sb25nCTEwMTU5MjQ1OTcKKwkubG9uZwkyNDQwOTQ0NzkwCisJLmxvbmcJMTA3MjgzMjMyOQorCS5sb25nCTI0OTI3Njk3NzQKKwkubG9uZwkxMDE1MTk2MDMwCisJLmxvbmcJMTg1MzE4NjYxNgorCS5sb25nCTEwNzI4Mzg3NzgKKwkubG9uZwkzMDY2NDk2MzcxCisJLmxvbmcJMTAxNjcwNTE1MAorCS5sb25nCTEzMzcxMDgwMzEKKwkubG9uZwkxMDcyODQ1MjYyCisJLmxvbmcJMzIwMzcyNDQ1MgorCS5sb25nCTEwMTU3MjY0MjEKKwkubG9uZwkxNzA5MzQxOTE3CisJLmxvbmcJMTA3Mjg1MTc4MQorCS5sb25nCTI1NzExNjgyMTcKKwkubG9uZwkxMDE1MjAxMDc1CisJLmxvbmcJMzc5MDk1NTM5MworCS5sb25nCTEwNzI4NTgzMzUKKwkubG9uZwkyMzUyOTQyNDYyCisJLmxvbmcJMzE2NDIyODY2NgorCS5sb25nCTQxMTI1MDY1OTMKKwkubG9uZwkxMDcyODY0OTI1CisJLmxvbmcJMjk0NzM1NTIyMQorCS5sb25nCTEwMTU0MTk2MjQKKwkubG9uZwkzNTA0MDAzNDcyCisJLmxvbmcJMTA3Mjg3MTU1MQorCS5sb25nCTM1OTQwMDEwNjAKKwkubG9uZwkzMTU4Mzc5MjI4CisJLmxvbmcJMjc5OTk2MDg0MworCS5sb25nCTEwNzI4NzgyMTMKKwkubG9uZwkxNDIzNjU1MzgxCisJLmxvbmcJMTAxNjA3MDcyNworCS5sb25nCTI4Mzk0MjQ4NTQKKwkubG9uZwkxMDcyODg0OTExCisJLmxvbmcJMTE3MTU5NjE2MworCS5sb25nCTEwMTQwOTAyNTUKKwkubG9uZwkxNzEwMzAyOTMKKwkubG9uZwkxMDcyODkxNjQ2CisJLmxvbmcJMzUyNjQ2MDEzMgorCS5sb25nCTEwMTU0NzczNTQKKwkubG9uZwk0MjMyODk0NTEzCisJLmxvbmcJMTA3Mjg5ODQxNgorCS5sb25nCTIzODM5Mzg2ODQKKwkubG9uZwkxMDE1NzE3MDk1CisJLmxvbmcJMjk5MjkwMzkzNQorCS5sb25nCTEwNzI5MDUyMjQKKwkubG9uZwkyMjE4MTU0NDA2CisJLmxvbmcJMTAxNjI3Njc2OQorCS5sb25nCTE2MDM0NDQ3MjEKKwkubG9uZwkxMDcyOTEyMDY5CisJLmxvbmcJMTU0ODYzMzY0MAorCS5sb25nCTMxNjMyNDk5MDIKKwkubG9uZwk5MjY1OTE0MzUKKwkubG9uZwkxMDcyOTE4OTUxCisJLmxvbmcJMzIwODgzMzc2MgorCS5sb25nCTMxNjM5NjIwOTAKKwkubG9uZwkxODI5MDk5NjIyCisJLmxvbmcJMTA3MjkyNTg3MAorCS5sb25nCTEwMTY2NjExODEKKwkubG9uZwkzMTY0NTA5NTgxCisJLmxvbmcJODg3NDYzOTI3CisJLmxvbmcJMTA3MjkzMjgyNworCS5sb25nCTM1OTY3NDQxNjMKKwkubG9uZwkzMTYxODQyNzQyCisJLmxvbmcJMzI3Mjg0NTU0MQorCS5sb25nCTEwNzI5Mzk4MjEKKwkubG9uZwk5Mjg4NTI0MTkKKwkubG9uZwkzMTY0NTM2ODI0CisJLmxvbmcJMTI3NjI2MTQxMAorCS5sb25nCTEwNzI5NDY4NTQKKwkubG9uZwkzMDA5ODE5NDgKKwkubG9uZwkxMDE1NzMyNzQ1CisJLmxvbmcJNzg0MTM4NTIKKwkubG9uZwkxMDcyOTUzOTI1CisJLmxvbmcJNDE4MzIyNjg2NworCS5sb25nCTMxNjQwNjU4MjcKKwkubG9uZwk1Njk4NDczMzgKKwkubG9uZwkxMDcyOTYxMDM0CisJLmxvbmcJNDcyOTQ1MjcyCisJLmxvbmcJMzE2MDMzOTMwNQorCS5sb25nCTM2NDU5NDE5MTEKKwkubG9uZwkxMDcyOTY4MTgxCisJLmxvbmcJMzgxNDY4NTA4MQorCS5sb25nCTMxNjI2MjE5MTcKKwkubG9uZwkxNjE3MDA0ODQ1CisJLmxvbmcJMTA3Mjk3NTM2OAorCS5sb25nCTgyODA0OTQ0CisJLmxvbmcJMTAxMTM5MTM1NAorCS5sb25nCTM5NzgxMDA4MjMKKwkubG9uZwkxMDcyOTgyNTkzCisJLmxvbmcJMzUxMzAyNzE5MAorCS5sb25nCTEwMTY4OTQ1MzkKKwkubG9uZwkzMDQ5MzQwMTEyCisJLmxvbmcJMTA3Mjk4OTg1OAorCS5sb25nCTMwNjI5MTU4MjQKKwkubG9uZwkxMDE0MjE5MTcxCisJLmxvbmcJNDA0MDY3NjMxOAorCS5sb25nCTEwNzI5OTcxNjIKKwkubG9uZwk0MDkwNjA5MjM4CisJLmxvbmcJMTAxNjcxMjAzNAorCS5sb25nCTM1NzcwOTY3NDMKKwkubG9uZwkxMDczMDA0NTA2CisJLmxvbmcJMjk1MTQ5NjQxOAorCS5sb25nCTEwMTQ4NDIyNjMKKwkubG9uZwkyNTgzNTUxMjQ1CisJLmxvbmcJMTA3MzAxMTg5MAorCS5sb25nCTMxNjEwOTQxOTUKKwkubG9uZwkxMDE2NjU1MDY3CisJLmxvbmcJMTk5MDAxMjA3MQorCS5sb25nCTEwNzMwMTkzMTQKKwkubG9uZwkzNTI5MDcwNTYzCisJLmxvbmcJMzE2Mzg2MTc2OQorCS5sb25nCTI3MzE1MDExMjIKKwkubG9uZwkxMDczMDI2Nzc4CisJLmxvbmcJMTc3NDAzMTg1NQorCS5sb25nCTMxNjM1MTg1OTcKKwkubG9uZwkxNDUzMTUwMDgyCisJLmxvbmcJMTA3MzAzNDI4MworCS5sb25nCTQ5ODE1NDY2OQorCS5sb25nCTMxNjI1MzY2MzgKKwkubG9uZwkzMzk1MTI5ODcxCisJLmxvbmcJMTA3MzA0MTgyOAorCS5sb25nCTQwMjUzNDU0MzUKKwkubG9uZwkzMTYzMzgzOTY0CisJLmxvbmcJOTE3ODQxODgyCisJLmxvbmcJMTA3MzA0OTQxNQorCS5sb25nCTE4NzE1NTY1CisJLmxvbmcJMTAxNjcwNzg4NAorCS5sb25nCTM1NjY3MTY5MjUKKwkubG9uZwkxMDczMDU3MDQyCisJLmxvbmcJMTUzNjgyNjg1NgorCS5sb25nCTEwMTUxOTEwMDkKKwkubG9uZwkzNzEyNTA0ODczCisJLmxvbmcJMTA3MzA2NDcxMQorCS5sb25nCTg4NDkxOTQ5CisJLmxvbmcJMTAxNjQ3NjIzNgorCS5sb25nCTIzMjExMDY2MTUKKwkubG9uZwkxMDczMDcyNDIyCisJLmxvbmcJMjE3MTE3NjYxMAorCS5sb25nCTEwMTA1ODQzNDcKKwkubG9uZwkzNjM2Njc3ODQKKwkubG9uZwkxMDczMDgwMTc1CisJLmxvbmcJODEzNzUzOTUwCisJLmxvbmcJMTAxNjgzMzc4NQorCS5sb25nCTMxMTE1NzQ1MzcKKwkubG9uZwkxMDczMDg3OTY5CisJLmxvbmcJMjYwNjE2MTQ3OQorCS5sb25nCTMxNjM4MDgzMjIKKwkubG9uZwkyOTU2NjEyOTk3CisJLmxvbmcJMTA3MzA5NTgwNgorCS5sb25nCTIxMTgxNjk3NTEKKwkubG9uZwkzMTYzNzg0MTI5CisJLmxvbmcJODg1ODM0NTI4CisJLmxvbmcJMTA3MzEwMzY4NgorCS5sb25nCTE5NzMyNTg1NDcKKwkubG9uZwkzMTYzMzEwMTQwCisJLmxvbmcJMjE4NjYxNzM4MQorCS5sb25nCTEwNzMxMTE2MDgKKwkubG9uZwkyMjcwNzY0MDg0CisJLmxvbmcJMzE2NDMyMTI4OQorCS5sb25nCTM1NjE3OTM5MDcKKwkubG9uZwkxMDczMTE5NTczCisJLmxvbmcJMTE1NzA1NDA1MworCS5sb25nCTEwMTI5Mzg5MjYKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MzEyNzU4MgorCS5sb25nCTMzMDQ1ODE5OAorCS5sb25nCTMxNjQzMzEzMTYKKwkubG9uZwkxOTYzNzExMTY3CisJLmxvbmcJMTA3MzEzNTYzNAorCS5sb25nCTE3NDQ3Njc3NTcKKwkubG9uZwkzMTYxNjIyODcwCisJLmxvbmcJMTAxMzI1ODc5OQorCS5sb25nCTEwNzMxNDM3MzAKKwkubG9uZwkxNzQ4Nzk3NjExCisJLmxvbmcJMzE2MTE3NzY1OAorCS5sb25nCTQxODI4NzMyMjAKKwkubG9uZwkxMDczMTUxODY5CisJLmxvbmcJNjI5NTQyNjQ2CisJLmxvbmcJMzE2MzA0NDg3OQorCS5sb25nCTM5MDc4MDUwNDQKKwkubG9uZwkxMDczMTYwMDUzCisJLmxvbmcJMjI1NzA5MTIyNQorCS5sb25nCTMxNjI1OTg5ODMKKwkubG9uZwkxMjE4ODA2MTMyCisJLmxvbmcJMTA3MzE2ODI4MgorCS5sb25nCTE4MTg2MTMwNTIKKwkubG9uZwkzMTYzNTk3MDE3CisJLmxvbmcJMTQ0NzE5MjUyMQorCS5sb25nCTEwNzMxNzY1NTUKKwkubG9uZwkxNDYyODU3MTcxCisJLmxvbmcJMzE2MzU2MzA5NworCS5sb25nCTEzMzk5NzI5MjcKKwkubG9uZwkxMDczMTg0ODczCisJLmxvbmcJMTY3OTA4OTA5CisJLmxvbmcJMTAxNjYyMDcyOAorCS5sb25nCTE5NDQ3ODExOTEKKwkubG9uZwkxMDczMTkzMjM2CisJLmxvbmcJMzk5MzI3ODc2NworCS5sb25nCTMxNjI3NzI4NTUKKwkubG9uZwkxOTk3MjQwMgorCS5sb25nCTEwNzMyMDE2NDUKKwkubG9uZwkzNTA3ODk5ODYyCisJLmxvbmcJMTAxNzA1Nzg2OAorCS5sb25nCTkxOTU1NTY4MgorCS5sb25nCTEwNzMyMTAwOTkKKwkubG9uZwkzMTIxOTY5NTM0CisJLmxvbmcJMTAxMzk5NjgwMgorCS5sb25nCTE0MTMzNTYwNTAKKwkubG9uZwkxMDczMjE4NTk5CisJLmxvbmcJMTY1MTM0OTI5MQorCS5sb25nCTMxNjM3MTY3NDIKKwkubG9uZwkyNTcxOTQ3NTM5CisJLmxvbmcJMTA3MzIyNzE0NQorCS5sb25nCTM1NTgxNTkwNjQKKwkubG9uZwkzMTY0NDI1MjQ1CisJLmxvbmcJMTE3Njc0OTk5NworCS5sb25nCTEwNzMyMzU3MzgKKwkubG9uZwkyNzM4OTk4Nzc5CisJLmxvbmcJMzE2MzA4NDQyMAorCS5sb25nCTI2MDQ5NjI1NDEKKwkubG9uZwkxMDczMjQ0Mzc3CisJLmxvbmcJMjYxNDQyNTI3NAorCS5sb25nCTMxNjQ1ODc3NjgKKwkubG9uZwkzNjQ5NzI2MTA1CisJLmxvbmcJMTA3MzI1MzA2MworCS5sb25nCTQwODUwMzYzNDYKKwkubG9uZwkxMDE2Njk4MDUwCisJLmxvbmcJMTExMDA4OTk0NworCS5sb25nCTEwNzMyNjE3OTcKKwkubG9uZwkxNDUxNjQxNjM5CisJLmxvbmcJMTAxNjUyMzI0OQorCS5sb25nCTM4MDk3ODMxNgorCS5sb25nCTEwNzMyNzA1NzgKKwkubG9uZwk4NTQxODg5NzAKKwkubG9uZwkzMTYxNTExMjYyCisJLmxvbmcJMjU2ODMyMDgyMgorCS5sb25nCTEwNzMyNzk0MDYKKwkubG9uZwkyNzMyODI0NDI4CisJLmxvbmcJMTAxNTQwMTQ5MQorCS5sb25nCTE5NDExNzU3NAorCS5sb25nCTEwNzMyODgyODMKKwkubG9uZwk3Nzc1Mjg2MTIKKwkubG9uZwkzMTY0NDYwNjY1CisJLmxvbmcJMjk2NjI3NTU1NworCS5sb25nCTEwNzMyOTcyMDcKKwkubG9uZwkyMTc2MTU1MzI0CisJLmxvbmcJMzE2MDg5MTMzNQorCS5sb25nCTM0MTg5MDMwNTUKKwkubG9uZwkxMDczMzA2MTgwCisJLmxvbmcJMjUyNzQ1NzMzNworCS5sb25nCTMxNjE4NjkxODAKKwkubG9uZwkyNjgyMTQ2Mzg0CisJLmxvbmcJMTA3MzMxNTIwMgorCS5sb25nCTIwODIxNzg1MTMKKwkubG9uZwkzMTY0NDExOTk1CisJLmxvbmcJMTg5MjI4ODQ0MgorCS5sb25nCTEwNzMzMjQyNzMKKwkubG9uZwkyNDQ2MjU1NjY2CisJLmxvbmcJMzE2MzY0ODk1NworCS5sb25nCTIxOTE3ODIwMzIKKwkubG9uZwkxMDczMzMzMzkzCisJLmxvbmcJMjk2MDI1NzcyNgorCS5sb25nCTEwMTQ3OTEyMzgKKwkubG9uZwk0MzQzMTYwNjcKKwkubG9uZwkxMDczMzQyNTYzCisJLmxvbmcJMjAyODM1ODc2NgorCS5sb25nCTEwMTQ1MDY2OTgKKwkubG9uZwkyMDY5NzUxMTQxCisJLmxvbmcJMTA3MzM1MTc4MgorCS5sb25nCTE1NjIxNzA2NzUKKwkubG9uZwkzMTYzNzczMjU3CisJLmxvbmcJMzk2NDI4NDIxMQorCS5sb25nCTEwNzMzNjEwNTEKKwkubG9uZwkyMTExNTgzOTE1CisJLmxvbmcJMTAxNjQ3NTc0MAorCS5sb25nCTI5OTA0MTcyNDUKKwkubG9uZwkxMDczMzcwMzcxCisJLmxvbmcJMzY4MzQ2Nzc0NQorCS5sb25nCTMxNjQ0MTc5MDIKKwkubG9uZwkzMjE5NTg3NDQKKwkubG9uZwkxMDczMzc5NzQyCisJLmxvbmcJMzQwMTkzMzc2NworCS5sb25nCTEwMTY4NDMxMzQKKwkubG9uZwkxNDM0MDU4MTc1CisJLmxvbmcJMTA3MzM4OTE2MworCS5sb25nCTI1MTEzMzIzMworCS5sb25nCTEwMTYxMzQzNDUKKwkubG9uZwkzMjE4MzM4NjgyCisJLmxvbmcJMTA3MzM5ODYzNQorCS5sb25nCTM0MDQxNjQzMDQKKwkubG9uZwkzMTYzNTI1Njg0CisJLmxvbmcJMjU3Mjg2NjQ3NworCS5sb25nCTEwNzM0MDgxNTkKKwkubG9uZwk4Nzg1NjI0MzMKKwkubG9uZwkxMDE2NTcwMzE3CisJLmxvbmcJNjk3MTUzMTI2CisJLmxvbmcJMTA3MzQxNzczNQorCS5sb25nCTEyODM1MTU0MjkKKwkubG9uZwkzMTY0MzMxNzY1CisJLmxvbmcJMzA5MjE5MDcxNQorCS5sb25nCTEwNzM0MjczNjIKKwkubG9uZwk4MTQwMTIxNjgKKwkubG9uZwkzMTYwNTcxOTk4CisJLmxvbmcJMjM4MDYxODA0MgorCS5sb25nCTEwNzM0MzcwNDIKKwkubG9uZwkzMTQ5NTU3MjE5CisJLmxvbmcJMzE2NDM2OTM3NQorCS5sb25nCTQwNzY1NTk5NDMKKwkubG9uZwkxMDczNDQ2Nzc0CisJLmxvbmcJMjExOTQ3ODMzMQorCS5sb25nCTMxNjE4MDY5MjcKKwkubG9uZwk4MTU4NTkyNzQKKwkubG9uZwkxMDczNDU2NTYwCisJLmxvbmcJMjQwMzk2NTkwCisJLmxvbmcJMzE2NDUzNjAxOQorCS5sb25nCTI0MjA4ODM5MjIKKwkubG9uZwkxMDczNDY2Mzk4CisJLmxvbmcJMjA0OTgxMDA1MgorCS5sb25nCTEwMTUxNjg0NjQKKwkubG9uZwkxNTQwODI0NTg1CisJLmxvbmcJMTA3MzQ3NjI5MAorCS5sb25nCTEwNjQwMTcwMTEKKwkubG9uZwkzMTY0NTM2MjY2CisJLmxvbmcJMzcxNjUwMjE3MgorCS5sb25nCTEwNzM0ODYyMzUKKwkubG9uZwkyMzAzNzQwMTI1CisJLmxvbmcJMTAxNTA5MTMwMQorCS5sb25nCTE2MTA2MDA1NzAKKwkubG9uZwkxMDczNDk2MjM1CisJLmxvbmcJMzc2NjczMjI5OAorCS5sb25nCTEwMTY4MDg3NTkKKwkubG9uZwk3Nzc1MDcxNDcKKwkubG9uZwkxMDczNTA2Mjg5CisJLmxvbmcJNDI4MjkyNDIwNQorCS5sb25nCTEwMTYyMzYxMDkKKwkubG9uZwkyNDgzNDgwNTAxCisJLmxvbmcJMTA3MzUxNjM5NworCS5sb25nCTEyMTYzNzE3ODAKKwkubG9uZwkxMDE0MDgyNzQ4CisJLmxvbmcJMzcwNjY4NzU5MworCS5sb25nCTEwNzM1MjY1NjAKKwkubG9uZwkzNTIxNzI2OTQwCisJLmxvbmcJMTAxNDMwMTY0MworCS5sb25nCTE0MzIyMDgzNzgKKwkubG9uZwkxMDczNTM2Nzc5CisJLmxvbmcJMTQwMTA2ODkxNAorCS5sb25nCTMxNjM0MTI1MzkKKwkubG9uZwkxMjQyMDA3OTMyCisJLmxvbmcJMTA3MzU0NzA1MworCS5sb25nCTExMzIwMzQ3MTYKKwkubG9uZwkzMTY0Mzg4NDA3CisJLmxvbmcJMTM1MTA1MDEwCisJLmxvbmcJMTA3MzU1NzM4MworCS5sb25nCTE5MDYxNDg3MjgKKwkubG9uZwkzMTY0NDI0MzE1CisJLmxvbmcJMzcwNzQ3OTE3NQorCS5sb25nCTEwNzM1Njc3NjgKKwkubG9uZwkzNjEzMDc5MzAzCisJLmxvbmcJMTAxNTIxMzMxNAorCS5sb25nCTM4MjMwNTE3NgorCS5sb25nCTEwNzM1NzgyMTEKKwkubG9uZwkyMzQ3NjIyMzc2CisJLmxvbmcJMzE2MzYyNzIwMQorCS5sb25nCTY0Njk2OTY1CisJLmxvbmcJMTA3MzU4ODcxMAorCS5sb25nCTE3Njg3OTc0OTAKKwkubG9uZwkxMDE2ODY1NTM2CisJLmxvbmcJNDA3Njk3NTIwMAorCS5sb25nCTEwNzM1OTkyNjUKKwkubG9uZwkyMDI5MDAwODk5CisJLmxvbmcJMTAxNjI1NzExMQorCS5sb25nCTg2MzczODcxOQorCS5sb25nCTEwNzM2MDk4NzkKKwkubG9uZwkxMzI2OTkyMjIwCisJLmxvbmcJMzE2MzY2MTc3MworCS5sb25nCTM1MTY0MTg5NworCS5sb25nCTEwNzM2MjA1NTAKKwkubG9uZwkyMTcyMjYxNTI2CisJLmxvbmcJMzE2NDA1OTE3NQorCS5sb25nCTM4ODQ2NjI3NzQKKwkubG9uZwkxMDczNjMxMjc4CisJLmxvbmcJMjE1ODYxMTU5OQorCS5sb25nCTEwMTUyNTg3NjEKKwkubG9uZwk0MjI0MTQyNDY3CisJLmxvbmcJMTA3MzY0MjA2NQorCS5sb25nCTMzODk4MjAzODYKKwkubG9uZwkxMDE2MjU1Nzc4CisJLmxvbmcJMjcyODY5Mzk3OAorCS5sb25nCTEwNzM2NTI5MTEKKwkubG9uZwkzOTYxMDk5NzEKKwkubG9uZwkzMTY0NTExMjY3CisJLmxvbmcJNzY0MzA3NDQxCisJLmxvbmcJMTA3MzY2MzgxNgorCS5sb25nCTMwMjEwNTc0MjAKKwkubG9uZwkzMTY0Mzc4MDk5CisJLmxvbmcJMzk5OTM1NzQ3OQorCS5sb25nCTEwNzM2NzQ3NzkKKwkubG9uZwkyMjU4OTQxNjE2CisJLmxvbmcJMTAxNjk3MzMwMAorCS5sb25nCTkyOTgwNjk5OQorCS5sb25nCTEwNzM2ODU4MDMKKwkubG9uZwkzMjA1MzM2NjQzCisJLmxvbmcJMTAxNjMwODEzMworCS5sb25nCTE1MzM5NTMzNDQKKwkubG9uZwkxMDczNjk2ODg2CisJLmxvbmcJNzY5MTcxODUxCisJLmxvbmcJMTAxNjcxNDIwOQorCS5sb25nCTI5MTI3MzA2NDQKKwkubG9uZwkxMDczNzA4MDI5CisJLmxvbmcJMzQ5MDA2NzcyMgorCS5sb25nCTMxNjQ0NTM2NTAKKwkubG9uZwkyMTc0NjUyNjMyCisJLmxvbmcJMTA3MzcxOTIzMworCS5sb25nCTQwODc3MTQ1OTAKKwkubG9uZwkxMDE1NDk4ODM1CisJLmxvbmcJNzMwODIxMTA1CisJLmxvbmcJMTA3MzczMDQ5OAorCS5sb25nCTI1MjMyMzI3NDMKKwkubG9uZwkxMDEzMTE1NzY0CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTczMDgyMTEwNQorCS5sb25nCTEwNzI2ODE5MjIKKwkubG9uZwkyNTIzMjMyNzQzCisJLmxvbmcJMTAxMjA2NzE4OAorCS5sb25nCTIxNzQ2NTI2MzIKKwkubG9uZwkxMDcyNjcwNjU3CisJLmxvbmcJNDA4NzcxNDU5MAorCS5sb25nCTEwMTQ0NTAyNTkKKwkubG9uZwkyOTEyNzMwNjQ0CisJLmxvbmcJMTA3MjY1OTQ1MworCS5sb25nCTM0OTAwNjc3MjIKKwkubG9uZwkzMTYzNDA1MDc0CisJLmxvbmcJMTUzMzk1MzM0NAorCS5sb25nCTEwNzI2NDgzMTAKKwkubG9uZwk3NjkxNzE4NTEKKwkubG9uZwkxMDE1NjY1NjMzCisJLmxvbmcJOTI5ODA2OTk5CisJLmxvbmcJMTA3MjYzNzIyNworCS5sb25nCTMyMDUzMzY2NDMKKwkubG9uZwkxMDE1MjU5NTU3CisJLmxvbmcJMzk5OTM1NzQ3OQorCS5sb25nCTEwNzI2MjYyMDMKKwkubG9uZwkyMjU4OTQxNjE2CisJLmxvbmcJMTAxNTkyNDcyNAorCS5sb25nCTc2NDMwNzQ0MQorCS5sb25nCTEwNzI2MTUyNDAKKwkubG9uZwkzMDIxMDU3NDIwCisJLmxvbmcJMzE2MzMyOTUyMworCS5sb25nCTI3Mjg2OTM5NzgKKwkubG9uZwkxMDcyNjA0MzM1CisJLmxvbmcJMzk2MTA5OTcxCisJLmxvbmcJMzE2MzQ2MjY5MQorCS5sb25nCTQyMjQxNDI0NjcKKwkubG9uZwkxMDcyNTkzNDg5CisJLmxvbmcJMzM4OTgyMDM4NgorCS5sb25nCTEwMTUyMDcyMDIKKwkubG9uZwkzODg0NjYyNzc0CisJLmxvbmcJMTA3MjU4MjcwMgorCS5sb25nCTIxNTg2MTE1OTkKKwkubG9uZwkxMDE0MjEwMTg1CisJLmxvbmcJMzUxNjQxODk3CisJLmxvbmcJMTA3MjU3MTk3NAorCS5sb25nCTIxNzIyNjE1MjYKKwkubG9uZwkzMTYzMDEwNTk5CisJLmxvbmcJODYzNzM4NzE5CisJLmxvbmcJMTA3MjU2MTMwMworCS5sb25nCTEzMjY5OTIyMjAKKwkubG9uZwkzMTYyNjEzMTk3CisJLmxvbmcJNDA3Njk3NTIwMAorCS5sb25nCTEwNzI1NTA2ODkKKwkubG9uZwkyMDI5MDAwODk5CisJLmxvbmcJMTAxNTIwODUzNQorCS5sb25nCTY0Njk2OTY1CisJLmxvbmcJMTA3MjU0MDEzNAorCS5sb25nCTE3Njg3OTc0OTAKKwkubG9uZwkxMDE1ODE2OTYwCisJLmxvbmcJMzgyMzA1MTc2CisJLmxvbmcJMTA3MjUyOTYzNQorCS5sb25nCTIzNDc2MjIzNzYKKwkubG9uZwkzMTYyNTc4NjI1CisJLmxvbmcJMzcwNzQ3OTE3NQorCS5sb25nCTEwNzI1MTkxOTIKKwkubG9uZwkzNjEzMDc5MzAzCisJLmxvbmcJMTAxNDE2NDczOAorCS5sb25nCTEzNTEwNTAxMAorCS5sb25nCTEwNzI1MDg4MDcKKwkubG9uZwkxOTA2MTQ4NzI4CisJLmxvbmcJMzE2MzM3NTczOQorCS5sb25nCTEyNDIwMDc5MzIKKwkubG9uZwkxMDcyNDk4NDc3CisJLmxvbmcJMTEzMjAzNDcxNgorCS5sb25nCTMxNjMzMzk4MzEKKwkubG9uZwkxNDMyMjA4Mzc4CisJLmxvbmcJMTA3MjQ4ODIwMworCS5sb25nCTE0MDEwNjg5MTQKKwkubG9uZwkzMTYyMzYzOTYzCisJLmxvbmcJMzcwNjY4NzU5MworCS5sb25nCTEwNzI0Nzc5ODQKKwkubG9uZwkzNTIxNzI2OTQwCisJLmxvbmcJMTAxMzI1MzA2NworCS5sb25nCTI0ODM0ODA1MDEKKwkubG9uZwkxMDcyNDY3ODIxCisJLmxvbmcJMTIxNjM3MTc4MAorCS5sb25nCTEwMTMwMzQxNzIKKwkubG9uZwk3Nzc1MDcxNDcKKwkubG9uZwkxMDcyNDU3NzEzCisJLmxvbmcJNDI4MjkyNDIwNQorCS5sb25nCTEwMTUxODc1MzMKKwkubG9uZwkxNjEwNjAwNTcwCisJLmxvbmcJMTA3MjQ0NzY1OQorCS5sb25nCTM3NjY3MzIyOTgKKwkubG9uZwkxMDE1NzYwMTgzCisJLmxvbmcJMzcxNjUwMjE3MgorCS5sb25nCTEwNzI0Mzc2NTkKKwkubG9uZwkyMzAzNzQwMTI1CisJLmxvbmcJMTAxNDA0MjcyNQorCS5sb25nCTE1NDA4MjQ1ODUKKwkubG9uZwkxMDcyNDI3NzE0CisJLmxvbmcJMTA2NDAxNzAxMQorCS5sb25nCTMxNjM0ODc2OTAKKwkubG9uZwkyNDIwODgzOTIyCisJLmxvbmcJMTA3MjQxNzgyMgorCS5sb25nCTIwNDk4MTAwNTIKKwkubG9uZwkxMDE0MTE5ODg4CisJLmxvbmcJODE1ODU5Mjc0CisJLmxvbmcJMTA3MjQwNzk4NAorCS5sb25nCTI0MDM5NjU5MAorCS5sb25nCTMxNjM0ODc0NDMKKwkubG9uZwk0MDc2NTU5OTQzCisJLmxvbmcJMTA3MjM5ODE5OAorCS5sb25nCTIxMTk0NzgzMzEKKwkubG9uZwkzMTYwNzU4MzUxCisJLmxvbmcJMjM4MDYxODA0MgorCS5sb25nCTEwNzIzODg0NjYKKwkubG9uZwkzMTQ5NTU3MjE5CisJLmxvbmcJMzE2MzMyMDc5OQorCS5sb25nCTMwOTIxOTA3MTUKKwkubG9uZwkxMDcyMzc4Nzg2CisJLmxvbmcJODE0MDEyMTY4CisJLmxvbmcJMzE1OTUyMzQyMgorCS5sb25nCTY5NzE1MzEyNgorCS5sb25nCTEwNzIzNjkxNTkKKwkubG9uZwkxMjgzNTE1NDI5CisJLmxvbmcJMzE2MzI4MzE4OQorCS5sb25nCTI1NzI4NjY0NzcKKwkubG9uZwkxMDcyMzU5NTgzCisJLmxvbmcJODc4NTYyNDMzCisJLmxvbmcJMTAxNTUyMTc0MQorCS5sb25nCTMyMTgzMzg2ODIKKwkubG9uZwkxMDcyMzUwMDU5CisJLmxvbmcJMzQwNDE2NDMwNAorCS5sb25nCTMxNjI0NzcxMDgKKwkubG9uZwkxNDM0MDU4MTc1CisJLmxvbmcJMTA3MjM0MDU4NworCS5sb25nCTI1MTEzMzIzMworCS5sb25nCTEwMTUwODU3NjkKKwkubG9uZwkzMjE5NTg3NDQKKwkubG9uZwkxMDcyMzMxMTY2CisJLmxvbmcJMzQwMTkzMzc2NworCS5sb25nCTEwMTU3OTQ1NTgKKwkubG9uZwkyOTkwNDE3MjQ1CisJLmxvbmcJMTA3MjMyMTc5NQorCS5sb25nCTM2ODM0Njc3NDUKKwkubG9uZwkzMTYzMzY5MzI2CisJLmxvbmcJMzk2NDI4NDIxMQorCS5sb25nCTEwNzIzMTI0NzUKKwkubG9uZwkyMTExNTgzOTE1CisJLmxvbmcJMTAxNTQyNzE2NAorCS5sb25nCTIwNjk3NTExNDEKKwkubG9uZwkxMDcyMzAzMjA2CisJLmxvbmcJMTU2MjE3MDY3NQorCS5sb25nCTMxNjI3MjQ2ODEKKwkubG9uZwk0MzQzMTYwNjcKKwkubG9uZwkxMDcyMjkzOTg3CisJLmxvbmcJMjAyODM1ODc2NgorCS5sb25nCTEwMTM0NTgxMjIKKwkubG9uZwkyMTkxNzgyMDMyCisJLmxvbmcJMTA3MjI4NDgxNworCS5sb25nCTI5NjAyNTc3MjYKKwkubG9uZwkxMDEzNzQyNjYyCisJLmxvbmcJMTg5MjI4ODQ0MgorCS5sb25nCTEwNzIyNzU2OTcKKwkubG9uZwkyNDQ2MjU1NjY2CisJLmxvbmcJMzE2MjYwMDM4MQorCS5sb25nCTI2ODIxNDYzODQKKwkubG9uZwkxMDcyMjY2NjI2CisJLmxvbmcJMjA4MjE3ODUxMworCS5sb25nCTMxNjMzNjM0MTkKKwkubG9uZwkzNDE4OTAzMDU1CisJLmxvbmcJMTA3MjI1NzYwNAorCS5sb25nCTI1Mjc0NTczMzcKKwkubG9uZwkzMTYwODIwNjA0CisJLmxvbmcJMjk2NjI3NTU1NworCS5sb25nCTEwNzIyNDg2MzEKKwkubG9uZwkyMTc2MTU1MzI0CisJLmxvbmcJMzE1OTg0Mjc1OQorCS5sb25nCTE5NDExNzU3NAorCS5sb25nCTEwNzIyMzk3MDcKKwkubG9uZwk3Nzc1Mjg2MTIKKwkubG9uZwkzMTYzNDEyMDg5CisJLmxvbmcJMjU2ODMyMDgyMgorCS5sb25nCTEwNzIyMzA4MzAKKwkubG9uZwkyNzMyODI0NDI4CisJLmxvbmcJMTAxNDM1MjkxNQorCS5sb25nCTM4MDk3ODMxNgorCS5sb25nCTEwNzIyMjIwMDIKKwkubG9uZwk4NTQxODg5NzAKKwkubG9uZwkzMTYwNDYyNjg2CisJLmxvbmcJMTExMDA4OTk0NworCS5sb25nCTEwNzIyMTMyMjEKKwkubG9uZwkxNDUxNjQxNjM5CisJLmxvbmcJMTAxNTQ3NDY3MworCS5sb25nCTM2NDk3MjYxMDUKKwkubG9uZwkxMDcyMjA0NDg3CisJLmxvbmcJNDA4NTAzNjM0NgorCS5sb25nCTEwMTU2NDk0NzQKKwkubG9uZwkyNjA0OTYyNTQxCisJLmxvbmcJMTA3MjE5NTgwMQorCS5sb25nCTI2MTQ0MjUyNzQKKwkubG9uZwkzMTYzNTM5MTkyCisJLmxvbmcJMTE3Njc0OTk5NworCS5sb25nCTEwNzIxODcxNjIKKwkubG9uZwkyNzM4OTk4Nzc5CisJLmxvbmcJMzE2MjAzNTg0NAorCS5sb25nCTI1NzE5NDc1MzkKKwkubG9uZwkxMDcyMTc4NTY5CisJLmxvbmcJMzU1ODE1OTA2NAorCS5sb25nCTMxNjMzNzY2NjkKKwkubG9uZwkxNDEzMzU2MDUwCisJLmxvbmcJMTA3MjE3MDAyMworCS5sb25nCTE2NTEzNDkyOTEKKwkubG9uZwkzMTYyNjY4MTY2CisJLmxvbmcJOTE5NTU1NjgyCisJLmxvbmcJMTA3MjE2MTUyMworCS5sb25nCTMxMjE5Njk1MzQKKwkubG9uZwkxMDEyOTQ4MjI2CisJLmxvbmcJMTk5NzI0MDIKKwkubG9uZwkxMDcyMTUzMDY5CisJLmxvbmcJMzUwNzg5OTg2MgorCS5sb25nCTEwMTYwMDkyOTIKKwkubG9uZwkxOTQ0NzgxMTkxCisJLmxvbmcJMTA3MjE0NDY2MAorCS5sb25nCTM5OTMyNzg3NjcKKwkubG9uZwkzMTYxNzI0Mjc5CisJLmxvbmcJMTMzOTk3MjkyNworCS5sb25nCTEwNzIxMzYyOTcKKwkubG9uZwkxNjc5MDg5MDkKKwkubG9uZwkxMDE1NTcyMTUyCisJLmxvbmcJMTQ0NzE5MjUyMQorCS5sb25nCTEwNzIxMjc5NzkKKwkubG9uZwkxNDYyODU3MTcxCisJLmxvbmcJMzE2MjUxNDUyMQorCS5sb25nCTEyMTg4MDYxMzIKKwkubG9uZwkxMDcyMTE5NzA2CisJLmxvbmcJMTgxODYxMzA1MgorCS5sb25nCTMxNjI1NDg0NDEKKwkubG9uZwkzOTA3ODA1MDQ0CisJLmxvbmcJMTA3MjExMTQ3NworCS5sb25nCTIyNTcwOTEyMjUKKwkubG9uZwkzMTYxNTUwNDA3CisJLmxvbmcJNDE4Mjg3MzIyMAorCS5sb25nCTEwNzIxMDMyOTMKKwkubG9uZwk2Mjk1NDI2NDYKKwkubG9uZwkzMTYxOTk2MzAzCisJLmxvbmcJMTAxMzI1ODc5OQorCS5sb25nCTEwNzIwOTUxNTQKKwkubG9uZwkxNzQ4Nzk3NjExCisJLmxvbmcJMzE2MDEyOTA4MgorCS5sb25nCTE5NjM3MTExNjcKKwkubG9uZwkxMDcyMDg3MDU4CisJLmxvbmcJMTc0NDc2Nzc1NworCS5sb25nCTMxNjA1NzQyOTQKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MjA3OTAwNgorCS5sb25nCTMzMDQ1ODE5OAorCS5sb25nCTMxNjMyODI3NDAKKwkubG9uZwkzNTYxNzkzOTA3CisJLmxvbmcJMTA3MjA3MDk5NworCS5sb25nCTExNTcwNTQwNTMKKwkubG9uZwkxMDExODkwMzUwCisJLmxvbmcJMjE4NjYxNzM4MQorCS5sb25nCTEwNzIwNjMwMzIKKwkubG9uZwkyMjcwNzY0MDg0CisJLmxvbmcJMzE2MzI3MjcxMworCS5sb25nCTg4NTgzNDUyOAorCS5sb25nCTEwNzIwNTUxMTAKKwkubG9uZwkxOTczMjU4NTQ3CisJLmxvbmcJMzE2MjI2MTU2NAorCS5sb25nCTI5NTY2MTI5OTcKKwkubG9uZwkxMDcyMDQ3MjMwCisJLmxvbmcJMjExODE2OTc1MQorCS5sb25nCTMxNjI3MzU1NTMKKwkubG9uZwkzMTExNTc0NTM3CisJLmxvbmcJMTA3MjAzOTM5MworCS5sb25nCTI2MDYxNjE0NzkKKwkubG9uZwkzMTYyNzU5NzQ2CisJLmxvbmcJMzYzNjY3Nzg0CisJLmxvbmcJMTA3MjAzMTU5OQorCS5sb25nCTgxMzc1Mzk1MAorCS5sb25nCTEwMTU3ODUyMDkKKwkubG9uZwkyMzIxMTA2NjE1CisJLmxvbmcJMTA3MjAyMzg0NgorCS5sb25nCTIxNzExNzY2MTAKKwkubG9uZwkxMDA5NTM1NzcxCisJLmxvbmcJMzcxMjUwNDg3MworCS5sb25nCTEwNzIwMTYxMzUKKwkubG9uZwk4ODQ5MTk0OQorCS5sb25nCTEwMTU0Mjc2NjAKKwkubG9uZwkzNTY2NzE2OTI1CisJLmxvbmcJMTA3MjAwODQ2NgorCS5sb25nCTE1MzY4MjY4NTYKKwkubG9uZwkxMDE0MTQyNDMzCisJLmxvbmcJOTE3ODQxODgyCisJLmxvbmcJMTA3MjAwMDgzOQorCS5sb25nCTE4NzE1NTY1CisJLmxvbmcJMTAxNTY1OTMwOAorCS5sb25nCTMzOTUxMjk4NzEKKwkubG9uZwkxMDcxOTkzMjUyCisJLmxvbmcJNDAyNTM0NTQzNQorCS5sb25nCTMxNjIzMzUzODgKKwkubG9uZwkxNDUzMTUwMDgyCisJLmxvbmcJMTA3MTk4NTcwNworCS5sb25nCTQ5ODE1NDY2OQorCS5sb25nCTMxNjE0ODgwNjIKKwkubG9uZwkyNzMxNTAxMTIyCisJLmxvbmcJMTA3MTk3ODIwMgorCS5sb25nCTE3NzQwMzE4NTUKKwkubG9uZwkzMTYyNDcwMDIxCisJLmxvbmcJMTk5MDAxMjA3MQorCS5sb25nCTEwNzE5NzA3MzgKKwkubG9uZwkzNTI5MDcwNTYzCisJLmxvbmcJMzE2MjgxMzE5MworCS5sb25nCTI1ODM1NTEyNDUKKwkubG9uZwkxMDcxOTYzMzE0CisJLmxvbmcJMzE2MTA5NDE5NQorCS5sb25nCTEwMTU2MDY0OTEKKwkubG9uZwkzNTc3MDk2NzQzCisJLmxvbmcJMTA3MTk1NTkzMAorCS5sb25nCTI5NTE0OTY0MTgKKwkubG9uZwkxMDEzNzkzNjg3CisJLmxvbmcJNDA0MDY3NjMxOAorCS5sb25nCTEwNzE5NDg1ODYKKwkubG9uZwk0MDkwNjA5MjM4CisJLmxvbmcJMTAxNTY2MzQ1OAorCS5sb25nCTMwNDkzNDAxMTIKKwkubG9uZwkxMDcxOTQxMjgyCisJLmxvbmcJMzA2MjkxNTgyNAorCS5sb25nCTEwMTMxNzA1OTUKKwkubG9uZwkzOTc4MTAwODIzCisJLmxvbmcJMTA3MTkzNDAxNworCS5sb25nCTM1MTMwMjcxOTAKKwkubG9uZwkxMDE1ODQ1OTYzCisJLmxvbmcJMTYxNzAwNDg0NQorCS5sb25nCTEwNzE5MjY3OTIKKwkubG9uZwk4MjgwNDk0NAorCS5sb25nCTEwMTAzNDI3NzgKKwkubG9uZwkzNjQ1OTQxOTExCisJLmxvbmcJMTA3MTkxOTYwNQorCS5sb25nCTM4MTQ2ODUwODEKKwkubG9uZwkzMTYxNTczMzQxCisJLmxvbmcJNTY5ODQ3MzM4CisJLmxvbmcJMTA3MTkxMjQ1OAorCS5sb25nCTQ3Mjk0NTI3MgorCS5sb25nCTMxNTkyOTA3MjkKKwkubG9uZwk3ODQxMzg1MgorCS5sb25nCTEwNzE5MDUzNDkKKwkubG9uZwk0MTgzMjI2ODY3CisJLmxvbmcJMzE2MzAxNzI1MQorCS5sb25nCTEyNzYyNjE0MTAKKwkubG9uZwkxMDcxODk4Mjc4CisJLmxvbmcJMzAwOTgxOTQ4CisJLmxvbmcJMTAxNDY4NDE2OQorCS5sb25nCTMyNzI4NDU1NDEKKwkubG9uZwkxMDcxODkxMjQ1CisJLmxvbmcJOTI4ODUyNDE5CisJLmxvbmcJMzE2MzQ4ODI0OAorCS5sb25nCTg4NzQ2MzkyNworCS5sb25nCTEwNzE4ODQyNTEKKwkubG9uZwkzNTk2NzQ0MTYzCisJLmxvbmcJMzE2MDc5NDE2NgorCS5sb25nCTE4MjkwOTk2MjIKKwkubG9uZwkxMDcxODc3Mjk0CisJLmxvbmcJMTAxNjY2MTE4MQorCS5sb25nCTMxNjM0NjEwMDUKKwkubG9uZwk5MjY1OTE0MzUKKwkubG9uZwkxMDcxODcwMzc1CisJLmxvbmcJMzIwODgzMzc2MgorCS5sb25nCTMxNjI5MTM1MTQKKwkubG9uZwkxNjAzNDQ0NzIxCisJLmxvbmcJMTA3MTg2MzQ5MworCS5sb25nCTE1NDg2MzM2NDAKKwkubG9uZwkzMTYyMjAxMzI2CisJLmxvbmcJMjk5MjkwMzkzNQorCS5sb25nCTEwNzE4NTY2NDgKKwkubG9uZwkyMjE4MTU0NDA2CisJLmxvbmcJMTAxNTIyODE5MworCS5sb25nCTQyMzI4OTQ1MTMKKwkubG9uZwkxMDcxODQ5ODQwCisJLmxvbmcJMjM4MzkzODY4NAorCS5sb25nCTEwMTQ2Njg1MTkKKwkubG9uZwkxNzEwMzAyOTMKKwkubG9uZwkxMDcxODQzMDcwCisJLmxvbmcJMzUyNjQ2MDEzMgorCS5sb25nCTEwMTQ0Mjg3NzgKKwkubG9uZwkyODM5NDI0ODU0CisJLmxvbmcJMTA3MTgzNjMzNQorCS5sb25nCTExNzE1OTYxNjMKKwkubG9uZwkxMDEzMDQxNjc5CisJLmxvbmcJMjc5OTk2MDg0MworCS5sb25nCTEwNzE4Mjk2MzcKKwkubG9uZwkxNDIzNjU1MzgxCisJLmxvbmcJMTAxNTAyMjE1MQorCS5sb25nCTM1MDQwMDM0NzIKKwkubG9uZwkxMDcxODIyOTc1CisJLmxvbmcJMzU5NDAwMTA2MAorCS5sb25nCTMxNTczMzA2NTIKKwkubG9uZwk0MTEyNTA2NTkzCisJLmxvbmcJMTA3MTgxNjM0OQorCS5sb25nCTI5NDczNTUyMjEKKwkubG9uZwkxMDE0MzcxMDQ4CisJLmxvbmcJMzc5MDk1NTM5MworCS5sb25nCTEwNzE4MDk3NTkKKwkubG9uZwkyMzUyOTQyNDYyCisJLmxvbmcJMzE2MzE4MDA5MAorCS5sb25nCTE3MDkzNDE5MTcKKwkubG9uZwkxMDcxODAzMjA1CisJLmxvbmcJMjU3MTE2ODIxNworCS5sb25nCTEwMTQxNTI0OTkKKwkubG9uZwkxMzM3MTA4MDMxCisJLmxvbmcJMTA3MTc5NjY4NgorCS5sb25nCTMyMDM3MjQ0NTIKKwkubG9uZwkxMDE0Njc3ODQ1CisJLmxvbmcJMTg1MzE4NjYxNgorCS5sb25nCTEwNzE3OTAyMDIKKwkubG9uZwkzMDY2NDk2MzcxCisJLmxvbmcJMTAxNTY1NjU3NAorCS5sb25nCTI0NDA5NDQ3OTAKKwkubG9uZwkxMDcxNzgzNzUzCisJLmxvbmcJMjQ5Mjc2OTc3NAorCS5sb25nCTEwMTQxNDc0NTQKKwkubG9uZwkyMjg4MTU5OTU4CisJLmxvbmcJMTA3MTc3NzMzOQorCS5sb25nCTIxNjkxNDQ0NjkKKwkubG9uZwkxMDE0ODc2MDIxCisJLmxvbmcJNTg2OTk1OTk3CisJLmxvbmcJMTA3MTc3MDk2MAorCS5sb25nCTQxNjYyMzQ4CisJLmxvbmcJMzE2MjYyNzk5MgorCS5sb25nCTgyODk0Njg1OAorCS5sb25nCTEwNzE3NjQ2MTUKKwkubG9uZwkxMDY0MjQ5MgorCS5sb25nCTEwMTU5Mzk0MzgKKwkubG9uZwkyMjE0ODc4NDIwCisJLmxvbmcJMTA3MTc1ODMwNAorCS5sb25nCTg5MjI3MDA4NworCS5sb25nCTMxNjMxMTY0MjIKKwkubG9uZwkzOTQ5OTcyMzQxCisJLmxvbmcJMTA3MTc1MjAyNworCS5sb25nCTIwNjg0MDg1NDgKKwkubG9uZwkxMDE0OTEzODY4CisJLmxvbmcJOTQ4NzM1NDY2CisJLmxvbmcJMTA3MTc0NTc4NQorCS5sb25nCTM1MTYzMzgwMjgKKwkubG9uZwkzMTYyNTc0ODgzCisJLmxvbmcJMTAxNDg0NTgxOQorCS5sb25nCTEwNzE3Mzk1NzYKKwkubG9uZwkzMTE3OTEwNjQ2CisJLmxvbmcJMzE2MTU1OTEwNQorCS5sb25nCTMzNjYyOTMwNzMKKwkubG9uZwkxMDcxNzMzNDAwCisJLmxvbmcJMzExOTQyNjMxNAorCS5sb25nCTEwMTQxMjA1NTQKKwkubG9uZwkyOTMwMzIyOTEyCisJLmxvbmcJMTA3MTcyNzI1OAorCS5sb25nCTI1OTk0OTk0MjIKKwkubG9uZwkzMTYyNzE0MDQ3CisJLmxvbmcJMzIyODMxNjEwOAorCS5sb25nCTEwNzE3MjExNDkKKwkubG9uZwkzMDEwMjQxOTkxCisJLmxvbmcJMzE1ODQyMjgwNAorCS5sb25nCTM0OTA4NjM5NTMKKwkubG9uZwkxMDcxNzE1MDczCisJLmxvbmcJOTYwNzk3NDk4CisJLmxvbmcJMzE2Mjk0ODg4MAorCS5sb25nCTI5NTI3MTI5ODcKKwkubG9uZwkxMDcxNzA5MDMwCisJLmxvbmcJMzI5MzQ5NDY1MQorCS5sb25nCTMxNjAxMjAzMDEKKwkubG9uZwk4NTI3NDI1NjIKKwkubG9uZwkxMDcxNzAzMDIwCisJLmxvbmcJNjY3MjUzNTg2CisJLmxvbmcJMTAwOTc5MzU1OQorCS5sb25nCTcyODkwOTgxNQorCS5sb25nCTEwNzE2OTcwNDIKKwkubG9uZwkzODM5MzAyMjUKKwkubG9uZwkxMDE1MDI5NDY4CisJLmxvbmcJMTgyODI5Mjg3OQorCS5sb25nCTEwNzE2OTEwOTYKKwkubG9uZwkxMjU1OTU2NzQ3CisJLmxvbmcJMTAxNTU4ODM5OAorCS5sb25nCTM0MDIwMzYwOTkKKwkubG9uZwkxMDcxNjg1MTgyCisJLmxvbmcJNDA1ODg5MzM0CisJLmxvbmcJMTAxNTEwNTY1NgorCS5sb25nCTQxMDM2MDc3NgorCS5sb25nCTEwNzE2NzkzMDEKKwkubG9uZwkxMjY5OTkwNjU1CisJLmxvbmcJMTAxMTk3NTg3MAorCS5sb25nCTcwMjQxMjUxMAorCS5sb25nCTEwNzE2NzM0NTEKKwkubG9uZwkzODAzMjY2MDg3CisJLmxvbmcJMzE2MjI4MDQxNQorCS5sb25nCTM1NDE0MDI5OTYKKwkubG9uZwkxMDcxNjY3NjMyCisJLmxvbmcJMjc1OTE3NzMxNworCS5sb25nCTEwMTQ4NTQ2MjYKKwkubG9uZwkzODk5NTU1NzE3CisJLmxvbmcJMTA3MTY2MTg0NQorCS5sb25nCTQyNzI4MDc1MAorCS5sb25nCTMxNjI1NDY5NzIKKwkubG9uZwkxMDQ4MDE5MDQxCisJLmxvbmcJMTA3MTY1NjA5MAorCS5sb25nCTEzOTg0NzQ4NDUKKwkubG9uZwkzMTYwNTEwNTk1CisJLmxvbmcJMjg1MTgxMjE0OQorCS5sb25nCTEwNzE2NTAzNjUKKwkubG9uZwkyNTk1ODAyNTUxCisJLmxvbmcJMTAxNTc2NzMzNworCS5sb25nCTAKKwkubG9uZwkxMTI3NzQzNDg4CisJLmxvbmcJMAorCS5sb25nCTMyNzUyMjcxMzYKKwkubG9uZwkzNjA3NDA0NzM2CisJLmxvbmcJMTA0NDE0Njk1MgorCS5sb25nCTM2MDc0MDQ3MzYKKwkubG9uZwkzMTkxNjMwNjAwCisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTEwNjM2NjExMjIKKwkubG9uZwk0Mjc3ODExNjk1CisJLmxvbmcJMzIxMTE0NDc3MAorCS5sb25nCTIxNDAxNzU3NTUKKwkubG9uZwkxMDMzODY0MjYxCisJLmxvbmcJMjE0MDE3NTc1NQorCS5sb25nCTEwMzM4NjQyNjEKKwkubG9uZwk0Mjg5NDk1OTg4CisJLmxvbmcJMTA1NDExMzc0NworCS5sb25nCTQyODk0OTU5ODgKKwkubG9uZwkxMDU0MTEzNzQ3CisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTEwNjQ3MDk2OTgKKwkubG9uZwk0Mjc3ODExNjk1CisJLmxvbmcJMTA2NDcwOTY5OAorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDgwNDk3NDc5CisJLmxvbmcJNDE2NjkwMTU3MgorCS5sb25nCTEwNTMwNzcwMDMKKwkubG9uZwkzMjk4MDUwNjQKKwkubG9uZwkxMDM4NDg4MTM0CisJLmxvbmcJMjc3MzkyNzczMAorCS5sb25nCTEwNTMyMzY3MDcKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDY1NDIzMTIxCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjk4OTcwNDUKKwkubG9uZwkxNzQ0MTI3MjAxCisJLmxvbmcJMTA0NjE0NDU4MQorCS5sb25nCTQzNjMxNDEzNworCS5sb25nCTEwNTk3MTc1MzYKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4MAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3MjgwCisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTIxNDc0ODM2NDcKKwkudHlwZQlzdGF0aWNfY29uc3RfdGFibGUsQG9iamVjdAorCS5zaXplCXN0YXRpY19jb25zdF90YWJsZSw0MjgwCisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvZmxvb3IuUyBiL2xpYm0veDg2L2Zsb29yLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjg1OTczNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L2Zsb29yLlMKQEAgLTAsMCArMSw0MyBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShmbG9vcikKKwltb3YgICAgJWVzcCwlZWF4CisJYW5kICAgICQweGZmZmZmZmY4LCVlYXgKKwltb3ZzZCAgMHg0KCVlc3ApLCV4bW0wCisJcm91bmRzZCAkMHgxLCV4bW0wLCV4bW0wCisJbW92bHBkICV4bW0wLC0weDgoJWVheCkKKwlmbGRsICAgLTB4OCglZWF4KQorCXJldAorRU5EKGZsb29yKQorCitBTElBU19TWU1CT0woZmxvb3JsLCBmbG9vcik7CmRpZmYgLS1naXQgYS9saWJtL3g4Ni9mbG9vcmYuUyBiL2xpYm0veDg2L2Zsb29yZi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc5YjkwNzMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9mbG9vcmYuUwpAQCAtMCwwICsxLDM5IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKGZsb29yZikKKwltb3ZzcyAgMHg0KCVlc3ApLCV4bW0wCisJcm91bmRzcyAkMHgxLCV4bW0wLCV4bW0wCisJbW92c3MgICV4bW0wLC0weDQoJWVzcCkKKwlmbGRzICAgLTB4NCglZXNwKQorCXJldAorRU5EKGZsb29yZikKZGlmZiAtLWdpdCBhL2xpYm0veDg2L2xpYm1fcmVkdWNlX3BpMDRsLlMgYi9saWJtL3g4Ni9saWJtX3JlZHVjZV9waTA0bC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFmNmE3ZDAKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9saWJtX3JlZHVjZV9waTA0bC5TCkBAIC0wLDAgKzEsMzcxOCBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworIyAtLSBCZWdpbiAgX19saWJtX3JlZHVjZV9waTA0bAorCS50ZXh0CisgICAgICAgLmFsaWduICAgIDE2LDB4OTAKKwkuaGlkZGVuIF9fbGlibV9yZWR1Y2VfcGkwNGwKKwkuZ2xvYmwgX19saWJtX3JlZHVjZV9waTA0bAorX19saWJtX3JlZHVjZV9waTA0bDoKKyMgcGFyYW1ldGVyIDE6IDggKyAlZWJwCisjIHBhcmFtZXRlciAyOiAyMCArICVlYnAKKyMgcGFyYW1ldGVyIDM6IDI0ICsgJWVicAorLi5CMS4xOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBhbmRsICAgICAgJC0xNiwgJWVzcAorICAgICAgICBwdXNobCAgICAgJWVzaQorICAgICAgICBwdXNobCAgICAgJWVkaQorICAgICAgICBwdXNobCAgICAgJWVieAorICAgICAgICBzdWJsICAgICAgJDIwLCAlZXNwCisgICAgICAgIG1vdnp3bCAgICAxNiglZWJwKSwgJWVieAorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAyMCglZWJwKSwgJWVheAorICAgICAgICBjbXBsICAgICAgJDE2NDEzLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAyNCglZWJwKSwgJWVzaQorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlZGkKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlZGkpLCAlZWRpCisgICAgICAgIG1vdmwgICAgICAlZWF4LCA0KCVlc3ApCisgICAgICAgIGpnZSAgICAgICAuLkIxLjgKKy4uQjEuMjoKKyAgICAgICAgZmxkdCAgICAgIDgoJWVicCkKKyAgICAgICAgZmxkbCAgICAgIF9fNG9ucGlfZEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZzdHB0ICAgICA4KCVlc3ApCisgICAgICAgIG1vdnp3bCAgICAxNiglZXNwKSwgJWVjeAorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBhZGRsICAgICAgJDMwLCAlZWN4CisgICAgICAgIG1vdmwgICAgICAxMiglZXNwKSwgJWVheAorICAgICAgICBzaHJsICAgICAgJWNsLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMCwgNCglZXNwKQorICAgICAgICBqbmUgICAgICAgLi5CMS40CisuLkIxLjM6CisgICAgICAgIGxlYSAgICAgICAxKCVlYXgpLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkLTIsICVlY3gKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLi5CMS40OgorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVjeAorICAgICAgICBhZGRsICAgICAgNCglZXNwKSwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDEsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlY3gKKy4uQjEuNToKKyAgICAgICAgZmxkbCAgICAgIF9UV09fMzJIQEdPVE9GRiglZWRpKQorICAgICAgICBjbXBsICAgICAgJDE2NDAwLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWN4LCAoJWVzcCkKKyAgICAgICAgZmlsZGwgICAgICglZXNwKQorICAgICAgICBqZ2UgICAgICAgLi5CMS43CisuLkIxLjY6CisgICAgICAgIGZsZGwgICAgICBfcGkwNF8zZEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZzdWJycCAgICAlc3QsICVzdCgzKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGQgICAgICAgJXN0KDIpCisgICAgICAgIGZhZGQgICAgICAlc3QoMSksICVzdAorICAgICAgICBmc3VicCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZzdWJyICAgICAlc3QsICVzdCgzKQorICAgICAgICBmbGRsICAgICAgOCtfcGkwNF8zZEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZzdWJyICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZzdWIgICAgICAlc3QoMiksICVzdAorICAgICAgICBmc3VicCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZsZGwgICAgICAxNitfcGkwNF8zZEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZCAgICAgICAlc3QoMSkKKyAgICAgICAgZnN1YnIgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZzdWJyICAgICAlc3QsICVzdCgxKQorICAgICAgICBmeGNoICAgICAgJXN0KDIpCisgICAgICAgIGZzdWJycCAgICAlc3QsICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBqbXAgICAgICAgLi5CMS4xNQorLi5CMS43OgorICAgICAgICBmbGRsICAgICAgX3BpMDRfNWRAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmc3VicnAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkICAgICAgICVzdCgyKQorICAgICAgICBmYWRkICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZnN1YnAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZmxkbCAgICAgIDgrX3BpMDRfNWRAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMyksICVzdAorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmc3ViICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZnN1YnAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgzKQorICAgICAgICBmbGRsICAgICAgMTYrX3BpMDRfNWRAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGQgICAgICAgJXN0KDApCisgICAgICAgIGZzdWJyICAgICAlc3QoMiksICVzdAorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmc3VicnAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZmxkbCAgICAgIDI0K19waTA0XzVkQEdPVE9GRiglZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICBmc3ViciAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZnN1YnJwICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZsZGwgICAgICAzMitfcGkwNF81ZEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZCAgICAgICAlc3QoMSkKKyAgICAgICAgZnN1YnIgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZzdWJyICAgICAlc3QsICVzdCgxKQorICAgICAgICBmeGNoICAgICAgJXN0KDIpCisgICAgICAgIGZzdWJycCAgICAlc3QsICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBqbXAgICAgICAgLi5CMS4xNQorLi5CMS44OgorICAgICAgICBmbGR0ICAgICAgOCglZWJwKQorICAgICAgICBhZGRsICAgICAgJC0xNjQxNywgJWVieAorICAgICAgICBmbXVsbCAgICAgX1NDQUxFQEdPVE9GRiglZWRpKQorICAgICAgICBtb3ZsICAgICAgJC0yMDc4MjA5OTgxLCAlZWF4CisgICAgICAgIGltdWxsICAgICAlZWJ4CisgICAgICAgIGFkZGwgICAgICAlZWJ4LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWJ4LCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkNCwgJWVkeAorICAgICAgICBzYXJsICAgICAgJDMxLCAlZWN4CisgICAgICAgIHN1YmwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIHNobGwgICAgICAkNSwgJWVheAorICAgICAgICBmc3RwdCAgICAgOCglZWJwKQorICAgICAgICBmbGR0ICAgICAgOCglZWJwKQorICAgICAgICBzdWJsICAgICAgJWVkeCwgJWVheAorICAgICAgICBtb3ZsICAgICAgJDAsIDgoJWVicCkKKyAgICAgICAgc3VibCAgICAgICVlYXgsICVlYngKKyAgICAgICAgZmxkdCAgICAgIDgoJWVicCkKKyAgICAgICAgY21wbCAgICAgICQxNywgJWVieAorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgamwgICAgICAgIC4uQjEuMTAKKy4uQjEuOToKKyAgICAgICAgbGVhICAgICAgICgsJWVkeCw4KSwgJWVheAorICAgICAgICBsZWEgICAgICAgKCVlYXgsJWVkeCw0KSwgJWVjeAorICAgICAgICBpbmNsICAgICAgJWVkeAorICAgICAgICBmbGR0ICAgICAgX180b25waV8zMWxAR09UT0ZGKCVlY3gsJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAxMitfXzRvbnBpXzMxbEBHT1RPRkYoJWVkaSwlZWN4KQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICBmYWRkICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZCAgICAgICAlc3QoMSkKKyAgICAgICAgZmFkZCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZzdHB0ICAgICA4KCVlc3ApCisgICAgICAgIGFuZGwgICAgICAkLTE2Nzc3MjE2LCA4KCVlc3ApCisgICAgICAgIGZsZHQgICAgICA4KCVlc3ApCisgICAgICAgIGZzdWJycCAgICAlc3QsICVzdCgxKQorICAgICAgICBqbXAgICAgICAgLi5CMS4xMQorLi5CMS4xMDoKKyAgICAgICAgZmxkbCAgICAgIF96ZXJvc0BHT1RPRkYoJWVkaSkKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorLi5CMS4xMToKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICBsZWEgICAgICAgKCwlZWR4LDgpLCAlZWF4CisgICAgICAgIGZsZCAgICAgICAlc3QoMykKKyAgICAgICAgbGVhICAgICAgICglZWF4LCVlZHgsNCksICVlZHgKKyAgICAgICAgZmxkdCAgICAgIF9fNG9ucGlfMzFsQEdPVE9GRiglZWR4LCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoNiksICVzdAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgKCVlc3ApCisgICAgICAgIGZhZGQgICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDIpCisgICAgICAgIGZzdWJyICAgICAlc3QsICVzdCgzKQorICAgICAgICBmeGNoICAgICAgJXN0KDIpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgzKQorICAgICAgICBmeGNoICAgICAgJXN0KDIpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgzKQorICAgICAgICBmbGR0ICAgICAgMTIrX180b25waV8zMWxAR09UT0ZGKCVlZHgsJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZCAgICAgICAlc3QoMikKKyAgICAgICAgZmFkZCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmc3ViICAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgzKQorICAgICAgICBmY2hzICAgICAgCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCg0KQorICAgICAgICBmeGNoICAgICAgJXN0KDMpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCg0KQorICAgICAgICBmeGNoICAgICAgJXN0KDIpCisgICAgICAgIGZhZGQgICAgICAlc3QoMyksICVzdAorICAgICAgICBmeGNoICAgICAgJXN0KDIpCisgICAgICAgIGZtdWwgICAgICAlc3QoNSksICVzdAorICAgICAgICBmYWRkICAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkICAgICAgICVzdCg0KQorICAgICAgICBmbGR0ICAgICAgMjQrX180b25waV8zMWxAR09UT0ZGKCVlZHgsJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmFkZCAgICAgICVzdCwgJXN0KDQpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoNCkKKyAgICAgICAgZnN0cHQgICAgIDgoJWVzcCkKKyAgICAgICAgbW92endsICAgIDE2KCVlc3ApLCAlZWJ4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlYngKKyAgICAgICAgY21wbCAgICAgICQxNjQxNSwgJWVieAorICAgICAgICBqZ2UgICAgICAgLi5CMS4xMworLi5CMS4xMjoKKyAgICAgICAgbmVnbCAgICAgICVlYngKKyAgICAgICAgYWRkbCAgICAgICQzMCwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVieCwgJWVjeAorICAgICAgICBtb3ZsICAgICAgMTIoJWVzcCksICVlYXgKKyAgICAgICAgc2hybCAgICAgICVjbCwgJWVheAorICAgICAgICBzaGxsICAgICAgJWNsLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAxMiglZXNwKQorICAgICAgICBtb3ZsICAgICAgJDAsIDgoJWVzcCkKKyAgICAgICAgc2hybCAgICAgICVjbCwgJWVheAorICAgICAgICBqbXAgICAgICAgLi5CMS4xNAorLi5CMS4xMzoKKyAgICAgICAgbmVnbCAgICAgICVlYngKKyAgICAgICAgYWRkbCAgICAgICQzMCwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVieCwgJWVjeAorICAgICAgICBtb3ZsICAgICAgOCglZXNwKSwgJWVkeAorICAgICAgICBzaHJsICAgICAgJWNsLCAlZWR4CisgICAgICAgIHNobGwgICAgICAlY2wsICVlZHgKKyAgICAgICAgbmVnbCAgICAgICVlY3gKKyAgICAgICAgbW92bCAgICAgIDEyKCVlc3ApLCAlZWF4CisgICAgICAgIHNobGwgICAgICAlY2wsICVlYXgKKyAgICAgICAgbW92bCAgICAgICVlYngsICVlY3gKKyAgICAgICAgbW92bCAgICAgICVlZHgsIDgoJWVzcCkKKyAgICAgICAgc2hybCAgICAgICVjbCwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorLi5CMS4xNDoKKyAgICAgICAgZmxkdCAgICAgIDgoJWVzcCkKKyAgICAgICAgYWRkbCAgICAgIDQoJWVzcCksICVlYXgKKyAgICAgICAgZnN1YnJwICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZtdWwgICAgICAlc3QoNiksICVzdAorICAgICAgICBmbGQgICAgICAgJXN0KDQpCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMSwgJWVkeAorICAgICAgICBmYWRkICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgbW92bCAgICAgICglZXNwKSwgJWVjeAorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgzKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoNSkKKyAgICAgICAgZmxkICAgICAgICVzdCgxKQorICAgICAgICBmeGNoICAgICAgJXN0KDMpCisgICAgICAgIGZhZGRsICAgICB6ZXJvX25vbmVAR09UT0ZGKCVlZGksJWVkeCw4KQorICAgICAgICBmYWRkICAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnN1YiAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCg0KQorICAgICAgICBmbGQgICAgICAgJXN0KDIpCisgICAgICAgIGZhZGQgICAgICAlc3QoMiksICVzdAorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgzKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICBmYWRkICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZCAgICAgICAlc3QoMikKKyAgICAgICAgZmxkdCAgICAgIDM2K19fNG9ucGlfMzFsQEdPVE9GRiglZWN4LCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbGQgICAgICAgJXN0KDEpCisgICAgICAgIGZhZGQgICAgICAlc3QoMyksICVzdAorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDQpLCAlc3QKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICBmYWRkICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZCAgICAgICAlc3QoMikKKyAgICAgICAgZmxkdCAgICAgIDQ4K19fNG9ucGlfMzFsQEdPVE9GRiglZWN4LCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbGQgICAgICAgJXN0KDEpCisgICAgICAgIGZhZGQgICAgICAlc3QoMyksICVzdAorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZmxkICAgICAgICVzdCgzKQorICAgICAgICBmeGNoICAgICAgJXN0KDIpCisgICAgICAgIGZtdWwgICAgICAlc3QoNSksICVzdAorICAgICAgICBmbGR0ICAgICAgNjArX180b25waV8zMWxAR09UT0ZGKCVlY3gsJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMykKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgZmFkZCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZzdWJyICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgzKQorICAgICAgICBmbGQgICAgICAgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMikKKyAgICAgICAgZm11bCAgICAgICVzdCg1KSwgJXN0CisgICAgICAgIGZsZHQgICAgICA3MitfXzRvbnBpXzMxbEBHT1RPRkYoJWVjeCwlZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgzKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICBmYWRkICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZnN1YnIgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDQpCisgICAgICAgIGZsZHQgICAgICA4NCtfXzRvbnBpXzMxbEBHT1RPRkYoJWVkaSwlZWN4KQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZmxkICAgICAgICVzdCgyKQorICAgICAgICBmYWRkICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkbCAgICAgIF9UV09fMzJIQEdPVE9GRiglZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmFkZCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdWJycCAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3ViciAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgzKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZGwgICAgICBfcGkwNF8yZEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmYWRkICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZm11bGwgICAgIDgrX3BpMDRfMmRAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorLi5CMS4xNToKKyAgICAgICAgZmxkbCAgICAgIF9UV09fMTJIQEdPVE9GRiglZWRpKQorICAgICAgICBmbGQgICAgICAgJXN0KDIpCisgICAgICAgIGZhZGQgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cHQgICAgIDgoJWVzcCkKKyAgICAgICAgZmxkdCAgICAgIDgoJWVzcCkKKyAgICAgICAgZmFkZCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZzdWJwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3RsICAgICAgKCVlc2kpCisgICAgICAgIGZzdWJycCAgICAlc3QsICVzdCgyKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgIDgoJWVzaSkKKyAgICAgICAgYWRkbCAgICAgICQyMCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVieAorICAgICAgICBwb3BsICAgICAgJWVkaQorICAgICAgICBwb3BsICAgICAgJWVzaQorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisgICAgICAgIC5hbGlnbiAgICAxNiwweDkwCisJLnR5cGUJX19saWJtX3JlZHVjZV9waTA0bCxAZnVuY3Rpb24KKwkuc2l6ZQlfX2xpYm1fcmVkdWNlX3BpMDRsLC4tX19saWJtX3JlZHVjZV9waTA0bAorCS5kYXRhCisjIC0tIEVuZCAgX19saWJtX3JlZHVjZV9waTA0bAorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiA4CisJLmFsaWduIDgKK3plcm9fbm9uZToKKwkubG9uZwkweDAwMDAwMDAwLDB4MDAwMDAwMDAKKwkubG9uZwkweDAwMDAwMDAwLDB4YmZmMDAwMDAKKwkudHlwZQl6ZXJvX25vbmUsQG9iamVjdAorCS5zaXplCXplcm9fbm9uZSwxNgorCS5hbGlnbiA0CitfXzRvbnBpX2Q6CisJLmxvbmcJMTg0MTk0MDYxMQorCS5sb25nCTEwNzI5Nzk3NjAKKwkudHlwZQlfXzRvbnBpX2QsQG9iamVjdAorCS5zaXplCV9fNG9ucGlfZCw4CisJLmFsaWduIDQKK19UV09fMzJIOgorCS5sb25nCTAKKwkubG9uZwkxMTA2NzcxOTY4CisJLnR5cGUJX1RXT18zMkgsQG9iamVjdAorCS5zaXplCV9UV09fMzJILDgKKwkuYWxpZ24gNAorX3BpMDRfM2Q6CisJLmxvbmcJMTQxMzc1NDExMgorCS5sb25nCTEwNzIyNDMxOTUKKwkubG9uZwkyNTYzNTI3MDQwCisJLmxvbmcJMTAyMTg1NTM4NAorCS5sb25nCTM0MTc2ODU4NjgKKwkubG9uZwkzMTE4NDUwOTM2CisJLnR5cGUJX3BpMDRfM2QsQG9iamVjdAorCS5zaXplCV9waTA0XzNkLDI0CisJLmFsaWduIDQKK19waTA0XzVkOgorCS5sb25nCTE0MTM0ODA0NDgKKwkubG9uZwkxMDcyMjQzMTk1CisJLmxvbmcJNDQyNDk5MDcyCisJLmxvbmcJMTAzNjAzOTI2NQorCS5sb25nCTc3MTc1MTkzNgorCS5sb25nCTk5OTQ5NjA3NAorCS5sb25nCTYyMjg1NDE0NAorCS5sb25nCTk2MzM0NzM1NAorCS5sb25nCTEzOTY1OTc2NjQKKwkubG9uZwk5MjI5MDY2OTIKKwkudHlwZQlfcGkwNF81ZCxAb2JqZWN0CisJLnNpemUJX3BpMDRfNWQsNDAKKwkuYWxpZ24gNAorX1NDQUxFOgorCS5sb25nCTAKKwkubG9uZwk4NDUxNTIyNTYKKwkudHlwZQlfU0NBTEUsQG9iamVjdAorCS5zaXplCV9TQ0FMRSw4CisJLmFsaWduIDQKK196ZXJvczoKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLnR5cGUJX3plcm9zLEBvYmplY3QKKwkuc2l6ZQlfemVyb3MsMTYKKwkuYWxpZ24gNAorX3BpMDRfMmQ6CisJLmxvbmcJMTQxMzQ4MDQ0OAorCS5sb25nCTEwNzIyNDMxOTUKKwkubG9uZwk0NDI2NTU1MzcKKwkubG9uZwkxMDM2MDM5MjY1CisJLnR5cGUJX3BpMDRfMmQsQG9iamVjdAorCS5zaXplCV9waTA0XzJkLDE2CisJLmFsaWduIDQKK19UV09fMTJIOgorCS5sb25nCTAKKwkubG9uZwkxMDg1ODAwNDQ4CisJLnR5cGUJX1RXT18xMkgsQG9iamVjdAorCS5zaXplCV9UV09fMTJILDgKKwkuYWxpZ24gMgorX180b25waV8zMWw6CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMzY0NgorCS53b3JkCTQxNzIxCisJLndvcmQJMTY2MDAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMDgzMgorCS53b3JkCTQwMDcyCisJLndvcmQJMTY1NjcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NDAwOAorCS53b3JkCTY1MDQzCisJLndvcmQJMTY1MzcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyODM4NAorCS53b3JkCTY0MTU0CisJLndvcmQJMTY1MDUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzODI3MgorCS53b3JkCTU2MTYyCisJLndvcmQJMTY0NzIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk3Mjk4CisJLndvcmQJNTE2ODIKKwkud29yZAkxNjQ0NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ1NTA0CisJLndvcmQJNjUzMjAKKwkud29yZAkxNjQwOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYxMjA0CisJLndvcmQJNDQ5MjIKKwkud29yZAkxNjM4MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE4NjUyCisJLndvcmQJNTAwMzAKKwkud29yZAkxNjM1MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE0MTQ0CisJLndvcmQJNTk2NTcKKwkud29yZAkxNjMxOAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM3NDUwCisJLndvcmQJNDcxMDUKKwkud29yZAkxNjI5MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE0ODk4CisJLndvcmQJNTY2NDEKKwkud29yZAkxNjI1OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM0NjgwCisJLndvcmQJMzQ2MjMKKwkud29yZAkxNjIyNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ3NjAKKwkud29yZAk0NTUxNQorCS53b3JkCTE2MTk2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDE0ODAKKwkud29yZAk0MDE4NworCS53b3JkCTE2MTY2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDc4NTIKKwkud29yZAk1NTI1MgorCS53b3JkCTE2MTM0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTQwNzIKKwkud29yZAkzNTA4MQorCS53b3JkCTE2MTAzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjY4MDgKKwkud29yZAk1NzQyMQorCS53b3JkCTE2MDcxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjAwNjgKKwkud29yZAk1NzIzMgorCS53b3JkCTE2MDQyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDk1NzYKKwkud29yZAk2MDE4OAorCS53b3JkCTE2MDA5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTAwMTYKKwkud29yZAk1Mjg2MQorCS53b3JkCTE1OTc4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzA2NDgKKwkud29yZAkzNTgyNQorCS53b3JkCTE1OTQ3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjA1NDIKKwkud29yZAk1ODUyOAorCS53b3JkCTE1OTE4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjU0NjgKKwkud29yZAk2MTc0MworCS53b3JkCTE1ODg3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjQ5NjAKKwkud29yZAk0NTgyNQorCS53b3JkCTE1ODUxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTA2MDQKKwkud29yZAkzODc5MgorCS53b3JkCTE1ODI1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTgzOTQKKwkud29yZAkzMzQzNQorCS53b3JkCTE1Nzk0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTU3ODAKKwkud29yZAk0MjcwMworCS53b3JkCTE1NzYzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTQwNTYKKwkud29yZAk2Mzg0MQorCS53b3JkCTE1NzMxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjMwODAKKwkud29yZAk2MjU2MworCS53b3JkCTE1NzAwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjA4NDAKKwkud29yZAk2MjIwNworCS53b3JkCTE1NjY5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzAwOTQKKwkud29yZAk1OTk4MworCS53b3JkCTE1NjM5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjE4MTgKKwkud29yZAk2MDM4OQorCS53b3JkCTE1NjA4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDAxODYKKwkud29yZAk0MDU3OQorCS53b3JkCTE1NTc3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDIxNzAKKwkud29yZAk1ODAwNAorCS53b3JkCTE1NTQ2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTUyNzYKKwkud29yZAkzOTY3OAorCS53b3JkCTE1NTE0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDQ2NzIKKwkud29yZAkzNjgwNgorCS53b3JkCTE1NDgxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTMwNjAKKwkud29yZAkzNDE0NAorCS53b3JkCTE1NDUyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjgwMTYKKwkud29yZAk1NzIzMQorCS53b3JkCTE1NDE5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTYxMTIKKwkud29yZAk0NDk5NQorCS53b3JkCTE1MzkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTM0NjQKKwkud29yZAkzMzM4NworCS53b3JkCTE1MzU4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNzI5NgorCS53b3JkCTYwNzUxCisJLndvcmQJMTUzMjUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyOTQ1MgorCS53b3JkCTQ1MjMxCisJLndvcmQJMTUyOTcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNjIwOAorCS53b3JkCTQ5Njg5CisJLndvcmQJMTUyNjYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNzkwMAorCS53b3JkCTQ0MDAyCisJLndvcmQJMTUyMzUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NzM0MAorCS53b3JkCTMzODAwCisJLndvcmQJMTUyMDQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNzU0NAorCS53b3JkCTUwMTc4CisJLndvcmQJMTUxNzMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MTY4CisJLndvcmQJNDAxMzIKKwkud29yZAkxNTE0MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIxMzkyCisJLndvcmQJNDM3MDIKKwkud29yZAkxNTEwOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ1MTY4CisJLndvcmQJNTQzNzIKKwkud29yZAkxNTA4MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTg5ODYKKwkud29yZAk0MDY4OAorCS53b3JkCTE1MDUwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTY0OAorCS53b3JkCTUzNzQ1CisJLndvcmQJMTUwMTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMDUyMAorCS53b3JkCTU1Nzk1CisJLndvcmQJMTQ5ODYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MzA2MAorCS53b3JkCTMyOTE0CisJLndvcmQJMTQ5NTYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NjE3MgorCS53b3JkCTUyNzcxCisJLndvcmQJMTQ5MjUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNDA1NgorCS53b3JkCTQ1Mjg1CisJLndvcmQJMTQ4OTMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MzU5MAorCS53b3JkCTQ0ODY4CisJLndvcmQJMTQ4NjQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MDc4NgorCS53b3JkCTM1OTcwCisJLndvcmQJMTQ4MzMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMzQzNgorCS53b3JkCTY1NDExCisJLndvcmQJMTQ4MDEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMjAwNgorCS53b3JkCTYxMzgyCisJLndvcmQJMTQ3NzEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNzg1NgorCS53b3JkCTQ1MjM5CisJLndvcmQJMTQ3MzgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MDg5NAorCS53b3JkCTQ5NTU1CisJLndvcmQJMTQ3MDkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0ODA2NAorCS53b3JkCTUzMDY1CisJLndvcmQJMTQ2NzQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0ODYyNAorCS53b3JkCTU0ODQ0CisJLndvcmQJMTQ2NDcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk3OTg4CisJLndvcmQJNDA3NjIKKwkud29yZAkxNDYxNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE2MjcwCisJLndvcmQJNTg3NDUKKwkud29yZAkxNDU4NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM3MDY0CisJLndvcmQJNTAxNjgKKwkud29yZAkxNDU1MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE4NjI0CisJLndvcmQJNjM3MzYKKwkud29yZAkxNDUxOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYwNzU4CisJLndvcmQJNDQ5NjYKKwkud29yZAkxNDQ5MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMzMzA0CisJLndvcmQJNDc0NjUKKwkud29yZAkxNDQ2MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYyMjYKKwkud29yZAk2MDUwMworCS53b3JkCTE0NDMwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjYzODAKKwkud29yZAk1NDkwMAorCS53b3JkCTE0Mzk4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDQzNTIKKwkud29yZAk0OTg2MAorCS53b3JkCTE0MzY4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTE5MDQKKwkud29yZAk0MjY0NgorCS53b3JkCTE0MzM3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTUyOTYKKwkud29yZAk1MDI3OQorCS53b3JkCTE0MzAwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTU0NzQKKwkud29yZAk1MDYwNgorCS53b3JkCTE0Mjc1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDUwNjIKKwkud29yZAk0NDEzNworCS53b3JkCTE0MjQ0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTM0NzIKKwkud29yZAkzNjA2MworCS53b3JkCTE0MjEwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDA2NTgKKwkud29yZAk1Mzg1NAorCS53b3JkCTE0MTgyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjg2NTIKKwkud29yZAk0MzY5MAorCS53b3JkCTE0MTUxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjQ2NDAKKwkud29yZAk2NDM0OAorCS53b3JkCTE0MTE4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzAyODQKKwkud29yZAk0MTk4MAorCS53b3JkCTE0MDg4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDU2NTIKKwkud29yZAkzODIyMgorCS53b3JkCTE0MDU3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTU5MDAKKwkud29yZAk2Mjk0MAorCS53b3JkCTE0MDI2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzE0OTQKKwkud29yZAk1MDc0MQorCS53b3JkCTEzOTk2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDMxOTQKKwkud29yZAk1NTA5NgorCS53b3JkCTEzOTY1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTc0MAorCS53b3JkCTQ1NjQ2CisJLndvcmQJMTM5MzMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyODkzNgorCS53b3JkCTQ0MTUwCisJLndvcmQJMTM5MDMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk4OTk2CisJLndvcmQJNDI5NTUKKwkud29yZAkxMzg3MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ0MDk2CisJLndvcmQJNjEyMDUKKwkud29yZAkxMzgzOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ0NjE0CisJLndvcmQJNTQ1NTAKKwkud29yZAkxMzgxMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI0OTI2CisJLndvcmQJNTczNDcKKwkud29yZAkxMzc3OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMzMTIKKwkud29yZAk2MTQxNQorCS53b3JkCTEzNzQ1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjQzMzYKKwkud29yZAk2Mzg4NAorCS53b3JkCTEzNzE3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjc0OAorCS53b3JkCTYyMjU5CisJLndvcmQJMTM2ODUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NjY3MgorCS53b3JkCTUxNzc1CisJLndvcmQJMTM2NTMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMjQzOAorCS53b3JkCTU1NDIzCisJLndvcmQJMTM2MjQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNzY1MgorCS53b3JkCTQ1NzEzCisJLndvcmQJMTM1OTMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2NTQwOAorCS53b3JkCTUxNTg2CisJLndvcmQJMTM1NTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MDQxNgorCS53b3JkCTU1NzM2CisJLndvcmQJMTM1MzEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MjU0NgorCS53b3JkCTM3NzM0CisJLndvcmQJMTM1MDAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0ODg4MAorCS53b3JkCTY0MjM4CisJLndvcmQJMTM0NjkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NjAwNAorCS53b3JkCTQ2ODMzCisJLndvcmQJMTM0MzcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MTc2MAorCS53b3JkCTM4MTEwCisJLndvcmQJMTM0MDUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MTQ5NgorCS53b3JkCTM1NjU5CisJLndvcmQJMTMzNzQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNTQ3MgorCS53b3JkCTQxMjY5CisJLndvcmQJMTMzNDIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NTQ0NAorCS53b3JkCTM2MDE4CisJLndvcmQJMTMzMTQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2NTEwCisJLndvcmQJNTY0MTcKKwkud29yZAkxMzI4MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMwNzIKKwkud29yZAk1NjgzNworCS53b3JkCTEzMjUyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjEzMzgKKwkud29yZAk0ODQ0MAorCS53b3JkCTEzMjIxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDk1NjgKKwkud29yZAk1NzA4OAorCS53b3JkCTEzMTg5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDI0MAorCS53b3JkCTM5MjgzCisJLndvcmQJMTMxNTcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxODU2MgorCS53b3JkCTMzNTM3CisJLndvcmQJMTMxMjgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMTQyMgorCS53b3JkCTQ0NDg3CisJLndvcmQJMTMwOTcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMTkzMAorCS53b3JkCTYwNDU5CisJLndvcmQJMTMwNjYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MjI3MgorCS53b3JkCTM2NjQxCisJLndvcmQJMTMwMzMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyODk0MAorCS53b3JkCTM2MTUwCisJLndvcmQJMTMwMDQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMTAxMAorCS53b3JkCTUwOTI1CisJLndvcmQJMTI5NzMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyOTQ0OAorCS53b3JkCTY0ODg2CisJLndvcmQJMTI5NDEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMDUwMAorCS53b3JkCTU0NjAwCisJLndvcmQJMTI5MTEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NDI1OAorCS53b3JkCTQ2MjMzCisJLndvcmQJMTI4ODAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMjYyOAorCS53b3JkCTQyNTAyCisJLndvcmQJMTI4NDgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MTYwOAorCS53b3JkCTU1MDcyCisJLndvcmQJMTI4MTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MjM2CisJLndvcmQJNTc4NzEKKwkud29yZAkxMjc4NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQyNDA4CisJLndvcmQJMzQ2MTYKKwkud29yZAkxMjc1NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU2NjkyCisJLndvcmQJNTE5NjMKKwkud29yZAkxMjcyNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM5MDk0CisJLndvcmQJNDg1MjYKKwkud29yZAkxMjY5NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU5ODcwCisJLndvcmQJMzg3ODMKKwkud29yZAkxMjY2MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI2NTYwCisJLndvcmQJMzMxNjUKKwkud29yZAkxMjYzMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU4NjY2CisJLndvcmQJMzc2NjYKKwkud29yZAkxMjYwMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU4NzI4CisJLndvcmQJMzk3ODgKKwkud29yZAkxMjU2OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTkwNDgKKwkud29yZAk0MzUzMAorCS53b3JkCTEyNTM4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTg0OTYKKwkud29yZAk1NzY1OQorCS53b3JkCTEyNTA1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTIzMjQKKwkud29yZAkzNzAyNQorCS53b3JkCTEyNDc3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzg0MzIKKwkud29yZAk1NTg1NgorCS53b3JkCTEyNDQ1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzUyMTAKKwkud29yZAk0NTk2MAorCS53b3JkCTEyNDE1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDU2NDQKKwkud29yZAk1MTM0NQorCS53b3JkCTEyMzg0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzI4NTQKKwkud29yZAk2Mzg4MworCS53b3JkCTEyMzUzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjkzNDgKKwkud29yZAk0MTQ1MAorCS53b3JkCTEyMzIxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjczODQKKwkud29yZAkzODAyNAorCS53b3JkCTEyMjg5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTczNTYKKwkud29yZAk1NzI5MQorCS53b3JkCTEyMjYwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjExNjQKKwkud29yZAk1MTUyMQorCS53b3JkCTEyMjI4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjE0NzIKKwkud29yZAk1OTE1MQorCS53b3JkCTEyMTk2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzY3MDQKKwkud29yZAkzOTk0MworCS53b3JkCTEyMTY1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDU4NjQKKwkud29yZAk1MDE1MQorCS53b3JkCTEyMTM2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzc4OTIKKwkud29yZAk2MzY4NworCS53b3JkCTEyMTA0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTQ1NjAKKwkud29yZAk1MTYxNQorCS53b3JkCTEyMDczCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzg3NzYKKwkud29yZAk1NTY4NAorCS53b3JkCTEyMDQxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTkxMzYKKwkud29yZAk1MzU3MAorCS53b3JkCTEyMDEwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTU1NTYKKwkud29yZAkzNzk1NQorCS53b3JkCTExOTgxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTQ0NTgKKwkud29yZAk0NDY3MAorCS53b3JkCTExOTUwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzY0NDYKKwkud29yZAkzNDA4NAorCS53b3JkCTExOTE5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDY0MTYKKwkud29yZAk1MTY5MworCS53b3JkCTExODg2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjE0MzIKKwkud29yZAkzNDM3NgorCS53b3JkCTExODU3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTYwMzYKKwkud29yZAkzNDgwOQorCS53b3JkCTExODI2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTA1NjIKKwkud29yZAk1NTY1NAorCS53b3JkCTExNzk1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjAyNjQKKwkud29yZAk1MzA1MgorCS53b3JkCTExNzYzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjQwNjQKKwkud29yZAk1MDQxNQorCS53b3JkCTExNzI5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTc0NDQKKwkud29yZAk0ODI5NQorCS53b3JkCTExNzAxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTE4NzQKKwkud29yZAk1MjY3NworCS53b3JkCTExNjcxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjA4MDgKKwkud29yZAkzOTI3NQorCS53b3JkCTExNjQwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzE3OTIKKwkud29yZAk1NTY3NworCS53b3JkCTExNjA2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjA3MTAKKwkud29yZAk0OTAwNgorCS53b3JkCTExNTc4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTA1MjAKKwkud29yZAkzNzQwMworCS53b3JkCTExNTQ2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjAwMDQKKwkud29yZAk1OTQ3MAorCS53b3JkCTExNTE1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjgwOTYKKwkud29yZAkzNzYxMgorCS53b3JkCTExNDg1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjAyNjgKKwkud29yZAk0NDI4MAorCS53b3JkCTExNDUzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTA3NDAKKwkud29yZAk2MTU4OAorCS53b3JkCTExNDIyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTY0MzIKKwkud29yZAk1ODgzNQorCS53b3JkCTExMzkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJODU3NgorCS53b3JkCTQyNDk2CisJLndvcmQJMTEzNTUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMzkyMAorCS53b3JkCTU0OTEyCisJLndvcmQJMTEzMjQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNTYyMAorCS53b3JkCTU0ODQzCisJLndvcmQJMTEyOTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk3MzYKKwkud29yZAk0MzU5MQorCS53b3JkCTExMjY0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzk2MzIKKwkud29yZAk2MTA2MAorCS53b3JkCTExMjM1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjM0NTIKKwkud29yZAk2MzEyOQorCS53b3JkCTExMjA2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTY3OTgKKwkud29yZAk1ODUxMgorCS53b3JkCTExMTc1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTM0NzIKKwkud29yZAk0NjMzMworCS53b3JkCTExMTQxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzczMDAKKwkud29yZAkzNjU5OAorCS53b3JkCTExMTEyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDE5NTIKKwkud29yZAk0MTYzOQorCS53b3JkCTExMDc5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTI0NTIKKwkud29yZAkzMzQ1OQorCS53b3JkCTExMDUwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTg1NTgKKwkud29yZAkzMzI4NworCS53b3JkCTExMDIwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNzU3MAorCS53b3JkCTQzODQzCisJLndvcmQJMTA5ODkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1OTQxNgorCS53b3JkCTYzOTkwCisJLndvcmQJMTA5NTcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2NTI5OAorCS53b3JkCTQ3NzQ0CisJLndvcmQJMTA5MjcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMTA3NgorCS53b3JkCTM0MDg5CisJLndvcmQJMTA4OTYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk3MDQ4CisJLndvcmQJNTczOTQKKwkud29yZAkxMDg2NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEyODcyCisJLndvcmQJNTU0MDUKKwkud29yZAkxMDgzMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEyNjA4CisJLndvcmQJNTE2NjkKKwkud29yZAkxMDc5OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUzNTAKKwkud29yZAk0ODQ1NQorCS53b3JkCTEwNzcyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjM1NjgKKwkud29yZAk1ODY5MgorCS53b3JkCTEwNzQwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDA3ODQKKwkud29yZAkzNzA0NgorCS53b3JkCTEwNzA4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzg5OTIKKwkud29yZAk0Mzg2MQorCS53b3JkCTEwNjc4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTAwNjQKKwkud29yZAk0MDE5OQorCS53b3JkCTEwNjQ4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjYzNjgKKwkud29yZAkzNTc3MQorCS53b3JkCTEwNjExCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjM5OTQKKwkud29yZAk2MDcyMQorCS53b3JkCTEwNTg2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjUwNTIKKwkud29yZAkzNDMwMgorCS53b3JkCTEwNTU0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzk4NDIKKwkud29yZAk1NDk2NAorCS53b3JkCTEwNTI0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTE1NjgKKwkud29yZAk1ODI3NworCS53b3JkCTEwNDkxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjYxNjAKKwkud29yZAk0NjQzOAorCS53b3JkCTEwNDYxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjMyNTIKKwkud29yZAk0MzA0OQorCS53b3JkCTEwNDMxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzUyODgKKwkud29yZAk1ODAwMAorCS53b3JkCTEwNDAwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTQ2MTQKKwkud29yZAk1MDIxNgorCS53b3JkCTEwMzY5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTE2OAorCS53b3JkCTQ4ODA0CisJLndvcmQJMTAzMzYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MDkzNAorCS53b3JkCTMzMDA2CisJLndvcmQJMTAzMDcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2NDUxMgorCS53b3JkCTYyMjQ3CisJLndvcmQJMTAyNzIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1OTk2OAorCS53b3JkCTQzMTIxCisJLndvcmQJMTAyNDAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNTU2MAorCS53b3JkCTM5OTc0CisJLndvcmQJMTAyMTIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxOTc4CisJLndvcmQJNDkzNTMKKwkud29yZAkxMDE4MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE2MjkwCisJLndvcmQJMzg4MDcKKwkud29yZAkxMDE1MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTg2NDYKKwkud29yZAk2NTIyNgorCS53b3JkCTEwMTIxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTY4OTYKKwkud29yZAkzNDMxNworCS53b3JkCTEwMDg4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDAxMzYKKwkud29yZAkzOTExOAorCS53b3JkCTEwMDU3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTQyMDAKKwkud29yZAk0MTc1NgorCS53b3JkCTEwMDI2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTkyNTYKKwkud29yZAk2MzIwMgorCS53b3JkCTk5OTUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMjk2OAorCS53b3JkCTYzNTUzCisJLndvcmQJOTk2NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTczNgorCS53b3JkCTQ0MjkyCisJLndvcmQJOTkzMworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIzMTg2CisJLndvcmQJMzc3NjAKKwkud29yZAk5OTA0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTEwMDgKKwkud29yZAkzNDk1MAorCS53b3JkCTk4NjkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNjY0CisJLndvcmQJNjQyNDgKKwkud29yZAk5ODM2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjQzNTIKKwkud29yZAkzNTE5OQorCS53b3JkCTk4MTEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNDY1NgorCS53b3JkCTYzNzQ3CisJLndvcmQJOTc4MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ0MzMwCisJLndvcmQJNDk4NjQKKwkud29yZAk5NzQ5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTE2NTQKKwkud29yZAkzNTU2NworCS53b3JkCTk3MTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk3OTI0CisJLndvcmQJNTg5MTkKKwkud29yZAk5Njg2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjUzMgorCS53b3JkCTMyODAwCisJLndvcmQJOTY1NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMwMDI0CisJLndvcmQJNTM3OTkKKwkud29yZAk5NjI0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzAxNzIKKwkud29yZAk2NDM0NworCS53b3JkCTk1OTMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MDAzNgorCS53b3JkCTUxMzgyCisJLndvcmQJOTU2MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU4NTc2CisJLndvcmQJMzMwOTMKKwkud29yZAk5NTMxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTM4ODgKKwkud29yZAkzODc2MAorCS53b3JkCTk1MDAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk5MzIyCisJLndvcmQJNTI0NjAKKwkud29yZAk5NDcwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjA5NDQKKwkud29yZAk0MTA3NworCS53b3JkCTk0MzcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNzk3NgorCS53b3JkCTQxODYxCisJLndvcmQJOTQwNworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU1MTc2CisJLndvcmQJNTUxNTgKKwkud29yZAk5Mzc3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDk3NgorCS53b3JkCTM1MjIzCisJLndvcmQJOTM0NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTc4MTYKKwkud29yZAkzOTc4MworCS53b3JkCTkzMTQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNzY1NgorCS53b3JkCTU1NjY5CisJLndvcmQJOTI4NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY0OTQ0CisJLndvcmQJNTMxODQKKwkud29yZAk5MjUwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTI1NDQKKwkud29yZAk0OTE5MAorCS53b3JkCTkyMjIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MDYxMgorCS53b3JkCTQ0NjQ0CisJLndvcmQJOTE5MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTg4MzIKKwkud29yZAk2MzExMQorCS53b3JkCTkxNTUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMTc0NAorCS53b3JkCTM2ODcwCisJLndvcmQJOTEyOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTk0MDQKKwkud29yZAk2MzAyNQorCS53b3JkCTkwOTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NzMxNgorCS53b3JkCTQzMzgxCisJLndvcmQJOTA2NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU1NzE2CisJLndvcmQJNDc0MzMKKwkud29yZAk5MDM1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDY0MTQKKwkud29yZAk0ODQ0MQorCS53b3JkCTkwMDUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxOTExNgorCS53b3JkCTM5NTA2CisJLndvcmQJODk3NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ4MDYwCisJLndvcmQJNTMzODEKKwkud29yZAk4OTQzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTcxMTIKKwkud29yZAk1MDczOQorCS53b3JkCTg5MTEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1ODQwCisJLndvcmQJNjA1ODEKKwkud29yZAk4ODc5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjIxMTIKKwkud29yZAk1NzE5OQorCS53b3JkCTg4NDYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNTkwOAorCS53b3JkCTU5NDk5CisJLndvcmQJODgxOAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEzNzYwCisJLndvcmQJNDgxMTYKKwkud29yZAk4Nzg3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzEzNgorCS53b3JkCTU2MDU5CisJLndvcmQJODc1MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM3NTk2CisJLndvcmQJMzkyMjEKKwkud29yZAk4NzI2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzIzMgorCS53b3JkCTQ4NTUwCisJLndvcmQJODY5MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIyODcyCisJLndvcmQJNDI3NDkKKwkud29yZAk4NjYyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDE5NDgKKwkud29yZAk0MDMxOQorCS53b3JkCTg2MzMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMTE5NgorCS53b3JkCTY0NjkzCisJLndvcmQJODYwMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYyMDUyCisJLndvcmQJNTI5MjMKKwkud29yZAk4NTcxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjc1MAorCS53b3JkCTMzNTQ0CisJLndvcmQJODU0MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEyNDYyCisJLndvcmQJNDYxNzkKKwkud29yZAk4NTA5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjUxMjgKKwkud29yZAk0NTEyMAorCS53b3JkCTg0NzYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MTYzNAorCS53b3JkCTYyNTIzCisJLndvcmQJODQ0NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE1NzU4CisJLndvcmQJNDIxNjMKKwkud29yZAk4NDE2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzQwMjIKKwkud29yZAkzNjI2NworCS53b3JkCTgzODUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MTI1MgorCS53b3JkCTM5Nzk2CisJLndvcmQJODM1MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ5NzgyCisJLndvcmQJNTQ0MjMKKwkud29yZAk4MzIzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjU0MjgKKwkud29yZAk0MjA4NgorCS53b3JkCTgyOTEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNDM4OAorCS53b3JkCTQ0ODEwCisJLndvcmQJODI2MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTc0NTYKKwkud29yZAk2NDA5MgorCS53b3JkCTgyMjgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0ODMzNgorCS53b3JkCTYyNDQ4CisJLndvcmQJODE5NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYwOTEyCisJLndvcmQJNjE2MjIKKwkud29yZAk4MTY3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTc4NTIKKwkud29yZAkzNzI1MAorCS53b3JkCTgxMzcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1Nzk0MAorCS53b3JkCTU2NDUzCisJLndvcmQJODEwNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ3MjU2CisJLndvcmQJNTk4MjUKKwkud29yZAk4MDc0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzc3NAorCS53b3JkCTU5MTIwCisJLndvcmQJODA0NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQzNDQ4CisJLndvcmQJNjI4NTIKKwkud29yZAk4MDEyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDg0MAorCS53b3JkCTU3MTk1CisJLndvcmQJNzk4MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQwODYyCisJLndvcmQJNTI1NjUKKwkud29yZAk3OTUxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTQ0MAorCS53b3JkCTYwNDc0CisJLndvcmQJNzkxOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU1NTIwCisJLndvcmQJMzg2NDgKKwkud29yZAk3ODg5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTUzMTYKKwkud29yZAk1MjQyMgorCS53b3JkCTc4NTcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxODcwNAorCS53b3JkCTQ3MjI3CisJLndvcmQJNzgyNworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ4ODkyCisJLndvcmQJNTQyODMKKwkud29yZAk3Nzk1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTI2NzAKKwkud29yZAk0MTk5MAorCS53b3JkCTc3NjUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNzU3MAorCS53b3JkCTQ5ODQyCisJLndvcmQJNzczNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ3MjMwCisJLndvcmQJNDc5OTIKKwkud29yZAk3NzAzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDEwMjAKKwkud29yZAk1NjI1MworCS53b3JkCTc2NzEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMzQwNAorCS53b3JkCTU4MzEyCisJLndvcmQJNzY0MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM1MTc2CisJLndvcmQJNTE4NTQKKwkud29yZAk3NjEwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDkxODgKKwkud29yZAk1OTA1MQorCS53b3JkCTc1NzgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNjY1NgorCS53b3JkCTU0NTA3CisJLndvcmQJNzU0NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQxMzIwCisJLndvcmQJNDg1NjUKKwkud29yZAk3NTE3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzAyCisJLndvcmQJNDI0OTAKKwkud29yZAk3NDg2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjY2ODAKKwkud29yZAkzOTk2NworCS53b3JkCTc0NTQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MTMwNAorCS53b3JkCTQzNjM4CisJLndvcmQJNzQyNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIzMTQKKwkud29yZAk0ODUzMworCS53b3JkCTczOTMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MzI5NAorCS53b3JkCTM1NjkzCisJLndvcmQJNzM2MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI0NTM4CisJLndvcmQJNDgzMTkKKwkud29yZAk3MzMxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTYyOTYKKwkud29yZAk0NzI2MworCS53b3JkCTczMDAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyODIzNgorCS53b3JkCTM4NTk5CisJLndvcmQJNzI2OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY1OTQKKwkud29yZAk2MjExNgorCS53b3JkCTcyMzgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NzEwNAorCS53b3JkCTYzNTczCisJLndvcmQJNzE5OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM0ODEyCisJLndvcmQJMzQzMDMKKwkud29yZAk3MTc2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTE0NAorCS53b3JkCTMzNjk1CisJLndvcmQJNzE0NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI0OTY2CisJLndvcmQJNTU3NjgKKwkud29yZAk3MTE0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjI3MjAKKwkud29yZAk0Mzk0NgorCS53b3JkCTcwNzgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMTU0MgorCS53b3JkCTU2MDYyCisJLndvcmQJNzA1MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYyMzU2CisJLndvcmQJNTkwOTYKKwkud29yZAk3MDIwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjg0MTIKKwkud29yZAk0MDUzMworCS53b3JkCTY5OTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNDA4MAorCS53b3JkCTUwNDY3CisJLndvcmQJNjk1OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMzMjk2CisJLndvcmQJNDY4NDEKKwkud29yZAk2OTI1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzk2MDAKKwkud29yZAkzODYyNworCS53b3JkCTY4OTcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNDQzNgorCS53b3JkCTM3NjA3CisJLndvcmQJNjg2NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM5MDMyCisJLndvcmQJNTY0MjEKKwkud29yZAk2ODMzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjQwMzIKKwkud29yZAk1NDk4NworCS53b3JkCTY4MDQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNzY0OAorCS53b3JkCTQyMjEyCisJLndvcmQJNjc2OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQzODQwCisJLndvcmQJNDYxMDcKKwkud29yZAk2NzM5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTczMTYKKwkud29yZAkzNjU3NAorCS53b3JkCTY3MTEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk4OTI4CisJLndvcmQJMzc2NTIKKwkud29yZAk2Njc3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjQ5NDQKKwkud29yZAk0NzQzMworCS53b3JkCTY2NDgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNzM5MgorCS53b3JkCTU3NDMwCisJLndvcmQJNjYxNgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM5ODQ4CisJLndvcmQJNDMzNDAKKwkud29yZAk2NTg1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjQxNjAKKwkud29yZAk0MzU0MgorCS53b3JkCTY1NTUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNTIyNgorCS53b3JkCTYzMDE1CisJLndvcmQJNjUyNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQwNzM2CisJLndvcmQJNjQzNjgKKwkud29yZAk2NDkzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDIxNjgKKwkud29yZAk0OTUyNgorCS53b3JkCTY0NjIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NTU5NgorCS53b3JkCTM0MjQzCisJLndvcmQJNjQzMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwNjkwCisJLndvcmQJMzk3MDUKKwkud29yZAk2NDAxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTQ0NDgKKwkud29yZAk0Njg1NgorCS53b3JkCTYzNjgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2NDM5MgorCS53b3JkCTYyNzM2CisJLndvcmQJNjMzNworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEyNzgwCisJLndvcmQJNTY0NjEKKwkud29yZAk2MzA3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTUzNjAKKwkud29yZAk0OTE0NQorCS53b3JkCTYyNzcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMDUxMgorCS53b3JkCTQ5OTMxCisJLndvcmQJNjI0MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU0NTEyCisJLndvcmQJNTU4MjAKKwkud29yZAk2MjEyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJODQwMgorCS53b3JkCTM5MzMzCisJLndvcmQJNjE4NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM0MDk0CisJLndvcmQJNTM1OTMKKwkud29yZAk2MTUzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzE5NjAKKwkud29yZAkzODgxNworCS53b3JkCTYxMjEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNjk1NAorCS53b3JkCTM5MjkxCisJLndvcmQJNjA5MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ5NjAwCisJLndvcmQJNDg3NjUKKwkud29yZAk2MDU2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTk1ODAKKwkud29yZAk1NjU0MQorCS53b3JkCTYwMjkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNTYyNAorCS53b3JkCTQ0NTUwCisJLndvcmQJNTk5OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQxNDIKKwkud29yZAk0NzMxNgorCS53b3JkCTU5NjcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MzUyMAorCS53b3JkCTQzNjEyCisJLndvcmQJNTkzNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwOTc2CisJLndvcmQJNDA4OTYKKwkud29yZAk1OTAyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjM1NzYKKwkud29yZAk1NzcyOQorCS53b3JkCTU4NzQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNzI4OAorCS53b3JkCTMzMTIyCisJLndvcmQJNTg0MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI0Mzg0CisJLndvcmQJNTIwNzkKKwkud29yZAk1ODA5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDc5NTIKKwkud29yZAk1ODcxOQorCS53b3JkCTU3NzkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NDI0MgorCS53b3JkCTU1NDQ1CisJLndvcmQJNTc1MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYxMjMyCisJLndvcmQJMzg4NDcKKwkud29yZAk1NzE2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjMyMzIKKwkud29yZAk0NjAzOQorCS53b3JkCTU2ODMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMzM5NgorCS53b3JkCTQyOTMzCisJLndvcmQJNTY1NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI3MzkyCisJLndvcmQJNDMzMDUKKwkud29yZAk1NjIyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDA3MDgKKwkud29yZAkzNTMxOQorCS53b3JkCTU1OTUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NDQwOAorCS53b3JkCTU1Njg1CisJLndvcmQJNTU2NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQyMDkwCisJLndvcmQJNDQ2MDcKKwkud29yZAk1NTMzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjU1MDQKKwkud29yZAk1MzQ2NgorCS53b3JkCTU1MDAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNDIwOAorCS53b3JkCTMzMTQ5CisJLndvcmQJNTQ3MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUyNjgKKwkud29yZAk0NTM3NQorCS53b3JkCTU0NDAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNDQKKwkud29yZAk0MDAwMAorCS53b3JkCTU0MDkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NjY4OAorCS53b3JkCTUyMzU4CisJLndvcmQJNTM3NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI1ODQ4CisJLndvcmQJNTYxNzUKKwkud29yZAk1MzQ1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTc5MDAKKwkud29yZAk0NDA1NQorCS53b3JkCTUzMTUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNDgwMAorCS53b3JkCTQzNDM3CisJLndvcmQJNTI4MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE3OTg0CisJLndvcmQJNTQ4NzIKKwkud29yZAk1MjQ5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjU3NDQKKwkud29yZAk0MTM0NQorCS53b3JkCTUyMjMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk3NjY4CisJLndvcmQJNDM2ODIKKwkud29yZAk1MTkxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDc0MzQKKwkud29yZAkzNjcwNQorCS53b3JkCTUxNjEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMDg4OAorCS53b3JkCTQwMzIzCisJLndvcmQJNTEyOQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM5NjIKKwkud29yZAk0MzAzMgorCS53b3JkCTUwOTkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MDI3MAorCS53b3JkCTQ5MjYwCisJLndvcmQJNTA2OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwMTYwCisJLndvcmQJNjQwNDEKKwkud29yZAk1MDMyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjU2MjQKKwkud29yZAkzNjAxMworCS53b3JkCTUwMDQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0ODMyOAorCS53b3JkCTU5MzQ1CisJLndvcmQJNDk3NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUxNTA4CisJLndvcmQJNjM5MjAKKwkud29yZAk0OTQzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjc4NzIKKwkud29yZAkzOTEzNQorCS53b3JkCTQ5MTMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMzU5MAorCS53b3JkCTU4ODU3CisJLndvcmQJNDg4MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUwODgwCisJLndvcmQJNjEzMjMKKwkud29yZAk0ODQ3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDQ4MDIKKwkud29yZAkzNzE4MQorCS53b3JkCTQ4MjAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MzgwOAorCS53b3JkCTU3ODEzCisJLndvcmQJNDc4OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY0NDI0CisJLndvcmQJNDk3MTQKKwkud29yZAk0NzU3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzE2NTIKKwkud29yZAk0NDAxMQorCS53b3JkCTQ3MjcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyODI1MgorCS53b3JkCTUwODM0CisJLndvcmQJNDY5NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMwMzcwCisJLndvcmQJMzg3NDIKKwkud29yZAk0NjY1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTc3MjgKKwkud29yZAk1ODQwMworCS53b3JkCTQ2MjgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNTkwMAorCS53b3JkCTM3MTEyCisJLndvcmQJNDYwMworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQwNzY0CisJLndvcmQJNDA5MTQKKwkud29yZAk0NTcyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjE0NzIKKwkud29yZAk0NjkxMAorCS53b3JkCTQ1NDEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNzg1NAorCS53b3JkCTM1MDMwCisJLndvcmQJNDUxMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQzNzgKKwkud29yZAkzNTc3NgorCS53b3JkCTQ0NzkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1Nzk2MgorCS53b3JkCTU1Mjk1CisJLndvcmQJNDQ0OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY0MzUyCisJLndvcmQJNTY3MTcKKwkud29yZAk0NDE1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzc3NDQKKwkud29yZAk0OTQxNgorCS53b3JkCTQzODQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzODQ4NAorCS53b3JkCTM1NzU5CisJLndvcmQJNDM1NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU1MDIwCisJLndvcmQJNTQ5NjkKKwkud29yZAk0MzI0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJOTE4OAorCS53b3JkCTU1MjIzCisJLndvcmQJNDI5MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY4MjIKKwkud29yZAk0MzA3OQorCS53b3JkCTQyNjIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0ODg3MAorCS53b3JkCTQwOTQzCisJLndvcmQJNDIzMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTk5MzYKKwkud29yZAk0MjczMQorCS53b3JkCTQxOTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMzQzMAorCS53b3JkCTQzMTM2CisJLndvcmQJNDE2OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ3MDAKKwkud29yZAk1NTY2NQorCS53b3JkCTQxMzcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk4MDU2CisJLndvcmQJNDAyMTYKKwkud29yZAk0MTA2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzcxNgorCS53b3JkCTQ1NDAzCisJLndvcmQJNDA3NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUzNDQwCisJLndvcmQJNDk0ODgKKwkud29yZAk0MDQ0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDE3NzYKKwkud29yZAk1MDE4OAorCS53b3JkCTQwMTMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMDk5NAorCS53b3JkCTY0NTU2CisJLndvcmQJMzk4MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE2MjUyCisJLndvcmQJNjA2NjEKKwkud29yZAkzOTUxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjEyNTIKKwkud29yZAk2NTAyMQorCS53b3JkCTM5MjAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNjIzNgorCS53b3JkCTQzODAzCisJLndvcmQJMzg4OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTYzMDY0CisJLndvcmQJMzUzMDgKKwkud29yZAkzODU3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDkwOTYKKwkud29yZAkzOTg0OAorCS53b3JkCTM4MjgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxNTY4MAorCS53b3JkCTQ4NjczCisJLndvcmQJMzc5NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ4MDY4CisJLndvcmQJNTA5NTcKKwkud29yZAkzNzY2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjA4MjQKKwkud29yZAk1NjA4NgorCS53b3JkCTM3MzQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NjUwNAorCS53b3JkCTQzMjI0CisJLndvcmQJMzcwNAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUyNDI4CisJLndvcmQJNDYwOTQKKwkud29yZAkzNjcyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTc1NDgKKwkud29yZAk1MjA2NgorCS53b3JkCTM2NDIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MTczOAorCS53b3JkCTM1NTY1CisJLndvcmQJMzYxMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTMxMTg0CisJLndvcmQJNTA1ODgKKwkud29yZAkzNTc5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTcxNgorCS53b3JkCTUyNjgxCisJLndvcmQJMzU0OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ0NjU2CisJLndvcmQJNDMzODUKKwkud29yZAkzNTE4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTI2NjgKKwkud29yZAk0MzI1OQorCS53b3JkCTM0ODYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNDU0NAorCS53b3JkCTM1NDA4CisJLndvcmQJMzQ1MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI4ODU0CisJLndvcmQJNjUwMTgKKwkud29yZAkzNDI1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTY5NgorCS53b3JkCTQwMzkxCisJLndvcmQJMzM5MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM5NTgwCisJLndvcmQJNTY0MDAKKwkud29yZAkzMzYzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjA0MjgKKwkud29yZAkzOTU3OQorCS53b3JkCTMzMzIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMjMyOAorCS53b3JkCTM2NzI3CisJLndvcmQJMzMwMQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM0MDIwCisJLndvcmQJNTQ0NTcKKwkud29yZAkzMjcwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzQwMTYKKwkud29yZAk0ODQwMAorCS53b3JkCTMyMzgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2OTIyCisJLndvcmQJNTE0MTcKKwkud29yZAkzMjA4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjcyMDgKKwkud29yZAk2NDY0MQorCS53b3JkCTMxNzYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxODAyCisJLndvcmQJNDg4ODYKKwkud29yZAkzMTQ2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzU0NDAKKwkud29yZAk2MTU5MAorCS53b3JkCTMxMTUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MDYxMAorCS53b3JkCTUxNjA0CisJLndvcmQJMzA4NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU0NDAKKwkud29yZAkzODE5OQorCS53b3JkCTMwNTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2OTE0CisJLndvcmQJNDM4NjcKKwkud29yZAkzMDIyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjQwMDAKKwkud29yZAk0NTI1NgorCS53b3JkCTI5ODkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MTQ5NgorCS53b3JkCTU3Mzk2CisJLndvcmQJMjk1OQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTExNTM4CisJLndvcmQJNDYyNTYKKwkud29yZAkyOTI5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzY4MDIKKwkud29yZAk0ODAyMAorCS53b3JkCTI4OTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NzkxMAorCS53b3JkCTU3OTAzCisJLndvcmQJMjg2NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ3NDg0CisJLndvcmQJNDg3OTgKKwkud29yZAkyODM1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTc3NjYKKwkud29yZAk1NzcwOQorCS53b3JkCTI4MDUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NDA2NAorCS53b3JkCTQ3ODU2CisJLndvcmQJMjc3NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ5MzQwCisJLndvcmQJNDgwODAKKwkud29yZAkyNzQzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzY0NTQKKwkud29yZAk1NjczMQorCS53b3JkCTI3MTIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MTU0OAorCS53b3JkCTYzMzg1CisJLndvcmQJMjY4MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU2MDAwCisJLndvcmQJNDg3MTYKKwkud29yZAkyNjQ1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDQ5OTIKKwkud29yZAk1MDA0MAorCS53b3JkCTI2MTUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MzEzNgorCS53b3JkCTU4MTc3CisJLndvcmQJMjU4NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ5NzMwCisJLndvcmQJMzMyNzAKKwkud29yZAkyNTU3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjk4MDgKKwkud29yZAk1MTA2MworCS53b3JkCTI1MjYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNTI3NgorCS53b3JkCTQ2NzI0CisJLndvcmQJMjQ5NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE3MzI0CisJLndvcmQJMzU5MjgKKwkud29yZAkyNDYzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTIyODQKKwkud29yZAk2MzkxNgorCS53b3JkCTI0MzMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1NDE0CisJLndvcmQJNDY3MDQKKwkud29yZAkyNDAyCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTE3MTAKKwkud29yZAk1NzE2OAorCS53b3JkCTIzNzEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNzM2NgorCS53b3JkCTQ5MjUzCisJLndvcmQJMjM0MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ1MzMyCisJLndvcmQJNTMwMzMKKwkud29yZAkyMzA5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTQxNTIKKwkud29yZAkzNzQxOAorCS53b3JkCTIyNzYKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MzA3NgorCS53b3JkCTQ3Mzk4CisJLndvcmQJMjI0NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE0Mzc0CisJLndvcmQJNTk0NzcKKwkud29yZAkyMjE2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTkzMzYKKwkud29yZAkzMzQzNQorCS53b3JkCTIxODQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMTYxMgorCS53b3JkCTQzMjY3CisJLndvcmQJMjE1NAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM0NjY0CisJLndvcmQJMzkzNzIKKwkud29yZAkyMTIxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTcyCisJLndvcmQJNjI3NjEKKwkud29yZAkyMDkxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJOTgxNgorCS53b3JkCTQwNzE1CisJLndvcmQJMjA2MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTY1MTE2CisJLndvcmQJNDA0ODEKKwkud29yZAkyMDMwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjgwNjYKKwkud29yZAkzOTE4NAorCS53b3JkCTE5OTkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzNzQwOAorCS53b3JkCTYzOTIzCisJLndvcmQJMTk2OAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE1NzYwCisJLndvcmQJNDIzMDUKKwkud29yZAkxOTM3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjgyMzYKKwkud29yZAk1OTM0MAorCS53b3JkCTE5MDUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0MzI1OAorCS53b3JkCTU5NDAyCisJLndvcmQJMTg3NQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE5OTg4CisJLndvcmQJNTAwODcKKwkud29yZAkxODQ0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjM0NTYKKwkud29yZAk0NzgzMworCS53b3JkCTE4MTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2NTE4NAorCS53b3JkCTYxNDI2CisJLndvcmQJMTc4MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUyOTgyCisJLndvcmQJNDg0NTYKKwkud29yZAkxNzUxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzAwMjAKKwkud29yZAk2MjgwOQorCS53b3JkCTE3MTkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk5MDk2CisJLndvcmQJNjMwNjEKKwkud29yZAkxNjg4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTk2NDgKKwkud29yZAk0NDM3NAorCS53b3JkCTE2NTQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMTQ1NgorCS53b3JkCTMzODQ3CisJLndvcmQJMTYyNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEyMzkyCisJLndvcmQJNTA1MDAKKwkud29yZAkxNTk1CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTY0MzIKKwkud29yZAk1OTE5NgorCS53b3JkCTE1NjMKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MTAwOAorCS53b3JkCTQwMjY1CisJLndvcmQJMTUzMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM3ODQyCisJLndvcmQJMzMyNzAKKwkud29yZAkxNTAzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzc5MTYKKwkud29yZAk0NDU0MworCS53b3JkCTE0NzEKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMTQ5MAorCS53b3JkCTM2NDIxCisJLndvcmQJMTQ0MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE5MDQwCisJLndvcmQJMzgzOTcKKwkud29yZAkxNDA5CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzEyMjQKKwkud29yZAk0NzE2MgorCS53b3JkCTEzNzkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk1MjA1NgorCS53b3JkCTQxNDYxCisJLndvcmQJMTM0NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTEwODEwCisJLndvcmQJNTYzNzQKKwkud29yZAkxMzE3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTM1OAorCS53b3JkCTM1MDg2CisJLndvcmQJMTI4NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM2NjQwCisJLndvcmQJNTAyMjYKKwkud29yZAkxMjUxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzM4NTYKKwkud29yZAk0NTU5NworCS53b3JkCTEyMjIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMTU1MgorCS53b3JkCTYzMTI4CisJLndvcmQJMTE5MQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTExOTgKKwkud29yZAkzNTYxNgorCS53b3JkCTExNjIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMjMyCisJLndvcmQJNTk1MDYKKwkud29yZAkxMTMxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTEwODYKKwkud29yZAkzNDk2MworCS53b3JkCTExMDAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzOTYwCisJLndvcmQJMzkwNjEKKwkud29yZAkxMDY3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDU2NAorCS53b3JkCTU3MTM0CisJLndvcmQJMTAzNworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTU5NDY4CisJLndvcmQJMzUyODUKKwkud29yZAkxMDA3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjM0MjIKKwkud29yZAkzNTQzMQorCS53b3JkCTk3NgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM4MzUyCisJLndvcmQJNTE0NjIKKwkud29yZAk5NDUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyNTgwNgorCS53b3JkCTU1NjYwCisJLndvcmQJOTE0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzg4NDIKKwkud29yZAk0MTMyNworCS53b3JkCTg4MworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE3OTgwCisJLndvcmQJNTA0NTgKKwkud29yZAk4NTIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk2MTE5NAorCS53b3JkCTU5NzEwCisJLndvcmQJODIxCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjEwOTgKKwkud29yZAk0MjA4NgorCS53b3JkCTc5MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTE2NzA0CisJLndvcmQJNDMzNDEKKwkud29yZAk3NTcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NjMxNgorCS53b3JkCTUyODQwCisJLndvcmQJNzI4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjAzODYKKwkud29yZAkzMzkzNgorCS53b3JkCTY5NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwMDY0CisJLndvcmQJNTE4NjQKKwkud29yZAk2NjQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMjY4CisJLndvcmQJNTc1MDAKKwkud29yZAk2MzQKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxMTE1MgorCS53b3JkCTUxMTcxCisJLndvcmQJNjA0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMjMxNjQKKwkud29yZAk2MzcyNworCS53b3JkCTU3MgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTIwNTE0CisJLndvcmQJNDAyODAKKwkud29yZAk1NDIKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkyMTgxOAorCS53b3JkCTU3OTIyCisJLndvcmQJNTExCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzIzNjYKKwkud29yZAk0NjQxMworCS53b3JkCTQ4MAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTUzOTcyCisJLndvcmQJNDMxNDgKKwkud29yZAk0NDkKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMDEzNAorCS53b3JkCTY1MTMzCisJLndvcmQJNDE4CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMTUyODIKKwkud29yZAk2MTUxNgorCS53b3JkCTM4NworCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTQ5ODcyCisJLndvcmQJNDkyMjIKKwkud29yZAkzNTUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk5NDg0CisJLndvcmQJNjM5NTgKKwkud29yZAkzMjUKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk0NzAyOAorCS53b3JkCTM1MzQxCisJLndvcmQJMjk0CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjc3MAorCS53b3JkCTU4NjEzCisJLndvcmQJMjYzCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMzMzNzIKKwkud29yZAk0MzQ0OAorCS53b3JkCTIzMgorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTI3NzkyCisJLndvcmQJNTE2MjkKKwkud29yZAkxOTgKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkxOTcxMgorCS53b3JkCTUzNjkxCisJLndvcmQJMTcwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNDIxNDQKKwkud29yZAk2MDkyOQorCS53b3JkCTEzNQorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTM1MjQwCisJLndvcmQJNDg3OTkKKwkud29yZAkxMDcKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAk5MTAKKwkud29yZAk1MTIxMgorCS53b3JkCTc3CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNjUwNjIKKwkud29yZAkzMzY2OAorCS53b3JkCTQ2CisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkwCisJLndvcmQJNTI2MjQKKwkud29yZAk1MTc5OQorCS53b3JkCTE0CisJLndvcmQJMAorCS50eXBlCV9fNG9ucGlfMzFsLEBvYmplY3QKKwkuc2l6ZQlfXzRvbnBpXzMxbCw2NDQ0CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvbGlibV9zaW5jb3NfaHVnZS5TIGIvbGlibS94ODYvbGlibV9zaW5jb3NfaHVnZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0M2QxOTMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9saWJtX3NpbmNvc19odWdlLlMKQEAgLTAsMCArMSw2NjggQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyMgLS0gQmVnaW4gIF9fbGlibV9zaW5jb3NfaHVnZQorCS50ZXh0CisgICAgICAgLmFsaWduICAgIDE2LDB4OTAKKwkuaGlkZGVuIF9fbGlibV9zaW5jb3NfaHVnZQorCS5nbG9ibCBfX2xpYm1fc2luY29zX2h1Z2UKK19fbGlibV9zaW5jb3NfaHVnZToKKyMgcGFyYW1ldGVyIDE6IDggKyAlZWJwCisjIHBhcmFtZXRlciAyOiAxNiArICVlYnAKKyMgcGFyYW1ldGVyIDM6IDIwICsgJWVicAorLi5CMS4xOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBhbmRsICAgICAgJC02NCwgJWVzcAorICAgICAgICBwdXNobCAgICAgJWVzaQorICAgICAgICBwdXNobCAgICAgJWVkaQorICAgICAgICBwdXNobCAgICAgJWVieAorICAgICAgICBzdWJsICAgICAgJDUyLCAlZXNwCisgICAgICAgIG1vdmwgICAgICAxNiglZWJwKSwgJWVheAorICAgICAgICBtb3ZsICAgICAgMjAoJWVicCksICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlYXgsIDMyKCVlc3ApCisgICAgICAgIG1vdmwgICAgICAlZWR4LCAzNiglZXNwKQorLi5CMS4yOgorICAgICAgICBmbnN0Y3cgICAgMzAoJWVzcCkKKy4uQjEuMzoKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZWRpCisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZWRpKSwgJWVkaQorICAgICAgICBtb3ZzZCAgICAgOCglZWJwKSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgIDEyKCVlYnApLCAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZXNpLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVheAorICAgICAgICBhbmRwcyAgICAgLkxfMmlsMGZsb2F0cGFja2V0LjBAR09UT0ZGKCVlZGkpLCAleG1tMQorICAgICAgICBzaHJsICAgICAgJDMxLCAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZWF4LCA0MCglZXNwKQorICAgICAgICBjbXBsICAgICAgJDExMDQxNTA1MjgsICVlYXgKKyAgICAgICAgbW92c2QgICAgICV4bW0xLCA4KCVlYnApCisgICAgICAgIGphZSAgICAgICAuLkIxLjExCisuLkIxLjQ6CisgICAgICAgIG1vdnNkICAgICBfUGk0SW52QEdPVE9GRiglZWRpKSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3Z6d2wgICAgMzAoJWVzcCksICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQ3NjgsICVlYXgKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgY21wbCAgICAgICQ3NjgsICVlYXgKKyAgICAgICAgamUgICAgICAgIC4uQjEuNDIKKy4uQjEuNToKKyAgICAgICAgb3JsICAgICAgICQtNjQ3NjgsICVlZHgKKyAgICAgICAgbW92dyAgICAgICVkeCwgMjgoJWVzcCkKKy4uQjEuNjoKKyAgICAgICAgZmxkY3cgICAgIDI4KCVlc3ApCisuLkIxLjc6CisgICAgICAgIG1vdnNkICAgICA4KCVlYnApLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDEsICVlYngKKy4uQjEuODoKKyAgICAgICAgbW92bCAgICAgICVlYngsIDEyKCVlc3ApCisgICAgICAgIG1vdmwgICAgICA0KCVlc3ApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJ4LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZXNpLCA4KCVlc3ApCisgICAgICAgIG1vdmwgICAgICAlZWJ4LCAlZXNpCisgICAgICAgIHNocmwgICAgICAkMjAsICVlc2kKKyAgICAgICAgYW5kbCAgICAgICQxMDQ4NTc1LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZXNpLCAlZWN4CisgICAgICAgIG9ybCAgICAgICAkMTA0ODU3NiwgJWVheAorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVkeAorICAgICAgICBhZGRsICAgICAgJDE5LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMTMsICVlc2kKKyAgICAgICAgbW92bCAgICAgICVlY3gsIDI0KCVlc3ApCisgICAgICAgIHNocmwgICAgICAlY2wsICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlc2ksICVlY3gKKyAgICAgICAgc2hsbCAgICAgICVjbCwgJWVheAorICAgICAgICBtb3ZsICAgICAgMjQoJWVzcCksICVlY3gKKyAgICAgICAgbW92bCAgICAgICglZXNwKSwgJWVzaQorICAgICAgICBzaHJsICAgICAgJWNsLCAlZXNpCisgICAgICAgIG9ybCAgICAgICAlZXNpLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTA5NDcxMzM0NCwgJWVieAorICAgICAgICBtb3ZzZCAgICAgJXhtbTEsIDE2KCVlc3ApCisgICAgICAgIGZsZGwgICAgICAxNiglZXNwKQorICAgICAgICBjbW92YiAgICAgJWVkeCwgJWVheAorICAgICAgICBtb3ZsICAgICAgOCglZXNwKSwgJWVzaQorICAgICAgICBsZWEgICAgICAgMSglZWF4KSwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVieAorICAgICAgICBhbmRsICAgICAgJC0yLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJ4LCAxNiglZXNwKQorICAgICAgICBmaWxkbCAgICAgMTYoJWVzcCkKKyAgICAgICAgbW92bCAgICAgIDEyKCVlc3ApLCAlZWJ4CisgICAgICAgIGNtcGwgICAgICAkMTA5NDcxMzM0NCwgNDAoJWVzcCkKKyAgICAgICAgamFlICAgICAgIC4uQjEuMTAKKy4uQjEuOToKKyAgICAgICAgZmxkbCAgICAgIF9QaTR4M0BHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGRsICAgICAgOCtfUGk0eDNAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkbCAgICAgIDE2K19QaTR4M0BHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBqbXAgICAgICAgLi5CMS4xNworLi5CMS4xMDoKKyAgICAgICAgZmxkbCAgICAgIF9QaTR4NEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGRsICAgICAgOCtfUGk0eDRAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkbCAgICAgIDE2K19QaTR4NEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGRsICAgICAgMjQrX1BpNHg0QEdPVE9GRiglZWRpKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGptcCAgICAgICAuLkIxLjE3CisuLkIxLjExOgorICAgICAgICBtb3Z6d2wgICAgMzAoJWVzcCksICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQ3NjgsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQ3NjgsICVlYXgKKyAgICAgICAgamUgICAgICAgIC4uQjEuNDMKKy4uQjEuMTI6CisgICAgICAgIG9ybCAgICAgICAkLTY0NzY4LCAlZWR4CisgICAgICAgIG1vdncgICAgICAlZHgsIDI4KCVlc3ApCisuLkIxLjEzOgorICAgICAgICBmbGRjdyAgICAgMjgoJWVzcCkKKy4uQjEuMTQ6CisgICAgICAgIG1vdnNkICAgICA4KCVlYnApLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDEsICVlYngKKy4uQjEuMTU6CisgICAgICAgIG1vdnNkICAgICAleG1tMSwgMTYoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDE2KCVlc3ApCisgICAgICAgIGFkZGwgICAgICAkLTMyLCAlZXNwCisgICAgICAgIGxlYSAgICAgICAzMiglZXNwKSwgJWVheAorICAgICAgICBmc3RwdCAgICAgKCVlc3ApCisgICAgICAgIG1vdmwgICAgICAkMCwgMTIoJWVzcCkKKyAgICAgICAgbW92bCAgICAgICVlYXgsIDE2KCVlc3ApCisgICAgICAgIGNhbGwgICAgICBfX2xpYm1fcmVkdWNlX3BpMDRsCisuLkIxLjQ2OgorICAgICAgICBhZGRsICAgICAgJDMyLCAlZXNwCisuLkIxLjE2OgorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGxlYSAgICAgICAxKCVlYXgpLCAlZWR4CisgICAgICAgIGZsZGwgICAgICA4KCVlc3ApCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorLi5CMS4xNzoKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQzLCAlZWF4CisgICAgICAgIHNocmwgICAgICAkMiwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDEsICVlY3gKKyAgICAgICAgc2hybCAgICAgICQyLCAlZWF4CisgICAgICAgIHhvcmwgICAgICAlZWN4LCAlZXNpCisgICAgICAgIG1vdmwgICAgICAzNiglZXNwKSwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMywgJWVjeAorICAgICAgICBqbmUgICAgICAgLi5CMS4yNQorLi5CMS4xODoKKyAgICAgICAgZmxkdCAgICAgIDg0K19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmxkICAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgdGVzdGIgICAgICQyLCAlZGwKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZHQgICAgICA3MitfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkdCAgICAgIDYwK19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbGR0ICAgICAgNDgrX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZHQgICAgICAzNitfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkdCAgICAgIDI0K19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbGR0ICAgICAgMTIrX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZHQgICAgICBfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkdCAgICAgIDg0K19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZsZHQgICAgICA3MitfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDYwK19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgNDgrX0NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAzNitfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDI0K19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgMTIrX0NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZsZHQgICAgICBfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkbCAgICAgIF9vbmVzQEdPVE9GRiglZWRpLCVlc2ksOCkKKyAgICAgICAgZmxkbCAgICAgIF9vbmVzQEdPVE9GRiglZWRpLCVlYXgsOCkKKyAgICAgICAgamUgICAgICAgIC4uQjEuMjIKKy4uQjEuMTk6CisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCg0KQorICAgICAgICB0ZXN0bCAgICAgJWVieCwgJWVieAorICAgICAgICBmeGNoICAgICAgJXN0KDIpCisgICAgICAgIGZtdWwgICAgICAlc3QoMyksICVzdAorICAgICAgICBtb3ZsICAgICAgMzIoJWVzcCksICVlYXgKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMikKKyAgICAgICAgZnN0cGwgICAgICglZWF4KQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdHBsICAgICA4KCVlYXgpCisgICAgICAgIGplICAgICAgICAuLkIxLjIxCisuLkIxLjIwOgorICAgICAgICBmbGRjdyAgICAgMzAoJWVzcCkKKy4uQjEuMjE6CisgICAgICAgIGFkZGwgICAgICAkNTIsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYngKKyAgICAgICAgcG9wbCAgICAgICVlZGkKKyAgICAgICAgcG9wbCAgICAgICVlc2kKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMS4yMjoKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoNCkKKyAgICAgICAgdGVzdGwgICAgICVlYngsICVlYngKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgbW92bCAgICAgIDMyKCVlc3ApLCAlZWF4CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgzKQorICAgICAgICBmeGNoICAgICAgJXN0KDIpCisgICAgICAgIGZzdHBsICAgICA4KCVlYXgpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgICglZWF4KQorICAgICAgICBqZSAgICAgICAgLi5CMS4yNAorLi5CMS4yMzoKKyAgICAgICAgZmxkY3cgICAgIDMwKCVlc3ApCisuLkIxLjI0OgorICAgICAgICBhZGRsICAgICAgJDUyLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJ4CisgICAgICAgIHBvcGwgICAgICAlZWRpCisgICAgICAgIHBvcGwgICAgICAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjEuMjU6CisgICAgICAgIHRlc3RiICAgICAkMiwgMzYoJWVzcCkKKyAgICAgICAgamUgICAgICAgIC4uQjEuMzMKKy4uQjEuMjY6CisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgdGVzdGIgICAgICQyLCAlZGwKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGplICAgICAgICAuLkIxLjMwCisuLkIxLjI3OgorICAgICAgICBmc3RwICAgICAgJXN0KDIpCisgICAgICAgIGZsZHQgICAgICA4NCtfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIHRlc3RsICAgICAlZWJ4LCAlZWJ4CisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgNzIrX0NQQEdPVE9GRiglZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDYwK19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgbW92bCAgICAgIDMyKCVlc3ApLCAlZWF4CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMyksICVzdAorICAgICAgICBmbGR0ICAgICAgNDgrX0NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDM2K19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAyNCtfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMyksICVzdAorICAgICAgICBmbGR0ICAgICAgMTIrX0NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZmxkdCAgICAgIF9DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkbCAgICAgIF9vbmVzQEdPVE9GRiglZWRpLCVlc2ksOCkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3RwbCAgICAgOCglZWF4KQorICAgICAgICBqZSAgICAgICAgLi5CMS4yOQorLi5CMS4yODoKKyAgICAgICAgZmxkY3cgICAgIDMwKCVlc3ApCisuLkIxLjI5OgorICAgICAgICBhZGRsICAgICAgJDUyLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJ4CisgICAgICAgIHBvcGwgICAgICAlZWRpCisgICAgICAgIHBvcGwgICAgICAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjEuMzA6CisgICAgICAgIGZsZHQgICAgICA4NCtfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIHRlc3RsICAgICAlZWJ4LCAlZWJ4CisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgNzIrX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDYwK19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgbW92bCAgICAgIDMyKCVlc3ApLCAlZWF4CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgNDgrX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDM2K19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAyNCtfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgMTIrX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkdCAgICAgIF9TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkbCAgICAgIF9vbmVzQEdPVE9GRiglZWRpLCVlc2ksOCkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgIDgoJWVheCkKKyAgICAgICAgamUgICAgICAgIC4uQjEuMzIKKy4uQjEuMzE6CisgICAgICAgIGZsZGN3ICAgICAzMCglZXNwKQorLi5CMS4zMjoKKyAgICAgICAgYWRkbCAgICAgICQ1MiwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVieAorICAgICAgICBwb3BsICAgICAgJWVkaQorICAgICAgICBwb3BsICAgICAgJWVzaQorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIxLjMzOgorICAgICAgICB0ZXN0YiAgICAgJDEsIDM2KCVlc3ApCisgICAgICAgIGplICAgICAgICAuLkIxLjQxCisuLkIxLjM0OgorICAgICAgICBmbGQgICAgICAgJXN0KDApCisgICAgICAgIHRlc3RiICAgICAkMiwgJWRsCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGQgICAgICAgJXN0KDApCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBqZSAgICAgICAgLi5CMS4zOAorLi5CMS4zNToKKyAgICAgICAgZmxkdCAgICAgIDg0K19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgdGVzdGwgICAgICVlYngsICVlYngKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZsZHQgICAgICA3MitfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgNjArX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDQ4K19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAzNitfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgMjQrX1NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDEyK19TUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZHQgICAgICBfU1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZGwgICAgICBfb25lc0BHT1RPRkYoJWVkaSwlZWF4LDgpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgbW92bCAgICAgIDMyKCVlc3ApLCAlZWF4CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3RwbCAgICAgKCVlYXgpCisgICAgICAgIGplICAgICAgICAuLkIxLjM3CisuLkIxLjM2OgorICAgICAgICBmbGRjdyAgICAgMzAoJWVzcCkKKy4uQjEuMzc6CisgICAgICAgIGFkZGwgICAgICAkNTIsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYngKKyAgICAgICAgcG9wbCAgICAgICVlZGkKKyAgICAgICAgcG9wbCAgICAgICVlc2kKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMS4zODoKKyAgICAgICAgZnN0cCAgICAgICVzdCgyKQorICAgICAgICBmbGR0ICAgICAgODQrX0NQQEdPVE9GRiglZWRpKQorICAgICAgICB0ZXN0bCAgICAgJWVieCwgJWVieAorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDcyK19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZsZHQgICAgICA2MCtfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMyksICVzdAorICAgICAgICBmbGR0ICAgICAgNDgrX0NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDM2K19DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAyNCtfQ1BAR09UT0ZGKCVlZGkpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMyksICVzdAorICAgICAgICBmbGR0ICAgICAgMTIrX0NQQEdPVE9GRiglZWRpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZmxkdCAgICAgIF9DUEBHT1RPRkYoJWVkaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkbCAgICAgIF9vbmVzQEdPVE9GRiglZWRpLCVlYXgsOCkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIG1vdmwgICAgICAzMiglZXNwKSwgJWVheAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgICglZWF4KQorICAgICAgICBqZSAgICAgICAgLi5CMS40MAorLi5CMS4zOToKKyAgICAgICAgZmxkY3cgICAgIDMwKCVlc3ApCisuLkIxLjQwOgorICAgICAgICBhZGRsICAgICAgJDUyLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJ4CisgICAgICAgIHBvcGwgICAgICAlZWRpCisgICAgICAgIHBvcGwgICAgICAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjEuNDE6CisgICAgICAgIGZzdHAgICAgICAlc3QoMCkKKyAgICAgICAgYWRkbCAgICAgICQ1MiwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVieAorICAgICAgICBwb3BsICAgICAgJWVkaQorICAgICAgICBwb3BsICAgICAgJWVzaQorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIxLjQyOgorICAgICAgICB4b3JsICAgICAgJWVieCwgJWVieAorICAgICAgICBqbXAgICAgICAgLi5CMS44CisuLkIxLjQzOgorICAgICAgICB4b3JsICAgICAgJWVieCwgJWVieAorICAgICAgICBqbXAgICAgICAgLi5CMS4xNQorICAgICAgICAuYWxpZ24gICAgMTYsMHg5MAorCS50eXBlCV9fbGlibV9zaW5jb3NfaHVnZSxAZnVuY3Rpb24KKwkuc2l6ZQlfX2xpYm1fc2luY29zX2h1Z2UsLi1fX2xpYm1fc2luY29zX2h1Z2UKKwkuZGF0YQorIyAtLSBFbmQgIF9fbGlibV9zaW5jb3NfaHVnZQorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorLkxfMmlsMGZsb2F0cGFja2V0LjA6CisJLmxvbmcJMHhmZmZmZmZmZiwweDdmZmZmZmZmLDB4MDAwMDAwMDAsMHgwMDAwMDAwMAorCS50eXBlCS5MXzJpbDBmbG9hdHBhY2tldC4wLEBvYmplY3QKKwkuc2l6ZQkuTF8yaWwwZmxvYXRwYWNrZXQuMCwxNgorCS5hbGlnbiAxNgorX1BpNEludjoKKwkubG9uZwkxODQxOTQwNjExCisJLmxvbmcJMTA3Mjk3OTc2MAorCS50eXBlCV9QaTRJbnYsQG9iamVjdAorCS5zaXplCV9QaTRJbnYsOAorCS5zcGFjZSA4LCAweDAwIAkjIHBhZAorCS5hbGlnbiAxNgorX1BpNHgzOgorCS5sb25nCTE0MTM3NTQ4ODAKKwkubG9uZwkzMjE5NzI2ODQzCisJLmxvbmcJOTkzNjMyMjU2CisJLmxvbmcJMTAyNzAzMDQ3NQorCS5sb25nCTM3NzMyMDQ4MDgKKwkubG9uZwkzMTI5MjM2NDg2CisJLnR5cGUJX1BpNHgzLEBvYmplY3QKKwkuc2l6ZQlfUGk0eDMsMjQKKwkuc3BhY2UgOCwgMHgwMCAJIyBwYWQKKwkuYWxpZ24gMTYKK19QaTR4NDoKKwkubG9uZwkxNDEzNDgwNDQ4CisJLmxvbmcJMzIxOTcyNjg0MworCS5sb25nCTQ0MjQ5OTA3MgorCS5sb25nCTMxODM1MjI5MTMKKwkubG9uZwk3NzE3NTE5MzYKKwkubG9uZwkzMTQ2OTc5NzIyCisJLmxvbmcJNjIyODczMDI1CisJLmxvbmcJMzExMDgzMTAwMgorCS50eXBlCV9QaTR4NCxAb2JqZWN0CisJLnNpemUJX1BpNHg0LDMyCisJLmFsaWduIDE2CitfU1A6CisJLndvcmQJNDM2OTEKKwkud29yZAk0MzY5MAorCS53b3JkCTQzNjkwCisJLndvcmQJNDM2OTAKKwkud29yZAk0OTE0OAorCS53b3JkCTAKKwkud29yZAkzNDk1MQorCS53b3JkCTM0OTUyCisJLndvcmQJMzQ5NTIKKwkud29yZAkzNDk1MgorCS53b3JkCTE2Mzc2CisJLndvcmQJMAorCS53b3JkCTUwNDcxCisJLndvcmQJMzMyOAorCS53b3JkCTIwOAorCS53b3JkCTUzMjYxCisJLndvcmQJNDkxMzgKKwkud29yZAkwCisJLndvcmQJMTc5MTAKKwkud29yZAk0NjYxNAorCS53b3JkCTc0NjYKKwkud29yZAk0NzM0MworCS53b3JkCTE2MzY0CisJLndvcmQJMAorCS53b3JkCTMzMzcxCisJLndvcmQJMTQ3NDMKKwkud29yZAkxMTA3MQorCS53b3JkCTU1MDkwCisJLndvcmQJNDkxMjUKKwkud29yZAkwCisJLndvcmQJNDg5NDcKKwkud29yZAkzNTc2NAorCS53b3JkCTEyMjUwCisJLndvcmQJNDUyMDIKKwkud29yZAkxNjM1MAorCS53b3JkCTAKKwkud29yZAkxNzU3NAorCS53b3JkCTYwNjk4CisJLndvcmQJMTA3MzUKKwkud29yZAk1NTEwMgorCS53b3JkCTQ5MTEwCisJLndvcmQJMAorCS53b3JkCTM0MzIwCisJLndvcmQJMTI0MTUKKwkud29yZAkyNTI0OQorCS53b3JkCTUxNDg5CisJLndvcmQJMTYzMzQKKwkud29yZAkwCisJLnR5cGUJX1NQLEBvYmplY3QKKwkuc2l6ZQlfU1AsOTYKKwkuYWxpZ24gMTYKK19DUDoKKwkud29yZAkwCisJLndvcmQJMAorCS53b3JkCTAKKwkud29yZAkzMjc2OAorCS53b3JkCTQ5MTUwCisJLndvcmQJMAorCS53b3JkCTQzNjg1CisJLndvcmQJNDM2OTAKKwkud29yZAk0MzY5MAorCS53b3JkCTQzNjkwCisJLndvcmQJMTYzNzgKKwkud29yZAkwCisJLndvcmQJMzk5ODMKKwkud29yZAkyOTEyCisJLndvcmQJMjQ3NTgKKwkud29yZAk0NjYwMworCS53b3JkCTQ5MTQxCisJLndvcmQJMAorCS53b3JkCTYxNDc2CisJLndvcmQJMzI0NAorCS53b3JkCTIwOAorCS53b3JkCTUzMjYxCisJLndvcmQJMTYzNjcKKwkud29yZAkwCisJLndvcmQJMTAyMgorCS53b3JkCTE2MjI5CisJLndvcmQJMzIxODcKKwkud29yZAkzNzg3NAorCS53b3JkCTQ5MTI5CisJLndvcmQJMAorCS53b3JkCTU1MzczCisJLndvcmQJNDQ1MjYKKwkud29yZAk1MDg0MAorCS53b3JkCTM2NzI2CisJLndvcmQJMTYzNTQKKwkud29yZAkwCisJLndvcmQJNTU5OTQKKwkud29yZAk2NTE0NQorCS53b3JkCTU5OTU4CisJLndvcmQJNTE2NTcKKwkud29yZAk0OTExNAorCS53b3JkCTAKKwkud29yZAkxNTA0NgorCS53b3JkCTI5NzYKKwkud29yZAkxOTk4CisJLndvcmQJNTQ2NjEKKwkud29yZAkxNjMzOAorCS53b3JkCTAKKwkudHlwZQlfQ1AsQG9iamVjdAorCS5zaXplCV9DUCw5NgorCS5hbGlnbiAxNgorX29uZXM6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS50eXBlCV9vbmVzLEBvYmplY3QKKwkuc2l6ZQlfb25lcywxNgorCS5kYXRhCisJLmhpZGRlbiBfX2xpYm1fcmVkdWNlX3BpMDRsCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L2xpYm1fdGFuY290X2h1Z2UuUyBiL2xpYm0veDg2L2xpYm1fdGFuY290X2h1Z2UuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MGYxNmQ1Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvbGlibV90YW5jb3RfaHVnZS5TCkBAIC0wLDAgKzEsNzUwIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjIC0tIEJlZ2luICBfX2xpYm1fdGFuY290X2h1Z2UKKwkudGV4dAorICAgICAgIC5hbGlnbiAgICAxNiwweDkwCisJLmhpZGRlbiBfX2xpYm1fdGFuY290X2h1Z2UKKwkuZ2xvYmwgX19saWJtX3RhbmNvdF9odWdlCitfX2xpYm1fdGFuY290X2h1Z2U6CisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorIyBwYXJhbWV0ZXIgMjogMTYgKyAlZWJwCisjIHBhcmFtZXRlciAzOiAyMCArICVlYnAKKy4uQjEuMToKKyAgICAgICAgcHVzaGwgICAgICVlYnAKKyAgICAgICAgbW92bCAgICAgICVlc3AsICVlYnAKKyAgICAgICAgYW5kbCAgICAgICQtNjQsICVlc3AKKyAgICAgICAgcHVzaGwgICAgICVlc2kKKyAgICAgICAgcHVzaGwgICAgICVlZGkKKyAgICAgICAgcHVzaGwgICAgICVlYngKKyAgICAgICAgc3VibCAgICAgICQ1MiwgJWVzcAorICAgICAgICBtb3ZsICAgICAgMTYoJWVicCksICVlYXgKKyAgICAgICAgbW92bCAgICAgIDIwKCVlYnApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCA0MCglZXNwKQorLi5CMS4yOgorICAgICAgICBmbnN0Y3cgICAgMzgoJWVzcCkKKy4uQjEuMzoKKyAgICAgICAgbW92bCAgICAgIDEyKCVlYnApLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVheAorICAgICAgICBzaHJsICAgICAgJDMxLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCA0NCglZXNwKQorICAgICAgICBjbXBsICAgICAgJDExMDQxNTA1MjgsICVlYXgKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZXNpCisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZXNpKSwgJWVzaQorICAgICAgICBqYWUgICAgICAgLi5CMS4xMQorLi5CMS40OgorICAgICAgICBtb3ZzZCAgICAgOCglZWJwKSwgJXhtbTEKKyAgICAgICAgbW92endsICAgIDM4KCVlc3ApLCAlZWN4CisgICAgICAgIG1vdmwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkNzY4LCAlZWR4CisgICAgICAgIGFuZHBzICAgICAuTF8yaWwwZmxvYXRwYWNrZXQuMEBHT1RPRkYoJWVzaSksICV4bW0xCisgICAgICAgIGNtcGwgICAgICAkNzY4LCAlZWR4CisgICAgICAgIG1vdnNkICAgICBfUGk0SW52QEdPVE9GRiglZXNpKSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTEsIDgoJWVicCkKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgamUgICAgICAgIC4uQjEuMzkKKy4uQjEuNToKKyAgICAgICAgb3JsICAgICAgICQtNjQ3NjgsICVlY3gKKyAgICAgICAgbW92dyAgICAgICVjeCwgMzYoJWVzcCkKKy4uQjEuNjoKKyAgICAgICAgZmxkY3cgICAgIDM2KCVlc3ApCisuLkIxLjc6CisgICAgICAgIG1vdnNkICAgICA4KCVlYnApLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDEsICVlZGkKKy4uQjEuODoKKyAgICAgICAgbW92bCAgICAgICVlc2ksIDEyKCVlc3ApCisgICAgICAgIG1vdmwgICAgICA0KCVlc3ApLCAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZXNpLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWRpLCAyNCglZXNwKQorICAgICAgICBtb3ZsICAgICAgJWVzaSwgJWVkaQorICAgICAgICBzaHJsICAgICAgJDIwLCAlZWRpCisgICAgICAgIGFuZGwgICAgICAkMTA0ODU3NSwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkaSwgJWVjeAorICAgICAgICBvcmwgICAgICAgJDEwNDg1NzYsICVlZHgKKyAgICAgICAgbmVnbCAgICAgICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQxMywgJWVkaQorICAgICAgICBtb3ZsICAgICAgJWVieCwgOCglZXNwKQorICAgICAgICBhZGRsICAgICAgJDE5LCAlZWN4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWN4LCAyOCglZXNwKQorICAgICAgICBzaHJsICAgICAgJWNsLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWRpLCAlZWN4CisgICAgICAgIHNobGwgICAgICAlY2wsICVlZHgKKyAgICAgICAgbW92bCAgICAgIDI4KCVlc3ApLCAlZWN4CisgICAgICAgIG1vdmwgICAgICAoJWVzcCksICVlZGkKKyAgICAgICAgc2hybCAgICAgICVjbCwgJWVkaQorICAgICAgICBvcmwgICAgICAgJWVkaSwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDEwOTQ3MTMzNDQsICVlc2kKKyAgICAgICAgbW92c2QgICAgICV4bW0xLCAxNiglZXNwKQorICAgICAgICBmbGRsICAgICAgMTYoJWVzcCkKKyAgICAgICAgY21vdmIgICAgICVlYngsICVlZHgKKyAgICAgICAgbW92bCAgICAgIDI0KCVlc3ApLCAlZWRpCisgICAgICAgIG1vdmwgICAgICAxMiglZXNwKSwgJWVzaQorICAgICAgICBsZWEgICAgICAgMSglZWR4KSwgJWVieAorICAgICAgICBhbmRsICAgICAgJC0yLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJ4LCAxNiglZXNwKQorICAgICAgICBjbXBsICAgICAgJDEwOTQ3MTMzNDQsICVlYXgKKyAgICAgICAgZmlsZGwgICAgIDE2KCVlc3ApCisgICAgICAgIG1vdmwgICAgICA4KCVlc3ApLCAlZWJ4CisgICAgICAgIGphZSAgICAgICAuLkIxLjEwCisuLkIxLjk6CisgICAgICAgIGZsZGwgICAgICBfUGk0eDNAR09UT0ZGKCVlc2kpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkbCAgICAgIDgrX1BpNHgzQEdPVE9GRiglZXNpKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZGwgICAgICAxNitfUGk0eDNAR09UT0ZGKCVlc2kpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgam1wICAgICAgIC4uQjEuMTcKKy4uQjEuMTA6CisgICAgICAgIGZsZGwgICAgICBfUGk0eDRAR09UT0ZGKCVlc2kpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkbCAgICAgIDgrX1BpNHg0QEdPVE9GRiglZXNpKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZsZGwgICAgICAxNitfUGk0eDRAR09UT0ZGKCVlc2kpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkbCAgICAgIDI0K19QaTR4NEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBqbXAgICAgICAgLi5CMS4xNworLi5CMS4xMToKKyAgICAgICAgbW92endsICAgIDM4KCVlc3ApLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkNzY4LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkNzY4LCAlZWF4CisgICAgICAgIGplICAgICAgICAuLkIxLjQwCisuLkIxLjEyOgorICAgICAgICBvcmwgICAgICAgJC02NDc2OCwgJWVkeAorICAgICAgICBtb3Z3ICAgICAgJWR4LCAzNiglZXNwKQorLi5CMS4xMzoKKyAgICAgICAgZmxkY3cgICAgIDM2KCVlc3ApCisuLkIxLjE0OgorICAgICAgICBtb3ZsICAgICAgJDEsICVlZGkKKy4uQjEuMTU6CisgICAgICAgIG1vdnNkICAgICA4KCVlYnApLCAleG1tMAorICAgICAgICBhZGRsICAgICAgJC0zMiwgJWVzcAorICAgICAgICBhbmRwcyAgICAgLkxfMmlsMGZsb2F0cGFja2V0LjBAR09UT0ZGKCVlc2kpLCAleG1tMAorICAgICAgICBsZWEgICAgICAgMzIoJWVzcCksICVlYXgKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAxNiglZWF4KQorICAgICAgICBmbGRsICAgICAgMTYoJWVheCkKKyAgICAgICAgZnN0cHQgICAgICglZXNwKQorICAgICAgICBtb3ZsICAgICAgJDAsIDEyKCVlc3ApCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAxNiglZXNwKQorICAgICAgICBjYWxsICAgICAgX19saWJtX3JlZHVjZV9waTA0bAorLi5CMS40MzoKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICQzMiwgJWVzcAorLi5CMS4xNjoKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBmbGRsICAgICAgOCglZXNwKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKy4uQjEuMTc6CisgICAgICAgIG1vdmwgICAgICAlZWJ4LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMywgJWVheAorICAgICAgICBjbXBsICAgICAgJDMsICVlYXgKKyAgICAgICAgam5lICAgICAgIC4uQjEuMjQKKy4uQjEuMTg6CisgICAgICAgIGZsZGwgICAgICBfb25lc0BHT1RPRkYoJWVzaSkKKyAgICAgICAgaW5jbCAgICAgICVlZHgKKyAgICAgICAgZmRpdiAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIHRlc3RiICAgICAkMiwgJWRsCisgICAgICAgIGZzdHB0ICAgICAyNCglZXNwKQorICAgICAgICBmbGQgICAgICAgJXN0KDApCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGQgICAgICAgJXN0KDApCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgMzYrX1RQQEdPVE9GRiglZXNpKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDI0K19UUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgMTIrX1RQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAzNitfVFFAR09UT0ZGKCVlc2kpCisgICAgICAgIGZtdWwgICAgICAlc3QoMyksICVzdAorICAgICAgICBmbGR0ICAgICAgMjQrX1RRQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAxMitfVFFAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIF9UUUBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZsZHQgICAgICBfVFBAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGR0ICAgICAgMTMyK19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgzKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAxMjArX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmbXVsICAgICAgJXN0KDQpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDEwOCtfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoNCksICVzdAorICAgICAgICBmbGR0ICAgICAgOTYrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDQpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDg0K19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCg0KSwgJXN0CisgICAgICAgIGZsZHQgICAgICA3MitfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoNCksICVzdAorICAgICAgICBmbGR0ICAgICAgNjArX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDQpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDQ4K19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCg0KSwgJXN0CisgICAgICAgIGZsZHQgICAgICAzNitfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoNCksICVzdAorICAgICAgICBmbGR0ICAgICAgMjQrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoNCkKKyAgICAgICAgZmxkdCAgICAgIDEyK19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoNCksICVzdAorICAgICAgICBmbXVsICAgICAgJXN0KDUpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIF9HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDQpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMykKKyAgICAgICAgZm11bCAgICAgICVzdCg1KSwgJXN0CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgzKQorICAgICAgICBqZSAgICAgICAgLi5CMS4yMAorLi5CMS4xOToKKyAgICAgICAgZmxkdCAgICAgIDI0KCVlc3ApCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZmRpdnJwICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIG1vdmwgICAgICA0NCglZXNwKSwgJWVheAorICAgICAgICB4b3JsICAgICAgJDEsICVlYXgKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZmxkbCAgICAgIF9vbmVzQEdPVE9GRiglZXNpLCVlYXgsOCkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgzKQorICAgICAgICBmeGNoICAgICAgJXN0KDMpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZzdHBsICAgICAxNiglZXNwKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgIDE2KCVlc3ApCisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTEKKyAgICAgICAgam1wICAgICAgIC4uQjEuMjEKKy4uQjEuMjA6CisgICAgICAgIGZkaXZycCAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgbW92bCAgICAgIDQ0KCVlc3ApLCAlZWF4CisgICAgICAgIGZsZGwgICAgICBfb25lc0BHT1RPRkYoJWVzaSwlZWF4LDgpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgzKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgIDE2KCVlc3ApCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgMjQoJWVzcCkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTAKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdHBsICAgICAxNiglZXNwKQorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0xCisuLkIxLjIxOgorICAgICAgICB0ZXN0bCAgICAgJWVkaSwgJWVkaQorICAgICAgICBqZSAgICAgICAgLi5CMS4yMworLi5CMS4yMjoKKyAgICAgICAgZmxkY3cgICAgIDM4KCVlc3ApCisuLkIxLjIzOgorICAgICAgICBtb3ZsICAgICAgNDAoJWVzcCksICVlYXgKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVheCkKKyAgICAgICAgbW92c2QgICAgICV4bW0xLCA4KCVlYXgpCisgICAgICAgIGFkZGwgICAgICAkNTIsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYngKKyAgICAgICAgcG9wbCAgICAgICVlZGkKKyAgICAgICAgcG9wbCAgICAgICVlc2kKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMS4yNDoKKyAgICAgICAgdGVzdGIgICAgICQyLCAlYmwKKyAgICAgICAgamUgICAgICAgIC4uQjEuMzEKKy4uQjEuMjU6CisgICAgICAgIGluY2wgICAgICAlZWR4CisgICAgICAgIGZsZCAgICAgICAlc3QoMCkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIHRlc3RiICAgICAkMiwgJWRsCisgICAgICAgIGplICAgICAgICAuLkIxLjI3CisuLkIxLjI2OgorICAgICAgICBmbGRsICAgICAgX29uZXNAR09UT0ZGKCVlc2kpCisgICAgICAgIGZkaXYgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGQgICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgMTMyK19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAxMjArX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDEwOCtfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIG1vdmwgICAgICA0NCglZXNwKSwgJWVheAorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgeG9ybCAgICAgICQxLCAlZWF4CisgICAgICAgIGZsZHQgICAgICA5NitfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgODQrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDcyK19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICA2MCtfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgNDgrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDM2K19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAyNCtfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGR0ICAgICAgMTIrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZsZHQgICAgICBfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkbCAgICAgIF9vbmVzQEdPVE9GRiglZXNpLCVlYXgsOCkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgIDE2KCVlc3ApCisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuMjgKKy4uQjEuMjc6CisgICAgICAgIGZsZHQgICAgICAzNitfVFBAR09UT0ZGKCVlc2kpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgMjQrX1RQQEdPVE9GRiglZXNpKQorICAgICAgICBtb3ZsICAgICAgNDQoJWVzcCksICVlYXgKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgMzYrX1RRQEdPVE9GRiglZXNpKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDI0K19UUUBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgMTIrX1RRQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICBfVFFAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbGR0ICAgICAgMTIrX1RQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIF9UUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZkaXZwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgxKSwgJXN0CisgICAgICAgIGZsZGwgICAgICBfb25lc0BHT1RPRkYoJWVzaSwlZWF4LDgpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzdHBsICAgICAxNiglZXNwKQorICAgICAgICBtb3ZzZCAgICAgMTYoJWVzcCksICV4bW0wCisuLkIxLjI4OgorICAgICAgICB0ZXN0bCAgICAgJWVkaSwgJWVkaQorICAgICAgICBqZSAgICAgICAgLi5CMS4zMAorLi5CMS4yOToKKyAgICAgICAgZmxkY3cgICAgIDM4KCVlc3ApCisuLkIxLjMwOgorICAgICAgICBtb3ZsICAgICAgNDAoJWVzcCksICVlYXgKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVheCkKKyAgICAgICAgYWRkbCAgICAgICQ1MiwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVieAorICAgICAgICBwb3BsICAgICAgJWVkaQorICAgICAgICBwb3BsICAgICAgJWVzaQorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIxLjMxOgorICAgICAgICB0ZXN0YiAgICAgJDEsICVibAorICAgICAgICBqZSAgICAgICAgLi5CMS4zOAorLi5CMS4zMjoKKyAgICAgICAgaW5jbCAgICAgICVlZHgKKyAgICAgICAgZmxkICAgICAgICVzdCgwKQorICAgICAgICBmbXVsICAgICAgJXN0KDEpLCAlc3QKKyAgICAgICAgdGVzdGIgICAgICQyLCAlZGwKKyAgICAgICAgamUgICAgICAgIC4uQjEuMzQKKy4uQjEuMzM6CisgICAgICAgIGZsZHQgICAgICAzNitfVFBAR09UT0ZGKCVlc2kpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgMjQrX1RQQEdPVE9GRiglZXNpKQorICAgICAgICBtb3ZsICAgICAgNDQoJWVzcCksICVlYXgKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICB4b3JsICAgICAgJDEsICVlYXgKKyAgICAgICAgZmxkdCAgICAgIDM2K19UUUBHT1RPRkYoJWVzaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAyNCtfVFFAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDEyK19UUUBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgX1RRQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmxkdCAgICAgIDEyK19UUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICBfVFBAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmZGl2cCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGRsICAgICAgX29uZXNAR09UT0ZGKCVlc2ksJWVheCw4KQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3RwbCAgICAgMTYoJWVzcCkKKyAgICAgICAgbW92c2QgICAgIDE2KCVlc3ApLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS4zNQorLi5CMS4zNDoKKyAgICAgICAgZmxkbCAgICAgIF9vbmVzQEdPVE9GRiglZXNpKQorICAgICAgICBmZGl2ICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkICAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDEzMitfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZtdWwgICAgICAlc3QoMSksICVzdAorICAgICAgICBmbGR0ICAgICAgMTIwK19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAxMDgrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBtb3ZsICAgICAgNDQoJWVzcCksICVlYXgKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICA5NitfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgODQrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDcyK19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICA2MCtfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QoMiksICVzdAorICAgICAgICBmbGR0ICAgICAgNDgrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDIpLCAlc3QKKyAgICAgICAgZmxkdCAgICAgIDM2K19HUEBHT1RPRkYoJWVzaSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgyKSwgJXN0CisgICAgICAgIGZsZHQgICAgICAyNCtfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmeGNoICAgICAgJXN0KDEpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgyKQorICAgICAgICBmbGR0ICAgICAgMTIrX0dQQEdPVE9GRiglZXNpKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZm11bHAgICAgICVzdCwgJXN0KDMpCisgICAgICAgIGZsZHQgICAgICBfR1BAR09UT0ZGKCVlc2kpCisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0KDMpLCAlc3QKKyAgICAgICAgZnhjaCAgICAgICVzdCgyKQorICAgICAgICBmbXVscCAgICAgJXN0LCAlc3QoMykKKyAgICAgICAgZnhjaCAgICAgICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMikKKyAgICAgICAgZmxkbCAgICAgIF9vbmVzQEdPVE9GRiglZXNpLCVlYXgsOCkKKyAgICAgICAgZm11bCAgICAgICVzdCwgJXN0KDIpCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZnN0cGwgICAgIDE2KCVlc3ApCisgICAgICAgIG1vdnNkICAgICAxNiglZXNwKSwgJXhtbTAKKy4uQjEuMzU6CisgICAgICAgIHRlc3RsICAgICAlZWRpLCAlZWRpCisgICAgICAgIGplICAgICAgICAuLkIxLjM3CisuLkIxLjM2OgorICAgICAgICBmbGRjdyAgICAgMzgoJWVzcCkKKy4uQjEuMzc6CisgICAgICAgIG1vdmwgICAgICA0MCglZXNwKSwgJWVheAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDgoJWVheCkKKyAgICAgICAgYWRkbCAgICAgICQ1MiwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVieAorICAgICAgICBwb3BsICAgICAgJWVkaQorICAgICAgICBwb3BsICAgICAgJWVzaQorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIxLjM4OgorICAgICAgICBmc3RwICAgICAgJXN0KDApCisgICAgICAgIGFkZGwgICAgICAkNTIsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYngKKyAgICAgICAgcG9wbCAgICAgICVlZGkKKyAgICAgICAgcG9wbCAgICAgICVlc2kKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMS4zOToKKyAgICAgICAgeG9ybCAgICAgICVlZGksICVlZGkKKyAgICAgICAgam1wICAgICAgIC4uQjEuOAorLi5CMS40MDoKKyAgICAgICAgeG9ybCAgICAgICVlZGksICVlZGkKKyAgICAgICAgam1wICAgICAgIC4uQjEuMTUKKyAgICAgICAgLmFsaWduICAgIDE2LDB4OTAKKwkudHlwZQlfX2xpYm1fdGFuY290X2h1Z2UsQGZ1bmN0aW9uCisJLnNpemUJX19saWJtX3RhbmNvdF9odWdlLC4tX19saWJtX3RhbmNvdF9odWdlCisJLmRhdGEKKyMgLS0gRW5kICBfX2xpYm1fdGFuY290X2h1Z2UKKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKKy5MXzJpbDBmbG9hdHBhY2tldC4wOgorCS5sb25nCTB4ZmZmZmZmZmYsMHg3ZmZmZmZmZiwweDAwMDAwMDAwLDB4MDAwMDAwMDAKKwkudHlwZQkuTF8yaWwwZmxvYXRwYWNrZXQuMCxAb2JqZWN0CisJLnNpemUJLkxfMmlsMGZsb2F0cGFja2V0LjAsMTYKKwkuYWxpZ24gMTYKK19QaTRJbnY6CisJLmxvbmcJMTg0MTk0MDYxMQorCS5sb25nCTEwNzI5Nzk3NjAKKwkudHlwZQlfUGk0SW52LEBvYmplY3QKKwkuc2l6ZQlfUGk0SW52LDgKKwkuc3BhY2UgOCwgMHgwMCAJIyBwYWQKKwkuYWxpZ24gMTYKK19QaTR4MzoKKwkubG9uZwkxNDEzNzU0ODgwCisJLmxvbmcJMzIxOTcyNjg0MworCS5sb25nCTk5MzYzMjI1NgorCS5sb25nCTEwMjcwMzA0NzUKKwkubG9uZwkzNzczMjA0ODA4CisJLmxvbmcJMzEyOTIzNjQ4NgorCS50eXBlCV9QaTR4MyxAb2JqZWN0CisJLnNpemUJX1BpNHgzLDI0CisJLnNwYWNlIDgsIDB4MDAgCSMgcGFkCisJLmFsaWduIDE2CitfUGk0eDQ6CisJLmxvbmcJMTQxMzQ4MDQ0OAorCS5sb25nCTMyMTk3MjY4NDMKKwkubG9uZwk0NDI0OTkwNzIKKwkubG9uZwkzMTgzNTIyOTEzCisJLmxvbmcJNzcxNzUxOTM2CisJLmxvbmcJMzE0Njk3OTcyMgorCS5sb25nCTYyMjg3MzAyNQorCS5sb25nCTMxMTA4MzEwMDIKKwkudHlwZQlfUGk0eDQsQG9iamVjdAorCS5zaXplCV9QaTR4NCwzMgorCS5hbGlnbiAxNgorX29uZXM6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS50eXBlCV9vbmVzLEBvYmplY3QKKwkuc2l6ZQlfb25lcywxNgorCS5hbGlnbiAxNgorX1RQOgorCS53b3JkCTE5NjcwCisJLndvcmQJNDQ5MDgKKwkud29yZAk1MDk2MAorCS53b3JkCTUwNzg2CisJLndvcmQJNDkxNDkKKwkud29yZAkwCisJLndvcmQJMTkyMDYKKwkud29yZAk0NTIyOAorCS53b3JkCTU0MTk0CisJLndvcmQJNTIyNjgKKwkud29yZAkxNjM3NworCS53b3JkCTAKKwkud29yZAkyMjcKKwkud29yZAk1MTI4MAorCS53b3JkCTQzNTYwCisJLndvcmQJMzgxOTUKKwkud29yZAk0OTEzOQorCS53b3JkCTAKKwkud29yZAkxMjI3MgorCS53b3JkCTE4MDI5CisJLndvcmQJNjcxNQorCS53b3JkCTQ1NjcwCisJLndvcmQJMTYzNTcKKwkud29yZAkwCisJLnR5cGUJX1RQLEBvYmplY3QKKwkuc2l6ZQlfVFAsNDgKKwkuYWxpZ24gMTYKK19UUToKKwkud29yZAkxNDc0OAorCS53b3JkCTMzNjgxCisJLndvcmQJNTQ1MgorCS53b3JkCTM4MDkwCisJLndvcmQJNDkxNTEKKwkud29yZAkwCisJLndvcmQJNDY3NTUKKwkud29yZAk1MDAyNgorCS53b3JkCTE3NjM0CisJLndvcmQJMzUzNzIKKwkud29yZAkxNjM4MgorCS53b3JkCTAKKwkud29yZAk0Njg2MworCS53b3JkCTUzMzUyCisJLndvcmQJNDI3MDIKKwkud29yZAk1OTg2OQorCS53b3JkCTQ5MTQ1CisJLndvcmQJMAorCS53b3JkCTMzMjk1CisJLndvcmQJMjA5NDIKKwkud29yZAkzMjExOAorCS53b3JkCTM5OTM1CisJLndvcmQJMTYzNzEKKwkud29yZAkwCisJLnR5cGUJX1RRLEBvYmplY3QKKwkuc2l6ZQlfVFEsNDgKKwkuYWxpZ24gMTYKK19HUDoKKwkud29yZAk0MzY5MQorCS53b3JkCTQzNjkwCisJLndvcmQJNDM2OTAKKwkud29yZAk0MzY5MAorCS53b3JkCTQ5MTQ5CisJLndvcmQJMAorCS53b3JkCTQ2NjM5CisJLndvcmQJMjkxMgorCS53b3JkCTI0NzU4CisJLndvcmQJNDY2MDMKKwkud29yZAk0OTE0NQorCS53b3JkCTAKKwkud29yZAk1NzI1NQorCS53b3JkCTIyMTgKKwkud29yZAkyMTk4NAorCS53b3JkCTM1NTA3CisJLndvcmQJNDkxNDIKKwkud29yZAkwCisJLndvcmQJMzQyMDgKKwkud29yZAk0MzAzMworCS53b3JkCTQ4MjgxCisJLndvcmQJNTY4MTEKKwkud29yZAk0OTEzOAorCS53b3JkCTAKKwkud29yZAkyODc3MworCS53b3JkCTI3MTkxCisJLndvcmQJMzEwNzEKKwkud29yZAk0NTkwOAorCS53b3JkCTQ5MTM1CisJLndvcmQJMAorCS53b3JkCTQzMjU3CisJLndvcmQJMzM3NzcKKwkud29yZAkxMTk3NgorCS53b3JkCTM3MTg0CisJLndvcmQJNDkxMzIKKwkud29yZAkwCisJLndvcmQJNjI0MTAKKwkud29yZAkzNTk5MAorCS53b3JkCTM2MzYzCisJLndvcmQJNjAyNjkKKwkud29yZAk0OTEyOAorCS53b3JkCTAKKwkud29yZAkxMzY1OQorCS53b3JkCTU1NTY4CisJLndvcmQJMjY1NjkKKwkud29yZAk0ODg1MQorCS53b3JkCTQ5MTI1CisJLndvcmQJMAorCS53b3JkCTEwMzQ3CisJLndvcmQJNDYyMzgKKwkud29yZAk0NzE4OAorCS53b3JkCTM5NTc2CisJLndvcmQJNDkxMjIKKwkud29yZAkwCisJLndvcmQJMjE2MQorCS53b3JkCTY3MDMKKwkud29yZAkyNTcxOQorCS53b3JkCTY0NzA4CisJLndvcmQJNDkxMTgKKwkud29yZAkwCisJLndvcmQJNDIzMjkKKwkud29yZAk3NTkzCisJLndvcmQJNDQ3NTQKKwkud29yZAk0NzczNAorCS53b3JkCTQ5MTE1CisJLndvcmQJMAorCS53b3JkCTE2MworCS53b3JkCTMyNzQ2CisJLndvcmQJMzk4NzUKKwkud29yZAk2MTk1NworCS53b3JkCTQ5MTEyCisJLndvcmQJMAorCS50eXBlCV9HUCxAb2JqZWN0CisJLnNpemUJX0dQLDE0NAorCS5kYXRhCisJLmhpZGRlbiBfX2xpYm1fcmVkdWNlX3BpMDRsCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L3NfYXRhbi5TIGIvbGlibS94ODYvc19hdGFuLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzQ0MTNmMQotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L3NfYXRhbi5TCkBAIC0wLDAgKzEsOTM0IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gVGhpcyBpbXBsZW1lbnRhdGlvbiB1c2VzIHRoZSBtYWluIHBhdGggZm9yIHx4fCBpbiBbMl57LTV9LDJeNjUpLgorLy8gRm9yIHx4fCBpbiBbMl57LTY0fSwyXnstNX0pLCBhIHNlY29uZGFyeSBwYXRoIGlzIHVzZWQuCisvLyBGb3IgdGhlIGJpYXNlZCBleHBvbmVudCBvZiBYIHdpdGhpbiAzRkZILTY0IGFuZCAzRkYrNjQsIHdlIHVzZSBvbmUgYnJhbmNoLgorLy8gV2UgdXNlIHRoZSBmb2xsb3dpbmcgZGVmaW5pdGlvbiBvZiBCIGFuZCBYYCBzbyB0aGF0IHRoZSBmb3JtdWxhCisvLyBhdGFuKFgpID0gVGF1ICsgYXRhbiggKFhgLUIpIC8gKE9uZSArIEJYKSApIGlzIGNvcnJlY3QKKy8vCisvLyBYID0gKC0xKV5zICogMl5rICogMS4geDEgeDIgLi4uIHg1MgorLy8KKy8vIERlZmluZSBYYCAgPSAwIGlmIGsgPj0gNTsgYW5kIFhgICA9IHxYfCBvdGhlcndpc2UKKy8vIERlZmluZSBPbmUgPSAwIGlmIGsgPj0gNTsgYW5kIE9uZSA9IDEgb3RoZXJ3aXNlCisvLyBEZWZpbmUgQiAgPSAwIGlmIGsgPD0gLTY7IEIgPSAgMl5rICogMS54MSB4MiB4MyB4NCAxICBpZiAtNSA8PSBrIDw9IDQKKy8vIERlZmluZSBCICA9ICAyXjUgKiAxLjAgMCAuLi4gMCAgIGlmICBrID49IDUKKy8vCisvLyBUYXUgaXMgMCBpZiBrIDw9IC02OworLy8gVGF1IGlzIGF0YW4oIEIgKSAgaWYgLTUgPD0gayA8PSA0CisvLyBUYXUgaXMgcGkvMiBpZiBrID49IDUKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGF0YW4oTmFOKSA9IHF1aWV0IE5hTgorLy8gIGF0YW4oKy8tSU5GKSA9ICsvLVBpLzIKKy8vICBhdGFuKCsvLTApID0gKy8tMAorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHN0YXRpY19mdW5jCisgICAgICAgIC50ZXh0CisgICAgICAgIC5hbGlnbiBfX2Jpb25pY19hc21fYWxpZ24KKyAgICAgICAgLnR5cGUgc3RhdGljX2Z1bmMsIEBmdW5jdGlvbgorc3RhdGljX2Z1bmM6CisuLkIxLjE6CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVheAorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVheCksICVlYXgKKyAgICAgICAgbGVhICAgICAgIHN0YXRpY19jb25zdF90YWJsZUBHT1RPRkYoJWVheCksICVlYXgKKyAgICAgICAgcmV0CisgICAgICAgIC5zaXplICAgc3RhdGljX2Z1bmMsLi1zdGF0aWNfZnVuYworIyAtLSBFbmQgIHN0YXRpY19mdW5jCisKKyMgLS0gQmVnaW4gIGF0YW4KK0VOVFJZKGF0YW4pCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEwNCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNDgoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICAyNjQwKCVlYngpLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgMjYyNCglZWJ4KSwgJXhtbTUKKyAgICAgICAgbW92c2QgICAgIDI2NTYoJWVieCksICV4bW00CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgOCglZXNwKQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWR4CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW0xCisgICAgICAgIG9ycGQgICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVkeAorICAgICAgICBzdWJsICAgICAgJDE2Mjg4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTU5LCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBkaXZzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZGwgICAgICAkMSwgJWVkeAorICAgICAgICBtb3ZzZCAgICAgMjY3MiglZWJ4KSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDI2ODgoJWVieCksICV4bW00CisgICAgICAgIGFuZGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW03LCAleG1tNworICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW03CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIG1vdnNkICAgICAoJWVieCwlZWR4LDgpLCAleG1tNgorICAgICAgICBtb3ZzZCAgICAgOCglZWJ4LCVlZHgsOCksICV4bW01CisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTUKKyAgICAgICAgeG9ycGQgICAgICV4bW03LCAleG1tNgorICAgICAgICBtb3ZzZCAgICAgMjY4MCglZWJ4KSwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTEsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAyNjk2KCVlYngpLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQ5NDQsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxMTAzLCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICBtb3ZzZCAgICAgMjY3MiglZWJ4KSwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDI2ODgoJWVieCksICV4bW03CisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdnNkICAgICAyNjgwKCVlYngpLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgMjY5NiglZWJ4KSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIGFkZGwgICAgICAkMTUzNDQsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxNjM2OCwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgbW92c2QgICAgIDgoJWVzcCksICV4bW0wCisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMQorICAgICAgICBjbXBsICAgICAgJDE2LCAlZWR4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBjbXBsICAgICAgJDE3MzkyLCAlZWR4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkNDkxMzYsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tMQorICAgICAgICBkaXZzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdnNkICAgICAyNjcyKCVlYngpLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgMjY4OCglZWJ4KSwgJXhtbTQKKyAgICAgICAgYW5kbCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICB4b3JwZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTcKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgbW92c2QgICAgIDI1OTIoJWVieCksICV4bW02CisgICAgICAgIG1vdnNkICAgICAyNjAwKCVlYngpLCAleG1tNQorICAgICAgICB4b3JwZCAgICAgJXhtbTcsICV4bW01CisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgbW92c2QgICAgIDI2ODAoJWVieCksICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0xLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgMjY5NiglZWJ4KSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgMjYwOCglZWJ4KSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDI1OTIoJWVieCksICV4bW0yCisgICAgICAgIG1vdnNkICAgICAyNjAwKCVlYngpLCAleG1tMworICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVkeAorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlZHgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgYW5kbnBkICAgICV4bW00LCAleG1tMAorICAgICAgICBvcnBkICAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG9ycGQgICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIHN1YmwgICAgICAkMjE0NjQzNTA3MiwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisgICAgICAgIG1vdmFwZCAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDQ4KCVlc3ApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjIuMzoKK0VORChhdGFuKQorIyAtLSBFbmQgIGF0YW4KKworIyBTdGFydCBmaWxlIHNjb3BlIEFTTQorQUxJQVNfU1lNQk9MKGF0YW5sLCBhdGFuKTsKKyMgRW5kIGZpbGUgc2NvcGUgQVNNCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitzdGF0aWNfY29uc3RfdGFibGU6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM4MTk2OTU3NDIKKwkubG9uZwkxMDY3NDgyNzYxCisJLmxvbmcJMjM5ODY4MDM1NQorCS5sb25nCTMxNTU0NjIwNzQKKwkubG9uZwkyOTk4NzkxMDA5CisJLmxvbmcJMTA2NzU0ODIyNQorCS5sb25nCTM4Njg0NjUyNDgKKwkubG9uZwkzMTU3MTgyNDcyCisJLmxvbmcJMzMzOTQyNDk5MQorCS5sb25nCTEwNjc2MTM2ODAKKwkubG9uZwkzMjk2NjcwMzYwCisJLmxvbmcJMTAxMDc1MjU0MworCS5sb25nCTI3MTAwMDIyNTYKKwkubG9uZwkxMDY3Njc5MTI2CisJLmxvbmcJMzQwMzg5NjAwNworCS5sb25nCTEwMTA5MTA3NjgKKwkubG9uZwkzMjc1NzAxNDI4CisJLmxvbmcJMTA2Nzc0NDU2MgorCS5sb25nCTExOTk1OTkzMworCS5sb25nCTEwMTE0ODI4NDMKKwkubG9uZwkyOTA4NjM2ODgxCisJLmxvbmcJMTA2NzgwOTk4OAorCS5sb25nCTI0NjQ0ODk2MTIKKwkubG9uZwkxMDExNTQ1NTI2CisJLmxvbmcJMzc3Nzg4OTM5OAorCS5sb25nCTEwNjc4NzU0MDMKKwkubG9uZwkzMjYyNjgyMTY1CisJLmxvbmcJMTAwOTcwMzkxOQorCS5sb25nCTM3NTk2Njc0MTkKKwkubG9uZwkxMDY3OTQwODA3CisJLmxvbmcJMTgzODEzMDg1MQorCS5sb25nCTMxNTczNzM1NTYKKwkubG9uZwk3MzIzNjk5NDAKKwkubG9uZwkxMDY4MDA2MjAwCisJLmxvbmcJMTIwMzQyODMxMworCS5sb25nCTEwMTAwNTUzNzEKKwkubG9uZwkxMTY2NjE2NDYxCisJLmxvbmcJMTA2ODA3MTU4MAorCS5sb25nCTI5MDEyNzQwNTEKKwkubG9uZwkzMTU4NTQ5OTc3CisJLmxvbmcJMjk0NTQ3Mjg5MgorCS5sb25nCTEwNjgxMzY5NDcKKwkubG9uZwkzNzI2MTIwNjU4CisJLmxvbmcJMTAwOTc2MjcxNQorCS5sb25nCTM5NTQ0ODA5NzYKKwkubG9uZwkxMDY4MjAyMzAxCisJLmxvbmcJMTI4OTE3MzQ1NworCS5sb25nCTEwMDk0Mjk4NjEKKwkubG9uZwkyMDgxNzUyODI5CisJLmxvbmcJMTA2ODI2NzY0MgorCS5sb25nCTE4MzY5MDk4NzQKKwkubG9uZwkxMDA2MjEyMDk1CisJLmxvbmcJMzgwNzk5OTc4OAorCS5sb25nCTEwNjgzMzI5NjgKKwkubG9uZwkyMTcyNDU5OTQwCisJLmxvbmcJMzE1NjE2MjA3OAorCS5sb25nCTI3MzE3ODk4ODQKKwkubG9uZwkxMDY4Mzk4MjgwCisJLmxvbmcJMzQ1MDcxODM5MgorCS5sb25nCTMxNTkyMTY1NDcKKwkubG9uZwkxMDQ0NDc3OTYxCisJLmxvbmcJMTA2ODQ2MzU3NworCS5sb25nCTIyMzA1NTMyMjkKKwkubG9uZwkxMDExNDI0MzM5CisJLmxvbmcJMTQ4NjkzMDI4NworCS5sb25nCTEwNjg1MzAyMTgKKwkubG9uZwkyODYxNTQ3NDc0CisJLmxvbmcJMTAxMjA0MTM3NgorCS5sb25nCTIyOTMwMTY4ODEKKwkubG9uZwkxMDY4NTk1NDY2CisJLmxvbmcJMTM2ODQzMjcyCisJLmxvbmcJMTAxMjY4NDc5NworCS5sb25nCTIwMTUxODE1NworCS5sb25nCTEwNjg2NjA2ODAKKwkubG9uZwk2MzIzMTk4NAorCS5sb25nCTEwMTI0MjcxOTgKKwkubG9uZwk0MDU0MjM0NTg0CisJLmxvbmcJMTA2ODcyNTg1NgorCS5sb25nCTM5MjcwMDY5NjAKKwkubG9uZwkxMDExODc4OTU1CisJLmxvbmcJMTI0NjQ3NzIxMworCS5sb25nCTEwNjg3OTA5OTUKKwkubG9uZwkxNDk0MjY1NjUyCisJLmxvbmcJMzE1NTIxOTM1MAorCS5sb25nCTY3ODE4NjY5OQorCS5sb25nCTEwNjg4NTYwOTMKKwkubG9uZwkxMjY0MzYxNDI0CisJLmxvbmcJMzE1OTI1NjY5MworCS5sb25nCTI2OTA1OTQ5OTUKKwkubG9uZwkxMDY4OTIxMTQ4CisJLmxvbmcJMzkwNjk5NjM3OQorCS5sb25nCTEwMDkyODgyNjcKKwkubG9uZwkzMzYyNjExNTE3CisJLmxvbmcJMTA2ODk4NjE1OQorCS5sb25nCTE2NTA5NzAwNDEKKwkubG9uZwkzMTU4MzMxNzcxCisJLmxvbmcJMzEwMjE2MjExMQorCS5sb25nCTEwNjkwNTExMjQKKwkubG9uZwkzNjU5MTcwMzUKKwkubG9uZwkzMTYwMjY0MTUzCisJLmxvbmcJMjM1MjYxMTA2NworCS5sb25nCTEwNjkxMTYwNDEKKwkubG9uZwk0MDA4OTcwMTkwCisJLmxvbmcJMzE1OTQ3ODE4MgorCS5sb25nCTE1OTQxMzQ3OTQKKwkubG9uZwkxMDY5MTgwOTA4CisJLmxvbmcJNDY2NjkwMTc4CisJLmxvbmcJMTAxMjUyNjUwMQorCS5sb25nCTEzNDUwNzkzMDYKKwkubG9uZwkxMDY5MjQ1NzIzCisJLmxvbmcJMjI2ODI3MzU2OAorCS5sb25nCTMxNjAxNjQwOTIKKwkubG9uZwkyMTYzMzAwOTcwCisJLmxvbmcJMTA2OTMxMDQ4NAorCS5sb25nCTI3NTA4MzQ4MDAKKwkubG9uZwkzMTU4MTEzNDgyCisJLmxvbmcJMzUyNTIyNzE2CisJLmxvbmcJMTA2OTM3NTE5MAorCS5sb25nCTE3NTA0MTEzNzIKKwkubG9uZwkxMDExNzkwODQ1CisJLmxvbmcJODQ4NTQxNjQ3CisJLmxvbmcJMTA2OTQzOTgzOAorCS5sb25nCTIxNjQyMDc1NzMKKwkubG9uZwkxMDExNjk4MzUwCisJLmxvbmcJNDA2NDczMTIKKwkubG9uZwkxMDY5NTA0NDI3CisJLmxvbmcJMjk0OTE2NTQzNAorCS5sb25nCTMxNTkxMDcyNjcKKwkubG9uZwkyMjE2NzY2MjcwCisJLmxvbmcJMTA2OTU3NDM1NworCS5sb25nCTIxOTc5MjA3NjUKKwkubG9uZwkzMTYxMDU1OTU0CisJLmxvbmcJMTA5MDkxNDM4NAorCS5sb25nCTEwNjk2Mzg3NTcKKwkubG9uZwkyMzMwNDU0Njc0CisJLmxvbmcJMTAxMzM2NTk5OAorCS5sb25nCTM4NzYwMTI0NAorCS5sb25nCTEwNjk3MDMwMjIKKwkubG9uZwkzMTg1NjgxMTY4CisJLmxvbmcJMTAxMzQzNDA3MQorCS5sb25nCTM5OTE2NDA0ODQKKwkubG9uZwkxMDY5NzY3MTQ0CisJLmxvbmcJMTMxMzIxMTU5MAorCS5sb25nCTMxNjEwODc5NTkKKwkubG9uZwkzMzIyNDg5NTAyCisJLmxvbmcJMTA2OTgzMTExOAorCS5sb25nCTMwMTM5Nzc5OTUKKwkubG9uZwkxMDEzMDUzMDExCisJLmxvbmcJMzEyMTY5ODU3MAorCS5sb25nCTEwNjk4OTQ5MzYKKwkubG9uZwk0MDY5MDE1NjY3CisJLmxvbmcJMTAxMzAyMzM2MgorCS5sb25nCTQyODk5NjQ2NjAKKwkubG9uZwkxMDY5OTU4NTkxCisJLmxvbmcJMTczNjE5MTE1NgorCS5sb25nCTMxNTgyNjY3MzEKKwkubG9uZwkzOTAzMzEyMzg2CisJLmxvbmcJMTA3MDAyMjA3NworCS5sb25nCTE4MzM1OTI0MTMKKwkubG9uZwkzMTU5NzMxNDcxCisJLmxvbmcJMzgxODQ0OTg2NAorCS5sb25nCTEwNzAwODUzODcKKwkubG9uZwk4NTEwMzY0MjkKKwkubG9uZwkzMTU5NzMwNDUxCisJLmxvbmcJMjA5NzQ4MDMwNgorCS5sb25nCTEwNzAxNDg1MTUKKwkubG9uZwkzNTA2MzkwODg0CisJLmxvbmcJMzE2MDQ2MjMwMgorCS5sb25nCTE2MTE2OTQ1MDIKKwkubG9uZwkxMDcwMjExNDU0CisJLmxvbmcJMjc4NTczNTU0MAorCS5sb25nCTMxNjA0NjUxNDQKKwkubG9uZwkxNDY0Njk0Nzk2CisJLmxvbmcJMTA3MDI3NDE5OAorCS5sb25nCTQyMjkyNzcyOTkKKwkubG9uZwkzMTU5OTA3MDAwCisJLmxvbmcJMTI5OTYxMjc3NQorCS5sb25nCTEwNzAzMzY3NDEKKwkubG9uZwk0MTE2NjUzNzg4CisJLmxvbmcJMzE2MDQyNzczOQorCS5sb25nCTEzMTA1NDQ3ODkKKwkubG9uZwkxMDcwMzk5MDc3CisJLmxvbmcJMTA2NDQzMDMzMQorCS5sb25nCTEwMTMyMTgyMDIKKwkubG9uZwkyMjUzMTY4MDMwCisJLmxvbmcJMTA3MDQ2MTIwMAorCS5sb25nCTE0MDUwNDQ2MDkKKwkubG9uZwkzMTU3NjIzMTc5CisJLmxvbmcJMTE1OTU2NzM3MworCS5sb25nCTEwNzA1MjMxMDUKKwkubG9uZwkyMzUzNDQ1NTIxCisJLmxvbmcJMzE1OTk5MjE3NgorCS5sb25nCTEzNTkzNzM3NTAKKwkubG9uZwkxMDcwNjA1ODE4CisJLmxvbmcJMTc0ODE3MTMzNgorCS5sb25nCTMxNjE4NzkyNjMKKwkubG9uZwk5MDgzNDE3MDYKKwkubG9uZwkxMDcwNjY3MDM0CisJLmxvbmcJMzM3MjcxMDgxNQorCS5sb25nCTMxNjE3NzUyNDUKKwkubG9uZwkxNzQzMDI3MzUwCisJLmxvbmcJMTA3MDcyNzc2NQorCS5sb25nCTY4NzA4OTkzNAorCS5sb25nCTMxNjA1MDcxNzEKKwkubG9uZwkyMDU1MzU1NjQ2CisJLmxvbmcJMTA3MDc4Nzk5MgorCS5sb25nCTIzOTI4NTUyNDIKKwkubG9uZwkxMDEzNjgyNDY5CisJLmxvbmcJNjkwNDI2MTY0CisJLmxvbmcJMTA3MDg0NzY5NworCS5sb25nCTExMDM5MjY2NjYKKwkubG9uZwkxMDE0MDUyODEwCisJLmxvbmcJMTQ4MzI0Nzg0NworCS5sb25nCTEwNzA5MDY4NjIKKwkubG9uZwkyMDgyNjQ1ODQ3CisJLmxvbmcJMzE2MTM0NTQ3OQorCS5sb25nCTM5MjA0MDI3MAorCS5sb25nCTEwNzA5NjU0NzIKKwkubG9uZwkyNDA3NzIwMDIzCisJLmxvbmcJMTAxNDA1Mzc1NAorCS5sb25nCTI2NzM4NDYwMTQKKwkubG9uZwkxMDcxMDIzNTExCisJLmxvbmcJMTI5MzYwNTUzMgorCS5sb25nCTMxNTg0NjQzODUKKwkubG9uZwkxMzg0MjE1ODEwCisJLmxvbmcJMTA3MTA4MDk2NworCS5sb25nCTI0NDYwOTU4NzIKKwkubG9uZwkzMTU5MjE2NDA3CisJLmxvbmcJMzEwMTY2MDYzMQorCS5sb25nCTEwNzExMzc4MjYKKwkubG9uZwk2OTgwNDA3NTgKKwkubG9uZwkxMDE0ODU1MzI4CisJLmxvbmcJMjA5NDA1NzA1OAorCS5sb25nCTEwNzExOTQwNzgKKwkubG9uZwkyMjgyMDQ4MzM5CisJLmxvbmcJMTAxNDA0MDM4NQorCS5sb25nCTE3MTI3NTA1OTQKKwkubG9uZwkxMDcxMjQ5NzEyCisJLmxvbmcJMTIwNDM3MjM3OAorCS5sb25nCTMxNjIyNzY0NjQKKwkubG9uZwkxNDExNTE1Nzg3CisJLmxvbmcJMTA3MTMwNDcxOQorCS5sb25nCTk0OTA4MDgwOAorCS5sb25nCTEwMTUwMDY0MDMKKwkubG9uZwk5MzE1MzgwODUKKwkubG9uZwkxMDcxMzU5MDkxCisJLmxvbmcJMzAyNzEyNzAzOQorCS5sb25nCTEwMTQzMDcyMzMKKwkubG9uZwkxNzkxMzkwNjUKKwkubG9uZwkxMDcxNDEyODIxCisJLmxvbmcJNDI4NTU0NzQ5MgorCS5sb25nCTMxNjE5MzQ3MzEKKwkubG9uZwkzMzg3NzIxMjU5CisJLmxvbmcJMTA3MTQ2NTkwMgorCS5sb25nCTM3MzIyNTc3MworCS5sb25nCTEwMTM0ODY2MjUKKwkubG9uZwkyMTMyMjM2ODUyCisJLmxvbmcJMTA3MTU0NDI5OQorCS5sb25nCTMyNTA1MzM0MjkKKwkubG9uZwkxMDE0MDMxNjc3CisJLmxvbmcJMTk0MjA3MDI4NAorCS5sb25nCTEwNzE2NDU1OTYKKwkubG9uZwkxMjM3OTY0MTc5CisJLmxvbmcJMzE2MzIzOTExMworCS5sb25nCTE1MzI3MDc4MDIKKwkubG9uZwkxMDcxNjk1MzgwCisJLmxvbmcJMzMwNjQ1NTgzCisJLmxvbmcJMTAxMjQ5NTYxMAorCS5sb25nCTIyOTQxODQ5NzkKKwkubG9uZwkxMDcxNzQzODM0CisJLmxvbmcJMzk1OTQ3Mjg5NworCS5sb25nCTEwMTU4MzMxMTYKKwkubG9uZwkzODA1MDYwNzE0CisJLmxvbmcJMTA3MTc5MDk2MQorCS5sb25nCTI2NzEyNTYxNDIKKwkubG9uZwkxMDEzNzI3NzcyCisJLmxvbmcJMjIxNTAzNzg5OAorCS5sb25nCTEwNzE4MzY3NzAKKwkubG9uZwkyNjgzMzU5MTE3CisJLmxvbmcJMTAxNTgzMTkwMgorCS5sb25nCTQ4MzY2MTU5NAorCS5sb25nCTEwNzE4ODEyNzMKKwkubG9uZwk4MzYyODgzMjYKKwkubG9uZwkzMTYyNjQ4NjQzCisJLmxvbmcJMTUzNDY3OTg5NAorCS5sb25nCTEwNzE5MjQ0ODYKKwkubG9uZwkzNzMyNTg2OTYKKwkubG9uZwkzMTYyNDcwMDk2CisJLmxvbmcJMTUzODcxNDYyOAorCS5sb25nCTEwNzE5NjY0MzAKKwkubG9uZwkzMTk5NDMzMDY4CisJLmxvbmcJMTAxNTMyNTUwMQorCS5sb25nCTUyNzY0MjU1NQorCS5sb25nCTEwNzIwMDcxMjgKKwkubG9uZwkzNjM2ODMyNTkyCisJLmxvbmcJMzE2MTg0MzE0NQorCS5sb25nCTI5MTMzOTE1MAorCS5sb25nCTEwNzIwNDY2MDUKKwkubG9uZwk4OTAxNjk1MzcKKwkubG9uZwkzMTYwNTg2MTE3CisJLmxvbmcJMjQ1MDIxMDIwMQorCS5sb25nCTEwNzIwODQ4ODgKKwkubG9uZwkxNjM2MzUzMjk0CisJLmxvbmcJMzE2MzE5MzQwMAorCS5sb25nCTI0MTEzNjc5NTEKKwkubG9uZwkxMDcyMTIyMDA3CisJLmxvbmcJMzc0ODk5ODczCisJLmxvbmcJMTAxMTMzMTc1MAorCS5sb25nCTY4MTU0OTk3MQorCS5sb25nCTEwNzIxNTc5OTIKKwkubG9uZwk1MDY0MTE2ODkKKwkubG9uZwkxMDE1MzczOTU0CisJLmxvbmcJMTQ2Njc0NTU0MQorCS5sb25nCTEwNzIxOTI4NzMKKwkubG9uZwkyMTQzODYwOTMxCisJLmxvbmcJMTAxMzM2NDMzNAorCS5sb25nCTI4NDU2MjIzNjYKKwkubG9uZwkxMDcyMjI2NjgyCisJLmxvbmcJMjg2OTE3ODIwOQorCS5sb25nCTMxNjI0MjM2ODIKKwkubG9uZwkyODM4ODcxNDM4CisJLmxvbmcJMTA3MjI3NTQ1NgorCS5sb25nCTM3NDIyMjM1OTkKKwkubG9uZwkxMDE0MzM4NTc3CisJLmxvbmcJNDIwMDI3NTI3NAorCS5sb25nCTEwNzIzMzcwMzQKKwkubG9uZwkxNTY2NTM5OTE1CisJLmxvbmcJMzE2MTgzOTU1MAorCS5sb25nCTMwMzQ3MzM1MzAKKwkubG9uZwkxMDcyMzk0ODk3CisJLmxvbmcJNjUyNjIxNDA4CisJLmxvbmcJMzE2MjI2MTk2NAorCS5sb25nCTMyMDc0MTI5OTMKKwkubG9uZwkxMDcyNDQ5MjkwCisJLmxvbmcJMzIwNjEyNDY2NQorCS5sb25nCTEwMTQ0MDg3MzMKKwkubG9uZwk2MjQ0NjE0NzgKKwkubG9uZwkxMDcyNTAwNDUwCisJLmxvbmcJOTMyNDM3NDg1CisJLmxvbmcJMTAxNTIwNDM0MworCS5sb25nCTc2NzY2NTkwOAorCS5sb25nCTEwNzI1NDg2MDAKKwkubG9uZwkxMDM3OTExOTUyCisJLmxvbmcJMzE2MzUyNzYyNworCS5sb25nCTExMTA3NzM2MzkKKwkubG9uZwkxMDcyNTkzOTUyCisJLmxvbmcJMjM3MTUxNzkxMgorCS5sb25nCTMxNjA0NjU3NDEKKwkubG9uZwkxOTQwODI4NTMwCisJLmxvbmcJMTA3MjYzNjcwNAorCS5sb25nCTI3MzE0MDg0MjgKKwkubG9uZwkzMTYyODk1Nzk1CisJLmxvbmcJMTkxMTMyOTM4OAorCS5sb25nCTEwNzI2NzcwNDEKKwkubG9uZwkxNzczMDg5NjE1CisJLmxvbmcJMzE1OTU2OTI2NworCS5sb25nCTE3NjQ3MTU3ODgKKwkubG9uZwkxMDcyNzA0MTkxCisJLmxvbmcJNjkxMzQ2OTQ5CisJLmxvbmcJMzE2NDA2OTk0NgorCS5sb25nCTMzMzI5NzkyMzMKKwkubG9uZwkxMDcyNzIyMTk1CisJLmxvbmcJMzU1MDczMzk4MworCS5sb25nCTEwMTQ3NzA2MjgKKwkubG9uZwkxMzIxODcwMjU0CisJLmxvbmcJMTA3MjczOTIzMQorCS5sb25nCTE0MTUzMTU4MjAKKwkubG9uZwkxMDE2MjI0MDUyCisJLmxvbmcJMzY1NzQyOTAzMAorCS5sb25nCTEwNzI3NTUzNjUKKwkubG9uZwkzOTEwNTM5MDMzCisJLmxvbmcJMTAxNTk2NjQwMgorCS5sb25nCTQxOTc2MjQ1NTcKKwkubG9uZwkxMDcyNzcwNjYxCisJLmxvbmcJMjMzMzM5OTI1NAorCS5sb25nCTMxNjQ1NDY0ODAKKwkubG9uZwkxNTEyMDU5NDkzCisJLmxvbmcJMTA3Mjc4NTE3NworCS5sb25nCTI3MDE1MTAzMTgKKwkubG9uZwkxMDE2MTc4MDkyCisJLmxvbmcJNDUzMzc5MDM3CisJLmxvbmcJMTA3Mjc5ODk2NQorCS5sb25nCTQwNDYzNDQyNTMKKwkubG9uZwkzMTYyODE0MzY0CisJLmxvbmcJMTk0MjM0NTE2MgorCS5sb25nCTEwNzI4MTgzODgKKwkubG9uZwk2MjExMzQxNDcKKwkubG9uZwkxMDE2MzM1MTk1CisJLmxvbmcJNDIxMDE3NjI3MworCS5sb25nCTEwNzI4NDIxNjQKKwkubG9uZwkyNzAxMDEzMzg3CisJLmxvbmcJMzE2NDMyNjYxOQorCS5sb25nCTQxODU2NDQwMTAKKwkubG9uZwkxMDcyODYzNzk1CisJLmxvbmcJNDE2MzY5OTM0MQorCS5sb25nCTEwMTYyMDMxMTIKKwkubG9uZwk2Nzk2ODg3ODgKKwkubG9uZwkxMDcyODgzNTQzCisJLmxvbmcJNDE0NzI3Njc2MgorCS5sb25nCTEwMTQwNjY3NTAKKwkubG9uZwkyOTQzMjg2NQorCS5sb25nCTEwNzI5MDE2MzAKKwkubG9uZwk5NzA0MTU3OTcKKwkubG9uZwkxMDE2OTAyMDYzCisJLmxvbmcJNDA3MDcyMTA5MgorCS5sb25nCTEwNzI5MTgyNDcKKwkubG9uZwkyNTM5MDA0NDExCisJLmxvbmcJMzE2MzczNjA5NgorCS5sb25nCTIyNTI0Njg4NDMKKwkubG9uZwkxMDcyOTMzNTYxCisJLmxvbmcJMzQyNDA4Mjg4NworCS5sb25nCTMxNjM0MDcxNzcKKwkubG9uZwkyOTI5NzI0ODI1CisJLmxvbmcJMTA3Mjk0NzcxMgorCS5sb25nCTM2NjE0ODIyMzUKKwkubG9uZwkzMTYzODQ2OTg5CisJLmxvbmcJMTM3NzUxMzM2OAorCS5sb25nCTEwNzI5NjA4MjQKKwkubG9uZwkzOTg3OTI2NjgwCisJLmxvbmcJMTAxMzY0NzkwOAorCS5sb25nCTEwMzE2MzI5MDgKKwkubG9uZwkxMDcyOTczMDAzCisJLmxvbmcJMzY3MjIxNzE1MQorCS5sb25nCTEwMTY2MTQ2MTkKKwkubG9uZwkyNTE2NTA4MTMwCisJLmxvbmcJMTA3Mjk4NDM0MgorCS5sb25nCTU0NTg1NTAyMAorCS5sb25nCTMxNjI3Mjg5MzAKKwkubG9uZwkzNzkyNDUyMTc4CisJLmxvbmcJMTA3Mjk5NDkyMworCS5sb25nCTM0MjAxMTk0NjcKKwkubG9uZwkxMDE2NDcxNDMwCisJLmxvbmcJMzE0Nzc5MTQ1OQorCS5sb25nCTEwNzMwMDQ4MTgKKwkubG9uZwkxMzQyMjA0OTc5CisJLmxvbmcJMTAxMzkzNzI1NAorCS5sb25nCTk5OTE4OTc1MgorCS5sb25nCTEwNzMwMTQwOTAKKwkubG9uZwkxMDA2MzM1NDcyCisJLmxvbmcJMzE2Mjg1MDkxOQorCS5sb25nCTcxMTAxMTAxMQorCS5sb25nCTEwNzMwMjI3OTQKKwkubG9uZwk0NjMzNDg4CisJLmxvbmcJMzE2Mjk2Njg5NQorCS5sb25nCTE1NjQwMzYzCisJLmxvbmcJMTA3MzAzMDk4MAorCS5sb25nCTE2ODYzODk1NjAKKwkubG9uZwkzMTY0Mzc2MjI2CisJLmxvbmcJMTIxODQ2MzU4OQorCS5sb25nCTEwNzMwNDIzODIKKwkubG9uZwkxNTI2ODM3MTEwCisJLmxvbmcJMzE2MzUzMzk4NQorCS5sb25nCTI1Mzg0NzA1NTUKKwkubG9uZwkxMDczMDU2MTQ0CisJLmxvbmcJMjI3MzMwNDQwNgorCS5sb25nCTMxNjM3ODQ5OTYKKwkubG9uZwkxMjI5NzIwOTQ3CisJLmxvbmcJMTA3MzA2ODQ4OQorCS5sb25nCTI5NzE2MjgyMDYKKwkubG9uZwkzMTYyMzU2NTQwCisJLmxvbmcJMzExNTQyNzAxNgorCS5sb25nCTEwNzMwNzk2MjEKKwkubG9uZwk0MjE1MTMyOTU3CisJLmxvbmcJMzE2NDI4Mjc2MgorCS5sb25nCTQwMzA2MTI1NTcKKwkubG9uZwkxMDczMDg5NzA5CisJLmxvbmcJMTkxMzI1MTY5MQorCS5sb25nCTMxNjM2NzEyOTIKKwkubG9uZwkyNzI4NTIxMjU3CisJLmxvbmcJMTA3MzA5ODg5MgorCS5sb25nCTI4NjEwODk1MDAKKwkubG9uZwkxMDE1NDU0NDU5CisJLmxvbmcJMTExODY5NjI4MworCS5sb25nCTEwNzMxMDcyODUKKwkubG9uZwkxNjI4OTQ4MDUzCisJLmxvbmcJMTAxNjE3OTY1OAorCS5sb25nCTI2ODI3MTEyNTUKKwkubG9uZwkxMDczMTE0OTg0CisJLmxvbmcJMjkwNjMwNjI2NgorCS5sb25nCTEwMTQxNDI2NDMKKwkubG9uZwkyMDczODk4MDgxCisJLmxvbmcJMTA3MzEyMjA3MgorCS5sb25nCTEzMjI3NDA0NTQKKwkubG9uZwkzMTY0NDk3MjE3CisJLmxvbmcJMTQwMzcwMDI5NworCS5sb25nCTEwNzMxMjg2MTgKKwkubG9uZwk0MTYxMzc4OTUKKwkubG9uZwkzMTYyNzgxNDY2CisJLmxvbmcJMjUwMjY4NTYxNworCS5sb25nCTEwNzMxMzQ2ODEKKwkubG9uZwkzMjQyMDA4NzMyCisJLmxvbmcJMTAxNDU5MzQ5NQorCS5sb25nCTE1MzE5MjY4NTEKKwkubG9uZwkxMDczMTQwMzEzCisJLmxvbmcJMTM2MjcwODA5NAorCS5sb25nCTEwMTY1MTc2MDQKKwkubG9uZwkzNTcyODE0NDExCisJLmxvbmcJMTA3MzE0NTU1NworCS5sb25nCTM3MDk3OTA1MjcKKwkubG9uZwkxMDEyNjQ2ODc0CisJLmxvbmcJMTY5NTUzNjExMQorCS5sb25nCTEwNzMxNTA0NTMKKwkubG9uZwkzOTgwMzQ2MzQwCisJLmxvbmcJMTAxNjcwNTEzNgorCS5sb25nCTIzNjMwNTcyMDMKKwkubG9uZwkxMDczMTU1MDMzCisJLmxvbmcJMjU1MTE5NDc5MgorCS5sb25nCTEwMTI1Njk2OTUKKwkubG9uZwkyODczMzY1NjgyCisJLmxvbmcJMTA3MzE1OTMyNworCS5sb25nCTMxODExNTQ3NDgKKwkubG9uZwkxMDE3MDQxNDUwCisJLmxvbmcJMTA1MzM4NDY5MQorCS5sb25nCTEwNzMxNjUyODgKKwkubG9uZwkzMDc0NTM2ODc5CisJLmxvbmcJMTAxNjk2NTY2MAorCS5sb25nCTMyNzA1NDI3MTIKKwkubG9uZwkxMDczMTcyNDUxCisJLmxvbmcJMjUzNTMxOTQxNQorCS5sb25nCTMxNjMwNTE3NzgKKwkubG9uZwkxMzUzNjMxNDg0CisJLmxvbmcJMTA3MzE3ODg1MAorCS5sb25nCTExNzM4MzM3NTUKKwkubG9uZwkxMDE1NTM0NTM3CisJLmxvbmcJMzUxMTIxODQ2MAorCS5sb25nCTEwNzMxODQ1OTkKKwkubG9uZwkxMjQzNjA4MTA5CisJLmxvbmcJMzE2MTU5MjEyMgorCS5sb25nCTQxMjEyNTkyODQKKwkubG9uZwkxMDczMTg5NzkzCisJLmxvbmcJMzk4NTg0OTEyCisJLmxvbmcJMzE2MzgyOTkyMworCS5sb25nCTExOTM4NjIxMDYKKwkubG9uZwkxMDczMTk0NTA5CisJLmxvbmcJMTg3Mzc0NTUzOQorCS5sb25nCTMxNjM4MDI4MTkKKwkubG9uZwkzODYxOTQ5NzkwCisJLmxvbmcJMTA3MzE5ODgwOAorCS5sb25nCTM4NDEyNjExNDcKKwkubG9uZwkxMDE1NTg3MjQ4CisJLmxvbmcJMTQ4NjkwNDU3OAorCS5sb25nCTEwNzMyMDI3NDUKKwkubG9uZwkxNjM0NzI2Nzc2CisJLmxvbmcJMzE2Mzg0Nzg4NgorCS5sb25nCTI4NzkxNTM3MTUKKwkubG9uZwkxMDczMjA2MzYyCisJLmxvbmcJMjAwNDU2MjQyCisJLmxvbmcJMzE2NDEzODY1NworCS5sb25nCTM4NTM1MzI1MworCS5sb25nCTEwNzMyMDk2OTgKKwkubG9uZwkxMTg2MzU1NTE3CisJLmxvbmcJMTAxNDg4NzE1NQorCS5sb25nCTExMjU4NjU4MzkKKwkubG9uZwkxMDczMjEyNzgzCisJLmxvbmcJMjAzNTYxMjYyCisJLmxvbmcJMzE2MTI0NDkyNworCS5sb25nCTEyMjEzNjE0NzUKKwkubG9uZwkxMDczMjE1NjQ1CisJLmxvbmcJMzM4MjQ3NjU2MworCS5sb25nCTEwMTQ5MzYxMzgKKwkubG9uZwkyMDc3MzIzNTczCisJLmxvbmcJMTA3MzIxODMwNworCS5sb25nCTEwMDUxMjEwMDUKKwkubG9uZwkzMTY0NDMwNzUyCisJLmxvbmcJMjE1NjExMzczCisJLmxvbmcJMTA3MzIyMDc5MAorCS5sb25nCTM1MzE5ODc2NAorCS5sb25nCTMxNjQ0ODUxMzcKKwkubG9uZwkyMzQ3NDE5MjY1CisJLmxvbmcJMTA3MzIyMzExMAorCS5sb25nCTExMDMxNDMzNjAKKwkubG9uZwkxMDE2NTQyMTM3CisJLmxvbmcJMTM3OTExMjc2NQorCS5sb25nCTEwNzMyMjUyODQKKwkubG9uZwkzODE1ODM1MzMKKwkubG9uZwkzMTYyODcwODMzCisJLmxvbmcJMzg5MTE5ODQ2MworCS5sb25nCTEwNzMyMjgyOTgKKwkubG9uZwkxNzcxMjc1NzU0CisJLmxvbmcJMTAxNDY1NDY4MQorCS5sb25nCTMzOTU5MTQwNTEKKwkubG9uZwkxMDczMjMxOTE3CisJLmxvbmcJMjM1MDkwMDkxNAorCS5sb25nCTMxNjQwMTM5NzgKKwkubG9uZwkyNzk5OTE5NDc4CisJLmxvbmcJMTA3MzIzNTE0NgorCS5sb25nCTI4OTM5NTAxNjQKKwkubG9uZwkzMTYzMjYwOTAxCisJLmxvbmcJMTEzODY3MzQ3NgorCS5sb25nCTEwNzMyMzgwNDUKKwkubG9uZwkyNjIyMjA0Nzg1CisJLmxvbmcJMzE2NDE3NDM4OAorCS5sb25nCTM0MDg4NTU5NDAKKwkubG9uZwkxMDczMjQwNjYxCisJLmxvbmcJMjgwMDg4MTY1MAorCS5sb25nCTEwMTYwMDg2MjQKKwkubG9uZwkyMDQ0ODU4NzM4CisJLmxvbmcJMTA3MzI0MzAzNQorCS5sb25nCTYwNDU0NDc4NQorCS5sb25nCTEwMTcwMjI5MDEKKwkubG9uZwkyNTc4Nzk1MTc2CisJLmxvbmcJMTA3MzI0NTE5OAorCS5sb25nCTI1NTczMzI5MjUKKwkubG9uZwkxMDE2MTM1MTY1CisJLmxvbmcJNDE5NjI4NTMxNAorCS5sb25nCTEwNzMyNDcxNzcKKwkubG9uZwkyMDMyMzY1MzA3CisJLmxvbmcJMTAxNjE5NDczNQorCS5sb25nCTIyNDg3Nzc0NworCS5sb25nCTEwNzMyNDg5OTYKKwkubG9uZwk0OTc5MjY5MTYKKwkubG9uZwkxMDE2OTQ3MTExCisJLmxvbmcJMzI3MTM4NjQ5MAorCS5sb25nCTEwNzMyNTA2NzEKKwkubG9uZwkyNjg5OTk0ODQ2CisJLmxvbmcJMTAxNjYzMTUxMworCS5sb25nCTgxMzYzNTk4OQorCS5sb25nCTEwNzMyNTIyMjEKKwkubG9uZwk3NDcwMzUyNzcKKwkubG9uZwkzMTY0NTMwMTM2CisJLmxvbmcJMzY5ODI5NTE5CisJLmxvbmcJMTA3MzI1MzY1OAorCS5sb25nCTIxODIwMzM4NTgKKwkubG9uZwkzMTYzMTkwMzQwCisJLmxvbmcJMTE4NzY3OTA1MgorCS5sb25nCTEwNzMyNTQ5OTQKKwkubG9uZwk2NzM5NTQ0NDMKKwkubG9uZwkxMDE2MTQ5ODIxCisJLmxvbmcJNDIzMjU4NjA5OAorCS5sb25nCTEwNzMyNTYyMzkKKwkubG9uZwk0OTc3NzUyMDAKKwkubG9uZwkzMTYyMTc5MDE1CisJLmxvbmcJNDI2NjkwNTU4CisJLmxvbmcJMTA3MzI1NzQwNAorCS5sb25nCTMwNjMzNDMyNDcKKwkubG9uZwkxMDE2ODY1NTc4CisJLmxvbmcJMTYyNDA2NTkwMgorCS5sb25nCTEwNzMyNTg0OTQKKwkubG9uZwkxMzU0MjI0OTk2CisJLmxvbmcJMzE2MzUwMzc3OAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDczMjkxNzcxCisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNjE3ODIxNAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDczMjkxNzcxCisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNjE3ODIxNAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkyMTQ3NDgzNjQ3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5MDE3NjAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMjc2OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjAwNjI2Mjk4NQorCS5sb25nCTEwNjkzMTA4NjMKKwkubG9uZwkyMzU4NDQ5NDcxCisJLmxvbmcJMzIxNzM0MjEzMQorCS5sb25nCTM4NDU0NTQzNTIKKwkubG9uZwkxMDY5OTUyMjk3CisJLmxvbmcJMjgyOTY3OTE0OQorCS5sb25nCTEwNzM3NzE1NjUKKwkudHlwZQlzdGF0aWNfY29uc3RfdGFibGUsQG9iamVjdAorCS5zaXplCXN0YXRpY19jb25zdF90YWJsZSwyNzA0CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvc19jYnJ0LlMgYi9saWJtL3g4Ni9zX2NicnQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYzk4Yzk5Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvc19jYnJ0LlMKQEAgLTAsMCArMSw3MzggQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgIEFzc3VtZSB4PTJeezMqaytqfSAqIDEuYjEgYjIgLi4uIGI1IGI2IC4uLiBiNTIsIHdoZXJlIGogPSAwLDEsMi4KKy8vICAgTGV0IHI9KHgqMl57LTNrLWp9IC0gMS5iMSBiMiAuLi4gYjUgMSkqIHJjcFtiMSBiMiAuLmI1XSwKKy8vICAgd2hlcmUgcmNwW2IxIGIyIC4uIGI1XT0xLygxLmIxIGIyIGIzIGI0IGI1IDEpIGluIGRvdWJsZSBwcmVjaXNpb24KKy8vICAgY2JydCgyXmogKiAxLiBiMSBiMiAuLiBiNSAxKSBpcyBhcHByb3hpbWF0ZWQgYXMgVFtqXVtiMS4uYjVdK0Rbal1bYjEuLmI1XQorLy8gICAoVCBzdG9yZXMgdGhlIGhpZ2ggNTMgYml0cywgRCBzdG9yZXMgdGhlIGxvdyBvcmRlciBiaXRzKQorLy8gICBSZXN1bHQ9Ml5rKlQrKDJeaypUKnIpKlArMl5rKkQKKy8vICAgd2hlcmUgUD1wMStwMipyKy4uK3A4KnJeNworLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgY2JydChOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBjYnJ0KElORikgPSB0aGF0IElORgorLy8gIGNicnQoKy8tMCkgPSArLy0wCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgc3RhdGljX2Z1bmMKKyAgICAgICAgLnRleHQKKyAgICAgICAgLmFsaWduIF9fYmlvbmljX2FzbV9hbGlnbgorICAgICAgICAudHlwZSBzdGF0aWNfZnVuYywgQGZ1bmN0aW9uCitzdGF0aWNfZnVuYzoKKy4uQjEuMToKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZWF4CisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZWF4KSwgJWVheAorICAgICAgICBsZWEgICAgICAgc3RhdGljX2NvbnN0X3RhYmxlQEdPVE9GRiglZWF4KSwgJWVheAorICAgICAgICByZXQKKyAgICAgICAgLnNpemUgICBzdGF0aWNfZnVuYywuLXN0YXRpY19mdW5jCisjIC0tIEVuZCAgc3RhdGljX2Z1bmMKKworIyAtLSBCZWdpbiAgY2JydAorRU5UUlkoY2JydCkKKyMgcGFyYW1ldGVyIDE6IDggKyAlZWJwCisuLkIyLjE6CisuLkIyLjI6CisgICAgICAgIHB1c2hsICAgICAlZWJwCisgICAgICAgIG1vdmwgICAgICAlZXNwLCAlZWJwCisgICAgICAgIHN1YmwgICAgICAkMTIwLCAlZXNwCisgICAgICAgIG1vdmwgICAgICAlZXNpLCA1MiglZXNwKQorICAgICAgICBjYWxsICAgICAgc3RhdGljX2Z1bmMKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlc2kKKyAgICAgICAgbW92c2QgICAgIDEyOCglZXNwKSwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tNworICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDgoJWVzcCkKKyAgICAgICAgbW92bCAgICAgICQ1MjQwMzIsICVlZHgKKyAgICAgICAgbW92c2QgICAgIDY0KCVlc2kpLCAleG1tNQorICAgICAgICBtb3ZzZCAgICAgODAoJWVzaSksICV4bW0zCisgICAgICAgIHBzcmxxICAgICAkNDQsICV4bW03CisgICAgICAgIHBleHRydyAgICAkMCwgJXhtbTcsICVlY3gKKyAgICAgICAgbW92ZCAgICAgICV4bW03LCAlZWF4CisgICAgICAgIG1vdnNkICAgICA5NiglZXNpKSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDExMiglZXNpKSwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICVlYngsIDE2KCVlc3ApCisgICAgICAgIGFuZGwgICAgICAkMjQ4LCAlZWN4CisgICAgICAgIG1vdnNkICAgICAxMjgoJWVjeCwlZXNpKSwgJXhtbTQKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlYngKKyAgICAgICAgYW5kbCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBjbXBsICAgICAgJDUyNDAzMiwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKyAgICAgICAgc2hybCAgICAgICQ4LCAlZWR4CisgICAgICAgIHNocmwgICAgICAkOCwgJWVieAorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGFuZHBkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgb3JwZCAgICAgICV4bW0yLCAleG1tMworICAgICAgICBvcnBkICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAoJWVzaSksICV4bW01CisgICAgICAgIG1vdmwgICAgICAkNTQ2MiwgJWVheAorICAgICAgICBtb3ZhcGQgICAgMTYoJWVzaSksICV4bW02CisgICAgICAgIG11bGwgICAgICAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWJ4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMjA0NywgJWVieAorICAgICAgICBzaHJsICAgICAgJDE0LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjA0OCwgJWVkeAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVieAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVieAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVieAorICAgICAgICBzaGxsICAgICAgJDgsICVlYngKKyAgICAgICAgYWRkbCAgICAgICQ2ODIsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgbW92ZCAgICAgICVlYXgsICV4bW03CisgICAgICAgIGFkZGwgICAgICAlZWJ4LCAlZWN4CisgICAgICAgIHBzbGxxICAgICAkNTIsICV4bW03CisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgbW92YXBkICAgIDMyKCVlc2kpLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgNDgoJWVzaSksICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW03LCAleG1tMworICAgICAgICBtdWxzZCAgICAgMzg0KCVlY3gsJWVzaSksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgIDExNTIoJWVjeCwlZXNpKSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tNAorICAgICAgICB1bnBja2xwZCAgJXhtbTEsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIGFkZHBkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVieAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIHVucGNraHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIG11bHNkICAgICAxOTg0KCVlc2kpLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW03CisgICAgICAgIG1vdmwgICAgICAkNTI0MDMyLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkNDQsICV4bW03CisgICAgICAgIHBleHRydyAgICAkMCwgJXhtbTcsICVlY3gKKyAgICAgICAgbW92ZCAgICAgICV4bW03LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjQ4LCAlZWN4CisgICAgICAgIG1vdnNkICAgICAxMjgoJWVjeCwlZXNpKSwgJXhtbTQKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlYngKKyAgICAgICAgYW5kbCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgc2hybCAgICAgICQ4LCAlZWR4CisgICAgICAgIHNocmwgICAgICAkOCwgJWVieAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgICV4bW01LCAleG1tMAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG9ycGQgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgICglZXNpKSwgJXhtbTUKKyAgICAgICAgbW92bCAgICAgICQ1NDYyLCAlZWF4CisgICAgICAgIG1vdmFwZCAgICAxNiglZXNpKSwgJXhtbTYKKyAgICAgICAgbXVsbCAgICAgICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlYngsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQyMDQ3LCAlZWJ4CisgICAgICAgIHNocmwgICAgICAkMTQsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyMDQ4LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIHNobGwgICAgICAkOCwgJWVieAorICAgICAgICBhZGRsICAgICAgJDY2MSwgJWVheAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBtb3ZkICAgICAgJWVheCwgJXhtbTcKKyAgICAgICAgYWRkbCAgICAgICVlYngsICVlY3gKKyAgICAgICAgcHNsbHEgICAgICQ1MiwgJXhtbTcKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWJ4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBtb3ZsICAgICAgMTYoJWVzcCksICVlYngKKyAgICAgICAgZmxkbCAgICAgIDE5NTIoJWVzaSkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgbW92bCAgICAgIDE2KCVlc3ApLCAlZWJ4CisgICAgICAgIGZsZGwgICAgICAxOTY4KCVlc2kpCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIG1vdmwgICAgICAxNiglZXNwKSwgJWVieAorICAgICAgICBtb3ZsICAgICAgMTMyKCVlc3ApLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAxMjgoJWVzcCksICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQyMTQ3NDgzNjQ3LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMjE0NjQzNTA3MiwgJWVjeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisgICAgICAgIGZsZGwgICAgICAxOTIwKCVlc2kpCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisgICAgICAgIGZsZGwgICAgICAxOTM2KCVlc2kpCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIG1vdnNkICAgICA4KCVlc3ApLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBtb3ZsICAgICAgNTIoJWVzcCksICVlc2kKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKGNicnQpCisjIC0tIEVuZCAgY2JydAorCisjIFN0YXJ0IGZpbGUgc2NvcGUgQVNNCitBTElBU19TWU1CT0woY2JydGwsIGNicnQpOworIyBFbmQgZmlsZSBzY29wZSBBU00KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK3N0YXRpY19jb25zdF90YWJsZToKKwkubG9uZwkxNTUzNzc4OTE5CisJLmxvbmcJMzIxMzg5OTQ4NgorCS5sb25nCTM1MzQ5NTI1MDcKKwkubG9uZwkzMjE1MjY2MjgwCisJLmxvbmcJMTY0NjM3MTM5OQorCS5sb25nCTMyMTQ0MTIwNDUKKwkubG9uZwk0NzcyMTg1ODgKKwkubG9uZwkzMjE2Nzk4MTUxCisJLmxvbmcJMzU4MjUyMTYyMQorCS5sb25nCTEwNjY2MjgzNjIKKwkubG9uZwkxMDA3NDYxNDY0CisJLmxvbmcJMTA2ODQ3MzA1MworCS5sb25nCTg4OTYyOTcxNAorCS5sb25nCTEwNjczNzg0NDkKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA3MDk0NTYyMQorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkxMDQ4NTc1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE5MzI4MAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDMyMTkyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk1Mjg2MTEzNjAKKwkubG9uZwkzMjIwMTQ0NjMyCisJLmxvbmcJMjg4NDY3OTUyNworCS5sb25nCTMyMjAwODI5OTMKKwkubG9uZwkxOTkxODY4ODkxCisJLmxvbmcJMzIyMDAyNDkyOAorCS5sb25nCTIyOTg3MTQ4OTEKKwkubG9uZwkzMjE5OTcwMTM0CisJLmxvbmcJNTg4MzUxNjgKKwkubG9uZwkzMjE5OTE4MzQzCisJLmxvbmcJMzAzNTExMDIyMworCS5sb25nCTMyMTk4NjkzMTMKKwkubG9uZwkxNjE3NTg1MDg2CisJLmxvbmcJMzIxOTgyMjgzMQorCS5sb25nCTI1MDA4NjcwMzMKKwkubG9uZwkzMjE5Nzc4NzAyCisJLmxvbmcJNDI0MTk0MzAwOAorCS5sb25nCTMyMTk3MzY3NTIKKwkubG9uZwkyNTg3MzI5NzAKKwkubG9uZwkzMjE5Njk2ODI1CisJLmxvbmcJNDA0MjMyMjE2CisJLmxvbmcJMzIxOTY1ODc3NgorCS5sb25nCTIxNzIxNjczNjgKKwkubG9uZwkzMjE5NjIyNDc2CisJLmxvbmcJMTU0NDI1NzkwNAorCS5sb25nCTMyMTk1ODc4MDgKKwkubG9uZwkzNzc1Nzk1NDMKKwkubG9uZwkzMjE5NTU0NjY0CisJLmxvbmcJMTYxNjM4NTU0MgorCS5sb25nCTMyMTk1MjI5NDUKKwkubG9uZwk4MTM3ODMyNzcKKwkubG9uZwkzMjE5NDkyNTYyCisJLmxvbmcJMzk0MDc0MzE4OQorCS5sb25nCTMyMTk0NjM0MzEKKwkubG9uZwkyNjg5Nzc3NDk5CisJLmxvbmcJMzIxOTQzNTQ3OAorCS5sb25nCTE3MDA5NzcxNDcKKwkubG9uZwkzMjE5NDA4NjMyCisJLmxvbmcJMzE2OTEwMjA4MgorCS5sb25nCTMyMTkzODI4MjgKKwkubG9uZwkzMjcyMzU2MDQKKwkubG9uZwkzMjE5MzU4MDA4CisJLmxvbmcJMTI0NDMzNjMxOQorCS5sb25nCTMyMTkzMzQxMTUKKwkubG9uZwkxMzAwMzExMjAwCisJLmxvbmcJMzIxOTMxMTA5OQorCS5sb25nCTMwOTU0NzE5MjUKKwkubG9uZwkzMjE5Mjg4OTEyCisJLmxvbmcJMjE2NjQ4NzkyOAorCS5sb25nCTMyMTkyNjc1MTEKKwkubG9uZwkyOTEzMTA4MjUzCisJLmxvbmcJMzIxOTI0Njg1NAorCS5sb25nCTI5MzY3Mjk3OAorCS5sb25nCTMyMTkyMjY5MDQKKwkubG9uZwkyODg3MzcyOTcKKwkubG9uZwkzMjE5MjA3NjI0CisJLmxvbmcJMTgxMDI3NTQ3MgorCS5sb25nCTMyMTkxODg5ODEKKwkubG9uZwkxNzQ1OTIxNjcKKwkubG9uZwkzMjE5MTcwOTQ1CisJLmxvbmcJMzUzOTA1MzA1MgorCS5sb25nCTMyMTkxNTM0ODUKKwkubG9uZwkyMTY0MzkyOTY4CisJLmxvbmcJMzIxOTEzNjU3NgorCS5sb25nCTU3MjM0NTQ5NQorCS5sb25nCTEwNzI2OTg2ODEKKwkubG9uZwkxOTk4MjA0NDY3CisJLmxvbmcJMTA3MjcwOTM4MgorCS5sb25nCTM4NjE1MDE1NTMKKwkubG9uZwkxMDcyNzE5ODcyCisJLmxvbmcJMjI2ODE5MjQzNAorCS5sb25nCTEwNzI3MzAxNjIKKwkubG9uZwkyOTgxOTc5MzA4CisJLmxvbmcJMTA3Mjc0MDI2MAorCS5sb25nCTI3MDg1OTE0MworCS5sb25nCTEwNzI3NTAxNzYKKwkubG9uZwkyOTU4NjUxMzkyCisJLmxvbmcJMTA3Mjc1OTkxNgorCS5sb25nCTMxMzExMzI0MworCS5sb25nCTEwNzI3Njk0OTAKKwkubG9uZwk5MTk0NDk0MDAKKwkubG9uZwkxMDcyNzc4OTAzCisJLmxvbmcJMjgwOTMyODkwMworCS5sb25nCTEwNzI3ODgxNjIKKwkubG9uZwkyMjIyOTgxNTg3CisJLmxvbmcJMTA3Mjc5NzI3NAorCS5sb25nCTIzNTI1MzA3ODEKKwkubG9uZwkxMDcyODA2MjQ0CisJLmxvbmcJNTk0MTUyNTE3CisJLmxvbmcJMTA3MjgxNTA3OAorCS5sb25nCTE1NTU3NjcxOTkKKwkubG9uZwkxMDcyODIzNzgwCisJLmxvbmcJNDI4MjQyMTMxNAorCS5sb25nCTEwNzI4MzIzNTUKKwkubG9uZwkyMzU1NTc4NTk3CisJLmxvbmcJMTA3Mjg0MDgwOQorCS5sb25nCTExNjI1OTA2MTkKKwkubG9uZwkxMDcyODQ5MTQ1CisJLmxvbmcJNzk3ODY0MDUxCisJLmxvbmcJMTA3Mjg1NzM2NworCS5sb25nCTQzMTI3MzY4MAorCS5sb25nCTEwNzI4NjU0NzkKKwkubG9uZwkyNjY5ODMxMTQ4CisJLmxvbmcJMTA3Mjg3MzQ4NAorCS5sb25nCTczMzQ3Nzc1MgorCS5sb25nCTEwNzI4ODEzODcKKwkubG9uZwk0MjgwMjIwNjA0CisJLmxvbmcJMTA3Mjg4OTE4OQorCS5sb25nCTgwMTk2MTYzNAorCS5sb25nCTEwNzI4OTY4OTYKKwkubG9uZwkyOTE1MzcwNzYwCisJLmxvbmcJMTA3MjkwNDUwOAorCS5sb25nCTExNTk2MTM0ODIKKwkubG9uZwkxMDcyOTEyMDMwCisJLmxvbmcJMjY4OTk0NDc5OAorCS5sb25nCTEwNzI5MTk0NjMKKwkubG9uZwkxMjQ4Njg3ODIyCisJLmxvbmcJMTA3MjkyNjgxMQorCS5sb25nCTI5Njc5NTEwMzAKKwkubG9uZwkxMDcyOTM0MDc1CisJLmxvbmcJNjMwMTcwNDMyCisJLmxvbmcJMTA3Mjk0MTI1OQorCS5sb25nCTM3NjA4OTgyNTQKKwkubG9uZwkxMDcyOTQ4MzYzCisJLmxvbmcJMAorCS5sb25nCTEwNzI5NTUzOTIKKwkubG9uZwkyMzcwMjczMjk0CisJLmxvbmcJMTA3Mjk2MjM0NQorCS5sb25nCTEyNjE3NTQ4MDIKKwkubG9uZwkxMDcyOTcyNjQwCisJLmxvbmcJNTQ2MzM0MDY1CisJLmxvbmcJMTA3Mjk4NjEyMworCS5sb25nCTEwNTQ4OTM4MzAKKwkubG9uZwkxMDcyOTk5MzQwCisJLmxvbmcJMTU3MTE4NzU5NworCS5sb25nCTEwNzMwMTIzMDQKKwkubG9uZwkxMTA3OTc1MTc1CisJLmxvbmcJMTA3MzAyNTAyNworCS5sb25nCTM2MDY5MDkzNzcKKwkubG9uZwkxMDczMDM3NTE5CisJLmxvbmcJMTExMzYxNjc0NworCS5sb25nCTEwNzMwNDk3OTIKKwkubG9uZwk0MTU0NzQ0NjMyCisJLmxvbmcJMTA3MzA2MTg1MworCS5sb25nCTMzNTg5MzE0MjMKKwkubG9uZwkxMDczMDczNzEzCisJLmxvbmcJNDA2MDcwMjM3MgorCS5sb25nCTEwNzMwODUzNzkKKwkubG9uZwk3NDc1NzYxNzYKKwkubG9uZwkxMDczMDk2ODYwCisJLmxvbmcJMzAyMzEzODI1NQorCS5sb25nCTEwNzMxMDgxNjEKKwkubG9uZwkxNDE5OTg4NTQ4CisJLmxvbmcJMTA3MzExOTI5MQorCS5sb25nCTE5MTQxODUzMDUKKwkubG9uZwkxMDczMTMwMjU1CisJLmxvbmcJMjk0Mzg5OTQ4CisJLmxvbmcJMTA3MzE0MTA2MAorCS5sb25nCTM3NjE4MDI1NzAKKwkubG9uZwkxMDczMTUxNzEwCisJLmxvbmcJOTc4MjgxNTY2CisJLmxvbmcJMTA3MzE2MjIxMworCS5sb25nCTgyMzE0ODgyMAorCS5sb25nCTEwNzMxNzI1NzIKKwkubG9uZwkyNDIwOTU0NDQxCisJLmxvbmcJMTA3MzE4Mjc5MgorCS5sb25nCTM4MTU0NDk5MDgKKwkubG9uZwkxMDczMTkyODc4CisJLmxvbmcJMjA0NjA1ODU4NworCS5sb25nCTEwNzMyMDI4MzUKKwkubG9uZwkxODA3NTI0NzUzCisJLmxvbmcJMTA3MzIxMjY2NgorCS5sb25nCTI2Mjg2ODE0MDEKKwkubG9uZwkxMDczMjIyMzc1CisJLmxvbmcJMzIyNTY2NzM1NworCS5sb25nCTEwNzMyMzE5NjYKKwkubG9uZwkxNTU1MzA3NDIxCisJLmxvbmcJMTA3MzI0MTQ0MworCS5sb25nCTM0NTQwNDMwOTkKKwkubG9uZwkxMDczMjUwODA4CisJLmxvbmcJMTIwODEzNzg5NgorCS5sb25nCTEwNzMyNjAwNjYKKwkubG9uZwkzNjU5OTE2NzcyCisJLmxvbmcJMTA3MzI2OTIxOAorCS5sb25nCTE4ODYyNjEyNjQKKwkubG9uZwkxMDczMjc4MjY5CisJLmxvbmcJMzU5MzY0NzgzOQorCS5sb25nCTEwNzMyODcyMjAKKwkubG9uZwkzMDg2MDEyMjA1CisJLmxvbmcJMTA3MzI5NjA3NQorCS5sb25nCTI3Njk3OTY5MjIKKwkubG9uZwkxMDczMzA0ODM2CisJLmxvbmcJODg4NzE2MDU3CisJLmxvbmcJMTA3MzMxNzgwNworCS5sb25nCTIyMDE0NjU2MjMKKwkubG9uZwkxMDczMzM0Nzk0CisJLmxvbmcJMTY0MzY5MzY1CisJLmxvbmcJMTA3MzM1MTQ0NworCS5sb25nCTM0NjI2NjY3MzMKKwkubG9uZwkxMDczMzY3NzgwCisJLmxvbmcJMjc3MzkwNTQ1NworCS5sb25nCTEwNzMzODM4MTAKKwkubG9uZwkxMzQyODc5MDg4CisJLmxvbmcJMTA3MzM5OTU1MAorCS5sb25nCTI1NDM5MzM5NzUKKwkubG9uZwkxMDczNDE1MDEyCisJLmxvbmcJMTY4NDQ3Nzc4MQorCS5sb25nCTEwNzM0MzAyMDkKKwkubG9uZwkzNTMyMTc4NTQzCisJLmxvbmcJMTA3MzQ0NTE1MQorCS5sb25nCTExNDc3NDczMDAKKwkubG9uZwkxMDczNDU5ODUwCisJLmxvbmcJMTkyODAzMTc5MworCS5sb25nCTEwNzM0NzQzMTQKKwkubG9uZwkyMDc5NzE3MDE1CisJLmxvbmcJMTA3MzQ4ODU1MworCS5sb25nCTQwMTY3NjUzMTUKKwkubG9uZwkxMDczNTAyNTc1CisJLmxvbmcJMzY3MDQzMTEzOQorCS5sb25nCTEwNzM1MTYzODkKKwkubG9uZwkzNTQ5MjI3MjI1CisJLmxvbmcJMTA3MzUzMDAwMgorCS5sb25nCTExNjM3NjA3CisJLmxvbmcJMTA3MzU0MzQyMgorCS5sb25nCTU4ODIyMDE2OQorCS5sb25nCTEwNzM1NTY2NTQKKwkubG9uZwkyNjM1NDA3NTAzCisJLmxvbmcJMTA3MzU2OTcwNQorCS5sb25nCTIwNDIwMjkzMTcKKwkubG9uZwkxMDczNTgyNTgyCisJLmxvbmcJMTkyNTEyODk2MgorCS5sb25nCTEwNzM1OTUyOTAKKwkubG9uZwk0MTM2Mzc1NjY0CisJLmxvbmcJMTA3MzYwNzgzNAorCS5sb25nCTc1OTk2NDYwMAorCS5sb25nCTEwNzM2MjAyMjEKKwkubG9uZwk0MjU3NjA2NzcxCisJLmxvbmcJMTA3MzYzMjQ1MworCS5sb25nCTI5NzI3ODkwNworCS5sb25nCTEwNzM2NDQ1MzgKKwkubG9uZwkzNjU1MDUzMDkzCisJLmxvbmcJMTA3MzY1NjQ3NworCS5sb25nCTI0NDIyNTMxNzIKKwkubG9uZwkxMDczNjY4Mjc3CisJLmxvbmcJMTExMTg3Njc5OQorCS5sb25nCTEwNzM2Nzk5NDEKKwkubG9uZwkzMzMwOTczMTM5CisJLmxvbmcJMTA3MzY5MTQ3MgorCS5sb25nCTM0Mzg4Nzk0NTIKKwkubG9uZwkxMDczNzAyODc1CisJLmxvbmcJMzY3MTU2NTQ3OAorCS5sb25nCTEwNzM3MTQxNTMKKwkubG9uZwkxMzE3ODQ5NTQ3CisJLmxvbmcJMTA3MzcyNTMxMAorCS5sb25nCTE2NDIzNjQxMTUKKwkubG9uZwkxMDczNzM2MzQ4CisJLmxvbmcJNDA1MDkwMDQ3NAorCS5sb25nCTEwMTQ0MjcxOTAKKwkubG9uZwkxMTU3OTc3ODYwCisJLmxvbmcJMTAxNjQ0NDQ2MQorCS5sb25nCTEzNzQ1NjgxOTkKKwkubG9uZwkxMDE3MjcxMzg3CisJLmxvbmcJMjgwOTE2MzI4OAorCS5sb25nCTEwMTY4ODI2NzYKKwkubG9uZwkzNzQyMzc3Mzc3CisJLmxvbmcJMTAxMzE2ODE5MQorCS5sb25nCTMxMDE2MDY1OTcKKwkubG9uZwkxMDE3NTQxNjcyCisJLmxvbmcJNjUyMjQzNTgKKwkubG9uZwkxMDE3MjE3NTk3CisJLmxvbmcJMjY5MTU5MTI1MAorCS5sb25nCTEwMTcyNjY2NDMKKwkubG9uZwk0MDIwNzU4NTQ5CisJLmxvbmcJMTAxNzY4OTMxMworCS5sb25nCTEzMTYzMTA5OTIKKwkubG9uZwkxMDE4MDMwNzg4CisJLmxvbmcJMTAzMTUzNzg1NgorCS5sb25nCTEwMTQwOTA4ODIKKwkubG9uZwkzMjYxMzk1MjM5CisJLmxvbmcJMTAxNjQxMzY0MQorCS5sb25nCTg4NjQyNDk5OQorCS5sb25nCTEwMTYzMTMzMzUKKwkubG9uZwkzMTE0Nzc2ODM0CisJLmxvbmcJMTAxNDE5NTg3NQorCS5sb25nCTE2ODExMjA2MjAKKwkubG9uZwkxMDE3ODI1NDE2CisJLmxvbmcJMTMyOTYwMDI3MworCS5sb25nCTEwMTY2MjU3NDAKKwkubG9uZwk0NjU0NzQ2MjMKKwkubG9uZwkxMDE3MDk3MTE5CisJLmxvbmcJNDI1MTYzMzk4MAorCS5sb25nCTEwMTcxNjkwNzcKKwkubG9uZwkxOTg2OTkwMTMzCisJLmxvbmcJMTAxNzcxMDY0NQorCS5sb25nCTc1Mjk1ODYxMworCS5sb25nCTEwMTcxNTk2NDEKKwkubG9uZwkyMjE2MjE2NzkyCisJLmxvbmcJMTAxODAyMDE2MworCS5sb25nCTQyODI4NjAxMjkKKwkubG9uZwkxMDE1OTI0ODYxCisJLmxvbmcJMTU1NzYyNzg1OQorCS5sb25nCTEwMTYwMzk1MzgKKwkubG9uZwkzODg5MjE5NzU0CisJLmxvbmcJMTAxODA4NjIzNworCS5sb25nCTM2ODQ5OTY0MDgKKwkubG9uZwkxMDE3MzUzMjc1CisJLmxvbmcJNzIzNTMyMTAzCisJLmxvbmcJMTAxNzcxNzE0MQorCS5sb25nCTI5NTExNDk2NzYKKwkubG9uZwkxMDEyNTI4NDcwCisJLmxvbmcJODMxODkwOTM3CisJLmxvbmcJMTAxNzgzMDU1MworCS5sb25nCTEwMzEyMTI2NDUKKwkubG9uZwkxMDE3Mzg3MzMxCisJLmxvbmcJMjc0MTczNzQ1MAorCS5sb25nCTEwMTc2MDQ5NzQKKwkubG9uZwkyODYzMzExNTMxCisJLmxvbmcJMTAwMzc3NjY4MgorCS5sb25nCTQyNzY3MzYwOTkKKwkubG9uZwkxMDEzMTUzMDg4CisJLmxvbmcJNDExMTc3ODM4MgorCS5sb25nCTEwMTU2NzM2ODYKKwkubG9uZwkxNzI4MDY1NzY5CisJLmxvbmcJMTAxNjQxMzk4NgorCS5sb25nCTI3MDg3MTgwMzEKKwkubG9uZwkxMDE4MDc4ODMzCisJLmxvbmcJMTA2OTMzNTAwNQorCS5sb25nCTEwMTUyOTEyMjQKKwkubG9uZwk3MDAwMzcxNDQKKwkubG9uZwkxMDE2NDgyMDMyCisJLmxvbmcJMjkwNDU2NjQ1MgorCS5sb25nCTEwMTcyMjY4NjEKKwkubG9uZwk0MDc0MTU2NjQ5CisJLmxvbmcJMTAxNzYyMjY1MQorCS5sb25nCTI1MDE5NTY1CisJLmxvbmcJMTAxNTI0NTM2NgorCS5sb25nCTM2MDE5NTI2MDgKKwkubG9uZwkxMDE1NzcxNzU1CisJLmxvbmcJMzI2NzEyOTM3MworCS5sb25nCTEwMTc5MDQ2NjQKKwkubG9uZwk1MDMyMDMxMDMKKwkubG9uZwkxMDE0OTIxNjI5CisJLmxvbmcJMjEyMjAxMTczMAorCS5sb25nCTEwMTgwMjc4NjYKKwkubG9uZwkzOTI3Mjk1NDYxCisJLmxvbmcJMTAxNDE4OTQ1NgorCS5sb25nCTI3OTA2MjUxNDcKKwkubG9uZwkxMDE2MDI0MjUxCisJLmxvbmcJMTMzMDQ2MDE4NgorCS5sb25nCTEwMTY5NDAzNDYKKwkubG9uZwk0MDMzNTY4NDYzCisJLmxvbmcJMTAxNTUzODM5MAorCS5sb25nCTM2OTU4MTgyMjcKKwkubG9uZwkxMDE3NTA5NjIxCisJLmxvbmcJMjU3NTczMzYxCisJLmxvbmcJMTAxNzIwODg2OAorCS5sb25nCTMyMjc2OTc4NTIKKwkubG9uZwkxMDE3MzM3OTY0CisJLmxvbmcJMjM0MTE4NTQ4CisJLmxvbmcJMTAxNzE2OTU3NworCS5sb25nCTQwMDkwMjU4MDMKKwkubG9uZwkxMDE3Mjc4NTI0CisJLmxvbmcJMTk0ODM0MzM5NAorCS5sb25nCTEwMTc3NDkzMTAKKwkubG9uZwk2NzgzOTgxNjIKKwkubG9uZwkxMDE4MTQ0MjM5CisJLmxvbmcJMzA4Mzg2NDg2MworCS5sb25nCTEwMTY2NjkwODYKKwkubG9uZwkyNDE1NDUzNDUyCisJLmxvbmcJMTAxNzg5MDM3MAorCS5sb25nCTE3NTQ2NzM0NAorCS5sb25nCTEwMTczMzAwMzMKKwkubG9uZwkzMTk3MzU5NTgwCisJLmxvbmcJMTAxMDMzOTkyOAorCS5sb25nCTIwNzEyNzY5NTEKKwkubG9uZwkxMDE1OTQxMzU4CisJLmxvbmcJMjY4MzcyNTQzCisJLmxvbmcJMTAxNjczNzc3MworCS5sb25nCTkzODEzMjk1OQorCS5sb25nCTEwMTczODkxMDgKKwkubG9uZwkxODE2NzUwNTU5CisJLmxvbmcJMTAxNzMzNzQ0OAorCS5sb25nCTQxMTkyMDM3NDkKKwkubG9uZwkxMDE3MTUyMTc0CisJLmxvbmcJMjU3ODY1Mzg3OAorCS5sb25nCTEwMTMxMDg0OTcKKwkubG9uZwkyNDcwMzMxMDk2CisJLmxvbmcJMTAxNDY3ODYwNgorCS5sb25nCTEyMzg1NTczNQorCS5sb25nCTEwMTY1NTMzMjAKKwkubG9uZwkxMjY1NjUwODg5CisJLmxvbmcJMTAxNDc4MjY4NworCS5sb25nCTM0MTQzOTgxNzIKKwkubG9uZwkxMDE3MTgyNjM4CisJLmxvbmcJMTA0MDc3MzM2OQorCS5sb25nCTEwMTYxNTg0MDEKKwkubG9uZwkzNDgzNjI4ODg2CisJLmxvbmcJMTAxNjg4NjU1MAorCS5sb25nCTQxNDA0OTk0MDUKKwkubG9uZwkxMDE2MTkxNDI1CisJLmxvbmcJMzg5MzQ3Nzg1MAorCS5sb25nCTEwMTY5NjQ0OTUKKwkubG9uZwkzOTM1MzE5NzcxCisJLmxvbmcJMTAwOTYzNDcxNworCS5sb25nCTI5Nzg5ODI2NjAKKwkubG9uZwkxMDE1MDI3MTEyCisJLmxvbmcJMjQ1MjcwOTkyMworCS5sb25nCTEwMTc5OTAyMjkKKwkubG9uZwkzMTkwMzY1NzEyCisJLmxvbmcJMTAxNTgzNTE0OQorCS5sb25nCTQyMzc1ODgxMzkKKwkubG9uZwkxMDE1ODMyOTI1CisJLmxvbmcJMjYxMDY3ODM4OQorCS5sb25nCTEwMTc5NjI3MTEKKwkubG9uZwkyMTI3MzE2Nzc0CisJLmxvbmcJMTAxNzQwNTc3MAorCS5sb25nCTgyNDI2NzUwMgorCS5sb25nCTEwMTc5NTk0NjMKKwkubG9uZwkyMTY1OTI0MDQyCisJLmxvbmcJMTAxNzkxMjIyNQorCS5sb25nCTI3NzQwMDcwNzYKKwkubG9uZwkxMDEzMjU3NDE4CisJLmxvbmcJNDEyMzkxNjMyNgorCS5sb25nCTEwMTc1ODIyODQKKwkubG9uZwkxOTc2NDE3OTU4CisJLmxvbmcJMTAxNjk1OTkwOQorCS5sb25nCTQwOTI4MDY0MTIKKwkubG9uZwkxMDE3NzExMjc5CisJLmxvbmcJMTE5MjUxODE3CisJLmxvbmcJMTAxNTM2MzYzMQorCS5sb25nCTM0NzU0MTg3NjgKKwkubG9uZwkxMDE3Njc1NDE1CisJLmxvbmcJMTk3MjU4MDUwMworCS5sb25nCTEwMTU0NzA2ODQKKwkubG9uZwk4MTU1NDEwMTcKKwkubG9uZwkxMDE3NTE3OTY5CisJLmxvbmcJMjQyOTkxNzQ1MQorCS5sb25nCTEwMTczOTc3NzYKKwkubG9uZwk0MDYyODg4NDgyCisJLmxvbmcJMTAxNjc0OTg5NworCS5sb25nCTY4Mjg0MTUzCisJLmxvbmcJMTAxNzkyNTY3OAorCS5sb25nCTIyMDc3NzkyNDYKKwkubG9uZwkxMDE2MzIwMjk4CisJLmxvbmcJMTE4MzQ2NjUyMAorCS5sb25nCTEwMTc0MDg2NTcKKwkubG9uZwkxNDMzMjY0MjcKKwkubG9uZwkxMDE3MDYwNDAzCisJLmxvbmcJMAorCS5sb25nCTIxNDY0MzUwNzIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0MjkzOTE4NzIwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTM4NzUzNTM2CisJLmxvbmcJMAorCS5sb25nCTAKKwkudHlwZQlzdGF0aWNfY29uc3RfdGFibGUsQG9iamVjdAorCS5zaXplCXN0YXRpY19jb25zdF90YWJsZSwyMDAwCisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvc19jb3MuUyBiL2xpYm0veDg2L3NfY29zLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmQ1ZWY1ZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L3NfY29zLlMKQEAgLTAsMCArMSw4OTIgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgICAgMS4gUkFOR0UgUkVEVUNUSU9OCisvLworLy8gICAgIFdlIHBlcmZvcm0gYW4gaW5pdGlhbCByYW5nZSByZWR1Y3Rpb24gZnJvbSBYIHRvIHIgd2l0aAorLy8KKy8vICAgICAgICAgIFggPX49IE4gKiBwaS8zMiArIHIKKy8vCisvLyAgICAgc28gdGhhdCB8cnwgPD0gcGkvNjQgKyBlcHNpbG9uLiBXZSByZXN0cmljdCBpbnB1dHMgdG8gdGhvc2UKKy8vICAgICB3aGVyZSB8TnwgPD0gOTMyNTYwLiBCZXlvbmQgdGhpcywgdGhlIHJhbmdlIHJlZHVjdGlvbiBpcworLy8gICAgIGluc3VmZmljaWVudGx5IGFjY3VyYXRlLiBGb3IgZXh0cmVtZWx5IHNtYWxsIGlucHV0cywgCisvLyAgICAgZGVub3JtYWxpemF0aW9uIGNhbiBvY2N1ciBpbnRlcm5hbGx5LCBpbXBhY3RpbmcgcGVyZm9ybWFuY2UuCisvLyAgICAgVGhpcyBtZWFucyB0aGF0IHRoZSBtYWluIHBhdGggaXMgYWN0dWFsbHkgb25seSB0YWtlbiBmb3IKKy8vICAgICAyXi0yNTIgPD0gfFh8IDwgOTAxMTIuCisvLworLy8gICAgIFRvIGF2b2lkIGJyYW5jaGVzLCB3ZSBwZXJmb3JtIHRoZSByYW5nZSByZWR1Y3Rpb24gdG8gZnVsbAorLy8gICAgIGFjY3VyYWN5IGVhY2ggdGltZS4KKy8vCisvLyAgICAgICAgICBYIC0gTiAqIChQXzEgKyBQXzIgKyBQXzMpCisvLworLy8gICAgIHdoZXJlIFBfMSBhbmQgUF8yIGFyZSAzMi1iaXQgbnVtYmVycyAoc28gbXVsdGlwbGljYXRpb24gYnkgTgorLy8gICAgIGlzIGV4YWN0KSBhbmQgUF8zIGlzIGEgNTMtYml0IG51bWJlci4gVG9nZXRoZXIsIHRoZXNlCisvLyAgICAgYXBwcm94aW1hdGUgcGkgd2VsbCBlbm91Z2ggZm9yIGFsbCBjYXNlcyBpbiB0aGUgcmVzdHJpY3RlZAorLy8gICAgIHJhbmdlLgorLy8KKy8vICAgICBUaGUgbWFpbiByZWR1Y3Rpb24gc2VxdWVuY2UgaXM6CisvLworLy8gICAgICAgICAgICAgeSA9IDMyL3BpICogeAorLy8gICAgICAgICAgICAgTiA9IGludGVnZXIoeSkKKy8vICAgICAoY29tcHV0ZWQgYnkgYWRkaW5nIGFuZCBzdWJ0cmFjdGluZyBvZmYgU0hJRlRFUikKKy8vCisvLyAgICAgICAgICAgICBtXzEgPSBOICogUF8xCisvLyAgICAgICAgICAgICBtXzIgPSBOICogUF8yCisvLyAgICAgICAgICAgICByXzEgPSB4IC0gbV8xCisvLyAgICAgICAgICAgICByID0gcl8xIC0gbV8yCisvLyAgICAgKHRoaXMgciBjYW4gYmUgdXNlZCBmb3IgbW9zdCBvZiB0aGUgY2FsY3VsYXRpb24pCisvLworLy8gICAgICAgICAgICAgY18xID0gcl8xIC0gcgorLy8gICAgICAgICAgICAgbV8zID0gTiAqIFBfMworLy8gICAgICAgICAgICAgY18yID0gY18xIC0gbV8yCisvLyAgICAgICAgICAgICBjID0gY18yIC0gbV8zCisvLworLy8gICAgIDIuIE1BSU4gQUxHT1JJVEhNCisvLworLy8gICAgIFRoZSBhbGdvcml0aG0gdXNlcyBhIHRhYmxlIGxvb2t1cCBiYXNlZCBvbiBCID0gTSAqIHBpIC8gMzIKKy8vICAgICB3aGVyZSBNID0gTiBtb2QgNjQuIFRoZSBzdG9yZWQgdmFsdWVzIGFyZToKKy8vICAgICAgIHNpZ21hICAgICAgICAgICAgIGNsb3Nlc3QgcG93ZXIgb2YgMiB0byBjb3MoQikKKy8vICAgICAgIENfaGwgICAgICAgICAgICAgIDUzLWJpdCBjb3MoQikgLSBzaWdtYQorLy8gICAgICAgU19oaSArIFNfbG8gICAgICAgMiAqIDUzLWJpdCBzaW4oQikKKy8vCisvLyAgICAgVGhlIGNvbXB1dGF0aW9uIGlzIG9yZ2FuaXplZCBhcyBmb2xsb3dzOgorLy8KKy8vICAgICAgICAgIHNpbihCICsgciArIGMpID0gW3NpbihCKSArIHNpZ21hICogcl0gKworLy8gICAgICAgICAgICAgICAgICAgICAgICAgICByICogKGNvcyhCKSAtIHNpZ21hKSArCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpbihCKSAqIFtjb3MociArIGMpIC0gMV0gKworLy8gICAgICAgICAgICAgICAgICAgICAgICAgICBjb3MoQikgKiBbc2luKHIgKyBjKSAtIHJdCisvLworLy8gICAgIHdoaWNoIGlzIGFwcHJveGltYXRlbHk6CisvLworLy8gICAgICAgICAgW1NfaGkgKyBzaWdtYSAqIHJdICsKKy8vICAgICAgICAgIENfaGwgKiByICsKKy8vICAgICAgICAgIFNfbG8gKyBTX2hpICogWyhjb3MocikgLSAxKSAtIHIgKiBjXSArCisvLyAgICAgICAgICAoQ19obCArIHNpZ21hKSAqIFsoc2luKHIpIC0gcikgKyBjXQorLy8KKy8vICAgICBhbmQgdGhpcyBpcyB3aGF0IGlzIGFjdHVhbGx5IGNvbXB1dGVkLiBXZSBzZXBhcmF0ZSB0aGlzIHN1bQorLy8gICAgIGludG8gZm91ciBwYXJ0czoKKy8vCisvLyAgICAgICAgICBoaSArIG1lZCArIHBvbHMgKyBjb3JyCisvLworLy8gICAgIHdoZXJlCisvLworLy8gICAgICAgICAgaGkgICAgICAgPSBTX2hpICsgc2lnbWEgcgorLy8gICAgICAgICAgbWVkICAgICAgPSBDX2hsICogcgorLy8gICAgICAgICAgcG9scyAgICAgPSBTX2hpICogKGNvcyhyKSAtIDEpICsgKENfaGwgKyBzaWdtYSkgKiAoc2luKHIpIC0gcikKKy8vICAgICAgICAgIGNvcnIgICAgID0gU19sbyArIGMgKiAoKENfaGwgKyBzaWdtYSkgLSBTX2hpICogcikKKy8vCisvLyAgICAgMy4gUE9MWU5PTUlBTAorLy8KKy8vICAgICBUaGUgcG9seW5vbWlhbCBTX2hpICogKGNvcyhyKSAtIDEpICsgKENfaGwgKyBzaWdtYSkgKgorLy8gICAgIChzaW4ocikgLSByKSBjYW4gYmUgcmVhcnJhbmdlZCBmcmVlbHksIHNpbmNlIGl0IGlzIHF1aXRlCisvLyAgICAgc21hbGwsIHNvIHdlIGV4cGxvaXQgcGFyYWxsZWxpc20gdG8gdGhlIGZ1bGxlc3QuCisvLworLy8gICAgICAgICAgcHNjNCAgICAgICA9ICAgU0NfNCAqIHJfMQorLy8gICAgICAgICAgbXNjNCAgICAgICA9ICAgcHNjNCAqIHIKKy8vICAgICAgICAgIHIyICAgICAgICAgPSAgIHIgKiByCisvLyAgICAgICAgICBtc2MyICAgICAgID0gICBTQ18yICogcjIKKy8vICAgICAgICAgIHI0ICAgICAgICAgPSAgIHIyICogcjIKKy8vICAgICAgICAgIHBzYzMgICAgICAgPSAgIFNDXzMgKyBtc2M0CisvLyAgICAgICAgICBwc2MxICAgICAgID0gICBTQ18xICsgbXNjMgorLy8gICAgICAgICAgbXNjMyAgICAgICA9ICAgcjQgKiBwc2MzCisvLyAgICAgICAgICBzaW5jb3Nwb2xzID0gICBwc2MxICsgbXNjMworLy8gICAgICAgICAgcG9scyAgICAgICA9ICAgc2luY29zcG9scyAqCisvLyAgICAgICAgICAgICAgICAgICAgICAgICA8U19oaSAqIHJeMiB8IChDX2hsICsgc2lnbWEpICogcl4zPgorLy8KKy8vICAgICA0LiBDT1JSRUNUSU9OIFRFUk0KKy8vCisvLyAgICAgVGhpcyBpcyB3aGVyZSB0aGUgImMiIGNvbXBvbmVudCBvZiB0aGUgcmFuZ2UgcmVkdWN0aW9uIGlzCisvLyAgICAgdGFrZW4gaW50byBhY2NvdW50OyByZWNhbGwgdGhhdCBqdXN0ICJyIiBpcyB1c2VkIGZvciBtb3N0IG9mCisvLyAgICAgdGhlIGNhbGN1bGF0aW9uLgorLy8KKy8vICAgICAgICAgIC1jICAgPSBtXzMgLSBjXzIKKy8vICAgICAgICAgIC1kICAgPSBTX2hpICogciAtIChDX2hsICsgc2lnbWEpCisvLyAgICAgICAgICBjb3JyID0gLWMgKiAtZCArIFNfbG8KKy8vCisvLyAgICAgNS4gQ09NUEVOU0FURUQgU1VNTUFUSU9OUworLy8KKy8vICAgICBUaGUgdHdvIHN1Y2Nlc3NpdmUgY29tcGVuc2F0ZWQgc3VtbWF0aW9ucyBhZGQgdXAgdGhlIGhpZ2gKKy8vICAgICBhbmQgbWVkaXVtIHBhcnRzLCBsZWF2aW5nIGp1c3QgdGhlIGxvdyBwYXJ0cyB0byBhZGQgdXAgYXQKKy8vICAgICB0aGUgZW5kLgorLy8KKy8vICAgICAgICAgIHJzICAgICAgICA9ICBzaWdtYSAqIHIKKy8vICAgICAgICAgIHJlc19pbnQgICA9ICBTX2hpICsgcnMKKy8vICAgICAgICAgIGtfMCAgICAgICA9ICBTX2hpIC0gcmVzX2ludAorLy8gICAgICAgICAga18yICAgICAgID0gIGtfMCArIHJzCisvLyAgICAgICAgICBtZWQgICAgICAgPSAgQ19obCAqIHIKKy8vICAgICAgICAgIHJlc19oaSAgICA9ICByZXNfaW50ICsgbWVkCisvLyAgICAgICAgICBrXzEgICAgICAgPSAgcmVzX2ludCAtIHJlc19oaQorLy8gICAgICAgICAga18zICAgICAgID0gIGtfMSArIG1lZAorLy8KKy8vICAgICA2LiBGSU5BTCBTVU1NQVRJT04KKy8vCisvLyAgICAgV2Ugbm93IGFkZCB1cCBhbGwgdGhlIHNtYWxsIHBhcnRzOgorLy8KKy8vICAgICAgICAgIHJlc19sbyA9IHBvbHMoaGkpICsgcG9scyhsbykgKyBjb3JyICsga18xICsga18zCisvLworLy8gICAgIE5vdyB0aGUgb3ZlcmFsbCByZXN1bHQgaXMganVzdDoKKy8vCisvLyAgICAgICAgICByZXNfaGkgKyByZXNfbG8KKy8vCisvLyAgICAgNy4gU01BTEwgQVJHVU1FTlRTCisvLworLy8gICAgIElucHV0cyB3aXRoIHxYfCA8IDJeLTI1MiBhcmUgdHJlYXRlZCBzcGVjaWFsbHkgYXMKKy8vICAgICAxIC0gfHh8LgorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgY29zKE5hTikgPSBxdWlldCBOYU4sIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIGNvcyhJTkYpID0gTmFOIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIGNvcygwKSA9IDEKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24KK3N0YXRpY19mdW5jOgorLi5CMS4xOgorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlYXgKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlYXgpLCAlZWF4CisgICAgICAgIGxlYSAgICAgICBzdGF0aWNfY29uc3RfdGFibGVAR09UT0ZGKCVlYXgpLCAlZWF4CisgICAgICAgIHJldAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICBjb3MKK0VOVFJZKGNvcykKKyMgcGFyYW1ldGVyIDE6IDggKyAlZWJwCisuLkIyLjE6CisuLkIyLjI6CisgICAgICAgIHB1c2hsICAgICAlZWJwCisgICAgICAgIG1vdmwgICAgICAlZXNwLCAlZWJwCisgICAgICAgIHN1YmwgICAgICAkMTIwLCAlZXNwCisgICAgICAgIG1vdmwgICAgICAlZWJ4LCA1NiglZXNwKQorICAgICAgICBjYWxsICAgICAgc3RhdGljX2Z1bmMKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlYngKKyAgICAgICAgbW92c2QgICAgIDEyOCglZXNwKSwgJXhtbTAKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTIzMzYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQ0MjkzLCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBtb3ZzZCAgICAgMjE2MCglZWJ4KSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgMjI0MCglZWJ4KSwgJXhtbTUKKyAgICAgICAgbW92c2QgICAgIDIyMjQoJWVieCksICV4bW00CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgb3JwcyAgICAgICV4bW00LCAleG1tNQorICAgICAgICBtb3ZzZCAgICAgMjEyOCglZWJ4KSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIDIxMTIoJWVieCksICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgY3Z0dHNkMnNpICV4bW0xLCAlZWR4CisgICAgICAgIGN2dHNpMnNkbCAlZWR4LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHVucGNrbHBkICAleG1tMSwgJXhtbTEKKyAgICAgICAgYWRkbCAgICAgICQxODY1MjMyLCAlZWR4CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYW5kbCAgICAgICQ2MywgJWVkeAorICAgICAgICBtb3ZhcGQgICAgMjA5NiglZWJ4KSwgJXhtbTUKKyAgICAgICAgbGVhICAgICAgICglZWJ4KSwgJWVheAorICAgICAgICBzaGxsICAgICAgJDUsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIG11bHNkICAgICAyMTQ0KCVlYngpLCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdnNkICAgICA4KCVlYXgpLCAleG1tNworICAgICAgICB1bnBja2xwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIHN1YnBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDIwNjQoJWVieCksICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgKCVlYXgpLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG1vdnNkICAgICAyNCglZWF4KSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgMjA4MCglZWJ4KSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICglZWF4KSwgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgIDIwNDgoJWVieCksICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgOCglZWF4KSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTQsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgICV4bW01LCAleG1tNgorICAgICAgICBtb3ZzZCAgICAgOCglZWF4KSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAxNiglZWF4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgdW5wY2tocGQgICV4bW02LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgICV4bW00LCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorICAgICAgICBqZyAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDIxOTIoJWVieCksICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgICV4bW0xLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBtb3ZsICAgICAgMTMyKCVlc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjE0NjQzNTA3MiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIHN1YmwgICAgICAkMzIsICVlc3AKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgbGVhICAgICAgIDQwKCVlc3ApLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCA4KCVlc3ApCisgICAgICAgIG1vdmwgICAgICAkMSwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgMTIoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIF9fbGlibV9zaW5jb3NfaHVnZQorICAgICAgICBhZGRsICAgICAgJDMyLCAlZXNwCisgICAgICAgIGZsZGwgICAgICA4KCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIGZsZGwgICAgICAxMjgoJWVzcCkKKyAgICAgICAgZm11bGwgICAgIDIyMDgoJWVieCkKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBtb3ZsICAgICAgNTYoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKGNvcykKKyMgLS0gRW5kICBjb3MKKworIyBTdGFydCBmaWxlIHNjb3BlIEFTTQorQUxJQVNfU1lNQk9MKGNvc2wsIGNvcyk7CisjIEVuZCBmaWxlIHNjb3BlIEFTTQorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorc3RhdGljX2NvbnN0X3RhYmxlOgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMzkzMDQ3MzQ1CisJLmxvbmcJMzIxMjAzMjMwMgorCS5sb25nCTMxNTY4NDk3MDgKKwkubG9uZwkxMDY5MDk0ODIyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNTgxODk4NDgKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE4MTE1MDY3CisJLmxvbmcJMzIxNDEyNjM0MgorCS5sb25nCTEwMTM1NTY3NDcKKwkubG9uZwkxMDcwMTM1NDgwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTMxNjA1NjcwNjUKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI0NzY1NDg2OTgKKwkubG9uZwkzMjE1MzMwMjgyCisJLmxvbmcJNzg1NzUxODE0CisJLmxvbmcJMTA3MDc2NTA2MgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkzMTYxODM4MjIxCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyMjU1MTk3NjQ3CisJLmxvbmcJMzIxNjIxMTEwNQorCS5sb25nCTI3OTY0NjQ0ODMKKwkubG9uZwkxMDcxMTUyNjEwCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNjA4NzgzMTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE5NDU3Njg1NjkKKwkubG9uZwkzMjE2OTE1MDQ4CisJLmxvbmcJOTM5OTgwMzQ3CisJLmxvbmcJMTA3MTUyNDcwMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTI3OTY4MDkKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE1Mzk2NjgzNDAKKwkubG9uZwkzMjE3Mzk2MzI3CisJLmxvbmcJOTY3NzMxNDAwCisJLmxvbmcJMTA3MTc2MTIxMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTU3NTIxNTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE0MDM3NTczMDkKKwkubG9uZwkzMjE3ODg2NzE4CisJLmxvbmcJNjIxMzU0NDU0CisJLmxvbmcJMTA3MTkyNjUxNQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTM0NTA2MDIKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI1ODM0OTAzNTQKKwkubG9uZwkxMDcwMjM2MjgxCisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzIwNzkwMDYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYzMjgyNzQwCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyNDg1NDE3ODE2CisJLmxvbmcJMTA2OTYyNjMxNgorCS5sb25nCTE3OTY1NDQzMjEKKwkubG9uZwkxMDcyMjE3MjE2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MjY4Njk0NQorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjU5ODgwMDUxOQorCS5sb25nCTEwNjgyNjY0MTkKKwkubG9uZwk2ODg4MjQ3MzkKKwkubG9uZwkxMDcyMzM5ODE0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTA0MzE1MzYKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTIxNDAxODM2MzAKKwkubG9uZwkzMjE0NzU2Mzk2CisJLmxvbmcJNDA1MTc0NjIyNQorCS5sb25nCTEwNzI0NDU2MTgKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMzE2MTkwNzM3NworCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMTY5OTA0Mzk1NworCS5sb25nCTMyMTY5MDIyNjEKKwkubG9uZwkzNDc2MTk2Njc4CisJLmxvbmcJMTA3MjUzMzYxMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTQyNTc2MzgKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTE5OTEwNDcyMTMKKwkubG9uZwkxMDY3NzUzNTIxCisJLmxvbmcJMTQ1NTgyODQ0MgorCS5sb25nCTEwNzI2MDI5NDUKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxNTUwNTA3MworCS5sb25nCTAKKwkubG9uZwkxMDcwNTk2MDk2CisJLmxvbmcJMjQwNzQwMzA5CisJLmxvbmcJMzIxNTcyNzkwMworCS5sb25nCTM0ODkwOTQ4MzIKKwkubG9uZwkxMDcyNjUyOTUxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNDMyNTc4MworCS5sb25nCTAKKwkubG9uZwkxMDcwNTk2MDk2CisJLmxvbmcJMjU3NTAzMDU2CisJLmxvbmcJMzIxNDY0NzY1MworCS5sb25nCTI3NDgzOTI3NDIKKwkubG9uZwkxMDcyNjgzMTQ5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTMxNjMwNjE3NTAKKwkubG9uZwkwCisJLmxvbmcJMTA2OTU0NzUyMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjU3NTAzMDU2CisJLmxvbmcJMTA2NzE2NDAwNQorCS5sb25nCTI3NDgzOTI3NDIKKwkubG9uZwkxMDcyNjgzMTQ5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTMxNjMwNjE3NTAKKwkubG9uZwkwCisJLmxvbmcJMzIxNzAzMTE2OAorCS5sb25nCTI0MDc0MDMwOQorCS5sb25nCTEwNjgyNDQyNTUKKwkubG9uZwkzNDg5MDk0ODMyCisJLmxvbmcJMTA3MjY1Mjk1MQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTQzMjU3ODMKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTE5OTEwNDcyMTMKKwkubG9uZwkzMjE1MjM3MTY5CisJLmxvbmcJMTQ1NTgyODQ0MgorCS5sb25nCTEwNzI2MDI5NDUKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxNTUwNTA3MworCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMTY5OTA0Mzk1NworCS5sb25nCTEwNjk0MTg2MTMKKwkubG9uZwkzNDc2MTk2Njc4CisJLmxvbmcJMTA3MjUzMzYxMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTQyNTc2MzgKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTIxNDAxODM2MzAKKwkubG9uZwkxMDY3MjcyNzQ4CisJLmxvbmcJNDA1MTc0NjIyNQorCS5sb25nCTEwNzI0NDU2MTgKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMzE2MTkwNzM3NworCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjU5ODgwMDUxOQorCS5sb25nCTMyMTU3NTAwNjcKKwkubG9uZwk2ODg4MjQ3MzkKKwkubG9uZwkxMDcyMzM5ODE0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTA0MzE1MzYKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTI0ODU0MTc4MTYKKwkubG9uZwkzMjE3MTA5OTY0CisJLmxvbmcJMTc5NjU0NDMyMQorCS5sb25nCTEwNzIyMTcyMTYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYyNjg2OTQ1CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMzIxNzcxOTkyOQorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkxMDcyMDc5MDA2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MzI4Mjc0MAorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMTQwMzc1NzMwOQorCS5sb25nCTEwNzA0MDMwNzAKKwkubG9uZwk2MjEzNTQ0NTQKKwkubG9uZwkxMDcxOTI2NTE1CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxMzQ1MDYwMgorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTUzOTY2ODM0MAorCS5sb25nCTEwNjk5MTI2NzkKKwkubG9uZwk5Njc3MzE0MDAKKwkubG9uZwkxMDcxNzYxMjExCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTc1MjE1NworCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTk0NTc2ODU2OQorCS5sb25nCTEwNjk0MzE0MDAKKwkubG9uZwk5Mzk5ODAzNDcKKwkubG9uZwkxMDcxNTI0NzAxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxMjc5NjgwOQorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMjI1NTE5NzY0NworCS5sb25nCTEwNjg3Mjc0NTcKKwkubG9uZwkyNzk2NDY0NDgzCisJLmxvbmcJMTA3MTE1MjYxMAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTYwODc4MzE3CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyNDc2NTQ4Njk4CisJLmxvbmcJMTA2Nzg0NjYzNAorCS5sb25nCTc4NTc1MTgxNAorCS5sb25nCTEwNzA3NjUwNjIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMzE2MTgzODIyMQorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTgxMTUwNjcKKwkubG9uZwkxMDY2NjQyNjk0CisJLmxvbmcJMTAxMzU1Njc0NworCS5sb25nCTEwNzAxMzU0ODAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMzE2MDU2NzA2NQorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMzkzMDQ3MzQ1CisJLmxvbmcJMTA2NDU0ODY1NAorCS5sb25nCTMxNTY4NDk3MDgKKwkubG9uZwkxMDY5MDk0ODIyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNTgxODk4NDgKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMzkzMDQ3MzQ1CisJLmxvbmcJMTA2NDU0ODY1NAorCS5sb25nCTMxNTY4NDk3MDgKKwkubG9uZwkzMjE2NTc4NDcwCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTA3MDYyMDAKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE4MTE1MDY3CisJLmxvbmcJMTA2NjY0MjY5NAorCS5sb25nCTEwMTM1NTY3NDcKKwkubG9uZwkzMjE3NjE5MTI4CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwMTMwODM0MTcKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTI0NzY1NDg2OTgKKwkubG9uZwkxMDY3ODQ2NjM0CisJLmxvbmcJNzg1NzUxODE0CisJLmxvbmcJMzIxODI0ODcxMAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDE0MzU0NTczCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyMjU1MTk3NjQ3CisJLmxvbmcJMTA2ODcyNzQ1NworCS5sb25nCTI3OTY0NjQ0ODMKKwkubG9uZwkzMjE4NjM2MjU4CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTMzOTQ2NjkKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE5NDU3Njg1NjkKKwkubG9uZwkxMDY5NDMxNDAwCisJLmxvbmcJOTM5OTgwMzQ3CisJLmxvbmcJMzIxOTAwODM0OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjAyODA0NTcKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE1Mzk2NjgzNDAKKwkubG9uZwkxMDY5OTEyNjc5CisJLmxvbmcJOTY3NzMxNDAwCisJLmxvbmcJMzIxOTI0NDg1OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjMyMzU4MDUKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE0MDM3NTczMDkKKwkubG9uZwkxMDcwNDAzMDcwCisJLmxvbmcJNjIxMzU0NDU0CisJLmxvbmcJMzIxOTQxMDE2MworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjA5MzQyNTAKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTI1ODM0OTAzNTQKKwkubG9uZwkzMjE3NzE5OTI5CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTMyMTk1NjI2NTQKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1Nzk5MDkyCisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyNDg1NDE3ODE2CisJLmxvbmcJMzIxNzEwOTk2NAorCS5sb25nCTE3OTY1NDQzMjEKKwkubG9uZwkzMjE5NzAwODY0CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTIwMzI5NworCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjU5ODgwMDUxOQorCS5sb25nCTMyMTU3NTAwNjcKKwkubG9uZwk2ODg4MjQ3MzkKKwkubG9uZwkzMjE5ODIzNDYyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNTc5MTUxODQKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTIxNDAxODM2MzAKKwkubG9uZwkxMDY3MjcyNzQ4CisJLmxvbmcJNDA1MTc0NjIyNQorCS5sb25nCTMyMTk5MjkyNjYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTAxNDQyMzcyOQorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMTY5OTA0Mzk1NworCS5sb25nCTEwNjk0MTg2MTMKKwkubG9uZwkzNDc2MTk2Njc4CisJLmxvbmcJMzIyMDAxNzI1OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjE3NDEyODYKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTE5OTEwNDcyMTMKKwkubG9uZwkzMjE1MjM3MTY5CisJLmxvbmcJMTQ1NTgyODQ0MgorCS5sb25nCTMyMjAwODY1OTMKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE2Mjk4ODcyMQorCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMjQwNzQwMzA5CisJLmxvbmcJMTA2ODI0NDI1NQorCS5sb25nCTM0ODkwOTQ4MzIKKwkubG9uZwkzMjIwMTM2NTk5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MTgwOTQzMQorCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMjU3NTAzMDU2CisJLmxvbmcJMTA2NzE2NDAwNQorCS5sb25nCTI3NDgzOTI3NDIKKwkubG9uZwkzMjIwMTY2Nzk3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwMTU1NzgxMDIKKwkubG9uZwkwCisJLmxvbmcJMzIxNzAzMTE2OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjU3NTAzMDU2CisJLmxvbmcJMzIxNDY0NzY1MworCS5sb25nCTI3NDgzOTI3NDIKKwkubG9uZwkzMjIwMTY2Nzk3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwMTU1NzgxMDIKKwkubG9uZwkwCisJLmxvbmcJMTA2OTU0NzUyMAorCS5sb25nCTI0MDc0MDMwOQorCS5sb25nCTMyMTU3Mjc5MDMKKwkubG9uZwkzNDg5MDk0ODMyCisJLmxvbmcJMzIyMDEzNjU5OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjE4MDk0MzEKKwkubG9uZwkwCisJLmxvbmcJMTA3MDU5NjA5NgorCS5sb25nCTE5OTEwNDcyMTMKKwkubG9uZwkxMDY3NzUzNTIxCisJLmxvbmcJMTQ1NTgyODQ0MgorCS5sb25nCTMyMjAwODY1OTMKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE2Mjk4ODcyMQorCS5sb25nCTAKKwkubG9uZwkxMDcwNTk2MDk2CisJLmxvbmcJMTY5OTA0Mzk1NworCS5sb25nCTMyMTY5MDIyNjEKKwkubG9uZwkzNDc2MTk2Njc4CisJLmxvbmcJMzIyMDAxNzI1OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjE3NDEyODYKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTIxNDAxODM2MzAKKwkubG9uZwkzMjE0NzU2Mzk2CisJLmxvbmcJNDA1MTc0NjIyNQorCS5sb25nCTMyMTk5MjkyNjYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTAxNDQyMzcyOQorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjU5ODgwMDUxOQorCS5sb25nCTEwNjgyNjY0MTkKKwkubG9uZwk2ODg4MjQ3MzkKKwkubG9uZwkzMjE5ODIzNDYyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNTc5MTUxODQKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTI0ODU0MTc4MTYKKwkubG9uZwkxMDY5NjI2MzE2CisJLmxvbmcJMTc5NjU0NDMyMQorCS5sb25nCTMyMTk3MDA4NjQKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1MjAzMjk3CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMTA3MDIzNjI4MQorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkzMjE5NTYyNjU0CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTc5OTA5MgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMTQwMzc1NzMwOQorCS5sb25nCTMyMTc4ODY3MTgKKwkubG9uZwk2MjEzNTQ0NTQKKwkubG9uZwkzMjE5NDEwMTYzCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MDkzNDI1MAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTUzOTY2ODM0MAorCS5sb25nCTMyMTczOTYzMjcKKwkubG9uZwk5Njc3MzE0MDAKKwkubG9uZwkzMjE5MjQ0ODU5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MzIzNTgwNQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTk0NTc2ODU2OQorCS5sb25nCTMyMTY5MTUwNDgKKwkubG9uZwk5Mzk5ODAzNDcKKwkubG9uZwkzMjE5MDA4MzQ5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MDI4MDQ1NworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjI1NTE5NzY0NworCS5sb25nCTMyMTYyMTExMDUKKwkubG9uZwkyNzk2NDY0NDgzCisJLmxvbmcJMzIxODYzNjI1OAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEzMzk0NjY5CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyNDc2NTQ4Njk4CisJLmxvbmcJMzIxNTMzMDI4MgorCS5sb25nCTc4NTc1MTgxNAorCS5sb25nCTMyMTgyNDg3MTAKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTAxNDM1NDU3MworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTgxMTUwNjcKKwkubG9uZwkzMjE0MTI2MzQyCisJLmxvbmcJMTAxMzU1Njc0NworCS5sb25nCTMyMTc2MTkxMjgKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTAxMzA4MzQxNworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMzkzMDQ3MzQ1CisJLmxvbmcJMzIxMjAzMjMwMgorCS5sb25nCTMxNTY4NDk3MDgKKwkubG9uZwkzMjE2NTc4NDcwCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTA3MDYyMDAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkzMjE3MzgwNjkzCisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDY1NDIzMTIxCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjc3OTk4OTMKKwkubG9uZwk0MzYzMTQxMzgKKwkubG9uZwkzMjA3MjAxMTg0CisJLmxvbmcJMzgxNzc0ODcxCisJLmxvbmcJMzIxMDEzMzg2OAorCS5sb25nCTI3NzM5Mjc3MzIKKwkubG9uZwkxMDUzMjM2NzA3CisJLmxvbmcJNDM2MzE0MTM4CisJLmxvbmcJMTA1NjU3MTgwOAorCS5sb25nCTQ0MjQ5OTA3MgorCS5sb25nCTEwMzI4OTM1MzcKKwkubG9uZwk0NDI0OTkwNzIKKwkubG9uZwkxMDMyODkzNTM3CisJLmxvbmcJMTQxMzQ4MDQ0OAorCS5sb25nCTEwNjkwOTc0NjcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTc3MTk3NzMzMQorCS5sb25nCTk5NjM1MDM0NgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTg0MTk0MDYxMQorCS5sb25nCTEwNzYxMjU0ODgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTI3NzQzNDg4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsMjI1NgorCS5kYXRhCisJLmhpZGRlbiBfX2xpYm1fc2luY29zX2h1Z2UKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvc19leHBtMS5TIGIvbGlibS94ODYvc19leHBtMS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFmOWU4N2IKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni9zX2V4cG0xLlMKQEAgLTAsMCArMSw3MDIgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyBEZXNjcmlwdGlvbjoKKy8vICBMZXQgSyA9IDY0ICh0YWJsZSBzaXplKS4KKy8vCisvLyAgRm91ciBzdWItZG9tYWluczoKKy8vICAgIDEuIHx4fCA8IDEvKDIqSykKKy8vICAgICAgZXhwbTEoeCkgfiBQKHgpCisvLyAgICAyLiAxLygyKkspIDw9IHx4fCA8PSA1Nipsb2coMikKKy8vICAgICAgIHggICAgICAgeC9sb2coMikgICAgbgorLy8gICAgICBlIC0gMSA9IDIgICAgICAgICA9IDIgKiBUW2pdICogKDEgKyBQKHkpKSAtIDEKKy8vICAgIDMuIDU2KmxvZygyKSA8IHggPCBNQVhfTE9HCisvLyAgICAgICB4ICAgICAgIHggICB4L2xvZygyKSAgICBuCisvLyAgICAgIGUgLSAxIH4gZSA9IDIgICAgICAgICA9IDIgKiBUW2pdICogKDEgKyBQKHkpKQorLy8gICAgNC4geCA8IC01Nipsb2coMikKKy8vICAgICAgIHggICAgICAgICAgICB4CisvLyAgICAgIGUgLSAxID0gLTEgKyBlIH4gLTEKKy8vICAgIHdoZXJlCisvLyAgICAgICB4ID0gbSpsb2coMikvSyArIHksICAgIHkgaW4gWy1sb2coMikvSy4ubG9nKDIpL0tdCisvLyAgICAgICBtID0gbipLICsgaiwgICAgICAgICAgIG0sbixqIC0gc2lnbmVkIGludGVnZXIsIGogaW4gWy1LLzIuLksvMl0KKy8vICAgICAgICAgICAgICAgICAgai9LCisvLyAgICAgICB2YWx1ZXMgb2YgMiAgIGFyZSB0YWJ1bGF0ZWQgYXMgVFtqXSA9IFRfaGlbal0gKCAxICsgVF9sb1tqXSkuCisvLworLy8gICAgICAgUCh5KSBpcyBhIG1pbmltYXggcG9seW5vbWlhbCBhcHByb3hpbWF0aW9uIG9mIGV4cCh4KS0xCisvLyAgICAgICBvbiBzbWFsbCBpbnRlcnZhbCBbLWxvZygyKS9LLi5sb2coMikvS10gKHdlcmUgY2FsY3VsYXRlZCBieSBNYXBsZSBWKS4KKy8vCisvLyAgICBJbiBjYXNlIDMsIHRvIGF2b2lkIHByb2JsZW1zIHdpdGggYXJpdGhtZXRpYyBvdmVyZmxvdyBhbmQgdW5kZXJmbG93LAorLy8gICAgICAgICAgICAgIG4gICAgICAgICAgICAgICAgICAgICAgICBuMSAgbjIKKy8vICAgIHZhbHVlIG9mIDIgIGlzIHNhZmVseSBjb21wdXRlZCBhcyAyICogMiB3aGVyZSBuMSBpbiBbLUJJQVMvMi4uQklBUy8yXQorLy8gICAgYW5kIEJJQVMgaXMgYSB2YWx1ZSBvZiBleHBvbmVudCBiaWFzLgorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgZXhwbTEoTmFOKSBpcyBOYU4KKy8vICBleHBtMSgrSU5GKSBpcyArSU5GCisvLyAgZXhwbTEoLUlORikgaXMgLTEKKy8vICBleHBtMSh4KSBpcyB4IGZvciBzdWJub3JtYWxzCisvLyAgZm9yIGZpbml0ZSBhcmd1bWVudCwgb25seSBleHBtMSgwKT0wIGlzIGV4YWN0LgorLy8gIEZvciBJRUVFIGRvdWJsZQorLy8gICAgaWYgeCA+IDcwOS43ODI3MTI4OTMzODM5NzMwOTYgdGhlbiBleHBtMSh4KSBvdmVyZmxvdworLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHN0YXRpY19mdW5jCisgICAgICAgIC50ZXh0CisgICAgICAgIC5hbGlnbiBfX2Jpb25pY19hc21fYWxpZ24KKyAgICAgICAgLnR5cGUgc3RhdGljX2Z1bmMsIEBmdW5jdGlvbgorc3RhdGljX2Z1bmM6CisuLkIxLjE6CisgICAgICAgIGNhbGwgICAgICAuLkwyCisuLkwyOgorICAgICAgICBwb3BsICAgICAgJWVheAorICAgICAgICBsZWEgICAgICAgX0dMT0JBTF9PRkZTRVRfVEFCTEVfK1suIC0gLi5MMl0oJWVheCksICVlYXgKKyAgICAgICAgbGVhICAgICAgIHN0YXRpY19jb25zdF90YWJsZUBHT1RPRkYoJWVheCksICVlYXgKKyAgICAgICAgcmV0CisgICAgICAgIC5zaXplICAgc3RhdGljX2Z1bmMsLi1zdGF0aWNfZnVuYworIyAtLSBFbmQgIHN0YXRpY19mdW5jCisKKyMgLS0gQmVnaW4gIGV4cG0xCitFTlRSWShleHBtMSkKKyMgcGFyYW1ldGVyIDE6IDggKyAlZWJwCisuLkIyLjE6CisuLkIyLjI6CisgICAgICAgIHB1c2hsICAgICAlZWJwCisgICAgICAgIG1vdmwgICAgICAlZXNwLCAlZWJwCisgICAgICAgIHN1YmwgICAgICAkMTIwLCAlZXNwCisgICAgICAgIG1vdmwgICAgICAlZWJ4LCA2NCglZXNwKQorICAgICAgICBjYWxsICAgICAgc3RhdGljX2Z1bmMKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlYngKKyAgICAgICAgbW92c2QgICAgIDEyOCglZXNwKSwgJXhtbTAKKyAgICAgICAgdW5wY2tscGQgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgNjQoJWVieCksICV4bW0xCisgICAgICAgIG1vdmFwZCAgICA0OCglZWJ4KSwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgIDgwKCVlYngpLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgOTYoJWVieCksICV4bW0zCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBtb3ZsICAgICAgJDE2NTI3LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkMTYzMDQsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlYXgsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQtMjE0NzQ4MzY0OCwgJWVkeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgc3VicGQgICAgICV4bW02LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAxMTIoJWVieCksICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIDEyOCglZWJ4KSwgJXhtbTUKKyAgICAgICAgc3VicGQgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZkICAgICAgJXhtbTcsICVlYXgKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQ2MywgJWVjeAorICAgICAgICBzaGxsICAgICAgJDQsICVlY3gKKyAgICAgICAgc2FybCAgICAgICQ2LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHN1YnBkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDE2MCglZWJ4LCVlY3gpLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgMTQ0KCVlYngpLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIGFkZHBkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTIsICV4bW00CisgICAgICAgIHVucGNraHBkICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92ZHFhICAgIDE2KCVlYngpLCAleG1tNgorICAgICAgICBwYW5kICAgICAgJXhtbTYsICV4bW03CisgICAgICAgIG1vdmRxYSAgICAzMiglZWJ4KSwgJXhtbTYKKyAgICAgICAgcGFkZHEgICAgICV4bW02LCAleG1tNworICAgICAgICBwc2xscSAgICAgJDQ2LCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgYWRkbCAgICAgICQ4OTQsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxOTE2LCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0zCisgICAgICAgIG9ycGQgICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNworICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMiwgJWVkeAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW01CisgICAgICAgIHBzcmxxICAgICAkMzgsICV4bW0zCisgICAgICAgIHBzbGxxICAgICAkMzgsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE3MTg0LCAlZWN4CisgICAgICAgIHN1YmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIHN1YmwgICAgICAkMTYyNTYsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlY3gKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBtb3ZsICAgICAgMTMyKCVlc3ApLCAlZWN4CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgdW5wY2tocGQgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqbCAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgZnN0Y3cgICAgIDI0KCVlc3ApCisgICAgICAgIG1vdnp3bCAgICAyNCglZXNwKSwgJWVkeAorICAgICAgICBvcmwgICAgICAgJDc2OCwgJWVkeAorICAgICAgICBtb3Z3ICAgICAgJWR4LCAyOCglZXNwKQorICAgICAgICBmbGRjdyAgICAgMjgoJWVzcCkKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgc2FybCAgICAgICQxLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIG1vdmRxYSAgICAoJWVieCksICV4bW02CisgICAgICAgIHBhbmRuICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgYWRkbCAgICAgICQxMDIzLCAlZWF4CisgICAgICAgIG1vdmQgICAgICAlZWF4LCAleG1tMworICAgICAgICBwc2xscSAgICAgJDUyLCAleG1tMworICAgICAgICBvcnBkICAgICAgJXhtbTMsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCA4KCVlc3ApCisgICAgICAgIGZsZGwgICAgICA4KCVlc3ApCisgICAgICAgIG1vdnNkICAgICAleG1tNiwgMTYoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDE2KCVlc3ApCisgICAgICAgIG1vdnNkICAgICAleG1tNCwgMTYoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgIDE2KCVlc3ApCisgICAgICAgIGFkZGwgICAgICAkMTAyMywgJWVkeAorICAgICAgICBtb3ZkICAgICAgJWVkeCwgJXhtbTQKKyAgICAgICAgcHNsbHEgICAgICQ1MiwgJXhtbTQKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZtdWwgICAgICAlc3QsICVzdCgxKQorICAgICAgICBmYWRkcCAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgbW92c2QgICAgICV4bW00LCA4KCVlc3ApCisgICAgICAgIGZsZGwgICAgICA4KCVlc3ApCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3RwbCAgICAgOCglZXNwKQorICAgICAgICBtb3ZzZCAgICAgOCglZXNwKSwgJXhtbTAKKyAgICAgICAgZmxkY3cgICAgIDI0KCVlc3ApCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgY21wbCAgICAgICQtMjE0NzQ4MzY0OCwgJWVjeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgbW92bCAgICAgICQ0MSwgJWVkeAorLkxfMlRBR19QQUNLRVRfOC4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIG1vdnNkICAgICAxMjgoJWVzcCksICV4bW0wCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMjE0NjQzNTA3MiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4yCisgICAgICAgIG1vdnNkICAgICAxMjcyKCVlYngpLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkNDEsICVlZHgKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisuTF8yVEFHX1BBQ0tFVF8xMS4wLjI6CisgICAgICAgIG1vdmwgICAgICAxMzIoJWVzcCksICVlYXgKKyAgICAgICAgbW92bCAgICAgIDEyOCglZXNwKSwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDIxNDc0ODM2NDcsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyMTQ2NDM1MDcyLCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMi4wLjIKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMi4wLjIKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMy4wLjIKKyAgICAgICAgbW92c2QgICAgIDEyNTYoJWVieCksICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorLkxfMlRBR19QQUNLRVRfMTMuMC4yOgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKy5MXzJUQUdfUEFDS0VUXzEyLjAuMjoKKyAgICAgICAgbW92c2QgICAgIDEyOCglZXNwKSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzE0LjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQxNjMwNCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDE1NTA0LCAlZWF4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNS4wLjIKKyAgICAgICAgbW92YXBkICAgIDExODQoJWVieCksICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgMTIwMCglZWJ4KSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIDEyMTYoJWVieCksICV4bW00CisgICAgICAgIG1vdnNkICAgICAxMjMyKCVlYngpLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgbW92bCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgeG9ycGQgICAgICV4bW03LCAleG1tNworICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0zLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjI4LCAleG1tMSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkcGQgICAgICV4bW00LCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTcsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMQorICAgICAgICBwc3JscSAgICAgJDI3LCAleG1tNworICAgICAgICBwc2xscSAgICAgJDI3LCAleG1tNworICAgICAgICBtb3ZzZCAgICAgMTI4OCglZWJ4KSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0yLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF8xNS4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMTYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMzEsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgbW92bCAgICAgICQxNiwgJWVkeAorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDQyLCAlZWR4CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVheAorICAgICAgICBqbCAgICAgICAgLkxfMlRBR19QQUNLRVRfMTQuMC4yCisgICAgICAgIG1vdmwgICAgICAxMzIoJWVzcCksICVlYXgKKyAgICAgICAgY21wbCAgICAgICQxMDgzMTc5MDA4LCAlZWF4CisgICAgICAgIGpnZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjIKKyAgICAgICAgY21wbCAgICAgICQtMTA0ODU3NiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4yCisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDQ5MTM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCA0OCglZXNwKQorICAgICAgICBmbGRsICAgICAgNDgoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzkuMC4yOgorICAgICAgICBtb3ZsICAgICAgNjQoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKGV4cG0xKQorIyAtLSBFbmQgIGV4cG0xCisKKyMgU3RhcnQgZmlsZSBzY29wZSBBU00KK0FMSUFTX1NZTUJPTChleHBtMWwsIGV4cG0xKTsKKyMgRW5kIGZpbGUgc2NvcGUgQVNNCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitzdGF0aWNfY29uc3RfdGFibGU6CisJLmxvbmcJMAorCS5sb25nCTQyOTM5MTg3MjAKKwkubG9uZwkwCisJLmxvbmcJNDI5MzkxODcyMAorCS5sb25nCTQyOTQ5NjcyMzIKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzIzMgorCS5sb25nCTAKKwkubG9uZwk2NTQ3MgorCS5sb25nCTAKKwkubG9uZwk2NTQ3MgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS5sb25nCTAKKwkubG9uZwkxMTI3NzQzNDg4CisJLmxvbmcJMTY5NzM1MDM5OAorCS5sb25nCTEwNzk0NDg5MDMKKwkubG9uZwkxNjk3MzUwMzk4CisJLmxvbmcJMTA3OTQ0ODkwMworCS5sb25nCTQyNzc3OTY4NjQKKwkubG9uZwkxMDY1NzU4Mjc0CisJLmxvbmcJNDI3Nzc5Njg2NAorCS5sb25nCTEwNjU3NTgyNzQKKwkubG9uZwkzMTY0NDg2NDU4CisJLmxvbmcJMTAyNTMwODU3MAorCS5sb25nCTMxNjQ0ODY0NTgKKwkubG9uZwkxMDI1MzA4NTcwCisJLmxvbmcJMTk2MzM1ODY5NAorCS5sb25nCTEwNjU0MjMxMjEKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA2OTg5NzA0NQorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY3Nzk5ODkzCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkzODE3NzQ4NzEKKwkubG9uZwkxMDYyNjUwMjIwCisJLmxvbmcJMzgxNzc0ODcxCisJLmxvbmcJMTA2MjY1MDIyMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDAwMDcwOTU1CisJLmxvbmcJMTA0MjE0NTMwNAorCS5sb25nCTEwNDAxODczOTIKKwkubG9uZwkxMTQxOAorCS5sb25nCTk4ODI2Nzg0OQorCS5sb25nCTEwMzk1MDA2NjAKKwkubG9uZwkzNTM5OTkyNTc2CisJLmxvbmcJMjI5NjAKKwkubG9uZwkzNjc1NTQwMQorCS5sb25nCTEwNDIxMTQyOTAKKwkubG9uZwk0MDI2NTMxODQKKwkubG9uZwkzNDYyOQorCS5sb25nCTM2MzQ3Njk0ODMKKwkubG9uZwkxMDQyMTc4NjI3CisJLmxvbmcJMTgyMDMyNzkzNgorCS5sb25nCTQ2NDI0CisJLmxvbmcJMjE1NTk5MTIyNQorCS5sb25nCTEwNDE1NjA2ODAKKwkubG9uZwk4NDcyNDk0MDgKKwkubG9uZwk1ODM0OAorCS5sb25nCTI3NjY5MTMzMDcKKwkubG9uZwkxMDM5MjkzMjY0CisJLmxvbmcJMzQ4OTY2MDkyOAorCS5sb25nCTcwNDAxCisJLmxvbmcJMzY1MTE3NDYwMgorCS5sb25nCTEwNDA0ODgxNzUKKwkubG9uZwkyOTI3NjI0MTkyCisJLmxvbmcJODI1ODYKKwkubG9uZwkzMDczODkyMTMxCisJLmxvbmcJMTA0MjI0MDYwNgorCS5sb25nCTEwMDY2MzI5NjAKKwkubG9uZwk5NDkwNAorCS5sb25nCTEzMjgzOTE3NDIKKwkubG9uZwkxMDQyMDE5MDM3CisJLmxvbmcJMzk0MjY0NTc2MAorCS5sb25nCTEwNzM1NQorCS5sb25nCTI2NTA4OTM4MjUKKwkubG9uZwkxMDQxOTAzMjEwCisJLmxvbmcJODIyMDgzNTg0CisJLmxvbmcJMTE5OTQzCisJLmxvbmcJMjM5NzI4OTE1MworCS5sb25nCTEwNDE4MDIwMzcKKwkubG9uZwkyMjgxNzAxMzc2CisJLmxvbmcJMTMyNjY3CisJLmxvbmcJNDMwOTk3MTc1CisJLmxvbmcJMTA0MjExMDYwNgorCS5sb25nCTE4NDU0OTM3NjAKKwkubG9uZwkxNDU1MzAKKwkubG9uZwkxMjMwOTM2NTI1CisJLmxvbmcJMTA0MTgwMTAxNQorCS5sb25nCTE3MDI4ODc0MjQKKwkubG9uZwkxNTg1MzMKKwkubG9uZwk3NDA2NzU5MzUKKwkubG9uZwkxMDQwMTc4OTEzCisJLmxvbmcJNDExMDQxNzkyMAorCS5sb25nCTE3MTY3NworCS5sb25nCTM0ODk4MTAyNjEKKwkubG9uZwkxMDQxODI1OTg2CisJLmxvbmcJMjc5MzQwNjQ2NAorCS5sb25nCTE4NDk2NQorCS5sb25nCTI1MzI2MDA1MzAKKwkubG9uZwkxMDQwNzY3ODgyCisJLmxvbmcJMTY3NzcyMTYwCisJLmxvbmcJMTk4Mzk4CisJLmxvbmcJMzU0MjU1NzA2MAorCS5sb25nCTEwNDE4MjcyNjMKKwkubG9uZwkyOTg2MzQ0NDQ4CisJLmxvbmcJMjExOTc2CisJLmxvbmcJMTQwMTU2Mzc3NworCS5sb25nCTEwNDEwNjEwOTMKKwkubG9uZwk5MjI3NDY4ODAKKwkubG9uZwkyMjU3MDMKKwkubG9uZwkzMTI5NDA2MDI2CisJLmxvbmcJMTA0MTg1MjQxMworCS5sb25nCTg4MDgwMzg0MAorCS5sb25nCTIzOTU3OQorCS5sb25nCTkwMDk5MzU3MgorCS5sb25nCTEwMzkyODMyMzQKKwkubG9uZwkxMjc1MDY4NDE2CisJLmxvbmcJMjUzNjA2CisJLmxvbmcJMjExNTAyOTM1OAorCS5sb25nCTEwNDIxNDAwNDIKKwkubG9uZwk1NjIwMzY3MzYKKwkubG9uZwkyNjc3ODYKKwkubG9uZwkxMDg2NjQzMTUyCisJLmxvbmcJMTA0MTc4NTQxOQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkyODIxMjAKKwkubG9uZwk4Mjg2NDM2NgorCS5sb25nCTEwNDEyNTYyNDQKKwkubG9uZwkzMDQ1MDY0NzA0CisJLmxvbmcJMjk2NjEwCisJLmxvbmcJMjM5Mjk2ODE1MgorCS5sb25nCTEwNDA5MTM2ODMKKwkubG9uZwkzNTczNTQ3MDA4CisJLmxvbmcJMzExMjU4CisJLmxvbmcJMjkwNTg1NjE4MworCS5sb25nCTEwNDAwMDIyMTQKKwkubG9uZwkxOTg4MTAwMDk2CisJLmxvbmcJMzI2MDY2CisJLmxvbmcJMzc0MjAwODI2MQorCS5sb25nCTEwNDAwMTExMzcKKwkubG9uZwkxNDUxMjI5MTg0CisJLmxvbmcJMzQxMDM1CisJLmxvbmcJODYzMzkzNzk0CisJLmxvbmcJMTA0MDg4MDYyMQorCS5sb25nCTkxNDM1ODI3MgorCS5sb25nCTM1NjE2NworCS5sb25nCTE0NDYxMzY4MzcKKwkubG9uZwkxMDQxMzcyNDI2CisJLmxvbmcJMzcwNzc2NDczNgorCS5sb25nCTM3MTQ2MworCS5sb25nCTkyNzg1NTIwMQorCS5sb25nCTEwNDA2MTc2MzYKKwkubG9uZwkzNjA3MTAxNDQKKwkubG9uZwkzODY5MjcKKwkubG9uZwkxNDkyNjc5OTM5CisJLmxvbmcJMTA0MTA1MDMwNgorCS5sb25nCTI5NTI3OTAwMTYKKwkubG9uZwk0MDI1NTgKKwkubG9uZwk2MDg4MjcwMDEKKwkubG9uZwkxMDQxNTgyMjE3CisJLmxvbmcJMjE4MTAzODA4MAorCS5sb25nCTQxODM2MAorCS5sb25nCTYwNjI2MDIwNAorCS5sb25nCTEwNDIyNzE5ODcKKwkubG9uZwkxNzExMjc2MDMyCisJLmxvbmcJNDM0MzM0CisJLmxvbmcJMzE2MzA0NDAxOQorCS5sb25nCTEwNDE4NDM4NTEKKwkubG9uZwkxMDA2NjMyOTYwCisJLmxvbmcJNDUwNDgyCisJLmxvbmcJNDE0ODc0NzMyNQorCS5sb25nCTEwNDE5NjI5NzIKKwkubG9uZwkzOTAwNzAyNzIwCisJLmxvbmcJNDY2ODA1CisJLmxvbmcJODAyOTI0MjAxCisJLmxvbmcJMTA0MTI3NTM3OAorCS5sb25nCTE0NDI4NDA1NzYKKwkubG9uZwk0ODMzMDcKKwkubG9uZwkzMDUyNzQ5ODMzCisJLmxvbmcJMTA0MTk0MDU3NworCS5sb25nCTE5Mzc3Njg0NDgKKwkubG9uZwk0OTk5ODgKKwkubG9uZwkyMjE2MTE2Mzk5CisJLmxvbmcJMTA0MTQ4Njc0NAorCS5sb25nCTkxNDM1ODI3MgorCS5sb25nCTUxNjg1MQorCS5sb25nCTI3Mjk2OTc4MzYKKwkubG9uZwkxMDQxNDQ1NzY0CisJLmxvbmcJMjU2NjkxNDA0OAorCS5sb25nCTUzMzg5NworCS5sb25nCTU0MDYwODM1NgorCS5sb25nCTEwNDEzMTA5MDcKKwkubG9uZwkyNjAwNDY4NDgwCisJLmxvbmcJNTUxMTI5CisJLmxvbmcJMjkxNjM0NDQ5MworCS5sb25nCTEwNDA1MzU2NjEKKwkubG9uZwkxMTA3Mjk2MjU2CisJLmxvbmcJNTY4NTQ5CisJLmxvbmcJNzMxMzkxODE0CisJLmxvbmcJMTAzOTQ5NzAxNAorCS5sb25nCTI1NjY5MTQwNDgKKwkubG9uZwk1ODYxNTgKKwkubG9uZwkxMDI0NzIyNzA0CisJLmxvbmcJMTA0MTQ2MTYyNQorCS5sb25nCTI5NjExNzg2MjQKKwkubG9uZwk2MDM5NTkKKwkubG9uZwkzODA2ODMxNzQ4CisJLmxvbmcJMTA0MTczMjQ5OQorCS5sb25nCTI2NzU5NjU5NTIKKwkubG9uZwk2MjE5NTQKKwkubG9uZwkyMzg5NTMzMDQKKwkubG9uZwkxMDQwMzE2NDg4CisJLmxvbmcJMjE4OTQyNjY4OAorCS5sb25nCTY0MDE0NQorCS5sb25nCTc0OTEyMzIzNQorCS5sb25nCTEwNDE3MjU3ODUKKwkubG9uZwkyMDYzNTk3NTY4CisJLmxvbmcJNjU4NTM0CisJLmxvbmcJMTE2ODE4Nzk3NworCS5sb25nCTEwNDExNzUyMTQKKwkubG9uZwkyOTg2MzQ0NDQ4CisJLmxvbmcJNjc3MTIzCisJLmxvbmcJMzUwNjA5NjM5OQorCS5sb25nCTEwNDIxODYwOTUKKwkubG9uZwkxNDI2MDYzMzYwCisJLmxvbmcJNjk1OTE1CisJLmxvbmcJMTQ3MDIyMTYyMAorCS5sb25nCTEwNDE2NzU0OTkKKwkubG9uZwkyNTY2OTE0MDQ4CisJLmxvbmcJNzE0OTExCisJLmxvbmcJMzE4MjQyNTE0NgorCS5sb25nCTEwNDE0ODMxMzQKKwkubG9uZwkzMDg3MDA3NzQ0CisJLmxvbmcJNzM0MTE0CisJLmxvbmcJMzEzMTY5ODIwOAorCS5sb25nCTEwNDIyMDg2NTcKKwkubG9uZwk0MDY4NDc0ODgwCisJLmxvbmcJNzUzNTI2CisJLmxvbmcJMjMwMDUwNDEyNQorCS5sb25nCTEwNDE0Mjg1OTYKKwkubG9uZwkyNDE1OTE5MTA0CisJLmxvbmcJNzczMTUwCisJLmxvbmcJMjI5MDI5NzkzMQorCS5sb25nCTEwMzczODg0MDAKKwkubG9uZwkzNzE2MTUzMzQ0CisJLmxvbmcJNzkyOTg3CisJLmxvbmcJMzUzMjE0ODIyMworCS5sb25nCTEwNDE2MjYxOTQKKwkubG9uZwk3NzE3NTE5MzYKKwkubG9uZwk4MTMwNDEKKwkubG9uZwkxMTYxODg0NDA0CisJLmxvbmcJMTA0MjAxNTI1OAorCS5sb25nCTM2OTkzNzYxMjgKKwkubG9uZwk4MzMzMTIKKwkubG9uZwk4NzYzODMxNzYKKwkubG9uZwkxMDM3OTY4ODc4CisJLmxvbmcJMTI0MTUxMzk4NAorCS5sb25nCTg1MzgwNQorCS5sb25nCTMzNzk5ODY3OTYKKwkubG9uZwkxMDQyMjEzMTUzCisJLmxvbmcJMzY5OTM3NjEyOAorCS5sb25nCTg3NDUyMAorCS5sb25nCTE1NDU3OTc3MzcKKwkubG9uZwkxMDQxNjgxNTY5CisJLmxvbmcJNTg3MjAyNTYKKwkubG9uZwk4OTU0NjIKKwkubG9uZwkyOTI1MTQ2ODAxCisJLmxvbmcJMTA0MjIxMjU2NworCS5sb25nCTg1NTYzODAxNgorCS5sb25nCTkxNjYzMQorCS5sb25nCTEzMTY2Mjc5NzEKKwkubG9uZwkxMDM4NTE2MjA0CisJLmxvbmcJMzg4MzkyNTUwNAorCS5sb25nCTkzODAzMAorCS5sb25nCTMyNjc4NjkxMzcKKwkubG9uZwkxMDQwMzM3MDA0CisJLmxvbmcJMjcyNjI5NzYwMAorCS5sb25nCTk1OTY2MworCS5sb25nCTM3MjA4Njg5OTkKKwkubG9uZwkxMDQxNzgyNDA5CisJLmxvbmcJMzk5Mjk3NzQwOAorCS5sb25nCTk4MTUzMQorCS5sb25nCTQzMzMxNjE0MgorCS5sb25nCTEwNDE5OTQwNjQKKwkubG9uZwkxNTI2NzI2NjU2CisJLmxvbmcJMTAwMzYzOAorCS5sb25nCTc4MTIzMjEwMworCS5sb25nCTEwNDAwOTM0MDAKKwkubG9uZwkyMTcyNjQ5NDcyCisJLmxvbmcJMTAyNTk4NQorCS5sb25nCTI3NzM5Mjc3MzIKKwkubG9uZwkxMDUzMjM2NzA3CisJLmxvbmcJMzgxNzc0ODcxCisJLmxvbmcJMTA2MjY1MDIyMAorCS5sb25nCTM3OTY1Mzg5OQorCS5sb25nCTEwNTY1NzE4NDUKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDY1NDIzMTIxCisJLmxvbmcJNDM2MzE0MTM4CisJLmxvbmcJMTA1OTcxNzUzNgorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY3Nzk5ODkzCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjk4OTcwNDUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTIxNDY0MzUwNzIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkyMTQ2NDM1MDcxCisJLmxvbmcJMAorCS5sb25nCTEwNDg1NzYKKwkubG9uZwk0MjI3ODU4NDMyCisJLmxvbmcJNDI5NDk2NzI5NQorCS50eXBlCXN0YXRpY19jb25zdF90YWJsZSxAb2JqZWN0CisJLnNpemUJc3RhdGljX2NvbnN0X3RhYmxlLDEyOTYKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Ni9zX2xvZzFwLlMgYi9saWJtL3g4Ni9zX2xvZzFwLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2E2ZDg0NQotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L3NfbG9nMXAuUwpAQCAtMCwwICsxLDgyNyBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vICAgIExldCB4PTJeayAqIG14LCBteCBpbiBbMSwyKQorLy8KKy8vICAgIEdldCBCfjEvbXggYmFzZWQgb24gdGhlIG91dHB1dCBvZiByY3BwcyBpbnN0cnVjdGlvbiAoQjApCisvLyAgICBCID0gaW50KChCMCoyXjcrMC41KSkvMl43CisvLworLy8gICAgUmVkdWNlZCBhcmd1bWVudDogcj1CKm14LTEuMCAoY29tcHV0ZWQgYWNjdXJhdGVseSBpbiBoaWdoIGFuZCBsb3cgcGFydHMpCisvLworLy8gICAgUmVzdWx0OiAgaypsb2coMikgLSBsb2coQikgKyBwKHIpCisvLyAgICAgICAgICAgICBwKHIpIGlzIGEgZGVncmVlIDcgcG9seW5vbWlhbAorLy8gICAgICAgICAgICAgLWxvZyhCKSByZWFkIGZyb20gZGF0YSB0YWJsZSAoaGlnaCwgbG93IHBhcnRzKQorLy8gICAgICAgICAgICAgUmVzdWx0IGlzIGZvcm1lZCBmcm9tIGhpZ2ggYW5kIGxvdyBwYXJ0cworLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgIGxvZzFwKE5hTikgPSBxdWlldCBOYU4sIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gICBsb2cxcCgrSU5GKSA9IHRoYXQgSU5GCisvLyAgIGxvZzFwKHgpID0gTmFOIGlmIHggPCAtMSBvciB4ID0gLUlORiwgYW5kIHJhaXNlcyBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gICBsb2cxcCgtMSkgPSAtSU5GLCBhbmQgcmFpc2VzIGRpdmlkZS1ieS16ZXJvIGV4Y2VwdGlvbgorLy8gICBsb2cxcCgrLy0wKSA9ICsvLTAKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24KK3N0YXRpY19mdW5jOgorLi5CMS4xOgorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlYXgKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlYXgpLCAlZWF4CisgICAgICAgIGxlYSAgICAgICBzdGF0aWNfY29uc3RfdGFibGVAR09UT0ZGKCVlYXgpLCAlZWF4CisgICAgICAgIHJldAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICBsb2cxcAorRU5UUlkobG9nMXApCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEwNCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNDAoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVjeAorICAgICAgICBtb3ZkICAgICAgJWVjeCwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDIxMjgoJWVieCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgJXhtbTIsICV4bW02CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNgorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkNSwgJXhtbTAKKyAgICAgICAgcHNybHEgICAgICQzNCwgJXhtbTAKKyAgICAgICAgc3VibCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzM2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIHJjcHNzICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQxMiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMjgsICV4bW01LCAleG1tNgorICAgICAgICBwc3JscSAgICAgJDEyLCAleG1tMQorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMTYyNTYsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQzMjcyMCwgJWVjeAorICAgICAgICBzdWJsICAgICAgJWVheCwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW0zCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBwYWRkZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgbW92bCAgICAgICQxNDMzNiwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW00CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIHBzbGxxICAgICAkMjksICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYW5kcGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIHBhZGRkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJDE2MzUyLCAlZWN4CisgICAgICAgIHN1YmwgICAgICAlZWN4LCAlZWF4CisgICAgICAgIGN2dHNpMnNkbCAlZWF4LCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDIwNjQoJWVieCksICV4bW02CisgICAgICAgIG1vdmFwZCAgICAyMDgwKCVlYngpLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIGFuZGwgICAgICAkMTY3MTE2ODAsICVlZHgKKyAgICAgICAgc2hybCAgICAgICQxMiwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgKCVlYngsJWVkeCksICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAyMDk2KCVlYngpLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgMjA3MiglZWJ4KSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMjgsICV4bW0wLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHBkICAgICAyMTEyKCVlYngpLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIGFkZHBkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0yLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgbW92c2QgICAgIDExMiglZXNwKSwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQtMjA5NzE1MiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorLkxfMlRBR19QQUNLRVRfOC4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQxNDEsICVlZHgKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorLkxfMlRBR19QQUNLRVRfOS4wLjI6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIG1vdnNkICAgICAxMTIoJWVzcCksICV4bW0wCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMgorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDQ5MTM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgZGl2c2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE0MCwgJWVkeAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjIKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMTEyKCVlc3ApLCAleG1tMAorICAgICAgICBjbXBsICAgICAgJDE1NTA0LCAlZWN4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMS4wLjIKKyAgICAgICAgbW92YXBkICAgIDIxNDQoJWVieCksICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgMjE2MCglZWJ4KSwgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW00CisgICAgICAgIG1vdmFwZCAgICAyMTc2KCVlYngpLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW00LCAleG1tNAorICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW00LCAleG1tNQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG1vdmwgICAgICAkNDkxMjAsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW01CisgICAgICAgIG11bHBkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0xLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKy5MXzJUQUdfUEFDS0VUXzExLjAuMjoKKyAgICAgICAgY21wbCAgICAgICQxNiwgJWVjeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMTIuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorLkxfMlRBR19QQUNLRVRfMTIuMC4yOgorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAyNCglZXNwKQorICAgICAgICBmbGRsICAgICAgMjQoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzEwLjAuMjoKKyAgICAgICAgbW92bCAgICAgIDQwKCVlc3ApLCAlZWJ4CisgICAgICAgIG1vdmwgICAgICAlZWJwLCAlZXNwCisgICAgICAgIHBvcGwgICAgICAlZWJwCisgICAgICAgIHJldCAgICAgICAKKy4uQjIuMzoKK0VORChsb2cxcCkKKyMgLS0gRW5kICBsb2cxcAorCisjIFN0YXJ0IGZpbGUgc2NvcGUgQVNNCitBTElBU19TWU1CT0wobG9nMXBsLCBsb2cxcCk7CisjIEVuZCBmaWxlIHNjb3BlIEFTTQorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorc3RhdGljX2NvbnN0X3RhYmxlOgorCS5sb25nCTQyNzc4MTEyMDAKKwkubG9uZwkxMDcyMDQ5NzMwCisJLmxvbmcJMjQ3OTMxODgzMgorCS5sb25nCTEwMjY0ODcxMjcKKwkubG9uZwkyODU0NDkyMTYwCisJLmxvbmcJMTA3MjAzMzQxMAorCS5sb25nCTIxNTYzMTU1MAorCS5sb25nCTEwMjU2Mzg5NjgKKwkubG9uZwkxNTQ3MDYxMjQ4CisJLmxvbmcJMTA3MjAxNzIxNgorCS5sb25nCTI4ODY3ODE0MzUKKwkubG9uZwkxMDI2NDIzMzk1CisJLmxvbmcJNjQ5ODI1MjgwCisJLmxvbmcJMTA3MjAwMTE0NgorCS5sb25nCTQyODE1MzM0MDUKKwkubG9uZwkxMDI0MDM4OTIzCisJLmxvbmcJNjQ2MzQ2NzUyCisJLmxvbmcJMTA3MTk4NTE5OAorCS5sb25nCTE1NjI3MzU5MjEKKwkubG9uZwkxMDIzNzkwMjc2CisJLmxvbmcJMjIwMzczNDAxNgorCS5sb25nCTEwNzE5NjkzNzAKKwkubG9uZwkxODM4Mzk3NjkxCisJLmxvbmcJMzE3MzkzNjIwOQorCS5sb25nCTE4NzIxNjk5ODQKKwkubG9uZwkxMDcxOTUzNjYxCisJLmxvbmcJMzk4MTIwMjQ2MAorCS5sb25nCTEwMjIzMjUwMTMKKwkubG9uZwk2Njk1NTc3NjAKKwkubG9uZwkxMDcxOTM4MDY5CisJLmxvbmcJNDE4MjU5NzgwMgorCS5sb25nCTMxNzMxNzQxMjIKKwkubG9uZwk0MDc2NDEzOTUyCisJLmxvbmcJMTA3MTkyMjU5MQorCS5sb25nCTEyMDkwMjkxMTEKKwkubG9uZwkzMTcwNzM2MjA3CisJLmxvbmcJNTU2MTI1MTg0CisJLmxvbmcJMTA3MTkwNzIyOAorCS5sb25nCTgyMTA4NjAyOAorCS5sb25nCTMxNzM0MzcwNDkKKwkubG9uZwkyMDQ5MTQ2ODgKKwkubG9uZwkxMDcxODkxOTc2CisJLmxvbmcJMjA5NzAyNTk4NgorCS5sb25nCTMxNzEwNzE3OTgKKwkubG9uZwkzODc1NDUwODgKKwkubG9uZwkxMDcxODc2ODM0CisJLmxvbmcJMzE0MjkzNjk5NgorCS5sb25nCTMxNzMwOTIyMTgKKwkubG9uZwkyOTEyNzgzMzYwCisJLmxvbmcJMTA3MTg2MTgwMAorCS5sb25nCTI1MDI0MjAxNDAKKwkubG9uZwkxMDI0NTA1OTE5CisJLmxvbmcJMTE0NDI2MDYwOAorCS5sb25nCTEwNzE4NDY4NzQKKwkubG9uZwkzMzE1NjU4MTQwCisJLmxvbmcJMzE3MzQ2OTg0MworCS5sb25nCTE0NzEyMDk0NzIKKwkubG9uZwkxMDcxODMyMDUzCisJLmxvbmcJMTI5NjIxMDA5CisJLmxvbmcJMzE3MjQ0Mzg3NworCS5sb25nCTE4Mjk2ODMyMDAKKwkubG9uZwkxMDcxODE3MzM2CisJLmxvbmcJMzg4NTQ2NzY5MworCS5sb25nCTEwMjU1MzUyNzUKKwkubG9uZwkyODg2NzY4NjQKKwkubG9uZwkxMDcxODAyNzIyCisJLmxvbmcJODYxMzk0NzIKKwkubG9uZwkzMTcxNjM5NzkzCisJLmxvbmcJMzYzNjM3ODYyNAorCS5sb25nCTEwNzE3ODgyMDgKKwkubG9uZwkxODUwMjM4NTg3CisJLmxvbmcJMTAyNDY1NDM0MgorCS5sb25nCTE2MDY4MTc3OTIKKwkubG9uZwkxMDcxNzczNzk1CisJLmxvbmcJMzM4ODg5OTc5NQorCS5sb25nCTMxNzM2NzU1ODYKKwkubG9uZwkxMjM2MTY0NjA4CisJLmxvbmcJMTA3MTc1OTQ4MAorCS5sb25nCTM5ODM1OTkyMDcKKwkubG9uZwkxMDIwMDQ2NTU4CisJLmxvbmcJMTA4OTYxNjg5NgorCS5sb25nCTEwNzE3NDUyNjIKKwkubG9uZwk0MTcxOTc0MjI0CisJLmxvbmcJMTAyNDc3MzE5OAorCS5sb25nCTQxNDMwOTM3NjAKKwkubG9uZwkxMDcxNzMxMTM5CisJLmxvbmcJMjcyNzU4NzQwMQorCS5sb25nCTMxNzM5NjUyMDcKKwkubG9uZwk2MDAyNjc3NzYKKwkubG9uZwkxMDcxNzE3MTEyCisJLmxvbmcJMzE0NzY4NTA0MgorCS5sb25nCTMxNzMzNTMwMzEKKwkubG9uZwkyMjQ5MzEzMjgwCisJLmxvbmcJMTA3MTcwMzE3NworCS5sb25nCTEyNTgzNTA3NAorCS5sb25nCTEwMjUyNTU4MzIKKwkubG9uZwkzODA1MzAzODA4CisJLmxvbmcJMTA3MTY4OTMzNAorCS5sb25nCTIyODk5OTEyMDcKKwkubG9uZwkxMDI1NDYwMzMxCisJLmxvbmcJODcyNzg1OTIKKwkubG9uZwkxMDcxNjc1NTgzCisJLmxvbmcJMTEwNjExNDA0NQorCS5sb25nCTEwMjU5MzM2MDIKKwkubG9uZwkzMTk1NDA1MzEyCisJLmxvbmcJMTA3MTY2MTkyMAorCS5sb25nCTM4ODUzMTY1NzYKKwkubG9uZwkzMTcxMjA2MjM5CisJLmxvbmcJMzg1MzY0OTkyMAorCS5sb25nCTEwNzE2NDgzNDYKKwkubG9uZwkyOTc3MDY5ODUyCisJLmxvbmcJMzE3MTIzNjc3MQorCS5sb25nCTI5NDQwMjY2MjQKKwkubG9uZwkxMDcxNjI1MDQ4CisJLmxvbmcJMTAwODA5MzQ5MworCS5sb25nCTEwMjM0NDQ0NzQKKwkubG9uZwkzOTkzMTgwMTYwCisJLmxvbmcJMTA3MTU5ODI0NworCS5sb25nCTE4NjIzNTU1OTUKKwkubG9uZwkxMDI0NjQyNTMzCisJLmxvbmcJMTQ1NDY0MTE1MgorCS5sb25nCTEwNzE1NzE2MTcKKwkubG9uZwkxNTE0NjAzMDg5CisJLmxvbmcJMTAyNjUwMDU5NgorCS5sb25nCTMyODYwODU2MzIKKwkubG9uZwkxMDcxNTQ1MTU0CisJLmxvbmcJMTQwMDAyODQyNAorCS5sb25nCTMxNzMyNzkwNTYKKwkubG9uZwk0Mzg3NzM3NjAKKwkubG9uZwkxMDcxNTE4ODU4CisJLmxvbmcJMTIwNzI3ODY0CisJLmxvbmcJMzE3MjE0ODkxNAorCS5sb25nCTEyMTI5NzkyMDAKKwkubG9uZwkxMDcxNDkyNzI1CisJLmxvbmcJMTYyNTA1NTU5NAorCS5sb25nCTMxNzI5MDE5MzMKKwkubG9uZwkxMTg5MDE3NjAwCisJLmxvbmcJMTA3MTQ2Njc1NAorCS5sb25nCTM5MjAwNjIzNzYKKwkubG9uZwkxMDI1NzI3NDA3CisJLmxvbmcJNDAzMDY0ODMyCisJLmxvbmcJMTA3MTQ0MDk0MworCS5sb25nCTEwNTMyNzE3MjgKKwkubG9uZwkzMTcxMzkxNDI3CisJLmxvbmcJMzM0MzIxMDQ5NgorCS5sb25nCTEwNzE0MTUyODkKKwkubG9uZwkzMjQzMzk1NTAyCisJLmxvbmcJMzE3MzYyNzYxMworCS5sb25nCTE3NjU3Nzc0MDgKKwkubG9uZwkxMDcxMzg5NzkyCisJLmxvbmcJMjE0NTk2ODUxMgorCS5sb25nCTEwMjYzNTQzMDQKKwkubG9uZwk0NjE0MzA3ODQKKwkubG9uZwkxMDcxMzY0NDQ5CisJLmxvbmcJNDA5NDMyMjI4NQorCS5sb25nCTEwMjYwMjE0NjcKKwkubG9uZwk3MTcwNjYyNAorCS5sb25nCTEwNzEzMzkyNTgKKwkubG9uZwk3NjM2MzIwMjEKKwkubG9uZwkxMDI0NDk2OTMzCisJLmxvbmcJMTM4MDUwMzU1MgorCS5sb25nCTEwNzEzMTQyMTcKKwkubG9uZwkxMzgzNTQ3OTkyCisJLmxvbmcJMzE3MzA4ODQ1MworCS5sb25nCTEwMTU3MzIyMjQKKwkubG9uZwkxMDcxMjg5MzI1CisJLmxvbmcJMzE5ODY0Njg3NworCS5sb25nCTEwMjUzOTAzMjIKKwkubG9uZwkzNTk3NzIxNgorCS5sb25nCTEwNzEyNjQ1ODAKKwkubG9uZwkyMTQxMDI2ODA1CisJLmxvbmcJMTAyNTc1NDY5MworCS5sb25nCTM5MjczMDYyNDAKKwkubG9uZwkxMDcxMjM5OTc5CisJLmxvbmcJMjgyMTE2MjcyCisJLmxvbmcJMzE3MzM5NDMzNAorCS5sb25nCTExMjUzNDExODQKKwkubG9uZwkxMDcxMjE1NTIzCisJLmxvbmcJMjc2ODQyNzUwNAorCS5sb25nCTMxNzIyNzkwNTkKKwkubG9uZwkxNjY2OTcxNjQ4CisJLmxvbmcJMTA3MTE5MTIwOAorCS5sb25nCTc4NjgzNzYyOQorCS5sb25nCTMxNzI0Mjc0NDUKKwkubG9uZwkyODI3Njk0MDgwCisJLmxvbmcJMTA3MTE2NzAzMworCS5sb25nCTM4NTcxMjI0MTYKKwkubG9uZwkzMTczMDE0MjQxCisJLmxvbmcJMjAwMzY4MzMyOAorCS5sb25nCTEwNzExNDI5OTcKKwkubG9uZwk4NTkwMTA5NTQKKwkubG9uZwkxMDI2NTQ1MDA3CisJLmxvbmcJMTAwNDAxNzY2NAorCS5sb25nCTEwNzExMTkwOTgKKwkubG9uZwkzMzU2NjQ0OTcwCisJLmxvbmcJMzE3MzQ1ODA2NAorCS5sb25nCTE3NTMwMjA0MTYKKwkubG9uZwkxMDcxMDk1MzM0CisJLmxvbmcJNzg4MzM4NTUyCisJLmxvbmcJMTAyNjE1NzY5MworCS5sb25nCTE5OTI3MTgzMzYKKwkubG9uZwkxMDcxMDcxNzA0CisJLmxvbmcJMTIzOTE3OTQ0MworCS5sb25nCTEwMjYzOTQ4ODkKKwkubG9uZwkzODcwMjM0NjI0CisJLmxvbmcJMTA3MTA0ODIwNgorCS5sb25nCTIwODI2MTQ2NjMKKwkubG9uZwkxMDI0OTI2MDUzCisJLmxvbmcJMTA1MDQzNzYzMgorCS5sb25nCTEwNzEwMjQ4NDAKKwkubG9uZwk2NjAwMDc4NDAKKwkubG9uZwkxMDI1NTQ4NDk5CisJLmxvbmcJMTg4Mzk1NTIwCisJLmxvbmcJMTA3MTAwMTYwMworCS5sb25nCTM4Nzg3OTI3MDQKKwkubG9uZwkzMTczODg5NTcxCisJLmxvbmcJMzc0NzE3NjQ0OAorCS5sb25nCTEwNzA5Nzg0OTMKKwkubG9uZwkxNDQ5OTE3MDgKKwkubG9uZwkzMTcxNTUyMDQyCisJLmxvbmcJMTQwNTY2OTM3NgorCS5sb25nCTEwNzA5NTU1MTEKKwkubG9uZwkzOTk5MDg4ODc5CisJLmxvbmcJMTAyNTQ4NjMxNworCS5sb25nCTEyMTE1MTQ4OAorCS5sb25nCTEwNzA5MzI2NTQKKwkubG9uZwkyMTcwODY1NDk3CisJLmxvbmcJMTAyNjQ3MzU4NAorCS5sb25nCTI2NTIzMTk3NDQKKwkubG9uZwkxMDcwOTA5OTIwCisJLmxvbmcJNDUzNjk1NjUyCisJLmxvbmcJMzE3MzkxNjgwOQorCS5sb25nCTMyNjIyMzY2NzIKKwkubG9uZwkxMDcwODg3MzA5CisJLmxvbmcJMTU3ODAwMDUzCisJLmxvbmcJMzE3Mzk4NDIwNgorCS5sb25nCTYwMTIyMTEyMAorCS5sb25nCTEwNzA4NjQ4MjAKKwkubG9uZwkzOTY4OTE3NjYxCisJLmxvbmcJMTAyMzk5Mjg4NgorCS5sb25nCTE5OTk4NDMzMjgKKwkubG9uZwkxMDcwODQyNDUwCisJLmxvbmcJMzA1Mzg5NTAwNAorCS5sb25nCTEwMjQ5OTgyMjgKKwkubG9uZwkxOTkyMTY3NDI0CisJLmxvbmcJMTA3MDgyMDE5OQorCS5sb25nCTI5Njg2MTQ4NTYKKwkubG9uZwkxMDI0NTUyNjUzCisJLmxvbmcJMzc4ODcyNjI3MgorCS5sb25nCTEwNzA3OTgwNjUKKwkubG9uZwkzNTQyMTcwODA4CisJLmxvbmcJMzE3MzU3MzI0MgorCS5sb25nCTIwOTQ4Mjk1NjgKKwkubG9uZwkxMDcwNzc2MDQ4CisJLmxvbmcJMTI0Njc1ODEzMgorCS5sb25nCTEwMjYyMDI4NzQKKwkubG9uZwkyODg2NzU4NDAKKwkubG9uZwkxMDcwNzU0MTQ2CisJLmxvbmcJMzc0NzMyODk1MAorCS5sb25nCTEwMjYzMzE1ODUKKwkubG9uZwkxODI5NjgxMTUyCisJLmxvbmcJMTA3MDczMjM1NworCS5sb25nCTMxMjUxOTc1NDYKKwkubG9uZwkxMDI0MTAwMzE4CisJLmxvbmcJMTY2Njg2OTI0OAorCS5sb25nCTEwNzA3MTA2ODEKKwkubG9uZwkxMzYzNjU2MTE5CisJLmxvbmcJMTAyNjMzNjQ5MworCS5sb25nCTM0MTcxMTA1MjgKKwkubG9uZwkxMDcwNjg5MTE2CisJLmxvbmcJNDE1NDc5MTU1MworCS5sb25nCTEwMjYyNjc4NTMKKwkubG9uZwkyMTgzNjUzMzc2CisJLmxvbmcJMTA3MDY2NzY2MgorCS5sb25nCTE2NzE4MTkyOTIKKwkubG9uZwkzMTczNzg1ODcwCisJLmxvbmcJMTczNDQzNDgxNgorCS5sb25nCTEwNzA2NDYzMTcKKwkubG9uZwkzNzMwOTEwNDkKKwkubG9uZwkxMDI1OTcyMzYzCisJLmxvbmcJMTYxNTY4MTUzNgorCS5sb25nCTEwNzA2MjUwODAKKwkubG9uZwkzODQ2NTA4OTcKKwkubG9uZwkxMDIyOTI2MDQzCisJLmxvbmcJMTQ0NTM4MjE0NAorCS5sb25nCTEwNzA2MDM5NTAKKwkubG9uZwkzNDQzMjAzMzAKKwkubG9uZwkzMTcyMzk3MTk2CisJLmxvbmcJMTgyMzcxNTMyOAorCS5sb25nCTEwNzA1Njk3NTYKKwkubG9uZwkzMzg5ODQxMjAwCisJLmxvbmcJMTAyNTIzMTg1MgorCS5sb25nCTM4Mzk2ODg3MDQKKwkubG9uZwkxMDcwNTI3OTE3CisJLmxvbmcJMTcwNjc5MDQxNworCS5sb25nCTMxNjczNjMzNDkKKwkubG9uZwk0MjkzMzMyOTkyCisJLmxvbmcJMTA3MDQ4NjI4NgorCS5sb25nCTE2MTQ5MzUwODgKKwkubG9uZwkxMDE5MzUxNTkxCisJLmxvbmcJMjk2NjcyMDUxMgorCS5sb25nCTEwNzA0NDQ4NjEKKwkubG9uZwk0MTQ1MzkzNzE3CisJLmxvbmcJMzE3MzcxMTY1OAorCS5sb25nCTQwNjY3Mjk5ODQKKwkubG9uZwkxMDcwNDAzNjM5CisJLmxvbmcJMTk3NDkyNTAyOAorCS5sb25nCTMxNzE0MzcxODIKKwkubG9uZwkzMzM3NjIxNTA0CisJLmxvbmcJMTA3MDM2MjYxOQorCS5sb25nCTMzMTQ5NTMxNzAKKwkubG9uZwkzMTY5OTcxMzE0CisJLmxvbmcJOTQzNDQ4MDY0CisJLmxvbmcJMTA3MDMyMTc5OQorCS5sb25nCTE0OTg2ODIwMzgKKwkubG9uZwkzMTczODYyMzQwCisJLmxvbmcJMTQ2NTYzNDgxNgorCS5sb25nCTEwNzAyODExNzYKKwkubG9uZwkxMzE5OTUyODEwCisJLmxvbmcJMzE3MTY5Mzk2NQorCS5sb25nCTEwMTU3MzQyNzIKKwkubG9uZwkxMDcwMjQwNzQ5CisJLmxvbmcJMTM0NzgyMTkyOQorCS5sb25nCTMxNzM1NDQ1MTUKKwkubG9uZwkxMTgwMDE2NjQKKwkubG9uZwkxMDcwMjAwNTE2CisJLmxvbmcJMTc1MTQ4Mjc0NgorCS5sb25nCTEwMjYxMzQwOTMKKwkubG9uZwkzNzA3MTc0OTEyCisJLmxvbmcJMTA3MDE2MDQ3NAorCS5sb25nCTE0ODY5NDYxNTkKKwkubG9uZwkxMDIzOTMwOTIwCisJLmxvbmcJMzk0NjM4MTMxMgorCS5sb25nCTEwNzAxMjA2MjMKKwkubG9uZwkyODY3NDA4MDgxCisJLmxvbmcJMzE3MTM2ODI3NgorCS5sb25nCTE2OTk4NDgxOTIKKwkubG9uZwkxMDcwMDgwOTYxCisJLmxvbmcJMjU5MDE4NzEzOQorCS5sb25nCTEwMjUzNzk4MDMKKwkubG9uZwkyMjM1ODQ2NjU2CisJLmxvbmcJMTA3MDA0MTQ4NQorCS5sb25nCTE4ODg1NjgwNjkKKwkubG9uZwkzMTcyNzU0OTYwCisJLmxvbmcJMjMzOTcyOTQwOAorCS5sb25nCTEwNzAwMDIxOTQKKwkubG9uZwkzODUyMjE0NzUzCisJLmxvbmcJMzE3MzMyMzE0OQorCS5sb25nCTMxOTY4NTAxNzYKKwkubG9uZwkxMDY5OTYzMDg2CisJLmxvbmcJNzQyMTQxNTYwCisJLmxvbmcJMTAyNTEwMTcwNworCS5sb25nCTE4MDA2ODM1MjAKKwkubG9uZwkxMDY5OTI0MTYwCisJLmxvbmcJMzk0OTUwMDQ0NAorCS5sb25nCTMxNzIxMDIxNzkKKwkubG9uZwkzODM1ODAxNjAwCisJLmxvbmcJMTA2OTg4NTQxMworCS5sb25nCTM4NDg4OTU5NDMKKwkubG9uZwkxMDI1OTEzODMyCisJLmxvbmcJMjIwMTIwMjY4OAorCS5sb25nCTEwNjk4NDY4NDUKKwkubG9uZwkxNDI1OTEzNDY0CisJLmxvbmcJMTAyNTg2ODY2NQorCS5sb25nCTI3NzgyNzk5MzYKKwkubG9uZwkxMDY5ODA4NDUzCisJLmxvbmcJMjEyMDg4OTY3NworCS5sb25nCTMxNzM4MzExMjgKKwkubG9uZwkyOTU0MjAzMTM2CisJLmxvbmcJMTA2OTc3MDIzNgorCS5sb25nCTU5MjE0NzA4MQorCS5sb25nCTEwMTk2MjEyODgKKwkubG9uZwkyMTAxNDExODQKKwkubG9uZwkxMDY5NzMyMTkzCisJLmxvbmcJMzQxNDI3NTIzMworCS5sb25nCTEwMjM2NDcwODQKKwkubG9uZwk3MDk0NzYzNTIKKwkubG9uZwkxMDY5Njk0MzIxCisJLmxvbmcJMjQxMzAyNzE2NAorCS5sb25nCTEwMjQ0NjIxMTUKKwkubG9uZwkyMTE2Mjg0NDE2CisJLmxvbmcJMTA2OTY1NjYxOQorCS5sb25nCTExNDQ1NTk5MjQKKwkubG9uZwkxMDI2MzM2NjU0CisJLmxvbmcJMjE4MzY1MTMyOAorCS5sb25nCTEwNjk2MTkwODYKKwkubG9uZwkzNDU5MDU3NjUwCisJLmxvbmcJMTAyNTYzNDE2OAorCS5sb25nCTMwNDcwNDcxNjgKKwkubG9uZwkxMDY5NTgxNzIwCisJLmxvbmcJMTg3OTY3NDkyNAorCS5sb25nCTMxNzM1MDg1NzMKKwkubG9uZwk5NzA3MTEwNDAKKwkubG9uZwkxMDY5NTQxNTIxCisJLmxvbmcJMTMzNTk1NDE3MworCS5sb25nCTMxNzMzMzIxODIKKwkubG9uZwkyMTk4NDc4ODQ4CisJLmxvbmcJMTA2OTQ2NzQ0OQorCS5sb25nCTI5NTExMDM5NjgKKwkubG9uZwkzMTczODkyMjAwCisJLmxvbmcJMTY2OTYxMTUyMAorCS5sb25nCTEwNjkzOTM3MDMKKwkubG9uZwk1MzEwNDQxNDcKKwkubG9uZwkxMDI1MTQ5MjQ4CisJLmxvbmcJMjkxMTQzNjgKKwkubG9uZwkxMDY5MzIwMjgwCisJLmxvbmcJMzMyNzgzMTI1MQorCS5sb25nCTEwMjU5MTg2NzMKKwkubG9uZwkyMzc2OTQ5NzYwCisJLmxvbmcJMTA2OTI0NzE3NgorCS5sb25nCTczNzYzNDUzMworCS5sb25nCTMxNzIxNzYwMDAKKwkubG9uZwkxMDg1MzkwODQ4CisJLmxvbmcJMTA2OTE3NDM5MAorCS5sb25nCTMxMDgyNDM0MDAKKwkubG9uZwkzMTcxODI4NDA2CisJLmxvbmcJMTU2NjEzMDE3NgorCS5sb25nCTEwNjkxMDE5MTgKKwkubG9uZwk5ODU0ODMyMjYKKwkubG9uZwkxMDI1NzA4MzgwCisJLmxvbmcJNzkyNzgwODAwCisJLmxvbmcJMTA2OTAyOTc1OAorCS5sb25nCTQxODQ4NjYyOTUKKwkubG9uZwkxMDI0NDI2MjA0CisJLmxvbmcJMTgzMTU2NzM2CisJLmxvbmcJMTA2ODk1NzkwNworCS5sb25nCTI4NDU2OTkzNzgKKwkubG9uZwkxMDIyMTA3Mjc3CisJLmxvbmcJMTMwMTc4MjUyOAorCS5sb25nCTEwNjg4ODYzNjIKKwkubG9uZwkxMDEyNzM1MjYyCisJLmxvbmcJMzE3MzgwNDI5NAorCS5sb25nCTE1NjI0MTEwMDgKKwkubG9uZwkxMDY4ODE1MTIxCisJLmxvbmcJMjE5NzA4NjcwMworCS5sb25nCTMxNzAxODc4MTMKKwkubG9uZwkyODE1NTQ5NDQwCisJLmxvbmcJMTA2ODc0NDE4MQorCS5sb25nCTI3ODI2MTMyMDcKKwkubG9uZwkxMDI2MzQ1MDU0CisJLmxvbmcJMjc1NjEyNDY3MgorCS5sb25nCTEwNjg2NzM1NDAKKwkubG9uZwkyOTI5NDg2MjA1CisJLmxvbmcJMzE3MzAzNzgwMAorCS5sb25nCTM1MTEwNTAyNDAKKwkubG9uZwkxMDY4NjAzMTk1CisJLmxvbmcJMTQ0MzczMzE0NworCS5sb25nCTMxNzMzMzE1NDkKKwkubG9uZwkzMDQ3MDQ3MTY4CisJLmxvbmcJMTA2ODUzMzE0NAorCS5sb25nCTE4Nzk2NzQ5MjQKKwkubG9uZwkzMTcyNDU5OTk3CisJLmxvbmcJMzIyMTY2Nzg0MAorCS5sb25nCTEwNjg0Mjc4MjUKKwkubG9uZwkxMzM4NTg4MDI3CisJLmxvbmcJMzE3MTgxNTc0MgorCS5sb25nCTM0NTM4NjE4ODgKKwkubG9uZwkxMDY4Mjg4ODgzCisJLmxvbmcJMTIwNTM0ODM1OQorCS5sb25nCTMxNzI2MjQ2MjYKKwkubG9uZwkzNTA2MTEwNDY0CisJLmxvbmcJMTA2ODE1MDUxNAorCS5sb25nCTg5MzEwNTE5OAorCS5sb25nCTEwMjU1NzE4NjYKKwkubG9uZwkzNDYwMTM2OTYKKwkubG9uZwkxMDY4MDEyNzE0CisJLmxvbmcJMzQ5NTU2OTAyMQorCS5sb25nCTMxNzI1NjMzNDkKKwkubG9uZwk0MDc0MDI5MDU2CisJLmxvbmcJMTA2Nzg3NTQ3NgorCS5sb25nCTM5NjExMDYzMzgKKwkubG9uZwkzMTcxMDY1NTk1CisJLmxvbmcJMzU1OTc4NDQ0OAorCS5sb25nCTEwNjc3Mzg3OTgKKwkubG9uZwkxOTc1Mzg1Mzg0CisJLmxvbmcJMzE3Mzc4MzE1NQorCS5sb25nCTc5Nzc2OTcyOAorCS5sb25nCTEwNjc2MDI2NzUKKwkubG9uZwkzNzYwMzA1Nzg3CisJLmxvbmcJMTAyNjA0NzY0MgorCS5sb25nCTIzMTM2MzM3OTIKKwkubG9uZwkxMDY3NDY3MTAxCisJLmxvbmcJMTU1OTM1MzE3MQorCS5sb25nCTEwMjM0ODAyNTYKKwkubG9uZwkzOTYwNzY2NDY0CisJLmxvbmcJMTA2NzIxMzc3OAorCS5sb25nCTEwNjczNjUxMDcKKwkubG9uZwkxMDI1ODY1OTI2CisJLmxvbmcJNjg0MjYxMzc2CisJLmxvbmcJMTA2Njk0NDgwNQorCS5sb25nCTg0NDc2MjE2NAorCS5sb25nCTMxNzM2ODc0ODIKKwkubG9uZwk2MzA3MTg0NjQKKwkubG9uZwkxMDY2Njc2OTA1CisJLmxvbmcJMjQ1ODI2OTY5NAorCS5sb25nCTEwMjQwMzMwODEKKwkubG9uZwkxNDg2MDYxNTY4CisJLmxvbmcJMTA2NjQxMDA3MAorCS5sb25nCTExNTUzNzg3NAorCS5sb25nCTMxNzMyNDM5OTUKKwkubG9uZwkyNzQzNjY0NjQwCisJLmxvbmcJMTA2NTg4Njc5MgorCS5sb25nCTM2NjUwOTgzMDQKKwkubG9uZwkzMTczNDcxNjA3CisJLmxvbmcJMTk3MTkxMjcwNAorCS5sb25nCTEwNjUzNTczMzMKKwkubG9uZwkyNTc3MjE0NDQwCisJLmxvbmcJMzE3MTk5MzQ1MQorCS5sb25nCTE0OTg5MzkzOTIKKwkubG9uZwkxMDY0MzA2NjkzCisJLmxvbmcJMzQwOTAzNjkyMworCS5sb25nCTEwMjU1OTkxNTEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJNDI3NzgxMTIwMAorCS5sb25nCTEwNjc4NTU0MjYKKwkubG9uZwkyNDc5MzE4ODMyCisJLmxvbmcJMTAyMjI5MjgyMworCS5sb25nCTI0NTQyNjcwMjYKKwkubG9uZwkxMDY5Njk3MzE2CisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkxMDMwNzMwMTAxCisJLmxvbmcJMzIxNzM4MDcwMgorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDcwOTQ1NjIxCisJLmxvbmcJMjU3Njk4MDM3OAorCS5sb25nCTEwNzAxNzY2NjUKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTU5MTA0CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NTkxMDQKKwkubG9uZwkwCisJLmxvbmcJMzIxNzAzMTE2OAorCS5sb25nCTI1NzY5ODAzNzgKKwkubG9uZwkxMDcwMTc2NjY1CisJLmxvbmcJMjQ1NDI2NzAyNgorCS5sb25nCTEwNjk2OTczMTYKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkzMjE3MzgwNjkzCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNzA5NDU2MjEKKwkudHlwZQlzdGF0aWNfY29uc3RfdGFibGUsQG9iamVjdAorCS5zaXplCXN0YXRpY19jb25zdF90YWJsZSwyMTkyCisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvc19zaW4uUyBiL2xpYm0veDg2L3Nfc2luLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWU2Y2JkNAotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L3Nfc2luLlMKQEAgLTAsMCArMSw5MDcgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgICAgMS4gUkFOR0UgUkVEVUNUSU9OCisvLworLy8gICAgIFdlIHBlcmZvcm0gYW4gaW5pdGlhbCByYW5nZSByZWR1Y3Rpb24gZnJvbSBYIHRvIHIgd2l0aAorLy8KKy8vICAgICAgICAgIFggPX49IE4gKiBwaS8zMiArIHIKKy8vCisvLyAgICAgc28gdGhhdCB8cnwgPD0gcGkvNjQgKyBlcHNpbG9uLiBXZSByZXN0cmljdCBpbnB1dHMgdG8gdGhvc2UKKy8vICAgICB3aGVyZSB8TnwgPD0gOTMyNTYwLiBCZXlvbmQgdGhpcywgdGhlIHJhbmdlIHJlZHVjdGlvbiBpcworLy8gICAgIGluc3VmZmljaWVudGx5IGFjY3VyYXRlLiBGb3IgZXh0cmVtZWx5IHNtYWxsIGlucHV0cywgCisvLyAgICAgZGVub3JtYWxpemF0aW9uIGNhbiBvY2N1ciBpbnRlcm5hbGx5LCBpbXBhY3RpbmcgcGVyZm9ybWFuY2UuCisvLyAgICAgVGhpcyBtZWFucyB0aGF0IHRoZSBtYWluIHBhdGggaXMgYWN0dWFsbHkgb25seSB0YWtlbiBmb3IKKy8vICAgICAyXi0yNTIgPD0gfFh8IDwgOTAxMTIuCisvLworLy8gICAgIFRvIGF2b2lkIGJyYW5jaGVzLCB3ZSBwZXJmb3JtIHRoZSByYW5nZSByZWR1Y3Rpb24gdG8gZnVsbAorLy8gICAgIGFjY3VyYWN5IGVhY2ggdGltZS4KKy8vCisvLyAgICAgICAgICBYIC0gTiAqIChQXzEgKyBQXzIgKyBQXzMpCisvLworLy8gICAgIHdoZXJlIFBfMSBhbmQgUF8yIGFyZSAzMi1iaXQgbnVtYmVycyAoc28gbXVsdGlwbGljYXRpb24gYnkgTgorLy8gICAgIGlzIGV4YWN0KSBhbmQgUF8zIGlzIGEgNTMtYml0IG51bWJlci4gVG9nZXRoZXIsIHRoZXNlCisvLyAgICAgYXBwcm94aW1hdGUgcGkgd2VsbCBlbm91Z2ggZm9yIGFsbCBjYXNlcyBpbiB0aGUgcmVzdHJpY3RlZAorLy8gICAgIHJhbmdlLgorLy8KKy8vICAgICBUaGUgbWFpbiByZWR1Y3Rpb24gc2VxdWVuY2UgaXM6CisvLworLy8gICAgICAgICAgICAgeSA9IDMyL3BpICogeAorLy8gICAgICAgICAgICAgTiA9IGludGVnZXIoeSkKKy8vICAgICAoY29tcHV0ZWQgYnkgYWRkaW5nIGFuZCBzdWJ0cmFjdGluZyBvZmYgU0hJRlRFUikKKy8vCisvLyAgICAgICAgICAgICBtXzEgPSBOICogUF8xCisvLyAgICAgICAgICAgICBtXzIgPSBOICogUF8yCisvLyAgICAgICAgICAgICByXzEgPSB4IC0gbV8xCisvLyAgICAgICAgICAgICByID0gcl8xIC0gbV8yCisvLyAgICAgKHRoaXMgciBjYW4gYmUgdXNlZCBmb3IgbW9zdCBvZiB0aGUgY2FsY3VsYXRpb24pCisvLworLy8gICAgICAgICAgICAgY18xID0gcl8xIC0gcgorLy8gICAgICAgICAgICAgbV8zID0gTiAqIFBfMworLy8gICAgICAgICAgICAgY18yID0gY18xIC0gbV8yCisvLyAgICAgICAgICAgICBjID0gY18yIC0gbV8zCisvLworLy8gICAgIDIuIE1BSU4gQUxHT1JJVEhNCisvLworLy8gICAgIFRoZSBhbGdvcml0aG0gdXNlcyBhIHRhYmxlIGxvb2t1cCBiYXNlZCBvbiBCID0gTSAqIHBpIC8gMzIKKy8vICAgICB3aGVyZSBNID0gTiBtb2QgNjQuIFRoZSBzdG9yZWQgdmFsdWVzIGFyZToKKy8vICAgICAgIHNpZ21hICAgICAgICAgICAgIGNsb3Nlc3QgcG93ZXIgb2YgMiB0byBjb3MoQikKKy8vICAgICAgIENfaGwgICAgICAgICAgICAgIDUzLWJpdCBjb3MoQikgLSBzaWdtYQorLy8gICAgICAgU19oaSArIFNfbG8gICAgICAgMiAqIDUzLWJpdCBzaW4oQikKKy8vCisvLyAgICAgVGhlIGNvbXB1dGF0aW9uIGlzIG9yZ2FuaXplZCBhcyBmb2xsb3dzOgorLy8KKy8vICAgICAgICAgIHNpbihCICsgciArIGMpID0gW3NpbihCKSArIHNpZ21hICogcl0gKworLy8gICAgICAgICAgICAgICAgICAgICAgICAgICByICogKGNvcyhCKSAtIHNpZ21hKSArCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpbihCKSAqIFtjb3MociArIGMpIC0gMV0gKworLy8gICAgICAgICAgICAgICAgICAgICAgICAgICBjb3MoQikgKiBbc2luKHIgKyBjKSAtIHJdCisvLworLy8gICAgIHdoaWNoIGlzIGFwcHJveGltYXRlbHk6CisvLworLy8gICAgICAgICAgW1NfaGkgKyBzaWdtYSAqIHJdICsKKy8vICAgICAgICAgIENfaGwgKiByICsKKy8vICAgICAgICAgIFNfbG8gKyBTX2hpICogWyhjb3MocikgLSAxKSAtIHIgKiBjXSArCisvLyAgICAgICAgICAoQ19obCArIHNpZ21hKSAqIFsoc2luKHIpIC0gcikgKyBjXQorLy8KKy8vICAgICBhbmQgdGhpcyBpcyB3aGF0IGlzIGFjdHVhbGx5IGNvbXB1dGVkLiBXZSBzZXBhcmF0ZSB0aGlzIHN1bQorLy8gICAgIGludG8gZm91ciBwYXJ0czoKKy8vCisvLyAgICAgICAgICBoaSArIG1lZCArIHBvbHMgKyBjb3JyCisvLworLy8gICAgIHdoZXJlCisvLworLy8gICAgICAgICAgaGkgICAgICAgPSBTX2hpICsgc2lnbWEgcgorLy8gICAgICAgICAgbWVkICAgICAgPSBDX2hsICogcgorLy8gICAgICAgICAgcG9scyAgICAgPSBTX2hpICogKGNvcyhyKSAtIDEpICsgKENfaGwgKyBzaWdtYSkgKiAoc2luKHIpIC0gcikKKy8vICAgICAgICAgIGNvcnIgICAgID0gU19sbyArIGMgKiAoKENfaGwgKyBzaWdtYSkgLSBTX2hpICogcikKKy8vCisvLyAgICAgMy4gUE9MWU5PTUlBTAorLy8KKy8vICAgICBUaGUgcG9seW5vbWlhbCBTX2hpICogKGNvcyhyKSAtIDEpICsgKENfaGwgKyBzaWdtYSkgKgorLy8gICAgIChzaW4ocikgLSByKSBjYW4gYmUgcmVhcnJhbmdlZCBmcmVlbHksIHNpbmNlIGl0IGlzIHF1aXRlCisvLyAgICAgc21hbGwsIHNvIHdlIGV4cGxvaXQgcGFyYWxsZWxpc20gdG8gdGhlIGZ1bGxlc3QuCisvLworLy8gICAgICAgICAgcHNjNCAgICAgICA9ICAgU0NfNCAqIHJfMQorLy8gICAgICAgICAgbXNjNCAgICAgICA9ICAgcHNjNCAqIHIKKy8vICAgICAgICAgIHIyICAgICAgICAgPSAgIHIgKiByCisvLyAgICAgICAgICBtc2MyICAgICAgID0gICBTQ18yICogcjIKKy8vICAgICAgICAgIHI0ICAgICAgICAgPSAgIHIyICogcjIKKy8vICAgICAgICAgIHBzYzMgICAgICAgPSAgIFNDXzMgKyBtc2M0CisvLyAgICAgICAgICBwc2MxICAgICAgID0gICBTQ18xICsgbXNjMgorLy8gICAgICAgICAgbXNjMyAgICAgICA9ICAgcjQgKiBwc2MzCisvLyAgICAgICAgICBzaW5jb3Nwb2xzID0gICBwc2MxICsgbXNjMworLy8gICAgICAgICAgcG9scyAgICAgICA9ICAgc2luY29zcG9scyAqCisvLyAgICAgICAgICAgICAgICAgICAgICAgICA8U19oaSAqIHJeMiB8IChDX2hsICsgc2lnbWEpICogcl4zPgorLy8KKy8vICAgICA0LiBDT1JSRUNUSU9OIFRFUk0KKy8vCisvLyAgICAgVGhpcyBpcyB3aGVyZSB0aGUgImMiIGNvbXBvbmVudCBvZiB0aGUgcmFuZ2UgcmVkdWN0aW9uIGlzCisvLyAgICAgdGFrZW4gaW50byBhY2NvdW50OyByZWNhbGwgdGhhdCBqdXN0ICJyIiBpcyB1c2VkIGZvciBtb3N0IG9mCisvLyAgICAgdGhlIGNhbGN1bGF0aW9uLgorLy8KKy8vICAgICAgICAgIC1jICAgPSBtXzMgLSBjXzIKKy8vICAgICAgICAgIC1kICAgPSBTX2hpICogciAtIChDX2hsICsgc2lnbWEpCisvLyAgICAgICAgICBjb3JyID0gLWMgKiAtZCArIFNfbG8KKy8vCisvLyAgICAgNS4gQ09NUEVOU0FURUQgU1VNTUFUSU9OUworLy8KKy8vICAgICBUaGUgdHdvIHN1Y2Nlc3NpdmUgY29tcGVuc2F0ZWQgc3VtbWF0aW9ucyBhZGQgdXAgdGhlIGhpZ2gKKy8vICAgICBhbmQgbWVkaXVtIHBhcnRzLCBsZWF2aW5nIGp1c3QgdGhlIGxvdyBwYXJ0cyB0byBhZGQgdXAgYXQKKy8vICAgICB0aGUgZW5kLgorLy8KKy8vICAgICAgICAgIHJzICAgICAgICA9ICBzaWdtYSAqIHIKKy8vICAgICAgICAgIHJlc19pbnQgICA9ICBTX2hpICsgcnMKKy8vICAgICAgICAgIGtfMCAgICAgICA9ICBTX2hpIC0gcmVzX2ludAorLy8gICAgICAgICAga18yICAgICAgID0gIGtfMCArIHJzCisvLyAgICAgICAgICBtZWQgICAgICAgPSAgQ19obCAqIHIKKy8vICAgICAgICAgIHJlc19oaSAgICA9ICByZXNfaW50ICsgbWVkCisvLyAgICAgICAgICBrXzEgICAgICAgPSAgcmVzX2ludCAtIHJlc19oaQorLy8gICAgICAgICAga18zICAgICAgID0gIGtfMSArIG1lZAorLy8KKy8vICAgICA2LiBGSU5BTCBTVU1NQVRJT04KKy8vCisvLyAgICAgV2Ugbm93IGFkZCB1cCBhbGwgdGhlIHNtYWxsIHBhcnRzOgorLy8KKy8vICAgICAgICAgIHJlc19sbyA9IHBvbHMoaGkpICsgcG9scyhsbykgKyBjb3JyICsga18xICsga18zCisvLworLy8gICAgIE5vdyB0aGUgb3ZlcmFsbCByZXN1bHQgaXMganVzdDoKKy8vCisvLyAgICAgICAgICByZXNfaGkgKyByZXNfbG8KKy8vCisvLyAgICAgNy4gU01BTEwgQVJHVU1FTlRTCisvLworLy8gICAgIElmIHx4fCA8IFNOTiAoU05OIG1lYW5pbmcgdGhlIHNtYWxsZXN0IG5vcm1hbCBudW1iZXIpLCB3ZQorLy8gICAgIHNpbXBseSBwZXJmb3JtIDAuMTExMTExMSBjZG90cyAxMTExICogeC4gRm9yIFNOTiA8PSB8eHwsIHdlCisvLyAgICAgZG8gMl4tNTUgKiAoMl41NSAqIHggLSB4KS4KKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIHNpbihOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBzaW4oSU5GKSA9IE5hTiBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBzaW4oKy8tMCkgPSArLy0wCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgc3RhdGljX2Z1bmMKKyAgICAgICAgLnRleHQKKyAgICAgICAgLmFsaWduIF9fYmlvbmljX2FzbV9hbGlnbgorICAgICAgICAudHlwZSBzdGF0aWNfZnVuYywgQGZ1bmN0aW9uCitzdGF0aWNfZnVuYzoKKy4uQjEuMToKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZWF4CisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZWF4KSwgJWVheAorICAgICAgICBsZWEgICAgICAgc3RhdGljX2NvbnN0X3RhYmxlQEdPVE9GRiglZWF4KSwgJWVheAorICAgICAgICByZXQKKyAgICAgICAgLnNpemUgICBzdGF0aWNfZnVuYywuLXN0YXRpY19mdW5jCisjIC0tIEVuZCAgc3RhdGljX2Z1bmMKKworIyAtLSBCZWdpbiAgc2luCitFTlRSWShzaW4pCisjIHBhcmFtZXRlciAxOiA4ICsgJWVicAorLi5CMi4xOgorLi5CMi4yOgorICAgICAgICBwdXNobCAgICAgJWVicAorICAgICAgICBtb3ZsICAgICAgJWVzcCwgJWVicAorICAgICAgICBzdWJsICAgICAgJDEyMCwgJWVzcAorICAgICAgICBtb3ZsICAgICAgJWVieCwgNTYoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIHN0YXRpY19mdW5jCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWJ4CisgICAgICAgIG1vdnNkICAgICAxMjgoJWVzcCksICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBzdWJsICAgICAgJDEyMzM2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkNDI5MywgJWVheAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgbW92c2QgICAgIDIxNjAoJWVieCksICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIDIyNzIoJWVieCksICV4bW01CisgICAgICAgIG1vdmFwZCAgICAyMjU2KCVlYngpLCAleG1tNAorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG9ycHMgICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgbW92c2QgICAgIDIxMjgoJWVieCksICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAyMTEyKCVlYngpLCAleG1tMgorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGN2dHRzZDJzaSAleG1tMSwgJWVkeAorICAgICAgICBjdnRzaTJzZGwgJWVkeCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICB1bnBja2xwZCAgJXhtbTEsICV4bW0xCisgICAgICAgIGFkZGwgICAgICAkMTg2NTIxNiwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW00CisgICAgICAgIGFuZGwgICAgICAkNjMsICVlZHgKKyAgICAgICAgbW92YXBkICAgIDIwOTYoJWVieCksICV4bW01CisgICAgICAgIGxlYSAgICAgICAoJWVieCksICVlYXgKKyAgICAgICAgc2hsbCAgICAgICQ1LCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgMjE0NCglZWJ4KSwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgOCglZWF4KSwgJXhtbTcKKyAgICAgICAgdW5wY2tscGQgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgJXhtbTQsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBzdWJwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAyMDY0KCVlYngpLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW03CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICglZWF4KSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgMjQoJWVheCksICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgIDIwODAoJWVieCksICV4bW01CisgICAgICAgIG11bHNkICAgICAoJWVheCksICV4bW00CisgICAgICAgIGFkZHBkICAgICAyMDQ4KCVlYngpLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgIDgoJWVheCksICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgbW92YXBkICAgICV4bW00LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHBkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgbW92c2QgICAgIDgoJWVheCksICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMworICAgICAgICBhZGRzZCAgICAgMTYoJWVheCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIHVucGNraHBkICAleG1tNiwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIG1vdnNkICAgICAleG1tNCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgamcgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIHNocmwgICAgICAkNCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDI2ODQzNDY4NSwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMjE5MiglZWJ4KSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG11bHNkICAgICAyMjA4KCVlYngpLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBmbGRsICAgICAgKCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIG1vdmwgICAgICAxMzIoJWVzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyMTQ2NDM1MDcyLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMjE0NjQzNTA3MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgc3VibCAgICAgICQzMiwgJWVzcAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglZXNwKQorICAgICAgICBsZWEgICAgICAgNDAoJWVzcCksICVlYXgKKyAgICAgICAgbW92bCAgICAgICVlYXgsIDgoJWVzcCkKKyAgICAgICAgbW92bCAgICAgICQyLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAxMiglZXNwKQorICAgICAgICBjYWxsICAgICAgX19saWJtX3NpbmNvc19odWdlCisgICAgICAgIGFkZGwgICAgICAkMzIsICVlc3AKKyAgICAgICAgZmxkbCAgICAgIDE2KCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIGZsZGwgICAgICAxMjgoJWVzcCkKKyAgICAgICAgZm11bGwgICAgIDIyNDAoJWVieCkKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBtb3ZsICAgICAgNTYoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKHNpbikKKyMgLS0gRW5kICBzaW4KKworIyBTdGFydCBmaWxlIHNjb3BlIEFTTQorQUxJQVNfU1lNQk9MKHNpbmwsIHNpbik7CisjIEVuZCBmaWxlIHNjb3BlIEFTTQorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorc3RhdGljX2NvbnN0X3RhYmxlOgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMzkzMDQ3MzQ1CisJLmxvbmcJMzIxMjAzMjMwMgorCS5sb25nCTMxNTY4NDk3MDgKKwkubG9uZwkxMDY5MDk0ODIyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNTgxODk4NDgKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE4MTE1MDY3CisJLmxvbmcJMzIxNDEyNjM0MgorCS5sb25nCTEwMTM1NTY3NDcKKwkubG9uZwkxMDcwMTM1NDgwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTMxNjA1NjcwNjUKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI0NzY1NDg2OTgKKwkubG9uZwkzMjE1MzMwMjgyCisJLmxvbmcJNzg1NzUxODE0CisJLmxvbmcJMTA3MDc2NTA2MgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkzMTYxODM4MjIxCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyMjU1MTk3NjQ3CisJLmxvbmcJMzIxNjIxMTEwNQorCS5sb25nCTI3OTY0NjQ0ODMKKwkubG9uZwkxMDcxMTUyNjEwCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNjA4NzgzMTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE5NDU3Njg1NjkKKwkubG9uZwkzMjE2OTE1MDQ4CisJLmxvbmcJOTM5OTgwMzQ3CisJLmxvbmcJMTA3MTUyNDcwMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTI3OTY4MDkKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE1Mzk2NjgzNDAKKwkubG9uZwkzMjE3Mzk2MzI3CisJLmxvbmcJOTY3NzMxNDAwCisJLmxvbmcJMTA3MTc2MTIxMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTU3NTIxNTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE0MDM3NTczMDkKKwkubG9uZwkzMjE3ODg2NzE4CisJLmxvbmcJNjIxMzU0NDU0CisJLmxvbmcJMTA3MTkyNjUxNQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTM0NTA2MDIKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI1ODM0OTAzNTQKKwkubG9uZwkxMDcwMjM2MjgxCisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzIwNzkwMDYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYzMjgyNzQwCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyNDg1NDE3ODE2CisJLmxvbmcJMTA2OTYyNjMxNgorCS5sb25nCTE3OTY1NDQzMjEKKwkubG9uZwkxMDcyMjE3MjE2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MjY4Njk0NQorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjU5ODgwMDUxOQorCS5sb25nCTEwNjgyNjY0MTkKKwkubG9uZwk2ODg4MjQ3MzkKKwkubG9uZwkxMDcyMzM5ODE0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTA0MzE1MzYKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTIxNDAxODM2MzAKKwkubG9uZwkzMjE0NzU2Mzk2CisJLmxvbmcJNDA1MTc0NjIyNQorCS5sb25nCTEwNzI0NDU2MTgKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMzE2MTkwNzM3NworCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMTY5OTA0Mzk1NworCS5sb25nCTMyMTY5MDIyNjEKKwkubG9uZwkzNDc2MTk2Njc4CisJLmxvbmcJMTA3MjUzMzYxMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTQyNTc2MzgKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTE5OTEwNDcyMTMKKwkubG9uZwkxMDY3NzUzNTIxCisJLmxvbmcJMTQ1NTgyODQ0MgorCS5sb25nCTEwNzI2MDI5NDUKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxNTUwNTA3MworCS5sb25nCTAKKwkubG9uZwkxMDcwNTk2MDk2CisJLmxvbmcJMjQwNzQwMzA5CisJLmxvbmcJMzIxNTcyNzkwMworCS5sb25nCTM0ODkwOTQ4MzIKKwkubG9uZwkxMDcyNjUyOTUxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNDMyNTc4MworCS5sb25nCTAKKwkubG9uZwkxMDcwNTk2MDk2CisJLmxvbmcJMjU3NTAzMDU2CisJLmxvbmcJMzIxNDY0NzY1MworCS5sb25nCTI3NDgzOTI3NDIKKwkubG9uZwkxMDcyNjgzMTQ5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTMxNjMwNjE3NTAKKwkubG9uZwkwCisJLmxvbmcJMTA2OTU0NzUyMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjU3NTAzMDU2CisJLmxvbmcJMTA2NzE2NDAwNQorCS5sb25nCTI3NDgzOTI3NDIKKwkubG9uZwkxMDcyNjgzMTQ5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTMxNjMwNjE3NTAKKwkubG9uZwkwCisJLmxvbmcJMzIxNzAzMTE2OAorCS5sb25nCTI0MDc0MDMwOQorCS5sb25nCTEwNjgyNDQyNTUKKwkubG9uZwkzNDg5MDk0ODMyCisJLmxvbmcJMTA3MjY1Mjk1MQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTQzMjU3ODMKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTE5OTEwNDcyMTMKKwkubG9uZwkzMjE1MjM3MTY5CisJLmxvbmcJMTQ1NTgyODQ0MgorCS5sb25nCTEwNzI2MDI5NDUKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxNTUwNTA3MworCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMTY5OTA0Mzk1NworCS5sb25nCTEwNjk0MTg2MTMKKwkubG9uZwkzNDc2MTk2Njc4CisJLmxvbmcJMTA3MjUzMzYxMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTQyNTc2MzgKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTIxNDAxODM2MzAKKwkubG9uZwkxMDY3MjcyNzQ4CisJLmxvbmcJNDA1MTc0NjIyNQorCS5sb25nCTEwNzI0NDU2MTgKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMzE2MTkwNzM3NworCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjU5ODgwMDUxOQorCS5sb25nCTMyMTU3NTAwNjcKKwkubG9uZwk2ODg4MjQ3MzkKKwkubG9uZwkxMDcyMzM5ODE0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTA0MzE1MzYKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTI0ODU0MTc4MTYKKwkubG9uZwkzMjE3MTA5OTY0CisJLmxvbmcJMTc5NjU0NDMyMQorCS5sb25nCTEwNzIyMTcyMTYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYyNjg2OTQ1CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMzIxNzcxOTkyOQorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkxMDcyMDc5MDA2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MzI4Mjc0MAorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMTQwMzc1NzMwOQorCS5sb25nCTEwNzA0MDMwNzAKKwkubG9uZwk2MjEzNTQ0NTQKKwkubG9uZwkxMDcxOTI2NTE1CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxMzQ1MDYwMgorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTUzOTY2ODM0MAorCS5sb25nCTEwNjk5MTI2NzkKKwkubG9uZwk5Njc3MzE0MDAKKwkubG9uZwkxMDcxNzYxMjExCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTc1MjE1NworCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTk0NTc2ODU2OQorCS5sb25nCTEwNjk0MzE0MDAKKwkubG9uZwk5Mzk5ODAzNDcKKwkubG9uZwkxMDcxNTI0NzAxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxMjc5NjgwOQorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMjI1NTE5NzY0NworCS5sb25nCTEwNjg3Mjc0NTcKKwkubG9uZwkyNzk2NDY0NDgzCisJLmxvbmcJMTA3MTE1MjYxMAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTYwODc4MzE3CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyNDc2NTQ4Njk4CisJLmxvbmcJMTA2Nzg0NjYzNAorCS5sb25nCTc4NTc1MTgxNAorCS5sb25nCTEwNzA3NjUwNjIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMzE2MTgzODIyMQorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTgxMTUwNjcKKwkubG9uZwkxMDY2NjQyNjk0CisJLmxvbmcJMTAxMzU1Njc0NworCS5sb25nCTEwNzAxMzU0ODAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMzE2MDU2NzA2NQorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMzkzMDQ3MzQ1CisJLmxvbmcJMTA2NDU0ODY1NAorCS5sb25nCTMxNTY4NDk3MDgKKwkubG9uZwkxMDY5MDk0ODIyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNTgxODk4NDgKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMzkzMDQ3MzQ1CisJLmxvbmcJMTA2NDU0ODY1NAorCS5sb25nCTMxNTY4NDk3MDgKKwkubG9uZwkzMjE2NTc4NDcwCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTA3MDYyMDAKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE4MTE1MDY3CisJLmxvbmcJMTA2NjY0MjY5NAorCS5sb25nCTEwMTM1NTY3NDcKKwkubG9uZwkzMjE3NjE5MTI4CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwMTMwODM0MTcKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTI0NzY1NDg2OTgKKwkubG9uZwkxMDY3ODQ2NjM0CisJLmxvbmcJNzg1NzUxODE0CisJLmxvbmcJMzIxODI0ODcxMAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDE0MzU0NTczCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyMjU1MTk3NjQ3CisJLmxvbmcJMTA2ODcyNzQ1NworCS5sb25nCTI3OTY0NjQ0ODMKKwkubG9uZwkzMjE4NjM2MjU4CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTMzOTQ2NjkKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE5NDU3Njg1NjkKKwkubG9uZwkxMDY5NDMxNDAwCisJLmxvbmcJOTM5OTgwMzQ3CisJLmxvbmcJMzIxOTAwODM0OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjAyODA0NTcKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE1Mzk2NjgzNDAKKwkubG9uZwkxMDY5OTEyNjc5CisJLmxvbmcJOTY3NzMxNDAwCisJLmxvbmcJMzIxOTI0NDg1OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjMyMzU4MDUKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE0MDM3NTczMDkKKwkubG9uZwkxMDcwNDAzMDcwCisJLmxvbmcJNjIxMzU0NDU0CisJLmxvbmcJMzIxOTQxMDE2MworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjA5MzQyNTAKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTI1ODM0OTAzNTQKKwkubG9uZwkzMjE3NzE5OTI5CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTMyMTk1NjI2NTQKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1Nzk5MDkyCisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyNDg1NDE3ODE2CisJLmxvbmcJMzIxNzEwOTk2NAorCS5sb25nCTE3OTY1NDQzMjEKKwkubG9uZwkzMjE5NzAwODY0CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTIwMzI5NworCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjU5ODgwMDUxOQorCS5sb25nCTMyMTU3NTAwNjcKKwkubG9uZwk2ODg4MjQ3MzkKKwkubG9uZwkzMjE5ODIzNDYyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNTc5MTUxODQKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTIxNDAxODM2MzAKKwkubG9uZwkxMDY3MjcyNzQ4CisJLmxvbmcJNDA1MTc0NjIyNQorCS5sb25nCTMyMTk5MjkyNjYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTAxNDQyMzcyOQorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMTY5OTA0Mzk1NworCS5sb25nCTEwNjk0MTg2MTMKKwkubG9uZwkzNDc2MTk2Njc4CisJLmxvbmcJMzIyMDAxNzI1OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjE3NDEyODYKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTE5OTEwNDcyMTMKKwkubG9uZwkzMjE1MjM3MTY5CisJLmxvbmcJMTQ1NTgyODQ0MgorCS5sb25nCTMyMjAwODY1OTMKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE2Mjk4ODcyMQorCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMjQwNzQwMzA5CisJLmxvbmcJMTA2ODI0NDI1NQorCS5sb25nCTM0ODkwOTQ4MzIKKwkubG9uZwkzMjIwMTM2NTk5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MTgwOTQzMQorCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMjU3NTAzMDU2CisJLmxvbmcJMTA2NzE2NDAwNQorCS5sb25nCTI3NDgzOTI3NDIKKwkubG9uZwkzMjIwMTY2Nzk3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwMTU1NzgxMDIKKwkubG9uZwkwCisJLmxvbmcJMzIxNzAzMTE2OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjU3NTAzMDU2CisJLmxvbmcJMzIxNDY0NzY1MworCS5sb25nCTI3NDgzOTI3NDIKKwkubG9uZwkzMjIwMTY2Nzk3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwMTU1NzgxMDIKKwkubG9uZwkwCisJLmxvbmcJMTA2OTU0NzUyMAorCS5sb25nCTI0MDc0MDMwOQorCS5sb25nCTMyMTU3Mjc5MDMKKwkubG9uZwkzNDg5MDk0ODMyCisJLmxvbmcJMzIyMDEzNjU5OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjE4MDk0MzEKKwkubG9uZwkwCisJLmxvbmcJMTA3MDU5NjA5NgorCS5sb25nCTE5OTEwNDcyMTMKKwkubG9uZwkxMDY3NzUzNTIxCisJLmxvbmcJMTQ1NTgyODQ0MgorCS5sb25nCTMyMjAwODY1OTMKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE2Mjk4ODcyMQorCS5sb25nCTAKKwkubG9uZwkxMDcwNTk2MDk2CisJLmxvbmcJMTY5OTA0Mzk1NworCS5sb25nCTMyMTY5MDIyNjEKKwkubG9uZwkzNDc2MTk2Njc4CisJLmxvbmcJMzIyMDAxNzI1OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjE3NDEyODYKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTIxNDAxODM2MzAKKwkubG9uZwkzMjE0NzU2Mzk2CisJLmxvbmcJNDA1MTc0NjIyNQorCS5sb25nCTMyMTk5MjkyNjYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTAxNDQyMzcyOQorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjU5ODgwMDUxOQorCS5sb25nCTEwNjgyNjY0MTkKKwkubG9uZwk2ODg4MjQ3MzkKKwkubG9uZwkzMjE5ODIzNDYyCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNTc5MTUxODQKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTI0ODU0MTc4MTYKKwkubG9uZwkxMDY5NjI2MzE2CisJLmxvbmcJMTc5NjU0NDMyMQorCS5sb25nCTMyMTk3MDA4NjQKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1MjAzMjk3CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMTA3MDIzNjI4MQorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkzMjE5NTYyNjU0CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTc5OTA5MgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMTQwMzc1NzMwOQorCS5sb25nCTMyMTc4ODY3MTgKKwkubG9uZwk2MjEzNTQ0NTQKKwkubG9uZwkzMjE5NDEwMTYzCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MDkzNDI1MAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTUzOTY2ODM0MAorCS5sb25nCTMyMTczOTYzMjcKKwkubG9uZwk5Njc3MzE0MDAKKwkubG9uZwkzMjE5MjQ0ODU5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MzIzNTgwNQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTk0NTc2ODU2OQorCS5sb25nCTMyMTY5MTUwNDgKKwkubG9uZwk5Mzk5ODAzNDcKKwkubG9uZwkzMjE5MDA4MzQ5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MDI4MDQ1NworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjI1NTE5NzY0NworCS5sb25nCTMyMTYyMTExMDUKKwkubG9uZwkyNzk2NDY0NDgzCisJLmxvbmcJMzIxODYzNjI1OAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEzMzk0NjY5CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyNDc2NTQ4Njk4CisJLmxvbmcJMzIxNTMzMDI4MgorCS5sb25nCTc4NTc1MTgxNAorCS5sb25nCTMyMTgyNDg3MTAKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTAxNDM1NDU3MworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTgxMTUwNjcKKwkubG9uZwkzMjE0MTI2MzQyCisJLmxvbmcJMTAxMzU1Njc0NworCS5sb25nCTMyMTc2MTkxMjgKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTAxMzA4MzQxNworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMzkzMDQ3MzQ1CisJLmxvbmcJMzIxMjAzMjMwMgorCS5sb25nCTMxNTY4NDk3MDgKKwkubG9uZwkzMjE2NTc4NDcwCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTA3MDYyMDAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkzMjE3MzgwNjkzCisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDY1NDIzMTIxCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjc3OTk4OTMKKwkubG9uZwk0MzYzMTQxMzgKKwkubG9uZwkzMjA3MjAxMTg0CisJLmxvbmcJMzgxNzc0ODcxCisJLmxvbmcJMzIxMDEzMzg2OAorCS5sb25nCTI3NzM5Mjc3MzIKKwkubG9uZwkxMDUzMjM2NzA3CisJLmxvbmcJNDM2MzE0MTM4CisJLmxvbmcJMTA1NjU3MTgwOAorCS5sb25nCTQ0MjQ5OTA3MgorCS5sb25nCTEwMzI4OTM1MzcKKwkubG9uZwk0NDI0OTkwNzIKKwkubG9uZwkxMDMyODkzNTM3CisJLmxvbmcJMTQxMzQ4MDQ0OAorCS5sb25nCTEwNjkwOTc0NjcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTc3MTk3NzMzMQorCS5sb25nCTk5NjM1MDM0NgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTg0MTk0MDYxMQorCS5sb25nCTEwNzYxMjU0ODgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTI3NzQzNDg4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTEzMDM2NDkyOAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwMTUwMjE1NjgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkxMDcyNjkzMjQ3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkudHlwZQlzdGF0aWNfY29uc3RfdGFibGUsQG9iamVjdAorCS5zaXplCXN0YXRpY19jb25zdF90YWJsZSwyMjg4CisJLmRhdGEKKwkuaGlkZGVuIF9fbGlibV9zaW5jb3NfaHVnZQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Ni9zX3Rhbi5TIGIvbGlibS94ODYvc190YW4uUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zZWUyMTA3Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvc190YW4uUwpAQCAtMCwwICsxLDE3NjYgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyBQb2x5bm9taWFscyBjb2VmZmljaWVudHMgYW5kIG90aGVyIGNvbnN0YW50cy4KKy8vCisvLyBOb3RlIHRoYXQgaW4gdGhpcyBhbGdvcml0aG0sIHRoZXJlIGlzIGEgZGlmZmVyZW50IHBvbHlub21pYWwgZm9yCisvLyBlYWNoIGJyZWFrcG9pbnQsIHNvIHRoZXJlIGFyZSAzMiBzZXRzIG9mIHBvbHlub21pYWwgY29lZmZpY2llbnRzCisvLyBhcyB3ZWxsIGFzIDMyIGluc3RhbmNlcyBvZiB0aGUgb3RoZXIgY29uc3RhbnRzLgorLy8KKy8vIFRoZSBwb2x5bm9taWFsIGNvZWZmaWNpZW50cyBhbmQgY29uc3RhbnRzIGFyZSBvZmZzZXQgZnJvbSB0aGUgc3RhcnQKKy8vIG9mIHRoZSBtYWluIGJsb2NrIGFzIGZvbGxvd3M6CisvLworLy8gICAwOiAgYzggfCBjMAorLy8gIDE2OiAgYzkgfCBjMQorLy8gIDMyOiBjMTAgfCBjMgorLy8gIDQ4OiBjMTEgfCBjMworLy8gIDY0OiBjMTIgfCBjNAorLy8gIDgwOiBjMTMgfCBjNQorLy8gIDk2OiBjMTQgfCBjNgorLy8gMTEyOiBjMTUgfCBjNworLy8gMTI4OiBUX2hpCisvLyAxMzY6IFRfbG8KKy8vIDE0NDogU2lnbWEKKy8vIDE1MjogVF9obAorLy8gMTYwOiBUYXUKKy8vIDE2ODogTWFzaworLy8gMTc2OiAoZW5kIG9mIGJsb2NrKQorLy8KKy8vIFRoZSB0b3RhbCB0YWJsZSBzaXplIGlzIHRoZXJlZm9yZSA1NjMyIGJ5dGVzLgorLy8KKy8vIE5vdGUgdGhhdCBjMCBhbmQgYzEgYXJlIGFsd2F5cyB6ZXJvLiBXZSBjb3VsZCB0cnkgc3RvcmluZworLy8gb3RoZXIgY29uc3RhbnRzIGhlcmUsIGFuZCBqdXN0IGxvYWRpbmcgdGhlIGxvdyBwYXJ0IG9mIHRoZQorLy8gU0lNRCByZWdpc3RlciBpbiB0aGVzZSBjYXNlcywgYWZ0ZXIgZW5zdXJpbmcgdGhlIGhpZ2ggcGFydAorLy8gaXMgemVyby4KKy8vCisvLyBUaGUgaGlnaGVyIHRlcm1zIG9mIHRoZSBwb2x5bm9taWFsIGFyZSBjb21wdXRlZCBpbiB0aGUgKmxvdyoKKy8vIHBhcnQgb2YgdGhlIFNJTUQgcmVnaXN0ZXIuIFRoaXMgaXMgc28gd2UgY2FuIG92ZXJsYXAgdGhlCisvLyBtdWx0aXBsaWNhdGlvbiBieSByXjggYW5kIHRoZSB1bnBhY2tpbmcgb2YgdGhlIG90aGVyIHBhcnQuCisvLworLy8gVGhlIGNvbnN0YW50cyBhcmU6CisvLyBUX2hpICsgVF9sbyA9IGFjY3VyYXRlIGNvbnN0YW50IHRlcm0gaW4gcG93ZXIgc2VyaWVzCisvLyBTaWdtYSArIFRfaGwgPSBhY2N1cmF0ZSBjb2VmZmljaWVudCBvZiByIGluIHBvd2VyIHNlcmllcyAoU2lnbWE9MSBiaXQpCisvLyBUYXUgPSBtdWx0aXBsaWVyIGZvciB0aGUgcmVjaXByb2NhbCwgYWx3YXlzIC0xIG9yIDAKKy8vCisvLyBUaGUgYmFzaWMgcmVjb25zdHJ1Y3Rpb24gZm9ybXVsYSB1c2luZyB0aGVzZSBjb25zdGFudHMgaXM6CisvLworLy8gSGlnaCA9IHRhdSAqIHJlY2lwX2hpICsgdF9oaQorLy8gTWVkID0gKHNnbiAqIHIgKyB0X2hsICogcilfaGkKKy8vIExvdyA9IChzZ24gKiByICsgdF9obCAqIHIpX2xvICsKKy8vICAgICAgIHRhdSAqIHJlY2lwX2xvICsgVF9sbyArIChUX2hsICsgc2lnbWEpICogYyArIHBvbAorLy8KKy8vIHdoZXJlIHBvbCA9IGMwICsgYzEgKiByICsgYzIgKiByXjIgKyAuLi4gKyBjMTUgKiByXjE1CisvLworLy8gKGMwID0gYzEgPSAwLCBidXQgdXNpbmcgdGhlbSBrZWVwcyBTSU1EIHJlZ3VsYXJpdHkpCisvLworLy8gV2UgdGhlbiBkbyBhIGNvbXBlbnNhdGVkIHN1bSBIaWdoICsgTWVkLCBhZGQgdGhlIGxvdyBwYXJ0cyB0b2dldGhlcgorLy8gYW5kIHRoZW4gZG8gdGhlIGZpbmFsIHN1bS4KKy8vCisvLyBIZXJlIHJlY2lwX2hpICsgcmVjaXBfbG8gaXMgYW4gYWNjdXJhdGUgcmVjaXByb2NhbCBvZiB0aGUgcmVtYWluZGVyCisvLyBtb2R1bG8gcGkvMgorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgdGFuKE5hTikgPSBxdWlldCBOYU4sIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIHRhbihJTkYpID0gTmFOIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIHRhbigrLy0wKSA9ICsvLTAKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBzdGF0aWNfZnVuYworICAgICAgICAudGV4dAorICAgICAgICAuYWxpZ24gX19iaW9uaWNfYXNtX2FsaWduCisgICAgICAgIC50eXBlIHN0YXRpY19mdW5jLCBAZnVuY3Rpb24KK3N0YXRpY19mdW5jOgorLi5CMS4xOgorICAgICAgICBjYWxsICAgICAgLi5MMgorLi5MMjoKKyAgICAgICAgcG9wbCAgICAgICVlYXgKKyAgICAgICAgbGVhICAgICAgIF9HTE9CQUxfT0ZGU0VUX1RBQkxFXytbLiAtIC4uTDJdKCVlYXgpLCAlZWF4CisgICAgICAgIGxlYSAgICAgICBzdGF0aWNfY29uc3RfdGFibGVAR09UT0ZGKCVlYXgpLCAlZWF4CisgICAgICAgIHJldAorICAgICAgICAuc2l6ZSAgIHN0YXRpY19mdW5jLC4tc3RhdGljX2Z1bmMKKyMgLS0gRW5kICBzdGF0aWNfZnVuYworCisjIC0tIEJlZ2luICB0YW4KK0VOVFJZKHRhbikKKyMgcGFyYW1ldGVyIDE6IDggKyAlZWJwCisuLkIyLjE6CisuLkIyLjI6CisgICAgICAgIHB1c2hsICAgICAlZWJwCisgICAgICAgIG1vdmwgICAgICAlZXNwLCAlZWJwCisgICAgICAgIHN1YmwgICAgICAkMTIwLCAlZXNwCisgICAgICAgIG1vdmwgICAgICAlZWJ4LCA1NiglZXNwKQorICAgICAgICBjYWxsICAgICAgc3RhdGljX2Z1bmMKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlYngKKyAgICAgICAgbW92c2QgICAgIDEyOCglZXNwKSwgJXhtbTAKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTQzNjgsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyMjE2LCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBtb3ZhcGQgICAgNTg0MCglZWJ4KSwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIDU4NTYoJWVieCksICV4bW02CisgICAgICAgIHVucGNrbHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDU3MTIoJWVieCksICV4bW00CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgbW92YXBkICAgIDU2MzIoJWVieCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgb3JwZCAgICAgICV4bW00LCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgdW5wY2tocGQgICV4bW03LCAleG1tNworICAgICAgICBjdnR0c2Qyc2kgJXhtbTcsICVlZHgKKyAgICAgICAgY3Z0dHBkMmRxICV4bW0xLCAleG1tMQorICAgICAgICBjdnRkcTJwZCAgJXhtbTEsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIDU2NjQoJWVieCksICV4bW0zCisgICAgICAgIG1vdnNkICAgICA1NzI4KCVlYngpLCAleG1tNQorICAgICAgICBhZGRsICAgICAgJDQ2OTI0OCwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgNTY4MCglZWJ4KSwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMworICAgICAgICBhbmRsICAgICAgJDMxLCAlZWR4CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tNAorICAgICAgICBzaGxsICAgICAgJDEsICVlY3gKKyAgICAgICAgc3VicGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgNTY5NiglZWJ4KSwgJXhtbTEKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgc2hsbCAgICAgICQyLCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMgorICAgICAgICBzdWJwZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG1vdnNkICAgICA1NzQ0KCVlYngpLCAleG1tNgorICAgICAgICBzaGxsICAgICAgJDQsICVlZHgKKyAgICAgICAgbGVhICAgICAgICglZWJ4KSwgJWVheAorICAgICAgICBhbmRwZCAgICAgNTc3NiglZWJ4KSwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMworICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVheAorICAgICAgICBzdWJwZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIHVucGNraHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgZGl2c2QgICAgICV4bW01LCAleG1tNgorICAgICAgICBzdWJwZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAxNiglZWF4KSwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIHN1YnBkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDQ4KCVlYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICA5NiglZWF4KSwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgKCVlYXgpLCAleG1tNworICAgICAgICBhZGRwZCAgICAgMzIoJWVheCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgIDgwKCVlYXgpLCAleG1tNAorICAgICAgICBhZGRwZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdmFwZCAgICAxMTIoJWVheCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIG1vdmFwZCAgICA2NCglZWF4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdmFwZCAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG11bHBkICAgICAxNDQoJWVheCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tMworICAgICAgICBhZGRwZCAgICAgJXhtbTQsICV4bW03CisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICB1bnBja2hwZCAgJXhtbTcsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgdW5wY2tocGQgICV4bW0xLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTIsICV4bW00CisgICAgICAgIG1vdnNkICAgICAxNDQoJWVheCksICV4bW03CisgICAgICAgIHVucGNraHBkICAleG1tMiwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgIDE1MiglZWF4KSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBhZGRzZCAgICAgMTM2KCVlYXgpLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDU3NDQoJWVieCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDE2OCglZWF4KSwgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgICV4bW02LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIG11bHNkICAgICAxNjAoJWVheCksICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgIDEyOCglZWF4KSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIG1vdmFwZCAgICAleG1tMywgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgZmxkbCAgICAgICglZXNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorICAgICAgICBqZyAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKyAgICAgICAgc2hybCAgICAgICQ0LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMjY4NDM0NTU4LCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG11bHNkICAgICA1ODA4KCVlYngpLCAleG1tMworLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIG1vdnNkICAgICA1NzkyKCVlYngpLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgIDU4MDgoJWVieCksICV4bW0zCisgICAgICAgIG1vdnNkICAgICAleG1tMywgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgbW92cSAgICAgIDU3MTIoJWVieCksICV4bW03CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tNworICAgICAgICB1Y29taXNkICAgNTc2MCglZWJ4KSwgJXhtbTcKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIHN1YmwgICAgICAkMzIsICVlc3AKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJWVzcCkKKyAgICAgICAgbGVhICAgICAgIDQwKCVlc3ApLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCA4KCVlc3ApCisgICAgICAgIG1vdmwgICAgICAkMiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgMTIoJWVzcCkKKyAgICAgICAgY2FsbCAgICAgIF9fbGlibV90YW5jb3RfaHVnZQorICAgICAgICBhZGRsICAgICAgJDMyLCAlZXNwCisgICAgICAgIGZsZGwgICAgICA4KCVlc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgKCVlc3ApCisgICAgICAgIGZsZGwgICAgICAoJWVzcCkKKyAgICAgICAgZnN1YmwgICAgICglZXNwKQorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIG1vdmwgICAgICA1NiglZXNwKSwgJWVieAorICAgICAgICBtb3ZsICAgICAgJWVicCwgJWVzcAorICAgICAgICBwb3BsICAgICAgJWVicAorICAgICAgICByZXQgICAgICAgCisuLkIyLjM6CitFTkQodGFuKQorIyAtLSBFbmQgIHRhbgorCisjIFN0YXJ0IGZpbGUgc2NvcGUgQVNNCitBTElBU19TWU1CT0wodGFubCwgdGFuKTsKKyMgRW5kIGZpbGUgc2NvcGUgQVNNCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitzdGF0aWNfY29uc3RfdGFibGU6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIyODQ1ODkzMDYKKwkubG9uZwkxMDY2ODIwODUyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTQ0MTE4NjM2NQorCS5sb25nCTEwNjU0OTQyNDMKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA3MDk0NTYyMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMzYyODk1MDQKKwkubG9uZwkxMDY0MTM1OTk3CisJLmxvbmcJMjg2MzMxMTUzCisJLmxvbmcJMTA2OTYxNzQyNQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTYwNDc2MTMxCisJLmxvbmcJMTA2MjcyMjEwMgorCS5sb25nCTQ2MzU4Mzc3MgorCS5sb25nCTEwNjgyMTI2NjYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMzEzMDM4MjM1CisJLmxvbmcJMTA2Njc0NTczMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTAxMzg3ODM0MgorCS5sb25nCTEwNjcxNTI2MTgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM2NjM0MjY4MzMKKwkubG9uZwkxMDY1NzI1MjgzCisJLmxvbmcJMzY5MzI4NDI1MQorCS5sb25nCTEwNjkxMTg4MDgKKwkubG9uZwk2NTA4NTIyMzIKKwkubG9uZwkxMDY1ODgyMzc2CisJLmxvbmcJMTk5NjI0NTM4MQorCS5sb25nCTEwNzEwMDAyNjUKKwkubG9uZwkyMDA4NzQ2MTcwCisJLmxvbmcJMTA2NDY2NDE5NworCS5sb25nCTMwNTU4NDI1OTMKKwkubG9uZwkxMDY4NTc4ODQ2CisJLmxvbmcJMTQ5NTQwNjM0OAorCS5sb25nCTEwNjQ2NTI0MzcKKwkubG9uZwkyMjY5NTMwMTU3CisJLmxvbmcJMTA2OTcxMTIzNQorCS5sb25nCTI4NTU2MzY5NgorCS5sb25nCTEwNjM1NzY0NjUKKwkubG9uZwkxMDQ2ODk3NDQwCisJLmxvbmcJMTA2NzcwNTg2NQorCS5sb25nCTIzMzQyOTczMQorCS5sb25nCTEwNjM0NTMxNTEKKwkubG9uZwk1MjIwNDU5NTgKKwkubG9uZwkxMDY4NDc2NTkwCisJLmxvbmcJMjM1NDc4NTY5OAorCS5sb25nCTEwNjkxMDI3NzkKKwkubG9uZwkxMzE3NTk5MTQxCisJLmxvbmcJMTAxMjQzMjEzMworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjgyODIzMDEwNQorCS5sb25nCTEwNjU2MDY2MjYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTUxMjU0NTk1NQorCS5sb25nCTEwNjgxMTkwNDcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTExMjcwNDg2OTgKKwkubG9uZwkxMDY3OTA5NDU5CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMzAwMjAwNDUwCisJLmxvbmcJMTA2NzI1NDc2NworCS5sb25nCTM1OTMyNTAyOTYKKwkubG9uZwkxMDcwMjMzNTYxCisJLmxvbmcJMzAwOTM2NTU0NAorCS5sb25nCTEwNjY5MDIxMTcKKwkubG9uZwkxMTI3MzczMDUwCisJLmxvbmcJMTA3MTE3MzQ1NworCS5sb25nCTMwNDYxMDMzMDUKKwkubG9uZwkxMDY2MzcxMjk5CisJLmxvbmcJMjQ1ODM0MDIKKwkubG9uZwkxMDY5NzIzOTg4CisJLmxvbmcJNDA4MjUxMTc1OAorCS5sb25nCTEwNjU5MTQxOTkKKwkubG9uZwkzMjIzODg5Njk5CisJLmxvbmcJMTA3MDAyMDM2NworCS5sb25nCTU0ODkyNzk4NAorCS5sb25nCTEwNjU0MTU3NTYKKwkubG9uZwk1NTgwNjU4OTcKKwkubG9uZwkxMDY4OTQ5NDE4CisJLmxvbmcJNjgwMDczMzE1CisJLmxvbmcJMTA2NDk0MDcyNgorCS5sb25nCTM4ODg3MzIwMAorCS5sb25nCTEwNjg5NDQyNzAKKwkubG9uZwkzNzYzNjc5NTc2CisJLmxvbmcJMTA3MDE2NzU0MQorCS5sb25nCTE0OTczNjA0MDQKKwkubG9uZwkxMDA5NzEwNTQ3CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwk2NDkzMTE1MgorCS5sb25nCTEwNjc3Mjk0MTEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjQ2NzU4Mjc4MgorCS5sb25nCTEwNjkyNTYzODkKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE2MjE1MDA5NgorCS5sb25nCTEwNjg5NDY0MjAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM3MDI3OTQyMzcKKwkubG9uZwkxMDY4NTc5MTUyCisJLmxvbmcJMzYzMTkxOTI5MQorCS5sb25nCTEwNzA5MzY5MjYKKwkubG9uZwkzNDU2ODIxNDEzCisJLmxvbmcJMTA2ODIxNzIxOAorCS5sb25nCTIwMzEzNjY0MzgKKwkubG9uZwkxMDcxNDk1NzQ1CisJLmxvbmcJMTU5NjY2NDAyMAorCS5sb25nCTEwNjc3OTkyODEKKwkubG9uZwkxNTA5MDM4NzAxCisJLmxvbmcJMTA3MDYwMTY0MworCS5sb25nCTU4MzE3MTQ3NworCS5sb25nCTEwNjc1MTAxNDgKKwkubG9uZwkzNzg1MzQ0NjgyCisJLmxvbmcJMTA3MDYxODQ3NgorCS5sb25nCTI0MDIwMzYwNDgKKwkubG9uZwkxMDY3MDc1NzM2CisJLmxvbmcJMzIzMzAxODQxMgorCS5sb25nCTEwNjk5MTMxODYKKwkubG9uZwk0MTEyODA1NjgKKwkubG9uZwkxMDY2NzEwNTU2CisJLmxvbmcJMTA2NTU4NDE5MgorCS5sb25nCTEwNjk3NDc4OTYKKwkubG9uZwk4OTUyNDczMjQKKwkubG9uZwkxMDcwODE5ODQ4CisJLmxvbmcJNTAwMDc4OTA5CisJLmxvbmcJMzE2MTI4ODc4MQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJNzI5OTgzODQzCisJLmxvbmcJMTA2ODk5NDE5NAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxNDU4Nzk0NTYyCisJLmxvbmcJMTA3MDM5ODU1MAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjg1Nzc3NzQ4OQorCS5sb25nCTEwNzAxMzc2MzcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwMjQzNTk1MTcKKwkubG9uZwkxMDY5ODc2NTMxCisJLmxvbmcJMjYxNjA0MDIzOAorCS5sb25nCTEwNzE1ODI5MzcKKwkubG9uZwkxNjA5MDI0NjM2CisJLmxvbmcJMTA2OTY3NTA4OAorCS5sb25nCTI1MjkyNDA1NDkKKwkubG9uZwkxMDcxODM2NjMzCisJLmxvbmcJMTUxMDEyODYwMAorCS5sb25nCTEwNjk0NDAxMTMKKwkubG9uZwkyMjUxNjk3MTg0CisJLmxvbmcJMTA3MTI1MzY4NworCS5sb25nCTEyNjI3NjE0NTMKKwkubG9uZwkxMDY5MTQyODUwCisJLmxvbmcJMTI2MzA5MTg1NworCS5sb25nCTEwNzExOTA0NjEKKwkubG9uZwkzMDQzMzgzNDg2CisJLmxvbmcJMTA2ODg4NTE5MQorCS5sb25nCTI0NzY5MzI0NzAKKwkubG9uZwkxMDcwODQyMDAyCisJLmxvbmcJMzY1OTk5NTAyOAorCS5sb25nCTEwNjg2NjkyMDAKKwkubG9uZwk4NTU4OTE3NTUKKwkubG9uZwkxMDcwNjk2ODk0CisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTEwNzEyODQ4NTcKKwkubG9uZwkzMDYyNjMzNTc1CisJLmxvbmcJMTAxNDAwODYyMworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjU1MDk0MDQ3MQorCS5sb25nCTEwNjk5MzgyMDEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzQyMjgwNzI5NworCS5sb25nCTEwNzE2NDA4NDcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTExNTE2NTgwNTMKKwkubG9uZwkxMDcxNDk0NzE1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk5Mjk2MDcwNzEKKwkubG9uZwkxMDcxMzQ2MzQwCisJLmxvbmcJMTAzNzA0OTAzNAorCS5sb25nCTEwNzIwMzczMDUKKwkubG9uZwkyNzg2OTI4NjU3CisJLmxvbmcJMTA3MTIxNTI4MgorCS5sb25nCTE0NDc0MDY4NTkKKwkubG9uZwkxMDcyMjY1MjA5CisJLmxvbmcJMzQ5MDk1MjEwNworCS5sb25nCTEwNzEwOTA4NTEKKwkubG9uZwkzMjA1MjMyOTE2CisJLmxvbmcJMTA3MTk2ODY1OAorCS5sb25nCTEyOTczNDQzMDQKKwkubG9uZwkxMDcwOTc3MTIwCisJLmxvbmcJMTA2NjExMDk3NgorCS5sb25nCTEwNzE5NDYwMzUKKwkubG9uZwkzODAzNzIxNDgwCisJLmxvbmcJMTA3MDg3MTA4MgorCS5sb25nCTE0OTY3NTQyMjkKKwkubG9uZwkxMDcxODA3MjAxCisJLmxvbmcJMjk4MjU1MDY4MworCS5sb25nCTEwNzA3NzMyNDMKKwkubG9uZwk0MDE0NDQxOTg5CisJLmxvbmcJMTA3MTczNjIyMgorCS5sb25nCTQxOTk2ODIzNgorCS5sb25nCTEwNzE3MTcwNDcKKwkubG9uZwkzNDUxMjY2NTM4CisJLmxvbmcJMzE2MzQ0NDgxMQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjk2MDI2NzIzNQorCS5sb25nCTEwNzA3NDU4NDEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNzI0MzIyNzY4CisJLmxvbmcJMTA3Mjg4MTMwOAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNjQzMTUzMDQ4CisJLmxvbmcJMTA3MjkwNTgxNgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDI4NTA3OTQ1OAorCS5sb25nCTEwNzI5Mjg1NTgKKwkubG9uZwkzOTEyNTI0NzMzCisJLmxvbmcJMTA3MjYyMjk4MworCS5sb25nCTExODM2MjI3MgorCS5sb25nCTEwNzI5NTI3NTQKKwkubG9uZwk0MTA3NzY3OTcyCisJLmxvbmcJMTA3MjgyNzQwOAorCS5sb25nCTI2ODk1MDI4ODMKKwkubG9uZwkxMDcyOTc2OTIyCisJLmxvbmcJOTQ2NTIzMzQ3CisJLmxvbmcJMTA3Mjc3Mjc2NgorCS5sb25nCTU3MzIwNDE4OQorCS5sb25nCTEwNzMwMDE3NjEKKwkubG9uZwk1ODE1MzE1MTgKKwkubG9uZwkxMDcyODI2MzkxCisJLmxvbmcJMTM4NjIzNjUyNgorCS5sb25nCTEwNzMwMjY5NTkKKwkubG9uZwkzNzE4OTA1OTA1CisJLmxvbmcJMTA3MjgzMjgyMworCS5sb25nCTExNDU1NTgxNDAKKwkubG9uZwkxMDczMDUyNjczCisJLmxvbmcJNTEzNTcyNjM3CisJLmxvbmcJMTA3Mjg2MTk2OQorCS5sb25nCTcxNjcwMDA0OAorCS5sb25nCTEwNzE5OTczNjgKKwkubG9uZwk1NDcxMjY3NjkKKwkubG9uZwkxMDE1NTIzNTI1CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxMDk3OTA3Mzk4CisJLmxvbmcJMTA3MTQyMDEyMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMzQ5ODkyNDQyCisJLmxvbmcJMTA3NDI5MDIxMgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzkxMzE5NzQwNQorCS5sb25nCTEwNzQ1MDExODEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI0OTQwMzQ1MjIKKwkubG9uZwkxMDc0NzM5MTcwCisJLmxvbmcJMTI2NDczODc2MworCS5sb25nCTEwNzMwODQ4MDQKKwkubG9uZwkxNTIwMjkzOTA2CisJLmxvbmcJMTA3NDg5OTYzMgorCS5sb25nCTE5NTg5MzY2MDAKKwkubG9uZwkxMDczNDExNDkzCisJLmxvbmcJMjEzMzY0OTYzNQorCS5sb25nCTEwNzUwNTIxNzEKKwkubG9uZwk0MjcwNzQwNzMwCisJLmxvbmcJMTA3MzU3NDcwOAorCS5sb25nCTE3Mjg5MzAxODkKKwkubG9uZwkxMDc1MjI0ODQ0CisJLmxvbmcJMTMwMzk5ODU1MgorCS5sb25nCTEwNzM3OTkxODYKKwkubG9uZwk2MTg2MTE5MzMKKwkubG9uZwkxMDc1NDIwMjU1CisJLmxvbmcJMTc2OTgyODA0NgorCS5sb25nCTEwNzM5Mzg1NDIKKwkubG9uZwkyMjAwNTM3OTg2CisJLmxvbmcJMTA3NTY0MTQyMQorCS5sb25nCTQzMzM2MTExMAorCS5sb25nCTEwNzQxMDUzNjkKKwkubG9uZwk3MTk1OTU2MDAKKwkubG9uZwkxMDcyMzE3MTg0CisJLmxvbmcJMjk0NTI3MjA2CisJLmxvbmcJMzE2MjE0MDA4OAorCS5sb25nCTAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMzgxMTc4ODIxNgorCS5sb25nCTMyMTg0MDA1NTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTcwNDM1MjEwMgorCS5sb25nCTEwNzU5NDMwMDEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIyODQ1ODkzMDYKKwkubG9uZwkxMDc2MjU4MDM2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjExMjY0MjkxCisJLmxvbmcJMTA3NjY1OTAxMAorCS5sb25nCTAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTQ0MTE4NjM2NQorCS5sb25nCTEwNzcwMjg1NzkKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA3NDA5MTM0OQorCS5sb25nCTg3Njk0MzY3MworCS5sb25nCTEwNzczNTM2MjIKKwkubG9uZwkyODYzMzExNTMxCisJLmxvbmcJMTA3NDQ0MDg3NAorCS5sb25nCTIzNjI4OTUwNAorCS5sb25nCTEwNzc3Njc0ODUKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDc0ODYwMzA1CisJLmxvbmcJMjgwNTQ3MzMxMQorCS5sb25nCTEwNzgxMTUyNzgKKwkubG9uZwk5NTQ0MzcxOAorCS5sb25nCTEwNzUxNjMyMjcKKwkubG9uZwkxMTYwNDc2MTMxCisJLmxvbmcJMTA3ODQ1MDc0MgorCS5sb25nCTQ2MzU4Mzc3MgorCS5sb25nCTEwNzU1NTI2OTgKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMzMwMTY1OTcxCisJLmxvbmcJMzIwNzg1MDc0NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE3NTM2NjIzCisJLmxvbmcJMTA1OTEwOTA5OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzQ5MjEyMDg0OQorCS5sb25nCTMyMDUxNTE0NzUKKwkubG9uZwk2MDIxODU3MDUKKwkubG9uZwkzMjE1Njc4MDkyCisJLmxvbmcJNzYwNDIyOTU4CisJLmxvbmcJMTA1NjMxMjU5NworCS5sb25nCTU1NTEyNzg4OQorCS5sb25nCTEwNjc1NDUyNjYKKwkubG9uZwkzMTM5Nzg0MTI0CisJLmxvbmcJMzIwMjQ3MDgzNworCS5sb25nCTM2OTA1NDQwMTQKKwkubG9uZwkzMjEzMTUwMTcxCisJLmxvbmcJOTU3MDc5MTUKKwkubG9uZwkxMDUzNjM1NDI4CisJLmxvbmcJNDAwMzExNDQwNworCS5sb25nCTEwNjQ1ODE0MTIKKwkubG9uZwkyMDM0OTI2MjMxCisJLmxvbmcJMzE5OTcxMTE2MQorCS5sb25nCTM3NTk1MzYwMjMKKwkubG9uZwkzMjEwNTU5OTg5CisJLmxvbmcJMzgyNjkyODIxNAorCS5sb25nCTEwNTA4OTM4MTkKKwkubG9uZwkzODM3OTYwNzg1CisJLmxvbmcJMTA2MTc5MDM3OQorCS5sb25nCTE1MjYzMjUyNDgKKwkubG9uZwkzMjE3OTY3NTY2CisJLmxvbmcJMjM1NjQyNjUyMQorCS5sb25nCTEwMjU0MjM0NTYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQ1NzcyODk3NQorCS5sb25nCTEwNzEwODgyNzYKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMTM5ODQ2MjYwOAorCS5sb25nCTMyMDczMDM5NjgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI2MjA1OTgzCisJLmxvbmcJMTA1ODQ2MTIxMworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNTYyMjYyMzgKKwkubG9uZwkzMjA0NTI4NjEyCisJLmxvbmcJMjc1NDcwNjU0MQorCS5sb25nCTMyMTUzNTk1MTEKKwkubG9uZwkyMTg3Nzk5ODIzCisJLmxvbmcJMTA1NTYzNDQzNworCS5sb25nCTc5MDMyMzc0MgorCS5sb25nCTEwNjc0MDI1ODcKKwkubG9uZwkxMzcyMzg1ODQ4CisJLmxvbmcJMzIwMTY1MTQ3OQorCS5sb25nCTQwOTcyOTI3MTYKKwkubG9uZwkzMjEyODU2MzAyCisJLmxvbmcJMzM0ODIxMDM1NworCS5sb25nCTEwNTI4MzAwOTkKKwkubG9uZwkyNDQyNzk2NDY2CisJLmxvbmcJMTA2NDMzNzYwMgorCS5sb25nCTg2MjYwODE0MgorCS5sb25nCTMxOTg4MzA3NTQKKwkubG9uZwkxNzAyOTYxNTIKKwkubG9uZwkzMjEwMDYwODY3CisJLmxvbmcJMzc1NTU3MTQyOAorCS5sb25nCTEwNDk5MzMzNDMKKwkubG9uZwkzNjE0ODY2MDA4CisJLmxvbmcJMTA2MTM2MTY3MAorCS5sb25nCTcxOTk3ODQ5NgorCS5sb25nCTMyMTc2NjkwOTYKKwkubG9uZwkxOTk4ODQyNDY1CisJLmxvbmcJMzE3NDcwMzk3NworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzc0OTE1NjYwNworCS5sb25nCTEwNzEwNDgyNTgKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMzEyMDQ5ODYzOAorCS5sb25nCTMyMDY3NDkzMDQKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI3NzM1NzgxMTQKKwkubG9uZwkxMDU4MDA5MzEyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMDMwNzgzNjc2CisJLmxvbmcJMzIwMzgxNzg3MworCS5sb25nCTIyMjM2NTQ1OTgKKwkubG9uZwkzMjE1MDcxOTM2CisJLmxvbmcJMjk3NjEzNDY1MAorCS5sb25nCTEwNTQ5ODcyNDQKKwkubG9uZwk3MDYzOTAwNjYKKwkubG9uZwkxMDY3MjE3Mzg2CisJLmxvbmcJNDI1ODQzNzYxNQorCS5sb25nCTMyMDA5MDAzNzgKKwkubG9uZwkxMDY2MjUyOTc1CisJLmxvbmcJMzIxMjM5MTI2NworCS5sb25nCTgxNTc3NzUxNAorCS5sb25nCTEwNTE5ODk0NjIKKwkubG9uZwkzMjAyNzQ1NDU3CisJLmxvbmcJMTA2NDAxMDY4MgorCS5sb25nCTI0OTM1NTYzNzUKKwkubG9uZwkzMTk4MDA0NzUzCisJLmxvbmcJMTA0NjI0MzI1MQorCS5sb25nCTMyMDk2Nzg5NzEKKwkubG9uZwkyNTkzMDc4ODQ2CisJLmxvbmcJMTA0OTAxNzcxNworCS5sb25nCTI3NjM5NjIyNzYKKwkubG9uZwkxMDYwOTcwMTYxCisJLmxvbmcJNzAxNDgwOTYwCisJLmxvbmcJMzIxNzM3Nzc0MgorCS5sb25nCTMyMDU4NjIyMzIKKwkubG9uZwkzMTc0NjYwOTE1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjY3MDE2ODEyCisJLmxvbmcJMTA3MTAxNTY2NAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkyMTA3MTU1Nzk4CisJLmxvbmcJMzIwNjE2Njg3MgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjY0Mjk5MjEyOQorCS5sb25nCTEwNTc0MjQ1NzgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE5MzY5OTI4MTEKKwkubG9uZwkzMjAzMjA0NDI2CisJLmxvbmcJMTQ4NTA2MzU1OQorCS5sb25nCTMyMTQ2ODI2NDMKKwkubG9uZwkxNDMyOTE0NTUzCisJLmxvbmcJMTA1NDMxOTM5OAorCS5sb25nCTM5OTYzODE2NTQKKwkubG9uZwkxMDY3MDc1ODI4CisJLmxvbmcJMjgzMzAyOTI1NgorCS5sb25nCTMyMDAyMjM1NDUKKwkubG9uZwkyODY2MDY2ODcyCisJLmxvbmcJMzIxMTk4MjY2MgorCS5sb25nCTI0MzI4ODg3MzcKKwkubG9uZwkxMDUxMjM0MTc4CisJLmxvbmcJMzY2OTc2NDU1OQorCS5sb25nCTEwNjM3NDgxMzYKKwkubG9uZwkyNDU4NDk2OTUyCisJLmxvbmcJMzE5NzE3MDc3NAorCS5sb25nCTE5NDgyMzQ5ODkKKwkubG9uZwkzMjA5MDk4MTQ3CisJLmxvbmcJMjg0MzY5ODc4NworCS5sb25nCTEwNDgxNjM1MTkKKwkubG9uZwkzMzk4MDQxNDA3CisJLmxvbmcJMTA2MDU1OTcyOAorCS5sb25nCTI4MjkyMzAwODAKKwkubG9uZwkzMjE3MDkyMTE1CisJLmxvbmcJMTAzNDA0NjQzMworCS5sb25nCTMxNzQyNzE5MDMKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI5ODY3NTMwNQorCS5sb25nCTEwNzA5ODk4MjEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJNDM3NjAzMjIzCisJLmxvbmcJMzIwNTU4OTc2MQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNzU5MzMwMzUyCisJLmxvbmcJMTA1NzA0ODUxMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzEwNzQ2MzM2OAorCS5sb25nCTMyMDI1MDc5ODgKKwkubG9uZwkzMTQ0NDY1MTc2CisJLmxvbmcJMzIxNDE5MTUwMAorCS5sb25nCTIyOTA5NjE4MTAKKwkubG9uZwkxMDUzODQxMDM1CisJLmxvbmcJMTYxODE1MzM0MAorCS5sb25nCTEwNjY5NzE1NDcKKwkubG9uZwkzODM2ODY5MzkzCisJLmxvbmcJMzE5OTQwMDI3MgorCS5sb25nCTU4NDAzMjExNgorCS5sb25nCTMyMTE0NjkyNjEKKwkubG9uZwkxMjQ1NzA0MzU4CisJLmxvbmcJMTA1MDYyNjQ2MgorCS5sb25nCTQyNDc0ODc0MzgKKwkubG9uZwkxMDYzNTYxOTQzCisJLmxvbmcJMTY2OTAzNDkyNworCS5sb25nCTMxOTYyNzQ4MTIKKwkubG9uZwkzODQ0MjMzNDk4CisJLmxvbmcJMzIwODYyNjMyMgorCS5sb25nCTI3MDY5NTg1MjQKKwkubG9uZwkxMDQ3NDExMzc0CisJLmxvbmcJMzg1NzE5OTA5OAorCS5sb25nCTEwNjAyODE2NDcKKwkubG9uZwkzNTkzOTA0MTI4CisJLmxvbmcJMzIxNjU5MDcxOQorCS5sb25nCTMyNjc1NDc4MzYKKwkubG9uZwkzMTcyMTYzMzIxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0MDc2NzEyMjI3CisJLmxvbmcJMTA3MDk3MDIxNAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkzMjkwMDkwMzQwCisJLmxvbmcJMzIwNDc5MzQ4NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzY4NTc2MDM2NworCS5sb25nCTEwNTY2NjgzNzAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI2NTUxNjM5NDkKKwkubG9uZwkzMjAxNjc0OTE3CisJLmxvbmcJNjI4NzUwNTc1CisJLmxvbmcJMzIxMzU2Njg3MgorCS5sb25nCTY4MDE0MDUwNQorCS5sb25nCTEwNTMyOTk3NzcKKwkubG9uZwkyOTU0NDY0NzA5CisJLmxvbmcJMTA2NjkwMDAyNgorCS5sb25nCTgwMzIwMTYxOQorCS5sb25nCTMxOTg1MTY0MzUKKwkubG9uZwkxNDY2MzE1NjMxCisJLmxvbmcJMzIxMDgzNzE2MgorCS5sb25nCTE2MTEyMjAxNjMKKwkubG9uZwkxMDQ5OTcyNDM4CisJLmxvbmcJMjc2NjE4NzI1NgorCS5sb25nCTEwNjM0Mzc4OTQKKwkubG9uZwkxODA0NTc5NDg0CisJLmxvbmcJMzE5NTMzMTQ5MQorCS5sb25nCTM2OTU5NjkyODkKKwkubG9uZwkzMjA3ODU0NDE4CisJLmxvbmcJMjYxNzIzODM3MworCS5sb25nCTEwNDY2NzU5NDgKKwkubG9uZwkzMDk1ODMwMDg0CisJLmxvbmcJMTA2MDA5NTMzNAorCS5sb25nCTM3ODk1NzAwNDgKKwkubG9uZwkzMjE2MDM0OTE0CisJLmxvbmcJMjM4MjY1NTkKKwkubG9uZwkzMTcyMDQ4MDYwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzODcwOTM5Mzg2CisJLmxvbmcJMTA3MDk1NjQ2NworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkxNTcxNzU4NzU4CisJLmxvbmcJMzIwMzY3MjUzNQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTEzMDI2MzczCisJLmxvbmcJMTA1NjQxNjM4MQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTkxMzc2NjI5OAorCS5sb25nCTMyMDA1MjMzMjYKKwkubG9uZwkyNTA3MDY4NzM0CisJLmxvbmcJMzIxMjUwMjAwNAorCS5sb25nCTQwMDA2NDg4MTgKKwkubG9uZwkxMDUzMDAzODAzCisJLmxvbmcJMjQ0NjYwNzM0OQorCS5sb25nCTEwNjY4NTgyNTkKKwkubG9uZwk5MTI2NjIxMjQKKwkubG9uZwkzMTk3MzMzMDAxCisJLmxvbmcJMTM0OTQ4OTUzNworCS5sb25nCTMyMDk3NjU2MDgKKwkubG9uZwkzNDEyOTcyNjA3CisJLmxvbmcJMTA0OTY0MTQwMQorCS5sb25nCTE3MjEyODMzMjcKKwkubG9uZwkxMDYzMzY2ODU1CisJLmxvbmcJMTQ2NjY5MTg4MworCS5sb25nCTMxOTQxMTY3NDYKKwkubG9uZwkzODUyNTI4MDkyCisJLmxvbmcJMzIwNjc2MDg2MQorCS5sb25nCTI4NTQ0MzI5MworCS5sb25nCTEwNDYxNTgzODAKKwkubG9uZwkxNzU4NzM5ODk0CisJLmxvbmcJMTA1OTg5NTQ0OQorCS5sb25nCTE4NTg3ODExODQKKwkubG9uZwkzMjE0OTg0MjEyCisJLmxvbmcJMzQ0NzU3NTk0OAorCS5sb25nCTEwMjQ2NzU4NTUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIyNDIwMzgwMTEKKwkubG9uZwkxMDcwOTQ4MzIwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk3Mzc2MTE0NTQKKwkubG9uZwkxMDU2MzM2NTI3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzU5NDc5MDUyNworCS5sb25nCTEwNTI5MTE2MjEKKwkubG9uZwkzODE3NzQ4NzEKKwkubG9uZwkxMDY2ODQ0NTI0CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTMzMDMwNTE2MTgKKwkubG9uZwkxMDQ5NDU2MDUwCisJLmxvbmcJMzE1NDE4NzYyMworCS5sb25nCTEwNjMzNDM3MjIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNTI4MDYxNzg4CisJLmxvbmcJMTA0NTk0NDkxMAorCS5sb25nCTI0Njk3MTk4MTkKKwkubG9uZwkxMDU5ODMxMTU5CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNzA5NDU2MjEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMTU3MTc1ODc1OAorCS5sb25nCTEwNTYxODg4ODcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTExMzAyNjM3MworCS5sb25nCTEwNTY0MTYzODEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE5MTM3NjYyOTgKKwkubG9uZwkxMDUzMDM5Njc4CisJLmxvbmcJMjUwNzA2ODczNAorCS5sb25nCTEwNjUwMTgzNTYKKwkubG9uZwk0MDAwNjQ4ODE4CisJLmxvbmcJMTA1MzAwMzgwMworCS5sb25nCTI0NDY2MDczNDkKKwkubG9uZwkxMDY2ODU4MjU5CisJLmxvbmcJOTEyNjYyMTI0CisJLmxvbmcJMTA0OTg0OTM1MworCS5sb25nCTEzNDk0ODk1MzcKKwkubG9uZwkxMDYyMjgxOTYwCisJLmxvbmcJMzQxMjk3MjYwNworCS5sb25nCTEwNDk2NDE0MDEKKwkubG9uZwkxNzIxMjgzMzI3CisJLmxvbmcJMTA2MzM2Njg1NQorCS5sb25nCTE0NjY2OTE4ODMKKwkubG9uZwkxMDQ2NjMzMDk4CisJLmxvbmcJMzg1MjUyODA5MgorCS5sb25nCTEwNTkyNzcyMTMKKwkubG9uZwkyODU0NDMyOTMKKwkubG9uZwkxMDQ2MTU4MzgwCisJLmxvbmcJMTc1ODczOTg5NAorCS5sb25nCTEwNTk4OTU0NDkKKwkubG9uZwkxODU4NzgxMTg0CisJLmxvbmcJMTA2NzUwMDU2NAorCS5sb25nCTM0NDc1NzU5NDgKKwkubG9uZwkzMTcyMTU5NTAzCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjQyMDM4MDExCisJLmxvbmcJMTA3MDk0ODMyMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkzMjkwMDkwMzQwCisJLmxvbmcJMTA1NzMwOTgzNworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzY4NTc2MDM2NworCS5sb25nCTEwNTY2NjgzNzAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI2NTUxNjM5NDkKKwkubG9uZwkxMDU0MTkxMjY5CisJLmxvbmcJNjI4NzUwNTc1CisJLmxvbmcJMTA2NjA4MzIyNAorCS5sb25nCTY4MDE0MDUwNQorCS5sb25nCTEwNTMyOTk3NzcKKwkubG9uZwkyOTU0NDY0NzA5CisJLmxvbmcJMTA2NjkwMDAyNgorCS5sb25nCTgwMzIwMTYxOQorCS5sb25nCTEwNTEwMzI3ODcKKwkubG9uZwkxNDY2MzE1NjMxCisJLmxvbmcJMTA2MzM1MzUxNAorCS5sb25nCTE2MTEyMjAxNjMKKwkubG9uZwkxMDQ5OTcyNDM4CisJLmxvbmcJMjc2NjE4NzI1NgorCS5sb25nCTEwNjM0Mzc4OTQKKwkubG9uZwkxODA0NTc5NDg0CisJLmxvbmcJMTA0Nzg0Nzg0MworCS5sb25nCTM2OTU5NjkyODkKKwkubG9uZwkxMDYwMzcwNzcwCisJLmxvbmcJMjYxNzIzODM3MworCS5sb25nCTEwNDY2NzU5NDgKKwkubG9uZwkzMDk1ODMwMDg0CisJLmxvbmcJMTA2MDA5NTMzNAorCS5sb25nCTM3ODk1NzAwNDgKKwkubG9uZwkxMDY4NTUxMjY2CisJLmxvbmcJMjM4MjY1NTkKKwkubG9uZwkxMDI0NTY0NDEyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzODcwOTM5Mzg2CisJLmxvbmcJMTA3MDk1NjQ2NworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwk0Mzc2MDMyMjMKKwkubG9uZwkxMDU4MTA2MTEzCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk3NTkzMzAzNTIKKwkubG9uZwkxMDU3MDQ4NTExCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMTA3NDYzMzY4CisJLmxvbmcJMTA1NTAyNDM0MAorCS5sb25nCTMxNDQ0NjUxNzYKKwkubG9uZwkxMDY2NzA3ODUyCisJLmxvbmcJMjI5MDk2MTgxMAorCS5sb25nCTEwNTM4NDEwMzUKKwkubG9uZwkxNjE4MTUzMzQwCisJLmxvbmcJMTA2Njk3MTU0NworCS5sb25nCTM4MzY4NjkzOTMKKwkubG9uZwkxMDUxOTE2NjI0CisJLmxvbmcJNTg0MDMyMTE2CisJLmxvbmcJMTA2Mzk4NTYxMworCS5sb25nCTEyNDU3MDQzNTgKKwkubG9uZwkxMDUwNjI2NDYyCisJLmxvbmcJNDI0NzQ4NzQzOAorCS5sb25nCTEwNjM1NjE5NDMKKwkubG9uZwkxNjY5MDM0OTI3CisJLmxvbmcJMTA0ODc5MTE2NAorCS5sb25nCTM4NDQyMzM0OTgKKwkubG9uZwkxMDYxMTQyNjc0CisJLmxvbmcJMjcwNjk1ODUyNAorCS5sb25nCTEwNDc0MTEzNzQKKwkubG9uZwkzODU3MTk5MDk4CisJLmxvbmcJMTA2MDI4MTY0NworCS5sb25nCTM1OTM5MDQxMjgKKwkubG9uZwkxMDY5MTA3MDcxCisJLmxvbmcJMzI2NzU0NzgzNgorCS5sb25nCTEwMjQ2Nzk2NzMKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQwNzY3MTIyMjcKKwkubG9uZwkxMDcwOTcwMjE0CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTIxMDcxNTU3OTgKKwkubG9uZwkxMDU4NjgzMjI0CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNjQyOTkyMTI5CisJLmxvbmcJMTA1NzQyNDU3OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTkzNjk5MjgxMQorCS5sb25nCTEwNTU3MjA3NzgKKwkubG9uZwkxNDg1MDYzNTU5CisJLmxvbmcJMTA2NzE5ODk5NQorCS5sb25nCTE0MzI5MTQ1NTMKKwkubG9uZwkxMDU0MzE5Mzk4CisJLmxvbmcJMzk5NjM4MTY1NAorCS5sb25nCTEwNjcwNzU4MjgKKwkubG9uZwkyODMzMDI5MjU2CisJLmxvbmcJMTA1MjczOTg5NworCS5sb25nCTI4NjYwNjY4NzIKKwkubG9uZwkxMDY0NDk5MDE0CisJLmxvbmcJMjQzMjg4ODczNworCS5sb25nCTEwNTEyMzQxNzgKKwkubG9uZwkzNjY5NzY0NTU5CisJLmxvbmcJMTA2Mzc0ODEzNgorCS5sb25nCTI0NTg0OTY5NTIKKwkubG9uZwkxMDQ5Njg3MTI2CisJLmxvbmcJMTk0ODIzNDk4OQorCS5sb25nCTEwNjE2MTQ0OTkKKwkubG9uZwkyODQzNjk4Nzg3CisJLmxvbmcJMTA0ODE2MzUxOQorCS5sb25nCTMzOTgwNDE0MDcKKwkubG9uZwkxMDYwNTU5NzI4CisJLmxvbmcJMjgyOTIzMDA4MAorCS5sb25nCTEwNjk2MDg0NjcKKwkubG9uZwkxMDM0MDQ2NDMzCisJLmxvbmcJMTAyNjc4ODI1NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjk4Njc1MzA1CisJLmxvbmcJMTA3MDk4OTgyMQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkzMTIwNDk4NjM4CisJLmxvbmcJMTA1OTI2NTY1NgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjc3MzU3ODExNAorCS5sb25nCTEwNTgwMDkzMTIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIwMzA3ODM2NzYKKwkubG9uZwkxMDU2MzM0MjI1CisJLmxvbmcJMjIyMzY1NDU5OAorCS5sb25nCTEwNjc1ODgyODgKKwkubG9uZwkyOTc2MTM0NjUwCisJLmxvbmcJMTA1NDk4NzI0NAorCS5sb25nCTcwNjM5MDA2NgorCS5sb25nCTEwNjcyMTczODYKKwkubG9uZwk0MjU4NDM3NjE1CisJLmxvbmcJMTA1MzQxNjczMAorCS5sb25nCTEwNjYyNTI5NzUKKwkubG9uZwkxMDY0OTA3NjE5CisJLmxvbmcJODE1Nzc3NTE0CisJLmxvbmcJMTA1MTk4OTQ2MgorCS5sb25nCTMyMDI3NDU0NTcKKwkubG9uZwkxMDY0MDEwNjgyCisJLmxvbmcJMjQ5MzU1NjM3NQorCS5sb25nCTEwNTA1MjExMDUKKwkubG9uZwkxMDQ2MjQzMjUxCisJLmxvbmcJMTA2MjE5NTMyMworCS5sb25nCTI1OTMwNzg4NDYKKwkubG9uZwkxMDQ5MDE3NzE3CisJLmxvbmcJMjc2Mzk2MjI3NgorCS5sb25nCTEwNjA5NzAxNjEKKwkubG9uZwk3MDE0ODA5NjAKKwkubG9uZwkxMDY5ODk0MDk0CisJLmxvbmcJMzIwNTg2MjIzMgorCS5sb25nCTEwMjcxNzcyNjcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIyNjcwMTY4MTIKKwkubG9uZwkxMDcxMDE1NjY0CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTEzOTg0NjI2MDgKKwkubG9uZwkxMDU5ODIwMzIwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNjIwNTk4MworCS5sb25nCTEwNTg0NjEyMTMKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTU2MjI2MjM4CisJLmxvbmcJMTA1NzA0NDk2NAorCS5sb25nCTI3NTQ3MDY1NDEKKwkubG9uZwkxMDY3ODc1ODYzCisJLmxvbmcJMjE4Nzc5OTgyMworCS5sb25nCTEwNTU2MzQ0MzcKKwkubG9uZwk3OTAzMjM3NDIKKwkubG9uZwkxMDY3NDAyNTg3CisJLmxvbmcJMTM3MjM4NTg0OAorCS5sb25nCTEwNTQxNjc4MzEKKwkubG9uZwk0MDk3MjkyNzE2CisJLmxvbmcJMTA2NTM3MjY1NAorCS5sb25nCTMzNDgyMTAzNTcKKwkubG9uZwkxMDUyODMwMDk5CisJLmxvbmcJMjQ0Mjc5NjQ2NgorCS5sb25nCTEwNjQzMzc2MDIKKwkubG9uZwk4NjI2MDgxNDIKKwkubG9uZwkxMDUxMzQ3MTA2CisJLmxvbmcJMTcwMjk2MTUyCisJLmxvbmcJMTA2MjU3NzIxOQorCS5sb25nCTM3NTU1NzE0MjgKKwkubG9uZwkxMDQ5OTMzMzQzCisJLmxvbmcJMzYxNDg2NjAwOAorCS5sb25nCTEwNjEzNjE2NzAKKwkubG9uZwk3MTk5Nzg0OTYKKwkubG9uZwkxMDcwMTg1NDQ4CisJLmxvbmcJMTk5ODg0MjQ2NQorCS5sb25nCTEwMjcyMjAzMjkKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM3NDkxNTY2MDcKKwkubG9uZwkxMDcxMDQ4MjU4CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTEzMzAxNjU5NzEKKwkubG9uZwkxMDYwMzY3MDk3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTc1MzY2MjMKKwkubG9uZwkxMDU5MTA5MDk4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzNDkyMTIwODQ5CisJLmxvbmcJMTA1NzY2NzgyNworCS5sb25nCTYwMjE4NTcwNQorCS5sb25nCTEwNjgxOTQ0NDQKKwkubG9uZwk3NjA0MjI5NTgKKwkubG9uZwkxMDU2MzEyNTk3CisJLmxvbmcJNTU1MTI3ODg5CisJLmxvbmcJMTA2NzU0NTI2NgorCS5sb25nCTMxMzk3ODQxMjQKKwkubG9uZwkxMDU0OTg3MTg5CisJLmxvbmcJMzY5MDU0NDAxNAorCS5sb25nCTEwNjU2NjY1MjMKKwkubG9uZwk5NTcwNzkxNQorCS5sb25nCTEwNTM2MzU0MjgKKwkubG9uZwk0MDAzMTE0NDA3CisJLmxvbmcJMTA2NDU4MTQxMgorCS5sb25nCTIwMzQ5MjYyMzEKKwkubG9uZwkxMDUyMjI3NTEzCisJLmxvbmcJMzc1OTUzNjAyMworCS5sb25nCTEwNjMwNzYzNDEKKwkubG9uZwkzODI2OTI4MjE0CisJLmxvbmcJMTA1MDg5MzgxOQorCS5sb25nCTM4Mzc5NjA3ODUKKwkubG9uZwkxMDYxNzkwMzc5CisJLmxvbmcJMTUyNjMyNTI0OAorCS5sb25nCTEwNzA0ODM5MTgKKwkubG9uZwkyMzU2NDI2NTIxCisJLmxvbmcJMzE3MjkwNzEwNAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDU3NzI4OTc1CisJLmxvbmcJMTA3MTA4ODI3NgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkxNzA0MzUyMTAyCisJLmxvbmcJMzIyMzQyNjY0OQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjI4NDU4OTMwNgorCS5sb25nCTEwNzYyNTgwMzYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIyMTEyNjQyOTEKKwkubG9uZwkzMjI0MTQyNjU4CisJLmxvbmcJMAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxNDQxMTg2MzY1CisJLmxvbmcJMTA3NzAyODU3OQorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDc0MDkxMzQ5CisJLmxvbmcJODc2OTQzNjczCisJLmxvbmcJMzIyNDgzNzI3MAorCS5sb25nCTI4NjMzMTE1MzEKKwkubG9uZwkzMjIxOTI0NTIyCisJLmxvbmcJMjM2Mjg5NTA0CisJLmxvbmcJMTA3Nzc2NzQ4NQorCS5sb25nCTI4NjMzMTE1MworCS5sb25nCTEwNzQ4NjAzMDUKKwkubG9uZwkyODA1NDczMzExCisJLmxvbmcJMzIyNTU5ODkyNgorCS5sb25nCTk1NDQzNzE4CisJLmxvbmcJMzIyMjY0Njg3NQorCS5sb25nCTExNjA0NzYxMzEKKwkubG9uZwkxMDc4NDUwNzQyCisJLmxvbmcJNDYzNTgzNzcyCisJLmxvbmcJMTA3NTU1MjY5OAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTMzNDk4OTI0NDIKKwkubG9uZwkzMjIxNzczODYwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzOTEzMTk3NDA1CisJLmxvbmcJMTA3NDUwMTE4MQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjQ5NDAzNDUyMgorCS5sb25nCTMyMjIyMjI4MTgKKwkubG9uZwkxMjY0NzM4NzYzCisJLmxvbmcJMzIyMDU2ODQ1MgorCS5sb25nCTE1MjAyOTM5MDYKKwkubG9uZwkxMDc0ODk5NjMyCisJLmxvbmcJMTk1ODkzNjYwMAorCS5sb25nCTEwNzM0MTE0OTMKKwkubG9uZwkyMTMzNjQ5NjM1CisJLmxvbmcJMzIyMjUzNTgxOQorCS5sb25nCTQyNzA3NDA3MzAKKwkubG9uZwkzMjIxMDU4MzU2CisJLmxvbmcJMTcyODkzMDE4OQorCS5sb25nCTEwNzUyMjQ4NDQKKwkubG9uZwkxMzAzOTk4NTUyCisJLmxvbmcJMTA3Mzc5OTE4NgorCS5sb25nCTYxODYxMTkzMworCS5sb25nCTMyMjI5MDM5MDMKKwkubG9uZwkxNzY5ODI4MDQ2CisJLmxvbmcJMzIyMTQyMjE5MAorCS5sb25nCTIyMDA1Mzc5ODYKKwkubG9uZwkxMDc1NjQxNDIxCisJLmxvbmcJNDMzMzYxMTEwCisJLmxvbmcJMTA3NDEwNTM2OQorCS5sb25nCTcxOTU5NTYwMAorCS5sb25nCTMyMTk4MDA4MzIKKwkubG9uZwkyOTQ1MjcyMDYKKwkubG9uZwkxMDE0NjU2NDQwCisJLmxvbmcJMAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkzODExNzg4MjE2CisJLmxvbmcJMzIxODQwMDU1MAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk3MjQzMjI3NjgKKwkubG9uZwkzMjIwMzY0OTU2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk2NDMxNTMwNDgKKwkubG9uZwkxMDcyOTA1ODE2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0Mjg1MDc5NDU4CisJLmxvbmcJMzIyMDQxMjIwNgorCS5sb25nCTM5MTI1MjQ3MzMKKwkubG9uZwkzMjIwMTA2NjMxCisJLmxvbmcJMTE4MzYyMjcyCisJLmxvbmcJMTA3Mjk1Mjc1NAorCS5sb25nCTQxMDc3Njc5NzIKKwkubG9uZwkxMDcyODI3NDA4CisJLmxvbmcJMjY4OTUwMjg4MworCS5sb25nCTMyMjA0NjA1NzAKKwkubG9uZwk5NDY1MjMzNDcKKwkubG9uZwkzMjIwMjU2NDE0CisJLmxvbmcJNTczMjA0MTg5CisJLmxvbmcJMTA3MzAwMTc2MQorCS5sb25nCTU4MTUzMTUxOAorCS5sb25nCTEwNzI4MjYzOTEKKwkubG9uZwkxMzg2MjM2NTI2CisJLmxvbmcJMzIyMDUxMDYwNworCS5sb25nCTM3MTg5MDU5MDUKKwkubG9uZwkzMjIwMzE2NDcxCisJLmxvbmcJMTE0NTU1ODE0MAorCS5sb25nCTEwNzMwNTI2NzMKKwkubG9uZwk1MTM1NzI2MzcKKwkubG9uZwkxMDcyODYxOTY5CisJLmxvbmcJNzE2NzAwMDQ4CisJLmxvbmcJMzIxOTQ4MTAxNgorCS5sb25nCTU0NzEyNjc2OQorCS5sb25nCTMxNjMwMDcxNzMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTEwOTc5MDczOTgKKwkubG9uZwkxMDcxNDIwMTIwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM0MjI4MDcyOTcKKwkubG9uZwkzMjE5MTI0NDk1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTUxNjU4MDUzCisJLmxvbmcJMTA3MTQ5NDcxNQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJOTI5NjA3MDcxCisJLmxvbmcJMzIxODgyOTk4OAorCS5sb25nCTEwMzcwNDkwMzQKKwkubG9uZwkzMjE5NTIwOTUzCisJLmxvbmcJMjc4NjkyODY1NworCS5sb25nCTEwNzEyMTUyODIKKwkubG9uZwkxNDQ3NDA2ODU5CisJLmxvbmcJMTA3MjI2NTIwOQorCS5sb25nCTM0OTA5NTIxMDcKKwkubG9uZwkzMjE4NTc0NDk5CisJLmxvbmcJMzIwNTIzMjkxNgorCS5sb25nCTMyMTk0NTIzMDYKKwkubG9uZwkxMjk3MzQ0MzA0CisJLmxvbmcJMTA3MDk3NzEyMAorCS5sb25nCTEwNjYxMTA5NzYKKwkubG9uZwkxMDcxOTQ2MDM1CisJLmxvbmcJMzgwMzcyMTQ4MAorCS5sb25nCTMyMTgzNTQ3MzAKKwkubG9uZwkxNDk2NzU0MjI5CisJLmxvbmcJMzIxOTI5MDg0OQorCS5sb25nCTI5ODI1NTA2ODMKKwkubG9uZwkxMDcwNzczMjQzCisJLmxvbmcJNDAxNDQ0MTk4OQorCS5sb25nCTEwNzE3MzYyMjIKKwkubG9uZwk0MTk5NjgyMzYKKwkubG9uZwkzMjE5MjAwNjk1CisJLmxvbmcJMzQ1MTI2NjUzOAorCS5sb25nCTEwMTU5NjExNjMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI5NjAyNjcyMzUKKwkubG9uZwkxMDcwNzQ1ODQxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE0NTg3OTQ1NjIKKwkubG9uZwkzMjE3ODgyMTk4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyODU3Nzc3NDg5CisJLmxvbmcJMTA3MDEzNzYzNworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTAyNDM1OTUxNworCS5sb25nCTMyMTczNjAxNzkKKwkubG9uZwkyNjE2MDQwMjM4CisJLmxvbmcJMzIxOTA2NjU4NQorCS5sb25nCTE2MDkwMjQ2MzYKKwkubG9uZwkxMDY5Njc1MDg4CisJLmxvbmcJMjUyOTI0MDU0OQorCS5sb25nCTEwNzE4MzY2MzMKKwkubG9uZwkxNTEwMTI4NjAwCisJLmxvbmcJMzIxNjkyMzc2MQorCS5sb25nCTIyNTE2OTcxODQKKwkubG9uZwkzMjE4NzM3MzM1CisJLmxvbmcJMTI2Mjc2MTQ1MworCS5sb25nCTEwNjkxNDI4NTAKKwkubG9uZwkxMjYzMDkxODU3CisJLmxvbmcJMTA3MTE5MDQ2MQorCS5sb25nCTMwNDMzODM0ODYKKwkubG9uZwkzMjE2MzY4ODM5CisJLmxvbmcJMjQ3NjkzMjQ3MAorCS5sb25nCTMyMTgzMjU2NTAKKwkubG9uZwkzNjU5OTk1MDI4CisJLmxvbmcJMTA2ODY2OTIwMAorCS5sb25nCTg1NTg5MTc1NQorCS5sb25nCTEwNzA2OTY4OTQKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMzIxODc2ODUwNQorCS5sb25nCTMwNjI2MzM1NzUKKwkubG9uZwkzMTYxNDkyMjcxCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyNTUwOTQwNDcxCisJLmxvbmcJMTA2OTkzODIwMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNDY3NTgyNzgyCisJLmxvbmcJMzIxNjc0MDAzNworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTYyMTUwMDk2CisJLmxvbmcJMTA2ODk0NjQyMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzcwMjc5NDIzNworCS5sb25nCTMyMTYwNjI4MDAKKwkubG9uZwkzNjMxOTE5MjkxCisJLmxvbmcJMzIxODQyMDU3NAorCS5sb25nCTM0NTY4MjE0MTMKKwkubG9uZwkxMDY4MjE3MjE4CisJLmxvbmcJMjAzMTM2NjQzOAorCS5sb25nCTEwNzE0OTU3NDUKKwkubG9uZwkxNTk2NjY0MDIwCisJLmxvbmcJMzIxNTI4MjkyOQorCS5sb25nCTE1MDkwMzg3MDEKKwkubG9uZwkzMjE4MDg1MjkxCisJLmxvbmcJNTgzMTcxNDc3CisJLmxvbmcJMTA2NzUxMDE0OAorCS5sb25nCTM3ODUzNDQ2ODIKKwkubG9uZwkxMDcwNjE4NDc2CisJLmxvbmcJMjQwMjAzNjA0OAorCS5sb25nCTMyMTQ1NTkzODQKKwkubG9uZwkzMjMzMDE4NDEyCisJLmxvbmcJMzIxNzM5NjgzNAorCS5sb25nCTQxMTI4MDU2OAorCS5sb25nCTEwNjY3MTA1NTYKKwkubG9uZwkxMDY1NTg0MTkyCisJLmxvbmcJMTA2OTc0Nzg5NgorCS5sb25nCTg5NTI0NzMyNAorCS5sb25nCTMyMTgzMDM0OTYKKwkubG9uZwk1MDAwNzg5MDkKKwkubG9uZwkxMDEzODA1MTMzCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwk3Mjk5ODM4NDMKKwkubG9uZwkxMDY4OTk0MTk0CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE1MTI1NDU5NTUKKwkubG9uZwkzMjE1NjAyNjk1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTI3MDQ4Njk4CisJLmxvbmcJMTA2NzkwOTQ1OQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjMwMDIwMDQ1MAorCS5sb25nCTMyMTQ3Mzg0MTUKKwkubG9uZwkzNTkzMjUwMjk2CisJLmxvbmcJMzIxNzcxNzIwOQorCS5sb25nCTMwMDkzNjU1NDQKKwkubG9uZwkxMDY2OTAyMTE3CisJLmxvbmcJMTEyNzM3MzA1MAorCS5sb25nCTEwNzExNzM0NTcKKwkubG9uZwkzMDQ2MTAzMzA1CisJLmxvbmcJMzIxMzg1NDk0NworCS5sb25nCTI0NTgzNDAyCisJLmxvbmcJMzIxNzIwNzYzNgorCS5sb25nCTQwODI1MTE3NTgKKwkubG9uZwkxMDY1OTE0MTk5CisJLmxvbmcJMzIyMzg4OTY5OQorCS5sb25nCTEwNzAwMjAzNjcKKwkubG9uZwk1NDg5Mjc5ODQKKwkubG9uZwkzMjEyODk5NDA0CisJLmxvbmcJNTU4MDY1ODk3CisJLmxvbmcJMzIxNjQzMzA2NgorCS5sb25nCTY4MDA3MzMxNQorCS5sb25nCTEwNjQ5NDA3MjYKKwkubG9uZwkzODg4NzMyMDAKKwkubG9uZwkxMDY4OTQ0MjcwCisJLmxvbmcJMzc2MzY3OTU3NgorCS5sb25nCTMyMTc2NTExODkKKwkubG9uZwkxNDk3MzYwNDA0CisJLmxvbmcJMzE1NzE5NDE5NQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJNjQ5MzExNTIKKwkubG9uZwkxMDY3NzI5NDExCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEzMTMwMzgyMzUKKwkubG9uZwkzMjE0MjI5Mzc5CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDEzODc4MzQyCisJLmxvbmcJMTA2NzE1MjYxOAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzY2MzQyNjgzMworCS5sb25nCTMyMTMyMDg5MzEKKwkubG9uZwkzNjkzMjg0MjUxCisJLmxvbmcJMzIxNjYwMjQ1NgorCS5sb25nCTY1MDg1MjIzMgorCS5sb25nCTEwNjU4ODIzNzYKKwkubG9uZwkxOTk2MjQ1MzgxCisJLmxvbmcJMTA3MTAwMDI2NQorCS5sb25nCTIwMDg3NDYxNzAKKwkubG9uZwkzMjEyMTQ3ODQ1CisJLmxvbmcJMzA1NTg0MjU5MworCS5sb25nCTMyMTYwNjI0OTQKKwkubG9uZwkxNDk1NDA2MzQ4CisJLmxvbmcJMTA2NDY1MjQzNworCS5sb25nCTIyNjk1MzAxNTcKKwkubG9uZwkxMDY5NzExMjM1CisJLmxvbmcJMjg1NTYzNjk2CisJLmxvbmcJMzIxMTA2MDExMworCS5sb25nCTEwNDY4OTc0NDAKKwkubG9uZwkzMjE1MTg5NTEzCisJLmxvbmcJMjMzNDI5NzMxCisJLmxvbmcJMTA2MzQ1MzE1MQorCS5sb25nCTUyMjA0NTk1OAorCS5sb25nCTEwNjg0NzY1OTAKKwkubG9uZwkyMzU0Nzg1Njk4CisJLmxvbmcJMzIxNjU4NjQyNworCS5sb25nCTEzMTc1OTkxNDEKKwkubG9uZwkzMTU5OTE1NzgxCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyODI4MjMwMTA1CisJLmxvbmcJMTA2NTYwNjYyNgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxODQxOTQwNjExCisJLmxvbmcJMTA3MTkzMTE4NAorCS5sb25nCTE4NDE5NDA2MTEKKwkubG9uZwkxMDc2MTI1NDg4CisJLmxvbmcJMAorCS5sb25nCTExMzE5Mzc3OTIKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS5sb25nCTE0MTM3NTg5NzYKKwkubG9uZwkxMDY5MDk3NDY3CisJLmxvbmcJMTQxMzc0MjU5MgorCS5sb25nCTEwNjkwOTc0NjcKKwkubG9uZwkxNzM0ODE5ODQwCisJLmxvbmcJMzE3NDIyOTk0NQorCS5sb25nCTEyODAwNDkxNTIKKwkubG9uZwkxMDI4MDMzNTcxCisJLmxvbmcJOTIzMjE5MDE4CisJLmxvbmcJOTg0MTMwMjcyCisJLmxvbmcJNTc3MDExODkKKwkubG9uZwk5ODgzODM3OTAKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTczNDgxNjY4NworCS5sb25nCTEwMjY3NDYyOTcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE0NjQzNTA3MgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDI5NDcwNTE1MgorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTMwMzY0OTI4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTAxNTAyMTU2OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwMTcxMTg3MjAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkwCisJLmxvbmcJMTA3Njg4NzU1MgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsNTg3MgorCS5kYXRhCisJLmhpZGRlbiBfX2xpYm1fdGFuY290X2h1Z2UKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODYvc190YW5oLlMgYi9saWJtL3g4Ni9zX3RhbmguUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MzdiY2JiCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvc190YW5oLlMKQEAgLTAsMCArMSwxMzYxIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gdGFuaCh4KT0oZXhwKHgpLWV4cCgteCkpLyhleHAoeCkrZXhwKC14KSk9KDEtZXhwKC0yKngpKS8oMStleHAoLTIqeCkpCisvLworLy8gTGV0IHx4fD14SCt4TCAodXBwZXIgMjYgYml0cywgbG93ZXIgMjcgYml0cykKKy8vIGxvZzIoZSkgcm91bmRlZCB0byAyNiBiaXRzIChoaWdoIHBhcnQpIHBsdXMgYSBkb3VibGUgcHJlY2lzaW9uIGxvdyBwYXJ0IGlzCisvLyAgICAgICAgIEwyRUgrTDJFTCAodXBwZXIgMjYsIGxvd2VyIDUzIGJpdHMpCisvLworLy8gTGV0IHhIKkwyRUg9aytmK3JgLCB3aGVyZSAoaytmKSoyXjgqMj1pbnQoeEgqTDJFSCoyXjkpLAorLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGY9MC5iMSBiMiAuLi4gYjgsIGsgaW50ZWdlcgorLy8gMl57LWZ9IGlzIGFwcHJveGltYXRlZCBhcyBUbltmXStEbltmXQorLy8gVG4gc3RvcmVzIHRoZSBoaWdoIDUzIGJpdHMsIERuIHN0b3JlcyAoMl57LWZ9LVRuW2ZdKSByb3VuZGVkIHRvIGRvdWJsZSBwcmVjaXNpb24KKy8vCisvLyAgcj1yYCt4TCpMMkVIK3x4fCpMMkVMLCB8cnw8Ml57LTl9KzJeey0xNH0sCisvLyAgICAgICAgICAgICAgICAgICAgICBmb3IgfHh8IGluIFsyMy82NCwzKjJeNykKKy8vIGVeey0yKnx4fH09Ml57LWstZn0qMl57LXJ9IH4gMl57LWt9KihUbitEbikqKDErcCk9KFQwK0QwKSooMStwKQorLy8KKy8vIEZvciB8eHwgaW4gWzJeey00fSwyXjUpOgorLy8gICAgICAgICAyXnstcn0tMSB+IHA9YzEqcitjMipyXjIrLi4rYzUqcl41CisvLyAgICAgIExldCBSPTEvKDErVDArcCpUMCksIHRydW5jYXRlZCB0byAzNSBzaWduaWZpY2FudCBiaXRzCisvLyAgUj0xLygxK1QwK0QwK3AqKFQwK0QwKSkqKDErZXBzKSwgfGVwc3w8Ml57LTMzfQorLy8gIDErVDArRDArcCooVDArRDApPUtIK0tMLCB3aGVyZQorLy8gICAgICAgS0g9KDErVDArYzEqcipUMClfaGlnaCAobGVhZGluZyAxNyBiaXRzKQorLy8gICAgICAgS0w9VDBfbG93K0QwKyhjMSpyKlQwKV9sb3crYzEqcipEMCsoYzIqcl4yKy4uYzUqcl41KSpUMAorLy8gIGVwcyB+IChSKktILTEpK1IqS0wKKy8vICAxLygxK1QwK0QwK3AqKFQwK0QwKSkgfiBSLVIqZXBzCisvLyAgVGhlIHJlc3VsdCBpcyBhcHByb3hpbWF0ZWQgYXMgKDEtVDAtRDAtKFQwK0QwKSpwKSooUi1SKmVwcykKKy8vICAxLVQwLUQwLShUMCtEMCkqcD0tKChLSC0yKStLTCkKKy8vICAgIFRoZSByZXN1bHQgaXMgZm9ybWVkIGFzCisvLyAgICAoS0gtMikqUisoLShLSC0yKSpSKmVwcysoS0wqUi1LTCpSKmVwcykpLCB3aXRoIHRoZSBjb3JyZWN0IHNpZ24KKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXQgYXQgdGhlIGVuZAorLy8KKy8vIEZvciB8eHwgaW4gWzJeey02NH0sMl57LTR9KToKKy8vICBBIFRheWxvciBzZXJpZXMgZXhwYW5zaW9uIGlzIHVzZWQgICh4K3AzKnheMysuLitwMTMqeF57MTN9KQorLy8KKy8vIEZvciB8eHw8Ml57LTY0fTogIHggaXMgcmV0dXJuZWQKKy8vCisvLyBGb3IgfHh8Pj0yXjMyOiByZXR1cm4gKy8tMQorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgdGFuaChOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICB0YW5oKElORikgPSB0aGF0IElORgorLy8gIHRhbmgoKy8tMCkgPSArLy0wCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgc3RhdGljX2Z1bmMKKyAgICAgICAgLnRleHQKKyAgICAgICAgLmFsaWduIF9fYmlvbmljX2FzbV9hbGlnbgorICAgICAgICAudHlwZSBzdGF0aWNfZnVuYywgQGZ1bmN0aW9uCitzdGF0aWNfZnVuYzoKKy4uQjEuMToKKyAgICAgICAgY2FsbCAgICAgIC4uTDIKKy4uTDI6CisgICAgICAgIHBvcGwgICAgICAlZWF4CisgICAgICAgIGxlYSAgICAgICBfR0xPQkFMX09GRlNFVF9UQUJMRV8rWy4gLSAuLkwyXSglZWF4KSwgJWVheAorICAgICAgICBsZWEgICAgICAgc3RhdGljX2NvbnN0X3RhYmxlQEdPVE9GRiglZWF4KSwgJWVheAorICAgICAgICByZXQKKyAgICAgICAgLnNpemUgICBzdGF0aWNfZnVuYywuLXN0YXRpY19mdW5jCisjIC0tIEVuZCAgc3RhdGljX2Z1bmMKKworIyAtLSBCZWdpbiAgdGFuaAorRU5UUlkodGFuaCkKKyMgcGFyYW1ldGVyIDE6IDggKyAlZWJwCisuLkIyLjE6CisuLkIyLjI6CisgICAgICAgIHB1c2hsICAgICAlZWJwCisgICAgICAgIG1vdmwgICAgICAlZXNwLCAlZWJwCisgICAgICAgIHN1YmwgICAgICAkMTA0LCAlZXNwCisgICAgICAgIG1vdmwgICAgICAlZWJ4LCA0MCglZXNwKQorICAgICAgICBjYWxsICAgICAgc3RhdGljX2Z1bmMKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlYngKKyAgICAgICAgbW92c2QgICAgIDExMiglZXNwKSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDQyNTYoJWVieCksICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDQxMTIoJWVieCksICV4bW0xCisgICAgICAgIG1vdnNkICAgICA0MTIwKCVlYngpLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIDQwOTYoJWVieCksICV4bW02CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tMworICAgICAgICBhbmRucGQgICAgJXhtbTAsICV4bW00CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW00LCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlY3gKKyAgICAgICAgc3VibCAgICAgICQxNjMwNCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDE0NCwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgY3Z0c2Qyc2kgICV4bW0zLCAlZWF4CisgICAgICAgIG1vdmFwZCAgICAleG1tMywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIG1vdnNkICAgICA0MjY0KCVlYngpLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG1vdmFwZCAgICA0MTI4KCVlYngpLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMjU1LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIG1vdmFwZCAgICAoJWVieCwlZWN4LDgpLCAleG1tNQorICAgICAgICBzaHJsICAgICAgJDQsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQ2NTUyMCwgJWVheAorICAgICAgICBzdWJsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIG5lZ2wgICAgICAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDQxNDQoJWVieCksICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG1vdnNkICAgICA0MTYwKCVlYngpLCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgICV4bW00LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgNDI2NCglZWJ4KSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDc4LCAleG1tMSwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIGFuZHBkICAgICA0MjI0KCVlYngpLCAleG1tNAorICAgICAgICBkaXZzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIG1vdnNkICAgICA0MjQwKCVlYngpLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIGFuZHBkICAgICA0MjI0KCVlYngpLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG1vdnNkICAgICA0MjY0KCVlYngpLCAleG1tNworICAgICAgICBhbmRwZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNAorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgIDQyNzIoJWVieCksICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgeG9ybCAgICAgICQzMjc2OCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQ5NjAsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQxMTA0LCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICBtb3ZhcGQgICAgNDE3NiglZWJ4KSwgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICA0MTkyKCVlYngpLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICA0MjA4KCVlYngpLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0xLCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIGFkZHBkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTIsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIGFkZGwgICAgICAkMTUzNDQsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQxNjQ0OCwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgY21wbCAgICAgICQxNiwgJWVjeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDE3MzkyLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTUzNDQsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgb3JsICAgICAgICQxNjM2OCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMjAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVheCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAyNCglZXNwKQorICAgICAgICBmbGRsICAgICAgMjQoJWVzcCkKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBtb3ZsICAgICAgNDAoJWVzcCksICVlYngKKyAgICAgICAgbW92bCAgICAgICVlYnAsICVlc3AKKyAgICAgICAgcG9wbCAgICAgICVlYnAKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMi4zOgorRU5EKHRhbmgpCisjIC0tIEVuZCAgdGFuaAorCisjIFN0YXJ0IGZpbGUgc2NvcGUgQVNNCitBTElBU19TWU1CT0wodGFuaGwsIHRhbmgpOworIyBFbmQgZmlsZSBzY29wZSBBU00KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK3N0YXRpY19jb25zdF90YWJsZToKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTc5NzkyMzgwMQorCS5sb25nCTEwNzI2ODc1NzcKKwkubG9uZwkxOTUwNTQ3NDI3CisJLmxvbmcJMTAxMzIyOTA1OQorCS5sb25nCTczMDgyMTEwNQorCS5sb25nCTEwNzI2ODE5MjIKKwkubG9uZwkyNTIzMjMyNzQzCisJLmxvbmcJMTAxMjA2NzE4OAorCS5sb25nCTkxNTU5MjQ2OAorCS5sb25nCTEwNzI2NzYyODIKKwkubG9uZwkzNTI5NDc4OTQKKwkubG9uZwkzMTYxMDI0MzcxCisJLmxvbmcJMjE3NDY1MjYzMgorCS5sb25nCTEwNzI2NzA2NTcKKwkubG9uZwk0MDg3NzE0NTkwCisJLmxvbmcJMTAxNDQ1MDI1OQorCS5sb25nCTM1OTI5MjI1CisJLmxvbmcJMTA3MjY2NTA0OAorCS5sb25nCTI4MDk3ODgwNDEKKwkubG9uZwkzMTU5NDM2OTY4CisJLmxvbmcJMjkxMjczMDY0NAorCS5sb25nCTEwNzI2NTk0NTMKKwkubG9uZwkzNDkwMDY3NzIyCisJLmxvbmcJMzE2MzQwNTA3NAorCS5sb25nCTIwMzg5NzM2ODgKKwkubG9uZwkxMDcyNjUzODc0CisJLmxvbmcJODkyOTQxMzc0CisJLmxvbmcJMTAxNjA0NjQ1OQorCS5sb25nCTE1MzM5NTMzNDQKKwkubG9uZwkxMDcyNjQ4MzEwCisJLmxvbmcJNzY5MTcxODUxCisJLmxvbmcJMTAxNTY2NTYzMworCS5sb25nCTEyMjI0NzIzMDgKKwkubG9uZwkxMDcyNjQyNzYxCisJLmxvbmcJMTA1NDM1NzQ3MAorCS5sb25nCTMxNjEwMjEwMTgKKwkubG9uZwk5Mjk4MDY5OTkKKwkubG9uZwkxMDcyNjM3MjI3CisJLmxvbmcJMzIwNTMzNjY0MworCS5sb25nCTEwMTUyNTk1NTcKKwkubG9uZwk0ODE3MDYyODIKKwkubG9uZwkxMDcyNjMxNzA4CisJLmxvbmcJMTY5NjA3OTE3MworCS5sb25nCTMxNjI3MTA1MjgKKwkubG9uZwkzOTk5MzU3NDc5CisJLmxvbmcJMTA3MjYyNjIwMworCS5sb25nCTIyNTg5NDE2MTYKKwkubG9uZwkxMDE1OTI0NzI0CisJLmxvbmcJMjcxOTUxNTkyMAorCS5sb25nCTEwNzI2MjA3MTQKKwkubG9uZwkyNzYwMzMyOTQxCisJLmxvbmcJMTAxNTEzNzkzMworCS5sb25nCTc2NDMwNzQ0MQorCS5sb25nCTEwNzI2MTUyNDAKKwkubG9uZwkzMDIxMDU3NDIwCisJLmxvbmcJMzE2MzMyOTUyMworCS5sb25nCTIyNTYzMjUyMzAKKwkubG9uZwkxMDcyNjA5NzgwCisJLmxvbmcJNTgwMTE3NzQ2CisJLmxvbmcJMTAxNTMxNzI5NQorCS5sb25nCTI3Mjg2OTM5NzgKKwkubG9uZwkxMDcyNjA0MzM1CisJLmxvbmcJMzk2MTA5OTcxCisJLmxvbmcJMzE2MzQ2MjY5MQorCS5sb25nCTIwMDk5NzA0OTYKKwkubG9uZwkxMDcyNTk4OTA1CisJLmxvbmcJMjE1OTAzOTY2NQorCS5sb25nCTMxNjI1NzI5NDgKKwkubG9uZwk0MjI0MTQyNDY3CisJLmxvbmcJMTA3MjU5MzQ4OQorCS5sb25nCTMzODk4MjAzODYKKwkubG9uZwkxMDE1MjA3MjAyCisJLmxvbmcJNjEwNzU4MDA2CisJLmxvbmcJMTA3MjU4ODA4OQorCS5sb25nCTE5NjUyMDkzOTcKKwkubG9uZwkzMTYxODY2MjMyCisJLmxvbmcJMzg4NDY2Mjc3NAorCS5sb25nCTEwNzI1ODI3MDIKKwkubG9uZwkyMTU4NjExNTk5CisJLmxvbmcJMTAxNDIxMDE4NQorCS5sb25nCTk5MTM1ODQ4MgorCS5sb25nCTEwNzI1NzczMzEKKwkubG9uZwk4Mzg3MTUwMTkKKwkubG9uZwkzMTYzMTU3NjY4CisJLmxvbmcJMzUxNjQxODk3CisJLmxvbmcJMTA3MjU3MTk3NAorCS5sb25nCTIxNzIyNjE1MjYKKwkubG9uZwkzMTYzMDEwNTk5CisJLmxvbmcJMTc5NjgzMjUzNQorCS5sb25nCTEwNzI1NjY2MzEKKwkubG9uZwkzMTc2OTU1NzE2CisJLmxvbmcJMzE2MDU4NTUxMworCS5sb25nCTg2MzczODcxOQorCS5sb25nCTEwNzI1NjEzMDMKKwkubG9uZwkxMzI2OTkyMjIwCisJLmxvbmcJMzE2MjYxMzE5NworCS5sb25nCTE2Nzk1NTgyMzIKKwkubG9uZwkxMDcyNTU1OTg5CisJLmxvbmcJMjM5MDM0MjI4NworCS5sb25nCTMxNjMzMzM5NzAKKwkubG9uZwk0MDc2OTc1MjAwCisJLmxvbmcJMTA3MjU1MDY4OQorCS5sb25nCTIwMjkwMDA4OTkKKwkubG9uZwkxMDE1MjA4NTM1CisJLmxvbmcJMzU5NDE1ODg2OQorCS5sb25nCTEwNzI1NDU0MDQKKwkubG9uZwkyNDU2NTIxNzAwCisJLmxvbmcJMzE2MzI1NjU2MQorCS5sb25nCTY0Njk2OTY1CisJLmxvbmcJMTA3MjU0MDEzNAorCS5sb25nCTE3Njg3OTc0OTAKKwkubG9uZwkxMDE1ODE2OTYwCisJLmxvbmcJMTkxMjU2MTc4MQorCS5sb25nCTEwNzI1MzQ4NzcKKwkubG9uZwkzMTQ3NDk1MTAyCisJLmxvbmcJMTAxNTY3ODI1MworCS5sb25nCTM4MjMwNTE3NgorCS5sb25nCTEwNzI1Mjk2MzUKKwkubG9uZwkyMzQ3NjIyMzc2CisJLmxvbmcJMzE2MjU3ODYyNQorCS5sb25nCTM4OTg3OTU3MzEKKwkubG9uZwkxMDcyNTI0NDA2CisJLmxvbmcJMTI0OTk5NDE0NAorCS5sb25nCTEwMTE4Njk4MTgKKwkubG9uZwkzNzA3NDc5MTc1CisJLmxvbmcJMTA3MjUxOTE5MgorCS5sb25nCTM2MTMwNzkzMDMKKwkubG9uZwkxMDE0MTY0NzM4CisJLmxvbmcJMzkzOTE0ODI0NgorCS5sb25nCTEwNzI1MTM5OTIKKwkubG9uZwkzMjEwMzUyMTQ4CisJLmxvbmcJMTAxNTI3NDMyMworCS5sb25nCTEzNTEwNTAxMAorCS5sb25nCTEwNzI1MDg4MDcKKwkubG9uZwkxOTA2MTQ4NzI4CisJLmxvbmcJMzE2MzM3NTczOQorCS5sb25nCTcyMTk5NjEzNgorCS5sb25nCTEwNzI1MDM2MzUKKwkubG9uZwk1NjM3NTQ3MzQKKwkubG9uZwkxMDE1MzcxMzE4CisJLmxvbmcJMTI0MjAwNzkzMgorCS5sb25nCTEwNzI0OTg0NzcKKwkubG9uZwkxMTMyMDM0NzE2CisJLmxvbmcJMzE2MzMzOTgzMQorCS5sb25nCTE1MzI3MzQzMjQKKwkubG9uZwkxMDcyNDkzMzMzCisJLmxvbmcJMzA5NDIxNjUzNQorCS5sb25nCTMxNjMxNjI4NTcKKwkubG9uZwkxNDMyMjA4Mzc4CisJLmxvbmcJMTA3MjQ4ODIwMworCS5sb25nCTE0MDEwNjg5MTQKKwkubG9uZwkzMTYyMzYzOTYzCisJLmxvbmcJNzc4OTAxMTA5CisJLmxvbmcJMTA3MjQ4MzA4NworCS5sb25nCTIyNDgxODM5NTUKKwkubG9uZwkzMTYxMjY4NzUxCisJLmxvbmcJMzcwNjY4NzU5MworCS5sb25nCTEwNzI0Nzc5ODQKKwkubG9uZwkzNTIxNzI2OTQwCisJLmxvbmcJMTAxMzI1MzA2NworCS5sb25nCTE0NjQ5NzY2MDMKKwkubG9uZwkxMDcyNDcyODk2CisJLmxvbmcJMzUwNzI5MjQwNQorCS5sb25nCTMxNjE5Nzc1MzQKKwkubG9uZwkyNDgzNDgwNTAxCisJLmxvbmcJMTA3MjQ2NzgyMQorCS5sb25nCTEyMTYzNzE3ODAKKwkubG9uZwkxMDEzMDM0MTcyCisJLmxvbmcJMjMwNzQ0Mjk5NQorCS5sb25nCTEwNzI0NjI3NjAKKwkubG9uZwkzMTkwMTE3NzIxCisJLmxvbmcJMzE2MjQwNDUzOQorCS5sb25nCTc3NzUwNzE0NworCS5sb25nCTEwNzI0NTc3MTMKKwkubG9uZwk0MjgyOTI0MjA1CisJLmxvbmcJMTAxNTE4NzUzMworCS5sb25nCTIwMjk3MTQyMTAKKwkubG9uZwkxMDcyNDUyNjc5CisJLmxvbmcJNjEzNjYwMDc5CisJLmxvbmcJMTAxNTA5OTE0MworCS5sb25nCTE2MTA2MDA1NzAKKwkubG9uZwkxMDcyNDQ3NjU5CisJLmxvbmcJMzc2NjczMjI5OAorCS5sb25nCTEwMTU3NjAxODMKKwkubG9uZwkzNjU3MDY1NzcyCisJLmxvbmcJMTA3MjQ0MjY1MgorCS5sb25nCTM5OTAyNTYyMworCS5sb25nCTMxNjI5NTcwNzgKKwkubG9uZwkzNzE2NTAyMTcyCisJLmxvbmcJMTA3MjQzNzY1OQorCS5sb25nCTIzMDM3NDAxMjUKKwkubG9uZwkxMDE0MDQyNzI1CisJLmxvbmcJMTYzMTY5NTY3NworCS5sb25nCTEwNzI0MzI2ODAKKwkubG9uZwkyNzE3NjMzMDc2CisJLmxvbmcJMzE2MjM0NDAyNgorCS5sb25nCTE1NDA4MjQ1ODUKKwkubG9uZwkxMDcyNDI3NzE0CisJLmxvbmcJMTA2NDAxNzAxMQorCS5sb25nCTMxNjM0ODc2OTAKKwkubG9uZwkzMjg3NTIzODQ3CisJLmxvbmcJMTA3MjQyMjc2MQorCS5sb25nCTE2MjU5NzE1MzkKKwkubG9uZwkzMTU3MDA5OTU1CisJLmxvbmcJMjQyMDg4MzkyMgorCS5sb25nCTEwNzI0MTc4MjIKKwkubG9uZwkyMDQ5ODEwMDUyCisJLmxvbmcJMTAxNDExOTg4OAorCS5sb25nCTMwODAzNTE1MTkKKwkubG9uZwkxMDcyNDEyODk2CisJLmxvbmcJMzM3OTEyNjc4OAorCS5sb25nCTMxNTcyMTgwMDEKKwkubG9uZwk4MTU4NTkyNzQKKwkubG9uZwkxMDcyNDA3OTg0CisJLmxvbmcJMjQwMzk2NTkwCisJLmxvbmcJMzE2MzQ4NzQ0MworCS5sb25nCTQwNjI2NjEwOTIKKwkubG9uZwkxMDcyNDAzMDg0CisJLmxvbmcJMTQyMjYxNjAwNgorCS5sb25nCTMxNjMyNTUzMTgKKwkubG9uZwk0MDc2NTU5OTQzCisJLmxvbmcJMTA3MjM5ODE5OAorCS5sb25nCTIxMTk0NzgzMzEKKwkubG9uZwkzMTYwNzU4MzUxCisJLmxvbmcJNzAzNzEwNTA2CisJLmxvbmcJMTA3MjM5MzMyNgorCS5sb25nCTEzODQ2NjA4NDYKKwkubG9uZwkxMDE1MTk1ODkxCisJLmxvbmcJMjM4MDYxODA0MgorCS5sb25nCTEwNzIzODg0NjYKKwkubG9uZwkzMTQ5NTU3MjE5CisJLmxvbmcJMzE2MzMyMDc5OQorCS5sb25nCTM2NDMzMzQ4OQorCS5sb25nCTEwNzIzODM2MjAKKwkubG9uZwkzOTIzNzM3NzQ0CisJLmxvbmcJMzE2MTQyMTM3MworCS5sb25nCTMwOTIxOTA3MTUKKwkubG9uZwkxMDcyMzc4Nzg2CisJLmxvbmcJODE0MDEyMTY4CisJLmxvbmcJMzE1OTUyMzQyMgorCS5sb25nCTE4MjIwNjcwMjYKKwkubG9uZwkxMDcyMzczOTY2CisJLmxvbmcJMTI0MTk5NDk1NgorCS5sb25nCTEwMTUzNDAyOTAKKwkubG9uZwk2OTcxNTMxMjYKKwkubG9uZwkxMDcyMzY5MTU5CisJLmxvbmcJMTI4MzUxNTQyOQorCS5sb25nCTMxNjMyODMxODkKKwkubG9uZwkzODYxMDUwMTExCisJLmxvbmcJMTA3MjM2NDM2NAorCS5sb25nCTI1NDg5Mzc3MworCS5sb25nCTMxNjI4MTMxODAKKwkubG9uZwkyNTcyODY2NDc3CisJLmxvbmcJMTA3MjM1OTU4MworCS5sb25nCTg3ODU2MjQzMworCS5sb25nCTEwMTU1MjE3NDEKKwkubG9uZwk5NzcwMjA3ODgKKwkubG9uZwkxMDcyMzU0ODE1CisJLmxvbmcJMzA2NTEwMDUxNworCS5sb25nCTEwMTU1NDE1NjMKKwkubG9uZwkzMjE4MzM4NjgyCisJLmxvbmcJMTA3MjM1MDA1OQorCS5sb25nCTM0MDQxNjQzMDQKKwkubG9uZwkzMTYyNDc3MTA4CisJLmxvbmcJNTU3MTQ5ODgyCisJLmxvbmcJMTA3MjM0NTMxNworCS5sb25nCTM2NzI3MjA3MDkKKwkubG9uZwkxMDE0NTM3MjY1CisJLmxvbmcJMTQzNDA1ODE3NQorCS5sb25nCTEwNzIzNDA1ODcKKwkubG9uZwkyNTExMzMyMzMKKwkubG9uZwkxMDE1MDg1NzY5CisJLmxvbmcJMTQwNTE2OTI0MQorCS5sb25nCTEwNzIzMzU4NzAKKwkubG9uZwkyOTk4NTM5Njg5CisJLmxvbmcJMzE2MjgzMDk1MQorCS5sb25nCTMyMTk1ODc0NAorCS5sb25nCTEwNzIzMzExNjYKKwkubG9uZwkzNDAxOTMzNzY3CisJLmxvbmcJMTAxNTc5NDU1OAorCS5sb25nCTIzMzEyNzEyNTAKKwkubG9uZwkxMDcyMzI2NDc0CisJLmxvbmcJODEyMDU3NDQ2CisJLmxvbmcJMTAxMjIwNzQ0NgorCS5sb25nCTI5OTA0MTcyNDUKKwkubG9uZwkxMDcyMzIxNzk1CisJLmxvbmcJMzY4MzQ2Nzc0NQorCS5sb25nCTMxNjMzNjkzMjYKKwkubG9uZwkyMTUyMDczOTQ0CisJLmxvbmcJMTA3MjMxNzEyOQorCS5sb25nCTE0ODY4NjA1NzYKKwkubG9uZwkzMTYzMjAzNDU2CisJLmxvbmcJMzk2NDI4NDIxMQorCS5sb25nCTEwNzIzMTI0NzUKKwkubG9uZwkyMTExNTgzOTE1CisJLmxvbmcJMTAxNTQyNzE2NAorCS5sb25nCTM5ODU1NTM1OTUKKwkubG9uZwkxMDcyMzA3ODM0CisJLmxvbmcJNDAwMjE0NjA2MgorCS5sb25nCTEwMTU4MzQxMzYKKwkubG9uZwkyMDY5NzUxMTQxCisJLmxvbmcJMTA3MjMwMzIwNgorCS5sb25nCTE1NjIxNzA2NzUKKwkubG9uZwkzMTYyNzI0NjgxCisJLmxvbmcJMjM2NjEwODMxOAorCS5sb25nCTEwNzIyOTg1OTAKKwkubG9uZwkyODY3OTg1MTAyCisJLmxvbmcJMzE2MTc2MjI1NAorCS5sb25nCTQzNDMxNjA2NworCS5sb25nCTEwNzIyOTM5ODcKKwkubG9uZwkyMDI4MzU4NzY2CisJLmxvbmcJMTAxMzQ1ODEyMgorCS5sb25nCTQyNDM5MjkxNworCS5sb25nCTEwNzIyODkzOTYKKwkubG9uZwkyNzQ5MjAyOTk1CisJLmxvbmcJMzE2MjgzODcxOAorCS5sb25nCTIxOTE3ODIwMzIKKwkubG9uZwkxMDcyMjg0ODE3CisJLmxvbmcJMjk2MDI1NzcyNgorCS5sb25nCTEwMTM3NDI2NjIKKwkubG9uZwkxMjk3MzUwMTU3CisJLmxvbmcJMTA3MjI4MDI1MQorCS5sb25nCTEzMDgwMjIwNDAKKwkubG9uZwkzMTYzNDEyNTU4CisJLmxvbmcJMTg5MjI4ODQ0MgorCS5sb25nCTEwNzIyNzU2OTcKKwkubG9uZwkyNDQ2MjU1NjY2CisJLmxvbmcJMzE2MjYwMDM4MQorCS5sb25nCTM4MzMyMDk1MDYKKwkubG9uZwkxMDcyMjcxMTU1CisJLmxvbmcJMjcyMjkyMDY4NAorCS5sb25nCTEwMTM3NTQ4NDIKKwkubG9uZwkyNjgyMTQ2Mzg0CisJLmxvbmcJMTA3MjI2NjYyNgorCS5sb25nCTIwODIxNzg1MTMKKwkubG9uZwkzMTYzMzYzNDE5CisJLmxvbmcJMjU5MTQ1MzM2MworCS5sb25nCTEwNzIyNjIxMDkKKwkubG9uZwkyMTMyMzk2MTgyCisJLmxvbmcJMzE1OTA3NDE5OAorCS5sb25nCTM0MTg5MDMwNTUKKwkubG9uZwkxMDcyMjU3NjA0CisJLmxvbmcJMjUyNzQ1NzMzNworCS5sb25nCTMxNjA4MjA2MDQKKwkubG9uZwk3Mjc2ODUzNDkKKwkubG9uZwkxMDcyMjUzMTEyCisJLmxvbmcJMjAzODI0NjgwOQorCS5sb25nCTMxNjIzNTg3NDIKKwkubG9uZwkyOTY2Mjc1NTU3CisJLmxvbmcJMTA3MjI0ODYzMQorCS5sb25nCTIxNzYxNTUzMjQKKwkubG9uZwkzMTU5ODQyNzU5CisJLmxvbmcJMTQwMzY2MjMwNgorCS5sb25nCTEwNzIyNDQxNjMKKwkubG9uZwkyNzg4ODA5NTk5CisJLmxvbmcJMzE2MTY3MTAwNworCS5sb25nCTE5NDExNzU3NAorCS5sb25nCTEwNzIyMzk3MDcKKwkubG9uZwk3Nzc1Mjg2MTIKKwkubG9uZwkzMTYzNDEyMDg5CisJLmxvbmcJMzQ5MjI5Mzc3MAorCS5sb25nCTEwNzIyMzUyNjIKKwkubG9uZwkyMjQ4MDMyMjEwCisJLmxvbmcJMTAxNTM4NjgyNgorCS5sb25nCTI1NjgzMjA4MjIKKwkubG9uZwkxMDcyMjMwODMwCisJLmxvbmcJMjczMjgyNDQyOAorCS5sb25nCTEwMTQzNTI5MTUKKwkubG9uZwkxNTc3NjA4OTIxCisJLmxvbmcJMTA3MjIyNjQxMAorCS5sb25nCTE4NzU0ODk1MTAKKwkubG9uZwkzMTYyOTY4Mzk0CisJLmxvbmcJMzgwOTc4MzE2CisJLmxvbmcJMTA3MjIyMjAwMgorCS5sb25nCTg1NDE4ODk3MAorCS5sb25nCTMxNjA0NjI2ODYKKwkubG9uZwkzMTM0NTkyODg4CisJLmxvbmcJMTA3MjIxNzYwNQorCS5sb25nCTQyMzIyNjY4NjIKKwkubG9uZwkxMDE1OTkxMTM0CisJLmxvbmcJMTExMDA4OTk0NworCS5sb25nCTEwNzIyMTMyMjEKKwkubG9uZwkxNDUxNjQxNjM5CisJLmxvbmcJMTAxNTQ3NDY3MworCS5sb25nCTI3NTkzNTAyODcKKwkubG9uZwkxMDcyMjA4ODQ4CisJLmxvbmcJMTE0ODUyNjYzNAorCS5sb25nCTEwMTU4OTQ5MzMKKwkubG9uZwkzNjQ5NzI2MTA1CisJLmxvbmcJMTA3MjIwNDQ4NworCS5sb25nCTQwODUwMzYzNDYKKwkubG9uZwkxMDE1NjQ5NDc0CisJLmxvbmcJMzY0MzkwOTE3NAorCS5sb25nCTEwNzIyMDAxMzgKKwkubG9uZwkzNTM3NTg2MTA5CisJLmxvbmcJMTAxNDM1NDY0NworCS5sb25nCTI2MDQ5NjI1NDEKKwkubG9uZwkxMDcyMTk1ODAxCisJLmxvbmcJMjYxNDQyNTI3NAorCS5sb25nCTMxNjM1MzkxOTIKKwkubG9uZwkzOTYzMTk1MjEKKwkubG9uZwkxMDcyMTkxNDc2CisJLmxvbmcJNDE3MjQyMDgxNgorCS5sb25nCTMxNTkwNzQ2MzIKKwkubG9uZwkxMTc2NzQ5OTk3CisJLmxvbmcJMTA3MjE4NzE2MgorCS5sb25nCTI3Mzg5OTg3NzkKKwkubG9uZwkzMTYyMDM1ODQ0CisJLmxvbmcJNTE1NDU3NTI3CisJLmxvbmcJMTA3MjE4Mjg2MAorCS5sb25nCTgzNjcwOTMzMworCS5sb25nCTEwMTU2NTEyMjYKKwkubG9uZwkyNTcxOTQ3NTM5CisJLmxvbmcJMTA3MjE3ODU2OQorCS5sb25nCTM1NTgxNTkwNjQKKwkubG9uZwkzMTYzMzc2NjY5CisJLmxvbmcJMjkxNjE1NzE0NQorCS5sb25nCTEwNzIxNzQyOTAKKwkubG9uZwkyMTk0ODc1NjUKKwkubG9uZwkxMDE1MzA5MzY3CisJLmxvbmcJMTQxMzM1NjA1MAorCS5sb25nCTEwNzIxNzAwMjMKKwkubG9uZwkxNjUxMzQ5MjkxCisJLmxvbmcJMzE2MjY2ODE2NgorCS5sb25nCTIyMjQxNDU1NTMKKwkubG9uZwkxMDcyMTY1NzY3CisJLmxvbmcJMzQ4MjUyMjAzMAorCS5sb25nCTMxNjE0ODkxNjkKKwkubG9uZwk5MTk1NTU2ODIKKwkubG9uZwkxMDcyMTYxNTIzCisJLmxvbmcJMzEyMTk2OTUzNAorCS5sb25nCTEwMTI5NDgyMjYKKwkubG9uZwkxNjYwOTEzMzkyCisJLmxvbmcJMTA3MjE1NzI5MAorCS5sb25nCTQyMTg1OTk2MDQKKwkubG9uZwkxMDE1MTM1NzA3CisJLmxvbmcJMTk5NzI0MDIKKwkubG9uZwkxMDcyMTUzMDY5CisJLmxvbmcJMzUwNzg5OTg2MgorCS5sb25nCTEwMTYwMDkyOTIKKwkubG9uZwkxNTg3ODE0MDMKKwkubG9uZwkxMDcyMTQ4ODU5CisJLmxvbmcJMjIyMTQ2NDcxMgorCS5sb25nCTMxNjMyODY0NTMKKwkubG9uZwkxOTQ0NzgxMTkxCisJLmxvbmcJMTA3MjE0NDY2MAorCS5sb25nCTM5OTMyNzg3NjcKKwkubG9uZwkzMTYxNzI0Mjc5CisJLmxvbmcJOTUwODAzNzAyCisJLmxvbmcJMTA3MjE0MDQ3MworCS5sb25nCTE2NTUzNjQ5MjYKKwkubG9uZwkxMDE1MjM3MDMyCisJLmxvbmcJMTMzOTk3MjkyNworCS5sb25nCTEwNzIxMzYyOTcKKwkubG9uZwkxNjc5MDg5MDkKKwkubG9uZwkxMDE1NTcyMTUyCisJLmxvbmcJMjk4MDgwMjA1NworCS5sb25nCTEwNzIxMzIxMzIKKwkubG9uZwkzNzg2MTk4OTYKKwkubG9uZwkxMDE1NzczMzAzCisJLmxvbmcJMTQ0NzE5MjUyMQorCS5sb25nCTEwNzIxMjc5NzkKKwkubG9uZwkxNDYyODU3MTcxCisJLmxvbmcJMzE2MjUxNDUyMQorCS5sb25nCTkwMzMzNDkwOQorCS5sb25nCTEwNzIxMjM4MzcKKwkubG9uZwkxNjM2NDYyMTA4CisJLmxvbmcJMTAxNTAzOTk5NworCS5sb25nCTEyMTg4MDYxMzIKKwkubG9uZwkxMDcyMTE5NzA2CisJLmxvbmcJMTgxODYxMzA1MgorCS5sb25nCTMxNjI1NDg0NDEKKwkubG9uZwkyMjYzNTM1NzU0CisJLmxvbmcJMTA3MjExNTU4NgorCS5sb25nCTc1MjIzMzU4NgorCS5sb25nCTMxNjI2MzkwMDgKKwkubG9uZwkzOTA3ODA1MDQ0CisJLmxvbmcJMTA3MjExMTQ3NworCS5sb25nCTIyNTcwOTEyMjUKKwkubG9uZwkzMTYxNTUwNDA3CisJLmxvbmcJMTcyNzI3ODcyNworCS5sb25nCTEwNzIxMDczODAKKwkubG9uZwkzNTYyNzEwNjIzCisJLmxvbmcJMTAxMTQ3MTk0MAorCS5sb25nCTQxODI4NzMyMjAKKwkubG9uZwkxMDcyMTAzMjkzCisJLmxvbmcJNjI5NTQyNjQ2CisJLmxvbmcJMzE2MTk5NjMwMworCS5sb25nCTI1NTU5ODQ2MTMKKwkubG9uZwkxMDcyMDk5MjE4CisJLmxvbmcJMjY1MjU1NTQ0MgorCS5sb25nCTMxNjI1NTI2OTIKKwkubG9uZwkxMDEzMjU4Nzk5CisJLmxvbmcJMTA3MjA5NTE1NAorCS5sb25nCTE3NDg3OTc2MTEKKwkubG9uZwkzMTYwMTI5MDgyCisJLmxvbmcJMzcyMTY4ODY0NQorCS5sb25nCTEwNzIwOTExMDAKKwkubG9uZwkzMDY5Mjc2OTM3CisJLmxvbmcJMTAxNTgzOTQwMQorCS5sb25nCTE5NjM3MTExNjcKKwkubG9uZwkxMDcyMDg3MDU4CisJLmxvbmcJMTc0NDc2Nzc1NworCS5sb25nCTMxNjA1NzQyOTQKKwkubG9uZwk0MjAxOTc3NjYyCisJLmxvbmcJMTA3MjA4MzAyNgorCS5sb25nCTc0ODMzMDI1NAorCS5sb25nCTEwMTM1OTQzNTcKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MjA3OTAwNgorCS5sb25nCTMzMDQ1ODE5OAorCS5sb25nCTMxNjMyODI3NDAKKwkubG9uZwkyOTc5OTYwMTIwCisJLmxvbmcJMTA3MjA3NDk5NgorCS5sb25nCTI1OTkxMDk3MjUKKwkubG9uZwkxMDE0NDk4NDkzCisJLmxvbmcJMzU2MTc5MzkwNworCS5sb25nCTEwNzIwNzA5OTcKKwkubG9uZwkxMTU3MDU0MDUzCisJLmxvbmcJMTAxMTg5MDM1MAorCS5sb25nCTMzMzkyMDM1NzQKKwkubG9uZwkxMDcyMDY3MDA5CisJLmxvbmcJMTQ4MzQ5Nzc4MAorCS5sb25nCTMxNjI0MDg3NTQKKwkubG9uZwkyMTg2NjE3MzgxCisJLmxvbmcJMTA3MjA2MzAzMgorCS5sb25nCTIyNzA3NjQwODQKKwkubG9uZwkzMTYzMjcyNzEzCisJLmxvbmcJNDI3Mzc3MDQyMworCS5sb25nCTEwNzIwNTkwNjUKKwkubG9uZwkzMzgzMTgwODA5CisJLmxvbmcJMzE2MzIxODkwMQorCS5sb25nCTg4NTgzNDUyOAorCS5sb25nCTEwNzIwNTUxMTAKKwkubG9uZwkxOTczMjU4NTQ3CisJLmxvbmcJMzE2MjI2MTU2NAorCS5sb25nCTQ4ODE4ODQxMworCS5sb25nCTEwNzIwNTExNjUKKwkubG9uZwkzMTk5ODIxMDI5CisJLmxvbmcJMTAxNTU2NDA0OAorCS5sb25nCTI5NTY2MTI5OTcKKwkubG9uZwkxMDcyMDQ3MjMwCisJLmxvbmcJMjExODE2OTc1MQorCS5sb25nCTMxNjI3MzU1NTMKKwkubG9uZwkzODcyMjU3NzgwCisJLmxvbmcJMTA3MjA0MzMwNgorCS5sb25nCTEyNTM1OTIxMDMKKwkubG9uZwkxMDE1OTU4MzM0CisJLmxvbmcJMzExMTU3NDUzNworCS5sb25nCTEwNzIwMzkzOTMKKwkubG9uZwkyNjA2MTYxNDc5CisJLmxvbmcJMzE2Mjc1OTc0NgorCS5sb25nCTU1MTM0OTEwNQorCS5sb25nCTEwNzIwMzU0OTEKKwkubG9uZwkzODIxOTE2MDUwCisJLmxvbmcJMzE2MjEwNjU4OQorCS5sb25nCTM2MzY2Nzc4NAorCS5sb25nCTEwNzIwMzE1OTkKKwkubG9uZwk4MTM3NTM5NTAKKwkubG9uZwkxMDE1Nzg1MjA5CisJLmxvbmcJMjQyNTk4MTg0MworCS5sb25nCTEwNzIwMjc3MTcKKwkubG9uZwkyODMwMzkwODUxCisJLmxvbmcJMzE2MzM0NjU5OQorCS5sb25nCTIzMjExMDY2MTUKKwkubG9uZwkxMDcyMDIzODQ2CisJLmxvbmcJMjE3MTE3NjYxMAorCS5sb25nCTEwMDk1MzU3NzEKKwkubG9uZwk0MjIyMTIyNDk5CisJLmxvbmcJMTA3MjAxOTk4NQorCS5sb25nCTEyNzczNzgwNzQKKwkubG9uZwkzMTYzMjU2NzM3CisJLmxvbmcJMzcxMjUwNDg3MworCS5sb25nCTEwNzIwMTYxMzUKKwkubG9uZwk4ODQ5MTk0OQorCS5sb25nCTEwMTU0Mjc2NjAKKwkubG9uZwk2NzEwMjUxMDAKKwkubG9uZwkxMDcyMDEyMjk2CisJLmxvbmcJMzgzMjAxNDM1MQorCS5sb25nCTMxNjMwMjIwMzAKKwkubG9uZwkzNTY2NzE2OTI1CisJLmxvbmcJMTA3MjAwODQ2NgorCS5sb25nCTE1MzY4MjY4NTYKKwkubG9uZwkxMDE0MTQyNDMzCisJLmxvbmcJMzY4OTA3MTgyMworCS5sb25nCTEwNzIwMDQ2NDcKKwkubG9uZwkyMzIxMDA0OTk2CisJLmxvbmcJMzE2MjU1MjcxNgorCS5sb25nCTkxNzg0MTg4MgorCS5sb25nCTEwNzIwMDA4MzkKKwkubG9uZwkxODcxNTU2NQorCS5sb25nCTEwMTU2NTkzMDgKKwkubG9uZwkzNzIzMDM4OTMwCisJLmxvbmcJMTA3MTk5NzA0MAorCS5sb25nCTM3ODQ2NTI2NAorCS5sb25nCTMxNjI1Njk1ODIKKwkubG9uZwkzMzk1MTI5ODcxCisJLmxvbmcJMTA3MTk5MzI1MgorCS5sb25nCTQwMjUzNDU0MzUKKwkubG9uZwkzMTYyMzM1Mzg4CisJLmxvbmcJNDEwOTgwNjg4NworCS5sb25nCTEwNzE5ODk0NzQKKwkubG9uZwk0MjI0MDM5NjYKKwkubG9uZwkxMDE0NDY5MjI5CisJLmxvbmcJMTQ1MzE1MDA4MgorCS5sb25nCTEwNzE5ODU3MDcKKwkubG9uZwk0OTgxNTQ2NjkKKwkubG9uZwkzMTYxNDg4MDYyCisJLmxvbmcJMzg5NjQ2MzA4NworCS5sb25nCTEwNzE5ODE5NDkKKwkubG9uZwkxMTM5Nzk3ODczCisJLmxvbmcJMzE2MTIzMzgwNQorCS5sb25nCTI3MzE1MDExMjIKKwkubG9uZwkxMDcxOTc4MjAyCisJLmxvbmcJMTc3NDAzMTg1NQorCS5sb25nCTMxNjI0NzAwMjEKKwkubG9uZwkyMTM1MjQxMTk4CisJLmxvbmcJMTA3MTk3NDQ2NQorCS5sb25nCTEyMzY3NDc4NzEKKwkubG9uZwkxMDEzNTg5MTQ3CisJLmxvbmcJMTk5MDAxMjA3MQorCS5sb25nCTEwNzE5NzA3MzgKKwkubG9uZwkzNTI5MDcwNTYzCisJLmxvbmcJMzE2MjgxMzE5MworCS5sb25nCTIxNzg0NjA2NzEKKwkubG9uZwkxMDcxOTY3MDIxCisJLmxvbmcJNzc3ODc4MDk4CisJLmxvbmcJMzE2Mjg0MjQ5MworCS5sb25nCTI1ODM1NTEyNDUKKwkubG9uZwkxMDcxOTYzMzE0CisJLmxvbmcJMzE2MTA5NDE5NQorCS5sb25nCTEwMTU2MDY0OTEKKwkubG9uZwkzMDg4NTY0NTAwCisJLmxvbmcJMTA3MTk1OTYxNworCS5sb25nCTE3NjIzMTE1MTcKKwkubG9uZwkxMDE1MDQ1NjczCisJLmxvbmcJMzU3NzA5Njc0MworCS5sb25nCTEwNzE5NTU5MzAKKwkubG9uZwkyOTUxNDk2NDE4CisJLmxvbmcJMTAxMzc5MzY4NworCS5sb25nCTM5MzMwNTkwMzEKKwkubG9uZwkxMDcxOTUyMjUzCisJLmxvbmcJMjEzMzM2Njc2OAorCS5sb25nCTMxNjE1MzE4MzIKKwkubG9uZwk0MDQwNjc2MzE4CisJLmxvbmcJMTA3MTk0ODU4NgorCS5sb25nCTQwOTA2MDkyMzgKKwkubG9uZwkxMDE1NjYzNDU4CisJLmxvbmcJMzc4NDQ4NjYxMAorCS5sb25nCTEwNzE5NDQ5MjkKKwkubG9uZwkxNTgxODgzMDQwCisJLmxvbmcJMzE2MTY5ODk1MworCS5sb25nCTMwNDkzNDAxMTIKKwkubG9uZwkxMDcxOTQxMjgyCisJLmxvbmcJMzA2MjkxNTgyNAorCS5sb25nCTEwMTMxNzA1OTUKKwkubG9uZwkxNzIwMzk4MzkxCisJLmxvbmcJMTA3MTkzNzY0NQorCS5sb25nCTM5ODA2Nzg5NjMKKwkubG9uZwkzMTYzMzAwMDgwCisJLmxvbmcJMzk3ODEwMDgyMworCS5sb25nCTEwNzE5MzQwMTcKKwkubG9uZwkzNTEzMDI3MTkwCisJLmxvbmcJMTAxNTg0NTk2MworCS5sb25nCTExMTgyOTQ1NzgKKwkubG9uZwkxMDcxOTMwNDAwCisJLmxvbmcJMjE5NzQ5NTY5NAorCS5sb25nCTMxNTk5MDk0MDEKKwkubG9uZwkxNjE3MDA0ODQ1CisJLmxvbmcJMTA3MTkyNjc5MgorCS5sb25nCTgyODA0OTQ0CisJLmxvbmcJMTAxMDM0Mjc3OAorCS5sb25nCTEwNjU2NjI5MzIKKwkubG9uZwkxMDcxOTIzMTk0CisJLmxvbmcJMjUzMzY3MDkxNQorCS5sb25nCTEwMTQ1MzAyMzgKKwkubG9uZwkzNjQ1OTQxOTExCisJLmxvbmcJMTA3MTkxOTYwNQorCS5sb25nCTM4MTQ2ODUwODEKKwkubG9uZwkzMTYxNTczMzQxCisJLmxvbmcJNjU0OTE5MzA2CisJLmxvbmcJMTA3MTkxNjAyNworCS5sb25nCTMyMzI5NjE3NTcKKwkubG9uZwkzMTYzMDQ3NDY5CisJLmxvbmcJNTY5ODQ3MzM4CisJLmxvbmcJMTA3MTkxMjQ1OAorCS5sb25nCTQ3Mjk0NTI3MgorCS5sb25nCTMxNTkyOTA3MjkKKwkubG9uZwkzMjc4MzQ4MzI0CisJLmxvbmcJMTA3MTkwODg5OAorCS5sb25nCTMwNjk0OTc0MTYKKwkubG9uZwkxMDE0NzUwNzEyCisJLmxvbmcJNzg0MTM4NTIKKwkubG9uZwkxMDcxOTA1MzQ5CisJLmxvbmcJNDE4MzIyNjg2NworCS5sb25nCTMxNjMwMTcyNTEKKwkubG9uZwkzNzQzMTc1MDI5CisJLmxvbmcJMTA3MTkwMTgwOAorCS5sb25nCTIwNzI4MTI0OTAKKwkubG9uZwkzMTYyMTc1MDc1CisJLmxvbmcJMTI3NjI2MTQxMAorCS5sb25nCTEwNzE4OTgyNzgKKwkubG9uZwkzMDA5ODE5NDgKKwkubG9uZwkxMDE0Njg0MTY5CisJLmxvbmcJMTE1NjQ0MDQzNQorCS5sb25nCTEwNzE4OTQ3NTcKKwkubG9uZwkyMzUxNDUxMjQ5CisJLmxvbmcJMTAxMzk2NzA1NgorCS5sb25nCTMyNzI4NDU1NDEKKwkubG9uZwkxMDcxODkxMjQ1CisJLmxvbmcJOTI4ODUyNDE5CisJLmxvbmcJMzE2MzQ4ODI0OAorCS5sb25nCTMyMTk5NDI2NDQKKwkubG9uZwkxMDcxODg3NzQzCisJLmxvbmcJMzc5ODk5MDYxNgorCS5sb25nCTEwMTUzNjg4MDYKKwkubG9uZwk4ODc0NjM5MjcKKwkubG9uZwkxMDcxODg0MjUxCisJLmxvbmcJMzU5Njc0NDE2MworCS5sb25nCTMxNjA3OTQxNjYKKwkubG9uZwk0NjA0MDcwMjMKKwkubG9uZwkxMDcxODgwNzY4CisJLmxvbmcJNDIzNzE3NTA5MgorCS5sb25nCTMxNjMxMzg0NjkKKwkubG9uZwkxODI5MDk5NjIyCisJLmxvbmcJMTA3MTg3NzI5NAorCS5sb25nCTEwMTY2NjExODEKKwkubG9uZwkzMTYzNDYxMDA1CisJLmxvbmcJNTg5MTk4NjY2CisJLmxvbmcJMTA3MTg3MzgzMAorCS5sb25nCTI2NjQzNDYxNzIKKwkubG9uZwkzMTYzMTU3OTYyCisJLmxvbmcJOTI2NTkxNDM1CisJLmxvbmcJMTA3MTg3MDM3NQorCS5sb25nCTMyMDg4MzM3NjIKKwkubG9uZwkzMTYyOTEzNTE0CisJLmxvbmcJMjczMjQ5Mjg1OQorCS5sb25nCTEwNzE4NjY5MjkKKwkubG9uZwkyNjkxNDc5NjQ2CisJLmxvbmcJMzE2MjI1NTY4NAorCS5sb25nCTE2MDM0NDQ3MjEKKwkubG9uZwkxMDcxODYzNDkzCisJLmxvbmcJMTU0ODYzMzY0MAorCS5sb25nCTMxNjIyMDEzMjYKKwkubG9uZwkxNzI2MjE2NzQ5CisJLmxvbmcJMTA3MTg2MDA2NgorCS5sb25nCTI0NjY4MDgyMjgKKwkubG9uZwkzMTYxNjc2NDA1CisJLmxvbmcJMjk5MjkwMzkzNQorCS5sb25nCTEwNzE4NTY2NDgKKwkubG9uZwkyMjE4MTU0NDA2CisJLmxvbmcJMTAxNTIyODE5MworCS5sb25nCTEwMDA5MjU3NDYKKwkubG9uZwkxMDcxODUzMjQwCisJLmxvbmcJMTAxODQ5MTY3MgorCS5sb25nCTMxNjMzMDk1NDQKKwkubG9uZwk0MjMyODk0NTEzCisJLmxvbmcJMTA3MTg0OTg0MAorCS5sb25nCTIzODM5Mzg2ODQKKwkubG9uZwkxMDE0NjY4NTE5CisJLmxvbmcJMzk5MTg0MzU4MQorCS5sb25nCTEwNzE4NDY0NTAKKwkubG9uZwk0MDkyODUzNDU3CisJLmxvbmcJMTAxNDU4NTc2MworCS5sb25nCTE3MTAzMDI5MworCS5sb25nCTEwNzE4NDMwNzAKKwkubG9uZwkzNTI2NDYwMTMyCisJLmxvbmcJMTAxNDQyODc3OAorCS5sb25nCTEyNTM5MzUyMTEKKwkubG9uZwkxMDcxODM5Njk4CisJLmxvbmcJMTM5NTM4MjkzMQorCS5sb25nCTMxNTk3MDI2MTMKKwkubG9uZwkyODM5NDI0ODU0CisJLmxvbmcJMTA3MTgzNjMzNQorCS5sb25nCTExNzE1OTYxNjMKKwkubG9uZwkxMDEzMDQxNjc5CisJLmxvbmcJNTI2NjUyODA5CisJLmxvbmcJMTA3MTgzMjk4MgorCS5sb25nCTQyMjM0NTk3MzYKKwkubG9uZwkxMDE1ODc5Mzc1CisJLmxvbmcJMjc5OTk2MDg0MworCS5sb25nCTEwNzE4Mjk2MzcKKwkubG9uZwkxNDIzNjU1MzgxCisJLmxvbmcJMTAxNTAyMjE1MQorCS5sb25nCTk2NDEwNzA1NQorCS5sb25nCTEwNzE4MjYzMDIKKwkubG9uZwkyODAwNDM5NTg4CisJLmxvbmcJMzE2MjgzMzIyMQorCS5sb25nCTM1MDQwMDM0NzIKKwkubG9uZwkxMDcxODIyOTc1CisJLmxvbmcJMzU5NDAwMTA2MAorCS5sb25nCTMxNTczMzA2NTIKKwkubG9uZwkxNzI0OTc2OTE1CisJLmxvbmcJMTA3MTgxOTY1OAorCS5sb25nCTQyMDkwOTIyMworCS5sb25nCTMxNjMxMTczNzkKKwkubG9uZwk0MTEyNTA2NTkzCisJLmxvbmcJMTA3MTgxNjM0OQorCS5sb25nCTI5NDczNTUyMjEKKwkubG9uZwkxMDE0MzcxMDQ4CisJLmxvbmcJMTk3MjQ4NDk3NgorCS5sb25nCTEwNzE4MTMwNTAKKwkubG9uZwk2NzUyOTAzMDEKKwkubG9uZwkzMTYxNjQwMDUwCisJLmxvbmcJMzc5MDk1NTM5MworCS5sb25nCTEwNzE4MDk3NTkKKwkubG9uZwkyMzUyOTQyNDYyCisJLmxvbmcJMzE2MzE4MDA5MAorCS5sb25nCTg3NDM3MjkwNQorCS5sb25nCTEwNzE4MDY0NzgKKwkubG9uZwkxMDAyNjM3ODgKKwkubG9uZwkxMDE1OTQwNzMyCisJLmxvbmcJMTcwOTM0MTkxNworCS5sb25nCTEwNzE4MDMyMDUKKwkubG9uZwkyNTcxMTY4MjE3CisJLmxvbmcJMTAxNDE1MjQ5OQorCS5sb25nCTE4OTc4NDQzNDEKKwkubG9uZwkxMDcxNzk5OTQxCisJLmxvbmcJMTI1NDMwMDQ2MAorCS5sb25nCTEwMTUyNzU5MzgKKwkubG9uZwkxMzM3MTA4MDMxCisJLmxvbmcJMTA3MTc5NjY4NgorCS5sb25nCTMyMDM3MjQ0NTIKKwkubG9uZwkxMDE0Njc3ODQ1CisJLmxvbmcJNDIxOTYwNjAyNgorCS5sb25nCTEwNzE3OTM0MzkKKwkubG9uZwkyNDM0NTc0NzQyCisJLmxvbmcJMTAxNDY4MTU0OAorCS5sb25nCTE4NTMxODY2MTYKKwkubG9uZwkxMDcxNzkwMjAyCisJLmxvbmcJMzA2NjQ5NjM3MQorCS5sb25nCTEwMTU2NTY1NzQKKwkubG9uZwkyNzI1ODQzNjY1CisJLmxvbmcJMTA3MTc4Njk3MworCS5sb25nCTE0MzM5MTcwODcKKwkubG9uZwkxMDE0ODM4NTIzCisJLmxvbmcJMjQ0MDk0NDc5MAorCS5sb25nCTEwNzE3ODM3NTMKKwkubG9uZwkyNDkyNzY5Nzc0CisJLmxvbmcJMTAxNDE0NzQ1NAorCS5sb25nCTg5NzA5OTgwMQorCS5sb25nCTEwNzE3ODA1NDIKKwkubG9uZwk3NTQ3NTYyOTcKKwkubG9uZwkxMDE1MjQxMDA1CisJLmxvbmcJMjI4ODE1OTk1OAorCS5sb25nCTEwNzE3NzczMzkKKwkubG9uZwkyMTY5MTQ0NDY5CisJLmxvbmcJMTAxNDg3NjAyMQorCS5sb25nCTIyMTgzMTUzNDEKKwkubG9uZwkxMDcxNzc0MTQ1CisJLmxvbmcJMjY5NDI5NTM4OAorCS5sb25nCTMxNjMyODg4NjgKKwkubG9uZwk1ODY5OTU5OTcKKwkubG9uZwkxMDcxNzcwOTYwCisJLmxvbmcJNDE2NjIzNDgKKwkubG9uZwkzMTYyNjI3OTkyCisJLmxvbmcJMTU4ODg3MTIwNworCS5sb25nCTEwNzE3Njc3ODMKKwkubG9uZwkxNDM0Mzk1ODIKKwkubG9uZwkzMTYyOTYzNDE2CisJLmxvbmcJODI4OTQ2ODU4CisJLmxvbmcJMTA3MTc2NDYxNQorCS5sb25nCTEwNjQyNDkyCisJLmxvbmcJMTAxNTkzOTQzOAorCS5sb25nCTI1MDI0MzM4OTkKKwkubG9uZwkxMDcxNzYxNDU1CisJLmxvbmcJMjE0ODU5NTkxMworCS5sb25nCTEwMTUwMjM5OTEKKwkubG9uZwkyMjE0ODc4NDIwCisJLmxvbmcJMTA3MTc1ODMwNAorCS5sb25nCTg5MjI3MDA4NworCS5sb25nCTMxNjMxMTY0MjIKKwkubG9uZwk0MTYyMDMwMTA4CisJLmxvbmcJMTA3MTc1NTE2MQorCS5sb25nCTI3NjM0Mjg0ODAKKwkubG9uZwkxMDE1NTI5MzQ5CisJLmxvbmcJMzk0OTk3MjM0MQorCS5sb25nCTEwNzE3NTIwMjcKKwkubG9uZwkyMDY4NDA4NTQ4CisJLmxvbmcJMTAxNDkxMzg2OAorCS5sb25nCTE0ODAwMjMzNDMKKwkubG9uZwkxMDcxNzQ4OTAyCisJLmxvbmcJMjI0NzE5NjE2OAorCS5sb25nCTEwMTUzMjc0NTMKKwkubG9uZwk5NDg3MzU0NjYKKwkubG9uZwkxMDcxNzQ1Nzg1CisJLmxvbmcJMzUxNjMzODAyOAorCS5sb25nCTMxNjI1NzQ4ODMKKwkubG9uZwkyMjU3OTU5ODcyCisJLmxvbmcJMTA3MTc0MjY3NgorCS5sb25nCTM4MDI5NDYxNDgKKwkubG9uZwkxMDEyOTY0OTI3CisJLmxvbmcJMTAxNDg0NTgxOQorCS5sb25nCTEwNzE3Mzk1NzYKKwkubG9uZwkzMTE3OTEwNjQ2CisJLmxvbmcJMzE2MTU1OTEwNQorCS5sb25nCTE0MTY3NDE4MjYKKwkubG9uZwkxMDcxNzM2NDg0CisJLmxvbmcJMjE5NjM4MDIxMAorCS5sb25nCTEwMTE0MTM1NjMKKwkubG9uZwkzMzY2MjkzMDczCisJLmxvbmcJMTA3MTczMzQwMAorCS5sb25nCTMxMTk0MjYzMTQKKwkubG9uZwkxMDE0MTIwNTU0CisJLmxvbmcJMjQ3MTQ0MDY4NgorCS5sb25nCTEwNzE3MzAzMjUKKwkubG9uZwk5Njg4MzYyNjcKKwkubG9uZwkzMTYyMjE0ODg4CisJLmxvbmcJMjkzMDMyMjkxMgorCS5sb25nCTEwNzE3MjcyNTgKKwkubG9uZwkyNTk5NDk5NDIyCisJLmxvbmcJMzE2MjcxNDA0NworCS5sb25nCTM1MTQwNTIyNworCS5sb25nCTEwNzE3MjQyMDAKKwkubG9uZwkzMTI1MzM3MzI4CisJLmxvbmcJMzE1OTgyMjQ3OQorCS5sb25nCTMyMjgzMTYxMDgKKwkubG9uZwkxMDcxNzIxMTQ5CisJLmxvbmcJMzAxMDI0MTk5MQorCS5sb25nCTMxNTg0MjI4MDQKKwkubG9uZwkyODc1MDc1MjU0CisJLmxvbmcJMTA3MTcxODEwNworCS5sb25nCTQxNDQyMzMzMzAKKwkubG9uZwkzMTYzMzMzNzE2CisJLmxvbmcJMzQ5MDg2Mzk1MworCS5sb25nCTEwNzE3MTUwNzMKKwkubG9uZwk5NjA3OTc0OTgKKwkubG9uZwkzMTYyOTQ4ODgwCisJLmxvbmcJNjg1MTg3OTAyCisJLmxvbmcJMTA3MTcxMjA0OAorCS5sb25nCTM3ODczMTk4OQorCS5sb25nCTEwMTQ4NDMxMTUKKwkubG9uZwkyOTUyNzEyOTg3CisJLmxvbmcJMTA3MTcwOTAzMAorCS5sb25nCTMyOTM0OTQ2NTEKKwkubG9uZwkzMTYwMTIwMzAxCisJLmxvbmcJMTYwODQ5MzUwOQorCS5sb25nCTEwNzE3MDYwMjEKKwkubG9uZwkzMTU5NjIyMTcxCisJLmxvbmcJMzE2MjgwNzczNworCS5sb25nCTg1Mjc0MjU2MgorCS5sb25nCTEwNzE3MDMwMjAKKwkubG9uZwk2NjcyNTM1ODYKKwkubG9uZwkxMDA5NzkzNTU5CisJLmxvbmcJNTkwOTYyMTU2CisJLmxvbmcJMTA3MTcwMDAyNworCS5sb25nCTM4MjkzNDY2NjYKKwkubG9uZwkzMTYzMjc1NTk3CisJLmxvbmcJNzI4OTA5ODE1CisJLmxvbmcJMTA3MTY5NzA0MgorCS5sb25nCTM4MzkzMDIyNQorCS5sb25nCTEwMTUwMjk0NjgKKwkubG9uZwkxMTcyNTk3ODkzCisJLmxvbmcJMTA3MTY5NDA2NQorCS5sb25nCTExNDQzMzI2MworCS5sb25nCTEwMTUzNDc1OTMKKwkubG9uZwkxODI4MjkyODc5CisJLmxvbmcJMTA3MTY5MTA5NgorCS5sb25nCTEyNTU5NTY3NDcKKwkubG9uZwkxMDE1NTg4Mzk4CisJLmxvbmcJMjYwMjUxNDcxMworCS5sb25nCTEwNzE2ODgxMzUKKwkubG9uZwkyMjY4OTI5MzM2CisJLmxvbmcJMTAxNDM1NDI4NAorCS5sb25nCTM0MDIwMzYwOTkKKwkubG9uZwkxMDcxNjg1MTgyCisJLmxvbmcJNDA1ODg5MzM0CisJLmxvbmcJMTAxNTEwNTY1NgorCS5sb25nCTQxMzM4ODE4MjQKKwkubG9uZwkxMDcxNjgyMjM3CisJLmxvbmcJMjE0ODE1NTM0NQorCS5sb25nCTMxNjI5MzEyOTkKKwkubG9uZwk0MTAzNjA3NzYKKwkubG9uZwkxMDcxNjc5MzAxCisJLmxvbmcJMTI2OTk5MDY1NQorCS5sb25nCTEwMTE5NzU4NzAKKwkubG9uZwk3Mjg5MzQ0NTQKKwkubG9uZwkxMDcxNjc2MzcyCisJLmxvbmcJMTQxMzg0MjY4OAorCS5sb25nCTEwMTQxNzg2MTIKKwkubG9uZwk3MDI0MTI1MTAKKwkubG9uZwkxMDcxNjczNDUxCisJLmxvbmcJMzgwMzI2NjA4NworCS5sb25nCTMxNjIyODA0MTUKKwkubG9uZwkyMzg4MjEyNTcKKwkubG9uZwkxMDcxNjcwNTM4CisJLmxvbmcJMTQ2OTY5NDg3MQorCS5sb25nCTMxNjI4ODQ5ODcKKwkubG9uZwkzNTQxNDAyOTk2CisJLmxvbmcJMTA3MTY2NzYzMgorCS5sb25nCTI3NTkxNzczMTcKKwkubG9uZwkxMDE0ODU0NjI2CisJLmxvbmcJMTkyODc0NjE2MQorCS5sb25nCTEwNzE2NjQ3MzUKKwkubG9uZwk5ODM2MTc2NzYKKwkubG9uZwkxMDE0Mjg1MTc3CisJLmxvbmcJMzg5OTU1NTcxNworCS5sb25nCTEwNzE2NjE4NDUKKwkubG9uZwk0MjcyODA3NTAKKwkubG9uZwkzMTYyNTQ2OTcyCisJLmxvbmcJNzcyOTE0MTI0CisJLmxvbmcJMTA3MTY1ODk2NAorCS5sb25nCTQwMDQzNzI3NjIKKwkubG9uZwkxMDEyMjMwMTYxCisJLmxvbmcJMTA0ODAxOTA0MQorCS5sb25nCTEwNzE2NTYwOTAKKwkubG9uZwkxMzk4NDc0ODQ1CisJLmxvbmcJMzE2MDUxMDU5NQorCS5sb25nCTMzOTQxMTU4NQorCS5sb25nCTEwNzE2NTMyMjQKKwkubG9uZwkyNjQ1ODg5ODIKKwkubG9uZwkzMTYxNjM2NjU3CisJLmxvbmcJMjg1MTgxMjE0OQorCS5sb25nCTEwNzE2NTAzNjUKKwkubG9uZwkyNTk1ODAyNTUxCisJLmxvbmcJMTAxNTc2NzMzNworCS5sb25nCTQyMDAyNTA1NTkKKwkubG9uZwkxMDcxNjQ3NTE0CisJLmxvbmcJMjgwODEyNzM0NQorCS5sb25nCTMxNjE3ODE5MzgKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS5sb25nCTAKKwkubG9uZwkzMjc1MjI3MTM2CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwODI1OTQ2MzEKKwkubG9uZwk0MTY2OTAxNTcyCisJLmxvbmcJMTA1NTE3NDE1NQorCS5sb25nCTM4ODQ2MDcyODEKKwkubG9uZwkzMTY4MTMxMTk5CisJLmxvbmcJMzYwNzQwNDczNQorCS5sb25nCTMxOTA1ODIwMjQKKwkubG9uZwkxODc0NDgwNzU5CisJLmxvbmcJMTAzMjA0MTEzMQorCS5sb25nCTQyODY3NjAzMzQKKwkubG9uZwkxMDUzNzM2ODkzCisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTMyMTExNDQ3NzAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIzNjI4OTUwMworCS5sb25nCTEwNjQxMzU5OTcKKwkubG9uZwk0NjM1ODM3NzIKKwkubG9uZwkzMjE1Njk2MzE0CisJLmxvbmcJMTQ0MTE4NjM2NQorCS5sb25nCTMyMTI5Nzc4OTEKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDY5NjE3NDI1CisJLmxvbmcJMjI4NDU4OTMwNgorCS5sb25nCTEwNjY4MjA4NTIKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMzIxODQyOTI2OQorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3MjgwCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODAKKwkubG9uZwk0Mjk0NzA1MTUyCisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQyOTQ3MDUxNTIKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTIxNDc0ODM2NDcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkxMDczNzQxODI0CisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsNDI4MAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2L3NxcnQuUyBiL2xpYm0veDg2L3NxcnQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jOWQ0MzRkCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODYvc3FydC5TCkBAIC0wLDAgKzEsNDMgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoc3FydCkKKwltb3YJCSVlc3AsJWVheAorCWFuZAkJJDB4ZmZmZmZmZjgsJWVheAorCW1vdnNkCTB4NCglZXNwKSwleG1tMAorCXNxcnRzZAkleG1tMCwleG1tMAorCW1vdmxwZAkleG1tMCwtMHg4KCVlYXgpCisJZmxkbCAgIC0weDgoJWVheCkKKwlyZXQKK0VORChzcXJ0KQorCitBTElBU19TWU1CT0woc3FydGwsIHNxcnQpOwpkaWZmIC0tZ2l0IGEvbGlibS94ODYvc3FydGYuUyBiL2xpYm0veDg2L3NxcnRmLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzhjMTgzYgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L3NxcnRmLlMKQEAgLTAsMCArMSwzOSBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShzcXJ0ZikKKwltb3ZzcyAgMHg0KCVlc3ApLCV4bW0wCisJc3FydHNzICV4bW0wLCV4bW0wCisJbW92c3MgICV4bW0wLC0weDQoJWVzcCkKKwlmbGRzICAgLTB4NCglZXNwKQorCXJldAorRU5EKHNxcnRmKQpkaWZmIC0tZ2l0IGEvbGlibS94ODYvdHJ1bmMuUyBiL2xpYm0veDg2L3RydW5jLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGE5ZDVmYgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2L3RydW5jLlMKQEAgLTAsMCArMSw0MyBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWSh0cnVuYykKKwltb3YgICAgJWVzcCwlZWF4CisJYW5kICAgICQweGZmZmZmZmY4LCVlYXgKKwltb3ZzZCAgMHg0KCVlc3ApLCV4bW0wCisJcm91bmRzZCAkMHgzLCV4bW0wLCV4bW0wCisJbW92bHBkICV4bW0wLC0weDgoJWVheCkKKwlmbGRsICAgLTB4OCglZWF4KQorCXJldAorRU5EKHRydW5jKQorCitBTElBU19TWU1CT0wodHJ1bmNsLCB0cnVuYyk7CmRpZmYgLS1naXQgYS9saWJtL3g4Ni90cnVuY2YuUyBiL2xpYm0veDg2L3RydW5jZi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQzZTNmNGEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Ni90cnVuY2YuUwpAQCAtMCwwICsxLDM5IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKHRydW5jZikKKwltb3ZzcyAgMHg0KCVlc3ApLCV4bW0wCisJcm91bmRzcyAkMHgzLCV4bW0wLCV4bW0wCisJbW92c3MgICV4bW0wLC0weDQoJWVzcCkKKwlmbGRzICAgLTB4NCglZXNwKQorCXJldAorRU5EKHRydW5jZikKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L2NlaWwuUyBiL2xpYm0veDg2XzY0L2NlaWwuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNDQ5MmM0Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvY2VpbC5TCkBAIC0wLDAgKzEsMzYgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworRU5UUlkoY2VpbCkKK3JvdW5kc2QgJDB4MiwleG1tMCwleG1tMAorcmV0cQorRU5EKGNlaWwpCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9jZWlsZi5TIGIvbGlibS94ODZfNjQvY2VpbGYuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZTFjYTk1Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvY2VpbGYuUwpAQCAtMCwwICsxLDM2IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKGNlaWxmKQorcm91bmRzcyAkMHgyLCV4bW0wLCV4bW0wCityZXRxCitFTkQoY2VpbGYpCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9lX2Fjb3MuUyBiL2xpYm0veDg2XzY0L2VfYWNvcy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ4M2M2NmIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Nl82NC9lX2Fjb3MuUwpAQCAtMCwwICsxLDE5NTcgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgVG8gY29tcHV0ZSBhY29zKHMpLCBzZXBhcmF0ZSBzY2hlbWVzIGFyZSB1c2VkIHdoZW4gcyBpcyBpbiBkaWZmZXJlbnQKKy8vICBpbnRlcnZhbHMuCisvLworLy8gIHxzfCBpbiBbMl57LTR9LCBzcXJ0KDMpLzIpOgorLy8gICAgICAgTGV0IHQ9Ml5rKjEuYjEgYjIuLmI2IDEsIHdoZXJlIHM9Ml5rKjEuYjEgYjIgLi4gYjUyCisvLyAgICAgICBhY29zKHMpPXBpLzItYXNpbih0KS1hc2luKHIpLCB3aGVyZSByPXMqc3FydCgxLXReMiktdCpzcXJ0KDEtc14yKQorLy8gICAgICAgYXNpbihyKS1yIGV2YWx1YXRlZCBhcyA3LWRlZ3JlZSBwb2x5bm9taWFsIChjMypyXjMrYzUqcl41K2M3KnJeNykKKy8vICAgICAgIEZvciB0aGUgZmlyc3QgZGVncmVlIHRlcm0sIHIgaXMgZXZhbHVhdGVkIGFzCisvLyAgICAgICAgICAgICAgICBSPShzXjItdF4yKS8oc3FydCgxLXReMikqcytzcXJ0KDEtc14yKSp0KQorLy8gICAgICAgKHNxcnQoMS10XjIpIHJlYWQgZnJvbSB0YWJsZSkKKy8vICBUaGUgbWFpbiBzb3VyY2Ugb2YgZXJyb3IgaXMgc3RpbGwgUiAobWF5IHN0aWxsIGJlIGFmZmVjdGVkIGJ5IHVwIHRvIDMgdWxwcworLy8gIG9mIHJvdW5kaW5nIGVycm9yKS4gVGhlIHRhYmxlIHNpemUgbXVzdCBiZSBzdWZmaWNpZW50bHkgbGFyZ2UsIHRvIG1pbmltaXplCisvLyAgdGhpcyBlZmZlY3QuCisvLworLy8gIHxzfCBpbiBbc3FydCgzKS8yLCAyNTUvMjU2KToKKy8vICAgICAgIExldCB0PTJeayoxLmIxIGIyLi5iNiAxLCB3aGVyZSBzcXJ0KDEtc14yKT0yXmsqMS5iMSBiMiAuLiBiNTIgKHJvdW5kZWQpCisvLyAgICAgICBhY29zKHxzfCk9YXNpbih0KS1hc2luKHIpLCByPXMqdC1zcXJ0KDEtc14yKSpzcXJ0KDEtdF4yKQorLy8gICBhY29zKC18c3wpPXBpLWFjb3MofHN8KQorLy8gICAgICAgKFRoZSAtUEkgY29uc3RhbnQsIG9yIDAsIGlzIGFkZGVkIHRvIHRoZSByZXN1bHQuIFRoZSBzaWduIGlzIHNldCBhdAorLy8gICAgICAgIHRoZSBlbmQpCisvLyAgICAgICBhc2luKHIpIGV2YWx1YXRlZCBhcyBhIHBvbHlub21pYWwgKHNhbWUgYXMgYWJvdmUpCisvLyAgICAgICBUaGUgZmlyc3QgZGVncmVlIHRlcm0gaXMgZXZhbHVhdGVkIGFzCisvLyAgICAgICAgICAgICAgICAgICAgICAgIHI9KHNeMit0XjItMSkvKHMqdCtzcXJ0KDEtc14yKSpzcXJ0KDEtdF4yKSkKKy8vCisvLyAgfHN8PDJeey00fTogYWNvcyhzKT1waS8yLWFzaW4ocykKKy8vICAgICAgICAgICAgICBldmFsdWF0ZSBhc2luKHMpIGFzIDEzLWRlZ3JlZSBwb2x5bm9taWFsCisvLworLy8gIHxzfCBpbiBbMjU1LzI1NiwxKTogYWNvcyh8c3wpPTIqYXNpbihxKSwgd2hlcmUgcT1zcXJ0KCgxLXxzfCkvMikKKy8vICBhc2luKHEpIGlzIGV2YWx1YXRlZCBhcyAxMy1kZWdyZWUgcG9seW5vbWlhbAorLy8gICAgICBxXjI9KDEtfHN8KS8yIGlzIG9idGFpbmVkIGluIGFkdmFuY2UKKy8vICAgICAgICAgMipxKmVwcyB+ICgoMS18c3wpLzItcV4yKS9xIHVzZWQgZm9yIGZpcnN0IHRlcm0KKy8vICAgYWNvcygtfHN8KT1waS1hY29zKHxzfCkKKy8vICAgICAgIChUaGUgLVBJIGNvbnN0YW50LCBvciAwLCBpcyBhZGRlZCB0byB0aGUgcmVzdWx0LiBUaGUgc2lnbiBpcyBzZXQgYXQKKy8vICAgICAgICB0aGUgZW5kKQorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgYWNvcyhOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBhY29zKElORikgPSBRTmFOIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIGFjb3MoeCkgPSBRTmFOIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbiwgZm9yIHx4fD4xLjAKKy8vICBhY29zKDEpID0gKzAKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBhY29zCitFTlRSWShhY29zKQorIyBwYXJhbWV0ZXIgMTogJXhtbTAKKy4uQjEuMToKKy4uX19fdGFnX3ZhbHVlX2Fjb3MuMToKKyAgICAgICAgc3VicSAgICAgICQyNCwgJXJzcAorLi5fX190YWdfdmFsdWVfYWNvcy4zOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglcnNwKQorLi5CMS4yOgorICAgICAgICBtb3ZzZCAgICAgQUJTVkFMTUFTSyglcmlwKSwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIE9ORU1BU0soJXJpcCksICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbW92c2QgICAgIFRNQVNLKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIHBzcmxxICAgICAkNDQsICV4bW0wCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVkeAorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdmwgICAgICAkODE5MiwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDIsICVlY3gsICV4bW01CisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQ1MjQyODcsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQyNjA4NjQsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQ5NTUsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgYW5kbCAgICAgICQ2NTUzNSwgJWVkeAorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHNxcnRzZCAgICAleG1tMywgJXhtbTMKKyAgICAgICAgYW5kcGQgICAgICV4bW03LCAleG1tMgorICAgICAgICBhbmRsICAgICAgJC00LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkNjQyNTYsICVlZHgKKyAgICAgICAgbGVhICAgICAgIFRfdGFibGUoJXJpcCksICVyOAorICAgICAgICBtb3ZzZCAgICAgKCVyOCwlcmR4LDIpLCAleG1tMQorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGxlYSAgICAgICBUYmxfYWRkciglcmlwKSwgJXI4CisgICAgICAgIG1vdmFwZCAgICAoJXI4LCVyZHgsNCksICV4bW00CisgICAgICAgIG1vdnEgICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdnEgICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBkaXZzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIG1vdnNkICAgICAyNCtjdiglcmlwKSwgJXhtbTAKKyAgICAgICAgbW92c2QgICAgIDgrY3YoJXJpcCksICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgcHNybHEgICAgICQ2MywgJXhtbTIKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMworICAgICAgICBwc2xscSAgICAgJDYzLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgMTYrY3YoJXJpcCksICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgc3VicGQgICAgIFBJX0JZXzIoJXJpcCksICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW00LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgc3VibCAgICAgICQ5NTUsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQ2NSwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKyAgICAgICAgcHNybHEgICAgICQzOCwgJXhtbTcKKyAgICAgICAgcHNsbHEgICAgICQzOCwgJXhtbTcKKyAgICAgICAgcG1vdm1za2IgICV4bW0wLCAlZWF4CisgICAgICAgIGFuZG5wZCAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBtb3ZxICAgICAgJXhtbTcsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBvcnBkICAgICAgJXhtbTQsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTMsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgc3FydHNkICAgICV4bW0zLCAleG1tMworICAgICAgICBhbmRsICAgICAgJDEyOCwgJWVheAorICAgICAgICBzaHJsICAgICAgJDcsICVlYXgKKyAgICAgICAgbmVnbCAgICAgICVlYXgKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tNworICAgICAgICBhbmRwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHBzbGxxICAgICAkMiwgJXhtbTMKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMywgJWVkeAorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAlZWF4LCAleG1tMworICAgICAgICBwc2h1ZmQgICAgJDAsICV4bW0zLCAleG1tMworICAgICAgICBzdWJsICAgICAgJDY1MjE2LCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIGxlYSAgICAgICBUX3RhYmxlKCVyaXApLCAlcjgKKyAgICAgICAgbXVsc2QgICAgICglcjgsJXJkeCw0KSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBhbmRwZCAgICAgTkVHX1BJKCVyaXApLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNworICAgICAgICBtb3ZzZCAgICAgOCtjdiglcmlwKSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIG1vdnNkICAgICAyNCtjdiglcmlwKSwgJXhtbTAKKyAgICAgICAgZGl2c2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgMTYrY3YoJXJpcCksICV4bW0yCisgICAgICAgIGxlYSAgICAgICBUYmxfYWRkciglcmlwKSwgJXI4CisgICAgICAgIGFkZHBkICAgICAoJXI4LCVyZHgsOCksICV4bW0zCisgICAgICAgIG1vdnEgICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgcHhvciAgICAgICV4bW02LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTYKKyAgICAgICAgbW92cSAgICAgICV4bW00LCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTMsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBhZGRsICAgICAgJDE1MjkxLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTQzMzYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIHVucGNrbHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIGN2MiglcmlwKSwgJXhtbTYKKyAgICAgICAgdW5wY2tscGQgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgMTYrY3YyKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgMzIrY3YyKCVyaXApLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICBQSV9CWV8yKCVyaXApLCAleG1tNQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW00LCAleG1tNgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIHN1YmwgICAgICAkMTUzNTYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQ0LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIGFuZHBkICAgICBBQlNWQUxNQVNLKCVyaXApLCAleG1tNworICAgICAgICBtb3ZzZCAgICAgT05FX0JZXzIoJXJpcCksICV4bW00CisgICAgICAgIG1vdmFwZCAgICBjdjIoJXJpcCksICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgIDE2K2N2MiglcmlwKSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgMzIrY3YyKCVyaXApLCAleG1tMworICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNCwgJXhtbTcKKyAgICAgICAgc3FydHNkICAgICV4bW00LCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW03LCAleG1tNQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgSEFMRk1BU0soJXJpcCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgY21wc2QgICAgICQxLCAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIGFuZHBkICAgICBORUdfUEkoJXJpcCksICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgICV4bW00LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNCwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0zLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIGRpdnNkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIGFkZGwgICAgICAkMjYxODg0LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMjYxODg4LCAlZWF4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBtb3ZkICAgICAgJXhtbTcsICVlY3gKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTcKKyAgICAgICAgbW92ZCAgICAgICV4bW03LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVkeAorICAgICAgICBtb3ZsICAgICAgJDEwNzI2OTMyNDgsICVlYXgKKyAgICAgICAgc3VibCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBtb3ZzZCAgICAgKCVyc3ApLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVjeAorICAgICAgICBzdWJsICAgICAgJDEsICVlZHgKKyAgICAgICAgc2JibCAgICAgICQyMTQ2NDM1MDcyLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqZ2UgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIHBleHRydyAgICAkMSwgJXhtbTcsICVlZHgKKyAgICAgICAgc2hybCAgICAgICQxNSwgJWVkeAorICAgICAgICBuZWdsICAgICAgJWVkeAorICAgICAgICBtb3ZkICAgICAgJWVkeCwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQwLCAleG1tNywgJXhtbTcKKyAgICAgICAgbW92c2QgICAgIFBJKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgOCtQSSglcmlwKSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW03LCAleG1tMgorICAgICAgICBhbmRwZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIG1vdnNkICAgICBQSV9CWV8yKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgOCtQSV9CWV8yKCVyaXApLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgOCglcnNwKQorLi5CMS4zOgorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzguMC4yOgorLi5CMS41OgorICAgICAgICBhZGRxICAgICAgJDI0LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9hY29zLjQ6CisgICAgICAgIHJldCAgICAgICAKKy4uX19fdGFnX3ZhbHVlX2Fjb3MuNToKK0VORChhY29zKQorIyAtLSBFbmQgIGFjb3MKKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK0FCU1ZBTE1BU0s6CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTIxNDc0ODM2NDcKKwkubG9uZwkwCisJLmxvbmcJMAorCS50eXBlCUFCU1ZBTE1BU0ssQG9iamVjdAorCS5zaXplCUFCU1ZBTE1BU0ssMTYKKwkuYWxpZ24gMTYKK1RfdGFibGU6CisJLmxvbmcJMjY0Mjc4NDUwOQorCS5sb25nCTEwNzI2ODkwODMKKwkubG9uZwkxNTE0NDQyNTMxCisJLmxvbmcJMTA3MjY4ODk1MworCS5sb25nCTMzMzEwODkzMworCS5sb25nCTEwNzI2ODg4MjEKKwkubG9uZwkzMzkyMTEyMDI0CisJLmxvbmcJMTA3MjY4ODY4NgorCS5sb25nCTIwOTk4NTI4NjIKKwkubG9uZwkxMDcyNjg4NTUwCisJLmxvbmcJNzQ5NjA5MDA0CisJLmxvbmcJMTA3MjY4ODQxMgorCS5sb25nCTM2MzQ2MzI1OTYKKwkubG9uZwkxMDcyNjg4MjcxCisJLmxvbmcJMjE2MzI0ODQ2MQorCS5sb25nCTEwNzI2ODgxMjkKKwkubG9uZwk2Mjg2NTc4NDYKKwkubG9uZwkxMDcyNjg3OTg1CisJLmxvbmcJMzMyNDAzNjUxMQorCS5sb25nCTEwNzI2ODc4MzgKKwkubG9uZwkxNjU3NjMyODE1CisJLmxvbmcJMTA3MjY4NzY5MAorCS5sb25nCTQyMTc1Mzg3NjAKKwkubG9uZwkxMDcyNjg3NTM5CisJLmxvbmcJMjQxMTk1MTU5NworCS5sb25nCTEwNzI2ODczODcKKwkubG9uZwk1MzM5NDQ4NzIKKwkubG9uZwkxMDcyNjg3MjMzCisJLmxvbmcJMjg3NjU2NjUwOAorCS5sb25nCTEwNzI2ODcwNzYKKwkubG9uZwk4NDc5MzY4OTEKKwkubG9uZwkxMDcyNjg2OTE4CisJLmxvbmcJMzAzNjAxOTkxMworCS5sb25nCTEwNzI2ODY3NTcKKwkubG9uZwk4NDg4ODQ1NzUKKwkubG9uZwkxMDcyNjg2NTk1CisJLmxvbmcJMjg3NDQ0MzMyNgorCS5sb25nCTEwNzI2ODY0MzAKKwkubG9uZwk1MjA3MTM2NjYKKwkubG9uZwkxMDcyNjg2MjY0CisJLmxvbmcJMjM3NTU1NjQ4MQorCS5sb25nCTEwNzI2ODYwOTUKKwkubG9uZwk0MTQxOTA0OTQ4CisJLmxvbmcJMTA3MjY4NTkyNAorCS5sb25nCTE1MjI2NjYzODIKKwkubG9uZwkxMDcyNjg1NzUyCisJLmxvbmcJMzEwNTYyNDEwNAorCS5sb25nCTEwNzI2ODU1NzcKKwkubG9uZwkyOTg2NjYzMjcKKwkubG9uZwkxMDcyNjg1NDAxCisJLmxvbmcJMTY4OTUyNDUwMAorCS5sb25nCTEwNzI2ODUyMjIKKwkubG9uZwkyOTgxMDAyMjAwCisJLmxvbmcJMTA3MjY4NTA0MQorCS5sb25nCTQxNzA4NDQyODQKKwkubG9uZwkxMDcyNjg0ODU4CisJLmxvbmcJOTYxODAyMjYzCisJLmxvbmcJMTA3MjY4NDY3NAorCS5sb25nCTE5NDE1MDM0NTQKKwkubG9uZwkxMDcyNjg0NDg3CisJLmxvbmcJMjgxMjY0NzE3MAorCS5sb25nCTEwNzI2ODQyOTgKKwkubG9uZwkzNTcyODczODY5CisJLmxvbmcJMTA3MjY4NDEwNworCS5sb25nCTQyMTk3OTc4MjMKKwkubG9uZwkxMDcyNjgzOTE0CisJLmxvbmcJNDU2MDM5Nzg4CisJLmxvbmcJMTA3MjY4MzcyMAorCS5sb25nCTg2OTA5NjE1MQorCS5sb25nCTEwNzI2ODM1MjMKKwkubG9uZwkxMTYxNTM1MTE5CisJLmxvbmcJMTA3MjY4MzMyNAorCS5sb25nCTEzMzA4NjU4NjYKKwkubG9uZwkxMDcyNjgzMTIzCisJLmxvbmcJMTM3NDU3MTIwNAorCS5sb25nCTEwNzI2ODI5MjAKKwkubG9uZwkxMjkwMTA3NTM4CisJLmxvbmcJMTA3MjY4MjcxNQorCS5sb25nCTEwNzQ5MDQ4MzYKKwkubG9uZwkxMDcyNjgyNTA4CisJLmxvbmcJNzI2MzY2NTg3CisJLmxvbmcJMTA3MjY4MjI5OQorCS5sb25nCTI0MTg2OTc2MworCS5sb25nCTEwNzI2ODIwODgKKwkubG9uZwkzOTEzNzMyMDc5CisJLmxvbmcJMTA3MjY4MTg3NAorCS5sb25nCTMxNDkzNDI3NjUKKwkubG9uZwkxMDcyNjgxNjU5CisJLmxvbmcJMjI0MDk2NjMwNgorCS5sb25nCTEwNzI2ODE0NDIKKwkubG9uZwkxMTg1ODczMjE2CisJLmxvbmcJMTA3MjY4MTIyMworCS5sb25nCTQyNzYyNzQ1OTEKKwkubG9uZwkxMDcyNjgxMDAxCisJLmxvbmcJMjkxOTQ1Mjg4MworCS5sb25nCTEwNzI2ODA3NzgKKwkubG9uZwkxNDA3NTY1NjM1CisJLmxvbmcJMTA3MjY4MDU1MworCS5sb25nCTQwMzI3NDM1NTEKKwkubG9uZwkxMDcyNjgwMzI1CisJLmxvbmcJMjIwMjE4ODU2NQorCS5sb25nCTEwNzI2ODAwOTYKKwkubG9uZwkyMDc5Nzc1NzcKKwkubG9uZwkxMDcyNjc5ODY1CisJLmxvbmcJMjM0MjE2MDUxOAorCS5sb25nCTEwNzI2Nzk2MzEKKwkubG9uZwkxMTg1ODQyMworCS5sb25nCTEwNzI2NzkzOTYKKwkubG9uZwkxODA0MDM0NDUzCisJLmxvbmcJMTA3MjY3OTE1OAorCS5sb25nCTM0MjA3MjI3ODcKKwkubG9uZwkxMDcyNjc4OTE4CisJLmxvbmcJNTYzOTMwNDU2CisJLmxvbmcJMTA3MjY3ODY3NworCS5sb25nCTE4MjA1MzkxOTIKKwkubG9uZwkxMDcyNjc4NDMzCisJLmxvbmcJMjg5MjUwMTYwNgorCS5sb25nCTEwNzI2NzgxODcKKwkubG9uZwkzNzc2NzEwMzIwCisJLmxvbmcJMTA3MjY3NzkzOQorCS5sb25nCTE3NTA2MzMzNworCS5sb25nCTEwNzI2Nzc2OTAKKwkubG9uZwk2NzQzMzMxNzEKKwkubG9uZwkxMDcyNjc3NDM4CisJLmxvbmcJOTc2MzYzMDI2CisJLmxvbmcJMTA3MjY3NzE4NAorCS5sb25nCTEwNzc5MzU5MzQKKwkubG9uZwkxMDcyNjc2OTI4CisJLmxvbmcJMTkyMTA3NTQ5MAorCS5sb25nCTEwNzI2NzY1NDAKKwkubG9uZwk4ODE0OTMzMDIKKwkubG9uZwkxMDcyNjc2MDE2CisJLmxvbmcJMzI3NTc1MjQzOQorCS5sb25nCTEwNzI2NzU0ODMKKwkubG9uZwk0ODY4NTU1ODgKKwkubG9uZwkxMDcyNjc0OTQzCisJLmxvbmcJMTA3NzIyOTExMQorCS5sb25nCTEwNzI2NzQzOTQKKwkubG9uZwk3MjM5NTAzMDgKKwkubG9uZwkxMDcyNjczODM3CisJLmxvbmcJMzY5MzU4MjE5OQorCS5sb25nCTEwNzI2NzMyNzEKKwkubG9uZwkxMzY3MzM1MzE2CisJLmxvbmcJMTA3MjY3MjY5OAorCS5sb25nCTIzMDU4MzcwMjAKKwkubG9uZwkxMDcyNjcyMTE2CisJLmxvbmcJMjE4NDM1ODY0MQorCS5sb25nCTEwNzI2NzE1MjYKKwkubG9uZwk5NzI2ODI4NDAKKwkubG9uZwkxMDcyNjcwOTI4CisJLmxvbmcJMjkzNTEwMTc2MgorCS5sb25nCTEwNzI2NzAzMjEKKwkubG9uZwkzNzQ1NTEzMjYzCisJLmxvbmcJMTA3MjY2OTcwNgorCS5sb25nCTMzNzIzMjA4ODYKKwkubG9uZwkxMDcyNjY5MDgzCisJLmxvbmcJMTc4MzQ2NDYyMAorCS5sb25nCTEwNzI2Njg0NTIKKwkubG9uZwkzMjQxMzg2MjE1CisJLmxvbmcJMTA3MjY2NzgxMgorCS5sb25nCTM0MTgxMjUyODQKKwkubG9uZwkxMDcyNjY3MTY0CisJLmxvbmcJMjI4MDIxOTE0OAorCS5sb25nCTEwNzI2NjY1MDgKKwkubG9uZwk0MDg4NzAwNzU4CisJLmxvbmcJMTA3MjY2NTg0MworCS5sb25nCTIxOTIyNzQwMAorCS5sb25nCTEwNzI2NjUxNzEKKwkubG9uZwkzNTIxODE2OTE4CisJLmxvbmcJMTA3MjY2NDQ4OQorCS5sb25nCTEwNzYyMDUyNzkKKwkubG9uZwkxMDcyNjYzODAwCisJLmxvbmcJMTQzNjQ4NDYxNgorCS5sb25nCTEwNzI2NjMxMDIKKwkubG9uZwkyNzEzNjI2MTAKKwkubG9uZwkxMDcyNjYyMzk2CisJLmxvbmcJMTgzODk5NjY4OAorCS5sb25nCTEwNzI2NjE2ODEKKwkubG9uZwkxODA3MTIyNTE4CisJLmxvbmcJMTA3MjY2MDk1OAorCS5sb25nCTEzNzk1MzU0MgorCS5sb25nCTEwNzI2NjAyMjcKKwkubG9uZwkxMDg4MTc4NTg0CisJLmxvbmcJMTA3MjY1OTQ4NworCS5sb25nCTMyNDA1NzUzNworCS5sb25nCTEwNzI2NTg3MzkKKwkubG9uZwkyMTAxMjg4MDc2CisJLmxvbmcJMTA3MjY1Nzk4MgorCS5sb25nCTIwODUxMzM5NzQKKwkubG9uZwkxMDcyNjU3MjE3CisJLmxvbmcJMjM1MzI0NDUxCisJLmxvbmcJMTA3MjY1NjQ0NAorCS5sb25nCTgwNjA1MTU5MgorCS5sb25nCTEwNzI2NTU2NjIKKwkubG9uZwkzNzU2MDMzMTQwCisJLmxvbmcJMTA3MjY1NDg3MQorCS5sb25nCTQ1MzU0MjU0MworCS5sb25nCTEwNzI2NTQwNzMKKwkubG9uZwkzNzQxMTc3MzI3CisJLmxvbmcJMTA3MjY1MzI2NQorCS5sb25nCTY5MTIxNjEwOQorCS5sb25nCTEwNzI2NTI0NTAKKwkubG9uZwk0MTQ1MjIzMzcyCisJLmxvbmcJMTA3MjY1MTYyNQorCS5sb25nCTExNzQ0MzkwOTEKKwkubG9uZwkxMDcyNjUwNzkzCisJLmxvbmcJMzI0NDE2MTM5CisJLmxvbmcJMTA3MjY0OTk1MgorCS5sb25nCTE1NTAyNDYzMTAKKwkubG9uZwkxMDcyNjQ5MTAyCisJLmxvbmcJNTExNTI0Njc0CisJLmxvbmcJMTA3MjY0ODI0NAorCS5sb25nCTE0NTcyNDg0ODIKKwkubG9uZwkxMDcyNjQ3Mzc3CisJLmxvbmcJNDU5NDQ5NTUKKwkubG9uZwkxMDcyNjQ2NTAyCisJLmxvbmcJNTI1NTM3Mzk3CisJLmxvbmcJMTA3MjY0NTYxOAorCS5sb25nCTI4NDg0NDAxODgKKwkubG9uZwkxMDcyNjQ0NzI1CisJLmxvbmcJMjY3MTU1NTYzMworCS5sb25nCTEwNzI2NDM4MjQKKwkubG9uZwk0MjQxMTcyNjM3CisJLmxvbmcJMTA3MjY0MjkxNAorCS5sb25nCTMyMTMwOTQyNzgKKwkubG9uZwkxMDcyNjQxOTk2CisJLmxvbmcJMzgzMjUwMzY4OAorCS5sb25nCTEwNzI2NDEwNjkKKwkubG9uZwkxNzU0MDkxNTM0CisJLmxvbmcJMTA3MjY0MDEzNAorCS5sb25nCTEyMjE5MjE4MDQKKwkubG9uZwkxMDcyNjM5MTkwCisJLmxvbmcJMjE4NDUyNjQ4OQorCS5sb25nCTEwNzI2MzgyMzcKKwkubG9uZwkyOTQ5MDIwODkKKwkubG9uZwkxMDcyNjM3Mjc2CisJLmxvbmcJNDA5MDM3NTI3MAorCS5sb25nCTEwNzI2MzYzMDUKKwkubG9uZwk2MzI4NjA5MDYKKwkubG9uZwkxMDcyNjM1MzI3CisJLmxvbmcJMjc1MzQ5ODcwMgorCS5sb25nCTEwNzI2MzQzMzkKKwkubG9uZwkxODA4MDA5MjUyCisJLmxvbmcJMTA3MjYzMzM0MworCS5sb25nCTIwMzY0Mjg2NzIKKwkubG9uZwkxMDcyNjMyMzM4CisJLmxvbmcJMzM4MzIzNTYyNgorCS5sb25nCTEwNzI2MzEzMjQKKwkubG9uZwkxNDk3MzQ3NDg0CisJLmxvbmcJMTA3MjYzMDMwMgorCS5sb25nCTYxNzAxODMxNworCS5sb25nCTEwNzI2MjkyNzEKKwkubG9uZwk2ODQ5MzMwNTgKKwkubG9uZwkxMDcyNjI4MjMxCisJLmxvbmcJMTY0MzE3MDc5OAorCS5sb25nCTEwNzI2MjcxODIKKwkubG9uZwkzMDExMDY2MzYwCisJLmxvbmcJMTA3MjYyNTU5MgorCS5sb25nCTk1NzE1ODcxMworCS5sb25nCTEwNzI2MjM0NDIKKwkubG9uZwkxMzkwOTA3OTQxCisJLmxvbmcJMTA3MjYyMTI1NgorCS5sb25nCTM4MTkxNTUyNzAKKwkubG9uZwkxMDcyNjE5MDM0CisJLmxvbmcJMzQ0MzU3MTE5NgorCS5sb25nCTEwNzI2MTY3NzcKKwkubG9uZwk0MDQ1NDEyNDU4CisJLmxvbmcJMTA3MjYxNDQ4NAorCS5sb25nCTgwNTUwMzkyMworCS5sb25nCTEwNzI2MTIxNTYKKwkubG9uZwkxNzc4OTIyMDE1CisJLmxvbmcJMTA3MjYwOTc5MQorCS5sb25nCTIxMjUwMzM2NjUKKwkubG9uZwkxMDcyNjA3MzkwCisJLmxvbmcJMTI4NzIwMzg2MworCS5sb25nCTEwNzI2MDQ5NTMKKwkubG9uZwkyOTkyNjI5NTY4CisJLmxvbmcJMTA3MjYwMjQ3OQorCS5sb25nCTIzNjcyNjcxMjcKKwkubG9uZwkxMDcyNTk5OTY5CisJLmxvbmcJMzExNTUyNjA0NworCS5sb25nCTEwNzI1OTc0MjIKKwkubG9uZwkzNDAyMTk1MzkKKwkubG9uZwkxMDcyNTk0ODM5CisJLmxvbmcJMjAxNzIxNTcxOQorCS5sb25nCTEwNzI1OTIyMTgKKwkubG9uZwkzMjI1NDQzNDI0CisJLmxvbmcJMTA3MjU4OTU2MAorCS5sb25nCTMzMjY1NjU2NzMKKwkubG9uZwkxMDcyNTg2ODY1CisJLmxvbmcJMTY2OTgxMTIxMQorCS5sb25nCTEwNzI1ODQxMzMKKwkubG9uZwkxODg2NzM1MDIyCisJLmxvbmcJMTA3MjU4MTM2MworCS5sb25nCTMzMDEwNzExNzEKKwkubG9uZwkxMDcyNTc4NTU1CisJLmxvbmcJOTI4NTE0MjgzCisJLmxvbmcJMTA3MjU3NTcxMAorCS5sb25nCTI2NTYzNjQwNTkKKwkubG9uZwkxMDcyNTcyODI2CisJLmxvbmcJMzQ3MzQ5MDUwNworCS5sb25nCTEwNzI1Njk5MDQKKwkubG9uZwkyNjQ5OTY1NjA2CisJLmxvbmcJMTA3MjU2Njk0NAorCS5sb25nCTM3MzY4MTkwNTIKKwkubG9uZwkxMDcyNTYzOTQ1CisJLmxvbmcJMTY4MDg4NTE3NQorCS5sb25nCTEwNzI1NjA5MDgKKwkubG9uZwk0NDEzNzcxCisJLmxvbmcJMTA3MjU1NzgzMgorCS5sb25nCTIyMTQ4Njk3NTMKKwkubG9uZwkxMDcyNTU0NzE2CisJLmxvbmcJMzIxNDcyNTE4NAorCS5sb25nCTEwNzI1NTE1NjEKKwkubG9uZwkyMTg2MDc5OTAzCisJLmxvbmcJMTA3MjU0ODM2NworCS5sb25nCTI1OTAzNzIxMzEKKwkubG9uZwkxMDcyNTQ1MTMzCisJLmxvbmcJMzU3ODE0NjA3OQorCS5sb25nCTEwNzI1NDE4NTkKKwkubG9uZwk0MjgzNzEyNzU1CisJLmxvbmcJMTA3MjUzODU0NQorCS5sb25nCTM4MjQ4MzQ1MTAKKwkubG9uZwkxMDcyNTM1MTkxCisJLmxvbmcJMTMwMjQwMDI5OAorCS5sb25nCTEwNzI1MzE3OTcKKwkubG9uZwk5NTA1ODYzNgorCS5sb25nCTEwNzI1MjgzNjIKKwkubG9uZwkzNTYzOTA2MDYzCisJLmxvbmcJMTA3MjUyNDg4NQorCS5sb25nCTIxNjcyMzA3MzAKKwkubG9uZwkxMDcyNTIxMzY4CisJLmxvbmcJMzUyNDkxODMzNAorCS5sb25nCTEwNzI1MTc4MDkKKwkubG9uZwkyMzUzMzA0OTE4CisJLmxvbmcJMTA3MjUxNDIwOQorCS5sb25nCTE5Mzk2MjU4MzkKKwkubG9uZwkxMDcyNTEwNTY3CisJLmxvbmcJMTI1NjcxNDU4MQorCS5sb25nCTEwNzI1MDY4ODMKKwkubG9uZwkzNTUyNTI1ODQ4CisJLmxvbmcJMTA3MjUwMzE1NgorCS5sb25nCTM0NjQ4MDk1MjIKKwkubG9uZwkxMDcyNDk5Mzg3CisJLmxvbmcJNDIwMDU0MjU5MworCS5sb25nCTEwNzI0OTU1NzUKKwkubG9uZwkzNTU2MDkxMjQKKwkubG9uZwkxMDcyNDkxNzIxCisJLmxvbmcJMzY4NDEzOTA5OQorCS5sb25nCTEwNzI0ODc4MjIKKwkubG9uZwkxNDgzNTU5MTgKKwkubG9uZwkxMDcyNDgzODgxCisJLmxvbmcJMTQ1NzY4OTI0MgorCS5sb25nCTEwNzI0Nzk4OTUKKwkubG9uZwkyMTE4NTkxNTk2CisJLmxvbmcJMTA3MjQ3NTg2NQorCS5sb25nCTkwODg0ODA4OQorCS5sb25nCTEwNzI0NzE3OTEKKwkubG9uZwk4NzcwMzI2ODkKKwkubG9uZwkxMDcyNDY3NjcyCisJLmxvbmcJNzUyMDEyMzA0CisJLmxvbmcJMTA3MjQ2MzUwOAorCS5sb25nCTM1MzIzMDE3NDkKKwkubG9uZwkxMDcyNDU5Mjk4CisJLmxvbmcJMzYwMDU2MzIyMQorCS5sb25nCTEwNzI0NTUwNDMKKwkubG9uZwkzOTAyODU3MDg0CisJLmxvbmcJMTA3MjQ1MDc0MgorCS5sb25nCTMwNjMxMDEwMzYKKwkubG9uZwkxMDcyNDQ2Mzk1CisJLmxvbmcJMzk3MjM0NDM3NAorCS5sb25nCTEwNzI0NDIwMDEKKwkubG9uZwk5MDMxODM1NDkKKwkubG9uZwkxMDcyNDM3NTYxCisJLmxvbmcJOTgzODkyOTM4CisJLmxvbmcJMTA3MjQzMzA3MworCS5sb25nCTI3MjI4NTg1NjgKKwkubG9uZwkxMDcyNDI4NTM3CisJLmxvbmcJMzAyNzkwNTE1CisJLmxvbmcJMTA3MjQyMzk1NAorCS5sb25nCTc1OTgxMTA1NworCS5sb25nCTEwNzI0MTkzMjIKKwkubG9uZwkyNTA3ODA5OTIyCisJLmxvbmcJMTA3MjQxNDY0MQorCS5sb25nCTIzODg0MDg4MTMKKwkubG9uZwkxMDcyNDA3NTI4CisJLmxvbmcJMjA4NDQ5Mjk0MgorCS5sb25nCTEwNzIzOTc4NzAKKwkubG9uZwkyNDM1NzAzMzAxCisJLmxvbmcJMTA3MjM4ODAxMAorCS5sb25nCTE5MzU0MzMzNjAKKwkubG9uZwkxMDcyMzc3OTQ1CisJLmxvbmcJMjc0MjA0NzI5MAorCS5sb25nCTEwNzIzNjc2NzEKKwkubG9uZwkyMDUzMjg0MjA1CisJLmxvbmcJMTA3MjM1NzE4NQorCS5sb25nCTY1Nzc4MzM2NworCS5sb25nCTEwNzIzNDY0ODMKKwkubG9uZwkyODkzNjY0ODQxCisJLmxvbmcJMTA3MjMzNTU2MAorCS5sb25nCTM3MTg5MDY0MDUKKwkubG9uZwkxMDcyMzI0NDEzCisJLmxvbmcJMTU0Nzg5NjMwMworCS5sb25nCTEwNzIzMTMwMzgKKwkubG9uZwkyNDk0MDU4NDQwCisJLmxvbmcJMTA3MjMwMTQyOQorCS5sb25nCTMxMzMyMzg3NDIKKwkubG9uZwkxMDcyMjg5NTgyCisJLmxvbmcJMzMyNzAwMDA4NgorCS5sb25nCTEwNzIyNzc0OTIKKwkubG9uZwkxODYwNjY3Mjc0CisJLmxvbmcJMTA3MjI2NTE1NAorCS5sb25nCTY2NTM0MDc0NworCS5sb25nCTEwNzIyNTI1NjIKKwkubG9uZwk0NDMzNDc4NDEKKwkubG9uZwkxMDcyMjM5NzEwCisJLmxvbmcJNTgxMjgyNjE4CisJLmxvbmcJMTA3MjIyNjU5MgorCS5sb25nCTMzNDk3ODA0NjUKKwkubG9uZwkxMDcyMjEzMjAxCisJLmxvbmcJOTE0MjE3NjA2CisJLmxvbmcJMTA3MjE5OTUzMgorCS5sb25nCTk4OTc5NzY2MQorCS5sb25nCTEwNzIxODU1NzYKKwkubG9uZwk5NDU0MzY0MTYKKwkubG9uZwkxMDcyMTcxMzI2CisJLmxvbmcJNTQ5MjkxMzAwCisJLmxvbmcJMTA3MjE1Njc3NAorCS5sb25nCTE4MTQ2MzYzODkKKwkubG9uZwkxMDcyMTQxOTExCisJLmxvbmcJMjM5MDkyODU4CisJLmxvbmcJMTA3MjEyNjcyOQorCS5sb25nCTE3OTQ2ODA3MjQKKwkubG9uZwkxMDcyMTExMjE3CisJLmxvbmcJMTI0MTUzNDY3OAorCS5sb25nCTEwNzIwOTUzNjYKKwkubG9uZwkzMzY2NTY2MjE0CisJLmxvbmcJMTA3MjA3OTE2NAorCS5sb25nCTEyNDQwOTA4MjgKKwkubG9uZwkxMDcyMDYyNjAxCisJLmxvbmcJMTcwODQ0ODEyMAorCS5sb25nCTEwNzIwNDU2NjMKKwkubG9uZwkzNTQ0MjYwNjUwCisJLmxvbmcJMTA3MjAyODMzNworCS5sb25nCTE0MDI3NDE0MDMKKwkubG9uZwkxMDcyMDEwNjEwCisJLmxvbmcJMjU1MTkzNjg4OAorCS5sb25nCTEwNzE5OTI0NjUKKwkubG9uZwk2MTc2Njk3MzkKKwkubG9uZwkxMDcxOTczODg3CisJLmxvbmcJNzk0MDAyMTg2CisJLmxvbmcJMTA3MTk1NDg1NworCS5sb25nCTIwMjEyMzc2OTMKKwkubG9uZwkxMDcxOTM1MzU2CisJLmxvbmcJNTQwNDUwMzg0CisJLmxvbmcJMTA3MTkxNTM2NAorCS5sb25nCTE5MjA1NTU1MzcKKwkubG9uZwkxMDcxODk0ODU3CisJLmxvbmcJMjg3OTU4NTIwNgorCS5sb25nCTEwNzE4NzM4MTEKKwkubG9uZwkzMDAwMjM3NDU1CisJLmxvbmcJMTA3MTg1MjE5OQorCS5sb25nCTMzNTI5NzQzNDYKKwkubG9uZwkxMDcxODI5OTkxCisJLmxvbmcJNTY5NjI5OTM3CisJLmxvbmcJMTA3MTgwNzE1NQorCS5sb25nCTIwNzcyMzcyMDgKKwkubG9uZwkxMDcxNzgzNjUzCisJLmxvbmcJMjI4NDg5MTgwNQorCS5sb25nCTEwNzE3NTk0NDYKKwkubG9uZwkxMjI2NjUxNzg0CisJLmxvbmcJMTA3MTczNDQ4OQorCS5sb25nCTExMDIwNDc0MDUKKwkubG9uZwkxMDcxNzA4NzMxCisJLmxvbmcJMjAwOTg5NjM4NAorCS5sb25nCTEwNzE2ODIxMTUKKwkubG9uZwk5Mjc0MTkwODIKKwkubG9uZwkxMDcxNjU0NTc3CisJLmxvbmcJODUwMTAzNjYKKwkubG9uZwkxMDcxNjA3NDEzCisJLmxvbmcJNjk2NDMxMDI1CisJLmxvbmcJMTA3MTU0ODE4MAorCS5sb25nCTI2MTE0MTA1NDEKKwkubG9uZwkxMDcxNDg2NTg1CisJLmxvbmcJMjYxMjU5MzY1OAorCS5sb25nCTEwNzE0MjIzOTYKKwkubG9uZwkzNTQ4MTU1MzA2CisJLmxvbmcJMTA3MTM1NTMzNgorCS5sb25nCTM4ODc5OTc0ODQKKwkubG9uZwkxMDcxMjg1MDczCisJLmxvbmcJMjQ0ODU0NzYzCisJLmxvbmcJMTA3MTIxMTIwMgorCS5sb25nCTQyMTQ0NDU2NDgKKwkubG9uZwkxMDcxMTMzMjE2CisJLmxvbmcJMjMwMzk2NjcyNworCS5sb25nCTEwNzEwNTA0NzgKKwkubG9uZwkzOTkxMDQwMDEzCisJLmxvbmcJMTA3MDk2MjE1MgorCS5sb25nCTMxMjY5NTIyNzgKKwkubG9uZwkxMDcwODY3MTE4CisJLmxvbmcJMTgxNzQ0ODM3OAorCS5sb25nCTEwNzA3NjM4MDQKKwkubG9uZwkxNzkzODE0ODY0CisJLmxvbmcJMTA3MDY0OTg4NAorCS5sb25nCTM1MDcyMjQwNzIKKwkubG9uZwkxMDcwNDQ3MTkzCisJLmxvbmcJNDAyNzYwOTEwNQorCS5sb25nCTEwNzAxNDg3NzIKKwkubG9uZwk1Nzc1MDc5OTMKKwkubG9uZwkxMDY5Nzc5NDE0CisJLmxvbmcJMjMxMDIzMjQxOQorCS5sb25nCTEwNjg5MzE4MjkKKwkudHlwZQlUX3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlUX3RhYmxlLDIwNDgKKwkuYWxpZ24gMTYKK1RibF9hZGRyOgorCS5sb25nCTM4MjI5NTI3OTIKKwkubG9uZwkxMDIxNjM5MzcyCisJLmxvbmcJMTgyNzkyNDQ4CisJLmxvbmcJMTA2ODUwNzgzNgorCS5sb25nCTIyNjQyMTMyNzEKKwkubG9uZwkxMDE5NTU4OTA4CisJLmxvbmcJNjQ5MDUyOTI4CisJLmxvbmcJMTA2ODUyNDI1MworCS5sb25nCTE3OTcxMzk2MDkKKwkubG9uZwkxMDIyMjk1MTQzCisJLmxvbmcJMTI0MzA5NTI5NgorCS5sb25nCTEwNjg1NDA2NzEKKwkubG9uZwkxNDE1OTM4NzU2CisJLmxvbmcJMTAyMTQzOTUzNworCS5sb25nCTIwMzMyOTQ1OTIKKwkubG9uZwkxMDY4NTU3MDkwCisJLmxvbmcJMjM1NjgwOTk3OAorCS5sb25nCTEwMjE3Nzc5MTYKKwkubG9uZwkzMDg4MDYzNzQ0CisJLmxvbmcJMTA2ODU3MzUxMAorCS5sb25nCTI2NjkwNTUzMTgKKwkubG9uZwkxMDIyMTI0NDgyCisJLmxvbmcJMTgwODg4NTc2CisJLmxvbmcJMTA2ODU4OTkzMgorCS5sb25nCTM1NjY0NDUzMjUKKwkubG9uZwkxMDIxMzU4NzEyCisJLmxvbmcJMTk3MDE5Njk5MgorCS5sb25nCTEwNjg2MDYzNTQKKwkubG9uZwk4OTY5ODAzMjMKKwkubG9uZwkxMDIxMzE5NjU5CisJLmxvbmcJNDIyOTU1NTQ1NgorCS5sb25nCTEwNjg2MjI3NzcKKwkubG9uZwk0MzYwNDk3MTIKKwkubG9uZwkxMDIxMzE5NzU4CisJLmxvbmcJMjczMjU3MjE2MAorCS5sb25nCTEwNjg2MzkyMDIKKwkubG9uZwk1ODMxMjMyMDkKKwkubG9uZwkxMDIwNzk3OTYwCisJLmxvbmcJMTg0MjgzMTg3MgorCS5sb25nCTEwNjg2NTU2MjgKKwkubG9uZwkxMzcwNDQ5ODA0CisJLmxvbmcJMTAyMTQyOTI3MAorCS5sb25nCTE2Mjg5OTQ1NjAKKwkubG9uZwkxMDY4NjcyMDU1CisJLmxvbmcJMjQxMTM5MTQ2NAorCS5sb25nCTEwMjEwNTc5ODAKKwkubG9uZwkyMTU5NzYzNzEyCisJLmxvbmcJMTA2ODY4ODQ4MworCS5sb25nCTEyMDg2OTI3NDkKKwkubG9uZwkxMDIxOTQzOTAzCisJLmxvbmcJMzUwMzg4NjMzNgorCS5sb25nCTEwNjg3MDQ5MTIKKwkubG9uZwk1Mzg3OTMzMDkKKwkubG9uZwkxMDE5NzQ0MDYzCisJLmxvbmcJMTQzNTE4NzIwMAorCS5sb25nCTEwNjg3MjEzNDMKKwkubG9uZwk0MDg1MDg3NjEyCisJLmxvbmcJMTAyMDYwODQxOQorCS5sb25nCTMxNzQ2OTk1MgorCS5sb25nCTEwNjg3Mzc3NzUKKwkubG9uZwkxNDQzODY5NDIKKwkubG9uZwkxMDIxNDQwNzMyCisJLmxvbmcJMjE5NjE3MjgwCisJLmxvbmcJMTA2ODc1NDIwOAorCS5sb25nCTI5NDAwODgzNjEKKwkubG9uZwkxMDE5OTgxMTIyCisJLmxvbmcJMTIxMDU1ODIwOAorCS5sb25nCTEwNjg3NzA2NDIKKwkubG9uZwkyMTc2ODUwMzQ3CisJLmxvbmcJMTAxODM3MzcwNQorCS5sb25nCTMzNTkyNjgzNTIKKwkubG9uZwkxMDY4Nzg3MDc3CisJLmxvbmcJMjM5NTYxMTQ1NAorCS5sb25nCTEwMjE4ODkwNDIKKwkubG9uZwkyNDM5ODAzNjQ4CisJLmxvbmcJMTA2ODgwMzUxNAorCS5sb25nCTE2NTA3MDUyNTMKKwkubG9uZwkxMDIwMjI3OTY2CisJLmxvbmcJMjgxNjIwMzUyMAorCS5sb25nCTEwNjg4MTk5NTIKKwkubG9uZwkzNzAyMTY2Mzg2CisJLmxvbmcJMTAxOTM3OTkxNAorCS5sb25nCTI2MjYyMDY3MgorCS5sb25nCTEwNjg4MzYzOTIKKwkubG9uZwkxODU1NjQ5MzcwCisJLmxvbmcJMTAyMDQ1MzEyNAorCS5sb25nCTM0MzgxNTk2MTYKKwkubG9uZwkxMDY4ODUyODMyCisJLmxvbmcJOTIzMDYzODYwCisJLmxvbmcJMTAxOTI3MzgzNAorCS5sb25nCTM4MjIxMDU4NTYKKwkubG9uZwkxMDY4ODY5Mjc0CisJLmxvbmcJNDI4OTk0Nzk0NworCS5sb25nCTEwMTk0MzQyNDkKKwkubG9uZwkxNDgzNzI5OTIwCisJLmxvbmcJMTA2ODg4NTcxOAorCS5sb25nCTc4NzQ1NTgxNAorCS5sb25nCTEwMjA3MzgzNzkKKwkubG9uZwk3ODczMjEwODgKKwkubG9uZwkxMDY4OTAyMTYzCisJLmxvbmcJMzMyMTY1MzMzNworCS5sb25nCTEwMjE4NDI1NjkKKwkubG9uZwkxODAyMjUzMzEyCisJLmxvbmcJMTA2ODkxODYwOQorCS5sb25nCTI2NTM2MzM1MjYKKwkubG9uZwkxMDIxODIxNTI1CisJLmxvbmcJMzAyOTg1OTg0CisJLmxvbmcJMTA2ODkzNTA1NworCS5sb25nCTE2MTI3MjAyOAorCS5sb25nCTEwMjE2NTUxNDkKKwkubG9uZwk2NTM5NjYwODAKKwkubG9uZwkxMDY4OTUxNTA2CisJLmxvbmcJMjU2NjA5ODY2NworCS5sb25nCTEwMjAwNjYyMTkKKwkubG9uZwkyOTI0NzI3Mjk2CisJLmxvbmcJMTA2ODk2Nzk1NgorCS5sb25nCTM2NDY0OTM3MjIKKwkubG9uZwkxMDE0MjkyMjg1CisJLmxvbmcJMjg4OTg5MDMwNAorCS5sb25nCTEwNjg5ODQ0MDgKKwkubG9uZwkxMDgxMDA5MTk2CisJLmxvbmcJMTAyMjE4OTYyMAorCS5sb25nCTYxOTA5ODExMgorCS5sb25nCTEwNjkwMDA4NjIKKwkubG9uZwk0MDExNjQzMzU1CisJLmxvbmcJMTAyMTc3MzI5NworCS5sb25nCTQ3NzAxNzYwMAorCS5sb25nCTEwNjkwMTczMTcKKwkubG9uZwk0MDMwMzA1NTM0CisJLmxvbmcJMTAyMTI5MjI1MgorCS5sb25nCTI1MzM0MDM5MDQKKwkubG9uZwkxMDY5MDMzNzczCisJLmxvbmcJMjY0NTE4NzU5MQorCS5sb25nCTEwMTk1MjcwOTkKKwkubG9uZwkyNTYzMTAyMjA4CisJLmxvbmcJMTA2OTA1MDIzMQorCS5sb25nCTM4NTcyOTM3OTIKKwkubG9uZwkxMDIyMzExNjk3CisJLmxvbmcJNjM1OTgyMzM2CisJLmxvbmcJMTA2OTA2NjY5MQorCS5sb25nCTM2MjU5MzY2MzcKKwkubG9uZwkxMDE3NTExNzQ0CisJLmxvbmcJMTExNjk0MDgwMAorCS5sb25nCTEwNjkwODMxNTIKKwkubG9uZwkzNjUzODcyOTkzCisJLmxvbmcJMTAyMjAxNjYzMQorCS5sb25nCTQwNzU5NjQxNjAKKwkubG9uZwkxMDY5MDk5NjE0CisJLmxvbmcJMjQ2ODkwMDI3MQorCS5sb25nCTEwMjE3Njk1MzIKKwkubG9uZwk5OTMxNjU1NjgKKwkubG9uZwkxMDY5MTE2MDc5CisJLmxvbmcJMTM1ODEwNDIyNAorCS5sb25nCTEwMjExOTk3NzYKKwkubG9uZwk1Mjg1ODY3NTIKKwkubG9uZwkxMDY5MTMyNTQ1CisJLmxvbmcJMjIwMDk1MDMzMgorCS5sb25nCTEwMjIwMjQ4NzIKKwkubG9uZwkyNzUyMzk1Nzc2CisJLmxvbmcJMTA2OTE0OTAxMgorCS5sb25nCTMxOTcwNzI0NTQKKwkubG9uZwkxMDE3NzUxMzE5CisJLmxvbmcJMzQzOTg1NTYxNgorCS5sb25nCTEwNjkxNjU0ODEKKwkubG9uZwkxNjUxMDgxODA2CisJLmxvbmcJMTAyMDgwOTMzOAorCS5sb25nCTI2NjEyNTc3MjgKKwkubG9uZwkxMDY5MTgxOTUyCisJLmxvbmcJNTM5MDMyNzUyCisJLmxvbmcJMTAyMTcyODgwNQorCS5sb25nCTQ4Njk1NzMxMgorCS5sb25nCTEwNjkxOTg0MjUKKwkubG9uZwkzMTM2MDQ1MTQ5CisJLmxvbmcJMTAxNjg4ODY3MQorCS5sb25nCTEyODIzNDAzNTIKKwkubG9uZwkxMDY5MjE0ODk5CisJLmxvbmcJMjU5Mzk2MzI1OQorCS5sb25nCTEwMTg5NTYxMDMKKwkubG9uZwk4MjI5MjE3MjgKKwkubG9uZwkxMDY5MjMxMzc1CisJLmxvbmcJMjE0NjAzMjczNworCS5sb25nCTEwMjIzMDY0NjUKKwkubG9uZwkzNDc0MjE2MTkyCisJLmxvbmcJMTA2OTI0Nzg1MgorCS5sb25nCTM5NzY4MTE2MjUKKwkubG9uZwkxMDIxMzUwMjA3CisJLmxvbmcJNzE2OTAyNjU2CisJLmxvbmcJMTA2OTI2NDMzMgorCS5sb25nCTcxODI2NzIyMgorCS5sb25nCTEwMTg2MjQ3MjcKKwkubG9uZwkxMjExNTk0NDk2CisJLmxvbmcJMTA2OTI4MDgxMworCS5sb25nCTE0ODU2NDEzODkKKwkubG9uZwkxMDE4NDQ3NDUxCisJLmxvbmcJNzM0MDcwMjcyCisJLmxvbmcJMTA2OTI5NzI5NgorCS5sb25nCTM1NDQ1NTEyOAorCS5sb25nCTEwMjEzNDEyOTEKKwkubG9uZwkzNjUwMTEwNzIwCisJLmxvbmcJMTA2OTMxMzc4MAorCS5sb25nCTY4MjE4NTk0NworCS5sb25nCTEwMjE2NTE4NTMKKwkubG9uZwkxNDQwNjYzMDQwCisJLmxvbmcJMTA2OTMzMDI2NworCS5sb25nCTM1NTg1NzQ1NTAKKwkubG9uZwkxMDIxNjE1MTEwCisJLmxvbmcJMjc2NjYxMjIyNAorCS5sb25nCTEwNjkzNDY3NTUKKwkubG9uZwk4NzQ2MDc5NzgKKwkubG9uZwkxMDE3NzQ2ODcyCisJLmxvbmcJMzQwNDAxMTAwOAorCS5sb25nCTEwNjkzNjMyNDUKKwkubG9uZwk0MTU0OTg4NTAyCisJLmxvbmcJMTAyMTQzOTkwNgorCS5sb25nCTM0MjM5NDkwNTYKKwkubG9uZwkxMDY5Mzc5NzM3CisJLmxvbmcJMjI2MzIwMjMwOQorCS5sb25nCTEwMjE0Nzk2MTUKKwkubG9uZwkyODk3NTg3NzEyCisJLmxvbmcJMTA2OTM5NjIzMQorCS5sb25nCTI1NjIwNjUwMzEKKwkubG9uZwkxMDIyMDkwMzYzCisJLmxvbmcJMTg5NjE1OTIzMgorCS5sb25nCTEwNjk0MTI3MjcKKwkubG9uZwkzODM2MjM3NjYzCisJLmxvbmcJMTAxOTg2NzI4OAorCS5sb25nCTQ5MDk2ODU3NgorCS5sb25nCTEwNjk0MjkyMjUKKwkubG9uZwkzMzIyMDU2NzQzCisJLmxvbmcJMTAwNjc1Mjc2MgorCS5sb25nCTMwNDgzNjAxOTIKKwkubG9uZwkxMDY5NDQ1NzI0CisJLmxvbmcJMTE1MjMxNDgzMworCS5sb25nCTEwMTMxMjIyNTIKKwkubG9uZwkxMDQ5ODUwNjI0CisJLmxvbmcJMTA2OTQ2MjIyNgorCS5sb25nCTM2MDE1OTA3MjcKKwkubG9uZwkxMDIyMjE0NjEwCisJLmxvbmcJMzE1Njg5OTU4NAorCS5sb25nCTEwNjk0Nzg3MjkKKwkubG9uZwkxODU1MTY5OTcwCisJLmxvbmcJMTAxOTQ4NzI3MQorCS5sb25nCTg1MTE3MzM3NgorCS5sb25nCTEwNjk0OTUyMzUKKwkubG9uZwkzMTI2NDk1OTQKKwkubG9uZwkxMDIwODY4NjA0CisJLmxvbmcJMjc5NDI4MTcyOAorCS5sb25nCTEwNjk1MTE3NDIKKwkubG9uZwkxMDkzNDkwMTgxCisJLmxvbmcJMTAyMDc3NzU3NworCS5sb25nCTQ2ODA0MjQ5NgorCS5sb25nCTEwNjk1MjgyNTIKKwkubG9uZwkxMTUyNTQwNjc5CisJLmxvbmcJMTAyMTQwMzczMgorCS5sb25nCTI1MzQyMTkyNjQKKwkubG9uZwkxMDY5NTQ0NzYzCisJLmxvbmcJMjI5MjEyNjAzNQorCS5sb25nCTEwMjE4NzI0MzAKKwkubG9uZwkxMzc2MTQ2NDMyCisJLmxvbmcJMTA2OTU1ODUyNworCS5sb25nCTMyOTM3NTM2NDEKKwkubG9uZwkxMDIwNTAwNDU0CisJLmxvbmcJNDE3NTQ0MjQzMgorCS5sb25nCTEwNjk1NzUwNDQKKwkubG9uZwkzNjI2MzQ3NTY0CisJLmxvbmcJMTAyMTYxMDk2OQorCS5sb25nCTM1MjMxMTM0NzIKKwkubG9uZwkxMDY5NTkxNTY2CisJLmxvbmcJMzM5OTU2NTAwCisJLmxvbmcJMTAyMTExOTAzOQorCS5sb25nCTQwMDMzNTA1MjgKKwkubG9uZwkxMDY5NjA4MDkyCisJLmxvbmcJMzQyOTMzMzA4MgorCS5sb25nCTEwMjI4MTM1NDIKKwkubG9uZwkxNjExMDY3MzkyCisJLmxvbmcJMTA2OTYyNDYyMworCS5sb25nCTIyOTgwMTc1NDQKKwkubG9uZwkxMDIxOTc3NTg3CisJLmxvbmcJOTMxNzgyMTQ0CisJLmxvbmcJMTA2OTY0MTE1OAorCS5sb25nCTIxNjQ2ODQ3NDMKKwkubG9uZwkxMDIxMjUwOTg4CisJLmxvbmcJMjI1NjcyNTUwNAorCS5sb25nCTEwNjk2NTc2OTcKKwkubG9uZwkxMTM4NzYyMzM1CisJLmxvbmcJMTAyMTQ0Mzc3NgorCS5sb25nCTE1ODI4NTMxMjAKKwkubG9uZwkxMDY5Njc0MjQxCisJLmxvbmcJMTA4NDAxMDM4MgorCS5sb25nCTEwMjI5OTQ2OTMKKwkubG9uZwkzNDk3NzU4NzIwCisJLmxvbmcJMTA2OTY5MDc4OQorCS5sb25nCTQwNjM2NjI0NAorCS5sb25nCTEwMjI3MTM1ODYKKwkubG9uZwkzOTk5ODE2OTYwCisJLmxvbmcJMTA2OTcwNzM0MgorCS5sb25nCTE0ODg3MjMwNDIKKwkubG9uZwkxMDIzMzgxMjkwCisJLmxvbmcJMzM4MzA5NjA2NAorCS5sb25nCTEwNjk3MjM5MDAKKwkubG9uZwkyNTQxNTU4OTUzCisJLmxvbmcJMTAxOTEzNzg4NworCS5sb25nCTE5NDI0MDM1ODQKKwkubG9uZwkxMDY5NzQwNDYzCisJLmxvbmcJMTg3OTYyMDM0MworCS5sb25nCTEwMjI2NTM2NDIKKwkubG9uZwk0MjY4MjYzNjgwCisJLmxvbmcJMTA2OTc1NzAzMAorCS5sb25nCTMwMzkwNzcwNDcKKwkubG9uZwkxMDIyMjUyNTQ1CisJLmxvbmcJMjA2NzA2MjI3MgorCS5sb25nCTEwNjk3NzM2MDMKKwkubG9uZwk0MTkwNjcwNjc3CisJLmxvbmcJMTAyMDcyNTg2MworCS5sb25nCTQyMjU4MjgwOTYKKwkubG9uZwkxMDY5NzkwMTgwCisJLmxvbmcJMTk5ODU2NzMyMQorCS5sb25nCTEwMjIwMTQzODUKKwkubG9uZwkyNDUyNTA3MTM2CisJLmxvbmcJMTA2OTgwNjc2MworCS5sb25nCTE1MTE2Mjg4NzMKKwkubG9uZwkxMDIxOTAwMzAwCisJLmxvbmcJMTM0MDc0NjI0MAorCS5sb25nCTEwNjk4MjMzNTEKKwkubG9uZwk3ODgzNjczNDEKKwkubG9uZwkxMDIyNzI2MjA4CisJLmxvbmcJMTE5MDAzNTQ1NgorCS5sb25nCTEwNjk4Mzk5NDQKKwkubG9uZwkzODU2MzM3MjMwCisJLmxvbmcJMTAyMTgzNDExOAorCS5sb25nCTIzMDA2ODgzODQKKwkubG9uZwkxMDY5ODU2NTQyCisJLmxvbmcJMzIxMTM5NjU3OQorCS5sb25nCTEwMjI2MjEzNjUKKwkubG9uZwk2Nzg4ODY0MDAKKwkubG9uZwkxMDY5ODczMTQ2CisJLmxvbmcJNDAwMTAxMTg4NworCS5sb25nCTEwMjIwNDI2NDYKKwkubG9uZwk5MjE1OTQxMTIKKwkubG9uZwkxMDY5ODg5NzU1CisJLmxvbmcJNTU3ODExOTY4CisJLmxvbmcJMTAyMzA2NTUzMworCS5sb25nCTMzMzE2Njg5OTIKKwkubG9uZwkxMDY5OTA2MzY5CisJLmxvbmcJMTg3NzA2MDY3OQorCS5sb25nCTEwMjI0MTk3NDIKKwkubG9uZwkzOTE3ODc1MjAwCisJLmxvbmcJMTA2OTkyMjk4OQorCS5sb25nCTExODEwNTUxNzEKKwkubG9uZwkxMDIyNzUyNzEyCisJLmxvbmcJMjk4NDgyOTY5NgorCS5sb25nCTEwNjk5Mzk2MTUKKwkubG9uZwk0Mjk0NTI2OTMyCisJLmxvbmcJMTAyMTQ5OTk4OAorCS5sb25nCTgzODA0OTAyNAorCS5sb25nCTEwNjk5NTYyNDcKKwkubG9uZwkzNjU4MDgxODc4CisJLmxvbmcJMTAyMjk1Nzk1MgorCS5sb25nCTIwNzg5MjgzODQKKwkubG9uZwkxMDY5OTcyODg0CisJLmxvbmcJODIwMzUzNzAxCisJLmxvbmcJMTAxOTM5MTEwNworCS5sb25nCTI3MTk4NTQzMzYKKwkubG9uZwkxMDY5OTg5NTI3CisJLmxvbmcJMTY0NDAyMjQ4OQorCS5sb25nCTEwMjMzNzgyNDAKKwkubG9uZwkzMDY5MTE3Njk2CisJLmxvbmcJMTA3MDAwNjE3NgorCS5sb25nCTI3NzEzOTM3MDIKKwkubG9uZwkxMDE5MzE5OTU0CisJLmxvbmcJMzQzNTk2MjM2OAorCS5sb25nCTEwNzAwMjI4MzEKKwkubG9uZwkzODc2Mzk0MTQ1CisJLmxvbmcJMTAyMzAyNDQzMworCS5sb25nCTQxMzA1OTUzMjgKKwkubG9uZwkxMDcwMDM5NDkyCisJLmxvbmcJMTYzMDQ0Nzc0OAorCS5sb25nCTEwMjE0NjU4ODIKKwkubG9uZwkxMTY5MjM2MjI0CisJLmxvbmcJMTA3MDA1NjE2MAorCS5sb25nCTI4MjgzNTU5OTcKKwkubG9uZwkxMDIwNDU4MTIwCisJLmxvbmcJMzQ1Mzk5NzMxMgorCS5sb25nCTEwNzAwNzI4MzMKKwkubG9uZwkxNjQwOTE2NDEKKwkubG9uZwkxMDIwMzg4Mjc5CisJLmxvbmcJMjcwODEyNzc0NAorCS5sb25nCTEwNzAwODk1MTMKKwkubG9uZwkzMDM2NTUwMjIzCisJLmxvbmcJMTAyMzMyODY4NAorCS5sb25nCTM1NDA3OTc2OTYKKwkubG9uZwkxMDcwMTA2MTk5CisJLmxvbmcJMzcxMDk0OTQ2MworCS5sb25nCTEwMjI1Njg4MDUKKwkubG9uZwkxOTcyMjc2NzM2CisJLmxvbmcJMTA3MDEyMjg5MgorCS5sb25nCTM4ODUyNzc5NTAKKwkubG9uZwkxMDE5NzYxNjc0CisJLmxvbmcJMjYxMzgxNTU1MgorCS5sb25nCTEwNzAxMzk1OTEKKwkubG9uZwkyNzY0MTY1MDc3CisJLmxvbmcJMTAyMjkyMTAyMworCS5sb25nCTE0ODc3OTE2MTYKKwkubG9uZwkxMDcwMTU2Mjk3CisJLmxvbmcJMTMzMDY0NDc2OQorCS5sb25nCTEwMjMxNjI2NzkKKwkubG9uZwkzMjA3NTkzNDcyCisJLmxvbmcJMTA3MDE3MzAwOQorCS5sb25nCTM5MTEwMDcyMjEKKwkubG9uZwkxMDIyOTkzNDk2CisJLmxvbmcJMzc5Nzc2NDYwOAorCS5sb25nCTEwNzAxODk3MjgKKwkubG9uZwk5Nzk3MTI1OTgKKwkubG9uZwkxMDIyNTU0NTgwCisJLmxvbmcJMzU3ODkyMDQ0OAorCS5sb25nCTEwNzAyMDY0NTQKKwkubG9uZwkyODI1NzM4MjIzCisJLmxvbmcJMTAyMDIyMzcwOAorCS5sb25nCTI4NzI3OTU2NDgKKwkubG9uZwkxMDcwMjIzMTg3CisJLmxvbmcJMzkyNDUxMTI0CisJLmxvbmcJMTAyMjY2NjI3OQorCS5sb25nCTIwMDIyNTg0MzIKKwkubG9uZwkxMDcwMjM5OTI3CisJLmxvbmcJMzczMDQwNzYzMgorCS5sb25nCTEwMjMxNDgyOTEKKwkubG9uZwkxMjkxMzI2NDY0CisJLmxvbmcJMTA3MDI1NjY3NAorCS5sb25nCTM3MjM4MDI5ODAKKwkubG9uZwkxMDIyNTE0MDg5CisJLmxvbmcJMTA2NTE4MDkyOAorCS5sb25nCTEwNzAyNzM0MjgKKwkubG9uZwkyNjM1NjE3NDYzCisJLmxvbmcJMTAyMjY1NDQ3MAorCS5sb25nCTE2NTAxODE2MzIKKwkubG9uZwkxMDcwMjkwMTg5CisJLmxvbmcJMjA2MTk4Mjg4MworCS5sb25nCTEwMjI4NTM0MTEKKwkubG9uZwkzMzczODgyODgwCisJLmxvbmcJMTA3MDMwNjk1NworCS5sb25nCTMxOTczMjc4NQorCS5sb25nCTEwMjIwMTcxNzUKKwkubG9uZwkyMjcwMDgxMjgwCisJLmxvbmcJMTA3MDMyMzczMworCS5sb25nCTIyMzc3NTc0MTEKKwkubG9uZwkxMDIzMDY0MDg3CisJLmxvbmcJMjk2MzczMjczNgorCS5sb25nCTEwNzAzNDA1MTYKKwkubG9uZwk0Njg4MzkxNjUKKwkubG9uZwkxMDIzMjkzNzc0CisJLmxvbmcJMTQ5MTA5OTkwNAorCS5sb25nCTEwNzAzNTczMDcKKwkubG9uZwkxNTAyNjU3OTQ2CisJLmxvbmcJMTAyMTUzMzQ3OQorCS5sb25nCTI0Nzk2MzY0ODAKKwkubG9uZwkxMDcwMzc0MTA1CisJLmxvbmcJNDgyOTEzNTYyCisJLmxvbmcJMTAyMTk4NjI4NgorCS5sb25nCTE5NjgxMzM2MzIKKwkubG9uZwkxMDcwMzkwOTExCisJLmxvbmcJMzI4MTQ3NDMzNworCS5sb25nCTEwMjI2NDY0MDAKKwkubG9uZwkyOTE2MzkwNDAKKwkubG9uZwkxMDcwNDA3NzI1CisJLmxvbmcJMjQ1MzMyMDI1OQorCS5sb25nCTEwMjI4MTI0MjMKKwkubG9uZwkyMDgxNDcyNTEyCisJLmxvbmcJMTA3MDQyNDU0NgorCS5sb25nCTI5Mzk5ODk1NzAKKwkubG9uZwkxMDIzMDkxODg4CisJLmxvbmcJMzM4MDM0MDQ4MAorCS5sb25nCTEwNzA0NDEzNzUKKwkubG9uZwkyODUwNzA3NDk5CisJLmxvbmcJMTAyMTkyMTEwOQorCS5sb25nCTIzMjI4NzQ4OAorCS5sb25nCTEwNzA0NTgyMTMKKwkubG9uZwkzNjc0NjI1MzQyCisJLmxvbmcJMTAyMDcyNTEzMAorCS5sb25nCTE1Njc2MTQyMDgKKwkubG9uZwkxMDcwNDc1MDU4CisJLmxvbmcJOTM0NzMzNAorCS5sb25nCTEwMjIwMjQwMDkKKwkubG9uZwkzNDMzMDkxMDcyCisJLmxvbmcJMTA3MDQ5MTkxMQorCS5sb25nCTI4MjUyNDk5OQorCS5sb25nCTEwMjE0MzM1MjMKKwkubG9uZwkxODc2ODc3MzEyCisJLmxvbmcJMTA3MDUwODc3MworCS5sb25nCTM0NzA0NDk0NDAKKwkubG9uZwkxMDE5MzA5NzIxCisJLmxvbmcJMTUzODQ3MjE5MgorCS5sb25nCTEwNzA1MjU2NDMKKwkubG9uZwkyMDg5NDg2ODI1CisJLmxvbmcJMTAxOTY5ODkxNgorCS5sb25nCTI3NjM4MzA3ODQKKwkubG9uZwkxMDcwNTQyNTIxCisJLmxvbmcJNDQzNDk4MTE1CisJLmxvbmcJMTAyMDUwNTE5NAorCS5sb25nCTE2MDUzODE2MzIKKwkubG9uZwkxMDcwNTU5NDA4CisJLmxvbmcJMzAxODg3MTYwMQorCS5sb25nCTEwMjI4Njk5MTMKKwkubG9uZwkyNzA2OTQ2MDQ4CisJLmxvbmcJMTA3MDU3NjMwMworCS5sb25nCTM5MzYyNjA4OTIKKwkubG9uZwkxMDIzMTc1ODc1CisJLmxvbmcJMjEyMzg4NzM2MAorCS5sb25nCTEwNzA1OTMyMDcKKwkubG9uZwkyOTk0MjIwNjU1CisJLmxvbmcJMTAyMjgyNTk0OAorCS5sb25nCTEwNDAxNTEwNAorCS5sb25nCTEwNzA2MDMxMDgKKwkubG9uZwkzMzUwNTQ0OTMKKwkubG9uZwkxMDIzNDQxODUzCisJLmxvbmcJMjkwNDU2ODgzMgorCS5sb25nCTEwNzA2MTU4MDAKKwkubG9uZwkxNDUxMjE1NjMzCisJLmxvbmcJMTAyMzg1Mzg1NworCS5sb25nCTM0NTYxOTcxMjAKKwkubG9uZwkxMDcwNjMyNzM5CisJLmxvbmcJNDM2MzM0NzMzCisJLmxvbmcJMTAyNDAyNjQzMgorCS5sb25nCTI1MjQ1MjM1MgorCS5sb25nCTEwNzA2NDk2OTcKKwkubG9uZwkzNDU5NjE2NworCS5sb25nCTEwMjQwMzEzOTYKKwkubG9uZwkzMzI4MDE4NDMyCisJLmxvbmcJMTA3MDY2NjY3MgorCS5sb25nCTI2NDQ1NDcwNzMKKwkubG9uZwkxMDI0Mjk2NzU4CisJLmxvbmcJMTI1NTgyOTI0OAorCS5sb25nCTEwNzA2ODM2NjcKKwkubG9uZwk1NTI4MzI1ODYKKwkubG9uZwkxMDIzNzYzMTIyCisJLmxvbmcJNDA5NzA1ODU2MAorCS5sb25nCTEwNzA3MDA2ODAKKwkubG9uZwkxOTU1NjQwNjIzCisJLmxvbmcJMTAyMTM5NDY1NAorCS5sb25nCTQ1MTc3MDExMgorCS5sb25nCTEwNzA3MTc3MTQKKwkubG9uZwkzNDI4OTAzNzc3CisJLmxvbmcJMTAyMjk0MTE0MgorCS5sb25nCTQwODkyMDgzMgorCS5sb25nCTEwNzA3MzQ3NjcKKwkubG9uZwkxNjU1MDMyNjMKKwkubG9uZwkxMDIzODk0OTU4CisJLmxvbmcJMTE4Njk2MDY0MAorCS5sb25nCTEwNzA3NTE4NDAKKwkubG9uZwk0MzU4MjY0NTAKKwkubG9uZwkxMDI0MDI2MTM0CisJLmxvbmcJMTkwNzg2NTYKKwkubG9uZwkxMDcwNzY4OTM0CisJLmxvbmcJMTgzNDE2OTc0OQorCS5sb25nCTEwMjI4OTkyODQKKwkubG9uZwkyNzQzNDkwMzA0CisJLmxvbmcJMTA3MDc4NjA0OAorCS5sb25nCTQ5NDU4MTA3NAorCS5sb25nCTEwMTg4MTg0NzkKKwkubG9uZwkyMzI4OTYxMDI0CisJLmxvbmcJMTA3MDgwMzE4NAorCS5sb25nCTI5ODc5MDg4MzQKKwkubG9uZwkxMDIyNTgxMTEwCisJLmxvbmcJMzUwMDExMzkyCisJLmxvbmcJMTA3MDgyMDM0MgorCS5sb25nCTI0MDc3MTE4NAorCS5sb25nCTEwMjQxNDMwODMKKwkubG9uZwkyNjkyMzI2OTEyCisJLmxvbmcJMTA3MDgzNzUyMQorCS5sb25nCTY2NjA1NjgzNworCS5sb25nCTEwMjIzOTQ3NzYKKwkubG9uZwkyMzczMjc0MzY4CisJLmxvbmcJMTA3MDg1NDcyMworCS5sb25nCTI0ODQzMzc3NzAKKwkubG9uZwkxMDI0MjI4MTU2CisJLmxvbmcJMTAxNzEzMTUyMAorCS5sb25nCTEwNzA4NzE5NDgKKwkubG9uZwkzMjg1NjQ4Mjc5CisJLmxvbmcJMTAyNDAyNTc4OQorCS5sb25nCTI2NTU1ODI3MgorCS5sb25nCTEwNzA4ODkxOTYKKwkubG9uZwkzOTIyNDE4OTYKKwkubG9uZwkxMDI0MjUyODA5CisJLmxvbmcJMTc3ODAwODA2NAorCS5sb25nCTEwNzA5MDY0NjcKKwkubG9uZwkxNTM2MTA3OTQzCisJLmxvbmcJMTAyMzk0OTMwMAorCS5sb25nCTI5MzcxODQ3NjgKKwkubG9uZwkxMDcwOTIzNzYyCisJLmxvbmcJMzU0MTA2MjI1MQorCS5sb25nCTEwMTk0NDg2NDYKKwkubG9uZwkxMTQ0NDQyODgwCisJLmxvbmcJMTA3MDk0MTA4MgorCS5sb25nCTM2OTE2ODM3ODEKKwkubG9uZwkxMDIyMTIzOTQ4CisJLmxvbmcJMjQxMDE2NTUwNAorCS5sb25nCTEwNzA5NTg0MjYKKwkubG9uZwkxODA0MTgxOTYwCisJLmxvbmcJMTAyMzk0NTIyMQorCS5sb25nCTQxNzQzNTA4NDgKKwkubG9uZwkxMDcwOTc1Nzk1CisJLmxvbmcJMjAxNjA5NDg2MQorCS5sb25nCTEwMjE3MTY1ODUKKwkubG9uZwkzODk3MDEyNDgwCisJLmxvbmcJMTA3MDk5MzE5MAorCS5sb25nCTE3NTI5NDQxMAorCS5sb25nCTEwMjM3MDM0MDQKKwkubG9uZwkzMzUzNjIzMDQwCisJLmxvbmcJMTA3MTAxMDYxMQorCS5sb25nCTE2Nzk3MzI0MgorCS5sb25nCTEwMjMyNDA4MzkKKwkubG9uZwk0NTY3MTE2OAorCS5sb25nCTEwNzEwMjgwNTkKKwkubG9uZwkyMTY2ODU2MTEzCisJLmxvbmcJMTAyMTU2NTQxMworCS5sb25nCTg2MDYzODcyCisJLmxvbmcJMTA3MTA0NTUzMworCS5sb25nCTI2NzYyNTQ3MjcKKwkubG9uZwkxMDIzOTg1Mjk5CisJLmxvbmcJMTAxOTc3MjY3MgorCS5sb25nCTEwNzEwNjMwMzQKKwkubG9uZwk5ODkwNDM1OTMKKwkubG9uZwkxMDIxNTQ5NTg3CisJLmxvbmcJNDE0Mjk3MzQ0CisJLmxvbmcJMTA3MTA4MDU2MworCS5sb25nCTM5NjA5NzIwNDYKKwkubG9uZwkxMDI0MzA3MjUxCisJLmxvbmcJMTU1MTczMTIwCisJLmxvbmcJMTA3MTA5ODEyMAorCS5sb25nCTE4MzA5MTkyOTEKKwkubG9uZwkxMDIxNTkyMjUxCisJLmxvbmcJMjE1MTU2MjI0MAorCS5sb25nCTEwNzExMTU3MDUKKwkubG9uZwk0MDU0MDg2NjYKKwkubG9uZwkxMDIzNDIzMTI4CisJLmxvbmcJNDA0MTg1NDcyMAorCS5sb25nCTEwNzExMzMzMTkKKwkubG9uZwkyMDQzNDk3ODI3CisJLmxvbmcJMTAyNDQxMTUwMworCS5sb25nCTM0ODkyMjQxOTIKKwkubG9uZwkxMDcxMTUwOTYzCisJLmxvbmcJMzA3MjIxNTg2NAorCS5sb25nCTEwMjI2OTg2MzUKKwkubG9uZwkyNDc3MTk2Mjg4CisJLmxvbmcJMTA3MTE2ODYzNworCS5sb25nCTE4MTIxOTUxMzkKKwkubG9uZwkxMDIyNjg5MTkyCisJLmxvbmcJMzAxNTI5ODgxNgorCS5sb25nCTEwNzExODYzNDEKKwkubG9uZwk3NjQ4NDE5NjkKKwkubG9uZwkxMDIxMDI3MzMxCisJLmxvbmcJMjg0NDczMTEzNgorCS5sb25nCTEwNzEyMDQwNzYKKwkubG9uZwkyODc4MTE3MzIxCisJLmxvbmcJMTAxOTExNjUxMworCS5sb25nCTQwMjg5NTA1MjgKKwkubG9uZwkxMDcxMjIxODQyCisJLmxvbmcJNjk4OTExNDUyCisJLmxvbmcJMTAyMzI2NTYwMgorCS5sb25nCTY5NDQxNTM2CisJLmxvbmcJMTA3MTIzOTY0MQorCS5sb25nCTMyNTM0Njc4NDcKKwkubG9uZwkxMDIwNzk1MDc1CisJLmxvbmcJMTY3NjIwOTkyMAorCS5sb25nCTEwNzEyNTc0NzEKKwkubG9uZwk0MjcyNDMxMTY3CisJLmxvbmcJMTAyMjg3Mzk4MgorCS5sb25nCTI0MDg3NTIzODQKKwkubG9uZwkxMDcxMjc1MzM0CisJLmxvbmcJNjQ4NTE5MTAwCisJLmxvbmcJMTAyNDM4NTcxNworCS5sb25nCTE1MTYyMzY4MAorCS5sb25nCTEwNzEyOTMyMzEKKwkubG9uZwkzNDUyNTcwMTcKKwkubG9uZwkxMDE5NTYxNDA4CisJLmxvbmcJMTQxMDE1NDI0MAorCS5sb25nCTEwNzEzMTExNjEKKwkubG9uZwkxOTc4NjM5OTMKKwkubG9uZwkxMDIzMjI0MjA3CisJLmxvbmcJNDEzMTM1MTU1MgorCS5sb25nCTEwNzEzMjkxMjUKKwkubG9uZwkyNjIwODAxNzg5CisJLmxvbmcJMTAyNDQxMTE2OQorCS5sb25nCTE5OTk2NjQzODQKKwkubG9uZwkxMDcxMzQ3MTI1CisJLmxvbmcJMzk1MjY5MjYxNgorCS5sb25nCTEwMjQxNjgwODYKKwkubG9uZwkxNjE3NjY4ODY0CisJLmxvbmcJMTA3MTM2NTE2MAorCS5sb25nCTMwMTk4ODk4MDkKKwkubG9uZwkxMDIxOTA3NjkyCisJLmxvbmcJMTAzMjA3NDI0MAorCS5sb25nCTEwNzEzODMyMzEKKwkubG9uZwk1OTQ2OTg5OQorCS5sb25nCTEwMjM2NTYxOTQKKwkubG9uZwkyNjE5NDkyMDk2CisJLmxvbmcJMTA3MTQwMTMzOAorCS5sb25nCTE0MTc1MjY4MjAKKwkubG9uZwkxMDIxNDU3NzgzCisJLmxvbmcJMjAyNDI5NDQwCisJLmxvbmcJMTA3MTQxOTQ4MworCS5sb25nCTI5Mjc2Njc5MzUKKwkubG9uZwkxMDE5MTc1NDQ3CisJLmxvbmcJNTI1MDQ0MjI0CisJLmxvbmcJMTA3MTQzNzY2NQorCS5sb25nCTM4MTY2ODExCisJLmxvbmcJMTAyMzk4MTg3OQorCS5sb25nCTE3NzkyNTg4ODAKKwkubG9uZwkxMDcxNDU1ODg1CisJLmxvbmcJNDgxMjUyNTAwCisJLmxvbmcJMTAyMzMxMDIzNAorCS5sb25nCTIxOTU2NzM2MDAKKwkubG9uZwkxMDcxNDc0MTQ0CisJLmxvbmcJMzk2MjM5NTk4MQorCS5sb25nCTEwMjEzMzkwODgKKwkubG9uZwk0NDU3MzY5NgorCS5sb25nCTEwNzE0OTI0NDMKKwkubG9uZwkzOTM2MjgxMzk1CisJLmxvbmcJMTAyMzAxNDgyOQorCS5sb25nCTIyMjY5MDUzNDQKKwkubG9uZwkxMDcxNTEwNzgxCisJLmxvbmcJMTUxNTMyMDQ3NgorCS5sb25nCTEwMjQzMjA2MjMKKwkubG9uZwkyODAwNTEyNTEyCisJLmxvbmcJMTA3MTUyOTE2MAorCS5sb25nCTEyMjU0MDM2OTcKKwkubG9uZwkxMDIxMDgxODQ2CisJLmxvbmcJMTYxMTEzNjAwCisJLmxvbmcJMTA3MTU0NzU4MQorCS5sb25nCTMwNjQ4MDk3MzMKKwkubG9uZwkxMDI0MTczOTE3CisJLmxvbmcJMTMzODQxMDI0MAorCS5sb25nCTEwNzE1NjYwNDMKKwkubG9uZwkyMDI3NjA0OTczCisJLmxvbmcJMTAyNDM2MjUyNgorCS5sb25nCTUyMjQzMzI4MAorCS5sb25nCTEwNzE1ODQ1NDgKKwkubG9uZwkyMDU1MTcxNzIzCisJLmxvbmcJMTAyMzg1ODgyNQorCS5sb25nCTUzOTU5NTc3NgorCS5sb25nCTEwNzE2MDMwOTYKKwkubG9uZwkzODY4ODIwMTM1CisJLmxvbmcJMTAyMjkzNjQyNAorCS5sb25nCTQyNjQwMTc2NjQKKwkubG9uZwkxMDcxNjIxNjg3CisJLmxvbmcJMzIyODA2NTE0NQorCS5sb25nCTEwMjM0Nzk1NzgKKwkubG9uZwkxNzMzOTI0MDk2CisJLmxvbmcJMTA3MTY0MDMyNAorCS5sb25nCTM1MTE5MzQ0NzUKKwkubG9uZwkxMDIyNDk2MzU1CisJLmxvbmcJMTA4ODgwMzg0CisJLmxvbmcJMTA3MTY1MTgzOQorCS5sb25nCTYxNTg4MDk2NworCS5sb25nCTEwMjM1MTk3MDYKKwkubG9uZwkzNTE3ODU2NTEyCisJLmxvbmcJMTA3MTY2MTIwMgorCS5sb25nCTMxMTMxMDg1NTkKKwkubG9uZwkxMDI1MTkwMjg5CisJLmxvbmcJNDA0MzE1MzE1MgorCS5sb25nCTEwNzE2NzA1ODkKKwkubG9uZwkxNTcxODM2MjE4CisJLmxvbmcJMTAyMzEwNjExNgorCS5sb25nCTMyNTEyOTkwNzIKKwkubG9uZwkxMDcxNjgwMDAwCisJLmxvbmcJMzQ0NDA3NjEwMgorCS5sb25nCTEwMjIxODc4NDEKKwkubG9uZwkyNzM2OTIxNjAwCisJLmxvbmcJMTA3MTY4OTQzNQorCS5sb25nCTI3Mjc3MTQ4MworCS5sb25nCTEwMjUwOTUyODAKKwkubG9uZwkzODk3Njk4NTYwCisJLmxvbmcJMTA3MTcwMzYzMworCS5sb25nCTIwNzUzOTAxODgKKwkubG9uZwkxMDIyNDg5MDIyCisJLmxvbmcJMzIwOTQ4NTA1NgorCS5sb25nCTEwNzE3MjI2NTIKKwkubG9uZwkxNDM4MDk0MDY1CisJLmxvbmcJMTAyMTg0NDk0NAorCS5sb25nCTM3ODE0MzIwNjQKKwkubG9uZwkxMDcxNzQxNzc0CisJLmxvbmcJMTY3NTAxNzE0NQorCS5sb25nCTEwMjQxNDM4MjgKKwkubG9uZwkyNjg0MTg0MDY0CisJLmxvbmcJMTA3MTc2MTAwMworCS5sb25nCTIyNTk5NjM3NTMKKwkubG9uZwkxMDI0NzMxMzkzCisJLmxvbmcJMTg0MDQ4OTcyOAorCS5sb25nCTEwNzE3ODAzNDIKKwkubG9uZwkzMzcyODgzNTk3CisJLmxvbmcJMTAyMzQzMTQwOAorCS5sb25nCTM3NjQwODc4MDgKKwkubG9uZwkxMDcxNzk5Nzk0CisJLmxvbmcJMzMwNzUyMzEwMgorCS5sb25nCTEwMjQ0ODU3ODgKKwkubG9uZwkzMDA2MjMyMzIwCisJLmxvbmcJMTA3MTgxOTM2NAorCS5sb25nCTMwODg5NzE5NjYKKwkubG9uZwkxMDI1MjEzMjUxCisJLmxvbmcJMzM3NDg4MTI4MAorCS5sb25nCTEwNzE4MzkwNTUKKwkubG9uZwk4MzQ0Mzc3NDkKKwkubG9uZwkxMDI1MjM2NDUyCisJLmxvbmcJNzk3Mjg0ODY0CisJLmxvbmcJMTA3MTg1ODg3MgorCS5sb25nCTMxMjI2NjM5NDEKKwkubG9uZwkxMDI1MzIwNDczCisJLmxvbmcJNTQ1NzY1MTIwCisJLmxvbmcJMTA3MTg3ODgxOAorCS5sb25nCTgyNjUzOTYyNQorCS5sb25nCTEwMjI0NTA5NTUKKwkubG9uZwkxMDc1NjIyNDAKKwkubG9uZwkxMDcxODk4ODk4CisJLmxvbmcJMzM5NTg0NjAwCisJLmxvbmcJMTAyMjQ4MTI1NQorCS5sb25nCTIxMjM2NDkwMjQKKwkubG9uZwkxMDcxOTE5MTE2CisJLmxvbmcJMzkxMjk1OTgzMworCS5sb25nCTEwMjQzMjEwMDkKKwkubG9uZwkxNTYyMzg1NjY0CisJLmxvbmcJMTA3MTkzOTQ3OAorCS5sb25nCTI4NDYwNjcyMzAKKwkubG9uZwkxMDIzMzQzOTgxCisJLmxvbmcJMjk2MzA4NTgyNAorCS5sb25nCTEwNzE5NTk5ODgKKwkubG9uZwk5NTQ1NDg2MjcKKwkubG9uZwkxMDIxNDc1MjExCisJLmxvbmcJMzMyNTU1MDU5MgorCS5sb25nCTEwNzE5ODA2NTIKKwkubG9uZwkzNDU5NjUxMTU1CisJLmxvbmcJMTAyNTMwNTU3MworCS5sb25nCTc3NTc1MjQ0OAorCS5sb25nCTEwNzIwMDE0NzYKKwkubG9uZwkzNTgyNzQ2NjY3CisJLmxvbmcJMTAyMzg1OTQ2MAorCS5sb25nCTMyMzg1OTA3MjAKKwkubG9uZwkxMDcyMDIyNDY0CisJLmxvbmcJNjM0NjM2MTYyCisJLmxvbmcJMTAyNDQ3MjM1MworCS5sb25nCTI3NTg4MDE5MjAKKwkubG9uZwkxMDcyMDQzNjI0CisJLmxvbmcJMzA3ODIxNjMxOQorCS5sb25nCTEwMjUzMDQ1MTYKKwkubG9uZwkxMzcwMzE5MTA0CisJLmxvbmcJMTA3MjA2NDk2MgorCS5sb25nCTI1NzA1NjkwNzgKKwkubG9uZwkxMDI1MDk5NDQyCisJLmxvbmcJMjYxNTgwNTE4NAorCS5sb25nCTEwNzIwODY0ODQKKwkubG9uZwkzNzI5OTMzNDEyCisJLmxvbmcJMTAyNDYwNTExMgorCS5sb25nCTMwNzczMzY1NzYKKwkubG9uZwkxMDcyMTA4MTk4CisJLmxvbmcJMTk0ODkxNjA2NgorCS5sb25nCTEwMjQ3ODE2MDMKKwkubG9uZwkxMDk5NTI4MTkyCisJLmxvbmcJMTA3MjEzMDExMgorCS5sb25nCTMxMzkxNDMxNTcKKwkubG9uZwkxMDIzNzI5MzYwCisJLmxvbmcJMTIzMTkwMzIzMgorCS5sb25nCTEwNzIxNTIyMzMKKwkubG9uZwkxMzQ5NTEzNDc3CisJLmxvbmcJMTAyNDczNzUxNQorCS5sb25nCTE1MDc1MDQxMjgKKwkubG9uZwkxMDcyMTc0NTcwCisJLmxvbmcJMzQ4NDUxNjMyMgorCS5sb25nCTEwMjQwMDA5NTkKKwkubG9uZwkyMjE0NjU5ODQwCisJLmxvbmcJMTA3MjE5NzEzMgorCS5sb25nCTI1NjM4MjA5MTcKKwkubG9uZwkxMDI1MjI1NTM1CisJLmxvbmcJMTgwNDczOTg0MAorCS5sb25nCTEwNzIyMTk5MjkKKwkubG9uZwk3NjAwMzg3NDYKKwkubG9uZwkxMDI0NDgyODU1CisJLmxvbmcJMTQxMzc0NjY4OAorCS5sb25nCTEwNzIyNDI5NzEKKwkubG9uZwkzNDAxNzM0NzE0CisJLmxvbmcJMTAyNTEyOTgzOAorCS5sb25nCTgyMTQwOTUzNgorCS5sb25nCTEwNzIyNjYyNjkKKwkubG9uZwkzNzI5NzcyNTUxCisJLmxvbmcJMTAyNTQ4NDc5NgorCS5sb25nCTMwMzE4MjU2NjQKKwkubG9uZwkxMDcyMjg5ODM0CisJLmxvbmcJMTIyMjU2NzQ5CisJLmxvbmcJMTAyNDc1MjU5NAorCS5sb25nCTE3MTA3ODQyNTYKKwkubG9uZwkxMDcyMzEzNjgwCisJLmxvbmcJMTUxODIwNTQ4MworCS5sb25nCTEwMjQ3MjQ4MDkKKwkubG9uZwkzMDI1MjY1MTUyCisJLmxvbmcJMTA3MjMzNzgxOQorCS5sb25nCTQwOTk1MTk4OQorCS5sb25nCTEwMjI4MzU1NTUKKwkubG9uZwkyODc3NjkwODgKKwkubG9uZwkxMDcyMzYyMjY3CisJLmxvbmcJODAwMzU1NTk0CisJLmxvbmcJMTAyMjQ4NDg1MAorCS5sb25nCTE5ODE3OTg0MAorCS5sb25nCTEwNzIzODcwMzgKKwkubG9uZwkzNTAyOTI2MjEzCisJLmxvbmcJMTAyNDIwOTM3MworCS5sb25nCTE5MDkxMzA0OTYKKwkubG9uZwkxMDcyNDEyMTQ5CisJLmxvbmcJMzA2NDY5NDMxOQorCS5sb25nCTEwMjUzODA4MjMKKwkubG9uZwkxOTQxNzMyMDk2CisJLmxvbmcJMTA3MjQzNzYxOQorCS5sb25nCTQxMTI5MzAzOTAKKwkubG9uZwkxMDI0Mjk0Njc5CisJLmxvbmcJMzQ5MjAxMDQ5NgorCS5sb25nCTEwNzI0NjM0NjcKKwkubG9uZwkyNjg0OTE4MTA3CisJLmxvbmcJMTAyMzIyMDIzMworCS5sb25nCTgxOTU5NjgwCisJLmxvbmcJMTA3MjQ4OTcxNgorCS5sb25nCTIyMDAyMTM2NgorCS5sb25nCTEwMjA2MzUxMzEKKwkubG9uZwkyMjk3ODM3MDU2CisJLmxvbmcJMTA3MjUxNjM4NworCS5sb25nCTQwMjc2ODM4MjYKKwkubG9uZwkxMDIxMDQxMTg1CisJLmxvbmcJMjcwNDA0MDk2CisJLmxvbmcJMTA3MjU0MzUwOAorCS5sb25nCTIwMTI3NjYwNjUKKwkubG9uZwkxMDIxNzgwNzUzCisJLmxvbmcJMzY2NzM3Njg5NgorCS5sb25nCTEwNzI1NzExMDUKKwkubG9uZwkyNzI3OTgxNTIyCisJLmxvbmcJMTAyMzAwOTg3NAorCS5sb25nCTMzMDQwMDI1NgorCS5sb25nCTEwNzI1OTkyMTIKKwkubG9uZwkyOTQwMDE3MDAzCisJLmxvbmcJMTAyNTM5MzQzOQorCS5sb25nCTExMTkyOTM5NTIKKwkubG9uZwkxMDcyNjI3ODYxCisJLmxvbmcJMTYwODU1MDQxNgorCS5sb25nCTEwMjI2NzU2MTIKKwkubG9uZwkzNTM2MTU1OTA0CisJLmxvbmcJMTA3MjY1NzA5MQorCS5sb25nCTM0OTY2NTc3OAorCS5sb25nCTEwMjUxNTY3NTEKKwkubG9uZwkzMDc4MDQ2NzIwCisJLmxvbmcJMTA3MjY4Njk0NgorCS5sb25nCTIwMTYxNTk5OTYKKwkubG9uZwkxMDIyMTkzMTY5CisJLmxvbmcJNDU1MjI4NDE2CisJLmxvbmcJMTA3MjcwNTM2MQorCS5sb25nCTE5MDg1MzkzMjgKKwkubG9uZwkxMDI2MTI2MzMyCisJLmxvbmcJMTg3MTUwNTY2NAorCS5sb25nCTEwNzI3MjA5ODgKKwkubG9uZwkyNzg0NzAwODk0CisJLmxvbmcJMTAyNTkyMjI3NworCS5sb25nCTE2MzA5OTQ0MzIKKwkubG9uZwkxMDcyNzM3MDEwCisJLmxvbmcJMzYxMTA3Njc4CisJLmxvbmcJMTAyMjg4NzI0NAorCS5sb25nCTIwODQ1NTgzMzYKKwkubG9uZwkxMDcyNzUzNDYyCisJLnR5cGUJVGJsX2FkZHIsQG9iamVjdAorCS5zaXplCVRibF9hZGRyLDM4NDAKKwkuc3BhY2UgNzY4LCAweDAwIAkjIHBhZAorCS5hbGlnbiAxNgorY3Y6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMzIxNzM4MDY5MworCS5sb25nCTg1ODk5MzQ1OQorCS5sb25nCTMyMTYxOTIzMDcKKwkubG9uZwkzMDY3ODMzNzgzCisJLmxvbmcJMzIxNTM4MzQwNQorCS50eXBlCWN2LEBvYmplY3QKKwkuc2l6ZQljdiwzMgorCS5hbGlnbiAxNgorUElfQllfMjoKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE2MTc4MjE0CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzMyOTE3NzEKKwkudHlwZQlQSV9CWV8yLEBvYmplY3QKKwkuc2l6ZQlQSV9CWV8yLDE2CisJLmFsaWduIDE2CitORUdfUEk6CisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMzE2NDcxMDQzOAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkzMjIxODIzOTk1CisJLnR5cGUJTkVHX1BJLEBvYmplY3QKKwkuc2l6ZQlORUdfUEksMTYKKwkuYWxpZ24gMTYKK2N2MjoKKwkubG9uZwk3ODA5MDMxNDUKKwkubG9uZwkxMDY2ODU0NTg2CisJLmxvbmcJODU4OTkzNDU5CisJLmxvbmcJMTA2ODcwODY1OQorCS5sb25nCTMzNDA1MzAxMTkKKwkubG9uZwkxMDY3MzkyMTEzCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjk4OTcwNDUKKwkubG9uZwkxMzIxNTI4Mzk5CisJLmxvbmcJMTA2NjUxNzc0MAorCS5sb25nCTMwNjc4MzM3ODMKKwkubG9uZwkxMDY3ODk5NzU3CisJLmxvbmcJMjAyMTE1OTQ2MAorCS5sb25nCTEwNjU4NTUwOTYKKwkubG9uZwkyNTc2OTgwMzc4CisJLmxvbmcJMTA2NjE3ODk2OQorCS50eXBlCWN2MixAb2JqZWN0CisJLnNpemUJY3YyLDY0CisJLmFsaWduIDE2CitIQUxGTUFTSzoKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQxNjA3NDk1NjgKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLnR5cGUJSEFMRk1BU0ssQG9iamVjdAorCS5zaXplCUhBTEZNQVNLLDE2CisJLmFsaWduIDE2CitQSToKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE3MjI2NzkwCisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzQzNDAzNDcKKwkudHlwZQlQSSxAb2JqZWN0CisJLnNpemUJUEksMTYKKwkuYWxpZ24gNAorT05FTUFTSzoKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS50eXBlCU9ORU1BU0ssQG9iamVjdAorCS5zaXplCU9ORU1BU0ssOAorCS5hbGlnbiA0CitUTUFTSzoKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk1MDkxMgorCS50eXBlCVRNQVNLLEBvYmplY3QKKwkuc2l6ZQlUTUFTSyw4CisJLmFsaWduIDQKK09ORV9CWV8yOgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLnR5cGUJT05FX0JZXzIsQG9iamVjdAorCS5zaXplCU9ORV9CWV8yLDgKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKy8vIC0tIEJlZ2luIERXQVJGMiBTRUdNRU5UIC5laF9mcmFtZQorCS5zZWN0aW9uIC5laF9mcmFtZSwiYSIsQHByb2diaXRzCisuZWhfZnJhbWVfc2VnOgorCS5hbGlnbiAxCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuOGJ5dGUgMHgwMDUyN2EwMTAwMDAwMDAwCisJLjhieXRlIDB4MDgwNzBjMWIwMTEwNzgwMQorCS40Ynl0ZSAweDAwMDAwMTkwCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hY29zLjEtLgorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hY29zLjUtLi5fX190YWdfdmFsdWVfYWNvcy4xCisJLjJieXRlIDB4MDQwMAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hY29zLjMtLi5fX190YWdfdmFsdWVfYWNvcy4xCisJLjJieXRlIDB4MjAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfYWNvcy40LS4uX19fdGFnX3ZhbHVlX2Fjb3MuMworCS4yYnl0ZSAweDA4MGUKKwkuYnl0ZSAweDAwCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvZV9hc2luLlMgYi9saWJtL3g4Nl82NC9lX2FzaW4uUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZjQxYzdjCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvZV9hc2luLlMKQEAgLTAsMCArMSwyMDM2IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gIFRvIGNvbXB1dGUgYXNpbihzKSwgc2VwYXJhdGUgc2NoZW1lcyBhcmUgdXNlZCB3aGVuIHMgaXMgaW4gZGlmZmVyZW50CisvLyAgaW50ZXJ2YWxzLgorLy8KKy8vICB8c3wgaW4gWzJeey00fSwgc3FydCgzKS8yKToKKy8vICAgICAgIExldCB0PTJeayoxLmIxIGIyLi5iNiAxLCB3aGVyZSBzPTJeayoxLmIxIGIyIC4uIGI1MgorLy8gICAgICAgYXNpbihzKT1hc2luKHQpK2FzaW4ociksIHdoZXJlIHI9cypzcXJ0KDEtdF4yKS10KnNxcnQoMS1zXjIpCisvLyAgICAgICBhc2luKHIpLXIgZXZhbHVhdGVkIGFzIDctZGVncmVlIHBvbHlub21pYWwgKGMzKnJeMytjNSpyXjUrYzcqcl43KQorLy8gICAgICAgRm9yIHRoZSBmaXJzdCBkZWdyZWUgdGVybSwgciBpcyBldmFsdWF0ZWQgYXMKKy8vICAgICAgICAgICAgICAgIFI9KHNeMi10XjIpLyhzcXJ0KDEtdF4yKSpzK3NxcnQoMS1zXjIpKnQpCisvLyAgICAgICAoc3FydCgxLXReMikgcmVhZCBmcm9tIHRhYmxlKQorLy8gIFRoZSBtYWluIHNvdXJjZSBvZiBlcnJvciBpcyBzdGlsbCBSIChtYXkgc3RpbGwgYmUgYWZmZWN0ZWQgYnkgdXAgdG8gMyB1bHBzCisvLyAgb2Ygcm91bmRpbmcgZXJyb3IpLiBUaGUgdGFibGUgc2l6ZSBtdXN0IGJlIHN1ZmZpY2llbnRseSBsYXJnZSwgdG8gbWluaW1pemUKKy8vICB0aGlzIGVmZmVjdC4KKy8vCisvLyAgfHN8IGluIFtzcXJ0KDMpLzIsIDI1NS8yNTYpOgorLy8gICAgICAgTGV0IHQ9Ml5rKjEuYjEgYjIuLmI2IDEsIHdoZXJlIHNxcnQoMS1zXjIpPTJeayoxLmIxIGIyIC4uIGI1MiAocm91bmRlZCkKKy8vICAgICAgIGFzaW4ofHN8KT1waS8yLWFzaW4odCkrYXNpbihyKSwgcj1zKnQtc3FydCgxLXNeMikqc3FydCgxLXReMikKKy8vICAgICAgIGFzaW4ocikgZXZhbHVhdGVkIGFzIHBvbHlub21pYWwgKHNhbWUgYXMgYWJvdmUpCisvLyAgICAgICBUaGUgZmlyc3QgZGVncmVlIHRlcm0gaXMgZXZhbHVhdGVkIGFzCisvLyAgICAgICAgICAgICAgICAgICAgICAgIHI9KHNeMit0XjItMSkvKHMqdCtzcXJ0KDEtc14yKSpzcXJ0KDEtdF4yKSkKKy8vCisvLyAgfHN8PDJeey00fTogZXZhbHVhdGUgYXMgMTMtZGVncmVlIHBvbHlub21pYWwKKy8vCisvLyAgfHN8IGluIFsyNTUvMjU2LDEpOiBhc2luKHxzfCk9cGkvMi1hc2luKHNxcnQoMS1zXjIpKQorLy8gICAgICAgICB1c2UgMTctZGVncmVlIHBvbHlub21pYWwsIGdldCBlcnJvciB0ZXJtCisvLyAgICAgICAgIFEqZXBzIH4gKDEtc14yLVFeMikvKDIqUSkgZm9yIGZpcnN0IHRlcm0KKy8vICAgICAgICAgICAgICAgICAoIFEoMStlcHMpPXNxcnQoMS1zXjIpICkKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGFzaW4oTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgYXNpbihJTkYpID0gUU5hTiBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBhc2luKHgpID0gUU5hTiBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24sIGZvciB8eHw+MS4wCisvLyAgYXNpbigrLy0wKSA9ICsvLTAKKy8vCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisjIC0tIEJlZ2luICBhc2luCitFTlRSWShhc2luKQorIyBwYXJhbWV0ZXIgMTogJXhtbTAKKy4uQjEuMToKKy4uX19fdGFnX3ZhbHVlX2FzaW4uMToKKyAgICAgICAgc3VicSAgICAgICQyNCwgJXJzcAorLi5fX190YWdfdmFsdWVfYXNpbi4zOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglcnNwKQorLi5CMS4yOgorICAgICAgICBzdG14Y3NyICAgMTYoJXJzcCkKKyAgICAgICAgbW92bCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkLTI0NTc3LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBtb3ZzZCAgICAgQUJTVkFMTUFTSyglcmlwKSwgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIE9ORU1BU0soJXJpcCksICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbW92c2QgICAgIFRNQVNLKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDgxOTIsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQyLCAlZWN4LCAleG1tNQorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIHBzcmxxICAgICAkNDQsICV4bW0wCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVkeAorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdmwgICAgICAkODE5MiwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDIsICVlY3gsICV4bW01CisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQ1MjQyODcsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQyNjA4NjQsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQ5NTUsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgYW5kbCAgICAgICQ2NTUzNSwgJWVkeAorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHNxcnRzZCAgICAleG1tMywgJXhtbTMKKyAgICAgICAgYW5kcGQgICAgICV4bW03LCAleG1tMgorICAgICAgICBhbmRsICAgICAgJC00LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkNjQyNTYsICVlZHgKKyAgICAgICAgbGVhICAgICAgIFRfdGFibGUoJXJpcCksICVyOAorICAgICAgICBtb3ZzZCAgICAgKCVyOCwlcmR4LDIpLCAleG1tMQorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGxlYSAgICAgICBUYmxfYWRkciglcmlwKSwgJXI4CisgICAgICAgIG1vdmFwZCAgICAoJXI4LCVyZHgsNCksICV4bW00CisgICAgICAgIG1vdnEgICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdnEgICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBkaXZzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAxNitjdiglcmlwKSwgJXhtbTcKKyAgICAgICAgbW92c2QgICAgIGN2KCVyaXApLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFuZHBkICAgICBTSUdOTUFTSyglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdnNkICAgICA4K2N2KCVyaXApLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNQorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW00LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtb3ZsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQtMjQ1NzcsICVlYXgKKyAgICAgICAgY21wbCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBzdG14Y3NyICAgMjAoJXJzcCkKKyAgICAgICAgbW92bCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjQ1NzYsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlYXgsIDIwKCVyc3ApCisgICAgICAgIGxkbXhjc3IgICAyMCglcnNwKQorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIHN1YmwgICAgICAkOTU1LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkNjcsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBzcXJ0c2QgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGFuZHBkICAgICBBQlNWQUxNQVNLKCVyaXApLCAleG1tMAorICAgICAgICBhbmRwZCAgICAgSEFMRk1BU0syKCVyaXApLCAleG1tNworICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdnNkICAgICBPTkVNQVNLKCVyaXApLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgJXhtbTcsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTMsICV4bW03CisgICAgICAgIGFuZHBkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgcHNsbHEgICAgICQyLCAleG1tMworICAgICAgICBwZXh0cncgICAgJDMsICV4bW0zLCAlZWR4CisgICAgICAgIG9ycGQgICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgc3VibCAgICAgICQ2NTIxNiwgJWVkeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBsZWEgICAgICAgVF90YWJsZSglcmlwKSwgJXI4CisgICAgICAgIG11bHNkICAgICAoJXI4LCVyZHgsNCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgIFBJX0JZXzIoJXJpcCksICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIG1vdnNkICAgICBjdiglcmlwKSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIG1vdnNkICAgICAxNitjdiglcmlwKSwgJXhtbTAKKyAgICAgICAgZGl2c2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgOCtjdiglcmlwKSwgJXhtbTIKKyAgICAgICAgbGVhICAgICAgIFRibF9hZGRyKCVyaXApLCAlcjgKKyAgICAgICAgc3VicGQgICAgICglcjgsJXJkeCw4KSwgJXhtbTMKKyAgICAgICAgbW92cSAgICAgICV4bW02LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIGFuZGwgICAgICAkNTI0Mjg4LCAlZWF4CisgICAgICAgIHNocmwgICAgICAkNCwgJWVheAorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgcHhvciAgICAgICV4bW02LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTUKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0zLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJC0yNDU3NywgJWVheAorICAgICAgICBjbXBsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIHN0bXhjc3IgICAyMCglcnNwKQorICAgICAgICBtb3ZsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyNDU3NiwgJWVheAorICAgICAgICBvcmwgICAgICAgJWVheCwgMjAoJXJzcCkKKyAgICAgICAgbGRteGNzciAgIDIwKCVyc3ApCisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIGFkZGwgICAgICAkMTUyOTEsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQxNDMzNiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKyAgICAgICAgdW5wY2tscGQgICV4bW03LCAleG1tNworICAgICAgICBtb3ZhcGQgICAgY3YyKCVyaXApLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTcsICV4bW02CisgICAgICAgIG1vdmFwZCAgICAxNitjdjIoJXJpcCksICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAzMitjdjIoJXJpcCksICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgbW92cSAgICAgICV4bW02LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIGFkZHBkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW02LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTEsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkLTI0NTc3LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgc3RteGNzciAgIDIwKCVyc3ApCisgICAgICAgIG1vdmwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDI0NTc2LCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlZWF4LCAyMCglcnNwKQorICAgICAgICBsZG14Y3NyICAgMjAoJXJzcCkKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICBzdWJsICAgICAgJDE1MzU4LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjIKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHNxcnRzZCAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgYW5kcGQgICAgIEhBTEZNQVNLKCVyaXApLCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMywgJXhtbTUKKyAgICAgICAgYW5kcGQgICAgIEhBTEZNQVNLKCVyaXApLCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG1vdnNkICAgICBPTkVNQVNLKCVyaXApLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgJXhtbTcsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtb3ZxICAgICAgJXhtbTMsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdmFwZCAgICBjdjIoJXJpcCksICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW03LCAleG1tNgorICAgICAgICBkaXZzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdmFwZCAgICA0OCtjdjIoJXJpcCksICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAxNitjdjIoJXJpcCksICV4bW01CisgICAgICAgIG1vdmFwZCAgICAzMitjdjIoJXJpcCksICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgbW92cSAgICAgICV4bW02LCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgc2hybCAgICAgICQ0LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgICV4bW02LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgbW92YXBkICAgIFBJX0JZXzIoJXJpcCksICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTIKKyAgICAgICAgYWRkcGQgICAgICV4bW01LCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTEsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW03LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBtb3ZxICAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTYsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQtMjQ1NzcsICVlYXgKKyAgICAgICAgY21wbCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF85LjAuMgorICAgICAgICBzdG14Y3NyICAgMjAoJXJzcCkKKyAgICAgICAgbW92bCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjQ1NzYsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlYXgsIDIwKCVyc3ApCisgICAgICAgIGxkbXhjc3IgICAyMCglcnNwKQorLkxfMlRBR19QQUNLRVRfOS4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzguMC4yOgorICAgICAgICBhZGRsICAgICAgJDI2MTg4NiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDI2MTg4OCwgJWVheAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4yCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVjeAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMAorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQyMTQ3NDgzNjQ3LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAkMTA3MjY5MzI0OCwgJWVheAorICAgICAgICBzdWJsICAgICAgJWVkeCwgJWVheAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMgorICAgICAgICBtb3ZzZCAgICAgKCVyc3ApLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVjeAorICAgICAgICBzdWJsICAgICAgJDEsICVlZHgKKyAgICAgICAgc2JibCAgICAgICQyMTQ2NDM1MDcyLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqZ2UgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTIuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMS4wLjI6CisgICAgICAgIG1vdnNkICAgICBBQlNWQUxNQVNLKCVyaXApLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgUElfQllfMiglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIDgrUElfQllfMiglcmlwKSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBhbmRucGQgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG9ycGQgICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkLTI0NTc3LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTMuMC4yCisgICAgICAgIHN0bXhjc3IgICAyMCglcnNwKQorICAgICAgICBtb3ZsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyNDU3NiwgJWVheAorICAgICAgICBvcmwgICAgICAgJWVheCwgMjAoJXJzcCkKKyAgICAgICAgbGRteGNzciAgIDIwKCVyc3ApCisuTF8yVEFHX1BBQ0tFVF8xMy4wLjI6CisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzEwLjAuMjoKKyAgICAgICAgbW92c2QgICAgICglcnNwKSwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW03CisgICAgICAgIG1vdmwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJC0yNDU3NywgJWVheAorICAgICAgICBjbXBsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE0LjAuMgorICAgICAgICBzdG14Y3NyICAgMjAoJXJzcCkKKyAgICAgICAgbW92bCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjQ1NzYsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlYXgsIDIwKCVyc3ApCisgICAgICAgIGxkbXhjc3IgICAyMCglcnNwKQorLkxfMlRBR19QQUNLRVRfMTQuMC4yOgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgc3VibCAgICAgICQxNiwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDMyNzM2LCAlZWR4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNS4wLjIKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNgorICAgICAgICBvcnBkICAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTcKKy5MXzJUQUdfUEFDS0VUXzE1LjAuMjoKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAyMCglcnNwKQorICAgICAgICBsZG14Y3NyICAgMjAoJXJzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMi4wLjI6CisgICAgICAgIG1vdmwgICAgICAxNiglcnNwKSwgJWVheAorICAgICAgICBhbmRsICAgICAgJC0yNDU3NywgJWVheAorICAgICAgICBjbXBsICAgICAgMTYoJXJzcCksICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE2LjAuMgorICAgICAgICBzdG14Y3NyICAgMjAoJXJzcCkKKyAgICAgICAgbW92bCAgICAgIDE2KCVyc3ApLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMjQ1NzYsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlYXgsIDIwKCVyc3ApCisgICAgICAgIGxkbXhjc3IgICAyMCglcnNwKQorLkxfMlRBR19QQUNLRVRfMTYuMC4yOgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsIDgoJXJzcCkKKy4uQjEuMzoKKyAgICAgICAgbW92cSAgICAgIDgoJXJzcCksICV4bW0wCisuTF8yVEFHX1BBQ0tFVF8xNy4wLjI6CisuLkIxLjU6CisgICAgICAgIGFkZHEgICAgICAkMjQsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2FzaW4uNDoKKyAgICAgICAgcmV0ICAgICAgIAorLi5fX190YWdfdmFsdWVfYXNpbi41OgorRU5EKGFzaW4pCisjIC0tIEVuZCAgYXNpbgorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorQUJTVkFMTUFTSzoKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMjE0NzQ4MzY0NworCS5sb25nCTAKKwkubG9uZwkwCisJLnR5cGUJQUJTVkFMTUFTSyxAb2JqZWN0CisJLnNpemUJQUJTVkFMTUFTSywxNgorCS5hbGlnbiAxNgorVF90YWJsZToKKwkubG9uZwkyNjQyNzg0NTA5CisJLmxvbmcJMTA3MjY4OTA4MworCS5sb25nCTE1MTQ0NDI1MzEKKwkubG9uZwkxMDcyNjg4OTUzCisJLmxvbmcJMzMzMTA4OTMzCisJLmxvbmcJMTA3MjY4ODgyMQorCS5sb25nCTMzOTIxMTIwMjQKKwkubG9uZwkxMDcyNjg4Njg2CisJLmxvbmcJMjA5OTg1Mjg2MgorCS5sb25nCTEwNzI2ODg1NTAKKwkubG9uZwk3NDk2MDkwMDQKKwkubG9uZwkxMDcyNjg4NDEyCisJLmxvbmcJMzYzNDYzMjU5NgorCS5sb25nCTEwNzI2ODgyNzEKKwkubG9uZwkyMTYzMjQ4NDYxCisJLmxvbmcJMTA3MjY4ODEyOQorCS5sb25nCTYyODY1Nzg0NgorCS5sb25nCTEwNzI2ODc5ODUKKwkubG9uZwkzMzI0MDM2NTExCisJLmxvbmcJMTA3MjY4NzgzOAorCS5sb25nCTE2NTc2MzI4MTUKKwkubG9uZwkxMDcyNjg3NjkwCisJLmxvbmcJNDIxNzUzODc2MAorCS5sb25nCTEwNzI2ODc1MzkKKwkubG9uZwkyNDExOTUxNTk3CisJLmxvbmcJMTA3MjY4NzM4NworCS5sb25nCTUzMzk0NDg3MgorCS5sb25nCTEwNzI2ODcyMzMKKwkubG9uZwkyODc2NTY2NTA4CisJLmxvbmcJMTA3MjY4NzA3NgorCS5sb25nCTg0NzkzNjg5MQorCS5sb25nCTEwNzI2ODY5MTgKKwkubG9uZwkzMDM2MDE5OTEzCisJLmxvbmcJMTA3MjY4Njc1NworCS5sb25nCTg0ODg4NDU3NQorCS5sb25nCTEwNzI2ODY1OTUKKwkubG9uZwkyODc0NDQzMzI2CisJLmxvbmcJMTA3MjY4NjQzMAorCS5sb25nCTUyMDcxMzY2NgorCS5sb25nCTEwNzI2ODYyNjQKKwkubG9uZwkyMzc1NTU2NDgxCisJLmxvbmcJMTA3MjY4NjA5NQorCS5sb25nCTQxNDE5MDQ5NDgKKwkubG9uZwkxMDcyNjg1OTI0CisJLmxvbmcJMTUyMjY2NjM4MgorCS5sb25nCTEwNzI2ODU3NTIKKwkubG9uZwkzMTA1NjI0MTA0CisJLmxvbmcJMTA3MjY4NTU3NworCS5sb25nCTI5ODY2NjMyNworCS5sb25nCTEwNzI2ODU0MDEKKwkubG9uZwkxNjg5NTI0NTAwCisJLmxvbmcJMTA3MjY4NTIyMgorCS5sb25nCTI5ODEwMDIyMDAKKwkubG9uZwkxMDcyNjg1MDQxCisJLmxvbmcJNDE3MDg0NDI4NAorCS5sb25nCTEwNzI2ODQ4NTgKKwkubG9uZwk5NjE4MDIyNjMKKwkubG9uZwkxMDcyNjg0Njc0CisJLmxvbmcJMTk0MTUwMzQ1NAorCS5sb25nCTEwNzI2ODQ0ODcKKwkubG9uZwkyODEyNjQ3MTcwCisJLmxvbmcJMTA3MjY4NDI5OAorCS5sb25nCTM1NzI4NzM4NjkKKwkubG9uZwkxMDcyNjg0MTA3CisJLmxvbmcJNDIxOTc5NzgyMworCS5sb25nCTEwNzI2ODM5MTQKKwkubG9uZwk0NTYwMzk3ODgKKwkubG9uZwkxMDcyNjgzNzIwCisJLmxvbmcJODY5MDk2MTUxCisJLmxvbmcJMTA3MjY4MzUyMworCS5sb25nCTExNjE1MzUxMTkKKwkubG9uZwkxMDcyNjgzMzI0CisJLmxvbmcJMTMzMDg2NTg2NgorCS5sb25nCTEwNzI2ODMxMjMKKwkubG9uZwkxMzc0NTcxMjA0CisJLmxvbmcJMTA3MjY4MjkyMAorCS5sb25nCTEyOTAxMDc1MzgKKwkubG9uZwkxMDcyNjgyNzE1CisJLmxvbmcJMTA3NDkwNDgzNgorCS5sb25nCTEwNzI2ODI1MDgKKwkubG9uZwk3MjYzNjY1ODcKKwkubG9uZwkxMDcyNjgyMjk5CisJLmxvbmcJMjQxODY5NzYzCisJLmxvbmcJMTA3MjY4MjA4OAorCS5sb25nCTM5MTM3MzIwNzkKKwkubG9uZwkxMDcyNjgxODc0CisJLmxvbmcJMzE0OTM0Mjc2NQorCS5sb25nCTEwNzI2ODE2NTkKKwkubG9uZwkyMjQwOTY2MzA2CisJLmxvbmcJMTA3MjY4MTQ0MgorCS5sb25nCTExODU4NzMyMTYKKwkubG9uZwkxMDcyNjgxMjIzCisJLmxvbmcJNDI3NjI3NDU5MQorCS5sb25nCTEwNzI2ODEwMDEKKwkubG9uZwkyOTE5NDUyODgzCisJLmxvbmcJMTA3MjY4MDc3OAorCS5sb25nCTE0MDc1NjU2MzUKKwkubG9uZwkxMDcyNjgwNTUzCisJLmxvbmcJNDAzMjc0MzU1MQorCS5sb25nCTEwNzI2ODAzMjUKKwkubG9uZwkyMjAyMTg4NTY1CisJLmxvbmcJMTA3MjY4MDA5NgorCS5sb25nCTIwNzk3NzU3NworCS5sb25nCTEwNzI2Nzk4NjUKKwkubG9uZwkyMzQyMTYwNTE4CisJLmxvbmcJMTA3MjY3OTYzMQorCS5sb25nCTExODU4NDIzCisJLmxvbmcJMTA3MjY3OTM5NgorCS5sb25nCTE4MDQwMzQ0NTMKKwkubG9uZwkxMDcyNjc5MTU4CisJLmxvbmcJMzQyMDcyMjc4NworCS5sb25nCTEwNzI2Nzg5MTgKKwkubG9uZwk1NjM5MzA0NTYKKwkubG9uZwkxMDcyNjc4Njc3CisJLmxvbmcJMTgyMDUzOTE5MgorCS5sb25nCTEwNzI2Nzg0MzMKKwkubG9uZwkyODkyNTAxNjA2CisJLmxvbmcJMTA3MjY3ODE4NworCS5sb25nCTM3NzY3MTAzMjAKKwkubG9uZwkxMDcyNjc3OTM5CisJLmxvbmcJMTc1MDYzMzM3CisJLmxvbmcJMTA3MjY3NzY5MAorCS5sb25nCTY3NDMzMzE3MQorCS5sb25nCTEwNzI2Nzc0MzgKKwkubG9uZwk5NzYzNjMwMjYKKwkubG9uZwkxMDcyNjc3MTg0CisJLmxvbmcJMTA3NzkzNTkzNAorCS5sb25nCTEwNzI2NzY5MjgKKwkubG9uZwkxOTIxMDc1NDkwCisJLmxvbmcJMTA3MjY3NjU0MAorCS5sb25nCTg4MTQ5MzMwMgorCS5sb25nCTEwNzI2NzYwMTYKKwkubG9uZwkzMjc1NzUyNDM5CisJLmxvbmcJMTA3MjY3NTQ4MworCS5sb25nCTQ4Njg1NTU4OAorCS5sb25nCTEwNzI2NzQ5NDMKKwkubG9uZwkxMDc3MjI5MTExCisJLmxvbmcJMTA3MjY3NDM5NAorCS5sb25nCTcyMzk1MDMwOAorCS5sb25nCTEwNzI2NzM4MzcKKwkubG9uZwkzNjkzNTgyMTk5CisJLmxvbmcJMTA3MjY3MzI3MQorCS5sb25nCTEzNjczMzUzMTYKKwkubG9uZwkxMDcyNjcyNjk4CisJLmxvbmcJMjMwNTgzNzAyMAorCS5sb25nCTEwNzI2NzIxMTYKKwkubG9uZwkyMTg0MzU4NjQxCisJLmxvbmcJMTA3MjY3MTUyNgorCS5sb25nCTk3MjY4Mjg0MAorCS5sb25nCTEwNzI2NzA5MjgKKwkubG9uZwkyOTM1MTAxNzYyCisJLmxvbmcJMTA3MjY3MDMyMQorCS5sb25nCTM3NDU1MTMyNjMKKwkubG9uZwkxMDcyNjY5NzA2CisJLmxvbmcJMzM3MjMyMDg4NgorCS5sb25nCTEwNzI2NjkwODMKKwkubG9uZwkxNzgzNDY0NjIwCisJLmxvbmcJMTA3MjY2ODQ1MgorCS5sb25nCTMyNDEzODYyMTUKKwkubG9uZwkxMDcyNjY3ODEyCisJLmxvbmcJMzQxODEyNTI4NAorCS5sb25nCTEwNzI2NjcxNjQKKwkubG9uZwkyMjgwMjE5MTQ4CisJLmxvbmcJMTA3MjY2NjUwOAorCS5sb25nCTQwODg3MDA3NTgKKwkubG9uZwkxMDcyNjY1ODQzCisJLmxvbmcJMjE5MjI3NDAwCisJLmxvbmcJMTA3MjY2NTE3MQorCS5sb25nCTM1MjE4MTY5MTgKKwkubG9uZwkxMDcyNjY0NDg5CisJLmxvbmcJMTA3NjIwNTI3OQorCS5sb25nCTEwNzI2NjM4MDAKKwkubG9uZwkxNDM2NDg0NjE2CisJLmxvbmcJMTA3MjY2MzEwMgorCS5sb25nCTI3MTM2MjYxMAorCS5sb25nCTEwNzI2NjIzOTYKKwkubG9uZwkxODM4OTk2Njg4CisJLmxvbmcJMTA3MjY2MTY4MQorCS5sb25nCTE4MDcxMjI1MTgKKwkubG9uZwkxMDcyNjYwOTU4CisJLmxvbmcJMTM3OTUzNTQyCisJLmxvbmcJMTA3MjY2MDIyNworCS5sb25nCTEwODgxNzg1ODQKKwkubG9uZwkxMDcyNjU5NDg3CisJLmxvbmcJMzI0MDU3NTM3CisJLmxvbmcJMTA3MjY1ODczOQorCS5sb25nCTIxMDEyODgwNzYKKwkubG9uZwkxMDcyNjU3OTgyCisJLmxvbmcJMjA4NTEzMzk3NAorCS5sb25nCTEwNzI2NTcyMTcKKwkubG9uZwkyMzUzMjQ0NTEKKwkubG9uZwkxMDcyNjU2NDQ0CisJLmxvbmcJODA2MDUxNTkyCisJLmxvbmcJMTA3MjY1NTY2MgorCS5sb25nCTM3NTYwMzMxNDAKKwkubG9uZwkxMDcyNjU0ODcxCisJLmxvbmcJNDUzNTQyNTQzCisJLmxvbmcJMTA3MjY1NDA3MworCS5sb25nCTM3NDExNzczMjcKKwkubG9uZwkxMDcyNjUzMjY1CisJLmxvbmcJNjkxMjE2MTA5CisJLmxvbmcJMTA3MjY1MjQ1MAorCS5sb25nCTQxNDUyMjMzNzIKKwkubG9uZwkxMDcyNjUxNjI1CisJLmxvbmcJMTE3NDQzOTA5MQorCS5sb25nCTEwNzI2NTA3OTMKKwkubG9uZwkzMjQ0MTYxMzkKKwkubG9uZwkxMDcyNjQ5OTUyCisJLmxvbmcJMTU1MDI0NjMxMAorCS5sb25nCTEwNzI2NDkxMDIKKwkubG9uZwk1MTE1MjQ2NzQKKwkubG9uZwkxMDcyNjQ4MjQ0CisJLmxvbmcJMTQ1NzI0ODQ4MgorCS5sb25nCTEwNzI2NDczNzcKKwkubG9uZwk0NTk0NDk1NQorCS5sb25nCTEwNzI2NDY1MDIKKwkubG9uZwk1MjU1MzczOTcKKwkubG9uZwkxMDcyNjQ1NjE4CisJLmxvbmcJMjg0ODQ0MDE4OAorCS5sb25nCTEwNzI2NDQ3MjUKKwkubG9uZwkyNjcxNTU1NjMzCisJLmxvbmcJMTA3MjY0MzgyNAorCS5sb25nCTQyNDExNzI2MzcKKwkubG9uZwkxMDcyNjQyOTE0CisJLmxvbmcJMzIxMzA5NDI3OAorCS5sb25nCTEwNzI2NDE5OTYKKwkubG9uZwkzODMyNTAzNjg4CisJLmxvbmcJMTA3MjY0MTA2OQorCS5sb25nCTE3NTQwOTE1MzQKKwkubG9uZwkxMDcyNjQwMTM0CisJLmxvbmcJMTIyMTkyMTgwNAorCS5sb25nCTEwNzI2MzkxOTAKKwkubG9uZwkyMTg0NTI2NDg5CisJLmxvbmcJMTA3MjYzODIzNworCS5sb25nCTI5NDkwMjA4OQorCS5sb25nCTEwNzI2MzcyNzYKKwkubG9uZwk0MDkwMzc1MjcwCisJLmxvbmcJMTA3MjYzNjMwNQorCS5sb25nCTYzMjg2MDkwNgorCS5sb25nCTEwNzI2MzUzMjcKKwkubG9uZwkyNzUzNDk4NzAyCisJLmxvbmcJMTA3MjYzNDMzOQorCS5sb25nCTE4MDgwMDkyNTIKKwkubG9uZwkxMDcyNjMzMzQzCisJLmxvbmcJMjAzNjQyODY3MgorCS5sb25nCTEwNzI2MzIzMzgKKwkubG9uZwkzMzgzMjM1NjI2CisJLmxvbmcJMTA3MjYzMTMyNAorCS5sb25nCTE0OTczNDc0ODQKKwkubG9uZwkxMDcyNjMwMzAyCisJLmxvbmcJNjE3MDE4MzE3CisJLmxvbmcJMTA3MjYyOTI3MQorCS5sb25nCTY4NDkzMzA1OAorCS5sb25nCTEwNzI2MjgyMzEKKwkubG9uZwkxNjQzMTcwNzk4CisJLmxvbmcJMTA3MjYyNzE4MgorCS5sb25nCTMwMTEwNjYzNjAKKwkubG9uZwkxMDcyNjI1NTkyCisJLmxvbmcJOTU3MTU4NzEzCisJLmxvbmcJMTA3MjYyMzQ0MgorCS5sb25nCTEzOTA5MDc5NDEKKwkubG9uZwkxMDcyNjIxMjU2CisJLmxvbmcJMzgxOTE1NTI3MAorCS5sb25nCTEwNzI2MTkwMzQKKwkubG9uZwkzNDQzNTcxMTk2CisJLmxvbmcJMTA3MjYxNjc3NworCS5sb25nCTQwNDU0MTI0NTgKKwkubG9uZwkxMDcyNjE0NDg0CisJLmxvbmcJODA1NTAzOTIzCisJLmxvbmcJMTA3MjYxMjE1NgorCS5sb25nCTE3Nzg5MjIwMTUKKwkubG9uZwkxMDcyNjA5NzkxCisJLmxvbmcJMjEyNTAzMzY2NQorCS5sb25nCTEwNzI2MDczOTAKKwkubG9uZwkxMjg3MjAzODYzCisJLmxvbmcJMTA3MjYwNDk1MworCS5sb25nCTI5OTI2Mjk1NjgKKwkubG9uZwkxMDcyNjAyNDc5CisJLmxvbmcJMjM2NzI2NzEyNworCS5sb25nCTEwNzI1OTk5NjkKKwkubG9uZwkzMTE1NTI2MDQ3CisJLmxvbmcJMTA3MjU5NzQyMgorCS5sb25nCTM0MDIxOTUzOQorCS5sb25nCTEwNzI1OTQ4MzkKKwkubG9uZwkyMDE3MjE1NzE5CisJLmxvbmcJMTA3MjU5MjIxOAorCS5sb25nCTMyMjU0NDM0MjQKKwkubG9uZwkxMDcyNTg5NTYwCisJLmxvbmcJMzMyNjU2NTY3MworCS5sb25nCTEwNzI1ODY4NjUKKwkubG9uZwkxNjY5ODExMjExCisJLmxvbmcJMTA3MjU4NDEzMworCS5sb25nCTE4ODY3MzUwMjIKKwkubG9uZwkxMDcyNTgxMzYzCisJLmxvbmcJMzMwMTA3MTE3MQorCS5sb25nCTEwNzI1Nzg1NTUKKwkubG9uZwk5Mjg1MTQyODMKKwkubG9uZwkxMDcyNTc1NzEwCisJLmxvbmcJMjY1NjM2NDA1OQorCS5sb25nCTEwNzI1NzI4MjYKKwkubG9uZwkzNDczNDkwNTA3CisJLmxvbmcJMTA3MjU2OTkwNAorCS5sb25nCTI2NDk5NjU2MDYKKwkubG9uZwkxMDcyNTY2OTQ0CisJLmxvbmcJMzczNjgxOTA1MgorCS5sb25nCTEwNzI1NjM5NDUKKwkubG9uZwkxNjgwODg1MTc1CisJLmxvbmcJMTA3MjU2MDkwOAorCS5sb25nCTQ0MTM3NzEKKwkubG9uZwkxMDcyNTU3ODMyCisJLmxvbmcJMjIxNDg2OTc1MworCS5sb25nCTEwNzI1NTQ3MTYKKwkubG9uZwkzMjE0NzI1MTg0CisJLmxvbmcJMTA3MjU1MTU2MQorCS5sb25nCTIxODYwNzk5MDMKKwkubG9uZwkxMDcyNTQ4MzY3CisJLmxvbmcJMjU5MDM3MjEzMQorCS5sb25nCTEwNzI1NDUxMzMKKwkubG9uZwkzNTc4MTQ2MDc5CisJLmxvbmcJMTA3MjU0MTg1OQorCS5sb25nCTQyODM3MTI3NTUKKwkubG9uZwkxMDcyNTM4NTQ1CisJLmxvbmcJMzgyNDgzNDUxMAorCS5sb25nCTEwNzI1MzUxOTEKKwkubG9uZwkxMzAyNDAwMjk4CisJLmxvbmcJMTA3MjUzMTc5NworCS5sb25nCTk1MDU4NjM2CisJLmxvbmcJMTA3MjUyODM2MgorCS5sb25nCTM1NjM5MDYwNjMKKwkubG9uZwkxMDcyNTI0ODg1CisJLmxvbmcJMjE2NzIzMDczMAorCS5sb25nCTEwNzI1MjEzNjgKKwkubG9uZwkzNTI0OTE4MzM0CisJLmxvbmcJMTA3MjUxNzgwOQorCS5sb25nCTIzNTMzMDQ5MTgKKwkubG9uZwkxMDcyNTE0MjA5CisJLmxvbmcJMTkzOTYyNTgzOQorCS5sb25nCTEwNzI1MTA1NjcKKwkubG9uZwkxMjU2NzE0NTgxCisJLmxvbmcJMTA3MjUwNjg4MworCS5sb25nCTM1NTI1MjU4NDgKKwkubG9uZwkxMDcyNTAzMTU2CisJLmxvbmcJMzQ2NDgwOTUyMgorCS5sb25nCTEwNzI0OTkzODcKKwkubG9uZwk0MjAwNTQyNTkzCisJLmxvbmcJMTA3MjQ5NTU3NQorCS5sb25nCTM1NTYwOTEyNAorCS5sb25nCTEwNzI0OTE3MjEKKwkubG9uZwkzNjg0MTM5MDk5CisJLmxvbmcJMTA3MjQ4NzgyMgorCS5sb25nCTE0ODM1NTkxOAorCS5sb25nCTEwNzI0ODM4ODEKKwkubG9uZwkxNDU3Njg5MjQyCisJLmxvbmcJMTA3MjQ3OTg5NQorCS5sb25nCTIxMTg1OTE1OTYKKwkubG9uZwkxMDcyNDc1ODY1CisJLmxvbmcJOTA4ODQ4MDg5CisJLmxvbmcJMTA3MjQ3MTc5MQorCS5sb25nCTg3NzAzMjY4OQorCS5sb25nCTEwNzI0Njc2NzIKKwkubG9uZwk3NTIwMTIzMDQKKwkubG9uZwkxMDcyNDYzNTA4CisJLmxvbmcJMzUzMjMwMTc0OQorCS5sb25nCTEwNzI0NTkyOTgKKwkubG9uZwkzNjAwNTYzMjIxCisJLmxvbmcJMTA3MjQ1NTA0MworCS5sb25nCTM5MDI4NTcwODQKKwkubG9uZwkxMDcyNDUwNzQyCisJLmxvbmcJMzA2MzEwMTAzNgorCS5sb25nCTEwNzI0NDYzOTUKKwkubG9uZwkzOTcyMzQ0Mzc0CisJLmxvbmcJMTA3MjQ0MjAwMQorCS5sb25nCTkwMzE4MzU0OQorCS5sb25nCTEwNzI0Mzc1NjEKKwkubG9uZwk5ODM4OTI5MzgKKwkubG9uZwkxMDcyNDMzMDczCisJLmxvbmcJMjcyMjg1ODU2OAorCS5sb25nCTEwNzI0Mjg1MzcKKwkubG9uZwkzMDI3OTA1MTUKKwkubG9uZwkxMDcyNDIzOTU0CisJLmxvbmcJNzU5ODExMDU3CisJLmxvbmcJMTA3MjQxOTMyMgorCS5sb25nCTI1MDc4MDk5MjIKKwkubG9uZwkxMDcyNDE0NjQxCisJLmxvbmcJMjM4ODQwODgxMworCS5sb25nCTEwNzI0MDc1MjgKKwkubG9uZwkyMDg0NDkyOTQyCisJLmxvbmcJMTA3MjM5Nzg3MAorCS5sb25nCTI0MzU3MDMzMDEKKwkubG9uZwkxMDcyMzg4MDEwCisJLmxvbmcJMTkzNTQzMzM2MAorCS5sb25nCTEwNzIzNzc5NDUKKwkubG9uZwkyNzQyMDQ3MjkwCisJLmxvbmcJMTA3MjM2NzY3MQorCS5sb25nCTIwNTMyODQyMDUKKwkubG9uZwkxMDcyMzU3MTg1CisJLmxvbmcJNjU3NzgzMzY3CisJLmxvbmcJMTA3MjM0NjQ4MworCS5sb25nCTI4OTM2NjQ4NDEKKwkubG9uZwkxMDcyMzM1NTYwCisJLmxvbmcJMzcxODkwNjQwNQorCS5sb25nCTEwNzIzMjQ0MTMKKwkubG9uZwkxNTQ3ODk2MzAzCisJLmxvbmcJMTA3MjMxMzAzOAorCS5sb25nCTI0OTQwNTg0NDAKKwkubG9uZwkxMDcyMzAxNDI5CisJLmxvbmcJMzEzMzIzODc0MgorCS5sb25nCTEwNzIyODk1ODIKKwkubG9uZwkzMzI3MDAwMDg2CisJLmxvbmcJMTA3MjI3NzQ5MgorCS5sb25nCTE4NjA2NjcyNzQKKwkubG9uZwkxMDcyMjY1MTU0CisJLmxvbmcJNjY1MzQwNzQ3CisJLmxvbmcJMTA3MjI1MjU2MgorCS5sb25nCTQ0MzM0Nzg0MQorCS5sb25nCTEwNzIyMzk3MTAKKwkubG9uZwk1ODEyODI2MTgKKwkubG9uZwkxMDcyMjI2NTkyCisJLmxvbmcJMzM0OTc4MDQ2NQorCS5sb25nCTEwNzIyMTMyMDEKKwkubG9uZwk5MTQyMTc2MDYKKwkubG9uZwkxMDcyMTk5NTMyCisJLmxvbmcJOTg5Nzk3NjYxCisJLmxvbmcJMTA3MjE4NTU3NgorCS5sb25nCTk0NTQzNjQxNgorCS5sb25nCTEwNzIxNzEzMjYKKwkubG9uZwk1NDkyOTEzMDAKKwkubG9uZwkxMDcyMTU2Nzc0CisJLmxvbmcJMTgxNDYzNjM4OQorCS5sb25nCTEwNzIxNDE5MTEKKwkubG9uZwkyMzkwOTI4NTgKKwkubG9uZwkxMDcyMTI2NzI5CisJLmxvbmcJMTc5NDY4MDcyNAorCS5sb25nCTEwNzIxMTEyMTcKKwkubG9uZwkxMjQxNTM0Njc4CisJLmxvbmcJMTA3MjA5NTM2NgorCS5sb25nCTMzNjY1NjYyMTQKKwkubG9uZwkxMDcyMDc5MTY0CisJLmxvbmcJMTI0NDA5MDgyOAorCS5sb25nCTEwNzIwNjI2MDEKKwkubG9uZwkxNzA4NDQ4MTIwCisJLmxvbmcJMTA3MjA0NTY2MworCS5sb25nCTM1NDQyNjA2NTAKKwkubG9uZwkxMDcyMDI4MzM3CisJLmxvbmcJMTQwMjc0MTQwMworCS5sb25nCTEwNzIwMTA2MTAKKwkubG9uZwkyNTUxOTM2ODg4CisJLmxvbmcJMTA3MTk5MjQ2NQorCS5sb25nCTYxNzY2OTczOQorCS5sb25nCTEwNzE5NzM4ODcKKwkubG9uZwk3OTQwMDIxODYKKwkubG9uZwkxMDcxOTU0ODU3CisJLmxvbmcJMjAyMTIzNzY5MworCS5sb25nCTEwNzE5MzUzNTYKKwkubG9uZwk1NDA0NTAzODQKKwkubG9uZwkxMDcxOTE1MzY0CisJLmxvbmcJMTkyMDU1NTUzNworCS5sb25nCTEwNzE4OTQ4NTcKKwkubG9uZwkyODc5NTg1MjA2CisJLmxvbmcJMTA3MTg3MzgxMQorCS5sb25nCTMwMDAyMzc0NTUKKwkubG9uZwkxMDcxODUyMTk5CisJLmxvbmcJMzM1Mjk3NDM0NgorCS5sb25nCTEwNzE4Mjk5OTEKKwkubG9uZwk1Njk2Mjk5MzcKKwkubG9uZwkxMDcxODA3MTU1CisJLmxvbmcJMjA3NzIzNzIwOAorCS5sb25nCTEwNzE3ODM2NTMKKwkubG9uZwkyMjg0ODkxODA1CisJLmxvbmcJMTA3MTc1OTQ0NgorCS5sb25nCTEyMjY2NTE3ODQKKwkubG9uZwkxMDcxNzM0NDg5CisJLmxvbmcJMTEwMjA0NzQwNQorCS5sb25nCTEwNzE3MDg3MzEKKwkubG9uZwkyMDA5ODk2Mzg0CisJLmxvbmcJMTA3MTY4MjExNQorCS5sb25nCTkyNzQxOTA4MgorCS5sb25nCTEwNzE2NTQ1NzcKKwkubG9uZwk4NTAxMDM2NgorCS5sb25nCTEwNzE2MDc0MTMKKwkubG9uZwk2OTY0MzEwMjUKKwkubG9uZwkxMDcxNTQ4MTgwCisJLmxvbmcJMjYxMTQxMDU0MQorCS5sb25nCTEwNzE0ODY1ODUKKwkubG9uZwkyNjEyNTkzNjU4CisJLmxvbmcJMTA3MTQyMjM5NgorCS5sb25nCTM1NDgxNTUzMDYKKwkubG9uZwkxMDcxMzU1MzM2CisJLmxvbmcJMzg4Nzk5NzQ4NAorCS5sb25nCTEwNzEyODUwNzMKKwkubG9uZwkyNDQ4NTQ3NjMKKwkubG9uZwkxMDcxMjExMjAyCisJLmxvbmcJNDIxNDQ0NTY0OAorCS5sb25nCTEwNzExMzMyMTYKKwkubG9uZwkyMzAzOTY2NzI3CisJLmxvbmcJMTA3MTA1MDQ3OAorCS5sb25nCTM5OTEwNDAwMTMKKwkubG9uZwkxMDcwOTYyMTUyCisJLmxvbmcJMzEyNjk1MjI3OAorCS5sb25nCTEwNzA4NjcxMTgKKwkubG9uZwkxODE3NDQ4Mzc4CisJLmxvbmcJMTA3MDc2MzgwNAorCS5sb25nCTE3OTM4MTQ4NjQKKwkubG9uZwkxMDcwNjQ5ODg0CisJLmxvbmcJMzUwNzIyNDA3MgorCS5sb25nCTEwNzA0NDcxOTMKKwkubG9uZwk0MDI3NjA5MTA1CisJLmxvbmcJMTA3MDE0ODc3MgorCS5sb25nCTU3NzUwNzk5MworCS5sb25nCTEwNjk3Nzk0MTQKKwkubG9uZwkyMzEwMjMyNDE5CisJLmxvbmcJMTA2ODkzMTgyOQorCS50eXBlCVRfdGFibGUsQG9iamVjdAorCS5zaXplCVRfdGFibGUsMjA0OAorCS5hbGlnbiAxNgorVGJsX2FkZHI6CisJLmxvbmcJMzgyMjk1Mjc5MgorCS5sb25nCTEwMjE2MzkzNzIKKwkubG9uZwkxODI3OTI0NDgKKwkubG9uZwkxMDY4NTA3ODM2CisJLmxvbmcJMjI2NDIxMzI3MQorCS5sb25nCTEwMTk1NTg5MDgKKwkubG9uZwk2NDkwNTI5MjgKKwkubG9uZwkxMDY4NTI0MjUzCisJLmxvbmcJMTc5NzEzOTYwOQorCS5sb25nCTEwMjIyOTUxNDMKKwkubG9uZwkxMjQzMDk1Mjk2CisJLmxvbmcJMTA2ODU0MDY3MQorCS5sb25nCTE0MTU5Mzg3NTYKKwkubG9uZwkxMDIxNDM5NTM3CisJLmxvbmcJMjAzMzI5NDU5MgorCS5sb25nCTEwNjg1NTcwOTAKKwkubG9uZwkyMzU2ODA5OTc4CisJLmxvbmcJMTAyMTc3NzkxNgorCS5sb25nCTMwODgwNjM3NDQKKwkubG9uZwkxMDY4NTczNTEwCisJLmxvbmcJMjY2OTA1NTMxOAorCS5sb25nCTEwMjIxMjQ0ODIKKwkubG9uZwkxODA4ODg1NzYKKwkubG9uZwkxMDY4NTg5OTMyCisJLmxvbmcJMzU2NjQ0NTMyNQorCS5sb25nCTEwMjEzNTg3MTIKKwkubG9uZwkxOTcwMTk2OTkyCisJLmxvbmcJMTA2ODYwNjM1NAorCS5sb25nCTg5Njk4MDMyMworCS5sb25nCTEwMjEzMTk2NTkKKwkubG9uZwk0MjI5NTU1NDU2CisJLmxvbmcJMTA2ODYyMjc3NworCS5sb25nCTQzNjA0OTcxMgorCS5sb25nCTEwMjEzMTk3NTgKKwkubG9uZwkyNzMyNTcyMTYwCisJLmxvbmcJMTA2ODYzOTIwMgorCS5sb25nCTU4MzEyMzIwOQorCS5sb25nCTEwMjA3OTc5NjAKKwkubG9uZwkxODQyODMxODcyCisJLmxvbmcJMTA2ODY1NTYyOAorCS5sb25nCTEzNzA0NDk4MDQKKwkubG9uZwkxMDIxNDI5MjcwCisJLmxvbmcJMTYyODk5NDU2MAorCS5sb25nCTEwNjg2NzIwNTUKKwkubG9uZwkyNDExMzkxNDY0CisJLmxvbmcJMTAyMTA1Nzk4MAorCS5sb25nCTIxNTk3NjM3MTIKKwkubG9uZwkxMDY4Njg4NDgzCisJLmxvbmcJMTIwODY5Mjc0OQorCS5sb25nCTEwMjE5NDM5MDMKKwkubG9uZwkzNTAzODg2MzM2CisJLmxvbmcJMTA2ODcwNDkxMgorCS5sb25nCTUzODc5MzMwOQorCS5sb25nCTEwMTk3NDQwNjMKKwkubG9uZwkxNDM1MTg3MjAwCisJLmxvbmcJMTA2ODcyMTM0MworCS5sb25nCTQwODUwODc2MTIKKwkubG9uZwkxMDIwNjA4NDE5CisJLmxvbmcJMzE3NDY5OTUyCisJLmxvbmcJMTA2ODczNzc3NQorCS5sb25nCTE0NDM4Njk0MgorCS5sb25nCTEwMjE0NDA3MzIKKwkubG9uZwkyMTk2MTcyODAKKwkubG9uZwkxMDY4NzU0MjA4CisJLmxvbmcJMjk0MDA4ODM2MQorCS5sb25nCTEwMTk5ODExMjIKKwkubG9uZwkxMjEwNTU4MjA4CisJLmxvbmcJMTA2ODc3MDY0MgorCS5sb25nCTIxNzY4NTAzNDcKKwkubG9uZwkxMDE4MzczNzA1CisJLmxvbmcJMzM1OTI2ODM1MgorCS5sb25nCTEwNjg3ODcwNzcKKwkubG9uZwkyMzk1NjExNDU0CisJLmxvbmcJMTAyMTg4OTA0MgorCS5sb25nCTI0Mzk4MDM2NDgKKwkubG9uZwkxMDY4ODAzNTE0CisJLmxvbmcJMTY1MDcwNTI1MworCS5sb25nCTEwMjAyMjc5NjYKKwkubG9uZwkyODE2MjAzNTIwCisJLmxvbmcJMTA2ODgxOTk1MgorCS5sb25nCTM3MDIxNjYzODYKKwkubG9uZwkxMDE5Mzc5OTE0CisJLmxvbmcJMjYyNjIwNjcyCisJLmxvbmcJMTA2ODgzNjM5MgorCS5sb25nCTE4NTU2NDkzNzAKKwkubG9uZwkxMDIwNDUzMTI0CisJLmxvbmcJMzQzODE1OTYxNgorCS5sb25nCTEwNjg4NTI4MzIKKwkubG9uZwk5MjMwNjM4NjAKKwkubG9uZwkxMDE5MjczODM0CisJLmxvbmcJMzgyMjEwNTg1NgorCS5sb25nCTEwNjg4NjkyNzQKKwkubG9uZwk0Mjg5OTQ3OTQ3CisJLmxvbmcJMTAxOTQzNDI0OQorCS5sb25nCTE0ODM3Mjk5MjAKKwkubG9uZwkxMDY4ODg1NzE4CisJLmxvbmcJNzg3NDU1ODE0CisJLmxvbmcJMTAyMDczODM3OQorCS5sb25nCTc4NzMyMTA4OAorCS5sb25nCTEwNjg5MDIxNjMKKwkubG9uZwkzMzIxNjUzMzM3CisJLmxvbmcJMTAyMTg0MjU2OQorCS5sb25nCTE4MDIyNTMzMTIKKwkubG9uZwkxMDY4OTE4NjA5CisJLmxvbmcJMjY1MzYzMzUyNgorCS5sb25nCTEwMjE4MjE1MjUKKwkubG9uZwkzMDI5ODU5ODQKKwkubG9uZwkxMDY4OTM1MDU3CisJLmxvbmcJMTYxMjcyMDI4CisJLmxvbmcJMTAyMTY1NTE0OQorCS5sb25nCTY1Mzk2NjA4MAorCS5sb25nCTEwNjg5NTE1MDYKKwkubG9uZwkyNTY2MDk4NjY3CisJLmxvbmcJMTAyMDA2NjIxOQorCS5sb25nCTI5MjQ3MjcyOTYKKwkubG9uZwkxMDY4OTY3OTU2CisJLmxvbmcJMzY0NjQ5MzcyMgorCS5sb25nCTEwMTQyOTIyODUKKwkubG9uZwkyODg5ODkwMzA0CisJLmxvbmcJMTA2ODk4NDQwOAorCS5sb25nCTEwODEwMDkxOTYKKwkubG9uZwkxMDIyMTg5NjIwCisJLmxvbmcJNjE5MDk4MTEyCisJLmxvbmcJMTA2OTAwMDg2MgorCS5sb25nCTQwMTE2NDMzNTUKKwkubG9uZwkxMDIxNzczMjk3CisJLmxvbmcJNDc3MDE3NjAwCisJLmxvbmcJMTA2OTAxNzMxNworCS5sb25nCTQwMzAzMDU1MzQKKwkubG9uZwkxMDIxMjkyMjUyCisJLmxvbmcJMjUzMzQwMzkwNAorCS5sb25nCTEwNjkwMzM3NzMKKwkubG9uZwkyNjQ1MTg3NTkxCisJLmxvbmcJMTAxOTUyNzA5OQorCS5sb25nCTI1NjMxMDIyMDgKKwkubG9uZwkxMDY5MDUwMjMxCisJLmxvbmcJMzg1NzI5Mzc5MgorCS5sb25nCTEwMjIzMTE2OTcKKwkubG9uZwk2MzU5ODIzMzYKKwkubG9uZwkxMDY5MDY2NjkxCisJLmxvbmcJMzYyNTkzNjYzNworCS5sb25nCTEwMTc1MTE3NDQKKwkubG9uZwkxMTE2OTQwODAwCisJLmxvbmcJMTA2OTA4MzE1MgorCS5sb25nCTM2NTM4NzI5OTMKKwkubG9uZwkxMDIyMDE2NjMxCisJLmxvbmcJNDA3NTk2NDE2MAorCS5sb25nCTEwNjkwOTk2MTQKKwkubG9uZwkyNDY4OTAwMjcxCisJLmxvbmcJMTAyMTc2OTUzMgorCS5sb25nCTk5MzE2NTU2OAorCS5sb25nCTEwNjkxMTYwNzkKKwkubG9uZwkxMzU4MTA0MjI0CisJLmxvbmcJMTAyMTE5OTc3NgorCS5sb25nCTUyODU4Njc1MgorCS5sb25nCTEwNjkxMzI1NDUKKwkubG9uZwkyMjAwOTUwMzMyCisJLmxvbmcJMTAyMjAyNDg3MgorCS5sb25nCTI3NTIzOTU3NzYKKwkubG9uZwkxMDY5MTQ5MDEyCisJLmxvbmcJMzE5NzA3MjQ1NAorCS5sb25nCTEwMTc3NTEzMTkKKwkubG9uZwkzNDM5ODU1NjE2CisJLmxvbmcJMTA2OTE2NTQ4MQorCS5sb25nCTE2NTEwODE4MDYKKwkubG9uZwkxMDIwODA5MzM4CisJLmxvbmcJMjY2MTI1NzcyOAorCS5sb25nCTEwNjkxODE5NTIKKwkubG9uZwk1MzkwMzI3NTIKKwkubG9uZwkxMDIxNzI4ODA1CisJLmxvbmcJNDg2OTU3MzEyCisJLmxvbmcJMTA2OTE5ODQyNQorCS5sb25nCTMxMzYwNDUxNDkKKwkubG9uZwkxMDE2ODg4NjcxCisJLmxvbmcJMTI4MjM0MDM1MgorCS5sb25nCTEwNjkyMTQ4OTkKKwkubG9uZwkyNTkzOTYzMjU5CisJLmxvbmcJMTAxODk1NjEwMworCS5sb25nCTgyMjkyMTcyOAorCS5sb25nCTEwNjkyMzEzNzUKKwkubG9uZwkyMTQ2MDMyNzM3CisJLmxvbmcJMTAyMjMwNjQ2NQorCS5sb25nCTM0NzQyMTYxOTIKKwkubG9uZwkxMDY5MjQ3ODUyCisJLmxvbmcJMzk3NjgxMTYyNQorCS5sb25nCTEwMjEzNTAyMDcKKwkubG9uZwk3MTY5MDI2NTYKKwkubG9uZwkxMDY5MjY0MzMyCisJLmxvbmcJNzE4MjY3MjIyCisJLmxvbmcJMTAxODYyNDcyNworCS5sb25nCTEyMTE1OTQ0OTYKKwkubG9uZwkxMDY5MjgwODEzCisJLmxvbmcJMTQ4NTY0MTM4OQorCS5sb25nCTEwMTg0NDc0NTEKKwkubG9uZwk3MzQwNzAyNzIKKwkubG9uZwkxMDY5Mjk3Mjk2CisJLmxvbmcJMzU0NDU1MTI4CisJLmxvbmcJMTAyMTM0MTI5MQorCS5sb25nCTM2NTAxMTA3MjAKKwkubG9uZwkxMDY5MzEzNzgwCisJLmxvbmcJNjgyMTg1OTQ3CisJLmxvbmcJMTAyMTY1MTg1MworCS5sb25nCTE0NDA2NjMwNDAKKwkubG9uZwkxMDY5MzMwMjY3CisJLmxvbmcJMzU1ODU3NDU1MAorCS5sb25nCTEwMjE2MTUxMTAKKwkubG9uZwkyNzY2NjEyMjI0CisJLmxvbmcJMTA2OTM0Njc1NQorCS5sb25nCTg3NDYwNzk3OAorCS5sb25nCTEwMTc3NDY4NzIKKwkubG9uZwkzNDA0MDExMDA4CisJLmxvbmcJMTA2OTM2MzI0NQorCS5sb25nCTQxNTQ5ODg1MDIKKwkubG9uZwkxMDIxNDM5OTA2CisJLmxvbmcJMzQyMzk0OTA1NgorCS5sb25nCTEwNjkzNzk3MzcKKwkubG9uZwkyMjYzMjAyMzA5CisJLmxvbmcJMTAyMTQ3OTYxNQorCS5sb25nCTI4OTc1ODc3MTIKKwkubG9uZwkxMDY5Mzk2MjMxCisJLmxvbmcJMjU2MjA2NTAzMQorCS5sb25nCTEwMjIwOTAzNjMKKwkubG9uZwkxODk2MTU5MjMyCisJLmxvbmcJMTA2OTQxMjcyNworCS5sb25nCTM4MzYyMzc2NjMKKwkubG9uZwkxMDE5ODY3Mjg4CisJLmxvbmcJNDkwOTY4NTc2CisJLmxvbmcJMTA2OTQyOTIyNQorCS5sb25nCTMzMjIwNTY3NDMKKwkubG9uZwkxMDA2NzUyNzYyCisJLmxvbmcJMzA0ODM2MDE5MgorCS5sb25nCTEwNjk0NDU3MjQKKwkubG9uZwkxMTUyMzE0ODMzCisJLmxvbmcJMTAxMzEyMjI1MgorCS5sb25nCTEwNDk4NTA2MjQKKwkubG9uZwkxMDY5NDYyMjI2CisJLmxvbmcJMzYwMTU5MDcyNworCS5sb25nCTEwMjIyMTQ2MTAKKwkubG9uZwkzMTU2ODk5NTg0CisJLmxvbmcJMTA2OTQ3ODcyOQorCS5sb25nCTE4NTUxNjk5NzAKKwkubG9uZwkxMDE5NDg3MjcxCisJLmxvbmcJODUxMTczMzc2CisJLmxvbmcJMTA2OTQ5NTIzNQorCS5sb25nCTMxMjY0OTU5NAorCS5sb25nCTEwMjA4Njg2MDQKKwkubG9uZwkyNzk0MjgxNzI4CisJLmxvbmcJMTA2OTUxMTc0MgorCS5sb25nCTEwOTM0OTAxODEKKwkubG9uZwkxMDIwNzc3NTc3CisJLmxvbmcJNDY4MDQyNDk2CisJLmxvbmcJMTA2OTUyODI1MgorCS5sb25nCTExNTI1NDA2NzkKKwkubG9uZwkxMDIxNDAzNzMyCisJLmxvbmcJMjUzNDIxOTI2NAorCS5sb25nCTEwNjk1NDQ3NjMKKwkubG9uZwkyMjkyMTI2MDM1CisJLmxvbmcJMTAyMTg3MjQzMAorCS5sb25nCTEzNzYxNDY0MzIKKwkubG9uZwkxMDY5NTU4NTI3CisJLmxvbmcJMzI5Mzc1MzY0MQorCS5sb25nCTEwMjA1MDA0NTQKKwkubG9uZwk0MTc1NDQyNDMyCisJLmxvbmcJMTA2OTU3NTA0NAorCS5sb25nCTM2MjYzNDc1NjQKKwkubG9uZwkxMDIxNjEwOTY5CisJLmxvbmcJMzUyMzExMzQ3MgorCS5sb25nCTEwNjk1OTE1NjYKKwkubG9uZwkzMzk5NTY1MDAKKwkubG9uZwkxMDIxMTE5MDM5CisJLmxvbmcJNDAwMzM1MDUyOAorCS5sb25nCTEwNjk2MDgwOTIKKwkubG9uZwkzNDI5MzMzMDgyCisJLmxvbmcJMTAyMjgxMzU0MgorCS5sb25nCTE2MTEwNjczOTIKKwkubG9uZwkxMDY5NjI0NjIzCisJLmxvbmcJMjI5ODAxNzU0NAorCS5sb25nCTEwMjE5Nzc1ODcKKwkubG9uZwk5MzE3ODIxNDQKKwkubG9uZwkxMDY5NjQxMTU4CisJLmxvbmcJMjE2NDY4NDc0MworCS5sb25nCTEwMjEyNTA5ODgKKwkubG9uZwkyMjU2NzI1NTA0CisJLmxvbmcJMTA2OTY1NzY5NworCS5sb25nCTExMzg3NjIzMzUKKwkubG9uZwkxMDIxNDQzNzc2CisJLmxvbmcJMTU4Mjg1MzEyMAorCS5sb25nCTEwNjk2NzQyNDEKKwkubG9uZwkxMDg0MDEwMzgyCisJLmxvbmcJMTAyMjk5NDY5MworCS5sb25nCTM0OTc3NTg3MjAKKwkubG9uZwkxMDY5NjkwNzg5CisJLmxvbmcJNDA2MzY2MjQ0CisJLmxvbmcJMTAyMjcxMzU4NgorCS5sb25nCTM5OTk4MTY5NjAKKwkubG9uZwkxMDY5NzA3MzQyCisJLmxvbmcJMTQ4ODcyMzA0MgorCS5sb25nCTEwMjMzODEyOTAKKwkubG9uZwkzMzgzMDk2MDY0CisJLmxvbmcJMTA2OTcyMzkwMAorCS5sb25nCTI1NDE1NTg5NTMKKwkubG9uZwkxMDE5MTM3ODg3CisJLmxvbmcJMTk0MjQwMzU4NAorCS5sb25nCTEwNjk3NDA0NjMKKwkubG9uZwkxODc5NjIwMzQzCisJLmxvbmcJMTAyMjY1MzY0MgorCS5sb25nCTQyNjgyNjM2ODAKKwkubG9uZwkxMDY5NzU3MDMwCisJLmxvbmcJMzAzOTA3NzA0NworCS5sb25nCTEwMjIyNTI1NDUKKwkubG9uZwkyMDY3MDYyMjcyCisJLmxvbmcJMTA2OTc3MzYwMworCS5sb25nCTQxOTA2NzA2NzcKKwkubG9uZwkxMDIwNzI1ODYzCisJLmxvbmcJNDIyNTgyODA5NgorCS5sb25nCTEwNjk3OTAxODAKKwkubG9uZwkxOTk4NTY3MzIxCisJLmxvbmcJMTAyMjAxNDM4NQorCS5sb25nCTI0NTI1MDcxMzYKKwkubG9uZwkxMDY5ODA2NzYzCisJLmxvbmcJMTUxMTYyODg3MworCS5sb25nCTEwMjE5MDAzMDAKKwkubG9uZwkxMzQwNzQ2MjQwCisJLmxvbmcJMTA2OTgyMzM1MQorCS5sb25nCTc4ODM2NzM0MQorCS5sb25nCTEwMjI3MjYyMDgKKwkubG9uZwkxMTkwMDM1NDU2CisJLmxvbmcJMTA2OTgzOTk0NAorCS5sb25nCTM4NTYzMzcyMzAKKwkubG9uZwkxMDIxODM0MTE4CisJLmxvbmcJMjMwMDY4ODM4NAorCS5sb25nCTEwNjk4NTY1NDIKKwkubG9uZwkzMjExMzk2NTc5CisJLmxvbmcJMTAyMjYyMTM2NQorCS5sb25nCTY3ODg4NjQwMAorCS5sb25nCTEwNjk4NzMxNDYKKwkubG9uZwk0MDAxMDExODg3CisJLmxvbmcJMTAyMjA0MjY0NgorCS5sb25nCTkyMTU5NDExMgorCS5sb25nCTEwNjk4ODk3NTUKKwkubG9uZwk1NTc4MTE5NjgKKwkubG9uZwkxMDIzMDY1NTMzCisJLmxvbmcJMzMzMTY2ODk5MgorCS5sb25nCTEwNjk5MDYzNjkKKwkubG9uZwkxODc3MDYwNjc5CisJLmxvbmcJMTAyMjQxOTc0MgorCS5sb25nCTM5MTc4NzUyMDAKKwkubG9uZwkxMDY5OTIyOTg5CisJLmxvbmcJMTE4MTA1NTE3MQorCS5sb25nCTEwMjI3NTI3MTIKKwkubG9uZwkyOTg0ODI5Njk2CisJLmxvbmcJMTA2OTkzOTYxNQorCS5sb25nCTQyOTQ1MjY5MzIKKwkubG9uZwkxMDIxNDk5OTg4CisJLmxvbmcJODM4MDQ5MDI0CisJLmxvbmcJMTA2OTk1NjI0NworCS5sb25nCTM2NTgwODE4NzgKKwkubG9uZwkxMDIyOTU3OTUyCisJLmxvbmcJMjA3ODkyODM4NAorCS5sb25nCTEwNjk5NzI4ODQKKwkubG9uZwk4MjAzNTM3MDEKKwkubG9uZwkxMDE5MzkxMTA3CisJLmxvbmcJMjcxOTg1NDMzNgorCS5sb25nCTEwNjk5ODk1MjcKKwkubG9uZwkxNjQ0MDIyNDg5CisJLmxvbmcJMTAyMzM3ODI0MAorCS5sb25nCTMwNjkxMTc2OTYKKwkubG9uZwkxMDcwMDA2MTc2CisJLmxvbmcJMjc3MTM5MzcwMgorCS5sb25nCTEwMTkzMTk5NTQKKwkubG9uZwkzNDM1OTYyMzY4CisJLmxvbmcJMTA3MDAyMjgzMQorCS5sb25nCTM4NzYzOTQxNDUKKwkubG9uZwkxMDIzMDI0NDMzCisJLmxvbmcJNDEzMDU5NTMyOAorCS5sb25nCTEwNzAwMzk0OTIKKwkubG9uZwkxNjMwNDQ3NzQ4CisJLmxvbmcJMTAyMTQ2NTg4MgorCS5sb25nCTExNjkyMzYyMjQKKwkubG9uZwkxMDcwMDU2MTYwCisJLmxvbmcJMjgyODM1NTk5NworCS5sb25nCTEwMjA0NTgxMjAKKwkubG9uZwkzNDUzOTk3MzEyCisJLmxvbmcJMTA3MDA3MjgzMworCS5sb25nCTE2NDA5MTY0MQorCS5sb25nCTEwMjAzODgyNzkKKwkubG9uZwkyNzA4MTI3NzQ0CisJLmxvbmcJMTA3MDA4OTUxMworCS5sb25nCTMwMzY1NTAyMjMKKwkubG9uZwkxMDIzMzI4Njg0CisJLmxvbmcJMzU0MDc5NzY5NgorCS5sb25nCTEwNzAxMDYxOTkKKwkubG9uZwkzNzEwOTQ5NDYzCisJLmxvbmcJMTAyMjU2ODgwNQorCS5sb25nCTE5NzIyNzY3MzYKKwkubG9uZwkxMDcwMTIyODkyCisJLmxvbmcJMzg4NTI3Nzk1MAorCS5sb25nCTEwMTk3NjE2NzQKKwkubG9uZwkyNjEzODE1NTUyCisJLmxvbmcJMTA3MDEzOTU5MQorCS5sb25nCTI3NjQxNjUwNzcKKwkubG9uZwkxMDIyOTIxMDIzCisJLmxvbmcJMTQ4Nzc5MTYxNgorCS5sb25nCTEwNzAxNTYyOTcKKwkubG9uZwkxMzMwNjQ0NzY5CisJLmxvbmcJMTAyMzE2MjY3OQorCS5sb25nCTMyMDc1OTM0NzIKKwkubG9uZwkxMDcwMTczMDA5CisJLmxvbmcJMzkxMTAwNzIyMQorCS5sb25nCTEwMjI5OTM0OTYKKwkubG9uZwkzNzk3NzY0NjA4CisJLmxvbmcJMTA3MDE4OTcyOAorCS5sb25nCTk3OTcxMjU5OAorCS5sb25nCTEwMjI1NTQ1ODAKKwkubG9uZwkzNTc4OTIwNDQ4CisJLmxvbmcJMTA3MDIwNjQ1NAorCS5sb25nCTI4MjU3MzgyMjMKKwkubG9uZwkxMDIwMjIzNzA4CisJLmxvbmcJMjg3Mjc5NTY0OAorCS5sb25nCTEwNzAyMjMxODcKKwkubG9uZwkzOTI0NTExMjQKKwkubG9uZwkxMDIyNjY2Mjc5CisJLmxvbmcJMjAwMjI1ODQzMgorCS5sb25nCTEwNzAyMzk5MjcKKwkubG9uZwkzNzMwNDA3NjMyCisJLmxvbmcJMTAyMzE0ODI5MQorCS5sb25nCTEyOTEzMjY0NjQKKwkubG9uZwkxMDcwMjU2Njc0CisJLmxvbmcJMzcyMzgwMjk4MAorCS5sb25nCTEwMjI1MTQwODkKKwkubG9uZwkxMDY1MTgwOTI4CisJLmxvbmcJMTA3MDI3MzQyOAorCS5sb25nCTI2MzU2MTc0NjMKKwkubG9uZwkxMDIyNjU0NDcwCisJLmxvbmcJMTY1MDE4MTYzMgorCS5sb25nCTEwNzAyOTAxODkKKwkubG9uZwkyMDYxOTgyODgzCisJLmxvbmcJMTAyMjg1MzQxMQorCS5sb25nCTMzNzM4ODI4ODAKKwkubG9uZwkxMDcwMzA2OTU3CisJLmxvbmcJMzE5NzMyNzg1CisJLmxvbmcJMTAyMjAxNzE3NQorCS5sb25nCTIyNzAwODEyODAKKwkubG9uZwkxMDcwMzIzNzMzCisJLmxvbmcJMjIzNzc1NzQxMQorCS5sb25nCTEwMjMwNjQwODcKKwkubG9uZwkyOTYzNzMyNzM2CisJLmxvbmcJMTA3MDM0MDUxNgorCS5sb25nCTQ2ODgzOTE2NQorCS5sb25nCTEwMjMyOTM3NzQKKwkubG9uZwkxNDkxMDk5OTA0CisJLmxvbmcJMTA3MDM1NzMwNworCS5sb25nCTE1MDI2NTc5NDYKKwkubG9uZwkxMDIxNTMzNDc5CisJLmxvbmcJMjQ3OTYzNjQ4MAorCS5sb25nCTEwNzAzNzQxMDUKKwkubG9uZwk0ODI5MTM1NjIKKwkubG9uZwkxMDIxOTg2Mjg2CisJLmxvbmcJMTk2ODEzMzYzMgorCS5sb25nCTEwNzAzOTA5MTEKKwkubG9uZwkzMjgxNDc0MzM3CisJLmxvbmcJMTAyMjY0NjQwMAorCS5sb25nCTI5MTYzOTA0MAorCS5sb25nCTEwNzA0MDc3MjUKKwkubG9uZwkyNDUzMzIwMjU5CisJLmxvbmcJMTAyMjgxMjQyMworCS5sb25nCTIwODE0NzI1MTIKKwkubG9uZwkxMDcwNDI0NTQ2CisJLmxvbmcJMjkzOTk4OTU3MAorCS5sb25nCTEwMjMwOTE4ODgKKwkubG9uZwkzMzgwMzQwNDgwCisJLmxvbmcJMTA3MDQ0MTM3NQorCS5sb25nCTI4NTA3MDc0OTkKKwkubG9uZwkxMDIxOTIxMTA5CisJLmxvbmcJMjMyMjg3NDg4CisJLmxvbmcJMTA3MDQ1ODIxMworCS5sb25nCTM2NzQ2MjUzNDIKKwkubG9uZwkxMDIwNzI1MTMwCisJLmxvbmcJMTU2NzYxNDIwOAorCS5sb25nCTEwNzA0NzUwNTgKKwkubG9uZwk5MzQ3MzM0CisJLmxvbmcJMTAyMjAyNDAwOQorCS5sb25nCTM0MzMwOTEwNzIKKwkubG9uZwkxMDcwNDkxOTExCisJLmxvbmcJMjgyNTI0OTk5CisJLmxvbmcJMTAyMTQzMzUyMworCS5sb25nCTE4NzY4NzczMTIKKwkubG9uZwkxMDcwNTA4NzczCisJLmxvbmcJMzQ3MDQ0OTQ0MAorCS5sb25nCTEwMTkzMDk3MjEKKwkubG9uZwkxNTM4NDcyMTkyCisJLmxvbmcJMTA3MDUyNTY0MworCS5sb25nCTIwODk0ODY4MjUKKwkubG9uZwkxMDE5Njk4OTE2CisJLmxvbmcJMjc2MzgzMDc4NAorCS5sb25nCTEwNzA1NDI1MjEKKwkubG9uZwk0NDM0OTgxMTUKKwkubG9uZwkxMDIwNTA1MTk0CisJLmxvbmcJMTYwNTM4MTYzMgorCS5sb25nCTEwNzA1NTk0MDgKKwkubG9uZwkzMDE4ODcxNjAxCisJLmxvbmcJMTAyMjg2OTkxMworCS5sb25nCTI3MDY5NDYwNDgKKwkubG9uZwkxMDcwNTc2MzAzCisJLmxvbmcJMzkzNjI2MDg5MgorCS5sb25nCTEwMjMxNzU4NzUKKwkubG9uZwkyMTIzODg3MzYwCisJLmxvbmcJMTA3MDU5MzIwNworCS5sb25nCTI5OTQyMjA2NTUKKwkubG9uZwkxMDIyODI1OTQ4CisJLmxvbmcJMTA0MDE1MTA0CisJLmxvbmcJMTA3MDYwMzEwOAorCS5sb25nCTMzNTA1NDQ5MworCS5sb25nCTEwMjM0NDE4NTMKKwkubG9uZwkyOTA0NTY4ODMyCisJLmxvbmcJMTA3MDYxNTgwMAorCS5sb25nCTE0NTEyMTU2MzMKKwkubG9uZwkxMDIzODUzODU3CisJLmxvbmcJMzQ1NjE5NzEyMAorCS5sb25nCTEwNzA2MzI3MzkKKwkubG9uZwk0MzYzMzQ3MzMKKwkubG9uZwkxMDI0MDI2NDMyCisJLmxvbmcJMjUyNDUyMzUyCisJLmxvbmcJMTA3MDY0OTY5NworCS5sb25nCTM0NTk2MTY3CisJLmxvbmcJMTAyNDAzMTM5NgorCS5sb25nCTMzMjgwMTg0MzIKKwkubG9uZwkxMDcwNjY2NjcyCisJLmxvbmcJMjY0NDU0NzA3MworCS5sb25nCTEwMjQyOTY3NTgKKwkubG9uZwkxMjU1ODI5MjQ4CisJLmxvbmcJMTA3MDY4MzY2NworCS5sb25nCTU1MjgzMjU4NgorCS5sb25nCTEwMjM3NjMxMjIKKwkubG9uZwk0MDk3MDU4NTYwCisJLmxvbmcJMTA3MDcwMDY4MAorCS5sb25nCTE5NTU2NDA2MjMKKwkubG9uZwkxMDIxMzk0NjU0CisJLmxvbmcJNDUxNzcwMTEyCisJLmxvbmcJMTA3MDcxNzcxNAorCS5sb25nCTM0Mjg5MDM3NzcKKwkubG9uZwkxMDIyOTQxMTQyCisJLmxvbmcJNDA4OTIwODMyCisJLmxvbmcJMTA3MDczNDc2NworCS5sb25nCTE2NTUwMzI2MworCS5sb25nCTEwMjM4OTQ5NTgKKwkubG9uZwkxMTg2OTYwNjQwCisJLmxvbmcJMTA3MDc1MTg0MAorCS5sb25nCTQzNTgyNjQ1MAorCS5sb25nCTEwMjQwMjYxMzQKKwkubG9uZwkxOTA3ODY1NgorCS5sb25nCTEwNzA3Njg5MzQKKwkubG9uZwkxODM0MTY5NzQ5CisJLmxvbmcJMTAyMjg5OTI4NAorCS5sb25nCTI3NDM0OTAzMDQKKwkubG9uZwkxMDcwNzg2MDQ4CisJLmxvbmcJNDk0NTgxMDc0CisJLmxvbmcJMTAxODgxODQ3OQorCS5sb25nCTIzMjg5NjEwMjQKKwkubG9uZwkxMDcwODAzMTg0CisJLmxvbmcJMjk4NzkwODgzNAorCS5sb25nCTEwMjI1ODExMTAKKwkubG9uZwkzNTAwMTEzOTIKKwkubG9uZwkxMDcwODIwMzQyCisJLmxvbmcJMjQwNzcxMTg0CisJLmxvbmcJMTAyNDE0MzA4MworCS5sb25nCTI2OTIzMjY5MTIKKwkubG9uZwkxMDcwODM3NTIxCisJLmxvbmcJNjY2MDU2ODM3CisJLmxvbmcJMTAyMjM5NDc3NgorCS5sb25nCTIzNzMyNzQzNjgKKwkubG9uZwkxMDcwODU0NzIzCisJLmxvbmcJMjQ4NDMzNzc3MAorCS5sb25nCTEwMjQyMjgxNTYKKwkubG9uZwkxMDE3MTMxNTIwCisJLmxvbmcJMTA3MDg3MTk0OAorCS5sb25nCTMyODU2NDgyNzkKKwkubG9uZwkxMDI0MDI1Nzg5CisJLmxvbmcJMjY1NTU4MjcyCisJLmxvbmcJMTA3MDg4OTE5NgorCS5sb25nCTM5MjI0MTg5NgorCS5sb25nCTEwMjQyNTI4MDkKKwkubG9uZwkxNzc4MDA4MDY0CisJLmxvbmcJMTA3MDkwNjQ2NworCS5sb25nCTE1MzYxMDc5NDMKKwkubG9uZwkxMDIzOTQ5MzAwCisJLmxvbmcJMjkzNzE4NDc2OAorCS5sb25nCTEwNzA5MjM3NjIKKwkubG9uZwkzNTQxMDYyMjUxCisJLmxvbmcJMTAxOTQ0ODY0NgorCS5sb25nCTExNDQ0NDI4ODAKKwkubG9uZwkxMDcwOTQxMDgyCisJLmxvbmcJMzY5MTY4Mzc4MQorCS5sb25nCTEwMjIxMjM5NDgKKwkubG9uZwkyNDEwMTY1NTA0CisJLmxvbmcJMTA3MDk1ODQyNgorCS5sb25nCTE4MDQxODE5NjAKKwkubG9uZwkxMDIzOTQ1MjIxCisJLmxvbmcJNDE3NDM1MDg0OAorCS5sb25nCTEwNzA5NzU3OTUKKwkubG9uZwkyMDE2MDk0ODYxCisJLmxvbmcJMTAyMTcxNjU4NQorCS5sb25nCTM4OTcwMTI0ODAKKwkubG9uZwkxMDcwOTkzMTkwCisJLmxvbmcJMTc1Mjk0NDEwCisJLmxvbmcJMTAyMzcwMzQwNAorCS5sb25nCTMzNTM2MjMwNDAKKwkubG9uZwkxMDcxMDEwNjExCisJLmxvbmcJMTY3OTczMjQyCisJLmxvbmcJMTAyMzI0MDgzOQorCS5sb25nCTQ1NjcxMTY4CisJLmxvbmcJMTA3MTAyODA1OQorCS5sb25nCTIxNjY4NTYxMTMKKwkubG9uZwkxMDIxNTY1NDEzCisJLmxvbmcJODYwNjM4NzIKKwkubG9uZwkxMDcxMDQ1NTMzCisJLmxvbmcJMjY3NjI1NDcyNworCS5sb25nCTEwMjM5ODUyOTkKKwkubG9uZwkxMDE5NzcyNjcyCisJLmxvbmcJMTA3MTA2MzAzNAorCS5sb25nCTk4OTA0MzU5MworCS5sb25nCTEwMjE1NDk1ODcKKwkubG9uZwk0MTQyOTczNDQKKwkubG9uZwkxMDcxMDgwNTYzCisJLmxvbmcJMzk2MDk3MjA0NgorCS5sb25nCTEwMjQzMDcyNTEKKwkubG9uZwkxNTUxNzMxMjAKKwkubG9uZwkxMDcxMDk4MTIwCisJLmxvbmcJMTgzMDkxOTI5MQorCS5sb25nCTEwMjE1OTIyNTEKKwkubG9uZwkyMTUxNTYyMjQwCisJLmxvbmcJMTA3MTExNTcwNQorCS5sb25nCTQwNTQwODY2NgorCS5sb25nCTEwMjM0MjMxMjgKKwkubG9uZwk0MDQxODU0NzIwCisJLmxvbmcJMTA3MTEzMzMxOQorCS5sb25nCTIwNDM0OTc4MjcKKwkubG9uZwkxMDI0NDExNTAzCisJLmxvbmcJMzQ4OTIyNDE5MgorCS5sb25nCTEwNzExNTA5NjMKKwkubG9uZwkzMDcyMjE1ODY0CisJLmxvbmcJMTAyMjY5ODYzNQorCS5sb25nCTI0NzcxOTYyODgKKwkubG9uZwkxMDcxMTY4NjM3CisJLmxvbmcJMTgxMjE5NTEzOQorCS5sb25nCTEwMjI2ODkxOTIKKwkubG9uZwkzMDE1Mjk4ODE2CisJLmxvbmcJMTA3MTE4NjM0MQorCS5sb25nCTc2NDg0MTk2OQorCS5sb25nCTEwMjEwMjczMzEKKwkubG9uZwkyODQ0NzMxMTM2CisJLmxvbmcJMTA3MTIwNDA3NgorCS5sb25nCTI4NzgxMTczMjEKKwkubG9uZwkxMDE5MTE2NTEzCisJLmxvbmcJNDAyODk1MDUyOAorCS5sb25nCTEwNzEyMjE4NDIKKwkubG9uZwk2OTg5MTE0NTIKKwkubG9uZwkxMDIzMjY1NjAyCisJLmxvbmcJNjk0NDE1MzYKKwkubG9uZwkxMDcxMjM5NjQxCisJLmxvbmcJMzI1MzQ2Nzg0NworCS5sb25nCTEwMjA3OTUwNzUKKwkubG9uZwkxNjc2MjA5OTIwCisJLmxvbmcJMTA3MTI1NzQ3MQorCS5sb25nCTQyNzI0MzExNjcKKwkubG9uZwkxMDIyODczOTgyCisJLmxvbmcJMjQwODc1MjM4NAorCS5sb25nCTEwNzEyNzUzMzQKKwkubG9uZwk2NDg1MTkxMDAKKwkubG9uZwkxMDI0Mzg1NzE3CisJLmxvbmcJMTUxNjIzNjgwCisJLmxvbmcJMTA3MTI5MzIzMQorCS5sb25nCTM0NTI1NzAxNworCS5sb25nCTEwMTk1NjE0MDgKKwkubG9uZwkxNDEwMTU0MjQwCisJLmxvbmcJMTA3MTMxMTE2MQorCS5sb25nCTE5Nzg2Mzk5MworCS5sb25nCTEwMjMyMjQyMDcKKwkubG9uZwk0MTMxMzUxNTUyCisJLmxvbmcJMTA3MTMyOTEyNQorCS5sb25nCTI2MjA4MDE3ODkKKwkubG9uZwkxMDI0NDExMTY5CisJLmxvbmcJMTk5OTY2NDM4NAorCS5sb25nCTEwNzEzNDcxMjUKKwkubG9uZwkzOTUyNjkyNjE2CisJLmxvbmcJMTAyNDE2ODA4NgorCS5sb25nCTE2MTc2Njg4NjQKKwkubG9uZwkxMDcxMzY1MTYwCisJLmxvbmcJMzAxOTg4OTgwOQorCS5sb25nCTEwMjE5MDc2OTIKKwkubG9uZwkxMDMyMDc0MjQwCisJLmxvbmcJMTA3MTM4MzIzMQorCS5sb25nCTU5NDY5ODk5CisJLmxvbmcJMTAyMzY1NjE5NAorCS5sb25nCTI2MTk0OTIwOTYKKwkubG9uZwkxMDcxNDAxMzM4CisJLmxvbmcJMTQxNzUyNjgyMAorCS5sb25nCTEwMjE0NTc3ODMKKwkubG9uZwkyMDI0Mjk0NDAKKwkubG9uZwkxMDcxNDE5NDgzCisJLmxvbmcJMjkyNzY2NzkzNQorCS5sb25nCTEwMTkxNzU0NDcKKwkubG9uZwk1MjUwNDQyMjQKKwkubG9uZwkxMDcxNDM3NjY1CisJLmxvbmcJMzgxNjY4MTEKKwkubG9uZwkxMDIzOTgxODc5CisJLmxvbmcJMTc3OTI1ODg4MAorCS5sb25nCTEwNzE0NTU4ODUKKwkubG9uZwk0ODEyNTI1MDAKKwkubG9uZwkxMDIzMzEwMjM0CisJLmxvbmcJMjE5NTY3MzYwMAorCS5sb25nCTEwNzE0NzQxNDQKKwkubG9uZwkzOTYyMzk1OTgxCisJLmxvbmcJMTAyMTMzOTA4OAorCS5sb25nCTQ0NTczNjk2CisJLmxvbmcJMTA3MTQ5MjQ0MworCS5sb25nCTM5MzYyODEzOTUKKwkubG9uZwkxMDIzMDE0ODI5CisJLmxvbmcJMjIyNjkwNTM0NAorCS5sb25nCTEwNzE1MTA3ODEKKwkubG9uZwkxNTE1MzIwNDc2CisJLmxvbmcJMTAyNDMyMDYyMworCS5sb25nCTI4MDA1MTI1MTIKKwkubG9uZwkxMDcxNTI5MTYwCisJLmxvbmcJMTIyNTQwMzY5NworCS5sb25nCTEwMjEwODE4NDYKKwkubG9uZwkxNjExMTM2MDAKKwkubG9uZwkxMDcxNTQ3NTgxCisJLmxvbmcJMzA2NDgwOTczMworCS5sb25nCTEwMjQxNzM5MTcKKwkubG9uZwkxMzM4NDEwMjQwCisJLmxvbmcJMTA3MTU2NjA0MworCS5sb25nCTIwMjc2MDQ5NzMKKwkubG9uZwkxMDI0MzYyNTI2CisJLmxvbmcJNTIyNDMzMjgwCisJLmxvbmcJMTA3MTU4NDU0OAorCS5sb25nCTIwNTUxNzE3MjMKKwkubG9uZwkxMDIzODU4ODI1CisJLmxvbmcJNTM5NTk1Nzc2CisJLmxvbmcJMTA3MTYwMzA5NgorCS5sb25nCTM4Njg4MjAxMzUKKwkubG9uZwkxMDIyOTM2NDI0CisJLmxvbmcJNDI2NDAxNzY2NAorCS5sb25nCTEwNzE2MjE2ODcKKwkubG9uZwkzMjI4MDY1MTQ1CisJLmxvbmcJMTAyMzQ3OTU3OAorCS5sb25nCTE3MzM5MjQwOTYKKwkubG9uZwkxMDcxNjQwMzI0CisJLmxvbmcJMzUxMTkzNDQ3NQorCS5sb25nCTEwMjI0OTYzNTUKKwkubG9uZwkxMDg4ODAzODQKKwkubG9uZwkxMDcxNjUxODM5CisJLmxvbmcJNjE1ODgwOTY3CisJLmxvbmcJMTAyMzUxOTcwNgorCS5sb25nCTM1MTc4NTY1MTIKKwkubG9uZwkxMDcxNjYxMjAyCisJLmxvbmcJMzExMzEwODU1OQorCS5sb25nCTEwMjUxOTAyODkKKwkubG9uZwk0MDQzMTUzMTUyCisJLmxvbmcJMTA3MTY3MDU4OQorCS5sb25nCTE1NzE4MzYyMTgKKwkubG9uZwkxMDIzMTA2MTE2CisJLmxvbmcJMzI1MTI5OTA3MgorCS5sb25nCTEwNzE2ODAwMDAKKwkubG9uZwkzNDQ0MDc2MTAyCisJLmxvbmcJMTAyMjE4Nzg0MQorCS5sb25nCTI3MzY5MjE2MDAKKwkubG9uZwkxMDcxNjg5NDM1CisJLmxvbmcJMjcyNzcxNDgzCisJLmxvbmcJMTAyNTA5NTI4MAorCS5sb25nCTM4OTc2OTg1NjAKKwkubG9uZwkxMDcxNzAzNjMzCisJLmxvbmcJMjA3NTM5MDE4OAorCS5sb25nCTEwMjI0ODkwMjIKKwkubG9uZwkzMjA5NDg1MDU2CisJLmxvbmcJMTA3MTcyMjY1MgorCS5sb25nCTE0MzgwOTQwNjUKKwkubG9uZwkxMDIxODQ0OTQ0CisJLmxvbmcJMzc4MTQzMjA2NAorCS5sb25nCTEwNzE3NDE3NzQKKwkubG9uZwkxNjc1MDE3MTQ1CisJLmxvbmcJMTAyNDE0MzgyOAorCS5sb25nCTI2ODQxODQwNjQKKwkubG9uZwkxMDcxNzYxMDAzCisJLmxvbmcJMjI1OTk2Mzc1MworCS5sb25nCTEwMjQ3MzEzOTMKKwkubG9uZwkxODQwNDg5NzI4CisJLmxvbmcJMTA3MTc4MDM0MgorCS5sb25nCTMzNzI4ODM1OTcKKwkubG9uZwkxMDIzNDMxNDA4CisJLmxvbmcJMzc2NDA4NzgwOAorCS5sb25nCTEwNzE3OTk3OTQKKwkubG9uZwkzMzA3NTIzMTAyCisJLmxvbmcJMTAyNDQ4NTc4OAorCS5sb25nCTMwMDYyMzIzMjAKKwkubG9uZwkxMDcxODE5MzY0CisJLmxvbmcJMzA4ODk3MTk2NgorCS5sb25nCTEwMjUyMTMyNTEKKwkubG9uZwkzMzc0ODgxMjgwCisJLmxvbmcJMTA3MTgzOTA1NQorCS5sb25nCTgzNDQzNzc0OQorCS5sb25nCTEwMjUyMzY0NTIKKwkubG9uZwk3OTcyODQ4NjQKKwkubG9uZwkxMDcxODU4ODcyCisJLmxvbmcJMzEyMjY2Mzk0MQorCS5sb25nCTEwMjUzMjA0NzMKKwkubG9uZwk1NDU3NjUxMjAKKwkubG9uZwkxMDcxODc4ODE4CisJLmxvbmcJODI2NTM5NjI1CisJLmxvbmcJMTAyMjQ1MDk1NQorCS5sb25nCTEwNzU2MjI0MAorCS5sb25nCTEwNzE4OTg4OTgKKwkubG9uZwkzMzk1ODQ2MDAKKwkubG9uZwkxMDIyNDgxMjU1CisJLmxvbmcJMjEyMzY0OTAyNAorCS5sb25nCTEwNzE5MTkxMTYKKwkubG9uZwkzOTEyOTU5ODMzCisJLmxvbmcJMTAyNDMyMTAwOQorCS5sb25nCTE1NjIzODU2NjQKKwkubG9uZwkxMDcxOTM5NDc4CisJLmxvbmcJMjg0NjA2NzIzMAorCS5sb25nCTEwMjMzNDM5ODEKKwkubG9uZwkyOTYzMDg1ODI0CisJLmxvbmcJMTA3MTk1OTk4OAorCS5sb25nCTk1NDU0ODYyNworCS5sb25nCTEwMjE0NzUyMTEKKwkubG9uZwkzMzI1NTUwNTkyCisJLmxvbmcJMTA3MTk4MDY1MgorCS5sb25nCTM0NTk2NTExNTUKKwkubG9uZwkxMDI1MzA1NTczCisJLmxvbmcJNzc1NzUyNDQ4CisJLmxvbmcJMTA3MjAwMTQ3NgorCS5sb25nCTM1ODI3NDY2NjcKKwkubG9uZwkxMDIzODU5NDYwCisJLmxvbmcJMzIzODU5MDcyMAorCS5sb25nCTEwNzIwMjI0NjQKKwkubG9uZwk2MzQ2MzYxNjIKKwkubG9uZwkxMDI0NDcyMzUzCisJLmxvbmcJMjc1ODgwMTkyMAorCS5sb25nCTEwNzIwNDM2MjQKKwkubG9uZwkzMDc4MjE2MzE5CisJLmxvbmcJMTAyNTMwNDUxNgorCS5sb25nCTEzNzAzMTkxMDQKKwkubG9uZwkxMDcyMDY0OTYyCisJLmxvbmcJMjU3MDU2OTA3OAorCS5sb25nCTEwMjUwOTk0NDIKKwkubG9uZwkyNjE1ODA1MTg0CisJLmxvbmcJMTA3MjA4NjQ4NAorCS5sb25nCTM3Mjk5MzM0MTIKKwkubG9uZwkxMDI0NjA1MTEyCisJLmxvbmcJMzA3NzMzNjU3NgorCS5sb25nCTEwNzIxMDgxOTgKKwkubG9uZwkxOTQ4OTE2MDY2CisJLmxvbmcJMTAyNDc4MTYwMworCS5sb25nCTEwOTk1MjgxOTIKKwkubG9uZwkxMDcyMTMwMTEyCisJLmxvbmcJMzEzOTE0MzE1NworCS5sb25nCTEwMjM3MjkzNjAKKwkubG9uZwkxMjMxOTAzMjMyCisJLmxvbmcJMTA3MjE1MjIzMworCS5sb25nCTEzNDk1MTM0NzcKKwkubG9uZwkxMDI0NzM3NTE1CisJLmxvbmcJMTUwNzUwNDEyOAorCS5sb25nCTEwNzIxNzQ1NzAKKwkubG9uZwkzNDg0NTE2MzIyCisJLmxvbmcJMTAyNDAwMDk1OQorCS5sb25nCTIyMTQ2NTk4NDAKKwkubG9uZwkxMDcyMTk3MTMyCisJLmxvbmcJMjU2MzgyMDkxNworCS5sb25nCTEwMjUyMjU1MzUKKwkubG9uZwkxODA0NzM5ODQwCisJLmxvbmcJMTA3MjIxOTkyOQorCS5sb25nCTc2MDAzODc0NgorCS5sb25nCTEwMjQ0ODI4NTUKKwkubG9uZwkxNDEzNzQ2Njg4CisJLmxvbmcJMTA3MjI0Mjk3MQorCS5sb25nCTM0MDE3MzQ3MTQKKwkubG9uZwkxMDI1MTI5ODM4CisJLmxvbmcJODIxNDA5NTM2CisJLmxvbmcJMTA3MjI2NjI2OQorCS5sb25nCTM3Mjk3NzI1NTEKKwkubG9uZwkxMDI1NDg0Nzk2CisJLmxvbmcJMzAzMTgyNTY2NAorCS5sb25nCTEwNzIyODk4MzQKKwkubG9uZwkxMjIyNTY3NDkKKwkubG9uZwkxMDI0NzUyNTk0CisJLmxvbmcJMTcxMDc4NDI1NgorCS5sb25nCTEwNzIzMTM2ODAKKwkubG9uZwkxNTE4MjA1NDgzCisJLmxvbmcJMTAyNDcyNDgwOQorCS5sb25nCTMwMjUyNjUxNTIKKwkubG9uZwkxMDcyMzM3ODE5CisJLmxvbmcJNDA5OTUxOTg5CisJLmxvbmcJMTAyMjgzNTU1NQorCS5sb25nCTI4Nzc2OTA4OAorCS5sb25nCTEwNzIzNjIyNjcKKwkubG9uZwk4MDAzNTU1OTQKKwkubG9uZwkxMDIyNDg0ODUwCisJLmxvbmcJMTk4MTc5ODQwCisJLmxvbmcJMTA3MjM4NzAzOAorCS5sb25nCTM1MDI5MjYyMTMKKwkubG9uZwkxMDI0MjA5MzczCisJLmxvbmcJMTkwOTEzMDQ5NgorCS5sb25nCTEwNzI0MTIxNDkKKwkubG9uZwkzMDY0Njk0MzE5CisJLmxvbmcJMTAyNTM4MDgyMworCS5sb25nCTE5NDE3MzIwOTYKKwkubG9uZwkxMDcyNDM3NjE5CisJLmxvbmcJNDExMjkzMDM5MAorCS5sb25nCTEwMjQyOTQ2NzkKKwkubG9uZwkzNDkyMDEwNDk2CisJLmxvbmcJMTA3MjQ2MzQ2NworCS5sb25nCTI2ODQ5MTgxMDcKKwkubG9uZwkxMDIzMjIwMjMzCisJLmxvbmcJODE5NTk2ODAKKwkubG9uZwkxMDcyNDg5NzE2CisJLmxvbmcJMjIwMDIxMzY2CisJLmxvbmcJMTAyMDYzNTEzMQorCS5sb25nCTIyOTc4MzcwNTYKKwkubG9uZwkxMDcyNTE2Mzg3CisJLmxvbmcJNDAyNzY4MzgyNgorCS5sb25nCTEwMjEwNDExODUKKwkubG9uZwkyNzA0MDQwOTYKKwkubG9uZwkxMDcyNTQzNTA4CisJLmxvbmcJMjAxMjc2NjA2NQorCS5sb25nCTEwMjE3ODA3NTMKKwkubG9uZwkzNjY3Mzc2ODk2CisJLmxvbmcJMTA3MjU3MTEwNQorCS5sb25nCTI3Mjc5ODE1MjIKKwkubG9uZwkxMDIzMDA5ODc0CisJLmxvbmcJMzMwNDAwMjU2CisJLmxvbmcJMTA3MjU5OTIxMgorCS5sb25nCTI5NDAwMTcwMDMKKwkubG9uZwkxMDI1MzkzNDM5CisJLmxvbmcJMTExOTI5Mzk1MgorCS5sb25nCTEwNzI2Mjc4NjEKKwkubG9uZwkxNjA4NTUwNDE2CisJLmxvbmcJMTAyMjY3NTYxMgorCS5sb25nCTM1MzYxNTU5MDQKKwkubG9uZwkxMDcyNjU3MDkxCisJLmxvbmcJMzQ5NjY1Nzc4CisJLmxvbmcJMTAyNTE1Njc1MQorCS5sb25nCTMwNzgwNDY3MjAKKwkubG9uZwkxMDcyNjg2OTQ2CisJLmxvbmcJMjAxNjE1OTk5NgorCS5sb25nCTEwMjIxOTMxNjkKKwkubG9uZwk0NTUyMjg0MTYKKwkubG9uZwkxMDcyNzA1MzYxCisJLmxvbmcJMTkwODUzOTMyOAorCS5sb25nCTEwMjYxMjYzMzIKKwkubG9uZwkxODcxNTA1NjY0CisJLmxvbmcJMTA3MjcyMDk4OAorCS5sb25nCTI3ODQ3MDA4OTQKKwkubG9uZwkxMDI1OTIyMjc3CisJLmxvbmcJMTYzMDk5NDQzMgorCS5sb25nCTEwNzI3MzcwMTAKKwkubG9uZwkzNjExMDc2NzgKKwkubG9uZwkxMDIyODg3MjQ0CisJLmxvbmcJMjA4NDU1ODMzNgorCS5sb25nCTEwNzI3NTM0NjIKKwkudHlwZQlUYmxfYWRkcixAb2JqZWN0CisJLnNpemUJVGJsX2FkZHIsMzg0MAorCS5zcGFjZSA3NjgsIDB4MDAgCSMgcGFkCisJLmFsaWduIDE2CitTSUdOTUFTSzoKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLnR5cGUJU0lHTk1BU0ssQG9iamVjdAorCS5zaXplCVNJR05NQVNLLDE2CisJLmFsaWduIDE2CitIQUxGTUFTSzI6CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM1ODQKKwkubG9uZwkwCisJLmxvbmcJMAorCS50eXBlCUhBTEZNQVNLMixAb2JqZWN0CisJLnNpemUJSEFMRk1BU0syLDE2CisJLmFsaWduIDE2CitQSV9CWV8yOgorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTYxNzgyMTQKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3MzI5MTc3MQorCS50eXBlCVBJX0JZXzIsQG9iamVjdAorCS5zaXplCVBJX0JZXzIsMTYKKwkuYWxpZ24gMTYKK2N2MjoKKwkubG9uZwk3ODA5MDMxNDUKKwkubG9uZwkxMDY2ODU0NTg2CisJLmxvbmcJODU4OTkzNDU5CisJLmxvbmcJMTA2ODcwODY1OQorCS5sb25nCTMzNDA1MzAxMTkKKwkubG9uZwkxMDY3MzkyMTEzCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjk4OTcwNDUKKwkubG9uZwkxMzIxNTI4Mzk5CisJLmxvbmcJMTA2NjUxNzc0MAorCS5sb25nCTMwNjc4MzM3ODMKKwkubG9uZwkxMDY3ODk5NzU3CisJLmxvbmcJMjAyMTE1OTQ2MAorCS5sb25nCTEwNjU4NTUwOTYKKwkubG9uZwkyNTc2OTgwMzc4CisJLmxvbmcJMTA2NjE3ODk2OQorCS50eXBlCWN2MixAb2JqZWN0CisJLnNpemUJY3YyLDY0CisJLmFsaWduIDE2CitIQUxGTUFTSzoKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQxNjA3NDk1NjgKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLnR5cGUJSEFMRk1BU0ssQG9iamVjdAorCS5zaXplCUhBTEZNQVNLLDE2CisJLmFsaWduIDQKK09ORU1BU0s6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkudHlwZQlPTkVNQVNLLEBvYmplY3QKKwkuc2l6ZQlPTkVNQVNLLDgKKwkuYWxpZ24gNAorVE1BU0s6CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NTA5MTIKKwkudHlwZQlUTUFTSyxAb2JqZWN0CisJLnNpemUJVE1BU0ssOAorCS5hbGlnbiA0CitjdjoKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA2OTg5NzA0NQorCS5sb25nCTg1ODk5MzQ1OQorCS5sb25nCTEwNjg3MDg2NTkKKwkubG9uZwkzMDY3ODMzNzgzCisJLmxvbmcJMTA2Nzg5OTc1NworCS50eXBlCWN2LEBvYmplY3QKKwkuc2l6ZQljdiwyNAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorLy8gLS0gQmVnaW4gRFdBUkYyIFNFR01FTlQgLmVoX2ZyYW1lCisJLnNlY3Rpb24gLmVoX2ZyYW1lLCJhIixAcHJvZ2JpdHMKKy5laF9mcmFtZV9zZWc6CisJLmFsaWduIDEKKwkuNGJ5dGUgMHgwMDAwMDAxNAorCS44Ynl0ZSAweDAwNTI3YTAxMDAwMDAwMDAKKwkuOGJ5dGUgMHgwODA3MGMxYjAxMTA3ODAxCisJLjRieXRlIDB4MDAwMDAxOTAKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2FzaW4uMS0uCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2FzaW4uNS0uLl9fX3RhZ192YWx1ZV9hc2luLjEKKwkuMmJ5dGUgMHgwNDAwCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2FzaW4uMy0uLl9fX3RhZ192YWx1ZV9hc2luLjEKKwkuMmJ5dGUgMHgyMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hc2luLjQtLi5fX190YWdfdmFsdWVfYXNpbi4zCisJLjJieXRlIDB4MDgwZQorCS5ieXRlIDB4MDAKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9lX2F0YW4yLlMgYi9saWJtL3g4Nl82NC9lX2F0YW4yLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjliYWVhOQotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L2VfYXRhbjIuUwpAQCAtMCwwICsxLDEyNDIgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLworLy8xLiBUaGUgbWV0aG9kIGlzIGJhc2VkIG9uIHRoZSByZWxhdGlvbnNoaXAgb2YgYXRhbjIoWSxYKSB0byBhdGFuKHxZL1h8KQorLy8gICBhcyBmb2xsb3dzLgorLy8gICAgICAgICAgICAgICAgICAgLyAgc2lnbihZKSBhdGFuKHxZL1h8KSAgICAgICAgICAgICAgICBpZiBYID4gMAorLy8gICAgICAgYXRhbjIoWSxYKSA9CisvLyAgICAgICAgICAgICAgICAgICBcICBzaWduKFkpKnBpICAtIHNpZ24oWSkqYXRhbih8WS9YfCkgIGlmIFggPCAwCisvLworLy8gICBUaHVzLCBhdGFuMihZLFgpIGlzIG9mIHRoZSBmb3JtICBhdGFuMihZLFgpID0gUEkgKyBzZ24qYXRhbih8WS9YfCkKKy8vICAgd2hlcmUgUEkgYW5kIHNnbiBjYW4gYmUgZGV0ZXJtaW5lZCBieSB0aGUgZm91ciBwb3NzaWJsZSBjb21iaW5hdGlvbnMgb2YKKy8vICAgb2YgdGhlIHBhaXIgKHNpZ24oWCksc2lnbihZKSkuIFdlIGNvbmNlbnRyYXRlIG9uIHRoZSBudW1lcmljYWwgbWV0aG9kCisvLyAgIGZvciBhdGFuKHxZL1h8KS4KKy8vCisvLzIuIEZvciB8WS9YfCA8IDJeKC02NCksIGF0YW4ofFkvWHwpIH49fiB8WS9YfC4gSGVuY2UsIGF0YW4yKFksWCkgaXMgIFkvWAorLy8gICBpZiBYID4gMCwgYW5kIHNpZ24oWSkqcGkgb3RoZXJ3aXNlLgorLy8zLiBGb3IgfFkvWHwgPj0gMl4oNjUpLCBhdGFuKHxZL1h8KSB+PX4gcGkvMi4gSGVuY2UgYXRhbjIoWSxYKSBpcyBzaWduKFkpcGkvMi4KKy8vNC4gRm9yIDJeKC02NCkgPD0gfFkvWHwgPCAyXigtNSksIGF0YW4ofFkvWHwpIGlzIGFwcHJveGltYXRlZCBieSBhIHBvbHlub21pYWwKKy8vICAgb2YgdGhlIGZvcm0gIFogKyBaKkUqcG9seW5vbWlhbChFKSwgd2hlcmUgWiA9IHxZL1h8IGFuZCBFID0gWipaLgorLy81LiBGb3IgfFkvWHwgPiAyXig1KSwgYXRhbih8WS9YfCkgPSBwaS8yICsgYXRhbigtfFgvWXwpLCBhbmQgYXRhbigtfFgvWXwpIGlzCisvLyAgIGNhbGN1bGF0ZWQgdXNpbmcgdGhlIHBvbHlub21pYWwgaW4gNCBhYm92ZS4KKy8vNi4gRm9yIDJeKC01KSA8PSB8WS9YfCA8PSAyXig1KSwgd2UgZW1wbG95IGEgdGFibGUgbG9va3VwIG1ldGhvZC4gRmlyc3QsCisvLyAgIHdlIG9idGFpbiBCID0gMl5rICogMS5iMSBiMiBiMyBiNCA9IDJeayAqICgxK2svMTYpIHRoYXQgYXBwcm94aW1hdGUKKy8vICAgfFkvWHwgdG8gYXBwcm94aW1hdGVseSA1IHNpZ25pZmljYW50IGJpdHMuIEhlbmNlLCBhdGFuKHxZL1h8KSBpcworLy8KKy8vICAgICAgYXRhbih8WS9YfCkgID0gIGF0YW4oQikgKyBhdGFuKFopLCB3aGVyZSAgWiA9ICh8WXwtQnxYfCkvKHxYfCtCfFl8KS4KKy8vICAgICAgICAgICAgICAgICAgfj1+ICAgdGF1ICAgKyBaICsgWipFKnBvbHlub21pYWwoRSksIHdoZXJlIEUgPSBaKlouCisvLworLy8gICBCIGhhcyB0aGUgcmFuZ2UgZnJvbSAyXigtNikqKDErMTQvMTYpIHRvIDJeNSA9IDJeKDUpKigxKzAvMTYpLCB0b3RhbGx5CisvLyAgIDE2MyBwb3NzaWJsZSB2YWx1ZXMuIFRoZXNlIHZhbHVlcyBhcmUgY2FsY3VsYXRlZCBiZWZvcmVoYW5kIGFuZCBzdG9yZWQKKy8vICAgaW4gYSB0YWJsZS4gVGhlIHBvbHlub21pYWwgaXMgdGhlIG9uZSB1c2VkIGluIDQuCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBhdGFuMigrLTAsICswKSA9ICstMAorLy8gIGF0YW4yKCstMCwgLTApID0gKy1waQorLy8gIGF0YW4yKCstMCwgeCkgPSArLTAsIGZvciB4ID4gMCwgYW5kICstcGksIGZvciB4IDwgMAorLy8gIGF0YW4yKHksICstMCkgPSArcGkvMiBmb3IgeSA+IDAsIGFuZCAtcGkvMiBmb3IgeSA8IDAKKy8vICBhdGFuMigrLXksICtJTkYpID0gKy0wLCBmb3IgZmluaXRlIHkgPiAwCisvLyAgYXRhbjIoKy15LCAtSU5GKSA9ICstcGksIGZvciBmaW5pdGUgeSA+IDAKKy8vICBhdGFuMigrLUlORiwgeCkgPSArLXBpLzIsIGZvciBmaW5pdGUgeAorLy8gIGF0YW4yKCstSU5GLCArSU5GKSA9ICstcGkvNAorLy8gIGF0YW4yKCstSU5GLCAtSU5GKSA9ICstMypwaS80CisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgYXRhbjIKK0VOVFJZKGF0YW4yKQorIyBwYXJhbWV0ZXIgMTogJXhtbTAKKyMgcGFyYW1ldGVyIDI6ICV4bW0xCisuLkIxLjE6CisuLl9fX3RhZ192YWx1ZV9hdGFuMi4xOgorICAgICAgICBzdWJxICAgICAgJDI0LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9hdGFuMi4zOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglcnNwKQorICAgICAgICBtb3ZzZCAgICAgJXhtbTEsIDgoJXJzcCkKKy4uQjEuMjoKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTQ0NDgsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzODQwLCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxNDQ0OCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDM4NDAsICVlYXgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgdW5wY2tscGQgICV4bW0xLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQyMDQ4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTUKKyAgICAgICAgcGFkZHcgICAgICV4bW0xLCAleG1tNQorICAgICAgICBwc3JscSAgICAgJDI5LCAleG1tNQorICAgICAgICByY3BzcyAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgbW92bCAgICAgICQxNDMzNiwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW00CisgICAgICAgIHBzbGxxICAgICAkMjksICV4bW0zCisgICAgICAgIHBhZGR3ICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgeG9ycGQgICAgICV4bW03LCAleG1tNworICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMiwgJWVheCwgJXhtbTYKKyAgICAgICAgbW92bCAgICAgICQzMjc2NywgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW03CisgICAgICAgIHBhZGRkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgYW5kcGQgICAgICV4bW03LCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTMsICV4bW01CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTMsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQxNjQ0OCwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW0yCisgICAgICAgIG1pbnNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgbW92bXNrcGQgICV4bW0wLCAlZWR4CisgICAgICAgIHBzbGxxICAgICAkMSwgJXhtbTAKKyAgICAgICAgcHNybHEgICAgICQxLCAleG1tMAorICAgICAgICBjbXBzZCAgICAgJDIsICV4bW0yLCAleG1tNQorICAgICAgICBwc2xscSAgICAgJDEsICV4bW0xCisgICAgICAgIHBzcmxxICAgICAkMSwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tNgorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQwLCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMCwgJWVjeCwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIGFuZHBkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTYyODYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQxMTIxLCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBkaXZzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTMsICVlY3gKKyAgICAgICAgbW92c2QgICAgIGEyKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgYjIoJXJpcCksICV4bW0zCisgICAgICAgIHBleHRydyAgICAkMCwgJXhtbTUsICVlYXgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgbGVhICAgICAgIFBfVEJMKCVyaXApLCAlcjgKKyAgICAgICAgbW92YXBkICAgICglcjgsJXJkeCw4KSwgJXhtbTYKKyAgICAgICAgbGVhICAgICAgIFNHTl9UQkwoJXJpcCksICVyOAorICAgICAgICBtb3ZhcGQgICAgKCVyOCwlcmR4LDgpLCAleG1tMQorICAgICAgICBzdWJsICAgICAgJDE2Mjg2LCAlZWN4CisgICAgICAgIG5vdGwgICAgICAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMSwgJWVheAorICAgICAgICBhZGRsICAgICAgJWVheCwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVjeAorICAgICAgICBsZWEgICAgICAgQVRBTl9UQkwoJXJpcCksICVyOAorICAgICAgICBtb3ZhcGQgICAgKCVyOCwlcmN4LDgpLCAleG1tNQorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIGFkZHBkICAgICAleG1tNiwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgICV4bW01LCAleG1tNgorICAgICAgICB1bnBja2hwZCAgJXhtbTUsICV4bW01CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgOCthMiglcmlwKSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgOCtiMiglcmlwKSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIGFkZGwgICAgICAkOTQyLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkOTQyLCAlZWF4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlY3gKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWN4LCAleG1tNAorICAgICAgICBkaXZzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIGxlYSAgICAgICBTR05fVEJMKCVyaXApLCAlcjgKKyAgICAgICAgbW92YXBkICAgICglcjgsJXJkeCw4KSwgJXhtbTYKKyAgICAgICAgdW5wY2tscGQgICV4bW0zLCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTIKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tMworICAgICAgICBsZWEgICAgICAgUF9UQkwyKCVyaXApLCAlcjgKKyAgICAgICAgbW92YXBkICAgICglcjgsJXJkeCw4KSwgJXhtbTcKKyAgICAgICAgbW92c2QgICAgIGEyKCVyaXApLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgYjIoJXJpcCksICV4bW01CisgICAgICAgIGxlYSAgICAgICBTRUxFQ1RfQiglcmlwKSwgJXI4CisgICAgICAgIGFuZHBkICAgICAoJXI4LCVyZHgsOCksICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgIDgrYTIoJXJpcCksICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgIDgrYjIoJXJpcCksICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTcsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIG1vdnNkICAgICA4KCVyc3ApLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgKCVyc3ApLCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGpnICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMzI3NjcsICVlY3gKKyAgICAgICAgamcgICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIGRpdnNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIGFuZHBkICAgICBTR05NQVNLKCVyaXApLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgcGlfdGFibGUoJXJpcCksICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIGFuZHBkICAgICBTR05NQVNLKCVyaXApLCAleG1tMAorICAgICAgICBtb3ZzZCAgICAgcGkyX3RhYmxlKCVyaXApLCAleG1tMgorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjIKKyAgICAgICAgbW92c2QgICAgIFBPVzU1KCVyaXApLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJDEwMjQsICVlZHgKKyAgICAgICAgbW92c2QgICAgIElOVkVYUE1BU0soJXJpcCksICV4bW00CisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgbW92c2QgICAgIEVYUE1BU0soJXJpcCksICV4bW03CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjIKKy5MXzJUQUdfUEFDS0VUXzEwLjAuMjoKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMS4wLjIKKy5MXzJUQUdfUEFDS0VUXzEyLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgc3VibCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQyMDQ4LCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBhZGRsICAgICAgJDE1MzQ0LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTYKKyAgICAgICAgYW5kcGQgICAgICV4bW00LCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIG9ycGQgICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgb3JwZCAgICAgICV4bW03LCAleG1tMQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzkuMC4yOgorICAgICAgICBzdWJsICAgICAgJDg4MCwgJWVkeAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEzLjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMS4wLjI6CisgICAgICAgIGFkZGwgICAgICAkODgwLCAlZWR4CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTQuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMgorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQxMDQ4NTc1LCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVjeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTUuMC4yCisgICAgICAgIHBzcmxxICAgICAkNjMsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkNjMsICV4bW0wCisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzE2LjAuMgorICAgICAgICBtb3ZhcGQgICAgcGkyX3RhYmxlKCVyaXApLCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgb3JwZCAgICAgICV4bW01LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xNS4wLjI6CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMTYuMC4yOgorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMgorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgbW92bCAgICAgICQtMjE0NzQ4MzY0OCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDEwNDg1NzUsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlYXgsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNy4wLjIKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKyAgICAgICAgbW92YXBkICAgIHBpNF90YWJsZSglcmlwKSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIG9ycGQgICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMTcuMC4yOgorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMTguMC4yOgorICAgICAgICBtb3ZhcGQgICAgcGk0X3RhYmxlKCVyaXApLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgcGkyX3RhYmxlKCVyaXApLCAleG1tNgorICAgICAgICBhZGRwZCAgICAgJXhtbTYsICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tNQorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzguMC4yOgorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMgorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlY3gKKyAgICAgICAgbW92bCAgICAgICQtMjE0NzQ4MzY0OCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDEwNDg1NzUsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlYXgsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNy4wLjIKKyAgICAgICAgcHNybHEgICAgICQ2MywgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQ2MywgJXhtbTAKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOS4wLjIKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMTkuMC4yOgorICAgICAgICBtb3ZhcGQgICAgcGlfdGFibGUoJXJpcCksICV4bW01CisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNQorICAgICAgICBvcnBkICAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzEzLjAuMjoKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDMyNzY4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjAuMC4yCisgICAgICAgIG1vdmFwZCAgICBwaV90YWJsZSglcmlwKSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIGNvbWlzZCAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgb3JwZCAgICAgICV4bW01LCAleG1tMAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjEuMC4yCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzIwLjAuMjoKKyAgICAgICAgY29taXNkICAgICV4bW0wLCAleG1tMQorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjEuMC4yCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzE0LjAuMjoKKyAgICAgICAgbW92YXBkICAgIHBpMl90YWJsZSglcmlwKSwgJXhtbTUKKyAgICAgICAgcHNybHEgICAgICQ2MywgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQ2MywgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIG9ycGQgICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMjEuMC4yOgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsIDE2KCVyc3ApCisuLkIxLjM6CisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzIyLjAuMjoKKy4uQjEuNToKKyAgICAgICAgYWRkcSAgICAgICQyNCwgJXJzcAorLi5fX190YWdfdmFsdWVfYXRhbjIuNDoKKyAgICAgICAgcmV0ICAgICAgIAorLi5fX190YWdfdmFsdWVfYXRhbjIuNToKK0VORChhdGFuMikKKyMgLS0gRW5kICBhdGFuMgorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorYTI6CisJLmxvbmcJMjAwNjI2Mjk4NQorCS5sb25nCTEwNjkzMTA4NjMKKwkubG9uZwkyMzU4NDQ5NDcxCisJLmxvbmcJMzIxNzM0MjEzMQorCS50eXBlCWEyLEBvYmplY3QKKwkuc2l6ZQlhMiwxNgorCS5hbGlnbiAxNgorYjI6CisJLmxvbmcJMzg0NTQ1NDM1MgorCS5sb25nCTEwNjk5NTIyOTcKKwkubG9uZwkyODI5Njc5MTQ5CisJLmxvbmcJMTA3Mzc3MTU2NQorCS50eXBlCWIyLEBvYmplY3QKKwkuc2l6ZQliMiwxNgorCS5hbGlnbiAxNgorUF9UQkw6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3NDM0MDM0NworCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTcyMjY3OTAKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMzIyMTgyMzk5NQorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTMxNjQ3MTA0MzgKKwkudHlwZQlQX1RCTCxAb2JqZWN0CisJLnNpemUJUF9UQkwsNjQKKwkuYWxpZ24gMTYKK1NHTl9UQkw6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS50eXBlCVNHTl9UQkwsQG9iamVjdAorCS5zaXplCVNHTl9UQkwsNjQKKwkuYWxpZ24gMTYKK0FUQU5fVEJMOgorCS5sb25nCTMzOTA4ODEyODAKKwkubG9uZwkxMDY3MzE4NzMzCisJLmxvbmcJMTQxMTExNjc3OQorCS5sb25nCTEwMTg5NTAwNjMKKwkubG9uZwkyOTg1OTg3ODQwCisJLmxvbmcJMTA2NzM4NDIxMQorCS5sb25nCTIwODg5MDM2OTUKKwkubG9uZwkxMDE4MDg2MDI3CisJLmxvbmcJMzE0ODQ0NTE4NAorCS5sb25nCTEwNjc0NDk2ODUKKwkubG9uZwkyMDQ0MTYzODA2CisJLmxvbmcJMTAxNzI3MTMzNQorCS5sb25nCTM2Njc2MjkxODQKKwkubG9uZwkxMDY3NTE1NDk0CisJLmxvbmcJMjM1MzA5Mjc3NQorCS5sb25nCTEwMTk5NjczMDkKKwkubG9uZwkxNTQ2NTY4ODMyCisJLmxvbmcJMTA2NzU4MDk1NAorCS5sb25nCTYxMTk5MTMxNQorCS5sb25nCTEwMTc2MDI1ODQKKwkubG9uZwkzODE1OTk2ODAwCisJLmxvbmcJMTA2NzY0NjQwNAorCS5sb25nCTQ2NjAzODU5OAorCS5sb25nCTEwMTk2ODY0MjYKKwkubG9uZwk0MDUwMjQxOTIwCisJLmxvbmcJMTA2NzcxMTg0NQorCS5sb25nCTMyNjUwMjYzMjgKKwkubG9uZwkxMDE5NjI2OTUyCisJLmxvbmcJMTIwNDU0OTEyCisJLmxvbmcJMTA2Nzc3NzI3NworCS5sb25nCTE1NDIyMDc2OTYKKwkubG9uZwkxMDIwMTU1NjA4CisJLmxvbmcJMjc4NDYzOTc0NAorCS5sb25nCTEwNjc4NDI2OTcKKwkubG9uZwkzODgzODM0NjIzCisJLmxvbmcJMTAxODYwMjg3MAorCS5sb25nCTEzMjgwMTA2MjQKKwkubG9uZwkxMDY3OTA4MTA3CisJLmxvbmcJMTc5MTA5NzQ1NgorCS5sb25nCTEwMTkwNTMxMjYKKwkubG9uZwkyMjE3Nzk0MDQ4CisJLmxvbmcJMTA2Nzk3MzUwNQorCS5sb25nCTU1MTYxOTkzOAorCS5sb25nCTEwMTg0OTQxOTQKKwkubG9uZwkzMzMzNTIwMDAwCisJLmxvbmcJMTA2ODAzODg5MQorCS5sb25nCTIzOTAzMzE4MjMKKwkubG9uZwkxMDE5MDMzMDIyCisJLmxvbmcJMjU1NzA1MjAzMgorCS5sb25nCTEwNjgxMDQyNjUKKwkubG9uZwkyNDIzOTc2MTA4CisJLmxvbmcJMTAxOTcyODY3NAorCS5sb25nCTIwNjc2NDk1MzYKKwkubG9uZwkxMDY4MTY5NjI2CisJLmxvbmcJMzc1NzM5Nzc0NQorCS5sb25nCTEwMTg2NzIzNjIKKwkubG9uZwk0MDQ3MDk0Nzg0CisJLmxvbmcJMTA2ODIzNDk3MworCS5sb25nCTQ4MTYxMzE4NAorCS5sb25nCTEwMTkyNzUxMDQKKwkubG9uZwkyMDg5ODUzMTg0CisJLmxvbmcJMTA2ODMwMDMwNworCS5sb25nCTE3MzM5MTQzNzQKKwkubG9uZwkxMDIwMTI0Njc3CisJLmxvbmcJMjY3ODAwMzg0MAorCS5sb25nCTEwNjgzNjU2MjYKKwkubG9uZwkxMzczNjAwMjgyCisJLmxvbmcJMTAxMzkzNTQ3NAorCS5sb25nCTM3MDY0OTYxMjgKKwkubG9uZwkxMDY4NDMwOTMwCisJLmxvbmcJMTAwMDYxMDkwMgorCS5sb25nCTEwMTk2NzMyODUKKwkubG9uZwkzMDczMTc5MDA4CisJLmxvbmcJMTA2ODQ5NjIxOQorCS5sb25nCTE0OTcxNDMwMDgKKwkubG9uZwkxMDE5OTAwMzQyCisJLmxvbmcJMjgwMzcxNjczNgorCS5sb25nCTEwNjg1NjI4NDYKKwkubG9uZwkxNDc2Njc3NDE2CisJLmxvbmcJMTAxOTQ0NDA5NAorCS5sb25nCTMyMDQ5ODQxMjgKKwkubG9uZwkxMDY4NjI4MDc3CisJLmxvbmcJMTE5MjMzNTkwNQorCS5sb25nCTEwMTg3NDg2MjgKKwkubG9uZwk4MzExNDY2MjQKKwkubG9uZwkxMDY4NjkzMjczCisJLmxvbmcJMjczMzU4NjIyNAorCS5sb25nCTEwMTg4MjMyOTUKKwkubG9uZwkyNDMwMjkzNzYKKwkubG9uZwkxMDY4NzU4NDMxCisJLmxvbmcJOTUwMTA2MDgxCisJLmxvbmcJMTAxOTA0NjY3NQorCS5sb25nCTE3MzU1NjE5MjAKKwkubG9uZwkxMDY4ODIzNTQ5CisJLmxvbmcJMzU0NjQ0MDg1NgorCS5sb25nCTEwMjAxMDQ3MTIKKwkubG9uZwkxMzM5MjE3NzkyCisJLmxvbmcJMTA2ODg4ODYyNgorCS5sb25nCTMwMjg4MTIzODcKKwkubG9uZwkxMDE5ODE4MzIxCisJLmxvbmcJMzcwNjM0MjE0NAorCS5sb25nCTEwNjg5NTM2NTkKKwkubG9uZwkzODE0NTY0MDI5CisJLmxvbmcJMTAxNzc2Mzg3MQorCS5sb25nCTYzNzcyNjk3NgorCS5sb25nCTEwNjkwMTg2NDgKKwkubG9uZwkzNTg0MDA3Njk5CisJLmxvbmcJMTAxNzk3Njg2OAorCS5sb25nCTExNDg3NzkyNjQKKwkubG9uZwkxMDY5MDgzNTg5CisJLmxvbmcJMjI4MjUzMjEzMworCS5sb25nCTEwMTk0ODM5NTQKKwkubG9uZwkxNDA2MTMxMzkyCisJLmxvbmcJMTA2OTE0ODQ4MQorCS5sb25nCTE1NDczNTkxMTMKKwkubG9uZwkxMDE5Nzg2MzQyCisJLmxvbmcJMTkwODg3NTkwNAorCS5sb25nCTEwNjkyMTMzMjIKKwkubG9uZwkxMzE1NTA4NDEwCisJLmxvbmcJMTAyMDAwOTQ3MworCS5sb25nCTMxOTQ5NDc1MjAKKwkubG9uZwkxMDY5Mjc4MTEwCisJLmxvbmcJMzg0NTM5MzIwMQorCS5sb25nCTEwMTU4MDM3NjEKKwkubG9uZwkxNTQ3NDg3NzQ0CisJLmxvbmcJMTA2OTM0Mjg0NAorCS5sb25nCTM4NjMxMDc4NjUKKwkubG9uZwkxMDE5ODEwMTA0CisJLmxvbmcJMTg4MTA2MTk1MgorCS5sb25nCTEwNjk0MDc1MjEKKwkubG9uZwk0Mjg4MzQzNTQ4CisJLmxvbmcJMTAxOTY4NzU4MQorCS5sb25nCTU2MzA4NjMzNgorCS5sb25nCTEwNjk0NzIxNDAKKwkubG9uZwkyNTgyMjMwMjQxCisJLmxvbmcJMTAyMDA5OTM1MAorCS5sb25nCTI1OTQ5NzU1NTIKKwkubG9uZwkxMDY5NTM2Njk4CisJLmxvbmcJMjMwNjQ0Mzc2NAorCS5sb25nCTEwMTk2NjcyNDQKKwkubG9uZwkzNDM4NTQ1MDI0CisJLmxvbmcJMTA2OTYwNjU3MworCS5sb25nCTk1NzQ1NTU0OQorCS5sb25nCTEwMTU1ODc3MzUKKwkubG9uZwk0MjExMzU3NDcyCisJLmxvbmcJMTA2OTY3MDkwNgorCS5sb25nCTI2MTE3Nzg3NTQKKwkubG9uZwkxMDE3ODc3MjE0CisJLmxvbmcJMzAwMjgzNTQyNAorCS5sb25nCTEwNjk3MzUxMDEKKwkubG9uZwkyMzU1ODA0NTgKKwkubG9uZwkxMDIwMjExNjg1CisJLmxvbmcJMzkwNTMxNTQyNAorCS5sb25nCTEwNjk3OTkxNTAKKwkubG9uZwkzNjMwNjQ3NjE3CisJLmxvbmcJMTAxODczNjg0OQorCS5sb25nCTI4NDk2NTY1NzYKKwkubG9uZwkxMDY5ODYzMDQ3CisJLmxvbmcJMjQxMjE2NTA2MgorCS5sb25nCTEwMTk2OTMwMDQKKwkubG9uZwk1MDc0Mjk0NzIKKwkubG9uZwkxMDY5OTI2Nzg1CisJLmxvbmcJMTM5Nzc1MDcyMworCS5sb25nCTEwMTg0MTI3MTcKKwkubG9uZwkyMzA3NDcwMjcyCisJLmxvbmcJMTA2OTk5MDM1NgorCS5sb25nCTE3OTY0NzA5MDQKKwkubG9uZwkxMDE5Nzk2MTgxCisJLmxvbmcJMTI3MTgxNDkxMgorCS5sb25nCTEwNzAwNTM3NTUKKwkubG9uZwkxODk3NjE1NjUKKwkubG9uZwkxMDE2MTQ5MTE1CisJLmxvbmcJMzgwMDUzODE0NAorCS5sb25nCTEwNzAxMTY5NzQKKwkubG9uZwkyNTI0ODcxNTgyCisJLmxvbmcJMTAxODI2MzM1MworCS5sb25nCTM5MTYyMDM1NTIKKwkubG9uZwkxMDcwMTgwMDA4CisJLmxvbmcJMTI3ODQ4NjU4CisJLmxvbmcJMTAxNzY3MjY2NAorCS5sb25nCTQ1NzE5MjAzMgorCS5sb25nCTEwNzAyNDI4NTEKKwkubG9uZwk0MDIwNDAwOTM4CisJLmxvbmcJMTAxOTgyMzAxMAorCS5sb25nCTEzODUzMjQ3MDQKKwkubG9uZwkxMDcwMzA1NDk1CisJLmxvbmcJNTY0NTExMTc5CisJLmxvbmcJMTAxNjA3OTA5NAorCS5sb25nCTIzMjI4Njk4NTYKKwkubG9uZwkxMDcwMzY3OTM1CisJLmxvbmcJMjM0NzEwMzMxOQorCS5sb25nCTEwMTg5Mjc3NjAKKwkubG9uZwkzNzQzNDM4NjI0CisJLmxvbmcJMTA3MDQzMDE2NQorCS5sb25nCTg3Nzk3Mzg2MgorCS5sb25nCTEwMTk2MzgxNjIKKwkubG9uZwkyMzkyMjU1NTUyCisJLmxvbmcJMTA3MDQ5MjE4MAorCS5sb25nCTI0MzI3ODIyNjcKKwkubG9uZwkxMDE4ODcyNjI5CisJLmxvbmcJNDE4MDQ0MzMyOAorCS5sb25nCTEwNzA1NTM5NzMKKwkubG9uZwkzMTAyOTkwMDE1CisJLmxvbmcJMTAyMDA5MzEwMQorCS5sb25nCTI1NDc1NDA4MzIKKwkubG9uZwkxMDcwNjM2NDg1CisJLmxvbmcJMzg3NzczODI1MworCS5sb25nCTEwMTczMDA0MjQKKwkubG9uZwkyNzM1NDY4OTEyCisJLmxvbmcJMTA3MDY5NzQ2MQorCS5sb25nCTI0NDY0NzAyNTYKKwkubG9uZwkxMDE5MjM1Mzc4CisJLmxvbmcJNTQyNjMzNzkyCisJLmxvbmcJMTA3MDc1Nzk0MworCS5sb25nCTU4MzYwNjMyOAorCS5sb25nCTEwMTg2MjQxMzEKKwkubG9uZwk5MjMyNjU5ODQKKwkubG9uZwkxMDcwODE3OTExCisJLmxvbmcJMTc5MzkyNjcwOAorCS5sb25nCTEwMTk3MTQxNjEKKwkubG9uZwk5MTg3Mjg0NDgKKwkubG9uZwkxMDcwODc3MzQ4CisJLmxvbmcJMzcyNjQ2MzU4NgorCS5sb25nCTEwMTk0MzMyOTYKKwkubG9uZwkyNTcyMjc1MDA4CisJLmxvbmcJMTA3MDkzNjIzNworCS5sb25nCTE4NDUzNTQyMzgKKwkubG9uZwkxMDE5NDU5MjM4CisJLmxvbmcJNTA5NzQ2ODgKKwkubG9uZwkxMDcwOTk0NTY0CisJLmxvbmcJOTgzODA4MDY0CisJLmxvbmcJMTAxNjY4NTQxOAorCS5sb25nCTExMDU1MTgzMjAKKwkubG9uZwkxMDcxMDUyMzEzCisJLmxvbmcJMjM1NzQ5NjY5MgorCS5sb25nCTEwMTUxMzk4ODIKKwkubG9uZwkxMjY0ODI1MzI4CisJLmxvbmcJMTA3MTEwOTQ3MgorCS5sb25nCTIyNDQxMjkzNTQKKwkubG9uZwkxMDE5MDQ2MzQ0CisJLmxvbmcJOTYxMTU3OTIwCisJLmxvbmcJMTA3MTE2NjAyOQorCS5sb25nCTMxMjQxODUzMzkKKwkubG9uZwkxMDE4NTQxNzc2CisJLmxvbmcJMTE2MjcwMTU4NAorCS5sb25nCTEwNzEyMjE5NzMKKwkubG9uZwkxMjc5NzgwOTQ4CisJLmxvbmcJMTAxOTI2ODkxOAorCS5sb25nCTMyODQ5MzU2NjQKKwkubG9uZwkxMDcxMjc3Mjk0CisJLmxvbmcJMjY3MDAzMzQ3MgorCS5sb25nCTEwMTk4MzM3NDQKKwkubG9uZwk0OTc0NDE4ODgKKwkubG9uZwkxMDcxMzMxOTg1CisJLmxvbmcJMTAzMjczNzQxMAorCS5sb25nCTEwMTk3OTUyMTIKKwkubG9uZwkzMzc3MzgzOTA0CisJLmxvbmcJMTA3MTM4NjAzNgorCS5sb25nCTIzNTY4OTcxODIKKwkubG9uZwkxMDIwMjA1NTUzCisJLmxvbmcJMTEyNjk2MjAwMAorCS5sb25nCTEwNzE0Mzk0NDMKKwkubG9uZwkzNzIzNzI0NTg2CisJLmxvbmcJMTAxNTIxMjQxOAorCS5sb25nCTkwMjkxMDA4CisJLmxvbmcJMTA3MTQ5MjE5OQorCS5sb25nCTQxNzg2NzI0MzEKKwkubG9uZwkxMDIwMTg2OTcxCisJLmxvbmcJMTkwMDU5NTM2CisJLmxvbmcJMTA3MTU5NTc0MQorCS5sb25nCTE3NjM1ODk4MDcKKwkubG9uZwkxMDE5MTYyMTYzCisJLmxvbmcJMjQ5NzM5Mjg0MAorCS5sb25nCTEwNzE2NzA2NTQKKwkubG9uZwkzMDM2OTk3MDQxCisJLmxvbmcJMTAyMDIwNDMyNQorCS5sb25nCTI2MTY5NzE5NDQKKwkubG9uZwkxMDcxNzE5NzczCisJLmxvbmcJMzAwMTUxMDY5CisJLmxvbmcJMTAxNzA0MTk1NworCS5sb25nCTI4ODM1MTgxMjgKKwkubG9uZwkxMDcxNzY3NTYzCisJLmxvbmcJMjIwMzk4MTQxNAorCS5sb25nCTEwMTkxOTAxMDgKKwkubG9uZwkxNDk2MzU0MzUyCisJLmxvbmcJMTA3MTgxNDAzMAorCS5sb25nCTMzMjI4Nzk2NgorCS5sb25nCTEwMTY4NDY0MzUKKwkubG9uZwk0ODMyNzY3MjgKKwkubG9uZwkxMDcxODU5MTg0CisJLmxvbmcJNjUzODQ1MDI0CisJLmxvbmcJMTAxODgzMDkxNAorCS5sb25nCTMwOTc0MDEwNzIKKwkubG9uZwkxMDcxOTAzMDM5CisJLmxvbmcJMTUxNDc0NjQwOAorCS5sb25nCTEwMTkyNzg5NzIKKwkubG9uZwkyNzM3MjE3MjQ4CisJLmxvbmcJMTA3MTk0NTYxNQorCS5sb25nCTEzNTg4NDUwNjcKKwkubG9uZwkxMDE3MjY4Mjc1CisJLmxvbmcJMjA3MjU3NzU2MAorCS5sb25nCTEwNzE5ODY5MzMKKwkubG9uZwkzMDQxMDI0NzM1CisJLmxvbmcJMTAxOTkyOTY3MgorCS5sb25nCTIyNjY0MDU2NTYKKwkubG9uZwkxMDcyMDI3MDE3CisJLmxvbmcJMTI3MTI2MTEzMAorCS5sb25nCTEwMTI5MjUwNzAKKwkubG9uZwk5NTg2NTI1NDQKKwkubG9uZwkxMDcyMDY1ODk0CisJLmxvbmcJMjE1ODAxNzA1OAorCS5sb25nCTEwMTk5NTUzNzIKKwkubG9uZwkzMzEyOTkzODQwCisJLmxvbmcJMTA3MjEwMzU5MQorCS5sb25nCTc2NTgwOTE2OQorCS5sb25nCTEwMTkxMTQ0NDMKKwkubG9uZwkzMTc3MDAxMzA0CisJLmxvbmcJMTA3MjE0MDEzOQorCS5sb25nCTE0NDE4MDA4NAorCS5sb25nCTEwMTk4MjIxODYKKwkubG9uZwkzMDcxNjQyMTg0CisJLmxvbmcJMTA3MjE3NTU2OAorCS5sb25nCTQwMDQ2MDI0MjQKKwkubG9uZwkxMDE5NDIwNzQwCisJLmxvbmcJNDI4Mzk1MzY0OAorCS5sb25nCTEwNzIyMDk5MDkKKwkubG9uZwkxNTExOTUwNDMwCisJLmxvbmcJMTAyMDE3Njk2NgorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDcyMjQzMTk1CisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNTEyOTYzOAorCS5sb25nCTQwNzMyMDI5NDQKKwkubG9uZwkxMDcyMzA2NzI1CisJLmxvbmcJNDA2ODE5NDgwNAorCS5sb25nCTEwMTk3MTQ4NjAKKwkubG9uZwk5NDYxMTc3NjAKKwkubG9uZwkxMDcyMzY2NDE1CisJLmxvbmcJNjk0OTgwNzMzCisJLmxvbmcJMTAyMDE1MDEzNQorCS5sb25nCTM5ODA2MzIwMzIKKwkubG9uZwkxMDcyNDIyNTEyCisJLmxvbmcJMTMxMzI1MTI4MAorCS5sb25nCTEwMTk5NDg3MDkKKwkubG9uZwkxNDY4Mjk3MTEyCisJLmxvbmcJMTA3MjQ3NTI2MAorCS5sb25nCTMzMDExMTE0MworCS5sb25nCTEwMTk4MDkxOTgKKwkubG9uZwkzNDc4MDYzODE2CisJLmxvbmcJMTA3MjUyNDg4NworCS5sb25nCTI5MzAwNjcwNDQKKwkubG9uZwkxMDE3Nzg0MDgxCisJLmxvbmcJMTE1Mzk3OTg1NgorCS5sb25nCTEwNzI1NzE2MTMKKwkubG9uZwkyMjI1Nzg2MTAyCisJLmxvbmcJMTAxNzYzNDQ4MQorCS5sb25nCTIwODk4Mjg4MDgKKwkubG9uZwkxMDcyNjE1NjQxCisJLmxvbmcJNDc0NjIxMzY3CisJLmxvbmcJMTAxNzA0MzQxNAorCS5sb25nCTM1MzE3MzI2MzIKKwkubG9uZwkxMDcyNjU3MTYzCisJLmxvbmcJMjI3NjM5NjIyMAorCS5sb25nCTEwMTg3NTcyNDAKKwkubG9uZwk3NzUyMTQ2MTIKKwkubG9uZwkxMDcyNjk0ODAzCisJLmxvbmcJMzIwOTc0NDgxOAorCS5sb25nCTEwMTk5NjMwMTUKKwkubG9uZwk2NjIzMDcyODQKKwkubG9uZwkxMDcyNzEzMzE5CisJLmxvbmcJMTM4MTY5Njc2MworCS5sb25nCTEwMTk3NjM3ODEKKwkubG9uZwkxMTkyNzc2NjUyCisJLmxvbmcJMTA3MjczMDgzMAorCS5sb25nCTMwMTc5MzI5OTQKKwkubG9uZwkxMDE1MTc5NzY5CisJLmxvbmcJNzQ0MjAyMzk2CisJLmxvbmcJMTA3Mjc0NzQwNworCS5sb25nCTIwNzM4NTQwMzQKKwkubG9uZwkxMDE5NTEyMjkyCisJLmxvbmcJODMzNzkwOAorCS5sb25nCTEwNzI3NjMxMTUKKwkubG9uZwkxNjAwNDQ0OAorCS5sb25nCTEwMTk1OTk1MTQKKwkubG9uZwkzNTg5ODY4NzY4CisJLmxvbmcJMTA3Mjc3ODAxMworCS5sb25nCTEzNzQzNjk4MDQKKwkubG9uZwkxMDE4MDE5MjM3CisJLmxvbmcJMTIxNjQ3MzIwCisJLmxvbmcJMTA3Mjc5MjE1OQorCS5sb25nCTEyODQ4MTYzNAorCS5sb25nCTEwMTgxMTU0MzgKKwkubG9uZwkyNDY0OTIzMjA0CisJLmxvbmcJMTA3MjgwNTYwMQorCS5sb25nCTE3ODczMzEyMTQKKwkubG9uZwkxMDE2Nzk4MDIyCisJLmxvbmcJNDA5MzMwNDM3MgorCS5sb25nCTEwNzI4MzA1NjIKKwkubG9uZwkzMzA2ODY4OTY5CisJLmxvbmcJMTAxOTM4NDA3OAorCS5sb25nCTE0MzY4OTE2ODQKKwkubG9uZwkxMDcyODUzMjMxCisJLmxvbmcJNjc2MzQ3MjY2CisJLmxvbmcJMTAxNzMwMjE4MworCS5sb25nCTExMDQ1NzE4NDAKKwkubG9uZwkxMDcyODczODkwCisJLmxvbmcJMjg3MDQwMDI4NQorCS5sb25nCTEwMTk5MzgxNDkKKwkubG9uZwkyMDM3MDA5ODMyCisJLmxvbmcJMTA3Mjg5Mjc4MQorCS5sb25nCTI5NTY3MDIxMDUKKwkubG9uZwkxMDE2NDcyOTA4CisJLmxvbmcJMzEzOTAzNzk2MAorCS5sb25nCTEwNzI5MTAxMTEKKwkubG9uZwk5MTYwNTcxNDcKKwkubG9uZwkxMDE4MzY0MzM1CisJLmxvbmcJMTgyNjY5ODA2NAorCS5sb25nCTEwNzI5MjYwNTgKKwkubG9uZwkyMTcxOTYxMDk4CisJLmxvbmcJMTAxOTY2OTgxNgorCS5sb25nCTEzNTM5NDEwNjAKKwkubG9uZwkxMDcyOTQwNzc0CisJLmxvbmcJMTcyMjkyODc4MgorCS5sb25nCTEwMTk5MjYyMTUKKwkubG9uZwkxODAzMTkxNjQ0CisJLmxvbmcJMTA3Mjk1NDM5MQorCS5sb25nCTE1NDc4Nzg2MzkKKwkubG9uZwkxMDIwMjU5MjYyCisJLmxvbmcJMTA5MjU5MTI5NgorCS5sb25nCTEwNzI5NjcwMjQKKwkubG9uZwkzMDcwMTA3OTIzCisJLmxvbmcJMTAxODMyMDQwMQorCS5sb25nCTIyMDUzNzI4MzIKKwkubG9uZwkxMDcyOTc4NzcyCisJLmxvbmcJNzg3MzI4MTk2CisJLmxvbmcJMTAxNDYyMTM1MQorCS5sb25nCTEyOTE1NzcxMDAKKwkubG9uZwkxMDcyOTg5NzIzCisJLmxvbmcJMjk2NDc1NzMwMQorCS5sb25nCTEwMjAyNDI1MjgKKwkubG9uZwk0MjM0NTEyODA0CisJLmxvbmcJMTA3Mjk5OTk1MgorCS5sb25nCTMxMzYwMzAwMzgKKwkubG9uZwkxMDE3NTIyMTQ0CisJLmxvbmcJMzI0ODA2OTEzMgorCS5sb25nCTEwNzMwMDk1MjgKKwkubG9uZwkxNTA2MTkyMzU1CisJLmxvbmcJMTAxODA1MDQ3MgorCS5sb25nCTM5MzI2Mjg1MDAKKwkubG9uZwkxMDczMDE4NTA5CisJLmxvbmcJMTA0NTgyMzU1NAorCS5sb25nCTEwMTk5NDY2NTUKKwkubG9uZwk0MTk1Njk3ODQ4CisJLmxvbmcJMTA3MzAyNjk0OAorCS5sb25nCTIzMzQ0MzMyMgorCS5sb25nCTEwMTg5MTc0NDcKKwkubG9uZwkyNTAxODExNDUyCisJLmxvbmcJMTA3MzAzNDg5MgorCS5sb25nCTkwMTQyNzk3NgorCS5sb25nCTEwMTczMzM4NTIKKwkubG9uZwk4NjYzNzk0MjgKKwkubG9uZwkxMDczMDQ5NDU1CisJLmxvbmcJMjQzNzQ0Mzc0MgorCS5sb25nCTEwMTk2Nzg3OTIKKwkubG9uZwkxMzc2ODY1ODg4CisJLmxvbmcJMTA3MzA2MjQ4MAorCS5sb25nCTMzNjU3OTAyMzIKKwkubG9uZwkxMDE0NTQ3MTUyCisJLmxvbmcJMzI5MDA5NDI2OAorCS5sb25nCTEwNzMwNzQxOTUKKwkubG9uZwkzODk4OTQ3NDE1CisJLmxvbmcJMTAxODY4MzU2NgorCS5sb25nCTM1NDc2NDg4NAorCS5sb25nCTEwNzMwODQ3ODcKKwkubG9uZwkzODU0MzIyNDA0CisJLmxvbmcJMTAxOTY2MjA1OAorCS5sb25nCTMzMzI5NzU0OTYKKwkubG9uZwkxMDczMDk0NDA2CisJLmxvbmcJMzE3MTcwMTY1NQorCS5sb25nCTEwMTc4MzA5MjIKKwkubG9uZwkxMTQxNDYwMDg4CisJLmxvbmcJMTA3MzEwMzE4MQorCS5sb25nCTM5NDYwODI3MDEKKwkubG9uZwkxMDIwMDMyMDE5CisJLmxvbmcJNzQ1NzYxMjg0CisJLmxvbmcJMTA3MzExMTIxNgorCS5sb25nCTEzNDcyMTA1OTEKKwkubG9uZwkxMDE5MTA2MTIxCisJLmxvbmcJMTY3MzMwNDUwOAorCS5sb25nCTEwNzMxMTg2MDAKKwkubG9uZwkxNzYwNjA2NjQyCisJLmxvbmcJMTAxNzMyNDU3NworCS5sb25nCTk4MzM4ODI0MAorCS5sb25nCTEwNzMxMjU0MDkKKwkubG9uZwkzNzQwNjUxMjA0CisJLmxvbmcJMTAxOTUxNDEwNAorCS5sb25nCTM4OTU1MDkxMDAKKwkubG9uZwkxMDczMTMxNzA2CisJLmxvbmcJMjQwOTYyOTk4MworCS5sb25nCTEwMjAwNjkzMjIKKwkubG9uZwkyMTI4NTIzNjY4CisJLmxvbmcJMTA3MzEzNzU0OAorCS5sb25nCTMwNDU2MDUzNjgKKwkubG9uZwkxMDE4NTc5MTc0CisJLmxvbmcJMjA3NTQ4NTY5MgorCS5sb25nCTEwNzMxNDI5ODEKKwkubG9uZwkzNzIwNTcxNzg5CisJLmxvbmcJMTAxNzU1NzQzNgorCS5sb25nCTEyMTg1NTk3NgorCS5sb25nCTEwNzMxNDgwNDcKKwkubG9uZwkyMzkxNzQ0NzY3CisJLmxvbmcJMTAyMDE2MDY0NQorCS5sb25nCTQxODE3MzM3ODAKKwkubG9uZwkxMDczMTUyNzgwCisJLmxvbmcJOTk1MDI4ODE2CisJLmxvbmcJMTAxOTY4MTI5NQorCS5sb25nCTI4ODc4MTMyODAKKwkubG9uZwkxMDczMTU3MjE0CisJLmxvbmcJMjE4NzMzMjQ3CisJLmxvbmcJMTAyMDAwMzUwOQorCS5sb25nCTI4NjIxODA4OTYKKwkubG9uZwkxMDczMTYxMzc1CisJLmxvbmcJMjA0MzgwNjQ5MAorCS5sb25nCTEwMTg2MDIyODgKKwkubG9uZwkzOTA5Mzc1MTg0CisJLmxvbmcJMTA3MzE2ODk3MworCS5sb25nCTE1NTk5MDM0MTIKKwkubG9uZwkxMDIwMTAzNDQ0CisJLmxvbmcJMzUzMzk2NjI5MgorCS5sb25nCTEwNzMxNzU3MzgKKwkubG9uZwk3MzQ4ODQxNDkKKwkubG9uZwkxMDE4NDYyOTYyCisJLmxvbmcJMzgxNTA0NDYwOAorCS5sb25nCTEwNzMxODE3OTkKKwkubG9uZwkzNjMwNTIzNDI4CisJLmxvbmcJMTAxNzI1MDA5MworCS5sb25nCTczOTYzOTM3NgorCS5sb25nCTEwNzMxODcyNjEKKwkubG9uZwk0MTY3NDc2NjYxCisJLmxvbmcJMTAyMDAwODI3NworCS5sb25nCTEwNjgzMDk2NDgKKwkubG9uZwkxMDczMTkyMjA3CisJLmxvbmcJMjExMDA2MTQzNworCS5sb25nCTEwMTkyOTU4NTgKKwkubG9uZwkyMzUwNTY2MzUyCisJLmxvbmcJMTA3MzE5NjcwNworCS5sb25nCTU4MjU5NjUxNgorCS5sb25nCTEwMTg1Njg4MjEKKwkubG9uZwkyNTI5NTIwMDI0CisJLmxvbmcJMTA3MzIwMDgxOQorCS5sb25nCTc0NTU1Mjc4NworCS5sb25nCTEwMTkwNTMxNjUKKwkubG9uZwkxODQxNjY3NTA4CisJLmxvbmcJMTA3MzIwNDU5MQorCS5sb25nCTM5ODI1Njg3MDAKKwkubG9uZwkxMDE2NTAzMzI3CisJLmxvbmcJMjI0MjI2MTA4MAorCS5sb25nCTEwNzMyMDgwNjMKKwkubG9uZwkzNDMzNTgyMjU4CisJLmxvbmcJMTAxNjE5Njc2MworCS5sb25nCTcxNTEzNDMyOAorCS5sb25nCTEwNzMyMTEyNzAKKwkubG9uZwkzNTU5MDEzNTgKKwkubG9uZwkxMDIwMDg3OTE2CisJLmxvbmcJMjcwMDczNTg3NgorCS5sb25nCTEwNzMyMTQyNDAKKwkubG9uZwkzNjQwOTU3NzM2CisJLmxvbmcJMTAxOTc4MDIwNQorCS5sb25nCTE0MTYwNzU4MAorCS5sb25nCTEwNzMyMTcwMDAKKwkubG9uZwkyNDg4MjQ1MDUxCisJLmxvbmcJMTAyMDI2MjM5NQorCS5sb25nCTI4NzkzNDQwNAorCS5sb25nCTEwNzMyMTk1NzAKKwkubG9uZwkyMzkyNjkxMDg1CisJLmxvbmcJMTAxOTg4MzI5MgorCS5sb25nCTIzNjMzNzM5ODgKKwkubG9uZwkxMDczMjIxOTY5CisJLmxvbmcJNDE5NDU2MTczNworCS5sb25nCTEwMTkyMzc0NDcKKwkubG9uZwkzODI5MzQwNDI0CisJLmxvbmcJMTA3MzIyNDIxNAorCS5sb25nCTQyOTQ1NTUyNgorCS5sb25nCTEwMTk0OTA5NzUKKwkubG9uZwkxOTg4ODA1OTI4CisJLmxvbmcJMTA3MzIyNjMyMAorCS5sb25nCTMwMjk4NDg3MDYKKwkubG9uZwkxMDE4MTA0ODg5CisJLmxvbmcJMTY0NzU3MjMyMAorCS5sb25nCTEwNzMyMzAxNjEKKwkubG9uZwkxMDI4OTkzOAorCS5sb25nCTEwMTczOTQ4ODAKKwkubG9uZwkzOTg4MDAwNjI0CisJLmxvbmcJMTA3MzIzMzU3NgorCS5sb25nCTE5NTc1NTkxNjkKKwkubG9uZwkxMDE5NDM0ODE2CisJLmxvbmcJNDI2Mzg0Mzk0NAorCS5sb25nCTEwNzMyMzY2MzMKKwkubG9uZwkyMDQ3MTAyNjQKKwkubG9uZwkxMDE5OTA4NzYxCisJLmxvbmcJNjYzMTk3NzI0CisJLmxvbmcJMTA3MzIzOTM4NgorCS5sb25nCTE5MjE3NTc1NzgKKwkubG9uZwkxMDE5Nzc4OTQ4CisJLmxvbmcJMzU2MDgwMDcwMAorCS5sb25nCTEwNzMyNDE4NzYKKwkubG9uZwkzOTk0MzQ4ODk2CisJLmxvbmcJMTAxOTIzMDE5MgorCS5sb25nCTI0NDE3ODU2NTYKKwkubG9uZwkxMDczMjQ0MTQxCisJLmxvbmcJODcxNDY4NjExCisJLmxvbmcJMTAxNDgwMDUwNQorCS5sb25nCTMyNzc0MDAyNzIKKwkubG9uZwkxMDczMjQ2MjA5CisJLmxvbmcJNDA5MjIxODEzOQorCS5sb25nCTEwMjAwNDA4NDIKKwkubG9uZwkzOTUxOTkwMTIwCisJLmxvbmcJMTA3MzI0ODEwNQorCS5sb25nCTQyNzY1NDY0NzgKKwkubG9uZwkxMDE5NzYzNjc3CisJLmxvbmcJMjczNzMzODU0MAorCS5sb25nCTEwNzMyNDk4NTAKKwkubG9uZwkyNTI3NzYwMTIKKwkubG9uZwkxMDE4Nzk0OTUxCisJLmxvbmcJMTUxMTM2MTMxNgorCS5sb25nCTEwNzMyNTE0NjEKKwkubG9uZwkzMTE5NjUzOTk5CisJLmxvbmcJMTAxODUxNDgwMworCS5sb25nCTM5NjkxNjI1MTYKKwkubG9uZwkxMDczMjUyOTUyCisJLmxvbmcJMTAzNzA2OTAxNgorCS5sb25nCTEwMTY3OTI5MDAKKwkubG9uZwk0MTM5ODUyNDAKKwkubG9uZwkxMDczMjU0MzM4CisJLmxvbmcJNDExMDE3MTQzMgorCS5sb25nCTEwMjAwMDEzNDUKKwkubG9uZwkzNjgxMjgzNTc2CisJLmxvbmcJMTA3MzI1NTYyNworCS5sb25nCTE0NjMwOTI4MTgKKwkubG9uZwkxMDIwMjYwMzU0CisJLmxvbmcJMzE0NjQ1NTQ4OAorCS5sb25nCTEwNzMyNTY4MzEKKwkubG9uZwkxMDMxMjA5MTIzCisJLmxvbmcJMTAxNjU1NDc5OQorCS5sb25nCTk1MjE0NTEyCisJLmxvbmcJMTA3MzI1Nzk1OAorCS5sb25nCTEzNzM4MDg2MzIKKwkubG9uZwkxMDE5NDkzMDMxCisJLmxvbmcJNDI1MDI0MDgyOAorCS5sb25nCTEwNzMyNTkwMTMKKwkubG9uZwkzODkxMDQ3ODgyCisJLmxvbmcJMTAyMDEwODczMAorCS5sb25nCTE0MTM3NTQxMzYKKwkubG9uZwkxMDczMjkxNzcxCisJLmxvbmcJODU2OTcyMjk1CisJLmxvbmcJMTAxNjE3ODIxNAorCS50eXBlCUFUQU5fVEJMLEBvYmplY3QKKwkuc2l6ZQlBVEFOX1RCTCwyNjI0CisJLmFsaWduIDE2CitQX1RCTDI6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE3MjI2NzkwCisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzQzNDAzNDcKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkzMTY0NzEwNDM4CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTMyMjE4MjM5OTUKKwkudHlwZQlQX1RCTDIsQG9iamVjdAorCS5zaXplCVBfVEJMMiw2NAorCS5hbGlnbiAxNgorU0VMRUNUX0I6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkwCisJLmxvbmcJMAorCS50eXBlCVNFTEVDVF9CLEBvYmplY3QKKwkuc2l6ZQlTRUxFQ1RfQiw2NAorCS5hbGlnbiAxNgorU0dOTUFTSzoKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLnR5cGUJU0dOTUFTSyxAb2JqZWN0CisJLnNpemUJU0dOTUFTSywxNgorCS5hbGlnbiAxNgorcGlfdGFibGU6CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzQzNDAzNDcKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE3MjI2NzkwCisJLnR5cGUJcGlfdGFibGUsQG9iamVjdAorCS5zaXplCXBpX3RhYmxlLDE2CisJLmFsaWduIDE2CitwaTJfdGFibGU6CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzMyOTE3NzEKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE2MTc4MjE0CisJLnR5cGUJcGkyX3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlwaTJfdGFibGUsMTYKKwkuYWxpZ24gMTYKK3BpNF90YWJsZToKKwkubG9uZwkxNDEzNzU0MTM2CisJLmxvbmcJMTA3MjI0MzE5NQorCS5sb25nCTg1Njk3MjI5NQorCS5sb25nCTEwMTUxMjk2MzgKKwkudHlwZQlwaTRfdGFibGUsQG9iamVjdAorCS5zaXplCXBpNF90YWJsZSwxNgorCS5hbGlnbiA0CitQT1c1NToKKwkubG9uZwkwCisJLmxvbmcJMTEzMDM2NDkyOAorCS50eXBlCVBPVzU1LEBvYmplY3QKKwkuc2l6ZQlQT1c1NSw4CisJLmFsaWduIDQKK0lOVkVYUE1BU0s6CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTIxNDg1MzIyMjMKKwkudHlwZQlJTlZFWFBNQVNLLEBvYmplY3QKKwkuc2l6ZQlJTlZFWFBNQVNLLDgKKwkuYWxpZ24gNAorRVhQTUFTSzoKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS50eXBlCUVYUE1BU0ssQG9iamVjdAorCS5zaXplCUVYUE1BU0ssOAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorLy8gLS0gQmVnaW4gRFdBUkYyIFNFR01FTlQgLmVoX2ZyYW1lCisJLnNlY3Rpb24gLmVoX2ZyYW1lLCJhIixAcHJvZ2JpdHMKKy5laF9mcmFtZV9zZWc6CisJLmFsaWduIDEKKwkuNGJ5dGUgMHgwMDAwMDAxNAorCS44Ynl0ZSAweDAwNTI3YTAxMDAwMDAwMDAKKwkuOGJ5dGUgMHgwODA3MGMxYjAxMTA3ODAxCisJLjRieXRlIDB4MDAwMDAxOTAKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2F0YW4yLjEtLgorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hdGFuMi41LS4uX19fdGFnX3ZhbHVlX2F0YW4yLjEKKwkuMmJ5dGUgMHgwNDAwCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2F0YW4yLjMtLi5fX190YWdfdmFsdWVfYXRhbjIuMQorCS4yYnl0ZSAweDIwMGUKKwkuYnl0ZSAweDA0CisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2F0YW4yLjQtLi5fX190YWdfdmFsdWVfYXRhbjIuMworCS4yYnl0ZSAweDA4MGUKKwkuYnl0ZSAweDAwCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvZV9jb3NoLlMgYi9saWJtL3g4Nl82NC9lX2Nvc2guUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44Y2RiY2E2Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvZV9jb3NoLlMKQEAgLTAsMCArMSwxMzcyIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gIGNvc2goeCk9KGV4cCh4KStleHAoLXgpKS8yCisvLworLy8gIExldCB8eHw9eEgreEwgKHVwcGVyIDI2IGJpdHMsIGxvd2VyIDI3IGJpdHMpCisvLyAgbG9nMihlKSByb3VuZGVkIHRvIDI2IGJpdHMgKGhpZ2ggcGFydCkgcGx1cyBhIGRvdWJsZSBwcmVjaXNpb24gbG93IHBhcnQgaXMKKy8vICAgICAgICAgIEwyRUgrTDJFTCAodXBwZXIgMjYsIGxvd2VyIDUzIGJpdHMpCisvLworLy8gIExldCB4SCpMMkVIPWsrZityYCwgd2hlcmUgKGsrZikqMl43PWludCh4SCpMMkVIKjJeNyksCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGY9MC5iMSBiMiAuLi4gYjcsIGsgaW50ZWdlcgorLy8gIDJeZiBpcyBhcHByb3hpbWF0ZWQgYXMgVHBbZl0rRHBbZl0sIGFuZCAyXnstZn0gYXMgVG5bZl0rRG5bZl0KKy8vICBUcCBzdG9yZXMgaGlnaGVyIDUzIGJpdHMsIERwIHN0b3JlcyAoMl5mLVRwW2ZdKSByb3VuZGVkIHRvIGRvdWJsZSBwcmVjaXNpb24KKy8vCisvLyAgZV58eHw9Ml57aytmfSoyXnIsIHI9cmAreEwqTDJFSCt8eHwqTDJFTCwgfHJ8PDJeey04fSsyXnstMTR9LAorLy8gICAgICAgICAgICAgICAgICAgICAgIGZvciB8eHwgaW4gWzEvOCwzKjJeOCkKKy8vICBlXnstfHh8fT0yXnstay1mfSoyXnstcn0KKy8vCisvLyAgZV58eHwgaXMgYXBwcm94aW1hdGVkIGFzIDJeaypUcCsyXmsqVHAqYzEqcigxK2MyKnIrLi4rYzUqcl40KSsyXmsqRHA9CisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgID0yXmsqVHArMl5rKlRwKlAxNSsyXmsqRHAKKy8vICBlXnstfHh8fSBhcHByb3hpbWF0ZWQgYXMgMl57LWt9KlRuLTJeey1rfSpUbipjMSpyKDEtYzIqcisuLitjNSpyXjQpCisvLworLy8gIEZvciB8eHwgaW4gWzEvOCwgMyoyXjcpLCBjb3NoKHgpIGlzIGZvcm1lZCBhcworLy8gICBSTigyXmsqVHArMl57LWt9KlRuKSsyXmsqVHAqUDE1KzJeey1rfSpUbipQYDE1KzJeey1rfSpUbkwrMl57LWt9KkRuKzJeaypEcAorLy8KKy8vICBGb3IgfHh8IGluIFszKjJeNywgMyoyXjgpLCAoZV58eHwpLzIgaXMgcmV0dXJuZWQsIGFuZAorLy8gIHRoZSByZXN1bHQgaXMgY2hlY2tlZCBmb3Igb3ZlcmZsb3cuCisvLworLy8gIEZvciB8eHw8MS84LCBhIFRheWxvciBwb2x5bm9taWFsIGV4cGFuc2lvbiBpcyB1c2VkIChkZWdyZWUgMTApCisvLyAgKGVycm9yIGJvdW5kIGZvciBwb2x5bm9taWFsIGV4cGFuc2lvbiBpcyBiZWxvdyAwLjUwMSB1bHApCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBjb3NoKE5hTikgPSBxdWlldCBOYU4sIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIGNvc2goSU5GKSA9IHRoYXQgSU5GCisvLyAgY29zaCgwKT0xCisvLyAgZm9yIGZpbml0ZSBhcmd1bWVudCwgb25seSBjb3NoKDApPTEgaXMgZXhhY3QKKy8vICBGb3IgSUVFRSBkb3VibGUKKy8vICBjb3NoKHgpIG92ZXJmbG93cworLy8gIGZvciB4ID4gNzEwLjQ3NTg2MDA3Mzk0Mzg2MzQyNjM5MzM2MzYyNDgxMTE3MjQ4NTM1MTU2MjUwID0gTUFYTE9HK2xvZygyKQorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKworIyAtLSBCZWdpbiAgY29zaAorRU5UUlkoY29zaCkKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisuLkIxLjE6CisuLl9fX3RhZ192YWx1ZV9jb3NoLjE6CisgICAgICAgIHB1c2hxICAgICAlcnNpCisuLl9fX3RhZ192YWx1ZV9jb3NoLjM6CisuLkIxLjI6CisgICAgICAgIG1vdnNkICAgICBIQUxGTUFTSyglcmlwKSwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW00LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgTDJFKCVyaXApLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgOCtMMkUoJXJpcCksICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgU2hpZnRlciglcmlwKSwgJXhtbTYKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVjeAorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIGFuZG5wZCAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTQsICV4bW01CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlY3gKKyAgICAgICAgc3VibCAgICAgICQxNjMyMCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDIwMCwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgY3Z0c2Qyc2kgICV4bW0zLCAlZWF4CisgICAgICAgIG1vdnEgICAgICAleG1tMywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tMworICAgICAgICBtb3ZhcGQgICAgY3YoJXJpcCksICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDE2K2N2KCVyaXApLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG1vdmwgICAgICAkMzI3MDQsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgMzIrY3YoJXJpcCksICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxMjcsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgc2hybCAgICAgICQzLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkNjU1MjAsICVlYXgKKyAgICAgICAgYWRkbCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGNtcGwgICAgICAkMTg0LCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNSwgJXhtbTUKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgcHN1YncgICAgICV4bW0wLCAleG1tNQorICAgICAgICBsZWEgICAgICAgVDJmKCVyaXApLCAlcjgKKyAgICAgICAgbXVscGQgICAgICglcjgsJXJkeCw4KSwgJXhtbTAKKyAgICAgICAgbGVhICAgICAgIFQyX25lZ19mKCVyaXApLCAlcjgKKyAgICAgICAgbXVscGQgICAgICglcjgsJXJkeCw4KSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICA0OCtjdiglcmlwKSwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHBkICAgICA2NCtjdiglcmlwKSwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tNAorICAgICAgICBzaHVmcGQgICAgJDAsICV4bW01LCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorICAgICAgICBhZGRsICAgICAgJDE2MzIwLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMTYzMjAsICVlY3gKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIGNtcGwgICAgICAkMTU5NTIsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbW92cSAgICAgIE9ORU1BU0soJXJpcCksICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBzdWJsICAgICAgJDE2MzUyLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc2hybCAgICAgICQxLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkNjU1MjAsICVlYXgKKyAgICAgICAgc3VibCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMAorICAgICAgICBsZWEgICAgICAgVDJmKCVyaXApLCAlcjgKKyAgICAgICAgbXVscGQgICAgICglcjgsJXJkeCw4KSwgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdnNkICAgICA0OCtjdiglcmlwKSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgIDY0K2N2KCVyaXApLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRsICAgICAgJDE2MzY4LCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVjeCwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgbW92YXBkICAgIHB2KCVyaXApLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAxNitwdiglcmlwKSwgJXhtbTIKKyAgICAgICAgeG9ycGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIE9ORU1BU0soJXJpcCksICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbW92bCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0zCisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTEsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDMyNzM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICglcnNwKQorLi5CMS4zOgorICAgICAgICBtb3ZxICAgICAgKCVyc3ApLCAleG1tMAorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisuLkIxLjU6CisgICAgICAgIHBvcHEgICAgICAlcmN4CisuLl9fX3RhZ192YWx1ZV9jb3NoLjQ6CisgICAgICAgIHJldCAgICAgICAKKy4uX19fdGFnX3ZhbHVlX2Nvc2guNToKK0VORChjb3NoKQorIyAtLSBFbmQgIGNvc2gKKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK0wyRToKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA4MDQ5NzQ3OQorCS5sb25nCTQxNjY5MDE1NzIKKwkubG9uZwkxMDUzMDc3MDAzCisJLnR5cGUJTDJFLEBvYmplY3QKKwkuc2l6ZQlMMkUsMTYKKwkuYWxpZ24gMTYKK1NoaWZ0ZXI6CisJLmxvbmcJMAorCS5sb25nCTExMjc3NDM0ODgKKwkubG9uZwkwCisJLmxvbmcJMzI3NTIyNzEzNgorCS50eXBlCVNoaWZ0ZXIsQG9iamVjdAorCS5zaXplCVNoaWZ0ZXIsMTYKKwkuYWxpZ24gMTYKK2N2OgorCS5sb25nCTM2MDc0MDQ3MzYKKwkubG9uZwkxMDQ0MTQ2OTUyCisJLmxvbmcJMzYwNzQwNDczNgorCS5sb25nCTMxOTE2MzA2MDAKKwkubG9uZwk0Mjc3ODExNjk1CisJLmxvbmcJMTA2MzY2MTEyMgorCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkzMjExMTQ0NzcwCisJLmxvbmcJMjE0MDE3NTc1NQorCS5sb25nCTEwMzM4NjQyNjEKKwkubG9uZwkyMTQwMTc1NzU1CisJLmxvbmcJMTAzMzg2NDI2MQorCS5sb25nCTQyODk0OTU5ODgKKwkubG9uZwkxMDU0MTEzNzQ3CisJLmxvbmcJNDI4OTQ5NTk4OAorCS5sb25nCTEwNTQxMTM3NDcKKwkubG9uZwk0Mjc3ODExNjk1CisJLmxvbmcJMTA2NDcwOTY5OAorCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkzMjEyMTkzMzQ2CisJLnR5cGUJY3YsQG9iamVjdAorCS5zaXplCWN2LDgwCisJLmFsaWduIDE2CitUMmY6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI4NTE4MTIxNDkKKwkubG9uZwkxMDcyNjk4OTQxCisJLmxvbmcJMjU5NTgwMjU1MQorCS5sb25nCTEwMTY4MTU5MTMKKwkubG9uZwkxMDQ4MDE5MDQxCisJLmxvbmcJMTA3MjcwNDY2NgorCS5sb25nCTEzOTg0NzQ4NDUKKwkubG9uZwkzMTYxNTU5MTcxCisJLmxvbmcJMzg5OTU1NTcxNworCS5sb25nCTEwNzI3MTA0MjEKKwkubG9uZwk0MjcyODA3NTAKKwkubG9uZwkzMTYzNTk1NTQ4CisJLmxvbmcJMzU0MTQwMjk5NgorCS5sb25nCTEwNzI3MTYyMDgKKwkubG9uZwkyNzU5MTc3MzE3CisJLmxvbmcJMTAxNTkwMzIwMgorCS5sb25nCTcwMjQxMjUxMAorCS5sb25nCTEwNzI3MjIwMjcKKwkubG9uZwkzODAzMjY2MDg3CisJLmxvbmcJMzE2MzMyODk5MQorCS5sb25nCTQxMDM2MDc3NgorCS5sb25nCTEwNzI3Mjc4NzcKKwkubG9uZwkxMjY5OTkwNjU1CisJLmxvbmcJMTAxMzAyNDQ0NgorCS5sb25nCTM0MDIwMzYwOTkKKwkubG9uZwkxMDcyNzMzNzU4CisJLmxvbmcJNDA1ODg5MzM0CisJLmxvbmcJMTAxNjE1NDIzMgorCS5sb25nCTE4MjgyOTI4NzkKKwkubG9uZwkxMDcyNzM5NjcyCisJLmxvbmcJMTI1NTk1Njc0NworCS5sb25nCTEwMTY2MzY5NzQKKwkubG9uZwk3Mjg5MDk4MTUKKwkubG9uZwkxMDcyNzQ1NjE4CisJLmxvbmcJMzgzOTMwMjI1CisJLmxvbmcJMTAxNjA3ODA0NAorCS5sb25nCTg1Mjc0MjU2MgorCS5sb25nCTEwNzI3NTE1OTYKKwkubG9uZwk2NjcyNTM1ODYKKwkubG9uZwkxMDEwODQyMTM1CisJLmxvbmcJMjk1MjcxMjk4NworCS5sb25nCTEwNzI3NTc2MDYKKwkubG9uZwkzMjkzNDk0NjUxCisJLmxvbmcJMzE2MTE2ODg3NworCS5sb25nCTM0OTA4NjM5NTMKKwkubG9uZwkxMDcyNzYzNjQ5CisJLmxvbmcJOTYwNzk3NDk4CisJLmxvbmcJMzE2Mzk5NzQ1NgorCS5sb25nCTMyMjgzMTYxMDgKKwkubG9uZwkxMDcyNzY5NzI1CisJLmxvbmcJMzAxMDI0MTk5MQorCS5sb25nCTMxNTk0NzEzODAKKwkubG9uZwkyOTMwMzIyOTEyCisJLmxvbmcJMTA3Mjc3NTgzNAorCS5sb25nCTI1OTk0OTk0MjIKKwkubG9uZwkzMTYzNzYyNjIzCisJLmxvbmcJMzM2NjI5MzA3MworCS5sb25nCTEwNzI3ODE5NzYKKwkubG9uZwkzMTE5NDI2MzE0CisJLmxvbmcJMTAxNTE2OTEzMAorCS5sb25nCTEwMTQ4NDU4MTkKKwkubG9uZwkxMDcyNzg4MTUyCisJLmxvbmcJMzExNzkxMDY0NgorCS5sb25nCTMxNjI2MDc2ODEKKwkubG9uZwk5NDg3MzU0NjYKKwkubG9uZwkxMDcyNzk0MzYxCisJLmxvbmcJMzUxNjMzODAyOAorCS5sb25nCTMxNjM2MjM0NTkKKwkubG9uZwkzOTQ5OTcyMzQxCisJLmxvbmcJMTA3MjgwMDYwMworCS5sb25nCTIwNjg0MDg1NDgKKwkubG9uZwkxMDE1OTYyNDQ0CisJLmxvbmcJMjIxNDg3ODQyMAorCS5sb25nCTEwNzI4MDY4ODAKKwkubG9uZwk4OTIyNzAwODcKKwkubG9uZwkzMTY0MTY0OTk4CisJLmxvbmcJODI4OTQ2ODU4CisJLmxvbmcJMTA3MjgxMzE5MQorCS5sb25nCTEwNjQyNDkyCisJLmxvbmcJMTAxNjk4ODAxNAorCS5sb25nCTU4Njk5NTk5NworCS5sb25nCTEwNzI4MTk1MzYKKwkubG9uZwk0MTY2MjM0OAorCS5sb25nCTMxNjM2NzY1NjgKKwkubG9uZwkyMjg4MTU5OTU4CisJLmxvbmcJMTA3MjgyNTkxNQorCS5sb25nCTIxNjkxNDQ0NjkKKwkubG9uZwkxMDE1OTI0NTk3CisJLmxvbmcJMjQ0MDk0NDc5MAorCS5sb25nCTEwNzI4MzIzMjkKKwkubG9uZwkyNDkyNzY5Nzc0CisJLmxvbmcJMTAxNTE5NjAzMAorCS5sb25nCTE4NTMxODY2MTYKKwkubG9uZwkxMDcyODM4Nzc4CisJLmxvbmcJMzA2NjQ5NjM3MQorCS5sb25nCTEwMTY3MDUxNTAKKwkubG9uZwkxMzM3MTA4MDMxCisJLmxvbmcJMTA3Mjg0NTI2MgorCS5sb25nCTMyMDM3MjQ0NTIKKwkubG9uZwkxMDE1NzI2NDIxCisJLmxvbmcJMTcwOTM0MTkxNworCS5sb25nCTEwNzI4NTE3ODEKKwkubG9uZwkyNTcxMTY4MjE3CisJLmxvbmcJMTAxNTIwMTA3NQorCS5sb25nCTM3OTA5NTUzOTMKKwkubG9uZwkxMDcyODU4MzM1CisJLmxvbmcJMjM1Mjk0MjQ2MgorCS5sb25nCTMxNjQyMjg2NjYKKwkubG9uZwk0MTEyNTA2NTkzCisJLmxvbmcJMTA3Mjg2NDkyNQorCS5sb25nCTI5NDczNTUyMjEKKwkubG9uZwkxMDE1NDE5NjI0CisJLmxvbmcJMzUwNDAwMzQ3MgorCS5sb25nCTEwNzI4NzE1NTEKKwkubG9uZwkzNTk0MDAxMDYwCisJLmxvbmcJMzE1ODM3OTIyOAorCS5sb25nCTI3OTk5NjA4NDMKKwkubG9uZwkxMDcyODc4MjEzCisJLmxvbmcJMTQyMzY1NTM4MQorCS5sb25nCTEwMTYwNzA3MjcKKwkubG9uZwkyODM5NDI0ODU0CisJLmxvbmcJMTA3Mjg4NDkxMQorCS5sb25nCTExNzE1OTYxNjMKKwkubG9uZwkxMDE0MDkwMjU1CisJLmxvbmcJMTcxMDMwMjkzCisJLmxvbmcJMTA3Mjg5MTY0NgorCS5sb25nCTM1MjY0NjAxMzIKKwkubG9uZwkxMDE1NDc3MzU0CisJLmxvbmcJNDIzMjg5NDUxMworCS5sb25nCTEwNzI4OTg0MTYKKwkubG9uZwkyMzgzOTM4Njg0CisJLmxvbmcJMTAxNTcxNzA5NQorCS5sb25nCTI5OTI5MDM5MzUKKwkubG9uZwkxMDcyOTA1MjI0CisJLmxvbmcJMjIxODE1NDQwNgorCS5sb25nCTEwMTYyNzY3NjkKKwkubG9uZwkxNjAzNDQ0NzIxCisJLmxvbmcJMTA3MjkxMjA2OQorCS5sb25nCTE1NDg2MzM2NDAKKwkubG9uZwkzMTYzMjQ5OTAyCisJLmxvbmcJOTI2NTkxNDM1CisJLmxvbmcJMTA3MjkxODk1MQorCS5sb25nCTMyMDg4MzM3NjIKKwkubG9uZwkzMTYzOTYyMDkwCisJLmxvbmcJMTgyOTA5OTYyMgorCS5sb25nCTEwNzI5MjU4NzAKKwkubG9uZwkxMDE2NjYxMTgxCisJLmxvbmcJMzE2NDUwOTU4MQorCS5sb25nCTg4NzQ2MzkyNworCS5sb25nCTEwNzI5MzI4MjcKKwkubG9uZwkzNTk2NzQ0MTYzCisJLmxvbmcJMzE2MTg0Mjc0MgorCS5sb25nCTMyNzI4NDU1NDEKKwkubG9uZwkxMDcyOTM5ODIxCisJLmxvbmcJOTI4ODUyNDE5CisJLmxvbmcJMzE2NDUzNjgyNAorCS5sb25nCTEyNzYyNjE0MTAKKwkubG9uZwkxMDcyOTQ2ODU0CisJLmxvbmcJMzAwOTgxOTQ4CisJLmxvbmcJMTAxNTczMjc0NQorCS5sb25nCTc4NDEzODUyCisJLmxvbmcJMTA3Mjk1MzkyNQorCS5sb25nCTQxODMyMjY4NjcKKwkubG9uZwkzMTY0MDY1ODI3CisJLmxvbmcJNTY5ODQ3MzM4CisJLmxvbmcJMTA3Mjk2MTAzNAorCS5sb25nCTQ3Mjk0NTI3MgorCS5sb25nCTMxNjAzMzkzMDUKKwkubG9uZwkzNjQ1OTQxOTExCisJLmxvbmcJMTA3Mjk2ODE4MQorCS5sb25nCTM4MTQ2ODUwODEKKwkubG9uZwkzMTYyNjIxOTE3CisJLmxvbmcJMTYxNzAwNDg0NQorCS5sb25nCTEwNzI5NzUzNjgKKwkubG9uZwk4MjgwNDk0NAorCS5sb25nCTEwMTEzOTEzNTQKKwkubG9uZwkzOTc4MTAwODIzCisJLmxvbmcJMTA3Mjk4MjU5MworCS5sb25nCTM1MTMwMjcxOTAKKwkubG9uZwkxMDE2ODk0NTM5CisJLmxvbmcJMzA0OTM0MDExMgorCS5sb25nCTEwNzI5ODk4NTgKKwkubG9uZwkzMDYyOTE1ODI0CisJLmxvbmcJMTAxNDIxOTE3MQorCS5sb25nCTQwNDA2NzYzMTgKKwkubG9uZwkxMDcyOTk3MTYyCisJLmxvbmcJNDA5MDYwOTIzOAorCS5sb25nCTEwMTY3MTIwMzQKKwkubG9uZwkzNTc3MDk2NzQzCisJLmxvbmcJMTA3MzAwNDUwNgorCS5sb25nCTI5NTE0OTY0MTgKKwkubG9uZwkxMDE0ODQyMjYzCisJLmxvbmcJMjU4MzU1MTI0NQorCS5sb25nCTEwNzMwMTE4OTAKKwkubG9uZwkzMTYxMDk0MTk1CisJLmxvbmcJMTAxNjY1NTA2NworCS5sb25nCTE5OTAwMTIwNzEKKwkubG9uZwkxMDczMDE5MzE0CisJLmxvbmcJMzUyOTA3MDU2MworCS5sb25nCTMxNjM4NjE3NjkKKwkubG9uZwkyNzMxNTAxMTIyCisJLmxvbmcJMTA3MzAyNjc3OAorCS5sb25nCTE3NzQwMzE4NTUKKwkubG9uZwkzMTYzNTE4NTk3CisJLmxvbmcJMTQ1MzE1MDA4MgorCS5sb25nCTEwNzMwMzQyODMKKwkubG9uZwk0OTgxNTQ2NjkKKwkubG9uZwkzMTYyNTM2NjM4CisJLmxvbmcJMzM5NTEyOTg3MQorCS5sb25nCTEwNzMwNDE4MjgKKwkubG9uZwk0MDI1MzQ1NDM1CisJLmxvbmcJMzE2MzM4Mzk2NAorCS5sb25nCTkxNzg0MTg4MgorCS5sb25nCTEwNzMwNDk0MTUKKwkubG9uZwkxODcxNTU2NQorCS5sb25nCTEwMTY3MDc4ODQKKwkubG9uZwkzNTY2NzE2OTI1CisJLmxvbmcJMTA3MzA1NzA0MgorCS5sb25nCTE1MzY4MjY4NTYKKwkubG9uZwkxMDE1MTkxMDA5CisJLmxvbmcJMzcxMjUwNDg3MworCS5sb25nCTEwNzMwNjQ3MTEKKwkubG9uZwk4ODQ5MTk0OQorCS5sb25nCTEwMTY0NzYyMzYKKwkubG9uZwkyMzIxMTA2NjE1CisJLmxvbmcJMTA3MzA3MjQyMgorCS5sb25nCTIxNzExNzY2MTAKKwkubG9uZwkxMDEwNTg0MzQ3CisJLmxvbmcJMzYzNjY3Nzg0CisJLmxvbmcJMTA3MzA4MDE3NQorCS5sb25nCTgxMzc1Mzk1MAorCS5sb25nCTEwMTY4MzM3ODUKKwkubG9uZwkzMTExNTc0NTM3CisJLmxvbmcJMTA3MzA4Nzk2OQorCS5sb25nCTI2MDYxNjE0NzkKKwkubG9uZwkzMTYzODA4MzIyCisJLmxvbmcJMjk1NjYxMjk5NworCS5sb25nCTEwNzMwOTU4MDYKKwkubG9uZwkyMTE4MTY5NzUxCisJLmxvbmcJMzE2Mzc4NDEyOQorCS5sb25nCTg4NTgzNDUyOAorCS5sb25nCTEwNzMxMDM2ODYKKwkubG9uZwkxOTczMjU4NTQ3CisJLmxvbmcJMzE2MzMxMDE0MAorCS5sb25nCTIxODY2MTczODEKKwkubG9uZwkxMDczMTExNjA4CisJLmxvbmcJMjI3MDc2NDA4NAorCS5sb25nCTMxNjQzMjEyODkKKwkubG9uZwkzNTYxNzkzOTA3CisJLmxvbmcJMTA3MzExOTU3MworCS5sb25nCTExNTcwNTQwNTMKKwkubG9uZwkxMDEyOTM4OTI2CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzMxMjc1ODIKKwkubG9uZwkzMzA0NTgxOTgKKwkubG9uZwkzMTY0MzMxMzE2CisJLmxvbmcJMTk2MzcxMTE2NworCS5sb25nCTEwNzMxMzU2MzQKKwkubG9uZwkxNzQ0NzY3NzU3CisJLmxvbmcJMzE2MTYyMjg3MAorCS5sb25nCTEwMTMyNTg3OTkKKwkubG9uZwkxMDczMTQzNzMwCisJLmxvbmcJMTc0ODc5NzYxMQorCS5sb25nCTMxNjExNzc2NTgKKwkubG9uZwk0MTgyODczMjIwCisJLmxvbmcJMTA3MzE1MTg2OQorCS5sb25nCTYyOTU0MjY0NgorCS5sb25nCTMxNjMwNDQ4NzkKKwkubG9uZwkzOTA3ODA1MDQ0CisJLmxvbmcJMTA3MzE2MDA1MworCS5sb25nCTIyNTcwOTEyMjUKKwkubG9uZwkzMTYyNTk4OTgzCisJLmxvbmcJMTIxODgwNjEzMgorCS5sb25nCTEwNzMxNjgyODIKKwkubG9uZwkxODE4NjEzMDUyCisJLmxvbmcJMzE2MzU5NzAxNworCS5sb25nCTE0NDcxOTI1MjEKKwkubG9uZwkxMDczMTc2NTU1CisJLmxvbmcJMTQ2Mjg1NzE3MQorCS5sb25nCTMxNjM1NjMwOTcKKwkubG9uZwkxMzM5OTcyOTI3CisJLmxvbmcJMTA3MzE4NDg3MworCS5sb25nCTE2NzkwODkwOQorCS5sb25nCTEwMTY2MjA3MjgKKwkubG9uZwkxOTQ0NzgxMTkxCisJLmxvbmcJMTA3MzE5MzIzNgorCS5sb25nCTM5OTMyNzg3NjcKKwkubG9uZwkzMTYyNzcyODU1CisJLmxvbmcJMTk5NzI0MDIKKwkubG9uZwkxMDczMjAxNjQ1CisJLmxvbmcJMzUwNzg5OTg2MgorCS5sb25nCTEwMTcwNTc4NjgKKwkubG9uZwk5MTk1NTU2ODIKKwkubG9uZwkxMDczMjEwMDk5CisJLmxvbmcJMzEyMTk2OTUzNAorCS5sb25nCTEwMTM5OTY4MDIKKwkubG9uZwkxNDEzMzU2MDUwCisJLmxvbmcJMTA3MzIxODU5OQorCS5sb25nCTE2NTEzNDkyOTEKKwkubG9uZwkzMTYzNzE2NzQyCisJLmxvbmcJMjU3MTk0NzUzOQorCS5sb25nCTEwNzMyMjcxNDUKKwkubG9uZwkzNTU4MTU5MDY0CisJLmxvbmcJMzE2NDQyNTI0NQorCS5sb25nCTExNzY3NDk5OTcKKwkubG9uZwkxMDczMjM1NzM4CisJLmxvbmcJMjczODk5ODc3OQorCS5sb25nCTMxNjMwODQ0MjAKKwkubG9uZwkyNjA0OTYyNTQxCisJLmxvbmcJMTA3MzI0NDM3NworCS5sb25nCTI2MTQ0MjUyNzQKKwkubG9uZwkzMTY0NTg3NzY4CisJLmxvbmcJMzY0OTcyNjEwNQorCS5sb25nCTEwNzMyNTMwNjMKKwkubG9uZwk0MDg1MDM2MzQ2CisJLmxvbmcJMTAxNjY5ODA1MAorCS5sb25nCTExMTAwODk5NDcKKwkubG9uZwkxMDczMjYxNzk3CisJLmxvbmcJMTQ1MTY0MTYzOQorCS5sb25nCTEwMTY1MjMyNDkKKwkubG9uZwkzODA5NzgzMTYKKwkubG9uZwkxMDczMjcwNTc4CisJLmxvbmcJODU0MTg4OTcwCisJLmxvbmcJMzE2MTUxMTI2MgorCS5sb25nCTI1NjgzMjA4MjIKKwkubG9uZwkxMDczMjc5NDA2CisJLmxvbmcJMjczMjgyNDQyOAorCS5sb25nCTEwMTU0MDE0OTEKKwkubG9uZwkxOTQxMTc1NzQKKwkubG9uZwkxMDczMjg4MjgzCisJLmxvbmcJNzc3NTI4NjEyCisJLmxvbmcJMzE2NDQ2MDY2NQorCS5sb25nCTI5NjYyNzU1NTcKKwkubG9uZwkxMDczMjk3MjA3CisJLmxvbmcJMjE3NjE1NTMyNAorCS5sb25nCTMxNjA4OTEzMzUKKwkubG9uZwkzNDE4OTAzMDU1CisJLmxvbmcJMTA3MzMwNjE4MAorCS5sb25nCTI1Mjc0NTczMzcKKwkubG9uZwkzMTYxODY5MTgwCisJLmxvbmcJMjY4MjE0NjM4NAorCS5sb25nCTEwNzMzMTUyMDIKKwkubG9uZwkyMDgyMTc4NTEzCisJLmxvbmcJMzE2NDQxMTk5NQorCS5sb25nCTE4OTIyODg0NDIKKwkubG9uZwkxMDczMzI0MjczCisJLmxvbmcJMjQ0NjI1NTY2NgorCS5sb25nCTMxNjM2NDg5NTcKKwkubG9uZwkyMTkxNzgyMDMyCisJLmxvbmcJMTA3MzMzMzM5MworCS5sb25nCTI5NjAyNTc3MjYKKwkubG9uZwkxMDE0NzkxMjM4CisJLmxvbmcJNDM0MzE2MDY3CisJLmxvbmcJMTA3MzM0MjU2MworCS5sb25nCTIwMjgzNTg3NjYKKwkubG9uZwkxMDE0NTA2Njk4CisJLmxvbmcJMjA2OTc1MTE0MQorCS5sb25nCTEwNzMzNTE3ODIKKwkubG9uZwkxNTYyMTcwNjc1CisJLmxvbmcJMzE2Mzc3MzI1NworCS5sb25nCTM5NjQyODQyMTEKKwkubG9uZwkxMDczMzYxMDUxCisJLmxvbmcJMjExMTU4MzkxNQorCS5sb25nCTEwMTY0NzU3NDAKKwkubG9uZwkyOTkwNDE3MjQ1CisJLmxvbmcJMTA3MzM3MDM3MQorCS5sb25nCTM2ODM0Njc3NDUKKwkubG9uZwkzMTY0NDE3OTAyCisJLmxvbmcJMzIxOTU4NzQ0CisJLmxvbmcJMTA3MzM3OTc0MgorCS5sb25nCTM0MDE5MzM3NjcKKwkubG9uZwkxMDE2ODQzMTM0CisJLmxvbmcJMTQzNDA1ODE3NQorCS5sb25nCTEwNzMzODkxNjMKKwkubG9uZwkyNTExMzMyMzMKKwkubG9uZwkxMDE2MTM0MzQ1CisJLmxvbmcJMzIxODMzODY4MgorCS5sb25nCTEwNzMzOTg2MzUKKwkubG9uZwkzNDA0MTY0MzA0CisJLmxvbmcJMzE2MzUyNTY4NAorCS5sb25nCTI1NzI4NjY0NzcKKwkubG9uZwkxMDczNDA4MTU5CisJLmxvbmcJODc4NTYyNDMzCisJLmxvbmcJMTAxNjU3MDMxNworCS5sb25nCTY5NzE1MzEyNgorCS5sb25nCTEwNzM0MTc3MzUKKwkubG9uZwkxMjgzNTE1NDI5CisJLmxvbmcJMzE2NDMzMTc2NQorCS5sb25nCTMwOTIxOTA3MTUKKwkubG9uZwkxMDczNDI3MzYyCisJLmxvbmcJODE0MDEyMTY4CisJLmxvbmcJMzE2MDU3MTk5OAorCS5sb25nCTIzODA2MTgwNDIKKwkubG9uZwkxMDczNDM3MDQyCisJLmxvbmcJMzE0OTU1NzIxOQorCS5sb25nCTMxNjQzNjkzNzUKKwkubG9uZwk0MDc2NTU5OTQzCisJLmxvbmcJMTA3MzQ0Njc3NAorCS5sb25nCTIxMTk0NzgzMzEKKwkubG9uZwkzMTYxODA2OTI3CisJLmxvbmcJODE1ODU5Mjc0CisJLmxvbmcJMTA3MzQ1NjU2MAorCS5sb25nCTI0MDM5NjU5MAorCS5sb25nCTMxNjQ1MzYwMTkKKwkubG9uZwkyNDIwODgzOTIyCisJLmxvbmcJMTA3MzQ2NjM5OAorCS5sb25nCTIwNDk4MTAwNTIKKwkubG9uZwkxMDE1MTY4NDY0CisJLmxvbmcJMTU0MDgyNDU4NQorCS5sb25nCTEwNzM0NzYyOTAKKwkubG9uZwkxMDY0MDE3MDExCisJLmxvbmcJMzE2NDUzNjI2NgorCS5sb25nCTM3MTY1MDIxNzIKKwkubG9uZwkxMDczNDg2MjM1CisJLmxvbmcJMjMwMzc0MDEyNQorCS5sb25nCTEwMTUwOTEzMDEKKwkubG9uZwkxNjEwNjAwNTcwCisJLmxvbmcJMTA3MzQ5NjIzNQorCS5sb25nCTM3NjY3MzIyOTgKKwkubG9uZwkxMDE2ODA4NzU5CisJLmxvbmcJNzc3NTA3MTQ3CisJLmxvbmcJMTA3MzUwNjI4OQorCS5sb25nCTQyODI5MjQyMDUKKwkubG9uZwkxMDE2MjM2MTA5CisJLmxvbmcJMjQ4MzQ4MDUwMQorCS5sb25nCTEwNzM1MTYzOTcKKwkubG9uZwkxMjE2MzcxNzgwCisJLmxvbmcJMTAxNDA4Mjc0OAorCS5sb25nCTM3MDY2ODc1OTMKKwkubG9uZwkxMDczNTI2NTYwCisJLmxvbmcJMzUyMTcyNjk0MAorCS5sb25nCTEwMTQzMDE2NDMKKwkubG9uZwkxNDMyMjA4Mzc4CisJLmxvbmcJMTA3MzUzNjc3OQorCS5sb25nCTE0MDEwNjg5MTQKKwkubG9uZwkzMTYzNDEyNTM5CisJLmxvbmcJMTI0MjAwNzkzMgorCS5sb25nCTEwNzM1NDcwNTMKKwkubG9uZwkxMTMyMDM0NzE2CisJLmxvbmcJMzE2NDM4ODQwNworCS5sb25nCTEzNTEwNTAxMAorCS5sb25nCTEwNzM1NTczODMKKwkubG9uZwkxOTA2MTQ4NzI4CisJLmxvbmcJMzE2NDQyNDMxNQorCS5sb25nCTM3MDc0NzkxNzUKKwkubG9uZwkxMDczNTY3NzY4CisJLmxvbmcJMzYxMzA3OTMwMworCS5sb25nCTEwMTUyMTMzMTQKKwkubG9uZwkzODIzMDUxNzYKKwkubG9uZwkxMDczNTc4MjExCisJLmxvbmcJMjM0NzYyMjM3NgorCS5sb25nCTMxNjM2MjcyMDEKKwkubG9uZwk2NDY5Njk2NQorCS5sb25nCTEwNzM1ODg3MTAKKwkubG9uZwkxNzY4Nzk3NDkwCisJLmxvbmcJMTAxNjg2NTUzNgorCS5sb25nCTQwNzY5NzUyMDAKKwkubG9uZwkxMDczNTk5MjY1CisJLmxvbmcJMjAyOTAwMDg5OQorCS5sb25nCTEwMTYyNTcxMTEKKwkubG9uZwk4NjM3Mzg3MTkKKwkubG9uZwkxMDczNjA5ODc5CisJLmxvbmcJMTMyNjk5MjIyMAorCS5sb25nCTMxNjM2NjE3NzMKKwkubG9uZwkzNTE2NDE4OTcKKwkubG9uZwkxMDczNjIwNTUwCisJLmxvbmcJMjE3MjI2MTUyNgorCS5sb25nCTMxNjQwNTkxNzUKKwkubG9uZwkzODg0NjYyNzc0CisJLmxvbmcJMTA3MzYzMTI3OAorCS5sb25nCTIxNTg2MTE1OTkKKwkubG9uZwkxMDE1MjU4NzYxCisJLmxvbmcJNDIyNDE0MjQ2NworCS5sb25nCTEwNzM2NDIwNjUKKwkubG9uZwkzMzg5ODIwMzg2CisJLmxvbmcJMTAxNjI1NTc3OAorCS5sb25nCTI3Mjg2OTM5NzgKKwkubG9uZwkxMDczNjUyOTExCisJLmxvbmcJMzk2MTA5OTcxCisJLmxvbmcJMzE2NDUxMTI2NworCS5sb25nCTc2NDMwNzQ0MQorCS5sb25nCTEwNzM2NjM4MTYKKwkubG9uZwkzMDIxMDU3NDIwCisJLmxvbmcJMzE2NDM3ODA5OQorCS5sb25nCTM5OTkzNTc0NzkKKwkubG9uZwkxMDczNjc0Nzc5CisJLmxvbmcJMjI1ODk0MTYxNgorCS5sb25nCTEwMTY5NzMzMDAKKwkubG9uZwk5Mjk4MDY5OTkKKwkubG9uZwkxMDczNjg1ODAzCisJLmxvbmcJMzIwNTMzNjY0MworCS5sb25nCTEwMTYzMDgxMzMKKwkubG9uZwkxNTMzOTUzMzQ0CisJLmxvbmcJMTA3MzY5Njg4NgorCS5sb25nCTc2OTE3MTg1MQorCS5sb25nCTEwMTY3MTQyMDkKKwkubG9uZwkyOTEyNzMwNjQ0CisJLmxvbmcJMTA3MzcwODAyOQorCS5sb25nCTM0OTAwNjc3MjIKKwkubG9uZwkzMTY0NDUzNjUwCisJLmxvbmcJMjE3NDY1MjYzMgorCS5sb25nCTEwNzM3MTkyMzMKKwkubG9uZwk0MDg3NzE0NTkwCisJLmxvbmcJMTAxNTQ5ODgzNQorCS5sb25nCTczMDgyMTEwNQorCS5sb25nCTEwNzM3MzA0OTgKKwkubG9uZwkyNTIzMjMyNzQzCisJLmxvbmcJMTAxMzExNTc2NAorCS50eXBlCVQyZixAb2JqZWN0CisJLnNpemUJVDJmLDIwNDgKKwkuYWxpZ24gMTYKK1QyX25lZ19mOgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk3MzA4MjExMDUKKwkubG9uZwkxMDcyNjgxOTIyCisJLmxvbmcJMjUyMzIzMjc0MworCS5sb25nCTEwMTIwNjcxODgKKwkubG9uZwkyMTc0NjUyNjMyCisJLmxvbmcJMTA3MjY3MDY1NworCS5sb25nCTQwODc3MTQ1OTAKKwkubG9uZwkxMDE0NDUwMjU5CisJLmxvbmcJMjkxMjczMDY0NAorCS5sb25nCTEwNzI2NTk0NTMKKwkubG9uZwkzNDkwMDY3NzIyCisJLmxvbmcJMzE2MzQwNTA3NAorCS5sb25nCTE1MzM5NTMzNDQKKwkubG9uZwkxMDcyNjQ4MzEwCisJLmxvbmcJNzY5MTcxODUxCisJLmxvbmcJMTAxNTY2NTYzMworCS5sb25nCTkyOTgwNjk5OQorCS5sb25nCTEwNzI2MzcyMjcKKwkubG9uZwkzMjA1MzM2NjQzCisJLmxvbmcJMTAxNTI1OTU1NworCS5sb25nCTM5OTkzNTc0NzkKKwkubG9uZwkxMDcyNjI2MjAzCisJLmxvbmcJMjI1ODk0MTYxNgorCS5sb25nCTEwMTU5MjQ3MjQKKwkubG9uZwk3NjQzMDc0NDEKKwkubG9uZwkxMDcyNjE1MjQwCisJLmxvbmcJMzAyMTA1NzQyMAorCS5sb25nCTMxNjMzMjk1MjMKKwkubG9uZwkyNzI4NjkzOTc4CisJLmxvbmcJMTA3MjYwNDMzNQorCS5sb25nCTM5NjEwOTk3MQorCS5sb25nCTMxNjM0NjI2OTEKKwkubG9uZwk0MjI0MTQyNDY3CisJLmxvbmcJMTA3MjU5MzQ4OQorCS5sb25nCTMzODk4MjAzODYKKwkubG9uZwkxMDE1MjA3MjAyCisJLmxvbmcJMzg4NDY2Mjc3NAorCS5sb25nCTEwNzI1ODI3MDIKKwkubG9uZwkyMTU4NjExNTk5CisJLmxvbmcJMTAxNDIxMDE4NQorCS5sb25nCTM1MTY0MTg5NworCS5sb25nCTEwNzI1NzE5NzQKKwkubG9uZwkyMTcyMjYxNTI2CisJLmxvbmcJMzE2MzAxMDU5OQorCS5sb25nCTg2MzczODcxOQorCS5sb25nCTEwNzI1NjEzMDMKKwkubG9uZwkxMzI2OTkyMjIwCisJLmxvbmcJMzE2MjYxMzE5NworCS5sb25nCTQwNzY5NzUyMDAKKwkubG9uZwkxMDcyNTUwNjg5CisJLmxvbmcJMjAyOTAwMDg5OQorCS5sb25nCTEwMTUyMDg1MzUKKwkubG9uZwk2NDY5Njk2NQorCS5sb25nCTEwNzI1NDAxMzQKKwkubG9uZwkxNzY4Nzk3NDkwCisJLmxvbmcJMTAxNTgxNjk2MAorCS5sb25nCTM4MjMwNTE3NgorCS5sb25nCTEwNzI1Mjk2MzUKKwkubG9uZwkyMzQ3NjIyMzc2CisJLmxvbmcJMzE2MjU3ODYyNQorCS5sb25nCTM3MDc0NzkxNzUKKwkubG9uZwkxMDcyNTE5MTkyCisJLmxvbmcJMzYxMzA3OTMwMworCS5sb25nCTEwMTQxNjQ3MzgKKwkubG9uZwkxMzUxMDUwMTAKKwkubG9uZwkxMDcyNTA4ODA3CisJLmxvbmcJMTkwNjE0ODcyOAorCS5sb25nCTMxNjMzNzU3MzkKKwkubG9uZwkxMjQyMDA3OTMyCisJLmxvbmcJMTA3MjQ5ODQ3NworCS5sb25nCTExMzIwMzQ3MTYKKwkubG9uZwkzMTYzMzM5ODMxCisJLmxvbmcJMTQzMjIwODM3OAorCS5sb25nCTEwNzI0ODgyMDMKKwkubG9uZwkxNDAxMDY4OTE0CisJLmxvbmcJMzE2MjM2Mzk2MworCS5sb25nCTM3MDY2ODc1OTMKKwkubG9uZwkxMDcyNDc3OTg0CisJLmxvbmcJMzUyMTcyNjk0MAorCS5sb25nCTEwMTMyNTMwNjcKKwkubG9uZwkyNDgzNDgwNTAxCisJLmxvbmcJMTA3MjQ2NzgyMQorCS5sb25nCTEyMTYzNzE3ODAKKwkubG9uZwkxMDEzMDM0MTcyCisJLmxvbmcJNzc3NTA3MTQ3CisJLmxvbmcJMTA3MjQ1NzcxMworCS5sb25nCTQyODI5MjQyMDUKKwkubG9uZwkxMDE1MTg3NTMzCisJLmxvbmcJMTYxMDYwMDU3MAorCS5sb25nCTEwNzI0NDc2NTkKKwkubG9uZwkzNzY2NzMyMjk4CisJLmxvbmcJMTAxNTc2MDE4MworCS5sb25nCTM3MTY1MDIxNzIKKwkubG9uZwkxMDcyNDM3NjU5CisJLmxvbmcJMjMwMzc0MDEyNQorCS5sb25nCTEwMTQwNDI3MjUKKwkubG9uZwkxNTQwODI0NTg1CisJLmxvbmcJMTA3MjQyNzcxNAorCS5sb25nCTEwNjQwMTcwMTEKKwkubG9uZwkzMTYzNDg3NjkwCisJLmxvbmcJMjQyMDg4MzkyMgorCS5sb25nCTEwNzI0MTc4MjIKKwkubG9uZwkyMDQ5ODEwMDUyCisJLmxvbmcJMTAxNDExOTg4OAorCS5sb25nCTgxNTg1OTI3NAorCS5sb25nCTEwNzI0MDc5ODQKKwkubG9uZwkyNDAzOTY1OTAKKwkubG9uZwkzMTYzNDg3NDQzCisJLmxvbmcJNDA3NjU1OTk0MworCS5sb25nCTEwNzIzOTgxOTgKKwkubG9uZwkyMTE5NDc4MzMxCisJLmxvbmcJMzE2MDc1ODM1MQorCS5sb25nCTIzODA2MTgwNDIKKwkubG9uZwkxMDcyMzg4NDY2CisJLmxvbmcJMzE0OTU1NzIxOQorCS5sb25nCTMxNjMzMjA3OTkKKwkubG9uZwkzMDkyMTkwNzE1CisJLmxvbmcJMTA3MjM3ODc4NgorCS5sb25nCTgxNDAxMjE2OAorCS5sb25nCTMxNTk1MjM0MjIKKwkubG9uZwk2OTcxNTMxMjYKKwkubG9uZwkxMDcyMzY5MTU5CisJLmxvbmcJMTI4MzUxNTQyOQorCS5sb25nCTMxNjMyODMxODkKKwkubG9uZwkyNTcyODY2NDc3CisJLmxvbmcJMTA3MjM1OTU4MworCS5sb25nCTg3ODU2MjQzMworCS5sb25nCTEwMTU1MjE3NDEKKwkubG9uZwkzMjE4MzM4NjgyCisJLmxvbmcJMTA3MjM1MDA1OQorCS5sb25nCTM0MDQxNjQzMDQKKwkubG9uZwkzMTYyNDc3MTA4CisJLmxvbmcJMTQzNDA1ODE3NQorCS5sb25nCTEwNzIzNDA1ODcKKwkubG9uZwkyNTExMzMyMzMKKwkubG9uZwkxMDE1MDg1NzY5CisJLmxvbmcJMzIxOTU4NzQ0CisJLmxvbmcJMTA3MjMzMTE2NgorCS5sb25nCTM0MDE5MzM3NjcKKwkubG9uZwkxMDE1Nzk0NTU4CisJLmxvbmcJMjk5MDQxNzI0NQorCS5sb25nCTEwNzIzMjE3OTUKKwkubG9uZwkzNjgzNDY3NzQ1CisJLmxvbmcJMzE2MzM2OTMyNgorCS5sb25nCTM5NjQyODQyMTEKKwkubG9uZwkxMDcyMzEyNDc1CisJLmxvbmcJMjExMTU4MzkxNQorCS5sb25nCTEwMTU0MjcxNjQKKwkubG9uZwkyMDY5NzUxMTQxCisJLmxvbmcJMTA3MjMwMzIwNgorCS5sb25nCTE1NjIxNzA2NzUKKwkubG9uZwkzMTYyNzI0NjgxCisJLmxvbmcJNDM0MzE2MDY3CisJLmxvbmcJMTA3MjI5Mzk4NworCS5sb25nCTIwMjgzNTg3NjYKKwkubG9uZwkxMDEzNDU4MTIyCisJLmxvbmcJMjE5MTc4MjAzMgorCS5sb25nCTEwNzIyODQ4MTcKKwkubG9uZwkyOTYwMjU3NzI2CisJLmxvbmcJMTAxMzc0MjY2MgorCS5sb25nCTE4OTIyODg0NDIKKwkubG9uZwkxMDcyMjc1Njk3CisJLmxvbmcJMjQ0NjI1NTY2NgorCS5sb25nCTMxNjI2MDAzODEKKwkubG9uZwkyNjgyMTQ2Mzg0CisJLmxvbmcJMTA3MjI2NjYyNgorCS5sb25nCTIwODIxNzg1MTMKKwkubG9uZwkzMTYzMzYzNDE5CisJLmxvbmcJMzQxODkwMzA1NQorCS5sb25nCTEwNzIyNTc2MDQKKwkubG9uZwkyNTI3NDU3MzM3CisJLmxvbmcJMzE2MDgyMDYwNAorCS5sb25nCTI5NjYyNzU1NTcKKwkubG9uZwkxMDcyMjQ4NjMxCisJLmxvbmcJMjE3NjE1NTMyNAorCS5sb25nCTMxNTk4NDI3NTkKKwkubG9uZwkxOTQxMTc1NzQKKwkubG9uZwkxMDcyMjM5NzA3CisJLmxvbmcJNzc3NTI4NjEyCisJLmxvbmcJMzE2MzQxMjA4OQorCS5sb25nCTI1NjgzMjA4MjIKKwkubG9uZwkxMDcyMjMwODMwCisJLmxvbmcJMjczMjgyNDQyOAorCS5sb25nCTEwMTQzNTI5MTUKKwkubG9uZwkzODA5NzgzMTYKKwkubG9uZwkxMDcyMjIyMDAyCisJLmxvbmcJODU0MTg4OTcwCisJLmxvbmcJMzE2MDQ2MjY4NgorCS5sb25nCTExMTAwODk5NDcKKwkubG9uZwkxMDcyMjEzMjIxCisJLmxvbmcJMTQ1MTY0MTYzOQorCS5sb25nCTEwMTU0NzQ2NzMKKwkubG9uZwkzNjQ5NzI2MTA1CisJLmxvbmcJMTA3MjIwNDQ4NworCS5sb25nCTQwODUwMzYzNDYKKwkubG9uZwkxMDE1NjQ5NDc0CisJLmxvbmcJMjYwNDk2MjU0MQorCS5sb25nCTEwNzIxOTU4MDEKKwkubG9uZwkyNjE0NDI1Mjc0CisJLmxvbmcJMzE2MzUzOTE5MgorCS5sb25nCTExNzY3NDk5OTcKKwkubG9uZwkxMDcyMTg3MTYyCisJLmxvbmcJMjczODk5ODc3OQorCS5sb25nCTMxNjIwMzU4NDQKKwkubG9uZwkyNTcxOTQ3NTM5CisJLmxvbmcJMTA3MjE3ODU2OQorCS5sb25nCTM1NTgxNTkwNjQKKwkubG9uZwkzMTYzMzc2NjY5CisJLmxvbmcJMTQxMzM1NjA1MAorCS5sb25nCTEwNzIxNzAwMjMKKwkubG9uZwkxNjUxMzQ5MjkxCisJLmxvbmcJMzE2MjY2ODE2NgorCS5sb25nCTkxOTU1NTY4MgorCS5sb25nCTEwNzIxNjE1MjMKKwkubG9uZwkzMTIxOTY5NTM0CisJLmxvbmcJMTAxMjk0ODIyNgorCS5sb25nCTE5OTcyNDAyCisJLmxvbmcJMTA3MjE1MzA2OQorCS5sb25nCTM1MDc4OTk4NjIKKwkubG9uZwkxMDE2MDA5MjkyCisJLmxvbmcJMTk0NDc4MTE5MQorCS5sb25nCTEwNzIxNDQ2NjAKKwkubG9uZwkzOTkzMjc4NzY3CisJLmxvbmcJMzE2MTcyNDI3OQorCS5sb25nCTEzMzk5NzI5MjcKKwkubG9uZwkxMDcyMTM2Mjk3CisJLmxvbmcJMTY3OTA4OTA5CisJLmxvbmcJMTAxNTU3MjE1MgorCS5sb25nCTE0NDcxOTI1MjEKKwkubG9uZwkxMDcyMTI3OTc5CisJLmxvbmcJMTQ2Mjg1NzE3MQorCS5sb25nCTMxNjI1MTQ1MjEKKwkubG9uZwkxMjE4ODA2MTMyCisJLmxvbmcJMTA3MjExOTcwNgorCS5sb25nCTE4MTg2MTMwNTIKKwkubG9uZwkzMTYyNTQ4NDQxCisJLmxvbmcJMzkwNzgwNTA0NAorCS5sb25nCTEwNzIxMTE0NzcKKwkubG9uZwkyMjU3MDkxMjI1CisJLmxvbmcJMzE2MTU1MDQwNworCS5sb25nCTQxODI4NzMyMjAKKwkubG9uZwkxMDcyMTAzMjkzCisJLmxvbmcJNjI5NTQyNjQ2CisJLmxvbmcJMzE2MTk5NjMwMworCS5sb25nCTEwMTMyNTg3OTkKKwkubG9uZwkxMDcyMDk1MTU0CisJLmxvbmcJMTc0ODc5NzYxMQorCS5sb25nCTMxNjAxMjkwODIKKwkubG9uZwkxOTYzNzExMTY3CisJLmxvbmcJMTA3MjA4NzA1OAorCS5sb25nCTE3NDQ3Njc3NTcKKwkubG9uZwkzMTYwNTc0Mjk0CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzIwNzkwMDYKKwkubG9uZwkzMzA0NTgxOTgKKwkubG9uZwkzMTYzMjgyNzQwCisJLmxvbmcJMzU2MTc5MzkwNworCS5sb25nCTEwNzIwNzA5OTcKKwkubG9uZwkxMTU3MDU0MDUzCisJLmxvbmcJMTAxMTg5MDM1MAorCS5sb25nCTIxODY2MTczODEKKwkubG9uZwkxMDcyMDYzMDMyCisJLmxvbmcJMjI3MDc2NDA4NAorCS5sb25nCTMxNjMyNzI3MTMKKwkubG9uZwk4ODU4MzQ1MjgKKwkubG9uZwkxMDcyMDU1MTEwCisJLmxvbmcJMTk3MzI1ODU0NworCS5sb25nCTMxNjIyNjE1NjQKKwkubG9uZwkyOTU2NjEyOTk3CisJLmxvbmcJMTA3MjA0NzIzMAorCS5sb25nCTIxMTgxNjk3NTEKKwkubG9uZwkzMTYyNzM1NTUzCisJLmxvbmcJMzExMTU3NDUzNworCS5sb25nCTEwNzIwMzkzOTMKKwkubG9uZwkyNjA2MTYxNDc5CisJLmxvbmcJMzE2Mjc1OTc0NgorCS5sb25nCTM2MzY2Nzc4NAorCS5sb25nCTEwNzIwMzE1OTkKKwkubG9uZwk4MTM3NTM5NTAKKwkubG9uZwkxMDE1Nzg1MjA5CisJLmxvbmcJMjMyMTEwNjYxNQorCS5sb25nCTEwNzIwMjM4NDYKKwkubG9uZwkyMTcxMTc2NjEwCisJLmxvbmcJMTAwOTUzNTc3MQorCS5sb25nCTM3MTI1MDQ4NzMKKwkubG9uZwkxMDcyMDE2MTM1CisJLmxvbmcJODg0OTE5NDkKKwkubG9uZwkxMDE1NDI3NjYwCisJLmxvbmcJMzU2NjcxNjkyNQorCS5sb25nCTEwNzIwMDg0NjYKKwkubG9uZwkxNTM2ODI2ODU2CisJLmxvbmcJMTAxNDE0MjQzMworCS5sb25nCTkxNzg0MTg4MgorCS5sb25nCTEwNzIwMDA4MzkKKwkubG9uZwkxODcxNTU2NQorCS5sb25nCTEwMTU2NTkzMDgKKwkubG9uZwkzMzk1MTI5ODcxCisJLmxvbmcJMTA3MTk5MzI1MgorCS5sb25nCTQwMjUzNDU0MzUKKwkubG9uZwkzMTYyMzM1Mzg4CisJLmxvbmcJMTQ1MzE1MDA4MgorCS5sb25nCTEwNzE5ODU3MDcKKwkubG9uZwk0OTgxNTQ2NjkKKwkubG9uZwkzMTYxNDg4MDYyCisJLmxvbmcJMjczMTUwMTEyMgorCS5sb25nCTEwNzE5NzgyMDIKKwkubG9uZwkxNzc0MDMxODU1CisJLmxvbmcJMzE2MjQ3MDAyMQorCS5sb25nCTE5OTAwMTIwNzEKKwkubG9uZwkxMDcxOTcwNzM4CisJLmxvbmcJMzUyOTA3MDU2MworCS5sb25nCTMxNjI4MTMxOTMKKwkubG9uZwkyNTgzNTUxMjQ1CisJLmxvbmcJMTA3MTk2MzMxNAorCS5sb25nCTMxNjEwOTQxOTUKKwkubG9uZwkxMDE1NjA2NDkxCisJLmxvbmcJMzU3NzA5Njc0MworCS5sb25nCTEwNzE5NTU5MzAKKwkubG9uZwkyOTUxNDk2NDE4CisJLmxvbmcJMTAxMzc5MzY4NworCS5sb25nCTQwNDA2NzYzMTgKKwkubG9uZwkxMDcxOTQ4NTg2CisJLmxvbmcJNDA5MDYwOTIzOAorCS5sb25nCTEwMTU2NjM0NTgKKwkubG9uZwkzMDQ5MzQwMTEyCisJLmxvbmcJMTA3MTk0MTI4MgorCS5sb25nCTMwNjI5MTU4MjQKKwkubG9uZwkxMDEzMTcwNTk1CisJLmxvbmcJMzk3ODEwMDgyMworCS5sb25nCTEwNzE5MzQwMTcKKwkubG9uZwkzNTEzMDI3MTkwCisJLmxvbmcJMTAxNTg0NTk2MworCS5sb25nCTE2MTcwMDQ4NDUKKwkubG9uZwkxMDcxOTI2NzkyCisJLmxvbmcJODI4MDQ5NDQKKwkubG9uZwkxMDEwMzQyNzc4CisJLmxvbmcJMzY0NTk0MTkxMQorCS5sb25nCTEwNzE5MTk2MDUKKwkubG9uZwkzODE0Njg1MDgxCisJLmxvbmcJMzE2MTU3MzM0MQorCS5sb25nCTU2OTg0NzMzOAorCS5sb25nCTEwNzE5MTI0NTgKKwkubG9uZwk0NzI5NDUyNzIKKwkubG9uZwkzMTU5MjkwNzI5CisJLmxvbmcJNzg0MTM4NTIKKwkubG9uZwkxMDcxOTA1MzQ5CisJLmxvbmcJNDE4MzIyNjg2NworCS5sb25nCTMxNjMwMTcyNTEKKwkubG9uZwkxMjc2MjYxNDEwCisJLmxvbmcJMTA3MTg5ODI3OAorCS5sb25nCTMwMDk4MTk0OAorCS5sb25nCTEwMTQ2ODQxNjkKKwkubG9uZwkzMjcyODQ1NTQxCisJLmxvbmcJMTA3MTg5MTI0NQorCS5sb25nCTkyODg1MjQxOQorCS5sb25nCTMxNjM0ODgyNDgKKwkubG9uZwk4ODc0NjM5MjcKKwkubG9uZwkxMDcxODg0MjUxCisJLmxvbmcJMzU5Njc0NDE2MworCS5sb25nCTMxNjA3OTQxNjYKKwkubG9uZwkxODI5MDk5NjIyCisJLmxvbmcJMTA3MTg3NzI5NAorCS5sb25nCTEwMTY2NjExODEKKwkubG9uZwkzMTYzNDYxMDA1CisJLmxvbmcJOTI2NTkxNDM1CisJLmxvbmcJMTA3MTg3MDM3NQorCS5sb25nCTMyMDg4MzM3NjIKKwkubG9uZwkzMTYyOTEzNTE0CisJLmxvbmcJMTYwMzQ0NDcyMQorCS5sb25nCTEwNzE4NjM0OTMKKwkubG9uZwkxNTQ4NjMzNjQwCisJLmxvbmcJMzE2MjIwMTMyNgorCS5sb25nCTI5OTI5MDM5MzUKKwkubG9uZwkxMDcxODU2NjQ4CisJLmxvbmcJMjIxODE1NDQwNgorCS5sb25nCTEwMTUyMjgxOTMKKwkubG9uZwk0MjMyODk0NTEzCisJLmxvbmcJMTA3MTg0OTg0MAorCS5sb25nCTIzODM5Mzg2ODQKKwkubG9uZwkxMDE0NjY4NTE5CisJLmxvbmcJMTcxMDMwMjkzCisJLmxvbmcJMTA3MTg0MzA3MAorCS5sb25nCTM1MjY0NjAxMzIKKwkubG9uZwkxMDE0NDI4Nzc4CisJLmxvbmcJMjgzOTQyNDg1NAorCS5sb25nCTEwNzE4MzYzMzUKKwkubG9uZwkxMTcxNTk2MTYzCisJLmxvbmcJMTAxMzA0MTY3OQorCS5sb25nCTI3OTk5NjA4NDMKKwkubG9uZwkxMDcxODI5NjM3CisJLmxvbmcJMTQyMzY1NTM4MQorCS5sb25nCTEwMTUwMjIxNTEKKwkubG9uZwkzNTA0MDAzNDcyCisJLmxvbmcJMTA3MTgyMjk3NQorCS5sb25nCTM1OTQwMDEwNjAKKwkubG9uZwkzMTU3MzMwNjUyCisJLmxvbmcJNDExMjUwNjU5MworCS5sb25nCTEwNzE4MTYzNDkKKwkubG9uZwkyOTQ3MzU1MjIxCisJLmxvbmcJMTAxNDM3MTA0OAorCS5sb25nCTM3OTA5NTUzOTMKKwkubG9uZwkxMDcxODA5NzU5CisJLmxvbmcJMjM1Mjk0MjQ2MgorCS5sb25nCTMxNjMxODAwOTAKKwkubG9uZwkxNzA5MzQxOTE3CisJLmxvbmcJMTA3MTgwMzIwNQorCS5sb25nCTI1NzExNjgyMTcKKwkubG9uZwkxMDE0MTUyNDk5CisJLmxvbmcJMTMzNzEwODAzMQorCS5sb25nCTEwNzE3OTY2ODYKKwkubG9uZwkzMjAzNzI0NDUyCisJLmxvbmcJMTAxNDY3Nzg0NQorCS5sb25nCTE4NTMxODY2MTYKKwkubG9uZwkxMDcxNzkwMjAyCisJLmxvbmcJMzA2NjQ5NjM3MQorCS5sb25nCTEwMTU2NTY1NzQKKwkubG9uZwkyNDQwOTQ0NzkwCisJLmxvbmcJMTA3MTc4Mzc1MworCS5sb25nCTI0OTI3Njk3NzQKKwkubG9uZwkxMDE0MTQ3NDU0CisJLmxvbmcJMjI4ODE1OTk1OAorCS5sb25nCTEwNzE3NzczMzkKKwkubG9uZwkyMTY5MTQ0NDY5CisJLmxvbmcJMTAxNDg3NjAyMQorCS5sb25nCTU4Njk5NTk5NworCS5sb25nCTEwNzE3NzA5NjAKKwkubG9uZwk0MTY2MjM0OAorCS5sb25nCTMxNjI2Mjc5OTIKKwkubG9uZwk4Mjg5NDY4NTgKKwkubG9uZwkxMDcxNzY0NjE1CisJLmxvbmcJMTA2NDI0OTIKKwkubG9uZwkxMDE1OTM5NDM4CisJLmxvbmcJMjIxNDg3ODQyMAorCS5sb25nCTEwNzE3NTgzMDQKKwkubG9uZwk4OTIyNzAwODcKKwkubG9uZwkzMTYzMTE2NDIyCisJLmxvbmcJMzk0OTk3MjM0MQorCS5sb25nCTEwNzE3NTIwMjcKKwkubG9uZwkyMDY4NDA4NTQ4CisJLmxvbmcJMTAxNDkxMzg2OAorCS5sb25nCTk0ODczNTQ2NgorCS5sb25nCTEwNzE3NDU3ODUKKwkubG9uZwkzNTE2MzM4MDI4CisJLmxvbmcJMzE2MjU3NDg4MworCS5sb25nCTEwMTQ4NDU4MTkKKwkubG9uZwkxMDcxNzM5NTc2CisJLmxvbmcJMzExNzkxMDY0NgorCS5sb25nCTMxNjE1NTkxMDUKKwkubG9uZwkzMzY2MjkzMDczCisJLmxvbmcJMTA3MTczMzQwMAorCS5sb25nCTMxMTk0MjYzMTQKKwkubG9uZwkxMDE0MTIwNTU0CisJLmxvbmcJMjkzMDMyMjkxMgorCS5sb25nCTEwNzE3MjcyNTgKKwkubG9uZwkyNTk5NDk5NDIyCisJLmxvbmcJMzE2MjcxNDA0NworCS5sb25nCTMyMjgzMTYxMDgKKwkubG9uZwkxMDcxNzIxMTQ5CisJLmxvbmcJMzAxMDI0MTk5MQorCS5sb25nCTMxNTg0MjI4MDQKKwkubG9uZwkzNDkwODYzOTUzCisJLmxvbmcJMTA3MTcxNTA3MworCS5sb25nCTk2MDc5NzQ5OAorCS5sb25nCTMxNjI5NDg4ODAKKwkubG9uZwkyOTUyNzEyOTg3CisJLmxvbmcJMTA3MTcwOTAzMAorCS5sb25nCTMyOTM0OTQ2NTEKKwkubG9uZwkzMTYwMTIwMzAxCisJLmxvbmcJODUyNzQyNTYyCisJLmxvbmcJMTA3MTcwMzAyMAorCS5sb25nCTY2NzI1MzU4NgorCS5sb25nCTEwMDk3OTM1NTkKKwkubG9uZwk3Mjg5MDk4MTUKKwkubG9uZwkxMDcxNjk3MDQyCisJLmxvbmcJMzgzOTMwMjI1CisJLmxvbmcJMTAxNTAyOTQ2OAorCS5sb25nCTE4MjgyOTI4NzkKKwkubG9uZwkxMDcxNjkxMDk2CisJLmxvbmcJMTI1NTk1Njc0NworCS5sb25nCTEwMTU1ODgzOTgKKwkubG9uZwkzNDAyMDM2MDk5CisJLmxvbmcJMTA3MTY4NTE4MgorCS5sb25nCTQwNTg4OTMzNAorCS5sb25nCTEwMTUxMDU2NTYKKwkubG9uZwk0MTAzNjA3NzYKKwkubG9uZwkxMDcxNjc5MzAxCisJLmxvbmcJMTI2OTk5MDY1NQorCS5sb25nCTEwMTE5NzU4NzAKKwkubG9uZwk3MDI0MTI1MTAKKwkubG9uZwkxMDcxNjczNDUxCisJLmxvbmcJMzgwMzI2NjA4NworCS5sb25nCTMxNjIyODA0MTUKKwkubG9uZwkzNTQxNDAyOTk2CisJLmxvbmcJMTA3MTY2NzYzMgorCS5sb25nCTI3NTkxNzczMTcKKwkubG9uZwkxMDE0ODU0NjI2CisJLmxvbmcJMzg5OTU1NTcxNworCS5sb25nCTEwNzE2NjE4NDUKKwkubG9uZwk0MjcyODA3NTAKKwkubG9uZwkzMTYyNTQ2OTcyCisJLmxvbmcJMTA0ODAxOTA0MQorCS5sb25nCTEwNzE2NTYwOTAKKwkubG9uZwkxMzk4NDc0ODQ1CisJLmxvbmcJMzE2MDUxMDU5NQorCS5sb25nCTI4NTE4MTIxNDkKKwkubG9uZwkxMDcxNjUwMzY1CisJLmxvbmcJMjU5NTgwMjU1MQorCS5sb25nCTEwMTU3NjczMzcKKwkudHlwZQlUMl9uZWdfZixAb2JqZWN0CisJLnNpemUJVDJfbmVnX2YsMjA0OAorCS5hbGlnbiAxNgorcHY6CisJLmxvbmcJMzA3ODEzNTY0NAorCS5sb25nCTEwNDk3ODc5ODMKKwkubG9uZwkzODE3NzQ4NzAKKwkubG9uZwkxMDYyNjUwMjIwCisJLmxvbmcJNDM2MzE0MTM3CisJLmxvbmcJMTA1NjU3MTgwOAorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY3Nzk5ODkzCisJLnR5cGUJcHYsQG9iamVjdAorCS5zaXplCXB2LDMyCisJLmFsaWduIDQKK0hBTEZNQVNLOgorCS5sb25nCTQxNjA3NDk1NjgKKwkubG9uZwkyMTQ3NDgzNjQ3CisJLnR5cGUJSEFMRk1BU0ssQG9iamVjdAorCS5zaXplCUhBTEZNQVNLLDgKKwkuYWxpZ24gNAorT05FTUFTSzoKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS50eXBlCU9ORU1BU0ssQG9iamVjdAorCS5zaXplCU9ORU1BU0ssOAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorLy8gLS0gQmVnaW4gRFdBUkYyIFNFR01FTlQgLmVoX2ZyYW1lCisJLnNlY3Rpb24gLmVoX2ZyYW1lLCJhIixAcHJvZ2JpdHMKKy5laF9mcmFtZV9zZWc6CisJLmFsaWduIDEKKwkuNGJ5dGUgMHgwMDAwMDAxNAorCS44Ynl0ZSAweDAwNTI3YTAxMDAwMDAwMDAKKwkuOGJ5dGUgMHgwODA3MGMxYjAxMTA3ODAxCisJLjRieXRlIDB4MDAwMDAxOTAKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2Nvc2guMS0uCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2Nvc2guNS0uLl9fX3RhZ192YWx1ZV9jb3NoLjEKKwkuMmJ5dGUgMHgwNDAwCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2Nvc2guMy0uLl9fX3RhZ192YWx1ZV9jb3NoLjEKKwkuMmJ5dGUgMHgxMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9jb3NoLjQtLi5fX190YWdfdmFsdWVfY29zaC4zCisJLjJieXRlIDB4MDgwZQorCS5ieXRlIDB4MDAKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9lX2V4cC5TIGIvbGlibS94ODZfNjQvZV9leHAuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ODgyZGZjCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvZV9leHAuUwpAQCAtMCwwICsxLDYzNiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vIERlc2NyaXB0aW9uOgorLy8gIExldCBLID0gNjQgKHRhYmxlIHNpemUpLgorLy8gICAgICAgIHggICAgeC9sb2coMikgICAgIG4KKy8vICAgICAgIGUgID0gMiAgICAgICAgICA9IDIgKiBUW2pdICogKDEgKyBQKHkpKQorLy8gIHdoZXJlCisvLyAgICAgICB4ID0gbSpsb2coMikvSyArIHksICAgIHkgaW4gWy1sb2coMikvSy4ubG9nKDIpL0tdCisvLyAgICAgICBtID0gbipLICsgaiwgICAgICAgICAgIG0sbixqIC0gc2lnbmVkIGludGVnZXIsIGogaW4gWy1LLzIuLksvMl0KKy8vICAgICAgICAgICAgICAgICAgai9LCisvLyAgICAgICB2YWx1ZXMgb2YgMiAgIGFyZSB0YWJ1bGF0ZWQgYXMgVFtqXSA9IFRfaGlbal0gKCAxICsgVF9sb1tqXSkuCisvLworLy8gICAgICAgUCh5KSBpcyBhIG1pbmltYXggcG9seW5vbWlhbCBhcHByb3hpbWF0aW9uIG9mIGV4cCh4KS0xCisvLyAgICAgICBvbiBzbWFsbCBpbnRlcnZhbCBbLWxvZygyKS9LLi5sb2coMikvS10gKHdlcmUgY2FsY3VsYXRlZCBieSBNYXBsZSBWKS4KKy8vCisvLyAgVG8gYXZvaWQgcHJvYmxlbXMgd2l0aCBhcml0aG1ldGljIG92ZXJmbG93IGFuZCB1bmRlcmZsb3csCisvLyAgICAgICAgICAgIG4gICAgICAgICAgICAgICAgICAgICAgICBuMSAgbjIKKy8vICB2YWx1ZSBvZiAyICBpcyBzYWZlbHkgY29tcHV0ZWQgYXMgMiAqIDIgd2hlcmUgbjEgaW4gWy1CSUFTLzIuLkJJQVMvMl0KKy8vICB3aGVyZSBCSUFTIGlzIGEgdmFsdWUgb2YgZXhwb25lbnQgYmlhcy4KKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGV4cChOYU4pID0gTmFOCisvLyAgZXhwKCtJTkYpID0gK0lORgorLy8gIGV4cCgtSU5GKSA9IDAKKy8vICBleHAoeCkgPSAxIGZvciBzdWJub3JtYWxzCisvLyAgZm9yIGZpbml0ZSBhcmd1bWVudCwgb25seSBleHAoMCk9MSBpcyBleGFjdAorLy8gIEZvciBJRUVFIGRvdWJsZQorLy8gICAgaWYgeCA+ICA3MDkuNzgyNzEyODkzMzgzOTczMDk2IHRoZW4gZXhwKHgpIG92ZXJmbG93CisvLyAgICBpZiB4IDwgLTc0NS4xMzMyMTkxMDE5NDExMDg0MjAgdGhlbiBleHAoeCkgdW5kZXJmbG93CisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgZXhwCitFTlRSWShleHApCisjIHBhcmFtZXRlciAxOiAleG1tMAorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfZXhwLjE6CisgICAgICAgIHN1YnEgICAgICAkMjQsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2V4cC4zOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDgoJXJzcCkKKy4uQjEuMjoKKyAgICAgICAgdW5wY2tscGQgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgY3YoJXJpcCksICV4bW0xCisgICAgICAgIG1vdmFwZCAgICBTaGlmdGVyKCVyaXApLCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgMTYrY3YoJXJpcCksICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAzMitjdiglcmlwKSwgJXhtbTMKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAkMTY1MjcsICVlZHgKKyAgICAgICAgc3VibCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgc3VibCAgICAgICQxNTUwNCwgJWVheAorICAgICAgICBvcmwgICAgICAgJWVheCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJC0yMTQ3NDgzNjQ4LCAlZWR4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIGFkZHBkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tNworICAgICAgICBzdWJwZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDY0K2N2KCVyaXApLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICA4MCtjdiglcmlwKSwgJXhtbTUKKyAgICAgICAgc3VicGQgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZkICAgICAgJXhtbTcsICVlYXgKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQ2MywgJWVjeAorICAgICAgICBzaGxsICAgICAgJDQsICVlY3gKKyAgICAgICAgc2FybCAgICAgICQ2LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIG1vdmRxYSAgICBtbWFzayglcmlwKSwgJXhtbTYKKyAgICAgICAgcGFuZCAgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZkcWEgICAgYmlhcyglcmlwKSwgJXhtbTYKKyAgICAgICAgcGFkZHEgICAgICV4bW02LCAleG1tNworICAgICAgICBwc2xscSAgICAgJDQ2LCAleG1tNworICAgICAgICBzdWJwZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGxlYSAgICAgICBUYmxfYWRkciglcmlwKSwgJXI4CisgICAgICAgIG1vdmFwZCAgICAoJXJjeCwlcjgpLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgICV4bW00LCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHBkICAgICA0OCtjdiglcmlwKSwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICB1bnBja2hwZCAgJXhtbTIsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBvcnBkICAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIHVucGNraHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIGFkZGwgICAgICAkODk0LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTkxNiwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICBBTExPTkVTKCVyaXApLCAleG1tNAorICAgICAgICBtb3ZsICAgICAgJC0xMDIyLCAlZWR4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIG1vdmQgICAgICAlZWR4LCAleG1tNQorICAgICAgICBwc2xscSAgICAgJXhtbTUsICV4bW00CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkMSwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICBlYmlhcyglcmlwKSwgJXhtbTYKKyAgICAgICAgcHNsbHEgICAgICQ0LCAleG1tMworICAgICAgICBwc3ViZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgY21wbCAgICAgICQ1MiwgJWVkeAorICAgICAgICBqZyAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKyAgICAgICAgYW5kcGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBwYWRkZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBjbXBsICAgICAgJDEwMjMsICVlY3gKKyAgICAgICAgamdlICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc2OCwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzUuMC4yOgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbW92cSAgICAgICV4bW02LCAleG1tMAorICAgICAgICBweG9yICAgICAgJXhtbTQsICV4bW02CisgICAgICAgIHBzcmFkICAgICAkMzEsICV4bW02CisgICAgICAgIHBzaHVmZCAgICAkODUsICV4bW02LCAleG1tNgorICAgICAgICBwc2xscSAgICAgJDEsICV4bW0wCisgICAgICAgIHBzcmxxICAgICAkMSwgJXhtbTAKKyAgICAgICAgcHhvciAgICAgICV4bW02LCAleG1tMAorICAgICAgICBwc3JscSAgICAgJDYzLCAleG1tNgorICAgICAgICBwYWRkcSAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHBhZGRxICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNSwgKCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGpuYiAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgcGFkZGQgICAgICV4bW02LCAleG1tMworICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNSwgKCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorLkxfMlRBR19QQUNLRVRfOC4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMjE0NjQzNTA3MiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjIKKyAgICAgICAgbW92bCAgICAgIDEyKCVyc3ApLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkLTIxNDc0ODM2NDgsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMgorICAgICAgICBtb3ZzZCAgICAgWE1BWCglcmlwKSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisgICAgICAgIG1vdmwgICAgICAkMTQsICglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjIKKy5MXzJUQUdfUEFDS0VUXzEwLjAuMjoKKyAgICAgICAgbW92c2QgICAgIFhNSU4oJXJpcCksICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNSwgKCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorLkxfMlRBR19QQUNLRVRfOS4wLjI6CisgICAgICAgIG1vdmwgICAgICA4KCVyc3ApLCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMjE0NjQzNTA3MiwgJWVheAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4yCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4yCisgICAgICAgIG1vdmwgICAgICAxMiglcnNwKSwgJWVheAorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzEyLjAuMgorICAgICAgICBtb3ZzZCAgICAgSU5GKCVyaXApLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xMi4wLjI6CisgICAgICAgIG1vdnNkICAgICBaRVJPKCVyaXApLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xMS4wLjI6CisgICAgICAgIG1vdnNkICAgICA4KCVyc3ApLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorICAgICAgICBtb3ZsICAgICAgMTIoJXJzcCksICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQyMTQ3NDgzNjQ3LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTA4MzE3OTAwOCwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjIKKyAgICAgICAgbW92c2QgICAgIDgoJXJzcCksICV4bW0wCisgICAgICAgIGFkZHNkICAgICBPTkVfdmFsKCVyaXApLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAxNiglcnNwKQorLi5CMS4zOgorICAgICAgICBtb3ZxICAgICAgMTYoJXJzcCksICV4bW0wCisuTF8yVEFHX1BBQ0tFVF8xMy4wLjI6CisuLkIxLjU6CisgICAgICAgIGFkZHEgICAgICAkMjQsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2V4cC40OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV9leHAuNToKK0VORChleHApCisjIC0tIEVuZCAgZXhwCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitjdjoKKwkubG9uZwkxNjk3MzUwMzk4CisJLmxvbmcJMTA3OTQ0ODkwMworCS5sb25nCTE2OTczNTAzOTgKKwkubG9uZwkxMDc5NDQ4OTAzCisJLmxvbmcJNDI3Nzc5Njg2NAorCS5sb25nCTEwNjU3NTgyNzQKKwkubG9uZwk0Mjc3Nzk2ODY0CisJLmxvbmcJMTA2NTc1ODI3NAorCS5sb25nCTMxNjQ0ODY0NTgKKwkubG9uZwkxMDI1MzA4NTcwCisJLmxvbmcJMzE2NDQ4NjQ1OAorCS5sb25nCTEwMjUzMDg1NzAKKwkubG9uZwk0Mjk0OTY3Mjk0CisJLmxvbmcJMTA3MTY0NDY3MQorCS5sb25nCTQyOTQ5NjcyOTQKKwkubG9uZwkxMDcxNjQ0NjcxCisJLmxvbmcJMzgxMTA4ODQ4MAorCS5sb25nCTEwNjI2NTAyMDQKKwkubG9uZwkxNDMyMDY3NjIxCisJLmxvbmcJMTA2Nzc5OTg5MworCS5sb25nCTMyMzA3MTU2NjMKKwkubG9uZwkxMDY1NDIzMTI1CisJLmxvbmcJMTQzMTYwNDEyOQorCS5sb25nCTEwNjk4OTcwNDUKKwkudHlwZQljdixAb2JqZWN0CisJLnNpemUJY3YsOTYKKwkuYWxpZ24gMTYKK1NoaWZ0ZXI6CisJLmxvbmcJMAorCS5sb25nCTExMjc3NDM0ODgKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS50eXBlCVNoaWZ0ZXIsQG9iamVjdAorCS5zaXplCVNoaWZ0ZXIsMTYKKwkuYWxpZ24gMTYKK21tYXNrOgorCS5sb25nCTQyOTQ5NjcyMzIKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzIzMgorCS5sb25nCTAKKwkudHlwZQltbWFzayxAb2JqZWN0CisJLnNpemUJbW1hc2ssMTYKKwkuYWxpZ24gMTYKK2JpYXM6CisJLmxvbmcJNjU0NzIKKwkubG9uZwkwCisJLmxvbmcJNjU0NzIKKwkubG9uZwkwCisJLnR5cGUJYmlhcyxAb2JqZWN0CisJLnNpemUJYmlhcywxNgorCS5hbGlnbiAxNgorVGJsX2FkZHI6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIzNTEwNzY2MQorCS5sb25nCTEwMTgwMDIzNjcKKwkubG9uZwkxMDQ4MDE5MDQwCisJLmxvbmcJMTE0MTgKKwkubG9uZwk4OTYwMDU2NTEKKwkubG9uZwkxMDE1ODYxODQyCisJLmxvbmcJMzU0MTQwMjk5NgorCS5sb25nCTIyOTYwCisJLmxvbmcJMTY0MjUxNDUyOQorCS5sb25nCTEwMTI5ODc3MjYKKwkubG9uZwk0MTAzNjA3NzYKKwkubG9uZwkzNDYyOQorCS5sb25nCTE1Njg4OTc5MDAKKwkubG9uZwkxMDE2NTY4NDg2CisJLmxvbmcJMTgyODI5Mjg3OQorCS5sb25nCTQ2NDI0CisJLmxvbmcJMTg4MjE2ODUyOQorCS5sb25nCTEwMTA3NDQ4OTMKKwkubG9uZwk4NTI3NDI1NjIKKwkubG9uZwk1ODM0OAorCS5sb25nCTUwOTg1Mjg4OAorCS5sb25nCTEwMTczMzYxNzQKKwkubG9uZwkzNDkwODYzOTUyCisJLmxvbmcJNzA0MDEKKwkubG9uZwk2NTMyNzczMDcKKwkubG9uZwkxMDE3NDMxMzgwCisJLmxvbmcJMjkzMDMyMjkxMQorCS5sb25nCTgyNTg2CisJLmxvbmcJMTY0OTU1NzQzMAorCS5sb25nCTEwMTc3MjkzNjMKKwkubG9uZwkxMDE0ODQ1ODE4CisJLmxvbmcJOTQ5MDQKKwkubG9uZwkxMDU4MjMxMjMxCisJLmxvbmcJMTAxNTc3NzY3NgorCS5sb25nCTM5NDk5NzIzNDEKKwkubG9uZwkxMDczNTUKKwkubG9uZwkxMDQ0MDAwNjA3CisJLmxvbmcJMTAxNjc4NjE2NworCS5sb25nCTgyODk0Njg1OAorCS5sb25nCTExOTk0MworCS5sb25nCTExNTE3Nzk3MjUKKwkubG9uZwkxMDE1NzA1NDA5CisJLmxvbmcJMjI4ODE1OTk1OAorCS5sb25nCTEzMjY2NworCS5sb25nCTM4MTk0ODEyMzYKKwkubG9uZwkxMDE2NDk5OTY1CisJLmxvbmcJMTg1MzE4NjYxNgorCS5sb25nCTE0NTUzMAorCS5sb25nCTI1NTIyMjc4MjYKKwkubG9uZwkxMDE1MDM5Nzg3CisJLmxvbmcJMTcwOTM0MTkxNworCS5sb25nCTE1ODUzMworCS5sb25nCTE4MjkzNTAxOTMKKwkubG9uZwkxMDE1MjE2MDk3CisJLmxvbmcJNDExMjUwNjU5MworCS5sb25nCTE3MTY3NworCS5sb25nCTE5MTMzOTE3OTUKKwkubG9uZwkxMDE1NzU2Njc0CisJLmxvbmcJMjc5OTk2MDg0MworCS5sb25nCTE4NDk2NQorCS5sb25nCTEzMDM0MjM5MjYKKwkubG9uZwkxMDE1MjM4MDA1CisJLmxvbmcJMTcxMDMwMjkzCisJLmxvbmcJMTk4Mzk4CisJLmxvbmcJMTU3NDE3Mjc0NgorCS5sb25nCTEwMTYwNjEyNDEKKwkubG9uZwkyOTkyOTAzOTM1CisJLmxvbmcJMjExOTc2CisJLmxvbmcJMzQyNDE1Njk2OQorCS5sb25nCTEwMTcxOTY0MjgKKwkubG9uZwk5MjY1OTE0MzQKKwkubG9uZwkyMjU3MDMKKwkubG9uZwkxOTM4NTEzNTQ3CisJLmxvbmcJMTAxNzYzMTI3MworCS5sb25nCTg4NzQ2MzkyNgorCS5sb25nCTIzOTU3OQorCS5sb25nCTI4MDQ1NjcxNDkKKwkubG9uZwkxMDE1MzkwMDI0CisJLmxvbmcJMTI3NjI2MTQxMAorCS5sb25nCTI1MzYwNgorCS5sb25nCTYzMTA4MzUyNQorCS5sb25nCTEwMTc2OTAxODIKKwkubG9uZwk1Njk4NDczMzcKKwkubG9uZwkyNjc3ODYKKwkubG9uZwkxNjIzMzcwNzcwCisJLmxvbmcJMTAxMTA0OTQ1MworCS5sb25nCTE2MTcwMDQ4NDUKKwkubG9uZwkyODIxMjAKKwkubG9uZwkzNjY3OTg1MjczCisJLmxvbmcJMTAxMzg5NDM2OQorCS5sb25nCTMwNDkzNDAxMTIKKwkubG9uZwkyOTY2MTAKKwkubG9uZwkzMTQ1Mzc5NzYwCisJLmxvbmcJMTAxNDQwMzI3OAorCS5sb25nCTM1NzcwOTY3NDMKKwkubG9uZwkzMTEyNTgKKwkubG9uZwkyNjAzMTAwNjgxCisJLmxvbmcJMTAxNzE1MjQ2MAorCS5sb25nCTE5OTAwMTIwNzAKKwkubG9uZwkzMjYwNjYKKwkubG9uZwkzMjQ5MjAyOTUxCisJLmxvbmcJMTAxNzQ0ODg4MAorCS5sb25nCTE0NTMxNTAwODEKKwkubG9uZwkzNDEwMzUKKwkubG9uZwk0MTkyODg5NzQKKwkubG9uZwkxMDE2MjgwMzI1CisJLmxvbmcJOTE3ODQxODgyCisJLmxvbmcJMzU2MTY3CisJLmxvbmcJMzc5MzUwNzMzNworCS5sb25nCTEwMTYwOTU3MTMKKwkubG9uZwkzNzEyNTA0ODczCisJLmxvbmcJMzcxNDYzCisJLmxvbmcJNzI4MDIzMDkzCisJLmxvbmcJMTAxNjM0NTMxOAorCS5sb25nCTM2MzY2Nzc4NAorCS5sb25nCTM4NjkyNworCS5sb25nCTI1ODI2Nzg1MzgKKwkubG9uZwkxMDE3MTIzNDYwCisJLmxvbmcJMjk1NjYxMjk5NgorCS5sb25nCTQwMjU1OAorCS5sb25nCTc1OTI5NjYKKwkubG9uZwkxMDE2NzIxNTQzCisJLmxvbmcJMjE4NjYxNzM4MAorCS5sb25nCTQxODM2MAorCS5sb25nCTIyODYxMTQ0MQorCS5sb25nCTEwMTY2OTYxNDEKKwkubG9uZwkxNzE5NjE0NDEyCisJLmxvbmcJNDM0MzM0CisJLmxvbmcJMjI2MTY2NTY3MAorCS5sb25nCTEwMTc0NTc1OTMKKwkubG9uZwkxMDEzMjU4Nzk4CisJLmxvbmcJNDUwNDgyCisJLmxvbmcJNTQ0MTQ4OTA3CisJLmxvbmcJMTAxNzMyMzY2NgorCS5sb25nCTM5MDc4MDUwNDMKKwkubG9uZwk0NjY4MDUKKwkubG9uZwkyMzgzOTE0OTE4CisJLmxvbmcJMTAxNzE0MzU4NgorCS5sb25nCTE0NDcxOTI1MjAKKwkubG9uZwk0ODMzMDcKKwkubG9uZwkxMTc2NDEyMDM4CisJLmxvbmcJMTAxNzI2NzM3MgorCS5sb25nCTE5NDQ3ODExOTAKKwkubG9uZwk0OTk5ODgKKwkubG9uZwkyODgyOTU2MzczCisJLmxvbmcJMTAxMzMxMjQ4MQorCS5sb25nCTkxOTU1NTY4MgorCS5sb25nCTUxNjg1MQorCS5sb25nCTMxNTQwNzc2NDgKKwkubG9uZwkxMDE2NTI4NTQzCisJLmxvbmcJMjU3MTk0NzUzOAorCS5sb25nCTUzMzg5NworCS5sb25nCTM0ODY1MTk5OQorCS5sb25nCTEwMTY0MDU3ODAKKwkubG9uZwkyNjA0OTYyNTQwCisJLmxvbmcJNTUxMTI5CisJLmxvbmcJMzI1Mzc5MTQxMgorCS5sb25nCTEwMTU5MjA0MzEKKwkubG9uZwkxMTEwMDg5OTQ3CisJLmxvbmcJNTY4NTQ5CisJLmxvbmcJMTUwOTEyMTg2MAorCS5sb25nCTEwMTQ3NTY5OTUKKwkubG9uZwkyNTY4MzIwODIyCisJLmxvbmcJNTg2MTU4CisJLmxvbmcJMjYxNzY0OTIxMgorCS5sb25nCTEwMTczNDAwOTAKKwkubG9uZwkyOTY2Mjc1NTU2CisJLmxvbmcJNjAzOTU5CisJLmxvbmcJNTUzMjE0NjM0CisJLmxvbmcJMTAxNjQ1NzQyNQorCS5sb25nCTI2ODIxNDYzODMKKwkubG9uZwk2MjE5NTQKKwkubG9uZwk3MzA5NzU3ODMKKwkubG9uZwkxMDE0MDgzNTgwCisJLmxvbmcJMjE5MTc4MjAzMgorCS5sb25nCTY0MDE0NQorCS5sb25nCTE0ODY0OTk1MTcKKwkubG9uZwkxMDE2ODE4OTk2CisJLmxvbmcJMjA2OTc1MTE0MAorCS5sb25nCTY1ODUzNAorCS5sb25nCTI1OTU3ODg5MjgKKwkubG9uZwkxMDE2NDA3OTMyCisJLmxvbmcJMjk5MDQxNzI0NAorCS5sb25nCTY3NzEyMworCS5sb25nCTE4NTMwNTM2MTkKKwkubG9uZwkxMDE1MzEwNzI0CisJLmxvbmcJMTQzNDA1ODE3NQorCS5sb25nCTY5NTkxNQorCS5sb25nCTI0NjI3OTA1MzUKKwkubG9uZwkxMDE1ODE0Nzc1CisJLmxvbmcJMjU3Mjg2NjQ3NworCS5sb25nCTcxNDkxMQorCS5sb25nCTM2OTM5NDQyMTQKKwkubG9uZwkxMDE3MjU5MTEwCisJLmxvbmcJMzA5MjE5MDcxNAorCS5sb25nCTczNDExNAorCS5sb25nCTI5NzkzMzM1NTAKKwkubG9uZwkxMDE3MTg4NjU0CisJLmxvbmcJNDA3NjU1OTk0MgorCS5sb25nCTc1MzUyNgorCS5sb25nCTE3NDA1NDg2MQorCS5sb25nCTEwMTQzMDA2MzEKKwkubG9uZwkyNDIwODgzOTIyCisJLmxvbmcJNzczMTUwCisJLmxvbmcJODE2Nzc4NDE5CisJLmxvbmcJMTAxNDE5NzkzNAorCS5sb25nCTM3MTY1MDIxNzIKKwkubG9uZwk3OTI5ODcKKwkubG9uZwkzNTA3MDUwOTI0CisJLmxvbmcJMTAxNTM0MTE5OQorCS5sb25nCTc3NzUwNzE0NworCS5sb25nCTgxMzA0MQorCS5sb25nCTE4MjE1MTQwODgKKwkubG9uZwkxMDEzNDEwNjA0CisJLmxvbmcJMzcwNjY4NzU5MworCS5sb25nCTgzMzMxMgorCS5sb25nCTkyMDYyMzUzOQorCS5sb25nCTEwMTYyOTU0MzMKKwkubG9uZwkxMjQyMDA3OTMxCisJLmxvbmcJODUzODA1CisJLmxvbmcJMjc4OTAxNzUxMQorCS5sb25nCTEwMTQyNzY5OTcKKwkubG9uZwkzNzA3NDc5MTc1CisJLmxvbmcJODc0NTIwCisJLmxvbmcJMzU4NjIzMzAwNAorCS5sb25nCTEwMTU5NjIxOTIKKwkubG9uZwk2NDY5Njk2NQorCS5sb25nCTg5NTQ2MgorCS5sb25nCTQ3NDY1MDUxNAorCS5sb25nCTEwMTY2NDI0MTkKKwkubG9uZwk4NjM3Mzg3MTgKKwkubG9uZwk5MTY2MzEKKwkubG9uZwkxNjE0NDQ4ODUxCisJLmxvbmcJMTAxNDI4MTczMgorCS5sb25nCTM4ODQ2NjI3NzQKKwkubG9uZwk5MzgwMzAKKwkubG9uZwkyNDUwMDgyMDg2CisJLmxvbmcJMTAxNjE2NDEzNQorCS5sb25nCTI3Mjg2OTM5NzcKKwkubG9uZwk5NTk2NjMKKwkubG9uZwkxMTAxNjY4MzYwCisJLmxvbmcJMTAxNTk4OTE4MAorCS5sb25nCTM5OTkzNTc0NzkKKwkubG9uZwk5ODE1MzEKKwkubG9uZwk4MzU4MTQ4OTQKKwkubG9uZwkxMDE1NzAyNjk3CisJLmxvbmcJMTUzMzk1MzM0NAorCS5sb25nCTEwMDM2MzgKKwkubG9uZwkxMzAxNDAwOTg5CisJLmxvbmcJMTAxNDQ2Njg3NQorCS5sb25nCTIxNzQ2NTI2MzIKKwkubG9uZwkxMDI1OTg1CisJLnR5cGUJVGJsX2FkZHIsQG9iamVjdAorCS5zaXplCVRibF9hZGRyLDEwMjQKKwkuYWxpZ24gMTYKK0FMTE9ORVM6CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJNDI5NDk2NzI5NQorCS50eXBlCUFMTE9ORVMsQG9iamVjdAorCS5zaXplCUFMTE9ORVMsMTYKKwkuYWxpZ24gMTYKK2ViaWFzOgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkudHlwZQllYmlhcyxAb2JqZWN0CisJLnNpemUJZWJpYXMsMTYKKwkuYWxpZ24gNAorWE1BWDoKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMjE0NjQzNTA3MQorCS50eXBlCVhNQVgsQG9iamVjdAorCS5zaXplCVhNQVgsOAorCS5hbGlnbiA0CitYTUlOOgorCS5sb25nCTAKKwkubG9uZwkxMDQ4NTc2CisJLnR5cGUJWE1JTixAb2JqZWN0CisJLnNpemUJWE1JTiw4CisJLmFsaWduIDQKK0lORjoKKwkubG9uZwkwCisJLmxvbmcJMjE0NjQzNTA3MgorCS50eXBlCUlORixAb2JqZWN0CisJLnNpemUJSU5GLDgKKwkuYWxpZ24gNAorWkVSTzoKKwkubG9uZwkwCisJLmxvbmcJMAorCS50eXBlCVpFUk8sQG9iamVjdAorCS5zaXplCVpFUk8sOAorCS5hbGlnbiA0CitPTkVfdmFsOgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLnR5cGUJT05FX3ZhbCxAb2JqZWN0CisJLnNpemUJT05FX3ZhbCw4CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisvLyAtLSBCZWdpbiBEV0FSRjIgU0VHTUVOVCAuZWhfZnJhbWUKKwkuc2VjdGlvbiAuZWhfZnJhbWUsImEiLEBwcm9nYml0cworLmVoX2ZyYW1lX3NlZzoKKwkuYWxpZ24gMQorCS40Ynl0ZSAweDAwMDAwMDE0CisJLjhieXRlIDB4MDA1MjdhMDEwMDAwMDAwMAorCS44Ynl0ZSAweDA4MDcwYzFiMDExMDc4MDEKKwkuNGJ5dGUgMHgwMDAwMDE5MAorCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfZXhwLjEtLgorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9leHAuNS0uLl9fX3RhZ192YWx1ZV9leHAuMQorCS4yYnl0ZSAweDA0MDAKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfZXhwLjMtLi5fX190YWdfdmFsdWVfZXhwLjEKKwkuMmJ5dGUgMHgyMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9leHAuNC0uLl9fX3RhZ192YWx1ZV9leHAuMworCS4yYnl0ZSAweDA4MGUKKwkuYnl0ZSAweDAwCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvZV9oeXBvdC5TIGIvbGlibS94ODZfNjQvZV9oeXBvdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA4OWIyYjQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Nl82NC9lX2h5cG90LlMKQEAgLTAsMCArMSwyMTAgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyBYODcgdmVyc2lvbjoKKy8vIFVzZSA4MC1iaXQgRlBVIHByZWNpc2lvbiBmbXVsLCBmc3FydCB0byBjb21wdXRlIHNxdWFyZSBhbmQgc3FydC4KKy8vCisvLyBTU0UgdmVyc2lvbjoKKy8vIFN3YXAgeCwgeSBpZiB8eHw8fHl8CisvLyBGb3IgeD0yXmsqeCwgZ2V0IHk9eSoyXigtaykKKy8vIEdldCBTIH4gc3FydCh4XjIreV4yKSAgKGxlYWRpbmcgMSArIGxlYWRpbmcgMjUgbWFudGlzc2EgYml0cykKKy8vCisvLyBHZXQgRCA9ICggUk4oeF4yK3leMikgLSBTXjIgKSArICggeF4yIC0gUk4oeF4yKSApICsKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgKCB5XjIgLSAoKFJOKHheMit5XjIpLVJOKHheMikpICkKKy8vCisvLyBSZXN1bHQgaXMgMl5rKihTICsgU2UpLCAgd2hlcmUgU2UgPSBTKmUKKy8vICAgICAgICBTKmUgaXMgYXBwcm94aW1hdGVkIGFzIChELzJTKSooIDEgLSAoRC8yUyleMioxLjAvUyApCisvLworLy8gUmV0dXJuIDJeayooUytTZSkKKy8vCisvLyBGb3IgfHkveHw8Ml4oLTY0KSwgcmV0dXJuIHgKKy8vCisvLyBGb3IgY2FzZXMgd2hlcmUgbWF4aW11bSBiaWFzZWQgZXhwb25lbnQgaXMgZWl0aGVyIGdyZWF0ZXIgdGhhbiA3ZmRoIG9yCisvLyBiZWxvdyAzMiwgdGFrZSBhIHNwZWNpYWwgcGF0aCB0byBjaGVjayBmb3Igc3BlY2lhbCBjYXNlcyAoMCwgTmFOLCBJbmYpLAorLy8gcG9zc2libGUgb3ZlcmZsb3csIGFuZCBtb3JlIGFjY3VyYXRlIGNvbXB1dGF0aW9uIGZvciBkZW5vcm1hbCByZXN1bHRzCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBoeXBvdCh4LHkpLCBoeXBvdCh5LHgpLCBhbmQgaHlwb3QoeCwteSkgYXJlIGVxdWl2YWxlbnQKKy8vICBoeXBvdCh4LCstMCkgaXMgZXF1aXZhbGVudCB0byBmYWJzKHgpCisvLyAgaHlwb3QoeCx5KSA9IHkgaWYgKHg9PU5hTiBvciB4PT1JTkYpIGFuZCB5PT1JTkYKKy8vICBoeXBvdCh4LHkpID0geCBpZiAoeD09TmFOIG9yIHg9PUlORikgYW5kIHkhPUlORiAoZXZlbiBpZiB5PT1OYU4hKQorLy8gIGh5cG90KHgseSkgPSB5IGlmICh4IT1OYU4gYW5kIHghPUlORikgYW5kICh5PT1OYU4gb3IgeT09SU5GKQorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIGh5cG90CitFTlRSWShoeXBvdCkKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisjIHBhcmFtZXRlciAyOiAleG1tMQorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfaHlwb3QuMToKKy4uX19fdGFnX3ZhbHVlX2h5cG90LjM6CisuLkIxLjI6CisgICAgICAgIHN1YnEgICAgICAkNjQsICVyc3AKKyAgICAgICAgbW92YXBkICAgIHN0YXRpY19jb25zdF90YWJsZSglcmlwKSwgJXhtbTMKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCA0OCglcnNwKQorICAgICAgICBtb3ZzZCAgICAgJXhtbTEsIDU2KCVyc3ApCisgICAgICAgIGFuZHBkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW0zLCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQyNDUyOCwgJWVheAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjEKKyAgICAgICAgY21wbCAgICAgICQyNDUyOCwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjEKKy5MXzJUQUdfUEFDS0VUXzEuMC4xOgorICAgICAgICBmbGRsICAgICAgNDgoJXJzcCkKKyAgICAgICAgZmxkbCAgICAgIDU2KCVyc3ApCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgwKSwgJXN0CisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgbm9wICAgICAgIAorICAgICAgICBmbXVsICAgICAgJXN0KDApLCAlc3QKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzcXJ0ICAgICAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4xCisuTF8yVEFHX1BBQ0tFVF8wLjAuMToKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjEKKyAgICAgICAgc3VibCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjEKKyAgICAgICAgYWRkbCAgICAgICQ5MjgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQxODU2LCAlZWN4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMQorICAgICAgICBjbXBsICAgICAgJDQ5MDU2LCAlZWF4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMQorICAgICAgICBmbGRsICAgICAgNDgoJXJzcCkKKyAgICAgICAgZmxkbCAgICAgIDU2KCVyc3ApCisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgZm11bCAgICAgICVzdCgwKSwgJXN0CisgICAgICAgIGZ4Y2ggICAgICAlc3QoMSkKKyAgICAgICAgbm9wICAgICAgIAorICAgICAgICBmbXVsICAgICAgJXN0KDApLCAlc3QKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIGZzcXJ0ICAgICAKKy5MXzJUQUdfUEFDS0VUXzUuMC4xOgorICAgICAgICBmc3RsICAgICAgKCVyc3ApCisgICAgICAgIGZzdHB0ICAgICAxNiglcnNwKQorICAgICAgICB4b3JsICAgICAgJWVheCwgJWVheAorICAgICAgICBtb3Z3ICAgICAgMjQoJXJzcCksICVheAorICAgICAgICBjbXBsICAgICAgJDE3NDA3LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMQorICAgICAgICBmbGRsICAgICAgKCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMQorLkxfMlRBR19QQUNLRVRfNC4wLjE6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgMzIoJXJzcCkKKyAgICAgICAgbW92c2QgICAgICV4bW0xLCA0MCglcnNwKQorICAgICAgICBmbGRsICAgICAgMzIoJXJzcCkKKyAgICAgICAgZmFkZGwgICAgIDQwKCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMQorLkxfMlRBR19QQUNLRVRfNi4wLjE6CisgICAgICAgIGZsZGwgICAgICAoJXJzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4xCisuTF8yVEFHX1BBQ0tFVF8zLjAuMToKKyAgICAgICAgc2h1ZnBkICAgICQwLCAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92ZHFhICAgICV4bW0wLCAleG1tMgorICAgICAgICBtb3ZkcWEgICAgMTYrc3RhdGljX2NvbnN0X3RhYmxlKCVyaXApLCAleG1tMworICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDMyKCVyc3ApCisgICAgICAgIG1vdnNkICAgICAleG1tMSwgNDAoJXJzcCkKKyAgICAgICAgY21wcGQgICAgICQzLCAleG1tMCwgJXhtbTIKKyAgICAgICAgY21wcGQgICAgICQwLCAleG1tMCwgJXhtbTMKKyAgICAgICAgbW92bXNrcGQgICV4bW0yLCAlZWR4CisgICAgICAgIG1vdm1za3BkICAleG1tMywgJXJheAorICAgICAgICB0ZXN0bCAgICAgJWVkeCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjEKKyAgICAgICAgZmxkbCAgICAgIDMyKCVyc3ApCisgICAgICAgIGZtdWxsICAgICA0MCglcnNwKQorICAgICAgICB0ZXN0cSAgICAgJDEsICVyYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4xCisgICAgICAgIHRlc3RxICAgICAkMiwgJXJheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4xCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMQorLkxfMlRBR19QQUNLRVRfOC4wLjE6CisgICAgICAgIGZsZGwgICAgICAzMiglcnNwKQorICAgICAgICBmYWRkbCAgICAgNDAoJXJzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4xCisuTF8yVEFHX1BBQ0tFVF85LjAuMToKKyAgICAgICAgZnN0cGwgICAgIDQwKCVyc3ApCisgICAgICAgIGZsZGwgICAgICAzMiglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjEKKy5MXzJUQUdfUEFDS0VUXzEwLjAuMToKKyAgICAgICAgZnN0cGwgICAgIDMyKCVyc3ApCisgICAgICAgIGZsZGwgICAgICA0MCglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjEKKy5MXzJUQUdfUEFDS0VUXzIuMC4xOgorLkxfMlRBR19QQUNLRVRfNy4wLjE6CisgICAgICAgIGZzdHBsICAgICAxNiglcnNwKQorICAgICAgICBtb3ZxICAgICAgMTYoJXJzcCksICV4bW0wCisgICAgICAgIGFkZHEgICAgICAkNjQsICVyc3AKKyAgICAgICAgcmV0ICAgICAgIAorLi5CMS4zOgorLi5fX190YWdfdmFsdWVfaHlwb3QuNDoKK0VORChoeXBvdCkKKyMgLS0gRW5kICBoeXBvdAorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorc3RhdGljX2NvbnN0X3RhYmxlOgorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwkyMTQ3NDgzNjQ3CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTIxNDc0ODM2NDcKKwkubG9uZwkwCisJLmxvbmcJMjE0NjQzNTA3MgorCS5sb25nCTAKKwkubG9uZwkyMTQ2NDM1MDcyCisJLnR5cGUJc3RhdGljX2NvbnN0X3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlzdGF0aWNfY29uc3RfdGFibGUsMzIKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKy8vIC0tIEJlZ2luIERXQVJGMiBTRUdNRU5UIC5laF9mcmFtZQorCS5zZWN0aW9uIC5laF9mcmFtZSwiYSIsQHByb2diaXRzCisuZWhfZnJhbWVfc2VnOgorCS5hbGlnbiAxCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuOGJ5dGUgMHgwMDUyN2EwMTAwMDAwMDAwCisJLjhieXRlIDB4MDgwNzBjMWIwMTEwNzgwMQorCS40Ynl0ZSAweDAwMDAwMTkwCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9oeXBvdC4xLS4KKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfaHlwb3QuNC0uLl9fX3RhZ192YWx1ZV9oeXBvdC4xCisJLjJieXRlIDB4MDQwMAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9oeXBvdC4zLS4uX19fdGFnX3ZhbHVlX2h5cG90LjEKKwkuMmJ5dGUgMHgxMDBlCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvZV9sb2cuUyBiL2xpYm0veDg2XzY0L2VfbG9nLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDBjYjVlMgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L2VfbG9nLlMKQEAgLTAsMCArMSw3NzkgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgICB4PTJeayAqIG14LCBteCBpbiBbMSwyKQorLy8KKy8vICAgIEdldCBCfjEvbXggYmFzZWQgb24gdGhlIG91dHB1dCBvZiByY3BzcyBpbnN0cnVjdGlvbiAoQjApCisvLyAgICBCID0gaW50KChCMCoyXjcrMC41KSkvMl43CisvLworLy8gICAgUmVkdWNlZCBhcmd1bWVudDogcj1CKm14LTEuMCAoY29tcHV0ZWQgYWNjdXJhdGVseSBpbiBoaWdoIGFuZCBsb3cgcGFydHMpCisvLworLy8gICAgUmVzdWx0OiAgaypsb2coMikgLSBsb2coQikgKyBwKHIpIGlmIHx4LTF8ID49IHNtYWxsIHZhbHVlICgyXi02KSAgYW5kCisvLyAgICAgICAgICAgICBwKHIpIGlzIGEgZGVncmVlIDcgcG9seW5vbWlhbAorLy8gICAgICAgICAgICAgLWxvZyhCKSByZWFkIGZyb20gZGF0YSB0YWJsZSAoaGlnaCwgbG93IHBhcnRzKQorLy8gICAgICAgICAgICAgUmVzdWx0IGlzIGZvcm1lZCBmcm9tIGhpZ2ggYW5kIGxvdyBwYXJ0cworLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgbG9nKE5hTikgPSBxdWlldCBOYU4sIGFuZCByYWlzZSBpbnZhbGlkIGV4Y2VwdGlvbgorLy8gIGxvZygrSU5GKSA9IHRoYXQgSU5GCisvLyAgbG9nKDApID0gLUlORiB3aXRoIGRpdmlkZS1ieS16ZXJvIGV4Y2VwdGlvbiByYWlzZWQKKy8vICBsb2coMSkgPSArMAorLy8gIGxvZyh4KSA9IE5hTiB3aXRoIGludmFsaWQgZXhjZXB0aW9uIHJhaXNlZCBpZiB4IDwgLTAsIGluY2x1ZGluZyAtSU5GCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgbG9nCitFTlRSWShsb2cpCisjIHBhcmFtZXRlciAxOiAleG1tMAorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfbG9nLjE6CisgICAgICAgIHN1YnEgICAgICAkMjQsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2xvZy4zOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglcnNwKQorLi5CMS4yOgorICAgICAgICBtb3ZxICAgICAgJDB4M2ZmMDAwMDAwMDAwMDAwMCwgJXJheAorICAgICAgICBtb3ZkICAgICAgJXJheCwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgICQweDc3ZjAwMDAwMDAwMDAwMDAsICVyZHgKKyAgICAgICAgbW92ZCAgICAgICVyZHgsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlY3gKKyAgICAgICAgbW92ZCAgICAgICVyY3gsICV4bW00CisgICAgICAgIG1vdnEgICAgICAkMHhmZmZmZTAwMDAwMDAwMDAwLCAlcjgKKyAgICAgICAgbW92ZCAgICAgICVyOCwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNjM1MiwgJWVjeAorICAgICAgICBwc3JscSAgICAgJDI3LCAleG1tMAorICAgICAgICBsZWEgICAgICAgTF90YmwoJXJpcCksICVyMTEKKyAgICAgICAgcHNybGQgICAgICQyLCAleG1tMAorICAgICAgICByY3BwcyAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjI4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgcHNybHEgICAgICQxMiwgJXhtbTEKKyAgICAgICAgc3VibCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzM2LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorLkxfMlRBR19QQUNLRVRfMS4wLjI6CisgICAgICAgIHBhZGRkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgb3JwZCAgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgcHNsbHEgICAgICQyOSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW0xLCAleG1tNQorICAgICAgICBhbmRwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAlZWN4LCAlZWF4CisgICAgICAgIGN2dHNpMnNkICAlZWF4LCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdnEgICAgICBsb2cyKCVyaXApLCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgY29lZmYoJXJpcCksICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgYW5kbCAgICAgICQxNjcxMTY4MCwgJWVkeAorICAgICAgICBzaHJsICAgICAgJDEyLCAlZWR4CisgICAgICAgIG1vdmFwZCAgICAoJXIxMSwlcmR4KSwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIDE2K2NvZWZmKCVyaXApLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAzMitjb2VmZiglcmlwKSwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBtb3ZkZHVwICAgJXhtbTEsICV4bW01CisgICAgICAgIG11bHNkICAgICA4K2xvZzIoJXJpcCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgbW92ZGR1cCAgICV4bW0wLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzAuMC4yOgorICAgICAgICBtb3ZxICAgICAgKCVyc3ApLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgKCVyc3ApLCAleG1tMQorICAgICAgICBhZGRsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIGNtcGwgICAgICAkMTYsICVlYXgKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlY3gKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMTg0MTYsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBvcnBkICAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIHBzcmxxICAgICAkMjcsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTg0MTYsICVlY3gKKyAgICAgICAgcHNybGQgICAgICQyLCAleG1tMAorICAgICAgICByY3BwcyAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjI4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgcHNybHEgICAgICQxMiwgJXhtbTEKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4yCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJC0yMDk3MTUyLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMywgMTYoJXJzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkNDkxMzYsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBkaXZzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMiwgMTYoJXJzcCkKKy5MXzJUQUdfUEFDS0VUXzguMC4yOgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsIDgoJXJzcCkKKy4uQjEuMzoKKyAgICAgICAgbW92cSAgICAgIDgoJXJzcCksICV4bW0wCisuTF8yVEFHX1BBQ0tFVF85LjAuMjoKKy4uQjEuNToKKyAgICAgICAgYWRkcSAgICAgICQyNCwgJXJzcAorLi5fX190YWdfdmFsdWVfbG9nLjQ6CisgICAgICAgIHJldCAgICAgICAKKy4uX19fdGFnX3ZhbHVlX2xvZy41OgorRU5EKGxvZykKKyMgLS0gRW5kICBsb2cKKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK0xfdGJsOgorCS5sb25nCTQyNzc4MTEyMDAKKwkubG9uZwkxMDcyMDQ5NzMwCisJLmxvbmcJMjQ3OTMxODgzMgorCS5sb25nCTEwMjY0ODcxMjcKKwkubG9uZwkyODU0NDkyMTYwCisJLmxvbmcJMTA3MjAzMzQxMAorCS5sb25nCTIxNTYzMTU1MAorCS5sb25nCTEwMjU2Mzg5NjgKKwkubG9uZwkxNTQ3MDYxMjQ4CisJLmxvbmcJMTA3MjAxNzIxNgorCS5sb25nCTI4ODY3ODE0MzUKKwkubG9uZwkxMDI2NDIzMzk1CisJLmxvbmcJNjQ5ODI1MjgwCisJLmxvbmcJMTA3MjAwMTE0NgorCS5sb25nCTQyODE1MzM0MDUKKwkubG9uZwkxMDI0MDM4OTIzCisJLmxvbmcJNjQ2MzQ2NzUyCisJLmxvbmcJMTA3MTk4NTE5OAorCS5sb25nCTE1NjI3MzU5MjEKKwkubG9uZwkxMDIzNzkwMjc2CisJLmxvbmcJMjIwMzczNDAxNgorCS5sb25nCTEwNzE5NjkzNzAKKwkubG9uZwkxODM4Mzk3NjkxCisJLmxvbmcJMzE3MzkzNjIwOQorCS5sb25nCTE4NzIxNjk5ODQKKwkubG9uZwkxMDcxOTUzNjYxCisJLmxvbmcJMzk4MTIwMjQ2MAorCS5sb25nCTEwMjIzMjUwMTMKKwkubG9uZwk2Njk1NTc3NjAKKwkubG9uZwkxMDcxOTM4MDY5CisJLmxvbmcJNDE4MjU5NzgwMgorCS5sb25nCTMxNzMxNzQxMjIKKwkubG9uZwk0MDc2NDEzOTUyCisJLmxvbmcJMTA3MTkyMjU5MQorCS5sb25nCTEyMDkwMjkxMTEKKwkubG9uZwkzMTcwNzM2MjA3CisJLmxvbmcJNTU2MTI1MTg0CisJLmxvbmcJMTA3MTkwNzIyOAorCS5sb25nCTgyMTA4NjAyOAorCS5sb25nCTMxNzM0MzcwNDkKKwkubG9uZwkyMDQ5MTQ2ODgKKwkubG9uZwkxMDcxODkxOTc2CisJLmxvbmcJMjA5NzAyNTk4NgorCS5sb25nCTMxNzEwNzE3OTgKKwkubG9uZwkzODc1NDUwODgKKwkubG9uZwkxMDcxODc2ODM0CisJLmxvbmcJMzE0MjkzNjk5NgorCS5sb25nCTMxNzMwOTIyMTgKKwkubG9uZwkyOTEyNzgzMzYwCisJLmxvbmcJMTA3MTg2MTgwMAorCS5sb25nCTI1MDI0MjAxNDAKKwkubG9uZwkxMDI0NTA1OTE5CisJLmxvbmcJMTE0NDI2MDYwOAorCS5sb25nCTEwNzE4NDY4NzQKKwkubG9uZwkzMzE1NjU4MTQwCisJLmxvbmcJMzE3MzQ2OTg0MworCS5sb25nCTE0NzEyMDk0NzIKKwkubG9uZwkxMDcxODMyMDUzCisJLmxvbmcJMTI5NjIxMDA5CisJLmxvbmcJMzE3MjQ0Mzg3NworCS5sb25nCTE4Mjk2ODMyMDAKKwkubG9uZwkxMDcxODE3MzM2CisJLmxvbmcJMzg4NTQ2NzY5MworCS5sb25nCTEwMjU1MzUyNzUKKwkubG9uZwkyODg2NzY4NjQKKwkubG9uZwkxMDcxODAyNzIyCisJLmxvbmcJODYxMzk0NzIKKwkubG9uZwkzMTcxNjM5NzkzCisJLmxvbmcJMzYzNjM3ODYyNAorCS5sb25nCTEwNzE3ODgyMDgKKwkubG9uZwkxODUwMjM4NTg3CisJLmxvbmcJMTAyNDY1NDM0MgorCS5sb25nCTE2MDY4MTc3OTIKKwkubG9uZwkxMDcxNzczNzk1CisJLmxvbmcJMzM4ODg5OTc5NQorCS5sb25nCTMxNzM2NzU1ODYKKwkubG9uZwkxMjM2MTY0NjA4CisJLmxvbmcJMTA3MTc1OTQ4MAorCS5sb25nCTM5ODM1OTkyMDcKKwkubG9uZwkxMDIwMDQ2NTU4CisJLmxvbmcJMTA4OTYxNjg5NgorCS5sb25nCTEwNzE3NDUyNjIKKwkubG9uZwk0MTcxOTc0MjI0CisJLmxvbmcJMTAyNDc3MzE5OAorCS5sb25nCTQxNDMwOTM3NjAKKwkubG9uZwkxMDcxNzMxMTM5CisJLmxvbmcJMjcyNzU4NzQwMQorCS5sb25nCTMxNzM5NjUyMDcKKwkubG9uZwk2MDAyNjc3NzYKKwkubG9uZwkxMDcxNzE3MTEyCisJLmxvbmcJMzE0NzY4NTA0MgorCS5sb25nCTMxNzMzNTMwMzEKKwkubG9uZwkyMjQ5MzEzMjgwCisJLmxvbmcJMTA3MTcwMzE3NworCS5sb25nCTEyNTgzNTA3NAorCS5sb25nCTEwMjUyNTU4MzIKKwkubG9uZwkzODA1MzAzODA4CisJLmxvbmcJMTA3MTY4OTMzNAorCS5sb25nCTIyODk5OTEyMDcKKwkubG9uZwkxMDI1NDYwMzMxCisJLmxvbmcJODcyNzg1OTIKKwkubG9uZwkxMDcxNjc1NTgzCisJLmxvbmcJMTEwNjExNDA0NQorCS5sb25nCTEwMjU5MzM2MDIKKwkubG9uZwkzMTk1NDA1MzEyCisJLmxvbmcJMTA3MTY2MTkyMAorCS5sb25nCTM4ODUzMTY1NzYKKwkubG9uZwkzMTcxMjA2MjM5CisJLmxvbmcJMzg1MzY0OTkyMAorCS5sb25nCTEwNzE2NDgzNDYKKwkubG9uZwkyOTc3MDY5ODUyCisJLmxvbmcJMzE3MTIzNjc3MQorCS5sb25nCTI5NDQwMjY2MjQKKwkubG9uZwkxMDcxNjI1MDQ4CisJLmxvbmcJMTAwODA5MzQ5MworCS5sb25nCTEwMjM0NDQ0NzQKKwkubG9uZwkzOTkzMTgwMTYwCisJLmxvbmcJMTA3MTU5ODI0NworCS5sb25nCTE4NjIzNTU1OTUKKwkubG9uZwkxMDI0NjQyNTMzCisJLmxvbmcJMTQ1NDY0MTE1MgorCS5sb25nCTEwNzE1NzE2MTcKKwkubG9uZwkxNTE0NjAzMDg5CisJLmxvbmcJMTAyNjUwMDU5NgorCS5sb25nCTMyODYwODU2MzIKKwkubG9uZwkxMDcxNTQ1MTU0CisJLmxvbmcJMTQwMDAyODQyNAorCS5sb25nCTMxNzMyNzkwNTYKKwkubG9uZwk0Mzg3NzM3NjAKKwkubG9uZwkxMDcxNTE4ODU4CisJLmxvbmcJMTIwNzI3ODY0CisJLmxvbmcJMzE3MjE0ODkxNAorCS5sb25nCTEyMTI5NzkyMDAKKwkubG9uZwkxMDcxNDkyNzI1CisJLmxvbmcJMTYyNTA1NTU5NAorCS5sb25nCTMxNzI5MDE5MzMKKwkubG9uZwkxMTg5MDE3NjAwCisJLmxvbmcJMTA3MTQ2Njc1NAorCS5sb25nCTM5MjAwNjIzNzYKKwkubG9uZwkxMDI1NzI3NDA3CisJLmxvbmcJNDAzMDY0ODMyCisJLmxvbmcJMTA3MTQ0MDk0MworCS5sb25nCTEwNTMyNzE3MjgKKwkubG9uZwkzMTcxMzkxNDI3CisJLmxvbmcJMzM0MzIxMDQ5NgorCS5sb25nCTEwNzE0MTUyODkKKwkubG9uZwkzMjQzMzk1NTAyCisJLmxvbmcJMzE3MzYyNzYxMworCS5sb25nCTE3NjU3Nzc0MDgKKwkubG9uZwkxMDcxMzg5NzkyCisJLmxvbmcJMjE0NTk2ODUxMgorCS5sb25nCTEwMjYzNTQzMDQKKwkubG9uZwk0NjE0MzA3ODQKKwkubG9uZwkxMDcxMzY0NDQ5CisJLmxvbmcJNDA5NDMyMjI4NQorCS5sb25nCTEwMjYwMjE0NjcKKwkubG9uZwk3MTcwNjYyNAorCS5sb25nCTEwNzEzMzkyNTgKKwkubG9uZwk3NjM2MzIwMjEKKwkubG9uZwkxMDI0NDk2OTMzCisJLmxvbmcJMTM4MDUwMzU1MgorCS5sb25nCTEwNzEzMTQyMTcKKwkubG9uZwkxMzgzNTQ3OTkyCisJLmxvbmcJMzE3MzA4ODQ1MworCS5sb25nCTEwMTU3MzIyMjQKKwkubG9uZwkxMDcxMjg5MzI1CisJLmxvbmcJMzE5ODY0Njg3NworCS5sb25nCTEwMjUzOTAzMjIKKwkubG9uZwkzNTk3NzIxNgorCS5sb25nCTEwNzEyNjQ1ODAKKwkubG9uZwkyMTQxMDI2ODA1CisJLmxvbmcJMTAyNTc1NDY5MworCS5sb25nCTM5MjczMDYyNDAKKwkubG9uZwkxMDcxMjM5OTc5CisJLmxvbmcJMjgyMTE2MjcyCisJLmxvbmcJMzE3MzM5NDMzNAorCS5sb25nCTExMjUzNDExODQKKwkubG9uZwkxMDcxMjE1NTIzCisJLmxvbmcJMjc2ODQyNzUwNAorCS5sb25nCTMxNzIyNzkwNTkKKwkubG9uZwkxNjY2OTcxNjQ4CisJLmxvbmcJMTA3MTE5MTIwOAorCS5sb25nCTc4NjgzNzYyOQorCS5sb25nCTMxNzI0Mjc0NDUKKwkubG9uZwkyODI3Njk0MDgwCisJLmxvbmcJMTA3MTE2NzAzMworCS5sb25nCTM4NTcxMjI0MTYKKwkubG9uZwkzMTczMDE0MjQxCisJLmxvbmcJMjAwMzY4MzMyOAorCS5sb25nCTEwNzExNDI5OTcKKwkubG9uZwk4NTkwMTA5NTQKKwkubG9uZwkxMDI2NTQ1MDA3CisJLmxvbmcJMTAwNDAxNzY2NAorCS5sb25nCTEwNzExMTkwOTgKKwkubG9uZwkzMzU2NjQ0OTcwCisJLmxvbmcJMzE3MzQ1ODA2NAorCS5sb25nCTE3NTMwMjA0MTYKKwkubG9uZwkxMDcxMDk1MzM0CisJLmxvbmcJNzg4MzM4NTUyCisJLmxvbmcJMTAyNjE1NzY5MworCS5sb25nCTE5OTI3MTgzMzYKKwkubG9uZwkxMDcxMDcxNzA0CisJLmxvbmcJMTIzOTE3OTQ0MworCS5sb25nCTEwMjYzOTQ4ODkKKwkubG9uZwkzODcwMjM0NjI0CisJLmxvbmcJMTA3MTA0ODIwNgorCS5sb25nCTIwODI2MTQ2NjMKKwkubG9uZwkxMDI0OTI2MDUzCisJLmxvbmcJMTA1MDQzNzYzMgorCS5sb25nCTEwNzEwMjQ4NDAKKwkubG9uZwk2NjAwMDc4NDAKKwkubG9uZwkxMDI1NTQ4NDk5CisJLmxvbmcJMTg4Mzk1NTIwCisJLmxvbmcJMTA3MTAwMTYwMworCS5sb25nCTM4Nzg3OTI3MDQKKwkubG9uZwkzMTczODg5NTcxCisJLmxvbmcJMzc0NzE3NjQ0OAorCS5sb25nCTEwNzA5Nzg0OTMKKwkubG9uZwkxNDQ5OTE3MDgKKwkubG9uZwkzMTcxNTUyMDQyCisJLmxvbmcJMTQwNTY2OTM3NgorCS5sb25nCTEwNzA5NTU1MTEKKwkubG9uZwkzOTk5MDg4ODc5CisJLmxvbmcJMTAyNTQ4NjMxNworCS5sb25nCTEyMTE1MTQ4OAorCS5sb25nCTEwNzA5MzI2NTQKKwkubG9uZwkyMTcwODY1NDk3CisJLmxvbmcJMTAyNjQ3MzU4NAorCS5sb25nCTI2NTIzMTk3NDQKKwkubG9uZwkxMDcwOTA5OTIwCisJLmxvbmcJNDUzNjk1NjUyCisJLmxvbmcJMzE3MzkxNjgwOQorCS5sb25nCTMyNjIyMzY2NzIKKwkubG9uZwkxMDcwODg3MzA5CisJLmxvbmcJMTU3ODAwMDUzCisJLmxvbmcJMzE3Mzk4NDIwNgorCS5sb25nCTYwMTIyMTEyMAorCS5sb25nCTEwNzA4NjQ4MjAKKwkubG9uZwkzOTY4OTE3NjYxCisJLmxvbmcJMTAyMzk5Mjg4NgorCS5sb25nCTE5OTk4NDMzMjgKKwkubG9uZwkxMDcwODQyNDUwCisJLmxvbmcJMzA1Mzg5NTAwNAorCS5sb25nCTEwMjQ5OTgyMjgKKwkubG9uZwkxOTkyMTY3NDI0CisJLmxvbmcJMTA3MDgyMDE5OQorCS5sb25nCTI5Njg2MTQ4NTYKKwkubG9uZwkxMDI0NTUyNjUzCisJLmxvbmcJMzc4ODcyNjI3MgorCS5sb25nCTEwNzA3OTgwNjUKKwkubG9uZwkzNTQyMTcwODA4CisJLmxvbmcJMzE3MzU3MzI0MgorCS5sb25nCTIwOTQ4Mjk1NjgKKwkubG9uZwkxMDcwNzc2MDQ4CisJLmxvbmcJMTI0Njc1ODEzMgorCS5sb25nCTEwMjYyMDI4NzQKKwkubG9uZwkyODg2NzU4NDAKKwkubG9uZwkxMDcwNzU0MTQ2CisJLmxvbmcJMzc0NzMyODk1MAorCS5sb25nCTEwMjYzMzE1ODUKKwkubG9uZwkxODI5NjgxMTUyCisJLmxvbmcJMTA3MDczMjM1NworCS5sb25nCTMxMjUxOTc1NDYKKwkubG9uZwkxMDI0MTAwMzE4CisJLmxvbmcJMTY2Njg2OTI0OAorCS5sb25nCTEwNzA3MTA2ODEKKwkubG9uZwkxMzYzNjU2MTE5CisJLmxvbmcJMTAyNjMzNjQ5MworCS5sb25nCTM0MTcxMTA1MjgKKwkubG9uZwkxMDcwNjg5MTE2CisJLmxvbmcJNDE1NDc5MTU1MworCS5sb25nCTEwMjYyNjc4NTMKKwkubG9uZwkyMTgzNjUzMzc2CisJLmxvbmcJMTA3MDY2NzY2MgorCS5sb25nCTE2NzE4MTkyOTIKKwkubG9uZwkzMTczNzg1ODcwCisJLmxvbmcJMTczNDQzNDgxNgorCS5sb25nCTEwNzA2NDYzMTcKKwkubG9uZwkzNzMwOTEwNDkKKwkubG9uZwkxMDI1OTcyMzYzCisJLmxvbmcJMTYxNTY4MTUzNgorCS5sb25nCTEwNzA2MjUwODAKKwkubG9uZwkzODQ2NTA4OTcKKwkubG9uZwkxMDIyOTI2MDQzCisJLmxvbmcJMTQ0NTM4MjE0NAorCS5sb25nCTEwNzA2MDM5NTAKKwkubG9uZwkzNDQzMjAzMzAKKwkubG9uZwkzMTcyMzk3MTk2CisJLmxvbmcJMTgyMzcxNTMyOAorCS5sb25nCTEwNzA1Njk3NTYKKwkubG9uZwkzMzg5ODQxMjAwCisJLmxvbmcJMTAyNTIzMTg1MgorCS5sb25nCTM4Mzk2ODg3MDQKKwkubG9uZwkxMDcwNTI3OTE3CisJLmxvbmcJMTcwNjc5MDQxNworCS5sb25nCTMxNjczNjMzNDkKKwkubG9uZwk0MjkzMzMyOTkyCisJLmxvbmcJMTA3MDQ4NjI4NgorCS5sb25nCTE2MTQ5MzUwODgKKwkubG9uZwkxMDE5MzUxNTkxCisJLmxvbmcJMjk2NjcyMDUxMgorCS5sb25nCTEwNzA0NDQ4NjEKKwkubG9uZwk0MTQ1MzkzNzE3CisJLmxvbmcJMzE3MzcxMTY1OAorCS5sb25nCTQwNjY3Mjk5ODQKKwkubG9uZwkxMDcwNDAzNjM5CisJLmxvbmcJMTk3NDkyNTAyOAorCS5sb25nCTMxNzE0MzcxODIKKwkubG9uZwkzMzM3NjIxNTA0CisJLmxvbmcJMTA3MDM2MjYxOQorCS5sb25nCTMzMTQ5NTMxNzAKKwkubG9uZwkzMTY5OTcxMzE0CisJLmxvbmcJOTQzNDQ4MDY0CisJLmxvbmcJMTA3MDMyMTc5OQorCS5sb25nCTE0OTg2ODIwMzgKKwkubG9uZwkzMTczODYyMzQwCisJLmxvbmcJMTQ2NTYzNDgxNgorCS5sb25nCTEwNzAyODExNzYKKwkubG9uZwkxMzE5OTUyODEwCisJLmxvbmcJMzE3MTY5Mzk2NQorCS5sb25nCTEwMTU3MzQyNzIKKwkubG9uZwkxMDcwMjQwNzQ5CisJLmxvbmcJMTM0NzgyMTkyOQorCS5sb25nCTMxNzM1NDQ1MTUKKwkubG9uZwkxMTgwMDE2NjQKKwkubG9uZwkxMDcwMjAwNTE2CisJLmxvbmcJMTc1MTQ4Mjc0NgorCS5sb25nCTEwMjYxMzQwOTMKKwkubG9uZwkzNzA3MTc0OTEyCisJLmxvbmcJMTA3MDE2MDQ3NAorCS5sb25nCTE0ODY5NDYxNTkKKwkubG9uZwkxMDIzOTMwOTIwCisJLmxvbmcJMzk0NjM4MTMxMgorCS5sb25nCTEwNzAxMjA2MjMKKwkubG9uZwkyODY3NDA4MDgxCisJLmxvbmcJMzE3MTM2ODI3NgorCS5sb25nCTE2OTk4NDgxOTIKKwkubG9uZwkxMDcwMDgwOTYxCisJLmxvbmcJMjU5MDE4NzEzOQorCS5sb25nCTEwMjUzNzk4MDMKKwkubG9uZwkyMjM1ODQ2NjU2CisJLmxvbmcJMTA3MDA0MTQ4NQorCS5sb25nCTE4ODg1NjgwNjkKKwkubG9uZwkzMTcyNzU0OTYwCisJLmxvbmcJMjMzOTcyOTQwOAorCS5sb25nCTEwNzAwMDIxOTQKKwkubG9uZwkzODUyMjE0NzUzCisJLmxvbmcJMzE3MzMyMzE0OQorCS5sb25nCTMxOTY4NTAxNzYKKwkubG9uZwkxMDY5OTYzMDg2CisJLmxvbmcJNzQyMTQxNTYwCisJLmxvbmcJMTAyNTEwMTcwNworCS5sb25nCTE4MDA2ODM1MjAKKwkubG9uZwkxMDY5OTI0MTYwCisJLmxvbmcJMzk0OTUwMDQ0NAorCS5sb25nCTMxNzIxMDIxNzkKKwkubG9uZwkzODM1ODAxNjAwCisJLmxvbmcJMTA2OTg4NTQxMworCS5sb25nCTM4NDg4OTU5NDMKKwkubG9uZwkxMDI1OTEzODMyCisJLmxvbmcJMjIwMTIwMjY4OAorCS5sb25nCTEwNjk4NDY4NDUKKwkubG9uZwkxNDI1OTEzNDY0CisJLmxvbmcJMTAyNTg2ODY2NQorCS5sb25nCTI3NzgyNzk5MzYKKwkubG9uZwkxMDY5ODA4NDUzCisJLmxvbmcJMjEyMDg4OTY3NworCS5sb25nCTMxNzM4MzExMjgKKwkubG9uZwkyOTU0MjAzMTM2CisJLmxvbmcJMTA2OTc3MDIzNgorCS5sb25nCTU5MjE0NzA4MQorCS5sb25nCTEwMTk2MjEyODgKKwkubG9uZwkyMTAxNDExODQKKwkubG9uZwkxMDY5NzMyMTkzCisJLmxvbmcJMzQxNDI3NTIzMworCS5sb25nCTEwMjM2NDcwODQKKwkubG9uZwk3MDk0NzYzNTIKKwkubG9uZwkxMDY5Njk0MzIxCisJLmxvbmcJMjQxMzAyNzE2NAorCS5sb25nCTEwMjQ0NjIxMTUKKwkubG9uZwkyMTE2Mjg0NDE2CisJLmxvbmcJMTA2OTY1NjYxOQorCS5sb25nCTExNDQ1NTk5MjQKKwkubG9uZwkxMDI2MzM2NjU0CisJLmxvbmcJMjE4MzY1MTMyOAorCS5sb25nCTEwNjk2MTkwODYKKwkubG9uZwkzNDU5MDU3NjUwCisJLmxvbmcJMTAyNTYzNDE2OAorCS5sb25nCTMwNDcwNDcxNjgKKwkubG9uZwkxMDY5NTgxNzIwCisJLmxvbmcJMTg3OTY3NDkyNAorCS5sb25nCTMxNzM1MDg1NzMKKwkubG9uZwk5NzA3MTEwNDAKKwkubG9uZwkxMDY5NTQxNTIxCisJLmxvbmcJMTMzNTk1NDE3MworCS5sb25nCTMxNzMzMzIxODIKKwkubG9uZwkyMTk4NDc4ODQ4CisJLmxvbmcJMTA2OTQ2NzQ0OQorCS5sb25nCTI5NTExMDM5NjgKKwkubG9uZwkzMTczODkyMjAwCisJLmxvbmcJMTY2OTYxMTUyMAorCS5sb25nCTEwNjkzOTM3MDMKKwkubG9uZwk1MzEwNDQxNDcKKwkubG9uZwkxMDI1MTQ5MjQ4CisJLmxvbmcJMjkxMTQzNjgKKwkubG9uZwkxMDY5MzIwMjgwCisJLmxvbmcJMzMyNzgzMTI1MQorCS5sb25nCTEwMjU5MTg2NzMKKwkubG9uZwkyMzc2OTQ5NzYwCisJLmxvbmcJMTA2OTI0NzE3NgorCS5sb25nCTczNzYzNDUzMworCS5sb25nCTMxNzIxNzYwMDAKKwkubG9uZwkxMDg1MzkwODQ4CisJLmxvbmcJMTA2OTE3NDM5MAorCS5sb25nCTMxMDgyNDM0MDAKKwkubG9uZwkzMTcxODI4NDA2CisJLmxvbmcJMTU2NjEzMDE3NgorCS5sb25nCTEwNjkxMDE5MTgKKwkubG9uZwk5ODU0ODMyMjYKKwkubG9uZwkxMDI1NzA4MzgwCisJLmxvbmcJNzkyNzgwODAwCisJLmxvbmcJMTA2OTAyOTc1OAorCS5sb25nCTQxODQ4NjYyOTUKKwkubG9uZwkxMDI0NDI2MjA0CisJLmxvbmcJMTgzMTU2NzM2CisJLmxvbmcJMTA2ODk1NzkwNworCS5sb25nCTI4NDU2OTkzNzgKKwkubG9uZwkxMDIyMTA3Mjc3CisJLmxvbmcJMTMwMTc4MjUyOAorCS5sb25nCTEwNjg4ODYzNjIKKwkubG9uZwkxMDEyNzM1MjYyCisJLmxvbmcJMzE3MzgwNDI5NAorCS5sb25nCTE1NjI0MTEwMDgKKwkubG9uZwkxMDY4ODE1MTIxCisJLmxvbmcJMjE5NzA4NjcwMworCS5sb25nCTMxNzAxODc4MTMKKwkubG9uZwkyODE1NTQ5NDQwCisJLmxvbmcJMTA2ODc0NDE4MQorCS5sb25nCTI3ODI2MTMyMDcKKwkubG9uZwkxMDI2MzQ1MDU0CisJLmxvbmcJMjc1NjEyNDY3MgorCS5sb25nCTEwNjg2NzM1NDAKKwkubG9uZwkyOTI5NDg2MjA1CisJLmxvbmcJMzE3MzAzNzgwMAorCS5sb25nCTM1MTEwNTAyNDAKKwkubG9uZwkxMDY4NjAzMTk1CisJLmxvbmcJMTQ0MzczMzE0NworCS5sb25nCTMxNzMzMzE1NDkKKwkubG9uZwkzMDQ3MDQ3MTY4CisJLmxvbmcJMTA2ODUzMzE0NAorCS5sb25nCTE4Nzk2NzQ5MjQKKwkubG9uZwkzMTcyNDU5OTk3CisJLmxvbmcJMzIyMTY2Nzg0MAorCS5sb25nCTEwNjg0Mjc4MjUKKwkubG9uZwkxMzM4NTg4MDI3CisJLmxvbmcJMzE3MTgxNTc0MgorCS5sb25nCTM0NTM4NjE4ODgKKwkubG9uZwkxMDY4Mjg4ODgzCisJLmxvbmcJMTIwNTM0ODM1OQorCS5sb25nCTMxNzI2MjQ2MjYKKwkubG9uZwkzNTA2MTEwNDY0CisJLmxvbmcJMTA2ODE1MDUxNAorCS5sb25nCTg5MzEwNTE5OAorCS5sb25nCTEwMjU1NzE4NjYKKwkubG9uZwkzNDYwMTM2OTYKKwkubG9uZwkxMDY4MDEyNzE0CisJLmxvbmcJMzQ5NTU2OTAyMQorCS5sb25nCTMxNzI1NjMzNDkKKwkubG9uZwk0MDc0MDI5MDU2CisJLmxvbmcJMTA2Nzg3NTQ3NgorCS5sb25nCTM5NjExMDYzMzgKKwkubG9uZwkzMTcxMDY1NTk1CisJLmxvbmcJMzU1OTc4NDQ0OAorCS5sb25nCTEwNjc3Mzg3OTgKKwkubG9uZwkxOTc1Mzg1Mzg0CisJLmxvbmcJMzE3Mzc4MzE1NQorCS5sb25nCTc5Nzc2OTcyOAorCS5sb25nCTEwNjc2MDI2NzUKKwkubG9uZwkzNzYwMzA1Nzg3CisJLmxvbmcJMTAyNjA0NzY0MgorCS5sb25nCTIzMTM2MzM3OTIKKwkubG9uZwkxMDY3NDY3MTAxCisJLmxvbmcJMTU1OTM1MzE3MQorCS5sb25nCTEwMjM0ODAyNTYKKwkubG9uZwkzOTYwNzY2NDY0CisJLmxvbmcJMTA2NzIxMzc3OAorCS5sb25nCTEwNjczNjUxMDcKKwkubG9uZwkxMDI1ODY1OTI2CisJLmxvbmcJNjg0MjYxMzc2CisJLmxvbmcJMTA2Njk0NDgwNQorCS5sb25nCTg0NDc2MjE2NAorCS5sb25nCTMxNzM2ODc0ODIKKwkubG9uZwk2MzA3MTg0NjQKKwkubG9uZwkxMDY2Njc2OTA1CisJLmxvbmcJMjQ1ODI2OTY5NAorCS5sb25nCTEwMjQwMzMwODEKKwkubG9uZwkxNDg2MDYxNTY4CisJLmxvbmcJMTA2NjQxMDA3MAorCS5sb25nCTExNTUzNzg3NAorCS5sb25nCTMxNzMyNDM5OTUKKwkubG9uZwkyNzQzNjY0NjQwCisJLmxvbmcJMTA2NTg4Njc5MgorCS5sb25nCTM2NjUwOTgzMDQKKwkubG9uZwkzMTczNDcxNjA3CisJLmxvbmcJMTk3MTkxMjcwNAorCS5sb25nCTEwNjUzNTczMzMKKwkubG9uZwkyNTc3MjE0NDQwCisJLmxvbmcJMzE3MTk5MzQ1MQorCS5sb25nCTE0OTg5MzkzOTIKKwkubG9uZwkxMDY0MzA2NjkzCisJLmxvbmcJMzQwOTAzNjkyMworCS5sb25nCTEwMjU1OTkxNTEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLnR5cGUJTF90YmwsQG9iamVjdAorCS5zaXplCUxfdGJsLDIwNjQKKwkuYWxpZ24gMTYKK2xvZzI6CisJLmxvbmcJNDI3NzgxMTIwMAorCS5sb25nCTEwNjc4NTU0MjYKKwkubG9uZwkyNDc5MzE4ODMyCisJLmxvbmcJMTAyMjI5MjgyMworCS50eXBlCWxvZzIsQG9iamVjdAorCS5zaXplCWxvZzIsMTYKKwkuYWxpZ24gMTYKK2NvZWZmOgorCS5sb25nCTI0NTQyNjcwMjYKKwkubG9uZwkxMDY5Njk3MzE2CisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkxMDMwNzMwMTAxCisJLmxvbmcJMzIxNzM4MDcwMgorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDcwOTQ1NjIxCisJLmxvbmcJMjU3Njk4MDM3OAorCS5sb25nCTEwNzAxNzY2NjUKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS50eXBlCWNvZWZmLEBvYmplY3QKKwkuc2l6ZQljb2VmZiw0OAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorLy8gLS0gQmVnaW4gRFdBUkYyIFNFR01FTlQgLmVoX2ZyYW1lCisJLnNlY3Rpb24gLmVoX2ZyYW1lLCJhIixAcHJvZ2JpdHMKKy5laF9mcmFtZV9zZWc6CisJLmFsaWduIDEKKwkuNGJ5dGUgMHgwMDAwMDAxNAorCS44Ynl0ZSAweDAwNTI3YTAxMDAwMDAwMDAKKwkuOGJ5dGUgMHgwODA3MGMxYjAxMTA3ODAxCisJLjRieXRlIDB4MDAwMDAxOTAKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2xvZy4xLS4KKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfbG9nLjUtLi5fX190YWdfdmFsdWVfbG9nLjEKKwkuMmJ5dGUgMHgwNDAwCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2xvZy4zLS4uX19fdGFnX3ZhbHVlX2xvZy4xCisJLjJieXRlIDB4MjAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfbG9nLjQtLi5fX190YWdfdmFsdWVfbG9nLjMKKwkuMmJ5dGUgMHgwODBlCisJLmJ5dGUgMHgwMAorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L2VfbG9nMTAuUyBiL2xpYm0veDg2XzY0L2VfbG9nMTAuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZjQzYTM2Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvZV9sb2cxMC5TCkBAIC0wLDAgKzEsODA3IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gICAgTGV0IHg9Ml5rICogbXgsIG14IGluIFsxLDIpCisvLworLy8gICAgR2V0IEJ+MS9teCBiYXNlZCBvbiB0aGUgb3V0cHV0IG9mIHJjcHNzIGluc3RydWN0aW9uIChCMCkKKy8vICAgIEIgPSBpbnQoKEIwKkxIKjJeNyswLjUpKS8yXjcKKy8vICAgIExIIGlzIGEgc2hvcnQgYXBwcm94aW1hdGlvbiBmb3IgbG9nMTAoZSkKKy8vCisvLyAgICBSZWR1Y2VkIGFyZ3VtZW50OiByPUIqbXgtTEggKGNvbXB1dGVkIGFjY3VyYXRlbHkgaW4gaGlnaCBhbmQgbG93IHBhcnRzKQorLy8KKy8vICAgIFJlc3VsdDogIGsqbG9nMTAoMikgLSBsb2coQikgKyBwKHIpCisvLyAgICAgICAgICAgICBwKHIpIGlzIGEgZGVncmVlIDcgcG9seW5vbWlhbAorLy8gICAgICAgICAgICAgLWxvZyhCKSByZWFkIGZyb20gZGF0YSB0YWJsZSAoaGlnaCwgbG93IHBhcnRzKQorLy8gICAgICAgICAgICAgUmVzdWx0IGlzIGZvcm1lZCBmcm9tIGhpZ2ggYW5kIGxvdyBwYXJ0cworLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgbG9nMTAoMCkgPSAtSU5GIHdpdGggZGl2aWRlLWJ5LXplcm8gZXhjZXB0aW9uIHJhaXNlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKy8vICBsb2cxMCgxKSA9ICswCisvLyAgbG9nMTAoeCkgPSBOYU4gd2l0aCBpbnZhbGlkIGV4Y2VwdGlvbiByYWlzZWQgaWYgeCA8IC0wLCBpbmNsdWRpbmcgLUlORgorLy8gIGxvZzEwKCtJTkYpID0gK0lORgorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIGxvZzEwCitFTlRSWShsb2cxMCkKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisuLkIxLjE6CisuLl9fX3RhZ192YWx1ZV9sb2cxMC4xOgorICAgICAgICBzdWJxICAgICAgJDI0LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9sb2cxMC4zOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglcnNwKQorLi5CMS4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDEwNTQ3MzYzODQsICVlY3gKKyAgICAgICAgbW92ZCAgICAgICVlY3gsICV4bW03CisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQzMDcwNCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0zCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJWVkeCwgJXhtbTQKKyAgICAgICAgbW92YXBkICAgIEhJR0hTSUdNQVNLKCVyaXApLCAleG1tNQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNjM1MiwgJWVjeAorICAgICAgICBwc3JscSAgICAgJDI3LCAleG1tMAorICAgICAgICBtb3ZxICAgICAgTE9HMTBfRSglcmlwKSwgJXhtbTIKKyAgICAgICAgcHNybGQgICAgICQyLCAleG1tMAorICAgICAgICByY3BwcyAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNzgsICV4bW01LCAleG1tNgorICAgICAgICBwc3JscSAgICAgJDEyLCAleG1tMQorICAgICAgICBzdWJsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3MzYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgbXVsc3MgICAgICV4bW03LCAleG1tMAorICAgICAgICBvcnBkICAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGxlYSAgICAgICBMX3RibCglcmlwKSwgJXIxMQorICAgICAgICBhbmRwZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIHBhZGRkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgcHNsbHEgICAgICQyOSwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAlZWN4LCAlZWF4CisgICAgICAgIGN2dHNpMnNkICAlZWF4LCAleG1tNworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgIGxvZzIoJXJpcCksICV4bW02CisgICAgICAgIG1vdmFwZCAgICBjb2VmZiglcmlwKSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBhbmRsICAgICAgJDE2NzExNjgwLCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMTIsICVlZHgKKyAgICAgICAgbW92YXBkICAgIC0xNTA0KCVyMTEsJXJkeCksICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAxNitjb2VmZiglcmlwKSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgMzIrY29lZmYoJXJpcCksICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTEsICV4bW01CisgICAgICAgIG11bHNkICAgICA4K2xvZzIoJXJpcCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIG1vdnEgICAgICA4K0xPRzEwX0UoJXJpcCksICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIHBzaHVmZCAgICAkMjI4LCAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMCwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTQsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgbW92cSAgICAgICglcnNwKSwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICglcnNwKSwgJXhtbTEKKyAgICAgICAgYWRkbCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICBjbXBsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNS4wLjI6CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDE4NDE2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgb3JwZCAgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE4NDE2LCAlZWN4CisgICAgICAgIHBzcmxxICAgICAkMjcsICV4bW0wCisgICAgICAgIG1vdnEgICAgICBMT0cxMF9FKCVyaXApLCAleG1tMgorICAgICAgICBwc3JsZCAgICAgJDIsICV4bW0wCisgICAgICAgIHJjcHBzICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcHNsbHEgICAgICQxMiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ3OCwgJXhtbTUsICV4bW02CisgICAgICAgIHBzcmxxICAgICAkMTIsICV4bW0xCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQtMjA5NzE1MiwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgb3JsICAgICAgICVlY3gsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDksIDE2KCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMgorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDQ5MTM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgZGl2c2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDgsIDE2KCVyc3ApCisuTF8yVEFHX1BBQ0tFVF84LjAuMjoKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCA4KCVyc3ApCisuLkIxLjM6CisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMAorLkxfMlRBR19QQUNLRVRfOS4wLjI6CisuLkIxLjU6CisgICAgICAgIGFkZHEgICAgICAkMjQsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2xvZzEwLjQ6CisgICAgICAgIHJldCAgICAgICAKKy4uX19fdGFnX3ZhbHVlX2xvZzEwLjU6CitFTkQobG9nMTApCisjIC0tIEVuZCAgbG9nMTAKKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK0hJR0hTSUdNQVNLOgorCS5sb25nCTQxNjA3NDk1NjgKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NTkxMDQKKwkudHlwZQlISUdIU0lHTUFTSyxAb2JqZWN0CisJLnNpemUJSElHSFNJR01BU0ssMTYKKwkuYWxpZ24gMTYKK0xPRzEwX0U6CisJLmxvbmcJMAorCS5sb25nCTEwNzEzNjYxNDQKKwkubG9uZwkzMjA3NDc5NTYwCisJLmxvbmcJMTA2Mjg5NDE4OAorCS50eXBlCUxPRzEwX0UsQG9iamVjdAorCS5zaXplCUxPRzEwX0UsMTYKKwkuYWxpZ24gMTYKK0xfdGJsOgorCS5sb25nCTEzNTI2MjgyMjQKKwkubG9uZwkxMDcwODEwMTMxCisJLmxvbmcJNTIxMzE5MjU2CisJLmxvbmcJMTAyNTUwMzAyNQorCS5sb25nCTIxNTA4MzkyOTYKKwkubG9uZwkxMDcwODAxOTQ0CisJLmxvbmcJMzMyOTM1MDA5NgorCS5sb25nCTMxNzAxOTAwMTUKKwkubG9uZwkxMzYwNjEzMzc2CisJLmxvbmcJMTA3MDc5Mzc5NAorCS5sb25nCTIwMjQwNTkwNzUKKwkubG9uZwkxMDI0OTkxNTk0CisJLmxvbmcJMTg3NTM1MDUyOAorCS5sb25nCTEwNzA3ODU2ODAKKwkubG9uZwkyMTYzODgyMTQxCisJLmxvbmcJMzE2MzU2NDEzNworCS5sb25nCTIzMTIxMjY0NjQKKwkubG9uZwkxMDcwNzc3NjAyCisJLmxvbmcJMTk3NTcxMTA3NgorCS5sb25nCTEwMjM2NzQxOTYKKwkubG9uZwkxMzA2MzM2MjU2CisJLmxvbmcJMTA3MDc2OTU2MAorCS5sb25nCTM1MjQ4OTk1MjMKKwkubG9uZwkzMTcwNTA4MTY0CisJLmxvbmcJMTgwNjMzNDk3NgorCS5sb25nCTEwNzA3NjE1NTMKKwkubG9uZwk0MjU0Nzc3MDI1CisJLmxvbmcJMTAyNTIzODczOQorCS5sb25nCTI0ODMxOTM4NTYKKwkubG9uZwkxMDcwNzUzNTgxCisJLmxvbmcJMzgwMDY3MTMxNworCS5sb25nCTMxNzI5MTY4MzAKKwkubG9uZwkyMDI1MzUwMTQ0CisJLmxvbmcJMTA3MDc0NTY0NAorCS5sb25nCTE3MzE1MTQ3NDUKKwkubG9uZwkxMDI1NTAxMDgzCisJLmxvbmcJMzQzMzI4NTYzMgorCS5sb25nCTEwNzA3Mzc3NDEKKwkubG9uZwkyNTUxODU3MzM2CisJLmxvbmcJMzE2OTY2MjE4NgorCS5sb25nCTExMzQzMTc1NjgKKwkubG9uZwkxMDcwNzI5ODczCisJLmxvbmcJMzQyNjI5NzY1NQorCS5sb25nCTMxNzI2Mzc4OTEKKwkubG9uZwkyNDU3MTUyNTEyCisJLmxvbmcJMTA3MDcyMjAzOAorCS5sb25nCTYzNTQ5NDE1CisJLmxvbmcJMTAyNTQxNTQxNgorCS5sb25nCTE4NjE4MDMwMDgKKwkubG9uZwkxMDcwNzE0MjM3CisJLmxvbmcJMTkxMDE3MTYzNgorCS5sb25nCTEwMjM5Nzc1ODAKKwkubG9uZwkyNDE0MTQwNDE2CisJLmxvbmcJMTA3MDcwNjQ2OQorCS5sb25nCTQwMDI1MTQzMzcKKwkubG9uZwkzMTcwODQxNjE4CisJLmxvbmcJMjkwMDcyNjc4NAorCS5sb25nCTEwNzA2OTg3MzQKKwkubG9uZwkzMjY4MDY0MDgzCisJLmxvbmcJMTAyMjQ1OTYwOQorCS5sb25nCTIxMjM1MTc5NTIKKwkubG9uZwkxMDcwNjkxMDMyCisJLmxvbmcJMTc2NzAzMTIxOAorCS5sb25nCTEwMjI0NDgxNTYKKwkubG9uZwkzMTk0NTY5NzI4CisJLmxvbmcJMTA3MDY4MzM2MgorCS5sb25nCTM0MDIzMzI2MTgKKwkubG9uZwkzMTcxNjcxMTYwCisJLmxvbmcJNjUwODgyMDQ4CisJLmxvbmcJMTA3MDY3NTcyNQorCS5sb25nCTQxNDYwMjM5MDUKKwkubG9uZwkzMTcxMDIzMDM4CisJLmxvbmcJMTkyODk4ODY3MgorCS5sb25nCTEwNzA2NjgxMTkKKwkubG9uZwkxNDM4NjE3ODY3CisJLmxvbmcJMTAxNjM2MDQ5MQorCS5sb25nCTE1OTQ5MDg2NzIKKwkubG9uZwkxMDcwNjYwNTQ1CisJLmxvbmcJOTcxMzg5Mzc3CisJLmxvbmcJMTAyNDc2Mzk3OQorCS5sb25nCTI4MTg3NDYzNjgKKwkubG9uZwkxMDcwNjUzMDAyCisJLmxvbmcJMzU1NTkyNTM0MQorCS5sb25nCTMxNzI0MzQ4MjEKKwkubG9uZwkxOTQ1ODQ1NzYKKwkubG9uZwkxMDcwNjQ1NDkxCisJLmxvbmcJOTQzOTE5MjE1CisJLmxvbmcJMzE3Mjk1MDA2MworCS5sb25nCTEyMTUwOTY4MzIKKwkubG9uZwkxMDcwNjM4MDEwCisJLmxvbmcJMjI4MzM1ODU4OAorCS5sb25nCTEwMjIzMzUwOTgKKwkubG9uZwk1MDE1MTkzNjAKKwkubG9uZwkxMDcwNjMwNTYwCisJLmxvbmcJNDgwOTA0Mjk1CisJLmxvbmcJMTAyNDQzNzk1OQorCS5sb25nCTEyNzgyNjYzNjgKKwkubG9uZwkxMDcwNjIzMTQwCisJLmxvbmcJMjc1NTgwNjA2NgorCS5sb25nCTMxNzIzNDIwMTIKKwkubG9uZwkyNDg3ODEyMDk2CisJLmxvbmcJMTA3MDYxNTc1MAorCS5sb25nCTI0ODk2NTMyMDIKKwkubG9uZwkzMTcyNDgxMDk5CisJLmxvbmcJMzA4NTQ1MTI2NAorCS5sb25nCTEwNzA2MDgzOTAKKwkubG9uZwkzNzU5MTg0OTUxCisJLmxvbmcJMzE3MjU3NDg5MgorCS5sb25nCTIwMzkwOTAxNzYKKwkubG9uZwkxMDcwNjAxMDYwCisJLmxvbmcJMTM2MTE3NjY3NgorCS5sb25nCTMxNzIzNTUzMTkKKwkubG9uZwk5NTMwNTcyODAKKwkubG9uZwkxMDcwNTkxNDIzCisJLmxvbmcJMTE3NjU4NzU0NgorCS5sb25nCTMxNjY0MjIwMTgKKwkubG9uZwkzMzcwNTI0NjcyCisJLmxvbmcJMTA3MDU3Njg3OQorCS5sb25nCTM2Njk1NzAwNTEKKwkubG9uZwkxMDI1Mzc2NjMwCisJLmxvbmcJNzQ5NzQyMDgwCisJLmxvbmcJMTA3MDU2MjM5NAorCS5sb25nCTcwNzcwMDk2NAorCS5sb25nCTMxNzA4MTQwNTgKKwkubG9uZwk0MDA4MzUzNzkyCisJLmxvbmcJMTA3MDU0Nzk2NQorCS5sb25nCTMyNDczMjc2NTIKKwkubG9uZwkxMDIyNDMxNDAwCisJLmxvbmcJMjYxMjQ1NTQyNAorCS5sb25nCTEwNzA1MzM1OTQKKwkubG9uZwkyNDUzNDU3MzQ0CisJLmxvbmcJMzE3MjMyMjk2OQorCS5sb25nCTMyMzA5MjA3MDQKKwkubG9uZwkxMDcwNTE5Mjc5CisJLmxvbmcJMTI5Njc4MTgwMQorCS5sb25nCTEwMjUxMTUzMzUKKwkubG9uZwkzOTY1MjUzNjMyCisJLmxvbmcJMTA3MDUwNTAyMAorCS5sb25nCTM3MzA3NTI4OQorCS5sb25nCTEwMTc5Mzg1MjgKKwkubG9uZwkyNTkzMTU3MTIwCisJLmxvbmcJMTA3MDQ3NjY2OQorCS5sb25nCTEwNjgwNTQwODYKKwkubG9uZwkxMDIxNjE2NTc2CisJLmxvbmcJOTI1OTYyMjQwCisJLmxvbmcJMTA3MDQ0ODUzNworCS5sb25nCTg1MDEyMTIxMworCS5sb25nCTEwMjM5Mjg5ODkKKwkubG9uZwkxNzMyNTU2ODAwCisJLmxvbmcJMTA3MDQyMDYyMAorCS5sb25nCTEzMDUyMDY3NDAKKwkubG9uZwkzMTcyNjY1NTcwCisJLmxvbmcJMzgxNTYzMDg0OAorCS5sb25nCTEwNzAzOTI5MTUKKwkubG9uZwkxOTI2NDI5NDMKKwkubG9uZwkzMTcyNjk5OTA3CisJLmxvbmcJMjAwMTc1ODIwOAorCS5sb25nCTEwNzAzNjU0MjAKKwkubG9uZwkyODIwNzg2NjgzCisJLmxvbmcJMTAyNDcwNDg2NworCS5sb25nCTE2NzQ2NDk2CisJLmxvbmcJMTA3MDMzODEzMQorCS5sb25nCTEzOTk1NzMxMTAKKwkubG9uZwkzMTcxMzcyNzczCisJLmxvbmcJMTg4NjQ5MjY3MgorCS5sb25nCTEwNzAzMTEwNDQKKwkubG9uZwkzNjIxNDI4MDc1CisJLmxvbmcJMzE3Mjk3NDM1OAorCS5sb25nCTMzMzgxOTY5OTIKKwkubG9uZwkxMDcwMjg0MTU3CisJLmxvbmcJMzc5Mzg4MjAzNQorCS5sb25nCTEwMjUxMjQ3MDEKKwkubG9uZwkzODE3Njk3MjgKKwkubG9uZwkxMDcwMjU3NDY4CisJLmxvbmcJMzg3NzkzMzM0MgorCS5sb25nCTMxNzAxOTU0OTAKKwkubG9uZwkyMTg2NDkxOTA0CisJLmxvbmcJMTA3MDIzMDk3MgorCS5sb25nCTE4Mzg2ODcwODkKKwkubG9uZwkxMDE3OTI3MjkyCisJLmxvbmcJMTAwODMzMDc1MgorCS5sb25nCTEwNzAyMDQ2NjgKKwkubG9uZwkyMjI4MzIxNjY0CisJLmxvbmcJMTAyNTM1MjE5NgorCS5sb25nCTIyNDcwNjU2MDAKKwkubG9uZwkxMDcwMTc4NTUyCisJLmxvbmcJMTQxMzkwMDkwNgorCS5sb25nCTMxNzA5MDI1MzIKKwkubG9uZwkyOTY0MDcwNDAwCisJLmxvbmcJMTA3MDE1MjYyMgorCS5sb25nCTM1OTA0NTQ2MjkKKwkubG9uZwkxMDI1MDE2ODQ0CisJLmxvbmcJNDY1MTU0MDQ4CisJLmxvbmcJMTA3MDEyNjg3NgorCS5sb25nCTIwNzk2ODg1NTAKKwkubG9uZwkzMTcyMjY4MTgzCisJLmxvbmcJODgzNjE1NzQ0CisJLmxvbmcJMTA3MDEwMTMxMAorCS5sb25nCTk4OTI0NDQ1MgorCS5sb25nCTMxNzE5MDA0ODUKKwkubG9uZwkxOTkzNzY4OTYwCisJLmxvbmcJMTA3MDA3NTkyMgorCS5sb25nCTExMjQzMjc4NDEKKwkubG9uZwkzMTcyOTY0OTkyCisJLmxvbmcJMTc5NDQ3MTkzNgorCS5sb25nCTEwNzAwNTA3MTAKKwkubG9uZwkxMTQwNTc1MDQ2CisJLmxvbmcJMTAyMjY3MzcyNgorCS5sb25nCTI3OTc5MzI1NDQKKwkubG9uZwkxMDcwMDI1NjcxCisJLmxvbmcJMTg5NDgzNjkzMworCS5sb25nCTMxNzI1NDQwNTkKKwkubG9uZwkzNDMzNzk3NjMyCisJLmxvbmcJMTA3MDAwMDgwMworCS5sb25nCTMyMjE4MzExNjYKKwkubG9uZwkzMTcxOTIxNjg1CisJLmxvbmcJMjMzODM3MTU4NAorCS5sb25nCTEwNjk5NzYxMDQKKwkubG9uZwkzNzMyNDYxMDUzCisJLmxvbmcJMzE2NDUxMzUxOAorCS5sb25nCTI2NDQwMTMwNTYKKwkubG9uZwkxMDY5OTUxNTcxCisJLmxvbmcJMjUxOTQ2MDQ2MgorCS5sb25nCTMxNzI1NDg3NDAKKwkubG9uZwkzMzgzODE0MTQ0CisJLmxvbmcJMTA2OTkyNzIwMgorCS5sb25nCTIyOTA5OTc2NTcKKwkubG9uZwkxMDI1NDk5NjQ5CisJLmxvbmcJMzc4MTM4MDA5NgorCS5sb25nCTEwNjk5MDI5OTUKKwkubG9uZwkzODA0Nzk0MDUKKwkubG9uZwkxMDI1MTg0MTM2CisJLmxvbmcJMzI0NTc4NTA4OAorCS5sb25nCTEwNjk4Nzg5NDgKKwkubG9uZwkxMDk2Mzk4MjYxCisJLmxvbmcJMzE2OTg4NTE5MgorCS5sb25nCTEzNjY3MTIzMjAKKwkubG9uZwkxMDY5ODU1MDU5CisJLmxvbmcJMjIxODM0MzcxNQorCS5sb25nCTMxNzAyODE2MjgKKwkubG9uZwkyMjA0NzE3MDU2CisJLmxvbmcJMTA2OTgzMTMyNQorCS5sb25nCTI2NjgzMzQwMTEKKwkubG9uZwkxMDI1MjY0NTI0CisJLmxvbmcJMTQwMTc3MjAzMgorCS5sb25nCTEwNjk4MDc3NDUKKwkubG9uZwk0MTAzOTkzMTU5CisJLmxvbmcJMTAyMjkyNTcyMQorCS5sb25nCTMzNTY3MjExNTIKKwkubG9uZwkxMDY5Nzg0MzE2CisJLmxvbmcJMzU3Mzc5MDc3MgorCS5sb25nCTMxNzIxODY1MjcKKwkubG9uZwk0MDQxMTQ4NDE2CisJLmxvbmcJMTA2OTc2MTAzNworCS5sb25nCTQwMjc2OTE5MTAKKwkubG9uZwkzMTcxMjc2OTkwCisJLmxvbmcJMzg4MDE1MTA0MAorCS5sb25nCTEwNjk3Mzc5MDYKKwkubG9uZwk0MDg3MTE4Nzg2CisJLmxvbmcJMzE3MjcxMDczNAorCS5sb25nCTM0NTMzNjQyMjQKKwkubG9uZwkxMDY5NzE0OTIxCisJLmxvbmcJOTkwMTQyOTkKKwkubG9uZwkzMTcyMDAzMDc3CisJLmxvbmcJMzQ5MTA5MjQ4MAorCS5sb25nCTEwNjk2OTIwODAKKwkubG9uZwkzODAxODM2NzAxCisJLmxvbmcJMzE3Mjk4OTI4NworCS5sb25nCTU3NTU4MDE2MAorCS5sb25nCTEwNjk2NjkzODIKKwkubG9uZwkxOTIwNDA2MDEyCisJLmxvbmcJMzE3MDg3NDEyNQorCS5sb25nCTIyMjgyMjQwCisJLmxvbmcJMTA2OTY0NjgyNAorCS5sb25nCTk2NDE5MzM3MAorCS5sb25nCTEwMTkzNjMxNTkKKwkubG9uZwkyOTkxNDI5NjMyCisJLmxvbmcJMTA2OTYyNDQwNAorCS5sb25nCTMzNzI1ODk4OTAKKwkubG9uZwkxMDIzNDI1MDUzCisJLmxvbmcJMjE4OTY0NTgyNAorCS5sb25nCTEwNjk2MDIxMjIKKwkubG9uZwkyNjEwNTAzODcyCisJLmxvbmcJMTAyMzY1MjQ0MgorCS5sb25nCTMzNDE0Njc2NDgKKwkubG9uZwkxMDY5NTc5OTc1CisJLmxvbmcJMTE5MDI5MjAwNAorCS5sb25nCTEwMjI0MjU2NjUKKwkubG9uZwkzNzExMjkzNDQwCisJLmxvbmcJMTA2OTU1Nzk2MgorCS5sb25nCTExMDQ3OTUzNTYKKwkubG9uZwkxMDIzNjI1ODI5CisJLmxvbmcJMTM4MDQwMTE1MgorCS5sb25nCTEwNjk1MjQ2NDQKKwkubG9uZwkxMTU2OTk4MjE3CisJLmxvbmcJMTAyNTEwMDQ5OQorCS5sb25nCTc2NTcxMDMzNgorCS5sb25nCTEwNjk0ODExNDQKKwkubG9uZwkxNzM2NjQ5MTEzCisJLmxvbmcJMTAyNDk5OTQzOQorCS5sb25nCTg0OTQxMjA5NgorCS5sb25nCTEwNjk0Mzc5MDIKKwkubG9uZwkyNjE4MTc4MzMwCisJLmxvbmcJMzE3MDg1MzYyOQorCS5sb25nCTE0MzMxMDQzODQKKwkubG9uZwkxMDY5Mzk0OTE1CisJLmxvbmcJNDM0NzcyNjcKKwkubG9uZwkzMTcwMzc4ODExCisJLmxvbmcJMjU0ODU5NjczNgorCS5sb25nCTEwNjkzNTIxODAKKwkubG9uZwkzOTY3MzY3MDYzCisJLmxvbmcJMTAyNTI0NjU4NAorCS5sb25nCTE1NzU3NzIxNgorCS5sb25nCTEwNjkzMDk2OTUKKwkubG9uZwkxMDA0MDI1MzMKKwkubG9uZwkzMTcyODI1NTAyCisJLmxvbmcJMzMyNjIzODcyMAorCS5sb25nCTEwNjkyNjc0NTUKKwkubG9uZwkxMTc2ODkyOTA5CisJLmxvbmcJMTAyNTQ2NDA5OQorCS5sb25nCTQxNTU0OTQ0MDAKKwkubG9uZwkxMDY5MjI1NDU5CisJLmxvbmcJMzcxMzcwNzYxNworCS5sb25nCTMxNzI2MzAwNDYKKwkubG9uZwkzNTQ1ODA0ODAwCisJLmxvbmcJMTA2OTE4MzcwNAorCS5sb25nCTg1NzAwNzMxNQorCS5sb25nCTEwMjQ5NjU3NzcKKwkubG9uZwkyNjAyNTIwNTc2CisJLmxvbmcJMTA2OTE0MjE4NworCS5sb25nCTI1ODg3NTgzNDcKKwkubG9uZwkxMDIyNDYzMTMxCisJLmxvbmcJMjYzMTE5NjY3MgorCS5sb25nCTEwNjkxMDA5MDUKKwkubG9uZwkyMTE4NDI0MjM1CisJLmxvbmcJMTAyMjQ5MDk4OQorCS5sb25nCTgzODEzNTgwOAorCS5sb25nCTEwNjkwNTk4NTYKKwkubG9uZwk0MTE3MDAyNzI3CisJLmxvbmcJMTAyNDg3NDUyMAorCS5sb25nCTMyMTA5MDM1NTIKKwkubG9uZwkxMDY5MDE5MDM2CisJLmxvbmcJNjUwMDcwMTI1CisJLmxvbmcJMzE3MjAxMjk2NgorCS5sb25nCTMwMzkyMTE1MjAKKwkubG9uZwkxMDY4OTc4NDQ0CisJLmxvbmcJNDM4MDU1ODEyCisJLmxvbmcJMTAxNzc0Mzc1NworCS5sb25nCTIzODU2MzMyODAKKwkubG9uZwkxMDY4OTM4MDc3CisJLmxvbmcJMzAxMTk5MDM2OQorCS5sb25nCTMxNzEzMTIwNDQKKwkubG9uZwkzNDkxNjE4ODE2CisJLmxvbmcJMTA2ODg5NzkzMgorCS5sb25nCTcxMjgxMzgxOAorCS5sb25nCTMxNzI3MjA0MDAKKwkubG9uZwkxODM2NDQxNjAKKwkubG9uZwkxMDY4ODU4MDA4CisJLmxvbmcJNDI4NzAwNjc0MgorCS5sb25nCTEwMjIzNzk3MjgKKwkubG9uZwkzNjM5MjE0MDgwCisJLmxvbmcJMTA2ODgxODMwMAorCS5sb25nCTM1Mzc2MjI3OQorCS5sb25nCTMxNzI5ODAwMDkKKwkubG9uZwkzNzI4NDE2NzY4CisJLmxvbmcJMTA2ODc3ODgwOAorCS5sb25nCTE4NTEzNjc3MzAKKwkubG9uZwkxMDI1NDg2NTc0CisJLmxvbmcJMzM3MDA5NDU5MgorCS5sb25nCTEwNjg3Mzk1MjkKKwkubG9uZwk0MDQ2NTk0OTEzCisJLmxvbmcJMzE3MjU2NzA0NworCS5sb25nCTEzNDg0MDcyOTYKKwkubG9uZwkxMDY4NzAwNDYxCisJLmxvbmcJMTQzMTg5Njc1CisJLmxvbmcJMTAyNTM5NzYzMgorCS5sb25nCTg5OTQwMzc3NgorCS5sb25nCTEwNjg2NjE2MDEKKwkubG9uZwkzNzUzNjg3ODQyCisJLmxvbmcJMzE3MDc3Mjc3MgorCS5sb25nCTExMTc3MDgyODgKKwkubG9uZwkxMDY4NjIyOTQ3CisJLmxvbmcJMTg1NzM0MDgxMgorCS5sb25nCTMxNzA3ODI2NzgKKwkubG9uZwkxMjQ4Mjc2NDgwCisJLmxvbmcJMTA2ODU4NDQ5NworCS5sb25nCTEyODk4NTgyMDMKKwkubG9uZwkxMDI1MjIyMjg5CisJLmxvbmcJNjgzMjM3Mzc2CisJLmxvbmcJMTA2ODU0NjI0OQorCS5sb25nCTIzNTY2Nzk2MDgKKwkubG9uZwkzMTcxNjI5MTcwCisJLmxvbmcJMzI1Mzc2NDA5NgorCS5sb25nCTEwNjg1MDgyMDAKKwkubG9uZwkzMjY3MTM2NTU2CisJLmxvbmcJMTAxODU1NDk4NworCS5sb25nCTk0NDc4MzM2CisJLmxvbmcJMTA2ODQ0MTc1NgorCS5sb25nCTE5Mjc4Njg4MTQKKwkubG9uZwkzMTY5Mzc4MTgwCisJLmxvbmcJMzIzMzE0NDgzMgorCS5sb25nCTEwNjgzNjY0NDUKKwkubG9uZwkyNjgyMTg4ODU0CisJLmxvbmcJMTAyMzk2NDAwNAorCS5sb25nCTI5NDAyOTcyMTYKKwkubG9uZwkxMDY4MjkxNTIyCisJLmxvbmcJMjc1MzAxMjg5CisJLmxvbmcJMTAyMzk0NDY3OQorCS5sb25nCTM2Nzc3MDgyODgKKwkubG9uZwkxMDY4MjE2OTgyCisJLmxvbmcJMzAyNjU4NzcxCisJLmxvbmcJMTAyNDQ2NTU2NworCS5sb25nCTE1NzY5NjgxOTIKKwkubG9uZwkxMDY4MTQyODIyCisJLmxvbmcJMzY3MjAzNTk0MAorCS5sb25nCTMxNzIyNTQ2MTAKKwkubG9uZwkxNjE0MDY5NzYwCisJLmxvbmcJMTA2ODA2OTAzNworCS5sb25nCTQ4MDA1MjkwNQorCS5sb25nCTMxNzI2OTIwNjIKKwkubG9uZwk0MjQ0MzU3MTIKKwkubG9uZwkxMDY3OTk1NjI0CisJLmxvbmcJMjIwNzg2OTY1NworCS5sb25nCTMxNzA5NjU0MzYKKwkubG9uZwkzNDc3NzgyNTI4CisJLmxvbmcJMTA2NzkyMjU3OAorCS5sb25nCTI5ODA2NjE4NTgKKwkubG9uZwkzMTY0OTkwMDE4CisJLmxvbmcJMzU5ODQwMTUzNgorCS5sb25nCTEwNjc4NDk4OTcKKwkubG9uZwkxOTc0MzkzMDM0CisJLmxvbmcJMzE3MTM1NzA4MworCS5sb25nCTI0MzUyMzU4NDAKKwkubG9uZwkxMDY3Nzc3NTc3CisJLmxvbmcJMTM4NTI4OTAxMQorCS5sb25nCTEwMjQ2MTU4MjMKKwkubG9uZwkxODY3MzMzNjMyCisJLmxvbmcJMTA2NzcwNTYxNAorCS5sb25nCTM0NDIyMzY2MzMKKwkubG9uZwkxMDI1MzM0Mzg0CisJLmxvbmcJMzk5OTMwMTYzMgorCS5sb25nCTEwNjc2MzQwMDQKKwkubG9uZwkzNTA2NDcyMDczCisJLmxvbmcJMTAyNTEzMjU0NgorCS5sb25nCTI1NjY5NzEzOTIKKwkubG9uZwkxMDY3NTYyNzQ1CisJLmxvbmcJMTQyNTc1NzU5MgorCS5sb25nCTMxNzIzNTg0NjMKKwkubG9uZwkxMTI5NDMxMDQKKwkubG9uZwkxMDY3NDkxODMzCisJLmxvbmcJMTY5MzQwNzE1NgorCS5sb25nCTMxNzI0MjY2MDMKKwkubG9uZwkzMDc5OTI5ODU2CisJLmxvbmcJMTA2NzM5MjE1OQorCS5sb25nCTM5OTk5NDI0NTUKKwkubG9uZwkxMDE4NTQ5MzY5CisJLmxvbmcJMjQ0MzgzNzQ0MAorCS5sb25nCTEwNjcyNTE3MDEKKwkubG9uZwk5NzQ1MzQ0NjAKKwkubG9uZwkxMDIzOTYzNDEyCisJLmxvbmcJMzU5MzY2NjU2CisJLmxvbmcJMTA2NzExMTkxNworCS5sb25nCTIyMDQ5MTUwMTgKKwkubG9uZwkxMDEzNTE0NDE2CisJLmxvbmcJMzU2NDUxOTQyNAorCS5sb25nCTEwNjY5NzI3OTkKKwkubG9uZwkzOTc3NDQxNjU5CisJLmxvbmcJMzE3MDg3OTg2MAorCS5sb25nCTIwMTEwODY4NDgKKwkubG9uZwkxMDY2ODM0MzQzCisJLmxvbmcJNTkwMTQ1NTE0CisJLmxvbmcJMTAyNTM5MDAxMQorCS5sb25nCTMyMTY5ODIwMTYKKwkubG9uZwkxMDY2Njk2NTQxCisJLmxvbmcJMzYyOTEyMDExMAorCS5sb25nCTEwMjQzMzAzMTMKKwkubG9uZwkyMTk0MTI4ODk2CisJLmxvbmcJMTA2NjU1OTM4OAorCS5sb25nCTIzNjcwOTg1MTIKKwkubG9uZwkzMTcyMjYwMzM4CisJLmxvbmcJMjkxNjIyMDkyOAorCS5sb25nCTEwNjY0MjI4NzcKKwkubG9uZwkyMjYyNDMxODg2CisJLmxvbmcJMTAyMTIyOTQ0NgorCS5sb25nCTIyNjM5NDExMjAKKwkubG9uZwkxMDY2MTcyMjE0CisJLmxvbmcJMzExODUwNzI4NworCS5sb25nCTEwMjE0ODQ5NzAKKwkubG9uZwkzMDc2MjkyNjA4CisJLmxvbmcJMTA2NTkwMTcyNgorCS5sb25nCTE0MTE3Mzc4MDMKKwkubG9uZwkzMTcyOTU3MTQ3CisJLmxvbmcJMTE4NjEzNjA2NAorCS5sb25nCTEwNjU2MzI0ODgKKwkubG9uZwkzMTA5MzQ5MzM3CisJLmxvbmcJMTAyNTM5NzM4MworCS5sb25nCTMwODUzMDM4MDgKKwkubG9uZwkxMDY1MzY0NDg3CisJLmxvbmcJNTg0NzE1MDMxCisJLmxvbmcJMzE3MjU5NjUxOQorCS5sb25nCTE4MjEwNDg4MzIKKwkubG9uZwkxMDY0ODQyMjExCisJLmxvbmcJMjE4MjI0Njg5NQorCS5sb25nCTMxNzI1MzYyMTQKKwkubG9uZwk2OTczNjg1NzYKKwkubG9uZwkxMDY0MzExMDk0CisJLmxvbmcJMzE1NzU2MTc2NQorCS5sb25nCTMxNzI3MTYzNTcKKwkubG9uZwk4OTQwNDIxMTIKKwkubG9uZwkxMDYzMjYwMTMxCisJLmxvbmcJMzIzNzk1ODE1NAorCS5sb25nCTMxNzI1ODcyOTIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLnR5cGUJTF90YmwsQG9iamVjdAorCS5zaXplCUxfdGJsLDIwNjQKKwkuYWxpZ24gMTYKK2xvZzI6CisJLmxvbmcJMTM1MjYyODIyNAorCS5sb25nCTEwNjY2MTU4MjcKKwkubG9uZwk1MjEzMTkyNTYKKwkubG9uZwkxMDIxMzA4NzIxCisJLnR5cGUJbG9nMixAb2JqZWN0CisJLnNpemUJbG9nMiwxNgorCS5hbGlnbiAxNgorY29lZmY6CisJLmxvbmcJMzI0ODg3Nzg3MAorCS5sb25nCTEwNzcyNTAxNjQKKwkubG9uZwkxNjkxNjc2NDI5CisJLmxvbmcJMzIyMTc4NzQwMQorCS5sb25nCTk0NTEzMjQ2NQorCS5sb25nCTMyMjM3MDE3ODMKKwkubG9uZwkzNzAwODMxMzM1CisJLmxvbmcJMTA3MzUwNjgxOAorCS5sb25nCTIxNDEwMTA1OTMKKwkubG9uZwkxMDc1MjI3NTUxCisJLmxvbmcJMzY5ODgzMTYzNworCS5sb25nCTMyMjAzMzk0NDIKKwkudHlwZQljb2VmZixAb2JqZWN0CisJLnNpemUJY29lZmYsNDgKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKy8vIC0tIEJlZ2luIERXQVJGMiBTRUdNRU5UIC5laF9mcmFtZQorCS5zZWN0aW9uIC5laF9mcmFtZSwiYSIsQHByb2diaXRzCisuZWhfZnJhbWVfc2VnOgorCS5hbGlnbiAxCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuOGJ5dGUgMHgwMDUyN2EwMTAwMDAwMDAwCisJLjhieXRlIDB4MDgwNzBjMWIwMTEwNzgwMQorCS40Ynl0ZSAweDAwMDAwMTkwCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9sb2cxMC4xLS4KKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfbG9nMTAuNS0uLl9fX3RhZ192YWx1ZV9sb2cxMC4xCisJLjJieXRlIDB4MDQwMAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9sb2cxMC4zLS4uX19fdGFnX3ZhbHVlX2xvZzEwLjEKKwkuMmJ5dGUgMHgyMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9sb2cxMC40LS4uX19fdGFnX3ZhbHVlX2xvZzEwLjMKKwkuMmJ5dGUgMHgwODBlCisJLmJ5dGUgMHgwMAorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L2VfcG93LlMgYi9saWJtL3g4Nl82NC9lX3Bvdy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjllYzM4MjgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Nl82NC9lX3Bvdy5TCkBAIC0wLDAgKzEsNDI4MiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vICAgIExldCB4PTJeayAqIG14LCBteCBpbiBbMSwyKQorLy8KKy8vICAgIGxvZzIoeCkgY2FsY3VsYXRpb246CisvLworLy8gICAgR2V0IEJ+MS9teCBiYXNlZCBvbiB0aGUgb3V0cHV0IG9mIHJjcHBzIGluc3RydWN0aW9uIChCMCkKKy8vICAgIEIgPSBpbnQoKEIwKkxIKjJeOSswLjUpKS8yXjkKKy8vICAgIExIIGlzIGEgc2hvcnQgYXBwcm94aW1hdGlvbiBmb3IgbG9nMihlKQorLy8KKy8vICAgIFJlZHVjZWQgYXJndW1lbnQsIHNjYWxlZCBieSBMSDoKKy8vICAgICAgICAgICAgICAgIHI9QipteC1MSCAoY29tcHV0ZWQgYWNjdXJhdGVseSBpbiBoaWdoIGFuZCBsb3cgcGFydHMpCisvLworLy8gICAgbG9nMih4KSByZXN1bHQ6ICBrIC0gbG9nMihCKSArIHAocikKKy8vICAgICAgICAgICAgIHAocikgaXMgYSBkZWdyZWUgOCBwb2x5bm9taWFsCisvLyAgICAgICAgICAgICAtbG9nMihCKSByZWFkIGZyb20gZGF0YSB0YWJsZSAoaGlnaCwgbG93IHBhcnRzKQorLy8gICAgICAgICAgICAgbG9nMih4KSBpcyBmb3JtZWQgZnJvbSBoaWdoIGFuZCBsb3cgcGFydHMKKy8vICAgIEZvciB8eHwgaW4gWzEtMS8zMiwgMSsxLzE2KSwgYSBzbG93ZXIgYnV0IG1vcmUgYWNjdXJhdGUgY29tcHV0YXRpb24KKy8vICAgIGJhc2VkIG9tIHRoZSBzYW1lIHRhYmxlIGRlc2lnbiBpcyBwZXJmb3JtZWQuCisvLworLy8gICBNYWluIHBhdGggaXMgdGFrZW4gaWYgfCBmbG9vcihsb2cyKHxsb2cyKHx4fCl8KSArIGZsb29yKGxvZzJ8eXwpIHwgPCA4LAorLy8gICB0byBmaWx0ZXIgb3V0IGFsbCBwb3RlbnRpYWwgT0YvVUYgY2FzZXMuCisvLyAgIGV4cDIoeSpsb2cyKHgpKSBpcyBjb21wdXRlZCB1c2luZyBhbiA4LWJpdCBpbmRleCB0YWJsZSBhbmQgYSBkZWdyZWUgNQorLy8gICBwb2x5bm9taWFsCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBwb3coLTAseSkgPSAtSU5GIGFuZCByYWlzZXMgdGhlIGRpdmlkZS1ieS16ZXJvIGV4Y2VwdGlvbiBmb3IgeSBhbiBvZGQgCisvLyAgaW50ZWdlciA8IDAuCisvLyAgcG93KC0wLHkpID0gK0lORiBhbmQgcmFpc2VzIHRoZSBkaXZpZGUtYnktemVybyBleGNlcHRpb24gZm9yIHkgPCAwIGFuZCAKKy8vICBub3QgYW4gb2RkIGludGVnZXIuCisvLyAgcG93KC0wLHkpID0gLTAgZm9yIHkgYW4gb2RkIGludGVnZXIgPiAwLgorLy8gIHBvdygtMCx5KSA9ICswIGZvciB5ID4gMCBhbmQgbm90IGFuIG9kZCBpbnRlZ2VyLgorLy8gIHBvdygtMSwtSU5GKSA9IDEuCisvLyAgcG93KCsxLHkpID0gMSBmb3IgYW55IHksIGV2ZW4gYSBOYU4uCisvLyAgcG93KHgsLTApID0gMSBmb3IgYW55IHgsIGV2ZW4gYSBOYU4uCisvLyAgcG93KHgseSkgPSBhIE5hTiBhbmQgcmFpc2VzIHRoZSBpbnZhbGlkIGV4Y2VwdGlvbiBmb3IgZmluaXRlIHggPCAwIGFuZAorLy8gIGZpbml0ZSBub24taW50ZWdlciB5LgorLy8gIHBvdyh4LC1JTkYpID0gK0lORiBmb3IgfHh8PDEuCisvLyAgcG93KHgsLUlORikgPSArMCBmb3IgfHh8PjEuCisvLyAgcG93KHgsK0lORikgPSArMCBmb3IgfHh8PDEuCisvLyAgcG93KHgsK0lORikgPSArSU5GIGZvciB8eHw+MS4KKy8vICBwb3coLUlORix5KSA9IC0wIGZvciB5IGFuIG9kZCBpbnRlZ2VyIDwgMC4KKy8vICBwb3coLUlORix5KSA9ICswIGZvciB5IDwgMCBhbmQgbm90IGFuIG9kZCBpbnRlZ2VyLgorLy8gIHBvdygtSU5GLHkpID0gLUlORiBmb3IgeSBhbiBvZGQgaW50ZWdlciA+IDAuCisvLyAgcG93KC1JTkYseSkgPSArSU5GIGZvciB5ID4gMCBhbmQgbm90IGFuIG9kZCBpbnRlZ2VyLgorLy8gIHBvdygrSU5GLHkpID0gKzAgZm9yIHkgPDAuCisvLyAgcG93KCtJTkYseSkgPSArSU5GIGZvciB5ID4wLgorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHBvdworRU5UUlkocG93KQorIyBwYXJhbWV0ZXIgMTogJXhtbTAKKyMgcGFyYW1ldGVyIDI6ICV4bW0xCisuLkIxLjE6CisuLl9fX3RhZ192YWx1ZV9wb3cuMToKKyAgICAgICAgc3VicSAgICAgICQ0MCwgJXJzcAorLi5fX190YWdfdmFsdWVfcG93LjM6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgOCglcnNwKQorICAgICAgICBtb3ZzZCAgICAgJXhtbTEsIDE2KCVyc3ApCisuLkIxLjI6CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZxICAgICAgJDB4M2ZmMDAwMDAwMDAwMDAwMCwgJXI5CisgICAgICAgIG1vdmQgICAgICAlcjksICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTA2OTA4ODc2OCwgJXI4ZAorICAgICAgICBtb3ZkICAgICAgJXI4LCAleG1tNworICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAkMHg3N2YwMDAwMDAwMDAwMDAwLCAlcjEwCisgICAgICAgIG1vdmQgICAgICAlcjEwLCAleG1tMQorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgc3VibCAgICAgICQxNjM2OCwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBzYXJsICAgICAgJDMxLCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIHhvcmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIEhJR0hTSUdNQVNLKCVyaXApLCAleG1tNgorICAgICAgICBwc3JscSAgICAgJDI3LCAleG1tMAorICAgICAgICBtb3ZxICAgICAgTE9HMl9FKCVyaXApLCAleG1tMgorICAgICAgICBwc3JsZCAgICAgJDIsICV4bW0wCisgICAgICAgIGFkZGwgICAgICAkMTYsICVlY3gKKyAgICAgICAgYnNyICAgICAgICVlY3gsICVlY3gKKyAgICAgICAgcmNwcHMgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDEyLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJDgxOTIsICVyMTFkCisgICAgICAgIG1vdmQgICAgICAlcjExLCAleG1tNAorICAgICAgICBwc3JscSAgICAgJDEyLCAleG1tMworICAgICAgICBzdWJsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3MzYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisgICAgICAgIG1vdnEgICAgICAkMCwgJXI4CisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgbXVsc3MgICAgICV4bW03LCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJC0xLCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkNCwgJWVjeAorICAgICAgICBzaGxsICAgICAgJWNsLCAlZWR4CisgICAgICAgIHNobHEgICAgICAkMzIsICVyZHgKKyAgICAgICAgbW92ZCAgICAgICVyZHgsICV4bW01CisgICAgICAgIG9ycGQgICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgc3VibCAgICAgICQxNjM1MSwgJWVheAorICAgICAgICBjbXBsICAgICAgJDEsICVlYXgKKyAgICAgICAgamJlICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIHBhZGRkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgYW5kcGQgICAgICV4bW0zLCAleG1tNQorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlZHgKKyAgICAgICAgcHNsbHEgICAgICQyOSwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIGFuZHBkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgc3VibCAgICAgICQxLCAlZWF4CisgICAgICAgIHNhcmwgICAgICAkNCwgJWVheAorICAgICAgICBjdnRzaTJzZCAgJWVheCwgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIGNvZWZmKCVyaXApLCAleG1tMQorICAgICAgICBsZWEgICAgICAgTF90YmwoJXJpcCksICVyMTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgMTYrY29lZmYoJXJpcCksICV4bW00CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkMzEsICVlYXgKKyAgICAgICAgYWRkbCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVlY3gsICVlYXgKKyAgICAgICAgYWRkbCAgICAgICQxLCAlZWF4CisgICAgICAgIGJzciAgICAgICAlZWF4LCAlZWF4CisgICAgICAgIHVucGNrbHBkICAleG1tMywgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIDMyK2NvZWZmKCVyaXApLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIGFuZGwgICAgICAkMTY3NjA4MzIsICVlZHgKKyAgICAgICAgc2hybCAgICAgICQxMCwgJWVkeAorICAgICAgICBhZGRwZCAgICAgLTM2NDgoJXIxMSwlcmR4KSwgJXhtbTUKKyAgICAgICAgbW92YXBkICAgIDQ4K2NvZWZmKCVyaXApLCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMywgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMworICAgICAgICBhZGRwZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTEKKyAgICAgICAgbW92dyAgICAgIDIyKCVyc3ApLCAlY3gKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tNworICAgICAgICBtb3ZxICAgICAgSElHSE1BU0tfWSglcmlwKSwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMywgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tMAorICAgICAgICBzaGxsICAgICAgJDQsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxNTg3MiwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWF4CisgICAgICAgIG11bHBkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgY21wbCAgICAgICQ2MjQsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tNiwgJXhtbTYKKyAgICAgICAgbW92bCAgICAgICQxNzA4MCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW02CisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgICV4bW0xLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNgorICAgICAgICBsZWEgICAgICAgVF9leHAoJXJpcCksICVyMTEKKyAgICAgICAgYWRkcGQgICAgICV4bW0wLCAleG1tMworICAgICAgICBtb3ZkICAgICAgJXhtbTYsICVlZHgKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTMsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDI1NSwgJWVkeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgKCVyMTEsJXJkeCw4KSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICBlX2NvZWZmKCVyaXApLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgMTYrZV9jb2VmZiglcmlwKSwgJXhtbTMKKyAgICAgICAgc2hsbCAgICAgICQxMiwgJWVjeAorICAgICAgICB4b3JsICAgICAgJXI4ZCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJC0xMDQ4NTc2LCAlZWN4CisgICAgICAgIG1vdmQgICAgICAlcmN4LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIG1vdnEgICAgICAkMHgzZmU2MmU0MmZlZmEzOWVmLCAlcjkKKyAgICAgICAgbW92ZCAgICAgICVyOSwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMTcsICV4bW02LCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgcGFkZGQgICAgICV4bW02LCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tNSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQxNiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIGFuZGwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIHRlc3RsICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisuTF8yVEFHX1BBQ0tFVF84LjAuMjoKKyAgICAgICAgbW92cSAgICAgIDgoJXJzcCksICV4bW0wCisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMworICAgICAgICBtb3ZkICAgICAgJXhtbTMsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTMKKyAgICAgICAgbW92ZCAgICAgICV4bW0zLCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJDE4NDE2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgb3JwZCAgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE4NDE2LCAlZWN4CisgICAgICAgIHBzcmxxICAgICAkMjcsICV4bW0wCisgICAgICAgIG1vdnEgICAgICBMT0cyX0UoJXJpcCksICV4bW0yCisgICAgICAgIHBzcmxkICAgICAkMiwgJXhtbTAKKyAgICAgICAgcmNwcHMgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDEyLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgSElHSFNJR01BU0soJXJpcCksICV4bW02CisgICAgICAgIHBzcmxxICAgICAkMTIsICV4bW0zCisgICAgICAgIG11bHNzICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQtMTAyNCwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJWVkeCwgJXhtbTUKKyAgICAgICAgb3JwZCAgICAgICV4bW0xLCAleG1tMworICAgICAgICBwYWRkZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMzIsICV4bW01CisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVkeAorICAgICAgICBwc2xscSAgICAgJDI5LCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIG1vdmwgICAgICAkMCwgJXI4ZAorICAgICAgICBhbmRwZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBzdWJsICAgICAgJDE4NDE2LCAlZWF4CisgICAgICAgIHNhcmwgICAgICAkNCwgJWVheAorICAgICAgICBjdnRzaTJzZCAgJWVheCwgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzEwLjAuMjoKKyAgICAgICAgbW92cSAgICAgIDgoJXJzcCksICV4bW0wCisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMworICAgICAgICBtb3ZkICAgICAgJXhtbTMsICVlZHgKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTMKKyAgICAgICAgbW92ZCAgICAgICV4bW0zLCAlZWN4CisgICAgICAgIG9ybCAgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJDE4NDE2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgb3JwZCAgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE4NDE2LCAlZWN4CisgICAgICAgIHBzcmxxICAgICAkMjcsICV4bW0wCisgICAgICAgIG1vdnEgICAgICBMT0cyX0UoJXJpcCksICV4bW0yCisgICAgICAgIHBzcmxkICAgICAkMiwgJXhtbTAKKyAgICAgICAgcmNwcHMgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDEyLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgSElHSFNJR01BU0soJXJpcCksICV4bW02CisgICAgICAgIHBzcmxxICAgICAkMTIsICV4bW0zCisgICAgICAgIG11bHNzICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQtMTAyNCwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJWVkeCwgJXhtbTUKKyAgICAgICAgb3JwZCAgICAgICV4bW0xLCAleG1tMworICAgICAgICBwYWRkZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHBzbGxxICAgICAkMzIsICV4bW01CisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVkeAorICAgICAgICBwc2xscSAgICAgJDI5LCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIG1vdmwgICAgICAkLTIxNDc0ODM2NDgsICVyOGQKKyAgICAgICAgYW5kcGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxODQxNiwgJWVheAorICAgICAgICBzYXJsICAgICAgJDQsICVlYXgKKyAgICAgICAgY3Z0c2kyc2QgICVlYXgsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWF4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMS4wLjIKKyAgICAgICAgY21wbCAgICAgICQ3MzYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzEyLjAuMgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG1vdnEgICAgICBIQUxGTUFTSyglcmlwKSwgJXhtbTIKKyAgICAgICAgYWRkcGQgICAgICV4bW0wLCAleG1tMworICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG1vdmwgICAgICAkMTcwODAsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICV4bW01LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG1vdnEgICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTUsICV4bW03CisgICAgICAgIGFuZHBkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMgorICAgICAgICBhbmRwZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG1vdnEgICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW02CisgICAgICAgIG1vdmQgICAgICAleG1tNiwgJWVheAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIGxlYSAgICAgICBUX2V4cCglcmlwKSwgJXIxMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICBlX2NvZWZmKCVyaXApLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgMTYrZV9jb2VmZiglcmlwKSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW02LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMjU1LCAlZWF4CisgICAgICAgIGFkZGwgICAgICAlZWF4LCAlZWF4CisgICAgICAgIG1vdmFwZCAgICAoJXIxMSwlcmF4LDgpLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0yCisgICAgICAgIHNhcmwgICAgICAkOCwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJWVjeCwgJWVheAorICAgICAgICBzYXJsICAgICAgJDEsICVlY3gKKyAgICAgICAgc3VibCAgICAgICVlY3gsICVlYXgKKyAgICAgICAgc2hsbCAgICAgICQyMCwgJWVjeAorICAgICAgICB4b3JsICAgICAgJXI4ZCwgJWVjeAorICAgICAgICBtb3ZkICAgICAgJWVjeCwgJXhtbTYKKyAgICAgICAgbW92cSAgICAgIDMyK2VfY29lZmYoJXJpcCksICV4bW0xCisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxNjUyOSwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTIuMC4yCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTQsICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkMTcsICV4bW02LCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgcGFkZGQgICAgICV4bW02LCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW01LCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgc2hsbCAgICAgICQ0LCAlZWF4CisgICAgICAgIHhvcnBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgYWRkbCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEzLjAuMgorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNC4wLjIKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNi4wLjI6CisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgIDgoJXJzcCksICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMjAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTUuMC4yCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE2LjAuMgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzE2LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQyOSwgKCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNy4wLjIKKy5MXzJUQUdfUEFDS0VUXzE4LjAuMjoKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzE1LjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgcHNybHEgICAgICQzMiwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOS4wLjIKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMiwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzIwLjAuMgorICAgICAgICBtb3ZkICAgICAgJXhtbTIsICVlYXgKKyAgICAgICAgcHNybHEgICAgICQyMCwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xOC4wLjIKKy5MXzJUQUdfUEFDS0VUXzIwLjAuMjoKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICB0ZXN0bCAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yMS4wLjIKKyAgICAgICAgdGVzdGwgICAgICQtMjE0NzQ4MzY0OCwgJWVjeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMjIuMC4yCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzIzLjAuMjoKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgdGVzdGwgICAgICQxLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yNC4wLjIKKyAgICAgICAgdGVzdGwgICAgICQyLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8yNS4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzI0LjAuMgorLkxfMlRBR19QQUNLRVRfMjEuMC4yOgorICAgICAgICBzaHJsICAgICAgJDIwLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMjA0NywgJWVjeAorICAgICAgICBjbXBsICAgICAgJDEwNzUsICVlY3gKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzI0LjAuMgorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjYuMC4yCisgICAgICAgIGNtcGwgICAgICAkMTA3NCwgJWVjeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjMuMC4yCisgICAgICAgIGNtcGwgICAgICAkMTAyMywgJWVjeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMjQuMC4yCisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQxNzIwOCwgJWVheAorICAgICAgICB4b3JwZCAgICAgJXhtbTMsICV4bW0zCisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTMKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzI0LjAuMgorICAgICAgICBtb3ZkICAgICAgJXhtbTMsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQxLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yNC4wLjIKKy5MXzJUQUdfUEFDS0VUXzI1LjAuMjoKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzI3LjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8yNy4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzI0LjAuMjoKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzIyLjAuMgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8yNi4wLjI6CisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjQuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8yNS4wLjIKKy5MXzJUQUdfUEFDS0VUXzI4LjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMjAsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjkuMC4yCisgICAgICAgIG1vdnEgICAgICAxNiglcnNwKSwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8yOS4wLjI6CisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkNDkxMzYsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzMwLjAuMgorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVlY3gKKyAgICAgICAgcHNybHEgICAgICQyMCwgJXhtbTAKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zMC4wLjIKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMzAuMC4yOgorICAgICAgICBtb3ZxICAgICAgMTYoJXJzcCksICV4bW0xCisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWR4CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgeG9ybCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2OCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMzEuMC4yCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzMxLjAuMjoKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzMyLjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTcxODQsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzMzLjAuMgorICAgICAgICB0ZXN0bCAgICAgJDEsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzM0LjAuMgorICAgICAgICB0ZXN0bCAgICAgJDIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzM1LjAuMgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMzYuMC4yCisuTF8yVEFHX1BBQ0tFVF8zMy4wLjI6CisgICAgICAgIHRlc3RsICAgICAkMSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMzUuMC4yCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8zNi4wLjIKKy5MXzJUQUdfUEFDS0VUXzcuMC4yOgorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMzEsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjIKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0xLCAlZWR4CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVheCwgJWVjeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMzcuMC4yCisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjguMC4yCisgICAgICAgIGNtcGwgICAgICAkMTcyMDAsICVlZHgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzM1LjAuMgorICAgICAgICBjbXBsICAgICAgJDE3MTg0LCAlZWR4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zMi4wLjIKKyAgICAgICAgY21wbCAgICAgICQxNjM2OCwgJWVkeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMzQuMC4yCisgICAgICAgIG1vdmwgICAgICAkMTcyMDgsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0yCisgICAgICAgIG1vdnEgICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zNC4wLjIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMSwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMzUuMC4yCisuTF8yVEFHX1BBQ0tFVF8zNi4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbW92bCAgICAgICQzMDcwNCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0xCisgICAgICAgIG1vdnEgICAgICBMT0cyX0UoJXJpcCksICV4bW0yCisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tNAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW00LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAkODE5MiwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJWVkeCwgJXhtbTQKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBzdWJsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMC4wLjIKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBzdWJsICAgICAgJDE2MzY4LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkMzEsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgeG9ybCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQxNiwgJWVjeAorICAgICAgICBic3IgICAgICAgJWVjeCwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJC0yMTQ3NDgzNjQ4LCAlcjhkCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMzQuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQyOCwgKCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xNy4wLjIKKy5MXzJUQUdfUEFDS0VUXzM1LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDMwNzA0LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgIExPRzJfRSglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgIDgoJXJzcCksICV4bW00CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTQsICVlYXgKKyAgICAgICAgbW92bCAgICAgICQ4MTkyLCAlZWR4CisgICAgICAgIG1vdmQgICAgICAlZWR4LCAleG1tNAorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTYsICVlYXgKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlZHgKKyAgICAgICAgc3VibCAgICAgICQxNjM2OCwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBzYXJsICAgICAgJDMxLCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIHhvcmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMTYsICVlY3gKKyAgICAgICAgYnNyICAgICAgICVlY3gsICVlY3gKKyAgICAgICAgbW92bCAgICAgICQwLCAlcjhkCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorLkxfMlRBR19QQUNLRVRfMTkuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8yMi4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMTEuMC4yOgorICAgICAgICBhZGRsICAgICAgJDM4NCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzM4LjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgc2hybCAgICAgICQzMSwgJXI4ZAorICAgICAgICBhZGRwZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBsZWEgICAgICAgbG9nMiglcmlwKSwgJXIxMQorICAgICAgICBtb3ZxICAgICAgKCVyMTEsJXI4LDgpLCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBzaGxsICAgICAgJDE1LCAlcjhkCisgICAgICAgIG9ybCAgICAgICAlcjhkLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMzguMC4yOgorLkxfMlRBR19QQUNLRVRfMzcuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8zOS4wLjI6CisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMjYsICglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTcuMC4yCisuTF8yVEFHX1BBQ0tFVF85LjAuMjoKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMQorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80MC4wLjIKKyAgICAgICAgbW92ZCAgICAgICV4bW0yLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMjAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTguMC4yCisuTF8yVEFHX1BBQ0tFVF80MC4wLjI6CisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzM5LjAuMgorICAgICAgICBzaHJsICAgICAgJDIxLCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTA3NSwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNDEuMC4yCisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80Mi4wLjIKKyAgICAgICAgY21wbCAgICAgICQxMDIzLCAlZWR4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF80MS4wLjIKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDE3MjA4LCAlZWF4CisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfNDEuMC4yCisgICAgICAgIG1vdmQgICAgICAleG1tMywgJWVheAorICAgICAgICBhbmRsICAgICAgJDEsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQxLjAuMgorLkxfMlRBR19QQUNLRVRfNDMuMC4yOgorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTAKKyAgICAgICAgdGVzdGwgICAgICQtMjE0NzQ4MzY0OCwgJWVjeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfNDQuMC4yCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzQyLjAuMjoKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlYXgKKyAgICAgICAgdGVzdGwgICAgICQxLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80My4wLjIKKy5MXzJUQUdfUEFDS0VUXzQxLjAuMjoKKyAgICAgICAgdGVzdGwgICAgICQtMjE0NzQ4MzY0OCwgJWVjeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMjIuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzQ0LjAuMjoKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgZGl2c2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMjcsICglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTcuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMi4wLjI6CisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMgorICAgICAgICBtb3ZxICAgICAgMTYoJXJzcCksICV4bW02CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTIsICVlYXgKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tNiwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGFuZGwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ1LjAuMgorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgeG9ybCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgdGVzdGwgICAgICQzMjc2OCwgJWVkeAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfNDYuMC4yCisuTF8yVEFHX1BBQ0tFVF80Ny4wLjI6CisgICAgICAgIG1vdmwgICAgICAkMzI3MzYsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBzaHJsICAgICAgJDE2LCAlcjhkCisgICAgICAgIG9ybCAgICAgICAlcjhkLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorLkxfMlRBR19QQUNLRVRfMTQuMC4yOgorICAgICAgICBtb3ZsICAgICAgJDI0LCAoJXJzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzE3LjAuMgorLkxfMlRBR19QQUNLRVRfNDYuMC4yOgorICAgICAgICBtb3ZsICAgICAgJDE2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICB0ZXN0bCAgICAgJC0yMTQ3NDgzNjQ4LCAlcjhkCisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80OC4wLjIKKyAgICAgICAgbW92cSAgICAgICQweDgwMDAwMDAwMDAwMDAwMDAsICVyOQorICAgICAgICBtb3ZkICAgICAgJXI5LCAleG1tMgorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0wCisuTF8yVEFHX1BBQ0tFVF80OC4wLjI6CisgICAgICAgIG1vdmwgICAgICAkMjUsICglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTcuMC4yCisuTF8yVEFHX1BBQ0tFVF8xMy4wLjI6CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTUsICVlY3gKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tNCwgJWVkeAorICAgICAgICBtb3ZsICAgICAgJC0xLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgc3VibCAgICAgICQxNjM2OCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWR4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIG1vdmwgICAgICAkLTMxLCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkNCwgJWVkeAorICAgICAgICBzdWJsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBqbGUgICAgICAgLkxfMlRBR19QQUNLRVRfNDkuMC4yCisgICAgICAgIGNtcGwgICAgICAkMjAsICVlY3gKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUwLjAuMgorICAgICAgICBzaGxsICAgICAgJWNsLCAlZWF4CisuTF8yVEFHX1BBQ0tFVF80OS4wLjI6CisgICAgICAgIG1vdmQgICAgICAlZWF4LCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDMyLCAleG1tMAorICAgICAgICBhbmRwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorLkxfMlRBR19QQUNLRVRfNTAuMC4yOgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNDguMC4yCisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgbW92dyAgICAgIDIyKCVyc3ApLCAlY3gKKyAgICAgICAgbW92bCAgICAgICQtMjE0NzQ4MzY0OCwgJWVkeAorICAgICAgICBtb3ZkICAgICAgJXJkeCwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW03LCAleG1tNworICAgICAgICBwYWRkZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG1vdmQgICAgICAleG1tMCwgJWVkeAorICAgICAgICBwc2xscSAgICAgJDI5LCAleG1tMAorICAgICAgICBwYWRkcSAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFuZHBkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYW5kdyAgICAgICQzMjc1MiwgJWN4CisgICAgICAgIGNtcHcgICAgICAkMTY1NjAsICVjeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgYW5kcGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIGFkZGwgICAgICAkMTYzNTEsICVlYXgKKyAgICAgICAgc2hybCAgICAgICQ0LCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTAyMiwgJWVheAorICAgICAgICBjdnRzaTJzZCAgJWVheCwgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBsZWEgICAgICAgTF90YmwoJXJpcCksICVyMTEKKyAgICAgICAgbW92cSAgICAgIGNvZWZmX2goJXJpcCksICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbW92cSAgICAgIGNvZWZmX2goJXJpcCksICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgIDgrY29lZmZfaCglcmlwKSwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTMsICV4bW0yCisgICAgICAgIHVucGNrbHBkICAleG1tMywgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMworICAgICAgICBtb3ZxICAgICAgOCtjb2VmZl9oKCVyaXApLCAleG1tMAorICAgICAgICBhbmRsICAgICAgJDE2NzYwODMyLCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMTAsICVlZHgKKyAgICAgICAgYWRkcGQgICAgIC0zNjQ4KCVyMTEsJXJkeCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW01LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgICV4bW03LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW0yCisgICAgICAgIG1vdnEgICAgICAleG1tNywgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG1vdmFwZCAgICBjb2VmZiglcmlwKSwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW02CisgICAgICAgIG1vdnEgICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdmFwZCAgICA2NCtjb2VmZiglcmlwKSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW03LCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgJXhtbTcsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICA4MCtjb2VmZiglcmlwKSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTMsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNgorICAgICAgICBtb3ZhcGQgICAgMzIrY29lZmYoJXJpcCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMywgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBhZGRwZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgSElHSE1BU0tfTE9HX1goJXJpcCksICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92cSAgICAgIDE2KCVyc3ApLCAleG1tMQorICAgICAgICBtb3Z3ICAgICAgMjIoJXJzcCksICVjeAorICAgICAgICBtdWxwZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTcsICVlYXgKKyAgICAgICAgbXVscGQgICAgICV4bW00LCAleG1tNQorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIG1vdnEgICAgICA4K0hJR0hNQVNLX1koJXJpcCksICV4bW00CisgICAgICAgIGFuZHBkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBzdWJsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNDUuMC4yCisgICAgICAgIGFkZGwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMTY1NzYsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzUxLjAuMgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBtb3ZsICAgICAgJDE3MDgwLCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW02LCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgZV9jb2VmZiglcmlwKSwgJXhtbTcKKyAgICAgICAgbW92ZCAgICAgICV4bW02LCAlZWR4CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgbGVhICAgICAgIFRfZXhwKCVyaXApLCAlcjExCisgICAgICAgIG1vdmFwZCAgICAxNitlX2NvZWZmKCVyaXApLCAleG1tMworICAgICAgICBtb3ZxICAgICAgMzIrZV9jb2VmZiglcmlwKSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBtb3ZsICAgICAgJWVkeCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDI1NSwgJWVkeAorICAgICAgICBhZGRsICAgICAgJWVkeCwgJWVkeAorICAgICAgICBtb3ZhcGQgICAgKCVyMTEsJXJkeCw4KSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW02LCAlZWR4CisgICAgICAgIHNocmwgICAgICAkOCwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJWVjeCwgJWVheAorICAgICAgICBzaHJsICAgICAgJDEsICVlY3gKKyAgICAgICAgc3VibCAgICAgICVlY3gsICVlYXgKKyAgICAgICAgc2hsbCAgICAgICQyMCwgJWVjeAorICAgICAgICBtb3ZkICAgICAgJWVjeCwgJXhtbTYKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTQsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW00LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQxNywgJXhtbTYsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVkeAorICAgICAgICBjbXBsICAgICAgJDE2NTI5LCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMi4wLjIKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwYWRkZCAgICAgJXhtbTYsICV4bW01CisgICAgICAgIGFkZHBkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTUsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW0zCisgICAgICAgIGFkZGwgICAgICAkMTAyMywgJWVheAorICAgICAgICBzaGxsICAgICAgJDIwLCAlZWF4CisgICAgICAgIG9ybCAgICAgICAlcjhkLCAlZWF4CisgICAgICAgIG1vdmQgICAgICAlZWF4LCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDMyLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMTMuMC4yCisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzE0LjAuMgorLkxfMlRBR19QQUNLRVRfNTIuMC4yOgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF80NS4wLjI6CisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkNDkxMzYsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTIsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWF4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF81My4wLjIKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNTMuMC4yOgorICAgICAgICBtb3ZxICAgICAgMTYoJXJzcCksICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVkeAorICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHBzcmxxICAgICAkMjAsICV4bW0zCisgICAgICAgIG1vdmQgICAgICAleG1tMywgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVjeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNTQuMC4yCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF81MS4wLjI6CisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTEsICVlYXgKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMiwgJWVjeAorICAgICAgICB4b3JsICAgICAgJWVjeCwgJWVheAorICAgICAgICB0ZXN0bCAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF80Ny4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzQ2LjAuMgorLkxfMlRBR19QQUNLRVRfNTQuMC4yOgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMSwgJWVkeAorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHN1YmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgeG9ybCAgICAgICVlZHgsICVlYXgKKyAgICAgICAgdGVzdGwgICAgICQzMjc2OCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNTUuMC4yCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzU1LjAuMjoKKyAgICAgICAgbW92bCAgICAgICQzMjc1MiwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzE3LjAuMjoKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAyNCglcnNwKQorLi5CMS4zOgorICAgICAgICBtb3ZxICAgICAgMjQoJXJzcCksICV4bW0wCisuTF8yVEFHX1BBQ0tFVF81Ni4wLjI6CisuLkIxLjU6CisgICAgICAgIGFkZHEgICAgICAkNDAsICVyc3AKKy4uX19fdGFnX3ZhbHVlX3Bvdy40OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV9wb3cuNToKK0VORChwb3cpCisjIC0tIEVuZCAgcG93CisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitISUdIU0lHTUFTSzoKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NTI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY1MjQ4CisJLnR5cGUJSElHSFNJR01BU0ssQG9iamVjdAorCS5zaXplCUhJR0hTSUdNQVNLLDE2CisJLmFsaWduIDE2CitMT0cyX0U6CisJLmxvbmcJMAorCS5sb25nCTEwNzMxNjAxOTIKKwkubG9uZwkzNzA5MTM4NTcKKwkubG9uZwkzMjEwNTg3MTA1CisJLnR5cGUJTE9HMl9FLEBvYmplY3QKKwkuc2l6ZQlMT0cyX0UsMTYKKwkuYWxpZ24gMTYKK2NvZWZmOgorCS5sb25nCTE4NDE5MTQxMzAKKwkubG9uZwkzMjEzMDU5NDQ4CisJLmxvbmcJMzk5NTM0MTkzOAorCS5sb25nCTMyMTQ2MDcxMDUKKwkubG9uZwkyNjc3MzgxMjEwCisJLmxvbmcJMzIxNjMyMDczMQorCS5sb25nCTMwMTE3Nzk4ODIKKwkubG9uZwkzMjE4NDc5NTQyCisJLmxvbmcJMTM2NzgzMjAzNQorCS5sb25nCTEwNjY0MDMwNTgKKwkubG9uZwkyODk0Mjg1MjQzCisJLmxvbmcJMTA2NzkzNjkyMworCS5sb25nCTEyMTUyMjE0NTIKKwkubG9uZwkxMDY5ODM1MTAyCisJLmxvbmcJMzcwOTEzODU3CisJLmxvbmcJMzIxMDU4NzEwNQorCS5sb25nCTI2NzczODEyMTAKKwkubG9uZwkzMjE2MzIwNzMxCisJLmxvbmcJNDE3MjY0MjQyOQorCS5sb25nCTEwNTYwNjgzODIKKwkubG9uZwkxMjE1MjIxNDUxCisJLmxvbmcJMTA2OTgzNTEwMgorCS5sb25nCTEwOTI2MzgxNTYKKwkubG9uZwkzMTg0OTI1NjE4CisJLnR5cGUJY29lZmYsQG9iamVjdAorCS5zaXplCWNvZWZmLDk2CisJLmFsaWduIDE2CitMX3RibDoKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjY4OTE2MgorCS5sb25nCTI1MjMwMTMwMTMKKwkubG9uZwkxMDQ2MTU3Mzk4CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzI2ODUwODEKKwkubG9uZwkzODUxNTEzNzU4CisJLmxvbmcJMzE5MDk2ODk1MgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjgxMDA3CisJLmxvbmcJMjI0MTQ2NjQ2NgorCS5sb25nCTEwNDYwNDQ1OTkKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjY3NjkzNworCS5sb25nCTI5OTA5MjgyNzEKKwkubG9uZwkzMTkzMDg0OTg0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzI2NzI4NzMKKwkubG9uZwkyOTA1MTEyNzQzCisJLmxvbmcJMzE5MjkxODU3NgorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNjY4ODE1CisJLmxvbmcJMzM3MDU5MTI2NAorCS5sb25nCTEwNDYwNTE3OTMKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjY2NDc2MgorCS5sb25nCTMyNzIzNjEyMTYKKwkubG9uZwkzMTkzNzkzNjUzCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzI2NjA3MTQKKwkubG9uZwk0NjU0Njc1NQorCS5sb25nCTEwNDMyMDY5MzYKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjY1NjY3MgorCS5sb25nCTMwMTcwNjc3MjQKKwkubG9uZwkzMTkyMTc3OTYyCisJLmxvbmcJMAorCS5sb25nCTEwNzI2NTI2MzYKKwkubG9uZwkzNjg4NDM2NjMxCisJLmxvbmcJMzE5MjgxNDk1NgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyNjQ4NjA0CisJLmxvbmcJMTcwNzQ2MTk5MgorCS5sb25nCTMxOTMwNTY3MTIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjY0NDU3OAorCS5sb25nCTExODgxMTQ1NDAKKwkubG9uZwkzMTkzNjAzMDg2CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzI2NDA1NTcKKwkubG9uZwkzNTMzMTgwNTY0CisJLmxvbmcJMTA0NTQ1OTM3NQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyNjM2NTQyCisJLmxvbmcJMjAwMDMzNzYzMAorCS5sb25nCTMxOTM0NzU1NTcKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjYzMjUzMgorCS5sb25nCTM2OTgwNjI0NDMKKwkubG9uZwkzMTkzNzUyNzY2CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzI2Mjg1MjcKKwkubG9uZwkzMTYxNjA2MTM4CisJLmxvbmcJMzE5MDUzMjk5NQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNjI0NTI4CisJLmxvbmcJMzE2NTI2NTQ3OAorCS5sb25nCTMxOTMxNTg0NTkKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjYyMDUzNAorCS5sb25nCTE2MDA5NDAwNzcKKwkubG9uZwkzMTkzMjI2Nzc3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI2MTY1NDUKKwkubG9uZwkxMzYzMjcyNTUyCisJLmxvbmcJMzE5MjYxNDI3OAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNjEyNTYxCisJLmxvbmcJMzk2NjIwOTkxMAorCS5sb25nCTMxOTEyNDk2NTQKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjYwODU4MworCS5sb25nCTEwOTM2NzI3ODkKKwkubG9uZwkzMTkwNjM3MzMwCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI2MDQ2MTAKKwkubG9uZwkxNzM1MjM5MzU3CisJLmxvbmcJMzE5Mjc1MzYxNgorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNjAwNjQyCisJLmxvbmcJMTQ3MDY2NTE1NgorCS5sb25nCTEwNDU1NTk2OTcKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjU5NjY3OQorCS5sb25nCTM4NDA2MjQ5MjYKKwkubG9uZwkxMDQ1OTI4OTUzCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjU5MjcyMgorCS5sb25nCTQyNTkwNzI1NTYKKwkubG9uZwkzMTkxMDM1NjIyCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzI1ODg3NjkKKwkubG9uZwkzNjEzMDg4NzUzCisJLmxvbmcJMzE5MjE2NTY4MQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNTg0ODIyCisJLmxvbmcJMzE3NTIzNDQ0NgorCS5sb25nCTEwMzk0ODY5NDgKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjU4MDg4MAorCS5sb25nCTg1NjU3NjQ0MQorCS5sb25nCTEwNDU3MDI4MTIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjU3Njk0MworCS5sb25nCTIyNTM0OTg3MTkKKwkubG9uZwkzMTkzMjg1MzM0CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzI1NzMwMTEKKwkubG9uZwkxNTg3MDcwNzI4CisJLmxvbmcJMzE5MDgwMTU3NworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNTY5MDg0CisJLmxvbmcJMTU5OTg2MzE3CisJLmxvbmcJMTA0MjUxOTQzNgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyNTY1MTYzCisJLmxvbmcJMzk5OTU0MTk0OQorCS5sb25nCTMxOTIwMjA0NDAKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjU2MTI0NgorCS5sb25nCTMyODEzMTAyNjIKKwkubG9uZwkxMDQ1NTg2Nzg2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjU1NzMzNQorCS5sb25nCTM3NzUxNzk0MDYKKwkubG9uZwkxMDQ1MjI2MDU1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzI1NTM0MjgKKwkubG9uZwk2NDM0NzIzNTYKKwkubG9uZwkzMTkzNjgxNzg2CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzI1NDk1MjcKKwkubG9uZwkyNDgxNjk3NzUKKwkubG9uZwkxMDQ1MDY4OTc3CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzI1NDU2MzAKKwkubG9uZwkzMDcwMTY2MzIKKwkubG9uZwkxMDQyNjQwOTMyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI1NDE3MzkKKwkubG9uZwkzODcyNzE4NTI2CisJLmxvbmcJMzE4OTc4MTQ4NgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzI1Mzc4NTMKKwkubG9uZwk5Njk3MTE2MzAKKwkubG9uZwkzMTkxNzI0NzMyCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzI1MzM5NzEKKwkubG9uZwk0MDE4ODIwMzk0CisJLmxvbmcJMzE5MzE4OTI2NAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyNTMwMDk1CisJLmxvbmcJMzEwMjIzMzA5MgorCS5sb25nCTEwNDU1MTAyMjQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjUyNjIyMworCS5sb25nCTEwMjkzMDc5MTIKKwkubG9uZwkzMTkzODEyNzc2CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzI1MjIzNTcKKwkubG9uZwk5ODQwODMxNTMKKwkubG9uZwkxMDQ1OTg3NDAzCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzI1MTg0OTUKKwkubG9uZwk0MTcxNDU1NDAxCisJLmxvbmcJMzE5MzA4NDA4MAorCS5sb25nCTAKKwkubG9uZwkxMDcyNTE0NjM5CisJLmxvbmcJMjU5MjY2MDc1NworCS5sb25nCTEwNDYxMjE2OTEKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjUxMDc4NworCS5sb25nCTI5NjQzNjU3MTIKKwkubG9uZwkxMDQ2MDU0NDUzCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI1MDY5NDAKKwkubG9uZwkzNzkyNzc3ODc3CisJLmxvbmcJMzE5MzcwNDcyOQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNTAzMDk4CisJLmxvbmcJMjk0ODUzNjEwNAorCS5sb25nCTMxOTI0NjcxMDAKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjQ5OTI2MQorCS5sb25nCTM4MzYwMDU2MTkKKwkubG9uZwkxMDQxODczMTY2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjQ5NTQyOQorCS5sb25nCTMxMjQ1NDMxNjAKKwkubG9uZwkxMDQ0NDA5MTY4CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzI0OTE2MDEKKwkubG9uZwkyODYyMjc5MzMKKwkubG9uZwkxMDQxMDY1OTkwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzI0ODc3NzkKKwkubG9uZwkyMTExMjk2Nzc2CisJLmxvbmcJMzE5MzYwNDQxOQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyNDgzOTYxCisJLmxvbmcJMjYwNjgyMjAwMQorCS5sb25nCTMxOTI5NDAzOTQKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjQ4MDE0OAorCS5sb25nCTE5NDY5NjgwMAorCS5sb25nCTEwNDYwMjYwNjMKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjQ3NjM0MAorCS5sb25nCTg1MzU0NTIKKwkubG9uZwkxMDQ2MjAwMTc4CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjQ3MjUzNworCS5sb25nCTk1MDQ2MzYyNQorCS5sb25nCTMxOTI3MzE4OTcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjQ2ODczOAorCS5sb25nCTk3MzgzMTU2NgorCS5sb25nCTEwNDU2ODMxOTcKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjQ2NDk0NAorCS5sb25nCTMzMzA0MzU4OTIKKwkubG9uZwkzMTkwMjc3NTc3CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzI0NjExNTUKKwkubG9uZwkyMDg2OTIwOTcKKwkubG9uZwkzMTkzNTE3NjUxCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI0NTczNzEKKwkubG9uZwkyMTEzMDk3NDE1CisJLmxvbmcJMTA0NDc4MTc0OQorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyNDUzNTkxCisJLmxvbmcJMTA4ODgwODkzNgorCS5sb25nCTMxOTM3MTYxNDIKKwkubG9uZwkwCisJLmxvbmcJMTA3MjQ0OTgxNworCS5sb25nCTE0NDMwMDIxMjcKKwkubG9uZwkzMTkzMjUwMjA1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzI0NDYwNDYKKwkubG9uZwkzOTY3MzU3NDE5CisJLmxvbmcJMTA0NjEwOTQ3NworCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNDQyMjgxCisJLmxvbmcJMzAxMzUxNzg2MQorCS5sb25nCTMxOTMxNTk2OTEKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjQzODUyMAorCS5sb25nCTI1MjQ1ODYyODYKKwkubG9uZwkxMDQ2MTIxOTUxCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzI0MzQ3NjQKKwkubG9uZwkxNDc2ODkyODYxCisJLmxvbmcJMTA0NjQzNDczMQorCS5sb25nCTAKKwkubG9uZwkxMDcyNDMxMDEzCisJLmxvbmcJMzA4OTY0MDk1MAorCS5sb25nCTMxOTIzMDU3ODAKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyNDI3MjY2CisJLmxvbmcJMzgxMjI1NTUyOQorCS5sb25nCTEwNDU3MzA4NzkKKwkubG9uZwkwCisJLmxvbmcJMTA3MjQyMzUyNAorCS5sb25nCTk5NTM1NDc2MgorCS5sb25nCTMxOTE1Mjg2NzMKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjQxOTc4NgorCS5sb25nCTMyNjA1Njc2ODQKKwkubG9uZwkxMDQ2MjczNjk1CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzI0MTYwNTMKKwkubG9uZwkyNzM4MjEwMjg2CisJLmxvbmcJMzE5MTQ3MTUxNgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzI0MTIzMjUKKwkubG9uZwkxOTMxODQ5ODA1CisJLmxvbmcJMTA0NDU2MDQwNQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyNDA4NjAxCisJLmxvbmcJMzU4ODk2NjU1CisJLmxvbmcJMTA0NDAyOTIzNworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyNDA0ODgyCisJLmxvbmcJMjIxNDU4OTg0MgorCS5sb25nCTMxOTMyMDIxMjYKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjQwMTE2NworCS5sb25nCTMxMTgwOTczNjMKKwkubG9uZwkzMTkyNTkyOTA2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIzOTc0NTcKKwkubG9uZwkxODM1OTk4ODg0CisJLmxvbmcJMTA0NTc4ODI0NworCS5sb25nCTAKKwkubG9uZwkxMDcyMzkzNzUyCisJLmxvbmcJMTU4NTQ4ODMxOQorCS5sb25nCTEwNDUyODk5MTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjM5MDA1MQorCS5sb25nCTQ4MDE2MDk0OQorCS5sb25nCTEwNDYwMzA0NTUKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjM4NjM1NAorCS5sb25nCTE4MzI5NTk2NjcKKwkubG9uZwkzMTkzMDEzNjQ0CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIzODI2NjIKKwkubG9uZwkzNjExMzQ2NTU1CisJLmxvbmcJMTA0NDU0NDIxMAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMzc4OTc1CisJLmxvbmcJMjc0OTQxODczNAorCS5sb25nCTMxOTM3MTI1ODAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjM3NTI5MgorCS5sb25nCTIzOTAwNDM0NzIKKwkubG9uZwkzMTkxNzEwNjU4CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIzNzE2MTMKKwkubG9uZwkyODI4MTk5OTAyCisJLmxvbmcJMTA0MjI2NTIxNworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMzY3OTM5CisJLmxvbmcJNTY5MjA5MzIxCisJLmxvbmcJMzE5MTIzMDk4MgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIzNjQyNzAKKwkubG9uZwkyMzYxNTkxMzkKKwkubG9uZwkxMDQ2MjQwMTIzCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjM2MDYwNQorCS5sb25nCTEwMTA2NTYyNzAKKwkubG9uZwkzMTkzODEzOTY4CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzIzNTY5NDQKKwkubG9uZwkyNDA5MDgwNTk3CisJLmxvbmcJMTA0NDAyNTAyOQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIzNTMyODgKKwkubG9uZwk1OTg0MTk1MTMKKwkubG9uZwkxMDQzMzI3MzcwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIzNDk2MzYKKwkubG9uZwk0MTA1OTUwNDc5CisJLmxvbmcJMTA0NTc0Nzk1OAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMzQ1OTg4CisJLmxvbmcJMzQzMjQzODUzCisJLmxvbmcJMzE5MjQyMDE3MgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMzQyMzQ1CisJLmxvbmcJMjA4ODQzOTUzMAorCS5sb25nCTEwNDYxNzIwOTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMzM4NzA3CisJLmxvbmcJNDExNzcyMTEwNworCS5sb25nCTEwNDM4ODI0OTYKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjMzNTA3MgorCS5sb25nCTMxOTIwMzI5NTgKKwkubG9uZwkzMTkyOTk4NjQ1CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIzMzE0NDIKKwkubG9uZwkyMzY2NTIyNTE4CisJLmxvbmcJMTA0NTQwMTk1NworCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyMzI3ODE3CisJLmxvbmcJMzY4NTUzMzE0MQorCS5sb25nCTMxOTM3MDE5NDcKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMzI0MTk2CisJLmxvbmcJMTA1ODY1ODY3MgorCS5sb25nCTMxOTM1NzI0OTIKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMzIwNTc5CisJLmxvbmcJMTY2MzQ2MzQ3CisJLmxvbmcJMTA0NTQ1NjM0OAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcyMzE2OTY2CisJLmxvbmcJMjAyNzg4OTc3MgorCS5sb25nCTEwNDYzNDkzMDIKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjMxMzM1OAorCS5sb25nCTEwNzk0OTc4ODgKKwkubG9uZwkxMDQ0NTg1MjU5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIzMDk3NTQKKwkubG9uZwkyMTg5ODUxNTczCisJLmxvbmcJMTA0NTEzMjk5MAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMzA2MTU0CisJLmxvbmcJMjQ4NjYyOTM4NgorCS5sb25nCTMxOTM2MTM2MjUKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMzAyNTU5CisJLmxvbmcJMTI2MzY4NjU3OQorCS5sb25nCTEwNDQ3ODkyNTkKKwkubG9uZwkwCisJLmxvbmcJMTA3MjI5ODk2OAorCS5sb25nCTI0MTIwNjE3OTgKKwkubG9uZwkzMTkxMzY5NjI3CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjI5NTM4MQorCS5sb25nCTU4NDMxNTcxNgorCS5sb25nCTMxOTMxNDQxMzUKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjI5MTc5OAorCS5sb25nCTQ0OTAwMDczOAorCS5sb25nCTEwNDYzMzA0NTEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjI4ODIyMAorCS5sb25nCTM5MzgzMjAxNTcKKwkubG9uZwkxMDQ0NDQ2MjIwCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIyODQ2NDUKKwkubG9uZwkyOTQ5ODQ0NTk1CisJLmxvbmcJMzE5MzQ2MjM3MQorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMjgxMDc1CisJLmxvbmcJMjc3MTMyOTY0MgorCS5sb25nCTMxOTIxMjE1OTMKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMjc3NTEwCisJLmxvbmcJMzk3MTUwODYyMQorCS5sb25nCTMxOTMwMDI4MDYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjI3Mzk0OAorCS5sb25nCTQwNzE5NDIzMDEKKwkubG9uZwkxMDQ0OTUyNjE5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjI3MDM5MQorCS5sb25nCTIwOTA1MDIzOTUKKwkubG9uZwkxMDQ0NjYwNTU2CisJLmxvbmcJMAorCS5sb25nCTEwNzIyNjY4MzgKKwkubG9uZwkzNjU3NTIwOTYxCisJLmxvbmcJMzE5Mzc3MDkzOAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMjYzMjg4CisJLmxvbmcJMTYwODE3NTExMAorCS5sb25nCTEwNDU1NDMyMzkKKwkubG9uZwkwCisJLmxvbmcJMTA3MjI1OTc0NAorCS5sb25nCTI1MDY5MjQxODAKKwkubG9uZwkxMDQ1NTMwNTAxCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIyNTYyMDMKKwkubG9uZwkxODIzODQ5MworCS5sb25nCTEwNDYzMDU2MjMKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjI1MjY2NgorCS5sb25nCTM4NjI2NDA0ODcKKwkubG9uZwkzMTkyODgyNDA3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIyNDkxMzQKKwkubG9uZwkzODUwMTU4NzYxCisJLmxvbmcJMTA0MzY1NjA5OQorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMjQ1NjA1CisJLmxvbmcJMjM1NjUyNDM1NgorCS5sb25nCTEwNDU5MTUyOTYKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjI0MjA4MQorCS5sb25nCTkzNjQ5NzI4NworCS5sb25nCTMxOTM4NDIzNTMKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjIzODU2MQorCS5sb25nCTI4NDA4NDUzNDQKKwkubG9uZwkxMDQ2NDU0NzcxCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIyMzUwNDUKKwkubG9uZwkzNjg4MTAwNzEzCisJLmxvbmcJMTA0NDg5NTQ1MQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMjMxNTMzCisJLmxvbmcJNDc5OTc5OTEzCisJLmxvbmcJMzE5Mzg0MjQ0MgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMjI4MDI1CisJLmxvbmcJMTAxNjMyMTg5OAorCS5sb25nCTEwNDYyNTEwMzIKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjIyNDUyMQorCS5sb25nCTU2MjIzMjQ3NAorCS5sb25nCTMxOTE5NzQ1NTgKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMjIxMDIyCisJLmxvbmcJMzg3MDUxMjAyOQorCS5sb25nCTMxOTMxMTM4ODEKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjIxNzUyNgorCS5sb25nCTEyMzk3ODA1NDcKKwkubG9uZwkzMTkxNTgzNjA0CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIyMTQwMzQKKwkubG9uZwkyODE1NDIxMzI3CisJLmxvbmcJMTA0NTg3MzY4MgorCS5sb25nCTAKKwkubG9uZwkxMDcyMjEwNTQ3CisJLmxvbmcJMjM3MTAwOTU2MQorCS5sb25nCTEwNDE1MDg3OTIKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjIwNzA2MworCS5sb25nCTEzMDQ2MzY1MjQKKwkubG9uZwkzMTkyNDE0Mjg0CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIyMDM1ODMKKwkubG9uZwkyMTAxNDQ4NTQKKwkubG9uZwkzMTkzMzI3MzMzCisJLmxvbmcJMAorCS5sb25nCTEwNzIyMDAxMDgKKwkubG9uZwkxNDU0MzAzMjcyCisJLmxvbmcJMTA0NjM2MDAyNAorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyMTk2NjM2CisJLmxvbmcJMjA5NTc1NzU0OAorCS5sb25nCTEwNDQ5ODQ2NzcKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjE5MzE2OAorCS5sb25nCTIwMjcyMTU1ODAKKwkubG9uZwkzMTkyODgwOTMzCisJLmxvbmcJMAorCS5sb25nCTEwNzIxODk3MDUKKwkubG9uZwkyMTQ3OTQ4ODAKKwkubG9uZwkxMDQzNDU3OTU0CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIxODYyNDUKKwkubG9uZwk4ODQ2MjQ5MTcKKwkubG9uZwkxMDQzNDk3MDc5CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIxODI3ODkKKwkubG9uZwkyNzkyMzk2NjM0CisJLmxvbmcJMzE5MzE3MTY4NQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMTc5MzM3CisJLmxvbmcJNDEyODk5NTI1MAorCS5sb25nCTMxOTIxMDM0MzQKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjE3NTg4OQorCS5sb25nCTMzMzg2NjA0MworCS5sb25nCTEwNDYzNzIzMjUKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjE3MjQ0NQorCS5sb25nCTIxOTQ0NDU1NDQKKwkubG9uZwkzMTkzOTU4OTA1CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIxNjkwMDUKKwkubG9uZwkyMzE2MDgyMjY5CisJLmxvbmcJMzE5MjA0MTcwMworCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyMTY1NTY5CisJLmxvbmcJNTgxMDA1MDU3CisJLmxvbmcJMTA0NjMyMjg0OAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzIxNjIxMzcKKwkubG9uZwkzMjgwNzg2NTEzCisJLmxvbmcJMTA0NTQ1NzI1MQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMTU4NzA4CisJLmxvbmcJMjU2NzA5MzM2MQorCS5sb25nCTEwNDQ3MTAzNTkKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MjE1NTI4NAorCS5sb25nCTM3NDA0NDM1ODQKKwkubG9uZwkxMDQ0MjI0MjM3CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIxNTE4NjMKKwkubG9uZwkzOTgxMDI4MjcyCisJLmxvbmcJMTA0MjU5NjM1MQorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMTQ4NDQ2CisJLmxvbmcJMzgyMDAxMTEyMAorCS5sb25nCTMxOTE5MTU2MjMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjE0NTAzNAorCS5sb25nCTI5NDY0Mzk0ODQKKwkubG9uZwkzMTkzODMxMjc2CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIxNDE2MjQKKwkubG9uZwkzMDc1Mjc0NDIyCisJLmxvbmcJMzE5MDEzMjQzMgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMTM4MjE5CisJLmxvbmcJNDk2MDUyMTY3CisJLmxvbmcJMTA0MzYxOTc2MAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMTM0ODE4CisJLmxvbmcJMjcxMTA2NTg5CisJLmxvbmcJMzE5MjI2NTE0OQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMTMxNDIwCisJLmxvbmcJMjA5MTk1NTY4NAorCS5sb25nCTEwNDQ0NDM1NTQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjEyODAyNgorCS5sb25nCTcyMzI0MDEwOQorCS5sb25nCTMxOTEwMDc0MTkKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjEyNDYzNgorCS5sb25nCTE3NDg2MjkwNzAKKwkubG9uZwkxMDQ0NTEwMDc1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzIxMjEyNTAKKwkubG9uZwkzMjg5NTIyMDQ2CisJLmxvbmcJMzE5MzA5NTE3OAorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyMTE3ODY4CisJLmxvbmcJMzU5OTA1MjE0NgorCS5sb25nCTMxOTM3MjA0MjcKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjExNDQ4OQorCS5sb25nCTI0NDY3NTgxMzUKKwkubG9uZwkzMTkzNDM2MzAzCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIxMTExMTQKKwkubG9uZwkxNjUyMTcxMDk3CisJLmxvbmcJMzE5MjEzNzE3MworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMTA3NzQzCisJLmxvbmcJMTM1MzAwNzE1NQorCS5sb25nCTEwNDQ1MjM5MDIKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MjEwNDM3NgorCS5sb25nCTk5MDYwMTEwNQorCS5sb25nCTEwNDYyOTY2NjMKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjEwMTAxMgorCS5sb25nCTIyMjg2Mjc2MTgKKwkubG9uZwkzMTkzMDQxMDQwCisJLmxvbmcJMAorCS5sb25nCTEwNzIwOTc2NTMKKwkubG9uZwk4MTI0ODQ3NTYKKwkubG9uZwkzMTkxOTUwNzIzCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzIwOTQyOTYKKwkubG9uZwk4MTc4MzMxMzAKKwkubG9uZwkzMTkyMjc5MjQyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIwOTA5NDQKKwkubG9uZwkzNTYzMjI4NTIxCisJLmxvbmcJMzE5MzgxMDk1MQorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMDg3NTk1CisJLmxvbmcJMjcyOTEwODg1OQorCS5sb25nCTMxOTA5MzYxODUKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjA4NDI1MAorCS5sb25nCTIyNDkxMjE2NjIKKwkubG9uZwkzMTkwNjM5NjkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzIwODA5MDkKKwkubG9uZwk0MDgyNDcxNzQ1CisJLmxvbmcJMzE5MzkyOTM2OAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcyMDc3NTcxCisJLmxvbmcJMjgyNzMyMzgwNgorCS5sb25nCTMxOTM3MDg1NjEKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjA3NDIzNworCS5sb25nCTczNTg2NjE2NworCS5sb25nCTEwNDI0MzQ2OTAKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjA3MDkwNworCS5sb25nCTMyNDA4MDg4ODkKKwkubG9uZwkzMTkxOTE4NDIyCisJLmxvbmcJMAorCS5sb25nCTEwNzIwNjc1ODEKKwkubG9uZwk0NjY0ODI3NzcKKwkubG9uZwkzMTg2OTYyMjIxCisJLmxvbmcJMAorCS5sb25nCTEwNzIwNjQyNTgKKwkubG9uZwkxNTc2MDc2Mjk2CisJLmxvbmcJMTA0NTg0OTA1NgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcyMDYwOTM4CisJLmxvbmcJMjc1MTkyMzU2MAorCS5sb25nCTMxOTE5MTA3MDMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjA1NzYyMworCS5sb25nCTE5MDg3NTU1MjcKKwkubG9uZwkxMDQ2NDM3NTE1CisJLmxvbmcJMAorCS5sb25nCTEwNzIwNTQzMTEKKwkubG9uZwkzMTc1ODQxNDExCisJLmxvbmcJMTA0NDU3Mjg4NgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMDUxMDAyCisJLmxvbmcJMTYzMzI1ODQ1MAorCS5sb25nCTMxOTI2NzA0MjAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjA0NzY5NworCS5sb25nCTE4Njc3NDY2NTcKKwkubG9uZwkxMDQ1NzI2MjA5CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIwNDQzOTYKKwkubG9uZwkzMzg5Njg4NjQKKwkubG9uZwkzMTkzMDg0NjYyCisJLmxvbmcJMAorCS5sb25nCTEwNzIwNDEwOTkKKwkubG9uZwkxNTAxNzQyNDcxCisJLmxvbmcJMzE5MTc0MjAzMQorCS5sb25nCTAKKwkubG9uZwkxMDcyMDM3ODA1CisJLmxvbmcJNDI2Njc3NTc4NgorCS5sb25nCTMxOTI2ODY5NzAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjAzNDUxNAorCS5sb25nCTQyNDkyODM1NTMKKwkubG9uZwkxMDQ1NzY5NzI4CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIwMzEyMjcKKwkubG9uZwkyNzU4MzY2ODczCisJLmxvbmcJMTA0NjQwMjE2MQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcyMDI3OTQ0CisJLmxvbmcJMjE2MTE4Njk5MAorCS5sb25nCTEwNDQ3MzY4NjUKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MjAyNDY2NAorCS5sb25nCTgxMDMwMDE3MQorCS5sb25nCTEwNDU3NDg3NzcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MjAyMTM4OAorCS5sb25nCTE4MzY4ODkyNworCS5sb25nCTMxOTE1MTU1ODEKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MjAxODExNQorCS5sb25nCTM2ODg3NDA3MgorCS5sb25nCTMxOTIzNjM1NzUKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MjAxNDg0NgorCS5sb25nCTI0NTkwOTI5NzAKKwkubG9uZwkxMDQxNzk0NjQwCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MjAxMTU4MQorCS5sb25nCTg2NzQ4ODY0MAorCS5sb25nCTEwNDYzMTAyOTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcyMDA4MzE5CisJLmxvbmcJNTAxNDA4NzEKKwkubG9uZwkxMDQzMzI3MzI5CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzIwMDUwNjAKKwkubG9uZwkxMjQxOTAyNTE4CisJLmxvbmcJMzE5MjczOTI1MgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcyMDAxODA1CisJLmxvbmcJMTAyNzg4MTY1OQorCS5sb25nCTMxOTM4NTgzODgKKwkubG9uZwkwCisJLmxvbmcJMTA3MTk5ODU1NAorCS5sb25nCTM4NDU3MzIyCisJLmxvbmcJMTA0NTQ4OTE3OQorCS5sb25nCTAKKwkubG9uZwkxMDcxOTk1MzA2CisJLmxvbmcJMzQzMjk2MzMzNworCS5sb25nCTMxOTA5NjkzNDcKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MTk5MjA2MQorCS5sb25nCTUzNDkzMTc5MgorCS5sb25nCTEwNDYzMDI3MzQKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MTk4ODgyMAorCS5sb25nCTE4MTc4OTUyNjgKKwkubG9uZwkzMTkyNTUxODYwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE5ODU1ODIKKwkubG9uZwkzNTcyMzczODMKKwkubG9uZwkzMTkxODcwODMzCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE5ODIzNDgKKwkubG9uZwkxMDgyNjI0MDEKKwkubG9uZwkzMTkzMzY1ODY3CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzE5NzkxMTcKKwkubG9uZwkxOTY0NzI5MjQ0CisJLmxvbmcJMTA0MjUwMjI0OQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxOTc1ODkwCisJLmxvbmcJMjA4ODQ0Njk1NworCS5sb25nCTEwMzgwMTA1MDMKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTk3MjY2NgorCS5sb25nCTI5NDcyMzk0NDcKKwkubG9uZwkxMDQ2Mzc3ODQ1CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE5Njk0NDYKKwkubG9uZwk3NzQ5MzIwNzIKKwkubG9uZwkxMDQ2MDY0ODU0CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE5NjYyMjkKKwkubG9uZwk0MDgwOTM3NTkwCisJLmxvbmcJMzE5MzA0MTI4NAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxOTYzMDE1CisJLmxvbmcJMjIwODI1MTQ1NAorCS5sb25nCTEwNDU5NDUwODkKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTk1OTgwNQorCS5sb25nCTI4NTA5MjQ0NzUKKwkubG9uZwkxMDQ1NjUwOTU5CisJLmxvbmcJMAorCS5sb25nCTEwNzE5NTY1OTkKKwkubG9uZwk3MTQwNDA5OTcKKwkubG9uZwkxMDQ2Mjc1MTUzCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE5NTMzOTUKKwkubG9uZwk4NTUzMzc4MgorCS5sb25nCTMxOTI4MTY5MjAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTk1MDE5NQorCS5sb25nCTEyNTI1MTEwMDUKKwkubG9uZwkxMDQ0ODA1NzA2CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE5NDY5OTkKKwkubG9uZwkyMzg0NjU5MDM4CisJLmxvbmcJMzE5MzM5MTYwMgorCS5sb25nCTAKKwkubG9uZwkxMDcxOTQzODA2CisJLmxvbmcJNDE2NDgxODEzCisJLmxvbmcJMTA0MzczMDIzMworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE5NDA2MTYKKwkubG9uZwkxNjc1NDI0NDk5CisJLmxvbmcJMTA0NjM0ODAzMAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxOTM3NDI5CisJLmxvbmcJMTE3NTk4OTUxMworCS5sb25nCTMxOTMwMDkxMTMKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTkzNDI0NgorCS5sb25nCTI0MDAwODQ2NTAKKwkubG9uZwkzMTkyNDUxNzEzCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzE5MzEwNjYKKwkubG9uZwkxNDY3MzM1NjkyCisJLmxvbmcJMzE5MzM1MDg2OAorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcxOTI3ODkwCisJLmxvbmcJMjY2NDkzODAxCisJLmxvbmcJMTA0NDk1NDQ4MQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxOTI0NzE3CisJLmxvbmcJMzkxOTA5MzQ0NQorCS5sb25nCTEwNDYwMjM1NzUKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTkyMTU0NworCS5sb25nCTMwMTc0MDg0ODMKKwkubG9uZwkxMDQ0ODgwODI4CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTkxODM4MQorCS5sb25nCTk0ODg0OTk2NgorCS5sb25nCTMxOTM4OTIyMjQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MTkxNTIxNworCS5sb25nCTE4NzAyMzI2MDAKKwkubG9uZwkxMDQ1Nzc3MjI4CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTkxMjA1OAorCS5sb25nCTgyMjM4MTQ5MgorCS5sb25nCTMxOTM2MzkxODYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTkwODkwMQorCS5sb25nCTc4ODI0MzcwNQorCS5sb25nCTEwNDQ5NjYzNDMKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTkwNTc0OAorCS5sb25nCTEzNDQyNzg4MDkKKwkubG9uZwkxMDQ0NDI4NTQ1CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE5MDI1OTgKKwkubG9uZwkxNzI4NjQzMDAKKwkubG9uZwkxMDQ1NzY1NjA4CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE4OTk0NTEKKwkubG9uZwkyMTE1NTU0NjcKKwkubG9uZwkzMTkyOTYzNTc0CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTg5NjMwOAorCS5sb25nCTMzNzM0MzgwMjMKKwkubG9uZwkxMDQ1NjQzMTY4CisJLmxvbmcJMAorCS5sb25nCTEwNzE4OTMxNjgKKwkubG9uZwkyODY3MTgwOTYwCisJLmxvbmcJMzE4OTk0NTk5OAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE4OTAwMzEKKwkubG9uZwkzNjcyNDM2MgorCS5sb25nCTMxOTMyNDA1ODQKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MTg4Njg5NworCS5sb25nCTIxNDAxNzY5ODQKKwkubG9uZwkxMDQ1OTQ1MzQ5CisJLmxvbmcJMAorCS5sb25nCTEwNzE4ODM3NjcKKwkubG9uZwk0MzY4NDIzNjAKKwkubG9uZwkxMDQwNzEyNTg3CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzE4ODA2MzkKKwkubG9uZwkxMjI1MTQ3MzI5CisJLmxvbmcJMzE5MzgxNDU5NAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDcxODc3NTE1CisJLmxvbmcJMTU4NjE1NzM0OAorCS5sb25nCTMxOTE2MTQzMjIKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxODc0Mzk1CisJLmxvbmcJMzMyOTMzMjkxOAorCS5sb25nCTEwNDE2OTk3OTEKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTg3MTI3NworCS5sb25nCTE2MzU5NjgwNDEKKwkubG9uZwkzMTkxNzgzNzU2CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE4NjgxNjMKKwkubG9uZwkyODc2MTU4MzgyCisJLmxvbmcJMTA0NjA5NzA5MworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxODY1MDUyCisJLmxvbmcJNDI2NzU1Njk2NAorCS5sb25nCTMxOTM3MjMwMDAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTg2MTk0NAorCS5sb25nCTE5NTQ3NTk0MAorCS5sb25nCTEwNDU1MjA3OTUKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTg1ODgzOQorCS5sb25nCTIyMzkxOTM1MTQKKwkubG9uZwkxMDQ2NDc4Njc1CisJLmxvbmcJMAorCS5sb25nCTEwNzE4NTU3MzgKKwkubG9uZwk0MTY4Mjc1NTk2CisJLmxvbmcJMTA0NDkyNjI4NQorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxODUyNjM5CisJLmxvbmcJMTQyNTE0MTE0CisJLmxvbmcJMTA0NTU5NTE4MgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxODQ5NTQ0CisJLmxvbmcJMTk0MzQ1Nzk4NAorCS5sb25nCTMxOTI5MzAwMTUKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTg0NjQ1MgorCS5sb25nCTIwMjY1OTQ4OQorCS5sb25nCTMxOTM5MjYzMTcKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTg0MzM2MworCS5sb25nCTIyMDg0MDg3ODkKKwkubG9uZwkzMTkzODU3NDg0CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzE4NDAyNzcKKwkubG9uZwkyMjM3Mjk3NTUyCisJLmxvbmcJMzE5MjkzOTU3NgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxODM3MTk1CisJLmxvbmcJMjcyNjkyMDgzOQorCS5sb25nCTEwNDQxOTM5NTQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTA3MTgzNDExNQorCS5sb25nCTIzMzc3MzIyMDcKKwkubG9uZwkzMTkzNjExNzczCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE4MzEwMzkKKwkubG9uZwkxMzkwMDg4NjAyCisJLmxvbmcJMTA0NDAwMDMxNworCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcxODI3OTY2CisJLmxvbmcJMzgwNjE4ODczNgorCS5sb25nCTMxOTM0NjM5MTMKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTgyNDg5NgorCS5sb25nCTE3OTUyNzY1NjAKKwkubG9uZwkxMDQzNjcxOTY1CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE4MjE4MjkKKwkubG9uZwkyOTYwNzkyNzk5CisJLmxvbmcJMTA0NjI0MDQ3NAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxODE4NzY1CisJLmxvbmcJMzM1MDU5MTU5MgorCS5sb25nCTMxOTMzMzM5MzkKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTgxNTcwNAorCS5sb25nCTQwODg3MDc1NAorCS5sb25nCTMxOTMzMjI4NTQKKwkubG9uZwkwCisJLmxvbmcJMTA3MTgxMjY0NworCS5sb25nCTQxNDY3MTcxMzIKKwkubG9uZwkxMDQ2MDYzNTIwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE4MDk1OTIKKwkubG9uZwkxNjgxMTE0OTE5CisJLmxvbmcJMzE5MjExNDMxMworCS5sb25nCTAKKwkubG9uZwkxMDcxODA2NTQxCisJLmxvbmcJMTA5ODM5MzEzNworCS5sb25nCTMxOTA4NDY3MzIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTgwMzQ5MgorCS5sb25nCTI0Mzc0ODQ5ODMKKwkubG9uZwkzMTkzNDQ4NzE4CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE4MDA0NDcKKwkubG9uZwkxMDM2ODA5MTg1CisJLmxvbmcJMzE5MjAyMzUwMQorCS5sb25nCTAKKwkubG9uZwkxMDcxNzk3NDA1CisJLmxvbmcJNjU5NjY4ODQ4CisJLmxvbmcJMzE5MzU5NjMxMgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxNzk0MzY1CisJLmxvbmcJMTExMjA2MjQ1OQorCS5sb25nCTMxOTI3NzMzNzYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTc5MTMyOQorCS5sb25nCTQwODI5NTYzMzUKKwkubG9uZwkxMDQ1ODMwNTEzCisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwNzE3ODgyOTYKKwkubG9uZwkyMzg3MDg5OTY1CisJLmxvbmcJMTA0NTUzMjYwMQorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDcxNzg1MjY2CisJLmxvbmcJMTUyMjEwMTk4MAorCS5sb25nCTMxOTM5NDE5NTcKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTc4MjIzOQorCS5sb25nCTIxNTcxOTc1ODUKKwkubG9uZwkzMTg4MTkzMzA1CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE3NzkyMTUKKwkubG9uZwk5NDY4MTAyMjAKKwkubG9uZwkzMTkzMjIzODE5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE3NzYxOTQKKwkubG9uZwk0MDY5OTQyNDQ0CisJLmxvbmcJMzE5Mzg3ODU0OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE3NzMxNzYKKwkubG9uZwkxNjkzNDYzNDQwCisJLmxvbmcJMTA0NjM2MDU4OAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE3NzAxNjEKKwkubG9uZwkxOTU0NTQzMjU0CisJLmxvbmcJMTA0NjQwOTM4MQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNzY3MTQ5CisJLmxvbmcJMTA1MDQ3MTI0OQorCS5sb25nCTMxOTM5MzMwOTUKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNzY0MTQwCisJLmxvbmcJMTI1NjI0MDQ3OAorCS5sb25nCTEwNDY0NTY4NjUKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNzYxMTM0CisJLmxvbmcJNjc2NzY0MjU0CisJLmxvbmcJMTA0NjA1NTUwMworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE3NTgxMzEKKwkubG9uZwkxNDIxMDMyOTY3CisJLmxvbmcJMTA0NDc3OTc4NgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE3NTUxMzEKKwkubG9uZwkzODczNTk5MgorCS5sb25nCTMxOTI3NjYzNTUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTc1MjEzNAorCS5sb25nCTI5NjA2Njk2OTAKKwkubG9uZwkxMDQ0NDg0NjgwCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwNzE3NDkxMzkKKwkubG9uZwk3ODg3MDczODIKKwkubG9uZwkxMDQ1Mjk5ODk1CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE3NDYxNDgKKwkubG9uZwk2ODU2ODkzMDAKKwkubG9uZwkxMDQwNzc4ODMxCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE3NDMxNjAKKwkubG9uZwkxMTcwOTk0MTgyCisJLmxvbmcJMTA0NjE1OTE3NAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNzQwMTc1CisJLmxvbmcJNjQ1OTE0MzYKKwkubG9uZwkxMDQ2MTUzODQ5CisJLmxvbmcJMAorCS5sb25nCTEwNzE3MzcxOTMKKwkubG9uZwkyMzM4MDMxNjU5CisJLmxvbmcJMzE4OTk5NzcwMgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDcxNzM0MjEzCisJLmxvbmcJMTk0MTYyNDU2OAorCS5sb25nCTMxODY3NTI2NzYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNzMxMjM3CisJLmxvbmcJMTQwMTI1NTU4MAorCS5sb25nCTEwNDYzODM5OTAKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTcyODI2MworCS5sb25nCTM3Njg4ODQyNworCS5sb25nCTEwNDU4OTY0NTYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDcxNzI1MjkzCisJLmxvbmcJMjgzMTQyNDYzOQorCS5sb25nCTMxOTM1MzkxMDkKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MTcyMjMyNQorCS5sb25nCTMzMDMxMjM2OTYKKwkubG9uZwkxMDQ0NTk5NDE1CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE3MTkzNjAKKwkubG9uZwkxMDc3Mjk1MzI5CisJLmxvbmcJMzE4OTg3NzM3MgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxNzE2Mzk4CisJLmxvbmcJMTQzNDA2MTA5OQorCS5sb25nCTMxODQ1Mjk3NzEKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTcxMzQzOQorCS5sb25nCTIxMDQ5OTE1OTAKKwkubG9uZwkxMDQ1MDYyMDc0CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE3MTA0ODMKKwkubG9uZwk3MjIwNjA4NjkKKwkubG9uZwkzMTkzNzg4NTI2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTcwNDU4MAorCS5sb25nCTM5Mjg3OTY0ODYKKwkubG9uZwkxMDQ2MTI5MDIwCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTA3MTY5ODY4OAorCS5sb25nCTU4ODg0NDYyOAorCS5sb25nCTEwNDU0OTIxMzUKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTY5MjgwNworCS5sb25nCTMyNjczOTM2NgorCS5sb25nCTMxOTMwMDQ0NDUKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMTA3MTY4NjkzOAorCS5sb25nCTI0NTY0MzYwNDIKKwkubG9uZwkxMDQ2Mjc4MTY5CisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwNzE2ODEwODAKKwkubG9uZwkyODMxMzAzNTEyCisJLmxvbmcJMTA0MzY3MDA0NgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwNzE2NzUyMzQKKwkubG9uZwk2MDcyMjM0MTgKKwkubG9uZwkxMDQ1NTA3MzIyCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NjkzOTkKKwkubG9uZwk0MjU0OTIxMzMyCisJLmxvbmcJMzE5MzI5MDQ4MworCS5sb25nCTAKKwkubG9uZwkxMDcxNjYzNTc1CisJLmxvbmcJOTE0OTk0MzMzCisJLmxvbmcJMzE5MTI2Mzg1MworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNjU3NzYyCisJLmxvbmcJNDE0NzA1MDE4MAorCS5sb25nCTMxOTMyMjg1NTIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTA3MTY1MTk2MAorCS5sb25nCTU5NDU1NDE1NworCS5sb25nCTMxOTM1MDM5MzUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NjE3MAorCS5sb25nCTEwNjI4NDY3OTYKKwkubG9uZwkxMDQ1OTQ0MzMxCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE2MzYxMDkKKwkubG9uZwkyOTA5MjM4ODkzCisJLmxvbmcJMzE5MzQzNjg4NAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNjI0NTcyCisJLmxvbmcJMTY4MjkxODExOQorCS5sb25nCTEwNDIyMTE4OTkKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTYxMzA1NworCS5sb25nCTI0MTkyMDk0MjYKKwkubG9uZwkxMDQ1NDM3MDYyCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE2MDE1NjQKKwkubG9uZwkyOTUxMzQxMzIxCisJLmxvbmcJMzE5MDE5MzIxNAorCS5sb25nCTAKKwkubG9uZwkxMDcxNTkwMDkzCisJLmxvbmcJMzA4NDkwMDg3NQorCS5sb25nCTMxOTIzOTQ5MDcKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTU3ODY0MworCS5sb25nCTk5OTU2NzQ1NAorCS5sb25nCTEwNDY0MzM0NDcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTU2NzIxNQorCS5sb25nCTE1NzAxMDE4NTcKKwkubG9uZwkzMTkzMjkxMTYwCisJLmxvbmcJMAorCS5sb25nCTEwNzE1NTU4MDkKKwkubG9uZwkxMDgwNjQ3ODgxCisJLmxvbmcJMzE4NTE1NDU4NQorCS5sb25nCTAKKwkubG9uZwkxMDcxNTQ0NDI0CisJLmxvbmcJMzUyNjMwOTE3NworCS5sb25nCTEwNDQ4NDM2NDAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTUzMzA2MAorCS5sb25nCTIyMTM0NjMzNDkKKwkubG9uZwkzMTkxNzM4OTMwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzE1MjE3MTgKKwkubG9uZwkxMDM5OTI1MTk1CisJLmxvbmcJMzE5MjYxODM1MworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNTEwMzk3CisJLmxvbmcJMjExNTc1NzI4MAorCS5sb25nCTMxOTM2NzE1NjcKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTQ5OTA5NworCS5sb25nCTExODg3NTE0OTUKKwkubG9uZwkzMTkxMTQ1NTYwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzE0ODc4MTgKKwkubG9uZwkzOTgzNDYxNDQ5CisJLmxvbmcJMzE5Mzg5NzAyOQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxNDc2NTYwCisJLmxvbmcJNzgyMTQxNTAwCisJLmxvbmcJMTA0Mjg3OTk2MgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxNDY1MzIzCisJLmxvbmcJNDAzODkwNDYyNgorCS5sb25nCTEwNDUwNjM4ODEKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTQ1NDEwNworCS5sb25nCTI2MTMwMzY5MjEKKwkubG9uZwkzMTkzMjE3NjQyCisJLmxvbmcJMAorCS5sb25nCTEwNzE0NDI5MTIKKwkubG9uZwkyMDk1NzIzNDM1CisJLmxvbmcJMTA0NDYyOTE3NQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxNDMxNzM3CisJLmxvbmcJMzg3OTc5NTk3NAorCS5sb25nCTEwNDU3Njc4NzQKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTQyMDU4MworCS5sb25nCTI2NjIxOTgwNDIKKwkubG9uZwkzMTkxNDM0NjM3CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzE0MDk0NDkKKwkubG9uZwk0MDM3NjA1NzIyCisJLmxvbmcJMzE5MzcwMzA5MAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMzk4MzM2CisJLmxvbmcJMTg2MDMzMTgzNQorCS5sb25nCTEwNDA4MTQ4MjIKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTM4NzI0MworCS5sb25nCTE1MjI5NzIwMzMKKwkubG9uZwkzMTkwMzA1OTc0CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzEzNzYxNzEKKwkubG9uZwkyMzYxNTM0MjA3CisJLmxvbmcJMTA0MzY5OTM2NgorCS5sb25nCTAKKwkubG9uZwkxMDcxMzY1MTE5CisJLmxvbmcJNDE4MDMwOTE3OQorCS5sb25nCTEwNDQxNDIwOTkKKwkubG9uZwkwCisJLmxvbmcJMTA3MTM1NDA4NworCS5sb25nCTEyMDEwMzg1MjgKKwkubG9uZwkzMTkyOTY4NzcyCisJLmxvbmcJMAorCS5sb25nCTEwNzEzNDMwNzUKKwkubG9uZwkxMzQyNDc4MTcxCisJLmxvbmcJMzE5MzI1MTIxNQorCS5sb25nCTAKKwkubG9uZwkxMDcxMzMyMDgzCisJLmxvbmcJMzgzNjg4MzM0OAorCS5sb25nCTMxOTM0NzIwMDcKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTMyMTExMAorCS5sb25nCTM4NjQ4NzQyNTAKKwkubG9uZwkxMDQ1NTkzMTI2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzEzMTAxNTgKKwkubG9uZwkyMTY5NDk0OTk4CisJLmxvbmcJMTA0NjA0NTM0NgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxMjk5MjI2CisJLmxvbmcJMzc4NTE2NTA3NQorCS5sb25nCTMxOTMzMTkyNDYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTI4ODMxMworCS5sb25nCTExMzc2OTI2NzgKKwkubG9uZwkzMTkyNzE2Nzc5CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzEyNzc0MjAKKwkubG9uZwkxNzUyMTA3NTk4CisJLmxvbmcJMTA0NjM2NjEyMAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxMjY2NTQ2CisJLmxvbmcJMTkxMjY1NjkxMgorCS5sb25nCTEwNDYzNTIyODEKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTI1NTY5MgorCS5sb25nCTI4ODI2NzYzMzQKKwkubG9uZwkxMDQ2NDA2MzUzCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzEyNDQ4NTgKKwkubG9uZwk5NjM2MTI0NjAKKwkubG9uZwkxMDQ1MjgyODExCisJLmxvbmcJMAorCS5sb25nCTEwNzEyMzQwNDMKKwkubG9uZwkzODExMjU1NzczCisJLmxvbmcJMTA0NjIzMTYzNgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxMjIzMjQ3CisJLmxvbmcJMTEyNjA1NTk4OQorCS5sb25nCTMxOTIyMjQwMzcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MTIxMjQ3MAorCS5sb25nCTIwNzkxNDU0MjcKKwkubG9uZwkxMDQ0NDMyNDEzCisJLmxvbmcJMAorCS5sb25nCTEwNzEyMDE3MTMKKwkubG9uZwkzNjExNTk1NjIxCisJLmxvbmcJMTA0MzM1ODc0NQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMTkwOTc0CisJLmxvbmcJMzkwNTIyNzY5CisJLmxvbmcJMTA0NTg4ODI1MgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcxMTgwMjU1CisJLmxvbmcJNDA4NzkzOTcyMworCS5sb25nCTMxOTI5MzA3NDUKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTE2OTU1NAorCS5sb25nCTE0NTE0OTQ0ODAKKwkubG9uZwkzMTkwMjE5Mjc0CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzExNTg4NzMKKwkubG9uZwk0MjcxNzYxOTQKKwkubG9uZwkzMTkzMDQyMDIyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzExNDgyMTAKKwkubG9uZwkxODgyMzgxOTQ4CisJLmxvbmcJMzE5MjcyNzk0NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMTM3NTY2CisJLmxvbmcJMzczNjMxMzc3MQorCS5sb25nCTMxOTIwODcwMTkKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTEyNjk0MQorCS5sb25nCTE1NjAzOTg4MTYKKwkubG9uZwkzMTkzMTg1NzE1CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzExMTYzMzQKKwkubG9uZwkxMDIxOTQyNDQxCisJLmxvbmcJMTA0MTUyNjY5NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcxMTA1NzQ2CisJLmxvbmcJMzUxNzA4MDI0OQorCS5sb25nCTMxOTM1NzYwNDEKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MTA5NTE3NgorCS5sb25nCTIyNDg1ODk4NzgKKwkubG9uZwkxMDQ0NTI3NjI0CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzEwODQ2MjUKKwkubG9uZwkyNDEyODk2Njk1CisJLmxvbmcJMTA0NjExMjg2NworCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcxMDc0MDkyCisJLmxvbmcJMzgzNDcyNTczOAorCS5sb25nCTEwNDQ1NjIzNzgKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MTA2MzU3OAorCS5sb25nCTExNTA5MjA0MDcKKwkubG9uZwkxMDQzNzY4OTg2CisJLmxvbmcJMAorCS5sb25nCTEwNzEwNTMwODIKKwkubG9uZwkxMzc5MzkzNDI4CisJLmxvbmcJMzE4ODY5MDY5MAorCS5sb25nCTAKKwkubG9uZwkxMDcxMDQyNjA0CisJLmxvbmcJMzA1ODE4MzI3OAorCS5sb25nCTMxOTM2MTc2NTUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTAzMjE0NAorCS5sb25nCTQyMTEzMzY2NQorCS5sb25nCTMxOTM0MTcxODYKKwkubG9uZwkwCisJLmxvbmcJMTA3MTAyMTcwMgorCS5sb25nCTI4NjAxNjEzNTcKKwkubG9uZwkzMTkxODE2MTI1CisJLmxvbmcJMAorCS5sb25nCTEwNzEwMTEyNzgKKwkubG9uZwkxNzQyNDA1OTY0CisJLmxvbmcJMTA0MzU4MDI0MAorCS5sb25nCTAKKwkubG9uZwkxMDcxMDAwODcyCisJLmxvbmcJMjgyMTIxNTkyNworCS5sb25nCTMxODg5ODQyNzMKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDk5MDQ4MworCS5sb25nCTUxMDI3NTU5NworCS5sb25nCTEwNDU4MTM0MDEKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDk4MDExMworCS5sb25nCTMwNDI2NjU4OAorCS5sb25nCTMxOTExOTM1MzYKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDk2OTc2MAorCS5sb25nCTE4NTQ3ODQyMTEKKwkubG9uZwkxMDQ2MzAyMDczCisJLmxvbmcJMAorCS5sb25nCTEwNzA5NTk0MjYKKwkubG9uZwkzNzczMDgyODU0CisJLmxvbmcJMzE5MzAwODg5OQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwOTQ5MTA4CisJLmxvbmcJMzAwMzU3MjM5MgorCS5sb25nCTEwNDY0MDQ4NzkKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDkzODgwOAorCS5sb25nCTE3MDIxNDkyMDQKKwkubG9uZwkxMDQ2NDA3MjU3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA5Mjg1MjYKKwkubG9uZwkzOTM1MzE0NDM5CisJLmxvbmcJMTA0NjQzODI4MAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwOTE4MjYxCisJLmxvbmcJMjY3NzA4NzYwOQorCS5sb25nCTEwNDU1MDE3NDkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDkwODAxNAorCS5sb25nCTQxOTA1OTgwMzkKKwkubG9uZwkzMTkzNjQwNTE1CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzA4OTc3ODQKKwkubG9uZwkzNjg4NzQwNzIKKwkubG9uZwkxMDQ0ODc5OTI3CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA4ODc1NzEKKwkubG9uZwkzNTg0MDUyNjk3CisJLmxvbmcJMzE5MjAyNDY2MgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwODc3Mzc1CisJLmxvbmcJMzc2MjMwNzgyOQorCS5sb25nCTEwNDU4ODY5MTgKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MDg2NzE5NworCS5sb25nCTQ5NTcxMDkyMAorCS5sb25nCTEwNDYzMTcwNzIKKwkubG9uZwkwCisJLmxvbmcJMTA3MDg1NzAzNgorCS5sb25nCTIyOTI3NjgyMzgKKwkubG9uZwkzMTkwODg3NTA4CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA4NDY4OTEKKwkubG9uZwkxMDQ0MDc4MTUxCisJLmxvbmcJMzE5Mzc3MjkxNAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcwODM2NzY0CisJLmxvbmcJMzI2NjAxMDQ1NworCS5sb25nCTEwNDM0NDM3NTUKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDgyNjY1MworCS5sb25nCTM1NzE2NjU4MjIKKwkubG9uZwkxMDQ1NTQ3ODIzCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzA4MTY1NjAKKwkubG9uZwkzOTMzNDgzNDcKKwkubG9uZwkzMTkwNTI1MTQzCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA4MDY0ODMKKwkubG9uZwk0MjQxNzIyNDk4CisJLmxvbmcJMzE5MjA4NDE5MworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNzk2NDIzCisJLmxvbmcJMTY5Mzc5NzA2OAorCS5sb25nCTMxOTI4MDc5NzIKKwkubG9uZwkwCisJLmxvbmcJMTA3MDc4NjM4MAorCS5sb25nCTI4NjAwODY3NDUKKwkubG9uZwkxMDQ2MzMxNjQ2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA3NzYzNTMKKwkubG9uZwkxMzY2MTQxNzU5CisJLmxvbmcJMzE5Mjk3OTM2MworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcwNzY2MzQzCisJLmxvbmcJNzM3ODk5MjgzCisJLmxvbmcJMTA0NTg1MzM0NgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwNzU2MzQ5CisJLmxvbmcJODg3MzQ4NzMKKwkubG9uZwkxMDQzODgxMjU3CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA3NDYzNzIKKwkubG9uZwkxNDM4MDAzMzE1CisJLmxvbmcJMzE5MjkxNzEwMQorCS5sb25nCTAKKwkubG9uZwkxMDcwNzM2NDEyCisJLmxvbmcJMTA2NjUwNTUzMAorCS5sb25nCTEwNDM4OTY2OTUKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDcyNjQ2NworCS5sb25nCTI3MDY2NTMwNDEKKwkubG9uZwkzMTkxMTEzNjQzCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwNzA3MTY1MzkKKwkubG9uZwkxMzIxNzY0NDc2CisJLmxvbmcJMTAzOTU3MzcyNAorCS5sb25nCTAKKwkubG9uZwkxMDcwNzA2NjI4CisJLmxvbmcJMTEyNjc1MzIxMQorCS5sb25nCTEwNDQ1MDI5NzYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDY5NjczMgorCS5sb25nCTc3MzY0Mjg4NAorCS5sb25nCTEwNDQxMTA3MjcKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTA3MDY4Njg1MworCS5sb25nCTEyNjM3NDM0MDYKKwkubG9uZwkzMTkzMTE1Mjc4CisJLmxvbmcJMAorCS5sb25nCTEwNzA2NzY5OTAKKwkubG9uZwkzMTE1MjM3NzMyCisJLmxvbmcJMzE5MzA4OTE3NgorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDcwNjY3MTQyCisJLmxvbmcJMzY0MjYyNjgzOAorCS5sb25nCTMxOTExNDYwMzIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDY1NzMxMQorCS5sb25nCTIwOTE2OTY0MjgKKwkubG9uZwkxMDQ0MzM3MTc3CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzA2NDc0OTYKKwkubG9uZwkzMTY4OTU4MzkxCisJLmxvbmcJMTA0NDE5NzU2OAorCS5sb25nCTAKKwkubG9uZwkxMDcwNjM3Njk3CisJLmxvbmcJNzExMTQ4NjY5CisJLmxvbmcJMzE5MzE4MTA0NworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNjI3OTEzCisJLmxvbmcJNDIwNzE4Mjc3MworCS5sb25nCTMxOTM0MDIwOTIKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDYxODE0NQorCS5sb25nCTkxODA3MDY0MAorCS5sb25nCTMxOTI5MDI4NDUKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTA3MDYwODM5MworCS5sb25nCTMxMzU1NzE0NDcKKwkubG9uZwkzMTkyMTkzOTI4CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA1OTg2NTcKKwkubG9uZwkxMDQzNzA1NTE3CisJLmxvbmcJMzE5MzE4ODYwNAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNTgxNzc3CisJLmxvbmcJMTg4NjY4MDQ5MgorCS5sb25nCTEwNDM4OTAyODYKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDU2MjM2NworCS5sb25nCTMzNzM3OTk0MjAKKwkubG9uZwkzMTkxOTE3ODAyCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzA1NDI5ODgKKwkubG9uZwkyOTE5NjE4MDI1CisJLmxvbmcJMzE5MjQ2MTc1MgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNTIzNjQwCisJLmxvbmcJMjkyNjM2NTE1OAorCS5sb25nCTMxOTMxMTM0OTIKKwkubG9uZwkwCisJLmxvbmcJMTA3MDUwNDMyMworCS5sb25nCTUxOTk3ODYzOAorCS5sb25nCTEwNDU5MTg4NDYKKwkubG9uZwkwCisJLmxvbmcJMTA3MDQ4NTAzNworCS5sb25nCTM2NjUzNTMxNTEKKwkubG9uZwkzMTkzNTQ2MjQ4CisJLmxvbmcJMAorCS5sb25nCTEwNzA0NjU3ODEKKwkubG9uZwkyMzI3NzE4OTU4CisJLmxvbmcJMTA0NTA1MDc5NworCS5sb25nCTAKKwkubG9uZwkxMDcwNDQ2NTU2CisJLmxvbmcJMzQ1MzI2ODYxCisJLmxvbmcJMzE4ODIyNDcxNgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwNDI3MzYxCisJLmxvbmcJMjI2Mzc0NzQ4OAorCS5sb25nCTMxOTI4NzEzMjgKKwkubG9uZwkwCisJLmxvbmcJMTA3MDQwODE5NworCS5sb25nCTM4OTQxOTIyNjQKKwkubG9uZwkxMDQ1NjkzMTIzCisJLmxvbmcJMAorCS5sb25nCTEwNzAzODkwNjMKKwkubG9uZwk5OTQzMjE1OTMKKwkubG9uZwkxMDQ2MzQ3MjAzCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzAzNjk5NTkKKwkubG9uZwkzNTQwMzY2NzAwCisJLmxvbmcJMTA0MjI5NjIzMAorCS5sb25nCTAKKwkubG9uZwkxMDcwMzUwODg2CisJLmxvbmcJOTY2NDIwNzUyCisJLmxvbmcJMzE5MjQwMDQxMgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwMzMxODQyCisJLmxvbmcJMTk1NDUxMTE2MAorCS5sb25nCTMxOTM0Njc3NjIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDMxMjgyOAorCS5sb25nCTE4NzUwMDMwNDAKKwkubG9uZwkxMDQ1NDg1NjI5CisJLmxvbmcJMAorCS5sb25nCTEwNzAyOTM4NDUKKwkubG9uZwk0MDAzMzcyMDA1CisJLmxvbmcJMzE5MzcxNDEwOQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwMjc0ODkwCisJLmxvbmcJMjIxNjA4MzY0NAorCS5sb25nCTEwNDU3MjAzOTkKKwkubG9uZwkwCisJLmxvbmcJMTA3MDI1NTk2NgorCS5sb25nCTEyNDA5ODU3NDMKKwkubG9uZwkxMDQ1ODc5NDE0CisJLmxvbmcJMAorCS5sb25nCTEwNzAyMzcwNzEKKwkubG9uZwkxNTczMDY0MTYyCisJLmxvbmcJMTA0NjQyNzkxNgorCS5sb25nCTAKKwkubG9uZwkxMDcwMjE4MjA2CisJLmxvbmcJMjUwMDE2NjU4MgorCS5sb25nCTMxOTM4NDgxNjkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDE5OTM2OQorCS5sb25nCTg2MjEzMTUzOQorCS5sb25nCTEwNDU2MDYwNjUKKwkubG9uZwkwCisJLmxvbmcJMTA3MDE4MDU2MworCS5sb25nCTM3MzM0Mjc2MjIKKwkubG9uZwkzMTkzNTQ1OTg4CisJLmxvbmcJMAorCS5sb25nCTEwNzAxNjE3ODUKKwkubG9uZwkxMjQ1MTUzNTgKKwkubG9uZwkxMDQ1NTA0NzY2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzAxNDMwMzYKKwkubG9uZwk2ODkyMjgwMDcKKwkubG9uZwkxMDQ0MjM4NDM2CisJLmxvbmcJMAorCS5sb25nCTEwNzAxMjQzMTcKKwkubG9uZwk5NzYyODQ4MzUKKwkubG9uZwkzMTg5ODc5OTc4CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNzAxMDU2MjYKKwkubG9uZwkyOTk3NDQ2MjI0CisJLmxvbmcJMzE5MzM5NDI0NAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwMDg2OTY0CisJLmxvbmcJNTk0OTg1MTYzCisJLmxvbmcJMzE5MDQ1MzQ0NworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDcwMDY4MzMxCisJLmxvbmcJMzYzNDQxMTA5MQorCS5sb25nCTMxOTMwMTI2NjIKKwkubG9uZwkwCisJLmxvbmcJMTA3MDA0OTcyNworCS5sb25nCTg0MTMxNjQ4MgorCS5sb25nCTMxOTI1NTE2MDQKKwkubG9uZwkwCisJLmxvbmcJMTA3MDAzMTE1MQorCS5sb25nCTUxODk0OTg0OQorCS5sb25nCTMxODk1MDU2OTMKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA3MDAxMjYwMworCS5sb25nCTIwNzYzMzYwNAorCS5sb25nCTEwNDM3OTEzMDUKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTk5NDA4NAorCS5sb25nCTkyNTQxNTYzMQorCS5sb25nCTMxODk2NTg2NzAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTk3NTU5MworCS5sb25nCTMzNDg3NzUwMTUKKwkubG9uZwkxMDQ2MjMxMDU1CisJLmxvbmcJMAorCS5sb25nCTEwNjk5NTcxMzEKKwkubG9uZwk0MTM3NTkzOTYxCisJLmxvbmcJMTA0NTc2MDY0NAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5OTM4Njk2CisJLmxvbmcJMzA4MTIwNzk3MgorCS5sb25nCTEwNDYzMTk2NTIKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTkyMDI5MAorCS5sb25nCTI5MTI4MTE4MDYKKwkubG9uZwkzMTkzMjUwODYzCisJLmxvbmcJMAorCS5sb25nCTEwNjk5MDE5MTIKKwkubG9uZwkxNzA0NjYzMjMwCisJLmxvbmcJMzE5MjY1MTE3MQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5ODgzNTYxCisJLmxvbmcJMTcyNjg4NzQ3MworCS5sb25nCTMxOTM0Mjc4MTcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTg2NTIzOAorCS5sb25nCTUxNjMwMjg3MworCS5sb25nCTEwNDI1NTY5MTkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTg0Njk0MworCS5sb25nCTM3MzcyNzcyODkKKwkubG9uZwkzMTkyMDgzNTA1CisJLmxvbmcJMAorCS5sb25nCTEwNjk4Mjg2NzYKKwkubG9uZwkyODI5OTA5MDY3CisJLmxvbmcJMzE5MTYyODUyMAorCS5sb25nCTAKKwkubG9uZwkxMDY5ODEwNDM2CisJLmxvbmcJMzQ3NDgwMDI5OQorCS5sb25nCTMxODczODQ5OTEKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTc5MjIyMworCS5sb25nCTIwNDEyOTE3NTQKKwkubG9uZwkzMTg2NzM1MDQ4CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk3NzQwMzgKKwkubG9uZwkzMTAwNzM5MjkwCisJLmxvbmcJMzE5Mjk5MTk1MQorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5NzU1ODgwCisJLmxvbmcJMjY0MTY4Njg2NgorCS5sb25nCTEwNDI0NDk4NDYKKwkubG9uZwkwCisJLmxvbmcJMTA2OTczNzc1MAorCS5sb25nCTEzNTM2MTI0NTcKKwkubG9uZwkzMTkyOTI4NTQ0CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwNjk3MTk2NDYKKwkubG9uZwkxODIzMzk4MTkwCisJLmxvbmcJMzE5MzEyNTE1NgorCS5sb25nCTAKKwkubG9uZwkxMDY5NzAxNTcwCisJLmxvbmcJMjYyOTEwODU1OAorCS5sb25nCTMxOTI5ODMwODkKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTY4MzUyMAorCS5sb25nCTMxNDg4OTA4MAorCS5sb25nCTMxOTMxNzg5NDcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTY2NTQ5NworCS5sb25nCTM0MjY4NDY0NzAKKwkubG9uZwkxMDQ2MDU1MDM0CisJLmxvbmcJMAorCS5sb25nCTEwNjk2NDc1MDIKKwkubG9uZwkyNDUxNTIxNzk4CisJLmxvbmcJMzE5MzA4MTQ0NworCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDY5NjI5NTMyCisJLmxvbmcJOTYzMjAwMDMwCisJLmxvbmcJMTA0NjMxNTA4OQorCS5sb25nCTAKKwkubG9uZwkxMDY5NjExNTkwCisJLmxvbmcJMzY0NDk3Njk4NworCS5sb25nCTEwNDY0NTAyOTcKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLmxvbmcJMTA2OTU5MzY3NAorCS5sb25nCTE1MTQwNDU4NzQKKwkubG9uZwkzMTkzMzM3NDg5CisJLmxvbmcJMAorCS5sb25nCTEwNjk1NzU3ODUKKwkubG9uZwkyNjQwNzUyNjE1CisJLmxvbmcJMzE5MjczNDcxNQorCS5sb25nCTAKKwkubG9uZwkxMDY5NTU3OTIyCisJLmxvbmcJMTc3MzgxNzMwCisJLmxvbmcJMzE5MzEwNzM0OAorCS5sb25nCTAKKwkubG9uZwkxMDY5NTMyNjUwCisJLmxvbmcJNTQ2ODcxMjY5CisJLmxvbmcJMTA0NTYwMTg0NworCS5sb25nCTAKKwkubG9uZwkxMDY5NDk3MDI5CisJLmxvbmcJMjIyMDQwODE4NworCS5sb25nCTEwNDU5NjQ4NDkKKwkubG9uZwkwCisJLmxvbmcJMTA2OTQ2MTQ2MQorCS5sb25nCTMxMDEyMDk3ODQKKwkubG9uZwkzMTkyNDE3MDk4CisJLmxvbmcJMAorCS5sb25nCTEwNjk0MjU5NDQKKwkubG9uZwkzNzY4ODI1NzgyCisJLmxvbmcJMTA0NjE5NjE3OAorCS5sb25nCTAKKwkubG9uZwkxMDY5MzkwNDgwCisJLmxvbmcJNzM3MzA4OTQyCisJLmxvbmcJMTA0Mzg3MjU1NQorCS5sb25nCTAKKwkubG9uZwkxMDY5MzU1MDY4CisJLmxvbmcJMTk0NDgwODExOQorCS5sb25nCTMxOTMzNjIzMTcKKwkubG9uZwkwCisJLmxvbmcJMTA2OTMxOTcwNworCS5sb25nCTg1MjQwNjI2MQorCS5sb25nCTMxOTEwMDQyNTAKKwkubG9uZwkwCisJLmxvbmcJMTA2OTI4NDM5OAorCS5sb25nCTMyMDIzNzA3NDMKKwkubG9uZwkzMTkyNTQ5Nzk2CisJLmxvbmcJMAorCS5sb25nCTEwNjkyNDkxNDAKKwkubG9uZwk5MDA2MzM5NzUKKwkubG9uZwkxMDQzODYyNTc1CisJLmxvbmcJMAorCS5sb25nCTEwNjkyMTM5MzQKKwkubG9uZwkzNDE3MTY4NTY0CisJLmxvbmcJMzE5MzIxMzE2OAorCS5sb25nCTAKKwkubG9uZwkxMDY5MTc4Nzc4CisJLmxvbmcJMjUxMzMwOTk3MgorCS5sb25nCTEwNDYwNTE5NTMKKwkubG9uZwkwCisJLmxvbmcJMTA2OTE0MzY3NAorCS5sb25nCTE4MzY4NDY5NjgKKwkubG9uZwkxMDQ0MDM2NjUzCisJLmxvbmcJMAorCS5sb25nCTEwNjkxMDg2MjEKKwkubG9uZwk2NzUzOTEzNjIKKwkubG9uZwkzMTkzMzM0OTcyCisJLmxvbmcJMAorCS5sb25nCTEwNjkwNzM2MTgKKwkubG9uZwkxODU5Mzk4MDg2CisJLmxvbmcJMzE5MTY2ODcyOQorCS5sb25nCTAKKwkubG9uZwkxMDY5MDM4NjY2CisJLmxvbmcJMzgzNTk5NDA0MworCS5sb25nCTMxOTMyNTIxOTYKKwkubG9uZwkwCisJLmxvbmcJMTA2OTAwMzc2NAorCS5sb25nCTU2MzMzNzI0NgorCS5sb25nCTMxOTIwNjA1MzAKKwkubG9uZwkwCisJLmxvbmcJMTA2ODk2ODkxMgorCS5sb25nCTM3MTUxNTQyMTAKKwkubG9uZwkxMDQ1NTkyNzE2CisJLmxvbmcJMAorCS5sb25nCTEwNjg5MzQxMTEKKwkubG9uZwk1MTQxNTYzNgorCS5sb25nCTMxOTIxOTM5MzkKKwkubG9uZwkwCisJLmxvbmcJMTA2ODg5OTM1OQorCS5sb25nCTgyMjA0OTEwOAorCS5sb25nCTEwNDU4NDYwODAKKwkubG9uZwkwCisJLmxvbmcJMTA2ODg2NDY1OAorCS5sb25nCTM3MzkwNDMzNDAKKwkubG9uZwkzMTkzMTg0OTQ5CisJLmxvbmcJMAorCS5sb25nCTEwNjg4MzAwMDYKKwkubG9uZwkyNTAwODI4OTk3CisJLmxvbmcJMzE5MzExNTYzOAorCS5sb25nCTAKKwkubG9uZwkxMDY4Nzk1NDAzCisJLmxvbmcJMTQ3OTMzNTA4OQorCS5sb25nCTEwNDU0NTgyMzMKKwkubG9uZwkwCisJLmxvbmcJMTA2ODc2MDg1MAorCS5sb25nCTE5MTQwOTg1OTgKKwkubG9uZwkxMDQ1MDc5ODMzCisJLmxvbmcJMAorCS5sb25nCTEwNjg3MjYzNDYKKwkubG9uZwkxNDcwMzc0OTA5CisJLmxvbmcJMTA0NjEyNTQ3MQorCS5sb25nCTAKKwkubG9uZwkxMDY4NjkxODkyCisJLmxvbmcJMjA0ODEwMTE4NQorCS5sb25nCTMxOTI5NjAwMjQKKwkubG9uZwkwCisJLmxvbmcJMTA2ODY1NzQ4NgorCS5sb25nCTgwMTEwMTgwMgorCS5sb25nCTEwNDI1MjM0NTQKKwkubG9uZwkwCisJLmxvbmcJMTA2ODYyMzEyOQorCS5sb25nCTQxMjE3MTQ2NworCS5sb25nCTEwNDQ3OTk0MjUKKwkubG9uZwkwCisJLmxvbmcJMTA2ODU4ODgyMQorCS5sb25nCTIxMjQ1NjYwNDkKKwkubG9uZwkxMDQwNDU5ODQzCisJLmxvbmcJMAorCS5sb25nCTEwNjg1NTQ1NjEKKwkubG9uZwkyMDg3NTU4MjYzCisJLmxvbmcJMTA0NjA4MzEwMgorCS5sb25nCTAKKwkubG9uZwkxMDY4NTIwMzUwCisJLmxvbmcJMjkwMzg5MzE2CisJLmxvbmcJMTA0NTIyMDAyMworCS5sb25nCTAKKwkubG9uZwkxMDY4NDczNDMwCisJLmxvbmcJMzkzNzM3ODE1CisJLmxvbmcJMTA0NTc3MDA4NQorCS5sb25nCTAKKwkubG9uZwkxMDY4NDA1MjAyCisJLmxvbmcJMzI3MzExMTY1OAorCS5sb25nCTMxOTM1OTQzMzYKKwkubG9uZwkwCisJLmxvbmcJMTA2ODMzNzA2OAorCS5sb25nCTMwNzY5MzU0MTkKKwkubG9uZwkzMTkxOTkzOTM0CisJLmxvbmcJMAorCS5sb25nCTEwNjgyNjkwMzAKKwkubG9uZwkxNTY0Mjc5NzIxCisJLmxvbmcJMTA0MDcxMzYzMgorCS5sb25nCTAKKwkubG9uZwkxMDY4MjAxMDg4CisJLmxvbmcJMTk1MDEwMzc4NworCS5sb25nCTMxOTEyODU0NzMKKwkubG9uZwkwCisJLmxvbmcJMTA2ODEzMzI0MAorCS5sb25nCTExMTMwMTYxNworCS5sb25nCTEwNDYxNDA0NzAKKwkubG9uZwkwCisJLmxvbmcJMTA2ODA2NTQ4OAorCS5sb25nCTI3NDA5MzM2NTkKKwkubG9uZwkxMDQ2MDkxODk4CisJLmxvbmcJMAorCS5sb25nCTEwNjc5OTc4MzIKKwkubG9uZwkxMjY3MTMxNDYyCisJLmxvbmcJMzE5Mjk0NzAyNAorCS5sb25nCTAKKwkubG9uZwkxMDY3OTMwMjY4CisJLmxvbmcJNjI5Nzg3MzQzCisJLmxvbmcJMTA0NTU5OTExNAorCS5sb25nCTAKKwkubG9uZwkxMDY3ODYyODAwCisJLmxvbmcJMjk0MzAyOTc0NgorCS5sb25nCTMxOTExMDA2MjEKKwkubG9uZwkwCisJLmxvbmcJMTA2Nzc5NTQyNgorCS5sb25nCTI1Mzg2MzExNTEKKwkubG9uZwkzMTkzOTUzOTg5CisJLmxvbmcJMAorCS5sb25nCTEwNjc3MjgxNDQKKwkubG9uZwkzODgxNzk1MDMzCisJLmxvbmcJMzE5MTM3NzM2MworCS5sb25nCTAKKwkubG9uZwkxMDY3NjYwOTU2CisJLmxvbmcJMjc1Mjc0NzA1OAorCS5sb25nCTMxODYyNTAxMDMKKwkubG9uZwkwCisJLmxvbmcJMTA2NzU5Mzg2MgorCS5sb25nCTg5MjE3MDAxNAorCS5sb25nCTMxOTMzMzAzOTAKKwkubG9uZwkwCisJLmxvbmcJMTA2NzUyNjg2MAorCS5sb25nCTIwMDA5ODU3ODMKKwkubG9uZwkzMTkyOTY4NjQ3CisJLmxvbmcJMAorCS5sb25nCTEwNjc0NTk5NTAKKwkubG9uZwkxOTU0MDc3MzA0CisJLmxvbmcJMTA0NDM5OTkwOAorCS5sb25nCTAKKwkubG9uZwkxMDY3MzM1OTAwCisJLmxvbmcJNDEyMDcwMjg0NworCS5sb25nCTMxOTMxNTA3MzAKKwkubG9uZwkwCisJLmxvbmcJMTA2NzIwMjQ0OAorCS5sb25nCTM1MzQ4OTk4MAorCS5sb25nCTEwNDU2NzY3NDQKKwkubG9uZwkwCisJLmxvbmcJMTA2NzA2OTE4NAorCS5sb25nCTI2MDk2NDMzMjQKKwkubG9uZwkzMTkyMTA4MDAxCisJLmxvbmcJMAorCS5sb25nCTEwNjY5MzYxMDAKKwkubG9uZwkyOTA0NDMzMzE3CisJLmxvbmcJMTA0NDgzNjU0MQorCS5sb25nCTAKKwkubG9uZwkxMDY2ODAzMjAwCisJLmxvbmcJMzE5NjU2NzkwCisJLmxvbmcJMTA0NDg2MzkwNAorCS5sb25nCTAKKwkubG9uZwkxMDY2NjcwNDg0CisJLmxvbmcJMjQwNzk4NzMzMQorCS5sb25nCTMxOTI5OTUwODMKKwkubG9uZwkwCisJLmxvbmcJMTA2NjUzNzk0OAorCS5sb25nCTI0Mzc3NDYxMjAKKwkubG9uZwkzMTkzMTI3NzMzCisJLmxvbmcJMAorCS5sb25nCTEwNjY0MDU1OTIKKwkubG9uZwk3NjI1NzAyMTUKKwkubG9uZwkzMTg5OTQ2OTk3CisJLmxvbmcJMAorCS5sb25nCTEwNjYxNDUwNDAKKwkubG9uZwkzMzE3MTU5Njk0CisJLmxvbmcJMTA0NjA2MDEyNQorCS5sb25nCTAKKwkubG9uZwkxMDY1ODgxMDU2CisJLmxvbmcJMjMxNzg0NTg4NgorCS5sb25nCTMxOTE2NzkxNzYKKwkubG9uZwkwCisJLmxvbmcJMTA2NTYxNzQyNAorCS5sb25nCTM2NjUxOTU4MTYKKwkubG9uZwkxMDQ1NjMzODUzCisJLmxvbmcJMAorCS5sb25nCTEwNjUzNTQxNjAKKwkubG9uZwkyMDA4NzMwMzU1CisJLmxvbmcJMzE5Mzg5ODIxMQorCS5sb25nCTAKKwkubG9uZwkxMDY0ODI5MjY0CisJLmxvbmcJMzc0NjIzNjE5MgorCS5sb25nCTEwNDYxMjE0NzEKKwkubG9uZwkwCisJLmxvbmcJMTA2NDMwMzY4MAorCS5sb25nCTg4NTI5Njc1MworCS5sb25nCTMxOTE4NTI0NDEKKwkubG9uZwkwCisJLmxvbmcJMTA2MzI1MzY5NgorCS5sb25nCTQ0OTk3NjQ5NQorCS5sb25nCTMxOTI2ODI2NjMKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLnR5cGUJTF90YmwsQG9iamVjdAorCS5zaXplCUxfdGJsLDgyMDgKKwkuc3BhY2UgNDk2LCAweDAwIAkjIHBhZAorCS5hbGlnbiAxNgorSElHSE1BU0tfWToKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLnR5cGUJSElHSE1BU0tfWSxAb2JqZWN0CisJLnNpemUJSElHSE1BU0tfWSwxNgorCS5hbGlnbiAxNgorVF9leHA6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJOTk3MTk1Nzc2CisJLmxvbmcJNDIwMDI1MDU1OQorCS5sb25nCTEwNzI2OTYwOTAKKwkubG9uZwkyODA4MTI3MzQ1CisJLmxvbmcJMzE2MjgzMDUxNAorCS5sb25nCTI4NTE4MTIxNDkKKwkubG9uZwkxMDcyNjk4OTQxCisJLmxvbmcJMjU5NTgwMjU1MQorCS5sb25nCTEwMTY4MTU5MTMKKwkubG9uZwkzMzk0MTE1ODUKKwkubG9uZwkxMDcyNzAxODAwCisJLmxvbmcJMjY0NTg4OTgyCisJLmxvbmcJMzE2MjY4NTIzMworCS5sb25nCTEwNDgwMTkwNDEKKwkubG9uZwkxMDcyNzA0NjY2CisJLmxvbmcJMTM5ODQ3NDg0NQorCS5sb25nCTMxNjE1NTkxNzEKKwkubG9uZwk3NzI5MTQxMjQKKwkubG9uZwkxMDcyNzA3NTQwCisJLmxvbmcJNDAwNDM3Mjc2MgorCS5sb25nCTEwMTMyNzg3MzcKKwkubG9uZwkzODk5NTU1NzE3CisJLmxvbmcJMTA3MjcxMDQyMQorCS5sb25nCTQyNzI4MDc1MAorCS5sb25nCTMxNjM1OTU1NDgKKwkubG9uZwkxOTI4NzQ2MTYxCisJLmxvbmcJMTA3MjcxMzMxMQorCS5sb25nCTk4MzYxNzY3NgorCS5sb25nCTEwMTUzMzM3NTMKKwkubG9uZwkzNTQxNDAyOTk2CisJLmxvbmcJMTA3MjcxNjIwOAorCS5sb25nCTI3NTkxNzczMTcKKwkubG9uZwkxMDE1OTAzMjAyCisJLmxvbmcJMjM4ODIxMjU3CisJLmxvbmcJMTA3MjcxOTExNAorCS5sb25nCTE0Njk2OTQ4NzEKKwkubG9uZwkzMTYzOTMzNTYzCisJLmxvbmcJNzAyNDEyNTEwCisJLmxvbmcJMTA3MjcyMjAyNworCS5sb25nCTM4MDMyNjYwODcKKwkubG9uZwkzMTYzMzI4OTkxCisJLmxvbmcJNzI4OTM0NDU0CisJLmxvbmcJMTA3MjcyNDk0OAorCS5sb25nCTE0MTM4NDI2ODgKKwkubG9uZwkxMDE1MjI3MTg4CisJLmxvbmcJNDEwMzYwNzc2CisJLmxvbmcJMTA3MjcyNzg3NworCS5sb25nCTEyNjk5OTA2NTUKKwkubG9uZwkxMDEzMDI0NDQ2CisJLmxvbmcJNDEzMzg4MTgyNAorCS5sb25nCTEwNzI3MzA4MTMKKwkubG9uZwkyMTQ4MTU1MzQ1CisJLmxvbmcJMzE2Mzk3OTg3NQorCS5sb25nCTM0MDIwMzYwOTkKKwkubG9uZwkxMDcyNzMzNzU4CisJLmxvbmcJNDA1ODg5MzM0CisJLmxvbmcJMTAxNjE1NDIzMgorCS5sb25nCTI2MDI1MTQ3MTMKKwkubG9uZwkxMDcyNzM2NzExCisJLmxvbmcJMjI2ODkyOTMzNgorCS5sb25nCTEwMTU0MDI4NjAKKwkubG9uZwkxODI4MjkyODc5CisJLmxvbmcJMTA3MjczOTY3MgorCS5sb25nCTEyNTU5NTY3NDcKKwkubG9uZwkxMDE2NjM2OTc0CisJLmxvbmcJMTE3MjU5Nzg5MworCS5sb25nCTEwNzI3NDI2NDEKKwkubG9uZwkxMTQ0MzMyNjMKKwkubG9uZwkxMDE2Mzk2MTY5CisJLmxvbmcJNzI4OTA5ODE1CisJLmxvbmcJMTA3Mjc0NTYxOAorCS5sb25nCTM4MzkzMDIyNQorCS5sb25nCTEwMTYwNzgwNDQKKwkubG9uZwk1OTA5NjIxNTYKKwkubG9uZwkxMDcyNzQ4NjAzCisJLmxvbmcJMzgyOTM0NjY2NgorCS5sb25nCTMxNjQzMjQxNzMKKwkubG9uZwk4NTI3NDI1NjIKKwkubG9uZwkxMDcyNzUxNTk2CisJLmxvbmcJNjY3MjUzNTg2CisJLmxvbmcJMTAxMDg0MjEzNQorCS5sb25nCTE2MDg0OTM1MDkKKwkubG9uZwkxMDcyNzU0NTk3CisJLmxvbmcJMzE1OTYyMjE3MQorCS5sb25nCTMxNjM4NTYzMTMKKwkubG9uZwkyOTUyNzEyOTg3CisJLmxvbmcJMTA3Mjc1NzYwNgorCS5sb25nCTMyOTM0OTQ2NTEKKwkubG9uZwkzMTYxMTY4ODc3CisJLmxvbmcJNjg1MTg3OTAyCisJLmxvbmcJMTA3Mjc2MDYyNAorCS5sb25nCTM3ODczMTk4OQorCS5sb25nCTEwMTU4OTE2OTEKKwkubG9uZwkzNDkwODYzOTUzCisJLmxvbmcJMTA3Mjc2MzY0OQorCS5sb25nCTk2MDc5NzQ5OAorCS5sb25nCTMxNjM5OTc0NTYKKwkubG9uZwkyODc1MDc1MjU0CisJLmxvbmcJMTA3Mjc2NjY4MworCS5sb25nCTQxNDQyMzMzMzAKKwkubG9uZwkzMTY0MzgyMjkyCisJLmxvbmcJMzIyODMxNjEwOAorCS5sb25nCTEwNzI3Njk3MjUKKwkubG9uZwkzMDEwMjQxOTkxCisJLmxvbmcJMzE1OTQ3MTM4MAorCS5sb25nCTM1MTQwNTIyNworCS5sb25nCTEwNzI3NzI3NzYKKwkubG9uZwkzMTI1MzM3MzI4CisJLmxvbmcJMzE2MDg3MTA1NQorCS5sb25nCTI5MzAzMjI5MTIKKwkubG9uZwkxMDcyNzc1ODM0CisJLmxvbmcJMjU5OTQ5OTQyMgorCS5sb25nCTMxNjM3NjI2MjMKKwkubG9uZwkyNDcxNDQwNjg2CisJLmxvbmcJMTA3Mjc3ODkwMQorCS5sb25nCTk2ODgzNjI2NworCS5sb25nCTMxNjMyNjM0NjQKKwkubG9uZwkzMzY2MjkzMDczCisJLmxvbmcJMTA3Mjc4MTk3NgorCS5sb25nCTMxMTk0MjYzMTQKKwkubG9uZwkxMDE1MTY5MTMwCisJLmxvbmcJMTQxNjc0MTgyNgorCS5sb25nCTEwNzI3ODUwNjAKKwkubG9uZwkyMTk2MzgwMjEwCisJLmxvbmcJMTAxMjQ2MjEzOQorCS5sb25nCTEwMTQ4NDU4MTkKKwkubG9uZwkxMDcyNzg4MTUyCisJLmxvbmcJMzExNzkxMDY0NgorCS5sb25nCTMxNjI2MDc2ODEKKwkubG9uZwkyMjU3OTU5ODcyCisJLmxvbmcJMTA3Mjc5MTI1MgorCS5sb25nCTM4MDI5NDYxNDgKKwkubG9uZwkxMDE0MDEzNTAzCisJLmxvbmcJOTQ4NzM1NDY2CisJLmxvbmcJMTA3Mjc5NDM2MQorCS5sb25nCTM1MTYzMzgwMjgKKwkubG9uZwkzMTYzNjIzNDU5CisJLmxvbmcJMTQ4MDAyMzM0MworCS5sb25nCTEwNzI3OTc0NzgKKwkubG9uZwkyMjQ3MTk2MTY4CisJLmxvbmcJMTAxNjM3NjAyOQorCS5sb25nCTM5NDk5NzIzNDEKKwkubG9uZwkxMDcyODAwNjAzCisJLmxvbmcJMjA2ODQwODU0OAorCS5sb25nCTEwMTU5NjI0NDQKKwkubG9uZwk0MTYyMDMwMTA4CisJLmxvbmcJMTA3MjgwMzczNworCS5sb25nCTI3NjM0Mjg0ODAKKwkubG9uZwkxMDE2NTc3OTI1CisJLmxvbmcJMjIxNDg3ODQyMAorCS5sb25nCTEwNzI4MDY4ODAKKwkubG9uZwk4OTIyNzAwODcKKwkubG9uZwkzMTY0MTY0OTk4CisJLmxvbmcJMjUwMjQzMzg5OQorCS5sb25nCTEwNzI4MTAwMzEKKwkubG9uZwkyMTQ4NTk1OTEzCisJLmxvbmcJMTAxNjA3MjU2NworCS5sb25nCTgyODk0Njg1OAorCS5sb25nCTEwNzI4MTMxOTEKKwkubG9uZwkxMDY0MjQ5MgorCS5sb25nCTEwMTY5ODgwMTQKKwkubG9uZwkxNTg4ODcxMjA3CisJLmxvbmcJMTA3MjgxNjM1OQorCS5sb25nCTE0MzQzOTU4MgorCS5sb25nCTMxNjQwMTE5OTIKKwkubG9uZwk1ODY5OTU5OTcKKwkubG9uZwkxMDcyODE5NTM2CisJLmxvbmcJNDE2NjIzNDgKKwkubG9uZwkzMTYzNjc2NTY4CisJLmxvbmcJMjIxODMxNTM0MQorCS5sb25nCTEwNzI4MjI3MjEKKwkubG9uZwkyNjk0Mjk1Mzg4CisJLmxvbmcJMzE2NDMzNzQ0NAorCS5sb25nCTIyODgxNTk5NTgKKwkubG9uZwkxMDcyODI1OTE1CisJLmxvbmcJMjE2OTE0NDQ2OQorCS5sb25nCTEwMTU5MjQ1OTcKKwkubG9uZwk4OTcwOTk4MDEKKwkubG9uZwkxMDcyODI5MTE4CisJLmxvbmcJNzU0NzU2Mjk3CisJLmxvbmcJMTAxNjI4OTU4MQorCS5sb25nCTI0NDA5NDQ3OTAKKwkubG9uZwkxMDcyODMyMzI5CisJLmxvbmcJMjQ5Mjc2OTc3NAorCS5sb25nCTEwMTUxOTYwMzAKKwkubG9uZwkyNzI1ODQzNjY1CisJLmxvbmcJMTA3MjgzNTU0OQorCS5sb25nCTE0MzM5MTcwODcKKwkubG9uZwkxMDE1ODg3MDk5CisJLmxvbmcJMTg1MzE4NjYxNgorCS5sb25nCTEwNzI4Mzg3NzgKKwkubG9uZwkzMDY2NDk2MzcxCisJLmxvbmcJMTAxNjcwNTE1MAorCS5sb25nCTQyMTk2MDYwMjYKKwkubG9uZwkxMDcyODQyMDE1CisJLmxvbmcJMjQzNDU3NDc0MgorCS5sb25nCTEwMTU3MzAxMjQKKwkubG9uZwkxMzM3MTA4MDMxCisJLmxvbmcJMTA3Mjg0NTI2MgorCS5sb25nCTMyMDM3MjQ0NTIKKwkubG9uZwkxMDE1NzI2NDIxCisJLmxvbmcJMTg5Nzg0NDM0MQorCS5sb25nCTEwNzI4NDg1MTcKKwkubG9uZwkxMjU0MzAwNDYwCisJLmxvbmcJMTAxNjMyNDUxNAorCS5sb25nCTE3MDkzNDE5MTcKKwkubG9uZwkxMDcyODUxNzgxCisJLmxvbmcJMjU3MTE2ODIxNworCS5sb25nCTEwMTUyMDEwNzUKKwkubG9uZwk4NzQzNzI5MDUKKwkubG9uZwkxMDcyODU1MDU0CisJLmxvbmcJMTAwMjYzNzg4CisJLmxvbmcJMTAxNjk4OTMwOAorCS5sb25nCTM3OTA5NTUzOTMKKwkubG9uZwkxMDcyODU4MzM1CisJLmxvbmcJMjM1Mjk0MjQ2MgorCS5sb25nCTMxNjQyMjg2NjYKKwkubG9uZwkxOTcyNDg0OTc2CisJLmxvbmcJMTA3Mjg2MTYyNgorCS5sb25nCTY3NTI5MDMwMQorCS5sb25nCTMxNjI2ODg2MjYKKwkubG9uZwk0MTEyNTA2NTkzCisJLmxvbmcJMTA3Mjg2NDkyNQorCS5sb25nCTI5NDczNTUyMjEKKwkubG9uZwkxMDE1NDE5NjI0CisJLmxvbmcJMTcyNDk3NjkxNQorCS5sb25nCTEwNzI4NjgyMzQKKwkubG9uZwk0MjA5MDkyMjMKKwkubG9uZwkzMTY0MTY1OTU1CisJLmxvbmcJMzUwNDAwMzQ3MgorCS5sb25nCTEwNzI4NzE1NTEKKwkubG9uZwkzNTk0MDAxMDYwCisJLmxvbmcJMzE1ODM3OTIyOAorCS5sb25nCTk2NDEwNzA1NQorCS5sb25nCTEwNzI4NzQ4NzgKKwkubG9uZwkyODAwNDM5NTg4CisJLmxvbmcJMzE2Mzg4MTc5NworCS5sb25nCTI3OTk5NjA4NDMKKwkubG9uZwkxMDcyODc4MjEzCisJLmxvbmcJMTQyMzY1NTM4MQorCS5sb25nCTEwMTYwNzA3MjcKKwkubG9uZwk1MjY2NTI4MDkKKwkubG9uZwkxMDcyODgxNTU4CisJLmxvbmcJNDIyMzQ1OTczNgorCS5sb25nCTEwMTY5Mjc5NTEKKwkubG9uZwkyODM5NDI0ODU0CisJLmxvbmcJMTA3Mjg4NDkxMQorCS5sb25nCTExNzE1OTYxNjMKKwkubG9uZwkxMDE0MDkwMjU1CisJLmxvbmcJMTI1MzkzNTIxMQorCS5sb25nCTEwNzI4ODgyNzQKKwkubG9uZwkxMzk1MzgyOTMxCisJLmxvbmcJMzE2MDc1MTE4OQorCS5sb25nCTE3MTAzMDI5MworCS5sb25nCTEwNzI4OTE2NDYKKwkubG9uZwkzNTI2NDYwMTMyCisJLmxvbmcJMTAxNTQ3NzM1NAorCS5sb25nCTM5OTE4NDM1ODEKKwkubG9uZwkxMDcyODk1MDI2CisJLmxvbmcJNDA5Mjg1MzQ1NworCS5sb25nCTEwMTU2MzQzMzkKKwkubG9uZwk0MjMyODk0NTEzCisJLmxvbmcJMTA3Mjg5ODQxNgorCS5sb25nCTIzODM5Mzg2ODQKKwkubG9uZwkxMDE1NzE3MDk1CisJLmxvbmcJMTAwMDkyNTc0NgorCS5sb25nCTEwNzI5MDE4MTYKKwkubG9uZwkxMDE4NDkxNjcyCisJLmxvbmcJMzE2NDM1ODEyMAorCS5sb25nCTI5OTI5MDM5MzUKKwkubG9uZwkxMDcyOTA1MjI0CisJLmxvbmcJMjIxODE1NDQwNgorCS5sb25nCTEwMTYyNzY3NjkKKwkubG9uZwkxNzI2MjE2NzQ5CisJLmxvbmcJMTA3MjkwODY0MgorCS5sb25nCTI0NjY4MDgyMjgKKwkubG9uZwkzMTYyNzI0OTgxCisJLmxvbmcJMTYwMzQ0NDcyMQorCS5sb25nCTEwNzI5MTIwNjkKKwkubG9uZwkxNTQ4NjMzNjQwCisJLmxvbmcJMzE2MzI0OTkwMgorCS5sb25nCTI3MzI0OTI4NTkKKwkubG9uZwkxMDcyOTE1NTA1CisJLmxvbmcJMjY5MTQ3OTY0NgorCS5sb25nCTMxNjMzMDQyNjAKKwkubG9uZwk5MjY1OTE0MzUKKwkubG9uZwkxMDcyOTE4OTUxCisJLmxvbmcJMzIwODgzMzc2MgorCS5sb25nCTMxNjM5NjIwOTAKKwkubG9uZwk1ODkxOTg2NjYKKwkubG9uZwkxMDcyOTIyNDA2CisJLmxvbmcJMjY2NDM0NjE3MgorCS5sb25nCTMxNjQyMDY1MzgKKwkubG9uZwkxODI5MDk5NjIyCisJLmxvbmcJMTA3MjkyNTg3MAorCS5sb25nCTEwMTY2NjExODEKKwkubG9uZwkzMTY0NTA5NTgxCisJLmxvbmcJNDYwNDA3MDIzCisJLmxvbmcJMTA3MjkyOTM0NAorCS5sb25nCTQyMzcxNzUwOTIKKwkubG9uZwkzMTY0MTg3MDQ1CisJLmxvbmcJODg3NDYzOTI3CisJLmxvbmcJMTA3MjkzMjgyNworCS5sb25nCTM1OTY3NDQxNjMKKwkubG9uZwkzMTYxODQyNzQyCisJLmxvbmcJMzIxOTk0MjY0NAorCS5sb25nCTEwNzI5MzYzMTkKKwkubG9uZwkzNzk4OTkwNjE2CisJLmxvbmcJMTAxNjQxNzM4MgorCS5sb25nCTMyNzI4NDU1NDEKKwkubG9uZwkxMDcyOTM5ODIxCisJLmxvbmcJOTI4ODUyNDE5CisJLmxvbmcJMzE2NDUzNjgyNAorCS5sb25nCTExNTY0NDA0MzUKKwkubG9uZwkxMDcyOTQzMzMzCisJLmxvbmcJMjM1MTQ1MTI0OQorCS5sb25nCTEwMTUwMTU2MzIKKwkubG9uZwkxMjc2MjYxNDEwCisJLmxvbmcJMTA3Mjk0Njg1NAorCS5sb25nCTMwMDk4MTk0OAorCS5sb25nCTEwMTU3MzI3NDUKKwkubG9uZwkzNzQzMTc1MDI5CisJLmxvbmcJMTA3Mjk1MDM4NAorCS5sb25nCTIwNzI4MTI0OTAKKwkubG9uZwkzMTYzMjIzNjUxCisJLmxvbmcJNzg0MTM4NTIKKwkubG9uZwkxMDcyOTUzOTI1CisJLmxvbmcJNDE4MzIyNjg2NworCS5sb25nCTMxNjQwNjU4MjcKKwkubG9uZwkzMjc4MzQ4MzI0CisJLmxvbmcJMTA3Mjk1NzQ3NAorCS5sb25nCTMwNjk0OTc0MTYKKwkubG9uZwkxMDE1Nzk5Mjg4CisJLmxvbmcJNTY5ODQ3MzM4CisJLmxvbmcJMTA3Mjk2MTAzNAorCS5sb25nCTQ3Mjk0NTI3MgorCS5sb25nCTMxNjAzMzkzMDUKKwkubG9uZwk2NTQ5MTkzMDYKKwkubG9uZwkxMDcyOTY0NjAzCisJLmxvbmcJMzIzMjk2MTc1NworCS5sb25nCTMxNjQwOTYwNDUKKwkubG9uZwkzNjQ1OTQxOTExCisJLmxvbmcJMTA3Mjk2ODE4MQorCS5sb25nCTM4MTQ2ODUwODEKKwkubG9uZwkzMTYyNjIxOTE3CisJLmxvbmcJMTA2NTY2MjkzMgorCS5sb25nCTEwNzI5NzE3NzAKKwkubG9uZwkyNTMzNjcwOTE1CisJLmxvbmcJMTAxNTU3ODgxNAorCS5sb25nCTE2MTcwMDQ4NDUKKwkubG9uZwkxMDcyOTc1MzY4CisJLmxvbmcJODI4MDQ5NDQKKwkubG9uZwkxMDExMzkxMzU0CisJLmxvbmcJMTExODI5NDU3OAorCS5sb25nCTEwNzI5Nzg5NzYKKwkubG9uZwkyMTk3NDk1Njk0CisJLmxvbmcJMzE2MDk1Nzk3NworCS5sb25nCTM5NzgxMDA4MjMKKwkubG9uZwkxMDcyOTgyNTkzCisJLmxvbmcJMzUxMzAyNzE5MAorCS5sb25nCTEwMTY4OTQ1MzkKKwkubG9uZwkxNzIwMzk4MzkxCisJLmxvbmcJMTA3Mjk4NjIyMQorCS5sb25nCTM5ODA2Nzg5NjMKKwkubG9uZwkzMTY0MzQ4NjU2CisJLmxvbmcJMzA0OTM0MDExMgorCS5sb25nCTEwNzI5ODk4NTgKKwkubG9uZwkzMDYyOTE1ODI0CisJLmxvbmcJMTAxNDIxOTE3MQorCS5sb25nCTM3ODQ0ODY2MTAKKwkubG9uZwkxMDcyOTkzNTA1CisJLmxvbmcJMTU4MTg4MzA0MAorCS5sb25nCTMxNjI3NDc1MjkKKwkubG9uZwk0MDQwNjc2MzE4CisJLmxvbmcJMTA3Mjk5NzE2MgorCS5sb25nCTQwOTA2MDkyMzgKKwkubG9uZwkxMDE2NzEyMDM0CisJLmxvbmcJMzkzMzA1OTAzMQorCS5sb25nCTEwNzMwMDA4MjkKKwkubG9uZwkyMTMzMzY2NzY4CisJLmxvbmcJMzE2MjU4MDQwOAorCS5sb25nCTM1NzcwOTY3NDMKKwkubG9uZwkxMDczMDA0NTA2CisJLmxvbmcJMjk1MTQ5NjQxOAorCS5sb25nCTEwMTQ4NDIyNjMKKwkubG9uZwkzMDg4NTY0NTAwCisJLmxvbmcJMTA3MzAwODE5MworCS5sb25nCTE3NjIzMTE1MTcKKwkubG9uZwkxMDE2MDk0MjQ5CisJLmxvbmcJMjU4MzU1MTI0NQorCS5sb25nCTEwNzMwMTE4OTAKKwkubG9uZwkzMTYxMDk0MTk1CisJLmxvbmcJMTAxNjY1NTA2NworCS5sb25nCTIxNzg0NjA2NzEKKwkubG9uZwkxMDczMDE1NTk3CisJLmxvbmcJNzc3ODc4MDk4CisJLmxvbmcJMzE2Mzg5MTA2OQorCS5sb25nCTE5OTAwMTIwNzEKKwkubG9uZwkxMDczMDE5MzE0CisJLmxvbmcJMzUyOTA3MDU2MworCS5sb25nCTMxNjM4NjE3NjkKKwkubG9uZwkyMTM1MjQxMTk4CisJLmxvbmcJMTA3MzAyMzA0MQorCS5sb25nCTEyMzY3NDc4NzEKKwkubG9uZwkxMDE0NjM3NzIzCisJLmxvbmcJMjczMTUwMTEyMgorCS5sb25nCTEwNzMwMjY3NzgKKwkubG9uZwkxNzc0MDMxODU1CisJLmxvbmcJMzE2MzUxODU5NworCS5sb25nCTM4OTY0NjMwODcKKwkubG9uZwkxMDczMDMwNTI1CisJLmxvbmcJMTEzOTc5Nzg3MworCS5sb25nCTMxNjIyODIzODEKKwkubG9uZwkxNDUzMTUwMDgyCisJLmxvbmcJMTA3MzAzNDI4MworCS5sb25nCTQ5ODE1NDY2OQorCS5sb25nCTMxNjI1MzY2MzgKKwkubG9uZwk0MTA5ODA2ODg3CisJLmxvbmcJMTA3MzAzODA1MAorCS5sb25nCTQyMjQwMzk2NgorCS5sb25nCTEwMTU1MTc4MDUKKwkubG9uZwkzMzk1MTI5ODcxCisJLmxvbmcJMTA3MzA0MTgyOAorCS5sb25nCTQwMjUzNDU0MzUKKwkubG9uZwkzMTYzMzgzOTY0CisJLmxvbmcJMzcyMzAzODkzMAorCS5sb25nCTEwNzMwNDU2MTYKKwkubG9uZwkzNzg0NjUyNjQKKwkubG9uZwkzMTYzNjE4MTU4CisJLmxvbmcJOTE3ODQxODgyCisJLmxvbmcJMTA3MzA0OTQxNQorCS5sb25nCTE4NzE1NTY1CisJLmxvbmcJMTAxNjcwNzg4NAorCS5sb25nCTM2ODkwNzE4MjMKKwkubG9uZwkxMDczMDUzMjIzCisJLmxvbmcJMjMyMTAwNDk5NgorCS5sb25nCTMxNjM2MDEyOTIKKwkubG9uZwkzNTY2NzE2OTI1CisJLmxvbmcJMTA3MzA1NzA0MgorCS5sb25nCTE1MzY4MjY4NTYKKwkubG9uZwkxMDE1MTkxMDA5CisJLmxvbmcJNjcxMDI1MTAwCisJLmxvbmcJMTA3MzA2MDg3MgorCS5sb25nCTM4MzIwMTQzNTEKKwkubG9uZwkzMTY0MDcwNjA2CisJLmxvbmcJMzcxMjUwNDg3MworCS5sb25nCTEwNzMwNjQ3MTEKKwkubG9uZwk4ODQ5MTk0OQorCS5sb25nCTEwMTY0NzYyMzYKKwkubG9uZwk0MjIyMTIyNDk5CisJLmxvbmcJMTA3MzA2ODU2MQorCS5sb25nCTEyNzczNzgwNzQKKwkubG9uZwkzMTY0MzA1MzEzCisJLmxvbmcJMjMyMTEwNjYxNQorCS5sb25nCTEwNzMwNzI0MjIKKwkubG9uZwkyMTcxMTc2NjEwCisJLmxvbmcJMTAxMDU4NDM0NworCS5sb25nCTI0MjU5ODE4NDMKKwkubG9uZwkxMDczMDc2MjkzCisJLmxvbmcJMjgzMDM5MDg1MQorCS5sb25nCTMxNjQzOTUxNzUKKwkubG9uZwkzNjM2Njc3ODQKKwkubG9uZwkxMDczMDgwMTc1CisJLmxvbmcJODEzNzUzOTUwCisJLmxvbmcJMTAxNjgzMzc4NQorCS5sb25nCTU1MTM0OTEwNQorCS5sb25nCTEwNzMwODQwNjcKKwkubG9uZwkzODIxOTE2MDUwCisJLmxvbmcJMzE2MzE1NTE2NQorCS5sb25nCTMxMTE1NzQ1MzcKKwkubG9uZwkxMDczMDg3OTY5CisJLmxvbmcJMjYwNjE2MTQ3OQorCS5sb25nCTMxNjM4MDgzMjIKKwkubG9uZwkzODcyMjU3NzgwCisJLmxvbmcJMTA3MzA5MTg4MgorCS5sb25nCTEyNTM1OTIxMDMKKwkubG9uZwkxMDE3MDA2OTEwCisJLmxvbmcJMjk1NjYxMjk5NworCS5sb25nCTEwNzMwOTU4MDYKKwkubG9uZwkyMTE4MTY5NzUxCisJLmxvbmcJMzE2Mzc4NDEyOQorCS5sb25nCTQ4ODE4ODQxMworCS5sb25nCTEwNzMwOTk3NDEKKwkubG9uZwkzMTk5ODIxMDI5CisJLmxvbmcJMTAxNjYxMjYyNAorCS5sb25nCTg4NTgzNDUyOAorCS5sb25nCTEwNzMxMDM2ODYKKwkubG9uZwkxOTczMjU4NTQ3CisJLmxvbmcJMzE2MzMxMDE0MAorCS5sb25nCTQyNzM3NzA0MjMKKwkubG9uZwkxMDczMTA3NjQxCisJLmxvbmcJMzM4MzE4MDgwOQorCS5sb25nCTMxNjQyNjc0NzcKKwkubG9uZwkyMTg2NjE3MzgxCisJLmxvbmcJMTA3MzExMTYwOAorCS5sb25nCTIyNzA3NjQwODQKKwkubG9uZwkzMTY0MzIxMjg5CisJLmxvbmcJMzMzOTIwMzU3NAorCS5sb25nCTEwNzMxMTU1ODUKKwkubG9uZwkxNDgzNDk3NzgwCisJLmxvbmcJMzE2MzQ1NzMzMAorCS5sb25nCTM1NjE3OTM5MDcKKwkubG9uZwkxMDczMTE5NTczCisJLmxvbmcJMTE1NzA1NDA1MworCS5sb25nCTEwMTI5Mzg5MjYKKwkubG9uZwkyOTc5OTYwMTIwCisJLmxvbmcJMTA3MzEyMzU3MgorCS5sb25nCTI1OTkxMDk3MjUKKwkubG9uZwkxMDE1NTQ3MDY5CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzMxMjc1ODIKKwkubG9uZwkzMzA0NTgxOTgKKwkubG9uZwkzMTY0MzMxMzE2CisJLmxvbmcJNDIwMTk3NzY2MgorCS5sb25nCTEwNzMxMzE2MDIKKwkubG9uZwk3NDgzMzAyNTQKKwkubG9uZwkxMDE0NjQyOTMzCisJLmxvbmcJMTk2MzcxMTE2NworCS5sb25nCTEwNzMxMzU2MzQKKwkubG9uZwkxNzQ0NzY3NzU3CisJLmxvbmcJMzE2MTYyMjg3MAorCS5sb25nCTM3MjE2ODg2NDUKKwkubG9uZwkxMDczMTM5Njc2CisJLmxvbmcJMzA2OTI3NjkzNworCS5sb25nCTEwMTY4ODc5NzcKKwkubG9uZwkxMDEzMjU4Nzk5CisJLmxvbmcJMTA3MzE0MzczMAorCS5sb25nCTE3NDg3OTc2MTEKKwkubG9uZwkzMTYxMTc3NjU4CisJLmxvbmcJMjU1NTk4NDYxMworCS5sb25nCTEwNzMxNDc3OTQKKwkubG9uZwkyNjUyNTU1NDQyCisJLmxvbmcJMzE2MzYwMTI2OAorCS5sb25nCTQxODI4NzMyMjAKKwkubG9uZwkxMDczMTUxODY5CisJLmxvbmcJNjI5NTQyNjQ2CisJLmxvbmcJMzE2MzA0NDg3OQorCS5sb25nCTE3MjcyNzg3MjcKKwkubG9uZwkxMDczMTU1OTU2CisJLmxvbmcJMzU2MjcxMDYyMworCS5sb25nCTEwMTI1MjA1MTYKKwkubG9uZwkzOTA3ODA1MDQ0CisJLmxvbmcJMTA3MzE2MDA1MworCS5sb25nCTIyNTcwOTEyMjUKKwkubG9uZwkzMTYyNTk4OTgzCisJLmxvbmcJMjI2MzUzNTc1NAorCS5sb25nCTEwNzMxNjQxNjIKKwkubG9uZwk3NTIyMzM1ODYKKwkubG9uZwkzMTYzNjg3NTg0CisJLmxvbmcJMTIxODgwNjEzMgorCS5sb25nCTEwNzMxNjgyODIKKwkubG9uZwkxODE4NjEzMDUyCisJLmxvbmcJMzE2MzU5NzAxNworCS5sb25nCTkwMzMzNDkwOQorCS5sb25nCTEwNzMxNzI0MTMKKwkubG9uZwkxNjM2NDYyMTA4CisJLmxvbmcJMTAxNjA4ODU3MworCS5sb25nCTE0NDcxOTI1MjEKKwkubG9uZwkxMDczMTc2NTU1CisJLmxvbmcJMTQ2Mjg1NzE3MQorCS5sb25nCTMxNjM1NjMwOTcKKwkubG9uZwkyOTgwODAyMDU3CisJLmxvbmcJMTA3MzE4MDcwOAorCS5sb25nCTM3ODYxOTg5NgorCS5sb25nCTEwMTY4MjE4NzkKKwkubG9uZwkxMzM5OTcyOTI3CisJLmxvbmcJMTA3MzE4NDg3MworCS5sb25nCTE2NzkwODkwOQorCS5sb25nCTEwMTY2MjA3MjgKKwkubG9uZwk5NTA4MDM3MDIKKwkubG9uZwkxMDczMTg5MDQ5CisJLmxvbmcJMTY1NTM2NDkyNgorCS5sb25nCTEwMTYyODU2MDgKKwkubG9uZwkxOTQ0NzgxMTkxCisJLmxvbmcJMTA3MzE5MzIzNgorCS5sb25nCTM5OTMyNzg3NjcKKwkubG9uZwkzMTYyNzcyODU1CisJLmxvbmcJMTU4NzgxNDAzCisJLmxvbmcJMTA3MzE5NzQzNQorCS5sb25nCTIyMjE0NjQ3MTIKKwkubG9uZwkzMTY0MzM1MDI5CisJLmxvbmcJMTk5NzI0MDIKKwkubG9uZwkxMDczMjAxNjQ1CisJLmxvbmcJMzUwNzg5OTg2MgorCS5sb25nCTEwMTcwNTc4NjgKKwkubG9uZwkxNjYwOTEzMzkyCisJLmxvbmcJMTA3MzIwNTg2NgorCS5sb25nCTQyMTg1OTk2MDQKKwkubG9uZwkxMDE2MTg0MjgzCisJLmxvbmcJOTE5NTU1NjgyCisJLmxvbmcJMTA3MzIxMDA5OQorCS5sb25nCTMxMjE5Njk1MzQKKwkubG9uZwkxMDEzOTk2ODAyCisJLmxvbmcJMjIyNDE0NTU1MworCS5sb25nCTEwNzMyMTQzNDMKKwkubG9uZwkzNDgyNTIyMDMwCisJLmxvbmcJMzE2MjUzNzc0NQorCS5sb25nCTE0MTMzNTYwNTAKKwkubG9uZwkxMDczMjE4NTk5CisJLmxvbmcJMTY1MTM0OTI5MQorCS5sb25nCTMxNjM3MTY3NDIKKwkubG9uZwkyOTE2MTU3MTQ1CisJLmxvbmcJMTA3MzIyMjg2NgorCS5sb25nCTIxOTQ4NzU2NQorCS5sb25nCTEwMTYzNTc5NDMKKwkubG9uZwkyNTcxOTQ3NTM5CisJLmxvbmcJMTA3MzIyNzE0NQorCS5sb25nCTM1NTgxNTkwNjQKKwkubG9uZwkzMTY0NDI1MjQ1CisJLmxvbmcJNTE1NDU3NTI3CisJLmxvbmcJMTA3MzIzMTQzNgorCS5sb25nCTgzNjcwOTMzMworCS5sb25nCTEwMTY2OTk4MDIKKwkubG9uZwkxMTc2NzQ5OTk3CisJLmxvbmcJMTA3MzIzNTczOAorCS5sb25nCTI3Mzg5OTg3NzkKKwkubG9uZwkzMTYzMDg0NDIwCisJLmxvbmcJMzk2MzE5NTIxCisJLmxvbmcJMTA3MzI0MDA1MgorCS5sb25nCTQxNzI0MjA4MTYKKwkubG9uZwkzMTYwMTIzMjA4CisJLmxvbmcJMjYwNDk2MjU0MQorCS5sb25nCTEwNzMyNDQzNzcKKwkubG9uZwkyNjE0NDI1Mjc0CisJLmxvbmcJMzE2NDU4Nzc2OAorCS5sb25nCTM2NDM5MDkxNzQKKwkubG9uZwkxMDczMjQ4NzE0CisJLmxvbmcJMzUzNzU4NjEwOQorCS5sb25nCTEwMTU0MDMyMjMKKwkubG9uZwkzNjQ5NzI2MTA1CisJLmxvbmcJMTA3MzI1MzA2MworCS5sb25nCTQwODUwMzYzNDYKKwkubG9uZwkxMDE2Njk4MDUwCisJLmxvbmcJMjc1OTM1MDI4NworCS5sb25nCTEwNzMyNTc0MjQKKwkubG9uZwkxMTQ4NTI2NjM0CisJLmxvbmcJMTAxNjk0MzUwOQorCS5sb25nCTExMTAwODk5NDcKKwkubG9uZwkxMDczMjYxNzk3CisJLmxvbmcJMTQ1MTY0MTYzOQorCS5sb25nCTEwMTY1MjMyNDkKKwkubG9uZwkzMTM0NTkyODg4CisJLmxvbmcJMTA3MzI2NjE4MQorCS5sb25nCTQyMzIyNjY4NjIKKwkubG9uZwkxMDE3MDM5NzEwCisJLmxvbmcJMzgwOTc4MzE2CisJLmxvbmcJMTA3MzI3MDU3OAorCS5sb25nCTg1NDE4ODk3MAorCS5sb25nCTMxNjE1MTEyNjIKKwkubG9uZwkxNTc3NjA4OTIxCisJLmxvbmcJMTA3MzI3NDk4NgorCS5sb25nCTE4NzU0ODk1MTAKKwkubG9uZwkzMTY0MDE2OTcwCisJLmxvbmcJMjU2ODMyMDgyMgorCS5sb25nCTEwNzMyNzk0MDYKKwkubG9uZwkyNzMyODI0NDI4CisJLmxvbmcJMTAxNTQwMTQ5MQorCS5sb25nCTM0OTIyOTM3NzAKKwkubG9uZwkxMDczMjgzODM4CisJLmxvbmcJMjI0ODAzMjIxMAorCS5sb25nCTEwMTY0MzU0MDIKKwkubG9uZwkxOTQxMTc1NzQKKwkubG9uZwkxMDczMjg4MjgzCisJLmxvbmcJNzc3NTI4NjEyCisJLmxvbmcJMzE2NDQ2MDY2NQorCS5sb25nCTE0MDM2NjIzMDYKKwkubG9uZwkxMDczMjkyNzM5CisJLmxvbmcJMjc4ODgwOTU5OQorCS5sb25nCTMxNjI3MTk1ODMKKwkubG9uZwkyOTY2Mjc1NTU3CisJLmxvbmcJMTA3MzI5NzIwNworCS5sb25nCTIxNzYxNTUzMjQKKwkubG9uZwkzMTYwODkxMzM1CisJLmxvbmcJNzI3Njg1MzQ5CisJLmxvbmcJMTA3MzMwMTY4OAorCS5sb25nCTIwMzgyNDY4MDkKKwkubG9uZwkzMTYzNDA3MzE4CisJLmxvbmcJMzQxODkwMzA1NQorCS5sb25nCTEwNzMzMDYxODAKKwkubG9uZwkyNTI3NDU3MzM3CisJLmxvbmcJMzE2MTg2OTE4MAorCS5sb25nCTI1OTE0NTMzNjMKKwkubG9uZwkxMDczMzEwNjg1CisJLmxvbmcJMjEzMjM5NjE4MgorCS5sb25nCTMxNjAxMjI3NzQKKwkubG9uZwkyNjgyMTQ2Mzg0CisJLmxvbmcJMTA3MzMxNTIwMgorCS5sb25nCTIwODIxNzg1MTMKKwkubG9uZwkzMTY0NDExOTk1CisJLmxvbmcJMzgzMzIwOTUwNgorCS5sb25nCTEwNzMzMTk3MzEKKwkubG9uZwkyNzIyOTIwNjg0CisJLmxvbmcJMTAxNDgwMzQxOAorCS5sb25nCTE4OTIyODg0NDIKKwkubG9uZwkxMDczMzI0MjczCisJLmxvbmcJMjQ0NjI1NTY2NgorCS5sb25nCTMxNjM2NDg5NTcKKwkubG9uZwkxMjk3MzUwMTU3CisJLmxvbmcJMTA3MzMyODgyNworCS5sb25nCTEzMDgwMjIwNDAKKwkubG9uZwkzMTY0NDYxMTM0CisJLmxvbmcJMjE5MTc4MjAzMgorCS5sb25nCTEwNzMzMzMzOTMKKwkubG9uZwkyOTYwMjU3NzI2CisJLmxvbmcJMTAxNDc5MTIzOAorCS5sb25nCTQyNDM5MjkxNworCS5sb25nCTEwNzMzMzc5NzIKKwkubG9uZwkyNzQ5MjAyOTk1CisJLmxvbmcJMzE2Mzg4NzI5NAorCS5sb25nCTQzNDMxNjA2NworCS5sb25nCTEwNzMzNDI1NjMKKwkubG9uZwkyMDI4MzU4NzY2CisJLmxvbmcJMTAxNDUwNjY5OAorCS5sb25nCTIzNjYxMDgzMTgKKwkubG9uZwkxMDczMzQ3MTY2CisJLmxvbmcJMjg2Nzk4NTEwMgorCS5sb25nCTMxNjI4MTA4MzAKKwkubG9uZwkyMDY5NzUxMTQxCisJLmxvbmcJMTA3MzM1MTc4MgorCS5sb25nCTE1NjIxNzA2NzUKKwkubG9uZwkzMTYzNzczMjU3CisJLmxvbmcJMzk4NTU1MzU5NQorCS5sb25nCTEwNzMzNTY0MTAKKwkubG9uZwk0MDAyMTQ2MDYyCisJLmxvbmcJMTAxNjg4MjcxMgorCS5sb25nCTM5NjQyODQyMTEKKwkubG9uZwkxMDczMzYxMDUxCisJLmxvbmcJMjExMTU4MzkxNQorCS5sb25nCTEwMTY0NzU3NDAKKwkubG9uZwkyMTUyMDczOTQ0CisJLmxvbmcJMTA3MzM2NTcwNQorCS5sb25nCTE0ODY4NjA1NzYKKwkubG9uZwkzMTY0MjUyMDMyCisJLmxvbmcJMjk5MDQxNzI0NQorCS5sb25nCTEwNzMzNzAzNzEKKwkubG9uZwkzNjgzNDY3NzQ1CisJLmxvbmcJMzE2NDQxNzkwMgorCS5sb25nCTIzMzEyNzEyNTAKKwkubG9uZwkxMDczMzc1MDUwCisJLmxvbmcJODEyMDU3NDQ2CisJLmxvbmcJMTAxMzI1NjAyMgorCS5sb25nCTMyMTk1ODc0NAorCS5sb25nCTEwNzMzNzk3NDIKKwkubG9uZwkzNDAxOTMzNzY3CisJLmxvbmcJMTAxNjg0MzEzNAorCS5sb25nCTE0MDUxNjkyNDEKKwkubG9uZwkxMDczMzg0NDQ2CisJLmxvbmcJMjk5ODUzOTY4OQorCS5sb25nCTMxNjM4Nzk1MjcKKwkubG9uZwkxNDM0MDU4MTc1CisJLmxvbmcJMTA3MzM4OTE2MworCS5sb25nCTI1MTEzMzIzMworCS5sb25nCTEwMTYxMzQzNDUKKwkubG9uZwk1NTcxNDk4ODIKKwkubG9uZwkxMDczMzkzODkzCisJLmxvbmcJMzY3MjcyMDcwOQorCS5sb25nCTEwMTU1ODU4NDEKKwkubG9uZwkzMjE4MzM4NjgyCisJLmxvbmcJMTA3MzM5ODYzNQorCS5sb25nCTM0MDQxNjQzMDQKKwkubG9uZwkzMTYzNTI1Njg0CisJLmxvbmcJOTc3MDIwNzg4CisJLmxvbmcJMTA3MzQwMzM5MQorCS5sb25nCTMwNjUxMDA1MTcKKwkubG9uZwkxMDE2NTkwMTM5CisJLmxvbmcJMjU3Mjg2NjQ3NworCS5sb25nCTEwNzM0MDgxNTkKKwkubG9uZwk4Nzg1NjI0MzMKKwkubG9uZwkxMDE2NTcwMzE3CisJLmxvbmcJMzg2MTA1MDExMQorCS5sb25nCTEwNzM0MTI5NDAKKwkubG9uZwkyNTQ4OTM3NzMKKwkubG9uZwkzMTYzODYxNzU2CisJLmxvbmcJNjk3MTUzMTI2CisJLmxvbmcJMTA3MzQxNzczNQorCS5sb25nCTEyODM1MTU0MjkKKwkubG9uZwkzMTY0MzMxNzY1CisJLmxvbmcJMTgyMjA2NzAyNgorCS5sb25nCTEwNzM0MjI1NDIKKwkubG9uZwkxMjQxOTk0OTU2CisJLmxvbmcJMTAxNjM4ODg2NgorCS5sb25nCTMwOTIxOTA3MTUKKwkubG9uZwkxMDczNDI3MzYyCisJLmxvbmcJODE0MDEyMTY4CisJLmxvbmcJMzE2MDU3MTk5OAorCS5sb25nCTM2NDMzMzQ4OQorCS5sb25nCTEwNzM0MzIxOTYKKwkubG9uZwkzOTIzNzM3NzQ0CisJLmxvbmcJMzE2MjQ2OTk0OQorCS5sb25nCTIzODA2MTgwNDIKKwkubG9uZwkxMDczNDM3MDQyCisJLmxvbmcJMzE0OTU1NzIxOQorCS5sb25nCTMxNjQzNjkzNzUKKwkubG9uZwk3MDM3MTA1MDYKKwkubG9uZwkxMDczNDQxOTAyCisJLmxvbmcJMTM4NDY2MDg0NgorCS5sb25nCTEwMTYyNDQ0NjcKKwkubG9uZwk0MDc2NTU5OTQzCisJLmxvbmcJMTA3MzQ0Njc3NAorCS5sb25nCTIxMTk0NzgzMzEKKwkubG9uZwkzMTYxODA2OTI3CisJLmxvbmcJNDA2MjY2MTA5MgorCS5sb25nCTEwNzM0NTE2NjAKKwkubG9uZwkxNDIyNjE2MDA2CisJLmxvbmcJMzE2NDMwMzg5NAorCS5sb25nCTgxNTg1OTI3NAorCS5sb25nCTEwNzM0NTY1NjAKKwkubG9uZwkyNDAzOTY1OTAKKwkubG9uZwkzMTY0NTM2MDE5CisJLmxvbmcJMzA4MDM1MTUxOQorCS5sb25nCTEwNzM0NjE0NzIKKwkubG9uZwkzMzc5MTI2Nzg5CisJLmxvbmcJMzE1ODI2NjU3NworCS5sb25nCTI0MjA4ODM5MjIKKwkubG9uZwkxMDczNDY2Mzk4CisJLmxvbmcJMjA0OTgxMDA1MgorCS5sb25nCTEwMTUxNjg0NjQKKwkubG9uZwkzMjg3NTIzODQ3CisJLmxvbmcJMTA3MzQ3MTMzNworCS5sb25nCTE2MjU5NzE1MzkKKwkubG9uZwkzMTU4MDU4NTMxCisJLmxvbmcJMTU0MDgyNDU4NQorCS5sb25nCTEwNzM0NzYyOTAKKwkubG9uZwkxMDY0MDE3MDExCisJLmxvbmcJMzE2NDUzNjI2NgorCS5sb25nCTE2MzE2OTU2NzcKKwkubG9uZwkxMDczNDgxMjU2CisJLmxvbmcJMjcxNzYzMzA3NgorCS5sb25nCTMxNjMzOTI2MDIKKwkubG9uZwkzNzE2NTAyMTcyCisJLmxvbmcJMTA3MzQ4NjIzNQorCS5sb25nCTIzMDM3NDAxMjUKKwkubG9uZwkxMDE1MDkxMzAxCisJLmxvbmcJMzY1NzA2NTc3MgorCS5sb25nCTEwNzM0OTEyMjgKKwkubG9uZwkzOTkwMjU2MjMKKwkubG9uZwkzMTY0MDA1NjU0CisJLmxvbmcJMTYxMDYwMDU3MAorCS5sb25nCTEwNzM0OTYyMzUKKwkubG9uZwkzNzY2NzMyMjk4CisJLmxvbmcJMTAxNjgwODc1OQorCS5sb25nCTIwMjk3MTQyMTAKKwkubG9uZwkxMDczNTAxMjU1CisJLmxvbmcJNjEzNjYwMDc5CisJLmxvbmcJMTAxNjE0NzcxOQorCS5sb25nCTc3NzUwNzE0NworCS5sb25nCTEwNzM1MDYyODkKKwkubG9uZwk0MjgyOTI0MjA1CisJLmxvbmcJMTAxNjIzNjEwOQorCS5sb25nCTIzMDc0NDI5OTUKKwkubG9uZwkxMDczNTExMzM2CisJLmxvbmcJMzE5MDExNzcyMQorCS5sb25nCTMxNjM0NTMxMTUKKwkubG9uZwkyNDgzNDgwNTAxCisJLmxvbmcJMTA3MzUxNjM5NworCS5sb25nCTEyMTYzNzE3ODAKKwkubG9uZwkxMDE0MDgyNzQ4CisJLmxvbmcJMTQ2NDk3NjYwMworCS5sb25nCTEwNzM1MjE0NzIKKwkubG9uZwkzNTA3MjkyNDA1CisJLmxvbmcJMzE2MzAyNjExMAorCS5sb25nCTM3MDY2ODc1OTMKKwkubG9uZwkxMDczNTI2NTYwCisJLmxvbmcJMzUyMTcyNjkzOQorCS5sb25nCTEwMTQzMDE2NDMKKwkubG9uZwk3Nzg5MDExMDkKKwkubG9uZwkxMDczNTMxNjYzCisJLmxvbmcJMjI0ODE4Mzk1NAorCS5sb25nCTMxNjIzMTczMjcKKwkubG9uZwkxNDMyMjA4Mzc4CisJLmxvbmcJMTA3MzUzNjc3OQorCS5sb25nCTE0MDEwNjg5MTQKKwkubG9uZwkzMTYzNDEyNTM5CisJLmxvbmcJMTUzMjczNDMyNAorCS5sb25nCTEwNzM1NDE5MDkKKwkubG9uZwkzMDk0MjE2NTM1CisJLmxvbmcJMzE2NDIxMTQzMworCS5sb25nCTEyNDIwMDc5MzIKKwkubG9uZwkxMDczNTQ3MDUzCisJLmxvbmcJMTEzMjAzNDcxNgorCS5sb25nCTMxNjQzODg0MDcKKwkubG9uZwk3MjE5OTYxMzYKKwkubG9uZwkxMDczNTUyMjExCisJLmxvbmcJNTYzNzU0NzM0CisJLmxvbmcJMTAxNjQxOTg5NAorCS5sb25nCTEzNTEwNTAxMAorCS5sb25nCTEwNzM1NTczODMKKwkubG9uZwkxOTA2MTQ4NzI4CisJLmxvbmcJMzE2NDQyNDMxNQorCS5sb25nCTM5MzkxNDgyNDYKKwkubG9uZwkxMDczNTYyNTY4CisJLmxvbmcJMzIxMDM1MjE0OAorCS5sb25nCTEwMTYzMjI4OTkKKwkubG9uZwkzNzA3NDc5MTc1CisJLmxvbmcJMTA3MzU2Nzc2OAorCS5sb25nCTM2MTMwNzkzMDMKKwkubG9uZwkxMDE1MjEzMzE0CisJLmxvbmcJMzg5ODc5NTczMQorCS5sb25nCTEwNzM1NzI5ODIKKwkubG9uZwkxMjQ5OTk0MTQ0CisJLmxvbmcJMTAxMjkxODM5NAorCS5sb25nCTM4MjMwNTE3NgorCS5sb25nCTEwNzM1NzgyMTEKKwkubG9uZwkyMzQ3NjIyMzc2CisJLmxvbmcJMzE2MzYyNzIwMQorCS5sb25nCTE5MTI1NjE3ODEKKwkubG9uZwkxMDczNTgzNDUzCisJLmxvbmcJMzE0NzQ5NTEwMgorCS5sb25nCTEwMTY3MjY4MjkKKwkubG9uZwk2NDY5Njk2NQorCS5sb25nCTEwNzM1ODg3MTAKKwkubG9uZwkxNzY4Nzk3NDkwCisJLmxvbmcJMTAxNjg2NTUzNgorCS5sb25nCTM1OTQxNTg4NjkKKwkubG9uZwkxMDczNTkzOTgwCisJLmxvbmcJMjQ1NjUyMTcwMAorCS5sb25nCTMxNjQzMDUxMzcKKwkubG9uZwk0MDc2OTc1MjAwCisJLmxvbmcJMTA3MzU5OTI2NQorCS5sb25nCTIwMjkwMDA4OTkKKwkubG9uZwkxMDE2MjU3MTExCisJLmxvbmcJMTY3OTU1ODIzMgorCS5sb25nCTEwNzM2MDQ1NjUKKwkubG9uZwkyMzkwMzQyMjg3CisJLmxvbmcJMzE2NDM4MjU0NgorCS5sb25nCTg2MzczODcxOQorCS5sb25nCTEwNzM2MDk4NzkKKwkubG9uZwkxMzI2OTkyMjIwCisJLmxvbmcJMzE2MzY2MTc3MworCS5sb25nCTE3OTY4MzI1MzUKKwkubG9uZwkxMDczNjE1MjA3CisJLmxvbmcJMzE3Njk1NTcxNgorCS5sb25nCTMxNjE2MzQwODkKKwkubG9uZwkzNTE2NDE4OTcKKwkubG9uZwkxMDczNjIwNTUwCisJLmxvbmcJMjE3MjI2MTUyNgorCS5sb25nCTMxNjQwNTkxNzUKKwkubG9uZwk5OTEzNTg0ODIKKwkubG9uZwkxMDczNjI1OTA3CisJLmxvbmcJODM4NzE1MDE5CisJLmxvbmcJMzE2NDIwNjI0NAorCS5sb25nCTM4ODQ2NjI3NzQKKwkubG9uZwkxMDczNjMxMjc4CisJLmxvbmcJMjE1ODYxMTU5OQorCS5sb25nCTEwMTUyNTg3NjEKKwkubG9uZwk2MTA3NTgwMDYKKwkubG9uZwkxMDczNjM2NjY1CisJLmxvbmcJMTk2NTIwOTM5NworCS5sb25nCTMxNjI5MTQ4MDgKKwkubG9uZwk0MjI0MTQyNDY3CisJLmxvbmcJMTA3MzY0MjA2NQorCS5sb25nCTMzODk4MjAzODYKKwkubG9uZwkxMDE2MjU1Nzc4CisJLmxvbmcJMjAwOTk3MDQ5NgorCS5sb25nCTEwNzM2NDc0ODEKKwkubG9uZwkyMTU5MDM5NjY1CisJLmxvbmcJMzE2MzYyMTUyNAorCS5sb25nCTI3Mjg2OTM5NzgKKwkubG9uZwkxMDczNjUyOTExCisJLmxvbmcJMzk2MTA5OTcxCisJLmxvbmcJMzE2NDUxMTI2NworCS5sb25nCTIyNTYzMjUyMzAKKwkubG9uZwkxMDczNjU4MzU2CisJLmxvbmcJNTgwMTE3NzQ2CisJLmxvbmcJMTAxNjM2NTg3MQorCS5sb25nCTc2NDMwNzQ0MQorCS5sb25nCTEwNzM2NjM4MTYKKwkubG9uZwkzMDIxMDU3NDIwCisJLmxvbmcJMzE2NDM3ODA5OQorCS5sb25nCTI3MTk1MTU5MjAKKwkubG9uZwkxMDczNjY5MjkwCisJLmxvbmcJMjc2MDMzMjk0MQorCS5sb25nCTEwMTYxODY1MDkKKwkubG9uZwkzOTk5MzU3NDc5CisJLmxvbmcJMTA3MzY3NDc3OQorCS5sb25nCTIyNTg5NDE2MTYKKwkubG9uZwkxMDE2OTczMzAwCisJLmxvbmcJNDgxNzA2MjgyCisJLmxvbmcJMTA3MzY4MDI4NAorCS5sb25nCTE2OTYwNzkxNzMKKwkubG9uZwkzMTYzNzU5MTA0CisJLmxvbmcJOTI5ODA2OTk5CisJLmxvbmcJMTA3MzY4NTgwMworCS5sb25nCTMyMDUzMzY2NDMKKwkubG9uZwkxMDE2MzA4MTMzCisJLmxvbmcJMTIyMjQ3MjMwOAorCS5sb25nCTEwNzM2OTEzMzcKKwkubG9uZwkxMDU0MzU3NDcwCisJLmxvbmcJMzE2MjA2OTU5NAorCS5sb25nCTE1MzM5NTMzNDQKKwkubG9uZwkxMDczNjk2ODg2CisJLmxvbmcJNzY5MTcxODUxCisJLmxvbmcJMTAxNjcxNDIwOQorCS5sb25nCTIwMzg5NzM2ODgKKwkubG9uZwkxMDczNzAyNDUwCisJLmxvbmcJODkyOTQxMzc0CisJLmxvbmcJMTAxNzA5NTAzNQorCS5sb25nCTI5MTI3MzA2NDQKKwkubG9uZwkxMDczNzA4MDI5CisJLmxvbmcJMzQ5MDA2NzcyMgorCS5sb25nCTMxNjQ0NTM2NTAKKwkubG9uZwkzNTkyOTIyNQorCS5sb25nCTEwNzM3MTM2MjQKKwkubG9uZwkyODA5Nzg4MDQxCisJLmxvbmcJMzE2MDQ4NTU0NAorCS5sb25nCTIxNzQ2NTI2MzIKKwkubG9uZwkxMDczNzE5MjMzCisJLmxvbmcJNDA4NzcxNDU5MAorCS5sb25nCTEwMTU0OTg4MzUKKwkubG9uZwk5MTU1OTI0NjgKKwkubG9uZwkxMDczNzI0ODU4CisJLmxvbmcJMzUyOTQ3ODk0CisJLmxvbmcJMzE2MjA3Mjk0NworCS5sb25nCTczMDgyMTEwNQorCS5sb25nCTEwNzM3MzA0OTgKKwkubG9uZwkyNTIzMjMyNzQzCisJLmxvbmcJMTAxMzExNTc2NAorCS5sb25nCTE3OTc5MjM4MDEKKwkubG9uZwkxMDczNzM2MTUzCisJLmxvbmcJMTk1MDU0NzQyNworCS5sb25nCTEwMTQyNzc2MzUKKwkudHlwZQlUX2V4cCxAb2JqZWN0CisJLnNpemUJVF9leHAsNDA5NgorCS5zcGFjZSA1MTIsIDB4MDAgCSMgcGFkCisJLmFsaWduIDE2CitlX2NvZWZmOgorCS5sb25nCTM4ODQ2MDcyODEKKwkubG9uZwkxMDYyNTkwNTkxCisJLmxvbmcJMzYwNzQwNDczNgorCS5sb25nCTEwNjgyNjQyMDAKKwkubG9uZwkxODc0NDgwNzU5CisJLmxvbmcJMTA2NTU5NTU2MworCS5sb25nCTQyODY3NjAzMzUKKwkubG9uZwkxMDcwNTE0MTA5CisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTEwNzIwNDk3MzAKKwkubG9uZwkwCisJLmxvbmcJMAorCS50eXBlCWVfY29lZmYsQG9iamVjdAorCS5zaXplCWVfY29lZmYsNDgKKwkuYWxpZ24gMTYKK2NvZWZmX2g6CisJLmxvbmcJMAorCS5sb25nCTMyMTg0Nzk2MTYKKwkubG9uZwkwCisJLmxvbmcJMzIxMDU4NzEwNQorCS50eXBlCWNvZWZmX2gsQG9iamVjdAorCS5zaXplCWNvZWZmX2gsMTYKKwkuYWxpZ24gMTYKK0hJR0hNQVNLX0xPR19YOgorCS5sb25nCTQxNjA3NDk1NjgKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjUyNDgKKwkudHlwZQlISUdITUFTS19MT0dfWCxAb2JqZWN0CisJLnNpemUJSElHSE1BU0tfTE9HX1gsMTYKKwkuYWxpZ24gOAorSEFMRk1BU0s6CisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTQyOTQ5NjcyOTUKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJNDI5NDk2NzI5NQorCS50eXBlCUhBTEZNQVNLLEBvYmplY3QKKwkuc2l6ZQlIQUxGTUFTSywxNgorCS5hbGlnbiA4Citsb2cyOgorCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkxMDcyMDQ5NzMwCisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTMyMTk1MzMzNzgKKwkudHlwZQlsb2cyLEBvYmplY3QKKwkuc2l6ZQlsb2cyLDE2CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisvLyAtLSBCZWdpbiBEV0FSRjIgU0VHTUVOVCAuZWhfZnJhbWUKKwkuc2VjdGlvbiAuZWhfZnJhbWUsImEiLEBwcm9nYml0cworLmVoX2ZyYW1lX3NlZzoKKwkuYWxpZ24gMQorCS40Ynl0ZSAweDAwMDAwMDE0CisJLjhieXRlIDB4MDA1MjdhMDEwMDAwMDAwMAorCS44Ynl0ZSAweDA4MDcwYzFiMDExMDc4MDEKKwkuNGJ5dGUgMHgwMDAwMDE5MAorCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfcG93LjEtLgorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9wb3cuNS0uLl9fX3RhZ192YWx1ZV9wb3cuMQorCS4yYnl0ZSAweDA0MDAKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfcG93LjMtLi5fX190YWdfdmFsdWVfcG93LjEKKwkuMmJ5dGUgMHgzMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9wb3cuNC0uLl9fX3RhZ192YWx1ZV9wb3cuMworCS4yYnl0ZSAweDA4MGUKKwkuYnl0ZSAweDAwCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvZV9zaW5oLlMgYi9saWJtL3g4Nl82NC9lX3NpbmguUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZDhkYjYzCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvZV9zaW5oLlMKQEAgLTAsMCArMSwxNDMwIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vICBzaW5oKHgpPShleHAoeCktZXhwKC14KSkvMgorLy8KKy8vICBMZXQgfHh8PXhIK3hMICh1cHBlciAyNiBiaXRzLCBsb3dlciAyNyBiaXRzKQorLy8gIGxvZzIoZSkgcm91bmRlZCB0byAyNiBiaXRzIChoaWdoIHBhcnQpIHBsdXMgYSBkb3VibGUgcHJlY2lzaW9uIGxvdyBwYXJ0IGlzCisvLyAgICAgICAgICBMMkVIK0wyRUwgKHVwcGVyIDI2LCBsb3dlciA1MyBiaXRzKQorLy8KKy8vICBMZXQgeEgqTDJFSD1rK2YrcmAsIHdoZXJlIChrK2YpKjJeNz1pbnQoeEgqTDJFSCoyXjcpLAorLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmPTAuYjEgYjIgLi4uIGI3LCBrIGludGVnZXIKKy8vICAyXmYgaXMgYXBwcm94aW1hdGVkIGFzIFRwW2ZdK0RwW2ZdLCBhbmQgMl57LWZ9IGFzIFRuW2ZdK0RuW2ZdCisvLyAgVHAgc3RvcmVzIHRoZSBoaWdoIDUzIGJpdHMsIERwIHN0b3JlcyAoMl5mLVRwW2ZdKSByb3VuZGVkIHRvIGRvdWJsZSBwcmVjaXNpb24KKy8vCisvLyAgZV58eHw9Ml57aytmfSoyXnIsIHI9cmAreEwqTDJFSCt8eHwqTDJFTCwgfHJ8PDJeey04fSsyXnstMTR9LAorLy8gICAgICAgICAgICAgICAgICAgICAgIGZvciB8eHwgaW4gWzIzLzY0LDMqMl43KQorLy8gIGVeey18eHx9PTJeey1rLWZ9KjJeey1yfQorLy8KKy8vICBlXnx4fCBpcyBhcHByb3hpbWF0ZWQgYXMgMl5rKlRwKzJeaypUcCpjMSpyKDErYzIqcisuLitjNSpyXjQpKzJeaypEcD0KKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgPTJeaypUcCsyXmsqVHAqUDE1KzJeaypEcAorLy8gIGVeey18eHx9IGFwcHJveGltYXRlZCBhcyAyXnsta30qVG4tMl57LWt9KlRuKmMxKnIoMS1jMipyKy4uK2M1KnJeNCkrMl57LWt9KkRuCisvLworLy8gIEZvciB8eHwgaW4gWzEvOCwgMyoyXjcpLCBzaW5oKHgpIGlzIGZvcm1lZCBhcworLy8gICAgICBSTigyXmsqVHAtMl57LWt9KlRuKSsyXmsqVHAqUDE1LTJeey1rfSpUbipQYDE1LTJeey1rfSpUbkwtMl57LWt9KkRuKzJeaypEcAorLy8KKy8vICBGb3IgeCBpbiAoMyoyXjcsIDMqMl44KSwgc2lnbih4KSooZV58eHwpLzIgaXMgcmV0dXJuZWQsIGFuZAorLy8gIHRoZSByZXN1bHQgaXMgY2hlY2tlZCBmb3Igb3ZlcmZsb3cuCisvLworLy8gIEZvciB8eHw8MjMvNjQsIGEgVGF5bG9yIHBvbHlub21pYWwgZXhwYW5zaW9uIGlzIHVzZWQgKGRlZ3JlZSAxMykKKy8vICBUbyByZWR1Y2Ugcm91bmRpbmcgZXJyb3JzLCB0aGUgcDMqeF4zIHRlcm0gaXMgY29tcHV0ZWQgYXMKKy8vICAgICAocDMqeGheMylfaGlnaCtbKHAzKnhsKigzKngqeGgreGxeMikpKyhwMyp4aF4zKV9sb3ddLAorLy8gIHdoZXJlIHg9eGgreGwsICh4aCBhcmUgdGhlIGxlYWRpbmcgMTcgYml0cyBvZiB4KSwgYW5kCisvLyAgICAgKHAzKnhoXjMpX2hpZ2g9Uk4oeCtwMyp4aF4zKS14CisvLyAgKGVycm9yIGJvdW5kIGZvciBwb2x5bm9taWFsIGV4cGFuc2lvbiBpcyBiZWxvdyAwLjUxIHVscCkKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIHNpbmgoTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgc2luaCgrLy1JTkYpID0gKy8tSU5GCisvLyAgc2luaCh4KSA9IHggZm9yIHN1Ym5vcm1hbHMKKy8vICBmb3IgZmluaXRlIGFyZ3VtZW50LCBvbmx5IHNpbmgoMCk9MCBpcyBleGFjdAorLy8gIEZvciBJRUVFIGRvdWJsZQorLy8gICAgc2luaCh4KSBvdmVyZmxvd3MgIGZvciB4ID4gCisvLyAgICA3MTAuNDc1ODYwMDczOTQzODYzNDI2MzkzMzYzNjI0ODExMTcyNDg1MzUxNTYyNTAgPSBNQVhMT0crbG9nKDIpCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgc2luaAorRU5UUlkoc2luaCkKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisuLkIxLjE6CisuLl9fX3RhZ192YWx1ZV9zaW5oLjE6CisgICAgICAgIHB1c2hxICAgICAlcnNpCisuLl9fX3RhZ192YWx1ZV9zaW5oLjM6CisuLkIxLjI6CisgICAgICAgIG1vdnNkICAgICBIQUxGTUFTSyglcmlwKSwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW00LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgTDJFKCVyaXApLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgOCtMMkUoJXJpcCksICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgU2hpZnRlciglcmlwKSwgJXhtbTYKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVjeAorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIGFuZG5wZCAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTQsICV4bW01CisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVjeAorICAgICAgICBzdWJsICAgICAgJDE2MzQzLCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMTc3LCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMgorICAgICAgICBjdnRzZDJzaSAgJXhtbTMsICVlYXgKKyAgICAgICAgc2hsbCAgICAgICQzLCAlZWR4CisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWF4CisgICAgICAgIG1vdnEgICAgICAleG1tMywgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHhvcnBkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tMworICAgICAgICBtb3ZhcGQgICAgY3YoJXJpcCksICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDE2K2N2KCVyaXApLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG1vdmwgICAgICAkMzI3MDQsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgMzIrY3YoJXJpcCksICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxMjcsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICVlZHgsICVlZHgKKyAgICAgICAgc2hybCAgICAgICQzLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkNjU1MjAsICVlYXgKKyAgICAgICAgYWRkbCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGNtcGwgICAgICAkMTYxLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNSwgJXhtbTUKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTAKKyAgICAgICAgcHN1YncgICAgICV4bW0wLCAleG1tNQorICAgICAgICBsZWEgICAgICAgVDJmKCVyaXApLCAlcjgKKyAgICAgICAgbXVscGQgICAgICglcjgsJXJkeCw4KSwgJXhtbTAKKyAgICAgICAgbGVhICAgICAgIFQyX25lZ19mKCVyaXApLCAlcjgKKyAgICAgICAgbXVscGQgICAgICglcjgsJXJkeCw4KSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICA0OCtjdiglcmlwKSwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHBkICAgICA2NCtjdiglcmlwKSwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tNAorICAgICAgICBzaHVmcGQgICAgJDAsICV4bW01LCAleG1tNworICAgICAgICBzdWJwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTQsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBzdWJsICAgICAgJDE2MzUyLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgc2hybCAgICAgICQxLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkNjU1MjAsICVlYXgKKyAgICAgICAgc3VibCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQxNjM1MiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMAorICAgICAgICBsZWEgICAgICAgVDJmKCVyaXApLCAlcjgKKyAgICAgICAgbXVscGQgICAgICglcjgsJXJkeCw4KSwgJXhtbTAKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdnNkICAgICA0OCtjdiglcmlwKSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgIDY0K2N2KCVyaXApLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRsICAgICAgJDE2MzY4LCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVjeCwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0wLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJDEyNywgJWVkeAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8yLjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8wLjAuMjoKKyAgICAgICAgYWRkbCAgICAgICQxNjM0MywgJWVjeAorICAgICAgICBjbXBsICAgICAgJDE2MzQzLCAlZWN4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBjbXBsICAgICAgJDE1ODU2LCAlZWN4CisgICAgICAgIGpiICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBtb3ZhcGQgICAgcHYoJXJpcCksICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIG1vdmFwZCAgICAxNitwdiglcmlwKSwgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW03CisgICAgICAgIG1vdmFwZCAgICAzMitwdiglcmlwKSwgJXhtbTMKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW00CisgICAgICAgIGFuZHBkICAgICBNQVNLMyglcmlwKSwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIHN1YnBkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNworICAgICAgICBhZGRwZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW02LCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW00LCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMiwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNworICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTYKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNC4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMTYsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDE3MzkyLCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVjeCwgJXhtbTIKKyAgICAgICAgeG9ycGQgICAgICV4bW0zLCAleG1tMworICAgICAgICBtb3ZsICAgICAgJDE1MzQ0LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMy4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQzMjczNiwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIG9ybCAgICAgICAlZWR4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjIKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMQorICAgICAgICBhbmRucGQgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMi4wLjI6CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgKCVyc3ApCisuLkIxLjM6CisgICAgICAgIG1vdnEgICAgICAoJXJzcCksICV4bW0wCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKy4uQjEuNToKKyAgICAgICAgcG9wcSAgICAgICVyY3gKKy4uX19fdGFnX3ZhbHVlX3NpbmguNDoKKyAgICAgICAgcmV0ICAgICAgIAorLi5fX190YWdfdmFsdWVfc2luaC41OgorRU5EKHNpbmgpCisjIC0tIEVuZCAgc2luaAorCS5zZWN0aW9uIC5yb2RhdGEsICJhIgorCS5hbGlnbiAxNgorCS5hbGlnbiAxNgorTDJFOgorCS5sb25nCTE2MTA2MTI3MzYKKwkubG9uZwkxMDgwNDk3NDc5CisJLmxvbmcJNDE2NjkwMTU3MgorCS5sb25nCTEwNTMwNzcwMDMKKwkudHlwZQlMMkUsQG9iamVjdAorCS5zaXplCUwyRSwxNgorCS5hbGlnbiAxNgorU2hpZnRlcjoKKwkubG9uZwkwCisJLmxvbmcJMTEyNzc0MzQ4OAorCS5sb25nCTAKKwkubG9uZwkzMjc1MjI3MTM2CisJLnR5cGUJU2hpZnRlcixAb2JqZWN0CisJLnNpemUJU2hpZnRlciwxNgorCS5hbGlnbiAxNgorY3Y6CisJLmxvbmcJMzYwNzQwNDczNgorCS5sb25nCTEwNDQxNDY5NTIKKwkubG9uZwkzNjA3NDA0NzM2CisJLmxvbmcJMzE5MTYzMDYwMAorCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkxMDYzNjYxMTIyCisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTMyMTExNDQ3NzAKKwkubG9uZwkyMTQwMTc1NzU1CisJLmxvbmcJMTAzMzg2NDI2MQorCS5sb25nCTIxNDAxNzU3NTUKKwkubG9uZwkxMDMzODY0MjYxCisJLmxvbmcJNDI4OTQ5NTk4OAorCS5sb25nCTEwNTQxMTM3NDcKKwkubG9uZwk0Mjg5NDk1OTg4CisJLmxvbmcJMTA1NDExMzc0NworCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkxMDY0NzA5Njk4CisJLmxvbmcJNDI3NzgxMTY5NQorCS5sb25nCTEwNjQ3MDk2OTgKKwkudHlwZQljdixAb2JqZWN0CisJLnNpemUJY3YsODAKKwkuYWxpZ24gMTYKK1QyZjoKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjg1MTgxMjE0OQorCS5sb25nCTEwNzI2OTg5NDEKKwkubG9uZwkyNTk1ODAyNTUxCisJLmxvbmcJMTAxNjgxNTkxMworCS5sb25nCTEwNDgwMTkwNDEKKwkubG9uZwkxMDcyNzA0NjY2CisJLmxvbmcJMTM5ODQ3NDg0NQorCS5sb25nCTMxNjE1NTkxNzEKKwkubG9uZwkzODk5NTU1NzE3CisJLmxvbmcJMTA3MjcxMDQyMQorCS5sb25nCTQyNzI4MDc1MAorCS5sb25nCTMxNjM1OTU1NDgKKwkubG9uZwkzNTQxNDAyOTk2CisJLmxvbmcJMTA3MjcxNjIwOAorCS5sb25nCTI3NTkxNzczMTcKKwkubG9uZwkxMDE1OTAzMjAyCisJLmxvbmcJNzAyNDEyNTEwCisJLmxvbmcJMTA3MjcyMjAyNworCS5sb25nCTM4MDMyNjYwODcKKwkubG9uZwkzMTYzMzI4OTkxCisJLmxvbmcJNDEwMzYwNzc2CisJLmxvbmcJMTA3MjcyNzg3NworCS5sb25nCTEyNjk5OTA2NTUKKwkubG9uZwkxMDEzMDI0NDQ2CisJLmxvbmcJMzQwMjAzNjA5OQorCS5sb25nCTEwNzI3MzM3NTgKKwkubG9uZwk0MDU4ODkzMzQKKwkubG9uZwkxMDE2MTU0MjMyCisJLmxvbmcJMTgyODI5Mjg3OQorCS5sb25nCTEwNzI3Mzk2NzIKKwkubG9uZwkxMjU1OTU2NzQ3CisJLmxvbmcJMTAxNjYzNjk3NAorCS5sb25nCTcyODkwOTgxNQorCS5sb25nCTEwNzI3NDU2MTgKKwkubG9uZwkzODM5MzAyMjUKKwkubG9uZwkxMDE2MDc4MDQ0CisJLmxvbmcJODUyNzQyNTYyCisJLmxvbmcJMTA3Mjc1MTU5NgorCS5sb25nCTY2NzI1MzU4NgorCS5sb25nCTEwMTA4NDIxMzUKKwkubG9uZwkyOTUyNzEyOTg3CisJLmxvbmcJMTA3Mjc1NzYwNgorCS5sb25nCTMyOTM0OTQ2NTEKKwkubG9uZwkzMTYxMTY4ODc3CisJLmxvbmcJMzQ5MDg2Mzk1MworCS5sb25nCTEwNzI3NjM2NDkKKwkubG9uZwk5NjA3OTc0OTgKKwkubG9uZwkzMTYzOTk3NDU2CisJLmxvbmcJMzIyODMxNjEwOAorCS5sb25nCTEwNzI3Njk3MjUKKwkubG9uZwkzMDEwMjQxOTkxCisJLmxvbmcJMzE1OTQ3MTM4MAorCS5sb25nCTI5MzAzMjI5MTIKKwkubG9uZwkxMDcyNzc1ODM0CisJLmxvbmcJMjU5OTQ5OTQyMgorCS5sb25nCTMxNjM3NjI2MjMKKwkubG9uZwkzMzY2MjkzMDczCisJLmxvbmcJMTA3Mjc4MTk3NgorCS5sb25nCTMxMTk0MjYzMTQKKwkubG9uZwkxMDE1MTY5MTMwCisJLmxvbmcJMTAxNDg0NTgxOQorCS5sb25nCTEwNzI3ODgxNTIKKwkubG9uZwkzMTE3OTEwNjQ2CisJLmxvbmcJMzE2MjYwNzY4MQorCS5sb25nCTk0ODczNTQ2NgorCS5sb25nCTEwNzI3OTQzNjEKKwkubG9uZwkzNTE2MzM4MDI4CisJLmxvbmcJMzE2MzYyMzQ1OQorCS5sb25nCTM5NDk5NzIzNDEKKwkubG9uZwkxMDcyODAwNjAzCisJLmxvbmcJMjA2ODQwODU0OAorCS5sb25nCTEwMTU5NjI0NDQKKwkubG9uZwkyMjE0ODc4NDIwCisJLmxvbmcJMTA3MjgwNjg4MAorCS5sb25nCTg5MjI3MDA4NworCS5sb25nCTMxNjQxNjQ5OTgKKwkubG9uZwk4Mjg5NDY4NTgKKwkubG9uZwkxMDcyODEzMTkxCisJLmxvbmcJMTA2NDI0OTIKKwkubG9uZwkxMDE2OTg4MDE0CisJLmxvbmcJNTg2OTk1OTk3CisJLmxvbmcJMTA3MjgxOTUzNgorCS5sb25nCTQxNjYyMzQ4CisJLmxvbmcJMzE2MzY3NjU2OAorCS5sb25nCTIyODgxNTk5NTgKKwkubG9uZwkxMDcyODI1OTE1CisJLmxvbmcJMjE2OTE0NDQ2OQorCS5sb25nCTEwMTU5MjQ1OTcKKwkubG9uZwkyNDQwOTQ0NzkwCisJLmxvbmcJMTA3MjgzMjMyOQorCS5sb25nCTI0OTI3Njk3NzQKKwkubG9uZwkxMDE1MTk2MDMwCisJLmxvbmcJMTg1MzE4NjYxNgorCS5sb25nCTEwNzI4Mzg3NzgKKwkubG9uZwkzMDY2NDk2MzcxCisJLmxvbmcJMTAxNjcwNTE1MAorCS5sb25nCTEzMzcxMDgwMzEKKwkubG9uZwkxMDcyODQ1MjYyCisJLmxvbmcJMzIwMzcyNDQ1MgorCS5sb25nCTEwMTU3MjY0MjEKKwkubG9uZwkxNzA5MzQxOTE3CisJLmxvbmcJMTA3Mjg1MTc4MQorCS5sb25nCTI1NzExNjgyMTcKKwkubG9uZwkxMDE1MjAxMDc1CisJLmxvbmcJMzc5MDk1NTM5MworCS5sb25nCTEwNzI4NTgzMzUKKwkubG9uZwkyMzUyOTQyNDYyCisJLmxvbmcJMzE2NDIyODY2NgorCS5sb25nCTQxMTI1MDY1OTMKKwkubG9uZwkxMDcyODY0OTI1CisJLmxvbmcJMjk0NzM1NTIyMQorCS5sb25nCTEwMTU0MTk2MjQKKwkubG9uZwkzNTA0MDAzNDcyCisJLmxvbmcJMTA3Mjg3MTU1MQorCS5sb25nCTM1OTQwMDEwNjAKKwkubG9uZwkzMTU4Mzc5MjI4CisJLmxvbmcJMjc5OTk2MDg0MworCS5sb25nCTEwNzI4NzgyMTMKKwkubG9uZwkxNDIzNjU1MzgxCisJLmxvbmcJMTAxNjA3MDcyNworCS5sb25nCTI4Mzk0MjQ4NTQKKwkubG9uZwkxMDcyODg0OTExCisJLmxvbmcJMTE3MTU5NjE2MworCS5sb25nCTEwMTQwOTAyNTUKKwkubG9uZwkxNzEwMzAyOTMKKwkubG9uZwkxMDcyODkxNjQ2CisJLmxvbmcJMzUyNjQ2MDEzMgorCS5sb25nCTEwMTU0NzczNTQKKwkubG9uZwk0MjMyODk0NTEzCisJLmxvbmcJMTA3Mjg5ODQxNgorCS5sb25nCTIzODM5Mzg2ODQKKwkubG9uZwkxMDE1NzE3MDk1CisJLmxvbmcJMjk5MjkwMzkzNQorCS5sb25nCTEwNzI5MDUyMjQKKwkubG9uZwkyMjE4MTU0NDA2CisJLmxvbmcJMTAxNjI3Njc2OQorCS5sb25nCTE2MDM0NDQ3MjEKKwkubG9uZwkxMDcyOTEyMDY5CisJLmxvbmcJMTU0ODYzMzY0MAorCS5sb25nCTMxNjMyNDk5MDIKKwkubG9uZwk5MjY1OTE0MzUKKwkubG9uZwkxMDcyOTE4OTUxCisJLmxvbmcJMzIwODgzMzc2MgorCS5sb25nCTMxNjM5NjIwOTAKKwkubG9uZwkxODI5MDk5NjIyCisJLmxvbmcJMTA3MjkyNTg3MAorCS5sb25nCTEwMTY2NjExODEKKwkubG9uZwkzMTY0NTA5NTgxCisJLmxvbmcJODg3NDYzOTI3CisJLmxvbmcJMTA3MjkzMjgyNworCS5sb25nCTM1OTY3NDQxNjMKKwkubG9uZwkzMTYxODQyNzQyCisJLmxvbmcJMzI3Mjg0NTU0MQorCS5sb25nCTEwNzI5Mzk4MjEKKwkubG9uZwk5Mjg4NTI0MTkKKwkubG9uZwkzMTY0NTM2ODI0CisJLmxvbmcJMTI3NjI2MTQxMAorCS5sb25nCTEwNzI5NDY4NTQKKwkubG9uZwkzMDA5ODE5NDgKKwkubG9uZwkxMDE1NzMyNzQ1CisJLmxvbmcJNzg0MTM4NTIKKwkubG9uZwkxMDcyOTUzOTI1CisJLmxvbmcJNDE4MzIyNjg2NworCS5sb25nCTMxNjQwNjU4MjcKKwkubG9uZwk1Njk4NDczMzgKKwkubG9uZwkxMDcyOTYxMDM0CisJLmxvbmcJNDcyOTQ1MjcyCisJLmxvbmcJMzE2MDMzOTMwNQorCS5sb25nCTM2NDU5NDE5MTEKKwkubG9uZwkxMDcyOTY4MTgxCisJLmxvbmcJMzgxNDY4NTA4MQorCS5sb25nCTMxNjI2MjE5MTcKKwkubG9uZwkxNjE3MDA0ODQ1CisJLmxvbmcJMTA3Mjk3NTM2OAorCS5sb25nCTgyODA0OTQ0CisJLmxvbmcJMTAxMTM5MTM1NAorCS5sb25nCTM5NzgxMDA4MjMKKwkubG9uZwkxMDcyOTgyNTkzCisJLmxvbmcJMzUxMzAyNzE5MAorCS5sb25nCTEwMTY4OTQ1MzkKKwkubG9uZwkzMDQ5MzQwMTEyCisJLmxvbmcJMTA3Mjk4OTg1OAorCS5sb25nCTMwNjI5MTU4MjQKKwkubG9uZwkxMDE0MjE5MTcxCisJLmxvbmcJNDA0MDY3NjMxOAorCS5sb25nCTEwNzI5OTcxNjIKKwkubG9uZwk0MDkwNjA5MjM4CisJLmxvbmcJMTAxNjcxMjAzNAorCS5sb25nCTM1NzcwOTY3NDMKKwkubG9uZwkxMDczMDA0NTA2CisJLmxvbmcJMjk1MTQ5NjQxOAorCS5sb25nCTEwMTQ4NDIyNjMKKwkubG9uZwkyNTgzNTUxMjQ1CisJLmxvbmcJMTA3MzAxMTg5MAorCS5sb25nCTMxNjEwOTQxOTUKKwkubG9uZwkxMDE2NjU1MDY3CisJLmxvbmcJMTk5MDAxMjA3MQorCS5sb25nCTEwNzMwMTkzMTQKKwkubG9uZwkzNTI5MDcwNTYzCisJLmxvbmcJMzE2Mzg2MTc2OQorCS5sb25nCTI3MzE1MDExMjIKKwkubG9uZwkxMDczMDI2Nzc4CisJLmxvbmcJMTc3NDAzMTg1NQorCS5sb25nCTMxNjM1MTg1OTcKKwkubG9uZwkxNDUzMTUwMDgyCisJLmxvbmcJMTA3MzAzNDI4MworCS5sb25nCTQ5ODE1NDY2OQorCS5sb25nCTMxNjI1MzY2MzgKKwkubG9uZwkzMzk1MTI5ODcxCisJLmxvbmcJMTA3MzA0MTgyOAorCS5sb25nCTQwMjUzNDU0MzUKKwkubG9uZwkzMTYzMzgzOTY0CisJLmxvbmcJOTE3ODQxODgyCisJLmxvbmcJMTA3MzA0OTQxNQorCS5sb25nCTE4NzE1NTY1CisJLmxvbmcJMTAxNjcwNzg4NAorCS5sb25nCTM1NjY3MTY5MjUKKwkubG9uZwkxMDczMDU3MDQyCisJLmxvbmcJMTUzNjgyNjg1NgorCS5sb25nCTEwMTUxOTEwMDkKKwkubG9uZwkzNzEyNTA0ODczCisJLmxvbmcJMTA3MzA2NDcxMQorCS5sb25nCTg4NDkxOTQ5CisJLmxvbmcJMTAxNjQ3NjIzNgorCS5sb25nCTIzMjExMDY2MTUKKwkubG9uZwkxMDczMDcyNDIyCisJLmxvbmcJMjE3MTE3NjYxMAorCS5sb25nCTEwMTA1ODQzNDcKKwkubG9uZwkzNjM2Njc3ODQKKwkubG9uZwkxMDczMDgwMTc1CisJLmxvbmcJODEzNzUzOTUwCisJLmxvbmcJMTAxNjgzMzc4NQorCS5sb25nCTMxMTE1NzQ1MzcKKwkubG9uZwkxMDczMDg3OTY5CisJLmxvbmcJMjYwNjE2MTQ3OQorCS5sb25nCTMxNjM4MDgzMjIKKwkubG9uZwkyOTU2NjEyOTk3CisJLmxvbmcJMTA3MzA5NTgwNgorCS5sb25nCTIxMTgxNjk3NTEKKwkubG9uZwkzMTYzNzg0MTI5CisJLmxvbmcJODg1ODM0NTI4CisJLmxvbmcJMTA3MzEwMzY4NgorCS5sb25nCTE5NzMyNTg1NDcKKwkubG9uZwkzMTYzMzEwMTQwCisJLmxvbmcJMjE4NjYxNzM4MQorCS5sb25nCTEwNzMxMTE2MDgKKwkubG9uZwkyMjcwNzY0MDg0CisJLmxvbmcJMzE2NDMyMTI4OQorCS5sb25nCTM1NjE3OTM5MDcKKwkubG9uZwkxMDczMTE5NTczCisJLmxvbmcJMTE1NzA1NDA1MworCS5sb25nCTEwMTI5Mzg5MjYKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MzEyNzU4MgorCS5sb25nCTMzMDQ1ODE5OAorCS5sb25nCTMxNjQzMzEzMTYKKwkubG9uZwkxOTYzNzExMTY3CisJLmxvbmcJMTA3MzEzNTYzNAorCS5sb25nCTE3NDQ3Njc3NTcKKwkubG9uZwkzMTYxNjIyODcwCisJLmxvbmcJMTAxMzI1ODc5OQorCS5sb25nCTEwNzMxNDM3MzAKKwkubG9uZwkxNzQ4Nzk3NjExCisJLmxvbmcJMzE2MTE3NzY1OAorCS5sb25nCTQxODI4NzMyMjAKKwkubG9uZwkxMDczMTUxODY5CisJLmxvbmcJNjI5NTQyNjQ2CisJLmxvbmcJMzE2MzA0NDg3OQorCS5sb25nCTM5MDc4MDUwNDQKKwkubG9uZwkxMDczMTYwMDUzCisJLmxvbmcJMjI1NzA5MTIyNQorCS5sb25nCTMxNjI1OTg5ODMKKwkubG9uZwkxMjE4ODA2MTMyCisJLmxvbmcJMTA3MzE2ODI4MgorCS5sb25nCTE4MTg2MTMwNTIKKwkubG9uZwkzMTYzNTk3MDE3CisJLmxvbmcJMTQ0NzE5MjUyMQorCS5sb25nCTEwNzMxNzY1NTUKKwkubG9uZwkxNDYyODU3MTcxCisJLmxvbmcJMzE2MzU2MzA5NworCS5sb25nCTEzMzk5NzI5MjcKKwkubG9uZwkxMDczMTg0ODczCisJLmxvbmcJMTY3OTA4OTA5CisJLmxvbmcJMTAxNjYyMDcyOAorCS5sb25nCTE5NDQ3ODExOTEKKwkubG9uZwkxMDczMTkzMjM2CisJLmxvbmcJMzk5MzI3ODc2NworCS5sb25nCTMxNjI3NzI4NTUKKwkubG9uZwkxOTk3MjQwMgorCS5sb25nCTEwNzMyMDE2NDUKKwkubG9uZwkzNTA3ODk5ODYyCisJLmxvbmcJMTAxNzA1Nzg2OAorCS5sb25nCTkxOTU1NTY4MgorCS5sb25nCTEwNzMyMTAwOTkKKwkubG9uZwkzMTIxOTY5NTM0CisJLmxvbmcJMTAxMzk5NjgwMgorCS5sb25nCTE0MTMzNTYwNTAKKwkubG9uZwkxMDczMjE4NTk5CisJLmxvbmcJMTY1MTM0OTI5MQorCS5sb25nCTMxNjM3MTY3NDIKKwkubG9uZwkyNTcxOTQ3NTM5CisJLmxvbmcJMTA3MzIyNzE0NQorCS5sb25nCTM1NTgxNTkwNjQKKwkubG9uZwkzMTY0NDI1MjQ1CisJLmxvbmcJMTE3Njc0OTk5NworCS5sb25nCTEwNzMyMzU3MzgKKwkubG9uZwkyNzM4OTk4Nzc5CisJLmxvbmcJMzE2MzA4NDQyMAorCS5sb25nCTI2MDQ5NjI1NDEKKwkubG9uZwkxMDczMjQ0Mzc3CisJLmxvbmcJMjYxNDQyNTI3NAorCS5sb25nCTMxNjQ1ODc3NjgKKwkubG9uZwkzNjQ5NzI2MTA1CisJLmxvbmcJMTA3MzI1MzA2MworCS5sb25nCTQwODUwMzYzNDYKKwkubG9uZwkxMDE2Njk4MDUwCisJLmxvbmcJMTExMDA4OTk0NworCS5sb25nCTEwNzMyNjE3OTcKKwkubG9uZwkxNDUxNjQxNjM5CisJLmxvbmcJMTAxNjUyMzI0OQorCS5sb25nCTM4MDk3ODMxNgorCS5sb25nCTEwNzMyNzA1NzgKKwkubG9uZwk4NTQxODg5NzAKKwkubG9uZwkzMTYxNTExMjYyCisJLmxvbmcJMjU2ODMyMDgyMgorCS5sb25nCTEwNzMyNzk0MDYKKwkubG9uZwkyNzMyODI0NDI4CisJLmxvbmcJMTAxNTQwMTQ5MQorCS5sb25nCTE5NDExNzU3NAorCS5sb25nCTEwNzMyODgyODMKKwkubG9uZwk3Nzc1Mjg2MTIKKwkubG9uZwkzMTY0NDYwNjY1CisJLmxvbmcJMjk2NjI3NTU1NworCS5sb25nCTEwNzMyOTcyMDcKKwkubG9uZwkyMTc2MTU1MzI0CisJLmxvbmcJMzE2MDg5MTMzNQorCS5sb25nCTM0MTg5MDMwNTUKKwkubG9uZwkxMDczMzA2MTgwCisJLmxvbmcJMjUyNzQ1NzMzNworCS5sb25nCTMxNjE4NjkxODAKKwkubG9uZwkyNjgyMTQ2Mzg0CisJLmxvbmcJMTA3MzMxNTIwMgorCS5sb25nCTIwODIxNzg1MTMKKwkubG9uZwkzMTY0NDExOTk1CisJLmxvbmcJMTg5MjI4ODQ0MgorCS5sb25nCTEwNzMzMjQyNzMKKwkubG9uZwkyNDQ2MjU1NjY2CisJLmxvbmcJMzE2MzY0ODk1NworCS5sb25nCTIxOTE3ODIwMzIKKwkubG9uZwkxMDczMzMzMzkzCisJLmxvbmcJMjk2MDI1NzcyNgorCS5sb25nCTEwMTQ3OTEyMzgKKwkubG9uZwk0MzQzMTYwNjcKKwkubG9uZwkxMDczMzQyNTYzCisJLmxvbmcJMjAyODM1ODc2NgorCS5sb25nCTEwMTQ1MDY2OTgKKwkubG9uZwkyMDY5NzUxMTQxCisJLmxvbmcJMTA3MzM1MTc4MgorCS5sb25nCTE1NjIxNzA2NzUKKwkubG9uZwkzMTYzNzczMjU3CisJLmxvbmcJMzk2NDI4NDIxMQorCS5sb25nCTEwNzMzNjEwNTEKKwkubG9uZwkyMTExNTgzOTE1CisJLmxvbmcJMTAxNjQ3NTc0MAorCS5sb25nCTI5OTA0MTcyNDUKKwkubG9uZwkxMDczMzcwMzcxCisJLmxvbmcJMzY4MzQ2Nzc0NQorCS5sb25nCTMxNjQ0MTc5MDIKKwkubG9uZwkzMjE5NTg3NDQKKwkubG9uZwkxMDczMzc5NzQyCisJLmxvbmcJMzQwMTkzMzc2NworCS5sb25nCTEwMTY4NDMxMzQKKwkubG9uZwkxNDM0MDU4MTc1CisJLmxvbmcJMTA3MzM4OTE2MworCS5sb25nCTI1MTEzMzIzMworCS5sb25nCTEwMTYxMzQzNDUKKwkubG9uZwkzMjE4MzM4NjgyCisJLmxvbmcJMTA3MzM5ODYzNQorCS5sb25nCTM0MDQxNjQzMDQKKwkubG9uZwkzMTYzNTI1Njg0CisJLmxvbmcJMjU3Mjg2NjQ3NworCS5sb25nCTEwNzM0MDgxNTkKKwkubG9uZwk4Nzg1NjI0MzMKKwkubG9uZwkxMDE2NTcwMzE3CisJLmxvbmcJNjk3MTUzMTI2CisJLmxvbmcJMTA3MzQxNzczNQorCS5sb25nCTEyODM1MTU0MjkKKwkubG9uZwkzMTY0MzMxNzY1CisJLmxvbmcJMzA5MjE5MDcxNQorCS5sb25nCTEwNzM0MjczNjIKKwkubG9uZwk4MTQwMTIxNjgKKwkubG9uZwkzMTYwNTcxOTk4CisJLmxvbmcJMjM4MDYxODA0MgorCS5sb25nCTEwNzM0MzcwNDIKKwkubG9uZwkzMTQ5NTU3MjE5CisJLmxvbmcJMzE2NDM2OTM3NQorCS5sb25nCTQwNzY1NTk5NDMKKwkubG9uZwkxMDczNDQ2Nzc0CisJLmxvbmcJMjExOTQ3ODMzMQorCS5sb25nCTMxNjE4MDY5MjcKKwkubG9uZwk4MTU4NTkyNzQKKwkubG9uZwkxMDczNDU2NTYwCisJLmxvbmcJMjQwMzk2NTkwCisJLmxvbmcJMzE2NDUzNjAxOQorCS5sb25nCTI0MjA4ODM5MjIKKwkubG9uZwkxMDczNDY2Mzk4CisJLmxvbmcJMjA0OTgxMDA1MgorCS5sb25nCTEwMTUxNjg0NjQKKwkubG9uZwkxNTQwODI0NTg1CisJLmxvbmcJMTA3MzQ3NjI5MAorCS5sb25nCTEwNjQwMTcwMTEKKwkubG9uZwkzMTY0NTM2MjY2CisJLmxvbmcJMzcxNjUwMjE3MgorCS5sb25nCTEwNzM0ODYyMzUKKwkubG9uZwkyMzAzNzQwMTI1CisJLmxvbmcJMTAxNTA5MTMwMQorCS5sb25nCTE2MTA2MDA1NzAKKwkubG9uZwkxMDczNDk2MjM1CisJLmxvbmcJMzc2NjczMjI5OAorCS5sb25nCTEwMTY4MDg3NTkKKwkubG9uZwk3Nzc1MDcxNDcKKwkubG9uZwkxMDczNTA2Mjg5CisJLmxvbmcJNDI4MjkyNDIwNQorCS5sb25nCTEwMTYyMzYxMDkKKwkubG9uZwkyNDgzNDgwNTAxCisJLmxvbmcJMTA3MzUxNjM5NworCS5sb25nCTEyMTYzNzE3ODAKKwkubG9uZwkxMDE0MDgyNzQ4CisJLmxvbmcJMzcwNjY4NzU5MworCS5sb25nCTEwNzM1MjY1NjAKKwkubG9uZwkzNTIxNzI2OTQwCisJLmxvbmcJMTAxNDMwMTY0MworCS5sb25nCTE0MzIyMDgzNzgKKwkubG9uZwkxMDczNTM2Nzc5CisJLmxvbmcJMTQwMTA2ODkxNAorCS5sb25nCTMxNjM0MTI1MzkKKwkubG9uZwkxMjQyMDA3OTMyCisJLmxvbmcJMTA3MzU0NzA1MworCS5sb25nCTExMzIwMzQ3MTYKKwkubG9uZwkzMTY0Mzg4NDA3CisJLmxvbmcJMTM1MTA1MDEwCisJLmxvbmcJMTA3MzU1NzM4MworCS5sb25nCTE5MDYxNDg3MjgKKwkubG9uZwkzMTY0NDI0MzE1CisJLmxvbmcJMzcwNzQ3OTE3NQorCS5sb25nCTEwNzM1Njc3NjgKKwkubG9uZwkzNjEzMDc5MzAzCisJLmxvbmcJMTAxNTIxMzMxNAorCS5sb25nCTM4MjMwNTE3NgorCS5sb25nCTEwNzM1NzgyMTEKKwkubG9uZwkyMzQ3NjIyMzc2CisJLmxvbmcJMzE2MzYyNzIwMQorCS5sb25nCTY0Njk2OTY1CisJLmxvbmcJMTA3MzU4ODcxMAorCS5sb25nCTE3Njg3OTc0OTAKKwkubG9uZwkxMDE2ODY1NTM2CisJLmxvbmcJNDA3Njk3NTIwMAorCS5sb25nCTEwNzM1OTkyNjUKKwkubG9uZwkyMDI5MDAwODk5CisJLmxvbmcJMTAxNjI1NzExMQorCS5sb25nCTg2MzczODcxOQorCS5sb25nCTEwNzM2MDk4NzkKKwkubG9uZwkxMzI2OTkyMjIwCisJLmxvbmcJMzE2MzY2MTc3MworCS5sb25nCTM1MTY0MTg5NworCS5sb25nCTEwNzM2MjA1NTAKKwkubG9uZwkyMTcyMjYxNTI2CisJLmxvbmcJMzE2NDA1OTE3NQorCS5sb25nCTM4ODQ2NjI3NzQKKwkubG9uZwkxMDczNjMxMjc4CisJLmxvbmcJMjE1ODYxMTU5OQorCS5sb25nCTEwMTUyNTg3NjEKKwkubG9uZwk0MjI0MTQyNDY3CisJLmxvbmcJMTA3MzY0MjA2NQorCS5sb25nCTMzODk4MjAzODYKKwkubG9uZwkxMDE2MjU1Nzc4CisJLmxvbmcJMjcyODY5Mzk3OAorCS5sb25nCTEwNzM2NTI5MTEKKwkubG9uZwkzOTYxMDk5NzEKKwkubG9uZwkzMTY0NTExMjY3CisJLmxvbmcJNzY0MzA3NDQxCisJLmxvbmcJMTA3MzY2MzgxNgorCS5sb25nCTMwMjEwNTc0MjAKKwkubG9uZwkzMTY0Mzc4MDk5CisJLmxvbmcJMzk5OTM1NzQ3OQorCS5sb25nCTEwNzM2NzQ3NzkKKwkubG9uZwkyMjU4OTQxNjE2CisJLmxvbmcJMTAxNjk3MzMwMAorCS5sb25nCTkyOTgwNjk5OQorCS5sb25nCTEwNzM2ODU4MDMKKwkubG9uZwkzMjA1MzM2NjQzCisJLmxvbmcJMTAxNjMwODEzMworCS5sb25nCTE1MzM5NTMzNDQKKwkubG9uZwkxMDczNjk2ODg2CisJLmxvbmcJNzY5MTcxODUxCisJLmxvbmcJMTAxNjcxNDIwOQorCS5sb25nCTI5MTI3MzA2NDQKKwkubG9uZwkxMDczNzA4MDI5CisJLmxvbmcJMzQ5MDA2NzcyMgorCS5sb25nCTMxNjQ0NTM2NTAKKwkubG9uZwkyMTc0NjUyNjMyCisJLmxvbmcJMTA3MzcxOTIzMworCS5sb25nCTQwODc3MTQ1OTAKKwkubG9uZwkxMDE1NDk4ODM1CisJLmxvbmcJNzMwODIxMTA1CisJLmxvbmcJMTA3MzczMDQ5OAorCS5sb25nCTI1MjMyMzI3NDMKKwkubG9uZwkxMDEzMTE1NzY0CisJLnR5cGUJVDJmLEBvYmplY3QKKwkuc2l6ZQlUMmYsMjA0OAorCS5hbGlnbiAxNgorVDJfbmVnX2Y6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTczMDgyMTEwNQorCS5sb25nCTEwNzI2ODE5MjIKKwkubG9uZwkyNTIzMjMyNzQzCisJLmxvbmcJMTAxMjA2NzE4OAorCS5sb25nCTIxNzQ2NTI2MzIKKwkubG9uZwkxMDcyNjcwNjU3CisJLmxvbmcJNDA4NzcxNDU5MAorCS5sb25nCTEwMTQ0NTAyNTkKKwkubG9uZwkyOTEyNzMwNjQ0CisJLmxvbmcJMTA3MjY1OTQ1MworCS5sb25nCTM0OTAwNjc3MjIKKwkubG9uZwkzMTYzNDA1MDc0CisJLmxvbmcJMTUzMzk1MzM0NAorCS5sb25nCTEwNzI2NDgzMTAKKwkubG9uZwk3NjkxNzE4NTEKKwkubG9uZwkxMDE1NjY1NjMzCisJLmxvbmcJOTI5ODA2OTk5CisJLmxvbmcJMTA3MjYzNzIyNworCS5sb25nCTMyMDUzMzY2NDMKKwkubG9uZwkxMDE1MjU5NTU3CisJLmxvbmcJMzk5OTM1NzQ3OQorCS5sb25nCTEwNzI2MjYyMDMKKwkubG9uZwkyMjU4OTQxNjE2CisJLmxvbmcJMTAxNTkyNDcyNAorCS5sb25nCTc2NDMwNzQ0MQorCS5sb25nCTEwNzI2MTUyNDAKKwkubG9uZwkzMDIxMDU3NDIwCisJLmxvbmcJMzE2MzMyOTUyMworCS5sb25nCTI3Mjg2OTM5NzgKKwkubG9uZwkxMDcyNjA0MzM1CisJLmxvbmcJMzk2MTA5OTcxCisJLmxvbmcJMzE2MzQ2MjY5MQorCS5sb25nCTQyMjQxNDI0NjcKKwkubG9uZwkxMDcyNTkzNDg5CisJLmxvbmcJMzM4OTgyMDM4NgorCS5sb25nCTEwMTUyMDcyMDIKKwkubG9uZwkzODg0NjYyNzc0CisJLmxvbmcJMTA3MjU4MjcwMgorCS5sb25nCTIxNTg2MTE1OTkKKwkubG9uZwkxMDE0MjEwMTg1CisJLmxvbmcJMzUxNjQxODk3CisJLmxvbmcJMTA3MjU3MTk3NAorCS5sb25nCTIxNzIyNjE1MjYKKwkubG9uZwkzMTYzMDEwNTk5CisJLmxvbmcJODYzNzM4NzE5CisJLmxvbmcJMTA3MjU2MTMwMworCS5sb25nCTEzMjY5OTIyMjAKKwkubG9uZwkzMTYyNjEzMTk3CisJLmxvbmcJNDA3Njk3NTIwMAorCS5sb25nCTEwNzI1NTA2ODkKKwkubG9uZwkyMDI5MDAwODk5CisJLmxvbmcJMTAxNTIwODUzNQorCS5sb25nCTY0Njk2OTY1CisJLmxvbmcJMTA3MjU0MDEzNAorCS5sb25nCTE3Njg3OTc0OTAKKwkubG9uZwkxMDE1ODE2OTYwCisJLmxvbmcJMzgyMzA1MTc2CisJLmxvbmcJMTA3MjUyOTYzNQorCS5sb25nCTIzNDc2MjIzNzYKKwkubG9uZwkzMTYyNTc4NjI1CisJLmxvbmcJMzcwNzQ3OTE3NQorCS5sb25nCTEwNzI1MTkxOTIKKwkubG9uZwkzNjEzMDc5MzAzCisJLmxvbmcJMTAxNDE2NDczOAorCS5sb25nCTEzNTEwNTAxMAorCS5sb25nCTEwNzI1MDg4MDcKKwkubG9uZwkxOTA2MTQ4NzI4CisJLmxvbmcJMzE2MzM3NTczOQorCS5sb25nCTEyNDIwMDc5MzIKKwkubG9uZwkxMDcyNDk4NDc3CisJLmxvbmcJMTEzMjAzNDcxNgorCS5sb25nCTMxNjMzMzk4MzEKKwkubG9uZwkxNDMyMjA4Mzc4CisJLmxvbmcJMTA3MjQ4ODIwMworCS5sb25nCTE0MDEwNjg5MTQKKwkubG9uZwkzMTYyMzYzOTYzCisJLmxvbmcJMzcwNjY4NzU5MworCS5sb25nCTEwNzI0Nzc5ODQKKwkubG9uZwkzNTIxNzI2OTQwCisJLmxvbmcJMTAxMzI1MzA2NworCS5sb25nCTI0ODM0ODA1MDEKKwkubG9uZwkxMDcyNDY3ODIxCisJLmxvbmcJMTIxNjM3MTc4MAorCS5sb25nCTEwMTMwMzQxNzIKKwkubG9uZwk3Nzc1MDcxNDcKKwkubG9uZwkxMDcyNDU3NzEzCisJLmxvbmcJNDI4MjkyNDIwNQorCS5sb25nCTEwMTUxODc1MzMKKwkubG9uZwkxNjEwNjAwNTcwCisJLmxvbmcJMTA3MjQ0NzY1OQorCS5sb25nCTM3NjY3MzIyOTgKKwkubG9uZwkxMDE1NzYwMTgzCisJLmxvbmcJMzcxNjUwMjE3MgorCS5sb25nCTEwNzI0Mzc2NTkKKwkubG9uZwkyMzAzNzQwMTI1CisJLmxvbmcJMTAxNDA0MjcyNQorCS5sb25nCTE1NDA4MjQ1ODUKKwkubG9uZwkxMDcyNDI3NzE0CisJLmxvbmcJMTA2NDAxNzAxMQorCS5sb25nCTMxNjM0ODc2OTAKKwkubG9uZwkyNDIwODgzOTIyCisJLmxvbmcJMTA3MjQxNzgyMgorCS5sb25nCTIwNDk4MTAwNTIKKwkubG9uZwkxMDE0MTE5ODg4CisJLmxvbmcJODE1ODU5Mjc0CisJLmxvbmcJMTA3MjQwNzk4NAorCS5sb25nCTI0MDM5NjU5MAorCS5sb25nCTMxNjM0ODc0NDMKKwkubG9uZwk0MDc2NTU5OTQzCisJLmxvbmcJMTA3MjM5ODE5OAorCS5sb25nCTIxMTk0NzgzMzEKKwkubG9uZwkzMTYwNzU4MzUxCisJLmxvbmcJMjM4MDYxODA0MgorCS5sb25nCTEwNzIzODg0NjYKKwkubG9uZwkzMTQ5NTU3MjE5CisJLmxvbmcJMzE2MzMyMDc5OQorCS5sb25nCTMwOTIxOTA3MTUKKwkubG9uZwkxMDcyMzc4Nzg2CisJLmxvbmcJODE0MDEyMTY4CisJLmxvbmcJMzE1OTUyMzQyMgorCS5sb25nCTY5NzE1MzEyNgorCS5sb25nCTEwNzIzNjkxNTkKKwkubG9uZwkxMjgzNTE1NDI5CisJLmxvbmcJMzE2MzI4MzE4OQorCS5sb25nCTI1NzI4NjY0NzcKKwkubG9uZwkxMDcyMzU5NTgzCisJLmxvbmcJODc4NTYyNDMzCisJLmxvbmcJMTAxNTUyMTc0MQorCS5sb25nCTMyMTgzMzg2ODIKKwkubG9uZwkxMDcyMzUwMDU5CisJLmxvbmcJMzQwNDE2NDMwNAorCS5sb25nCTMxNjI0NzcxMDgKKwkubG9uZwkxNDM0MDU4MTc1CisJLmxvbmcJMTA3MjM0MDU4NworCS5sb25nCTI1MTEzMzIzMworCS5sb25nCTEwMTUwODU3NjkKKwkubG9uZwkzMjE5NTg3NDQKKwkubG9uZwkxMDcyMzMxMTY2CisJLmxvbmcJMzQwMTkzMzc2NworCS5sb25nCTEwMTU3OTQ1NTgKKwkubG9uZwkyOTkwNDE3MjQ1CisJLmxvbmcJMTA3MjMyMTc5NQorCS5sb25nCTM2ODM0Njc3NDUKKwkubG9uZwkzMTYzMzY5MzI2CisJLmxvbmcJMzk2NDI4NDIxMQorCS5sb25nCTEwNzIzMTI0NzUKKwkubG9uZwkyMTExNTgzOTE1CisJLmxvbmcJMTAxNTQyNzE2NAorCS5sb25nCTIwNjk3NTExNDEKKwkubG9uZwkxMDcyMzAzMjA2CisJLmxvbmcJMTU2MjE3MDY3NQorCS5sb25nCTMxNjI3MjQ2ODEKKwkubG9uZwk0MzQzMTYwNjcKKwkubG9uZwkxMDcyMjkzOTg3CisJLmxvbmcJMjAyODM1ODc2NgorCS5sb25nCTEwMTM0NTgxMjIKKwkubG9uZwkyMTkxNzgyMDMyCisJLmxvbmcJMTA3MjI4NDgxNworCS5sb25nCTI5NjAyNTc3MjYKKwkubG9uZwkxMDEzNzQyNjYyCisJLmxvbmcJMTg5MjI4ODQ0MgorCS5sb25nCTEwNzIyNzU2OTcKKwkubG9uZwkyNDQ2MjU1NjY2CisJLmxvbmcJMzE2MjYwMDM4MQorCS5sb25nCTI2ODIxNDYzODQKKwkubG9uZwkxMDcyMjY2NjI2CisJLmxvbmcJMjA4MjE3ODUxMworCS5sb25nCTMxNjMzNjM0MTkKKwkubG9uZwkzNDE4OTAzMDU1CisJLmxvbmcJMTA3MjI1NzYwNAorCS5sb25nCTI1Mjc0NTczMzcKKwkubG9uZwkzMTYwODIwNjA0CisJLmxvbmcJMjk2NjI3NTU1NworCS5sb25nCTEwNzIyNDg2MzEKKwkubG9uZwkyMTc2MTU1MzI0CisJLmxvbmcJMzE1OTg0Mjc1OQorCS5sb25nCTE5NDExNzU3NAorCS5sb25nCTEwNzIyMzk3MDcKKwkubG9uZwk3Nzc1Mjg2MTIKKwkubG9uZwkzMTYzNDEyMDg5CisJLmxvbmcJMjU2ODMyMDgyMgorCS5sb25nCTEwNzIyMzA4MzAKKwkubG9uZwkyNzMyODI0NDI4CisJLmxvbmcJMTAxNDM1MjkxNQorCS5sb25nCTM4MDk3ODMxNgorCS5sb25nCTEwNzIyMjIwMDIKKwkubG9uZwk4NTQxODg5NzAKKwkubG9uZwkzMTYwNDYyNjg2CisJLmxvbmcJMTExMDA4OTk0NworCS5sb25nCTEwNzIyMTMyMjEKKwkubG9uZwkxNDUxNjQxNjM5CisJLmxvbmcJMTAxNTQ3NDY3MworCS5sb25nCTM2NDk3MjYxMDUKKwkubG9uZwkxMDcyMjA0NDg3CisJLmxvbmcJNDA4NTAzNjM0NgorCS5sb25nCTEwMTU2NDk0NzQKKwkubG9uZwkyNjA0OTYyNTQxCisJLmxvbmcJMTA3MjE5NTgwMQorCS5sb25nCTI2MTQ0MjUyNzQKKwkubG9uZwkzMTYzNTM5MTkyCisJLmxvbmcJMTE3Njc0OTk5NworCS5sb25nCTEwNzIxODcxNjIKKwkubG9uZwkyNzM4OTk4Nzc5CisJLmxvbmcJMzE2MjAzNTg0NAorCS5sb25nCTI1NzE5NDc1MzkKKwkubG9uZwkxMDcyMTc4NTY5CisJLmxvbmcJMzU1ODE1OTA2NAorCS5sb25nCTMxNjMzNzY2NjkKKwkubG9uZwkxNDEzMzU2MDUwCisJLmxvbmcJMTA3MjE3MDAyMworCS5sb25nCTE2NTEzNDkyOTEKKwkubG9uZwkzMTYyNjY4MTY2CisJLmxvbmcJOTE5NTU1NjgyCisJLmxvbmcJMTA3MjE2MTUyMworCS5sb25nCTMxMjE5Njk1MzQKKwkubG9uZwkxMDEyOTQ4MjI2CisJLmxvbmcJMTk5NzI0MDIKKwkubG9uZwkxMDcyMTUzMDY5CisJLmxvbmcJMzUwNzg5OTg2MgorCS5sb25nCTEwMTYwMDkyOTIKKwkubG9uZwkxOTQ0NzgxMTkxCisJLmxvbmcJMTA3MjE0NDY2MAorCS5sb25nCTM5OTMyNzg3NjcKKwkubG9uZwkzMTYxNzI0Mjc5CisJLmxvbmcJMTMzOTk3MjkyNworCS5sb25nCTEwNzIxMzYyOTcKKwkubG9uZwkxNjc5MDg5MDkKKwkubG9uZwkxMDE1NTcyMTUyCisJLmxvbmcJMTQ0NzE5MjUyMQorCS5sb25nCTEwNzIxMjc5NzkKKwkubG9uZwkxNDYyODU3MTcxCisJLmxvbmcJMzE2MjUxNDUyMQorCS5sb25nCTEyMTg4MDYxMzIKKwkubG9uZwkxMDcyMTE5NzA2CisJLmxvbmcJMTgxODYxMzA1MgorCS5sb25nCTMxNjI1NDg0NDEKKwkubG9uZwkzOTA3ODA1MDQ0CisJLmxvbmcJMTA3MjExMTQ3NworCS5sb25nCTIyNTcwOTEyMjUKKwkubG9uZwkzMTYxNTUwNDA3CisJLmxvbmcJNDE4Mjg3MzIyMAorCS5sb25nCTEwNzIxMDMyOTMKKwkubG9uZwk2Mjk1NDI2NDYKKwkubG9uZwkzMTYxOTk2MzAzCisJLmxvbmcJMTAxMzI1ODc5OQorCS5sb25nCTEwNzIwOTUxNTQKKwkubG9uZwkxNzQ4Nzk3NjExCisJLmxvbmcJMzE2MDEyOTA4MgorCS5sb25nCTE5NjM3MTExNjcKKwkubG9uZwkxMDcyMDg3MDU4CisJLmxvbmcJMTc0NDc2Nzc1NworCS5sb25nCTMxNjA1NzQyOTQKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MjA3OTAwNgorCS5sb25nCTMzMDQ1ODE5OAorCS5sb25nCTMxNjMyODI3NDAKKwkubG9uZwkzNTYxNzkzOTA3CisJLmxvbmcJMTA3MjA3MDk5NworCS5sb25nCTExNTcwNTQwNTMKKwkubG9uZwkxMDExODkwMzUwCisJLmxvbmcJMjE4NjYxNzM4MQorCS5sb25nCTEwNzIwNjMwMzIKKwkubG9uZwkyMjcwNzY0MDg0CisJLmxvbmcJMzE2MzI3MjcxMworCS5sb25nCTg4NTgzNDUyOAorCS5sb25nCTEwNzIwNTUxMTAKKwkubG9uZwkxOTczMjU4NTQ3CisJLmxvbmcJMzE2MjI2MTU2NAorCS5sb25nCTI5NTY2MTI5OTcKKwkubG9uZwkxMDcyMDQ3MjMwCisJLmxvbmcJMjExODE2OTc1MQorCS5sb25nCTMxNjI3MzU1NTMKKwkubG9uZwkzMTExNTc0NTM3CisJLmxvbmcJMTA3MjAzOTM5MworCS5sb25nCTI2MDYxNjE0NzkKKwkubG9uZwkzMTYyNzU5NzQ2CisJLmxvbmcJMzYzNjY3Nzg0CisJLmxvbmcJMTA3MjAzMTU5OQorCS5sb25nCTgxMzc1Mzk1MAorCS5sb25nCTEwMTU3ODUyMDkKKwkubG9uZwkyMzIxMTA2NjE1CisJLmxvbmcJMTA3MjAyMzg0NgorCS5sb25nCTIxNzExNzY2MTAKKwkubG9uZwkxMDA5NTM1NzcxCisJLmxvbmcJMzcxMjUwNDg3MworCS5sb25nCTEwNzIwMTYxMzUKKwkubG9uZwk4ODQ5MTk0OQorCS5sb25nCTEwMTU0Mjc2NjAKKwkubG9uZwkzNTY2NzE2OTI1CisJLmxvbmcJMTA3MjAwODQ2NgorCS5sb25nCTE1MzY4MjY4NTYKKwkubG9uZwkxMDE0MTQyNDMzCisJLmxvbmcJOTE3ODQxODgyCisJLmxvbmcJMTA3MjAwMDgzOQorCS5sb25nCTE4NzE1NTY1CisJLmxvbmcJMTAxNTY1OTMwOAorCS5sb25nCTMzOTUxMjk4NzEKKwkubG9uZwkxMDcxOTkzMjUyCisJLmxvbmcJNDAyNTM0NTQzNQorCS5sb25nCTMxNjIzMzUzODgKKwkubG9uZwkxNDUzMTUwMDgyCisJLmxvbmcJMTA3MTk4NTcwNworCS5sb25nCTQ5ODE1NDY2OQorCS5sb25nCTMxNjE0ODgwNjIKKwkubG9uZwkyNzMxNTAxMTIyCisJLmxvbmcJMTA3MTk3ODIwMgorCS5sb25nCTE3NzQwMzE4NTUKKwkubG9uZwkzMTYyNDcwMDIxCisJLmxvbmcJMTk5MDAxMjA3MQorCS5sb25nCTEwNzE5NzA3MzgKKwkubG9uZwkzNTI5MDcwNTYzCisJLmxvbmcJMzE2MjgxMzE5MworCS5sb25nCTI1ODM1NTEyNDUKKwkubG9uZwkxMDcxOTYzMzE0CisJLmxvbmcJMzE2MTA5NDE5NQorCS5sb25nCTEwMTU2MDY0OTEKKwkubG9uZwkzNTc3MDk2NzQzCisJLmxvbmcJMTA3MTk1NTkzMAorCS5sb25nCTI5NTE0OTY0MTgKKwkubG9uZwkxMDEzNzkzNjg3CisJLmxvbmcJNDA0MDY3NjMxOAorCS5sb25nCTEwNzE5NDg1ODYKKwkubG9uZwk0MDkwNjA5MjM4CisJLmxvbmcJMTAxNTY2MzQ1OAorCS5sb25nCTMwNDkzNDAxMTIKKwkubG9uZwkxMDcxOTQxMjgyCisJLmxvbmcJMzA2MjkxNTgyNAorCS5sb25nCTEwMTMxNzA1OTUKKwkubG9uZwkzOTc4MTAwODIzCisJLmxvbmcJMTA3MTkzNDAxNworCS5sb25nCTM1MTMwMjcxOTAKKwkubG9uZwkxMDE1ODQ1OTYzCisJLmxvbmcJMTYxNzAwNDg0NQorCS5sb25nCTEwNzE5MjY3OTIKKwkubG9uZwk4MjgwNDk0NAorCS5sb25nCTEwMTAzNDI3NzgKKwkubG9uZwkzNjQ1OTQxOTExCisJLmxvbmcJMTA3MTkxOTYwNQorCS5sb25nCTM4MTQ2ODUwODEKKwkubG9uZwkzMTYxNTczMzQxCisJLmxvbmcJNTY5ODQ3MzM4CisJLmxvbmcJMTA3MTkxMjQ1OAorCS5sb25nCTQ3Mjk0NTI3MgorCS5sb25nCTMxNTkyOTA3MjkKKwkubG9uZwk3ODQxMzg1MgorCS5sb25nCTEwNzE5MDUzNDkKKwkubG9uZwk0MTgzMjI2ODY3CisJLmxvbmcJMzE2MzAxNzI1MQorCS5sb25nCTEyNzYyNjE0MTAKKwkubG9uZwkxMDcxODk4Mjc4CisJLmxvbmcJMzAwOTgxOTQ4CisJLmxvbmcJMTAxNDY4NDE2OQorCS5sb25nCTMyNzI4NDU1NDEKKwkubG9uZwkxMDcxODkxMjQ1CisJLmxvbmcJOTI4ODUyNDE5CisJLmxvbmcJMzE2MzQ4ODI0OAorCS5sb25nCTg4NzQ2MzkyNworCS5sb25nCTEwNzE4ODQyNTEKKwkubG9uZwkzNTk2NzQ0MTYzCisJLmxvbmcJMzE2MDc5NDE2NgorCS5sb25nCTE4MjkwOTk2MjIKKwkubG9uZwkxMDcxODc3Mjk0CisJLmxvbmcJMTAxNjY2MTE4MQorCS5sb25nCTMxNjM0NjEwMDUKKwkubG9uZwk5MjY1OTE0MzUKKwkubG9uZwkxMDcxODcwMzc1CisJLmxvbmcJMzIwODgzMzc2MgorCS5sb25nCTMxNjI5MTM1MTQKKwkubG9uZwkxNjAzNDQ0NzIxCisJLmxvbmcJMTA3MTg2MzQ5MworCS5sb25nCTE1NDg2MzM2NDAKKwkubG9uZwkzMTYyMjAxMzI2CisJLmxvbmcJMjk5MjkwMzkzNQorCS5sb25nCTEwNzE4NTY2NDgKKwkubG9uZwkyMjE4MTU0NDA2CisJLmxvbmcJMTAxNTIyODE5MworCS5sb25nCTQyMzI4OTQ1MTMKKwkubG9uZwkxMDcxODQ5ODQwCisJLmxvbmcJMjM4MzkzODY4NAorCS5sb25nCTEwMTQ2Njg1MTkKKwkubG9uZwkxNzEwMzAyOTMKKwkubG9uZwkxMDcxODQzMDcwCisJLmxvbmcJMzUyNjQ2MDEzMgorCS5sb25nCTEwMTQ0Mjg3NzgKKwkubG9uZwkyODM5NDI0ODU0CisJLmxvbmcJMTA3MTgzNjMzNQorCS5sb25nCTExNzE1OTYxNjMKKwkubG9uZwkxMDEzMDQxNjc5CisJLmxvbmcJMjc5OTk2MDg0MworCS5sb25nCTEwNzE4Mjk2MzcKKwkubG9uZwkxNDIzNjU1MzgxCisJLmxvbmcJMTAxNTAyMjE1MQorCS5sb25nCTM1MDQwMDM0NzIKKwkubG9uZwkxMDcxODIyOTc1CisJLmxvbmcJMzU5NDAwMTA2MAorCS5sb25nCTMxNTczMzA2NTIKKwkubG9uZwk0MTEyNTA2NTkzCisJLmxvbmcJMTA3MTgxNjM0OQorCS5sb25nCTI5NDczNTUyMjEKKwkubG9uZwkxMDE0MzcxMDQ4CisJLmxvbmcJMzc5MDk1NTM5MworCS5sb25nCTEwNzE4MDk3NTkKKwkubG9uZwkyMzUyOTQyNDYyCisJLmxvbmcJMzE2MzE4MDA5MAorCS5sb25nCTE3MDkzNDE5MTcKKwkubG9uZwkxMDcxODAzMjA1CisJLmxvbmcJMjU3MTE2ODIxNworCS5sb25nCTEwMTQxNTI0OTkKKwkubG9uZwkxMzM3MTA4MDMxCisJLmxvbmcJMTA3MTc5NjY4NgorCS5sb25nCTMyMDM3MjQ0NTIKKwkubG9uZwkxMDE0Njc3ODQ1CisJLmxvbmcJMTg1MzE4NjYxNgorCS5sb25nCTEwNzE3OTAyMDIKKwkubG9uZwkzMDY2NDk2MzcxCisJLmxvbmcJMTAxNTY1NjU3NAorCS5sb25nCTI0NDA5NDQ3OTAKKwkubG9uZwkxMDcxNzgzNzUzCisJLmxvbmcJMjQ5Mjc2OTc3NAorCS5sb25nCTEwMTQxNDc0NTQKKwkubG9uZwkyMjg4MTU5OTU4CisJLmxvbmcJMTA3MTc3NzMzOQorCS5sb25nCTIxNjkxNDQ0NjkKKwkubG9uZwkxMDE0ODc2MDIxCisJLmxvbmcJNTg2OTk1OTk3CisJLmxvbmcJMTA3MTc3MDk2MAorCS5sb25nCTQxNjYyMzQ4CisJLmxvbmcJMzE2MjYyNzk5MgorCS5sb25nCTgyODk0Njg1OAorCS5sb25nCTEwNzE3NjQ2MTUKKwkubG9uZwkxMDY0MjQ5MgorCS5sb25nCTEwMTU5Mzk0MzgKKwkubG9uZwkyMjE0ODc4NDIwCisJLmxvbmcJMTA3MTc1ODMwNAorCS5sb25nCTg5MjI3MDA4NworCS5sb25nCTMxNjMxMTY0MjIKKwkubG9uZwkzOTQ5OTcyMzQxCisJLmxvbmcJMTA3MTc1MjAyNworCS5sb25nCTIwNjg0MDg1NDgKKwkubG9uZwkxMDE0OTEzODY4CisJLmxvbmcJOTQ4NzM1NDY2CisJLmxvbmcJMTA3MTc0NTc4NQorCS5sb25nCTM1MTYzMzgwMjgKKwkubG9uZwkzMTYyNTc0ODgzCisJLmxvbmcJMTAxNDg0NTgxOQorCS5sb25nCTEwNzE3Mzk1NzYKKwkubG9uZwkzMTE3OTEwNjQ2CisJLmxvbmcJMzE2MTU1OTEwNQorCS5sb25nCTMzNjYyOTMwNzMKKwkubG9uZwkxMDcxNzMzNDAwCisJLmxvbmcJMzExOTQyNjMxNAorCS5sb25nCTEwMTQxMjA1NTQKKwkubG9uZwkyOTMwMzIyOTEyCisJLmxvbmcJMTA3MTcyNzI1OAorCS5sb25nCTI1OTk0OTk0MjIKKwkubG9uZwkzMTYyNzE0MDQ3CisJLmxvbmcJMzIyODMxNjEwOAorCS5sb25nCTEwNzE3MjExNDkKKwkubG9uZwkzMDEwMjQxOTkxCisJLmxvbmcJMzE1ODQyMjgwNAorCS5sb25nCTM0OTA4NjM5NTMKKwkubG9uZwkxMDcxNzE1MDczCisJLmxvbmcJOTYwNzk3NDk4CisJLmxvbmcJMzE2Mjk0ODg4MAorCS5sb25nCTI5NTI3MTI5ODcKKwkubG9uZwkxMDcxNzA5MDMwCisJLmxvbmcJMzI5MzQ5NDY1MQorCS5sb25nCTMxNjAxMjAzMDEKKwkubG9uZwk4NTI3NDI1NjIKKwkubG9uZwkxMDcxNzAzMDIwCisJLmxvbmcJNjY3MjUzNTg2CisJLmxvbmcJMTAwOTc5MzU1OQorCS5sb25nCTcyODkwOTgxNQorCS5sb25nCTEwNzE2OTcwNDIKKwkubG9uZwkzODM5MzAyMjUKKwkubG9uZwkxMDE1MDI5NDY4CisJLmxvbmcJMTgyODI5Mjg3OQorCS5sb25nCTEwNzE2OTEwOTYKKwkubG9uZwkxMjU1OTU2NzQ3CisJLmxvbmcJMTAxNTU4ODM5OAorCS5sb25nCTM0MDIwMzYwOTkKKwkubG9uZwkxMDcxNjg1MTgyCisJLmxvbmcJNDA1ODg5MzM0CisJLmxvbmcJMTAxNTEwNTY1NgorCS5sb25nCTQxMDM2MDc3NgorCS5sb25nCTEwNzE2NzkzMDEKKwkubG9uZwkxMjY5OTkwNjU1CisJLmxvbmcJMTAxMTk3NTg3MAorCS5sb25nCTcwMjQxMjUxMAorCS5sb25nCTEwNzE2NzM0NTEKKwkubG9uZwkzODAzMjY2MDg3CisJLmxvbmcJMzE2MjI4MDQxNQorCS5sb25nCTM1NDE0MDI5OTYKKwkubG9uZwkxMDcxNjY3NjMyCisJLmxvbmcJMjc1OTE3NzMxNworCS5sb25nCTEwMTQ4NTQ2MjYKKwkubG9uZwkzODk5NTU1NzE3CisJLmxvbmcJMTA3MTY2MTg0NQorCS5sb25nCTQyNzI4MDc1MAorCS5sb25nCTMxNjI1NDY5NzIKKwkubG9uZwkxMDQ4MDE5MDQxCisJLmxvbmcJMTA3MTY1NjA5MAorCS5sb25nCTEzOTg0NzQ4NDUKKwkubG9uZwkzMTYwNTEwNTk1CisJLmxvbmcJMjg1MTgxMjE0OQorCS5sb25nCTEwNzE2NTAzNjUKKwkubG9uZwkyNTk1ODAyNTUxCisJLmxvbmcJMTAxNTc2NzMzNworCS50eXBlCVQyX25lZ19mLEBvYmplY3QKKwkuc2l6ZQlUMl9uZWdfZiwyMDQ4CisJLmFsaWduIDE2CitwdjoKKwkubG9uZwkzMjk4MDUwNjQKKwkubG9uZwkxMDM4NDg4MTM0CisJLmxvbmcJMjc3MzkyNzczMAorCS5sb25nCTEwNTMyMzY3MDcKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDY1NDIzMTIxCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjk4OTcwNDUKKwkubG9uZwkxNzQ0MTI3MjAxCisJLmxvbmcJMTA0NjE0NDU4MQorCS5sb25nCTQzNjMxNDEzNworCS5sb25nCTEwNTk3MTc1MzYKKwkudHlwZQlwdixAb2JqZWN0CisJLnNpemUJcHYsNDgKKwkuYWxpZ24gMTYKK01BU0szOgorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3MjgwCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODAKKwkudHlwZQlNQVNLMyxAb2JqZWN0CisJLnNpemUJTUFTSzMsMTYKKwkuYWxpZ24gOAorSEFMRk1BU0s6CisJLmxvbmcJNDE2MDc0OTU2OAorCS5sb25nCTIxNDc0ODM2NDcKKwkudHlwZQlIQUxGTUFTSyxAb2JqZWN0CisJLnNpemUJSEFMRk1BU0ssOAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorLy8gLS0gQmVnaW4gRFdBUkYyIFNFR01FTlQgLmVoX2ZyYW1lCisJLnNlY3Rpb24gLmVoX2ZyYW1lLCJhIixAcHJvZ2JpdHMKKy5laF9mcmFtZV9zZWc6CisJLmFsaWduIDEKKwkuNGJ5dGUgMHgwMDAwMDAxNAorCS44Ynl0ZSAweDAwNTI3YTAxMDAwMDAwMDAKKwkuOGJ5dGUgMHgwODA3MGMxYjAxMTA3ODAxCisJLjRieXRlIDB4MDAwMDAxOTAKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3NpbmguMS0uCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3NpbmguNS0uLl9fX3RhZ192YWx1ZV9zaW5oLjEKKwkuMmJ5dGUgMHgwNDAwCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3NpbmguMy0uLl9fX3RhZ192YWx1ZV9zaW5oLjEKKwkuMmJ5dGUgMHgxMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9zaW5oLjQtLi5fX190YWdfdmFsdWVfc2luaC4zCisJLjJieXRlIDB4MDgwZQorCS5ieXRlIDB4MDAKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9mbG9vci5TIGIvbGlibS94ODZfNjQvZmxvb3IuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYzgwZTg4Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvZmxvb3IuUwpAQCAtMCwwICsxLDM2IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKGZsb29yKQorcm91bmRzZCAkMHgxLCV4bW0wLCV4bW0wCityZXRxCitFTkQoZmxvb3IpCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9mbG9vcmYuUyBiL2xpYm0veDg2XzY0L2Zsb29yZi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgzMmY5YzUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Nl82NC9mbG9vcmYuUwpAQCAtMCwwICsxLDM2IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKGZsb29yZikKK3JvdW5kc3MgJDB4MSwleG1tMCwleG1tMAorcmV0cQorRU5EKGZsb29yZikKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L3NfYXRhbi5TIGIvbGlibS94ODZfNjQvc19hdGFuLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjQ1M2UxMAotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L3NfYXRhbi5TCkBAIC0wLDAgKzEsOTI3IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gVGhpcyBpbXBsZW1lbnRhdGlvbiB1c2VzIHRoZSBtYWluIHBhdGggZm9yIHx4fCBpbiBbMl57LTV9LDJeNjUpLgorLy8gRm9yIHx4fCBpbiBbMl57LTY0fSwyXnstNX0pLCBhIHNlY29uZGFyeSBwYXRoIGlzIHVzZWQuCisvLyBGb3IgdGhlIGJpYXNlZCBleHBvbmVudCBvZiBYIHdpdGhpbiAzRkZILTY0IGFuZCAzRkYrNjQsIHdlIHVzZSBvbmUgYnJhbmNoLgorLy8gV2UgdXNlIHRoZSBmb2xsb3dpbmcgZGVmaW5pdGlvbiBvZiBCIGFuZCBYYCBzbyB0aGF0IHRoZSBmb3JtdWxhCisvLyBhdGFuKFgpID0gVGF1ICsgYXRhbiggKFhgLUIpIC8gKE9uZSArIEJYKSApIGlzIGNvcnJlY3QKKy8vCisvLyBYID0gKC0xKV5zICogMl5rICogMS4geDEgeDIgLi4uIHg1MgorLy8KKy8vIERlZmluZSBYYCAgPSAwIGlmIGsgPj0gNTsgYW5kIFhgICA9IHxYfCBvdGhlcndpc2UKKy8vIERlZmluZSBPbmUgPSAwIGlmIGsgPj0gNTsgYW5kIE9uZSA9IDEgb3RoZXJ3aXNlCisvLyBEZWZpbmUgQiAgPSAwIGlmIGsgPD0gLTY7IEIgPSAgMl5rICogMS54MSB4MiB4MyB4NCAxICBpZiAtNSA8PSBrIDw9IDQKKy8vIERlZmluZSBCICA9ICAyXjUgKiAxLjAgMCAuLi4gMCAgIGlmICBrID49IDUKKy8vCisvLyBUYXUgaXMgMCBpZiBrIDw9IC02OworLy8gVGF1IGlzIGF0YW4oIEIgKSAgaWYgLTUgPD0gayA8PSA0CisvLyBUYXUgaXMgcGkvMiBpZiBrID49IDUKKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIGF0YW4oTmFOKSA9IHF1aWV0IE5hTgorLy8gIGF0YW4oKy8tSU5GKSA9ICsvLVBpLzIKKy8vICBhdGFuKCsvLTApID0gKy8tMAorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIGF0YW4KK0VOVFJZKGF0YW4pCisjIHBhcmFtZXRlciAxOiAleG1tMAorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfYXRhbi4xOgorICAgICAgICBwdXNocSAgICAgJXJzaQorLi5fX190YWdfdmFsdWVfYXRhbi4zOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsICglcnNwKQorLi5CMS4yOgorICAgICAgICBtb3ZxICAgICAgJDB4ZmZmZjAwMDAwMDAwMDAwMCwgJXI4CisgICAgICAgIG1vdmQgICAgICAlcjgsICV4bW0zCisgICAgICAgIG1vdnEgICAgICBPTkVNQVNLKCVyaXApLCAleG1tNQorICAgICAgICBtb3ZxICAgICAgJDB4ODAwMDAwMDAwMDAwLCAlcjkKKyAgICAgICAgbW92ZCAgICAgICVyOSwgJXhtbTQKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVkeAorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMQorICAgICAgICBvcnBkICAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG1vdmwgICAgICAlZWR4LCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlZHgKKyAgICAgICAgc3VibCAgICAgICQxNjI4OCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDE1OSwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjEKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgZGl2c2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRsICAgICAgJDEsICVlZHgKKyAgICAgICAgbW92cSAgICAgIGEyKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZxICAgICAgYjIoJXJpcCksICV4bW00CisgICAgICAgIGFuZGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW03LCAleG1tNworICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW03CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIGxlYSAgICAgICBhdGFuX3RibCglcmlwKSwgJXI4CisgICAgICAgIG1vdnEgICAgICAoJXI4LCVyZHgsOCksICV4bW02CisgICAgICAgIG1vdnEgICAgICA4KCVyOCwlcmR4LDgpLCAleG1tNQorICAgICAgICB4b3JwZCAgICAgJXhtbTcsICV4bW01CisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTYKKyAgICAgICAgbW92cSAgICAgIDgrYTIoJXJpcCksICV4bW03CisgICAgICAgIG1vdmRkdXAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZkZHVwICAgJXhtbTEsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGFkZHNkICAgICA4K2IyKCVyaXApLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMQorLkxfMlRBR19QQUNLRVRfMC4wLjE6CisgICAgICAgIGFkZGwgICAgICAkOTQ0LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMTEwMywgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjEKKyAgICAgICAgbW92cSAgICAgIGEyKCVyaXApLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgYjIoJXJpcCksICV4bW03CisgICAgICAgIG1vdnEgICAgICAoJXJzcCksICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgIDgrYTIoJXJpcCksICV4bW0yCisgICAgICAgIG1vdnEgICAgICA4K2IyKCVyaXApLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMQorLkxfMlRBR19QQUNLRVRfMi4wLjE6CisgICAgICAgIGFkZGwgICAgICAkMTUzNDQsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxNjM2OCwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjEKKyAgICAgICAgbW92cSAgICAgICglcnNwKSwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICglcnNwKSwgJXhtbTEKKyAgICAgICAgY21wbCAgICAgICQxNiwgJWVkeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjEKKy5MXzJUQUdfUEFDS0VUXzMuMC4xOgorICAgICAgICBjbXBsICAgICAgJDE3MzkyLCAlZWR4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMQorICAgICAgICBtb3ZxICAgICAgJDB4YmZmMDAwMDAwMDAwMDAwMCwgJXI4CisgICAgICAgIG1vdmQgICAgICAlcjgsICV4bW0xCisgICAgICAgIGRpdnNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgIGEyKCVyaXApLCAleG1tMgorICAgICAgICBtb3ZxICAgICAgYjIoJXJpcCksICV4bW00CisgICAgICAgIGFuZGwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgeG9ycGQgICAgICV4bW03LCAleG1tNworICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW03CisgICAgICAgIGFkZGwgICAgICAlZWR4LCAlZWR4CisgICAgICAgIG1vdnEgICAgICBwaV90YWJsZSglcmlwKSwgJXhtbTYKKyAgICAgICAgbW92cSAgICAgIDgrcGlfdGFibGUoJXJpcCksICV4bW01CisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTUKKyAgICAgICAgeG9ycGQgICAgICV4bW03LCAleG1tNgorICAgICAgICBtb3ZxICAgICAgOCthMiglcmlwKSwgJXhtbTcKKyAgICAgICAgbW92ZGR1cCAgICV4bW0xLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIG1vdmRkdXAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgIDgrYjIoJXJpcCksICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4xCisuTF8yVEFHX1BBQ0tFVF80LjAuMToKKyAgICAgICAgbW92cSAgICAgICglcnNwKSwgJXhtbTQKKyAgICAgICAgbW92cSAgICAgIFNHTk1BU0soJXJpcCksICV4bW0wCisgICAgICAgIG1vdnEgICAgICBwaV90YWJsZSglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgIDgrcGlfdGFibGUoJXJpcCksICV4bW0zCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVheAorICAgICAgICBwc3JscSAgICAgJDMyLCAleG1tMQorICAgICAgICBtb3ZkICAgICAgJXhtbTEsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQyMTQ3NDgzNjQ3LCAlZWR4CisgICAgICAgIGNtcGwgICAgICAkMjE0NjQzNTA3MiwgJWVkeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjEKKy5MXzJUQUdfUEFDS0VUXzYuMC4xOgorICAgICAgICBhbmRucGQgICAgJXhtbTQsICV4bW0wCisgICAgICAgIG9ycGQgICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgb3JwZCAgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMQorLkxfMlRBR19QQUNLRVRfNS4wLjE6CisgICAgICAgIHN1YmwgICAgICAkMjE0NjQzNTA3MiwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVkeCwgJWVheAorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4xCisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMAorLkxfMlRBR19QQUNLRVRfMS4wLjE6CisuLkIxLjM6CisgICAgICAgIHBvcHEgICAgICAlcmN4CisuLl9fX3RhZ192YWx1ZV9hdGFuLjQ6CisgICAgICAgIHJldCAgICAgICAKKy4uX19fdGFnX3ZhbHVlX2F0YW4uNToKK0VORChhdGFuKQorIyAtLSBFbmQgIGF0YW4KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gNAorCS5hbGlnbiA0CitPTkVNQVNLOgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLnR5cGUJT05FTUFTSyxAb2JqZWN0CisJLnNpemUJT05FTUFTSyw4CisJLmFsaWduIDQKK2EyOgorCS5sb25nCTIwMDYyNjI5ODUKKwkubG9uZwkxMDY5MzEwODYzCisJLmxvbmcJMjM1ODQ0OTQ3MQorCS5sb25nCTMyMTczNDIxMzEKKwkudHlwZQlhMixAb2JqZWN0CisJLnNpemUJYTIsMTYKKwkuYWxpZ24gNAorYjI6CisJLmxvbmcJMzg0NTQ1NDM1MgorCS5sb25nCTEwNjk5NTIyOTcKKwkubG9uZwkyODI5Njc5MTQ5CisJLmxvbmcJMTA3Mzc3MTU2NQorCS50eXBlCWIyLEBvYmplY3QKKwkuc2l6ZQliMiwxNgorCS5hbGlnbiA0CithdGFuX3RibDoKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzgxOTY5NTc0MgorCS5sb25nCTEwNjc0ODI3NjEKKwkubG9uZwkyMzk4NjgwMzU1CisJLmxvbmcJMzE1NTQ2MjA3NAorCS5sb25nCTI5OTg3OTEwMDkKKwkubG9uZwkxMDY3NTQ4MjI1CisJLmxvbmcJMzg2ODQ2NTI0OAorCS5sb25nCTMxNTcxODI0NzIKKwkubG9uZwkzMzM5NDI0OTkxCisJLmxvbmcJMTA2NzYxMzY4MAorCS5sb25nCTMyOTY2NzAzNjAKKwkubG9uZwkxMDEwNzUyNTQzCisJLmxvbmcJMjcxMDAwMjI1NgorCS5sb25nCTEwNjc2NzkxMjYKKwkubG9uZwkzNDAzODk2MDA3CisJLmxvbmcJMTAxMDkxMDc2OAorCS5sb25nCTMyNzU3MDE0MjgKKwkubG9uZwkxMDY3NzQ0NTYyCisJLmxvbmcJMTE5OTU5OTMzCisJLmxvbmcJMTAxMTQ4Mjg0MworCS5sb25nCTI5MDg2MzY4ODEKKwkubG9uZwkxMDY3ODA5OTg4CisJLmxvbmcJMjQ2NDQ4OTYxMgorCS5sb25nCTEwMTE1NDU1MjYKKwkubG9uZwkzNzc3ODg5Mzk4CisJLmxvbmcJMTA2Nzg3NTQwMworCS5sb25nCTMyNjI2ODIxNjUKKwkubG9uZwkxMDA5NzAzOTE5CisJLmxvbmcJMzc1OTY2NzQxOQorCS5sb25nCTEwNjc5NDA4MDcKKwkubG9uZwkxODM4MTMwODUxCisJLmxvbmcJMzE1NzM3MzU1NgorCS5sb25nCTczMjM2OTk0MAorCS5sb25nCTEwNjgwMDYyMDAKKwkubG9uZwkxMjAzNDI4MzEzCisJLmxvbmcJMTAxMDA1NTM3MQorCS5sb25nCTExNjY2MTY0NjEKKwkubG9uZwkxMDY4MDcxNTgwCisJLmxvbmcJMjkwMTI3NDA1MQorCS5sb25nCTMxNTg1NDk5NzcKKwkubG9uZwkyOTQ1NDcyODkyCisJLmxvbmcJMTA2ODEzNjk0NworCS5sb25nCTM3MjYxMjA2NTgKKwkubG9uZwkxMDA5NzYyNzE1CisJLmxvbmcJMzk1NDQ4MDk3NgorCS5sb25nCTEwNjgyMDIzMDEKKwkubG9uZwkxMjg5MTczNDU3CisJLmxvbmcJMTAwOTQyOTg2MQorCS5sb25nCTIwODE3NTI4MjkKKwkubG9uZwkxMDY4MjY3NjQyCisJLmxvbmcJMTgzNjkwOTg3NAorCS5sb25nCTEwMDYyMTIwOTUKKwkubG9uZwkzODA3OTk5Nzg4CisJLmxvbmcJMTA2ODMzMjk2OAorCS5sb25nCTIxNzI0NTk5NDAKKwkubG9uZwkzMTU2MTYyMDc4CisJLmxvbmcJMjczMTc4OTg4NAorCS5sb25nCTEwNjgzOTgyODAKKwkubG9uZwkzNDUwNzE4MzkyCisJLmxvbmcJMzE1OTIxNjU0NworCS5sb25nCTEwNDQ0Nzc5NjEKKwkubG9uZwkxMDY4NDYzNTc3CisJLmxvbmcJMjIzMDU1MzIyOQorCS5sb25nCTEwMTE0MjQzMzkKKwkubG9uZwkxNDg2OTMwMjg3CisJLmxvbmcJMTA2ODUzMDIxOAorCS5sb25nCTI4NjE1NDc0NzQKKwkubG9uZwkxMDEyMDQxMzc2CisJLmxvbmcJMjI5MzAxNjg4MQorCS5sb25nCTEwNjg1OTU0NjYKKwkubG9uZwkxMzY4NDMyNzIKKwkubG9uZwkxMDEyNjg0Nzk3CisJLmxvbmcJMjAxNTE4MTU3CisJLmxvbmcJMTA2ODY2MDY4MAorCS5sb25nCTYzMjMxOTg0CisJLmxvbmcJMTAxMjQyNzE5OAorCS5sb25nCTQwNTQyMzQ1ODQKKwkubG9uZwkxMDY4NzI1ODU2CisJLmxvbmcJMzkyNzAwNjk2MAorCS5sb25nCTEwMTE4Nzg5NTUKKwkubG9uZwkxMjQ2NDc3MjEzCisJLmxvbmcJMTA2ODc5MDk5NQorCS5sb25nCTE0OTQyNjU2NTIKKwkubG9uZwkzMTU1MjE5MzUwCisJLmxvbmcJNjc4MTg2Njk5CisJLmxvbmcJMTA2ODg1NjA5MworCS5sb25nCTEyNjQzNjE0MjQKKwkubG9uZwkzMTU5MjU2NjkzCisJLmxvbmcJMjY5MDU5NDk5NQorCS5sb25nCTEwNjg5MjExNDgKKwkubG9uZwkzOTA2OTk2Mzc5CisJLmxvbmcJMTAwOTI4ODI2NworCS5sb25nCTMzNjI2MTE1MTcKKwkubG9uZwkxMDY4OTg2MTU5CisJLmxvbmcJMTY1MDk3MDA0MQorCS5sb25nCTMxNTgzMzE3NzEKKwkubG9uZwkzMTAyMTYyMTExCisJLmxvbmcJMTA2OTA1MTEyNAorCS5sb25nCTM2NTkxNzAzNQorCS5sb25nCTMxNjAyNjQxNTMKKwkubG9uZwkyMzUyNjExMDY3CisJLmxvbmcJMTA2OTExNjA0MQorCS5sb25nCTQwMDg5NzAxOTAKKwkubG9uZwkzMTU5NDc4MTgyCisJLmxvbmcJMTU5NDEzNDc5NAorCS5sb25nCTEwNjkxODA5MDgKKwkubG9uZwk0NjY2OTAxNzgKKwkubG9uZwkxMDEyNTI2NTAxCisJLmxvbmcJMTM0NTA3OTMwNgorCS5sb25nCTEwNjkyNDU3MjMKKwkubG9uZwkyMjY4MjczNTY4CisJLmxvbmcJMzE2MDE2NDA5MgorCS5sb25nCTIxNjMzMDA5NzAKKwkubG9uZwkxMDY5MzEwNDg0CisJLmxvbmcJMjc1MDgzNDgwMAorCS5sb25nCTMxNTgxMTM0ODIKKwkubG9uZwkzNTI1MjI3MTYKKwkubG9uZwkxMDY5Mzc1MTkwCisJLmxvbmcJMTc1MDQxMTM3MgorCS5sb25nCTEwMTE3OTA4NDUKKwkubG9uZwk4NDg1NDE2NDcKKwkubG9uZwkxMDY5NDM5ODM4CisJLmxvbmcJMjE2NDIwNzU3MworCS5sb25nCTEwMTE2OTgzNTAKKwkubG9uZwk0MDY0NzMxMgorCS5sb25nCTEwNjk1MDQ0MjcKKwkubG9uZwkyOTQ5MTY1NDM0CisJLmxvbmcJMzE1OTEwNzI2NworCS5sb25nCTIyMTY3NjYyNzAKKwkubG9uZwkxMDY5NTc0MzU3CisJLmxvbmcJMjE5NzkyMDc2NQorCS5sb25nCTMxNjEwNTU5NTQKKwkubG9uZwkxMDkwOTE0Mzg0CisJLmxvbmcJMTA2OTYzODc1NworCS5sb25nCTIzMzA0NTQ2NzQKKwkubG9uZwkxMDEzMzY1OTk4CisJLmxvbmcJMzg3NjAxMjQ0CisJLmxvbmcJMTA2OTcwMzAyMgorCS5sb25nCTMxODU2ODExNjgKKwkubG9uZwkxMDEzNDM0MDcxCisJLmxvbmcJMzk5MTY0MDQ4NAorCS5sb25nCTEwNjk3NjcxNDQKKwkubG9uZwkxMzEzMjExNTkwCisJLmxvbmcJMzE2MTA4Nzk1OQorCS5sb25nCTMzMjI0ODk1MDIKKwkubG9uZwkxMDY5ODMxMTE4CisJLmxvbmcJMzAxMzk3Nzk5NQorCS5sb25nCTEwMTMwNTMwMTEKKwkubG9uZwkzMTIxNjk4NTcwCisJLmxvbmcJMTA2OTg5NDkzNgorCS5sb25nCTQwNjkwMTU2NjcKKwkubG9uZwkxMDEzMDIzMzYyCisJLmxvbmcJNDI4OTk2NDY2MAorCS5sb25nCTEwNjk5NTg1OTEKKwkubG9uZwkxNzM2MTkxMTU2CisJLmxvbmcJMzE1ODI2NjczMQorCS5sb25nCTM5MDMzMTIzODYKKwkubG9uZwkxMDcwMDIyMDc3CisJLmxvbmcJMTgzMzU5MjQxMworCS5sb25nCTMxNTk3MzE0NzEKKwkubG9uZwkzODE4NDQ5ODY0CisJLmxvbmcJMTA3MDA4NTM4NworCS5sb25nCTg1MTAzNjQyOQorCS5sb25nCTMxNTk3MzA0NTEKKwkubG9uZwkyMDk3NDgwMzA2CisJLmxvbmcJMTA3MDE0ODUxNQorCS5sb25nCTM1MDYzOTA4ODQKKwkubG9uZwkzMTYwNDYyMzAyCisJLmxvbmcJMTYxMTY5NDUwMgorCS5sb25nCTEwNzAyMTE0NTQKKwkubG9uZwkyNzg1NzM1NTQwCisJLmxvbmcJMzE2MDQ2NTE0NAorCS5sb25nCTE0NjQ2OTQ3OTYKKwkubG9uZwkxMDcwMjc0MTk4CisJLmxvbmcJNDIyOTI3NzI5OQorCS5sb25nCTMxNTk5MDcwMDAKKwkubG9uZwkxMjk5NjEyNzc1CisJLmxvbmcJMTA3MDMzNjc0MQorCS5sb25nCTQxMTY2NTM3ODgKKwkubG9uZwkzMTYwNDI3NzM5CisJLmxvbmcJMTMxMDU0NDc4OQorCS5sb25nCTEwNzAzOTkwNzcKKwkubG9uZwkxMDY0NDMwMzMxCisJLmxvbmcJMTAxMzIxODIwMgorCS5sb25nCTIyNTMxNjgwMzAKKwkubG9uZwkxMDcwNDYxMjAwCisJLmxvbmcJMTQwNTA0NDYwOQorCS5sb25nCTMxNTc2MjMxNzkKKwkubG9uZwkxMTU5NTY3MzczCisJLmxvbmcJMTA3MDUyMzEwNQorCS5sb25nCTIzNTM0NDU1MjEKKwkubG9uZwkzMTU5OTkyMTc2CisJLmxvbmcJMTM1OTM3Mzc1MAorCS5sb25nCTEwNzA2MDU4MTgKKwkubG9uZwkxNzQ4MTcxMzM2CisJLmxvbmcJMzE2MTg3OTI2MworCS5sb25nCTkwODM0MTcwNgorCS5sb25nCTEwNzA2NjcwMzQKKwkubG9uZwkzMzcyNzEwODE1CisJLmxvbmcJMzE2MTc3NTI0NQorCS5sb25nCTE3NDMwMjczNTAKKwkubG9uZwkxMDcwNzI3NzY1CisJLmxvbmcJNjg3MDg5OTM0CisJLmxvbmcJMzE2MDUwNzE3MQorCS5sb25nCTIwNTUzNTU2NDYKKwkubG9uZwkxMDcwNzg3OTkyCisJLmxvbmcJMjM5Mjg1NTI0MgorCS5sb25nCTEwMTM2ODI0NjkKKwkubG9uZwk2OTA0MjYxNjQKKwkubG9uZwkxMDcwODQ3Njk3CisJLmxvbmcJMTEwMzkyNjY2NgorCS5sb25nCTEwMTQwNTI4MTAKKwkubG9uZwkxNDgzMjQ3ODQ3CisJLmxvbmcJMTA3MDkwNjg2MgorCS5sb25nCTIwODI2NDU4NDcKKwkubG9uZwkzMTYxMzQ1NDc5CisJLmxvbmcJMzkyMDQwMjcwCisJLmxvbmcJMTA3MDk2NTQ3MgorCS5sb25nCTI0MDc3MjAwMjMKKwkubG9uZwkxMDE0MDUzNzU0CisJLmxvbmcJMjY3Mzg0NjAxNAorCS5sb25nCTEwNzEwMjM1MTEKKwkubG9uZwkxMjkzNjA1NTMyCisJLmxvbmcJMzE1ODQ2NDM4NQorCS5sb25nCTEzODQyMTU4MTAKKwkubG9uZwkxMDcxMDgwOTY3CisJLmxvbmcJMjQ0NjA5NTg3MgorCS5sb25nCTMxNTkyMTY0MDcKKwkubG9uZwkzMTAxNjYwNjMxCisJLmxvbmcJMTA3MTEzNzgyNgorCS5sb25nCTY5ODA0MDc1OAorCS5sb25nCTEwMTQ4NTUzMjgKKwkubG9uZwkyMDk0MDU3MDU4CisJLmxvbmcJMTA3MTE5NDA3OAorCS5sb25nCTIyODIwNDgzMzkKKwkubG9uZwkxMDE0MDQwMzg1CisJLmxvbmcJMTcxMjc1MDU5NAorCS5sb25nCTEwNzEyNDk3MTIKKwkubG9uZwkxMjA0MzcyMzc4CisJLmxvbmcJMzE2MjI3NjQ2NAorCS5sb25nCTE0MTE1MTU3ODcKKwkubG9uZwkxMDcxMzA0NzE5CisJLmxvbmcJOTQ5MDgwODA4CisJLmxvbmcJMTAxNTAwNjQwMworCS5sb25nCTkzMTUzODA4NQorCS5sb25nCTEwNzEzNTkwOTEKKwkubG9uZwkzMDI3MTI3MDM5CisJLmxvbmcJMTAxNDMwNzIzMworCS5sb25nCTE3OTEzOTA2NQorCS5sb25nCTEwNzE0MTI4MjEKKwkubG9uZwk0Mjg1NTQ3NDkyCisJLmxvbmcJMzE2MTkzNDczMQorCS5sb25nCTMzODc3MjEyNTkKKwkubG9uZwkxMDcxNDY1OTAyCisJLmxvbmcJMzczMjI1NzczCisJLmxvbmcJMTAxMzQ4NjYyNQorCS5sb25nCTIxMzIyMzY4NTIKKwkubG9uZwkxMDcxNTQ0Mjk5CisJLmxvbmcJMzI1MDUzMzQyOQorCS5sb25nCTEwMTQwMzE2NzcKKwkubG9uZwkxOTQyMDcwMjg0CisJLmxvbmcJMTA3MTY0NTU5NgorCS5sb25nCTEyMzc5NjQxNzkKKwkubG9uZwkzMTYzMjM5MTEzCisJLmxvbmcJMTUzMjcwNzgwMgorCS5sb25nCTEwNzE2OTUzODAKKwkubG9uZwkzMzA2NDU1ODMKKwkubG9uZwkxMDEyNDk1NjEwCisJLmxvbmcJMjI5NDE4NDk3OQorCS5sb25nCTEwNzE3NDM4MzQKKwkubG9uZwkzOTU5NDcyODk3CisJLmxvbmcJMTAxNTgzMzExNgorCS5sb25nCTM4MDUwNjA3MTQKKwkubG9uZwkxMDcxNzkwOTYxCisJLmxvbmcJMjY3MTI1NjE0MgorCS5sb25nCTEwMTM3Mjc3NzIKKwkubG9uZwkyMjE1MDM3ODk4CisJLmxvbmcJMTA3MTgzNjc3MAorCS5sb25nCTI2ODMzNTkxMTcKKwkubG9uZwkxMDE1ODMxOTAyCisJLmxvbmcJNDgzNjYxNTk0CisJLmxvbmcJMTA3MTg4MTI3MworCS5sb25nCTgzNjI4ODMyNgorCS5sb25nCTMxNjI2NDg2NDMKKwkubG9uZwkxNTM0Njc5ODk0CisJLmxvbmcJMTA3MTkyNDQ4NgorCS5sb25nCTM3MzI1ODY5NgorCS5sb25nCTMxNjI0NzAwOTYKKwkubG9uZwkxNTM4NzE0NjI4CisJLmxvbmcJMTA3MTk2NjQzMAorCS5sb25nCTMxOTk0MzMwNjgKKwkubG9uZwkxMDE1MzI1NTAxCisJLmxvbmcJNTI3NjQyNTU1CisJLmxvbmcJMTA3MjAwNzEyOAorCS5sb25nCTM2MzY4MzI1OTIKKwkubG9uZwkzMTYxODQzMTQ1CisJLmxvbmcJMjkxMzM5MTUwCisJLmxvbmcJMTA3MjA0NjYwNQorCS5sb25nCTg5MDE2OTUzNworCS5sb25nCTMxNjA1ODYxMTcKKwkubG9uZwkyNDUwMjEwMjAxCisJLmxvbmcJMTA3MjA4NDg4OAorCS5sb25nCTE2MzYzNTMyOTQKKwkubG9uZwkzMTYzMTkzNDAwCisJLmxvbmcJMjQxMTM2Nzk1MQorCS5sb25nCTEwNzIxMjIwMDcKKwkubG9uZwkzNzQ4OTk4NzMKKwkubG9uZwkxMDExMzMxNzUwCisJLmxvbmcJNjgxNTQ5OTcxCisJLmxvbmcJMTA3MjE1Nzk5MgorCS5sb25nCTUwNjQxMTY4OQorCS5sb25nCTEwMTUzNzM5NTQKKwkubG9uZwkxNDY2NzQ1NTQxCisJLmxvbmcJMTA3MjE5Mjg3MworCS5sb25nCTIxNDM4NjA5MzEKKwkubG9uZwkxMDEzMzY0MzM0CisJLmxvbmcJMjg0NTYyMjM2NgorCS5sb25nCTEwNzIyMjY2ODIKKwkubG9uZwkyODY5MTc4MjA5CisJLmxvbmcJMzE2MjQyMzY4MgorCS5sb25nCTI4Mzg4NzE0MzgKKwkubG9uZwkxMDcyMjc1NDU2CisJLmxvbmcJMzc0MjIyMzU5OQorCS5sb25nCTEwMTQzMzg1NzcKKwkubG9uZwk0MjAwMjc1Mjc0CisJLmxvbmcJMTA3MjMzNzAzNAorCS5sb25nCTE1NjY1Mzk5MTUKKwkubG9uZwkzMTYxODM5NTUwCisJLmxvbmcJMzAzNDczMzUzMAorCS5sb25nCTEwNzIzOTQ4OTcKKwkubG9uZwk2NTI2MjE0MDgKKwkubG9uZwkzMTYyMjYxOTY0CisJLmxvbmcJMzIwNzQxMjk5MworCS5sb25nCTEwNzI0NDkyOTAKKwkubG9uZwkzMjA2MTI0NjY1CisJLmxvbmcJMTAxNDQwODczMworCS5sb25nCTYyNDQ2MTQ3OAorCS5sb25nCTEwNzI1MDA0NTAKKwkubG9uZwk5MzI0Mzc0ODUKKwkubG9uZwkxMDE1MjA0MzQzCisJLmxvbmcJNzY3NjY1OTA4CisJLmxvbmcJMTA3MjU0ODYwMAorCS5sb25nCTEwMzc5MTE5NTIKKwkubG9uZwkzMTYzNTI3NjI3CisJLmxvbmcJMTExMDc3MzYzOQorCS5sb25nCTEwNzI1OTM5NTIKKwkubG9uZwkyMzcxNTE3OTEyCisJLmxvbmcJMzE2MDQ2NTc0MQorCS5sb25nCTE5NDA4Mjg1MzAKKwkubG9uZwkxMDcyNjM2NzA0CisJLmxvbmcJMjczMTQwODQyOAorCS5sb25nCTMxNjI4OTU3OTUKKwkubG9uZwkxOTExMzI5Mzg4CisJLmxvbmcJMTA3MjY3NzA0MQorCS5sb25nCTE3NzMwODk2MTUKKwkubG9uZwkzMTU5NTY5MjY3CisJLmxvbmcJMTc2NDcxNTc4OAorCS5sb25nCTEwNzI3MDQxOTEKKwkubG9uZwk2OTEzNDY5NDkKKwkubG9uZwkzMTY0MDY5OTQ2CisJLmxvbmcJMzMzMjk3OTIzMworCS5sb25nCTEwNzI3MjIxOTUKKwkubG9uZwkzNTUwNzMzOTgzCisJLmxvbmcJMTAxNDc3MDYyOAorCS5sb25nCTEzMjE4NzAyNTQKKwkubG9uZwkxMDcyNzM5MjMxCisJLmxvbmcJMTQxNTMxNTgyMAorCS5sb25nCTEwMTYyMjQwNTIKKwkubG9uZwkzNjU3NDI5MDMwCisJLmxvbmcJMTA3Mjc1NTM2NQorCS5sb25nCTM5MTA1MzkwMzMKKwkubG9uZwkxMDE1OTY2NDAyCisJLmxvbmcJNDE5NzYyNDU1NworCS5sb25nCTEwNzI3NzA2NjEKKwkubG9uZwkyMzMzMzk5MjU0CisJLmxvbmcJMzE2NDU0NjQ4MAorCS5sb25nCTE1MTIwNTk0OTMKKwkubG9uZwkxMDcyNzg1MTc3CisJLmxvbmcJMjcwMTUxMDMxOAorCS5sb25nCTEwMTYxNzgwOTIKKwkubG9uZwk0NTMzNzkwMzcKKwkubG9uZwkxMDcyNzk4OTY1CisJLmxvbmcJNDA0NjM0NDI1MworCS5sb25nCTMxNjI4MTQzNjQKKwkubG9uZwkxOTQyMzQ1MTYyCisJLmxvbmcJMTA3MjgxODM4OAorCS5sb25nCTYyMTEzNDE0NworCS5sb25nCTEwMTYzMzUxOTUKKwkubG9uZwk0MjEwMTc2MjczCisJLmxvbmcJMTA3Mjg0MjE2NAorCS5sb25nCTI3MDEwMTMzODcKKwkubG9uZwkzMTY0MzI2NjE5CisJLmxvbmcJNDE4NTY0NDAxMAorCS5sb25nCTEwNzI4NjM3OTUKKwkubG9uZwk0MTYzNjk5MzQxCisJLmxvbmcJMTAxNjIwMzExMgorCS5sb25nCTY3OTY4ODc4OAorCS5sb25nCTEwNzI4ODM1NDMKKwkubG9uZwk0MTQ3Mjc2NzYyCisJLmxvbmcJMTAxNDA2Njc1MAorCS5sb25nCTI5NDMyODY1CisJLmxvbmcJMTA3MjkwMTYzMAorCS5sb25nCTk3MDQxNTc5NworCS5sb25nCTEwMTY5MDIwNjMKKwkubG9uZwk0MDcwNzIxMDkyCisJLmxvbmcJMTA3MjkxODI0NworCS5sb25nCTI1MzkwMDQ0MTEKKwkubG9uZwkzMTYzNzM2MDk2CisJLmxvbmcJMjI1MjQ2ODg0MworCS5sb25nCTEwNzI5MzM1NjEKKwkubG9uZwkzNDI0MDgyODg3CisJLmxvbmcJMzE2MzQwNzE3NworCS5sb25nCTI5Mjk3MjQ4MjUKKwkubG9uZwkxMDcyOTQ3NzEyCisJLmxvbmcJMzY2MTQ4MjIzNQorCS5sb25nCTMxNjM4NDY5ODkKKwkubG9uZwkxMzc3NTEzMzY4CisJLmxvbmcJMTA3Mjk2MDgyNAorCS5sb25nCTM5ODc5MjY2ODAKKwkubG9uZwkxMDEzNjQ3OTA4CisJLmxvbmcJMTAzMTYzMjkwOAorCS5sb25nCTEwNzI5NzMwMDMKKwkubG9uZwkzNjcyMjE3MTUxCisJLmxvbmcJMTAxNjYxNDYxOQorCS5sb25nCTI1MTY1MDgxMzAKKwkubG9uZwkxMDcyOTg0MzQyCisJLmxvbmcJNTQ1ODU1MDIwCisJLmxvbmcJMzE2MjcyODkzMAorCS5sb25nCTM3OTI0NTIxNzgKKwkubG9uZwkxMDcyOTk0OTIzCisJLmxvbmcJMzQyMDExOTQ2NworCS5sb25nCTEwMTY0NzE0MzAKKwkubG9uZwkzMTQ3NzkxNDU5CisJLmxvbmcJMTA3MzAwNDgxOAorCS5sb25nCTEzNDIyMDQ5NzkKKwkubG9uZwkxMDEzOTM3MjU0CisJLmxvbmcJOTk5MTg5NzUyCisJLmxvbmcJMTA3MzAxNDA5MAorCS5sb25nCTEwMDYzMzU0NzIKKwkubG9uZwkzMTYyODUwOTE5CisJLmxvbmcJNzExMDExMDExCisJLmxvbmcJMTA3MzAyMjc5NAorCS5sb25nCTQ2MzM0ODgKKwkubG9uZwkzMTYyOTY2ODk1CisJLmxvbmcJMTU2NDAzNjMKKwkubG9uZwkxMDczMDMwOTgwCisJLmxvbmcJMTY4NjM4OTU2MAorCS5sb25nCTMxNjQzNzYyMjYKKwkubG9uZwkxMjE4NDYzNTg5CisJLmxvbmcJMTA3MzA0MjM4MgorCS5sb25nCTE1MjY4MzcxMTAKKwkubG9uZwkzMTYzNTMzOTg1CisJLmxvbmcJMjUzODQ3MDU1NQorCS5sb25nCTEwNzMwNTYxNDQKKwkubG9uZwkyMjczMzA0NDA2CisJLmxvbmcJMzE2Mzc4NDk5NgorCS5sb25nCTEyMjk3MjA5NDcKKwkubG9uZwkxMDczMDY4NDg5CisJLmxvbmcJMjk3MTYyODIwNgorCS5sb25nCTMxNjIzNTY1NDAKKwkubG9uZwkzMTE1NDI3MDE2CisJLmxvbmcJMTA3MzA3OTYyMQorCS5sb25nCTQyMTUxMzI5NTcKKwkubG9uZwkzMTY0MjgyNzYyCisJLmxvbmcJNDAzMDYxMjU1NworCS5sb25nCTEwNzMwODk3MDkKKwkubG9uZwkxOTEzMjUxNjkxCisJLmxvbmcJMzE2MzY3MTI5MgorCS5sb25nCTI3Mjg1MjEyNTcKKwkubG9uZwkxMDczMDk4ODkyCisJLmxvbmcJMjg2MTA4OTUwMAorCS5sb25nCTEwMTU0NTQ0NTkKKwkubG9uZwkxMTE4Njk2MjgzCisJLmxvbmcJMTA3MzEwNzI4NQorCS5sb25nCTE2Mjg5NDgwNTMKKwkubG9uZwkxMDE2MTc5NjU4CisJLmxvbmcJMjY4MjcxMTI1NQorCS5sb25nCTEwNzMxMTQ5ODQKKwkubG9uZwkyOTA2MzA2MjY2CisJLmxvbmcJMTAxNDE0MjY0MworCS5sb25nCTIwNzM4OTgwODEKKwkubG9uZwkxMDczMTIyMDcyCisJLmxvbmcJMTMyMjc0MDQ1NAorCS5sb25nCTMxNjQ0OTcyMTcKKwkubG9uZwkxNDAzNzAwMjk3CisJLmxvbmcJMTA3MzEyODYxOAorCS5sb25nCTQxNjEzNzg5NQorCS5sb25nCTMxNjI3ODE0NjYKKwkubG9uZwkyNTAyNjg1NjE3CisJLmxvbmcJMTA3MzEzNDY4MQorCS5sb25nCTMyNDIwMDg3MzIKKwkubG9uZwkxMDE0NTkzNDk1CisJLmxvbmcJMTUzMTkyNjg1MQorCS5sb25nCTEwNzMxNDAzMTMKKwkubG9uZwkxMzYyNzA4MDk0CisJLmxvbmcJMTAxNjUxNzYwNAorCS5sb25nCTM1NzI4MTQ0MTEKKwkubG9uZwkxMDczMTQ1NTU3CisJLmxvbmcJMzcwOTc5MDUyNworCS5sb25nCTEwMTI2NDY4NzQKKwkubG9uZwkxNjk1NTM2MTExCisJLmxvbmcJMTA3MzE1MDQ1MworCS5sb25nCTM5ODAzNDYzNDAKKwkubG9uZwkxMDE2NzA1MTM2CisJLmxvbmcJMjM2MzA1NzIwMworCS5sb25nCTEwNzMxNTUwMzMKKwkubG9uZwkyNTUxMTk0NzkyCisJLmxvbmcJMTAxMjU2OTY5NQorCS5sb25nCTI4NzMzNjU2ODIKKwkubG9uZwkxMDczMTU5MzI3CisJLmxvbmcJMzE4MTE1NDc0OAorCS5sb25nCTEwMTcwNDE0NTAKKwkubG9uZwkxMDUzMzg0NjkxCisJLmxvbmcJMTA3MzE2NTI4OAorCS5sb25nCTMwNzQ1MzY4NzkKKwkubG9uZwkxMDE2OTY1NjYwCisJLmxvbmcJMzI3MDU0MjcxMgorCS5sb25nCTEwNzMxNzI0NTEKKwkubG9uZwkyNTM1MzE5NDE1CisJLmxvbmcJMzE2MzA1MTc3OAorCS5sb25nCTEzNTM2MzE0ODQKKwkubG9uZwkxMDczMTc4ODUwCisJLmxvbmcJMTE3MzgzMzc1NQorCS5sb25nCTEwMTU1MzQ1MzcKKwkubG9uZwkzNTExMjE4NDYwCisJLmxvbmcJMTA3MzE4NDU5OQorCS5sb25nCTEyNDM2MDgxMDkKKwkubG9uZwkzMTYxNTkyMTIyCisJLmxvbmcJNDEyMTI1OTI4NAorCS5sb25nCTEwNzMxODk3OTMKKwkubG9uZwkzOTg1ODQ5MTIKKwkubG9uZwkzMTYzODI5OTIzCisJLmxvbmcJMTE5Mzg2MjEwNgorCS5sb25nCTEwNzMxOTQ1MDkKKwkubG9uZwkxODczNzQ1NTM5CisJLmxvbmcJMzE2MzgwMjgxOQorCS5sb25nCTM4NjE5NDk3OTAKKwkubG9uZwkxMDczMTk4ODA4CisJLmxvbmcJMzg0MTI2MTE0NworCS5sb25nCTEwMTU1ODcyNDgKKwkubG9uZwkxNDg2OTA0NTc4CisJLmxvbmcJMTA3MzIwMjc0NQorCS5sb25nCTE2MzQ3MjY3NzYKKwkubG9uZwkzMTYzODQ3ODg2CisJLmxvbmcJMjg3OTE1MzcxNQorCS5sb25nCTEwNzMyMDYzNjIKKwkubG9uZwkyMDA0NTYyNDIKKwkubG9uZwkzMTY0MTM4NjU3CisJLmxvbmcJMzg1MzUzMjUzCisJLmxvbmcJMTA3MzIwOTY5OAorCS5sb25nCTExODYzNTU1MTcKKwkubG9uZwkxMDE0ODg3MTU1CisJLmxvbmcJMTEyNTg2NTgzOQorCS5sb25nCTEwNzMyMTI3ODMKKwkubG9uZwkyMDM1NjEyNjIKKwkubG9uZwkzMTYxMjQ0OTI3CisJLmxvbmcJMTIyMTM2MTQ3NQorCS5sb25nCTEwNzMyMTU2NDUKKwkubG9uZwkzMzgyNDc2NTYzCisJLmxvbmcJMTAxNDkzNjEzOAorCS5sb25nCTIwNzczMjM1NzMKKwkubG9uZwkxMDczMjE4MzA3CisJLmxvbmcJMTAwNTEyMTAwNQorCS5sb25nCTMxNjQ0MzA3NTIKKwkubG9uZwkyMTU2MTEzNzMKKwkubG9uZwkxMDczMjIwNzkwCisJLmxvbmcJMzUzMTk4NzY0CisJLmxvbmcJMzE2NDQ4NTEzNworCS5sb25nCTIzNDc0MTkyNjUKKwkubG9uZwkxMDczMjIzMTEwCisJLmxvbmcJMTEwMzE0MzM2MAorCS5sb25nCTEwMTY1NDIxMzcKKwkubG9uZwkxMzc5MTEyNzY1CisJLmxvbmcJMTA3MzIyNTI4NAorCS5sb25nCTM4MTU4MzUzMworCS5sb25nCTMxNjI4NzA4MzMKKwkubG9uZwkzODkxMTk4NDYzCisJLmxvbmcJMTA3MzIyODI5OAorCS5sb25nCTE3NzEyNzU3NTQKKwkubG9uZwkxMDE0NjU0NjgxCisJLmxvbmcJMzM5NTkxNDA1MQorCS5sb25nCTEwNzMyMzE5MTcKKwkubG9uZwkyMzUwOTAwOTE0CisJLmxvbmcJMzE2NDAxMzk3OAorCS5sb25nCTI3OTk5MTk0NzgKKwkubG9uZwkxMDczMjM1MTQ2CisJLmxvbmcJMjg5Mzk1MDE2NAorCS5sb25nCTMxNjMyNjA5MDEKKwkubG9uZwkxMTM4NjczNDc2CisJLmxvbmcJMTA3MzIzODA0NQorCS5sb25nCTI2MjIyMDQ3ODUKKwkubG9uZwkzMTY0MTc0Mzg4CisJLmxvbmcJMzQwODg1NTk0MAorCS5sb25nCTEwNzMyNDA2NjEKKwkubG9uZwkyODAwODgxNjUwCisJLmxvbmcJMTAxNjAwODYyNAorCS5sb25nCTIwNDQ4NTg3MzgKKwkubG9uZwkxMDczMjQzMDM1CisJLmxvbmcJNjA0NTQ0Nzg1CisJLmxvbmcJMTAxNzAyMjkwMQorCS5sb25nCTI1Nzg3OTUxNzYKKwkubG9uZwkxMDczMjQ1MTk4CisJLmxvbmcJMjU1NzMzMjkyNQorCS5sb25nCTEwMTYxMzUxNjUKKwkubG9uZwk0MTk2Mjg1MzE0CisJLmxvbmcJMTA3MzI0NzE3NworCS5sb25nCTIwMzIzNjUzMDcKKwkubG9uZwkxMDE2MTk0NzM1CisJLmxvbmcJMjI0ODc3NzQ3CisJLmxvbmcJMTA3MzI0ODk5NgorCS5sb25nCTQ5NzkyNjkxNgorCS5sb25nCTEwMTY5NDcxMTEKKwkubG9uZwkzMjcxMzg2NDkwCisJLmxvbmcJMTA3MzI1MDY3MQorCS5sb25nCTI2ODk5OTQ4NDYKKwkubG9uZwkxMDE2NjMxNTEzCisJLmxvbmcJODEzNjM1OTg5CisJLmxvbmcJMTA3MzI1MjIyMQorCS5sb25nCTc0NzAzNTI3NworCS5sb25nCTMxNjQ1MzAxMzYKKwkubG9uZwkzNjk4Mjk1MTkKKwkubG9uZwkxMDczMjUzNjU4CisJLmxvbmcJMjE4MjAzMzg1OAorCS5sb25nCTMxNjMxOTAzNDAKKwkubG9uZwkxMTg3Njc5MDUyCisJLmxvbmcJMTA3MzI1NDk5NAorCS5sb25nCTY3Mzk1NDQ0MworCS5sb25nCTEwMTYxNDk4MjEKKwkubG9uZwk0MjMyNTg2MDk4CisJLmxvbmcJMTA3MzI1NjIzOQorCS5sb25nCTQ5Nzc3NTIwMAorCS5sb25nCTMxNjIxNzkwMTUKKwkubG9uZwk0MjY2OTA1NTgKKwkubG9uZwkxMDczMjU3NDA0CisJLmxvbmcJMzA2MzM0MzI0NworCS5sb25nCTEwMTY4NjU1NzgKKwkubG9uZwkxNjI0MDY1OTAyCisJLmxvbmcJMTA3MzI1ODQ5NAorCS5sb25nCTEzNTQyMjQ5OTYKKwkubG9uZwkzMTYzNTAzNzc4CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzMyOTE3NzEKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE2MTc4MjE0CisJLnR5cGUJYXRhbl90YmwsQG9iamVjdAorCS5zaXplCWF0YW5fdGJsLDI1OTIKKwkuYWxpZ24gNAorcGlfdGFibGU6CisJLmxvbmcJMTQxMzc1NDEzNgorCS5sb25nCTEwNzMyOTE3NzEKKwkubG9uZwk4NTY5NzIyOTUKKwkubG9uZwkxMDE2MTc4MjE0CisJLnR5cGUJcGlfdGFibGUsQG9iamVjdAorCS5zaXplCXBpX3RhYmxlLDE2CisJLmFsaWduIDQKK1NHTk1BU0s6CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTIxNDc0ODM2NDcKKwkudHlwZQlTR05NQVNLLEBvYmplY3QKKwkuc2l6ZQlTR05NQVNLLDgKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKy8vIC0tIEJlZ2luIERXQVJGMiBTRUdNRU5UIC5laF9mcmFtZQorCS5zZWN0aW9uIC5laF9mcmFtZSwiYSIsQHByb2diaXRzCisuZWhfZnJhbWVfc2VnOgorCS5hbGlnbiAxCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuOGJ5dGUgMHgwMDUyN2EwMTAwMDAwMDAwCisJLjhieXRlIDB4MDgwNzBjMWIwMTEwNzgwMQorCS40Ynl0ZSAweDAwMDAwMTkwCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hdGFuLjEtLgorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hdGFuLjUtLi5fX190YWdfdmFsdWVfYXRhbi4xCisJLjJieXRlIDB4MDQwMAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9hdGFuLjMtLi5fX190YWdfdmFsdWVfYXRhbi4xCisJLjJieXRlIDB4MTAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfYXRhbi40LS4uX19fdGFnX3ZhbHVlX2F0YW4uMworCS4yYnl0ZSAweDA4MGUKKwkuYnl0ZSAweDAwCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvc19jYnJ0LlMgYi9saWJtL3g4Nl82NC9zX2NicnQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YWE0MzczCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvc19jYnJ0LlMKQEAgLTAsMCArMSw3NTQgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgIEFzc3VtZSB4PTJeezMqaytqfSAqIDEuYjEgYjIgLi4uIGI1IGI2IC4uLiBiNTIsIHdoZXJlIGogPSAwLDEsMi4KKy8vICAgTGV0IHI9KHgqMl57LTNrLWp9IC0gMS5iMSBiMiAuLi4gYjUgMSkqIHJjcFtiMSBiMiAuLmI1XSwKKy8vICAgd2hlcmUgcmNwW2IxIGIyIC4uIGI1XT0xLygxLmIxIGIyIGIzIGI0IGI1IDEpIGluIGRvdWJsZSBwcmVjaXNpb24KKy8vICAgY2JydCgyXmogKiAxLiBiMSBiMiAuLiBiNSAxKSBpcyBhcHByb3hpbWF0ZWQgYXMgVFtqXVtiMS4uYjVdK0Rbal1bYjEuLmI1XQorLy8gICAoVCBzdG9yZXMgdGhlIGhpZ2ggNTMgYml0cywgRCBzdG9yZXMgdGhlIGxvdyBvcmRlciBiaXRzKQorLy8gICBSZXN1bHQ9Ml5rKlQrKDJeaypUKnIpKlArMl5rKkQKKy8vICAgd2hlcmUgUD1wMStwMipyKy4uK3A4KnJeNworLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgY2JydChOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBjYnJ0KElORikgPSB0aGF0IElORgorLy8gIGNicnQoKy8tMCkgPSArLy0wCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgY2JydAorRU5UUlkoY2JydCkKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisuLkIxLjE6CisuLl9fX3RhZ192YWx1ZV9jYnJ0LjE6CisgICAgICAgIHN1YnEgICAgICAkMjQsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2NicnQuMzoKKyAgICAgICAgbW92c2QgICAgICV4bW0wLCAoJXJzcCkKKy4uQjEuMjoKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tNworICAgICAgICBtb3ZsICAgICAgJDUyNDAzMiwgJWVkeAorICAgICAgICBtb3ZzZCAgICAgRVhQX01TSzMoJXJpcCksICV4bW01CisgICAgICAgIG1vdnNkICAgICBFWFBfTVNLMiglcmlwKSwgJXhtbTMKKyAgICAgICAgcHNybHEgICAgICQ0NCwgJXhtbTcKKyAgICAgICAgcGV4dHJ3ICAgICQwLCAleG1tNywgJWVjeAorICAgICAgICBtb3ZkICAgICAgJXhtbTcsICVlYXgKKyAgICAgICAgbW92c2QgICAgIEVYUF9NQVNLKCVyaXApLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgU0lHX01BU0soJXJpcCksICV4bW0yCisgICAgICAgIGFuZGwgICAgICAkMjQ4LCAlZWN4CisgICAgICAgIGxlYSAgICAgICByY3BfdGFibGUoJXJpcCksICVyOAorICAgICAgICBtb3ZzZCAgICAgKCVyY3gsJXI4KSwgJXhtbTQKKyAgICAgICAgbW92cSAgICAgICVyYXgsICVyOQorICAgICAgICBhbmRsICAgICAgJWVheCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4xCisgICAgICAgIGNtcGwgICAgICAkNTI0MDMyLCAlZWR4CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMQorICAgICAgICBzaHJsICAgICAgJDgsICVlZHgKKyAgICAgICAgc2hycSAgICAgICQ4LCAlcjkKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhbmRwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgb3JwZCAgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgY29lZmZfdGFibGUoJXJpcCksICV4bW01CisgICAgICAgIG1vdmwgICAgICAkNTQ2MiwgJWVheAorICAgICAgICBtb3ZhcGQgICAgMTYrY29lZmZfdGFibGUoJXJpcCksICV4bW02CisgICAgICAgIG11bGwgICAgICAlZWR4CisgICAgICAgIG1vdnEgICAgICAlcjksICVyZHgKKyAgICAgICAgYW5kcSAgICAgICQyMDQ3LCAlcjkKKyAgICAgICAgc2hybCAgICAgICQxNCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDIwNDgsICVlZHgKKyAgICAgICAgc3VicSAgICAgICVyYXgsICVyOQorICAgICAgICBzdWJxICAgICAgJXJheCwgJXI5CisgICAgICAgIHN1YnEgICAgICAlcmF4LCAlcjkKKyAgICAgICAgc2hscSAgICAgICQ4LCAlcjkKKyAgICAgICAgYWRkbCAgICAgICQ2ODIsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgbW92ZCAgICAgICVlYXgsICV4bW03CisgICAgICAgIGFkZHEgICAgICAlcjksICVyY3gKKyAgICAgICAgcHNsbHEgICAgICQ1MiwgJXhtbTcKKy5MXzJUQUdfUEFDS0VUXzIuMC4xOgorICAgICAgICBtb3ZhcGQgICAgMzIrY29lZmZfdGFibGUoJXJpcCksICV4bW0yCisgICAgICAgIG1vdmFwZCAgICA0OCtjb2VmZl90YWJsZSglcmlwKSwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtb3ZxICAgICAgJXhtbTcsICV4bW0zCisgICAgICAgIGxlYSAgICAgICBjYnJ0X3RhYmxlKCVyaXApLCAlcjgKKyAgICAgICAgbXVsc2QgICAgICglcmN4LCVyOCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgbGVhICAgICAgIERfdGFibGUoJXJpcCksICVyOAorICAgICAgICBtdWxzZCAgICAgKCVyY3gsJXI4KSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tNAorICAgICAgICB1bnBja2xwZCAgJXhtbTEsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIGFkZHBkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgYWRkcGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBhZGRwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgdW5wY2tocGQgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzAuMC4xOgorICAgICAgICBtdWxzZCAgICAgU0NBTEU2MyglcmlwKSwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tNworICAgICAgICBtb3ZsICAgICAgJDUyNDAzMiwgJWVkeAorICAgICAgICBwc3JscSAgICAgJDQ0LCAleG1tNworICAgICAgICBwZXh0cncgICAgJDAsICV4bW03LCAlZWN4CisgICAgICAgIG1vdmQgICAgICAleG1tNywgJWVheAorICAgICAgICBhbmRsICAgICAgJDI0OCwgJWVjeAorICAgICAgICBsZWEgICAgICAgcmNwX3RhYmxlKCVyaXApLCAlcjgKKyAgICAgICAgbW92c2QgICAgICglcmN4LCVyOCksICV4bW00CisgICAgICAgIG1vdnEgICAgICAlcmF4LCAlcjkKKyAgICAgICAgYW5kbCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgc2hybCAgICAgICQ4LCAlZWR4CisgICAgICAgIHNocnEgICAgICAkOCwgJXI5CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjEKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhbmRwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgb3JwZCAgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgY29lZmZfdGFibGUoJXJpcCksICV4bW01CisgICAgICAgIG1vdmwgICAgICAkNTQ2MiwgJWVheAorICAgICAgICBtb3ZhcGQgICAgMTYrY29lZmZfdGFibGUoJXJpcCksICV4bW02CisgICAgICAgIG11bGwgICAgICAlZWR4CisgICAgICAgIG1vdnEgICAgICAlcjksICVyZHgKKyAgICAgICAgYW5kcSAgICAgICQyMDQ3LCAlcjkKKyAgICAgICAgc2hybCAgICAgICQxNCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDIwNDgsICVlZHgKKyAgICAgICAgc3VicSAgICAgICVyYXgsICVyOQorICAgICAgICBzdWJxICAgICAgJXJheCwgJXI5CisgICAgICAgIHN1YnEgICAgICAlcmF4LCAlcjkKKyAgICAgICAgc2hscSAgICAgICQ4LCAlcjkKKyAgICAgICAgYWRkbCAgICAgICQ2NjEsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlYXgKKyAgICAgICAgbW92ZCAgICAgICVlYXgsICV4bW03CisgICAgICAgIGFkZHEgICAgICAlcjksICVyY3gKKyAgICAgICAgcHNsbHEgICAgICQ1MiwgJXhtbTcKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4xCisuTF8yVEFHX1BBQ0tFVF8zLjAuMToKKyAgICAgICAgY21wcSAgICAgICQwLCAlcjkKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNAorLkxfMlRBR19QQUNLRVRfNC4wLjE6CisgICAgICAgIG1vdnNkICAgICBaRVJPTiglcmlwKSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNAorLkxfMlRBR19QQUNLRVRfMS4wLjE6CisgICAgICAgIG1vdmwgICAgICA0KCVyc3ApLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAoJXJzcCksICVlZHgKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQyMTQ3NDgzNjQ3LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMjE0NjQzNTA3MiwgJWVjeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjEKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGpuZSAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMQorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlYXgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4xCisgICAgICAgIG1vdnNkICAgICBJTkYoJXJpcCksICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzYuMC4xOgorICAgICAgICBtb3ZzZCAgICAgTkVHX0lORiglcmlwKSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNAorLkxfMlRBR19QQUNLRVRfNS4wLjE6CisgICAgICAgIG1vdnNkICAgICAoJXJzcCksICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCA4KCVyc3ApCisuTF8yVEFHX1BBQ0tFVF83LjAuMToKKy4uQjEuNDoKKyAgICAgICAgYWRkcSAgICAgICQyNCwgJXJzcAorLi5fX190YWdfdmFsdWVfY2JydC40OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV9jYnJ0LjU6CitFTkQoY2JydCkKKyMgLS0gRW5kICBjYnJ0CisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2Citjb2VmZl90YWJsZToKKwkubG9uZwkxNTUzNzc4OTE5CisJLmxvbmcJMzIxMzg5OTQ4NgorCS5sb25nCTM1MzQ5NTI1MDcKKwkubG9uZwkzMjE1MjY2MjgwCisJLmxvbmcJMTY0NjM3MTM5OQorCS5sb25nCTMyMTQ0MTIwNDUKKwkubG9uZwk0NzcyMTg1ODgKKwkubG9uZwkzMjE2Nzk4MTUxCisJLmxvbmcJMzU4MjUyMTYyMQorCS5sb25nCTEwNjY2MjgzNjIKKwkubG9uZwkxMDA3NDYxNDY0CisJLmxvbmcJMTA2ODQ3MzA1MworCS5sb25nCTg4OTYyOTcxNAorCS5sb25nCTEwNjczNzg0NDkKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA3MDk0NTYyMQorCS50eXBlCWNvZWZmX3RhYmxlLEBvYmplY3QKKwkuc2l6ZQljb2VmZl90YWJsZSw2NAorCS5hbGlnbiA0CitFWFBfTVNLMzoKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMTA0ODU3NQorCS50eXBlCUVYUF9NU0szLEBvYmplY3QKKwkuc2l6ZQlFWFBfTVNLMyw4CisJLmFsaWduIDQKK0VYUF9NU0syOgorCS5sb25nCTAKKwkubG9uZwkzMjIwMTkzMjgwCisJLnR5cGUJRVhQX01TSzIsQG9iamVjdAorCS5zaXplCUVYUF9NU0syLDgKKwkuYWxpZ24gNAorRVhQX01BU0s6CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkudHlwZQlFWFBfTUFTSyxAb2JqZWN0CisJLnNpemUJRVhQX01BU0ssOAorCS5hbGlnbiA0CitTSUdfTUFTSzoKKwkubG9uZwkwCisJLmxvbmcJMTAzMjE5MgorCS50eXBlCVNJR19NQVNLLEBvYmplY3QKKwkuc2l6ZQlTSUdfTUFTSyw4CisJLmFsaWduIDQKK3JjcF90YWJsZToKKwkubG9uZwk1Mjg2MTEzNjAKKwkubG9uZwkzMjIwMTQ0NjMyCisJLmxvbmcJMjg4NDY3OTUyNworCS5sb25nCTMyMjAwODI5OTMKKwkubG9uZwkxOTkxODY4ODkxCisJLmxvbmcJMzIyMDAyNDkyOAorCS5sb25nCTIyOTg3MTQ4OTEKKwkubG9uZwkzMjE5OTcwMTM0CisJLmxvbmcJNTg4MzUxNjgKKwkubG9uZwkzMjE5OTE4MzQzCisJLmxvbmcJMzAzNTExMDIyMworCS5sb25nCTMyMTk4NjkzMTMKKwkubG9uZwkxNjE3NTg1MDg2CisJLmxvbmcJMzIxOTgyMjgzMQorCS5sb25nCTI1MDA4NjcwMzMKKwkubG9uZwkzMjE5Nzc4NzAyCisJLmxvbmcJNDI0MTk0MzAwOAorCS5sb25nCTMyMTk3MzY3NTIKKwkubG9uZwkyNTg3MzI5NzAKKwkubG9uZwkzMjE5Njk2ODI1CisJLmxvbmcJNDA0MjMyMjE2CisJLmxvbmcJMzIxOTY1ODc3NgorCS5sb25nCTIxNzIxNjczNjgKKwkubG9uZwkzMjE5NjIyNDc2CisJLmxvbmcJMTU0NDI1NzkwNAorCS5sb25nCTMyMTk1ODc4MDgKKwkubG9uZwkzNzc1Nzk1NDMKKwkubG9uZwkzMjE5NTU0NjY0CisJLmxvbmcJMTYxNjM4NTU0MgorCS5sb25nCTMyMTk1MjI5NDUKKwkubG9uZwk4MTM3ODMyNzcKKwkubG9uZwkzMjE5NDkyNTYyCisJLmxvbmcJMzk0MDc0MzE4OQorCS5sb25nCTMyMTk0NjM0MzEKKwkubG9uZwkyNjg5Nzc3NDk5CisJLmxvbmcJMzIxOTQzNTQ3OAorCS5sb25nCTE3MDA5NzcxNDcKKwkubG9uZwkzMjE5NDA4NjMyCisJLmxvbmcJMzE2OTEwMjA4MgorCS5sb25nCTMyMTkzODI4MjgKKwkubG9uZwkzMjcyMzU2MDQKKwkubG9uZwkzMjE5MzU4MDA4CisJLmxvbmcJMTI0NDMzNjMxOQorCS5sb25nCTMyMTkzMzQxMTUKKwkubG9uZwkxMzAwMzExMjAwCisJLmxvbmcJMzIxOTMxMTA5OQorCS5sb25nCTMwOTU0NzE5MjUKKwkubG9uZwkzMjE5Mjg4OTEyCisJLmxvbmcJMjE2NjQ4NzkyOAorCS5sb25nCTMyMTkyNjc1MTEKKwkubG9uZwkyOTEzMTA4MjUzCisJLmxvbmcJMzIxOTI0Njg1NAorCS5sb25nCTI5MzY3Mjk3OAorCS5sb25nCTMyMTkyMjY5MDQKKwkubG9uZwkyODg3MzcyOTcKKwkubG9uZwkzMjE5MjA3NjI0CisJLmxvbmcJMTgxMDI3NTQ3MgorCS5sb25nCTMyMTkxODg5ODEKKwkubG9uZwkxNzQ1OTIxNjcKKwkubG9uZwkzMjE5MTcwOTQ1CisJLmxvbmcJMzUzOTA1MzA1MgorCS5sb25nCTMyMTkxNTM0ODUKKwkubG9uZwkyMTY0MzkyOTY4CisJLmxvbmcJMzIxOTEzNjU3NgorCS50eXBlCXJjcF90YWJsZSxAb2JqZWN0CisJLnNpemUJcmNwX3RhYmxlLDI1NgorCS5hbGlnbiA0CitjYnJ0X3RhYmxlOgorCS5sb25nCTU3MjM0NTQ5NQorCS5sb25nCTEwNzI2OTg2ODEKKwkubG9uZwkxOTk4MjA0NDY3CisJLmxvbmcJMTA3MjcwOTM4MgorCS5sb25nCTM4NjE1MDE1NTMKKwkubG9uZwkxMDcyNzE5ODcyCisJLmxvbmcJMjI2ODE5MjQzNAorCS5sb25nCTEwNzI3MzAxNjIKKwkubG9uZwkyOTgxOTc5MzA4CisJLmxvbmcJMTA3Mjc0MDI2MAorCS5sb25nCTI3MDg1OTE0MworCS5sb25nCTEwNzI3NTAxNzYKKwkubG9uZwkyOTU4NjUxMzkyCisJLmxvbmcJMTA3Mjc1OTkxNgorCS5sb25nCTMxMzExMzI0MworCS5sb25nCTEwNzI3Njk0OTAKKwkubG9uZwk5MTk0NDk0MDAKKwkubG9uZwkxMDcyNzc4OTAzCisJLmxvbmcJMjgwOTMyODkwMworCS5sb25nCTEwNzI3ODgxNjIKKwkubG9uZwkyMjIyOTgxNTg3CisJLmxvbmcJMTA3Mjc5NzI3NAorCS5sb25nCTIzNTI1MzA3ODEKKwkubG9uZwkxMDcyODA2MjQ0CisJLmxvbmcJNTk0MTUyNTE3CisJLmxvbmcJMTA3MjgxNTA3OAorCS5sb25nCTE1NTU3NjcxOTkKKwkubG9uZwkxMDcyODIzNzgwCisJLmxvbmcJNDI4MjQyMTMxNAorCS5sb25nCTEwNzI4MzIzNTUKKwkubG9uZwkyMzU1NTc4NTk3CisJLmxvbmcJMTA3Mjg0MDgwOQorCS5sb25nCTExNjI1OTA2MTkKKwkubG9uZwkxMDcyODQ5MTQ1CisJLmxvbmcJNzk3ODY0MDUxCisJLmxvbmcJMTA3Mjg1NzM2NworCS5sb25nCTQzMTI3MzY4MAorCS5sb25nCTEwNzI4NjU0NzkKKwkubG9uZwkyNjY5ODMxMTQ4CisJLmxvbmcJMTA3Mjg3MzQ4NAorCS5sb25nCTczMzQ3Nzc1MgorCS5sb25nCTEwNzI4ODEzODcKKwkubG9uZwk0MjgwMjIwNjA0CisJLmxvbmcJMTA3Mjg4OTE4OQorCS5sb25nCTgwMTk2MTYzNAorCS5sb25nCTEwNzI4OTY4OTYKKwkubG9uZwkyOTE1MzcwNzYwCisJLmxvbmcJMTA3MjkwNDUwOAorCS5sb25nCTExNTk2MTM0ODIKKwkubG9uZwkxMDcyOTEyMDMwCisJLmxvbmcJMjY4OTk0NDc5OAorCS5sb25nCTEwNzI5MTk0NjMKKwkubG9uZwkxMjQ4Njg3ODIyCisJLmxvbmcJMTA3MjkyNjgxMQorCS5sb25nCTI5Njc5NTEwMzAKKwkubG9uZwkxMDcyOTM0MDc1CisJLmxvbmcJNjMwMTcwNDMyCisJLmxvbmcJMTA3Mjk0MTI1OQorCS5sb25nCTM3NjA4OTgyNTQKKwkubG9uZwkxMDcyOTQ4MzYzCisJLmxvbmcJMAorCS5sb25nCTEwNzI5NTUzOTIKKwkubG9uZwkyMzcwMjczMjk0CisJLmxvbmcJMTA3Mjk2MjM0NQorCS5sb25nCTEyNjE3NTQ4MDIKKwkubG9uZwkxMDcyOTcyNjQwCisJLmxvbmcJNTQ2MzM0MDY1CisJLmxvbmcJMTA3Mjk4NjEyMworCS5sb25nCTEwNTQ4OTM4MzAKKwkubG9uZwkxMDcyOTk5MzQwCisJLmxvbmcJMTU3MTE4NzU5NworCS5sb25nCTEwNzMwMTIzMDQKKwkubG9uZwkxMTA3OTc1MTc1CisJLmxvbmcJMTA3MzAyNTAyNworCS5sb25nCTM2MDY5MDkzNzcKKwkubG9uZwkxMDczMDM3NTE5CisJLmxvbmcJMTExMzYxNjc0NworCS5sb25nCTEwNzMwNDk3OTIKKwkubG9uZwk0MTU0NzQ0NjMyCisJLmxvbmcJMTA3MzA2MTg1MworCS5sb25nCTMzNTg5MzE0MjMKKwkubG9uZwkxMDczMDczNzEzCisJLmxvbmcJNDA2MDcwMjM3MgorCS5sb25nCTEwNzMwODUzNzkKKwkubG9uZwk3NDc1NzYxNzYKKwkubG9uZwkxMDczMDk2ODYwCisJLmxvbmcJMzAyMzEzODI1NQorCS5sb25nCTEwNzMxMDgxNjEKKwkubG9uZwkxNDE5OTg4NTQ4CisJLmxvbmcJMTA3MzExOTI5MQorCS5sb25nCTE5MTQxODUzMDUKKwkubG9uZwkxMDczMTMwMjU1CisJLmxvbmcJMjk0Mzg5OTQ4CisJLmxvbmcJMTA3MzE0MTA2MAorCS5sb25nCTM3NjE4MDI1NzAKKwkubG9uZwkxMDczMTUxNzEwCisJLmxvbmcJOTc4MjgxNTY2CisJLmxvbmcJMTA3MzE2MjIxMworCS5sb25nCTgyMzE0ODgyMAorCS5sb25nCTEwNzMxNzI1NzIKKwkubG9uZwkyNDIwOTU0NDQxCisJLmxvbmcJMTA3MzE4Mjc5MgorCS5sb25nCTM4MTU0NDk5MDgKKwkubG9uZwkxMDczMTkyODc4CisJLmxvbmcJMjA0NjA1ODU4NworCS5sb25nCTEwNzMyMDI4MzUKKwkubG9uZwkxODA3NTI0NzUzCisJLmxvbmcJMTA3MzIxMjY2NgorCS5sb25nCTI2Mjg2ODE0MDEKKwkubG9uZwkxMDczMjIyMzc1CisJLmxvbmcJMzIyNTY2NzM1NworCS5sb25nCTEwNzMyMzE5NjYKKwkubG9uZwkxNTU1MzA3NDIxCisJLmxvbmcJMTA3MzI0MTQ0MworCS5sb25nCTM0NTQwNDMwOTkKKwkubG9uZwkxMDczMjUwODA4CisJLmxvbmcJMTIwODEzNzg5NgorCS5sb25nCTEwNzMyNjAwNjYKKwkubG9uZwkzNjU5OTE2NzcyCisJLmxvbmcJMTA3MzI2OTIxOAorCS5sb25nCTE4ODYyNjEyNjQKKwkubG9uZwkxMDczMjc4MjY5CisJLmxvbmcJMzU5MzY0NzgzOQorCS5sb25nCTEwNzMyODcyMjAKKwkubG9uZwkzMDg2MDEyMjA1CisJLmxvbmcJMTA3MzI5NjA3NQorCS5sb25nCTI3Njk3OTY5MjIKKwkubG9uZwkxMDczMzA0ODM2CisJLmxvbmcJODg4NzE2MDU3CisJLmxvbmcJMTA3MzMxNzgwNworCS5sb25nCTIyMDE0NjU2MjMKKwkubG9uZwkxMDczMzM0Nzk0CisJLmxvbmcJMTY0MzY5MzY1CisJLmxvbmcJMTA3MzM1MTQ0NworCS5sb25nCTM0NjI2NjY3MzMKKwkubG9uZwkxMDczMzY3NzgwCisJLmxvbmcJMjc3MzkwNTQ1NworCS5sb25nCTEwNzMzODM4MTAKKwkubG9uZwkxMzQyODc5MDg4CisJLmxvbmcJMTA3MzM5OTU1MAorCS5sb25nCTI1NDM5MzM5NzUKKwkubG9uZwkxMDczNDE1MDEyCisJLmxvbmcJMTY4NDQ3Nzc4MQorCS5sb25nCTEwNzM0MzAyMDkKKwkubG9uZwkzNTMyMTc4NTQzCisJLmxvbmcJMTA3MzQ0NTE1MQorCS5sb25nCTExNDc3NDczMDAKKwkubG9uZwkxMDczNDU5ODUwCisJLmxvbmcJMTkyODAzMTc5MworCS5sb25nCTEwNzM0NzQzMTQKKwkubG9uZwkyMDc5NzE3MDE1CisJLmxvbmcJMTA3MzQ4ODU1MworCS5sb25nCTQwMTY3NjUzMTUKKwkubG9uZwkxMDczNTAyNTc1CisJLmxvbmcJMzY3MDQzMTEzOQorCS5sb25nCTEwNzM1MTYzODkKKwkubG9uZwkzNTQ5MjI3MjI1CisJLmxvbmcJMTA3MzUzMDAwMgorCS5sb25nCTExNjM3NjA3CisJLmxvbmcJMTA3MzU0MzQyMgorCS5sb25nCTU4ODIyMDE2OQorCS5sb25nCTEwNzM1NTY2NTQKKwkubG9uZwkyNjM1NDA3NTAzCisJLmxvbmcJMTA3MzU2OTcwNQorCS5sb25nCTIwNDIwMjkzMTcKKwkubG9uZwkxMDczNTgyNTgyCisJLmxvbmcJMTkyNTEyODk2MgorCS5sb25nCTEwNzM1OTUyOTAKKwkubG9uZwk0MTM2Mzc1NjY0CisJLmxvbmcJMTA3MzYwNzgzNAorCS5sb25nCTc1OTk2NDYwMAorCS5sb25nCTEwNzM2MjAyMjEKKwkubG9uZwk0MjU3NjA2NzcxCisJLmxvbmcJMTA3MzYzMjQ1MworCS5sb25nCTI5NzI3ODkwNworCS5sb25nCTEwNzM2NDQ1MzgKKwkubG9uZwkzNjU1MDUzMDkzCisJLmxvbmcJMTA3MzY1NjQ3NworCS5sb25nCTI0NDIyNTMxNzIKKwkubG9uZwkxMDczNjY4Mjc3CisJLmxvbmcJMTExMTg3Njc5OQorCS5sb25nCTEwNzM2Nzk5NDEKKwkubG9uZwkzMzMwOTczMTM5CisJLmxvbmcJMTA3MzY5MTQ3MgorCS5sb25nCTM0Mzg4Nzk0NTIKKwkubG9uZwkxMDczNzAyODc1CisJLmxvbmcJMzY3MTU2NTQ3OAorCS5sb25nCTEwNzM3MTQxNTMKKwkubG9uZwkxMzE3ODQ5NTQ3CisJLmxvbmcJMTA3MzcyNTMxMAorCS5sb25nCTE2NDIzNjQxMTUKKwkubG9uZwkxMDczNzM2MzQ4CisJLnR5cGUJY2JydF90YWJsZSxAb2JqZWN0CisJLnNpemUJY2JydF90YWJsZSw3NjgKKwkuYWxpZ24gNAorRF90YWJsZToKKwkubG9uZwk0MDUwOTAwNDc0CisJLmxvbmcJMTAxNDQyNzE5MAorCS5sb25nCTExNTc5Nzc4NjAKKwkubG9uZwkxMDE2NDQ0NDYxCisJLmxvbmcJMTM3NDU2ODE5OQorCS5sb25nCTEwMTcyNzEzODcKKwkubG9uZwkyODA5MTYzMjg4CisJLmxvbmcJMTAxNjg4MjY3NgorCS5sb25nCTM3NDIzNzczNzcKKwkubG9uZwkxMDEzMTY4MTkxCisJLmxvbmcJMzEwMTYwNjU5NworCS5sb25nCTEwMTc1NDE2NzIKKwkubG9uZwk2NTIyNDM1OAorCS5sb25nCTEwMTcyMTc1OTcKKwkubG9uZwkyNjkxNTkxMjUwCisJLmxvbmcJMTAxNzI2NjY0MworCS5sb25nCTQwMjA3NTg1NDkKKwkubG9uZwkxMDE3Njg5MzEzCisJLmxvbmcJMTMxNjMxMDk5MgorCS5sb25nCTEwMTgwMzA3ODgKKwkubG9uZwkxMDMxNTM3ODU2CisJLmxvbmcJMTAxNDA5MDg4MgorCS5sb25nCTMyNjEzOTUyMzkKKwkubG9uZwkxMDE2NDEzNjQxCisJLmxvbmcJODg2NDI0OTk5CisJLmxvbmcJMTAxNjMxMzMzNQorCS5sb25nCTMxMTQ3NzY4MzQKKwkubG9uZwkxMDE0MTk1ODc1CisJLmxvbmcJMTY4MTEyMDYyMAorCS5sb25nCTEwMTc4MjU0MTYKKwkubG9uZwkxMzI5NjAwMjczCisJLmxvbmcJMTAxNjYyNTc0MAorCS5sb25nCTQ2NTQ3NDYyMworCS5sb25nCTEwMTcwOTcxMTkKKwkubG9uZwk0MjUxNjMzOTgwCisJLmxvbmcJMTAxNzE2OTA3NworCS5sb25nCTE5ODY5OTAxMzMKKwkubG9uZwkxMDE3NzEwNjQ1CisJLmxvbmcJNzUyOTU4NjEzCisJLmxvbmcJMTAxNzE1OTY0MQorCS5sb25nCTIyMTYyMTY3OTIKKwkubG9uZwkxMDE4MDIwMTYzCisJLmxvbmcJNDI4Mjg2MDEyOQorCS5sb25nCTEwMTU5MjQ4NjEKKwkubG9uZwkxNTU3NjI3ODU5CisJLmxvbmcJMTAxNjAzOTUzOAorCS5sb25nCTM4ODkyMTk3NTQKKwkubG9uZwkxMDE4MDg2MjM3CisJLmxvbmcJMzY4NDk5NjQwOAorCS5sb25nCTEwMTczNTMyNzUKKwkubG9uZwk3MjM1MzIxMDMKKwkubG9uZwkxMDE3NzE3MTQxCisJLmxvbmcJMjk1MTE0OTY3NgorCS5sb25nCTEwMTI1Mjg0NzAKKwkubG9uZwk4MzE4OTA5MzcKKwkubG9uZwkxMDE3ODMwNTUzCisJLmxvbmcJMTAzMTIxMjY0NQorCS5sb25nCTEwMTczODczMzEKKwkubG9uZwkyNzQxNzM3NDUwCisJLmxvbmcJMTAxNzYwNDk3NAorCS5sb25nCTI4NjMzMTE1MzEKKwkubG9uZwkxMDAzNzc2NjgyCisJLmxvbmcJNDI3NjczNjA5OQorCS5sb25nCTEwMTMxNTMwODgKKwkubG9uZwk0MTExNzc4MzgyCisJLmxvbmcJMTAxNTY3MzY4NgorCS5sb25nCTE3MjgwNjU3NjkKKwkubG9uZwkxMDE2NDEzOTg2CisJLmxvbmcJMjcwODcxODAzMQorCS5sb25nCTEwMTgwNzg4MzMKKwkubG9uZwkxMDY5MzM1MDA1CisJLmxvbmcJMTAxNTI5MTIyNAorCS5sb25nCTcwMDAzNzE0NAorCS5sb25nCTEwMTY0ODIwMzIKKwkubG9uZwkyOTA0NTY2NDUyCisJLmxvbmcJMTAxNzIyNjg2MQorCS5sb25nCTQwNzQxNTY2NDkKKwkubG9uZwkxMDE3NjIyNjUxCisJLmxvbmcJMjUwMTk1NjUKKwkubG9uZwkxMDE1MjQ1MzY2CisJLmxvbmcJMzYwMTk1MjYwOAorCS5sb25nCTEwMTU3NzE3NTUKKwkubG9uZwkzMjY3MTI5MzczCisJLmxvbmcJMTAxNzkwNDY2NAorCS5sb25nCTUwMzIwMzEwMworCS5sb25nCTEwMTQ5MjE2MjkKKwkubG9uZwkyMTIyMDExNzMwCisJLmxvbmcJMTAxODAyNzg2NgorCS5sb25nCTM5MjcyOTU0NjEKKwkubG9uZwkxMDE0MTg5NDU2CisJLmxvbmcJMjc5MDYyNTE0NworCS5sb25nCTEwMTYwMjQyNTEKKwkubG9uZwkxMzMwNDYwMTg2CisJLmxvbmcJMTAxNjk0MDM0NgorCS5sb25nCTQwMzM1Njg0NjMKKwkubG9uZwkxMDE1NTM4MzkwCisJLmxvbmcJMzY5NTgxODIyNworCS5sb25nCTEwMTc1MDk2MjEKKwkubG9uZwkyNTc1NzMzNjEKKwkubG9uZwkxMDE3MjA4ODY4CisJLmxvbmcJMzIyNzY5Nzg1MgorCS5sb25nCTEwMTczMzc5NjQKKwkubG9uZwkyMzQxMTg1NDgKKwkubG9uZwkxMDE3MTY5NTc3CisJLmxvbmcJNDAwOTAyNTgwMworCS5sb25nCTEwMTcyNzg1MjQKKwkubG9uZwkxOTQ4MzQzMzk0CisJLmxvbmcJMTAxNzc0OTMxMAorCS5sb25nCTY3ODM5ODE2MgorCS5sb25nCTEwMTgxNDQyMzkKKwkubG9uZwkzMDgzODY0ODYzCisJLmxvbmcJMTAxNjY2OTA4NgorCS5sb25nCTI0MTU0NTM0NTIKKwkubG9uZwkxMDE3ODkwMzcwCisJLmxvbmcJMTc1NDY3MzQ0CisJLmxvbmcJMTAxNzMzMDAzMworCS5sb25nCTMxOTczNTk1ODAKKwkubG9uZwkxMDEwMzM5OTI4CisJLmxvbmcJMjA3MTI3Njk1MQorCS5sb25nCTEwMTU5NDEzNTgKKwkubG9uZwkyNjgzNzI1NDMKKwkubG9uZwkxMDE2NzM3NzczCisJLmxvbmcJOTM4MTMyOTU5CisJLmxvbmcJMTAxNzM4OTEwOAorCS5sb25nCTE4MTY3NTA1NTkKKwkubG9uZwkxMDE3MzM3NDQ4CisJLmxvbmcJNDExOTIwMzc0OQorCS5sb25nCTEwMTcxNTIxNzQKKwkubG9uZwkyNTc4NjUzODc4CisJLmxvbmcJMTAxMzEwODQ5NworCS5sb25nCTI0NzAzMzEwOTYKKwkubG9uZwkxMDE0Njc4NjA2CisJLmxvbmcJMTIzODU1NzM1CisJLmxvbmcJMTAxNjU1MzMyMAorCS5sb25nCTEyNjU2NTA4ODkKKwkubG9uZwkxMDE0NzgyNjg3CisJLmxvbmcJMzQxNDM5ODE3MgorCS5sb25nCTEwMTcxODI2MzgKKwkubG9uZwkxMDQwNzczMzY5CisJLmxvbmcJMTAxNjE1ODQwMQorCS5sb25nCTM0ODM2Mjg4ODYKKwkubG9uZwkxMDE2ODg2NTUwCisJLmxvbmcJNDE0MDQ5OTQwNQorCS5sb25nCTEwMTYxOTE0MjUKKwkubG9uZwkzODkzNDc3ODUwCisJLmxvbmcJMTAxNjk2NDQ5NQorCS5sb25nCTM5MzUzMTk3NzEKKwkubG9uZwkxMDA5NjM0NzE3CisJLmxvbmcJMjk3ODk4MjY2MAorCS5sb25nCTEwMTUwMjcxMTIKKwkubG9uZwkyNDUyNzA5OTIzCisJLmxvbmcJMTAxNzk5MDIyOQorCS5sb25nCTMxOTAzNjU3MTIKKwkubG9uZwkxMDE1ODM1MTQ5CisJLmxvbmcJNDIzNzU4ODEzOQorCS5sb25nCTEwMTU4MzI5MjUKKwkubG9uZwkyNjEwNjc4Mzg5CisJLmxvbmcJMTAxNzk2MjcxMQorCS5sb25nCTIxMjczMTY3NzQKKwkubG9uZwkxMDE3NDA1NzcwCisJLmxvbmcJODI0MjY3NTAyCisJLmxvbmcJMTAxNzk1OTQ2MworCS5sb25nCTIxNjU5MjQwNDIKKwkubG9uZwkxMDE3OTEyMjI1CisJLmxvbmcJMjc3NDAwNzA3NgorCS5sb25nCTEwMTMyNTc0MTgKKwkubG9uZwk0MTIzOTE2MzI2CisJLmxvbmcJMTAxNzU4MjI4NAorCS5sb25nCTE5NzY0MTc5NTgKKwkubG9uZwkxMDE2OTU5OTA5CisJLmxvbmcJNDA5MjgwNjQxMgorCS5sb25nCTEwMTc3MTEyNzkKKwkubG9uZwkxMTkyNTE4MTcKKwkubG9uZwkxMDE1MzYzNjMxCisJLmxvbmcJMzQ3NTQxODc2OAorCS5sb25nCTEwMTc2NzU0MTUKKwkubG9uZwkxOTcyNTgwNTAzCisJLmxvbmcJMTAxNTQ3MDY4NAorCS5sb25nCTgxNTU0MTAxNworCS5sb25nCTEwMTc1MTc5NjkKKwkubG9uZwkyNDI5OTE3NDUxCisJLmxvbmcJMTAxNzM5Nzc3NgorCS5sb25nCTQwNjI4ODg0ODIKKwkubG9uZwkxMDE2NzQ5ODk3CisJLmxvbmcJNjgyODQxNTMKKwkubG9uZwkxMDE3OTI1Njc4CisJLmxvbmcJMjIwNzc3OTI0NgorCS5sb25nCTEwMTYzMjAyOTgKKwkubG9uZwkxMTgzNDY2NTIwCisJLmxvbmcJMTAxNzQwODY1NworCS5sb25nCTE0MzMyNjQyNworCS5sb25nCTEwMTcwNjA0MDMKKwkudHlwZQlEX3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlEX3RhYmxlLDc2OAorCS5hbGlnbiA0CitTQ0FMRTYzOgorCS5sb25nCTAKKwkubG9uZwkxMTM4NzUzNTM2CisJLnR5cGUJU0NBTEU2MyxAb2JqZWN0CisJLnNpemUJU0NBTEU2Myw4CisJLmFsaWduIDQKK1pFUk9OOgorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLnR5cGUJWkVST04sQG9iamVjdAorCS5zaXplCVpFUk9OLDgKKwkuYWxpZ24gNAorSU5GOgorCS5sb25nCTAKKwkubG9uZwkyMTQ2NDM1MDcyCisJLnR5cGUJSU5GLEBvYmplY3QKKwkuc2l6ZQlJTkYsOAorCS5hbGlnbiA0CitORUdfSU5GOgorCS5sb25nCTAKKwkubG9uZwk0MjkzOTE4NzIwCisJLnR5cGUJTkVHX0lORixAb2JqZWN0CisJLnNpemUJTkVHX0lORiw4CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisvLyAtLSBCZWdpbiBEV0FSRjIgU0VHTUVOVCAuZWhfZnJhbWUKKwkuc2VjdGlvbiAuZWhfZnJhbWUsImEiLEBwcm9nYml0cworLmVoX2ZyYW1lX3NlZzoKKwkuYWxpZ24gMQorCS40Ynl0ZSAweDAwMDAwMDE0CisJLjhieXRlIDB4MDA1MjdhMDEwMDAwMDAwMAorCS44Ynl0ZSAweDA4MDcwYzFiMDExMDc4MDEKKwkuNGJ5dGUgMHgwMDAwMDE5MAorCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfY2JydC4xLS4KKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfY2JydC41LS4uX19fdGFnX3ZhbHVlX2NicnQuMQorCS4yYnl0ZSAweDA0MDAKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfY2JydC4zLS4uX19fdGFnX3ZhbHVlX2NicnQuMQorCS4yYnl0ZSAweDIwMGUKKwkuYnl0ZSAweDA0CisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2NicnQuNC0uLl9fX3RhZ192YWx1ZV9jYnJ0LjMKKwkuMmJ5dGUgMHgwODBlCisJLmJ5dGUgMHgwMAorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L3NfY29zLlMgYi9saWJtL3g4Nl82NC9zX2Nvcy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFiNWEwZTEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Nl82NC9zX2Nvcy5TCkBAIC0wLDAgKzEsMTI3NSBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vICAgICAxLiBSQU5HRSBSRURVQ1RJT04KKy8vCisvLyAgICAgV2UgcGVyZm9ybSBhbiBpbml0aWFsIHJhbmdlIHJlZHVjdGlvbiBmcm9tIFggdG8gciB3aXRoCisvLworLy8gICAgICAgICAgWCA9fj0gTiAqIHBpLzMyICsgcgorLy8KKy8vICAgICBzbyB0aGF0IHxyfCA8PSBwaS82NCArIGVwc2lsb24uIFdlIHJlc3RyaWN0IGlucHV0cyB0byB0aG9zZQorLy8gICAgIHdoZXJlIHxOfCA8PSA5MzI1NjAuIEJleW9uZCB0aGlzLCB0aGUgcmFuZ2UgcmVkdWN0aW9uIGlzCisvLyAgICAgaW5zdWZmaWNpZW50bHkgYWNjdXJhdGUuIEZvciBleHRyZW1lbHkgc21hbGwgaW5wdXRzLCAKKy8vICAgICBkZW5vcm1hbGl6YXRpb24gY2FuIG9jY3VyIGludGVybmFsbHksIGltcGFjdGluZyBwZXJmb3JtYW5jZS4KKy8vICAgICBUaGlzIG1lYW5zIHRoYXQgdGhlIG1haW4gcGF0aCBpcyBhY3R1YWxseSBvbmx5IHRha2VuIGZvcgorLy8gICAgIDJeLTI1MiA8PSB8WHwgPCA5MDExMi4KKy8vCisvLyAgICAgVG8gYXZvaWQgYnJhbmNoZXMsIHdlIHBlcmZvcm0gdGhlIHJhbmdlIHJlZHVjdGlvbiB0byBmdWxsCisvLyAgICAgYWNjdXJhY3kgZWFjaCB0aW1lLgorLy8KKy8vICAgICAgICAgIFggLSBOICogKFBfMSArIFBfMiArIFBfMykKKy8vCisvLyAgICAgd2hlcmUgUF8xIGFuZCBQXzIgYXJlIDMyLWJpdCBudW1iZXJzIChzbyBtdWx0aXBsaWNhdGlvbiBieSBOCisvLyAgICAgaXMgZXhhY3QpIGFuZCBQXzMgaXMgYSA1My1iaXQgbnVtYmVyLiBUb2dldGhlciwgdGhlc2UKKy8vICAgICBhcHByb3hpbWF0ZSBwaSB3ZWxsIGVub3VnaCBmb3IgYWxsIGNhc2VzIGluIHRoZSByZXN0cmljdGVkCisvLyAgICAgcmFuZ2UuCisvLworLy8gICAgIFRoZSBtYWluIHJlZHVjdGlvbiBzZXF1ZW5jZSBpczoKKy8vCisvLyAgICAgICAgICAgICB5ID0gMzIvcGkgKiB4CisvLyAgICAgICAgICAgICBOID0gaW50ZWdlcih5KQorLy8gICAgIChjb21wdXRlZCBieSBhZGRpbmcgYW5kIHN1YnRyYWN0aW5nIG9mZiBTSElGVEVSKQorLy8KKy8vICAgICAgICAgICAgIG1fMSA9IE4gKiBQXzEKKy8vICAgICAgICAgICAgIG1fMiA9IE4gKiBQXzIKKy8vICAgICAgICAgICAgIHJfMSA9IHggLSBtXzEKKy8vICAgICAgICAgICAgIHIgPSByXzEgLSBtXzIKKy8vICAgICAodGhpcyByIGNhbiBiZSB1c2VkIGZvciBtb3N0IG9mIHRoZSBjYWxjdWxhdGlvbikKKy8vCisvLyAgICAgICAgICAgICBjXzEgPSByXzEgLSByCisvLyAgICAgICAgICAgICBtXzMgPSBOICogUF8zCisvLyAgICAgICAgICAgICBjXzIgPSBjXzEgLSBtXzIKKy8vICAgICAgICAgICAgIGMgPSBjXzIgLSBtXzMKKy8vCisvLyAgICAgMi4gTUFJTiBBTEdPUklUSE0KKy8vCisvLyAgICAgVGhlIGFsZ29yaXRobSB1c2VzIGEgdGFibGUgbG9va3VwIGJhc2VkIG9uIEIgPSBNICogcGkgLyAzMgorLy8gICAgIHdoZXJlIE0gPSBOIG1vZCA2NC4gVGhlIHN0b3JlZCB2YWx1ZXMgYXJlOgorLy8gICAgICAgc2lnbWEgICAgICAgICAgICAgY2xvc2VzdCBwb3dlciBvZiAyIHRvIGNvcyhCKQorLy8gICAgICAgQ19obCAgICAgICAgICAgICAgNTMtYml0IGNvcyhCKSAtIHNpZ21hCisvLyAgICAgICBTX2hpICsgU19sbyAgICAgICAyICogNTMtYml0IHNpbihCKQorLy8KKy8vICAgICBUaGUgY29tcHV0YXRpb24gaXMgb3JnYW5pemVkIGFzIGZvbGxvd3M6CisvLworLy8gICAgICAgICAgc2luKEIgKyByICsgYykgPSBbc2luKEIpICsgc2lnbWEgKiByXSArCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgIHIgKiAoY29zKEIpIC0gc2lnbWEpICsKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgc2luKEIpICogW2NvcyhyICsgYykgLSAxXSArCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvcyhCKSAqIFtzaW4ociArIGMpIC0gcl0KKy8vCisvLyAgICAgd2hpY2ggaXMgYXBwcm94aW1hdGVseToKKy8vCisvLyAgICAgICAgICBbU19oaSArIHNpZ21hICogcl0gKworLy8gICAgICAgICAgQ19obCAqIHIgKworLy8gICAgICAgICAgU19sbyArIFNfaGkgKiBbKGNvcyhyKSAtIDEpIC0gciAqIGNdICsKKy8vICAgICAgICAgIChDX2hsICsgc2lnbWEpICogWyhzaW4ocikgLSByKSArIGNdCisvLworLy8gICAgIGFuZCB0aGlzIGlzIHdoYXQgaXMgYWN0dWFsbHkgY29tcHV0ZWQuIFdlIHNlcGFyYXRlIHRoaXMgc3VtCisvLyAgICAgaW50byBmb3VyIHBhcnRzOgorLy8KKy8vICAgICAgICAgIGhpICsgbWVkICsgcG9scyArIGNvcnIKKy8vCisvLyAgICAgd2hlcmUKKy8vCisvLyAgICAgICAgICBoaSAgICAgICA9IFNfaGkgKyBzaWdtYSByCisvLyAgICAgICAgICBtZWQgICAgICA9IENfaGwgKiByCisvLyAgICAgICAgICBwb2xzICAgICA9IFNfaGkgKiAoY29zKHIpIC0gMSkgKyAoQ19obCArIHNpZ21hKSAqIChzaW4ocikgLSByKQorLy8gICAgICAgICAgY29yciAgICAgPSBTX2xvICsgYyAqICgoQ19obCArIHNpZ21hKSAtIFNfaGkgKiByKQorLy8KKy8vICAgICAzLiBQT0xZTk9NSUFMCisvLworLy8gICAgIFRoZSBwb2x5bm9taWFsIFNfaGkgKiAoY29zKHIpIC0gMSkgKyAoQ19obCArIHNpZ21hKSAqCisvLyAgICAgKHNpbihyKSAtIHIpIGNhbiBiZSByZWFycmFuZ2VkIGZyZWVseSwgc2luY2UgaXQgaXMgcXVpdGUKKy8vICAgICBzbWFsbCwgc28gd2UgZXhwbG9pdCBwYXJhbGxlbGlzbSB0byB0aGUgZnVsbGVzdC4KKy8vCisvLyAgICAgICAgICBwc2M0ICAgICAgID0gICBTQ180ICogcl8xCisvLyAgICAgICAgICBtc2M0ICAgICAgID0gICBwc2M0ICogcgorLy8gICAgICAgICAgcjIgICAgICAgICA9ICAgciAqIHIKKy8vICAgICAgICAgIG1zYzIgICAgICAgPSAgIFNDXzIgKiByMgorLy8gICAgICAgICAgcjQgICAgICAgICA9ICAgcjIgKiByMgorLy8gICAgICAgICAgcHNjMyAgICAgICA9ICAgU0NfMyArIG1zYzQKKy8vICAgICAgICAgIHBzYzEgICAgICAgPSAgIFNDXzEgKyBtc2MyCisvLyAgICAgICAgICBtc2MzICAgICAgID0gICByNCAqIHBzYzMKKy8vICAgICAgICAgIHNpbmNvc3BvbHMgPSAgIHBzYzEgKyBtc2MzCisvLyAgICAgICAgICBwb2xzICAgICAgID0gICBzaW5jb3Nwb2xzICoKKy8vICAgICAgICAgICAgICAgICAgICAgICAgIDxTX2hpICogcl4yIHwgKENfaGwgKyBzaWdtYSkgKiByXjM+CisvLworLy8gICAgIDQuIENPUlJFQ1RJT04gVEVSTQorLy8KKy8vICAgICBUaGlzIGlzIHdoZXJlIHRoZSAiYyIgY29tcG9uZW50IG9mIHRoZSByYW5nZSByZWR1Y3Rpb24gaXMKKy8vICAgICB0YWtlbiBpbnRvIGFjY291bnQ7IHJlY2FsbCB0aGF0IGp1c3QgInIiIGlzIHVzZWQgZm9yIG1vc3Qgb2YKKy8vICAgICB0aGUgY2FsY3VsYXRpb24uCisvLworLy8gICAgICAgICAgLWMgICA9IG1fMyAtIGNfMgorLy8gICAgICAgICAgLWQgICA9IFNfaGkgKiByIC0gKENfaGwgKyBzaWdtYSkKKy8vICAgICAgICAgIGNvcnIgPSAtYyAqIC1kICsgU19sbworLy8KKy8vICAgICA1LiBDT01QRU5TQVRFRCBTVU1NQVRJT05TCisvLworLy8gICAgIFRoZSB0d28gc3VjY2Vzc2l2ZSBjb21wZW5zYXRlZCBzdW1tYXRpb25zIGFkZCB1cCB0aGUgaGlnaAorLy8gICAgIGFuZCBtZWRpdW0gcGFydHMsIGxlYXZpbmcganVzdCB0aGUgbG93IHBhcnRzIHRvIGFkZCB1cCBhdAorLy8gICAgIHRoZSBlbmQuCisvLworLy8gICAgICAgICAgcnMgICAgICAgID0gIHNpZ21hICogcgorLy8gICAgICAgICAgcmVzX2ludCAgID0gIFNfaGkgKyBycworLy8gICAgICAgICAga18wICAgICAgID0gIFNfaGkgLSByZXNfaW50CisvLyAgICAgICAgICBrXzIgICAgICAgPSAga18wICsgcnMKKy8vICAgICAgICAgIG1lZCAgICAgICA9ICBDX2hsICogcgorLy8gICAgICAgICAgcmVzX2hpICAgID0gIHJlc19pbnQgKyBtZWQKKy8vICAgICAgICAgIGtfMSAgICAgICA9ICByZXNfaW50IC0gcmVzX2hpCisvLyAgICAgICAgICBrXzMgICAgICAgPSAga18xICsgbWVkCisvLworLy8gICAgIDYuIEZJTkFMIFNVTU1BVElPTgorLy8KKy8vICAgICBXZSBub3cgYWRkIHVwIGFsbCB0aGUgc21hbGwgcGFydHM6CisvLworLy8gICAgICAgICAgcmVzX2xvID0gcG9scyhoaSkgKyBwb2xzKGxvKSArIGNvcnIgKyBrXzEgKyBrXzMKKy8vCisvLyAgICAgTm93IHRoZSBvdmVyYWxsIHJlc3VsdCBpcyBqdXN0OgorLy8KKy8vICAgICAgICAgIHJlc19oaSArIHJlc19sbworLy8KKy8vICAgICA3LiBTTUFMTCBBUkdVTUVOVFMKKy8vCisvLyAgICAgSW5wdXRzIHdpdGggfFh8IDwgMl4tMjUyIGFyZSB0cmVhdGVkIHNwZWNpYWxseSBhcworLy8gICAgIDEgLSB8eHwuCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICBjb3MoTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgY29zKElORikgPSBOYU4gYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgY29zKDApID0gMQorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIGNvcworRU5UUlkoY29zKQorIyBwYXJhbWV0ZXIgMTogJXhtbTAKKy4uQjEuMToKKy4uX19fdGFnX3ZhbHVlX2Nvcy4xOgorICAgICAgICBwdXNocSAgICAgJXJieAorLi5fX190YWdfdmFsdWVfY29zLjM6CisgICAgICAgIHN1YnEgICAgICAkMTYsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2Nvcy41OgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDgoJXJzcCkKKy4uQjEuMjoKKyAgICAgICAgbW92bCAgICAgIDEyKCVyc3ApLCAlZWF4CisgICAgICAgIG1vdnEgICAgICBQSTMySU5WKCVyaXApLCAleG1tMQorICAgICAgICBhbmRsICAgICAgJDIxNDc0MTgxMTIsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQ4MDg0NTIwOTYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyODEzNDYwNDgsICVlYXgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIE9ORUhBTEYoJXJpcCksICV4bW01CisgICAgICAgIG1vdnEgICAgICBTSUdOX01BU0soJXJpcCksICV4bW00CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgb3JwcyAgICAgICV4bW00LCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGN2dHRzZDJzaSAleG1tMSwgJWVkeAorICAgICAgICBjdnRzaTJzZCAgJWVkeCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIFBfMiglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgIFBfMSglcmlwKSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICB1bnBja2xwZCAgJXhtbTEsICV4bW0xCisgICAgICAgIGFkZHEgICAgICAkMTg2NTIzMiwgJXJkeAorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW00CisgICAgICAgIGFuZHEgICAgICAkNjMsICVyZHgKKyAgICAgICAgbW92YXBkICAgIFNDXzQoJXJpcCksICV4bW01CisgICAgICAgIGxlYSAgICAgICBDdGFibGUoJXJpcCksICVyYXgKKyAgICAgICAgc2hscSAgICAgICQ1LCAlcmR4CisgICAgICAgIGFkZHEgICAgICAlcmR4LCAlcmF4CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgUF8zKCVyaXApLCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdnEgICAgICA4KCVyYXgpLCAleG1tNworICAgICAgICB1bnBja2xwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIHN1YnBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIFNDXzIoJXJpcCksICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgKCVyYXgpLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAyNCglcmF4KSwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgU0NfMyglcmlwKSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICglcmF4KSwgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgIFNDXzEoJXJpcCksICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgOCglcmF4KSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW03LCAleG1tMQorICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgICV4bW01LCAleG1tNgorICAgICAgICBtb3ZxICAgICAgOCglcmF4KSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAxNiglcmF4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgdW5wY2tocGQgICV4bW02LCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNAorLkxfMlRBR19QQUNLRVRfMC4wLjE6CisgICAgICAgIGpnICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZHcgICAgICAkMzI3NjcsICVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0wCisgICAgICAgIG1vdnEgICAgICBPTkUoJXJpcCksICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS40CisuTF8yVEFHX1BBQ0tFVF8xLjAuMToKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4xCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBzdWJsICAgICAgJDE2MjI0LCAlZWN4CisgICAgICAgIHNocmwgICAgICAkNywgJWVjeAorICAgICAgICBhbmRsICAgICAgJDY1NTMyLCAlZWN4CisgICAgICAgIGxlYSAgICAgICBQSV9JTlZfVEFCTEUoJXJpcCksICVyMTEKKyAgICAgICAgYWRkcSAgICAgICVyMTEsICVyY3gKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlcmF4CisgICAgICAgIG1vdmwgICAgICAyMCglcmN4KSwgJXIxMGQKKyAgICAgICAgbW92bCAgICAgIDI0KCVyY3gpLCAlcjhkCisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHNocnEgICAgICAkMjEsICVyYXgKKyAgICAgICAgb3JsICAgICAgICQtMjE0NzQ4MzY0OCwgJWVheAorICAgICAgICBzaHJsICAgICAgJDExLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlcjEwZCwgJXI5ZAorICAgICAgICBpbXVscSAgICAgJXJkeCwgJXIxMAorICAgICAgICBpbXVscSAgICAgJXJheCwgJXI5CisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcjgKKyAgICAgICAgbW92bCAgICAgIDE2KCVyY3gpLCAlZXNpCisgICAgICAgIG1vdmwgICAgICAxMiglcmN4KSwgJWVkaQorICAgICAgICBtb3ZsICAgICAgJXIxMGQsICVyMTFkCisgICAgICAgIHNocnEgICAgICAkMzIsICVyMTAKKyAgICAgICAgYWRkcSAgICAgICVyMTAsICVyOQorICAgICAgICBhZGRxICAgICAgJXI4LCAlcjExCisgICAgICAgIG1vdmwgICAgICAlcjExZCwgJXI4ZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcjExCisgICAgICAgIGFkZHEgICAgICAlcjExLCAlcjkKKyAgICAgICAgbW92bCAgICAgICVlc2ksICVyMTBkCisgICAgICAgIGltdWxxICAgICAlcmR4LCAlcnNpCisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcjEwCisgICAgICAgIG1vdmwgICAgICAlZWRpLCAlcjExZAorICAgICAgICBpbXVscSAgICAgJXJkeCwgJXJkaQorICAgICAgICBtb3ZsICAgICAgJWVzaSwgJWVieAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcnNpCisgICAgICAgIGFkZHEgICAgICAlcmJ4LCAlcjkKKyAgICAgICAgbW92bCAgICAgICVyOWQsICVlYngKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXI5CisgICAgICAgIGFkZHEgICAgICAlcnNpLCAlcjEwCisgICAgICAgIGFkZHEgICAgICAlcjksICVyMTAKKyAgICAgICAgc2hscSAgICAgICQzMiwgJXJieAorICAgICAgICBvcnEgICAgICAgJXJieCwgJXI4CisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcjExCisgICAgICAgIG1vdmwgICAgICA4KCVyY3gpLCAlcjlkCisgICAgICAgIG1vdmwgICAgICA0KCVyY3gpLCAlZXNpCisgICAgICAgIG1vdmwgICAgICAlZWRpLCAlZWJ4CisgICAgICAgIHNocnEgICAgICAkMzIsICVyZGkKKyAgICAgICAgYWRkcSAgICAgICVyYngsICVyMTAKKyAgICAgICAgbW92bCAgICAgICVyMTBkLCAlZWJ4CisgICAgICAgIHNocnEgICAgICAkMzIsICVyMTAKKyAgICAgICAgYWRkcSAgICAgICVyZGksICVyMTEKKyAgICAgICAgYWRkcSAgICAgICVyMTAsICVyMTEKKyAgICAgICAgbW92cSAgICAgICVyOSwgJXJkaQorICAgICAgICBpbXVscSAgICAgJXJkeCwgJXI5CisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcmRpCisgICAgICAgIG1vdmwgICAgICAlcjlkLCAlcjEwZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcjkKKyAgICAgICAgYWRkcSAgICAgICVyMTAsICVyMTEKKyAgICAgICAgbW92bCAgICAgICVyMTFkLCAlcjEwZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcjExCisgICAgICAgIGFkZHEgICAgICAlcjksICVyZGkKKyAgICAgICAgYWRkcSAgICAgICVyMTEsICVyZGkKKyAgICAgICAgbW92cSAgICAgICVyc2ksICVyOQorICAgICAgICBpbXVscSAgICAgJXJkeCwgJXJzaQorICAgICAgICBpbXVscSAgICAgJXJheCwgJXI5CisgICAgICAgIHNobHEgICAgICAkMzIsICVyMTAKKyAgICAgICAgb3JxICAgICAgICVyYngsICVyMTAKKyAgICAgICAgbW92bCAgICAgICglcmN4KSwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVzaSwgJXIxMWQKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXJzaQorICAgICAgICBhZGRxICAgICAgJXIxMSwgJXJkaQorICAgICAgICBtb3ZsICAgICAgJWVkaSwgJXIxMWQKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXJkaQorICAgICAgICBhZGRxICAgICAgJXJzaSwgJXI5CisgICAgICAgIGFkZHEgICAgICAlcmRpLCAlcjkKKyAgICAgICAgaW11bHEgICAgICVyYXgsICVyZHgKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVieAorICAgICAgICBsZWEgICAgICAgUElfSU5WX1RBQkxFKCVyaXApLCAlcmRpCisgICAgICAgIHN1YnEgICAgICAlcmRpLCAlcmN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMTksICVlY3gKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVzaQorICAgICAgICBhbmRsICAgICAgJWVieCwgJWVzaQorICAgICAgICBzaHJsICAgICAgJDQsICVlYngKKyAgICAgICAgYW5kbCAgICAgICQyMDQ3LCAlZWJ4CisgICAgICAgIHN1YmwgICAgICAkMTAyMywgJWVieAorICAgICAgICBzdWJsICAgICAgJWVieCwgJWVjeAorICAgICAgICBhZGRxICAgICAgJXJkeCwgJXI5CisgICAgICAgIG1vdmwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIGFkZGwgICAgICAkMzIsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxLCAlZWN4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMQorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBhZGRsICAgICAgJDI5LCAlZWN4CisgICAgICAgIHNobGwgICAgICAlY2wsICVyOWQKKyAgICAgICAgbW92bCAgICAgICVyOWQsICVlZGkKKyAgICAgICAgYW5kbCAgICAgICQ1MzY4NzA5MTEsICVyOWQKKyAgICAgICAgdGVzdGwgICAgICQyNjg0MzU0NTYsICVyOWQKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4xCisgICAgICAgIHNocmwgICAgICAlY2wsICVyOWQKKyAgICAgICAgbW92bCAgICAgICQwLCAlZWJ4CisgICAgICAgIHNobHEgICAgICAkMzIsICVyOQorICAgICAgICBvcnEgICAgICAgJXIxMSwgJXI5CisuTF8yVEFHX1BBQ0tFVF81LjAuMToKKy5MXzJUQUdfUEFDS0VUXzYuMC4xOgorICAgICAgICBjbXBxICAgICAgJDAsICVyOQorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjEKKy5MXzJUQUdfUEFDS0VUXzguMC4xOgorICAgICAgICBic3IgICAgICAgJXI5LCAlcjExCisgICAgICAgIG1vdmwgICAgICAkMjksICVlY3gKKyAgICAgICAgc3VibCAgICAgICVyMTFkLCAlZWN4CisgICAgICAgIGpsZSAgICAgICAuTF8yVEFHX1BBQ0tFVF85LjAuMQorICAgICAgICBzaGxxICAgICAgJWNsLCAlcjkKKyAgICAgICAgbW92cSAgICAgICVyMTAsICVyYXgKKyAgICAgICAgc2hscSAgICAgICVjbCwgJXIxMAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBhZGRsICAgICAgJDY0LCAlZWN4CisgICAgICAgIHNocnEgICAgICAlY2wsICVyYXgKKyAgICAgICAgc2hycSAgICAgICVjbCwgJXI4CisgICAgICAgIG9ycSAgICAgICAlcmF4LCAlcjkKKyAgICAgICAgb3JxICAgICAgICVyOCwgJXIxMAorLkxfMlRBR19QQUNLRVRfMTAuMC4xOgorICAgICAgICBjdnRzaTJzZHEgJXI5LCAleG1tMAorICAgICAgICBzaHJxICAgICAgJDEsICVyMTAKKyAgICAgICAgY3Z0c2kyc2RxICVyMTAsICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgc2hsbCAgICAgICQ0LCAlZWR4CisgICAgICAgIG5lZ2wgICAgICAlZWR4CisgICAgICAgIGFkZGwgICAgICAkMTYzNjgsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlc2ksICVlZHgKKyAgICAgICAgeG9ybCAgICAgICVlYngsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNAorICAgICAgICBtb3ZxICAgICAgUElfNCglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgIDgrUElfNCglcmlwKSwgJXhtbTYKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBzdWJsICAgICAgJDEwMDgsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHNobGwgICAgICAkMTYsICVlc2kKKyAgICAgICAgc2FybCAgICAgICQzMSwgJWVzaQorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBzaHJsICAgICAgJDI5LCAlZWRpCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBhZGRsICAgICAgJWVzaSwgJWVkaQorICAgICAgICB4b3JsICAgICAgJWVzaSwgJWVkaQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIG1vdmwgICAgICAlZWRpLCAlZWF4CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNgorLkxfMlRBR19QQUNLRVRfMTEuMC4xOgorICAgICAgICBtb3ZxICAgICAgUEkzMklOViglcmlwKSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZxICAgICAgT05FSEFMRiglcmlwKSwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgIFNJR05fTUFTSyglcmlwKSwgJXhtbTQKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tNAorICAgICAgICBvcnBzICAgICAgJXhtbTQsICV4bW01CisgICAgICAgIGFkZHBkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgY3Z0dHNkMnNpICV4bW0xLCAlcmR4CisgICAgICAgIGN2dHNpMnNkcSAlcmR4LCAleG1tMQorICAgICAgICBtb3ZxICAgICAgUF8xKCVyaXApLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgUF8yKCVyaXApLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHVucGNrbHBkICAleG1tMSwgJXhtbTEKKyAgICAgICAgc2hsbCAgICAgICQzLCAlZWF4CisgICAgICAgIGFkZGwgICAgICAkMTg2NTIzMiwgJWVkeAorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW00CisgICAgICAgIGFkZGwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkNjMsICVlZHgKKyAgICAgICAgbW92YXBkICAgIFNDXzQoJXJpcCksICV4bW01CisgICAgICAgIGxlYSAgICAgICBDdGFibGUoJXJpcCksICVyYXgKKyAgICAgICAgc2hsbCAgICAgICQ1LCAlZWR4CisgICAgICAgIGFkZHEgICAgICAlcmR4LCAlcmF4CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgUF8zKCVyaXApLCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdnEgICAgICA4KCVyYXgpLCAleG1tNworICAgICAgICB1bnBja2xwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIHN1YnBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAoJXJheCksICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbW92cSAgICAgIDI0KCVyYXgpLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgU0NfMiglcmlwKSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGFkZHBkICAgICBTQ18zKCVyaXApLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgKCVyYXgpLCAleG1tNAorICAgICAgICBhZGRwZCAgICAgU0NfMSglcmlwKSwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtb3ZxICAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICA4KCVyYXgpLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIG1vdnEgICAgICA4KCVyYXgpLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgIDE2KCVyYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICB1bnBja2hwZCAgJXhtbTYsICV4bW02CisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzcuMC4xOgorICAgICAgICBhZGRsICAgICAgJDY0LCAlZWR4CisgICAgICAgIG1vdnEgICAgICAlcjEwLCAlcjkKKyAgICAgICAgbW92cSAgICAgICVyOCwgJXIxMAorICAgICAgICBtb3ZxICAgICAgJDAsICVyOAorICAgICAgICBjbXBxICAgICAgJDAsICVyOQorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjEKKyAgICAgICAgYWRkbCAgICAgICQ2NCwgJWVkeAorICAgICAgICBtb3ZxICAgICAgJXIxMCwgJXI5CisgICAgICAgIG1vdnEgICAgICAlcjgsICVyMTAKKyAgICAgICAgY21wcSAgICAgICQwLCAlcjkKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4xCisuTF8yVEFHX1BBQ0tFVF85LjAuMToKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMQorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBzaHJxICAgICAgJWNsLCAlcjEwCisgICAgICAgIG1vdnEgICAgICAlcjksICVyYXgKKyAgICAgICAgc2hycSAgICAgICVjbCwgJXI5CisgICAgICAgIHN1YmwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIG5lZ2wgICAgICAlZWN4CisgICAgICAgIGFkZGwgICAgICAkNjQsICVlY3gKKyAgICAgICAgc2hscSAgICAgICVjbCwgJXJheAorICAgICAgICBvcnEgICAgICAgJXJheCwgJXIxMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4xCisuTF8yVEFHX1BBQ0tFVF8zLjAuMToKKyAgICAgICAgbmVnbCAgICAgICVlY3gKKyAgICAgICAgc2hscSAgICAgICQzMiwgJXI5CisgICAgICAgIG9ycSAgICAgICAlcjExLCAlcjkKKyAgICAgICAgc2hscSAgICAgICVjbCwgJXI5CisgICAgICAgIG1vdnEgICAgICAlcjksICVyZGkKKyAgICAgICAgdGVzdGwgICAgICQtMjE0NzQ4MzY0OCwgJXI5ZAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTIuMC4xCisgICAgICAgIHNocmwgICAgICAlY2wsICVyOWQKKyAgICAgICAgbW92bCAgICAgICQwLCAlZWJ4CisgICAgICAgIHNocnEgICAgICAkMywgJXJkaQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNi4wLjEKKy5MXzJUQUdfUEFDS0VUXzQuMC4xOgorICAgICAgICBzaHJsICAgICAgJWNsLCAlcjlkCisgICAgICAgIG1vdmwgICAgICAkNTM2ODcwOTEyLCAlZWJ4CisgICAgICAgIHNocmwgICAgICAlY2wsICVlYngKKyAgICAgICAgc2hscSAgICAgICQzMiwgJXI5CisgICAgICAgIG9ycSAgICAgICAlcjExLCAlcjkKKyAgICAgICAgc2hscSAgICAgICQzMiwgJXJieAorICAgICAgICBhZGRsICAgICAgJDUzNjg3MDkxMiwgJWVkaQorICAgICAgICBtb3ZxICAgICAgJDAsICVyY3gKKyAgICAgICAgbW92cSAgICAgICQwLCAlcjExCisgICAgICAgIHN1YnEgICAgICAlcjgsICVyY3gKKyAgICAgICAgc2JicSAgICAgICVyMTAsICVyMTEKKyAgICAgICAgc2JicSAgICAgICVyOSwgJXJieAorICAgICAgICBtb3ZxICAgICAgJXJjeCwgJXI4CisgICAgICAgIG1vdnEgICAgICAlcjExLCAlcjEwCisgICAgICAgIG1vdnEgICAgICAlcmJ4LCAlcjkKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVieAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjEKKy5MXzJUQUdfUEFDS0VUXzEyLjAuMToKKyAgICAgICAgc2hybCAgICAgICVjbCwgJXI5ZAorICAgICAgICBtb3ZxICAgICAgJDB4MTAwMDAwMDAwLCAlcmJ4CisgICAgICAgIHNocnEgICAgICAlY2wsICVyYngKKyAgICAgICAgbW92cSAgICAgICQwLCAlcmN4CisgICAgICAgIG1vdnEgICAgICAkMCwgJXIxMQorICAgICAgICBzdWJxICAgICAgJXI4LCAlcmN4CisgICAgICAgIHNiYnEgICAgICAlcjEwLCAlcjExCisgICAgICAgIHNiYnEgICAgICAlcjksICVyYngKKyAgICAgICAgbW92cSAgICAgICVyY3gsICVyOAorICAgICAgICBtb3ZxICAgICAgJXIxMSwgJXIxMAorICAgICAgICBtb3ZxICAgICAgJXJieCwgJXI5CisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlYngKKyAgICAgICAgc2hycSAgICAgICQzLCAlcmRpCisgICAgICAgIGFkZGwgICAgICAkNTM2ODcwOTEyLCAlZWRpCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMQorLkxfMlRBR19QQUNLRVRfMi4wLjE6CisgICAgICAgIG1vdnNkICAgICA4KCVyc3ApLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgTkVHX1pFUk8oJXJpcCksICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgKCVyc3ApCisuTF8yVEFHX1BBQ0tFVF8xMy4wLjE6CisuLkIxLjQ6CisgICAgICAgIGFkZHEgICAgICAkMTYsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2Nvcy42OgorICAgICAgICBwb3BxICAgICAgJXJieAorLi5fX190YWdfdmFsdWVfY29zLjg6CisgICAgICAgIHJldCAgICAgICAKKy4uX19fdGFnX3ZhbHVlX2Nvcy45OgorRU5EKGNvcykKKyMgLS0gRW5kICBjb3MKKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK09ORUhBTEY6CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS50eXBlCU9ORUhBTEYsQG9iamVjdAorCS5zaXplCU9ORUhBTEYsMTYKKwkuYWxpZ24gMTYKK1BfMjoKKwkubG9uZwk0NDI0OTkwNzIKKwkubG9uZwkxMDMyODkzNTM3CisJLmxvbmcJNDQyNDk5MDcyCisJLmxvbmcJMTAzMjg5MzUzNworCS50eXBlCVBfMixAb2JqZWN0CisJLnNpemUJUF8yLDE2CisJLmFsaWduIDE2CitTQ180OgorCS5sb25nCTI3NzM5Mjc3MzIKKwkubG9uZwkxMDUzMjM2NzA3CisJLmxvbmcJNDM2MzE0MTM4CisJLmxvbmcJMTA1NjU3MTgwOAorCS50eXBlCVNDXzQsQG9iamVjdAorCS5zaXplCVNDXzQsMTYKKwkuYWxpZ24gMTYKK0N0YWJsZToKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTM5MzA0NzM0NQorCS5sb25nCTMyMTIwMzIzMDIKKwkubG9uZwkzMTU2ODQ5NzA4CisJLmxvbmcJMTA2OTA5NDgyMgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTU4MTg5ODQ4CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxODExNTA2NworCS5sb25nCTMyMTQxMjYzNDIKKwkubG9uZwkxMDEzNTU2NzQ3CisJLmxvbmcJMTA3MDEzNTQ4MAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkzMTYwNTY3MDY1CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyNDc2NTQ4Njk4CisJLmxvbmcJMzIxNTMzMDI4MgorCS5sb25nCTc4NTc1MTgxNAorCS5sb25nCTEwNzA3NjUwNjIKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMzE2MTgzODIyMQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjI1NTE5NzY0NworCS5sb25nCTMyMTYyMTExMDUKKwkubG9uZwkyNzk2NDY0NDgzCisJLmxvbmcJMTA3MTE1MjYxMAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTYwODc4MzE3CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxOTQ1NzY4NTY5CisJLmxvbmcJMzIxNjkxNTA0OAorCS5sb25nCTkzOTk4MDM0NworCS5sb25nCTEwNzE1MjQ3MDEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDEyNzk2ODA5CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxNTM5NjY4MzQwCisJLmxvbmcJMzIxNzM5NjMyNworCS5sb25nCTk2NzczMTQwMAorCS5sb25nCTEwNzE3NjEyMTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1NzUyMTU3CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxNDAzNzU3MzA5CisJLmxvbmcJMzIxNzg4NjcxOAorCS5sb25nCTYyMTM1NDQ1NAorCS5sb25nCTEwNzE5MjY1MTUKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDEzNDUwNjAyCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMTA3MDIzNjI4MQorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkxMDcyMDc5MDA2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MzI4Mjc0MAorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjQ4NTQxNzgxNgorCS5sb25nCTEwNjk2MjYzMTYKKwkubG9uZwkxNzk2NTQ0MzIxCisJLmxvbmcJMTA3MjIxNzIxNgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjI2ODY5NDUKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTI1OTg4MDA1MTkKKwkubG9uZwkxMDY4MjY2NDE5CisJLmxvbmcJNjg4ODI0NzM5CisJLmxvbmcJMTA3MjMzOTgxNAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEwNDMxNTM2CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyMTQwMTgzNjMwCisJLmxvbmcJMzIxNDc1NjM5NgorCS5sb25nCTQwNTE3NDYyMjUKKwkubG9uZwkxMDcyNDQ1NjE4CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTMxNjE5MDczNzcKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTE2OTkwNDM5NTcKKwkubG9uZwkzMjE2OTAyMjYxCisJLmxvbmcJMzQ3NjE5NjY3OAorCS5sb25nCTEwNzI1MzM2MTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE0MjU3NjM4CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkxOTkxMDQ3MjEzCisJLmxvbmcJMTA2Nzc1MzUyMQorCS5sb25nCTE0NTU4Mjg0NDIKKwkubG9uZwkxMDcyNjAyOTQ1CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTU1MDUwNzMKKwkubG9uZwkwCisJLmxvbmcJMTA3MDU5NjA5NgorCS5sb25nCTI0MDc0MDMwOQorCS5sb25nCTMyMTU3Mjc5MDMKKwkubG9uZwkzNDg5MDk0ODMyCisJLmxvbmcJMTA3MjY1Mjk1MQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTQzMjU3ODMKKwkubG9uZwkwCisJLmxvbmcJMTA3MDU5NjA5NgorCS5sb25nCTI1NzUwMzA1NgorCS5sb25nCTMyMTQ2NDc2NTMKKwkubG9uZwkyNzQ4MzkyNzQyCisJLmxvbmcJMTA3MjY4MzE0OQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkzMTYzMDYxNzUwCisJLmxvbmcJMAorCS5sb25nCTEwNjk1NDc1MjAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI1NzUwMzA1NgorCS5sb25nCTEwNjcxNjQwMDUKKwkubG9uZwkyNzQ4MzkyNzQyCisJLmxvbmcJMTA3MjY4MzE0OQorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkzMTYzMDYxNzUwCisJLmxvbmcJMAorCS5sb25nCTMyMTcwMzExNjgKKwkubG9uZwkyNDA3NDAzMDkKKwkubG9uZwkxMDY4MjQ0MjU1CisJLmxvbmcJMzQ4OTA5NDgzMgorCS5sb25nCTEwNzI2NTI5NTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE0MzI1NzgzCisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkxOTkxMDQ3MjEzCisJLmxvbmcJMzIxNTIzNzE2OQorCS5sb25nCTE0NTU4Mjg0NDIKKwkubG9uZwkxMDcyNjAyOTQ1CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTU1MDUwNzMKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTE2OTkwNDM5NTcKKwkubG9uZwkxMDY5NDE4NjEzCisJLmxvbmcJMzQ3NjE5NjY3OAorCS5sb25nCTEwNzI1MzM2MTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE0MjU3NjM4CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyMTQwMTgzNjMwCisJLmxvbmcJMTA2NzI3Mjc0OAorCS5sb25nCTQwNTE3NDYyMjUKKwkubG9uZwkxMDcyNDQ1NjE4CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTMxNjE5MDczNzcKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTI1OTg4MDA1MTkKKwkubG9uZwkzMjE1NzUwMDY3CisJLmxvbmcJNjg4ODI0NzM5CisJLmxvbmcJMTA3MjMzOTgxNAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEwNDMxNTM2CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyNDg1NDE3ODE2CisJLmxvbmcJMzIxNzEwOTk2NAorCS5sb25nCTE3OTY1NDQzMjEKKwkubG9uZwkxMDcyMjE3MjE2CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MjY4Njk0NQorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTMyMTc3MTk5MjkKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MjA3OTAwNgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjMyODI3NDAKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTE0MDM3NTczMDkKKwkubG9uZwkxMDcwNDAzMDcwCisJLmxvbmcJNjIxMzU0NDU0CisJLmxvbmcJMTA3MTkyNjUxNQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTM0NTA2MDIKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE1Mzk2NjgzNDAKKwkubG9uZwkxMDY5OTEyNjc5CisJLmxvbmcJOTY3NzMxNDAwCisJLmxvbmcJMTA3MTc2MTIxMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTU3NTIxNTcKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE5NDU3Njg1NjkKKwkubG9uZwkxMDY5NDMxNDAwCisJLmxvbmcJOTM5OTgwMzQ3CisJLmxvbmcJMTA3MTUyNDcwMQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTI3OTY4MDkKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTIyNTUxOTc2NDcKKwkubG9uZwkxMDY4NzI3NDU3CisJLmxvbmcJMjc5NjQ2NDQ4MworCS5sb25nCTEwNzExNTI2MTAKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE2MDg3ODMxNworCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMjQ3NjU0ODY5OAorCS5sb25nCTEwNjc4NDY2MzQKKwkubG9uZwk3ODU3NTE4MTQKKwkubG9uZwkxMDcwNzY1MDYyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTMxNjE4MzgyMjEKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTE4MTE1MDY3CisJLmxvbmcJMTA2NjY0MjY5NAorCS5sb25nCTEwMTM1NTY3NDcKKwkubG9uZwkxMDcwMTM1NDgwCisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTMxNjA1NjcwNjUKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTM5MzA0NzM0NQorCS5sb25nCTEwNjQ1NDg2NTQKKwkubG9uZwkzMTU2ODQ5NzA4CisJLmxvbmcJMTA2OTA5NDgyMgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTU4MTg5ODQ4CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTM5MzA0NzM0NQorCS5sb25nCTEwNjQ1NDg2NTQKKwkubG9uZwkzMTU2ODQ5NzA4CisJLmxvbmcJMzIxNjU3ODQ3MAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEwNzA2MjAwCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxODExNTA2NworCS5sb25nCTEwNjY2NDI2OTQKKwkubG9uZwkxMDEzNTU2NzQ3CisJLmxvbmcJMzIxNzYxOTEyOAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDEzMDgzNDE3CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyNDc2NTQ4Njk4CisJLmxvbmcJMTA2Nzg0NjYzNAorCS5sb25nCTc4NTc1MTgxNAorCS5sb25nCTMyMTgyNDg3MTAKKwkubG9uZwkyNjg0MzU0NTYwCisJLmxvbmcJMTAxNDM1NDU3MworCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMjI1NTE5NzY0NworCS5sb25nCTEwNjg3Mjc0NTcKKwkubG9uZwkyNzk2NDY0NDgzCisJLmxvbmcJMzIxODYzNjI1OAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEzMzk0NjY5CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxOTQ1NzY4NTY5CisJLmxvbmcJMTA2OTQzMTQwMAorCS5sb25nCTkzOTk4MDM0NworCS5sb25nCTMyMTkwMDgzNDkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYwMjgwNDU3CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxNTM5NjY4MzQwCisJLmxvbmcJMTA2OTkxMjY3OQorCS5sb25nCTk2NzczMTQwMAorCS5sb25nCTMyMTkyNDQ4NTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYzMjM1ODA1CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxNDAzNzU3MzA5CisJLmxvbmcJMTA3MDQwMzA3MAorCS5sb25nCTYyMTM1NDQ1NAorCS5sb25nCTMyMTk0MTAxNjMKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYwOTM0MjUwCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMzIxNzcxOTkyOQorCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkzMjE5NTYyNjU0CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTc5OTA5MgorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjQ4NTQxNzgxNgorCS5sb25nCTMyMTcxMDk5NjQKKwkubG9uZwkxNzk2NTQ0MzIxCisJLmxvbmcJMzIxOTcwMDg2NAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTUyMDMyOTcKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTI1OTg4MDA1MTkKKwkubG9uZwkzMjE1NzUwMDY3CisJLmxvbmcJNjg4ODI0NzM5CisJLmxvbmcJMzIxOTgyMzQ2MgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTU3OTE1MTg0CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyMTQwMTgzNjMwCisJLmxvbmcJMTA2NzI3Mjc0OAorCS5sb25nCTQwNTE3NDYyMjUKKwkubG9uZwkzMjE5OTI5MjY2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwMTQ0MjM3MjkKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTE2OTkwNDM5NTcKKwkubG9uZwkxMDY5NDE4NjEzCisJLmxvbmcJMzQ3NjE5NjY3OAorCS5sb25nCTMyMjAwMTcyNTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYxNzQxMjg2CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkxOTkxMDQ3MjEzCisJLmxvbmcJMzIxNTIzNzE2OQorCS5sb25nCTE0NTU4Mjg0NDIKKwkubG9uZwkzMjIwMDg2NTkzCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNjI5ODg3MjEKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTI0MDc0MDMwOQorCS5sb25nCTEwNjgyNDQyNTUKKwkubG9uZwkzNDg5MDk0ODMyCisJLmxvbmcJMzIyMDEzNjU5OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjE4MDk0MzEKKwkubG9uZwkwCisJLmxvbmcJMzIxODA3OTc0NAorCS5sb25nCTI1NzUwMzA1NgorCS5sb25nCTEwNjcxNjQwMDUKKwkubG9uZwkyNzQ4MzkyNzQyCisJLmxvbmcJMzIyMDE2Njc5NworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDE1NTc4MTAyCisJLmxvbmcJMAorCS5sb25nCTMyMTcwMzExNjgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI1NzUwMzA1NgorCS5sb25nCTMyMTQ2NDc2NTMKKwkubG9uZwkyNzQ4MzkyNzQyCisJLmxvbmcJMzIyMDE2Njc5NworCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDE1NTc4MTAyCisJLmxvbmcJMAorCS5sb25nCTEwNjk1NDc1MjAKKwkubG9uZwkyNDA3NDAzMDkKKwkubG9uZwkzMjE1NzI3OTAzCisJLmxvbmcJMzQ4OTA5NDgzMgorCS5sb25nCTMyMjAxMzY1OTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYxODA5NDMxCisJLmxvbmcJMAorCS5sb25nCTEwNzA1OTYwOTYKKwkubG9uZwkxOTkxMDQ3MjEzCisJLmxvbmcJMTA2Nzc1MzUyMQorCS5sb25nCTE0NTU4Mjg0NDIKKwkubG9uZwkzMjIwMDg2NTkzCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNjI5ODg3MjEKKwkubG9uZwkwCisJLmxvbmcJMTA3MDU5NjA5NgorCS5sb25nCTE2OTkwNDM5NTcKKwkubG9uZwkzMjE2OTAyMjYxCisJLmxvbmcJMzQ3NjE5NjY3OAorCS5sb25nCTMyMjAwMTcyNTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYxNzQxMjg2CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyMTQwMTgzNjMwCisJLmxvbmcJMzIxNDc1NjM5NgorCS5sb25nCTQwNTE3NDYyMjUKKwkubG9uZwkzMjE5OTI5MjY2CisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTEwMTQ0MjM3MjkKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTI1OTg4MDA1MTkKKwkubG9uZwkxMDY4MjY2NDE5CisJLmxvbmcJNjg4ODI0NzM5CisJLmxvbmcJMzIxOTgyMzQ2MgorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTU3OTE1MTg0CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyNDg1NDE3ODE2CisJLmxvbmcJMTA2OTYyNjMxNgorCS5sb25nCTE3OTY1NDQzMjEKKwkubG9uZwkzMjE5NzAwODY0CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTIwMzI5NworCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTEwNzAyMzYyODEKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMzIxOTU2MjY1NAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTU3OTkwOTIKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTE0MDM3NTczMDkKKwkubG9uZwkzMjE3ODg2NzE4CisJLmxvbmcJNjIxMzU0NDU0CisJLmxvbmcJMzIxOTQxMDE2MworCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjA5MzQyNTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE1Mzk2NjgzNDAKKwkubG9uZwkzMjE3Mzk2MzI3CisJLmxvbmcJOTY3NzMxNDAwCisJLmxvbmcJMzIxOTI0NDg1OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjMyMzU4MDUKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE5NDU3Njg1NjkKKwkubG9uZwkzMjE2OTE1MDQ4CisJLmxvbmcJOTM5OTgwMzQ3CisJLmxvbmcJMzIxOTAwODM0OQorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjAyODA0NTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTIyNTUxOTc2NDcKKwkubG9uZwkzMjE2MjExMTA1CisJLmxvbmcJMjc5NjQ2NDQ4MworCS5sb25nCTMyMTg2MzYyNTgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxMzM5NDY2OQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjQ3NjU0ODY5OAorCS5sb25nCTMyMTUzMzAyODIKKwkubG9uZwk3ODU3NTE4MTQKKwkubG9uZwkzMjE4MjQ4NzEwCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwMTQzNTQ1NzMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTE4MTE1MDY3CisJLmxvbmcJMzIxNDEyNjM0MgorCS5sb25nCTEwMTM1NTY3NDcKKwkubG9uZwkzMjE3NjE5MTI4CisJLmxvbmcJMzIyMTIyNTQ3MgorCS5sb25nCTEwMTMwODM0MTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTM5MzA0NzM0NQorCS5sb25nCTMyMTIwMzIzMDIKKwkubG9uZwkzMTU2ODQ5NzA4CisJLmxvbmcJMzIxNjU3ODQ3MAorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDEwNzA2MjAwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkudHlwZQlDdGFibGUsQG9iamVjdAorCS5zaXplCUN0YWJsZSwyMDQ4CisJLmFsaWduIDE2CitTQ18yOgorCS5sb25nCTI4NjMzMTE1MworCS5sb25nCTEwNjU0MjMxMjEKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA2Nzc5OTg5MworCS50eXBlCVNDXzIsQG9iamVjdAorCS5zaXplCVNDXzIsMTYKKwkuYWxpZ24gMTYKK1NDXzM6CisJLmxvbmcJNDM2MzE0MTM4CisJLmxvbmcJMzIwNzIwMTE4NAorCS5sb25nCTM4MTc3NDg3MQorCS5sb25nCTMyMTAxMzM4NjgKKwkudHlwZQlTQ18zLEBvYmplY3QKKwkuc2l6ZQlTQ18zLDE2CisJLmFsaWduIDE2CitTQ18xOgorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkzMjE3MzgwNjkzCisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkudHlwZQlTQ18xLEBvYmplY3QKKwkuc2l6ZQlTQ18xLDE2CisJLmFsaWduIDE2CitQSV9JTlZfVEFCTEU6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNzM0MjYxMTAyCisJLmxvbmcJMTMxMzA4NDcxMworCS5sb25nCTQyMzA0MzY4MTcKKwkubG9uZwk0MTEzODgyNTYwCisJLmxvbmcJMzY4MDY3MTEyOQorCS5sb25nCTEwMTEwNjA4MDEKKwkubG9uZwk0MjY2NzQ2Nzk1CisJLmxvbmcJMzczNjg0NzcxMworCS5sb25nCTMwNzI2MTgwNDIKKwkubG9uZwkxMTEyMzk2NTEyCisJLmxvbmcJMTA1NDU5NDM0CisJLmxvbmcJMTY0NzI5MzcyCisJLmxvbmcJNDI2MzM3MzU5NgorCS5sb25nCTI5NzIyOTcwMjIKKwkubG9uZwkzOTAwODQ3NjA1CisJLmxvbmcJNzg0MDI0NzA4CisJLmxvbmcJMzkxOTM0MzY1NAorCS5sb25nCTMwMjYxNTcxMjEKKwkubG9uZwk5NjU4NTg4NzMKKwkubG9uZwkyMjAzMjY5NjIwCisJLmxvbmcJMjYyNTkyMDkwNworCS5sb25nCTMxODcyMjI1ODcKKwkubG9uZwk1MzYzODU1MzUKKwkubG9uZwkzNzI0OTA4NTU5CisJLmxvbmcJNDAxMjgzOTMwNworCS5sb25nCTE1MTA2MzI3MzUKKwkubG9uZwkxODMyMjg3OTUxCisJLmxvbmcJNjY3NjE3NzE5CisJLmxvbmcJMTMzMDAwMzgxNAorCS5sb25nCTI2NTcwODU5OTcKKwkubG9uZwkxOTY1NTM3OTkxCisJLmxvbmcJMzk1NzcxNTMyMworCS5sb25nCTEwMjM4ODM3NjcKKwkubG9uZwkyMzIwNjY3MzcwCisJLmxvbmcJMTgxMTYzNjE0NQorCS5sb25nCTUyOTM1ODA4OAorCS5sb25nCTE0NDMwNDk1NDIKKwkubG9uZwk0MjM1OTQ2OTIzCisJLmxvbmcJNDA0MDE0NTk1MworCS50eXBlCVBJX0lOVl9UQUJMRSxAb2JqZWN0CisJLnNpemUJUElfSU5WX1RBQkxFLDE2NAorCS5zcGFjZSAxMiwgMHgwMCAJIyBwYWQKKwkuYWxpZ24gMTYKK1BJXzQ6CisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTEwNzIyNDMxOTUKKwkubG9uZwk0MDcyNzk3NjkKKwkubG9uZwkxMDQ2NzU4NDQ1CisJLnR5cGUJUElfNCxAb2JqZWN0CisJLnNpemUJUElfNCwxNgorCS5hbGlnbiA4CitQSTMySU5WOgorCS5sb25nCTE4NDE5NDA2MTEKKwkubG9uZwkxMDc2MTI1NDg4CisJLnR5cGUJUEkzMklOVixAb2JqZWN0CisJLnNpemUJUEkzMklOViw4CisJLmFsaWduIDgKK1NJR05fTUFTSzoKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS50eXBlCVNJR05fTUFTSyxAb2JqZWN0CisJLnNpemUJU0lHTl9NQVNLLDgKKwkuYWxpZ24gOAorUF8xOgorCS5sb25nCTE0MTM0ODA0NDgKKwkubG9uZwkxMDY5MDk3NDY3CisJLnR5cGUJUF8xLEBvYmplY3QKKwkuc2l6ZQlQXzEsOAorCS5hbGlnbiA4CitQXzM6CisJLmxvbmcJNzcxOTc3MzMxCisJLmxvbmcJOTk2MzUwMzQ2CisJLnR5cGUJUF8zLEBvYmplY3QKKwkuc2l6ZQlQXzMsOAorCS5hbGlnbiA4CitPTkU6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkudHlwZQlPTkUsQG9iamVjdAorCS5zaXplCU9ORSw4CisJLmFsaWduIDgKK05FR19aRVJPOgorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLnR5cGUJTkVHX1pFUk8sQG9iamVjdAorCS5zaXplCU5FR19aRVJPLDgKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKy8vIC0tIEJlZ2luIERXQVJGMiBTRUdNRU5UIC5laF9mcmFtZQorCS5zZWN0aW9uIC5laF9mcmFtZSwiYSIsQHByb2diaXRzCisuZWhfZnJhbWVfc2VnOgorCS5hbGlnbiAxCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuOGJ5dGUgMHgwMDUyN2EwMTAwMDAwMDAwCisJLjhieXRlIDB4MDgwNzBjMWIwMTEwNzgwMQorCS40Ynl0ZSAweDAwMDAwMTkwCisJLjRieXRlIDB4MDAwMDAwMmMKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9jb3MuMS0uCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2Nvcy45LS4uX19fdGFnX3ZhbHVlX2Nvcy4xCisJLjJieXRlIDB4MDQwMAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9jb3MuMy0uLl9fX3RhZ192YWx1ZV9jb3MuMQorCS40Ynl0ZSAweDAyODMxMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9jb3MuNS0uLl9fX3RhZ192YWx1ZV9jb3MuMworCS4yYnl0ZSAweDIwMGUKKwkuYnl0ZSAweDA0CisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2Nvcy42LS4uX19fdGFnX3ZhbHVlX2Nvcy41CisJLjRieXRlIDB4MDRjMzEwMGUKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfY29zLjgtLi5fX190YWdfdmFsdWVfY29zLjYKKwkuMmJ5dGUgMHgwODBlCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvc19leHBtMS5TIGIvbGlibS94ODZfNjQvc19leHBtMS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlkYTFkOWQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Nl82NC9zX2V4cG0xLlMKQEAgLTAsMCArMSw3MjcgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyBEZXNjcmlwdGlvbjoKKy8vICBMZXQgSyA9IDY0ICh0YWJsZSBzaXplKS4KKy8vCisvLyAgRm91ciBzdWItZG9tYWluczoKKy8vICAgIDEuIHx4fCA8IDEvKDIqSykKKy8vICAgICAgZXhwbTEoeCkgfiBQKHgpCisvLyAgICAyLiAxLygyKkspIDw9IHx4fCA8PSA1Nipsb2coMikKKy8vICAgICAgIHggICAgICAgeC9sb2coMikgICAgbgorLy8gICAgICBlIC0gMSA9IDIgICAgICAgICA9IDIgKiBUW2pdICogKDEgKyBQKHkpKSAtIDEKKy8vICAgIDMuIDU2KmxvZygyKSA8IHggPCBNQVhfTE9HCisvLyAgICAgICB4ICAgICAgIHggICB4L2xvZygyKSAgICBuCisvLyAgICAgIGUgLSAxIH4gZSA9IDIgICAgICAgICA9IDIgKiBUW2pdICogKDEgKyBQKHkpKQorLy8gICAgNC4geCA8IC01Nipsb2coMikKKy8vICAgICAgIHggICAgICAgICAgICB4CisvLyAgICAgIGUgLSAxID0gLTEgKyBlIH4gLTEKKy8vICAgIHdoZXJlCisvLyAgICAgICB4ID0gbSpsb2coMikvSyArIHksICAgIHkgaW4gWy1sb2coMikvSy4ubG9nKDIpL0tdCisvLyAgICAgICBtID0gbipLICsgaiwgICAgICAgICAgIG0sbixqIC0gc2lnbmVkIGludGVnZXIsIGogaW4gWy1LLzIuLksvMl0KKy8vICAgICAgICAgICAgICAgICAgai9LCisvLyAgICAgICB2YWx1ZXMgb2YgMiAgIGFyZSB0YWJ1bGF0ZWQgYXMgVFtqXSA9IFRfaGlbal0gKCAxICsgVF9sb1tqXSkuCisvLworLy8gICAgICAgUCh5KSBpcyBhIG1pbmltYXggcG9seW5vbWlhbCBhcHByb3hpbWF0aW9uIG9mIGV4cCh4KS0xCisvLyAgICAgICBvbiBzbWFsbCBpbnRlcnZhbCBbLWxvZygyKS9LLi5sb2coMikvS10gKHdlcmUgY2FsY3VsYXRlZCBieSBNYXBsZSBWKS4KKy8vCisvLyAgICBJbiBjYXNlIDMsIHRvIGF2b2lkIHByb2JsZW1zIHdpdGggYXJpdGhtZXRpYyBvdmVyZmxvdyBhbmQgdW5kZXJmbG93LAorLy8gICAgICAgICAgICAgIG4gICAgICAgICAgICAgICAgICAgICAgICBuMSAgbjIKKy8vICAgIHZhbHVlIG9mIDIgIGlzIHNhZmVseSBjb21wdXRlZCBhcyAyICogMiB3aGVyZSBuMSBpbiBbLUJJQVMvMi4uQklBUy8yXQorLy8gICAgYW5kIEJJQVMgaXMgYSB2YWx1ZSBvZiBleHBvbmVudCBiaWFzLgorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgZXhwbTEoTmFOKSBpcyBOYU4KKy8vICBleHBtMSgrSU5GKSBpcyArSU5GCisvLyAgZXhwbTEoLUlORikgaXMgLTEKKy8vICBleHBtMSh4KSBpcyB4IGZvciBzdWJub3JtYWxzCisvLyAgZm9yIGZpbml0ZSBhcmd1bWVudCwgb25seSBleHBtMSgwKT0wIGlzIGV4YWN0LgorLy8gIEZvciBJRUVFIGRvdWJsZQorLy8gICAgaWYgeCA+IDcwOS43ODI3MTI4OTMzODM5NzMwOTYgdGhlbiBleHBtMSh4KSBvdmVyZmxvdworLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIGV4cG0xCitFTlRSWShleHBtMSkKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisuLkIxLjE6CisuLl9fX3RhZ192YWx1ZV9leHBtMS4xOgorICAgICAgICBzdWJxICAgICAgJDU2LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9leHBtMS4zOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDMyKCVyc3ApCisuLkIxLjI6CisgICAgICAgIHVucGNrbHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIGN2KCVyaXApLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgU2hpZnRlciglcmlwKSwgJXhtbTYKKyAgICAgICAgbW92YXBkICAgIDE2K2N2KCVyaXApLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgMzIrY3YoJXJpcCksICV4bW0zCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlYXgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVheAorICAgICAgICBtb3ZsICAgICAgJDE2NTI3LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIHN1YmwgICAgICAkMTYzMDQsICVlYXgKKyAgICAgICAgb3JsICAgICAgICVlYXgsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQtMjE0NzQ4MzY0OCwgJWVkeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMC4wLjIKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgc3VicGQgICAgICV4bW02LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICA0OCtjdiglcmlwKSwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgNjQrY3YoJXJpcCksICV4bW01CisgICAgICAgIHN1YnBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92ZCAgICAgICV4bW03LCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkNjMsICVlY3gKKyAgICAgICAgc2hsbCAgICAgICQ0LCAlZWN4CisgICAgICAgIHNhcmwgICAgICAkNiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJWVheCwgJWVkeAorICAgICAgICBzdWJwZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGxlYSAgICAgICBUYmxfYWRkciglcmlwKSwgJXIxMQorICAgICAgICBtb3ZhcGQgICAgKCVyY3gsJXIxMSksICV4bW0yCisgICAgICAgIG1vdnEgICAgICA4MCtjdiglcmlwKSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBhZGRwZCAgICAgJXhtbTQsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICV4bW0yLCAleG1tNAorICAgICAgICB1bnBja2hwZCAgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdmRxYSAgICBtbWFzayglcmlwKSwgJXhtbTYKKyAgICAgICAgcGFuZCAgICAgICV4bW02LCAleG1tNworICAgICAgICBtb3ZkcWEgICAgYmlhcyglcmlwKSwgJXhtbTYKKyAgICAgICAgcGFkZHEgICAgICV4bW02LCAleG1tNworICAgICAgICBwc2xscSAgICAgJDQ2LCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTAKKyAgICAgICAgYWRkbCAgICAgICQ4OTQsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxOTE2LCAlZWR4CisgICAgICAgIGphICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMgorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVheAorICAgICAgICBwaW5zcncgICAgJDMsICVlYXgsICV4bW0zCisgICAgICAgIG9ycGQgICAgICAleG1tNywgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNworICAgICAgICBtb3ZxICAgICAgJXhtbTMsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMiwgJWVkeAorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW01CisgICAgICAgIHBzcmxxICAgICAkMzgsICV4bW0zCisgICAgICAgIHBzbGxxICAgICAkMzgsICV4bW0zCisgICAgICAgIG1vdnEgICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJDE2MzY4LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDE3MTg0LCAlZWN4CisgICAgICAgIHN1YmwgICAgICAlZWR4LCAlZWN4CisgICAgICAgIHN1YmwgICAgICAkMTYyNTYsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlZHgsICVlY3gKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4yCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKy5MXzJUQUdfUEFDS0VUXzMuMC4yOgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8yLjAuMjoKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWR4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF80LjAuMgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzQuMC4yOgorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzEuMC4yOgorICAgICAgICBtb3ZsICAgICAgMzYoJXJzcCksICVlY3gKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICB1bnBja2hwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgY21wbCAgICAgICQwLCAlZWN4CisgICAgICAgIGpsICAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorICAgICAgICBmc3RjdyAgICAgKCVyc3ApCisgICAgICAgIG1vdncgICAgICAoJXJzcCksICVkeAorICAgICAgICBvcncgICAgICAgJDc2OCwgJWR4CisgICAgICAgIG1vdncgICAgICAlZHgsIDQoJXJzcCkKKyAgICAgICAgZmxkY3cgICAgIDQoJXJzcCkKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgc2FybCAgICAgICQxLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIG1vdmRxYSAgICBlbWFzayglcmlwKSwgJXhtbTYKKyAgICAgICAgcGFuZG4gICAgICV4bW0yLCAleG1tNgorICAgICAgICBhZGRsICAgICAgJDEwMjMsICVlYXgKKyAgICAgICAgbW92ZCAgICAgICVlYXgsICV4bW0zCisgICAgICAgIHBzbGxxICAgICAkNTIsICV4bW0zCisgICAgICAgIG9ycGQgICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDE2KCVyc3ApCisgICAgICAgIGZsZGwgICAgICAxNiglcnNwKQorICAgICAgICBtb3ZzZCAgICAgJXhtbTYsIDI0KCVyc3ApCisgICAgICAgIGZsZGwgICAgICAyNCglcnNwKQorICAgICAgICBtb3ZzZCAgICAgJXhtbTQsIDE2KCVyc3ApCisgICAgICAgIGZsZGwgICAgICAxNiglcnNwKQorICAgICAgICBhZGRsICAgICAgJDEwMjMsICVlZHgKKyAgICAgICAgbW92ZCAgICAgICVlZHgsICV4bW00CisgICAgICAgIHBzbGxxICAgICAkNTIsICV4bW00CisgICAgICAgIGZhZGRwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmbXVsICAgICAgJXN0LCAlc3QoMSkKKyAgICAgICAgZmFkZHAgICAgICVzdCwgJXN0KDEpCisgICAgICAgIG1vdnNkICAgICAleG1tNCwgMjQoJXJzcCkKKyAgICAgICAgZmxkbCAgICAgIDI0KCVyc3ApCisgICAgICAgIGZtdWxwICAgICAlc3QsICVzdCgxKQorICAgICAgICBmc3RwbCAgICAgMTYoJXJzcCkKKyAgICAgICAgbW92c2QgICAgIDE2KCVyc3ApLCAleG1tMAorICAgICAgICBmbGRjdyAgICAgKCVyc3ApCisgICAgICAgIHBleHRydyAgICAkMywgJXhtbTAsICVlY3gKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisgICAgICAgIGNtcGwgICAgICAkLTIxNDc0ODM2NDgsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4yCisgICAgICAgIGptcCAgICAgICAuLkIxLjUKKy5MXzJUQUdfUEFDS0VUXzYuMC4yOgorICAgICAgICBtb3ZsICAgICAgJDQxLCA4KCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorLkxfMlRBR19QQUNLRVRfOC4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMjE0NjQzNTA3MiwgJWVheAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjIKKyAgICAgICAgbW92c2QgICAgIFhNQVgoJXJpcCksICV4bW0wCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92bCAgICAgICQ0MSwgOCglcnNwKQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjIKKy5MXzJUQUdfUEFDS0VUXzkuMC4yOgorICAgICAgICBtb3ZsICAgICAgMzYoJXJzcCksICVlYXgKKyAgICAgICAgbW92bCAgICAgIDMyKCVyc3ApLCAlZWR4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkMjE0NzQ4MzY0NywgJWVheAorICAgICAgICBjbXBsICAgICAgJDIxNDY0MzUwNzIsICVlYXgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMgorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMgorICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMgorICAgICAgICBtb3ZxICAgICAgSU5GKCVyaXApLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xMS4wLjI6CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF81LjAuMgorLkxfMlRBR19QQUNLRVRfMTAuMC4yOgorICAgICAgICBtb3ZzZCAgICAgMzIoJXJzcCksICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMTIuMC4yOgorICAgICAgICBhZGRsICAgICAgJDE2MzA0LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMTU1MDQsICVlYXgKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEzLjAuMgorICAgICAgICBtb3ZhcGQgICAgY3ZsKCVyaXApLCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIDE2K2N2bCglcmlwKSwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIDMyK2N2bCglcmlwKSwgJXhtbTQKKyAgICAgICAgbW92cSAgICAgIDQ4K2N2bCglcmlwKSwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG1vdmwgICAgICAkMTYzNTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tNywgJXhtbTcKKyAgICAgICAgbW92bCAgICAgICQxNjM2OCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW03CisgICAgICAgIGFkZHBkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tNQorICAgICAgICBwc2h1ZmQgICAgJDIyOCwgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tNgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGFkZHBkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgICV4bW03LCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgcHNybHEgICAgICQyNywgJXhtbTcKKyAgICAgICAgcHNsbHEgICAgICQyNywgJXhtbTcKKyAgICAgICAgbW92cSAgICAgIEhJR0hNQVNLKCVyaXApLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tNgorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTIsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTYKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xMy4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMTYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzMuMC4yCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMzEsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjIKKyAgICAgICAgbW92bCAgICAgICQxNiwgJWVkeAorICAgICAgICB4b3JwZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDQyLCA4KCVyc3ApCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMgorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMCwgJWVheAorICAgICAgICBqbCAgICAgICAgLkxfMlRBR19QQUNLRVRfMTIuMC4yCisgICAgICAgIG1vdmwgICAgICAzNiglcnNwKSwgJWVheAorICAgICAgICBjbXBsICAgICAgJDEwODMxNzkwMDgsICVlYXgKKyAgICAgICAgamdlICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisgICAgICAgIGNtcGwgICAgICAkLTEwNDg1NzYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZsICAgICAgJDQ5MTM2LCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfNy4wLjI6CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgNDAoJXJzcCkKKy4uQjEuMzoKKyAgICAgICAgbW92cSAgICAgIDQwKCVyc3ApLCAleG1tMAorLkxfMlRBR19QQUNLRVRfMTQuMC4yOgorLi5CMS41OgorICAgICAgICBhZGRxICAgICAgJDU2LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9leHBtMS40OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV9leHBtMS41OgorRU5EKGV4cG0xKQorIyAtLSBFbmQgIGV4cG0xCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitjdjoKKwkubG9uZwkxNjk3MzUwMzk4CisJLmxvbmcJMTA3OTQ0ODkwMworCS5sb25nCTE2OTczNTAzOTgKKwkubG9uZwkxMDc5NDQ4OTAzCisJLmxvbmcJNDI3Nzc5Njg2NAorCS5sb25nCTEwNjU3NTgyNzQKKwkubG9uZwk0Mjc3Nzk2ODY0CisJLmxvbmcJMTA2NTc1ODI3NAorCS5sb25nCTMxNjQ0ODY0NTgKKwkubG9uZwkxMDI1MzA4NTcwCisJLmxvbmcJMzE2NDQ4NjQ1OAorCS5sb25nCTEwMjUzMDg1NzAKKwkubG9uZwkxOTYzMzU4Njk0CisJLmxvbmcJMTA2NTQyMzEyMQorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDY5ODk3MDQ1CisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjc3OTk4OTMKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTM4MTc3NDg3MQorCS5sb25nCTEwNjI2NTAyMjAKKwkubG9uZwkzODE3NzQ4NzEKKwkubG9uZwkxMDYyNjUwMjIwCisJLnR5cGUJY3YsQG9iamVjdAorCS5zaXplCWN2LDk2CisJLmFsaWduIDE2CitTaGlmdGVyOgorCS5sb25nCTAKKwkubG9uZwkxMTI3NzQzNDg4CisJLmxvbmcJMAorCS5sb25nCTExMjc3NDM0ODgKKwkudHlwZQlTaGlmdGVyLEBvYmplY3QKKwkuc2l6ZQlTaGlmdGVyLDE2CisJLmFsaWduIDE2CitUYmxfYWRkcjoKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTAwMDA3MDk1NQorCS5sb25nCTEwNDIxNDUzMDQKKwkubG9uZwkxMDQwMTg3MzkyCisJLmxvbmcJMTE0MTgKKwkubG9uZwk5ODgyNjc4NDkKKwkubG9uZwkxMDM5NTAwNjYwCisJLmxvbmcJMzUzOTk5MjU3NgorCS5sb25nCTIyOTYwCisJLmxvbmcJMzY3NTU0MDEKKwkubG9uZwkxMDQyMTE0MjkwCisJLmxvbmcJNDAyNjUzMTg0CisJLmxvbmcJMzQ2MjkKKwkubG9uZwkzNjM0NzY5NDgzCisJLmxvbmcJMTA0MjE3ODYyNworCS5sb25nCTE4MjAzMjc5MzYKKwkubG9uZwk0NjQyNAorCS5sb25nCTIxNTU5OTEyMjUKKwkubG9uZwkxMDQxNTYwNjgwCisJLmxvbmcJODQ3MjQ5NDA4CisJLmxvbmcJNTgzNDgKKwkubG9uZwkyNzY2OTEzMzA3CisJLmxvbmcJMTAzOTI5MzI2NAorCS5sb25nCTM0ODk2NjA5MjgKKwkubG9uZwk3MDQwMQorCS5sb25nCTM2NTExNzQ2MDIKKwkubG9uZwkxMDQwNDg4MTc1CisJLmxvbmcJMjkyNzYyNDE5MgorCS5sb25nCTgyNTg2CisJLmxvbmcJMzA3Mzg5MjEzMQorCS5sb25nCTEwNDIyNDA2MDYKKwkubG9uZwkxMDA2NjMyOTYwCisJLmxvbmcJOTQ5MDQKKwkubG9uZwkxMzI4MzkxNzQyCisJLmxvbmcJMTA0MjAxOTAzNworCS5sb25nCTM5NDI2NDU3NjAKKwkubG9uZwkxMDczNTUKKwkubG9uZwkyNjUwODkzODI1CisJLmxvbmcJMTA0MTkwMzIxMAorCS5sb25nCTgyMjA4MzU4NAorCS5sb25nCTExOTk0MworCS5sb25nCTIzOTcyODkxNTMKKwkubG9uZwkxMDQxODAyMDM3CisJLmxvbmcJMjI4MTcwMTM3NgorCS5sb25nCTEzMjY2NworCS5sb25nCTQzMDk5NzE3NQorCS5sb25nCTEwNDIxMTA2MDYKKwkubG9uZwkxODQ1NDkzNzYwCisJLmxvbmcJMTQ1NTMwCisJLmxvbmcJMTIzMDkzNjUyNQorCS5sb25nCTEwNDE4MDEwMTUKKwkubG9uZwkxNzAyODg3NDI0CisJLmxvbmcJMTU4NTMzCisJLmxvbmcJNzQwNjc1OTM1CisJLmxvbmcJMTA0MDE3ODkxMworCS5sb25nCTQxMTA0MTc5MjAKKwkubG9uZwkxNzE2NzcKKwkubG9uZwkzNDg5ODEwMjYxCisJLmxvbmcJMTA0MTgyNTk4NgorCS5sb25nCTI3OTM0MDY0NjQKKwkubG9uZwkxODQ5NjUKKwkubG9uZwkyNTMyNjAwNTMwCisJLmxvbmcJMTA0MDc2Nzg4MgorCS5sb25nCTE2Nzc3MjE2MAorCS5sb25nCTE5ODM5OAorCS5sb25nCTM1NDI1NTcwNjAKKwkubG9uZwkxMDQxODI3MjYzCisJLmxvbmcJMjk4NjM0NDQ0OAorCS5sb25nCTIxMTk3NgorCS5sb25nCTE0MDE1NjM3NzcKKwkubG9uZwkxMDQxMDYxMDkzCisJLmxvbmcJOTIyNzQ2ODgwCisJLmxvbmcJMjI1NzAzCisJLmxvbmcJMzEyOTQwNjAyNgorCS5sb25nCTEwNDE4NTI0MTMKKwkubG9uZwk4ODA4MDM4NDAKKwkubG9uZwkyMzk1NzkKKwkubG9uZwk5MDA5OTM1NzIKKwkubG9uZwkxMDM5MjgzMjM0CisJLmxvbmcJMTI3NTA2ODQxNgorCS5sb25nCTI1MzYwNgorCS5sb25nCTIxMTUwMjkzNTgKKwkubG9uZwkxMDQyMTQwMDQyCisJLmxvbmcJNTYyMDM2NzM2CisJLmxvbmcJMjY3Nzg2CisJLmxvbmcJMTA4NjY0MzE1MgorCS5sb25nCTEwNDE3ODU0MTkKKwkubG9uZwkxNjEwNjEyNzM2CisJLmxvbmcJMjgyMTIwCisJLmxvbmcJODI4NjQzNjYKKwkubG9uZwkxMDQxMjU2MjQ0CisJLmxvbmcJMzA0NTA2NDcwNAorCS5sb25nCTI5NjYxMAorCS5sb25nCTIzOTI5NjgxNTIKKwkubG9uZwkxMDQwOTEzNjgzCisJLmxvbmcJMzU3MzU0NzAwOAorCS5sb25nCTMxMTI1OAorCS5sb25nCTI5MDU4NTYxODMKKwkubG9uZwkxMDQwMDAyMjE0CisJLmxvbmcJMTk4ODEwMDA5NgorCS5sb25nCTMyNjA2NgorCS5sb25nCTM3NDIwMDgyNjEKKwkubG9uZwkxMDQwMDExMTM3CisJLmxvbmcJMTQ1MTIyOTE4NAorCS5sb25nCTM0MTAzNQorCS5sb25nCTg2MzM5Mzc5NAorCS5sb25nCTEwNDA4ODA2MjEKKwkubG9uZwk5MTQzNTgyNzIKKwkubG9uZwkzNTYxNjcKKwkubG9uZwkxNDQ2MTM2ODM3CisJLmxvbmcJMTA0MTM3MjQyNgorCS5sb25nCTM3MDc3NjQ3MzYKKwkubG9uZwkzNzE0NjMKKwkubG9uZwk5Mjc4NTUyMDEKKwkubG9uZwkxMDQwNjE3NjM2CisJLmxvbmcJMzYwNzEwMTQ0CisJLmxvbmcJMzg2OTI3CisJLmxvbmcJMTQ5MjY3OTkzOQorCS5sb25nCTEwNDEwNTAzMDYKKwkubG9uZwkyOTUyNzkwMDE2CisJLmxvbmcJNDAyNTU4CisJLmxvbmcJNjA4ODI3MDAxCisJLmxvbmcJMTA0MTU4MjIxNworCS5sb25nCTIxODEwMzgwODAKKwkubG9uZwk0MTgzNjAKKwkubG9uZwk2MDYyNjAyMDQKKwkubG9uZwkxMDQyMjcxOTg3CisJLmxvbmcJMTcxMTI3NjAzMgorCS5sb25nCTQzNDMzNAorCS5sb25nCTMxNjMwNDQwMTkKKwkubG9uZwkxMDQxODQzODUxCisJLmxvbmcJMTAwNjYzMjk2MAorCS5sb25nCTQ1MDQ4MgorCS5sb25nCTQxNDg3NDczMjUKKwkubG9uZwkxMDQxOTYyOTcyCisJLmxvbmcJMzkwMDcwMjcyMAorCS5sb25nCTQ2NjgwNQorCS5sb25nCTgwMjkyNDIwMQorCS5sb25nCTEwNDEyNzUzNzgKKwkubG9uZwkxNDQyODQwNTc2CisJLmxvbmcJNDgzMzA3CisJLmxvbmcJMzA1Mjc0OTgzMworCS5sb25nCTEwNDE5NDA1NzcKKwkubG9uZwkxOTM3NzY4NDQ4CisJLmxvbmcJNDk5OTg4CisJLmxvbmcJMjIxNjExNjM5OQorCS5sb25nCTEwNDE0ODY3NDQKKwkubG9uZwk5MTQzNTgyNzIKKwkubG9uZwk1MTY4NTEKKwkubG9uZwkyNzI5Njk3ODM2CisJLmxvbmcJMTA0MTQ0NTc2NAorCS5sb25nCTI1NjY5MTQwNDgKKwkubG9uZwk1MzM4OTcKKwkubG9uZwk1NDA2MDgzNTYKKwkubG9uZwkxMDQxMzEwOTA3CisJLmxvbmcJMjYwMDQ2ODQ4MAorCS5sb25nCTU1MTEyOQorCS5sb25nCTI5MTYzNDQ0OTMKKwkubG9uZwkxMDQwNTM1NjYxCisJLmxvbmcJMTEwNzI5NjI1NgorCS5sb25nCTU2ODU0OQorCS5sb25nCTczMTM5MTgxNAorCS5sb25nCTEwMzk0OTcwMTQKKwkubG9uZwkyNTY2OTE0MDQ4CisJLmxvbmcJNTg2MTU4CisJLmxvbmcJMTAyNDcyMjcwNAorCS5sb25nCTEwNDE0NjE2MjUKKwkubG9uZwkyOTYxMTc4NjI0CisJLmxvbmcJNjAzOTU5CisJLmxvbmcJMzgwNjgzMTc0OAorCS5sb25nCTEwNDE3MzI0OTkKKwkubG9uZwkyNjc1OTY1OTUyCisJLmxvbmcJNjIxOTU0CisJLmxvbmcJMjM4OTUzMzA0CisJLmxvbmcJMTA0MDMxNjQ4OAorCS5sb25nCTIxODk0MjY2ODgKKwkubG9uZwk2NDAxNDUKKwkubG9uZwk3NDkxMjMyMzUKKwkubG9uZwkxMDQxNzI1Nzg1CisJLmxvbmcJMjA2MzU5NzU2OAorCS5sb25nCTY1ODUzNAorCS5sb25nCTExNjgxODc5NzcKKwkubG9uZwkxMDQxMTc1MjE0CisJLmxvbmcJMjk4NjM0NDQ0OAorCS5sb25nCTY3NzEyMworCS5sb25nCTM1MDYwOTYzOTkKKwkubG9uZwkxMDQyMTg2MDk1CisJLmxvbmcJMTQyNjA2MzM2MAorCS5sb25nCTY5NTkxNQorCS5sb25nCTE0NzAyMjE2MjAKKwkubG9uZwkxMDQxNjc1NDk5CisJLmxvbmcJMjU2NjkxNDA0OAorCS5sb25nCTcxNDkxMQorCS5sb25nCTMxODI0MjUxNDYKKwkubG9uZwkxMDQxNDgzMTM0CisJLmxvbmcJMzA4NzAwNzc0NAorCS5sb25nCTczNDExNAorCS5sb25nCTMxMzE2OTgyMDgKKwkubG9uZwkxMDQyMjA4NjU3CisJLmxvbmcJNDA2ODQ3NDg4MAorCS5sb25nCTc1MzUyNgorCS5sb25nCTIzMDA1MDQxMjUKKwkubG9uZwkxMDQxNDI4NTk2CisJLmxvbmcJMjQxNTkxOTEwNAorCS5sb25nCTc3MzE1MAorCS5sb25nCTIyOTAyOTc5MzEKKwkubG9uZwkxMDM3Mzg4NDAwCisJLmxvbmcJMzcxNjE1MzM0NAorCS5sb25nCTc5Mjk4NworCS5sb25nCTM1MzIxNDgyMjMKKwkubG9uZwkxMDQxNjI2MTk0CisJLmxvbmcJNzcxNzUxOTM2CisJLmxvbmcJODEzMDQxCisJLmxvbmcJMTE2MTg4NDQwNAorCS5sb25nCTEwNDIwMTUyNTgKKwkubG9uZwkzNjk5Mzc2MTI4CisJLmxvbmcJODMzMzEyCisJLmxvbmcJODc2MzgzMTc2CisJLmxvbmcJMTAzNzk2ODg3OAorCS5sb25nCTEyNDE1MTM5ODQKKwkubG9uZwk4NTM4MDUKKwkubG9uZwkzMzc5OTg2Nzk2CisJLmxvbmcJMTA0MjIxMzE1MworCS5sb25nCTM2OTkzNzYxMjgKKwkubG9uZwk4NzQ1MjAKKwkubG9uZwkxNTQ1Nzk3NzM3CisJLmxvbmcJMTA0MTY4MTU2OQorCS5sb25nCTU4NzIwMjU2CisJLmxvbmcJODk1NDYyCisJLmxvbmcJMjkyNTE0NjgwMQorCS5sb25nCTEwNDIyMTI1NjcKKwkubG9uZwk4NTU2MzgwMTYKKwkubG9uZwk5MTY2MzEKKwkubG9uZwkxMzE2NjI3OTcxCisJLmxvbmcJMTAzODUxNjIwNAorCS5sb25nCTM4ODM5MjU1MDQKKwkubG9uZwk5MzgwMzAKKwkubG9uZwkzMjY3ODY5MTM3CisJLmxvbmcJMTA0MDMzNzAwNAorCS5sb25nCTI3MjYyOTc2MDAKKwkubG9uZwk5NTk2NjMKKwkubG9uZwkzNzIwODY4OTk5CisJLmxvbmcJMTA0MTc4MjQwOQorCS5sb25nCTM5OTI5Nzc0MDgKKwkubG9uZwk5ODE1MzEKKwkubG9uZwk0MzMzMTYxNDIKKwkubG9uZwkxMDQxOTk0MDY0CisJLmxvbmcJMTUyNjcyNjY1NgorCS5sb25nCTEwMDM2MzgKKwkubG9uZwk3ODEyMzIxMDMKKwkubG9uZwkxMDQwMDkzNDAwCisJLmxvbmcJMjE3MjY0OTQ3MgorCS5sb25nCTEwMjU5ODUKKwkudHlwZQlUYmxfYWRkcixAb2JqZWN0CisJLnNpemUJVGJsX2FkZHIsMTAyNAorCS5hbGlnbiAxNgorbW1hc2s6CisJLmxvbmcJNDI5NDk2NzIzMgorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3MjMyCisJLmxvbmcJMAorCS50eXBlCW1tYXNrLEBvYmplY3QKKwkuc2l6ZQltbWFzaywxNgorCS5hbGlnbiAxNgorYmlhczoKKwkubG9uZwk2NTQ3MgorCS5sb25nCTAKKwkubG9uZwk2NTQ3MgorCS5sb25nCTAKKwkudHlwZQliaWFzLEBvYmplY3QKKwkuc2l6ZQliaWFzLDE2CisJLmFsaWduIDE2CitlbWFzazoKKwkubG9uZwkwCisJLmxvbmcJNDI5MzkxODcyMAorCS5sb25nCTAKKwkubG9uZwk0MjkzOTE4NzIwCisJLnR5cGUJZW1hc2ssQG9iamVjdAorCS5zaXplCWVtYXNrLDE2CisJLmFsaWduIDE2Citjdmw6CisJLmxvbmcJMjc3MzkyNzczMgorCS5sb25nCTEwNTMyMzY3MDcKKwkubG9uZwkzODE3NzQ4NzEKKwkubG9uZwkxMDYyNjUwMjIwCisJLmxvbmcJMzc5NjUzODk5CisJLmxvbmcJMTA1NjU3MTg0NQorCS5sb25nCTI4NjMzMTE1MworCS5sb25nCTEwNjU0MjMxMjEKKwkubG9uZwk0MzYzMTQxMzgKKwkubG9uZwkxMDU5NzE3NTM2CisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjc3OTk4OTMKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA2OTg5NzA0NQorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLnR5cGUJY3ZsLEBvYmplY3QKKwkuc2l6ZQljdmwsNjQKKwkuYWxpZ24gOAorWE1BWDoKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMjE0NjQzNTA3MQorCS50eXBlCVhNQVgsQG9iamVjdAorCS5zaXplCVhNQVgsOAorCS5hbGlnbiA4CitJTkY6CisJLmxvbmcJMAorCS5sb25nCTIxNDY0MzUwNzIKKwkudHlwZQlJTkYsQG9iamVjdAorCS5zaXplCUlORiw4CisJLmFsaWduIDgKK0hJR0hNQVNLOgorCS5sb25nCTQyMjc4NTg0MzIKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLnR5cGUJSElHSE1BU0ssQG9iamVjdAorCS5zaXplCUhJR0hNQVNLLDgKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKy8vIC0tIEJlZ2luIERXQVJGMiBTRUdNRU5UIC5laF9mcmFtZQorCS5zZWN0aW9uIC5laF9mcmFtZSwiYSIsQHByb2diaXRzCisuZWhfZnJhbWVfc2VnOgorCS5hbGlnbiAxCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuOGJ5dGUgMHgwMDUyN2EwMTAwMDAwMDAwCisJLjhieXRlIDB4MDgwNzBjMWIwMTEwNzgwMQorCS40Ynl0ZSAweDAwMDAwMTkwCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9leHBtMS4xLS4KKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfZXhwbTEuNS0uLl9fX3RhZ192YWx1ZV9leHBtMS4xCisJLjJieXRlIDB4MDQwMAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9leHBtMS4zLS4uX19fdGFnX3ZhbHVlX2V4cG0xLjEKKwkuMmJ5dGUgMHg0MDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9leHBtMS40LS4uX19fdGFnX3ZhbHVlX2V4cG0xLjMKKwkuMmJ5dGUgMHgwODBlCisJLmJ5dGUgMHgwMAorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L3NfbG9nMXAuUyBiL2xpYm0veDg2XzY0L3NfbG9nMXAuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZmYyZDM5Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvc19sb2cxcC5TCkBAIC0wLDAgKzEsODI5IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gICAgTGV0IHg9Ml5rICogbXgsIG14IGluIFsxLDIpCisvLworLy8gICAgR2V0IEJ+MS9teCBiYXNlZCBvbiB0aGUgb3V0cHV0IG9mIHJjcHBzIGluc3RydWN0aW9uIChCMCkKKy8vICAgIEIgPSBpbnQoKEIwKjJeNyswLjUpKS8yXjcKKy8vCisvLyAgICBSZWR1Y2VkIGFyZ3VtZW50OiByPUIqbXgtMS4wIChjb21wdXRlZCBhY2N1cmF0ZWx5IGluIGhpZ2ggYW5kIGxvdyBwYXJ0cykKKy8vCisvLyAgICBSZXN1bHQ6ICBrKmxvZygyKSAtIGxvZyhCKSArIHAocikKKy8vICAgICAgICAgICAgIHAocikgaXMgYSBkZWdyZWUgNyBwb2x5bm9taWFsCisvLyAgICAgICAgICAgICAtbG9nKEIpIHJlYWQgZnJvbSBkYXRhIHRhYmxlIChoaWdoLCBsb3cgcGFydHMpCisvLyAgICAgICAgICAgICBSZXN1bHQgaXMgZm9ybWVkIGZyb20gaGlnaCBhbmQgbG93IHBhcnRzCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICAgbG9nMXAoTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgIGxvZzFwKCtJTkYpID0gdGhhdCBJTkYKKy8vICAgbG9nMXAoeCkgPSBOYU4gaWYgeCA8IC0xIG9yIHggPSAtSU5GLCBhbmQgcmFpc2VzIGludmFsaWQgZXhjZXB0aW9uCisvLyAgIGxvZzFwKC0xKSA9IC1JTkYsIGFuZCByYWlzZXMgZGl2aWRlLWJ5LXplcm8gZXhjZXB0aW9uCisvLyAgIGxvZzFwKCsvLTApID0gKy8tMAorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIGxvZzFwCitFTlRSWShsb2cxcCkKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisuLkIxLjE6CisuLl9fX3RhZ192YWx1ZV9sb2cxcC4xOgorICAgICAgICBzdWJxICAgICAgJDI0LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9sb2cxcC4zOgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDgoJXJzcCkKKy4uQjEuMjoKKyAgICAgICAgbW92cSAgICAgICQweDNmZjAwMDAwMDAwMDAwMDAsICVyYXgKKyAgICAgICAgbW92ZCAgICAgICVyYXgsICV4bW0yCisgICAgICAgIHhvcnBkICAgICAleG1tMywgJXhtbTMKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVjeAorICAgICAgICBtb3ZkICAgICAgJXJjeCwgJXhtbTQKKyAgICAgICAgbW92cSAgICAgICQweGZmZmZlMDAwMDAwMDAwMDAsICVyOAorICAgICAgICBtb3ZkICAgICAgJXI4LCAleG1tNQorICAgICAgICBtb3ZkZHVwICAgJXhtbTAsICV4bW03CisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0yLCAleG1tNgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWN4CisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgb3JwZCAgICAgICV4bW0yLCAleG1tMAorICAgICAgICBwc3JscSAgICAgJDI3LCAleG1tMAorICAgICAgICBsZWEgICAgICAgTF90YmwoJXJpcCksICVyMTEKKyAgICAgICAgcHNybGQgICAgICQyLCAleG1tMAorICAgICAgICBzdWJsICAgICAgJDE2LCAlZWF4CisgICAgICAgIGNtcGwgICAgICAkMzI3MzYsICVlYXgKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4yCisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgcmNwcHMgICAgICV4bW0wLCAleG1tMAorICAgICAgICBwc2xscSAgICAgJDEyLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIyOCwgJXhtbTUsICV4bW02CisgICAgICAgIHBzcmxxICAgICAkMTIsICV4bW0xCisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQxNjI1NiwgJWVjeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjIKKyAgICAgICAgYW5kbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBtb3ZsICAgICAgJDMyNzIwLCAlZWN4CisgICAgICAgIHN1YmwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVjeCwgJXhtbTMKKy5MXzJUQUdfUEFDS0VUXzIuMC4yOgorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW03CisgICAgICAgIHBhZGRkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICQweDM4MDAwMDAwMDAwMDAwMDAsICVyY3gKKyAgICAgICAgbW92ZCAgICAgICVyY3gsICV4bW00CisgICAgICAgIG9ycGQgICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWR4CisgICAgICAgIHBzbGxxICAgICAkMjksICV4bW0wCisgICAgICAgIGFuZHBkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYW5kcGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIHBhZGRkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtb3ZsICAgICAgJDE2MzUyLCAlZWN4CisgICAgICAgIHN1YmwgICAgICAlZWN4LCAlZWF4CisgICAgICAgIGN2dHNpMnNkICAlZWF4LCAleG1tNAorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgIGxvZzIoJXJpcCksICV4bW02CisgICAgICAgIG1vdmFwZCAgICBjb2VmZiglcmlwKSwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNQorICAgICAgICBhbmRsICAgICAgJDE2NzExNjgwLCAlZWR4CisgICAgICAgIHNocmwgICAgICAkMTIsICVlZHgKKyAgICAgICAgbW92YXBkICAgICglcjExLCVyZHgpLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgMTYrY29lZmYoJXJpcCksICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW02CisgICAgICAgIG11bHNkICAgICA4K2xvZzIoJXJpcCksICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgbW92ZGR1cCAgICV4bW0xLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIG11bHBkICAgICAleG1tNSwgJXhtbTIKKyAgICAgICAgbXVscGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBtb3ZkZHVwICAgJXhtbTAsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgIDMyK2NvZWZmKCVyaXApLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIGFkZHBkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQyMzgsICV4bW0yLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfMC4wLjI6CisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTEKKyAgICAgICAgYWRkbCAgICAgICQxNiwgJWVheAorICAgICAgICBjbXBsICAgICAgJDMyNzY4LCAlZWF4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8zLjAuMgorICAgICAgICBjbXBsICAgICAgJDAsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF81LjAuMjoKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF82LjAuMjoKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4yCisgICAgICAgIGNtcGwgICAgICAkMCwgJWVkeAorICAgICAgICBqYSAgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjIKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4yCisuTF8yVEFHX1BBQ0tFVF8zLjAuMjoKKyAgICAgICAgbW92ZCAgICAgICV4bW0xLCAlZWR4CisgICAgICAgIHBzcmxxICAgICAkMzIsICV4bW0xCisgICAgICAgIG1vdmQgICAgICAleG1tMSwgJWVjeAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJC0yMDk3MTUyLCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF82LjAuMgorICAgICAgICBvcmwgICAgICAgJWVjeCwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlZHgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4yCisuTF8yVEFHX1BBQ0tFVF83LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMQorICAgICAgICBtb3ZsICAgICAgJDE0MSwgKCVyc3ApCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisuTF8yVEFHX1BBQ0tFVF80LjAuMjoKKyAgICAgICAgeG9ycGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkNDkxMzYsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBkaXZzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIG1vdmwgICAgICAkMTQwLCAoJXJzcCkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzguMC4yCisuTF8yVEFHX1BBQ0tFVF8xLjAuMjoKKyAgICAgICAgbW92cSAgICAgIDgoJXJzcCksICV4bW0wCisgICAgICAgIGNtcGwgICAgICAkMTU1MDQsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4yCisgICAgICAgIG1vdmFwZCAgICBjb2VmZjIoJXJpcCksICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgMTYrY29lZmYyKCVyaXApLCAleG1tMgorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tMCwgJXhtbTQKKyAgICAgICAgbW92YXBkICAgIDMyK2NvZWZmMiglcmlwKSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICB4b3JwZCAgICAgJXhtbTYsICV4bW02CisgICAgICAgIG11bHBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgICV4bW0yLCAleG1tMQorICAgICAgICBwc2h1ZmQgICAgJDY4LCAleG1tNCwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtb3ZsICAgICAgJDQ5MTIwLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW00CisgICAgICAgIGFkZHBkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNQorICAgICAgICBtdWxwZCAgICAgJXhtbTQsICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMSwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNQorLkxfMlRBR19QQUNLRVRfOS4wLjI6CisgICAgICAgIGNtcGwgICAgICAkMTYsICVlY3gKKyAgICAgICAgamIgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMgorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF8xMC4wLjI6CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0xLCAleG1tMQorICAgICAgICBqbXAgICAgICAgLi5CMS41CisuTF8yVEFHX1BBQ0tFVF84LjAuMjoKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAxNiglcnNwKQorLi5CMS4zOgorICAgICAgICBtb3ZxICAgICAgMTYoJXJzcCksICV4bW0wCisuTF8yVEFHX1BBQ0tFVF8xMS4wLjI6CisuLkIxLjU6CisgICAgICAgIGFkZHEgICAgICAkMjQsICVyc3AKKy4uX19fdGFnX3ZhbHVlX2xvZzFwLjQ6CisgICAgICAgIHJldCAgICAgICAKKy4uX19fdGFnX3ZhbHVlX2xvZzFwLjU6CitFTkQobG9nMXApCisjIC0tIEVuZCAgbG9nMXAKKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK0xfdGJsOgorCS5sb25nCTQyNzc4MTEyMDAKKwkubG9uZwkxMDcyMDQ5NzMwCisJLmxvbmcJMjQ3OTMxODgzMgorCS5sb25nCTEwMjY0ODcxMjcKKwkubG9uZwkyODU0NDkyMTYwCisJLmxvbmcJMTA3MjAzMzQxMAorCS5sb25nCTIxNTYzMTU1MAorCS5sb25nCTEwMjU2Mzg5NjgKKwkubG9uZwkxNTQ3MDYxMjQ4CisJLmxvbmcJMTA3MjAxNzIxNgorCS5sb25nCTI4ODY3ODE0MzUKKwkubG9uZwkxMDI2NDIzMzk1CisJLmxvbmcJNjQ5ODI1MjgwCisJLmxvbmcJMTA3MjAwMTE0NgorCS5sb25nCTQyODE1MzM0MDUKKwkubG9uZwkxMDI0MDM4OTIzCisJLmxvbmcJNjQ2MzQ2NzUyCisJLmxvbmcJMTA3MTk4NTE5OAorCS5sb25nCTE1NjI3MzU5MjEKKwkubG9uZwkxMDIzNzkwMjc2CisJLmxvbmcJMjIwMzczNDAxNgorCS5sb25nCTEwNzE5NjkzNzAKKwkubG9uZwkxODM4Mzk3NjkxCisJLmxvbmcJMzE3MzkzNjIwOQorCS5sb25nCTE4NzIxNjk5ODQKKwkubG9uZwkxMDcxOTUzNjYxCisJLmxvbmcJMzk4MTIwMjQ2MAorCS5sb25nCTEwMjIzMjUwMTMKKwkubG9uZwk2Njk1NTc3NjAKKwkubG9uZwkxMDcxOTM4MDY5CisJLmxvbmcJNDE4MjU5NzgwMgorCS5sb25nCTMxNzMxNzQxMjIKKwkubG9uZwk0MDc2NDEzOTUyCisJLmxvbmcJMTA3MTkyMjU5MQorCS5sb25nCTEyMDkwMjkxMTEKKwkubG9uZwkzMTcwNzM2MjA3CisJLmxvbmcJNTU2MTI1MTg0CisJLmxvbmcJMTA3MTkwNzIyOAorCS5sb25nCTgyMTA4NjAyOAorCS5sb25nCTMxNzM0MzcwNDkKKwkubG9uZwkyMDQ5MTQ2ODgKKwkubG9uZwkxMDcxODkxOTc2CisJLmxvbmcJMjA5NzAyNTk4NgorCS5sb25nCTMxNzEwNzE3OTgKKwkubG9uZwkzODc1NDUwODgKKwkubG9uZwkxMDcxODc2ODM0CisJLmxvbmcJMzE0MjkzNjk5NgorCS5sb25nCTMxNzMwOTIyMTgKKwkubG9uZwkyOTEyNzgzMzYwCisJLmxvbmcJMTA3MTg2MTgwMAorCS5sb25nCTI1MDI0MjAxNDAKKwkubG9uZwkxMDI0NTA1OTE5CisJLmxvbmcJMTE0NDI2MDYwOAorCS5sb25nCTEwNzE4NDY4NzQKKwkubG9uZwkzMzE1NjU4MTQwCisJLmxvbmcJMzE3MzQ2OTg0MworCS5sb25nCTE0NzEyMDk0NzIKKwkubG9uZwkxMDcxODMyMDUzCisJLmxvbmcJMTI5NjIxMDA5CisJLmxvbmcJMzE3MjQ0Mzg3NworCS5sb25nCTE4Mjk2ODMyMDAKKwkubG9uZwkxMDcxODE3MzM2CisJLmxvbmcJMzg4NTQ2NzY5MworCS5sb25nCTEwMjU1MzUyNzUKKwkubG9uZwkyODg2NzY4NjQKKwkubG9uZwkxMDcxODAyNzIyCisJLmxvbmcJODYxMzk0NzIKKwkubG9uZwkzMTcxNjM5NzkzCisJLmxvbmcJMzYzNjM3ODYyNAorCS5sb25nCTEwNzE3ODgyMDgKKwkubG9uZwkxODUwMjM4NTg3CisJLmxvbmcJMTAyNDY1NDM0MgorCS5sb25nCTE2MDY4MTc3OTIKKwkubG9uZwkxMDcxNzczNzk1CisJLmxvbmcJMzM4ODg5OTc5NQorCS5sb25nCTMxNzM2NzU1ODYKKwkubG9uZwkxMjM2MTY0NjA4CisJLmxvbmcJMTA3MTc1OTQ4MAorCS5sb25nCTM5ODM1OTkyMDcKKwkubG9uZwkxMDIwMDQ2NTU4CisJLmxvbmcJMTA4OTYxNjg5NgorCS5sb25nCTEwNzE3NDUyNjIKKwkubG9uZwk0MTcxOTc0MjI0CisJLmxvbmcJMTAyNDc3MzE5OAorCS5sb25nCTQxNDMwOTM3NjAKKwkubG9uZwkxMDcxNzMxMTM5CisJLmxvbmcJMjcyNzU4NzQwMQorCS5sb25nCTMxNzM5NjUyMDcKKwkubG9uZwk2MDAyNjc3NzYKKwkubG9uZwkxMDcxNzE3MTEyCisJLmxvbmcJMzE0NzY4NTA0MgorCS5sb25nCTMxNzMzNTMwMzEKKwkubG9uZwkyMjQ5MzEzMjgwCisJLmxvbmcJMTA3MTcwMzE3NworCS5sb25nCTEyNTgzNTA3NAorCS5sb25nCTEwMjUyNTU4MzIKKwkubG9uZwkzODA1MzAzODA4CisJLmxvbmcJMTA3MTY4OTMzNAorCS5sb25nCTIyODk5OTEyMDcKKwkubG9uZwkxMDI1NDYwMzMxCisJLmxvbmcJODcyNzg1OTIKKwkubG9uZwkxMDcxNjc1NTgzCisJLmxvbmcJMTEwNjExNDA0NQorCS5sb25nCTEwMjU5MzM2MDIKKwkubG9uZwkzMTk1NDA1MzEyCisJLmxvbmcJMTA3MTY2MTkyMAorCS5sb25nCTM4ODUzMTY1NzYKKwkubG9uZwkzMTcxMjA2MjM5CisJLmxvbmcJMzg1MzY0OTkyMAorCS5sb25nCTEwNzE2NDgzNDYKKwkubG9uZwkyOTc3MDY5ODUyCisJLmxvbmcJMzE3MTIzNjc3MQorCS5sb25nCTI5NDQwMjY2MjQKKwkubG9uZwkxMDcxNjI1MDQ4CisJLmxvbmcJMTAwODA5MzQ5MworCS5sb25nCTEwMjM0NDQ0NzQKKwkubG9uZwkzOTkzMTgwMTYwCisJLmxvbmcJMTA3MTU5ODI0NworCS5sb25nCTE4NjIzNTU1OTUKKwkubG9uZwkxMDI0NjQyNTMzCisJLmxvbmcJMTQ1NDY0MTE1MgorCS5sb25nCTEwNzE1NzE2MTcKKwkubG9uZwkxNTE0NjAzMDg5CisJLmxvbmcJMTAyNjUwMDU5NgorCS5sb25nCTMyODYwODU2MzIKKwkubG9uZwkxMDcxNTQ1MTU0CisJLmxvbmcJMTQwMDAyODQyNAorCS5sb25nCTMxNzMyNzkwNTYKKwkubG9uZwk0Mzg3NzM3NjAKKwkubG9uZwkxMDcxNTE4ODU4CisJLmxvbmcJMTIwNzI3ODY0CisJLmxvbmcJMzE3MjE0ODkxNAorCS5sb25nCTEyMTI5NzkyMDAKKwkubG9uZwkxMDcxNDkyNzI1CisJLmxvbmcJMTYyNTA1NTU5NAorCS5sb25nCTMxNzI5MDE5MzMKKwkubG9uZwkxMTg5MDE3NjAwCisJLmxvbmcJMTA3MTQ2Njc1NAorCS5sb25nCTM5MjAwNjIzNzYKKwkubG9uZwkxMDI1NzI3NDA3CisJLmxvbmcJNDAzMDY0ODMyCisJLmxvbmcJMTA3MTQ0MDk0MworCS5sb25nCTEwNTMyNzE3MjgKKwkubG9uZwkzMTcxMzkxNDI3CisJLmxvbmcJMzM0MzIxMDQ5NgorCS5sb25nCTEwNzE0MTUyODkKKwkubG9uZwkzMjQzMzk1NTAyCisJLmxvbmcJMzE3MzYyNzYxMworCS5sb25nCTE3NjU3Nzc0MDgKKwkubG9uZwkxMDcxMzg5NzkyCisJLmxvbmcJMjE0NTk2ODUxMgorCS5sb25nCTEwMjYzNTQzMDQKKwkubG9uZwk0NjE0MzA3ODQKKwkubG9uZwkxMDcxMzY0NDQ5CisJLmxvbmcJNDA5NDMyMjI4NQorCS5sb25nCTEwMjYwMjE0NjcKKwkubG9uZwk3MTcwNjYyNAorCS5sb25nCTEwNzEzMzkyNTgKKwkubG9uZwk3NjM2MzIwMjEKKwkubG9uZwkxMDI0NDk2OTMzCisJLmxvbmcJMTM4MDUwMzU1MgorCS5sb25nCTEwNzEzMTQyMTcKKwkubG9uZwkxMzgzNTQ3OTkyCisJLmxvbmcJMzE3MzA4ODQ1MworCS5sb25nCTEwMTU3MzIyMjQKKwkubG9uZwkxMDcxMjg5MzI1CisJLmxvbmcJMzE5ODY0Njg3NworCS5sb25nCTEwMjUzOTAzMjIKKwkubG9uZwkzNTk3NzIxNgorCS5sb25nCTEwNzEyNjQ1ODAKKwkubG9uZwkyMTQxMDI2ODA1CisJLmxvbmcJMTAyNTc1NDY5MworCS5sb25nCTM5MjczMDYyNDAKKwkubG9uZwkxMDcxMjM5OTc5CisJLmxvbmcJMjgyMTE2MjcyCisJLmxvbmcJMzE3MzM5NDMzNAorCS5sb25nCTExMjUzNDExODQKKwkubG9uZwkxMDcxMjE1NTIzCisJLmxvbmcJMjc2ODQyNzUwNAorCS5sb25nCTMxNzIyNzkwNTkKKwkubG9uZwkxNjY2OTcxNjQ4CisJLmxvbmcJMTA3MTE5MTIwOAorCS5sb25nCTc4NjgzNzYyOQorCS5sb25nCTMxNzI0Mjc0NDUKKwkubG9uZwkyODI3Njk0MDgwCisJLmxvbmcJMTA3MTE2NzAzMworCS5sb25nCTM4NTcxMjI0MTYKKwkubG9uZwkzMTczMDE0MjQxCisJLmxvbmcJMjAwMzY4MzMyOAorCS5sb25nCTEwNzExNDI5OTcKKwkubG9uZwk4NTkwMTA5NTQKKwkubG9uZwkxMDI2NTQ1MDA3CisJLmxvbmcJMTAwNDAxNzY2NAorCS5sb25nCTEwNzExMTkwOTgKKwkubG9uZwkzMzU2NjQ0OTcwCisJLmxvbmcJMzE3MzQ1ODA2NAorCS5sb25nCTE3NTMwMjA0MTYKKwkubG9uZwkxMDcxMDk1MzM0CisJLmxvbmcJNzg4MzM4NTUyCisJLmxvbmcJMTAyNjE1NzY5MworCS5sb25nCTE5OTI3MTgzMzYKKwkubG9uZwkxMDcxMDcxNzA0CisJLmxvbmcJMTIzOTE3OTQ0MworCS5sb25nCTEwMjYzOTQ4ODkKKwkubG9uZwkzODcwMjM0NjI0CisJLmxvbmcJMTA3MTA0ODIwNgorCS5sb25nCTIwODI2MTQ2NjMKKwkubG9uZwkxMDI0OTI2MDUzCisJLmxvbmcJMTA1MDQzNzYzMgorCS5sb25nCTEwNzEwMjQ4NDAKKwkubG9uZwk2NjAwMDc4NDAKKwkubG9uZwkxMDI1NTQ4NDk5CisJLmxvbmcJMTg4Mzk1NTIwCisJLmxvbmcJMTA3MTAwMTYwMworCS5sb25nCTM4Nzg3OTI3MDQKKwkubG9uZwkzMTczODg5NTcxCisJLmxvbmcJMzc0NzE3NjQ0OAorCS5sb25nCTEwNzA5Nzg0OTMKKwkubG9uZwkxNDQ5OTE3MDgKKwkubG9uZwkzMTcxNTUyMDQyCisJLmxvbmcJMTQwNTY2OTM3NgorCS5sb25nCTEwNzA5NTU1MTEKKwkubG9uZwkzOTk5MDg4ODc5CisJLmxvbmcJMTAyNTQ4NjMxNworCS5sb25nCTEyMTE1MTQ4OAorCS5sb25nCTEwNzA5MzI2NTQKKwkubG9uZwkyMTcwODY1NDk3CisJLmxvbmcJMTAyNjQ3MzU4NAorCS5sb25nCTI2NTIzMTk3NDQKKwkubG9uZwkxMDcwOTA5OTIwCisJLmxvbmcJNDUzNjk1NjUyCisJLmxvbmcJMzE3MzkxNjgwOQorCS5sb25nCTMyNjIyMzY2NzIKKwkubG9uZwkxMDcwODg3MzA5CisJLmxvbmcJMTU3ODAwMDUzCisJLmxvbmcJMzE3Mzk4NDIwNgorCS5sb25nCTYwMTIyMTEyMAorCS5sb25nCTEwNzA4NjQ4MjAKKwkubG9uZwkzOTY4OTE3NjYxCisJLmxvbmcJMTAyMzk5Mjg4NgorCS5sb25nCTE5OTk4NDMzMjgKKwkubG9uZwkxMDcwODQyNDUwCisJLmxvbmcJMzA1Mzg5NTAwNAorCS5sb25nCTEwMjQ5OTgyMjgKKwkubG9uZwkxOTkyMTY3NDI0CisJLmxvbmcJMTA3MDgyMDE5OQorCS5sb25nCTI5Njg2MTQ4NTYKKwkubG9uZwkxMDI0NTUyNjUzCisJLmxvbmcJMzc4ODcyNjI3MgorCS5sb25nCTEwNzA3OTgwNjUKKwkubG9uZwkzNTQyMTcwODA4CisJLmxvbmcJMzE3MzU3MzI0MgorCS5sb25nCTIwOTQ4Mjk1NjgKKwkubG9uZwkxMDcwNzc2MDQ4CisJLmxvbmcJMTI0Njc1ODEzMgorCS5sb25nCTEwMjYyMDI4NzQKKwkubG9uZwkyODg2NzU4NDAKKwkubG9uZwkxMDcwNzU0MTQ2CisJLmxvbmcJMzc0NzMyODk1MAorCS5sb25nCTEwMjYzMzE1ODUKKwkubG9uZwkxODI5NjgxMTUyCisJLmxvbmcJMTA3MDczMjM1NworCS5sb25nCTMxMjUxOTc1NDYKKwkubG9uZwkxMDI0MTAwMzE4CisJLmxvbmcJMTY2Njg2OTI0OAorCS5sb25nCTEwNzA3MTA2ODEKKwkubG9uZwkxMzYzNjU2MTE5CisJLmxvbmcJMTAyNjMzNjQ5MworCS5sb25nCTM0MTcxMTA1MjgKKwkubG9uZwkxMDcwNjg5MTE2CisJLmxvbmcJNDE1NDc5MTU1MworCS5sb25nCTEwMjYyNjc4NTMKKwkubG9uZwkyMTgzNjUzMzc2CisJLmxvbmcJMTA3MDY2NzY2MgorCS5sb25nCTE2NzE4MTkyOTIKKwkubG9uZwkzMTczNzg1ODcwCisJLmxvbmcJMTczNDQzNDgxNgorCS5sb25nCTEwNzA2NDYzMTcKKwkubG9uZwkzNzMwOTEwNDkKKwkubG9uZwkxMDI1OTcyMzYzCisJLmxvbmcJMTYxNTY4MTUzNgorCS5sb25nCTEwNzA2MjUwODAKKwkubG9uZwkzODQ2NTA4OTcKKwkubG9uZwkxMDIyOTI2MDQzCisJLmxvbmcJMTQ0NTM4MjE0NAorCS5sb25nCTEwNzA2MDM5NTAKKwkubG9uZwkzNDQzMjAzMzAKKwkubG9uZwkzMTcyMzk3MTk2CisJLmxvbmcJMTgyMzcxNTMyOAorCS5sb25nCTEwNzA1Njk3NTYKKwkubG9uZwkzMzg5ODQxMjAwCisJLmxvbmcJMTAyNTIzMTg1MgorCS5sb25nCTM4Mzk2ODg3MDQKKwkubG9uZwkxMDcwNTI3OTE3CisJLmxvbmcJMTcwNjc5MDQxNworCS5sb25nCTMxNjczNjMzNDkKKwkubG9uZwk0MjkzMzMyOTkyCisJLmxvbmcJMTA3MDQ4NjI4NgorCS5sb25nCTE2MTQ5MzUwODgKKwkubG9uZwkxMDE5MzUxNTkxCisJLmxvbmcJMjk2NjcyMDUxMgorCS5sb25nCTEwNzA0NDQ4NjEKKwkubG9uZwk0MTQ1MzkzNzE3CisJLmxvbmcJMzE3MzcxMTY1OAorCS5sb25nCTQwNjY3Mjk5ODQKKwkubG9uZwkxMDcwNDAzNjM5CisJLmxvbmcJMTk3NDkyNTAyOAorCS5sb25nCTMxNzE0MzcxODIKKwkubG9uZwkzMzM3NjIxNTA0CisJLmxvbmcJMTA3MDM2MjYxOQorCS5sb25nCTMzMTQ5NTMxNzAKKwkubG9uZwkzMTY5OTcxMzE0CisJLmxvbmcJOTQzNDQ4MDY0CisJLmxvbmcJMTA3MDMyMTc5OQorCS5sb25nCTE0OTg2ODIwMzgKKwkubG9uZwkzMTczODYyMzQwCisJLmxvbmcJMTQ2NTYzNDgxNgorCS5sb25nCTEwNzAyODExNzYKKwkubG9uZwkxMzE5OTUyODEwCisJLmxvbmcJMzE3MTY5Mzk2NQorCS5sb25nCTEwMTU3MzQyNzIKKwkubG9uZwkxMDcwMjQwNzQ5CisJLmxvbmcJMTM0NzgyMTkyOQorCS5sb25nCTMxNzM1NDQ1MTUKKwkubG9uZwkxMTgwMDE2NjQKKwkubG9uZwkxMDcwMjAwNTE2CisJLmxvbmcJMTc1MTQ4Mjc0NgorCS5sb25nCTEwMjYxMzQwOTMKKwkubG9uZwkzNzA3MTc0OTEyCisJLmxvbmcJMTA3MDE2MDQ3NAorCS5sb25nCTE0ODY5NDYxNTkKKwkubG9uZwkxMDIzOTMwOTIwCisJLmxvbmcJMzk0NjM4MTMxMgorCS5sb25nCTEwNzAxMjA2MjMKKwkubG9uZwkyODY3NDA4MDgxCisJLmxvbmcJMzE3MTM2ODI3NgorCS5sb25nCTE2OTk4NDgxOTIKKwkubG9uZwkxMDcwMDgwOTYxCisJLmxvbmcJMjU5MDE4NzEzOQorCS5sb25nCTEwMjUzNzk4MDMKKwkubG9uZwkyMjM1ODQ2NjU2CisJLmxvbmcJMTA3MDA0MTQ4NQorCS5sb25nCTE4ODg1NjgwNjkKKwkubG9uZwkzMTcyNzU0OTYwCisJLmxvbmcJMjMzOTcyOTQwOAorCS5sb25nCTEwNzAwMDIxOTQKKwkubG9uZwkzODUyMjE0NzUzCisJLmxvbmcJMzE3MzMyMzE0OQorCS5sb25nCTMxOTY4NTAxNzYKKwkubG9uZwkxMDY5OTYzMDg2CisJLmxvbmcJNzQyMTQxNTYwCisJLmxvbmcJMTAyNTEwMTcwNworCS5sb25nCTE4MDA2ODM1MjAKKwkubG9uZwkxMDY5OTI0MTYwCisJLmxvbmcJMzk0OTUwMDQ0NAorCS5sb25nCTMxNzIxMDIxNzkKKwkubG9uZwkzODM1ODAxNjAwCisJLmxvbmcJMTA2OTg4NTQxMworCS5sb25nCTM4NDg4OTU5NDMKKwkubG9uZwkxMDI1OTEzODMyCisJLmxvbmcJMjIwMTIwMjY4OAorCS5sb25nCTEwNjk4NDY4NDUKKwkubG9uZwkxNDI1OTEzNDY0CisJLmxvbmcJMTAyNTg2ODY2NQorCS5sb25nCTI3NzgyNzk5MzYKKwkubG9uZwkxMDY5ODA4NDUzCisJLmxvbmcJMjEyMDg4OTY3NworCS5sb25nCTMxNzM4MzExMjgKKwkubG9uZwkyOTU0MjAzMTM2CisJLmxvbmcJMTA2OTc3MDIzNgorCS5sb25nCTU5MjE0NzA4MQorCS5sb25nCTEwMTk2MjEyODgKKwkubG9uZwkyMTAxNDExODQKKwkubG9uZwkxMDY5NzMyMTkzCisJLmxvbmcJMzQxNDI3NTIzMworCS5sb25nCTEwMjM2NDcwODQKKwkubG9uZwk3MDk0NzYzNTIKKwkubG9uZwkxMDY5Njk0MzIxCisJLmxvbmcJMjQxMzAyNzE2NAorCS5sb25nCTEwMjQ0NjIxMTUKKwkubG9uZwkyMTE2Mjg0NDE2CisJLmxvbmcJMTA2OTY1NjYxOQorCS5sb25nCTExNDQ1NTk5MjQKKwkubG9uZwkxMDI2MzM2NjU0CisJLmxvbmcJMjE4MzY1MTMyOAorCS5sb25nCTEwNjk2MTkwODYKKwkubG9uZwkzNDU5MDU3NjUwCisJLmxvbmcJMTAyNTYzNDE2OAorCS5sb25nCTMwNDcwNDcxNjgKKwkubG9uZwkxMDY5NTgxNzIwCisJLmxvbmcJMTg3OTY3NDkyNAorCS5sb25nCTMxNzM1MDg1NzMKKwkubG9uZwk5NzA3MTEwNDAKKwkubG9uZwkxMDY5NTQxNTIxCisJLmxvbmcJMTMzNTk1NDE3MworCS5sb25nCTMxNzMzMzIxODIKKwkubG9uZwkyMTk4NDc4ODQ4CisJLmxvbmcJMTA2OTQ2NzQ0OQorCS5sb25nCTI5NTExMDM5NjgKKwkubG9uZwkzMTczODkyMjAwCisJLmxvbmcJMTY2OTYxMTUyMAorCS5sb25nCTEwNjkzOTM3MDMKKwkubG9uZwk1MzEwNDQxNDcKKwkubG9uZwkxMDI1MTQ5MjQ4CisJLmxvbmcJMjkxMTQzNjgKKwkubG9uZwkxMDY5MzIwMjgwCisJLmxvbmcJMzMyNzgzMTI1MQorCS5sb25nCTEwMjU5MTg2NzMKKwkubG9uZwkyMzc2OTQ5NzYwCisJLmxvbmcJMTA2OTI0NzE3NgorCS5sb25nCTczNzYzNDUzMworCS5sb25nCTMxNzIxNzYwMDAKKwkubG9uZwkxMDg1MzkwODQ4CisJLmxvbmcJMTA2OTE3NDM5MAorCS5sb25nCTMxMDgyNDM0MDAKKwkubG9uZwkzMTcxODI4NDA2CisJLmxvbmcJMTU2NjEzMDE3NgorCS5sb25nCTEwNjkxMDE5MTgKKwkubG9uZwk5ODU0ODMyMjYKKwkubG9uZwkxMDI1NzA4MzgwCisJLmxvbmcJNzkyNzgwODAwCisJLmxvbmcJMTA2OTAyOTc1OAorCS5sb25nCTQxODQ4NjYyOTUKKwkubG9uZwkxMDI0NDI2MjA0CisJLmxvbmcJMTgzMTU2NzM2CisJLmxvbmcJMTA2ODk1NzkwNworCS5sb25nCTI4NDU2OTkzNzgKKwkubG9uZwkxMDIyMTA3Mjc3CisJLmxvbmcJMTMwMTc4MjUyOAorCS5sb25nCTEwNjg4ODYzNjIKKwkubG9uZwkxMDEyNzM1MjYyCisJLmxvbmcJMzE3MzgwNDI5NAorCS5sb25nCTE1NjI0MTEwMDgKKwkubG9uZwkxMDY4ODE1MTIxCisJLmxvbmcJMjE5NzA4NjcwMworCS5sb25nCTMxNzAxODc4MTMKKwkubG9uZwkyODE1NTQ5NDQwCisJLmxvbmcJMTA2ODc0NDE4MQorCS5sb25nCTI3ODI2MTMyMDcKKwkubG9uZwkxMDI2MzQ1MDU0CisJLmxvbmcJMjc1NjEyNDY3MgorCS5sb25nCTEwNjg2NzM1NDAKKwkubG9uZwkyOTI5NDg2MjA1CisJLmxvbmcJMzE3MzAzNzgwMAorCS5sb25nCTM1MTEwNTAyNDAKKwkubG9uZwkxMDY4NjAzMTk1CisJLmxvbmcJMTQ0MzczMzE0NworCS5sb25nCTMxNzMzMzE1NDkKKwkubG9uZwkzMDQ3MDQ3MTY4CisJLmxvbmcJMTA2ODUzMzE0NAorCS5sb25nCTE4Nzk2NzQ5MjQKKwkubG9uZwkzMTcyNDU5OTk3CisJLmxvbmcJMzIyMTY2Nzg0MAorCS5sb25nCTEwNjg0Mjc4MjUKKwkubG9uZwkxMzM4NTg4MDI3CisJLmxvbmcJMzE3MTgxNTc0MgorCS5sb25nCTM0NTM4NjE4ODgKKwkubG9uZwkxMDY4Mjg4ODgzCisJLmxvbmcJMTIwNTM0ODM1OQorCS5sb25nCTMxNzI2MjQ2MjYKKwkubG9uZwkzNTA2MTEwNDY0CisJLmxvbmcJMTA2ODE1MDUxNAorCS5sb25nCTg5MzEwNTE5OAorCS5sb25nCTEwMjU1NzE4NjYKKwkubG9uZwkzNDYwMTM2OTYKKwkubG9uZwkxMDY4MDEyNzE0CisJLmxvbmcJMzQ5NTU2OTAyMQorCS5sb25nCTMxNzI1NjMzNDkKKwkubG9uZwk0MDc0MDI5MDU2CisJLmxvbmcJMTA2Nzg3NTQ3NgorCS5sb25nCTM5NjExMDYzMzgKKwkubG9uZwkzMTcxMDY1NTk1CisJLmxvbmcJMzU1OTc4NDQ0OAorCS5sb25nCTEwNjc3Mzg3OTgKKwkubG9uZwkxOTc1Mzg1Mzg0CisJLmxvbmcJMzE3Mzc4MzE1NQorCS5sb25nCTc5Nzc2OTcyOAorCS5sb25nCTEwNjc2MDI2NzUKKwkubG9uZwkzNzYwMzA1Nzg3CisJLmxvbmcJMTAyNjA0NzY0MgorCS5sb25nCTIzMTM2MzM3OTIKKwkubG9uZwkxMDY3NDY3MTAxCisJLmxvbmcJMTU1OTM1MzE3MQorCS5sb25nCTEwMjM0ODAyNTYKKwkubG9uZwkzOTYwNzY2NDY0CisJLmxvbmcJMTA2NzIxMzc3OAorCS5sb25nCTEwNjczNjUxMDcKKwkubG9uZwkxMDI1ODY1OTI2CisJLmxvbmcJNjg0MjYxMzc2CisJLmxvbmcJMTA2Njk0NDgwNQorCS5sb25nCTg0NDc2MjE2NAorCS5sb25nCTMxNzM2ODc0ODIKKwkubG9uZwk2MzA3MTg0NjQKKwkubG9uZwkxMDY2Njc2OTA1CisJLmxvbmcJMjQ1ODI2OTY5NAorCS5sb25nCTEwMjQwMzMwODEKKwkubG9uZwkxNDg2MDYxNTY4CisJLmxvbmcJMTA2NjQxMDA3MAorCS5sb25nCTExNTUzNzg3NAorCS5sb25nCTMxNzMyNDM5OTUKKwkubG9uZwkyNzQzNjY0NjQwCisJLmxvbmcJMTA2NTg4Njc5MgorCS5sb25nCTM2NjUwOTgzMDQKKwkubG9uZwkzMTczNDcxNjA3CisJLmxvbmcJMTk3MTkxMjcwNAorCS5sb25nCTEwNjUzNTczMzMKKwkubG9uZwkyNTc3MjE0NDQwCisJLmxvbmcJMzE3MTk5MzQ1MQorCS5sb25nCTE0OTg5MzkzOTIKKwkubG9uZwkxMDY0MzA2NjkzCisJLmxvbmcJMzQwOTAzNjkyMworCS5sb25nCTEwMjU1OTkxNTEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLnR5cGUJTF90YmwsQG9iamVjdAorCS5zaXplCUxfdGJsLDIwNjQKKwkuYWxpZ24gMTYKK2xvZzI6CisJLmxvbmcJNDI3NzgxMTIwMAorCS5sb25nCTEwNjc4NTU0MjYKKwkubG9uZwkyNDc5MzE4ODMyCisJLmxvbmcJMTAyMjI5MjgyMworCS50eXBlCWxvZzIsQG9iamVjdAorCS5zaXplCWxvZzIsMTYKKwkuYWxpZ24gMTYKK2NvZWZmOgorCS5sb25nCTI0NTQyNjcwMjYKKwkubG9uZwkxMDY5Njk3MzE2CisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkxMDMwNzMwMTAxCisJLmxvbmcJMzIxNzM4MDcwMgorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDcwOTQ1NjIxCisJLmxvbmcJMjU3Njk4MDM3OAorCS5sb25nCTEwNzAxNzY2NjUKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS50eXBlCWNvZWZmLEBvYmplY3QKKwkuc2l6ZQljb2VmZiw0OAorCS5hbGlnbiAxNgorY29lZmYyOgorCS5sb25nCTAKKwkubG9uZwkzMjE3MDMxMTY4CisJLmxvbmcJMjU3Njk4MDM3OAorCS5sb25nCTEwNzAxNzY2NjUKKwkubG9uZwkyNDU0MjY3MDI2CisJLmxvbmcJMTA2OTY5NzMxNgorCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTMyMTczODA2OTMKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA3MDk0NTYyMQorCS50eXBlCWNvZWZmMixAb2JqZWN0CisJLnNpemUJY29lZmYyLDQ4CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisvLyAtLSBCZWdpbiBEV0FSRjIgU0VHTUVOVCAuZWhfZnJhbWUKKwkuc2VjdGlvbiAuZWhfZnJhbWUsImEiLEBwcm9nYml0cworLmVoX2ZyYW1lX3NlZzoKKwkuYWxpZ24gMQorCS40Ynl0ZSAweDAwMDAwMDE0CisJLjhieXRlIDB4MDA1MjdhMDEwMDAwMDAwMAorCS44Ynl0ZSAweDA4MDcwYzFiMDExMDc4MDEKKwkuNGJ5dGUgMHgwMDAwMDE5MAorCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfbG9nMXAuMS0uCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX2xvZzFwLjUtLi5fX190YWdfdmFsdWVfbG9nMXAuMQorCS4yYnl0ZSAweDA0MDAKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfbG9nMXAuMy0uLl9fX3RhZ192YWx1ZV9sb2cxcC4xCisJLjJieXRlIDB4MjAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfbG9nMXAuNC0uLl9fX3RhZ192YWx1ZV9sb2cxcC4zCisJLjJieXRlIDB4MDgwZQorCS5ieXRlIDB4MDAKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9zX3Npbi5TIGIvbGlibS94ODZfNjQvc19zaW4uUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZjkzYTM0Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvc19zaW4uUwpAQCAtMCwwICsxLDEzMDAgQEAKKy8qCitDb3B5cmlnaHQgKGMpIDIwMTQsIEludGVsIENvcnBvcmF0aW9uCitBbGwgcmlnaHRzIHJlc2VydmVkLgorCitSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKK21vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorCisgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsCisgICAgKiB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uCisgICAgKiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKworICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBJbnRlbCBDb3Jwb3JhdGlvbiBub3IgdGhlIG5hbWVzIG9mIGl0cyBjb250cmlidXRvcnMKKyAgICAqIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZQorICAgICogd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisKK1RISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQKK0FOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECitXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCitESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SCitBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyhJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKK0xPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgorQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyhJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCitTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyovCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvLyAgICAgICAgICAgICAgICAgICAgIEFMR09SSVRITSBERVNDUklQVElPTgorLy8gICAgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy8vCisvLyAgICAgMS4gUkFOR0UgUkVEVUNUSU9OCisvLworLy8gICAgIFdlIHBlcmZvcm0gYW4gaW5pdGlhbCByYW5nZSByZWR1Y3Rpb24gZnJvbSBYIHRvIHIgd2l0aAorLy8KKy8vICAgICAgICAgIFggPX49IE4gKiBwaS8zMiArIHIKKy8vCisvLyAgICAgc28gdGhhdCB8cnwgPD0gcGkvNjQgKyBlcHNpbG9uLiBXZSByZXN0cmljdCBpbnB1dHMgdG8gdGhvc2UKKy8vICAgICB3aGVyZSB8TnwgPD0gOTMyNTYwLiBCZXlvbmQgdGhpcywgdGhlIHJhbmdlIHJlZHVjdGlvbiBpcworLy8gICAgIGluc3VmZmljaWVudGx5IGFjY3VyYXRlLiBGb3IgZXh0cmVtZWx5IHNtYWxsIGlucHV0cywgCisvLyAgICAgZGVub3JtYWxpemF0aW9uIGNhbiBvY2N1ciBpbnRlcm5hbGx5LCBpbXBhY3RpbmcgcGVyZm9ybWFuY2UuCisvLyAgICAgVGhpcyBtZWFucyB0aGF0IHRoZSBtYWluIHBhdGggaXMgYWN0dWFsbHkgb25seSB0YWtlbiBmb3IKKy8vICAgICAyXi0yNTIgPD0gfFh8IDwgOTAxMTIuCisvLworLy8gICAgIFRvIGF2b2lkIGJyYW5jaGVzLCB3ZSBwZXJmb3JtIHRoZSByYW5nZSByZWR1Y3Rpb24gdG8gZnVsbAorLy8gICAgIGFjY3VyYWN5IGVhY2ggdGltZS4KKy8vCisvLyAgICAgICAgICBYIC0gTiAqIChQXzEgKyBQXzIgKyBQXzMpCisvLworLy8gICAgIHdoZXJlIFBfMSBhbmQgUF8yIGFyZSAzMi1iaXQgbnVtYmVycyAoc28gbXVsdGlwbGljYXRpb24gYnkgTgorLy8gICAgIGlzIGV4YWN0KSBhbmQgUF8zIGlzIGEgNTMtYml0IG51bWJlci4gVG9nZXRoZXIsIHRoZXNlCisvLyAgICAgYXBwcm94aW1hdGUgcGkgd2VsbCBlbm91Z2ggZm9yIGFsbCBjYXNlcyBpbiB0aGUgcmVzdHJpY3RlZAorLy8gICAgIHJhbmdlLgorLy8KKy8vICAgICBUaGUgbWFpbiByZWR1Y3Rpb24gc2VxdWVuY2UgaXM6CisvLworLy8gICAgICAgICAgICAgeSA9IDMyL3BpICogeAorLy8gICAgICAgICAgICAgTiA9IGludGVnZXIoeSkKKy8vICAgICAoY29tcHV0ZWQgYnkgYWRkaW5nIGFuZCBzdWJ0cmFjdGluZyBvZmYgU0hJRlRFUikKKy8vCisvLyAgICAgICAgICAgICBtXzEgPSBOICogUF8xCisvLyAgICAgICAgICAgICBtXzIgPSBOICogUF8yCisvLyAgICAgICAgICAgICByXzEgPSB4IC0gbV8xCisvLyAgICAgICAgICAgICByID0gcl8xIC0gbV8yCisvLyAgICAgKHRoaXMgciBjYW4gYmUgdXNlZCBmb3IgbW9zdCBvZiB0aGUgY2FsY3VsYXRpb24pCisvLworLy8gICAgICAgICAgICAgY18xID0gcl8xIC0gcgorLy8gICAgICAgICAgICAgbV8zID0gTiAqIFBfMworLy8gICAgICAgICAgICAgY18yID0gY18xIC0gbV8yCisvLyAgICAgICAgICAgICBjID0gY18yIC0gbV8zCisvLworLy8gICAgIDIuIE1BSU4gQUxHT1JJVEhNCisvLworLy8gICAgIFRoZSBhbGdvcml0aG0gdXNlcyBhIHRhYmxlIGxvb2t1cCBiYXNlZCBvbiBCID0gTSAqIHBpIC8gMzIKKy8vICAgICB3aGVyZSBNID0gTiBtb2QgNjQuIFRoZSBzdG9yZWQgdmFsdWVzIGFyZToKKy8vICAgICAgIHNpZ21hICAgICAgICAgICAgIGNsb3Nlc3QgcG93ZXIgb2YgMiB0byBjb3MoQikKKy8vICAgICAgIENfaGwgICAgICAgICAgICAgIDUzLWJpdCBjb3MoQikgLSBzaWdtYQorLy8gICAgICAgU19oaSArIFNfbG8gICAgICAgMiAqIDUzLWJpdCBzaW4oQikKKy8vCisvLyAgICAgVGhlIGNvbXB1dGF0aW9uIGlzIG9yZ2FuaXplZCBhcyBmb2xsb3dzOgorLy8KKy8vICAgICAgICAgIHNpbihCICsgciArIGMpID0gW3NpbihCKSArIHNpZ21hICogcl0gKworLy8gICAgICAgICAgICAgICAgICAgICAgICAgICByICogKGNvcyhCKSAtIHNpZ21hKSArCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpbihCKSAqIFtjb3MociArIGMpIC0gMV0gKworLy8gICAgICAgICAgICAgICAgICAgICAgICAgICBjb3MoQikgKiBbc2luKHIgKyBjKSAtIHJdCisvLworLy8gICAgIHdoaWNoIGlzIGFwcHJveGltYXRlbHk6CisvLworLy8gICAgICAgICAgW1NfaGkgKyBzaWdtYSAqIHJdICsKKy8vICAgICAgICAgIENfaGwgKiByICsKKy8vICAgICAgICAgIFNfbG8gKyBTX2hpICogWyhjb3MocikgLSAxKSAtIHIgKiBjXSArCisvLyAgICAgICAgICAoQ19obCArIHNpZ21hKSAqIFsoc2luKHIpIC0gcikgKyBjXQorLy8KKy8vICAgICBhbmQgdGhpcyBpcyB3aGF0IGlzIGFjdHVhbGx5IGNvbXB1dGVkLiBXZSBzZXBhcmF0ZSB0aGlzIHN1bQorLy8gICAgIGludG8gZm91ciBwYXJ0czoKKy8vCisvLyAgICAgICAgICBoaSArIG1lZCArIHBvbHMgKyBjb3JyCisvLworLy8gICAgIHdoZXJlCisvLworLy8gICAgICAgICAgaGkgICAgICAgPSBTX2hpICsgc2lnbWEgcgorLy8gICAgICAgICAgbWVkICAgICAgPSBDX2hsICogcgorLy8gICAgICAgICAgcG9scyAgICAgPSBTX2hpICogKGNvcyhyKSAtIDEpICsgKENfaGwgKyBzaWdtYSkgKiAoc2luKHIpIC0gcikKKy8vICAgICAgICAgIGNvcnIgICAgID0gU19sbyArIGMgKiAoKENfaGwgKyBzaWdtYSkgLSBTX2hpICogcikKKy8vCisvLyAgICAgMy4gUE9MWU5PTUlBTAorLy8KKy8vICAgICBUaGUgcG9seW5vbWlhbCBTX2hpICogKGNvcyhyKSAtIDEpICsgKENfaGwgKyBzaWdtYSkgKgorLy8gICAgIChzaW4ocikgLSByKSBjYW4gYmUgcmVhcnJhbmdlZCBmcmVlbHksIHNpbmNlIGl0IGlzIHF1aXRlCisvLyAgICAgc21hbGwsIHNvIHdlIGV4cGxvaXQgcGFyYWxsZWxpc20gdG8gdGhlIGZ1bGxlc3QuCisvLworLy8gICAgICAgICAgcHNjNCAgICAgICA9ICAgU0NfNCAqIHJfMQorLy8gICAgICAgICAgbXNjNCAgICAgICA9ICAgcHNjNCAqIHIKKy8vICAgICAgICAgIHIyICAgICAgICAgPSAgIHIgKiByCisvLyAgICAgICAgICBtc2MyICAgICAgID0gICBTQ18yICogcjIKKy8vICAgICAgICAgIHI0ICAgICAgICAgPSAgIHIyICogcjIKKy8vICAgICAgICAgIHBzYzMgICAgICAgPSAgIFNDXzMgKyBtc2M0CisvLyAgICAgICAgICBwc2MxICAgICAgID0gICBTQ18xICsgbXNjMgorLy8gICAgICAgICAgbXNjMyAgICAgICA9ICAgcjQgKiBwc2MzCisvLyAgICAgICAgICBzaW5jb3Nwb2xzID0gICBwc2MxICsgbXNjMworLy8gICAgICAgICAgcG9scyAgICAgICA9ICAgc2luY29zcG9scyAqCisvLyAgICAgICAgICAgICAgICAgICAgICAgICA8U19oaSAqIHJeMiB8IChDX2hsICsgc2lnbWEpICogcl4zPgorLy8KKy8vICAgICA0LiBDT1JSRUNUSU9OIFRFUk0KKy8vCisvLyAgICAgVGhpcyBpcyB3aGVyZSB0aGUgImMiIGNvbXBvbmVudCBvZiB0aGUgcmFuZ2UgcmVkdWN0aW9uIGlzCisvLyAgICAgdGFrZW4gaW50byBhY2NvdW50OyByZWNhbGwgdGhhdCBqdXN0ICJyIiBpcyB1c2VkIGZvciBtb3N0IG9mCisvLyAgICAgdGhlIGNhbGN1bGF0aW9uLgorLy8KKy8vICAgICAgICAgIC1jICAgPSBtXzMgLSBjXzIKKy8vICAgICAgICAgIC1kICAgPSBTX2hpICogciAtIChDX2hsICsgc2lnbWEpCisvLyAgICAgICAgICBjb3JyID0gLWMgKiAtZCArIFNfbG8KKy8vCisvLyAgICAgNS4gQ09NUEVOU0FURUQgU1VNTUFUSU9OUworLy8KKy8vICAgICBUaGUgdHdvIHN1Y2Nlc3NpdmUgY29tcGVuc2F0ZWQgc3VtbWF0aW9ucyBhZGQgdXAgdGhlIGhpZ2gKKy8vICAgICBhbmQgbWVkaXVtIHBhcnRzLCBsZWF2aW5nIGp1c3QgdGhlIGxvdyBwYXJ0cyB0byBhZGQgdXAgYXQKKy8vICAgICB0aGUgZW5kLgorLy8KKy8vICAgICAgICAgIHJzICAgICAgICA9ICBzaWdtYSAqIHIKKy8vICAgICAgICAgIHJlc19pbnQgICA9ICBTX2hpICsgcnMKKy8vICAgICAgICAgIGtfMCAgICAgICA9ICBTX2hpIC0gcmVzX2ludAorLy8gICAgICAgICAga18yICAgICAgID0gIGtfMCArIHJzCisvLyAgICAgICAgICBtZWQgICAgICAgPSAgQ19obCAqIHIKKy8vICAgICAgICAgIHJlc19oaSAgICA9ICByZXNfaW50ICsgbWVkCisvLyAgICAgICAgICBrXzEgICAgICAgPSAgcmVzX2ludCAtIHJlc19oaQorLy8gICAgICAgICAga18zICAgICAgID0gIGtfMSArIG1lZAorLy8KKy8vICAgICA2LiBGSU5BTCBTVU1NQVRJT04KKy8vCisvLyAgICAgV2Ugbm93IGFkZCB1cCBhbGwgdGhlIHNtYWxsIHBhcnRzOgorLy8KKy8vICAgICAgICAgIHJlc19sbyA9IHBvbHMoaGkpICsgcG9scyhsbykgKyBjb3JyICsga18xICsga18zCisvLworLy8gICAgIE5vdyB0aGUgb3ZlcmFsbCByZXN1bHQgaXMganVzdDoKKy8vCisvLyAgICAgICAgICByZXNfaGkgKyByZXNfbG8KKy8vCisvLyAgICAgNy4gU01BTEwgQVJHVU1FTlRTCisvLworLy8gICAgIElmIHx4fCA8IFNOTiAoU05OIG1lYW5pbmcgdGhlIHNtYWxsZXN0IG5vcm1hbCBudW1iZXIpLCB3ZQorLy8gICAgIHNpbXBseSBwZXJmb3JtIDAuMTExMTExMSBjZG90cyAxMTExICogeC4gRm9yIFNOTiA8PSB8eHwsIHdlCisvLyAgICAgZG8gMl4tNTUgKiAoMl41NSAqIHggLSB4KS4KKy8vCisvLyBTcGVjaWFsIGNhc2VzOgorLy8gIHNpbihOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBzaW4oSU5GKSA9IE5hTiBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICBzaW4oKy8tMCkgPSArLy0wCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgc2luCitFTlRSWShzaW4pCisjIHBhcmFtZXRlciAxOiAleG1tMAorLi5CMS4xOgorLi5fX190YWdfdmFsdWVfc2luLjE6CisgICAgICAgIHB1c2hxICAgICAlcmJ4CisuLl9fX3RhZ192YWx1ZV9zaW4uMzoKKyAgICAgICAgc3VicSAgICAgICQxNiwgJXJzcAorLi5fX190YWdfdmFsdWVfc2luLjU6CisgICAgICAgIG1vdnNkICAgICAleG1tMCwgOCglcnNwKQorLi5CMS4yOgorICAgICAgICBtb3ZsICAgICAgMTIoJXJzcCksICVlYXgKKyAgICAgICAgbW92cSAgICAgIFBJMzJJTlYoJXJpcCksICV4bW0xCisgICAgICAgIG1vdnEgICAgICBTSElGVEVSKCVyaXApLCAleG1tMgorICAgICAgICBhbmRsICAgICAgJDIxNDc0MTgxMTIsICVlYXgKKyAgICAgICAgc3VibCAgICAgICQ4MDg0NTIwOTYsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyODEzNDYwNDgsICVlYXgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIE9ORUhBTEYoJXJpcCksICV4bW01CisgICAgICAgIG1vdnEgICAgICBTSUdOX01BU0soJXJpcCksICV4bW00CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgb3JwcyAgICAgICV4bW00LCAleG1tNQorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGN2dHRzZDJzaSAleG1tMSwgJWVkeAorICAgICAgICBjdnRzaTJzZCAgJWVkeCwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgIFBfMiglcmlwKSwgJXhtbTYKKyAgICAgICAgbW92cSAgICAgICQweDNmYjkyMWZiNTQ0MDAwMDAsICVyOAorICAgICAgICBtb3ZkICAgICAgJXI4LCAleG1tMworICAgICAgICBtb3ZhcGQgICAgU0NfNCglcmlwKSwgJXhtbTUKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgbW92ZGR1cCAgICV4bW0xLCAleG1tMQorICAgICAgICBhbmRsICAgICAgJDYzLCAlZWR4CisgICAgICAgIHNobGwgICAgICAkNSwgJWVkeAorICAgICAgICBsZWEgICAgICAgQ3RhYmxlKCVyaXApLCAlcmF4CisgICAgICAgIGFkZHEgICAgICAlcmR4LCAlcmF4CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgIFBfMyglcmlwKSwgJXhtbTEKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgOCglcmF4KSwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtb3ZkZHVwICAgJXhtbTQsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICAoJXJheCksICV4bW0yCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgc3VicGQgICAgICV4bW02LCAleG1tMAorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW03CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgbW92YXBkICAgIFNDXzIoJXJpcCksICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbW92cSAgICAgIDI0KCVyYXgpLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGFkZHBkICAgICBTQ18zKCVyaXApLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgKCVyYXgpLCAleG1tNAorICAgICAgICBhZGRwZCAgICAgU0NfMSglcmlwKSwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtb3ZxICAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICA4KCVyYXgpLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIG1vdnEgICAgICA4KCVyYXgpLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgIDE2KCVyYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICB1bnBja2hwZCAgJXhtbTYsICV4bW02CisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzAuMC4xOgorICAgICAgICBqZyAgICAgICAgLkxfMlRBR19QQUNLRVRfMS4wLjEKKyAgICAgICAgc2hybCAgICAgICQyMCwgJWVheAorICAgICAgICBjbXB3ICAgICAgJDMzMjUsICVheAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjEKKyAgICAgICAgbXVsc2QgICAgIEFMTF9PTkVTKCVyaXApLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS40CisuTF8yVEFHX1BBQ0tFVF8yLjAuMToKKyAgICAgICAgbW92cSAgICAgIFRXT19QT1dfNTUoJXJpcCksICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tMworICAgICAgICBtdWxzZCAgICAgVFdPX1BPV19NNTUoJXJpcCksICV4bW0zCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzEuMC4xOgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIHN1YmwgICAgICAkMTYyMjQsICVlY3gKKyAgICAgICAgc2hybCAgICAgICQ3LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkNjU1MzIsICVlY3gKKyAgICAgICAgbGVhICAgICAgIFBJX0lOVl9UQUJMRSglcmlwKSwgJXIxMQorICAgICAgICBhZGRxICAgICAgJXIxMSwgJXJjeAorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVyYXgKKyAgICAgICAgbW92bCAgICAgIDIwKCVyY3gpLCAlcjEwZAorICAgICAgICBtb3ZsICAgICAgMjQoJXJjeCksICVyOGQKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgc2hycSAgICAgICQyMSwgJXJheAorICAgICAgICBvcmwgICAgICAgJC0yMTQ3NDgzNjQ4LCAlZWF4CisgICAgICAgIHNocmwgICAgICAkMTEsICVlYXgKKyAgICAgICAgbW92bCAgICAgICVyMTBkLCAlcjlkCisgICAgICAgIGltdWxxICAgICAlcmR4LCAlcjEwCisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcjkKKyAgICAgICAgaW11bHEgICAgICVyYXgsICVyOAorICAgICAgICBtb3ZsICAgICAgMTYoJXJjeCksICVlc2kKKyAgICAgICAgbW92bCAgICAgIDEyKCVyY3gpLCAlZWRpCisgICAgICAgIG1vdmwgICAgICAlcjEwZCwgJXIxMWQKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXIxMAorICAgICAgICBhZGRxICAgICAgJXIxMCwgJXI5CisgICAgICAgIGFkZHEgICAgICAlcjgsICVyMTEKKyAgICAgICAgbW92bCAgICAgICVyMTFkLCAlcjhkCisgICAgICAgIHNocnEgICAgICAkMzIsICVyMTEKKyAgICAgICAgYWRkcSAgICAgICVyMTEsICVyOQorICAgICAgICBtb3ZsICAgICAgJWVzaSwgJXIxMGQKKyAgICAgICAgaW11bHEgICAgICVyZHgsICVyc2kKKyAgICAgICAgaW11bHEgICAgICVyYXgsICVyMTAKKyAgICAgICAgbW92bCAgICAgICVlZGksICVyMTFkCisgICAgICAgIGltdWxxICAgICAlcmR4LCAlcmRpCisgICAgICAgIG1vdmwgICAgICAlZXNpLCAlZWJ4CisgICAgICAgIHNocnEgICAgICAkMzIsICVyc2kKKyAgICAgICAgYWRkcSAgICAgICVyYngsICVyOQorICAgICAgICBtb3ZsICAgICAgJXI5ZCwgJWVieAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcjkKKyAgICAgICAgYWRkcSAgICAgICVyc2ksICVyMTAKKyAgICAgICAgYWRkcSAgICAgICVyOSwgJXIxMAorICAgICAgICBzaGxxICAgICAgJDMyLCAlcmJ4CisgICAgICAgIG9ycSAgICAgICAlcmJ4LCAlcjgKKyAgICAgICAgaW11bHEgICAgICVyYXgsICVyMTEKKyAgICAgICAgbW92bCAgICAgIDgoJXJjeCksICVyOWQKKyAgICAgICAgbW92bCAgICAgIDQoJXJjeCksICVlc2kKKyAgICAgICAgbW92bCAgICAgICVlZGksICVlYngKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXJkaQorICAgICAgICBhZGRxICAgICAgJXJieCwgJXIxMAorICAgICAgICBtb3ZsICAgICAgJXIxMGQsICVlYngKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXIxMAorICAgICAgICBhZGRxICAgICAgJXJkaSwgJXIxMQorICAgICAgICBhZGRxICAgICAgJXIxMCwgJXIxMQorICAgICAgICBtb3ZxICAgICAgJXI5LCAlcmRpCisgICAgICAgIGltdWxxICAgICAlcmR4LCAlcjkKKyAgICAgICAgaW11bHEgICAgICVyYXgsICVyZGkKKyAgICAgICAgbW92bCAgICAgICVyOWQsICVyMTBkCisgICAgICAgIHNocnEgICAgICAkMzIsICVyOQorICAgICAgICBhZGRxICAgICAgJXIxMCwgJXIxMQorICAgICAgICBtb3ZsICAgICAgJXIxMWQsICVyMTBkCisgICAgICAgIHNocnEgICAgICAkMzIsICVyMTEKKyAgICAgICAgYWRkcSAgICAgICVyOSwgJXJkaQorICAgICAgICBhZGRxICAgICAgJXIxMSwgJXJkaQorICAgICAgICBtb3ZxICAgICAgJXJzaSwgJXI5CisgICAgICAgIGltdWxxICAgICAlcmR4LCAlcnNpCisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcjkKKyAgICAgICAgc2hscSAgICAgICQzMiwgJXIxMAorICAgICAgICBvcnEgICAgICAgJXJieCwgJXIxMAorICAgICAgICBtb3ZsICAgICAgKCVyY3gpLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZXNpLCAlcjExZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcnNpCisgICAgICAgIGFkZHEgICAgICAlcjExLCAlcmRpCisgICAgICAgIG1vdmwgICAgICAlZWRpLCAlcjExZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcmRpCisgICAgICAgIGFkZHEgICAgICAlcnNpLCAlcjkKKyAgICAgICAgYWRkcSAgICAgICVyZGksICVyOQorICAgICAgICBpbXVscSAgICAgJXJheCwgJXJkeAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWJ4CisgICAgICAgIGxlYSAgICAgICBQSV9JTlZfVEFCTEUoJXJpcCksICVyZGkKKyAgICAgICAgc3VicSAgICAgICVyZGksICVyY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQxOSwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZXNpCisgICAgICAgIGFuZGwgICAgICAlZWJ4LCAlZXNpCisgICAgICAgIHNocmwgICAgICAkNCwgJWVieAorICAgICAgICBhbmRsICAgICAgJDIwNDcsICVlYngKKyAgICAgICAgc3VibCAgICAgICQxMDIzLCAlZWJ4CisgICAgICAgIHN1YmwgICAgICAlZWJ4LCAlZWN4CisgICAgICAgIGFkZHEgICAgICAlcmR4LCAlcjkKKyAgICAgICAgbW92bCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICQzMiwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDEsICVlY3gKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4xCisgICAgICAgIG5lZ2wgICAgICAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMjksICVlY3gKKyAgICAgICAgc2hsbCAgICAgICVjbCwgJXI5ZAorICAgICAgICBtb3ZsICAgICAgJXI5ZCwgJWVkaQorICAgICAgICBhbmRsICAgICAgJDUzNjg3MDkxMSwgJXI5ZAorICAgICAgICB0ZXN0bCAgICAgJDI2ODQzNTQ1NiwgJXI5ZAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfNS4wLjEKKyAgICAgICAgc2hybCAgICAgICVjbCwgJXI5ZAorICAgICAgICBtb3ZsICAgICAgJDAsICVlYngKKyAgICAgICAgc2hscSAgICAgICQzMiwgJXI5CisgICAgICAgIG9ycSAgICAgICAlcjExLCAlcjkKKy5MXzJUQUdfUEFDS0VUXzYuMC4xOgorLkxfMlRBR19QQUNLRVRfNy4wLjE6CisgICAgICAgIGNtcHEgICAgICAkMCwgJXI5CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMQorLkxfMlRBR19QQUNLRVRfOS4wLjE6CisgICAgICAgIGJzciAgICAgICAlcjksICVyMTEKKyAgICAgICAgbW92bCAgICAgICQyOSwgJWVjeAorICAgICAgICBzdWJsICAgICAgJXIxMWQsICVlY3gKKyAgICAgICAgamxlICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMQorICAgICAgICBzaGxxICAgICAgJWNsLCAlcjkKKyAgICAgICAgbW92cSAgICAgICVyMTAsICVyYXgKKyAgICAgICAgc2hscSAgICAgICVjbCwgJXIxMAorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBhZGRsICAgICAgJDY0LCAlZWN4CisgICAgICAgIHNocnEgICAgICAlY2wsICVyYXgKKyAgICAgICAgc2hycSAgICAgICVjbCwgJXI4CisgICAgICAgIG9ycSAgICAgICAlcmF4LCAlcjkKKyAgICAgICAgb3JxICAgICAgICVyOCwgJXIxMAorLkxfMlRBR19QQUNLRVRfMTEuMC4xOgorICAgICAgICBjdnRzaTJzZHEgJXI5LCAleG1tMAorICAgICAgICBzaHJxICAgICAgJDEsICVyMTAKKyAgICAgICAgY3Z0c2kyc2RxICVyMTAsICV4bW0zCisgICAgICAgIHhvcnBkICAgICAleG1tNCwgJXhtbTQKKyAgICAgICAgc2hsbCAgICAgICQ0LCAlZWR4CisgICAgICAgIG5lZ2wgICAgICAlZWR4CisgICAgICAgIGFkZGwgICAgICAkMTYzNjgsICVlZHgKKyAgICAgICAgb3JsICAgICAgICVlc2ksICVlZHgKKyAgICAgICAgeG9ybCAgICAgICVlYngsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNAorICAgICAgICBtb3ZxICAgICAgUElfNCglcmlwKSwgJXhtbTIKKyAgICAgICAgbW92cSAgICAgIDgrUElfNCglcmlwKSwgJXhtbTYKKyAgICAgICAgeG9ycGQgICAgICV4bW01LCAleG1tNQorICAgICAgICBzdWJsICAgICAgJDEwMDgsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tNQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHNobGwgICAgICAkMTYsICVlc2kKKyAgICAgICAgc2FybCAgICAgICQzMSwgJWVzaQorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMAorICAgICAgICBzaHJsICAgICAgJDI5LCAlZWRpCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBhZGRsICAgICAgJWVzaSwgJWVkaQorICAgICAgICB4b3JsICAgICAgJWVzaSwgJWVkaQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW02CisgICAgICAgIG1vdmwgICAgICAlZWRpLCAlZWF4CisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTYKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW0yLCAleG1tNgorLkxfMlRBR19QQUNLRVRfMTIuMC4xOgorICAgICAgICBtb3ZxICAgICAgUEkzMklOViglcmlwKSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZxICAgICAgT05FSEFMRiglcmlwKSwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgIFNJR05fTUFTSyglcmlwKSwgJXhtbTQKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tNAorICAgICAgICBvcnBzICAgICAgJXhtbTQsICV4bW01CisgICAgICAgIGFkZHBkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgY3Z0dHNkMnNpICV4bW0xLCAlZWR4CisgICAgICAgIGN2dHNpMnNkICAlZWR4LCAleG1tMQorICAgICAgICBtb3ZxICAgICAgUF8xKCVyaXApLCAleG1tMworICAgICAgICBtb3ZhcGQgICAgUF8yKCVyaXApLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHVucGNrbHBkICAleG1tMSwgJXhtbTEKKyAgICAgICAgc2hsbCAgICAgICQzLCAlZWF4CisgICAgICAgIGFkZGwgICAgICAkMTg2NTIxNiwgJWVkeAorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW00CisgICAgICAgIGFkZGwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkNjMsICVlZHgKKyAgICAgICAgbW92YXBkICAgIFNDXzQoJXJpcCksICV4bW01CisgICAgICAgIGxlYSAgICAgICBDdGFibGUoJXJpcCksICVyYXgKKyAgICAgICAgc2hsbCAgICAgICQ1LCAlZWR4CisgICAgICAgIGFkZHEgICAgICAlcmR4LCAlcmF4CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgUF8zKCVyaXApLCAleG1tMQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdnEgICAgICA4KCVyYXgpLCAleG1tNworICAgICAgICB1bnBja2xwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW01CisgICAgICAgIHN1YnBkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNworICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG1vdmFwZCAgICAoJXJheCksICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbW92cSAgICAgIDI0KCVyYXgpLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgU0NfMiglcmlwKSwgJXhtbTYKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIGFkZHBkICAgICBTQ18zKCVyaXApLCAleG1tNQorICAgICAgICBtdWxzZCAgICAgKCVyYXgpLCAleG1tNAorICAgICAgICBhZGRwZCAgICAgU0NfMSglcmlwKSwgJXhtbTYKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtb3ZxICAgICAgJXhtbTMsICV4bW0wCisgICAgICAgIGFkZHNkICAgICA4KCVyYXgpLCAleG1tMworICAgICAgICBtdWxwZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNAorICAgICAgICBhZGRwZCAgICAgJXhtbTUsICV4bW02CisgICAgICAgIG1vdnEgICAgICA4KCVyYXgpLCAleG1tNQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW01CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTMKKyAgICAgICAgYWRkc2QgICAgIDE2KCVyYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTUsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICB1bnBja2hwZCAgJXhtbTYsICV4bW02CisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzguMC4xOgorICAgICAgICBhZGRsICAgICAgJDY0LCAlZWR4CisgICAgICAgIG1vdnEgICAgICAlcjEwLCAlcjkKKyAgICAgICAgbW92cSAgICAgICVyOCwgJXIxMAorICAgICAgICBtb3ZxICAgICAgJDAsICVyOAorICAgICAgICBjbXBxICAgICAgJDAsICVyOQorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjEKKyAgICAgICAgYWRkbCAgICAgICQ2NCwgJWVkeAorICAgICAgICBtb3ZxICAgICAgJXIxMCwgJXI5CisgICAgICAgIG1vdnEgICAgICAlcjgsICVyMTAKKyAgICAgICAgY21wcSAgICAgICQwLCAlcjkKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzkuMC4xCisgICAgICAgIHhvcnBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgeG9ycGQgICAgICV4bW02LCAleG1tNgorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTIuMC4xCisuTF8yVEFHX1BBQ0tFVF8xMC4wLjE6CisgICAgICAgIGplICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMS4wLjEKKyAgICAgICAgbmVnbCAgICAgICVlY3gKKyAgICAgICAgc2hycSAgICAgICVjbCwgJXIxMAorICAgICAgICBtb3ZxICAgICAgJXI5LCAlcmF4CisgICAgICAgIHNocnEgICAgICAlY2wsICVyOQorICAgICAgICBzdWJsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBhZGRsICAgICAgJDY0LCAlZWN4CisgICAgICAgIHNobHEgICAgICAlY2wsICVyYXgKKyAgICAgICAgb3JxICAgICAgICVyYXgsICVyMTAKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzExLjAuMQorLkxfMlRBR19QQUNLRVRfNC4wLjE6CisgICAgICAgIG5lZ2wgICAgICAlZWN4CisgICAgICAgIHNobHEgICAgICAkMzIsICVyOQorICAgICAgICBvcnEgICAgICAgJXIxMSwgJXI5CisgICAgICAgIHNobHEgICAgICAlY2wsICVyOQorICAgICAgICBtb3ZxICAgICAgJXI5LCAlcmRpCisgICAgICAgIHRlc3RsICAgICAkLTIxNDc0ODM2NDgsICVyOWQKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzEzLjAuMQorICAgICAgICBzaHJsICAgICAgJWNsLCAlcjlkCisgICAgICAgIG1vdmwgICAgICAkMCwgJWVieAorICAgICAgICBzaHJxICAgICAgJDMsICVyZGkKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzcuMC4xCisuTF8yVEFHX1BBQ0tFVF81LjAuMToKKyAgICAgICAgc2hybCAgICAgICVjbCwgJXI5ZAorICAgICAgICBtb3ZsICAgICAgJDUzNjg3MDkxMiwgJWVieAorICAgICAgICBzaHJsICAgICAgJWNsLCAlZWJ4CisgICAgICAgIHNobHEgICAgICAkMzIsICVyOQorICAgICAgICBvcnEgICAgICAgJXIxMSwgJXI5CisgICAgICAgIHNobHEgICAgICAkMzIsICVyYngKKyAgICAgICAgYWRkbCAgICAgICQ1MzY4NzA5MTIsICVlZGkKKyAgICAgICAgbW92cSAgICAgICQwLCAlcmN4CisgICAgICAgIG1vdnEgICAgICAkMCwgJXIxMQorICAgICAgICBzdWJxICAgICAgJXI4LCAlcmN4CisgICAgICAgIHNiYnEgICAgICAlcjEwLCAlcjExCisgICAgICAgIHNiYnEgICAgICAlcjksICVyYngKKyAgICAgICAgbW92cSAgICAgICVyY3gsICVyOAorICAgICAgICBtb3ZxICAgICAgJXIxMSwgJXIxMAorICAgICAgICBtb3ZxICAgICAgJXJieCwgJXI5CisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlYngKKyAgICAgICAgam1wICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4xCisuTF8yVEFHX1BBQ0tFVF8xMy4wLjE6CisgICAgICAgIHNocmwgICAgICAlY2wsICVyOWQKKyAgICAgICAgbW92cSAgICAgICQweDEwMDAwMDAwMCwgJXJieAorICAgICAgICBzaHJxICAgICAgJWNsLCAlcmJ4CisgICAgICAgIG1vdnEgICAgICAkMCwgJXJjeAorICAgICAgICBtb3ZxICAgICAgJDAsICVyMTEKKyAgICAgICAgc3VicSAgICAgICVyOCwgJXJjeAorICAgICAgICBzYmJxICAgICAgJXIxMCwgJXIxMQorICAgICAgICBzYmJxICAgICAgJXI5LCAlcmJ4CisgICAgICAgIG1vdnEgICAgICAlcmN4LCAlcjgKKyAgICAgICAgbW92cSAgICAgICVyMTEsICVyMTAKKyAgICAgICAgbW92cSAgICAgICVyYngsICVyOQorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWJ4CisgICAgICAgIHNocnEgICAgICAkMywgJXJkaQorICAgICAgICBhZGRsICAgICAgJDUzNjg3MDkxMiwgJWVkaQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfNy4wLjEKKy5MXzJUQUdfUEFDS0VUXzMuMC4xOgorICAgICAgICBtb3ZxICAgICAgOCglcnNwKSwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgIE5FR19aRVJPKCVyaXApLCAleG1tMAorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICglcnNwKQorLkxfMlRBR19QQUNLRVRfMTQuMC4xOgorLi5CMS40OgorICAgICAgICBhZGRxICAgICAgJDE2LCAlcnNwCisuLl9fX3RhZ192YWx1ZV9zaW4uNjoKKyAgICAgICAgcG9wcSAgICAgICVyYngKKy4uX19fdGFnX3ZhbHVlX3Npbi44OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV9zaW4uOToKK0VORChzaW4pCisjIC0tIEVuZCAgc2luCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitPTkVIQUxGOgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkudHlwZQlPTkVIQUxGLEBvYmplY3QKKwkuc2l6ZQlPTkVIQUxGLDE2CisJLmFsaWduIDE2CitQXzI6CisJLmxvbmcJNDQyNDk5MDcyCisJLmxvbmcJMTAzMjg5MzUzNworCS5sb25nCTQ0MjQ5OTA3MgorCS5sb25nCTEwMzI4OTM1MzcKKwkudHlwZQlQXzIsQG9iamVjdAorCS5zaXplCVBfMiwxNgorCS5hbGlnbiAxNgorU0NfNDoKKwkubG9uZwkyNzczOTI3NzMyCisJLmxvbmcJMTA1MzIzNjcwNworCS5sb25nCTQzNjMxNDEzOAorCS5sb25nCTEwNTY1NzE4MDgKKwkudHlwZQlTQ180LEBvYmplY3QKKwkuc2l6ZQlTQ180LDE2CisJLmFsaWduIDE2CitDdGFibGU6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkzOTMwNDczNDUKKwkubG9uZwkzMjEyMDMyMzAyCisJLmxvbmcJMzE1Njg0OTcwOAorCS5sb25nCTEwNjkwOTQ4MjIKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE1ODE4OTg0OAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTgxMTUwNjcKKwkubG9uZwkzMjE0MTI2MzQyCisJLmxvbmcJMTAxMzU1Njc0NworCS5sb25nCTEwNzAxMzU0ODAKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMzE2MDU2NzA2NQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjQ3NjU0ODY5OAorCS5sb25nCTMyMTUzMzAyODIKKwkubG9uZwk3ODU3NTE4MTQKKwkubG9uZwkxMDcwNzY1MDYyCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTMxNjE4MzgyMjEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTIyNTUxOTc2NDcKKwkubG9uZwkzMjE2MjExMTA1CisJLmxvbmcJMjc5NjQ2NDQ4MworCS5sb25nCTEwNzExNTI2MTAKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE2MDg3ODMxNworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTk0NTc2ODU2OQorCS5sb25nCTMyMTY5MTUwNDgKKwkubG9uZwk5Mzk5ODAzNDcKKwkubG9uZwkxMDcxNTI0NzAxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxMjc5NjgwOQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTUzOTY2ODM0MAorCS5sb25nCTMyMTczOTYzMjcKKwkubG9uZwk5Njc3MzE0MDAKKwkubG9uZwkxMDcxNzYxMjExCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNTc1MjE1NworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMTQwMzc1NzMwOQorCS5sb25nCTMyMTc4ODY3MTgKKwkubG9uZwk2MjEzNTQ0NTQKKwkubG9uZwkxMDcxOTI2NTE1CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxMzQ1MDYwMgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTEwNzAyMzYyODEKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMTA3MjA3OTAwNgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjMyODI3NDAKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTI0ODU0MTc4MTYKKwkubG9uZwkxMDY5NjI2MzE2CisJLmxvbmcJMTc5NjU0NDMyMQorCS5sb25nCTEwNzIyMTcyMTYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYyNjg2OTQ1CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyNTk4ODAwNTE5CisJLmxvbmcJMTA2ODI2NjQxOQorCS5sb25nCTY4ODgyNDczOQorCS5sb25nCTEwNzIzMzk4MTQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxMDQzMTUzNgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjE0MDE4MzYzMAorCS5sb25nCTMyMTQ3NTYzOTYKKwkubG9uZwk0MDUxNzQ2MjI1CisJLmxvbmcJMTA3MjQ0NTYxOAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkzMTYxOTA3Mzc3CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkxNjk5MDQzOTU3CisJLmxvbmcJMzIxNjkwMjI2MQorCS5sb25nCTM0NzYxOTY2NzgKKwkubG9uZwkxMDcyNTMzNjExCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNDI1NzYzOAorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMTk5MTA0NzIxMworCS5sb25nCTEwNjc3NTM1MjEKKwkubG9uZwkxNDU1ODI4NDQyCisJLmxvbmcJMTA3MjYwMjk0NQorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDE1NTA1MDczCisJLmxvbmcJMAorCS5sb25nCTEwNzA1OTYwOTYKKwkubG9uZwkyNDA3NDAzMDkKKwkubG9uZwkzMjE1NzI3OTAzCisJLmxvbmcJMzQ4OTA5NDgzMgorCS5sb25nCTEwNzI2NTI5NTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE0MzI1NzgzCisJLmxvbmcJMAorCS5sb25nCTEwNzA1OTYwOTYKKwkubG9uZwkyNTc1MDMwNTYKKwkubG9uZwkzMjE0NjQ3NjUzCisJLmxvbmcJMjc0ODM5Mjc0MgorCS5sb25nCTEwNzI2ODMxNDkKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMzE2MzA2MTc1MAorCS5sb25nCTAKKwkubG9uZwkxMDY5NTQ3NTIwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNTc1MDMwNTYKKwkubG9uZwkxMDY3MTY0MDA1CisJLmxvbmcJMjc0ODM5Mjc0MgorCS5sb25nCTEwNzI2ODMxNDkKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMzE2MzA2MTc1MAorCS5sb25nCTAKKwkubG9uZwkzMjE3MDMxMTY4CisJLmxvbmcJMjQwNzQwMzA5CisJLmxvbmcJMTA2ODI0NDI1NQorCS5sb25nCTM0ODkwOTQ4MzIKKwkubG9uZwkxMDcyNjUyOTUxCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNDMyNTc4MworCS5sb25nCTAKKwkubG9uZwkzMjE4MDc5NzQ0CisJLmxvbmcJMTk5MTA0NzIxMworCS5sb25nCTMyMTUyMzcxNjkKKwkubG9uZwkxNDU1ODI4NDQyCisJLmxvbmcJMTA3MjYwMjk0NQorCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkxMDE1NTA1MDczCisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkxNjk5MDQzOTU3CisJLmxvbmcJMTA2OTQxODYxMworCS5sb25nCTM0NzYxOTY2NzgKKwkubG9uZwkxMDcyNTMzNjExCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMTAxNDI1NzYzOAorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjE0MDE4MzYzMAorCS5sb25nCTEwNjcyNzI3NDgKKwkubG9uZwk0MDUxNzQ2MjI1CisJLmxvbmcJMTA3MjQ0NTYxOAorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkzMTYxOTA3Mzc3CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyNTk4ODAwNTE5CisJLmxvbmcJMzIxNTc1MDA2NworCS5sb25nCTY4ODgyNDczOQorCS5sb25nCTEwNzIzMzk4MTQKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxMDQzMTUzNgorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjQ4NTQxNzgxNgorCS5sb25nCTMyMTcxMDk5NjQKKwkubG9uZwkxNzk2NTQ0MzIxCisJLmxvbmcJMTA3MjIxNzIxNgorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTMxNjI2ODY5NDUKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTI1ODM0OTAzNTQKKwkubG9uZwkzMjE3NzE5OTI5CisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTEwNzIwNzkwMDYKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYzMjgyNzQwCisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkxNDAzNzU3MzA5CisJLmxvbmcJMTA3MDQwMzA3MAorCS5sb25nCTYyMTM1NDQ1NAorCS5sb25nCTEwNzE5MjY1MTUKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDEzNDUwNjAyCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxNTM5NjY4MzQwCisJLmxvbmcJMTA2OTkxMjY3OQorCS5sb25nCTk2NzczMTQwMAorCS5sb25nCTEwNzE3NjEyMTEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1NzUyMTU3CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxOTQ1NzY4NTY5CisJLmxvbmcJMTA2OTQzMTQwMAorCS5sb25nCTkzOTk4MDM0NworCS5sb25nCTEwNzE1MjQ3MDEKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDEyNzk2ODA5CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkyMjU1MTk3NjQ3CisJLmxvbmcJMTA2ODcyNzQ1NworCS5sb25nCTI3OTY0NjQ0ODMKKwkubG9uZwkxMDcxMTUyNjEwCisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTMxNjA4NzgzMTcKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTI0NzY1NDg2OTgKKwkubG9uZwkxMDY3ODQ2NjM0CisJLmxvbmcJNzg1NzUxODE0CisJLmxvbmcJMTA3MDc2NTA2MgorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkzMTYxODM4MjIxCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkxODExNTA2NworCS5sb25nCTEwNjY2NDI2OTQKKwkubG9uZwkxMDEzNTU2NzQ3CisJLmxvbmcJMTA3MDEzNTQ4MAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkzMTYwNTY3MDY1CisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkzOTMwNDczNDUKKwkubG9uZwkxMDY0NTQ4NjU0CisJLmxvbmcJMzE1Njg0OTcwOAorCS5sb25nCTEwNjkwOTQ4MjIKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE1ODE4OTg0OAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTMyMjAxNzY4OTYKKwkubG9uZwkzOTMwNDczNDUKKwkubG9uZwkxMDY0NTQ4NjU0CisJLmxvbmcJMzE1Njg0OTcwOAorCS5sb25nCTMyMTY1Nzg0NzAKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxMDcwNjIwMAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTgxMTUwNjcKKwkubG9uZwkxMDY2NjQyNjk0CisJLmxvbmcJMTAxMzU1Njc0NworCS5sb25nCTMyMTc2MTkxMjgKKwkubG9uZwkzMjIxMjI1NDcyCisJLmxvbmcJMTAxMzA4MzQxNworCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMjQ3NjU0ODY5OAorCS5sb25nCTEwNjc4NDY2MzQKKwkubG9uZwk3ODU3NTE4MTQKKwkubG9uZwkzMjE4MjQ4NzEwCisJLmxvbmcJMjY4NDM1NDU2MAorCS5sb25nCTEwMTQzNTQ1NzMKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTIyNTUxOTc2NDcKKwkubG9uZwkxMDY4NzI3NDU3CisJLmxvbmcJMjc5NjQ2NDQ4MworCS5sb25nCTMyMTg2MzYyNTgKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxMzM5NDY2OQorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTk0NTc2ODU2OQorCS5sb25nCTEwNjk0MzE0MDAKKwkubG9uZwk5Mzk5ODAzNDcKKwkubG9uZwkzMjE5MDA4MzQ5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MDI4MDQ1NworCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTUzOTY2ODM0MAorCS5sb25nCTEwNjk5MTI2NzkKKwkubG9uZwk5Njc3MzE0MDAKKwkubG9uZwkzMjE5MjQ0ODU5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MzIzNTgwNQorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMTQwMzc1NzMwOQorCS5sb25nCTEwNzA0MDMwNzAKKwkubG9uZwk2MjEzNTQ0NTQKKwkubG9uZwkzMjE5NDEwMTYzCisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MDkzNDI1MAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTMyMTc3MTk5MjkKKwkubG9uZwkxNzE5NjE0NDEzCisJLmxvbmcJMzIxOTU2MjY1NAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTU3OTkwOTIKKwkubG9uZwkwCisJLmxvbmcJMzIxOTEyODMyMAorCS5sb25nCTI0ODU0MTc4MTYKKwkubG9uZwkzMjE3MTA5OTY0CisJLmxvbmcJMTc5NjU0NDMyMQorCS5sb25nCTMyMTk3MDA4NjQKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1MjAzMjk3CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkyNTk4ODAwNTE5CisJLmxvbmcJMzIxNTc1MDA2NworCS5sb25nCTY4ODgyNDczOQorCS5sb25nCTMyMTk4MjM0NjIKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE1NzkxNTE4NAorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMjE0MDE4MzYzMAorCS5sb25nCTEwNjcyNzI3NDgKKwkubG9uZwk0MDUxNzQ2MjI1CisJLmxvbmcJMzIxOTkyOTI2NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDE0NDIzNzI5CisJLmxvbmcJMAorCS5sb25nCTMyMTkxMjgzMjAKKwkubG9uZwkxNjk5MDQzOTU3CisJLmxvbmcJMTA2OTQxODYxMworCS5sb25nCTM0NzYxOTY2NzgKKwkubG9uZwkzMjIwMDE3MjU5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MTc0MTI4NgorCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLmxvbmcJMTk5MTA0NzIxMworCS5sb25nCTMyMTUyMzcxNjkKKwkubG9uZwkxNDU1ODI4NDQyCisJLmxvbmcJMzIyMDA4NjU5MworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTYyOTg4NzIxCisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkyNDA3NDAzMDkKKwkubG9uZwkxMDY4MjQ0MjU1CisJLmxvbmcJMzQ4OTA5NDgzMgorCS5sb25nCTMyMjAxMzY1OTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYxODA5NDMxCisJLmxvbmcJMAorCS5sb25nCTMyMTgwNzk3NDQKKwkubG9uZwkyNTc1MDMwNTYKKwkubG9uZwkxMDY3MTY0MDA1CisJLmxvbmcJMjc0ODM5Mjc0MgorCS5sb25nCTMyMjAxNjY3OTcKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTAxNTU3ODEwMgorCS5sb25nCTAKKwkubG9uZwkzMjE3MDMxMTY4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzIyMDE3Njg5NgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNTc1MDMwNTYKKwkubG9uZwkzMjE0NjQ3NjUzCisJLmxvbmcJMjc0ODM5Mjc0MgorCS5sb25nCTMyMjAxNjY3OTcKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTAxNTU3ODEwMgorCS5sb25nCTAKKwkubG9uZwkxMDY5NTQ3NTIwCisJLmxvbmcJMjQwNzQwMzA5CisJLmxvbmcJMzIxNTcyNzkwMworCS5sb25nCTM0ODkwOTQ4MzIKKwkubG9uZwkzMjIwMTM2NTk5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MTgwOTQzMQorCS5sb25nCTAKKwkubG9uZwkxMDcwNTk2MDk2CisJLmxvbmcJMTk5MTA0NzIxMworCS5sb25nCTEwNjc3NTM1MjEKKwkubG9uZwkxNDU1ODI4NDQyCisJLmxvbmcJMzIyMDA4NjU5MworCS5sb25nCTM3NTgwOTYzODQKKwkubG9uZwkzMTYyOTg4NzIxCisJLmxvbmcJMAorCS5sb25nCTEwNzA1OTYwOTYKKwkubG9uZwkxNjk5MDQzOTU3CisJLmxvbmcJMzIxNjkwMjI2MQorCS5sb25nCTM0NzYxOTY2NzgKKwkubG9uZwkzMjIwMDE3MjU5CisJLmxvbmcJNTM2ODcwOTEyCisJLmxvbmcJMzE2MTc0MTI4NgorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjE0MDE4MzYzMAorCS5sb25nCTMyMTQ3NTYzOTYKKwkubG9uZwk0MDUxNzQ2MjI1CisJLmxvbmcJMzIxOTkyOTI2NgorCS5sb25nCTIxNDc0ODM2NDgKKwkubG9uZwkxMDE0NDIzNzI5CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkyNTk4ODAwNTE5CisJLmxvbmcJMTA2ODI2NjQxOQorCS5sb25nCTY4ODgyNDczOQorCS5sb25nCTMyMTk4MjM0NjIKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMzE1NzkxNTE4NAorCS5sb25nCTAKKwkubG9uZwkxMDcxNjQ0NjcyCisJLmxvbmcJMjQ4NTQxNzgxNgorCS5sb25nCTEwNjk2MjYzMTYKKwkubG9uZwkxNzk2NTQ0MzIxCisJLmxvbmcJMzIxOTcwMDg2NAorCS5sb25nCTUzNjg3MDkxMgorCS5sb25nCTEwMTUyMDMyOTcKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS5sb25nCTI1ODM0OTAzNTQKKwkubG9uZwkxMDcwMjM2MjgxCisJLmxvbmcJMTcxOTYxNDQxMworCS5sb25nCTMyMTk1NjI2NTQKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkxMDE1Nzk5MDkyCisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkxNDAzNzU3MzA5CisJLmxvbmcJMzIxNzg4NjcxOAorCS5sb25nCTYyMTM1NDQ1NAorCS5sb25nCTMyMTk0MTAxNjMKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYwOTM0MjUwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxNTM5NjY4MzQwCisJLmxvbmcJMzIxNzM5NjMyNworCS5sb25nCTk2NzczMTQwMAorCS5sb25nCTMyMTkyNDQ4NTkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYzMjM1ODA1CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxOTQ1NzY4NTY5CisJLmxvbmcJMzIxNjkxNTA0OAorCS5sb25nCTkzOTk4MDM0NworCS5sb25nCTMyMTkwMDgzNDkKKwkubG9uZwk1MzY4NzA5MTIKKwkubG9uZwkzMTYwMjgwNDU3CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyMjU1MTk3NjQ3CisJLmxvbmcJMzIxNjIxMTEwNQorCS5sb25nCTI3OTY0NjQ0ODMKKwkubG9uZwkzMjE4NjM2MjU4CisJLmxvbmcJMzc1ODA5NjM4NAorCS5sb25nCTEwMTMzOTQ2NjkKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI0NzY1NDg2OTgKKwkubG9uZwkzMjE1MzMwMjgyCisJLmxvbmcJNzg1NzUxODE0CisJLmxvbmcJMzIxODI0ODcxMAorCS5sb25nCTI2ODQzNTQ1NjAKKwkubG9uZwkxMDE0MzU0NTczCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxODExNTA2NworCS5sb25nCTMyMTQxMjYzNDIKKwkubG9uZwkxMDEzNTU2NzQ3CisJLmxvbmcJMzIxNzYxOTEyOAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxMDEzMDgzNDE3CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkzOTMwNDczNDUKKwkubG9uZwkzMjEyMDMyMzAyCisJLmxvbmcJMzE1Njg0OTcwOAorCS5sb25nCTMyMTY1Nzg0NzAKKwkubG9uZwkzNzU4MDk2Mzg0CisJLmxvbmcJMTAxMDcwNjIwMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLnR5cGUJQ3RhYmxlLEBvYmplY3QKKwkuc2l6ZQlDdGFibGUsMjA0OAorCS5hbGlnbiAxNgorU0NfMjoKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDY1NDIzMTIxCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNjc3OTk4OTMKKwkudHlwZQlTQ18yLEBvYmplY3QKKwkuc2l6ZQlTQ18yLDE2CisJLmFsaWduIDE2CitTQ18zOgorCS5sb25nCTQzNjMxNDEzOAorCS5sb25nCTMyMDcyMDExODQKKwkubG9uZwkzODE3NzQ4NzEKKwkubG9uZwkzMjEwMTMzODY4CisJLnR5cGUJU0NfMyxAb2JqZWN0CisJLnNpemUJU0NfMywxNgorCS5hbGlnbiAxNgorU0NfMToKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMzIxNzM4MDY5MworCS5sb25nCTAKKwkubG9uZwkzMjE5MTI4MzIwCisJLnR5cGUJU0NfMSxAb2JqZWN0CisJLnNpemUJU0NfMSwxNgorCS5hbGlnbiAxNgorUElfSU5WX1RBQkxFOgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjczNDI2MTEwMgorCS5sb25nCTEzMTMwODQ3MTMKKwkubG9uZwk0MjMwNDM2ODE3CisJLmxvbmcJNDExMzg4MjU2MAorCS5sb25nCTM2ODA2NzExMjkKKwkubG9uZwkxMDExMDYwODAxCisJLmxvbmcJNDI2Njc0Njc5NQorCS5sb25nCTM3MzY4NDc3MTMKKwkubG9uZwkzMDcyNjE4MDQyCisJLmxvbmcJMTExMjM5NjUxMgorCS5sb25nCTEwNTQ1OTQzNAorCS5sb25nCTE2NDcyOTM3MgorCS5sb25nCTQyNjMzNzM1OTYKKwkubG9uZwkyOTcyMjk3MDIyCisJLmxvbmcJMzkwMDg0NzYwNQorCS5sb25nCTc4NDAyNDcwOAorCS5sb25nCTM5MTkzNDM2NTQKKwkubG9uZwkzMDI2MTU3MTIxCisJLmxvbmcJOTY1ODU4ODczCisJLmxvbmcJMjIwMzI2OTYyMAorCS5sb25nCTI2MjU5MjA5MDcKKwkubG9uZwkzMTg3MjIyNTg3CisJLmxvbmcJNTM2Mzg1NTM1CisJLmxvbmcJMzcyNDkwODU1OQorCS5sb25nCTQwMTI4MzkzMDcKKwkubG9uZwkxNTEwNjMyNzM1CisJLmxvbmcJMTgzMjI4Nzk1MQorCS5sb25nCTY2NzYxNzcxOQorCS5sb25nCTEzMzAwMDM4MTQKKwkubG9uZwkyNjU3MDg1OTk3CisJLmxvbmcJMTk2NTUzNzk5MQorCS5sb25nCTM5NTc3MTUzMjMKKwkubG9uZwkxMDIzODgzNzY3CisJLmxvbmcJMjMyMDY2NzM3MAorCS5sb25nCTE4MTE2MzYxNDUKKwkubG9uZwk1MjkzNTgwODgKKwkubG9uZwkxNDQzMDQ5NTQyCisJLmxvbmcJNDIzNTk0NjkyMworCS5sb25nCTQwNDAxNDU5NTMKKwkudHlwZQlQSV9JTlZfVEFCTEUsQG9iamVjdAorCS5zaXplCVBJX0lOVl9UQUJMRSwxNjQKKwkuc3BhY2UgMTIsIDB4MDAgCSMgcGFkCisJLmFsaWduIDE2CitQSV80OgorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkxMDcyMjQzMTk1CisJLmxvbmcJNDA3Mjc5NzY5CisJLmxvbmcJMTA0Njc1ODQ0NQorCS50eXBlCVBJXzQsQG9iamVjdAorCS5zaXplCVBJXzQsMTYKKwkuYWxpZ24gOAorUEkzMklOVjoKKwkubG9uZwkxODQxOTQwNjExCisJLmxvbmcJMTA3NjEyNTQ4OAorCS50eXBlCVBJMzJJTlYsQG9iamVjdAorCS5zaXplCVBJMzJJTlYsOAorCS5hbGlnbiA4CitTSElGVEVSOgorCS5sb25nCTAKKwkubG9uZwkxMTI3NzQzNDg4CisJLnR5cGUJU0hJRlRFUixAb2JqZWN0CisJLnNpemUJU0hJRlRFUiw4CisJLmFsaWduIDgKK1NJR05fTUFTSzoKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS50eXBlCVNJR05fTUFTSyxAb2JqZWN0CisJLnNpemUJU0lHTl9NQVNLLDgKKwkuYWxpZ24gOAorUF8zOgorCS5sb25nCTc3MTk3NzMzMQorCS5sb25nCTk5NjM1MDM0NgorCS50eXBlCVBfMyxAb2JqZWN0CisJLnNpemUJUF8zLDgKKwkuYWxpZ24gOAorQUxMX09ORVM6CisJLmxvbmcJNDI5NDk2NzI5NQorCS5sb25nCTEwNzI2OTMyNDcKKwkudHlwZQlBTExfT05FUyxAb2JqZWN0CisJLnNpemUJQUxMX09ORVMsOAorCS5hbGlnbiA4CitUV09fUE9XXzU1OgorCS5sb25nCTAKKwkubG9uZwkxMTMwMzY0OTI4CisJLnR5cGUJVFdPX1BPV181NSxAb2JqZWN0CisJLnNpemUJVFdPX1BPV181NSw4CisJLmFsaWduIDgKK1RXT19QT1dfTTU1OgorCS5sb25nCTAKKwkubG9uZwkxMDE1MDIxNTY4CisJLnR5cGUJVFdPX1BPV19NNTUsQG9iamVjdAorCS5zaXplCVRXT19QT1dfTTU1LDgKKwkuYWxpZ24gOAorUF8xOgorCS5sb25nCTE0MTM0ODA0NDgKKwkubG9uZwkxMDY5MDk3NDY3CisJLnR5cGUJUF8xLEBvYmplY3QKKwkuc2l6ZQlQXzEsOAorCS5hbGlnbiA4CitORUdfWkVSTzoKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS50eXBlCU5FR19aRVJPLEBvYmplY3QKKwkuc2l6ZQlORUdfWkVSTyw4CisJLmRhdGEKKwkuc2VjdGlvbiAubm90ZS5HTlUtc3RhY2ssICIiCisvLyAtLSBCZWdpbiBEV0FSRjIgU0VHTUVOVCAuZWhfZnJhbWUKKwkuc2VjdGlvbiAuZWhfZnJhbWUsImEiLEBwcm9nYml0cworLmVoX2ZyYW1lX3NlZzoKKwkuYWxpZ24gMQorCS40Ynl0ZSAweDAwMDAwMDE0CisJLjhieXRlIDB4MDA1MjdhMDEwMDAwMDAwMAorCS44Ynl0ZSAweDA4MDcwYzFiMDExMDc4MDEKKwkuNGJ5dGUgMHgwMDAwMDE5MAorCS40Ynl0ZSAweDAwMDAwMDJjCisJLjRieXRlIDB4MDAwMDAwMWMKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfc2luLjEtLgorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9zaW4uOS0uLl9fX3RhZ192YWx1ZV9zaW4uMQorCS4yYnl0ZSAweDA0MDAKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfc2luLjMtLi5fX190YWdfdmFsdWVfc2luLjEKKwkuNGJ5dGUgMHgwMjgzMTAwZQorCS5ieXRlIDB4MDQKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfc2luLjUtLi5fX190YWdfdmFsdWVfc2luLjMKKwkuMmJ5dGUgMHgyMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV9zaW4uNi0uLl9fX3RhZ192YWx1ZV9zaW4uNQorCS40Ynl0ZSAweDA0YzMxMDBlCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3Npbi44LS4uX19fdGFnX3ZhbHVlX3Npbi42CisJLjJieXRlIDB4MDgwZQorIyBFbmQKZGlmZiAtLWdpdCBhL2xpYm0veDg2XzY0L3NfdGFuLlMgYi9saWJtL3g4Nl82NC9zX3Rhbi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc0Y2IwNDQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL3g4Nl82NC9zX3Rhbi5TCkBAIC0wLDAgKzEsMjIzOSBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8vICAgICAgICAgICAgICAgICAgICAgQUxHT1JJVEhNIERFU0NSSVBUSU9OCisvLyAgICAgICAgICAgICAgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQorLy8KKy8vIFBvbHlub21pYWxzIGNvZWZmaWNpZW50cyBhbmQgb3RoZXIgY29uc3RhbnRzLgorLy8KKy8vIE5vdGUgdGhhdCBpbiB0aGlzIGFsZ29yaXRobSwgdGhlcmUgaXMgYSBkaWZmZXJlbnQgcG9seW5vbWlhbCBmb3IKKy8vIGVhY2ggYnJlYWtwb2ludCwgc28gdGhlcmUgYXJlIDMyIHNldHMgb2YgcG9seW5vbWlhbCBjb2VmZmljaWVudHMKKy8vIGFzIHdlbGwgYXMgMzIgaW5zdGFuY2VzIG9mIHRoZSBvdGhlciBjb25zdGFudHMuCisvLworLy8gVGhlIHBvbHlub21pYWwgY29lZmZpY2llbnRzIGFuZCBjb25zdGFudHMgYXJlIG9mZnNldCBmcm9tIHRoZSBzdGFydAorLy8gb2YgdGhlIG1haW4gYmxvY2sgYXMgZm9sbG93czoKKy8vCisvLyAgIDA6ICBjOCB8IGMwCisvLyAgMTY6ICBjOSB8IGMxCisvLyAgMzI6IGMxMCB8IGMyCisvLyAgNDg6IGMxMSB8IGMzCisvLyAgNjQ6IGMxMiB8IGM0CisvLyAgODA6IGMxMyB8IGM1CisvLyAgOTY6IGMxNCB8IGM2CisvLyAxMTI6IGMxNSB8IGM3CisvLyAxMjg6IFRfaGkKKy8vIDEzNjogVF9sbworLy8gMTQ0OiBTaWdtYQorLy8gMTUyOiBUX2hsCisvLyAxNjA6IFRhdQorLy8gMTY4OiBNYXNrCisvLyAxNzY6IChlbmQgb2YgYmxvY2spCisvLworLy8gVGhlIHRvdGFsIHRhYmxlIHNpemUgaXMgdGhlcmVmb3JlIDU2MzIgYnl0ZXMuCisvLworLy8gTm90ZSB0aGF0IGMwIGFuZCBjMSBhcmUgYWx3YXlzIHplcm8uIFdlIGNvdWxkIHRyeSBzdG9yaW5nCisvLyBvdGhlciBjb25zdGFudHMgaGVyZSwgYW5kIGp1c3QgbG9hZGluZyB0aGUgbG93IHBhcnQgb2YgdGhlCisvLyBTSU1EIHJlZ2lzdGVyIGluIHRoZXNlIGNhc2VzLCBhZnRlciBlbnN1cmluZyB0aGUgaGlnaCBwYXJ0CisvLyBpcyB6ZXJvLgorLy8KKy8vIFRoZSBoaWdoZXIgdGVybXMgb2YgdGhlIHBvbHlub21pYWwgYXJlIGNvbXB1dGVkIGluIHRoZSAqbG93KgorLy8gcGFydCBvZiB0aGUgU0lNRCByZWdpc3Rlci4gVGhpcyBpcyBzbyB3ZSBjYW4gb3ZlcmxhcCB0aGUKKy8vIG11bHRpcGxpY2F0aW9uIGJ5IHJeOCBhbmQgdGhlIHVucGFja2luZyBvZiB0aGUgb3RoZXIgcGFydC4KKy8vCisvLyBUaGUgY29uc3RhbnRzIGFyZToKKy8vIFRfaGkgKyBUX2xvID0gYWNjdXJhdGUgY29uc3RhbnQgdGVybSBpbiBwb3dlciBzZXJpZXMKKy8vIFNpZ21hICsgVF9obCA9IGFjY3VyYXRlIGNvZWZmaWNpZW50IG9mIHIgaW4gcG93ZXIgc2VyaWVzIChTaWdtYT0xIGJpdCkKKy8vIFRhdSA9IG11bHRpcGxpZXIgZm9yIHRoZSByZWNpcHJvY2FsLCBhbHdheXMgLTEgb3IgMAorLy8KKy8vIFRoZSBiYXNpYyByZWNvbnN0cnVjdGlvbiBmb3JtdWxhIHVzaW5nIHRoZXNlIGNvbnN0YW50cyBpczoKKy8vCisvLyBIaWdoID0gdGF1ICogcmVjaXBfaGkgKyB0X2hpCisvLyBNZWQgPSAoc2duICogciArIHRfaGwgKiByKV9oaQorLy8gTG93ID0gKHNnbiAqIHIgKyB0X2hsICogcilfbG8gKworLy8gICAgICAgdGF1ICogcmVjaXBfbG8gKyBUX2xvICsgKFRfaGwgKyBzaWdtYSkgKiBjICsgcG9sCisvLworLy8gd2hlcmUgcG9sID0gYzAgKyBjMSAqIHIgKyBjMiAqIHJeMiArIC4uLiArIGMxNSAqIHJeMTUKKy8vCisvLyAoYzAgPSBjMSA9IDAsIGJ1dCB1c2luZyB0aGVtIGtlZXBzIFNJTUQgcmVndWxhcml0eSkKKy8vCisvLyBXZSB0aGVuIGRvIGEgY29tcGVuc2F0ZWQgc3VtIEhpZ2ggKyBNZWQsIGFkZCB0aGUgbG93IHBhcnRzIHRvZ2V0aGVyCisvLyBhbmQgdGhlbiBkbyB0aGUgZmluYWwgc3VtLgorLy8KKy8vIEhlcmUgcmVjaXBfaGkgKyByZWNpcF9sbyBpcyBhbiBhY2N1cmF0ZSByZWNpcHJvY2FsIG9mIHRoZSByZW1haW5kZXIKKy8vIG1vZHVsbyBwaS8yCisvLworLy8gU3BlY2lhbCBjYXNlczoKKy8vICB0YW4oTmFOKSA9IHF1aWV0IE5hTiwgYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgdGFuKElORikgPSBOYU4gYW5kIHJhaXNlIGludmFsaWQgZXhjZXB0aW9uCisvLyAgdGFuKCsvLTApID0gKy8tMAorLy8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKKyNpbmNsdWRlIDxwcml2YXRlL2Jpb25pY19hc20uaD4KKyMgLS0gQmVnaW4gIHRhbgorRU5UUlkodGFuKQorIyBwYXJhbWV0ZXIgMTogJXhtbTAKKy4uQjEuMToKKy4uX19fdGFnX3ZhbHVlX3Rhbi4xOgorICAgICAgICBwdXNocSAgICAgJXJieAorLi5fX190YWdfdmFsdWVfdGFuLjM6CisgICAgICAgIHN1YnEgICAgICAkMTYsICVyc3AKKy4uX19fdGFnX3ZhbHVlX3Rhbi41OgorICAgICAgICBtb3ZzZCAgICAgJXhtbTAsIDgoJXJzcCkKKy4uQjEuMjoKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDMyNzY3LCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTYzMTQsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQyNzAsICVlYXgKKyAgICAgICAgamEgICAgICAgIC5MXzJUQUdfUEFDS0VUXzAuMC4xCisgICAgICAgIG1vdmFwZCAgICBPTkVIQUxGKCVyaXApLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgTVVMMTYoJXJpcCksICV4bW02CisgICAgICAgIHVucGNrbHBkICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92YXBkICAgIHNpZ25fbWFzayglcmlwKSwgJXhtbTQKKyAgICAgICAgYW5kcGQgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgUEkzMklOViglcmlwKSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBvcnBzICAgICAgJXhtbTQsICV4bW01CisgICAgICAgIGFkZHBkICAgICAleG1tNSwgJXhtbTEKKyAgICAgICAgbW92YXBkICAgICV4bW0xLCAleG1tNworICAgICAgICB1bnBja2hwZCAgJXhtbTcsICV4bW03CisgICAgICAgIGN2dHRzZDJzaSAleG1tNywgJWVkeAorICAgICAgICBjdnR0cGQyZHEgJXhtbTEsICV4bW0xCisgICAgICAgIGN2dGRxMnBkICAleG1tMSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW02LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgUF8xKCVyaXApLCAleG1tMworICAgICAgICBtb3ZxICAgICAgUVFfMiglcmlwKSwgJXhtbTUKKyAgICAgICAgYWRkcSAgICAgICQ0NjkyNDgsICVyZHgKKyAgICAgICAgbW92YXBkICAgIFBfMiglcmlwKSwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMworICAgICAgICBhbmRxICAgICAgJDMxLCAlcmR4CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgbW92cSAgICAgICVyZHgsICVyY3gKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tNAorICAgICAgICBzaGxxICAgICAgJDEsICVyY3gKKyAgICAgICAgc3VicGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgUF8zKCVyaXApLCAleG1tMQorICAgICAgICBhZGRxICAgICAgJXJjeCwgJXJkeAorICAgICAgICBzaGxxICAgICAgJDIsICVyY3gKKyAgICAgICAgYWRkcSAgICAgICVyY3gsICVyZHgKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0yCisgICAgICAgIHN1YnBkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgIE9ORSglcmlwKSwgJXhtbTYKKyAgICAgICAgc2hscSAgICAgICQ0LCAlcmR4CisgICAgICAgIGxlYSAgICAgICBDdGFibGUoJXJpcCksICVyYXgKKyAgICAgICAgYW5kcGQgICAgIE1BU0tfMzUoJXJpcCksICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgYWRkcSAgICAgICVyZHgsICVyYXgKKyAgICAgICAgc3VicGQgICAgICV4bW0wLCAleG1tMgorICAgICAgICB1bnBja2hwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIGRpdnNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgc3VicGQgICAgICV4bW00LCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgMTYoJXJheCksICV4bW03CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNworICAgICAgICBzdWJwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICA0OCglcmF4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgOTYoJXJheCksICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMgorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgICglcmF4KSwgJXhtbTcKKyAgICAgICAgYWRkcGQgICAgIDMyKCVyYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIGFkZHBkICAgICA4MCglcmF4KSwgJXhtbTQKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgMTEyKCVyYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTAsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tNAorICAgICAgICBtb3ZhcGQgICAgNjQoJXJheCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgICV4bW0xLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgJXhtbTMsICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgMTQ0KCVyYXgpLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgYWRkcGQgICAgICV4bW00LCAleG1tNworICAgICAgICBtb3ZxICAgICAgJXhtbTEsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgdW5wY2tocGQgICV4bW03LCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIHVucGNraHBkICAleG1tMSwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMworICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIGFkZHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW0yLCAleG1tNAorICAgICAgICBtb3ZxICAgICAgMTQ0KCVyYXgpLCAleG1tNworICAgICAgICB1bnBja2hwZCAgJXhtbTIsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAxNTIoJXJheCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgIDEzNiglcmF4KSwgJXhtbTcKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIG1vdnEgICAgICBPTkUoJXJpcCksICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTQKKyAgICAgICAgbW92cSAgICAgIDE2OCglcmF4KSwgJXhtbTIKKyAgICAgICAgYW5kcGQgICAgICV4bW02LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW01CisgICAgICAgIG11bHNkICAgICAxNjAoJXJheCksICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tNSwgJXhtbTcKKyAgICAgICAgc3Vic2QgICAgIDEyOCglcmF4KSwgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tNworICAgICAgICBtdWxzZCAgICAgJXhtbTYsICV4bW03CisgICAgICAgIG1vdnEgICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tMworICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMiwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMAorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW0wCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNAorLkxfMlRBR19QQUNLRVRfMC4wLjE6CisgICAgICAgIGpnICAgICAgICAuTF8yVEFHX1BBQ0tFVF8xLjAuMQorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZWF4LCAlZWR4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzIuMC4xCisgICAgICAgIGFuZGwgICAgICAkMzI3NjcsICVlZHgKKyAgICAgICAgY21wbCAgICAgICQxNTkwNCwgJWVkeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjEKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIG1vdnEgICAgICBRXzExKCVyaXApLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgUV85KCVyaXApLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0xCisgICAgICAgIGFkZHNkICAgICBRXzcoJXJpcCksICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgIFFfNSglcmlwKSwgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgUV8zKCVyaXApLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMSwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNAorLkxfMlRBR19QQUNLRVRfMy4wLjE6CisgICAgICAgIG1vdnEgICAgICBUV09fUE9XXzU1KCVyaXApLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgIFRXT19QT1dfTTU1KCVyaXApLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS40CisuTF8yVEFHX1BBQ0tFVF8yLjAuMToKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTEsICV4bW0xCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzEuMC4xOgorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWF4CisgICAgICAgIGFuZGwgICAgICAkMzI3NTIsICVlYXgKKyAgICAgICAgY21wbCAgICAgICQzMjc1MiwgJWVheAorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfNC4wLjEKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVjeAorICAgICAgICBhbmRsICAgICAgJDMyNzUyLCAlZWN4CisgICAgICAgIHN1YmwgICAgICAkMTYyMjQsICVlY3gKKyAgICAgICAgc2hybCAgICAgICQ3LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAkNjU1MzIsICVlY3gKKyAgICAgICAgbGVhICAgICAgIFBJX0lOVl9UQUJMRSglcmlwKSwgJXIxMQorICAgICAgICBhZGRxICAgICAgJXIxMSwgJXJjeAorICAgICAgICBtb3ZkICAgICAgJXhtbTAsICVyYXgKKyAgICAgICAgbW92bCAgICAgIDIwKCVyY3gpLCAlcjEwZAorICAgICAgICBtb3ZsICAgICAgMjQoJXJjeCksICVyOGQKKyAgICAgICAgbW92bCAgICAgICVlYXgsICVlZHgKKyAgICAgICAgc2hycSAgICAgICQyMSwgJXJheAorICAgICAgICBvcmwgICAgICAgJC0yMTQ3NDgzNjQ4LCAlZWF4CisgICAgICAgIHNocmwgICAgICAkMTEsICVlYXgKKyAgICAgICAgbW92bCAgICAgICVyMTBkLCAlcjlkCisgICAgICAgIGltdWxxICAgICAlcmR4LCAlcjEwCisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcjkKKyAgICAgICAgaW11bHEgICAgICVyYXgsICVyOAorICAgICAgICBtb3ZsICAgICAgMTYoJXJjeCksICVlc2kKKyAgICAgICAgbW92bCAgICAgIDEyKCVyY3gpLCAlZWRpCisgICAgICAgIG1vdmwgICAgICAlcjEwZCwgJXIxMWQKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXIxMAorICAgICAgICBhZGRxICAgICAgJXIxMCwgJXI5CisgICAgICAgIGFkZHEgICAgICAlcjgsICVyMTEKKyAgICAgICAgbW92bCAgICAgICVyMTFkLCAlcjhkCisgICAgICAgIHNocnEgICAgICAkMzIsICVyMTEKKyAgICAgICAgYWRkcSAgICAgICVyMTEsICVyOQorICAgICAgICBtb3ZsICAgICAgJWVzaSwgJXIxMGQKKyAgICAgICAgaW11bHEgICAgICVyZHgsICVyc2kKKyAgICAgICAgaW11bHEgICAgICVyYXgsICVyMTAKKyAgICAgICAgbW92bCAgICAgICVlZGksICVyMTFkCisgICAgICAgIGltdWxxICAgICAlcmR4LCAlcmRpCisgICAgICAgIG1vdmwgICAgICAlZXNpLCAlZWJ4CisgICAgICAgIHNocnEgICAgICAkMzIsICVyc2kKKyAgICAgICAgYWRkcSAgICAgICVyYngsICVyOQorICAgICAgICBtb3ZsICAgICAgJXI5ZCwgJWVieAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcjkKKyAgICAgICAgYWRkcSAgICAgICVyc2ksICVyMTAKKyAgICAgICAgYWRkcSAgICAgICVyOSwgJXIxMAorICAgICAgICBzaGxxICAgICAgJDMyLCAlcmJ4CisgICAgICAgIG9ycSAgICAgICAlcmJ4LCAlcjgKKyAgICAgICAgaW11bHEgICAgICVyYXgsICVyMTEKKyAgICAgICAgbW92bCAgICAgIDgoJXJjeCksICVyOWQKKyAgICAgICAgbW92bCAgICAgIDQoJXJjeCksICVlc2kKKyAgICAgICAgbW92bCAgICAgICVlZGksICVlYngKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXJkaQorICAgICAgICBhZGRxICAgICAgJXJieCwgJXIxMAorICAgICAgICBtb3ZsICAgICAgJXIxMGQsICVlYngKKyAgICAgICAgc2hycSAgICAgICQzMiwgJXIxMAorICAgICAgICBhZGRxICAgICAgJXJkaSwgJXIxMQorICAgICAgICBhZGRxICAgICAgJXIxMCwgJXIxMQorICAgICAgICBtb3ZxICAgICAgJXI5LCAlcmRpCisgICAgICAgIGltdWxxICAgICAlcmR4LCAlcjkKKyAgICAgICAgaW11bHEgICAgICVyYXgsICVyZGkKKyAgICAgICAgbW92bCAgICAgICVyOWQsICVyMTBkCisgICAgICAgIHNocnEgICAgICAkMzIsICVyOQorICAgICAgICBhZGRxICAgICAgJXIxMCwgJXIxMQorICAgICAgICBtb3ZsICAgICAgJXIxMWQsICVyMTBkCisgICAgICAgIHNocnEgICAgICAkMzIsICVyMTEKKyAgICAgICAgYWRkcSAgICAgICVyOSwgJXJkaQorICAgICAgICBhZGRxICAgICAgJXIxMSwgJXJkaQorICAgICAgICBtb3ZxICAgICAgJXJzaSwgJXI5CisgICAgICAgIGltdWxxICAgICAlcmR4LCAlcnNpCisgICAgICAgIGltdWxxICAgICAlcmF4LCAlcjkKKyAgICAgICAgc2hscSAgICAgICQzMiwgJXIxMAorICAgICAgICBvcnEgICAgICAgJXJieCwgJXIxMAorICAgICAgICBtb3ZsICAgICAgKCVyY3gpLCAlZWF4CisgICAgICAgIG1vdmwgICAgICAlZXNpLCAlcjExZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcnNpCisgICAgICAgIGFkZHEgICAgICAlcjExLCAlcmRpCisgICAgICAgIG1vdmwgICAgICAlZWRpLCAlcjExZAorICAgICAgICBzaHJxICAgICAgJDMyLCAlcmRpCisgICAgICAgIGFkZHEgICAgICAlcnNpLCAlcjkKKyAgICAgICAgYWRkcSAgICAgICVyZGksICVyOQorICAgICAgICBpbXVscSAgICAgJXJheCwgJXJkeAorICAgICAgICBwZXh0cncgICAgJDMsICV4bW0wLCAlZWJ4CisgICAgICAgIGxlYSAgICAgICBQSV9JTlZfVEFCTEUoJXJpcCksICVyZGkKKyAgICAgICAgc3VicSAgICAgICVyZGksICVyY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICQxOSwgJWVjeAorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZXNpCisgICAgICAgIGFuZGwgICAgICAlZWJ4LCAlZXNpCisgICAgICAgIHNocmwgICAgICAkNCwgJWVieAorICAgICAgICBhbmRsICAgICAgJDIwNDcsICVlYngKKyAgICAgICAgc3VibCAgICAgICQxMDIzLCAlZWJ4CisgICAgICAgIHN1YmwgICAgICAlZWJ4LCAlZWN4CisgICAgICAgIGFkZHEgICAgICAlcmR4LCAlcjkKKyAgICAgICAgbW92bCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgYWRkbCAgICAgICQzMiwgJWVkeAorICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgamwgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4xCisgICAgICAgIG5lZ2wgICAgICAlZWN4CisgICAgICAgIGFkZGwgICAgICAkMjksICVlY3gKKyAgICAgICAgc2hsbCAgICAgICVjbCwgJXI5ZAorICAgICAgICBtb3ZsICAgICAgJXI5ZCwgJWVkaQorICAgICAgICBhbmRsICAgICAgJDEwNzM3NDE4MjMsICVyOWQKKyAgICAgICAgdGVzdGwgICAgICQ1MzY4NzA5MTIsICVyOWQKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzYuMC4xCisgICAgICAgIHNocmwgICAgICAlY2wsICVyOWQKKyAgICAgICAgbW92bCAgICAgICQwLCAlZWJ4CisgICAgICAgIHNobHEgICAgICAkMzIsICVyOQorICAgICAgICBvcnEgICAgICAgJXIxMSwgJXI5CisuTF8yVEFHX1BBQ0tFVF83LjAuMToKKy5MXzJUQUdfUEFDS0VUXzguMC4xOgorICAgICAgICBjbXBxICAgICAgJDAsICVyOQorICAgICAgICBqZSAgICAgICAgLkxfMlRBR19QQUNLRVRfOS4wLjEKKy5MXzJUQUdfUEFDS0VUXzEwLjAuMToKKyAgICAgICAgYnNyICAgICAgICVyOSwgJXIxMQorICAgICAgICBtb3ZsICAgICAgJDI5LCAlZWN4CisgICAgICAgIHN1YmwgICAgICAlcjExZCwgJWVjeAorICAgICAgICBqbGUgICAgICAgLkxfMlRBR19QQUNLRVRfMTEuMC4xCisgICAgICAgIHNobHEgICAgICAlY2wsICVyOQorICAgICAgICBtb3ZxICAgICAgJXIxMCwgJXJheAorICAgICAgICBzaGxxICAgICAgJWNsLCAlcjEwCisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIG5lZ2wgICAgICAlZWN4CisgICAgICAgIGFkZGwgICAgICAkNjQsICVlY3gKKyAgICAgICAgc2hycSAgICAgICVjbCwgJXJheAorICAgICAgICBzaHJxICAgICAgJWNsLCAlcjgKKyAgICAgICAgb3JxICAgICAgICVyYXgsICVyOQorICAgICAgICBvcnEgICAgICAgJXI4LCAlcjEwCisuTF8yVEFHX1BBQ0tFVF8xMi4wLjE6CisgICAgICAgIGN2dHNpMnNkcSAlcjksICV4bW0wCisgICAgICAgIHNocnEgICAgICAkMSwgJXIxMAorICAgICAgICBjdnRzaTJzZHEgJXIxMCwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW00LCAleG1tNAorICAgICAgICBzaGxsICAgICAgJDQsICVlZHgKKyAgICAgICAgbmVnbCAgICAgICVlZHgKKyAgICAgICAgYWRkbCAgICAgICQxNjM2OCwgJWVkeAorICAgICAgICBvcmwgICAgICAgJWVzaSwgJWVkeAorICAgICAgICB4b3JsICAgICAgJWVieCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW00CisgICAgICAgIG1vdnEgICAgICBQSV80KCVyaXApLCAleG1tMgorICAgICAgICBtb3ZxICAgICAgOCtQSV80KCVyaXApLCAleG1tNworICAgICAgICB4b3JwZCAgICAgJXhtbTUsICV4bW01CisgICAgICAgIHN1YmwgICAgICAkMTAwOCwgJWVkeAorICAgICAgICBwaW5zcncgICAgJDMsICVlZHgsICV4bW01CisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgc2hsbCAgICAgICQxNiwgJWVzaQorICAgICAgICBzYXJsICAgICAgJDMxLCAlZXNpCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTMKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIHNocmwgICAgICAkMzAsICVlZGkKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIGFkZGwgICAgICAlZXNpLCAlZWRpCisgICAgICAgIHhvcmwgICAgICAlZXNpLCAlZWRpCisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTcKKyAgICAgICAgbW92bCAgICAgICVlZGksICVlYXgKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tNworICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgc3Vic2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW03CisgICAgICAgIG1vdmFwZCAgICBQSTMySU5WKCVyaXApLCAleG1tMQorICAgICAgICBtb3ZkZHVwICAgJXhtbTAsICV4bW0wCisgICAgICAgIG1vdmFwZCAgICBzaWduX21hc2soJXJpcCksICV4bW00CisgICAgICAgIGFuZHBkICAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBtb3ZkZHVwICAgJXhtbTcsICV4bW03CisgICAgICAgIG1vdmFwZCAgICBPTkVIQUxGKCVyaXApLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgTVVMMTYoJXJpcCksICV4bW02CisgICAgICAgIG9ycHMgICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW01LCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgJXhtbTEsICV4bW01CisgICAgICAgIHVucGNraHBkICAleG1tNSwgJXhtbTUKKyAgICAgICAgY3Z0dHNkMnNpICV4bW01LCAlZWR4CisgICAgICAgIGN2dHRwZDJkcSAleG1tMSwgJXhtbTEKKyAgICAgICAgY3Z0ZHEycGQgICV4bW0xLCAleG1tMQorICAgICAgICBtdWxwZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICBQXzEoJXJpcCksICV4bW0zCisgICAgICAgIG1vdnEgICAgICBRUV8yKCVyaXApLCAleG1tNQorICAgICAgICBzaGxsICAgICAgJDQsICVlYXgKKyAgICAgICAgYWRkbCAgICAgICQ0NjkyNDgsICVlZHgKKyAgICAgICAgbW92YXBkICAgIFBfMiglcmlwKSwgJXhtbTQKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMworICAgICAgICBhZGRsICAgICAgJWVheCwgJWVkeAorICAgICAgICBhbmRsICAgICAgJDMxLCAlZWR4CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgbW92bCAgICAgICVlZHgsICVlY3gKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tNAorICAgICAgICBzaGxsICAgICAgJDEsICVlY3gKKyAgICAgICAgc3VicGQgICAgICV4bW0zLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgUF8zKCVyaXApLCAleG1tMQorICAgICAgICBhZGRsICAgICAgJWVjeCwgJWVkeAorICAgICAgICBzaGxsICAgICAgJDIsICVlY3gKKyAgICAgICAgYWRkbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNQorICAgICAgICBtb3ZhcGQgICAgJXhtbTAsICV4bW0yCisgICAgICAgIHN1YnBkICAgICAleG1tNCwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgIE9ORSglcmlwKSwgJXhtbTYKKyAgICAgICAgc2hsbCAgICAgICQ0LCAlZWR4CisgICAgICAgIGxlYSAgICAgICBDdGFibGUoJXJpcCksICVyYXgKKyAgICAgICAgYW5kcGQgICAgIE1BU0tfMzUoJXJpcCksICV4bW01CisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgYWRkcSAgICAgICVyZHgsICVyYXgKKyAgICAgICAgc3VicGQgICAgICV4bW0wLCAleG1tMgorICAgICAgICB1bnBja2hwZCAgJXhtbTAsICV4bW0wCisgICAgICAgIGRpdnNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgc3VicGQgICAgICV4bW00LCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIHN1YnBkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgbW92YXBkICAgIDQ4KCVyYXgpLCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAxNiglcmF4KSwgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNworICAgICAgICBtb3ZhcGQgICAgOTYoJXJheCksICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0yCisgICAgICAgIG1vdmFwZCAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgKCVyYXgpLCAleG1tNworICAgICAgICBhZGRwZCAgICAgMzIoJXJheCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkcGQgICAgIDgwKCVyYXgpLCAleG1tNAorICAgICAgICBhZGRwZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdmFwZCAgICAxMTIoJXJheCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRwZCAgICAgJXhtbTEsICV4bW00CisgICAgICAgIG1vdmFwZCAgICA2NCglcmF4KSwgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMQorICAgICAgICBhZGRwZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIG1vdmFwZCAgICAleG1tMywgJXhtbTEKKyAgICAgICAgbXVscGQgICAgICV4bW0wLCAleG1tMworICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0wCisgICAgICAgIG11bHBkICAgICAxNDQoJXJheCksICV4bW0xCisgICAgICAgIG11bHBkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tMworICAgICAgICBhZGRwZCAgICAgJXhtbTQsICV4bW03CisgICAgICAgIG1vdnEgICAgICAleG1tMSwgJXhtbTQKKyAgICAgICAgbXVsc2QgICAgICV4bW03LCAleG1tMAorICAgICAgICB1bnBja2hwZCAgJXhtbTcsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgdW5wY2tocGQgICV4bW0xLCAleG1tMQorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBtb3ZxICAgICAgJXhtbTIsICV4bW00CisgICAgICAgIG1vdnEgICAgICAxNDQoJXJheCksICV4bW03CisgICAgICAgIHVucGNraHBkICAleG1tMiwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgIDE1MiglcmF4KSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tNworICAgICAgICBhZGRzZCAgICAgMTM2KCVyYXgpLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW03CisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgbW92cSAgICAgIE9ORSglcmlwKSwgJXhtbTcKKyAgICAgICAgbXVsc2QgICAgICV4bW02LCAleG1tNAorICAgICAgICBtb3ZxICAgICAgMTY4KCVyYXgpLCAleG1tMgorICAgICAgICBhbmRwZCAgICAgJXhtbTYsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTUKKyAgICAgICAgbXVsc2QgICAgIDE2MCglcmF4KSwgJXhtbTYKKyAgICAgICAgc3Vic2QgICAgICV4bW01LCAleG1tNworICAgICAgICBzdWJzZCAgICAgMTI4KCVyYXgpLCAleG1tMgorICAgICAgICBzdWJzZCAgICAgJXhtbTQsICV4bW03CisgICAgICAgIG11bHNkICAgICAleG1tNiwgJXhtbTcKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tNAorICAgICAgICBzdWJzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgc3Vic2QgICAgICV4bW0yLCAleG1tNAorICAgICAgICBhZGRzZCAgICAgJXhtbTQsICV4bW0wCisgICAgICAgIHN1YnNkICAgICAleG1tNywgJXhtbTAKKyAgICAgICAgYWRkc2QgICAgICV4bW0zLCAleG1tMAorICAgICAgICBqbXAgICAgICAgLi5CMS40CisuTF8yVEFHX1BBQ0tFVF85LjAuMToKKyAgICAgICAgYWRkbCAgICAgICQ2NCwgJWVkeAorICAgICAgICBtb3ZxICAgICAgJXIxMCwgJXI5CisgICAgICAgIG1vdnEgICAgICAlcjgsICVyMTAKKyAgICAgICAgbW92cSAgICAgICQwLCAlcjgKKyAgICAgICAgY21wcSAgICAgICQwLCAlcjkKKyAgICAgICAgam5lICAgICAgIC5MXzJUQUdfUEFDS0VUXzEwLjAuMQorICAgICAgICBhZGRsICAgICAgJDY0LCAlZWR4CisgICAgICAgIG1vdnEgICAgICAlcjEwLCAlcjkKKyAgICAgICAgbW92cSAgICAgICVyOCwgJXIxMAorICAgICAgICBjbXBxICAgICAgJDAsICVyOQorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTAuMC4xCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF8xMi4wLjEKKy5MXzJUQUdfUEFDS0VUXzExLjAuMToKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzEyLjAuMQorICAgICAgICBuZWdsICAgICAgJWVjeAorICAgICAgICBzaHJxICAgICAgJWNsLCAlcjEwCisgICAgICAgIG1vdnEgICAgICAlcjksICVyYXgKKyAgICAgICAgc2hycSAgICAgICVjbCwgJXI5CisgICAgICAgIHN1YmwgICAgICAlZWN4LCAlZWR4CisgICAgICAgIG5lZ2wgICAgICAlZWN4CisgICAgICAgIGFkZGwgICAgICAkNjQsICVlY3gKKyAgICAgICAgc2hscSAgICAgICVjbCwgJXJheAorICAgICAgICBvcnEgICAgICAgJXJheCwgJXIxMAorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfMTIuMC4xCisuTF8yVEFHX1BBQ0tFVF81LjAuMToKKyAgICAgICAgbm90bCAgICAgICVlY3gKKyAgICAgICAgc2hscSAgICAgICQzMiwgJXI5CisgICAgICAgIG9ycSAgICAgICAlcjExLCAlcjkKKyAgICAgICAgc2hscSAgICAgICVjbCwgJXI5CisgICAgICAgIG1vdnEgICAgICAlcjksICVyZGkKKyAgICAgICAgdGVzdGwgICAgICQtMjE0NzQ4MzY0OCwgJXI5ZAorICAgICAgICBqbmUgICAgICAgLkxfMlRBR19QQUNLRVRfMTMuMC4xCisgICAgICAgIHNocmwgICAgICAlY2wsICVyOWQKKyAgICAgICAgbW92bCAgICAgICQwLCAlZWJ4CisgICAgICAgIHNocnEgICAgICAkMiwgJXJkaQorICAgICAgICBqbXAgICAgICAgLkxfMlRBR19QQUNLRVRfOC4wLjEKKy5MXzJUQUdfUEFDS0VUXzYuMC4xOgorICAgICAgICBzaHJsICAgICAgJWNsLCAlcjlkCisgICAgICAgIG1vdmwgICAgICAkMTA3Mzc0MTgyNCwgJWVieAorICAgICAgICBzaHJsICAgICAgJWNsLCAlZWJ4CisgICAgICAgIHNobHEgICAgICAkMzIsICVyOQorICAgICAgICBvcnEgICAgICAgJXIxMSwgJXI5CisgICAgICAgIHNobHEgICAgICAkMzIsICVyYngKKyAgICAgICAgYWRkbCAgICAgICQxMDczNzQxODI0LCAlZWRpCisgICAgICAgIG1vdnEgICAgICAkMCwgJXJjeAorICAgICAgICBtb3ZxICAgICAgJDAsICVyMTEKKyAgICAgICAgc3VicSAgICAgICVyOCwgJXJjeAorICAgICAgICBzYmJxICAgICAgJXIxMCwgJXIxMQorICAgICAgICBzYmJxICAgICAgJXI5LCAlcmJ4CisgICAgICAgIG1vdnEgICAgICAlcmN4LCAlcjgKKyAgICAgICAgbW92cSAgICAgICVyMTEsICVyMTAKKyAgICAgICAgbW92cSAgICAgICVyYngsICVyOQorICAgICAgICBtb3ZsICAgICAgJDMyNzY4LCAlZWJ4CisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF83LjAuMQorLkxfMlRBR19QQUNLRVRfMTMuMC4xOgorICAgICAgICBzaHJsICAgICAgJWNsLCAlcjlkCisgICAgICAgIG1vdnEgICAgICAkMHgxMDAwMDAwMDAsICVyYngKKyAgICAgICAgc2hycSAgICAgICVjbCwgJXJieAorICAgICAgICBtb3ZxICAgICAgJDAsICVyY3gKKyAgICAgICAgbW92cSAgICAgICQwLCAlcjExCisgICAgICAgIHN1YnEgICAgICAlcjgsICVyY3gKKyAgICAgICAgc2JicSAgICAgICVyMTAsICVyMTEKKyAgICAgICAgc2JicSAgICAgICVyOSwgJXJieAorICAgICAgICBtb3ZxICAgICAgJXJjeCwgJXI4CisgICAgICAgIG1vdnEgICAgICAlcjExLCAlcjEwCisgICAgICAgIG1vdnEgICAgICAlcmJ4LCAlcjkKKyAgICAgICAgbW92bCAgICAgICQzMjc2OCwgJWVieAorICAgICAgICBzaHJxICAgICAgJDIsICVyZGkKKyAgICAgICAgYWRkbCAgICAgICQxMDczNzQxODI0LCAlZWRpCisgICAgICAgIGptcCAgICAgICAuTF8yVEFHX1BBQ0tFVF84LjAuMQorLkxfMlRBR19QQUNLRVRfNC4wLjE6CisgICAgICAgIG1vdnEgICAgICA4KCVyc3ApLCAleG1tMAorICAgICAgICBtdWxzZCAgICAgTkVHX1pFUk8oJXJpcCksICV4bW0wCisgICAgICAgIG1vdnEgICAgICAleG1tMCwgKCVyc3ApCisuTF8yVEFHX1BBQ0tFVF8xNC4wLjE6CisuLkIxLjQ6CisgICAgICAgIGFkZHEgICAgICAkMTYsICVyc3AKKy4uX19fdGFnX3ZhbHVlX3Rhbi42OgorICAgICAgICBwb3BxICAgICAgJXJieAorLi5fX190YWdfdmFsdWVfdGFuLjg6CisgICAgICAgIHJldCAgICAgICAKKy4uX19fdGFnX3ZhbHVlX3Rhbi45OgorRU5EKHRhbikKKyMgLS0gRW5kICB0YW4KKwkuc2VjdGlvbiAucm9kYXRhLCAiYSIKKwkuYWxpZ24gMTYKKwkuYWxpZ24gMTYKK09ORUhBTEY6CisJLmxvbmcJMAorCS5sb25nCTEwNzE2NDQ2NzIKKwkubG9uZwkwCisJLmxvbmcJMTA3MTY0NDY3MgorCS50eXBlCU9ORUhBTEYsQG9iamVjdAorCS5zaXplCU9ORUhBTEYsMTYKKwkuYWxpZ24gMTYKK01VTDE2OgorCS5sb25nCTAKKwkubG9uZwkxMDc2ODg3NTUyCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkudHlwZQlNVUwxNixAb2JqZWN0CisJLnNpemUJTVVMMTYsMTYKKwkuYWxpZ24gMTYKK3NpZ25fbWFzazoKKwkubG9uZwkwCisJLmxvbmcJMjE0NzQ4MzY0OAorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLnR5cGUJc2lnbl9tYXNrLEBvYmplY3QKKwkuc2l6ZQlzaWduX21hc2ssMTYKKwkuYWxpZ24gMTYKK1BJMzJJTlY6CisJLmxvbmcJMTg0MTk0MDYxMQorCS5sb25nCTEwNzE5MzExODQKKwkubG9uZwkxODQxOTQwNjExCisJLmxvbmcJMTA3NjEyNTQ4OAorCS50eXBlCVBJMzJJTlYsQG9iamVjdAorCS5zaXplCVBJMzJJTlYsMTYKKwkuYWxpZ24gMTYKK1BfMToKKwkubG9uZwkxNDEzNzU4OTc2CisJLmxvbmcJMTA2OTA5NzQ2NworCS5sb25nCTE0MTM3NDI1OTIKKwkubG9uZwkxMDY5MDk3NDY3CisJLnR5cGUJUF8xLEBvYmplY3QKKwkuc2l6ZQlQXzEsMTYKKwkuYWxpZ24gMTYKK1BfMjoKKwkubG9uZwkxNzM0ODE5ODQwCisJLmxvbmcJMzE3NDIyOTk0NQorCS5sb25nCTEyODAwNDkxNTIKKwkubG9uZwkxMDI4MDMzNTcxCisJLnR5cGUJUF8yLEBvYmplY3QKKwkuc2l6ZQlQXzIsMTYKKwkuYWxpZ24gMTYKK1BfMzoKKwkubG9uZwk5MjMyMTkwMTgKKwkubG9uZwk5ODQxMzAyNzIKKwkubG9uZwk1NzcwMTE4OQorCS5sb25nCTk4ODM4Mzc5MAorCS50eXBlCVBfMyxAb2JqZWN0CisJLnNpemUJUF8zLDE2CisJLmFsaWduIDE2CitDdGFibGU6CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIyODQ1ODkzMDYKKwkubG9uZwkxMDY2ODIwODUyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTQ0MTE4NjM2NQorCS5sb25nCTEwNjU0OTQyNDMKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA3MDk0NTYyMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMzYyODk1MDQKKwkubG9uZwkxMDY0MTM1OTk3CisJLmxvbmcJMjg2MzMxMTUzCisJLmxvbmcJMTA2OTYxNzQyNQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTYwNDc2MTMxCisJLmxvbmcJMTA2MjcyMjEwMgorCS5sb25nCTQ2MzU4Mzc3MgorCS5sb25nCTEwNjgyMTI2NjYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMzEzMDM4MjM1CisJLmxvbmcJMTA2Njc0NTczMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTAxMzg3ODM0MgorCS5sb25nCTEwNjcxNTI2MTgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM2NjM0MjY4MzMKKwkubG9uZwkxMDY1NzI1MjgzCisJLmxvbmcJMzY5MzI4NDI1MQorCS5sb25nCTEwNjkxMTg4MDgKKwkubG9uZwk2NTA4NTIyMzIKKwkubG9uZwkxMDY1ODgyMzc2CisJLmxvbmcJMTk5NjI0NTM4MQorCS5sb25nCTEwNzEwMDAyNjUKKwkubG9uZwkyMDA4NzQ2MTcwCisJLmxvbmcJMTA2NDY2NDE5NworCS5sb25nCTMwNTU4NDI1OTMKKwkubG9uZwkxMDY4NTc4ODQ2CisJLmxvbmcJMTQ5NTQwNjM0OAorCS5sb25nCTEwNjQ2NTI0MzcKKwkubG9uZwkyMjY5NTMwMTU3CisJLmxvbmcJMTA2OTcxMTIzNQorCS5sb25nCTI4NTU2MzY5NgorCS5sb25nCTEwNjM1NzY0NjUKKwkubG9uZwkxMDQ2ODk3NDQwCisJLmxvbmcJMTA2NzcwNTg2NQorCS5sb25nCTIzMzQyOTczMQorCS5sb25nCTEwNjM0NTMxNTEKKwkubG9uZwk1MjIwNDU5NTgKKwkubG9uZwkxMDY4NDc2NTkwCisJLmxvbmcJMjM1NDc4NTY5OAorCS5sb25nCTEwNjkxMDI3NzkKKwkubG9uZwkxMzE3NTk5MTQxCisJLmxvbmcJMTAxMjQzMjEzMworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjgyODIzMDEwNQorCS5sb25nCTEwNjU2MDY2MjYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTUxMjU0NTk1NQorCS5sb25nCTEwNjgxMTkwNDcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTExMjcwNDg2OTgKKwkubG9uZwkxMDY3OTA5NDU5CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMzAwMjAwNDUwCisJLmxvbmcJMTA2NzI1NDc2NworCS5sb25nCTM1OTMyNTAyOTYKKwkubG9uZwkxMDcwMjMzNTYxCisJLmxvbmcJMzAwOTM2NTU0NAorCS5sb25nCTEwNjY5MDIxMTcKKwkubG9uZwkxMTI3MzczMDUwCisJLmxvbmcJMTA3MTE3MzQ1NworCS5sb25nCTMwNDYxMDMzMDUKKwkubG9uZwkxMDY2MzcxMjk5CisJLmxvbmcJMjQ1ODM0MDIKKwkubG9uZwkxMDY5NzIzOTg4CisJLmxvbmcJNDA4MjUxMTc1OAorCS5sb25nCTEwNjU5MTQxOTkKKwkubG9uZwkzMjIzODg5Njk5CisJLmxvbmcJMTA3MDAyMDM2NworCS5sb25nCTU0ODkyNzk4NAorCS5sb25nCTEwNjU0MTU3NTYKKwkubG9uZwk1NTgwNjU4OTcKKwkubG9uZwkxMDY4OTQ5NDE4CisJLmxvbmcJNjgwMDczMzE1CisJLmxvbmcJMTA2NDk0MDcyNgorCS5sb25nCTM4ODg3MzIwMAorCS5sb25nCTEwNjg5NDQyNzAKKwkubG9uZwkzNzYzNjc5NTc2CisJLmxvbmcJMTA3MDE2NzU0MQorCS5sb25nCTE0OTczNjA0MDQKKwkubG9uZwkxMDA5NzEwNTQ3CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwk2NDkzMTE1MgorCS5sb25nCTEwNjc3Mjk0MTEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjQ2NzU4Mjc4MgorCS5sb25nCTEwNjkyNTYzODkKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE2MjE1MDA5NgorCS5sb25nCTEwNjg5NDY0MjAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM3MDI3OTQyMzcKKwkubG9uZwkxMDY4NTc5MTUyCisJLmxvbmcJMzYzMTkxOTI5MQorCS5sb25nCTEwNzA5MzY5MjYKKwkubG9uZwkzNDU2ODIxNDEzCisJLmxvbmcJMTA2ODIxNzIxOAorCS5sb25nCTIwMzEzNjY0MzgKKwkubG9uZwkxMDcxNDk1NzQ1CisJLmxvbmcJMTU5NjY2NDAyMAorCS5sb25nCTEwNjc3OTkyODEKKwkubG9uZwkxNTA5MDM4NzAxCisJLmxvbmcJMTA3MDYwMTY0MworCS5sb25nCTU4MzE3MTQ3NworCS5sb25nCTEwNjc1MTAxNDgKKwkubG9uZwkzNzg1MzQ0NjgyCisJLmxvbmcJMTA3MDYxODQ3NgorCS5sb25nCTI0MDIwMzYwNDgKKwkubG9uZwkxMDY3MDc1NzM2CisJLmxvbmcJMzIzMzAxODQxMgorCS5sb25nCTEwNjk5MTMxODYKKwkubG9uZwk0MTEyODA1NjgKKwkubG9uZwkxMDY2NzEwNTU2CisJLmxvbmcJMTA2NTU4NDE5MgorCS5sb25nCTEwNjk3NDc4OTYKKwkubG9uZwk4OTUyNDczMjQKKwkubG9uZwkxMDcwODE5ODQ4CisJLmxvbmcJNTAwMDc4OTA5CisJLmxvbmcJMzE2MTI4ODc4MQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJNzI5OTgzODQzCisJLmxvbmcJMTA2ODk5NDE5NAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxNDU4Nzk0NTYyCisJLmxvbmcJMTA3MDM5ODU1MAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjg1Nzc3NzQ4OQorCS5sb25nCTEwNzAxMzc2MzcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwMjQzNTk1MTcKKwkubG9uZwkxMDY5ODc2NTMxCisJLmxvbmcJMjYxNjA0MDIzOAorCS5sb25nCTEwNzE1ODI5MzcKKwkubG9uZwkxNjA5MDI0NjM2CisJLmxvbmcJMTA2OTY3NTA4OAorCS5sb25nCTI1MjkyNDA1NDkKKwkubG9uZwkxMDcxODM2NjMzCisJLmxvbmcJMTUxMDEyODYwMAorCS5sb25nCTEwNjk0NDAxMTMKKwkubG9uZwkyMjUxNjk3MTg0CisJLmxvbmcJMTA3MTI1MzY4NworCS5sb25nCTEyNjI3NjE0NTMKKwkubG9uZwkxMDY5MTQyODUwCisJLmxvbmcJMTI2MzA5MTg1NworCS5sb25nCTEwNzExOTA0NjEKKwkubG9uZwkzMDQzMzgzNDg2CisJLmxvbmcJMTA2ODg4NTE5MQorCS5sb25nCTI0NzY5MzI0NzAKKwkubG9uZwkxMDcwODQyMDAyCisJLmxvbmcJMzY1OTk5NTAyOAorCS5sb25nCTEwNjg2NjkyMDAKKwkubG9uZwk4NTU4OTE3NTUKKwkubG9uZwkxMDcwNjk2ODk0CisJLmxvbmcJMjU4MzQ5MDM1NAorCS5sb25nCTEwNzEyODQ4NTcKKwkubG9uZwkzMDYyNjMzNTc1CisJLmxvbmcJMTAxNDAwODYyMworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjU1MDk0MDQ3MQorCS5sb25nCTEwNjk5MzgyMDEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzQyMjgwNzI5NworCS5sb25nCTEwNzE2NDA4NDcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTExNTE2NTgwNTMKKwkubG9uZwkxMDcxNDk0NzE1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk5Mjk2MDcwNzEKKwkubG9uZwkxMDcxMzQ2MzQwCisJLmxvbmcJMTAzNzA0OTAzNAorCS5sb25nCTEwNzIwMzczMDUKKwkubG9uZwkyNzg2OTI4NjU3CisJLmxvbmcJMTA3MTIxNTI4MgorCS5sb25nCTE0NDc0MDY4NTkKKwkubG9uZwkxMDcyMjY1MjA5CisJLmxvbmcJMzQ5MDk1MjEwNworCS5sb25nCTEwNzEwOTA4NTEKKwkubG9uZwkzMjA1MjMyOTE2CisJLmxvbmcJMTA3MTk2ODY1OAorCS5sb25nCTEyOTczNDQzMDQKKwkubG9uZwkxMDcwOTc3MTIwCisJLmxvbmcJMTA2NjExMDk3NgorCS5sb25nCTEwNzE5NDYwMzUKKwkubG9uZwkzODAzNzIxNDgwCisJLmxvbmcJMTA3MDg3MTA4MgorCS5sb25nCTE0OTY3NTQyMjkKKwkubG9uZwkxMDcxODA3MjAxCisJLmxvbmcJMjk4MjU1MDY4MworCS5sb25nCTEwNzA3NzMyNDMKKwkubG9uZwk0MDE0NDQxOTg5CisJLmxvbmcJMTA3MTczNjIyMgorCS5sb25nCTQxOTk2ODIzNgorCS5sb25nCTEwNzE3MTcwNDcKKwkubG9uZwkzNDUxMjY2NTM4CisJLmxvbmcJMzE2MzQ0NDgxMQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMjk2MDI2NzIzNQorCS5sb25nCTEwNzA3NDU4NDEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNzI0MzIyNzY4CisJLmxvbmcJMTA3Mjg4MTMwOAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNjQzMTUzMDQ4CisJLmxvbmcJMTA3MjkwNTgxNgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDI4NTA3OTQ1OAorCS5sb25nCTEwNzI5Mjg1NTgKKwkubG9uZwkzOTEyNTI0NzMzCisJLmxvbmcJMTA3MjYyMjk4MworCS5sb25nCTExODM2MjI3MgorCS5sb25nCTEwNzI5NTI3NTQKKwkubG9uZwk0MTA3NzY3OTcyCisJLmxvbmcJMTA3MjgyNzQwOAorCS5sb25nCTI2ODk1MDI4ODMKKwkubG9uZwkxMDcyOTc2OTIyCisJLmxvbmcJOTQ2NTIzMzQ3CisJLmxvbmcJMTA3Mjc3Mjc2NgorCS5sb25nCTU3MzIwNDE4OQorCS5sb25nCTEwNzMwMDE3NjEKKwkubG9uZwk1ODE1MzE1MTgKKwkubG9uZwkxMDcyODI2MzkxCisJLmxvbmcJMTM4NjIzNjUyNgorCS5sb25nCTEwNzMwMjY5NTkKKwkubG9uZwkzNzE4OTA1OTA1CisJLmxvbmcJMTA3MjgzMjgyMworCS5sb25nCTExNDU1NTgxNDAKKwkubG9uZwkxMDczMDUyNjczCisJLmxvbmcJNTEzNTcyNjM3CisJLmxvbmcJMTA3Mjg2MTk2OQorCS5sb25nCTcxNjcwMDA0OAorCS5sb25nCTEwNzE5OTczNjgKKwkubG9uZwk1NDcxMjY3NjkKKwkubG9uZwkxMDE1NTIzNTI1CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkxMDk3OTA3Mzk4CisJLmxvbmcJMTA3MTQyMDEyMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMzQ5ODkyNDQyCisJLmxvbmcJMTA3NDI5MDIxMgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzkxMzE5NzQwNQorCS5sb25nCTEwNzQ1MDExODEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI0OTQwMzQ1MjIKKwkubG9uZwkxMDc0NzM5MTcwCisJLmxvbmcJMTI2NDczODc2MworCS5sb25nCTEwNzMwODQ4MDQKKwkubG9uZwkxNTIwMjkzOTA2CisJLmxvbmcJMTA3NDg5OTYzMgorCS5sb25nCTE5NTg5MzY2MDAKKwkubG9uZwkxMDczNDExNDkzCisJLmxvbmcJMjEzMzY0OTYzNQorCS5sb25nCTEwNzUwNTIxNzEKKwkubG9uZwk0MjcwNzQwNzMwCisJLmxvbmcJMTA3MzU3NDcwOAorCS5sb25nCTE3Mjg5MzAxODkKKwkubG9uZwkxMDc1MjI0ODQ0CisJLmxvbmcJMTMwMzk5ODU1MgorCS5sb25nCTEwNzM3OTkxODYKKwkubG9uZwk2MTg2MTE5MzMKKwkubG9uZwkxMDc1NDIwMjU1CisJLmxvbmcJMTc2OTgyODA0NgorCS5sb25nCTEwNzM5Mzg1NDIKKwkubG9uZwkyMjAwNTM3OTg2CisJLmxvbmcJMTA3NTY0MTQyMQorCS5sb25nCTQzMzM2MTExMAorCS5sb25nCTEwNzQxMDUzNjkKKwkubG9uZwk3MTk1OTU2MDAKKwkubG9uZwkxMDcyMzE3MTg0CisJLmxvbmcJMjk0NTI3MjA2CisJLmxvbmcJMzE2MjE0MDA4OAorCS5sb25nCTAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMzgxMTc4ODIxNgorCS5sb25nCTMyMTg0MDA1NTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTcwNDM1MjEwMgorCS5sb25nCTEwNzU5NDMwMDEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIyODQ1ODkzMDYKKwkubG9uZwkxMDc2MjU4MDM2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjExMjY0MjkxCisJLmxvbmcJMTA3NjY1OTAxMAorCS5sb25nCTAKKwkubG9uZwkxMDczNzQxODI0CisJLmxvbmcJMTQ0MTE4NjM2NQorCS5sb25nCTEwNzcwMjg1NzkKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMTA3NDA5MTM0OQorCS5sb25nCTg3Njk0MzY3MworCS5sb25nCTEwNzczNTM2MjIKKwkubG9uZwkyODYzMzExNTMxCisJLmxvbmcJMTA3NDQ0MDg3NAorCS5sb25nCTIzNjI4OTUwNAorCS5sb25nCTEwNzc3Njc0ODUKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDc0ODYwMzA1CisJLmxvbmcJMjgwNTQ3MzMxMQorCS5sb25nCTEwNzgxMTUyNzgKKwkubG9uZwk5NTQ0MzcxOAorCS5sb25nCTEwNzUxNjMyMjcKKwkubG9uZwkxMTYwNDc2MTMxCisJLmxvbmcJMTA3ODQ1MDc0MgorCS5sb25nCTQ2MzU4Mzc3MgorCS5sb25nCTEwNzU1NTI2OTgKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMzMwMTY1OTcxCisJLmxvbmcJMzIwNzg1MDc0NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjE3NTM2NjIzCisJLmxvbmcJMTA1OTEwOTA5OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzQ5MjEyMDg0OQorCS5sb25nCTMyMDUxNTE0NzUKKwkubG9uZwk2MDIxODU3MDUKKwkubG9uZwkzMjE1Njc4MDkyCisJLmxvbmcJNzYwNDIyOTU4CisJLmxvbmcJMTA1NjMxMjU5NworCS5sb25nCTU1NTEyNzg4OQorCS5sb25nCTEwNjc1NDUyNjYKKwkubG9uZwkzMTM5Nzg0MTI0CisJLmxvbmcJMzIwMjQ3MDgzNworCS5sb25nCTM2OTA1NDQwMTQKKwkubG9uZwkzMjEzMTUwMTcxCisJLmxvbmcJOTU3MDc5MTUKKwkubG9uZwkxMDUzNjM1NDI4CisJLmxvbmcJNDAwMzExNDQwNworCS5sb25nCTEwNjQ1ODE0MTIKKwkubG9uZwkyMDM0OTI2MjMxCisJLmxvbmcJMzE5OTcxMTE2MQorCS5sb25nCTM3NTk1MzYwMjMKKwkubG9uZwkzMjEwNTU5OTg5CisJLmxvbmcJMzgyNjkyODIxNAorCS5sb25nCTEwNTA4OTM4MTkKKwkubG9uZwkzODM3OTYwNzg1CisJLmxvbmcJMTA2MTc5MDM3OQorCS5sb25nCTE1MjYzMjUyNDgKKwkubG9uZwkzMjE3OTY3NTY2CisJLmxvbmcJMjM1NjQyNjUyMQorCS5sb25nCTEwMjU0MjM0NTYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQ1NzcyODk3NQorCS5sb25nCTEwNzEwODgyNzYKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMTM5ODQ2MjYwOAorCS5sb25nCTMyMDczMDM5NjgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI2MjA1OTgzCisJLmxvbmcJMTA1ODQ2MTIxMworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNTYyMjYyMzgKKwkubG9uZwkzMjA0NTI4NjEyCisJLmxvbmcJMjc1NDcwNjU0MQorCS5sb25nCTMyMTUzNTk1MTEKKwkubG9uZwkyMTg3Nzk5ODIzCisJLmxvbmcJMTA1NTYzNDQzNworCS5sb25nCTc5MDMyMzc0MgorCS5sb25nCTEwNjc0MDI1ODcKKwkubG9uZwkxMzcyMzg1ODQ4CisJLmxvbmcJMzIwMTY1MTQ3OQorCS5sb25nCTQwOTcyOTI3MTYKKwkubG9uZwkzMjEyODU2MzAyCisJLmxvbmcJMzM0ODIxMDM1NworCS5sb25nCTEwNTI4MzAwOTkKKwkubG9uZwkyNDQyNzk2NDY2CisJLmxvbmcJMTA2NDMzNzYwMgorCS5sb25nCTg2MjYwODE0MgorCS5sb25nCTMxOTg4MzA3NTQKKwkubG9uZwkxNzAyOTYxNTIKKwkubG9uZwkzMjEwMDYwODY3CisJLmxvbmcJMzc1NTU3MTQyOAorCS5sb25nCTEwNDk5MzMzNDMKKwkubG9uZwkzNjE0ODY2MDA4CisJLmxvbmcJMTA2MTM2MTY3MAorCS5sb25nCTcxOTk3ODQ5NgorCS5sb25nCTMyMTc2NjkwOTYKKwkubG9uZwkxOTk4ODQyNDY1CisJLmxvbmcJMzE3NDcwMzk3NworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzc0OTE1NjYwNworCS5sb25nCTEwNzEwNDgyNTgKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMzEyMDQ5ODYzOAorCS5sb25nCTMyMDY3NDkzMDQKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI3NzM1NzgxMTQKKwkubG9uZwkxMDU4MDA5MzEyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMDMwNzgzNjc2CisJLmxvbmcJMzIwMzgxNzg3MworCS5sb25nCTIyMjM2NTQ1OTgKKwkubG9uZwkzMjE1MDcxOTM2CisJLmxvbmcJMjk3NjEzNDY1MAorCS5sb25nCTEwNTQ5ODcyNDQKKwkubG9uZwk3MDYzOTAwNjYKKwkubG9uZwkxMDY3MjE3Mzg2CisJLmxvbmcJNDI1ODQzNzYxNQorCS5sb25nCTMyMDA5MDAzNzgKKwkubG9uZwkxMDY2MjUyOTc1CisJLmxvbmcJMzIxMjM5MTI2NworCS5sb25nCTgxNTc3NzUxNAorCS5sb25nCTEwNTE5ODk0NjIKKwkubG9uZwkzMjAyNzQ1NDU3CisJLmxvbmcJMTA2NDAxMDY4MgorCS5sb25nCTI0OTM1NTYzNzUKKwkubG9uZwkzMTk4MDA0NzUzCisJLmxvbmcJMTA0NjI0MzI1MQorCS5sb25nCTMyMDk2Nzg5NzEKKwkubG9uZwkyNTkzMDc4ODQ2CisJLmxvbmcJMTA0OTAxNzcxNworCS5sb25nCTI3NjM5NjIyNzYKKwkubG9uZwkxMDYwOTcwMTYxCisJLmxvbmcJNzAxNDgwOTYwCisJLmxvbmcJMzIxNzM3Nzc0MgorCS5sb25nCTMyMDU4NjIyMzIKKwkubG9uZwkzMTc0NjYwOTE1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjY3MDE2ODEyCisJLmxvbmcJMTA3MTAxNTY2NAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkyMTA3MTU1Nzk4CisJLmxvbmcJMzIwNjE2Njg3MgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjY0Mjk5MjEyOQorCS5sb25nCTEwNTc0MjQ1NzgKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE5MzY5OTI4MTEKKwkubG9uZwkzMjAzMjA0NDI2CisJLmxvbmcJMTQ4NTA2MzU1OQorCS5sb25nCTMyMTQ2ODI2NDMKKwkubG9uZwkxNDMyOTE0NTUzCisJLmxvbmcJMTA1NDMxOTM5OAorCS5sb25nCTM5OTYzODE2NTQKKwkubG9uZwkxMDY3MDc1ODI4CisJLmxvbmcJMjgzMzAyOTI1NgorCS5sb25nCTMyMDAyMjM1NDUKKwkubG9uZwkyODY2MDY2ODcyCisJLmxvbmcJMzIxMTk4MjY2MgorCS5sb25nCTI0MzI4ODg3MzcKKwkubG9uZwkxMDUxMjM0MTc4CisJLmxvbmcJMzY2OTc2NDU1OQorCS5sb25nCTEwNjM3NDgxMzYKKwkubG9uZwkyNDU4NDk2OTUyCisJLmxvbmcJMzE5NzE3MDc3NAorCS5sb25nCTE5NDgyMzQ5ODkKKwkubG9uZwkzMjA5MDk4MTQ3CisJLmxvbmcJMjg0MzY5ODc4NworCS5sb25nCTEwNDgxNjM1MTkKKwkubG9uZwkzMzk4MDQxNDA3CisJLmxvbmcJMTA2MDU1OTcyOAorCS5sb25nCTI4MjkyMzAwODAKKwkubG9uZwkzMjE3MDkyMTE1CisJLmxvbmcJMTAzNDA0NjQzMworCS5sb25nCTMxNzQyNzE5MDMKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI5ODY3NTMwNQorCS5sb25nCTEwNzA5ODk4MjEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJNDM3NjAzMjIzCisJLmxvbmcJMzIwNTU4OTc2MQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNzU5MzMwMzUyCisJLmxvbmcJMTA1NzA0ODUxMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzEwNzQ2MzM2OAorCS5sb25nCTMyMDI1MDc5ODgKKwkubG9uZwkzMTQ0NDY1MTc2CisJLmxvbmcJMzIxNDE5MTUwMAorCS5sb25nCTIyOTA5NjE4MTAKKwkubG9uZwkxMDUzODQxMDM1CisJLmxvbmcJMTYxODE1MzM0MAorCS5sb25nCTEwNjY5NzE1NDcKKwkubG9uZwkzODM2ODY5MzkzCisJLmxvbmcJMzE5OTQwMDI3MgorCS5sb25nCTU4NDAzMjExNgorCS5sb25nCTMyMTE0NjkyNjEKKwkubG9uZwkxMjQ1NzA0MzU4CisJLmxvbmcJMTA1MDYyNjQ2MgorCS5sb25nCTQyNDc0ODc0MzgKKwkubG9uZwkxMDYzNTYxOTQzCisJLmxvbmcJMTY2OTAzNDkyNworCS5sb25nCTMxOTYyNzQ4MTIKKwkubG9uZwkzODQ0MjMzNDk4CisJLmxvbmcJMzIwODYyNjMyMgorCS5sb25nCTI3MDY5NTg1MjQKKwkubG9uZwkxMDQ3NDExMzc0CisJLmxvbmcJMzg1NzE5OTA5OAorCS5sb25nCTEwNjAyODE2NDcKKwkubG9uZwkzNTkzOTA0MTI4CisJLmxvbmcJMzIxNjU5MDcxOQorCS5sb25nCTMyNjc1NDc4MzYKKwkubG9uZwkzMTcyMTYzMzIxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0MDc2NzEyMjI3CisJLmxvbmcJMTA3MDk3MDIxNAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkzMjkwMDkwMzQwCisJLmxvbmcJMzIwNDc5MzQ4NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzY4NTc2MDM2NworCS5sb25nCTEwNTY2NjgzNzAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI2NTUxNjM5NDkKKwkubG9uZwkzMjAxNjc0OTE3CisJLmxvbmcJNjI4NzUwNTc1CisJLmxvbmcJMzIxMzU2Njg3MgorCS5sb25nCTY4MDE0MDUwNQorCS5sb25nCTEwNTMyOTk3NzcKKwkubG9uZwkyOTU0NDY0NzA5CisJLmxvbmcJMTA2NjkwMDAyNgorCS5sb25nCTgwMzIwMTYxOQorCS5sb25nCTMxOTg1MTY0MzUKKwkubG9uZwkxNDY2MzE1NjMxCisJLmxvbmcJMzIxMDgzNzE2MgorCS5sb25nCTE2MTEyMjAxNjMKKwkubG9uZwkxMDQ5OTcyNDM4CisJLmxvbmcJMjc2NjE4NzI1NgorCS5sb25nCTEwNjM0Mzc4OTQKKwkubG9uZwkxODA0NTc5NDg0CisJLmxvbmcJMzE5NTMzMTQ5MQorCS5sb25nCTM2OTU5NjkyODkKKwkubG9uZwkzMjA3ODU0NDE4CisJLmxvbmcJMjYxNzIzODM3MworCS5sb25nCTEwNDY2NzU5NDgKKwkubG9uZwkzMDk1ODMwMDg0CisJLmxvbmcJMTA2MDA5NTMzNAorCS5sb25nCTM3ODk1NzAwNDgKKwkubG9uZwkzMjE2MDM0OTE0CisJLmxvbmcJMjM4MjY1NTkKKwkubG9uZwkzMTcyMDQ4MDYwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzODcwOTM5Mzg2CisJLmxvbmcJMTA3MDk1NjQ2NworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkxNTcxNzU4NzU4CisJLmxvbmcJMzIwMzY3MjUzNQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTEzMDI2MzczCisJLmxvbmcJMTA1NjQxNjM4MQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTkxMzc2NjI5OAorCS5sb25nCTMyMDA1MjMzMjYKKwkubG9uZwkyNTA3MDY4NzM0CisJLmxvbmcJMzIxMjUwMjAwNAorCS5sb25nCTQwMDA2NDg4MTgKKwkubG9uZwkxMDUzMDAzODAzCisJLmxvbmcJMjQ0NjYwNzM0OQorCS5sb25nCTEwNjY4NTgyNTkKKwkubG9uZwk5MTI2NjIxMjQKKwkubG9uZwkzMTk3MzMzMDAxCisJLmxvbmcJMTM0OTQ4OTUzNworCS5sb25nCTMyMDk3NjU2MDgKKwkubG9uZwkzNDEyOTcyNjA3CisJLmxvbmcJMTA0OTY0MTQwMQorCS5sb25nCTE3MjEyODMzMjcKKwkubG9uZwkxMDYzMzY2ODU1CisJLmxvbmcJMTQ2NjY5MTg4MworCS5sb25nCTMxOTQxMTY3NDYKKwkubG9uZwkzODUyNTI4MDkyCisJLmxvbmcJMzIwNjc2MDg2MQorCS5sb25nCTI4NTQ0MzI5MworCS5sb25nCTEwNDYxNTgzODAKKwkubG9uZwkxNzU4NzM5ODk0CisJLmxvbmcJMTA1OTg5NTQ0OQorCS5sb25nCTE4NTg3ODExODQKKwkubG9uZwkzMjE0OTg0MjEyCisJLmxvbmcJMzQ0NzU3NTk0OAorCS5sb25nCTEwMjQ2NzU4NTUKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIyNDIwMzgwMTEKKwkubG9uZwkxMDcwOTQ4MzIwCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk3Mzc2MTE0NTQKKwkubG9uZwkxMDU2MzM2NTI3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzU5NDc5MDUyNworCS5sb25nCTEwNTI5MTE2MjEKKwkubG9uZwkzODE3NzQ4NzEKKwkubG9uZwkxMDY2ODQ0NTI0CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTMzMDMwNTE2MTgKKwkubG9uZwkxMDQ5NDU2MDUwCisJLmxvbmcJMzE1NDE4NzYyMworCS5sb25nCTEwNjMzNDM3MjIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNTI4MDYxNzg4CisJLmxvbmcJMTA0NTk0NDkxMAorCS5sb25nCTI0Njk3MTk4MTkKKwkubG9uZwkxMDU5ODMxMTU5CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTQzMTY1NTc2NQorCS5sb25nCTEwNzA5NDU2MjEKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3Mjg4CisJLmxvbmcJMTU3MTc1ODc1OAorCS5sb25nCTEwNTYxODg4ODcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTExMzAyNjM3MworCS5sb25nCTEwNTY0MTYzODEKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE5MTM3NjYyOTgKKwkubG9uZwkxMDUzMDM5Njc4CisJLmxvbmcJMjUwNzA2ODczNAorCS5sb25nCTEwNjUwMTgzNTYKKwkubG9uZwk0MDAwNjQ4ODE4CisJLmxvbmcJMTA1MzAwMzgwMworCS5sb25nCTI0NDY2MDczNDkKKwkubG9uZwkxMDY2ODU4MjU5CisJLmxvbmcJOTEyNjYyMTI0CisJLmxvbmcJMTA0OTg0OTM1MworCS5sb25nCTEzNDk0ODk1MzcKKwkubG9uZwkxMDYyMjgxOTYwCisJLmxvbmcJMzQxMjk3MjYwNworCS5sb25nCTEwNDk2NDE0MDEKKwkubG9uZwkxNzIxMjgzMzI3CisJLmxvbmcJMTA2MzM2Njg1NQorCS5sb25nCTE0NjY2OTE4ODMKKwkubG9uZwkxMDQ2NjMzMDk4CisJLmxvbmcJMzg1MjUyODA5MgorCS5sb25nCTEwNTkyNzcyMTMKKwkubG9uZwkyODU0NDMyOTMKKwkubG9uZwkxMDQ2MTU4MzgwCisJLmxvbmcJMTc1ODczOTg5NAorCS5sb25nCTEwNTk4OTU0NDkKKwkubG9uZwkxODU4NzgxMTg0CisJLmxvbmcJMTA2NzUwMDU2NAorCS5sb25nCTM0NDc1NzU5NDgKKwkubG9uZwkzMTcyMTU5NTAzCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMjQyMDM4MDExCisJLmxvbmcJMTA3MDk0ODMyMAorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkzMjkwMDkwMzQwCisJLmxvbmcJMTA1NzMwOTgzNworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzY4NTc2MDM2NworCS5sb25nCTEwNTY2NjgzNzAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI2NTUxNjM5NDkKKwkubG9uZwkxMDU0MTkxMjY5CisJLmxvbmcJNjI4NzUwNTc1CisJLmxvbmcJMTA2NjA4MzIyNAorCS5sb25nCTY4MDE0MDUwNQorCS5sb25nCTEwNTMyOTk3NzcKKwkubG9uZwkyOTU0NDY0NzA5CisJLmxvbmcJMTA2NjkwMDAyNgorCS5sb25nCTgwMzIwMTYxOQorCS5sb25nCTEwNTEwMzI3ODcKKwkubG9uZwkxNDY2MzE1NjMxCisJLmxvbmcJMTA2MzM1MzUxNAorCS5sb25nCTE2MTEyMjAxNjMKKwkubG9uZwkxMDQ5OTcyNDM4CisJLmxvbmcJMjc2NjE4NzI1NgorCS5sb25nCTEwNjM0Mzc4OTQKKwkubG9uZwkxODA0NTc5NDg0CisJLmxvbmcJMTA0Nzg0Nzg0MworCS5sb25nCTM2OTU5NjkyODkKKwkubG9uZwkxMDYwMzcwNzcwCisJLmxvbmcJMjYxNzIzODM3MworCS5sb25nCTEwNDY2NzU5NDgKKwkubG9uZwkzMDk1ODMwMDg0CisJLmxvbmcJMTA2MDA5NTMzNAorCS5sb25nCTM3ODk1NzAwNDgKKwkubG9uZwkxMDY4NTUxMjY2CisJLmxvbmcJMjM4MjY1NTkKKwkubG9uZwkxMDI0NTY0NDEyCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzODcwOTM5Mzg2CisJLmxvbmcJMTA3MDk1NjQ2NworCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwk0Mzc2MDMyMjMKKwkubG9uZwkxMDU4MTA2MTEzCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk3NTkzMzAzNTIKKwkubG9uZwkxMDU3MDQ4NTExCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzMTA3NDYzMzY4CisJLmxvbmcJMTA1NTAyNDM0MAorCS5sb25nCTMxNDQ0NjUxNzYKKwkubG9uZwkxMDY2NzA3ODUyCisJLmxvbmcJMjI5MDk2MTgxMAorCS5sb25nCTEwNTM4NDEwMzUKKwkubG9uZwkxNjE4MTUzMzQwCisJLmxvbmcJMTA2Njk3MTU0NworCS5sb25nCTM4MzY4NjkzOTMKKwkubG9uZwkxMDUxOTE2NjI0CisJLmxvbmcJNTg0MDMyMTE2CisJLmxvbmcJMTA2Mzk4NTYxMworCS5sb25nCTEyNDU3MDQzNTgKKwkubG9uZwkxMDUwNjI2NDYyCisJLmxvbmcJNDI0NzQ4NzQzOAorCS5sb25nCTEwNjM1NjE5NDMKKwkubG9uZwkxNjY5MDM0OTI3CisJLmxvbmcJMTA0ODc5MTE2NAorCS5sb25nCTM4NDQyMzM0OTgKKwkubG9uZwkxMDYxMTQyNjc0CisJLmxvbmcJMjcwNjk1ODUyNAorCS5sb25nCTEwNDc0MTEzNzQKKwkubG9uZwkzODU3MTk5MDk4CisJLmxvbmcJMTA2MDI4MTY0NworCS5sb25nCTM1OTM5MDQxMjgKKwkubG9uZwkxMDY5MTA3MDcxCisJLmxvbmcJMzI2NzU0NzgzNgorCS5sb25nCTEwMjQ2Nzk2NzMKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTQwNzY3MTIyMjcKKwkubG9uZwkxMDcwOTcwMjE0CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTIxMDcxNTU3OTgKKwkubG9uZwkxMDU4NjgzMjI0CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNjQyOTkyMTI5CisJLmxvbmcJMTA1NzQyNDU3OAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTkzNjk5MjgxMQorCS5sb25nCTEwNTU3MjA3NzgKKwkubG9uZwkxNDg1MDYzNTU5CisJLmxvbmcJMTA2NzE5ODk5NQorCS5sb25nCTE0MzI5MTQ1NTMKKwkubG9uZwkxMDU0MzE5Mzk4CisJLmxvbmcJMzk5NjM4MTY1NAorCS5sb25nCTEwNjcwNzU4MjgKKwkubG9uZwkyODMzMDI5MjU2CisJLmxvbmcJMTA1MjczOTg5NworCS5sb25nCTI4NjYwNjY4NzIKKwkubG9uZwkxMDY0NDk5MDE0CisJLmxvbmcJMjQzMjg4ODczNworCS5sb25nCTEwNTEyMzQxNzgKKwkubG9uZwkzNjY5NzY0NTU5CisJLmxvbmcJMTA2Mzc0ODEzNgorCS5sb25nCTI0NTg0OTY5NTIKKwkubG9uZwkxMDQ5Njg3MTI2CisJLmxvbmcJMTk0ODIzNDk4OQorCS5sb25nCTEwNjE2MTQ0OTkKKwkubG9uZwkyODQzNjk4Nzg3CisJLmxvbmcJMTA0ODE2MzUxOQorCS5sb25nCTMzOTgwNDE0MDcKKwkubG9uZwkxMDYwNTU5NzI4CisJLmxvbmcJMjgyOTIzMDA4MAorCS5sb25nCTEwNjk2MDg0NjcKKwkubG9uZwkxMDM0MDQ2NDMzCisJLmxvbmcJMTAyNjc4ODI1NQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjk4Njc1MzA1CisJLmxvbmcJMTA3MDk4OTgyMQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkzMTIwNDk4NjM4CisJLmxvbmcJMTA1OTI2NTY1NgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjc3MzU3ODExNAorCS5sb25nCTEwNTgwMDkzMTIKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIwMzA3ODM2NzYKKwkubG9uZwkxMDU2MzM0MjI1CisJLmxvbmcJMjIyMzY1NDU5OAorCS5sb25nCTEwNjc1ODgyODgKKwkubG9uZwkyOTc2MTM0NjUwCisJLmxvbmcJMTA1NDk4NzI0NAorCS5sb25nCTcwNjM5MDA2NgorCS5sb25nCTEwNjcyMTczODYKKwkubG9uZwk0MjU4NDM3NjE1CisJLmxvbmcJMTA1MzQxNjczMAorCS5sb25nCTEwNjYyNTI5NzUKKwkubG9uZwkxMDY0OTA3NjE5CisJLmxvbmcJODE1Nzc3NTE0CisJLmxvbmcJMTA1MTk4OTQ2MgorCS5sb25nCTMyMDI3NDU0NTcKKwkubG9uZwkxMDY0MDEwNjgyCisJLmxvbmcJMjQ5MzU1NjM3NQorCS5sb25nCTEwNTA1MjExMDUKKwkubG9uZwkxMDQ2MjQzMjUxCisJLmxvbmcJMTA2MjE5NTMyMworCS5sb25nCTI1OTMwNzg4NDYKKwkubG9uZwkxMDQ5MDE3NzE3CisJLmxvbmcJMjc2Mzk2MjI3NgorCS5sb25nCTEwNjA5NzAxNjEKKwkubG9uZwk3MDE0ODA5NjAKKwkubG9uZwkxMDY5ODk0MDk0CisJLmxvbmcJMzIwNTg2MjIzMgorCS5sb25nCTEwMjcxNzcyNjcKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIyNjcwMTY4MTIKKwkubG9uZwkxMDcxMDE1NjY0CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTEzOTg0NjI2MDgKKwkubG9uZwkxMDU5ODIwMzIwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNjIwNTk4MworCS5sb25nCTEwNTg0NjEyMTMKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTU2MjI2MjM4CisJLmxvbmcJMTA1NzA0NDk2NAorCS5sb25nCTI3NTQ3MDY1NDEKKwkubG9uZwkxMDY3ODc1ODYzCisJLmxvbmcJMjE4Nzc5OTgyMworCS5sb25nCTEwNTU2MzQ0MzcKKwkubG9uZwk3OTAzMjM3NDIKKwkubG9uZwkxMDY3NDAyNTg3CisJLmxvbmcJMTM3MjM4NTg0OAorCS5sb25nCTEwNTQxNjc4MzEKKwkubG9uZwk0MDk3MjkyNzE2CisJLmxvbmcJMTA2NTM3MjY1NAorCS5sb25nCTMzNDgyMTAzNTcKKwkubG9uZwkxMDUyODMwMDk5CisJLmxvbmcJMjQ0Mjc5NjQ2NgorCS5sb25nCTEwNjQzMzc2MDIKKwkubG9uZwk4NjI2MDgxNDIKKwkubG9uZwkxMDUxMzQ3MTA2CisJLmxvbmcJMTcwMjk2MTUyCisJLmxvbmcJMTA2MjU3NzIxOQorCS5sb25nCTM3NTU1NzE0MjgKKwkubG9uZwkxMDQ5OTMzMzQzCisJLmxvbmcJMzYxNDg2NjAwOAorCS5sb25nCTEwNjEzNjE2NzAKKwkubG9uZwk3MTk5Nzg0OTYKKwkubG9uZwkxMDcwMTg1NDQ4CisJLmxvbmcJMTk5ODg0MjQ2NQorCS5sb25nCTEwMjcyMjAzMjkKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM3NDkxNTY2MDcKKwkubG9uZwkxMDcxMDQ4MjU4CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkwCisJLmxvbmcJNDI5NDk2NzI4OAorCS5sb25nCTEzMzAxNjU5NzEKKwkubG9uZwkxMDYwMzY3MDk3CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyMTc1MzY2MjMKKwkubG9uZwkxMDU5MTA5MDk4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzNDkyMTIwODQ5CisJLmxvbmcJMTA1NzY2NzgyNworCS5sb25nCTYwMjE4NTcwNQorCS5sb25nCTEwNjgxOTQ0NDQKKwkubG9uZwk3NjA0MjI5NTgKKwkubG9uZwkxMDU2MzEyNTk3CisJLmxvbmcJNTU1MTI3ODg5CisJLmxvbmcJMTA2NzU0NTI2NgorCS5sb25nCTMxMzk3ODQxMjQKKwkubG9uZwkxMDU0OTg3MTg5CisJLmxvbmcJMzY5MDU0NDAxNAorCS5sb25nCTEwNjU2NjY1MjMKKwkubG9uZwk5NTcwNzkxNQorCS5sb25nCTEwNTM2MzU0MjgKKwkubG9uZwk0MDAzMTE0NDA3CisJLmxvbmcJMTA2NDU4MTQxMgorCS5sb25nCTIwMzQ5MjYyMzEKKwkubG9uZwkxMDUyMjI3NTEzCisJLmxvbmcJMzc1OTUzNjAyMworCS5sb25nCTEwNjMwNzYzNDEKKwkubG9uZwkzODI2OTI4MjE0CisJLmxvbmcJMTA1MDg5MzgxOQorCS5sb25nCTM4Mzc5NjA3ODUKKwkubG9uZwkxMDYxNzkwMzc5CisJLmxvbmcJMTUyNjMyNTI0OAorCS5sb25nCTEwNzA0ODM5MTgKKwkubG9uZwkyMzU2NDI2NTIxCisJLmxvbmcJMzE3MjkwNzEwNAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJNDU3NzI4OTc1CisJLmxvbmcJMTA3MTA4ODI3NgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODgKKwkubG9uZwkxNzA0MzUyMTAyCisJLmxvbmcJMzIyMzQyNjY0OQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjI4NDU4OTMwNgorCS5sb25nCTEwNzYyNTgwMzYKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTIyMTEyNjQyOTEKKwkubG9uZwkzMjI0MTQyNjU4CisJLmxvbmcJMAorCS5sb25nCTMyMjEyMjU0NzIKKwkubG9uZwkxNDQxMTg2MzY1CisJLmxvbmcJMTA3NzAyODU3OQorCS5sb25nCTE0MzE2NTU3NjUKKwkubG9uZwkxMDc0MDkxMzQ5CisJLmxvbmcJODc2OTQzNjczCisJLmxvbmcJMzIyNDgzNzI3MAorCS5sb25nCTI4NjMzMTE1MzEKKwkubG9uZwkzMjIxOTI0NTIyCisJLmxvbmcJMjM2Mjg5NTA0CisJLmxvbmcJMTA3Nzc2NzQ4NQorCS5sb25nCTI4NjMzMTE1MworCS5sb25nCTEwNzQ4NjAzMDUKKwkubG9uZwkyODA1NDczMzExCisJLmxvbmcJMzIyNTU5ODkyNgorCS5sb25nCTk1NDQzNzE4CisJLmxvbmcJMzIyMjY0Njg3NQorCS5sb25nCTExNjA0NzYxMzEKKwkubG9uZwkxMDc4NDUwNzQyCisJLmxvbmcJNDYzNTgzNzcyCisJLmxvbmcJMTA3NTU1MjY5OAorCS5sb25nCTAKKwkubG9uZwkzMjIwMTc2ODk2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTMzNDk4OTI0NDIKKwkubG9uZwkzMjIxNzczODYwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkzOTEzMTk3NDA1CisJLmxvbmcJMTA3NDUwMTE4MQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjQ5NDAzNDUyMgorCS5sb25nCTMyMjIyMjI4MTgKKwkubG9uZwkxMjY0NzM4NzYzCisJLmxvbmcJMzIyMDU2ODQ1MgorCS5sb25nCTE1MjAyOTM5MDYKKwkubG9uZwkxMDc0ODk5NjMyCisJLmxvbmcJMTk1ODkzNjYwMAorCS5sb25nCTEwNzM0MTE0OTMKKwkubG9uZwkyMTMzNjQ5NjM1CisJLmxvbmcJMzIyMjUzNTgxOQorCS5sb25nCTQyNzA3NDA3MzAKKwkubG9uZwkzMjIxMDU4MzU2CisJLmxvbmcJMTcyODkzMDE4OQorCS5sb25nCTEwNzUyMjQ4NDQKKwkubG9uZwkxMzAzOTk4NTUyCisJLmxvbmcJMTA3Mzc5OTE4NgorCS5sb25nCTYxODYxMTkzMworCS5sb25nCTMyMjI5MDM5MDMKKwkubG9uZwkxNzY5ODI4MDQ2CisJLmxvbmcJMzIyMTQyMjE5MAorCS5sb25nCTIyMDA1Mzc5ODYKKwkubG9uZwkxMDc1NjQxNDIxCisJLmxvbmcJNDMzMzYxMTEwCisJLmxvbmcJMTA3NDEwNTM2OQorCS5sb25nCTcxOTU5NTYwMAorCS5sb25nCTMyMTk4MDA4MzIKKwkubG9uZwkyOTQ1MjcyMDYKKwkubG9uZwkxMDE0NjU2NDQwCisJLmxvbmcJMAorCS5sb25nCTEwNzM3NDE4MjQKKwkubG9uZwkzODExNzg4MjE2CisJLmxvbmcJMzIxODQwMDU1MAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk3MjQzMjI3NjgKKwkubG9uZwkzMjIwMzY0OTU2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk2NDMxNTMwNDgKKwkubG9uZwkxMDcyOTA1ODE2CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwk0Mjg1MDc5NDU4CisJLmxvbmcJMzIyMDQxMjIwNgorCS5sb25nCTM5MTI1MjQ3MzMKKwkubG9uZwkzMjIwMTA2NjMxCisJLmxvbmcJMTE4MzYyMjcyCisJLmxvbmcJMTA3Mjk1Mjc1NAorCS5sb25nCTQxMDc3Njc5NzIKKwkubG9uZwkxMDcyODI3NDA4CisJLmxvbmcJMjY4OTUwMjg4MworCS5sb25nCTMyMjA0NjA1NzAKKwkubG9uZwk5NDY1MjMzNDcKKwkubG9uZwkzMjIwMjU2NDE0CisJLmxvbmcJNTczMjA0MTg5CisJLmxvbmcJMTA3MzAwMTc2MQorCS5sb25nCTU4MTUzMTUxOAorCS5sb25nCTEwNzI4MjYzOTEKKwkubG9uZwkxMzg2MjM2NTI2CisJLmxvbmcJMzIyMDUxMDYwNworCS5sb25nCTM3MTg5MDU5MDUKKwkubG9uZwkzMjIwMzE2NDcxCisJLmxvbmcJMTE0NTU1ODE0MAorCS5sb25nCTEwNzMwNTI2NzMKKwkubG9uZwk1MTM1NzI2MzcKKwkubG9uZwkxMDcyODYxOTY5CisJLmxvbmcJNzE2NzAwMDQ4CisJLmxvbmcJMzIxOTQ4MTAxNgorCS5sb25nCTU0NzEyNjc2OQorCS5sb25nCTMxNjMwMDcxNzMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTEwOTc5MDczOTgKKwkubG9uZwkxMDcxNDIwMTIwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTM0MjI4MDcyOTcKKwkubG9uZwkzMjE5MTI0NDk1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTUxNjU4MDUzCisJLmxvbmcJMTA3MTQ5NDcxNQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJOTI5NjA3MDcxCisJLmxvbmcJMzIxODgyOTk4OAorCS5sb25nCTEwMzcwNDkwMzQKKwkubG9uZwkzMjE5NTIwOTUzCisJLmxvbmcJMjc4NjkyODY1NworCS5sb25nCTEwNzEyMTUyODIKKwkubG9uZwkxNDQ3NDA2ODU5CisJLmxvbmcJMTA3MjI2NTIwOQorCS5sb25nCTM0OTA5NTIxMDcKKwkubG9uZwkzMjE4NTc0NDk5CisJLmxvbmcJMzIwNTIzMjkxNgorCS5sb25nCTMyMTk0NTIzMDYKKwkubG9uZwkxMjk3MzQ0MzA0CisJLmxvbmcJMTA3MDk3NzEyMAorCS5sb25nCTEwNjYxMTA5NzYKKwkubG9uZwkxMDcxOTQ2MDM1CisJLmxvbmcJMzgwMzcyMTQ4MAorCS5sb25nCTMyMTgzNTQ3MzAKKwkubG9uZwkxNDk2NzU0MjI5CisJLmxvbmcJMzIxOTI5MDg0OQorCS5sb25nCTI5ODI1NTA2ODMKKwkubG9uZwkxMDcwNzczMjQzCisJLmxvbmcJNDAxNDQ0MTk4OQorCS5sb25nCTEwNzE3MzYyMjIKKwkubG9uZwk0MTk5NjgyMzYKKwkubG9uZwkzMjE5MjAwNjk1CisJLmxvbmcJMzQ1MTI2NjUzOAorCS5sb25nCTEwMTU5NjExNjMKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS5sb25nCTI5NjAyNjcyMzUKKwkubG9uZwkxMDcwNzQ1ODQxCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE0NTg3OTQ1NjIKKwkubG9uZwkzMjE3ODgyMTk4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyODU3Nzc3NDg5CisJLmxvbmcJMTA3MDEzNzYzNworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTAyNDM1OTUxNworCS5sb25nCTMyMTczNjAxNzkKKwkubG9uZwkyNjE2MDQwMjM4CisJLmxvbmcJMzIxOTA2NjU4NQorCS5sb25nCTE2MDkwMjQ2MzYKKwkubG9uZwkxMDY5Njc1MDg4CisJLmxvbmcJMjUyOTI0MDU0OQorCS5sb25nCTEwNzE4MzY2MzMKKwkubG9uZwkxNTEwMTI4NjAwCisJLmxvbmcJMzIxNjkyMzc2MQorCS5sb25nCTIyNTE2OTcxODQKKwkubG9uZwkzMjE4NzM3MzM1CisJLmxvbmcJMTI2Mjc2MTQ1MworCS5sb25nCTEwNjkxNDI4NTAKKwkubG9uZwkxMjYzMDkxODU3CisJLmxvbmcJMTA3MTE5MDQ2MQorCS5sb25nCTMwNDMzODM0ODYKKwkubG9uZwkzMjE2MzY4ODM5CisJLmxvbmcJMjQ3NjkzMjQ3MAorCS5sb25nCTMyMTgzMjU2NTAKKwkubG9uZwkzNjU5OTk1MDI4CisJLmxvbmcJMTA2ODY2OTIwMAorCS5sb25nCTg1NTg5MTc1NQorCS5sb25nCTEwNzA2OTY4OTQKKwkubG9uZwkyNTgzNDkwMzU0CisJLmxvbmcJMzIxODc2ODUwNQorCS5sb25nCTMwNjI2MzM1NzUKKwkubG9uZwkzMTYxNDkyMjcxCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyNTUwOTQwNDcxCisJLmxvbmcJMTA2OTkzODIwMQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkyNDY3NTgyNzgyCisJLmxvbmcJMzIxNjc0MDAzNworCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMTYyMTUwMDk2CisJLmxvbmcJMTA2ODk0NjQyMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzcwMjc5NDIzNworCS5sb25nCTMyMTYwNjI4MDAKKwkubG9uZwkzNjMxOTE5MjkxCisJLmxvbmcJMzIxODQyMDU3NAorCS5sb25nCTM0NTY4MjE0MTMKKwkubG9uZwkxMDY4MjE3MjE4CisJLmxvbmcJMjAzMTM2NjQzOAorCS5sb25nCTEwNzE0OTU3NDUKKwkubG9uZwkxNTk2NjY0MDIwCisJLmxvbmcJMzIxNTI4MjkyOQorCS5sb25nCTE1MDkwMzg3MDEKKwkubG9uZwkzMjE4MDg1MjkxCisJLmxvbmcJNTgzMTcxNDc3CisJLmxvbmcJMTA2NzUxMDE0OAorCS5sb25nCTM3ODUzNDQ2ODIKKwkubG9uZwkxMDcwNjE4NDc2CisJLmxvbmcJMjQwMjAzNjA0OAorCS5sb25nCTMyMTQ1NTkzODQKKwkubG9uZwkzMjMzMDE4NDEyCisJLmxvbmcJMzIxNzM5NjgzNAorCS5sb25nCTQxMTI4MDU2OAorCS5sb25nCTEwNjY3MTA1NTYKKwkubG9uZwkxMDY1NTg0MTkyCisJLmxvbmcJMTA2OTc0Nzg5NgorCS5sb25nCTg5NTI0NzMyNAorCS5sb25nCTMyMTgzMDM0OTYKKwkubG9uZwk1MDAwNzg5MDkKKwkubG9uZwkxMDEzODA1MTMzCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwk3Mjk5ODM4NDMKKwkubG9uZwkxMDY4OTk0MTk0CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTE1MTI1NDU5NTUKKwkubG9uZwkzMjE1NjAyNjk1CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMTI3MDQ4Njk4CisJLmxvbmcJMTA2NzkwOTQ1OQorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMjMwMDIwMDQ1MAorCS5sb25nCTMyMTQ3Mzg0MTUKKwkubG9uZwkzNTkzMjUwMjk2CisJLmxvbmcJMzIxNzcxNzIwOQorCS5sb25nCTMwMDkzNjU1NDQKKwkubG9uZwkxMDY2OTAyMTE3CisJLmxvbmcJMTEyNzM3MzA1MAorCS5sb25nCTEwNzExNzM0NTcKKwkubG9uZwkzMDQ2MTAzMzA1CisJLmxvbmcJMzIxMzg1NDk0NworCS5sb25nCTI0NTgzNDAyCisJLmxvbmcJMzIxNzIwNzYzNgorCS5sb25nCTQwODI1MTE3NTgKKwkubG9uZwkxMDY1OTE0MTk5CisJLmxvbmcJMzIyMzg4OTY5OQorCS5sb25nCTEwNzAwMjAzNjcKKwkubG9uZwk1NDg5Mjc5ODQKKwkubG9uZwkzMjEyODk5NDA0CisJLmxvbmcJNTU4MDY1ODk3CisJLmxvbmcJMzIxNjQzMzA2NgorCS5sb25nCTY4MDA3MzMxNQorCS5sb25nCTEwNjQ5NDA3MjYKKwkubG9uZwkzODg4NzMyMDAKKwkubG9uZwkxMDY4OTQ0MjcwCisJLmxvbmcJMzc2MzY3OTU3NgorCS5sb25nCTMyMTc2NTExODkKKwkubG9uZwkxNDk3MzYwNDA0CisJLmxvbmcJMzE1NzE5NDE5NQorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJNjQ5MzExNTIKKwkubG9uZwkxMDY3NzI5NDExCisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTEzMTMwMzgyMzUKKwkubG9uZwkzMjE0MjI5Mzc5CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxMDEzODc4MzQyCisJLmxvbmcJMTA2NzE1MjYxOAorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMzY2MzQyNjgzMworCS5sb25nCTMyMTMyMDg5MzEKKwkubG9uZwkzNjkzMjg0MjUxCisJLmxvbmcJMzIxNjYwMjQ1NgorCS5sb25nCTY1MDg1MjIzMgorCS5sb25nCTEwNjU4ODIzNzYKKwkubG9uZwkxOTk2MjQ1MzgxCisJLmxvbmcJMTA3MTAwMDI2NQorCS5sb25nCTIwMDg3NDYxNzAKKwkubG9uZwkzMjEyMTQ3ODQ1CisJLmxvbmcJMzA1NTg0MjU5MworCS5sb25nCTMyMTYwNjI0OTQKKwkubG9uZwkxNDk1NDA2MzQ4CisJLmxvbmcJMTA2NDY1MjQzNworCS5sb25nCTIyNjk1MzAxNTcKKwkubG9uZwkxMDY5NzExMjM1CisJLmxvbmcJMjg1NTYzNjk2CisJLmxvbmcJMzIxMTA2MDExMworCS5sb25nCTEwNDY4OTc0NDAKKwkubG9uZwkzMjE1MTg5NTEzCisJLmxvbmcJMjMzNDI5NzMxCisJLmxvbmcJMTA2MzQ1MzE1MQorCS5sb25nCTUyMjA0NTk1OAorCS5sb25nCTEwNjg0NzY1OTAKKwkubG9uZwkyMzU0Nzg1Njk4CisJLmxvbmcJMzIxNjU4NjQyNworCS5sb25nCTEzMTc1OTkxNDEKKwkubG9uZwkzMTU5OTE1NzgxCisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkubG9uZwkyODI4MjMwMTA1CisJLmxvbmcJMTA2NTYwNjYyNgorCS5sb25nCTAKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTAKKwkudHlwZQlDdGFibGUsQG9iamVjdAorCS5zaXplCUN0YWJsZSw1NjMyCisJLmFsaWduIDE2CitNQVNLXzM1OgorCS5sb25nCTQyOTQ3MDUxNTIKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJMAorCS5sb25nCTAKKwkudHlwZQlNQVNLXzM1LEBvYmplY3QKKwkuc2l6ZQlNQVNLXzM1LDE2CisJLmFsaWduIDE2CitRXzExOgorCS5sb25nCTMxMDM2NzM3MTkKKwkubG9uZwkxMDY1NTA5MDE4CisJLnR5cGUJUV8xMSxAb2JqZWN0CisJLnNpemUJUV8xMSw4CisJLnNwYWNlIDgsIDB4MDAgCSMgcGFkCisJLmFsaWduIDE2CitRXzk6CisJLmxvbmcJMzIxMzEzMDMwNworCS5sb25nCTEwNjY4MjA3NjgKKwkudHlwZQlRXzksQG9iamVjdAorCS5zaXplCVFfOSw4CisJLnNwYWNlIDgsIDB4MDAgCSMgcGFkCisJLmFsaWduIDE2CitRXzc6CisJLmxvbmcJMTM4ODYyODEzOQorCS5sb25nCTEwNjgyMTI2NjYKKwkudHlwZQlRXzcsQG9iamVjdAorCS5zaXplCVFfNyw4CisJLnNwYWNlIDgsIDB4MDAgCSMgcGFkCisJLmFsaWduIDE2CitRXzU6CisJLmxvbmcJMjg1ODEyNTUwCisJLmxvbmcJMTA2OTYxNzQyNQorCS50eXBlCVFfNSxAb2JqZWN0CisJLnNpemUJUV81LDgKKwkuc3BhY2UgOCwgMHgwMCAJIyBwYWQKKwkuYWxpZ24gMTYKK1FfMzoKKwkubG9uZwkxNDMxNjU1OTU0CisJLmxvbmcJMTA3MDk0NTYyMQorCS50eXBlCVFfMyxAb2JqZWN0CisJLnNpemUJUV8zLDgKKwkuc3BhY2UgOCwgMHgwMCAJIyBwYWQKKwkuYWxpZ24gMTYKK1BJX0lOVl9UQUJMRToKKwkubG9uZwkwCisJLmxvbmcJMAorCS5sb25nCTI3MzQyNjExMDIKKwkubG9uZwkxMzEzMDg0NzEzCisJLmxvbmcJNDIzMDQzNjgxNworCS5sb25nCTQxMTM4ODI1NjAKKwkubG9uZwkzNjgwNjcxMTI5CisJLmxvbmcJMTAxMTA2MDgwMQorCS5sb25nCTQyNjY3NDY3OTUKKwkubG9uZwkzNzM2ODQ3NzEzCisJLmxvbmcJMzA3MjYxODA0MgorCS5sb25nCTExMTIzOTY1MTIKKwkubG9uZwkxMDU0NTk0MzQKKwkubG9uZwkxNjQ3MjkzNzIKKwkubG9uZwk0MjYzMzczNTk2CisJLmxvbmcJMjk3MjI5NzAyMgorCS5sb25nCTM5MDA4NDc2MDUKKwkubG9uZwk3ODQwMjQ3MDgKKwkubG9uZwkzOTE5MzQzNjU0CisJLmxvbmcJMzAyNjE1NzEyMQorCS5sb25nCTk2NTg1ODg3MworCS5sb25nCTIyMDMyNjk2MjAKKwkubG9uZwkyNjI1OTIwOTA3CisJLmxvbmcJMzE4NzIyMjU4NworCS5sb25nCTUzNjM4NTUzNQorCS5sb25nCTM3MjQ5MDg1NTkKKwkubG9uZwk0MDEyODM5MzA3CisJLmxvbmcJMTUxMDYzMjczNQorCS5sb25nCTE4MzIyODc5NTEKKwkubG9uZwk2Njc2MTc3MTkKKwkubG9uZwkxMzMwMDAzODE0CisJLmxvbmcJMjY1NzA4NTk5NworCS5sb25nCTE5NjU1Mzc5OTEKKwkubG9uZwkzOTU3NzE1MzIzCisJLmxvbmcJMTAyMzg4Mzc2NworCS5sb25nCTIzMjA2NjczNzAKKwkubG9uZwkxODExNjM2MTQ1CisJLmxvbmcJNTI5MzU4MDg4CisJLmxvbmcJMTQ0MzA0OTU0MgorCS5sb25nCTQyMzU5NDY5MjMKKwkubG9uZwk0MDQwMTQ1OTUzCisJLnR5cGUJUElfSU5WX1RBQkxFLEBvYmplY3QKKwkuc2l6ZQlQSV9JTlZfVEFCTEUsMTY0CisJLnNwYWNlIDEyLCAweDAwIAkjIHBhZAorCS5hbGlnbiAxNgorUElfNDoKKwkubG9uZwkwCisJLmxvbmcJMTA3MjI0MzE5NQorCS5sb25nCTExNzU1NjE3NjYKKwkubG9uZwkxMDQ4OTA4MDQzCisJLnR5cGUJUElfNCxAb2JqZWN0CisJLnNpemUJUElfNCwxNgorCS5hbGlnbiA4CitRUV8yOgorCS5sb25nCTE3MzQ4MTY2ODcKKwkubG9uZwkxMDI2NzQ2Mjk3CisJLnR5cGUJUVFfMixAb2JqZWN0CisJLnNpemUJUVFfMiw4CisJLmFsaWduIDgKK09ORToKKwkubG9uZwkwCisJLmxvbmcJMTA3MjY5MzI0OAorCS50eXBlCU9ORSxAb2JqZWN0CisJLnNpemUJT05FLDgKKwkuYWxpZ24gOAorVFdPX1BPV181NToKKwkubG9uZwkwCisJLmxvbmcJMTEzMDM2NDkyOAorCS50eXBlCVRXT19QT1dfNTUsQG9iamVjdAorCS5zaXplCVRXT19QT1dfNTUsOAorCS5hbGlnbiA4CitUV09fUE9XX001NToKKwkubG9uZwkwCisJLmxvbmcJMTAxNTAyMTU2OAorCS50eXBlCVRXT19QT1dfTTU1LEBvYmplY3QKKwkuc2l6ZQlUV09fUE9XX001NSw4CisJLmFsaWduIDQKK05FR19aRVJPOgorCS5sb25nCTAKKwkubG9uZwkyMTQ3NDgzNjQ4CisJLnR5cGUJTkVHX1pFUk8sQG9iamVjdAorCS5zaXplCU5FR19aRVJPLDgKKwkuZGF0YQorCS5zZWN0aW9uIC5ub3RlLkdOVS1zdGFjaywgIiIKKy8vIC0tIEJlZ2luIERXQVJGMiBTRUdNRU5UIC5laF9mcmFtZQorCS5zZWN0aW9uIC5laF9mcmFtZSwiYSIsQHByb2diaXRzCisuZWhfZnJhbWVfc2VnOgorCS5hbGlnbiAxCisJLjRieXRlIDB4MDAwMDAwMTQKKwkuOGJ5dGUgMHgwMDUyN2EwMTAwMDAwMDAwCisJLjhieXRlIDB4MDgwNzBjMWIwMTEwNzgwMQorCS40Ynl0ZSAweDAwMDAwMTkwCisJLjRieXRlIDB4MDAwMDAwMmMKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV90YW4uMS0uCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3Rhbi45LS4uX19fdGFnX3ZhbHVlX3Rhbi4xCisJLjJieXRlIDB4MDQwMAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV90YW4uMy0uLl9fX3RhZ192YWx1ZV90YW4uMQorCS40Ynl0ZSAweDAyODMxMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV90YW4uNS0uLl9fX3RhZ192YWx1ZV90YW4uMworCS4yYnl0ZSAweDIwMGUKKwkuYnl0ZSAweDA0CisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3Rhbi42LS4uX19fdGFnX3ZhbHVlX3Rhbi41CisJLjRieXRlIDB4MDRjMzEwMGUKKwkuNGJ5dGUgLi5fX190YWdfdmFsdWVfdGFuLjgtLi5fX190YWdfdmFsdWVfdGFuLjYKKwkuMmJ5dGUgMHgwODBlCisjIEVuZApkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvc190YW5oLlMgYi9saWJtL3g4Nl82NC9zX3RhbmguUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yYzhmOWJmCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvc190YW5oLlMKQEAgLTAsMCArMSwxMzkyIEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLy8gICAgICAgICAgICAgICAgICAgICBBTEdPUklUSE0gREVTQ1JJUFRJT04KKy8vICAgICAgICAgICAgICAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisvLworLy8gdGFuaCh4KT0oZXhwKHgpLWV4cCgteCkpLyhleHAoeCkrZXhwKC14KSk9KDEtZXhwKC0yKngpKS8oMStleHAoLTIqeCkpCisvLworLy8gTGV0IHx4fD14SCt4TCAodXBwZXIgMjYgYml0cywgbG93ZXIgMjcgYml0cykKKy8vIGxvZzIoZSkgcm91bmRlZCB0byAyNiBiaXRzIChoaWdoIHBhcnQpIHBsdXMgYSBkb3VibGUgcHJlY2lzaW9uIGxvdyBwYXJ0IGlzCisvLyAgICAgICAgIEwyRUgrTDJFTCAodXBwZXIgMjYsIGxvd2VyIDUzIGJpdHMpCisvLworLy8gTGV0IHhIKkwyRUg9aytmK3JgLCB3aGVyZSAoaytmKSoyXjgqMj1pbnQoeEgqTDJFSCoyXjkpLAorLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGY9MC5iMSBiMiAuLi4gYjgsIGsgaW50ZWdlcgorLy8gMl57LWZ9IGlzIGFwcHJveGltYXRlZCBhcyBUbltmXStEbltmXQorLy8gVG4gc3RvcmVzIHRoZSBoaWdoIDUzIGJpdHMsIERuIHN0b3JlcyAoMl57LWZ9LVRuW2ZdKSByb3VuZGVkIHRvIGRvdWJsZSBwcmVjaXNpb24KKy8vCisvLyAgcj1yYCt4TCpMMkVIK3x4fCpMMkVMLCB8cnw8Ml57LTl9KzJeey0xNH0sCisvLyAgICAgICAgICAgICAgICAgICAgICBmb3IgfHh8IGluIFsyMy82NCwzKjJeNykKKy8vIGVeey0yKnx4fH09Ml57LWstZn0qMl57LXJ9IH4gMl57LWt9KihUbitEbikqKDErcCk9KFQwK0QwKSooMStwKQorLy8KKy8vIEZvciB8eHwgaW4gWzJeey00fSwyXjUpOgorLy8gICAgICAgICAyXnstcn0tMSB+IHA9YzEqcitjMipyXjIrLi4rYzUqcl41CisvLyAgICAgIExldCBSPTEvKDErVDArcCpUMCksIHRydW5jYXRlZCB0byAzNSBzaWduaWZpY2FudCBiaXRzCisvLyAgUj0xLygxK1QwK0QwK3AqKFQwK0QwKSkqKDErZXBzKSwgfGVwc3w8Ml57LTMzfQorLy8gIDErVDArRDArcCooVDArRDApPUtIK0tMLCB3aGVyZQorLy8gICAgICAgS0g9KDErVDArYzEqcipUMClfaGlnaCAobGVhZGluZyAxNyBiaXRzKQorLy8gICAgICAgS0w9VDBfbG93K0QwKyhjMSpyKlQwKV9sb3crYzEqcipEMCsoYzIqcl4yKy4uYzUqcl41KSpUMAorLy8gIGVwcyB+IChSKktILTEpK1IqS0wKKy8vICAxLygxK1QwK0QwK3AqKFQwK0QwKSkgfiBSLVIqZXBzCisvLyAgVGhlIHJlc3VsdCBpcyBhcHByb3hpbWF0ZWQgYXMgKDEtVDAtRDAtKFQwK0QwKSpwKSooUi1SKmVwcykKKy8vICAxLVQwLUQwLShUMCtEMCkqcD0tKChLSC0yKStLTCkKKy8vICAgIFRoZSByZXN1bHQgaXMgZm9ybWVkIGFzCisvLyAgICAoS0gtMikqUisoLShLSC0yKSpSKmVwcysoS0wqUi1LTCpSKmVwcykpLCB3aXRoIHRoZSBjb3JyZWN0IHNpZ24KKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXQgYXQgdGhlIGVuZAorLy8KKy8vIEZvciB8eHwgaW4gWzJeey02NH0sMl57LTR9KToKKy8vICBBIFRheWxvciBzZXJpZXMgZXhwYW5zaW9uIGlzIHVzZWQgICh4K3AzKnheMysuLitwMTMqeF57MTN9KQorLy8KKy8vIEZvciB8eHw8Ml57LTY0fTogIHggaXMgcmV0dXJuZWQKKy8vCisvLyBGb3IgfHh8Pj0yXjMyOiByZXR1cm4gKy8tMQorLy8KKy8vIFNwZWNpYWwgY2FzZXM6CisvLyAgdGFuaChOYU4pID0gcXVpZXQgTmFOLCBhbmQgcmFpc2UgaW52YWxpZCBleGNlcHRpb24KKy8vICB0YW5oKElORikgPSB0aGF0IElORgorLy8gIHRhbmgoKy8tMCkgPSArLy0wCisvLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorIyAtLSBCZWdpbiAgdGFuaAorRU5UUlkodGFuaCkKKyMgcGFyYW1ldGVyIDE6ICV4bW0wCisuLkIxLjE6CisuLl9fX3RhZ192YWx1ZV90YW5oLjE6CisgICAgICAgIHB1c2hxICAgICAlcnNpCisuLl9fX3RhZ192YWx1ZV90YW5oLjM6CisuLkIxLjI6CisgICAgICAgIG1vdnNkICAgICBIQUxGTUFTSyglcmlwKSwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW00LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgTDJFKCVyaXApLCAleG1tMQorICAgICAgICBtb3ZzZCAgICAgOCtMMkUoJXJpcCksICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tNAorICAgICAgICBtb3ZzZCAgICAgU2hpZnRlciglcmlwKSwgJXhtbTYKKyAgICAgICAgcGV4dHJ3ICAgICQzLCAleG1tMCwgJWVjeAorICAgICAgICBhbmRwZCAgICAgJXhtbTAsICV4bW0zCisgICAgICAgIGFuZG5wZCAgICAleG1tMCwgJXhtbTQKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTQsICV4bW01CisgICAgICAgIG1vdmwgICAgICAkMzI3NjgsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICVlY3gsICVlZHgKKyAgICAgICAgYW5kbCAgICAgICQzMjc2NywgJWVjeAorICAgICAgICBzdWJsICAgICAgJDE2MzA0LCAlZWN4CisgICAgICAgIGNtcGwgICAgICAkMTQ0LCAlZWN4CisgICAgICAgIGphZSAgICAgICAuTF8yVEFHX1BBQ0tFVF8wLjAuMQorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tMSwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tMgorICAgICAgICBjdnRzZDJzaSAgJXhtbTMsICVlYXgKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTYsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNCwgJXhtbTEKKyAgICAgICAgbW92c2QgICAgIE9ORU1BU0soJXJpcCksICV4bW00CisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTMKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIHN1YnNkICAgICAleG1tMywgJXhtbTcKKyAgICAgICAgbW92YXBkICAgIGN2KCVyaXApLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0yCisgICAgICAgIG1vdmwgICAgICAkMjU1LCAlZWN4CisgICAgICAgIGFuZGwgICAgICAlZWF4LCAlZWN4CisgICAgICAgIGFkZGwgICAgICAlZWN4LCAlZWN4CisgICAgICAgIGxlYSAgICAgICBUMl9uZWdfZiglcmlwKSwgJXI4CisgICAgICAgIG1vdmFwZCAgICAoJXI4LCVyY3gsOCksICV4bW01CisgICAgICAgIHNocmwgICAgICAkNCwgJWVheAorICAgICAgICBhbmRsICAgICAgJDY1NTIwLCAlZWF4CisgICAgICAgIHN1YmwgICAgICAkMTYzNjgsICVlYXgKKyAgICAgICAgbmVnbCAgICAgICVlYXgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWF4LCAleG1tMAorICAgICAgICBtb3ZhcGQgICAgMTYrY3YoJXJpcCksICV4bW0xCisgICAgICAgIHBzaHVmZCAgICAkNjgsICV4bW0wLCAleG1tMAorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0wCisgICAgICAgIG1vdnNkICAgICAzMitjdiglcmlwKSwgJXhtbTcKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTIsICV4bW0yCisgICAgICAgIG1vdnEgICAgICAleG1tNCwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW0wLCAleG1tNAorICAgICAgICBtdWxwZCAgICAgJXhtbTIsICV4bW02CisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTcKKyAgICAgICAgbXVscGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBhZGRwZCAgICAgJXhtbTYsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92c2QgICAgIE9ORU1BU0soJXJpcCksICV4bW0zCisgICAgICAgIG11bHBkICAgICAleG1tMiwgJXhtbTEKKyAgICAgICAgcHNodWZkICAgICQ3OCwgJXhtbTEsICV4bW02CisgICAgICAgIGFkZHNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgbW92cSAgICAgICV4bW0xLCAleG1tNgorICAgICAgICBhZGRzZCAgICAgJXhtbTcsICV4bW0xCisgICAgICAgIG11bHNkICAgICAleG1tMCwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW00LCAleG1tMQorICAgICAgICBhbmRwZCAgICAgTUFTSzMoJXJpcCksICV4bW00CisgICAgICAgIGRpdnNkICAgICAleG1tMSwgJXhtbTUKKyAgICAgICAgc3Vic2QgICAgICV4bW00LCAleG1tMworICAgICAgICBwc2h1ZmQgICAgJDIzOCwgJXhtbTAsICV4bW0xCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTMKKyAgICAgICAgbW92cSAgICAgICV4bW00LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNywgJXhtbTEKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tNworICAgICAgICBhZGRzZCAgICAgJXhtbTEsICV4bW0zCisgICAgICAgIGFkZHNkICAgICAleG1tNywgJXhtbTQKKyAgICAgICAgbW92c2QgICAgIFJNQVNLKCVyaXApLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW02CisgICAgICAgIGFuZHBkICAgICBNQVNLMyglcmlwKSwgJXhtbTQKKyAgICAgICAgYWRkc2QgICAgICV4bW02LCAleG1tMworICAgICAgICBtb3ZxICAgICAgJXhtbTQsICV4bW02CisgICAgICAgIHN1YnNkICAgICAleG1tNCwgJXhtbTIKKyAgICAgICAgYWRkc2QgICAgICV4bW03LCAleG1tMgorICAgICAgICBtb3ZzZCAgICAgT05FTUFTSyglcmlwKSwgJXhtbTcKKyAgICAgICAgYW5kcGQgICAgICV4bW0xLCAleG1tNQorICAgICAgICBhZGRzZCAgICAgJXhtbTIsICV4bW0zCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTQKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTUsICV4bW0zCisgICAgICAgIHN1YnNkICAgICBUV09NQVNLKCVyaXApLCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTcsICV4bW00CisgICAgICAgIHhvcmwgICAgICAkMzI3NjgsICVlZHgKKyAgICAgICAgcGluc3J3ICAgICQzLCAlZWR4LCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW00CisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTYKKyAgICAgICAgbW92cSAgICAgICV4bW0zLCAleG1tMQorICAgICAgICBtdWxzZCAgICAgJXhtbTQsICV4bW0zCisgICAgICAgIG1vdnEgICAgICAleG1tNiwgJXhtbTAKKyAgICAgICAgbXVsc2QgICAgICV4bW00LCAleG1tNgorICAgICAgICBzdWJzZCAgICAgJXhtbTMsICV4bW0xCisgICAgICAgIHN1YnNkICAgICAleG1tNiwgJXhtbTEKKyAgICAgICAgYWRkc2QgICAgICV4bW0xLCAleG1tMAorICAgICAgICB4b3JwZCAgICAgJXhtbTIsICV4bW0wCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzAuMC4xOgorICAgICAgICBhZGRsICAgICAgJDk2MCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDExMDQsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzEuMC4xCisgICAgICAgIG1vdmFwZCAgICBwdiglcmlwKSwgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTAsICV4bW0xCisgICAgICAgIG1vdmFwZCAgICAxNitwdiglcmlwKSwgJXhtbTMKKyAgICAgICAgbXVscGQgICAgICV4bW0xLCAleG1tMQorICAgICAgICBtb3ZhcGQgICAgMzIrcHYoJXJpcCksICV4bW00CisgICAgICAgIG11bHBkICAgICAleG1tMSwgJXhtbTIKKyAgICAgICAgcHNodWZkICAgICQ2OCwgJXhtbTEsICV4bW01CisgICAgICAgIGFkZHBkICAgICAleG1tMywgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW01LCAleG1tNQorICAgICAgICBtdWxwZCAgICAgJXhtbTEsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tNSwgJXhtbTUKKyAgICAgICAgYWRkcGQgICAgICV4bW00LCAleG1tMgorICAgICAgICBtdWxwZCAgICAgJXhtbTUsICV4bW0yCisgICAgICAgIHBzaHVmZCAgICAkMjM4LCAleG1tMiwgJXhtbTUKKyAgICAgICAgYWRkc2QgICAgICV4bW01LCAleG1tMgorICAgICAgICBtdWxzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGFkZHNkICAgICAleG1tMiwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNAorLkxfMlRBR19QQUNLRVRfMS4wLjE6CisgICAgICAgIGFkZGwgICAgICAkMTUzNDQsICVlY3gKKyAgICAgICAgY21wbCAgICAgICQxNjQ0OCwgJWVjeAorICAgICAgICBqYWUgICAgICAgLkxfMlRBR19QQUNLRVRfMi4wLjEKKyAgICAgICAgY21wbCAgICAgICQxNiwgJWVjeAorICAgICAgICBqYiAgICAgICAgLkxfMlRBR19QQUNLRVRfMy4wLjEKKyAgICAgICAgeG9ycGQgICAgICV4bW0yLCAleG1tMgorICAgICAgICBtb3ZsICAgICAgJDE3MzkyLCAlZWF4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVheCwgJXhtbTIKKyAgICAgICAgbXVsc2QgICAgICV4bW0wLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIGptcCAgICAgICAuLkIxLjQKKy5MXzJUQUdfUEFDS0VUXzMuMC4xOgorICAgICAgICBtb3ZxICAgICAgJXhtbTAsICV4bW0yCisgICAgICAgIG11bHNkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgam1wICAgICAgIC4uQjEuNAorLkxfMlRBR19QQUNLRVRfMi4wLjE6CisgICAgICAgIGNtcGwgICAgICAkMzI3NTIsICVlY3gKKyAgICAgICAgamFlICAgICAgIC5MXzJUQUdfUEFDS0VUXzQuMC4xCisgICAgICAgIHhvcnBkICAgICAleG1tMiwgJXhtbTIKKyAgICAgICAgbW92bCAgICAgICQxNTM0NCwgJWVjeAorICAgICAgICBwaW5zcncgICAgJDMsICVlY3gsICV4bW0yCisgICAgICAgIG1vdnEgICAgICAleG1tMiwgJXhtbTMKKyAgICAgICAgbXVsc2QgICAgICV4bW0yLCAleG1tMgorICAgICAgICBhZGRzZCAgICAgJXhtbTMsICV4bW0yCisuTF8yVEFHX1BBQ0tFVF81LjAuMToKKyAgICAgICAgeG9ycGQgICAgICV4bW0wLCAleG1tMAorICAgICAgICBvcmwgICAgICAgJDE2MzY4LCAlZWR4CisgICAgICAgIHBpbnNydyAgICAkMywgJWVkeCwgJXhtbTAKKyAgICAgICAgam1wICAgICAgIC4uQjEuNAorLkxfMlRBR19QQUNLRVRfNC4wLjE6CisgICAgICAgIG1vdnEgICAgICAleG1tMCwgJXhtbTIKKyAgICAgICAgbW92ZCAgICAgICV4bW0wLCAlZWF4CisgICAgICAgIHBzcmxxICAgICAkMjAsICV4bW0yCisgICAgICAgIG1vdmQgICAgICAleG1tMiwgJWVjeAorICAgICAgICBvcmwgICAgICAgJWVheCwgJWVjeAorICAgICAgICBjbXBsICAgICAgJDAsICVlY3gKKyAgICAgICAgamUgICAgICAgIC5MXzJUQUdfUEFDS0VUXzUuMC4xCisgICAgICAgIGFkZHNkICAgICAleG1tMCwgJXhtbTAKKyAgICAgICAgbW92cSAgICAgICV4bW0wLCAoJXJzcCkKKy5MXzJUQUdfUEFDS0VUXzYuMC4xOgorLi5CMS40OgorICAgICAgICBwb3BxICAgICAgJXJjeAorLi5fX190YWdfdmFsdWVfdGFuaC40OgorICAgICAgICByZXQgICAgICAgCisuLl9fX3RhZ192YWx1ZV90YW5oLjU6CitFTkQodGFuaCkKKyMgLS0gRW5kICB0YW5oCisJLnNlY3Rpb24gLnJvZGF0YSwgImEiCisJLmFsaWduIDE2CisJLmFsaWduIDE2CitMMkU6CisJLmxvbmcJMTYxMDYxMjczNgorCS5sb25nCTEwODI1OTQ2MzEKKwkubG9uZwk0MTY2OTAxNTcyCisJLmxvbmcJMTA1NTE3NDE1NQorCS50eXBlCUwyRSxAb2JqZWN0CisJLnNpemUJTDJFLDE2CisJLmFsaWduIDE2CitTaGlmdGVyOgorCS5sb25nCTAKKwkubG9uZwkxMTI3NzQzNDg4CisJLmxvbmcJMAorCS5sb25nCTMyNzUyMjcxMzYKKwkudHlwZQlTaGlmdGVyLEBvYmplY3QKKwkuc2l6ZQlTaGlmdGVyLDE2CisJLmFsaWduIDE2CitjdjoKKwkubG9uZwkzODg0NjA3MjgxCisJLmxvbmcJMzE2ODEzMTE5OQorCS5sb25nCTM2MDc0MDQ3MzUKKwkubG9uZwkzMTkwNTgyMDI0CisJLmxvbmcJMTg3NDQ4MDc1OQorCS5sb25nCTEwMzIwNDExMzEKKwkubG9uZwk0Mjg2NzYwMzM0CisJLmxvbmcJMTA1MzczNjg5MworCS5sb25nCTQyNzc4MTE2OTUKKwkubG9uZwkzMjExMTQ0NzcwCisJLmxvbmcJMAorCS5sb25nCTAKKwkudHlwZQljdixAb2JqZWN0CisJLnNpemUJY3YsNDgKKwkuYWxpZ24gMTYKK1QyX25lZ19mOgorCS5sb25nCTAKKwkubG9uZwkxMDcyNjkzMjQ4CisJLmxvbmcJMAorCS5sb25nCTAKKwkubG9uZwkxNzk3OTIzODAxCisJLmxvbmcJMTA3MjY4NzU3NworCS5sb25nCTE5NTA1NDc0MjcKKwkubG9uZwkxMDEzMjI5MDU5CisJLmxvbmcJNzMwODIxMTA1CisJLmxvbmcJMTA3MjY4MTkyMgorCS5sb25nCTI1MjMyMzI3NDMKKwkubG9uZwkxMDEyMDY3MTg4CisJLmxvbmcJOTE1NTkyNDY4CisJLmxvbmcJMTA3MjY3NjI4MgorCS5sb25nCTM1Mjk0Nzg5NAorCS5sb25nCTMxNjEwMjQzNzEKKwkubG9uZwkyMTc0NjUyNjMyCisJLmxvbmcJMTA3MjY3MDY1NworCS5sb25nCTQwODc3MTQ1OTAKKwkubG9uZwkxMDE0NDUwMjU5CisJLmxvbmcJMzU5MjkyMjUKKwkubG9uZwkxMDcyNjY1MDQ4CisJLmxvbmcJMjgwOTc4ODA0MQorCS5sb25nCTMxNTk0MzY5NjgKKwkubG9uZwkyOTEyNzMwNjQ0CisJLmxvbmcJMTA3MjY1OTQ1MworCS5sb25nCTM0OTAwNjc3MjIKKwkubG9uZwkzMTYzNDA1MDc0CisJLmxvbmcJMjAzODk3MzY4OAorCS5sb25nCTEwNzI2NTM4NzQKKwkubG9uZwk4OTI5NDEzNzQKKwkubG9uZwkxMDE2MDQ2NDU5CisJLmxvbmcJMTUzMzk1MzM0NAorCS5sb25nCTEwNzI2NDgzMTAKKwkubG9uZwk3NjkxNzE4NTEKKwkubG9uZwkxMDE1NjY1NjMzCisJLmxvbmcJMTIyMjQ3MjMwOAorCS5sb25nCTEwNzI2NDI3NjEKKwkubG9uZwkxMDU0MzU3NDcwCisJLmxvbmcJMzE2MTAyMTAxOAorCS5sb25nCTkyOTgwNjk5OQorCS5sb25nCTEwNzI2MzcyMjcKKwkubG9uZwkzMjA1MzM2NjQzCisJLmxvbmcJMTAxNTI1OTU1NworCS5sb25nCTQ4MTcwNjI4MgorCS5sb25nCTEwNzI2MzE3MDgKKwkubG9uZwkxNjk2MDc5MTczCisJLmxvbmcJMzE2MjcxMDUyOAorCS5sb25nCTM5OTkzNTc0NzkKKwkubG9uZwkxMDcyNjI2MjAzCisJLmxvbmcJMjI1ODk0MTYxNgorCS5sb25nCTEwMTU5MjQ3MjQKKwkubG9uZwkyNzE5NTE1OTIwCisJLmxvbmcJMTA3MjYyMDcxNAorCS5sb25nCTI3NjAzMzI5NDEKKwkubG9uZwkxMDE1MTM3OTMzCisJLmxvbmcJNzY0MzA3NDQxCisJLmxvbmcJMTA3MjYxNTI0MAorCS5sb25nCTMwMjEwNTc0MjAKKwkubG9uZwkzMTYzMzI5NTIzCisJLmxvbmcJMjI1NjMyNTIzMAorCS5sb25nCTEwNzI2MDk3ODAKKwkubG9uZwk1ODAxMTc3NDYKKwkubG9uZwkxMDE1MzE3Mjk1CisJLmxvbmcJMjcyODY5Mzk3OAorCS5sb25nCTEwNzI2MDQzMzUKKwkubG9uZwkzOTYxMDk5NzEKKwkubG9uZwkzMTYzNDYyNjkxCisJLmxvbmcJMjAwOTk3MDQ5NgorCS5sb25nCTEwNzI1OTg5MDUKKwkubG9uZwkyMTU5MDM5NjY1CisJLmxvbmcJMzE2MjU3Mjk0OAorCS5sb25nCTQyMjQxNDI0NjcKKwkubG9uZwkxMDcyNTkzNDg5CisJLmxvbmcJMzM4OTgyMDM4NgorCS5sb25nCTEwMTUyMDcyMDIKKwkubG9uZwk2MTA3NTgwMDYKKwkubG9uZwkxMDcyNTg4MDg5CisJLmxvbmcJMTk2NTIwOTM5NworCS5sb25nCTMxNjE4NjYyMzIKKwkubG9uZwkzODg0NjYyNzc0CisJLmxvbmcJMTA3MjU4MjcwMgorCS5sb25nCTIxNTg2MTE1OTkKKwkubG9uZwkxMDE0MjEwMTg1CisJLmxvbmcJOTkxMzU4NDgyCisJLmxvbmcJMTA3MjU3NzMzMQorCS5sb25nCTgzODcxNTAxOQorCS5sb25nCTMxNjMxNTc2NjgKKwkubG9uZwkzNTE2NDE4OTcKKwkubG9uZwkxMDcyNTcxOTc0CisJLmxvbmcJMjE3MjI2MTUyNgorCS5sb25nCTMxNjMwMTA1OTkKKwkubG9uZwkxNzk2ODMyNTM1CisJLmxvbmcJMTA3MjU2NjYzMQorCS5sb25nCTMxNzY5NTU3MTYKKwkubG9uZwkzMTYwNTg1NTEzCisJLmxvbmcJODYzNzM4NzE5CisJLmxvbmcJMTA3MjU2MTMwMworCS5sb25nCTEzMjY5OTIyMjAKKwkubG9uZwkzMTYyNjEzMTk3CisJLmxvbmcJMTY3OTU1ODIzMgorCS5sb25nCTEwNzI1NTU5ODkKKwkubG9uZwkyMzkwMzQyMjg3CisJLmxvbmcJMzE2MzMzMzk3MAorCS5sb25nCTQwNzY5NzUyMDAKKwkubG9uZwkxMDcyNTUwNjg5CisJLmxvbmcJMjAyOTAwMDg5OQorCS5sb25nCTEwMTUyMDg1MzUKKwkubG9uZwkzNTk0MTU4ODY5CisJLmxvbmcJMTA3MjU0NTQwNAorCS5sb25nCTI0NTY1MjE3MDAKKwkubG9uZwkzMTYzMjU2NTYxCisJLmxvbmcJNjQ2OTY5NjUKKwkubG9uZwkxMDcyNTQwMTM0CisJLmxvbmcJMTc2ODc5NzQ5MAorCS5sb25nCTEwMTU4MTY5NjAKKwkubG9uZwkxOTEyNTYxNzgxCisJLmxvbmcJMTA3MjUzNDg3NworCS5sb25nCTMxNDc0OTUxMDIKKwkubG9uZwkxMDE1Njc4MjUzCisJLmxvbmcJMzgyMzA1MTc2CisJLmxvbmcJMTA3MjUyOTYzNQorCS5sb25nCTIzNDc2MjIzNzYKKwkubG9uZwkzMTYyNTc4NjI1CisJLmxvbmcJMzg5ODc5NTczMQorCS5sb25nCTEwNzI1MjQ0MDYKKwkubG9uZwkxMjQ5OTk0MTQ0CisJLmxvbmcJMTAxMTg2OTgxOAorCS5sb25nCTM3MDc0NzkxNzUKKwkubG9uZwkxMDcyNTE5MTkyCisJLmxvbmcJMzYxMzA3OTMwMworCS5sb25nCTEwMTQxNjQ3MzgKKwkubG9uZwkzOTM5MTQ4MjQ2CisJLmxvbmcJMTA3MjUxMzk5MgorCS5sb25nCTMyMTAzNTIxNDgKKwkubG9uZwkxMDE1Mjc0MzIzCisJLmxvbmcJMTM1MTA1MDEwCisJLmxvbmcJMTA3MjUwODgwNworCS5sb25nCTE5MDYxNDg3MjgKKwkubG9uZwkzMTYzMzc1NzM5CisJLmxvbmcJNzIxOTk2MTM2CisJLmxvbmcJMTA3MjUwMzYzNQorCS5sb25nCTU2Mzc1NDczNAorCS5sb25nCTEwMTUzNzEzMTgKKwkubG9uZwkxMjQyMDA3OTMyCisJLmxvbmcJMTA3MjQ5ODQ3NworCS5sb25nCTExMzIwMzQ3MTYKKwkubG9uZwkzMTYzMzM5ODMxCisJLmxvbmcJMTUzMjczNDMyNAorCS5sb25nCTEwNzI0OTMzMzMKKwkubG9uZwkzMDk0MjE2NTM1CisJLmxvbmcJMzE2MzE2Mjg1NworCS5sb25nCTE0MzIyMDgzNzgKKwkubG9uZwkxMDcyNDg4MjAzCisJLmxvbmcJMTQwMTA2ODkxNAorCS5sb25nCTMxNjIzNjM5NjMKKwkubG9uZwk3Nzg5MDExMDkKKwkubG9uZwkxMDcyNDgzMDg3CisJLmxvbmcJMjI0ODE4Mzk1NQorCS5sb25nCTMxNjEyNjg3NTEKKwkubG9uZwkzNzA2Njg3NTkzCisJLmxvbmcJMTA3MjQ3Nzk4NAorCS5sb25nCTM1MjE3MjY5NDAKKwkubG9uZwkxMDEzMjUzMDY3CisJLmxvbmcJMTQ2NDk3NjYwMworCS5sb25nCTEwNzI0NzI4OTYKKwkubG9uZwkzNTA3MjkyNDA1CisJLmxvbmcJMzE2MTk3NzUzNAorCS5sb25nCTI0ODM0ODA1MDEKKwkubG9uZwkxMDcyNDY3ODIxCisJLmxvbmcJMTIxNjM3MTc4MAorCS5sb25nCTEwMTMwMzQxNzIKKwkubG9uZwkyMzA3NDQyOTk1CisJLmxvbmcJMTA3MjQ2Mjc2MAorCS5sb25nCTMxOTAxMTc3MjEKKwkubG9uZwkzMTYyNDA0NTM5CisJLmxvbmcJNzc3NTA3MTQ3CisJLmxvbmcJMTA3MjQ1NzcxMworCS5sb25nCTQyODI5MjQyMDUKKwkubG9uZwkxMDE1MTg3NTMzCisJLmxvbmcJMjAyOTcxNDIxMAorCS5sb25nCTEwNzI0NTI2NzkKKwkubG9uZwk2MTM2NjAwNzkKKwkubG9uZwkxMDE1MDk5MTQzCisJLmxvbmcJMTYxMDYwMDU3MAorCS5sb25nCTEwNzI0NDc2NTkKKwkubG9uZwkzNzY2NzMyMjk4CisJLmxvbmcJMTAxNTc2MDE4MworCS5sb25nCTM2NTcwNjU3NzIKKwkubG9uZwkxMDcyNDQyNjUyCisJLmxvbmcJMzk5MDI1NjIzCisJLmxvbmcJMzE2Mjk1NzA3OAorCS5sb25nCTM3MTY1MDIxNzIKKwkubG9uZwkxMDcyNDM3NjU5CisJLmxvbmcJMjMwMzc0MDEyNQorCS5sb25nCTEwMTQwNDI3MjUKKwkubG9uZwkxNjMxNjk1Njc3CisJLmxvbmcJMTA3MjQzMjY4MAorCS5sb25nCTI3MTc2MzMwNzYKKwkubG9uZwkzMTYyMzQ0MDI2CisJLmxvbmcJMTU0MDgyNDU4NQorCS5sb25nCTEwNzI0Mjc3MTQKKwkubG9uZwkxMDY0MDE3MDExCisJLmxvbmcJMzE2MzQ4NzY5MAorCS5sb25nCTMyODc1MjM4NDcKKwkubG9uZwkxMDcyNDIyNzYxCisJLmxvbmcJMTYyNTk3MTUzOQorCS5sb25nCTMxNTcwMDk5NTUKKwkubG9uZwkyNDIwODgzOTIyCisJLmxvbmcJMTA3MjQxNzgyMgorCS5sb25nCTIwNDk4MTAwNTIKKwkubG9uZwkxMDE0MTE5ODg4CisJLmxvbmcJMzA4MDM1MTUxOQorCS5sb25nCTEwNzI0MTI4OTYKKwkubG9uZwkzMzc5MTI2Nzg4CisJLmxvbmcJMzE1NzIxODAwMQorCS5sb25nCTgxNTg1OTI3NAorCS5sb25nCTEwNzI0MDc5ODQKKwkubG9uZwkyNDAzOTY1OTAKKwkubG9uZwkzMTYzNDg3NDQzCisJLmxvbmcJNDA2MjY2MTA5MgorCS5sb25nCTEwNzI0MDMwODQKKwkubG9uZwkxNDIyNjE2MDA2CisJLmxvbmcJMzE2MzI1NTMxOAorCS5sb25nCTQwNzY1NTk5NDMKKwkubG9uZwkxMDcyMzk4MTk4CisJLmxvbmcJMjExOTQ3ODMzMQorCS5sb25nCTMxNjA3NTgzNTEKKwkubG9uZwk3MDM3MTA1MDYKKwkubG9uZwkxMDcyMzkzMzI2CisJLmxvbmcJMTM4NDY2MDg0NgorCS5sb25nCTEwMTUxOTU4OTEKKwkubG9uZwkyMzgwNjE4MDQyCisJLmxvbmcJMTA3MjM4ODQ2NgorCS5sb25nCTMxNDk1NTcyMTkKKwkubG9uZwkzMTYzMzIwNzk5CisJLmxvbmcJMzY0MzMzNDg5CisJLmxvbmcJMTA3MjM4MzYyMAorCS5sb25nCTM5MjM3Mzc3NDQKKwkubG9uZwkzMTYxNDIxMzczCisJLmxvbmcJMzA5MjE5MDcxNQorCS5sb25nCTEwNzIzNzg3ODYKKwkubG9uZwk4MTQwMTIxNjgKKwkubG9uZwkzMTU5NTIzNDIyCisJLmxvbmcJMTgyMjA2NzAyNgorCS5sb25nCTEwNzIzNzM5NjYKKwkubG9uZwkxMjQxOTk0OTU2CisJLmxvbmcJMTAxNTM0MDI5MAorCS5sb25nCTY5NzE1MzEyNgorCS5sb25nCTEwNzIzNjkxNTkKKwkubG9uZwkxMjgzNTE1NDI5CisJLmxvbmcJMzE2MzI4MzE4OQorCS5sb25nCTM4NjEwNTAxMTEKKwkubG9uZwkxMDcyMzY0MzY0CisJLmxvbmcJMjU0ODkzNzczCisJLmxvbmcJMzE2MjgxMzE4MAorCS5sb25nCTI1NzI4NjY0NzcKKwkubG9uZwkxMDcyMzU5NTgzCisJLmxvbmcJODc4NTYyNDMzCisJLmxvbmcJMTAxNTUyMTc0MQorCS5sb25nCTk3NzAyMDc4OAorCS5sb25nCTEwNzIzNTQ4MTUKKwkubG9uZwkzMDY1MTAwNTE3CisJLmxvbmcJMTAxNTU0MTU2MworCS5sb25nCTMyMTgzMzg2ODIKKwkubG9uZwkxMDcyMzUwMDU5CisJLmxvbmcJMzQwNDE2NDMwNAorCS5sb25nCTMxNjI0NzcxMDgKKwkubG9uZwk1NTcxNDk4ODIKKwkubG9uZwkxMDcyMzQ1MzE3CisJLmxvbmcJMzY3MjcyMDcwOQorCS5sb25nCTEwMTQ1MzcyNjUKKwkubG9uZwkxNDM0MDU4MTc1CisJLmxvbmcJMTA3MjM0MDU4NworCS5sb25nCTI1MTEzMzIzMworCS5sb25nCTEwMTUwODU3NjkKKwkubG9uZwkxNDA1MTY5MjQxCisJLmxvbmcJMTA3MjMzNTg3MAorCS5sb25nCTI5OTg1Mzk2ODkKKwkubG9uZwkzMTYyODMwOTUxCisJLmxvbmcJMzIxOTU4NzQ0CisJLmxvbmcJMTA3MjMzMTE2NgorCS5sb25nCTM0MDE5MzM3NjcKKwkubG9uZwkxMDE1Nzk0NTU4CisJLmxvbmcJMjMzMTI3MTI1MAorCS5sb25nCTEwNzIzMjY0NzQKKwkubG9uZwk4MTIwNTc0NDYKKwkubG9uZwkxMDEyMjA3NDQ2CisJLmxvbmcJMjk5MDQxNzI0NQorCS5sb25nCTEwNzIzMjE3OTUKKwkubG9uZwkzNjgzNDY3NzQ1CisJLmxvbmcJMzE2MzM2OTMyNgorCS5sb25nCTIxNTIwNzM5NDQKKwkubG9uZwkxMDcyMzE3MTI5CisJLmxvbmcJMTQ4Njg2MDU3NgorCS5sb25nCTMxNjMyMDM0NTYKKwkubG9uZwkzOTY0Mjg0MjExCisJLmxvbmcJMTA3MjMxMjQ3NQorCS5sb25nCTIxMTE1ODM5MTUKKwkubG9uZwkxMDE1NDI3MTY0CisJLmxvbmcJMzk4NTU1MzU5NQorCS5sb25nCTEwNzIzMDc4MzQKKwkubG9uZwk0MDAyMTQ2MDYyCisJLmxvbmcJMTAxNTgzNDEzNgorCS5sb25nCTIwNjk3NTExNDEKKwkubG9uZwkxMDcyMzAzMjA2CisJLmxvbmcJMTU2MjE3MDY3NQorCS5sb25nCTMxNjI3MjQ2ODEKKwkubG9uZwkyMzY2MTA4MzE4CisJLmxvbmcJMTA3MjI5ODU5MAorCS5sb25nCTI4Njc5ODUxMDIKKwkubG9uZwkzMTYxNzYyMjU0CisJLmxvbmcJNDM0MzE2MDY3CisJLmxvbmcJMTA3MjI5Mzk4NworCS5sb25nCTIwMjgzNTg3NjYKKwkubG9uZwkxMDEzNDU4MTIyCisJLmxvbmcJNDI0MzkyOTE3CisJLmxvbmcJMTA3MjI4OTM5NgorCS5sb25nCTI3NDkyMDI5OTUKKwkubG9uZwkzMTYyODM4NzE4CisJLmxvbmcJMjE5MTc4MjAzMgorCS5sb25nCTEwNzIyODQ4MTcKKwkubG9uZwkyOTYwMjU3NzI2CisJLmxvbmcJMTAxMzc0MjY2MgorCS5sb25nCTEyOTczNTAxNTcKKwkubG9uZwkxMDcyMjgwMjUxCisJLmxvbmcJMTMwODAyMjA0MAorCS5sb25nCTMxNjM0MTI1NTgKKwkubG9uZwkxODkyMjg4NDQyCisJLmxvbmcJMTA3MjI3NTY5NworCS5sb25nCTI0NDYyNTU2NjYKKwkubG9uZwkzMTYyNjAwMzgxCisJLmxvbmcJMzgzMzIwOTUwNgorCS5sb25nCTEwNzIyNzExNTUKKwkubG9uZwkyNzIyOTIwNjg0CisJLmxvbmcJMTAxMzc1NDg0MgorCS5sb25nCTI2ODIxNDYzODQKKwkubG9uZwkxMDcyMjY2NjI2CisJLmxvbmcJMjA4MjE3ODUxMworCS5sb25nCTMxNjMzNjM0MTkKKwkubG9uZwkyNTkxNDUzMzYzCisJLmxvbmcJMTA3MjI2MjEwOQorCS5sb25nCTIxMzIzOTYxODIKKwkubG9uZwkzMTU5MDc0MTk4CisJLmxvbmcJMzQxODkwMzA1NQorCS5sb25nCTEwNzIyNTc2MDQKKwkubG9uZwkyNTI3NDU3MzM3CisJLmxvbmcJMzE2MDgyMDYwNAorCS5sb25nCTcyNzY4NTM0OQorCS5sb25nCTEwNzIyNTMxMTIKKwkubG9uZwkyMDM4MjQ2ODA5CisJLmxvbmcJMzE2MjM1ODc0MgorCS5sb25nCTI5NjYyNzU1NTcKKwkubG9uZwkxMDcyMjQ4NjMxCisJLmxvbmcJMjE3NjE1NTMyNAorCS5sb25nCTMxNTk4NDI3NTkKKwkubG9uZwkxNDAzNjYyMzA2CisJLmxvbmcJMTA3MjI0NDE2MworCS5sb25nCTI3ODg4MDk1OTkKKwkubG9uZwkzMTYxNjcxMDA3CisJLmxvbmcJMTk0MTE3NTc0CisJLmxvbmcJMTA3MjIzOTcwNworCS5sb25nCTc3NzUyODYxMgorCS5sb25nCTMxNjM0MTIwODkKKwkubG9uZwkzNDkyMjkzNzcwCisJLmxvbmcJMTA3MjIzNTI2MgorCS5sb25nCTIyNDgwMzIyMTAKKwkubG9uZwkxMDE1Mzg2ODI2CisJLmxvbmcJMjU2ODMyMDgyMgorCS5sb25nCTEwNzIyMzA4MzAKKwkubG9uZwkyNzMyODI0NDI4CisJLmxvbmcJMTAxNDM1MjkxNQorCS5sb25nCTE1Nzc2MDg5MjEKKwkubG9uZwkxMDcyMjI2NDEwCisJLmxvbmcJMTg3NTQ4OTUxMAorCS5sb25nCTMxNjI5NjgzOTQKKwkubG9uZwkzODA5NzgzMTYKKwkubG9uZwkxMDcyMjIyMDAyCisJLmxvbmcJODU0MTg4OTcwCisJLmxvbmcJMzE2MDQ2MjY4NgorCS5sb25nCTMxMzQ1OTI4ODgKKwkubG9uZwkxMDcyMjE3NjA1CisJLmxvbmcJNDIzMjI2Njg2MgorCS5sb25nCTEwMTU5OTExMzQKKwkubG9uZwkxMTEwMDg5OTQ3CisJLmxvbmcJMTA3MjIxMzIyMQorCS5sb25nCTE0NTE2NDE2MzkKKwkubG9uZwkxMDE1NDc0NjczCisJLmxvbmcJMjc1OTM1MDI4NworCS5sb25nCTEwNzIyMDg4NDgKKwkubG9uZwkxMTQ4NTI2NjM0CisJLmxvbmcJMTAxNTg5NDkzMworCS5sb25nCTM2NDk3MjYxMDUKKwkubG9uZwkxMDcyMjA0NDg3CisJLmxvbmcJNDA4NTAzNjM0NgorCS5sb25nCTEwMTU2NDk0NzQKKwkubG9uZwkzNjQzOTA5MTc0CisJLmxvbmcJMTA3MjIwMDEzOAorCS5sb25nCTM1Mzc1ODYxMDkKKwkubG9uZwkxMDE0MzU0NjQ3CisJLmxvbmcJMjYwNDk2MjU0MQorCS5sb25nCTEwNzIxOTU4MDEKKwkubG9uZwkyNjE0NDI1Mjc0CisJLmxvbmcJMzE2MzUzOTE5MgorCS5sb25nCTM5NjMxOTUyMQorCS5sb25nCTEwNzIxOTE0NzYKKwkubG9uZwk0MTcyNDIwODE2CisJLmxvbmcJMzE1OTA3NDYzMgorCS5sb25nCTExNzY3NDk5OTcKKwkubG9uZwkxMDcyMTg3MTYyCisJLmxvbmcJMjczODk5ODc3OQorCS5sb25nCTMxNjIwMzU4NDQKKwkubG9uZwk1MTU0NTc1MjcKKwkubG9uZwkxMDcyMTgyODYwCisJLmxvbmcJODM2NzA5MzMzCisJLmxvbmcJMTAxNTY1MTIyNgorCS5sb25nCTI1NzE5NDc1MzkKKwkubG9uZwkxMDcyMTc4NTY5CisJLmxvbmcJMzU1ODE1OTA2NAorCS5sb25nCTMxNjMzNzY2NjkKKwkubG9uZwkyOTE2MTU3MTQ1CisJLmxvbmcJMTA3MjE3NDI5MAorCS5sb25nCTIxOTQ4NzU2NQorCS5sb25nCTEwMTUzMDkzNjcKKwkubG9uZwkxNDEzMzU2MDUwCisJLmxvbmcJMTA3MjE3MDAyMworCS5sb25nCTE2NTEzNDkyOTEKKwkubG9uZwkzMTYyNjY4MTY2CisJLmxvbmcJMjIyNDE0NTU1MworCS5sb25nCTEwNzIxNjU3NjcKKwkubG9uZwkzNDgyNTIyMDMwCisJLmxvbmcJMzE2MTQ4OTE2OQorCS5sb25nCTkxOTU1NTY4MgorCS5sb25nCTEwNzIxNjE1MjMKKwkubG9uZwkzMTIxOTY5NTM0CisJLmxvbmcJMTAxMjk0ODIyNgorCS5sb25nCTE2NjA5MTMzOTIKKwkubG9uZwkxMDcyMTU3MjkwCisJLmxvbmcJNDIxODU5OTYwNAorCS5sb25nCTEwMTUxMzU3MDcKKwkubG9uZwkxOTk3MjQwMgorCS5sb25nCTEwNzIxNTMwNjkKKwkubG9uZwkzNTA3ODk5ODYyCisJLmxvbmcJMTAxNjAwOTI5MgorCS5sb25nCTE1ODc4MTQwMworCS5sb25nCTEwNzIxNDg4NTkKKwkubG9uZwkyMjIxNDY0NzEyCisJLmxvbmcJMzE2MzI4NjQ1MworCS5sb25nCTE5NDQ3ODExOTEKKwkubG9uZwkxMDcyMTQ0NjYwCisJLmxvbmcJMzk5MzI3ODc2NworCS5sb25nCTMxNjE3MjQyNzkKKwkubG9uZwk5NTA4MDM3MDIKKwkubG9uZwkxMDcyMTQwNDczCisJLmxvbmcJMTY1NTM2NDkyNgorCS5sb25nCTEwMTUyMzcwMzIKKwkubG9uZwkxMzM5OTcyOTI3CisJLmxvbmcJMTA3MjEzNjI5NworCS5sb25nCTE2NzkwODkwOQorCS5sb25nCTEwMTU1NzIxNTIKKwkubG9uZwkyOTgwODAyMDU3CisJLmxvbmcJMTA3MjEzMjEzMgorCS5sb25nCTM3ODYxOTg5NgorCS5sb25nCTEwMTU3NzMzMDMKKwkubG9uZwkxNDQ3MTkyNTIxCisJLmxvbmcJMTA3MjEyNzk3OQorCS5sb25nCTE0NjI4NTcxNzEKKwkubG9uZwkzMTYyNTE0NTIxCisJLmxvbmcJOTAzMzM0OTA5CisJLmxvbmcJMTA3MjEyMzgzNworCS5sb25nCTE2MzY0NjIxMDgKKwkubG9uZwkxMDE1MDM5OTk3CisJLmxvbmcJMTIxODgwNjEzMgorCS5sb25nCTEwNzIxMTk3MDYKKwkubG9uZwkxODE4NjEzMDUyCisJLmxvbmcJMzE2MjU0ODQ0MQorCS5sb25nCTIyNjM1MzU3NTQKKwkubG9uZwkxMDcyMTE1NTg2CisJLmxvbmcJNzUyMjMzNTg2CisJLmxvbmcJMzE2MjYzOTAwOAorCS5sb25nCTM5MDc4MDUwNDQKKwkubG9uZwkxMDcyMTExNDc3CisJLmxvbmcJMjI1NzA5MTIyNQorCS5sb25nCTMxNjE1NTA0MDcKKwkubG9uZwkxNzI3Mjc4NzI3CisJLmxvbmcJMTA3MjEwNzM4MAorCS5sb25nCTM1NjI3MTA2MjMKKwkubG9uZwkxMDExNDcxOTQwCisJLmxvbmcJNDE4Mjg3MzIyMAorCS5sb25nCTEwNzIxMDMyOTMKKwkubG9uZwk2Mjk1NDI2NDYKKwkubG9uZwkzMTYxOTk2MzAzCisJLmxvbmcJMjU1NTk4NDYxMworCS5sb25nCTEwNzIwOTkyMTgKKwkubG9uZwkyNjUyNTU1NDQyCisJLmxvbmcJMzE2MjU1MjY5MgorCS5sb25nCTEwMTMyNTg3OTkKKwkubG9uZwkxMDcyMDk1MTU0CisJLmxvbmcJMTc0ODc5NzYxMQorCS5sb25nCTMxNjAxMjkwODIKKwkubG9uZwkzNzIxNjg4NjQ1CisJLmxvbmcJMTA3MjA5MTEwMAorCS5sb25nCTMwNjkyNzY5MzcKKwkubG9uZwkxMDE1ODM5NDAxCisJLmxvbmcJMTk2MzcxMTE2NworCS5sb25nCTEwNzIwODcwNTgKKwkubG9uZwkxNzQ0NzY3NzU3CisJLmxvbmcJMzE2MDU3NDI5NAorCS5sb25nCTQyMDE5Nzc2NjIKKwkubG9uZwkxMDcyMDgzMDI2CisJLmxvbmcJNzQ4MzMwMjU0CisJLmxvbmcJMTAxMzU5NDM1NworCS5sb25nCTE3MTk2MTQ0MTMKKwkubG9uZwkxMDcyMDc5MDA2CisJLmxvbmcJMzMwNDU4MTk4CisJLmxvbmcJMzE2MzI4Mjc0MAorCS5sb25nCTI5Nzk5NjAxMjAKKwkubG9uZwkxMDcyMDc0OTk2CisJLmxvbmcJMjU5OTEwOTcyNQorCS5sb25nCTEwMTQ0OTg0OTMKKwkubG9uZwkzNTYxNzkzOTA3CisJLmxvbmcJMTA3MjA3MDk5NworCS5sb25nCTExNTcwNTQwNTMKKwkubG9uZwkxMDExODkwMzUwCisJLmxvbmcJMzMzOTIwMzU3NAorCS5sb25nCTEwNzIwNjcwMDkKKwkubG9uZwkxNDgzNDk3NzgwCisJLmxvbmcJMzE2MjQwODc1NAorCS5sb25nCTIxODY2MTczODEKKwkubG9uZwkxMDcyMDYzMDMyCisJLmxvbmcJMjI3MDc2NDA4NAorCS5sb25nCTMxNjMyNzI3MTMKKwkubG9uZwk0MjczNzcwNDIzCisJLmxvbmcJMTA3MjA1OTA2NQorCS5sb25nCTMzODMxODA4MDkKKwkubG9uZwkzMTYzMjE4OTAxCisJLmxvbmcJODg1ODM0NTI4CisJLmxvbmcJMTA3MjA1NTExMAorCS5sb25nCTE5NzMyNTg1NDcKKwkubG9uZwkzMTYyMjYxNTY0CisJLmxvbmcJNDg4MTg4NDEzCisJLmxvbmcJMTA3MjA1MTE2NQorCS5sb25nCTMxOTk4MjEwMjkKKwkubG9uZwkxMDE1NTY0MDQ4CisJLmxvbmcJMjk1NjYxMjk5NworCS5sb25nCTEwNzIwNDcyMzAKKwkubG9uZwkyMTE4MTY5NzUxCisJLmxvbmcJMzE2MjczNTU1MworCS5sb25nCTM4NzIyNTc3ODAKKwkubG9uZwkxMDcyMDQzMzA2CisJLmxvbmcJMTI1MzU5MjEwMworCS5sb25nCTEwMTU5NTgzMzQKKwkubG9uZwkzMTExNTc0NTM3CisJLmxvbmcJMTA3MjAzOTM5MworCS5sb25nCTI2MDYxNjE0NzkKKwkubG9uZwkzMTYyNzU5NzQ2CisJLmxvbmcJNTUxMzQ5MTA1CisJLmxvbmcJMTA3MjAzNTQ5MQorCS5sb25nCTM4MjE5MTYwNTAKKwkubG9uZwkzMTYyMTA2NTg5CisJLmxvbmcJMzYzNjY3Nzg0CisJLmxvbmcJMTA3MjAzMTU5OQorCS5sb25nCTgxMzc1Mzk1MAorCS5sb25nCTEwMTU3ODUyMDkKKwkubG9uZwkyNDI1OTgxODQzCisJLmxvbmcJMTA3MjAyNzcxNworCS5sb25nCTI4MzAzOTA4NTEKKwkubG9uZwkzMTYzMzQ2NTk5CisJLmxvbmcJMjMyMTEwNjYxNQorCS5sb25nCTEwNzIwMjM4NDYKKwkubG9uZwkyMTcxMTc2NjEwCisJLmxvbmcJMTAwOTUzNTc3MQorCS5sb25nCTQyMjIxMjI0OTkKKwkubG9uZwkxMDcyMDE5OTg1CisJLmxvbmcJMTI3NzM3ODA3NAorCS5sb25nCTMxNjMyNTY3MzcKKwkubG9uZwkzNzEyNTA0ODczCisJLmxvbmcJMTA3MjAxNjEzNQorCS5sb25nCTg4NDkxOTQ5CisJLmxvbmcJMTAxNTQyNzY2MAorCS5sb25nCTY3MTAyNTEwMAorCS5sb25nCTEwNzIwMTIyOTYKKwkubG9uZwkzODMyMDE0MzUxCisJLmxvbmcJMzE2MzAyMjAzMAorCS5sb25nCTM1NjY3MTY5MjUKKwkubG9uZwkxMDcyMDA4NDY2CisJLmxvbmcJMTUzNjgyNjg1NgorCS5sb25nCTEwMTQxNDI0MzMKKwkubG9uZwkzNjg5MDcxODIzCisJLmxvbmcJMTA3MjAwNDY0NworCS5sb25nCTIzMjEwMDQ5OTYKKwkubG9uZwkzMTYyNTUyNzE2CisJLmxvbmcJOTE3ODQxODgyCisJLmxvbmcJMTA3MjAwMDgzOQorCS5sb25nCTE4NzE1NTY1CisJLmxvbmcJMTAxNTY1OTMwOAorCS5sb25nCTM3MjMwMzg5MzAKKwkubG9uZwkxMDcxOTk3MDQwCisJLmxvbmcJMzc4NDY1MjY0CisJLmxvbmcJMzE2MjU2OTU4MgorCS5sb25nCTMzOTUxMjk4NzEKKwkubG9uZwkxMDcxOTkzMjUyCisJLmxvbmcJNDAyNTM0NTQzNQorCS5sb25nCTMxNjIzMzUzODgKKwkubG9uZwk0MTA5ODA2ODg3CisJLmxvbmcJMTA3MTk4OTQ3NAorCS5sb25nCTQyMjQwMzk2NgorCS5sb25nCTEwMTQ0NjkyMjkKKwkubG9uZwkxNDUzMTUwMDgyCisJLmxvbmcJMTA3MTk4NTcwNworCS5sb25nCTQ5ODE1NDY2OQorCS5sb25nCTMxNjE0ODgwNjIKKwkubG9uZwkzODk2NDYzMDg3CisJLmxvbmcJMTA3MTk4MTk0OQorCS5sb25nCTExMzk3OTc4NzMKKwkubG9uZwkzMTYxMjMzODA1CisJLmxvbmcJMjczMTUwMTEyMgorCS5sb25nCTEwNzE5NzgyMDIKKwkubG9uZwkxNzc0MDMxODU1CisJLmxvbmcJMzE2MjQ3MDAyMQorCS5sb25nCTIxMzUyNDExOTgKKwkubG9uZwkxMDcxOTc0NDY1CisJLmxvbmcJMTIzNjc0Nzg3MQorCS5sb25nCTEwMTM1ODkxNDcKKwkubG9uZwkxOTkwMDEyMDcxCisJLmxvbmcJMTA3MTk3MDczOAorCS5sb25nCTM1MjkwNzA1NjMKKwkubG9uZwkzMTYyODEzMTkzCisJLmxvbmcJMjE3ODQ2MDY3MQorCS5sb25nCTEwNzE5NjcwMjEKKwkubG9uZwk3Nzc4NzgwOTgKKwkubG9uZwkzMTYyODQyNDkzCisJLmxvbmcJMjU4MzU1MTI0NQorCS5sb25nCTEwNzE5NjMzMTQKKwkubG9uZwkzMTYxMDk0MTk1CisJLmxvbmcJMTAxNTYwNjQ5MQorCS5sb25nCTMwODg1NjQ1MDAKKwkubG9uZwkxMDcxOTU5NjE3CisJLmxvbmcJMTc2MjMxMTUxNworCS5sb25nCTEwMTUwNDU2NzMKKwkubG9uZwkzNTc3MDk2NzQzCisJLmxvbmcJMTA3MTk1NTkzMAorCS5sb25nCTI5NTE0OTY0MTgKKwkubG9uZwkxMDEzNzkzNjg3CisJLmxvbmcJMzkzMzA1OTAzMQorCS5sb25nCTEwNzE5NTIyNTMKKwkubG9uZwkyMTMzMzY2NzY4CisJLmxvbmcJMzE2MTUzMTgzMgorCS5sb25nCTQwNDA2NzYzMTgKKwkubG9uZwkxMDcxOTQ4NTg2CisJLmxvbmcJNDA5MDYwOTIzOAorCS5sb25nCTEwMTU2NjM0NTgKKwkubG9uZwkzNzg0NDg2NjEwCisJLmxvbmcJMTA3MTk0NDkyOQorCS5sb25nCTE1ODE4ODMwNDAKKwkubG9uZwkzMTYxNjk4OTUzCisJLmxvbmcJMzA0OTM0MDExMgorCS5sb25nCTEwNzE5NDEyODIKKwkubG9uZwkzMDYyOTE1ODI0CisJLmxvbmcJMTAxMzE3MDU5NQorCS5sb25nCTE3MjAzOTgzOTEKKwkubG9uZwkxMDcxOTM3NjQ1CisJLmxvbmcJMzk4MDY3ODk2MworCS5sb25nCTMxNjMzMDAwODAKKwkubG9uZwkzOTc4MTAwODIzCisJLmxvbmcJMTA3MTkzNDAxNworCS5sb25nCTM1MTMwMjcxOTAKKwkubG9uZwkxMDE1ODQ1OTYzCisJLmxvbmcJMTExODI5NDU3OAorCS5sb25nCTEwNzE5MzA0MDAKKwkubG9uZwkyMTk3NDk1Njk0CisJLmxvbmcJMzE1OTkwOTQwMQorCS5sb25nCTE2MTcwMDQ4NDUKKwkubG9uZwkxMDcxOTI2NzkyCisJLmxvbmcJODI4MDQ5NDQKKwkubG9uZwkxMDEwMzQyNzc4CisJLmxvbmcJMTA2NTY2MjkzMgorCS5sb25nCTEwNzE5MjMxOTQKKwkubG9uZwkyNTMzNjcwOTE1CisJLmxvbmcJMTAxNDUzMDIzOAorCS5sb25nCTM2NDU5NDE5MTEKKwkubG9uZwkxMDcxOTE5NjA1CisJLmxvbmcJMzgxNDY4NTA4MQorCS5sb25nCTMxNjE1NzMzNDEKKwkubG9uZwk2NTQ5MTkzMDYKKwkubG9uZwkxMDcxOTE2MDI3CisJLmxvbmcJMzIzMjk2MTc1NworCS5sb25nCTMxNjMwNDc0NjkKKwkubG9uZwk1Njk4NDczMzgKKwkubG9uZwkxMDcxOTEyNDU4CisJLmxvbmcJNDcyOTQ1MjcyCisJLmxvbmcJMzE1OTI5MDcyOQorCS5sb25nCTMyNzgzNDgzMjQKKwkubG9uZwkxMDcxOTA4ODk4CisJLmxvbmcJMzA2OTQ5NzQxNgorCS5sb25nCTEwMTQ3NTA3MTIKKwkubG9uZwk3ODQxMzg1MgorCS5sb25nCTEwNzE5MDUzNDkKKwkubG9uZwk0MTgzMjI2ODY3CisJLmxvbmcJMzE2MzAxNzI1MQorCS5sb25nCTM3NDMxNzUwMjkKKwkubG9uZwkxMDcxOTAxODA4CisJLmxvbmcJMjA3MjgxMjQ5MAorCS5sb25nCTMxNjIxNzUwNzUKKwkubG9uZwkxMjc2MjYxNDEwCisJLmxvbmcJMTA3MTg5ODI3OAorCS5sb25nCTMwMDk4MTk0OAorCS5sb25nCTEwMTQ2ODQxNjkKKwkubG9uZwkxMTU2NDQwNDM1CisJLmxvbmcJMTA3MTg5NDc1NworCS5sb25nCTIzNTE0NTEyNDkKKwkubG9uZwkxMDEzOTY3MDU2CisJLmxvbmcJMzI3Mjg0NTU0MQorCS5sb25nCTEwNzE4OTEyNDUKKwkubG9uZwk5Mjg4NTI0MTkKKwkubG9uZwkzMTYzNDg4MjQ4CisJLmxvbmcJMzIxOTk0MjY0NAorCS5sb25nCTEwNzE4ODc3NDMKKwkubG9uZwkzNzk4OTkwNjE2CisJLmxvbmcJMTAxNTM2ODgwNgorCS5sb25nCTg4NzQ2MzkyNworCS5sb25nCTEwNzE4ODQyNTEKKwkubG9uZwkzNTk2NzQ0MTYzCisJLmxvbmcJMzE2MDc5NDE2NgorCS5sb25nCTQ2MDQwNzAyMworCS5sb25nCTEwNzE4ODA3NjgKKwkubG9uZwk0MjM3MTc1MDkyCisJLmxvbmcJMzE2MzEzODQ2OQorCS5sb25nCTE4MjkwOTk2MjIKKwkubG9uZwkxMDcxODc3Mjk0CisJLmxvbmcJMTAxNjY2MTE4MQorCS5sb25nCTMxNjM0NjEwMDUKKwkubG9uZwk1ODkxOTg2NjYKKwkubG9uZwkxMDcxODczODMwCisJLmxvbmcJMjY2NDM0NjE3MgorCS5sb25nCTMxNjMxNTc5NjIKKwkubG9uZwk5MjY1OTE0MzUKKwkubG9uZwkxMDcxODcwMzc1CisJLmxvbmcJMzIwODgzMzc2MgorCS5sb25nCTMxNjI5MTM1MTQKKwkubG9uZwkyNzMyNDkyODU5CisJLmxvbmcJMTA3MTg2NjkyOQorCS5sb25nCTI2OTE0Nzk2NDYKKwkubG9uZwkzMTYyMjU1Njg0CisJLmxvbmcJMTYwMzQ0NDcyMQorCS5sb25nCTEwNzE4NjM0OTMKKwkubG9uZwkxNTQ4NjMzNjQwCisJLmxvbmcJMzE2MjIwMTMyNgorCS5sb25nCTE3MjYyMTY3NDkKKwkubG9uZwkxMDcxODYwMDY2CisJLmxvbmcJMjQ2NjgwODIyOAorCS5sb25nCTMxNjE2NzY0MDUKKwkubG9uZwkyOTkyOTAzOTM1CisJLmxvbmcJMTA3MTg1NjY0OAorCS5sb25nCTIyMTgxNTQ0MDYKKwkubG9uZwkxMDE1MjI4MTkzCisJLmxvbmcJMTAwMDkyNTc0NgorCS5sb25nCTEwNzE4NTMyNDAKKwkubG9uZwkxMDE4NDkxNjcyCisJLmxvbmcJMzE2MzMwOTU0NAorCS5sb25nCTQyMzI4OTQ1MTMKKwkubG9uZwkxMDcxODQ5ODQwCisJLmxvbmcJMjM4MzkzODY4NAorCS5sb25nCTEwMTQ2Njg1MTkKKwkubG9uZwkzOTkxODQzNTgxCisJLmxvbmcJMTA3MTg0NjQ1MAorCS5sb25nCTQwOTI4NTM0NTcKKwkubG9uZwkxMDE0NTg1NzYzCisJLmxvbmcJMTcxMDMwMjkzCisJLmxvbmcJMTA3MTg0MzA3MAorCS5sb25nCTM1MjY0NjAxMzIKKwkubG9uZwkxMDE0NDI4Nzc4CisJLmxvbmcJMTI1MzkzNTIxMQorCS5sb25nCTEwNzE4Mzk2OTgKKwkubG9uZwkxMzk1MzgyOTMxCisJLmxvbmcJMzE1OTcwMjYxMworCS5sb25nCTI4Mzk0MjQ4NTQKKwkubG9uZwkxMDcxODM2MzM1CisJLmxvbmcJMTE3MTU5NjE2MworCS5sb25nCTEwMTMwNDE2NzkKKwkubG9uZwk1MjY2NTI4MDkKKwkubG9uZwkxMDcxODMyOTgyCisJLmxvbmcJNDIyMzQ1OTczNgorCS5sb25nCTEwMTU4NzkzNzUKKwkubG9uZwkyNzk5OTYwODQzCisJLmxvbmcJMTA3MTgyOTYzNworCS5sb25nCTE0MjM2NTUzODEKKwkubG9uZwkxMDE1MDIyMTUxCisJLmxvbmcJOTY0MTA3MDU1CisJLmxvbmcJMTA3MTgyNjMwMgorCS5sb25nCTI4MDA0Mzk1ODgKKwkubG9uZwkzMTYyODMzMjIxCisJLmxvbmcJMzUwNDAwMzQ3MgorCS5sb25nCTEwNzE4MjI5NzUKKwkubG9uZwkzNTk0MDAxMDYwCisJLmxvbmcJMzE1NzMzMDY1MgorCS5sb25nCTE3MjQ5NzY5MTUKKwkubG9uZwkxMDcxODE5NjU4CisJLmxvbmcJNDIwOTA5MjIzCisJLmxvbmcJMzE2MzExNzM3OQorCS5sb25nCTQxMTI1MDY1OTMKKwkubG9uZwkxMDcxODE2MzQ5CisJLmxvbmcJMjk0NzM1NTIyMQorCS5sb25nCTEwMTQzNzEwNDgKKwkubG9uZwkxOTcyNDg0OTc2CisJLmxvbmcJMTA3MTgxMzA1MAorCS5sb25nCTY3NTI5MDMwMQorCS5sb25nCTMxNjE2NDAwNTAKKwkubG9uZwkzNzkwOTU1MzkzCisJLmxvbmcJMTA3MTgwOTc1OQorCS5sb25nCTIzNTI5NDI0NjIKKwkubG9uZwkzMTYzMTgwMDkwCisJLmxvbmcJODc0MzcyOTA1CisJLmxvbmcJMTA3MTgwNjQ3OAorCS5sb25nCTEwMDI2Mzc4OAorCS5sb25nCTEwMTU5NDA3MzIKKwkubG9uZwkxNzA5MzQxOTE3CisJLmxvbmcJMTA3MTgwMzIwNQorCS5sb25nCTI1NzExNjgyMTcKKwkubG9uZwkxMDE0MTUyNDk5CisJLmxvbmcJMTg5Nzg0NDM0MQorCS5sb25nCTEwNzE3OTk5NDEKKwkubG9uZwkxMjU0MzAwNDYwCisJLmxvbmcJMTAxNTI3NTkzOAorCS5sb25nCTEzMzcxMDgwMzEKKwkubG9uZwkxMDcxNzk2Njg2CisJLmxvbmcJMzIwMzcyNDQ1MgorCS5sb25nCTEwMTQ2Nzc4NDUKKwkubG9uZwk0MjE5NjA2MDI2CisJLmxvbmcJMTA3MTc5MzQzOQorCS5sb25nCTI0MzQ1NzQ3NDIKKwkubG9uZwkxMDE0NjgxNTQ4CisJLmxvbmcJMTg1MzE4NjYxNgorCS5sb25nCTEwNzE3OTAyMDIKKwkubG9uZwkzMDY2NDk2MzcxCisJLmxvbmcJMTAxNTY1NjU3NAorCS5sb25nCTI3MjU4NDM2NjUKKwkubG9uZwkxMDcxNzg2OTczCisJLmxvbmcJMTQzMzkxNzA4NworCS5sb25nCTEwMTQ4Mzg1MjMKKwkubG9uZwkyNDQwOTQ0NzkwCisJLmxvbmcJMTA3MTc4Mzc1MworCS5sb25nCTI0OTI3Njk3NzQKKwkubG9uZwkxMDE0MTQ3NDU0CisJLmxvbmcJODk3MDk5ODAxCisJLmxvbmcJMTA3MTc4MDU0MgorCS5sb25nCTc1NDc1NjI5NworCS5sb25nCTEwMTUyNDEwMDUKKwkubG9uZwkyMjg4MTU5OTU4CisJLmxvbmcJMTA3MTc3NzMzOQorCS5sb25nCTIxNjkxNDQ0NjkKKwkubG9uZwkxMDE0ODc2MDIxCisJLmxvbmcJMjIxODMxNTM0MQorCS5sb25nCTEwNzE3NzQxNDUKKwkubG9uZwkyNjk0Mjk1Mzg4CisJLmxvbmcJMzE2MzI4ODg2OAorCS5sb25nCTU4Njk5NTk5NworCS5sb25nCTEwNzE3NzA5NjAKKwkubG9uZwk0MTY2MjM0OAorCS5sb25nCTMxNjI2Mjc5OTIKKwkubG9uZwkxNTg4ODcxMjA3CisJLmxvbmcJMTA3MTc2Nzc4MworCS5sb25nCTE0MzQzOTU4MgorCS5sb25nCTMxNjI5NjM0MTYKKwkubG9uZwk4Mjg5NDY4NTgKKwkubG9uZwkxMDcxNzY0NjE1CisJLmxvbmcJMTA2NDI0OTIKKwkubG9uZwkxMDE1OTM5NDM4CisJLmxvbmcJMjUwMjQzMzg5OQorCS5sb25nCTEwNzE3NjE0NTUKKwkubG9uZwkyMTQ4NTk1OTEzCisJLmxvbmcJMTAxNTAyMzk5MQorCS5sb25nCTIyMTQ4Nzg0MjAKKwkubG9uZwkxMDcxNzU4MzA0CisJLmxvbmcJODkyMjcwMDg3CisJLmxvbmcJMzE2MzExNjQyMgorCS5sb25nCTQxNjIwMzAxMDgKKwkubG9uZwkxMDcxNzU1MTYxCisJLmxvbmcJMjc2MzQyODQ4MAorCS5sb25nCTEwMTU1MjkzNDkKKwkubG9uZwkzOTQ5OTcyMzQxCisJLmxvbmcJMTA3MTc1MjAyNworCS5sb25nCTIwNjg0MDg1NDgKKwkubG9uZwkxMDE0OTEzODY4CisJLmxvbmcJMTQ4MDAyMzM0MworCS5sb25nCTEwNzE3NDg5MDIKKwkubG9uZwkyMjQ3MTk2MTY4CisJLmxvbmcJMTAxNTMyNzQ1MworCS5sb25nCTk0ODczNTQ2NgorCS5sb25nCTEwNzE3NDU3ODUKKwkubG9uZwkzNTE2MzM4MDI4CisJLmxvbmcJMzE2MjU3NDg4MworCS5sb25nCTIyNTc5NTk4NzIKKwkubG9uZwkxMDcxNzQyNjc2CisJLmxvbmcJMzgwMjk0NjE0OAorCS5sb25nCTEwMTI5NjQ5MjcKKwkubG9uZwkxMDE0ODQ1ODE5CisJLmxvbmcJMTA3MTczOTU3NgorCS5sb25nCTMxMTc5MTA2NDYKKwkubG9uZwkzMTYxNTU5MTA1CisJLmxvbmcJMTQxNjc0MTgyNgorCS5sb25nCTEwNzE3MzY0ODQKKwkubG9uZwkyMTk2MzgwMjEwCisJLmxvbmcJMTAxMTQxMzU2MworCS5sb25nCTMzNjYyOTMwNzMKKwkubG9uZwkxMDcxNzMzNDAwCisJLmxvbmcJMzExOTQyNjMxNAorCS5sb25nCTEwMTQxMjA1NTQKKwkubG9uZwkyNDcxNDQwNjg2CisJLmxvbmcJMTA3MTczMDMyNQorCS5sb25nCTk2ODgzNjI2NworCS5sb25nCTMxNjIyMTQ4ODgKKwkubG9uZwkyOTMwMzIyOTEyCisJLmxvbmcJMTA3MTcyNzI1OAorCS5sb25nCTI1OTk0OTk0MjIKKwkubG9uZwkzMTYyNzE0MDQ3CisJLmxvbmcJMzUxNDA1MjI3CisJLmxvbmcJMTA3MTcyNDIwMAorCS5sb25nCTMxMjUzMzczMjgKKwkubG9uZwkzMTU5ODIyNDc5CisJLmxvbmcJMzIyODMxNjEwOAorCS5sb25nCTEwNzE3MjExNDkKKwkubG9uZwkzMDEwMjQxOTkxCisJLmxvbmcJMzE1ODQyMjgwNAorCS5sb25nCTI4NzUwNzUyNTQKKwkubG9uZwkxMDcxNzE4MTA3CisJLmxvbmcJNDE0NDIzMzMzMAorCS5sb25nCTMxNjMzMzM3MTYKKwkubG9uZwkzNDkwODYzOTUzCisJLmxvbmcJMTA3MTcxNTA3MworCS5sb25nCTk2MDc5NzQ5OAorCS5sb25nCTMxNjI5NDg4ODAKKwkubG9uZwk2ODUxODc5MDIKKwkubG9uZwkxMDcxNzEyMDQ4CisJLmxvbmcJMzc4NzMxOTg5CisJLmxvbmcJMTAxNDg0MzExNQorCS5sb25nCTI5NTI3MTI5ODcKKwkubG9uZwkxMDcxNzA5MDMwCisJLmxvbmcJMzI5MzQ5NDY1MQorCS5sb25nCTMxNjAxMjAzMDEKKwkubG9uZwkxNjA4NDkzNTA5CisJLmxvbmcJMTA3MTcwNjAyMQorCS5sb25nCTMxNTk2MjIxNzEKKwkubG9uZwkzMTYyODA3NzM3CisJLmxvbmcJODUyNzQyNTYyCisJLmxvbmcJMTA3MTcwMzAyMAorCS5sb25nCTY2NzI1MzU4NgorCS5sb25nCTEwMDk3OTM1NTkKKwkubG9uZwk1OTA5NjIxNTYKKwkubG9uZwkxMDcxNzAwMDI3CisJLmxvbmcJMzgyOTM0NjY2NgorCS5sb25nCTMxNjMyNzU1OTcKKwkubG9uZwk3Mjg5MDk4MTUKKwkubG9uZwkxMDcxNjk3MDQyCisJLmxvbmcJMzgzOTMwMjI1CisJLmxvbmcJMTAxNTAyOTQ2OAorCS5sb25nCTExNzI1OTc4OTMKKwkubG9uZwkxMDcxNjk0MDY1CisJLmxvbmcJMTE0NDMzMjYzCisJLmxvbmcJMTAxNTM0NzU5MworCS5sb25nCTE4MjgyOTI4NzkKKwkubG9uZwkxMDcxNjkxMDk2CisJLmxvbmcJMTI1NTk1Njc0NworCS5sb25nCTEwMTU1ODgzOTgKKwkubG9uZwkyNjAyNTE0NzEzCisJLmxvbmcJMTA3MTY4ODEzNQorCS5sb25nCTIyNjg5MjkzMzYKKwkubG9uZwkxMDE0MzU0Mjg0CisJLmxvbmcJMzQwMjAzNjA5OQorCS5sb25nCTEwNzE2ODUxODIKKwkubG9uZwk0MDU4ODkzMzQKKwkubG9uZwkxMDE1MTA1NjU2CisJLmxvbmcJNDEzMzg4MTgyNAorCS5sb25nCTEwNzE2ODIyMzcKKwkubG9uZwkyMTQ4MTU1MzQ1CisJLmxvbmcJMzE2MjkzMTI5OQorCS5sb25nCTQxMDM2MDc3NgorCS5sb25nCTEwNzE2NzkzMDEKKwkubG9uZwkxMjY5OTkwNjU1CisJLmxvbmcJMTAxMTk3NTg3MAorCS5sb25nCTcyODkzNDQ1NAorCS5sb25nCTEwNzE2NzYzNzIKKwkubG9uZwkxNDEzODQyNjg4CisJLmxvbmcJMTAxNDE3ODYxMgorCS5sb25nCTcwMjQxMjUxMAorCS5sb25nCTEwNzE2NzM0NTEKKwkubG9uZwkzODAzMjY2MDg3CisJLmxvbmcJMzE2MjI4MDQxNQorCS5sb25nCTIzODgyMTI1NworCS5sb25nCTEwNzE2NzA1MzgKKwkubG9uZwkxNDY5Njk0ODcxCisJLmxvbmcJMzE2Mjg4NDk4NworCS5sb25nCTM1NDE0MDI5OTYKKwkubG9uZwkxMDcxNjY3NjMyCisJLmxvbmcJMjc1OTE3NzMxNworCS5sb25nCTEwMTQ4NTQ2MjYKKwkubG9uZwkxOTI4NzQ2MTYxCisJLmxvbmcJMTA3MTY2NDczNQorCS5sb25nCTk4MzYxNzY3NgorCS5sb25nCTEwMTQyODUxNzcKKwkubG9uZwkzODk5NTU1NzE3CisJLmxvbmcJMTA3MTY2MTg0NQorCS5sb25nCTQyNzI4MDc1MAorCS5sb25nCTMxNjI1NDY5NzIKKwkubG9uZwk3NzI5MTQxMjQKKwkubG9uZwkxMDcxNjU4OTY0CisJLmxvbmcJNDAwNDM3Mjc2MgorCS5sb25nCTEwMTIyMzAxNjEKKwkubG9uZwkxMDQ4MDE5MDQxCisJLmxvbmcJMTA3MTY1NjA5MAorCS5sb25nCTEzOTg0NzQ4NDUKKwkubG9uZwkzMTYwNTEwNTk1CisJLmxvbmcJMzM5NDExNTg1CisJLmxvbmcJMTA3MTY1MzIyNAorCS5sb25nCTI2NDU4ODk4MgorCS5sb25nCTMxNjE2MzY2NTcKKwkubG9uZwkyODUxODEyMTQ5CisJLmxvbmcJMTA3MTY1MDM2NQorCS5sb25nCTI1OTU4MDI1NTEKKwkubG9uZwkxMDE1NzY3MzM3CisJLmxvbmcJNDIwMDI1MDU1OQorCS5sb25nCTEwNzE2NDc1MTQKKwkubG9uZwkyODA4MTI3MzQ1CisJLmxvbmcJMzE2MTc4MTkzOAorCS50eXBlCVQyX25lZ19mLEBvYmplY3QKKwkuc2l6ZQlUMl9uZWdfZiw0MDk2CisJLnNwYWNlIDUxMiwgMHgwMCAJIyBwYWQKKwkuYWxpZ24gMTYKK01BU0szOgorCS5sb25nCTAKKwkubG9uZwk0Mjk0OTY3MjgwCisJLmxvbmcJMAorCS5sb25nCTQyOTQ5NjcyODAKKwkudHlwZQlNQVNLMyxAb2JqZWN0CisJLnNpemUJTUFTSzMsMTYKKwkuYWxpZ24gMTYKK1JNQVNLOgorCS5sb25nCTQyOTQ3MDUxNTIKKwkubG9uZwk0Mjk0OTY3Mjk1CisJLmxvbmcJNDI5NDcwNTE1MgorCS5sb25nCTQyOTQ5NjcyOTUKKwkudHlwZQlSTUFTSyxAb2JqZWN0CisJLnNpemUJUk1BU0ssMTYKKwkuYWxpZ24gMTYKK3B2OgorCS5sb25nCTIzNjI4OTUwMworCS5sb25nCTEwNjQxMzU5OTcKKwkubG9uZwk0NjM1ODM3NzIKKwkubG9uZwkzMjE1Njk2MzE0CisJLmxvbmcJMTQ0MTE4NjM2NQorCS5sb25nCTMyMTI5Nzc4OTEKKwkubG9uZwkyODYzMzExNTMKKwkubG9uZwkxMDY5NjE3NDI1CisJLmxvbmcJMjI4NDU4OTMwNgorCS5sb25nCTEwNjY4MjA4NTIKKwkubG9uZwkxNDMxNjU1NzY1CisJLmxvbmcJMzIxODQyOTI2OQorCS50eXBlCXB2LEBvYmplY3QKKwkuc2l6ZQlwdiw0OAorCS5hbGlnbiA0CitIQUxGTUFTSzoKKwkubG9uZwk0MTYwNzQ5NTY4CisJLmxvbmcJMjE0NzQ4MzY0NworCS50eXBlCUhBTEZNQVNLLEBvYmplY3QKKwkuc2l6ZQlIQUxGTUFTSyw4CisJLmFsaWduIDQKK09ORU1BU0s6CisJLmxvbmcJMAorCS5sb25nCTEwNzI2OTMyNDgKKwkudHlwZQlPTkVNQVNLLEBvYmplY3QKKwkuc2l6ZQlPTkVNQVNLLDgKKwkuYWxpZ24gNAorVFdPTUFTSzoKKwkubG9uZwkwCisJLmxvbmcJMTA3Mzc0MTgyNAorCS50eXBlCVRXT01BU0ssQG9iamVjdAorCS5zaXplCVRXT01BU0ssOAorCS5kYXRhCisJLnNlY3Rpb24gLm5vdGUuR05VLXN0YWNrLCAiIgorLy8gLS0gQmVnaW4gRFdBUkYyIFNFR01FTlQgLmVoX2ZyYW1lCisJLnNlY3Rpb24gLmVoX2ZyYW1lLCJhIixAcHJvZ2JpdHMKKy5laF9mcmFtZV9zZWc6CisJLmFsaWduIDEKKwkuNGJ5dGUgMHgwMDAwMDAxNAorCS44Ynl0ZSAweDAwNTI3YTAxMDAwMDAwMDAKKwkuOGJ5dGUgMHgwODA3MGMxYjAxMTA3ODAxCisJLjRieXRlIDB4MDAwMDAxOTAKKwkuNGJ5dGUgMHgwMDAwMDAxYworCS40Ynl0ZSAweDAwMDAwMDFjCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3RhbmguMS0uCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3RhbmguNS0uLl9fX3RhZ192YWx1ZV90YW5oLjEKKwkuMmJ5dGUgMHgwNDAwCisJLjRieXRlIC4uX19fdGFnX3ZhbHVlX3RhbmguMy0uLl9fX3RhZ192YWx1ZV90YW5oLjEKKwkuMmJ5dGUgMHgxMDBlCisJLmJ5dGUgMHgwNAorCS40Ynl0ZSAuLl9fX3RhZ192YWx1ZV90YW5oLjQtLi5fX190YWdfdmFsdWVfdGFuaC4zCisJLjJieXRlIDB4MDgwZQorCS5ieXRlIDB4MDAKKyMgRW5kCmRpZmYgLS1naXQgYS9saWJtL3g4Nl82NC9zcXJ0LlMgYi9saWJtL3g4Nl82NC9zcXJ0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWU5NzAyNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L3NxcnQuUwpAQCAtMCwwICsxLDM2IEBACisvKgorQ29weXJpZ2h0IChjKSAyMDE0LCBJbnRlbCBDb3Jwb3JhdGlvbgorQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cittb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDoKKworICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKworICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlLAorICAgICogdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbgorICAgICogYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisKKyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgSW50ZWwgQ29ycG9yYXRpb24gbm9yIHRoZSBuYW1lcyBvZiBpdHMgY29udHJpYnV0b3JzCisgICAgKiBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUKKyAgICAqIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorCitUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5ECitBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUgorQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CitMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KK0FOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjaW5jbHVkZSA8cHJpdmF0ZS9iaW9uaWNfYXNtLmg+CisKK0VOVFJZKHNxcnQpCitzcXJ0c2QgJXhtbTAsJXhtbTAKK3JldHEKK0VORChzcXJ0KQpkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvc3FydGYuUyBiL2xpYm0veDg2XzY0L3NxcnRmLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTEwNDA3ZgotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L3NxcnRmLlMKQEAgLTAsMCArMSwzNiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWShzcXJ0ZikKK3NxcnRzcyAleG1tMCwleG1tMAorcmV0cQorRU5EKHNxcnRmKQpkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvdHJ1bmMuUyBiL2xpYm0veDg2XzY0L3RydW5jLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmUxOGI0MAotLS0gL2Rldi9udWxsCisrKyBiL2xpYm0veDg2XzY0L3RydW5jLlMKQEAgLTAsMCArMSwzNiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWSh0cnVuYykKK3JvdW5kc2QgJDB4MywleG1tMCwleG1tMAorcmV0cQorRU5EKHRydW5jKQpkaWZmIC0tZ2l0IGEvbGlibS94ODZfNjQvdHJ1bmNmLlMgYi9saWJtL3g4Nl82NC90cnVuY2YuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZWVlMWQ3Ci0tLSAvZGV2L251bGwKKysrIGIvbGlibS94ODZfNjQvdHJ1bmNmLlMKQEAgLTAsMCArMSwzNiBAQAorLyoKK0NvcHlyaWdodCAoYykgMjAxNCwgSW50ZWwgQ29ycG9yYXRpb24KK0FsbCByaWdodHMgcmVzZXJ2ZWQuCisKK1JlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisKKyAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwKKyAgICAqIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24KKyAgICAqIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorCisgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEludGVsIENvcnBvcmF0aW9uIG5vciB0aGUgbmFtZXMgb2YgaXRzIGNvbnRyaWJ1dG9ycworICAgICogbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlCisgICAgKiB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKworVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORAorQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKK1dBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKK0RJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IKK0FOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCitBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKK1NPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2luY2x1ZGUgPHByaXZhdGUvYmlvbmljX2FzbS5oPgorCitFTlRSWSh0cnVuY2YpCityb3VuZHNzICQweDMsJXhtbTAsJXhtbTAKK3JldHEKK0VORCh0cnVuY2YpCmRpZmYgLS1naXQgYS9saWJzdGRjKysvaW5jbHVkZS9jbWF0aCBiL2xpYnN0ZGMrKy9pbmNsdWRlL2NtYXRoCmluZGV4IGJlNzAzNDMuLmExNWIyYWMgMTAwNjQ0Ci0tLSBhL2xpYnN0ZGMrKy9pbmNsdWRlL2NtYXRoCisrKyBiL2xpYnN0ZGMrKy9pbmNsdWRlL2NtYXRoCkBAIC0zMSw3ICszMSw3IEBACiAjZGVmaW5lIEJJT05JQ19MSUJTVERDUFBfSU5DTFVERV9DTUFUSF9fCiAKIC8qCi0gKiBTdGFuZGFyZCBDKysgTGlicmFyeSB3cmFwcGVyIGFyb3VuZCB0aGUgQyB0aW1lLmggaGVhZGVyIGZpbGUuCisgKiBTdGFuZGFyZCBDKysgTGlicmFyeSB3cmFwcGVyIGFyb3VuZCB0aGUgQyBtYXRoLmggaGVhZGVyIGZpbGUuCiAgKi8KIAogI2luY2x1ZGUgPGNzdGRkZWY+CmRpZmYgLS1naXQgYS9saWJzdGRjKysvaW5jbHVkZS9uZXcgYi9saWJzdGRjKysvaW5jbHVkZS9uZXcKaW5kZXggMDI1M2U4Yi4uYzVhNDNkZSAxMDA2NDQKLS0tIGEvbGlic3RkYysrL2luY2x1ZGUvbmV3CisrKyBiL2xpYnN0ZGMrKy9pbmNsdWRlL25ldwpAQCAtMTMsMTkgKzEzLDE5IEBACiAKIHZvaWQqIG9wZXJhdG9yIG5ldyhzdGQ6OnNpemVfdCk7CiB2b2lkKiBvcGVyYXRvciBuZXdbXShzdGQ6OnNpemVfdCk7Ci12b2lkICBvcGVyYXRvciBkZWxldGUodm9pZCopOwotdm9pZCAgb3BlcmF0b3IgZGVsZXRlW10odm9pZCopOwordm9pZCAgb3BlcmF0b3IgZGVsZXRlKHZvaWQqKSB0aHJvdygpOwordm9pZCAgb3BlcmF0b3IgZGVsZXRlW10odm9pZCopIHRocm93KCk7CiB2b2lkKiBvcGVyYXRvciBuZXcoc3RkOjpzaXplX3QsIGNvbnN0IHN0ZDo6bm90aHJvd190Jik7CiB2b2lkKiBvcGVyYXRvciBuZXdbXShzdGQ6OnNpemVfdCwgY29uc3Qgc3RkOjpub3Rocm93X3QmKTsKLXZvaWQgIG9wZXJhdG9yIGRlbGV0ZSh2b2lkKiwgY29uc3Qgc3RkOjpub3Rocm93X3QmKTsKLXZvaWQgIG9wZXJhdG9yIGRlbGV0ZVtdKHZvaWQqLCBjb25zdCBzdGQ6Om5vdGhyb3dfdCYpOwordm9pZCAgb3BlcmF0b3IgZGVsZXRlKHZvaWQqLCBjb25zdCBzdGQ6Om5vdGhyb3dfdCYpIHRocm93KCk7Cit2b2lkICBvcGVyYXRvciBkZWxldGVbXSh2b2lkKiwgY29uc3Qgc3RkOjpub3Rocm93X3QmKSB0aHJvdygpOwogCiBpbmxpbmUgdm9pZCogb3BlcmF0b3IgbmV3KHN0ZDo6c2l6ZV90LCB2b2lkKiBwKSB7IHJldHVybiBwOyB9CiBpbmxpbmUgdm9pZCogb3BlcmF0b3IgbmV3W10oc3RkOjpzaXplX3QsIHZvaWQqIHApIHsgcmV0dXJuIHA7IH0KIAogLy8gdGhlc2UgbmV4dCB0d28gYXJlIG5vdCByZWFsbHkgcmVxdWlyZWQsIHNpbmNlIGV4Y2VwdGlvbnMgYXJlIG9mZgotaW5saW5lIHZvaWQgIG9wZXJhdG9yIGRlbGV0ZSh2b2lkKiwgdm9pZCopIHsgfQotaW5saW5lIHZvaWQgIG9wZXJhdG9yIGRlbGV0ZVtdKHZvaWQqLCB2b2lkKikgeyB9CitpbmxpbmUgdm9pZCAgb3BlcmF0b3IgZGVsZXRlKHZvaWQqLCB2b2lkKikgdGhyb3coKSB7IH0KK2lubGluZSB2b2lkICBvcGVyYXRvciBkZWxldGVbXSh2b2lkKiwgdm9pZCopIHRocm93KCkgeyB9CiAKIH0gIC8vIGV4dGVybiBDKysKIApkaWZmIC0tZ2l0IGEvbGlua2VyL0FuZHJvaWQubWsgYi9saW5rZXIvQW5kcm9pZC5tawppbmRleCA0Mjk4MDMyLi41YmRjMmY5IDEwMDY0NAotLS0gYS9saW5rZXIvQW5kcm9pZC5taworKysgYi9saW5rZXIvQW5kcm9pZC5tawpAQCAtNyw4ICs3LDEwIEBACiAgICAgZGxmY24uY3BwIFwKICAgICBsaW5rZXIuY3BwIFwKICAgICBsaW5rZXJfYWxsb2NhdG9yLmNwcCBcCisgICAgbGlua2VyX2Jsb2NrX2FsbG9jYXRvci5jcHAgXAogICAgIGxpbmtlcl9lbnZpcm9uLmNwcCBcCiAgICAgbGlua2VyX2xpYmNfc3VwcG9ydC5jIFwKKyAgICBsaW5rZXJfbWVtb3J5LmNwcCBcCiAgICAgbGlua2VyX3BoZHIuY3BwIFwKICAgICBydC5jcHAgXAogCkBAIC0xNiw5ICsxOCwxMiBAQAogTE9DQUxfU1JDX0ZJTEVTX2FybTY0ICAgOj0gYXJjaC9hcm02NC9iZWdpbi5TCiBMT0NBTF9TUkNfRklMRVNfeDg2ICAgICA6PSBhcmNoL3g4Ni9iZWdpbi5jCiBMT0NBTF9TUkNfRklMRVNfeDg2XzY0ICA6PSBhcmNoL3g4Nl82NC9iZWdpbi5TCi1MT0NBTF9TUkNfRklMRVNfbWlwcyAgICA6PSBhcmNoL21pcHMvYmVnaW4uUwotTE9DQUxfU1JDX0ZJTEVTX21pcHM2NCAgOj0gYXJjaC9taXBzNjQvYmVnaW4uUworTE9DQUxfU1JDX0ZJTEVTX21pcHMgICAgOj0gYXJjaC9taXBzL2JlZ2luLlMgbGlua2VyX21pcHMuY3BwCitMT0NBTF9TUkNfRklMRVNfbWlwczY0ICA6PSBhcmNoL21pcHM2NC9iZWdpbi5TIGxpbmtlcl9taXBzLmNwcAogCisjIC1zaGFyZWQgaXMgdXNlZCB0byBvdmVyd3JpdGUgdGhlIC1Cc3RhdGljIGFuZCAtc3RhdGljCisjIGZsYWdzIHRyaWdnZXJlZCBieSBMT0NBTF9GT1JDRV9TVEFUSUNfRVhFQ1VUQUJMRS4KKyMgVGhpcyBkeW5hbWljIGxpbmtlciBpcyBhY3R1YWxseSBhIHNoYXJlZCBvYmplY3QgbGlua2VkIHdpdGggc3RhdGljIGxpYnJhcmllcy4KIExPQ0FMX0xERkxBR1MgOj0gXAogICAgIC1zaGFyZWQgXAogICAgIC1XbCwtQnN5bWJvbGljIFwKQEAgLTM1LDYgKzQwLDExIEBACiAKIExPQ0FMX0NQUEZMQUdTICs9IFwKICAgICAtc3RkPWdudSsrMTEgXAorICAgIC1Xb2xkLXN0eWxlLWNhc3QgXAorCitpZmVxICgkKFRBUkdFVF9JU182NF9CSVQpLHRydWUpCitMT0NBTF9DUFBGTEFHUyArPSAtRFRBUkdFVF9JU182NF9CSVQKK2VuZGlmCiAKICMgV2UgbmVlZCB0byBhY2Nlc3MgQmlvbmljIHByaXZhdGUgaGVhZGVycyBpbiB0aGUgbGlua2VyLgogTE9DQUxfQ0ZMQUdTICs9IC1JJChMT0NBTF9QQVRIKS8uLi9saWJjLwpAQCAtNDUsMTMgKzU1LDExIEBACiAjIFRPRE86IHNwbGl0IG91dCB0aGUgYXNmbGFncy4KIExPQ0FMX0FTRkxBR1MgOj0gJChMT0NBTF9DRkxBR1MpCiAKLUxPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5tayAkKExPQ0FMX1BBVEgpL2xpbmtlcl9leGVjdXRhYmxlLm1rCitMT0NBTF9BRERJVElPTkFMX0RFUEVOREVOQ0lFUyA6PSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQubWsKIAotTE9DQUxfU1RBVElDX0xJQlJBUklFUyA6PSBsaWJjX25vbWFsbG9jCitMT0NBTF9TVEFUSUNfTElCUkFSSUVTIDo9IGxpYmNfbm9tYWxsb2MgbGliemlwYXJjaGl2ZSBsaWJ1dGlscyBsaWJ6IGxpYmxvZwogCi1MT0NBTF9GT1JDRV9TVEFUSUNfRVhFQ1VUQUJMRSA6PSB0cnVlICMgbm90IG5lY2Vzc2FyeSB3aGVuIG5vdCBpbmNsdWRpbmcgQlVJTERfRVhFQ1VUQUJMRQotCi1MT0NBTF8yTkRfQVJDSF9WQVJfUFJFRklYIDo9ICQobGlua2VyXzJuZF9hcmNoX3Zhcl9wcmVmaXgpCitMT0NBTF9GT1JDRV9TVEFUSUNfRVhFQ1VUQUJMRSA6PSB0cnVlCiAKIExPQ0FMX01PRFVMRSA6PSBsaW5rZXIKIExPQ0FMX01PRFVMRV9TVEVNXzMyIDo9IGxpbmtlcgpAQCAtNjIsMTcgKzcwLDE0IEBACiAjIG1lYW5pbmdmdWwgbmFtZSByZXNvbHV0aW9uLgogTE9DQUxfU1RSSVBfTU9EVUxFIDo9IGtlZXBfc3ltYm9scwogCi1pbmNsdWRlICQoTE9DQUxfUEFUSCkvbGlua2VyX2V4ZWN1dGFibGUubWsKLWlmZGVmIFRBUkdFVF8yTkRfQVJDSAotTE9DQUxfMk5EX0FSQ0hfVkFSX1BSRUZJWCA6PSAkKFRBUkdFVF8yTkRfQVJDSF9WQVJfUFJFRklYKQotT1ZFUlJJREVfQlVJTFRfTU9EVUxFX1BBVEggOj0KLUxPQ0FMX0JVSUxUX01PRFVMRSA6PQotTE9DQUxfSU5TVEFMTEVEX01PRFVMRSA6PQotTE9DQUxfTU9EVUxFX1NURU0gOj0KLUxPQ0FMX0JVSUxUX01PRFVMRV9TVEVNIDo9Ci1MT0NBTF9JTlNUQUxMRURfTU9EVUxFX1NURU0gOj0KLUxPQ0FMX0lOVEVSTUVESUFURV9UQVJHRVRTIDo9Ci1pbmNsdWRlICQoTE9DQUxfUEFUSCkvbGlua2VyX2V4ZWN1dGFibGUubWsKLWVuZGlmCisjIEluc2VydCBhbiBleHRyYSBvYmpjb3B5IHN0ZXAgdG8gYWRkIHByZWZpeCB0byBzeW1ib2xzLiBUaGlzIGlzIG5lZWRlZCB0byBwcmV2ZW50IGdkYgorIyBsb29raW5nIHVwIHN5bWJvbHMgaW4gdGhlIGxpbmtlciBieSBtaXN0YWtlLgorIworIyBOb3RlIHdlIGFyZSB1c2luZyAiPSIgaW5zdGVhZCBvZiAiOj0iIHRvIGRlZmVyIHRoZSBldmFsdWF0aW9uLAorIyBiZWNhdXNlIExPQ0FMXzJORF9BUkNIX1ZBUl9QUkVGSVggb3IgbGlua2VkX21vZHVsZSBpc24ndCBzZXQgcHJvcGVybHkgeWV0IGF0IHRoaXMgcG9pbnQuCitMT0NBTF9QT1NUX0xJTktfQ01EID0gJChoaWRlKSAkKCQoTE9DQUxfMk5EX0FSQ0hfVkFSX1BSRUZJWClUQVJHRVRfT0JKQ09QWSkgXAorICAtLXByZWZpeC1zeW1ib2xzPV9fZGxfICQobGlua2VkX21vZHVsZSkKKworaW5jbHVkZSAkKEJVSUxEX0VYRUNVVEFCTEUpCiAKIGluY2x1ZGUgJChjYWxsIGZpcnN0LW1ha2VmaWxlcy11bmRlciwkKExPQ0FMX1BBVEgpKQpkaWZmIC0tZ2l0IGEvbGlua2VyL2RlYnVnZ2VyLmNwcCBiL2xpbmtlci9kZWJ1Z2dlci5jcHAKaW5kZXggYWM0NjZhNS4uMzU3ZmJkYyAxMDA2NDQKLS0tIGEvbGlua2VyL2RlYnVnZ2VyLmNwcAorKysgYi9saW5rZXIvZGVidWdnZXIuY3BwCkBAIC0zMCw5ICszMCwxMSBAQAogCiAjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNsdWRlIDxpbnR0eXBlcy5oPgorI2luY2x1ZGUgPHB0aHJlYWQuaD4KICNpbmNsdWRlIDxzaWduYWwuaD4KICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPHN5cy9tbWFuLmg+CiAjaW5jbHVkZSA8c3lzL3ByY3RsLmg+CiAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgpAQCAtNDEsOCArNDMsMTAgQEAKIAogZXh0ZXJuICJDIiBpbnQgdGdraWxsKGludCB0Z2lkLCBpbnQgdGlkLCBpbnQgc2lnKTsKIAotI2lmIF9fTFA2NF9fCi0jZGVmaW5lIERFQlVHR0VSX1NPQ0tFVF9OQU1FICJhbmRyb2lkOmRlYnVnZ2VyZDY0IgorLy8gQ3Jhc2ggYWN0aW9ucyBoYXZlIHRvIGJlIHNlbnQgdG8gdGhlIHByb3BlciBkZWJ1Z2dlcmQuCisvLyBPbiA2NCBiaXQgc3lzdGVtcywgdGhlIDMyIGJpdCBkZWJ1Z2dlcmQgaXMgbmFtZWQgZGlmZmVyZW50bHkuCisjaWYgZGVmaW5lZChUQVJHRVRfSVNfNjRfQklUKSAmJiAhZGVmaW5lZChfX0xQNjRfXykKKyNkZWZpbmUgREVCVUdHRVJfU09DS0VUX05BTUUgImFuZHJvaWQ6ZGVidWdnZXJkMzIiCiAjZWxzZQogI2RlZmluZSBERUJVR0dFUl9TT0NLRVRfTkFNRSAiYW5kcm9pZDpkZWJ1Z2dlcmQiCiAjZW5kaWYKQEAgLTU3LDE1ICs2MSwxMCBAQAogfTsKIAogLyogbWVzc2FnZSBzZW50IG92ZXIgdGhlIHNvY2tldCAqLwotc3RydWN0IGRlYnVnZ2VyX21zZ190IHsKLSAgLy8gdmVyc2lvbiAxIGluY2x1ZGVkOgotICBkZWJ1Z2dlcl9hY3Rpb25fdCBhY3Rpb247CitzdHJ1Y3QgX19hdHRyaWJ1dGVfXygocGFja2VkKSkgZGVidWdnZXJfbXNnX3QgeworICBpbnQzMl90IGFjdGlvbjsKICAgcGlkX3QgdGlkOwotCi0gIC8vIHZlcnNpb24gMiBhZGRlZDoKLSAgdWludHB0cl90IGFib3J0X21zZ19hZGRyZXNzOwotCi0gIC8vIHZlcnNpb24gMyBhZGRlZDoKKyAgdWludDY0X3QgYWJvcnRfbXNnX2FkZHJlc3M7CiAgIGludDMyX3Qgb3JpZ2luYWxfc2lfY29kZTsKIH07CiAKQEAgLTE1NCw3ICsxNTMsNyBAQAogICB9CiAKICAgY2hhciB0aHJlYWRfbmFtZVtNQVhfVEFTS19OQU1FX0xFTiArIDFdOyAvLyBvbmUgbW9yZSBmb3IgdGVybWluYXRpb24KLSAgaWYgKHByY3RsKFBSX0dFVF9OQU1FLCAodW5zaWduZWQgbG9uZyl0aHJlYWRfbmFtZSwgMCwgMCwgMCkgIT0gMCkgeworICBpZiAocHJjdGwoUFJfR0VUX05BTUUsIHJlaW50ZXJwcmV0X2Nhc3Q8dW5zaWduZWQgbG9uZz4odGhyZWFkX25hbWUpLCAwLCAwLCAwKSAhPSAwKSB7CiAgICAgc3RyY3B5KHRocmVhZF9uYW1lLCAiPG5hbWUgdW5rbm93bj4iKTsKICAgfSBlbHNlIHsKICAgICAvLyBzaG9ydCBuYW1lcyBhcmUgbnVsbCB0ZXJtaW5hdGVkIGJ5IHByY3RsLCBidXQgdGhlIG1hbiBwYWdlCkBAIC0yMTUsNiArMjE0LDIzIEBACiAgICAgcmV0dXJuOwogICB9CiAKKyAgLy8gTXV0ZXggdG8gcHJldmVudCBtdWx0aXBsZSBjcmFzaGluZyB0aHJlYWRzIGZyb20gdHJ5aW5nIHRvIHRhbGsKKyAgLy8gdG8gZGVidWdnZXJkIGF0IHRoZSBzYW1lIHRpbWUuCisgIHN0YXRpYyBwdGhyZWFkX211dGV4X3QgY3Jhc2hfbXV0ZXggPSBQVEhSRUFEX01VVEVYX0lOSVRJQUxJWkVSOworICBpbnQgcmV0ID0gcHRocmVhZF9tdXRleF90cnlsb2NrKCZjcmFzaF9tdXRleCk7CisgIGlmIChyZXQgIT0gMCkgeworICAgIGlmIChyZXQgPT0gRUJVU1kpIHsKKyAgICAgIF9fbGliY19mb3JtYXRfbG9nKEFORFJPSURfTE9HX0lORk8sICJsaWJjIiwKKyAgICAgICAgICAiQW5vdGhlciB0aHJlYWQgY29udGFjdGVkIGRlYnVnZ2VyZCBmaXJzdDsgbm90IGNvbnRhY3RpbmcgZGVidWdnZXJkLiIpOworICAgICAgLy8gVGhpcyB3aWxsIG5ldmVyIGNvbXBsZXRlIHNpbmNlIHRoZSBsb2NrIGlzIG5ldmVyIHJlbGVhc2VkLgorICAgICAgcHRocmVhZF9tdXRleF9sb2NrKCZjcmFzaF9tdXRleCk7CisgICAgfSBlbHNlIHsKKyAgICAgIF9fbGliY19mb3JtYXRfbG9nKEFORFJPSURfTE9HX0lORk8sICJsaWJjIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICJwdGhyZWFkX211dGV4X3RyeWxvY2sgZmFpbGVkOiAlcyIsIHN0cmVycm9yKHJldCkpOworICAgIH0KKyAgICByZXR1cm47CisgIH0KKwogICBpbnQgcyA9IHNvY2tldF9hYnN0cmFjdF9jbGllbnQoREVCVUdHRVJfU09DS0VUX05BTUUsIFNPQ0tfU1RSRUFNIHwgU09DS19DTE9FWEVDKTsKICAgaWYgKHMgPT0gLTEpIHsKICAgICBfX2xpYmNfZm9ybWF0X2xvZyhBTkRST0lEX0xPR19GQVRBTCwgImxpYmMiLCAiVW5hYmxlIHRvIG9wZW4gY29ubmVjdGlvbiB0byBkZWJ1Z2dlcmQ6ICVzIiwKQEAgLTIzMSw3ICsyNDcsNyBAQAogICBtc2cudGlkID0gZ2V0dGlkKCk7CiAgIG1zZy5hYm9ydF9tc2dfYWRkcmVzcyA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PihnX2Fib3J0X21lc3NhZ2UpOwogICBtc2cub3JpZ2luYWxfc2lfY29kZSA9IChpbmZvICE9IG51bGxwdHIpID8gaW5mby0+c2lfY29kZSA6IDA7Ci0gIGludCByZXQgPSBURU1QX0ZBSUxVUkVfUkVUUlkod3JpdGUocywgJm1zZywgc2l6ZW9mKG1zZykpKTsKKyAgcmV0ID0gVEVNUF9GQUlMVVJFX1JFVFJZKHdyaXRlKHMsICZtc2csIHNpemVvZihtc2cpKSk7CiAgIGlmIChyZXQgPT0gc2l6ZW9mKG1zZykpIHsKICAgICBjaGFyIGRlYnVnZ2VyZF9hY2s7CiAgICAgcmV0ID0gVEVNUF9GQUlMVVJFX1JFVFJZKHJlYWQocywgJmRlYnVnZ2VyZF9hY2ssIDEpKTsKZGlmZiAtLWdpdCBhL2xpbmtlci9kbGZjbi5jcHAgYi9saW5rZXIvZGxmY24uY3BwCmluZGV4IDNlYjViZWEuLjA1N2MyMTcgMTAwNjQ0Ci0tLSBhL2xpbmtlci9kbGZjbi5jcHAKKysrIGIvbGlua2VyL2RsZmNuLmNwcApAQCAtMjAsNiArMjAsNyBAQAogI2luY2x1ZGUgPHB0aHJlYWQuaD4KICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPGFuZHJvaWQvZGxleHQuaD4KIAogI2luY2x1ZGUgPGJpb25pYy9wdGhyZWFkX2ludGVybmFsLmg+CkBAIC0yOSw3ICszMCw3IEBACiAKIC8qIFRoaXMgZmlsZSBoaWphY2tzIHRoZSBzeW1ib2xzIHN0dWJiZWQgb3V0IGluIGxpYmRsLnNvLiAqLwogCi1zdGF0aWMgcHRocmVhZF9tdXRleF90IGdfZGxfbXV0ZXggPSBQVEhSRUFEX1JFQ1VSU0lWRV9NVVRFWF9JTklUSUFMSVpFUjsKK3N0YXRpYyBwdGhyZWFkX211dGV4X3QgZ19kbF9tdXRleCA9IFBUSFJFQURfUkVDVVJTSVZFX01VVEVYX0lOSVRJQUxJWkVSX05QOwogCiBzdGF0aWMgY29uc3QgY2hhciogX19iaW9uaWNfc2V0X2RsZXJyb3IoY2hhciogbmV3X3ZhbHVlKSB7CiAgIGNoYXIqKiBkbGVycm9yX3Nsb3QgPSAmcmVpbnRlcnByZXRfY2FzdDxjaGFyKio+KF9fZ2V0X3RscygpKVtUTFNfU0xPVF9ETEVSUk9SXTsKQEAgLTk5LDE3ICsxMDAsMTIgQEAKICAgfQogCiAgIHNvaW5mbyogZm91bmQgPSBudWxscHRyOwotICBFbGZXKFN5bSkqIHN5bSA9IG51bGxwdHI7Ci0gIGlmIChoYW5kbGUgPT0gUlRMRF9ERUZBVUxUKSB7Ci0gICAgc3ltID0gZGxzeW1fbGluZWFyX2xvb2t1cChzeW1ib2wsICZmb3VuZCwgbnVsbHB0cik7Ci0gIH0gZWxzZSBpZiAoaGFuZGxlID09IFJUTERfTkVYVCkgewotICAgIHZvaWQqIGNhbGxlcl9hZGRyID0gX19idWlsdGluX3JldHVybl9hZGRyZXNzKDApOwotICAgIHNvaW5mbyogc2kgPSBmaW5kX2NvbnRhaW5pbmdfbGlicmFyeShjYWxsZXJfYWRkcik7CisgIGNvbnN0IEVsZlcoU3ltKSogc3ltID0gbnVsbHB0cjsKKyAgdm9pZCogY2FsbGVyX2FkZHIgPSBfX2J1aWx0aW5fcmV0dXJuX2FkZHJlc3MoMCk7CisgIHNvaW5mbyogY2FsbGVyID0gZmluZF9jb250YWluaW5nX2xpYnJhcnkoY2FsbGVyX2FkZHIpOwogCi0gICAgc3ltID0gbnVsbHB0cjsKLSAgICBpZiAoc2kgJiYgc2ktPm5leHQpIHsKLSAgICAgIHN5bSA9IGRsc3ltX2xpbmVhcl9sb29rdXAoc3ltYm9sLCAmZm91bmQsIHNpLT5uZXh0KTsKLSAgICB9CisgIGlmIChoYW5kbGUgPT0gUlRMRF9ERUZBVUxUIHx8IGhhbmRsZSA9PSBSVExEX05FWFQpIHsKKyAgICBzeW0gPSBkbHN5bV9saW5lYXJfbG9va3VwKHN5bWJvbCwgJmZvdW5kLCBjYWxsZXIsIGhhbmRsZSk7CiAgIH0gZWxzZSB7CiAgICAgc3ltID0gZGxzeW1faGFuZGxlX2xvb2t1cChyZWludGVycHJldF9jYXN0PHNvaW5mbyo+KGhhbmRsZSksICZmb3VuZCwgc3ltYm9sKTsKICAgfQpAQCAtMTQwLDEyICsxMzYsMTIgQEAKIAogICBtZW1zZXQoaW5mbywgMCwgc2l6ZW9mKERsX2luZm8pKTsKIAotICBpbmZvLT5kbGlfZm5hbWUgPSBzaS0+bmFtZTsKKyAgaW5mby0+ZGxpX2ZuYW1lID0gc2ktPmdldF9yZWFscGF0aCgpOwogICAvLyBBZGRyZXNzIGF0IHdoaWNoIHRoZSBzaGFyZWQgb2JqZWN0IGlzIGxvYWRlZC4KICAgaW5mby0+ZGxpX2ZiYXNlID0gcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oc2ktPmJhc2UpOwogCiAgIC8vIERldGVybWluZSBpZiBhbnkgc3ltYm9sIGluIHRoZSBsaWJyYXJ5IGNvbnRhaW5zIHRoZSBzcGVjaWZpZWQgYWRkcmVzcy4KLSAgRWxmVyhTeW0pKiBzeW0gPSBkbGFkZHJfZmluZF9zeW1ib2woc2ksIGFkZHIpOworICBFbGZXKFN5bSkqIHN5bSA9IHNpLT5maW5kX3N5bWJvbF9ieV9hZGRyZXNzKGFkZHIpOwogICBpZiAoc3ltICE9IG51bGxwdHIpIHsKICAgICBpbmZvLT5kbGlfc25hbWUgPSBzaS0+Z2V0X3N0cmluZyhzeW0tPnN0X25hbWUpOwogICAgIGluZm8tPmRsaV9zYWRkciA9IHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHNpLT5yZXNvbHZlX3N5bWJvbF9hZGRyZXNzKHN5bSkpOwpAQCAtMjMyLDIxICsyMjgsMjggQEAKIHN0YXRpYyB1bnNpZ25lZCBnX2xpYmRsX2NoYWluc1tdID0geyAwLCAyLCAzLCA0LCA1LCA2LCA3LCA4LCA5LCAwIH07CiAjZW5kaWYKIAotc3RhdGljIHNvaW5mbyBfX2xpYmRsX2luZm8oImxpYmRsLnNvIiwgbnVsbHB0ciwgMCk7CitzdGF0aWMgdWludDhfdCBfX2xpYmRsX2luZm9fYnVmW3NpemVvZihzb2luZm8pXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CitzdGF0aWMgc29pbmZvKiBfX2xpYmRsX2luZm8gPSBudWxscHRyOwogCiAvLyBUaGlzIGlzIHVzZWQgYnkgdGhlIGR5bmFtaWMgbGlua2VyLiBFdmVyeSBwcm9jZXNzIGdldHMgdGhlc2Ugc3ltYm9scyBmb3IgZnJlZS4KIHNvaW5mbyogZ2V0X2xpYmRsX2luZm8oKSB7Ci0gIGlmICgoX19saWJkbF9pbmZvLmZsYWdzICYgRkxBR19MSU5LRUQpID09IDApIHsKLSAgICBfX2xpYmRsX2luZm8uZmxhZ3MgfD0gRkxBR19MSU5LRUQ7Ci0gICAgX19saWJkbF9pbmZvLnN0cnRhYiA9IEFORFJPSURfTElCRExfU1RSVEFCOwotICAgIF9fbGliZGxfaW5mby5zeW10YWIgPSBnX2xpYmRsX3N5bXRhYjsKLSAgICBfX2xpYmRsX2luZm8ubmJ1Y2tldCA9IHNpemVvZihnX2xpYmRsX2J1Y2tldHMpL3NpemVvZih1bnNpZ25lZCk7Ci0gICAgX19saWJkbF9pbmZvLm5jaGFpbiA9IHNpemVvZihnX2xpYmRsX2NoYWlucykvc2l6ZW9mKHVuc2lnbmVkKTsKLSAgICBfX2xpYmRsX2luZm8uYnVja2V0ID0gZ19saWJkbF9idWNrZXRzOwotICAgIF9fbGliZGxfaW5mby5jaGFpbiA9IGdfbGliZGxfY2hhaW5zOwotICAgIF9fbGliZGxfaW5mby5yZWZfY291bnQgPSAxOwotICAgIF9fbGliZGxfaW5mby5zdHJ0YWJfc2l6ZSA9IHNpemVvZihBTkRST0lEX0xJQkRMX1NUUlRBQik7CisgIGlmIChfX2xpYmRsX2luZm8gPT0gbnVsbHB0cikgeworICAgIF9fbGliZGxfaW5mbyA9IG5ldyAoX19saWJkbF9pbmZvX2J1Zikgc29pbmZvKCJsaWJkbC5zbyIsIG51bGxwdHIsIDAsIFJUTERfR0xPQkFMKTsKKyAgICBfX2xpYmRsX2luZm8tPmZsYWdzXyB8PSBGTEFHX0xJTktFRDsKKyAgICBfX2xpYmRsX2luZm8tPnN0cnRhYl8gPSBBTkRST0lEX0xJQkRMX1NUUlRBQjsKKyAgICBfX2xpYmRsX2luZm8tPnN5bXRhYl8gPSBnX2xpYmRsX3N5bXRhYjsKKyAgICBfX2xpYmRsX2luZm8tPm5idWNrZXRfID0gc2l6ZW9mKGdfbGliZGxfYnVja2V0cykvc2l6ZW9mKHVuc2lnbmVkKTsKKyAgICBfX2xpYmRsX2luZm8tPm5jaGFpbl8gPSBzaXplb2YoZ19saWJkbF9jaGFpbnMpL3NpemVvZih1bnNpZ25lZCk7CisgICAgX19saWJkbF9pbmZvLT5idWNrZXRfID0gZ19saWJkbF9idWNrZXRzOworICAgIF9fbGliZGxfaW5mby0+Y2hhaW5fID0gZ19saWJkbF9jaGFpbnM7CisgICAgX19saWJkbF9pbmZvLT5yZWZfY291bnRfID0gMTsKKyAgICBfX2xpYmRsX2luZm8tPnN0cnRhYl9zaXplXyA9IHNpemVvZihBTkRST0lEX0xJQkRMX1NUUlRBQik7CisgICAgX19saWJkbF9pbmZvLT5sb2NhbF9ncm91cF9yb290XyA9IF9fbGliZGxfaW5mbzsKKyAgICBfX2xpYmRsX2luZm8tPnNvbmFtZV8gPSAibGliZGwuc28iOworI2lmIGRlZmluZWQoX19hcm1fXykKKyAgICBzdHJsY3B5KF9fbGliZGxfaW5mby0+b2xkX25hbWVfLCBfX2xpYmRsX2luZm8tPnNvbmFtZV8sIHNpemVvZihfX2xpYmRsX2luZm8tPm9sZF9uYW1lXykpOworI2VuZGlmCiAgIH0KIAotICByZXR1cm4gJl9fbGliZGxfaW5mbzsKKyAgcmV0dXJuIF9fbGliZGxfaW5mbzsKIH0KZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZWRfbGlzdC5oIGIvbGlua2VyL2xpbmtlZF9saXN0LmgKaW5kZXggNGU2MmUyMC4uODAwM2RiZiAxMDA2NDQKLS0tIGEvbGlua2VyL2xpbmtlZF9saXN0LmgKKysrIGIvbGlua2VyL2xpbmtlZF9saXN0LmgKQEAgLTM2LDYgKzM2LDEyIEBACiAgICAgY2xlYXIoKTsKICAgfQogCisgIExpbmtlZExpc3QoTGlua2VkTGlzdCYmIHRoYXQpIHsKKyAgICB0aGlzLT5oZWFkXyA9IHRoYXQuaGVhZF87CisgICAgdGhpcy0+dGFpbF8gPSB0aGF0LnRhaWxfOworICAgIHRoYXQuaGVhZF8gPSB0aGF0LnRhaWxfID0gbnVsbHB0cjsKKyAgfQorCiAgIHZvaWQgcHVzaF9mcm9udChUKiBjb25zdCBlbGVtZW50KSB7CiAgICAgTGlua2VkTGlzdEVudHJ5PFQ+KiBuZXdfZW50cnkgPSBBbGxvY2F0b3I6OmFsbG9jKCk7CiAgICAgbmV3X2VudHJ5LT5uZXh0ID0gaGVhZF87CkBAIC03NSw2ICs4MSwxNCBAQAogICAgIHJldHVybiBlbGVtZW50OwogICB9CiAKKyAgVCogZnJvbnQoKSBjb25zdCB7CisgICAgaWYgKGhlYWRfID09IG51bGxwdHIpIHsKKyAgICAgIHJldHVybiBudWxscHRyOworICAgIH0KKworICAgIHJldHVybiBoZWFkXy0+ZWxlbWVudDsKKyAgfQorCiAgIHZvaWQgY2xlYXIoKSB7CiAgICAgd2hpbGUgKGhlYWRfICE9IG51bGxwdHIpIHsKICAgICAgIExpbmtlZExpc3RFbnRyeTxUPiogcCA9IGhlYWRfOwpAQCAtODYsNyArMTAwLDcgQEAKICAgfQogCiAgIHRlbXBsYXRlPHR5cGVuYW1lIEY+Ci0gIHZvaWQgZm9yX2VhY2goRiBhY3Rpb24pIHsKKyAgdm9pZCBmb3JfZWFjaChGIGFjdGlvbikgY29uc3QgewogICAgIHZpc2l0KFsmXSAoVCogc2kpIHsKICAgICAgIGFjdGlvbihzaSk7CiAgICAgICByZXR1cm4gdHJ1ZTsKQEAgLTk0LDcgKzEwOCw3IEBACiAgIH0KIAogICB0ZW1wbGF0ZTx0eXBlbmFtZSBGPgotICBib29sIHZpc2l0KEYgYWN0aW9uKSB7CisgIGJvb2wgdmlzaXQoRiBhY3Rpb24pIGNvbnN0IHsKICAgICBmb3IgKExpbmtlZExpc3RFbnRyeTxUPiogZSA9IGhlYWRfOyBlICE9IG51bGxwdHI7IGUgPSBlLT5uZXh0KSB7CiAgICAgICBpZiAoIWFjdGlvbihlLT5lbGVtZW50KSkgewogICAgICAgICByZXR1cm4gZmFsc2U7CkBAIC0xMjIsNiArMTM2LDE3IEBACiAgICAgfQogICB9CiAKKyAgdGVtcGxhdGU8dHlwZW5hbWUgRj4KKyAgVCogZmluZF9pZihGIHByZWRpY2F0ZSkgY29uc3QgeworICAgIGZvciAoTGlua2VkTGlzdEVudHJ5PFQ+KiBlID0gaGVhZF87IGUgIT0gbnVsbHB0cjsgZSA9IGUtPm5leHQpIHsKKyAgICAgIGlmIChwcmVkaWNhdGUoZS0+ZWxlbWVudCkpIHsKKyAgICAgICAgcmV0dXJuIGUtPmVsZW1lbnQ7CisgICAgICB9CisgICAgfQorCisgICAgcmV0dXJuIG51bGxwdHI7CisgIH0KKwogICBzaXplX3QgY29weV90b19hcnJheShUKiBhcnJheVtdLCBzaXplX3QgYXJyYXlfbGVuZ3RoKSBjb25zdCB7CiAgICAgc2l6ZV90IHN6ID0gMDsKICAgICBmb3IgKExpbmtlZExpc3RFbnRyeTxUPiogZSA9IGhlYWRfOyBzeiA8IGFycmF5X2xlbmd0aCAmJiBlICE9IG51bGxwdHI7IGUgPSBlLT5uZXh0KSB7CkBAIC0xNDAsNiArMTY1LDEyIEBACiAgICAgcmV0dXJuIGZhbHNlOwogICB9CiAKKyAgc3RhdGljIExpbmtlZExpc3QgbWFrZV9saXN0KFQqIGNvbnN0IGVsZW1lbnQpIHsKKyAgICBMaW5rZWRMaXN0PFQsIEFsbG9jYXRvcj4gb25lX2VsZW1lbnRfbGlzdDsKKyAgICBvbmVfZWxlbWVudF9saXN0LnB1c2hfYmFjayhlbGVtZW50KTsKKyAgICByZXR1cm4gb25lX2VsZW1lbnRfbGlzdDsKKyAgfQorCiAgcHJpdmF0ZToKICAgTGlua2VkTGlzdEVudHJ5PFQ+KiBoZWFkXzsKICAgTGlua2VkTGlzdEVudHJ5PFQ+KiB0YWlsXzsKZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZXIuY3BwIGIvbGlua2VyL2xpbmtlci5jcHAKaW5kZXggNTQ4NjdkYy4uZmUyYzJmMCAxMDA2NDQKLS0tIGEvbGlua2VyL2xpbmtlci5jcHAKKysrIGIvbGlua2VyL2xpbmtlci5jcHAKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA4LCAyMDA5IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqIENvcHlyaWdodCAoQykgMjAwOCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dApAQCAtMzUsOSArMzUsMTMgQEAKICNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDxzeXMvbW1hbi5oPgorI2luY2x1ZGUgPHN5cy9wYXJhbS5oPgorI2luY2x1ZGUgPHN5cy9wZXJzb25hbGl0eS5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCiAjaW5jbHVkZSA8bmV3PgorI2luY2x1ZGUgPHN0cmluZz4KKyNpbmNsdWRlIDx2ZWN0b3I+CiAKIC8vIFByaXZhdGUgQyBsaWJyYXJ5IGhlYWRlcnMuCiAjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfdGxzLmgiCkBAIC00OCw0MyArNTIsMjMgQEAKICNpbmNsdWRlICJwcml2YXRlL1VuaXF1ZVB0ci5oIgogCiAjaW5jbHVkZSAibGlua2VyLmgiCisjaW5jbHVkZSAibGlua2VyX2Jsb2NrX2FsbG9jYXRvci5oIgogI2luY2x1ZGUgImxpbmtlcl9kZWJ1Zy5oIgogI2luY2x1ZGUgImxpbmtlcl9lbnZpcm9uLmgiCisjaW5jbHVkZSAibGlua2VyX3NsZWIxMjguaCIKICNpbmNsdWRlICJsaW5rZXJfcGhkci5oIgotI2luY2x1ZGUgImxpbmtlcl9hbGxvY2F0b3IuaCIKKyNpbmNsdWRlICJsaW5rZXJfcmVsb2NzLmgiCisjaW5jbHVkZSAibGlua2VyX3JlbG9jX2l0ZXJhdG9ycy5oIgorI2luY2x1ZGUgInppcGFyY2hpdmUvemlwX2FyY2hpdmUuaCIKIAotLyogPj4+IElNUE9SVEFOVCBOT1RFIC0gUkVBRCBNRSBCRUZPUkUgTU9ESUZZSU5HIDw8PAotICoKLSAqIERvIE5PVCB1c2UgbWFsbG9jKCkgYW5kIGZyaWVuZHMgb3IgcHRocmVhZF8qKCkgY29kZSBoZXJlLgotICogRG9uJ3QgdXNlIHByaW50ZigpIGVpdGhlcjsgaXQncyBjYXVzZWQgbXlzdGVyaW91cyBtZW1vcnkKLSAqIGNvcnJ1cHRpb24gaW4gdGhlIHBhc3QuCi0gKiBUaGUgbGlua2VyIHJ1bnMgYmVmb3JlIHdlIGJyaW5nIHVwIGxpYmMgYW5kIGl0J3MgZWFzaWVzdAotICogdG8gbWFrZSBzdXJlIGl0IGRvZXMgbm90IGRlcGVuZCBvbiBhbnkgY29tcGxleCBsaWJjIGZlYXR1cmVzCi0gKgotICogb3BlbiBpc3N1ZXMgLyB0b2RvOgotICoKLSAqIC0gY2xlYW5lciBlcnJvciByZXBvcnRpbmcKLSAqIC0gYWZ0ZXIgbGlua2luZywgc2V0IGFzIG11Y2ggc3R1ZmYgYXMgcG9zc2libGUgdG8gUkVBRE9OTFkKLSAqICAgYW5kIE5PRVhFQwotICovCi0KLSNpZiBkZWZpbmVkKF9fTFA2NF9fKQotI2RlZmluZSBTRUFSQ0hfTkFNRSh4KSB4Ci0jZWxzZQotLy8gTnZpZGlhIGRyaXZlcnMgYXJlIHJlbHlpbmcgb24gdGhlIGJ1ZzoKLS8vIGh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9hbmRyb2lkL2lzc3Vlcy9kZXRhaWw/aWQ9NjY3MAotLy8gc28gd2UgY29udGludWUgdG8gdXNlIGJhc2UtbmFtZSBsb29rdXAgZm9yIGxwMzIKLXN0YXRpYyBjb25zdCBjaGFyKiBnZXRfYmFzZV9uYW1lKGNvbnN0IGNoYXIqIG5hbWUpIHsKLSAgY29uc3QgY2hhciogYm5hbWUgPSBzdHJyY2hyKG5hbWUsICcvJyk7Ci0gIHJldHVybiBibmFtZSA/IGJuYW1lICsgMSA6IG5hbWU7Ci19Ci0jZGVmaW5lIFNFQVJDSF9OQU1FKHgpIGdldF9iYXNlX25hbWUoeCkKLSNlbmRpZgorLy8gT3ZlcnJpZGUgbWFjcm9zIHRvIHVzZSBDKysgc3R5bGUgY2FzdHMKKyN1bmRlZiBFTEZfU1RfVFlQRQorI2RlZmluZSBFTEZfU1RfVFlQRSh4KSAoc3RhdGljX2Nhc3Q8dWludDMyX3Q+KHgpICYgMHhmKQogCiBzdGF0aWMgRWxmVyhBZGRyKSBnZXRfZWxmX2V4ZWNfbG9hZF9iaWFzKGNvbnN0IEVsZlcoRWhkcikqIGVsZik7CiAKLXN0YXRpYyBMaW5rZXJBbGxvY2F0b3I8c29pbmZvPiBnX3NvaW5mb19hbGxvY2F0b3I7Ci1zdGF0aWMgTGlua2VyQWxsb2NhdG9yPExpbmtlZExpc3RFbnRyeTxzb2luZm8+PiBnX3NvaW5mb19saW5rc19hbGxvY2F0b3I7CitzdGF0aWMgTGlua2VyVHlwZUFsbG9jYXRvcjxzb2luZm8+IGdfc29pbmZvX2FsbG9jYXRvcjsKK3N0YXRpYyBMaW5rZXJUeXBlQWxsb2NhdG9yPExpbmtlZExpc3RFbnRyeTxzb2luZm8+PiBnX3NvaW5mb19saW5rc19hbGxvY2F0b3I7CiAKIHN0YXRpYyBzb2luZm8qIHNvbGlzdDsKIHN0YXRpYyBzb2luZm8qIHNvbmV4dDsKQEAgLTEwMSwzMiArODUsMTggQEAKICAgbnVsbHB0cgogfTsKIAotI2RlZmluZSBMRFBBVEhfQlVGU0laRSAoTERQQVRIX01BWCo2NCkKLSNkZWZpbmUgTERQQVRIX01BWCA4CitzdGF0aWMgY29uc3QgRWxmVyhWZXJzeW0pIGtWZXJzeW1Ob3ROZWVkZWQgPSAwOworc3RhdGljIGNvbnN0IEVsZlcoVmVyc3ltKSBrVmVyc3ltR2xvYmFsID0gMTsKIAotI2RlZmluZSBMRFBSRUxPQURfQlVGU0laRSAoTERQUkVMT0FEX01BWCo2NCkKLSNkZWZpbmUgTERQUkVMT0FEX01BWCA4CitzdGF0aWMgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IGdfbGRfbGlicmFyeV9wYXRoczsKK3N0YXRpYyBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gZ19sZF9wcmVsb2FkX25hbWVzOwogCi1zdGF0aWMgY2hhciBnX2xkX2xpYnJhcnlfcGF0aHNfYnVmZmVyW0xEUEFUSF9CVUZTSVpFXTsKLXN0YXRpYyBjb25zdCBjaGFyKiBnX2xkX2xpYnJhcnlfcGF0aHNbTERQQVRIX01BWCArIDFdOwotCi1zdGF0aWMgY2hhciBnX2xkX3ByZWxvYWRzX2J1ZmZlcltMRFBSRUxPQURfQlVGU0laRV07Ci1zdGF0aWMgY29uc3QgY2hhciogZ19sZF9wcmVsb2FkX25hbWVzW0xEUFJFTE9BRF9NQVggKyAxXTsKLQotc3RhdGljIHNvaW5mbyogZ19sZF9wcmVsb2Fkc1tMRFBSRUxPQURfTUFYICsgMV07CitzdGF0aWMgc3RkOjp2ZWN0b3I8c29pbmZvKj4gZ19sZF9wcmVsb2FkczsKIAogX19MSUJDX0hJRERFTl9fIGludCBnX2xkX2RlYnVnX3ZlcmJvc2l0eTsKIAogX19MSUJDX0hJRERFTl9fIGFib3J0X21zZ190KiBnX2Fib3J0X21lc3NhZ2UgPSBudWxscHRyOyAvLyBGb3IgZGVidWdnZXJkLgogCi1lbnVtIFJlbG9jYXRpb25LaW5kIHsKLSAga1JlbG9jQWJzb2x1dGUgPSAwLAotICBrUmVsb2NSZWxhdGl2ZSwKLSAga1JlbG9jQ29weSwKLSAga1JlbG9jU3ltYm9sLAotICBrUmVsb2NNYXgKLX07Ci0KICNpZiBTVEFUUwogc3RydWN0IGxpbmtlcl9zdGF0c190IHsKICAgaW50IGNvdW50W2tSZWxvY01heF07CkBAIC0xMzQsNDMgKzEwNCwxNyBAQAogCiBzdGF0aWMgbGlua2VyX3N0YXRzX3QgbGlua2VyX3N0YXRzOwogCi1zdGF0aWMgdm9pZCBjb3VudF9yZWxvY2F0aW9uKFJlbG9jYXRpb25LaW5kIGtpbmQpIHsKK3ZvaWQgY291bnRfcmVsb2NhdGlvbihSZWxvY2F0aW9uS2luZCBraW5kKSB7CiAgICsrbGlua2VyX3N0YXRzLmNvdW50W2tpbmRdOwogfQogI2Vsc2UKLXN0YXRpYyB2b2lkIGNvdW50X3JlbG9jYXRpb24oUmVsb2NhdGlvbktpbmQpIHsKK3ZvaWQgY291bnRfcmVsb2NhdGlvbihSZWxvY2F0aW9uS2luZCkgewogfQogI2VuZGlmCiAKICNpZiBDT1VOVF9QQUdFUwotc3RhdGljIHVuc2lnbmVkIGJpdG1hc2tbNDA5Nl07Ci0jaWYgZGVmaW5lZChfX0xQNjRfXykKLSNkZWZpbmUgTUFSSyhvZmZzZXQpIFwKLSAgICBkbyB7IFwKLSAgICAgIGlmICgoKChvZmZzZXQpID4+IDEyKSA+PiA1KSA8IDQwOTYpIFwKLSAgICAgICAgICBiaXRtYXNrWygob2Zmc2V0KSA+PiAxMikgPj4gNV0gfD0gKDEgPDwgKCgob2Zmc2V0KSA+PiAxMikgJiAzMSkpOyBcCi0gICAgfSB3aGlsZSAoMCkKLSNlbHNlCi0jZGVmaW5lIE1BUksob2Zmc2V0KSBcCi0gICAgZG8geyBcCi0gICAgICBiaXRtYXNrWygob2Zmc2V0KSA+PiAxMikgPj4gM10gfD0gKDEgPDwgKCgob2Zmc2V0KSA+PiAxMikgJiA3KSk7IFwKLSAgICB9IHdoaWxlICgwKQordWludDMyX3QgYml0bWFza1s0MDk2XTsKICNlbmRpZgotI2Vsc2UKLSNkZWZpbmUgTUFSSyh4KSBkbyB7fSB3aGlsZSAoMCkKLSNlbmRpZgotCi0vLyBZb3Ugc2hvdWxkbid0IHRyeSB0byBjYWxsIG1lbW9yeS1hbGxvY2F0aW5nIGZ1bmN0aW9ucyBpbiB0aGUgZHluYW1pYyBsaW5rZXIuCi0vLyBHdWFyZCBhZ2FpbnN0IHRoZSBtb3N0IG9idmlvdXMgb25lcy4KLSNkZWZpbmUgRElTQUxMT1dfQUxMT0NBVElPTihyZXR1cm5fdHlwZSwgbmFtZSwgLi4uKSBcCi0gICAgcmV0dXJuX3R5cGUgbmFtZSBfX1ZBX0FSR1NfXyBcCi0gICAgeyBcCi0gICAgICBfX2xpYmNfZmF0YWwoIkVSUk9SOiAiICNuYW1lICIgY2FsbGVkIGZyb20gdGhlIGR5bmFtaWMgbGlua2VyIVxuIik7IFwKLSAgICB9Ci1ESVNBTExPV19BTExPQ0FUSU9OKHZvaWQqLCBtYWxsb2MsIChzaXplX3QgdSBfX3VudXNlZCkpOwotRElTQUxMT1dfQUxMT0NBVElPTih2b2lkLCBmcmVlLCAodm9pZCogdSBfX3VudXNlZCkpOwotRElTQUxMT1dfQUxMT0NBVElPTih2b2lkKiwgcmVhbGxvYywgKHZvaWQqIHUxIF9fdW51c2VkLCBzaXplX3QgdTIgX191bnVzZWQpKTsKLURJU0FMTE9XX0FMTE9DQVRJT04odm9pZCosIGNhbGxvYywgKHNpemVfdCB1MSBfX3VudXNlZCwgc2l6ZV90IHUyIF9fdW51c2VkKSk7CiAKIHN0YXRpYyBjaGFyIF9fbGlua2VyX2RsX2Vycl9idWZbNzY4XTsKIApAQCAtMTg0LDE3ICsxMjgsMjEgQEAKIAogLy8gVGhpcyBmdW5jdGlvbiBpcyBhbiBlbXB0eSBzdHViIHdoZXJlIEdEQiBsb2NhdGVzIGEgYnJlYWtwb2ludCB0byBnZXQgbm90aWZpZWQKIC8vIGFib3V0IGxpbmtlciBhY3Rpdml0eS4KLWV4dGVybiAiQyIgdm9pZCBfX2F0dHJpYnV0ZV9fKChub2lubGluZSkpIF9fYXR0cmlidXRlX18oKHZpc2liaWxpdHkoImRlZmF1bHQiKSkpIHJ0bGRfZGJfZGxhY3Rpdml0eSgpOworZXh0ZXJuICJDIgordm9pZCBfX2F0dHJpYnV0ZV9fKChub2lubGluZSkpIF9fYXR0cmlidXRlX18oKHZpc2liaWxpdHkoImRlZmF1bHQiKSkpIHJ0bGRfZGJfZGxhY3Rpdml0eSgpOwogCiBzdGF0aWMgcHRocmVhZF9tdXRleF90IGdfX3JfZGVidWdfbXV0ZXggPSBQVEhSRUFEX01VVEVYX0lOSVRJQUxJWkVSOwotc3RhdGljIHJfZGVidWcgX3JfZGVidWcgPSB7MSwgbnVsbHB0ciwgcmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KCZydGxkX2RiX2RsYWN0aXZpdHkpLCByX2RlYnVnOjpSVF9DT05TSVNURU5ULCAwfTsKK3N0YXRpYyByX2RlYnVnIF9yX2RlYnVnID0KKyAgICB7MSwgbnVsbHB0ciwgcmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KCZydGxkX2RiX2RsYWN0aXZpdHkpLCByX2RlYnVnOjpSVF9DT05TSVNURU5ULCAwfTsKKwogc3RhdGljIGxpbmtfbWFwKiByX2RlYnVnX3RhaWwgPSAwOwogCiBzdGF0aWMgdm9pZCBpbnNlcnRfc29pbmZvX2ludG9fZGVidWdfbWFwKHNvaW5mbyogaW5mbykgewogICAvLyBDb3B5IHRoZSBuZWNlc3NhcnkgZmllbGRzIGludG8gdGhlIGRlYnVnIHN0cnVjdHVyZS4KICAgbGlua19tYXAqIG1hcCA9ICYoaW5mby0+bGlua19tYXBfaGVhZCk7CiAgIG1hcC0+bF9hZGRyID0gaW5mby0+bG9hZF9iaWFzOwotICBtYXAtPmxfbmFtZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KGluZm8tPm5hbWUpOworICAvLyBsaW5rX21hcCBsX25hbWUgZmllbGQgaXMgbm90IGNvbnN0LgorICBtYXAtPmxfbmFtZSA9IGNvbnN0X2Nhc3Q8Y2hhcio+KGluZm8tPmdldF9yZWFscGF0aCgpKTsKICAgbWFwLT5sX2xkID0gaW5mby0+ZHluYW1pYzsKIAogICAvLyBTdGljayB0aGUgbmV3IGxpYnJhcnkgYXQgdGhlIGVuZCBvZiB0aGUgbGlzdC4KQEAgLTIyOSw3ICsxNzcsNyBAQAogfQogCiBzdGF0aWMgdm9pZCBub3RpZnlfZ2RiX29mX2xvYWQoc29pbmZvKiBpbmZvKSB7Ci0gIGlmIChpbmZvLT5mbGFncyAmIEZMQUdfRVhFKSB7CisgIGlmIChpbmZvLT5pc19tYWluX2V4ZWN1dGFibGUoKSkgewogICAgIC8vIEdEQiBhbHJlYWR5IGtub3dzIGFib3V0IHRoZSBtYWluIGV4ZWN1dGFibGUKICAgICByZXR1cm47CiAgIH0KQEAgLTI0Niw3ICsxOTQsNyBAQAogfQogCiBzdGF0aWMgdm9pZCBub3RpZnlfZ2RiX29mX3VubG9hZChzb2luZm8qIGluZm8pIHsKLSAgaWYgKGluZm8tPmZsYWdzICYgRkxBR19FWEUpIHsKKyAgaWYgKGluZm8tPmlzX21haW5fZXhlY3V0YWJsZSgpKSB7CiAgICAgLy8gR0RCIGFscmVhZHkga25vd3MgYWJvdXQgdGhlIG1haW4gZXhlY3V0YWJsZQogICAgIHJldHVybjsKICAgfQpAQCAtMjc3LDE4ICsyMjUsMTQgQEAKICAgZ19zb2luZm9fbGlua3NfYWxsb2NhdG9yLmZyZWUoZW50cnkpOwogfQogCi1zdGF0aWMgdm9pZCBwcm90ZWN0X2RhdGEoaW50IHByb3RlY3Rpb24pIHsKLSAgZ19zb2luZm9fYWxsb2NhdG9yLnByb3RlY3RfYWxsKHByb3RlY3Rpb24pOwotICBnX3NvaW5mb19saW5rc19hbGxvY2F0b3IucHJvdGVjdF9hbGwocHJvdGVjdGlvbik7Ci19Ci0KLXN0YXRpYyBzb2luZm8qIHNvaW5mb19hbGxvYyhjb25zdCBjaGFyKiBuYW1lLCBzdHJ1Y3Qgc3RhdCogZmlsZV9zdGF0LCBvZmY2NF90IGZpbGVfb2Zmc2V0KSB7Ci0gIGlmIChzdHJsZW4obmFtZSkgPj0gU09JTkZPX05BTUVfTEVOKSB7CitzdGF0aWMgc29pbmZvKiBzb2luZm9fYWxsb2MoY29uc3QgY2hhciogbmFtZSwgc3RydWN0IHN0YXQqIGZpbGVfc3RhdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBvZmY2NF90IGZpbGVfb2Zmc2V0LCB1aW50MzJfdCBydGxkX2ZsYWdzKSB7CisgIGlmIChzdHJsZW4obmFtZSkgPj0gUEFUSF9NQVgpIHsKICAgICBETF9FUlIoImxpYnJhcnkgbmFtZSBcIiVzXCIgdG9vIGxvbmciLCBuYW1lKTsKICAgICByZXR1cm4gbnVsbHB0cjsKICAgfQogCi0gIHNvaW5mbyogc2kgPSBuZXcgKGdfc29pbmZvX2FsbG9jYXRvci5hbGxvYygpKSBzb2luZm8obmFtZSwgZmlsZV9zdGF0LCBmaWxlX29mZnNldCk7CisgIHNvaW5mbyogc2kgPSBuZXcgKGdfc29pbmZvX2FsbG9jYXRvci5hbGxvYygpKSBzb2luZm8obmFtZSwgZmlsZV9zdGF0LCBmaWxlX29mZnNldCwgcnRsZF9mbGFncyk7CiAKICAgc29uZXh0LT5uZXh0ID0gc2k7CiAgIHNvbmV4dCA9IHNpOwpAQCAtMzA4LDcgKzI1Miw3IEBACiAKICAgc29pbmZvICpwcmV2ID0gbnVsbHB0ciwgKnRyYXY7CiAKLSAgVFJBQ0UoIm5hbWUgJXM6IGZyZWVpbmcgc29pbmZvIEAgJXAiLCBzaS0+bmFtZSwgc2kpOworICBUUkFDRSgibmFtZSAlczogZnJlZWluZyBzb2luZm8gQCAlcCIsIHNpLT5nZXRfc29uYW1lKCksIHNpKTsKIAogICBmb3IgKHRyYXYgPSBzb2xpc3Q7IHRyYXYgIT0gbnVsbHB0cjsgdHJhdiA9IHRyYXYtPm5leHQpIHsKICAgICBpZiAodHJhdiA9PSBzaSkgewpAQCAtMzE2LDkgKzI2MCwxMCBAQAogICAgIH0KICAgICBwcmV2ID0gdHJhdjsKICAgfQorCiAgIGlmICh0cmF2ID09IG51bGxwdHIpIHsKICAgICAvLyBzaSB3YXMgbm90IGluIHNvbGlzdAotICAgIERMX0VSUigibmFtZSBcIiVzXCIgaXMgbm90IGluIHNvbGlzdCEiLCBzaS0+bmFtZSk7CisgICAgRExfRVJSKCJuYW1lIFwiJXNcIkAlcCBpcyBub3QgaW4gc29saXN0ISIsIHNpLT5nZXRfc29uYW1lKCksIHNpKTsKICAgICByZXR1cm47CiAgIH0KIApAQCAtMzM1LDQxICsyODAsNDggQEAKICAgZ19zb2luZm9fYWxsb2NhdG9yLmZyZWUoc2kpOwogfQogCi0KIHN0YXRpYyB2b2lkIHBhcnNlX3BhdGgoY29uc3QgY2hhciogcGF0aCwgY29uc3QgY2hhciogZGVsaW1pdGVycywKLSAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhcioqIGFycmF5LCBjaGFyKiBidWYsIHNpemVfdCBidWZfc2l6ZSwgc2l6ZV90IG1heF9jb3VudCkgeworICAgICAgICAgICAgICAgICAgICAgICBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4qIHBhdGhzKSB7CiAgIGlmIChwYXRoID09IG51bGxwdHIpIHsKICAgICByZXR1cm47CiAgIH0KIAotICBzaXplX3QgbGVuID0gc3RybGNweShidWYsIHBhdGgsIGJ1Zl9zaXplKTsKKyAgcGF0aHMtPmNsZWFyKCk7CiAKLSAgc2l6ZV90IGkgPSAwOwotICBjaGFyKiBidWZfcCA9IGJ1ZjsKLSAgd2hpbGUgKGkgPCBtYXhfY291bnQgJiYgKGFycmF5W2ldID0gc3Ryc2VwKCZidWZfcCwgZGVsaW1pdGVycykpKSB7Ci0gICAgaWYgKCphcnJheVtpXSAhPSAnXDAnKSB7Ci0gICAgICArK2k7CisgIGZvciAoY29uc3QgY2hhciAqcCA9IHBhdGg7IDsgKytwKSB7CisgICAgc2l6ZV90IGxlbiA9IHN0cmNzcG4ocCwgZGVsaW1pdGVycyk7CisgICAgLy8gc2tpcCBlbXB0eSB0b2tlbnMKKyAgICBpZiAobGVuID09IDApIHsKKyAgICAgIGNvbnRpbnVlOwogICAgIH0KLSAgfQogCi0gIC8vIEZvcmdldCB0aGUgbGFzdCBwYXRoIGlmIHdlIGhhZCB0byB0cnVuY2F0ZTsgdGhpcyBvY2N1cnMgaWYgdGhlIDJuZCB0bwotICAvLyBsYXN0IGNoYXIgaXNuJ3QgJ1wwJyAoaS5lLiB3YXNuJ3Qgb3JpZ2luYWxseSBhIGRlbGltaXRlcikuCi0gIGlmIChpID4gMCAmJiBsZW4gPj0gYnVmX3NpemUgJiYgYnVmW2J1Zl9zaXplIC0gMl0gIT0gJ1wwJykgewotICAgIGFycmF5W2kgLSAxXSA9IG51bGxwdHI7Ci0gIH0gZWxzZSB7Ci0gICAgYXJyYXlbaV0gPSBudWxscHRyOworICAgIHBhdGhzLT5wdXNoX2JhY2soc3RkOjpzdHJpbmcocCwgbGVuKSk7CisgICAgcCArPSBsZW47CisKKyAgICBpZiAoKnAgPT0gJ1wwJykgeworICAgICAgYnJlYWs7CisgICAgfQogICB9CiB9CiAKIHN0YXRpYyB2b2lkIHBhcnNlX0xEX0xJQlJBUllfUEFUSChjb25zdCBjaGFyKiBwYXRoKSB7Ci0gIHBhcnNlX3BhdGgocGF0aCwgIjoiLCBnX2xkX2xpYnJhcnlfcGF0aHMsCi0gICAgICAgICAgICAgZ19sZF9saWJyYXJ5X3BhdGhzX2J1ZmZlciwgc2l6ZW9mKGdfbGRfbGlicmFyeV9wYXRoc19idWZmZXIpLCBMRFBBVEhfTUFYKTsKKyAgcGFyc2VfcGF0aChwYXRoLCAiOiIsICZnX2xkX2xpYnJhcnlfcGF0aHMpOwogfQogCiBzdGF0aWMgdm9pZCBwYXJzZV9MRF9QUkVMT0FEKGNvbnN0IGNoYXIqIHBhdGgpIHsKICAgLy8gV2UgaGF2ZSBoaXN0b3JpY2FsbHkgc3VwcG9ydGVkICc6JyBhcyB3ZWxsIGFzICcgJyBpbiBMRF9QUkVMT0FELgotICBwYXJzZV9wYXRoKHBhdGgsICIgOiIsIGdfbGRfcHJlbG9hZF9uYW1lcywKLSAgICAgICAgICAgICBnX2xkX3ByZWxvYWRzX2J1ZmZlciwgc2l6ZW9mKGdfbGRfcHJlbG9hZHNfYnVmZmVyKSwgTERQUkVMT0FEX01BWCk7CisgIHBhcnNlX3BhdGgocGF0aCwgIiA6IiwgJmdfbGRfcHJlbG9hZF9uYW1lcyk7Cit9CisKK3N0YXRpYyBib29sIHJlYWxwYXRoX2ZkKGludCBmZCwgc3RkOjpzdHJpbmcqIHJlYWxwYXRoKSB7CisgIHN0ZDo6dmVjdG9yPGNoYXI+IGJ1ZihQQVRIX01BWCksIHByb2Nfc2VsZl9mZChQQVRIX01BWCk7CisgIHNucHJpbnRmKCZwcm9jX3NlbGZfZmRbMF0sIHByb2Nfc2VsZl9mZC5zaXplKCksICIvcHJvYy9zZWxmL2ZkLyVkIiwgZmQpOworICBpZiAocmVhZGxpbmsoJnByb2Nfc2VsZl9mZFswXSwgJmJ1ZlswXSwgYnVmLnNpemUoKSkgPT0gLTEpIHsKKyAgICByZXR1cm4gZmFsc2U7CisgIH0KKworICAqcmVhbHBhdGggPSBzdGQ6OnN0cmluZygmYnVmWzBdKTsKKyAgcmV0dXJuIHRydWU7CiB9CiAKICNpZiBkZWZpbmVkKF9fYXJtX18pCkBAIC0zODMsMTIgKzMzNSwxMiBAQAogLy8KIC8vIFRoaXMgZnVuY3Rpb24gaXMgZXhwb3NlZCB2aWEgZGxmY24uY3BwIGFuZCBsaWJkbC5zby4KIF9VbndpbmRfUHRyIGRsX3Vud2luZF9maW5kX2V4aWR4KF9VbndpbmRfUHRyIHBjLCBpbnQqIHBjb3VudCkgewotICB1bnNpZ25lZCBhZGRyID0gKHVuc2lnbmVkKXBjOworICB1aW50cHRyX3QgYWRkciA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PihwYyk7CiAKICAgZm9yIChzb2luZm8qIHNpID0gc29saXN0OyBzaSAhPSAwOyBzaSA9IHNpLT5uZXh0KSB7CiAgICAgaWYgKChhZGRyID49IHNpLT5iYXNlKSAmJiAoYWRkciA8IChzaS0+YmFzZSArIHNpLT5zaXplKSkpIHsKICAgICAgICAgKnBjb3VudCA9IHNpLT5BUk1fZXhpZHhfY291bnQ7Ci0gICAgICAgIHJldHVybiAoX1Vud2luZF9QdHIpc2ktPkFSTV9leGlkeDsKKyAgICAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8X1Vud2luZF9QdHI+KHNpLT5BUk1fZXhpZHgpOwogICAgIH0KICAgfQogICAqcGNvdW50ID0gMDsKQEAgLTQxNSw3MyArMzY3LDMyOSBAQAogICByZXR1cm4gcnY7CiB9CiAKLXN0YXRpYyBFbGZXKFN5bSkqIHNvaW5mb19lbGZfbG9va3VwKHNvaW5mbyogc2ksIHVuc2lnbmVkIGhhc2gsIGNvbnN0IGNoYXIqIG5hbWUpIHsKLSAgRWxmVyhTeW0pKiBzeW10YWIgPSBzaS0+c3ltdGFiOwotCi0gIFRSQUNFX1RZUEUoTE9PS1VQLCAiU0VBUkNIICVzIGluICVzQCVwICV4ICV6ZCIsCi0gICAgICAgICAgICAgbmFtZSwgc2ktPm5hbWUsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHNpLT5iYXNlKSwgaGFzaCwgaGFzaCAlIHNpLT5uYnVja2V0KTsKLQotICBmb3IgKHVuc2lnbmVkIG4gPSBzaS0+YnVja2V0W2hhc2ggJSBzaS0+bmJ1Y2tldF07IG4gIT0gMDsgbiA9IHNpLT5jaGFpbltuXSkgewotICAgIEVsZlcoU3ltKSogcyA9IHN5bXRhYiArIG47Ci0gICAgaWYgKHN0cmNtcChzaS0+Z2V0X3N0cmluZyhzLT5zdF9uYW1lKSwgbmFtZSkpIGNvbnRpbnVlOwotCi0gICAgLy8gb25seSBjb25jZXJuIG91cnNlbHZlcyB3aXRoIGdsb2JhbCBhbmQgd2VhayBzeW1ib2wgZGVmaW5pdGlvbnMKLSAgICBzd2l0Y2ggKEVMRl9TVF9CSU5EKHMtPnN0X2luZm8pKSB7Ci0gICAgICBjYXNlIFNUQl9HTE9CQUw6Ci0gICAgICBjYXNlIFNUQl9XRUFLOgotICAgICAgICBpZiAocy0+c3Rfc2huZHggPT0gU0hOX1VOREVGKSB7Ci0gICAgICAgICAgY29udGludWU7Ci0gICAgICAgIH0KLQotICAgICAgICBUUkFDRV9UWVBFKExPT0tVUCwgIkZPVU5EICVzIGluICVzICglcCkgJXpkIiwKLSAgICAgICAgICAgICAgICAgbmFtZSwgc2ktPm5hbWUsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHMtPnN0X3ZhbHVlKSwKLSAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8c2l6ZV90PihzLT5zdF9zaXplKSk7Ci0gICAgICAgIHJldHVybiBzOwotICAgICAgY2FzZSBTVEJfTE9DQUw6Ci0gICAgICAgIGNvbnRpbnVlOwotICAgICAgZGVmYXVsdDoKLSAgICAgICAgX19saWJjX2ZhdGFsKCJFUlJPUjogVW5leHBlY3RlZCBTVF9CSU5EIHZhbHVlOiAlZCBmb3IgJyVzJyBpbiAnJXMnIiwKLSAgICAgICAgICAgIEVMRl9TVF9CSU5EKHMtPnN0X2luZm8pLCBuYW1lLCBzaS0+bmFtZSk7Ci0gICAgfQorY29uc3QgRWxmVyhWZXJzeW0pKiBzb2luZm86OmdldF92ZXJzeW0oc2l6ZV90IG4pIGNvbnN0IHsKKyAgaWYgKGhhc19taW5fdmVyc2lvbigyKSAmJiB2ZXJzeW1fICE9IG51bGxwdHIpIHsKKyAgICByZXR1cm4gdmVyc3ltXyArIG47CiAgIH0KIAotICBUUkFDRV9UWVBFKExPT0tVUCwgIk5PVCBGT1VORCAlcyBpbiAlc0AlcCAleCAlemQiLAotICAgICAgICAgICAgIG5hbWUsIHNpLT5uYW1lLCByZWludGVycHJldF9jYXN0PHZvaWQqPihzaS0+YmFzZSksIGhhc2gsIGhhc2ggJSBzaS0+bmJ1Y2tldCk7Ci0KLQogICByZXR1cm4gbnVsbHB0cjsKIH0KIAotc29pbmZvOjpzb2luZm8oY29uc3QgY2hhciogbmFtZSwgY29uc3Qgc3RydWN0IHN0YXQqIGZpbGVfc3RhdCwgb2ZmNjRfdCBmaWxlX29mZnNldCkgeworRWxmVyhBZGRyKSBzb2luZm86OmdldF92ZXJuZWVkX3B0cigpIGNvbnN0IHsKKyAgaWYgKGhhc19taW5fdmVyc2lvbigyKSkgeworICAgIHJldHVybiB2ZXJuZWVkX3B0cl87CisgIH0KKworICByZXR1cm4gMDsKK30KKworc2l6ZV90IHNvaW5mbzo6Z2V0X3Zlcm5lZWRfY250KCkgY29uc3QgeworICBpZiAoaGFzX21pbl92ZXJzaW9uKDIpKSB7CisgICAgcmV0dXJuIHZlcm5lZWRfY250XzsKKyAgfQorCisgIHJldHVybiAwOworfQorCitFbGZXKEFkZHIpIHNvaW5mbzo6Z2V0X3ZlcmRlZl9wdHIoKSBjb25zdCB7CisgIGlmIChoYXNfbWluX3ZlcnNpb24oMikpIHsKKyAgICByZXR1cm4gdmVyZGVmX3B0cl87CisgIH0KKworICByZXR1cm4gMDsKK30KKworc2l6ZV90IHNvaW5mbzo6Z2V0X3ZlcmRlZl9jbnQoKSBjb25zdCB7CisgIGlmIChoYXNfbWluX3ZlcnNpb24oMikpIHsKKyAgICByZXR1cm4gdmVyZGVmX2NudF87CisgIH0KKworICByZXR1cm4gMDsKK30KKwordGVtcGxhdGU8dHlwZW5hbWUgRj4KK3N0YXRpYyBib29sIGZvcl9lYWNoX3ZlcmRlZihjb25zdCBzb2luZm8qIHNpLCBGIGZ1bmN0b3IpIHsKKyAgaWYgKCFzaS0+aGFzX21pbl92ZXJzaW9uKDIpKSB7CisgICAgcmV0dXJuIHRydWU7CisgIH0KKworICB1aW50cHRyX3QgdmVyZGVmX3B0ciA9IHNpLT5nZXRfdmVyZGVmX3B0cigpOworICBpZiAodmVyZGVmX3B0ciA9PSAwKSB7CisgICAgcmV0dXJuIHRydWU7CisgIH0KKworICBzaXplX3Qgb2Zmc2V0ID0gMDsKKworICBzaXplX3QgdmVyZGVmX2NudCA9IHNpLT5nZXRfdmVyZGVmX2NudCgpOworICBmb3IgKHNpemVfdCBpID0gMDsgaTx2ZXJkZWZfY250OyArK2kpIHsKKyAgICBjb25zdCBFbGZXKFZlcmRlZikqIHZlcmRlZiA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhWZXJkZWYpKj4odmVyZGVmX3B0ciArIG9mZnNldCk7CisgICAgc2l6ZV90IHZlcmRhdXhfb2Zmc2V0ID0gb2Zmc2V0ICsgdmVyZGVmLT52ZF9hdXg7CisgICAgb2Zmc2V0ICs9IHZlcmRlZi0+dmRfbmV4dDsKKworICAgIGlmICh2ZXJkZWYtPnZkX3ZlcnNpb24gIT0gMSkgeworICAgICAgRExfRVJSKCJ1bnN1cHBvcnRlZCB2ZXJkZWZbJXpkXSB2ZF92ZXJzaW9uOiAlZCAoZXhwZWN0ZWQgMSkgbGlicmFyeTogJXMiLAorICAgICAgICAgIGksIHZlcmRlZi0+dmRfdmVyc2lvbiwgc2ktPmdldF9zb25hbWUoKSk7CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgaWYgKCh2ZXJkZWYtPnZkX2ZsYWdzICYgVkVSX0ZMR19CQVNFKSAhPSAwKSB7CisgICAgICAvLyAidGhpcyBpcyB0aGUgdmVyc2lvbiBvZiB0aGUgZmlsZSBpdHNlbGYuICBJdCBtdXN0IG5vdCBiZSB1c2VkIGZvcgorICAgICAgLy8gIG1hdGNoaW5nIGEgc3ltYm9sLiBJdCBjYW4gYmUgdXNlZCB0byBtYXRjaCByZWZlcmVuY2VzLiIKKyAgICAgIC8vCisgICAgICAvLyBodHRwOi8vd3d3LmFra2FkaWEub3JnL2RyZXBwZXIvc3ltYm9sLXZlcnNpb25pbmcKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKworICAgIGlmICh2ZXJkZWYtPnZkX2NudCA9PSAwKSB7CisgICAgICBETF9FUlIoImludmFsaWQgdmVyZGVmWyV6ZF0gdmRfY250ID09IDAgKHZlcnNpb24gd2l0aG91dCBhIG5hbWUpIiwgaSk7CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgY29uc3QgRWxmVyhWZXJkYXV4KSogdmVyZGF1eCA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhWZXJkYXV4KSo+KHZlcmRlZl9wdHIgKyB2ZXJkYXV4X29mZnNldCk7CisKKyAgICBpZiAoZnVuY3RvcihpLCB2ZXJkZWYsIHZlcmRhdXgpID09IHRydWUpIHsKKyAgICAgIGJyZWFrOworICAgIH0KKyAgfQorCisgIHJldHVybiB0cnVlOworfQorCitib29sIHNvaW5mbzo6ZmluZF92ZXJkZWZfdmVyc2lvbl9pbmRleChjb25zdCB2ZXJzaW9uX2luZm8qIHZpLCBFbGZXKFZlcnN5bSkqIHZlcnN5bSkgY29uc3QgeworICBpZiAodmkgPT0gbnVsbHB0cikgeworICAgICp2ZXJzeW0gPSBrVmVyc3ltTm90TmVlZGVkOworICAgIHJldHVybiB0cnVlOworICB9CisKKyAgKnZlcnN5bSA9IGtWZXJzeW1HbG9iYWw7CisKKyAgcmV0dXJuIGZvcl9lYWNoX3ZlcmRlZih0aGlzLAorICAgIFsmXShzaXplX3QsIGNvbnN0IEVsZlcoVmVyZGVmKSogdmVyZGVmLCBjb25zdCBFbGZXKFZlcmRhdXgpKiB2ZXJkYXV4KSB7CisgICAgICBpZiAodmVyZGVmLT52ZF9oYXNoID09IHZpLT5lbGZfaGFzaCAmJgorICAgICAgICAgIHN0cmNtcCh2aS0+bmFtZSwgZ2V0X3N0cmluZyh2ZXJkYXV4LT52ZGFfbmFtZSkpID09IDApIHsKKyAgICAgICAgKnZlcnN5bSA9IHZlcmRlZi0+dmRfbmR4OworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgIH0KKworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgKTsKK30KKworYm9vbCBzb2luZm86OmZpbmRfc3ltYm9sX2J5X25hbWUoU3ltYm9sTmFtZSYgc3ltYm9sX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2ZXJzaW9uX2luZm8qIHZpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRWxmVyhTeW0pKiogc3ltYm9sKSBjb25zdCB7CisgIHVpbnQzMl90IHN5bWJvbF9pbmRleDsKKyAgYm9vbCBzdWNjZXNzID0KKyAgICAgIGlzX2dudV9oYXNoKCkgPworICAgICAgZ251X2xvb2t1cChzeW1ib2xfbmFtZSwgdmksICZzeW1ib2xfaW5kZXgpIDoKKyAgICAgIGVsZl9sb29rdXAoc3ltYm9sX25hbWUsIHZpLCAmc3ltYm9sX2luZGV4KTsKKworICBpZiAoc3VjY2VzcykgeworICAgICpzeW1ib2wgPSBzeW1ib2xfaW5kZXggPT0gMCA/IG51bGxwdHIgOiBzeW10YWJfICsgc3ltYm9sX2luZGV4OworICB9CisKKyAgcmV0dXJuIHN1Y2Nlc3M7Cit9CisKK3N0YXRpYyBib29sIGlzX3N5bWJvbF9nbG9iYWxfYW5kX2RlZmluZWQoY29uc3Qgc29pbmZvKiBzaSwgY29uc3QgRWxmVyhTeW0pKiBzKSB7CisgIGlmIChFTEZfU1RfQklORChzLT5zdF9pbmZvKSA9PSBTVEJfR0xPQkFMIHx8CisgICAgICBFTEZfU1RfQklORChzLT5zdF9pbmZvKSA9PSBTVEJfV0VBSykgeworICAgIHJldHVybiBzLT5zdF9zaG5keCAhPSBTSE5fVU5ERUY7CisgIH0gZWxzZSBpZiAoRUxGX1NUX0JJTkQocy0+c3RfaW5mbykgIT0gU1RCX0xPQ0FMKSB7CisgICAgRExfV0FSTigidW5leHBlY3RlZCBTVF9CSU5EIHZhbHVlOiAlZCBmb3IgJyVzJyBpbiAnJXMnIiwKKyAgICAgICAgRUxGX1NUX0JJTkQocy0+c3RfaW5mbyksIHNpLT5nZXRfc3RyaW5nKHMtPnN0X25hbWUpLCBzaS0+Z2V0X3NvbmFtZSgpKTsKKyAgfQorCisgIHJldHVybiBmYWxzZTsKK30KKworc3RhdGljIGNvbnN0IEVsZlcoVmVyc3ltKSBrVmVyc3ltSGlkZGVuQml0ID0gMHg4MDAwOworCitzdGF0aWMgaW5saW5lIGJvb2wgaXNfdmVyc3ltX2hpZGRlbihjb25zdCBFbGZXKFZlcnN5bSkqIHZlcnN5bSkgeworICAvLyB0aGUgc3ltYm9sIGlzIGhpZGRlbiBpZiBiaXQgMTUgb2YgdmVyc3ltIGlzIHNldC4KKyAgcmV0dXJuIHZlcnN5bSAhPSBudWxscHRyICYmICgqdmVyc3ltICYga1ZlcnN5bUhpZGRlbkJpdCkgIT0gMDsKK30KKworc3RhdGljIGlubGluZSBib29sIGNoZWNrX3N5bWJvbF92ZXJzaW9uKGNvbnN0IEVsZlcoVmVyc3ltKSB2ZXJuZWVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVsZlcoVmVyc3ltKSogdmVyZGVmKSB7CisgIHJldHVybiB2ZXJuZWVkID09IGtWZXJzeW1Ob3ROZWVkZWQgfHwKKyAgICAgIHZlcmRlZiA9PSBudWxscHRyIHx8CisgICAgICB2ZXJuZWVkID09ICgqdmVyZGVmICYgfmtWZXJzeW1IaWRkZW5CaXQpOworfQorCitib29sIHNvaW5mbzo6Z251X2xvb2t1cChTeW1ib2xOYW1lJiBzeW1ib2xfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZlcnNpb25faW5mbyogdmksCisgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCogc3ltYm9sX2luZGV4KSBjb25zdCB7CisgIHVpbnQzMl90IGhhc2ggPSBzeW1ib2xfbmFtZS5nbnVfaGFzaCgpOworICB1aW50MzJfdCBoMiA9IGhhc2ggPj4gZ251X3NoaWZ0Ml87CisKKyAgdWludDMyX3QgYmxvb21fbWFza19iaXRzID0gc2l6ZW9mKEVsZlcoQWRkcikpKjg7CisgIHVpbnQzMl90IHdvcmRfbnVtID0gKGhhc2ggLyBibG9vbV9tYXNrX2JpdHMpICYgZ251X21hc2t3b3Jkc187CisgIEVsZlcoQWRkcikgYmxvb21fd29yZCA9IGdudV9ibG9vbV9maWx0ZXJfW3dvcmRfbnVtXTsKKworICAqc3ltYm9sX2luZGV4ID0gMDsKKworICBUUkFDRV9UWVBFKExPT0tVUCwgIlNFQVJDSCAlcyBpbiAlc0AlcCAoZ251KSIsCisgICAgICBzeW1ib2xfbmFtZS5nZXRfbmFtZSgpLCBnZXRfc29uYW1lKCksIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGJhc2UpKTsKKworICAvLyB0ZXN0IGFnYWluc3QgYmxvb20gZmlsdGVyCisgIGlmICgoMSAmIChibG9vbV93b3JkID4+IChoYXNoICUgYmxvb21fbWFza19iaXRzKSkgJiAoYmxvb21fd29yZCA+PiAoaDIgJSBibG9vbV9tYXNrX2JpdHMpKSkgPT0gMCkgeworICAgIFRSQUNFX1RZUEUoTE9PS1VQLCAiTk9UIEZPVU5EICVzIGluICVzQCVwIiwKKyAgICAgICAgc3ltYm9sX25hbWUuZ2V0X25hbWUoKSwgZ2V0X3NvbmFtZSgpLCByZWludGVycHJldF9jYXN0PHZvaWQqPihiYXNlKSk7CisKKyAgICByZXR1cm4gdHJ1ZTsKKyAgfQorCisgIC8vIGJsb29tIHRlc3Qgc2F5cyAicHJvYmFibHkgeWVzIi4uLgorICB1aW50MzJfdCBuID0gZ251X2J1Y2tldF9baGFzaCAlIGdudV9uYnVja2V0X107CisKKyAgaWYgKG4gPT0gMCkgeworICAgIFRSQUNFX1RZUEUoTE9PS1VQLCAiTk9UIEZPVU5EICVzIGluICVzQCVwIiwKKyAgICAgICAgc3ltYm9sX25hbWUuZ2V0X25hbWUoKSwgZ2V0X3NvbmFtZSgpLCByZWludGVycHJldF9jYXN0PHZvaWQqPihiYXNlKSk7CisKKyAgICByZXR1cm4gdHJ1ZTsKKyAgfQorCisgIC8vIGxvb2t1cCB2ZXJzeW0gZm9yIHRoZSB2ZXJzaW9uIGRlZmluaXRpb24gaW4gdGhpcyBsaWJyYXJ5CisgIC8vIG5vdGUgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiAidmVyc2lvbiBpcyBub3QgcmVxdWVzdGVkIiAodmkgPT0gbnVsbHB0cikKKyAgLy8gYW5kICJ2ZXJzaW9uIG5vdCBmb3VuZCIuIEluIHRoZSBmaXJzdCBjYXNlIHZlcm5lZWQgaXMga1ZlcnN5bU5vdE5lZWRlZAorICAvLyB3aGljaCBpbXBsaWVzIHRoYXQgdGhlIGRlZmF1bHQgdmVyc2lvbiBjYW4gYmUgYWNjZXB0ZWQ7IHRoZSBzZWNvbmQgY2FzZSByZXN1bHRzIGluCisgIC8vIHZlcm5lZWQgPSAxIChrVmVyc3ltR2xvYmFsKSBhbmQgaW1wbGllcyB0aGF0IHdlIHNob3VsZCBpZ25vcmUgdmVyc2lvbmVkIHN5bWJvbHMKKyAgLy8gZm9yIHRoaXMgbGlicmFyeSBhbmQgY29uc2lkZXIgb25seSAqZ2xvYmFsKiBvbmVzLgorICBFbGZXKFZlcnN5bSkgdmVybmVlZCA9IDA7CisgIGlmICghZmluZF92ZXJkZWZfdmVyc2lvbl9pbmRleCh2aSwgJnZlcm5lZWQpKSB7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisKKyAgZG8geworICAgIEVsZlcoU3ltKSogcyA9IHN5bXRhYl8gKyBuOworICAgIGNvbnN0IEVsZlcoVmVyc3ltKSogdmVyZGVmID0gZ2V0X3ZlcnN5bShuKTsKKyAgICAvLyBza2lwIGhpZGRlbiB2ZXJzaW9ucyB3aGVuIHZlcm5lZWQgPT0ga1ZlcnN5bU5vdE5lZWRlZCAoMCkKKyAgICBpZiAodmVybmVlZCA9PSBrVmVyc3ltTm90TmVlZGVkICYmIGlzX3ZlcnN5bV9oaWRkZW4odmVyZGVmKSkgeworICAgICAgICBjb250aW51ZTsKKyAgICB9CisgICAgaWYgKCgoZ251X2NoYWluX1tuXSBeIGhhc2gpID4+IDEpID09IDAgJiYKKyAgICAgICAgY2hlY2tfc3ltYm9sX3ZlcnNpb24odmVybmVlZCwgdmVyZGVmKSAmJgorICAgICAgICBzdHJjbXAoZ2V0X3N0cmluZyhzLT5zdF9uYW1lKSwgc3ltYm9sX25hbWUuZ2V0X25hbWUoKSkgPT0gMCAmJgorICAgICAgICBpc19zeW1ib2xfZ2xvYmFsX2FuZF9kZWZpbmVkKHRoaXMsIHMpKSB7CisgICAgICBUUkFDRV9UWVBFKExPT0tVUCwgIkZPVU5EICVzIGluICVzICglcCkgJXpkIiwKKyAgICAgICAgICBzeW1ib2xfbmFtZS5nZXRfbmFtZSgpLCBnZXRfc29uYW1lKCksIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHMtPnN0X3ZhbHVlKSwKKyAgICAgICAgICBzdGF0aWNfY2FzdDxzaXplX3Q+KHMtPnN0X3NpemUpKTsKKyAgICAgICpzeW1ib2xfaW5kZXggPSBuOworICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorICB9IHdoaWxlICgoZ251X2NoYWluX1tuKytdICYgMSkgPT0gMCk7CisKKyAgVFJBQ0VfVFlQRShMT09LVVAsICJOT1QgRk9VTkQgJXMgaW4gJXNAJXAiLAorICAgICAgICAgICAgIHN5bWJvbF9uYW1lLmdldF9uYW1lKCksIGdldF9zb25hbWUoKSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oYmFzZSkpOworCisgIHJldHVybiB0cnVlOworfQorCitib29sIHNvaW5mbzo6ZWxmX2xvb2t1cChTeW1ib2xOYW1lJiBzeW1ib2xfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZlcnNpb25faW5mbyogdmksCisgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCogc3ltYm9sX2luZGV4KSBjb25zdCB7CisgIHVpbnQzMl90IGhhc2ggPSBzeW1ib2xfbmFtZS5lbGZfaGFzaCgpOworCisgIFRSQUNFX1RZUEUoTE9PS1VQLCAiU0VBUkNIICVzIGluICVzQCVwIGg9JXgoZWxmKSAlemQiLAorICAgICAgICAgICAgIHN5bWJvbF9uYW1lLmdldF9uYW1lKCksIGdldF9zb25hbWUoKSwKKyAgICAgICAgICAgICByZWludGVycHJldF9jYXN0PHZvaWQqPihiYXNlKSwgaGFzaCwgaGFzaCAlIG5idWNrZXRfKTsKKworICBFbGZXKFZlcnN5bSkgdmVybmVlZCA9IDA7CisgIGlmICghZmluZF92ZXJkZWZfdmVyc2lvbl9pbmRleCh2aSwgJnZlcm5lZWQpKSB7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisKKyAgZm9yICh1aW50MzJfdCBuID0gYnVja2V0X1toYXNoICUgbmJ1Y2tldF9dOyBuICE9IDA7IG4gPSBjaGFpbl9bbl0pIHsKKyAgICBFbGZXKFN5bSkqIHMgPSBzeW10YWJfICsgbjsKKyAgICBjb25zdCBFbGZXKFZlcnN5bSkqIHZlcmRlZiA9IGdldF92ZXJzeW0obik7CisKKyAgICAvLyBza2lwIGhpZGRlbiB2ZXJzaW9ucyB3aGVuIHZlcm5lZWQgPT0gMAorICAgIGlmICh2ZXJuZWVkID09IGtWZXJzeW1Ob3ROZWVkZWQgJiYgaXNfdmVyc3ltX2hpZGRlbih2ZXJkZWYpKSB7CisgICAgICAgIGNvbnRpbnVlOworICAgIH0KKworICAgIGlmIChjaGVja19zeW1ib2xfdmVyc2lvbih2ZXJuZWVkLCB2ZXJkZWYpICYmCisgICAgICAgIHN0cmNtcChnZXRfc3RyaW5nKHMtPnN0X25hbWUpLCBzeW1ib2xfbmFtZS5nZXRfbmFtZSgpKSA9PSAwICYmCisgICAgICAgIGlzX3N5bWJvbF9nbG9iYWxfYW5kX2RlZmluZWQodGhpcywgcykpIHsKKyAgICAgIFRSQUNFX1RZUEUoTE9PS1VQLCAiRk9VTkQgJXMgaW4gJXMgKCVwKSAlemQiLAorICAgICAgICAgICAgICAgICBzeW1ib2xfbmFtZS5nZXRfbmFtZSgpLCBnZXRfc29uYW1lKCksCisgICAgICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHMtPnN0X3ZhbHVlKSwKKyAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8c2l6ZV90PihzLT5zdF9zaXplKSk7CisgICAgICAqc3ltYm9sX2luZGV4ID0gbjsKKyAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgfQorCisgIFRSQUNFX1RZUEUoTE9PS1VQLCAiTk9UIEZPVU5EICVzIGluICVzQCVwICV4ICV6ZCIsCisgICAgICAgICAgICAgc3ltYm9sX25hbWUuZ2V0X25hbWUoKSwgZ2V0X3NvbmFtZSgpLAorICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGJhc2UpLCBoYXNoLCBoYXNoICUgbmJ1Y2tldF8pOworCisgICpzeW1ib2xfaW5kZXggPSAwOworICByZXR1cm4gdHJ1ZTsKK30KKworc29pbmZvOjpzb2luZm8oY29uc3QgY2hhciogcmVhbHBhdGgsIGNvbnN0IHN0cnVjdCBzdGF0KiBmaWxlX3N0YXQsCisgICAgICAgICAgICAgICBvZmY2NF90IGZpbGVfb2Zmc2V0LCBpbnQgcnRsZF9mbGFncykgewogICBtZW1zZXQodGhpcywgMCwgc2l6ZW9mKCp0aGlzKSk7CiAKLSAgc3RybGNweSh0aGlzLT5uYW1lLCBuYW1lLCBzaXplb2YodGhpcy0+bmFtZSkpOwotICBmbGFncyA9IEZMQUdfTkVXX1NPSU5GTzsKLSAgdmVyc2lvbiA9IFNPSU5GT19WRVJTSU9OOworICBpZiAocmVhbHBhdGggIT0gbnVsbHB0cikgeworICAgIHJlYWxwYXRoXyA9IHJlYWxwYXRoOworICB9CisKKyAgZmxhZ3NfID0gRkxBR19ORVdfU09JTkZPOworICB2ZXJzaW9uXyA9IFNPSU5GT19WRVJTSU9OOwogCiAgIGlmIChmaWxlX3N0YXQgIT0gbnVsbHB0cikgewotICAgIHRoaXMtPnN0X2RldiA9IGZpbGVfc3RhdC0+c3RfZGV2OwotICAgIHRoaXMtPnN0X2lubyA9IGZpbGVfc3RhdC0+c3RfaW5vOwotICAgIHRoaXMtPmZpbGVfb2Zmc2V0ID0gZmlsZV9vZmZzZXQ7CisgICAgdGhpcy0+c3RfZGV2XyA9IGZpbGVfc3RhdC0+c3RfZGV2OworICAgIHRoaXMtPnN0X2lub18gPSBmaWxlX3N0YXQtPnN0X2lubzsKKyAgICB0aGlzLT5maWxlX29mZnNldF8gPSBmaWxlX29mZnNldDsKICAgfQorCisgIHRoaXMtPnJ0bGRfZmxhZ3NfID0gcnRsZF9mbGFnczsKIH0KIAotc3RhdGljIHVuc2lnbmVkIGVsZmhhc2goY29uc3QgY2hhciogX25hbWUpIHsKLSAgY29uc3QgdW5zaWduZWQgY2hhciogbmFtZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgdW5zaWduZWQgY2hhcio+KF9uYW1lKTsKLSAgdW5zaWduZWQgaCA9IDAsIGc7CiAKLSAgd2hpbGUgKCpuYW1lKSB7Ci0gICAgaCA9IChoIDw8IDQpICsgKm5hbWUrKzsKLSAgICBnID0gaCAmIDB4ZjAwMDAwMDA7Ci0gICAgaCBePSBnOwotICAgIGggXj0gZyA+PiAyNDsKK3VpbnQzMl90IFN5bWJvbE5hbWU6OmVsZl9oYXNoKCkgeworICBpZiAoIWhhc19lbGZfaGFzaF8pIHsKKyAgICBjb25zdCB1aW50OF90KiBuYW1lID0gcmVpbnRlcnByZXRfY2FzdDxjb25zdCB1aW50OF90Kj4obmFtZV8pOworICAgIHVpbnQzMl90IGggPSAwLCBnOworCisgICAgd2hpbGUgKCpuYW1lKSB7CisgICAgICBoID0gKGggPDwgNCkgKyAqbmFtZSsrOworICAgICAgZyA9IGggJiAweGYwMDAwMDAwOworICAgICAgaCBePSBnOworICAgICAgaCBePSBnID4+IDI0OworICAgIH0KKworICAgIGVsZl9oYXNoXyA9IGg7CisgICAgaGFzX2VsZl9oYXNoXyA9IHRydWU7CiAgIH0KLSAgcmV0dXJuIGg7CisKKyAgcmV0dXJuIGVsZl9oYXNoXzsKIH0KIAotc3RhdGljIEVsZlcoU3ltKSogc29pbmZvX2RvX2xvb2t1cChzb2luZm8qIHNpLCBjb25zdCBjaGFyKiBuYW1lLCBzb2luZm8qKiBsc2kpIHsKLSAgdW5zaWduZWQgZWxmX2hhc2ggPSBlbGZoYXNoKG5hbWUpOwotICBFbGZXKFN5bSkqIHMgPSBudWxscHRyOwordWludDMyX3QgU3ltYm9sTmFtZTo6Z251X2hhc2goKSB7CisgIGlmICghaGFzX2dudV9oYXNoXykgeworICAgIHVpbnQzMl90IGggPSA1MzgxOworICAgIGNvbnN0IHVpbnQ4X3QqIG5hbWUgPSByZWludGVycHJldF9jYXN0PGNvbnN0IHVpbnQ4X3QqPihuYW1lXyk7CisgICAgd2hpbGUgKCpuYW1lICE9IDApIHsKKyAgICAgIGggKz0gKGggPDwgNSkgKyAqbmFtZSsrOyAvLyBoKjMzICsgYyA9IGggKyBoICogMzIgKyBjID0gaCArIGggPDwgNSArIGMKKyAgICB9CisKKyAgICBnbnVfaGFzaF8gPSAgaDsKKyAgICBoYXNfZ251X2hhc2hfID0gdHJ1ZTsKKyAgfQorCisgIHJldHVybiBnbnVfaGFzaF87Cit9CisKK2Jvb2wgc29pbmZvX2RvX2xvb2t1cChzb2luZm8qIHNpX2Zyb20sIGNvbnN0IGNoYXIqIG5hbWUsIGNvbnN0IHZlcnNpb25faW5mbyogdmksCisgICAgICAgICAgICAgICAgICAgICAgc29pbmZvKiogc2lfZm91bmRfaW4sIGNvbnN0IHNvaW5mbzo6c29pbmZvX2xpc3RfdCYgZ2xvYmFsX2dyb3VwLAorICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNvaW5mbzo6c29pbmZvX2xpc3RfdCYgbG9jYWxfZ3JvdXAsIGNvbnN0IEVsZlcoU3ltKSoqIHN5bWJvbCkgeworICBTeW1ib2xOYW1lIHN5bWJvbF9uYW1lKG5hbWUpOworICBjb25zdCBFbGZXKFN5bSkqIHMgPSBudWxscHRyOwogCiAgIC8qICJUaGlzIGVsZW1lbnQncyBwcmVzZW5jZSBpbiBhIHNoYXJlZCBvYmplY3QgbGlicmFyeSBhbHRlcnMgdGhlIGR5bmFtaWMgbGlua2VyJ3MKICAgICogc3ltYm9sIHJlc29sdXRpb24gYWxnb3JpdGhtIGZvciByZWZlcmVuY2VzIHdpdGhpbiB0aGUgbGlicmFyeS4gSW5zdGVhZCBvZiBzdGFydGluZwpAQCAtNDk0LDc4ICs3MDIsMTEwIEBACiAgICAqIE5vdGUgdGhhdCB0aGlzIGlzIHVubGlrZWx5IHNpbmNlIHN0YXRpYyBsaW5rZXIgYXZvaWRzIGdlbmVyYXRpbmcKICAgICogcmVsb2NhdGlvbnMgZm9yIC1Cc3ltYm9saWMgbGlua2VkIGR5bmFtaWMgZXhlY3V0YWJsZXMuCiAgICAqLwotICBpZiAoc2ktPmhhc19EVF9TWU1CT0xJQykgewotICAgIERFQlVHKCIlczogbG9va2luZyB1cCAlcyBpbiBsb2NhbCBzY29wZSAoRFRfU1lNQk9MSUMpIiwgc2ktPm5hbWUsIG5hbWUpOwotICAgIHMgPSBzb2luZm9fZWxmX2xvb2t1cChzaSwgZWxmX2hhc2gsIG5hbWUpOworICBpZiAoc2lfZnJvbS0+aGFzX0RUX1NZTUJPTElDKSB7CisgICAgREVCVUcoIiVzOiBsb29raW5nIHVwICVzIGluIGxvY2FsIHNjb3BlIChEVF9TWU1CT0xJQykiLCBzaV9mcm9tLT5nZXRfc29uYW1lKCksIG5hbWUpOworICAgIGlmICghc2lfZnJvbS0+ZmluZF9zeW1ib2xfYnlfbmFtZShzeW1ib2xfbmFtZSwgdmksICZzKSkgeworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKwogICAgIGlmIChzICE9IG51bGxwdHIpIHsKLSAgICAgICpsc2kgPSBzaTsKKyAgICAgICpzaV9mb3VuZF9pbiA9IHNpX2Zyb207CiAgICAgfQogICB9CiAKLSAgaWYgKHMgPT0gbnVsbHB0ciAmJiBzb21haW4gIT0gbnVsbHB0cikgewotICAgIC8vIDEuIExvb2sgZm9yIGl0IGluIHRoZSBtYWluIGV4ZWN1dGFibGUgdW5sZXNzIHdlIGFscmVhZHkgZGlkLgotICAgIGlmIChzaSAhPSBzb21haW4gfHwgIXNpLT5oYXNfRFRfU1lNQk9MSUMpIHsKLSAgICAgIERFQlVHKCIlczogbG9va2luZyB1cCAlcyBpbiBleGVjdXRhYmxlICVzIiwKLSAgICAgICAgICAgIHNpLT5uYW1lLCBuYW1lLCBzb21haW4tPm5hbWUpOwotICAgICAgcyA9IHNvaW5mb19lbGZfbG9va3VwKHNvbWFpbiwgZWxmX2hhc2gsIG5hbWUpOwotICAgICAgaWYgKHMgIT0gbnVsbHB0cikgewotICAgICAgICAqbHNpID0gc29tYWluOwotICAgICAgfQotICAgIH0KLQotICAgIC8vIDIuIExvb2sgZm9yIGl0IGluIHRoZSBsZF9wcmVsb2FkcwotICAgIGlmIChzID09IG51bGxwdHIpIHsKLSAgICAgIGZvciAoaW50IGkgPSAwOyBnX2xkX3ByZWxvYWRzW2ldICE9IE5VTEw7IGkrKykgewotICAgICAgICBzID0gc29pbmZvX2VsZl9sb29rdXAoZ19sZF9wcmVsb2Fkc1tpXSwgZWxmX2hhc2gsIG5hbWUpOwotICAgICAgICBpZiAocyAhPSBudWxscHRyKSB7Ci0gICAgICAgICAgKmxzaSA9IGdfbGRfcHJlbG9hZHNbaV07Ci0gICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAgICAgIH0KLSAgICB9Ci0gIH0KLQotICAvKiBMb29rIGZvciBzeW1ib2xzIGluIHRoZSBsb2NhbCBzY29wZSAodGhlIG9iamVjdCB3aG8gaXMKLSAgICogc2VhcmNoaW5nKS4gVGhpcyBoYXBwZW5zIHdpdGggQysrIHRlbXBsYXRlcyBvbiB4ODYgZm9yIHNvbWUKLSAgICogcmVhc29uLgotICAgKgotICAgKiBOb3RlcyBvbiB3ZWFrIHN5bWJvbHM6Ci0gICAqIFRoZSBFTEYgc3BlY3MgYXJlIGFtYmlndW91cyBhYm91dCB0cmVhdG1lbnQgb2Ygd2VhayBkZWZpbml0aW9ucyBpbgotICAgKiBkeW5hbWljIGxpbmtpbmcuICBTb21lIHN5c3RlbXMgcmV0dXJuIHRoZSBmaXJzdCBkZWZpbml0aW9uIGZvdW5kCi0gICAqIGFuZCBzb21lIHRoZSBmaXJzdCBub24td2VhayBkZWZpbml0aW9uLiAgIFRoaXMgaXMgc3lzdGVtIGRlcGVuZGVudC4KLSAgICogSGVyZSB3ZSByZXR1cm4gdGhlIGZpcnN0IGRlZmluaXRpb24gZm91bmQgZm9yIHNpbXBsaWNpdHkuICAqLwotCi0gIGlmIChzID09IG51bGxwdHIgJiYgIXNpLT5oYXNfRFRfU1lNQk9MSUMpIHsKLSAgICBERUJVRygiJXM6IGxvb2tpbmcgdXAgJXMgaW4gbG9jYWwgc2NvcGUiLCBzaS0+bmFtZSwgbmFtZSk7Ci0gICAgcyA9IHNvaW5mb19lbGZfbG9va3VwKHNpLCBlbGZfaGFzaCwgbmFtZSk7Ci0gICAgaWYgKHMgIT0gbnVsbHB0cikgewotICAgICAgKmxzaSA9IHNpOwotICAgIH0KLSAgfQotCisgIC8vIDEuIExvb2sgZm9yIGl0IGluIGdsb2JhbF9ncm91cAogICBpZiAocyA9PSBudWxscHRyKSB7Ci0gICAgc2ktPmdldF9jaGlsZHJlbigpLnZpc2l0KFsmXShzb2luZm8qIGNoaWxkKSB7Ci0gICAgICBERUJVRygiJXM6IGxvb2tpbmcgdXAgJXMgaW4gJXMiLCBzaS0+bmFtZSwgbmFtZSwgY2hpbGQtPm5hbWUpOwotICAgICAgcyA9IHNvaW5mb19lbGZfbG9va3VwKGNoaWxkLCBlbGZfaGFzaCwgbmFtZSk7Ci0gICAgICBpZiAocyAhPSBudWxscHRyKSB7Ci0gICAgICAgICpsc2kgPSBjaGlsZDsKKyAgICBib29sIGVycm9yID0gZmFsc2U7CisgICAgZ2xvYmFsX2dyb3VwLnZpc2l0KFsmXShzb2luZm8qIGdsb2JhbF9zaSkgeworICAgICAgREVCVUcoIiVzOiBsb29raW5nIHVwICVzIGluICVzIChmcm9tIGdsb2JhbCBncm91cCkiLAorICAgICAgICAgIHNpX2Zyb20tPmdldF9zb25hbWUoKSwgbmFtZSwgZ2xvYmFsX3NpLT5nZXRfc29uYW1lKCkpOworICAgICAgaWYgKCFnbG9iYWxfc2ktPmZpbmRfc3ltYm9sX2J5X25hbWUoc3ltYm9sX25hbWUsIHZpLCAmcykpIHsKKyAgICAgICAgZXJyb3IgPSB0cnVlOwogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICB9CisKKyAgICAgIGlmIChzICE9IG51bGxwdHIpIHsKKyAgICAgICAgKnNpX2ZvdW5kX2luID0gZ2xvYmFsX3NpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisKICAgICAgIHJldHVybiB0cnVlOwogICAgIH0pOworCisgICAgaWYgKGVycm9yKSB7CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICB9CisKKyAgLy8gMi4gTG9vayBmb3IgaXQgaW4gdGhlIGxvY2FsIGdyb3VwCisgIGlmIChzID09IG51bGxwdHIpIHsKKyAgICBib29sIGVycm9yID0gZmFsc2U7CisgICAgbG9jYWxfZ3JvdXAudmlzaXQoWyZdKHNvaW5mbyogbG9jYWxfc2kpIHsKKyAgICAgIGlmIChsb2NhbF9zaSA9PSBzaV9mcm9tICYmIHNpX2Zyb20tPmhhc19EVF9TWU1CT0xJQykgeworICAgICAgICAvLyB3ZSBhbHJlYWR5IGRpZCB0aGlzIC0gc2tpcAorICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgIH0KKworICAgICAgREVCVUcoIiVzOiBsb29raW5nIHVwICVzIGluICVzIChmcm9tIGxvY2FsIGdyb3VwKSIsCisgICAgICAgICAgc2lfZnJvbS0+Z2V0X3NvbmFtZSgpLCBuYW1lLCBsb2NhbF9zaS0+Z2V0X3NvbmFtZSgpKTsKKyAgICAgIGlmICghbG9jYWxfc2ktPmZpbmRfc3ltYm9sX2J5X25hbWUoc3ltYm9sX25hbWUsIHZpLCAmcykpIHsKKyAgICAgICAgZXJyb3IgPSB0cnVlOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisKKyAgICAgIGlmIChzICE9IG51bGxwdHIpIHsKKyAgICAgICAgKnNpX2ZvdW5kX2luID0gbG9jYWxfc2k7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgIH0KKworICAgICAgcmV0dXJuIHRydWU7CisgICAgfSk7CisKKyAgICBpZiAoZXJyb3IpIHsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CiAgIH0KIAogICBpZiAocyAhPSBudWxscHRyKSB7CiAgICAgVFJBQ0VfVFlQRShMT09LVVAsICJzaSAlcyBzeW0gJXMgcy0+c3RfdmFsdWUgPSAlcCwgIgogICAgICAgICAgICAgICAgImZvdW5kIGluICVzLCBiYXNlID0gJXAsIGxvYWQgYmlhcyA9ICVwIiwKLSAgICAgICAgICAgICAgIHNpLT5uYW1lLCBuYW1lLCByZWludGVycHJldF9jYXN0PHZvaWQqPihzLT5zdF92YWx1ZSksCi0gICAgICAgICAgICAgICAoKmxzaSktPm5hbWUsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KCgqbHNpKS0+YmFzZSksCi0gICAgICAgICAgICAgICByZWludGVycHJldF9jYXN0PHZvaWQqPigoKmxzaSktPmxvYWRfYmlhcykpOworICAgICAgICAgICAgICAgc2lfZnJvbS0+Z2V0X3NvbmFtZSgpLCBuYW1lLCByZWludGVycHJldF9jYXN0PHZvaWQqPihzLT5zdF92YWx1ZSksCisgICAgICAgICAgICAgICAoKnNpX2ZvdW5kX2luKS0+Z2V0X3NvbmFtZSgpLCByZWludGVycHJldF9jYXN0PHZvaWQqPigoKnNpX2ZvdW5kX2luKS0+YmFzZSksCisgICAgICAgICAgICAgICByZWludGVycHJldF9jYXN0PHZvaWQqPigoKnNpX2ZvdW5kX2luKS0+bG9hZF9iaWFzKSk7CiAgIH0KIAotICByZXR1cm4gczsKKyAgKnN5bWJvbCA9IHM7CisgIHJldHVybiB0cnVlOwogfQogCitjbGFzcyBQcm90ZWN0ZWREYXRhR3VhcmQgeworIHB1YmxpYzoKKyAgUHJvdGVjdGVkRGF0YUd1YXJkKCkgeworICAgIGlmIChyZWZfY291bnRfKysgPT0gMCkgeworICAgICAgcHJvdGVjdF9kYXRhKFBST1RfUkVBRCB8IFBST1RfV1JJVEUpOworICAgIH0KKyAgfQorCisgIH5Qcm90ZWN0ZWREYXRhR3VhcmQoKSB7CisgICAgaWYgKHJlZl9jb3VudF8gPT0gMCkgeyAvLyBvdmVyZmxvdworICAgICAgX19saWJjX2ZhdGFsKCJUb28gbWFueSBuZXN0ZWQgY2FsbHMgdG8gZGxvcGVuKCkiKTsKKyAgICB9CisKKyAgICBpZiAoLS1yZWZfY291bnRfID09IDApIHsKKyAgICAgIHByb3RlY3RfZGF0YShQUk9UX1JFQUQpOworICAgIH0KKyAgfQorIHByaXZhdGU6CisgIHZvaWQgcHJvdGVjdF9kYXRhKGludCBwcm90ZWN0aW9uKSB7CisgICAgZ19zb2luZm9fYWxsb2NhdG9yLnByb3RlY3RfYWxsKHByb3RlY3Rpb24pOworICAgIGdfc29pbmZvX2xpbmtzX2FsbG9jYXRvci5wcm90ZWN0X2FsbChwcm90ZWN0aW9uKTsKKyAgfQorCisgIHN0YXRpYyBzaXplX3QgcmVmX2NvdW50XzsKK307CisKK3NpemVfdCBQcm90ZWN0ZWREYXRhR3VhcmQ6OnJlZl9jb3VudF8gPSAwOworCiAvLyBFYWNoIHNpemUgaGFzIGl0J3Mgb3duIGFsbG9jYXRvci4KIHRlbXBsYXRlPHNpemVfdCBzaXplPgogY2xhc3MgU2l6ZUJhc2VkQWxsb2NhdG9yIHsKQEAgLTY0MSwzMyArODgxLDY0IEBACiB0eXBlZGVmIGxpbmtlZF9saXN0X3Q8TG9hZFRhc2s+IExvYWRUYXNrTGlzdDsKIAogCi0vLyBUaGlzIGlzIHVzZWQgYnkgZGxzeW0oMykuICBJdCBwZXJmb3JtcyBzeW1ib2wgbG9va3VwIG9ubHkgd2l0aGluIHRoZQotLy8gc3BlY2lmaWVkIHNvaW5mbyBvYmplY3QgYW5kIGl0cyBkZXBlbmRlbmNpZXMgaW4gYnJlYWR0aCBmaXJzdCBvcmRlci4KLUVsZlcoU3ltKSogZGxzeW1faGFuZGxlX2xvb2t1cChzb2luZm8qIHNpLCBzb2luZm8qKiBmb3VuZCwgY29uc3QgY2hhciogbmFtZSkgeworLy8gVGhpcyBmdW5jdGlvbiB3YWxrcyBkb3duIHRoZSB0cmVlIG9mIHNvaW5mbyBkZXBlbmRlbmNpZXMKKy8vIGluIGJyZWFkdGgtZmlyc3Qgb3JkZXIgYW5kCisvLyAgICogY2FsbHMgYWN0aW9uKHNvaW5mbyogc2kpIGZvciBlYWNoIG5vZGUsIGFuZAorLy8gICAqIHRlcm1pbmF0ZXMgd2FsayBpZiBhY3Rpb24gcmV0dXJucyBmYWxzZS4KKy8vCisvLyB3YWxrX2RlcGVuZGVuY2llc190cmVlIHJldHVybnMgZmFsc2UgaWYgd2FsayB3YXMgdGVybWluYXRlZAorLy8gYnkgdGhlIGFjdGlvbiBhbmQgdHJ1ZSBvdGhlcndpc2UuCit0ZW1wbGF0ZTx0eXBlbmFtZSBGPgorc3RhdGljIGJvb2wgd2Fsa19kZXBlbmRlbmNpZXNfdHJlZShzb2luZm8qIHJvb3Rfc29pbmZvc1tdLCBzaXplX3Qgcm9vdF9zb2luZm9zX3NpemUsIEYgYWN0aW9uKSB7CiAgIFNvaW5mb0xpbmtlZExpc3QgdmlzaXRfbGlzdDsKICAgU29pbmZvTGlua2VkTGlzdCB2aXNpdGVkOwogCi0gIHZpc2l0X2xpc3QucHVzaF9iYWNrKHNpKTsKLSAgc29pbmZvKiBjdXJyZW50X3NvaW5mbzsKLSAgd2hpbGUgKChjdXJyZW50X3NvaW5mbyA9IHZpc2l0X2xpc3QucG9wX2Zyb250KCkpICE9IG51bGxwdHIpIHsKLSAgICBpZiAodmlzaXRlZC5jb250YWlucyhjdXJyZW50X3NvaW5mbykpIHsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCByb290X3NvaW5mb3Nfc2l6ZTsgKytpKSB7CisgICAgdmlzaXRfbGlzdC5wdXNoX2JhY2socm9vdF9zb2luZm9zW2ldKTsKKyAgfQorCisgIHNvaW5mbyogc2k7CisgIHdoaWxlICgoc2kgPSB2aXNpdF9saXN0LnBvcF9mcm9udCgpKSAhPSBudWxscHRyKSB7CisgICAgaWYgKHZpc2l0ZWQuY29udGFpbnMoc2kpKSB7CiAgICAgICBjb250aW51ZTsKICAgICB9CiAKLSAgICBFbGZXKFN5bSkqIHJlc3VsdCA9IHNvaW5mb19lbGZfbG9va3VwKGN1cnJlbnRfc29pbmZvLCBlbGZoYXNoKG5hbWUpLCBuYW1lKTsKLQotICAgIGlmIChyZXN1bHQgIT0gbnVsbHB0cikgewotICAgICAgKmZvdW5kID0gY3VycmVudF9zb2luZm87Ci0gICAgICByZXR1cm4gcmVzdWx0OworICAgIGlmICghYWN0aW9uKHNpKSkgeworICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KLSAgICB2aXNpdGVkLnB1c2hfYmFjayhjdXJyZW50X3NvaW5mbyk7CiAKLSAgICBjdXJyZW50X3NvaW5mby0+Z2V0X2NoaWxkcmVuKCkuZm9yX2VhY2goWyZdKHNvaW5mbyogY2hpbGQpIHsKKyAgICB2aXNpdGVkLnB1c2hfYmFjayhzaSk7CisKKyAgICBzaS0+Z2V0X2NoaWxkcmVuKCkuZm9yX2VhY2goWyZdKHNvaW5mbyogY2hpbGQpIHsKICAgICAgIHZpc2l0X2xpc3QucHVzaF9iYWNrKGNoaWxkKTsKICAgICB9KTsKICAgfQogCi0gIHJldHVybiBudWxscHRyOworICByZXR1cm4gdHJ1ZTsKK30KKworCisvLyBUaGlzIGlzIHVzZWQgYnkgZGxzeW0oMykuICBJdCBwZXJmb3JtcyBzeW1ib2wgbG9va3VwIG9ubHkgd2l0aGluIHRoZQorLy8gc3BlY2lmaWVkIHNvaW5mbyBvYmplY3QgYW5kIGl0cyBkZXBlbmRlbmNpZXMgaW4gYnJlYWR0aCBmaXJzdCBvcmRlci4KK2NvbnN0IEVsZlcoU3ltKSogZGxzeW1faGFuZGxlX2xvb2t1cChzb2luZm8qIHNpLCBzb2luZm8qKiBmb3VuZCwgY29uc3QgY2hhciogbmFtZSkgeworICBjb25zdCBFbGZXKFN5bSkqIHJlc3VsdCA9IG51bGxwdHI7CisgIFN5bWJvbE5hbWUgc3ltYm9sX25hbWUobmFtZSk7CisKKyAgd2Fsa19kZXBlbmRlbmNpZXNfdHJlZSgmc2ksIDEsIFsmXShzb2luZm8qIGN1cnJlbnRfc29pbmZvKSB7CisgICAgaWYgKCFjdXJyZW50X3NvaW5mby0+ZmluZF9zeW1ib2xfYnlfbmFtZShzeW1ib2xfbmFtZSwgbnVsbHB0ciwgJnJlc3VsdCkpIHsKKyAgICAgIHJlc3VsdCA9IG51bGxwdHI7CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgaWYgKHJlc3VsdCAhPSBudWxscHRyKSB7CisgICAgICAqZm91bmQgPSBjdXJyZW50X3NvaW5mbzsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKKyAgfSk7CisKKyAgcmV0dXJuIHJlc3VsdDsKIH0KIAogLyogVGhpcyBpcyB1c2VkIGJ5IGRsc3ltKDMpIHRvIHBlcmZvcm1zIGEgZ2xvYmFsIHN5bWJvbCBsb29rdXAuIElmIHRoZQpAQCAtNjc1LDIyICs5NDYsNjUgQEAKICAgIGJlZ2lubmluZyBvZiB0aGUgZ2xvYmFsIHNvbGlzdC4gT3RoZXJ3aXNlIHRoZSBzZWFyY2ggc3RhcnRzIGF0IHRoZQogICAgc3BlY2lmaWVkIHNvaW5mbyAoZm9yIFJUTERfTkVYVCkuCiAgKi8KLUVsZlcoU3ltKSogZGxzeW1fbGluZWFyX2xvb2t1cChjb25zdCBjaGFyKiBuYW1lLCBzb2luZm8qKiBmb3VuZCwgc29pbmZvKiBzdGFydCkgewotICB1bnNpZ25lZCBlbGZfaGFzaCA9IGVsZmhhc2gobmFtZSk7Citjb25zdCBFbGZXKFN5bSkqIGRsc3ltX2xpbmVhcl9sb29rdXAoY29uc3QgY2hhciogbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2luZm8qKiBmb3VuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2luZm8qIGNhbGxlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkKiBoYW5kbGUpIHsKKyAgU3ltYm9sTmFtZSBzeW1ib2xfbmFtZShuYW1lKTsKIAotICBpZiAoc3RhcnQgPT0gbnVsbHB0cikgewotICAgIHN0YXJ0ID0gc29saXN0OworICBzb2luZm8qIHN0YXJ0ID0gc29saXN0OworCisgIGlmIChoYW5kbGUgPT0gUlRMRF9ORVhUKSB7CisgICAgaWYgKGNhbGxlciA9PSBudWxscHRyIHx8IGNhbGxlci0+bmV4dCA9PSBudWxscHRyKSB7CisgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9IGVsc2UgeworICAgICAgc3RhcnQgPSBjYWxsZXItPm5leHQ7CisgICAgfQogICB9CiAKLSAgRWxmVyhTeW0pKiBzID0gbnVsbHB0cjsKLSAgZm9yIChzb2luZm8qIHNpID0gc3RhcnQ7IChzID09IG51bGxwdHIpICYmIChzaSAhPSBudWxscHRyKTsgc2kgPSBzaS0+bmV4dCkgewotICAgIHMgPSBzb2luZm9fZWxmX2xvb2t1cChzaSwgZWxmX2hhc2gsIG5hbWUpOworICBjb25zdCBFbGZXKFN5bSkqIHMgPSBudWxscHRyOworICBmb3IgKHNvaW5mbyogc2kgPSBzdGFydDsgc2kgIT0gbnVsbHB0cjsgc2kgPSBzaS0+bmV4dCkgeworICAgIGlmICgoc2ktPmdldF9ydGxkX2ZsYWdzKCkgJiBSVExEX0dMT0JBTCkgPT0gMCkgeworICAgICAgY29udGludWU7CisgICAgfQorCisgICAgaWYgKCFzaS0+ZmluZF9zeW1ib2xfYnlfbmFtZShzeW1ib2xfbmFtZSwgbnVsbHB0ciwgJnMpKSB7CisgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9CisKICAgICBpZiAocyAhPSBudWxscHRyKSB7CiAgICAgICAqZm91bmQgPSBzaTsKICAgICAgIGJyZWFrOwogICAgIH0KICAgfQogCisgIC8vIElmIG5vdCBmb3VuZCAtIGxvb2sgaW50byBsb2NhbF9ncm91cCB1bmxlc3MKKyAgLy8gY2FsbGVyIGlzIHBhcnQgb2YgdGhlIGdsb2JhbCBncm91cCBpbiB3aGljaAorICAvLyBjYXNlIHdlIGFscmVhZHkgZGlkIGl0LgorICBpZiAocyA9PSBudWxscHRyICYmIGNhbGxlciAhPSBudWxscHRyICYmCisgICAgICAoY2FsbGVyLT5nZXRfcnRsZF9mbGFncygpICYgUlRMRF9HTE9CQUwpID09IDApIHsKKyAgICBzb2luZm8qIGxvY2FsX2dyb3VwX3Jvb3QgPSBjYWxsZXItPmdldF9sb2NhbF9ncm91cF9yb290KCk7CisKKyAgICBpZiAoaGFuZGxlID09IFJUTERfREVGQVVMVCkgeworICAgICAgc3RhcnQgPSBsb2NhbF9ncm91cF9yb290OworICAgIH0KKworICAgIGZvciAoc29pbmZvKiBzaSA9IHN0YXJ0OyBzaSAhPSBudWxscHRyOyBzaSA9IHNpLT5uZXh0KSB7CisgICAgICBpZiAoc2ktPmdldF9sb2NhbF9ncm91cF9yb290KCkgIT0gbG9jYWxfZ3JvdXBfcm9vdCkgeworICAgICAgICBicmVhazsKKyAgICAgIH0KKworICAgICAgaWYgKCFzaS0+ZmluZF9zeW1ib2xfYnlfbmFtZShzeW1ib2xfbmFtZSwgbnVsbHB0ciwgJnMpKSB7CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgfQorCisgICAgICBpZiAocyAhPSBudWxscHRyKSB7CisgICAgICAgICpmb3VuZCA9IHNpOworICAgICAgICBicmVhazsKKyAgICAgIH0KKyAgICB9CisgIH0KKwogICBpZiAocyAhPSBudWxscHRyKSB7CiAgICAgVFJBQ0VfVFlQRShMT09LVVAsICIlcyBzLT5zdF92YWx1ZSA9ICVwLCBmb3VuZC0+YmFzZSA9ICVwIiwKICAgICAgICAgICAgICAgIG5hbWUsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHMtPnN0X3ZhbHVlKSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oKCpmb3VuZCktPmJhc2UpKTsKQEAgLTcwOSwxNiArMTAyMyw0NSBAQAogICByZXR1cm4gbnVsbHB0cjsKIH0KIAotRWxmVyhTeW0pKiBkbGFkZHJfZmluZF9zeW1ib2woc29pbmZvKiBzaSwgY29uc3Qgdm9pZCogYWRkcikgewotICBFbGZXKEFkZHIpIHNvYWRkciA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKT4oYWRkcikgLSBzaS0+YmFzZTsKK0VsZlcoU3ltKSogc29pbmZvOjpmaW5kX3N5bWJvbF9ieV9hZGRyZXNzKGNvbnN0IHZvaWQqIGFkZHIpIHsKKyAgcmV0dXJuIGlzX2dudV9oYXNoKCkgPyBnbnVfYWRkcl9sb29rdXAoYWRkcikgOiBlbGZfYWRkcl9sb29rdXAoYWRkcik7Cit9CisKK3N0YXRpYyBib29sIHN5bWJvbF9tYXRjaGVzX3NvYWRkcihjb25zdCBFbGZXKFN5bSkqIHN5bSwgRWxmVyhBZGRyKSBzb2FkZHIpIHsKKyAgcmV0dXJuIHN5bS0+c3Rfc2huZHggIT0gU0hOX1VOREVGICYmCisgICAgICBzb2FkZHIgPj0gc3ltLT5zdF92YWx1ZSAmJgorICAgICAgc29hZGRyIDwgc3ltLT5zdF92YWx1ZSArIHN5bS0+c3Rfc2l6ZTsKK30KKworRWxmVyhTeW0pKiBzb2luZm86OmdudV9hZGRyX2xvb2t1cChjb25zdCB2b2lkKiBhZGRyKSB7CisgIEVsZlcoQWRkcikgc29hZGRyID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpPihhZGRyKSAtIGxvYWRfYmlhczsKKworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGdudV9uYnVja2V0XzsgKytpKSB7CisgICAgdWludDMyX3QgbiA9IGdudV9idWNrZXRfW2ldOworCisgICAgaWYgKG4gPT0gMCkgeworICAgICAgY29udGludWU7CisgICAgfQorCisgICAgZG8geworICAgICAgRWxmVyhTeW0pKiBzeW0gPSBzeW10YWJfICsgbjsKKyAgICAgIGlmIChzeW1ib2xfbWF0Y2hlc19zb2FkZHIoc3ltLCBzb2FkZHIpKSB7CisgICAgICAgIHJldHVybiBzeW07CisgICAgICB9CisgICAgfSB3aGlsZSAoKGdudV9jaGFpbl9bbisrXSAmIDEpID09IDApOworICB9CisKKyAgcmV0dXJuIG51bGxwdHI7Cit9CisKK0VsZlcoU3ltKSogc29pbmZvOjplbGZfYWRkcl9sb29rdXAoY29uc3Qgdm9pZCogYWRkcikgeworICBFbGZXKEFkZHIpIHNvYWRkciA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKT4oYWRkcikgLSBsb2FkX2JpYXM7CiAKICAgLy8gU2VhcmNoIHRoZSBsaWJyYXJ5J3Mgc3ltYm9sIHRhYmxlIGZvciBhbnkgZGVmaW5lZCBzeW1ib2wgd2hpY2gKICAgLy8gY29udGFpbnMgdGhpcyBhZGRyZXNzLgotICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpLT5uY2hhaW47ICsraSkgewotICAgIEVsZlcoU3ltKSogc3ltID0gJnNpLT5zeW10YWJbaV07Ci0gICAgaWYgKHN5bS0+c3Rfc2huZHggIT0gU0hOX1VOREVGICYmCi0gICAgICAgIHNvYWRkciA+PSBzeW0tPnN0X3ZhbHVlICYmCi0gICAgICAgIHNvYWRkciA8IHN5bS0+c3RfdmFsdWUgKyBzeW0tPnN0X3NpemUpIHsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBuY2hhaW5fOyArK2kpIHsKKyAgICBFbGZXKFN5bSkqIHN5bSA9IHN5bXRhYl8gKyBpOworICAgIGlmIChzeW1ib2xfbWF0Y2hlc19zb2FkZHIoc3ltLCBzb2FkZHIpKSB7CiAgICAgICByZXR1cm4gc3ltOwogICAgIH0KICAgfQpAQCAtNzI2LDQxICsxMDY5LDE0MSBAQAogICByZXR1cm4gbnVsbHB0cjsKIH0KIAotc3RhdGljIGludCBvcGVuX2xpYnJhcnlfb25fcGF0aChjb25zdCBjaGFyKiBuYW1lLCBjb25zdCBjaGFyKiBjb25zdCBwYXRoc1tdKSB7CitzdGF0aWMgaW50IG9wZW5fbGlicmFyeV9pbl96aXBmaWxlKGNvbnN0IGNoYXIqIGNvbnN0IHBhdGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZjY0X3QqIGZpbGVfb2Zmc2V0KSB7CisgIFRSQUNFKCJUcnlpbmcgemlwIGZpbGUgb3BlbiBmcm9tIHBhdGggJyVzJyIsIHBhdGgpOworCisgIC8vIFRyZWF0IGFuICchJyBjaGFyYWN0ZXIgaW5zaWRlIGEgcGF0aCBhcyB0aGUgc2VwYXJhdG9yIGJldHdlZW4gdGhlIG5hbWUKKyAgLy8gb2YgdGhlIHppcCBmaWxlIG9uIGRpc2sgYW5kIHRoZSBzdWJkaXJlY3RvcnkgdG8gc2VhcmNoIHdpdGhpbiBpdC4KKyAgLy8gRm9yIGV4YW1wbGUsIGlmIHBhdGggaXMgImZvby56aXAhYmFyL2Jhcy94LnNvIiwgdGhlbiB3ZSBzZWFyY2ggZm9yCisgIC8vICJiYXIvYmFzL3guc28iIHdpdGhpbiAiZm9vLnppcCIuCisgIGNvbnN0IGNoYXIqIHNlcGFyYXRvciA9IHN0cmNocihwYXRoLCAnIScpOworICBpZiAoc2VwYXJhdG9yID09IG51bGxwdHIpIHsKKyAgICByZXR1cm4gLTE7CisgIH0KKwogICBjaGFyIGJ1Zls1MTJdOwotICBmb3IgKHNpemVfdCBpID0gMDsgcGF0aHNbaV0gIT0gbnVsbHB0cjsgKytpKSB7Ci0gICAgaW50IG4gPSBfX2xpYmNfZm9ybWF0X2J1ZmZlcihidWYsIHNpemVvZihidWYpLCAiJXMvJXMiLCBwYXRoc1tpXSwgbmFtZSk7Ci0gICAgaWYgKG4gPCAwIHx8IG4gPj0gc3RhdGljX2Nhc3Q8aW50PihzaXplb2YoYnVmKSkpIHsKLSAgICAgIFBSSU5UKCJXYXJuaW5nOiBpZ25vcmluZyB2ZXJ5IGxvbmcgbGlicmFyeSBwYXRoOiAlcy8lcyIsIHBhdGhzW2ldLCBuYW1lKTsKKyAgaWYgKHN0cmxjcHkoYnVmLCBwYXRoLCBzaXplb2YoYnVmKSkgPj0gc2l6ZW9mKGJ1ZikpIHsKKyAgICBQUklOVCgiV2FybmluZzogaWdub3JpbmcgdmVyeSBsb25nIGxpYnJhcnkgcGF0aDogJXMiLCBwYXRoKTsKKyAgICByZXR1cm4gLTE7CisgIH0KKworICBidWZbc2VwYXJhdG9yIC0gcGF0aF0gPSAnXDAnOworCisgIGNvbnN0IGNoYXIqIHppcF9wYXRoID0gYnVmOworICBjb25zdCBjaGFyKiBmaWxlX3BhdGggPSAmYnVmW3NlcGFyYXRvciAtIHBhdGggKyAxXTsKKyAgaW50IGZkID0gVEVNUF9GQUlMVVJFX1JFVFJZKG9wZW4oemlwX3BhdGgsIE9fUkRPTkxZIHwgT19DTE9FWEVDKSk7CisgIGlmIChmZCA9PSAtMSkgeworICAgIHJldHVybiAtMTsKKyAgfQorCisgIFppcEFyY2hpdmVIYW5kbGUgaGFuZGxlOworICBpZiAoT3BlbkFyY2hpdmVGZChmZCwgIiIsICZoYW5kbGUsIGZhbHNlKSAhPSAwKSB7CisgICAgLy8gaW52YWxpZCB6aXAtZmlsZSAoPykKKyAgICBjbG9zZShmZCk7CisgICAgcmV0dXJuIC0xOworICB9CisKKyAgYXV0byBhcmNoaXZlX2d1YXJkID0gbWFrZV9zY29wZV9ndWFyZChbJl0oKSB7CisgICAgQ2xvc2VBcmNoaXZlKGhhbmRsZSk7CisgIH0pOworCisgIFppcEVudHJ5IGVudHJ5OworCisgIGlmIChGaW5kRW50cnkoaGFuZGxlLCBaaXBFbnRyeU5hbWUoZmlsZV9wYXRoKSwgJmVudHJ5KSAhPSAwKSB7CisgICAgLy8gRW50cnkgd2FzIG5vdCBmb3VuZC4KKyAgICBjbG9zZShmZCk7CisgICAgcmV0dXJuIC0xOworICB9CisKKyAgLy8gQ2hlY2sgaWYgaXQgaXMgcHJvcGVybHkgc3RvcmVkCisgIGlmIChlbnRyeS5tZXRob2QgIT0ga0NvbXByZXNzU3RvcmVkIHx8IChlbnRyeS5vZmZzZXQgJSBQQUdFX1NJWkUpICE9IDApIHsKKyAgICBjbG9zZShmZCk7CisgICAgcmV0dXJuIC0xOworICB9CisKKyAgKmZpbGVfb2Zmc2V0ID0gZW50cnkub2Zmc2V0OworICByZXR1cm4gZmQ7Cit9CisKK3N0YXRpYyBib29sIGZvcm1hdF9wYXRoKGNoYXIqIGJ1Ziwgc2l6ZV90IGJ1Zl9zaXplLCBjb25zdCBjaGFyKiBwYXRoLCBjb25zdCBjaGFyKiBuYW1lKSB7CisgIGludCBuID0gX19saWJjX2Zvcm1hdF9idWZmZXIoYnVmLCBidWZfc2l6ZSwgIiVzLyVzIiwgcGF0aCwgbmFtZSk7CisgIGlmIChuIDwgMCB8fCBuID49IHN0YXRpY19jYXN0PGludD4oYnVmX3NpemUpKSB7CisgICAgUFJJTlQoIldhcm5pbmc6IGlnbm9yaW5nIHZlcnkgbG9uZyBsaWJyYXJ5IHBhdGg6ICVzLyVzIiwgcGF0aCwgbmFtZSk7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisKKyAgcmV0dXJuIHRydWU7Cit9CisKK3N0YXRpYyBpbnQgb3Blbl9saWJyYXJ5X29uX2RlZmF1bHRfcGF0aChjb25zdCBjaGFyKiBuYW1lLCBvZmY2NF90KiBmaWxlX29mZnNldCkgeworICBmb3IgKHNpemVfdCBpID0gMDsga0RlZmF1bHRMZFBhdGhzW2ldICE9IG51bGxwdHI7ICsraSkgeworICAgIGNoYXIgYnVmWzUxMl07CisgICAgaWYgKCFmb3JtYXRfcGF0aChidWYsIHNpemVvZihidWYpLCBrRGVmYXVsdExkUGF0aHNbaV0sIG5hbWUpKSB7CiAgICAgICBjb250aW51ZTsKICAgICB9CisKICAgICBpbnQgZmQgPSBURU1QX0ZBSUxVUkVfUkVUUlkob3BlbihidWYsIE9fUkRPTkxZIHwgT19DTE9FWEVDKSk7CiAgICAgaWYgKGZkICE9IC0xKSB7CisgICAgICAqZmlsZV9vZmZzZXQgPSAwOworICAgICAgcmV0dXJuIGZkOworICAgIH0KKyAgfQorCisgIHJldHVybiAtMTsKK30KKworc3RhdGljIGludCBvcGVuX2xpYnJhcnlfb25fbGRfbGlicmFyeV9wYXRoKGNvbnN0IGNoYXIqIG5hbWUsIG9mZjY0X3QqIGZpbGVfb2Zmc2V0KSB7CisgIGZvciAoY29uc3QgYXV0byYgcGF0aF9zdHIgOiBnX2xkX2xpYnJhcnlfcGF0aHMpIHsKKyAgICBjaGFyIGJ1Zls1MTJdOworICAgIGNvbnN0IGNoYXIqIGNvbnN0IHBhdGggPSBwYXRoX3N0ci5jX3N0cigpOworICAgIGlmICghZm9ybWF0X3BhdGgoYnVmLCBzaXplb2YoYnVmKSwgcGF0aCwgbmFtZSkpIHsKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKworICAgIGludCBmZCA9IC0xOworICAgIGlmIChzdHJjaHIoYnVmLCAnIScpICE9IG51bGxwdHIpIHsKKyAgICAgIGZkID0gb3Blbl9saWJyYXJ5X2luX3ppcGZpbGUoYnVmLCBmaWxlX29mZnNldCk7CisgICAgfQorCisgICAgaWYgKGZkID09IC0xKSB7CisgICAgICBmZCA9IFRFTVBfRkFJTFVSRV9SRVRSWShvcGVuKGJ1ZiwgT19SRE9OTFkgfCBPX0NMT0VYRUMpKTsKKyAgICAgIGlmIChmZCAhPSAtMSkgeworICAgICAgICAqZmlsZV9vZmZzZXQgPSAwOworICAgICAgfQorICAgIH0KKworICAgIGlmIChmZCAhPSAtMSkgewogICAgICAgcmV0dXJuIGZkOwogICAgIH0KICAgfQorCiAgIHJldHVybiAtMTsKIH0KIAotc3RhdGljIGludCBvcGVuX2xpYnJhcnkoY29uc3QgY2hhciogbmFtZSkgeworc3RhdGljIGludCBvcGVuX2xpYnJhcnkoY29uc3QgY2hhciogbmFtZSwgb2ZmNjRfdCogZmlsZV9vZmZzZXQpIHsKICAgVFJBQ0UoIlsgb3BlbmluZyAlcyBdIiwgbmFtZSk7CiAKICAgLy8gSWYgdGhlIG5hbWUgY29udGFpbnMgYSBzbGFzaCwgd2Ugc2hvdWxkIGF0dGVtcHQgdG8gb3BlbiBpdCBkaXJlY3RseSBhbmQgbm90IHNlYXJjaCB0aGUgcGF0aHMuCiAgIGlmIChzdHJjaHIobmFtZSwgJy8nKSAhPSBudWxscHRyKSB7CisgICAgaWYgKHN0cmNocihuYW1lLCAnIScpICE9IG51bGxwdHIpIHsKKyAgICAgIGludCBmZCA9IG9wZW5fbGlicmFyeV9pbl96aXBmaWxlKG5hbWUsIGZpbGVfb2Zmc2V0KTsKKyAgICAgIGlmIChmZCAhPSAtMSkgeworICAgICAgICByZXR1cm4gZmQ7CisgICAgICB9CisgICAgfQorCiAgICAgaW50IGZkID0gVEVNUF9GQUlMVVJFX1JFVFJZKG9wZW4obmFtZSwgT19SRE9OTFkgfCBPX0NMT0VYRUMpKTsKICAgICBpZiAoZmQgIT0gLTEpIHsKLSAgICAgIHJldHVybiBmZDsKKyAgICAgICpmaWxlX29mZnNldCA9IDA7CiAgICAgfQotICAgIC8vIC4uLmJ1dCBudmlkaWEgYmluYXJ5IGJsb2JzIChhdCBsZWFzdCkgcmVseSBvbiB0aGlzIGJlaGF2aW9yLCBzbyBmYWxsIHRocm91Z2ggZm9yIG5vdy4KLSNpZiBkZWZpbmVkKF9fTFA2NF9fKQotICAgIHJldHVybiAtMTsKLSNlbmRpZgorICAgIHJldHVybiBmZDsKICAgfQogCiAgIC8vIE90aGVyd2lzZSB3ZSB0cnkgTERfTElCUkFSWV9QQVRIIGZpcnN0LCBhbmQgZmFsbCBiYWNrIHRvIHRoZSBidWlsdC1pbiB3ZWxsIGtub3duIHBhdGhzLgotICBpbnQgZmQgPSBvcGVuX2xpYnJhcnlfb25fcGF0aChuYW1lLCBnX2xkX2xpYnJhcnlfcGF0aHMpOworICBpbnQgZmQgPSBvcGVuX2xpYnJhcnlfb25fbGRfbGlicmFyeV9wYXRoKG5hbWUsIGZpbGVfb2Zmc2V0KTsKICAgaWYgKGZkID09IC0xKSB7Ci0gICAgZmQgPSBvcGVuX2xpYnJhcnlfb25fcGF0aChuYW1lLCBrRGVmYXVsdExkUGF0aHMpOworICAgIGZkID0gb3Blbl9saWJyYXJ5X29uX2RlZmF1bHRfcGF0aChuYW1lLCBmaWxlX29mZnNldCk7CiAgIH0KICAgcmV0dXJuIGZkOwogfQpAQCAtNzc0LDcgKzEyMTcsOSBAQAogICB9CiB9CiAKLXN0YXRpYyBzb2luZm8qIGxvYWRfbGlicmFyeShMb2FkVGFza0xpc3QmIGxvYWRfdGFza3MsIGNvbnN0IGNoYXIqIG5hbWUsIGludCBkbGZsYWdzLCBjb25zdCBhbmRyb2lkX2RsZXh0aW5mbyogZXh0aW5mbykgeworc3RhdGljIHNvaW5mbyogbG9hZF9saWJyYXJ5KExvYWRUYXNrTGlzdCYgbG9hZF90YXNrcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiBuYW1lLCBpbnQgcnRsZF9mbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBhbmRyb2lkX2RsZXh0aW5mbyogZXh0aW5mbykgewogICBpbnQgZmQgPSAtMTsKICAgb2ZmNjRfdCBmaWxlX29mZnNldCA9IDA7CiAgIFNjb3BlZEZkIGZpbGVfZ3VhcmQoLTEpOwpAQCAtNzg2LDcgKzEyMzEsNyBAQAogICAgIH0KICAgfSBlbHNlIHsKICAgICAvLyBPcGVuIHRoZSBmaWxlLgotICAgIGZkID0gb3Blbl9saWJyYXJ5KG5hbWUpOworICAgIGZkID0gb3Blbl9saWJyYXJ5KG5hbWUsICZmaWxlX29mZnNldCk7CiAgICAgaWYgKGZkID09IC0xKSB7CiAgICAgICBETF9FUlIoImxpYnJhcnkgXCIlc1wiIG5vdCBmb3VuZCIsIG5hbWUpOwogICAgICAgcmV0dXJuIG51bGxwdHI7CkBAIC03OTksMzggKzEyNDQsNTYgQEAKICAgICBETF9FUlIoImZpbGUgb2Zmc2V0IGZvciB0aGUgbGlicmFyeSBcIiVzXCIgaXMgbm90IHBhZ2UtYWxpZ25lZDogJSIgUFJJZDY0LCBuYW1lLCBmaWxlX29mZnNldCk7CiAgICAgcmV0dXJuIG51bGxwdHI7CiAgIH0KKyAgaWYgKGZpbGVfb2Zmc2V0IDwgMCkgeworICAgIERMX0VSUigiZmlsZSBvZmZzZXQgZm9yIHRoZSBsaWJyYXJ5IFwiJXNcIiBpcyBuZWdhdGl2ZTogJSIgUFJJZDY0LCBuYW1lLCBmaWxlX29mZnNldCk7CisgICAgcmV0dXJuIG51bGxwdHI7CisgIH0KIAogICBzdHJ1Y3Qgc3RhdCBmaWxlX3N0YXQ7CiAgIGlmIChURU1QX0ZBSUxVUkVfUkVUUlkoZnN0YXQoZmQsICZmaWxlX3N0YXQpKSAhPSAwKSB7CiAgICAgRExfRVJSKCJ1bmFibGUgdG8gc3RhdCBmaWxlIGZvciB0aGUgbGlicmFyeSBcIiVzXCI6ICVzIiwgbmFtZSwgc3RyZXJyb3IoZXJybm8pKTsKICAgICByZXR1cm4gbnVsbHB0cjsKICAgfQorICBpZiAoZmlsZV9vZmZzZXQgPj0gZmlsZV9zdGF0LnN0X3NpemUpIHsKKyAgICBETF9FUlIoImZpbGUgb2Zmc2V0IGZvciB0aGUgbGlicmFyeSBcIiVzXCIgPj0gZmlsZSBzaXplOiAlIiBQUklkNjQgIiA+PSAlIiBQUklkNjQsCisgICAgICAgIG5hbWUsIGZpbGVfb2Zmc2V0LCBmaWxlX3N0YXQuc3Rfc2l6ZSk7CisgICAgcmV0dXJuIG51bGxwdHI7CisgIH0KIAogICAvLyBDaGVjayBmb3Igc3ltbGluayBhbmQgb3RoZXIgc2l0dWF0aW9ucyB3aGVyZQotICAvLyBmaWxlIGNhbiBoYXZlIGRpZmZlcmVudCBuYW1lcy4KLSAgZm9yIChzb2luZm8qIHNpID0gc29saXN0OyBzaSAhPSBudWxscHRyOyBzaSA9IHNpLT5uZXh0KSB7Ci0gICAgaWYgKHNpLT5nZXRfc3RfZGV2KCkgIT0gMCAmJgotICAgICAgICBzaS0+Z2V0X3N0X2lubygpICE9IDAgJiYKLSAgICAgICAgc2ktPmdldF9zdF9kZXYoKSA9PSBmaWxlX3N0YXQuc3RfZGV2ICYmCi0gICAgICAgIHNpLT5nZXRfc3RfaW5vKCkgPT0gZmlsZV9zdGF0LnN0X2lubyAmJgotICAgICAgICBzaS0+Z2V0X2ZpbGVfb2Zmc2V0KCkgPT0gZmlsZV9vZmZzZXQpIHsKLSAgICAgIFRSQUNFKCJsaWJyYXJ5IFwiJXNcIiBpcyBhbHJlYWR5IGxvYWRlZCB1bmRlciBkaWZmZXJlbnQgbmFtZS9wYXRoIFwiJXNcIiAtIHdpbGwgcmV0dXJuIGV4aXN0aW5nIHNvaW5mbyIsIG5hbWUsIHNpLT5uYW1lKTsKLSAgICAgIHJldHVybiBzaTsKKyAgLy8gZmlsZSBjYW4gaGF2ZSBkaWZmZXJlbnQgbmFtZXMsIHVubGVzcyBBTkRST0lEX0RMRVhUX0ZPUkNFX0xPQUQgaXMgc2V0CisgIGlmIChleHRpbmZvID09IG51bGxwdHIgfHwgKGV4dGluZm8tPmZsYWdzICYgQU5EUk9JRF9ETEVYVF9GT1JDRV9MT0FEKSA9PSAwKSB7CisgICAgZm9yIChzb2luZm8qIHNpID0gc29saXN0OyBzaSAhPSBudWxscHRyOyBzaSA9IHNpLT5uZXh0KSB7CisgICAgICBpZiAoc2ktPmdldF9zdF9kZXYoKSAhPSAwICYmCisgICAgICAgICAgc2ktPmdldF9zdF9pbm8oKSAhPSAwICYmCisgICAgICAgICAgc2ktPmdldF9zdF9kZXYoKSA9PSBmaWxlX3N0YXQuc3RfZGV2ICYmCisgICAgICAgICAgc2ktPmdldF9zdF9pbm8oKSA9PSBmaWxlX3N0YXQuc3RfaW5vICYmCisgICAgICAgICAgc2ktPmdldF9maWxlX29mZnNldCgpID09IGZpbGVfb2Zmc2V0KSB7CisgICAgICAgIFRSQUNFKCJsaWJyYXJ5IFwiJXNcIiBpcyBhbHJlYWR5IGxvYWRlZCB1bmRlciBkaWZmZXJlbnQgbmFtZS9wYXRoIFwiJXNcIiAtICIKKyAgICAgICAgICAgICJ3aWxsIHJldHVybiBleGlzdGluZyBzb2luZm8iLCBuYW1lLCBzaS0+Z2V0X3JlYWxwYXRoKCkpOworICAgICAgICByZXR1cm4gc2k7CisgICAgICB9CiAgICAgfQogICB9CiAKLSAgaWYgKChkbGZsYWdzICYgUlRMRF9OT0xPQUQpICE9IDApIHsKKyAgaWYgKChydGxkX2ZsYWdzICYgUlRMRF9OT0xPQUQpICE9IDApIHsKICAgICBETF9FUlIoImxpYnJhcnkgXCIlc1wiIHdhc24ndCBsb2FkZWQgYW5kIFJUTERfTk9MT0FEIHByZXZlbnRlZCBpdCIsIG5hbWUpOwogICAgIHJldHVybiBudWxscHRyOwogICB9CiAKKyAgc3RkOjpzdHJpbmcgcmVhbHBhdGggPSBuYW1lOworICBpZiAoIXJlYWxwYXRoX2ZkKGZkLCAmcmVhbHBhdGgpKSB7CisgICAgUFJJTlQoImNhbm5vdCByZXNvbHZlIHJlYWxwYXRoIGZvciB0aGUgbGlicmFyeSBcIiVzXCI6ICVzIiwgbmFtZSwgc3RyZXJyb3IoZXJybm8pKTsKKyAgICByZWFscGF0aCA9IG5hbWU7CisgIH0KKwogICAvLyBSZWFkIHRoZSBFTEYgaGVhZGVyIGFuZCBsb2FkIHRoZSBzZWdtZW50cy4KLSAgRWxmUmVhZGVyIGVsZl9yZWFkZXIobmFtZSwgZmQsIGZpbGVfb2Zmc2V0KTsKKyAgRWxmUmVhZGVyIGVsZl9yZWFkZXIocmVhbHBhdGguY19zdHIoKSwgZmQsIGZpbGVfb2Zmc2V0KTsKICAgaWYgKCFlbGZfcmVhZGVyLkxvYWQoZXh0aW5mbykpIHsKICAgICByZXR1cm4gbnVsbHB0cjsKICAgfQogCi0gIHNvaW5mbyogc2kgPSBzb2luZm9fYWxsb2MoU0VBUkNIX05BTUUobmFtZSksICZmaWxlX3N0YXQsIGZpbGVfb2Zmc2V0KTsKKyAgc29pbmZvKiBzaSA9IHNvaW5mb19hbGxvYyhyZWFscGF0aC5jX3N0cigpLCAmZmlsZV9zdGF0LCBmaWxlX29mZnNldCwgcnRsZF9mbGFncyk7CiAgIGlmIChzaSA9PSBudWxscHRyKSB7CiAgICAgcmV0dXJuIG51bGxwdHI7CiAgIH0KQEAgLTg0MCw3ICsxMzAzLDcgQEAKICAgc2ktPnBobnVtID0gZWxmX3JlYWRlci5waGRyX2NvdW50KCk7CiAgIHNpLT5waGRyID0gZWxmX3JlYWRlci5sb2FkZWRfcGhkcigpOwogCi0gIGlmICghc2ktPlByZWxpbmtJbWFnZSgpKSB7CisgIGlmICghc2ktPnByZWxpbmtfaW1hZ2UoKSkgewogICAgIHNvaW5mb19mcmVlKHNpKTsKICAgICByZXR1cm4gbnVsbHB0cjsKICAgfQpAQCAtODUyLDI1ICsxMzE1LDMwIEBACiAgIHJldHVybiBzaTsKIH0KIAotc3RhdGljIHNvaW5mbyAqZmluZF9sb2FkZWRfbGlicmFyeV9ieV9uYW1lKGNvbnN0IGNoYXIqIG5hbWUpIHsKLSAgY29uc3QgY2hhciogc2VhcmNoX25hbWUgPSBTRUFSQ0hfTkFNRShuYW1lKTsKK3N0YXRpYyBzb2luZm8gKmZpbmRfbG9hZGVkX2xpYnJhcnlfYnlfc29uYW1lKGNvbnN0IGNoYXIqIG5hbWUpIHsKKyAgLy8gSWdub3JlIGZpbGVuYW1lIHdpdGggcGF0aC4KKyAgaWYgKHN0cmNocihuYW1lLCAnLycpICE9IG51bGxwdHIpIHsKKyAgICByZXR1cm4gbnVsbHB0cjsKKyAgfQorCiAgIGZvciAoc29pbmZvKiBzaSA9IHNvbGlzdDsgc2kgIT0gbnVsbHB0cjsgc2kgPSBzaS0+bmV4dCkgewotICAgIGlmICghc3RyY21wKHNlYXJjaF9uYW1lLCBzaS0+bmFtZSkpIHsKKyAgICBjb25zdCBjaGFyKiBzb25hbWUgPSBzaS0+Z2V0X3NvbmFtZSgpOworICAgIGlmIChzb25hbWUgIT0gbnVsbHB0ciAmJiAoc3RyY21wKG5hbWUsIHNvbmFtZSkgPT0gMCkpIHsKICAgICAgIHJldHVybiBzaTsKICAgICB9CiAgIH0KICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLXN0YXRpYyBzb2luZm8qIGZpbmRfbGlicmFyeV9pbnRlcm5hbChMb2FkVGFza0xpc3QmIGxvYWRfdGFza3MsIGNvbnN0IGNoYXIqIG5hbWUsIGludCBkbGZsYWdzLCBjb25zdCBhbmRyb2lkX2RsZXh0aW5mbyogZXh0aW5mbykgewotCi0gIHNvaW5mbyogc2kgPSBmaW5kX2xvYWRlZF9saWJyYXJ5X2J5X25hbWUobmFtZSk7CitzdGF0aWMgc29pbmZvKiBmaW5kX2xpYnJhcnlfaW50ZXJuYWwoTG9hZFRhc2tMaXN0JiBsb2FkX3Rhc2tzLCBjb25zdCBjaGFyKiBuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBydGxkX2ZsYWdzLCBjb25zdCBhbmRyb2lkX2RsZXh0aW5mbyogZXh0aW5mbykgeworICBzb2luZm8qIHNpID0gZmluZF9sb2FkZWRfbGlicmFyeV9ieV9zb25hbWUobmFtZSk7CiAKICAgLy8gTGlicmFyeSBtaWdodCBzdGlsbCBiZSBsb2FkZWQsIHRoZSBhY2N1cmF0ZSBkZXRlY3Rpb24KICAgLy8gb2YgdGhpcyBmYWN0IGlzIGRvbmUgYnkgbG9hZF9saWJyYXJ5LgogICBpZiAoc2kgPT0gbnVsbHB0cikgewotICAgIFRSQUNFKCJbICclcycgaGFzIG5vdCBiZWVuIGZvdW5kIGJ5IG5hbWUuICBUcnlpbmcgaGFyZGVyLi4uXSIsIG5hbWUpOwotICAgIHNpID0gbG9hZF9saWJyYXJ5KGxvYWRfdGFza3MsIG5hbWUsIGRsZmxhZ3MsIGV4dGluZm8pOworICAgIFRSQUNFKCJbICclcycgaGFzIG5vdCBiZWVuIGZvdW5kIGJ5IHNvbmFtZS4gIFRyeWluZyBoYXJkZXIuLi5dIiwgbmFtZSk7CisgICAgc2kgPSBsb2FkX2xpYnJhcnkobG9hZF90YXNrcywgbmFtZSwgcnRsZF9mbGFncywgZXh0aW5mbyk7CiAgIH0KIAogICByZXR1cm4gc2k7CkBAIC04NzgsMzQgKzEzNDYsNTIgQEAKIAogc3RhdGljIHZvaWQgc29pbmZvX3VubG9hZChzb2luZm8qIHNpKTsKIAotc3RhdGljIGJvb2wgaXNfcmVjdXJzaXZlKHNvaW5mbyogc2ksIHNvaW5mbyogcGFyZW50KSB7Ci0gIGlmIChwYXJlbnQgPT0gbnVsbHB0cikgewotICAgIHJldHVybiBmYWxzZTsKKy8vIFRPRE86IHRoaXMgaXMgc2xpZ2h0bHkgdW51c3VhbCB3YXkgdG8gY29uc3RydWN0CisvLyB0aGUgZ2xvYmFsIGdyb3VwIGZvciByZWxvY2F0aW9uLiBOb3QgZXZlcnkgUlRMRF9HTE9CQUwKKy8vIGxpYnJhcnkgaXMgaW5jbHVkZWQgaW4gdGhpcyBncm91cCBmb3IgYmFja3dhcmRzLWNvbXBhdGliaWxpdHkKKy8vIHJlYXNvbnMuCisvLworLy8gVGhpcyBncm91cCBjb25zaXN0cyBvZiB0aGUgbWFpbiBleGVjdXRhYmxlLCBMRF9QUkVMT0FEcworLy8gYW5kIGxpYnJhcmllcyB3aXRoIHRoZSBERl8xX0dMT0JBTCBmbGFnIHNldC4KK3N0YXRpYyBzb2luZm86OnNvaW5mb19saXN0X3QgbWFrZV9nbG9iYWxfZ3JvdXAoKSB7CisgIHNvaW5mbzo6c29pbmZvX2xpc3RfdCBnbG9iYWxfZ3JvdXA7CisgIGZvciAoc29pbmZvKiBzaSA9IHNvbWFpbjsgc2kgIT0gbnVsbHB0cjsgc2kgPSBzaS0+bmV4dCkgeworICAgIGlmICgoc2ktPmdldF9kdF9mbGFnc18xKCkgJiBERl8xX0dMT0JBTCkgIT0gMCkgeworICAgICAgZ2xvYmFsX2dyb3VwLnB1c2hfYmFjayhzaSk7CisgICAgfQogICB9CiAKLSAgaWYgKHNpID09IHBhcmVudCkgewotICAgIERMX0VSUigicmVjdXJzaXZlIGxpbmsgdG8gXCIlc1wiIiwgc2ktPm5hbWUpOwotICAgIHJldHVybiB0cnVlOwotICB9Ci0KLSAgcmV0dXJuICFwYXJlbnQtPmdldF9wYXJlbnRzKCkudmlzaXQoWyZdKHNvaW5mbyogZ3JhbmRwYXJlbnQpIHsKLSAgICByZXR1cm4gIWlzX3JlY3Vyc2l2ZShzaSwgZ3JhbmRwYXJlbnQpOwotICB9KTsKKyAgcmV0dXJuIGdsb2JhbF9ncm91cDsKIH0KIAotc3RhdGljIGJvb2wgZmluZF9saWJyYXJpZXMoY29uc3QgY2hhciogY29uc3QgbGlicmFyeV9uYW1lc1tdLCBzaXplX3QgbGlicmFyeV9uYW1lc19zaXplLCBzb2luZm8qIHNvaW5mb3NbXSwKLSAgICBzb2luZm8qIGxkX3ByZWxvYWRzW10sIHNpemVfdCBsZF9wcmVsb2Fkc19zaXplLCBpbnQgZGxmbGFncywgY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pIHsKK3N0YXRpYyBib29sIGZpbmRfbGlicmFyaWVzKHNvaW5mbyogc3RhcnRfd2l0aCwgY29uc3QgY2hhciogY29uc3QgbGlicmFyeV9uYW1lc1tdLAorICAgICAgc2l6ZV90IGxpYnJhcnlfbmFtZXNfY291bnQsIHNvaW5mbyogc29pbmZvc1tdLCBzdGQ6OnZlY3Rvcjxzb2luZm8qPiogbGRfcHJlbG9hZHMsCisgICAgICBzaXplX3QgbGRfcHJlbG9hZHNfY291bnQsIGludCBydGxkX2ZsYWdzLCBjb25zdCBhbmRyb2lkX2RsZXh0aW5mbyogZXh0aW5mbykgewogICAvLyBTdGVwIDA6IHByZXBhcmUuCiAgIExvYWRUYXNrTGlzdCBsb2FkX3Rhc2tzOwotICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGxpYnJhcnlfbmFtZXNfc2l6ZTsgKytpKSB7CisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbGlicmFyeV9uYW1lc19jb3VudDsgKytpKSB7CiAgICAgY29uc3QgY2hhciogbmFtZSA9IGxpYnJhcnlfbmFtZXNbaV07Ci0gICAgbG9hZF90YXNrcy5wdXNoX2JhY2soTG9hZFRhc2s6OmNyZWF0ZShuYW1lLCBudWxscHRyKSk7CisgICAgbG9hZF90YXNrcy5wdXNoX2JhY2soTG9hZFRhc2s6OmNyZWF0ZShuYW1lLCBzdGFydF93aXRoKSk7CiAgIH0KIAotICAvLyBMaWJyYXJpZXMgYWRkZWQgdG8gdGhpcyBsaXN0IGluIHJldmVyc2Ugb3JkZXIgc28gdGhhdCB3ZSBjYW4KLSAgLy8gc3RhcnQgbGlua2luZyBmcm9tIGJvdHRvbS11cCAtIHNlZSBzdGVwIDIuCi0gIFNvaW5mb0xpbmtlZExpc3QgZm91bmRfbGliczsKLSAgc2l6ZV90IHNvaW5mb3Nfc2l6ZSA9IDA7CisgIC8vIENvbnN0cnVjdCBnbG9iYWxfZ3JvdXAuCisgIHNvaW5mbzo6c29pbmZvX2xpc3RfdCBnbG9iYWxfZ3JvdXAgPSBtYWtlX2dsb2JhbF9ncm91cCgpOworCisgIC8vIElmIHNvaW5mb3MgYXJyYXkgaXMgbnVsbCBhbGxvY2F0ZSBvbmUgb24gc3RhY2suCisgIC8vIFRoZSBhcnJheSBpcyBuZWVkZWQgaW4gY2FzZSBvZiBmYWlsdXJlOyBmb3IgZXhhbXBsZQorICAvLyB3aGVuIGxpYnJhcnlfbmFtZXNbXSA9IHtsaWJvbmUuc28sIGxpYnR3by5zb30gYW5kIGxpYm9uZS5zbworICAvLyBpcyBsb2FkZWQgY29ycmVjdGx5IGJ1dCBsaWJ0d28uc28gZmFpbGVkIGZvciBzb21lIHJlYXNvbi4KKyAgLy8gSW4gdGhpcyBjYXNlIGxpYm9uZS5zbyBzaG91bGQgYmUgdW5sb2FkZWQgb24gcmV0dXJuLgorICAvLyBTZWUgYWxzbyBpbXBsZW1lbnRhdGlvbiBvZiBmYWlsdXJlX2d1YXJkIGJlbG93LgorCisgIGlmIChzb2luZm9zID09IG51bGxwdHIpIHsKKyAgICBzaXplX3Qgc29pbmZvc19zaXplID0gc2l6ZW9mKHNvaW5mbyopKmxpYnJhcnlfbmFtZXNfY291bnQ7CisgICAgc29pbmZvcyA9IHJlaW50ZXJwcmV0X2Nhc3Q8c29pbmZvKio+KGFsbG9jYShzb2luZm9zX3NpemUpKTsKKyAgICBtZW1zZXQoc29pbmZvcywgMCwgc29pbmZvc19zaXplKTsKKyAgfQorCisgIC8vIGxpc3Qgb2YgbGlicmFyaWVzIHRvIGxpbmsgLSBzZWUgc3RlcCAyLgorICBzaXplX3Qgc29pbmZvc19jb3VudCA9IDA7CiAKICAgYXV0byBmYWlsdXJlX2d1YXJkID0gbWFrZV9zY29wZV9ndWFyZChbJl0oKSB7CiAgICAgLy8gSG91c2VrZWVwaW5nCkBAIC05MTMsMTA0ICsxMzk5LDE4MiBAQAogICAgICAgTG9hZFRhc2s6OmRlbGV0ZXIodCk7CiAgICAgfSk7CiAKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaTxzb2luZm9zX3NpemU7ICsraSkgeworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpPHNvaW5mb3NfY291bnQ7ICsraSkgewogICAgICAgc29pbmZvX3VubG9hZChzb2luZm9zW2ldKTsKICAgICB9CiAgIH0pOwogCiAgIC8vIFN0ZXAgMTogbG9hZCBhbmQgcHJlLWxpbmsgYWxsIERUX05FRURFRCBsaWJyYXJpZXMgaW4gYnJlYWR0aCBmaXJzdCBvcmRlci4KLSAgZm9yIChMb2FkVGFzazo6dW5pcXVlX3B0ciB0YXNrKGxvYWRfdGFza3MucG9wX2Zyb250KCkpOyB0YXNrLmdldCgpICE9IG51bGxwdHI7IHRhc2sucmVzZXQobG9hZF90YXNrcy5wb3BfZnJvbnQoKSkpIHsKLSAgICBzb2luZm8qIHNpID0gZmluZF9saWJyYXJ5X2ludGVybmFsKGxvYWRfdGFza3MsIHRhc2stPmdldF9uYW1lKCksIGRsZmxhZ3MsIGV4dGluZm8pOworICBmb3IgKExvYWRUYXNrOjp1bmlxdWVfcHRyIHRhc2sobG9hZF90YXNrcy5wb3BfZnJvbnQoKSk7CisgICAgICB0YXNrLmdldCgpICE9IG51bGxwdHI7IHRhc2sucmVzZXQobG9hZF90YXNrcy5wb3BfZnJvbnQoKSkpIHsKKyAgICBzb2luZm8qIHNpID0gZmluZF9saWJyYXJ5X2ludGVybmFsKGxvYWRfdGFza3MsIHRhc2stPmdldF9uYW1lKCksIHJ0bGRfZmxhZ3MsIGV4dGluZm8pOwogICAgIGlmIChzaSA9PSBudWxscHRyKSB7CiAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCiAgICAgc29pbmZvKiBuZWVkZWRfYnkgPSB0YXNrLT5nZXRfbmVlZGVkX2J5KCk7CiAKLSAgICBpZiAoaXNfcmVjdXJzaXZlKHNpLCBuZWVkZWRfYnkpKSB7Ci0gICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotCi0gICAgc2ktPnJlZl9jb3VudCsrOwogICAgIGlmIChuZWVkZWRfYnkgIT0gbnVsbHB0cikgewogICAgICAgbmVlZGVkX2J5LT5hZGRfY2hpbGQoc2kpOwogICAgIH0KLSAgICBmb3VuZF9saWJzLnB1c2hfZnJvbnQoc2kpOwogCi0gICAgLy8gV2hlbiBsZF9wcmVsb2FkcyBpcyBub3QgbnVsbCBmaXJzdAotICAgIC8vIGxkX3ByZWxvYWRzX3NpemUgbGlicyBhcmUgaW4gZmFjdCBsZF9wcmVsb2Fkcy4KLSAgICBpZiAobGRfcHJlbG9hZHMgIT0gbnVsbHB0ciAmJiBzb2luZm9zX3NpemUgPCBsZF9wcmVsb2Fkc19zaXplKSB7Ci0gICAgICBsZF9wcmVsb2Fkc1tzb2luZm9zX3NpemVdID0gc2k7CisgICAgaWYgKHNpLT5pc19saW5rZWQoKSkgeworICAgICAgc2ktPmluY3JlbWVudF9yZWZfY291bnQoKTsKICAgICB9CiAKLSAgICBpZiAoc29pbmZvc19zaXplPGxpYnJhcnlfbmFtZXNfc2l6ZSkgewotICAgICAgc29pbmZvc1tzb2luZm9zX3NpemUrK10gPSBzaTsKKyAgICAvLyBXaGVuIGxkX3ByZWxvYWRzIGlzIG5vdCBudWxsLCB0aGUgZmlyc3QKKyAgICAvLyBsZF9wcmVsb2Fkc19jb3VudCBsaWJzIGFyZSBpbiBmYWN0IGxkX3ByZWxvYWRzLgorICAgIGlmIChsZF9wcmVsb2FkcyAhPSBudWxscHRyICYmIHNvaW5mb3NfY291bnQgPCBsZF9wcmVsb2Fkc19jb3VudCkgeworICAgICAgLy8gQWRkIExEX1BSRUxPQURlZCBsaWJyYXJpZXMgdG8gdGhlIGdsb2JhbCBncm91cCBmb3IgZnV0dXJlIHJ1bnMuCisgICAgICAvLyBUaGVyZSBpcyBubyBuZWVkIHRvIGV4cGxpY2l0bHkgYWRkIHRoZW0gdG8gdGhlIGdsb2JhbCBncm91cAorICAgICAgLy8gZm9yIHRoaXMgcnVuIGJlY2F1c2UgdGhleSBhcmUgZ29pbmcgdG8gYXBwZWFyIGluIHRoZSBsb2NhbAorICAgICAgLy8gZ3JvdXAgaW4gdGhlIGNvcnJlY3Qgb3JkZXIuCisgICAgICBzaS0+c2V0X2R0X2ZsYWdzXzEoc2ktPmdldF9kdF9mbGFnc18xKCkgfCBERl8xX0dMT0JBTCk7CisgICAgICBsZF9wcmVsb2Fkcy0+cHVzaF9iYWNrKHNpKTsKKyAgICB9CisKKyAgICBpZiAoc29pbmZvc19jb3VudCA8IGxpYnJhcnlfbmFtZXNfY291bnQpIHsKKyAgICAgIHNvaW5mb3Nbc29pbmZvc19jb3VudCsrXSA9IHNpOwogICAgIH0KICAgfQogCiAgIC8vIFN0ZXAgMjogbGluayBsaWJyYXJpZXMuCi0gIHNvaW5mbyogc2k7Ci0gIHdoaWxlICgoc2kgPSBmb3VuZF9saWJzLnBvcF9mcm9udCgpKSAhPSBudWxscHRyKSB7Ci0gICAgaWYgKChzaS0+ZmxhZ3MgJiBGTEFHX0xJTktFRCkgPT0gMCkgewotICAgICAgaWYgKCFzaS0+TGlua0ltYWdlKGV4dGluZm8pKSB7CisgIHNvaW5mbzo6c29pbmZvX2xpc3RfdCBsb2NhbF9ncm91cDsKKyAgd2Fsa19kZXBlbmRlbmNpZXNfdHJlZSgKKyAgICAgIHN0YXJ0X3dpdGggPT0gbnVsbHB0ciA/IHNvaW5mb3MgOiAmc3RhcnRfd2l0aCwKKyAgICAgIHN0YXJ0X3dpdGggPT0gbnVsbHB0ciA/IHNvaW5mb3NfY291bnQgOiAxLAorICAgICAgWyZdIChzb2luZm8qIHNpKSB7CisgICAgbG9jYWxfZ3JvdXAucHVzaF9iYWNrKHNpKTsKKyAgICByZXR1cm4gdHJ1ZTsKKyAgfSk7CisKKyAgLy8gV2UgbmVlZCB0byBpbmNyZW1lbnQgcmVmX2NvdW50IGluIGNhc2UKKyAgLy8gdGhlIHJvb3Qgb2YgdGhlIGxvY2FsIGdyb3VwIHdhcyBub3QgbGlua2VkLgorICBib29sIHdhc19sb2NhbF9ncm91cF9yb290X2xpbmtlZCA9IGxvY2FsX2dyb3VwLmZyb250KCktPmlzX2xpbmtlZCgpOworCisgIGJvb2wgbGlua2VkID0gbG9jYWxfZ3JvdXAudmlzaXQoWyZdKHNvaW5mbyogc2kpIHsKKyAgICBpZiAoIXNpLT5pc19saW5rZWQoKSkgeworICAgICAgaWYgKCFzaS0+bGlua19pbWFnZShnbG9iYWxfZ3JvdXAsIGxvY2FsX2dyb3VwLCBleHRpbmZvKSkgewogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICB9Ci0gICAgICBzaS0+ZmxhZ3MgfD0gRkxBR19MSU5LRUQ7CisgICAgICBzaS0+c2V0X2xpbmtlZCgpOwogICAgIH0KKworICAgIHJldHVybiB0cnVlOworICB9KTsKKworICBpZiAobGlua2VkKSB7CisgICAgZmFpbHVyZV9ndWFyZC5kaXNhYmxlKCk7CiAgIH0KIAotICAvLyBBbGwgaXMgd2VsbCAtIGZvdW5kX2xpYnMgYW5kIGxvYWRfdGFza3MgYXJlIGVtcHR5IGF0IHRoaXMgcG9pbnQKLSAgLy8gYW5kIGFsbCBsaWJzIGFyZSBzdWNjZXNzZnVsbHkgbGlua2VkLgotICBmYWlsdXJlX2d1YXJkLmRpc2FibGUoKTsKLSAgcmV0dXJuIHRydWU7CisgIGlmICghd2FzX2xvY2FsX2dyb3VwX3Jvb3RfbGlua2VkKSB7CisgICAgbG9jYWxfZ3JvdXAuZnJvbnQoKS0+aW5jcmVtZW50X3JlZl9jb3VudCgpOworICB9CisKKyAgcmV0dXJuIGxpbmtlZDsKIH0KIAotc3RhdGljIHNvaW5mbyogZmluZF9saWJyYXJ5KGNvbnN0IGNoYXIqIG5hbWUsIGludCBkbGZsYWdzLCBjb25zdCBhbmRyb2lkX2RsZXh0aW5mbyogZXh0aW5mbykgewotICBpZiAobmFtZSA9PSBudWxscHRyKSB7Ci0gICAgc29tYWluLT5yZWZfY291bnQrKzsKLSAgICByZXR1cm4gc29tYWluOwotICB9Ci0KK3N0YXRpYyBzb2luZm8qIGZpbmRfbGlicmFyeShjb25zdCBjaGFyKiBuYW1lLCBpbnQgcnRsZF9mbGFncywgY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pIHsKICAgc29pbmZvKiBzaTsKIAotICBpZiAoIWZpbmRfbGlicmFyaWVzKCZuYW1lLCAxLCAmc2ksIG51bGxwdHIsIDAsIGRsZmxhZ3MsIGV4dGluZm8pKSB7CisgIGlmIChuYW1lID09IG51bGxwdHIpIHsKKyAgICBzaSA9IHNvbWFpbjsKKyAgfSBlbHNlIGlmICghZmluZF9saWJyYXJpZXMobnVsbHB0ciwgJm5hbWUsIDEsICZzaSwgbnVsbHB0ciwgMCwgcnRsZF9mbGFncywgZXh0aW5mbykpIHsKICAgICByZXR1cm4gbnVsbHB0cjsKICAgfQogCiAgIHJldHVybiBzaTsKIH0KIAotc3RhdGljIHZvaWQgc29pbmZvX3VubG9hZChzb2luZm8qIHNpKSB7Ci0gIGlmIChzaS0+cmVmX2NvdW50ID09IDEpIHsKLSAgICBUUkFDRSgidW5sb2FkaW5nICclcyciLCBzaS0+bmFtZSk7Ci0gICAgc2ktPkNhbGxEZXN0cnVjdG9ycygpOworc3RhdGljIHZvaWQgc29pbmZvX3VubG9hZChzb2luZm8qIHJvb3QpIHsKKyAgLy8gTm90ZSB0aGF0IHRoZSBsaWJyYXJ5IGNhbiBiZSBsb2FkZWQgYnV0IG5vdCBsaW5rZWQ7CisgIC8vIGluIHdoaWNoIGNhc2UgdGhlcmUgaXMgbm8gcm9vdCBidXQgd2Ugc3RpbGwgbmVlZAorICAvLyB0byB3YWxrIHRoZSB0cmVlIGFuZCB1bmxvYWQgc29pbmZvcyBpbnZvbHZlZC4KKyAgLy8KKyAgLy8gVGhpcyBoYXBwZW5zIG9uIHVuc3VjY2Vzc2Z1bCBkbG9wZW4sIHdoZW4gb25lIG9mCisgIC8vIHRoZSBEVF9ORUVERUQgbGlicmFyaWVzIGNvdWxkIG5vdCBiZSBsaW5rZWQvZm91bmQuCisgIGlmIChyb290LT5pc19saW5rZWQoKSkgeworICAgIHJvb3QgPSByb290LT5nZXRfbG9jYWxfZ3JvdXBfcm9vdCgpOworICB9CiAKLSAgICBpZiAoc2ktPmhhc19taW5fdmVyc2lvbigwKSkgewotICAgICAgc29pbmZvKiBjaGlsZCA9IG51bGxwdHI7Ci0gICAgICB3aGlsZSAoKGNoaWxkID0gc2ktPmdldF9jaGlsZHJlbigpLnBvcF9mcm9udCgpKSAhPSBudWxscHRyKSB7Ci0gICAgICAgIFRSQUNFKCIlcyBuZWVkcyB0byB1bmxvYWQgJXMiLCBzaS0+bmFtZSwgY2hpbGQtPm5hbWUpOwotICAgICAgICBzb2luZm9fdW5sb2FkKGNoaWxkKTsKKyAgaWYgKCFyb290LT5jYW5fdW5sb2FkKCkpIHsKKyAgICBUUkFDRSgibm90IHVubG9hZGluZyAnJXMnIC0gdGhlIGJpbmFyeSBpcyBmbGFnZ2VkIHdpdGggTk9ERUxFVEUiLCByb290LT5nZXRfc29uYW1lKCkpOworICAgIHJldHVybjsKKyAgfQorCisgIHNpemVfdCByZWZfY291bnQgPSByb290LT5pc19saW5rZWQoKSA/IHJvb3QtPmRlY3JlbWVudF9yZWZfY291bnQoKSA6IDA7CisKKyAgaWYgKHJlZl9jb3VudCA9PSAwKSB7CisgICAgc29pbmZvOjpzb2luZm9fbGlzdF90IGxvY2FsX3VubG9hZF9saXN0OworICAgIHNvaW5mbzo6c29pbmZvX2xpc3RfdCBleHRlcm5hbF91bmxvYWRfbGlzdDsKKyAgICBzb2luZm86OnNvaW5mb19saXN0X3QgZGVwdGhfZmlyc3RfbGlzdDsKKyAgICBkZXB0aF9maXJzdF9saXN0LnB1c2hfYmFjayhyb290KTsKKyAgICBzb2luZm8qIHNpID0gbnVsbHB0cjsKKworICAgIHdoaWxlICgoc2kgPSBkZXB0aF9maXJzdF9saXN0LnBvcF9mcm9udCgpKSAhPSBudWxscHRyKSB7CisgICAgICBpZiAobG9jYWxfdW5sb2FkX2xpc3QuY29udGFpbnMoc2kpKSB7CisgICAgICAgIGNvbnRpbnVlOwogICAgICAgfQotICAgIH0gZWxzZSB7Ci0gICAgICBmb3JfZWFjaF9kdF9uZWVkZWQoc2ksIFsmXSAoY29uc3QgY2hhciogbGlicmFyeV9uYW1lKSB7Ci0gICAgICAgIFRSQUNFKCJkZXByZWNhdGVkIChvbGQgZm9ybWF0IG9mIHNvaW5mbyk6ICVzIG5lZWRzIHRvIHVubG9hZCAlcyIsIHNpLT5uYW1lLCBsaWJyYXJ5X25hbWUpOwotICAgICAgICBzb2luZm8qIG5lZWRlZCA9IGZpbmRfbGlicmFyeShsaWJyYXJ5X25hbWUsIFJUTERfTk9MT0FELCBudWxscHRyKTsKLSAgICAgICAgaWYgKG5lZWRlZCAhPSBudWxscHRyKSB7Ci0gICAgICAgICAgc29pbmZvX3VubG9hZChuZWVkZWQpOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgIC8vIE5vdCBmb3VuZDogZm9yIGV4YW1wbGUgaWYgc3ltbGluayB3YXMgZGVsZXRlZCBiZXR3ZWVuIGRsb3BlbiBhbmQgZGxjbG9zZQotICAgICAgICAgIC8vIFNpbmNlIHdlIGNhbm5vdCByZWFsbHkgaGFuZGxlIGVycm9ycyBhdCB0aGlzIHBvaW50IC0gcHJpbnQgYW5kIGNvbnRpbnVlLgotICAgICAgICAgIFBSSU5UKCJ3YXJuaW5nOiBjb3VsZG4ndCBmaW5kICVzIG5lZWRlZCBieSAlcyBvbiB1bmxvYWQuIiwgbGlicmFyeV9uYW1lLCBzaS0+bmFtZSk7CisKKyAgICAgIGxvY2FsX3VubG9hZF9saXN0LnB1c2hfYmFjayhzaSk7CisKKyAgICAgIGlmIChzaS0+aGFzX21pbl92ZXJzaW9uKDApKSB7CisgICAgICAgIHNvaW5mbyogY2hpbGQgPSBudWxscHRyOworICAgICAgICB3aGlsZSAoKGNoaWxkID0gc2ktPmdldF9jaGlsZHJlbigpLnBvcF9mcm9udCgpKSAhPSBudWxscHRyKSB7CisgICAgICAgICAgVFJBQ0UoIiVzQCVwIG5lZWRzIHRvIHVubG9hZCAlc0AlcCIsIHNpLT5nZXRfc29uYW1lKCksIHNpLCBjaGlsZC0+Z2V0X3NvbmFtZSgpLCBjaGlsZCk7CisgICAgICAgICAgaWYgKGxvY2FsX3VubG9hZF9saXN0LmNvbnRhaW5zKGNoaWxkKSkgeworICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgfSBlbHNlIGlmIChjaGlsZC0+aXNfbGlua2VkKCkgJiYgY2hpbGQtPmdldF9sb2NhbF9ncm91cF9yb290KCkgIT0gcm9vdCkgeworICAgICAgICAgICAgZXh0ZXJuYWxfdW5sb2FkX2xpc3QucHVzaF9iYWNrKGNoaWxkKTsKKyAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgZGVwdGhfZmlyc3RfbGlzdC5wdXNoX2Zyb250KGNoaWxkKTsKKyAgICAgICAgICB9CiAgICAgICAgIH0KLSAgICAgIH0pOworICAgICAgfSBlbHNlIHsKKyNpZiAhZGVmaW5lZChfX2FybV9fKQorICAgICAgICBfX2xpYmNfZmF0YWwoInNvaW5mbyBmb3IgXCIlc1wiQCVwIGhhcyBubyB2ZXJzaW9uIiwgc2ktPmdldF9zb25hbWUoKSwgc2kpOworI2Vsc2UKKyAgICAgICAgUFJJTlQoIndhcm5pbmc6IHNvaW5mbyBmb3IgXCIlc1wiQCVwIGhhcyBubyB2ZXJzaW9uIiwgc2ktPmdldF9zb25hbWUoKSwgc2kpOworICAgICAgICBmb3JfZWFjaF9kdF9uZWVkZWQoc2ksIFsmXSAoY29uc3QgY2hhciogbGlicmFyeV9uYW1lKSB7CisgICAgICAgICAgVFJBQ0UoImRlcHJlY2F0ZWQgKG9sZCBmb3JtYXQgb2Ygc29pbmZvKTogJXMgbmVlZHMgdG8gdW5sb2FkICVzIiwKKyAgICAgICAgICAgICAgc2ktPmdldF9zb25hbWUoKSwgbGlicmFyeV9uYW1lKTsKKworICAgICAgICAgIHNvaW5mbyogbmVlZGVkID0gZmluZF9saWJyYXJ5KGxpYnJhcnlfbmFtZSwgUlRMRF9OT0xPQUQsIG51bGxwdHIpOworICAgICAgICAgIGlmIChuZWVkZWQgIT0gbnVsbHB0cikgeworICAgICAgICAgICAgLy8gTm90IGZvdW5kOiBmb3IgZXhhbXBsZSBpZiBzeW1saW5rIHdhcyBkZWxldGVkIGJldHdlZW4gZGxvcGVuIGFuZCBkbGNsb3NlCisgICAgICAgICAgICAvLyBTaW5jZSB3ZSBjYW5ub3QgcmVhbGx5IGhhbmRsZSBlcnJvcnMgYXQgdGhpcyBwb2ludCAtIHByaW50IGFuZCBjb250aW51ZS4KKyAgICAgICAgICAgIFBSSU5UKCJ3YXJuaW5nOiBjb3VsZG4ndCBmaW5kICVzIG5lZWRlZCBieSAlcyBvbiB1bmxvYWQuIiwKKyAgICAgICAgICAgICAgICBsaWJyYXJ5X25hbWUsIHNpLT5nZXRfc29uYW1lKCkpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgIH0gZWxzZSBpZiAobG9jYWxfdW5sb2FkX2xpc3QuY29udGFpbnMobmVlZGVkKSkgeworICAgICAgICAgICAgLy8gYWxyZWFkeSB2aXNpdGVkCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgfSBlbHNlIGlmIChuZWVkZWQtPmlzX2xpbmtlZCgpICYmIG5lZWRlZC0+Z2V0X2xvY2FsX2dyb3VwX3Jvb3QoKSAhPSByb290KSB7CisgICAgICAgICAgICAvLyBleHRlcm5hbCBncm91cAorICAgICAgICAgICAgZXh0ZXJuYWxfdW5sb2FkX2xpc3QucHVzaF9iYWNrKG5lZWRlZCk7CisgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIC8vIGxvY2FsIGdyb3VwCisgICAgICAgICAgICBkZXB0aF9maXJzdF9saXN0LnB1c2hfZnJvbnQobmVlZGVkKTsKKyAgICAgICAgICB9CisgICAgICAgIH0pOworI2VuZGlmCisgICAgICB9CiAgICAgfQogCi0gICAgbm90aWZ5X2dkYl9vZl91bmxvYWQoc2kpOwotICAgIHNpLT5yZWZfY291bnQgPSAwOwotICAgIHNvaW5mb19mcmVlKHNpKTsKKyAgICBsb2NhbF91bmxvYWRfbGlzdC5mb3JfZWFjaChbXShzb2luZm8qIHNpKSB7CisgICAgICBzaS0+Y2FsbF9kZXN0cnVjdG9ycygpOworICAgIH0pOworCisgICAgd2hpbGUgKChzaSA9IGxvY2FsX3VubG9hZF9saXN0LnBvcF9mcm9udCgpKSAhPSBudWxscHRyKSB7CisgICAgICBub3RpZnlfZ2RiX29mX3VubG9hZChzaSk7CisgICAgICBzb2luZm9fZnJlZShzaSk7CisgICAgfQorCisgICAgd2hpbGUgKChzaSA9IGV4dGVybmFsX3VubG9hZF9saXN0LnBvcF9mcm9udCgpKSAhPSBudWxscHRyKSB7CisgICAgICBzb2luZm9fdW5sb2FkKHNpKTsKKyAgICB9CiAgIH0gZWxzZSB7Ci0gICAgc2ktPnJlZl9jb3VudC0tOwotICAgIFRSQUNFKCJub3QgdW5sb2FkaW5nICclcycsIGRlY3JlbWVudGluZyByZWZfY291bnQgdG8gJXpkIiwgc2ktPm5hbWUsIHNpLT5yZWZfY291bnQpOworICAgIFRSQUNFKCJub3QgdW5sb2FkaW5nICclcycgZ3JvdXAsIGRlY3JlbWVudGluZyByZWZfY291bnQgdG8gJXpkIiwgcm9vdC0+Z2V0X3NvbmFtZSgpLCByZWZfY291bnQpOwogICB9CiB9CiAKQEAgLTEwMjQsOCArMTU4OCw4IEBACiAgIC8vIHNucHJpbnRmIGFnYWluLgogICBzaXplX3QgcmVxdWlyZWRfbGVuID0gc3RybGVuKGtEZWZhdWx0TGRQYXRoc1swXSkgKyBzdHJsZW4oa0RlZmF1bHRMZFBhdGhzWzFdKSArIDI7CiAgIGlmIChidWZmZXJfc2l6ZSA8IHJlcXVpcmVkX2xlbikgewotICAgIF9fbGliY19mYXRhbCgiYW5kcm9pZF9nZXRfTERfTElCUkFSWV9QQVRIIGZhaWxlZCwgYnVmZmVyIHRvbyBzbWFsbDogYnVmZmVyIGxlbiAlenUsIHJlcXVpcmVkIGxlbiAlenUiLAotICAgICAgICAgICAgICAgICBidWZmZXJfc2l6ZSwgcmVxdWlyZWRfbGVuKTsKKyAgICBfX2xpYmNfZmF0YWwoImFuZHJvaWRfZ2V0X0xEX0xJQlJBUllfUEFUSCBmYWlsZWQsIGJ1ZmZlciB0b28gc21hbGw6ICIKKyAgICAgICAgICAgICAgICAgImJ1ZmZlciBsZW4gJXp1LCByZXF1aXJlZCBsZW4gJXp1IiwgYnVmZmVyX3NpemUsIHJlcXVpcmVkX2xlbik7CiAgIH0KICAgY2hhciogZW5kID0gc3RwY3B5KGJ1ZmZlciwga0RlZmF1bHRMZFBhdGhzWzBdKTsKICAgKmVuZCA9ICc6JzsKQEAgLTEwMzMsMTMgKzE1OTcsMTEgQEAKIH0KIAogdm9pZCBkb19hbmRyb2lkX3VwZGF0ZV9MRF9MSUJSQVJZX1BBVEgoY29uc3QgY2hhciogbGRfbGlicmFyeV9wYXRoKSB7Ci0gIGlmICghZ2V0X0FUX1NFQ1VSRSgpKSB7Ci0gICAgcGFyc2VfTERfTElCUkFSWV9QQVRIKGxkX2xpYnJhcnlfcGF0aCk7Ci0gIH0KKyAgcGFyc2VfTERfTElCUkFSWV9QQVRIKGxkX2xpYnJhcnlfcGF0aCk7CiB9CiAKIHNvaW5mbyogZG9fZGxvcGVuKGNvbnN0IGNoYXIqIG5hbWUsIGludCBmbGFncywgY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pIHsKLSAgaWYgKChmbGFncyAmIH4oUlRMRF9OT1d8UlRMRF9MQVpZfFJUTERfTE9DQUx8UlRMRF9HTE9CQUx8UlRMRF9OT0xPQUQpKSAhPSAwKSB7CisgIGlmICgoZmxhZ3MgJiB+KFJUTERfTk9XfFJUTERfTEFaWXxSVExEX0xPQ0FMfFJUTERfR0xPQkFMfFJUTERfTk9ERUxFVEV8UlRMRF9OT0xPQUQpKSAhPSAwKSB7CiAgICAgRExfRVJSKCJpbnZhbGlkIGZsYWdzIHRvIGRsb3BlbjogJXgiLCBmbGFncyk7CiAgICAgcmV0dXJuIG51bGxwdHI7CiAgIH0KQEAgLTEwNTAsNjAgKzE2MTIsMjAxIEBACiAgICAgfQogICAgIGlmICgoZXh0aW5mby0+ZmxhZ3MgJiBBTkRST0lEX0RMRVhUX1VTRV9MSUJSQVJZX0ZEKSA9PSAwICYmCiAgICAgICAgIChleHRpbmZvLT5mbGFncyAmIEFORFJPSURfRExFWFRfVVNFX0xJQlJBUllfRkRfT0ZGU0VUKSAhPSAwKSB7Ci0gICAgICBETF9FUlIoImludmFsaWQgZXh0ZW5kZWQgZmxhZyBjb21iaW5hdGlvbiAoQU5EUk9JRF9ETEVYVF9VU0VfTElCUkFSWV9GRF9PRkZTRVQgd2l0aG91dCBBTkRST0lEX0RMRVhUX1VTRV9MSUJSQVJZX0ZEKTogMHglIiBQUkl4NjQsIGV4dGluZm8tPmZsYWdzKTsKKyAgICAgIERMX0VSUigiaW52YWxpZCBleHRlbmRlZCBmbGFnIGNvbWJpbmF0aW9uIChBTkRST0lEX0RMRVhUX1VTRV9MSUJSQVJZX0ZEX09GRlNFVCB3aXRob3V0ICIKKyAgICAgICAgICAiQU5EUk9JRF9ETEVYVF9VU0VfTElCUkFSWV9GRCk6IDB4JSIgUFJJeDY0LCBleHRpbmZvLT5mbGFncyk7CiAgICAgICByZXR1cm4gbnVsbHB0cjsKICAgICB9CiAgIH0KLSAgcHJvdGVjdF9kYXRhKFBST1RfUkVBRCB8IFBST1RfV1JJVEUpOworCisgIFByb3RlY3RlZERhdGFHdWFyZCBndWFyZDsKICAgc29pbmZvKiBzaSA9IGZpbmRfbGlicmFyeShuYW1lLCBmbGFncywgZXh0aW5mbyk7CiAgIGlmIChzaSAhPSBudWxscHRyKSB7Ci0gICAgc2ktPkNhbGxDb25zdHJ1Y3RvcnMoKTsKKyAgICBzaS0+Y2FsbF9jb25zdHJ1Y3RvcnMoKTsKICAgfQotICBwcm90ZWN0X2RhdGEoUFJPVF9SRUFEKTsKICAgcmV0dXJuIHNpOwogfQogCiB2b2lkIGRvX2RsY2xvc2Uoc29pbmZvKiBzaSkgewotICBwcm90ZWN0X2RhdGEoUFJPVF9SRUFEIHwgUFJPVF9XUklURSk7CisgIFByb3RlY3RlZERhdGFHdWFyZCBndWFyZDsKICAgc29pbmZvX3VubG9hZChzaSk7Ci0gIHByb3RlY3RfZGF0YShQUk9UX1JFQUQpOwogfQogCiBzdGF0aWMgRWxmVyhBZGRyKSBjYWxsX2lmdW5jX3Jlc29sdmVyKEVsZlcoQWRkcikgcmVzb2x2ZXJfYWRkcikgewogICB0eXBlZGVmIEVsZlcoQWRkcikgKCppZnVuY19yZXNvbHZlcl90KSh2b2lkKTsKICAgaWZ1bmNfcmVzb2x2ZXJfdCBpZnVuY19yZXNvbHZlciA9IHJlaW50ZXJwcmV0X2Nhc3Q8aWZ1bmNfcmVzb2x2ZXJfdD4ocmVzb2x2ZXJfYWRkcik7CiAgIEVsZlcoQWRkcikgaWZ1bmNfYWRkciA9IGlmdW5jX3Jlc29sdmVyKCk7Ci0gIFRSQUNFX1RZUEUoUkVMTywgIkNhbGxlZCBpZnVuY19yZXNvbHZlckAlcC4gVGhlIHJlc3VsdCBpcyAlcCIsIGlmdW5jX3Jlc29sdmVyLCByZWludGVycHJldF9jYXN0PHZvaWQqPihpZnVuY19hZGRyKSk7CisgIFRSQUNFX1RZUEUoUkVMTywgIkNhbGxlZCBpZnVuY19yZXNvbHZlckAlcC4gVGhlIHJlc3VsdCBpcyAlcCIsCisgICAgICBpZnVuY19yZXNvbHZlciwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oaWZ1bmNfYWRkcikpOwogCiAgIHJldHVybiBpZnVuY19hZGRyOwogfQogCitjb25zdCB2ZXJzaW9uX2luZm8qIFZlcnNpb25UcmFja2VyOjpnZXRfdmVyc2lvbl9pbmZvKEVsZlcoVmVyc3ltKSBzb3VyY2Vfc3ltdmVyKSBjb25zdCB7CisgIGlmIChzb3VyY2Vfc3ltdmVyIDwgMiB8fAorICAgICAgc291cmNlX3N5bXZlciA+PSB2ZXJzaW9uX2luZm9zLnNpemUoKSB8fAorICAgICAgdmVyc2lvbl9pbmZvc1tzb3VyY2Vfc3ltdmVyXS5uYW1lID09IG51bGxwdHIpIHsKKyAgICByZXR1cm4gbnVsbHB0cjsKKyAgfQorCisgIHJldHVybiAmdmVyc2lvbl9pbmZvc1tzb3VyY2Vfc3ltdmVyXTsKK30KKwordm9pZCBWZXJzaW9uVHJhY2tlcjo6YWRkX3ZlcnNpb25faW5mbyhzaXplX3Qgc291cmNlX2luZGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZXKFdvcmQpIGVsZl9oYXNoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiB2ZXJfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc29pbmZvKiB0YXJnZXRfc2kpIHsKKyAgaWYgKHNvdXJjZV9pbmRleCA+PSB2ZXJzaW9uX2luZm9zLnNpemUoKSkgeworICAgIHZlcnNpb25faW5mb3MucmVzaXplKHNvdXJjZV9pbmRleCsxKTsKKyAgfQorCisgIHZlcnNpb25faW5mb3Nbc291cmNlX2luZGV4XS5lbGZfaGFzaCA9IGVsZl9oYXNoOworICB2ZXJzaW9uX2luZm9zW3NvdXJjZV9pbmRleF0ubmFtZSA9IHZlcl9uYW1lOworICB2ZXJzaW9uX2luZm9zW3NvdXJjZV9pbmRleF0udGFyZ2V0X3NpID0gdGFyZ2V0X3NpOworfQorCitib29sIFZlcnNpb25UcmFja2VyOjppbml0X3Zlcm5lZWQoY29uc3Qgc29pbmZvKiBzaV9mcm9tKSB7CisgIHVpbnRwdHJfdCB2ZXJuZWVkX3B0ciA9IHNpX2Zyb20tPmdldF92ZXJuZWVkX3B0cigpOworCisgIGlmICh2ZXJuZWVkX3B0ciA9PSAwKSB7CisgICAgcmV0dXJuIHRydWU7CisgIH0KKworICBzaXplX3QgdmVybmVlZF9jbnQgPSBzaV9mcm9tLT5nZXRfdmVybmVlZF9jbnQoKTsKKworICBmb3IgKHNpemVfdCBpID0gMCwgb2Zmc2V0ID0gMDsgaTx2ZXJuZWVkX2NudDsgKytpKSB7CisgICAgY29uc3QgRWxmVyhWZXJuZWVkKSogdmVybmVlZCA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhWZXJuZWVkKSo+KHZlcm5lZWRfcHRyICsgb2Zmc2V0KTsKKyAgICBzaXplX3QgdmVybmF1eF9vZmZzZXQgPSBvZmZzZXQgKyB2ZXJuZWVkLT52bl9hdXg7CisgICAgb2Zmc2V0ICs9IHZlcm5lZWQtPnZuX25leHQ7CisKKyAgICBpZiAodmVybmVlZC0+dm5fdmVyc2lvbiAhPSAxKSB7CisgICAgICBETF9FUlIoInVuc3VwcG9ydGVkIHZlcm5lZWRbJXpkXSB2bl92ZXJzaW9uOiAlZCAoZXhwZWN0ZWQgMSkiLCBpLCB2ZXJuZWVkLT52bl92ZXJzaW9uKTsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBjb25zdCBjaGFyKiB0YXJnZXRfc29uYW1lID0gc2lfZnJvbS0+Z2V0X3N0cmluZyh2ZXJuZWVkLT52bl9maWxlKTsKKyAgICAvLyBmaW5kIGl0IGluIGRlcGVuZGVuY2llcworICAgIHNvaW5mbyogdGFyZ2V0X3NpID0gc2lfZnJvbS0+Z2V0X2NoaWxkcmVuKCkuZmluZF9pZihbJl0oY29uc3Qgc29pbmZvKiBzaSkgeworICAgICAgcmV0dXJuIHN0cmNtcChzaS0+Z2V0X3NvbmFtZSgpLCB0YXJnZXRfc29uYW1lKSA9PSAwOworICAgIH0pOworCisgICAgaWYgKHRhcmdldF9zaSA9PSBudWxscHRyKSB7CisgICAgICBETF9FUlIoImNhbm5vdCBmaW5kIFwiJXNcIiBmcm9tIHZlcm5lZWRbJXpkXSBpbiBEVF9ORUVERUQgbGlzdCBmb3IgXCIlc1wiIiwKKyAgICAgICAgICB0YXJnZXRfc29uYW1lLCBpLCBzaV9mcm9tLT5nZXRfc29uYW1lKCkpOworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGZvciAoc2l6ZV90IGogPSAwOyBqPHZlcm5lZWQtPnZuX2NudDsgKytqKSB7CisgICAgICBjb25zdCBFbGZXKFZlcm5hdXgpKiB2ZXJuYXV4ID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFZlcm5hdXgpKj4odmVybmVlZF9wdHIgKyB2ZXJuYXV4X29mZnNldCk7CisgICAgICB2ZXJuYXV4X29mZnNldCArPSB2ZXJuYXV4LT52bmFfbmV4dDsKKworICAgICAgY29uc3QgRWxmVyhXb3JkKSBlbGZfaGFzaCA9IHZlcm5hdXgtPnZuYV9oYXNoOworICAgICAgY29uc3QgY2hhciogdmVyX25hbWUgPSBzaV9mcm9tLT5nZXRfc3RyaW5nKHZlcm5hdXgtPnZuYV9uYW1lKTsKKyAgICAgIEVsZlcoSGFsZikgc291cmNlX2luZGV4ID0gdmVybmF1eC0+dm5hX290aGVyOworCisgICAgICBhZGRfdmVyc2lvbl9pbmZvKHNvdXJjZV9pbmRleCwgZWxmX2hhc2gsIHZlcl9uYW1lLCB0YXJnZXRfc2kpOworICAgIH0KKyAgfQorCisgIHJldHVybiB0cnVlOworfQorCitib29sIFZlcnNpb25UcmFja2VyOjppbml0X3ZlcmRlZihjb25zdCBzb2luZm8qIHNpX2Zyb20pIHsKKyAgcmV0dXJuIGZvcl9lYWNoX3ZlcmRlZihzaV9mcm9tLAorICAgIFsmXShzaXplX3QsIGNvbnN0IEVsZlcoVmVyZGVmKSogdmVyZGVmLCBjb25zdCBFbGZXKFZlcmRhdXgpKiB2ZXJkYXV4KSB7CisgICAgICBhZGRfdmVyc2lvbl9pbmZvKHZlcmRlZi0+dmRfbmR4LCB2ZXJkZWYtPnZkX2hhc2gsCisgICAgICAgICAgc2lfZnJvbS0+Z2V0X3N0cmluZyh2ZXJkYXV4LT52ZGFfbmFtZSksIHNpX2Zyb20pOworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgKTsKK30KKworYm9vbCBWZXJzaW9uVHJhY2tlcjo6aW5pdChjb25zdCBzb2luZm8qIHNpX2Zyb20pIHsKKyAgaWYgKCFzaV9mcm9tLT5oYXNfbWluX3ZlcnNpb24oMikpIHsKKyAgICByZXR1cm4gdHJ1ZTsKKyAgfQorCisgIHJldHVybiBpbml0X3Zlcm5lZWQoc2lfZnJvbSkgJiYgaW5pdF92ZXJkZWYoc2lfZnJvbSk7Cit9CisKK2Jvb2wgc29pbmZvOjpsb29rdXBfdmVyc2lvbl9pbmZvKGNvbnN0IFZlcnNpb25UcmFja2VyJiB2ZXJzaW9uX3RyYWNrZXIsIEVsZlcoV29yZCkgc3ltLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciogc3ltX25hbWUsIGNvbnN0IHZlcnNpb25faW5mbyoqIHZpKSB7CisgIGNvbnN0IEVsZlcoVmVyc3ltKSogc3ltX3Zlcl9wdHIgPSBnZXRfdmVyc3ltKHN5bSk7CisgIEVsZlcoVmVyc3ltKSBzeW1fdmVyID0gc3ltX3Zlcl9wdHIgPT0gbnVsbHB0ciA/IDAgOiAqc3ltX3Zlcl9wdHI7CisKKyAgaWYgKHN5bV92ZXIgIT0gVkVSX05EWF9MT0NBTCAmJiBzeW1fdmVyICE9IFZFUl9ORFhfR0xPQkFMKSB7CisgICAgKnZpID0gdmVyc2lvbl90cmFja2VyLmdldF92ZXJzaW9uX2luZm8oc3ltX3Zlcik7CisKKyAgICBpZiAoKnZpID09IG51bGxwdHIpIHsKKyAgICAgIERMX0VSUigiY2Fubm90IGZpbmQgdmVybmVlZC92ZXJkZWYgZm9yIHZlcnNpb24gaW5kZXg9JWQgIgorICAgICAgICAgICJyZWZlcmVuY2VkIGJ5IHN5bWJvbCBcIiVzXCIgYXQgXCIlc1wiIiwgc3ltX3Zlciwgc3ltX25hbWUsIGdldF9zb25hbWUoKSk7CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICB9IGVsc2UgeworICAgIC8vIHRoZXJlIGlzIG5vIHZlcnNpb24gaW5mbworICAgICp2aSA9IG51bGxwdHI7CisgIH0KKworICByZXR1cm4gdHJ1ZTsKK30KKworI2lmICFkZWZpbmVkKF9fbWlwc19fKQogI2lmIGRlZmluZWQoVVNFX1JFTEEpCi1pbnQgc29pbmZvOjpSZWxvY2F0ZShFbGZXKFJlbGEpKiByZWxhLCB1bnNpZ25lZCBjb3VudCkgewotICBmb3IgKHNpemVfdCBpZHggPSAwOyBpZHggPCBjb3VudDsgKytpZHgsICsrcmVsYSkgewotICAgIHVuc2lnbmVkIHR5cGUgPSBFTEZXKFJfVFlQRSkocmVsYS0+cl9pbmZvKTsKLSAgICB1bnNpZ25lZCBzeW0gPSBFTEZXKFJfU1lNKShyZWxhLT5yX2luZm8pOwotICAgIEVsZlcoQWRkcikgcmVsb2MgPSBzdGF0aWNfY2FzdDxFbGZXKEFkZHIpPihyZWxhLT5yX29mZnNldCArIGxvYWRfYmlhcyk7CitzdGF0aWMgRWxmVyhBZGRyKSBnZXRfYWRkZW5kKEVsZlcoUmVsYSkqIHJlbGEsIEVsZlcoQWRkcikgcmVsb2NfYWRkciBfX3VudXNlZCkgeworICByZXR1cm4gcmVsYS0+cl9hZGRlbmQ7Cit9CisjZWxzZQorc3RhdGljIEVsZlcoQWRkcikgZ2V0X2FkZGVuZChFbGZXKFJlbCkqIHJlbCwgRWxmVyhBZGRyKSByZWxvY19hZGRyKSB7CisgIGlmIChFTEZXKFJfVFlQRSkocmVsLT5yX2luZm8pID09IFJfR0VORVJJQ19SRUxBVElWRSB8fAorICAgICAgRUxGVyhSX1RZUEUpKHJlbC0+cl9pbmZvKSA9PSBSX0dFTkVSSUNfSVJFTEFUSVZFKSB7CisgICAgcmV0dXJuICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvY19hZGRyKTsKKyAgfQorICByZXR1cm4gMDsKK30KKyNlbmRpZgorCit0ZW1wbGF0ZTx0eXBlbmFtZSBFbGZSZWxJdGVyYXRvclQ+Citib29sIHNvaW5mbzo6cmVsb2NhdGUoY29uc3QgVmVyc2lvblRyYWNrZXImIHZlcnNpb25fdHJhY2tlciwgRWxmUmVsSXRlcmF0b3JUJiYgcmVsX2l0ZXJhdG9yLAorICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNvaW5mb19saXN0X3QmIGdsb2JhbF9ncm91cCwgY29uc3Qgc29pbmZvX2xpc3RfdCYgbG9jYWxfZ3JvdXApIHsKKyAgZm9yIChzaXplX3QgaWR4ID0gMDsgcmVsX2l0ZXJhdG9yLmhhc19uZXh0KCk7ICsraWR4KSB7CisgICAgY29uc3QgYXV0byByZWwgPSByZWxfaXRlcmF0b3IubmV4dCgpOworICAgIGlmIChyZWwgPT0gbnVsbHB0cikgeworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIEVsZlcoV29yZCkgdHlwZSA9IEVMRlcoUl9UWVBFKShyZWwtPnJfaW5mbyk7CisgICAgRWxmVyhXb3JkKSBzeW0gPSBFTEZXKFJfU1lNKShyZWwtPnJfaW5mbyk7CisKKyAgICBFbGZXKEFkZHIpIHJlbG9jID0gc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4ocmVsLT5yX29mZnNldCArIGxvYWRfYmlhcyk7CiAgICAgRWxmVyhBZGRyKSBzeW1fYWRkciA9IDA7CiAgICAgY29uc3QgY2hhciogc3ltX25hbWUgPSBudWxscHRyOworICAgIEVsZlcoQWRkcikgYWRkZW5kID0gZ2V0X2FkZGVuZChyZWwsIHJlbG9jKTsKIAotICAgIERFQlVHKCJQcm9jZXNzaW5nICclcycgcmVsb2NhdGlvbiBhdCBpbmRleCAlemQiLCBuYW1lLCBpZHgpOwotICAgIGlmICh0eXBlID09IDApIHsgLy8gUl8qX05PTkUKKyAgICBERUJVRygiUHJvY2Vzc2luZyAnJXMnIHJlbG9jYXRpb24gYXQgaW5kZXggJXpkIiwgZ2V0X3NvbmFtZSgpLCBpZHgpOworICAgIGlmICh0eXBlID09IFJfR0VORVJJQ19OT05FKSB7CiAgICAgICBjb250aW51ZTsKICAgICB9CiAKLSAgICBFbGZXKFN5bSkqIHMgPSBudWxscHRyOworICAgIGNvbnN0IEVsZlcoU3ltKSogcyA9IG51bGxwdHI7CiAgICAgc29pbmZvKiBsc2kgPSBudWxscHRyOwogCiAgICAgaWYgKHN5bSAhPSAwKSB7Ci0gICAgICBzeW1fbmFtZSA9IGdldF9zdHJpbmcoc3ltdGFiW3N5bV0uc3RfbmFtZSk7Ci0gICAgICBzID0gc29pbmZvX2RvX2xvb2t1cCh0aGlzLCBzeW1fbmFtZSwgJmxzaSk7CisgICAgICBzeW1fbmFtZSA9IGdldF9zdHJpbmcoc3ltdGFiX1tzeW1dLnN0X25hbWUpOworICAgICAgY29uc3QgdmVyc2lvbl9pbmZvKiB2aSA9IG51bGxwdHI7CisKKyAgICAgIGlmICghbG9va3VwX3ZlcnNpb25faW5mbyh2ZXJzaW9uX3RyYWNrZXIsIHN5bSwgc3ltX25hbWUsICZ2aSkpIHsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgfQorCisgICAgICBpZiAoIXNvaW5mb19kb19sb29rdXAodGhpcywgc3ltX25hbWUsIHZpLCAmbHNpLCBnbG9iYWxfZ3JvdXAsIGxvY2FsX2dyb3VwLCAmcykpIHsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgfQorCiAgICAgICBpZiAocyA9PSBudWxscHRyKSB7CiAgICAgICAgIC8vIFdlIG9ubHkgYWxsb3cgYW4gdW5kZWZpbmVkIHN5bWJvbCBpZiB0aGlzIGlzIGEgd2VhayByZWZlcmVuY2UuLi4KLSAgICAgICAgcyA9ICZzeW10YWJbc3ltXTsKKyAgICAgICAgcyA9ICZzeW10YWJfW3N5bV07CiAgICAgICAgIGlmIChFTEZfU1RfQklORChzLT5zdF9pbmZvKSAhPSBTVEJfV0VBSykgewotICAgICAgICAgIERMX0VSUigiY2Fubm90IGxvY2F0ZSBzeW1ib2wgXCIlc1wiIHJlZmVyZW5jZWQgYnkgXCIlc1wiLi4uIiwgc3ltX25hbWUsIG5hbWUpOwotICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICBETF9FUlIoImNhbm5vdCBsb2NhdGUgc3ltYm9sIFwiJXNcIiByZWZlcmVuY2VkIGJ5IFwiJXNcIi4uLiIsIHN5bV9uYW1lLCBnZXRfc29uYW1lKCkpOworICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIElISTAwNDRDIEFBRUxGIDQuNS4xLjE6CkBAIC0xMTE5LDM2ICsxODIyLDQwIEBACiAgICAgICAgICAqLwogCiAgICAgICAgIHN3aXRjaCAodHlwZSkgeworICAgICAgICAgIGNhc2UgUl9HRU5FUklDX0pVTVBfU0xPVDoKKyAgICAgICAgICBjYXNlIFJfR0VORVJJQ19HTE9CX0RBVDoKKyAgICAgICAgICBjYXNlIFJfR0VORVJJQ19SRUxBVElWRToKKyAgICAgICAgICBjYXNlIFJfR0VORVJJQ19JUkVMQVRJVkU6CiAjaWYgZGVmaW5lZChfX2FhcmNoNjRfXykKLSAgICAgICAgICBjYXNlIFJfQUFSQ0g2NF9KVU1QX1NMT1Q6Ci0gICAgICAgICAgY2FzZSBSX0FBUkNINjRfR0xPQl9EQVQ6CiAgICAgICAgICAgY2FzZSBSX0FBUkNINjRfQUJTNjQ6CiAgICAgICAgICAgY2FzZSBSX0FBUkNINjRfQUJTMzI6CiAgICAgICAgICAgY2FzZSBSX0FBUkNINjRfQUJTMTY6Ci0gICAgICAgICAgY2FzZSBSX0FBUkNINjRfUkVMQVRJVkU6Ci0gICAgICAgICAgY2FzZSBSX0FBUkNINjRfSVJFTEFUSVZFOgorI2VsaWYgZGVmaW5lZChfX3g4Nl82NF9fKQorICAgICAgICAgIGNhc2UgUl9YODZfNjRfMzI6CisgICAgICAgICAgY2FzZSBSX1g4Nl82NF82NDoKKyNlbGlmIGRlZmluZWQoX19hcm1fXykKKyAgICAgICAgICBjYXNlIFJfQVJNX0FCUzMyOgorI2VsaWYgZGVmaW5lZChfX2kzODZfXykKKyAgICAgICAgICBjYXNlIFJfMzg2XzMyOgorI2VuZGlmCiAgICAgICAgICAgICAvKgogICAgICAgICAgICAgICogVGhlIHN5bV9hZGRyIHdhcyBpbml0aWFsaXplZCB0byBiZSB6ZXJvIGFib3ZlLCBvciB0aGUgcmVsb2NhdGlvbgogICAgICAgICAgICAgICogY29kZSBiZWxvdyBkb2VzIG5vdCBjYXJlIGFib3V0IHZhbHVlIG9mIHN5bV9hZGRyLgogICAgICAgICAgICAgICogTm8gbmVlZCB0byBkbyBhbnl0aGluZy4KICAgICAgICAgICAgICAqLwogICAgICAgICAgICAgYnJlYWs7Ci0jZWxpZiBkZWZpbmVkKF9feDg2XzY0X18pCi0gICAgICAgICAgY2FzZSBSX1g4Nl82NF9KVU1QX1NMT1Q6Ci0gICAgICAgICAgY2FzZSBSX1g4Nl82NF9HTE9CX0RBVDoKLSAgICAgICAgICBjYXNlIFJfWDg2XzY0XzMyOgotICAgICAgICAgIGNhc2UgUl9YODZfNjRfNjQ6Ci0gICAgICAgICAgY2FzZSBSX1g4Nl82NF9SRUxBVElWRToKLSAgICAgICAgICBjYXNlIFJfWDg2XzY0X0lSRUxBVElWRToKLSAgICAgICAgICAgIC8vIE5vIG5lZWQgdG8gZG8gYW55dGhpbmcuCi0gICAgICAgICAgICBicmVhazsKKyNpZiBkZWZpbmVkKF9feDg2XzY0X18pCiAgICAgICAgICAgY2FzZSBSX1g4Nl82NF9QQzMyOgogICAgICAgICAgICAgc3ltX2FkZHIgPSByZWxvYzsKICAgICAgICAgICAgIGJyZWFrOworI2VsaWYgZGVmaW5lZChfX2kzODZfXykKKyAgICAgICAgICBjYXNlIFJfMzg2X1BDMzI6CisgICAgICAgICAgICBzeW1fYWRkciA9IHJlbG9jOworICAgICAgICAgICAgYnJlYWs7CiAjZW5kaWYKICAgICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgRExfRVJSKCJ1bmtub3duIHdlYWsgcmVsb2MgdHlwZSAlZCBAICVwICglenUpIiwgdHlwZSwgcmVsYSwgaWR4KTsKLSAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIERMX0VSUigidW5rbm93biB3ZWFrIHJlbG9jIHR5cGUgJWQgQCAlcCAoJXp1KSIsIHR5cGUsIHJlbCwgaWR4KTsKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQogICAgICAgfSBlbHNlIHsKICAgICAgICAgLy8gV2UgZ290IGEgZGVmaW5pdGlvbi4KQEAgLTExNTgsMjk5ICsxODY1LDE3NiBAQAogICAgIH0KIAogICAgIHN3aXRjaCAodHlwZSkgeworICAgICAgY2FzZSBSX0dFTkVSSUNfSlVNUF9TTE9UOgorICAgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY0Fic29sdXRlKTsKKyAgICAgICAgTUFSSyhyZWwtPnJfb2Zmc2V0KTsKKyAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBKTVBfU0xPVCAlMTZwIDwtICUxNnAgJXNcbiIsCisgICAgICAgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocmVsb2MpLAorICAgICAgICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHN5bV9hZGRyICsgYWRkZW5kKSwgc3ltX25hbWUpOworCisgICAgICAgICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYykgPSAoc3ltX2FkZHIgKyBhZGRlbmQpOworICAgICAgICBicmVhazsKKyAgICAgIGNhc2UgUl9HRU5FUklDX0dMT0JfREFUOgorICAgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY0Fic29sdXRlKTsKKyAgICAgICAgTUFSSyhyZWwtPnJfb2Zmc2V0KTsKKyAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBHTE9CX0RBVCAlMTZwIDwtICUxNnAgJXNcbiIsCisgICAgICAgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocmVsb2MpLAorICAgICAgICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHN5bV9hZGRyICsgYWRkZW5kKSwgc3ltX25hbWUpOworICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpID0gKHN5bV9hZGRyICsgYWRkZW5kKTsKKyAgICAgICAgYnJlYWs7CisgICAgICBjYXNlIFJfR0VORVJJQ19SRUxBVElWRToKKyAgICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NSZWxhdGl2ZSk7CisgICAgICAgIE1BUksocmVsLT5yX29mZnNldCk7CisgICAgICAgIFRSQUNFX1RZUEUoUkVMTywgIlJFTE8gUkVMQVRJVkUgJTE2cCA8LSAlMTZwXG4iLAorICAgICAgICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHJlbG9jKSwKKyAgICAgICAgICAgICAgICAgICByZWludGVycHJldF9jYXN0PHZvaWQqPihsb2FkX2JpYXMgKyBhZGRlbmQpKTsKKyAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSA9IChsb2FkX2JpYXMgKyBhZGRlbmQpOworICAgICAgICBicmVhazsKKyAgICAgIGNhc2UgUl9HRU5FUklDX0lSRUxBVElWRToKKyAgICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NSZWxhdGl2ZSk7CisgICAgICAgIE1BUksocmVsLT5yX29mZnNldCk7CisgICAgICAgIFRSQUNFX1RZUEUoUkVMTywgIlJFTE8gSVJFTEFUSVZFICUxNnAgPC0gJTE2cFxuIiwKKyAgICAgICAgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocmVsb2MpLAorICAgICAgICAgICAgICAgICAgICByZWludGVycHJldF9jYXN0PHZvaWQqPihsb2FkX2JpYXMgKyBhZGRlbmQpKTsKKyAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSA9IGNhbGxfaWZ1bmNfcmVzb2x2ZXIobG9hZF9iaWFzICsgYWRkZW5kKTsKKyAgICAgICAgYnJlYWs7CisKICNpZiBkZWZpbmVkKF9fYWFyY2g2NF9fKQotICAgICAgY2FzZSBSX0FBUkNINjRfSlVNUF9TTE9UOgotICAgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY0Fic29sdXRlKTsKLSAgICAgICAgTUFSSyhyZWxhLT5yX29mZnNldCk7Ci0gICAgICAgIFRSQUNFX1RZUEUoUkVMTywgIlJFTE8gSk1QX1NMT1QgJTE2bGx4IDwtICUxNmxseCAlc1xuIiwKLSAgICAgICAgICAgICAgICAgICByZWxvYywgKHN5bV9hZGRyICsgcmVsYS0+cl9hZGRlbmQpLCBzeW1fbmFtZSk7Ci0gICAgICAgICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYykgPSAoc3ltX2FkZHIgKyByZWxhLT5yX2FkZGVuZCk7Ci0gICAgICAgIGJyZWFrOwotICAgICAgY2FzZSBSX0FBUkNINjRfR0xPQl9EQVQ6Ci0gICAgICAgIGNvdW50X3JlbG9jYXRpb24oa1JlbG9jQWJzb2x1dGUpOwotICAgICAgICBNQVJLKHJlbGEtPnJfb2Zmc2V0KTsKLSAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBHTE9CX0RBVCAlMTZsbHggPC0gJTE2bGx4ICVzXG4iLAotICAgICAgICAgICAgICAgICAgIHJlbG9jLCAoc3ltX2FkZHIgKyByZWxhLT5yX2FkZGVuZCksIHN5bV9uYW1lKTsKLSAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSA9IChzeW1fYWRkciArIHJlbGEtPnJfYWRkZW5kKTsKLSAgICAgICAgYnJlYWs7CiAgICAgICBjYXNlIFJfQUFSQ0g2NF9BQlM2NDoKICAgICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NBYnNvbHV0ZSk7Ci0gICAgICAgIE1BUksocmVsYS0+cl9vZmZzZXQpOworICAgICAgICBNQVJLKHJlbC0+cl9vZmZzZXQpOwogICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIEFCUzY0ICUxNmxseCA8LSAlMTZsbHggJXNcbiIsCi0gICAgICAgICAgICAgICAgICAgcmVsb2MsIChzeW1fYWRkciArIHJlbGEtPnJfYWRkZW5kKSwgc3ltX25hbWUpOwotICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9IChzeW1fYWRkciArIHJlbGEtPnJfYWRkZW5kKTsKKyAgICAgICAgICAgICAgICAgICByZWxvYywgKHN5bV9hZGRyICsgYWRkZW5kKSwgc3ltX25hbWUpOworICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9IChzeW1fYWRkciArIGFkZGVuZCk7CiAgICAgICAgIGJyZWFrOwogICAgICAgY2FzZSBSX0FBUkNINjRfQUJTMzI6CiAgICAgICAgIGNvdW50X3JlbG9jYXRpb24oa1JlbG9jQWJzb2x1dGUpOwotICAgICAgICBNQVJLKHJlbGEtPnJfb2Zmc2V0KTsKKyAgICAgICAgTUFSSyhyZWwtPnJfb2Zmc2V0KTsKICAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBBQlMzMiAlMTZsbHggPC0gJTE2bGx4ICVzXG4iLAotICAgICAgICAgICAgICAgICAgIHJlbG9jLCAoc3ltX2FkZHIgKyByZWxhLT5yX2FkZGVuZCksIHN5bV9uYW1lKTsKLSAgICAgICAgaWYgKChzdGF0aWNfY2FzdDxFbGZXKEFkZHIpPihJTlQzMl9NSU4pIDw9ICgqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICsgKHN5bV9hZGRyICsgcmVsYS0+cl9hZGRlbmQpKSkgJiYKLSAgICAgICAgICAgICgoKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSArIChzeW1fYWRkciArIHJlbGEtPnJfYWRkZW5kKSkgPD0gc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oVUlOVDMyX01BWCkpKSB7Ci0gICAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSArPSAoc3ltX2FkZHIgKyByZWxhLT5yX2FkZGVuZCk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgRExfRVJSKCIweCUwMTZsbHggb3V0IG9mIHJhbmdlIDB4JTAxNmxseCB0byAweCUwMTZsbHgiLAotICAgICAgICAgICAgICAgICAoKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSArIChzeW1fYWRkciArIHJlbGEtPnJfYWRkZW5kKSksCi0gICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PEVsZlcoQWRkcik+KElOVDMyX01JTiksCi0gICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PEVsZlcoQWRkcik+KFVJTlQzMl9NQVgpKTsKLSAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgICAgICAgICAgICAgcmVsb2MsIChzeW1fYWRkciArIGFkZGVuZCksIHN5bV9uYW1lKTsKKyAgICAgICAgeworICAgICAgICAgIGNvbnN0IEVsZlcoQWRkcikgcmVsb2NfdmFsdWUgPSAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpOworICAgICAgICAgIGNvbnN0IEVsZlcoQWRkcikgbWluX3ZhbHVlID0gc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oSU5UMzJfTUlOKTsKKyAgICAgICAgICBjb25zdCBFbGZXKEFkZHIpIG1heF92YWx1ZSA9IHN0YXRpY19jYXN0PEVsZlcoQWRkcik+KFVJTlQzMl9NQVgpOworICAgICAgICAgIGlmICgobWluX3ZhbHVlIDw9IChyZWxvY192YWx1ZSArIChzeW1fYWRkciArIGFkZGVuZCkpKSAmJgorICAgICAgICAgICAgICAoKHJlbG9jX3ZhbHVlICsgKHN5bV9hZGRyICsgYWRkZW5kKSkgPD0gbWF4X3ZhbHVlKSkgeworICAgICAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSArPSAoc3ltX2FkZHIgKyBhZGRlbmQpOworICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBETF9FUlIoIjB4JTAxNmxseCBvdXQgb2YgcmFuZ2UgMHglMDE2bGx4IHRvIDB4JTAxNmxseCIsCisgICAgICAgICAgICAgICAgICAgKHJlbG9jX3ZhbHVlICsgKHN5bV9hZGRyICsgYWRkZW5kKSksIG1pbl92YWx1ZSwgbWF4X3ZhbHVlKTsKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgICBjYXNlIFJfQUFSQ0g2NF9BQlMxNjoKICAgICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NBYnNvbHV0ZSk7Ci0gICAgICAgIE1BUksocmVsYS0+cl9vZmZzZXQpOworICAgICAgICBNQVJLKHJlbC0+cl9vZmZzZXQpOwogICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIEFCUzE2ICUxNmxseCA8LSAlMTZsbHggJXNcbiIsCi0gICAgICAgICAgICAgICAgICAgcmVsb2MsIChzeW1fYWRkciArIHJlbGEtPnJfYWRkZW5kKSwgc3ltX25hbWUpOwotICAgICAgICBpZiAoKHN0YXRpY19jYXN0PEVsZlcoQWRkcik+KElOVDE2X01JTikgPD0gKCpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYykgKyAoc3ltX2FkZHIgKyByZWxhLT5yX2FkZGVuZCkpKSAmJgotICAgICAgICAgICAgKCgqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICsgKHN5bV9hZGRyICsgcmVsYS0+cl9hZGRlbmQpKSA8PSBzdGF0aWNfY2FzdDxFbGZXKEFkZHIpPihVSU5UMTZfTUFYKSkpIHsKLSAgICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9IChzeW1fYWRkciArIHJlbGEtPnJfYWRkZW5kKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICBETF9FUlIoIjB4JTAxNmxseCBvdXQgb2YgcmFuZ2UgMHglMDE2bGx4IHRvIDB4JTAxNmxseCIsCi0gICAgICAgICAgICAgICAgICgqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICsgKHN5bV9hZGRyICsgcmVsYS0+cl9hZGRlbmQpKSwKLSAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oSU5UMTZfTUlOKSwKLSAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oVUlOVDE2X01BWCkpOwotICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgICAgICAgICByZWxvYywgKHN5bV9hZGRyICsgYWRkZW5kKSwgc3ltX25hbWUpOworICAgICAgICB7CisgICAgICAgICAgY29uc3QgRWxmVyhBZGRyKSByZWxvY192YWx1ZSA9ICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYyk7CisgICAgICAgICAgY29uc3QgRWxmVyhBZGRyKSBtaW5fdmFsdWUgPSBzdGF0aWNfY2FzdDxFbGZXKEFkZHIpPihJTlQxNl9NSU4pOworICAgICAgICAgIGNvbnN0IEVsZlcoQWRkcikgbWF4X3ZhbHVlID0gc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oVUlOVDE2X01BWCk7CisgICAgICAgICAgaWYgKChtaW5fdmFsdWUgPD0gKHJlbG9jX3ZhbHVlICsgKHN5bV9hZGRyICsgYWRkZW5kKSkpICYmCisgICAgICAgICAgICAgICgocmVsb2NfdmFsdWUgKyAoc3ltX2FkZHIgKyBhZGRlbmQpKSA8PSBtYXhfdmFsdWUpKSB7CisgICAgICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9IChzeW1fYWRkciArIGFkZGVuZCk7CisgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIERMX0VSUigiMHglMDE2bGx4IG91dCBvZiByYW5nZSAweCUwMTZsbHggdG8gMHglMDE2bGx4IiwKKyAgICAgICAgICAgICAgICAgICByZWxvY192YWx1ZSArIChzeW1fYWRkciArIGFkZGVuZCksIG1pbl92YWx1ZSwgbWF4X3ZhbHVlKTsKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgICBjYXNlIFJfQUFSQ0g2NF9QUkVMNjQ6CiAgICAgICAgIGNvdW50X3JlbG9jYXRpb24oa1JlbG9jUmVsYXRpdmUpOwotICAgICAgICBNQVJLKHJlbGEtPnJfb2Zmc2V0KTsKKyAgICAgICAgTUFSSyhyZWwtPnJfb2Zmc2V0KTsKICAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBSRUw2NCAlMTZsbHggPC0gJTE2bGx4IC0gJTE2bGx4ICVzXG4iLAotICAgICAgICAgICAgICAgICAgIHJlbG9jLCAoc3ltX2FkZHIgKyByZWxhLT5yX2FkZGVuZCksIHJlbGEtPnJfb2Zmc2V0LCBzeW1fbmFtZSk7Ci0gICAgICAgICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYykgKz0gKHN5bV9hZGRyICsgcmVsYS0+cl9hZGRlbmQpIC0gcmVsYS0+cl9vZmZzZXQ7CisgICAgICAgICAgICAgICAgICAgcmVsb2MsIChzeW1fYWRkciArIGFkZGVuZCksIHJlbC0+cl9vZmZzZXQsIHN5bV9uYW1lKTsKKyAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSArPSAoc3ltX2FkZHIgKyBhZGRlbmQpIC0gcmVsLT5yX29mZnNldDsKICAgICAgICAgYnJlYWs7CiAgICAgICBjYXNlIFJfQUFSQ0g2NF9QUkVMMzI6CiAgICAgICAgIGNvdW50X3JlbG9jYXRpb24oa1JlbG9jUmVsYXRpdmUpOwotICAgICAgICBNQVJLKHJlbGEtPnJfb2Zmc2V0KTsKKyAgICAgICAgTUFSSyhyZWwtPnJfb2Zmc2V0KTsKICAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBSRUwzMiAlMTZsbHggPC0gJTE2bGx4IC0gJTE2bGx4ICVzXG4iLAotICAgICAgICAgICAgICAgICAgIHJlbG9jLCAoc3ltX2FkZHIgKyByZWxhLT5yX2FkZGVuZCksIHJlbGEtPnJfb2Zmc2V0LCBzeW1fbmFtZSk7Ci0gICAgICAgIGlmICgoc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oSU5UMzJfTUlOKSA8PSAoKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSArICgoc3ltX2FkZHIgKyByZWxhLT5yX2FkZGVuZCkgLSByZWxhLT5yX29mZnNldCkpKSAmJgotICAgICAgICAgICAgKCgqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICsgKChzeW1fYWRkciArIHJlbGEtPnJfYWRkZW5kKSAtIHJlbGEtPnJfb2Zmc2V0KSkgPD0gc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oVUlOVDMyX01BWCkpKSB7Ci0gICAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSArPSAoKHN5bV9hZGRyICsgcmVsYS0+cl9hZGRlbmQpIC0gcmVsYS0+cl9vZmZzZXQpOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgIERMX0VSUigiMHglMDE2bGx4IG91dCBvZiByYW5nZSAweCUwMTZsbHggdG8gMHglMDE2bGx4IiwKLSAgICAgICAgICAgICAgICAgKCpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYykgKyAoKHN5bV9hZGRyICsgcmVsYS0+cl9hZGRlbmQpIC0gcmVsYS0+cl9vZmZzZXQpKSwKLSAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oSU5UMzJfTUlOKSwKLSAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oVUlOVDMyX01BWCkpOwotICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgICAgICAgICByZWxvYywgKHN5bV9hZGRyICsgYWRkZW5kKSwgcmVsLT5yX29mZnNldCwgc3ltX25hbWUpOworICAgICAgICB7CisgICAgICAgICAgY29uc3QgRWxmVyhBZGRyKSByZWxvY192YWx1ZSA9ICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYyk7CisgICAgICAgICAgY29uc3QgRWxmVyhBZGRyKSBtaW5fdmFsdWUgPSBzdGF0aWNfY2FzdDxFbGZXKEFkZHIpPihJTlQzMl9NSU4pOworICAgICAgICAgIGNvbnN0IEVsZlcoQWRkcikgbWF4X3ZhbHVlID0gc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oVUlOVDMyX01BWCk7CisgICAgICAgICAgaWYgKChtaW5fdmFsdWUgPD0gKHJlbG9jX3ZhbHVlICsgKChzeW1fYWRkciArIGFkZGVuZCkgLSByZWwtPnJfb2Zmc2V0KSkpICYmCisgICAgICAgICAgICAgICgocmVsb2NfdmFsdWUgKyAoKHN5bV9hZGRyICsgYWRkZW5kKSAtIHJlbC0+cl9vZmZzZXQpKSA8PSBtYXhfdmFsdWUpKSB7CisgICAgICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9ICgoc3ltX2FkZHIgKyBhZGRlbmQpIC0gcmVsLT5yX29mZnNldCk7CisgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIERMX0VSUigiMHglMDE2bGx4IG91dCBvZiByYW5nZSAweCUwMTZsbHggdG8gMHglMDE2bGx4IiwKKyAgICAgICAgICAgICAgICAgICByZWxvY192YWx1ZSArICgoc3ltX2FkZHIgKyBhZGRlbmQpIC0gcmVsLT5yX29mZnNldCksIG1pbl92YWx1ZSwgbWF4X3ZhbHVlKTsKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgICBjYXNlIFJfQUFSQ0g2NF9QUkVMMTY6CiAgICAgICAgIGNvdW50X3JlbG9jYXRpb24oa1JlbG9jUmVsYXRpdmUpOwotICAgICAgICBNQVJLKHJlbGEtPnJfb2Zmc2V0KTsKKyAgICAgICAgTUFSSyhyZWwtPnJfb2Zmc2V0KTsKICAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBSRUwxNiAlMTZsbHggPC0gJTE2bGx4IC0gJTE2bGx4ICVzXG4iLAotICAgICAgICAgICAgICAgICAgIHJlbG9jLCAoc3ltX2FkZHIgKyByZWxhLT5yX2FkZGVuZCksIHJlbGEtPnJfb2Zmc2V0LCBzeW1fbmFtZSk7Ci0gICAgICAgIGlmICgoc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oSU5UMTZfTUlOKSA8PSAoKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSArICgoc3ltX2FkZHIgKyByZWxhLT5yX2FkZGVuZCkgLSByZWxhLT5yX29mZnNldCkpKSAmJgotICAgICAgICAgICAgKCgqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICsgKChzeW1fYWRkciArIHJlbGEtPnJfYWRkZW5kKSAtIHJlbGEtPnJfb2Zmc2V0KSkgPD0gc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oVUlOVDE2X01BWCkpKSB7Ci0gICAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSArPSAoKHN5bV9hZGRyICsgcmVsYS0+cl9hZGRlbmQpIC0gcmVsYS0+cl9vZmZzZXQpOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgIERMX0VSUigiMHglMDE2bGx4IG91dCBvZiByYW5nZSAweCUwMTZsbHggdG8gMHglMDE2bGx4IiwKLSAgICAgICAgICAgICAgICAgKCpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYykgKyAoKHN5bV9hZGRyICsgcmVsYS0+cl9hZGRlbmQpIC0gcmVsYS0+cl9vZmZzZXQpKSwKLSAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oSU5UMTZfTUlOKSwKLSAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oVUlOVDE2X01BWCkpOwotICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgICAgICAgICByZWxvYywgKHN5bV9hZGRyICsgYWRkZW5kKSwgcmVsLT5yX29mZnNldCwgc3ltX25hbWUpOworICAgICAgICB7CisgICAgICAgICAgY29uc3QgRWxmVyhBZGRyKSByZWxvY192YWx1ZSA9ICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYyk7CisgICAgICAgICAgY29uc3QgRWxmVyhBZGRyKSBtaW5fdmFsdWUgPSBzdGF0aWNfY2FzdDxFbGZXKEFkZHIpPihJTlQxNl9NSU4pOworICAgICAgICAgIGNvbnN0IEVsZlcoQWRkcikgbWF4X3ZhbHVlID0gc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4oVUlOVDE2X01BWCk7CisgICAgICAgICAgaWYgKChtaW5fdmFsdWUgPD0gKHJlbG9jX3ZhbHVlICsgKChzeW1fYWRkciArIGFkZGVuZCkgLSByZWwtPnJfb2Zmc2V0KSkpICYmCisgICAgICAgICAgICAgICgocmVsb2NfdmFsdWUgKyAoKHN5bV9hZGRyICsgYWRkZW5kKSAtIHJlbC0+cl9vZmZzZXQpKSA8PSBtYXhfdmFsdWUpKSB7CisgICAgICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9ICgoc3ltX2FkZHIgKyBhZGRlbmQpIC0gcmVsLT5yX29mZnNldCk7CisgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIERMX0VSUigiMHglMDE2bGx4IG91dCBvZiByYW5nZSAweCUwMTZsbHggdG8gMHglMDE2bGx4IiwKKyAgICAgICAgICAgICAgICAgICByZWxvY192YWx1ZSArICgoc3ltX2FkZHIgKyBhZGRlbmQpIC0gcmVsLT5yX29mZnNldCksIG1pbl92YWx1ZSwgbWF4X3ZhbHVlKTsKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAKLSAgICAgIGNhc2UgUl9BQVJDSDY0X1JFTEFUSVZFOgotICAgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY1JlbGF0aXZlKTsKLSAgICAgICAgTUFSSyhyZWxhLT5yX29mZnNldCk7Ci0gICAgICAgIGlmIChzeW0pIHsKLSAgICAgICAgICBETF9FUlIoIm9kZCBSRUxBVElWRSBmb3JtLi4uIik7Ci0gICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICB9Ci0gICAgICAgIFRSQUNFX1RZUEUoUkVMTywgIlJFTE8gUkVMQVRJVkUgJTE2bGx4IDwtICUxNmxseFxuIiwKLSAgICAgICAgICAgICAgICAgICByZWxvYywgKGJhc2UgKyByZWxhLT5yX2FkZGVuZCkpOwotICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpID0gKGJhc2UgKyByZWxhLT5yX2FkZGVuZCk7Ci0gICAgICAgIGJyZWFrOwotCi0gICAgICBjYXNlIFJfQUFSQ0g2NF9JUkVMQVRJVkU6Ci0gICAgICAgIGNvdW50X3JlbG9jYXRpb24oa1JlbG9jUmVsYXRpdmUpOwotICAgICAgICBNQVJLKHJlbGEtPnJfb2Zmc2V0KTsKLSAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBJUkVMQVRJVkUgJTE2bGx4IDwtICUxNmxseFxuIiwgcmVsb2MsIChiYXNlICsgcmVsYS0+cl9hZGRlbmQpKTsKLSAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSA9IGNhbGxfaWZ1bmNfcmVzb2x2ZXIoYmFzZSArIHJlbGEtPnJfYWRkZW5kKTsKLSAgICAgICAgYnJlYWs7Ci0KICAgICAgIGNhc2UgUl9BQVJDSDY0X0NPUFk6CiAgICAgICAgIC8qCiAgICAgICAgICAqIEVUX0VYRUMgaXMgbm90IHN1cHBvcnRlZCBzbyB0aGlzIHNob3VsZCBub3QgaGFwcGVuLgogICAgICAgICAgKgotICAgICAgICAgKiBodHRwOi8vaW5mb2NlbnRlci5hcm0uY29tL2hlbHAvdG9waWMvY29tLmFybS5kb2MuaWhpMDA0NGQvSUhJMDA0NERfYWFlbGYucGRmCisgICAgICAgICAqIGh0dHA6Ly9pbmZvY2VudGVyLmFybS5jb20vaGVscC90b3BpYy9jb20uYXJtLmRvYy5paGkwMDU2Yi9JSEkwMDU2Ql9hYWVsZjY0LnBkZgogICAgICAgICAgKgotICAgICAgICAgKiBTZWN0aW9uIDQuNy4xLjEwICJEeW5hbWljIHJlbG9jYXRpb25zIgorICAgICAgICAgKiBTZWN0aW9uIDQuNi4xMSAiRHluYW1pYyByZWxvY2F0aW9ucyIKICAgICAgICAgICogUl9BQVJDSDY0X0NPUFkgbWF5IG9ubHkgYXBwZWFyIGluIGV4ZWN1dGFibGUgb2JqZWN0cyB3aGVyZSBlX3R5cGUgaXMKICAgICAgICAgICogc2V0IHRvIEVUX0VYRUMuCiAgICAgICAgICAqLwotICAgICAgICBETF9FUlIoIiVzIFJfQUFSQ0g2NF9DT1BZIHJlbG9jYXRpb25zIGFyZSBub3Qgc3VwcG9ydGVkIiwgbmFtZSk7Ci0gICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgRExfRVJSKCIlcyBSX0FBUkNINjRfQ09QWSByZWxvY2F0aW9ucyBhcmUgbm90IHN1cHBvcnRlZCIsIGdldF9zb25hbWUoKSk7CisgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgIGNhc2UgUl9BQVJDSDY0X1RMU19UUFJFTDY0OgogICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIFRMU19UUFJFTDY0ICoqKiAlMTZsbHggPC0gJTE2bGx4IC0gJTE2bGx4XG4iLAotICAgICAgICAgICAgICAgICAgIHJlbG9jLCAoc3ltX2FkZHIgKyByZWxhLT5yX2FkZGVuZCksIHJlbGEtPnJfb2Zmc2V0KTsKKyAgICAgICAgICAgICAgICAgICByZWxvYywgKHN5bV9hZGRyICsgYWRkZW5kKSwgcmVsLT5yX29mZnNldCk7CiAgICAgICAgIGJyZWFrOwogICAgICAgY2FzZSBSX0FBUkNINjRfVExTX0RUUFJFTDMyOgogICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIFRMU19EVFBSRUwzMiAqKiogJTE2bGx4IDwtICUxNmxseCAtICUxNmxseFxuIiwKLSAgICAgICAgICAgICAgICAgICByZWxvYywgKHN5bV9hZGRyICsgcmVsYS0+cl9hZGRlbmQpLCByZWxhLT5yX29mZnNldCk7CisgICAgICAgICAgICAgICAgICAgcmVsb2MsIChzeW1fYWRkciArIGFkZGVuZCksIHJlbC0+cl9vZmZzZXQpOwogICAgICAgICBicmVhazsKICNlbGlmIGRlZmluZWQoX194ODZfNjRfXykKLSAgICAgIGNhc2UgUl9YODZfNjRfSlVNUF9TTE9UOgotICAgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY0Fic29sdXRlKTsKLSAgICAgICAgTUFSSyhyZWxhLT5yX29mZnNldCk7Ci0gICAgICAgIFRSQUNFX1RZUEUoUkVMTywgIlJFTE8gSk1QX1NMT1QgJTA4enggPC0gJTA4enggJXMiLCBzdGF0aWNfY2FzdDxzaXplX3Q+KHJlbG9jKSwKLSAgICAgICAgICAgICAgICAgICBzdGF0aWNfY2FzdDxzaXplX3Q+KHN5bV9hZGRyICsgcmVsYS0+cl9hZGRlbmQpLCBzeW1fbmFtZSk7Ci0gICAgICAgICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYykgPSBzeW1fYWRkciArIHJlbGEtPnJfYWRkZW5kOwotICAgICAgICBicmVhazsKLSAgICAgIGNhc2UgUl9YODZfNjRfR0xPQl9EQVQ6Ci0gICAgICAgIGNvdW50X3JlbG9jYXRpb24oa1JlbG9jQWJzb2x1dGUpOwotICAgICAgICBNQVJLKHJlbGEtPnJfb2Zmc2V0KTsKLSAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBHTE9CX0RBVCAlMDh6eCA8LSAlMDh6eCAlcyIsIHN0YXRpY19jYXN0PHNpemVfdD4ocmVsb2MpLAotICAgICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PHNpemVfdD4oc3ltX2FkZHIgKyByZWxhLT5yX2FkZGVuZCksIHN5bV9uYW1lKTsKLSAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSA9IHN5bV9hZGRyICsgcmVsYS0+cl9hZGRlbmQ7Ci0gICAgICAgIGJyZWFrOwotICAgICAgY2FzZSBSX1g4Nl82NF9SRUxBVElWRToKLSAgICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NSZWxhdGl2ZSk7Ci0gICAgICAgIE1BUksocmVsYS0+cl9vZmZzZXQpOwotICAgICAgICBpZiAoc3ltKSB7Ci0gICAgICAgICAgRExfRVJSKCJvZGQgUkVMQVRJVkUgZm9ybS4uLiIpOwotICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgfQotICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIFJFTEFUSVZFICUwOHp4IDwtICslMDh6eCIsIHN0YXRpY19jYXN0PHNpemVfdD4ocmVsb2MpLAotICAgICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PHNpemVfdD4oYmFzZSkpOwotICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpID0gYmFzZSArIHJlbGEtPnJfYWRkZW5kOwotICAgICAgICBicmVhazsKLSAgICAgIGNhc2UgUl9YODZfNjRfSVJFTEFUSVZFOgotICAgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY1JlbGF0aXZlKTsKLSAgICAgICAgTUFSSyhyZWxhLT5yX29mZnNldCk7Ci0gICAgICAgIFRSQUNFX1RZUEUoUkVMTywgIlJFTE8gSVJFTEFUSVZFICUxNmxseCA8LSAlMTZsbHhcbiIsIHJlbG9jLCAoYmFzZSArIHJlbGEtPnJfYWRkZW5kKSk7Ci0gICAgICAgICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYykgPSBjYWxsX2lmdW5jX3Jlc29sdmVyKGJhc2UgKyByZWxhLT5yX2FkZGVuZCk7Ci0gICAgICAgIGJyZWFrOwogICAgICAgY2FzZSBSX1g4Nl82NF8zMjoKICAgICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NSZWxhdGl2ZSk7Ci0gICAgICAgIE1BUksocmVsYS0+cl9vZmZzZXQpOworICAgICAgICBNQVJLKHJlbC0+cl9vZmZzZXQpOwogICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIFJfWDg2XzY0XzMyICUwOHp4IDwtICslMDh6eCAlcyIsIHN0YXRpY19jYXN0PHNpemVfdD4ocmVsb2MpLAogICAgICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PHNpemVfdD4oc3ltX2FkZHIpLCBzeW1fbmFtZSk7Ci0gICAgICAgICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYykgPSBzeW1fYWRkciArIHJlbGEtPnJfYWRkZW5kOworICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpID0gc3ltX2FkZHIgKyBhZGRlbmQ7CiAgICAgICAgIGJyZWFrOwogICAgICAgY2FzZSBSX1g4Nl82NF82NDoKICAgICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NSZWxhdGl2ZSk7Ci0gICAgICAgIE1BUksocmVsYS0+cl9vZmZzZXQpOworICAgICAgICBNQVJLKHJlbC0+cl9vZmZzZXQpOwogICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIFJfWDg2XzY0XzY0ICUwOHp4IDwtICslMDh6eCAlcyIsIHN0YXRpY19jYXN0PHNpemVfdD4ocmVsb2MpLAogICAgICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PHNpemVfdD4oc3ltX2FkZHIpLCBzeW1fbmFtZSk7Ci0gICAgICAgICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYykgPSBzeW1fYWRkciArIHJlbGEtPnJfYWRkZW5kOworICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpID0gc3ltX2FkZHIgKyBhZGRlbmQ7CiAgICAgICAgIGJyZWFrOwogICAgICAgY2FzZSBSX1g4Nl82NF9QQzMyOgogICAgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY1JlbGF0aXZlKTsKLSAgICAgICAgTUFSSyhyZWxhLT5yX29mZnNldCk7CisgICAgICAgIE1BUksocmVsLT5yX29mZnNldCk7CiAgICAgICAgIFRSQUNFX1RZUEUoUkVMTywgIlJFTE8gUl9YODZfNjRfUEMzMiAlMDh6eCA8LSArJTA4enggKCUwOHp4IC0gJTA4engpICVzIiwKICAgICAgICAgICAgICAgICAgICBzdGF0aWNfY2FzdDxzaXplX3Q+KHJlbG9jKSwgc3RhdGljX2Nhc3Q8c2l6ZV90PihzeW1fYWRkciAtIHJlbG9jKSwKICAgICAgICAgICAgICAgICAgICBzdGF0aWNfY2FzdDxzaXplX3Q+KHN5bV9hZGRyKSwgc3RhdGljX2Nhc3Q8c2l6ZV90PihyZWxvYyksIHN5bV9uYW1lKTsKLSAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSA9IHN5bV9hZGRyICsgcmVsYS0+cl9hZGRlbmQgLSByZWxvYzsKKyAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSA9IHN5bV9hZGRyICsgYWRkZW5kIC0gcmVsb2M7CiAgICAgICAgIGJyZWFrOwotI2VuZGlmCi0KLSAgICAgIGRlZmF1bHQ6Ci0gICAgICAgIERMX0VSUigidW5rbm93biByZWxvYyB0eXBlICVkIEAgJXAgKCV6dSkiLCB0eXBlLCByZWxhLCBpZHgpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotICB9Ci0gIHJldHVybiAwOwotfQotCi0jZWxzZSAvLyBSRUwsIG5vdCBSRUxBLgotaW50IHNvaW5mbzo6UmVsb2NhdGUoRWxmVyhSZWwpKiByZWwsIHVuc2lnbmVkIGNvdW50KSB7Ci0gIGZvciAoc2l6ZV90IGlkeCA9IDA7IGlkeCA8IGNvdW50OyArK2lkeCwgKytyZWwpIHsKLSAgICB1bnNpZ25lZCB0eXBlID0gRUxGVyhSX1RZUEUpKHJlbC0+cl9pbmZvKTsKLSAgICAvLyBUT0RPOiBkb24ndCB1c2UgdW5zaWduZWQgZm9yICdzeW0nLiBVc2UgdWludDMyX3Qgb3IgRWxmVyhBZGRyKSBpbnN0ZWFkLgotICAgIHVuc2lnbmVkIHN5bSA9IEVMRlcoUl9TWU0pKHJlbC0+cl9pbmZvKTsKLSAgICBFbGZXKEFkZHIpIHJlbG9jID0gc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4ocmVsLT5yX29mZnNldCArIGxvYWRfYmlhcyk7Ci0gICAgRWxmVyhBZGRyKSBzeW1fYWRkciA9IDA7Ci0gICAgY29uc3QgY2hhciogc3ltX25hbWUgPSBudWxscHRyOwotCi0gICAgREVCVUcoIlByb2Nlc3NpbmcgJyVzJyByZWxvY2F0aW9uIGF0IGluZGV4ICV6ZCIsIG5hbWUsIGlkeCk7Ci0gICAgaWYgKHR5cGUgPT0gMCkgeyAvLyBSXypfTk9ORQotICAgICAgY29udGludWU7Ci0gICAgfQotCi0gICAgRWxmVyhTeW0pKiBzID0gbnVsbHB0cjsKLSAgICBzb2luZm8qIGxzaSA9IG51bGxwdHI7Ci0KLSAgICBpZiAoc3ltICE9IDApIHsKLSAgICAgIHN5bV9uYW1lID0gZ2V0X3N0cmluZyhzeW10YWJbc3ltXS5zdF9uYW1lKTsKLSAgICAgIHMgPSBzb2luZm9fZG9fbG9va3VwKHRoaXMsIHN5bV9uYW1lLCAmbHNpKTsKLSAgICAgIGlmIChzID09IG51bGxwdHIpIHsKLSAgICAgICAgLy8gV2Ugb25seSBhbGxvdyBhbiB1bmRlZmluZWQgc3ltYm9sIGlmIHRoaXMgaXMgYSB3ZWFrIHJlZmVyZW5jZS4uLgotICAgICAgICBzID0gJnN5bXRhYltzeW1dOwotICAgICAgICBpZiAoRUxGX1NUX0JJTkQocy0+c3RfaW5mbykgIT0gU1RCX1dFQUspIHsKLSAgICAgICAgICBETF9FUlIoImNhbm5vdCBsb2NhdGUgc3ltYm9sIFwiJXNcIiByZWZlcmVuY2VkIGJ5IFwiJXNcIi4uLiIsIHN5bV9uYW1lLCBuYW1lKTsKLSAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIH0KLQotICAgICAgICAvKiBJSEkwMDQ0QyBBQUVMRiA0LjUuMS4xOgotCi0gICAgICAgICAgIExpYnJhcmllcyBhcmUgbm90IHNlYXJjaGVkIHRvIHJlc29sdmUgd2VhayByZWZlcmVuY2VzLgotICAgICAgICAgICBJdCBpcyBub3QgYW4gZXJyb3IgZm9yIGEgd2VhayByZWZlcmVuY2UgdG8gcmVtYWluCi0gICAgICAgICAgIHVuc2F0aXNmaWVkLgotCi0gICAgICAgICAgIER1cmluZyBsaW5raW5nLCB0aGUgdmFsdWUgb2YgYW4gdW5kZWZpbmVkIHdlYWsgcmVmZXJlbmNlIGlzOgotICAgICAgICAgICAtIFplcm8gaWYgdGhlIHJlbG9jYXRpb24gdHlwZSBpcyBhYnNvbHV0ZQotICAgICAgICAgICAtIFRoZSBhZGRyZXNzIG9mIHRoZSBwbGFjZSBpZiB0aGUgcmVsb2NhdGlvbiBpcyBwYy1yZWxhdGl2ZQotICAgICAgICAgICAtIFRoZSBhZGRyZXNzIG9mIG5vbWluYWwgYmFzZSBhZGRyZXNzIGlmIHRoZSByZWxvY2F0aW9uCi0gICAgICAgICAgICAgdHlwZSBpcyBiYXNlLXJlbGF0aXZlLgotICAgICAgICAqLwotCi0gICAgICAgIHN3aXRjaCAodHlwZSkgewotI2lmIGRlZmluZWQoX19hcm1fXykKLSAgICAgICAgICBjYXNlIFJfQVJNX0pVTVBfU0xPVDoKLSAgICAgICAgICBjYXNlIFJfQVJNX0dMT0JfREFUOgotICAgICAgICAgIGNhc2UgUl9BUk1fQUJTMzI6Ci0gICAgICAgICAgY2FzZSBSX0FSTV9SRUxBVElWRTogICAgLyogRG9uJ3QgY2FyZS4gKi8KLSAgICAgICAgICAgIC8vIHN5bV9hZGRyIHdhcyBpbml0aWFsaXplZCB0byBiZSB6ZXJvIGFib3ZlIG9yIHJlbG9jYXRpb24KLSAgICAgICAgICAgIC8vIGNvZGUgYmVsb3cgZG9lcyBub3QgY2FyZSBhYm91dCB2YWx1ZSBvZiBzeW1fYWRkci4KLSAgICAgICAgICAgIC8vIE5vIG5lZWQgdG8gZG8gYW55dGhpbmcuCi0gICAgICAgICAgICBicmVhazsKLSNlbGlmIGRlZmluZWQoX19pMzg2X18pCi0gICAgICAgICAgY2FzZSBSXzM4Nl9KTVBfU0xPVDoKLSAgICAgICAgICBjYXNlIFJfMzg2X0dMT0JfREFUOgotICAgICAgICAgIGNhc2UgUl8zODZfMzI6Ci0gICAgICAgICAgY2FzZSBSXzM4Nl9SRUxBVElWRTogICAgLyogRG9uJ3QgY2FyZS4gKi8KLSAgICAgICAgICBjYXNlIFJfMzg2X0lSRUxBVElWRToKLSAgICAgICAgICAgIC8vIHN5bV9hZGRyIHdhcyBpbml0aWFsaXplZCB0byBiZSB6ZXJvIGFib3ZlIG9yIHJlbG9jYXRpb24KLSAgICAgICAgICAgIC8vIGNvZGUgYmVsb3cgZG9lcyBub3QgY2FyZSBhYm91dCB2YWx1ZSBvZiBzeW1fYWRkci4KLSAgICAgICAgICAgIC8vIE5vIG5lZWQgdG8gZG8gYW55dGhpbmcuCi0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgICBjYXNlIFJfMzg2X1BDMzI6Ci0gICAgICAgICAgICBzeW1fYWRkciA9IHJlbG9jOwotICAgICAgICAgICAgYnJlYWs7Ci0jZW5kaWYKLQotI2lmIGRlZmluZWQoX19hcm1fXykKLSAgICAgICAgICBjYXNlIFJfQVJNX0NPUFk6Ci0gICAgICAgICAgICAvLyBGYWxsIHRocm91Z2guIENhbid0IHJlYWxseSBjb3B5IGlmIHdlYWsgc3ltYm9sIGlzIG5vdCBmb3VuZCBhdCBydW4tdGltZS4KLSNlbmRpZgotICAgICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICBETF9FUlIoInVua25vd24gd2VhayByZWxvYyB0eXBlICVkIEAgJXAgKCV6dSkiLCB0eXBlLCByZWwsIGlkeCk7Ci0gICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIH0KLSAgICAgIH0gZWxzZSB7Ci0gICAgICAgIC8vIFdlIGdvdCBhIGRlZmluaXRpb24uCi0gICAgICAgIHN5bV9hZGRyID0gbHNpLT5yZXNvbHZlX3N5bWJvbF9hZGRyZXNzKHMpOwotICAgICAgfQotICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NTeW1ib2wpOwotICAgIH0KLQotICAgIHN3aXRjaCAodHlwZSkgewotI2lmIGRlZmluZWQoX19hcm1fXykKLSAgICAgIGNhc2UgUl9BUk1fSlVNUF9TTE9UOgotICAgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY0Fic29sdXRlKTsKLSAgICAgICAgTUFSSyhyZWwtPnJfb2Zmc2V0KTsKLSAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBKTVBfU0xPVCAlMDh4IDwtICUwOHggJXMiLCByZWxvYywgc3ltX2FkZHIsIHN5bV9uYW1lKTsKLSAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSA9IHN5bV9hZGRyOwotICAgICAgICBicmVhazsKLSAgICAgIGNhc2UgUl9BUk1fR0xPQl9EQVQ6Ci0gICAgICAgIGNvdW50X3JlbG9jYXRpb24oa1JlbG9jQWJzb2x1dGUpOwotICAgICAgICBNQVJLKHJlbC0+cl9vZmZzZXQpOwotICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIEdMT0JfREFUICUwOHggPC0gJTA4eCAlcyIsIHJlbG9jLCBzeW1fYWRkciwgc3ltX25hbWUpOwotICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpID0gc3ltX2FkZHI7Ci0gICAgICAgIGJyZWFrOworI2VsaWYgZGVmaW5lZChfX2FybV9fKQogICAgICAgY2FzZSBSX0FSTV9BQlMzMjoKICAgICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NBYnNvbHV0ZSk7CiAgICAgICAgIE1BUksocmVsLT5yX29mZnNldCk7CkBAIC0xNDcwLDI1ICsyMDU0LDEzIEBACiAgICAgICAgICAqCiAgICAgICAgICAqIGh0dHA6Ly9pbmZvY2VudGVyLmFybS5jb20vaGVscC90b3BpYy9jb20uYXJtLmRvYy5paGkwMDQ0ZC9JSEkwMDQ0RF9hYWVsZi5wZGYKICAgICAgICAgICoKLSAgICAgICAgICogU2VjdGlvbiA0LjcuMS4xMCAiRHluYW1pYyByZWxvY2F0aW9ucyIKKyAgICAgICAgICogU2VjdGlvbiA0LjYuMS4xMCAiRHluYW1pYyByZWxvY2F0aW9ucyIKICAgICAgICAgICogUl9BUk1fQ09QWSBtYXkgb25seSBhcHBlYXIgaW4gZXhlY3V0YWJsZSBvYmplY3RzIHdoZXJlIGVfdHlwZSBpcwogICAgICAgICAgKiBzZXQgdG8gRVRfRVhFQy4KICAgICAgICAgICovCi0gICAgICAgIERMX0VSUigiJXMgUl9BUk1fQ09QWSByZWxvY2F0aW9ucyBhcmUgbm90IHN1cHBvcnRlZCIsIG5hbWUpOwotICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIERMX0VSUigiJXMgUl9BUk1fQ09QWSByZWxvY2F0aW9ucyBhcmUgbm90IHN1cHBvcnRlZCIsIGdldF9zb25hbWUoKSk7CisgICAgICAgIHJldHVybiBmYWxzZTsKICNlbGlmIGRlZmluZWQoX19pMzg2X18pCi0gICAgICBjYXNlIFJfMzg2X0pNUF9TTE9UOgotICAgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY0Fic29sdXRlKTsKLSAgICAgICAgTUFSSyhyZWwtPnJfb2Zmc2V0KTsKLSAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBKTVBfU0xPVCAlMDh4IDwtICUwOHggJXMiLCByZWxvYywgc3ltX2FkZHIsIHN5bV9uYW1lKTsKLSAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSA9IHN5bV9hZGRyOwotICAgICAgICBicmVhazsKLSAgICAgIGNhc2UgUl8zODZfR0xPQl9EQVQ6Ci0gICAgICAgIGNvdW50X3JlbG9jYXRpb24oa1JlbG9jQWJzb2x1dGUpOwotICAgICAgICBNQVJLKHJlbC0+cl9vZmZzZXQpOwotICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIEdMT0JfREFUICUwOHggPC0gJTA4eCAlcyIsIHJlbG9jLCBzeW1fYWRkciwgc3ltX25hbWUpOwotICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpID0gc3ltX2FkZHI7Ci0gICAgICAgIGJyZWFrOwogICAgICAgY2FzZSBSXzM4Nl8zMjoKICAgICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NSZWxhdGl2ZSk7CiAgICAgICAgIE1BUksocmVsLT5yX29mZnNldCk7CkBAIC0xNTAyLDEyNCArMjA3NCwyMyBAQAogICAgICAgICAgICAgICAgICAgIHJlbG9jLCAoc3ltX2FkZHIgLSByZWxvYyksIHN5bV9hZGRyLCByZWxvYywgc3ltX25hbWUpOwogICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9IChzeW1fYWRkciAtIHJlbG9jKTsKICAgICAgICAgYnJlYWs7Ci0jZWxpZiBkZWZpbmVkKF9fbWlwc19fKQotICAgICAgY2FzZSBSX01JUFNfUkVMMzI6Ci0jaWYgZGVmaW5lZChfX0xQNjRfXykKLSAgICAgICAgLy8gTUlQUyBFbGY2NF9SZWwgZW50cmllcyBjb250YWluIGNvbXBvdW5kIHJlbG9jYXRpb25zCi0gICAgICAgIC8vIFdlIG9ubHkgaGFuZGxlIHRoZSBSX01JUFNfTk9ORXxSX01JUFNfNjR8Ul9NSVBTX1JFTDMyIGNhc2UKLSAgICAgICAgaWYgKEVMRjY0X1JfVFlQRTIocmVsLT5yX2luZm8pICE9IFJfTUlQU182NCB8fAotICAgICAgICAgICAgRUxGNjRfUl9UWVBFMyhyZWwtPnJfaW5mbykgIT0gUl9NSVBTX05PTkUpIHsKLSAgICAgICAgICBETF9FUlIoIlVuZXhwZWN0ZWQgY29tcG91bmQgcmVsb2NhdGlvbiB0eXBlOiVkIHR5cGUyOiVkIHR5cGUzOiVkIEAgJXAgKCV6dSkiLAotICAgICAgICAgICAgICAgICB0eXBlLCAodW5zaWduZWQpRUxGNjRfUl9UWVBFMihyZWwtPnJfaW5mbyksCi0gICAgICAgICAgICAgICAgICh1bnNpZ25lZClFTEY2NF9SX1RZUEUzKHJlbC0+cl9pbmZvKSwgcmVsLCBpZHgpOwotICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgfQogI2VuZGlmCi0gICAgICAgIGNvdW50X3JlbG9jYXRpb24oa1JlbG9jQWJzb2x1dGUpOwotICAgICAgICBNQVJLKHJlbC0+cl9vZmZzZXQpOwotICAgICAgICBUUkFDRV9UWVBFKFJFTE8sICJSRUxPIFJFTDMyICUwOHp4IDwtICUwOHp4ICVzIiwgc3RhdGljX2Nhc3Q8c2l6ZV90PihyZWxvYyksCi0gICAgICAgICAgICAgICAgICAgc3RhdGljX2Nhc3Q8c2l6ZV90PihzeW1fYWRkciksIHN5bV9uYW1lID8gc3ltX25hbWUgOiAiKlNFQ1RJT05IRFIqIik7Ci0gICAgICAgIGlmIChzKSB7Ci0gICAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSArPSBzeW1fYWRkcjsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9IGJhc2U7Ci0gICAgICAgIH0KLSAgICAgICAgYnJlYWs7Ci0jZW5kaWYKLQotI2lmIGRlZmluZWQoX19hcm1fXykKLSAgICAgIGNhc2UgUl9BUk1fUkVMQVRJVkU6Ci0jZWxpZiBkZWZpbmVkKF9faTM4Nl9fKQotICAgICAgY2FzZSBSXzM4Nl9SRUxBVElWRToKLSNlbmRpZgotICAgICAgICBjb3VudF9yZWxvY2F0aW9uKGtSZWxvY1JlbGF0aXZlKTsKLSAgICAgICAgTUFSSyhyZWwtPnJfb2Zmc2V0KTsKLSAgICAgICAgaWYgKHN5bSkgewotICAgICAgICAgIERMX0VSUigib2RkIFJFTEFUSVZFIGZvcm0uLi4iKTsKLSAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIH0KLSAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBSRUxBVElWRSAlcCA8LSArJXAiLAotICAgICAgICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHJlbG9jKSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oYmFzZSkpOwotICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9IGJhc2U7Ci0gICAgICAgIGJyZWFrOwotI2lmIGRlZmluZWQoX19pMzg2X18pCi0gICAgICBjYXNlIFJfMzg2X0lSRUxBVElWRToKLSAgICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NSZWxhdGl2ZSk7Ci0gICAgICAgIE1BUksocmVsLT5yX29mZnNldCk7Ci0gICAgICAgIFRSQUNFX1RZUEUoUkVMTywgIlJFTE8gSVJFTEFUSVZFICVwIDwtICVwIiwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocmVsb2MpLCByZWludGVycHJldF9jYXN0PHZvaWQqPihiYXNlKSk7Ci0gICAgICAgICpyZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihyZWxvYykgPSBjYWxsX2lmdW5jX3Jlc29sdmVyKGJhc2UgKyAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpKTsKLSAgICAgICAgYnJlYWs7Ci0jZW5kaWYKLQogICAgICAgZGVmYXVsdDoKICAgICAgICAgRExfRVJSKCJ1bmtub3duIHJlbG9jIHR5cGUgJWQgQCAlcCAoJXp1KSIsIHR5cGUsIHJlbCwgaWR4KTsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgfQotICByZXR1cm4gMDsKLX0KLSNlbmRpZgotCi0jaWYgZGVmaW5lZChfX21pcHNfXykKLXN0YXRpYyBib29sIG1pcHNfcmVsb2NhdGVfZ290KHNvaW5mbyogc2kpIHsKLSAgRWxmVyhBZGRyKSoqIGdvdCA9IHNpLT5wbHRfZ290OwotICBpZiAoZ290ID09IG51bGxwdHIpIHsKLSAgICByZXR1cm4gdHJ1ZTsKLSAgfQotICB1bnNpZ25lZCBsb2NhbF9nb3RubyA9IHNpLT5taXBzX2xvY2FsX2dvdG5vOwotICB1bnNpZ25lZCBnb3RzeW0gPSBzaS0+bWlwc19nb3RzeW07Ci0gIHVuc2lnbmVkIHN5bXRhYm5vID0gc2ktPm1pcHNfc3ltdGFibm87Ci0gIEVsZlcoU3ltKSogc3ltdGFiID0gc2ktPnN5bXRhYjsKLQotICAvLyBnb3RbMF0gaXMgdGhlIGFkZHJlc3Mgb2YgdGhlIGxhenkgcmVzb2x2ZXIgZnVuY3Rpb24uCi0gIC8vIGdvdFsxXSBtYXkgYmUgdXNlZCBmb3IgYSBHTlUgZXh0ZW5zaW9uLgotICAvLyBTZXQgaXQgdG8gYSByZWNvZ25pemFibGUgYWRkcmVzcyBpbiBjYXNlIHNvbWVvbmUgY2FsbHMgaXQgKHNob3VsZCBiZSBfcnRsZF9iaW5kX3N0YXJ0KS4KLSAgLy8gRklYTUU6IG1heWJlIHRoaXMgc2hvdWxkIGJlIGluIGEgc2VwYXJhdGUgcm91dGluZT8KLSAgaWYgKChzaS0+ZmxhZ3MgJiBGTEFHX0xJTktFUikgPT0gMCkgewotICAgIHNpemVfdCBnID0gMDsKLSAgICBnb3RbZysrXSA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KDB4ZGVhZGJlZWYpOwotICAgIGlmIChyZWludGVycHJldF9jYXN0PGludHB0cl90Pihnb3RbZ10pIDwgMCkgewotICAgICAgZ290W2crK10gPSByZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPigweGRlYWRmZWVkKTsKLSAgICB9Ci0gICAgLy8gUmVsb2NhdGUgdGhlIGxvY2FsIEdPVCBlbnRyaWVzLgotICAgIGZvciAoOyBnIDwgbG9jYWxfZ290bm87IGcrKykgewotICAgICAgZ290W2ddID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KGdvdFtnXSkgKyBzaS0+bG9hZF9iaWFzKTsKLSAgICB9Ci0gIH0KLQotICAvLyBOb3cgZm9yIHRoZSBnbG9iYWwgR09UIGVudHJpZXMuLi4KLSAgRWxmVyhTeW0pKiBzeW0gPSBzeW10YWIgKyBnb3RzeW07Ci0gIGdvdCA9IHNpLT5wbHRfZ290ICsgbG9jYWxfZ290bm87Ci0gIGZvciAoc2l6ZV90IGcgPSBnb3RzeW07IGcgPCBzeW10YWJubzsgZysrLCBzeW0rKywgZ290KyspIHsKLSAgICAvLyBUaGlzIGlzIGFuIHVuZGVmaW5lZCByZWZlcmVuY2UuLi4gdHJ5IHRvIGxvY2F0ZSBpdC4KLSAgICBjb25zdCBjaGFyKiBzeW1fbmFtZSA9IHNpLT5nZXRfc3RyaW5nKHN5bS0+c3RfbmFtZSk7Ci0gICAgc29pbmZvKiBsc2kgPSBudWxscHRyOwotICAgIEVsZlcoU3ltKSogcyA9IHNvaW5mb19kb19sb29rdXAoc2ksIHN5bV9uYW1lLCAmbHNpKTsKLSAgICBpZiAocyA9PSBudWxscHRyKSB7Ci0gICAgICAvLyBXZSBvbmx5IGFsbG93IGFuIHVuZGVmaW5lZCBzeW1ib2wgaWYgdGhpcyBpcyBhIHdlYWsgcmVmZXJlbmNlLgotICAgICAgcyA9ICZzeW10YWJbZ107Ci0gICAgICBpZiAoRUxGX1NUX0JJTkQocy0+c3RfaW5mbykgIT0gU1RCX1dFQUspIHsKLSAgICAgICAgRExfRVJSKCJjYW5ub3QgbG9jYXRlIFwiJXNcIi4uLiIsIHN5bV9uYW1lKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgfQotICAgICAgKmdvdCA9IDA7Ci0gICAgfSBlbHNlIHsKLSAgICAgIC8vIEZJWE1FOiBpcyB0aGlzIHN1ZmZpY2llbnQ/Ci0gICAgICAvLyBGb3IgcmVmZXJlbmNlIHNlZSBOZXRCU0QgbGluayBsb2FkZXIKLSAgICAgIC8vIGh0dHA6Ly9jdnN3ZWIubmV0YnNkLm9yZy9ic2R3ZWIuY2dpL3NyYy9saWJleGVjL2xkLmVsZl9zby9hcmNoL21pcHMvbWlwc19yZWxvYy5jP3Jldj0xLjUzJmNvbnRlbnQtdHlwZT10ZXh0L3gtY3Zzd2ViLW1hcmt1cAotICAgICAgKmdvdCA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KGxzaS0+cmVzb2x2ZV9zeW1ib2xfYWRkcmVzcyhzKSk7CiAgICAgfQogICB9CiAgIHJldHVybiB0cnVlOwogfQotI2VuZGlmCisjZW5kaWYgIC8vICFkZWZpbmVkKF9fbWlwc19fKQogCi12b2lkIHNvaW5mbzo6Q2FsbEFycmF5KGNvbnN0IGNoYXIqIGFycmF5X25hbWUgX191bnVzZWQsIGxpbmtlcl9mdW5jdGlvbl90KiBmdW5jdGlvbnMsIHNpemVfdCBjb3VudCwgYm9vbCByZXZlcnNlKSB7Cit2b2lkIHNvaW5mbzo6Y2FsbF9hcnJheShjb25zdCBjaGFyKiBhcnJheV9uYW1lIF9fdW51c2VkLCBsaW5rZXJfZnVuY3Rpb25fdCogZnVuY3Rpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGNvdW50LCBib29sIHJldmVyc2UpIHsKICAgaWYgKGZ1bmN0aW9ucyA9PSBudWxscHRyKSB7CiAgICAgcmV0dXJuOwogICB9CiAKLSAgVFJBQ0UoIlsgQ2FsbGluZyAlcyAoc2l6ZSAlemQpIEAgJXAgZm9yICclcycgXSIsIGFycmF5X25hbWUsIGNvdW50LCBmdW5jdGlvbnMsIG5hbWUpOworICBUUkFDRSgiWyBDYWxsaW5nICVzIChzaXplICV6ZCkgQCAlcCBmb3IgJyVzJyBdIiwgYXJyYXlfbmFtZSwgY291bnQsIGZ1bmN0aW9ucywgZ2V0X3NvbmFtZSgpKTsKIAogICBpbnQgYmVnaW4gPSByZXZlcnNlID8gKGNvdW50IC0gMSkgOiAwOwogICBpbnQgZW5kID0gcmV2ZXJzZSA/IC0xIDogY291bnQ7CkBAIC0xNjI3LDMzICsyMDk4LDI5IEBACiAKICAgZm9yIChpbnQgaSA9IGJlZ2luOyBpICE9IGVuZDsgaSArPSBzdGVwKSB7CiAgICAgVFJBQ0UoIlsgJXNbJWRdID09ICVwIF0iLCBhcnJheV9uYW1lLCBpLCBmdW5jdGlvbnNbaV0pOwotICAgIENhbGxGdW5jdGlvbigiZnVuY3Rpb24iLCBmdW5jdGlvbnNbaV0pOworICAgIGNhbGxfZnVuY3Rpb24oImZ1bmN0aW9uIiwgZnVuY3Rpb25zW2ldKTsKICAgfQogCi0gIFRSQUNFKCJbIERvbmUgY2FsbGluZyAlcyBmb3IgJyVzJyBdIiwgYXJyYXlfbmFtZSwgbmFtZSk7CisgIFRSQUNFKCJbIERvbmUgY2FsbGluZyAlcyBmb3IgJyVzJyBdIiwgYXJyYXlfbmFtZSwgZ2V0X3NvbmFtZSgpKTsKIH0KIAotdm9pZCBzb2luZm86OkNhbGxGdW5jdGlvbihjb25zdCBjaGFyKiBmdW5jdGlvbl9uYW1lIF9fdW51c2VkLCBsaW5rZXJfZnVuY3Rpb25fdCBmdW5jdGlvbikgewordm9pZCBzb2luZm86OmNhbGxfZnVuY3Rpb24oY29uc3QgY2hhciogZnVuY3Rpb25fbmFtZSBfX3VudXNlZCwgbGlua2VyX2Z1bmN0aW9uX3QgZnVuY3Rpb24pIHsKICAgaWYgKGZ1bmN0aW9uID09IG51bGxwdHIgfHwgcmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KGZ1bmN0aW9uKSA9PSBzdGF0aWNfY2FzdDx1aW50cHRyX3Q+KC0xKSkgewogICAgIHJldHVybjsKICAgfQogCi0gIFRSQUNFKCJbIENhbGxpbmcgJXMgQCAlcCBmb3IgJyVzJyBdIiwgZnVuY3Rpb25fbmFtZSwgZnVuY3Rpb24sIG5hbWUpOworICBUUkFDRSgiWyBDYWxsaW5nICVzIEAgJXAgZm9yICclcycgXSIsIGZ1bmN0aW9uX25hbWUsIGZ1bmN0aW9uLCBnZXRfc29uYW1lKCkpOwogICBmdW5jdGlvbigpOwotICBUUkFDRSgiWyBEb25lIGNhbGxpbmcgJXMgQCAlcCBmb3IgJyVzJyBdIiwgZnVuY3Rpb25fbmFtZSwgZnVuY3Rpb24sIG5hbWUpOwotCi0gIC8vIFRoZSBmdW5jdGlvbiBtYXkgaGF2ZSBjYWxsZWQgZGxvcGVuKDMpIG9yIGRsY2xvc2UoMyksIHNvIHdlIG5lZWQgdG8gZW5zdXJlIG91ciBkYXRhIHN0cnVjdHVyZXMKLSAgLy8gYXJlIHN0aWxsIHdyaXRhYmxlLiBUaGlzIGhhcHBlbnMgd2l0aCBvdXIgZGVidWcgbWFsbG9jIChzZWUgaHR0cDovL2IvNzk0MTcxNikuCi0gIHByb3RlY3RfZGF0YShQUk9UX1JFQUQgfCBQUk9UX1dSSVRFKTsKKyAgVFJBQ0UoIlsgRG9uZSBjYWxsaW5nICVzIEAgJXAgZm9yICclcycgXSIsIGZ1bmN0aW9uX25hbWUsIGZ1bmN0aW9uLCBnZXRfc29uYW1lKCkpOwogfQogCi12b2lkIHNvaW5mbzo6Q2FsbFByZUluaXRDb25zdHJ1Y3RvcnMoKSB7Cit2b2lkIHNvaW5mbzo6Y2FsbF9wcmVfaW5pdF9jb25zdHJ1Y3RvcnMoKSB7CiAgIC8vIERUX1BSRUlOSVRfQVJSQVkgZnVuY3Rpb25zIGFyZSBjYWxsZWQgYmVmb3JlIGFueSBvdGhlciBjb25zdHJ1Y3RvcnMgZm9yIGV4ZWN1dGFibGVzLAogICAvLyBidXQgaWdub3JlZCBpbiBhIHNoYXJlZCBsaWJyYXJ5LgotICBDYWxsQXJyYXkoIkRUX1BSRUlOSVRfQVJSQVkiLCBwcmVpbml0X2FycmF5LCBwcmVpbml0X2FycmF5X2NvdW50LCBmYWxzZSk7CisgIGNhbGxfYXJyYXkoIkRUX1BSRUlOSVRfQVJSQVkiLCBwcmVpbml0X2FycmF5XywgcHJlaW5pdF9hcnJheV9jb3VudF8sIGZhbHNlKTsKIH0KIAotdm9pZCBzb2luZm86OkNhbGxDb25zdHJ1Y3RvcnMoKSB7Cit2b2lkIHNvaW5mbzo6Y2FsbF9jb25zdHJ1Y3RvcnMoKSB7CiAgIGlmIChjb25zdHJ1Y3RvcnNfY2FsbGVkKSB7CiAgICAgcmV0dXJuOwogICB9CkBAIC0xNjcwLDM0ICsyMTM3LDM0IEBACiAgIC8vICAgIG91dCBhYm92ZSwgdGhlIGxpYmMgY29uc3RydWN0b3Igd2lsbCBiZSBjYWxsZWQgYWdhaW4gKHJlY3Vyc2l2ZWx5ISkuCiAgIGNvbnN0cnVjdG9yc19jYWxsZWQgPSB0cnVlOwogCi0gIGlmICgoZmxhZ3MgJiBGTEFHX0VYRSkgPT0gMCAmJiBwcmVpbml0X2FycmF5ICE9IG51bGxwdHIpIHsKKyAgaWYgKCFpc19tYWluX2V4ZWN1dGFibGUoKSAmJiBwcmVpbml0X2FycmF5XyAhPSBudWxscHRyKSB7CiAgICAgLy8gVGhlIEdOVSBkeW5hbWljIGxpbmtlciBzaWxlbnRseSBpZ25vcmVzIHRoZXNlLCBidXQgd2Ugd2FybiB0aGUgZGV2ZWxvcGVyLgogICAgIFBSSU5UKCJcIiVzXCI6IGlnbm9yaW5nICV6ZC1lbnRyeSBEVF9QUkVJTklUX0FSUkFZIGluIHNoYXJlZCBsaWJyYXJ5ISIsCi0gICAgICAgICAgbmFtZSwgcHJlaW5pdF9hcnJheV9jb3VudCk7CisgICAgICAgICAgZ2V0X3NvbmFtZSgpLCBwcmVpbml0X2FycmF5X2NvdW50Xyk7CiAgIH0KIAogICBnZXRfY2hpbGRyZW4oKS5mb3JfZWFjaChbXSAoc29pbmZvKiBzaSkgewotICAgIHNpLT5DYWxsQ29uc3RydWN0b3JzKCk7CisgICAgc2ktPmNhbGxfY29uc3RydWN0b3JzKCk7CiAgIH0pOwogCi0gIFRSQUNFKCJcIiVzXCI6IGNhbGxpbmcgY29uc3RydWN0b3JzIiwgbmFtZSk7CisgIFRSQUNFKCJcIiVzXCI6IGNhbGxpbmcgY29uc3RydWN0b3JzIiwgZ2V0X3NvbmFtZSgpKTsKIAogICAvLyBEVF9JTklUIHNob3VsZCBiZSBjYWxsZWQgYmVmb3JlIERUX0lOSVRfQVJSQVkgaWYgYm90aCBhcmUgcHJlc2VudC4KLSAgQ2FsbEZ1bmN0aW9uKCJEVF9JTklUIiwgaW5pdF9mdW5jKTsKLSAgQ2FsbEFycmF5KCJEVF9JTklUX0FSUkFZIiwgaW5pdF9hcnJheSwgaW5pdF9hcnJheV9jb3VudCwgZmFsc2UpOworICBjYWxsX2Z1bmN0aW9uKCJEVF9JTklUIiwgaW5pdF9mdW5jXyk7CisgIGNhbGxfYXJyYXkoIkRUX0lOSVRfQVJSQVkiLCBpbml0X2FycmF5XywgaW5pdF9hcnJheV9jb3VudF8sIGZhbHNlKTsKIH0KIAotdm9pZCBzb2luZm86OkNhbGxEZXN0cnVjdG9ycygpIHsKK3ZvaWQgc29pbmZvOjpjYWxsX2Rlc3RydWN0b3JzKCkgewogICBpZiAoIWNvbnN0cnVjdG9yc19jYWxsZWQpIHsKICAgICByZXR1cm47CiAgIH0KLSAgVFJBQ0UoIlwiJXNcIjogY2FsbGluZyBkZXN0cnVjdG9ycyIsIG5hbWUpOworICBUUkFDRSgiXCIlc1wiOiBjYWxsaW5nIGRlc3RydWN0b3JzIiwgZ2V0X3NvbmFtZSgpKTsKIAogICAvLyBEVF9GSU5JX0FSUkFZIG11c3QgYmUgcGFyc2VkIGluIHJldmVyc2Ugb3JkZXIuCi0gIENhbGxBcnJheSgiRFRfRklOSV9BUlJBWSIsIGZpbmlfYXJyYXksIGZpbmlfYXJyYXlfY291bnQsIHRydWUpOworICBjYWxsX2FycmF5KCJEVF9GSU5JX0FSUkFZIiwgZmluaV9hcnJheV8sIGZpbmlfYXJyYXlfY291bnRfLCB0cnVlKTsKIAogICAvLyBEVF9GSU5JIHNob3VsZCBiZSBjYWxsZWQgYWZ0ZXIgRFRfRklOSV9BUlJBWSBpZiBib3RoIGFyZSBwcmVzZW50LgotICBDYWxsRnVuY3Rpb24oIkRUX0ZJTkkiLCBmaW5pX2Z1bmMpOworICBjYWxsX2Z1bmN0aW9uKCJEVF9GSU5JIiwgZmluaV9mdW5jXyk7CiAKICAgLy8gVGhpcyBpcyBuZWVkZWQgb24gc2Vjb25kIGNhbGwgdG8gZGxvcGVuCiAgIC8vIGFmdGVyIGxpYnJhcnkgaGFzIGJlZW4gdW5sb2FkZWQgd2l0aCBSVExEX05PREVMRVRFCkBAIC0xNzA2LDggKzIxNzMsOCBAQAogCiB2b2lkIHNvaW5mbzo6YWRkX2NoaWxkKHNvaW5mbyogY2hpbGQpIHsKICAgaWYgKGhhc19taW5fdmVyc2lvbigwKSkgewotICAgIGNoaWxkLT5wYXJlbnRzLnB1c2hfYmFjayh0aGlzKTsKLSAgICB0aGlzLT5jaGlsZHJlbi5wdXNoX2JhY2soY2hpbGQpOworICAgIGNoaWxkLT5wYXJlbnRzXy5wdXNoX2JhY2sodGhpcyk7CisgICAgdGhpcy0+Y2hpbGRyZW5fLnB1c2hfYmFjayhjaGlsZCk7CiAgIH0KIH0KIApAQCAtMTcxNyw2OCArMjE4NCwxMzAgQEAKICAgfQogCiAgIC8vIDEuIFVudGllIGNvbm5lY3RlZCBzb2luZm9zIGZyb20gJ3RoaXMnLgotICBjaGlsZHJlbi5mb3JfZWFjaChbJl0gKHNvaW5mbyogY2hpbGQpIHsKLSAgICBjaGlsZC0+cGFyZW50cy5yZW1vdmVfaWYoWyZdIChjb25zdCBzb2luZm8qIHBhcmVudCkgeworICBjaGlsZHJlbl8uZm9yX2VhY2goWyZdIChzb2luZm8qIGNoaWxkKSB7CisgICAgY2hpbGQtPnBhcmVudHNfLnJlbW92ZV9pZihbJl0gKGNvbnN0IHNvaW5mbyogcGFyZW50KSB7CiAgICAgICByZXR1cm4gcGFyZW50ID09IHRoaXM7CiAgICAgfSk7CiAgIH0pOwogCi0gIHBhcmVudHMuZm9yX2VhY2goWyZdIChzb2luZm8qIHBhcmVudCkgewotICAgIHBhcmVudC0+Y2hpbGRyZW4ucmVtb3ZlX2lmKFsmXSAoY29uc3Qgc29pbmZvKiBjaGlsZCkgeworICBwYXJlbnRzXy5mb3JfZWFjaChbJl0gKHNvaW5mbyogcGFyZW50KSB7CisgICAgcGFyZW50LT5jaGlsZHJlbl8ucmVtb3ZlX2lmKFsmXSAoY29uc3Qgc29pbmZvKiBjaGlsZCkgewogICAgICAgcmV0dXJuIGNoaWxkID09IHRoaXM7CiAgICAgfSk7CiAgIH0pOwogCiAgIC8vIDIuIE9uY2UgZXZlcnl0aGluZyB1bnRpZWQgLSBjbGVhciBsb2NhbCBsaXN0cy4KLSAgcGFyZW50cy5jbGVhcigpOwotICBjaGlsZHJlbi5jbGVhcigpOworICBwYXJlbnRzXy5jbGVhcigpOworICBjaGlsZHJlbl8uY2xlYXIoKTsKIH0KIAotZGV2X3Qgc29pbmZvOjpnZXRfc3RfZGV2KCkgeworZGV2X3Qgc29pbmZvOjpnZXRfc3RfZGV2KCkgY29uc3QgewogICBpZiAoaGFzX21pbl92ZXJzaW9uKDApKSB7Ci0gICAgcmV0dXJuIHN0X2RldjsKKyAgICByZXR1cm4gc3RfZGV2XzsKICAgfQogCiAgIHJldHVybiAwOwogfTsKIAotaW5vX3Qgc29pbmZvOjpnZXRfc3RfaW5vKCkgeworaW5vX3Qgc29pbmZvOjpnZXRfc3RfaW5vKCkgY29uc3QgewogICBpZiAoaGFzX21pbl92ZXJzaW9uKDApKSB7Ci0gICAgcmV0dXJuIHN0X2lubzsKKyAgICByZXR1cm4gc3RfaW5vXzsKICAgfQogCiAgIHJldHVybiAwOwogfQogCi1vZmY2NF90IHNvaW5mbzo6Z2V0X2ZpbGVfb2Zmc2V0KCkgeworb2ZmNjRfdCBzb2luZm86OmdldF9maWxlX29mZnNldCgpIGNvbnN0IHsKICAgaWYgKGhhc19taW5fdmVyc2lvbigxKSkgewotICAgIHJldHVybiBmaWxlX29mZnNldDsKKyAgICByZXR1cm4gZmlsZV9vZmZzZXRfOwogICB9CiAKICAgcmV0dXJuIDA7CiB9CiAKK3VpbnQzMl90IHNvaW5mbzo6Z2V0X3J0bGRfZmxhZ3MoKSBjb25zdCB7CisgIGlmIChoYXNfbWluX3ZlcnNpb24oMSkpIHsKKyAgICByZXR1cm4gcnRsZF9mbGFnc187CisgIH0KKworICByZXR1cm4gMDsKK30KKwordWludDMyX3Qgc29pbmZvOjpnZXRfZHRfZmxhZ3NfMSgpIGNvbnN0IHsKKyAgaWYgKGhhc19taW5fdmVyc2lvbigxKSkgeworICAgIHJldHVybiBkdF9mbGFnc18xXzsKKyAgfQorCisgIHJldHVybiAwOworfQorCit2b2lkIHNvaW5mbzo6c2V0X2R0X2ZsYWdzXzEodWludDMyX3QgZHRfZmxhZ3NfMSkgeworICBpZiAoaGFzX21pbl92ZXJzaW9uKDEpKSB7CisgICAgaWYgKChkdF9mbGFnc18xICYgREZfMV9HTE9CQUwpICE9IDApIHsKKyAgICAgIHJ0bGRfZmxhZ3NfIHw9IFJUTERfR0xPQkFMOworICAgIH0KKworICAgIGlmICgoZHRfZmxhZ3NfMSAmIERGXzFfTk9ERUxFVEUpICE9IDApIHsKKyAgICAgIHJ0bGRfZmxhZ3NfIHw9IFJUTERfTk9ERUxFVEU7CisgICAgfQorCisgICAgZHRfZmxhZ3NfMV8gPSBkdF9mbGFnc18xOworICB9Cit9CisKK2NvbnN0IGNoYXIqIHNvaW5mbzo6Z2V0X3JlYWxwYXRoKCkgY29uc3QgeworI2lmIGRlZmluZWQoX19hcm1fXykKKyAgaWYgKGhhc19taW5fdmVyc2lvbigyKSkgeworICAgIHJldHVybiByZWFscGF0aF8uY19zdHIoKTsKKyAgfSBlbHNlIHsKKyAgICByZXR1cm4gb2xkX25hbWVfOworICB9CisjZWxzZQorICByZXR1cm4gcmVhbHBhdGhfLmNfc3RyKCk7CisjZW5kaWYKK30KKworY29uc3QgY2hhciogc29pbmZvOjpnZXRfc29uYW1lKCkgY29uc3QgeworI2lmIGRlZmluZWQoX19hcm1fXykKKyAgaWYgKGhhc19taW5fdmVyc2lvbigyKSkgeworICAgIHJldHVybiBzb25hbWVfOworICB9IGVsc2UgeworICAgIHJldHVybiBvbGRfbmFtZV87CisgIH0KKyNlbHNlCisgIHJldHVybiBzb25hbWVfOworI2VuZGlmCit9CisKIC8vIFRoaXMgaXMgYSByZXR1cm4gb24gZ2V0X2NoaWxkcmVuKCkvZ2V0X3BhcmVudHMoKSBpZgogLy8gJ3RoaXMtPmZsYWdzJyBkb2VzIG5vdCBoYXZlIEZMQUdfTkVXX1NPSU5GTyBzZXQuCiBzdGF0aWMgc29pbmZvOjpzb2luZm9fbGlzdF90IGdfZW1wdHlfbGlzdDsKIAogc29pbmZvOjpzb2luZm9fbGlzdF90JiBzb2luZm86OmdldF9jaGlsZHJlbigpIHsKICAgaWYgKGhhc19taW5fdmVyc2lvbigwKSkgewotICAgIHJldHVybiB0aGlzLT5jaGlsZHJlbjsKKyAgICByZXR1cm4gY2hpbGRyZW5fOworICB9CisKKyAgcmV0dXJuIGdfZW1wdHlfbGlzdDsKK30KKworY29uc3Qgc29pbmZvOjpzb2luZm9fbGlzdF90JiBzb2luZm86OmdldF9jaGlsZHJlbigpIGNvbnN0IHsKKyAgaWYgKGhhc19taW5fdmVyc2lvbigwKSkgeworICAgIHJldHVybiBjaGlsZHJlbl87CiAgIH0KIAogICByZXR1cm4gZ19lbXB0eV9saXN0OwogfQogCiBzb2luZm86OnNvaW5mb19saXN0X3QmIHNvaW5mbzo6Z2V0X3BhcmVudHMoKSB7Ci0gIGlmICgodGhpcy0+ZmxhZ3MgJiBGTEFHX05FV19TT0lORk8pID09IDApIHsKLSAgICByZXR1cm4gZ19lbXB0eV9saXN0OworICBpZiAoaGFzX21pbl92ZXJzaW9uKDApKSB7CisgICAgcmV0dXJuIHBhcmVudHNfOwogICB9CiAKLSAgcmV0dXJuIHRoaXMtPnBhcmVudHM7CisgIHJldHVybiBnX2VtcHR5X2xpc3Q7CiB9CiAKLUVsZlcoQWRkcikgc29pbmZvOjpyZXNvbHZlX3N5bWJvbF9hZGRyZXNzKEVsZlcoU3ltKSogcykgeworRWxmVyhBZGRyKSBzb2luZm86OnJlc29sdmVfc3ltYm9sX2FkZHJlc3MoY29uc3QgRWxmVyhTeW0pKiBzKSBjb25zdCB7CiAgIGlmIChFTEZfU1RfVFlQRShzLT5zdF9pbmZvKSA9PSBTVFRfR05VX0lGVU5DKSB7CiAgICAgcmV0dXJuIGNhbGxfaWZ1bmNfcmVzb2x2ZXIocy0+c3RfdmFsdWUgKyBsb2FkX2JpYXMpOwogICB9CkBAIC0xNzg3LDExICsyMzE2LDUyIEBACiB9CiAKIGNvbnN0IGNoYXIqIHNvaW5mbzo6Z2V0X3N0cmluZyhFbGZXKFdvcmQpIGluZGV4KSBjb25zdCB7Ci0gIGlmIChoYXNfbWluX3ZlcnNpb24oMSkgJiYgKGluZGV4ID49IHN0cnRhYl9zaXplKSkgewotICAgIF9fbGliY19mYXRhbCgiJXM6IHN0cnRhYiBvdXQgb2YgYm91bmRzIGVycm9yOyBTVFJTWj0lemQsIG5hbWU9JWQiLCBuYW1lLCBzdHJ0YWJfc2l6ZSwgaW5kZXgpOworICBpZiAoaGFzX21pbl92ZXJzaW9uKDEpICYmIChpbmRleCA+PSBzdHJ0YWJfc2l6ZV8pKSB7CisgICAgX19saWJjX2ZhdGFsKCIlczogc3RydGFiIG91dCBvZiBib3VuZHMgZXJyb3I7IFNUUlNaPSV6ZCwgbmFtZT0lZCIsCisgICAgICAgIGdldF9zb25hbWUoKSwgc3RydGFiX3NpemVfLCBpbmRleCk7CiAgIH0KIAotICByZXR1cm4gc3RydGFiICsgaW5kZXg7CisgIHJldHVybiBzdHJ0YWJfICsgaW5kZXg7Cit9CisKK2Jvb2wgc29pbmZvOjppc19nbnVfaGFzaCgpIGNvbnN0IHsKKyAgcmV0dXJuIChmbGFnc18gJiBGTEFHX0dOVV9IQVNIKSAhPSAwOworfQorCitib29sIHNvaW5mbzo6Y2FuX3VubG9hZCgpIGNvbnN0IHsKKyAgcmV0dXJuIChnZXRfcnRsZF9mbGFncygpICYgKFJUTERfTk9ERUxFVEUgfCBSVExEX0dMT0JBTCkpID09IDA7Cit9CisKK2Jvb2wgc29pbmZvOjppc19saW5rZWQoKSBjb25zdCB7CisgIHJldHVybiAoZmxhZ3NfICYgRkxBR19MSU5LRUQpICE9IDA7Cit9CisKK2Jvb2wgc29pbmZvOjppc19tYWluX2V4ZWN1dGFibGUoKSBjb25zdCB7CisgIHJldHVybiAoZmxhZ3NfICYgRkxBR19FWEUpICE9IDA7Cit9CisKK3ZvaWQgc29pbmZvOjpzZXRfbGlua2VkKCkgeworICBmbGFnc18gfD0gRkxBR19MSU5LRUQ7Cit9CisKK3ZvaWQgc29pbmZvOjpzZXRfbGlua2VyX2ZsYWcoKSB7CisgIGZsYWdzXyB8PSBGTEFHX0xJTktFUjsKK30KKwordm9pZCBzb2luZm86OnNldF9tYWluX2V4ZWN1dGFibGUoKSB7CisgIGZsYWdzXyB8PSBGTEFHX0VYRTsKK30KKwordm9pZCBzb2luZm86OmluY3JlbWVudF9yZWZfY291bnQoKSB7CisgIGxvY2FsX2dyb3VwX3Jvb3RfLT5yZWZfY291bnRfKys7Cit9CisKK3NpemVfdCBzb2luZm86OmRlY3JlbWVudF9yZWZfY291bnQoKSB7CisgIHJldHVybiAtLWxvY2FsX2dyb3VwX3Jvb3RfLT5yZWZfY291bnRfOworfQorCitzb2luZm8qIHNvaW5mbzo6Z2V0X2xvY2FsX2dyb3VwX3Jvb3QoKSBjb25zdCB7CisgIHJldHVybiBsb2NhbF9ncm91cF9yb290XzsKIH0KIAogLyogRm9yY2UgYW55IG9mIHRoZSBjbG9zZWQgc3RkaW4sIHN0ZG91dCBhbmQgc3RkZXJyIHRvIGJlIGFzc29jaWF0ZWQgd2l0aApAQCAtMTg1NSwyMSArMjQyNSwyMSBAQAogICByZXR1cm4gcmV0dXJuX3ZhbHVlOwogfQogCi1ib29sIHNvaW5mbzo6UHJlbGlua0ltYWdlKCkgeworYm9vbCBzb2luZm86OnByZWxpbmtfaW1hZ2UoKSB7CiAgIC8qIEV4dHJhY3QgZHluYW1pYyBzZWN0aW9uICovCiAgIEVsZlcoV29yZCkgZHluYW1pY19mbGFncyA9IDA7CiAgIHBoZHJfdGFibGVfZ2V0X2R5bmFtaWNfc2VjdGlvbihwaGRyLCBwaG51bSwgbG9hZF9iaWFzLCAmZHluYW1pYywgJmR5bmFtaWNfZmxhZ3MpOwogCiAgIC8qIFdlIGNhbid0IGxvZyBhbnl0aGluZyB1bnRpbCB0aGUgbGlua2VyIGlzIHJlbG9jYXRlZCAqLwotICBib29sIHJlbG9jYXRpbmdfbGlua2VyID0gKGZsYWdzICYgRkxBR19MSU5LRVIpICE9IDA7CisgIGJvb2wgcmVsb2NhdGluZ19saW5rZXIgPSAoZmxhZ3NfICYgRkxBR19MSU5LRVIpICE9IDA7CiAgIGlmICghcmVsb2NhdGluZ19saW5rZXIpIHsKLSAgICBJTkZPKCJbIGxpbmtpbmcgJXMgXSIsIG5hbWUpOwotICAgIERFQlVHKCJzaS0+YmFzZSA9ICVwIHNpLT5mbGFncyA9IDB4JTA4eCIsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGJhc2UpLCBmbGFncyk7CisgICAgSU5GTygiWyBsaW5raW5nICVzIF0iLCBnZXRfcmVhbHBhdGgoKSk7CisgICAgREVCVUcoInNpLT5iYXNlID0gJXAgc2ktPmZsYWdzID0gMHglMDh4IiwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oYmFzZSksIGZsYWdzXyk7CiAgIH0KIAogICBpZiAoZHluYW1pYyA9PSBudWxscHRyKSB7CiAgICAgaWYgKCFyZWxvY2F0aW5nX2xpbmtlcikgewotICAgICAgRExfRVJSKCJtaXNzaW5nIFBUX0RZTkFNSUMgaW4gXCIlc1wiIiwgbmFtZSk7CisgICAgICBETF9FUlIoIm1pc3NpbmcgUFRfRFlOQU1JQyBpbiBcIiVzXCIiLCBnZXRfc29uYW1lKCkpOwogICAgIH0KICAgICByZXR1cm4gZmFsc2U7CiAgIH0gZWxzZSB7CkBAIC0xODg0LDM4ICsyNDU0LDY0IEBACiAjZW5kaWYKIAogICAvLyBFeHRyYWN0IHVzZWZ1bCBpbmZvcm1hdGlvbiBmcm9tIGR5bmFtaWMgc2VjdGlvbi4KKyAgLy8gTm90ZSB0aGF0OiAiRXhjZXB0IGZvciB0aGUgRFRfTlVMTCBlbGVtZW50IGF0IHRoZSBlbmQgb2YgdGhlIGFycmF5LAorICAvLyBhbmQgdGhlIHJlbGF0aXZlIG9yZGVyIG9mIERUX05FRURFRCBlbGVtZW50cywgZW50cmllcyBtYXkgYXBwZWFyIGluIGFueSBvcmRlci4iCisgIC8vCisgIC8vIHNvdXJjZTogaHR0cDovL3d3dy5zY28uY29tL2RldmVsb3BlcnMvZ2FiaS8xOTk4LTA0LTI5L2NoNS5keW5hbWljLmh0bWwKICAgdWludDMyX3QgbmVlZGVkX2NvdW50ID0gMDsKICAgZm9yIChFbGZXKER5bikqIGQgPSBkeW5hbWljOyBkLT5kX3RhZyAhPSBEVF9OVUxMOyArK2QpIHsKICAgICBERUJVRygiZCA9ICVwLCBkWzBdKHRhZykgPSAlcCBkWzFdKHZhbCkgPSAlcCIsCiAgICAgICAgICAgZCwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oZC0+ZF90YWcpLCByZWludGVycHJldF9jYXN0PHZvaWQqPihkLT5kX3VuLmRfdmFsKSk7CiAgICAgc3dpdGNoIChkLT5kX3RhZykgewogICAgICAgY2FzZSBEVF9TT05BTUU6Ci0gICAgICAgIC8vIFRPRE86IGdsaWJjIGR5bmFtaWMgbGlua2VyIHVzZXMgdGhpcyBuYW1lIGZvcgotICAgICAgICAvLyBpbml0aWFsIGxpYnJhcnkgbG9va3VwOyBjb25zaWRlciBkb2luZyB0aGUgc2FtZSBoZXJlLgorICAgICAgICAvLyB0aGlzIGlzIHBhcnNlZCBhZnRlciB3ZSBoYXZlIHN0cnRhYiBpbml0aWFsaXplZCAoc2VlIGJlbG93KS4KICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfSEFTSDoKLSAgICAgICAgbmJ1Y2tldCA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKVswXTsKLSAgICAgICAgbmNoYWluID0gcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpWzFdOwotICAgICAgICBidWNrZXQgPSByZWludGVycHJldF9jYXN0PHVpbnQzMl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0ciArIDgpOwotICAgICAgICBjaGFpbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyICsgOCArIG5idWNrZXQgKiA0KTsKKyAgICAgICAgbmJ1Y2tldF8gPSByZWludGVycHJldF9jYXN0PHVpbnQzMl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cilbMF07CisgICAgICAgIG5jaGFpbl8gPSByZWludGVycHJldF9jYXN0PHVpbnQzMl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cilbMV07CisgICAgICAgIGJ1Y2tldF8gPSByZWludGVycHJldF9jYXN0PHVpbnQzMl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0ciArIDgpOworICAgICAgICBjaGFpbl8gPSByZWludGVycHJldF9jYXN0PHVpbnQzMl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0ciArIDggKyBuYnVja2V0XyAqIDQpOworICAgICAgICBicmVhazsKKworICAgICAgY2FzZSBEVF9HTlVfSEFTSDoKKyAgICAgICAgZ251X25idWNrZXRfID0gcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpWzBdOworICAgICAgICAvLyBza2lwIHN5bW5keAorICAgICAgICBnbnVfbWFza3dvcmRzXyA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKVsyXTsKKyAgICAgICAgZ251X3NoaWZ0Ml8gPSByZWludGVycHJldF9jYXN0PHVpbnQzMl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cilbM107CisKKyAgICAgICAgZ251X2Jsb29tX2ZpbHRlcl8gPSByZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyICsgMTYpOworICAgICAgICBnbnVfYnVja2V0XyA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihnbnVfYmxvb21fZmlsdGVyXyArIGdudV9tYXNrd29yZHNfKTsKKyAgICAgICAgLy8gYW1lbmQgY2hhaW4gZm9yIHN5bW5keCA9IGhlYWRlclsxXQorICAgICAgICBnbnVfY2hhaW5fID0gZ251X2J1Y2tldF8gKyBnbnVfbmJ1Y2tldF8gLQorICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpWzFdOworCisgICAgICAgIGlmICghcG93ZXJvZjIoZ251X21hc2t3b3Jkc18pKSB7CisgICAgICAgICAgRExfRVJSKCJpbnZhbGlkIG1hc2t3b3JkcyBmb3IgZ251X2hhc2ggPSAweCV4LCBpbiBcIiVzXCIgZXhwZWN0aW5nIHBvd2VyIHRvIHR3byIsCisgICAgICAgICAgICAgIGdudV9tYXNrd29yZHNfLCBnZXRfcmVhbHBhdGgoKSk7CisgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisgICAgICAgIC0tZ251X21hc2t3b3Jkc187CisKKyAgICAgICAgZmxhZ3NfIHw9IEZMQUdfR05VX0hBU0g7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX1NUUlRBQjoKLSAgICAgICAgc3RydGFiID0gcmVpbnRlcnByZXRfY2FzdDxjb25zdCBjaGFyKj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CisgICAgICAgIHN0cnRhYl8gPSByZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfU1RSU1o6Ci0gICAgICAgIHN0cnRhYl9zaXplID0gZC0+ZF91bi5kX3ZhbDsKKyAgICAgICAgc3RydGFiX3NpemVfID0gZC0+ZF91bi5kX3ZhbDsKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfU1lNVEFCOgotICAgICAgICBzeW10YWIgPSByZWludGVycHJldF9jYXN0PEVsZlcoU3ltKSo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpOworICAgICAgICBzeW10YWJfID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFN5bSkqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfU1lNRU5UOgogICAgICAgICBpZiAoZC0+ZF91bi5kX3ZhbCAhPSBzaXplb2YoRWxmVyhTeW0pKSkgewotICAgICAgICAgIERMX0VSUigiaW52YWxpZCBEVF9TWU1FTlQ6ICV6ZCIsIHN0YXRpY19jYXN0PHNpemVfdD4oZC0+ZF91bi5kX3ZhbCkpOworICAgICAgICAgIERMX0VSUigiaW52YWxpZCBEVF9TWU1FTlQ6ICV6ZCBpbiBcIiVzXCIiLAorICAgICAgICAgICAgICBzdGF0aWNfY2FzdDxzaXplX3Q+KGQtPmRfdW4uZF92YWwpLCBnZXRfcmVhbHBhdGgoKSk7CiAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICB9CiAgICAgICAgIGJyZWFrOwpAQCAtMTkyMywxMiArMjUxOSwxMiBAQAogICAgICAgY2FzZSBEVF9QTFRSRUw6CiAjaWYgZGVmaW5lZChVU0VfUkVMQSkKICAgICAgICAgaWYgKGQtPmRfdW4uZF92YWwgIT0gRFRfUkVMQSkgewotICAgICAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgRFRfUExUUkVMIGluIFwiJXNcIjsgZXhwZWN0ZWQgRFRfUkVMQSIsIG5hbWUpOworICAgICAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgRFRfUExUUkVMIGluIFwiJXNcIjsgZXhwZWN0ZWQgRFRfUkVMQSIsIGdldF9yZWFscGF0aCgpKTsKICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgIH0KICNlbHNlCiAgICAgICAgIGlmIChkLT5kX3VuLmRfdmFsICE9IERUX1JFTCkgewotICAgICAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgRFRfUExUUkVMIGluIFwiJXNcIjsgZXhwZWN0ZWQgRFRfUkVMIiwgbmFtZSk7CisgICAgICAgICAgRExfRVJSKCJ1bnN1cHBvcnRlZCBEVF9QTFRSRUwgaW4gXCIlc1wiOyBleHBlY3RlZCBEVF9SRUwiLCBnZXRfcmVhbHBhdGgoKSk7CiAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICB9CiAjZW5kaWYKQEAgLTE5MzYsMjQgKzI1MzIsMjQgQEAKIAogICAgICAgY2FzZSBEVF9KTVBSRUw6CiAjaWYgZGVmaW5lZChVU0VfUkVMQSkKLSAgICAgICAgcGx0X3JlbGEgPSByZWludGVycHJldF9jYXN0PEVsZlcoUmVsYSkqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKKyAgICAgICAgcGx0X3JlbGFfID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFJlbGEpKj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CiAjZWxzZQotICAgICAgICBwbHRfcmVsID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFJlbCkqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKKyAgICAgICAgcGx0X3JlbF8gPSByZWludGVycHJldF9jYXN0PEVsZlcoUmVsKSo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpOwogI2VuZGlmCiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX1BMVFJFTFNaOgogI2lmIGRlZmluZWQoVVNFX1JFTEEpCi0gICAgICAgIHBsdF9yZWxhX2NvdW50ID0gZC0+ZF91bi5kX3ZhbCAvIHNpemVvZihFbGZXKFJlbGEpKTsKKyAgICAgICAgcGx0X3JlbGFfY291bnRfID0gZC0+ZF91bi5kX3ZhbCAvIHNpemVvZihFbGZXKFJlbGEpKTsKICNlbHNlCi0gICAgICAgIHBsdF9yZWxfY291bnQgPSBkLT5kX3VuLmRfdmFsIC8gc2l6ZW9mKEVsZlcoUmVsKSk7CisgICAgICAgIHBsdF9yZWxfY291bnRfID0gZC0+ZF91bi5kX3ZhbCAvIHNpemVvZihFbGZXKFJlbCkpOwogI2VuZGlmCiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX1BMVEdPVDoKICNpZiBkZWZpbmVkKF9fbWlwc19fKQogICAgICAgICAvLyBVc2VkIGJ5IG1pcHMgYW5kIG1pcHM2NC4KLSAgICAgICAgcGx0X2dvdCA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSoqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKKyAgICAgICAgcGx0X2dvdF8gPSByZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqKj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CiAjZW5kaWYKICAgICAgICAgLy8gSWdub3JlIGZvciBvdGhlciBwbGF0Zm9ybXMuLi4gKGJlY2F1c2UgUlRMRF9MQVpZIGlzIG5vdCBzdXBwb3J0ZWQpCiAgICAgICAgIGJyZWFrOwpAQCAtMTk2OSwxNyArMjU2NSwzMyBAQAogICAgICAgICBpZiAoKGR5bmFtaWNfZmxhZ3MgJiBQRl9XKSAhPSAwKSB7CiAgICAgICAgICAgZC0+ZF91bi5kX3ZhbCA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PigmX3JfZGVidWcpOwogICAgICAgICB9Ci0gICAgICAgIGJyZWFrOwogI2VuZGlmCisgICAgICAgIGJyZWFrOwogI2lmIGRlZmluZWQoVVNFX1JFTEEpCiAgICAgICBjYXNlIERUX1JFTEE6Ci0gICAgICAgIHJlbGEgPSByZWludGVycHJldF9jYXN0PEVsZlcoUmVsYSkqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKKyAgICAgICAgcmVsYV8gPSByZWludGVycHJldF9jYXN0PEVsZlcoUmVsYSkqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfUkVMQVNaOgotICAgICAgICByZWxhX2NvdW50ID0gZC0+ZF91bi5kX3ZhbCAvIHNpemVvZihFbGZXKFJlbGEpKTsKKyAgICAgICAgcmVsYV9jb3VudF8gPSBkLT5kX3VuLmRfdmFsIC8gc2l6ZW9mKEVsZlcoUmVsYSkpOwogICAgICAgICBicmVhazsKIAorICAgICAgY2FzZSBEVF9BTkRST0lEX1JFTEE6CisgICAgICAgIGFuZHJvaWRfcmVsb2NzXyA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpOworICAgICAgICBicmVhazsKKworICAgICAgY2FzZSBEVF9BTkRST0lEX1JFTEFTWjoKKyAgICAgICAgYW5kcm9pZF9yZWxvY3Nfc2l6ZV8gPSBkLT5kX3VuLmRfdmFsOworICAgICAgICBicmVhazsKKworICAgICAgY2FzZSBEVF9BTkRST0lEX1JFTDoKKyAgICAgICAgRExfRVJSKCJ1bnN1cHBvcnRlZCBEVF9BTkRST0lEX1JFTCBpbiBcIiVzXCIiLCBnZXRfcmVhbHBhdGgoKSk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgICAgY2FzZSBEVF9BTkRST0lEX1JFTFNaOgorICAgICAgICBETF9FUlIoInVuc3VwcG9ydGVkIERUX0FORFJPSURfUkVMU1ogaW4gXCIlc1wiIiwgZ2V0X3JlYWxwYXRoKCkpOworICAgICAgICByZXR1cm4gZmFsc2U7CisKICAgICAgIGNhc2UgRFRfUkVMQUVOVDoKICAgICAgICAgaWYgKGQtPmRfdW4uZF92YWwgIT0gc2l6ZW9mKEVsZlcoUmVsYSkpKSB7CiAgICAgICAgICAgRExfRVJSKCJpbnZhbGlkIERUX1JFTEFFTlQ6ICV6ZCIsIHN0YXRpY19jYXN0PHNpemVfdD4oZC0+ZF91bi5kX3ZhbCkpOwpAQCAtMTk5MiwxOSArMjYwNCwyMCBAQAogICAgICAgICBicmVhazsKIAogICAgICAgY2FzZSBEVF9SRUw6Ci0gICAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgRFRfUkVMIGluIFwiJXNcIiIsIG5hbWUpOworICAgICAgICBETF9FUlIoInVuc3VwcG9ydGVkIERUX1JFTCBpbiBcIiVzXCIiLCBnZXRfcmVhbHBhdGgoKSk7CiAgICAgICAgIHJldHVybiBmYWxzZTsKIAogICAgICAgY2FzZSBEVF9SRUxTWjoKLSAgICAgICAgRExfRVJSKCJ1bnN1cHBvcnRlZCBEVF9SRUxTWiBpbiBcIiVzXCIiLCBuYW1lKTsKKyAgICAgICAgRExfRVJSKCJ1bnN1cHBvcnRlZCBEVF9SRUxTWiBpbiBcIiVzXCIiLCBnZXRfcmVhbHBhdGgoKSk7CiAgICAgICAgIHJldHVybiBmYWxzZTsKKwogI2Vsc2UKICAgICAgIGNhc2UgRFRfUkVMOgotICAgICAgICByZWwgPSByZWludGVycHJldF9jYXN0PEVsZlcoUmVsKSo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpOworICAgICAgICByZWxfID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFJlbCkqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfUkVMU1o6Ci0gICAgICAgIHJlbF9jb3VudCA9IGQtPmRfdW4uZF92YWwgLyBzaXplb2YoRWxmVyhSZWwpKTsKKyAgICAgICAgcmVsX2NvdW50XyA9IGQtPmRfdW4uZF92YWwgLyBzaXplb2YoRWxmVyhSZWwpKTsKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfUkVMRU5UOgpAQCAtMjAxNCw2ICsyNjI3LDIyIEBACiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAKKyAgICAgIGNhc2UgRFRfQU5EUk9JRF9SRUw6CisgICAgICAgIGFuZHJvaWRfcmVsb2NzXyA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCo+KGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHIpOworICAgICAgICBicmVhazsKKworICAgICAgY2FzZSBEVF9BTkRST0lEX1JFTFNaOgorICAgICAgICBhbmRyb2lkX3JlbG9jc19zaXplXyA9IGQtPmRfdW4uZF92YWw7CisgICAgICAgIGJyZWFrOworCisgICAgICBjYXNlIERUX0FORFJPSURfUkVMQToKKyAgICAgICAgRExfRVJSKCJ1bnN1cHBvcnRlZCBEVF9BTkRST0lEX1JFTEEgaW4gXCIlc1wiIiwgZ2V0X3JlYWxwYXRoKCkpOworICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAgIGNhc2UgRFRfQU5EUk9JRF9SRUxBU1o6CisgICAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgRFRfQU5EUk9JRF9SRUxBU1ogaW4gXCIlc1wiIiwgZ2V0X3JlYWxwYXRoKCkpOworICAgICAgICByZXR1cm4gZmFsc2U7CisKICAgICAgIC8vICJJbmRpY2F0ZXMgdGhhdCBhbGwgUkVMQVRJVkUgcmVsb2NhdGlvbnMgaGF2ZSBiZWVuIGNvbmNhdGVuYXRlZCB0b2dldGhlciwKICAgICAgIC8vIGFuZCBzcGVjaWZpZXMgdGhlIFJFTEFUSVZFIHJlbG9jYXRpb24gY291bnQuIgogICAgICAgLy8KQEAgLTIwMjEsNTAgKzI2NTAsNTYgQEAKICAgICAgIC8vIE5vdCBjdXJyZW50bHkgdXNlZCBieSBiaW9uaWMgbGlua2VyIC0gaWdub3JlZC4KICAgICAgIGNhc2UgRFRfUkVMQ09VTlQ6CiAgICAgICAgIGJyZWFrOworCiAgICAgICBjYXNlIERUX1JFTEE6Ci0gICAgICAgIERMX0VSUigidW5zdXBwb3J0ZWQgRFRfUkVMQSBpbiBcIiVzXCIiLCBuYW1lKTsKKyAgICAgICAgRExfRVJSKCJ1bnN1cHBvcnRlZCBEVF9SRUxBIGluIFwiJXNcIiIsIGdldF9yZWFscGF0aCgpKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICBjYXNlIERUX1JFTEFTWjoKKyAgICAgICAgRExfRVJSKCJ1bnN1cHBvcnRlZCBEVF9SRUxBU1ogaW4gXCIlc1wiIiwgZ2V0X3JlYWxwYXRoKCkpOworICAgICAgICByZXR1cm4gZmFsc2U7CisKICNlbmRpZgogICAgICAgY2FzZSBEVF9JTklUOgotICAgICAgICBpbml0X2Z1bmMgPSByZWludGVycHJldF9jYXN0PGxpbmtlcl9mdW5jdGlvbl90Pihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKLSAgICAgICAgREVCVUcoIiVzIGNvbnN0cnVjdG9ycyAoRFRfSU5JVCkgZm91bmQgYXQgJXAiLCBuYW1lLCBpbml0X2Z1bmMpOworICAgICAgICBpbml0X2Z1bmNfID0gcmVpbnRlcnByZXRfY2FzdDxsaW5rZXJfZnVuY3Rpb25fdD4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CisgICAgICAgIERFQlVHKCIlcyBjb25zdHJ1Y3RvcnMgKERUX0lOSVQpIGZvdW5kIGF0ICVwIiwgZ2V0X3JlYWxwYXRoKCksIGluaXRfZnVuY18pOwogICAgICAgICBicmVhazsKIAogICAgICAgY2FzZSBEVF9GSU5JOgotICAgICAgICBmaW5pX2Z1bmMgPSByZWludGVycHJldF9jYXN0PGxpbmtlcl9mdW5jdGlvbl90Pihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKLSAgICAgICAgREVCVUcoIiVzIGRlc3RydWN0b3JzIChEVF9GSU5JKSBmb3VuZCBhdCAlcCIsIG5hbWUsIGZpbmlfZnVuYyk7CisgICAgICAgIGZpbmlfZnVuY18gPSByZWludGVycHJldF9jYXN0PGxpbmtlcl9mdW5jdGlvbl90Pihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKKyAgICAgICAgREVCVUcoIiVzIGRlc3RydWN0b3JzIChEVF9GSU5JKSBmb3VuZCBhdCAlcCIsIGdldF9yZWFscGF0aCgpLCBmaW5pX2Z1bmNfKTsKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfSU5JVF9BUlJBWToKLSAgICAgICAgaW5pdF9hcnJheSA9IHJlaW50ZXJwcmV0X2Nhc3Q8bGlua2VyX2Z1bmN0aW9uX3QqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKLSAgICAgICAgREVCVUcoIiVzIGNvbnN0cnVjdG9ycyAoRFRfSU5JVF9BUlJBWSkgZm91bmQgYXQgJXAiLCBuYW1lLCBpbml0X2FycmF5KTsKKyAgICAgICAgaW5pdF9hcnJheV8gPSByZWludGVycHJldF9jYXN0PGxpbmtlcl9mdW5jdGlvbl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CisgICAgICAgIERFQlVHKCIlcyBjb25zdHJ1Y3RvcnMgKERUX0lOSVRfQVJSQVkpIGZvdW5kIGF0ICVwIiwgZ2V0X3JlYWxwYXRoKCksIGluaXRfYXJyYXlfKTsKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfSU5JVF9BUlJBWVNaOgotICAgICAgICBpbml0X2FycmF5X2NvdW50ID0gKCh1bnNpZ25lZClkLT5kX3VuLmRfdmFsKSAvIHNpemVvZihFbGZXKEFkZHIpKTsKKyAgICAgICAgaW5pdF9hcnJheV9jb3VudF8gPSBzdGF0aWNfY2FzdDx1aW50MzJfdD4oZC0+ZF91bi5kX3ZhbCkgLyBzaXplb2YoRWxmVyhBZGRyKSk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX0ZJTklfQVJSQVk6Ci0gICAgICAgIGZpbmlfYXJyYXkgPSByZWludGVycHJldF9jYXN0PGxpbmtlcl9mdW5jdGlvbl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7Ci0gICAgICAgIERFQlVHKCIlcyBkZXN0cnVjdG9ycyAoRFRfRklOSV9BUlJBWSkgZm91bmQgYXQgJXAiLCBuYW1lLCBmaW5pX2FycmF5KTsKKyAgICAgICAgZmluaV9hcnJheV8gPSByZWludGVycHJldF9jYXN0PGxpbmtlcl9mdW5jdGlvbl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CisgICAgICAgIERFQlVHKCIlcyBkZXN0cnVjdG9ycyAoRFRfRklOSV9BUlJBWSkgZm91bmQgYXQgJXAiLCBnZXRfcmVhbHBhdGgoKSwgZmluaV9hcnJheV8pOwogICAgICAgICBicmVhazsKIAogICAgICAgY2FzZSBEVF9GSU5JX0FSUkFZU1o6Ci0gICAgICAgIGZpbmlfYXJyYXlfY291bnQgPSAoKHVuc2lnbmVkKWQtPmRfdW4uZF92YWwpIC8gc2l6ZW9mKEVsZlcoQWRkcikpOworICAgICAgICBmaW5pX2FycmF5X2NvdW50XyA9IHN0YXRpY19jYXN0PHVpbnQzMl90PihkLT5kX3VuLmRfdmFsKSAvIHNpemVvZihFbGZXKEFkZHIpKTsKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfUFJFSU5JVF9BUlJBWToKLSAgICAgICAgcHJlaW5pdF9hcnJheSA9IHJlaW50ZXJwcmV0X2Nhc3Q8bGlua2VyX2Z1bmN0aW9uX3QqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKLSAgICAgICAgREVCVUcoIiVzIGNvbnN0cnVjdG9ycyAoRFRfUFJFSU5JVF9BUlJBWSkgZm91bmQgYXQgJXAiLCBuYW1lLCBwcmVpbml0X2FycmF5KTsKKyAgICAgICAgcHJlaW5pdF9hcnJheV8gPSByZWludGVycHJldF9jYXN0PGxpbmtlcl9mdW5jdGlvbl90Kj4obG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cik7CisgICAgICAgIERFQlVHKCIlcyBjb25zdHJ1Y3RvcnMgKERUX1BSRUlOSVRfQVJSQVkpIGZvdW5kIGF0ICVwIiwgZ2V0X3JlYWxwYXRoKCksIHByZWluaXRfYXJyYXlfKTsKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGNhc2UgRFRfUFJFSU5JVF9BUlJBWVNaOgotICAgICAgICBwcmVpbml0X2FycmF5X2NvdW50ID0gKCh1bnNpZ25lZClkLT5kX3VuLmRfdmFsKSAvIHNpemVvZihFbGZXKEFkZHIpKTsKKyAgICAgICAgcHJlaW5pdF9hcnJheV9jb3VudF8gPSBzdGF0aWNfY2FzdDx1aW50MzJfdD4oZC0+ZF91bi5kX3ZhbCkgLyBzaXplb2YoRWxmVyhBZGRyKSk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX1RFWFRSRUw6CiAjaWYgZGVmaW5lZChfX0xQNjRfXykKLSAgICAgICAgRExfRVJSKCJ0ZXh0IHJlbG9jYXRpb25zIChEVF9URVhUUkVMKSBmb3VuZCBpbiA2NC1iaXQgRUxGIGZpbGUgXCIlc1wiIiwgbmFtZSk7CisgICAgICAgIERMX0VSUigidGV4dCByZWxvY2F0aW9ucyAoRFRfVEVYVFJFTCkgZm91bmQgaW4gNjQtYml0IEVMRiBmaWxlIFwiJXNcIiIsIGdldF9yZWFscGF0aCgpKTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogI2Vsc2UKICAgICAgICAgaGFzX3RleHRfcmVsb2NhdGlvbnMgPSB0cnVlOwpAQCAtMjA4Miw3ICsyNzE3LDcgQEAKICAgICAgIGNhc2UgRFRfRkxBR1M6CiAgICAgICAgIGlmIChkLT5kX3VuLmRfdmFsICYgREZfVEVYVFJFTCkgewogI2lmIGRlZmluZWQoX19MUDY0X18pCi0gICAgICAgICAgRExfRVJSKCJ0ZXh0IHJlbG9jYXRpb25zIChERl9URVhUUkVMKSBmb3VuZCBpbiA2NC1iaXQgRUxGIGZpbGUgXCIlc1wiIiwgbmFtZSk7CisgICAgICAgICAgRExfRVJSKCJ0ZXh0IHJlbG9jYXRpb25zIChERl9URVhUUkVMKSBmb3VuZCBpbiA2NC1iaXQgRUxGIGZpbGUgXCIlc1wiIiwgZ2V0X3JlYWxwYXRoKCkpOwogICAgICAgICAgIHJldHVybiBmYWxzZTsKICNlbHNlCiAgICAgICAgICAgaGFzX3RleHRfcmVsb2NhdGlvbnMgPSB0cnVlOwpAQCAtMjA5NCwxMiArMjcyOSw5IEBACiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX0ZMQUdTXzE6Ci0gICAgICAgIGlmICgoZC0+ZF91bi5kX3ZhbCAmIERGXzFfR0xPQkFMKSAhPSAwKSB7Ci0gICAgICAgICAgcnRsZF9mbGFncyB8PSBSVExEX0dMT0JBTDsKLSAgICAgICAgfQotICAgICAgICAvLyBUT0RPOiBJbXBsZW1lbnQgb3RoZXIgZmxhZ3MKKyAgICAgICAgc2V0X2R0X2ZsYWdzXzEoZC0+ZF91bi5kX3ZhbCk7CiAKLSAgICAgICAgaWYgKChkLT5kX3VuLmRfdmFsICYgfihERl8xX05PVyB8IERGXzFfR0xPQkFMKSkgIT0gMCkgeworICAgICAgICBpZiAoKGQtPmRfdW4uZF92YWwgJiB+U1VQUE9SVEVEX0RUX0ZMQUdTXzEpICE9IDApIHsKICAgICAgICAgICBETF9XQVJOKCJVbnN1cHBvcnRlZCBmbGFncyBEVF9GTEFHU18xPSVwIiwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oZC0+ZF91bi5kX3ZhbCkpOwogICAgICAgICB9CiAgICAgICAgIGJyZWFrOwpAQCAtMjExMSw2ICsyNzQzLDE0IEBACiAgICAgICAgICAgKmRwID0gJl9yX2RlYnVnOwogICAgICAgICB9CiAgICAgICAgIGJyZWFrOworICAgICAgY2FzZSBEVF9NSVBTX1JMRF9NQVAyOgorICAgICAgICAvLyBTZXQgdGhlIERUX01JUFNfUkxEX01BUDIgZW50cnkgdG8gdGhlIGFkZHJlc3Mgb2YgX3JfZGVidWcgZm9yIEdEQi4KKyAgICAgICAgeworICAgICAgICAgIHJfZGVidWcqKiBkcCA9IHJlaW50ZXJwcmV0X2Nhc3Q8cl9kZWJ1ZyoqPigKKyAgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpPihkKSArIGQtPmRfdW4uZF92YWwpOworICAgICAgICAgICpkcCA9ICZfcl9kZWJ1ZzsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKIAogICAgICAgY2FzZSBEVF9NSVBTX1JMRF9WRVJTSU9OOgogICAgICAgY2FzZSBEVF9NSVBTX0ZMQUdTOgpAQCAtMjExOSwxMTcgKzI3NTksMTg2IEBACiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX01JUFNfU1lNVEFCTk86Ci0gICAgICAgIG1pcHNfc3ltdGFibm8gPSBkLT5kX3VuLmRfdmFsOworICAgICAgICBtaXBzX3N5bXRhYm5vXyA9IGQtPmRfdW4uZF92YWw7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX01JUFNfTE9DQUxfR09UTk86Ci0gICAgICAgIG1pcHNfbG9jYWxfZ290bm8gPSBkLT5kX3VuLmRfdmFsOworICAgICAgICBtaXBzX2xvY2FsX2dvdG5vXyA9IGQtPmRfdW4uZF92YWw7CiAgICAgICAgIGJyZWFrOwogCiAgICAgICBjYXNlIERUX01JUFNfR09UU1lNOgotICAgICAgICBtaXBzX2dvdHN5bSA9IGQtPmRfdW4uZF92YWw7CisgICAgICAgIG1pcHNfZ290c3ltXyA9IGQtPmRfdW4uZF92YWw7CiAgICAgICAgIGJyZWFrOwogI2VuZGlmCiAgICAgICAvLyBJZ25vcmVkOiAiSXRzIHVzZSBoYXMgYmVlbiBzdXBlcnNlZGVkIGJ5IHRoZSBERl9CSU5EX05PVyBmbGFnIgogICAgICAgY2FzZSBEVF9CSU5EX05PVzoKICAgICAgICAgYnJlYWs7CiAKLSAgICAgIC8vIElnbm9yZTogYmlvbmljIGRvZXMgbm90IHN1cHBvcnQgc3ltYm9sIHZlcnNpb25pbmcuLi4KICAgICAgIGNhc2UgRFRfVkVSU1lNOgorICAgICAgICB2ZXJzeW1fID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKFZlcnN5bSkqPihsb2FkX2JpYXMgKyBkLT5kX3VuLmRfcHRyKTsKKyAgICAgICAgYnJlYWs7CisKICAgICAgIGNhc2UgRFRfVkVSREVGOgorICAgICAgICB2ZXJkZWZfcHRyXyA9IGxvYWRfYmlhcyArIGQtPmRfdW4uZF9wdHI7CisgICAgICAgIGJyZWFrOwogICAgICAgY2FzZSBEVF9WRVJERUZOVU06CisgICAgICAgIHZlcmRlZl9jbnRfID0gZC0+ZF91bi5kX3ZhbDsKKyAgICAgICAgYnJlYWs7CisKKyAgICAgIGNhc2UgRFRfVkVSTkVFRDoKKyAgICAgICAgdmVybmVlZF9wdHJfID0gbG9hZF9iaWFzICsgZC0+ZF91bi5kX3B0cjsKKyAgICAgICAgYnJlYWs7CisKKyAgICAgIGNhc2UgRFRfVkVSTkVFRE5VTToKKyAgICAgICAgdmVybmVlZF9jbnRfID0gZC0+ZF91bi5kX3ZhbDsKICAgICAgICAgYnJlYWs7CiAKICAgICAgIGRlZmF1bHQ6CiAgICAgICAgIGlmICghcmVsb2NhdGluZ19saW5rZXIpIHsKLSAgICAgICAgICBETF9XQVJOKCIlczogdW51c2VkIERUIGVudHJ5OiB0eXBlICVwIGFyZyAlcCIsIG5hbWUsCisgICAgICAgICAgRExfV0FSTigiJXM6IHVudXNlZCBEVCBlbnRyeTogdHlwZSAlcCBhcmcgJXAiLCBnZXRfcmVhbHBhdGgoKSwKICAgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oZC0+ZF90YWcpLCByZWludGVycHJldF9jYXN0PHZvaWQqPihkLT5kX3VuLmRfdmFsKSk7CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgfQogICB9CiAKKyAgLy8gc2Vjb25kIHBhc3MgLSBwYXJzZSBlbnRyaWVzIHJlbHlpbmcgb24gc3RydGFiCisgIGZvciAoRWxmVyhEeW4pKiBkID0gZHluYW1pYzsgZC0+ZF90YWcgIT0gRFRfTlVMTDsgKytkKSB7CisgICAgaWYgKGQtPmRfdGFnID09IERUX1NPTkFNRSkgeworICAgICAgc29uYW1lXyA9IGdldF9zdHJpbmcoZC0+ZF91bi5kX3ZhbCk7CisjaWYgZGVmaW5lZChfX2FybV9fKQorICAgICAgc3RybGNweShvbGRfbmFtZV8sIHNvbmFtZV8sIHNpemVvZihvbGRfbmFtZV8pKTsKKyNlbmRpZgorICAgICAgYnJlYWs7CisgICAgfQorICB9CisKICAgREVCVUcoInNpLT5iYXNlID0gJXAsIHNpLT5zdHJ0YWIgPSAlcCwgc2ktPnN5bXRhYiA9ICVwIiwKLSAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oYmFzZSksIHN0cnRhYiwgc3ltdGFiKTsKKyAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oYmFzZSksIHN0cnRhYl8sIHN5bXRhYl8pOwogCiAgIC8vIFNhbml0eSBjaGVja3MuCiAgIGlmIChyZWxvY2F0aW5nX2xpbmtlciAmJiBuZWVkZWRfY291bnQgIT0gMCkgewogICAgIERMX0VSUigibGlua2VyIGNhbm5vdCBoYXZlIERUX05FRURFRCBkZXBlbmRlbmNpZXMgb24gb3RoZXIgbGlicmFyaWVzIik7CiAgICAgcmV0dXJuIGZhbHNlOwogICB9Ci0gIGlmIChuYnVja2V0ID09IDApIHsKLSAgICBETF9FUlIoImVtcHR5L21pc3NpbmcgRFRfSEFTSCBpbiBcIiVzXCIgKGJ1aWx0IHdpdGggLS1oYXNoLXN0eWxlPWdudT8pIiwgbmFtZSk7CisgIGlmIChuYnVja2V0XyA9PSAwICYmIGdudV9uYnVja2V0XyA9PSAwKSB7CisgICAgRExfRVJSKCJlbXB0eS9taXNzaW5nIERUX0hBU0gvRFRfR05VX0hBU0ggaW4gXCIlc1wiICIKKyAgICAgICAgIihuZXcgaGFzaCB0eXBlIGZyb20gdGhlIGZ1dHVyZT8pIiwgZ2V0X3NvbmFtZSgpKTsKICAgICByZXR1cm4gZmFsc2U7CiAgIH0KLSAgaWYgKHN0cnRhYiA9PSAwKSB7Ci0gICAgRExfRVJSKCJlbXB0eS9taXNzaW5nIERUX1NUUlRBQiBpbiBcIiVzXCIiLCBuYW1lKTsKKyAgaWYgKHN0cnRhYl8gPT0gMCkgeworICAgIERMX0VSUigiZW1wdHkvbWlzc2luZyBEVF9TVFJUQUIgaW4gXCIlc1wiIiwgZ2V0X3NvbmFtZSgpKTsKICAgICByZXR1cm4gZmFsc2U7CiAgIH0KLSAgaWYgKHN5bXRhYiA9PSAwKSB7Ci0gICAgRExfRVJSKCJlbXB0eS9taXNzaW5nIERUX1NZTVRBQiBpbiBcIiVzXCIiLCBuYW1lKTsKKyAgaWYgKHN5bXRhYl8gPT0gMCkgeworICAgIERMX0VSUigiZW1wdHkvbWlzc2luZyBEVF9TWU1UQUIgaW4gXCIlc1wiIiwgZ2V0X3NvbmFtZSgpKTsKICAgICByZXR1cm4gZmFsc2U7CiAgIH0KICAgcmV0dXJuIHRydWU7CiB9CiAKLWJvb2wgc29pbmZvOjpMaW5rSW1hZ2UoY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pIHsKK2Jvb2wgc29pbmZvOjpsaW5rX2ltYWdlKGNvbnN0IHNvaW5mb19saXN0X3QmIGdsb2JhbF9ncm91cCwgY29uc3Qgc29pbmZvX2xpc3RfdCYgbG9jYWxfZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBhbmRyb2lkX2RsZXh0aW5mbyogZXh0aW5mbykgeworCisgIGxvY2FsX2dyb3VwX3Jvb3RfID0gbG9jYWxfZ3JvdXAuZnJvbnQoKTsKKyAgaWYgKGxvY2FsX2dyb3VwX3Jvb3RfID09IG51bGxwdHIpIHsKKyAgICBsb2NhbF9ncm91cF9yb290XyA9IHRoaXM7CisgIH0KKworICBWZXJzaW9uVHJhY2tlciB2ZXJzaW9uX3RyYWNrZXI7CisKKyAgaWYgKCF2ZXJzaW9uX3RyYWNrZXIuaW5pdCh0aGlzKSkgeworICAgIHJldHVybiBmYWxzZTsKKyAgfQogCiAjaWYgIWRlZmluZWQoX19MUDY0X18pCiAgIGlmIChoYXNfdGV4dF9yZWxvY2F0aW9ucykgewogICAgIC8vIE1ha2Ugc2VnbWVudHMgd3JpdGFibGUgdG8gYWxsb3cgdGV4dCByZWxvY2F0aW9ucyB0byB3b3JrIHByb3Blcmx5LiBXZSB3aWxsIGxhdGVyIGNhbGwKICAgICAvLyBwaGRyX3RhYmxlX3Byb3RlY3Rfc2VnbWVudHMoKSBhZnRlciBhbGwgb2YgdGhlbSBhcmUgYXBwbGllZCBhbmQgYWxsIGNvbnN0cnVjdG9ycyBhcmUgcnVuLgogICAgIERMX1dBUk4oIiVzIGhhcyB0ZXh0IHJlbG9jYXRpb25zLiBUaGlzIGlzIHdhc3RpbmcgbWVtb3J5IGFuZCBwcmV2ZW50cyAiCi0gICAgICAgICAgICAic2VjdXJpdHkgaGFyZGVuaW5nLiBQbGVhc2UgZml4LiIsIG5hbWUpOworICAgICAgICAgICAgInNlY3VyaXR5IGhhcmRlbmluZy4gUGxlYXNlIGZpeC4iLCBnZXRfc29uYW1lKCkpOwogICAgIGlmIChwaGRyX3RhYmxlX3VucHJvdGVjdF9zZWdtZW50cyhwaGRyLCBwaG51bSwgbG9hZF9iaWFzKSA8IDApIHsKICAgICAgIERMX0VSUigiY2FuJ3QgdW5wcm90ZWN0IGxvYWRhYmxlIHNlZ21lbnRzIGZvciBcIiVzXCI6ICVzIiwKLSAgICAgICAgICAgICBuYW1lLCBzdHJlcnJvcihlcnJubykpOworICAgICAgICAgICAgIGdldF9zb25hbWUoKSwgc3RyZXJyb3IoZXJybm8pKTsKICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgIH0KICNlbmRpZgogCi0jaWYgZGVmaW5lZChVU0VfUkVMQSkKLSAgaWYgKHJlbGEgIT0gbnVsbHB0cikgewotICAgIERFQlVHKCJbIHJlbG9jYXRpbmcgJXMgXSIsIG5hbWUpOwotICAgIGlmIChSZWxvY2F0ZShyZWxhLCByZWxhX2NvdW50KSkgeworICBpZiAoYW5kcm9pZF9yZWxvY3NfICE9IG51bGxwdHIpIHsKKyAgICAvLyBjaGVjayBzaWduYXR1cmUKKyAgICBpZiAoYW5kcm9pZF9yZWxvY3Nfc2l6ZV8gPiAzICYmCisgICAgICAgIGFuZHJvaWRfcmVsb2NzX1swXSA9PSAnQScgJiYKKyAgICAgICAgYW5kcm9pZF9yZWxvY3NfWzFdID09ICdQJyAmJgorICAgICAgICBhbmRyb2lkX3JlbG9jc19bMl0gPT0gJ1MnICYmCisgICAgICAgIGFuZHJvaWRfcmVsb2NzX1szXSA9PSAnMicpIHsKKyAgICAgIERFQlVHKCJbIGFuZHJvaWQgcmVsb2NhdGluZyAlcyBdIiwgZ2V0X3NvbmFtZSgpKTsKKworICAgICAgYm9vbCByZWxvY2F0ZWQgPSBmYWxzZTsKKyAgICAgIGNvbnN0IHVpbnQ4X3QqIHBhY2tlZF9yZWxvY3MgPSBhbmRyb2lkX3JlbG9jc18gKyA0OworICAgICAgY29uc3Qgc2l6ZV90IHBhY2tlZF9yZWxvY3Nfc2l6ZSA9IGFuZHJvaWRfcmVsb2NzX3NpemVfIC0gNDsKKworICAgICAgcmVsb2NhdGVkID0gcmVsb2NhdGUoCisgICAgICAgICAgdmVyc2lvbl90cmFja2VyLAorICAgICAgICAgIHBhY2tlZF9yZWxvY19pdGVyYXRvcjxzbGViMTI4X2RlY29kZXI+KAorICAgICAgICAgICAgc2xlYjEyOF9kZWNvZGVyKHBhY2tlZF9yZWxvY3MsIHBhY2tlZF9yZWxvY3Nfc2l6ZSkpLAorICAgICAgICAgIGdsb2JhbF9ncm91cCwgbG9jYWxfZ3JvdXApOworCisgICAgICBpZiAoIXJlbG9jYXRlZCkgeworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgIERMX0VSUigiYmFkIGFuZHJvaWQgcmVsb2NhdGlvbiBoZWFkZXIuIik7CiAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogICB9Ci0gIGlmIChwbHRfcmVsYSAhPSBudWxscHRyKSB7Ci0gICAgREVCVUcoIlsgcmVsb2NhdGluZyAlcyBwbHQgXSIsIG5hbWUpOwotICAgIGlmIChSZWxvY2F0ZShwbHRfcmVsYSwgcGx0X3JlbGFfY291bnQpKSB7CisKKyNpZiBkZWZpbmVkKFVTRV9SRUxBKQorICBpZiAocmVsYV8gIT0gbnVsbHB0cikgeworICAgIERFQlVHKCJbIHJlbG9jYXRpbmcgJXMgXSIsIGdldF9zb25hbWUoKSk7CisgICAgaWYgKCFyZWxvY2F0ZSh2ZXJzaW9uX3RyYWNrZXIsCisgICAgICAgICAgICBwbGFpbl9yZWxvY19pdGVyYXRvcihyZWxhXywgcmVsYV9jb3VudF8pLCBnbG9iYWxfZ3JvdXAsIGxvY2FsX2dyb3VwKSkgeworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgfQorICBpZiAocGx0X3JlbGFfICE9IG51bGxwdHIpIHsKKyAgICBERUJVRygiWyByZWxvY2F0aW5nICVzIHBsdCBdIiwgZ2V0X3NvbmFtZSgpKTsKKyAgICBpZiAoIXJlbG9jYXRlKHZlcnNpb25fdHJhY2tlciwKKyAgICAgICAgICAgIHBsYWluX3JlbG9jX2l0ZXJhdG9yKHBsdF9yZWxhXywgcGx0X3JlbGFfY291bnRfKSwgZ2xvYmFsX2dyb3VwLCBsb2NhbF9ncm91cCkpIHsKICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgIH0KICNlbHNlCi0gIGlmIChyZWwgIT0gbnVsbHB0cikgewotICAgIERFQlVHKCJbIHJlbG9jYXRpbmcgJXMgXSIsIG5hbWUpOwotICAgIGlmIChSZWxvY2F0ZShyZWwsIHJlbF9jb3VudCkpIHsKKyAgaWYgKHJlbF8gIT0gbnVsbHB0cikgeworICAgIERFQlVHKCJbIHJlbG9jYXRpbmcgJXMgXSIsIGdldF9zb25hbWUoKSk7CisgICAgaWYgKCFyZWxvY2F0ZSh2ZXJzaW9uX3RyYWNrZXIsCisgICAgICAgICAgICBwbGFpbl9yZWxvY19pdGVyYXRvcihyZWxfLCByZWxfY291bnRfKSwgZ2xvYmFsX2dyb3VwLCBsb2NhbF9ncm91cCkpIHsKICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgIH0KLSAgaWYgKHBsdF9yZWwgIT0gbnVsbHB0cikgewotICAgIERFQlVHKCJbIHJlbG9jYXRpbmcgJXMgcGx0IF0iLCBuYW1lKTsKLSAgICBpZiAoUmVsb2NhdGUocGx0X3JlbCwgcGx0X3JlbF9jb3VudCkpIHsKKyAgaWYgKHBsdF9yZWxfICE9IG51bGxwdHIpIHsKKyAgICBERUJVRygiWyByZWxvY2F0aW5nICVzIHBsdCBdIiwgZ2V0X3NvbmFtZSgpKTsKKyAgICBpZiAoIXJlbG9jYXRlKHZlcnNpb25fdHJhY2tlciwKKyAgICAgICAgICAgIHBsYWluX3JlbG9jX2l0ZXJhdG9yKHBsdF9yZWxfLCBwbHRfcmVsX2NvdW50XyksIGdsb2JhbF9ncm91cCwgbG9jYWxfZ3JvdXApKSB7CiAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogICB9CiAjZW5kaWYKIAogI2lmIGRlZmluZWQoX19taXBzX18pCi0gIGlmICghbWlwc19yZWxvY2F0ZV9nb3QodGhpcykpIHsKKyAgaWYgKCFtaXBzX3JlbG9jYXRlX2dvdCh2ZXJzaW9uX3RyYWNrZXIsIGdsb2JhbF9ncm91cCwgbG9jYWxfZ3JvdXApKSB7CiAgICAgcmV0dXJuIGZhbHNlOwogICB9CiAjZW5kaWYKIAotICBERUJVRygiWyBmaW5pc2hlZCBsaW5raW5nICVzIF0iLCBuYW1lKTsKKyAgREVCVUcoIlsgZmluaXNoZWQgbGlua2luZyAlcyBdIiwgZ2V0X3NvbmFtZSgpKTsKIAogI2lmICFkZWZpbmVkKF9fTFA2NF9fKQogICBpZiAoaGFzX3RleHRfcmVsb2NhdGlvbnMpIHsKICAgICAvLyBBbGwgcmVsb2NhdGlvbnMgYXJlIGRvbmUsIHdlIGNhbiBwcm90ZWN0IG91ciBzZWdtZW50cyBiYWNrIHRvIHJlYWQtb25seS4KICAgICBpZiAocGhkcl90YWJsZV9wcm90ZWN0X3NlZ21lbnRzKHBoZHIsIHBobnVtLCBsb2FkX2JpYXMpIDwgMCkgewogICAgICAgRExfRVJSKCJjYW4ndCBwcm90ZWN0IHNlZ21lbnRzIGZvciBcIiVzXCI6ICVzIiwKLSAgICAgICAgICAgICBuYW1lLCBzdHJlcnJvcihlcnJubykpOworICAgICAgICAgICAgIGdldF9zb25hbWUoKSwgc3RyZXJyb3IoZXJybm8pKTsKICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgIH0KQEAgLTIyMzgsNyArMjk0Nyw3IEBACiAgIC8qIFdlIGNhbiBhbHNvIHR1cm4gb24gR05VIFJFTFJPIHByb3RlY3Rpb24gKi8KICAgaWYgKHBoZHJfdGFibGVfcHJvdGVjdF9nbnVfcmVscm8ocGhkciwgcGhudW0sIGxvYWRfYmlhcykgPCAwKSB7CiAgICAgRExfRVJSKCJjYW4ndCBlbmFibGUgR05VIFJFTFJPIHByb3RlY3Rpb24gZm9yIFwiJXNcIjogJXMiLAotICAgICAgICAgICBuYW1lLCBzdHJlcnJvcihlcnJubykpOworICAgICAgICAgICBnZXRfc29uYW1lKCksIHN0cmVycm9yKGVycm5vKSk7CiAgICAgcmV0dXJuIGZhbHNlOwogICB9CiAKQEAgLTIyNDcsMTQgKzI5NTYsMTQgQEAKICAgICBpZiAocGhkcl90YWJsZV9zZXJpYWxpemVfZ251X3JlbHJvKHBoZHIsIHBobnVtLCBsb2FkX2JpYXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRpbmZvLT5yZWxyb19mZCkgPCAwKSB7CiAgICAgICBETF9FUlIoImZhaWxlZCBzZXJpYWxpemluZyBHTlUgUkVMUk8gc2VjdGlvbiBmb3IgXCIlc1wiOiAlcyIsCi0gICAgICAgICAgICAgbmFtZSwgc3RyZXJyb3IoZXJybm8pKTsKKyAgICAgICAgICAgICBnZXRfc29uYW1lKCksIHN0cmVycm9yKGVycm5vKSk7CiAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogICB9IGVsc2UgaWYgKGV4dGluZm8gJiYgKGV4dGluZm8tPmZsYWdzICYgQU5EUk9JRF9ETEVYVF9VU0VfUkVMUk8pKSB7CiAgICAgaWYgKHBoZHJfdGFibGVfbWFwX2dudV9yZWxybyhwaGRyLCBwaG51bSwgbG9hZF9iaWFzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXh0aW5mby0+cmVscm9fZmQpIDwgMCkgewogICAgICAgRExfRVJSKCJmYWlsZWQgbWFwcGluZyBHTlUgUkVMUk8gc2VjdGlvbiBmb3IgXCIlc1wiOiAlcyIsCi0gICAgICAgICAgICAgbmFtZSwgc3RyZXJyb3IoZXJybm8pKTsKKyAgICAgICAgICAgICBnZXRfc29uYW1lKCksIHN0cmVycm9yKGVycm5vKSk7CiAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogICB9CkBAIC0yMjc1LDcgKzI5ODQsNyBAQAogICAgIHJldHVybjsKICAgfQogCi0gIHNvaW5mbyogc2kgPSBzb2luZm9fYWxsb2MoIlt2ZHNvXSIsIG51bGxwdHIsIDApOworICBzb2luZm8qIHNpID0gc29pbmZvX2FsbG9jKCJbdmRzb10iLCBudWxscHRyLCAwLCAwKTsKIAogICBzaS0+cGhkciA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhQaGRyKSo+KHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KGVoZHJfdmRzbykgKyBlaGRyX3Zkc28tPmVfcGhvZmYpOwogICBzaS0+cGhudW0gPSBlaGRyX3Zkc28tPmVfcGhudW07CkBAIC0yMjgzLDggKzI5OTIsOCBAQAogICBzaS0+c2l6ZSA9IHBoZHJfdGFibGVfZ2V0X2xvYWRfc2l6ZShzaS0+cGhkciwgc2ktPnBobnVtKTsKICAgc2ktPmxvYWRfYmlhcyA9IGdldF9lbGZfZXhlY19sb2FkX2JpYXMoZWhkcl92ZHNvKTsKIAotICBzaS0+UHJlbGlua0ltYWdlKCk7Ci0gIHNpLT5MaW5rSW1hZ2UobnVsbHB0cik7CisgIHNpLT5wcmVsaW5rX2ltYWdlKCk7CisgIHNpLT5saW5rX2ltYWdlKGdfZW1wdHlfbGlzdCwgc29pbmZvOjpzb2luZm9fbGlzdF90OjptYWtlX2xpc3Qoc2kpLCBudWxscHRyKTsKICNlbmRpZgogfQogCkBAIC0yMjk2LDcgKzMwMDUsMTIgQEAKICNlbHNlCiAjZGVmaW5lIExJTktFUl9QQVRIICIvc3lzdGVtL2Jpbi9saW5rZXIiCiAjZW5kaWYKLXN0YXRpYyBzb2luZm8gbGlua2VyX3NvaW5mb19mb3JfZ2RiKExJTktFUl9QQVRILCBudWxscHRyLCAwKTsKKworLy8gVGhpcyBpcyBkb25lIHRvIGF2b2lkIGNhbGxpbmcgYy10b3IgcHJlbWF0dXJlbHkKKy8vIGJlY2F1c2Ugc29pbmZvIGMtdG9yIG5lZWRzIG1lbW9yeSBhbGxvY2F0b3IKKy8vIHdoaWNoIG1pZ2h0IGJlIGluaXRpYWxpemVkIGFmdGVyIGdsb2JhbCB2YXJpYWJsZXMuCitzdGF0aWMgdWludDhfdCBsaW5rZXJfc29pbmZvX2Zvcl9nZGJfYnVmW3NpemVvZihzb2luZm8pXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CitzdGF0aWMgc29pbmZvKiBsaW5rZXJfc29pbmZvX2Zvcl9nZGIgPSBudWxscHRyOwogCiAvKiBnZGIgZXhwZWN0cyB0aGUgbGlua2VyIHRvIGJlIGluIHRoZSBkZWJ1ZyBzaGFyZWQgb2JqZWN0IGxpc3QuCiAgKiBXaXRob3V0IHRoaXMsIGdkYiBoYXMgdHJvdWJsZSBsb2NhdGluZyB0aGUgbGlua2VyJ3MgIi50ZXh0IgpAQCAtMjMwNiw3ICszMDIwLDkgQEAKICAqIGJlIG9uIHRoZSBzb2luZm8gbGlzdC4KICAqLwogc3RhdGljIHZvaWQgaW5pdF9saW5rZXJfaW5mb19mb3JfZ2RiKEVsZlcoQWRkcikgbGlua2VyX2Jhc2UpIHsKLSAgbGlua2VyX3NvaW5mb19mb3JfZ2RiLmJhc2UgPSBsaW5rZXJfYmFzZTsKKyAgbGlua2VyX3NvaW5mb19mb3JfZ2RiID0gbmV3IChsaW5rZXJfc29pbmZvX2Zvcl9nZGJfYnVmKSBzb2luZm8oTElOS0VSX1BBVEgsIG51bGxwdHIsIDAsIDApOworCisgIGxpbmtlcl9zb2luZm9fZm9yX2dkYi0+YmFzZSA9IGxpbmtlcl9iYXNlOwogCiAgIC8qCiAgICAqIFNldCB0aGUgZHluYW1pYyBmaWVsZCBpbiB0aGUgbGluayBtYXAgb3RoZXJ3aXNlIGdkYiB3aWxsIGNvbXBsYWluIHdpdGgKQEAgLTIzMTcsMTAgKzMwMzMsMTIgQEAKICAgRWxmVyhFaGRyKSogZWxmX2hkciA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhFaGRyKSo+KGxpbmtlcl9iYXNlKTsKICAgRWxmVyhQaGRyKSogcGhkciA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhQaGRyKSo+KGxpbmtlcl9iYXNlICsgZWxmX2hkci0+ZV9waG9mZik7CiAgIHBoZHJfdGFibGVfZ2V0X2R5bmFtaWNfc2VjdGlvbihwaGRyLCBlbGZfaGRyLT5lX3BobnVtLCBsaW5rZXJfYmFzZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZsaW5rZXJfc29pbmZvX2Zvcl9nZGIuZHluYW1pYywgbnVsbHB0cik7Ci0gIGluc2VydF9zb2luZm9faW50b19kZWJ1Z19tYXAoJmxpbmtlcl9zb2luZm9fZm9yX2dkYik7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbGlua2VyX3NvaW5mb19mb3JfZ2RiLT5keW5hbWljLCBudWxscHRyKTsKKyAgaW5zZXJ0X3NvaW5mb19pbnRvX2RlYnVnX21hcChsaW5rZXJfc29pbmZvX2Zvcl9nZGIpOwogfQogCitleHRlcm4gIkMiIGludCBfX3N5c3RlbV9wcm9wZXJ0aWVzX2luaXQodm9pZCk7CisKIC8qCiAgKiBUaGlzIGNvZGUgaXMgY2FsbGVkIGFmdGVyIHRoZSBsaW5rZXIgaGFzIGxpbmtlZCBpdHNlbGYgYW5kCiAgKiBmaXhlZCBpdCdzIG93biBHT1QuIEl0IGlzIHNhZmUgdG8gbWFrZSByZWZlcmVuY2VzIHRvIGV4dGVybnMKQEAgLTIzMzUsNiArMzA1Myw5IEBACiAgIC8vIEluaXRpYWxpemUgZW52aXJvbm1lbnQgZnVuY3Rpb25zLCBhbmQgZ2V0IHRvIHRoZSBFTEYgYXV4IHZlY3RvcnMgdGFibGUuCiAgIGxpbmtlcl9lbnZfaW5pdChhcmdzKTsKIAorICAvLyBJbml0aWFsaXplIHN5c3RlbSBwcm9wZXJ0aWVzCisgIF9fc3lzdGVtX3Byb3BlcnRpZXNfaW5pdCgpOyAvLyBtYXkgdXNlICdlbnZpcm9uJworCiAgIC8vIElmIHRoaXMgaXMgYSBzZXR1aWQvc2V0Z2lkIHByb2dyYW0sIGNsb3NlIHRoZSBzZWN1cml0eSBob2xlIGRlc2NyaWJlZCBpbgogICAvLyBmdHA6Ly9mdHAuZnJlZWJzZC5vcmcvcHViL0ZyZWVCU0QvQ0VSVC9hZHZpc29yaWVzL0ZyZWVCU0QtU0EtMDI6MjMuc3RkaW8uYXNjCiAgIGlmIChnZXRfQVRfU0VDVVJFKCkpIHsKQEAgLTIzNTgsMTUgKzMwNzksMjEgQEAKICAgICBsZHByZWxvYWRfZW52ID0gbGlua2VyX2Vudl9nZXQoIkxEX1BSRUxPQUQiKTsKICAgfQogCisjaWYgIWRlZmluZWQoX19MUDY0X18pCisgIGlmIChwZXJzb25hbGl0eShQRVJfTElOVVgzMikgPT0gLTEpIHsKKyAgICBfX2xpYmNfZmF0YWwoImVycm9yIHNldHRpbmcgUEVSX0xJTlVYMzIgcGVyc29uYWxpdHk6ICVzIiwgc3RyZXJyb3IoZXJybm8pKTsKKyAgfQorI2VuZGlmCisKICAgSU5GTygiWyBhbmRyb2lkIGxpbmtlciAmIGRlYnVnZ2VyIF0iKTsKIAotICBzb2luZm8qIHNpID0gc29pbmZvX2FsbG9jKGFyZ3MuYXJndlswXSwgbnVsbHB0ciwgMCk7CisgIHNvaW5mbyogc2kgPSBzb2luZm9fYWxsb2MoYXJncy5hcmd2WzBdLCBudWxscHRyLCAwLCBSVExEX0dMT0JBTCk7CiAgIGlmIChzaSA9PSBudWxscHRyKSB7CiAgICAgZXhpdChFWElUX0ZBSUxVUkUpOwogICB9CiAKICAgLyogYm9vdHN0cmFwIHRoZSBsaW5rIG1hcCwgdGhlIG1haW4gZXhlIGFsd2F5cyBuZWVkcyB0byBiZSBmaXJzdCAqLwotICBzaS0+ZmxhZ3MgfD0gRkxBR19FWEU7CisgIHNpLT5zZXRfbWFpbl9leGVjdXRhYmxlKCk7CiAgIGxpbmtfbWFwKiBtYXAgPSAmKHNpLT5saW5rX21hcF9oZWFkKTsKIAogICBtYXAtPmxfYWRkciA9IDA7CkBAIC0yMzk5LDcgKzMxMjYsNiBAQAogICAgIH0KICAgfQogICBzaS0+ZHluYW1pYyA9IG51bGxwdHI7Ci0gIHNpLT5yZWZfY291bnQgPSAxOwogCiAgIEVsZlcoRWhkcikqIGVsZl9oZHIgPSByZWludGVycHJldF9jYXN0PEVsZlcoRWhkcikqPihzaS0+YmFzZSk7CiAgIGlmIChlbGZfaGRyLT5lX3R5cGUgIT0gRVRfRFlOKSB7CkBAIC0yNDEzLDE4ICszMTM5LDIzIEBACiAKICAgc29tYWluID0gc2k7CiAKLSAgaWYgKCFzaS0+UHJlbGlua0ltYWdlKCkpIHsKKyAgaWYgKCFzaS0+cHJlbGlua19pbWFnZSgpKSB7CiAgICAgX19saWJjX2Zvcm1hdF9mZCgyLCAiQ0FOTk9UIExJTksgRVhFQ1VUQUJMRTogJXNcbiIsIGxpbmtlcl9nZXRfZXJyb3JfYnVmZmVyKCkpOwogICAgIGV4aXQoRVhJVF9GQUlMVVJFKTsKICAgfQogCisgIC8vIGFkZCBzb21haW4gdG8gZ2xvYmFsIGdyb3VwCisgIHNpLT5zZXRfZHRfZmxhZ3NfMShzaS0+Z2V0X2R0X2ZsYWdzXzEoKSB8IERGXzFfR0xPQkFMKTsKKwogICAvLyBMb2FkIGxkX3ByZWxvYWRzIGFuZCBkZXBlbmRlbmNpZXMuCiAgIFN0cmluZ0xpbmtlZExpc3QgbmVlZGVkX2xpYnJhcnlfbmFtZV9saXN0OwogICBzaXplX3QgbmVlZGVkX2xpYnJhcmllc19jb3VudCA9IDA7CiAgIHNpemVfdCBsZF9wcmVsb2Fkc19jb3VudCA9IDA7Ci0gIHdoaWxlIChnX2xkX3ByZWxvYWRfbmFtZXNbbGRfcHJlbG9hZHNfY291bnRdICE9IG51bGxwdHIpIHsKLSAgICBuZWVkZWRfbGlicmFyeV9uYW1lX2xpc3QucHVzaF9iYWNrKGdfbGRfcHJlbG9hZF9uYW1lc1tsZF9wcmVsb2Fkc19jb3VudCsrXSk7CisKKyAgZm9yIChjb25zdCBhdXRvJiBsZF9wcmVsb2FkX25hbWUgOiBnX2xkX3ByZWxvYWRfbmFtZXMpIHsKKyAgICBuZWVkZWRfbGlicmFyeV9uYW1lX2xpc3QucHVzaF9iYWNrKGxkX3ByZWxvYWRfbmFtZS5jX3N0cigpKTsKICAgICArK25lZWRlZF9saWJyYXJpZXNfY291bnQ7CisgICAgKytsZF9wcmVsb2Fkc19jb3VudDsKICAgfQogCiAgIGZvcl9lYWNoX2R0X25lZWRlZChzaSwgWyZdKGNvbnN0IGNoYXIqIG5hbWUpIHsKQEAgLTI0MzMsMzYgKzMxNjQsMzggQEAKICAgfSk7CiAKICAgY29uc3QgY2hhciogbmVlZGVkX2xpYnJhcnlfbmFtZXNbbmVlZGVkX2xpYnJhcmllc19jb3VudF07Ci0gIHNvaW5mbyogbmVlZGVkX2xpYnJhcnlfc2lbbmVlZGVkX2xpYnJhcmllc19jb3VudF07CiAKICAgbWVtc2V0KG5lZWRlZF9saWJyYXJ5X25hbWVzLCAwLCBzaXplb2YobmVlZGVkX2xpYnJhcnlfbmFtZXMpKTsKICAgbmVlZGVkX2xpYnJhcnlfbmFtZV9saXN0LmNvcHlfdG9fYXJyYXkobmVlZGVkX2xpYnJhcnlfbmFtZXMsIG5lZWRlZF9saWJyYXJpZXNfY291bnQpOwogCi0gIGlmIChuZWVkZWRfbGlicmFyaWVzX2NvdW50ID4gMCAmJiAhZmluZF9saWJyYXJpZXMobmVlZGVkX2xpYnJhcnlfbmFtZXMsIG5lZWRlZF9saWJyYXJpZXNfY291bnQsIG5lZWRlZF9saWJyYXJ5X3NpLCBnX2xkX3ByZWxvYWRzLCBsZF9wcmVsb2Fkc19jb3VudCwgMCwgbnVsbHB0cikpIHsKLSAgICBfX2xpYmNfZm9ybWF0X2ZkKDIsICJDQU5OT1QgTElOSyBFWEVDVVRBQkxFIERFUEVOREVOQ0lFUzogJXNcbiIsIGxpbmtlcl9nZXRfZXJyb3JfYnVmZmVyKCkpOwotICAgIGV4aXQoRVhJVF9GQUlMVVJFKTsKLSAgfQotCi0gIGZvciAoc2l6ZV90IGkgPSAwOyBpPG5lZWRlZF9saWJyYXJpZXNfY291bnQ7ICsraSkgewotICAgIHNpLT5hZGRfY2hpbGQobmVlZGVkX2xpYnJhcnlfc2lbaV0pOwotICB9Ci0KLSAgaWYgKCFzaS0+TGlua0ltYWdlKG51bGxwdHIpKSB7CisgIGlmIChuZWVkZWRfbGlicmFyaWVzX2NvdW50ID4gMCAmJgorICAgICAgIWZpbmRfbGlicmFyaWVzKHNpLCBuZWVkZWRfbGlicmFyeV9uYW1lcywgbmVlZGVkX2xpYnJhcmllc19jb3VudCwgbnVsbHB0ciwKKyAgICAgICAgICAmZ19sZF9wcmVsb2FkcywgbGRfcHJlbG9hZHNfY291bnQsIFJUTERfR0xPQkFMLCBudWxscHRyKSkgewogICAgIF9fbGliY19mb3JtYXRfZmQoMiwgIkNBTk5PVCBMSU5LIEVYRUNVVEFCTEU6ICVzXG4iLCBsaW5rZXJfZ2V0X2Vycm9yX2J1ZmZlcigpKTsKICAgICBleGl0KEVYSVRfRkFJTFVSRSk7CisgIH0gZWxzZSBpZiAobmVlZGVkX2xpYnJhcmllc19jb3VudCA9PSAwKSB7CisgICAgaWYgKCFzaS0+bGlua19pbWFnZShnX2VtcHR5X2xpc3QsIHNvaW5mbzo6c29pbmZvX2xpc3RfdDo6bWFrZV9saXN0KHNpKSwgbnVsbHB0cikpIHsKKyAgICAgIF9fbGliY19mb3JtYXRfZmQoMiwgIkNBTk5PVCBMSU5LIEVYRUNVVEFCTEU6ICVzXG4iLCBsaW5rZXJfZ2V0X2Vycm9yX2J1ZmZlcigpKTsKKyAgICAgIGV4aXQoRVhJVF9GQUlMVVJFKTsKKyAgICB9CisgICAgc2ktPmluY3JlbWVudF9yZWZfY291bnQoKTsKICAgfQogCiAgIGFkZF92ZHNvKGFyZ3MpOwogCi0gIHNpLT5DYWxsUHJlSW5pdENvbnN0cnVjdG9ycygpOworICB7CisgICAgUHJvdGVjdGVkRGF0YUd1YXJkIGd1YXJkOwogCi0gIC8qIEFmdGVyIHRoZSBQcmVsaW5rSW1hZ2UsIHRoZSBzaS0+bG9hZF9iaWFzIGlzIGluaXRpYWxpemVkLgotICAgKiBGb3Igc28gbGliLCB0aGUgbWFwLT5sX2FkZHIgd2lsbCBiZSB1cGRhdGVkIGluIG5vdGlmeV9nZGJfb2ZfbG9hZC4KLSAgICogV2UgbmVlZCB0byB1cGRhdGUgdGhpcyB2YWx1ZSBmb3Igc28gZXhlIGhlcmUuIFNvIFVud2luZF9CYWNrdHJhY2UKLSAgICogZm9yIHNvbWUgYXJjaCBsaWtlIHg4NiBjb3VsZCB3b3JrIGNvcnJlY3RseSB3aXRoaW4gc28gZXhlLgotICAgKi8KLSAgbWFwLT5sX2FkZHIgPSBzaS0+bG9hZF9iaWFzOwotICBzaS0+Q2FsbENvbnN0cnVjdG9ycygpOworICAgIHNpLT5jYWxsX3ByZV9pbml0X2NvbnN0cnVjdG9ycygpOworCisgICAgLyogQWZ0ZXIgdGhlIHByZWxpbmtfaW1hZ2UsIHRoZSBzaS0+bG9hZF9iaWFzIGlzIGluaXRpYWxpemVkLgorICAgICAqIEZvciBzbyBsaWIsIHRoZSBtYXAtPmxfYWRkciB3aWxsIGJlIHVwZGF0ZWQgaW4gbm90aWZ5X2dkYl9vZl9sb2FkLgorICAgICAqIFdlIG5lZWQgdG8gdXBkYXRlIHRoaXMgdmFsdWUgZm9yIHNvIGV4ZSBoZXJlLiBTbyBVbndpbmRfQmFja3RyYWNlCisgICAgICogZm9yIHNvbWUgYXJjaCBsaWtlIHg4NiBjb3VsZCB3b3JrIGNvcnJlY3RseSB3aXRoaW4gc28gZXhlLgorICAgICAqLworICAgIG1hcC0+bF9hZGRyID0gc2ktPmxvYWRfYmlhczsKKyAgICBzaS0+Y2FsbF9jb25zdHJ1Y3RvcnMoKTsKKyAgfQogCiAjaWYgVElNSU5HCiAgIGdldHRpbWVvZmRheSgmdDEsIG51bGxwdHIpOwpAQCAtMjUwNSw3ICszMjM4LDcgQEAKICAgZmZsdXNoKHN0ZG91dCk7CiAjZW5kaWYKIAotICBUUkFDRSgiWyBSZWFkeSB0byBleGVjdXRlICclcycgQCAlcCBdIiwgc2ktPm5hbWUsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHNpLT5lbnRyeSkpOworICBUUkFDRSgiWyBSZWFkeSB0byBleGVjdXRlICclcycgQCAlcCBdIiwgc2ktPmdldF9zb25hbWUoKSwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oc2ktPmVudHJ5KSk7CiAgIHJldHVybiBzaS0+ZW50cnk7CiB9CiAKQEAgLTI1NTEsNyArMzI4NCw3IEBACiAgIEVsZlcoRWhkcikqIGVsZl9oZHIgPSByZWludGVycHJldF9jYXN0PEVsZlcoRWhkcikqPihsaW5rZXJfYWRkcik7CiAgIEVsZlcoUGhkcikqIHBoZHIgPSByZWludGVycHJldF9jYXN0PEVsZlcoUGhkcikqPihsaW5rZXJfYWRkciArIGVsZl9oZHItPmVfcGhvZmYpOwogCi0gIHNvaW5mbyBsaW5rZXJfc28oIltkeW5hbWljIGxpbmtlcl0iLCBudWxscHRyLCAwKTsKKyAgc29pbmZvIGxpbmtlcl9zbyhudWxscHRyLCBudWxscHRyLCAwLCAwKTsKIAogICAvLyBJZiB0aGUgbGlua2VyIGlzIG5vdCBhY3RpbmcgYXMgUFRfSU5URVJQIGVudHJ5X3BvaW50IGlzIGVxdWFsIHRvCiAgIC8vIF9zdGFydC4gV2hpY2ggbWVhbnMgdGhhdCB0aGUgbGlua2VyIGlzIHJ1bm5pbmcgYXMgYW4gZXhlY3V0YWJsZSBhbmQKQEAgLTI1NjksOSArMzMwMiwxNSBAQAogICBsaW5rZXJfc28uZHluYW1pYyA9IG51bGxwdHI7CiAgIGxpbmtlcl9zby5waGRyID0gcGhkcjsKICAgbGlua2VyX3NvLnBobnVtID0gZWxmX2hkci0+ZV9waG51bTsKLSAgbGlua2VyX3NvLmZsYWdzIHw9IEZMQUdfTElOS0VSOworICBsaW5rZXJfc28uc2V0X2xpbmtlcl9mbGFnKCk7CiAKLSAgaWYgKCEobGlua2VyX3NvLlByZWxpbmtJbWFnZSgpICYmIGxpbmtlcl9zby5MaW5rSW1hZ2UobnVsbHB0cikpKSB7CisgIC8vIFRoaXMgbWlnaHQgbm90IGJlIG9idmlvdXMuLi4gVGhlIHJlYXNvbnMgd2h5IHdlIHBhc3MgZ19lbXB0eV9saXN0CisgIC8vIGluIHBsYWNlIG9mIGxvY2FsX2dyb3VwIGhlcmUgYXJlICgxKSB3ZSBkbyBub3QgcmVhbGx5IG5lZWQgaXQsIGJlY2F1c2UKKyAgLy8gbGlua2VyIGlzIGJ1aWx0IHdpdGggRFRfU1lNQk9MSUMgYW5kIHRoZXJlZm9yZSByZWxvY2F0ZXMgaXRzIHN5bWJvbHMgYWdhaW5zdAorICAvLyBpdHNlbGYgd2l0aG91dCBoYXZpbmcgdG8gbG9vayBpbnRvIGxvY2FsX2dyb3VwIGFuZCAoMikgYWxsb2NhdG9ycworICAvLyBhcmUgbm90IHlldCBpbml0aWFsaXplZCwgYW5kIHRoZXJlZm9yZSB3ZSBjYW5ub3QgdXNlIGxpbmtlZF9saXN0LnB1c2hfKgorICAvLyBmdW5jdGlvbnMgYXQgdGhpcyBwb2ludC4KKyAgaWYgKCEobGlua2VyX3NvLnByZWxpbmtfaW1hZ2UoKSAmJiBsaW5rZXJfc28ubGlua19pbWFnZShnX2VtcHR5X2xpc3QsIGdfZW1wdHlfbGlzdCwgbnVsbHB0cikpKSB7CiAgICAgLy8gSXQgd291bGQgYmUgbmljZSB0byBwcmludCBhbiBlcnJvciBtZXNzYWdlLCBidXQgaWYgdGhlIGxpbmtlcgogICAgIC8vIGNhbid0IGxpbmsgaXRzZWxmLCB0aGVyZSdzIG5vIGd1YXJhbnRlZSB0aGF0IHdlJ2xsIGJlIGFibGUgdG8KICAgICAvLyBjYWxsIHdyaXRlKCkgKGJlY2F1c2UgaXQgaW52b2x2ZXMgYSBHT1QgcmVmZXJlbmNlKS4gV2UgbWF5IGFzCkBAIC0yNTg2LDcgKzMzMjUsNyBAQAogICBfX2xpYmNfaW5pdF90bHMoYXJncyk7CiAKICAgLy8gSW5pdGlhbGl6ZSB0aGUgbGlua2VyJ3Mgb3duIGdsb2JhbCB2YXJpYWJsZXMKLSAgbGlua2VyX3NvLkNhbGxDb25zdHJ1Y3RvcnMoKTsKKyAgbGlua2VyX3NvLmNhbGxfY29uc3RydWN0b3JzKCk7CiAKICAgLy8gSW5pdGlhbGl6ZSBzdGF0aWMgdmFyaWFibGVzLiBOb3RlIHRoYXQgaW4gb3JkZXIgdG8KICAgLy8gZ2V0IGNvcnJlY3QgbGliZGxfaW5mbyB3ZSBuZWVkIHRvIGNhbGwgY29uc3RydWN0b3JzCkBAIC0yNTk5LDcgKzMzMzgsNyBAQAogICBhcmdzLmFib3J0X21lc3NhZ2VfcHRyID0gJmdfYWJvcnRfbWVzc2FnZTsKICAgRWxmVyhBZGRyKSBzdGFydF9hZGRyZXNzID0gX19saW5rZXJfaW5pdF9wb3N0X3JlbG9jYXRpb24oYXJncywgbGlua2VyX2FkZHIpOwogCi0gIHByb3RlY3RfZGF0YShQUk9UX1JFQUQpOworICBJTkZPKCJbIGp1bXBpbmcgdG8gX3N0YXJ0IF0iKTsKIAogICAvLyBSZXR1cm4gdGhlIGFkZHJlc3MgdGhhdCB0aGUgY2FsbGluZyBhc3NlbWJseSBzdHViIHNob3VsZCBqdW1wIHRvLgogICByZXR1cm4gc3RhcnRfYWRkcmVzczsKZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZXIuaCBiL2xpbmtlci9saW5rZXIuaAppbmRleCBmYTM4YzdmLi5kYzhjNmUwIDEwMDY0NAotLS0gYS9saW5rZXIvbGlua2VyLmgKKysrIGIvbGlua2VyL2xpbmtlci5oCkBAIC0zOSw2ICszOSw5IEBACiAjaW5jbHVkZSAicHJpdmF0ZS9saWJjX2xvZ2dpbmcuaCIKICNpbmNsdWRlICJsaW5rZWRfbGlzdC5oIgogCisjaW5jbHVkZSA8c3RyaW5nPgorI2luY2x1ZGUgPHZlY3Rvcj4KKwogI2RlZmluZSBETF9FUlIoZm10LCB4Li4uKSBcCiAgICAgZG8geyBcCiAgICAgICBfX2xpYmNfZm9ybWF0X2J1ZmZlcihsaW5rZXJfZ2V0X2Vycm9yX2J1ZmZlcigpLCBsaW5rZXJfZ2V0X2Vycm9yX2J1ZmZlcl9zaXplKCksIGZtdCwgIyN4KTsgXApAQCAtODcsMTEgKzkwLDE2IEBACiAjZGVmaW5lIEZMQUdfTElOS0VEICAgICAweDAwMDAwMDAxCiAjZGVmaW5lIEZMQUdfRVhFICAgICAgICAweDAwMDAwMDA0IC8vIFRoZSBtYWluIGV4ZWN1dGFibGUKICNkZWZpbmUgRkxBR19MSU5LRVIgICAgIDB4MDAwMDAwMTAgLy8gVGhlIGxpbmtlciBpdHNlbGYKKyNkZWZpbmUgRkxBR19HTlVfSEFTSCAgIDB4MDAwMDAwNDAgLy8gdXNlcyBnbnUgaGFzaAogI2RlZmluZSBGTEFHX05FV19TT0lORk8gMHg0MDAwMDAwMCAvLyBuZXcgc29pbmZvIGZvcm1hdAogCi0jZGVmaW5lIFNPSU5GT19WRVJTSU9OIDAKKyNkZWZpbmUgU1VQUE9SVEVEX0RUX0ZMQUdTXzEgKERGXzFfTk9XIHwgREZfMV9HTE9CQUwgfCBERl8xX05PREVMRVRFKQogCisjZGVmaW5lIFNPSU5GT19WRVJTSU9OIDIKKworI2lmIGRlZmluZWQoX19hcm1fXykKICNkZWZpbmUgU09JTkZPX05BTUVfTEVOIDEyOAorI2VuZGlmCiAKIHR5cGVkZWYgdm9pZCAoKmxpbmtlcl9mdW5jdGlvbl90KSgpOwogCkBAIC0xMDMsOTEgKzExMSwxNDkgQEAKIHN0cnVjdCBzb2luZm87CiAKIGNsYXNzIFNvaW5mb0xpc3RBbGxvY2F0b3IgewotcHVibGljOgorIHB1YmxpYzoKICAgc3RhdGljIExpbmtlZExpc3RFbnRyeTxzb2luZm8+KiBhbGxvYygpOwogICBzdGF0aWMgdm9pZCBmcmVlKExpbmtlZExpc3RFbnRyeTxzb2luZm8+KiBlbnRyeSk7Ci1wcml2YXRlOgorCisgcHJpdmF0ZToKICAgLy8gdW5jb25zdHJ1Y3RhYmxlCiAgIERJU0FMTE9XX0lNUExJQ0lUX0NPTlNUUlVDVE9SUyhTb2luZm9MaXN0QWxsb2NhdG9yKTsKIH07CiAKK2NsYXNzIFN5bWJvbE5hbWUgeworIHB1YmxpYzoKKyAgZXhwbGljaXQgU3ltYm9sTmFtZShjb25zdCBjaGFyKiBuYW1lKQorICAgICAgOiBuYW1lXyhuYW1lKSwgaGFzX2VsZl9oYXNoXyhmYWxzZSksIGhhc19nbnVfaGFzaF8oZmFsc2UpLAorICAgICAgICBlbGZfaGFzaF8oMCksIGdudV9oYXNoXygwKSB7IH0KKworICBjb25zdCBjaGFyKiBnZXRfbmFtZSgpIHsKKyAgICByZXR1cm4gbmFtZV87CisgIH0KKworICB1aW50MzJfdCBlbGZfaGFzaCgpOworICB1aW50MzJfdCBnbnVfaGFzaCgpOworCisgcHJpdmF0ZToKKyAgY29uc3QgY2hhciogbmFtZV87CisgIGJvb2wgaGFzX2VsZl9oYXNoXzsKKyAgYm9vbCBoYXNfZ251X2hhc2hfOworICB1aW50MzJfdCBlbGZfaGFzaF87CisgIHVpbnQzMl90IGdudV9oYXNoXzsKKworICBESVNBTExPV19JTVBMSUNJVF9DT05TVFJVQ1RPUlMoU3ltYm9sTmFtZSk7Cit9OworCitzdHJ1Y3QgdmVyc2lvbl9pbmZvIHsKKyAgdmVyc2lvbl9pbmZvKCkgOiBlbGZfaGFzaCgwKSwgbmFtZShudWxscHRyKSwgdGFyZ2V0X3NpKG51bGxwdHIpIHt9CisKKyAgdWludDMyX3QgZWxmX2hhc2g7CisgIGNvbnN0IGNoYXIqIG5hbWU7CisgIGNvbnN0IHNvaW5mbyogdGFyZ2V0X3NpOworfTsKKworLy8gQ2xhc3MgdXNlZCBjb25zdHJ1Y3QgdmVyc2lvbiBkZXBlbmRlbmN5IGdyYXBoLgorY2xhc3MgVmVyc2lvblRyYWNrZXIgeworIHB1YmxpYzoKKyAgVmVyc2lvblRyYWNrZXIoKSA9IGRlZmF1bHQ7CisgIGJvb2wgaW5pdChjb25zdCBzb2luZm8qIHNpX2Zyb20pOworCisgIGNvbnN0IHZlcnNpb25faW5mbyogZ2V0X3ZlcnNpb25faW5mbyhFbGZXKFZlcnN5bSkgc291cmNlX3N5bXZlcikgY29uc3Q7CisgcHJpdmF0ZToKKyAgYm9vbCBpbml0X3Zlcm5lZWQoY29uc3Qgc29pbmZvKiBzaV9mcm9tKTsKKyAgYm9vbCBpbml0X3ZlcmRlZihjb25zdCBzb2luZm8qIHNpX2Zyb20pOworICB2b2lkIGFkZF92ZXJzaW9uX2luZm8oc2l6ZV90IHNvdXJjZV9pbmRleCwgRWxmVyhXb3JkKSBlbGZfaGFzaCwKKyAgICAgIGNvbnN0IGNoYXIqIHZlcl9uYW1lLCBjb25zdCBzb2luZm8qIHRhcmdldF9zaSk7CisKKyAgc3RkOjp2ZWN0b3I8dmVyc2lvbl9pbmZvPiB2ZXJzaW9uX2luZm9zOworCisgIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihWZXJzaW9uVHJhY2tlcik7Cit9OworCiBzdHJ1Y3Qgc29pbmZvIHsKICBwdWJsaWM6CiAgIHR5cGVkZWYgTGlua2VkTGlzdDxzb2luZm8sIFNvaW5mb0xpc3RBbGxvY2F0b3I+IHNvaW5mb19saXN0X3Q7CisjaWYgZGVmaW5lZChfX2FybV9fKQorIHByaXZhdGU6CisgIGNoYXIgb2xkX25hbWVfW1NPSU5GT19OQU1FX0xFTl07CisjZW5kaWYKICBwdWJsaWM6Ci0gIGNoYXIgbmFtZVtTT0lORk9fTkFNRV9MRU5dOwogICBjb25zdCBFbGZXKFBoZHIpKiBwaGRyOwogICBzaXplX3QgcGhudW07CiAgIEVsZlcoQWRkcikgZW50cnk7CiAgIEVsZlcoQWRkcikgYmFzZTsKICAgc2l6ZV90IHNpemU7CiAKLSNpZm5kZWYgX19MUDY0X18KKyNpZiBkZWZpbmVkKF9fYXJtX18pCiAgIHVpbnQzMl90IHVudXNlZDE7ICAvLyBETyBOT1QgVVNFLCBtYWludGFpbmVkIGZvciBjb21wYXRpYmlsaXR5LgogI2VuZGlmCiAKICAgRWxmVyhEeW4pKiBkeW5hbWljOwogCi0jaWZuZGVmIF9fTFA2NF9fCisjaWYgZGVmaW5lZChfX2FybV9fKQogICB1aW50MzJfdCB1bnVzZWQyOyAvLyBETyBOT1QgVVNFLCBtYWludGFpbmVkIGZvciBjb21wYXRpYmlsaXR5CiAgIHVpbnQzMl90IHVudXNlZDM7IC8vIERPIE5PVCBVU0UsIG1haW50YWluZWQgZm9yIGNvbXBhdGliaWxpdHkKICNlbmRpZgogCiAgIHNvaW5mbyogbmV4dDsKLSAgdW5zaWduZWQgZmxhZ3M7Ci0KICBwcml2YXRlOgotICBjb25zdCBjaGFyKiBzdHJ0YWI7Ci0gcHVibGljOgotICBFbGZXKFN5bSkqIHN5bXRhYjsKKyAgdWludDMyX3QgZmxhZ3NfOwogCi0gIHNpemVfdCBuYnVja2V0OwotICBzaXplX3QgbmNoYWluOwotICB1bnNpZ25lZCogYnVja2V0OwotICB1bnNpZ25lZCogY2hhaW47CisgIGNvbnN0IGNoYXIqIHN0cnRhYl87CisgIEVsZlcoU3ltKSogc3ltdGFiXzsKKworICBzaXplX3QgbmJ1Y2tldF87CisgIHNpemVfdCBuY2hhaW5fOworICB1aW50MzJfdCogYnVja2V0XzsKKyAgdWludDMyX3QqIGNoYWluXzsKIAogI2lmIGRlZmluZWQoX19taXBzX18pIHx8ICFkZWZpbmVkKF9fTFA2NF9fKQogICAvLyBUaGlzIGlzIG9ubHkgdXNlZCBieSBtaXBzIGFuZCBtaXBzNjQsIGJ1dCBuZWVkcyB0byBiZSBoZXJlIGZvcgogICAvLyBhbGwgMzItYml0IGFyY2hpdGVjdHVyZXMgdG8gcHJlc2VydmUgYmluYXJ5IGNvbXBhdGliaWxpdHkuCi0gIEVsZlcoQWRkcikqKiBwbHRfZ290OworICBFbGZXKEFkZHIpKiogcGx0X2dvdF87CiAjZW5kaWYKIAogI2lmIGRlZmluZWQoVVNFX1JFTEEpCi0gIEVsZlcoUmVsYSkqIHBsdF9yZWxhOwotICBzaXplX3QgcGx0X3JlbGFfY291bnQ7CisgIEVsZlcoUmVsYSkqIHBsdF9yZWxhXzsKKyAgc2l6ZV90IHBsdF9yZWxhX2NvdW50XzsKIAotICBFbGZXKFJlbGEpKiByZWxhOwotICBzaXplX3QgcmVsYV9jb3VudDsKKyAgRWxmVyhSZWxhKSogcmVsYV87CisgIHNpemVfdCByZWxhX2NvdW50XzsKICNlbHNlCi0gIEVsZlcoUmVsKSogcGx0X3JlbDsKLSAgc2l6ZV90IHBsdF9yZWxfY291bnQ7CisgIEVsZlcoUmVsKSogcGx0X3JlbF87CisgIHNpemVfdCBwbHRfcmVsX2NvdW50XzsKIAotICBFbGZXKFJlbCkqIHJlbDsKLSAgc2l6ZV90IHJlbF9jb3VudDsKKyAgRWxmVyhSZWwpKiByZWxfOworICBzaXplX3QgcmVsX2NvdW50XzsKICNlbmRpZgogCi0gIGxpbmtlcl9mdW5jdGlvbl90KiBwcmVpbml0X2FycmF5OwotICBzaXplX3QgcHJlaW5pdF9hcnJheV9jb3VudDsKKyAgbGlua2VyX2Z1bmN0aW9uX3QqIHByZWluaXRfYXJyYXlfOworICBzaXplX3QgcHJlaW5pdF9hcnJheV9jb3VudF87CiAKLSAgbGlua2VyX2Z1bmN0aW9uX3QqIGluaXRfYXJyYXk7Ci0gIHNpemVfdCBpbml0X2FycmF5X2NvdW50OwotICBsaW5rZXJfZnVuY3Rpb25fdCogZmluaV9hcnJheTsKLSAgc2l6ZV90IGZpbmlfYXJyYXlfY291bnQ7CisgIGxpbmtlcl9mdW5jdGlvbl90KiBpbml0X2FycmF5XzsKKyAgc2l6ZV90IGluaXRfYXJyYXlfY291bnRfOworICBsaW5rZXJfZnVuY3Rpb25fdCogZmluaV9hcnJheV87CisgIHNpemVfdCBmaW5pX2FycmF5X2NvdW50XzsKIAotICBsaW5rZXJfZnVuY3Rpb25fdCBpbml0X2Z1bmM7Ci0gIGxpbmtlcl9mdW5jdGlvbl90IGZpbmlfZnVuYzsKKyAgbGlua2VyX2Z1bmN0aW9uX3QgaW5pdF9mdW5jXzsKKyAgbGlua2VyX2Z1bmN0aW9uX3QgZmluaV9mdW5jXzsKIAogI2lmIGRlZmluZWQoX19hcm1fXykKKyBwdWJsaWM6CiAgIC8vIEFSTSBFQUJJIHNlY3Rpb24gdXNlZCBmb3Igc3RhY2sgdW53aW5kaW5nLgotICB1bnNpZ25lZCogQVJNX2V4aWR4OworICB1aW50MzJfdCogQVJNX2V4aWR4OwogICBzaXplX3QgQVJNX2V4aWR4X2NvdW50OworIHByaXZhdGU6CiAjZWxpZiBkZWZpbmVkKF9fbWlwc19fKQotICB1bnNpZ25lZCBtaXBzX3N5bXRhYm5vOwotICB1bnNpZ25lZCBtaXBzX2xvY2FsX2dvdG5vOwotICB1bnNpZ25lZCBtaXBzX2dvdHN5bTsKLSNlbmRpZgorICB1aW50MzJfdCBtaXBzX3N5bXRhYm5vXzsKKyAgdWludDMyX3QgbWlwc19sb2NhbF9nb3Rub187CisgIHVpbnQzMl90IG1pcHNfZ290c3ltXzsKKyAgYm9vbCBtaXBzX3JlbG9jYXRlX2dvdChjb25zdCBWZXJzaW9uVHJhY2tlciYgdmVyc2lvbl90cmFja2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNvaW5mb19saXN0X3QmIGdsb2JhbF9ncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzb2luZm9fbGlzdF90JiBsb2NhbF9ncm91cCk7CiAKLSAgc2l6ZV90IHJlZl9jb3VudDsKKyNlbmRpZgorICBzaXplX3QgcmVmX2NvdW50XzsKKyBwdWJsaWM6CiAgIGxpbmtfbWFwIGxpbmtfbWFwX2hlYWQ7CiAKICAgYm9vbCBjb25zdHJ1Y3RvcnNfY2FsbGVkOwpAQCAtMjAxLDczICsyNjcsMTYwIEBACiAjZW5kaWYKICAgYm9vbCBoYXNfRFRfU1lNQk9MSUM7CiAKLSAgc29pbmZvKGNvbnN0IGNoYXIqIG5hbWUsIGNvbnN0IHN0cnVjdCBzdGF0KiBmaWxlX3N0YXQsIG9mZjY0X3QgZmlsZV9vZmZzZXQpOworIHB1YmxpYzoKKyAgc29pbmZvKGNvbnN0IGNoYXIqIG5hbWUsIGNvbnN0IHN0cnVjdCBzdGF0KiBmaWxlX3N0YXQsIG9mZjY0X3QgZmlsZV9vZmZzZXQsIGludCBydGxkX2ZsYWdzKTsKIAotICB2b2lkIENhbGxDb25zdHJ1Y3RvcnMoKTsKLSAgdm9pZCBDYWxsRGVzdHJ1Y3RvcnMoKTsKLSAgdm9pZCBDYWxsUHJlSW5pdENvbnN0cnVjdG9ycygpOwotICBib29sIFByZWxpbmtJbWFnZSgpOwotICBib29sIExpbmtJbWFnZShjb25zdCBhbmRyb2lkX2RsZXh0aW5mbyogZXh0aW5mbyk7CisgIHZvaWQgY2FsbF9jb25zdHJ1Y3RvcnMoKTsKKyAgdm9pZCBjYWxsX2Rlc3RydWN0b3JzKCk7CisgIHZvaWQgY2FsbF9wcmVfaW5pdF9jb25zdHJ1Y3RvcnMoKTsKKyAgYm9vbCBwcmVsaW5rX2ltYWdlKCk7CisgIGJvb2wgbGlua19pbWFnZShjb25zdCBzb2luZm9fbGlzdF90JiBnbG9iYWxfZ3JvdXAsIGNvbnN0IHNvaW5mb19saXN0X3QmIGxvY2FsX2dyb3VwLAorICAgICAgICAgICAgICAgICAgY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pOwogCiAgIHZvaWQgYWRkX2NoaWxkKHNvaW5mbyogY2hpbGQpOwogICB2b2lkIHJlbW92ZV9hbGxfbGlua3MoKTsKIAotICBpbm9fdCBnZXRfc3RfaW5vKCk7Ci0gIGRldl90IGdldF9zdF9kZXYoKTsKLSAgb2ZmNjRfdCBnZXRfZmlsZV9vZmZzZXQoKTsKKyAgaW5vX3QgZ2V0X3N0X2lubygpIGNvbnN0OworICBkZXZfdCBnZXRfc3RfZGV2KCkgY29uc3Q7CisgIG9mZjY0X3QgZ2V0X2ZpbGVfb2Zmc2V0KCkgY29uc3Q7CisKKyAgdWludDMyX3QgZ2V0X3J0bGRfZmxhZ3MoKSBjb25zdDsKKyAgdWludDMyX3QgZ2V0X2R0X2ZsYWdzXzEoKSBjb25zdDsKKyAgdm9pZCBzZXRfZHRfZmxhZ3NfMSh1aW50MzJfdCBkdF9mbGFnc18xKTsKIAogICBzb2luZm9fbGlzdF90JiBnZXRfY2hpbGRyZW4oKTsKKyAgY29uc3Qgc29pbmZvX2xpc3RfdCYgZ2V0X2NoaWxkcmVuKCkgY29uc3Q7CisKICAgc29pbmZvX2xpc3RfdCYgZ2V0X3BhcmVudHMoKTsKIAotICBFbGZXKEFkZHIpIHJlc29sdmVfc3ltYm9sX2FkZHJlc3MoRWxmVyhTeW0pKiBzKTsKKyAgYm9vbCBmaW5kX3N5bWJvbF9ieV9uYW1lKFN5bWJvbE5hbWUmIHN5bWJvbF9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdmVyc2lvbl9pbmZvKiB2aSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVsZlcoU3ltKSoqIHN5bWJvbCkgY29uc3Q7CisKKyAgRWxmVyhTeW0pKiBmaW5kX3N5bWJvbF9ieV9hZGRyZXNzKGNvbnN0IHZvaWQqIGFkZHIpOworICBFbGZXKEFkZHIpIHJlc29sdmVfc3ltYm9sX2FkZHJlc3MoY29uc3QgRWxmVyhTeW0pKiBzKSBjb25zdDsKIAogICBjb25zdCBjaGFyKiBnZXRfc3RyaW5nKEVsZlcoV29yZCkgaW5kZXgpIGNvbnN0OworICBib29sIGNhbl91bmxvYWQoKSBjb25zdDsKKyAgYm9vbCBpc19nbnVfaGFzaCgpIGNvbnN0OwogCi0gIGJvb2wgaW5saW5lIGhhc19taW5fdmVyc2lvbih1aW50MzJfdCBtaW5fdmVyc2lvbikgY29uc3QgewotICAgIHJldHVybiAoZmxhZ3MgJiBGTEFHX05FV19TT0lORk8pICE9IDAgJiYgdmVyc2lvbiA+PSBtaW5fdmVyc2lvbjsKLSAgfQotIHByaXZhdGU6Ci0gIHZvaWQgQ2FsbEFycmF5KGNvbnN0IGNoYXIqIGFycmF5X25hbWUsIGxpbmtlcl9mdW5jdGlvbl90KiBmdW5jdGlvbnMsIHNpemVfdCBjb3VudCwgYm9vbCByZXZlcnNlKTsKLSAgdm9pZCBDYWxsRnVuY3Rpb24oY29uc3QgY2hhciogZnVuY3Rpb25fbmFtZSwgbGlua2VyX2Z1bmN0aW9uX3QgZnVuY3Rpb24pOwotI2lmIGRlZmluZWQoVVNFX1JFTEEpCi0gIGludCBSZWxvY2F0ZShFbGZXKFJlbGEpKiByZWxhLCB1bnNpZ25lZCBjb3VudCk7CisgIGJvb2wgaW5saW5lIGhhc19taW5fdmVyc2lvbih1aW50MzJfdCBtaW5fdmVyc2lvbiBfX3VudXNlZCkgY29uc3QgeworI2lmIGRlZmluZWQoX19hcm1fXykKKyAgICByZXR1cm4gKGZsYWdzXyAmIEZMQUdfTkVXX1NPSU5GTykgIT0gMCAmJiB2ZXJzaW9uXyA+PSBtaW5fdmVyc2lvbjsKICNlbHNlCi0gIGludCBSZWxvY2F0ZShFbGZXKFJlbCkqIHJlbCwgdW5zaWduZWQgY291bnQpOworICAgIHJldHVybiB0cnVlOwogI2VuZGlmCisgIH0KKworICBib29sIGlzX2xpbmtlZCgpIGNvbnN0OworICBib29sIGlzX21haW5fZXhlY3V0YWJsZSgpIGNvbnN0OworCisgIHZvaWQgc2V0X2xpbmtlZCgpOworICB2b2lkIHNldF9saW5rZXJfZmxhZygpOworICB2b2lkIHNldF9tYWluX2V4ZWN1dGFibGUoKTsKKworICB2b2lkIGluY3JlbWVudF9yZWZfY291bnQoKTsKKyAgc2l6ZV90IGRlY3JlbWVudF9yZWZfY291bnQoKTsKKworICBzb2luZm8qIGdldF9sb2NhbF9ncm91cF9yb290KCkgY29uc3Q7CisKKyAgY29uc3QgY2hhciogZ2V0X3NvbmFtZSgpIGNvbnN0OworICBjb25zdCBjaGFyKiBnZXRfcmVhbHBhdGgoKSBjb25zdDsKKyAgY29uc3QgRWxmVyhWZXJzeW0pKiBnZXRfdmVyc3ltKHNpemVfdCBuKSBjb25zdDsKKyAgRWxmVyhBZGRyKSBnZXRfdmVybmVlZF9wdHIoKSBjb25zdDsKKyAgc2l6ZV90IGdldF92ZXJuZWVkX2NudCgpIGNvbnN0OworICBFbGZXKEFkZHIpIGdldF92ZXJkZWZfcHRyKCkgY29uc3Q7CisgIHNpemVfdCBnZXRfdmVyZGVmX2NudCgpIGNvbnN0OworCisgIGJvb2wgZmluZF92ZXJkZWZfdmVyc2lvbl9pbmRleChjb25zdCB2ZXJzaW9uX2luZm8qIHZpLCBFbGZXKFZlcnN5bSkqIHZlcnN5bSkgY29uc3Q7CisKKyBwcml2YXRlOgorICBib29sIGVsZl9sb29rdXAoU3ltYm9sTmFtZSYgc3ltYm9sX25hbWUsIGNvbnN0IHZlcnNpb25faW5mbyogdmksIHVpbnQzMl90KiBzeW1ib2xfaW5kZXgpIGNvbnN0OworICBFbGZXKFN5bSkqIGVsZl9hZGRyX2xvb2t1cChjb25zdCB2b2lkKiBhZGRyKTsKKyAgYm9vbCBnbnVfbG9va3VwKFN5bWJvbE5hbWUmIHN5bWJvbF9uYW1lLCBjb25zdCB2ZXJzaW9uX2luZm8qIHZpLCB1aW50MzJfdCogc3ltYm9sX2luZGV4KSBjb25zdDsKKyAgRWxmVyhTeW0pKiBnbnVfYWRkcl9sb29rdXAoY29uc3Qgdm9pZCogYWRkcik7CisKKyAgYm9vbCBsb29rdXBfdmVyc2lvbl9pbmZvKGNvbnN0IFZlcnNpb25UcmFja2VyJiB2ZXJzaW9uX3RyYWNrZXIsIEVsZlcoV29yZCkgc3ltLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciogc3ltX25hbWUsIGNvbnN0IHZlcnNpb25faW5mbyoqIHZpKTsKKworICB2b2lkIGNhbGxfYXJyYXkoY29uc3QgY2hhciogYXJyYXlfbmFtZSwgbGlua2VyX2Z1bmN0aW9uX3QqIGZ1bmN0aW9ucywgc2l6ZV90IGNvdW50LCBib29sIHJldmVyc2UpOworICB2b2lkIGNhbGxfZnVuY3Rpb24oY29uc3QgY2hhciogZnVuY3Rpb25fbmFtZSwgbGlua2VyX2Z1bmN0aW9uX3QgZnVuY3Rpb24pOworICB0ZW1wbGF0ZTx0eXBlbmFtZSBFbGZSZWxJdGVyYXRvclQ+CisgIGJvb2wgcmVsb2NhdGUoY29uc3QgVmVyc2lvblRyYWNrZXImIHZlcnNpb25fdHJhY2tlciwgRWxmUmVsSXRlcmF0b3JUJiYgcmVsX2l0ZXJhdG9yLAorICAgICAgICAgICAgICAgIGNvbnN0IHNvaW5mb19saXN0X3QmIGdsb2JhbF9ncm91cCwgY29uc3Qgc29pbmZvX2xpc3RfdCYgbG9jYWxfZ3JvdXApOwogCiAgcHJpdmF0ZToKICAgLy8gVGhpcyBwYXJ0IG9mIHRoZSBzdHJ1Y3R1cmUgaXMgb25seSBhdmFpbGFibGUKICAgLy8gd2hlbiBGTEFHX05FV19TT0lORk8gaXMgc2V0IGluIHRoaXMtPmZsYWdzLgotICB1aW50MzJfdCB2ZXJzaW9uOworICB1aW50MzJfdCB2ZXJzaW9uXzsKIAogICAvLyB2ZXJzaW9uID49IDAKLSAgZGV2X3Qgc3RfZGV2OwotICBpbm9fdCBzdF9pbm87CisgIGRldl90IHN0X2Rldl87CisgIGlub190IHN0X2lub187CiAKICAgLy8gZGVwZW5kZW5jeSBncmFwaAotICBzb2luZm9fbGlzdF90IGNoaWxkcmVuOwotICBzb2luZm9fbGlzdF90IHBhcmVudHM7CisgIHNvaW5mb19saXN0X3QgY2hpbGRyZW5fOworICBzb2luZm9fbGlzdF90IHBhcmVudHNfOwogCiAgIC8vIHZlcnNpb24gPj0gMQotICBvZmY2NF90IGZpbGVfb2Zmc2V0OwotICBpbnQgcnRsZF9mbGFnczsKLSAgc2l6ZV90IHN0cnRhYl9zaXplOworICBvZmY2NF90IGZpbGVfb2Zmc2V0XzsKKyAgdWludDMyX3QgcnRsZF9mbGFnc187CisgIHVpbnQzMl90IGR0X2ZsYWdzXzFfOworICBzaXplX3Qgc3RydGFiX3NpemVfOworCisgIC8vIHZlcnNpb24gPj0gMgorCisgIHNpemVfdCBnbnVfbmJ1Y2tldF87CisgIHVpbnQzMl90KiBnbnVfYnVja2V0XzsKKyAgdWludDMyX3QqIGdudV9jaGFpbl87CisgIHVpbnQzMl90IGdudV9tYXNrd29yZHNfOworICB1aW50MzJfdCBnbnVfc2hpZnQyXzsKKyAgRWxmVyhBZGRyKSogZ251X2Jsb29tX2ZpbHRlcl87CisKKyAgc29pbmZvKiBsb2NhbF9ncm91cF9yb290XzsKKworICB1aW50OF90KiBhbmRyb2lkX3JlbG9jc187CisgIHNpemVfdCBhbmRyb2lkX3JlbG9jc19zaXplXzsKKworICBjb25zdCBjaGFyKiBzb25hbWVfOworICBzdGQ6OnN0cmluZyByZWFscGF0aF87CisKKyAgY29uc3QgRWxmVyhWZXJzeW0pKiB2ZXJzeW1fOworCisgIEVsZlcoQWRkcikgdmVyZGVmX3B0cl87CisgIHNpemVfdCB2ZXJkZWZfY250XzsKKworICBFbGZXKEFkZHIpIHZlcm5lZWRfcHRyXzsKKyAgc2l6ZV90IHZlcm5lZWRfY250XzsKIAogICBmcmllbmQgc29pbmZvKiBnZXRfbGliZGxfaW5mbygpOwogfTsKIAotZXh0ZXJuIHNvaW5mbyogZ2V0X2xpYmRsX2luZm8oKTsKK2Jvb2wgc29pbmZvX2RvX2xvb2t1cChzb2luZm8qIHNpX2Zyb20sIGNvbnN0IGNoYXIqIG5hbWUsIGNvbnN0IHZlcnNpb25faW5mbyogdmksCisgICAgICAgICAgICAgICAgICAgICAgc29pbmZvKiogc2lfZm91bmRfaW4sIGNvbnN0IHNvaW5mbzo6c29pbmZvX2xpc3RfdCYgZ2xvYmFsX2dyb3VwLAorICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNvaW5mbzo6c29pbmZvX2xpc3RfdCYgbG9jYWxfZ3JvdXAsIGNvbnN0IEVsZlcoU3ltKSoqIHN5bWJvbCk7CisKK2VudW0gUmVsb2NhdGlvbktpbmQgeworICBrUmVsb2NBYnNvbHV0ZSA9IDAsCisgIGtSZWxvY1JlbGF0aXZlLAorICBrUmVsb2NDb3B5LAorICBrUmVsb2NTeW1ib2wsCisgIGtSZWxvY01heAorfTsKKwordm9pZCBjb3VudF9yZWxvY2F0aW9uKFJlbG9jYXRpb25LaW5kIGtpbmQpOworCitzb2luZm8qIGdldF9saWJkbF9pbmZvKCk7CiAKIHZvaWQgZG9fYW5kcm9pZF9nZXRfTERfTElCUkFSWV9QQVRIKGNoYXIqLCBzaXplX3QpOwogdm9pZCBkb19hbmRyb2lkX3VwZGF0ZV9MRF9MSUJSQVJZX1BBVEgoY29uc3QgY2hhciogbGRfbGlicmFyeV9wYXRoKTsKIHNvaW5mbyogZG9fZGxvcGVuKGNvbnN0IGNoYXIqIG5hbWUsIGludCBmbGFncywgY29uc3QgYW5kcm9pZF9kbGV4dGluZm8qIGV4dGluZm8pOwogdm9pZCBkb19kbGNsb3NlKHNvaW5mbyogc2kpOwogCi1FbGZXKFN5bSkqIGRsc3ltX2xpbmVhcl9sb29rdXAoY29uc3QgY2hhciogbmFtZSwgc29pbmZvKiogZm91bmQsIHNvaW5mbyogc3RhcnQpOworY29uc3QgRWxmVyhTeW0pKiBkbHN5bV9saW5lYXJfbG9va3VwKGNvbnN0IGNoYXIqIG5hbWUsIHNvaW5mbyoqIGZvdW5kLCBzb2luZm8qIGNhbGxlciwgdm9pZCogaGFuZGxlKTsKIHNvaW5mbyogZmluZF9jb250YWluaW5nX2xpYnJhcnkoY29uc3Qgdm9pZCogYWRkcik7CiAKLUVsZlcoU3ltKSogZGxhZGRyX2ZpbmRfc3ltYm9sKHNvaW5mbyogc2ksIGNvbnN0IHZvaWQqIGFkZHIpOwotRWxmVyhTeW0pKiBkbHN5bV9oYW5kbGVfbG9va3VwKHNvaW5mbyogc2ksIHNvaW5mbyoqIGZvdW5kLCBjb25zdCBjaGFyKiBuYW1lKTsKK2NvbnN0IEVsZlcoU3ltKSogZGxzeW1faGFuZGxlX2xvb2t1cChzb2luZm8qIHNpLCBzb2luZm8qKiBmb3VuZCwgY29uc3QgY2hhciogbmFtZSk7CiAKIHZvaWQgZGVidWdnZXJkX2luaXQoKTsKIGV4dGVybiAiQyIgYWJvcnRfbXNnX3QqIGdfYWJvcnRfbWVzc2FnZTsKZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZXJfYWxsb2NhdG9yLmNwcCBiL2xpbmtlci9saW5rZXJfYWxsb2NhdG9yLmNwcAppbmRleCA5MjIyMGU4Li4xYjE2Y2YxIDEwMDY0NAotLS0gYS9saW5rZXIvbGlua2VyX2FsbG9jYXRvci5jcHAKKysrIGIvbGlua2VyL2xpbmtlcl9hbGxvY2F0b3IuY3BwCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAogICoKICAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOwogICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgpAQCAtMTMsMTIwICsxMywzMzQgQEAKICAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKICAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgogICovCisKICNpbmNsdWRlICJsaW5rZXJfYWxsb2NhdG9yLmgiCi0jaW5jbHVkZSA8aW50dHlwZXMuaD4KKyNpbmNsdWRlICJsaW5rZXIuaCIKKworI2luY2x1ZGUgPGFsZ29yaXRobT4KKyNpbmNsdWRlIDx2ZWN0b3I+CisKKyNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNsdWRlIDxzeXMvbW1hbi5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCiAjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfcHJjdGwuaCIKIAotc3RydWN0IExpbmtlckFsbG9jYXRvclBhZ2UgewotICBMaW5rZXJBbGxvY2F0b3JQYWdlKiBuZXh0OwotICB1aW50OF90IGJ5dGVzW1BBR0VfU0laRS1zaXplb2YoTGlua2VyQWxsb2NhdG9yUGFnZSopXTsKLX07CisvLworLy8gTGlua2VyTWVtZW9yeUFsbG9jYXRvciBpcyBnZW5lcmFsIHB1cnBvc2UgYWxsb2NhdG9yCisvLyBkZXNpZ25lZCB0byBwcm92aWRlIHRoZSBzYW1lIGZ1bmN0aW9uYWxpdHkgYXMgdGhlIG1hbGxvYy9mcmVlL3JlYWxsb2MKKy8vIGxpYmMgZnVuY3Rpb25zLgorLy8KKy8vIE9uIGFsbG9jOgorLy8gSWYgc2l6ZSBpcyA+PSAxayBhbGxvY2F0b3IgcHJveGllcyBtYWxsb2MgY2FsbCBkaXJlY3RseSB0byBtbWFwCisvLyBJZiBzaXplIDwgMWsgYWxsb2NhdG9yIHVzZXMgU21hbGxPYmplY3RBbGxvY2F0b3IgZm9yIHRoZSBzaXplCisvLyByb3VuZGVkIHVwIHRvIHRoZSBuZWFyZXN0IHBvd2VyIG9mIHR3by4KKy8vCisvLyBPbiBmcmVlOgorLy8KKy8vIEZvciBhIHBvaW50ZXIgYWxsb2NhdGVkIHVzaW5nIHByb3h5LXRvLW1tYXAgYWxsb2NhdG9yIHVubWFwcworLy8gdGhlIG1lbW9yeS4KKy8vCisvLyBGb3IgYSBwb2ludGVyIGFsbG9jYXRlZCB1c2luZyBTbWFsbE9iamVjdEFsbG9jYXRvciBpdCBhZGRzCisvLyB0aGUgYmxvY2sgdG8gZnJlZV9ibG9ja3NfbGlzdF8uIElmIHRoZSBudW1iZXIgb2YgZnJlZSBwYWdlcyByZWFjaGVzIDIsCisvLyBTbWFsbE9iamVjdEFsbG9jYXRvciBtdW5tYXBzIG9uZSBvZiB0aGUgcGFnZXMga2VlcGluZyB0aGUgb3RoZXIgb25lCisvLyBpbiByZXNlcnZlLgogCi1zdHJ1Y3QgRnJlZUJsb2NrSW5mbyB7Ci0gIHZvaWQqIG5leHRfYmxvY2s7Ci0gIHNpemVfdCBudW1fZnJlZV9ibG9ja3M7Ci19Oworc3RhdGljIGNvbnN0IGNoYXIga1NpZ25hdHVyZVs0XSA9IHsnTCcsICdNJywgJ0EnLCAxfTsKIAotTGlua2VyQmxvY2tBbGxvY2F0b3I6OkxpbmtlckJsb2NrQWxsb2NhdG9yKHNpemVfdCBibG9ja19zaXplKQotICA6IGJsb2NrX3NpemVfKGJsb2NrX3NpemUgPCBzaXplb2YoRnJlZUJsb2NrSW5mbykgPyBzaXplb2YoRnJlZUJsb2NrSW5mbykgOiBibG9ja19zaXplKSwKLSAgICBwYWdlX2xpc3RfKG51bGxwdHIpLAotICAgIGZyZWVfYmxvY2tfbGlzdF8obnVsbHB0cikKLXt9CitzdGF0aWMgY29uc3Qgc2l6ZV90IGtTbWFsbE9iamVjdE1heFNpemUgPSAxIDw8IGtTbWFsbE9iamVjdE1heFNpemVMb2cyOwogCi12b2lkKiBMaW5rZXJCbG9ja0FsbG9jYXRvcjo6YWxsb2MoKSB7Ci0gIGlmIChmcmVlX2Jsb2NrX2xpc3RfID09IG51bGxwdHIpIHsKLSAgICBjcmVhdGVfbmV3X3BhZ2UoKTsKLSAgfQorLy8gVGhpcyB0eXBlIGlzIHVzZWQgZm9yIGxhcmdlIGFsbG9jYXRpb25zICh3aXRoIHNpemUgPjFrKQorc3RhdGljIGNvbnN0IHVpbnQzMl90IGtMYXJnZU9iamVjdCA9IDExMTsKIAotICBGcmVlQmxvY2tJbmZvKiBibG9ja19pbmZvID0gcmVpbnRlcnByZXRfY2FzdDxGcmVlQmxvY2tJbmZvKj4oZnJlZV9ibG9ja19saXN0Xyk7Ci0gIGlmIChibG9ja19pbmZvLT5udW1fZnJlZV9ibG9ja3MgPiAxKSB7Ci0gICAgRnJlZUJsb2NrSW5mbyogbmV4dF9ibG9ja19pbmZvID0gcmVpbnRlcnByZXRfY2FzdDxGcmVlQmxvY2tJbmZvKj4oCi0gICAgICByZWludGVycHJldF9jYXN0PGNoYXIqPihmcmVlX2Jsb2NrX2xpc3RfKSArIGJsb2NrX3NpemVfKTsKLSAgICBuZXh0X2Jsb2NrX2luZm8tPm5leHRfYmxvY2sgPSBibG9ja19pbmZvLT5uZXh0X2Jsb2NrOwotICAgIG5leHRfYmxvY2tfaW5mby0+bnVtX2ZyZWVfYmxvY2tzID0gYmxvY2tfaW5mby0+bnVtX2ZyZWVfYmxvY2tzIC0gMTsKLSAgICBmcmVlX2Jsb2NrX2xpc3RfID0gbmV4dF9ibG9ja19pbmZvOwotICB9IGVsc2UgewotICAgIGZyZWVfYmxvY2tfbGlzdF8gPSBibG9ja19pbmZvLT5uZXh0X2Jsb2NrOwotICB9Ci0KLSAgbWVtc2V0KGJsb2NrX2luZm8sIDAsIGJsb2NrX3NpemVfKTsKLQotICByZXR1cm4gYmxvY2tfaW5mbzsKK2Jvb2wgb3BlcmF0b3I8KGNvbnN0IHNtYWxsX29iamVjdF9wYWdlX3JlY29yZCYgb25lLCBjb25zdCBzbWFsbF9vYmplY3RfcGFnZV9yZWNvcmQmIHR3bykgeworICByZXR1cm4gb25lLnBhZ2VfYWRkciA8IHR3by5wYWdlX2FkZHI7CiB9CiAKLXZvaWQgTGlua2VyQmxvY2tBbGxvY2F0b3I6OmZyZWUodm9pZCogYmxvY2spIHsKLSAgaWYgKGJsb2NrID09IG51bGxwdHIpIHsKK3N0YXRpYyBpbmxpbmUgdWludDE2X3QgbG9nMihzaXplX3QgbnVtYmVyKSB7CisgIHVpbnQxNl90IHJlc3VsdCA9IDA7CisgIG51bWJlci0tOworCisgIHdoaWxlIChudW1iZXIgIT0gMCkgeworICAgIHJlc3VsdCsrOworICAgIG51bWJlciA+Pj0gMTsKKyAgfQorCisgIHJldHVybiByZXN1bHQ7Cit9CisKK0xpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yOjpMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvcigpCisgICAgOiB0eXBlXygwKSwgbmFtZV8obnVsbHB0ciksIGJsb2NrX3NpemVfKDApLCBmcmVlX3BhZ2VzX2NudF8oMCksIGZyZWVfYmxvY2tzX2xpc3RfKG51bGxwdHIpIHt9CisKK3ZvaWQqIExpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yOjphbGxvYygpIHsKKyAgaWYgKGZyZWVfYmxvY2tzX2xpc3RfID09IG51bGxwdHIpIHsKKyAgICBhbGxvY19wYWdlKCk7CisgIH0KKworICBzbWFsbF9vYmplY3RfYmxvY2tfcmVjb3JkKiBibG9ja19yZWNvcmQgPSBmcmVlX2Jsb2Nrc19saXN0XzsKKyAgaWYgKGJsb2NrX3JlY29yZC0+ZnJlZV9ibG9ja3NfY250ID4gMSkgeworICAgIHNtYWxsX29iamVjdF9ibG9ja19yZWNvcmQqIG5leHRfZnJlZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8c21hbGxfb2JqZWN0X2Jsb2NrX3JlY29yZCo+KAorICAgICAgICByZWludGVycHJldF9jYXN0PHVpbnQ4X3QqPihibG9ja19yZWNvcmQpICsgYmxvY2tfc2l6ZV8pOworICAgIG5leHRfZnJlZS0+bmV4dCA9IGJsb2NrX3JlY29yZC0+bmV4dDsKKyAgICBuZXh0X2ZyZWUtPmZyZWVfYmxvY2tzX2NudCA9IGJsb2NrX3JlY29yZC0+ZnJlZV9ibG9ja3NfY250IC0gMTsKKyAgICBmcmVlX2Jsb2Nrc19saXN0XyA9IG5leHRfZnJlZTsKKyAgfSBlbHNlIHsKKyAgICBmcmVlX2Jsb2Nrc19saXN0XyA9IGJsb2NrX3JlY29yZC0+bmV4dDsKKyAgfQorCisgIC8vIGJvb2trZWVwaW5nLi4uCisgIGF1dG8gcGFnZV9yZWNvcmQgPSBmaW5kX3BhZ2VfcmVjb3JkKGJsb2NrX3JlY29yZCk7CisKKyAgaWYgKHBhZ2VfcmVjb3JkLT5hbGxvY2F0ZWRfYmxvY2tzX2NudCA9PSAwKSB7CisgICAgZnJlZV9wYWdlc19jbnRfLS07CisgIH0KKworICBwYWdlX3JlY29yZC0+ZnJlZV9ibG9ja3NfY250LS07CisgIHBhZ2VfcmVjb3JkLT5hbGxvY2F0ZWRfYmxvY2tzX2NudCsrOworCisgIG1lbXNldChibG9ja19yZWNvcmQsIDAsIGJsb2NrX3NpemVfKTsKKworICByZXR1cm4gYmxvY2tfcmVjb3JkOworfQorCit2b2lkIExpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yOjpmcmVlX3BhZ2UobGlua2VyX3ZlY3Rvcl90OjppdGVyYXRvciBwYWdlX3JlY29yZCkgeworICB2b2lkKiBwYWdlX3N0YXJ0ID0gcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocGFnZV9yZWNvcmQtPnBhZ2VfYWRkcik7CisgIHZvaWQqIHBhZ2VfZW5kID0gcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KHBhZ2Vfc3RhcnQpICsgUEFHRV9TSVpFKTsKKworICB3aGlsZSAoZnJlZV9ibG9ja3NfbGlzdF8gIT0gbnVsbHB0ciAmJgorICAgICAgZnJlZV9ibG9ja3NfbGlzdF8gPiBwYWdlX3N0YXJ0ICYmCisgICAgICBmcmVlX2Jsb2Nrc19saXN0XyA8IHBhZ2VfZW5kKSB7CisgICAgZnJlZV9ibG9ja3NfbGlzdF8gPSBmcmVlX2Jsb2Nrc19saXN0Xy0+bmV4dDsKKyAgfQorCisgIHNtYWxsX29iamVjdF9ibG9ja19yZWNvcmQqIGN1cnJlbnQgPSBmcmVlX2Jsb2Nrc19saXN0XzsKKworICB3aGlsZSAoY3VycmVudCAhPSBudWxscHRyKSB7CisgICAgd2hpbGUgKGN1cnJlbnQtPm5leHQgPiBwYWdlX3N0YXJ0ICYmIGN1cnJlbnQtPm5leHQgPCBwYWdlX2VuZCkgeworICAgICAgY3VycmVudC0+bmV4dCA9IGN1cnJlbnQtPm5leHQtPm5leHQ7CisgICAgfQorCisgICAgY3VycmVudCA9IGN1cnJlbnQtPm5leHQ7CisgIH0KKworICBtdW5tYXAocGFnZV9zdGFydCwgUEFHRV9TSVpFKTsKKyAgcGFnZV9yZWNvcmRzXy5lcmFzZShwYWdlX3JlY29yZCk7CisgIGZyZWVfcGFnZXNfY250Xy0tOworfQorCit2b2lkIExpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yOjpmcmVlKHZvaWQqIHB0cikgeworICBhdXRvIHBhZ2VfcmVjb3JkID0gZmluZF9wYWdlX3JlY29yZChwdHIpOworCisgIHNzaXplX3Qgb2Zmc2V0ID0gcmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KHB0cikgLSBzaXplb2YocGFnZV9pbmZvKTsKKworICBpZiAob2Zmc2V0ICUgYmxvY2tfc2l6ZV8gIT0gMCkgeworICAgIF9fbGliY19mYXRhbCgiaW52YWxpZCBwb2ludGVyOiAlcCAoYmxvY2tfc2l6ZT0lemQpIiwgcHRyLCBibG9ja19zaXplXyk7CisgIH0KKworICBtZW1zZXQocHRyLCAwLCBibG9ja19zaXplXyk7CisgIHNtYWxsX29iamVjdF9ibG9ja19yZWNvcmQqIGJsb2NrX3JlY29yZCA9IHJlaW50ZXJwcmV0X2Nhc3Q8c21hbGxfb2JqZWN0X2Jsb2NrX3JlY29yZCo+KHB0cik7CisKKyAgYmxvY2tfcmVjb3JkLT5uZXh0ID0gZnJlZV9ibG9ja3NfbGlzdF87CisgIGJsb2NrX3JlY29yZC0+ZnJlZV9ibG9ja3NfY250ID0gMTsKKworICBmcmVlX2Jsb2Nrc19saXN0XyA9IGJsb2NrX3JlY29yZDsKKworICBwYWdlX3JlY29yZC0+ZnJlZV9ibG9ja3NfY250Kys7CisgIHBhZ2VfcmVjb3JkLT5hbGxvY2F0ZWRfYmxvY2tzX2NudC0tOworCisgIGlmIChwYWdlX3JlY29yZC0+YWxsb2NhdGVkX2Jsb2Nrc19jbnQgPT0gMCkgeworICAgIGlmIChmcmVlX3BhZ2VzX2NudF8rKyA+IDEpIHsKKyAgICAgIC8vIGlmIHdlIGFscmVhZHkgaGF2ZSBhIGZyZWUgcGFnZSAtIHVubWFwIHRoaXMgb25lLgorICAgICAgZnJlZV9wYWdlKHBhZ2VfcmVjb3JkKTsKKyAgICB9CisgIH0KK30KKwordm9pZCBMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvcjo6aW5pdCh1aW50MzJfdCB0eXBlLCBzaXplX3QgYmxvY2tfc2l6ZSwgY29uc3QgY2hhciogbmFtZSkgeworICB0eXBlXyA9IHR5cGU7CisgIGJsb2NrX3NpemVfID0gYmxvY2tfc2l6ZTsKKyAgbmFtZV8gPSBuYW1lOworfQorCitsaW5rZXJfdmVjdG9yX3Q6Oml0ZXJhdG9yIExpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yOjpmaW5kX3BhZ2VfcmVjb3JkKHZvaWQqIHB0cikgeworICB2b2lkKiBhZGRyID0gcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oUEFHRV9TVEFSVChyZWludGVycHJldF9jYXN0PHVpbnRwdHJfdD4ocHRyKSkpOworICBzbWFsbF9vYmplY3RfcGFnZV9yZWNvcmQgYm91bmRhcnk7CisgIGJvdW5kYXJ5LnBhZ2VfYWRkciA9IGFkZHI7CisgIGxpbmtlcl92ZWN0b3JfdDo6aXRlcmF0b3IgaXQgPSBzdGQ6Omxvd2VyX2JvdW5kKAorICAgICAgcGFnZV9yZWNvcmRzXy5iZWdpbigpLCBwYWdlX3JlY29yZHNfLmVuZCgpLCBib3VuZGFyeSk7CisKKyAgaWYgKGl0ID09IHBhZ2VfcmVjb3Jkc18uZW5kKCkgfHwgaXQtPnBhZ2VfYWRkciAhPSBhZGRyKSB7CisgICAgLy8gbm90IGZvdW5kLi4uCisgICAgX19saWJjX2ZhdGFsKCJwYWdlIHJlY29yZCBmb3IgJXAgd2FzIG5vdCBmb3VuZCAoYmxvY2tfc2l6ZT0lemQpIiwgcHRyLCBibG9ja19zaXplXyk7CisgIH0KKworICByZXR1cm4gaXQ7Cit9CisKK3ZvaWQgTGlua2VyU21hbGxPYmplY3RBbGxvY2F0b3I6OmNyZWF0ZV9wYWdlX3JlY29yZCh2b2lkKiBwYWdlX2FkZHIsIHNpemVfdCBmcmVlX2Jsb2Nrc19jbnQpIHsKKyAgc21hbGxfb2JqZWN0X3BhZ2VfcmVjb3JkIHJlY29yZDsKKyAgcmVjb3JkLnBhZ2VfYWRkciA9IHBhZ2VfYWRkcjsKKyAgcmVjb3JkLmZyZWVfYmxvY2tzX2NudCA9IGZyZWVfYmxvY2tzX2NudDsKKyAgcmVjb3JkLmFsbG9jYXRlZF9ibG9ja3NfY250ID0gMDsKKworICBsaW5rZXJfdmVjdG9yX3Q6Oml0ZXJhdG9yIGl0ID0gc3RkOjpsb3dlcl9ib3VuZCgKKyAgICAgIHBhZ2VfcmVjb3Jkc18uYmVnaW4oKSwgcGFnZV9yZWNvcmRzXy5lbmQoKSwgcmVjb3JkKTsKKyAgcGFnZV9yZWNvcmRzXy5pbnNlcnQoaXQsIHJlY29yZCk7Cit9CisKK3ZvaWQgTGlua2VyU21hbGxPYmplY3RBbGxvY2F0b3I6OmFsbG9jX3BhZ2UoKSB7CisgIHZvaWQqIG1hcF9wdHIgPSBtbWFwKG51bGxwdHIsIFBBR0VfU0laRSwKKyAgICAgIFBST1RfUkVBRHxQUk9UX1dSSVRFLCBNQVBfUFJJVkFURXxNQVBfQU5PTllNT1VTLCAwLCAwKTsKKyAgaWYgKG1hcF9wdHIgPT0gTUFQX0ZBSUxFRCkgeworICAgIF9fbGliY19mYXRhbCgibW1hcCBmYWlsZWQiKTsKKyAgfQorCisgIHByY3RsKFBSX1NFVF9WTUEsIFBSX1NFVF9WTUFfQU5PTl9OQU1FLCBtYXBfcHRyLCBQQUdFX1NJWkUsIG5hbWVfKTsKKworICBtZW1zZXQobWFwX3B0ciwgMCwgUEFHRV9TSVpFKTsKKworICBwYWdlX2luZm8qIGluZm8gPSByZWludGVycHJldF9jYXN0PHBhZ2VfaW5mbyo+KG1hcF9wdHIpOworICBtZW1jcHkoaW5mby0+c2lnbmF0dXJlLCBrU2lnbmF0dXJlLCBzaXplb2Yoa1NpZ25hdHVyZSkpOworICBpbmZvLT50eXBlID0gdHlwZV87CisgIGluZm8tPmFsbG9jYXRvcl9hZGRyID0gdGhpczsKKworICBzaXplX3QgZnJlZV9ibG9ja3NfY250ID0gKFBBR0VfU0laRSAtIHNpemVvZihwYWdlX2luZm8pKS9ibG9ja19zaXplXzsKKworICBjcmVhdGVfcGFnZV9yZWNvcmQobWFwX3B0ciwgZnJlZV9ibG9ja3NfY250KTsKKworICBzbWFsbF9vYmplY3RfYmxvY2tfcmVjb3JkKiBmaXJzdF9ibG9jayA9IHJlaW50ZXJwcmV0X2Nhc3Q8c21hbGxfb2JqZWN0X2Jsb2NrX3JlY29yZCo+KGluZm8gKyAxKTsKKworICBmaXJzdF9ibG9jay0+bmV4dCA9IGZyZWVfYmxvY2tzX2xpc3RfOworICBmaXJzdF9ibG9jay0+ZnJlZV9ibG9ja3NfY250ID0gZnJlZV9ibG9ja3NfY250OworCisgIGZyZWVfYmxvY2tzX2xpc3RfID0gZmlyc3RfYmxvY2s7Cit9CisKKworTGlua2VyTWVtb3J5QWxsb2NhdG9yOjpMaW5rZXJNZW1vcnlBbGxvY2F0b3IoKSB7CisgIHN0YXRpYyBjb25zdCBjaGFyKiBhbGxvY2F0b3JfbmFtZXNba1NtYWxsT2JqZWN0QWxsb2NhdG9yc0NvdW50XSA9IHsKKyAgICAibGlua2VyX2FsbG9jXzE2IiwgLy8gMl40CisgICAgImxpbmtlcl9hbGxvY18zMiIsIC8vIDJeNQorICAgICJsaW5rZXJfYWxsb2NfNjQiLCAvLyBhbmQgc28gb24uLi4KKyAgICAibGlua2VyX2FsbG9jXzEyOCIsCisgICAgImxpbmtlcl9hbGxvY18yNTYiLAorICAgICJsaW5rZXJfYWxsb2NfNTEyIiwKKyAgICAibGlua2VyX2FsbG9jXzEwMjQiLCAvLyAyXjEwCisgIH07CisKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBrU21hbGxPYmplY3RBbGxvY2F0b3JzQ291bnQ7ICsraSkgeworICAgIHVpbnQzMl90IHR5cGUgPSBpICsga1NtYWxsT2JqZWN0TWluU2l6ZUxvZzI7CisgICAgYWxsb2NhdG9yc19baV0uaW5pdCh0eXBlLCAxIDw8IHR5cGUsIGFsbG9jYXRvcl9uYW1lc1tpXSk7CisgIH0KK30KKwordm9pZCogTGlua2VyTWVtb3J5QWxsb2NhdG9yOjphbGxvY19tbWFwKHNpemVfdCBzaXplKSB7CisgIHNpemVfdCBhbGxvY2F0ZWRfc2l6ZSA9IFBBR0VfRU5EKHNpemUgKyBzaXplb2YocGFnZV9pbmZvKSk7CisgIHZvaWQqIG1hcF9wdHIgPSBtbWFwKG51bGxwdHIsIGFsbG9jYXRlZF9zaXplLAorICAgICAgUFJPVF9SRUFEfFBST1RfV1JJVEUsIE1BUF9QUklWQVRFfE1BUF9BTk9OWU1PVVMsIDAsIDApOworCisgIGlmIChtYXBfcHRyID09IE1BUF9GQUlMRUQpIHsKKyAgICBfX2xpYmNfZmF0YWwoIm1tYXAgZmFpbGVkIik7CisgIH0KKworICBwcmN0bChQUl9TRVRfVk1BLCBQUl9TRVRfVk1BX0FOT05fTkFNRSwgbWFwX3B0ciwgYWxsb2NhdGVkX3NpemUsICJsaW5rZXJfYWxsb2NfbG9iIik7CisKKyAgbWVtc2V0KG1hcF9wdHIsIDAsIGFsbG9jYXRlZF9zaXplKTsKKworICBwYWdlX2luZm8qIGluZm8gPSByZWludGVycHJldF9jYXN0PHBhZ2VfaW5mbyo+KG1hcF9wdHIpOworICBtZW1jcHkoaW5mby0+c2lnbmF0dXJlLCBrU2lnbmF0dXJlLCBzaXplb2Yoa1NpZ25hdHVyZSkpOworICBpbmZvLT50eXBlID0ga0xhcmdlT2JqZWN0OworICBpbmZvLT5hbGxvY2F0ZWRfc2l6ZSA9IGFsbG9jYXRlZF9zaXplOworCisgIHJldHVybiBpbmZvICsgMTsKK30KKwordm9pZCogTGlua2VyTWVtb3J5QWxsb2NhdG9yOjphbGxvYyhzaXplX3Qgc2l6ZSkgeworICAvLyB0cmVhdCBhbGxvYygwKSBhcyBhbGxvYygxKQorICBpZiAoc2l6ZSA9PSAwKSB7CisgICAgc2l6ZSA9IDE7CisgIH0KKworICBpZiAoc2l6ZSA+IGtTbWFsbE9iamVjdE1heFNpemUpIHsKKyAgICByZXR1cm4gYWxsb2NfbW1hcChzaXplKTsKKyAgfQorCisgIHVpbnQxNl90IGxvZzJfc2l6ZSA9IGxvZzIoc2l6ZSk7CisKKyAgaWYgKGxvZzJfc2l6ZSA8IGtTbWFsbE9iamVjdE1pblNpemVMb2cyKSB7CisgICAgbG9nMl9zaXplID0ga1NtYWxsT2JqZWN0TWluU2l6ZUxvZzI7CisgIH0KKworICByZXR1cm4gZ2V0X3NtYWxsX29iamVjdF9hbGxvY2F0b3IobG9nMl9zaXplKS0+YWxsb2MoKTsKK30KKworcGFnZV9pbmZvKiBMaW5rZXJNZW1vcnlBbGxvY2F0b3I6OmdldF9wYWdlX2luZm8odm9pZCogcHRyKSB7CisgIHBhZ2VfaW5mbyogaW5mbyA9IHJlaW50ZXJwcmV0X2Nhc3Q8cGFnZV9pbmZvKj4oUEFHRV9TVEFSVChyZWludGVycHJldF9jYXN0PHNpemVfdD4ocHRyKSkpOworICBpZiAobWVtY21wKGluZm8tPnNpZ25hdHVyZSwga1NpZ25hdHVyZSwgc2l6ZW9mKGtTaWduYXR1cmUpKSAhPSAwKSB7CisgICAgX19saWJjX2ZhdGFsKCJpbnZhbGlkIHBvaW50ZXIgJXAgKHBhZ2Ugc2lnbmF0dXJlIG1pc21hdGNoKSIsIHB0cik7CisgIH0KKworICByZXR1cm4gaW5mbzsKK30KKwordm9pZCogTGlua2VyTWVtb3J5QWxsb2NhdG9yOjpyZWFsbG9jKHZvaWQqIHB0ciwgc2l6ZV90IHNpemUpIHsKKyAgaWYgKHB0ciA9PSBudWxscHRyKSB7CisgICAgcmV0dXJuIGFsbG9jKHNpemUpOworICB9CisKKyAgaWYgKHNpemUgPT0gMCkgeworICAgIGZyZWUocHRyKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKKyAgfQorCisgIHBhZ2VfaW5mbyogaW5mbyA9IGdldF9wYWdlX2luZm8ocHRyKTsKKworICBzaXplX3Qgb2xkX3NpemUgPSAwOworCisgIGlmIChpbmZvLT50eXBlID09IGtMYXJnZU9iamVjdCkgeworICAgIG9sZF9zaXplID0gaW5mby0+YWxsb2NhdGVkX3NpemUgLSBzaXplb2YocGFnZV9pbmZvKTsKKyAgfSBlbHNlIHsKKyAgICBMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvciogYWxsb2NhdG9yID0gZ2V0X3NtYWxsX29iamVjdF9hbGxvY2F0b3IoaW5mby0+dHlwZSk7CisgICAgaWYgKGFsbG9jYXRvciAhPSBpbmZvLT5hbGxvY2F0b3JfYWRkcikgeworICAgICAgX19saWJjX2ZhdGFsKCJpbnZhbGlkIHBvaW50ZXIgJXAgKHBhZ2Ugc2lnbmF0dXJlIG1pc21hdGNoKSIsIHB0cik7CisgICAgfQorCisgICAgb2xkX3NpemUgPSBhbGxvY2F0b3ItPmdldF9ibG9ja19zaXplKCk7CisgIH0KKworICBpZiAob2xkX3NpemUgPCBzaXplKSB7CisgICAgdm9pZCAqcmVzdWx0ID0gYWxsb2Moc2l6ZSk7CisgICAgbWVtY3B5KHJlc3VsdCwgcHRyLCBvbGRfc2l6ZSk7CisgICAgZnJlZShwdHIpOworICAgIHJldHVybiByZXN1bHQ7CisgIH0KKworICByZXR1cm4gcHRyOworfQorCit2b2lkIExpbmtlck1lbW9yeUFsbG9jYXRvcjo6ZnJlZSh2b2lkKiBwdHIpIHsKKyAgaWYgKHB0ciA9PSBudWxscHRyKSB7CiAgICAgcmV0dXJuOwogICB9CiAKLSAgTGlua2VyQWxsb2NhdG9yUGFnZSogcGFnZSA9IGZpbmRfcGFnZShibG9jayk7CisgIHBhZ2VfaW5mbyogaW5mbyA9IGdldF9wYWdlX2luZm8ocHRyKTsKIAotICBpZiAocGFnZSA9PSBudWxscHRyKSB7Ci0gICAgYWJvcnQoKTsKLSAgfQotCi0gIHNzaXplX3Qgb2Zmc2V0ID0gcmVpbnRlcnByZXRfY2FzdDx1aW50OF90Kj4oYmxvY2spIC0gcGFnZS0+Ynl0ZXM7Ci0KLSAgaWYgKG9mZnNldCAlIGJsb2NrX3NpemVfICE9IDApIHsKLSAgICBhYm9ydCgpOwotICB9Ci0KLSAgbWVtc2V0KGJsb2NrLCAwLCBibG9ja19zaXplXyk7Ci0KLSAgRnJlZUJsb2NrSW5mbyogYmxvY2tfaW5mbyA9IHJlaW50ZXJwcmV0X2Nhc3Q8RnJlZUJsb2NrSW5mbyo+KGJsb2NrKTsKLQotICBibG9ja19pbmZvLT5uZXh0X2Jsb2NrID0gZnJlZV9ibG9ja19saXN0XzsKLSAgYmxvY2tfaW5mby0+bnVtX2ZyZWVfYmxvY2tzID0gMTsKLQotICBmcmVlX2Jsb2NrX2xpc3RfID0gYmxvY2tfaW5mbzsKLX0KLQotdm9pZCBMaW5rZXJCbG9ja0FsbG9jYXRvcjo6cHJvdGVjdF9hbGwoaW50IHByb3QpIHsKLSAgZm9yIChMaW5rZXJBbGxvY2F0b3JQYWdlKiBwYWdlID0gcGFnZV9saXN0XzsgcGFnZSAhPSBudWxscHRyOyBwYWdlID0gcGFnZS0+bmV4dCkgewotICAgIGlmIChtcHJvdGVjdChwYWdlLCBQQUdFX1NJWkUsIHByb3QpID09IC0xKSB7Ci0gICAgICBhYm9ydCgpOwotICAgIH0KLSAgfQotfQotCi12b2lkIExpbmtlckJsb2NrQWxsb2NhdG9yOjpjcmVhdGVfbmV3X3BhZ2UoKSB7Ci0gIExpbmtlckFsbG9jYXRvclBhZ2UqIHBhZ2UgPSByZWludGVycHJldF9jYXN0PExpbmtlckFsbG9jYXRvclBhZ2UqPihtbWFwKG51bGxwdHIsIFBBR0VfU0laRSwKLSAgICAgIFBST1RfUkVBRHxQUk9UX1dSSVRFLCBNQVBfUFJJVkFURXxNQVBfQU5PTllNT1VTLCAwLCAwKSk7Ci0gIGlmIChwYWdlID09IE1BUF9GQUlMRUQpIHsKLSAgICBhYm9ydCgpOyAvLyBvb20KLSAgfQotCi0gIHByY3RsKFBSX1NFVF9WTUEsIFBSX1NFVF9WTUFfQU5PTl9OQU1FLCBwYWdlLCBQQUdFX1NJWkUsICJsaW5rZXJfYWxsb2MiKTsKLQotICBtZW1zZXQocGFnZSwgMCwgUEFHRV9TSVpFKTsKLQotICBGcmVlQmxvY2tJbmZvKiBmaXJzdF9ibG9jayA9IHJlaW50ZXJwcmV0X2Nhc3Q8RnJlZUJsb2NrSW5mbyo+KHBhZ2UtPmJ5dGVzKTsKLSAgZmlyc3RfYmxvY2stPm5leHRfYmxvY2sgPSBmcmVlX2Jsb2NrX2xpc3RfOwotICBmaXJzdF9ibG9jay0+bnVtX2ZyZWVfYmxvY2tzID0gKFBBR0VfU0laRSAtIHNpemVvZihMaW5rZXJBbGxvY2F0b3JQYWdlKikpL2Jsb2NrX3NpemVfOwotCi0gIGZyZWVfYmxvY2tfbGlzdF8gPSBmaXJzdF9ibG9jazsKLQotICBwYWdlLT5uZXh0ID0gcGFnZV9saXN0XzsKLSAgcGFnZV9saXN0XyA9IHBhZ2U7Ci19Ci0KLUxpbmtlckFsbG9jYXRvclBhZ2UqIExpbmtlckJsb2NrQWxsb2NhdG9yOjpmaW5kX3BhZ2Uodm9pZCogYmxvY2spIHsKLSAgaWYgKGJsb2NrID09IG51bGxwdHIpIHsKLSAgICBhYm9ydCgpOwotICB9Ci0KLSAgTGlua2VyQWxsb2NhdG9yUGFnZSogcGFnZSA9IHBhZ2VfbGlzdF87Ci0gIHdoaWxlIChwYWdlICE9IG51bGxwdHIpIHsKLSAgICBjb25zdCB1aW50OF90KiBwYWdlX3B0ciA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgdWludDhfdCo+KHBhZ2UpOwotICAgIGlmIChibG9jayA+PSAocGFnZV9wdHIgKyBzaXplb2YocGFnZS0+bmV4dCkpICYmIGJsb2NrIDwgKHBhZ2VfcHRyICsgUEFHRV9TSVpFKSkgewotICAgICAgcmV0dXJuIHBhZ2U7CisgIGlmIChpbmZvLT50eXBlID09IGtMYXJnZU9iamVjdCkgeworICAgIG11bm1hcChpbmZvLCBpbmZvLT5hbGxvY2F0ZWRfc2l6ZSk7CisgIH0gZWxzZSB7CisgICAgTGlua2VyU21hbGxPYmplY3RBbGxvY2F0b3IqIGFsbG9jYXRvciA9IGdldF9zbWFsbF9vYmplY3RfYWxsb2NhdG9yKGluZm8tPnR5cGUpOworICAgIGlmIChhbGxvY2F0b3IgIT0gaW5mby0+YWxsb2NhdG9yX2FkZHIpIHsKKyAgICAgIF9fbGliY19mYXRhbCgiaW52YWxpZCBwb2ludGVyICVwIChpbnZhbGlkIGFsbG9jYXRvciBhZGRyZXNzIGZvciB0aGUgcGFnZSkiLCBwdHIpOwogICAgIH0KIAotICAgIHBhZ2UgPSBwYWdlLT5uZXh0OworICAgIGFsbG9jYXRvci0+ZnJlZShwdHIpOworICB9Cit9CisKK0xpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yKiBMaW5rZXJNZW1vcnlBbGxvY2F0b3I6OmdldF9zbWFsbF9vYmplY3RfYWxsb2NhdG9yKHVpbnQzMl90IHR5cGUpIHsKKyAgaWYgKHR5cGUgPCBrU21hbGxPYmplY3RNaW5TaXplTG9nMiB8fCB0eXBlID4ga1NtYWxsT2JqZWN0TWF4U2l6ZUxvZzIpIHsKKyAgICBfX2xpYmNfZmF0YWwoImludmFsaWQgdHlwZTogJXUiLCB0eXBlKTsKICAgfQogCi0gIGFib3J0KCk7CisgIHJldHVybiAmYWxsb2NhdG9yc19bdHlwZSAtIGtTbWFsbE9iamVjdE1pblNpemVMb2cyXTsKIH0KZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZXJfYWxsb2NhdG9yLmggYi9saW5rZXIvbGlua2VyX2FsbG9jYXRvci5oCmluZGV4IDVkMzU2M2YuLjJhZGFkNTYgMTAwNjQ0Ci0tLSBhL2xpbmtlci9saW5rZXJfYWxsb2NhdG9yLmgKKysrIGIvbGlua2VyL2xpbmtlcl9hbGxvY2F0b3IuaApAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKICAqCiAgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKICAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KQEAgLTE4LDUzICsxOCwxMjYgQEAKICNkZWZpbmUgX19MSU5LRVJfQUxMT0NBVE9SX0gKIAogI2luY2x1ZGUgPHN0ZGxpYi5oPgotI2luY2x1ZGUgPGxpbWl0cy5oPgotI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX21hY3Jvcy5oIgorI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorI2luY2x1ZGUgPHN5cy9tbWFuLmg+CisjaW5jbHVkZSA8c3RkZGVmLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CiAKLXN0cnVjdCBMaW5rZXJBbGxvY2F0b3JQYWdlOworI2luY2x1ZGUgPHZlY3Rvcj4KIAotLyoKLSAqIFRoaXMgY2xhc3MgaXMgYSBub24tdGVtcGxhdGUgdmVyc2lvbiBvZiB0aGUgTGlua2VyQWxsb2NhdG9yCi0gKiBJdCBrZWVwcyBjb2RlIGluc2lkZSAuY3BwIGZpbGUgYnkga2VlcGluZyB0aGUgaW50ZXJmYWNlCi0gKiB0ZW1wbGF0ZS1mcmVlLgotICoKLSAqIFBsZWFzZSB1c2UgTGlua2VyQWxsb2NhdG9yPHR5cGU+IHdoZXJlIHBvc3NpYmxlIChldmVyeXdoZXJlKS4KLSAqLwotY2xhc3MgTGlua2VyQmxvY2tBbGxvY2F0b3IgeworI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX3ByY3RsLmgiCisjaW5jbHVkZSAicHJpdmF0ZS9saWJjX2xvZ2dpbmcuaCIKKworY29uc3QgdWludDMyX3Qga1NtYWxsT2JqZWN0TWF4U2l6ZUxvZzIgPSAxMDsKK2NvbnN0IHVpbnQzMl90IGtTbWFsbE9iamVjdE1pblNpemVMb2cyID0gNDsKK2NvbnN0IHVpbnQzMl90IGtTbWFsbE9iamVjdEFsbG9jYXRvcnNDb3VudCA9IGtTbWFsbE9iamVjdE1heFNpemVMb2cyIC0ga1NtYWxsT2JqZWN0TWluU2l6ZUxvZzIgKyAxOworCitjbGFzcyBMaW5rZXJTbWFsbE9iamVjdEFsbG9jYXRvcjsKKworLy8gVGhpcyBzdHJ1Y3R1cmUgaXMgcGxhY2VkIGF0IHRoZSBiZWdpbm5pbmcgb2YgZWFjaCBhZGRyZXNzYWJsZSBwYWdlCisvLyBhbmQgaGFzIGFsbCBpbmZvcm1hdGlvbiB3ZSBuZWVkIHRvIGZpbmQgdGhlIGNvcnJlc3BvbmRpbmcgbWVtb3J5IGFsbG9jYXRvci4KK3N0cnVjdCBwYWdlX2luZm8geworICBjaGFyIHNpZ25hdHVyZVs0XTsKKyAgdWludDMyX3QgdHlwZTsKKyAgdW5pb24geworICAgIC8vIHdlIHVzZSBhbGxvY2F0ZWRfc2l6ZSBmb3IgbGFyZ2Ugb2JqZWN0cyBhbGxvY2F0b3IKKyAgICBzaXplX3QgYWxsb2NhdGVkX3NpemU7CisgICAgLy8gYW5kIGFsbG9jYXRvcl9hZGRyIGZvciBzbWFsbCBvbmVzLgorICAgIExpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yKiBhbGxvY2F0b3JfYWRkcjsKKyAgfTsKK307CisKK3N0cnVjdCBzbWFsbF9vYmplY3RfcGFnZV9yZWNvcmQgeworICB2b2lkKiBwYWdlX2FkZHI7CisgIHNpemVfdCBmcmVlX2Jsb2Nrc19jbnQ7CisgIHNpemVfdCBhbGxvY2F0ZWRfYmxvY2tzX2NudDsKK307CisKKy8vIGZvciBsb3dlcl9ib3VuZC4uLgorYm9vbCBvcGVyYXRvcjwoY29uc3Qgc21hbGxfb2JqZWN0X3BhZ2VfcmVjb3JkJiBvbmUsIGNvbnN0IHNtYWxsX29iamVjdF9wYWdlX3JlY29yZCYgdHdvKTsKKworc3RydWN0IHNtYWxsX29iamVjdF9ibG9ja19yZWNvcmQgeworICBzbWFsbF9vYmplY3RfYmxvY2tfcmVjb3JkKiBuZXh0OworICBzaXplX3QgZnJlZV9ibG9ja3NfY250OworfTsKKworLy8gVGhpcyBpcyBpbXBsZW1lbnRhdGlvbiBmb3Igc3RkOjp2ZWN0b3IgYWxsb2NhdG9yCit0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KK2NsYXNzIGxpbmtlcl92ZWN0b3JfYWxsb2NhdG9yIHsKICBwdWJsaWM6Ci0gIGV4cGxpY2l0IExpbmtlckJsb2NrQWxsb2NhdG9yKHNpemVfdCBibG9ja19zaXplKTsKKyAgdHlwZWRlZiBUIHZhbHVlX3R5cGU7CisgIHR5cGVkZWYgVCogcG9pbnRlcjsKKyAgdHlwZWRlZiBjb25zdCBUKiBjb25zdF9wb2ludGVyOworICB0eXBlZGVmIFQmIHJlZmVyZW5jZTsKKyAgdHlwZWRlZiBjb25zdCBUJiBjb25zdF9yZWZlcmVuY2U7CisgIHR5cGVkZWYgc2l6ZV90IHNpemVfdHlwZTsKKyAgdHlwZWRlZiBwdHJkaWZmX3QgZGlmZmVyZW5jZV90eXBlOwogCisgIFQqIGFsbG9jYXRlKHNpemVfdCBuLCBjb25zdCBUKiBoaW50ID0gbnVsbHB0cikgeworICAgIHNpemVfdCBzaXplID0gbiAqIHNpemVvZihUKTsKKyAgICB2b2lkKiBwdHIgPSBtbWFwKGNvbnN0X2Nhc3Q8VCo+KGhpbnQpLCBzaXplLAorICAgICAgICBQUk9UX1JFQUR8UFJPVF9XUklURSwgTUFQX1BSSVZBVEV8TUFQX0FOT05ZTU9VUywgMCwgMCk7CisgICAgaWYgKHB0ciA9PSBNQVBfRkFJTEVEKSB7CisgICAgICAvLyBTcGVjIHNheXMgd2UgbmVlZCB0byB0aHJvdyBzdGQ6OmJhZF9hbGxvYyBoZXJlIGJ1dCBiZWNhdXNlIG91cgorICAgICAgLy8gY29kZSBkb2VzIG5vdCBzdXBwb3J0IGV4Y2VwdGlvbiBoYW5kbGluZyBhbnl3YXlzIC0gd2UgYXJlIGdvaW5nIHRvIGFib3J0LgorICAgICAgX19saWJjX2ZhdGFsKCJtbWFwIGZhaWxlZCIpOworICAgIH0KKworICAgIHByY3RsKFBSX1NFVF9WTUEsIFBSX1NFVF9WTUFfQU5PTl9OQU1FLCBwdHIsIHNpemUsICJsaW5rZXJfYWxsb2NfdmVjdG9yIik7CisKKyAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxUKj4ocHRyKTsKKyAgfQorCisgIHZvaWQgZGVhbGxvY2F0ZShUKiBwdHIsIHNpemVfdCBuKSB7CisgICAgbXVubWFwKHB0ciwgbiAqIHNpemVvZihUKSk7CisgIH0KK307CisKK3R5cGVkZWYKKyAgICBzdGQ6OnZlY3RvcjxzbWFsbF9vYmplY3RfcGFnZV9yZWNvcmQsIGxpbmtlcl92ZWN0b3JfYWxsb2NhdG9yPHNtYWxsX29iamVjdF9wYWdlX3JlY29yZD4+CisgICAgbGlua2VyX3ZlY3Rvcl90OworCisKK2NsYXNzIExpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yIHsKKyBwdWJsaWM6CisgIExpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yKCk7CisgIHZvaWQgaW5pdCh1aW50MzJfdCB0eXBlLCBzaXplX3QgYmxvY2tfc2l6ZSwgY29uc3QgY2hhciogbmFtZSk7CiAgIHZvaWQqIGFsbG9jKCk7Ci0gIHZvaWQgZnJlZSh2b2lkKiBibG9jayk7Ci0gIHZvaWQgcHJvdGVjdF9hbGwoaW50IHByb3QpOworICB2b2lkIGZyZWUodm9pZCogcHRyKTsKIAorICBzaXplX3QgZ2V0X2Jsb2NrX3NpemUoKSBjb25zdCB7IHJldHVybiBibG9ja19zaXplXzsgfQogIHByaXZhdGU6Ci0gIHZvaWQgY3JlYXRlX25ld19wYWdlKCk7Ci0gIExpbmtlckFsbG9jYXRvclBhZ2UqIGZpbmRfcGFnZSh2b2lkKiBibG9jayk7CisgIHZvaWQgYWxsb2NfcGFnZSgpOworICB2b2lkIGZyZWVfcGFnZShsaW5rZXJfdmVjdG9yX3Q6Oml0ZXJhdG9yIHBhZ2VfcmVjb3JkKTsKKyAgbGlua2VyX3ZlY3Rvcl90OjppdGVyYXRvciBmaW5kX3BhZ2VfcmVjb3JkKHZvaWQqIHB0cik7CisgIHZvaWQgY3JlYXRlX3BhZ2VfcmVjb3JkKHZvaWQqIHBhZ2VfYWRkciwgc2l6ZV90IGZyZWVfYmxvY2tzX2NudCk7CiAKKyAgdWludDMyX3QgdHlwZV87CisgIGNvbnN0IGNoYXIqIG5hbWVfOwogICBzaXplX3QgYmxvY2tfc2l6ZV87Ci0gIExpbmtlckFsbG9jYXRvclBhZ2UqIHBhZ2VfbGlzdF87Ci0gIHZvaWQqIGZyZWVfYmxvY2tfbGlzdF87CiAKLSAgRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOKExpbmtlckJsb2NrQWxsb2NhdG9yKTsKKyAgc2l6ZV90IGZyZWVfcGFnZXNfY250XzsKKyAgc21hbGxfb2JqZWN0X2Jsb2NrX3JlY29yZCogZnJlZV9ibG9ja3NfbGlzdF87CisKKyAgLy8gc29ydGVkIHZlY3RvciBvZiBwYWdlIHJlY29yZHMKKyAgbGlua2VyX3ZlY3Rvcl90IHBhZ2VfcmVjb3Jkc187CiB9OwogCi0vKgotICogV2UgY2FuJ3QgdXNlIG1hbGxvYygzKSBpbiB0aGUgZHluYW1pYyBsaW5rZXIuCi0gKgotICogQSBzaW1wbGUgYWxsb2NhdG9yIGZvciB0aGUgZHluYW1pYyBsaW5rZXIuIEFuIGFsbG9jYXRvciBhbGxvY2F0ZXMgaW5zdGFuY2VzCi0gKiBvZiBhIHNpbmdsZSBmaXhlZC1zaXplIHR5cGUuIEFsbG9jYXRpb25zIGFyZSBiYWNrZWQgYnkgcGFnZS1zaXplZCBwcml2YXRlCi0gKiBhbm9ueW1vdXMgbW1hcHMuCi0gKi8KLXRlbXBsYXRlPHR5cGVuYW1lIFQ+Ci1jbGFzcyBMaW5rZXJBbGxvY2F0b3IgeworY2xhc3MgTGlua2VyTWVtb3J5QWxsb2NhdG9yIHsKICBwdWJsaWM6Ci0gIExpbmtlckFsbG9jYXRvcigpIDogYmxvY2tfYWxsb2NhdG9yXyhzaXplb2YoVCkpIHt9Ci0gIFQqIGFsbG9jKCkgeyByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxUKj4oYmxvY2tfYWxsb2NhdG9yXy5hbGxvYygpKTsgfQotICB2b2lkIGZyZWUoVCogdCkgeyBibG9ja19hbGxvY2F0b3JfLmZyZWUodCk7IH0KLSAgdm9pZCBwcm90ZWN0X2FsbChpbnQgcHJvdCkgeyBibG9ja19hbGxvY2F0b3JfLnByb3RlY3RfYWxsKHByb3QpOyB9CisgIExpbmtlck1lbW9yeUFsbG9jYXRvcigpOworICB2b2lkKiBhbGxvYyhzaXplX3Qgc2l6ZSk7CisKKyAgLy8gTm90ZSB0aGF0IHRoaXMgaW1wbGVtZW50YXRpb24gb2YgcmVhbGxvYyBuZXZlciBzaHJpbmtzIGFsbG9jYXRpb24KKyAgdm9pZCogcmVhbGxvYyh2b2lkKiBwdHIsIHNpemVfdCBzaXplKTsKKyAgdm9pZCBmcmVlKHZvaWQqIHB0cik7CiAgcHJpdmF0ZToKLSAgTGlua2VyQmxvY2tBbGxvY2F0b3IgYmxvY2tfYWxsb2NhdG9yXzsKLSAgRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOKExpbmtlckFsbG9jYXRvcik7CisgIHZvaWQqIGFsbG9jX21tYXAoc2l6ZV90IHNpemUpOworICBwYWdlX2luZm8qIGdldF9wYWdlX2luZm8odm9pZCogcHRyKTsKKyAgTGlua2VyU21hbGxPYmplY3RBbGxvY2F0b3IqIGdldF9zbWFsbF9vYmplY3RfYWxsb2NhdG9yKHVpbnQzMl90IHR5cGUpOworCisgIExpbmtlclNtYWxsT2JqZWN0QWxsb2NhdG9yIGFsbG9jYXRvcnNfW2tTbWFsbE9iamVjdEFsbG9jYXRvcnNDb3VudF07CiB9OwotI2VuZGlmIC8vIF9fTElOS0VSX0FMTE9DQVRPUl9ICisKKworI2VuZGlmICAvKiBfX0xJTktFUl9BTExPQ0FUT1JfSCAqLwpkaWZmIC0tZ2l0IGEvbGlua2VyL2xpbmtlcl9ibG9ja19hbGxvY2F0b3IuY3BwIGIvbGlua2VyL2xpbmtlcl9ibG9ja19hbGxvY2F0b3IuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZjOWE3NWIKLS0tIC9kZXYvbnVsbAorKysgYi9saW5rZXIvbGlua2VyX2Jsb2NrX2FsbG9jYXRvci5jcHAKQEAgLTAsMCArMSwxMzUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSAibGlua2VyX2Jsb2NrX2FsbG9jYXRvci5oIgorI2luY2x1ZGUgPGludHR5cGVzLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8c3lzL21tYW4uaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX3ByY3RsLmgiCisKK3N0cnVjdCBMaW5rZXJCbG9ja0FsbG9jYXRvclBhZ2UgeworICBMaW5rZXJCbG9ja0FsbG9jYXRvclBhZ2UqIG5leHQ7CisgIHVpbnQ4X3QgYnl0ZXNbUEFHRV9TSVpFLXNpemVvZihMaW5rZXJCbG9ja0FsbG9jYXRvclBhZ2UqKV07Cit9OworCitzdHJ1Y3QgRnJlZUJsb2NrSW5mbyB7CisgIHZvaWQqIG5leHRfYmxvY2s7CisgIHNpemVfdCBudW1fZnJlZV9ibG9ja3M7Cit9OworCitMaW5rZXJCbG9ja0FsbG9jYXRvcjo6TGlua2VyQmxvY2tBbGxvY2F0b3Ioc2l6ZV90IGJsb2NrX3NpemUpCisgIDogYmxvY2tfc2l6ZV8oYmxvY2tfc2l6ZSA8IHNpemVvZihGcmVlQmxvY2tJbmZvKSA/IHNpemVvZihGcmVlQmxvY2tJbmZvKSA6IGJsb2NrX3NpemUpLAorICAgIHBhZ2VfbGlzdF8obnVsbHB0ciksCisgICAgZnJlZV9ibG9ja19saXN0XyhudWxscHRyKQore30KKwordm9pZCogTGlua2VyQmxvY2tBbGxvY2F0b3I6OmFsbG9jKCkgeworICBpZiAoZnJlZV9ibG9ja19saXN0XyA9PSBudWxscHRyKSB7CisgICAgY3JlYXRlX25ld19wYWdlKCk7CisgIH0KKworICBGcmVlQmxvY2tJbmZvKiBibG9ja19pbmZvID0gcmVpbnRlcnByZXRfY2FzdDxGcmVlQmxvY2tJbmZvKj4oZnJlZV9ibG9ja19saXN0Xyk7CisgIGlmIChibG9ja19pbmZvLT5udW1fZnJlZV9ibG9ja3MgPiAxKSB7CisgICAgRnJlZUJsb2NrSW5mbyogbmV4dF9ibG9ja19pbmZvID0gcmVpbnRlcnByZXRfY2FzdDxGcmVlQmxvY2tJbmZvKj4oCisgICAgICByZWludGVycHJldF9jYXN0PGNoYXIqPihmcmVlX2Jsb2NrX2xpc3RfKSArIGJsb2NrX3NpemVfKTsKKyAgICBuZXh0X2Jsb2NrX2luZm8tPm5leHRfYmxvY2sgPSBibG9ja19pbmZvLT5uZXh0X2Jsb2NrOworICAgIG5leHRfYmxvY2tfaW5mby0+bnVtX2ZyZWVfYmxvY2tzID0gYmxvY2tfaW5mby0+bnVtX2ZyZWVfYmxvY2tzIC0gMTsKKyAgICBmcmVlX2Jsb2NrX2xpc3RfID0gbmV4dF9ibG9ja19pbmZvOworICB9IGVsc2UgeworICAgIGZyZWVfYmxvY2tfbGlzdF8gPSBibG9ja19pbmZvLT5uZXh0X2Jsb2NrOworICB9CisKKyAgbWVtc2V0KGJsb2NrX2luZm8sIDAsIGJsb2NrX3NpemVfKTsKKworICByZXR1cm4gYmxvY2tfaW5mbzsKK30KKwordm9pZCBMaW5rZXJCbG9ja0FsbG9jYXRvcjo6ZnJlZSh2b2lkKiBibG9jaykgeworICBpZiAoYmxvY2sgPT0gbnVsbHB0cikgeworICAgIHJldHVybjsKKyAgfQorCisgIExpbmtlckJsb2NrQWxsb2NhdG9yUGFnZSogcGFnZSA9IGZpbmRfcGFnZShibG9jayk7CisKKyAgaWYgKHBhZ2UgPT0gbnVsbHB0cikgeworICAgIGFib3J0KCk7CisgIH0KKworICBzc2l6ZV90IG9mZnNldCA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCo+KGJsb2NrKSAtIHBhZ2UtPmJ5dGVzOworCisgIGlmIChvZmZzZXQgJSBibG9ja19zaXplXyAhPSAwKSB7CisgICAgYWJvcnQoKTsKKyAgfQorCisgIG1lbXNldChibG9jaywgMCwgYmxvY2tfc2l6ZV8pOworCisgIEZyZWVCbG9ja0luZm8qIGJsb2NrX2luZm8gPSByZWludGVycHJldF9jYXN0PEZyZWVCbG9ja0luZm8qPihibG9jayk7CisKKyAgYmxvY2tfaW5mby0+bmV4dF9ibG9jayA9IGZyZWVfYmxvY2tfbGlzdF87CisgIGJsb2NrX2luZm8tPm51bV9mcmVlX2Jsb2NrcyA9IDE7CisKKyAgZnJlZV9ibG9ja19saXN0XyA9IGJsb2NrX2luZm87Cit9CisKK3ZvaWQgTGlua2VyQmxvY2tBbGxvY2F0b3I6OnByb3RlY3RfYWxsKGludCBwcm90KSB7CisgIGZvciAoTGlua2VyQmxvY2tBbGxvY2F0b3JQYWdlKiBwYWdlID0gcGFnZV9saXN0XzsgcGFnZSAhPSBudWxscHRyOyBwYWdlID0gcGFnZS0+bmV4dCkgeworICAgIGlmIChtcHJvdGVjdChwYWdlLCBQQUdFX1NJWkUsIHByb3QpID09IC0xKSB7CisgICAgICBhYm9ydCgpOworICAgIH0KKyAgfQorfQorCit2b2lkIExpbmtlckJsb2NrQWxsb2NhdG9yOjpjcmVhdGVfbmV3X3BhZ2UoKSB7CisgIExpbmtlckJsb2NrQWxsb2NhdG9yUGFnZSogcGFnZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8TGlua2VyQmxvY2tBbGxvY2F0b3JQYWdlKj4oCisgICAgICBtbWFwKG51bGxwdHIsIFBBR0VfU0laRSwgUFJPVF9SRUFEfFBST1RfV1JJVEUsIE1BUF9QUklWQVRFfE1BUF9BTk9OWU1PVVMsIDAsIDApKTsKKworICBpZiAocGFnZSA9PSBNQVBfRkFJTEVEKSB7CisgICAgYWJvcnQoKTsgLy8gb29tCisgIH0KKworICBwcmN0bChQUl9TRVRfVk1BLCBQUl9TRVRfVk1BX0FOT05fTkFNRSwgcGFnZSwgUEFHRV9TSVpFLCAibGlua2VyX2FsbG9jIik7CisKKyAgbWVtc2V0KHBhZ2UsIDAsIFBBR0VfU0laRSk7CisKKyAgRnJlZUJsb2NrSW5mbyogZmlyc3RfYmxvY2sgPSByZWludGVycHJldF9jYXN0PEZyZWVCbG9ja0luZm8qPihwYWdlLT5ieXRlcyk7CisgIGZpcnN0X2Jsb2NrLT5uZXh0X2Jsb2NrID0gZnJlZV9ibG9ja19saXN0XzsKKyAgZmlyc3RfYmxvY2stPm51bV9mcmVlX2Jsb2NrcyA9IChQQUdFX1NJWkUgLSBzaXplb2YoTGlua2VyQmxvY2tBbGxvY2F0b3JQYWdlKikpL2Jsb2NrX3NpemVfOworCisgIGZyZWVfYmxvY2tfbGlzdF8gPSBmaXJzdF9ibG9jazsKKworICBwYWdlLT5uZXh0ID0gcGFnZV9saXN0XzsKKyAgcGFnZV9saXN0XyA9IHBhZ2U7Cit9CisKK0xpbmtlckJsb2NrQWxsb2NhdG9yUGFnZSogTGlua2VyQmxvY2tBbGxvY2F0b3I6OmZpbmRfcGFnZSh2b2lkKiBibG9jaykgeworICBpZiAoYmxvY2sgPT0gbnVsbHB0cikgeworICAgIGFib3J0KCk7CisgIH0KKworICBMaW5rZXJCbG9ja0FsbG9jYXRvclBhZ2UqIHBhZ2UgPSBwYWdlX2xpc3RfOworICB3aGlsZSAocGFnZSAhPSBudWxscHRyKSB7CisgICAgY29uc3QgdWludDhfdCogcGFnZV9wdHIgPSByZWludGVycHJldF9jYXN0PGNvbnN0IHVpbnQ4X3QqPihwYWdlKTsKKyAgICBpZiAoYmxvY2sgPj0gKHBhZ2VfcHRyICsgc2l6ZW9mKHBhZ2UtPm5leHQpKSAmJiBibG9jayA8IChwYWdlX3B0ciArIFBBR0VfU0laRSkpIHsKKyAgICAgIHJldHVybiBwYWdlOworICAgIH0KKworICAgIHBhZ2UgPSBwYWdlLT5uZXh0OworICB9CisKKyAgYWJvcnQoKTsKK30KZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZXJfYmxvY2tfYWxsb2NhdG9yLmggYi9saW5rZXIvbGlua2VyX2Jsb2NrX2FsbG9jYXRvci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRiOWI5OTUKLS0tIC9kZXYvbnVsbAorKysgYi9saW5rZXIvbGlua2VyX2Jsb2NrX2FsbG9jYXRvci5oCkBAIC0wLDAgKzEsODEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaWZuZGVmIF9fTElOS0VSX0JMT0NLX0FMTE9DQVRPUl9ICisjZGVmaW5lIF9fTElOS0VSX0JMT0NLX0FMTE9DQVRPUl9ICisKKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlICJwcml2YXRlL2Jpb25pY19tYWNyb3MuaCIKKworc3RydWN0IExpbmtlckJsb2NrQWxsb2NhdG9yUGFnZTsKKworLyoKKyAqIFRoaXMgY2xhc3MgaXMgYSBub24tdGVtcGxhdGUgdmVyc2lvbiBvZiB0aGUgTGlua2VyVHlwZUFsbG9jYXRvcgorICogSXQga2VlcHMgY29kZSBpbnNpZGUgLmNwcCBmaWxlIGJ5IGtlZXBpbmcgdGhlIGludGVyZmFjZQorICogdGVtcGxhdGUtZnJlZS4KKyAqCisgKiBQbGVhc2UgdXNlIExpbmtlclR5cGVBbGxvY2F0b3I8dHlwZT4gd2hlcmUgcG9zc2libGUgKGV2ZXJ5d2hlcmUpLgorICovCitjbGFzcyBMaW5rZXJCbG9ja0FsbG9jYXRvciB7CisgcHVibGljOgorICBleHBsaWNpdCBMaW5rZXJCbG9ja0FsbG9jYXRvcihzaXplX3QgYmxvY2tfc2l6ZSk7CisKKyAgdm9pZCogYWxsb2MoKTsKKyAgdm9pZCBmcmVlKHZvaWQqIGJsb2NrKTsKKyAgdm9pZCBwcm90ZWN0X2FsbChpbnQgcHJvdCk7CisKKyBwcml2YXRlOgorICB2b2lkIGNyZWF0ZV9uZXdfcGFnZSgpOworICBMaW5rZXJCbG9ja0FsbG9jYXRvclBhZ2UqIGZpbmRfcGFnZSh2b2lkKiBibG9jayk7CisKKyAgc2l6ZV90IGJsb2NrX3NpemVfOworICBMaW5rZXJCbG9ja0FsbG9jYXRvclBhZ2UqIHBhZ2VfbGlzdF87CisgIHZvaWQqIGZyZWVfYmxvY2tfbGlzdF87CisKKyAgRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOKExpbmtlckJsb2NrQWxsb2NhdG9yKTsKK307CisKKy8qCisgKiBBIHNpbXBsZSBhbGxvY2F0b3IgZm9yIHRoZSBkeW5hbWljIGxpbmtlci4gQW4gYWxsb2NhdG9yIGFsbG9jYXRlcyBpbnN0YW5jZXMKKyAqIG9mIGEgc2luZ2xlIGZpeGVkLXNpemUgdHlwZS4gQWxsb2NhdGlvbnMgYXJlIGJhY2tlZCBieSBwYWdlLXNpemVkIHByaXZhdGUKKyAqIGFub255bW91cyBtbWFwcy4KKyAqCisgKiBUaGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGlzIGFsbG9jYXRvciBhbmQgTGlua2VyTWVtb3J5QWxsb2NhdG9yIGFyZToKKyAqIDEuIFRoaXMgYWxsb2NhdG9yIG1hbmFnZXMgc3BhY2UgbW9yZSBlZmZpY2llbnRseS4gTGlua2VyTWVtb3J5QWxsb2NhdG9yCisgKiAgICBvcGVyYXRlcyBpbiBwb3dlci1vZi10d28gc2l6ZWQgYmxvY2tzIHVwIHRvIDFrLCB3aGVuIHRoaXMgaW1wbGVtZW50YXRpb24KKyAqICAgIHNwbGl0cyB0aGUgcGFnZSB0byBhbGlnbmVkIHNpemUgb2Ygc3RydWN0dXJlOyBGb3IgZXhhbXBsZSBmb3Igc3RydWN0dXJlcworICogICAgd2l0aCBzaXplIDUxMyB0aGlzIGFsbG9jYXRvciB3aWxsIHVzZSA1MTYgKDUyMCBmb3IgbHA2NCkgYnl0ZXMgb2YgZGF0YQorICogICAgd2hlcmUgZ2VuZXJhbGl6ZWQgaW1wbGVtZW50YXRpb24gaXMgZ29pbmcgdG8gdXNlIDEwMjQgc2l6ZWQgYmxvY2tzLgorICoKKyAqIDIuIFRoaXMgYWxsb2NhdG9yIGRvZXMgbm90IG11bm1hcCBhbGxvY2F0ZWQgbWVtb3J5LCB3aGVyZSBMaW5rZXJNZW1vcnlBbGxvY2F0b3IgZG9lcy4KKyAqCisgKiAzLiBUaGlzIGFsbG9jYXRvciBwcm92aWRlcyBtcHJvdGVjdCBzZXJ2aWNlcyB0byB0aGUgdXNlciwgd2hlcmUgTGlua2VyTWVtb3J5QWxsb2NhdG9yCisgKiAgICBhbHdheXMgdHJlYXRzIGl0J3MgbWVtb3J5IGFzIFJFQUR8V1JJVEUuCisgKi8KK3RlbXBsYXRlPHR5cGVuYW1lIFQ+CitjbGFzcyBMaW5rZXJUeXBlQWxsb2NhdG9yIHsKKyBwdWJsaWM6CisgIExpbmtlclR5cGVBbGxvY2F0b3IoKSA6IGJsb2NrX2FsbG9jYXRvcl8oc2l6ZW9mKFQpKSB7fQorICBUKiBhbGxvYygpIHsgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8VCo+KGJsb2NrX2FsbG9jYXRvcl8uYWxsb2MoKSk7IH0KKyAgdm9pZCBmcmVlKFQqIHQpIHsgYmxvY2tfYWxsb2NhdG9yXy5mcmVlKHQpOyB9CisgIHZvaWQgcHJvdGVjdF9hbGwoaW50IHByb3QpIHsgYmxvY2tfYWxsb2NhdG9yXy5wcm90ZWN0X2FsbChwcm90KTsgfQorIHByaXZhdGU6CisgIExpbmtlckJsb2NrQWxsb2NhdG9yIGJsb2NrX2FsbG9jYXRvcl87CisgIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihMaW5rZXJUeXBlQWxsb2NhdG9yKTsKK307CisKKyNlbmRpZiAvLyBfX0xJTktFUl9CTE9DS19BTExPQ0FUT1JfSApkaWZmIC0tZ2l0IGEvbGlua2VyL2xpbmtlcl9kZWJ1Zy5oIGIvbGlua2VyL2xpbmtlcl9kZWJ1Zy5oCmluZGV4IDBjN2E3ODQuLjVkZWQ1YWIgMTAwNjQ0Ci0tLSBhL2xpbmtlci9saW5rZXJfZGVidWcuaAorKysgYi9saW5rZXIvbGlua2VyX2RlYnVnLmgKQEAgLTgyLDQgKzgyLDIzIEBACiAKICNkZWZpbmUgVFJBQ0VfVFlQRSh0LCB4Li4uKSAgIGRvIHsgaWYgKERPX1RSQUNFXyMjdCkgeyBUUkFDRSh4KTsgfSB9IHdoaWxlICgwKQogCisjaWYgQ09VTlRfUEFHRVMKK2V4dGVybiB1aW50MzJfdCBiaXRtYXNrW107CisjaWYgZGVmaW5lZChfX0xQNjRfXykKKyNkZWZpbmUgTUFSSyhvZmZzZXQpIFwKKyAgICBkbyB7IFwKKyAgICAgIGlmICgoKChvZmZzZXQpID4+IDEyKSA+PiA1KSA8IDQwOTYpIFwKKyAgICAgICAgICBiaXRtYXNrWygob2Zmc2V0KSA+PiAxMikgPj4gNV0gfD0gKDEgPDwgKCgob2Zmc2V0KSA+PiAxMikgJiAzMSkpOyBcCisgICAgfSB3aGlsZSAoMCkKKyNlbHNlCisjZGVmaW5lIE1BUksob2Zmc2V0KSBcCisgICAgZG8geyBcCisgICAgICBiaXRtYXNrWygob2Zmc2V0KSA+PiAxMikgPj4gM10gfD0gKDEgPDwgKCgob2Zmc2V0KSA+PiAxMikgJiA3KSk7IFwKKyAgICB9IHdoaWxlICgwKQorI2VuZGlmCisjZWxzZQorI2RlZmluZSBNQVJLKHgpIGRvIHt9IHdoaWxlICgwKQorCisjZW5kaWYKKwogI2VuZGlmIC8qIF9MSU5LRVJfREVCVUdfSF8gKi8KZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZXJfZW52aXJvbi5jcHAgYi9saW5rZXIvbGlua2VyX2Vudmlyb24uY3BwCmluZGV4IGRhZWU1NmYuLjNjNDY2YTIgMTAwNjQ0Ci0tLSBhL2xpbmtlci9saW5rZXJfZW52aXJvbi5jcHAKKysrIGIvbGlua2VyL2xpbmtlcl9lbnZpcm9uLmNwcApAQCAtMzEsMTEgKzMxLDExIEBACiAjaW5jbHVkZSA8bGludXgvYXV4dmVjLmg+CiAjaW5jbHVkZSA8c3RkZGVmLmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKICNpbmNsdWRlICJwcml2YXRlL0tlcm5lbEFyZ3VtZW50QmxvY2suaCIKIAotc3RhdGljIGNoYXIqKiBfZW52cDsKIHN0YXRpYyBib29sIF9BVF9TRUNVUkVfdmFsdWUgPSB0cnVlOwogCiBib29sIGdldF9BVF9TRUNVUkUoKSB7CkBAIC0xMTQsNiArMTE0LDcgQEAKICAgICAgICJHQ09OVl9QQVRIIiwKICAgICAgICJHRVRDT05GX0RJUiIsCiAgICAgICAiSE9TVEFMSUFTRVMiLAorICAgICAgIkpFX01BTExPQ19DT05GIiwKICAgICAgICJMRF9BT1VUX0xJQlJBUllfUEFUSCIsCiAgICAgICAiTERfQU9VVF9QUkVMT0FEIiwKICAgICAgICJMRF9BVURJVCIsCkBAIC0xMjksNiArMTMwLDcgQEAKICAgICAgICJMT0NBTERPTUFJTiIsCiAgICAgICAiTE9DUEFUSCIsCiAgICAgICAiTUFMTE9DX0NIRUNLXyIsCisgICAgICAiTUFMTE9DX0NPTkYiLAogICAgICAgIk1BTExPQ19UUkFDRSIsCiAgICAgICAiTklTX1BBVEgiLAogICAgICAgIk5MU1BBVEgiLApAQCAtMTQ3LDggKzE0OSw4IEBACiB9CiAKIHN0YXRpYyB2b2lkIF9fc2FuaXRpemVfZW52aXJvbm1lbnRfdmFyaWFibGVzKCkgewotICBjaGFyKiogc3JjICA9IF9lbnZwOwotICBjaGFyKiogZHN0ID0gX2VudnA7CisgIGNoYXIqKiBzcmMgID0gZW52aXJvbjsKKyAgY2hhcioqIGRzdCA9IGVudmlyb247CiAgIGZvciAoOyBzcmNbMF0gIT0gbnVsbHB0cjsgKytzcmMpIHsKICAgICBpZiAoIV9faXNfdmFsaWRfZW52aXJvbm1lbnRfdmFyaWFibGUoc3JjWzBdKSkgewogICAgICAgY29udGludWU7CkBAIC0xNjUsNyArMTY3LDcgQEAKIAogdm9pZCBsaW5rZXJfZW52X2luaXQoS2VybmVsQXJndW1lbnRCbG9jayYgYXJncykgewogICAvLyBTdG9yZSBlbnZpcm9ubWVudCBwb2ludGVyIC0gY2FuJ3QgYmUgbnVsbC4KLSAgX2VudnAgPSBhcmdzLmVudnA7CisgIGVudmlyb24gPSBhcmdzLmVudnA7CiAKICAgX19pbml0X0FUX1NFQ1VSRShhcmdzKTsKICAgX19zYW5pdGl6ZV9lbnZpcm9ubWVudF92YXJpYWJsZXMoKTsKQEAgLTE3Niw3ICsxNzgsNyBAQAogICAgIHJldHVybiBudWxscHRyOwogICB9CiAKLSAgZm9yIChjaGFyKiogcCA9IF9lbnZwOyBwWzBdICE9IG51bGxwdHI7ICsrcCkgeworICBmb3IgKGNoYXIqKiBwID0gZW52aXJvbjsgcFswXSAhPSBudWxscHRyOyArK3ApIHsKICAgICBjb25zdCBjaGFyKiB2YWwgPSBlbnZfbWF0Y2gocFswXSwgbmFtZSk7CiAgICAgaWYgKHZhbCAhPSBudWxscHRyKSB7CiAgICAgICBpZiAodmFsWzBdID09ICdcMCcpIHsKZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZXJfZXhlY3V0YWJsZS5tayBiL2xpbmtlci9saW5rZXJfZXhlY3V0YWJsZS5tawpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTU5NmE0OC4uMDAwMDAwMAotLS0gYS9saW5rZXIvbGlua2VyX2V4ZWN1dGFibGUubWsKKysrIC9kZXYvbnVsbApAQCAtMSwyOCArMCwwIEBACi0KLSMKLSMgSW5zdGVhZCBvZiBpbmNsdWRpbmcgJChCVUlMRF9FWEVDVVRBQkxFKSwgd2UgZXhlY3V0ZSB0aGUgc3RlcHMgdG8gY3JlYXRlIGFuIGV4ZWN1dGFibGUgYnkKLSMgaGFuZCwgYXMgd2Ugd2FudCB0byBpbnNlcnQgYW4gZXh0cmEgb2JqY29weSBzdGVwIHRoYXQgaXMgbm90IHN1cHBvcnRlZCBieSB0aGUgYnVpbGQKLSMgc3lzdGVtLCBhbmQgaXMgcHJvYmFibHkgc3BlY2lmaWMgdGhlIGxpbmtlciBvbmx5LCBzbyB0aGVyZSdzIG5vIG5lZWQgdG8gbW9kaWZ5IHRoZSBidWlsZAotIyBzeXN0ZW0gZm9yIHRoZSBwdXJwb3NlLgotIwotCi1MT0NBTF9NT0RVTEVfQ0xBU1MgOj0gRVhFQ1VUQUJMRVMKLUxPQ0FMX01PRFVMRV9TVUZGSVggOj0gJChUQVJHRVRfRVhFQ1VUQUJMRV9TVUZGSVgpCi0KLSMgQ2xhbmcgY2FsbHMgL3Vzci9iaW4vbGQ6IHVucmVjb2duaXplZCBvcHRpb24gJy0taWNmPXNhZmUnLCBodHRwOi8vYi8xNzQwMzY3NC4KLUxPQ0FMX0NMQU5HIDo9IGZhbHNlCi1pbmNsdWRlICQoQlVJTERfU1lTVEVNKS9keW5hbWljX2JpbmFyeS5tawotCi0jIFNlZSBidWlsZC9jb3JlL2V4ZWN1dGFibGVfaW50ZXJuYWwubWsKLSQobGlua2VkX21vZHVsZSk6IFBSSVZBVEVfVEFSR0VUX0dMT0JBTF9MRF9ESVJTIDo9ICQoJChMT0NBTF8yTkRfQVJDSF9WQVJfUFJFRklYKVRBUkdFVF9HTE9CQUxfTERfRElSUykKLSQobGlua2VkX21vZHVsZSk6IFBSSVZBVEVfVEFSR0VUX0dMT0JBTF9MREZMQUdTIDo9ICQoJChMT0NBTF8yTkRfQVJDSF9WQVJfUFJFRklYKVRBUkdFVF9HTE9CQUxfTERGTEFHUykKLSQobGlua2VkX21vZHVsZSk6IFBSSVZBVEVfVEFSR0VUX0ZET19MSUIgOj0gJCgkKExPQ0FMXzJORF9BUkNIX1ZBUl9QUkVGSVgpVEFSR0VUX0ZET19MSUIpCi0kKGxpbmtlZF9tb2R1bGUpOiBQUklWQVRFX1RBUkdFVF9MSUJHQ0MgOj0gJCgkKExPQ0FMXzJORF9BUkNIX1ZBUl9QUkVGSVgpVEFSR0VUX0xJQkdDQykKLSQobGlua2VkX21vZHVsZSk6IFBSSVZBVEVfVEFSR0VUX0NSVEJFR0lOX0RZTkFNSUNfTyA6PSAkKCQoTE9DQUxfMk5EX0FSQ0hfVkFSX1BSRUZJWClUQVJHRVRfQ1JUQkVHSU5fRFlOQU1JQ19PKQotJChsaW5rZWRfbW9kdWxlKTogUFJJVkFURV9UQVJHRVRfQ1JUQkVHSU5fU1RBVElDX08gOj0gJCgkKExPQ0FMXzJORF9BUkNIX1ZBUl9QUkVGSVgpVEFSR0VUX0NSVEJFR0lOX1NUQVRJQ19PKQotJChsaW5rZWRfbW9kdWxlKTogUFJJVkFURV9UQVJHRVRfQ1JURU5EX08gOj0gJCgkKExPQ0FMXzJORF9BUkNIX1ZBUl9QUkVGSVgpVEFSR0VUX0NSVEVORF9PKQotJChsaW5rZWRfbW9kdWxlKTogUFJJVkFURV9UQVJHRVRfT0JKQ09QWSA6PSAkKCQoTE9DQUxfMk5EX0FSQ0hfVkFSX1BSRUZJWClUQVJHRVRfT0JKQ09QWSkKLSQobGlua2VkX21vZHVsZSk6ICQoVEFSR0VUX0NSVEJFR0lOX1NUQVRJQ19PKSAkKGFsbF9vYmplY3RzKSAkKGFsbF9saWJyYXJpZXMpICQoJChMT0NBTF8yTkRfQVJDSF9WQVJfUFJFRklYKVRBUkdFVF9DUlRFTkRfTykKLQkkKHRyYW5zZm9ybS1vLXRvLXN0YXRpYy1leGVjdXRhYmxlKQotCUBlY2hvICJ0YXJnZXQgUHJlZml4U3ltYm9sczogJChQUklWQVRFX01PRFVMRSkgKCRAKSIKLQkkKGhpZGUpICQoUFJJVkFURV9UQVJHRVRfT0JKQ09QWSkgLS1wcmVmaXgtc3ltYm9scz1fX2RsXyAkQApkaWZmIC0tZ2l0IGEvbGlua2VyL2xpbmtlcl9saWJjX3N1cHBvcnQuYyBiL2xpbmtlci9saW5rZXJfbGliY19zdXBwb3J0LmMKaW5kZXggMTdkYjZkNC4uNGM0OTM4NCAxMDA2NDQKLS0tIGEvbGlua2VyL2xpbmtlcl9saWJjX3N1cHBvcnQuYworKysgYi9saW5rZXIvbGlua2VyX2xpYmNfc3VwcG9ydC5jCkBAIC0xNSwzICsxNSw3IEBACiAgKi8KIAogI2luY2x1ZGUgIi4uL2xpYmMvYXJjaC1jb21tb24vYmlvbmljL19fZHNvX2hhbmRsZS5oIgorCitpbnQgYXRleGl0KHZvaWQgKCpmdW5jdGlvbikodm9pZCkgX19hdHRyaWJ1dGVfXygoX191bnVzZWRfXykpKSB7CisgIHJldHVybiAtMTsKK30KZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZXJfbWVtb3J5LmNwcCBiL2xpbmtlci9saW5rZXJfbWVtb3J5LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xODkyZDAyCi0tLSAvZGV2L251bGwKKysrIGIvbGlua2VyL2xpbmtlcl9tZW1vcnkuY3BwCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSAibGlua2VyX2FsbG9jYXRvci5oIgorCisjaW5jbHVkZSA8c3RkbGliLmg+CisKK3N0YXRpYyBMaW5rZXJNZW1vcnlBbGxvY2F0b3IgZ19saW5rZXJfYWxsb2NhdG9yOworCit2b2lkKiBtYWxsb2Moc2l6ZV90IGJ5dGVfY291bnQpIHsKKyAgcmV0dXJuIGdfbGlua2VyX2FsbG9jYXRvci5hbGxvYyhieXRlX2NvdW50KTsKK30KKwordm9pZCogY2FsbG9jKHNpemVfdCBpdGVtX2NvdW50LCBzaXplX3QgaXRlbV9zaXplKSB7CisgIHJldHVybiBnX2xpbmtlcl9hbGxvY2F0b3IuYWxsb2MoaXRlbV9jb3VudCppdGVtX3NpemUpOworfQorCit2b2lkKiByZWFsbG9jKHZvaWQqIHAsIHNpemVfdCBieXRlX2NvdW50KSB7CisgIHJldHVybiBnX2xpbmtlcl9hbGxvY2F0b3IucmVhbGxvYyhwLCBieXRlX2NvdW50KTsKK30KKwordm9pZCBmcmVlKHZvaWQqIHB0cikgeworICBnX2xpbmtlcl9hbGxvY2F0b3IuZnJlZShwdHIpOworfQorCmRpZmYgLS1naXQgYS9saW5rZXIvbGlua2VyX21pcHMuY3BwIGIvbGlua2VyL2xpbmtlcl9taXBzLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NDM2MTgwCi0tLSAvZGV2L251bGwKKysrIGIvbGlua2VyL2xpbmtlcl9taXBzLmNwcApAQCAtMCwwICsxLDE4NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAibGlua2VyLmgiCisjaW5jbHVkZSAibGlua2VyX2RlYnVnLmgiCisjaW5jbHVkZSAibGlua2VyX3JlbG9jcy5oIgorI2luY2x1ZGUgImxpbmtlcl9yZWxvY19pdGVyYXRvcnMuaCIKKyNpbmNsdWRlICJsaW5rZXJfc2xlYjEyOC5oIgorCit0ZW1wbGF0ZSBib29sIHNvaW5mbzo6cmVsb2NhdGU8cGxhaW5fcmVsb2NfaXRlcmF0b3I+KGNvbnN0IFZlcnNpb25UcmFja2VyJiB2ZXJzaW9uX3RyYWNrZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWluX3JlbG9jX2l0ZXJhdG9yJiYgcmVsX2l0ZXJhdG9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzb2luZm9fbGlzdF90JiBnbG9iYWxfZ3JvdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNvaW5mb19saXN0X3QmIGxvY2FsX2dyb3VwKTsKKwordGVtcGxhdGUgYm9vbCBzb2luZm86OnJlbG9jYXRlPHBhY2tlZF9yZWxvY19pdGVyYXRvcjxzbGViMTI4X2RlY29kZXI+PigKKyAgICBjb25zdCBWZXJzaW9uVHJhY2tlciYgdmVyc2lvbl90cmFja2VyLAorICAgIHBhY2tlZF9yZWxvY19pdGVyYXRvcjxzbGViMTI4X2RlY29kZXI+JiYgcmVsX2l0ZXJhdG9yLAorICAgIGNvbnN0IHNvaW5mb19saXN0X3QmIGdsb2JhbF9ncm91cCwKKyAgICBjb25zdCBzb2luZm9fbGlzdF90JiBsb2NhbF9ncm91cCk7CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBFbGZSZWxJdGVyYXRvclQ+Citib29sIHNvaW5mbzo6cmVsb2NhdGUoY29uc3QgVmVyc2lvblRyYWNrZXImIHZlcnNpb25fdHJhY2tlciwKKyAgICAgICAgICAgICAgICAgICAgICBFbGZSZWxJdGVyYXRvclQmJiByZWxfaXRlcmF0b3IsCisgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc29pbmZvX2xpc3RfdCYgZ2xvYmFsX2dyb3VwLAorICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNvaW5mb19saXN0X3QmIGxvY2FsX2dyb3VwKSB7CisgIGZvciAoc2l6ZV90IGlkeCA9IDA7IHJlbF9pdGVyYXRvci5oYXNfbmV4dCgpOyArK2lkeCkgeworICAgIGNvbnN0IGF1dG8gcmVsID0gcmVsX2l0ZXJhdG9yLm5leHQoKTsKKworICAgIGlmIChyZWwgPT0gbnVsbHB0cikgeworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIEVsZlcoV29yZCkgdHlwZSA9IEVMRlcoUl9UWVBFKShyZWwtPnJfaW5mbyk7CisgICAgRWxmVyhXb3JkKSBzeW0gPSBFTEZXKFJfU1lNKShyZWwtPnJfaW5mbyk7CisKKyAgICBFbGZXKEFkZHIpIHJlbG9jID0gc3RhdGljX2Nhc3Q8RWxmVyhBZGRyKT4ocmVsLT5yX29mZnNldCArIGxvYWRfYmlhcyk7CisgICAgRWxmVyhBZGRyKSBzeW1fYWRkciA9IDA7CisgICAgY29uc3QgY2hhciogc3ltX25hbWUgPSBudWxscHRyOworCisgICAgREVCVUcoIlByb2Nlc3NpbmcgJyVzJyByZWxvY2F0aW9uIGF0IGluZGV4ICV6ZCIsIGdldF9zb25hbWUoKSwgaWR4KTsKKyAgICBpZiAodHlwZSA9PSBSX0dFTkVSSUNfTk9ORSkgeworICAgICAgY29udGludWU7CisgICAgfQorCisgICAgY29uc3QgRWxmVyhTeW0pKiBzID0gbnVsbHB0cjsKKyAgICBzb2luZm8qIGxzaSA9IG51bGxwdHI7CisKKyAgICBpZiAoc3ltICE9IDApIHsKKyAgICAgIHN5bV9uYW1lID0gZ2V0X3N0cmluZyhzeW10YWJfW3N5bV0uc3RfbmFtZSk7CisgICAgICBjb25zdCB2ZXJzaW9uX2luZm8qIHZpID0gbnVsbHB0cjsKKworICAgICAgaWYgKCFsb29rdXBfdmVyc2lvbl9pbmZvKHZlcnNpb25fdHJhY2tlciwgc3ltLCBzeW1fbmFtZSwgJnZpKSkgeworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisKKyAgICAgIGlmICghc29pbmZvX2RvX2xvb2t1cCh0aGlzLCBzeW1fbmFtZSwgdmksICZsc2ksIGdsb2JhbF9ncm91cCwgbG9jYWxfZ3JvdXAsICZzKSkgeworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisKKyAgICAgIGlmIChzID09IG51bGxwdHIpIHsKKyAgICAgICAgLy8gbWlwcyBkb2VzIG5vdCBzdXBwb3J0IHJlbG9jYXRpb24gd2l0aCB3ZWFrLXVuZGVmaW5lZCBzeW1ib2xzCisgICAgICAgIERMX0VSUigiY2Fubm90IGxvY2F0ZSBzeW1ib2wgXCIlc1wiIHJlZmVyZW5jZWQgYnkgXCIlc1wiLi4uIiwgc3ltX25hbWUsIGdldF9zb25hbWUoKSk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIC8vIFdlIGdvdCBhIGRlZmluaXRpb24uCisgICAgICAgIHN5bV9hZGRyID0gbHNpLT5yZXNvbHZlX3N5bWJvbF9hZGRyZXNzKHMpOworICAgICAgfQorICAgICAgY291bnRfcmVsb2NhdGlvbihrUmVsb2NTeW1ib2wpOworICAgIH0KKworICAgIHN3aXRjaCAodHlwZSkgeworICAgICAgY2FzZSBSX01JUFNfUkVMMzI6CisjaWYgZGVmaW5lZChfX0xQNjRfXykKKyAgICAgICAgLy8gTUlQUyBFbGY2NF9SZWwgZW50cmllcyBjb250YWluIGNvbXBvdW5kIHJlbG9jYXRpb25zCisgICAgICAgIC8vIFdlIG9ubHkgaGFuZGxlIHRoZSBSX01JUFNfTk9ORXxSX01JUFNfNjR8Ul9NSVBTX1JFTDMyIGNhc2UKKyAgICAgICAgaWYgKEVMRjY0X1JfVFlQRTIocmVsLT5yX2luZm8pICE9IFJfTUlQU182NCB8fAorICAgICAgICAgICAgRUxGNjRfUl9UWVBFMyhyZWwtPnJfaW5mbykgIT0gUl9NSVBTX05PTkUpIHsKKyAgICAgICAgICBETF9FUlIoIlVuZXhwZWN0ZWQgY29tcG91bmQgcmVsb2NhdGlvbiB0eXBlOiVkIHR5cGUyOiVkIHR5cGUzOiVkIEAgJXAgKCV6dSkiLAorICAgICAgICAgICAgICAgICB0eXBlLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oRUxGNjRfUl9UWVBFMihyZWwtPnJfaW5mbykpLAorICAgICAgICAgICAgICAgICBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oRUxGNjRfUl9UWVBFMyhyZWwtPnJfaW5mbykpLCByZWwsIGlkeCk7CisgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisjZW5kaWYKKyAgICAgICAgY291bnRfcmVsb2NhdGlvbihzID09IG51bGxwdHIgPyBrUmVsb2NBYnNvbHV0ZSA6IGtSZWxvY1JlbGF0aXZlKTsKKyAgICAgICAgTUFSSyhyZWwtPnJfb2Zmc2V0KTsKKyAgICAgICAgVFJBQ0VfVFlQRShSRUxPLCAiUkVMTyBSRUwzMiAlMDh6eCA8LSAlMDh6eCAlcyIsIHN0YXRpY19jYXN0PHNpemVfdD4ocmVsb2MpLAorICAgICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PHNpemVfdD4oc3ltX2FkZHIpLCBzeW1fbmFtZSA/IHN5bV9uYW1lIDogIipTRUNUSU9OSERSKiIpOworICAgICAgICBpZiAocyAhPSBudWxscHRyKSB7CisgICAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlbG9jKSArPSBzeW1fYWRkcjsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4ocmVsb2MpICs9IGxvYWRfYmlhczsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICAgIGRlZmF1bHQ6CisgICAgICAgIERMX0VSUigidW5rbm93biByZWxvYyB0eXBlICVkIEAgJXAgKCV6dSkiLCB0eXBlLCByZWwsIGlkeCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgIH0KKyAgcmV0dXJuIHRydWU7Cit9CisKK2Jvb2wgc29pbmZvOjptaXBzX3JlbG9jYXRlX2dvdChjb25zdCBWZXJzaW9uVHJhY2tlciYgdmVyc2lvbl90cmFja2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNvaW5mb19saXN0X3QmIGdsb2JhbF9ncm91cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzb2luZm9fbGlzdF90JiBsb2NhbF9ncm91cCkgeworICBFbGZXKEFkZHIpKiogZ290ID0gcGx0X2dvdF87CisgIGlmIChnb3QgPT0gbnVsbHB0cikgeworICAgIHJldHVybiB0cnVlOworICB9CisKKyAgLy8gZ290WzBdIGlzIHRoZSBhZGRyZXNzIG9mIHRoZSBsYXp5IHJlc29sdmVyIGZ1bmN0aW9uLgorICAvLyBnb3RbMV0gbWF5IGJlIHVzZWQgZm9yIGEgR05VIGV4dGVuc2lvbi4KKyAgLy8gU2V0IGl0IHRvIGEgcmVjb2duaXphYmxlIGFkZHJlc3MgaW4gY2FzZSBzb21lb25lIGNhbGxzIGl0IChzaG91bGQgYmUgX3J0bGRfYmluZF9zdGFydCkuCisgIC8vIEZJWE1FOiBtYXliZSB0aGlzIHNob3VsZCBiZSBpbiBhIHNlcGFyYXRlIHJvdXRpbmU/CisgIGlmICgoZmxhZ3NfICYgRkxBR19MSU5LRVIpID09IDApIHsKKyAgICBzaXplX3QgZyA9IDA7CisgICAgZ290W2crK10gPSByZWludGVycHJldF9jYXN0PEVsZlcoQWRkcikqPigweGRlYWRiZWVmKTsKKyAgICBpZiAocmVpbnRlcnByZXRfY2FzdDxpbnRwdHJfdD4oZ290W2ddKSA8IDApIHsKKyAgICAgIGdvdFtnKytdID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4oMHhkZWFkZmVlZCk7CisgICAgfQorICAgIC8vIFJlbG9jYXRlIHRoZSBsb2NhbCBHT1QgZW50cmllcy4KKyAgICBmb3IgKDsgZyA8IG1pcHNfbG9jYWxfZ290bm9fOyBnKyspIHsKKyAgICAgIGdvdFtnXSA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKSo+KHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90Pihnb3RbZ10pICsgbG9hZF9iaWFzKTsKKyAgICB9CisgIH0KKworICAvLyBOb3cgZm9yIHRoZSBnbG9iYWwgR09UIGVudHJpZXMuLi4KKyAgZ290ID0gcGx0X2dvdF8gKyBtaXBzX2xvY2FsX2dvdG5vXzsKKyAgZm9yIChFbGZXKFdvcmQpIHN5bSA9IG1pcHNfZ290c3ltXzsgc3ltIDwgbWlwc19zeW10YWJub187IHN5bSsrLCBnb3QrKykgeworICAgIC8vIFRoaXMgaXMgYW4gdW5kZWZpbmVkIHJlZmVyZW5jZS4uLiB0cnkgdG8gbG9jYXRlIGl0LgorICAgIGNvbnN0IEVsZlcoU3ltKSogbG9jYWxfc3ltID0gc3ltdGFiXyArIHN5bTsKKyAgICBjb25zdCBjaGFyKiBzeW1fbmFtZSA9IGdldF9zdHJpbmcobG9jYWxfc3ltLT5zdF9uYW1lKTsKKyAgICBzb2luZm8qIGxzaSA9IG51bGxwdHI7CisgICAgY29uc3QgRWxmVyhTeW0pKiBzID0gbnVsbHB0cjsKKworICAgIGNvbnN0IHZlcnNpb25faW5mbyogdmkgPSBudWxscHRyOworCisgICAgaWYgKCFsb29rdXBfdmVyc2lvbl9pbmZvKHZlcnNpb25fdHJhY2tlciwgc3ltLCBzeW1fbmFtZSwgJnZpKSkgeworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmICghc29pbmZvX2RvX2xvb2t1cCh0aGlzLCBzeW1fbmFtZSwgdmksICZsc2ksIGdsb2JhbF9ncm91cCwgbG9jYWxfZ3JvdXAsICZzKSkgeworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmIChzID09IG51bGxwdHIpIHsKKyAgICAgIC8vIFdlIG9ubHkgYWxsb3cgYW4gdW5kZWZpbmVkIHN5bWJvbCBpZiB0aGlzIGlzIGEgd2VhayByZWZlcmVuY2UuCisgICAgICBpZiAoRUxGX1NUX0JJTkQobG9jYWxfc3ltLT5zdF9pbmZvKSAhPSBTVEJfV0VBSykgeworICAgICAgICBETF9FUlIoImNhbm5vdCBsb2NhdGUgXCIlc1wiLi4uIiwgc3ltX25hbWUpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisgICAgICAqZ290ID0gMDsKKyAgICB9IGVsc2UgeworICAgICAgLy8gRklYTUU6IGlzIHRoaXMgc3VmZmljaWVudD8KKyAgICAgIC8vIEZvciByZWZlcmVuY2Ugc2VlIE5ldEJTRCBsaW5rIGxvYWRlcgorICAgICAgLy8gaHR0cDovL2N2c3dlYi5uZXRic2Qub3JnL2JzZHdlYi5jZ2kvc3JjL2xpYmV4ZWMvbGQuZWxmX3NvL2FyY2gvbWlwcy9taXBzX3JlbG9jLmM/cmV2PTEuNTMmY29udGVudC10eXBlPXRleHQveC1jdnN3ZWItbWFya3VwCisgICAgICAqZ290ID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4obHNpLT5yZXNvbHZlX3N5bWJvbF9hZGRyZXNzKHMpKTsKKyAgICB9CisgIH0KKyAgcmV0dXJuIHRydWU7Cit9CisKZGlmZiAtLWdpdCBhL2xpbmtlci9saW5rZXJfcGhkci5jcHAgYi9saW5rZXIvbGlua2VyX3BoZHIuY3BwCmluZGV4IDRiMWMwY2EuLjYzOGM5ZDYgMTAwNjQ0Ci0tLSBhL2xpbmtlci9saW5rZXJfcGhkci5jcHAKKysrIGIvbGlua2VyL2xpbmtlcl9waGRyLmNwcApAQCAtMjksNyArMjksNyBAQAogI2luY2x1ZGUgImxpbmtlcl9waGRyLmgiCiAKICNpbmNsdWRlIDxlcnJuby5oPgotI2luY2x1ZGUgPG1hY2hpbmUvZXhlYy5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgPHN5cy9tbWFuLmg+CiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KQEAgLTM4LDYgKzM4LDIwIEBACiAjaW5jbHVkZSAibGlua2VyLmgiCiAjaW5jbHVkZSAibGlua2VyX2RlYnVnLmgiCiAKK3N0YXRpYyBpbnQgR2V0VGFyZ2V0RWxmTWFjaGluZSgpIHsKKyNpZiBkZWZpbmVkKF9fYXJtX18pCisgIHJldHVybiBFTV9BUk07CisjZWxpZiBkZWZpbmVkKF9fYWFyY2g2NF9fKQorICByZXR1cm4gRU1fQUFSQ0g2NDsKKyNlbGlmIGRlZmluZWQoX19pMzg2X18pCisgIHJldHVybiBFTV8zODY7CisjZWxpZiBkZWZpbmVkKF9fbWlwc19fKQorICByZXR1cm4gRU1fTUlQUzsKKyNlbGlmIGRlZmluZWQoX194ODZfNjRfXykKKyAgcmV0dXJuIEVNX1g4Nl82NDsKKyNlbmRpZgorfQorCiAvKioKICAgVEVDSE5JQ0FMIE5PVEUgT04gRUxGIExPQURJTkcuCiAKQEAgLTIwMCw3ICsyMTQsNyBAQAogICAgIHJldHVybiBmYWxzZTsKICAgfQogCi0gIGlmIChoZWFkZXJfLmVfbWFjaGluZSAhPSBFTEZfVEFSR19NQUNIKSB7CisgIGlmIChoZWFkZXJfLmVfbWFjaGluZSAhPSBHZXRUYXJnZXRFbGZNYWNoaW5lKCkpIHsKICAgICBETF9FUlIoIlwiJXNcIiBoYXMgdW5leHBlY3RlZCBlX21hY2hpbmU6ICVkIiwgbmFtZV8sIGhlYWRlcl8uZV9tYWNoaW5lKTsKICAgICByZXR1cm4gZmFsc2U7CiAgIH0KQEAgLTIyNiw3ICsyNDAsOCBAQAogCiAgIHBoZHJfc2l6ZV8gPSBwYWdlX21heCAtIHBhZ2VfbWluOwogCi0gIHZvaWQqIG1tYXBfcmVzdWx0ID0gbW1hcDY0KG51bGxwdHIsIHBoZHJfc2l6ZV8sIFBST1RfUkVBRCwgTUFQX1BSSVZBVEUsIGZkXywgZmlsZV9vZmZzZXRfICsgcGFnZV9taW4pOworICB2b2lkKiBtbWFwX3Jlc3VsdCA9CisgICAgICBtbWFwNjQobnVsbHB0ciwgcGhkcl9zaXplXywgUFJPVF9SRUFELCBNQVBfUFJJVkFURSwgZmRfLCBmaWxlX29mZnNldF8gKyBwYWdlX21pbik7CiAgIGlmIChtbWFwX3Jlc3VsdCA9PSBNQVBfRkFJTEVEKSB7CiAgICAgRExfRVJSKCJcIiVzXCIgcGhkciBtbWFwIGZhaWxlZDogJXMiLCBuYW1lXywgc3RyZXJyb3IoZXJybm8pKTsKICAgICByZXR1cm4gZmFsc2U7CkBAIC0zMTgsNyArMzMzLDcgQEAKICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgICAgaW50IG1tYXBfZmxhZ3MgPSBNQVBfUFJJVkFURSB8IE1BUF9BTk9OWU1PVVM7Ci0gICAgc3RhcnQgPSBtbWFwKGFkZHIsIGxvYWRfc2l6ZV8sIFBST1RfTk9ORSwgbW1hcF9mbGFncywgLTEsIDApOworICAgIHN0YXJ0ID0gbW1hcChudWxscHRyLCBsb2FkX3NpemVfLCBQUk9UX05PTkUsIG1tYXBfZmxhZ3MsIC0xLCAwKTsKICAgICBpZiAoc3RhcnQgPT0gTUFQX0ZBSUxFRCkgewogICAgICAgRExfRVJSKCJjb3VsZG4ndCByZXNlcnZlICV6ZCBieXRlcyBvZiBhZGRyZXNzIHNwYWNlIGZvciBcIiVzXCIiLCBsb2FkX3NpemVfLCBuYW1lXyk7CiAgICAgICByZXR1cm4gZmFsc2U7CkBAIC00MTQsOSArNDI5LDE1IEBACiAgICAgRWxmVyhBZGRyKSBzZWdfcGFnZV9zdGFydCA9IFBBR0VfU1RBUlQocGhkci0+cF92YWRkcikgKyBsb2FkX2JpYXM7CiAgICAgRWxmVyhBZGRyKSBzZWdfcGFnZV9lbmQgICA9IFBBR0VfRU5EKHBoZHItPnBfdmFkZHIgKyBwaGRyLT5wX21lbXN6KSArIGxvYWRfYmlhczsKIAorICAgIGludCBwcm90ID0gUEZMQUdTX1RPX1BST1QocGhkci0+cF9mbGFncyk7CisgICAgaWYgKChleHRyYV9wcm90X2ZsYWdzICYgUFJPVF9XUklURSkgIT0gMCkgeworICAgICAgLy8gbWFrZSBzdXJlIHdlJ3JlIG5ldmVyIHNpbXVsdGFuZW91c2x5IHdyaXRhYmxlIC8gZXhlY3V0YWJsZQorICAgICAgcHJvdCAmPSB+UFJPVF9FWEVDOworICAgIH0KKwogICAgIGludCByZXQgPSBtcHJvdGVjdChyZWludGVycHJldF9jYXN0PHZvaWQqPihzZWdfcGFnZV9zdGFydCksCiAgICAgICAgICAgICAgICAgICAgICAgIHNlZ19wYWdlX2VuZCAtIHNlZ19wYWdlX3N0YXJ0LAotICAgICAgICAgICAgICAgICAgICAgICBQRkxBR1NfVE9fUFJPVChwaGRyLT5wX2ZsYWdzKSB8IGV4dHJhX3Byb3RfZmxhZ3MpOworICAgICAgICAgICAgICAgICAgICAgICBwcm90IHwgZXh0cmFfcHJvdF9mbGFncyk7CiAgICAgaWYgKHJldCA8IDApIHsKICAgICAgIHJldHVybiAtMTsKICAgICB9CkBAIC00MzUsNyArNDU2LDggQEAKICAqIFJldHVybjoKICAqICAgMCBvbiBlcnJvciwgLTEgb24gZmFpbHVyZSAoZXJyb3IgY29kZSBpbiBlcnJubykuCiAgKi8KLWludCBwaGRyX3RhYmxlX3Byb3RlY3Rfc2VnbWVudHMoY29uc3QgRWxmVyhQaGRyKSogcGhkcl90YWJsZSwgc2l6ZV90IHBoZHJfY291bnQsIEVsZlcoQWRkcikgbG9hZF9iaWFzKSB7CitpbnQgcGhkcl90YWJsZV9wcm90ZWN0X3NlZ21lbnRzKGNvbnN0IEVsZlcoUGhkcikqIHBoZHJfdGFibGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBwaGRyX2NvdW50LCBFbGZXKEFkZHIpIGxvYWRfYmlhcykgewogICByZXR1cm4gX3BoZHJfdGFibGVfc2V0X2xvYWRfcHJvdChwaGRyX3RhYmxlLCBwaGRyX2NvdW50LCBsb2FkX2JpYXMsIDApOwogfQogCkBAIC00NTUsNyArNDc3LDggQEAKICAqIFJldHVybjoKICAqICAgMCBvbiBlcnJvciwgLTEgb24gZmFpbHVyZSAoZXJyb3IgY29kZSBpbiBlcnJubykuCiAgKi8KLWludCBwaGRyX3RhYmxlX3VucHJvdGVjdF9zZWdtZW50cyhjb25zdCBFbGZXKFBoZHIpKiBwaGRyX3RhYmxlLCBzaXplX3QgcGhkcl9jb3VudCwgRWxmVyhBZGRyKSBsb2FkX2JpYXMpIHsKK2ludCBwaGRyX3RhYmxlX3VucHJvdGVjdF9zZWdtZW50cyhjb25zdCBFbGZXKFBoZHIpKiBwaGRyX3RhYmxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBwaGRyX2NvdW50LCBFbGZXKEFkZHIpIGxvYWRfYmlhcykgewogICByZXR1cm4gX3BoZHJfdGFibGVfc2V0X2xvYWRfcHJvdChwaGRyX3RhYmxlLCBwaGRyX2NvdW50LCBsb2FkX2JpYXMsIFBST1RfV1JJVEUpOwogfQogCkBAIC01MTcsNyArNTQwLDggQEAKICAqIFJldHVybjoKICAqICAgMCBvbiBlcnJvciwgLTEgb24gZmFpbHVyZSAoZXJyb3IgY29kZSBpbiBlcnJubykuCiAgKi8KLWludCBwaGRyX3RhYmxlX3Byb3RlY3RfZ251X3JlbHJvKGNvbnN0IEVsZlcoUGhkcikqIHBoZHJfdGFibGUsIHNpemVfdCBwaGRyX2NvdW50LCBFbGZXKEFkZHIpIGxvYWRfYmlhcykgeworaW50IHBoZHJfdGFibGVfcHJvdGVjdF9nbnVfcmVscm8oY29uc3QgRWxmVyhQaGRyKSogcGhkcl90YWJsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBwaGRyX2NvdW50LCBFbGZXKEFkZHIpIGxvYWRfYmlhcykgewogICByZXR1cm4gX3BoZHJfdGFibGVfc2V0X2dudV9yZWxyb19wcm90KHBoZHJfdGFibGUsIHBoZHJfY291bnQsIGxvYWRfYmlhcywgUFJPVF9SRUFEKTsKIH0KIApAQCAtNTMzLDcgKzU1Nyw5IEBACiAgKiBSZXR1cm46CiAgKiAgIDAgb24gZXJyb3IsIC0xIG9uIGZhaWx1cmUgKGVycm9yIGNvZGUgaW4gZXJybm8pLgogICovCi1pbnQgcGhkcl90YWJsZV9zZXJpYWxpemVfZ251X3JlbHJvKGNvbnN0IEVsZlcoUGhkcikqIHBoZHJfdGFibGUsIHNpemVfdCBwaGRyX2NvdW50LCBFbGZXKEFkZHIpIGxvYWRfYmlhcywKK2ludCBwaGRyX3RhYmxlX3NlcmlhbGl6ZV9nbnVfcmVscm8oY29uc3QgRWxmVyhQaGRyKSogcGhkcl90YWJsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IHBoZHJfY291bnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZlcoQWRkcikgbG9hZF9iaWFzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgZmQpIHsKICAgY29uc3QgRWxmVyhQaGRyKSogcGhkciA9IHBoZHJfdGFibGU7CiAgIGNvbnN0IEVsZlcoUGhkcikqIHBoZHJfbGltaXQgPSBwaGRyICsgcGhkcl9jb3VudDsKQEAgLTU3OCw3ICs2MDQsOSBAQAogICogUmV0dXJuOgogICogICAwIG9uIGVycm9yLCAtMSBvbiBmYWlsdXJlIChlcnJvciBjb2RlIGluIGVycm5vKS4KICAqLwotaW50IHBoZHJfdGFibGVfbWFwX2dudV9yZWxybyhjb25zdCBFbGZXKFBoZHIpKiBwaGRyX3RhYmxlLCBzaXplX3QgcGhkcl9jb3VudCwgRWxmVyhBZGRyKSBsb2FkX2JpYXMsCitpbnQgcGhkcl90YWJsZV9tYXBfZ251X3JlbHJvKGNvbnN0IEVsZlcoUGhkcikqIHBoZHJfdGFibGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBwaGRyX2NvdW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZXKEFkZHIpIGxvYWRfYmlhcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGZkKSB7CiAgIC8vIE1hcCB0aGUgZmlsZSBhdCBhIHRlbXBvcmFyeSBsb2NhdGlvbiBzbyB3ZSBjYW4gY29tcGFyZSBpdHMgY29udGVudHMuCiAgIHN0cnVjdCBzdGF0IGZpbGVfc3RhdDsKQEAgLTY3NSw3ICs3MDMsNyBAQAogICovCiBpbnQgcGhkcl90YWJsZV9nZXRfYXJtX2V4aWR4KGNvbnN0IEVsZlcoUGhkcikqIHBoZHJfdGFibGUsIHNpemVfdCBwaGRyX2NvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZXKEFkZHIpIGxvYWRfYmlhcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxmVyhBZGRyKSoqIGFybV9leGlkeCwgdW5zaWduZWQqIGFybV9leGlkeF9jb3VudCkgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZXKEFkZHIpKiogYXJtX2V4aWR4LCBzaXplX3QqIGFybV9leGlkeF9jb3VudCkgewogICBjb25zdCBFbGZXKFBoZHIpKiBwaGRyID0gcGhkcl90YWJsZTsKICAgY29uc3QgRWxmVyhQaGRyKSogcGhkcl9saW1pdCA9IHBoZHIgKyBwaGRyX2NvdW50OwogCkBAIC02ODUsNyArNzEzLDcgQEAKICAgICB9CiAKICAgICAqYXJtX2V4aWR4ID0gcmVpbnRlcnByZXRfY2FzdDxFbGZXKEFkZHIpKj4obG9hZF9iaWFzICsgcGhkci0+cF92YWRkcik7Ci0gICAgKmFybV9leGlkeF9jb3VudCA9ICh1bnNpZ25lZCkocGhkci0+cF9tZW1zeiAvIDgpOworICAgICphcm1fZXhpZHhfY291bnQgPSBwaGRyLT5wX21lbXN6IC8gODsKICAgICByZXR1cm4gMDsKICAgfQogICAqYXJtX2V4aWR4ID0gbnVsbHB0cjsKQEAgLTcxMSwyMCArNzM5LDIxIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZXKEFkZHIpIGxvYWRfYmlhcywgRWxmVyhEeW4pKiogZHluYW1pYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZlcoV29yZCkqIGR5bmFtaWNfZmxhZ3MpIHsKICAgKmR5bmFtaWMgPSBudWxscHRyOwotICBmb3IgKGNvbnN0IEVsZlcoUGhkcikqIHBoZHIgPSBwaGRyX3RhYmxlLCAqcGhkcl9saW1pdCA9IHBoZHIgKyBwaGRyX2NvdW50OyBwaGRyIDwgcGhkcl9saW1pdDsgcGhkcisrKSB7Ci0gICAgaWYgKHBoZHItPnBfdHlwZSA9PSBQVF9EWU5BTUlDKSB7Ci0gICAgICAqZHluYW1pYyA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhEeW4pKj4obG9hZF9iaWFzICsgcGhkci0+cF92YWRkcik7CisgIGZvciAoc2l6ZV90IGkgPSAwOyBpPHBoZHJfY291bnQ7ICsraSkgeworICAgIGNvbnN0IEVsZlcoUGhkcikmIHBoZHIgPSBwaGRyX3RhYmxlW2ldOworICAgIGlmIChwaGRyLnBfdHlwZSA9PSBQVF9EWU5BTUlDKSB7CisgICAgICAqZHluYW1pYyA9IHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhEeW4pKj4obG9hZF9iaWFzICsgcGhkci5wX3ZhZGRyKTsKICAgICAgIGlmIChkeW5hbWljX2ZsYWdzKSB7Ci0gICAgICAgICpkeW5hbWljX2ZsYWdzID0gcGhkci0+cF9mbGFnczsKKyAgICAgICAgKmR5bmFtaWNfZmxhZ3MgPSBwaGRyLnBfZmxhZ3M7CiAgICAgICB9CiAgICAgICByZXR1cm47CiAgICAgfQogICB9CiB9CiAKLS8vIFJldHVybnMgdGhlIGFkZHJlc3Mgb2YgdGhlIHByb2dyYW0gaGVhZGVyIHRhYmxlIGFzIGl0IGFwcGVhcnMgaW4gdGhlIGxvYWRlZAotLy8gc2VnbWVudHMgaW4gbWVtb3J5LiBUaGlzIGlzIGluIGNvbnRyYXN0IHdpdGggJ3BoZHJfdGFibGVfJyB3aGljaAotLy8gaXMgdGVtcG9yYXJ5IGFuZCB3aWxsIGJlIHJlbGVhc2VkIGJlZm9yZSB0aGUgbGlicmFyeSBpcyByZWxvY2F0ZWQuCisvLyBTZXRzIGxvYWRlZF9waGRyXyB0byB0aGUgYWRkcmVzcyBvZiB0aGUgcHJvZ3JhbSBoZWFkZXIgdGFibGUgYXMgaXQgYXBwZWFycworLy8gaW4gdGhlIGxvYWRlZCBzZWdtZW50cyBpbiBtZW1vcnkuIFRoaXMgaXMgaW4gY29udHJhc3Qgd2l0aCBwaGRyX3RhYmxlXywKKy8vIHdoaWNoIGlzIHRlbXBvcmFyeSBhbmQgd2lsbCBiZSByZWxlYXNlZCBiZWZvcmUgdGhlIGxpYnJhcnkgaXMgcmVsb2NhdGVkLgogYm9vbCBFbGZSZWFkZXI6OkZpbmRQaGRyKCkgewogICBjb25zdCBFbGZXKFBoZHIpKiBwaGRyX2xpbWl0ID0gcGhkcl90YWJsZV8gKyBwaGRyX251bV87CiAKQEAgLTc0NCw3ICs3NzMsNyBAQAogICAgICAgICBFbGZXKEFkZHIpICBlbGZfYWRkciA9IGxvYWRfYmlhc18gKyBwaGRyLT5wX3ZhZGRyOwogICAgICAgICBjb25zdCBFbGZXKEVoZHIpKiBlaGRyID0gcmVpbnRlcnByZXRfY2FzdDxjb25zdCBFbGZXKEVoZHIpKj4oZWxmX2FkZHIpOwogICAgICAgICBFbGZXKEFkZHIpICBvZmZzZXQgPSBlaGRyLT5lX3Bob2ZmOwotICAgICAgICByZXR1cm4gQ2hlY2tQaGRyKChFbGZXKEFkZHIpKWVoZHIgKyBvZmZzZXQpOworICAgICAgICByZXR1cm4gQ2hlY2tQaGRyKHJlaW50ZXJwcmV0X2Nhc3Q8RWxmVyhBZGRyKT4oZWhkcikgKyBvZmZzZXQpOwogICAgICAgfQogICAgICAgYnJlYWs7CiAgICAgfQpkaWZmIC0tZ2l0IGEvbGlua2VyL2xpbmtlcl9waGRyLmggYi9saW5rZXIvbGlua2VyX3BoZHIuaAppbmRleCA2NWQzMDJjLi41MGYyMTE3IDEwMDY0NAotLS0gYS9saW5rZXIvbGlua2VyX3BoZHIuaAorKysgYi9saW5rZXIvbGlua2VyX3BoZHIuaApAQCAtODQsMjEgKzg0LDI0IEBACiBzaXplX3QgcGhkcl90YWJsZV9nZXRfbG9hZF9zaXplKGNvbnN0IEVsZlcoUGhkcikqIHBoZHJfdGFibGUsIHNpemVfdCBwaGRyX2NvdW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZXKEFkZHIpKiBtaW5fdmFkZHIgPSBudWxscHRyLCBFbGZXKEFkZHIpKiBtYXhfdmFkZHIgPSBudWxscHRyKTsKIAotaW50IHBoZHJfdGFibGVfcHJvdGVjdF9zZWdtZW50cyhjb25zdCBFbGZXKFBoZHIpKiBwaGRyX3RhYmxlLCBzaXplX3QgcGhkcl9jb3VudCwgRWxmVyhBZGRyKSBsb2FkX2JpYXMpOworaW50IHBoZHJfdGFibGVfcHJvdGVjdF9zZWdtZW50cyhjb25zdCBFbGZXKFBoZHIpKiBwaGRyX3RhYmxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgcGhkcl9jb3VudCwgRWxmVyhBZGRyKSBsb2FkX2JpYXMpOwogCi1pbnQgcGhkcl90YWJsZV91bnByb3RlY3Rfc2VnbWVudHMoY29uc3QgRWxmVyhQaGRyKSogcGhkcl90YWJsZSwgc2l6ZV90IHBoZHJfY291bnQsIEVsZlcoQWRkcikgbG9hZF9iaWFzKTsKK2ludCBwaGRyX3RhYmxlX3VucHJvdGVjdF9zZWdtZW50cyhjb25zdCBFbGZXKFBoZHIpKiBwaGRyX3RhYmxlLCBzaXplX3QgcGhkcl9jb3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZXKEFkZHIpIGxvYWRfYmlhcyk7CiAKLWludCBwaGRyX3RhYmxlX3Byb3RlY3RfZ251X3JlbHJvKGNvbnN0IEVsZlcoUGhkcikqIHBoZHJfdGFibGUsIHNpemVfdCBwaGRyX2NvdW50LCBFbGZXKEFkZHIpIGxvYWRfYmlhcyk7CitpbnQgcGhkcl90YWJsZV9wcm90ZWN0X2dudV9yZWxybyhjb25zdCBFbGZXKFBoZHIpKiBwaGRyX3RhYmxlLCBzaXplX3QgcGhkcl9jb3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZlcoQWRkcikgbG9hZF9iaWFzKTsKIAotaW50IHBoZHJfdGFibGVfc2VyaWFsaXplX2dudV9yZWxybyhjb25zdCBFbGZXKFBoZHIpKiBwaGRyX3RhYmxlLCBzaXplX3QgcGhkcl9jb3VudCwgRWxmVyhBZGRyKSBsb2FkX2JpYXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBmZCk7CitpbnQgcGhkcl90YWJsZV9zZXJpYWxpemVfZ251X3JlbHJvKGNvbnN0IEVsZlcoUGhkcikqIHBoZHJfdGFibGUsIHNpemVfdCBwaGRyX2NvdW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZXKEFkZHIpIGxvYWRfYmlhcywgaW50IGZkKTsKIAotaW50IHBoZHJfdGFibGVfbWFwX2dudV9yZWxybyhjb25zdCBFbGZXKFBoZHIpKiBwaGRyX3RhYmxlLCBzaXplX3QgcGhkcl9jb3VudCwgRWxmVyhBZGRyKSBsb2FkX2JpYXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBmZCk7CitpbnQgcGhkcl90YWJsZV9tYXBfZ251X3JlbHJvKGNvbnN0IEVsZlcoUGhkcikqIHBoZHJfdGFibGUsIHNpemVfdCBwaGRyX2NvdW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZXKEFkZHIpIGxvYWRfYmlhcywgaW50IGZkKTsKIAogI2lmIGRlZmluZWQoX19hcm1fXykKIGludCBwaGRyX3RhYmxlX2dldF9hcm1fZXhpZHgoY29uc3QgRWxmVyhQaGRyKSogcGhkcl90YWJsZSwgc2l6ZV90IHBoZHJfY291bnQsIEVsZlcoQWRkcikgbG9hZF9iaWFzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZXKEFkZHIpKiogYXJtX2V4aWR4LCB1bnNpZ25lZCogYXJtX2V4aWRpeF9jb3VudCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZlcoQWRkcikqKiBhcm1fZXhpZHgsIHNpemVfdCogYXJtX2V4aWRpeF9jb3VudCk7CiAjZW5kaWYKIAogdm9pZCBwaGRyX3RhYmxlX2dldF9keW5hbWljX3NlY3Rpb24oY29uc3QgRWxmVyhQaGRyKSogcGhkcl90YWJsZSwgc2l6ZV90IHBoZHJfY291bnQsCmRpZmYgLS1naXQgYS9saW5rZXIvbGlua2VyX3JlbG9jX2l0ZXJhdG9ycy5oIGIvbGlua2VyL2xpbmtlcl9yZWxvY19pdGVyYXRvcnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMjhjMGUwCi0tLSAvZGV2L251bGwKKysrIGIvbGlua2VyL2xpbmtlcl9yZWxvY19pdGVyYXRvcnMuaApAQCAtMCwwICsxLDE2NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpZm5kZWYgX19MSU5LRVJfUkVMT0NfSVRFUkFUT1JTX0gKKyNkZWZpbmUgX19MSU5LRVJfUkVMT0NfSVRFUkFUT1JTX0gKKworI2luY2x1ZGUgImxpbmtlci5oIgorCisjaW5jbHVkZSA8c3RyaW5nLmg+CisKK2NvbnN0IHNpemVfdCBSRUxPQ0FUSU9OX0dST1VQRURfQllfSU5GT19GTEFHID0gMTsKK2NvbnN0IHNpemVfdCBSRUxPQ0FUSU9OX0dST1VQRURfQllfT0ZGU0VUX0RFTFRBX0ZMQUcgPSAyOworY29uc3Qgc2l6ZV90IFJFTE9DQVRJT05fR1JPVVBFRF9CWV9BRERFTkRfRkxBRyA9IDQ7Citjb25zdCBzaXplX3QgUkVMT0NBVElPTl9HUk9VUF9IQVNfQURERU5EX0ZMQUcgPSA4OworCitjbGFzcyBwbGFpbl9yZWxvY19pdGVyYXRvciB7CisjaWYgZGVmaW5lZChVU0VfUkVMQSkKKyAgdHlwZWRlZiBFbGZXKFJlbGEpIHJlbF90OworI2Vsc2UKKyAgdHlwZWRlZiBFbGZXKFJlbCkgcmVsX3Q7CisjZW5kaWYKKyBwdWJsaWM6CisgIHBsYWluX3JlbG9jX2l0ZXJhdG9yKHJlbF90KiByZWxfYXJyYXksIHNpemVfdCBjb3VudCkKKyAgICAgIDogYmVnaW5fKHJlbF9hcnJheSksIGVuZF8oYmVnaW5fICsgY291bnQpLCBjdXJyZW50XyhiZWdpbl8pIHt9CisKKyAgYm9vbCBoYXNfbmV4dCgpIHsKKyAgICByZXR1cm4gY3VycmVudF8gPCBlbmRfOworICB9CisKKyAgcmVsX3QqIG5leHQoKSB7CisgICAgcmV0dXJuIGN1cnJlbnRfKys7CisgIH0KKyBwcml2YXRlOgorICByZWxfdCogY29uc3QgYmVnaW5fOworICByZWxfdCogY29uc3QgZW5kXzsKKyAgcmVsX3QqIGN1cnJlbnRfOworCisgIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihwbGFpbl9yZWxvY19pdGVyYXRvcik7Cit9OworCit0ZW1wbGF0ZSA8dHlwZW5hbWUgZGVjb2Rlcl90PgorY2xhc3MgcGFja2VkX3JlbG9jX2l0ZXJhdG9yIHsKKyNpZiBkZWZpbmVkKFVTRV9SRUxBKQorICB0eXBlZGVmIEVsZlcoUmVsYSkgcmVsX3Q7CisjZWxzZQorICB0eXBlZGVmIEVsZlcoUmVsKSByZWxfdDsKKyNlbmRpZgorIHB1YmxpYzoKKyAgZXhwbGljaXQgcGFja2VkX3JlbG9jX2l0ZXJhdG9yKGRlY29kZXJfdCYmIGRlY29kZXIpCisgICAgICA6IGRlY29kZXJfKGRlY29kZXIpIHsKKyAgICAvLyBpbml0aWFsaXplIGZpZWxkcworICAgIG1lbXNldCgmcmVsb2NfLCAwLCBzaXplb2YocmVsb2NfKSk7CisgICAgcmVsb2NhdGlvbl9jb3VudF8gPSBkZWNvZGVyXy5wb3BfZnJvbnQoKTsKKyAgICByZWxvY18ucl9vZmZzZXQgPSBkZWNvZGVyXy5wb3BfZnJvbnQoKTsKKyAgICByZWxvY2F0aW9uX2luZGV4XyA9IDA7CisgICAgcmVsb2NhdGlvbl9ncm91cF9pbmRleF8gPSAwOworICAgIGdyb3VwX3NpemVfID0gMDsKKyAgfQorCisgIGJvb2wgaGFzX25leHQoKSBjb25zdCB7CisgICAgcmV0dXJuIHJlbG9jYXRpb25faW5kZXhfIDwgcmVsb2NhdGlvbl9jb3VudF87CisgIH0KKworICByZWxfdCogbmV4dCgpIHsKKyAgICBpZiAocmVsb2NhdGlvbl9ncm91cF9pbmRleF8gPT0gZ3JvdXBfc2l6ZV8pIHsKKyAgICAgIGlmICghcmVhZF9ncm91cF9maWVsZHMoKSkgeworICAgICAgICAvLyBJdGVyYXRvciBpcyBpbmNvbnNpc3RlbnQgc3RhdGU7IGl0IHNob3VsZCBub3QgYmUgY2FsbGVkIGFnYWluCisgICAgICAgIC8vIGJ1dCBpbiBjYXNlIGl0IGlzIGxldCdzIG1ha2Ugc3VyZSBoYXNfbmV4dCgpIHJldHVybnMgZmFsc2UuCisgICAgICAgIHJlbG9jYXRpb25faW5kZXhfID0gcmVsb2NhdGlvbl9jb3VudF8gPSAwOworICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICAgIH0KKyAgICB9CisKKyAgICBpZiAoaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X29mZnNldF9kZWx0YSgpKSB7CisgICAgICByZWxvY18ucl9vZmZzZXQgKz0gZ3JvdXBfcl9vZmZzZXRfZGVsdGFfOworICAgIH0gZWxzZSB7CisgICAgICByZWxvY18ucl9vZmZzZXQgKz0gZGVjb2Rlcl8ucG9wX2Zyb250KCk7CisgICAgfQorCisgICAgaWYgKCFpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfaW5mbygpKSB7CisgICAgICByZWxvY18ucl9pbmZvID0gZGVjb2Rlcl8ucG9wX2Zyb250KCk7CisgICAgfQorCisjaWYgZGVmaW5lZChVU0VfUkVMQSkKKyAgICBpZiAoaXNfcmVsb2NhdGlvbl9ncm91cF9oYXNfYWRkZW5kKCkgJiYKKyAgICAgICAgIWlzX3JlbG9jYXRpb25fZ3JvdXBlZF9ieV9hZGRlbmQoKSkgeworICAgICAgcmVsb2NfLnJfYWRkZW5kICs9IGRlY29kZXJfLnBvcF9mcm9udCgpOworICAgIH0KKyNlbmRpZgorCisgICAgcmVsb2NhdGlvbl9pbmRleF8rKzsKKyAgICByZWxvY2F0aW9uX2dyb3VwX2luZGV4XysrOworCisgICAgcmV0dXJuICZyZWxvY187CisgIH0KKyBwcml2YXRlOgorICBib29sIHJlYWRfZ3JvdXBfZmllbGRzKCkgeworICAgIGdyb3VwX3NpemVfID0gZGVjb2Rlcl8ucG9wX2Zyb250KCk7CisgICAgZ3JvdXBfZmxhZ3NfID0gZGVjb2Rlcl8ucG9wX2Zyb250KCk7CisKKyAgICBpZiAoaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X29mZnNldF9kZWx0YSgpKSB7CisgICAgICBncm91cF9yX29mZnNldF9kZWx0YV8gPSBkZWNvZGVyXy5wb3BfZnJvbnQoKTsKKyAgICB9CisKKyAgICBpZiAoaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X2luZm8oKSkgeworICAgICAgcmVsb2NfLnJfaW5mbyA9IGRlY29kZXJfLnBvcF9mcm9udCgpOworICAgIH0KKworICAgIGlmIChpc19yZWxvY2F0aW9uX2dyb3VwX2hhc19hZGRlbmQoKSAmJgorICAgICAgICBpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfYWRkZW5kKCkpIHsKKyNpZiAhZGVmaW5lZChVU0VfUkVMQSkKKyAgICAgIC8vIFRoaXMgcGxhdGZvcm0gZG9lcyBub3Qgc3VwcG9ydCByZWxhLCBhbmQgeWV0IHdlIGhhdmUgaXQgZW5jb2RlZCBpbiBhbmRyb2lkX3JlbCBzZWN0aW9uLgorICAgICAgRExfRVJSKCJ1bmV4cGVjdGVkIHJfYWRkZW5kIGluIGFuZHJvaWQucmVsIHNlY3Rpb24iKTsKKyAgICAgIHJldHVybiBmYWxzZTsKKyNlbHNlCisgICAgICByZWxvY18ucl9hZGRlbmQgKz0gZGVjb2Rlcl8ucG9wX2Zyb250KCk7CisgICAgfSBlbHNlIGlmICghaXNfcmVsb2NhdGlvbl9ncm91cF9oYXNfYWRkZW5kKCkpIHsKKyAgICAgIHJlbG9jXy5yX2FkZGVuZCA9IDA7CisjZW5kaWYKKyAgICB9CisKKyAgICByZWxvY2F0aW9uX2dyb3VwX2luZGV4XyA9IDA7CisgICAgcmV0dXJuIHRydWU7CisgIH0KKworICBib29sIGlzX3JlbG9jYXRpb25fZ3JvdXBlZF9ieV9pbmZvKCkgeworICAgIHJldHVybiAoZ3JvdXBfZmxhZ3NfICYgUkVMT0NBVElPTl9HUk9VUEVEX0JZX0lORk9fRkxBRykgIT0gMDsKKyAgfQorCisgIGJvb2wgaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X29mZnNldF9kZWx0YSgpIHsKKyAgICByZXR1cm4gKGdyb3VwX2ZsYWdzXyAmIFJFTE9DQVRJT05fR1JPVVBFRF9CWV9PRkZTRVRfREVMVEFfRkxBRykgIT0gMDsKKyAgfQorCisgIGJvb2wgaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X2FkZGVuZCgpIHsKKyAgICByZXR1cm4gKGdyb3VwX2ZsYWdzXyAmIFJFTE9DQVRJT05fR1JPVVBFRF9CWV9BRERFTkRfRkxBRykgIT0gMDsKKyAgfQorCisgIGJvb2wgaXNfcmVsb2NhdGlvbl9ncm91cF9oYXNfYWRkZW5kKCkgeworICAgIHJldHVybiAoZ3JvdXBfZmxhZ3NfICYgUkVMT0NBVElPTl9HUk9VUF9IQVNfQURERU5EX0ZMQUcpICE9IDA7CisgIH0KKworICBkZWNvZGVyX3QgZGVjb2Rlcl87CisgIHNpemVfdCByZWxvY2F0aW9uX2NvdW50XzsKKyAgc2l6ZV90IGdyb3VwX3NpemVfOworICBzaXplX3QgZ3JvdXBfZmxhZ3NfOworICBzaXplX3QgZ3JvdXBfcl9vZmZzZXRfZGVsdGFfOworICBzaXplX3QgcmVsb2NhdGlvbl9pbmRleF87CisgIHNpemVfdCByZWxvY2F0aW9uX2dyb3VwX2luZGV4XzsKKyAgcmVsX3QgcmVsb2NfOworfTsKKworI2VuZGlmICAvLyBfX0xJTktFUl9SRUxPQ19JVEVSQVRPUlNfSApkaWZmIC0tZ2l0IGEvbGlua2VyL2xpbmtlcl9yZWxvY3MuaCBiL2xpbmtlci9saW5rZXJfcmVsb2NzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTJjMTQ5NwotLS0gL2Rldi9udWxsCisrKyBiL2xpbmtlci9saW5rZXJfcmVsb2NzLmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpZm5kZWYgX19MSU5LRVJfUkVMT0NTX0gKKyNkZWZpbmUgX19MSU5LRVJfUkVMT0NTX0gKKworI2luY2x1ZGUgPGVsZi5oPgorCisjZGVmaW5lIFJfR0VORVJJQ19OT05FIDAgLy8gUl8qX05PTkUgaXMgYWx3YXlzIDAKKworI2lmIGRlZmluZWQgKF9fYWFyY2g2NF9fKQorCisjZGVmaW5lIFJfR0VORVJJQ19KVU1QX1NMT1QgUl9BQVJDSDY0X0pVTVBfU0xPVAorI2RlZmluZSBSX0dFTkVSSUNfR0xPQl9EQVQgIFJfQUFSQ0g2NF9HTE9CX0RBVAorI2RlZmluZSBSX0dFTkVSSUNfUkVMQVRJVkUgIFJfQUFSQ0g2NF9SRUxBVElWRQorI2RlZmluZSBSX0dFTkVSSUNfSVJFTEFUSVZFIFJfQUFSQ0g2NF9JUkVMQVRJVkUKKworI2VsaWYgZGVmaW5lZCAoX19hcm1fXykKKworI2RlZmluZSBSX0dFTkVSSUNfSlVNUF9TTE9UIFJfQVJNX0pVTVBfU0xPVAorI2RlZmluZSBSX0dFTkVSSUNfR0xPQl9EQVQgIFJfQVJNX0dMT0JfREFUCisjZGVmaW5lIFJfR0VORVJJQ19SRUxBVElWRSAgUl9BUk1fUkVMQVRJVkUKKyNkZWZpbmUgUl9HRU5FUklDX0lSRUxBVElWRSBSX0FSTV9JUkVMQVRJVkUKKworI2VsaWYgZGVmaW5lZCAoX19pMzg2X18pCisKKyNkZWZpbmUgUl9HRU5FUklDX0pVTVBfU0xPVCBSXzM4Nl9KTVBfU0xPVAorI2RlZmluZSBSX0dFTkVSSUNfR0xPQl9EQVQgIFJfMzg2X0dMT0JfREFUCisjZGVmaW5lIFJfR0VORVJJQ19SRUxBVElWRSAgUl8zODZfUkVMQVRJVkUKKyNkZWZpbmUgUl9HRU5FUklDX0lSRUxBVElWRSBSXzM4Nl9JUkVMQVRJVkUKKworI2VsaWYgZGVmaW5lZCAoX194ODZfNjRfXykKKworI2RlZmluZSBSX0dFTkVSSUNfSlVNUF9TTE9UIFJfWDg2XzY0X0pVTVBfU0xPVAorI2RlZmluZSBSX0dFTkVSSUNfR0xPQl9EQVQgIFJfWDg2XzY0X0dMT0JfREFUCisjZGVmaW5lIFJfR0VORVJJQ19SRUxBVElWRSAgUl9YODZfNjRfUkVMQVRJVkUKKyNkZWZpbmUgUl9HRU5FUklDX0lSRUxBVElWRSBSX1g4Nl82NF9JUkVMQVRJVkUKKworI2VuZGlmCisKKyNlbmRpZiAvLyBfX0xJTktFUl9SRUxPQ1NfSApkaWZmIC0tZ2l0IGEvbGlua2VyL2xpbmtlcl9zbGViMTI4LmggYi9saW5rZXIvbGlua2VyX3NsZWIxMjguaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMzQ5MTZmCi0tLSAvZGV2L251bGwKKysrIGIvbGlua2VyL2xpbmtlcl9zbGViMTI4LmgKQEAgLTAsMCArMSw1OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpZm5kZWYgX0xJTktFUl9TTEVCMTI4X0gKKyNkZWZpbmUgX0xJTktFUl9TTEVCMTI4X0gKKworI2luY2x1ZGUgPHN0ZGludC5oPgorCisvLyBIZWxwZXIgY2xhc3NlcyBmb3IgZGVjb2RpbmcgTEVCMTI4LCB1c2VkIGluIHBhY2tlZCByZWxvY2F0aW9uIGRhdGEuCisvLyBodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0xFQjEyOAorCitjbGFzcyBzbGViMTI4X2RlY29kZXIgeworIHB1YmxpYzoKKyAgc2xlYjEyOF9kZWNvZGVyKGNvbnN0IHVpbnQ4X3QqIGJ1ZmZlciwgc2l6ZV90IGNvdW50KQorICAgICAgOiBjdXJyZW50XyhidWZmZXIpLCBlbmRfKGJ1ZmZlcitjb3VudCkgeyB9CisKKyAgc2l6ZV90IHBvcF9mcm9udCgpIHsKKyAgICBzaXplX3QgdmFsdWUgPSAwOworICAgIHN0YXRpYyBjb25zdCBzaXplX3Qgc2l6ZSA9IENIQVJfQklUICogc2l6ZW9mKHZhbHVlKTsKKworICAgIHNpemVfdCBzaGlmdCA9IDA7CisgICAgdWludDhfdCBieXRlOworCisgICAgZG8geworICAgICAgaWYgKGN1cnJlbnRfID49IGVuZF8pIHsKKyAgICAgICAgX19saWJjX2ZhdGFsKCJzbGViMTI4X2RlY29kZXIgcmFuIG91dCBvZiBib3VuZHMiKTsKKyAgICAgIH0KKyAgICAgIGJ5dGUgPSAqY3VycmVudF8rKzsKKyAgICAgIHZhbHVlIHw9IChzdGF0aWNfY2FzdDxzaXplX3Q+KGJ5dGUgJiAxMjcpIDw8IHNoaWZ0KTsKKyAgICAgIHNoaWZ0ICs9IDc7CisgICAgfSB3aGlsZSAoYnl0ZSAmIDEyOCk7CisKKyAgICBpZiAoc2hpZnQgPCBzaXplICYmIChieXRlICYgNjQpKSB7CisgICAgICB2YWx1ZSB8PSAtKHN0YXRpY19jYXN0PHNpemVfdD4oMSkgPDwgc2hpZnQpOworICAgIH0KKworICAgIHJldHVybiB2YWx1ZTsKKyAgfQorCisgcHJpdmF0ZToKKyAgY29uc3QgdWludDhfdCogY3VycmVudF87CisgIGNvbnN0IHVpbnQ4X3QqIGNvbnN0IGVuZF87Cit9OworCisjZW5kaWYgLy8gX19MSU5LRVJfU0xFQjEyOF9ICmRpZmYgLS1naXQgYS9saW5rZXIvdGVzdHMvQW5kcm9pZC5tayBiL2xpbmtlci90ZXN0cy9BbmRyb2lkLm1rCmluZGV4IGZlNjRlNzcuLjM1OTkyYzUgMTAwNjQ0Ci0tLSBhL2xpbmtlci90ZXN0cy9BbmRyb2lkLm1rCisrKyBiL2xpbmtlci90ZXN0cy9BbmRyb2lkLm1rCkBAIC0xNCw4ICsxNCw2IEBACiAjIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgogIwogCi1pZm5lcSAoJChCVUlMRF9USU5ZX0FORFJPSUQpLHRydWUpCi0KIExPQ0FMX1BBVEg6PSAkKGNhbGwgbXktZGlyKQogCiBpbmNsdWRlICQoQ0xFQVJfVkFSUykKQEAgLTMwLDkgKzI4LDEyIEBACiAKIExPQ0FMX1NSQ19GSUxFUyA6PSBcCiAgIGxpbmtlZF9saXN0X3Rlc3QuY3BwIFwKLSAgbGlua2VyX2FsbG9jYXRvcl90ZXN0LmNwcCBcCisgIGxpbmtlcl9ibG9ja19hbGxvY2F0b3JfdGVzdC5jcHAgXAorICAuLi9saW5rZXJfYmxvY2tfYWxsb2NhdG9yLmNwcCBcCisgIGxpbmtlcl9tZW1vcnlfYWxsb2NhdG9yX3Rlc3QuY3BwIFwKICAgLi4vbGlua2VyX2FsbG9jYXRvci5jcHAKIAotaW5jbHVkZSAkKEJVSUxEX05BVElWRV9URVNUKQorIyBmb3IgX19saWJjX2ZhdGFsCitMT0NBTF9TUkNfRklMRVMgKz0gLi4vLi4vbGliYy9iaW9uaWMvbGliY19sb2dnaW5nLmNwcAogCi1lbmRpZiAjICFCVUlMRF9USU5ZX0FORFJPSUQKK2luY2x1ZGUgJChCVUlMRF9OQVRJVkVfVEVTVCkKZGlmZiAtLWdpdCBhL2xpbmtlci90ZXN0cy9saW5rZXJfYWxsb2NhdG9yX3Rlc3QuY3BwIGIvbGlua2VyL3Rlc3RzL2xpbmtlcl9hbGxvY2F0b3JfdGVzdC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDkyOTJhMDUuLjAwMDAwMDAKLS0tIGEvbGlua2VyL3Rlc3RzL2xpbmtlcl9hbGxvY2F0b3JfdGVzdC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwxMzAgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKgotICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7Ci0gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCi0gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKLSAqCi0gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAotICoKLSAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKLSAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCi0gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KLSAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKLSAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICovCi0KLSNpbmNsdWRlIDxzdGRsaWIuaD4KLSNpbmNsdWRlIDxzdHJpbmcuaD4KLSNpbmNsdWRlIDxzeXMvbW1hbi5oPgotCi0jaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KLQotI2luY2x1ZGUgIi4uL2xpbmtlcl9hbGxvY2F0b3IuaCIKLQotI2luY2x1ZGUgPHVuaXN0ZC5oPgotCi1uYW1lc3BhY2UgewotCi1zdHJ1Y3QgdGVzdF9zdHJ1Y3Rfbm9taW5hbCB7Ci0gIHZvaWQqIHBvaW50ZXI7Ci0gIHNzaXplX3QgdmFsdWU7Ci19OwotCi0vKgotICogdGhpcyBvbmUgaGFzIHNpemUgYmVsb3cgYWxsb2NhdG9yIGNhcCB3aGljaCBpcyAyKnNpemVvZih2b2lkKikKLSAqLwotc3RydWN0IHRlc3Rfc3RydWN0X3NtYWxsIHsKLSAgY2hhciBkdW1teV9zdHJbNV07Ci19OwotCi0vKgotICogMTAwOSBieXRlIHN0cnVjdCAoMTAwOSBpcyBwcmltZSkKLSAqLwotc3RydWN0IHRlc3Rfc3RydWN0X2xhcmdlciB7Ci0gIGNoYXIgZHVtbXlfc3RyWzEwMDldOwotfTsKLQotc3RhdGljIHNpemVfdCBrUGFnZVNpemUgPSBzeXNjb25mKF9TQ19QQUdFX1NJWkUpOwotfTsKLQotVEVTVChsaW5rZXJfYWxsb2NhdG9yLCB0ZXN0X25vbWluYWwpIHsKLSAgTGlua2VyQWxsb2NhdG9yPHRlc3Rfc3RydWN0X25vbWluYWw+IGFsbG9jYXRvcjsKLQotICB0ZXN0X3N0cnVjdF9ub21pbmFsKiBwdHIxID0gYWxsb2NhdG9yLmFsbG9jKCk7Ci0gIEFTU0VSVF9UUlVFKHB0cjEgIT0gbnVsbHB0cik7Ci0gIHRlc3Rfc3RydWN0X25vbWluYWwqIHB0cjIgPSBhbGxvY2F0b3IuYWxsb2MoKTsKLSAgQVNTRVJUX1RSVUUocHRyMiAhPSBudWxscHRyKTsKLSAgLy8gdGhleSBzaG91bGQgYmUgbmV4dCB0byBlYWNoIG90aGVyLgotICBBU1NFUlRfRVEocHRyMSsxLCBwdHIyKTsKLQotICBwdHIxLT52YWx1ZSA9IDQyOwotCi0gIGFsbG9jYXRvci5mcmVlKHB0cjEpOwotICBhbGxvY2F0b3IuZnJlZShwdHIyKTsKLX0KLQotVEVTVChsaW5rZXJfYWxsb2NhdG9yLCB0ZXN0X3NtYWxsKSB7Ci0gIExpbmtlckFsbG9jYXRvcjx0ZXN0X3N0cnVjdF9zbWFsbD4gYWxsb2NhdG9yOwotCi0gIGNoYXIqIHB0cjEgPSByZWludGVycHJldF9jYXN0PGNoYXIqPihhbGxvY2F0b3IuYWxsb2MoKSk7Ci0gIGNoYXIqIHB0cjIgPSByZWludGVycHJldF9jYXN0PGNoYXIqPihhbGxvY2F0b3IuYWxsb2MoKSk7Ci0KLSAgQVNTRVJUX1RSVUUocHRyMSAhPSBudWxscHRyKTsKLSAgQVNTRVJUX1RSVUUocHRyMiAhPSBudWxscHRyKTsKLSAgQVNTRVJUX0VRKHB0cjErMipzaXplb2Yodm9pZCopLCBwdHIyKTsKLX0KLQotVEVTVChsaW5rZXJfYWxsb2NhdG9yLCB0ZXN0X2xhcmdlcikgewotICBMaW5rZXJBbGxvY2F0b3I8dGVzdF9zdHJ1Y3RfbGFyZ2VyPiBhbGxvY2F0b3I7Ci0KLSAgdGVzdF9zdHJ1Y3RfbGFyZ2VyKiBwdHIxID0gYWxsb2NhdG9yLmFsbG9jKCk7Ci0gIHRlc3Rfc3RydWN0X2xhcmdlciogcHRyMiA9IGFsbG9jYXRvci5hbGxvYygpOwotCi0gIEFTU0VSVF9UUlVFKHB0cjEgIT0gbnVsbHB0cik7Ci0gIEFTU0VSVF9UUlVFKHB0cjIgIT0gbnVsbHB0cik7Ci0KLSAgQVNTRVJUX0VRKHB0cjErMSwgcHRyMik7Ci0KLSAgLy8gbGV0cyBhbGxvY2F0ZSB1bnRpbCB3ZSByZWFjaCBuZXh0IHBhZ2UuCi0gIHNpemVfdCBuID0ga1BhZ2VTaXplL3NpemVvZih0ZXN0X3N0cnVjdF9sYXJnZXIpICsgMSAtIDI7Ci0KLSAgZm9yIChzaXplX3QgaT0wOyBpPG47ICsraSkgewotICAgIEFTU0VSVF9UUlVFKGFsbG9jYXRvci5hbGxvYygpICE9IG51bGxwdHIpOwotICB9Ci0KLSAgdGVzdF9zdHJ1Y3RfbGFyZ2VyKiBwdHJfdG9fZnJlZSA9IGFsbG9jYXRvci5hbGxvYygpOwotICBBU1NFUlRfVFJVRShwdHJfdG9fZnJlZSAhPSBudWxscHRyKTsKLSAgYWxsb2NhdG9yLmZyZWUocHRyMSk7Ci19Ci0KLXN0YXRpYyB2b2lkIHByb3RlY3RfYWxsKCkgewotICBMaW5rZXJBbGxvY2F0b3I8dGVzdF9zdHJ1Y3RfbGFyZ2VyPiBhbGxvY2F0b3I7Ci0KLSAgLy8gbnVtYmVyIG9mIGFsbG9jcyB0byByZWFjaCB0aGUgZW5kIG9mIGZpcnN0IHBhZ2UKLSAgc2l6ZV90IG4gPSBrUGFnZVNpemUvc2l6ZW9mKHRlc3Rfc3RydWN0X2xhcmdlcikgLSAxOwotICB0ZXN0X3N0cnVjdF9sYXJnZXIqIHBhZ2UxX3B0ciA9IGFsbG9jYXRvci5hbGxvYygpOwotCi0gIGZvciAoc2l6ZV90IGk9MDsgaTxuOyArK2kpIHsKLSAgICBhbGxvY2F0b3IuYWxsb2MoKTsKLSAgfQotCi0gIHRlc3Rfc3RydWN0X2xhcmdlciogcGFnZTJfcHRyID0gYWxsb2NhdG9yLmFsbG9jKCk7Ci0gIGFsbG9jYXRvci5wcm90ZWN0X2FsbChQUk9UX1JFQUQpOwotICBhbGxvY2F0b3IucHJvdGVjdF9hbGwoUFJPVF9SRUFEIHwgUFJPVF9XUklURSk7Ci0gIC8vIGNoZWNrIGFjY2VzcwotICBwYWdlMl9wdHItPmR1bW15X3N0clsyM10gPSAyNzsKLSAgcGFnZTFfcHRyLT5kdW1teV9zdHJbMTNdID0gMTE7Ci0KLSAgYWxsb2NhdG9yLnByb3RlY3RfYWxsKFBST1RfUkVBRCk7Ci0gIGZwcmludGYoc3RkZXJyLCAidHJ5aW5nIHRvIGFjY2VzcyBwcm90ZWN0ZWQgcGFnZSIpOwotCi0gIC8vIHRoaXMgc2hvdWxkIHJlc3VsdCBpbiBzZWdtZW50YXRpb24gZmF1bHQKLSAgcGFnZTFfcHRyLT5kdW1teV9zdHJbMTFdID0gNzsKLX0KLQotVEVTVChsaW5rZXJfYWxsb2NhdG9yLCB0ZXN0X3Byb3RlY3QpIHsKLSAgdGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKLSAgQVNTRVJUX0VYSVQocHJvdGVjdF9hbGwoKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHU0VHViksICJ0cnlpbmcgdG8gYWNjZXNzIHByb3RlY3RlZCBwYWdlIik7Ci19Ci0KZGlmZiAtLWdpdCBhL2xpbmtlci90ZXN0cy9saW5rZXJfYmxvY2tfYWxsb2NhdG9yX3Rlc3QuY3BwIGIvbGlua2VyL3Rlc3RzL2xpbmtlcl9ibG9ja19hbGxvY2F0b3JfdGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2VmMGYzNgotLS0gL2Rldi9udWxsCisrKyBiL2xpbmtlci90ZXN0cy9saW5rZXJfYmxvY2tfYWxsb2NhdG9yX3Rlc3QuY3BwCkBAIC0wLDAgKzEsMTMwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN5cy9tbWFuLmg+CisKKyNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgorCisjaW5jbHVkZSAiLi4vbGlua2VyX2Jsb2NrX2FsbG9jYXRvci5oIgorCisjaW5jbHVkZSA8dW5pc3RkLmg+CisKK25hbWVzcGFjZSB7CisKK3N0cnVjdCB0ZXN0X3N0cnVjdF9ub21pbmFsIHsKKyAgdm9pZCogcG9pbnRlcjsKKyAgc3NpemVfdCB2YWx1ZTsKK307CisKKy8qCisgKiB0aGlzIG9uZSBoYXMgc2l6ZSBiZWxvdyBhbGxvY2F0b3IgY2FwIHdoaWNoIGlzIDIqc2l6ZW9mKHZvaWQqKQorICovCitzdHJ1Y3QgdGVzdF9zdHJ1Y3Rfc21hbGwgeworICBjaGFyIGR1bW15X3N0cls1XTsKK307CisKKy8qCisgKiAxMDA5IGJ5dGUgc3RydWN0ICgxMDA5IGlzIHByaW1lKQorICovCitzdHJ1Y3QgdGVzdF9zdHJ1Y3RfbGFyZ2VyIHsKKyAgY2hhciBkdW1teV9zdHJbMTAwOV07Cit9OworCitzdGF0aWMgc2l6ZV90IGtQYWdlU2l6ZSA9IHN5c2NvbmYoX1NDX1BBR0VfU0laRSk7Cit9OworCitURVNUKGxpbmtlcl9hbGxvY2F0b3IsIHRlc3Rfbm9taW5hbCkgeworICBMaW5rZXJUeXBlQWxsb2NhdG9yPHRlc3Rfc3RydWN0X25vbWluYWw+IGFsbG9jYXRvcjsKKworICB0ZXN0X3N0cnVjdF9ub21pbmFsKiBwdHIxID0gYWxsb2NhdG9yLmFsbG9jKCk7CisgIEFTU0VSVF9UUlVFKHB0cjEgIT0gbnVsbHB0cik7CisgIHRlc3Rfc3RydWN0X25vbWluYWwqIHB0cjIgPSBhbGxvY2F0b3IuYWxsb2MoKTsKKyAgQVNTRVJUX1RSVUUocHRyMiAhPSBudWxscHRyKTsKKyAgLy8gdGhleSBzaG91bGQgYmUgbmV4dCB0byBlYWNoIG90aGVyLgorICBBU1NFUlRfRVEocHRyMSsxLCBwdHIyKTsKKworICBwdHIxLT52YWx1ZSA9IDQyOworCisgIGFsbG9jYXRvci5mcmVlKHB0cjEpOworICBhbGxvY2F0b3IuZnJlZShwdHIyKTsKK30KKworVEVTVChsaW5rZXJfYWxsb2NhdG9yLCB0ZXN0X3NtYWxsKSB7CisgIExpbmtlclR5cGVBbGxvY2F0b3I8dGVzdF9zdHJ1Y3Rfc21hbGw+IGFsbG9jYXRvcjsKKworICBjaGFyKiBwdHIxID0gcmVpbnRlcnByZXRfY2FzdDxjaGFyKj4oYWxsb2NhdG9yLmFsbG9jKCkpOworICBjaGFyKiBwdHIyID0gcmVpbnRlcnByZXRfY2FzdDxjaGFyKj4oYWxsb2NhdG9yLmFsbG9jKCkpOworCisgIEFTU0VSVF9UUlVFKHB0cjEgIT0gbnVsbHB0cik7CisgIEFTU0VSVF9UUlVFKHB0cjIgIT0gbnVsbHB0cik7CisgIEFTU0VSVF9FUShwdHIxKzIqc2l6ZW9mKHZvaWQqKSwgcHRyMik7Cit9CisKK1RFU1QobGlua2VyX2FsbG9jYXRvciwgdGVzdF9sYXJnZXIpIHsKKyAgTGlua2VyVHlwZUFsbG9jYXRvcjx0ZXN0X3N0cnVjdF9sYXJnZXI+IGFsbG9jYXRvcjsKKworICB0ZXN0X3N0cnVjdF9sYXJnZXIqIHB0cjEgPSBhbGxvY2F0b3IuYWxsb2MoKTsKKyAgdGVzdF9zdHJ1Y3RfbGFyZ2VyKiBwdHIyID0gYWxsb2NhdG9yLmFsbG9jKCk7CisKKyAgQVNTRVJUX1RSVUUocHRyMSAhPSBudWxscHRyKTsKKyAgQVNTRVJUX1RSVUUocHRyMiAhPSBudWxscHRyKTsKKworICBBU1NFUlRfRVEocHRyMSsxLCBwdHIyKTsKKworICAvLyBsZXRzIGFsbG9jYXRlIHVudGlsIHdlIHJlYWNoIG5leHQgcGFnZS4KKyAgc2l6ZV90IG4gPSBrUGFnZVNpemUvc2l6ZW9mKHRlc3Rfc3RydWN0X2xhcmdlcikgKyAxIC0gMjsKKworICBmb3IgKHNpemVfdCBpPTA7IGk8bjsgKytpKSB7CisgICAgQVNTRVJUX1RSVUUoYWxsb2NhdG9yLmFsbG9jKCkgIT0gbnVsbHB0cik7CisgIH0KKworICB0ZXN0X3N0cnVjdF9sYXJnZXIqIHB0cl90b19mcmVlID0gYWxsb2NhdG9yLmFsbG9jKCk7CisgIEFTU0VSVF9UUlVFKHB0cl90b19mcmVlICE9IG51bGxwdHIpOworICBhbGxvY2F0b3IuZnJlZShwdHIxKTsKK30KKworc3RhdGljIHZvaWQgcHJvdGVjdF9hbGwoKSB7CisgIExpbmtlclR5cGVBbGxvY2F0b3I8dGVzdF9zdHJ1Y3RfbGFyZ2VyPiBhbGxvY2F0b3I7CisKKyAgLy8gbnVtYmVyIG9mIGFsbG9jcyB0byByZWFjaCB0aGUgZW5kIG9mIGZpcnN0IHBhZ2UKKyAgc2l6ZV90IG4gPSBrUGFnZVNpemUvc2l6ZW9mKHRlc3Rfc3RydWN0X2xhcmdlcikgLSAxOworICB0ZXN0X3N0cnVjdF9sYXJnZXIqIHBhZ2UxX3B0ciA9IGFsbG9jYXRvci5hbGxvYygpOworCisgIGZvciAoc2l6ZV90IGk9MDsgaTxuOyArK2kpIHsKKyAgICBhbGxvY2F0b3IuYWxsb2MoKTsKKyAgfQorCisgIHRlc3Rfc3RydWN0X2xhcmdlciogcGFnZTJfcHRyID0gYWxsb2NhdG9yLmFsbG9jKCk7CisgIGFsbG9jYXRvci5wcm90ZWN0X2FsbChQUk9UX1JFQUQpOworICBhbGxvY2F0b3IucHJvdGVjdF9hbGwoUFJPVF9SRUFEIHwgUFJPVF9XUklURSk7CisgIC8vIGNoZWNrIGFjY2VzcworICBwYWdlMl9wdHItPmR1bW15X3N0clsyM10gPSAyNzsKKyAgcGFnZTFfcHRyLT5kdW1teV9zdHJbMTNdID0gMTE7CisKKyAgYWxsb2NhdG9yLnByb3RlY3RfYWxsKFBST1RfUkVBRCk7CisgIGZwcmludGYoc3RkZXJyLCAidHJ5aW5nIHRvIGFjY2VzcyBwcm90ZWN0ZWQgcGFnZSIpOworCisgIC8vIHRoaXMgc2hvdWxkIHJlc3VsdCBpbiBzZWdtZW50YXRpb24gZmF1bHQKKyAgcGFnZTFfcHRyLT5kdW1teV9zdHJbMTFdID0gNzsKK30KKworVEVTVChsaW5rZXJfYWxsb2NhdG9yLCB0ZXN0X3Byb3RlY3QpIHsKKyAgdGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKKyAgQVNTRVJUX0VYSVQocHJvdGVjdF9hbGwoKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHU0VHViksICJ0cnlpbmcgdG8gYWNjZXNzIHByb3RlY3RlZCBwYWdlIik7Cit9CisKZGlmZiAtLWdpdCBhL2xpbmtlci90ZXN0cy9saW5rZXJfbWVtb3J5X2FsbG9jYXRvcl90ZXN0LmNwcCBiL2xpbmtlci90ZXN0cy9saW5rZXJfbWVtb3J5X2FsbG9jYXRvcl90ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMDAyYTBkCi0tLSAvZGV2L251bGwKKysrIGIvbGlua2VyL3Rlc3RzL2xpbmtlcl9tZW1vcnlfYWxsb2NhdG9yX3Rlc3QuY3BwCkBAIC0wLDAgKzEsMTkzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN5cy9tbWFuLmg+CisKKyNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgorCisjaW5jbHVkZSAiLi4vbGlua2VyX2FsbG9jYXRvci5oIgorCisjaW5jbHVkZSA8dW5pc3RkLmg+CisKK25hbWVzcGFjZSB7CisKKy8qCisgKiB0aGlzIG9uZSBoYXMgc2l6ZSBiZWxvdyBhbGxvY2F0b3IgY2FwIHdoaWNoIGlzIDIqc2l6ZW9mKHZvaWQqKQorICovCitzdHJ1Y3QgdGVzdF9zdHJ1Y3Rfc21hbGwgeworICBjaGFyIGR1bW15X3N0cls1XTsKK307CisKK3N0cnVjdCB0ZXN0X3N0cnVjdF9sYXJnZSB7CisgIGNoYXIgZHVtbXlfc3RyWzEwMDldOworfTsKKworc3RydWN0IHRlc3Rfc3RydWN0X2h1Z2UgeworICBjaGFyIGR1bW15X3N0cls3MzkzOV07Cit9OworCitzdHJ1Y3QgdGVzdF9zdHJ1Y3RfNTEyIHsKKyAgY2hhciBkdW1teV9zdHJbNTAzXTsKK307CisKK307CisKK3N0YXRpYyBzaXplX3Qga1BhZ2VTaXplID0gc3lzY29uZihfU0NfUEFHRV9TSVpFKTsKKworVEVTVChsaW5rZXJfbWVtb3J5LCB0ZXN0X2FsbG9jXzApIHsKKyAgTGlua2VyTWVtb3J5QWxsb2NhdG9yIGFsbG9jYXRvcjsKKyAgdm9pZCogcHRyID0gYWxsb2NhdG9yLmFsbG9jKDApOworICBBU1NFUlRfVFJVRShwdHIgIT0gbnVsbHB0cik7CisgIGZyZWUocHRyKTsKK30KKworVEVTVChsaW5rZXJfbWVtb3J5LCB0ZXN0X2ZyZWVfbnVsbHB0cikgeworICBMaW5rZXJNZW1vcnlBbGxvY2F0b3IgYWxsb2NhdG9yOworICBhbGxvY2F0b3IuZnJlZShudWxscHRyKTsKK30KKworVEVTVChsaW5rZXJfbWVtb3J5LCB0ZXN0X3JlYWxsb2MpIHsKKyAgTGlua2VyTWVtb3J5QWxsb2NhdG9yIGFsbG9jYXRvcjsKKyAgdWludDMyX3QqIGFycmF5ID0gcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+KGFsbG9jYXRvci5hbGxvYyg1MTIpKTsKKyAgY29uc3Qgc2l6ZV90IGFycmF5X3NpemUgPSA1MTIgLyBzaXplb2YodWludDMyX3QpOworCisgIHVpbnQzMl90IG1vZGVsWzEwMDBdOworCisgIG1vZGVsWzBdID0gMTsKKyAgbW9kZWxbMV0gPSAxOworCisgIGZvciAoc2l6ZV90IGkgPSAyOyBpIDwgMTAwMDsgKytpKSB7CisgICAgbW9kZWxbaV0gPSBtb2RlbFtpIC0gMV0gKyBtb2RlbFtpIC0gMl07CisgIH0KKworICBtZW1jcHkoYXJyYXksIG1vZGVsLCBhcnJheV9zaXplKTsKKworICB1aW50MzJfdCogcmVhbGxvY2F0ZWRfcHRyID0gcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+KGFsbG9jYXRvci5yZWFsbG9jKGFycmF5LCAxMDI0KSk7CisKKyAgQVNTRVJUX1RSVUUocmVhbGxvY2F0ZWRfcHRyICE9IG51bGxwdHIpOworICBBU1NFUlRfVFJVRShyZWFsbG9jYXRlZF9wdHIgIT0gYXJyYXkpOworCisgIEFTU0VSVF9UUlVFKG1lbWNtcChyZWFsbG9jYXRlZF9wdHIsIG1vZGVsLCBhcnJheV9zaXplKSA9PSAwKTsKKworICBhcnJheSA9IHJlYWxsb2NhdGVkX3B0cjsKKworICBtZW1jcHkoYXJyYXksIG1vZGVsLCAyKmFycmF5X3NpemUpOworCisgIHJlYWxsb2NhdGVkX3B0ciA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihhbGxvY2F0b3IucmVhbGxvYyhhcnJheSwgNjIpKTsKKworICBBU1NFUlRfVFJVRShyZWFsbG9jYXRlZF9wdHIgPT0gYXJyYXkpOworCisgIHJlYWxsb2NhdGVkX3B0ciA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihhbGxvY2F0b3IucmVhbGxvYyhhcnJheSwgNDAwMCkpOworCisgIEFTU0VSVF9UUlVFKHJlYWxsb2NhdGVkX3B0ciAhPSBudWxscHRyKTsKKyAgQVNTRVJUX1RSVUUocmVhbGxvY2F0ZWRfcHRyICE9IGFycmF5KTsKKworICBBU1NFUlRfVFJVRShtZW1jbXAocmVhbGxvY2F0ZWRfcHRyLCBtb2RlbCwgYXJyYXlfc2l6ZSAqIDIpID09IDApOworCisgIGFycmF5ID0gcmVhbGxvY2F0ZWRfcHRyOworCisgIG1lbWNweShhcnJheSwgbW9kZWwsIDQwMDApOworCisgIHJlYWxsb2NhdGVkX3B0ciA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihhbGxvY2F0b3IucmVhbGxvYyhhcnJheSwgNjQwMDApKTsKKworICBBU1NFUlRfVFJVRShyZWFsbG9jYXRlZF9wdHIgIT0gbnVsbHB0cik7CisgIEFTU0VSVF9UUlVFKHJlYWxsb2NhdGVkX3B0ciAhPSBhcnJheSk7CisKKyAgQVNTRVJUX1RSVUUobWVtY21wKHJlYWxsb2NhdGVkX3B0ciwgbW9kZWwsIDQwMDApID09IDApOworCisgIEFTU0VSVF9FUShudWxscHRyLCByZWFsbG9jKHJlYWxsb2NhdGVkX3B0ciwgMCkpOworfQorCitURVNUKGxpbmtlcl9tZW1vcnksIHRlc3Rfc21hbGxfc21va2UpIHsKKyAgTGlua2VyTWVtb3J5QWxsb2NhdG9yIGFsbG9jYXRvcjsKKworICB1aW50OF90IHplcm9zWzE2XTsKKyAgbWVtc2V0KHplcm9zLCAwLCBzaXplb2YoemVyb3MpKTsKKworICB0ZXN0X3N0cnVjdF9zbWFsbCogcHRyMSA9CisgICAgICByZWludGVycHJldF9jYXN0PHRlc3Rfc3RydWN0X3NtYWxsKj4oYWxsb2NhdG9yLmFsbG9jKHNpemVvZih0ZXN0X3N0cnVjdF9zbWFsbCkpKTsKKyAgdGVzdF9zdHJ1Y3Rfc21hbGwqIHB0cjIgPQorICAgICAgcmVpbnRlcnByZXRfY2FzdDx0ZXN0X3N0cnVjdF9zbWFsbCo+KGFsbG9jYXRvci5hbGxvYyhzaXplb2YodGVzdF9zdHJ1Y3Rfc21hbGwpKSk7CisKKyAgQVNTRVJUX1RSVUUocHRyMSAhPSBudWxscHRyKTsKKyAgQVNTRVJUX1RSVUUocHRyMiAhPSBudWxscHRyKTsKKyAgQVNTRVJUX0VRKHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PihwdHIxKSsxNiwgcmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KHB0cjIpKTsKKyAgQVNTRVJUX1RSVUUobWVtY21wKHB0cjEsIHplcm9zLCAxNikgPT0gMCk7CisKKyAgYWxsb2NhdG9yLmZyZWUocHRyMSk7CisgIGFsbG9jYXRvci5mcmVlKHB0cjIpOworfQorCitURVNUKGxpbmtlcl9tZW1vcnksIHRlc3RfaHVnZV9zbW9rZSkgeworICBMaW5rZXJNZW1vcnlBbGxvY2F0b3IgYWxsb2NhdG9yOworCisgIC8vIHRoaXMgc2hvdWxkIHRyaWdnZXIgcHJveHktdG8tbW1hcAorICB0ZXN0X3N0cnVjdF9odWdlKiBwdHIxID0KKyAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dGVzdF9zdHJ1Y3RfaHVnZSo+KGFsbG9jYXRvci5hbGxvYyhzaXplb2YodGVzdF9zdHJ1Y3RfaHVnZSkpKTsKKyAgdGVzdF9zdHJ1Y3RfaHVnZSogcHRyMiA9CisgICAgICByZWludGVycHJldF9jYXN0PHRlc3Rfc3RydWN0X2h1Z2UqPihhbGxvY2F0b3IuYWxsb2Moc2l6ZW9mKHRlc3Rfc3RydWN0X2h1Z2UpKSk7CisKKyAgQVNTRVJUX1RSVUUocHRyMSAhPSBudWxscHRyKTsKKyAgQVNTRVJUX1RSVUUocHRyMiAhPSBudWxscHRyKTsKKworICBBU1NFUlRfVFJVRSgKKyAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PihwdHIxKS9rUGFnZVNpemUgIT0gcmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KHB0cjIpL2tQYWdlU2l6ZSk7CisgIGFsbG9jYXRvci5mcmVlKHB0cjIpOworICBhbGxvY2F0b3IuZnJlZShwdHIxKTsKK30KKworVEVTVChsaW5rZXJfbWVtb3J5LCB0ZXN0X2xhcmdlKSB7CisgIExpbmtlck1lbW9yeUFsbG9jYXRvciBhbGxvY2F0b3I7CisKKyAgdGVzdF9zdHJ1Y3RfbGFyZ2UqIHB0cjEgPQorICAgICAgcmVpbnRlcnByZXRfY2FzdDx0ZXN0X3N0cnVjdF9sYXJnZSo+KGFsbG9jYXRvci5hbGxvYyhzaXplb2YodGVzdF9zdHJ1Y3RfbGFyZ2UpKSk7CisgIHRlc3Rfc3RydWN0X2xhcmdlKiBwdHIyID0KKyAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dGVzdF9zdHJ1Y3RfbGFyZ2UqPihhbGxvY2F0b3IuYWxsb2MoMTAyNCkpOworCisgIEFTU0VSVF9UUlVFKHB0cjEgIT0gbnVsbHB0cik7CisgIEFTU0VSVF9UUlVFKHB0cjIgIT0gbnVsbHB0cik7CisKKyAgQVNTRVJUX0VRKHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PihwdHIxKSArIDEwMjQsIHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PihwdHIyKSk7CisKKyAgLy8gbGV0J3MgYWxsb2NhdGUgdW50aWwgd2UgcmVhY2ggdGhlIG5leHQgcGFnZS4KKyAgc2l6ZV90IG4gPSBrUGFnZVNpemUgLyBzaXplb2YodGVzdF9zdHJ1Y3RfbGFyZ2UpICsgMSAtIDI7CisgIHRlc3Rfc3RydWN0X2xhcmdlKiBvYmplY3RzW25dOworCisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbjsgKytpKSB7CisgICAgdGVzdF9zdHJ1Y3RfbGFyZ2UqIG9ial9wdHIgPQorICAgICAgICByZWludGVycHJldF9jYXN0PHRlc3Rfc3RydWN0X2xhcmdlKj4oYWxsb2NhdG9yLmFsbG9jKHNpemVvZih0ZXN0X3N0cnVjdF9sYXJnZSkpKTsKKyAgICBBU1NFUlRfVFJVRShvYmpfcHRyICE9IG51bGxwdHIpOworICAgIG9iamVjdHNbaV0gPSBvYmpfcHRyOworICB9CisKKyAgdGVzdF9zdHJ1Y3RfbGFyZ2UqIHB0cl90b19mcmVlID0KKyAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dGVzdF9zdHJ1Y3RfbGFyZ2UqPihhbGxvY2F0b3IuYWxsb2Moc2l6ZW9mKHRlc3Rfc3RydWN0X2xhcmdlKSkpOworCisgIEFTU0VSVF9UUlVFKHB0cl90b19mcmVlICE9IG51bGxwdHIpOworCisgIGFsbG9jYXRvci5mcmVlKHB0cjEpOworCisgIGZvciAoc2l6ZV90IGk9MDsgaTxuOyArK2kpIHsKKyAgICBhbGxvY2F0b3IuZnJlZShvYmplY3RzW2ldKTsKKyAgfQorCisgIGFsbG9jYXRvci5mcmVlKHB0cjIpOworICBhbGxvY2F0b3IuZnJlZShwdHJfdG9fZnJlZSk7Cit9CisKKwpkaWZmIC0tZ2l0IGEvdGVzdHMvQW5kcm9pZC5idWlsZC5tayBiL3Rlc3RzL0FuZHJvaWQuYnVpbGQubWsKaW5kZXggNjM3MjlkYS4uNWIyYjQxNyAxMDA2NDQKLS0tIGEvdGVzdHMvQW5kcm9pZC5idWlsZC5taworKysgYi90ZXN0cy9BbmRyb2lkLmJ1aWxkLm1rCkBAIC0zNiw4ICszNiwxNCBAQAogCiBMT0NBTF9DTEFORyA6PSAkKCQobW9kdWxlKV9jbGFuZ18kKGJ1aWxkX3R5cGUpKQogCitpZm5lcSAoJCgkKG1vZHVsZSlfYWxsb3dfYXNhbiksdHJ1ZSkKK0xPQ0FMX0FERFJFU1NfU0FOSVRJWkVSIDo9IGZhbHNlCitlbmRpZgorCiBMT0NBTF9GT1JDRV9TVEFUSUNfRVhFQ1VUQUJMRSA6PSAkKCQobW9kdWxlKV9mb3JjZV9zdGF0aWNfZXhlY3V0YWJsZSkKIAorTE9DQUxfQUxMT1dfVU5ERUZJTkVEX1NZTUJPTFMgOj0gJCgkKG1vZHVsZSlfYWxsb3dfdW5kZWZpbmVkX3N5bWJvbHMpCisKIGlmbmVxICgkKCQobW9kdWxlKV9tdWx0aWxpYiksKQogICAgIExPQ0FMX01VTFRJTElCIDo9ICQoJChtb2R1bGUpX211bHRpbGliKQogZW5kaWYKQEAgLTg2LDkgKzkyLDEzIEBACiAgICAgJCgkKG1vZHVsZSlfbGRsaWJzKSBcCiAgICAgJCgkKG1vZHVsZSlfbGRsaWJzXyQoYnVpbGRfdHlwZSkpIFwKIAotaWZlcSAoJChidWlsZF90eXBlKSx0YXJnZXQpCi0gIGluY2x1ZGUgZXh0ZXJuYWwvc3RscG9ydC9saWJzdGxwb3J0Lm1rCitpZmVxICgkKExPQ0FMX0ZPUkNFX1NUQVRJQ19FWEVDVVRBQkxFKSx0cnVlKQorTE9DQUxfQ1hYX1NUTCA6PSBsaWJjKytfc3RhdGljCitlbHNlCitMT0NBTF9DWFhfU1RMIDo9IGxpYmMrKworZW5kaWYKIAoraWZlcSAoJChidWlsZF90eXBlKSx0YXJnZXQpCiAgIGluY2x1ZGUgJChCVUlMRF8kKGJ1aWxkX3RhcmdldCkpCiBlbmRpZgogCmRpZmYgLS1naXQgYS90ZXN0cy9BbmRyb2lkLm1rIGIvdGVzdHMvQW5kcm9pZC5tawppbmRleCA4YjBiMGEwLi5jZDY1YzEwIDEwMDY0NAotLS0gYS90ZXN0cy9BbmRyb2lkLm1rCisrKyBiL3Rlc3RzL0FuZHJvaWQubWsKQEAgLTE0LDggKzE0LDYgQEAKICMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCiAjCiAKLWlmbmVxICgkKEJVSUxEX1RJTllfQU5EUk9JRCksdHJ1ZSkKLQogTE9DQUxfUEFUSCA6PSAkKGNhbGwgbXktZGlyKQogCiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkBAIC01NCw4ICs1MiwxMCBAQAogbGliQmlvbmljU3RhbmRhcmRUZXN0c19zcmNfZmlsZXMgOj0gXAogICAgIGFycGFfaW5ldF90ZXN0LmNwcCBcCiAgICAgYnVmZmVyX3Rlc3RzLmNwcCBcCisgICAgY29tcGxleF90ZXN0LmNwcCBcCiAgICAgY3R5cGVfdGVzdC5jcHAgXAogICAgIGRpcmVudF90ZXN0LmNwcCBcCisgICAgZXJyb3JfdGVzdC5jcHAgXAogICAgIGV2ZW50ZmRfdGVzdC5jcHAgXAogICAgIGZjbnRsX3Rlc3QuY3BwIFwKICAgICBmZW52X3Rlc3QuY3BwIFwKQEAgLTY3LDQwICs2NywzMiBAQAogICAgIGxpYmdlbl90ZXN0LmNwcCBcCiAgICAgbG9jYWxlX3Rlc3QuY3BwIFwKICAgICBtYWxsb2NfdGVzdC5jcHAgXAotICAgIG1hdGhfY29zX3Rlc3QuY3BwIFwKLSAgICBtYXRoX2Nvc2ZfdGVzdC5jcHAgXAotICAgIG1hdGhfZXhwX3Rlc3QuY3BwIFwKLSAgICBtYXRoX2V4cGZfdGVzdC5jcHAgXAotICAgIG1hdGhfbG9nX3Rlc3QuY3BwIFwKLSAgICBtYXRoX2xvZ2ZfdGVzdC5jcHAgXAotICAgIG1hdGhfcG93X3Rlc3QuY3BwIFwKLSAgICBtYXRoX3Bvd2ZfdGVzdC5jcHAgXAotICAgIG1hdGhfc2luX3Rlc3QuY3BwIFwKLSAgICBtYXRoX3NpbmZfdGVzdC5jcHAgXAotICAgIG1hdGhfc2luY29zX3Rlc3QuY3BwIFwKLSAgICBtYXRoX3NpbmNvc2ZfdGVzdC5jcHAgXAotICAgIG1hdGhfdGFuX3Rlc3QuY3BwIFwKLSAgICBtYXRoX3RhbmZfdGVzdC5jcHAgXAogICAgIG1hdGhfdGVzdC5jcHAgXAogICAgIG1udGVudF90ZXN0LmNwcCBcCiAgICAgbmV0ZGJfdGVzdC5jcHAgXAogICAgIHB0aHJlYWRfdGVzdC5jcHAgXAorICAgIHB0eV90ZXN0LmNwcCBcCiAgICAgcmVnZXhfdGVzdC5jcHAgXAogICAgIHNjaGVkX3Rlc3QuY3BwIFwKICAgICBzZWFyY2hfdGVzdC5jcHAgXAorICAgIHNlbWFwaG9yZV90ZXN0LmNwcCBcCisgICAgc2V0am1wX3Rlc3QuY3BwIFwKICAgICBzaWduYWxfdGVzdC5jcHAgXAogICAgIHN0YWNrX3Byb3RlY3Rvcl90ZXN0LmNwcCBcCiAgICAgc3RhY2tfdW53aW5kaW5nX3Rlc3QuY3BwIFwKICAgICBzdGRhdG9taWNfdGVzdC5jcHAgXAogICAgIHN0ZGludF90ZXN0LmNwcCBcCiAgICAgc3RkaW9fdGVzdC5jcHAgXAorICAgIHN0ZGlvX2V4dF90ZXN0LmNwcCBcCiAgICAgc3RkbGliX3Rlc3QuY3BwIFwKICAgICBzdHJpbmdfdGVzdC5jcHAgXAorICAgIHN0cmluZ19wb3NpeF9zdHJlcnJvcl9yX3Rlc3QuY3BwIFwKICAgICBzdHJpbmdzX3Rlc3QuY3BwIFwKICAgICBzdHVic190ZXN0LmNwcCBcCiAgICAgc3N0cmVhbV90ZXN0LmNwcCBcCiAgICAgc3lzX2Vwb2xsX3Rlc3QuY3BwIFwKICAgICBzeXNfbW1hbl90ZXN0LmNwcCBcCisgICAgc3lzX3BlcnNvbmFsaXR5X3Rlc3QuY3BwIFwKICAgICBzeXNfcmVzb3VyY2VfdGVzdC5jcHAgXAogICAgIHN5c19zZWxlY3RfdGVzdC5jcHAgXAogICAgIHN5c19zZW5kZmlsZV90ZXN0LmNwcCBcCkBAIC0xMDgsNiArMTAwLDcgQEAKICAgICBzeXNfc3RhdF90ZXN0LmNwcCBcCiAgICAgc3lzX3N0YXR2ZnNfdGVzdC5jcHAgXAogICAgIHN5c19zeXNjYWxsX3Rlc3QuY3BwIFwKKyAgICBzeXNfc3lzaW5mb190ZXN0LmNwcCBcCiAgICAgc3lzX3RpbWVfdGVzdC5jcHAgXAogICAgIHN5c190eXBlc190ZXN0LmNwcCBcCiAgICAgc3lzX3Zmc190ZXN0LmNwcCBcCkBAIC0xMTYsNiArMTA5LDcgQEAKICAgICB1Y2hhcl90ZXN0LmNwcCBcCiAgICAgdW5pcXVlcHRyX3Rlc3QuY3BwIFwKICAgICB1bmlzdGRfdGVzdC5jcHAgXAorICAgIHV0bXBfdGVzdC5jcHAgXAogICAgIHdjaGFyX3Rlc3QuY3BwIFwKIAogbGliQmlvbmljU3RhbmRhcmRUZXN0c19jZmxhZ3MgOj0gXApAQCAtMTMyLDYgKzEyNiwxMCBAQAogCiBsaWJCaW9uaWNTdGFuZGFyZFRlc3RzX2NfaW5jbHVkZXMgOj0gXAogICAgIGJpb25pYy9saWJjIFwKKyAgICBleHRlcm5hbC90aW55eG1sMiBcCisKK2xpYkJpb25pY1N0YW5kYXJkVGVzdHNfc3RhdGljX2xpYnJhcmllcyA6PSBcCisgICAgbGliYmFzZSBcCiAKIGxpYkJpb25pY1N0YW5kYXJkVGVzdHNfbGRsaWJzX2hvc3QgOj0gXAogICAgIC1scnQgXApAQCAtMjE2LDE2ICsyMTQsNjAgQEAKIGluY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLm1rCiAKICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgTGlicmFyeSBvZiBiaW9uaWMgY3VzdG9taXplZCBndGVzdCBtYWluIGZ1bmN0aW9uLCB3aXRoIHNpbXBsaWZpZWQgb3V0cHV0IGZvcm1hdC4KKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYkJpb25pY0d0ZXN0TWFpbl9zcmNfZmlsZXMgOj0gZ3Rlc3RfbWFpbi5jcHAKKworbGliQmlvbmljR3Rlc3RNYWluX2NmbGFncyA6PSAkKHRlc3RfY2ZsYWdzKQorCitsaWJCaW9uaWNHdGVzdE1haW5fY3BwZmxhZ3MgOj0gJCh0ZXN0X2NwcGZsYWdzKQorCittb2R1bGUgOj0gbGliQmlvbmljR3Rlc3RNYWluCittb2R1bGVfdGFnIDo9IG9wdGlvbmFsCitidWlsZF90eXBlIDo9IHRhcmdldAorYnVpbGRfdGFyZ2V0IDo9IFNUQVRJQ19URVNUX0xJQlJBUlkKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLm1rCitidWlsZF90eXBlIDo9IGhvc3QKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgTGlicmFyeSBvZiBiaW9uaWMgY3VzdG9taXplZCBndGVzdCBtYWluIGZ1bmN0aW9uLCB3aXRoIG5vcm1hbCBndGVzdCBvdXRwdXQgZm9ybWF0LAorIyB3aGljaCBpcyBuZWVkZWQgYnkgYmlvbmljIGN0cyB0ZXN0LgorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGliQmlvbmljQ3RzR3Rlc3RNYWluX3NyY19maWxlcyA6PSBndGVzdF9tYWluLmNwcAorCitsaWJCaW9uaWNDdHNHdGVzdE1haW5fY2ZsYWdzIDo9ICQodGVzdF9jZmxhZ3MpCisKK2xpYkJpb25pY0N0c0d0ZXN0TWFpbl9jcHBmbGFncyA6PSAkKHRlc3RfY3BwZmxhZ3MpIC1EVVNJTkdfR1RFU1RfT1VUUFVUX0ZPUk1BVAorCittb2R1bGUgOj0gbGliQmlvbmljQ3RzR3Rlc3RNYWluCittb2R1bGVfdGFnIDo9IG9wdGlvbmFsCitidWlsZF90eXBlIDo9IHRhcmdldAorYnVpbGRfdGFyZ2V0IDo9IFNUQVRJQ19URVNUX0xJQlJBUlkKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLm1rCitidWlsZF90eXBlIDo9IGhvc3QKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICMgVGVzdHMgZm9yIHRoZSBkZXZpY2UgdXNpbmcgYmlvbmljJ3MgLnNvLiBSdW4gd2l0aDoKICMgICBhZGIgc2hlbGwgL2RhdGEvbmF0aXZldGVzdC9iaW9uaWMtdW5pdC10ZXN0cy9iaW9uaWMtdW5pdC10ZXN0czMyCiAjICAgYWRiIHNoZWxsIC9kYXRhL25hdGl2ZXRlc3QvYmlvbmljLXVuaXQtdGVzdHMvYmlvbmljLXVuaXQtdGVzdHM2NAogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogYmlvbmljLXVuaXQtdGVzdHNfd2hvbGVfc3RhdGljX2xpYnJhcmllcyA6PSBcCiAgICAgbGliQmlvbmljVGVzdHMgXAorICAgIGxpYkJpb25pY0d0ZXN0TWFpbiBcCiAKK2Jpb25pYy11bml0LXRlc3RzX3N0YXRpY19saWJyYXJpZXMgOj0gXAorICAgIGxpYnRpbnl4bWwyIFwKKyAgICBsaWJsb2cgXAorICAgIGxpYmJhc2UgXAorCisjIFRPRE86IEluY2x1ZGUgX19jeGFfdGhyZWFkX2F0ZXhpdF90ZXN0LmNwcCB0byBnbGliYyB0ZXN0cyBvbmNlIGl0IGlzIHVwZ3JhZGVkIChnbGliYyAyLjE4KykKIGJpb25pYy11bml0LXRlc3RzX3NyY19maWxlcyA6PSBcCiAgICAgYXRleGl0X3Rlc3QuY3BwIFwKKyAgICBkbF90ZXN0LmNwcCBcCiAgICAgZGxleHRfdGVzdC5jcHAgXAorICAgIF9fY3hhX3RocmVhZF9hdGV4aXRfdGVzdC5jcHAgXAogICAgIGRsZmNuX3Rlc3QuY3BwIFwKIAogYmlvbmljLXVuaXQtdGVzdHNfY2ZsYWdzIDo9ICQodGVzdF9jZmxhZ3MpCkBAIC0yMzcsOCArMjc5LDcgQEAKIGJpb25pYy11bml0LXRlc3RzX2NwcGZsYWdzIDo9ICQodGVzdF9jcHBmbGFncykKIAogYmlvbmljLXVuaXQtdGVzdHNfbGRmbGFncyA6PSBcCi0gICAgLVdsLC0tZXhwb3J0LWR5bmFtaWMgXAotICAgIC1XbCwtdSxEbFN5bVRlc3RGdW5jdGlvbiBcCisgICAgLVdsLC0tZXhwb3J0LWR5bmFtaWMKIAogYmlvbmljLXVuaXQtdGVzdHNfY19pbmNsdWRlcyA6PSBcCiAgICAgYmlvbmljL2xpYmMgXApAQCAtMjQ3LDYgKzI4OCwxNCBAQAogYmlvbmljLXVuaXQtdGVzdHNfc2hhcmVkX2xpYnJhcmllc190YXJnZXQgOj0gXAogICAgIGxpYmRsIFwKICAgICBsaWJwYWdlbWFwIFwKKyAgICBsaWJkbF9wcmVlbXB0X3Rlc3RfMSBcCisgICAgbGliZGxfcHJlZW1wdF90ZXN0XzIKKworIyBUT0RPOiBjbGFuZyBzdXBwb3J0IGZvciB0aHJlYWRfbG9jYWwgb24gYXJtIGlzIGRvbmUgdmlhIF9fYWVhYmlfcmVhZF90cCgpCisjIHdoaWNoIGJpb25pYyBkb2VzIG5vdCBzdXBwb3J0LiBSZWVuYWJsZSB0aGlzIG9uY2UgdGhpcyBxdWVzdGlvbiBpcyByZXNvbHZlZC4KK2Jpb25pYy11bml0LXRlc3RzX2NsYW5nX3RhcmdldCA6PSBmYWxzZQorCitiaW9uaWMtdW5pdC10ZXN0c19zaGFyZWRfbGlicmFyaWVzX3RhcmdldCArPSBsaWJkbF90ZXN0X2RmXzFfZ2xvYmFsCiAKIG1vZHVsZSA6PSBiaW9uaWMtdW5pdC10ZXN0cwogbW9kdWxlX3RhZyA6PSBvcHRpb25hbApAQCAtMjYxLDE1ICszMTAsMjUgQEAKICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGJpb25pYy11bml0LXRlc3RzLXN0YXRpY193aG9sZV9zdGF0aWNfbGlicmFyaWVzIDo9IFwKICAgICBsaWJCaW9uaWNUZXN0cyBcCisgICAgbGliQmlvbmljR3Rlc3RNYWluIFwKIAogYmlvbmljLXVuaXQtdGVzdHMtc3RhdGljX3N0YXRpY19saWJyYXJpZXMgOj0gXAotICAgIGxpYnN0bHBvcnRfc3RhdGljIFwKICAgICBsaWJtIFwKICAgICBsaWJjIFwKLSAgICBsaWJzdGRjKysgXAorICAgIGxpYmMrK19zdGF0aWMgXAorICAgIGxpYmRsIFwKKyAgICBsaWJ0aW55eG1sMiBcCisgICAgbGlibG9nIFwKKyAgICBsaWJiYXNlIFwKIAogYmlvbmljLXVuaXQtdGVzdHMtc3RhdGljX2ZvcmNlX3N0YXRpY19leGVjdXRhYmxlIDo9IHRydWUKIAorIyBsaWJjIGFuZCBsaWJjKysgYm90aCBkZWZpbmUgc3RkOjpub3Rocm93LiBsaWJjJ3MgaXMgYSBwcml2YXRlIHN5bWJvbCwgYnV0IHRoaXMKKyMgc3RpbGwgY2F1c2VzIGlzc3VlcyB3aGVuIGxpbmtpbmcgbGliYy5hIGFuZCBsaWJjKysuYSwgc2luY2UgcHJpdmF0ZSBpc24ndAorIyBlZmZlY3RpdmUgdW50aWwgaXQgaGFzIGJlZW4gbGlua2VkLiBUbyBmaXggdGhpcywganVzdCBhbGxvdyBtdWx0aXBsZSBzeW1ib2wKKyMgZGVmaW5pdGlvbnMgZm9yIHRoZSBzdGF0aWMgdGVzdHMuCitiaW9uaWMtdW5pdC10ZXN0cy1zdGF0aWNfbGRmbGFncyA6PSAtV2wsLS1hbGxvdy1tdWx0aXBsZS1kZWZpbml0aW9uCisKIG1vZHVsZSA6PSBiaW9uaWMtdW5pdC10ZXN0cy1zdGF0aWMKIG1vZHVsZV90YWcgOj0gb3B0aW9uYWwKIGJ1aWxkX3R5cGUgOj0gdGFyZ2V0CkBAIC0yODYsMTIgKzM0NSwyNiBAQAogYmlvbmljLXVuaXQtdGVzdHMtZ2xpYmNfc3JjX2ZpbGVzIDo9IFwKICAgICBhdGV4aXRfdGVzdC5jcHAgXAogICAgIGRsZmNuX3Rlc3QuY3BwIFwKKyAgICBkbF90ZXN0LmNwcCBcCisKK2Jpb25pYy11bml0LXRlc3RzLWdsaWJjX3NoYXJlZF9saWJyYXJpZXMgOj0gXAorICAgIGxpYmRsX3ByZWVtcHRfdGVzdF8xIFwKKyAgICBsaWJkbF9wcmVlbXB0X3Rlc3RfMgorCitiaW9uaWMtdW5pdC10ZXN0cy1nbGliY19zaGFyZWRfbGlicmFyaWVzICs9IGxpYmRsX3Rlc3RfZGZfMV9nbG9iYWwKIAogYmlvbmljLXVuaXQtdGVzdHMtZ2xpYmNfd2hvbGVfc3RhdGljX2xpYnJhcmllcyA6PSBcCiAgICAgbGliQmlvbmljU3RhbmRhcmRUZXN0cyBcCisgICAgbGliQmlvbmljR3Rlc3RNYWluIFwKKyAgICAkKGZvcnRpZnlfbGlicykgXAorCitiaW9uaWMtdW5pdC10ZXN0cy1nbGliY19zdGF0aWNfbGlicmFyaWVzIDo9IFwKKyAgICBsaWJiYXNlIFwKKyAgICBsaWJsb2cgXAorICAgIGxpYmN1dGlscyBcCiAKIGJpb25pYy11bml0LXRlc3RzLWdsaWJjX2xkbGlicyA6PSBcCi0gICAgLWxydCAtbGRsIFwKKyAgICAtbHJ0IC1sZGwgLWx1dGlsIFwKIAogYmlvbmljLXVuaXQtdGVzdHMtZ2xpYmNfY19pbmNsdWRlcyA6PSBcCiAgICAgYmlvbmljL2xpYmMgXApAQCAtMzAwLDE5ICszNzMsNjAgQEAKIGJpb25pYy11bml0LXRlc3RzLWdsaWJjX2NwcGZsYWdzIDo9ICQodGVzdF9jcHBmbGFncykKIGJpb25pYy11bml0LXRlc3RzLWdsaWJjX2xkZmxhZ3MgOj0gLVdsLC0tZXhwb3J0LWR5bmFtaWMKIAorYmlvbmljLXVuaXQtdGVzdHMtZ2xpYmNfYWxsb3dfYXNhbiA6PSB0cnVlCisKIG1vZHVsZSA6PSBiaW9uaWMtdW5pdC10ZXN0cy1nbGliYwogbW9kdWxlX3RhZyA6PSBvcHRpb25hbAogYnVpbGRfdHlwZSA6PSBob3N0CiBidWlsZF90YXJnZXQgOj0gTkFUSVZFX1RFU1QKIGluY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLm1rCiAKLWlmbmVxICgkKFRBUkdFVF9BUkNIKSwkKGZpbHRlciAkKFRBUkdFVF9BUkNIKSxhcm0gbWlwcyB4ODYpKQotTElOS0VSID0gbGlua2VyNjQKLU5BVElWRV9URVNUX1NVRkZJWD02NAotZWxzZQotTElOS0VSID0gbGlua2VyCi1OQVRJVkVfVEVTVF9TVUZGSVg9MzIKLWVuZGlmCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIENvbXBpbGUgdGltZSB0ZXN0cy4KKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIyBTb21lIG9mIHRoZXNlIGFyZSBpbnRlbnRpb25hbGx5IHVzaW5nID0gaW5zdGVhZCBvZiA6PSBzaW5jZSB3ZSBuZWVkIGFjY2VzcyB0bworIyBzb21lIHZhcmlhYmxlcyBub3QgaW5pdGlhbHRpemVkIHVudGlsIHdlJ3JlIGluIHRoZSBidWlsZCBzeXN0ZW0uCisKK2luY2x1ZGUgJChDTEVBUl9WQVJTKQorTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gXAorICAgICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5tayBcCisgICAgJChMT0NBTF9QQVRIKS9maWxlLWNoZWNrLWN4eCBcCisgICAgfCAkKEhPU1RfT1VUX0VYRUNVVEFCTEVTKS9GaWxlQ2hlY2skKEhPU1RfRVhFQ1VUQUJMRV9TVUZGSVgpIFwKKworTE9DQUxfQ1hYID0gJChMT0NBTF9QQVRIKS9maWxlLWNoZWNrLWN4eCBcCisgICAgJChIT1NUX09VVF9FWEVDVVRBQkxFUykvRmlsZUNoZWNrIFwKKyAgICAkKCQoTE9DQUxfMk5EX0FSQ0hfVkFSX1BSRUZJWClDWFhfQkFSRSkgXAorICAgIEdDQyBcCisKK0xPQ0FMX0NMQU5HIDo9IGZhbHNlCitMT0NBTF9NT0RVTEUgOj0gYmlvbmljLWNvbXBpbGUtdGltZS10ZXN0cy1nKysKK0xPQ0FMX0NQUEZMQUdTIDo9IC1XYWxsCitMT0NBTF9TUkNfRklMRVMgOj0gZm9ydGlmeV9jb21waWxhdGlvbl90ZXN0LmNwcAoraW5jbHVkZSAkKEJVSUxEX1NUQVRJQ19MSUJSQVJZKQorCitpbmNsdWRlICQoQ0xFQVJfVkFSUykKK0xPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9IFwKKyAgICAkKExPQ0FMX1BBVEgpL0FuZHJvaWQubWsgXAorICAgICQoTE9DQUxfUEFUSCkvZmlsZS1jaGVjay1jeHggXAorICAgIHwgJChIT1NUX09VVF9FWEVDVVRBQkxFUykvRmlsZUNoZWNrJChIT1NUX0VYRUNVVEFCTEVfU1VGRklYKSBcCisKK0xPQ0FMX0NYWCA6PSAkKExPQ0FMX1BBVEgpL2ZpbGUtY2hlY2stY3h4IFwKKyAgICAkKEhPU1RfT1VUX0VYRUNVVEFCTEVTKS9GaWxlQ2hlY2sgXAorICAgICQoTExWTV9QUkVCVUlMVFNfUEFUSCkvY2xhbmcrKyBcCisgICAgQ0xBTkcgXAorCitMT0NBTF9DTEFORyA6PSB0cnVlCitMT0NBTF9NT0RVTEUgOj0gYmlvbmljLWNvbXBpbGUtdGltZS10ZXN0cy1jbGFuZysrCitMT0NBTF9DUFBGTEFHUyA6PSAtV2FsbAorIyBGaWxlQ2hlY2sgd2lsbCBlcnJvciBpZiB0aGVyZSBhcmVuJ3QgYW55IENMQU5HOiBsaW5lcyBpbiB0aGUgZmlsZSwgYnV0IHRoZXJlCisjIGRvbid0IGFwcGVhciB0byBiZSBhbnkgY2FzZXMgd2hlcmUgY2xhbmcgX2RvZXNfIGVtaXQgd2FybmluZ3MgZm9yIHNuP3ByaW50ZiA6KAorTE9DQUxfU1JDX0ZJTEVTIDo9CitpbmNsdWRlICQoQlVJTERfU1RBVElDX0xJQlJBUlkpCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgSG9zdCBnbGliYyB0ZXN0cy4KKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogIyBndGVzdCBuZWVkcyBBTkRST0lEX0RBVEEvbG9jYWwvdG1wIGZvciBkZWF0aCB0ZXN0IG91dHB1dC4KICMgTWFrZSBzdXJlIHRvIGNyZWF0ZSBBTkRST0lEX0RBVEEvbG9jYWwvdG1wIGlmIGRvZXNuJ3QgZXhpc3QuCkBAIC0zMjIsNDggKzQzNiwzNyBAQAogCW1rZGlyIC1wICQoVEFSR0VUX09VVF9EQVRBKS9sb2NhbC90bXAKIAlBTkRST0lEX0RBVEE9JChUQVJHRVRfT1VUX0RBVEEpIFwKIAlBTkRST0lEX1JPT1Q9JChUQVJHRVRfT1VUKSBcCi0JCSQoSE9TVF9PVVRfRVhFQ1VUQUJMRVMpL2Jpb25pYy11bml0LXRlc3RzLWdsaWJjJChOQVRJVkVfVEVTVF9TVUZGSVgpICQoQklPTklDX1RFU1RfRkxBR1MpCisJCSQoSE9TVF9PVVRfRVhFQ1VUQUJMRVMpL2Jpb25pYy11bml0LXRlc3RzLWdsaWJjNjQgJChCSU9OSUNfVEVTVF9GTEFHUykKIAogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIyBSdW4gdGhlIHVuaXQgdGVzdHMgYnVpbHQgYWdhaW5zdCB4ODYgYmlvbmljIG9uIGFuIHg4NiBob3N0LgogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvLi4vYnVpbGQvcnVuLW9uLWhvc3QubWsKKwogaWZlcSAoJChUQVJHRVRfQVJDSCksJChmaWx0ZXIgJChUQVJHRVRfQVJDSCkseDg2IHg4Nl82NCkpCi0jIGd0ZXN0IG5lZWRzIEFORFJPSURfREFUQS9sb2NhbC90bXAgZm9yIGRlYXRoIHRlc3Qgb3V0cHV0LgotIyBNYWtlIHN1cmUgdG8gY3JlYXRlIEFORFJPSURfREFUQS9sb2NhbC90bXAgaWYgZG9lc24ndCBleGlzdC4KLSMgYmlvbmljIGl0c2VsZiBzaG91bGQgYWx3YXlzIHdvcmsgcmVsYXRpdmUgdG8gQU5EUk9JRF9EQVRBIG9yIEFORFJPSURfUk9PVC4KKworVEVTVF9USU1FT1VUIDo9IDAKKwogIyBCSU9OSUNfVEVTVF9GTEFHUyBpcyBlaXRoZXIgZW1wdHkgb3IgaXQgY29tZXMgZnJvbSB0aGUgdXNlci4KLWJpb25pYy11bml0LXRlc3RzLXJ1bi1vbi1ob3N0OiBiaW9uaWMtdW5pdC10ZXN0cyAkKFRBUkdFVF9PVVRfRVhFQ1VUQUJMRVMpLyQoTElOS0VSKSAkKFRBUkdFVF9PVVRfRVhFQ1VUQUJMRVMpL3NoCi0JaWYgWyAhIC1kIC9zeXN0ZW0gLW8gISAtZCAvc3lzdGVtL2JpbiBdOyB0aGVuIFwKLQkgIGVjaG8gIkF0dGVtcHRpbmcgdG8gY3JlYXRlIC9zeXN0ZW0vYmluIjsgXAotCSAgc3VkbyBta2RpciAtcCAtbSAwNzc3IC9zeXN0ZW0vYmluOyBcCi0JZmkKLQlta2RpciAtcCAkKFRBUkdFVF9PVVRfREFUQSkvbG9jYWwvdG1wCi0JY3AgJChUQVJHRVRfT1VUX0VYRUNVVEFCTEVTKS8kKExJTktFUikgL3N5c3RlbS9iaW4KLQljcCAkKFRBUkdFVF9PVVRfRVhFQ1VUQUJMRVMpL3NoIC9zeXN0ZW0vYmluCitiaW9uaWMtdW5pdC10ZXN0cy1ydW4tb24taG9zdDMyOiBiaW9uaWMtdW5pdC10ZXN0cyBiaW9uaWMtcHJlcGFyZS1ydW4tb24taG9zdAogCUFORFJPSURfREFUQT0kKFRBUkdFVF9PVVRfREFUQSkgXAorCUFORFJPSURfRE5TX01PREU9bG9jYWwgXAogCUFORFJPSURfUk9PVD0kKFRBUkdFVF9PVVQpIFwKLQlMRF9MSUJSQVJZX1BBVEg9JChUQVJHRVRfT1VUX1NIQVJFRF9MSUJSQVJJRVMpIFwKLQkJJChUQVJHRVRfT1VUX0RBVEFfTkFUSVZFX1RFU1RTKS9iaW9uaWMtdW5pdC10ZXN0cy9iaW9uaWMtdW5pdC10ZXN0cyQoTkFUSVZFX1RFU1RfU1VGRklYKSAkKEJJT05JQ19URVNUX0ZMQUdTKQorCQl0aW1lb3V0ICQoVEVTVF9USU1FT1VUKSBcCisJCSQoVEFSR0VUX09VVF9EQVRBKS9uYXRpdmV0ZXN0L2Jpb25pYy11bml0LXRlc3RzL2Jpb25pYy11bml0LXRlc3RzMzIgJChCSU9OSUNfVEVTVF9GTEFHUykKKworaWZlcSAoJChUQVJHRVRfSVNfNjRfQklUKSx0cnVlKQorIyBhZGQgdGFyZ2V0IHRvIHJ1biBscDY0IHRlc3RzCitiaW9uaWMtdW5pdC10ZXN0cy1ydW4tb24taG9zdDY0OiBiaW9uaWMtdW5pdC10ZXN0cyBiaW9uaWMtcHJlcGFyZS1ydW4tb24taG9zdAorCUFORFJPSURfREFUQT0kKFRBUkdFVF9PVVRfREFUQSkgXAorCUFORFJPSURfRE5TX01PREU9bG9jYWwgXAorCUFORFJPSURfUk9PVD0kKFRBUkdFVF9PVVQpIFwKKwkJdGltZW91dCAkKFRFU1RfVElNRU9VVCkgXAorCQkkKFRBUkdFVF9PVVRfREFUQSkvbmF0aXZldGVzdDY0L2Jpb25pYy11bml0LXRlc3RzL2Jpb25pYy11bml0LXRlc3RzNjQgJChCSU9OSUNfVEVTVF9GTEFHUykKIGVuZGlmCiAKLWlmZXEgKCQoVEFSR0VUX0FSQ0gpLCQoZmlsdGVyICQoVEFSR0VUX0FSQ0gpLHg4Nl82NCkpCi0jIGFkZCB0YXJnZXQgdG8gcnVuIGxwMzIgdGVzdHMKLWJpb25pYy11bml0LXRlc3RzLXJ1bi1vbi1ob3N0MzI6IGJpb25pYy11bml0LXRlc3RzXzMyICQoVEFSR0VUX09VVF9FWEVDVVRBQkxFUykvJChMSU5LRVIpICQoVEFSR0VUX09VVF9FWEVDVVRBQkxFUykvc2gKLQlpZiBbICEgLWQgL3N5c3RlbSAtbyAhIC1kIC9zeXN0ZW0vYmluIF07IHRoZW4gXAotCSAgZWNobyAiQXR0ZW1wdGluZyB0byBjcmVhdGUgL3N5c3RlbS9iaW4iOyBcCi0JICBzdWRvIG1rZGlyIC1wIC1tIDA3NzcgL3N5c3RlbS9iaW47IFwKLQlmaQotCW1rZGlyIC1wICQoVEFSR0VUX09VVF9EQVRBKS9sb2NhbC90bXAKLQljcCAkKFRBUkdFVF9PVVRfRVhFQ1VUQUJMRVMpL2xpbmtlciAvc3lzdGVtL2JpbgotCWNwICQoVEFSR0VUX09VVF9FWEVDVVRBQkxFUykvc2ggL3N5c3RlbS9iaW4KLQlBTkRST0lEX0RBVEE9JChUQVJHRVRfT1VUX0RBVEEpIFwKLQlBTkRST0lEX1JPT1Q9JChUQVJHRVRfT1VUKSBcCi0JTERfTElCUkFSWV9QQVRIPSQoMk5EX1RBUkdFVF9PVVRfU0hBUkVEX0xJQlJBUklFUykgXAotCQkkKDJORF9UQVJHRVRfT1VUX0RBVEFfTkFUSVZFX1RFU1RTKS9iaW9uaWMtdW5pdC10ZXN0cy9iaW9uaWMtdW5pdC10ZXN0czMyICQoQklPTklDX1RFU1RfRkxBR1MpCi1lbmRpZgotCitlbmRpZiAjIHg4NiB4ODZfNjQKIGVuZGlmICMgbGludXgteDg2CiAKIGluY2x1ZGUgJChjYWxsIGZpcnN0LW1ha2VmaWxlcy11bmRlciwkKExPQ0FMX1BBVEgpKQotZW5kaWYgIyAhQlVJTERfVElOWV9BTkRST0lECmRpZmYgLS1naXQgYS90ZXN0cy9CaW9uaWNEZWF0aFRlc3QuaCBiL3Rlc3RzL0Jpb25pY0RlYXRoVGVzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMxZDJkNmUKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9CaW9uaWNEZWF0aFRlc3QuaApAQCAtMCwwICsxLDQxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2lmbmRlZiBCSU9OSUNfVEVTVFNfQklPTklDX0RFQVRIX1RFU1RfSF8KKyNkZWZpbmUgQklPTklDX1RFU1RTX0JJT05JQ19ERUFUSF9URVNUX0hfCisKKyNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgorCisjaW5jbHVkZSA8c3lzL3ByY3RsLmg+CisKK2NsYXNzIEJpb25pY0RlYXRoVGVzdCA6IHB1YmxpYyB0ZXN0aW5nOjpUZXN0IHsKKyBwcm90ZWN0ZWQ6CisgIHZpcnR1YWwgdm9pZCBTZXRVcCgpIHsKKyAgICAvLyBTdXBwcmVzcyBkZWJ1Z2dlcmQgc3RhY2sgdHJhY2VzLiBUb28gc2xvdy4KKyAgICBvbGRfZHVtcGFibGVfID0gcHJjdGwoUFJfR0VUX0RVTVBBQkxFLCAwLCAwLCAwLCAwKTsKKyAgICBwcmN0bChQUl9TRVRfRFVNUEFCTEUsIDAsIDAsIDAsIDApOworICAgIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKKyAgfQorCisgIHZpcnR1YWwgdm9pZCBUZWFyRG93bigpIHsKKyAgICBwcmN0bChQUl9TRVRfRFVNUEFCTEUsIG9sZF9kdW1wYWJsZV8sIDAsIDAsIDAsIDApOworICB9CisKKyBwcml2YXRlOgorICBpbnQgb2xkX2R1bXBhYmxlXzsKK307CisKKyNlbmRpZiAvLyBCSU9OSUNfVEVTVFNfQklPTklDX0RFQVRIX1RFU1RfSF8KZGlmZiAtLWdpdCBhL3Rlc3RzL1Njb3BlZFNpZ25hbEhhbmRsZXIuaCBiL3Rlc3RzL1Njb3BlZFNpZ25hbEhhbmRsZXIuaAppbmRleCAzZWMyM2IwLi4zZmI2MGExIDEwMDY0NAotLS0gYS90ZXN0cy9TY29wZWRTaWduYWxIYW5kbGVyLmgKKysrIGIvdGVzdHMvU2NvcGVkU2lnbmFsSGFuZGxlci5oCkBAIC0xOCwxNyArMTgsMjcgQEAKICNkZWZpbmUgX0JJT05JQ19URVNUU19TQ09QRURfU0lHTkFMX0hBTkRMRVJfSAogCiAjaW5jbHVkZSA8c2lnbmFsLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CiAKIGNsYXNzIFNjb3BlZFNpZ25hbEhhbmRsZXIgewogIHB1YmxpYzoKICAgU2NvcGVkU2lnbmFsSGFuZGxlcihpbnQgc2lnbmFsX251bWJlciwgdm9pZCAoKmhhbmRsZXIpKGludCksIGludCBzYV9mbGFncyA9IDApCiAgICAgICA6IHNpZ25hbF9udW1iZXJfKHNpZ25hbF9udW1iZXIpIHsKLSAgICBzaWdlbXB0eXNldCgmYWN0aW9uXy5zYV9tYXNrKTsKKyAgICBtZW1zZXQoJmFjdGlvbl8sIDAsIHNpemVvZihhY3Rpb25fKSk7CiAgICAgYWN0aW9uXy5zYV9mbGFncyA9IHNhX2ZsYWdzOwogICAgIGFjdGlvbl8uc2FfaGFuZGxlciA9IGhhbmRsZXI7CiAgICAgc2lnYWN0aW9uKHNpZ25hbF9udW1iZXJfLCAmYWN0aW9uXywgJm9sZF9hY3Rpb25fKTsKICAgfQogCisgIFNjb3BlZFNpZ25hbEhhbmRsZXIoaW50IHNpZ25hbF9udW1iZXIsIHZvaWQgKCphY3Rpb24pKGludCwgc2lnaW5mb190Kiwgdm9pZCopLAorICAgICAgICAgICAgICAgICAgICAgIGludCBzYV9mbGFncyA9IFNBX1NJR0lORk8pCisgICAgICA6IHNpZ25hbF9udW1iZXJfKHNpZ25hbF9udW1iZXIpIHsKKyAgICBtZW1zZXQoJmFjdGlvbl8sIDAsIHNpemVvZihhY3Rpb25fKSk7CisgICAgYWN0aW9uXy5zYV9mbGFncyA9IHNhX2ZsYWdzOworICAgIGFjdGlvbl8uc2Ffc2lnYWN0aW9uID0gYWN0aW9uOworICAgIHNpZ2FjdGlvbihzaWduYWxfbnVtYmVyXywgJmFjdGlvbl8sICZvbGRfYWN0aW9uXyk7CisgIH0KKwogICB+U2NvcGVkU2lnbmFsSGFuZGxlcigpIHsKICAgICBzaWdhY3Rpb24oc2lnbmFsX251bWJlcl8sICZvbGRfYWN0aW9uXywgTlVMTCk7CiAgIH0KZGlmZiAtLWdpdCBhL3Rlc3RzL1RlbXBvcmFyeUZpbGUuaCBiL3Rlc3RzL1RlbXBvcmFyeUZpbGUuaAppbmRleCBjNGVlMmQ1Li41YzJmZTRmIDEwMDY0NAotLS0gYS90ZXN0cy9UZW1wb3JhcnlGaWxlLmgKKysrIGIvdGVzdHMvVGVtcG9yYXJ5RmlsZS5oCkBAIC0xNywyNCArMTcsMjYgQEAKICNpbmNsdWRlIDxmY250bC5oPgogI2luY2x1ZGUgPHVuaXN0ZC5oPgogCi10ZW1wbGF0ZTxpbnQgKCpta19mbikoY2hhciopPgorI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX21hY3Jvcy5oIgorCit0ZW1wbGF0ZSA8dHlwZW5hbWUgVCA9IGludCAoKikoY2hhciopPgogY2xhc3MgR2VuZXJpY1RlbXBvcmFyeUZpbGUgewogIHB1YmxpYzoKLSAgR2VuZXJpY1RlbXBvcmFyeUZpbGUoY29uc3QgY2hhciogZGlycGF0aCA9IE5VTEwpIHsKLSAgICBpZiAoZGlycGF0aCAhPSBOVUxMKSB7Ci0gICAgICBpbml0KGRpcnBhdGgpOwotICAgIH0gZWxzZSB7Ci0gICAgICAvLyBTaW5jZSB3ZSBtaWdodCBiZSBydW5uaW5nIG9uIHRoZSBob3N0IG9yIHRoZSB0YXJnZXQsIGFuZCBpZiB3ZSdyZQotICAgICAgLy8gcnVubmluZyBvbiB0aGUgaG9zdCB3ZSBtaWdodCBiZSBydW5uaW5nIHVuZGVyIGJpb25pYyBvciBnbGliYywKLSAgICAgIC8vIGxldCdzIGp1c3QgdHJ5IGJvdGggcG9zc2libGUgdGVtcG9yYXJ5IGRpcmVjdG9yaWVzIGFuZCB0YWtlIHRoZQotICAgICAgLy8gZmlyc3Qgb25lIHRoYXQgd29ya3MuCi0gICAgICBpbml0KCIvZGF0YS9sb2NhbC90bXAiKTsKLSAgICAgIGlmIChmZCA9PSAtMSkgewotICAgICAgICBpbml0KCIvdG1wIik7Ci0gICAgICB9CisgIEdlbmVyaWNUZW1wb3JhcnlGaWxlKFQgbWtfZm4gPSBta3N0ZW1wKSA6IG1rX2ZuKG1rX2ZuKSB7CisgICAgLy8gU2luY2Ugd2UgbWlnaHQgYmUgcnVubmluZyBvbiB0aGUgaG9zdCBvciB0aGUgdGFyZ2V0LCBhbmQgaWYgd2UncmUKKyAgICAvLyBydW5uaW5nIG9uIHRoZSBob3N0IHdlIG1pZ2h0IGJlIHJ1bm5pbmcgdW5kZXIgYmlvbmljIG9yIGdsaWJjLAorICAgIC8vIGxldCdzIGp1c3QgdHJ5IGJvdGggcG9zc2libGUgdGVtcG9yYXJ5IGRpcmVjdG9yaWVzIGFuZCB0YWtlIHRoZQorICAgIC8vIGZpcnN0IG9uZSB0aGF0IHdvcmtzLgorICAgIGluaXQoIi9kYXRhL2xvY2FsL3RtcCIpOworICAgIGlmIChmZCA9PSAtMSkgeworICAgICAgaW5pdCgiL3RtcCIpOwogICAgIH0KICAgfQogCisgIEdlbmVyaWNUZW1wb3JhcnlGaWxlKGNvbnN0IGNoYXIqIGRpcnBhdGgsIFQgbWtfZm4gPSBta3N0ZW1wKSA6IG1rX2ZuKG1rX2ZuKSB7CisgICAgaW5pdChkaXJwYXRoKTsKKyAgfQorCiAgIH5HZW5lcmljVGVtcG9yYXJ5RmlsZSgpIHsKICAgICBjbG9zZShmZCk7CiAgICAgdW5saW5rKGZpbGVuYW1lKTsKQEAgLTQ5LDEzICs1MSwxNyBAQAogICBjaGFyIGZpbGVuYW1lWzEwMjRdOwogCiAgcHJpdmF0ZToKKyAgVCBta19mbjsKKwogICB2b2lkIGluaXQoY29uc3QgY2hhciogdG1wX2RpcikgewogICAgIHNucHJpbnRmKGZpbGVuYW1lLCBzaXplb2YoZmlsZW5hbWUpLCAiJXMvVGVtcG9yYXJ5RmlsZS1YWFhYWFgiLCB0bXBfZGlyKTsKICAgICBmZCA9IG1rX2ZuKGZpbGVuYW1lKTsKICAgfQorCisgIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihHZW5lcmljVGVtcG9yYXJ5RmlsZSk7CiB9OwogCi10eXBlZGVmIEdlbmVyaWNUZW1wb3JhcnlGaWxlPG1rc3RlbXA+IFRlbXBvcmFyeUZpbGU7Cit0eXBlZGVmIEdlbmVyaWNUZW1wb3JhcnlGaWxlPD4gVGVtcG9yYXJ5RmlsZTsKIAogY2xhc3MgVGVtcG9yYXJ5RGlyIHsKICBwdWJsaWM6CkBAIC03Nyw0ICs4Myw1IEBACiAgICAgcmV0dXJuIChta2R0ZW1wKGRpcm5hbWUpICE9IE5VTEwpOwogICB9CiAKKyAgRElTQUxMT1dfQ09QWV9BTkRfQVNTSUdOKFRlbXBvcmFyeURpcik7CiB9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvX19jeGFfdGhyZWFkX2F0ZXhpdF90ZXN0LmNwcCBiL3Rlc3RzL19fY3hhX3RocmVhZF9hdGV4aXRfdGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTM4OGYzYgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL19fY3hhX3RocmVhZF9hdGV4aXRfdGVzdC5jcHAKQEAgLTAsMCArMSwxMjcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KKworI2luY2x1ZGUgPHN0ZGludC5oPgorCisjaW5jbHVkZSA8c3RyaW5nPgorCitzdGF0aWMgc3RkOjpzdHJpbmcgY2xhc3Nfd2l0aF9kdG9yX291dHB1dDsKKworY2xhc3MgQ2xhc3NXaXRoRHRvciB7CisgcHVibGljOgorICB2b2lkIHNldF9tZXNzYWdlKGNvbnN0IHN0ZDo6c3RyaW5nJiBtc2cpIHsKKyAgICBtZXNzYWdlID0gbXNnOworICB9CisKKyAgfkNsYXNzV2l0aER0b3IoKSB7CisgICAgY2xhc3Nfd2l0aF9kdG9yX291dHB1dCArPSBtZXNzYWdlOworICB9CisgcHJpdmF0ZToKKyAgc3RkOjpzdHJpbmcgbWVzc2FnZTsKK307CisKK3N0YXRpYyB0aHJlYWRfbG9jYWwgQ2xhc3NXaXRoRHRvciBjbGFzc193aXRoX2R0b3I7CisKK3N0YXRpYyB2b2lkKiB0aHJlYWRfbm9wKHZvaWQqIGFyZykgeworICBjbGFzc193aXRoX2R0b3Iuc2V0X21lc3NhZ2UoKnN0YXRpY19jYXN0PHN0ZDo6c3RyaW5nKj4oYXJnKSk7CisgIHJldHVybiBudWxscHRyOworfQorCitURVNUKHRocmVhZF9sb2NhbCwgc21va2UpIHsKKyAgc3RkOjpzdHJpbmcgbXNnKCJkdG9yIGNhbGxlZC4iKTsKKyAgcHRocmVhZF90IHQ7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2NyZWF0ZSgmdCwgbnVsbHB0ciwgdGhyZWFkX25vcCwgJm1zZykpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9qb2luKHQsIG51bGxwdHIpKTsKKyAgQVNTRVJUX0VRKCJkdG9yIGNhbGxlZC4iLCBjbGFzc193aXRoX2R0b3Jfb3V0cHV0KTsKK30KKworY2xhc3MgQ2xhc3NXaXRoRHRvckZvck1haW5UaHJlYWQgeworIHB1YmxpYzoKKyAgdm9pZCBzZXRfbWVzc2FnZShjb25zdCBzdGQ6OnN0cmluZyYgbXNnKSB7CisgICAgbWVzc2FnZSA9IG1zZzsKKyAgfQorCisgIH5DbGFzc1dpdGhEdG9yRm9yTWFpblRocmVhZCgpIHsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIiVzIiwgbWVzc2FnZS5jX3N0cigpKTsKKyAgfQorIHByaXZhdGU6CisgIHN0ZDo6c3RyaW5nIG1lc3NhZ2U7Cit9OworCitzdGF0aWMgdm9pZCB0aHJlYWRfYXRleGl0X21haW4oKSB7CisgIHN0YXRpYyB0aHJlYWRfbG9jYWwgQ2xhc3NXaXRoRHRvckZvck1haW5UaHJlYWQgY2xhc3Nfd2l0aF9kdG9yX2Zvcl9tYWluX3RocmVhZDsKKyAgY2xhc3Nfd2l0aF9kdG9yX2Zvcl9tYWluX3RocmVhZC5zZXRfbWVzc2FnZSgiZC10b3IgZm9yIG1haW4gdGhyZWFkIGNhbGxlZC4iKTsKKyAgZXhpdCgwKTsKK30KKworVEVTVCh0aHJlYWRfbG9jYWwsIGR0b3JfZm9yX21haW5fdGhyZWFkKSB7CisgIEFTU0VSVF9FWElUKHRocmVhZF9hdGV4aXRfbWFpbigpLCB0ZXN0aW5nOjpFeGl0ZWRXaXRoQ29kZSgwKSwgImQtdG9yIGZvciBtYWluIHRocmVhZCBjYWxsZWQuIik7Cit9CisKK2V4dGVybiAiQyIgaW50IF9fY3hhX3RocmVhZF9hdGV4aXRfaW1wbCh2b2lkICgqZm4pKHZvaWQqKSwgdm9pZCogYXJnLCB2b2lkKiBkc29faGFuZGxlKTsKKworc3RhdGljIHZvaWQgdGhyZWFkX2F0ZXhpdF9mbjEodm9pZCogYXJnKSB7CisgIHN0ZDo6c3RyaW5nKiBjYWxsX3NlcXVlbmNlID0gc3RhdGljX2Nhc3Q8c3RkOjpzdHJpbmcqPihhcmcpOworICAqY2FsbF9zZXF1ZW5jZSArPSAib25lLCAiOworfQorCitzdGF0aWMgdm9pZCB0aHJlYWRfYXRleGl0X2ZuMih2b2lkKiBhcmcpIHsKKyAgc3RkOjpzdHJpbmcqIGNhbGxfc2VxdWVuY2UgPSBzdGF0aWNfY2FzdDxzdGQ6OnN0cmluZyo+KGFyZyk7CisgICpjYWxsX3NlcXVlbmNlICs9ICJ0d28sICI7Cit9CisKK3N0YXRpYyB2b2lkIHRocmVhZF9hdGV4aXRfZnJvbV9hdGV4aXQodm9pZCogYXJnKSB7CisgIHN0ZDo6c3RyaW5nKiBjYWxsX3NlcXVlbmNlID0gc3RhdGljX2Nhc3Q8c3RkOjpzdHJpbmcqPihhcmcpOworICAqY2FsbF9zZXF1ZW5jZSArPSAib29wcywgIjsKK30KKworc3RhdGljIHZvaWQgdGhyZWFkX2F0ZXhpdF9mbjModm9pZCogYXJnKSB7CisgIF9fY3hhX3RocmVhZF9hdGV4aXRfaW1wbCh0aHJlYWRfYXRleGl0X2Zyb21fYXRleGl0LCBhcmcsIG51bGxwdHIpOworICBzdGQ6OnN0cmluZyogY2FsbF9zZXF1ZW5jZSA9IHN0YXRpY19jYXN0PHN0ZDo6c3RyaW5nKj4oYXJnKTsKKyAgKmNhbGxfc2VxdWVuY2UgKz0gInRocmVlLCAiOworfQorCitzdGF0aWMgdm9pZCB0aHJlYWRfYXRleGl0X2ZuNCh2b2lkKiBhcmcpIHsKKyAgc3RkOjpzdHJpbmcqIGNhbGxfc2VxdWVuY2UgPSBzdGF0aWNfY2FzdDxzdGQ6OnN0cmluZyo+KGFyZyk7CisgICpjYWxsX3NlcXVlbmNlICs9ICJmb3VyLCAiOworfQorCitzdGF0aWMgdm9pZCB0aHJlYWRfYXRleGl0X2ZuNSh2b2lkKiBhcmcpIHsKKyAgc3RkOjpzdHJpbmcqIGNhbGxfc2VxdWVuY2UgPSBzdGF0aWNfY2FzdDxzdGQ6OnN0cmluZyo+KGFyZyk7CisgICpjYWxsX3NlcXVlbmNlICs9ICJmaXZlLiI7Cit9CisKK3N0YXRpYyB2b2lkKiB0aHJlYWRfbWFpbih2b2lkKiBhcmcpIHsKKyAgX19jeGFfdGhyZWFkX2F0ZXhpdF9pbXBsKHRocmVhZF9hdGV4aXRfZm41LCBhcmcsIG51bGxwdHIpOworICBfX2N4YV90aHJlYWRfYXRleGl0X2ltcGwodGhyZWFkX2F0ZXhpdF9mbjQsIGFyZywgbnVsbHB0cik7CisgIF9fY3hhX3RocmVhZF9hdGV4aXRfaW1wbCh0aHJlYWRfYXRleGl0X2ZuMywgYXJnLCBudWxscHRyKTsKKyAgX19jeGFfdGhyZWFkX2F0ZXhpdF9pbXBsKHRocmVhZF9hdGV4aXRfZm4yLCBhcmcsIG51bGxwdHIpOworICBfX2N4YV90aHJlYWRfYXRleGl0X2ltcGwodGhyZWFkX2F0ZXhpdF9mbjEsIGFyZywgbnVsbHB0cik7CisgIHJldHVybiBudWxscHRyOworfQorCitURVNUKF9fY3hhX3RocmVhZF9hdGV4aXRfaW1wbCwgc21va2UpIHsKKyAgc3RkOjpzdHJpbmcgYXRleGl0X2NhbGxfc2VxdWVuY2U7CisKKyAgcHRocmVhZF90IHQ7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2NyZWF0ZSgmdCwgbnVsbHB0ciwgdGhyZWFkX21haW4sICZhdGV4aXRfY2FsbF9zZXF1ZW5jZSkpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9qb2luKHQsIG51bGxwdHIpKTsKKyAgQVNTRVJUX0VRKCJvbmUsIHR3bywgdGhyZWUsIG9vcHMsIGZvdXIsIGZpdmUuIiwgYXRleGl0X2NhbGxfc2VxdWVuY2UpOworfQorCisKZGlmZiAtLWdpdCBhL3Rlc3RzL2F0ZXhpdF90ZXN0LmNwcCBiL3Rlc3RzL2F0ZXhpdF90ZXN0LmNwcAppbmRleCBlMDEyMjBlLi5lOTI4ODlkIDEwMDY0NAotLS0gYS90ZXN0cy9hdGV4aXRfdGVzdC5jcHAKKysrIGIvdGVzdHMvYXRleGl0X3Rlc3QuY3BwCkBAIC0yNCwyMCArMjQsMzMgQEAKIAogI2luY2x1ZGUgPHN0cmluZz4KIAotVEVTVChhdGV4aXQsIGRsY2xvc2UpIHsKK1RFU1QoYXRleGl0LCBzb2ZpbGUpIHsKICAgc3RkOjpzdHJpbmcgYXRleGl0X2NhbGxfc2VxdWVuY2U7CiAgIGJvb2wgdmFsaWRfdGhpc19pbl9zdGF0aWNfZHRvciA9IGZhbHNlOworICBib29sIGF0dHJfZHRvcl9jYWxsZWQgPSBmYWxzZTsKKwogICB2b2lkKiBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3RfYXRleGl0LnNvIiwgUlRMRF9OT1cpOwotICBBU1NFUlRfVFJVRShoYW5kbGUgIT0gTlVMTCk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZSAhPSBudWxscHRyKTsKKworICB0eXBlZGVmIGludCAoKmludF9mbikodm9pZCk7CisgIGludF9mbiBnZXRfY3h4X2N0b3JfY2FsbGVkLCBnZXRfYXR0cl9jdG9yX2NhbGxlZDsKKyAgZ2V0X2N4eF9jdG9yX2NhbGxlZCA9IHJlaW50ZXJwcmV0X2Nhc3Q8aW50X2ZuPihkbHN5bShoYW5kbGUsICJnZXRfY3h4X2N0b3JfY2FsbGVkIikpOworICBnZXRfYXR0cl9jdG9yX2NhbGxlZCA9IHJlaW50ZXJwcmV0X2Nhc3Q8aW50X2ZuPihkbHN5bShoYW5kbGUsICJnZXRfYXR0cl9jdG9yX2NhbGxlZCIpKTsKKyAgQVNTRVJUX1RSVUUoZ2V0X2N4eF9jdG9yX2NhbGxlZCAhPSBudWxscHRyKTsKKyAgQVNTRVJUX1RSVUUoZ2V0X2F0dHJfY3Rvcl9jYWxsZWQgIT0gbnVsbHB0cik7CisKKyAgQVNTRVJUX0VRKDEsIGdldF9jeHhfY3Rvcl9jYWxsZWQoKSk7CisgIEFTU0VSVF9FUSgxLCBnZXRfYXR0cl9jdG9yX2NhbGxlZCgpKTsKIAogICB2b2lkKiBzeW0gPSBkbHN5bShoYW5kbGUsICJyZWdpc3Rlcl9hdGV4aXQiKTsKLSAgQVNTRVJUX1RSVUUoc3ltICE9IE5VTEwpOwotICByZWludGVycHJldF9jYXN0PHZvaWQgKCopKHN0ZDo6c3RyaW5nKiwgYm9vbCopPihzeW0pKCZhdGV4aXRfY2FsbF9zZXF1ZW5jZSwgJnZhbGlkX3RoaXNfaW5fc3RhdGljX2R0b3IpOworICBBU1NFUlRfVFJVRShzeW0gIT0gbnVsbHB0cik7CisgIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCAoKikoc3RkOjpzdHJpbmcqLCBib29sKiwgYm9vbCopPihzeW0pKCZhdGV4aXRfY2FsbF9zZXF1ZW5jZSwgJnZhbGlkX3RoaXNfaW5fc3RhdGljX2R0b3IsICZhdHRyX2R0b3JfY2FsbGVkKTsKIAogICBBU1NFUlRfRVEoMCwgZGxjbG9zZShoYW5kbGUpKTsKICAgLy8gdGhpcyB0ZXN0IHZlcmlmaWVzIGF0ZXhpdCBjYWxsIGZyb20gYXRleGl0IGhhbmRsZXIuIGFzIHdlbGwgYXMgdGhlIG9yZGVyIG9mIGNhbGxzCiAgIEFTU0VSVF9FUSgiSHVtcHR5IER1bXB0eSBzYXQgb24gYSB3YWxsIiwgYXRleGl0X2NhbGxfc2VxdWVuY2UpOwogICBBU1NFUlRfVFJVRSh2YWxpZF90aGlzX2luX3N0YXRpY19kdG9yKTsKKyAgQVNTRVJUX1RSVUUoYXR0cl9kdG9yX2NhbGxlZCk7CiB9CiAKIGNsYXNzIFRlc3RNYWluU3RhdGljRHRvckNsYXNzIHsKQEAgLTU3LDcgKzcwLDcgQEAKICAgc3RhdGljIGNvbnN0IFRlc3RNYWluU3RhdGljRHRvckNsYXNzKiBleHBlY3RlZF90aGlzOwogfTsKIAotY29uc3QgVGVzdE1haW5TdGF0aWNEdG9yQ2xhc3MqIFRlc3RNYWluU3RhdGljRHRvckNsYXNzOjpleHBlY3RlZF90aGlzID0gTlVMTDsKK2NvbnN0IFRlc3RNYWluU3RhdGljRHRvckNsYXNzKiBUZXN0TWFpblN0YXRpY0R0b3JDbGFzczo6ZXhwZWN0ZWRfdGhpcyA9IG51bGxwdHI7CiAKIHN0YXRpYyB2b2lkIGF0ZXhpdF9mdW5jNSgpIHsKICAgZnByaW50ZihzdGRlcnIsICI1Iik7CmRpZmYgLS1naXQgYS90ZXN0cy9jb21wbGV4X3Rlc3QuY3BwIGIvdGVzdHMvY29tcGxleF90ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40Nzk2NGY2Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvY29tcGxleF90ZXN0LmNwcApAQCAtMCwwICsxLDI2MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgorCisvLyBsaWJjKysgYWN0aXZlbHkgZ2V0cyBpbiB0aGUgd2F5IG9mIGluY2x1ZGluZyA8Y29tcGxleC5oPiBmcm9tIEMrKywgc28gd2UKKy8vIGhhdmUgdG8gZGVjbGFyZSB0aGUgY29tcGxleCBtYXRoIGZ1bmN0aW9ucyBvdXJzZWx2ZXMuCisvLyAobGliYysrIGFsc28gc2VlbXMgdG8gaGF2ZSByZWFsbHkgYmFkIGltcGxlbWVudGF0aW9ucyBvZiBpdHMgb3duIHRoYXQgaWdub3JlCisvLyB0aGUgaW50cmljYWNpZXMgb2YgZmxvYXRpbmcgcG9pbnQgbWF0aC4pCisvLyBodHRwOi8vbGx2bS5vcmcvYnVncy9zaG93X2J1Zy5jZ2k/aWQ9MjE1MDQKKworI2luY2x1ZGUgPG1hdGguaD4gLy8gRm9yIE1fUEkuCisKK2V4dGVybiAiQyIgZG91YmxlIGNhYnMoZG91YmxlIF9Db21wbGV4KTsKK1RFU1QoY29tcGxleCwgY2FicykgeworICBBU1NFUlRfRVEoMC4wLCBjYWJzKDApKTsKK30KKworZXh0ZXJuICJDIiBmbG9hdCBjYWJzZihmbG9hdCBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNhYnNmKSB7CisgIEFTU0VSVF9FUSgwLjAsIGNhYnNmKDApKTsKK30KKworZXh0ZXJuICJDIiBsb25nIGRvdWJsZSBjYWJzbChsb25nIGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNhYnNsKSB7CisgIEFTU0VSVF9FUSgwLjAsIGNhYnNsKDApKTsKK30KKworZXh0ZXJuICJDIiBkb3VibGUgX0NvbXBsZXggY2Fjb3MoZG91YmxlIF9Db21wbGV4KTsKK1RFU1QoY29tcGxleCwgY2Fjb3MpIHsKKyAgQVNTRVJUX0VRKE1fUEkvMi4wLCBjYWNvcygwLjApKTsKK30KKworZXh0ZXJuICJDIiBmbG9hdCBfQ29tcGxleCBjYWNvc2YoZmxvYXQgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjYWNvc2YpIHsKKyAgQVNTRVJUX0VRKHN0YXRpY19jYXN0PGZsb2F0PihNX1BJKS8yLjBmLCBjYWNvc2YoMC4wKSk7Cit9CisKK2V4dGVybiAiQyIgZG91YmxlIF9Db21wbGV4IGNhY29zaChkb3VibGUgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjYWNvc2gpIHsKKyAgQVNTRVJUX0VRKDAuMCwgY2Fjb3NoKDEuMCkpOworfQorCitleHRlcm4gIkMiIGZsb2F0IF9Db21wbGV4IGNhY29zaGYoZmxvYXQgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjYWNvc2hmKSB7CisgIEFTU0VSVF9FUSgwLjAsIGNhY29zaGYoMS4wKSk7Cit9CisKK2V4dGVybiAiQyIgZG91YmxlIGNhcmcoZG91YmxlIF9Db21wbGV4KTsKK1RFU1QoY29tcGxleCwgY2FyZykgeworICBBU1NFUlRfRVEoMC4wLCBjYXJnKDApKTsKK30KKworZXh0ZXJuICJDIiBmbG9hdCBjYXJnZihmbG9hdCBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNhcmdmKSB7CisgIEFTU0VSVF9FUSgwLjAsIGNhcmdmKDApKTsKK30KKworZXh0ZXJuICJDIiBsb25nIGRvdWJsZSBjYXJnbChsb25nIGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNhcmdsKSB7CisgIEFTU0VSVF9FUSgwLjAsIGNhcmdsKDApKTsKK30KKworZXh0ZXJuICJDIiBkb3VibGUgX0NvbXBsZXggY2FzaW4oZG91YmxlIF9Db21wbGV4KTsKK1RFU1QoY29tcGxleCwgY2FzaW4pIHsKKyAgQVNTRVJUX0VRKDAuMCwgY2FzaW4oMCkpOworfQorCitleHRlcm4gIkMiIGZsb2F0IF9Db21wbGV4IGNhc2luZihmbG9hdCBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNhc2luZikgeworICBBU1NFUlRfRVEoMC4wLCBjYXNpbmYoMCkpOworfQorCitleHRlcm4gIkMiIGRvdWJsZSBfQ29tcGxleCBjYXNpbmgoZG91YmxlIF9Db21wbGV4KTsKK1RFU1QoY29tcGxleCwgY2FzaW5oKSB7CisgIEFTU0VSVF9FUSgwLjAsIGNhc2luaCgwKSk7Cit9CisKK2V4dGVybiAiQyIgZmxvYXQgX0NvbXBsZXggY2FzaW5oZihmbG9hdCBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNhc2luaGYpIHsKKyAgQVNTRVJUX0VRKDAuMCwgY2FzaW5oZigwKSk7Cit9CisKK2V4dGVybiAiQyIgZG91YmxlIF9Db21wbGV4IGNhdGFuKGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNhdGFuKSB7CisgIEFTU0VSVF9FUSgwLjAsIGNhdGFuKDApKTsKK30KKworZXh0ZXJuICJDIiBmbG9hdCBfQ29tcGxleCBjYXRhbmYoZmxvYXQgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjYXRhbmYpIHsKKyAgQVNTRVJUX0VRKDAuMCwgY2F0YW5mKDApKTsKK30KKworZXh0ZXJuICJDIiBkb3VibGUgX0NvbXBsZXggY2F0YW5oKGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNhdGFuaCkgeworICBBU1NFUlRfRVEoMC4wLCBjYXRhbmgoMCkpOworfQorCitleHRlcm4gIkMiIGZsb2F0IF9Db21wbGV4IGNhdGFuaGYoZmxvYXQgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjYXRhbmhmKSB7CisgIEFTU0VSVF9FUSgwLjAsIGNhdGFuaGYoMCkpOworfQorCitleHRlcm4gIkMiIGRvdWJsZSBfQ29tcGxleCBjY29zKGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNjb3MpIHsKKyAgQVNTRVJUX0VRKDEuMCwgY2NvcygwKSk7Cit9CisKK2V4dGVybiAiQyIgZmxvYXQgX0NvbXBsZXggY2Nvc2YoZmxvYXQgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjY29zZikgeworICBBU1NFUlRfRVEoMS4wLCBjY29zZigwKSk7Cit9CisKK2V4dGVybiAiQyIgZG91YmxlIF9Db21wbGV4IGNjb3NoKGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNjb3NoKSB7CisgIEFTU0VSVF9FUSgxLjAsIGNjb3NoKDApKTsKK30KKworZXh0ZXJuICJDIiBmbG9hdCBfQ29tcGxleCBjY29zaGYoZmxvYXQgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjY29zaGYpIHsKKyAgQVNTRVJUX0VRKDEuMCwgY2Nvc2hmKDApKTsKK30KKworZXh0ZXJuICJDIiBkb3VibGUgX0NvbXBsZXggY2V4cChkb3VibGUgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjZXhwKSB7CisgIEFTU0VSVF9FUSgxLjAsIGNleHAoMCkpOworfQorCitleHRlcm4gIkMiIGZsb2F0IF9Db21wbGV4IGNleHBmKGZsb2F0IF9Db21wbGV4KTsKK1RFU1QoY29tcGxleCwgY2V4cGYpIHsKKyAgQVNTRVJUX0VRKDEuMCwgY2V4cGYoMCkpOworfQorCitleHRlcm4gIkMiIGRvdWJsZSBjaW1hZyhkb3VibGUgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjaW1hZykgeworICBBU1NFUlRfRVEoMC4wLCBjaW1hZygwKSk7Cit9CisKK2V4dGVybiAiQyIgZmxvYXQgY2ltYWdmKGZsb2F0IF9Db21wbGV4KTsKK1RFU1QoY29tcGxleCwgY2ltYWdmKSB7CisgIEFTU0VSVF9FUSgwLjBmLCBjaW1hZ2YoMCkpOworfQorCitleHRlcm4gIkMiIGxvbmcgZG91YmxlIGNpbWFnbChsb25nIGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNpbWFnbCkgeworICBBU1NFUlRfRVEoMC4wLCBjaW1hZ2woMCkpOworfQorCitleHRlcm4gIkMiIGRvdWJsZSBfQ29tcGxleCBjb25qKGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNvbmopIHsKKyAgQVNTRVJUX0VRKDAuMCwgY29uaigwKSk7Cit9CisKK2V4dGVybiAiQyIgZmxvYXQgX0NvbXBsZXggY29uamYoZmxvYXQgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjb25qZikgeworICBBU1NFUlRfRVEoMC4wZiwgY29uamYoMCkpOworfQorCitleHRlcm4gIkMiIGxvbmcgZG91YmxlIF9Db21wbGV4IGNvbmpsKGxvbmcgZG91YmxlIF9Db21wbGV4KTsKK1RFU1QoY29tcGxleCwgY29uamwpIHsKKyAgQVNTRVJUX0VRKDAuMCwgY29uamwoMCkpOworfQorCitleHRlcm4gIkMiIGRvdWJsZSBfQ29tcGxleCBjcHJvaihkb3VibGUgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjcHJvaikgeworICBBU1NFUlRfRVEoMC4wLCBjcHJvaigwKSk7Cit9CisKK2V4dGVybiAiQyIgZmxvYXQgX0NvbXBsZXggY3Byb2pmKGZsb2F0IF9Db21wbGV4KTsKK1RFU1QoY29tcGxleCwgY3Byb2pmKSB7CisgIEFTU0VSVF9FUSgwLjBmLCBjcHJvamYoMCkpOworfQorCitleHRlcm4gIkMiIGxvbmcgZG91YmxlIF9Db21wbGV4IGNwcm9qbChsb25nIGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNwcm9qbCkgeworICBBU1NFUlRfRVEoMC4wLCBjcHJvamwoMCkpOworfQorCitleHRlcm4gIkMiIGRvdWJsZSBjcmVhbChkb3VibGUgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjcmVhbCkgeworICBBU1NFUlRfRVEoMC4wLCBjcmVhbCgwKSk7Cit9CisKK2V4dGVybiAiQyIgZmxvYXQgY3JlYWxmKGZsb2F0IF9Db21wbGV4KTsKK1RFU1QoY29tcGxleCwgY3JlYWxmKSB7CisgIEFTU0VSVF9FUSgwLjBmLCBjcmVhbGYoMCkpOworfQorCitleHRlcm4gIkMiIGxvbmcgZG91YmxlIGNyZWFsbChsb25nIGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNyZWFsbCkgeworICBBU1NFUlRfRVEoMC4wLCBjcmVhbGwoMCkpOworfQorCitleHRlcm4gIkMiIGRvdWJsZSBfQ29tcGxleCBjc2luKGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNzaW4pIHsKKyAgQVNTRVJUX0VRKDAuMCwgY3NpbigwKSk7Cit9CisKK2V4dGVybiAiQyIgZmxvYXQgX0NvbXBsZXggY3NpbmYoZmxvYXQgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjc2luZikgeworICBBU1NFUlRfRVEoMC4wLCBjc2luZigwKSk7Cit9CisKK2V4dGVybiAiQyIgZG91YmxlIF9Db21wbGV4IGNzaW5oKGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNzaW5oKSB7CisgIEFTU0VSVF9FUSgwLjAsIGNzaW5oKDApKTsKK30KKworZXh0ZXJuICJDIiBmbG9hdCBfQ29tcGxleCBjc2luaGYoZmxvYXQgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjc2luaGYpIHsKKyAgQVNTRVJUX0VRKDAuMCwgY3NpbmhmKDApKTsKK30KKworZXh0ZXJuICJDIiBkb3VibGUgX0NvbXBsZXggY3NxcnQoZG91YmxlIF9Db21wbGV4KTsKK1RFU1QoY29tcGxleCwgY3NxcnQpIHsKKyAgQVNTRVJUX0VRKDAuMCwgY3NxcnQoMCkpOworfQorCitleHRlcm4gIkMiIGZsb2F0IF9Db21wbGV4IGNzcXJ0ZihmbG9hdCBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNzcXJ0ZikgeworICBBU1NFUlRfRVEoMC4wZiwgY3NxcnQoMCkpOworfQorCitleHRlcm4gIkMiIGxvbmcgZG91YmxlIF9Db21wbGV4IGNzcXJ0bChsb25nIGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGNzcXJ0bCkgeworICBBU1NFUlRfRVEoMC4wLCBjc3FydGwoMCkpOworfQorCitleHRlcm4gIkMiIGRvdWJsZSBfQ29tcGxleCBjdGFuKGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGN0YW4pIHsKKyAgQVNTRVJUX0VRKDAuMCwgY3RhbigwKSk7Cit9CisKK2V4dGVybiAiQyIgZmxvYXQgX0NvbXBsZXggY3RhbmYoZmxvYXQgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjdGFuZikgeworICBBU1NFUlRfRVEoMC4wLCBjdGFuZigwKSk7Cit9CisKK2V4dGVybiAiQyIgZG91YmxlIF9Db21wbGV4IGN0YW5oKGRvdWJsZSBfQ29tcGxleCk7CitURVNUKGNvbXBsZXgsIGN0YW5oKSB7CisgIEFTU0VSVF9FUSgwLjAsIGN0YW5oKDApKTsKK30KKworZXh0ZXJuICJDIiBmbG9hdCBfQ29tcGxleCBjdGFuaGYoZmxvYXQgX0NvbXBsZXgpOworVEVTVChjb21wbGV4LCBjdGFuaGYpIHsKKyAgQVNTRVJUX0VRKDAuMCwgY3RhbmhmKDApKTsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL2RpcmVudF90ZXN0LmNwcCBiL3Rlc3RzL2RpcmVudF90ZXN0LmNwcAppbmRleCA2YWFkYjM3Li4yMTRkZDc4IDEwMDY0NAotLS0gYS90ZXN0cy9kaXJlbnRfdGVzdC5jcHAKKysrIGIvdGVzdHMvZGlyZW50X3Rlc3QuY3BwCkBAIC0yMzEsMyArMjMxLDUwIEBACiAgICAgQVNTRVJUX0VRKHBhc3MxW2ldLCBwYXNzMltpXSk7CiAgIH0KIH0KKworVEVTVChkaXJlbnQsIHNlZWtkaXJfdGVsbGRpcikgeworICBESVIqIGQgPSBvcGVuZGlyKCIvcHJvYy9zZWxmIik7CisgIEFTU0VSVF9UUlVFKGQgIT0gTlVMTCk7CisgIHN0ZDo6dmVjdG9yPGxvbmc+IG9mZnNldF9saXN0OworICBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gbmFtZV9saXN0OworICBkaXJlbnQqIGUgPSBOVUxMOworCisgIG9mZnNldF9saXN0LnB1c2hfYmFjayh0ZWxsZGlyKGQpKTsKKyAgQVNTRVJUX0VRKDBMLCBvZmZzZXRfbGlzdC5iYWNrKCkpOworCisgIHdoaWxlICgoZSA9IHJlYWRkaXIoZCkpICE9IE5VTEwpIHsKKyAgICBuYW1lX2xpc3QucHVzaF9iYWNrKGUtPmRfbmFtZSk7CisgICAgb2Zmc2V0X2xpc3QucHVzaF9iYWNrKHRlbGxkaXIoZCkpOworICAgIC8vIE1ha2Ugc3VyZSB0ZWxsZGlyKCkgcG9pbnQgdG8gdGhlIG5leHQgZW50cnkuCisgICAgQVNTRVJUX0VRKGUtPmRfb2ZmLCBvZmZzZXRfbGlzdC5iYWNrKCkpOworICB9CisKKyAgbG9uZyBlbmRfb2Zmc2V0ID0gdGVsbGRpcihkKTsKKyAgLy8gdGVsbGRpcigpIHNob3VsZCBub3QgcGFzcyB0aGUgZW5kIG9mIHRoZSBmaWxlLgorICBBU1NFUlRfRVEob2Zmc2V0X2xpc3QuYmFjaygpLCBlbmRfb2Zmc2V0KTsKKyAgb2Zmc2V0X2xpc3QucG9wX2JhY2soKTsKKworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG9mZnNldF9saXN0LnNpemUoKTsgKytpKSB7CisgICAgc2Vla2RpcihkLCBvZmZzZXRfbGlzdFtpXSk7CisgICAgQVNTRVJUX0VRKG9mZnNldF9saXN0W2ldLCB0ZWxsZGlyKGQpKTsKKyAgICBlID0gcmVhZGRpcihkKTsKKyAgICBBU1NFUlRfVFJVRShlICE9IE5VTEwpOworICAgIEFTU0VSVF9TVFJFUShuYW1lX2xpc3RbaV0uY19zdHIoKSwgZS0+ZF9uYW1lKTsKKyAgfQorICBmb3IgKGludCBpID0gc3RhdGljX2Nhc3Q8aW50PihvZmZzZXRfbGlzdC5zaXplKCkpIC0gMTsgaSA+PSAwOyAtLWkpIHsKKyAgICBzZWVrZGlyKGQsIG9mZnNldF9saXN0W2ldKTsKKyAgICBBU1NFUlRfRVEob2Zmc2V0X2xpc3RbaV0sIHRlbGxkaXIoZCkpOworICAgIGUgPSByZWFkZGlyKGQpOworICAgIEFTU0VSVF9UUlVFKGUgIT0gTlVMTCk7CisgICAgQVNTRVJUX1NUUkVRKG5hbWVfbGlzdFtpXS5jX3N0cigpLCBlLT5kX25hbWUpOworICB9CisKKyAgLy8gU2VlayB0byB0aGUgZW5kLCByZWFkIE5VTEwuCisgIHNlZWtkaXIoZCwgZW5kX29mZnNldCk7CisgIEFTU0VSVF9FUShlbmRfb2Zmc2V0LCB0ZWxsZGlyKGQpKTsKKyAgZXJybm8gPSAwOworICBBU1NFUlRfRVEoTlVMTCwgcmVhZGRpcihkKSk7CisgIEFTU0VSVF9FUSgwLCBlcnJubyk7CisKKyAgQVNTRVJUX0VRKDAsIGNsb3NlZGlyKGQpKTsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL2RsX3Rlc3QuY3BwIGIvdGVzdHMvZGxfdGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzRjN2I1MQotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2RsX3Rlc3QuY3BwCkBAIC0wLDAgKzEsNzIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KKworI2luY2x1ZGUgPGRsZmNuLmg+CisjaW5jbHVkZSA8bGliZ2VuLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKworI2luY2x1ZGUgPHN0cmluZz4KKworZXh0ZXJuICJDIiBpbnQgbWFpbl9nbG9iYWxfZGVmYXVsdF9zZXJpYWwoKSB7CisgIHJldHVybiAzMzcwMzE4OworfQorCitleHRlcm4gIkMiIGludCBtYWluX2dsb2JhbF9wcm90ZWN0ZWRfc2VyaWFsKCkgeworICByZXR1cm4gMjcxNjA1NzsKK30KKworLy8gVGhlIGZvbGxvd2luZyBmdW5jdGlvbnMgYXJlIGRlZmluZWQgaW4gRFRfTkVFREVECisvLyBsaWJkbF9wcmVlbXB0X3Rlc3Quc28gbGlicmFyeS4KKworLy8gVGhpcyBvbmUgY2FsbHMgbWFpbl9nbG9iYWxfZGVmYXVsdF9zZXJpYWwKK2V4dGVybiAiQyIgaW50IG1haW5fZ2xvYmFsX2RlZmF1bHRfZ2V0X3NlcmlhbCgpOworCisvLyBUaGlzIG9uZSBjYWxscyBtYWluX2dsb2JhbF9wcm90ZWN0ZWRfc2VyaWFsCitleHRlcm4gIkMiIGludCBtYWluX2dsb2JhbF9wcm90ZWN0ZWRfZ2V0X3NlcmlhbCgpOworCisvLyBUaGlzIG9uZSBjYWxscyBsaWJfZ2xvYmFsX2RlZmF1bHRfc2VyaWFsCitleHRlcm4gIkMiIGludCBsaWJfZ2xvYmFsX2RlZmF1bHRfZ2V0X3NlcmlhbCgpOworCisvLyBUaGlzIG9uZSBjYWxscyBsaWJfZ2xvYmFsX3Byb3RlY3RlZF9zZXJpYWwKK2V4dGVybiAiQyIgaW50IGxpYl9nbG9iYWxfcHJvdGVjdGVkX2dldF9zZXJpYWwoKTsKKworLy8gVGhpcyB0ZXN0IHZlcmlmaWVzIHRoYXQgdGhlIGdsb2JhbCBkZWZhdWx0IGZ1bmN0aW9uCisvLyBtYWluX2dsb2JhbF9kZWZhdWx0X3NlcmlhbCgpIGlzIHByZWVtcHRlZCBieQorLy8gdGhlIGZ1bmN0aW9uIGRlZmluZWQgYWJvdmUuCitURVNUKGRsLCBtYWluX3ByZWVtcHRzX2dsb2JhbF9kZWZhdWx0KSB7CisgIEFTU0VSVF9FUSgzMzcwMzE4LCBtYWluX2dsb2JhbF9kZWZhdWx0X2dldF9zZXJpYWwoKSk7Cit9CisKKy8vIFRoaXMgb25lIG1ha2VzIHN1cmUgdGhhdCB0aGUgZ2xvYmFsIHByb3RlY3RlZAorLy8gc3ltYm9scyBkbyBub3QgZ2V0IHByZWVtcHRlZAorVEVTVChkbCwgbWFpbl9kb2VzX25vdF9wcmVlbXB0X2dsb2JhbF9wcm90ZWN0ZWQpIHsKKyAgQVNTRVJUX0VRKDMzNzAzMTgsIG1haW5fZ2xvYmFsX3Byb3RlY3RlZF9nZXRfc2VyaWFsKCkpOworfQorCisvLyBjaGVjayBzYW1lIHRoaW5ncyBmb3IgbGliCitURVNUKGRsLCBsaWJfcHJlZW1wdHNfZ2xvYmFsX2RlZmF1bHQpIHsKKyAgQVNTRVJUX0VRKDMzNzAzMTgsIGxpYl9nbG9iYWxfZGVmYXVsdF9nZXRfc2VyaWFsKCkpOworfQorCitURVNUKGRsLCBsaWJfZG9lc19ub3RfcHJlZW1wdF9nbG9iYWxfcHJvdGVjdGVkKSB7CisgIEFTU0VSVF9FUSgzMzcwMzE4LCBsaWJfZ2xvYmFsX3Byb3RlY3RlZF9nZXRfc2VyaWFsKCkpOworfQorCisvLyBUT0RPOiBBZGQgdGVzdHMgZm9yIExEX1BSRUxPQURzCmRpZmYgLS1naXQgYS90ZXN0cy9kbGV4dF90ZXN0LmNwcCBiL3Rlc3RzL2RsZXh0X3Rlc3QuY3BwCmluZGV4IDdmNzA2YzEuLjU2YThmNmYgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2RsZXh0X3Rlc3QuY3BwCisrKyBiL3Rlc3RzL2RsZXh0X3Rlc3QuY3BwCkBAIC0xNyw4ICsxNywxMCBAQAogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CiAKICNpbmNsdWRlIDxkbGZjbi5oPgorI2luY2x1ZGUgPGVsZi5oPgogI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxpbnR0eXBlcy5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CkBAIC0yOSw2ICszMSw3IEBACiAKICNpbmNsdWRlIDxwYWdlbWFwL3BhZ2VtYXAuaD4KIAorI2luY2x1ZGUgIlRlbXBvcmFyeUZpbGUuaCIKIAogI2RlZmluZSBBU1NFUlRfRExfTk9UTlVMTChwdHIpIFwKICAgICBBU1NFUlRfVFJVRShwdHIgIT0gbnVsbHB0cikgPDwgImRsZXJyb3I6ICIgPDwgZGxlcnJvcigpCkBAIC0zOSw2ICs0Miw5IEBACiAjZGVmaW5lIEFTU0VSVF9OT0VSUk9SKGkpIFwKICAgICBBU1NFUlRfTkUoLTEsIGkpIDw8ICJlcnJubzogIiA8PCBzdHJlcnJvcihlcnJubykKIAorI2RlZmluZSBBU1NFUlRfU1VCU1RSKG5lZWRsZSwgaGF5c3RhY2spIFwKKyAgICBBU1NFUlRfUFJFRF9GT1JNQVQyKDo6dGVzdGluZzo6SXNTdWJzdHJpbmcsIG5lZWRsZSwgaGF5c3RhY2spCisKIAogdHlwZWRlZiBpbnQgKCpmbikodm9pZCk7CiAjZGVmaW5lIExJQk5BTUUgImxpYmRsZXh0X3Rlc3Quc28iCkBAIC00Niw5ICs1Miw5IEBACiAjZGVmaW5lIExJQlNJWkUgMTAyNCoxMDI0IC8vIGhvdyBtdWNoIGFkZHJlc3Mgc3BhY2UgdG8gcmVzZXJ2ZSBmb3IgaXQKIAogI2lmIGRlZmluZWQoX19MUDY0X18pCi0jZGVmaW5lIExJQlBBVEhfUFJFRklYICIlcy9uYXRpdmV0ZXN0NjQvbGliZGxleHRfdGVzdF9mZC8iCisjZGVmaW5lIExJQlBBVEhfUFJFRklYICIvbmF0aXZldGVzdDY0L2xpYmRsZXh0X3Rlc3RfZmQvIgogI2Vsc2UKLSNkZWZpbmUgTElCUEFUSF9QUkVGSVggIiVzL25hdGl2ZXRlc3QvbGliZGxleHRfdGVzdF9mZC8iCisjZGVmaW5lIExJQlBBVEhfUFJFRklYICIvbmF0aXZldGVzdC9saWJkbGV4dF90ZXN0X2ZkLyIKICNlbmRpZgogCiAjZGVmaW5lIExJQlBBVEggTElCUEFUSF9QUkVGSVggImxpYmRsZXh0X3Rlc3RfZmQuc28iCkBAIC05NywxNiArMTAzLDEzIEBACiB9CiAKIFRFU1RfRihEbEV4dFRlc3QsIEV4dEluZm9Vc2VGZCkgewotICBjb25zdCBjaGFyKiBhbmRyb2lkX2RhdGEgPSBnZXRlbnYoIkFORFJPSURfREFUQSIpOwotICBBU1NFUlRfVFJVRShhbmRyb2lkX2RhdGEgIT0gbnVsbHB0cik7Ci0gIGNoYXIgbGliX3BhdGhbUEFUSF9NQVhdOwotICBzbnByaW50ZihsaWJfcGF0aCwgc2l6ZW9mKGxpYl9wYXRoKSwgTElCUEFUSCwgYW5kcm9pZF9kYXRhKTsKKyAgY29uc3Qgc3RkOjpzdHJpbmcgbGliX3BhdGggPSBzdGQ6OnN0cmluZyhnZXRlbnYoIkFORFJPSURfREFUQSIpKSArIExJQlBBVEg7CiAKICAgYW5kcm9pZF9kbGV4dGluZm8gZXh0aW5mbzsKICAgZXh0aW5mby5mbGFncyA9IEFORFJPSURfRExFWFRfVVNFX0xJQlJBUllfRkQ7Ci0gIGV4dGluZm8ubGlicmFyeV9mZCA9IFRFTVBfRkFJTFVSRV9SRVRSWShvcGVuKGxpYl9wYXRoLCBPX1JET05MWSB8IE9fQ0xPRVhFQykpOworICBleHRpbmZvLmxpYnJhcnlfZmQgPSBURU1QX0ZBSUxVUkVfUkVUUlkob3BlbihsaWJfcGF0aC5jX3N0cigpLCBPX1JET05MWSB8IE9fQ0xPRVhFQykpOwogICBBU1NFUlRfVFJVRShleHRpbmZvLmxpYnJhcnlfZmQgIT0gLTEpOwotICBoYW5kbGVfID0gYW5kcm9pZF9kbG9wZW5fZXh0KGxpYl9wYXRoLCBSVExEX05PVywgJmV4dGluZm8pOworICBoYW5kbGVfID0gYW5kcm9pZF9kbG9wZW5fZXh0KGxpYl9wYXRoLmNfc3RyKCksIFJUTERfTk9XLCAmZXh0aW5mbyk7CiAgIEFTU0VSVF9ETF9OT1ROVUxMKGhhbmRsZV8pOwogICBmbiBmID0gcmVpbnRlcnByZXRfY2FzdDxmbj4oZGxzeW0oaGFuZGxlXywgImdldFJhbmRvbU51bWJlciIpKTsKICAgQVNTRVJUX0RMX05PVE5VTEwoZik7CkBAIC0xMTQsMTggKzExNywxNCBAQAogfQogCiBURVNUX0YoRGxFeHRUZXN0LCBFeHRJbmZvVXNlRmRXaXRoT2Zmc2V0KSB7Ci0gIGNvbnN0IGNoYXIqIGFuZHJvaWRfZGF0YSA9IGdldGVudigiQU5EUk9JRF9EQVRBIik7Ci0gIEFTU0VSVF9UUlVFKGFuZHJvaWRfZGF0YSAhPSBudWxscHRyKTsKLQotICBjaGFyIGxpYl9wYXRoW1BBVEhfTUFYXTsKLSAgc25wcmludGYobGliX3BhdGgsIHNpemVvZihsaWJfcGF0aCksIExJQlpJUFBBVEgsIGFuZHJvaWRfZGF0YSk7CisgIGNvbnN0IHN0ZDo6c3RyaW5nIGxpYl9wYXRoID0gc3RkOjpzdHJpbmcoZ2V0ZW52KCJBTkRST0lEX0RBVEEiKSkgKyBMSUJaSVBQQVRIOwogCiAgIGFuZHJvaWRfZGxleHRpbmZvIGV4dGluZm87CiAgIGV4dGluZm8uZmxhZ3MgPSBBTkRST0lEX0RMRVhUX1VTRV9MSUJSQVJZX0ZEIHwgQU5EUk9JRF9ETEVYVF9VU0VfTElCUkFSWV9GRF9PRkZTRVQ7Ci0gIGV4dGluZm8ubGlicmFyeV9mZCA9IFRFTVBfRkFJTFVSRV9SRVRSWShvcGVuKGxpYl9wYXRoLCBPX1JET05MWSB8IE9fQ0xPRVhFQykpOworICBleHRpbmZvLmxpYnJhcnlfZmQgPSBURU1QX0ZBSUxVUkVfUkVUUlkob3BlbihsaWJfcGF0aC5jX3N0cigpLCBPX1JET05MWSB8IE9fQ0xPRVhFQykpOwogICBleHRpbmZvLmxpYnJhcnlfZmRfb2Zmc2V0ID0gTElCWklQX09GRlNFVDsKIAotICBoYW5kbGVfID0gYW5kcm9pZF9kbG9wZW5fZXh0KGxpYl9wYXRoLCBSVExEX05PVywgJmV4dGluZm8pOworICBoYW5kbGVfID0gYW5kcm9pZF9kbG9wZW5fZXh0KGxpYl9wYXRoLmNfc3RyKCksIFJUTERfTk9XLCAmZXh0aW5mbyk7CiAgIEFTU0VSVF9ETF9OT1ROVUxMKGhhbmRsZV8pOwogCiAgIGZuIGYgPSByZWludGVycHJldF9jYXN0PGZuPihkbHN5bShoYW5kbGVfLCAiZ2V0UmFuZG9tTnVtYmVyIikpOwpAQCAtMTM0LDI3ICsxMzMsMzYgQEAKIH0KIAogVEVTVF9GKERsRXh0VGVzdCwgRXh0SW5mb1VzZUZkV2l0aEludmFsaWRPZmZzZXQpIHsKLSAgY29uc3QgY2hhciogYW5kcm9pZF9kYXRhID0gZ2V0ZW52KCJBTkRST0lEX0RBVEEiKTsKLSAgQVNTRVJUX1RSVUUoYW5kcm9pZF9kYXRhICE9IG51bGxwdHIpOwotCi0gIGNoYXIgbGliX3BhdGhbUEFUSF9NQVhdOwotICBzbnByaW50ZihsaWJfcGF0aCwgc2l6ZW9mKGxpYl9wYXRoKSwgTElCWklQUEFUSCwgYW5kcm9pZF9kYXRhKTsKKyAgY29uc3Qgc3RkOjpzdHJpbmcgbGliX3BhdGggPSBzdGQ6OnN0cmluZyhnZXRlbnYoIkFORFJPSURfREFUQSIpKSArIExJQlpJUFBBVEg7CisgIC8vIGxpYl9wYXRoIGlzIHJlbGF0aXZlIHdoZW4gJEFORFJPSURfREFUQSBpcyByZWxhdGl2ZQorICBjaGFyIGxpYl9yZWFscGF0aF9idWZbUEFUSF9NQVhdOworICBBU1NFUlRfVFJVRShyZWFscGF0aChsaWJfcGF0aC5jX3N0cigpLCBsaWJfcmVhbHBhdGhfYnVmKSA9PSBsaWJfcmVhbHBhdGhfYnVmKTsKKyAgY29uc3Qgc3RkOjpzdHJpbmcgbGliX3JlYWxwYXRoID0gc3RkOjpzdHJpbmcobGliX3JlYWxwYXRoX2J1Zik7CiAKICAgYW5kcm9pZF9kbGV4dGluZm8gZXh0aW5mbzsKICAgZXh0aW5mby5mbGFncyA9IEFORFJPSURfRExFWFRfVVNFX0xJQlJBUllfRkQgfCBBTkRST0lEX0RMRVhUX1VTRV9MSUJSQVJZX0ZEX09GRlNFVDsKLSAgZXh0aW5mby5saWJyYXJ5X2ZkID0gVEVNUF9GQUlMVVJFX1JFVFJZKG9wZW4obGliX3BhdGgsIE9fUkRPTkxZIHwgT19DTE9FWEVDKSk7CisgIGV4dGluZm8ubGlicmFyeV9mZCA9IFRFTVBfRkFJTFVSRV9SRVRSWShvcGVuKGxpYl9wYXRoLmNfc3RyKCksIE9fUkRPTkxZIHwgT19DTE9FWEVDKSk7CiAgIGV4dGluZm8ubGlicmFyeV9mZF9vZmZzZXQgPSAxNzsKIAogICBoYW5kbGVfID0gYW5kcm9pZF9kbG9wZW5fZXh0KCJsaWJuYW1lX3BsYWNlaG9sZGVyIiwgUlRMRF9OT1csICZleHRpbmZvKTsKICAgQVNTRVJUX1RSVUUoaGFuZGxlXyA9PSBudWxscHRyKTsKICAgQVNTRVJUX1NUUkVRKCJkbG9wZW4gZmFpbGVkOiBmaWxlIG9mZnNldCBmb3IgdGhlIGxpYnJhcnkgXCJsaWJuYW1lX3BsYWNlaG9sZGVyXCIgaXMgbm90IHBhZ2UtYWxpZ25lZDogMTciLCBkbGVycm9yKCkpOwogCi0gIGV4dGluZm8ubGlicmFyeV9mZF9vZmZzZXQgPSAoNUxMPDw1OCkgKyBQQUdFX1NJWkU7CisgIC8vIFRlc3QgYW4gYWRkcmVzcyBhYm92ZSAyXjQ0LCBmb3IgaHR0cDovL2IvMTgxNzgxMjEgLgorICBleHRpbmZvLmxpYnJhcnlfZmRfb2Zmc2V0ID0gKDVMTDw8NDgpICsgUEFHRV9TSVpFOwogICBoYW5kbGVfID0gYW5kcm9pZF9kbG9wZW5fZXh0KCJsaWJuYW1lX3BsYWNlaG9sZGVyIiwgUlRMRF9OT1csICZleHRpbmZvKTsKLQogICBBU1NFUlRfVFJVRShoYW5kbGVfID09IG51bGxwdHIpOwotICAvLyBUT0RPOiBCZXR0ZXIgZXJyb3IgbWVzc2FnZSB3aGVuIHJlYWRpbmcgd2l0aCBvZmZzZXQgPiBmaWxlX3NpemUKLSAgQVNTRVJUX1NUUkVRKCJkbG9wZW4gZmFpbGVkOiBcImxpYm5hbWVfcGxhY2Vob2xkZXJcIiBoYXMgYmFkIEVMRiBtYWdpYyIsIGRsZXJyb3IoKSk7CisgIEFTU0VSVF9TVUJTVFIoImRsb3BlbiBmYWlsZWQ6IGZpbGUgb2Zmc2V0IGZvciB0aGUgbGlicmFyeSBcImxpYm5hbWVfcGxhY2Vob2xkZXJcIiA+PSBmaWxlIHNpemUiLCBkbGVycm9yKCkpOworCisgIGV4dGluZm8ubGlicmFyeV9mZF9vZmZzZXQgPSAwTEwgLSBQQUdFX1NJWkU7CisgIGhhbmRsZV8gPSBhbmRyb2lkX2Rsb3Blbl9leHQoImxpYm5hbWVfcGxhY2Vob2xkZXIiLCBSVExEX05PVywgJmV4dGluZm8pOworICBBU1NFUlRfVFJVRShoYW5kbGVfID09IG51bGxwdHIpOworICBBU1NFUlRfU1VCU1RSKCJkbG9wZW4gZmFpbGVkOiBmaWxlIG9mZnNldCBmb3IgdGhlIGxpYnJhcnkgXCJsaWJuYW1lX3BsYWNlaG9sZGVyXCIgaXMgbmVnYXRpdmUiLCBkbGVycm9yKCkpOworCisgIGV4dGluZm8ubGlicmFyeV9mZF9vZmZzZXQgPSBQQUdFX1NJWkU7CisgIGhhbmRsZV8gPSBhbmRyb2lkX2Rsb3Blbl9leHQoImxpYm5hbWVfaWdub3JlZCIsIFJUTERfTk9XLCAmZXh0aW5mbyk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZV8gPT0gbnVsbHB0cik7CisgIEFTU0VSVF9FUSgiZGxvcGVuIGZhaWxlZDogXCIiICsgbGliX3JlYWxwYXRoICsgIlwiIGhhcyBiYWQgRUxGIG1hZ2ljIiwgZGxlcnJvcigpKTsKIAogICBjbG9zZShleHRpbmZvLmxpYnJhcnlfZmQpOwogfQpAQCAtMTY5LDYgKzE3Nyw4MCBAQAogICBBU1NFUlRfU1RSRVEoImRsb3BlbiBmYWlsZWQ6IGludmFsaWQgZXh0ZW5kZWQgZmxhZyBjb21iaW5hdGlvbiAoQU5EUk9JRF9ETEVYVF9VU0VfTElCUkFSWV9GRF9PRkZTRVQgd2l0aG91dCBBTkRST0lEX0RMRVhUX1VTRV9MSUJSQVJZX0ZEKTogMHgyMCIsIGRsZXJyb3IoKSk7CiB9CiAKK1RFU1QoZGxleHQsIGFuZHJvaWRfZGxvcGVuX2V4dF9mb3JjZV9sb2FkX3Ntb2tlKSB7CisgIC8vIDEuIE9wZW4gYWN0dWFsIGZpbGUKKyAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJsaWJkbGV4dF90ZXN0LnNvIiwgUlRMRF9OT1cpOworICBBU1NFUlRfRExfTk9UTlVMTChoYW5kbGUpOworICAvLyAyLiBPcGVuIGxpbmsgd2l0aCBmb3JjZV9sb2FkIGZsYWcgc2V0CisgIGFuZHJvaWRfZGxleHRpbmZvIGV4dGluZm87CisgIGV4dGluZm8uZmxhZ3MgPSBBTkRST0lEX0RMRVhUX0ZPUkNFX0xPQUQ7CisgIHZvaWQqIGhhbmRsZTIgPSBhbmRyb2lkX2Rsb3Blbl9leHQoImxpYmRsZXh0X3Rlc3RfdjIuc28iLCBSVExEX05PVywgJmV4dGluZm8pOworICBBU1NFUlRfRExfTk9UTlVMTChoYW5kbGUyKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IGhhbmRsZTIpOworCisgIGRsY2xvc2UoaGFuZGxlMik7CisgIGRsY2xvc2UoaGFuZGxlKTsKK30KKworVEVTVChkbGV4dCwgYW5kcm9pZF9kbG9wZW5fZXh0X2ZvcmNlX2xvYWRfc29uYW1lX2V4Y2VwdGlvbikgeworICAvLyBDaGVjayBpZiBzb25hbWUgbG9va3VwIHN0aWxsIHJldHVybnMgYWxyZWFkeSBsb2FkZWQgbGlicmFyeQorICAvLyB3aGVuIEFORFJPSURfRExFWFRfRk9SQ0VfTE9BRCBmbGFnIGlzIHNwZWNpZmllZC4KKyAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJsaWJkbGV4dF90ZXN0X3YyLnNvIiwgUlRMRF9OT1cpOworICBBU1NFUlRfRExfTk9UTlVMTChoYW5kbGUpOworCisgIGFuZHJvaWRfZGxleHRpbmZvIGV4dGluZm87CisgIGV4dGluZm8uZmxhZ3MgPSBBTkRST0lEX0RMRVhUX0ZPUkNFX0xPQUQ7CisKKyAgLy8gTm90ZSB0aGF0ICdsaWJkbGV4dF90ZXN0LnNvJyBpcyBkdF9zb25hbWUgZm9yIGxpYmRsZXh0X3Rlc3RfdjIuc28KKyAgdm9pZCogaGFuZGxlMiA9IGFuZHJvaWRfZGxvcGVuX2V4dCgibGliZGxleHRfdGVzdC5zbyIsIFJUTERfTk9XLCAmZXh0aW5mbyk7CisKKyAgQVNTRVJUX0RMX05PVE5VTEwoaGFuZGxlMik7CisgIEFTU0VSVF9UUlVFKGhhbmRsZSA9PSBoYW5kbGUyKTsKKworICBkbGNsb3NlKGhhbmRsZTIpOworICBkbGNsb3NlKGhhbmRsZSk7Cit9CisKK1RFU1QoZGxmY24sIGRsb3Blbl9mcm9tX3ppcF9hYnNvbHV0ZV9wYXRoKSB7CisgIGNvbnN0IHN0ZDo6c3RyaW5nIGxpYl9wYXRoID0gc3RkOjpzdHJpbmcoZ2V0ZW52KCJBTkRST0lEX0RBVEEiKSkgKyBMSUJaSVBQQVRIOworCisgIHZvaWQqIGhhbmRsZSA9IGRsb3BlbigobGliX3BhdGggKyAiIWxpYmRpci9saWJkbGV4dF90ZXN0X2ZkLnNvIikuY19zdHIoKSwgUlRMRF9OT1cpOworICBBU1NFUlRfVFJVRShoYW5kbGUgIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworCisgIGludCAoKmZuKSh2b2lkKTsKKyAgZm4gPSByZWludGVycHJldF9jYXN0PGludCAoKikodm9pZCk+KGRsc3ltKGhhbmRsZSwgImdldFJhbmRvbU51bWJlciIpKTsKKyAgQVNTRVJUX1RSVUUoZm4gIT0gbnVsbHB0cik7CisgIEVYUEVDVF9FUSg0LCBmbigpKTsKKworICBkbGNsb3NlKGhhbmRsZSk7Cit9CisKK1RFU1QoZGxmY24sIGRsb3Blbl9mcm9tX3ppcF9sZF9saWJyYXJ5X3BhdGgpIHsKKyAgY29uc3Qgc3RkOjpzdHJpbmcgbGliX3BhdGggPSBzdGQ6OnN0cmluZyhnZXRlbnYoIkFORFJPSURfREFUQSIpKSArIExJQlpJUFBBVEggKyAiIWxpYmRpciI7CisKKyAgdHlwZWRlZiB2b2lkICgqZm5fdCkoY29uc3QgY2hhciopOworICBmbl90IGFuZHJvaWRfdXBkYXRlX0xEX0xJQlJBUllfUEFUSCA9CisgICAgICByZWludGVycHJldF9jYXN0PGZuX3Q+KGRsc3ltKFJUTERfREVGQVVMVCwgImFuZHJvaWRfdXBkYXRlX0xEX0xJQlJBUllfUEFUSCIpKTsKKworICBBU1NFUlRfVFJVRShhbmRyb2lkX3VwZGF0ZV9MRF9MSUJSQVJZX1BBVEggIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworCisgIHZvaWQqIGhhbmRsZSA9IGRsb3BlbigibGliZGxleHRfdGVzdF9mZC5zbyIsIFJUTERfTk9XKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlID09IG51bGxwdHIpOworCisgIGFuZHJvaWRfdXBkYXRlX0xEX0xJQlJBUllfUEFUSChsaWJfcGF0aC5jX3N0cigpKTsKKworICBoYW5kbGUgPSBkbG9wZW4oImxpYmRsZXh0X3Rlc3RfZmQuc28iLCBSVExEX05PVyk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZSAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisKKyAgaW50ICgqZm4pKHZvaWQpOworICBmbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8aW50ICgqKSh2b2lkKT4oZGxzeW0oaGFuZGxlLCAiZ2V0UmFuZG9tTnVtYmVyIikpOworICBBU1NFUlRfVFJVRShmbiAhPSBudWxscHRyKTsKKyAgRVhQRUNUX0VRKDQsIGZuKCkpOworCisgIGRsY2xvc2UoaGFuZGxlKTsKK30KKworCiBURVNUX0YoRGxFeHRUZXN0LCBSZXNlcnZlZCkgewogICB2b2lkKiBzdGFydCA9IG1tYXAobnVsbHB0ciwgTElCU0laRSwgUFJPVF9OT05FLCBNQVBfUFJJVkFURSB8IE1BUF9BTk9OWU1PVVMsCiAgICAgICAgICAgICAgICAgICAgICAtMSwgMCk7CkBAIC0xODEsNyArMjYzLDcgQEAKICAgQVNTRVJUX0RMX05PVE5VTEwoaGFuZGxlXyk7CiAgIGZuIGYgPSByZWludGVycHJldF9jYXN0PGZuPihkbHN5bShoYW5kbGVfLCAiZ2V0UmFuZG9tTnVtYmVyIikpOwogICBBU1NFUlRfRExfTk9UTlVMTChmKTsKLSAgRVhQRUNUX0dFKGYsIHN0YXJ0KTsKKyAgRVhQRUNUX0dFKHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGYpLCBzdGFydCk7CiAgIEVYUEVDVF9MVChyZWludGVycHJldF9jYXN0PHZvaWQqPihmKSwKICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KHN0YXJ0KSArIExJQlNJWkUpOwogICBFWFBFQ1RfRVEoNCwgZigpKTsKQEAgLTIxMSw3ICsyOTMsNyBAQAogICBBU1NFUlRfRExfTk9UTlVMTChoYW5kbGVfKTsKICAgZm4gZiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Zm4+KGRsc3ltKGhhbmRsZV8sICJnZXRSYW5kb21OdW1iZXIiKSk7CiAgIEFTU0VSVF9ETF9OT1ROVUxMKGYpOwotICBFWFBFQ1RfR0UoZiwgc3RhcnQpOworICBFWFBFQ1RfR0UocmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oZiksIHN0YXJ0KTsKICAgRVhQRUNUX0xUKHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGYpLAogICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxjaGFyKj4oc3RhcnQpICsgTElCU0laRSk7CiAgIEVYUEVDVF9FUSg0LCBmKCkpOwpAQCAtMjI5LDggKzMxMSw5IEBACiAgIEFTU0VSVF9ETF9OT1ROVUxMKGhhbmRsZV8pOwogICBmbiBmID0gcmVpbnRlcnByZXRfY2FzdDxmbj4oZGxzeW0oaGFuZGxlXywgImdldFJhbmRvbU51bWJlciIpKTsKICAgQVNTRVJUX0RMX05PVE5VTEwoZik7Ci0gIEVYUEVDVF9UUlVFKGYgPCBzdGFydCB8fCAocmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oZikgPj0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWludGVycHJldF9jYXN0PGNoYXIqPihzdGFydCkgKyBQQUdFX1NJWkUpKTsKKyAgRVhQRUNUX1RSVUUocmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oZikgPCBzdGFydCB8fAorICAgICAgICAgICAgICAocmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oZikgPj0KKyAgICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KHN0YXJ0KSArIFBBR0VfU0laRSkpOwogICBFWFBFQ1RfRVEoNCwgZigpKTsKIH0KIApAQCAtMjQ1LDIxICszMjgsMTQgQEAKICAgICBleHRpbmZvXy5yZXNlcnZlZF9hZGRyID0gc3RhcnQ7CiAgICAgZXh0aW5mb18ucmVzZXJ2ZWRfc2l6ZSA9IExJQlNJWkU7CiAgICAgZXh0aW5mb18ucmVscm9fZmQgPSAtMTsKLQotICAgIGNvbnN0IGNoYXIqIGFuZHJvaWRfZGF0YSA9IGdldGVudigiQU5EUk9JRF9EQVRBIik7Ci0gICAgQVNTRVJUX1RSVUUoYW5kcm9pZF9kYXRhICE9IG51bGxwdHIpOwotICAgIHNucHJpbnRmKHJlbHJvX2ZpbGVfLCBzaXplb2YocmVscm9fZmlsZV8pLCAiJXMvbG9jYWwvdG1wL2xpYmRsZXh0X3Rlc3QucmVscm8iLCBhbmRyb2lkX2RhdGEpOwogICB9CiAKICAgdmlydHVhbCB2b2lkIFRlYXJEb3duKCkgewogICAgIERsRXh0VGVzdDo6VGVhckRvd24oKTsKLSAgICBpZiAoZXh0aW5mb18ucmVscm9fZmQgIT0gLTEpIHsKLSAgICAgIEFTU0VSVF9OT0VSUk9SKGNsb3NlKGV4dGluZm9fLnJlbHJvX2ZkKSk7Ci0gICAgfQogICB9CiAKLSAgdm9pZCBDcmVhdGVSZWxyb0ZpbGUoY29uc3QgY2hhciogbGliKSB7Ci0gICAgaW50IHJlbHJvX2ZkID0gb3BlbihyZWxyb19maWxlXywgT19DUkVBVCB8IE9fUkRXUiB8IE9fVFJVTkMsIDA2NDQpOworICB2b2lkIENyZWF0ZVJlbHJvRmlsZShjb25zdCBjaGFyKiBsaWIsIGNvbnN0IGNoYXIqIHJlbHJvX2ZpbGUpIHsKKyAgICBpbnQgcmVscm9fZmQgPSBvcGVuKHJlbHJvX2ZpbGUsIE9fUkRXUiB8IE9fVFJVTkMpOwogICAgIEFTU0VSVF9OT0VSUk9SKHJlbHJvX2ZkKTsKIAogICAgIHBpZF90IHBpZCA9IGZvcmsoKTsKQEAgLTI4NCw3ICszNjAsNyBAQAogICAgIEFTU0VSVF9FUSgwLCBXRVhJVFNUQVRVUyhzdGF0dXMpKTsKIAogICAgIC8vIHJlb3BlbiBmaWxlIGZvciByZWFkaW5nIHNvIGl0IGNhbiBiZSB1c2VkCi0gICAgcmVscm9fZmQgPSBvcGVuKHJlbHJvX2ZpbGVfLCBPX1JET05MWSk7CisgICAgcmVscm9fZmQgPSBvcGVuKHJlbHJvX2ZpbGUsIE9fUkRPTkxZKTsKICAgICBBU1NFUlRfTk9FUlJPUihyZWxyb19mZCk7CiAgICAgZXh0aW5mb18uZmxhZ3MgfD0gQU5EUk9JRF9ETEVYVF9VU0VfUkVMUk87CiAgICAgZXh0aW5mb18ucmVscm9fZmQgPSByZWxyb19mZDsKQEAgLTMwMSwzMyArMzc3LDQ1IEBACiAgIHZvaWQgU3Bhd25DaGlsZHJlbkFuZE1lYXN1cmVQc3MoY29uc3QgY2hhciogbGliLCBib29sIHNoYXJlX3JlbHJvLCBzaXplX3QqIHBzc19vdXQpOwogCiAgIGFuZHJvaWRfZGxleHRpbmZvIGV4dGluZm9fOwotICBjaGFyIHJlbHJvX2ZpbGVfW1BBVEhfTUFYXTsKIH07CiAKIFRFU1RfRihEbEV4dFJlbHJvU2hhcmluZ1Rlc3QsIENoaWxkV3JpdGVzR29vZERhdGEpIHsKLSAgQVNTRVJUX05PX0ZBVEFMX0ZBSUxVUkUoQ3JlYXRlUmVscm9GaWxlKExJQk5BTUUpKTsKKyAgVGVtcG9yYXJ5RmlsZSB0ZjsgLy8gVXNlIHRmIHRvIGdldCBhbiB1bmlxdWUgZmlsZW5hbWUuCisgIEFTU0VSVF9OT0VSUk9SKGNsb3NlKHRmLmZkKSk7CisKKyAgQVNTRVJUX05PX0ZBVEFMX0ZBSUxVUkUoQ3JlYXRlUmVscm9GaWxlKExJQk5BTUUsIHRmLmZpbGVuYW1lKSk7CiAgIEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKFRyeVVzaW5nUmVscm8oTElCTkFNRSkpOworCisgIC8vIFVzZSBkZXN0cnVjdG9yIG9mIHRmIHRvIGNsb3NlIGFuZCB1bmxpbmsgdGhlIGZpbGUuCisgIHRmLmZkID0gZXh0aW5mb18ucmVscm9fZmQ7CiB9CiAKIFRFU1RfRihEbEV4dFJlbHJvU2hhcmluZ1Rlc3QsIENoaWxkV3JpdGVzTm9SZWxybykgewotICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVSRShDcmVhdGVSZWxyb0ZpbGUoTElCTkFNRV9OT1JFTFJPKSk7CisgIFRlbXBvcmFyeUZpbGUgdGY7IC8vIC8vIFVzZSB0ZiB0byBnZXQgYW4gdW5pcXVlIGZpbGVuYW1lLgorICBBU1NFUlRfTk9FUlJPUihjbG9zZSh0Zi5mZCkpOworCisgIEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKENyZWF0ZVJlbHJvRmlsZShMSUJOQU1FX05PUkVMUk8sIHRmLmZpbGVuYW1lKSk7CiAgIEFTU0VSVF9OT19GQVRBTF9GQUlMVVJFKFRyeVVzaW5nUmVscm8oTElCTkFNRV9OT1JFTFJPKSk7CisKKyAgLy8gVXNlIGRlc3RydWN0b3Igb2YgdGYgdG8gY2xvc2UgYW5kIHVubGluayB0aGUgZmlsZS4KKyAgdGYuZmQgPSBleHRpbmZvXy5yZWxyb19mZDsKIH0KIAogVEVTVF9GKERsRXh0UmVscm9TaGFyaW5nVGVzdCwgUmVscm9GaWxlRW1wdHkpIHsKLSAgaW50IHJlbHJvX2ZkID0gb3BlbihyZWxyb19maWxlXywgT19DUkVBVCB8IE9fUkRXUiB8IE9fVFJVTkMsIDA2NDQpOwotICBBU1NFUlRfTk9FUlJPUihyZWxyb19mZCk7Ci0gIEFTU0VSVF9OT0VSUk9SKGNsb3NlKHJlbHJvX2ZkKSk7Ci0KICAgQVNTRVJUX05PX0ZBVEFMX0ZBSUxVUkUoVHJ5VXNpbmdSZWxybyhMSUJOQU1FKSk7CiB9CiAKIFRFU1RfRihEbEV4dFJlbHJvU2hhcmluZ1Rlc3QsIFZlcmlmeU1lbW9yeVNhdmluZykgewotICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVSRShDcmVhdGVSZWxyb0ZpbGUoTElCTkFNRSkpOwotICBpbnQgcmVscm9fZmQgPSBvcGVuKHJlbHJvX2ZpbGVfLCBPX1JET05MWSk7Ci0gIEFTU0VSVF9OT0VSUk9SKHJlbHJvX2ZkKTsKLSAgZXh0aW5mb18uZmxhZ3MgfD0gQU5EUk9JRF9ETEVYVF9VU0VfUkVMUk87Ci0gIGV4dGluZm9fLnJlbHJvX2ZkID0gcmVscm9fZmQ7CisgIGlmIChnZXRldWlkKCkgIT0gMCkgeworICAgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBtdXN0IGJlIHJ1biBhcyByb290LlxuIjsKKyAgICByZXR1cm47CisgIH0KKworICBUZW1wb3JhcnlGaWxlIHRmOyAvLyBVc2UgdGYgdG8gZ2V0IGFuIHVuaXF1ZSBmaWxlbmFtZS4KKyAgQVNTRVJUX05PRVJST1IoY2xvc2UodGYuZmQpKTsKKworICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVSRShDcmVhdGVSZWxyb0ZpbGUoTElCTkFNRSwgdGYuZmlsZW5hbWUpKTsKKwogICBpbnQgcGlwZWZkWzJdOwogICBBU1NFUlRfTk9FUlJPUihwaXBlKHBpcGVmZCkpOwogCkBAIC0zMzksNiArNDI3LDkgQEAKICAgLy8gaXQgc2F2ZXMgNDAlKyBmb3IgdGhpcyB0ZXN0LgogICBzaXplX3QgZXhwZWN0ZWRfc2l6ZSA9IHdpdGhvdXRfc2hhcmluZyAtICh3aXRob3V0X3NoYXJpbmcvMTApOwogICBFWFBFQ1RfTFQod2l0aF9zaGFyaW5nLCBleHBlY3RlZF9zaXplKTsKKworICAvLyBVc2UgZGVzdHJ1Y3RvciBvZiB0ZiB0byBjbG9zZSBhbmQgdW5saW5rIHRoZSBmaWxlLgorICB0Zi5mZCA9IGV4dGluZm9fLnJlbHJvX2ZkOwogfQogCiB2b2lkIGdldFBzcyhwaWRfdCBwaWQsIHNpemVfdCogcHNzX291dCkgewpkaWZmIC0tZ2l0IGEvdGVzdHMvZGxmY25fdGVzdC5jcHAgYi90ZXN0cy9kbGZjbl90ZXN0LmNwcAppbmRleCBlMjRhZjEzLi42YjFmMTA5IDEwMDY0NAotLS0gYS90ZXN0cy9kbGZjbl90ZXN0LmNwcAorKysgYi90ZXN0cy9kbGZjbl90ZXN0LmNwcApAQCAtMjYsOSArMjYsMTIgQEAKIAogI2luY2x1ZGUgPHN0cmluZz4KIAorI2luY2x1ZGUgInV0aWxzLmgiCisKICNkZWZpbmUgQVNTRVJUX1NVQlNUUihuZWVkbGUsIGhheXN0YWNrKSBcCiAgICAgQVNTRVJUX1BSRURfRk9STUFUMig6OnRlc3Rpbmc6OklzU3Vic3RyaW5nLCBuZWVkbGUsIGhheXN0YWNrKQogCisKIHN0YXRpYyBib29sIGdfY2FsbGVkID0gZmFsc2U7CiBleHRlcm4gIkMiIHZvaWQgRGxTeW1UZXN0RnVuY3Rpb24oKSB7CiAgIGdfY2FsbGVkID0gdHJ1ZTsKQEAgLTQ2LDcgKzQ5LDcgQEAKICAgQVNTRVJUX0VRKDE3LCBnX2N0b3JfZnVuY3Rpb25fY2FsbGVkKTsKIH0KIAotVEVTVChkbGZjbiwgZGxzeW1faW5fc2VsZikgeworVEVTVChkbGZjbiwgZGxzeW1faW5fZXhlY3V0YWJsZSkgewogICBkbGVycm9yKCk7IC8vIENsZWFyIGFueSBwZW5kaW5nIGVycm9ycy4KICAgdm9pZCogc2VsZiA9IGRsb3BlbihOVUxMLCBSVExEX05PVyk7CiAgIEFTU0VSVF9UUlVFKHNlbGYgIT0gTlVMTCk7CkBAIC02NCw2ICs2NywyNyBAQAogICBBU1NFUlRfRVEoMCwgZGxjbG9zZShzZWxmKSk7CiB9CiAKK1RFU1QoZGxmY24sIGRsc3ltX2Zyb21fc29maWxlKSB7CisgIHZvaWQqIGhhbmRsZSA9IGRsb3BlbigibGlidGVzdF9kbHN5bV9mcm9tX3RoaXMuc28iLCBSVExEX0xBWlkgfCBSVExEX0xPQ0FMKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKworICAvLyBjaGVjayB0aGF0IHdlIGNhbnQgZmluZCAnX3Rlc3RfZGxzeW1fc3ltYm9sJyB2aWEgZGxzeW0oUlRMRF9ERUZBVUxUKQorICB2b2lkKiBzeW1ib2wgPSBkbHN5bShSVExEX0RFRkFVTFQsICJ0ZXN0X2Rsc3ltX3N5bWJvbCIpOworICBBU1NFUlRfVFJVRShzeW1ib2wgPT0gbnVsbHB0cik7CisgIEFTU0VSVF9TVUJTVFIoInVuZGVmaW5lZCBzeW1ib2w6IHRlc3RfZGxzeW1fc3ltYm9sIiwgZGxlcnJvcigpKTsKKworICB0eXBlZGVmIGludCogKCpmbl90KSgpOworICBmbl90IGZuID0gcmVpbnRlcnByZXRfY2FzdDxmbl90PihkbHN5bShoYW5kbGUsICJsb29rdXBfZGxzeW1fc3ltYm9sX3VzaW5nX1JUTERfREVGQVVMVCIpKTsKKworICBBU1NFUlRfVFJVRShmbiAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisKKyAgaW50KiBwdHIgPSBmbigpOworICBBU1NFUlRfVFJVRShwdHIgIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICBBU1NFUlRfRVEoNDIsICpwdHIpOworCisgIGRsY2xvc2UoaGFuZGxlKTsKK30KKwogVEVTVChkbGZjbiwgZGxzeW1fd2l0aF9kZXBlbmRlbmNpZXMpIHsKICAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJsaWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeS5zbyIsIFJUTERfTk9XKTsKICAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IE5VTEwpOwpAQCAtODksOCArMTEzLDM0IEBACiAgIEFTU0VSVF9FUSgwLCBkbGNsb3NlKGhhbmRsZTIpKTsKIH0KIAorVEVTVChkbGZjbiwgZGxvcGVuX2J5X3NvbmFtZSkgeworICBzdGF0aWMgY29uc3QgY2hhciogc29uYW1lID0gImxpYmRsZXh0X3Rlc3Rfc29uYW1lLnNvIjsKKyAgc3RhdGljIGNvbnN0IGNoYXIqIGZpbGVuYW1lID0gImxpYmRsZXh0X3Rlc3RfZGlmZmVyZW50X3NvbmFtZS5zbyI7CisgIC8vIDEuIE1ha2Ugc3VyZSB0aGVyZSBpcyBubyBsaWJyYXJ5IHdpdGggc29uYW1lIGluIGRlZmF1bHQgc2VhcmNoIHBhdGgKKyAgdm9pZCogaGFuZGxlID0gZGxvcGVuKHNvbmFtZSwgUlRMRF9OT1cpOworICBBU1NFUlRfVFJVRShoYW5kbGUgPT0gbnVsbHB0cik7CisKKyAgLy8gMi4gTG9hZCBhIGxpYnJhcnkgdXNpbmcgZmlsZW5hbWUKKyAgaGFuZGxlID0gZGxvcGVuKGZpbGVuYW1lLCBSVExEX05PVyk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZSAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisKKyAgLy8gMy4gRmluZCBsaWJyYXJ5IGJ5IHNvbmFtZQorICB2b2lkKiBoYW5kbGVfc29uYW1lID0gZGxvcGVuKHNvbmFtZSwgUlRMRF9OT1cgfCBSVExEX05PTE9BRCk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZV9zb25hbWUgIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICBBU1NFUlRfRVEoaGFuZGxlLCBoYW5kbGVfc29uYW1lKTsKKworICAvLyA0LiBSVExEX05PTE9BRCBzaG91bGQgc3RpbGwgd29yayB3aXRoIGZpbGVuYW1lCisgIHZvaWQqIGhhbmRsZV9maWxlbmFtZSA9IGRsb3BlbihmaWxlbmFtZSwgUlRMRF9OT1cgfCBSVExEX05PTE9BRCk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZV9maWxlbmFtZSAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisgIEFTU0VSVF9FUShoYW5kbGUsIGhhbmRsZV9maWxlbmFtZSk7CisKKyAgZGxjbG9zZShoYW5kbGVfZmlsZW5hbWUpOworICBkbGNsb3NlKGhhbmRsZV9zb25hbWUpOworICBkbGNsb3NlKGhhbmRsZSk7Cit9CisKIC8vIGlmdW5jcyBhcmUgb25seSBzdXBwb3J0ZWQgb24gaW50ZWwgYW5kIGFybTY0IGZvciBub3cKLSNpZiBkZWZpbmVkKF9faTM4Nl9fKSB8fCBkZWZpbmVkKF9feDg2XzY0X18pCisjaWYgZGVmaW5lZCAoX19hYXJjaDY0X18pIHx8IGRlZmluZWQoX19pMzg2X18pIHx8IGRlZmluZWQoX194ODZfNjRfXykKIFRFU1QoZGxmY24sIGlmdW5jKSB7CiAgIHR5cGVkZWYgY29uc3QgY2hhciogKCpmbl9wdHIpKCk7CiAKQEAgLTE2MiwzOSArMjEyLDM5IEBACiAgIEFTU0VSVF9FUSgxLCBmbigpKTsKIH0KIAotVEVTVChkbGZjbiwgZGxvcGVuX2NoZWNrX29yZGVyKSB7CitURVNUKGRsZmNuLCBkbG9wZW5fY2hlY2tfb3JkZXJfZGxzeW0pIHsKICAgLy8gSGVyZSBpcyBob3cgdGhlIHRlc3QgbGlicmFyeSBhbmQgaXRzIGR0X25lZWRlZAogICAvLyBsaWJyYXJpZXMgYXJlIGFycmFuZ2VkCiAgIC8vCi0gIC8vICBsaWJ0ZXN0X2NoZWNrX29yZGVyLnNvCisgIC8vICBsaWJ0ZXN0X2NoZWNrX29yZGVyX2NoaWxkcmVuLnNvCiAgIC8vICB8Ci0gIC8vICArLT4gbGlidGVzdF9jaGVja19vcmRlcl8xX2xlZnQuc28KKyAgLy8gICstPiAuLi5fMV9sZWZ0LnNvCiAgIC8vICB8ICAgfAotICAvLyAgfCAgICstPiBsaWJ0ZXN0X2NoZWNrX29yZGVyX2Euc28KKyAgLy8gIHwgICArLT4gLi4uX2Euc28KICAgLy8gIHwgICB8Ci0gIC8vICB8ICAgKy0+IGxpYnRlc3RfY2hlY2tfb3JkZXJfYi5zbworICAvLyAgfCAgICstPiAuLi5yX2Iuc28KICAgLy8gIHwKLSAgLy8gICstPiBsaWJ0ZXN0X2NoZWNrX29yZGVyXzJfcmlnaHQuc28KKyAgLy8gICstPiAuLi5fMl9yaWdodC5zbwogICAvLyAgfCAgIHwKLSAgLy8gIHwgICArLT4gbGlidGVzdF9jaGVja19vcmRlcl9kLnNvCisgIC8vICB8ICAgKy0+IC4uLl9kLnNvCiAgIC8vICB8ICAgICAgIHwKLSAgLy8gIHwgICAgICAgKy0+IGxpYnRlc3RfY2hlY2tfb3JkZXJfYi5zbworICAvLyAgfCAgICAgICArLT4gLi4uX2Iuc28KICAgLy8gIHwKLSAgLy8gICstPiBsaWJ0ZXN0X2NoZWNrX29yZGVyXzNfYy5zbworICAvLyAgKy0+IC4uLl8zX2Muc28KICAgLy8KICAgLy8gIGxvYWQgb3JkZXIgc2hvdWxkIGJlICgxLCAyLCAzLCBhLCBiLCBkKQogICAvLwogICAvLyBnZXRfYW5zd2VyKCkgaXMgZGVmaW5lZCBpbiAoMiwgMywgYSwgYiwgYykKICAgLy8gZ2V0X2Fuc3dlcjIoKSBpcyBkZWZpbmVkIGluIChiLCBkKQotICB2b2lkKiBzeW0gPSBkbHN5bShSVExEX0RFRkFVTFQsICJkbG9wZW5fdGVzdF9nZXRfYW5zd2VyIik7CisgIHZvaWQqIHN5bSA9IGRsc3ltKFJUTERfREVGQVVMVCwgImNoZWNrX29yZGVyX2Rsc3ltX2dldF9hbnN3ZXIiKTsKICAgQVNTRVJUX1RSVUUoc3ltID09IG51bGxwdHIpOwotICB2b2lkKiBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3RfY2hlY2tfb3JkZXIuc28iLCBSVExEX05PVyB8IFJUTERfR0xPQkFMKTsKLSAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpOworICB2b2lkKiBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3RfY2hlY2tfb3JkZXJfZGxzeW0uc28iLCBSVExEX05PVyB8IFJUTERfR0xPQkFMKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKICAgdHlwZWRlZiBpbnQgKCpmbl90KSAodm9pZCk7CiAgIGZuX3QgZm4sIGZuMjsKLSAgZm4gPSByZWludGVycHJldF9jYXN0PGZuX3Q+KGRsc3ltKFJUTERfREVGQVVMVCwgImRsb3Blbl90ZXN0X2dldF9hbnN3ZXIiKSk7CisgIGZuID0gcmVpbnRlcnByZXRfY2FzdDxmbl90PihkbHN5bShSVExEX0RFRkFVTFQsICJjaGVja19vcmRlcl9kbHN5bV9nZXRfYW5zd2VyIikpOwogICBBU1NFUlRfVFJVRShmbiAhPSBOVUxMKSA8PCBkbGVycm9yKCk7Ci0gIGZuMiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Zm5fdD4oZGxzeW0oUlRMRF9ERUZBVUxULCAiZGxvcGVuX3Rlc3RfZ2V0X2Fuc3dlcjIiKSk7CisgIGZuMiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Zm5fdD4oZGxzeW0oUlRMRF9ERUZBVUxULCAiY2hlY2tfb3JkZXJfZGxzeW1fZ2V0X2Fuc3dlcjIiKSk7CiAgIEFTU0VSVF9UUlVFKGZuMiAhPSBOVUxMKSA8PCBkbGVycm9yKCk7CiAKICAgQVNTRVJUX0VRKDQyLCBmbigpKTsKQEAgLTIwMiwyOSArMjUyLDM4NyBAQAogICBkbGNsb3NlKGhhbmRsZSk7CiB9CiAKK1RFU1QoZGxmY24sIGRsb3Blbl9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5ncykgeworICAvLyBUaGlzIGlzIGhvdyB0aGlzIG9uZSB3b3JrczoKKyAgLy8gd2UgbG9va3VwIGFuZCBjYWxsIGdldF9hbnN3ZXIgd2hpY2ggaXMgZGVmaW5lZCBpbiAnXzIuc28nCisgIC8vIGFuZCBpbiB0dXJuIGNhbGxzIGV4dGVybmFsIGdldF9hbnN3ZXJfaW1wbCgpIGRlZmluZWQgaW4gXzEuc28gYW5kIGluICdfW2EtZl0uc28nCisgIC8vIHRoZSBjb3JyZWN0IF9pbXBsKCkgaXMgaW1wbGVtZW50ZWQgYnkgJ19hLnNvJzsKKyAgLy8KKyAgLy8gTm90ZSB0aGF0IHRoaXMgaXMgdGVzdCBmb3IgUlRMRF9MT0NBTCAoVE9ETzogdGVzdCBmb3IgR0xPQkFMPykKKyAgLy8KKyAgLy8gSGVyZSBpcyB0aGUgcGljdHVyZToKKyAgLy8KKyAgLy8gbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5ncy5zbworICAvLyB8CisgIC8vICstPiAuLi5fMS5zbyA8LSBlbXB0eQorICAvLyB8ICAgfAorICAvLyB8ICAgKy0+IC4uLl9hLnNvIDwtIGV4cG9ydHMgY29ycmVjdCBhbnN3ZXJfaW1wbCgpCisgIC8vIHwgICB8CisgIC8vIHwgICArLT4gLi4uX2Iuc28gPC0gZXZlcnkgb3RoZXIgbGV0dGVyIGV4cG9ydGluZyBpbmNvcnJlY3Qgb25lLgorICAvLyB8CisgIC8vICstPiAuLi5fMi5zbyA8LSBlbXB0eQorICAvLyB8ICAgfAorICAvLyB8ICAgKy0+IC4uLl9jLnNvCisgIC8vIHwgICB8CisgIC8vIHwgICArLT4gLi4uX2Quc28KKyAgLy8gfAorICAvLyArLT4gLi4uXzMuc28gPC0gZW1wdHkKKyAgLy8gICAgIHwKKyAgLy8gICAgICstPiAuLi5fZS5zbworICAvLyAgICAgfAorICAvLyAgICAgKy0+IC4uLl9mLnNvIDwtIGV4cG9ydHMgZ2V0X2Fuc3dlcigpIHRoYXQgY2FsbHMgZ2V0X2Fuc2VyX2ltcGwoKTsKKyAgLy8gICAgICAgICAgICAgICAgICAgICBpbXBsZW1lbnRzIGluY29ycmVjdCBnZXRfYW5zd2VyX2ltcGwoKQorCisgIHZvaWQqIGhhbmRsZSA9IGRsb3BlbigibGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5ncy5zbyIsIFJUTERfTk9XIHwgUlRMRF9OT0xPQUQpOworICBBU1NFUlRfVFJVRShoYW5kbGUgPT0gbnVsbHB0cik7CisjaWZkZWYgX19CSU9OSUNfXworICAvLyBUT0RPOiBnbGliYyByZXR1cm5zIG51bGxwdHIgb24gZGxlcnJvcigpIGhlcmUuIElzIGl0IGJ1Zz8KKyAgQVNTRVJUX1NUUkVRKCJkbG9wZW4gZmFpbGVkOiBsaWJyYXJ5IFwibGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5ncy5zb1wiIHdhc24ndCBsb2FkZWQgYW5kIFJUTERfTk9MT0FEIHByZXZlbnRlZCBpdCIsIGRsZXJyb3IoKSk7CisjZW5kaWYKKworICBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3Muc28iLCBSVExEX05PVyB8IFJUTERfTE9DQUwpOworICBBU1NFUlRfVFJVRShoYW5kbGUgIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworCisgIHR5cGVkZWYgaW50ICgqZm5fdCkgKHZvaWQpOworICBmbl90IGZuID0gcmVpbnRlcnByZXRfY2FzdDxmbl90PihkbHN5bShoYW5kbGUsICJjaGVja19vcmRlcl9yZWxvY19nZXRfYW5zd2VyIikpOworICBBU1NFUlRfVFJVRShmbiAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisgIEFTU0VSVF9FUSg0MiwgZm4oKSk7CisKKyAgQVNTRVJUX0VRKDAsIGRsY2xvc2UoaGFuZGxlKSk7Cit9CisKK1RFU1QoZGxmY24sIGRsb3Blbl9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc193aXRoX3ByZWxvYWQpIHsKKyAgLy8gVGhpcyB0ZXN0IHVzZXMgdGhlIHNhbWUgbGlicmFyeSBhcyBkbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3MuCisgIC8vIFVubGlrZSBkbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3MgaXQgcHJlbG9hZHMKKyAgLy8gbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc18xLnNvIChmaXJzdCBkZXBlbmRlbmN5KSBwcmlvciB0bworICAvLyBkbG9wZW4obGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5ncy5zbykKKworICB2b2lkKiBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3Muc28iLCBSVExEX05PVyB8IFJUTERfTk9MT0FEKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlID09IG51bGxwdHIpOworICBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfMS5zbyIsIFJUTERfTk9XIHwgUlRMRF9OT0xPQUQpOworICBBU1NFUlRfVFJVRShoYW5kbGUgPT0gbnVsbHB0cik7CisKKyAgdm9pZCogaGFuZGxlX2Zvcl8xID0gZGxvcGVuKCJsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzXzEuc28iLCBSVExEX05PVyB8IFJUTERfTE9DQUwpOworICBBU1NFUlRfVFJVRShoYW5kbGVfZm9yXzEgIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworCisgIGhhbmRsZSA9IGRsb3BlbigibGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5ncy5zbyIsIFJUTERfTk9XIHwgUlRMRF9MT0NBTCk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZSAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisKKyAgQVNTRVJUX0VRKDAsIGRsY2xvc2UoaGFuZGxlX2Zvcl8xKSk7CisKKyAgdHlwZWRlZiBpbnQgKCpmbl90KSAodm9pZCk7CisgIGZuX3QgZm4gPSByZWludGVycHJldF9jYXN0PGZuX3Q+KGRsc3ltKGhhbmRsZSwgImNoZWNrX29yZGVyX3JlbG9jX2dldF9hbnN3ZXIiKSk7CisgIEFTU0VSVF9UUlVFKGZuICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgQVNTRVJUX0VRKDQyLCBmbigpKTsKKworICBBU1NFUlRfRVEoMCwgZGxjbG9zZShoYW5kbGUpKTsKK30KKworVEVTVChkbGZjbiwgZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX2dyYW5kY2hpbGQpIHsKKyAgLy8gVGhpcyBpcyBob3cgdGhpcyBvbmUgd29ya3M6CisgIC8vIHdlIGxvb2t1cCBhbmQgY2FsbCBncmFuZGNoaWxkX2dldF9hbnN3ZXIgd2hpY2ggaXMgZGVmaW5lZCBpbiAnXzIuc28nCisgIC8vIGFuZCBpbiB0dXJuIGNhbGxzIGV4dGVybmFsIGdldF9hbnN3ZXJfaW1wbCgpIGRlZmluZWQgaW4gJ19jXzEuc28gYW5kIF9jXzIuc28nCisgIC8vIHRoZSBjb3JyZWN0IF9pbXBsKCkgaXMgaW1wbGVtZW50ZWQgYnkgJ19jXzEuc28nOworICAvLworICAvLyBIZXJlIGlzIHRoZSBwaWN0dXJlIG9mIHN1YnRyZWU6CisgIC8vCisgIC8vIGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3Muc28KKyAgLy8gfAorICAvLyArLT4gLi4uXzIuc28gPC0gZ3JhbmRjaGlsZF9nZXRfYW5zd2VyKCkKKyAgLy8gICAgIHwKKyAgLy8gICAgICstPiAuLi5fYy5zbyA8LSBlbXB0eQorICAvLyAgICAgfCAgIHwKKyAgLy8gICAgIHwgICArLT4gX2NfMS5zbyA8LSBleHBvcnRzIGNvcnJlY3QgYW5zd2VyX2ltcGwoKQorICAvLyAgICAgfCAgIHwKKyAgLy8gICAgIHwgICArLT4gX2NfMi5zbyA8LSBleHBvcnRzIGluY29ycmVjdCBhbnN3ZXJfaW1wbCgpCisgIC8vICAgICB8CisgIC8vICAgICArLT4gLi4uX2Quc28gPC0gZW1wdHkKKworICB2b2lkKiBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3Muc28iLCBSVExEX05PVyB8IFJUTERfTk9MT0FEKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlID09IG51bGxwdHIpOworI2lmZGVmIF9fQklPTklDX18KKyAgLy8gVE9ETzogZ2xpYmMgcmV0dXJucyBudWxscHRyIG9uIGRsZXJyb3IoKSBoZXJlLiBJcyBpdCBidWc/CisgIEFTU0VSVF9TVFJFUSgiZGxvcGVuIGZhaWxlZDogbGlicmFyeSBcImxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3Muc29cIiB3YXNuJ3QgbG9hZGVkIGFuZCBSVExEX05PTE9BRCBwcmV2ZW50ZWQgaXQiLCBkbGVycm9yKCkpOworI2VuZGlmCisKKyAgaGFuZGxlID0gZGxvcGVuKCJsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzLnNvIiwgUlRMRF9OT1cgfCBSVExEX0xPQ0FMKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKworICB0eXBlZGVmIGludCAoKmZuX3QpICh2b2lkKTsKKyAgZm5fdCBmbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Zm5fdD4oZGxzeW0oaGFuZGxlLCAiY2hlY2tfb3JkZXJfcmVsb2NfZ3JhbmRjaGlsZF9nZXRfYW5zd2VyIikpOworICBBU1NFUlRfVFJVRShmbiAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisgIEFTU0VSVF9FUSg0MiwgZm4oKSk7CisKKyAgQVNTRVJUX0VRKDAsIGRsY2xvc2UoaGFuZGxlKSk7Cit9CisKK1RFU1QoZGxmY24sIGRsb3Blbl9jaGVja19vcmRlcl9yZWxvY19uZXBoZXcpIHsKKyAgLy8gVGhpcyBpcyBob3cgdGhpcyBvbmUgd29ya3M6CisgIC8vIHdlIGxvb2t1cCBhbmQgY2FsbCBuZXBoZXdfZ2V0X2Fuc3dlciB3aGljaCBpcyBkZWZpbmVkIGluICdfMi5zbycKKyAgLy8gYW5kIGluIHR1cm4gY2FsbHMgZXh0ZXJuYWwgZ2V0X2Fuc3dlcl9pbXBsKCkgZGVmaW5lZCBpbiAnX1thLWZdLnNvJworICAvLyB0aGUgY29ycmVjdCBfaW1wbCgpIGlzIGltcGxlbWVudGVkIGJ5ICdfYS5zbyc7CisgIC8vCisgIC8vIEhlcmUgaXMgdGhlIHBpY3R1cmU6CisgIC8vCisgIC8vIGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3Muc28KKyAgLy8gfAorICAvLyArLT4gLi4uXzEuc28gPC0gZW1wdHkKKyAgLy8gfCAgIHwKKyAgLy8gfCAgICstPiAuLi5fYS5zbyA8LSBleHBvcnRzIGNvcnJlY3QgYW5zd2VyX2ltcGwoKQorICAvLyB8ICAgfAorICAvLyB8ICAgKy0+IC4uLl9iLnNvIDwtIGV2ZXJ5IG90aGVyIGxldHRlciBleHBvcnRpbmcgaW5jb3JyZWN0IG9uZS4KKyAgLy8gfAorICAvLyArLT4gLi4uXzIuc28gPC0gZW1wdHkKKyAgLy8gfCAgIHwKKyAgLy8gfCAgICstPiAuLi5fYy5zbworICAvLyB8ICAgfAorICAvLyB8ICAgKy0+IC4uLl9kLnNvCisgIC8vIHwKKyAgLy8gKy0+IC4uLl8zLnNvIDwtIG5lcGhld19nZXRfYW5zd2VyKCkgdGhhdCBjYWxscyBnZXRfYW5zd2VyX2ltcGwoKTsKKyAgLy8gICAgIHwKKyAgLy8gICAgICstPiAuLi5fZS5zbworICAvLyAgICAgfAorICAvLyAgICAgKy0+IC4uLl9mLnNvCisKKyAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzLnNvIiwgUlRMRF9OT1cgfCBSVExEX05PTE9BRCk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZSA9PSBudWxscHRyKTsKKyNpZmRlZiBfX0JJT05JQ19fCisgIC8vIFRPRE86IGdsaWJjIHJldHVybnMgbnVsbHB0ciBvbiBkbGVycm9yKCkgaGVyZS4gSXMgaXQgYnVnPworICBBU1NFUlRfU1RSRVEoImRsb3BlbiBmYWlsZWQ6IGxpYnJhcnkgXCJsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzLnNvXCIgd2Fzbid0IGxvYWRlZCBhbmQgUlRMRF9OT0xPQUQgcHJldmVudGVkIGl0IiwgZGxlcnJvcigpKTsKKyNlbmRpZgorCisgIGhhbmRsZSA9IGRsb3BlbigibGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5ncy5zbyIsIFJUTERfTk9XIHwgUlRMRF9MT0NBTCk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZSAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisKKyAgdHlwZWRlZiBpbnQgKCpmbl90KSAodm9pZCk7CisgIGZuX3QgZm4gPSByZWludGVycHJldF9jYXN0PGZuX3Q+KGRsc3ltKGhhbmRsZSwgImNoZWNrX29yZGVyX3JlbG9jX25lcGhld19nZXRfYW5zd2VyIikpOworICBBU1NFUlRfVFJVRShmbiAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisgIEFTU0VSVF9FUSg0MiwgZm4oKSk7CisKKyAgQVNTRVJUX0VRKDAsIGRsY2xvc2UoaGFuZGxlKSk7Cit9CisKK1RFU1QoZGxmY24sIGNoZWNrX3VubG9hZF9hZnRlcl9yZWxvYykgeworICAvLyBUaGlzIGlzIGhvdyB0aGlzIG9uZSB3b3JrczoKKyAgLy8gbGlidGVzdF90d29fcGFyZW50c19wYXJlbnQxIDwtIGFuc3dlcl9pbXBsKCkgdXNlZCBieSBsaWJ0ZXN0X3R3b19wYXJlbnRzX2NoaWxkCisgIC8vIHwKKyAgLy8gKy0+IGxpYnRlc3RfdHdvX3BhcmVudHNfY2hpbGQKKyAgLy8KKyAgLy8gbGlidGVzdF90d29fcGFyZW50c19wYXJlbnQyIDwtIGFuc3dlcl9pbXBsKCkgbm90IHVzZWQgYnkgbGlidGVzdF90d29fcGFyZW50c19jaGlsZAorICAvLyB8CisgIC8vICstPiBsaWJ0ZXN0X3R3b19wYXJlbnRzX2NoaWxkCisgIC8vCisgIC8vIFRlc3QgZGxvcGVucyBwYXJlbnQxIHdoaWNoIGxvYWRzIGFuZCByZWxvY2F0ZXMgbGlidGVzdF90d29fcGFyZW50c19jaGlsZC5zbworICAvLyBhcyBhIHNlY29uZCBzdGVwIGl0IGRsb3BlbnMgcGFyZW50MiBhbmQgZGxjbG9zZXMgcGFyZW50MS4uLgorCisgIHZvaWQqIGhhbmRsZSA9IGRsb3BlbigibGlidGVzdF90d29fcGFyZW50c19wYXJlbnQxLnNvIiwgUlRMRF9OT1cgfCBSVExEX0xPQ0FMKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKworICB2b2lkKiBoYW5kbGUyID0gZGxvcGVuKCJsaWJ0ZXN0X3R3b19wYXJlbnRzX3BhcmVudDIuc28iLCBSVExEX05PVyB8IFJUTERfTE9DQUwpOworICBBU1NFUlRfVFJVRShoYW5kbGUyICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKworICB0eXBlZGVmIGludCAoKmZuX3QpICh2b2lkKTsKKyAgZm5fdCBmbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Zm5fdD4oZGxzeW0oaGFuZGxlMiwgImNoZWNrX29yZGVyX3JlbG9jX2dldF9hbnN3ZXIiKSk7CisgIEFTU0VSVF9UUlVFKGZuICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgQVNTRVJUX0VRKDQyLCBmbigpKTsKKworICBBU1NFUlRfRVEoMCwgZGxjbG9zZShoYW5kbGUpKTsKKworICBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3RfdHdvX3BhcmVudHNfcGFyZW50MS5zbyIsIFJUTERfTk9XIHwgUlRMRF9MT0NBTCB8IFJUTERfTk9MT0FEKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpOworICBBU1NFUlRfRVEoMCwgZGxjbG9zZShoYW5kbGUpKTsKKworICBmbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Zm5fdD4oZGxzeW0oaGFuZGxlMiwgImNoZWNrX29yZGVyX3JlbG9jX2dldF9hbnN3ZXIiKSk7CisgIEFTU0VSVF9UUlVFKGZuICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgQVNTRVJUX0VRKDQyLCBmbigpKTsKKworICBBU1NFUlRfRVEoMCwgZGxjbG9zZShoYW5kbGUyKSk7CisKKyAgaGFuZGxlID0gZGxvcGVuKCJsaWJ0ZXN0X3R3b19wYXJlbnRzX3BhcmVudDEuc28iLCBSVExEX05PVyB8IFJUTERfTE9DQUwgfCBSVExEX05PTE9BRCk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZSA9PSBudWxscHRyKTsKK30KKworZXh0ZXJuICJDIiBpbnQgY2hlY2tfb3JkZXJfcmVsb2Nfcm9vdF9nZXRfYW5zd2VyX2ltcGwoKSB7CisgIHJldHVybiA0MjsKK30KKworVEVTVChkbGZjbiwgZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX21haW5fZXhlY3V0YWJsZSkgeworICAvLyBUaGlzIGlzIGhvdyB0aGlzIG9uZSB3b3JrczoKKyAgLy8gd2UgbG9va3VwIGFuZCBjYWxsIGdldF9hbnN3ZXIzIHdoaWNoIGlzIGRlZmluZWQgaW4gJ3Jvb3Quc28nCisgIC8vIGFuZCBpbiB0dXJuIGNhbGxzIGV4dGVybmFsIHJvb3RfZ2V0X2Fuc3dlcl9pbXBsKCkgZGVmaW5lZCBpbiBfMi5zbyBhbmQKKyAgLy8gYWJvdmUgdGhlIGNvcnJlY3QgX2ltcGwoKSBpcyBvbmUgaW4gdGhlIGV4ZWN1dGFibGUuCisgIC8vCisgIC8vIGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfcm9vdC5zbworICAvLyB8CisgIC8vICstPiAuLi5fMS5zbyA8LSBlbXB0eQorICAvLyB8CisgIC8vICstPiAuLi5fMi5zbyA8LSBnaXZlcyBpbmNvcnJlY3QgYW5zd2VyIGZvciBhbnN3ZXJfbWFpbl9pbXBsKCkKKyAgLy8KKworICB2b2lkKiBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfcm9vdC5zbyIsIFJUTERfTk9XIHwgUlRMRF9OT0xPQUQpOworICBBU1NFUlRfVFJVRShoYW5kbGUgPT0gbnVsbHB0cik7CisjaWZkZWYgX19CSU9OSUNfXworICAvLyBUT0RPOiBnbGliYyByZXR1cm5zIG51bGxwdHIgb24gZGxlcnJvcigpIGhlcmUuIElzIGl0IGJ1Zz8KKyAgQVNTRVJUX1NUUkVRKCJkbG9wZW4gZmFpbGVkOiBsaWJyYXJ5IFwibGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19yb290LnNvXCIgd2Fzbid0IGxvYWRlZCBhbmQgUlRMRF9OT0xPQUQgcHJldmVudGVkIGl0IiwgZGxlcnJvcigpKTsKKyNlbmRpZgorCisgIGhhbmRsZSA9IGRsb3BlbigibGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19yb290LnNvIiwgUlRMRF9OT1cgfCBSVExEX0xPQ0FMKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKworICB0eXBlZGVmIGludCAoKmZuX3QpICh2b2lkKTsKKyAgZm5fdCBmbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Zm5fdD4oZGxzeW0oaGFuZGxlLCAiY2hlY2tfb3JkZXJfcmVsb2Nfcm9vdF9nZXRfYW5zd2VyIikpOworICBBU1NFUlRfVFJVRShmbiAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisgIEFTU0VSVF9FUSg0MiwgZm4oKSk7CisKKyAgQVNTRVJUX0VRKDAsIGRsY2xvc2UoaGFuZGxlKSk7Cit9CisKK1RFU1QoZGxmY24sIGRsb3Blbl9jaGVja19ydGxkX2xvY2FsKSB7CisgIHZvaWQqIHN5bSA9IGRsc3ltKFJUTERfREVGQVVMVCwgImRsb3Blbl90ZXN0bGliX3NpbXBsZV9mdW5jIik7CisgIEFTU0VSVF9UUlVFKHN5bSA9PSBudWxscHRyKTsKKworICAvLyBpbXBsaWNpdCBSVExEX0xPQ0FMCisgIHZvaWQqIGhhbmRsZSA9IGRsb3BlbigibGlidGVzdF9zaW1wbGUuc28iLCBSVExEX05PVyk7CisgIHN5bSA9IGRsc3ltKFJUTERfREVGQVVMVCwgImRsb3Blbl90ZXN0bGliX3NpbXBsZV9mdW5jIik7CisgIEFTU0VSVF9UUlVFKHN5bSA9PSBudWxscHRyKTsKKyAgQVNTRVJUX1NVQlNUUigidW5kZWZpbmVkIHN5bWJvbDogZGxvcGVuX3Rlc3RsaWJfc2ltcGxlX2Z1bmMiLCBkbGVycm9yKCkpOworICBzeW0gPSBkbHN5bShoYW5kbGUsICJkbG9wZW5fdGVzdGxpYl9zaW1wbGVfZnVuYyIpOworICBBU1NFUlRfVFJVRShzeW0gIT0gbnVsbHB0cik7CisgIEFTU0VSVF9UUlVFKHJlaW50ZXJwcmV0X2Nhc3Q8Ym9vbCAoKikodm9pZCk+KHN5bSkoKSk7CisgIGRsY2xvc2UoaGFuZGxlKTsKKworICAvLyBleHBsaWNpdCBSVExEX0xPQ0FMCisgIGhhbmRsZSA9IGRsb3BlbigibGlidGVzdF9zaW1wbGUuc28iLCBSVExEX05PVyB8IFJUTERfTE9DQUwpOworICBzeW0gPSBkbHN5bShSVExEX0RFRkFVTFQsICJkbG9wZW5fdGVzdGxpYl9zaW1wbGVfZnVuYyIpOworICBBU1NFUlRfVFJVRShzeW0gPT0gbnVsbHB0cik7CisgIEFTU0VSVF9TVUJTVFIoInVuZGVmaW5lZCBzeW1ib2w6IGRsb3Blbl90ZXN0bGliX3NpbXBsZV9mdW5jIiwgZGxlcnJvcigpKTsKKyAgc3ltID0gZGxzeW0oaGFuZGxlLCAiZGxvcGVuX3Rlc3RsaWJfc2ltcGxlX2Z1bmMiKTsKKyAgQVNTRVJUX1RSVUUoc3ltICE9IG51bGxwdHIpOworICBBU1NFUlRfVFJVRShyZWludGVycHJldF9jYXN0PGJvb2wgKCopKHZvaWQpPihzeW0pKCkpOworICBkbGNsb3NlKGhhbmRsZSk7Cit9CisKK1RFU1QoZGxmY24sIGRsb3Blbl9jaGVja19ydGxkX2dsb2JhbCkgeworICB2b2lkKiBzeW0gPSBkbHN5bShSVExEX0RFRkFVTFQsICJkbG9wZW5fdGVzdGxpYl9zaW1wbGVfZnVuYyIpOworICBBU1NFUlRfVFJVRShzeW0gPT0gbnVsbHB0cik7CisKKyAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJsaWJ0ZXN0X3NpbXBsZS5zbyIsIFJUTERfTk9XIHwgUlRMRF9HTE9CQUwpOworICBBU1NFUlRfVFJVRShoYW5kbGUgIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICBzeW0gPSBkbHN5bShSVExEX0RFRkFVTFQsICJkbG9wZW5fdGVzdGxpYl9zaW1wbGVfZnVuYyIpOworICBBU1NFUlRfVFJVRShzeW0gIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICBBU1NFUlRfVFJVRShyZWludGVycHJldF9jYXN0PGJvb2wgKCopKHZvaWQpPihzeW0pKCkpOworICBkbGNsb3NlKGhhbmRsZSk7CisKKyAgLy8gUlRMRF9HTE9CQUwgaW1wbGllcyBSVExEX05PREVMRVRFLCBsZXQncyBjaGVjayB0aGF0CisgIHZvaWQqIHN5bV9hZnRlcl9kbGNsb3NlID0gZGxzeW0oUlRMRF9ERUZBVUxULCAiZGxvcGVuX3Rlc3RsaWJfc2ltcGxlX2Z1bmMiKTsKKyAgQVNTRVJUX0VRKHN5bSwgc3ltX2FmdGVyX2RsY2xvc2UpOworfQorCiAvLyBsaWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wLnNvIC0+IGxpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2xvb3BfYS5zbyAtPgogLy8gbGlidGVzdF93aXRoX2RlcGVuZGVuY3lfbG9vcF9iLnNvIC0+IGxpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2xvb3BfYy5zbyAtPgogLy8gbGlidGVzdF93aXRoX2RlcGVuZGVuY3lfbG9vcF9hLnNvCiBURVNUKGRsZmNuLCBkbG9wZW5fY2hlY2tfbG9vcCkgewogICB2b2lkKiBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2xvb3Auc28iLCBSVExEX05PVyk7Ci0jaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICBBU1NFUlRfVFJVRShoYW5kbGUgPT0gbnVsbHB0cik7Ci0gIEFTU0VSVF9TVFJFUSgiZGxvcGVuIGZhaWxlZDogcmVjdXJzaXZlIGxpbmsgdG8gXCJsaWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wX2Euc29cIiIsIGRsZXJyb3IoKSk7Ci0gIC8vIFRoaXMgc3ltYm9sIHNob3VsZCBuZXZlciBiZSBleHBvc2VkCi0gIHZvaWQqIGYgPSBkbHN5bShSVExEX0RFRkFVTFQsICJkbG9wZW5fdGVzdF9pbnZhbGlkX2Z1bmN0aW9uIik7Ci0gIEFTU0VSVF9UUlVFKGYgPT0gbnVsbHB0cik7Ci0gIEFTU0VSVF9TVUJTVFIoInVuZGVmaW5lZCBzeW1ib2w6IGRsb3Blbl90ZXN0X2ludmFsaWRfZnVuY3Rpb24iLCBkbGVycm9yKCkpOworICBBU1NFUlRfVFJVRShoYW5kbGUgIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICB2b2lkKiBmID0gZGxzeW0oaGFuZGxlLCAiZGxvcGVuX3Rlc3RfbG9vcHlfZnVuY3Rpb24iKTsKKyAgQVNTRVJUX1RSVUUoZiAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisgIEVYUEVDVF9UUlVFKHJlaW50ZXJwcmV0X2Nhc3Q8Ym9vbCAoKikodm9pZCk+KGYpKCkpOworICBBU1NFUlRfRVEoMCwgZGxjbG9zZShoYW5kbGUpKTsKIAotICAvLyBkbG9wZW4gc2Vjb25kIHRpbWUgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIGxpYnJhcnkgd2Fzbid0IGxvYWRlZCBldmVuIHRob3VnaCBkbG9wZW4gcmV0dXJuZWQgbnVsbC4KLSAgLy8gVGhpcyBtYXkgaGFwcGVuIGlmIGR1cmluZyBjbGVhbnVwIHRoZSByb290IGxpYnJhcnkgb3Igb25lIG9mIHRoZSBkZXBlbmRlZCBsaWJzIHdlcmUgbm90IHJlbW92ZWQKLSAgLy8gZnJvbSBzb2luZm8gbGlzdC4KKyAgLy8gZGxvcGVuIHNlY29uZCB0aW1lIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBsaWJyYXJ5IHdhcyB1bmxvYWRlZCBjb3JyZWN0bHkKICAgaGFuZGxlID0gZGxvcGVuKCJsaWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wLnNvIiwgUlRMRF9OT1cgfCBSVExEX05PTE9BRCk7CiAgIEFTU0VSVF9UUlVFKGhhbmRsZSA9PSBudWxscHRyKTsKKyNpZmRlZiBfX0JJT05JQ19fCisgIC8vIFRPRE86IGdsaWJjIHJldHVybnMgbnVsbHB0ciBvbiBkbGVycm9yKCkgaGVyZS4gSXMgaXQgYnVnPwogICBBU1NFUlRfU1RSRVEoImRsb3BlbiBmYWlsZWQ6IGxpYnJhcnkgXCJsaWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wLnNvXCIgd2Fzbid0IGxvYWRlZCBhbmQgUlRMRF9OT0xPQUQgcHJldmVudGVkIGl0IiwgZGxlcnJvcigpKTsKLSNlbHNlIC8vIGdsaWJjIGFsbG93cyByZWN1cnNpdmUgbGlua3MKLSAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpOwotICBkbGNsb3NlKGhhbmRsZSk7CiAjZW5kaWYKKworICBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2Euc28iLCBSVExEX05PVyB8IFJUTERfTk9MT0FEKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlID09IG51bGxwdHIpOworfQorCitURVNUKGRsZmNuLCBkbG9wZW5fbm9kZWxldGUpIHsKKyAgc3RhdGljIGJvb2wgaXNfdW5sb2FkZWQgPSBmYWxzZTsKKworICB2b2lkKiBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3Rfbm9kZWxldGVfMS5zbyIsIFJUTERfTk9XIHwgUlRMRF9OT0RFTEVURSk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZSAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisgIHZvaWQgKCpzZXRfdW5sb2FkX2ZsYWdfcHRyKShib29sKik7CisgIHNldF91bmxvYWRfZmxhZ19wdHIgPSByZWludGVycHJldF9jYXN0PHZvaWQgKCopKGJvb2wqKT4oZGxzeW0oaGFuZGxlLCAiZGxvcGVuX25vZGVsZXRlXzFfc2V0X3VubG9hZF9mbGFnX3B0ciIpKTsKKyAgQVNTRVJUX1RSVUUoc2V0X3VubG9hZF9mbGFnX3B0ciAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisgIHNldF91bmxvYWRfZmxhZ19wdHIoJmlzX3VubG9hZGVkKTsKKworICB1aW50MzJfdCogdGF4aWNhYl9udW1iZXIgPSByZWludGVycHJldF9jYXN0PHVpbnQzMl90Kj4oZGxzeW0oaGFuZGxlLCAiZGxvcGVuX25vZGVsZXRlXzFfdGF4aWNhYl9udW1iZXIiKSk7CisgIEFTU0VSVF9UUlVFKHRheGljYWJfbnVtYmVyICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgQVNTRVJUX0VRKDE3MjlVLCAqdGF4aWNhYl9udW1iZXIpOworICAqdGF4aWNhYl9udW1iZXIgPSAyOworCisgIGRsY2xvc2UoaGFuZGxlKTsKKyAgQVNTRVJUX1RSVUUoIWlzX3VubG9hZGVkKTsKKworICB1aW50MzJfdCogdGF4aWNhYl9udW1iZXJfYWZ0ZXJfZGxjbG9zZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihkbHN5bShoYW5kbGUsICJkbG9wZW5fbm9kZWxldGVfMV90YXhpY2FiX251bWJlciIpKTsKKyAgQVNTRVJUX0VRKHRheGljYWJfbnVtYmVyX2FmdGVyX2RsY2xvc2UsIHRheGljYWJfbnVtYmVyKTsKKyAgQVNTRVJUX0VRKDJVLCAqdGF4aWNhYl9udW1iZXJfYWZ0ZXJfZGxjbG9zZSk7CisKKworICBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3Rfbm9kZWxldGVfMS5zbyIsIFJUTERfTk9XKTsKKyAgdWludDMyX3QqIHRheGljYWJfbnVtYmVyMiA9IHJlaW50ZXJwcmV0X2Nhc3Q8dWludDMyX3QqPihkbHN5bShoYW5kbGUsICJkbG9wZW5fbm9kZWxldGVfMV90YXhpY2FiX251bWJlciIpKTsKKyAgQVNTRVJUX0VRKHRheGljYWJfbnVtYmVyMiwgdGF4aWNhYl9udW1iZXIpOworCisgIEFTU0VSVF9FUSgyVSwgKnRheGljYWJfbnVtYmVyMik7CisKKyAgZGxjbG9zZShoYW5kbGUpOworICBBU1NFUlRfVFJVRSghaXNfdW5sb2FkZWQpOworfQorCitURVNUKGRsZmNuLCBkbG9wZW5fbm9kZWxldGVfb25fc2Vjb25kX2Rsb3BlbikgeworICBzdGF0aWMgYm9vbCBpc191bmxvYWRlZCA9IGZhbHNlOworCisgIHZvaWQqIGhhbmRsZSA9IGRsb3BlbigibGlidGVzdF9ub2RlbGV0ZV8yLnNvIiwgUlRMRF9OT1cpOworICBBU1NFUlRfVFJVRShoYW5kbGUgIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICB2b2lkICgqc2V0X3VubG9hZF9mbGFnX3B0cikoYm9vbCopOworICBzZXRfdW5sb2FkX2ZsYWdfcHRyID0gcmVpbnRlcnByZXRfY2FzdDx2b2lkICgqKShib29sKik+KGRsc3ltKGhhbmRsZSwgImRsb3Blbl9ub2RlbGV0ZV8yX3NldF91bmxvYWRfZmxhZ19wdHIiKSk7CisgIEFTU0VSVF9UUlVFKHNldF91bmxvYWRfZmxhZ19wdHIgIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICBzZXRfdW5sb2FkX2ZsYWdfcHRyKCZpc191bmxvYWRlZCk7CisKKyAgdWludDMyX3QqIHRheGljYWJfbnVtYmVyID0gcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+KGRsc3ltKGhhbmRsZSwgImRsb3Blbl9ub2RlbGV0ZV8yX3RheGljYWJfbnVtYmVyIikpOworICBBU1NFUlRfVFJVRSh0YXhpY2FiX251bWJlciAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisKKyAgQVNTRVJUX0VRKDE3MjlVLCAqdGF4aWNhYl9udW1iZXIpOworICAqdGF4aWNhYl9udW1iZXIgPSAyOworCisgIC8vIFRoaXMgUlRMRF9OT0RFTEVURSBzaG91bGQgYmUgaWdub3JlZAorICB2b2lkKiBoYW5kbGUxID0gZGxvcGVuKCJsaWJ0ZXN0X25vZGVsZXRlXzIuc28iLCBSVExEX05PVyB8IFJUTERfTk9ERUxFVEUpOworICBBU1NFUlRfVFJVRShoYW5kbGUxICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgQVNTRVJUX0VRKGhhbmRsZSwgaGFuZGxlMSk7CisKKyAgZGxjbG9zZShoYW5kbGUxKTsKKyAgZGxjbG9zZShoYW5kbGUpOworCisgIEFTU0VSVF9UUlVFKGlzX3VubG9hZGVkKTsKK30KKworVEVTVChkbGZjbiwgZGxvcGVuX25vZGVsZXRlX2R0X2ZsYWdzXzEpIHsKKyAgc3RhdGljIGJvb2wgaXNfdW5sb2FkZWQgPSBmYWxzZTsKKworICB2b2lkKiBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3Rfbm9kZWxldGVfZHRfZmxhZ3NfMS5zbyIsIFJUTERfTk9XKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgdm9pZCAoKnNldF91bmxvYWRfZmxhZ19wdHIpKGJvb2wqKTsKKyAgc2V0X3VubG9hZF9mbGFnX3B0ciA9IHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCAoKikoYm9vbCopPihkbHN5bShoYW5kbGUsICJkbG9wZW5fbm9kZWxldGVfZHRfZmxhZ3NfMV9zZXRfdW5sb2FkX2ZsYWdfcHRyIikpOworICBBU1NFUlRfVFJVRShzZXRfdW5sb2FkX2ZsYWdfcHRyICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgc2V0X3VubG9hZF9mbGFnX3B0cigmaXNfdW5sb2FkZWQpOworCisgIGRsY2xvc2UoaGFuZGxlKTsKKyAgQVNTRVJUX1RSVUUoIWlzX3VubG9hZGVkKTsKK30KKworVEVTVChkbGZjbiwgZGxzeW1fZGZfMV9nbG9iYWwpIHsKKyAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJsaWJ0ZXN0X2Rsc3ltX2RmXzFfZ2xvYmFsLnNvIiwgUlRMRF9OT1cpOworICBBU1NFUlRfVFJVRShoYW5kbGUgIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICBpbnQgKCpnZXRfYW5zd2VyKSgpOworICBnZXRfYW5zd2VyID0gcmVpbnRlcnByZXRfY2FzdDxpbnQgKCopKCk+KGRsc3ltKGhhbmRsZSwgImRsX2RmXzFfZ2xvYmFsX2dldF9hbnN3ZXIiKSk7CisgIEFTU0VSVF9UUlVFKGdldF9hbnN3ZXIgIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICBBU1NFUlRfRVEoNDIsIGdldF9hbnN3ZXIoKSk7CisgIEFTU0VSVF9FUSgwLCBkbGNsb3NlKGhhbmRsZSkpOwogfQogCiBURVNUKGRsZmNuLCBkbG9wZW5fZmFpbHVyZSkgewpAQCAtMjkwLDcgKzY5OCw3IEBACiAgIEFTU0VSVF9FUSgwLCBkbGNsb3NlKHNlbGYpKTsKIH0KIAotVEVTVChkbGZjbiwgZGxhZGRyKSB7CitURVNUKGRsZmNuLCBkbGFkZHJfZXhlY3V0YWJsZSkgewogICBkbGVycm9yKCk7IC8vIENsZWFyIGFueSBwZW5kaW5nIGVycm9ycy4KICAgdm9pZCogc2VsZiA9IGRsb3BlbihOVUxMLCBSVExEX05PVyk7CiAgIEFTU0VSVF9UUlVFKHNlbGYgIT0gTlVMTCk7CkBAIC0zMTEsMTMgKzcxOSwxMSBAQAogICByYyA9IHJlYWRsaW5rKCIvcHJvYy9zZWxmL2V4ZSIsIGV4ZWN1dGFibGVfcGF0aCwgc2l6ZW9mKGV4ZWN1dGFibGVfcGF0aCkpOwogICBBU1NFUlRfTkUocmMsIC0xKTsKICAgZXhlY3V0YWJsZV9wYXRoW3JjXSA9ICdcMCc7Ci0gIHN0ZDo6c3RyaW5nIGV4ZWN1dGFibGVfbmFtZShiYXNlbmFtZShleGVjdXRhYmxlX3BhdGgpKTsKIAogICAvLyBUaGUgZmlsZW5hbWUgc2hvdWxkIGJlIHRoYXQgb2YgdGhpcyBleGVjdXRhYmxlLgotICAvLyBOb3RlIHRoYXQgd2UgZG9uJ3Qga25vdyB3aGV0aGVyIG9yIG5vdCB3ZSBoYXZlIHRoZSBmdWxsIHBhdGgsIHNvIHdlIHdhbnQgYW4gImVuZHNfd2l0aCIgdGVzdC4KLSAgc3RkOjpzdHJpbmcgZGxpX2ZuYW1lKGluZm8uZGxpX2ZuYW1lKTsKLSAgZGxpX2ZuYW1lID0gYmFzZW5hbWUoJmRsaV9mbmFtZVswXSk7Ci0gIEFTU0VSVF9FUShkbGlfZm5hbWUsIGV4ZWN1dGFibGVfbmFtZSk7CisgIGNoYXIgZGxpX3JlYWxwYXRoW1BBVEhfTUFYXTsKKyAgQVNTRVJUX1RSVUUocmVhbHBhdGgoaW5mby5kbGlfZm5hbWUsIGRsaV9yZWFscGF0aCkgIT0gbnVsbHB0cik7CisgIEFTU0VSVF9TVFJFUShleGVjdXRhYmxlX3BhdGgsIGRsaV9yZWFscGF0aCk7CiAKICAgLy8gVGhlIHN5bWJvbCBuYW1lIHNob3VsZCBiZSB0aGUgc3ltYm9sIHdlIGxvb2tlZCB1cC4KICAgQVNTRVJUX1NUUkVRKGluZm8uZGxpX3NuYW1lLCAiRGxTeW1UZXN0RnVuY3Rpb24iKTsKQEAgLTMyNSwyMiArNzMxLDE2IEBACiAgIC8vIFRoZSBhZGRyZXNzIHNob3VsZCBiZSB0aGUgZXhhY3QgYWRkcmVzcyBvZiB0aGUgc3ltYm9sLgogICBBU1NFUlRfRVEoaW5mby5kbGlfc2FkZHIsIHN5bSk7CiAKLSAgLy8gTG9vayBpbiAvcHJvYy9waWQvbWFwcyB0byBmaW5kIG91dCB3aGF0IGFkZHJlc3Mgd2Ugd2VyZSBsb2FkZWQgYXQuCi0gIC8vIFRPRE86IGZhY3RvciAvcHJvYy9waWQvbWFwcyBwYXJzaW5nIG91dCBpbnRvIGEgY2xhc3MgYW5kIHJldXNlIGFsbCBvdmVyIGJpb25pYy4KLSAgdm9pZCogYmFzZV9hZGRyZXNzID0gTlVMTDsKLSAgY2hhciBsaW5lW0JVRlNJWl07Ci0gIEZJTEUqIGZwID0gZm9wZW4oIi9wcm9jL3NlbGYvbWFwcyIsICJyIik7Ci0gIEFTU0VSVF9UUlVFKGZwICE9IE5VTEwpOwotICB3aGlsZSAoZmdldHMobGluZSwgc2l6ZW9mKGxpbmUpLCBmcCkgIT0gTlVMTCkgewotICAgIHVpbnRwdHJfdCBzdGFydCA9IHN0cnRvdWwobGluZSwgMCwgMTYpOwotICAgIGxpbmVbc3RybGVuKGxpbmUpIC0gMV0gPSAnXDAnOyAvLyBDaG9tcCB0aGUgJ1xuJy4KLSAgICBjaGFyKiBwYXRoID0gc3RyY2hyKGxpbmUsICcvJyk7Ci0gICAgaWYgKHBhdGggIT0gTlVMTCAmJiBzdHJjbXAoZXhlY3V0YWJsZV9wYXRoLCBwYXRoKSA9PSAwKSB7Ci0gICAgICBiYXNlX2FkZHJlc3MgPSByZWludGVycHJldF9jYXN0PHZvaWQqPihzdGFydCk7CisgIHN0ZDo6dmVjdG9yPG1hcF9yZWNvcmQ+IG1hcHM7CisgIEFTU0VSVF9UUlVFKE1hcHM6OnBhcnNlX21hcHMoJm1hcHMpKTsKKworICB2b2lkKiBiYXNlX2FkZHJlc3MgPSBudWxscHRyOworICBmb3IgKGNvbnN0IG1hcF9yZWNvcmQmIHJlYyA6IG1hcHMpIHsKKyAgICBpZiAoZXhlY3V0YWJsZV9wYXRoID09IHJlYy5wYXRobmFtZSkgeworICAgICAgYmFzZV9hZGRyZXNzID0gcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocmVjLmFkZHJfc3RhcnQpOwogICAgICAgYnJlYWs7CiAgICAgfQogICB9Ci0gIGZjbG9zZShmcCk7CiAKICAgLy8gVGhlIGJhc2UgYWRkcmVzcyBzaG91bGQgYmUgdGhlIGFkZHJlc3Mgd2Ugd2VyZSBsb2FkZWQgYXQuCiAgIEFTU0VSVF9FUShpbmZvLmRsaV9mYmFzZSwgYmFzZV9hZGRyZXNzKTsKQEAgLTM0OCw2ICs3NDgsMzIgQEAKICAgQVNTRVJUX0VRKDAsIGRsY2xvc2Uoc2VsZikpOwogfQogCisjaWYgZGVmaW5lZChfX0xQNjRfXykKKyNkZWZpbmUgQklPTklDX1BBVEhfVE9fTElCQyAiL3N5c3RlbS9saWI2NC9saWJjLnNvIgorI2Vsc2UKKyNkZWZpbmUgQklPTklDX1BBVEhfVE9fTElCQyAiL3N5c3RlbS9saWIvbGliYy5zbyIKKyNlbmRpZgorCitURVNUKGRsZmNuLCBkbGFkZHJfbGliYykgeworI2lmIGRlZmluZWQoX19CSU9OSUNfXykKKyAgRGxfaW5mbyBpbmZvOworICB2b2lkKiBhZGRyID0gcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4ocHV0cyk7IC8vIHdlbGwta25vd24gbGliYyBmdW5jdGlvbgorICBBU1NFUlRfVFJVRShkbGFkZHIoYWRkciwgJmluZm8pICE9IDApOworCisgIC8vIC9zeXN0ZW0vbGliIGlzIHN5bWxpbmsgd2hlbiB0aGlzIHRlc3QgaXMgZXhlY3V0ZWQgb24gaG9zdC4KKyAgY2hhciBsaWJjX3JlYWxwYXRoW1BBVEhfTUFYXTsKKyAgQVNTRVJUX1RSVUUocmVhbHBhdGgoQklPTklDX1BBVEhfVE9fTElCQywgbGliY19yZWFscGF0aCkgPT0gbGliY19yZWFscGF0aCk7CisKKyAgQVNTRVJUX1NUUkVRKGxpYmNfcmVhbHBhdGgsIGluZm8uZGxpX2ZuYW1lKTsKKyAgLy8gVE9ETzogYWRkIGNoZWNrIGZvciBkZmlfZmJhc2UKKyAgQVNTRVJUX1NUUkVRKCJwdXRzIiwgaW5mby5kbGlfc25hbWUpOworICBBU1NFUlRfRVEoYWRkciwgaW5mby5kbGlfc2FkZHIpOworI2Vsc2UKKyAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZyBmb3IgZ2xpYmMuIEdsaWJjIHJldHVybnMgcGF0aCBmcm9tIGxkY29uZmlnICIKKyAgICAgICJmb3IgbGliYy5zbywgd2hpY2ggaXMgc3ltbGluayBpdHNlbGYgKG5vdCBhIHJlYWxwYXRoKS5cbiI7CisjZW5kaWYKK30KKwogVEVTVChkbGZjbiwgZGxhZGRyX2ludmFsaWQpIHsKICAgRGxfaW5mbyBpbmZvOwogCkBAIC0zNjIsMTkgKzc4OCw1MiBAQAogICBBU1NFUlRfVFJVRShkbGVycm9yKCkgPT0gTlVMTCk7IC8vIGRsYWRkcigzKSBkb2Vzbid0IHNldCBkbGVycm9yKDMpLgogfQogCi0vLyBPdXIgZHluYW1pYyBsaW5rZXIgZG9lc24ndCBzdXBwb3J0IEdOVSBoYXNoIHRhYmxlcy4KLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCiAvLyBHTlUtc3R5bGUgRUxGIGhhc2ggdGFibGVzIGFyZSBpbmNvbXBhdGlibGUgd2l0aCB0aGUgTUlQUyBBQkkuCiAvLyBNSVBTIHJlcXVpcmVzIC5keW5zeW0gdG8gYmUgc29ydGVkIHRvIG1hdGNoIHRoZSBHT1QgYnV0IEdOVS1zdHlsZSByZXF1aXJlcyBzb3J0aW5nIGJ5IGhhc2ggY29kZS4KLSNpZiAhZGVmaW5lZChfX21pcHNfXykKIFRFU1QoZGxmY24sIGRsb3Blbl9saWJyYXJ5X3dpdGhfb25seV9nbnVfaGFzaCkgeworI2lmICFkZWZpbmVkKF9fbWlwc19fKQogICBkbGVycm9yKCk7IC8vIENsZWFyIGFueSBwZW5kaW5nIGVycm9ycy4KLSAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJuby1lbGYtaGFzaC10YWJsZS1saWJyYXJ5LnNvIiwgUlRMRF9OT1cpOwotICBBU1NFUlRfVFJVRShoYW5kbGUgPT0gTlVMTCk7Ci0gIEFTU0VSVF9TVFJFUSgiZGxvcGVuIGZhaWxlZDogZW1wdHkvbWlzc2luZyBEVF9IQVNIIGluIFwibm8tZWxmLWhhc2gtdGFibGUtbGlicmFyeS5zb1wiIChidWlsdCB3aXRoIC0taGFzaC1zdHlsZT1nbnU/KSIsIGRsZXJyb3IoKSk7CisgIHZvaWQqIGhhbmRsZSA9IGRsb3BlbigibGliZ251LWhhc2gtdGFibGUtbGlicmFyeS5zbyIsIFJUTERfTk9XKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgYXV0byBndWFyZCA9IG1ha2Vfc2NvcGVfZ3VhcmQoWyZdKCkgeworICAgIGRsY2xvc2UoaGFuZGxlKTsKKyAgfSk7CisgIHZvaWQqIHN5bSA9IGRsc3ltKGhhbmRsZSwgImdldFJhbmRvbU51bWJlciIpOworICBBU1NFUlRfVFJVRShzeW0gIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICBpbnQgKCpmbikodm9pZCk7CisgIGZuID0gcmVpbnRlcnByZXRfY2FzdDxpbnQgKCopKHZvaWQpPihzeW0pOworICBFWFBFQ1RfRVEoNCwgZm4oKSk7CisKKyAgRGxfaW5mbyBkbGluZm87CisgIEFTU0VSVF9UUlVFKDAgIT0gZGxhZGRyKHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGZuKSwgJmRsaW5mbykpOworCisgIEFTU0VSVF9UUlVFKGZuID09IGRsaW5mby5kbGlfc2FkZHIpOworICBBU1NFUlRfU1RSRVEoImdldFJhbmRvbU51bWJlciIsIGRsaW5mby5kbGlfc25hbWUpOworICBBU1NFUlRfU1VCU1RSKCJsaWJnbnUtaGFzaC10YWJsZS1saWJyYXJ5LnNvIiwgZGxpbmZvLmRsaV9mbmFtZSk7CisjZWxzZQorICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nIGZvciBtaXBzL21pcHM2NDsgbWlwcyB0b29sY2hhaW4gZG9lcyBub3Qgc3VwcG9ydCAnLS1oYXNoLXN0eWxlPWdudSdcbiI7CisjZW5kaWYKIH0KLSNlbmRpZgotI2VuZGlmCisKK1RFU1QoZGxmY24sIGRsb3Blbl9saWJyYXJ5X3dpdGhfb25seV9zeXN2X2hhc2gpIHsKKyAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJsaWJzeXN2LWhhc2gtdGFibGUtbGlicmFyeS5zbyIsIFJUTERfTk9XKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgYXV0byBndWFyZCA9IG1ha2Vfc2NvcGVfZ3VhcmQoWyZdKCkgeworICAgIGRsY2xvc2UoaGFuZGxlKTsKKyAgfSk7CisgIHZvaWQqIHN5bSA9IGRsc3ltKGhhbmRsZSwgImdldFJhbmRvbU51bWJlciIpOworICBBU1NFUlRfVFJVRShzeW0gIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICBpbnQgKCpmbikodm9pZCk7CisgIGZuID0gcmVpbnRlcnByZXRfY2FzdDxpbnQgKCopKHZvaWQpPihzeW0pOworICBFWFBFQ1RfRVEoNCwgZm4oKSk7CisKKyAgRGxfaW5mbyBkbGluZm87CisgIEFTU0VSVF9UUlVFKDAgIT0gZGxhZGRyKHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGZuKSwgJmRsaW5mbykpOworCisgIEFTU0VSVF9UUlVFKGZuID09IGRsaW5mby5kbGlfc2FkZHIpOworICBBU1NFUlRfU1RSRVEoImdldFJhbmRvbU51bWJlciIsIGRsaW5mby5kbGlfc25hbWUpOworICBBU1NFUlRfU1VCU1RSKCJsaWJzeXN2LWhhc2gtdGFibGUtbGlicmFyeS5zbyIsIGRsaW5mby5kbGlfZm5hbWUpOworfQogCiBURVNUKGRsZmNuLCBkbG9wZW5fYmFkX2ZsYWdzKSB7CiAgIGRsZXJyb3IoKTsgLy8gQ2xlYXIgYW55IHBlbmRpbmcgZXJyb3JzLgpAQCAtNDE5LDcgKzg3OCw3IEBACiAKIFRFU1QoZGxmY24sIGRsc3ltX3dlYWtfZnVuYykgewogICBkbGVycm9yKCk7Ci0gIHZvaWQqIGhhbmRsZSA9IGRsb3BlbigibGlidGVzdF9kbHN5bV93ZWFrX2Z1bmMuc28iLFJUTERfTk9XKTsKKyAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJsaWJ0ZXN0X2Rsc3ltX3dlYWtfZnVuYy5zbyIsIFJUTERfTk9XKTsKICAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IE5VTEwpOwogCiAgIGludCAoKndlYWtfZnVuYykoKTsKQEAgLTQyOSwxMCArODg4LDk2IEBACiAgIGRsY2xvc2UoaGFuZGxlKTsKIH0KIAorVEVTVChkbGZjbiwgZGxvcGVuX3VuZGVmaW5lZF93ZWFrX2Z1bmMpIHsKKyAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJsaWJ0ZXN0X2Rsb3Blbl93ZWFrX3VuZGVmaW5lZF9mdW5jLnNvIiwgUlRMRF9OT1cpOworICBBU1NFUlRfVFJVRShoYW5kbGUgIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICBpbnQgKCp3ZWFrX2Z1bmMpKCk7CisgIHdlYWtfZnVuYyA9IHJlaW50ZXJwcmV0X2Nhc3Q8aW50ICgqKSgpPihkbHN5bShoYW5kbGUsICJ1c2Vfd2Vha191bmRlZmluZWRfZnVuYyIpKTsKKyAgQVNTRVJUX1RSVUUod2Vha19mdW5jICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgRVhQRUNUX0VRKDY1NTEsIHdlYWtfZnVuYygpKTsKKyAgZGxjbG9zZShoYW5kbGUpOworfQorCiBURVNUKGRsZmNuLCBkbG9wZW5fc3ltbGluaykgewogICB2b2lkKiBoYW5kbGUxID0gZGxvcGVuKCJsaWJkbGV4dF90ZXN0LnNvIiwgUlRMRF9OT1cpOwogICB2b2lkKiBoYW5kbGUyID0gZGxvcGVuKCJsaWJkbGV4dF90ZXN0X3YyLnNvIiwgUlRMRF9OT1cpOwogICBBU1NFUlRfVFJVRShoYW5kbGUxICE9IE5VTEwpOwogICBBU1NFUlRfVFJVRShoYW5kbGUyICE9IE5VTEwpOwogICBBU1NFUlRfRVEoaGFuZGxlMSwgaGFuZGxlMik7CisgIGRsY2xvc2UoaGFuZGxlMSk7CisgIGRsY2xvc2UoaGFuZGxlMik7Cit9CisKKy8vIGxpYnRlc3RfZGxvcGVuX2Zyb21fY3Rvcl9tYWluLnNvIGRlcGVuZHMgb24KKy8vIGxpYnRlc3RfZGxvcGVuX2Zyb21fY3Rvci5zbyB3aGljaCBoYXMgYSBjb25zdHJ1Y3RvcgorLy8gdGhhdCBjYWxscyBkbG9wZW4obGliYy4uLikuIFRoaXMgaXMgdG8gdGVzdCB0aGUgc2l0dWF0aW9uCisvLyBkZXNjcmliZWQgaW4gYi83OTQxNzE2LgorVEVTVChkbGZjbiwgZGxvcGVuX2Rsb3Blbl9mcm9tX2N0b3IpIHsKKyNpZiBkZWZpbmVkKF9fQklPTklDX18pCisgIHZvaWQqIGhhbmRsZSA9IGRsb3BlbigibGlidGVzdF9kbG9wZW5fZnJvbV9jdG9yX21haW4uc28iLCBSVExEX05PVyk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZSAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisgIGRsY2xvc2UoaGFuZGxlKTsKKyNlbHNlCisgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBpcyBkaXNhYmxlZCBmb3IgZ2xpYmMgKGdsaWJjIHNlZ2ZhdWx0cyBpZiB5b3UgdHJ5IHRvIGNhbGwgZGxvcGVuIGZyb20gYSBjb25zdHJ1Y3RvcikuXG4iOworI2VuZGlmCit9CisKK1RFU1QoZGxmY24sIHN5bWJvbF92ZXJzaW9uaW5nX3VzZV92MSkgeworICB2b2lkKiBoYW5kbGUgPSBkbG9wZW4oImxpYnRlc3RfdmVyc2lvbmVkX3VzZWxpYnYxLnNvIiwgUlRMRF9OT1cpOworICBBU1NFUlRfVFJVRShoYW5kbGUgIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICB0eXBlZGVmIGludCAoKmZuX3QpKCk7CisgIGZuX3QgZm4gPSByZWludGVycHJldF9jYXN0PGZuX3Q+KGRsc3ltKGhhbmRsZSwgImdldF9mdW5jdGlvbl92ZXJzaW9uIikpOworICBBU1NFUlRfVFJVRShmbiAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisgIEFTU0VSVF9FUSgxLCBmbigpKTsKKyAgZGxjbG9zZShoYW5kbGUpOworfQorCitURVNUKGRsZmNuLCBzeW1ib2xfdmVyc2lvbmluZ191c2VfdjIpIHsKKyAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJsaWJ0ZXN0X3ZlcnNpb25lZF91c2VsaWJ2Mi5zbyIsIFJUTERfTk9XKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgdHlwZWRlZiBpbnQgKCpmbl90KSgpOworICBmbl90IGZuID0gcmVpbnRlcnByZXRfY2FzdDxmbl90PihkbHN5bShoYW5kbGUsICJnZXRfZnVuY3Rpb25fdmVyc2lvbiIpKTsKKyAgQVNTRVJUX1RSVUUoZm4gIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICBBU1NFUlRfRVEoMiwgZm4oKSk7CisgIGRsY2xvc2UoaGFuZGxlKTsKK30KKworVEVTVChkbGZjbiwgc3ltYm9sX3ZlcnNpb25pbmdfdXNlX290aGVyX3YyKSB7CisgIHZvaWQqIGhhbmRsZSA9IGRsb3BlbigibGlidGVzdF92ZXJzaW9uZWRfdXNlbGlidjJfb3RoZXIuc28iLCBSVExEX05PVyk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZSAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisgIHR5cGVkZWYgaW50ICgqZm5fdCkoKTsKKyAgZm5fdCBmbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Zm5fdD4oZGxzeW0oaGFuZGxlLCAiZ2V0X2Z1bmN0aW9uX3ZlcnNpb24iKSk7CisgIEFTU0VSVF9UUlVFKGZuICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgQVNTRVJUX0VRKDIwLCBmbigpKTsKKyAgZGxjbG9zZShoYW5kbGUpOworfQorCitURVNUKGRsZmNuLCBzeW1ib2xfdmVyc2lvbmluZ191c2Vfb3RoZXJfdjMpIHsKKyAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJsaWJ0ZXN0X3ZlcnNpb25lZF91c2VsaWJ2M19vdGhlci5zbyIsIFJUTERfTk9XKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgdHlwZWRlZiBpbnQgKCpmbl90KSgpOworICBmbl90IGZuID0gcmVpbnRlcnByZXRfY2FzdDxmbl90PihkbHN5bShoYW5kbGUsICJnZXRfZnVuY3Rpb25fdmVyc2lvbiIpKTsKKyAgQVNTRVJUX1RSVUUoZm4gIT0gbnVsbHB0cikgPDwgZGxlcnJvcigpOworICBBU1NFUlRfRVEoMywgZm4oKSk7CisgIGRsY2xvc2UoaGFuZGxlKTsKK30KKworVEVTVChkbGZjbiwgc3ltYm9sX3ZlcnNpb25pbmdfZGVmYXVsdF92aWFfZGxzeW0pIHsKKyAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJsaWJ0ZXN0X3ZlcnNpb25lZF9saWIuc28iLCBSVExEX05PVyk7CisgIEFTU0VSVF9UUlVFKGhhbmRsZSAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisgIHR5cGVkZWYgaW50ICgqZm5fdCkoKTsKKyAgZm5fdCBmbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Zm5fdD4oZGxzeW0oaGFuZGxlLCAidmVyc2lvbmVkX2Z1bmN0aW9uIikpOworICBBU1NFUlRfVFJVRShmbiAhPSBudWxscHRyKSA8PCBkbGVycm9yKCk7CisgIEFTU0VSVF9FUSgzLCBmbigpKTsgLy8gdGhlIGRlZmF1bHQgdmVyc2lvbiBpcyAzCisgIGRsY2xvc2UoaGFuZGxlKTsKK30KKworLy8gVGhpcyBwcmVlbXB0cyB0aGUgaW1wbGVtZW50YXRpb24gZnJvbSBsaWJ0ZXN0X3ZlcnNpb25lZF9saWIuc28KK2V4dGVybiAiQyIgaW50IHZlcnNpb25femVyb19mdW5jdGlvbigpIHsKKyAgcmV0dXJuIDA7Cit9CisKKy8vIFRoaXMgcHJlZW1wdHMgdGhlIGltcGxlbWVudGF0aW9uIGZyb20gbGlidGVzdF92ZXJzaW9uZWRfdXNlbGlidiouc28KK2V4dGVybiAiQyIgaW50IHZlcnNpb25femVyb19mdW5jdGlvbjIoKSB7CisgIHJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEvdGVzdHMvZXJyb3JfdGVzdC5jcHAgYi90ZXN0cy9lcnJvcl90ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZmVlMTZmCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvZXJyb3JfdGVzdC5jcHAKQEAgLTAsMCArMSw3MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqICAgIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKKyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCisgKiBDT1BZUklHSFQgT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTCisgKiBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQKKyAqIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwKKyAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVAorICogT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GCisgKiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KKworI2luY2x1ZGUgPGVycm9yLmg+CisKKyNpbmNsdWRlICJCaW9uaWNEZWF0aFRlc3QuaCIKKworc3RhdGljIHNpemVfdCBnX3Rlc3RfZXJyb3JfcHJpbnRfcHJvZ25hbWVfaW52b2NhdGlvbl9jb3VudDsKKworc3RhdGljIHZvaWQgdGVzdF9lcnJvcl9wcmludF9wcm9nbmFtZSgpIHsKKyAgKytnX3Rlc3RfZXJyb3JfcHJpbnRfcHJvZ25hbWVfaW52b2NhdGlvbl9jb3VudDsKK30KKworVEVTVChlcnJvciwgc21va2UpIHsKKyAgZXJyb3JfbWVzc2FnZV9jb3VudCA9IDA7CisgIGVycm9yKDAsIDAsICJvb3BzIik7CisgIEFTU0VSVF9FUSgxVSwgZXJyb3JfbWVzc2FnZV9jb3VudCk7CisgIGVycm9yKDAsIEVOT0VOVCwgImNvdWxkbid0IG9wZW4gZmlsZSAnJXMnIiwgImJsYWgiKTsKKyAgQVNTRVJUX0VRKDJVLCBlcnJvcl9tZXNzYWdlX2NvdW50KTsKKworICBlcnJvcl9wcmludF9wcm9nbmFtZSA9IHRlc3RfZXJyb3JfcHJpbnRfcHJvZ25hbWU7CisgIGdfdGVzdF9lcnJvcl9wcmludF9wcm9nbmFtZV9pbnZvY2F0aW9uX2NvdW50ID0gMDsKKyAgZXJyb3IoMCwgMCwgIm9vcHMiKTsKKyAgQVNTRVJUX0VRKDFVLCBnX3Rlc3RfZXJyb3JfcHJpbnRfcHJvZ25hbWVfaW52b2NhdGlvbl9jb3VudCk7CisKKyAgZXJyb3JfYXRfbGluZSgwLCAwLCAiYmxhaC5jIiwgMTIzLCAiaGVsbG8gJXMiLCAid29ybGQiKTsKKworICBlcnJvcl9wcmludF9wcm9nbmFtZSA9IE5VTEw7Cit9CisKK1RFU1QoZXJyb3JfRGVhdGhUZXN0LCBlcnJvcl9leGl0KSB7CisgIEFTU0VSVF9FWElUKGVycm9yKDIyLCAwLCAieCVjIiwgJ3knKSwgOjp0ZXN0aW5nOjpFeGl0ZWRXaXRoQ29kZSgyMiksICJ4eSIpOworfQorCitURVNUKGVycm9yX0RlYXRoVGVzdCwgZXJyb3JfZXhpdF93aXRoX2Vycm5vKSB7CisgIEFTU0VSVF9FWElUKGVycm9yKDIyLCBFQkFERiwgInglYyIsICd5JyksIDo6dGVzdGluZzo6RXhpdGVkV2l0aENvZGUoMjIpLCAiOiB4eTogQmFkIGZpbGUgZGVzY3JpcHRvciIpOworfQorCitURVNUKGVycm9yX0RlYXRoVGVzdCwgZXJyb3JfYXRfbGluZV9leGl0KSB7CisgIEFTU0VSVF9FWElUKGVycm9yX2F0X2xpbmUoMjIsIDAsICJhLmMiLCAxMjMsICJ4JWMiLCAneScpLCA6OnRlc3Rpbmc6OkV4aXRlZFdpdGhDb2RlKDIyKSwgIjphLmM6MTIzOiB4eSIpOworfQorCitURVNUKGVycm9yX0RlYXRoVGVzdCwgZXJyb3JfYXRfbGluZV9leGl0X3dpdGhfZXJybm8pIHsKKyAgQVNTRVJUX0VYSVQoZXJyb3JfYXRfbGluZSgyMiwgRUJBREYsICJhLmMiLCAxMjMsICJ4JWMiLCAneScpLCA6OnRlc3Rpbmc6OkV4aXRlZFdpdGhDb2RlKDIyKSwgIjphLmM6MTIzOiB4eTogQmFkIGZpbGUgZGVzY3JpcHRvciIpOworfQpkaWZmIC0tZ2l0IGEvdGVzdHMvZmlsZS1jaGVjay1jeHggYi90ZXN0cy9maWxlLWNoZWNrLWN4eApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi44ZWNlODM1Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvZmlsZS1jaGVjay1jeHgKQEAgLTAsMCArMSwxMyBAQAorIyEvYmluL2Jhc2gKK0ZJTEVDSEVDSz0kMQorQ1hYPSQyCitQUkVGSVg9JDMKK0FSR1M9JHsqOjR9CitTT1VSQ0U9JChlY2hvICRBUkdTIHwgZ3JlcCAtb1AgJ1xTK1wuY3BwXGInKQorT0JKPSQoZWNobyAkQVJHUyB8IGdyZXAgLW9QICdcUytcLm9cYicpCiskQ1hYICRBUkdTIDI+JjEgfCAkRklMRUNIRUNLIC1jaGVjay1wcmVmaXg9JFBSRUZJWCAkU09VUkNFCitpZiBbICIkPyIgLWVxIDAgXTsgdGhlbgorICB0b3VjaCAkT0JKCitlbHNlCisgIGV4aXQgMQorZmkKZGlmZiAtLWdpdCBhL3Rlc3RzL2ZvcnRpZnlfY29tcGlsYXRpb25fdGVzdC5jcHAgYi90ZXN0cy9mb3J0aWZ5X2NvbXBpbGF0aW9uX3Rlc3QuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUzN2IzNDEKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9mb3J0aWZ5X2NvbXBpbGF0aW9uX3Rlc3QuY3BwCkBAIC0wLDAgKzEsMjMyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI3VuZGVmIF9GT1JUSUZZX1NPVVJDRQorI2RlZmluZSBfRk9SVElGWV9TT1VSQ0UgMgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgorI2luY2x1ZGUgPHBvbGwuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorI2luY2x1ZGUgPHRpbWUuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKwordm9pZCB0ZXN0X3NwcmludGYoKSB7CisgIGNoYXIgYnVmWzRdOworCisgIC8vIE5PTElOVE5FWFRMSU5FKHdoaXRlc3BhY2UvbGluZV9sZW5ndGgpCisgIC8vIEdDQzogd2FybmluZzogY2FsbCB0byBpbnQgX19idWlsdGluX19fc3ByaW50Zl9jaGsoY2hhciosIGludCwge3sobG9uZyApP319dW5zaWduZWQgaW50LCBjb25zdCBjaGFyKiwgLi4uKSB3aWxsIGFsd2F5cyBvdmVyZmxvdyBkZXN0aW5hdGlvbiBidWZmZXIKKyAgLy8gY2xhbmcgc2hvdWxkIGVtaXQgYSB3YXJuaW5nLCBidXQgZG9lc24ndAorICBzcHJpbnRmKGJ1ZiwgImZvb2JhciIpOyAgLy8gTk9MSU5UKHJ1bnRpbWUvcHJpbnRmKQorCisgIC8vIE5PTElOVE5FWFRMSU5FKHdoaXRlc3BhY2UvbGluZV9sZW5ndGgpCisgIC8vIEdDQzogd2FybmluZzogY2FsbCB0byBpbnQgX19idWlsdGluX19fc3ByaW50Zl9jaGsoY2hhciosIGludCwge3sobG9uZyApP319dW5zaWduZWQgaW50LCBjb25zdCBjaGFyKiwgLi4uKSB3aWxsIGFsd2F5cyBvdmVyZmxvdyBkZXN0aW5hdGlvbiBidWZmZXIKKyAgLy8gY2xhbmcgc2hvdWxkIGVtaXQgYSB3YXJuaW5nLCBidXQgZG9lc24ndAorICBzcHJpbnRmKGJ1ZiwgIiVzIiwgImZvb2JhciIpOyAgLy8gTk9MSU5UKHJ1bnRpbWUvcHJpbnRmKQorfQorCit2b2lkIHRlc3Rfc25wcmludGYoKSB7CisgIGNoYXIgYnVmWzRdOworCisgIC8vIE5PTElOVE5FWFRMSU5FKHdoaXRlc3BhY2UvbGluZV9sZW5ndGgpCisgIC8vIEdDQzogd2FybmluZzogY2FsbCB0byBpbnQgX19idWlsdGluX19fc25wcmludGZfY2hrKGNoYXIqLCB7eyhsb25nICk/fX11bnNpZ25lZCBpbnQsIGludCwge3sobG9uZyApP319dW5zaWduZWQgaW50LCBjb25zdCBjaGFyKiwgLi4uKSB3aWxsIGFsd2F5cyBvdmVyZmxvdyBkZXN0aW5hdGlvbiBidWZmZXIKKyAgLy8gY2xhbmcgc2hvdWxkIGVtaXQgYSB3YXJuaW5nLCBidXQgZG9lc24ndAorICBzbnByaW50ZihidWYsIDUsICJmb29iYXIiKTsgIC8vIE5PTElOVChydW50aW1lL3ByaW50ZikKKworICAvLyBOT0xJTlRORVhUTElORSh3aGl0ZXNwYWNlL2xpbmVfbGVuZ3RoKQorICAvLyBHQ0M6IHdhcm5pbmc6IGNhbGwgdG8gaW50IF9fYnVpbHRpbl9fX3NucHJpbnRmX2NoayhjaGFyKiwge3sobG9uZyApP319dW5zaWduZWQgaW50LCBpbnQsIHt7KGxvbmcgKT99fXVuc2lnbmVkIGludCwgY29uc3QgY2hhciosIC4uLikgd2lsbCBhbHdheXMgb3ZlcmZsb3cgZGVzdGluYXRpb24gYnVmZmVyCisgIC8vIGNsYW5nIHNob3VsZCBlbWl0IGEgd2FybmluZywgYnV0IGRvZXNuJ3QKKyAgc25wcmludGYoYnVmLCA1LCAiJXMiLCAiZm9vYmFyIik7ICAvLyBOT0xJTlQocnVudGltZS9wcmludGYpCisKKyAgLy8gTk9MSU5UTkVYVExJTkUod2hpdGVzcGFjZS9saW5lX2xlbmd0aCkKKyAgLy8gR0NDOiB3YXJuaW5nOiBjYWxsIHRvIGludCBfX2J1aWx0aW5fX19zbnByaW50Zl9jaGsoY2hhciosIHt7KGxvbmcgKT99fXVuc2lnbmVkIGludCwgaW50LCB7eyhsb25nICk/fX11bnNpZ25lZCBpbnQsIGNvbnN0IGNoYXIqLCAuLi4pIHdpbGwgYWx3YXlzIG92ZXJmbG93IGRlc3RpbmF0aW9uIGJ1ZmZlcgorICAvLyBjbGFuZyBzaG91bGQgZW1pdCBhIHdhcm5pbmcsIGJ1dCBkb2Vzbid0CisgIHNucHJpbnRmKGJ1ZiwgNSwgIiAlcyAiLCAiZm9vYmFyIik7ICAvLyBOT0xJTlQocnVudGltZS9wcmludGYpCisKKyAgLy8gTk9MSU5UTkVYVExJTkUod2hpdGVzcGFjZS9saW5lX2xlbmd0aCkKKyAgLy8gR0NDOiB3YXJuaW5nOiBjYWxsIHRvIGludCBfX2J1aWx0aW5fX19zbnByaW50Zl9jaGsoY2hhciosIHt7KGxvbmcgKT99fXVuc2lnbmVkIGludCwgaW50LCB7eyhsb25nICk/fX11bnNpZ25lZCBpbnQsIGNvbnN0IGNoYXIqLCAuLi4pIHdpbGwgYWx3YXlzIG92ZXJmbG93IGRlc3RpbmF0aW9uIGJ1ZmZlcgorICAvLyBjbGFuZyBzaG91bGQgZW1pdCBhIHdhcm5pbmcsIGJ1dCBkb2Vzbid0CisgIHNucHJpbnRmKGJ1ZiwgNSwgIiVkIiwgMTAwMDAwKTsgIC8vIE5PTElOVChydW50aW1lL3ByaW50ZikKK30KKwordm9pZCB0ZXN0X21lbWNweSgpIHsKKyAgY2hhciBidWZbNF07CisKKyAgLy8gTk9MSU5UTkVYVExJTkUod2hpdGVzcGFjZS9saW5lX2xlbmd0aCkKKyAgLy8gR0NDOiB3YXJuaW5nOiBjYWxsIHRvIHZvaWQqIF9fYnVpbHRpbl9fX21lbWNweV9jaGsodm9pZCosIGNvbnN0IHZvaWQqLCB7eyhsb25nICk/fX11bnNpZ25lZCBpbnQsIHt7KGxvbmcgKT99fXVuc2lnbmVkIGludCkgd2lsbCBhbHdheXMgb3ZlcmZsb3cgZGVzdGluYXRpb24gYnVmZmVyCisgIC8vIGNsYW5nIHNob3VsZCBlbWl0IGEgd2FybmluZywgYnV0IGRvZXNuJ3QKKyAgbWVtY3B5KGJ1ZiwgImZvb2JhciIsIHNpemVvZigiZm9vYmFyIikpOworfQorCit2b2lkIHRlc3RfbWVtbW92ZSgpIHsKKyAgY2hhciBidWZbNF07CisKKyAgLy8gTk9MSU5UTkVYVExJTkUod2hpdGVzcGFjZS9saW5lX2xlbmd0aCkKKyAgLy8gR0NDOiB3YXJuaW5nOiBjYWxsIHRvIHZvaWQqIF9fYnVpbHRpbl9fX21lbW1vdmVfY2hrKHZvaWQqLCBjb25zdCB2b2lkKiwge3sobG9uZyApP319dW5zaWduZWQgaW50LCB7eyhsb25nICk/fX11bnNpZ25lZCBpbnQpIHdpbGwgYWx3YXlzIG92ZXJmbG93IGRlc3RpbmF0aW9uIGJ1ZmZlcgorICAvLyBjbGFuZyBzaG91bGQgZW1pdCBhIHdhcm5pbmcsIGJ1dCBkb2Vzbid0CisgIG1lbW1vdmUoYnVmLCAiZm9vYmFyIiwgc2l6ZW9mKCJmb29iYXIiKSk7Cit9CisKK3ZvaWQgdGVzdF9tZW1zZXQoKSB7CisgIGNoYXIgYnVmWzRdOworCisgIC8vIE5PTElOVE5FWFRMSU5FKHdoaXRlc3BhY2UvbGluZV9sZW5ndGgpCisgIC8vIEdDQzogd2FybmluZzogY2FsbCB0byB2b2lkKiBfX2J1aWx0aW5fX19tZW1zZXRfY2hrKHZvaWQqLCBpbnQsIHt7KGxvbmcgKT99fXVuc2lnbmVkIGludCwge3sobG9uZyApP319dW5zaWduZWQgaW50KSB3aWxsIGFsd2F5cyBvdmVyZmxvdyBkZXN0aW5hdGlvbiBidWZmZXIKKyAgLy8gY2xhbmcgc2hvdWxkIGVtaXQgYSB3YXJuaW5nLCBidXQgZG9lc24ndAorICBtZW1zZXQoYnVmLCAwLCA2KTsKK30KKwordm9pZCB0ZXN0X3N0cmNweSgpIHsKKyAgY2hhciBidWZbNF07CisKKyAgLy8gTk9MSU5UTkVYVExJTkUod2hpdGVzcGFjZS9saW5lX2xlbmd0aCkKKyAgLy8gR0NDOiB3YXJuaW5nOiBjYWxsIHRvIHt7KGNoYXJcKiBfX2J1aWx0aW5fX19zdHJjcHlfY2hrXChjaGFyXCosIGNvbnN0IGNoYXJcKiwgdW5zaWduZWQgaW50XCkpfCh2b2lkXCogX19idWlsdGluX19fbWVtY3B5X2Noa1wodm9pZFwqLCBjb25zdCB2b2lkXCosIChsb25nICk/dW5zaWduZWQgaW50LCAobG9uZyApP3Vuc2lnbmVkIGludFwpKX19IHdpbGwgYWx3YXlzIG92ZXJmbG93IGRlc3RpbmF0aW9uIGJ1ZmZlcgorICAvLyBjbGFuZyBzaG91bGQgZW1pdCBhIHdhcm5pbmcsIGJ1dCBkb2Vzbid0CisgIHN0cmNweShidWYsICJmb29iYXIiKTsgIC8vIE5PTElOVChydW50aW1lL3ByaW50ZikKK30KKwordm9pZCB0ZXN0X3N0cGNweSgpIHsKKyAgY2hhciBidWZbNF07CisKKyAgLy8gTk9MSU5UTkVYVExJTkUod2hpdGVzcGFjZS9saW5lX2xlbmd0aCkKKyAgLy8gR0NDOiB3YXJuaW5nOiBjYWxsIHRvIGNoYXIqIF9fYnVpbHRpbl9fX3N0cGNweV9jaGsoY2hhciosIGNvbnN0IGNoYXIqLCB7eyhsb25nICk/fX11bnNpZ25lZCBpbnQpIHdpbGwgYWx3YXlzIG92ZXJmbG93IGRlc3RpbmF0aW9uIGJ1ZmZlcgorICAvLyBjbGFuZyBzaG91bGQgZW1pdCBhIHdhcm5pbmcsIGJ1dCBkb2Vzbid0CisgIHN0cGNweShidWYsICJmb29iYXIiKTsKK30KKwordm9pZCB0ZXN0X3N0cm5jcHkoKSB7CisgIGNoYXIgYnVmWzRdOworCisgIC8vIE5PTElOVE5FWFRMSU5FKHdoaXRlc3BhY2UvbGluZV9sZW5ndGgpCisgIC8vIEdDQzogd2FybmluZzogY2FsbCB0byBjaGFyKiBfX2J1aWx0aW5fX19zdHJuY3B5X2NoayhjaGFyKiwgY29uc3QgY2hhciosIHt7KGxvbmcgKT99fXVuc2lnbmVkIGludCwge3sobG9uZyApP319dW5zaWduZWQgaW50KSB3aWxsIGFsd2F5cyBvdmVyZmxvdyBkZXN0aW5hdGlvbiBidWZmZXIKKyAgLy8gY2xhbmcgc2hvdWxkIGVtaXQgYSB3YXJuaW5nLCBidXQgZG9lc24ndAorICBzdHJuY3B5KGJ1ZiwgImZvb2JhciIsIHNpemVvZigiZm9vYmFyIikpOworfQorCit2b2lkIHRlc3Rfc3RyY2F0KCkgeworICBjaGFyIGJ1Zls0XSA9ICIiOworCisgIC8vIE5PTElOVE5FWFRMSU5FKHdoaXRlc3BhY2UvbGluZV9sZW5ndGgpCisgIC8vIEdDQzogd2FybmluZzogY2FsbCB0byB7eyhjaGFyXCogX19idWlsdGluX19fc3RyY2F0X2Noa1woY2hhclwqLCBjb25zdCBjaGFyXCosIHVuc2lnbmVkIGludFwpKXwodm9pZFwqIF9fYnVpbHRpbl9fX21lbWNweV9jaGtcKHZvaWRcKiwgY29uc3Qgdm9pZFwqLCAobG9uZyApP3Vuc2lnbmVkIGludCwgKGxvbmcgKT91bnNpZ25lZCBpbnRcKSl9fSB3aWxsIGFsd2F5cyBvdmVyZmxvdyBkZXN0aW5hdGlvbiBidWZmZXIKKyAgLy8gY2xhbmcgc2hvdWxkIGVtaXQgYSB3YXJuaW5nLCBidXQgZG9lc24ndAorICBzdHJjYXQoYnVmLCAiZm9vYmFyIik7ICAvLyBOT0xJTlQocnVudGltZS9wcmludGYpCit9CisKK3ZvaWQgdGVzdF9zdHJuY2F0KCkgeworICBjaGFyIGJ1Zls0XSA9ICIiOworCisgIC8vIE5PTElOVE5FWFRMSU5FKHdoaXRlc3BhY2UvbGluZV9sZW5ndGgpCisgIC8vIEdDQzogd2FybmluZzogY2FsbCB0byB7eyhjaGFyXCogX19idWlsdGluX19fc3RyY2F0X2Noa1woY2hhclwqLCBjb25zdCBjaGFyXCosIHVuc2lnbmVkIGludFwpKXwodm9pZFwqIF9fYnVpbHRpbl9fX21lbWNweV9jaGtcKHZvaWRcKiwgY29uc3Qgdm9pZFwqLCAobG9uZyApP3Vuc2lnbmVkIGludCwgKGxvbmcgKT91bnNpZ25lZCBpbnRcKSl9fSB3aWxsIGFsd2F5cyBvdmVyZmxvdyBkZXN0aW5hdGlvbiBidWZmZXIKKyAgLy8gZ2NjIG91dHB1dCB3YXJuaW5nIHdpdGggX19idWlsdGluX19fc3RyY2F0X2NoayBmb3IgX19idWlsdGluX19fc3RybmNhdF9jaGsuCisgIC8vIGNsYW5nIHNob3VsZCBlbWl0IGEgd2FybmluZywgYnV0IGRvZXNuJ3QKKyAgc3RybmNhdChidWYsICJmb29iYXIiLCBzaXplb2YoImZvb2JhciIpKTsKK30KKwordm9pZCB0ZXN0X3ZzcHJpbnRmKGNvbnN0IGNoYXIqIGZtdCwgLi4uKSB7CisgIHZhX2xpc3QgdmE7CisgIGNoYXIgYnVmWzRdOworICB2YV9zdGFydCh2YSwgZm10KTsKKworICAvLyBOT0xJTlRORVhUTElORSh3aGl0ZXNwYWNlL2xpbmVfbGVuZ3RoKQorICAvLyBHQ0M6IHdhcm5pbmc6IGNhbGwgdG8gaW50IF9fYnVpbHRpbl9fX3ZzcHJpbnRmX2NoayhjaGFyKiwgaW50LCB7eyhsb25nICk/fX11bnNpZ25lZCBpbnQsIGNvbnN0IGNoYXIqLCB7eyhfX3ZhX2xpc3QpfCh2b2lkXCopfChjaGFyXCopfChfX3ZhX2xpc3RfdGFnXCopfX0pIHdpbGwgYWx3YXlzIG92ZXJmbG93IGRlc3RpbmF0aW9uIGJ1ZmZlcgorICAvLyBjbGFuZyBzaG91bGQgZW1pdCBhIHdhcm5pbmcsIGJ1dCBkb2Vzbid0CisgIHZzcHJpbnRmKGJ1ZiwgImZvb2JhciIsIHZhKTsKKyAgdmFfZW5kKHZhKTsKK30KKwordm9pZCB0ZXN0X3ZzbnByaW50Zihjb25zdCBjaGFyKiBmbXQsIC4uLikgeworICB2YV9saXN0IHZhOworICBjaGFyIGJ1Zls0XTsKKyAgdmFfc3RhcnQodmEsIGZtdCk7CisKKyAgLy8gTk9MSU5UTkVYVExJTkUod2hpdGVzcGFjZS9saW5lX2xlbmd0aCkKKyAgLy8gR0NDOiB3YXJuaW5nOiBjYWxsIHRvIGludCBfX2J1aWx0aW5fX192c25wcmludGZfY2hrKGNoYXIqLCB7eyhsb25nICk/fX11bnNpZ25lZCBpbnQsIGludCwge3sobG9uZyApP319dW5zaWduZWQgaW50LCBjb25zdCBjaGFyKiwge3soX192YV9saXN0KXwodm9pZFwqKXwoY2hhclwqKXwoX192YV9saXN0X3RhZ1wqKX19KSB3aWxsIGFsd2F5cyBvdmVyZmxvdyBkZXN0aW5hdGlvbiBidWZmZXIKKyAgLy8gY2xhbmcgc2hvdWxkIGVtaXQgYSB3YXJuaW5nLCBidXQgZG9lc24ndAorICB2c25wcmludGYoYnVmLCA1LCAiZm9vYmFyIiwgdmEpOyAgLy8gTk9MSU5UKHJ1bnRpbWUvcHJpbnRmKQorCisgIHZhX2VuZCh2YSk7Cit9CisKK3ZvaWQgdGVzdF9mZ2V0cygpIHsKKyAgY2hhciBidWZbNF07CisKKyAgLy8gTk9MSU5UTkVYVExJTkUod2hpdGVzcGFjZS9saW5lX2xlbmd0aCkKKyAgLy8gR0NDOiBlcnJvcjogY2FsbCB0byAnX19mZ2V0c190b29fc21hbGxfZXJyb3InIGRlY2xhcmVkIHdpdGggYXR0cmlidXRlIGVycm9yOiBmZ2V0cyBjYWxsZWQgd2l0aCBzaXplIGxlc3MgdGhhbiB6ZXJvCisgIC8vIGNsYW5nIHNob3VsZCBlbWl0IGEgd2FybmluZywgYnV0IGRvZXNuJ3QKKyAgZmdldHMoYnVmLCAtMSwgc3RkaW4pOworCisgIC8vIE5PTElOVE5FWFRMSU5FKHdoaXRlc3BhY2UvbGluZV9sZW5ndGgpCisgIC8vIEdDQzogZXJyb3I6IGNhbGwgdG8gJ19fZmdldHNfdG9vX2JpZ19lcnJvcicgZGVjbGFyZWQgd2l0aCBhdHRyaWJ1dGUgZXJyb3I6IGZnZXRzIGNhbGxlZCB3aXRoIHNpemUgYmlnZ2VyIHRoYW4gYnVmZmVyCisgIC8vIGNsYW5nIHNob3VsZCBlbWl0IGEgd2FybmluZywgYnV0IGRvZXNuJ3QKKyAgZmdldHMoYnVmLCA2LCBzdGRpbik7Cit9CisKK3ZvaWQgdGVzdF9yZWN2ZnJvbSgpIHsKKyAgY2hhciBidWZbNF07CisgIHNvY2thZGRyX2luIGFkZHI7CisKKyAgLy8gTk9MSU5UTkVYVExJTkUod2hpdGVzcGFjZS9saW5lX2xlbmd0aCkKKyAgLy8gR0NDOiBlcnJvcjogY2FsbCB0byAnX19yZWN2ZnJvbV9lcnJvcicgZGVjbGFyZWQgd2l0aCBhdHRyaWJ1dGUgZXJyb3I6IHJlY3Zmcm9tIGNhbGxlZCB3aXRoIHNpemUgYmlnZ2VyIHRoYW4gYnVmZmVyCisgIC8vIGNsYW5nIHNob3VsZCBlbWl0IGEgd2FybmluZywgYnV0IGRvZXNuJ3QKKyAgcmVjdmZyb20oMCwgYnVmLCA2LCAwLCByZWludGVycHJldF9jYXN0PHNvY2thZGRyKj4oJmFkZHIpLCBOVUxMKTsKK30KKwordm9pZCB0ZXN0X3VtYXNrKCkgeworICAvLyBOT0xJTlRORVhUTElORSh3aGl0ZXNwYWNlL2xpbmVfbGVuZ3RoKQorICAvLyBHQ0M6IGVycm9yOiBjYWxsIHRvICdfX3VtYXNrX2ludmFsaWRfbW9kZScgZGVjbGFyZWQgd2l0aCBhdHRyaWJ1dGUgZXJyb3I6IHVtYXNrIGNhbGxlZCB3aXRoIGludmFsaWQgbW9kZQorICAvLyBjbGFuZyBzaG91bGQgZW1pdCBhIHdhcm5pbmcsIGJ1dCBkb2Vzbid0CisgIHVtYXNrKDAxNzc3KTsKK30KKwordm9pZCB0ZXN0X3JlYWQoKSB7CisgIGNoYXIgYnVmWzRdOworICAvLyBOT0xJTlRORVhUTElORSh3aGl0ZXNwYWNlL2xpbmVfbGVuZ3RoKQorICAvLyBHQ0M6IGVycm9yOiBjYWxsIHRvICdfX3JlYWRfZGVzdF9zaXplX2Vycm9yJyBkZWNsYXJlZCB3aXRoIGF0dHJpYnV0ZSBlcnJvcjogcmVhZCBjYWxsZWQgd2l0aCBzaXplIGJpZ2dlciB0aGFuIGRlc3RpbmF0aW9uCisgIC8vIGNsYW5nIHNob3VsZCBlbWl0IGEgd2FybmluZywgYnV0IGRvZXNuJ3QKKyAgcmVhZCgwLCBidWYsIDYpOworfQorCit2b2lkIHRlc3Rfb3BlbigpIHsKKyAgLy8gTk9MSU5UTkVYVExJTkUod2hpdGVzcGFjZS9saW5lX2xlbmd0aCkKKyAgLy8gR0NDOiBlcnJvcjogY2FsbCB0byAnX19jcmVhdF9taXNzaW5nX21vZGUnIGRlY2xhcmVkIHdpdGggYXR0cmlidXRlIGVycm9yOiBjYWxsZWQgd2l0aCBPX0NSRUFULCBidXQgbWlzc2luZyBtb2RlCisgIC8vIGNsYW5nIHNob3VsZCBlbWl0IGEgd2FybmluZywgYnV0IGRvZXNuJ3QKKyAgb3BlbigiL2Rldi9udWxsIiwgT19DUkVBVCk7CisKKyAgLy8gTk9MSU5UTkVYVExJTkUod2hpdGVzcGFjZS9saW5lX2xlbmd0aCkKKyAgLy8gR0NDOiBlcnJvcjogY2FsbCB0byAnX19jcmVhdF90b29fbWFueV9hcmdzJyBkZWNsYXJlZCB3aXRoIGF0dHJpYnV0ZSBlcnJvcjogdG9vIG1hbnkgYXJndW1lbnRzCisgIC8vIGNsYW5nIHNob3VsZCBlbWl0IGEgd2FybmluZywgYnV0IGRvZXNuJ3QKKyAgb3BlbigiL2Rldi9udWxsIiwgT19DUkVBVCwgMCwgMCk7Cit9CisKK3ZvaWQgdGVzdF9wb2xsKCkgeworICBwb2xsZmQgZmRzWzFdOworICAvLyBOT0xJTlRORVhUTElORSh3aGl0ZXNwYWNlL2xpbmVfbGVuZ3RoKQorICAvLyBHQ0M6IGVycm9yOiBjYWxsIHRvICdfX3BvbGxfdG9vX3NtYWxsX2Vycm9yJyBkZWNsYXJlZCB3aXRoIGF0dHJpYnV0ZSBlcnJvcjogcG9sbDogcG9sbGZkIGFycmF5IHNtYWxsZXIgdGhhbiBmZCBjb3VudAorICAvLyBjbGFuZyBzaG91bGQgZW1pdCBhIHdhcm5pbmcsIGJ1dCBkb2Vzbid0CisgIHBvbGwoZmRzLCAyLCAwKTsKK30KKwordm9pZCB0ZXN0X3Bwb2xsKCkgeworICBwb2xsZmQgZmRzWzFdOworICB0aW1lc3BlYyB0aW1lb3V0OworICAvLyBOT0xJTlRORVhUTElORSh3aGl0ZXNwYWNlL2xpbmVfbGVuZ3RoKQorICAvLyBHQ0M6IGVycm9yOiBjYWxsIHRvICdfX3Bwb2xsX3Rvb19zbWFsbF9lcnJvcicgZGVjbGFyZWQgd2l0aCBhdHRyaWJ1dGUgZXJyb3I6IHBwb2xsOiBwb2xsZmQgYXJyYXkgc21hbGxlciB0aGFuIGZkIGNvdW50CisgIC8vIGNsYW5nIHNob3VsZCBlbWl0IGEgd2FybmluZywgYnV0IGRvZXNuJ3QKKyAgcHBvbGwoZmRzLCAyLCAmdGltZW91dCwgTlVMTCk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9mb3J0aWZ5X3Rlc3QuY3BwIGIvdGVzdHMvZm9ydGlmeV90ZXN0LmNwcAppbmRleCAzNTJjYWM2Li40ZmFjY2I0IDEwMDY0NAotLS0gYS90ZXN0cy9mb3J0aWZ5X3Rlc3QuY3BwCisrKyBiL3Rlc3RzL2ZvcnRpZnlfdGVzdC5jcHAKQEAgLTE1LDM4ICsxNSwzMiBAQAogICovCiAKICNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgotI2luY2x1ZGUgPHNpZ25hbC5oPgotI2luY2x1ZGUgPHN0cmluZy5oPgotI2luY2x1ZGUgPHN0ZGFyZy5oPgotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPHN5cy9zdGF0Lmg+Ci0jaW5jbHVkZSA8c3lzL3NvY2tldC5oPgotI2luY2x1ZGUgPG1hbGxvYy5oPgotI2luY2x1ZGUgPGZjbnRsLmg+Ci0jaW5jbHVkZSA8c3lzL3ByY3RsLmg+CisjaW5jbHVkZSAiQmlvbmljRGVhdGhUZXN0LmgiCiAKLS8vIFdlIGhhdmUgdG8gc2F5ICJEZWF0aFRlc3QiIGhlcmUgc28gZ3Rlc3Qga25vd3MgdG8gcnVuIHRoaXMgdGVzdCAod2hpY2ggZXhpdHMpCi0vLyBpbiBpdHMgb3duIHByb2Nlc3MuIFVuZm9ydHVuYXRlbHksIHRoZSBDIHByZXByb2Nlc3NvciBkb2Vzbid0IGdpdmUgdXMgYW4KLS8vIGVhc3kgd2F5IHRvIGNvbmNhdGVuYXRlIHN0cmluZ3MsIHNvIHdlIG5lZWQgdG8gdXNlIHRoZSBjb21wbGljYXRlZCBtZXRob2QKLS8vIGJlbG93LiAqc2lnaCoKKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPG1hbGxvYy5oPgorI2luY2x1ZGUgPHBvbGwuaD4KKyNpbmNsdWRlIDxzaWduYWwuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDx0aW1lLmg+CisKKyNpZiBfX0JJT05JQ19fCisjZGVmaW5lIEFTU0VSVF9GT1JUSUZZKGV4cHIpIEFTU0VSVF9FWElUKGV4cHIsIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiRk9SVElGWSIpCisjZWxzZQorI2RlZmluZSBBU1NFUlRfRk9SVElGWShleHByKSBBU1NFUlRfRVhJVChleHByLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpCisjZW5kaWYKKworLy8gRm9ydGlmeSB0ZXN0IGNvZGUgbmVlZHMgdG8gcnVuIG11bHRpcGxlIHRpbWVzLCBzbyBURVNUX05BTUUgbWFjcm8gaXMgdXNlZCB0bworLy8gZGlzdGluZ3Vpc2ggZGlmZmVyZW50IHRlc3RzLiBURVNUX05BTUUgaXMgZGVmaW5lZCBpbiBjb21waWxhdGlvbiBjb21tYW5kLgogI2RlZmluZSBERUFUSFRFU1RfUEFTVEVSKG5hbWUpIG5hbWUjI19EZWF0aFRlc3QKICNkZWZpbmUgREVBVEhURVNUX0VWQUxVQVRPUihuYW1lKSBERUFUSFRFU1RfUEFTVEVSKG5hbWUpCiAjZGVmaW5lIERFQVRIVEVTVCBERUFUSFRFU1RfRVZBTFVBVE9SKFRFU1RfTkFNRSkKIAotY2xhc3MgREVBVEhURVNUIDogcHVibGljIHRlc3Rpbmc6OlRlc3QgewotIHByb3RlY3RlZDoKLSAgdmlydHVhbCB2b2lkIFNldFVwKCkgewotICAgIG9sZF9kdW1wYWJsZV8gPSBwcmN0bChQUl9HRVRfRFVNUEFCTEUsIDAsIDAsIDAsIDApOwotICAgIC8vIFN1cHByZXNzIGRlYnVnZ2VyZCBzdGFjayB0cmFjZXMuIFRvbyBzbG93LgotICAgIHByY3RsKFBSX1NFVF9EVU1QQUJMRSwgMCwgMCwgMCwgMCk7Ci0gIH0KLQotICB2aXJ0dWFsIHZvaWQgVGVhckRvd24oKSB7Ci0gICAgcHJjdGwoUFJfU0VUX0RVTVBBQkxFLCBvbGRfZHVtcGFibGVfLCAwLCAwLCAwLCAwKTsKLSAgfQotIHByaXZhdGU6Ci0gIGludCBvbGRfZHVtcGFibGVfOwotfTsKK2NsYXNzIERFQVRIVEVTVCA6IHB1YmxpYyBCaW9uaWNEZWF0aFRlc3Qge307CiAKICNpZiBkZWZpbmVkKF9GT1JUSUZZX1NPVVJDRSkgJiYgX0ZPUlRJRllfU09VUkNFID09IDIKIHN0cnVjdCBmb28gewpAQCAtNjAsMTEgKzU0LDkgQEAKIC8vIFRoaXMgdGVzdCBpcyBkaXNhYmxlZCBpbiBjbGFuZyBiZWNhdXNlIGNsYW5nIGRvZXNuJ3QgcHJvcGVybHkgZGV0ZWN0CiAvLyB0aGlzIGJ1ZmZlciBvdmVyZmxvdy4gVE9ETzogRml4IGNsYW5nLgogVEVTVF9GKERFQVRIVEVTVCwgc3RwbmNweV9mb3J0aWZpZWQyKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgZm9vIG15Zm9vOwogICBpbnQgY29weV9hbXQgPSBhdG9pKCIxMSIpOwotICBBU1NFUlRfRVhJVChzdHBuY3B5KG15Zm9vLmEsICIwMTIzNDU2Nzg5MCIsIGNvcHlfYW10KSwKLSAgICAgICAgICAgICAgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RwbmNweShteWZvby5hLCAiMDEyMzQ1Njc4OTAiLCBjb3B5X2FtdCkpOwogfQogI2VuZGlmCiAKQEAgLTcyLDEyICs2NCwxMCBAQAogLy8gVGhpcyB0ZXN0IGlzIGRpc2FibGVkIGluIGNsYW5nIGJlY2F1c2UgY2xhbmcgZG9lc24ndCBwcm9wZXJseSBkZXRlY3QKIC8vIHRoaXMgYnVmZmVyIG92ZXJmbG93LiBUT0RPOiBGaXggY2xhbmcuCiBURVNUX0YoREVBVEhURVNULCBzdHBuY3B5Ml9mb3J0aWZpZWQyKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgZm9vIG15Zm9vOwogICBtZW1zZXQoJm15Zm9vLCAwLCBzaXplb2YobXlmb28pKTsKICAgbXlmb28ub25lWzBdID0gJ0EnOyAvLyBub3QgbnVsbCB0ZXJtaW5hdGVkIHN0cmluZwotICBBU1NFUlRfRVhJVChzdHBuY3B5KG15Zm9vLmIsIG15Zm9vLm9uZSwgc2l6ZW9mKG15Zm9vLmIpKSwKLSAgICAgICAgICAgICAgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RwbmNweShteWZvby5iLCBteWZvby5vbmUsIHNpemVvZihteWZvby5iKSkpOwogfQogI2VuZGlmCiAKQEAgLTg1LDExICs3NSw5IEBACiAvLyBUaGlzIHRlc3QgaXMgZGlzYWJsZWQgaW4gY2xhbmcgYmVjYXVzZSBjbGFuZyBkb2Vzbid0IHByb3Blcmx5IGRldGVjdAogLy8gdGhpcyBidWZmZXIgb3ZlcmZsb3cuIFRPRE86IEZpeCBjbGFuZy4KIFRFU1RfRihERUFUSFRFU1QsIHN0cm5jcHlfZm9ydGlmaWVkMikgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGZvbyBteWZvbzsKICAgaW50IGNvcHlfYW10ID0gYXRvaSgiMTEiKTsKLSAgQVNTRVJUX0VYSVQoc3RybmNweShteWZvby5hLCAiMDEyMzQ1Njc4OTAiLCBjb3B5X2FtdCksCi0gICAgICAgICAgICAgIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKHN0cm5jcHkobXlmb28uYSwgIjAxMjM0NTY3ODkwIiwgY29weV9hbXQpKTsKIH0KICNlbmRpZgogCkBAIC05NywxMiArODUsMTAgQEAKIC8vIFRoaXMgdGVzdCBpcyBkaXNhYmxlZCBpbiBjbGFuZyBiZWNhdXNlIGNsYW5nIGRvZXNuJ3QgcHJvcGVybHkgZGV0ZWN0CiAvLyB0aGlzIGJ1ZmZlciBvdmVyZmxvdy4gVE9ETzogRml4IGNsYW5nLgogVEVTVF9GKERFQVRIVEVTVCwgc3RybmNweTJfZm9ydGlmaWVkMikgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGZvbyBteWZvbzsKICAgbWVtc2V0KCZteWZvbywgMCwgc2l6ZW9mKG15Zm9vKSk7CiAgIG15Zm9vLm9uZVswXSA9ICdBJzsgLy8gbm90IG51bGwgdGVybWluYXRlZCBzdHJpbmcKLSAgQVNTRVJUX0VYSVQoc3RybmNweShteWZvby5iLCBteWZvby5vbmUsIHNpemVvZihteWZvby5iKSksCi0gICAgICAgICAgICAgIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKHN0cm5jcHkobXlmb28uYiwgbXlmb28ub25lLCBzaXplb2YobXlmb28uYikpKTsKIH0KICNlbmRpZgogCkBAIC0xMTAsMTIgKzk2LDEwIEBACiAvLyBUaGlzIHRlc3QgaXMgZGlzYWJsZWQgaW4gY2xhbmcgYmVjYXVzZSBjbGFuZyBkb2Vzbid0IHByb3Blcmx5IGRldGVjdAogLy8gdGhpcyBidWZmZXIgb3ZlcmZsb3cuIFRPRE86IEZpeCBjbGFuZy4KIFRFU1RfRihERUFUSFRFU1QsIHNwcmludGZfZm9ydGlmaWVkMikgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGZvbyBteWZvbzsKICAgY2hhciBzb3VyY2VfYnVmWzE1XTsKICAgbWVtY3B5KHNvdXJjZV9idWYsICIxMjM0NTY3ODkwMTIzNCIsIDE1KTsKLSAgQVNTRVJUX0VYSVQoc3ByaW50ZihteWZvby5hLCAiJXMiLCBzb3VyY2VfYnVmKSwKLSAgICAgICAgICAgICAgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3ByaW50ZihteWZvby5hLCAiJXMiLCBzb3VyY2VfYnVmKSk7CiB9CiAjZW5kaWYKIApAQCAtMTIzLDEwICsxMDcsOCBAQAogLy8gVGhpcyB0ZXN0IGlzIGRpc2FibGVkIGluIGNsYW5nIGJlY2F1c2UgY2xhbmcgZG9lc24ndCBwcm9wZXJseSBkZXRlY3QKIC8vIHRoaXMgYnVmZmVyIG92ZXJmbG93LiBUT0RPOiBGaXggY2xhbmcuCiBURVNUX0YoREVBVEhURVNULCBzcHJpbnRmMl9mb3J0aWZpZWQyKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgZm9vIG15Zm9vOwotICBBU1NFUlRfRVhJVChzcHJpbnRmKG15Zm9vLmEsICIwMTIzNDU2Nzg5IiksCi0gICAgICAgICAgICAgIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKHNwcmludGYobXlmb28uYSwgIjAxMjM0NTY3ODkiKSk7CiB9CiAjZW5kaWYKIApAQCAtMTQ1LDEzICsxMjcsMTEgQEAKIH0KIAogVEVTVF9GKERFQVRIVEVTVCwgdnNwcmludGZfZm9ydGlmaWVkMikgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7Ci0gIEFTU0VSVF9FWElUKHZzcHJpbnRmX2hlbHBlcjIoIiVzIiwgIjAxMjM0NTY3ODkiKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkodnNwcmludGZfaGVscGVyMigiJXMiLCAiMDEyMzQ1Njc4OSIpKTsKIH0KIAogVEVTVF9GKERFQVRIVEVTVCwgdnNwcmludGYyX2ZvcnRpZmllZDIpIHsKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwotICBBU1NFUlRfRVhJVCh2c3ByaW50Zl9oZWxwZXIyKCIwMTIzNDU2Nzg5IiksIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKHZzcHJpbnRmX2hlbHBlcjIoIjAxMjM0NTY3ODkiKSk7CiB9CiAjZW5kaWYKIApAQCAtMTcxLDEzICsxNTEsMTEgQEAKIH0KIAogVEVTVF9GKERFQVRIVEVTVCwgdnNucHJpbnRmX2ZvcnRpZmllZDIpIHsKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwotICBBU1NFUlRfRVhJVCh2c25wcmludGZfaGVscGVyMigiJXMiLCAiMDEyMzQ1Njc4OSIpLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWSh2c25wcmludGZfaGVscGVyMigiJXMiLCAiMDEyMzQ1Njc4OSIpKTsKIH0KIAogVEVTVF9GKERFQVRIVEVTVCwgdnNucHJpbnRmMl9mb3J0aWZpZWQyKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKLSAgQVNTRVJUX0VYSVQodnNucHJpbnRmX2hlbHBlcjIoIjAxMjM0NTY3ODkiKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkodnNucHJpbnRmX2hlbHBlcjIoIjAxMjM0NTY3ODkiKSk7CiB9CiAjZW5kaWYKIApAQCAtMTg3LDExICsxNjUsOSBAQAogLy8gdGhpcyBidWZmZXIgb3ZlcmZsb3cuIFRPRE86IEZpeCBjbGFuZy4KIFRFU1RfRihERUFUSFRFU1QsIHN0cGNweV9mb3J0aWZpZWQyKSB7CiAjaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGZvbyBteWZvbzsKICAgY2hhciogc3JjID0gc3RyZHVwKCIiKTsKLSAgQVNTRVJUX0VYSVQoc3RwY3B5KG15Zm9vLmVtcHR5LCBzcmMpLAotICAgICAgICAgICAgICB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShzdHBjcHkobXlmb28uZW1wdHksIHNyYykpOwogICBmcmVlKHNyYyk7CiAjZWxzZSAvLyBfX0JJT05JQ19fCiAgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwpAQCAtMjA1LDExICsxODEsOSBAQAogLy8gdGhpcyBidWZmZXIgb3ZlcmZsb3cuIFRPRE86IEZpeCBjbGFuZy4KIFRFU1RfRihERUFUSFRFU1QsIHN0cmNweV9mb3J0aWZpZWQyKSB7CiAjaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGZvbyBteWZvbzsKICAgY2hhciogc3JjID0gc3RyZHVwKCIiKTsKLSAgQVNTRVJUX0VYSVQoc3RyY3B5KG15Zm9vLmVtcHR5LCBzcmMpLAotICAgICAgICAgICAgICB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShzdHJjcHkobXlmb28uZW1wdHksIHNyYykpOwogICBmcmVlKHNyYyk7CiAjZWxzZSAvLyBfX0JJT05JQ19fCiAgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwpAQCAtMjIzLDExICsxOTcsOSBAQAogLy8gdGhpcyBidWZmZXIgb3ZlcmZsb3cuIFRPRE86IEZpeCBjbGFuZy4KIFRFU1RfRihERUFUSFRFU1QsIHN0cmNweTJfZm9ydGlmaWVkMikgewogI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBmb28gbXlmb287CiAgIGNoYXIqIHNyYyA9IHN0cmR1cCgiMSIpOwotICBBU1NFUlRfRVhJVChzdHJjcHkobXlmb28uZW1wdHksIHNyYyksCi0gICAgICAgICAgICAgIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKHN0cmNweShteWZvby5lbXB0eSwgc3JjKSk7CiAgIGZyZWUoc3JjKTsKICNlbHNlIC8vIF9fQklPTklDX18KICAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7CkBAIC0yNDEsMTEgKzIxMyw5IEBACiAvLyB0aGlzIGJ1ZmZlciBvdmVyZmxvdy4gVE9ETzogRml4IGNsYW5nLgogVEVTVF9GKERFQVRIVEVTVCwgc3RyY3B5M19mb3J0aWZpZWQyKSB7CiAjaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGZvbyBteWZvbzsKICAgY2hhciogc3JjID0gc3RyZHVwKCIxMiIpOwotICBBU1NFUlRfRVhJVChzdHJjcHkobXlmb28ub25lLCBzcmMpLAotICAgICAgICAgICAgICB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShzdHJjcHkobXlmb28ub25lLCBzcmMpKTsKICAgZnJlZShzcmMpOwogI2Vsc2UgLy8gX19CSU9OSUNfXwogICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKQEAgLTI1OCwxMiArMjI4LDEwIEBACiAvLyB0aGlzIGJ1ZmZlciBvdmVyZmxvdy4gVE9ETzogRml4IGNsYW5nLgogVEVTVF9GKERFQVRIVEVTVCwgc3RyY2hyX2ZvcnRpZmllZDIpIHsKICNpZiBkZWZpbmVkKF9fQklPTklDX18pCi0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgZm9vIG15Zm9vOwogICBtZW1jcHkobXlmb28uYSwgIjAxMjM0NTY3ODkiLCBzaXplb2YobXlmb28uYSkpOwogICBteWZvby5iWzBdID0gJ1wwJzsKLSAgQVNTRVJUX0VYSVQocHJpbnRmKCIlcyIsIHN0cmNocihteWZvby5hLCAnYScpKSwKLSAgICAgICAgICAgICAgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkocHJpbnRmKCIlcyIsIHN0cmNocihteWZvby5hLCAnYScpKSk7CiAjZWxzZSAvLyBfX0JJT05JQ19fCiAgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwogI2VuZGlmIC8vIF9fQklPTklDX18KQEAgLTI3NSwxMiArMjQzLDEwIEBACiAvLyB0aGlzIGJ1ZmZlciBvdmVyZmxvdy4gVE9ETzogRml4IGNsYW5nLgogVEVTVF9GKERFQVRIVEVTVCwgc3RycmNocl9mb3J0aWZpZWQyKSB7CiAjaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGZvbyBteWZvbzsKICAgbWVtY3B5KG15Zm9vLmEsICIwMTIzNDU2Nzg5IiwgMTApOwogICBtZW1jcHkobXlmb28uYiwgIjAxMjM0IiwgNik7Ci0gIEFTU0VSVF9FWElUKHByaW50ZigiJXMiLCBzdHJyY2hyKG15Zm9vLmEsICdhJykpLAotICAgICAgICAgICAgICB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShwcmludGYoIiVzIiwgc3RycmNocihteWZvby5hLCAnYScpKSk7CiAjZWxzZSAvLyBfX0JJT05JQ19fCiAgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwogI2VuZGlmIC8vIF9fQklPTklDX18KQEAgLTI5MiwxMiArMjU4LDEwIEBACiAvLyB0aGlzIGJ1ZmZlciBvdmVyZmxvdy4gVE9ETzogRml4IGNsYW5nLgogVEVTVF9GKERFQVRIVEVTVCwgc3RybGNweV9mb3J0aWZpZWQyKSB7CiAjaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGZvbyBteWZvbzsKICAgc3RyY3B5KG15Zm9vLmEsICIwMSIpOwogICBzaXplX3QgbiA9IHN0cmxlbihteWZvby5hKTsKLSAgQVNTRVJUX0VYSVQoc3RybGNweShteWZvby5vbmUsIG15Zm9vLmEsIG4pLAotICAgICAgICAgICAgICB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShzdHJsY3B5KG15Zm9vLm9uZSwgbXlmb28uYSwgbikpOwogI2Vsc2UgLy8gX19CSU9OSUNfXwogICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKICNlbmRpZiAvLyBfX0JJT05JQ19fCkBAIC0zMDksMTMgKzI3MywxMSBAQAogLy8gdGhpcyBidWZmZXIgb3ZlcmZsb3cuIFRPRE86IEZpeCBjbGFuZy4KIFRFU1RfRihERUFUSFRFU1QsIHN0cmxjYXRfZm9ydGlmaWVkMikgewogI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBmb28gbXlmb287CiAgIHN0cmNweShteWZvby5hLCAiMDEiKTsKICAgbXlmb28ub25lWzBdID0gJ1wwJzsKICAgc2l6ZV90IG4gPSBzdHJsZW4obXlmb28uYSk7Ci0gIEFTU0VSVF9FWElUKHN0cmxjYXQobXlmb28ub25lLCBteWZvby5hLCBuKSwKLSAgICAgICAgICAgICAgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RybGNhdChteWZvby5vbmUsIG15Zm9vLmEsIG4pKTsKICNlbHNlIC8vIF9fQklPTklDX18KICAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7CiAjZW5kaWYgLy8gX19CSU9OSUNfXwpAQCAtMzI2LDExICsyODgsMTAgQEAKIC8vIFRoaXMgdGVzdCBpcyBkaXNhYmxlZCBpbiBjbGFuZyBiZWNhdXNlIGNsYW5nIGRvZXNuJ3QgcHJvcGVybHkgZGV0ZWN0CiAvLyB0aGlzIGJ1ZmZlciBvdmVyZmxvdy4gVE9ETzogRml4IGNsYW5nLgogVEVTVF9GKERFQVRIVEVTVCwgc3RybmNhdF9mb3J0aWZpZWQyKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgZm9vIG15Zm9vOwogICBzaXplX3QgbiA9IGF0b2koIjEwIik7IC8vIGF2b2lkIGNvbXBpbGVyIG9wdGltaXphdGlvbnMKICAgc3RybmNweShteWZvby5hLCAiMDEyMzQ1Njc4Iiwgbik7Ci0gIEFTU0VSVF9FWElUKHN0cm5jYXQobXlmb28uYSwgIjkiLCBuKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RybmNhdChteWZvby5hLCAiOSIsIG4pKTsKIH0KICNlbmRpZgogCkBAIC0zMzgsNTggKzI5OSw1MiBAQAogLy8gVGhpcyB0ZXN0IGlzIGRpc2FibGVkIGluIGNsYW5nIGJlY2F1c2UgY2xhbmcgZG9lc24ndCBwcm9wZXJseSBkZXRlY3QKIC8vIHRoaXMgYnVmZmVyIG92ZXJmbG93LiBUT0RPOiBGaXggY2xhbmcuCiBURVNUX0YoREVBVEhURVNULCBzdHJuY2F0Ml9mb3J0aWZpZWQyKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgZm9vIG15Zm9vOwogICBteWZvby5hWzBdID0gJ1wwJzsKICAgc2l6ZV90IG4gPSBhdG9pKCIxMCIpOyAvLyBhdm9pZCBjb21waWxlciBvcHRpbWl6YXRpb25zCi0gIEFTU0VSVF9FWElUKHN0cm5jYXQobXlmb28uYSwgIjAxMjM0NTY3ODkiLCBuKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RybmNhdChteWZvby5hLCAiMDEyMzQ1Njc4OSIsIG4pKTsKIH0KICNlbmRpZgogCiBURVNUX0YoREVBVEhURVNULCBzdHJuY2F0M19mb3J0aWZpZWQyKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgZm9vIG15Zm9vOwogICBtZW1jcHkobXlmb28uYSwgIjAxMjM0NTY3ODkiLCBzaXplb2YobXlmb28uYSkpOyAvLyB1bnRlcm1pbmF0ZWQgc3RyaW5nCiAgIG15Zm9vLmJbMF0gPSAnXDAnOwogICBzaXplX3QgbiA9IGF0b2koIjEwIik7IC8vIGF2b2lkIGNvbXBpbGVyIG9wdGltaXphdGlvbnMKLSAgQVNTRVJUX0VYSVQoc3RybmNhdChteWZvby5iLCBteWZvby5hLCBuKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RybmNhdChteWZvby5iLCBteWZvby5hLCBuKSk7CiB9CiAKICNpZm5kZWYgX19jbGFuZ19fCiAvLyBUaGlzIHRlc3QgaXMgZGlzYWJsZWQgaW4gY2xhbmcgYmVjYXVzZSBjbGFuZyBkb2Vzbid0IHByb3Blcmx5IGRldGVjdAogLy8gdGhpcyBidWZmZXIgb3ZlcmZsb3cuIFRPRE86IEZpeCBjbGFuZy4KIFRFU1RfRihERUFUSFRFU1QsIHN0cmNhdF9mb3J0aWZpZWQyKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgY2hhciBzcmNbMTFdOwogICBzdHJjcHkoc3JjLCAiMDEyMzQ1Njc4OSIpOwogICBmb28gbXlmb287CiAgIG15Zm9vLmFbMF0gPSAnXDAnOwotICBBU1NFUlRfRVhJVChzdHJjYXQobXlmb28uYSwgc3JjKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RyY2F0KG15Zm9vLmEsIHNyYykpOwogfQogI2VuZGlmCiAKIFRFU1RfRihERUFUSFRFU1QsIHN0cmNhdDJfZm9ydGlmaWVkMikgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGZvbyBteWZvbzsKICAgbWVtY3B5KG15Zm9vLmEsICIwMTIzNDU2Nzg5Iiwgc2l6ZW9mKG15Zm9vLmEpKTsgLy8gdW50ZXJtaW5hdGVkIHN0cmluZwogICBteWZvby5iWzBdID0gJ1wwJzsKLSAgQVNTRVJUX0VYSVQoc3RyY2F0KG15Zm9vLmIsIG15Zm9vLmEpLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShzdHJjYXQobXlmb28uYiwgbXlmb28uYSkpOwogfQogCiBURVNUX0YoREVBVEhURVNULCBzbnByaW50Zl9mb3J0aWZpZWQyKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgZm9vIG15Zm9vOwogICBzdHJjcHkobXlmb28uYSwgIjAxMjM0NTY3OCIpOwogICBzaXplX3QgbiA9IHN0cmxlbihteWZvby5hKSArIDI7Ci0gIEFTU0VSVF9FWElUKHNucHJpbnRmKG15Zm9vLmIsIG4sICJhJXMiLCBteWZvby5hKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc25wcmludGYobXlmb28uYiwgbiwgImElcyIsIG15Zm9vLmEpKTsKIH0KIAogVEVTVF9GKERFQVRIVEVTVCwgYnplcm9fZm9ydGlmaWVkMikgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGZvbyBteWZvbzsKICAgbWVtY3B5KG15Zm9vLmIsICIwMTIzNDU2Nzg5Iiwgc2l6ZW9mKG15Zm9vLmIpKTsKICAgc2l6ZV90IG4gPSBhdG9pKCIxMSIpOwotICBBU1NFUlRfRVhJVChiemVybyhteWZvby5iLCBuKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoYnplcm8obXlmb28uYiwgbikpOwogfQogCiAjZW5kaWYgLyogZGVmaW5lZChfRk9SVElGWV9TT1VSQ0UpICYmIF9GT1JUSUZZX1NPVVJDRT0yICovCkBAIC0zOTcsMTAgKzM1Miw5IEBACiAvLyBtdWx0aWJ5dGUgdGFyZ2V0IHdoZXJlIHdlIG92ZXIgZmlsbCAoc2hvdWxkIGZhaWwpCiBURVNUX0YoREVBVEhURVNULCBzdHJjcHlfZm9ydGlmaWVkKSB7CiAjaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGNoYXIgYnVmWzEwXTsKICAgY2hhciAqb3JpZyA9IHN0cmR1cCgiMDEyMzQ1Njc4OSIpOwotICBBU1NFUlRfRVhJVChzdHJjcHkoYnVmLCBvcmlnKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RyY3B5KGJ1Ziwgb3JpZykpOwogICBmcmVlKG9yaWcpOwogI2Vsc2UgLy8gX19CSU9OSUNfXwogICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKQEAgLTQxMCwxMCArMzY0LDkgQEAKIC8vIHplcm8gc2l6ZWQgdGFyZ2V0IHdpdGggIlwwIiBzb3VyY2UgKHNob3VsZCBmYWlsKQogVEVTVF9GKERFQVRIVEVTVCwgc3RyY3B5Ml9mb3J0aWZpZWQpIHsKICNpZiBkZWZpbmVkKF9fQklPTklDX18pCi0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgY2hhciBidWZbMF07CiAgIGNoYXIgKm9yaWcgPSBzdHJkdXAoIiIpOwotICBBU1NFUlRfRVhJVChzdHJjcHkoYnVmLCBvcmlnKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RyY3B5KGJ1Ziwgb3JpZykpOwogICBmcmVlKG9yaWcpOwogI2Vsc2UgLy8gX19CSU9OSUNfXwogICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKQEAgLTQyMywxMCArMzc2LDkgQEAKIC8vIHplcm8gc2l6ZWQgdGFyZ2V0IHdpdGggbG9uZ2VyIHNvdXJjZSAoc2hvdWxkIGZhaWwpCiBURVNUX0YoREVBVEhURVNULCBzdHJjcHkzX2ZvcnRpZmllZCkgewogI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBjaGFyIGJ1ZlswXTsKICAgY2hhciAqb3JpZyA9IHN0cmR1cCgiMSIpOwotICBBU1NFUlRfRVhJVChzdHJjcHkoYnVmLCBvcmlnKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RyY3B5KGJ1Ziwgb3JpZykpOwogICBmcmVlKG9yaWcpOwogI2Vsc2UgLy8gX19CSU9OSUNfXwogICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKQEAgLTQzNiwxMCArMzg4LDkgQEAKIC8vIG9uZSBieXRlIHRhcmdldCB3aXRoIGxvbmdlciBzb3VyY2UgKHNob3VsZCBmYWlsKQogVEVTVF9GKERFQVRIVEVTVCwgc3RyY3B5NF9mb3J0aWZpZWQpIHsKICNpZiBkZWZpbmVkKF9fQklPTklDX18pCi0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgY2hhciBidWZbMV07CiAgIGNoYXIgKm9yaWcgPSBzdHJkdXAoIjEyIik7Ci0gIEFTU0VSVF9FWElUKHN0cmNweShidWYsIG9yaWcpLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShzdHJjcHkoYnVmLCBvcmlnKSk7CiAgIGZyZWUob3JpZyk7CiAjZWxzZSAvLyBfX0JJT05JQ19fCiAgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwpAQCAtNDQ4LDEwICszOTksOSBAQAogCiBURVNUX0YoREVBVEhURVNULCBzdHJsZW5fZm9ydGlmaWVkKSB7CiAjaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGNoYXIgYnVmWzEwXTsKICAgbWVtY3B5KGJ1ZiwgIjAxMjM0NTY3ODkiLCBzaXplb2YoYnVmKSk7Ci0gIEFTU0VSVF9FWElUKHByaW50ZigiJXpkIiwgc3RybGVuKGJ1ZikpLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShwcmludGYoIiV6ZCIsIHN0cmxlbihidWYpKSk7CiAjZWxzZSAvLyBfX0JJT05JQ19fCiAgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwogI2VuZGlmIC8vIF9fQklPTklDX18KQEAgLTQ1OSwxMCArNDA5LDkgQEAKIAogVEVTVF9GKERFQVRIVEVTVCwgc3RyY2hyX2ZvcnRpZmllZCkgewogI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBjaGFyIGJ1ZlsxMF07CiAgIG1lbWNweShidWYsICIwMTIzNDU2Nzg5Iiwgc2l6ZW9mKGJ1ZikpOwotICBBU1NFUlRfRVhJVChwcmludGYoIiVzIiwgc3RyY2hyKGJ1ZiwgJ2EnKSksIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKHByaW50ZigiJXMiLCBzdHJjaHIoYnVmLCAnYScpKSk7CiAjZWxzZSAvLyBfX0JJT05JQ19fCiAgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwogI2VuZGlmIC8vIF9fQklPTklDX18KQEAgLTQ3MCwxMCArNDE5LDkgQEAKIAogVEVTVF9GKERFQVRIVEVTVCwgc3RycmNocl9mb3J0aWZpZWQpIHsKICNpZiBkZWZpbmVkKF9fQklPTklDX18pCi0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgY2hhciBidWZbMTBdOwogICBtZW1jcHkoYnVmLCAiMDEyMzQ1Njc4OSIsIHNpemVvZihidWYpKTsKLSAgQVNTRVJUX0VYSVQocHJpbnRmKCIlcyIsIHN0cnJjaHIoYnVmLCAnYScpKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkocHJpbnRmKCIlcyIsIHN0cnJjaHIoYnVmLCAnYScpKSk7CiAjZWxzZSAvLyBfX0JJT05JQ19fCiAgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwogI2VuZGlmIC8vIF9fQklPTklDX18KQEAgLTQ4MSwxMiArNDI5LDExIEBACiAKIFRFU1RfRihERUFUSFRFU1QsIHN0cmxjcHlfZm9ydGlmaWVkKSB7CiAjaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGNoYXIgYnVmYVsxNV07CiAgIGNoYXIgYnVmYlsxMF07CiAgIHN0cmNweShidWZhLCAiMDEyMzQ1Njc4OTAxMjMiKTsKICAgc2l6ZV90IG4gPSBzdHJsZW4oYnVmYSk7Ci0gIEFTU0VSVF9FWElUKHN0cmxjcHkoYnVmYiwgYnVmYSwgbiksIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKHN0cmxjcHkoYnVmYiwgYnVmYSwgbikpOwogI2Vsc2UgLy8gX19CSU9OSUNfXwogICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKICNlbmRpZiAvLyBfX0JJT05JQ19fCkBAIC00OTQsNDMgKzQ0MSwzOSBAQAogCiBURVNUX0YoREVBVEhURVNULCBzdHJsY2F0X2ZvcnRpZmllZCkgewogI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBjaGFyIGJ1ZmFbMTVdOwogICBjaGFyIGJ1ZmJbMTBdOwogICBidWZiWzBdID0gJ1wwJzsKICAgc3RyY3B5KGJ1ZmEsICIwMTIzNDU2Nzg5MDEyMyIpOwogICBzaXplX3QgbiA9IHN0cmxlbihidWZhKTsKLSAgQVNTRVJUX0VYSVQoc3RybGNhdChidWZiLCBidWZhLCBuKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RybGNhdChidWZiLCBidWZhLCBuKSk7CiAjZWxzZSAvLyBfX0JJT05JQ19fCiAgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwogI2VuZGlmIC8vIF9fQklPTklDX18KIH0KIAogVEVTVF9GKERFQVRIVEVTVCwgc3ByaW50Zl9mb3J0aWZpZWQpIHsKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBjaGFyIGJ1ZlsxMF07CiAgIGNoYXIgc291cmNlX2J1ZlsxNV07CiAgIG1lbWNweShzb3VyY2VfYnVmLCAiMTIzNDU2Nzg5MDEyMzQiLCAxNSk7Ci0gIEFTU0VSVF9FWElUKHNwcmludGYoYnVmLCAiJXMiLCBzb3VyY2VfYnVmKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3ByaW50ZihidWYsICIlcyIsIHNvdXJjZV9idWYpKTsKIH0KIAogI2lmbmRlZiBfX2NsYW5nX18KIC8vIFRoaXMgdGVzdCBpcyBkaXNhYmxlZCBpbiBjbGFuZyBiZWNhdXNlIGNsYW5nIGRvZXNuJ3QgcHJvcGVybHkgZGV0ZWN0CiAvLyB0aGlzIGJ1ZmZlciBvdmVyZmxvdy4gVE9ETzogRml4IGNsYW5nLgogVEVTVF9GKERFQVRIVEVTVCwgc3ByaW50Zl9tYWxsb2NfZm9ydGlmaWVkKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgY2hhciogYnVmID0gKGNoYXIgKikgbWFsbG9jKDEwKTsKICAgY2hhciBzb3VyY2VfYnVmWzExXTsKICAgbWVtY3B5KHNvdXJjZV9idWYsICIxMjM0NTY3ODkwIiwgMTEpOwotICBBU1NFUlRfRVhJVChzcHJpbnRmKGJ1ZiwgIiVzIiwgc291cmNlX2J1ZiksIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKHNwcmludGYoYnVmLCAiJXMiLCBzb3VyY2VfYnVmKSk7CiAgIGZyZWUoYnVmKTsKIH0KICNlbmRpZgogCiBURVNUX0YoREVBVEhURVNULCBzcHJpbnRmMl9mb3J0aWZpZWQpIHsKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBjaGFyIGJ1Zls1XTsKLSAgQVNTRVJUX0VYSVQoc3ByaW50ZihidWYsICJhYWFhYSIpLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShzcHJpbnRmKGJ1ZiwgImFhYWFhIikpOwogfQogCiBzdGF0aWMgaW50IHZzcHJpbnRmX2hlbHBlcihjb25zdCBjaGFyICpmbXQsIC4uLikgewpAQCAtNTQ1LDEzICs0ODgsMTEgQEAKIH0KIAogVEVTVF9GKERFQVRIVEVTVCwgdnNwcmludGZfZm9ydGlmaWVkKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKLSAgQVNTRVJUX0VYSVQodnNwcmludGZfaGVscGVyKCIlcyIsICIwMTIzNDU2Nzg5IiksIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKHZzcHJpbnRmX2hlbHBlcigiJXMiLCAiMDEyMzQ1Njc4OSIpKTsKIH0KIAogVEVTVF9GKERFQVRIVEVTVCwgdnNwcmludGYyX2ZvcnRpZmllZCkgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7Ci0gIEFTU0VSVF9FWElUKHZzcHJpbnRmX2hlbHBlcigiMDEyMzQ1Njc4OSIpLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWSh2c3ByaW50Zl9oZWxwZXIoIjAxMjM0NTY3ODkiKSk7CiB9CiAKIHN0YXRpYyBpbnQgdnNucHJpbnRmX2hlbHBlcihjb25zdCBjaGFyICpmbXQsIC4uLikgewpAQCAtNTY3LDE1NyArNTA4LDE1NyBAQAogfQogCiBURVNUX0YoREVBVEhURVNULCB2c25wcmludGZfZm9ydGlmaWVkKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKLSAgQVNTRVJUX0VYSVQodnNucHJpbnRmX2hlbHBlcigiJXMiLCAiMDEyMzQ1Njc4OSIpLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWSh2c25wcmludGZfaGVscGVyKCIlcyIsICIwMTIzNDU2Nzg5IikpOwogfQogCiBURVNUX0YoREVBVEhURVNULCB2c25wcmludGYyX2ZvcnRpZmllZCkgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7Ci0gIEFTU0VSVF9FWElUKHZzbnByaW50Zl9oZWxwZXIoIjAxMjM0NTY3ODkiKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkodnNucHJpbnRmX2hlbHBlcigiMDEyMzQ1Njc4OSIpKTsKIH0KIAogVEVTVF9GKERFQVRIVEVTVCwgc3RybmNhdF9mb3J0aWZpZWQpIHsKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBjaGFyIGJ1ZlsxMF07CiAgIHNpemVfdCBuID0gYXRvaSgiMTAiKTsgLy8gYXZvaWQgY29tcGlsZXIgb3B0aW1pemF0aW9ucwogICBzdHJuY3B5KGJ1ZiwgIjAxMjM0NTY3OCIsIG4pOwotICBBU1NFUlRfRVhJVChzdHJuY2F0KGJ1ZiwgIjkiLCBuKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RybmNhdChidWYsICI5IiwgbikpOwogfQogCiBURVNUX0YoREVBVEhURVNULCBzdHJuY2F0Ml9mb3J0aWZpZWQpIHsKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBjaGFyIGJ1ZlsxMF07CiAgIGJ1ZlswXSA9ICdcMCc7CiAgIHNpemVfdCBuID0gYXRvaSgiMTAiKTsgLy8gYXZvaWQgY29tcGlsZXIgb3B0aW1pemF0aW9ucwotICBBU1NFUlRfRVhJVChzdHJuY2F0KGJ1ZiwgIjAxMjM0NTY3ODkiLCBuKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RybmNhdChidWYsICIwMTIzNDU2Nzg5IiwgbikpOwogfQogCiBURVNUX0YoREVBVEhURVNULCBzdHJjYXRfZm9ydGlmaWVkKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgY2hhciBzcmNbMTFdOwogICBzdHJjcHkoc3JjLCAiMDEyMzQ1Njc4OSIpOwogICBjaGFyIGJ1ZlsxMF07CiAgIGJ1ZlswXSA9ICdcMCc7Ci0gIEFTU0VSVF9FWElUKHN0cmNhdChidWYsIHNyYyksIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKHN0cmNhdChidWYsIHNyYykpOwogfQogCiBURVNUX0YoREVBVEhURVNULCBtZW1tb3ZlX2ZvcnRpZmllZCkgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGNoYXIgYnVmWzIwXTsKICAgc3RyY3B5KGJ1ZiwgIjAxMjM0NTY3ODkiKTsKICAgc2l6ZV90IG4gPSBhdG9pKCIxMCIpOwotICBBU1NFUlRfRVhJVChtZW1tb3ZlKGJ1ZiArIDExLCBidWYsIG4pLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShtZW1tb3ZlKGJ1ZiArIDExLCBidWYsIG4pKTsKIH0KIAogVEVTVF9GKERFQVRIVEVTVCwgbWVtY3B5X2ZvcnRpZmllZCkgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGNoYXIgYnVmYVsxMF07CiAgIGNoYXIgYnVmYlsxMF07CiAgIHN0cmNweShidWZhLCAiMDEyMzQ1Njc4Iik7CiAgIHNpemVfdCBuID0gYXRvaSgiMTEiKTsKLSAgQVNTRVJUX0VYSVQobWVtY3B5KGJ1ZmIsIGJ1ZmEsIG4pLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShtZW1jcHkoYnVmYiwgYnVmYSwgbikpOwogfQogCiBURVNUX0YoREVBVEhURVNULCBzdHBuY3B5X2ZvcnRpZmllZCkgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGNoYXIgYnVmYVsxNV07CiAgIGNoYXIgYnVmYlsxMF07CiAgIHN0cmNweShidWZhLCAiMDEyMzQ1Njc4OTAxMjMiKTsKICAgc2l6ZV90IG4gPSBzdHJsZW4oYnVmYSk7Ci0gIEFTU0VSVF9FWElUKHN0cG5jcHkoYnVmYiwgYnVmYSwgbiksIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKHN0cG5jcHkoYnVmYiwgYnVmYSwgbikpOwogfQogCiBURVNUX0YoREVBVEhURVNULCBzdHBuY3B5Ml9mb3J0aWZpZWQpIHsKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBjaGFyIGRlc3RbMTFdOwogICBjaGFyIHNyY1sxMF07CiAgIG1lbWNweShzcmMsICIwMTIzNDU2Nzg5Iiwgc2l6ZW9mKHNyYykpOyAvLyBzcmMgaXMgbm90IG51bGwgdGVybWluYXRlZAotICBBU1NFUlRfRVhJVChzdHBuY3B5KGRlc3QsIHNyYywgc2l6ZW9mKGRlc3QpKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoc3RwbmNweShkZXN0LCBzcmMsIHNpemVvZihkZXN0KSkpOwogfQogCiBURVNUX0YoREVBVEhURVNULCBzdHJuY3B5X2ZvcnRpZmllZCkgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGNoYXIgYnVmYVsxNV07CiAgIGNoYXIgYnVmYlsxMF07CiAgIHN0cmNweShidWZhLCAiMDEyMzQ1Njc4OTAxMjMiKTsKICAgc2l6ZV90IG4gPSBzdHJsZW4oYnVmYSk7Ci0gIEFTU0VSVF9FWElUKHN0cm5jcHkoYnVmYiwgYnVmYSwgbiksIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKHN0cm5jcHkoYnVmYiwgYnVmYSwgbikpOwogfQogCiAKIFRFU1RfRihERUFUSFRFU1QsIHN0cm5jcHkyX2ZvcnRpZmllZCkgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGNoYXIgZGVzdFsxMV07CiAgIGNoYXIgc3JjWzEwXTsKICAgbWVtY3B5KHNyYywgIjAxMjM0NTY3ODkiLCBzaXplb2Yoc3JjKSk7IC8vIHNyYyBpcyBub3QgbnVsbCB0ZXJtaW5hdGVkCi0gIEFTU0VSVF9FWElUKHN0cm5jcHkoZGVzdCwgc3JjLCBzaXplb2YoZGVzdCkpLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShzdHJuY3B5KGRlc3QsIHNyYywgc2l6ZW9mKGRlc3QpKSk7CiB9CiAKIFRFU1RfRihERUFUSFRFU1QsIHNucHJpbnRmX2ZvcnRpZmllZCkgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGNoYXIgYnVmYVsxNV07CiAgIGNoYXIgYnVmYlsxMF07CiAgIHN0cmNweShidWZhLCAiMDEyMzQ1Njc4OSIpOwogICBzaXplX3QgbiA9IHN0cmxlbihidWZhKSArIDE7Ci0gIEFTU0VSVF9FWElUKHNucHJpbnRmKGJ1ZmIsIG4sICIlcyIsIGJ1ZmEpLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShzbnByaW50ZihidWZiLCBuLCAiJXMiLCBidWZhKSk7CiB9CiAKIFRFU1RfRihERUFUSFRFU1QsIGJ6ZXJvX2ZvcnRpZmllZCkgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIGNoYXIgYnVmWzEwXTsKICAgbWVtY3B5KGJ1ZiwgIjAxMjM0NTY3ODkiLCBzaXplb2YoYnVmKSk7CiAgIHNpemVfdCBuID0gYXRvaSgiMTEiKTsKLSAgQVNTRVJUX0VYSVQoYnplcm8oYnVmLCBuKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkoYnplcm8oYnVmLCBuKSk7CiB9CiAKIFRFU1RfRihERUFUSFRFU1QsIHVtYXNrX2ZvcnRpZmllZCkgewotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAgIG1vZGVfdCBtYXNrID0gYXRvaSgiMTAyMyIpOyAgLy8gMDE3NzcgaW4gb2N0YWwKLSAgQVNTRVJUX0VYSVQodW1hc2sobWFzayksIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKHVtYXNrKG1hc2spKTsKIH0KIAogVEVTVF9GKERFQVRIVEVTVCwgcmVjdl9mb3J0aWZpZWQpIHsKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBzaXplX3QgZGF0YV9sZW4gPSBhdG9pKCIxMSIpOyAvLyBzdXBwcmVzcyBjb21waWxlciBvcHRpbWl6YXRpb25zCiAgIGNoYXIgYnVmWzEwXTsKLSAgQVNTRVJUX0VYSVQocmVjdigwLCBidWYsIGRhdGFfbGVuLCAwKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkocmVjdigwLCBidWYsIGRhdGFfbGVuLCAwKSk7CiB9CiAKIFRFU1RfRihERUFUSFRFU1QsIEZEX0lTU0VUX2ZvcnRpZmllZCkgewogI2lmIGRlZmluZWQoX19CSU9OSUNfXykgLy8gZ2xpYmMgY2F0Y2hlcyB0aGlzIGF0IGNvbXBpbGUtdGltZS4KLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBmZF9zZXQgc2V0OwogICBtZW1zZXQoJnNldCwgMCwgc2l6ZW9mKHNldCkpOwotICBBU1NFUlRfRVhJVChGRF9JU1NFVCgtMSwgJnNldCksIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7CisgIEFTU0VSVF9GT1JUSUZZKEZEX0lTU0VUKC0xLCAmc2V0KSk7CiAjZW5kaWYKIH0KIAogVEVTVF9GKERFQVRIVEVTVCwgRkRfSVNTRVRfMl9mb3J0aWZpZWQpIHsKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBjaGFyIGJ1ZlsxXTsKICAgZmRfc2V0KiBzZXQgPSAoZmRfc2V0KikgYnVmOwotICBBU1NFUlRfRVhJVChGRF9JU1NFVCgwLCBzZXQpLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOworICBBU1NFUlRfRk9SVElGWShGRF9JU1NFVCgwLCBzZXQpKTsKIH0KIAotLy8gZ3Rlc3QncyBBU1NFUlRfRVhJVCBuZWVkcyBhIHZhbGlkIGV4cHJlc3Npb24sIGJ1dCBnbGliYyBoYXMgYSBkby13aGlsZSBtYWNyby4KLXN0YXRpYyB2b2lkIEZEX1pFUk9fZnVuY3Rpb24oZmRfc2V0KiBzKSB7IEZEX1pFUk8ocyk7IH0KLQotVEVTVF9GKERFQVRIVEVTVCwgRkRfWkVST19mb3J0aWZpZWQpIHsKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwotICBjaGFyIGJ1ZlsxXTsKLSAgZmRfc2V0KiBzZXQgPSAoZmRfc2V0KikgYnVmOwotICBBU1NFUlRfRVhJVChGRF9aRVJPX2Z1bmN0aW9uKHNldCksIHRlc3Rpbmc6OktpbGxlZEJ5U2lnbmFsKFNJR0FCUlQpLCAiIik7Ci19Ci0KLVRFU1RfRihERUFUSFRFU1QsIHJlYWRfZm9ydGlmaWVkKSB7Ci0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKK1RFU1RfRihERUFUSFRFU1QsIHByZWFkX2ZvcnRpZmllZCkgewogICBjaGFyIGJ1ZlsxXTsKICAgc2l6ZV90IGN0ID0gYXRvaSgiMiIpOyAvLyBwcmV2ZW50IG9wdGltaXphdGlvbnMKICAgaW50IGZkID0gb3BlbigiL2Rldi9udWxsIiwgT19SRE9OTFkpOwotICBBU1NFUlRfRVhJVChyZWFkKGZkLCBidWYsIGN0KSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKKyAgQVNTRVJUX0ZPUlRJRlkocHJlYWQoZmQsIGJ1ZiwgY3QsIDApKTsKICAgY2xvc2UoZmQpOwogfQogCitURVNUX0YoREVBVEhURVNULCBwcmVhZDY0X2ZvcnRpZmllZCkgeworICBjaGFyIGJ1ZlsxXTsKKyAgc2l6ZV90IGN0ID0gYXRvaSgiMiIpOyAvLyBwcmV2ZW50IG9wdGltaXphdGlvbnMKKyAgaW50IGZkID0gb3BlbigiL2Rldi9udWxsIiwgT19SRE9OTFkpOworICBBU1NFUlRfRk9SVElGWShwcmVhZDY0KGZkLCBidWYsIGN0LCAwKSk7CisgIGNsb3NlKGZkKTsKK30KKworVEVTVF9GKERFQVRIVEVTVCwgcmVhZF9mb3J0aWZpZWQpIHsKKyAgY2hhciBidWZbMV07CisgIHNpemVfdCBjdCA9IGF0b2koIjIiKTsgLy8gcHJldmVudCBvcHRpbWl6YXRpb25zCisgIGludCBmZCA9IG9wZW4oIi9kZXYvbnVsbCIsIE9fUkRPTkxZKTsKKyAgQVNTRVJUX0ZPUlRJRlkocmVhZChmZCwgYnVmLCBjdCkpOworICBjbG9zZShmZCk7Cit9CisKK1RFU1RfRihERUFUSFRFU1QsIHJlYWRsaW5rX2ZvcnRpZmllZCkgeworICBjaGFyIGJ1ZlsxXTsKKyAgc2l6ZV90IGN0ID0gYXRvaSgiMiIpOyAvLyBwcmV2ZW50IG9wdGltaXphdGlvbnMKKyAgQVNTRVJUX0ZPUlRJRlkocmVhZGxpbmsoIi9kZXYvbnVsbCIsIGJ1ZiwgY3QpKTsKK30KKworVEVTVF9GKERFQVRIVEVTVCwgcmVhZGxpbmthdF9mb3J0aWZpZWQpIHsKKyAgY2hhciBidWZbMV07CisgIHNpemVfdCBjdCA9IGF0b2koIjIiKTsgLy8gcHJldmVudCBvcHRpbWl6YXRpb25zCisgIEFTU0VSVF9GT1JUSUZZKHJlYWRsaW5rYXQoQVRfRkRDV0QsICIvZGV2L251bGwiLCBidWYsIGN0KSk7Cit9CisKIGV4dGVybiAiQyIgY2hhciogX19zdHJuY2F0X2NoayhjaGFyKiwgY29uc3QgY2hhciosIHNpemVfdCwgc2l6ZV90KTsKIGV4dGVybiAiQyIgY2hhciogX19zdHJjYXRfY2hrKGNoYXIqLCBjb25zdCBjaGFyKiwgc2l6ZV90KTsKIApAQCAtMTAyMiwzICs5NjMsMTkgQEAKICAgc3ByaW50ZihCVUZfQU5EX0NPTlRFTlRTKGJ1ZikpOwogICBFWFBFQ1RfU1RSRVEoQ09OVEVOVFMsIGJ1Zik7CiB9CisKK1RFU1RfRihERUFUSFRFU1QsIHBvbGxfZm9ydGlmaWVkKSB7CisgIG5mZHNfdCBmZF9jb3VudCA9IGF0b2koIjIiKTsgLy8gc3VwcHJlc3MgY29tcGlsZXIgb3B0aW1pemF0aW9ucworICBwb2xsZmQgYnVmWzFdID0ge3swLCBQT0xMSU4sIDB9fTsKKyAgLy8gU2V0IHRpbWVvdXQgdG8gemVybyB0byBwcmV2ZW50IHdhaXRpbmcgaW4gcG9sbCB3aGVuIGZvcnRpZnkgdGVzdCBmYWlscy4KKyAgQVNTRVJUX0ZPUlRJRlkocG9sbChidWYsIGZkX2NvdW50LCAwKSk7Cit9CisKK1RFU1RfRihERUFUSFRFU1QsIHBwb2xsX2ZvcnRpZmllZCkgeworICBuZmRzX3QgZmRfY291bnQgPSBhdG9pKCIyIik7IC8vIHN1cHByZXNzIGNvbXBpbGVyIG9wdGltaXphdGlvbnMKKyAgcG9sbGZkIGJ1ZlsxXSA9IHt7MCwgUE9MTElOLCAwfX07CisgIC8vIFNldCB0aW1lb3V0IHRvIHplcm8gdG8gcHJldmVudCB3YWl0aW5nIGluIHBwb2xsIHdoZW4gZm9ydGlmeSB0ZXN0IGZhaWxzLgorICB0aW1lc3BlYyB0aW1lb3V0OworICB0aW1lb3V0LnR2X3NlYyA9IHRpbWVvdXQudHZfbnNlYyA9IDA7CisgIEFTU0VSVF9GT1JUSUZZKHBwb2xsKGJ1ZiwgZmRfY291bnQsICZ0aW1lb3V0LCBOVUxMKSk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9mdHdfdGVzdC5jcHAgYi90ZXN0cy9mdHdfdGVzdC5jcHAKaW5kZXggNmQzYTMwOC4uYjdlNWJkNSAxMDA2NDQKLS0tIGEvdGVzdHMvZnR3X3Rlc3QuY3BwCisrKyBiL3Rlc3RzL2Z0d190ZXN0LmNwcApAQCAtMTQsMjcgKzE0LDU1IEBACiAgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KICAqLwogCi0jaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KLSNpbmNsdWRlICJUZW1wb3JhcnlGaWxlLmgiCi0KICNpbmNsdWRlIDxmdHcuaD4KKworI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworI2luY2x1ZGUgIlRlbXBvcmFyeUZpbGUuaCIKKworI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CisKK3N0YXRpYyB2b2lkIE1ha2VUcmVlKGNvbnN0IGNoYXIqIHJvb3QpIHsKKyAgY2hhciBwYXRoW1BBVEhfTUFYXTsKKworICBzbnByaW50ZihwYXRoLCBzaXplb2YocGF0aCksICIlcy9kaXIiLCByb290KTsKKyAgQVNTRVJUX0VRKDAsIG1rZGlyKHBhdGgsIDA3NTUpKSA8PCBwYXRoOworICBzbnByaW50ZihwYXRoLCBzaXplb2YocGF0aCksICIlcy9kaXIvc3ViIiwgcm9vdCk7CisgIEFTU0VSVF9FUSgwLCBta2RpcihwYXRoLCAwNTU1KSkgPDwgcGF0aDsKKyAgc25wcmludGYocGF0aCwgc2l6ZW9mKHBhdGgpLCAiJXMvdW5yZWFkYWJsZS1kaXIiLCByb290KTsKKyAgQVNTRVJUX0VRKDAsIG1rZGlyKHBhdGgsIDAwMDApKSA8PCBwYXRoOworCisgIHNucHJpbnRmKHBhdGgsIHNpemVvZihwYXRoKSwgIiVzL2RhbmdsZXIiLCByb290KTsKKyAgQVNTRVJUX0VRKDAsIHN5bWxpbmsoIi9kb2VzLW5vdC1leGlzdCIsIHBhdGgpKTsKKyAgc25wcmludGYocGF0aCwgc2l6ZW9mKHBhdGgpLCAiJXMvc3ltbGluayIsIHJvb3QpOworICBBU1NFUlRfRVEoMCwgc3ltbGluaygic3ViMiIsIHBhdGgpKTsKKworICBpbnQgZmQ7CisgIHNucHJpbnRmKHBhdGgsIHNpemVvZihwYXRoKSwgIiVzL3JlZ3VsYXIiLCByb290KTsKKyAgQVNTRVJUX05FKC0xLCBmZCA9IG9wZW4ocGF0aCwgT19DUkVBVHxPX1RSVU5DLCAwNjY2KSk7CisgIEFTU0VSVF9FUSgwLCBjbG9zZShmZCkpOworfQogCiB2b2lkIHNhbml0eV9jaGVja19mdHcoY29uc3QgY2hhciogZnBhdGgsIGNvbnN0IHN0cnVjdCBzdGF0KiBzYiwgaW50IHRmbGFnKSB7CiAgIEFTU0VSVF9UUlVFKGZwYXRoICE9IE5VTEwpOwogICBBU1NFUlRfVFJVRShzYiAhPSBOVUxMKTsKLSAgYm9vbCBpc19kaXIgPSBTX0lTRElSKHNiLT5zdF9tb2RlKTsKLSAgQVNTRVJUX1RSVUUoKGlzX2RpciAmJiB0ZmxhZyA9PSBGVFdfRCkgfHwgKCFpc19kaXIgJiYgdGZsYWcgPT0gRlRXX0YpKTsKKworICBpZiAoU19JU0RJUihzYi0+c3RfbW9kZSkpIHsKKyAgICBFWFBFQ1RfVFJVRSh0ZmxhZyA9PSBGVFdfRCB8fCB0ZmxhZyA9PSBGVFdfRE5SIHx8IHRmbGFnID09IEZUV19EUCkgPDwgZnBhdGg7CisgIH0gZWxzZSBpZiAoU19JU0xOSyhzYi0+c3RfbW9kZSkpIHsKKyAgICBFWFBFQ1RfRVEoRlRXX1NMLCB0ZmxhZykgPDwgZnBhdGg7CisgIH0gZWxzZSB7CisgICAgRVhQRUNUX0VRKEZUV19GLCB0ZmxhZykgPDwgZnBhdGg7CisgIH0KIH0KIAotdm9pZCBzYW5pdHlfY2hlY2tfbmZ0dygKLSAgICBjb25zdCBjaGFyKiBmcGF0aCwgY29uc3Qgc3RydWN0IHN0YXQqIHNiLCBpbnQgdGZsYWcsIHN0cnVjdCBGVFcqIGZ0d2J1Zikgewordm9pZCBzYW5pdHlfY2hlY2tfbmZ0dyhjb25zdCBjaGFyKiBmcGF0aCwgY29uc3Qgc3RydWN0IHN0YXQqIHNiLCBpbnQgdGZsYWcsIHN0cnVjdCBGVFcqIGZ0d2J1ZikgewogICBzYW5pdHlfY2hlY2tfZnR3KGZwYXRoLCBzYiwgdGZsYWcpOwotICAvLyBlaXRoZXIgdGhlIHBhcmVudCBkaXIgb3IgdGhlIGZpbGUKLSAgYm9vbCBpc19kaXIgPSBTX0lTRElSKHNiLT5zdF9tb2RlKTsKLSAgQVNTRVJUX1RSVUUoCi0gICAgKGlzX2RpciAmJiBmdHdidWYtPmxldmVsID09IDApIHx8ICghaXNfZGlyICYmIGZ0d2J1Zi0+bGV2ZWwgPT0gMSkpOworICBBU1NFUlRfRVEoJy8nLCBmcGF0aFtmdHdidWYtPmJhc2UgLSAxXSkgPDwgZnBhdGg7CiB9CiAKIGludCBjaGVja19mdHcoY29uc3QgY2hhciogZnBhdGgsIGNvbnN0IHN0cnVjdCBzdGF0KiBzYiwgaW50IHRmbGFnKSB7CkBAIC00NywzOSArNzUsMzYgQEAKICAgcmV0dXJuIDA7CiB9CiAKLWludCBjaGVja19uZnR3KAotICBjb25zdCBjaGFyKiBmcGF0aCwgY29uc3Qgc3RydWN0IHN0YXQqIHNiLCBpbnQgdGZsYWcsIHN0cnVjdCBGVFcqIGZ0d2J1ZikgeworaW50IGNoZWNrX25mdHcoY29uc3QgY2hhciogZnBhdGgsIGNvbnN0IHN0cnVjdCBzdGF0KiBzYiwgaW50IHRmbGFnLCBzdHJ1Y3QgRlRXKiBmdHdidWYpIHsKICAgc2FuaXR5X2NoZWNrX25mdHcoZnBhdGgsIHNiLCB0ZmxhZywgZnR3YnVmKTsKICAgcmV0dXJuIDA7CiB9CiAKLWludCBjaGVja19uZnR3NjQoCi0gIGNvbnN0IGNoYXIqIGZwYXRoLCBjb25zdCBzdHJ1Y3Qgc3RhdDY0KiBzYiwgaW50IHRmbGFnLCBzdHJ1Y3QgRlRXKiBmdHdidWYpIHsKLSAgc2FuaXR5X2NoZWNrX25mdHcoZnBhdGgsIHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qgc3RydWN0IHN0YXQqPihzYiksCi0gICAgdGZsYWcsIGZ0d2J1Zik7CitpbnQgY2hlY2tfbmZ0dzY0KGNvbnN0IGNoYXIqIGZwYXRoLCBjb25zdCBzdHJ1Y3Qgc3RhdDY0KiBzYiwgaW50IHRmbGFnLCBzdHJ1Y3QgRlRXKiBmdHdidWYpIHsKKyAgc2FuaXR5X2NoZWNrX25mdHcoZnBhdGgsIHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qgc3RydWN0IHN0YXQqPihzYiksIHRmbGFnLCBmdHdidWYpOwogICByZXR1cm4gMDsKIH0KIAogVEVTVChmdHcsIGZ0dykgewotICBUZW1wb3JhcnlEaXIgdGQ7Ci0gIFRlbXBvcmFyeUZpbGUgdGYodGQuZGlybmFtZSk7Ci0gIGZ0dyh0ZC5kaXJuYW1lLCBjaGVja19mdHcsIDEpOworICBUZW1wb3JhcnlEaXIgcm9vdDsKKyAgTWFrZVRyZWUocm9vdC5kaXJuYW1lKTsKKyAgQVNTRVJUX0VRKDAsIGZ0dyhyb290LmRpcm5hbWUsIGNoZWNrX2Z0dywgMTI4KSk7CiB9CiAKIFRFU1QoZnR3LCBmdHc2NCkgewotICBUZW1wb3JhcnlEaXIgdGQ7Ci0gIEdlbmVyaWNUZW1wb3JhcnlGaWxlPG1rc3RlbXA2ND4gdGYodGQuZGlybmFtZSk7Ci0gIGZ0dzY0KHRkLmRpcm5hbWUsIGNoZWNrX2Z0dzY0LCAxKTsKKyAgVGVtcG9yYXJ5RGlyIHJvb3Q7CisgIE1ha2VUcmVlKHJvb3QuZGlybmFtZSk7CisgIEFTU0VSVF9FUSgwLCBmdHc2NChyb290LmRpcm5hbWUsIGNoZWNrX2Z0dzY0LCAxMjgpKTsKIH0KIAogVEVTVChmdHcsIG5mdHcpIHsKLSAgVGVtcG9yYXJ5RGlyIHRkOwotICBUZW1wb3JhcnlGaWxlIHRmKHRkLmRpcm5hbWUpOwotICBuZnR3KHRkLmRpcm5hbWUsIGNoZWNrX25mdHcsIDEsIDApOworICBUZW1wb3JhcnlEaXIgcm9vdDsKKyAgTWFrZVRyZWUocm9vdC5kaXJuYW1lKTsKKyAgQVNTRVJUX0VRKDAsIG5mdHcocm9vdC5kaXJuYW1lLCBjaGVja19uZnR3LCAxMjgsIDApKTsKIH0KIAogVEVTVChmdHcsIG5mdHc2NCkgewotICBUZW1wb3JhcnlEaXIgdGQ7Ci0gIEdlbmVyaWNUZW1wb3JhcnlGaWxlPG1rc3RlbXA2ND4gdGYodGQuZGlybmFtZSk7Ci0gIG5mdHc2NCh0ZC5kaXJuYW1lLCBjaGVja19uZnR3NjQsIDEsIDApOworICBUZW1wb3JhcnlEaXIgcm9vdDsKKyAgTWFrZVRyZWUocm9vdC5kaXJuYW1lKTsKKyAgQVNTRVJUX0VRKDAsIG5mdHc2NChyb290LmRpcm5hbWUsIGNoZWNrX25mdHc2NCwgMTI4LCAwKSk7CiB9CmRpZmYgLS1naXQgYS90ZXN0cy9nZXRhdXh2YWxfdGVzdC5jcHAgYi90ZXN0cy9nZXRhdXh2YWxfdGVzdC5jcHAKaW5kZXggNTFjOWRiOC4uNmNlMDBmMSAxMDA2NDQKLS0tIGEvdGVzdHMvZ2V0YXV4dmFsX3Rlc3QuY3BwCisrKyBiL3Rlc3RzL2dldGF1eHZhbF90ZXN0LmNwcApAQCAtMTQsOCArMTQsOCBAQAogICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCiAgKi8KIAorI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8c3lzL2NkZWZzLmg+Ci0jaW5jbHVkZSA8ZmVhdHVyZXMuaD4KICNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgogCiAvLyBnZXRhdXh2YWwoKSB3YXMgb25seSBhZGRlZCBhcyBvZiBnbGliYyB2ZXJzaW9uIDIuMTYuCkBAIC01NCw3ICs1NCw5IEBACiAKIFRFU1QoZ2V0YXV4dmFsLCB1bmV4cGVjdGVkX3ZhbHVlcykgewogI2lmIGRlZmluZWQoR0VUQVVYVkFMX0NBTl9DT01QSUxFKQorICBlcnJubyA9IDA7CiAgIEFTU0VSVF9FUSgodW5zaWduZWQgbG9uZyBpbnQpIDAsIGdldGF1eHZhbCgweGRlYWRiZWVmKSk7CisgIEFTU0VSVF9FUShFTk9FTlQsIGVycm5vKTsKICNlbHNlCiAgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwogI2VuZGlmCmRpZmYgLS1naXQgYS90ZXN0cy9ndGVzdF9tYWluLmNwcCBiL3Rlc3RzL2d0ZXN0X21haW4uY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY5MmI3ZTgKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9ndGVzdF9tYWluLmNwcApAQCAtMCwwICsxLDExMjMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KKworI2luY2x1ZGUgPGN0eXBlLmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPGludHR5cGVzLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8c2lnbmFsLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzeXMvd2FpdC5oPgorI2luY2x1ZGUgPHRpbWUuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworI2luY2x1ZGUgPHN0cmluZz4KKyNpbmNsdWRlIDx0dXBsZT4KKyNpbmNsdWRlIDx1dGlsaXR5PgorI2luY2x1ZGUgPHZlY3Rvcj4KKworI2luY2x1ZGUgIkJpb25pY0RlYXRoVGVzdC5oIiAvLyBGb3Igc2VsZnRlc3QuCisKK25hbWVzcGFjZSB0ZXN0aW5nIHsKK25hbWVzcGFjZSBpbnRlcm5hbCB7CisKKy8vIFJldXNlIG9mIHRlc3Rpbmc6OmludGVybmFsOjpDb2xvcmVkUHJpbnRmIGluIGd0ZXN0LgorZW51bSBHVGVzdENvbG9yIHsKKyAgQ09MT1JfREVGQVVMVCwKKyAgQ09MT1JfUkVELAorICBDT0xPUl9HUkVFTiwKKyAgQ09MT1JfWUVMTE9XCit9OworCit2b2lkIENvbG9yZWRQcmludGYoR1Rlc3RDb2xvciBjb2xvciwgY29uc3QgY2hhciogZm10LCAuLi4pOworCit9ICAvLyBuYW1lc3BhY2UgaW50ZXJuYWwKK30gIC8vIG5hbWVzcGFjZSB0ZXN0aW5nCisKK3VzaW5nIHRlc3Rpbmc6OmludGVybmFsOjpHVGVzdENvbG9yOwordXNpbmcgdGVzdGluZzo6aW50ZXJuYWw6OkNPTE9SX0RFRkFVTFQ7Cit1c2luZyB0ZXN0aW5nOjppbnRlcm5hbDo6Q09MT1JfUkVEOwordXNpbmcgdGVzdGluZzo6aW50ZXJuYWw6OkNPTE9SX0dSRUVOOwordXNpbmcgdGVzdGluZzo6aW50ZXJuYWw6OkNPTE9SX1lFTExPVzsKK3VzaW5nIHRlc3Rpbmc6OmludGVybmFsOjpDb2xvcmVkUHJpbnRmOworCitjb25zdGV4cHIgaW50IERFRkFVTFRfR0xPQkFMX1RFU1RfUlVOX0RFQURMSU5FX01TID0gNjAwMDA7Citjb25zdGV4cHIgaW50IERFRkFVTFRfR0xPQkFMX1RFU1RfUlVOX1dBUk5MSU5FX01TID0gMjAwMDsKKworLy8gVGhlIHRpbWUgZWFjaCB0ZXN0IGNhbiBydW4gYmVmb3JlIGtpbGxlZCBmb3IgdGhlIHJlYXNvbiBvZiB0aW1lb3V0LgorLy8gSXQgdGFrZXMgZWZmZWN0IG9ubHkgd2l0aCAtLWlzb2xhdGUgb3B0aW9uLgorc3RhdGljIGludCBnbG9iYWxfdGVzdF9ydW5fZGVhZGxpbmVfbXMgPSBERUZBVUxUX0dMT0JBTF9URVNUX1JVTl9ERUFETElORV9NUzsKKworLy8gVGhlIHRpbWUgZWFjaCB0ZXN0IGNhbiBydW4gYmVmb3JlIGJlIHdhcm5lZCBmb3IgdG9vIG11Y2ggcnVubmluZyB0aW1lLgorLy8gSXQgdGFrZXMgZWZmZWN0IG9ubHkgd2l0aCAtLWlzb2xhdGUgb3B0aW9uLgorc3RhdGljIGludCBnbG9iYWxfdGVzdF9ydW5fd2FybmxpbmVfbXMgPSBERUZBVUxUX0dMT0JBTF9URVNUX1JVTl9XQVJOTElORV9NUzsKKworLy8gUmV0dXJuIGRlYWRsaW5lIGR1cmF0aW9uIGZvciBhIHRlc3QsIGluIG1zLgorc3RhdGljIGludCBHZXREZWFkbGluZUluZm8oY29uc3Qgc3RkOjpzdHJpbmcmIC8qdGVzdF9uYW1lKi8pIHsKKyAgcmV0dXJuIGdsb2JhbF90ZXN0X3J1bl9kZWFkbGluZV9tczsKK30KKworLy8gUmV0dXJuIHdhcm5saW5lIGR1cmF0aW9uIGZvciBhIHRlc3QsIGluIG1zLgorc3RhdGljIGludCBHZXRXYXJubGluZUluZm8oY29uc3Qgc3RkOjpzdHJpbmcmIC8qdGVzdF9uYW1lKi8pIHsKKyAgcmV0dXJuIGdsb2JhbF90ZXN0X3J1bl93YXJubGluZV9tczsKK30KKworc3RhdGljIHZvaWQgUHJpbnRIZWxwSW5mbygpIHsKKyAgcHJpbnRmKCJCaW9uaWMgVW5pdCBUZXN0IE9wdGlvbnM6XG4iCisgICAgICAgICAiICAtaiBbSk9CX0NPVU5UXSBvciAtaltKT0JfQ09VTlRdXG4iCisgICAgICAgICAiICAgICAgUnVuIHVwIHRvIEpPQl9DT1VOVCB0ZXN0cyBpbiBwYXJhbGxlbC5cbiIKKyAgICAgICAgICIgICAgICBVc2UgaXNvbGF0aW9uIG1vZGUsIFJ1biBlYWNoIHRlc3QgaW4gYSBzZXBhcmF0ZSBwcm9jZXNzLlxuIgorICAgICAgICAgIiAgICAgIElmIEpPQl9DT1VOVCBpcyBub3QgZ2l2ZW4sIGl0IGlzIHNldCB0byB0aGUgY291bnQgb2YgYXZhaWxhYmxlIHByb2Nlc3NvcnMuXG4iCisgICAgICAgICAiICAtLW5vLWlzb2xhdGVcbiIKKyAgICAgICAgICIgICAgICBEb24ndCB1c2UgaXNvbGF0aW9uIG1vZGUsIHJ1biBhbGwgdGVzdHMgaW4gYSBzaW5nbGUgcHJvY2Vzcy5cbiIKKyAgICAgICAgICIgIC0tZGVhZGxpbmU9W1RJTUVfSU5fTVNdXG4iCisgICAgICAgICAiICAgICAgUnVuIGVhY2ggdGVzdCBpbiBubyBsb25nZXIgdGhhbiBbVElNRV9JTl9NU10gdGltZS5cbiIKKyAgICAgICAgICIgICAgICBJdCB0YWtlcyBlZmZlY3Qgb25seSBpbiBpc29sYXRpb24gbW9kZS4gRGVhZnVsdCBkZWFkbGluZSBpcyA2MDAwMCBtcy5cbiIKKyAgICAgICAgICIgIC0td2FybmxpbmU9W1RJTUVfSU5fTVNdXG4iCisgICAgICAgICAiICAgICAgVGVzdCBydW5uaW5nIGxvbmdlciB0aGFuIFtUSU1FX0lOX01TXSB3aWxsIGJlIHdhcm5lZC5cbiIKKyAgICAgICAgICIgICAgICBJdCB0YWtlcyBlZmZlY3Qgb25seSBpbiBpc29sYXRpb24gbW9kZS4gRGVmYXVsdCB3YXJubGluZSBpcyAyMDAwIG1zLlxuIgorICAgICAgICAgIiAgLS1ndGVzdC1maWx0ZXI9UE9TSVRJVkVfUEFUVEVSTlNbLU5FR0FUSVZFX1BBVFRFUk5TXVxuIgorICAgICAgICAgIiAgICAgIFVzZWQgYXMgYSBzeW5vbnltIGZvciAtLWd0ZXN0X2ZpbHRlciBvcHRpb24gaW4gZ3Rlc3QuXG4iCisgICAgICAgICAiRGVmYXVsdCBiaW9uaWMgdW5pdCB0ZXN0IG9wdGlvbiBpcyAtai5cbiIKKyAgICAgICAgICJJbiBpc29sYXRpb24gbW9kZSwgeW91IGNhbiBzZW5kIFNJR1FVSVQgdG8gdGhlIHBhcmVudCBwcm9jZXNzIHRvIHNob3cgY3VycmVudFxuIgorICAgICAgICAgInJ1bm5pbmcgdGVzdHMsIG9yIHNlbmQgU0lHSU5UIHRvIHRoZSBwYXJlbnQgcHJvY2VzcyB0byBzdG9wIHRlc3RpbmcgYW5kXG4iCisgICAgICAgICAiY2xlYW4gdXAgY3VycmVudCBydW5uaW5nIHRlc3RzLlxuIgorICAgICAgICAgIlxuIik7Cit9CisKK2VudW0gVGVzdFJlc3VsdCB7CisgIFRFU1RfU1VDQ0VTUyA9IDAsCisgIFRFU1RfRkFJTEVELAorICBURVNUX1RJTUVPVVQKK307CisKK2NsYXNzIFRlc3QgeworIHB1YmxpYzoKKyAgVGVzdCgpIHt9IC8vIEZvciBzdGQ6OnZlY3RvcjxUZXN0Pi4KKyAgZXhwbGljaXQgVGVzdChjb25zdCBjaGFyKiBuYW1lKSA6IG5hbWVfKG5hbWUpIHt9CisKKyAgY29uc3Qgc3RkOjpzdHJpbmcmIEdldE5hbWUoKSBjb25zdCB7IHJldHVybiBuYW1lXzsgfQorCisgIHZvaWQgU2V0UmVzdWx0KFRlc3RSZXN1bHQgcmVzdWx0KSB7IHJlc3VsdF8gPSByZXN1bHQ7IH0KKworICBUZXN0UmVzdWx0IEdldFJlc3VsdCgpIGNvbnN0IHsgcmV0dXJuIHJlc3VsdF87IH0KKworICB2b2lkIFNldFRlc3RUaW1lKGludDY0X3QgZWxhcHNlZF90aW1lX25zKSB7IGVsYXBzZWRfdGltZV9uc18gPSBlbGFwc2VkX3RpbWVfbnM7IH0KKworICBpbnQ2NF90IEdldFRlc3RUaW1lKCkgY29uc3QgeyByZXR1cm4gZWxhcHNlZF90aW1lX25zXzsgfQorCisgIHZvaWQgQXBwZW5kVGVzdE91dHB1dChjb25zdCBzdGQ6OnN0cmluZyYgcykgeyBvdXRwdXRfICs9IHM7IH0KKworICBjb25zdCBzdGQ6OnN0cmluZyYgR2V0VGVzdE91dHB1dCgpIGNvbnN0IHsgcmV0dXJuIG91dHB1dF87IH0KKworIHByaXZhdGU6CisgIGNvbnN0IHN0ZDo6c3RyaW5nIG5hbWVfOworICBUZXN0UmVzdWx0IHJlc3VsdF87CisgIGludDY0X3QgZWxhcHNlZF90aW1lX25zXzsKKyAgc3RkOjpzdHJpbmcgb3V0cHV0XzsKK307CisKK2NsYXNzIFRlc3RDYXNlIHsKKyBwdWJsaWM6CisgIFRlc3RDYXNlKCkge30gLy8gRm9yIHN0ZDo6dmVjdG9yPFRlc3RDYXNlPi4KKyAgZXhwbGljaXQgVGVzdENhc2UoY29uc3QgY2hhciogbmFtZSkgOiBuYW1lXyhuYW1lKSB7fQorCisgIGNvbnN0IHN0ZDo6c3RyaW5nJiBHZXROYW1lKCkgY29uc3QgeyByZXR1cm4gbmFtZV87IH0KKworICB2b2lkIEFwcGVuZFRlc3QoY29uc3QgY2hhciogdGVzdF9uYW1lKSB7CisgICAgdGVzdF9saXN0Xy5wdXNoX2JhY2soVGVzdCh0ZXN0X25hbWUpKTsKKyAgfQorCisgIHNpemVfdCBUZXN0Q291bnQoKSBjb25zdCB7IHJldHVybiB0ZXN0X2xpc3RfLnNpemUoKTsgfQorCisgIHN0ZDo6c3RyaW5nIEdldFRlc3ROYW1lKHNpemVfdCB0ZXN0X2lkKSBjb25zdCB7CisgICAgVmVyaWZ5VGVzdElkKHRlc3RfaWQpOworICAgIHJldHVybiBuYW1lXyArICIuIiArIHRlc3RfbGlzdF9bdGVzdF9pZF0uR2V0TmFtZSgpOworICB9CisKKyAgVGVzdCYgR2V0VGVzdChzaXplX3QgdGVzdF9pZCkgeworICAgIFZlcmlmeVRlc3RJZCh0ZXN0X2lkKTsKKyAgICByZXR1cm4gdGVzdF9saXN0X1t0ZXN0X2lkXTsKKyAgfQorCisgIGNvbnN0IFRlc3QmIEdldFRlc3Qoc2l6ZV90IHRlc3RfaWQpIGNvbnN0IHsKKyAgICBWZXJpZnlUZXN0SWQodGVzdF9pZCk7CisgICAgcmV0dXJuIHRlc3RfbGlzdF9bdGVzdF9pZF07CisgIH0KKworICB2b2lkIFNldFRlc3RSZXN1bHQoc2l6ZV90IHRlc3RfaWQsIFRlc3RSZXN1bHQgcmVzdWx0KSB7CisgICAgVmVyaWZ5VGVzdElkKHRlc3RfaWQpOworICAgIHRlc3RfbGlzdF9bdGVzdF9pZF0uU2V0UmVzdWx0KHJlc3VsdCk7CisgIH0KKworICBUZXN0UmVzdWx0IEdldFRlc3RSZXN1bHQoc2l6ZV90IHRlc3RfaWQpIGNvbnN0IHsKKyAgICBWZXJpZnlUZXN0SWQodGVzdF9pZCk7CisgICAgcmV0dXJuIHRlc3RfbGlzdF9bdGVzdF9pZF0uR2V0UmVzdWx0KCk7CisgIH0KKworICB2b2lkIFNldFRlc3RUaW1lKHNpemVfdCB0ZXN0X2lkLCBpbnQ2NF90IGVsYXBzZWRfdGltZV9ucykgeworICAgIFZlcmlmeVRlc3RJZCh0ZXN0X2lkKTsKKyAgICB0ZXN0X2xpc3RfW3Rlc3RfaWRdLlNldFRlc3RUaW1lKGVsYXBzZWRfdGltZV9ucyk7CisgIH0KKworICBpbnQ2NF90IEdldFRlc3RUaW1lKHNpemVfdCB0ZXN0X2lkKSBjb25zdCB7CisgICAgVmVyaWZ5VGVzdElkKHRlc3RfaWQpOworICAgIHJldHVybiB0ZXN0X2xpc3RfW3Rlc3RfaWRdLkdldFRlc3RUaW1lKCk7CisgIH0KKworIHByaXZhdGU6CisgIHZvaWQgVmVyaWZ5VGVzdElkKHNpemVfdCB0ZXN0X2lkKSBjb25zdCB7CisgICAgaWYodGVzdF9pZCA+PSB0ZXN0X2xpc3RfLnNpemUoKSkgeworICAgICAgZnByaW50ZihzdGRlcnIsICJ0ZXN0X2lkICV6dSBvdXQgb2YgcmFuZ2UgWzAsICV6dSlcbiIsIHRlc3RfaWQsIHRlc3RfbGlzdF8uc2l6ZSgpKTsKKyAgICAgIGV4aXQoMSk7CisgICAgfQorICB9CisKKyBwcml2YXRlOgorICBjb25zdCBzdGQ6OnN0cmluZyBuYW1lXzsKKyAgc3RkOjp2ZWN0b3I8VGVzdD4gdGVzdF9saXN0XzsKK307CisKK2NsYXNzIFRlc3RSZXN1bHRQcmludGVyIDogcHVibGljIHRlc3Rpbmc6OkVtcHR5VGVzdEV2ZW50TGlzdGVuZXIgeworIHB1YmxpYzoKKyAgVGVzdFJlc3VsdFByaW50ZXIoKSA6IHBpbmZvXyhOVUxMKSB7fQorICB2aXJ0dWFsIHZvaWQgT25UZXN0U3RhcnQoY29uc3QgdGVzdGluZzo6VGVzdEluZm8mIHRlc3RfaW5mbykgeworICAgIHBpbmZvXyA9ICZ0ZXN0X2luZm87IC8vIFJlY29yZCB0ZXN0X2luZm8gZm9yIHVzZSBpbiBPblRlc3RQYXJ0UmVzdWx0LgorICB9CisgIHZpcnR1YWwgdm9pZCBPblRlc3RQYXJ0UmVzdWx0KGNvbnN0IHRlc3Rpbmc6OlRlc3RQYXJ0UmVzdWx0JiByZXN1bHQpOworCisgcHJpdmF0ZToKKyAgY29uc3QgdGVzdGluZzo6VGVzdEluZm8qIHBpbmZvXzsKK307CisKKy8vIENhbGxlZCBhZnRlciBhbiBhc3NlcnRpb24gZmFpbHVyZS4KK3ZvaWQgVGVzdFJlc3VsdFByaW50ZXI6Ok9uVGVzdFBhcnRSZXN1bHQoY29uc3QgdGVzdGluZzo6VGVzdFBhcnRSZXN1bHQmIHJlc3VsdCkgeworICAvLyBJZiB0aGUgdGVzdCBwYXJ0IHN1Y2NlZWRlZCwgd2UgZG9uJ3QgbmVlZCB0byBkbyBhbnl0aGluZy4KKyAgaWYgKHJlc3VsdC50eXBlKCkgPT0gdGVzdGluZzo6VGVzdFBhcnRSZXN1bHQ6OmtTdWNjZXNzKQorICAgIHJldHVybjsKKworICAvLyBQcmludCBmYWlsdXJlIG1lc3NhZ2UgZnJvbSB0aGUgYXNzZXJ0aW9uIChlLmcuIGV4cGVjdGVkIHRoaXMgYW5kIGdvdCB0aGF0KS4KKyAgcHJpbnRmKCIlczooJWQpIEZhaWx1cmUgaW4gdGVzdCAlcy4lc1xuJXNcbiIsIHJlc3VsdC5maWxlX25hbWUoKSwgcmVzdWx0LmxpbmVfbnVtYmVyKCksCisgICAgICAgICBwaW5mb18tPnRlc3RfY2FzZV9uYW1lKCksIHBpbmZvXy0+bmFtZSgpLCByZXN1bHQubWVzc2FnZSgpKTsKKyAgZmZsdXNoKHN0ZG91dCk7Cit9CisKK3N0YXRpYyBpbnQ2NF90IE5hbm9UaW1lKCkgeworICBzdHJ1Y3QgdGltZXNwZWMgdDsKKyAgdC50dl9zZWMgPSB0LnR2X25zZWMgPSAwOworICBjbG9ja19nZXR0aW1lKENMT0NLX01PTk9UT05JQywgJnQpOworICByZXR1cm4gc3RhdGljX2Nhc3Q8aW50NjRfdD4odC50dl9zZWMpICogMTAwMDAwMDAwMExMICsgdC50dl9uc2VjOworfQorCitzdGF0aWMgYm9vbCBFbnVtZXJhdGVUZXN0cyhpbnQgYXJnYywgY2hhcioqIGFyZ3YsIHN0ZDo6dmVjdG9yPFRlc3RDYXNlPiYgdGVzdGNhc2VfbGlzdCkgeworICBzdGQ6OnN0cmluZyBjb21tYW5kOworICBmb3IgKGludCBpID0gMDsgaSA8IGFyZ2M7ICsraSkgeworICAgIGNvbW1hbmQgKz0gYXJndltpXTsKKyAgICBjb21tYW5kICs9ICIgIjsKKyAgfQorICBjb21tYW5kICs9ICItLWd0ZXN0X2xpc3RfdGVzdHMiOworICBGSUxFKiBmcCA9IHBvcGVuKGNvbW1hbmQuY19zdHIoKSwgInIiKTsKKyAgaWYgKGZwID09IE5VTEwpIHsKKyAgICBwZXJyb3IoInBvcGVuIik7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisKKyAgY2hhciBidWZbMjAwXTsKKyAgd2hpbGUgKGZnZXRzKGJ1Ziwgc2l6ZW9mKGJ1ZiksIGZwKSAhPSBOVUxMKSB7CisgICAgY2hhciogcCA9IGJ1ZjsKKworICAgIHdoaWxlICgqcCAhPSAnXDAnICYmIGlzc3BhY2UoKnApKSB7CisgICAgICArK3A7CisgICAgfQorICAgIGlmICgqcCA9PSAnXDAnKSBjb250aW51ZTsKKyAgICBjaGFyKiBzdGFydCA9IHA7CisgICAgd2hpbGUgKCpwICE9ICdcMCcgJiYgIWlzc3BhY2UoKnApKSB7CisgICAgICArK3A7CisgICAgfQorICAgIGNoYXIqIGVuZCA9IHA7CisgICAgd2hpbGUgKCpwICE9ICdcMCcgJiYgaXNzcGFjZSgqcCkpIHsKKyAgICAgICsrcDsKKyAgICB9CisgICAgaWYgKCpwICE9ICdcMCcpIHsKKyAgICAgIC8vIFRoaXMgaXMgbm90IHdlIHdhbnQsIGd0ZXN0IG11c3QgbWVldCB3aXRoIHNvbWUgZXJyb3Igd2hlbiBwYXJzaW5nIHRoZSBhcmd1bWVudHMuCisgICAgICBmcHJpbnRmKHN0ZGVyciwgImFyZ3VtZW50IGVycm9yLCBjaGVjayB3aXRoIC0taGVscFxuIik7CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICAgICplbmQgPSAnXDAnOworICAgIGlmICgqKGVuZCAtIDEpID09ICcuJykgeworICAgICAgKihlbmQgLSAxKSA9ICdcMCc7CisgICAgICB0ZXN0Y2FzZV9saXN0LnB1c2hfYmFjayhUZXN0Q2FzZShzdGFydCkpOworICAgIH0gZWxzZSB7CisgICAgICB0ZXN0Y2FzZV9saXN0LmJhY2soKS5BcHBlbmRUZXN0KHN0YXJ0KTsKKyAgICB9CisgIH0KKyAgaW50IHJlc3VsdCA9IHBjbG9zZShmcCk7CisgIHJldHVybiAocmVzdWx0ICE9IC0xICYmIFdFWElUU1RBVFVTKHJlc3VsdCkgPT0gMCk7Cit9CisKKy8vIFBhcnQgb2YgdGhlIGZvbGxvd2luZyAqUHJpbnQgZnVuY3Rpb25zIGFyZSBjb3BpZWQgZnJvbSBleHRlcm5hbC9ndGVzdC9zcmMvZ3Rlc3QuY2M6CisvLyBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXIuIFRoZSByZWFzb24gZm9yIGNvcHkgaXMgdGhhdCBQcmV0dHlVbml0VGVzdFJlc3VsdFByaW50ZXIKKy8vIGlzIGRlZmluZWQgYW5kIHVzZWQgaW4gZ3Rlc3QuY2MsIHdoaWNoIGlzIGhhcmQgdG8gcmV1c2UuCitzdGF0aWMgdm9pZCBPblRlc3RJdGVyYXRpb25TdGFydFByaW50KGNvbnN0IHN0ZDo6dmVjdG9yPFRlc3RDYXNlPiYgdGVzdGNhc2VfbGlzdCwgc2l6ZV90IGl0ZXJhdGlvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGl0ZXJhdGlvbl9jb3VudCkgeworICBpZiAoaXRlcmF0aW9uX2NvdW50ICE9IDEpIHsKKyAgICBwcmludGYoIlxuUmVwZWF0aW5nIGFsbCB0ZXN0cyAoaXRlcmF0aW9uICV6dSkgLiAuIC5cblxuIiwgaXRlcmF0aW9uKTsKKyAgfQorICBDb2xvcmVkUHJpbnRmKENPTE9SX0dSRUVOLCAgIls9PT09PT09PT09XSAiKTsKKworICBzaXplX3QgdGVzdGNhc2VfY291bnQgPSB0ZXN0Y2FzZV9saXN0LnNpemUoKTsKKyAgc2l6ZV90IHRlc3RfY291bnQgPSAwOworICBmb3IgKGNvbnN0IGF1dG8mIHRlc3RjYXNlIDogdGVzdGNhc2VfbGlzdCkgeworICAgIHRlc3RfY291bnQgKz0gdGVzdGNhc2UuVGVzdENvdW50KCk7CisgIH0KKworICBwcmludGYoIlJ1bm5pbmcgJXp1ICVzIGZyb20gJXp1ICVzLlxuIiwKKyAgICAgICAgIHRlc3RfY291bnQsICh0ZXN0X2NvdW50ID09IDEpID8gInRlc3QiIDogInRlc3RzIiwKKyAgICAgICAgIHRlc3RjYXNlX2NvdW50LCAodGVzdGNhc2VfY291bnQgPT0gMSkgPyAidGVzdCBjYXNlIiA6ICJ0ZXN0IGNhc2VzIik7CisgIGZmbHVzaChzdGRvdXQpOworfQorCisvLyBiaW9uaWMgY3RzIHRlc3QgbmVlZHMgZ3Rlc3Qgb3V0cHV0IGZvcm1hdC4KKyNpZiBkZWZpbmVkKFVTSU5HX0dURVNUX09VVFBVVF9GT1JNQVQpCisKK3N0YXRpYyB2b2lkIE9uVGVzdEVuZFByaW50KGNvbnN0IFRlc3RDYXNlJiB0ZXN0Y2FzZSwgc2l6ZV90IHRlc3RfaWQpIHsKKyAgQ29sb3JlZFByaW50ZihDT0xPUl9HUkVFTiwgIlsgUlVOICAgICAgXSAiKTsKKyAgcHJpbnRmKCIlc1xuIiwgdGVzdGNhc2UuR2V0VGVzdE5hbWUodGVzdF9pZCkuY19zdHIoKSk7CisKKyAgY29uc3Qgc3RkOjpzdHJpbmcmIHRlc3Rfb3V0cHV0ID0gdGVzdGNhc2UuR2V0VGVzdCh0ZXN0X2lkKS5HZXRUZXN0T3V0cHV0KCk7CisgIHByaW50ZigiJXMiLCB0ZXN0X291dHB1dC5jX3N0cigpKTsKKworICBUZXN0UmVzdWx0IHJlc3VsdCA9IHRlc3RjYXNlLkdldFRlc3RSZXN1bHQodGVzdF9pZCk7CisgIGlmIChyZXN1bHQgPT0gVEVTVF9TVUNDRVNTKSB7CisgICAgQ29sb3JlZFByaW50ZihDT0xPUl9HUkVFTiwgIlsgICAgICAgT0sgXSAiKTsKKyAgfSBlbHNlIHsKKyAgICBDb2xvcmVkUHJpbnRmKENPTE9SX1JFRCwgIlsgIEZBSUxFRCAgXSAiKTsKKyAgfQorICBwcmludGYoIiVzIiwgdGVzdGNhc2UuR2V0VGVzdE5hbWUodGVzdF9pZCkuY19zdHIoKSk7CisgIGlmICh0ZXN0aW5nOjpHVEVTVF9GTEFHKHByaW50X3RpbWUpKSB7CisgICAgcHJpbnRmKCIgKCUiIFBSSWQ2NCAiIG1zKSIsIHRlc3RjYXNlLkdldFRlc3RUaW1lKHRlc3RfaWQpIC8gMTAwMDAwMCk7CisgIH0KKyAgcHJpbnRmKCJcbiIpOworICBmZmx1c2goc3Rkb3V0KTsKK30KKworI2Vsc2UgIC8vICFkZWZpbmVkKFVTSU5HX0dURVNUX09VVFBVVF9GT1JNQVQpCisKK3N0YXRpYyB2b2lkIE9uVGVzdEVuZFByaW50KGNvbnN0IFRlc3RDYXNlJiB0ZXN0Y2FzZSwgc2l6ZV90IHRlc3RfaWQpIHsKKyAgVGVzdFJlc3VsdCByZXN1bHQgPSB0ZXN0Y2FzZS5HZXRUZXN0UmVzdWx0KHRlc3RfaWQpOworICBpZiAocmVzdWx0ID09IFRFU1RfU1VDQ0VTUykgeworICAgIENvbG9yZWRQcmludGYoQ09MT1JfR1JFRU4sICJbICAgIE9LICAgIF0gIik7CisgIH0gZWxzZSBpZiAocmVzdWx0ID09IFRFU1RfRkFJTEVEKSB7CisgICAgQ29sb3JlZFByaW50ZihDT0xPUl9SRUQsICJbICBGQUlMRUQgIF0gIik7CisgIH0gZWxzZSBpZiAocmVzdWx0ID09IFRFU1RfVElNRU9VVCkgeworICAgIENvbG9yZWRQcmludGYoQ09MT1JfUkVELCAiWyBUSU1FT1VUICBdICIpOworICB9CisKKyAgcHJpbnRmKCIlcyIsIHRlc3RjYXNlLkdldFRlc3ROYW1lKHRlc3RfaWQpLmNfc3RyKCkpOworICBpZiAodGVzdGluZzo6R1RFU1RfRkxBRyhwcmludF90aW1lKSkgeworICAgIHByaW50ZigiICglIiBQUklkNjQgIiBtcykiLCB0ZXN0Y2FzZS5HZXRUZXN0VGltZSh0ZXN0X2lkKSAvIDEwMDAwMDApOworICB9CisgIHByaW50ZigiXG4iKTsKKworICBjb25zdCBzdGQ6OnN0cmluZyYgdGVzdF9vdXRwdXQgPSB0ZXN0Y2FzZS5HZXRUZXN0KHRlc3RfaWQpLkdldFRlc3RPdXRwdXQoKTsKKyAgcHJpbnRmKCIlcyIsIHRlc3Rfb3V0cHV0LmNfc3RyKCkpOworICBmZmx1c2goc3Rkb3V0KTsKK30KKworI2VuZGlmICAvLyAhZGVmaW5lZChVU0lOR19HVEVTVF9PVVRQVVRfRk9STUFUKQorCitzdGF0aWMgdm9pZCBPblRlc3RJdGVyYXRpb25FbmRQcmludChjb25zdCBzdGQ6OnZlY3RvcjxUZXN0Q2FzZT4mIHRlc3RjYXNlX2xpc3QsIHNpemVfdCAvKml0ZXJhdGlvbiovLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50NjRfdCBlbGFwc2VkX3RpbWVfbnMpIHsKKworICBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gZmFpbF90ZXN0X25hbWVfbGlzdDsKKyAgc3RkOjp2ZWN0b3I8c3RkOjpwYWlyPHN0ZDo6c3RyaW5nLCBpbnQ2NF90Pj4gdGltZW91dF90ZXN0X2xpc3Q7CisKKyAgLy8gRm9yIHRlc3RzIHJ1biBleGNlZWQgd2FybmxpbmUgYnV0IG5vdCB0aW1lb3V0LgorICBzdGQ6OnZlY3RvcjxzdGQ6OnR1cGxlPHN0ZDo6c3RyaW5nLCBpbnQ2NF90LCBpbnQ+PiBzbG93X3Rlc3RfbGlzdDsKKyAgc2l6ZV90IHRlc3RjYXNlX2NvdW50ID0gdGVzdGNhc2VfbGlzdC5zaXplKCk7CisgIHNpemVfdCB0ZXN0X2NvdW50ID0gMDsKKyAgc2l6ZV90IHN1Y2Nlc3NfdGVzdF9jb3VudCA9IDA7CisKKyAgZm9yIChjb25zdCBhdXRvJiB0ZXN0Y2FzZSA6IHRlc3RjYXNlX2xpc3QpIHsKKyAgICB0ZXN0X2NvdW50ICs9IHRlc3RjYXNlLlRlc3RDb3VudCgpOworICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgdGVzdGNhc2UuVGVzdENvdW50KCk7ICsraSkgeworICAgICAgVGVzdFJlc3VsdCByZXN1bHQgPSB0ZXN0Y2FzZS5HZXRUZXN0UmVzdWx0KGkpOworICAgICAgaWYgKHJlc3VsdCA9PSBURVNUX1NVQ0NFU1MpIHsKKyAgICAgICAgKytzdWNjZXNzX3Rlc3RfY291bnQ7CisgICAgICB9IGVsc2UgaWYgKHJlc3VsdCA9PSBURVNUX0ZBSUxFRCkgeworICAgICAgICBmYWlsX3Rlc3RfbmFtZV9saXN0LnB1c2hfYmFjayh0ZXN0Y2FzZS5HZXRUZXN0TmFtZShpKSk7CisgICAgICB9IGVsc2UgaWYgKHJlc3VsdCA9PSBURVNUX1RJTUVPVVQpIHsKKyAgICAgICAgdGltZW91dF90ZXN0X2xpc3QucHVzaF9iYWNrKHN0ZDo6bWFrZV9wYWlyKHRlc3RjYXNlLkdldFRlc3ROYW1lKGkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdGNhc2UuR2V0VGVzdFRpbWUoaSkpKTsKKyAgICAgIH0KKyAgICAgIGlmIChyZXN1bHQgIT0gVEVTVF9USU1FT1VUICYmCisgICAgICAgICAgdGVzdGNhc2UuR2V0VGVzdFRpbWUoaSkgLyAxMDAwMDAwID49IEdldFdhcm5saW5lSW5mbyh0ZXN0Y2FzZS5HZXRUZXN0TmFtZShpKSkpIHsKKyAgICAgICAgc2xvd190ZXN0X2xpc3QucHVzaF9iYWNrKHN0ZDo6bWFrZV90dXBsZSh0ZXN0Y2FzZS5HZXRUZXN0TmFtZShpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0Y2FzZS5HZXRUZXN0VGltZShpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHZXRXYXJubGluZUluZm8odGVzdGNhc2UuR2V0VGVzdE5hbWUoaSkpKSk7CisgICAgICB9CisgICAgfQorICB9CisKKyAgQ29sb3JlZFByaW50ZihDT0xPUl9HUkVFTiwgICJbPT09PT09PT09PV0gIik7CisgIHByaW50ZigiJXp1ICVzIGZyb20gJXp1ICVzIHJhbi4iLCB0ZXN0X2NvdW50LCAodGVzdF9jb3VudCA9PSAxKSA/ICJ0ZXN0IiA6ICJ0ZXN0cyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0Y2FzZV9jb3VudCwgKHRlc3RjYXNlX2NvdW50ID09IDEpID8gInRlc3QgY2FzZSIgOiAidGVzdCBjYXNlcyIpOworICBpZiAodGVzdGluZzo6R1RFU1RfRkxBRyhwcmludF90aW1lKSkgeworICAgIHByaW50ZigiICglIiBQUklkNjQgIiBtcyB0b3RhbCkiLCBlbGFwc2VkX3RpbWVfbnMgLyAxMDAwMDAwKTsKKyAgfQorICBwcmludGYoIlxuIik7CisgIENvbG9yZWRQcmludGYoQ09MT1JfR1JFRU4sICAiWyAgIFBBU1MgICBdICIpOworICBwcmludGYoIiV6dSAlcy5cbiIsIHN1Y2Nlc3NfdGVzdF9jb3VudCwgKHN1Y2Nlc3NfdGVzdF9jb3VudCA9PSAxKSA/ICJ0ZXN0IiA6ICJ0ZXN0cyIpOworCisgIC8vIFByaW50IHRlc3RzIGZhaWxlZC4KKyAgc2l6ZV90IGZhaWxfdGVzdF9jb3VudCA9IGZhaWxfdGVzdF9uYW1lX2xpc3Quc2l6ZSgpOworICBpZiAoZmFpbF90ZXN0X2NvdW50ID4gMCkgeworICAgIENvbG9yZWRQcmludGYoQ09MT1JfUkVELCAgIlsgICBGQUlMICAgXSAiKTsKKyAgICBwcmludGYoIiV6dSAlcywgbGlzdGVkIGJlbG93OlxuIiwgZmFpbF90ZXN0X2NvdW50LCAoZmFpbF90ZXN0X2NvdW50ID09IDEpID8gInRlc3QiIDogInRlc3RzIik7CisgICAgZm9yIChjb25zdCBhdXRvJiBuYW1lIDogZmFpbF90ZXN0X25hbWVfbGlzdCkgeworICAgICAgQ29sb3JlZFByaW50ZihDT0xPUl9SRUQsICJbICAgRkFJTCAgIF0gIik7CisgICAgICBwcmludGYoIiVzXG4iLCBuYW1lLmNfc3RyKCkpOworICAgIH0KKyAgfQorCisgIC8vIFByaW50IHRlc3RzIHJ1biB0aW1lb3V0LgorICBzaXplX3QgdGltZW91dF90ZXN0X2NvdW50ID0gdGltZW91dF90ZXN0X2xpc3Quc2l6ZSgpOworICBpZiAodGltZW91dF90ZXN0X2NvdW50ID4gMCkgeworICAgIENvbG9yZWRQcmludGYoQ09MT1JfUkVELCAiWyBUSU1FT1VUICBdICIpOworICAgIHByaW50ZigiJXp1ICVzLCBsaXN0ZWQgYmVsb3c6XG4iLCB0aW1lb3V0X3Rlc3RfY291bnQsICh0aW1lb3V0X3Rlc3RfY291bnQgPT0gMSkgPyAidGVzdCIgOiAidGVzdHMiKTsKKyAgICBmb3IgKGNvbnN0IGF1dG8mIHRpbWVvdXRfcGFpciA6IHRpbWVvdXRfdGVzdF9saXN0KSB7CisgICAgICBDb2xvcmVkUHJpbnRmKENPTE9SX1JFRCwgIlsgVElNRU9VVCAgXSAiKTsKKyAgICAgIHByaW50ZigiJXMgKHN0b3BwZWQgYXQgJSIgUFJJZDY0ICIgbXMpXG4iLCB0aW1lb3V0X3BhaXIuZmlyc3QuY19zdHIoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lb3V0X3BhaXIuc2Vjb25kIC8gMTAwMDAwMCk7CisgICAgfQorICB9CisKKyAgLy8gUHJpbnQgdGVzdHMgcnVuIGV4Y2VlZCB3YXJubGluZS4KKyAgc2l6ZV90IHNsb3dfdGVzdF9jb3VudCA9IHNsb3dfdGVzdF9saXN0LnNpemUoKTsKKyAgaWYgKHNsb3dfdGVzdF9jb3VudCA+IDApIHsKKyAgICBDb2xvcmVkUHJpbnRmKENPTE9SX1lFTExPVywgIlsgICBTTE9XICAgXSAiKTsKKyAgICBwcmludGYoIiV6dSAlcywgbGlzdGVkIGJlbG93OlxuIiwgc2xvd190ZXN0X2NvdW50LCAoc2xvd190ZXN0X2NvdW50ID09IDEpID8gInRlc3QiIDogInRlc3RzIik7CisgICAgZm9yIChjb25zdCBhdXRvJiBzbG93X3R1cGxlIDogc2xvd190ZXN0X2xpc3QpIHsKKyAgICAgIENvbG9yZWRQcmludGYoQ09MT1JfWUVMTE9XLCAiWyAgIFNMT1cgICBdICIpOworICAgICAgcHJpbnRmKCIlcyAoJSIgUFJJZDY0ICIgbXMsIGV4Y2VlZCB3YXJubGluZSAlZCBtcylcbiIsIHN0ZDo6Z2V0PDA+KHNsb3dfdHVwbGUpLmNfc3RyKCksCisgICAgICAgICAgICAgc3RkOjpnZXQ8MT4oc2xvd190dXBsZSkgLyAxMDAwMDAwLCBzdGQ6OmdldDwyPihzbG93X3R1cGxlKSk7CisgICAgfQorICB9CisKKyAgaWYgKGZhaWxfdGVzdF9jb3VudCA+IDApIHsKKyAgICBwcmludGYoIlxuJTJ6dSBGQUlMRUQgJXNcbiIsIGZhaWxfdGVzdF9jb3VudCwgKGZhaWxfdGVzdF9jb3VudCA9PSAxKSA/ICJURVNUIiA6ICJURVNUUyIpOworICB9CisgIGlmICh0aW1lb3V0X3Rlc3RfY291bnQgPiAwKSB7CisgICAgcHJpbnRmKCIlMnp1IFRJTUVPVVQgJXNcbiIsIHRpbWVvdXRfdGVzdF9jb3VudCwgKHRpbWVvdXRfdGVzdF9jb3VudCA9PSAxKSA/ICJURVNUIiA6ICJURVNUUyIpOworICB9CisgIGlmIChzbG93X3Rlc3RfY291bnQgPiAwKSB7CisgICAgcHJpbnRmKCIlMnp1IFNMT1cgJXNcbiIsIHNsb3dfdGVzdF9jb3VudCwgKHNsb3dfdGVzdF9jb3VudCA9PSAxKSA/ICJURVNUIiA6ICJURVNUUyIpOworICB9CisgIGZmbHVzaChzdGRvdXQpOworfQorCisvLyBPdXRwdXQgeG1sIGZpbGUgd2hlbiAtLWd0ZXN0X291dHB1dCBpcyB1c2VkLCB3cml0ZSB0aGlzIGZ1bmN0aW9uIGFzIHdlIGNhbid0IHJldXNlCisvLyBndGVzdC5jYzpYbWxVbml0VGVzdFJlc3VsdFByaW50ZXIuIFRoZSByZWFzb24gaXMgWG1sVW5pdFRlc3RSZXN1bHRQcmludGVyIGlzIHRvdGFsbHkKKy8vIGRlZmluZWQgaW4gZ3Rlc3QuY2MgYW5kIG5vdCBleHBvc2UgdG8gb3V0c2lkZS4gV2hhdCdzIG1vcmUsIGFzIHdlIGRvbid0IHJ1biBndGVzdCBpbgorLy8gdGhlIHBhcmVudCBwcm9jZXNzLCB3ZSBkb24ndCBoYXZlIGd0ZXN0IGNsYXNzZXMgd2hpY2ggYXJlIG5lZWRlZCBieSBYbWxVbml0VGVzdFJlc3VsdFByaW50ZXIuCit2b2lkIE9uVGVzdEl0ZXJhdGlvbkVuZFhtbFByaW50KGNvbnN0IHN0ZDo6c3RyaW5nJiB4bWxfb3V0cHV0X2ZpbGVuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnZlY3RvcjxUZXN0Q2FzZT4mIHRlc3RjYXNlX2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVfdCBlcG9jaF9pdGVyYXRpb25fc3RhcnRfdGltZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50NjRfdCBlbGFwc2VkX3RpbWVfbnMpIHsKKyAgRklMRSogZnAgPSBmb3Blbih4bWxfb3V0cHV0X2ZpbGVuYW1lLmNfc3RyKCksICJ3Iik7CisgIGlmIChmcCA9PSBOVUxMKSB7CisgICAgZnByaW50ZihzdGRlcnIsICJmYWlsZWQgdG8gb3BlbiAnJXMnOiAlc1xuIiwgeG1sX291dHB1dF9maWxlbmFtZS5jX3N0cigpLCBzdHJlcnJvcihlcnJubykpOworICAgIGV4aXQoMSk7CisgIH0KKworICBzaXplX3QgdG90YWxfdGVzdF9jb3VudCA9IDA7CisgIHNpemVfdCB0b3RhbF9mYWlsZWRfY291bnQgPSAwOworICBzdGQ6OnZlY3RvcjxzaXplX3Q+IGZhaWxlZF9jb3VudF9saXN0KHRlc3RjYXNlX2xpc3Quc2l6ZSgpLCAwKTsKKyAgc3RkOjp2ZWN0b3I8aW50NjRfdD4gZWxhcHNlZF90aW1lX2xpc3QodGVzdGNhc2VfbGlzdC5zaXplKCksIDApOworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHRlc3RjYXNlX2xpc3Quc2l6ZSgpOyArK2kpIHsKKyAgICBhdXRvJiB0ZXN0Y2FzZSA9IHRlc3RjYXNlX2xpc3RbaV07CisgICAgdG90YWxfdGVzdF9jb3VudCArPSB0ZXN0Y2FzZS5UZXN0Q291bnQoKTsKKyAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IHRlc3RjYXNlLlRlc3RDb3VudCgpOyArK2opIHsKKyAgICAgIGlmICh0ZXN0Y2FzZS5HZXRUZXN0UmVzdWx0KGopICE9IFRFU1RfU1VDQ0VTUykgeworICAgICAgICArK2ZhaWxlZF9jb3VudF9saXN0W2ldOworICAgICAgfQorICAgICAgZWxhcHNlZF90aW1lX2xpc3RbaV0gKz0gdGVzdGNhc2UuR2V0VGVzdFRpbWUoaik7CisgICAgfQorICAgIHRvdGFsX2ZhaWxlZF9jb3VudCArPSBmYWlsZWRfY291bnRfbGlzdFtpXTsKKyAgfQorCisgIGNvbnN0IHRtKiB0aW1lX3N0cnVjdCA9IGxvY2FsdGltZSgmZXBvY2hfaXRlcmF0aW9uX3N0YXJ0X3RpbWUpOworICBjaGFyIHRpbWVzdGFtcFs0MF07CisgIHNucHJpbnRmKHRpbWVzdGFtcCwgc2l6ZW9mKHRpbWVzdGFtcCksICIlNGQtJTAyZC0lMDJkVCUwMmQ6JTAyZDolMDJkIiwKKyAgICAgICAgICAgdGltZV9zdHJ1Y3QtPnRtX3llYXIgKyAxOTAwLCB0aW1lX3N0cnVjdC0+dG1fbW9uICsgMSwgdGltZV9zdHJ1Y3QtPnRtX21kYXksCisgICAgICAgICAgIHRpbWVfc3RydWN0LT50bV9ob3VyLCB0aW1lX3N0cnVjdC0+dG1fbWluLCB0aW1lX3N0cnVjdC0+dG1fc2VjKTsKKworICBmcHV0cygiPD94bWwgdmVyc2lvbj1cIjEuMFwiIGVuY29kaW5nPVwiVVRGLThcIj8+XG4iLCBmcCk7CisgIGZwcmludGYoZnAsICI8dGVzdHN1aXRlcyB0ZXN0cz1cIiV6dVwiIGZhaWx1cmVzPVwiJXp1XCIgZGlzYWJsZWQ9XCIwXCIgZXJyb3JzPVwiMFwiIiwKKyAgICAgICAgICB0b3RhbF90ZXN0X2NvdW50LCB0b3RhbF9mYWlsZWRfY291bnQpOworICBmcHJpbnRmKGZwLCAiIHRpbWVzdGFtcD1cIiVzXCIgdGltZT1cIiUuM2xmXCIgbmFtZT1cIkFsbFRlc3RzXCI+XG4iLCB0aW1lc3RhbXAsIGVsYXBzZWRfdGltZV9ucyAvIDFlOSk7CisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgdGVzdGNhc2VfbGlzdC5zaXplKCk7ICsraSkgeworICAgIGF1dG8mIHRlc3RjYXNlID0gdGVzdGNhc2VfbGlzdFtpXTsKKyAgICBmcHJpbnRmKGZwLCAiICA8dGVzdHN1aXRlIG5hbWU9XCIlc1wiIHRlc3RzPVwiJXp1XCIgZmFpbHVyZXM9XCIlenVcIiBkaXNhYmxlZD1cIjBcIiBlcnJvcnM9XCIwXCIiLAorICAgICAgICAgICAgdGVzdGNhc2UuR2V0TmFtZSgpLmNfc3RyKCksIHRlc3RjYXNlLlRlc3RDb3VudCgpLCBmYWlsZWRfY291bnRfbGlzdFtpXSk7CisgICAgZnByaW50ZihmcCwgIiB0aW1lPVwiJS4zbGZcIj5cbiIsIGVsYXBzZWRfdGltZV9saXN0W2ldIC8gMWU5KTsKKworICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgdGVzdGNhc2UuVGVzdENvdW50KCk7ICsraikgeworICAgICAgZnByaW50ZihmcCwgIiAgICA8dGVzdGNhc2UgbmFtZT1cIiVzXCIgc3RhdHVzPVwicnVuXCIgdGltZT1cIiUuM2xmXCIgY2xhc3NuYW1lPVwiJXNcIiIsCisgICAgICAgICAgICAgIHRlc3RjYXNlLkdldFRlc3QoaikuR2V0TmFtZSgpLmNfc3RyKCksIHRlc3RjYXNlLkdldFRlc3RUaW1lKGopIC8gMWU5LAorICAgICAgICAgICAgICB0ZXN0Y2FzZS5HZXROYW1lKCkuY19zdHIoKSk7CisgICAgICBpZiAodGVzdGNhc2UuR2V0VGVzdFJlc3VsdChqKSA9PSBURVNUX1NVQ0NFU1MpIHsKKyAgICAgICAgZnB1dHMoIiAvPlxuIiwgZnApOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgZnB1dHMoIj5cbiIsIGZwKTsKKyAgICAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIHRlc3Rfb3V0cHV0ID0gdGVzdGNhc2UuR2V0VGVzdChqKS5HZXRUZXN0T3V0cHV0KCk7CisgICAgICAgIGZwcmludGYoZnAsICIgICAgICA8ZmFpbHVyZSBtZXNzYWdlPVwiJXNcIiB0eXBlPVwiXCI+XG4iLCB0ZXN0X291dHB1dC5jX3N0cigpKTsKKyAgICAgICAgZnB1dHMoIiAgICAgIDwvZmFpbHVyZT5cbiIsIGZwKTsKKyAgICAgICAgZnB1dHMoIiAgICA8L3Rlc3RjYXNlPlxuIiwgZnApOworICAgICAgfQorICAgIH0KKworICAgIGZwdXRzKCIgIDwvdGVzdHN1aXRlPlxuIiwgZnApOworICB9CisgIGZwdXRzKCI8L3Rlc3RzdWl0ZXM+XG4iLCBmcCk7CisgIGZjbG9zZShmcCk7Cit9CisKK3N0cnVjdCBDaGlsZFByb2NJbmZvIHsKKyAgcGlkX3QgcGlkOworICBpbnQ2NF90IHN0YXJ0X3RpbWVfbnM7CisgIGludDY0X3QgZW5kX3RpbWVfbnM7CisgIGludDY0X3QgZGVhZGxpbmVfZW5kX3RpbWVfbnM7IC8vIFRoZSB0aW1lIHdoZW4gdGhlIHRlc3QgaXMgdGhvdWdodCBvZiBhcyB0aW1lb3V0LgorICBzaXplX3QgdGVzdGNhc2VfaWQsIHRlc3RfaWQ7CisgIGJvb2wgZmluaXNoZWQ7CisgIGJvb2wgdGltZWRfb3V0OworICBpbnQgZXhpdF9zdGF0dXM7CisgIGludCBjaGlsZF9yZWFkX2ZkOyAvLyBGaWxlIGRlc2NyaXB0b3IgdG8gcmVhZCBjaGlsZCB0ZXN0IGZhaWx1cmUgaW5mby4KK307CisKKy8vIEZvcmtlZCBDaGlsZCBwcm9jZXNzLCBydW4gdGhlIHNpbmdsZSB0ZXN0Lgorc3RhdGljIHZvaWQgQ2hpbGRQcm9jZXNzRm4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2LCBjb25zdCBzdGQ6OnN0cmluZyYgdGVzdF9uYW1lKSB7CisgIGNoYXIqKiBuZXdfYXJndiA9IG5ldyBjaGFyKlthcmdjICsgMl07CisgIG1lbWNweShuZXdfYXJndiwgYXJndiwgc2l6ZW9mKGNoYXIqKSAqIGFyZ2MpOworCisgIGNoYXIqIGZpbHRlcl9hcmcgPSBuZXcgY2hhciBbdGVzdF9uYW1lLnNpemUoKSArIDIwXTsKKyAgc3RyY3B5KGZpbHRlcl9hcmcsICItLWd0ZXN0X2ZpbHRlcj0iKTsKKyAgc3RyY2F0KGZpbHRlcl9hcmcsIHRlc3RfbmFtZS5jX3N0cigpKTsKKyAgbmV3X2FyZ3ZbYXJnY10gPSBmaWx0ZXJfYXJnOworICBuZXdfYXJndlthcmdjICsgMV0gPSBOVUxMOworCisgIGludCBuZXdfYXJnYyA9IGFyZ2MgKyAxOworICB0ZXN0aW5nOjpJbml0R29vZ2xlVGVzdCgmbmV3X2FyZ2MsIG5ld19hcmd2KTsKKyAgaW50IHJlc3VsdCA9IFJVTl9BTExfVEVTVFMoKTsKKyAgZXhpdChyZXN1bHQpOworfQorCitzdGF0aWMgQ2hpbGRQcm9jSW5mbyBSdW5DaGlsZFByb2Nlc3MoY29uc3Qgc3RkOjpzdHJpbmcmIHRlc3RfbmFtZSwgaW50IHRlc3RjYXNlX2lkLCBpbnQgdGVzdF9pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWdzZXRfdCBzaWdtYXNrLCBpbnQgYXJnYywgY2hhcioqIGFyZ3YpIHsKKyAgaW50IHBpcGVmZFsyXTsKKyAgaW50IHJldCA9IHBpcGUyKHBpcGVmZCwgT19OT05CTE9DSyk7CisgIGlmIChyZXQgPT0gLTEpIHsKKyAgICBwZXJyb3IoInBpcGUyIGluIFJ1blRlc3RJblNlcGFyYXRlUHJvYyIpOworICAgIGV4aXQoMSk7CisgIH0KKyAgcGlkX3QgcGlkID0gZm9yaygpOworICBpZiAocGlkID09IC0xKSB7CisgICAgcGVycm9yKCJmb3JrIGluIFJ1blRlc3RJblNlcGFyYXRlUHJvYyIpOworICAgIGV4aXQoMSk7CisgIH0gZWxzZSBpZiAocGlkID09IDApIHsKKyAgICAvLyBJbiBjaGlsZCBwcm9jZXNzLCBydW4gYSBzaW5nbGUgdGVzdC4KKyAgICBjbG9zZShwaXBlZmRbMF0pOworICAgIGNsb3NlKFNURE9VVF9GSUxFTk8pOworICAgIGNsb3NlKFNUREVSUl9GSUxFTk8pOworICAgIGR1cDIocGlwZWZkWzFdLCBTVERPVVRfRklMRU5PKTsKKyAgICBkdXAyKHBpcGVmZFsxXSwgU1RERVJSX0ZJTEVOTyk7CisKKyAgICBpZiAoc2lncHJvY21hc2soU0lHX1NFVE1BU0ssICZzaWdtYXNrLCBOVUxMKSA9PSAtMSkgeworICAgICAgcGVycm9yKCJzaWdwcm9jbWFzayBTSUdfU0VUTUFTSyIpOworICAgICAgZXhpdCgxKTsKKyAgICB9CisgICAgQ2hpbGRQcm9jZXNzRm4oYXJnYywgYXJndiwgdGVzdF9uYW1lKTsKKyAgICAvLyBVbnJlYWNoYWJsZS4KKyAgfQorICAvLyBJbiBwYXJlbnQgcHJvY2VzcywgaW5pdGlhbGl6ZSBjaGlsZCBwcm9jZXNzIGluZm8uCisgIGNsb3NlKHBpcGVmZFsxXSk7CisgIENoaWxkUHJvY0luZm8gY2hpbGRfcHJvYzsKKyAgY2hpbGRfcHJvYy5jaGlsZF9yZWFkX2ZkID0gcGlwZWZkWzBdOworICBjaGlsZF9wcm9jLnBpZCA9IHBpZDsKKyAgY2hpbGRfcHJvYy5zdGFydF90aW1lX25zID0gTmFub1RpbWUoKTsKKyAgY2hpbGRfcHJvYy5kZWFkbGluZV9lbmRfdGltZV9ucyA9IGNoaWxkX3Byb2Muc3RhcnRfdGltZV9ucyArIEdldERlYWRsaW5lSW5mbyh0ZXN0X25hbWUpICogMTAwMDAwMExMOworICBjaGlsZF9wcm9jLnRlc3RjYXNlX2lkID0gdGVzdGNhc2VfaWQ7CisgIGNoaWxkX3Byb2MudGVzdF9pZCA9IHRlc3RfaWQ7CisgIGNoaWxkX3Byb2MuZmluaXNoZWQgPSBmYWxzZTsKKyAgcmV0dXJuIGNoaWxkX3Byb2M7Cit9CisKK3N0YXRpYyB2b2lkIEhhbmRsZVNpZ25hbHMoc3RkOjp2ZWN0b3I8VGVzdENhc2U+JiB0ZXN0Y2FzZV9saXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPENoaWxkUHJvY0luZm8+JiBjaGlsZF9wcm9jX2xpc3QpIHsKKyAgc2lnc2V0X3Qgd2FpdGluZ19tYXNrOworICBzaWdlbXB0eXNldCgmd2FpdGluZ19tYXNrKTsKKyAgc2lnYWRkc2V0KCZ3YWl0aW5nX21hc2ssIFNJR0lOVCk7CisgIHNpZ2FkZHNldCgmd2FpdGluZ19tYXNrLCBTSUdRVUlUKTsKKyAgdGltZXNwZWMgdGltZW91dDsKKyAgdGltZW91dC50dl9zZWMgPSB0aW1lb3V0LnR2X25zZWMgPSAwOworICB3aGlsZSAodHJ1ZSkgeworICAgIGludCBzaWdubyA9IFRFTVBfRkFJTFVSRV9SRVRSWShzaWd0aW1lZHdhaXQoJndhaXRpbmdfbWFzaywgTlVMTCwgJnRpbWVvdXQpKTsKKyAgICBpZiAoc2lnbm8gPT0gLTEpIHsKKyAgICAgIGlmIChlcnJubyA9PSBFQUdBSU4pIHsKKyAgICAgICAgcmV0dXJuOyAvLyBUaW1lb3V0LCBubyBwZW5kaW5nIHNpZ25hbHMuCisgICAgICB9CisgICAgICBwZXJyb3IoInNpZ3RpbWVkd2FpdCIpOworICAgICAgZXhpdCgxKTsKKyAgICB9IGVsc2UgaWYgKHNpZ25vID09IFNJR1FVSVQpIHsKKyAgICAgIC8vIFByaW50IGN1cnJlbnQgcnVubmluZyB0ZXN0cy4KKyAgICAgIHByaW50ZigiTGlzdCBvZiBjdXJyZW50IHJ1bm5pbmcgdGVzdHM6XG4iKTsKKyAgICAgIGZvciAoYXV0byYgY2hpbGRfcHJvYyA6IGNoaWxkX3Byb2NfbGlzdCkgeworICAgICAgICBpZiAoY2hpbGRfcHJvYy5waWQgIT0gMCkgeworICAgICAgICAgIHN0ZDo6c3RyaW5nIHRlc3RfbmFtZSA9IHRlc3RjYXNlX2xpc3RbY2hpbGRfcHJvYy50ZXN0Y2FzZV9pZF0uR2V0VGVzdE5hbWUoY2hpbGRfcHJvYy50ZXN0X2lkKTsKKyAgICAgICAgICBpbnQ2NF90IGN1cnJlbnRfdGltZV9ucyA9IE5hbm9UaW1lKCk7CisgICAgICAgICAgaW50NjRfdCBydW5fdGltZV9tcyA9IChjdXJyZW50X3RpbWVfbnMgLSBjaGlsZF9wcm9jLnN0YXJ0X3RpbWVfbnMpIC8gMTAwMDAwMDsKKyAgICAgICAgICBwcmludGYoIiAgJXMgKCUiIFBSSWQ2NCAiIG1zKVxuIiwgdGVzdF9uYW1lLmNfc3RyKCksIHJ1bl90aW1lX21zKTsKKyAgICAgICAgfQorICAgICAgfQorICAgIH0gZWxzZSBpZiAoc2lnbm8gPT0gU0lHSU5UKSB7CisgICAgICAvLyBLaWxsIGN1cnJlbnQgcnVubmluZyB0ZXN0cy4KKyAgICAgIGZvciAoYXV0byYgY2hpbGRfcHJvYyA6IGNoaWxkX3Byb2NfbGlzdCkgeworICAgICAgICBpZiAoY2hpbGRfcHJvYy5waWQgIT0gMCkgeworICAgICAgICAgIC8vIFNlbmQgU0lHS0lMTCB0byBlbnN1cmUgdGhlIGNoaWxkIHByb2Nlc3MgY2FuIGJlIGtpbGxlZCB1bmNvbmRpdGlvbmFsbHkuCisgICAgICAgICAga2lsbChjaGlsZF9wcm9jLnBpZCwgU0lHS0lMTCk7CisgICAgICAgIH0KKyAgICAgIH0KKyAgICAgIC8vIFNJR0lOVCBraWxscyB0aGUgcGFyZW50IHByb2Nlc3MgYXMgd2VsbC4KKyAgICAgIGV4aXQoMSk7CisgICAgfQorICB9Cit9CisKK3N0YXRpYyBib29sIENoZWNrQ2hpbGRQcm9jRXhpdChwaWRfdCBleGl0X3BpZCwgaW50IGV4aXRfc3RhdHVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPENoaWxkUHJvY0luZm8+JiBjaGlsZF9wcm9jX2xpc3QpIHsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBjaGlsZF9wcm9jX2xpc3Quc2l6ZSgpOyArK2kpIHsKKyAgICBpZiAoY2hpbGRfcHJvY19saXN0W2ldLnBpZCA9PSBleGl0X3BpZCkgeworICAgICAgY2hpbGRfcHJvY19saXN0W2ldLmZpbmlzaGVkID0gdHJ1ZTsKKyAgICAgIGNoaWxkX3Byb2NfbGlzdFtpXS50aW1lZF9vdXQgPSBmYWxzZTsKKyAgICAgIGNoaWxkX3Byb2NfbGlzdFtpXS5leGl0X3N0YXR1cyA9IGV4aXRfc3RhdHVzOworICAgICAgY2hpbGRfcHJvY19saXN0W2ldLmVuZF90aW1lX25zID0gTmFub1RpbWUoKTsKKyAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgfQorICByZXR1cm4gZmFsc2U7Cit9CisKK3N0YXRpYyBzaXplX3QgQ2hlY2tDaGlsZFByb2NUaW1lb3V0KHN0ZDo6dmVjdG9yPENoaWxkUHJvY0luZm8+JiBjaGlsZF9wcm9jX2xpc3QpIHsKKyAgaW50NjRfdCBjdXJyZW50X3RpbWVfbnMgPSBOYW5vVGltZSgpOworICBzaXplX3QgdGltZW91dF9jaGlsZF9jb3VudCA9IDA7CisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgY2hpbGRfcHJvY19saXN0LnNpemUoKTsgKytpKSB7CisgICAgaWYgKGNoaWxkX3Byb2NfbGlzdFtpXS5kZWFkbGluZV9lbmRfdGltZV9ucyA8PSBjdXJyZW50X3RpbWVfbnMpIHsKKyAgICAgIGNoaWxkX3Byb2NfbGlzdFtpXS5maW5pc2hlZCA9IHRydWU7CisgICAgICBjaGlsZF9wcm9jX2xpc3RbaV0udGltZWRfb3V0ID0gdHJ1ZTsKKyAgICAgIGNoaWxkX3Byb2NfbGlzdFtpXS5lbmRfdGltZV9ucyA9IGN1cnJlbnRfdGltZV9uczsKKyAgICAgICsrdGltZW91dF9jaGlsZF9jb3VudDsKKyAgICB9CisgIH0KKyAgcmV0dXJuIHRpbWVvdXRfY2hpbGRfY291bnQ7Cit9CisKK3N0YXRpYyB2b2lkIFdhaXRDaGlsZFByb2NzKHN0ZDo6dmVjdG9yPFRlc3RDYXNlPiYgdGVzdGNhc2VfbGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPENoaWxkUHJvY0luZm8+JiBjaGlsZF9wcm9jX2xpc3QpIHsKKyAgc2l6ZV90IGZpbmlzaGVkX2NoaWxkX2NvdW50ID0gMDsKKyAgd2hpbGUgKHRydWUpIHsKKyAgICBpbnQgc3RhdHVzOworICAgIHBpZF90IHJlc3VsdDsKKyAgICB3aGlsZSAoKHJlc3VsdCA9IFRFTVBfRkFJTFVSRV9SRVRSWSh3YWl0cGlkKC0xLCAmc3RhdHVzLCBXTk9IQU5HKSkpID4gMCkgeworICAgICAgaWYgKENoZWNrQ2hpbGRQcm9jRXhpdChyZXN1bHQsIHN0YXR1cywgY2hpbGRfcHJvY19saXN0KSkgeworICAgICAgICArK2ZpbmlzaGVkX2NoaWxkX2NvdW50OworICAgICAgfQorICAgIH0KKworICAgIGlmIChyZXN1bHQgPT0gLTEpIHsKKyAgICAgIGlmIChlcnJubyA9PSBFQ0hJTEQpIHsKKyAgICAgICAgLy8gVGhpcyBoYXBwZW5zIHdoZW4gd2UgaGF2ZSBubyBydW5uaW5nIGNoaWxkIHByb2Nlc3Nlcy4KKyAgICAgICAgcmV0dXJuOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgcGVycm9yKCJ3YWl0cGlkIik7CisgICAgICAgIGV4aXQoMSk7CisgICAgICB9CisgICAgfSBlbHNlIGlmIChyZXN1bHQgPT0gMCkgeworICAgICAgZmluaXNoZWRfY2hpbGRfY291bnQgKz0gQ2hlY2tDaGlsZFByb2NUaW1lb3V0KGNoaWxkX3Byb2NfbGlzdCk7CisgICAgfQorCisgICAgaWYgKGZpbmlzaGVkX2NoaWxkX2NvdW50ID4gMCkgeworICAgICAgcmV0dXJuOworICAgIH0KKworICAgIEhhbmRsZVNpZ25hbHModGVzdGNhc2VfbGlzdCwgY2hpbGRfcHJvY19saXN0KTsKKworICAgIC8vIHNsZWVwIDEgbXMgdG8gYXZvaWQgYnVzeSBsb29waW5nLgorICAgIHRpbWVzcGVjIHNsZWVwX3RpbWU7CisgICAgc2xlZXBfdGltZS50dl9zZWMgPSAwOworICAgIHNsZWVwX3RpbWUudHZfbnNlYyA9IDEwMDAwMDA7CisgICAgbmFub3NsZWVwKCZzbGVlcF90aW1lLCBOVUxMKTsKKyAgfQorfQorCitzdGF0aWMgVGVzdFJlc3VsdCBXYWl0Rm9yT25lQ2hpbGQocGlkX3QgcGlkKSB7CisgIGludCBleGl0X3N0YXR1czsKKyAgcGlkX3QgcmVzdWx0ID0gVEVNUF9GQUlMVVJFX1JFVFJZKHdhaXRwaWQocGlkLCAmZXhpdF9zdGF0dXMsIDApKTsKKworICBUZXN0UmVzdWx0IHRlc3RfcmVzdWx0ID0gVEVTVF9TVUNDRVNTOworICBpZiAocmVzdWx0ICE9IHBpZCB8fCBXRVhJVFNUQVRVUyhleGl0X3N0YXR1cykgIT0gMCkgeworICAgIHRlc3RfcmVzdWx0ID0gVEVTVF9GQUlMRUQ7CisgIH0KKyAgcmV0dXJuIHRlc3RfcmVzdWx0OworfQorCitzdGF0aWMgdm9pZCBDb2xsZWN0Q2hpbGRUZXN0UmVzdWx0KGNvbnN0IENoaWxkUHJvY0luZm8mIGNoaWxkX3Byb2MsIFRlc3RDYXNlJiB0ZXN0Y2FzZSkgeworICBpbnQgdGVzdF9pZCA9IGNoaWxkX3Byb2MudGVzdF9pZDsKKyAgdGVzdGNhc2UuU2V0VGVzdFRpbWUodGVzdF9pZCwgY2hpbGRfcHJvYy5lbmRfdGltZV9ucyAtIGNoaWxkX3Byb2Muc3RhcnRfdGltZV9ucyk7CisgIGlmIChjaGlsZF9wcm9jLnRpbWVkX291dCkgeworICAgIC8vIFRoZSBjaGlsZCBwcm9jZXNzIG1hcmtlZCBhcyB0aW1lZF9vdXQgaGFzIG5vdCBleGl0ZWQsIGFuZCB3ZSBzaG91bGQga2lsbCBpdCBtYW51YWxseS4KKyAgICBraWxsKGNoaWxkX3Byb2MucGlkLCBTSUdLSUxMKTsKKyAgICBXYWl0Rm9yT25lQ2hpbGQoY2hpbGRfcHJvYy5waWQpOworICB9CisKKyAgd2hpbGUgKHRydWUpIHsKKyAgICBjaGFyIGJ1ZlsxMDI0XTsKKyAgICBzc2l6ZV90IGJ5dGVzX3JlYWQgPSBURU1QX0ZBSUxVUkVfUkVUUlkocmVhZChjaGlsZF9wcm9jLmNoaWxkX3JlYWRfZmQsIGJ1Ziwgc2l6ZW9mKGJ1ZikgLSAxKSk7CisgICAgaWYgKGJ5dGVzX3JlYWQgPiAwKSB7CisgICAgICBidWZbYnl0ZXNfcmVhZF0gPSAnXDAnOworICAgICAgdGVzdGNhc2UuR2V0VGVzdCh0ZXN0X2lkKS5BcHBlbmRUZXN0T3V0cHV0KGJ1Zik7CisgICAgfSBlbHNlIGlmIChieXRlc19yZWFkID09IDApIHsKKyAgICAgIGJyZWFrOyAvLyBSZWFkIGVuZC4KKyAgICB9IGVsc2UgeworICAgICAgaWYgKGVycm5vID09IEVBR0FJTikgeworICAgICAgICAvLyBObyBkYXRhIGlzIGF2YWlsYWJsZS4gVGhpcyByYXJlbHkgaGFwcGVucywgb25seSB3aGVuIHRoZSBjaGlsZCBwcm9jZXNzIGNyZWF0ZWQgb3RoZXIKKyAgICAgICAgLy8gcHJvY2Vzc2VzIHdoaWNoIGhhdmUgbm90IGV4aXRlZCBzbyBmYXIuIEJ1dCB0aGUgY2hpbGQgcHJvY2VzcyBoYXMgYWxyZWFkeSBleGl0ZWQgb3IKKyAgICAgICAgLy8gYmVlbiBraWxsZWQsIHNvIHRoZSB0ZXN0IGhhcyBmaW5pc2hlZCwgYW5kIHdlIHNob3VsZG4ndCB3YWl0IGZ1cnRoZXIuCisgICAgICAgIGJyZWFrOworICAgICAgfQorICAgICAgcGVycm9yKCJyZWFkIGNoaWxkX3JlYWRfZmQgaW4gUnVuVGVzdEluU2VwYXJhdGVQcm9jIik7CisgICAgICBleGl0KDEpOworICAgIH0KKyAgfQorICBjbG9zZShjaGlsZF9wcm9jLmNoaWxkX3JlYWRfZmQpOworCisgIGlmIChjaGlsZF9wcm9jLnRpbWVkX291dCkgeworICAgIHRlc3RjYXNlLlNldFRlc3RSZXN1bHQodGVzdF9pZCwgVEVTVF9USU1FT1VUKTsKKyAgICBjaGFyIGJ1ZlsxMDI0XTsKKyAgICBzbnByaW50ZihidWYsIHNpemVvZihidWYpLCAiJXMga2lsbGVkIGJlY2F1c2Ugb2YgdGltZW91dCBhdCAlIiBQUklkNjQgIiBtcy5cbiIsCisgICAgICAgICAgICAgdGVzdGNhc2UuR2V0VGVzdE5hbWUodGVzdF9pZCkuY19zdHIoKSwgdGVzdGNhc2UuR2V0VGVzdFRpbWUodGVzdF9pZCkgLyAxMDAwMDAwKTsKKyAgICB0ZXN0Y2FzZS5HZXRUZXN0KHRlc3RfaWQpLkFwcGVuZFRlc3RPdXRwdXQoYnVmKTsKKworICB9IGVsc2UgaWYgKFdJRlNJR05BTEVEKGNoaWxkX3Byb2MuZXhpdF9zdGF0dXMpKSB7CisgICAgLy8gUmVjb3JkIHNpZ25hbCB0ZXJtaW5hdGVkIHRlc3QgYXMgZmFpbGVkLgorICAgIHRlc3RjYXNlLlNldFRlc3RSZXN1bHQodGVzdF9pZCwgVEVTVF9GQUlMRUQpOworICAgIGNoYXIgYnVmWzEwMjRdOworICAgIHNucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksICIlcyB0ZXJtaW5hdGVkIGJ5IHNpZ25hbDogJXMuXG4iLAorICAgICAgICAgICAgIHRlc3RjYXNlLkdldFRlc3ROYW1lKHRlc3RfaWQpLmNfc3RyKCksIHN0cnNpZ25hbChXVEVSTVNJRyhjaGlsZF9wcm9jLmV4aXRfc3RhdHVzKSkpOworICAgIHRlc3RjYXNlLkdldFRlc3QodGVzdF9pZCkuQXBwZW5kVGVzdE91dHB1dChidWYpOworCisgIH0gZWxzZSB7CisgICAgdGVzdGNhc2UuU2V0VGVzdFJlc3VsdCh0ZXN0X2lkLCBXRVhJVFNUQVRVUyhjaGlsZF9wcm9jLmV4aXRfc3RhdHVzKSA9PSAwID8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFRFU1RfU1VDQ0VTUyA6IFRFU1RfRkFJTEVEKTsKKyAgfQorfQorCisvLyBXZSBjaG9vc2UgdG8gdXNlIG11bHRpLWZvcmsgYW5kIG11bHRpLXdhaXQgaGVyZSBpbnN0ZWFkIG9mIG11bHRpLXRocmVhZCwgYmVjYXVzZSBpdCBhbHdheXMKKy8vIG1ha2VzIGRlYWRsb2NrIHRvIHVzZSBmb3JrIGluIG11bHRpLXRocmVhZC4KKy8vIFJldHVybnMgdHJ1ZSBpZiBhbGwgdGVzdHMgcnVuIHN1Y2Nlc3NmdWxseSwgb3RoZXJ3aXNlIHJldHVybiBmYWxzZS4KK3N0YXRpYyBib29sIFJ1blRlc3RJblNlcGFyYXRlUHJvYyhpbnQgYXJnYywgY2hhcioqIGFyZ3YsIHN0ZDo6dmVjdG9yPFRlc3RDYXNlPiYgdGVzdGNhc2VfbGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgaXRlcmF0aW9uX2NvdW50LCBzaXplX3Qgam9iX2NvdW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiB4bWxfb3V0cHV0X2ZpbGVuYW1lKSB7CisgIC8vIFN0b3AgZGVmYXVsdCByZXN1bHQgcHJpbnRlciB0byBhdm9pZCBlbnZpcm9ubWVudCBzZXR1cC90ZWFyZG93biBpbmZvcm1hdGlvbiBmb3IgZWFjaCB0ZXN0LgorICB0ZXN0aW5nOjpVbml0VGVzdDo6R2V0SW5zdGFuY2UoKS0+bGlzdGVuZXJzKCkuUmVsZWFzZSgKKyAgICAgICAgICAgICAgICAgICAgICAgIHRlc3Rpbmc6OlVuaXRUZXN0OjpHZXRJbnN0YW5jZSgpLT5saXN0ZW5lcnMoKS5kZWZhdWx0X3Jlc3VsdF9wcmludGVyKCkpOworICB0ZXN0aW5nOjpVbml0VGVzdDo6R2V0SW5zdGFuY2UoKS0+bGlzdGVuZXJzKCkuQXBwZW5kKG5ldyBUZXN0UmVzdWx0UHJpbnRlcik7CisKKyAgLy8gU2lnbmFscyBhcmUgYmxvY2tlZCBoZXJlIGFzIHdlIHdhbnQgdG8gaGFuZGxlIHRoZW0gaW4gSGFuZGxlU2lnbmFscygpIGxhdGVyLgorICBzaWdzZXRfdCBibG9ja19tYXNrLCBvcmlnX21hc2s7CisgIHNpZ2VtcHR5c2V0KCZibG9ja19tYXNrKTsKKyAgc2lnYWRkc2V0KCZibG9ja19tYXNrLCBTSUdJTlQpOworICBzaWdhZGRzZXQoJmJsb2NrX21hc2ssIFNJR1FVSVQpOworICBpZiAoc2lncHJvY21hc2soU0lHX0JMT0NLLCAmYmxvY2tfbWFzaywgJm9yaWdfbWFzaykgPT0gLTEpIHsKKyAgICBwZXJyb3IoInNpZ3Byb2NtYXNrIFNJR19CTE9DSyIpOworICAgIGV4aXQoMSk7CisgIH0KKworICBib29sIGFsbF90ZXN0c19wYXNzZWQgPSB0cnVlOworCisgIGZvciAoc2l6ZV90IGl0ZXJhdGlvbiA9IDE7CisgICAgICAgaXRlcmF0aW9uX2NvdW50IDwgMCB8fCBpdGVyYXRpb24gPD0gc3RhdGljX2Nhc3Q8c2l6ZV90PihpdGVyYXRpb25fY291bnQpOworICAgICAgICsraXRlcmF0aW9uKSB7CisgICAgT25UZXN0SXRlcmF0aW9uU3RhcnRQcmludCh0ZXN0Y2FzZV9saXN0LCBpdGVyYXRpb24sIGl0ZXJhdGlvbl9jb3VudCk7CisgICAgaW50NjRfdCBpdGVyYXRpb25fc3RhcnRfdGltZV9ucyA9IE5hbm9UaW1lKCk7CisgICAgdGltZV90IGVwb2NoX2l0ZXJhdGlvbl9zdGFydF90aW1lID0gdGltZShOVUxMKTsKKworICAgIC8vIFJ1biB1cCB0byBqb2JfY291bnQgdGVzdHMgaW4gcGFyYWxsZWwsIGVhY2ggdGVzdCBpbiBhIGNoaWxkIHByb2Nlc3MuCisgICAgc3RkOjp2ZWN0b3I8Q2hpbGRQcm9jSW5mbz4gY2hpbGRfcHJvY19saXN0OworCisgICAgLy8gTmV4dCB0ZXN0IHRvIHJ1biBpcyBbbmV4dF90ZXN0Y2FzZV9pZDpuZXh0X3Rlc3RfaWRdLgorICAgIHNpemVfdCBuZXh0X3Rlc3RjYXNlX2lkID0gMDsKKyAgICBzaXplX3QgbmV4dF90ZXN0X2lkID0gMDsKKworICAgIC8vIFJlY29yZCBob3cgbWFueSB0ZXN0cyBhcmUgZmluaXNoZWQuCisgICAgc3RkOjp2ZWN0b3I8c2l6ZV90PiBmaW5pc2hlZF90ZXN0X2NvdW50X2xpc3QodGVzdGNhc2VfbGlzdC5zaXplKCksIDApOworICAgIHNpemVfdCBmaW5pc2hlZF90ZXN0Y2FzZV9jb3VudCA9IDA7CisKKyAgICB3aGlsZSAoZmluaXNoZWRfdGVzdGNhc2VfY291bnQgPCB0ZXN0Y2FzZV9saXN0LnNpemUoKSkgeworICAgICAgLy8gcnVuIHVwIHRvIGpvYl9jb3VudCBjaGlsZCBwcm9jZXNzZXMuCisgICAgICB3aGlsZSAoY2hpbGRfcHJvY19saXN0LnNpemUoKSA8IGpvYl9jb3VudCAmJiBuZXh0X3Rlc3RjYXNlX2lkIDwgdGVzdGNhc2VfbGlzdC5zaXplKCkpIHsKKyAgICAgICAgc3RkOjpzdHJpbmcgdGVzdF9uYW1lID0gdGVzdGNhc2VfbGlzdFtuZXh0X3Rlc3RjYXNlX2lkXS5HZXRUZXN0TmFtZShuZXh0X3Rlc3RfaWQpOworICAgICAgICBDaGlsZFByb2NJbmZvIGNoaWxkX3Byb2MgPSBSdW5DaGlsZFByb2Nlc3ModGVzdF9uYW1lLCBuZXh0X3Rlc3RjYXNlX2lkLCBuZXh0X3Rlc3RfaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcmlnX21hc2ssIGFyZ2MsIGFyZ3YpOworICAgICAgICBjaGlsZF9wcm9jX2xpc3QucHVzaF9iYWNrKGNoaWxkX3Byb2MpOworICAgICAgICBpZiAoKytuZXh0X3Rlc3RfaWQgPT0gdGVzdGNhc2VfbGlzdFtuZXh0X3Rlc3RjYXNlX2lkXS5UZXN0Q291bnQoKSkgeworICAgICAgICAgIG5leHRfdGVzdF9pZCA9IDA7CisgICAgICAgICAgKytuZXh0X3Rlc3RjYXNlX2lkOworICAgICAgICB9CisgICAgICB9CisKKyAgICAgIC8vIFdhaXQgZm9yIGFueSBjaGlsZCBwcm9jIGZpbmlzaCBvciB0aW1lb3V0LgorICAgICAgV2FpdENoaWxkUHJvY3ModGVzdGNhc2VfbGlzdCwgY2hpbGRfcHJvY19saXN0KTsKKworICAgICAgLy8gQ29sbGVjdCByZXN1bHQuCisgICAgICBhdXRvIGl0ID0gY2hpbGRfcHJvY19saXN0LmJlZ2luKCk7CisgICAgICB3aGlsZSAoaXQgIT0gY2hpbGRfcHJvY19saXN0LmVuZCgpKSB7CisgICAgICAgIGF1dG8mIGNoaWxkX3Byb2MgPSAqaXQ7CisgICAgICAgIGlmIChjaGlsZF9wcm9jLmZpbmlzaGVkID09IHRydWUpIHsKKyAgICAgICAgICBzaXplX3QgdGVzdGNhc2VfaWQgPSBjaGlsZF9wcm9jLnRlc3RjYXNlX2lkOworICAgICAgICAgIHNpemVfdCB0ZXN0X2lkID0gY2hpbGRfcHJvYy50ZXN0X2lkOworICAgICAgICAgIFRlc3RDYXNlJiB0ZXN0Y2FzZSA9IHRlc3RjYXNlX2xpc3RbdGVzdGNhc2VfaWRdOworCisgICAgICAgICAgQ29sbGVjdENoaWxkVGVzdFJlc3VsdChjaGlsZF9wcm9jLCB0ZXN0Y2FzZSk7CisgICAgICAgICAgT25UZXN0RW5kUHJpbnQodGVzdGNhc2UsIHRlc3RfaWQpOworCisgICAgICAgICAgaWYgKCsrZmluaXNoZWRfdGVzdF9jb3VudF9saXN0W3Rlc3RjYXNlX2lkXSA9PSB0ZXN0Y2FzZS5UZXN0Q291bnQoKSkgeworICAgICAgICAgICAgKytmaW5pc2hlZF90ZXN0Y2FzZV9jb3VudDsKKyAgICAgICAgICB9CisgICAgICAgICAgaWYgKHRlc3RjYXNlLkdldFRlc3RSZXN1bHQodGVzdF9pZCkgIT0gVEVTVF9TVUNDRVNTKSB7CisgICAgICAgICAgICBhbGxfdGVzdHNfcGFzc2VkID0gZmFsc2U7CisgICAgICAgICAgfQorCisgICAgICAgICAgaXQgPSBjaGlsZF9wcm9jX2xpc3QuZXJhc2UoaXQpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICsraXQ7CisgICAgICAgIH0KKyAgICAgIH0KKyAgICB9CisKKyAgICBpbnQ2NF90IGVsYXBzZWRfdGltZV9ucyA9IE5hbm9UaW1lKCkgLSBpdGVyYXRpb25fc3RhcnRfdGltZV9uczsKKyAgICBPblRlc3RJdGVyYXRpb25FbmRQcmludCh0ZXN0Y2FzZV9saXN0LCBpdGVyYXRpb24sIGVsYXBzZWRfdGltZV9ucyk7CisgICAgaWYgKCF4bWxfb3V0cHV0X2ZpbGVuYW1lLmVtcHR5KCkpIHsKKyAgICAgIE9uVGVzdEl0ZXJhdGlvbkVuZFhtbFByaW50KHhtbF9vdXRwdXRfZmlsZW5hbWUsIHRlc3RjYXNlX2xpc3QsIGVwb2NoX2l0ZXJhdGlvbl9zdGFydF90aW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxhcHNlZF90aW1lX25zKTsKKyAgICB9CisgIH0KKworICAvLyBSZXN0b3JlIHNpZ25hbCBtYXNrLgorICBpZiAoc2lncHJvY21hc2soU0lHX1NFVE1BU0ssICZvcmlnX21hc2ssIE5VTEwpID09IC0xKSB7CisgICAgcGVycm9yKCJzaWdwcm9jbWFzayBTSUdfU0VUTUFTSyIpOworICAgIGV4aXQoMSk7CisgIH0KKworICByZXR1cm4gYWxsX3Rlc3RzX3Bhc3NlZDsKK30KKworc3RhdGljIHNpemVfdCBHZXRQcm9jZXNzb3JDb3VudCgpIHsKKyAgcmV0dXJuIHN0YXRpY19jYXN0PHNpemVfdD4oc3lzY29uZihfU0NfTlBST0NFU1NPUlNfT05MTikpOworfQorCitzdGF0aWMgdm9pZCBBZGRQYXRoU2VwYXJhdG9ySW5UZXN0UHJvZ3JhbVBhdGgoc3RkOjp2ZWN0b3I8Y2hhcio+JiBhcmdzKSB7CisgIC8vIFRvIHJ1biBEZWF0aFRlc3QgaW4gdGhyZWFkc2FmZSBtb2RlLCBndGVzdCByZXF1aXJlcyB0aGF0IHRoZSB1c2VyIG11c3QgaW52b2tlIHRoZQorICAvLyB0ZXN0IHByb2dyYW0gdmlhIGEgdmFsaWQgcGF0aCB0aGF0IGNvbnRhaW5zIGF0IGxlYXN0IG9uZSBwYXRoIHNlcGFyYXRvci4KKyAgLy8gVGhlIHJlYXNvbiBpcyB0aGF0IGd0ZXN0IHVzZXMgY2xvbmUoKSArIGV4ZWN2ZSgpIHRvIHJ1biBEZWF0aFRlc3QgaW4gdGhyZWFkc2FmZSBtb2RlLAorICAvLyBhbmQgZXhlY3ZlKCkgZG9lc24ndCByZWFkIGVudmlyb25tZW50IHZhcmlhYmxlIFBBVEgsIHNvIGV4ZWN2ZSgpIHdpbGwgbm90IHN1Y2Nlc3MKKyAgLy8gdW50aWwgd2Ugc3BlY2lmeSB0aGUgYWJzb2x1dGUgcGF0aCBvciByZWxhdGl2ZSBwYXRoIG9mIHRoZSB0ZXN0IHByb2dyYW0gZGlyZWN0bHkuCisgIGlmIChzdHJjaHIoYXJnc1swXSwgJy8nKSA9PSBOVUxMKSB7CisgICAgY2hhciBwYXRoW1BBVEhfTUFYXTsKKyAgICBzc2l6ZV90IHBhdGhfbGVuID0gcmVhZGxpbmsoIi9wcm9jL3NlbGYvZXhlIiwgcGF0aCwgc2l6ZW9mKHBhdGgpKTsKKyAgICBpZiAocGF0aF9sZW4gPD0gMCB8fCBwYXRoX2xlbiA+PSBzdGF0aWNfY2FzdDxzc2l6ZV90PihzaXplb2YocGF0aCkpKSB7CisgICAgICBwZXJyb3IoInJlYWRsaW5rIik7CisgICAgICBleGl0KDEpOworICAgIH0KKyAgICBwYXRoW3BhdGhfbGVuXSA9ICdcMCc7CisgICAgYXJnc1swXSA9IHN0cmR1cChwYXRoKTsKKyAgfQorfQorCitzdGF0aWMgdm9pZCBBZGRHdGVzdEZpbHRlclN5bm9ueW0oc3RkOjp2ZWN0b3I8Y2hhcio+JiBhcmdzKSB7CisgIC8vIFN1cHBvcnQgLS1ndGVzdC1maWx0ZXIgYXMgYSBzeW5vbnltIGZvciAtLWd0ZXN0X2ZpbHRlci4KKyAgZm9yIChzaXplX3QgaSA9IDE7IGkgPCBhcmdzLnNpemUoKTsgKytpKSB7CisgICAgaWYgKHN0cm5jbXAoYXJnc1tpXSwgIi0tZ3Rlc3QtZmlsdGVyIiwgc3RybGVuKCItLWd0ZXN0LWZpbHRlciIpKSA9PSAwKSB7CisgICAgICBhcmdzW2ldWzddID0gJ18nOworICAgIH0KKyAgfQorfQorCitzdHJ1Y3QgSXNvbGF0aW9uVGVzdE9wdGlvbnMgeworICBib29sIGlzb2xhdGU7CisgIHNpemVfdCBqb2JfY291bnQ7CisgIGludCB0ZXN0X2RlYWRsaW5lX21zOworICBpbnQgdGVzdF93YXJubGluZV9tczsKKyAgc3RkOjpzdHJpbmcgZ3Rlc3RfY29sb3I7CisgIGJvb2wgZ3Rlc3RfcHJpbnRfdGltZTsKKyAgaW50IGd0ZXN0X3JlcGVhdDsKKyAgc3RkOjpzdHJpbmcgZ3Rlc3Rfb3V0cHV0OworfTsKKworLy8gUGljayBvcHRpb25zIG5vdCBmb3IgZ3Rlc3Q6IFRoZXJlIGFyZSB0d28gcGFydHMgaW4gYXJncywgb25lIHBhcnQgaXMgdXNlZCBpbiBpc29sYXRpb24gdGVzdCBtb2RlCisvLyBhcyBkZXNjcmliZWQgaW4gUHJpbnRIZWxwSW5mbygpLCB0aGUgb3RoZXIgcGFydCBpcyBoYW5kbGVkIGJ5IHRlc3Rpbmc6OkluaXRHb29nbGVUZXN0KCkgaW4KKy8vIGd0ZXN0LiBQaWNrT3B0aW9ucygpIHBpY2tzIHRoZSBmaXJzdCBwYXJ0IGludG8gSXNvbGF0aW9uVGVzdE9wdGlvbnMgc3RydWN0dXJlLCBsZWF2aW5nIHRoZSBzZWNvbmQKKy8vIHBhcnQgaW4gYXJncy4KKy8vIEFyZ3VtZW50czoKKy8vICAgYXJncyBpcyB1c2VkIHRvIHBhc3MgaW4gYWxsIGNvbW1hbmQgYXJndW1lbnRzLCBhbmQgcGFzcyBvdXQgb25seSB0aGUgcGFydCBvZiBvcHRpb25zIGZvciBndGVzdC4KKy8vICAgb3B0aW9ucyBpcyB1c2VkIHRvIHBhc3Mgb3V0IHRlc3Qgb3B0aW9ucyBpbiBpc29sYXRpb24gbW9kZS4KKy8vIFJldHVybiBmYWxzZSBpZiB0aGVyZSBpcyBlcnJvciBpbiBhcmd1bWVudHMuCitzdGF0aWMgYm9vbCBQaWNrT3B0aW9ucyhzdGQ6OnZlY3RvcjxjaGFyKj4mIGFyZ3MsIElzb2xhdGlvblRlc3RPcHRpb25zJiBvcHRpb25zKSB7CisgIGZvciAoc2l6ZV90IGkgPSAxOyBpIDwgYXJncy5zaXplKCk7ICsraSkgeworICAgIGlmIChzdHJjbXAoYXJnc1tpXSwgIi0taGVscCIpID09IDAgfHwgc3RyY21wKGFyZ3NbaV0sICItaCIpID09IDApIHsKKyAgICAgIFByaW50SGVscEluZm8oKTsKKyAgICAgIG9wdGlvbnMuaXNvbGF0ZSA9IGZhbHNlOworICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorICB9CisKKyAgQWRkUGF0aFNlcGFyYXRvckluVGVzdFByb2dyYW1QYXRoKGFyZ3MpOworICBBZGRHdGVzdEZpbHRlclN5bm9ueW0oYXJncyk7CisKKyAgLy8gaWYgLS1iaW9uaWMtc2VsZnRlc3QgYXJndW1lbnQgaXMgdXNlZCwgb25seSBlbmFibGUgc2VsZiB0ZXN0cywgb3RoZXJ3aXNlIHJlbW92ZSBzZWxmIHRlc3RzLgorICBib29sIGVuYWJsZV9zZWxmdGVzdCA9IGZhbHNlOworICBmb3IgKHNpemVfdCBpID0gMTsgaSA8IGFyZ3Muc2l6ZSgpOyArK2kpIHsKKyAgICBpZiAoc3RyY21wKGFyZ3NbaV0sICItLWJpb25pYy1zZWxmdGVzdCIpID09IDApIHsKKyAgICAgIC8vIFRoaXMgYXJndW1lbnQgaXMgdG8gZW5hYmxlICJiaW9uaWNfc2VsZnRlc3QqIiBmb3Igc2VsZiB0ZXN0LCBhbmQgaXMgbm90IHNob3duIGluIGhlbHAgaW5mby4KKyAgICAgIC8vIERvbid0IHJlbW92ZSB0aGlzIG9wdGlvbiBmcm9tIGFyZ3VtZW50cy4KKyAgICAgIGVuYWJsZV9zZWxmdGVzdCA9IHRydWU7CisgICAgfQorICB9CisgIHN0ZDo6c3RyaW5nIGd0ZXN0X2ZpbHRlcl9zdHI7CisgIGZvciAoc2l6ZV90IGkgPSBhcmdzLnNpemUoKSAtIDE7IGkgPj0gMTsgLS1pKSB7CisgICAgaWYgKHN0cm5jbXAoYXJnc1tpXSwgIi0tZ3Rlc3RfZmlsdGVyPSIsIHN0cmxlbigiLS1ndGVzdF9maWx0ZXI9IikpID09IDApIHsKKyAgICAgIGd0ZXN0X2ZpbHRlcl9zdHIgPSBzdGQ6OnN0cmluZyhhcmdzW2ldKTsKKyAgICAgIGFyZ3MuZXJhc2UoYXJncy5iZWdpbigpICsgaSk7CisgICAgICBicmVhazsKKyAgICB9CisgIH0KKyAgaWYgKGVuYWJsZV9zZWxmdGVzdCA9PSB0cnVlKSB7CisgICAgYXJncy5wdXNoX2JhY2soc3RyZHVwKCItLWd0ZXN0X2ZpbHRlcj1iaW9uaWNfc2VsZnRlc3QqIikpOworICB9IGVsc2UgeworICAgIGlmIChndGVzdF9maWx0ZXJfc3RyID09ICIiKSB7CisgICAgICBndGVzdF9maWx0ZXJfc3RyID0gIi0tZ3Rlc3RfZmlsdGVyPS1iaW9uaWNfc2VsZnRlc3QqIjsKKyAgICB9IGVsc2UgeworICAgICAgLy8gRmluZCBpZiAnLScgZm9yIE5FR0FUSVZFX1BBVFRFUk5TIGV4aXN0cy4KKyAgICAgIGlmIChndGVzdF9maWx0ZXJfc3RyLmZpbmQoIjotIikgIT0gc3RkOjpzdHJpbmc6Om5wb3MpIHsKKyAgICAgICAgZ3Rlc3RfZmlsdGVyX3N0ciArPSAiOmJpb25pY19zZWxmdGVzdCoiOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgZ3Rlc3RfZmlsdGVyX3N0ciArPSAiOi1iaW9uaWNfc2VsZnRlc3QqIjsKKyAgICAgIH0KKyAgICB9CisgICAgYXJncy5wdXNoX2JhY2soc3RyZHVwKGd0ZXN0X2ZpbHRlcl9zdHIuY19zdHIoKSkpOworICB9CisKKyAgb3B0aW9ucy5pc29sYXRlID0gdHJ1ZTsKKyAgLy8gUGFyc2UgYXJndW1lbnRzIHRoYXQgbWFrZSB1cyBjYW4ndCBydW4gaW4gaXNvbGF0aW9uIG1vZGUuCisgIGZvciAoc2l6ZV90IGkgPSAxOyBpIDwgYXJncy5zaXplKCk7ICsraSkgeworICAgIGlmIChzdHJjbXAoYXJnc1tpXSwgIi0tbm8taXNvbGF0ZSIpID09IDApIHsKKyAgICAgIG9wdGlvbnMuaXNvbGF0ZSA9IGZhbHNlOworICAgIH0gZWxzZSBpZiAoc3RyY21wKGFyZ3NbaV0sICItLWd0ZXN0X2xpc3RfdGVzdHMiKSA9PSAwKSB7CisgICAgICBvcHRpb25zLmlzb2xhdGUgPSBmYWxzZTsKKyAgICB9CisgIH0KKworICAvLyBTdG9wIHBhcnNpbmcgaWYgd2Ugd2lsbCBub3QgcnVuIGluIGlzb2xhdGlvbiBtb2RlLgorICBpZiAob3B0aW9ucy5pc29sYXRlID09IGZhbHNlKSB7CisgICAgcmV0dXJuIHRydWU7CisgIH0KKworICAvLyBJbml0IGRlZmF1bHQgaXNvbGF0aW9uIHRlc3Qgb3B0aW9ucy4KKyAgb3B0aW9ucy5qb2JfY291bnQgPSBHZXRQcm9jZXNzb3JDb3VudCgpOworICBvcHRpb25zLnRlc3RfZGVhZGxpbmVfbXMgPSBERUZBVUxUX0dMT0JBTF9URVNUX1JVTl9ERUFETElORV9NUzsKKyAgb3B0aW9ucy50ZXN0X3dhcm5saW5lX21zID0gREVGQVVMVF9HTE9CQUxfVEVTVF9SVU5fV0FSTkxJTkVfTVM7CisgIG9wdGlvbnMuZ3Rlc3RfY29sb3IgPSB0ZXN0aW5nOjpHVEVTVF9GTEFHKGNvbG9yKTsKKyAgb3B0aW9ucy5ndGVzdF9wcmludF90aW1lID0gdGVzdGluZzo6R1RFU1RfRkxBRyhwcmludF90aW1lKTsKKyAgb3B0aW9ucy5ndGVzdF9yZXBlYXQgPSB0ZXN0aW5nOjpHVEVTVF9GTEFHKHJlcGVhdCk7CisgIG9wdGlvbnMuZ3Rlc3Rfb3V0cHV0ID0gdGVzdGluZzo6R1RFU1RfRkxBRyhvdXRwdXQpOworCisgIC8vIFBhcnNlIGFyZ3VtZW50cyBzcGVmaWNpZWQgZm9yIGlzb2xhdGlvbiBtb2RlLgorICBmb3IgKHNpemVfdCBpID0gMTsgaSA8IGFyZ3Muc2l6ZSgpOyArK2kpIHsKKyAgICBpZiAoc3RybmNtcChhcmdzW2ldLCAiLWoiLCBzdHJsZW4oIi1qIikpID09IDApIHsKKyAgICAgIGNoYXIqIHAgPSBhcmdzW2ldICsgc3RybGVuKCItaiIpOworICAgICAgaW50IGNvdW50ID0gMDsKKyAgICAgIGlmICgqcCAhPSAnXDAnKSB7CisgICAgICAgIC8vIEFyZ3VtZW50IGxpa2UgLWo1LgorICAgICAgICBjb3VudCA9IGF0b2kocCk7CisgICAgICB9IGVsc2UgaWYgKGFyZ3Muc2l6ZSgpID4gaSArIDEpIHsKKyAgICAgICAgLy8gQXJndW1lbnRzIGxpa2UgLWogNS4KKyAgICAgICAgY291bnQgPSBhdG9pKGFyZ3NbaSArIDFdKTsKKyAgICAgICAgKytpOworICAgICAgfQorICAgICAgaWYgKGNvdW50IDw9IDApIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICJpbnZhbGlkIGpvYiBjb3VudDogJWRcbiIsIGNvdW50KTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgfQorICAgICAgb3B0aW9ucy5qb2JfY291bnQgPSBzdGF0aWNfY2FzdDxzaXplX3Q+KGNvdW50KTsKKyAgICB9IGVsc2UgaWYgKHN0cm5jbXAoYXJnc1tpXSwgIi0tZGVhZGxpbmU9Iiwgc3RybGVuKCItLWRlYWRsaW5lPSIpKSA9PSAwKSB7CisgICAgICBpbnQgdGltZV9tcyA9IGF0b2koYXJnc1tpXSArIHN0cmxlbigiLS1kZWFkbGluZT0iKSk7CisgICAgICBpZiAodGltZV9tcyA8PSAwKSB7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiaW52YWxpZCBkZWFkbGluZTogJWRcbiIsIHRpbWVfbXMpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisgICAgICBvcHRpb25zLnRlc3RfZGVhZGxpbmVfbXMgPSB0aW1lX21zOworICAgIH0gZWxzZSBpZiAoc3RybmNtcChhcmdzW2ldLCAiLS13YXJubGluZT0iLCBzdHJsZW4oIi0td2FybmxpbmU9IikpID09IDApIHsKKyAgICAgIGludCB0aW1lX21zID0gYXRvaShhcmdzW2ldICsgc3RybGVuKCItLXdhcm5saW5lPSIpKTsKKyAgICAgIGlmICh0aW1lX21zIDw9IDApIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICJpbnZhbGlkIHdhcm5saW5lOiAlZFxuIiwgdGltZV9tcyk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgIH0KKyAgICAgIG9wdGlvbnMudGVzdF93YXJubGluZV9tcyA9IHRpbWVfbXM7CisgICAgfSBlbHNlIGlmIChzdHJuY21wKGFyZ3NbaV0sICItLWd0ZXN0X2NvbG9yPSIsIHN0cmxlbigiLS1ndGVzdF9jb2xvcj0iKSkgPT0gMCkgeworICAgICAgb3B0aW9ucy5ndGVzdF9jb2xvciA9IGFyZ3NbaV0gKyBzdHJsZW4oIi0tZ3Rlc3RfY29sb3I9Iik7CisgICAgfSBlbHNlIGlmIChzdHJjbXAoYXJnc1tpXSwgIi0tZ3Rlc3RfcHJpbnRfdGltZT0wIikgPT0gMCkgeworICAgICAgb3B0aW9ucy5ndGVzdF9wcmludF90aW1lID0gZmFsc2U7CisgICAgfSBlbHNlIGlmIChzdHJuY21wKGFyZ3NbaV0sICItLWd0ZXN0X3JlcGVhdD0iLCBzdHJsZW4oIi0tZ3Rlc3RfcmVwZWF0PSIpKSA9PSAwKSB7CisgICAgICAvLyBJZiB0aGUgdmFsdWUgb2YgZ3Rlc3RfcmVwZWF0IGlzIDwgMCwgdGhlbiBpdCBpbmRpY2F0ZXMgdGhlIHRlc3RzCisgICAgICAvLyBzaG91bGQgYmUgcmVwZWF0ZWQgZm9yZXZlci4KKyAgICAgIG9wdGlvbnMuZ3Rlc3RfcmVwZWF0ID0gYXRvaShhcmdzW2ldICsgc3RybGVuKCItLWd0ZXN0X3JlcGVhdD0iKSk7CisgICAgICAvLyBSZW1vdmUgLS1ndGVzdF9yZXBlYXQ9eHggZnJvbSBhcmd1bWVudHMsIHNvIGNoaWxkIHByb2Nlc3Mgb25seSBydW4gb25lIGl0ZXJhdGlvbiBmb3IgYSBzaW5nbGUgdGVzdC4KKyAgICAgIGFyZ3MuZXJhc2UoYXJncy5iZWdpbigpICsgaSk7CisgICAgICAtLWk7CisgICAgfSBlbHNlIGlmIChzdHJuY21wKGFyZ3NbaV0sICItLWd0ZXN0X291dHB1dD0iLCBzdHJsZW4oIi0tZ3Rlc3Rfb3V0cHV0PSIpKSA9PSAwKSB7CisgICAgICBzdGQ6OnN0cmluZyBvdXRwdXQgPSBhcmdzW2ldICsgc3RybGVuKCItLWd0ZXN0X291dHB1dD0iKTsKKyAgICAgIC8vIGdlbmVyYXRlIG91dHB1dCB4bWwgZmlsZSBwYXRoIGFjY29yZGluZyB0byB0aGUgc3RyYXRlZ3kgaW4gZ3Rlc3QuCisgICAgICBib29sIHN1Y2Nlc3MgPSB0cnVlOworICAgICAgaWYgKHN0cm5jbXAob3V0cHV0LmNfc3RyKCksICJ4bWw6Iiwgc3RybGVuKCJ4bWw6IikpID09IDApIHsKKyAgICAgICAgb3V0cHV0ID0gb3V0cHV0LnN1YnN0cihzdHJsZW4oInhtbDoiKSk7CisgICAgICAgIGlmIChvdXRwdXQuc2l6ZSgpID09IDApIHsKKyAgICAgICAgICBzdWNjZXNzID0gZmFsc2U7CisgICAgICAgIH0KKyAgICAgICAgLy8gTWFrZSBhYnNvbHV0ZSBwYXRoLgorICAgICAgICBpZiAoc3VjY2VzcyAmJiBvdXRwdXRbMF0gIT0gJy8nKSB7CisgICAgICAgICAgY2hhciogY3dkID0gZ2V0Y3dkKE5VTEwsIDApOworICAgICAgICAgIGlmIChjd2QgIT0gTlVMTCkgeworICAgICAgICAgICAgb3V0cHV0ID0gc3RkOjpzdHJpbmcoY3dkKSArICIvIiArIG91dHB1dDsKKyAgICAgICAgICAgIGZyZWUoY3dkKTsKKyAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgc3VjY2VzcyA9IGZhbHNlOworICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICAvLyBBZGQgZmlsZSBuYW1lIGlmIG91dHB1dCBpcyBhIGRpcmVjdG9yeS4KKyAgICAgICAgaWYgKHN1Y2Nlc3MgJiYgb3V0cHV0LmJhY2soKSA9PSAnLycpIHsKKyAgICAgICAgICBvdXRwdXQgKz0gInRlc3RfZGV0YWlscy54bWwiOworICAgICAgICB9CisgICAgICB9CisgICAgICBpZiAoc3VjY2VzcykgeworICAgICAgICBvcHRpb25zLmd0ZXN0X291dHB1dCA9IG91dHB1dDsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiaW52YWxpZCBndGVzdF9vdXRwdXQgZmlsZTogJXNcbiIsIGFyZ3NbaV0pOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisKKyAgICAgIC8vIFJlbW92ZSAtLWd0ZXN0X291dHB1dD14eHggZnJvbSBhcmd1bWVudHMsIHNvIGNoaWxkIHByb2Nlc3Mgd2lsbCBub3Qgd3JpdGUgeG1sIGZpbGUuCisgICAgICBhcmdzLmVyYXNlKGFyZ3MuYmVnaW4oKSArIGkpOworICAgICAgLS1pOworICAgIH0KKyAgfQorCisgIC8vIEFkZCAtLW5vLWlzb2xhdGUgaW4gYXJncyB0byBwcmV2ZW50IGNoaWxkIHByb2Nlc3MgZnJvbSBydW5uaW5nIGluIGlzb2xhdGlvbiBtb2RlIGFnYWluLgorICAvLyBBcyBEZWF0aFRlc3Qgd2lsbCB0cnkgdG8gY2FsbCBleGVjdmUoKSwgdGhpcyBhcmd1bWVudCBzaG91bGQgYWx3YXlzIGJlIGFkZGVkLgorICBhcmdzLmluc2VydChhcmdzLmJlZ2luKCkgKyAxLCBzdHJkdXAoIi0tbm8taXNvbGF0ZSIpKTsKKyAgcmV0dXJuIHRydWU7Cit9CisKK2ludCBtYWluKGludCBhcmdjLCBjaGFyKiogYXJndikgeworICBzdGQ6OnZlY3RvcjxjaGFyKj4gYXJnX2xpc3Q7CisgIGZvciAoaW50IGkgPSAwOyBpIDwgYXJnYzsgKytpKSB7CisgICAgYXJnX2xpc3QucHVzaF9iYWNrKGFyZ3ZbaV0pOworICB9CisKKyAgSXNvbGF0aW9uVGVzdE9wdGlvbnMgb3B0aW9uczsKKyAgaWYgKFBpY2tPcHRpb25zKGFyZ19saXN0LCBvcHRpb25zKSA9PSBmYWxzZSkgeworICAgIHJldHVybiAxOworICB9CisKKyAgaWYgKG9wdGlvbnMuaXNvbGF0ZSA9PSB0cnVlKSB7CisgICAgLy8gU2V0IGdsb2JhbCB2YXJpYWJsZXMuCisgICAgZ2xvYmFsX3Rlc3RfcnVuX2RlYWRsaW5lX21zID0gb3B0aW9ucy50ZXN0X2RlYWRsaW5lX21zOworICAgIGdsb2JhbF90ZXN0X3J1bl93YXJubGluZV9tcyA9IG9wdGlvbnMudGVzdF93YXJubGluZV9tczsKKyAgICB0ZXN0aW5nOjpHVEVTVF9GTEFHKGNvbG9yKSA9IG9wdGlvbnMuZ3Rlc3RfY29sb3IuY19zdHIoKTsKKyAgICB0ZXN0aW5nOjpHVEVTVF9GTEFHKHByaW50X3RpbWUpID0gb3B0aW9ucy5ndGVzdF9wcmludF90aW1lOworICAgIHN0ZDo6dmVjdG9yPFRlc3RDYXNlPiB0ZXN0Y2FzZV9saXN0OworCisgICAgYXJnYyA9IHN0YXRpY19jYXN0PGludD4oYXJnX2xpc3Quc2l6ZSgpKTsKKyAgICBhcmdfbGlzdC5wdXNoX2JhY2soTlVMTCk7CisgICAgaWYgKEVudW1lcmF0ZVRlc3RzKGFyZ2MsIGFyZ19saXN0LmRhdGEoKSwgdGVzdGNhc2VfbGlzdCkgPT0gZmFsc2UpIHsKKyAgICAgIHJldHVybiAxOworICAgIH0KKyAgICBib29sIGFsbF90ZXN0X3Bhc3NlZCA9ICBSdW5UZXN0SW5TZXBhcmF0ZVByb2MoYXJnYywgYXJnX2xpc3QuZGF0YSgpLCB0ZXN0Y2FzZV9saXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5ndGVzdF9yZXBlYXQsIG9wdGlvbnMuam9iX2NvdW50LCBvcHRpb25zLmd0ZXN0X291dHB1dCk7CisgICAgcmV0dXJuIGFsbF90ZXN0X3Bhc3NlZCA/IDAgOiAxOworICB9IGVsc2UgeworICAgIGFyZ2MgPSBzdGF0aWNfY2FzdDxpbnQ+KGFyZ19saXN0LnNpemUoKSk7CisgICAgYXJnX2xpc3QucHVzaF9iYWNrKE5VTEwpOworICAgIHRlc3Rpbmc6OkluaXRHb29nbGVUZXN0KCZhcmdjLCBhcmdfbGlzdC5kYXRhKCkpOworICAgIHJldHVybiBSVU5fQUxMX1RFU1RTKCk7CisgIH0KK30KKworLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworLy8gQmlvbmljIEd0ZXN0IHNlbGYgdGVzdCwgcnVuIHRoaXMgYnkgLS1iaW9uaWMtc2VsZnRlc3Qgb3B0aW9uLgorCitURVNUKGJpb25pY19zZWxmdGVzdCwgdGVzdF9zdWNjZXNzKSB7CisgIEFTU0VSVF9FUSgxLCAxKTsKK30KKworVEVTVChiaW9uaWNfc2VsZnRlc3QsIHRlc3RfZmFpbCkgeworICBBU1NFUlRfRVEoMCwgMSk7Cit9CisKK1RFU1QoYmlvbmljX3NlbGZ0ZXN0LCB0ZXN0X3RpbWVfd2FybikgeworICBzbGVlcCg0KTsKK30KKworVEVTVChiaW9uaWNfc2VsZnRlc3QsIHRlc3RfdGltZW91dCkgeworICB3aGlsZSAoMSkge30KK30KKworVEVTVChiaW9uaWNfc2VsZnRlc3QsIHRlc3Rfc2lnbmFsX1NFR1ZfdGVybWluYXRlZCkgeworICBjaGFyKiBwID0gcmVpbnRlcnByZXRfY2FzdDxjaGFyKj4oc3RhdGljX2Nhc3Q8aW50cHRyX3Q+KGF0b2koIjAiKSkpOworICAqcCA9IDM7Cit9CisKK2NsYXNzIGJpb25pY19zZWxmdGVzdF9EZWF0aFRlc3QgOiBwdWJsaWMgQmlvbmljRGVhdGhUZXN0IHt9OworCitzdGF0aWMgdm9pZCBkZWF0aHRlc3RfaGVscGVyX3N1Y2Nlc3MoKSB7CisgIEFTU0VSVF9FUSgxLCAxKTsKKyAgZXhpdCgwKTsKK30KKworVEVTVF9GKGJpb25pY19zZWxmdGVzdF9EZWF0aFRlc3QsIHN1Y2Nlc3MpIHsKKyAgQVNTRVJUX0VYSVQoZGVhdGh0ZXN0X2hlbHBlcl9zdWNjZXNzKCksIDo6dGVzdGluZzo6RXhpdGVkV2l0aENvZGUoMCksICIiKTsKK30KKworc3RhdGljIHZvaWQgZGVhdGh0ZXN0X2hlbHBlcl9mYWlsKCkgeworICBBU1NFUlRfRVEoMSwgMCk7Cit9CisKK1RFU1RfRihiaW9uaWNfc2VsZnRlc3RfRGVhdGhUZXN0LCBmYWlsKSB7CisgIEFTU0VSVF9FWElUKGRlYXRodGVzdF9oZWxwZXJfZmFpbCgpLCA6OnRlc3Rpbmc6OkV4aXRlZFdpdGhDb2RlKDApLCAiIik7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9pbnR0eXBlc190ZXN0LmNwcCBiL3Rlc3RzL2ludHR5cGVzX3Rlc3QuY3BwCmluZGV4IGU1ODg1MDMuLmRiYmI2ZDQgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2ludHR5cGVzX3Rlc3QuY3BwCisrKyBiL3Rlc3RzL2ludHR5cGVzX3Rlc3QuY3BwCkBAIC0xNCwxMSArMTQsMTIgQEAKICAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgogICovCiAKLSNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgotCi0jaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDxpbnR0eXBlcy5oPgogCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKIFRFU1QoaW50dHlwZXMsIG1pc2MpIHsKICAgY2hhciBidWZbNTEyXTsKIApAQCAtNDYsMyArNDcsNTEgQEAKIFRFU1QoaW50dHlwZXMsIHdjc3RvdW1heCkgewogICBBU1NFUlRfRVEoMTIzVSwgd2NzdG91bWF4KEwiMTIzIiwgTlVMTCwgMTApKTsKIH0KKworVEVTVChpbnR0eXBlcywgc3RydG9pbWF4X0VJTlZBTCkgeworICBlcnJubyA9IDA7CisgIHN0cnRvaW1heCgiMTIzIiwgTlVMTCwgLTEpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgc3RydG9pbWF4KCIxMjMiLCBOVUxMLCAxKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworICBlcnJubyA9IDA7CisgIHN0cnRvaW1heCgiMTIzIiwgTlVMTCwgMzcpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7Cit9CisKK1RFU1QoaW50dHlwZXMsIHN0cnRvdW1heF9FSU5WQUwpIHsKKyAgZXJybm8gPSAwOworICBzdHJ0b3VtYXgoIjEyMyIsIE5VTEwsIC0xKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworICBlcnJubyA9IDA7CisgIHN0cnRvdW1heCgiMTIzIiwgTlVMTCwgMSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyAgZXJybm8gPSAwOworICBzdHJ0b3VtYXgoIjEyMyIsIE5VTEwsIDM3KTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworfQorCitURVNUKGludHR5cGVzLCB3Y3N0b2ltYXhfRUlOVkFMKSB7CisgIGVycm5vID0gMDsKKyAgd2NzdG9pbWF4KEwiMTIzIiwgTlVMTCwgLTEpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgd2NzdG9pbWF4KEwiMTIzIiwgTlVMTCwgMSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyAgZXJybm8gPSAwOworICB3Y3N0b2ltYXgoTCIxMjMiLCBOVUxMLCAzNyk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKK30KKworVEVTVChpbnR0eXBlcywgd2NzdG91bWF4X0VJTlZBTCkgeworICBlcnJubyA9IDA7CisgIHdjc3RvdW1heChMIjEyMyIsIE5VTEwsIC0xKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworICBlcnJubyA9IDA7CisgIHdjc3RvdW1heChMIjEyMyIsIE5VTEwsIDEpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgd2NzdG91bWF4KEwiMTIzIiwgTlVMTCwgMzcpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9saWJjX2xvZ2dpbmdfdGVzdC5jcHAgYi90ZXN0cy9saWJjX2xvZ2dpbmdfdGVzdC5jcHAKaW5kZXggOTUwMTYxZS4uZDRjZWRlZCAxMDA2NDQKLS0tIGEvdGVzdHMvbGliY19sb2dnaW5nX3Rlc3QuY3BwCisrKyBiL3Rlc3RzL2xpYmNfbG9nZ2luZ190ZXN0LmNwcApAQCAtMTc2LDMgKzE3NiwxNSBAQAogICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKICNlbmRpZiAvLyBfX0JJT05JQ19fCiB9CisKK1RFU1QobGliY19sb2dnaW5nLCBidWZmZXJfb3ZlcnJ1bikgeworI2lmIGRlZmluZWQoX19CSU9OSUNfXykKKyAgY2hhciBidWZbQlVGU0laXTsKKyAgQVNTRVJUX0VRKDExLCBfX2xpYmNfZm9ybWF0X2J1ZmZlcihidWYsIHNpemVvZihidWYpLCAiaGVsbG8gJXMiLCAid29ybGQiKSk7CisgIEVYUEVDVF9TVFJFUSgiaGVsbG8gd29ybGQiLCBidWYpOworICBBU1NFUlRfRVEoMTEsIF9fbGliY19mb3JtYXRfYnVmZmVyKGJ1ZiwgOCwgImhlbGxvICVzIiwgIndvcmxkIikpOworICBFWFBFQ1RfU1RSRVEoImhlbGxvIHciLCBidWYpOworI2Vsc2UgLy8gX19CSU9OSUNfXworICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKKyNlbmRpZiAvLyBfX0JJT05JQ19fCit9CmRpZmYgLS1naXQgYS90ZXN0cy9saWJnZW5fdGVzdC5jcHAgYi90ZXN0cy9saWJnZW5fdGVzdC5jcHAKaW5kZXggMzk1OGY4MS4uZTlhNWQ1YyAxMDA2NDQKLS0tIGEvdGVzdHMvbGliZ2VuX3Rlc3QuY3BwCisrKyBiL3Rlc3RzL2xpYmdlbl90ZXN0LmNwcApAQCAtMTQsMTEgKzE0LDEwIEBACiAgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KICAqLwogCi0jaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KLQogI2luY2x1ZGUgPGxpYmdlbi5oPgogCiAjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgogCiBzdGF0aWMgdm9pZCBUZXN0QmFzZW5hbWUoY29uc3QgY2hhciogaW4sIGNvbnN0IGNoYXIqIGV4cGVjdGVkX291dCkgewogICBjaGFyKiB3cml0YWJsZV9pbiA9IChpbiAhPSBOVUxMKSA/IHN0cmR1cChpbikgOiBOVUxMOwpAQCAtNDAsNyArMzksNyBAQAogCiAvLyBEbyBub3QgdXNlIGJhc2VuYW1lIGFzIHRoZSB0ZXN0IG5hbWUsIGl0J3MgZGVmaW5lZCB0byBhbm90aGVyIHZhbHVlIGluIGdsaWJjCiAvLyBzbyBsZWFkcyB0byBhIGRpZmZlcmVudGx5IG5hbWVkIHRlc3Qgb24gaG9zdCB2ZXJzdXMgdGFyZ2V0IGFyY2hpdGVjdHVyZXMuCi1URVNUKGxpYmdlbiwgYmFzZW5hbWVfc21va2UpIHsKK1RFU1QobGliZ2VuLCBwb3NpeF9iYXNlbmFtZSkgewogICBUZXN0QmFzZW5hbWUoTlVMTCwgIi4iKTsKICAgVGVzdEJhc2VuYW1lKCIiLCAiLiIpOwogICBUZXN0QmFzZW5hbWUoIi91c3IvbGliIiwgImxpYiIpOwpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9BbmRyb2lkLmJ1aWxkLmRsZXh0X3Rlc3R6aXAubWsgYi90ZXN0cy9saWJzL0FuZHJvaWQuYnVpbGQuZGxleHRfdGVzdHppcC5tawppbmRleCBkMDU5MjdlLi43Y2MwZGFlIDEwMDY0NAotLS0gYS90ZXN0cy9saWJzL0FuZHJvaWQuYnVpbGQuZGxleHRfdGVzdHppcC5taworKysgYi90ZXN0cy9saWJzL0FuZHJvaWQuYnVpbGQuZGxleHRfdGVzdHppcC5tawpAQCAtMzUsNyArMzUsNyBAQAogJChMT0NBTF9CVUlMVF9NT0RVTEUpOiBQUklWQVRFX0FMSUdOTUVOVCA6PSA0MDk2ICMgUEFHRV9TSVpFCiAkKExPQ0FMX0JVSUxUX01PRFVMRSkgOiAkKG15X3NoYXJlZF9saWJzKSB8ICQoWklQQUxJR04pCiAJQGVjaG8gIlppcGFsaWduICQoUFJJVkFURV9BTElHTk1FTlQpOiAkQCIKLQkkKGhpZGUpIHJtIC1yZiAkKGRpciAkQCkgJiYgbWtkaXIgLXAgJChkaXIgJEApCi0JJChoaWRlKSBjcCAkXiAkKGRpciAkQCkKLQkkKGhpZGUpIChjZCAkKGRpciAkQCkgJiYgdG91Y2ggZW1wdHlfZmlsZS50eHQgJiYgemlwIC1yRDAgJChub3RkaXIgJEApLnVuYWxpZ25lZCBlbXB0eV9maWxlLnR4dCAqLnNvKQorCSQoaGlkZSkgcm0gLXJmICQoZGlyICRAKSAmJiBta2RpciAtcCAkKGRpciAkQCkvbGliZGlyCisJJChoaWRlKSBjcCAkXiAkKGRpciAkQCkvbGliZGlyCisJJChoaWRlKSAoY2QgJChkaXIgJEApICYmIHRvdWNoIGVtcHR5X2ZpbGUudHh0ICYmIHppcCAtckQwICQobm90ZGlyICRAKS51bmFsaWduZWQgZW1wdHlfZmlsZS50eHQgbGliZGlyLyouc28pCiAJJChoaWRlKSAkKFpJUEFMSUdOKSAkKFBSSVZBVEVfQUxJR05NRU5UKSAkQC51bmFsaWduZWQgJEAKZGlmZiAtLWdpdCBhL3Rlc3RzL2xpYnMvQW5kcm9pZC5idWlsZC5kbG9wZW5fMl9wYXJlbnRzX3JlbG9jLm1rIGIvdGVzdHMvbGlicy9BbmRyb2lkLmJ1aWxkLmRsb3Blbl8yX3BhcmVudHNfcmVsb2MubWsKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjlhZTEwZAotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2xpYnMvQW5kcm9pZC5idWlsZC5kbG9wZW5fMl9wYXJlbnRzX3JlbG9jLm1rCkBAIC0wLDAgKzEsNTIgQEAKKyMKKyMgQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyMKKyMgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisjIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyMgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisjCisjICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisjCisjIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyMgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisjIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisjCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgTGlicmFyaWVzIHVzZWQgYnkgZGxmY24gdGVzdHMgdG8gdmVyaWZ5IGxvY2FsIGdyb3VwIHJlZl9jb3VudGluZworIyBsaWJ0ZXN0X3R3b19wYXJlbnRzKi5zbworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIC4uLl9jaGlsZC5zbyAtIGNvcnJlY3QgYW5zd2VyCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJ0ZXN0X3R3b19wYXJlbnRzX2NoaWxkX3NyY19maWxlcyA6PSBcCisgICAgZGxvcGVuXzJfcGFyZW50c19yZWxvY19hbnN3ZXIuY3BwCisKK21vZHVsZSA6PSBsaWJ0ZXN0X3R3b19wYXJlbnRzX2NoaWxkCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgLi4uX3BhcmVudDEuc28gLSBjb3JyZWN0IGFuc3dlcgorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF90d29fcGFyZW50c19wYXJlbnQxX3NyY19maWxlcyA6PSBcCisgICAgZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX2Fuc3dlcl9pbXBsLmNwcAorCitsaWJ0ZXN0X3R3b19wYXJlbnRzX3BhcmVudDFfc2hhcmVkX2xpYnJhcmllcyA6PSBsaWJ0ZXN0X3R3b19wYXJlbnRzX2NoaWxkCitsaWJ0ZXN0X3R3b19wYXJlbnRzX3BhcmVudDFfY2ZsYWdzIDo9IC1EX19BTlNXRVI9NDIKK21vZHVsZSA6PSBsaWJ0ZXN0X3R3b19wYXJlbnRzX3BhcmVudDEKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyAuLi5fcGFyZW50Mi5zbyAtIGluY29ycmVjdCBhbnN3ZXIKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYnRlc3RfdHdvX3BhcmVudHNfcGFyZW50Ml9zcmNfZmlsZXMgOj0gXAorICAgIGRsb3Blbl9jaGVja19vcmRlcl9yZWxvY19hbnN3ZXJfaW1wbC5jcHAKKworbGlidGVzdF90d29fcGFyZW50c19wYXJlbnQyX3NoYXJlZF9saWJyYXJpZXMgOj0gbGlidGVzdF90d29fcGFyZW50c19jaGlsZAorbGlidGVzdF90d29fcGFyZW50c19wYXJlbnQyX2NmbGFncyA6PSAtRF9fQU5TV0VSPTEKK21vZHVsZSA6PSBsaWJ0ZXN0X3R3b19wYXJlbnRzX3BhcmVudDIKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKKwpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9BbmRyb2lkLmJ1aWxkLmRsb3Blbl9jaGVja19vcmRlcl9kbHN5bS5tayBiL3Rlc3RzL2xpYnMvQW5kcm9pZC5idWlsZC5kbG9wZW5fY2hlY2tfb3JkZXJfZGxzeW0ubWsKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzNkOGMxYQotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2xpYnMvQW5kcm9pZC5idWlsZC5kbG9wZW5fY2hlY2tfb3JkZXJfZGxzeW0ubWsKQEAgLTAsMCArMSw5MCBAQAorIworIyBDb3B5cmlnaHQgKEMpIDIwMTIgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMKKyMgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyMKKyMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorIyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorIyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyMKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBMaWJyYXJpZXMgdXNlZCBieSBkbGZjbiB0ZXN0cyB0byB2ZXJpZnkgY29ycmVjdCBsb2FkIG9yZGVyOgorIyBsaWJ0ZXN0X2NoZWNrX29yZGVyXzJfcmlnaHQuc28KKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYnRlc3RfY2hlY2tfb3JkZXJfZGxzeW1fMl9yaWdodF9zcmNfZmlsZXMgOj0gXAorICAgIGRsb3Blbl9jaGVja19vcmRlcl9kbHN5bV9hbnN3ZXIuY3BwCisKK2xpYnRlc3RfY2hlY2tfb3JkZXJfZGxzeW1fMl9yaWdodF9jZmxhZ3MgOj0gLURfX0FOU1dFUj00MgorbW9kdWxlIDo9IGxpYnRlc3RfY2hlY2tfb3JkZXJfZGxzeW1fMl9yaWdodAoraW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIGxpYnRlc3RfY2hlY2tfb3JkZXJfYS5zbworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF9jaGVja19vcmRlcl9kbHN5bV9hX3NyY19maWxlcyA6PSBcCisgICAgZGxvcGVuX2NoZWNrX29yZGVyX2Rsc3ltX2Fuc3dlci5jcHAKKworbGlidGVzdF9jaGVja19vcmRlcl9kbHN5bV9hX2NmbGFncyA6PSAtRF9fQU5TV0VSPTEKK21vZHVsZSA6PSBsaWJ0ZXN0X2NoZWNrX29yZGVyX2Rsc3ltX2EKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBsaWJ0ZXN0X2NoZWNrX29yZGVyX2Iuc28KKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYnRlc3RfY2hlY2tfb3JkZXJfZGxzeW1fYl9zcmNfZmlsZXMgOj0gXAorICAgIGRsb3Blbl9jaGVja19vcmRlcl9kbHN5bV9hbnN3ZXIuY3BwCisKK2xpYnRlc3RfY2hlY2tfb3JkZXJfZGxzeW1fYl9jZmxhZ3MgOj0gLURfX0FOU1dFUj0yIC1EX19BTlNXRVIyPTQzCittb2R1bGUgOj0gbGlidGVzdF9jaGVja19vcmRlcl9kbHN5bV9iCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgbGlidGVzdF9jaGVja19vcmRlcl9jLnNvCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJ0ZXN0X2NoZWNrX29yZGVyX2Rsc3ltXzNfY19zcmNfZmlsZXMgOj0gXAorICAgIGRsb3Blbl9jaGVja19vcmRlcl9kbHN5bV9hbnN3ZXIuY3BwCisKK2xpYnRlc3RfY2hlY2tfb3JkZXJfZGxzeW1fM19jX2NmbGFncyA6PSAtRF9fQU5TV0VSPTMKK21vZHVsZSA6PSBsaWJ0ZXN0X2NoZWNrX29yZGVyX2Rsc3ltXzNfYworaW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIGxpYnRlc3RfY2hlY2tfb3JkZXJfZC5zbworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF9jaGVja19vcmRlcl9kbHN5bV9kX3NyY19maWxlcyA6PSBcCisgICBkbG9wZW5fY2hlY2tfb3JkZXJfZGxzeW1fYW5zd2VyLmNwcAorCitsaWJ0ZXN0X2NoZWNrX29yZGVyX2Rsc3ltX2Rfc2hhcmVkX2xpYnJhcmllcyA6PSBsaWJ0ZXN0X2NoZWNrX29yZGVyX2Rsc3ltX2IKK2xpYnRlc3RfY2hlY2tfb3JkZXJfZGxzeW1fZF9jZmxhZ3MgOj0gLURfX0FOU1dFUj00IC1EX19BTlNXRVIyPTQKK21vZHVsZSA6PSBsaWJ0ZXN0X2NoZWNrX29yZGVyX2Rsc3ltX2QKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBsaWJ0ZXN0X2NoZWNrX29yZGVyX2xlZnQuc28KKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYnRlc3RfY2hlY2tfb3JkZXJfZGxzeW1fMV9sZWZ0X3NyY19maWxlcyA6PSBcCisgICAgZW1wdHkuY3BwCisKK2xpYnRlc3RfY2hlY2tfb3JkZXJfZGxzeW1fMV9sZWZ0X3NoYXJlZF9saWJyYXJpZXMgOj0gbGlidGVzdF9jaGVja19vcmRlcl9kbHN5bV9hIGxpYnRlc3RfY2hlY2tfb3JkZXJfZGxzeW1fYgorCittb2R1bGUgOj0gbGlidGVzdF9jaGVja19vcmRlcl9kbHN5bV8xX2xlZnQKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBsaWJ0ZXN0X2NoZWNrX29yZGVyLnNvCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJ0ZXN0X2NoZWNrX29yZGVyX2Rsc3ltX3NyY19maWxlcyA6PSBcCisgICAgZW1wdHkuY3BwCisKK2xpYnRlc3RfY2hlY2tfb3JkZXJfZGxzeW1fc2hhcmVkX2xpYnJhcmllcyA6PSBsaWJ0ZXN0X2NoZWNrX29yZGVyX2Rsc3ltXzFfbGVmdCBcCisgIGxpYnRlc3RfY2hlY2tfb3JkZXJfZGxzeW1fMl9yaWdodCBsaWJ0ZXN0X2NoZWNrX29yZGVyX2Rsc3ltXzNfYworCittb2R1bGUgOj0gbGlidGVzdF9jaGVja19vcmRlcl9kbHN5bQoraW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5tawpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9BbmRyb2lkLmJ1aWxkLmRsb3Blbl9jaGVja19vcmRlcl9yZWxvY19tYWluX2V4ZWN1dGFibGUubWsgYi90ZXN0cy9saWJzL0FuZHJvaWQuYnVpbGQuZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX21haW5fZXhlY3V0YWJsZS5tawpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42Mzk2OTZiCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy9BbmRyb2lkLmJ1aWxkLmRsb3Blbl9jaGVja19vcmRlcl9yZWxvY19tYWluX2V4ZWN1dGFibGUubWsKQEAgLTAsMCArMSw1NiBAQAorIworIyBDb3B5cmlnaHQgKEMpIDIwMTIgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMKKyMgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyMKKyMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorIyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorIyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyMKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBMaWJyYXJpZXMgdXNlZCBieSBkbGZjbiB0ZXN0cyB0byB2ZXJpZnkgY29ycmVjdCByZWxvY2F0aW9uIG9yZGVyOgorIyBsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3Jvb3QqLnNvCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyAuLi5fMS5zbyAtIGVtcHR5CisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3Jvb3RfMV9zcmNfZmlsZXMgOj0gXAorICAgIGVtcHR5LmNwcAorCisKK21vZHVsZSA6PSBsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3Jvb3RfMQoraW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgLi4uXzIuc28gLSB0aGlzIG9uZSBoYXMgdGhlIGluY29ycmVjdCBhbnN3ZXIKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfcm9vdF8yX3NyY19maWxlcyA6PSBcCisgICAgZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX3Jvb3RfYW5zd2VyX2ltcGwuY3BwCisKK2xpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfcm9vdF8yX2NmbGFncyA6PSAtRF9fQU5TV0VSPTIKKworbW9kdWxlIDo9IGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfcm9vdF8yCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19yb290LnNvIDwtIGltcGxlbWVudHMgZ2V0X2Fuc3dlcjMoKQorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19yb290X3NyY19maWxlcyA6PSBcCisgICAgZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX3Jvb3RfYW5zd2VyLmNwcAorCitsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3Jvb3Rfc2hhcmVkX2xpYnJhcmllcyA6PSBcCisgICAgbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19yb290XzEgXAorICAgIGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfcm9vdF8yCisKK21vZHVsZSA6PSBsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3Jvb3QKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKZGlmZiAtLWdpdCBhL3Rlc3RzL2xpYnMvQW5kcm9pZC5idWlsZC5kbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3MubWsgYi90ZXN0cy9saWJzL0FuZHJvaWQuYnVpbGQuZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzLm1rCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJkMzVhNTEKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9saWJzL0FuZHJvaWQuYnVpbGQuZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzLm1rCkBAIC0wLDAgKzEsMTU4IEBACisjCisjIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisjCisjIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworIyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisjIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorIworIyAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorIworIyBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisjIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisjIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorIyBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisjIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorIworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIExpYnJhcmllcyB1c2VkIGJ5IGRsZmNuIHRlc3RzIHRvIHZlcmlmeSBjb3JyZWN0IHJlbG9jYXRpb24gb3JkZXI6CisjIGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3MqLnNvCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgLi4uXzEuc28gLSBlbXB0eQorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc18xX3NyY19maWxlcyA6PSBcCisgICAgZW1wdHkuY3BwCisKK2xpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfMV9zaGFyZWRfbGlicmFyaWVzIDo9IFwKKyAgICBsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2EgXAorICAgIGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfYgorCittb2R1bGUgOj0gbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc18xCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCisKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyAuLi5fMi5zbyAtIGVtcHR5CisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzXzJfc3JjX2ZpbGVzIDo9IFwKKyAgICBkbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2NfZ3JhbmRjaGlsZF9hbnN3ZXIuY3BwCisKK2xpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfMl9zaGFyZWRfbGlicmFyaWVzIDo9IFwKKyAgICBsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2MgXAorICAgIGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfZAorCitsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzXzJfYWxsb3dfdW5kZWZpbmVkX3N5bWJvbHMgOj0gdHJ1ZQorbW9kdWxlIDo9IGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfMgoraW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIC4uLl8zLnNvIC0gZ2V0X2Fuc3dlcjIoKTsKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfM19zcmNfZmlsZXMgOj0gXAorICAgIGRsb3Blbl9jaGVja19vcmRlcl9yZWxvY19uZXBoZXdfYW5zd2VyLmNwcAorCitsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzXzNfc2hhcmVkX2xpYnJhcmllcyA6PSBcCisgICAgbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc19lIFwKKyAgICBsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2YKKworbW9kdWxlIDo9IGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfMworaW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIC4uLl9hLnNvIDwtIGNvcnJlY3QgaW1wbAorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc19hX3NyY19maWxlcyA6PSBcCisgICAgZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX2Fuc3dlcl9pbXBsLmNwcAorCitsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2FfY2ZsYWdzIDo9IC1EX19BTlNXRVI9NDIKK21vZHVsZSA6PSBsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2EKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyAuLi5fYi5zbworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc19iX3NyY19maWxlcyA6PSBcCisgICAgZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX2Fuc3dlcl9pbXBsLmNwcAorCitsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2JfY2ZsYWdzIDo9IC1EX19BTlNXRVI9MQorbW9kdWxlIDo9IGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfYgoraW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIC4uLl9jLnNvCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2Nfc3JjX2ZpbGVzIDo9IFwKKyAgICBkbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2NfYW5zd2VyX2ltcGwuY3BwCisKK2xpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfY19jZmxhZ3MgOj0gLURfX0FOU1dFUj0yCitsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2Nfc2hhcmVkX2xpYnJhcmllcyA6PSBcCisgICAgbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc19jXzEgXAorICAgIGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfY18yCisKK21vZHVsZSA6PSBsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2MKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyAuLi5fZC5zbworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc19kX3NyY19maWxlcyA6PSBcCisgICAgZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX2Fuc3dlcl9pbXBsLmNwcAorCitsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2RfY2ZsYWdzIDo9IC1EX19BTlNXRVI9MworbW9kdWxlIDo9IGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfZAoraW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIC4uLl9lLnNvCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2Vfc3JjX2ZpbGVzIDo9IFwKKyAgICBkbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2NfYW5zd2VyX2ltcGwuY3BwCisKK2xpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfZV9jZmxhZ3MgOj0gLURfX0FOU1dFUj00Cittb2R1bGUgOj0gbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc19lCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgLi4uX2Yuc28gPC0gZ2V0X2Fuc3dlcigpCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2Zfc3JjX2ZpbGVzIDo9IFwKKyAgICBkbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2NfYW5zd2VyLmNwcAorCittb2R1bGUgOj0gbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc19mCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgLi4uX2NfMS5zbworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc19jXzFfc3JjX2ZpbGVzIDo9IFwKKyAgICBkbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2NfZ3JhbmRjaGlsZF9hbnN3ZXJfaW1wbC5jcHAKKworbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc19jXzFfY2ZsYWdzIDo9IC1EX19BTlNXRVI9NDIKK21vZHVsZSA6PSBsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2NfMQoraW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIC4uLl9jXzIuc28KKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfY18yX3NyY19maWxlcyA6PSBcCisgICAgZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX2dyYW5kY2hpbGRfYW5zd2VyX2ltcGwuY3BwCisKK2xpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfY18yX2NmbGFncyA6PSAtRF9fQU5TV0VSPTAKK21vZHVsZSA6PSBsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzX2NfMgoraW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3Muc28KKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3Nfc3JjX2ZpbGVzIDo9IFwKKyAgICBlbXB0eS5jcHAKKworbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc19zaGFyZWRfbGlicmFyaWVzIDo9IFwKKyAgICBsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzXzEgXAorICAgIGxpYnRlc3RfY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3NfMiBcCisgICAgbGlidGVzdF9jaGVja19vcmRlcl9yZWxvY19zaWJsaW5nc18zCisKK21vZHVsZSA6PSBsaWJ0ZXN0X2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL0FuZHJvaWQuYnVpbGQucHRocmVhZF9hdGZvcmsubWsgYi90ZXN0cy9saWJzL0FuZHJvaWQuYnVpbGQucHRocmVhZF9hdGZvcmsubWsKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzJmZmVjNAotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2xpYnMvQW5kcm9pZC5idWlsZC5wdGhyZWFkX2F0Zm9yay5tawpAQCAtMCwwICsxLDI1IEBACisjCisjIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisjCisjIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworIyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisjIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorIworIyAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorIworIyBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisjIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisjIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorIyBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisjIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorIworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIFRoaXMgbGlicmFyeSB1c2VkIHRvIHRlc3QgcGh0cmVhZF9hdGZvcmsgaGFuZGxlciBiZWhhdmlvdXIKKyMgZHVyaW5nL2FmdGVyIGRsY2xvc2UuCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJ0ZXN0X3B0aHJlYWRfYXRmb3JrX3NyY19maWxlcyA6PSBwdGhyZWFkX2F0Zm9yay5jcHAKKworbW9kdWxlIDo9IGxpYnRlc3RfcHRocmVhZF9hdGZvcmsKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKKwpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9BbmRyb2lkLmJ1aWxkLnZlcnNpb25lZF9saWIubWsgYi90ZXN0cy9saWJzL0FuZHJvaWQuYnVpbGQudmVyc2lvbmVkX2xpYi5tawpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mM2E2Mzc0Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy9BbmRyb2lkLmJ1aWxkLnZlcnNpb25lZF9saWIubWsKQEAgLTAsMCArMSwxMjAgQEAKKyMKKyMgQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyMKKyMgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisjIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyMgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisjCisjICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisjCisjIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyMgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisjIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisjCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgTGlicmFyaWVzIHVzZWQgdG8gdGVzdCB2ZXJzaW9uZWQgc3ltYm9scworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF92ZXJzaW9uZWRfdXNlbGlidjFfc3JjX2ZpbGVzIDo9IHZlcnNpb25lZF91c2VsaWIuY3BwCisKK2xpYnRlc3RfdmVyc2lvbmVkX3VzZWxpYnYxX3NoYXJlZF9saWJyYXJpZXMgOj0gXAorICAgIGxpYnRlc3RfdmVyc2lvbmVkX2xpYnYxCisKK21vZHVsZSA6PSBsaWJ0ZXN0X3ZlcnNpb25lZF91c2VsaWJ2MQoraW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJ0ZXN0X3ZlcnNpb25lZF91c2VsaWJ2Ml9zcmNfZmlsZXMgOj0gXAorICAgIHZlcnNpb25lZF91c2VsaWIuY3BwCisKK2xpYnRlc3RfdmVyc2lvbmVkX3VzZWxpYnYyX3NoYXJlZF9saWJyYXJpZXMgOj0gXAorICAgIGxpYnRlc3RfdmVyc2lvbmVkX2xpYnYyCisKK2xpYnRlc3RfdmVyc2lvbmVkX3VzZWxpYnYyX2xkZmxhZ3MgOj0gXAorICAgIC1XbCwtLXZlcnNpb24tc2NyaXB0LCQoTE9DQUxfUEFUSCkvdmVyc2lvbmVkX3VzZWxpYi5tYXAKKworbW9kdWxlIDo9IGxpYnRlc3RfdmVyc2lvbmVkX3VzZWxpYnYyCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYnRlc3RfdmVyc2lvbmVkX3VzZWxpYnYyX290aGVyX3NyY19maWxlcyA6PSBcCisgICAgdmVyc2lvbmVkX3VzZWxpYi5jcHAKKworbGlidGVzdF92ZXJzaW9uZWRfdXNlbGlidjJfb3RoZXJfc2hhcmVkX2xpYnJhcmllcyA6PSBcCisgICAgbGlidGVzdF92ZXJzaW9uZWRfb3RoZXJsaWJfZW1wdHkgbGlidGVzdF92ZXJzaW9uZWRfbGlidjIKKworbW9kdWxlIDo9IGxpYnRlc3RfdmVyc2lvbmVkX3VzZWxpYnYyX290aGVyCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYnRlc3RfdmVyc2lvbmVkX3VzZWxpYnYzX290aGVyX3NyY19maWxlcyA6PSBcCisgICAgdmVyc2lvbmVkX3VzZWxpYi5jcHAKKworbGlidGVzdF92ZXJzaW9uZWRfdXNlbGlidjNfb3RoZXJfc2hhcmVkX2xpYnJhcmllcyA6PSBcCisgICAgbGlidGVzdF92ZXJzaW9uZWRfb3RoZXJsaWJfZW1wdHkgbGlidGVzdF92ZXJzaW9uZWRfbGliCisKK21vZHVsZSA6PSBsaWJ0ZXN0X3ZlcnNpb25lZF91c2VsaWJ2M19vdGhlcgoraW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIGxpYiB2MSAtIHRoaXMgb25lIHVzZWQgZHVyaW5nIHN0YXRpYyBsaW5raW5nIGJ1dCBuZXZlciB1c2VkIGF0IHJ1bnRpbWUKKyMgd2hpY2ggZm9yY2VzIGxpYnRlc3RfdmVyc2lvbmVkX3VzZWxpYnYxIHRvIHVzZSBmdW5jdGlvbiB2MSBmcm9tCisjIGxpYnRlc3RfdmVyc2lvbmVkX2xpYi5zbworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF92ZXJzaW9uZWRfbGlidjFfc3JjX2ZpbGVzIDo9IFwKKyAgICB2ZXJzaW9uZWRfbGliX3YxLmNwcAorCitsaWJ0ZXN0X3ZlcnNpb25lZF9saWJ2MV9sZGZsYWdzIDo9IFwKKyAgICAtV2wsLS12ZXJzaW9uLXNjcmlwdCwkKExPQ0FMX1BBVEgpL3ZlcnNpb25lZF9saWJfdjEubWFwIFwKKyAgICAtV2wsLXNvbmFtZSxsaWJ0ZXN0X3ZlcnNpb25lZF9saWIuc28KKworbW9kdWxlIDo9IGxpYnRlc3RfdmVyc2lvbmVkX2xpYnYxCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgbGliIHYyIC0gdG8gbWFrZSBsaWJ0ZXN0X3ZlcnNpb25lZF91c2VsaWJ2Mi5zbyB1c2UgdmVyc2lvbiAyIG9mIHZlcnNpb25lZF9mdW5jdGlvbigpCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJ0ZXN0X3ZlcnNpb25lZF9saWJ2Ml9zcmNfZmlsZXMgOj0gXAorICAgIHZlcnNpb25lZF9saWJfdjIuY3BwCisKK2xpYnRlc3RfdmVyc2lvbmVkX2xpYnYyX2xkZmxhZ3MgOj0gXAorICAgIC1XbCwtLXZlcnNpb24tc2NyaXB0LCQoTE9DQUxfUEFUSCkvdmVyc2lvbmVkX2xpYl92Mi5tYXAgXAorICAgIC1XbCwtc29uYW1lLGxpYnRlc3RfdmVyc2lvbmVkX2xpYi5zbworCittb2R1bGUgOj0gbGlidGVzdF92ZXJzaW9uZWRfbGlidjIKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKKworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIGxhc3QgdmVyc2lvbiAtIHRoaXMgb25lIGlzIHVzZWQgYXQgdGhlIHJ1bnRpbWUgYW5kIGV4cG9ydHMgMyB2ZXJzaW9ucworIyBvZiB2ZXJzaW9uZWRfc3ltYm9sKCkuCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJ0ZXN0X3ZlcnNpb25lZF9saWJfc3JjX2ZpbGVzIDo9IFwKKyAgICB2ZXJzaW9uZWRfbGliX3YzLmNwcAorCitsaWJ0ZXN0X3ZlcnNpb25lZF9saWJfbGRmbGFncyA6PSBcCisgICAgLVdsLC0tdmVyc2lvbi1zY3JpcHQsJChMT0NBTF9QQVRIKS92ZXJzaW9uZWRfbGliX3YzLm1hcAorCittb2R1bGUgOj0gbGlidGVzdF92ZXJzaW9uZWRfbGliCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgVGhpcyBsaWJyYXJ5IGlzIGVtcHR5LCB0aGUgYWN0dWFsIGltcGxlbWVudGF0aW9uIHdpbGwgcHJvdmlkZSBhbiB1bnZlcnNpb25lZAorIyBzeW1ib2wgZm9yIHZlcnNpb25lZF9mdW5jdGlvbigpLgorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF92ZXJzaW9uZWRfb3RoZXJsaWJfZW1wdHlfc3JjX2ZpbGVzIDo9IGVtcHR5LmNwcAorCitsaWJ0ZXN0X3ZlcnNpb25lZF9vdGhlcmxpYl9lbXB0eV9sZGZsYWdzIDo9IC1XbCwtc29uYW1lLGxpYnRlc3RfdmVyc2lvbmVkX290aGVybGliLnNvCittb2R1bGUgOj0gbGlidGVzdF92ZXJzaW9uZWRfb3RoZXJsaWJfZW1wdHkKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF92ZXJzaW9uZWRfb3RoZXJsaWJfc3JjX2ZpbGVzIDo9IHZlcnNpb25lZF9saWJfb3RoZXIuY3BwCisKK2xpYnRlc3RfdmVyc2lvbmVkX290aGVybGliX2xkZmxhZ3MgOj0gXAorICAgIC1XbCwtLXZlcnNpb24tc2NyaXB0LCQoTE9DQUxfUEFUSCkvdmVyc2lvbmVkX2xpYl9vdGhlci5tYXAKKworbW9kdWxlIDo9IGxpYnRlc3RfdmVyc2lvbmVkX290aGVybGliCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL0FuZHJvaWQubWsgYi90ZXN0cy9saWJzL0FuZHJvaWQubWsKaW5kZXggYWYzZTA3MC4uYzQzMmMyZSAxMDA2NDQKLS0tIGEvdGVzdHMvbGlicy9BbmRyb2lkLm1rCisrKyBiL3Rlc3RzL2xpYnMvQW5kcm9pZC5tawpAQCAtMjEsMjUgKzIxLDQ0IEBACiBjb21tb25fYWRkaXRpb25hbF9kZXBlbmRlbmNpZXMgOj0gXAogICAgICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5tayBcCiAgICAgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLmRsZXh0X3Rlc3R6aXAubWsgXAorICAgICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC5kbG9wZW5fMl9wYXJlbnRzX3JlbG9jLm1rIFwKKyAgICAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQuZGxvcGVuX2NoZWNrX29yZGVyX2Rsc3ltLm1rIFwKKyAgICAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQuZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX3NpYmxpbmdzLm1rIFwKKyAgICAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQuZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX21haW5fZXhlY3V0YWJsZS5tayBcCisgICAgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnB0aHJlYWRfYXRmb3JrLm1rIFwKICAgICAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5tayBcCisgICAgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnZlcnNpb25lZF9saWIubWsgXAogICAgICQoVEVTVF9QQVRIKS9BbmRyb2lkLmJ1aWxkLm1rCiAKICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSMgTGlicmFyeSB1c2VkIGJ5IGRsZmNuIHRlc3RzLgorIyBMaWJyYXJ5IHRvIHRlc3QgZ251LXN0eWxlZCBoYXNoCiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBpZm5lcSAoJChUQVJHRVRfQVJDSCksJChmaWx0ZXIgJChUQVJHRVRfQVJDSCksbWlwcyBtaXBzNjQpKQotbm8tZWxmLWhhc2gtdGFibGUtbGlicmFyeV9zcmNfZmlsZXMgOj0gXAotICAgIGVtcHR5LmNwcCBcCitsaWJnbnUtaGFzaC10YWJsZS1saWJyYXJ5X3NyY19maWxlcyA6PSBcCisgICAgZGxleHRfdGVzdF9saWJyYXJ5LmNwcCBcCiAKLW5vLWVsZi1oYXNoLXRhYmxlLWxpYnJhcnlfbGRmbGFncyA6PSBcCitsaWJnbnUtaGFzaC10YWJsZS1saWJyYXJ5X2xkZmxhZ3MgOj0gXAogICAgIC1XbCwtLWhhc2gtc3R5bGU9Z251IFwKIAotbW9kdWxlIDo9IG5vLWVsZi1oYXNoLXRhYmxlLWxpYnJhcnkKK21vZHVsZSA6PSBsaWJnbnUtaGFzaC10YWJsZS1saWJyYXJ5CiBtb2R1bGVfdGFnIDo9IG9wdGlvbmFsCiBpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCiBlbmRpZgogCiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIExpYnJhcnkgdG8gdGVzdCBzeXN2LXN0eWxlZCBoYXNoCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJzeXN2LWhhc2gtdGFibGUtbGlicmFyeV9zcmNfZmlsZXMgOj0gXAorICAgIGRsZXh0X3Rlc3RfbGlicmFyeS5jcHAgXAorCitsaWJzeXN2LWhhc2gtdGFibGUtbGlicmFyeV9sZGZsYWdzIDo9IFwKKyAgICAtV2wsLS1oYXNoLXN0eWxlPXN5c3YgXAorCittb2R1bGUgOj0gbGlic3lzdi1oYXNoLXRhYmxlLWxpYnJhcnkKK21vZHVsZV90YWcgOj0gb3B0aW9uYWwKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIyBMaWJyYXJ5IHVzZWQgYnkgZGxleHQgdGVzdHMgLSB3aXRoIEdOVSBSRUxSTyBwcm9ncmFtIGhlYWRlcgogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogbGliZGxleHRfdGVzdF9zcmNfZmlsZXMgOj0gXApAQCAtMTAwLDYgKzExOSwxNyBAQAogYnVpbGRfdGFyZ2V0IDo9IFNIQVJFRF9MSUJSQVJZCiBpbmNsdWRlICQoVEVTVF9QQVRIKS9BbmRyb2lkLmJ1aWxkLm1rCiAKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBMaWJyYXJ5IHdpdGggc29uYW1lIHdoaWNoIGRvZXMgbm90IG1hdGNoIGZpbGVuYW1lCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYmRsZXh0X3Rlc3RfZGlmZmVyZW50X3NvbmFtZV9zcmNfZmlsZXMgOj0gXAorICAgIGRsZXh0X3Rlc3RfbGlicmFyeS5jcHAgXAorCittb2R1bGUgOj0gbGliZGxleHRfdGVzdF9kaWZmZXJlbnRfc29uYW1lCittb2R1bGVfdGFnIDo9IG9wdGlvbmFsCitsaWJkbGV4dF90ZXN0X2RpZmZlcmVudF9zb25hbWVfbGRmbGFncyA6PSAtV2wsLXNvbmFtZT1saWJkbGV4dF90ZXN0X3NvbmFtZS5zbworaW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAjIExpYnJhcnkgdXNlZCBieSBkbGV4dCB0ZXN0cyAtIHppcHBlZCBhbmQgYWxpZ25lZAogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtMTIxLDg2ICsxNTEsNzAgQEAKIGluY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKIAogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIyBMaWJyYXJpZXMgdXNlZCBieSBkbGZjbiB0ZXN0cyB0byB2ZXJpZnkgY29ycmVjdCBsb2FkIG9yZGVyOgotIyBsaWJ0ZXN0X2NoZWNrX29yZGVyXzJfcmlnaHQuc28KKyMgTGlicmFyeSB1c2VkIGJ5IGRsZmNuIG5vZGVsZXRlIHRlc3RzCiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1saWJ0ZXN0X2NoZWNrX29yZGVyXzJfcmlnaHRfc3JjX2ZpbGVzIDo9IFwKLSAgICBkbG9wZW5fdGVzdGxpYl9hbnN3ZXIuY3BwCitsaWJ0ZXN0X25vZGVsZXRlXzFfc3JjX2ZpbGVzIDo9IFwKKyAgICBkbG9wZW5fbm9kZWxldGVfMS5jcHAKIAotbGlidGVzdF9jaGVja19vcmRlcl8yX3JpZ2h0X2NmbGFncyA6PSAtRF9fQU5TV0VSPTQyCi1tb2R1bGUgOj0gbGlidGVzdF9jaGVja19vcmRlcl8yX3JpZ2h0Cittb2R1bGUgOj0gbGlidGVzdF9ub2RlbGV0ZV8xCiBpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCiAKICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSMgbGlidGVzdF9jaGVja19vcmRlcl9hLnNvCisjIExpYnJhcnkgdXNlZCBieSBkbGZjbiBub2RlbGV0ZSB0ZXN0cwogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotbGlidGVzdF9jaGVja19vcmRlcl9hX3NyY19maWxlcyA6PSBcCi0gICAgZGxvcGVuX3Rlc3RsaWJfYW5zd2VyLmNwcAorbGlidGVzdF9ub2RlbGV0ZV8yX3NyY19maWxlcyA6PSBcCisgICAgZGxvcGVuX25vZGVsZXRlXzIuY3BwCiAKLWxpYnRlc3RfY2hlY2tfb3JkZXJfYV9jZmxhZ3MgOj0gLURfX0FOU1dFUj0xCi1tb2R1bGUgOj0gbGlidGVzdF9jaGVja19vcmRlcl9hCittb2R1bGUgOj0gbGlidGVzdF9ub2RlbGV0ZV8yCiBpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCiAKICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLSMgbGlidGVzdF9jaGVja19vcmRlcl9iLnNvCisjIExpYnJhcnkgdXNlZCBieSBkbGZjbiBub2RlbGV0ZSB0ZXN0cwogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotbGlidGVzdF9jaGVja19vcmRlcl9iX3NyY19maWxlcyA6PSBcCi0gICAgZGxvcGVuX3Rlc3RsaWJfYW5zd2VyLmNwcAorbGlidGVzdF9ub2RlbGV0ZV9kdF9mbGFnc18xX3NyY19maWxlcyA6PSBcCisgICAgZGxvcGVuX25vZGVsZXRlX2R0X2ZsYWdzXzEuY3BwCiAKLWxpYnRlc3RfY2hlY2tfb3JkZXJfYl9jZmxhZ3MgOj0gLURfX0FOU1dFUj0yIC1EX19BTlNXRVIyPTQzCi1tb2R1bGUgOj0gbGlidGVzdF9jaGVja19vcmRlcl9iCitsaWJ0ZXN0X25vZGVsZXRlX2R0X2ZsYWdzXzFfbGRmbGFncyA6PSAtV2wsLXosbm9kZWxldGUKKworbW9kdWxlIDo9IGxpYnRlc3Rfbm9kZWxldGVfZHRfZmxhZ3NfMQogaW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5tawogCiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0jIGxpYnRlc3RfY2hlY2tfb3JkZXJfYy5zbworIyBCdWlsZCBsaWJyYXJ5IHdpdGggdHdvIHBhcmVudHMKICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLWxpYnRlc3RfY2hlY2tfb3JkZXJfM19jX3NyY19maWxlcyA6PSBcCi0gICAgZGxvcGVuX3Rlc3RsaWJfYW5zd2VyLmNwcAotCi1saWJ0ZXN0X2NoZWNrX29yZGVyXzNfY19jZmxhZ3MgOj0gLURfX0FOU1dFUj0zCi1tb2R1bGUgOj0gbGlidGVzdF9jaGVja19vcmRlcl8zX2MKLWluY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLmRsb3Blbl8yX3BhcmVudHNfcmVsb2MubWsKIAogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIyBsaWJ0ZXN0X2NoZWNrX29yZGVyX2Quc28KKyMgQnVpbGQgbGlidGVzdF9jaGVja19vcmRlcl9kbHN5bS5zbyB3aXRoIGl0cyBkZXBlbmRlbmNpZXMuCiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1saWJ0ZXN0X2NoZWNrX29yZGVyX2Rfc3JjX2ZpbGVzIDo9IFwKLSAgIGRsb3Blbl90ZXN0bGliX2Fuc3dlci5jcHAKLQotbGlidGVzdF9jaGVja19vcmRlcl9kX3NoYXJlZF9saWJyYXJpZXMgOj0gbGlidGVzdF9jaGVja19vcmRlcl9iCi1saWJ0ZXN0X2NoZWNrX29yZGVyX2RfY2ZsYWdzIDo9IC1EX19BTlNXRVI9NCAtRF9fQU5TV0VSMj00Ci1tb2R1bGUgOj0gbGlidGVzdF9jaGVja19vcmRlcl9kCi1pbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC5kbG9wZW5fY2hlY2tfb3JkZXJfZGxzeW0ubWsKIAogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIyBsaWJ0ZXN0X2NoZWNrX29yZGVyX2xlZnQuc28KKyMgQnVpbGQgbGlidGVzdF9jaGVja19vcmRlcl9zaWJsaW5ncy5zbyB3aXRoIGl0cyBkZXBlbmRlbmNpZXMuCiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1saWJ0ZXN0X2NoZWNrX29yZGVyXzFfbGVmdF9zcmNfZmlsZXMgOj0gXAotICAgIGVtcHR5LmNwcAotCi1saWJ0ZXN0X2NoZWNrX29yZGVyXzFfbGVmdF9zaGFyZWRfbGlicmFyaWVzIDo9IGxpYnRlc3RfY2hlY2tfb3JkZXJfYSBsaWJ0ZXN0X2NoZWNrX29yZGVyX2IKLQotbW9kdWxlIDo9IGxpYnRlc3RfY2hlY2tfb3JkZXJfMV9sZWZ0Ci1pbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC5kbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2Nfc2libGluZ3MubWsKIAogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIyBsaWJ0ZXN0X2NoZWNrX29yZGVyLnNvCisjIEJ1aWxkIGxpYnRlc3RfY2hlY2tfb3JkZXJfcm9vdC5zbyB3aXRoIGl0cyBkZXBlbmRlbmNpZXMuCiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1saWJ0ZXN0X2NoZWNrX29yZGVyX3NyY19maWxlcyA6PSBcCi0gICAgZW1wdHkuY3BwCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC5kbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2NfbWFpbl9leGVjdXRhYmxlLm1rCiAKLWxpYnRlc3RfY2hlY2tfb3JkZXJfc2hhcmVkX2xpYnJhcmllcyA6PSBsaWJ0ZXN0X2NoZWNrX29yZGVyXzFfbGVmdCBcCi0gIGxpYnRlc3RfY2hlY2tfb3JkZXJfMl9yaWdodCBsaWJ0ZXN0X2NoZWNrX29yZGVyXzNfYworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBCdWlsZCBsaWJ0ZXN0X3ZlcnNpb25lZF9saWIuc28gd2l0aCBpdHMgZGVwZW5kZW5jaWVzLgorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoraW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudmVyc2lvbmVkX2xpYi5tawogCi1tb2R1bGUgOj0gbGlidGVzdF9jaGVja19vcmRlcgotaW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBCdWlsZCBsaWJyYXJpZXMgbmVlZGVkIGJ5IHB0aHJlYWRfYXRmb3JrIHRlc3RzCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC5wdGhyZWFkX2F0Zm9yay5tawogCiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAjIExpYnJhcnkgd2l0aCBkZXBlbmRlbmN5IGxvb3AgdXNlZCBieSBkbGZjbiB0ZXN0cwogIwogIyBsaWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wIC0+IGEgLT4gYiAtPiBjIC0+IGEKICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLWxpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2xvb3Bfc3JjX2ZpbGVzIDo9IGRsb3Blbl90ZXN0bGliX2ludmFsaWQuY3BwCitsaWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wX3NyY19maWxlcyA6PSBkbG9wZW5fdGVzdGxpYl9sb29weV9yb290LmNwcAogCiBsaWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wX3NoYXJlZF9saWJyYXJpZXMgOj0gXAogICAgIGxpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2xvb3BfYQpAQCAtMjExLDcgKzIyNSw3IEBACiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAjIGxpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2xvb3BfYS5zbwogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotbGlidGVzdF93aXRoX2RlcGVuZGVuY3lfbG9vcF9hX3NyY19maWxlcyA6PSBkbG9wZW5fdGVzdGxpYl9pbnZhbGlkLmNwcAorbGlidGVzdF93aXRoX2RlcGVuZGVuY3lfbG9vcF9hX3NyY19maWxlcyA6PSBkbG9wZW5fdGVzdGxpYl9sb29weV9hLmNwcAogCiBsaWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wX2Ffc2hhcmVkX2xpYnJhcmllcyA6PSBcCiAgICAgbGlidGVzdF93aXRoX2RlcGVuZGVuY3lfbG9vcF9iX3RtcApAQCAtMjI0LDcgKzIzOCw3IEBACiAjCiAjIHRoaXMgaXMgdGVtcG9yYXJ5IHBsYWNlaG9sZGVyIC0gd2lsbCBiZSByZW1vdmVkCiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1saWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wX2JfdG1wX3NyY19maWxlcyA6PSBkbG9wZW5fdGVzdGxpYl9pbnZhbGlkLmNwcAorbGlidGVzdF93aXRoX2RlcGVuZGVuY3lfbG9vcF9iX3RtcF9zcmNfZmlsZXMgOj0gZGxvcGVuX3Rlc3RsaWJfbG9vcHlfaW52YWxpZC5jcHAKIGxpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2xvb3BfYl90bXBfbGRmbGFncyA6PSAtV2wsLXNvbmFtZT1saWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wX2Iuc28KIAogbW9kdWxlIDo9IGxpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2xvb3BfYl90bXAKQEAgLTIzMyw3ICsyNDcsNyBAQAogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIyBsaWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wX2Iuc28KICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLWxpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2xvb3BfYl9zcmNfZmlsZXMgOj0gZGxvcGVuX3Rlc3RsaWJfaW52YWxpZC5jcHAKK2xpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2xvb3BfYl9zcmNfZmlsZXMgOj0gZGxvcGVuX3Rlc3RsaWJfbG9vcHlfYi5jcHAKIGxpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2xvb3BfYl9zaGFyZWRfbGlicmFyaWVzIDo9IGxpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2xvb3BfYwogCiBtb2R1bGUgOj0gbGlidGVzdF93aXRoX2RlcGVuZGVuY3lfbG9vcF9iCkBAIC0yNDIsNyArMjU2LDcgQEAKICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICMgbGlidGVzdF93aXRoX2RlcGVuZGVuY3lfbG9vcF9jLnNvCiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi1saWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wX2Nfc3JjX2ZpbGVzIDo9IGRsb3Blbl90ZXN0bGliX2ludmFsaWQuY3BwCitsaWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wX2Nfc3JjX2ZpbGVzIDo9IGRsb3Blbl90ZXN0bGliX2xvb3B5X2MuY3BwCiAKIGxpYnRlc3Rfd2l0aF9kZXBlbmRlbmN5X2xvb3BfY19zaGFyZWRfbGlicmFyaWVzIDo9IFwKICAgICBsaWJ0ZXN0X3dpdGhfZGVwZW5kZW5jeV9sb29wX2EKQEAgLTI5NSw3ICszMDksNyBAQAogYnVpbGRfdHlwZSA6PSBob3N0CiBpbmNsdWRlICQoVEVTVF9QQVRIKS9BbmRyb2lkLmJ1aWxkLm1rCiAKLWlmZXEgKCQoVEFSR0VUX0FSQ0gpLCQoZmlsdGVyICQoVEFSR0VUX0FSQ0gpLHg4NiB4ODZfNjQpKQoraWZlcSAoJChUQVJHRVRfQVJDSCksJChmaWx0ZXIgJChUQVJHRVRfQVJDSCksYXJtNjQgeDg2IHg4Nl82NCkpCiAgICAgaWZlcSAoJChUQVJHRVRfQVJDSCksYXJtNjQpCiAgICAgICBsaWJ0ZXN0X2lmdW5jX211bHRpbGliIDo9IDY0CiAgICAgICAjIFRPRE86IFRoaXMgaXMgYSB3b3JrYXJvdW5kIC0gcmVtb3ZlIGl0IG9uY2UgZ2NjCkBAIC0zMDQsNiArMzE4LDcgQEAKICAgICBlbmRpZgogCiAgICAgYnVpbGRfdHlwZSA6PSB0YXJnZXQKKyAgICBsaWJ0ZXN0X2lmdW5jX2NsYW5nX3RhcmdldCA6PSBmYWxzZQogICAgIGluY2x1ZGUgJChURVNUX1BBVEgpL0FuZHJvaWQuYnVpbGQubWsKIGVuZGlmCiAKQEAgLTMxOCw2ICszMzMsNDcgQEAKIGluY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKIAogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBUaGlzIGxpYnJhcnkgaXMgdXNlZCBieSBkbF9sb2FkIHRlc3QgdG8gY2hlY2sgc3ltYm9sIHByZWVtcHRpbmcKKyMgYnkgbWFpbiBleGVjdXRhYmxlCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJkbF9wcmVlbXB0X3Rlc3RfMV9zcmNfZmlsZXMgOj0gZGxfcHJlZW1wdF9saWJyYXJ5XzEuY3BwCisKK21vZHVsZSA6PSBsaWJkbF9wcmVlbXB0X3Rlc3RfMQoraW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIFRoaXMgbGlicmFyeSBpcyB1c2VkIGJ5IGRsX2xvYWQgdGVzdCB0byBjaGVjayBzeW1ib2wgcHJlZW1wdGluZworIyBieSBsaWJkbF9wcmVlbXB0X3Rlc3RfMS5zbworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGliZGxfcHJlZW1wdF90ZXN0XzJfc3JjX2ZpbGVzIDo9IGRsX3ByZWVtcHRfbGlicmFyeV8yLmNwcAorCittb2R1bGUgOj0gbGliZGxfcHJlZW1wdF90ZXN0XzIKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBMaWJyYXJ5IHdpdGggREZfMV9HTE9CQUwKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYmRsX3Rlc3RfZGZfMV9nbG9iYWxfc3JjX2ZpbGVzIDo9IGRsX2RmXzFfZ2xvYmFsLmNwcAorbGliZGxfdGVzdF9kZl8xX2dsb2JhbF9sZGZsYWdzIDo9IC1XbCwteixnbG9iYWwKKyMgVE9ETyAoZGltaXRyeSk6IHg4NiogdG9vbGNoYWluIGRvZXMgbm90IHN1cHBvcnQgLXogZ2xvYmFsIC0gc3dpdGNoIHRvIGJmZAoraWZlcSAoJChmaWx0ZXIgJChUQVJHRVRfQVJDSCkseDg2IHg4Nl82NCksJChUQVJHRVRfQVJDSCkpCitsaWJkbF90ZXN0X2RmXzFfZ2xvYmFsX2xkZmxhZ3NfdGFyZ2V0IDo9IC1mdXNlLWxkPWJmZAorZW5kaWYKKyMgVE9ETyAoZGltaXRyeSk6IGhvc3QgbGQuZ29sZCBkb2VzIG5vdCB5ZXQgc3VwcG9ydCAteiBnbG9iYWwKKyMgcmVtb3ZlIHRoaXMgbGluZSBvbmNlIGl0IGlzIHVwZGF0ZWQuCitsaWJkbF90ZXN0X2RmXzFfZ2xvYmFsX2xkZmxhZ3NfaG9zdCA6PSAtZnVzZS1sZD1iZmQKKworbW9kdWxlIDo9IGxpYmRsX3Rlc3RfZGZfMV9nbG9iYWwKK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKKworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBMaWJyYXJ5IHVzaW5nIHN5bWJvbCBmcm9tIGxpYmRsX3Rlc3RfZGZfMV9nbG9iYWwKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK2xpYnRlc3RfZGxzeW1fZGZfMV9nbG9iYWxfc3JjX2ZpbGVzIDo9IGRsX2RmXzFfdXNlX2dsb2JhbC5jcHAKK21vZHVsZSA6PSBsaWJ0ZXN0X2Rsc3ltX2RmXzFfZ2xvYmFsCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICMgTGlicmFyeSB3aXRoIHdlYWsgZnVuY3Rpb24KICMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGxpYnRlc3RfZGxzeW1fd2Vha19mdW5jX3NyY19maWxlcyA6PSBcCkBAIC0zMjUsMyArMzgxLDQ0IEBACiAKIG1vZHVsZSA6PSBsaWJ0ZXN0X2Rsc3ltX3dlYWtfZnVuYwogaW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIExpYnJhcnkgdG8gY2hlY2sgUlRMRF9MT0NBTCB3aXRoIGRsc3ltIGluICd0aGlzJworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF9kbHN5bV9mcm9tX3RoaXNfc3JjX2ZpbGVzIDo9IGRsc3ltX2Zyb21fdGhpcy5jcHAKKworbW9kdWxlIDo9IGxpYnRlc3RfZGxzeW1fZnJvbV90aGlzCitsaWJ0ZXN0X2Rsc3ltX2Zyb21fdGhpc19zaGFyZWRfbGlicmFyaWVzX3RhcmdldCA6PSBsaWJkbAorCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgTGlicmFyeSB3aXRoIHdlYWsgdW5kZWZpbmVkIGZ1bmN0aW9uCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitsaWJ0ZXN0X2Rsb3Blbl93ZWFrX3VuZGVmaW5lZF9mdW5jX3NyY19maWxlcyA6PSBcCisgICAgZGxvcGVuX3dlYWtfdW5kZWZpbmVkLmNwcAorCittb2R1bGUgOj0gbGlidGVzdF9kbG9wZW5fd2Vha191bmRlZmluZWRfZnVuYworaW5jbHVkZSAkKExPQ0FMX1BBVEgpL0FuZHJvaWQuYnVpbGQudGVzdGxpYi5taworCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIExpYnJhcnkgd2l0aCBjb25zdHJ1Y3RvciB0aGF0IGNhbGxzIGRsb3BlbigpIGIvNzk0MTcxNgorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorbGlidGVzdF9kbG9wZW5fZnJvbV9jdG9yX3NyY19maWxlcyA6PSBcCisgICBkbG9wZW5fdGVzdGxpYl9kbG9wZW5fZnJvbV9jdG9yLmNwcAorCittb2R1bGUgOj0gbGlidGVzdF9kbG9wZW5fZnJvbV9jdG9yCisKK2xpYnRlc3RfZGxvcGVuX2Zyb21fY3Rvcl9zaGFyZWRfbGlicmFyaWVzX3RhcmdldCA6PSBsaWJkbAorCitpbmNsdWRlICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5idWlsZC50ZXN0bGliLm1rCisKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgTGlicmFyeSB0aGF0IGRlcGVuZHMgb24gdGhlIGxpYnJhcnkgd2l0aCBjb25zdHJ1Y3RvciB0aGF0IGNhbGxzIGRsb3BlbigpIGIvNzk0MTcxNgorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitsaWJ0ZXN0X2Rsb3Blbl9mcm9tX2N0b3JfbWFpbl9zcmNfZmlsZXMgOj0gZW1wdHkuY3BwCitsaWJ0ZXN0X2Rsb3Blbl9mcm9tX2N0b3JfbWFpbl9zaGFyZWRfbGlicmFyaWVzIDo9IGxpYnRlc3RfZGxvcGVuX2Zyb21fY3RvcgorCittb2R1bGUgOj0gbGlidGVzdF9kbG9wZW5fZnJvbV9jdG9yX21haW4KK2luY2x1ZGUgJChMT0NBTF9QQVRIKS9BbmRyb2lkLmJ1aWxkLnRlc3RsaWIubWsKZGlmZiAtLWdpdCBhL3Rlc3RzL2xpYnMvYXRleGl0X3Rlc3RsaWIuY3BwIGIvdGVzdHMvbGlicy9hdGV4aXRfdGVzdGxpYi5jcHAKaW5kZXggZDM1ZjU3Yi4uMzE0ZThkZSAxMDA2NDQKLS0tIGEvdGVzdHMvbGlicy9hdGV4aXRfdGVzdGxpYi5jcHAKKysrIGIvdGVzdHMvbGlicy9hdGV4aXRfdGVzdGxpYi5jcHAKQEAgLTE5LDEyICsxOSwxOSBAQAogI2luY2x1ZGUgPHN0cmluZz4KIAogLy8gdXNlIGV4dGVybmFsIGNvbnRyb2wgbnVtYmVyIGZyb20gbWFpbiB0ZXN0Ci1zdGF0aWMgc3RkOjpzdHJpbmcqIGF0ZXhpdF9zZXF1ZW5jZSA9IE5VTEw7Ci1zdGF0aWMgYm9vbCogYXRleGl0X3ZhbGlkX3RoaXNfaW5fc3RhdGljX2R0b3IgPSBOVUxMOworc3RhdGljIHN0ZDo6c3RyaW5nKiBhdGV4aXRfc2VxdWVuY2UgPSBudWxscHRyOworc3RhdGljIGJvb2wqIGF0ZXhpdF92YWxpZF90aGlzX2luX3N0YXRpY19kdG9yID0gbnVsbHB0cjsKK3N0YXRpYyBib29sKiBhdGV4aXRfYXR0cl9kdG9yX2NhbGxlZCA9IG51bGxwdHI7CisKK3N0YXRpYyBpbnQgY3h4X2N0b3JfY2FsbGVkID0gMDsKK3N0YXRpYyBpbnQgYXR0cl9jdG9yX2NhbGxlZCA9IDA7CiAKIHN0YXRpYyBjbGFzcyBBdEV4aXRTdGF0aWNDbGFzcyB7CiAgcHVibGljOgotICBBdEV4aXRTdGF0aWNDbGFzcygpIHsgZXhwZWN0ZWRfdGhpcyA9IHRoaXM7IH0KKyAgQXRFeGl0U3RhdGljQ2xhc3MoKSB7CisgICAgZXhwZWN0ZWRfdGhpcyA9IHRoaXM7CisgICAgY3h4X2N0b3JfY2FsbGVkID0gMTsKKyAgfQogICB+QXRFeGl0U3RhdGljQ2xhc3MoKSB7CiAgICAgaWYgKGF0ZXhpdF92YWxpZF90aGlzX2luX3N0YXRpY19kdG9yKSB7CiAgICAgICAqYXRleGl0X3ZhbGlkX3RoaXNfaW5fc3RhdGljX2R0b3IgPSAoZXhwZWN0ZWRfdGhpcyA9PSB0aGlzKTsKQEAgLTM1LDcgKzQyLDcgQEAKIAogfSBzdGF0aWNfb2JqOwogCi1jb25zdCBBdEV4aXRTdGF0aWNDbGFzcyogQXRFeGl0U3RhdGljQ2xhc3M6OmV4cGVjdGVkX3RoaXMgPSBOVUxMOworY29uc3QgQXRFeGl0U3RhdGljQ2xhc3MqIEF0RXhpdFN0YXRpY0NsYXNzOjpleHBlY3RlZF90aGlzID0gbnVsbHB0cjsKIAogLy8gNAogc3RhdGljIHZvaWQgYXRleGl0X2hhbmRsZXJfZnJvbV9hdGV4aXRfZnJvbV9hdGV4aXQyKCkgewpAQCAtNjYsMTAgKzczLDMwIEBACiAgICphdGV4aXRfc2VxdWVuY2UgKz0gIiBhIHdhbGwiOwogfQogCi1leHRlcm4gIkMiIHZvaWQgcmVnaXN0ZXJfYXRleGl0KHN0ZDo6c3RyaW5nKiBzZXF1ZW5jZSwgYm9vbCogdmFsaWRfdGhpc19pbl9zdGF0aWNfZHRvcikgeworLy8gYXR0cmlidXRlIGMtdG9yIGFuZCBkLXRvcgorc3RhdGljIHZvaWQgX19hdHRyaWJ1dGVfXygoY29uc3RydWN0b3IpKSBhdGV4aXRfYXR0cl9jdG9yKCkgeworICBhdHRyX2N0b3JfY2FsbGVkID0gMTsKK30KKworc3RhdGljIHZvaWQgX19hdHRyaWJ1dGVfXygoZGVzdHJ1Y3RvcikpIGF0ZXhpdF9hdHRyX2R0b3IoKSB7CisgIGlmIChhdGV4aXRfYXR0cl9kdG9yX2NhbGxlZCkgeworICAgICphdGV4aXRfYXR0cl9kdG9yX2NhbGxlZCA9IHRydWU7CisgIH0KK30KKworZXh0ZXJuICJDIiB2b2lkIHJlZ2lzdGVyX2F0ZXhpdChzdGQ6OnN0cmluZyogc2VxdWVuY2UsIGJvb2wqIHZhbGlkX3RoaXNfaW5fc3RhdGljX2R0b3IsIGJvb2wqIGF0dHJfZHRvcl9jYWxsZWQpIHsKICAgYXRleGl0X3NlcXVlbmNlID0gc2VxdWVuY2U7CiAgIGF0ZXhpdF92YWxpZF90aGlzX2luX3N0YXRpY19kdG9yID0gdmFsaWRfdGhpc19pbl9zdGF0aWNfZHRvcjsKKyAgYXRleGl0X2F0dHJfZHRvcl9jYWxsZWQgPSBhdHRyX2R0b3JfY2FsbGVkOwogICBhdGV4aXQoYXRleGl0X2hhbmRsZXJfcmVndWxhcik7CiAgIGF0ZXhpdChhdGV4aXRfaGFuZGxlcl93aXRoX2F0ZXhpdCk7CiB9CiAKK2V4dGVybiAiQyIgaW50IGdldF9jeHhfY3Rvcl9jYWxsZWQoKSB7CisgIHJldHVybiBjeHhfY3Rvcl9jYWxsZWQ7Cit9CisKK2V4dGVybiAiQyIgaW50IGdldF9hdHRyX2N0b3JfY2FsbGVkKCkgeworICByZXR1cm4gYXR0cl9jdG9yX2NhbGxlZDsKK30KKwpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9kbF9kZl8xX2dsb2JhbC5jcHAgYi90ZXN0cy9saWJzL2RsX2RmXzFfZ2xvYmFsLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zOTg1NmZkCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy9kbF9kZl8xX2dsb2JhbC5jcHAKQEAgLTAsMCArMSwxOSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK2V4dGVybiAiQyIgaW50IGRsX2RmXzFfZ2xvYmFsX2dldF9hbnN3ZXJfaW1wbCgpIHsKKyAgcmV0dXJuIDQyOworfQpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9kbF9kZl8xX3VzZV9nbG9iYWwuY3BwIGIvdGVzdHMvbGlicy9kbF9kZl8xX3VzZV9nbG9iYWwuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUxNDkxMGQKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9saWJzL2RsX2RmXzFfdXNlX2dsb2JhbC5jcHAKQEAgLTAsMCArMSwyMyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK2V4dGVybiAiQyIgaW50IF9fYXR0cmlidXRlX18oKHdlYWspKSBkbF9kZl8xX2dsb2JhbF9nZXRfYW5zd2VyX2ltcGwoKSB7CisgIHJldHVybiAwOworfQorCitleHRlcm4gIkMiIGludCBkbF9kZl8xX2dsb2JhbF9nZXRfYW5zd2VyKCkgeworICByZXR1cm4gZGxfZGZfMV9nbG9iYWxfZ2V0X2Fuc3dlcl9pbXBsKCk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL2RsX3ByZWVtcHRfbGlicmFyeV8xLmNwcCBiL3Rlc3RzL2xpYnMvZGxfcHJlZW1wdF9saWJyYXJ5XzEuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0ZDgxZDUKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9saWJzL2RsX3ByZWVtcHRfbGlicmFyeV8xLmNwcApAQCAtMCwwICsxLDQ1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworLy8gVGhpcyBvbmUgc2hvdWxkIGJlIHByZWVtcHRlZCBieSB0aGUgZnVuY3Rpb24KKy8vIGRlZmluZWQgaW4gdGhlIG1haW4gZXhlY3V0YWJsZS4KK2V4dGVybiAiQyIgaW50IF9fYXR0cmlidXRlX18oKHdlYWspKSBtYWluX2dsb2JhbF9kZWZhdWx0X3NlcmlhbCgpIHsKKyAgcmV0dXJuIDI3MTYwNTc7Cit9CisKKy8vIEV2ZW4gdGhvdWdoIHRoaXMgb25lIGlzIGRlZmluZWQgYnkgdGhlIG1haW4KKy8vIGV4ZWN1dGFibGUgaXQgc2hvdWxkIG5vdCBiZSBwcmVlbXB0ZWQKKy8vIGJlY2F1c2Ugb2YgcHJvdGVjdGVkIHZpc2liaWxpdHkKK2V4dGVybiAiQyIgaW50IF9fYXR0cmlidXRlX18oKHdlYWssIHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSkgbWFpbl9nbG9iYWxfcHJvdGVjdGVkX3NlcmlhbCgpIHsKKyAgcmV0dXJuIDMzNzAzMTg7Cit9CisKK2V4dGVybiAiQyIgaW50IG1haW5fZ2xvYmFsX2RlZmF1bHRfZ2V0X3NlcmlhbCgpIHsKKyAgcmV0dXJuIG1haW5fZ2xvYmFsX2RlZmF1bHRfc2VyaWFsKCk7Cit9CisKK2V4dGVybiAiQyIgaW50IG1haW5fZ2xvYmFsX3Byb3RlY3RlZF9nZXRfc2VyaWFsKCkgeworICByZXR1cm4gbWFpbl9nbG9iYWxfcHJvdGVjdGVkX3NlcmlhbCgpOworfQorCisvLyBUcnlpbmcgdG8gcHJlZW1wdCBmdW5jdGlvbnMgZnJvbSBhIERUX05FRURFRCAuc28KK2V4dGVybiAiQyIgaW50IGxpYl9nbG9iYWxfZGVmYXVsdF9zZXJpYWwoKSB7CisgIHJldHVybiAzMzcwMzE4OworfQorCitleHRlcm4gIkMiIGludCBsaWJfZ2xvYmFsX3Byb3RlY3RlZF9zZXJpYWwoKSB7CisgIHJldHVybiAyNzE2MDU3OworfQpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9kbF9wcmVlbXB0X2xpYnJhcnlfMi5jcHAgYi90ZXN0cy9saWJzL2RsX3ByZWVtcHRfbGlicmFyeV8yLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZGY5YTE2Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy9kbF9wcmVlbXB0X2xpYnJhcnlfMi5jcHAKQEAgLTAsMCArMSwzNyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKy8vIFRoaXMgb25lIHNob3VsZCBiZSBwcmVlbXB0ZWQgYnkgdGhlIGZ1bmN0aW9uCisvLyBkZWZpbmVkIGluIGxpYmRsX3ByZWVtcHRfdGVzdF8xLnNvCitleHRlcm4gIkMiIGludCBfX2F0dHJpYnV0ZV9fKCh3ZWFrKSkgbGliX2dsb2JhbF9kZWZhdWx0X3NlcmlhbCgpIHsKKyAgcmV0dXJuIDI3MTYwNTc7Cit9CisKKy8vIEV2ZW4gdGhvdWdoIHRoaXMgb25lIGlzIGRlZmluZWQgYnkKKy8vIGxpYmRsX3ByZWVtcHRfdGVzdF8xLnNvIGl0IHNob3VsZCBub3QgYmUKKy8vIHByZWVtcHRlZCBiZWNhdXNlIG9mIHByb3RlY3RlZCB2aXNpYmlsaXR5CitleHRlcm4gIkMiIGludCBfX2F0dHJpYnV0ZV9fKCh3ZWFrLHZpc2liaWxpdHkoInByb3RlY3RlZCIpKSkgbGliX2dsb2JhbF9wcm90ZWN0ZWRfc2VyaWFsKCkgeworICByZXR1cm4gMzM3MDMxODsKK30KKworZXh0ZXJuICJDIiBpbnQgbGliX2dsb2JhbF9kZWZhdWx0X2dldF9zZXJpYWwoKSB7CisgIHJldHVybiBsaWJfZ2xvYmFsX2RlZmF1bHRfc2VyaWFsKCk7Cit9CisKK2V4dGVybiAiQyIgaW50IGxpYl9nbG9iYWxfcHJvdGVjdGVkX2dldF9zZXJpYWwoKSB7CisgIHJldHVybiBsaWJfZ2xvYmFsX3Byb3RlY3RlZF9zZXJpYWwoKTsKK30KKwpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9kbG9wZW5fMl9wYXJlbnRzX3JlbG9jX2Fuc3dlci5jcHAgYi90ZXN0cy9saWJzL2Rsb3Blbl8yX3BhcmVudHNfcmVsb2NfYW5zd2VyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMzY2NzBiCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy9kbG9wZW5fMl9wYXJlbnRzX3JlbG9jX2Fuc3dlci5jcHAKQEAgLTAsMCArMSwyMyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK2V4dGVybiAiQyIgaW50IF9fYXR0cmlidXRlX18oKHdlYWspKSBjaGVja19vcmRlcl9yZWxvY19nZXRfYW5zd2VyX2ltcGwoKSB7CisgIHJldHVybiAwOworfQorCitleHRlcm4gIkMiIGludCBjaGVja19vcmRlcl9yZWxvY19nZXRfYW5zd2VyKCkgeworICByZXR1cm4gY2hlY2tfb3JkZXJfcmVsb2NfZ2V0X2Fuc3dlcl9pbXBsKCk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL2Rsb3Blbl9jaGVja19vcmRlcl9kbHN5bV9hbnN3ZXIuY3BwIGIvdGVzdHMvbGlicy9kbG9wZW5fY2hlY2tfb3JkZXJfZGxzeW1fYW5zd2VyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yYWU2Y2Y3Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy9kbG9wZW5fY2hlY2tfb3JkZXJfZGxzeW1fYW5zd2VyLmNwcApAQCAtMCwwICsxLDI1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworZXh0ZXJuICJDIiBpbnQgY2hlY2tfb3JkZXJfZGxzeW1fZ2V0X2Fuc3dlcigpIHsKKyAgcmV0dXJuIF9fQU5TV0VSOworfQorCisjaWZkZWYgX19BTlNXRVIyCitleHRlcm4gIkMiIGludCBjaGVja19vcmRlcl9kbHN5bV9nZXRfYW5zd2VyMigpIHsKKyAgcmV0dXJuIF9fQU5TV0VSMjsKK30KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9kbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2NfYW5zd2VyLmNwcCBiL3Rlc3RzL2xpYnMvZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX2Fuc3dlci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDM2NjcwYgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2xpYnMvZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX2Fuc3dlci5jcHAKQEAgLTAsMCArMSwyMyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK2V4dGVybiAiQyIgaW50IF9fYXR0cmlidXRlX18oKHdlYWspKSBjaGVja19vcmRlcl9yZWxvY19nZXRfYW5zd2VyX2ltcGwoKSB7CisgIHJldHVybiAwOworfQorCitleHRlcm4gIkMiIGludCBjaGVja19vcmRlcl9yZWxvY19nZXRfYW5zd2VyKCkgeworICByZXR1cm4gY2hlY2tfb3JkZXJfcmVsb2NfZ2V0X2Fuc3dlcl9pbXBsKCk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL2Rsb3Blbl9jaGVja19vcmRlcl9yZWxvY19hbnN3ZXJfaW1wbC5jcHAgYi90ZXN0cy9saWJzL2Rsb3Blbl9jaGVja19vcmRlcl9yZWxvY19hbnN3ZXJfaW1wbC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzI0YjkwNQotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2xpYnMvZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX2Fuc3dlcl9pbXBsLmNwcApAQCAtMCwwICsxLDE5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworZXh0ZXJuICJDIiBpbnQgY2hlY2tfb3JkZXJfcmVsb2NfZ2V0X2Fuc3dlcl9pbXBsKCkgeworICByZXR1cm4gX19BTlNXRVI7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL2Rsb3Blbl9jaGVja19vcmRlcl9yZWxvY19ncmFuZGNoaWxkX2Fuc3dlci5jcHAgYi90ZXN0cy9saWJzL2Rsb3Blbl9jaGVja19vcmRlcl9yZWxvY19ncmFuZGNoaWxkX2Fuc3dlci5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWZiNWYyYwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2xpYnMvZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX2dyYW5kY2hpbGRfYW5zd2VyLmNwcApAQCAtMCwwICsxLDIyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworZXh0ZXJuICJDIiBpbnQgY2hlY2tfb3JkZXJfcmVsb2NfZ3JhbmRjaGlsZF9nZXRfYW5zd2VyX2ltcGwoKTsKKworZXh0ZXJuICJDIiBpbnQgY2hlY2tfb3JkZXJfcmVsb2NfZ3JhbmRjaGlsZF9nZXRfYW5zd2VyKCkgeworICByZXR1cm4gY2hlY2tfb3JkZXJfcmVsb2NfZ3JhbmRjaGlsZF9nZXRfYW5zd2VyX2ltcGwoKTsKK30KKwpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9kbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2NfZ3JhbmRjaGlsZF9hbnN3ZXJfaW1wbC5jcHAgYi90ZXN0cy9saWJzL2Rsb3Blbl9jaGVja19vcmRlcl9yZWxvY19ncmFuZGNoaWxkX2Fuc3dlcl9pbXBsLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMmQyYjI0Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy9kbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2NfZ3JhbmRjaGlsZF9hbnN3ZXJfaW1wbC5jcHAKQEAgLTAsMCArMSwxOSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK2V4dGVybiAiQyIgaW50IGNoZWNrX29yZGVyX3JlbG9jX2dyYW5kY2hpbGRfZ2V0X2Fuc3dlcl9pbXBsKCkgeworICByZXR1cm4gX19BTlNXRVI7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL2Rsb3Blbl9jaGVja19vcmRlcl9yZWxvY19uZXBoZXdfYW5zd2VyLmNwcCBiL3Rlc3RzL2xpYnMvZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX25lcGhld19hbnN3ZXIuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ2ZDFmMDkKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9saWJzL2Rsb3Blbl9jaGVja19vcmRlcl9yZWxvY19uZXBoZXdfYW5zd2VyLmNwcApAQCAtMCwwICsxLDM3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworZXh0ZXJuICJDIiBpbnQgY2hlY2tfb3JkZXJfcmVsb2NfZ2V0X2Fuc3dlcl9pbXBsKCk7CisKK2V4dGVybiAiQyIgaW50IGNoZWNrX29yZGVyX3JlbG9jX25lcGhld19nZXRfYW5zd2VyKCkgeworICByZXR1cm4gY2hlY2tfb3JkZXJfcmVsb2NfZ2V0X2Fuc3dlcl9pbXBsKCk7Cit9CisKK25hbWVzcGFjZSB7CisvLyBUaGUgZC10b3IgZm9yIHRoaXMgY2xhc3MgaXMgY2FsbGVkIG9uIGRsY2xvc2UoKSAtPiBfX29uX2RsY2xvc2UoKSAtPiBfX2N4YV9maW5hbGl6ZSgpCisvLyBXZSB1c2UgaXQgdG8gZGV0ZWN0IGNhbGxzIHRvIHByZW1hdHVyZWx5IHVubWFwcGVkIGxpYnJhcmllcyBkdXJpbmcgZGxjbG9zZS4KKy8vIFNlZSBhbHNvIGIvMTgzMzg4ODgKK2NsYXNzIENhbGxOZXBoZXdJbkR0b3IgeworIHB1YmxpYzoKKyAgfkNhbGxOZXBoZXdJbkR0b3IoKSB7CisgICAgY2hlY2tfb3JkZXJfcmVsb2NfZ2V0X2Fuc3dlcl9pbXBsKCk7CisgIH0KK30gaW5zdGFuY2U7Cit9OworCitleHRlcm4gIkMiIHZvaWQqIGdldF9pbnN0YW5jZSgpIHsKKyAgcmV0dXJuICZpbnN0YW5jZTsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL2xpYnMvZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX3Jvb3RfYW5zd2VyLmNwcCBiL3Rlc3RzL2xpYnMvZGxvcGVuX2NoZWNrX29yZGVyX3JlbG9jX3Jvb3RfYW5zd2VyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMjFhYmQ3Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy9kbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2Nfcm9vdF9hbnN3ZXIuY3BwCkBAIC0wLDAgKzEsMjEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitleHRlcm4gIkMiIGludCBjaGVja19vcmRlcl9yZWxvY19yb290X2dldF9hbnN3ZXJfaW1wbCgpOworCitleHRlcm4gIkMiIGludCBjaGVja19vcmRlcl9yZWxvY19yb290X2dldF9hbnN3ZXIoKSB7CisgIHJldHVybiBjaGVja19vcmRlcl9yZWxvY19yb290X2dldF9hbnN3ZXJfaW1wbCgpOworfQpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9kbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2Nfcm9vdF9hbnN3ZXJfaW1wbC5jcHAgYi90ZXN0cy9saWJzL2Rsb3Blbl9jaGVja19vcmRlcl9yZWxvY19yb290X2Fuc3dlcl9pbXBsLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNWZiOWFjCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy9kbG9wZW5fY2hlY2tfb3JkZXJfcmVsb2Nfcm9vdF9hbnN3ZXJfaW1wbC5jcHAKQEAgLTAsMCArMSwxOSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK2V4dGVybiAiQyIgaW50IGNoZWNrX29yZGVyX3JlbG9jX3Jvb3RfZ2V0X2Fuc3dlcl9pbXBsKCkgeworICByZXR1cm4gX19BTlNXRVI7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL2Rsb3Blbl9ub2RlbGV0ZV8xLmNwcCBiL3Rlc3RzL2xpYnMvZGxvcGVuX25vZGVsZXRlXzEuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk0Mzg5NzgKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9saWJzL2Rsb3Blbl9ub2RlbGV0ZV8xLmNwcApAQCAtMCwwICsxLDMxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorCit1aW50MzJfdCBkbG9wZW5fbm9kZWxldGVfMV90YXhpY2FiX251bWJlciA9IDE3Mjk7CitzdGF0aWMgYm9vbCogdW5sb2FkX2ZsYWdfcHRyID0gbnVsbHB0cjsKKworZXh0ZXJuICJDIiB2b2lkIGRsb3Blbl9ub2RlbGV0ZV8xX3NldF91bmxvYWRfZmxhZ19wdHIoYm9vbCogcHRyKSB7CisgIHVubG9hZF9mbGFnX3B0ciA9IHB0cjsKK30KKworc3RhdGljIHZvaWQgX19hdHRyaWJ1dGVfXygoZGVzdHJ1Y3RvcikpIHVubG9hZF9ndWFyZCgpIHsKKyAgaWYgKHVubG9hZF9mbGFnX3B0ciAhPSBudWxscHRyKSB7CisgICAgKnVubG9hZF9mbGFnX3B0ciA9IHRydWU7CisgIH0KK30KZGlmZiAtLWdpdCBhL3Rlc3RzL2xpYnMvZGxvcGVuX25vZGVsZXRlXzIuY3BwIGIvdGVzdHMvbGlicy9kbG9wZW5fbm9kZWxldGVfMi5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjVhYjVjMQotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2xpYnMvZGxvcGVuX25vZGVsZXRlXzIuY3BwCkBAIC0wLDAgKzEsMzEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8c3RkaW50Lmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKK3VpbnQzMl90IGRsb3Blbl9ub2RlbGV0ZV8yX3RheGljYWJfbnVtYmVyID0gMTcyOTsKK3N0YXRpYyBib29sKiB1bmxvYWRfZmxhZ19wdHIgPSBudWxscHRyOworCitleHRlcm4gIkMiIHZvaWQgZGxvcGVuX25vZGVsZXRlXzJfc2V0X3VubG9hZF9mbGFnX3B0cihib29sKiBwdHIpIHsKKyAgdW5sb2FkX2ZsYWdfcHRyID0gcHRyOworfQorCitzdGF0aWMgdm9pZCBfX2F0dHJpYnV0ZV9fKChkZXN0cnVjdG9yKSkgdW5sb2FkX2d1YXJkKCkgeworICBpZiAodW5sb2FkX2ZsYWdfcHRyICE9IG51bGxwdHIpIHsKKyAgICAqdW5sb2FkX2ZsYWdfcHRyID0gdHJ1ZTsKKyAgfQorfQpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9kbG9wZW5fbm9kZWxldGVfZHRfZmxhZ3NfMS5jcHAgYi90ZXN0cy9saWJzL2Rsb3Blbl9ub2RlbGV0ZV9kdF9mbGFnc18xLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zOWMwYTdlCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy9kbG9wZW5fbm9kZWxldGVfZHRfZmxhZ3NfMS5jcHAKQEAgLTAsMCArMSwzMCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworc3RhdGljIGJvb2wqIHVubG9hZF9mbGFnX3B0ciA9IG51bGxwdHI7CisKK2V4dGVybiAiQyIgdm9pZCBkbG9wZW5fbm9kZWxldGVfZHRfZmxhZ3NfMV9zZXRfdW5sb2FkX2ZsYWdfcHRyKGJvb2wqIHB0cikgeworICB1bmxvYWRfZmxhZ19wdHIgPSBwdHI7Cit9CisKK3N0YXRpYyB2b2lkIF9fYXR0cmlidXRlX18oKGRlc3RydWN0b3IpKSB1bmxvYWRfZ3VhcmQoKSB7CisgIGlmICh1bmxvYWRfZmxhZ19wdHIgIT0gbnVsbHB0cikgeworICAgICp1bmxvYWRfZmxhZ19wdHIgPSB0cnVlOworICB9Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX2Fuc3dlci5jcHAgYi90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX2Fuc3dlci5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGE0ZDc1MDQuLjAwMDAwMDAKLS0tIGEvdGVzdHMvbGlicy9kbG9wZW5fdGVzdGxpYl9hbnN3ZXIuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMjUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKgotICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7Ci0gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCi0gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKLSAqCi0gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAotICoKLSAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKLSAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCi0gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KLSAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKLSAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICovCi0KLWV4dGVybiAiQyIgaW50IGRsb3Blbl90ZXN0X2dldF9hbnN3ZXIoKSB7Ci0gIHJldHVybiBfX0FOU1dFUjsKLX0KLQotI2lmZGVmIF9fQU5TV0VSMgotZXh0ZXJuICJDIiBpbnQgZGxvcGVuX3Rlc3RfZ2V0X2Fuc3dlcjIoKSB7Ci0gIHJldHVybiBfX0FOU1dFUjI7Ci19Ci0jZW5kaWYKZGlmZiAtLWdpdCBhL3Rlc3RzL2xpYnMvZGxvcGVuX3Rlc3RsaWJfZGxvcGVuX2Zyb21fY3Rvci5jcHAgYi90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX2Rsb3Blbl9mcm9tX2N0b3IuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk1MjMzZjcKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX2Rsb3Blbl9mcm9tX2N0b3IuY3BwCkBAIC0wLDAgKzEsMjMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8ZGxmY24uaD4KKworc3RhdGljIHZvaWQgX19hdHRyaWJ1dGVfXygoY29uc3RydWN0b3IpKSBjYWxsX2Rsb3Blbl9mcm9tX2N0b3IoKSB7CisgIHZvaWQqIGhhbmRsZSA9IGRsb3BlbigibGliYy5zbyIsIFJUTERfTk9XKTsKKyAgZGxjbG9zZShoYW5kbGUpOworfQorCmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX2ludmFsaWQuY3BwIGIvdGVzdHMvbGlicy9kbG9wZW5fdGVzdGxpYl9pbnZhbGlkLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjIwMzljNi4uMDAwMDAwMAotLS0gYS90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX2ludmFsaWQuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMjQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKgotICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7Ci0gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCi0gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKLSAqCi0gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAotICoKLSAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKLSAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCi0gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KLSAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKLSAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICovCi0KLSNpbmNsdWRlIDxzdGRsaWIuaD4KLQotLy8gVGhpcyBmaWxlIGlzIHVzZWQgZm9yIGxpYnJhcmllcyB0aGF0IGFyZSBub3Qgc3VwcG9zZWQgdG8KLS8vIGJlIHN1Y2Nlc3NmdWxseSBsb2FkZWQvbGlua2VkIC0gdGhlcmVmb3JlLCB0aGlzIGZ1bmN0aW9uIHNob3VsZAotLy8gbm90IGJlIHZpc2libGUgdmlhIGRsc3ltIC0gKHdlIGFyZSBnb2luZyB0byB1c2UgdGhpcyBmYWN0IGluIHRlc3RzKQotZXh0ZXJuICJDIiBpbnQgZGxvcGVuX3Rlc3RfaW52YWxpZF9mdW5jdGlvbigpIHsKLSAgYWJvcnQoKTsKLX0KZGlmZiAtLWdpdCBhL3Rlc3RzL2xpYnMvZGxvcGVuX3Rlc3RsaWJfbG9vcHlfYS5jcHAgYi90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX2xvb3B5X2EuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRjMDg3NjQKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX2xvb3B5X2EuY3BwCkBAIC0wLDAgKzEsMjUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8c3RkbGliLmg+CisKK2V4dGVybiAiQyIgYm9vbCBfX2F0dHJpYnV0ZV9fKCh3ZWFrKSkgZGxvcGVuX3Rlc3RfbG9vcHlfZnVuY3Rpb25faW1wbCgpIHsKKyAgcmV0dXJuIGZhbHNlOworfQorCitleHRlcm4gIkMiIGJvb2wgZGxvcGVuX3Rlc3RfbG9vcHlfZnVuY3Rpb24oKSB7CisgIHJldHVybiBkbG9wZW5fdGVzdF9sb29weV9mdW5jdGlvbl9pbXBsKCk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX2xvb3B5X2IuY3BwIGIvdGVzdHMvbGlicy9kbG9wZW5fdGVzdGxpYl9sb29weV9iLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMWRjZGE5Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy9kbG9wZW5fdGVzdGxpYl9sb29weV9iLmNwcApAQCAtMCwwICsxLDIxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPHN0ZGxpYi5oPgorCitleHRlcm4gIkMiIGJvb2wgZGxvcGVuX3Rlc3RfbG9vcHlfZnVuY3Rpb25faW1wbCgpIHsKKyAgcmV0dXJuIGZhbHNlOworfQpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9kbG9wZW5fdGVzdGxpYl9sb29weV9jLmNwcCBiL3Rlc3RzL2xpYnMvZGxvcGVuX3Rlc3RsaWJfbG9vcHlfYy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDFkY2RhOQotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2xpYnMvZGxvcGVuX3Rlc3RsaWJfbG9vcHlfYy5jcHAKQEAgLTAsMCArMSwyMSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworZXh0ZXJuICJDIiBib29sIGRsb3Blbl90ZXN0X2xvb3B5X2Z1bmN0aW9uX2ltcGwoKSB7CisgIHJldHVybiBmYWxzZTsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL2xpYnMvZGxvcGVuX3Rlc3RsaWJfbG9vcHlfaW52YWxpZC5jcHAgYi90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX2xvb3B5X2ludmFsaWQuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVhYTExZjgKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX2xvb3B5X2ludmFsaWQuY3BwCkBAIC0wLDAgKzEsMjMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8c3RkbGliLmg+CisKKy8vIFRoaXMgbGlicmFyeSBzaG91bGQgbmV2ZXIgYmUgbG9hZGVkCitzdGF0aWMgdm9pZCBfX2F0dHJpYnV0ZV9fKChjb25zdHJ1Y3RvcikpIHBhbmljKCkgeworICBhYm9ydCgpOworfQorCmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX2xvb3B5X3Jvb3QuY3BwIGIvdGVzdHMvbGlicy9kbG9wZW5fdGVzdGxpYl9sb29weV9yb290LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jOTQ1OWYwCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy9kbG9wZW5fdGVzdGxpYl9sb29weV9yb290LmNwcApAQCAtMCwwICsxLDIxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPHN0ZGxpYi5oPgorCitleHRlcm4gIkMiIGJvb2wgZGxvcGVuX3Rlc3RfbG9vcHlfZnVuY3Rpb25faW1wbCgpIHsKKyAgcmV0dXJuIHRydWU7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX3NpbXBsZS5jcHAgYi90ZXN0cy9saWJzL2Rsb3Blbl90ZXN0bGliX3NpbXBsZS5jcHAKaW5kZXggYmY3NTBiMi4uMzIyNjk1NSAxMDA2NDQKLS0tIGEvdGVzdHMvbGlicy9kbG9wZW5fdGVzdGxpYl9zaW1wbGUuY3BwCisrKyBiL3Rlc3RzL2xpYnMvZGxvcGVuX3Rlc3RsaWJfc2ltcGxlLmNwcApAQCAtMTksNiArMTksNiBAQAogCiB1aW50MzJfdCBkbG9wZW5fdGVzdGxpYl90YXhpY2FiX251bWJlciA9IDE3Mjk7CiAKLWJvb2wgZGxvcGVuX3Rlc3RsaWJfc2ltcGxlX2Z1bmMoKSB7CitleHRlcm4gIkMiIGJvb2wgZGxvcGVuX3Rlc3RsaWJfc2ltcGxlX2Z1bmMoKSB7CiAgIHJldHVybiB0cnVlOwogfQpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy9kbG9wZW5fd2Vha191bmRlZmluZWQuY3BwIGIvdGVzdHMvbGlicy9kbG9wZW5fd2Vha191bmRlZmluZWQuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU5OWE1MmUKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9saWJzL2Rsb3Blbl93ZWFrX3VuZGVmaW5lZC5jcHAKQEAgLTAsMCArMSwyNSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK2V4dGVybiAiQyIgaW50IF9fYXR0cmlidXRlX18oKHdlYWspKSB3ZWFrX3VuZGVmaW5lZF9mdW5jKCk7CisKK2V4dGVybiAiQyIgaW50IHVzZV93ZWFrX3VuZGVmaW5lZF9mdW5jKCkgeworICBpZiAod2Vha191bmRlZmluZWRfZnVuYykgeworICAgIHJldHVybiB3ZWFrX3VuZGVmaW5lZF9mdW5jKCk7CisgIH0gZWxzZSB7CisgICAgcmV0dXJuIDY1NTE7CisgIH0KK30KZGlmZiAtLWdpdCBhL3Rlc3RzL2xpYnMvZGxzeW1fZnJvbV90aGlzLmNwcCBiL3Rlc3RzL2xpYnMvZGxzeW1fZnJvbV90aGlzLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNTIxNWM5Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy9kbHN5bV9mcm9tX3RoaXMuY3BwCkBAIC0wLDAgKzEsMzAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworI2luY2x1ZGUgPGRsZmNuLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworaW50IHRlc3RfZGxzeW1fc3ltYm9sID0gNDI7CisKK2V4dGVybiAiQyIgaW50KiBsb29rdXBfZGxzeW1fc3ltYm9sX3VzaW5nX1JUTERfREVGQVVMVCgpIHsKKyAgZGxlcnJvcigpOworICBpbnQqIHJlc3VsdCA9IHN0YXRpY19jYXN0PGludCo+KGRsc3ltKFJUTERfREVGQVVMVCwgInRlc3RfZGxzeW1fc3ltYm9sIikpOworICAvLyBUT0RPOiByZW1vdmUgdGhpcyBvbmNlIGIvMjAwNDkzMDYgaXMgZml4ZWQKKyAgaWYgKHJlc3VsdCA9PSBudWxscHRyKSB7CisgICAgcHJpbnRmKCJDYW5ub3QgZmluZCB0aGUgYW5zd2VyXG4iKTsKKyAgfQorICByZXR1cm4gcmVzdWx0OworfQorCmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL3B0aHJlYWRfYXRmb3JrLmNwcCBiL3Rlc3RzL2xpYnMvcHRocmVhZF9hdGZvcmsuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNhNWFhNGYKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9saWJzL3B0aHJlYWRfYXRmb3JrLmNwcApAQCAtMCwwICsxLDIxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPHB0aHJlYWQuaD4KKworZXh0ZXJuICJDIiBpbnQgcHJveHlfcHRocmVhZF9hdGZvcmsodm9pZCAoKnByZXBhcmUpKHZvaWQpLCB2b2lkICgqcGFyZW50KSh2b2lkKSwgdm9pZCAoKmNoaWxkKSh2b2lkKSkgeworICByZXR1cm4gcHRocmVhZF9hdGZvcmsocHJlcGFyZSwgcGFyZW50LCBjaGlsZCk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL3ZlcnNpb25lZF9saWJfb3RoZXIuY3BwIGIvdGVzdHMvbGlicy92ZXJzaW9uZWRfbGliX290aGVyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MGZhOTlhCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy92ZXJzaW9uZWRfbGliX290aGVyLmNwcApAQCAtMCwwICsxLDIxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworZXh0ZXJuICJDIiBpbnQgdmVyc2lvbmVkX2Z1bmN0aW9uX3YyKCkgeworICByZXR1cm4gMjA7Cit9CisKK19fYXNtX18oIi5zeW12ZXIgdmVyc2lvbmVkX2Z1bmN0aW9uX3YyLHZlcnNpb25lZF9mdW5jdGlvbkBAVEVTVExJQl9WMiIpOwpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy92ZXJzaW9uZWRfbGliX290aGVyLm1hcCBiL3Rlc3RzL2xpYnMvdmVyc2lvbmVkX2xpYl9vdGhlci5tYXAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzUyNjg2ZAotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2xpYnMvdmVyc2lvbmVkX2xpYl9vdGhlci5tYXAKQEAgLTAsMCArMSw5IEBACitURVNUTElCX1YwIHsKKyAgbG9jYWw6CisgICAgdmVyc2lvbmVkX2Z1bmN0aW9uX3YqOworfTsKKworVEVTVExJQl9WMiB7CisgIGdsb2JhbDoKKyAgICB2ZXJzaW9uZWRfZnVuY3Rpb247Cit9IFRFU1RMSUJfVjA7CmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL3ZlcnNpb25lZF9saWJfdjEuY3BwIGIvdGVzdHMvbGlicy92ZXJzaW9uZWRfbGliX3YxLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jODFjYmYxCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy92ZXJzaW9uZWRfbGliX3YxLmNwcApAQCAtMCwwICsxLDMwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworZXh0ZXJuICJDIiB7CisgIGludCB2ZXJzaW9uZWRfZnVuY3Rpb25fdjEoKTsgLy8gX19hdHRyaWJ1dGVfXygodmlzaWJpbGl0eSgiaGlkZGVuIikpKTsKKyAgaW50IHZlcnNpb25femVyb19mdW5jdGlvbigpOworfQorCitpbnQgdmVyc2lvbmVkX2Z1bmN0aW9uX3YxKCkgeworICByZXR1cm4gMTsKK30KKworaW50IHZlcnNpb25femVyb19mdW5jdGlvbigpIHsKKyAgcmV0dXJuIDEwMDsKK30KKworX19hc21fXygiLnN5bXZlciB2ZXJzaW9uZWRfZnVuY3Rpb25fdjEsdmVyc2lvbmVkX2Z1bmN0aW9uQEBURVNUTElCX1YxIik7CmRpZmYgLS1naXQgYS90ZXN0cy9saWJzL3ZlcnNpb25lZF9saWJfdjEubWFwIGIvdGVzdHMvbGlicy92ZXJzaW9uZWRfbGliX3YxLm1hcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYmRhMzI3Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbGlicy92ZXJzaW9uZWRfbGliX3YxLm1hcApAQCAtMCwwICsxLDEyIEBACitURVNUTElCX1YwIHsKKyAgZ2xvYmFsOgorICAgIHZlcnNpb25femVyb19mdW5jdGlvbjsKKyAgbG9jYWw6CisgICAgdmVyc2lvbmVkX2Z1bmN0aW9uX3YqOworfTsKKworVEVTVExJQl9WMSB7CisgIGdsb2JhbDoKKyAgICB2ZXJzaW9uZWRfZnVuY3Rpb247Cit9IFRFU1RMSUJfVjA7CisKZGlmZiAtLWdpdCBhL3Rlc3RzL2xpYnMvdmVyc2lvbmVkX2xpYl92Mi5jcHAgYi90ZXN0cy9saWJzL3ZlcnNpb25lZF9saWJfdjIuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ3ZDQxM2YKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9saWJzL3ZlcnNpb25lZF9saWJfdjIuY3BwCkBAIC0wLDAgKzEsMzUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitleHRlcm4gIkMiIHsKKyAgaW50IHZlcnNpb25lZF9mdW5jdGlvbl92MSgpOyAvLyBfX2F0dHJpYnV0ZV9fKCh2aXNpYmlsaXR5KCJoaWRkZW4iKSkpOworICBpbnQgdmVyc2lvbmVkX2Z1bmN0aW9uX3YyKCk7IC8vIF9fYXR0cmlidXRlX18oKHZpc2liaWxpdHkoImhpZGRlbiIpKSk7CisgIGludCB2ZXJzaW9uX3plcm9fZnVuY3Rpb24oKTsKK30KKworaW50IHZlcnNpb25lZF9mdW5jdGlvbl92MSgpIHsKKyAgcmV0dXJuIDE7Cit9CisKK2ludCB2ZXJzaW9uZWRfZnVuY3Rpb25fdjIoKSB7CisgIHJldHVybiAyOworfQorCitpbnQgdmVyc2lvbl96ZXJvX2Z1bmN0aW9uKCkgeworICByZXR1cm4gMjAwOworfQorX19hc21fXygiLnN5bXZlciB2ZXJzaW9uZWRfZnVuY3Rpb25fdjEsdmVyc2lvbmVkX2Z1bmN0aW9uQFRFU1RMSUJfVjEiKTsKK19fYXNtX18oIi5zeW12ZXIgdmVyc2lvbmVkX2Z1bmN0aW9uX3YyLHZlcnNpb25lZF9mdW5jdGlvbkBAVEVTVExJQl9WMiIpOwpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy92ZXJzaW9uZWRfbGliX3YyLm1hcCBiL3Rlc3RzL2xpYnMvdmVyc2lvbmVkX2xpYl92Mi5tYXAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmIzODEwMgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2xpYnMvdmVyc2lvbmVkX2xpYl92Mi5tYXAKQEAgLTAsMCArMSwxNiBAQAorVEVTVExJQl9WMCB7CisgIGdsb2JhbDoKKyAgICB2ZXJzaW9uX3plcm9fZnVuY3Rpb247CisgIGxvY2FsOgorICAgIHZlcnNpb25lZF9mdW5jdGlvbl92KjsKK307CisKK1RFU1RMSUJfVjEgeworICBnbG9iYWw6CisgICAgdmVyc2lvbmVkX2Z1bmN0aW9uOworfSBURVNUTElCX1YwOworCitURVNUTElCX1YyIHsKKyAgZ2xvYmFsOgorICAgIHZlcnNpb25lZF9mdW5jdGlvbjsKK30gVEVTVExJQl9WMTsKZGlmZiAtLWdpdCBhL3Rlc3RzL2xpYnMvdmVyc2lvbmVkX2xpYl92My5jcHAgYi90ZXN0cy9saWJzL3ZlcnNpb25lZF9saWJfdjMuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY0NzQwYTQKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9saWJzL3ZlcnNpb25lZF9saWJfdjMuY3BwCkBAIC0wLDAgKzEsNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitleHRlcm4gIkMiIHsKKyAgaW50IHZlcnNpb25lZF9mdW5jdGlvbl92MSgpOyAvLyBfX2F0dHJpYnV0ZV9fKCh2aXNpYmlsaXR5KCJoaWRkZW4iKSkpOworICBpbnQgdmVyc2lvbmVkX2Z1bmN0aW9uX3YyKCk7IC8vIF9fYXR0cmlidXRlX18oKHZpc2liaWxpdHkoImhpZGRlbiIpKSk7CisgIGludCB2ZXJzaW9uZWRfZnVuY3Rpb25fdjMoKTsgLy8gX19hdHRyaWJ1dGVfXygodmlzaWJpbGl0eSgiaGlkZGVuIikpKTsKKyAgaW50IHZlcnNpb25femVyb19mdW5jdGlvbigpOworfQorCitpbnQgdmVyc2lvbmVkX2Z1bmN0aW9uX3YxKCkgeworICByZXR1cm4gMTsKK30KKworaW50IHZlcnNpb25lZF9mdW5jdGlvbl92MigpIHsKKyAgcmV0dXJuIDI7Cit9CisKK2ludCB2ZXJzaW9uZWRfZnVuY3Rpb25fdjMoKSB7CisgIHJldHVybiAzOworfQorCitpbnQgdmVyc2lvbl96ZXJvX2Z1bmN0aW9uKCkgeworICByZXR1cm4gMTAwMDsKK30KKworX19hc21fXygiLnN5bXZlciB2ZXJzaW9uZWRfZnVuY3Rpb25fdjEsdmVyc2lvbmVkX2Z1bmN0aW9uQFRFU1RMSUJfVjEiKTsKK19fYXNtX18oIi5zeW12ZXIgdmVyc2lvbmVkX2Z1bmN0aW9uX3YyLHZlcnNpb25lZF9mdW5jdGlvbkBURVNUTElCX1YyIik7CitfX2FzbV9fKCIuc3ltdmVyIHZlcnNpb25lZF9mdW5jdGlvbl92Myx2ZXJzaW9uZWRfZnVuY3Rpb25AQFRFU1RMSUJfVjMiKTsKZGlmZiAtLWdpdCBhL3Rlc3RzL2xpYnMvdmVyc2lvbmVkX2xpYl92My5tYXAgYi90ZXN0cy9saWJzL3ZlcnNpb25lZF9saWJfdjMubWFwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjViMWNlNTkKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9saWJzL3ZlcnNpb25lZF9saWJfdjMubWFwCkBAIC0wLDAgKzEsMjEgQEAKK1RFU1RMSUJfVjAgeworICBnbG9iYWw6CisgICAgdmVyc2lvbl96ZXJvX2Z1bmN0aW9uOworICBsb2NhbDoKKyAgICB2ZXJzaW9uZWRfZnVuY3Rpb25fdio7Cit9OworCitURVNUTElCX1YxIHsKKyAgZ2xvYmFsOgorICAgIHZlcnNpb25lZF9mdW5jdGlvbjsKK30gVEVTVExJQl9WMDsKKworVEVTVExJQl9WMiB7CisgIGdsb2JhbDoKKyAgICB2ZXJzaW9uZWRfZnVuY3Rpb247Cit9IFRFU1RMSUJfVjE7CisKK1RFU1RMSUJfVjMgeworICBnbG9iYWw6CisgICAgdmVyc2lvbmVkX2Z1bmN0aW9uOworfSBURVNUTElCX1YyOwpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy92ZXJzaW9uZWRfdXNlbGliLmNwcCBiL3Rlc3RzL2xpYnMvdmVyc2lvbmVkX3VzZWxpYi5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTZlYjdjMwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2xpYnMvdmVyc2lvbmVkX3VzZWxpYi5jcHAKQEAgLTAsMCArMSwzMiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK2V4dGVybiAiQyIgeworICBpbnQgdmVyc2lvbmVkX2Z1bmN0aW9uKCk7CisKKyAgaW50IGdldF9mdW5jdGlvbl92ZXJzaW9uKCk7CisgIGludCB2ZXJzaW9uX3plcm9fZnVuY3Rpb24oKTsKKyAgaW50IHZlcnNpb25femVyb19mdW5jdGlvbjIoKSBfX2F0dHJpYnV0ZV9fKCh3ZWFrKSk7Cit9CisKK2ludCBnZXRfZnVuY3Rpb25fdmVyc2lvbigpIHsKKyAgcmV0dXJuIHZlcnNpb25femVyb19mdW5jdGlvbjIoKSArIHZlcnNpb25femVyb19mdW5jdGlvbigpICsgdmVyc2lvbmVkX2Z1bmN0aW9uKCk7Cit9CisKKy8vIHdlIGV4cGVjdCB0aGlzIGZ1bmN0aW9uIHRvIGJlIHByZWVtcHRlZCBieSBtYWluIGV4ZWN1dGFibGUuCitpbnQgdmVyc2lvbl96ZXJvX2Z1bmN0aW9uMigpIHsKKyAgcmV0dXJuIDQwMDAwOworfQpkaWZmIC0tZ2l0IGEvdGVzdHMvbGlicy92ZXJzaW9uZWRfdXNlbGliLm1hcCBiL3Rlc3RzL2xpYnMvdmVyc2lvbmVkX3VzZWxpYi5tYXAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTBiYzljZQotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL2xpYnMvdmVyc2lvbmVkX3VzZWxpYi5tYXAKQEAgLTAsMCArMSw5IEBACitURVNUTElCX05PTkUgeworICBnbG9iYWw6CisgICAgZ2V0X2Z1bmN0aW9uX3ZlcnNpb247Cit9OworCitURVNUTElCX1pFUk8geworICBnbG9iYWw6CisgICAgdmVyc2lvbl96ZXJvX2Z1bmN0aW9uMjsKK30gVEVTVExJQl9OT05FOwpkaWZmIC0tZ2l0IGEvdGVzdHMvbG9jYWxlX3Rlc3QuY3BwIGIvdGVzdHMvbG9jYWxlX3Rlc3QuY3BwCmluZGV4IDdlYzYwN2EuLmYzMDhhZjUgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2xvY2FsZV90ZXN0LmNwcAorKysgYi90ZXN0cy9sb2NhbGVfdGVzdC5jcHAKQEAgLTcxLDIwICs3MSwzMCBAQAogICBFWFBFQ1RfRVEoRU5PRU5ULCBlcnJubyk7IC8vIFBPU0lYIHNwZWNpZmllZCwgbm90IGFuIGltcGxlbWVudGF0aW9uIGRldGFpbCEKIH0KIAotVEVTVChsb2NhbGUsIG5ld2xvY2FsZSkgeworVEVTVChsb2NhbGUsIG5ld2xvY2FsZV9pbnZhbGlkX2NhdGVnb3J5X21hc2spIHsKICAgZXJybm8gPSAwOwogICBFWFBFQ1RfRVEoMCwgbmV3bG9jYWxlKDEgPDwgMjAsICJDIiwgMCkpOwogICBFWFBFQ1RfRVEoRUlOVkFMLCBlcnJubyk7Cit9CiAKLSAgbG9jYWxlX3QgbCA9IG5ld2xvY2FsZShMQ19BTEwsICJDIiwgMCk7Ci0gIEFTU0VSVF9UUlVFKGwgIT0gTlVMTCk7Ci0gIGZyZWVsb2NhbGUobCk7CitURVNUKGxvY2FsZSwgbmV3bG9jYWxlX05VTExfbG9jYWxlX25hbWUpIHsKKyAgZXJybm8gPSAwOworICBFWFBFQ1RfRVEoMCwgbmV3bG9jYWxlKExDX0FMTCwgTlVMTCwgMCkpOworICBFWFBFQ1RfRVEoRUlOVkFMLCBlcnJubyk7Cit9CiAKK1RFU1QobG9jYWxlLCBuZXdsb2NhbGVfYmFkX2xvY2FsZV9uYW1lKSB7CiAgIGVycm5vID0gMDsKICAgRVhQRUNUX0VRKDAsIG5ld2xvY2FsZShMQ19BTEwsICJ0aGlzLWlzLW5vdC1hLWxvY2FsZSIsIDApKTsKICAgRVhQRUNUX0VRKEVOT0VOVCwgZXJybm8pOyAvLyBQT1NJWCBzcGVjaWZpZWQsIG5vdCBhbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWwhCiB9CiAKK1RFU1QobG9jYWxlLCBuZXdsb2NhbGUpIHsKKyAgbG9jYWxlX3QgbCA9IG5ld2xvY2FsZShMQ19BTEwsICJDIiwgMCk7CisgIEFTU0VSVF9UUlVFKGwgIT0gTlVMTCk7CisgIGZyZWVsb2NhbGUobCk7Cit9CisKIFRFU1QobG9jYWxlLCBkdXBsb2NhbGUpIHsKICAgbG9jYWxlX3QgY2xvbmVkX2dsb2JhbCA9IGR1cGxvY2FsZShMQ19HTE9CQUxfTE9DQUxFKTsKICAgQVNTRVJUX1RSVUUoY2xvbmVkX2dsb2JhbCAhPSBOVUxMKTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hbGxvY190ZXN0LmNwcCBiL3Rlc3RzL21hbGxvY190ZXN0LmNwcAppbmRleCA2YjdhMjhiLi5iNzY2MjVhIDEwMDY0NAotLS0gYS90ZXN0cy9tYWxsb2NfdGVzdC5jcHAKKysrIGIvdGVzdHMvbWFsbG9jX3Rlc3QuY3BwCkBAIC0yMiw2ICsyMiw4IEBACiAjaW5jbHVkZSA8bWFsbG9jLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKKyNpbmNsdWRlIDx0aW55eG1sMi5oPgorCiAjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfY29uZmlnLmgiCiAKIFRFU1QobWFsbG9jLCBtYWxsb2Nfc3RkKSB7CkBAIC0zMjIsMyArMzI0LDUxIEBACiAgIEFTU0VSVF9FUShOVUxMLCB2YWxsb2MoU0laRV9NQVgpKTsKIH0KICNlbmRpZgorCitURVNUKG1hbGxvYywgbWFsbG9jX2luZm8pIHsKKyNpZmRlZiBfX0JJT05JQ19fCisgIGNoYXIqIGJ1ZjsKKyAgc2l6ZV90IGJ1ZnNpemU7CisgIEZJTEUqIG1lbXN0cmVhbSA9IG9wZW5fbWVtc3RyZWFtKCZidWYsICZidWZzaXplKTsKKyAgQVNTRVJUX05FKG51bGxwdHIsIG1lbXN0cmVhbSk7CisgIEFTU0VSVF9FUSgwLCBtYWxsb2NfaW5mbygwLCBtZW1zdHJlYW0pKTsKKyAgQVNTRVJUX0VRKDAsIGZjbG9zZShtZW1zdHJlYW0pKTsKKworICB0aW55eG1sMjo6WE1MRG9jdW1lbnQgZG9jOworICBBU1NFUlRfRVEodGlueXhtbDI6OlhNTF9TVUNDRVNTLCBkb2MuUGFyc2UoYnVmKSk7CisKKyAgYXV0byByb290ID0gZG9jLkZpcnN0Q2hpbGRFbGVtZW50KCk7CisgIEFTU0VSVF9ORShudWxscHRyLCByb290KTsKKyAgQVNTRVJUX1NUUkVRKCJtYWxsb2MiLCByb290LT5OYW1lKCkpOworICBBU1NFUlRfU1RSRVEoImplbWFsbG9jLTEiLCByb290LT5BdHRyaWJ1dGUoInZlcnNpb24iKSk7CisKKyAgYXV0byBhcmVuYSA9IHJvb3QtPkZpcnN0Q2hpbGRFbGVtZW50KCk7CisgIGZvciAoOyBhcmVuYSAhPSBudWxscHRyOyBhcmVuYSA9IGFyZW5hLT5OZXh0U2libGluZ0VsZW1lbnQoKSkgeworICAgIGludCB2YWw7CisKKyAgICBBU1NFUlRfU1RSRVEoImhlYXAiLCBhcmVuYS0+TmFtZSgpKTsKKyAgICBBU1NFUlRfRVEodGlueXhtbDI6OlhNTF9TVUNDRVNTLCBhcmVuYS0+UXVlcnlJbnRBdHRyaWJ1dGUoIm5yIiwgJnZhbCkpOworICAgIEFTU0VSVF9FUSh0aW55eG1sMjo6WE1MX1NVQ0NFU1MsCisgICAgICAgICAgICAgIGFyZW5hLT5GaXJzdENoaWxkRWxlbWVudCgiYWxsb2NhdGVkLWxhcmdlIiktPlF1ZXJ5SW50VGV4dCgmdmFsKSk7CisgICAgQVNTRVJUX0VRKHRpbnl4bWwyOjpYTUxfU1VDQ0VTUywKKyAgICAgICAgICAgICAgYXJlbmEtPkZpcnN0Q2hpbGRFbGVtZW50KCJhbGxvY2F0ZWQtaHVnZSIpLT5RdWVyeUludFRleHQoJnZhbCkpOworICAgIEFTU0VSVF9FUSh0aW55eG1sMjo6WE1MX1NVQ0NFU1MsCisgICAgICAgICAgICAgIGFyZW5hLT5GaXJzdENoaWxkRWxlbWVudCgiYWxsb2NhdGVkLWJpbnMiKS0+UXVlcnlJbnRUZXh0KCZ2YWwpKTsKKyAgICBBU1NFUlRfRVEodGlueXhtbDI6OlhNTF9TVUNDRVNTLAorICAgICAgICAgICAgICBhcmVuYS0+Rmlyc3RDaGlsZEVsZW1lbnQoImJpbnMtdG90YWwiKS0+UXVlcnlJbnRUZXh0KCZ2YWwpKTsKKworICAgIGF1dG8gYmluID0gYXJlbmEtPkZpcnN0Q2hpbGRFbGVtZW50KCJiaW4iKTsKKyAgICBmb3IgKDsgYmluICE9IG51bGxwdHI7IGJpbiA9IGJpbiAtPk5leHRTaWJsaW5nRWxlbWVudCgpKSB7CisgICAgICBpZiAoc3RyY21wKGJpbi0+TmFtZSgpLCAiYmluIikgPT0gMCkgeworICAgICAgICBBU1NFUlRfRVEodGlueXhtbDI6OlhNTF9TVUNDRVNTLCBiaW4tPlF1ZXJ5SW50QXR0cmlidXRlKCJuciIsICZ2YWwpKTsKKyAgICAgICAgQVNTRVJUX0VRKHRpbnl4bWwyOjpYTUxfU1VDQ0VTUywKKyAgICAgICAgICAgICAgICAgIGJpbi0+Rmlyc3RDaGlsZEVsZW1lbnQoImFsbG9jYXRlZCIpLT5RdWVyeUludFRleHQoJnZhbCkpOworICAgICAgICBBU1NFUlRfRVEodGlueXhtbDI6OlhNTF9TVUNDRVNTLAorICAgICAgICAgICAgICAgICAgYmluLT5GaXJzdENoaWxkRWxlbWVudCgibm1hbGxvYyIpLT5RdWVyeUludFRleHQoJnZhbCkpOworICAgICAgICBBU1NFUlRfRVEodGlueXhtbDI6OlhNTF9TVUNDRVNTLAorICAgICAgICAgICAgICAgICAgYmluLT5GaXJzdENoaWxkRWxlbWVudCgibmRhbGxvYyIpLT5RdWVyeUludFRleHQoJnZhbCkpOworICAgICAgfQorICAgIH0KKyAgfQorI2VuZGlmCit9CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2Nvc190ZXN0LmNwcCBiL3Rlc3RzL21hdGhfY29zX3Rlc3QuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjMGEyZDgyLi4wMDAwMDAwCi0tLSBhL3Rlc3RzL21hdGhfY29zX3Rlc3QuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNTY0MyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLQotI2luY2x1ZGUgPG1hdGguaD4KLQotI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+Ci0KLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCi10eXBlZGVmIHN0cnVjdCB7Ci0gIGRvdWJsZSBleHBlY3RlZDsKLSAgZG91YmxlIGNhbGxfZGF0YTsKLX0gY29zX2ludGVsX2RhdGFfdDsKLQotc3RhdGljIGNvc19pbnRlbF9kYXRhX3QgZ19jb3NfaW50ZWxfZGF0YVtdID0gewotICB7IC8vIEVudHJ5IDAKLSAgICAweDEuYzFhMjdhZTgzNmYxMjgwMDAwMDAwMDAwMDA1MDRlOWJwLTEsCi0gICAgMHgxLmZlYjFmNzkyMGUyNDhwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxCi0gICAgMHgxLmMxYTI3YWU4MzZmMTI4MDAwMDAwMDAwMDAwNTA0ZTlicC0xLAotICAgIC0weDEuZmViMWY3OTIwZTI0OHAtMgotICB9LAotICB7IC8vIEVudHJ5IDIKLSAgICAweDEuNzhkYWYwMTAzNmQwY2ZmZmZmZmZmZmZmZmY5ODkwZDZwLTEsCi0gICAgMHgxLjdjYjc2NDg1MjZmOTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzCi0gICAgMHgxLjc4ZGFmMDEwMzZkMGNmZmZmZmZmZmZmZmZmOTg5MGQ2cC0xLAotICAgIC0weDEuN2NiNzY0ODUyNmY5OXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQKLSAgICAweDEuZmY4ZWI2YTkxZWNiMDAwMDAwMDAwMDAwMDAxZjhmNTZwLTEsCi0gICAgMHgxLjU0OWVjMGMwYzVhZmFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1Ci0gICAgMHgxLmZmOGViNmE5MWVjYjAwMDAwMDAwMDAwMDAwMWY4ZjU2cC0xLAotICAgIC0weDEuNTQ5ZWMwYzBjNWFmYXAtNQotICB9LAotICB7IC8vIEVudHJ5IDYKLSAgICAweDEuZmVkMDQ3NmZjNzVjOTgwMDAwMDAwMDAwMDAyMGIxM2VwLTEsCi0gICAgMHgxLjE2ZTUzNGVlMzY1ODBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3Ci0gICAgMHgxLmZlZDA0NzZmYzc1Yzk4MDAwMDAwMDAwMDAwMjBiMTNlcC0xLAotICAgIC0weDEuMTZlNTM0ZWUzNjU4MHAtNAotICB9LAotICB7IC8vIEVudHJ5IDgKLSAgICAweDEuZjEwZmM2MWUyYzc4ZWZmZmZmZmZmZmZmZmY4NzY2NmFwLTEsCi0gICAgMHgxLmVmZWVmNjFkMzlhYzJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5Ci0gICAgMHgxLmYxMGZjNjFlMmM3OGVmZmZmZmZmZmZmZmZmODc2NjZhcC0xLAotICAgIC0weDEuZWZlZWY2MWQzOWFjMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwCi0gICAgMHgxLjQzNGEzNjQ1YmUyMDg3ZmZmZmZmZmZmZmZmNzJkMGFlcC0xLAotICAgIDB4MS5jNjVhMTcwNDc0NTQ5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEKLSAgICAweDEuNDM0YTM2NDViZTIwODdmZmZmZmZmZmZmZmY3MmQwYWVwLTEsCi0gICAgLTB4MS5jNjVhMTcwNDc0NTQ5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIKLSAgICAweDEuMzM3ZmM1YjA3MmM1MjgwMDAwMDAwMDAwMDAxN2ZlNzdwLTMsCi0gICAgMHgxLjZiOGE2MjczZDdjMjFwMAotICB9LAotICB7IC8vIEVudHJ5IDEzCi0gICAgMHgxLjMzN2ZjNWIwNzJjNTI4MDAwMDAwMDAwMDAwMTdmZTc3cC0zLAotICAgIC0weDEuNmI4YTYyNzNkN2MyMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQKLSAgICAweDEuZWZhN2NkZGIxMjhmYjgwMDQzNTY4NzdiNzRlZThhYmRwLTEsCi0gICAgLTB4MS4wMzZmNGJhN2U5MGFhcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUKLSAgICAweDEuZWZhN2NkZGIxMjhmYjgwMDQzNTY4NzdiNzRlZThhYmRwLTEsCi0gICAgMHgxLjAzNmY0YmE3ZTkwYWFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZiNTExN2ZlZTJlZGE3ZjEzZXAtMSwKLSAgICAtMHgxLjE1MDA3NjZjOWRmMjBwLTMxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTcKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmYjUxMTdmZWUyZWRhN2YxM2VwLTEsCi0gICAgMHgxLjE1MDA3NjZjOWRmMjBwLTMxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTgKLSAgICAweDEuZWMyMzE4MDI5MTdiZGZmYTYyN2FiNmE1OWFiZTNmN2RwLTEsCi0gICAgLTB4MS4xZTJhMTU2M2UwNjhlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkKLSAgICAweDEuZWMyMzE4MDI5MTdiZGZmYTYyN2FiNmE1OWFiZTNmN2RwLTEsCi0gICAgMHgxLjFlMmExNTYzZTA2OGVwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMAotICAgIDB4MS5kYzA0NGFjOTJiN2ZiOTAwNzkxM2M4N2RiNzZmYTQ5ZnAtOCwKLSAgICAtMHgxLjIxMTVhYTczZjhkMDVwNQotICB9LAotICB7IC8vIEVudHJ5IDIxCi0gICAgMHgxLmRjMDQ0YWM5MmI3ZmI5MDA3OTEzYzg3ZGI3NmZhNDlmcC04LAotICAgIDB4MS4yMTE1YWE3M2Y4ZDA1cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMgotICAgIDB4MS5kMWZhNjdjNTBkZDUyN2Y2ZTlhYmJiMGJkMDY2NGFiOXAtNCwKLSAgICAtMHgxLjM0ZTNiY2RmOGY2OWFwMgotICB9LAotICB7IC8vIEVudHJ5IDIzCi0gICAgMHgxLmQxZmE2N2M1MGRkNTI3ZjZlOWFiYmIwYmQwNjY0YWI5cC00LAotICAgIDB4MS4zNGUzYmNkZjhmNjlhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNAotICAgIDB4MS5lMmY4ZDE5ZmI4ZGI4ODA1NmRjZGRkNzZmNWEwNWMyMHAtMiwKLSAgICAtMHgxLjM4MDAwMDAwMDAwMGJwNwotICB9LAotICB7IC8vIEVudHJ5IDI1Ci0gICAgMHgxLmUyZjhkMTlmYjhkYjg4MDU2ZGNkZGQ3NmY1YTA1YzIwcC0yLAotICAgIDB4MS4zODAwMDAwMDAwMDBicDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNgotICAgIDB4MS44ZGE5YzkwYzNlZGExN2Y1YmQ3MDhjZmM0MTRmZjFiOHAtMSwKLSAgICAtMHgxLjQ0MDAwMDAwNHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjcKLSAgICAweDEuOGRhOWM5MGMzZWRhMTdmNWJkNzA4Y2ZjNDE0ZmYxYjhwLTEsCi0gICAgMHgxLjQ0MDAwMDAwNHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjgKLSAgICAweDEuYjU5YjMyMDYwM2Y4MzdmZjAxNWUyYTk2MWU3NTk0NmVwLTEsCi0gICAgLTB4MS41NTBjOGVlNjdhNGM0cDI5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjkKLSAgICAweDEuYjU5YjMyMDYwM2Y4MzdmZjAxNWUyYTk2MWU3NTk0NmVwLTEsCi0gICAgMHgxLjU1MGM4ZWU2N2E0YzRwMjkKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMAotICAgIDB4MS5mZmZmZmY3YWY2Yzg4N2U1ZjMxODYzNzFhMTdkZDgxZnAtMSwKLSAgICAtMHgxLjcxMTc4OWZkYjJlOGFwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzEKLSAgICAweDEuZmZmZmZmN2FmNmM4ODdlNWYzMTg2MzcxYTE3ZGQ4MWZwLTEsCi0gICAgMHgxLjcxMTc4OWZkYjJlOGFwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIKLSAgICAweDEuYzFiNjhlYmIwYjRmZTgyZThlOTlmOWQ0MjVlZTkwMWFwLTIsCi0gICAgLTB4MS43N2UwMDAwMDJwOAotICB9LAotICB7IC8vIEVudHJ5IDMzCi0gICAgMHgxLmMxYjY4ZWJiMGI0ZmU4MmU4ZTk5ZjlkNDI1ZWU5MDFhcC0yLAotICAgIDB4MS43N2UwMDAwMDJwOAotICB9LAotICB7IC8vIEVudHJ5IDM0Ci0gICAgMHgxLjExNjFlMWRhZDc2ZGJmZDU1ZjA4YzRhNGE5MGJkNTQ3cC00LAotICAgIC0weDEuODEwNjU2MTkzMWI0M3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUKLSAgICAweDEuMTE2MWUxZGFkNzZkYmZkNTVmMDhjNGE0YTkwYmQ1NDdwLTQsCi0gICAgMHgxLjgxMDY1NjE5MzFiNDNwMAotICB9LAotICB7IC8vIEVudHJ5IDM2Ci0gICAgMHgxLmY4MjhjMzIyNmIzZDc3YzM3NGU3ODlkNzIxNmE4NWIzcC01LAotICAgIC0weDEuODI1YmUyNDYxY2FkNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzcKLSAgICAweDEuZjgyOGMzMjI2YjNkNzdjMzc0ZTc4OWQ3MjE2YTg1YjNwLTUsCi0gICAgMHgxLjgyNWJlMjQ2MWNhZDRwMAotICB9LAotICB7IC8vIEVudHJ5IDM4Ci0gICAgMHgxLmYyOTkwZDc0MmU5ZmE4MGRkMTk0ODNhMmMwZGU0MjhicC01LAotICAgIC0weDEuODI4ODc1NTgwM2IwOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkKLSAgICAweDEuZjI5OTBkNzQyZTlmYTgwZGQxOTQ4M2EyYzBkZTQyOGJwLTUsCi0gICAgMHgxLjgyODg3NTU4MDNiMDhwMAotICB9LAotICB7IC8vIEVudHJ5IDQwCi0gICAgLTB4MS5mZjE1MGRkYTc1MjRjZTY3OGFiOTdlZTQ2MGU4ZTk2MXAtMSwKLSAgICAtMHgxLjhhNzU3MDFmNGNjZDNwMQotICB9LAotICB7IC8vIEVudHJ5IDQxCi0gICAgLTB4MS5mZjE1MGRkYTc1MjRjZTY3OGFiOTdlZTQ2MGU4ZTk2MXAtMSwKLSAgICAweDEuOGE3NTcwMWY0Y2NkM3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDIKLSAgICAweDEuMDE1YzQ3YzMyYjU3NDgwMmViODFkZWIwZGI0NmMyMDdwLTEsCi0gICAgLTB4MS5iMzg5MzE2ZjM3ZjM3cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MwotICAgIDB4MS4wMTVjNDdjMzJiNTc0ODAyZWI4MWRlYjBkYjQ2YzIwN3AtMSwKLSAgICAweDEuYjM4OTMxNmYzN2YzN3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQKLSAgICAweDEuZDY4MWEzNjZhMDUzNDdmYTU2Yjc1ZDg0NWIzM2M3YmJwLTEsCi0gICAgLTB4MS5jNjAyYzQ2NWQ3ZDI3cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NQotICAgIDB4MS5kNjgxYTM2NmEwNTM0N2ZhNTZiNzVkODQ1YjMzYzdiYnAtMSwKLSAgICAweDEuYzYwMmM0NjVkN2QyN3A2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDYKLSAgICAtMHgxLjg0ZTg5NmM3NTQzZDU0YzE2ZDdiZTM0NmUwZjQwMDE3cC0xLAotICAgIC0weDEuY2ZiODFmZTY5NjY0Y3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDcKLSAgICAtMHgxLjg0ZTg5NmM3NTQzZDU0YzE2ZDdiZTM0NmUwZjQwMDE3cC0xLAotICAgIDB4MS5jZmI4MWZlNjk2NjRjcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OAotICAgIDB4MS5mYzVkY2ZkZGQ1NGMwN2YxNTc0Y2UxMTRjMWU1ZWZmZXAtMSwKLSAgICAtMHgxLmQwOGYyZDg2YjEyYzZwMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OQotICAgIDB4MS5mYzVkY2ZkZGQ1NGMwN2YxNTc0Y2UxMTRjMWU1ZWZmZXAtMSwKLSAgICAweDEuZDA4ZjJkODZiMTJjNnAxMwotICB9LAotICB7IC8vIEVudHJ5IDUwCi0gICAgMHgxLmZlODMyMzVmYmUwMTVkNmMzNjE1NTZlZTVhMGUyMjk0cC0zLAotICAgIC0weDEuZGUxM2YwOTQzYzQ5NHA5OQotICB9LAotICB7IC8vIEVudHJ5IDUxCi0gICAgMHgxLmZlODMyMzVmYmUwMTVkNmMzNjE1NTZlZTVhMGUyMjk0cC0zLAotICAgIDB4MS5kZTEzZjA5NDNjNDk0cDk5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTIKLSAgICAtMHgxLjcyMDMyMTIzOWVjNGYzOGQ1NWI0MGQ4NDQ1MDk5YzJhcC0xLAotICAgIC0weDEuZGUzYzFmMTI4NWU4YnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMKLSAgICAtMHgxLjcyMDMyMTIzOWVjNGYzOGQ1NWI0MGQ4NDQ1MDk5YzJhcC0xLAotICAgIDB4MS5kZTNjMWYxMjg1ZThicDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NAotICAgIDB4MS5mNzE0M2M4YmJhNDA2ZDZmODM0YTNiY2E1ZTljNmE1OHAtNCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmN2ZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDU1Ci0gICAgMHgxLmY3MTQzYzhiYmE0MDZkNmY4MzRhM2JjYTVlOWM2YTU4cC00LAotICAgIDB4MS5mZmZmZmZmZmZmZjdmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NgotICAgIC0weDEuZmZmZTYyZWNmYWI3NTNjMDcxYjI2ODBlMWUyNmJiY2VwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NwotICAgIC0weDEuZmZmZTYyZWNmYWI3NTNjMDcxYjI2ODBlMWUyNmJiY2VwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDU4Ci0gICAgMHgxLjA1NWU0NTdhYzEyMjc2NmE3YTM0M2VhNGFjNzM5YjJlcC01LAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTkKLSAgICAweDEuMDU1ZTQ1N2FjMTIyNzY2YTdhMzQzZWE0YWM3MzliMmVwLTUsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAKLSAgICAweDEuYzE1MjgwNjViN2Q0ZTJkODRkNjQwMzAxODAwZGRkODFwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MQotICAgIDB4MS5jMTUyODA2NWI3ZDRlMmQ4NGQ2NDAzMDE4MDBkZGQ4MXAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmYTBwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDNwLTMyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjMKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmEwcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwM3AtMzIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NAotICAgIDB4MS5mZmZlYTQ0NGJjMDVlMGIyZWM2OTNmNzIyNmQwNTZiOHAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAyMHAxNTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NQotICAgIDB4MS5mZmZlYTQ0NGJjMDVlMGIyZWM2OTNmNzIyNmQwNTZiOHAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMjBwMTUwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYKLSAgICAtMHgxLmViZGRlZTg3NmY0MzM4Y2M4ODUzOTRkMTAzOWFjZmUxcC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDM4cDM4MAotICB9LAotICB7IC8vIEVudHJ5IDY3Ci0gICAgLTB4MS5lYmRkZWU4NzZmNDMzOGNjODg1Mzk0ZDEwMzlhY2ZlMXAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMzhwMzgwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgKLSAgICAtMHgxLmYyZmZjNTFkYzY5NjgxZGVkMzMzNjI2NDViNGU4NTEzcC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMTE4cDM4MAotICB9LAotICB7IC8vIEVudHJ5IDY5Ci0gICAgLTB4MS5mMmZmYzUxZGM2OTY4MWRlZDMzMzYyNjQ1YjRlODUxM3AtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAxMThwMzgwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzAKLSAgICAtMHgxLmY4ZmJiNGQzNThiMjA3ZjRmODFjMzZjZjIxYzRhZjk3cC0xLAotICAgIDB4MS4wMDAwMDAwMDAwM2ZmcDY0MQotICB9LAotICB7IC8vIEVudHJ5IDcxCi0gICAgLTB4MS5mOGZiYjRkMzU4YjIwN2Y0ZjgxYzM2Y2YyMWM0YWY5N3AtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAzZmZwNjQxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIKLSAgICAtMHgxLmFhMjI2NTc1M2U2Njg3ZmRlNzYyNjllZTkyYTc4NGIwcC0yLAotICAgIDB4MS4wMDAwMDAwMDAxMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMKLSAgICAtMHgxLmFhMjI2NTc1M2U2Njg3ZmRlNzYyNjllZTkyYTc4NGIwcC0yLAotICAgIC0weDEuMDAwMDAwMDAwMTBwMQotICB9LAotICB7IC8vIEVudHJ5IDc0Ci0gICAgMHgxLmZkMTI0MmMyNTk5NGQwY2M1ZGFmNDA1ZmE1MTBlNTM5cC0xLAotICAgIDB4MS4wMDAwMDAwMDhwNDUyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUKLSAgICAweDEuZmQxMjQyYzI1OTk0ZDBjYzVkYWY0MDVmYTUxMGU1MzlwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDhwNDUyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYKLSAgICAweDEuZmZmYzAwMDE1NTRkYTgwMDAwNDg4MjhkZTk3YWNjY2JwLTEsCi0gICAgMHgxLjAwMDAwMDAwZWZmYWZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NwotICAgIDB4MS5mZmZjMDAwMTU1NGRhODAwMDA0ODgyOGRlOTdhY2NjYnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwZWZmYWZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OAotICAgIDB4MS4xNGEyN2YyOTI1NTIyODAwMDBkZDMwZmJmNmIzODQ4MXAtMSwKLSAgICAweDEuMDAwMDAxMTRmZWZlMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzkKLSAgICAweDEuMTRhMjdmMjkyNTUyMjgwMDAwZGQzMGZiZjZiMzg0ODFwLTEsCi0gICAgLTB4MS4wMDAwMDExNGZlZmUycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MAotICAgIDB4MS5iZjgxZTAyNjljNTljN2ZmNzUzY2EzMjE0NzY2NmM1NnAtMywKLSAgICAweDEuMDAwMDA3MHA0MAotICB9LAotICB7IC8vIEVudHJ5IDgxCi0gICAgMHgxLmJmODFlMDI2OWM1OWM3ZmY3NTNjYTMyMTQ3NjY2YzU2cC0zLAotICAgIC0weDEuMDAwMDA3MHA0MAotICB9LAotICB7IC8vIEVudHJ5IDgyCi0gICAgMHgxLjE0YTI2ZWQxOTYwZDY3ZmZmZmRmOGQxM2I0M2ZhMmI0cC0xLAotICAgIDB4MS4wMDAwMGFjYWRiM2QzcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MwotICAgIDB4MS4xNGEyNmVkMTk2MGQ2N2ZmZmZkZjhkMTNiNDNmYTJiNHAtMSwKLSAgICAtMHgxLjAwMDAwYWNhZGIzZDNwMAotICB9LAotICB7IC8vIEVudHJ5IDg0Ci0gICAgMHgxLmZmZmZmZmZmYmZmZmU3ZmZmZjE1NTY1NTU1OWE3ZDJkcC0xLAotICAgIDB4MS4wMDAwM3AtMTcKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NQotICAgIDB4MS5mZmZmZmZmZmJmZmZlN2ZmZmYxNTU2NTU1NTlhN2QyZHAtMSwKLSAgICAtMHgxLjAwMDAzcC0xNwotICB9LAotICB7IC8vIEVudHJ5IDg2Ci0gICAgMHgxLmZmZmZmZmZmZWZmZmY3ZmZmZjE1Zjk2YWQzYjI5ZDk0cC0xLAotICAgIDB4MS4wMDAwM2ZmZmZmZmFlcC0xOAotICB9LAotICB7IC8vIEVudHJ5IDg3Ci0gICAgMHgxLmZmZmZmZmZmZWZmZmY3ZmZmZjE1Zjk2YWQzYjI5ZDk0cC0xLAotICAgIC0weDEuMDAwMDNmZmZmZmZhZXAtMTgKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OAotICAgIDB4MS5mZmZmZmZmZmVmZmZmN2ZmZmYxNTU3NmFhYjMyOWY0NXAtMSwKLSAgICAweDEuMDAwMDNmZmZmZmZmZnAtMTgKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OQotICAgIDB4MS5mZmZmZmZmZmVmZmZmN2ZmZmYxNTU3NmFhYjMyOWY0NXAtMSwKLSAgICAtMHgxLjAwMDAzZmZmZmZmZmZwLTE4Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTAKLSAgICAtMHgxLmRhYjdlZmViMzViYWQ3ZmJkY2IwZWZlZGI2NjIwOTdjcC0yLAotICAgIDB4MS4wMDAwN2ZmZmZkZWEwcDQxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEKLSAgICAtMHgxLmRhYjdlZmViMzViYWQ3ZmJkY2IwZWZlZGI2NjIwOTdjcC0yLAotICAgIC0weDEuMDAwMDdmZmZmZGVhMHA0MQotICB9LAotICB7IC8vIEVudHJ5IDkyCi0gICAgMHgxLmZmZmZmZmZmZmJmZmY4MDAwMDAxNTk1YWE5YWZmZmNmcC0xLAotICAgIDB4MS4wMDAwZmZmZjhwLTE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTMKLSAgICAweDEuZmZmZmZmZmZmYmZmZjgwMDAwMDE1OTVhYTlhZmZmY2ZwLTEsCi0gICAgLTB4MS4wMDAwZmZmZjhwLTE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQKLSAgICAweDEuZmZmZmZmZmZmZWZmZjgwMDAwMDA0YjM2NDIzMDUwZjZwLTEsCi0gICAgMHgxLjAwMDNmZmY4MDAwNTFwLTIwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTUKLSAgICAweDEuZmZmZmZmZmZmZWZmZjgwMDAwMDA0YjM2NDIzMDUwZjZwLTEsCi0gICAgLTB4MS4wMDAzZmZmODAwMDUxcC0yMAotICB9LAotICB7IC8vIEVudHJ5IDk2Ci0gICAgMHgxLmZmZmZmZmZmZmVmZmY4MDAwMDAwNDI5NjFmYjA5NWY3cC0xLAotICAgIDB4MS4wMDAzZmZmODAwMDk2cC0yMAotICB9LAotICB7IC8vIEVudHJ5IDk3Ci0gICAgMHgxLmZmZmZmZmZmZmVmZmY4MDAwMDAwNDI5NjFmYjA5NWY3cC0xLAotICAgIC0weDEuMDAwM2ZmZjgwMDA5NnAtMjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OAotICAgIC0weDEuZmJmMmI3MWEyM2E1NzdmZGRkMDgxZDMwYmMyNDkxN2ZwLTIsCi0gICAgMHgxLjAwMGZkMjBwMzM0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTkKLSAgICAtMHgxLmZiZjJiNzFhMjNhNTc3ZmRkZDA4MWQzMGJjMjQ5MTdmcC0yLAotICAgIC0weDEuMDAwZmQyMHAzMzQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDAKLSAgICAweDEuZmNjYzg3ZWFlNzczNmQ4ZDhhNDc3NjMxNGY2YjBiYTdwLTUsCi0gICAgMHgxLjAwM3A1MTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDEKLSAgICAweDEuZmNjYzg3ZWFlNzczNmQ4ZDhhNDc3NjMxNGY2YjBiYTdwLTUsCi0gICAgLTB4MS4wMDNwNTE0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAyCi0gICAgLTB4MS5hNDNmNDBkOTJiN2VkN2VlZjBmZTZkMTc5OTQ0MmNmYXAtNywKLSAgICAweDEuMDA2MDAwMDAwMTVmNHA0MQotICB9LAotICB7IC8vIEVudHJ5IDEwMwotICAgIC0weDEuYTQzZjQwZDkyYjdlZDdlZWYwZmU2ZDE3OTk0NDJjZmFwLTcsCi0gICAgLTB4MS4wMDYwMDAwMDAxNWY0cDQxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA0Ci0gICAgMHgxLmMxMWNjMzhmNDBhYjI4MjdkZDBmZjhjNmYzZGQxZGFmcC0xLAotICAgIDB4MS4wMDdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUKLSAgICAweDEuYzExY2MzOGY0MGFiMjgyN2RkMGZmOGM2ZjNkZDFkYWZwLTEsCi0gICAgLTB4MS4wMDdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYKLSAgICAweDEuZmZmZmZmZmZmZmJmYzdmM2MwMDAwMTU3YWMzMzFkMGNwLTEsCi0gICAgMHgxLjAwN3AtMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDcKLSAgICAweDEuZmZmZmZmZmZmZmJmYzdmM2MwMDAwMTU3YWMzMzFkMGNwLTEsCi0gICAgLTB4MS4wMDdwLTIxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4Ci0gICAgMHgxLmU5YmE5ODIzMWY3MzQ2ZTA1NjY2OTRlMTQ4NGE1Yjk4cC04LAotICAgIDB4MS4wMGNwNDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDkKLSAgICAweDEuZTliYTk4MjMxZjczNDZlMDU2NjY5NGUxNDg0YTViOThwLTgsCi0gICAgLTB4MS4wMGNwNDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTAKLSAgICAweDEuZmVmZGY0OGVkNjQ5Y2QwODdlM2U4MDEyMTllZGY4MDRwLTEsCi0gICAgMHgxLjAxMXAtNAotICB9LAotICB7IC8vIEVudHJ5IDExMQotICAgIDB4MS5mZWZkZjQ4ZWQ2NDljZDA4N2UzZTgwMTIxOWVkZjgwNHAtMSwKLSAgICAtMHgxLjAxMXAtNAotICB9LAotICB7IC8vIEVudHJ5IDExMgotICAgIC0weDEuZmZjMTZhMGYxMmZmMjcxY2VkNzJmYzY1OWRkY2QzODJwLTEsCi0gICAgMHgxLjAxMXA5OTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTMKLSAgICAtMHgxLmZmYzE2YTBmMTJmZjI3MWNlZDcyZmM2NTlkZGNkMzgycC0xLAotICAgIC0weDEuMDExcDk5NgotICB9LAotICB7IC8vIEVudHJ5IDExNAotICAgIDB4MS5lZmQ1YjYxYTMwYTM4N2ZmZjE0MDA1MTk4NDVmY2IxZXAtMSwKLSAgICAweDEuMDIwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE1Ci0gICAgMHgxLmVmZDViNjFhMzBhMzg3ZmZmMTQwMDUxOTg0NWZjYjFlcC0xLAotICAgIC0weDEuMDIwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2Ci0gICAgMHgxLmM5N2I4MTYxZGM1MGEwNmNkNDgwMWRlZWI4ZTA3MTVicC0yLAotICAgIDB4MS4wMjA0MjYwYzE4MzA3cDU5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE3Ci0gICAgMHgxLmM5N2I4MTYxZGM1MGEwNmNkNDgwMWRlZWI4ZTA3MTVicC0yLAotICAgIC0weDEuMDIwNDI2MGMxODMwN3A1OQotICB9LAotICB7IC8vIEVudHJ5IDExOAotICAgIC0weDEuYmYyNmEzYzliOWZiZTgzNDg4NDQ5MzQzZjA4YjA4ZDdwLTIsCi0gICAgMHgxLjAyZTc4YTMyMTE1NWVwMQotICB9LAotICB7IC8vIEVudHJ5IDExOQotICAgIC0weDEuYmYyNmEzYzliOWZiZTgzNDg4NDQ5MzQzZjA4YjA4ZDdwLTIsCi0gICAgLTB4MS4wMmU3OGEzMjExNTVlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjAKLSAgICAweDEuZmVmODA2YjFmODRlNGRmZDVmNzEzMDdhM2MzZWI2MDJwLTEsCi0gICAgMHgxLjA0MHAtNAotICB9LAotICB7IC8vIEVudHJ5IDEyMQotICAgIDB4MS5mZWY4MDZiMWY4NGU0ZGZkNWY3MTMwN2EzYzNlYjYwMnAtMSwKLSAgICAtMHgxLjA0MHAtNAotICB9LAotICB7IC8vIEVudHJ5IDEyMgotICAgIDB4MS5mZTg1MWZiZjg3ZDE3NmZiNGM2OTI5NWM3ZjkyODQwMnAtMSwKLSAgICAweDEuMDRiZGU4YmI4MDI1OHA5OAotICB9LAotICB7IC8vIEVudHJ5IDEyMwotICAgIDB4MS5mZTg1MWZiZjg3ZDE3NmZiNGM2OTI5NWM3ZjkyODQwMnAtMSwKLSAgICAtMHgxLjA0YmRlOGJiODAyNThwOTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQKLSAgICAweDEuNzBmNmE1MWRhOGVmZWMzOThlNzQxNjllNzcxMzg2ZWFwLTEsCi0gICAgMHgxLjA3N2U3NDllMzdjZWVwMjM2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI1Ci0gICAgMHgxLjcwZjZhNTFkYThlZmVjMzk4ZTc0MTY5ZTc3MTM4NmVhcC0xLAotICAgIC0weDEuMDc3ZTc0OWUzN2NlZXAyMzYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjYKLSAgICAweDEuNmI0MDhjODU2YmRhNTdmZTU4MjlhNTgzNjFmZWExMTJwLTMsCi0gICAgMHgxLjA3ZjgwcDMwMAotICB9LAotICB7IC8vIEVudHJ5IDEyNwotICAgIDB4MS42YjQwOGM4NTZiZGE1N2ZlNTgyOWE1ODM2MWZlYTExMnAtMywKLSAgICAtMHgxLjA3ZjgwcDMwMAotICB9LAotICB7IC8vIEVudHJ5IDEyOAotICAgIDB4MS4yYjJmOTY1YWU0MGZjN2ZmZmZiY2EwYjdlYWVjNTkxOXAtMSwKLSAgICAweDEuMDdmOWJlYTFiMzU0NnAyNwotICB9LAotICB7IC8vIEVudHJ5IDEyOQotICAgIDB4MS4yYjJmOTY1YWU0MGZjN2ZmZmZiY2EwYjdlYWVjNTkxOXAtMSwKLSAgICAtMHgxLjA3ZjliZWExYjM1NDZwMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzAKLSAgICAtMHgxLjRlZWQyZjNmYzc2YTc3ZjgwM2Q4OTExZWVkZGNjNWU4cC0xLAotICAgIDB4MS4wOTBkMTgzNzJmMmQ1cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzEKLSAgICAtMHgxLjRlZWQyZjNmYzc2YTc3ZjgwM2Q4OTExZWVkZGNjNWU4cC0xLAotICAgIC0weDEuMDkwZDE4MzcyZjJkNXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMyCi0gICAgMHgxLmZiYTU5YWVjZWU1MDAwMzE1Y2VlMzIzMDc5ZWQxNDI3cC0xLAotICAgIDB4MS4wYjRwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzMKLSAgICAweDEuZmJhNTlhZWNlZTUwMDAzMTVjZWUzMjMwNzllZDE0MjdwLTEsCi0gICAgLTB4MS4wYjRwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzQKLSAgICAweDEuZmZmZDFiY2RhN2E3ZDU1MTBhYTNkMGVkOGFkZGM3ODVwLTEsCi0gICAgMHgxLjBjMGQ1YzJhZjNjMmVwMzQ2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM1Ci0gICAgMHgxLmZmZmQxYmNkYTdhN2Q1NTEwYWEzZDBlZDhhZGRjNzg1cC0xLAotICAgIC0weDEuMGMwZDVjMmFmM2MyZXAzNDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzYKLSAgICAtMHgxLmU0ZGZlODMxMjkyODY3ZmRjMTMzM2MwYTRjM2YzZjcwcC0xLAotICAgIDB4MS4wZDMwNTk2ZWU5MWZkcDIxNgotICB9LAotICB7IC8vIEVudHJ5IDEzNwotICAgIC0weDEuZTRkZmU4MzEyOTI4NjdmZGMxMzMzYzBhNGMzZjNmNzBwLTEsCi0gICAgLTB4MS4wZDMwNTk2ZWU5MWZkcDIxNgotICB9LAotICB7IC8vIEVudHJ5IDEzOAotICAgIDB4MS5mYjg0MzI4ODZhMjgzYjE3YWNhYTUyNGUzMTJhYjFlM3AtMiwKLSAgICAweDEuMGQ2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzkKLSAgICAweDEuZmI4NDMyODg2YTI4M2IxN2FjYWE1MjRlMzEyYWIxZTNwLTIsCi0gICAgLTB4MS4wZDZwMAotICB9LAotICB7IC8vIEVudHJ5IDE0MAotICAgIDB4MS5mZmZmZWUyMDI4NTNmZmJiYzE2ODQ4NDcwMTk3MjdhMHAtMSwKLSAgICAweDEuMGU5NDc0YzY4ODMxY3AtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDEKLSAgICAweDEuZmZmZmVlMjAyODUzZmZiYmMxNjg0ODQ3MDE5NzI3YTBwLTEsCi0gICAgLTB4MS4wZTk0NzRjNjg4MzFjcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDE0MgotICAgIC0weDEuYjcwZDNkNTU4NGIxYTgzYzY4ZTI1NGU1MjNkMzdkZmRwLTIsCi0gICAgMHgxLjExM2JhZTQwNDk4NDlwMgotICB9LAotICB7IC8vIEVudHJ5IDE0MwotICAgIC0weDEuYjcwZDNkNTU4NGIxYTgzYzY4ZTI1NGU1MjNkMzdkZmRwLTIsCi0gICAgLTB4MS4xMTNiYWU0MDQ5ODQ5cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDQKLSAgICAweDEuZmVkOGRmNThmNjI1ZmRjYmIxZTQwY2Y4M2NhYTJjYTJwLTEsCi0gICAgMHgxLjEyZWI4NzA5NzY1NDBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDUKLSAgICAweDEuZmVkOGRmNThmNjI1ZmRjYmIxZTQwY2Y4M2NhYTJjYTJwLTEsCi0gICAgLTB4MS4xMmViODcwOTc2NTQwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQ2Ci0gICAgMHgxLmU1MzZhZTM5NWRmY2UwMDE0NTc5NzBjOGFhYWMzYjFmcC0yLAotICAgIDB4MS4xM2NwMAotICB9LAotICB7IC8vIEVudHJ5IDE0NwotICAgIDB4MS5lNTM2YWUzOTVkZmNlMDAxNDU3OTcwYzhhYWFjM2IxZnAtMiwKLSAgICAtMHgxLjEzY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ4Ci0gICAgMHgxLmZlZDA0NzZmYzc1Yzk4MDAwMDAwMDAwMDAwMjBiMTNlcC0xLAotICAgIDB4MS4xNmU1MzRlZTM2NTgwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQ5Ci0gICAgMHgxLmZlZDA0NzZmYzc1Yzk4MDAwMDAwMDAwMDAwMjBiMTNlcC0xLAotICAgIC0weDEuMTZlNTM0ZWUzNjU4MHAtNAotICB9LAotICB7IC8vIEVudHJ5IDE1MAotICAgIDB4MS5mYjM4ZTgyZTMxOTNhN2YxOWExN2QyMzFhMmU4MTk0ZXAtMSwKLSAgICAweDEuMTdmZmZmZmZmZWE5OHAtMwotICB9LAotICB7IC8vIEVudHJ5IDE1MQotICAgIDB4MS5mYjM4ZTgyZTMxOTNhN2YxOWExN2QyMzFhMmU4MTk0ZXAtMSwKLSAgICAtMHgxLjE3ZmZmZmZmZmVhOThwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTIKLSAgICAweDEuZmIzOGU4MmUzMTg3ZmM2NTc0N2FlNDQzNDYxZWI0MzRwLTEsCi0gICAgMHgxLjE4MHAtMwotICB9LAotICB7IC8vIEVudHJ5IDE1MwotICAgIDB4MS5mYjM4ZTgyZTMxODdmYzY1NzQ3YWU0NDM0NjFlYjQzNHAtMSwKLSAgICAtMHgxLjE4MHAtMwotICB9LAotICB7IC8vIEVudHJ5IDE1NAotICAgIC0weDEuZTU5NjQ3ZjFmZTljNzUwMDU5YjllYWZiODhjMmFjZWFwLTEsCi0gICAgMHgxLjFhMTkxZWJiYjRkN2ZwNwotICB9LAotICB7IC8vIEVudHJ5IDE1NQotICAgIC0weDEuZTU5NjQ3ZjFmZTljNzUwMDU5YjllYWZiODhjMmFjZWFwLTEsCi0gICAgLTB4MS4xYTE5MWViYmI0ZDdmcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTYKLSAgICAtMHgxLmQwZGNhMWY4NzE1YmQ3ZjlmZjM3M2M3NjM1MjJkYjBlcC00LAotICAgIDB4MS4xZGE4NGYyYjdiMWQ4cDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTcKLSAgICAtMHgxLmQwZGNhMWY4NzE1YmQ3ZjlmZjM3M2M3NjM1MjJkYjBlcC00LAotICAgIC0weDEuMWRhODRmMmI3YjFkOHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTU4Ci0gICAgMHgxLmI5MTdlYmJjMzBlMWQ4MzY0YmMzYzJjMTBlYTEzNTM5cC0yLAotICAgIDB4MS4yMDFlOTczMjUxMzAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTkKLSAgICAweDEuYjkxN2ViYmMzMGUxZDgzNjRiYzNjMmMxMGVhMTM1MzlwLTIsCi0gICAgLTB4MS4yMDFlOTczMjUxMzAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjAKLSAgICAweDEuZmZmYWRmMTJmZjQxNDdmNmY2ZjM1YjQ0YjBmNmNiNDZwLTEsCi0gICAgMHgxLjIxZTAycC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTYxCi0gICAgMHgxLmZmZmFkZjEyZmY0MTQ3ZjZmNmYzNWI0NGIwZjZjYjQ2cC0xLAotICAgIC0weDEuMjFlMDJwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjIKLSAgICAtMHgxLjU5OGE0ZGFiM2RlNTk3ZDUyZmFhNzM2NzYyYTNmNjUxcC0xLAotICAgIDB4MS4yN2UyOWE0Yjk4NWJmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjMKLSAgICAtMHgxLjU5OGE0ZGFiM2RlNTk3ZDUyZmFhNzM2NzYyYTNmNjUxcC0xLAotICAgIC0weDEuMjdlMjlhNGI5ODViZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY0Ci0gICAgMHgxLmZhOTVjMTE1NGFiZjU2YzRkYmI3N2JmZTVlNGU4ZjQycC0xLAotICAgIDB4MS4yYTFmMjhkYmZiNmMwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY1Ci0gICAgMHgxLmZhOTVjMTE1NGFiZjU2YzRkYmI3N2JmZTVlNGU4ZjQycC0xLAotICAgIC0weDEuMmExZjI4ZGJmYjZjMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDE2NgotICAgIC0weDEuNjQxMjI5M2FkYjdiY2E5NzczMWU1MGE4NjMxMmRhMmRwLTEsCi0gICAgMHgxLjJiOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY3Ci0gICAgLTB4MS42NDEyMjkzYWRiN2JjYTk3NzMxZTUwYTg2MzEyZGEyZHAtMSwKLSAgICAtMHgxLjJiOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY4Ci0gICAgMHgxLmZmZmE1MThhN2QwZTc3ZjNiNDMxZmNkMGJhMzUzMDk1cC0xLAotICAgIDB4MS4zMTE5OWRlZjcyZjRkcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY5Ci0gICAgMHgxLmZmZmE1MThhN2QwZTc3ZjNiNDMxZmNkMGJhMzUzMDk1cC0xLAotICAgIC0weDEuMzExOTlkZWY3MmY0ZHAtNwotICB9LAotICB7IC8vIEVudHJ5IDE3MAotICAgIDB4MS5mMzY4OTVmZTE3N2Y3N2ZlODQ3OTgyNjRhZDRmMzNiMXAtMSwKLSAgICAweDEuMzEyNjBlMTQ4NTAxNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTcxCi0gICAgMHgxLmYzNjg5NWZlMTc3Zjc3ZmU4NDc5ODI2NGFkNGYzM2IxcC0xLAotICAgIC0weDEuMzEyNjBlMTQ4NTAxNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTcyCi0gICAgMHgxLmQzNjIwN2I0ZmVlMTY3ZjZiMzE4NWZkZDkyOTRhMjMzcC00LAotICAgIDB4MS4zNGU5NjRjZDEwM2JkcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzMKLSAgICAweDEuZDM2MjA3YjRmZWUxNjdmNmIzMTg1ZmRkOTI5NGEyMzNwLTQsCi0gICAgLTB4MS4zNGU5NjRjZDEwM2JkcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzQKLSAgICAtMHgxLjg0YTM3ZjRmYTc2MTZjYWFkNjZiNGQ3MDFhYjUzZTk0cC0xLAotICAgIDB4MS4zNzYxOGEwYmE3ODUwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzUKLSAgICAtMHgxLjg0YTM3ZjRmYTc2MTZjYWFkNjZiNGQ3MDFhYjUzZTk0cC0xLAotICAgIC0weDEuMzc2MThhMGJhNzg1MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc2Ci0gICAgLTB4MS5jODMwYmJjOTllMjI5MGY5ZDkzYWE2MmIyZGRmZWM5N3AtMzksCi0gICAgMHgxLjM3OTcwNGY1ZjFlYjNwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzcKLSAgICAtMHgxLmM4MzBiYmM5OWUyMjkwZjlkOTNhYTYyYjJkZGZlYzk3cC0zOSwKLSAgICAtMHgxLjM3OTcwNGY1ZjFlYjNwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzgKLSAgICAweDEuYjVkYWFhMjMzYmQ0ZjdmY2YzNGI2ZDVkMDI4MDE3MmZwLTMsCi0gICAgMHgxLjNiNjFkZDE2NmQ0NzBwMgotICB9LAotICB7IC8vIEVudHJ5IDE3OQotICAgIDB4MS5iNWRhYWEyMzNiZDRmN2ZjZjM0YjZkNWQwMjgwMTcyZnAtMywKLSAgICAtMHgxLjNiNjFkZDE2NmQ0NzBwMgotICB9LAotICB7IC8vIEVudHJ5IDE4MAotICAgIC0weDEuZmZkMDBkYzRkYjQwMGQ5NjJlMmQyNTVhNjYxZTNjY2JwLTQsCi0gICAgMHgxLjNjMDExMDIyYWNiZDBwMzcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODEKLSAgICAtMHgxLmZmZDAwZGM0ZGI0MDBkOTYyZTJkMjU1YTY2MWUzY2NicC00LAotICAgIC0weDEuM2MwMTEwMjJhY2JkMHAzNwotICB9LAotICB7IC8vIEVudHJ5IDE4MgotICAgIC0weDEuMTQwNTJiNDAxNmZmNTdmZTU3NTBlZDM0MjZiZmQ3NThwLTEsCi0gICAgMHgxLjNlNzc4OGU5MDBiNzBwNzI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTgzCi0gICAgLTB4MS4xNDA1MmI0MDE2ZmY1N2ZlNTc1MGVkMzQyNmJmZDc1OHAtMSwKLSAgICAtMHgxLjNlNzc4OGU5MDBiNzBwNzI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTg0Ci0gICAgMHgxLmZmZmZlNmE1ZTQxOTdmNWZjNTBhY2IxODllYjg1Yzk0cC0xLAotICAgIDB4MS40MjNlYWZkY2MyNzc5cC0xMAotICB9LAotICB7IC8vIEVudHJ5IDE4NQotICAgIDB4MS5mZmZmZTZhNWU0MTk3ZjVmYzUwYWNiMTg5ZWI4NWM5NHAtMSwKLSAgICAtMHgxLjQyM2VhZmRjYzI3NzlwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg2Ci0gICAgLTB4MS5mZTA5ZmMzZDE2ZmVkZDc1MDgzMDFkZjY4ODU3Yjc1NnAtNiwKLSAgICAweDEuNDMyMTgyOGMxYjUzOHAxMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODcKLSAgICAtMHgxLmZlMDlmYzNkMTZmZWRkNzUwODMwMWRmNjg4NTdiNzU2cC02LAotICAgIC0weDEuNDMyMTgyOGMxYjUzOHAxMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODgKLSAgICAweDEuYjY4NWQ5NDlhMjdhMDE0M2M0YWM5YjU1MzU0MWViZWNwLTE0LAotICAgIDB4MS40MzUwNmNiMjI5NzVkcDIyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg5Ci0gICAgMHgxLmI2ODVkOTQ5YTI3YTAxNDNjNGFjOWI1NTM1NDFlYmVjcC0xNCwKLSAgICAtMHgxLjQzNTA2Y2IyMjk3NWRwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTAKLSAgICAweDEuZmUzOTgwOTBlMjAzYmMyZjZmZTY4MzBkMzgwZmFjYzRwLTEsCi0gICAgMHgxLjQzOWY2MzQ5NTc4NmFwNjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTEKLSAgICAweDEuZmUzOTgwOTBlMjAzYmMyZjZmZTY4MzBkMzgwZmFjYzRwLTEsCi0gICAgLTB4MS40MzlmNjM0OTU3ODZhcDY3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTkyCi0gICAgMHgxLmZlNjI3NGUwMDA5NzNhMjZjMWEwMDUzZTNmZGVmZmM3cC0xLAotICAgIDB4MS40NTc1MzhhNmJkMDczcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTkzCi0gICAgMHgxLmZlNjI3NGUwMDA5NzNhMjZjMWEwMDUzZTNmZGVmZmM3cC0xLAotICAgIC0weDEuNDU3NTM4YTZiZDA3M3AtNAotICB9LAotICB7IC8vIEVudHJ5IDE5NAotICAgIDB4MS4wOWZjYjY5MzU5YzA5ZDU3MzlmMWYwMjU1ZDRmY2U4M3AtMSwKLSAgICAweDEuNDc4ZmMwOHA0MwotICB9LAotICB7IC8vIEVudHJ5IDE5NQotICAgIDB4MS4wOWZjYjY5MzU5YzA5ZDU3MzlmMWYwMjU1ZDRmY2U4M3AtMSwKLSAgICAtMHgxLjQ3OGZjMDhwNDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTYKLSAgICAtMHgxLjIwYzIxNTg1MTFlNzg5OWYxZWMzNzllOTBjMjk2NzgwcC05LAotICAgIDB4MS40OGE0NTc5N2NiZTYzcDYxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk3Ci0gICAgLTB4MS4yMGMyMTU4NTExZTc4OTlmMWVjMzc5ZTkwYzI5Njc4MHAtOSwKLSAgICAtMHgxLjQ4YTQ1Nzk3Y2JlNjNwNjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTgKLSAgICAweDEuOTkwZDE3YWFlMjUzMDdmZWM0YWU2ZDRlOThmMzAwOTNwLTEsCi0gICAgMHgxLjRhNjJlMGUxMmMxNzNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTkKLSAgICAweDEuOTkwZDE3YWFlMjUzMDdmZWM0YWU2ZDRlOThmMzAwOTNwLTEsCi0gICAgLTB4MS40YTYyZTBlMTJjMTczcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAwCi0gICAgMHgxLmZkZDRmMWUwMGIzODcwMDQxOWY5NmQzNDE5MDVkMDQ1cC0zLAotICAgIDB4MS40YzU5NjY0MmE5NDg4cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDEKLSAgICAweDEuZmRkNGYxZTAwYjM4NzAwNDE5Zjk2ZDM0MTkwNWQwNDVwLTMsCi0gICAgLTB4MS40YzU5NjY0MmE5NDg4cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDIKLSAgICAweDEuZmU0ZjE0MTAzMmYzNzdmZTEzNWIxM2UwNDQzNmM1ZmZwLTEsCi0gICAgMHgxLjRkMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDIwMwotICAgIDB4MS5mZTRmMTQxMDMyZjM3N2ZlMTM1YjEzZTA0NDM2YzVmZnAtMSwKLSAgICAtMHgxLjRkMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDIwNAotICAgIDB4MS45NGU5ZjQ1ZDQzYzEzN2EzZjM0NTY0NDI0MGEyY2VmMHAtMiwKLSAgICAweDEuNGYwZjMwOHA0ODgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDUKLSAgICAweDEuOTRlOWY0NWQ0M2MxMzdhM2YzNDU2NDQyNDBhMmNlZjBwLTIsCi0gICAgLTB4MS40ZjBmMzA4cDQ4OAotICB9LAotICB7IC8vIEVudHJ5IDIwNgotICAgIDB4MS45MzU1ZjY5YWQ0MzI2NDA0ODI3Y2Q1Y2NmZjhhMGM2OXAtMiwKLSAgICAweDEuNTJmMDBlMHA3OTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDcKLSAgICAweDEuOTM1NWY2OWFkNDMyNjQwNDgyN2NkNWNjZmY4YTBjNjlwLTIsCi0gICAgLTB4MS41MmYwMGUwcDc5MwotICB9LAotICB7IC8vIEVudHJ5IDIwOAotICAgIDB4MS4xYTE5YmU4YmVhMTBhODAxZDBiMmQwOWQ5NTA5YzJjNHAtMSwKLSAgICAweDEuNTJmMDZjNzMwZWMwMnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA5Ci0gICAgMHgxLjFhMTliZThiZWExMGE4MDFkMGIyZDA5ZDk1MDljMmM0cC0xLAotICAgIC0weDEuNTJmMDZjNzMwZWMwMnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEwCi0gICAgMHgxLjM4NWQ5MmVjMGM3MzM3ZmVhMzk0OTNmNmYyNjc0MzI4cC0xLAotICAgIDB4MS41M2U3ZDU4NDVmZTNkcDIyMAotICB9LAotICB7IC8vIEVudHJ5IDIxMQotICAgIDB4MS4zODVkOTJlYzBjNzMzN2ZlYTM5NDkzZjZmMjY3NDMyOHAtMSwKLSAgICAtMHgxLjUzZTdkNTg0NWZlM2RwMjIwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEyCi0gICAgMHgxLmZmZmZmZmZmZmUyZjBmMDAwMDAwNDY1ZTM1OTJiZmZicC0xLAotICAgIDB4MS41OTBwLTIwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEzCi0gICAgMHgxLmZmZmZmZmZmZmUyZjBmMDAwMDAwNDY1ZTM1OTJiZmZicC0xLAotICAgIC0weDEuNTkwcC0yMAotICB9LAotICB7IC8vIEVudHJ5IDIxNAotICAgIC0weDEuZmZkN2JjMjhkZWQ5MWZmYTIwMGQ2NzcxMDkyNTE4MDFwLTEsCi0gICAgMHgxLjU5MmYxMTc2ZjA5ODBwODYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTUKLSAgICAtMHgxLmZmZDdiYzI4ZGVkOTFmZmEyMDBkNjc3MTA5MjUxODAxcC0xLAotICAgIC0weDEuNTkyZjExNzZmMDk4MHA4NgotICB9LAotICB7IC8vIEVudHJ5IDIxNgotICAgIC0weDEuY2VlMjhiM2Q3OTc5OTAwMDAwOWVhODA4MTI0NDExNmNwLTEsCi0gICAgMHgxLjU5OTk5OTlkYzA5ZGNwMQotICB9LAotICB7IC8vIEVudHJ5IDIxNwotICAgIC0weDEuY2VlMjhiM2Q3OTc5OTAwMDAwOWVhODA4MTI0NDExNmNwLTEsCi0gICAgLTB4MS41OTk5OTk5ZGMwOWRjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTgKLSAgICAweDEuYzFmMWViMDhjMjYwNDBhMzI4MDBmMDg3OTUyYTM4M2NwLTEsCi0gICAgMHgxLjViZWEwMTBwNDY4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjE5Ci0gICAgMHgxLmMxZjFlYjA4YzI2MDQwYTMyODAwZjA4Nzk1MmEzODNjcC0xLAotICAgIC0weDEuNWJlYTAxMHA0NjgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjAKLSAgICAweDEuZmZmZTM1YWIwOWE2NTNlMjY2ZWFkYTZmNDQwNTUyMTRwLTEsCi0gICAgMHgxLjVjYjgwYTYxMzVlNWFwMTAwMAotICB9LAotICB7IC8vIEVudHJ5IDIyMQotICAgIDB4MS5mZmZlMzVhYjA5YTY1M2UyNjZlYWRhNmY0NDA1NTIxNHAtMSwKLSAgICAtMHgxLjVjYjgwYTYxMzVlNWFwMTAwMAotICB9LAotICB7IC8vIEVudHJ5IDIyMgotICAgIC0weDEuMDdiODVmNjA2ZTc1ZDc2NWIxYWEzYmJjY2JhNmVhZjhwLTMsCi0gICAgMHgxLjVkNWJlNDg3MzBkMmRwMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjMKLSAgICAtMHgxLjA3Yjg1ZjYwNmU3NWQ3NjViMWFhM2JiY2NiYTZlYWY4cC0zLAotICAgIC0weDEuNWQ1YmU0ODczMGQyZHAxMwotICB9LAotICB7IC8vIEVudHJ5IDIyNAotICAgIDB4MS5mZmZmZmZmZmZmODYyMzljMDAwMDA0ZDU4MWIwNTVlYnAtMSwKLSAgICAweDEuNjE0cC0yMQotICB9LAotICB7IC8vIEVudHJ5IDIyNQotICAgIDB4MS5mZmZmZmZmZmZmODYyMzljMDAwMDA0ZDU4MWIwNTVlYnAtMSwKLSAgICAtMHgxLjYxNHAtMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjYKLSAgICAtMHgxLmRkM2E4MDZlODljZjE3ZmZmZmYxNmVjZDUzOTdiNDg2cC0xLAotICAgIDB4MS42MmFkYzhhNjYwMzY0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjcKLSAgICAtMHgxLmRkM2E4MDZlODljZjE3ZmZmZmYxNmVjZDUzOTdiNDg2cC0xLAotICAgIC0weDEuNjJhZGM4YTY2MDM2NHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjI4Ci0gICAgLTB4MS40MzA4YjE0ZjRiNmVkYzRjMDdlZTY4OTVmMzE4OGFmM3AtMSwKLSAgICAweDEuNjRlZjQzOHAxNDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjkKLSAgICAtMHgxLjQzMDhiMTRmNGI2ZWRjNGMwN2VlNjg5NWYzMTg4YWYzcC0xLAotICAgIC0weDEuNjRlZjQzOHAxNDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzAKLSAgICAweDEuNjYyM2QyZWI2YWRkMWZmYzM5OGEzYzIwNDQ3ZjlkMDZwLTMsCi0gICAgMHgxLjY1MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjMxCi0gICAgMHgxLjY2MjNkMmViNmFkZDFmZmMzOThhM2MyMDQ0N2Y5ZDA2cC0zLAotICAgIC0weDEuNjUycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzIKLSAgICAweDEuZmZmODMyYzUwZjQ3MWZmNTU5OWMyM2RjOTY4ZWI4ZTRwLTEsCi0gICAgMHgxLjY1ODY1YjJjYjA4YTJwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzMKLSAgICAweDEuZmZmODMyYzUwZjQ3MWZmNTU5OWMyM2RjOTY4ZWI4ZTRwLTEsCi0gICAgLTB4MS42NTg2NWIyY2IwOGEycC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM0Ci0gICAgMHgxLmFjYzI1MWJlMzMwMjI4MDIxYmMzMTMwN2JjODFkYzE2cC0xLAotICAgIDB4MS42YTkzN2RhYWJjMjBlcDM3NQotICB9LAotICB7IC8vIEVudHJ5IDIzNQotICAgIDB4MS5hY2MyNTFiZTMzMDIyODAyMWJjMzEzMDdiYzgxZGMxNnAtMSwKLSAgICAtMHgxLjZhOTM3ZGFhYmMyMGVwMzc1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM2Ci0gICAgLTB4MS4xNGFlNzJlNmJhMjJlZjQ2MDg4NzVjNDEzNzhlYjA1MnAtNjEsCi0gICAgMHgxLjZhYzViMjYyY2ExZmZwODQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM3Ci0gICAgLTB4MS4xNGFlNzJlNmJhMjJlZjQ2MDg4NzVjNDEzNzhlYjA1MnAtNjEsCi0gICAgLTB4MS42YWM1YjI2MmNhMWZmcDg0OQotICB9LAotICB7IC8vIEVudHJ5IDIzOAotICAgIDB4MS5lMDYxOTk2MGExMWM2ODAxZTgwYWIwYzllMjVmODlkMHAtMiwKLSAgICAweDEuNmY3YmRlZjdiZGVmNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM5Ci0gICAgMHgxLmUwNjE5OTYwYTExYzY4MDFlODBhYjBjOWUyNWY4OWQwcC0yLAotICAgIC0weDEuNmY3YmRlZjdiZGVmNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQwCi0gICAgMHgxLjhkMjNmOTc5MDFhMzA3ZmZmZDZjNTJhZGY4M2YwOTkzcC0xLAotICAgIDB4MS43MzljZTc1OWNlNzM4cDIwMAotICB9LAotICB7IC8vIEVudHJ5IDI0MQotICAgIDB4MS44ZDIzZjk3OTAxYTMwN2ZmZmQ2YzUyYWRmODNmMDk5M3AtMSwKLSAgICAtMHgxLjczOWNlNzU5Y2U3MzhwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQyCi0gICAgMHgxLmZmZmZmNzhhMTRiYTBmMzhhODRiNDhkY2RiNjNkNDRmcC0xLAotICAgIDB4MS43NDUwYzNmNDlkMGIycC0xMQotICB9LAotICB7IC8vIEVudHJ5IDI0MwotICAgIDB4MS5mZmZmZjc4YTE0YmEwZjM4YTg0YjQ4ZGNkYjYzZDQ0ZnAtMSwKLSAgICAtMHgxLjc0NTBjM2Y0OWQwYjJwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ0Ci0gICAgMHgxLmQ2ZjFjNzI3ZmIyY2I3ZjdlOWNiZWUyZTE0MjQ2YzA4cC00LAotICAgIDB4MS43NDlmZTUzZjk2M2ZkcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDUKLSAgICAweDEuZDZmMWM3MjdmYjJjYjdmN2U5Y2JlZTJlMTQyNDZjMDhwLTQsCi0gICAgLTB4MS43NDlmZTUzZjk2M2ZkcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDYKLSAgICAtMHgxLmYyODRiNTAyOGMxODQ3ZmZmZmZjOTUzMmZlODkyYWFkcC0xLAotICAgIDB4MS43NGFmNjcyNWM2MjA2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDcKLSAgICAtMHgxLmYyODRiNTAyOGMxODQ3ZmZmZmZjOTUzMmZlODkyYWFkcC0xLAotICAgIC0weDEuNzRhZjY3MjVjNjIwNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ4Ci0gICAgLTB4MS5mMzE2NWEwYjMwNmIxZmZjZjhkMTE5MDlmZmZiYTE2N3AtMSwKLSAgICAweDEuNzU1MGQyOGZmY2NjNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ5Ci0gICAgLTB4MS5mMzE2NWEwYjMwNmIxZmZjZjhkMTE5MDlmZmZiYTE2N3AtMSwKLSAgICAtMHgxLjc1NTBkMjhmZmNjYzRwMQotICB9LAotICB7IC8vIEVudHJ5IDI1MAotICAgIDB4MS5kNjZkMjA3OGViZGViN2ZmZWRmOGE0OGUyNTA4NGMxOXAtMSwKLSAgICAweDEuNzc1ZTM5N2NkNmFhMHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjUxCi0gICAgMHgxLmQ2NmQyMDc4ZWJkZWI3ZmZlZGY4YTQ4ZTI1MDg0YzE5cC0xLAotICAgIC0weDEuNzc1ZTM5N2NkNmFhMHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjUyCi0gICAgMHgxLjdhZjlhMTMwODVmNTM4MmE4N2E1NDFhZTBiMmU1OTY1cC0xLAotICAgIDB4MS43OTkzMDJiZjdmMjkwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUzCi0gICAgMHgxLjdhZjlhMTMwODVmNTM4MmE4N2E1NDFhZTBiMmU1OTY1cC0xLAotICAgIC0weDEuNzk5MzAyYmY3ZjI5MHAtMQotICB9LAotICB7IC8vIEVudHJ5IDI1NAotICAgIDB4MS5mZmRkMmZkYWMwYzI0ODNlN2IxMTZkNmQ0ODhlN2E0YnAtMSwKLSAgICAweDEuNzk5ZmZmZmZmZmZmZHAtNgotICB9LAotICB7IC8vIEVudHJ5IDI1NQotICAgIDB4MS5mZmRkMmZkYWMwYzI0ODNlN2IxMTZkNmQ0ODhlN2E0YnAtMSwKLSAgICAtMHgxLjc5OWZmZmZmZmZmZmRwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTYKLSAgICAweDEuZmZmNzQ0ZjE4NWE3MzdmMjU2NzMyY2U4N2RiYWY3YTdwLTEsCi0gICAgMHgxLjdhMzY5MmNhOTQ0OTBwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTcKLSAgICAweDEuZmZmNzQ0ZjE4NWE3MzdmMjU2NzMyY2U4N2RiYWY3YTdwLTEsCi0gICAgLTB4MS43YTM2OTJjYTk0NDkwcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjU4Ci0gICAgMHgxLjdhNmIzMjZiNjkwZmE4MzFlZTRkMGRkNzI3ODdmYmMzcC0xLAotICAgIDB4MS43YTY2YTYzOGFjNWI1cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU5Ci0gICAgMHgxLjdhNmIzMjZiNjkwZmE4MzFlZTRkMGRkNzI3ODdmYmMzcC0xLAotICAgIC0weDEuN2E2NmE2MzhhYzViNXAtMQotICB9LAotICB7IC8vIEVudHJ5IDI2MAotICAgIDB4MS42NzFmZGI2NGZmYmVkN2U0OTUyYTlkOTY3OTQxZTdkYXAtNCwKLSAgICAweDEuN2JhNjU0NjJiNDlhMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYxCi0gICAgMHgxLjY3MWZkYjY0ZmZiZWQ3ZTQ5NTJhOWQ5Njc5NDFlN2RhcC00LAotICAgIC0weDEuN2JhNjU0NjJiNDlhMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYyCi0gICAgMHgxLmZmYTU1NDkwZjIwNmUzYjQzMjNhMDI0NzdiNDE0OWU4cC0xLAotICAgIDB4MS43Y2RmMzdjZGYzN2M5cDIzOQotICB9LAotICB7IC8vIEVudHJ5IDI2MwotICAgIDB4MS5mZmE1NTQ5MGYyMDZlM2I0MzIzYTAyNDc3YjQxNDllOHAtMSwKLSAgICAtMHgxLjdjZGYzN2NkZjM3YzlwMjM5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjY0Ci0gICAgMHgxLjRjNWI1OTcwYTNhNDg4MjMzMDA1NzQyYWY1ZTZhOTVlcC00LAotICAgIDB4MS43ZDU0MjU2NWY0NzJlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjUKLSAgICAweDEuNGM1YjU5NzBhM2E0ODgyMzMwMDU3NDJhZjVlNmE5NWVwLTQsCi0gICAgLTB4MS43ZDU0MjU2NWY0NzJlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjYKLSAgICAweDEuNDc5YTU2NjdjNjNmNTdkYTI2YWRmMTgwYTdlYjJmZmJwLTQsCi0gICAgMHgxLjdkYTA3NTE2NDkwNThwMAotICB9LAotICB7IC8vIEVudHJ5IDI2NwotICAgIDB4MS40NzlhNTY2N2M2M2Y1N2RhMjZhZGYxODBhN2ViMmZmYnAtNCwKLSAgICAtMHgxLjdkYTA3NTE2NDkwNThwMAotICB9LAotICB7IC8vIEVudHJ5IDI2OAotICAgIDB4MS5mZmY3MTc1MTFkY2I1N2YzMmQzOGYyOWMwMTM3OWI5OHAtMSwKLSAgICAweDEuN2UwZGRjZGE2Y2MwZHAtNwotICB9LAotICB7IC8vIEVudHJ5IDI2OQotICAgIDB4MS5mZmY3MTc1MTFkY2I1N2YzMmQzOGYyOWMwMTM3OWI5OHAtMSwKLSAgICAtMHgxLjdlMGRkY2RhNmNjMGRwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzAKLSAgICAweDEuZmZmZmZmZmZmZjcwNzdlNzAwMDAwNmI0YzcwNjBjMzNwLTEsCi0gICAgMHgxLjdmNnAtMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzEKLSAgICAweDEuZmZmZmZmZmZmZjcwNzdlNzAwMDAwNmI0YzcwNjBjMzNwLTEsCi0gICAgLTB4MS43ZjZwLTIxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcyCi0gICAgLTB4MS5mZmY5ZTE1NTQ2OTgwMTcyMjA5MTdjM2ZiMzExODhkZHAtMSwKLSAgICAweDEuN2Y5MDExN2Q0NGM3NHAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzMKLSAgICAtMHgxLmZmZjllMTU1NDY5ODAxNzIyMDkxN2MzZmIzMTE4OGRkcC0xLAotICAgIC0weDEuN2Y5MDExN2Q0NGM3NHAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzQKLSAgICAweDEuZmZkYzAwNmJmZjdlOTg0YThkNTAzMWE3MTUyZDM2ZTVwLTEsCi0gICAgMHgxLjdmZmZmZmZmZmVmN2FwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzUKLSAgICAweDEuZmZkYzAwNmJmZjdlOTg0YThkNTAzMWE3MTUyZDM2ZTVwLTEsCi0gICAgLTB4MS43ZmZmZmZmZmZlZjdhcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjc2Ci0gICAgMHgxLmZmZGMwMDZiZmY3ZTc4NDc0ZDY2ZDdmMjVjM2FjMjc3cC0xLAotICAgIDB4MS43ZmZmZmZmZmZmYTI2cC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjc3Ci0gICAgMHgxLmZmZGMwMDZiZmY3ZTc4NDc0ZDY2ZDdmMjVjM2FjMjc3cC0xLAotICAgIC0weDEuN2ZmZmZmZmZmZmEyNnAtNgotICB9LAotICB7IC8vIEVudHJ5IDI3OAotICAgIDB4MS5mZmRjMDA2YmZmN2U2ODM5YWRiYTJhOTExMDhkNTZhZnAtMSwKLSAgICAweDEuN2ZmZmZmZmZmZmY4MHAtNgotICB9LAotICB7IC8vIEVudHJ5IDI3OQotICAgIDB4MS5mZmRjMDA2YmZmN2U2ODM5YWRiYTJhOTExMDhkNTZhZnAtMSwKLSAgICAtMHgxLjdmZmZmZmZmZmZmODBwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODAKLSAgICAweDEuNzYwNzE4YWI0NDM5NzdmZGQ4ZjhmMjIyMWNhNGRiM2NwLTEsCi0gICAgMHgxLjgwZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDI4MQotICAgIDB4MS43NjA3MThhYjQ0Mzk3N2ZkZDhmOGYyMjIxY2E0ZGIzY3AtMSwKLSAgICAtMHgxLjgwZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDI4MgotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmViMjlkMGJwLTEsCi0gICAgMHgxLjgxYWUwZGZmYTNiMzNwOTU5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjgzCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWIyOWQwYnAtMSwKLSAgICAtMHgxLjgxYWUwZGZmYTNiMzNwOTU5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjg0Ci0gICAgLTB4MS5mYmRjNDgxMjViMzQ1NzRjZjFmOTE0MTllN2VkYjc1YnAtMSwKLSAgICAweDEuODFkNjEyMjg5YzVjZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg1Ci0gICAgLTB4MS5mYmRjNDgxMjViMzQ1NzRjZjFmOTE0MTllN2VkYjc1YnAtMSwKLSAgICAtMHgxLjgxZDYxMjI4OWM1Y2ZwMQotICB9LAotICB7IC8vIEVudHJ5IDI4NgotICAgIDB4MS5mZjllMzk2NjUxY2M5N2U5MzViMmUwZWU3MzYwN2QxMnAtNSwKLSAgICAweDEuODIyMDE5MjI3MGEwZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg3Ci0gICAgMHgxLmZmOWUzOTY2NTFjYzk3ZTkzNWIyZTBlZTczNjA3ZDEycC01LAotICAgIC0weDEuODIyMDE5MjI3MGEwZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg4Ci0gICAgMHgxLmZlMmIyNmRkZGI1Yzg4MmYzMGE4ODVjMWIyOTFmOTQ1cC01LAotICAgIDB4MS44MjJiYjc4MGU5MTA0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODkKLSAgICAweDEuZmUyYjI2ZGRkYjVjODgyZjMwYTg4NWMxYjI5MWY5NDVwLTUsCi0gICAgLTB4MS44MjJiYjc4MGU5MTA0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTAKLSAgICAweDEuZWI4N2NmZjdjOTExNTdhNzU1ODE4YzAxMjg0YjBlNTFwLTUsCi0gICAgMHgxLjgyYzExOWM0YjhlNDlwMAotICB9LAotICB7IC8vIEVudHJ5IDI5MQotICAgIDB4MS5lYjg3Y2ZmN2M5MTE1N2E3NTU4MThjMDEyODRiMGU1MXAtNSwKLSAgICAtMHgxLjgyYzExOWM0YjhlNDlwMAotICB9LAotICB7IC8vIEVudHJ5IDI5MgotICAgIDB4MS5lYjg3Y2ZmN2E2MmI3N2I1N2E2NmFjMjc1YTMxMDRjOHAtNSwKLSAgICAweDEuODJjMTE5YzRiOWZjNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkzCi0gICAgMHgxLmViODdjZmY3YTYyYjc3YjU3YTY2YWMyNzVhMzEwNGM4cC01LAotICAgIC0weDEuODJjMTE5YzRiOWZjNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk0Ci0gICAgMHgxLmViODdjZmY3OTVhYjE3YTgwNzg2NGQ4ZmIwY2E0M2NhcC01LAotICAgIDB4MS44MmMxMTljNGJhODA4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTUKLSAgICAweDEuZWI4N2NmZjc5NWFiMTdhODA3ODY0ZDhmYjBjYTQzY2FwLTUsCi0gICAgLTB4MS44MmMxMTljNGJhODA4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTYKLSAgICAweDEuZGUxZDE3YWIwZDZhNDgzNjc1MjMxOTNkNjg1NjhjMWJwLTUsCi0gICAgMHgxLjgzMmM5ZmM3NjUyNzBwMAotICB9LAotICB7IC8vIEVudHJ5IDI5NwotICAgIDB4MS5kZTFkMTdhYjBkNmE0ODM2NzUyMzE5M2Q2ODU2OGMxYnAtNSwKLSAgICAtMHgxLjgzMmM5ZmM3NjUyNzBwMAotICB9LAotICB7IC8vIEVudHJ5IDI5OAotICAgIDB4MS5kYzg2ZTdiZWMwYzQ0ODQ4Y2ZjMzliN2YxYjgyMDRhY3AtNSwKLSAgICAweDEuODMzOTU2Y2U3ZDFmOXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk5Ci0gICAgMHgxLmRjODZlN2JlYzBjNDQ4NDhjZmMzOWI3ZjFiODIwNGFjcC01LAotICAgIC0weDEuODMzOTU2Y2U3ZDFmOXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAwCi0gICAgMHgxLmRiMDNjYmI5NDJhN2E4NDk3NGU5MDRlY2M4OTZhNWVlcC01LAotICAgIDB4MS44MzQ1NzRlYjFjMDk5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDEKLSAgICAweDEuZGIwM2NiYjk0MmE3YTg0OTc0ZTkwNGVjYzg5NmE1ZWVwLTUsCi0gICAgLTB4MS44MzQ1NzRlYjFjMDk5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDIKLSAgICAweDEuY2U0MzE3MTBkMTUwNzdiMWU4MTcwYTUzMmI2OGFiZGVwLTUsCi0gICAgMHgxLjgzYWJhNTY4OGUxM2VwMAotICB9LAotICB7IC8vIEVudHJ5IDMwMwotICAgIDB4MS5jZTQzMTcxMGQxNTA3N2IxZTgxNzBhNTMyYjY4YWJkZXAtNSwKLSAgICAtMHgxLjgzYWJhNTY4OGUxM2VwMAotICB9LAotICB7IC8vIEVudHJ5IDMwNAotICAgIDB4MS5jZDQ2YjNhNzdmNmRkN2FiMGQzMTI1NDZhYmE3YzBhZnAtNSwKLSAgICAweDEuODNiMzhiYmFmZDc1YnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA1Ci0gICAgMHgxLmNkNDZiM2E3N2Y2ZGQ3YWIwZDMxMjU0NmFiYTdjMGFmcC01LAotICAgIC0weDEuODNiMzhiYmFmZDc1YnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA2Ci0gICAgLTB4MS5mZjI5YmM2NjZiZWU2ZWE0NGQ0ZGIwMDBlNWYxNzNiZnAtMSwKLSAgICAweDEuODZhMDE3Y2IxYzMxY3AxNgotICB9LAotICB7IC8vIEVudHJ5IDMwNwotICAgIC0weDEuZmYyOWJjNjY2YmVlNmVhNDRkNGRiMDAwZTVmMTczYmZwLTEsCi0gICAgLTB4MS44NmEwMTdjYjFjMzFjcDE2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzA4Ci0gICAgLTB4MS43OTY4OTE2ZTRjNjQ2MzBlOGUzYWU2MDI3NmJhMmQyN3AtMiwKLSAgICAweDEuODcyMDU4OHAzOTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDkKLSAgICAtMHgxLjc5Njg5MTZlNGM2NDYzMGU4ZTNhZTYwMjc2YmEyZDI3cC0yLAotICAgIC0weDEuODcyMDU4OHAzOTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTAKLSAgICAweDEuZmI5N2M3ZTQ1MjkxN2Y1OTg5MGRmYjQ3ZTdjOWI1ZTNwLTEsCi0gICAgMHgxLjg4YTIyODhhMjI4ODhwOQotICB9LAotICB7IC8vIEVudHJ5IDMxMQotICAgIDB4MS5mYjk3YzdlNDUyOTE3ZjU5ODkwZGZiNDdlN2M5YjVlM3AtMSwKLSAgICAtMHgxLjg4YTIyODhhMjI4ODhwOQotICB9LAotICB7IC8vIEVudHJ5IDMxMgotICAgIC0weDEuYWU0NGE1ZjAxYmY2MzMwMTVlNWFhY2NjYWI0YTdmM2RwLTEsCi0gICAgMHgxLjhjZjAxMzk5MWMzMDhwMTAwMAotICB9LAotICB7IC8vIEVudHJ5IDMxMwotICAgIC0weDEuYWU0NGE1ZjAxYmY2MzMwMTVlNWFhY2NjYWI0YTdmM2RwLTEsCi0gICAgLTB4MS44Y2YwMTM5OTFjMzA4cDEwMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTQKLSAgICAweDEuZDk2ZTgyZjcxYTlkYzdmZDg2ZjU3NDgwZTc1NDkxZTNwLTEsCi0gICAgMHgxLjlwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTUKLSAgICAweDEuZDk2ZTgyZjcxYTlkYzdmZDg2ZjU3NDgwZTc1NDkxZTNwLTEsCi0gICAgLTB4MS45cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE2Ci0gICAgMHgxLjBmZDlkNWMwOTNkZjRmNTdmYzQ5NDYzZTJmM2YzM2U2cC03LAotICAgIDB4MS45cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTcKLSAgICAweDEuMGZkOWQ1YzA5M2RmNGY1N2ZjNDk0NjNlMmYzZjMzZTZwLTcsCi0gICAgLTB4MS45cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTgKLSAgICAweDEuMGZkOWQ1YzA1ZTVmYzgwMWEwZjVjYmZhMzM3NzdhZTRwLTcsCi0gICAgMHgxLjkwMDAwMDAwMDA2YjBwMAotICB9LAotICB7IC8vIEVudHJ5IDMxOQotICAgIDB4MS4wZmQ5ZDVjMDVlNWZjODAxYTBmNWNiZmEzMzc3N2FlNHAtNywKLSAgICAtMHgxLjkwMDAwMDAwMDA2YjBwMAotICB9LAotICB7IC8vIEVudHJ5IDMyMAotICAgIDB4MS5iYzhiZTcyNTQxN2Q4ODAwMDAwY2FkYTQyZWVlYTA0ZXAtMSwKLSAgICAweDEuOTAwYzIwNmQ0NDE2MnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzIxCi0gICAgMHgxLmJjOGJlNzI1NDE3ZDg4MDAwMDBjYWRhNDJlZWVhMDRlcC0xLAotICAgIC0weDEuOTAwYzIwNmQ0NDE2MnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzIyCi0gICAgMHgxLmZmZmZmZmZmZjYzYjY3ZTQ5NzJkODZhMmY5ZDgyMDlicC0xLAotICAgIDB4MS45MDBjMmFmN2JhZWYzcC0xOQotICB9LAotICB7IC8vIEVudHJ5IDMyMwotICAgIDB4MS5mZmZmZmZmZmY2M2I2N2U0OTcyZDg2YTJmOWQ4MjA5YnAtMSwKLSAgICAtMHgxLjkwMGMyYWY3YmFlZjNwLTE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzI0Ci0gICAgMHgxLmJkNDY0YzkzNTJkMTA3ZmZmZmZmOGRiOWUwZGE3MWMwcC0xLAotICAgIDB4MS45MDBmMTFiZDg5NTVkcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjUKLSAgICAweDEuYmQ0NjRjOTM1MmQxMDdmZmZmZmY4ZGI5ZTBkYTcxYzBwLTEsCi0gICAgLTB4MS45MDBmMTFiZDg5NTVkcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjYKLSAgICAweDEuZmZmZmZkYTg1Y2RkMGQ0MzFlMDZmOWFhNzRiYzhjZTBwLTEsCi0gICAgMHgxLjkxMGIzNWMzMjUzZDRwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI3Ci0gICAgMHgxLmZmZmZmZGE4NWNkZDBkNDMxZTA2ZjlhYTc0YmM4Y2UwcC0xLAotICAgIC0weDEuOTEwYjM1YzMyNTNkNHAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjgKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQ0MTlmYThwLTU0LAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjkKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQ0MTlmYThwLTU0LAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMwCi0gICAgLTB4MS4yYWVlZjRiOWVhMWFlNGU2NGM3MWZjY2YxZmQwNmY0MHAtMTgsCi0gICAgMHgxLjkyMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMxCi0gICAgLTB4MS4yYWVlZjRiOWVhMWFlNGU2NGM3MWZjY2YxZmQwNmY0MHAtMTgsCi0gICAgLTB4MS45MjJwMAotICB9LAotICB7IC8vIEVudHJ5IDMzMgotICAgIC0weDEuZmZmZmZmZmZkOTA0ODQ3Nzk4YzdhY2Q0NmFkMTgzY2FwLTE4LAotICAgIDB4MS45MjIwMzU0NDQyZDE4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzMKLSAgICAtMHgxLmZmZmZmZmZmZDkwNDg0Nzc5OGM3YWNkNDZhZDE4M2NhcC0xOCwKLSAgICAtMHgxLjkyMjAzNTQ0NDJkMThwMAotICB9LAotICB7IC8vIEVudHJ5IDMzNAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmYyYWM4YzNkYTcyY2JwLTEsCi0gICAgMHgxLjkyNTFmOTNhZWI1OWRwMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzUKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmMmFjOGMzZGE3MmNicC0xLAotICAgIC0weDEuOTI1MWY5M2FlYjU5ZHAxMgotICB9LAotICB7IC8vIEVudHJ5IDMzNgotICAgIDB4MS5mZmI4YzRkMWY3OGE4N2ZmZmZmYjIzZDE3MWJkNTRkMHAtMSwKLSAgICAweDEuOTQzYmUyMjFkOTA5YXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM3Ci0gICAgMHgxLmZmYjhjNGQxZjc4YTg3ZmZmZmZiMjNkMTcxYmQ1NGQwcC0xLAotICAgIC0weDEuOTQzYmUyMjFkOTA5YXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM4Ci0gICAgMHgxLmZmZjYwMTFmZGRkYWI3ZjI1YzgyZTUzODRkNDZjYzY5cC0xLAotICAgIDB4MS45NGFmNjk5MzAyODc1cC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzM5Ci0gICAgMHgxLmZmZjYwMTFmZGRkYWI3ZjI1YzgyZTUzODRkNDZjYzY5cC0xLAotICAgIC0weDEuOTRhZjY5OTMwMjg3NXAtNwotICB9LAotICB7IC8vIEVudHJ5IDM0MAotICAgIDB4MS5kNzk1NGU3YTNlZTk5ODAwMDA5OTQ3MDYwNDMyOWI2OHAtMSwKLSAgICAweDEuOTk5OTk5YWI3YjBlZHAtMgotICB9LAotICB7IC8vIEVudHJ5IDM0MQotICAgIDB4MS5kNzk1NGU3YTNlZTk5ODAwMDA5OTQ3MDYwNDMyOWI2OHAtMSwKLSAgICAtMHgxLjk5OTk5OWFiN2IwZWRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDIKLSAgICAweDEuZDc5NTRlNzZjOGUzMGZmZmZmNWE5YmY0NTVhMDY0MTBwLTEsCi0gICAgMHgxLjk5OTk5OWJkNDE5MGJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDMKLSAgICAweDEuZDc5NTRlNzZjOGUzMGZmZmZmNWE5YmY0NTVhMDY0MTBwLTEsCi0gICAgLTB4MS45OTk5OTliZDQxOTBicC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ0Ci0gICAgMHgxLmZhMjNjZmI4MjAyMjQ0MGViOTcyYzdlMDgzOTMzZDIwcC0xLAotICAgIDB4MS45YmQwZjE5NDc5YTI0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDUKLSAgICAweDEuZmEyM2NmYjgyMDIyNDQwZWI5NzJjN2UwODM5MzNkMjBwLTEsCi0gICAgLTB4MS45YmQwZjE5NDc5YTI0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDYKLSAgICAtMHgxLjZhMDllNjY3ZjNhZjA3ZjJmNDY3NmI1ZjZmMjY4YzgxcC0xLAotICAgIDB4MS45YzU1ODM1ZTdlODNlcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDcKLSAgICAtMHgxLjZhMDllNjY3ZjNhZjA3ZjJmNDY3NmI1ZjZmMjY4YzgxcC0xLAotICAgIC0weDEuOWM1NTgzNWU3ZTgzZXA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzQ4Ci0gICAgMHgxLmZmZjU5YzEyNTU4MDk3ZjI4NThmNGExMzI2ZjJkZGY0cC0xLAotICAgIDB4MS45Yzk5NDJiMTQ0NDhkcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzQ5Ci0gICAgMHgxLmZmZjU5YzEyNTU4MDk3ZjI4NThmNGExMzI2ZjJkZGY0cC0xLAotICAgIC0weDEuOWM5OTQyYjE0NDQ4ZHAtNwotICB9LAotICB7IC8vIEVudHJ5IDM1MAotICAgIDB4MS5mZmVjZTVjYWI0Y2E1NjUyZWEyZmM3Y2NjZTg4MzMwNHAtMSwKLSAgICAweDEuOWQzZDkyNDg1ZTJiNXA1MjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTEKLSAgICAweDEuZmZlY2U1Y2FiNGNhNTY1MmVhMmZjN2NjY2U4ODMzMDRwLTEsCi0gICAgLTB4MS45ZDNkOTI0ODVlMmI1cDUyMwotICB9LAotICB7IC8vIEVudHJ5IDM1MgotICAgIC0weDEuZmY1NTMwMWQzYTc4MGQxOWMyOGMyMmM4MmMxZjUzODNwLTUsCi0gICAgMHgxLmEwZDA2ODM0MWEwODBwMTAwMAotICB9LAotICB7IC8vIEVudHJ5IDM1MwotICAgIC0weDEuZmY1NTMwMWQzYTc4MGQxOWMyOGMyMmM4MmMxZjUzODNwLTUsCi0gICAgLTB4MS5hMGQwNjgzNDFhMDgwcDEwMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTQKLSAgICAweDEuNWE1NjE1YWNkMGRjMDliZjMyZTkwMzE0OTYzNGY5OTlwLTEsCi0gICAgMHgxLmE3ZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDM1NQotICAgIDB4MS41YTU2MTVhY2QwZGMwOWJmMzJlOTAzMTQ5NjM0Zjk5OXAtMSwKLSAgICAtMHgxLmE3ZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDM1NgotICAgIDB4MS43NjZhZDI3YTFkZTRmYjFhNWI2NjcyMTZiYmU2YmY2OHAtMTQsCi0gICAgMHgxLmE4NTgzNDM4NjM5NjVwMTE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzU3Ci0gICAgMHgxLjc2NmFkMjdhMWRlNGZiMWE1YjY2NzIxNmJiZTZiZjY4cC0xNCwKLSAgICAtMHgxLmE4NTgzNDM4NjM5NjVwMTE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzU4Ci0gICAgMHgxLjZiZDRkNWJlNzI0OTMyNWQ4NjgwNjA2ZTZiOWVhNjI1cC0xLAotICAgIDB4MS5hYjE5MDYzM2Q4OGVhcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTkKLSAgICAweDEuNmJkNGQ1YmU3MjQ5MzI1ZDg2ODA2MDZlNmI5ZWE2MjVwLTEsCi0gICAgLTB4MS5hYjE5MDYzM2Q4OGVhcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjAKLSAgICAweDEuZmZmZmZmZmZmZjRhNTdlNjRkYTg3YTVhZjQ3Y2ZhMThwLTEsCi0gICAgMHgxLmFmNGJkMmY0YmQyZjBwLTIxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzYxCi0gICAgMHgxLmZmZmZmZmZmZmY0YTU3ZTY0ZGE4N2E1YWY0N2NmYTE4cC0xLAotICAgIC0weDEuYWY0YmQyZjRiZDJmMHAtMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjIKLSAgICAweDEuN2ZmMjkzNGFkMjlhNzQyODhiODg2MTI0ZmVhZDU4NDJwLTEsCi0gICAgMHgxLmFmYTcwMzAwYWVlNjBwNzIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjMKLSAgICAweDEuN2ZmMjkzNGFkMjlhNzQyODhiODg2MTI0ZmVhZDU4NDJwLTEsCi0gICAgLTB4MS5hZmE3MDMwMGFlZTYwcDcyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY0Ci0gICAgMHgxLmZmODY2YWViZGNlMGE3ZmZmZmZiNjA3NGQ1MTk5ODk2cC0xLAotICAgIDB4MS5iNWFiNDI3Y2ZmYjRjcDk0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzY1Ci0gICAgMHgxLmZmODY2YWViZGNlMGE3ZmZmZmZiNjA3NGQ1MTk5ODk2cC0xLAotICAgIC0weDEuYjVhYjQyN2NmZmI0Y3A5NAotICB9LAotICB7IC8vIEVudHJ5IDM2NgotICAgIC0weDEuZjU0ZjUyMjdhNGU4M2ZiZjkzOWIyZTk2MTc4ZjEyMWRwLTYwLAotICAgIDB4MS5iOTUxZjE1NzJlYmE1cDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY3Ci0gICAgLTB4MS5mNTRmNTIyN2E0ZTgzZmJmOTM5YjJlOTYxNzhmMTIxZHAtNjAsCi0gICAgLTB4MS5iOTUxZjE1NzJlYmE1cDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY4Ci0gICAgMHgxLmZmZmQwNmQzNTU3OWM3ZmUyOTVkYWQxN2VmYmJiZTk3cC0xLAotICAgIDB4MS5iOTZlNWI5NmU1YjkxcC04Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzY5Ci0gICAgMHgxLmZmZmQwNmQzNTU3OWM3ZmUyOTVkYWQxN2VmYmJiZTk3cC0xLAotICAgIC0weDEuYjk2ZTViOTZlNWI5MXAtOAotICB9LAotICB7IC8vIEVudHJ5IDM3MAotICAgIC0weDEuN2M0MTI4ZTJhZmY0YjJiNzhlMTQ3NjAxZmE2NThhZjVwLTEsCi0gICAgMHgxLmJhM2IxODM5NWQxN2JwOAotICB9LAotICB7IC8vIEVudHJ5IDM3MQotICAgIC0weDEuN2M0MTI4ZTJhZmY0YjJiNzhlMTQ3NjAxZmE2NThhZjVwLTEsCi0gICAgLTB4MS5iYTNiMTgzOTVkMTdicDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzIKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlZmFmZjlkcC0xLAotICAgIDB4MS5iYWI2MmVkNjU1MDE5cDk3MAotICB9LAotICB7IC8vIEVudHJ5IDM3MwotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVmYWZmOWRwLTEsCi0gICAgLTB4MS5iYWI2MmVkNjU1MDE5cDk3MAotICB9LAotICB7IC8vIEVudHJ5IDM3NAotICAgIDB4MS5mZmZmZmYzZTUzNDQ2N2ZmZmZmMzdlNTA5YjdiNzkyZXAtMSwKLSAgICAweDEuYmQ1NWFhNDExYWI0NnAtMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzUKLSAgICAweDEuZmZmZmZmM2U1MzQ0NjdmZmZmZjM3ZTUwOWI3Yjc5MmVwLTEsCi0gICAgLTB4MS5iZDU1YWE0MTFhYjQ2cC0xMwotICB9LAotICB7IC8vIEVudHJ5IDM3NgotICAgIC0weDEuN2ZkYjA3YjlmNzdlMDdmZmZmNzIwN2M0NjI4ZDNmNjhwLTEsCi0gICAgMHgxLmJkNjE2ZDRmZTk1Y2RwMzYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzcKLSAgICAtMHgxLjdmZGIwN2I5Zjc3ZTA3ZmZmZjcyMDdjNDYyOGQzZjY4cC0xLAotICAgIC0weDEuYmQ2MTZkNGZlOTVjZHAzNgotICB9LAotICB7IC8vIEVudHJ5IDM3OAotICAgIDB4MS5mZmNmNGRhNzYyMjJjODg5NzE4MjM5NTIzMzQxZjRiNXAtMSwKLSAgICAweDEuYmVhcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzc5Ci0gICAgMHgxLmZmY2Y0ZGE3NjIyMmM4ODk3MTgyMzk1MjMzNDFmNGI1cC0xLAotICAgIC0weDEuYmVhcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzgwCi0gICAgLTB4MS5kZGVlMTMzNTdlYzZmN2ZjYzk1MDIzOTlmY2NkYzJmMHAtMSwKLSAgICAweDEuYzExNTE2YWY1ODVhNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgxCi0gICAgLTB4MS5kZGVlMTMzNTdlYzZmN2ZjYzk1MDIzOTlmY2NkYzJmMHAtMSwKLSAgICAtMHgxLmMxMTUxNmFmNTg1YTRwMQotICB9LAotICB7IC8vIEVudHJ5IDM4MgotICAgIDB4MS41OGNjY2VjMDU5ZGExN2QzZjQ0OGE4YjJiNmU3YzBlOHAtMSwKLSAgICAweDEuYzc1ZTU0ZGU0YzA2ZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgzCi0gICAgMHgxLjU4Y2NjZWMwNTlkYTE3ZDNmNDQ4YThiMmI2ZTdjMGU4cC0xLAotICAgIC0weDEuYzc1ZTU0ZGU0YzA2ZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg0Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmM4NjYzZXAtMSwKLSAgICAweDEuY2I0NGU4NmJjMTkyYnA2NDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODUKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYzg2NjNlcC0xLAotICAgIC0weDEuY2I0NGU4NmJjMTkyYnA2NDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODYKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYyMTk4ZjlwLTEsCi0gICAgMHgxLmNiNDRlODZiYzE5MmJwNjQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzg3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMjE5OGY5cC0xLAotICAgIC0weDEuY2I0NGU4NmJjMTkyYnA2NDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODgKLSAgICAtMHgxLmNhMjgxZDdmZTQ0YjA3ZmZmZmQyYjdkNDZhYjVkMzYxcC0xLAotICAgIDB4MS5jZDVhNmY4NzYyYWZmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODkKLSAgICAtMHgxLmNhMjgxZDdmZTQ0YjA3ZmZmZmQyYjdkNDZhYjVkMzYxcC0xLAotICAgIC0weDEuY2Q1YTZmODc2MmFmZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkwCi0gICAgMHgxLmU4MGFkNGZlNTRjNzFkNGU2MDRlZGU0NzRjY2EwYjE5cC01LAotICAgIDB4MS5kMGNiOTVmMDJhZDc3cDQ2NAotICB9LAotICB7IC8vIEVudHJ5IDM5MQotICAgIDB4MS5lODBhZDRmZTU0YzcxZDRlNjA0ZWRlNDc0Y2NhMGIxOXAtNSwKLSAgICAtMHgxLmQwY2I5NWYwMmFkNzdwNDY0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzkyCi0gICAgMHgxLjBkZjhlYjQwOWVmZTM3ZmZmZmY5MjViNWRlMmM4MGI2cC0xLAotICAgIDB4MS5kMzFiZDYwNDkwM2EwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTMKLSAgICAweDEuMGRmOGViNDA5ZWZlMzdmZmZmZjkyNWI1ZGUyYzgwYjZwLTEsCi0gICAgLTB4MS5kMzFiZDYwNDkwM2EwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTQKLSAgICAweDEuZmYyYWU5NjhlZmU3MGVhNDEyNjg0OWMzODMyYzljYmRwLTEsCi0gICAgMHgxLmQzMmY0NjEwMTgwZjZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTUKLSAgICAweDEuZmYyYWU5NjhlZmU3MGVhNDEyNjg0OWMzODMyYzljYmRwLTEsCi0gICAgLTB4MS5kMzJmNDYxMDE4MGY2cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzk2Ci0gICAgLTB4MS5jZWMzMDdhNjc0ZDNlZDJmOGRmNDdjZjM5NGFhODhlYXAtMywKLSAgICAweDEuZDk2ZTA1OHA0ODgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTcKLSAgICAtMHgxLmNlYzMwN2E2NzRkM2VkMmY4ZGY0N2NmMzk0YWE4OGVhcC0zLAotICAgIC0weDEuZDk2ZTA1OHA0ODgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTgKLSAgICAtMHgxLmFjOGRiZjljZGM5NTQ4MzU3NzU2MGIxODE0ZWE4ODk1cC01LAotICAgIDB4MS5kYjA4MDNjMzkyYjRjcDE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzk5Ci0gICAgLTB4MS5hYzhkYmY5Y2RjOTU0ODM1Nzc1NjBiMTgxNGVhODg5NXAtNSwKLSAgICAtMHgxLmRiMDgwM2MzOTJiNGNwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDAKLSAgICAtMHgxLmFjOTQ4NzBjYTYzMTY4NGJkMTBiNjU4YjgwY2ZjZDQycC01LAotICAgIDB4MS5kYjA4MDNjM2ZmNTFkcDE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDAxCi0gICAgLTB4MS5hYzk0ODcwY2E2MzE2ODRiZDEwYjY1OGI4MGNmY2Q0MnAtNSwKLSAgICAtMHgxLmRiMDgwM2MzZmY1MWRwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDIKLSAgICAweDEuZmYyMjkwNzNmZDhiNWU5MWQ2MGRkMDk1Y2ZkZTU5NjdwLTEsCi0gICAgMHgxLmRjNHAtNQotICB9LAotICB7IC8vIEVudHJ5IDQwMwotICAgIDB4MS5mZjIyOTA3M2ZkOGI1ZTkxZDYwZGQwOTVjZmRlNTk2N3AtMSwKLSAgICAtMHgxLmRjNHAtNQotICB9LAotICB7IC8vIEVudHJ5IDQwNAotICAgIDB4MS5mZjIxZTVmOTc1ZmZmZTgzYzJhZTFjNTVhODg1ZjEyZnAtMSwKLSAgICAweDEuZGNmNzNkY2Y3M2RjY3AtNQotICB9LAotICB7IC8vIEVudHJ5IDQwNQotICAgIDB4MS5mZjIxZTVmOTc1ZmZmZTgzYzJhZTFjNTVhODg1ZjEyZnAtMSwKLSAgICAtMHgxLmRjZjczZGNmNzNkY2NwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDYKLSAgICAweDEuMmYwMTEzMjY0MjBlNTAwMjE3MmRiMjQ1ZmQ5MDYzZTJwLTEsCi0gICAgMHgxLmRmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDcKLSAgICAweDEuMmYwMTEzMjY0MjBlNTAwMjE3MmRiMjQ1ZmQ5MDYzZTJwLTEsCi0gICAgLTB4MS5kZmZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA4Ci0gICAgMHgxLmY3MmM4ZTE2ZGJjNzhiMjZhZmJmMzQ2MTg1ZGNjYjQ4cC0xLAotICAgIDB4MS5lMTIzNjkxYTdjNGJlcDI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDA5Ci0gICAgMHgxLmY3MmM4ZTE2ZGJjNzhiMjZhZmJmMzQ2MTg1ZGNjYjQ4cC0xLAotICAgIC0weDEuZTEyMzY5MWE3YzRiZXAyNgotICB9LAotICB7IC8vIEVudHJ5IDQxMAotICAgIC0weDEuNGIwYzZiYjYyM2Y1N2ZmZmZmNWU0NTgyMDNkZWVmMzNwLTIsCi0gICAgMHgxLmU2NjY2NjZmOWNmNDlwMAotICB9LAotICB7IC8vIEVudHJ5IDQxMQotICAgIC0weDEuNGIwYzZiYjYyM2Y1N2ZmZmZmNWU0NTgyMDNkZWVmMzNwLTIsCi0gICAgLTB4MS5lNjY2NjY2ZjljZjQ5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTIKLSAgICAweDEuZmQ3NGI1NTg3NTg4NDgxODg0YTkyZTgzNzQ3ZjVjNGVwLTEsCi0gICAgMHgxLmU4M2FjY2ZjNTBiNzBwOTk1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDEzCi0gICAgMHgxLmZkNzRiNTU4NzU4ODQ4MTg4NGE5MmU4Mzc0N2Y1YzRlcC0xLAotICAgIC0weDEuZTgzYWNjZmM1MGI3MHA5OTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTQKLSAgICAweDEuZmZmMTY5YjZhYjdkMTdmNDNkNTlmNmNmMDg1YWNjYjBwLTEsCi0gICAgMHgxLmU4ZXAtNwotICB9LAotICB7IC8vIEVudHJ5IDQxNQotICAgIDB4MS5mZmYxNjliNmFiN2QxN2Y0M2Q1OWY2Y2YwODVhY2NiMHAtMSwKLSAgICAtMHgxLmU4ZXAtNwotICB9LAotICB7IC8vIEVudHJ5IDQxNgotICAgIDB4MS43ZDM5YzlmMWIwYjNjMDAyN2E1ZmM5YTc2ZmFlZTgzZHAtMSwKLSAgICAweDEuZWFmNWVhNTMxNzQ0MnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDE3Ci0gICAgMHgxLjdkMzljOWYxYjBiM2MwMDI3YTVmYzlhNzZmYWVlODNkcC0xLAotICAgIC0weDEuZWFmNWVhNTMxNzQ0MnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDE4Ci0gICAgMHgxLjdmMTNhZjcwODFhNjc0MTY2MDQ2OWZkNjAyNTVmZTQ5cC0xLAotICAgIDB4MS5lYjBjMmIwMGIxYjgzcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTkKLSAgICAweDEuN2YxM2FmNzA4MWE2NzQxNjYwNDY5ZmQ2MDI1NWZlNDlwLTEsCi0gICAgLTB4MS5lYjBjMmIwMGIxYjgzcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjAKLSAgICAtMHgxLjdhZDdiODhhMWZlMGY4MmI2ZjI0OWM3YzU2ZGQ4YjVhcC0xLAotICAgIDB4MS5lYmM2YjU1NTMxMWM0cDE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDIxCi0gICAgLTB4MS43YWQ3Yjg4YTFmZTBmODJiNmYyNDljN2M1NmRkOGI1YXAtMSwKLSAgICAtMHgxLmViYzZiNTU1MzExYzRwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjIKLSAgICAweDEuYjA2YjJiNThhMmEyM2M5OGIxMjg1MzQxNWI1YzgzYTFwLTUsCi0gICAgMHgxLmVmN2JkZWY3YmRlZjJwMjM5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDIzCi0gICAgMHgxLmIwNmIyYjU4YTJhMjNjOThiMTI4NTM0MTViNWM4M2ExcC01LAotICAgIC0weDEuZWY3YmRlZjdiZGVmMnAyMzkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjQKLSAgICAweDEuZmU2ZGVkNTMxNzJhNjg3Njc5MGQzYWFiODNhNjU2ZjRwLTEsCi0gICAgMHgxLmVmYmJlZWZiYmVlZjhwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjUKLSAgICAweDEuZmU2ZGVkNTMxNzJhNjg3Njc5MGQzYWFiODNhNjU2ZjRwLTEsCi0gICAgLTB4MS5lZmJiZWVmYmJlZWY4cDE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDI2Ci0gICAgLTB4MS5mZTJiY2I4N2E3ZTE1OGNmZmEyZmU4ZDMwNmNjNzU1NXAtMSwKLSAgICAweDEuZjA3YzFmMDdjMWVmN3AyMzkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjcKLSAgICAtMHgxLmZlMmJjYjg3YTdlMTU4Y2ZmYTJmZThkMzA2Y2M3NTU1cC0xLAotICAgIC0weDEuZjA3YzFmMDdjMWVmN3AyMzkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjgKLSAgICAtMHgxLjc5ZDA4ZDZiM2E4ODI4MmUwYTBkYTIzNTA0NjRkMGFicC0xLAotICAgIDB4MS5mMGYyYjVlMDYwYjI5cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjkKLSAgICAtMHgxLjc5ZDA4ZDZiM2E4ODI4MmUwYTBkYTIzNTA0NjRkMGFicC0xLAotICAgIC0weDEuZjBmMmI1ZTA2MGIyOXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMwCi0gICAgMHgxLmYwZDExZDMyMTE3OGQ3ZmYxNWRhNDg5OTBkNTk4M2MycC0xLAotICAgIDB4MS5mNDBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzEKLSAgICAweDEuZjBkMTFkMzIxMTc4ZDdmZjE1ZGE0ODk5MGQ1OTgzYzJwLTEsCi0gICAgLTB4MS5mNDBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzIKLSAgICAweDEuZTNmZjViMTVmNzIzZDdmN2Y3ZjViYjBkYmNlNTRkMDFwLTQsCi0gICAgMHgxLmY0M2Q0OWY5NDdlODdwOQotICB9LAotICB7IC8vIEVudHJ5IDQzMwotICAgIDB4MS5lM2ZmNWIxNWY3MjNkN2Y3ZjdmNWJiMGRiY2U1NGQwMXAtNCwKLSAgICAtMHgxLmY0M2Q0OWY5NDdlODdwOQotICB9LAotICB7IC8vIEVudHJ5IDQzNAotICAgIC0weDEuNjYzNmM5ZjZhODdhOTdmMWNiZGY3MDhhMmYxYWQ5YmFwLTEsCi0gICAgMHgxLmY3ZmZmZmZmZmZmZmZwMQotICB9LAotICB7IC8vIEVudHJ5IDQzNQotICAgIC0weDEuNjYzNmM5ZjZhODdhOTdmMWNiZGY3MDhhMmYxYWQ5YmFwLTEsCi0gICAgLTB4MS5mN2ZmZmZmZmZmZmZmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzYKLSAgICAweDEuZmZjMWJlMzMwOTI4NTdmZjI2MjIwZjk5ODE2MzViYzdwLTEsCi0gICAgMHgxLmY4ZmZmZmZmZmZmZmZwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzcKLSAgICAweDEuZmZjMWJlMzMwOTI4NTdmZjI2MjIwZjk5ODE2MzViYzdwLTEsCi0gICAgLTB4MS5mOGZmZmZmZmZmZmZmcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDM4Ci0gICAgMHgxLmZmYzFiZTMzMDkyODU3ZmIzNDRhZmZkZDkzZDA0M2E3cC0xLAotICAgIDB4MS5mOTBwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzkKLSAgICAweDEuZmZjMWJlMzMwOTI4NTdmYjM0NGFmZmRkOTNkMDQzYTdwLTEsCi0gICAgLTB4MS5mOTBwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDAKLSAgICAtMHgxLmZmZmZmZmZjYWIwZDU4MjIwNjY5ZGNmYTQyMWNjZmE2cC0xLAotICAgIDB4MS5mYTAyMzY1MjNjZTU0cDM0NAotICB9LAotICB7IC8vIEVudHJ5IDQ0MQotICAgIC0weDEuZmZmZmZmZmNhYjBkNTgyMjA2NjlkY2ZhNDIxY2NmYTZwLTEsCi0gICAgLTB4MS5mYTAyMzY1MjNjZTU0cDM0NAotICB9LAotICB7IC8vIEVudHJ5IDQ0MgotICAgIDB4MS5mYzBkOThhY2UyMzA4ODAwMDAwMjEyNzg4YTc5NGVhY3AtMSwKLSAgICAweDEuZmNlYWI1NGQzN2RhMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDQ0MwotICAgIDB4MS5mYzBkOThhY2UyMzA4ODAwMDAwMjEyNzg4YTc5NGVhY3AtMSwKLSAgICAtMHgxLmZjZWFiNTRkMzdkYTBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDQKLSAgICAtMHgxLjk1ODliY2ExMjhiOTE3ZmU1OTY5MmE3MzhjMzc5MWM5cC00LAotICAgIDB4MS5mZDAwNzJmZmZmZmZmcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDUKLSAgICAtMHgxLjk1ODliY2ExMjhiOTE3ZmU1OTY5MmE3MzhjMzc5MWM5cC00LAotICAgIC0weDEuZmQwMDcyZmZmZmZmZnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ2Ci0gICAgLTB4MS40ZDMwNGIwN2ZjODk3Y2YxYWRlNTRmZTk3ZGI3YzhiZHAtMiwKLSAgICAweDEuZmUwZjgyNzY3MzQyMnA2MgotICB9LAotICB7IC8vIEVudHJ5IDQ0NwotICAgIC0weDEuNGQzMDRiMDdmYzg5N2NmMWFkZTU0ZmU5N2RiN2M4YmRwLTIsCi0gICAgLTB4MS5mZTBmODI3NjczNDIycDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ4Ci0gICAgMHgxLmMxYTI3YWU4MzZmMTI4MDAwMDAwMDAwMDAwNTA0ZTlicC0xLAotICAgIDB4MS5mZWIxZjc5MjBlMjQ4cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ5Ci0gICAgMHgxLmMxYTI3YWU4MzZmMTI4MDAwMDAwMDAwMDAwNTA0ZTlicC0xLAotICAgIC0weDEuZmViMWY3OTIwZTI0OHAtMgotICB9LAotICB7IC8vIEVudHJ5IDQ1MAotICAgIC0weDEuOTM2YjY0ZTk1NTk3OGQxNWFhY2ZkZGY1ODIxYzYyODFwLTEsCi0gICAgMHgxLmZlZWZmZmZmZmZmYzZwOTk1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDUxCi0gICAgLTB4MS45MzZiNjRlOTU1OTc4ZDE1YWFjZmRkZjU4MjFjNjI4MXAtMSwKLSAgICAtMHgxLmZlZWZmZmZmZmZmYzZwOTk1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDUyCi0gICAgMHgxLmZmZjAwNzE0N2VhNTc3ZmIwMjEzMGM2OGIzMzVlZjQ1cC0xLAotICAgIDB4MS5mZjhmZmZmZmZmZmZmcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDUzCi0gICAgMHgxLmZmZjAwNzE0N2VhNTc3ZmIwMjEzMGM2OGIzMzVlZjQ1cC0xLAotICAgIC0weDEuZmY4ZmZmZmZmZmZmZnAtNwotICB9LAotICB7IC8vIEVudHJ5IDQ1NAotICAgIDB4MS5mZmZmYzAxYmZlNDQyYjA5Y2JlYzE5ZjY4YWY4ZmJmOHAtMSwKLSAgICAweDEuZmY4ZmZmZmZmZmZmZnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTUKLSAgICAweDEuZmZmZmMwMWJmZTQ0MmIwOWNiZWMxOWY2OGFmOGZiZjhwLTEsCi0gICAgLTB4MS5mZjhmZmZmZmZmZmZmcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDQ1NgotICAgIDB4MS43Y2M5ZmI3NTMxN2FlOTNiZjVkZGVlMGU4YjljODNjZXAtMSwKLSAgICAweDEuZmY4ZmZmZmZmZmZmZnA4NzAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTcKLSAgICAweDEuN2NjOWZiNzUzMTdhZTkzYmY1ZGRlZTBlOGI5YzgzY2VwLTEsCi0gICAgLTB4MS5mZjhmZmZmZmZmZmZmcDg3MAotICB9LAotICB7IC8vIEVudHJ5IDQ1OAotICAgIDB4MS5kNmFlYTQ4MDE1NTg4ZTcxOTgzMTQyODA0MjI3ZmQ4NHAtMSwKLSAgICAweDEuZmZjZmZmOHAxOQotICB9LAotICB7IC8vIEVudHJ5IDQ1OQotICAgIDB4MS5kNmFlYTQ4MDE1NTg4ZTcxOTgzMTQyODA0MjI3ZmQ4NHAtMSwKLSAgICAtMHgxLmZmY2ZmZjhwMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjAKLSAgICAtMHgxLjZhOTk3MmVlZTE5YmFkZjllMzRkMzZiMGQxMjAyMDkxcC0yLAotICAgIDB4MS5mZmNmZmY4cDM2NQotICB9LAotICB7IC8vIEVudHJ5IDQ2MQotICAgIC0weDEuNmE5OTcyZWVlMTliYWRmOWUzNGQzNmIwZDEyMDIwOTFwLTIsCi0gICAgLTB4MS5mZmNmZmY4cDM2NQotICB9LAotICB7IC8vIEVudHJ5IDQ2MgotICAgIC0weDEuM2FhYTE1Zjc1NDRiNjkxYTQzZTFmYTFhNjM5YmRmYzJwLTEsCi0gICAgMHgxLmZmY2ZmZmZmZmZmNmNwNzIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDYzCi0gICAgLTB4MS4zYWFhMTVmNzU0NGI2OTFhNDNlMWZhMWE2MzliZGZjMnAtMSwKLSAgICAtMHgxLmZmY2ZmZmZmZmZmNmNwNzIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY0Ci0gICAgMHgxLjNmMTY0YmNlMDU1YzRjNjFiNzRhNjFmNzNjYTczZDNmcC0xLAotICAgIDB4MS5mZmNmZmZmZmZmZmY5cDMyMAotICB9LAotICB7IC8vIEVudHJ5IDQ2NQotICAgIDB4MS4zZjE2NGJjZTA1NWM0YzYxYjc0YTYxZjczY2E3M2QzZnAtMSwKLSAgICAtMHgxLmZmY2ZmZmZmZmZmZjlwMzIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY2Ci0gICAgMHgxLmZmZmZmMDAyZmZmMTRkNTY2YWU4ZWM5ZDFlZGMzZTNmcC0xLAotICAgIDB4MS5mZmNmZmZmZmZmZmZmcC0xMQotICB9LAotICB7IC8vIEVudHJ5IDQ2NwotICAgIDB4MS5mZmZmZjAwMmZmZjE0ZDU2NmFlOGVjOWQxZWRjM2UzZnAtMSwKLSAgICAtMHgxLmZmY2ZmZmZmZmZmZmZwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY4Ci0gICAgLTB4MS5mZmZmZmY5ODdmOTg1ZDY3OTQ0Yjg2N2JmZjRhYjg1N3AtMSwKLSAgICAweDEuZmZjZmZmZmZmZmZmZnA0MDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjkKLSAgICAtMHgxLmZmZmZmZjk4N2Y5ODVkNjc5NDRiODY3YmZmNGFiODU3cC0xLAotICAgIC0weDEuZmZjZmZmZmZmZmZmZnA0MDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzAKLSAgICAtMHgxLmZmZmY2MjM1YTI1ZWRiOGM5NzViNDg1YzVjNmY0MWY3cC0xLAotICAgIDB4MS5mZmNmZmZmZmZmZmZmcDU2NwotICB9LAotICB7IC8vIEVudHJ5IDQ3MQotICAgIC0weDEuZmZmZjYyMzVhMjVlZGI4Yzk3NWI0ODVjNWM2ZjQxZjdwLTEsCi0gICAgLTB4MS5mZmNmZmZmZmZmZmZmcDU2NwotICB9LAotICB7IC8vIEVudHJ5IDQ3MgotICAgIDB4MS5mZGYxMWFlNDYwOGIwODk0YmFiODc4Njk0OWFhNjMzM3AtMywKLSAgICAweDEuZmZlZmZmOGZmZmZmZnAxNgotICB9LAotICB7IC8vIEVudHJ5IDQ3MwotICAgIDB4MS5mZGYxMWFlNDYwOGIwODk0YmFiODc4Njk0OWFhNjMzM3AtMywKLSAgICAtMHgxLmZmZWZmZjhmZmZmZmZwMTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzQKLSAgICAweDEuOGY1NTI1YWI0NTgzYzA2NDM1M2FhYWQxMmM2Y2NlNmNwLTEsCi0gICAgMHgxLmZmZWZmZmZmZmZmY2NwOTk1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDc1Ci0gICAgMHgxLjhmNTUyNWFiNDU4M2MwNjQzNTNhYWFkMTJjNmNjZTZjcC0xLAotICAgIC0weDEuZmZlZmZmZmZmZmZjY3A5OTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzYKLSAgICAweDEuYTBhZjQ0YTQ1YzA1NjliNzIwNThjYzM0ZWZkMGUzMmVwLTgsCi0gICAgMHgxLmZmZWZmZmZmZmZmZmZwNzcKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzcKLSAgICAweDEuYTBhZjQ0YTQ1YzA1NjliNzIwNThjYzM0ZWZkMGUzMmVwLTgsCi0gICAgLTB4MS5mZmVmZmZmZmZmZmZmcDc3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDc4Ci0gICAgLTB4MS5kZjc1NDZjMzFiZjhjZmZlZjY5YzQ4NTlkYTA1NWYzM3AtMSwKLSAgICAweDEuZmZlZmZmZmZmZmZmZnAxMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzkKLSAgICAtMHgxLmRmNzU0NmMzMWJmOGNmZmVmNjljNDg1OWRhMDU1ZjMzcC0xLAotICAgIC0weDEuZmZlZmZmZmZmZmZmZnAxMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODAKLSAgICAtMHgxLjgyNWE3YmVhMjdkNWIxYTU5OGFmNmI2ODRlYjE4NDc4cC0xLAotICAgIDB4MS5mZmVmZmZmZmZmZmZmcDE3OQotICB9LAotICB7IC8vIEVudHJ5IDQ4MQotICAgIC0weDEuODI1YTdiZWEyN2Q1YjFhNTk4YWY2YjY4NGViMTg0NzhwLTEsCi0gICAgLTB4MS5mZmVmZmZmZmZmZmZmcDE3OQotICB9LAotICB7IC8vIEVudHJ5IDQ4MgotICAgIC0weDEuMWJlMmFiMjA3OGQ1NDdmZmYwOTkzMjAxMWZlMTY0NTZwLTEsCi0gICAgMHgxLmZmZWZmZmZmZmZmZmZwMjM4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDgzCi0gICAgLTB4MS4xYmUyYWIyMDc4ZDU0N2ZmZjA5OTMyMDExZmUxNjQ1NnAtMSwKLSAgICAtMHgxLmZmZWZmZmZmZmZmZmZwMjM4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDg0Ci0gICAgLTB4MS5hNGNjNWY4MzhmNTI5N2UwYTdlNzQ5Y2IwODdjMmYxNHAtNywKLSAgICAweDEuZmZmMDAwMDAwMjUxMXA0OTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODUKLSAgICAtMHgxLmE0Y2M1ZjgzOGY1Mjk3ZTBhN2U3NDljYjA4N2MyZjE0cC03LAotICAgIC0weDEuZmZmMDAwMDAwMjUxMXA0OTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODYKLSAgICAweDEuZjE2NDM3ZDYxMTlmODliZmE3M2EyZjE0ZjM3N2ZkM2VwLTEwLAotICAgIDB4MS5mZmYxZmZmZmZmZmZmcDQxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDg3Ci0gICAgMHgxLmYxNjQzN2Q2MTE5Zjg5YmZhNzNhMmYxNGYzNzdmZDNlcC0xMCwKLSAgICAtMHgxLmZmZjFmZmZmZmZmZmZwNDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODgKLSAgICAweDEuODk4MzI0YzJmMWNmYzU5NmU1OTBiNGE4MGQyNTA4ZmJwLTExLAotICAgIDB4MS5mZmZmYzdmZmZmZmZmcDQ1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDg5Ci0gICAgMHgxLjg5ODMyNGMyZjFjZmM1OTZlNTkwYjRhODBkMjUwOGZicC0xMSwKLSAgICAtMHgxLmZmZmZjN2ZmZmZmZmZwNDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTAKLSAgICAweDEuZjAxNTRjMDA2ODhmODdmY2M5NmYxNGM4ZWZiNTkxNGZwLTEsCi0gICAgMHgxLmZmZmZkZjFmZmZmZmZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTEKLSAgICAweDEuZjAxNTRjMDA2ODhmODdmY2M5NmYxNGM4ZWZiNTkxNGZwLTEsCi0gICAgLTB4MS5mZmZmZGYxZmZmZmZmcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNDkyCi0gICAgMHgxLmZmYzAwMTU3MTI2YTdkOTgyMTY0OTFkZjczZDk3Y2QzcC0xLAotICAgIDB4MS5mZmZmZjhmZmZmZmZmcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDkzCi0gICAgMHgxLmZmYzAwMTU3MTI2YTdkOTgyMTY0OTFkZjczZDk3Y2QzcC0xLAotICAgIC0weDEuZmZmZmY4ZmZmZmZmZnAtNgotICB9LAotICB7IC8vIEVudHJ5IDQ5NAotICAgIC0weDEuZTBkOWYwZjM4YzczZjAwNjk3MzllOWRlNjUxOTE0MTZwLTIsCi0gICAgMHgxLmZmZmZmYmZmZmZmZmZwOTY4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDk1Ci0gICAgLTB4MS5lMGQ5ZjBmMzhjNzNmMDA2OTczOWU5ZGU2NTE5MTQxNnAtMiwKLSAgICAtMHgxLmZmZmZmYmZmZmZmZmZwOTY4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDk2Ci0gICAgMHgxLmZmZjQ2OTlkZDU2MGI1ZGJiODhhMDI5MzM3YjlhYjg2cC0xLAotICAgIDB4MS5mZmZmZmNmZmZmZmZmcDQwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk3Ci0gICAgMHgxLmZmZjQ2OTlkZDU2MGI1ZGJiODhhMDI5MzM3YjlhYjg2cC0xLAotICAgIC0weDEuZmZmZmZjZmZmZmZmZnA0MAotICB9LAotICB7IC8vIEVudHJ5IDQ5OAotICAgIDB4MS5mZjAwMTU1NTlmMjI4ODAyNDMzNzMyYWUxMTk0Mjk0NXAtMSwKLSAgICAweDEuZmZmZmZmMDAwMDA0MHAtNQotICB9LAotICB7IC8vIEVudHJ5IDQ5OQotICAgIDB4MS5mZjAwMTU1NTlmMjI4ODAyNDMzNzMyYWUxMTk0Mjk0NXAtMSwKLSAgICAtMHgxLmZmZmZmZjAwMDAwNDBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDAKLSAgICAtMHgxLjljNjk1MWNjY2QzOWJmNjBkNDdkYjgwYmU2ZmNlMzRmcC0yLAotICAgIDB4MS5mZmZmZmY4cDExOQotICB9LAotICB7IC8vIEVudHJ5IDUwMQotICAgIC0weDEuOWM2OTUxY2NjZDM5YmY2MGQ0N2RiODBiZTZmY2UzNGZwLTIsCi0gICAgLTB4MS5mZmZmZmY4cDExOQotICB9LAotICB7IC8vIEVudHJ5IDUwMgotICAgIC0weDEuZjJjMjI2MzU5MDAzNGVjNjI1MjJkNDVkMmVlY2EyODVwLTEsCi0gICAgMHgxLmZmZmZmZjhwMTkyCi0gIH0sCi0gIHsgLy8gRW50cnkgNTAzCi0gICAgLTB4MS5mMmMyMjYzNTkwMDM0ZWM2MjUyMmQ0NWQyZWVjYTI4NXAtMSwKLSAgICAtMHgxLmZmZmZmZjhwMTkyCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA0Ci0gICAgMHgxLmM3ODg0ZDZjZmI1NTExYTZiNTExMTA3N2ZkMGIxYjcycC0xLAotICAgIDB4MS5mZmZmZmY4cDU0MwotICB9LAotICB7IC8vIEVudHJ5IDUwNQotICAgIDB4MS5jNzg4NGQ2Y2ZiNTUxMWE2YjUxMTEwNzdmZDBiMWI3MnAtMSwKLSAgICAtMHgxLmZmZmZmZjhwNTQzCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA2Ci0gICAgMHgxLmU2NmM3OWU3NzZhMWVmZjZiNjhmMmQwMTI4OWUwOGU4cC0yLAotICAgIDB4MS5mZmZmZmZjM2ZmZmZmcDUwMAotICB9LAotICB7IC8vIEVudHJ5IDUwNwotICAgIDB4MS5lNjZjNzllNzc2YTFlZmY2YjY4ZjJkMDEyODllMDhlOHAtMiwKLSAgICAtMHgxLmZmZmZmZmMzZmZmZmZwNTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA4Ci0gICAgMHgxLmM3YzlhOWM1N2MwYjIwMDlmMThhNmMyYzA3YjUyZWEycC0zLAotICAgIDB4MS5mZmZmZmZlMWZmZmZmcDcwMAotICB9LAotICB7IC8vIEVudHJ5IDUwOQotICAgIDB4MS5jN2M5YTljNTdjMGIyMDA5ZjE4YTZjMmMwN2I1MmVhMnAtMywKLSAgICAtMHgxLmZmZmZmZmUxZmZmZmZwNzAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTEwCi0gICAgMHgxLjdiYjI4ZGFmNWY5YWQzNjA4ZGRhOGExNmVhMjM1Y2I0cC0xLAotICAgIDB4MS5mZmZmZmZmZjBmMGZmcDQwMAotICB9LAotICB7IC8vIEVudHJ5IDUxMQotICAgIDB4MS43YmIyOGRhZjVmOWFkMzYwOGRkYThhMTZlYTIzNWNiNHAtMSwKLSAgICAtMHgxLmZmZmZmZmZmMGYwZmZwNDAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTEyCi0gICAgMHgxLmZjMDE1NTI3ZDhiYjM3ODA2ZTQ5NzZkY2Y3YTdjOThjcC0xLAotICAgIDB4MS5mZmZmZmZmZjNmZmZmcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTEzCi0gICAgMHgxLmZjMDE1NTI3ZDhiYjM3ODA2ZTQ5NzZkY2Y3YTdjOThjcC0xLAotICAgIC0weDEuZmZmZmZmZmYzZmZmZnAtNAotICB9LAotICB7IC8vIEVudHJ5IDUxNAotICAgIC0weDEuZWE1MjU3ZWI2NmUzYmZmZWU5MDBjZDQ0NDc0MDRjMTZwLTEsCi0gICAgMHgxLmZmZmZmZmZmOGZmZmZwMwotICB9LAotICB7IC8vIEVudHJ5IDUxNQotICAgIC0weDEuZWE1MjU3ZWI2NmUzYmZmZWU5MDBjZDQ0NDc0MDRjMTZwLTEsCi0gICAgLTB4MS5mZmZmZmZmZjhmZmZmcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTYKLSAgICAtMHgxLjRlYWE2MDZkYmVmOTY4MDAwMjY3YjAzNzVkZWQ2ODcycC0xLAotICAgIDB4MS5mZmZmZmZmZmZiY2ZmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTcKLSAgICAtMHgxLjRlYWE2MDZkYmVmOTY4MDAwMjY3YjAzNzVkZWQ2ODcycC0xLAotICAgIC0weDEuZmZmZmZmZmZmYmNmZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTE4Ci0gICAgLTB4MS5mYzljZDZiNWYwMDk0ODJiMGQ1NTgyZTFjNmNkZjczOHAtMSwKLSAgICAweDEuZmZmZmZmZmZmZTBiNXA3MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTkKLSAgICAtMHgxLmZjOWNkNmI1ZjAwOTQ4MmIwZDU1ODJlMWM2Y2RmNzM4cC0xLAotICAgIC0weDEuZmZmZmZmZmZmZTBiNXA3MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjAKLSAgICAweDEuZTk2YWMwNDVkZDEzOGQyNTc0MWNiODc5YjkyYWZhNDhwLTMsCi0gICAgMHgxLmZmZmZmZmZmZmU3ZmZwNDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjEKLSAgICAweDEuZTk2YWMwNDVkZDEzOGQyNTc0MWNiODc5YjkyYWZhNDhwLTMsCi0gICAgLTB4MS5mZmZmZmZmZmZlN2ZmcDQxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIyCi0gICAgLTB4MS5mY2FmMzljZmI5NGQ0ODE5NWQyYjI2MDYwYjMwZjgyMnAtMSwKLSAgICAweDEuZmZmZmZmZmZmZWUwOXA3MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjMKLSAgICAtMHgxLmZjYWYzOWNmYjk0ZDQ4MTk1ZDJiMjYwNjBiMzBmODIycC0xLAotICAgIC0weDEuZmZmZmZmZmZmZWUwOXA3MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjQKLSAgICAweDEuODQzMjIzMmE2ZDFkYWE2YWM4YTk0YzAwMjFlNjBkNTBwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZkZmZwNDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjUKLSAgICAweDEuODQzMjIzMmE2ZDFkYWE2YWM4YTk0YzAwMjFlNjBkNTBwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZGZmcDQwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI2Ci0gICAgMHgxLjllMzc1MTQzMTM5ZDlhMzdiMzU0ZWEzM2RkNjI1Y2Q2cC02LAotICAgIDB4MS5mZmZmZmZmZmZmZWZmcDQxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI3Ci0gICAgMHgxLjllMzc1MTQzMTM5ZDlhMzdiMzU0ZWEzM2RkNjI1Y2Q2cC02LAotICAgIC0weDEuZmZmZmZmZmZmZmVmZnA0MQotICB9LAotICB7IC8vIEVudHJ5IDUyOAotICAgIDB4MS5mZmZjMDAwMTU1NTUyODAwMDA0OWIxMGMyNmExZjUzOXAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmY0YXAtOAotICB9LAotICB7IC8vIEVudHJ5IDUyOQotICAgIDB4MS5mZmZjMDAwMTU1NTUyODAwMDA0OWIxMGMyNmExZjUzOXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmNGFwLTgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzAKLSAgICAweDEuNDYzYTg5NWM0ZWE1Y2U0ZTU2ZThmNTc4Mzg4ZWVkM2FwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmNzhwOTIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMxCi0gICAgMHgxLjQ2M2E4OTVjNGVhNWNlNGU1NmU4ZjU3ODM4OGVlZDNhcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmY3OHA5MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzIKLSAgICAweDEuM2MxYTQ4NjM1Y2YzODBjODE1OGQ5MzRjNGQwZGQ4N2NwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZDVwOTk1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTMzCi0gICAgMHgxLjNjMWE0ODYzNWNmMzgwYzgxNThkOTM0YzRkMGRkODdjcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZkNXA5OTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzQKLSAgICAweDEuOTFjNGUwNzA4YmQ0ODYyMTdmNWZjMjMwZjA0MTYyMjBwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZThwNzIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM1Ci0gICAgMHgxLjkxYzRlMDcwOGJkNDg2MjE3ZjVmYzIzMGYwNDE2MjIwcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZlOHA3MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzYKLSAgICAtMHgxLjNlMTVjYjg0OWI1ZWE4N2JjYzU4M2Y2MzQ0Y2JjYzQwcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmVicDkyMAotICB9LAotICB7IC8vIEVudHJ5IDUzNwotICAgIC0weDEuM2UxNWNiODQ5YjVlYTg3YmNjNTgzZjYzNDRjYmNjNDBwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmVicDkyMAotICB9LAotICB7IC8vIEVudHJ5IDUzOAotICAgIC0weDEuODE2ODA4MzQ5YjgwZGQzYzIyY2JlODBiNGMxNzFkMWZwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZjFwMjQ1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTM5Ci0gICAgLTB4MS44MTY4MDgzNDliODBkZDNjMjJjYmU4MGI0YzE3MWQxZnAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZjFwMjQ1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTQwCi0gICAgMHgxLjQ2OTljODE0YzVmMDc1YmIwZWQ5NDcyZGZlY2M1MGE5cC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmY0cDg0NQotICB9LAotICB7IC8vIEVudHJ5IDU0MQotICAgIDB4MS40Njk5YzgxNGM1ZjA3NWJiMGVkOTQ3MmRmZWNjNTBhOXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZjRwODQ1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTQyCi0gICAgLTB4MS44MTVlOTJiN2EyYTAxOWU3NDY1MGE4NTk5NjhlMGYyOXAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmNHAxMDIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQzCi0gICAgLTB4MS44MTVlOTJiN2EyYTAxOWU3NDY1MGE4NTk5NjhlMGYyOXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZjRwMTAyMAotICB9LAotICB7IC8vIEVudHJ5IDU0NAotICAgIC0weDEuM2U4ZDAyODE1MzIwMWVkMjcyZmM5NTQ5NzI1ZmNiM2ZwLTEwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZjcDQ1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTQ1Ci0gICAgLTB4MS4zZThkMDI4MTUzMjAxZWQyNzJmYzk1NDk3MjVmY2IzZnAtMTAsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZjcDQ1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTQ2Ci0gICAgMHgxLjdkNjc2NTcxNGM3ODUzMmQzZWIwZjJhNzNjNWQ2MTI2cC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwNQotICB9LAotICB7IC8vIEVudHJ5IDU0NwotICAgIDB4MS43ZDY3NjU3MTRjNzg1MzJkM2ViMGYyYTczYzVkNjEyNnAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTQ4Ci0gICAgLTB4MS5mODY5ZmIxNGQyNTY4ZDY3YzM3YzkwYjBhMDM4YjI0MHAtMywKLSAgICAweDEuZmZmZmZmZmZmZmZmZXA0ODAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDkKLSAgICAtMHgxLmY4NjlmYjE0ZDI1NjhkNjdjMzdjOTBiMGEwMzhiMjQwcC0zLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZXA0ODAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTAKLSAgICAtMHgxLjgwYTc1YjM2OWQzYzNmZDE1YjYwNjBjNmZiOThmMmQ2cC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcDk3MAotICB9LAotICB7IC8vIEVudHJ5IDU1MQotICAgIC0weDEuODBhNzViMzY5ZDNjM2ZkMTViNjA2MGM2ZmI5OGYyZDZwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZlcDk3MAotICB9LAotICB7IC8vIEVudHJ5IDU1MgotICAgIC0weDEuOWRiYTY5ZTg1M2JkNzdmZDg4M2JlM2JiMTE3MWRmNTVwLTQsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwNDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTMKLSAgICAtMHgxLjlkYmE2OWU4NTNiZDc3ZmQ4ODNiZTNiYjExNzFkZjU1cC00LAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXA0MgotICB9LAotICB7IC8vIEVudHJ5IDU1NAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTYKLSAgICAweDEucDAsCi0gICAgLTAuMAotICB9LAotICB7IC8vIEVudHJ5IDU1NwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDU1OAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTkKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYwCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYxCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDU2MgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDU2MwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjQKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjYKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS4wcC0xMDIyCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDU2OQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDU3MAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzEKLSAgICAweDEuZmZmZmZmNWMyOGY1Y2I0YzUyNzIwNjEyODEyMTExMjBwLTEsCi0gICAgMHgxLjk5OTk5OTk5OTk5OWFwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcyCi0gICAgMHgxLmZmZmZmZjVjMjhmNWNiNGM1MjcyMDYxMjgxMjExMTIwcC0xLAotICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzMKLSAgICAweDEuZmZmZmZkNzBhM2Q3OTYwY2Q1Njk1YTA2ZmRiODBlNzRwLTEsCi0gICAgMHgxLjk5OTk5OTk5OTk5OWFwLTEyCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc0Ci0gICAgMHgxLmZmZmZmZDcwYTNkNzk2MGNkNTY5NWEwNmZkYjgwZTc0cC0xLAotICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzUKLSAgICAweDEuZmZmZmZhM2Q3MGE2OWFkNDJiMzlkODY5NjYzMmY4NTZwLTEsCi0gICAgMHgxLjMzMzMzMzMzMzMzMzRwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc2Ci0gICAgMHgxLmZmZmZmYTNkNzBhNjlhZDQyYjM5ZDg2OTY2MzJmODU2cC0xLAotICAgIC0weDEuMzMzMzMzMzMzMzMzNHAtMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzcKLSAgICAweDEuZmZmZmY1YzI4ZjY0ZTVlYzBkYTBhNGY3ZjQzODgwNTJwLTEsCi0gICAgMHgxLjk5OTk5OTk5OTk5OWFwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc4Ci0gICAgMHgxLmZmZmZmNWMyOGY2NGU1ZWMwZGEwYTRmN2Y0Mzg4MDUycC0xLAotICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzkKLSAgICAweDEuZmZmZmYwMDAwMDE1NTU1NTQ5ZjQ5ZjRkMzRkMzRjYTBwLTEsCi0gICAgMHgxLjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgwCi0gICAgMHgxLmZmZmZmMDAwMDAxNTU1NTU0OWY0OWY0ZDM0ZDM0Y2EwcC0xLAotICAgIC0weDEuMHAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODEKLSAgICAweDEuZmZmZmU4ZjVjMmJiOThjN2MxMDNkMmZmNzlmMTVkNmFwLTEsCi0gICAgMHgxLjMzMzMzMzMzMzMzMzNwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgyCi0gICAgMHgxLmZmZmZlOGY1YzJiYjk4YzdjMTAzZDJmZjc5ZjE1ZDZhcC0xLAotICAgIC0weDEuMzMzMzMzMzMzMzMzM3AtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODMKLSAgICAweDEuZmZmZmUwYTNkNzVjMzFiMjY0NTExNjZkNmYzOThhYmRwLTEsCi0gICAgMHgxLjY2NjY2NjY2NjY2NjZwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTg0Ci0gICAgMHgxLmZmZmZlMGEzZDc1YzMxYjI2NDUxMTY2ZDZmMzk4YWJkcC0xLAotICAgIC0weDEuNjY2NjY2NjY2NjY2NnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODUKLSAgICAweDEuZmZmZmQ3MGEzZGZjNzMzYjMzMzFkODM4MmIxZTlkZjVwLTEsCi0gICAgMHgxLjk5OTk5OTk5OTk5OTlwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTg2Ci0gICAgMHgxLmZmZmZkNzBhM2RmYzczM2IzMzMxZDgzODJiMWU5ZGY1cC0xLAotICAgIC0weDEuOTk5OTk5OTk5OTk5OXAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODcKLSAgICAweDEuZmZmZmNjMjhmNmEyODIzZjM3NjViNTA2NTllY2IwZTJwLTEsCi0gICAgMHgxLmNjY2NjY2NjY2NjY2NwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTg4Ci0gICAgMHgxLmZmZmZjYzI4ZjZhMjgyM2YzNzY1YjUwNjU5ZWNiMGUycC0xLAotICAgIC0weDEuY2NjY2NjY2NjY2NjY3AtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODkKLSAgICAweDEuZmZmYmNjMmE2ZTg2ZmVmN2QyYWYxNTgwYmQ4ZTY2OTlwLTEsCi0gICAgMHgxLjA2NjY2NjY2NjY2NjZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTAKLSAgICAweDEuZmZmYmNjMmE2ZTg2ZmVmN2QyYWYxNTgwYmQ4ZTY2OTlwLTEsCi0gICAgLTB4MS4wNjY2NjY2NjY2NjY2cC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTkxCi0gICAgMHgxLmZmZjMwYTRiNmZjYzE0MDVlMThmYmY3MzM1ZDJmNzg5cC0xLAotICAgIDB4MS5jY2NjY2NjY2NjY2NjcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTkyCi0gICAgMHgxLmZmZjMwYTRiNmZjYzE0MDVlMThmYmY3MzM1ZDJmNzg5cC0xLAotICAgIC0weDEuY2NjY2NjY2NjY2NjY3AtNwotICB9LAotICB7IC8vIEVudHJ5IDU5MwotICAgIDB4MS5mZmU1N2E3ODBmMzhjMGRiMzcwNTFmYThjOGQ2MGZiY3AtMSwKLSAgICAweDEuNDk5OTk5OTk5OTk5OXAtNgotICB9LAotICB7IC8vIEVudHJ5IDU5NAotICAgIDB4MS5mZmU1N2E3ODBmMzhjMGRiMzcwNTFmYThjOGQ2MGZiY3AtMSwKLSAgICAtMHgxLjQ5OTk5OTk5OTk5OTlwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTUKLSAgICAweDEuZmZkMzFjZDBlMWQ2MmMwNWQyY2RlZDIxYWRkOGJkMzNwLTEsCi0gICAgMHgxLmFjY2NjY2NjY2NjY2NwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTYKLSAgICAweDEuZmZkMzFjZDBlMWQ2MmMwNWQyY2RlZDIxYWRkOGJkMzNwLTEsCi0gICAgLTB4MS5hY2NjY2NjY2NjY2NjcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTk3Ci0gICAgMHgxLmZmYmJmMTgyMDc1NDJlZjgxMzkwZDczYzNiYTg5YzFhcC0xLAotICAgIDB4MS4wODBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTgKLSAgICAweDEuZmZiYmYxODIwNzU0MmVmODEzOTBkNzNjM2JhODljMWFwLTEsCi0gICAgLTB4MS4wODBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTkKLSAgICAweDEuZmY5ZmY4YzMyOTlmNTQ0NTdiYmFmOGMxMjE3M2I0NmJwLTEsCi0gICAgMHgxLjM5OTk5OTk5OTk5OWFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDAKLSAgICAweDEuZmY5ZmY4YzMyOTlmNTQ0NTdiYmFmOGMxMjE3M2I0NmJwLTEsCi0gICAgLTB4MS4zOTk5OTk5OTk5OTlhcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjAxCi0gICAgMHgxLmZmN2YzMmQ3N2M1YjFjNDJmMTY2MGM5YjZmMmVmNjRmcC0xLAotICAgIDB4MS42YjMzMzMzMzMzMzM0cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjAyCi0gICAgMHgxLmZmN2YzMmQ3N2M1YjFjNDJmMTY2MGM5YjZmMmVmNjRmcC0xLAotICAgIC0weDEuNmIzMzMzMzMzMzMzNHAtNQotICB9LAotICB7IC8vIEVudHJ5IDYwMwotICAgIDB4MS5mZjU5YTAwZGJjNDA4OTZiYjVlNGFjOGFkMjkzYWZiNHAtMSwKLSAgICAweDEuOWNjY2NjY2NjY2NjZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDYwNAotICAgIDB4MS5mZjU5YTAwZGJjNDA4OTZiYjVlNGFjOGFkMjkzYWZiNHAtMSwKLSAgICAtMHgxLjljY2NjY2NjY2NjY2VwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDUKLSAgICAweDEuZmYyZjQwYzAyZTYwZjYxZDZkY2ZjMzliNmMyYmUwODdwLTEsCi0gICAgMHgxLmNlNjY2NjY2NjY2NjZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDYKLSAgICAweDEuZmYyZjQwYzAyZTYwZjYxZDZkY2ZjMzliNmMyYmUwODdwLTEsCi0gICAgLTB4MS5jZTY2NjY2NjY2NjY2cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjA3Ci0gICAgMHgxLjhjYTQ2YzdkODk3NWU1N2ExNDg0ZjA1YzM3MzhkODNicC0xLAotICAgIDB4MS41ZTdmYzQzNjliZGFkcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA4Ci0gICAgMHgxLjhjYTQ2YzdkODk3NWU1N2ExNDg0ZjA1YzM3MzhkODNicC0xLAotICAgIC0weDEuNWU3ZmM0MzY5YmRhZHAtMQotICB9LAotICB7IC8vIEVudHJ5IDYwOQotICAgIDB4MS4wYjVkMzgwMmZjNzk5MTE0MDE2OGYyOTRlZWRkNzkwNHAtMiwKLSAgICAweDEuNGU3ZmM0MzY5YmRhZHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEwCi0gICAgMHgxLjBiNWQzODAyZmM3OTkxMTQwMTY4ZjI5NGVlZGQ3OTA0cC0yLAotICAgIC0weDEuNGU3ZmM0MzY5YmRhZHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjExCi0gICAgLTB4MS42NmI5NmY1MzMyM2FmMWQ3ZTMxYTcxNjJhYjE4YTc1YnAtMiwKLSAgICAweDEuZWRiZmE2NTFlOWM4NHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEyCi0gICAgLTB4MS42NmI5NmY1MzMyM2FmMWQ3ZTMxYTcxNjJhYjE4YTc1YnAtMiwKLSAgICAtMHgxLmVkYmZhNjUxZTljODRwMAotICB9LAotICB7IC8vIEVudHJ5IDYxMwotICAgIC0weDEuYTkzNTU0ODg4YzMyZmE1N2YyMmE5NTI5YTMyMGMxY2JwLTEsCi0gICAgMHgxLjQ2N2ZjNDM2OWJkYWRwMQotICB9LAotICB7IC8vIEVudHJ5IDYxNAotICAgIC0weDEuYTkzNTU0ODg4YzMyZmE1N2YyMmE5NTI5YTMyMGMxY2JwLTEsCi0gICAgLTB4MS40NjdmYzQzNjliZGFkcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTUKLSAgICAtMHgxLmZmYzAwMTU1NTI3ZDJiOWZkYTJhZTg5Mzk2ZTA5NzI3cC0xLAotICAgIDB4MS45NjFmYjU0NDQyZDE4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTYKLSAgICAtMHgxLmZmYzAwMTU1NTI3ZDJiOWZkYTJhZTg5Mzk2ZTA5NzI3cC0xLAotICAgIC0weDEuOTYxZmI1NDQ0MmQxOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE3Ci0gICAgLTB4MS45NjkwN2M1YzdjMjViODhlMzRhZGRmZjFmYmVmNjZlNHAtMSwKLSAgICAweDEuZTViZmE2NTFlOWM4M3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE4Ci0gICAgLTB4MS45NjkwN2M1YzdjMjViODhlMzRhZGRmZjFmYmVmNjZlNHAtMSwKLSAgICAtMHgxLmU1YmZhNjUxZTljODNwMQotICB9LAotICB7IC8vIEVudHJ5IDYxOQotICAgIC0weDEuMmExZTVhNTBmOTQ4Y2Q0ODdjNTMwOTY4MmIxMTBhNTNwLTIsCi0gICAgMHgxLjFhYWZjYmFmYzg1ZjdwMgotICB9LAotICB7IC8vIEVudHJ5IDYyMAotICAgIC0weDEuMmExZTVhNTBmOTQ4Y2Q0ODdjNTMwOTY4MmIxMTBhNTNwLTIsCi0gICAgLTB4MS4xYWFmY2JhZmM4NWY3cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjEKLSAgICAweDEuNDg5NGY2OTVkYzU2YmNlOGIyNzNlNTUyNGYxODEyNjRwLTIsCi0gICAgMHgxLjQyN2ZjNDM2OWJkYWRwMgotICB9LAotICB7IC8vIEVudHJ5IDYyMgotICAgIDB4MS40ODk0ZjY5NWRjNTZiY2U4YjI3M2U1NTI0ZjE4MTI2NHAtMiwKLSAgICAtMHgxLjQyN2ZjNDM2OWJkYWRwMgotICB9LAotICB7IC8vIEVudHJ5IDYyMwotICAgIDB4MS5hMDE2ZWEzYTY5MmNlMGMzMjFiNzdmMTY4ZGUzOTEyMnAtMSwKLSAgICAweDEuNmE0ZmJjYmQ2ZjU2MnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI0Ci0gICAgMHgxLmEwMTZlYTNhNjkyY2UwYzMyMWI3N2YxNjhkZTM5MTIycC0xLAotICAgIC0weDEuNmE0ZmJjYmQ2ZjU2MnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI1Ci0gICAgMHgxLmEzMGE2OWY1NTM3ZWJjMjJmMDg3MGMyYmQyNmVmMjg0cC0xLAotICAgIDB4MS42YWYyZWZmMGEyODk2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjYKLSAgICAweDEuYTMwYTY5ZjU1MzdlYmMyMmYwODcwYzJiZDI2ZWYyODRwLTEsCi0gICAgLTB4MS42YWYyZWZmMGEyODk2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjcKLSAgICAweDEuNWJkNjJlOGIwNGFkNTkxNWU2NjI0MjM0OWI3NTZlMTFwLTIsCi0gICAgMHgxLjQzYzYyYTlkMDI0MTRwMgotICB9LAotICB7IC8vIEVudHJ5IDYyOAotICAgIDB4MS41YmQ2MmU4YjA0YWQ1OTE1ZTY2MjQyMzQ5Yjc1NmUxMXAtMiwKLSAgICAtMHgxLjQzYzYyYTlkMDI0MTRwMgotICB9LAotICB7IC8vIEVudHJ5IDYyOQotICAgIC0weDEuMGNiNzFmNjcxZTYzNDEwOTY2ZTc4ZDIwMDljMDYxNmZwLTIsCi0gICAgMHgxLjFjOTk2NTQ5NjFmOTJwMgotICB9LAotICB7IC8vIEVudHJ5IDYzMAotICAgIC0weDEuMGNiNzFmNjcxZTYzNDEwOTY2ZTc4ZDIwMDljMDYxNmZwLTIsCi0gICAgLTB4MS4xYzk5NjU0OTYxZjkycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzEKLSAgICAtMHgxLjg5ZDg2YWE4NTIxYzExYjc0ZjhiMTk1NGMwOGY5YjM2cC0xLAotICAgIDB4MS5lYWQ5M2ZlYjgzNjFmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzIKLSAgICAtMHgxLjg5ZDg2YWE4NTIxYzExYjc0ZjhiMTk1NGMwOGY5YjM2cC0xLAotICAgIC0weDEuZWFkOTNmZWI4MzYxZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjMzCi0gICAgLTB4MS5mZTUxYWM1NTRhMTZhZDgxOTRmMTgxMDg1ZjhhMTdmMnAtMSwKLSAgICAweDEuOWM3ZmI1NDQ0MmQxYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM0Ci0gICAgLTB4MS5mZTUxYWM1NTRhMTZhZDgxOTRmMTgxMDg1ZjhhMTdmMnAtMSwKLSAgICAtMHgxLjljN2ZiNTQ0NDJkMWFwMQotICB9LAotICB7IC8vIEVudHJ5IDYzNQotICAgIC0weDEuYjk3YzA0ZDA4YmM1ZDc2NWIzNDFhMjJiMmM3MjBiNmZwLTEsCi0gICAgMHgxLjRlMjYyYTlkMDI0MTVwMQotICB9LAotICB7IC8vIEVudHJ5IDYzNgotICAgIC0weDEuYjk3YzA0ZDA4YmM1ZDc2NWIzNDFhMjJiMmM3MjBiNmZwLTEsCi0gICAgLTB4MS40ZTI2MmE5ZDAyNDE1cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzcKLSAgICAtMHgxLmE4YWM4YTNlNThmNmNhOTUyMzkwMjk5ZDJlOGIxODdmcC0yLAotICAgIDB4MS5mZjk5M2ZlYjgzNjIwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzgKLSAgICAtMHgxLmE4YWM4YTNlNThmNmNhOTUyMzkwMjk5ZDJlOGIxODdmcC0yLAotICAgIC0weDEuZmY5OTNmZWI4MzYyMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM5Ci0gICAgMHgxLjc3YThiOWIzZDI1NGE5ZTM5ZDAyYjNlYjNlMjM5MGU3cC0zLAotICAgIDB4MS42MmU2MmE5ZDAyNDE2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDAKLSAgICAweDEuNzdhOGI5YjNkMjU0YTllMzlkMDJiM2ViM2UyMzkwZTdwLTMsCi0gICAgLTB4MS42MmU2MmE5ZDAyNDE2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDEKLSAgICAweDEuNmUxMDYxMjA1ZGQ3OTA1MWMxMTJkMzBhMDUwOTdjNjFwLTEsCi0gICAgMHgxLjhjNjYyYTlkMDI0MTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDIKLSAgICAweDEuNmUxMDYxMjA1ZGQ3OTA1MWMxMTJkMzBhMDUwOTdjNjFwLTEsCi0gICAgLTB4MS44YzY2MmE5ZDAyNDE5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQzCi0gICAgLTB4MS42ODJmM2NjM2M3YTA4ZGEyY2UwMmE0MWNkYzdiZWQ4NnAtNCwKLSAgICAtMHgxLmE4YWExZDExYzQ0ZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDY0NAotICAgIC0weDEuNjgyZjNjYzNjN2EwOGRhMmNlMDJhNDFjZGM3YmVkODZwLTQsCi0gICAgMHgxLmE4YWExZDExYzQ0ZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDY0NQotICAgIC0weDEuZTY2NjlhMjcwYzM2ZDQ4NzliNDI4ZGRiYTk2Y2Q4N2JwLTcsCi0gICAgLTB4MS45NWVjOGI5ZTAzZDU0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDYKLSAgICAtMHgxLmU2NjY5YTI3MGMzNmQ0ODc5YjQyOGRkYmE5NmNkODdicC03LAotICAgIDB4MS45NWVjOGI5ZTAzZDU0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDcKLSAgICAweDEuZGRkMWVjMjVlMjA5ZjFiYmY3ZTE3ZWY2Yzg0NTBjZDdwLTUsCi0gICAgLTB4MS44MzJlZmEyYTQzNWE5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDgKLSAgICAweDEuZGRkMWVjMjVlMjA5ZjFiYmY3ZTE3ZWY2Yzg0NTBjZDdwLTUsCi0gICAgMHgxLjgzMmVmYTJhNDM1YTlwMAotICB9LAotICB7IC8vIEVudHJ5IDY0OQotICAgIDB4MS4wY2FiOTExNTY0MGQ5OTMwODJhNzM0M2JiNWFmZmVhMnAtMywKLSAgICAtMHgxLjcwNzE2OGI2ODJkZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDY1MAotICAgIDB4MS4wY2FiOTExNTY0MGQ5OTMwODJhNzM0M2JiNWFmZmVhMnAtMywKLSAgICAweDEuNzA3MTY4YjY4MmRmZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUxCi0gICAgMHgxLmEwNzIzYTk1NDkyZWRlZTVkYzk4Mzk0ZTQ1Zjk2ZDg4cC0zLAotICAgIC0weDEuNWRiM2Q3NDJjMjY1M3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUyCi0gICAgMHgxLmEwNzIzYTk1NDkyZWRlZTVkYzk4Mzk0ZTQ1Zjk2ZDg4cC0zLAotICAgIDB4MS41ZGIzZDc0MmMyNjUzcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTMKLSAgICAweDEuMThmZWU5NmExYTU4NTkyOGE5NGNkYTdlM2Q5MTZmZTFwLTIsCi0gICAgLTB4MS40YWY2NDVjZjAxZWE4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTQKLSAgICAweDEuMThmZWU5NmExYTU4NTkyOGE5NGNkYTdlM2Q5MTZmZTFwLTIsCi0gICAgMHgxLjRhZjY0NWNmMDFlYThwMAotICB9LAotICB7IC8vIEVudHJ5IDY1NQotICAgIDB4MS42MDQzNjIxYjEzYmUyZmYwNzA4NWY4Mjc4NTk4ZTU2NnAtMiwKLSAgICAtMHgxLjM4MzhiNDViNDE2ZmRwMAotICB9LAotICB7IC8vIEVudHJ5IDY1NgotICAgIDB4MS42MDQzNjIxYjEzYmUyZmYwNzA4NWY4Mjc4NTk4ZTU2NnAtMiwKLSAgICAweDEuMzgzOGI0NWI0MTZmZHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU3Ci0gICAgMHgxLmE1YTRjY2Y0MGQ5ZDliYTk3ZmFhNGUyM2VjY2U5ZTNhcC0yLAotICAgIC0weDEuMjU3YjIyZTc4MGY1MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU4Ci0gICAgMHgxLmE1YTRjY2Y0MGQ5ZDliYTk3ZmFhNGUyM2VjY2U5ZTNhcC0yLAotICAgIDB4MS4yNTdiMjJlNzgwZjUycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTkKLSAgICAweDEuZThjNDA1ZjM2Zjg1YjdmNWQ2YTM4ZGZkNGE2OTIzNDFwLTIsCi0gICAgLTB4MS4xMmJkOTE3M2MwN2FicDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjAKLSAgICAweDEuZThjNDA1ZjM2Zjg1YjdmNWQ2YTM4ZGZkNGE2OTIzNDFwLTIsCi0gICAgMHgxLjEyYmQ5MTczYzA3YWJwMAotICB9LAotICB7IC8vIEVudHJ5IDY2MQotICAgIDB4MS4yNjk3NmE2YzRlMGY4NjYzMzMyN2YxY2VlY2I1MDhhZXAtMSwKLSAgICAtMHgxLmVhNWMzZWQ1YjM4NTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjIKLSAgICAweDEuMjY5NzZhNmM0ZTBmODY2MzMzMjdmMWNlZWNiNTA4YWVwLTEsCi0gICAgMHgxLmVhNWMzZWQ1YjM4NTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjMKLSAgICAweDEuMzgwNWExODgyMDA5ZjI4NDNkYTgwOGU5NTlmMTc4NjFwLTEsCi0gICAgLTB4MS5kNGI4N2RhYjY3MGEwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY0Ci0gICAgMHgxLjM4MDVhMTg4MjAwOWYyODQzZGE4MDhlOTU5ZjE3ODYxcC0xLAotICAgIDB4MS5kNGI4N2RhYjY3MGEwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY1Ci0gICAgMHgxLjQ4ZTUyZTBhNjViY2IzY2Q0NjQ1NWM0ZDIzMzhiZGYycC0xLAotICAgIC0weDEuYmYxNGJjODExYThmMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDY2NgotICAgIDB4MS40OGU1MmUwYTY1YmNiM2NkNDY0NTVjNGQyMzM4YmRmMnAtMSwKLSAgICAweDEuYmYxNGJjODExYThmMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDY2NwotICAgIDB4MS41OTJlNThlYTBhOWVlYzBiMzU3ZWI0ZTlhODNiMGVhNXAtMSwKLSAgICAtMHgxLmE5NzBmYjU2Y2UxNDBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjgKLSAgICAweDEuNTkyZTU4ZWEwYTllZWMwYjM1N2ViNGU5YTgzYjBlYTVwLTEsCi0gICAgMHgxLmE5NzBmYjU2Y2UxNDBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjkKLSAgICAweDEuNjhkOWFmZTA1MmQxZjBlOTMyNGFlODc2OTYxYmNkYjFwLTEsCi0gICAgLTB4MS45M2NkM2EyYzgxOTkwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcwCi0gICAgMHgxLjY4ZDlhZmUwNTJkMWYwZTkzMjRhZTg3Njk2MWJjZGIxcC0xLAotICAgIDB4MS45M2NkM2EyYzgxOTkwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcxCi0gICAgMHgxLjc3ZTAwOGQwNzc1ZTc0NGViMTZhMmM0ZWM3MTg0YzQzcC0xLAotICAgIC0weDEuN2UyOTc5MDIzNTFlMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDY3MgotICAgIDB4MS43N2UwMDhkMDc3NWU3NDRlYjE2YTJjNGVjNzE4NGM0M3AtMSwKLSAgICAweDEuN2UyOTc5MDIzNTFlMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDY3MwotICAgIDB4MS44NjNhODUwZTQzOGZlMDI5MzAyYWJhMGY1ZjEyNzYxNnAtMSwKLSAgICAtMHgxLjY4ODViN2Q3ZThhMzBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzQKLSAgICAweDEuODYzYTg1MGU0MzhmZTAyOTMwMmFiYTBmNWYxMjc2MTZwLTEsCi0gICAgMHgxLjY4ODViN2Q3ZThhMzBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzUKLSAgICAweDEuOTNlMjk0ODIzM2ZjZTgxNDQzOWVkNTFmZDI1NDg5MjBwLTEsCi0gICAgLTB4MS41MmUxZjZhZDljMjgwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc2Ci0gICAgMHgxLjkzZTI5NDgyMzNmY2U4MTQ0MzllZDUxZmQyNTQ4OTIwcC0xLAotICAgIDB4MS41MmUxZjZhZDljMjgwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc3Ci0gICAgMHgxLmEwZDFmOGE5YTc5MWQ0YjU2OTRjYTY4YTQyZmU2YzlicC0xLAotICAgIC0weDEuM2QzZTM1ODM0ZmFkMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDY3OAotICAgIDB4MS5hMGQxZjhhOWE3OTFkNGI1Njk0Y2E2OGE0MmZlNmM5YnAtMSwKLSAgICAweDEuM2QzZTM1ODM0ZmFkMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDY3OQotICAgIDB4MS5iYzZiZDg2MWUxM2RlMzA5NDI4ZTAwZjdiZWY2YzNlY3AtMSwKLSAgICAtMHgxLjBhMGIwMjUwMWM3OTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODAKLSAgICAweDEuYmM2YmQ4NjFlMTNkZTMwOTQyOGUwMGY3YmVmNmMzZWNwLTEsCi0gICAgMHgxLjBhMGIwMjUwMWM3OTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODEKLSAgICAweDEuY2E1OWM2ZmEzZDljZTIzOGEyMjczOTNiNmIwNzViYzVwLTEsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODJjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgyCi0gICAgMHgxLmNhNTljNmZhM2Q5Y2UyMzhhMjI3MzkzYjZiMDc1YmM1cC0xLAotICAgIDB4MS5kOGY3MjA4ZTZiODJjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgzCi0gICAgMHgxLmQ2YzBiMTI1NzkxY2ZmY2U4M2UzMjU2NDcxMmI3OGM2cC0xLAotICAgIC0weDEuOWRkODNjN2M5ZTEyNnAtMgotICB9LAotICB7IC8vIEVudHJ5IDY4NAotICAgIDB4MS5kNmMwYjEyNTc5MWNmZmNlODNlMzI1NjQ3MTJiNzhjNnAtMSwKLSAgICAweDEuOWRkODNjN2M5ZTEyNnAtMgotICB9LAotICB7IC8vIEVudHJ5IDY4NQotICAgIDB4MS5lMTk2MDI2MTgyOTg1ODM5MTY0NWJiZTEyMDE5ZTU4YXAtMSwKLSAgICAtMHgxLjYyYjk1ODZhZDBhMjBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODYKLSAgICAweDEuZTE5NjAyNjE4Mjk4NTgzOTE2NDViYmUxMjAxOWU1OGFwLTEsCi0gICAgMHgxLjYyYjk1ODZhZDBhMjBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODcKLSAgICAweDEuZWFkMDdjYzYzNTY5NjRlMjdhMTAzNmQyZjhiMTU4ZjdwLTEsCi0gICAgLTB4MS4yNzlhNzQ1OTAzMzFhcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg4Ci0gICAgMHgxLmVhZDA3Y2M2MzU2OTY0ZTI3YTEwMzZkMmY4YjE1OGY3cC0xLAotICAgIDB4MS4yNzlhNzQ1OTAzMzFhcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg5Ci0gICAgMHgxLmYyNjg0MGU3YjIxODhmN2EwY2M2NjFhMGVkZTM3MjhicC0xLAotICAgIC0weDEuZDhmNzIwOGU2YjgyOXAtMwotICB9LAotICB7IC8vIEVudHJ5IDY5MAotICAgIDB4MS5mMjY4NDBlN2IyMTg4ZjdhMGNjNjYxYTBlZGUzNzI4YnAtMSwKLSAgICAweDEuZDhmNzIwOGU2YjgyOXAtMwotICB9LAotICB7IC8vIEVudHJ5IDY5MQotICAgIDB4MS5mODU2ZDQ4ZGI3OTdkZWMwYjc5ZTEzNTM0MDlkYzNmMnAtMSwKLSAgICAtMHgxLjYyYjk1ODZhZDBhMWVwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTIKLSAgICAweDEuZjg1NmQ0OGRiNzk3ZGVjMGI3OWUxMzUzNDA5ZGMzZjJwLTEsCi0gICAgMHgxLjYyYjk1ODZhZDBhMWVwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTMKLSAgICAweDEuZmM5NzI4M2E0MjQ3OTcyMTVmOGE4ZDE5Njc3MzZjOWJwLTEsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODI2cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjk0Ci0gICAgMHgxLmZjOTcyODNhNDI0Nzk3MjE1ZjhhOGQxOTY3NzM2YzlicC0xLAotICAgIDB4MS5kOGY3MjA4ZTZiODI2cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjk1Ci0gICAgMHgxLmZmMjU5YjdhYjlmNGY5YThjYjlmMWMzMzMyNzJlNDA5cC0xLAotICAgIC0weDEuZDhmNzIwOGU2YjgyZHAtNQotICB9LAotICB7IC8vIEVudHJ5IDY5NgotICAgIDB4MS5mZjI1OWI3YWI5ZjRmOWE4Y2I5ZjFjMzMzMjcyZTQwOXAtMSwKLSAgICAweDEuZDhmNzIwOGU2YjgyZHAtNQotICB9LAotICB7IC8vIEVudHJ5IDY5NwotICAgIDB4MS5mZjI1OWI3YWI5ZjRmOWE4Y2I5ZjFjMzMzMjcyZTQwOXAtMSwKLSAgICAweDEuZDhmNzIwOGU2YjgyZHAtNQotICB9LAotICB7IC8vIEVudHJ5IDY5OAotICAgIDB4MS5mZjI1OWI3YWI5ZjRmOWE4Y2I5ZjFjMzMzMjcyZTQwOXAtMSwKLSAgICAtMHgxLmQ4ZjcyMDhlNmI4MmRwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTkKLSAgICAweDEuZmM5NzI4M2E0MjQ3OTU4NDcyOTQ2NTRhMWQ4YTA4ZWRwLTEsCi0gICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDAKLSAgICAweDEuZmM5NzI4M2E0MjQ3OTU4NDcyOTQ2NTRhMWQ4YTA4ZWRwLTEsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODJkcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzAxCi0gICAgMHgxLmY4NTZkNDhkYjc5N2RiZmVjZmE4YjRjZDNiZTQ0MDI3cC0xLAotICAgIDB4MS42MmI5NTg2YWQwYTIycC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzAyCi0gICAgMHgxLmY4NTZkNDhkYjc5N2RiZmVjZmE4YjRjZDNiZTQ0MDI3cC0xLAotICAgIC0weDEuNjJiOTU4NmFkMGEyMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDcwMwotICAgIDB4MS5mMjY4NDBlN2IyMTg4YmQwODE0ZTNkZmM3ZjZmM2Y4N3AtMSwKLSAgICAweDEuZDhmNzIwOGU2YjgyZHAtMwotICB9LAotICB7IC8vIEVudHJ5IDcwNAotICAgIDB4MS5mMjY4NDBlN2IyMTg4YmQwODE0ZTNkZmM3ZjZmM2Y4N3AtMSwKLSAgICAtMHgxLmQ4ZjcyMDhlNmI4MmRwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDUKLSAgICAweDEuZWFkMDdjYzYzNTY5NjA1NDZhZTYzNGVmNjI2MjFmYjJwLTEsCi0gICAgMHgxLjI3OWE3NDU5MDMzMWNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDYKLSAgICAweDEuZWFkMDdjYzYzNTY5NjA1NDZhZTYzNGVmNjI2MjFmYjJwLTEsCi0gICAgLTB4MS4yNzlhNzQ1OTAzMzFjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA3Ci0gICAgMHgxLmUxOTYwMjYxODI5ODUyY2E2NjJjYTI3ZDUxOGMyZmE5cC0xLAotICAgIDB4MS42MmI5NTg2YWQwYTIycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA4Ci0gICAgMHgxLmUxOTYwMjYxODI5ODUyY2E2NjJjYTI3ZDUxOGMyZmE5cC0xLAotICAgIC0weDEuNjJiOTU4NmFkMGEyMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDcwOQotICAgIDB4MS5kNmMwYjEyNTc5MWNmOTgzZDUzZWZhYTdkNDVlMjkxZXAtMSwKLSAgICAweDEuOWRkODNjN2M5ZTEyOHAtMgotICB9LAotICB7IC8vIEVudHJ5IDcxMAotICAgIDB4MS5kNmMwYjEyNTc5MWNmOTgzZDUzZWZhYTdkNDVlMjkxZXAtMSwKLSAgICAtMHgxLjlkZDgzYzdjOWUxMjhwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTEKLSAgICAweDEuY2E1OWM2ZmEzZDljZGIxNzUzMDkyN2FmZjFiMzNhYmJwLTEsCi0gICAgMHgxLmQ4ZjcyMDhlNmI4MmVwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTIKLSAgICAweDEuY2E1OWM2ZmEzZDljZGIxNzUzMDkyN2FmZjFiMzNhYmJwLTEsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODJlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzEzCi0gICAgMHgxLmJjNmJkODYxZTEzZGUzMDk0MjhlMDBmN2JlZjZjM2VjcC0xLAotICAgIDB4MS4wYTBiMDI1MDFjNzk5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE0Ci0gICAgMHgxLmJjNmJkODYxZTEzZGUzMDk0MjhlMDBmN2JlZjZjM2VjcC0xLAotICAgIC0weDEuMGEwYjAyNTAxYzc5OXAtMQotICB9LAotICB7IC8vIEVudHJ5IDcxNQotICAgIDB4MS5hMGQxZjhhOWE3OTFmOWRmZjVjOTkzYWY0OTA4MjY0ZHAtMSwKLSAgICAweDEuM2QzZTM1ODM0ZmFjY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDcxNgotICAgIDB4MS5hMGQxZjhhOWE3OTFmOWRmZjVjOTkzYWY0OTA4MjY0ZHAtMSwKLSAgICAtMHgxLjNkM2UzNTgzNGZhY2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTcKLSAgICAweDEuOTNlMjk0ODIzM2ZkMGY2OWUzOTE4OTgyMTQ4ZjgyNjVwLTEsCi0gICAgMHgxLjUyZTFmNmFkOWMyN2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTgKLSAgICAweDEuOTNlMjk0ODIzM2ZkMGY2OWUzOTE4OTgyMTQ4ZjgyNjVwLTEsCi0gICAgLTB4MS41MmUxZjZhZDljMjdjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE5Ci0gICAgMHgxLjg2M2E4NTBlNDM5MDA5OTdlNzZiZTgwNDA1NDM3Mzc3cC0xLAotICAgIDB4MS42ODg1YjdkN2U4YTJjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIwCi0gICAgMHgxLjg2M2E4NTBlNDM5MDA5OTdlNzZiZTgwNDA1NDM3Mzc3cC0xLAotICAgIC0weDEuNjg4NWI3ZDdlOGEyY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDcyMQotICAgIDB4MS43N2UwMDhkMDc3NWU5ZmMzOGUzZjQ5MmY4ZTkzZmY1MXAtMSwKLSAgICAweDEuN2UyOTc5MDIzNTFkY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDcyMgotICAgIDB4MS43N2UwMDhkMDc3NWU5ZmMzOGUzZjQ5MmY4ZTkzZmY1MXAtMSwKLSAgICAtMHgxLjdlMjk3OTAyMzUxZGNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjMKLSAgICAweDEuNjhkOWFmZTA1MmQyMWU1MDU2MGY5ZmZiNmNjMWI5NDVwLTEsCi0gICAgMHgxLjkzY2QzYTJjODE5OGNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjQKLSAgICAweDEuNjhkOWFmZTA1MmQyMWU1MDU2MGY5ZmZiNmNjMWI5NDVwLTEsCi0gICAgLTB4MS45M2NkM2EyYzgxOThjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI1Ci0gICAgMHgxLjU5MmU1OGVhMGE5ZjFiNGZkZGJhYWY4NjhmZTQ3OTExcC0xLAotICAgIDB4MS5hOTcwZmI1NmNlMTNjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI2Ci0gICAgMHgxLjU5MmU1OGVhMGE5ZjFiNGZkZGJhYWY4NjhmZTQ3OTExcC0xLAotICAgIC0weDEuYTk3MGZiNTZjZTEzY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDcyNwotICAgIDB4MS40OGU1MmUwYTY1YmNlNGQ5ZDYyYTMxMjkzZjdkNDFjMXAtMSwKLSAgICAweDEuYmYxNGJjODExYThlY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDcyOAotICAgIDB4MS40OGU1MmUwYTY1YmNlNGQ5ZDYyYTMxMjkzZjdkNDFjMXAtMSwKLSAgICAtMHgxLmJmMTRiYzgxMWE4ZWNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjkKLSAgICAweDEuMzgwNWExODgyMDBhMjU0MjQ3ZjMwNDYyYzM2YWNmNmFwLTEsCi0gICAgMHgxLmQ0Yjg3ZGFiNjcwOWNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzAKLSAgICAweDEuMzgwNWExODgyMDBhMjU0MjQ3ZjMwNDYyYzM2YWNmNmFwLTEsCi0gICAgLTB4MS5kNGI4N2RhYjY3MDljcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMxCi0gICAgMHgxLjI2OTc2YTZjNGUwZmJhYmI4NDYzMmJkOTlmZWVjOWM2cC0xLAotICAgIDB4MS5lYTVjM2VkNWIzODRjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMyCi0gICAgMHgxLjI2OTc2YTZjNGUwZmJhYmI4NDYzMmJkOTlmZWVjOWM2cC0xLAotICAgIC0weDEuZWE1YzNlZDViMzg0Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDczMwotICAgIDB4MS5lOGM0MDVmMzZmODViN2Y1ZDZhMzhkZmQ0YTY5MjM0MXAtMiwKLSAgICAweDEuMTJiZDkxNzNjMDdhYnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM0Ci0gICAgMHgxLmU4YzQwNWYzNmY4NWI3ZjVkNmEzOGRmZDRhNjkyMzQxcC0yLAotICAgIC0weDEuMTJiZDkxNzNjMDdhYnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM1Ci0gICAgMHgxLmE1YTRjY2Y0MGQ5Y2IyNWYxNmFkOTdlNDgwYzRiNDgzcC0yLAotICAgIDB4MS4yNTdiMjJlNzgwZjU2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzYKLSAgICAweDEuYTVhNGNjZjQwZDljYjI1ZjE2YWQ5N2U0ODBjNGI0ODNwLTIsCi0gICAgLTB4MS4yNTdiMjJlNzgwZjU2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzcKLSAgICAweDEuNjA0MzYyMWIxM2JkM2Y5MDRiM2I4NzZkZjViMmM2ZjRwLTIsCi0gICAgMHgxLjM4MzhiNDViNDE3MDFwMAotICB9LAotICB7IC8vIEVudHJ5IDczOAotICAgIDB4MS42MDQzNjIxYjEzYmQzZjkwNGIzYjg3NmRmNWIyYzZmNHAtMiwKLSAgICAtMHgxLjM4MzhiNDViNDE3MDFwMAotICB9LAotICB7IC8vIEVudHJ5IDczOQotICAgIDB4MS4xOGZlZTk2YTFhNTc2MmZjNjc3MGZmMTY4ZTA2YWIzZXAtMiwKLSAgICAweDEuNGFmNjQ1Y2YwMWVhY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQwCi0gICAgMHgxLjE4ZmVlOTZhMWE1NzYyZmM2NzcwZmYxNjhlMDZhYjNlcC0yLAotICAgIC0weDEuNGFmNjQ1Y2YwMWVhY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQxCi0gICAgMHgxLmEwNzIzYTk1NDkyY2U5OTg0NTdmYjdhMGQwOWE2Mzg1cC0zLAotICAgIDB4MS41ZGIzZDc0MmMyNjU3cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDIKLSAgICAweDEuYTA3MjNhOTU0OTJjZTk5ODQ1N2ZiN2EwZDA5YTYzODVwLTMsCi0gICAgLTB4MS41ZGIzZDc0MmMyNjU3cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDMKLSAgICAweDEuMGNhYjkxMTU2NDBiOWQ5ZDQ2NjcyM2JiZDVkNTg5YmVwLTMsCi0gICAgMHgxLjcwNzE2OGI2ODJlMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDc0NAotICAgIDB4MS4wY2FiOTExNTY0MGI5ZDlkNDY2NzIzYmJkNWQ1ODliZXAtMywKLSAgICAtMHgxLjcwNzE2OGI2ODJlMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDc0NQotICAgIDB4MS5kZGQxZWMyNWUyMDFmNTM4OTI1YmY1YmNmN2M3ZGY2ZXAtNSwKLSAgICAweDEuODMyZWZhMmE0MzVhZHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ2Ci0gICAgMHgxLmRkZDFlYzI1ZTIwMWY1Mzg5MjViZjViY2Y3YzdkZjZlcC01LAotICAgIC0weDEuODMyZWZhMmE0MzVhZHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ3Ci0gICAgLTB4MS5lNjY2OWEyNzBjNTZkM2EwOGQ5MWNjMjcyMWY5MmZlMXAtNywKLSAgICAweDEuOTVlYzhiOWUwM2Q1OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ4Ci0gICAgLTB4MS5lNjY2OWEyNzBjNTZkM2EwOGQ5MWNjMjcyMWY5MmZlMXAtNywKLSAgICAtMHgxLjk1ZWM4YjllMDNkNThwMAotICB9LAotICB7IC8vIEVudHJ5IDc0OQotICAgIC0weDEuNjgyZjNjYzNjN2EwOGRhMmNlMDJhNDFjZGM3YmVkODZwLTQsCi0gICAgMHgxLmE4YWExZDExYzQ0ZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDc1MAotICAgIC0weDEuNjgyZjNjYzNjN2EwOGRhMmNlMDJhNDFjZGM3YmVkODZwLTQsCi0gICAgLTB4MS5hOGFhMWQxMWM0NGZmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTEKLSAgICAweDEuMGNiMzQ2OWEyOWVhNjZkNDAzMWJlNzY5NzAyYWFkNWNwLTEsCi0gICAgMHgxLjA0YWZmNmQzMzA5NDJwMAotICB9LAotICB7IC8vIEVudHJ5IDc1MgotICAgIDB4MS4wY2IzNDY5YTI5ZWE2NmQ0MDMxYmU3Njk3MDJhYWQ1Y3AtMSwKLSAgICAtMHgxLjA0YWZmNmQzMzA5NDJwMAotICB9LAotICB7IC8vIEVudHJ5IDc1MwotICAgIDB4MS4wY2IyMjhmYTdmODExN2M4MmU2MWNmNTM5MzM0MWM2NHAtMSwKLSAgICAweDEuMDRiMDllOThkY2RiNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU0Ci0gICAgMHgxLjBjYjIyOGZhN2Y4MTE3YzgyZTYxY2Y1MzkzMzQxYzY0cC0xLAotICAgIC0weDEuMDRiMDllOThkY2RiNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU1Ci0gICAgMHgxLjBjYjEwYjVhNjFiMDVhNzNlNzhhM2U0NDQ3YmFmNTE0cC0xLAotICAgIDB4MS4wNGIxNDY1ZTg5MjI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTYKLSAgICAweDEuMGNiMTBiNWE2MWIwNWE3M2U3OGEzZTQ0NDdiYWY1MTRwLTEsCi0gICAgLTB4MS4wNGIxNDY1ZTg5MjI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTcKLSAgICAweDEuMGNhZmVkYjlkMDc4YTk4NDA4NjkyOGFhNDBkMmU0YTVwLTEsCi0gICAgMHgxLjA0YjFlZTI0MzU2OThwMAotICB9LAotICB7IC8vIEVudHJ5IDc1OAotICAgIDB4MS4wY2FmZWRiOWQwNzhhOTg0MDg2OTI4YWE0MGQyZTRhNXAtMSwKLSAgICAtMHgxLjA0YjFlZTI0MzU2OThwMAotICB9LAotICB7IC8vIEVudHJ5IDc1OQotICAgIDB4MS4wY2FlZDAxOGNiZGE3ZmE1OWM2MzFjZDU1YjMxYWE4ZHAtMSwKLSAgICAweDEuMDRiMjk1ZTllMWIwYXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYwCi0gICAgMHgxLjBjYWVkMDE4Y2JkYTdmYTU5YzYzMWNkNTViMzFhYThkcC0xLAotICAgIC0weDEuMDRiMjk1ZTllMWIwYXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYxCi0gICAgMHgxLjBjYWRiMjc3NTNkNjU3ODVlMDZkMGU0NjQwMDYxNDllcC0xLAotICAgIDB4MS4wNGIzM2RhZjhkZjdjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjIKLSAgICAweDEuMGNhZGIyNzc1M2Q2NTc4NWUwNmQwZTQ2NDAwNjE0OWVwLTEsCi0gICAgLTB4MS4wNGIzM2RhZjhkZjdjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjMKLSAgICAweDEuMGNhYzk0ZDU2ODZjYWJkMjQzMGMyMGZkZjI4NTViNDdwLTEsCi0gICAgMHgxLjA0YjNlNTc1M2EzZWVwMAotICB9LAotICB7IC8vIEVudHJ5IDc2NAotICAgIDB4MS4wY2FjOTRkNTY4NmNhYmQyNDMwYzIwZmRmMjg1NWI0N3AtMSwKLSAgICAtMHgxLjA0YjNlNTc1M2EzZWVwMAotICB9LAotICB7IC8vIEVudHJ5IDc2NQotICAgIDB4MS4wY2FiNzczMzA5OWRmNzM4NjQ1NTc0Y2Q0ODJlZjRiMnAtMSwKLSAgICAweDEuMDRiNDhkM2FlNjg2MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY2Ci0gICAgMHgxLjBjYWI3NzMzMDk5ZGY3Mzg2NDU1NzRjZDQ4MmVmNGIycC0xLAotICAgIC0weDEuMDRiNDhkM2FlNjg2MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY3Ci0gICAgMHgxLjBjYWE1OTkwMzc2YjA2MWVjMWNmMzg5MGYxYjhlMWUzcC0xLAotICAgIDB4MS4wNGI1MzUwMDkyY2NmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjgKLSAgICAweDEuMGNhYTU5OTAzNzZiMDYxZWMxY2YzODkwZjFiOGUxZTNwLTEsCi0gICAgLTB4MS4wNGI1MzUwMDkyY2NmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjkKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzcwCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzcxCi0gICAgMHgxLnAwLAotICAgIC0wLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzIKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzMKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzc0Ci0gICAgMHgxLmFkMDJjNzcxYzM1ZWQ1ZjAxMDg5YTAwYzZhMjdlMGNmcC0xLAotICAgIDB4MS4yNzlhNzQ1OTAzMzFicC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc1Ci0gICAgMHgxLmFkMDJjNzcxYzM1ZWQ1ZjAxMDg5YTAwYzZhMjdlMGNmcC0xLAotICAgIC0weDEuMjc5YTc0NTkwMzMxYnAtMQotICB9LAotICB7IC8vIEVudHJ5IDc3NgotICAgIDB4MS5hZDAyYzc3MWMzNWVjZDM0NzFkZTkwMjFlNmMzYjkyYnAtMSwKLSAgICAweDEuMjc5YTc0NTkwMzMxY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDc3NwotICAgIDB4MS5hZDAyYzc3MWMzNWVjZDM0NzFkZTkwMjFlNmMzYjkyYnAtMSwKLSAgICAtMHgxLjI3OWE3NDU5MDMzMWNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzgKLSAgICAweDEuYWQwMmM3NzFjMzVlYzQ3OGQzMzM4MDM3NjJmNDUwZDVwLTEsCi0gICAgMHgxLjI3OWE3NDU5MDMzMWRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzkKLSAgICAweDEuYWQwMmM3NzFjMzVlYzQ3OGQzMzM4MDM3NjJmNDUwZDVwLTEsCi0gICAgLTB4MS4yNzlhNzQ1OTAzMzFkcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgwCi0gICAgLTB4MS40OGQxZGRkMmIyYjNmOGMyMWI5NDIxZTY1YjM4MDczNXAtMywKLSAgICAweDEuYmI2N2FlODU4NGNhOXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgxCi0gICAgLTB4MS40OGQxZGRkMmIyYjNmOGMyMWI5NDIxZTY1YjM4MDczNXAtMywKLSAgICAtMHgxLmJiNjdhZTg1ODRjYTlwMAotICB9LAotICB7IC8vIEVudHJ5IDc4MgotICAgIC0weDEuNDhkMWRkZDJiMmI0NzcxOGZmMzA2M2I2YmQ5ODEwOTlwLTMsCi0gICAgMHgxLmJiNjdhZTg1ODRjYWFwMAotICB9LAotICB7IC8vIEVudHJ5IDc4MwotICAgIC0weDEuNDhkMWRkZDJiMmI0NzcxOGZmMzA2M2I2YmQ5ODEwOTlwLTMsCi0gICAgLTB4MS5iYjY3YWU4NTg0Y2FhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODQKLSAgICAtMHgxLjQ4ZDFkZGQyYjJiNGY1NmZlMmNjYTU4NzFlYWY0ODIwcC0zLAotICAgIDB4MS5iYjY3YWU4NTg0Y2FicDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODUKLSAgICAtMHgxLjQ4ZDFkZGQyYjJiNGY1NmZlMmNjYTU4NzFlYWY0ODIwcC0zLAotICAgIC0weDEuYmI2N2FlODU4NGNhYnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzg2Ci0gICAgMHgxLmNmYzZjZmE1MmFkOWY5OTExZGI0Y2EwZDQ1ZmRiMGIzcC0xLAotICAgIDB4MS5iZmZmZmZmZmZmZmZmcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzg3Ci0gICAgMHgxLmNmYzZjZmE1MmFkOWY5OTExZGI0Y2EwZDQ1ZmRiMGIzcC0xLAotICAgIC0weDEuYmZmZmZmZmZmZmZmZnAtMgotICB9LAotICB7IC8vIEVudHJ5IDc4OAotICAgIDB4MS5jZmM2Y2ZhNTJhZDlmNjJkNmQ1NDIzY2E4MzM5YTAwYXAtMSwKLSAgICAweDEuY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDc4OQotICAgIDB4MS5jZmM2Y2ZhNTJhZDlmNjJkNmQ1NDIzY2E4MzM5YTAwYXAtMSwKLSAgICAtMHgxLmNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTAKLSAgICAweDEuY2ZjNmNmYTUyYWQ5ZjJjOWJjZjM3ZDg3YzA1ODkyZjVwLTEsCi0gICAgMHgxLmMwMDAwMDAwMDAwMDFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTEKLSAgICAweDEuY2ZjNmNmYTUyYWQ5ZjJjOWJjZjM3ZDg3YzA1ODkyZjVwLTEsCi0gICAgLTB4MS5jMDAwMDAwMDAwMDAxcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzkyCi0gICAgMHgxLjhiYjEwNWE1ZGM5MDEwNDA1MWQwOGNiOTY1NjMxODA3cC0xLAotICAgIDB4MS41ZmZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzkzCi0gICAgMHgxLjhiYjEwNWE1ZGM5MDEwNDA1MWQwOGNiOTY1NjMxODA3cC0xLAotICAgIC0weDEuNWZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDc5NAotICAgIDB4MS44YmIxMDVhNWRjOTAwNjE4ZjgwZmE1MWQzMDNjNjlwLTEsCi0gICAgMHgxLjZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTUKLSAgICAweDEuOGJiMTA1YTVkYzkwMDYxOGY4MGZhNTFkMzAzYzY5cC0xLAotICAgIC0weDEuNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDc5NgotICAgIDB4MS44YmIxMDVhNWRjOGZmYmYxOWU0ZWJkODBmYWIyY2RiOHAtMSwKLSAgICAweDEuNjAwMDAwMDAwMDAwMXAtMQotICB9LAotICB7IC8vIEVudHJ5IDc5NwotICAgIDB4MS44YmIxMDVhNWRjOGZmYmYxOWU0ZWJkODBmYWIyY2RiOHAtMSwKLSAgICAtMHgxLjYwMDAwMDAwMDAwMDFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTgKLSAgICAweDEuN2VmNDg0MmYwYmNkMTE2ODZhYWY2ZjIxYzlhYTgzNTRwLTIsCi0gICAgMHgxLjJmZmZmZmZmZmZmZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDc5OQotICAgIDB4MS43ZWY0ODQyZjBiY2QxMTY4NmFhZjZmMjFjOWFhODM1NHAtMiwKLSAgICAtMHgxLjJmZmZmZmZmZmZmZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDgwMAotICAgIDB4MS43ZWY0ODQyZjBiY2NkNjBkNGE1MDFkYzhiYzRiNTdiM3AtMiwKLSAgICAweDEuM3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgODAxCi0gICAgMHgxLjdlZjQ4NDJmMGJjY2Q2MGQ0YTUwMWRjOGJjNGI1N2IzcC0yLAotICAgIC0weDEuM3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgODAyCi0gICAgMHgxLjdlZjQ4NDJmMGJjYzlhYjIyOWYwY2M2ZmFkNmQzNzhkcC0yLAotICAgIDB4MS4zMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDMKLSAgICAweDEuN2VmNDg0MmYwYmNjOWFiMjI5ZjBjYzZmYWQ2ZDM3OGRwLTIsCi0gICAgLTB4MS4zMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDQKLSAgICAtMHgxLjg2M2VmYTM2MWRjMjI5NGU5MjliOTUxNWZiMzRmOWJhcC0xLAotICAgIDB4MS4zN2ZmZmZmZmZmZmZmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDUKLSAgICAtMHgxLjg2M2VmYTM2MWRjMjI5NGU5MjliOTUxNWZiMzRmOWJhcC0xLAotICAgIC0weDEuMzdmZmZmZmZmZmZmZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODA2Ci0gICAgLTB4MS44NjNlZmEzNjFkYzI1MmJjYTFlYWVlZDM5NzQ5YmVkN3AtMSwKLSAgICAweDEuMzgwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDcKLSAgICAtMHgxLjg2M2VmYTM2MWRjMjUyYmNhMWVhZWVkMzk3NDliZWQ3cC0xLAotICAgIC0weDEuMzgwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDgKLSAgICAtMHgxLjg2M2VmYTM2MWRjMjdjMmFiMTNhNDg5MTJkNDU4ODBicC0xLAotICAgIDB4MS4zODAwMDAwMDAwMDAxcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDkKLSAgICAtMHgxLjg2M2VmYTM2MWRjMjdjMmFiMTNhNDg5MTJkNDU4ODBicC0xLAotICAgIC0weDEuMzgwMDAwMDAwMDAwMXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODEwCi0gICAgMHgxLmZlZjJiMmQyMWNmNmMxMDZlODZmZjkzOTVmODIwNGEwcC0xLAotICAgIDB4MS4wNjljOGI0NmIzNzkycC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgODExCi0gICAgMHgxLmZlZjJiMmQyMWNmNmMxMDZlODZmZjkzOTVmODIwNGEwcC0xLAotICAgIC0weDEuMDY5YzhiNDZiMzc5MnAtNAotICB9LAotICB7IC8vIEVudHJ5IDgxMgotICAgIDB4MS5mYmNiZTY5M2JkOGVjODU3MjNiNmNiNTVlNGY1ZTc4ZnAtMSwKLSAgICAweDEuMDY5YzhiNDZiMzc5MnAtMwotICB9LAotICB7IC8vIEVudHJ5IDgxMwotICAgIDB4MS5mYmNiZTY5M2JkOGVjODU3MjNiNmNiNTVlNGY1ZTc4ZnAtMSwKLSAgICAtMHgxLjA2OWM4YjQ2YjM3OTJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTQKLSAgICAweDEuZjY4ZWViZmNiYjVlODQxOTAwZTI1NDJmN2MyNGJhYjBwLTEsCi0gICAgMHgxLjg5ZWFkMGVhMGQzNWJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTUKLSAgICAweDEuZjY4ZWViZmNiYjVlODQxOTAwZTI1NDJmN2MyNGJhYjBwLTEsCi0gICAgLTB4MS44OWVhZDBlYTBkMzVicC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgODE2Ci0gICAgMHgxLmVmNDE0NWI0YWVjZmZiZGFhZmZiNzhmZmI0OWFjOWJkcC0xLAotICAgIDB4MS4wNjljOGI0NmIzNzkycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgODE3Ci0gICAgMHgxLmVmNDE0NWI0YWVjZmZiZGFhZmZiNzhmZmI0OWFjOWJkcC0xLAotICAgIC0weDEuMDY5YzhiNDZiMzc5MnAtMgotICB9LAotICB7IC8vIEVudHJ5IDgxOAotICAgIDB4MS5lNWVhYTI4NmZiYmM2NzBkYmY2MzkyZDdjOThhYjBhMHAtMSwKLSAgICAweDEuNDg0M2FlMTg2MDU3NnAtMgotICB9LAotICB7IC8vIEVudHJ5IDgxOQotICAgIDB4MS5lNWVhYTI4NmZiYmM2NzBkYmY2MzkyZDdjOThhYjBhMHAtMSwKLSAgICAtMHgxLjQ4NDNhZTE4NjA1NzZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjAKLSAgICAweDEuZGE5NGQ1NGRkNGMwODc2ZTE4ZWU5N2M3MGQxYTRhOTRwLTEsCi0gICAgMHgxLjg5ZWFkMGVhMGQzNWFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjEKLSAgICAweDEuZGE5NGQ1NGRkNGMwODc2ZTE4ZWU5N2M3MGQxYTRhOTRwLTEsCi0gICAgLTB4MS44OWVhZDBlYTBkMzVhcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgODIyCi0gICAgMHgxLmNkNGJjYTljYjVjNzE1MzAyMDAxZTQ0NmNjOTNhN2JjcC0xLAotICAgIDB4MS5jYjkxZjNiYmJhMTNlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgODIzCi0gICAgMHgxLmNkNGJjYTljYjVjNzE1MzAyMDAxZTQ0NmNjOTNhN2JjcC0xLAotICAgIC0weDEuY2I5MWYzYmJiYTEzZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDgyNAotICAgIDB4MS5iZTFkN2MzNTM0YzQwMzMxZmRkZjI0M2Q4YTBhNTZiMHAtMSwKLSAgICAweDEuMDY5YzhiNDZiMzc5MXAtMQotICB9LAotICB7IC8vIEVudHJ5IDgyNQotICAgIDB4MS5iZTFkN2MzNTM0YzQwMzMxZmRkZjI0M2Q4YTBhNTZiMHAtMSwKLSAgICAtMHgxLjA2OWM4YjQ2YjM3OTFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjYKLSAgICAweDEuYWQxOWUyNTM1YWE5Njc4YmQ1ZmRhZmM2ODgxNzcwMGJwLTEsCi0gICAgMHgxLjI3NzAxY2FmODllODNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjcKLSAgICAweDEuYWQxOWUyNTM1YWE5Njc4YmQ1ZmRhZmM2ODgxNzcwMGJwLTEsCi0gICAgLTB4MS4yNzcwMWNhZjg5ZTgzcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODI4Ci0gICAgMHgxLjlhNTJlMmUwZmJjYjNhM2Y0YmRlNmY2ZWMyNzc2N2E5cC0xLAotICAgIDB4MS40ODQzYWUxODYwNTc1cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODI5Ci0gICAgMHgxLjlhNTJlMmUwZmJjYjNhM2Y0YmRlNmY2ZWMyNzc2N2E5cC0xLAotICAgIC0weDEuNDg0M2FlMTg2MDU3NXAtMQotICB9LAotICB7IC8vIEVudHJ5IDgzMAotICAgIDB4MS44NWRjM2VhMWJiY2U5YTgwODVmNjY1OTNhODdiN2UyZXAtMSwKLSAgICAweDEuNjkxNzNmODEzNmM2N3AtMQotICB9LAotICB7IC8vIEVudHJ5IDgzMQotICAgIDB4MS44NWRjM2VhMWJiY2U5YTgwODVmNjY1OTNhODdiN2UyZXAtMSwKLSAgICAtMHgxLjY5MTczZjgxMzZjNjdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzIKLSAgICAweDEuNmZjYjdjNmI4YjkxOWFmM2RkYTUzMDk0YzlhMjdhYWJwLTEsCi0gICAgMHgxLjg5ZWFkMGVhMGQzNTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzMKLSAgICAweDEuNmZjYjdjNmI4YjkxOWFmM2RkYTUzMDk0YzlhMjdhYWJwLTEsCi0gICAgLTB4MS44OWVhZDBlYTBkMzU5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODM0Ci0gICAgMHgxLjU4MzdkMjgxN2NmMzAzZWY2ZGFlNjlmYWViMGYwMTVlcC0xLAotICAgIDB4MS5hYWJlNjI1MmUzYTRicC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODM1Ci0gICAgMHgxLjU4MzdkMjgxN2NmMzAzZWY2ZGFlNjlmYWViMGYwMTVlcC0xLAotICAgIC0weDEuYWFiZTYyNTJlM2E0YnAtMQotICB9LAotICB7IC8vIEVudHJ5IDgzNgotICAgIDB4MS4zZjNhMGUyOGJlZGQ0MDQ0NTg1OGY4MjNlMTUwMjY0YnAtMSwKLSAgICAweDEuY2I5MWYzYmJiYTEzZHAtMQotICB9LAotICB7IC8vIEVudHJ5IDgzNwotICAgIDB4MS4zZjNhMGUyOGJlZGQ0MDQ0NTg1OGY4MjNlMTUwMjY0YnAtMSwKLSAgICAtMHgxLmNiOTFmM2JiYmExM2RwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzgKLSAgICAweDEuMjRlYzc5OTE3MTY0MmRiZDI0ZDI1OTAwNTgyMmJkMjVwLTEsCi0gICAgMHgxLmVjNjU4NTI0OTA4MmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzkKLSAgICAweDEuMjRlYzc5OTE3MTY0MmRiZDI0ZDI1OTAwNTgyMmJkMjVwLTEsCi0gICAgLTB4MS5lYzY1ODUyNDkwODJmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODQwCi0gICAgMHgxLjA5NmFjMDJlYzQyYzg1YjdiMTBhZmVkOTIwMjc4NWI5cC0xLAotICAgIDB4MS4wNjljOGI0NmIzNzkxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDEKLSAgICAweDEuMDk2YWMwMmVjNDJjODViN2IxMGFmZWQ5MjAyNzg1YjlwLTEsCi0gICAgLTB4MS4wNjljOGI0NmIzNzkxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDIKLSAgICAweDEuZDlhM2EzMzZlZGI3NjEzZGYwNjJlODZhMzJkMDlmZTFwLTIsCi0gICAgMHgxLjE3MDY1M2ZiMWViMGFwMAotICB9LAotICB7IC8vIEVudHJ5IDg0MwotICAgIDB4MS5kOWEzYTMzNmVkYjc2MTNkZjA2MmU4NmEzMmQwOWZlMXAtMiwKLSAgICAtMHgxLjE3MDY1M2ZiMWViMGFwMAotICB9LAotICB7IC8vIEVudHJ5IDg0NAotICAgIDB4MS45ZTdmODY1MmI0NzU4MmFmZDI5NzQ0MjkzMTcwYzA3Y3AtMiwKLSAgICAweDEuMjc3MDFjYWY4OWU4M3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ1Ci0gICAgMHgxLjllN2Y4NjUyYjQ3NTgyYWZkMjk3NDQyOTMxNzBjMDdjcC0yLAotICAgIC0weDEuMjc3MDFjYWY4OWU4M3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ2Ci0gICAgMHgxLjYxYTc2MDc3YWVlMDdiYjM0OWNhNzZjZjcwMDkxM2QxcC0yLAotICAgIDB4MS4zN2Q5ZTU2M2Y1MWZjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDcKLSAgICAweDEuNjFhNzYwNzdhZWUwN2JiMzQ5Y2E3NmNmNzAwOTEzZDFwLTIsCi0gICAgLTB4MS4zN2Q5ZTU2M2Y1MWZjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDgKLSAgICAweDEuMjM1YjMzMWQ4Zjc0OGUyMGZiNmRkYjZhNzA4ZGJhMTBwLTIsCi0gICAgMHgxLjQ4NDNhZTE4NjA1NzVwMAotICB9LAotICB7IC8vIEVudHJ5IDg0OQotICAgIDB4MS4yMzViMzMxZDhmNzQ4ZTIwZmI2ZGRiNmE3MDhkYmExMHAtMiwKLSAgICAtMHgxLjQ4NDNhZTE4NjA1NzVwMAotICB9LAotICB7IC8vIEVudHJ5IDg1MAotICAgIDB4MS5jN2I5MGUzMDI0NTkzZGE4NDQ5OTYzY2ZlMDhkZGU4NXAtMywKLSAgICAweDEuNThhZDc2Y2NjYjhlZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODUxCi0gICAgMHgxLmM3YjkwZTMwMjQ1OTNkYTg0NDk5NjNjZmUwOGRkZTg1cC0zLAotICAgIC0weDEuNThhZDc2Y2NjYjhlZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODUyCi0gICAgMHgxLjQ2ZGM0ZjRjZTgzZGE3MjdlYTA0OGNjN2QyZjI3NmQxcC0zLAotICAgIDB4MS42OTE3M2Y4MTM2YzY3cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTMKLSAgICAweDEuNDZkYzRmNGNlODNkYTcyN2VhMDQ4Y2M3ZDJmMjc2ZDFwLTMsCi0gICAgLTB4MS42OTE3M2Y4MTM2YzY3cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTQKLSAgICAweDEuODk0ZjcwYmVmYmI5OWFiN2RmOWQxNzkwYTI4ZjQ4YWRwLTQsCi0gICAgMHgxLjc5ODEwODM1YTFmZTBwMAotICB9LAotICB7IC8vIEVudHJ5IDg1NQotICAgIDB4MS44OTRmNzBiZWZiYjk5YWI3ZGY5ZDE3OTBhMjhmNDhhZHAtNCwKLSAgICAtMHgxLjc5ODEwODM1YTFmZTBwMAotICB9LAotICB7IC8vIEVudHJ5IDg1NgotICAgIDB4MS4wNjkxMDdhZTkzMzJmOTVmYTJjNWNlZWFkZmIyOWY3N3AtNSwKLSAgICAweDEuODllYWQwZWEwZDM1OXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODU3Ci0gICAgMHgxLjA2OTEwN2FlOTMzMmY5NWZhMmM1Y2VlYWRmYjI5Zjc3cC01LAotICAgIC0weDEuODllYWQwZWEwZDM1OXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODU4Ci0gICAgLTB4MS4wNjkxMDdhZTkzMjdlMDczMWE3NDhjMjFmMDNiNWVmY3AtNSwKLSAgICAweDEuOWE1NDk5OWU3ODZkMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODU5Ci0gICAgLTB4MS4wNjkxMDdhZTkzMjdlMDczMWE3NDhjMjFmMDNiNWVmY3AtNSwKLSAgICAtMHgxLjlhNTQ5OTllNzg2ZDJwMAotICB9LAotICB7IC8vIEVudHJ5IDg2MAotICAgIC0weDEuODk0ZjcwYmVmYmI0MTQxN2RmZjg0M2U4MWZhYzM4OGJwLTQsCi0gICAgMHgxLmFhYmU2MjUyZTNhNGJwMAotICB9LAotICB7IC8vIEVudHJ5IDg2MQotICAgIC0weDEuODk0ZjcwYmVmYmI0MTQxN2RmZjg0M2U4MWZhYzM4OGJwLTQsCi0gICAgLTB4MS5hYWJlNjI1MmUzYTRicDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjIKLSAgICAtMHgxLjQ2ZGM0ZjRjZTgzYWU5YWIxY2MxYjIzNjdjYjc1M2VicC0zLAotICAgIDB4MS5iYjI4MmIwNzRlZGM0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjMKLSAgICAtMHgxLjQ2ZGM0ZjRjZTgzYWU5YWIxY2MxYjIzNjdjYjc1M2VicC0zLAotICAgIC0weDEuYmIyODJiMDc0ZWRjNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODY0Ci0gICAgLTB4MS5jN2I5MGUzMDI0NTY4OGUwOTk4NjBlOGQ0ZmZmNjAxY3AtMywKLSAgICAweDEuY2I5MWYzYmJiYTEzZHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODY1Ci0gICAgLTB4MS5jN2I5MGUzMDI0NTY4OGUwOTk4NjBlOGQ0ZmZmNjAxY3AtMywKLSAgICAtMHgxLmNiOTFmM2JiYmExM2RwMAotICB9LAotICB7IC8vIEVudHJ5IDg2NgotICAgIC0weDEuMjM1YjMzMWQ4ZjczMzk4NDFhNTE3MzEyZDBkMzQ3ZmJwLTIsCi0gICAgMHgxLmRiZmJiYzcwMjU0YjZwMAotICB9LAotICB7IC8vIEVudHJ5IDg2NwotICAgIC0weDEuMjM1YjMzMWQ4ZjczMzk4NDFhNTE3MzEyZDBkMzQ3ZmJwLTIsCi0gICAgLTB4MS5kYmZiYmM3MDI1NGI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjgKLSAgICAtMHgxLjYxYTc2MDc3YWVkZjJlNDNhY2E0MThmN2EyZTEzMjRkcC0yLAotICAgIDB4MS5lYzY1ODUyNDkwODJmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjkKLSAgICAtMHgxLjYxYTc2MDc3YWVkZjJlNDNhY2E0MThmN2EyZTEzMjRkcC0yLAotICAgIC0weDEuZWM2NTg1MjQ5MDgyZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODcwCi0gICAgLTB4MS45ZTdmODY1MmI0NzQzZGNjM2MzNTY4YmFmZjhiZjllYnAtMiwKLSAgICAweDEuZmNjZjRkZDhmYmJhOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODcxCi0gICAgLTB4MS45ZTdmODY1MmI0NzQzZGNjM2MzNTY4YmFmZjhiZjllYnAtMiwKLSAgICAtMHgxLmZjY2Y0ZGQ4ZmJiYThwMAotICB9LAotICB7IC8vIEVudHJ5IDg3MgotICAgIC0weDEuZDlhM2EzMzZlZGI2NWVmYTMwZTFhNjY3OWFhMDY0YzJwLTIsCi0gICAgMHgxLjA2OWM4YjQ2YjM3OTFwMQotICB9LAotICB7IC8vIEVudHJ5IDg3MwotICAgIC0weDEuZDlhM2EzMzZlZGI2NWVmYTMwZTFhNjY3OWFhMDY0YzJwLTIsCi0gICAgLTB4MS4wNjljOGI0NmIzNzkxcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzQKLSAgICAtMHgxLjA5NmFjMDJlYzQyYzI0ODgwYTU5NTE3ODhjYjM4M2M4cC0xLAotICAgIDB4MS4wZWQxNmZhMGU5MTRlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzUKLSAgICAtMHgxLjA5NmFjMDJlYzQyYzI0ODgwYTU5NTE3ODhjYjM4M2M4cC0xLAotICAgIC0weDEuMGVkMTZmYTBlOTE0ZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODc2Ci0gICAgLTB4MS4yNGVjNzk5MTcxNjNkZGE2NWFmZDgxMDlmNTljYjQ2NXAtMSwKLSAgICAweDEuMTcwNjUzZmIxZWIwYnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODc3Ci0gICAgLTB4MS4yNGVjNzk5MTcxNjNkZGE2NWFmZDgxMDlmNTljYjQ2NXAtMSwKLSAgICAtMHgxLjE3MDY1M2ZiMWViMGJwMQotICB9LAotICB7IC8vIEVudHJ5IDg3OAotICAgIC0weDEuM2YzYTBlMjhiZWRkMGNmMGM0YmZiZDhjODJhM2JhYWZwLTEsCi0gICAgMHgxLjFmM2IzODU1NTQ0YzhwMQotICB9LAotICB7IC8vIEVudHJ5IDg3OQotICAgIC0weDEuM2YzYTBlMjhiZWRkMGNmMGM0YmZiZDhjODJhM2JhYWZwLTEsCi0gICAgLTB4MS4xZjNiMzg1NTU0NGM4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODAKLSAgICAtMHgxLjU4MzdkMjgxN2NmMmViMDY5MDM1NTUyZGMzYWU4MzRjcC0xLAotICAgIDB4MS4yNzcwMWNhZjg5ZTg1cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODEKLSAgICAtMHgxLjU4MzdkMjgxN2NmMmViMDY5MDM1NTUyZGMzYWU4MzRjcC0xLAotICAgIC0weDEuMjc3MDFjYWY4OWU4NXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODgyCi0gICAgLTB4MS42ZmNiN2M2YjhiOTE5OWNlMmYxN2RkM2VlODZiM2I5YXAtMSwKLSAgICAweDEuMmZhNTAxMDliZjg0MnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODgzCi0gICAgLTB4MS42ZmNiN2M2YjhiOTE5OWNlMmYxN2RkM2VlODZiM2I5YXAtMSwKLSAgICAtMHgxLjJmYTUwMTA5YmY4NDJwMQotICB9LAotICB7IC8vIEVudHJ5IDg4NAotICAgIC0weDEuODVkYzNlYTFiYmNlYWUyZDI5NDQyMWU4YzczNTBmOGNwLTEsCi0gICAgMHgxLjM3ZDllNTYzZjUxZmZwMQotICB9LAotICB7IC8vIEVudHJ5IDg4NQotICAgIC0weDEuODVkYzNlYTFiYmNlYWUyZDI5NDQyMWU4YzczNTBmOGNwLTEsCi0gICAgLTB4MS4zN2Q5ZTU2M2Y1MWZmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODYKLSAgICAtMHgxLjlhNTJlMmUwZmJjYjVmOGEzZjU1YzI3NGY5ZWM3NTRicC0xLAotICAgIDB4MS40MDBlYzliZTJhYmJjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODcKLSAgICAtMHgxLjlhNTJlMmUwZmJjYjVmOGEzZjU1YzI3NGY5ZWM3NTRicC0xLAotICAgIC0weDEuNDAwZWM5YmUyYWJiY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgODg4Ci0gICAgLTB4MS5hZDE5ZTI1MzVhYTk5YjA0OWFjMGI1ODU4YzVkMzgxZnAtMSwKLSAgICAweDEuNDg0M2FlMTg2MDU3OXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODg5Ci0gICAgLTB4MS5hZDE5ZTI1MzVhYTk5YjA0OWFjMGI1ODU4YzVkMzgxZnAtMSwKLSAgICAtMHgxLjQ4NDNhZTE4NjA1NzlwMQotICB9LAotICB7IC8vIEVudHJ5IDg5MAotICAgIC0weDEuYmUxZDdjMzUzNGM0NDEzMmFiMWM0MTMwY2JlOWRmYTBwLTEsCi0gICAgMHgxLjUwNzg5MjcyOTVmMzZwMQotICB9LAotICB7IC8vIEVudHJ5IDg5MQotICAgIC0weDEuYmUxZDdjMzUzNGM0NDEzMmFiMWM0MTMwY2JlOWRmYTBwLTEsCi0gICAgLTB4MS41MDc4OTI3Mjk1ZjM2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTIKLSAgICAtMHgxLmNkNGJjYTljYjVjNzU5ZTRkNmRjODYwMWVjM2Q4NGI2cC0xLAotICAgIDB4MS41OGFkNzZjY2NiOGYzcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTMKLSAgICAtMHgxLmNkNGJjYTljYjVjNzU5ZTRkNmRjODYwMWVjM2Q4NGI2cC0xLAotICAgIC0weDEuNThhZDc2Y2NjYjhmM3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgODk0Ci0gICAgLTB4MS5kYTk0ZDU0ZGQ0YzBjZWRjY2Q3MzY4NDk5NDQyMjc0MHAtMSwKLSAgICAweDEuNjBlMjViMjcwMTJiMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODk1Ci0gICAgLTB4MS5kYTk0ZDU0ZGQ0YzBjZWRjY2Q3MzY4NDk5NDQyMjc0MHAtMSwKLSAgICAtMHgxLjYwZTI1YjI3MDEyYjBwMQotICB9LAotICB7IC8vIEVudHJ5IDg5NgotICAgIC0weDEuZTVlYWEyODZmYmJjYWQxZTRhNjM3MzM5MmU2Nzk2NjlwLTEsCi0gICAgMHgxLjY5MTczZjgxMzZjNmRwMQotICB9LAotICB7IC8vIEVudHJ5IDg5NwotICAgIC0weDEuZTVlYWEyODZmYmJjYWQxZTRhNjM3MzM5MmU2Nzk2NjlwLTEsCi0gICAgLTB4MS42OTE3M2Y4MTM2YzZkcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTgKLSAgICAtMHgxLmVmNDE0NWI0YWVkMDNjNWYxZDM5NzYzYjFlZWU2ZWQ4cC0xLAotICAgIDB4MS43MTRjMjNkYjZjNjJhcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTkKLSAgICAtMHgxLmVmNDE0NWI0YWVkMDNjNWYxZDM5NzYzYjFlZWU2ZWQ4cC0xLAotICAgIC0weDEuNzE0YzIzZGI2YzYyYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTAwCi0gICAgLTB4MS5mNjhlZWJmY2JiNWViYTEyNGQ4Y2M0OGZkMWJlYjA0ZHAtMSwKLSAgICAweDEuNzk4MTA4MzVhMWZlN3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTAxCi0gICAgLTB4MS5mNjhlZWJmY2JiNWViYTEyNGQ4Y2M0OGZkMWJlYjA0ZHAtMSwKLSAgICAtMHgxLjc5ODEwODM1YTFmZTdwMQotICB9LAotICB7IC8vIEVudHJ5IDkwMgotICAgIC0weDEuZmJjYmU2OTNiZDhlZjAwNmY1ZmYwMjIxMGRmZTA2MTlwLTEsCi0gICAgMHgxLjgxYjVlYzhmZDc5YTRwMQotICB9LAotICB7IC8vIEVudHJ5IDkwMwotICAgIC0weDEuZmJjYmU2OTNiZDhlZjAwNmY1ZmYwMjIxMGRmZTA2MTlwLTEsCi0gICAgLTB4MS44MWI1ZWM4ZmQ3OWE0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDQKLSAgICAtMHgxLmZlZjJiMmQyMWNmNmJlMWEyYzdlYTY2NWVmMWY4NzRlcC0xLAotICAgIDB4MS44OWVhZDBlYTBkMzVicDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDUKLSAgICAtMHgxLmZlZjJiMmQyMWNmNmJlMWEyYzdlYTY2NWVmMWY4NzRlcC0xLAotICAgIC0weDEuODllYWQwZWEwZDM1YnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA2Ci0gICAgMHgxLmVmNDE0NWI0YWVjZmY2ZjU4ZWRlY2YyNDk1NTQyOGMxcC0xLAotICAgIC0weDEuODFiNWVjOGZkNzk5ZnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA3Ci0gICAgMHgxLmVmNDE0NWI0YWVjZmY2ZjU4ZWRlY2YyNDk1NTQyOGMxcC0xLAotICAgIDB4MS44MWI1ZWM4ZmQ3OTlmcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDgKLSAgICAweDEuYmUxZDdjMzUzNGMzZjliOWIzNTYxOTI4MDA0OWRlODVwLTEsCi0gICAgLTB4MS43MTRjMjNkYjZjNjI2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDkKLSAgICAweDEuYmUxZDdjMzUzNGMzZjliOWIzNTYxOTI4MDA0OWRlODVwLTEsCi0gICAgMHgxLjcxNGMyM2RiNmM2MjZwMgotICB9LAotICB7IC8vIEVudHJ5IDkxMAotICAgIDB4MS42ZmNiN2M2YjhiOTE4ZDg2ZmM4M2Q2MTJhNjU4N2VkZHAtMSwKLSAgICAtMHgxLjYwZTI1YjI3MDEyYWRwMgotICB9LAotICB7IC8vIEVudHJ5IDkxMQotICAgIDB4MS42ZmNiN2M2YjhiOTE4ZDg2ZmM4M2Q2MTJhNjU4N2VkZHAtMSwKLSAgICAweDEuNjBlMjViMjcwMTJhZHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEyCi0gICAgMHgxLjA5NmFjMDJlYzQyYzgyZTViMjI1MTg1YmQ2Yzc1N2Q1cC0xLAotICAgIC0weDEuNTA3ODkyNzI5NWYzNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEzCi0gICAgMHgxLjA5NmFjMDJlYzQyYzgyZTViMjI1MTg1YmQ2Yzc1N2Q1cC0xLAotICAgIDB4MS41MDc4OTI3Mjk1ZjM0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTQKLSAgICAweDEuMjM1YjMzMWQ4Zjc0ODdjZTJkYjk3ODE5ZmFlNzc3N2NwLTIsCi0gICAgLTB4MS40MDBlYzliZTJhYmJicDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTUKLSAgICAweDEuMjM1YjMzMWQ4Zjc0ODdjZTJkYjk3ODE5ZmFlNzc3N2NwLTIsCi0gICAgMHgxLjQwMGVjOWJlMmFiYmJwMgotICB9LAotICB7IC8vIEVudHJ5IDkxNgotICAgIDB4MS4wNjkxMDdhZTkzMzJjNGExY2QyZGMwMzNiOGQ1MDU5OHAtNSwKLSAgICAtMHgxLjJmYTUwMTA5YmY4NDJwMgotICB9LAotICB7IC8vIEVudHJ5IDkxNwotICAgIDB4MS4wNjkxMDdhZTkzMzJjNGExY2QyZGMwMzNiOGQ1MDU5OHAtNSwKLSAgICAweDEuMmZhNTAxMDliZjg0MnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTE4Ci0gICAgLTB4MS5jN2I5MGUzMDI0NTY5NWJkMWVjMTcwZjQ1ZmVlYjFmZnAtMywKLSAgICAtMHgxLjFmM2IzODU1NTQ0YzlwMgotICB9LAotICB7IC8vIEVudHJ5IDkxOQotICAgIC0weDEuYzdiOTBlMzAyNDU2OTViZDFlYzE3MGY0NWZlZWIxZmZwLTMsCi0gICAgMHgxLjFmM2IzODU1NTQ0YzlwMgotICB9LAotICB7IC8vIEVudHJ5IDkyMAotICAgIC0weDEuZDlhM2EzMzZlZGI2MmMxNTQxYjg1ODRjZDZjMDBmODdwLTIsCi0gICAgLTB4MS4wZWQxNmZhMGU5MTUwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjEKLSAgICAtMHgxLmQ5YTNhMzM2ZWRiNjJjMTU0MWI4NTg0Y2Q2YzAwZjg3cC0yLAotICAgIDB4MS4wZWQxNmZhMGU5MTUwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjIKLSAgICAtMHgxLjU4MzdkMjgxN2NmMjc3MDVjYWM3ODgxZmI1NjlmZmM3cC0xLAotICAgIC0weDEuZmNjZjRkZDhmYmJhZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTIzCi0gICAgLTB4MS41ODM3ZDI4MTdjZjI3NzA1Y2FjNzg4MWZiNTY5ZmZjN3AtMSwKLSAgICAweDEuZmNjZjRkZDhmYmJhZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTI0Ci0gICAgLTB4MS5hZDE5ZTI1MzVhYThmZmI0MDA2NmQ3OGFlZjcxZmFiZHAtMSwKLSAgICAtMHgxLmRiZmJiYzcwMjU0YmNwMQotICB9LAotICB7IC8vIEVudHJ5IDkyNQotICAgIC0weDEuYWQxOWUyNTM1YWE4ZmZiNDAwNjZkNzhhZWY3MWZhYmRwLTEsCi0gICAgMHgxLmRiZmJiYzcwMjU0YmNwMQotICB9LAotICB7IC8vIEVudHJ5IDkyNgotICAgIC0weDEuZTVlYWEyODZmYmJjMmIxMjkyMzgxNjBkZjMwY2U3MDRwLTEsCi0gICAgLTB4MS5iYjI4MmIwNzRlZGNhcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjcKLSAgICAtMHgxLmU1ZWFhMjg2ZmJiYzJiMTI5MjM4MTYwZGYzMGNlNzA0cC0xLAotICAgIDB4MS5iYjI4MmIwNzRlZGNhcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjgKLSAgICAtMHgxLmZlZjJiMmQyMWNmNmI0MGZmM2I1MzBjZThkYzBkOGE3cC0xLAotICAgIC0weDEuOWE1NDk5OWU3ODZkOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTI5Ci0gICAgLTB4MS5mZWYyYjJkMjFjZjZiNDBmZjNiNTMwY2U4ZGMwZDhhN3AtMSwKLSAgICAweDEuOWE1NDk5OWU3ODZkOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTMwCi0gICAgLTB4MS5mNjhlZWJmY2JiNWVhZGQ2NWMyNjFjZDgwMzk5MGFlMXAtMSwKLSAgICAtMHgxLjc5ODEwODM1YTFmZTZwMQotICB9LAotICB7IC8vIEVudHJ5IDkzMQotICAgIC0weDEuZjY4ZWViZmNiYjVlYWRkNjVjMjYxY2Q4MDM5OTBhZTFwLTEsCi0gICAgMHgxLjc5ODEwODM1YTFmZTZwMQotICB9LAotICB7IC8vIEVudHJ5IDkzMgotICAgIC0weDEuY2Q0YmNhOWNiNWM3NzVhOTk3MjlmN2FkOTViN2RjZTNwLTEsCi0gICAgLTB4MS41OGFkNzZjY2NiOGY0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzMKLSAgICAtMHgxLmNkNGJjYTljYjVjNzc1YTk5NzI5ZjdhZDk1YjdkY2UzcC0xLAotICAgIDB4MS41OGFkNzZjY2NiOGY0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzQKLSAgICAtMHgxLjg1ZGMzZWExYmJjZjJhYTJlMjFlYzU4NmQ1NDk3ZTM1cC0xLAotICAgIC0weDEuMzdkOWU1NjNmNTIwMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTM1Ci0gICAgLTB4MS44NWRjM2VhMWJiY2YyYWEyZTIxZWM1ODZkNTQ5N2UzNXAtMSwKLSAgICAweDEuMzdkOWU1NjNmNTIwMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTM2Ci0gICAgLTB4MS4yNGVjNzk5MTcxNjRlNDFhZGRkNGJhY2Q0NDIwZjlmYnAtMSwKLSAgICAtMHgxLjE3MDY1M2ZiMWViMTBwMQotICB9LAotICB7IC8vIEVudHJ5IDkzNwotICAgIC0weDEuMjRlYzc5OTE3MTY0ZTQxYWRkZDRiYWNkNDQyMGY5ZmJwLTEsCi0gICAgMHgxLjE3MDY1M2ZiMWViMTBwMQotICB9LAotICB7IC8vIEVudHJ5IDkzOAotICAgIC0weDEuNjFhNzYwNzdhZWUyM2IxMWYwYzY3M2Y2MzgwMDNiMGFwLTIsCi0gICAgLTB4MS5lYzY1ODUyNDkwODNjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzkKLSAgICAtMHgxLjYxYTc2MDc3YWVlMjNiMTFmMGM2NzNmNjM4MDAzYjBhcC0yLAotICAgIDB4MS5lYzY1ODUyNDkwODNjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDAKLSAgICAtMHgxLjg5NGY3MGJlZmJjMTA0YjcwNmU4NWNmNGMxYzk2YTUycC00LAotICAgIC0weDEuYWFiZTYyNTJlM2E1OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQxCi0gICAgLTB4MS44OTRmNzBiZWZiYzEwNGI3MDZlODVjZjRjMWM5NmE1MnAtNCwKLSAgICAweDEuYWFiZTYyNTJlM2E1OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQyCi0gICAgMHgxLjQ2ZGM0ZjRjZTgzNzNjN2M0NGYxM2I1NzM2M2VkZDNicC0zLAotICAgIC0weDEuNjkxNzNmODEzNmM3NHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQzCi0gICAgMHgxLjQ2ZGM0ZjRjZTgzNzNjN2M0NGYxM2I1NzM2M2VkZDNicC0zLAotICAgIDB4MS42OTE3M2Y4MTM2Yzc0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDQKLSAgICAweDEuOWU3Zjg2NTJiNDcyODllNTNmY2NkNTQ5NTVkYjQ1NTJwLTIsCi0gICAgLTB4MS4yNzcwMWNhZjg5ZTkwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDUKLSAgICAweDEuOWU3Zjg2NTJiNDcyODllNTNmY2NkNTQ5NTVkYjQ1NTJwLTIsCi0gICAgMHgxLjI3NzAxY2FmODllOTBwMAotICB9LAotICB7IC8vIEVudHJ5IDk0NgotICAgIDB4MS4zZjNhMGUyOGJlZGJmYjA2NmI2N2FiZDljMzM4NDA5ZXAtMSwKLSAgICAtMHgxLmNiOTFmM2JiYmExNTdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDcKLSAgICAweDEuM2YzYTBlMjhiZWRiZmIwNjZiNjdhYmQ5YzMzODQwOWVwLTEsCi0gICAgMHgxLmNiOTFmM2JiYmExNTdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDgKLSAgICAweDEuOWE1MmUyZTBmYmNhNGIwMGM3MmRhYTNjZGFjYTI1N2NwLTEsCi0gICAgLTB4MS40ODQzYWUxODYwNThlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQ5Ci0gICAgMHgxLjlhNTJlMmUwZmJjYTRiMDBjNzJkYWEzY2RhY2EyNTdjcC0xLAotICAgIDB4MS40ODQzYWUxODYwNThlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTUwCi0gICAgMHgxLmRhOTRkNTRkZDRiZmY3NTNkOTg4YzE3NTVlMmZmYzA0cC0xLAotICAgIC0weDEuODllYWQwZWEwZDM4YXAtMgotICB9LAotICB7IC8vIEVudHJ5IDk1MQotICAgIDB4MS5kYTk0ZDU0ZGQ0YmZmNzUzZDk4OGMxNzU1ZTJmZmMwNHAtMSwKLSAgICAweDEuODllYWQwZWEwZDM4YXAtMgotICB9LAotICB7IC8vIEVudHJ5IDk1MgotICAgIDB4MS5mYmNiZTY5M2JkOGU5ODQyMzIwN2UzNjU4N2Q5NDJiN3AtMSwKLSAgICAtMHgxLjA2OWM4YjQ2YjM3ZjBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NTMKLSAgICAweDEuZmJjYmU2OTNiZDhlOTg0MjMyMDdlMzY1ODdkOTQyYjdwLTEsCi0gICAgMHgxLjA2OWM4YjQ2YjM3ZjBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NTQKLSAgICAweDEuZmJjYmU2OTNiZDhlZjg2YzE1NjViMzQ1MzAzNmU1NWVwLTEsCi0gICAgMHgxLjA2OWM4YjQ2YjM3MzRwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NTUKLSAgICAweDEuZmJjYmU2OTNiZDhlZjg2YzE1NjViMzQ1MzAzNmU1NWVwLTEsCi0gICAgLTB4MS4wNjljOGI0NmIzNzM0cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgOTU2Ci0gICAgMHgxLmRhOTRkNTRkZDRjMTExODc0MDVhZGE3ZjA0ZTViMTcxcC0xLAotICAgIDB4MS44OWVhZDBlYTBkMzJjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgOTU3Ci0gICAgMHgxLmRhOTRkNTRkZDRjMTExODc0MDVhZGE3ZjA0ZTViMTcxcC0xLAotICAgIC0weDEuODllYWQwZWEwZDMyY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDk1OAotICAgIDB4MS45YTUyZTJlMGZiY2MwY2M4M2I4NDNiYWU1OGM2Y2RmOHAtMSwKLSAgICAweDEuNDg0M2FlMTg2MDU1ZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDk1OQotICAgIDB4MS45YTUyZTJlMGZiY2MwY2M4M2I4NDNiYWU1OGM2Y2RmOHAtMSwKLSAgICAtMHgxLjQ4NDNhZTE4NjA1NWZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjAKLSAgICAweDEuM2YzYTBlMjhiZWRlNDZmNjVjYTViNWMxOWFkOTlkZDdwLTEsCi0gICAgMHgxLmNiOTFmM2JiYmExMjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjEKLSAgICAweDEuM2YzYTBlMjhiZWRlNDZmNjVjYTViNWMxOWFkOTlkZDdwLTEsCi0gICAgLTB4MS5jYjkxZjNiYmJhMTI4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTYyCi0gICAgMHgxLjllN2Y4NjUyYjQ3ODA2NmVlYzU2M2Y4MzUwOTdmMTQ4cC0yLAotICAgIDB4MS4yNzcwMWNhZjg5ZTc4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjMKLSAgICAweDEuOWU3Zjg2NTJiNDc4MDY2ZWVjNTYzZjgzNTA5N2YxNDhwLTIsCi0gICAgLTB4MS4yNzcwMWNhZjg5ZTc4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjQKLSAgICAweDEuNDZkYzRmNGNlODQzMTUxYjlkMTRlNTYxODc5ZTVmZTNwLTMsCi0gICAgMHgxLjY5MTczZjgxMzZjNWNwMAotICB9LAotICB7IC8vIEVudHJ5IDk2NQotICAgIDB4MS40NmRjNGY0Y2U4NDMxNTFiOWQxNGU1NjE4NzllNWZlM3AtMywKLSAgICAtMHgxLjY5MTczZjgxMzZjNWNwMAotICB9LAotICB7IC8vIEVudHJ5IDk2NgotICAgIC0weDEuODk0ZjcwYmVmYmE5MjExYjBkY2FhNGRjYTQ1MDY3MGZwLTQsCi0gICAgMHgxLmFhYmU2MjUyZTNhNDBwMAotICB9LAotICB7IC8vIEVudHJ5IDk2NwotICAgIC0weDEuODk0ZjcwYmVmYmE5MjExYjBkY2FhNGRjYTQ1MDY3MGZwLTQsCi0gICAgLTB4MS5hYWJlNjI1MmUzYTQwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjgKLSAgICAtMHgxLjYxYTc2MDc3YWVkYzk5OTUyNDM4NDIxZjgyMGEyYmVmcC0yLAotICAgIDB4MS5lYzY1ODUyNDkwODI0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjkKLSAgICAtMHgxLjYxYTc2MDc3YWVkYzk5OTUyNDM4NDIxZjgyMGEyYmVmcC0yLAotICAgIC0weDEuZWM2NTg1MjQ5MDgyNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTcwCi0gICAgLTB4MS4yNGVjNzk5MTcxNjI2ZTM2NzA5Y2ZjZjdjNzc1MjMzMnAtMSwKLSAgICAweDEuMTcwNjUzZmIxZWIwNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTcxCi0gICAgLTB4MS4yNGVjNzk5MTcxNjI2ZTM2NzA5Y2ZjZjdjNzc1MjMzMnAtMSwKLSAgICAtMHgxLjE3MDY1M2ZiMWViMDRwMQotICB9LAotICB7IC8vIEVudHJ5IDk3MgotICAgIC0weDEuODVkYzNlYTFiYmNkMzhjYmZlYjQzNzBkNTQwNWVlYmFwLTEsCi0gICAgMHgxLjM3ZDllNTYzZjUxZjZwMQotICB9LAotICB7IC8vIEVudHJ5IDk3MwotICAgIC0weDEuODVkYzNlYTFiYmNkMzhjYmZlYjQzNzBkNTQwNWVlYmFwLTEsCi0gICAgLTB4MS4zN2Q5ZTU2M2Y1MWY2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzQKLSAgICAtMHgxLmNkNGJjYTljYjVjNjI4NzA5Mzg4YTM5ZmM4NDU5MWQxcC0xLAotICAgIDB4MS41OGFkNzZjY2NiOGU4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzUKLSAgICAtMHgxLmNkNGJjYTljYjVjNjI4NzA5Mzg4YTM5ZmM4NDU5MWQxcC0xLAotICAgIC0weDEuNThhZDc2Y2NjYjhlOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTc2Ci0gICAgLTB4MS5mNjhlZWJmY2JiNWUxYjA3MGI1NjQwMzdmNTU3MWEzOXAtMSwKLSAgICAweDEuNzk4MTA4MzVhMWZkYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTc3Ci0gICAgLTB4MS5mNjhlZWJmY2JiNWUxYjA3MGI1NjQwMzdmNTU3MWEzOXAtMSwKLSAgICAtMHgxLjc5ODEwODM1YTFmZGFwMQotICB9LAotICB7IC8vIEVudHJ5IDk3OAotICAgIC0weDEuZmVmMmIyZDIxY2Y2ZTU0NGFiNzc5NWFlZDEwZDlmYTdwLTEsCi0gICAgMHgxLjlhNTQ5OTllNzg2Y2NwMQotICB9LAotICB7IC8vIEVudHJ5IDk3OQotICAgIC0weDEuZmVmMmIyZDIxY2Y2ZTU0NGFiNzc5NWFlZDEwZDlmYTdwLTEsCi0gICAgLTB4MS45YTU0OTk5ZTc4NmNjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODAKLSAgICAtMHgxLmU1ZWFhMjg2ZmJiZDFkMTM1ZTIxNmM0OWE5ZjdlNWRhcC0xLAotICAgIDB4MS5iYjI4MmIwNzRlZGJlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODEKLSAgICAtMHgxLmU1ZWFhMjg2ZmJiZDFkMTM1ZTIxNmM0OWE5ZjdlNWRhcC0xLAotICAgIC0weDEuYmIyODJiMDc0ZWRiZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTgyCi0gICAgLTB4MS5hZDE5ZTI1MzVhYWFhMmFjODcwNTZiNmQ3Nzc2ZTk3YXAtMSwKLSAgICAweDEuZGJmYmJjNzAyNTRiMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTgzCi0gICAgLTB4MS5hZDE5ZTI1MzVhYWFhMmFjODcwNTZiNmQ3Nzc2ZTk3YXAtMSwKLSAgICAtMHgxLmRiZmJiYzcwMjU0YjBwMQotICB9LAotICB7IC8vIEVudHJ5IDk4NAotICAgIC0weDEuNTgzN2QyODE3Y2Y0YWY4ZTVlNTliMTNiNGFhOWI1ZTNwLTEsCi0gICAgMHgxLmZjY2Y0ZGQ4ZmJiYTJwMQotICB9LAotICB7IC8vIEVudHJ5IDk4NQotICAgIC0weDEuNTgzN2QyODE3Y2Y0YWY4ZTVlNTliMTNiNGFhOWI1ZTNwLTEsCi0gICAgLTB4MS5mY2NmNGRkOGZiYmEycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODYKLSAgICAtMHgxLmQ5YTNhMzM2ZWRiYjdkZTY0YTIxODNjYjI3YmU0YjVicC0yLAotICAgIDB4MS4wZWQxNmZhMGU5MTRhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODcKLSAgICAtMHgxLmQ5YTNhMzM2ZWRiYjdkZTY0YTIxODNjYjI3YmU0YjVicC0yLAotICAgIC0weDEuMGVkMTZmYTBlOTE0YXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTg4Ci0gICAgLTB4MS5jN2I5MGUzMDI0NjI0OGI3YTBjMmM4N2EzZGQyNTIyNHAtMywKLSAgICAweDEuMWYzYjM4NTU1NDRjM3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTg5Ci0gICAgLTB4MS5jN2I5MGUzMDI0NjI0OGI3YTBjMmM4N2EzZGQyNTIyNHAtMywKLSAgICAtMHgxLjFmM2IzODU1NTQ0YzNwMgotICB9LAotICB7IC8vIEVudHJ5IDk5MAotICAgIDB4MS4wNjkxMDdhZTkzMDJjYWYyMDY4YjQ4ODQyYWZkZjA1MXAtNSwKLSAgICAweDEuMmZhNTAxMDliZjgzY3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTkxCi0gICAgMHgxLjA2OTEwN2FlOTMwMmNhZjIwNjhiNDg4NDJhZmRmMDUxcC01LAotICAgIC0weDEuMmZhNTAxMDliZjgzY3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTkyCi0gICAgMHgxLjIzNWIzMzFkOGY2ZWM3NGFhM2RlNWFlZDE1ZmEzZjY4cC0yLAotICAgIDB4MS40MDBlYzliZTJhYmI1cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTMKLSAgICAweDEuMjM1YjMzMWQ4ZjZlYzc0YWEzZGU1YWVkMTVmYTNmNjhwLTIsCi0gICAgLTB4MS40MDBlYzliZTJhYmI1cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTQKLSAgICAweDEuMDk2YWMwMmVjNDI5ZjIyNWM5OWI4OWJiNGM5ZTVkM2VwLTEsCi0gICAgMHgxLjUwNzg5MjcyOTVmMmVwMgotICB9LAotICB7IC8vIEVudHJ5IDk5NQotICAgIDB4MS4wOTZhYzAyZWM0MjlmMjI1Yzk5Yjg5YmI0YzllNWQzZXAtMSwKLSAgICAtMHgxLjUwNzg5MjcyOTVmMmVwMgotICB9LAotICB7IC8vIEVudHJ5IDk5NgotICAgIDB4MS42ZmNiN2M2YjhiOGY3NzNlM2I0MjFkZGVkNmZjMWYyNnAtMSwKLSAgICAweDEuNjBlMjViMjcwMTJhN3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTk3Ci0gICAgMHgxLjZmY2I3YzZiOGI4Zjc3M2UzYjQyMWRkZWQ2ZmMxZjI2cC0xLAotICAgIC0weDEuNjBlMjViMjcwMTJhN3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTk4Ci0gICAgMHgxLmJlMWQ3YzM1MzRjMjgwZGFiNDNkY2VkNjcwMzMwYjYzcC0xLAotICAgIDB4MS43MTRjMjNkYjZjNjIwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTkKLSAgICAweDEuYmUxZDdjMzUzNGMyODBkYWI0M2RjZWQ2NzAzMzBiNjNwLTEsCi0gICAgLTB4MS43MTRjMjNkYjZjNjIwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDAwCi0gICAgMHgxLmVmNDE0NWI0YWVjZjM0MjcwOWEzYjE5MzIwZDFiMTk0cC0xLAotICAgIDB4MS44MWI1ZWM4ZmQ3OTk5cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDAxCi0gICAgMHgxLmVmNDE0NWI0YWVjZjM0MjcwOWEzYjE5MzIwZDFiMTk0cC0xLAotICAgIC0weDEuODFiNWVjOGZkNzk5OXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwMgotICAgIDB4MS5mZjBmZDJjOTZhZGZiYWU1NzY5ODFlZTRiMzQ3NjlkZXAtMSwKLSAgICAweDEuZWZmZmZmZmZmZmZmZnAtNQotICB9LAotICB7IC8vIEVudHJ5IDEwMDMKLSAgICAweDEuZmYwZmQyYzk2YWRmYmFlNTc2OTgxZWU0YjM0NzY5ZGVwLTEsCi0gICAgLTB4MS5lZmZmZmZmZmZmZmZmcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAwNAotICAgIDB4MS5mZjBmZDJjOTZhZGZiYWQ1ZjkwNGE3MWIyZDIxMGEyYXAtMSwKLSAgICAweDEuZnAtNQotICB9LAotICB7IC8vIEVudHJ5IDEwMDUKLSAgICAweDEuZmYwZmQyYzk2YWRmYmFkNWY5MDRhNzFiMmQyMTBhMmFwLTEsCi0gICAgLTB4MS5mcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAwNgotICAgIDB4MS5mZjBmZDJjOTZhZGZiYWM2N2I3MTJmNTFhNmZhMmFiM3AtMSwKLSAgICAweDEuZjAwMDAwMDAwMDAwMXAtNQotICB9LAotICB7IC8vIEVudHJ5IDEwMDcKLSAgICAweDEuZmYwZmQyYzk2YWRmYmFjNjdiNzEyZjUxYTZmYTJhYjNwLTEsCi0gICAgLTB4MS5mMDAwMDAwMDAwMDAxcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAwOAotICAgIDB4MS5mYzIxMDA1NTQ2N2ZlNWM4Zjc2ZTc1ZmQ3MDgzODE4Y3AtMSwKLSAgICAweDEuZjdmZmZmZmZmZmZmZnAtNAotICB9LAotICB7IC8vIEVudHJ5IDEwMDkKLSAgICAweDEuZmMyMTAwNTU0NjdmZTVjOGY3NmU3NWZkNzA4MzgxOGNwLTEsCi0gICAgLTB4MS5mN2ZmZmZmZmZmZmZmcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAxMAotICAgIDB4MS5mYzIxMDA1NTQ2N2ZlNThhMjAxOTMzOTliM2JjMGRkMnAtMSwKLSAgICAweDEuZjgwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAxMQotICAgIDB4MS5mYzIxMDA1NTQ2N2ZlNThhMjAxOTMzOTliM2JjMGRkMnAtMSwKLSAgICAtMHgxLmY4MHAtNAotICB9LAotICB7IC8vIEVudHJ5IDEwMTIKLSAgICAweDEuZmMyMTAwNTU0NjdmZTU0YjQ4YzNmMTM1ZjZmMjlkZjdwLTEsCi0gICAgMHgxLmY4MDAwMDAwMDAwMDFwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDEzCi0gICAgMHgxLmZjMjEwMDU1NDY3ZmU1NGI0OGMzZjEzNWY2ZjI5ZGY3cC0xLAotICAgIC0weDEuZjgwMDAwMDAwMDAwMXAtNAotICB9LAotICB7IC8vIEVudHJ5IDEwMTQKLSAgICAweDEuZjk0OTg0YjI1NTJlMTllNzMyOTQxM2I4YzJlOGRjNTFwLTEsCi0gICAgMHgxLjRiZmZmZmZmZmZmZmZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDE1Ci0gICAgMHgxLmY5NDk4NGIyNTUyZTE5ZTczMjk0MTNiOGMyZThkYzUxcC0xLAotICAgIC0weDEuNGJmZmZmZmZmZmZmZnAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwMTYKLSAgICAweDEuZjk0OTg0YjI1NTJlMTk0MWVjNzY2YzZhODJlY2U0YTNwLTEsCi0gICAgMHgxLjRjMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwMTcKLSAgICAweDEuZjk0OTg0YjI1NTJlMTk0MWVjNzY2YzZhODJlY2U0YTNwLTEsCi0gICAgLTB4MS40YzBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDE4Ci0gICAgMHgxLmY5NDk4NGIyNTUyZTE4OWNhNjU4YzUxYzQyZTkwN2NlcC0xLAotICAgIDB4MS40YzAwMDAwMDAwMDAxcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxOQotICAgIDB4MS5mOTQ5ODRiMjU1MmUxODljYTY1OGM1MWM0MmU5MDdjZXAtMSwKLSAgICAtMHgxLjRjMDAwMDAwMDAwMDFwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIwCi0gICAgMHgxLmU5MjFkZDQyZjA5YmE4Njg2MDNlYTM3NmY2ZTJkMDEycC0xLAotICAgIDB4MS4zMzMzMzMzMzMzMzMycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyMQotICAgIDB4MS5lOTIxZGQ0MmYwOWJhODY4NjAzZWEzNzZmNmUyZDAxMnAtMSwKLSAgICAtMHgxLjMzMzMzMzMzMzMzMzJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIyCi0gICAgMHgxLmU5MjFkZDQyZjA5YmE2MGIyNjhiZWMxZmIwODc4YTQycC0xLAotICAgIDB4MS4zMzMzMzMzMzMzMzMzcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyMwotICAgIDB4MS5lOTIxZGQ0MmYwOWJhNjBiMjY4YmVjMWZiMDg3OGE0MnAtMSwKLSAgICAtMHgxLjMzMzMzMzMzMzMzMzNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDI0Ci0gICAgMHgxLmU5MjFkZDQyZjA5YmEzYWRlY2Q5MzRjODZhMGRiMjU0cC0xLAotICAgIDB4MS4zMzMzMzMzMzMzMzM0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyNQotICAgIDB4MS5lOTIxZGQ0MmYwOWJhM2FkZWNkOTM0Yzg2YTBkYjI1NHAtMSwKLSAgICAtMHgxLjMzMzMzMzMzMzMzMzRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDI2Ci0gICAgMHgxLjhmZWVkYjg2YmYwZWYzMTU4ZjhhMWRjYmVmNDlkMTIzcC0xLAotICAgIDB4MS41OTQzMTdhY2M0ZWY4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyNwotICAgIDB4MS44ZmVlZGI4NmJmMGVmMzE1OGY4YTFkY2JlZjQ5ZDEyM3AtMSwKLSAgICAtMHgxLjU5NDMxN2FjYzRlZjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDI4Ci0gICAgMHgxLjhmZWVkYjg2YmYwZWU5MTgxN2E2NGIyOGI3OWU1MTE5cC0xLAotICAgIDB4MS41OTQzMTdhY2M0ZWY5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyOQotICAgIDB4MS44ZmVlZGI4NmJmMGVlOTE4MTdhNjRiMjhiNzllNTExOXAtMSwKLSAgICAtMHgxLjU5NDMxN2FjYzRlZjlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDMwCi0gICAgMHgxLjhmZWVkYjg2YmYwZWRmMWE5ZmMyNzg4NTdmOGVkNTU5cC0xLAotICAgIDB4MS41OTQzMTdhY2M0ZWZhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAzMQotICAgIDB4MS44ZmVlZGI4NmJmMGVkZjFhOWZjMjc4ODU3ZjhlZDU1OXAtMSwKLSAgICAtMHgxLjU5NDMxN2FjYzRlZmFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDMyCi0gICAgMHgxLjZiODk4ZmE5ZWZiNWRkNmY5ZTE3ZTM0NDJkNTliMjQxcC0xLAotICAgIDB4MS44ZmZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAzMwotICAgIDB4MS42Yjg5OGZhOWVmYjVkZDZmOWUxN2UzNDQyZDU5YjI0MXAtMSwKLSAgICAtMHgxLjhmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM0Ci0gICAgMHgxLjZiODk4ZmE5ZWZiNWQyMmI1OGYwZDk5ZTk2MzQ5MzFhcC0xLAotICAgIDB4MS45cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAzNQotICAgIDB4MS42Yjg5OGZhOWVmYjVkMjJiNThmMGQ5OWU5NjM0OTMxYXAtMSwKLSAgICAtMHgxLjlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM2Ci0gICAgMHgxLjZiODk4ZmE5ZWZiNWM2ZTcxM2M5Y2ZmOGZlYjQ5MThmcC0xLAotICAgIDB4MS45MDAwMDAwMDAwMDAxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAzNwotICAgIDB4MS42Yjg5OGZhOWVmYjVjNmU3MTNjOWNmZjhmZWI0OTE4ZnAtMSwKLSAgICAtMHgxLjkwMDAwMDAwMDAwMDFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDEwMzkKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQwCi0gICAgMHgxLnAwLAotICAgIC0wLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQxCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0MgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQzCi0gICAgMHgxLmZmNjIxZTM3OTZkN2RlNGE4YWI3ZDdjZDg0ODhmNDk5cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE3cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0NAotICAgIDB4MS5mZjYyMWUzNzk2ZDdkZTRhOGFiN2Q3Y2Q4NDg4ZjQ5OXAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQ1Ci0gICAgMHgxLmZmNjIxZTM3OTZkN2RlM2RmYjA0ZGY0Njk4N2Y2NDUwcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0NgotICAgIDB4MS5mZjYyMWUzNzk2ZDdkZTNkZmIwNGRmNDY5ODdmNjQ1MHAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQ3Ci0gICAgMHgxLmZmNjIxZTM3OTZkN2RlMzE2YjUxZTZiZmFjNzU1NDJmcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0OAotICAgIDB4MS5mZjYyMWUzNzk2ZDdkZTMxNmI1MWU2YmZhYzc1NTQyZnAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQ5Ci0gICAgMHgxLmZkODhkYTNkMTI1MjVhMjA4ODk4Y2Y1OGRlZDBlZWIzcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE3cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1MAotICAgIDB4MS5mZDg4ZGEzZDEyNTI1YTIwODg5OGNmNThkZWQwZWViM3AtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUxCi0gICAgMHgxLmZkODhkYTNkMTI1MjU5ZWU1OTRiNTcwNTc2N2FiNjQ5cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1MgotICAgIDB4MS5mZDg4ZGEzZDEyNTI1OWVlNTk0YjU3MDU3NjdhYjY0OXAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUzCi0gICAgMHgxLmZkODhkYTNkMTI1MjU5YmMyOWZkZGViMjBlMjI4MDU2cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1NAotICAgIDB4MS5mZDg4ZGEzZDEyNTI1OWJjMjlmZGRlYjIwZTIyODA1NnAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDU1Ci0gICAgMHgxLmY2Mjk3Y2ZmNzVjYjAzYWIxZmNlZDYzMzdlMzVhMjQ1cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE3cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA1NgotICAgIDB4MS5mNjI5N2NmZjc1Y2IwM2FiMWZjZWQ2MzM3ZTM1YTI0NXAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDU3Ci0gICAgMHgxLmY2Mjk3Y2ZmNzVjYjAyZTM1YTBjZjJlNjRkZTYwNjI2cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA1OAotICAgIDB4MS5mNjI5N2NmZjc1Y2IwMmUzNWEwY2YyZTY0ZGU2MDYyNnAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDU5Ci0gICAgMHgxLmY2Mjk3Y2ZmNzVjYjAyMWI5NDRiMGY5OTFkOGU5MTYxcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2MAotICAgIDB4MS5mNjI5N2NmZjc1Y2IwMjFiOTQ0YjBmOTkxZDhlOTE2MXAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYxCi0gICAgMHgxLmQ5MDZiY2YzMjhkNDY2NzJkOWMxYTg2NTg5OGU1OTY2cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE3cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2MgotICAgIDB4MS5kOTA2YmNmMzI4ZDQ2NjcyZDljMWE4NjU4OThlNTk2NnAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYzCi0gICAgMHgxLmQ5MDZiY2YzMjhkNDYzNjMxZDZjZDI5MDVkNGIxM2Y1cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2NAotICAgIDB4MS5kOTA2YmNmMzI4ZDQ2MzYzMWQ2Y2QyOTA1ZDRiMTNmNXAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDY1Ci0gICAgMHgxLmQ5MDZiY2YzMjhkNDYwNTM2MTE3ZmNiYjMwZWEzZTE3cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2NgotICAgIDB4MS5kOTA2YmNmMzI4ZDQ2MDUzNjExN2ZjYmIzMGVhM2UxN3AtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDY3Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2Q3NzdiNjQ2MTM3NmFiNTIzMjQycC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE3cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2OAotICAgIDB4MS42YTA5ZTY2N2YzYmNkNzc3YjY0NjEzNzZhYjUyMzI0MnAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDY5Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2NjMjc2NzEyZDNkOGM1NTAyMzg3cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3MAotICAgIDB4MS42YTA5ZTY2N2YzYmNjYzI3NjcxMmQzZDhjNTUwMjM4N3AtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDcxCi0gICAgMHgxLjZhMDllNjY3ZjNiY2MwZDcxN2RmOTQzYWRlZjM5MjUzcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3MgotICAgIDB4MS42YTA5ZTY2N2YzYmNjMGQ3MTdkZjk0M2FkZWYzOTI1M3AtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDczCi0gICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWMwYjhiNTBicC01MiwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3NAotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDljMGI4YjUwYnAtNTIsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDc1Ci0gICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0NDE5ZmE4cC01NCwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3NgotICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwNDQxOWZhOHAtNTQsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDc3Ci0gICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3ZGJjZmJhMHAtNTMsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwMAotICB9LAotICB7IC8vIEVudHJ5IDEwNzgKLSAgICAtMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzdkYmNmYmEwcC01MywKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMAotICB9LAotICB7IC8vIEVudHJ5IDEwNzkKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5N2Q1YmZmcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE3cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDgwCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTdkNWJmZnAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwMQotICB9LAotICB7IC8vIEVudHJ5IDEwODEKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDgyCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNXAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMQotICB9LAotICB7IC8vIEVudHJ5IDEwODMKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDg0Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGU2ZTU4Y3AtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMQotICB9LAotICB7IC8vIEVudHJ5IDEwODUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTVmNTZmZmVwLTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTdwMgotICB9LAotICB7IC8vIEVudHJ5IDEwODYKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTVmNTZmZmVwLTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDg3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzE3cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDg4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzE3cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4OQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzliOTYzMXAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5MAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzliOTYzMXAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMgotICB9LAotICB7IC8vIEVudHJ5IDEwOTEKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTdkNWJmZjhwLTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTdwMwotICB9LAotICB7IC8vIEVudHJ5IDEwOTIKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTdkNWJmZjhwLTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDkzCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiMjIwYzVlcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDk0Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiMjIwYzVlcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5NQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjNHAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5NgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjNHAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMwotICB9LAotICB7IC8vIEVudHJ5IDEwOTcKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNWY1NmZmZTFwLTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTdwNAotICB9LAotICB7IC8vIEVudHJ5IDEwOTgKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNWY1NmZmZTFwLTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDk5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMTdhcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTAwCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMTdhcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEwMQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3OWI5NjMxM3AtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEwMgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3OWI5NjMxM3AtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNAotICB9LAotICB7IC8vIEVudHJ5IDExMDMKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5N2Q1YmZmODdwLTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTdwNQotICB9LAotICB7IC8vIEVudHJ5IDExMDQKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5N2Q1YmZmODdwLTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTA1Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNWU5cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTA2Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNWU5cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEwNwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRlNmU1OGM0Y3AtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEwOAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRlNmU1OGM0Y3AtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNQotICB9LAotICB7IC8vIEVudHJ5IDExMDkKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZlMWRwLTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTdwNgotICB9LAotICB7IC8vIEVudHJ5IDExMTAKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZlMWRwLTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTExCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWM4ODMxN2E3cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTEyCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWM4ODMxN2E3cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTExMwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5Yjk2MzEzMXAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTExNAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5Yjk2MzEzMXAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNgotICB9LAotICB7IC8vIEVudHJ5IDExMTUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjk3ZDViZmY4NzRwLTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTdwNwotICB9LAotICB7IC8vIEVudHJ5IDExMTYKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjk3ZDViZmY4NzRwLTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTE3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1ZTlkcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTE4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1ZTlkcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTExOQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGU2ZTU4YzRjNnAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEyMAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGU2ZTU4YzRjNnAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNwotICB9LAotICB7IC8vIEVudHJ5IDExMjEKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzkyNmI1OWU2ZDM5OWJkMWI5MDZjcC0xLAotICAgIDB4MS4yZDk3YzdmMzMyMWQxcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTIyCi0gICAgLTB4MS42YTA5ZTY2N2YzYmM5MjZiNTllNmQzOTliZDFiOTA2Y3AtMSwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDFwMQotICB9LAotICB7IC8vIEVudHJ5IDExMjMKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2JmYWM5NmIzZDIxMTVhM2MzZTIxcC0xLAotICAgIDB4MS4yZDk3YzdmMzMyMWQycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTI0Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmNiZmFjOTZiM2QyMTE1YTNjM2UyMXAtMSwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDJwMQotICB9LAotICB7IC8vIEVudHJ5IDExMjUKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2VjZWRkMzgwZDA4OGYxYjRjNDNjcC0xLAotICAgIDB4MS4yZDk3YzdmMzMyMWQzcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTI2Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmNlY2VkZDM4MGQwODhmMWI0YzQzY3AtMSwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDNwMQotICB9LAotICB7IC8vIEVudHJ5IDExMjcKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDA1ZTM3NDNlZDQxN2M0NGZiYTQ2cC0xLAotICAgIDB4MS5mNmE3YTI5NTUzODVkcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTI4Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmQwNWUzNzQzZWQ0MTdjNDRmYmE0NnAtMSwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWRwMQotICB9LAotICB7IC8vIEVudHJ5IDExMjkKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2Q4YTIzNzcxZDVhMDJmZjVlODQzcC0xLAotICAgIDB4MS5mNmE3YTI5NTUzODVlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTMwCi0gICAgLTB4MS42YTA5ZTY2N2YzYmNkOGEyMzc3MWQ1YTAyZmY1ZTg0M3AtMSwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWVwMQotICB9LAotICB7IC8vIEVudHJ5IDExMzEKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2FiNjBmYWE0ZDcyODk1ZjNlZWE1cC0xLAotICAgIDB4MS5mNmE3YTI5NTUzODVmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTMyCi0gICAgLTB4MS42YTA5ZTY2N2YzYmNhYjYwZmFhNGQ3Mjg5NWYzZWVhNXAtMSwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWZwMQotICB9LAotICB7IC8vIEVudHJ5IDExMzMKLSAgICAtMHgxLjM0ZjI3Mjk5M2QxNDE0YTJiMzliZDgzNzRjMWQxNjMxcC01MCwKLSAgICAweDEuMmQ5N2M3ZjMzMjFkMXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEzNAotICAgIC0weDEuMzRmMjcyOTkzZDE0MTRhMmIzOWJkODM3NGMxZDE2MzFwLTUwLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEzNQotICAgIC0weDEuYTc5Mzk0YzllOGEwYTUxNTljZGVjMWJhODYzNzdjOTJwLTUzLAotICAgIDB4MS4yZDk3YzdmMzMyMWQycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTM2Ci0gICAgLTB4MS5hNzkzOTRjOWU4YTBhNTE1OWNkZWMxYmE4NjM3N2M5MnAtNTMsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTM3Ci0gICAgMHgxLjk2MWIxYWNkODVkN2Q2YmE5OGM4NGY5MTViYmNiYzZjcC01MSwKLSAgICAweDEuMmQ5N2M3ZjMzMjFkM3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEzOAotICAgIDB4MS45NjFiMWFjZDg1ZDdkNmJhOThjODRmOTE1YmJjYmM2Y3AtNTEsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQzcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTM5Ci0gICAgMHgxLjZhMDllNjY3ZjNiYzU4YWY0Y2JhZDM1YWFiYjIwMGY0cC0xLAotICAgIDB4MS41ZmRiYmU5YmJhNzc0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTQwCi0gICAgMHgxLjZhMDllNjY3ZjNiYzU4YWY0Y2JhZDM1YWFiYjIwMGY0cC0xLAotICAgIC0weDEuNWZkYmJlOWJiYTc3NHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE0MQotICAgIDB4MS42YTA5ZTY2N2YzYmNiMzMxYzY1NGQwNDllZWJhMzgwZnAtMSwKLSAgICAweDEuNWZkYmJlOWJiYTc3NXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE0MgotICAgIDB4MS42YTA5ZTY2N2YzYmNiMzMxYzY1NGQwNDllZWJhMzgwZnAtMSwKLSAgICAtMHgxLjVmZGJiZTliYmE3NzVwMgotICB9LAotICB7IC8vIEVudHJ5IDExNDMKLSAgICAweDEuNmEwOWU2NjdmM2JkMGRiNDNmZWVjZDM5MWIyMWQwYzRwLTEsCi0gICAgMHgxLjVmZGJiZTliYmE3NzZwMgotICB9LAotICB7IC8vIEVudHJ5IDExNDQKLSAgICAweDEuNmEwOWU2NjdmM2JkMGRiNDNmZWVjZDM5MWIyMWQwYzRwLTEsCi0gICAgLTB4MS41ZmRiYmU5YmJhNzc2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTQ1Ci0gICAgMHgxLjZhMDllNjY3ZjNiZDNmOWY4MTZhZDQ1NmJhMWE1NGE5cC0xLAotICAgIDB4MS5jNDYzYWJlY2NiMmJhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTQ2Ci0gICAgMHgxLjZhMDllNjY3ZjNiZDNmOWY4MTZhZDQ1NmJhMWE1NGE5cC0xLAotICAgIC0weDEuYzQ2M2FiZWNjYjJiYXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE0NwotICAgIDB4MS42YTA5ZTY2N2YzYmNlNTFkMDdkMGQ3Njc5YTJkOGM1M3AtMSwKLSAgICAweDEuYzQ2M2FiZWNjYjJiYnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE0OAotICAgIDB4MS42YTA5ZTY2N2YzYmNlNTFkMDdkMGQ3Njc5YTJkOGM1M3AtMSwKLSAgICAtMHgxLmM0NjNhYmVjY2IyYmJwMgotICB9LAotICB7IC8vIEVudHJ5IDExNDkKLSAgICAweDEuNmEwOWU2NjdmM2JjOGE5YThlMzZkYTc4NjNhMDI1OTdwLTEsCi0gICAgMHgxLmM0NjNhYmVjY2IyYmNwMgotICB9LAotICB7IC8vIEVudHJ5IDExNTAKLSAgICAweDEuNmEwOWU2NjdmM2JjOGE5YThlMzZkYTc4NjNhMDI1OTdwLTEsCi0gICAgLTB4MS5jNDYzYWJlY2NiMmJjcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTUxCi0gICAgMHgxLjU4M2ViZWZmNjVjYzIyNjQ4MGFlNjg1YzJhZDlhZmRhcC01MCwKLSAgICAweDEuZjZhN2EyOTU1Mzg1ZHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE1MgotICAgIDB4MS41ODNlYmVmZjY1Y2MyMjY0ODBhZTY4NWMyYWQ5YWZkYXAtNTAsCi0gICAgLTB4MS5mNmE3YTI5NTUzODVkcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTUzCi0gICAgMHgxLjYwZmFmYmZkOTczMDg5OTIwMmI5YTE3MGM0ZTZhODQ5cC01MiwKLSAgICAweDEuZjZhN2EyOTU1Mzg1ZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE1NAotICAgIDB4MS42MGZhZmJmZDk3MzA4OTkyMDJiOWExNzBjNGU2YTg0OXAtNTIsCi0gICAgLTB4MS5mNmE3YTI5NTUzODVlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTU1Ci0gICAgLTB4MS40ZjgyODIwMTM0NjdiYjM2ZmVhMzJmNDc5YmQ0OGY0YXAtNTEsCi0gICAgMHgxLmY2YTdhMjk1NTM4NWZwMgotICB9LAotICB7IC8vIEVudHJ5IDExNTYKLSAgICAtMHgxLjRmODI4MjAxMzQ2N2JiMzZmZWEzMmY0NzliZDQ4ZjRhcC01MSwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWZwMgotICB9LAotICB7IC8vIEVudHJ5IDExNTcKLSAgICAtMHgxLjZhMDllNjY3ZjNiYjk3MmY4OTI3ZDdiNDZjNzM3NDg1cC0xLAotICAgIDB4MS4xNDc1Y2M5ZWVkZWZmcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTU4Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmI5NzJmODkyN2Q3YjQ2YzczNzQ4NXAtMSwKLSAgICAtMHgxLjE0NzVjYzllZWRlZmZwMwotICB9LAotICB7IC8vIEVudHJ5IDExNTkKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzRjMzQ3YzViZDE5MzNjYTMyNjFmcC0xLAotICAgIDB4MS4xNDc1Y2M5ZWVkZnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2MAotICAgIC0weDEuNmEwOWU2NjdmM2JjNGMzNDdjNWJkMTkzM2NhMzI2MWZwLTEsCi0gICAgLTB4MS4xNDc1Y2M5ZWVkZnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2MQotICAgIC0weDEuNmEwOWU2NjdmM2JkMDEzOTZmOGZjYjcxYjI1MDVlMWZwLTEsCi0gICAgMHgxLjE0NzVjYzllZWRmMDFwMwotICB9LAotICB7IC8vIEVudHJ5IDExNjIKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDAxMzk2ZjhmY2I3MWIyNTA1ZTFmcC0xLAotICAgIC0weDEuMTQ3NWNjOWVlZGYwMXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2MwotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYTJjOWVkYThwLTEsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDFwMwotICB9LAotICB7IC8vIEVudHJ5IDExNjQKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmEyYzllZGE4cC0xLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2NQotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQ0MzI2ZjVwLTEsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDJwMwotICB9LAotICB7IC8vIEVudHJ5IDExNjYKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkNDMyNmY1cC0xLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2NwotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDdiYzYwNDFwLTEsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDNwMwotICB9LAotICB7IC8vIEVudHJ5IDExNjgKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQ3YmM2MDQxcC0xLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkM3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2OQotICAgIC0weDEuNmEwOWU2NjdmM2JlMDExZjQ0ZmRjZmZjMTY3ZjcxNDBwLTEsCi0gICAgMHgxLjQ2YjljMzQ3NzY0YTJwMwotICB9LAotICB7IC8vIEVudHJ5IDExNzAKLSAgICAtMHgxLjZhMDllNjY3ZjNiZTAxMWY0NGZkY2ZmYzE2N2Y3MTQwcC0xLAotICAgIC0weDEuNDZiOWMzNDc3NjRhMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE3MQotICAgIC0weDEuNmEwOWU2NjdmM2JkNGMxYTUxYzlkNjFlMjBjNTIzZjdwLTEsCi0gICAgMHgxLjQ2YjljMzQ3NzY0YTNwMwotICB9LAotICB7IC8vIEVudHJ5IDExNzIKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDRjMWE1MWM5ZDYxZTIwYzUyM2Y3cC0xLAotICAgIC0weDEuNDZiOWMzNDc3NjRhM3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE3MwotICAgIC0weDEuNmEwOWU2NjdmM2JjOTcxNTVlOTVkYzNmZDA4ODVkMTRwLTEsCi0gICAgMHgxLjQ2YjljMzQ3NzY0YTRwMwotICB9LAotICB7IC8vIEVudHJ5IDExNzQKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzk3MTU1ZTk1ZGMzZmQwODg1ZDE0cC0xLAotICAgIC0weDEuNDZiOWMzNDc3NjRhNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE3NQotICAgIC0weDEuM2RjNTg1YjJjNzQyMTgxMzI2ZTA3YzQwNzQ4ODczYmJwLTQ5LAotICAgIDB4MS41ZmRiYmU5YmJhNzc0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTc2Ci0gICAgLTB4MS4zZGM1ODViMmM3NDIxODEzMjZlMDdjNDA3NDg4NzNiYnAtNDksCi0gICAgLTB4MS41ZmRiYmU5YmJhNzc0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTc3Ci0gICAgLTB4MS5lZTJjMmQ5NjNhMTBjMDk5MzcwM2UyMDQ0NjQ2MzMwMXAtNTIsCi0gICAgMHgxLjVmZGJiZTliYmE3NzVwMwotICB9LAotICB7IC8vIEVudHJ5IDExNzgKLSAgICAtMHgxLmVlMmMyZDk2M2ExMGMwOTkzNzAzZTIwNDQ2NDYzMzAxcC01MiwKLSAgICAtMHgxLjVmZGJiZTliYmE3NzVwMwotICB9LAotICB7IC8vIEVudHJ5IDExNzkKLSAgICAweDEuODQ3NGY0OWE3MTdiY2ZkOWIyM2YwNzdlZTRkMDkwY2ZwLTUwLAotICAgIDB4MS41ZmRiYmU5YmJhNzc2cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTgwCi0gICAgMHgxLjg0NzRmNDlhNzE3YmNmZDliMjNmMDc3ZWU0ZDA5MGNmcC01MCwKLSAgICAtMHgxLjVmZGJiZTliYmE3NzZwMwotICB9LAotICB7IC8vIEVudHJ5IDExODEKLSAgICAweDEuNmEwOWU2NjdmM2JiOGFiNGI4YzhkNWVjZjZiOTEwZDZwLTEsCi0gICAgMHgxLjc4ZmRiOWVmZmVhNDVwMwotICB9LAotICB7IC8vIEVudHJ5IDExODIKLSAgICAweDEuNmEwOWU2NjdmM2JiOGFiNGI4YzhkNWVjZjZiOTEwZDZwLTEsCi0gICAgLTB4MS43OGZkYjllZmZlYTQ1cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTgzCi0gICAgMHgxLjZhMDllNjY3ZjNiYzNmYjlhYmZjY2ZjYmNkMjYyYWEwcC0xLAotICAgIDB4MS43OGZkYjllZmZlYTQ2cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTg0Ci0gICAgMHgxLjZhMDllNjY3ZjNiYzNmYjlhYmZjY2ZjYmNkMjYyYWEwcC0xLAotICAgIC0weDEuNzhmZGI5ZWZmZWE0NnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE4NQotICAgIDB4MS42YTA5ZTY2N2YzYmNmNGJlOWYzMGM5YWE0OTEwY2FjZnAtMSwKLSAgICAweDEuNzhmZGI5ZWZmZWE0N3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE4NgotICAgIDB4MS42YTA5ZTY2N2YzYmNmNGJlOWYzMGM5YWE0OTEwY2FjZnAtMSwKLSAgICAtMHgxLjc4ZmRiOWVmZmVhNDdwMwotICB9LAotICB7IC8vIEVudHJ5IDExODcKLSAgICAweDEuNmEwOWU2NjdmM2JlMGQ5YTE1NWNkMWMzNzY3ZWI3YjNwLTEsCi0gICAgMHgxLmFiNDFiMDk4ODZmZThwMwotICB9LAotICB7IC8vIEVudHJ5IDExODgKLSAgICAweDEuNmEwOWU2NjdmM2JlMGQ5YTE1NWNkMWMzNzY3ZWI3YjNwLTEsCi0gICAgLTB4MS5hYjQxYjA5ODg2ZmU4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTg5Ci0gICAgMHgxLjZhMDllNjY3ZjNiZDU4OTUyMjI4ZDdlNTg3MDFkMjk5cC0xLAotICAgIDB4MS5hYjQxYjA5ODg2ZmU5cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTkwCi0gICAgMHgxLjZhMDllNjY3ZjNiZDU4OTUyMjI4ZDdlNTg3MDFkMjk5cC0xLAotICAgIC0weDEuYWI0MWIwOTg4NmZlOXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE5MQotICAgIDB4MS42YTA5ZTY2N2YzYmNhMzkwMmVmNGRlMDczZDAyNzNlNnAtMSwKLSAgICAweDEuYWI0MWIwOTg4NmZlYXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE5MgotICAgIDB4MS42YTA5ZTY2N2YzYmNhMzkwMmVmNGRlMDczZDAyNzNlNnAtMSwKLSAgICAtMHgxLmFiNDFiMDk4ODZmZWFwMwotICB9LAotICB7IC8vIEVudHJ5IDExOTMKLSAgICAweDEuNGY2YmFiZTVkYjllMWVmNDBkNjljNDUyZTEzNTU5MWRwLTQ5LAotICAgIDB4MS5jNDYzYWJlY2NiMmJhcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTk0Ci0gICAgMHgxLjRmNmJhYmU1ZGI5ZTFlZjQwZDY5YzQ1MmUxMzU1OTFkcC00OSwKLSAgICAtMHgxLmM0NjNhYmVjY2IyYmFwMwotICB9LAotICB7IC8vIEVudHJ5IDExOTUKLSAgICAweDEuM2RhZWFmOTc2ZTc4N2JkMDM1YTcxMTRiZTM4N2I1YzNwLTUxLAotICAgIDB4MS5jNDYzYWJlY2NiMmJicDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTk2Ci0gICAgMHgxLjNkYWVhZjk3NmU3ODdiZDAzNWE3MTE0YmUzODdiNWMzcC01MSwKLSAgICAtMHgxLmM0NjNhYmVjY2IyYmJwMwotICB9LAotICB7IC8vIEVudHJ5IDExOTcKLSAgICAtMHgxLjYxMjhhODM0NDhjM2MyMTdlNTJjNzc1YTA2OThkMjZhcC01MCwKLSAgICAweDEuYzQ2M2FiZWNjYjJiY3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE5OAotICAgIC0weDEuNjEyOGE4MzQ0OGMzYzIxN2U1MmM3NzVhMDY5OGQyNmFwLTUwLAotICAgIC0weDEuYzQ2M2FiZWNjYjJiY3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE5OQotICAgIC0weDEuNmEwOWU2NjdmM2JiN2UzOWU4NjlkNDI1ODA5MDhjN2NwLTEsCi0gICAgMHgxLmRkODVhNzQxMGY1OGJwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMDAKLSAgICAtMHgxLjZhMDllNjY3ZjNiYjdlMzllODY5ZDQyNTgwOTA4YzdjcC0xLAotICAgIC0weDEuZGQ4NWE3NDEwZjU4YnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwMQotICAgIC0weDEuNmEwOWU2NjdmM2JjMzMzZWRiOWRjZTA0NWQzYjBlNzVwLTEsCi0gICAgMHgxLmRkODVhNzQxMGY1OGNwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMDIKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzMzM2VkYjlkY2UwNDVkM2IwZTc1cC0xLAotICAgIC0weDEuZGQ4NWE3NDEwZjU4Y3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwMwotICAgIC0weDEuNmEwOWU2NjdmM2JjZTg0M2NlZDFjN2UyZGY2MzE2ZDRwLTEsCi0gICAgMHgxLmRkODVhNzQxMGY1OGRwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMDQKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2U4NDNjZWQxYzdlMmRmNjMxNmQ0cC0xLAotICAgIC0weDEuZGQ4NWE3NDEwZjU4ZHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwNQotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOGM0NWQzZDRwLTEsCi0gICAgMHgxLmY2YTdhMjk1NTM4NWRwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMDYKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhjNDVkM2Q0cC0xLAotICAgIC0weDEuZjZhN2EyOTU1Mzg1ZHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwNwotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjg2NTMzNTNwLTEsCi0gICAgMHgxLmY2YTdhMjk1NTM4NWVwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMDgKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4NjUzMzUzcC0xLAotICAgIC0weDEuZjZhN2EyOTU1Mzg1ZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwOQotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTQ4NDkyZDNwLTEsCi0gICAgMHgxLmY2YTdhMjk1NTM4NWZwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMTAKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU0ODQ5MmQzcC0xLAotICAgIC0weDEuZjZhN2EyOTU1Mzg1ZnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIxMQotICAgIC0weDEuNmEwOWU2NjdmM2JmODQxZWNjMjNjNzQ1OTkwNzZhODFwLTEsCi0gICAgMHgxLjA3ZTRjZWY0Y2JkOTZwNAotICB9LAotICB7IC8vIEVudHJ5IDEyMTIKLSAgICAtMHgxLjZhMDllNjY3ZjNiZjg0MWVjYzIzYzc0NTk5MDc2YTgxcC0xLAotICAgIC0weDEuMDdlNGNlZjRjYmQ5NnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIxMwotICAgIC0weDEuNmEwOWU2NjdmM2JlMWExNGU1YmJkMzhhZDYwZmRkN2JwLTEsCi0gICAgMHgxLjA3ZTRjZWY0Y2JkOTdwNAotICB9LAotICB7IC8vIEVudHJ5IDEyMTQKLSAgICAtMHgxLjZhMDllNjY3ZjNiZTFhMTRlNWJiZDM4YWQ2MGZkZDdicC0xLAotICAgIC0weDEuMDdlNGNlZjRjYmQ5N3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIxNQotICAgIC0weDEuNmEwOWU2NjdmM2JjYjAwYWZmNTNkZmNlYTkwZTZhMGNwLTEsCi0gICAgMHgxLjA3ZTRjZWY0Y2JkOThwNAotICB9LAotICB7IC8vIEVudHJ5IDEyMTYKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2IwMGFmZjUzZGZjZWE5MGU2YTBjcC0xLAotICAgIC0weDEuMDdlNGNlZjRjYmQ5OHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIxNwotICAgIC0weDEuYjA4OGU5MGM3N2ZkMTJlYTc5Zjk4NjMxZTZmMGI3NGJwLTQ4LAotICAgIDB4MS4xNDc1Y2M5ZWVkZWZmcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjE4Ci0gICAgLTB4MS5iMDg4ZTkwYzc3ZmQxMmVhNzlmOTg2MzFlNmYwYjc0YnAtNDgsCi0gICAgLTB4MS4xNDc1Y2M5ZWVkZWZmcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjE5Ci0gICAgLTB4MS42MTExZDIxOGVmZmEyNWQ0ZjNmMzBjNjU0ZDdjMzZhMXAtNDksCi0gICAgMHgxLjE0NzVjYzllZWRmcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjIwCi0gICAgLTB4MS42MTExZDIxOGVmZmEyNWQ0ZjNmMzBjNjU0ZDdjMzZhMXAtNDksCi0gICAgLTB4MS4xNDc1Y2M5ZWVkZnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIyMQotICAgIDB4MS4zZGRjNWJjZTIwMGJiNDU2MTgxOWU3MzUyN2Y1YTZkN3AtNTAsCi0gICAgMHgxLjE0NzVjYzllZWRmMDFwNAotICB9LAotICB7IC8vIEVudHJ5IDEyMjIKLSAgICAweDEuM2RkYzViY2UyMDBiYjQ1NjE4MTllNzM1MjdmNWE2ZDdwLTUwLAotICAgIC0weDEuMTQ3NWNjOWVlZGYwMXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIyMwotICAgIDB4MS42YTA5ZTY2N2YzYmFiY2JhMjRkNmQ4N2VjYzhmODNiNHAtMSwKLSAgICAweDEuMjEwNmNhNDkxMDA2OHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIyNAotICAgIDB4MS42YTA5ZTY2N2YzYmFiY2JhMjRkNmQ4N2VjYzhmODNiNHAtMSwKLSAgICAtMHgxLjIxMDZjYTQ5MTAwNjhwNAotICB9LAotICB7IC8vIEVudHJ5IDEyMjUKLSAgICAweDEuNmEwOWU2NjdmM2JjMjZjNDBiM2VjYzNjZWNlMWQxYTBwLTEsCi0gICAgMHgxLjIxMDZjYTQ5MTAwNjlwNAotICB9LAotICB7IC8vIEVudHJ5IDEyMjYKLSAgICAweDEuNmEwOWU2NjdmM2JjMjZjNDBiM2VjYzNjZWNlMWQxYTBwLTEsCi0gICAgLTB4MS4yMTA2Y2E0OTEwMDY5cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjI3Ci0gICAgMHgxLjZhMDllNjY3ZjNiZDkwY2RmMWE2YmZmOWEzMmEzOTIzcC0xLAotICAgIDB4MS4yMTA2Y2E0OTEwMDZhcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjI4Ci0gICAgMHgxLjZhMDllNjY3ZjNiZDkwY2RmMWE2YmZmOWEzMmEzOTIzcC0xLAotICAgIC0weDEuMjEwNmNhNDkxMDA2YXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIyOQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU4YjI3YjZhMnAtMSwKLSAgICAweDEuMmQ5N2M3ZjMzMjFkMXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIzMAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU4YjI3YjZhMnAtMSwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDFwNAotICB9LAotICB7IC8vIEVudHJ5IDEyMzEKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjUwYzliZDRwLTEsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDJwNAotICB9LAotICB7IC8vIEVudHJ5IDEyMzIKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjUwYzliZDRwLTEsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQycDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjMzCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjVlZjE4MTA3cC0xLAotICAgIDB4MS4yZDk3YzdmMzMyMWQzcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjM0Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjVlZjE4MTA3cC0xLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkM3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIzNQotICAgIDB4MS42YTA5ZTY2N2YzYmY5MDk5OWM4MmM5MGNlYmFmOWYzZnAtMSwKLSAgICAweDEuM2EyOGM1OWQ1NDMzOXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIzNgotICAgIDB4MS42YTA5ZTY2N2YzYmY5MDk5OWM4MmM5MGNlYmFmOWYzZnAtMSwKLSAgICAtMHgxLjNhMjhjNTlkNTQzMzlwNAotICB9LAotICB7IC8vIEVudHJ5IDEyMzcKLSAgICAweDEuNmEwOWU2NjdmM2JlMjY4ZmI2MWFkNTUyMzUzMmUyOThwLTEsCi0gICAgMHgxLjNhMjhjNTlkNTQzM2FwNAotICB9LAotICB7IC8vIEVudHJ5IDEyMzgKLSAgICAweDEuNmEwOWU2NjdmM2JlMjY4ZmI2MWFkNTUyMzUzMmUyOThwLTEsCi0gICAgLTB4MS4zYTI4YzU5ZDU0MzNhcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjM5Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2JjODVjZmIyZTE5NjE0YWMzZjg4cC0xLAotICAgIDB4MS4zYTI4YzU5ZDU0MzNicDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQwCi0gICAgMHgxLjZhMDllNjY3ZjNiY2JjODVjZmIyZTE5NjE0YWMzZjg4cC0xLAotICAgIC0weDEuM2EyOGM1OWQ1NDMzYnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI0MQotICAgIDB4MS5iOTViZmMyNjAyMmIxNjVhZWQzZTJhM2IxMjM4MjQ3OXAtNDgsCi0gICAgMHgxLjQ2YjljMzQ3NzY0YTJwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNDIKLSAgICAweDEuYjk1YmZjMjYwMjJiMTY1YWVkM2UyYTNiMTIzODI0NzlwLTQ4LAotICAgIC0weDEuNDZiOWMzNDc3NjRhMnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI0MwotICAgIDB4MS43MmI3Zjg0YzA0NTYyY2I1ZGE3YzU0NzdiOTU3YWRlYnAtNDksCi0gICAgMHgxLjQ2YjljMzQ3NzY0YTNwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNDQKLSAgICAweDEuNzJiN2Y4NGMwNDU2MmNiNWRhN2M1NDc3Yjk1N2FkZWJwLTQ5LAotICAgIC0weDEuNDZiOWMzNDc3NjRhM3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI0NQotICAgIC0weDEuMWE5MDBmNjdmNzUzYTY5NDRiMDc1NzEwNDhmMWNhZDJwLTUwLAotICAgIDB4MS40NmI5YzM0Nzc2NGE0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQ2Ci0gICAgLTB4MS4xYTkwMGY2N2Y3NTNhNjk0NGIwNzU3MTA0OGYxY2FkMnAtNTAsCi0gICAgLTB4MS40NmI5YzM0Nzc2NGE0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQ3Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmFiMDNmNTQ3N2Q2Yjc0ZjRkNTVkNXAtMSwKLSAgICAweDEuNTM0YWMwZjE5ODYwYnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI0OAotICAgIC0weDEuNmEwOWU2NjdmM2JhYjAzZjU0NzdkNmI3NGY0ZDU1ZDVwLTEsCi0gICAgLTB4MS41MzRhYzBmMTk4NjBicDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQ5Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmMxYTQ5M2FkZmNhNzU3YzFhNzQxZnAtMSwKLSAgICAweDEuNTM0YWMwZjE5ODYwY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI1MAotICAgIC0weDEuNmEwOWU2NjdmM2JjMWE0OTNhZGZjYTc1N2MxYTc0MWZwLTEsCi0gICAgLTB4MS41MzRhYzBmMTk4NjBjcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjUxCi0gICAgLTB4MS42YTA5ZTY2N2YzYmQ4NDUzMjE0N2JlMzIzZWRkYWMwMXAtMSwKLSAgICAweDEuNTM0YWMwZjE5ODYwZHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI1MgotICAgIC0weDEuNmEwOWU2NjdmM2JkODQ1MzIxNDdiZTMyM2VkZGFjMDFwLTEsCi0gICAgLTB4MS41MzRhYzBmMTk4NjBkcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjUzCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU3NThkM2E3Y3AtMSwKLSAgICAweDEuNWZkYmJlOWJiYTc3NHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI1NAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNzU4ZDNhN2NwLTEsCi0gICAgLTB4MS41ZmRiYmU5YmJhNzc0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjU1Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTE4NDVlMXAtMSwKLSAgICAweDEuNWZkYmJlOWJiYTc3NXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI1NgotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjExODQ1ZTFwLTEsCi0gICAgLTB4MS41ZmRiYmU5YmJhNzc1cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjU3Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2Y2EzNTE0N3AtMSwKLSAgICAweDEuNWZkYmJlOWJiYTc3NnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI1OAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNmNhMzUxNDdwLTEsCi0gICAgLTB4MS41ZmRiYmU5YmJhNzc2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjU5Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmY5ZDE0NmNlMWNhZDQzZGU5YjM1MnAtMSwKLSAgICAweDEuNmM2Y2JjNDVkYzhkY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI2MAotICAgIC0weDEuNmEwOWU2NjdmM2JmOWQxNDZjZTFjYWQ0M2RlOWIzNTJwLTEsCi0gICAgLTB4MS42YzZjYmM0NWRjOGRjcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjYxCi0gICAgLTB4MS42YTA5ZTY2N2YzYmUzMzBhODY3OWQ3MTk5M2U3YzcwOXAtMSwKLSAgICAweDEuNmM2Y2JjNDVkYzhkZHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI2MgotICAgIC0weDEuNmEwOWU2NjdmM2JlMzMwYTg2NzlkNzE5OTNlN2M3MDlwLTEsCi0gICAgLTB4MS42YzZjYmM0NWRjOGRkcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjYzCi0gICAgLTB4MS42YTA5ZTY2N2YzYmNjOTAwYTAxMWUzNWQ3ZmRiZjQ1OXAtMSwKLSAgICAweDEuNmM2Y2JjNDVkYzhkZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI2NAotICAgIC0weDEuNmEwOWU2NjdmM2JjYzkwMGEwMTFlMzVkN2ZkYmY0NTlwLTEsCi0gICAgLTB4MS42YzZjYmM0NWRjOGRlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjY1Ci0gICAgLTB4MS5jMjJmMGYzZjhjNTkxOWNiNjA4MmNlNDQzY2Y5NTAyMnAtNDgsCi0gICAgMHgxLjc4ZmRiOWVmZmVhNDVwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNjYKLSAgICAtMHgxLmMyMmYwZjNmOGM1OTE5Y2I2MDgyY2U0NDNjZjk1MDIycC00OCwKLSAgICAtMHgxLjc4ZmRiOWVmZmVhNDVwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNjcKLSAgICAtMHgxLjg0NWUxZTdmMThiMjMzOTZjMTA1OWM4YTI0YzI2MDljcC00OSwKLSAgICAweDEuNzhmZGI5ZWZmZWE0NnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI2OAotICAgIC0weDEuODQ1ZTFlN2YxOGIyMzM5NmMxMDU5YzhhMjRjMjYwOWNwLTQ5LAotICAgIC0weDEuNzhmZGI5ZWZmZWE0NnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI2OQotICAgIDB4MS5lZTg3ODYwMzlkMzczMWE0ZmJlOThkZDZkMzJmZjYyYXAtNTEsCi0gICAgMHgxLjc4ZmRiOWVmZmVhNDdwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNzAKLSAgICAweDEuZWU4Nzg2MDM5ZDM3MzFhNGZiZTk4ZGQ2ZDMyZmY2MmFwLTUxLAotICAgIC0weDEuNzhmZGI5ZWZmZWE0N3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI3MQotICAgIDB4MS42YTA5ZTY2N2YzYmFhM2M0ODQxOGQ0ZWZkMTlkMDc0YXAtMSwKLSAgICAweDEuODU4ZWI3OWEyMGJhZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI3MgotICAgIDB4MS42YTA5ZTY2N2YzYmFhM2M0ODQxOGQ0ZWZkMTlkMDc0YXAtMSwKLSAgICAtMHgxLjg1OGViNzlhMjBiYWVwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNzMKLSAgICAweDEuNmEwOWU2NjdmM2JjMGRjZTZhODBjOGFlMGFlNGY1ZjNwLTEsCi0gICAgMHgxLjg1OGViNzlhMjBiYWZwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNzQKLSAgICAweDEuNmEwOWU2NjdmM2JjMGRjZTZhODBjOGFlMGFlNGY1ZjNwLTEsCi0gICAgLTB4MS44NThlYjc5YTIwYmFmcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjc1Ci0gICAgMHgxLjZhMDllNjY3ZjNiZDc3ZDg1MGU4YmM2YWRhMjJmZTM0cC0xLAotICAgIDB4MS44NThlYjc5YTIwYmIwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjc2Ci0gICAgMHgxLjZhMDllNjY3ZjNiZDc3ZDg1MGU4YmM2YWRhMjJmZTM0cC0xLAotICAgIC0weDEuODU4ZWI3OWEyMGJiMHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI3NwotICAgIC0weDEuMmNjYWY2NDFkNDI2MWVhM2NjZDhkMmExMDJkYzMwNjZwLTMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwNjIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjc4Ci0gICAgLTB4MS4yY2NhZjY0MWQ0MjYxZWEzY2NkOGQyYTEwMmRjMzA2NnAtMywKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNjIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjc5Ci0gICAgMHgxLjgyYWEzNzViM2MzM2U3MDY2MzczMWJhYjRiZWI2ZWQzcC03LAotICAgIDB4MS4wcDYzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI4MAotICAgIDB4MS44MmFhMzc1YjNjMzNlNzA2NjM3MzFiYWI0YmViNmVkM3AtNywKLSAgICAtMHgxLjBwNjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjgxCi0gICAgMHgxLjRjMDYyMmE2ZTM1ZGRlZmQ1ZjJiNzcwMDcxNmE1ODFmcC0yLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI4MgotICAgIDB4MS40YzA2MjJhNmUzNWRkZWZkNWYyYjc3MDA3MTZhNTgxZnAtMiwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjgzCi0gICAgMHgxLjRhYjY1MGI4YzYwNzM0Mzg1Mzc1ZTIyNjAzZmNkYjEwcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI4NAotICAgIDB4MS40YWI2NTBiOGM2MDczNDM4NTM3NWUyMjYwM2ZjZGIxMHAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjg1Ci0gICAgMHgxLjRhYjY1MTFhN2QzOWFkM2NjODhkZWQxZTc3NWNhMTQ3cC0xLAotICAgIDB4MS4wcDI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI4NgotICAgIDB4MS40YWI2NTExYTdkMzlhZDNjYzg4ZGVkMWU3NzVjYTE0N3AtMSwKLSAgICAtMHgxLjBwMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjg3Ci0gICAgMHgxLjRhYjY1MWRkZWI5ZTYxNDM4MzgyZjAyMTY3YWRlNGFmcC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI4OAotICAgIDB4MS40YWI2NTFkZGViOWU2MTQzODM4MmYwMjE2N2FkZTRhZnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjg5Ci0gICAgMHgxLjQwYWQ2N2U3NzdiMWRmMDE5NTE4OWY1MGE4YzI2MzQ1cC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI5MAotICAgIDB4MS40MGFkNjdlNzc3YjFkZjAxOTUxODlmNTBhOGMyNjM0NXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjkxCi0gICAgMHgxLjQwYWQ2N2YzZjBjOWExNDM5NjNjOWM5NmRiY2UzZjhhcC0xLAotICAgIDB4MS4wcDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI5MgotICAgIDB4MS40MGFkNjdmM2YwYzlhMTQzOTYzYzljOTZkYmNlM2Y4YXAtMSwKLSAgICAtMHgxLjBwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjkzCi0gICAgMHgxLjQwYWQ2ODBjZTJmOTI0ZDcxNjc2OWQxMDY0YmM4ZGVmcC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI5NAotICAgIDB4MS40MGFkNjgwY2UyZjkyNGQ3MTY3NjlkMTA2NGJjOGRlZnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjk1Ci0gICAgLTB4MS40ZWFhNjA2ZGIyNGMzY2I1ZTE1ZDdiMTlkNWVlNzNhMXAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI5NgotICAgIC0weDEuNGVhYTYwNmRiMjRjM2NiNWUxNWQ3YjE5ZDVlZTczYTFwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjk3Ci0gICAgLTB4MS40ZWFhNjA2ZGIyNGMwYzQ2NmRhMWMyZGM3YmFhMmIzMnAtMSwKLSAgICAweDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI5OAotICAgIC0weDEuNGVhYTYwNmRiMjRjMGM0NjZkYTFjMmRjN2JhYTJiMzJwLTEsCi0gICAgLTB4MS4wcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjk5Ci0gICAgLTB4MS40ZWFhNjA2ZGIyNGJhYjY3ODYyYTUyNjFiNzcxOWRjZnAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMwMAotICAgIC0weDEuNGVhYTYwNmRiMjRiYWI2Nzg2MmE1MjYxYjc3MTlkY2ZwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzAxCi0gICAgLTB4MS5hYTIyNjU3NTM3MjAxMDExNDUyMzA5NTJlNjFjNmYyY3AtMiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMwMgotICAgIC0weDEuYWEyMjY1NzUzNzIwMTAxMTQ1MjMwOTUyZTYxYzZmMmNwLTIsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzAzCi0gICAgLTB4MS5hYTIyNjU3NTM3MjA0YTQzMzJmOGFjYmI3MmIwZDc2OHAtMiwKLSAgICAweDEuMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMwNAotICAgIC0weDEuYWEyMjY1NzUzNzIwNGE0MzMyZjhhY2JiNzJiMGQ3NjhwLTIsCi0gICAgLTB4MS4wcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzA1Ci0gICAgLTB4MS5hYTIyNjU3NTM3MjBiZWE3MGVhM2YzOGM4NmRiNDBhZnAtMiwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMwNgotICAgIC0weDEuYWEyMjY1NzUzNzIwYmVhNzBlYTNmMzhjODZkYjQwYWZwLTIsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzA3Ci0gICAgMHgxLjE0YTI4MGZiNTA2OGM2OWEyZWQ0NWZiNTQ3YzJmMjcxcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMwOAotICAgIDB4MS4xNGEyODBmYjUwNjhjNjlhMmVkNDVmYjU0N2MyZjI3MXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzA5Ci0gICAgMHgxLjE0YTI4MGZiNTA2OGI5MjM4NDhjZGIyZWQwZTM3YTUzcC0xLAotICAgIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzEwCi0gICAgMHgxLjE0YTI4MGZiNTA2OGI5MjM4NDhjZGIyZWQwZTM3YTUzcC0xLAotICAgIC0weDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMxMQotICAgIDB4MS4xNGEyODBmYjUwNjg5ZTM2MmZmZGQyMjFlMjU1MTAzNXAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMxMgotICAgIDB4MS4xNGEyODBmYjUwNjg5ZTM2MmZmZGQyMjFlMjU1MTAzNXAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAotICB9LAotICB7IC8vIEVudHJ5IDEzMTMKLSAgICAweDEuYzE1MjgwNjViN2Q0ZmRiMTU4YzljNGE2YjNlNGI3NDBwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzE0Ci0gICAgMHgxLmMxNTI4MDY1YjdkNGZkYjE1OGM5YzRhNmIzZTRiNzQwcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMgotICB9LAotICB7IC8vIEVudHJ5IDEzMTUKLSAgICAweDEuYzE1MjgwNjViN2Q0ZjlkYjdiYmIzYjQ1ZjVmNWIzMGFwLTEsCi0gICAgMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzE2Ci0gICAgMHgxLmMxNTI4MDY1YjdkNGY5ZGI3YmJiM2I0NWY1ZjViMzBhcC0xLAotICAgIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzMTcKLSAgICAweDEuYzE1MjgwNjViN2Q0ZjIyZmMxOWUyODg0NzljMzZiMjdwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzE4Ci0gICAgMHgxLmMxNTI4MDY1YjdkNGYyMmZjMTllMjg4NDc5YzM2YjI3cC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzMTkKLSAgICAweDEuZjAxNTQ5ZjdkZWVhMTg0YzVmMWQyMTBiNmFkYmU1NmNwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzIwCi0gICAgMHgxLmYwMTU0OWY3ZGVlYTE4NGM1ZjFkMjEwYjZhZGJlNTZjcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMwotICB9LAotICB7IC8vIEVudHJ5IDEzMjEKLSAgICAweDEuZjAxNTQ5ZjdkZWVhMTc0ZjA3YTY3OTcyYmYyOWYxNDhwLTEsCi0gICAgMHgxLjBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzIyCi0gICAgMHgxLmYwMTU0OWY3ZGVlYTE3NGYwN2E2Nzk3MmJmMjlmMTQ4cC0xLAotICAgIC0weDEuMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDEzMjMKLSAgICAweDEuZjAxNTQ5ZjdkZWVhMTU1NDU4YjkyYTQxNjdhZWM3ZmZwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzI0Ci0gICAgMHgxLmYwMTU0OWY3ZGVlYTE1NTQ1OGI5MmE0MTY3YWVjN2ZmcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMgotICB9LAotICB7IC8vIEVudHJ5IDEzMjUKLSAgICAweDEuZmMwMTU1MjdkNWJkMzcxYTEyMzIwMjQ5Y2E0ZGFmZDdwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzI2Ci0gICAgMHgxLmZjMDE1NTI3ZDViZDM3MWExMjMyMDI0OWNhNGRhZmQ3cC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNAotICB9LAotICB7IC8vIEVudHJ5IDEzMjcKLSAgICAweDEuZmMwMTU1MjdkNWJkMzZkYTNjZDQyNTNiZWRlMzE5Y2FwLTEsCi0gICAgMHgxLjBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzI4Ci0gICAgMHgxLmZjMDE1NTI3ZDViZDM2ZGEzY2Q0MjUzYmVkZTMxOWNhcC0xLAotICAgIC0weDEuMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDEzMjkKLSAgICAweDEuZmMwMTU1MjdkNWJkMzY1YTkyMTg2YjIwMzUwN2Y5YWRwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzMwCi0gICAgMHgxLmZjMDE1NTI3ZDViZDM2NWE5MjE4NmIyMDM1MDdmOWFkcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMwotICB9LAotICB7IC8vIEVudHJ5IDEzMzEKLSAgICAweDEuZmYwMDE1NTQ5ZjRkMzRkYTBiNzQ1ZGM3NDMzMTQ1ZWZwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzMyCi0gICAgMHgxLmZmMDAxNTU0OWY0ZDM0ZGEwYjc0NWRjNzQzMzE0NWVmcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNQotICB9LAotICB7IC8vIEVudHJ5IDEzMzMKLSAgICAweDEuZmYwMDE1NTQ5ZjRkMzRjYTBlMWVlNjUwOWJjNDJiNzFwLTEsCi0gICAgMHgxLjBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzM0Ci0gICAgMHgxLmZmMDAxNTU0OWY0ZDM0Y2EwZTFlZTY1MDliYzQyYjcxcC0xLAotICAgIC0weDEuMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDEzMzUKLSAgICAweDEuZmYwMDE1NTQ5ZjRkMzRhYTEzNzNmNzYzNGNlODc3MzdwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzM2Ci0gICAgMHgxLmZmMDAxNTU0OWY0ZDM0YWExMzczZjc2MzRjZTg3NzM3cC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNAotICB9LAotICB7IC8vIEVudHJ5IDEzMzcKLSAgICAweDEuZmZjMDAxNTU1MjdkMmIxNmFlYjA5ZmI3MDYzNmExMGFwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzM4Ci0gICAgMHgxLmZmYzAwMTU1NTI3ZDJiMTZhZWIwOWZiNzA2MzZhMTBhcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNgotICB9LAotICB7IC8vIEVudHJ5IDEzMzkKLSAgICAweDEuZmZjMDAxNTU1MjdkMmIxMmFlZGI0OWQ5MjkyOGRmNzJwLTEsCi0gICAgMHgxLjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzQwCi0gICAgMHgxLmZmYzAwMTU1NTI3ZDJiMTJhZWRiNDlkOTI5MjhkZjcycC0xLAotICAgIC0weDEuMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDEzNDEKLSAgICAweDEuZmZjMDAxNTU1MjdkMmIwYWFmMzA5ZTFkNmYwY2ZjNGVwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzQyCi0gICAgMHgxLmZmYzAwMTU1NTI3ZDJiMGFhZjMwOWUxZDZmMGNmYzRlcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNQotICB9LAotICB7IC8vIEVudHJ5IDEzNDMKLSAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMzhhMjU2M2VmMzQ0YzNmZjRwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzQ0Ci0gICAgMHgxLmZmZjAwMDE1NTU0OWY0YTM4YTI1NjNlZjM0NGMzZmY0cC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNwotICB9LAotICB7IC8vIEVudHJ5IDEzNDUKLSAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMjhhMjgwZTk3YmNkNTljOGFwLTEsCi0gICAgMHgxLjBwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzQ2Ci0gICAgMHgxLmZmZjAwMDE1NTU0OWY0YTI4YTI4MGU5N2JjZDU5YzhhcC0xLAotICAgIC0weDEuMHAtNgotICB9LAotICB7IC8vIEVudHJ5IDEzNDcKLSAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMDhhMmQ2M2U4Y2RlODNkYjVwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzQ4Ci0gICAgMHgxLmZmZjAwMDE1NTU0OWY0YTA4YTJkNjNlOGNkZTgzZGI1cC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNgotICB9LAotICB7IC8vIEVudHJ5IDEzNDkKLSAgICAweDEuZmZmZmZmZjAwMDAwMDAxNTU1NTY1NTQ5ZjQ5YzlmNGRwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM1MAotICAgIDB4MS5mZmZmZmZmMDAwMDAwMDE1NTU1NjU1NDlmNDljOWY0ZHAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM1MQotICAgIDB4MS5mZmZmZmZmMDAwMDAwMDE1NTU1NTU1NDlmNDlmNDlmN3AtMSwKLSAgICAweDEuMHAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzUyCi0gICAgMHgxLmZmZmZmZmYwMDAwMDAwMTU1NTU1NTU0OWY0OWY0OWY3cC0xLAotICAgIC0weDEuMHAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzUzCi0gICAgMHgxLmZmZmZmZmYwMDAwMDAwMTU1NTUzNTU0OWY0YTQ5ZjRkcC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xNAotICB9LAotICB7IC8vIEVudHJ5IDEzNTQKLSAgICAweDEuZmZmZmZmZjAwMDAwMDAxNTU1NTM1NTQ5ZjRhNDlmNGRwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xNAotICB9LAotICB7IC8vIEVudHJ5IDEzNTUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmMwMDAwMDAwMDAwMDA0MTU1NTVwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM1NgotICAgIDB4MS5mZmZmZmZmZmZmZmZmYzAwMDAwMDAwMDAwMDQxNTU1NXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTI4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM1NwotICAgIDB4MS5mZmZmZmZmZmZmZmZmYzAwMDAwMDAwMDAwMDAxNTU1NXAtMSwKLSAgICAweDEuMHAtMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzU4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZjMDAwMDAwMDAwMDAwMDE1NTU1cC0xLAotICAgIC0weDEuMHAtMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzU5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZiZmZmZmZmZmZmZmZmODE1NTU1cC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yNwotICB9LAotICB7IC8vIEVudHJ5IDEzNjAKLSAgICAweDEuZmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmY4MTU1NTVwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yNwotICB9LAotICB7IC8vIEVudHJ5IDEzNjEKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMTAwMTVwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM2MgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAxMDAxNXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM2MwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwMDAxNXAtMSwKLSAgICAweDEuMHAtMzAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzY0Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDAwMDE1cC0xLAotICAgIC0weDEuMHAtMzAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzY1Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmUwMDE1cC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zMAotICB9LAotICB7IC8vIEVudHJ5IDEzNjYKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZTAwMTVwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zMAotICB9LAotICB7IC8vIEVudHJ5IDEzNjcKLSAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM2OAotICAgIC0weDEuZmZmZTYyZWNmYWI3NTNjMDcxYjI2ODBlMWUyNmJiY2VwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDEzNjkKLSAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzcwCi0gICAgLTB4MS5mZmZlNjJlY2ZhYjc1M2MwNzFiMjY4MGUxZTI2YmJjZXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDEzNzEKLSAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzcyCi0gICAgLTB4MS5mZmZlNjJlY2ZhYjc1M2MwNzFiMjY4MGUxZTI2YmJjZXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDEzNzMKLSAgICAweDEuN2ZmZGZiNGM1MzA4Zjc3N2NmNzc0YzczM2IyNTY2OTVwLTIsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDEzNzQKLSAgICAweDEuN2ZmZGZiNGM1MzA4Zjc3N2NmNzc0YzczM2IyNTY2OTVwLTIsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzc1Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNXAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM3NgotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiMjIwYzVwLTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzc3Ci0gICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0NDE5ZmE4cC01NCwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM3OAotICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwNDQxOWZhOHAtNTQsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzc5Ci0gICAgMHgxLjE0YTI4MGZiNTA2ODllMzYyZmZkZDIyMWUyNTUxMDM1cC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzgwCi0gICAgMHgxLjE0YTI4MGZiNTA2ODllMzYyZmZkZDIyMWUyNTUxMDM1cC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM4MQotICAgIDB4MS4xNGEyODBmYjUwNjhiOTIzODQ4Y2RiMmVkMGUzN2E1M3AtMSwKLSAgICAweDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM4MgotICAgIDB4MS4xNGEyODBmYjUwNjhiOTIzODQ4Y2RiMmVkMGUzN2E1M3AtMSwKLSAgICAtMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDEzODMKLSAgICAweDEuMTRhMjgwZmI1MDY4YzY5YTJlZDQ1ZmI1NDdjMmYyNzFwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzg0Ci0gICAgMHgxLjE0YTI4MGZiNTA2OGM2OWEyZWQ0NWZiNTQ3YzJmMjcxcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzODUKLSAgICAweDEuNmEwOWU2NjdmM2JjY2MyNzY3MTJkM2Q4YzU1MDIzODdwLTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzg2Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2NjMjc2NzEyZDNkOGM1NTAyMzg3cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzODcKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzg4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDEzODkKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLjBwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzkwCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDEzOTEKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzkyCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDEzOTMKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzk0Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDEzOTUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLjBwLTEwNzMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzk2Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMHAtMTA3MwotICB9LAotICB7IC8vIEVudHJ5IDEzOTcKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzk4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDEzOTkKLSAgICAweDEucDAsCi0gICAgMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQwMAotICAgIDB4MS5wMCwKLSAgICAtMC4wCi0gIH0sCi19OwotI2VuZGlmIC8vIF9fQklPTklDX18KLQotVEVTVChtYXRoX2NvcywgY29zX2ludGVsKSB7Ci0jaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemVvZihnX2Nvc19pbnRlbF9kYXRhKS9zaXplb2YoY29zX2ludGVsX2RhdGFfdCk7IGkrKykgewotICAgIEVYUEVDVF9ET1VCTEVfRVEoZ19jb3NfaW50ZWxfZGF0YVtpXS5leHBlY3RlZCwgY29zKGdfY29zX2ludGVsX2RhdGFbaV0uY2FsbF9kYXRhKSkgPDwgIkZhaWxlZCBvbiBlbGVtZW50ICIgPDwgaTsKLSAgfQotI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLiI7Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwotfQpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9jb3NmX3Rlc3QuY3BwIGIvdGVzdHMvbWF0aF9jb3NmX3Rlc3QuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlYTk1ZmYzLi4wMDAwMDAwCi0tLSBhL3Rlc3RzL21hdGhfY29zZl90ZXN0LmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDQzNTUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKgotICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7Ci0gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCi0gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKLSAqCi0gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAotICoKLSAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKLSAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCi0gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KLSAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKLSAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICovCi0KLSNpbmNsdWRlIDxtYXRoLmg+Ci0KLSNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgotCi0jaWYgZGVmaW5lZChfX0JJT05JQ19fKQotdHlwZWRlZiBzdHJ1Y3QgewotICBmbG9hdCBleHBlY3RlZDsKLSAgZmxvYXQgY2FsbF9kYXRhOwotfSBjb3NmX2ludGVsX2RhdGFfdDsKLQotc3RhdGljIGNvc2ZfaW50ZWxfZGF0YV90IGdfY29zZl9pbnRlbF9kYXRhW10gPSB7Ci0gIHsgLy8gRW50cnkgMAotICAgIDB4MS5iYzdiNjZmZmI3Njg5ZDY0NmRkMWFmODNlOTY2MWQyZHAtMSwKLSAgICAtMHgxLjA5ZWJhY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDEKLSAgICAweDEuYmM3YjY2ZmZiNzY4OWQ2NDZkZDFhZjgzZTk2NjFkMmRwLTEsCi0gICAgMHgxLjA5ZWJhY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDIKLSAgICAweDEuZGVlOGQwZmZmY2Q5OTdjZTVjZmJhYjBhNWEzMzZjMTRwLTUsCi0gICAgLTB4MS4xNTY1NjRwNAotICB9LAotICB7IC8vIEVudHJ5IDMKLSAgICAweDEuZGVlOGQwZmZmY2Q5OTdjZTVjZmJhYjBhNWEzMzZjMTRwLTUsCi0gICAgMHgxLjE1NjU2NHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNAotICAgIC0weDEuYzExYmIyZjA1NjU1MmNhNGNkYjZjNWEwY2Y3MTUwOWRwLTgsCi0gICAgLTB4MS40MDZhNDBwNgotICB9LAotICB7IC8vIEVudHJ5IDUKLSAgICAtMHgxLmMxMWJiMmYwNTY1NTJjYTRjZGI2YzVhMGNmNzE1MDlkcC04LAotICAgIDB4MS40MDZhNDBwNgotICB9LAotICB7IC8vIEVudHJ5IDYKLSAgICAweDEuZmY4MzZjZmY5NzA3N2JmNDg5YWFkYzVmMzQ5YTlmYjlwLTEsCi0gICAgLTB4MS42NTMwNzhwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3Ci0gICAgMHgxLmZmODM2Y2ZmOTcwNzdiZjQ4OWFhZGM1ZjM0OWE5ZmI5cC0xLAotICAgIDB4MS42NTMwNzhwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA4Ci0gICAgMHgxLmIyOWNkNGY5ZGEyOTY0ZThjNmJiNTY5MzM4N2QzZjNicC01LAotICAgIC0weDEuNmMwMDA4cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA5Ci0gICAgMHgxLmIyOWNkNGY5ZGEyOTY0ZThjNmJiNTY5MzM4N2QzZjNicC01LAotICAgIDB4MS42YzAwMDhwNQotICB9LAotICB7IC8vIEVudHJ5IDEwCi0gICAgMHgxLmRmNDBkM2Y2NTBmNmM5NDM5MGEzY2E1ZDhkOWI0OGMxcC0xLAotICAgIC0weDEuNzAzODI0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEKLSAgICAweDEuZGY0MGQzZjY1MGY2Yzk0MzkwYTNjYTVkOGQ5YjQ4YzFwLTEsCi0gICAgMHgxLjcwMzgyNHAtMgotICB9LAotICB7IC8vIEVudHJ5IDEyCi0gICAgMHgxLmY3NjMxNmY1NDFlMTBlZjE1ZDU3YzVhMjM3NzUzMjljcC0xLAotICAgIC0weDEuNzgyZTJlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMKLSAgICAweDEuZjc2MzE2ZjU0MWUxMGVmMTVkNTdjNWEyMzc3NTMyOWNwLTEsCi0gICAgMHgxLjc4MmUyZXAtMwotICB9LAotICB7IC8vIEVudHJ5IDE0Ci0gICAgMHgxLmNmYWIwZWMyZmM5NTM4Mjk4NmZhNTExNjQ4YmQ0ZTZmcC0yNCwKLSAgICAtMHgxLjhlMzI2NnA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTUKLSAgICAweDEuY2ZhYjBlYzJmYzk1MzgyOTg2ZmE1MTE2NDhiZDRlNmZwLTI0LAotICAgIDB4MS44ZTMyNjZwOQotICB9LAotICB7IC8vIEVudHJ5IDE2Ci0gICAgMHgxLjkyZTY2YjU5MjBhODVkNjA4M2U5Y2M4NTU2OGNlYWEzcC0yMSwKLSAgICAtMHgxLmM2YWMwMnAxNAotICB9LAotICB7IC8vIEVudHJ5IDE3Ci0gICAgMHgxLjkyZTY2YjU5MjBhODVkNjA4M2U5Y2M4NTU2OGNlYWEzcC0yMSwKLSAgICAweDEuYzZhYzAycDE0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTgKLSAgICAweDEuZDFjZWI0ZmZmZjZlZDA1YjVlZjVmYzYxODIzMTIxNGFwLTIsCi0gICAgLTB4MS5lNTEzZmNwNAotICB9LAotICB7IC8vIEVudHJ5IDE5Ci0gICAgMHgxLmQxY2ViNGZmZmY2ZWQwNWI1ZWY1ZmM2MTgyMzEyMTRhcC0yLAotICAgIDB4MS5lNTEzZmNwNAotICB9LAotICB7IC8vIEVudHJ5IDIwCi0gICAgMHgxLmMyN2UwNDlkZmVhYjM4ZTFiOGVhNmEwOTYzMTgyOWZlcC0xLAotICAgIC0weDEuZmIxOTA0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEKLSAgICAweDEuYzI3ZTA0OWRmZWFiMzhlMWI4ZWE2YTA5NjMxODI5ZmVwLTEsCi0gICAgMHgxLmZiMTkwNHAtMgotICB9LAotICB7IC8vIEVudHJ5IDIyCi0gICAgMHgxLmI0YmYyYzc5YmRmY2RhYTUzZWQ2YzAxM2Y2NWUwOTYzcC0xLAotICAgIC0weDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDIzCi0gICAgMHgxLmI0YmYyYzc5YmRmY2RhYTUzZWQ2YzAxM2Y2NWUwOTYzcC0xLAotICAgIDB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQKLSAgICAweDEuZmZmZmZmMDAwMDAwMTU1NTU1NTQ5ZjQ5ZjRhMjhhMjhwLTEsCi0gICAgMHgxLnAtMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNQotICAgIDB4MS5mZmZmZmYwMDAwMDAxNTU1NTU1NDlmNDlmNGEyOGEyOHAtMSwKLSAgICAtMHgxLnAtMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNgotICAgIDB4MS5mZmZmZmZmZmZmYzAwMDAwMDAwMDAxNTU1NTU1NTU1NXAtMSwKLSAgICAweDEucC0yMQotICB9LAotICB7IC8vIEVudHJ5IDI3Ci0gICAgMHgxLmZmZmZmZmZmZmZjMDAwMDAwMDAwMDE1NTU1NTU1NTU1cC0xLAotICAgIC0weDEucC0yMQotICB9LAotICB7IC8vIEVudHJ5IDI4Ci0gICAgMHgxLmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAxNTU1NTU1NTU1cC0xLAotICAgIDB4MS5wLTIyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkKLSAgICAweDEuZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDE1NTU1NTU1NTVwLTEsCi0gICAgLTB4MS5wLTIyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAKLSAgICAweDEuZmZmZmZlZmZmZmZjMTU1NTUxZmY0OWY2OTZjNGFlY2FwLTEsCi0gICAgMHgxLjAwMDAwMnAtMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMQotICAgIDB4MS5mZmZmZmVmZmZmZmMxNTU1NTFmZjQ5ZjY5NmM0YWVjYXAtMSwKLSAgICAtMHgxLjAwMDAwMnAtMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMgotICAgIDB4MS44ODJkNjA2YmEwNzUwNWE3YTA5YWU3NGQ3MTNmOTc4OHAtMSwKLSAgICAweDEuMDAwMDAycDUxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMKLSAgICAweDEuODgyZDYwNmJhMDc1MDVhN2EwOWFlNzRkNzEzZjk3ODhwLTEsCi0gICAgLTB4MS4wMDAwMDJwNTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNAotICAgIDB4MS5mYzAxNTRmN2Y1YjY0MjJmNzc5NGJmMTU2ZWU5OGI3ZXAtMSwKLSAgICAweDEuMDAwMDA2cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUKLSAgICAweDEuZmMwMTU0ZjdmNWI2NDIyZjc3OTRiZjE1NmVlOThiN2VwLTEsCi0gICAgLTB4MS4wMDAwMDZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNgotICAgIDB4MS4zNGU5NzZlZjY3ZDYwYTNkZTgxNGFkM2QwMjAzYmEyMXAtMTAsCi0gICAgMHgxLjAwMDAwNnAxMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNwotICAgIDB4MS4zNGU5NzZlZjY3ZDYwYTNkZTgxNGFkM2QwMjAzYmEyMXAtMTAsCi0gICAgLTB4MS4wMDAwMDZwMTIxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgKLSAgICAtMHgxLmZmZmZhMmNmNTkzOThkYzYxODA4MDFlOWVhMzEyMGM4cC0xLAotICAgIDB4MS4wMDAwMDZwMTIyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkKLSAgICAtMHgxLmZmZmZhMmNmNTkzOThkYzYxODA4MDFlOWVhMzEyMGM4cC0xLAotICAgIC0weDEuMDAwMDA2cDEyMgotICB9LAotICB7IC8vIEVudHJ5IDQwCi0gICAgMHgxLmZmYzAwMTQ0NTMzMTVkNDdlMmEzMThiZjYzZTRjYWE3cC0xLAotICAgIDB4MS4wMDAwMjJwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MQotICAgIDB4MS5mZmMwMDE0NDUzMzE1ZDQ3ZTJhMzE4YmY2M2U0Y2FhN3AtMSwKLSAgICAtMHgxLjAwMDAyMnAtNQotICB9LAotICB7IC8vIEVudHJ5IDQyCi0gICAgMHgxLmMxNTIxNTAxNWYzZDkxNmEwMDE5YTM5ZTNhY2M3MzY0cC0xLAotICAgIDB4MS4wMDAwZTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MwotICAgIDB4MS5jMTUyMTUwMTVmM2Q5MTZhMDAxOWEzOWUzYWNjNzM2NHAtMSwKLSAgICAtMHgxLjAwMDBlMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ0Ci0gICAgMHgxLmZmMDAxMzk0ZTkzMDg1YzdjY2U1MzkxNTg5M2FmNzY1cC0xLAotICAgIDB4MS4wMDAwZTBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NQotICAgIDB4MS5mZjAwMTM5NGU5MzA4NWM3Y2NlNTM5MTU4OTNhZjc2NXAtMSwKLSAgICAtMHgxLjAwMDBlMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDQ2Ci0gICAgMHgxLjkwYjBjOTdkZTIzNzA1ODdhNjhhZWFlMmI2OTQzOTUzcC0xNSwKLSAgICAweDEuMDAwMzIycDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNDcKLSAgICAweDEuOTBiMGM5N2RlMjM3MDU4N2E2OGFlYWUyYjY5NDM5NTNwLTE1LAotICAgIC0weDEuMDAwMzIycDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNDgKLSAgICAtMHgxLjhiOTBjNjc2Nzc1NjU4NzRmNDRkOTMxNGNhMmJhNjM0cC02LAotICAgIDB4MS4wMDA0MDJwOAotICB9LAotICB7IC8vIEVudHJ5IDQ5Ci0gICAgLTB4MS44YjkwYzY3Njc3NTY1ODc0ZjQ0ZDkzMTRjYTJiYTYzNHAtNiwKLSAgICAtMHgxLjAwMDQwMnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTAKLSAgICAweDEuMTQ3MzVmZmZkNTUxMjBhNDQ4MGI3YzkxYTFkNzhkNmVwLTEsCi0gICAgMHgxLjAwMWNwMAotICB9LAotICB7IC8vIEVudHJ5IDUxCi0gICAgMHgxLjE0NzM1ZmZmZDU1MTIwYTQ0ODBiN2M5MWExZDc4ZDZlcC0xLAotICAgIC0weDEuMDAxY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIKLSAgICAweDEuYzBiNmQxMDAwNTQ2OGEzYTNlYjA1NmViNTliNThjZTJwLTEsCi0gICAgMHgxLjAxNDRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MwotICAgIDB4MS5jMGI2ZDEwMDA1NDY4YTNhM2ViMDU2ZWI1OWI1OGNlMnAtMSwKLSAgICAtMHgxLjAxNDRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NAotICAgIC0weDEuYzQwM2Q5MDAwNjUwOWIwNzYyNjQyZDBiZWE0MGU0YjFwLTIsCi0gICAgMHgxLjAzOTRjOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUKLSAgICAtMHgxLmM0MDNkOTAwMDY1MDliMDc2MjY0MmQwYmVhNDBlNGIxcC0yLAotICAgIC0weDEuMDM5NGM4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NgotICAgIC0weDEuMjcwZGExOGIxOThlNmViZmM4NzgyMDgyOTAyYmYyZDRwLTI1LAotICAgIDB4MS4wNGNjYmNwMTgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NwotICAgIC0weDEuMjcwZGExOGIxOThlNmViZmM4NzgyMDgyOTAyYmYyZDRwLTI1LAotICAgIC0weDEuMDRjY2JjcDE4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTgKLSAgICAweDEuZWUwZjY3MDE1YjlmYjM5YmE2ZWI5MWQ0NzgyOWM5MTNwLTEsCi0gICAgMHgxLjA3YjUxOHA5OQotICB9LAotICB7IC8vIEVudHJ5IDU5Ci0gICAgMHgxLmVlMGY2NzAxNWI5ZmIzOWJhNmViOTFkNDc4MjljOTEzcC0xLAotICAgIC0weDEuMDdiNTE4cDk5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjAKLSAgICAweDEuZmVmMDVkMDAwNjY2Y2I0N2YxNjMyYzQ3OGE2MjgyYThwLTEsCi0gICAgMHgxLjA3YmY4MHAtNAotICB9LAotICB7IC8vIEVudHJ5IDYxCi0gICAgMHgxLmZlZjA1ZDAwMDY2NmNiNDdmMTYzMmM0NzhhNjI4MmE4cC0xLAotICAgIC0weDEuMDdiZjgwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjIKLSAgICAweDEuMTZmNDMzMDAwMGI0NGM4Mjg4Njc5ZjhjNzlkMzZjNGZwLTYsCi0gICAgMHgxLjA3YzFmMHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjMKLSAgICAweDEuMTZmNDMzMDAwMGI0NGM4Mjg4Njc5ZjhjNzlkMzZjNGZwLTYsCi0gICAgLTB4MS4wN2MxZjBwNQotICB9LAotICB7IC8vIEVudHJ5IDY0Ci0gICAgMHgxLmNmYjQwNDU1NzI3N2Q4NWJmMTQ5NDk2ZDQ2YzJmYTlmcC0xOCwKLSAgICAweDEuMGJkMjFlcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NQotICAgIDB4MS5jZmI0MDQ1NTcyNzdkODViZjE0OTQ5NmQ0NmMyZmE5ZnAtMTgsCi0gICAgLTB4MS4wYmQyMWVwOQotICB9LAotICB7IC8vIEVudHJ5IDY2Ci0gICAgMHgxLmJiNTQzZWZmZmQ2Y2FjYWMxMjY5OGI4YTk0ZWQyYzNlcC0xLAotICAgIDB4MS4wYzNjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcKLSAgICAweDEuYmI1NDNlZmZmZDZjYWNhYzEyNjk4YjhhOTRlZDJjM2VwLTEsCi0gICAgLTB4MS4wYzNjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgKLSAgICAweDEuYmIwYTIyYzEzYjYxNmNkY2FkMzJjN2ZjYTU4ZTY2NDNwLTEsCi0gICAgMHgxLjBjZDBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OQotICAgIDB4MS5iYjBhMjJjMTNiNjE2Y2RjYWQzMmM3ZmNhNThlNjY0M3AtMSwKLSAgICAtMHgxLjBjZDBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MAotICAgIDB4MS5mOThmOWIxZDA1ZTdjOTIyYWM1ZTVjNmI2YWM4Njg3NnAtMiwKLSAgICAweDEuMGRmMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzEKLSAgICAweDEuZjk4ZjliMWQwNWU3YzkyMmFjNWU1YzZiNmFjODY4NzZwLTIsCi0gICAgLTB4MS4wZGYwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MgotICAgIDB4MS5lZTE1MTgxODMwYzI1YjBiMTBjZTY3MWU4ZjdhMzI4OXAtMSwKLSAgICAweDEuMGZiNHAtMgotICB9LAotICB7IC8vIEVudHJ5IDczCi0gICAgMHgxLmVlMTUxODE4MzBjMjViMGIxMGNlNjcxZThmN2EzMjg5cC0xLAotICAgIC0weDEuMGZiNHAtMgotICB9LAotICB7IC8vIEVudHJ5IDc0Ci0gICAgMHgxLmVkZjZjYzE2ZGVmZTYzNjFmMzhmZmE2MGVjZTM5NDRjcC0xLAotICAgIDB4MS4xMDlhYjJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NQotICAgIDB4MS5lZGY2Y2MxNmRlZmU2MzYxZjM4ZmZhNjBlY2UzOTQ0Y3AtMSwKLSAgICAtMHgxLjEwOWFiMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDc2Ci0gICAgMHgxLmRlZThkMGZmZmNkOTk3Y2U1Y2ZiYWIwYTVhMzM2YzE0cC01LAotICAgIDB4MS4xNTY1NjRwNAotICB9LAotICB7IC8vIEVudHJ5IDc3Ci0gICAgMHgxLmRlZThkMGZmZmNkOTk3Y2U1Y2ZiYWIwYTVhMzM2YzE0cC01LAotICAgIC0weDEuMTU2NTY0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OAotICAgIDB4MS5iNjU2ZDYwMDAwMTU1YmFjYjRhYTg3NGIyOGRlMmZmOXAtMSwKLSAgICAweDEuMTYwY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDc5Ci0gICAgMHgxLmI2NTZkNjAwMDAxNTViYWNiNGFhODc0YjI4ZGUyZmY5cC0xLAotICAgIC0weDEuMTYwY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDgwCi0gICAgMHgxLmZmYjI3NTk2N2MxOTFlZTk1Zjg2MmVmYjRmNzkwY2VjcC0xLAotICAgIDB4MS4xOWNjcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgODEKLSAgICAweDEuZmZiMjc1OTY3YzE5MWVlOTVmODYyZWZiNGY3OTBjZWNwLTEsCi0gICAgLTB4MS4xOWNjcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgODIKLSAgICAweDEuYzU5YzUwZmZlNTQyMjMzYjdlYTIxMTAwZGY4N2JiNjBwLTIsCi0gICAgMHgxLjFjYTRwMAotICB9LAotICB7IC8vIEVudHJ5IDgzCi0gICAgMHgxLmM1OWM1MGZmZTU0MjIzM2I3ZWEyMTEwMGRmODdiYjYwcC0yLAotICAgIC0weDEuMWNhNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODQKLSAgICAweDEuYWY2MzBmODZiNzc1NzFiOWRlMmYxN2ZlZTJiNmM1Y2VwLTUsCi0gICAgMHgxLjFmZmZmZXA3OQotICB9LAotICB7IC8vIEVudHJ5IDg1Ci0gICAgMHgxLmFmNjMwZjg2Yjc3NTcxYjlkZTJmMTdmZWUyYjZjNWNlcC01LAotICAgIC0weDEuMWZmZmZlcDc5Ci0gIH0sCi0gIHsgLy8gRW50cnkgODYKLSAgICAweDEuYjE0OTNlZjFmYmM2MjY3M2VjMTQwYzEyYWRjNWExMzRwLTYsCi0gICAgMHgxLjI2MjBwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NwotICAgIDB4MS5iMTQ5M2VmMWZiYzYyNjczZWMxNDBjMTJhZGM1YTEzNHAtNiwKLSAgICAtMHgxLjI2MjBwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OAotICAgIC0weDEuYWQwMGI2ZjE1YzZhYzVjM2U3OWVmNTVkMmZlYzcwYmRwLTUsCi0gICAgMHgxLjJhM2Q2MnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODkKLSAgICAtMHgxLmFkMDBiNmYxNWM2YWM1YzNlNzllZjU1ZDJmZWM3MGJkcC01LAotICAgIC0weDEuMmEzZDYycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MAotICAgIC0weDEuYWI5OTg0ZjI4M2YxMTRjZjEzY2M2ZGYzOGM2Nzk1NWZwLTYsCi0gICAgMHgxLjJiZWMyMnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEKLSAgICAtMHgxLmFiOTk4NGYyODNmMTE0Y2YxM2NjNmRmMzhjNjc5NTVmcC02LAotICAgIC0weDEuMmJlYzIycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MgotICAgIDB4MS45OWJjNWI5NjFiMWFjYWNhMThkOTcxZjY4YWU5OWRhOXAtMjcsCi0gICAgMHgxLjJkOTdjOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTMKLSAgICAweDEuOTliYzViOTYxYjFhY2FjYTE4ZDk3MWY2OGFlOTlkYTlwLTI3LAotICAgIC0weDEuMmQ5N2M4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NAotICAgIC0weDEuZmZmZmZmZmZmZmZmZDcwMzQ5OGMzYjgyODg1NjM5MTVwLTEsCi0gICAgMHgxLjJkOTdjOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTUKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmQ3MDM0OThjM2I4Mjg4NTYzOTE1cC0xLAotICAgIC0weDEuMmQ5N2M4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NgotICAgIDB4MS5mZmZmZmZmZmZmZmY1YzBkMjYzMGVlMGEyN2U4ZDZkMXAtMSwKLSAgICAweDEuMmQ5N2M4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NwotICAgIDB4MS5mZmZmZmZmZmZmZmY1YzBkMjYzMGVlMGEyN2U4ZDZkMXAtMSwKLSAgICAtMHgxLjJkOTdjOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTgKLSAgICAtMHgxLjk5YjY5Y2YwYzRhMmM4ZGRhZDNmNGNmMjk0NTNlNTA5cC02LAotICAgIDB4MS4yZmVmYzRwOQotICB9LAotICB7IC8vIEVudHJ5IDk5Ci0gICAgLTB4MS45OWI2OWNmMGM0YTJjOGRkYWQzZjRjZjI5NDUzZTUwOXAtNiwKLSAgICAtMHgxLjJmZWZjNHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAwCi0gICAgMHgxLmU5MjE0ODMyOGQ2MjBmYzE4NmRmOWQ2Y2UxMDg4ZmQ5cC0xLAotICAgIDB4MS4zMzM3MjRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDEKLSAgICAweDEuZTkyMTQ4MzI4ZDYyMGZjMTg2ZGY5ZDZjZTEwODhmZDlwLTEsCi0gICAgLTB4MS4zMzM3MjRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIKLSAgICAweDEuYTFjYWFiMDAwMDJkMzE4OWUwNjk5ZjJhYWYyMGQ5ZmNwLTEsCi0gICAgMHgxLjNiOTBmOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwMwotICAgIDB4MS5hMWNhYWIwMDAwMmQzMTg5ZTA2OTlmMmFhZjIwZDlmY3AtMSwKLSAgICAtMHgxLjNiOTBmOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwNAotICAgIDB4MS5mYzMzYmFmZmZmZmZiYjA1NWNlMDM2OTBiZDM5MjUzMXAtMSwKLSAgICAweDEuNDFjNDcwcDE2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1Ci0gICAgMHgxLmZjMzNiYWZmZmZmZmJiMDU1Y2UwMzY5MGJkMzkyNTMxcC0xLAotICAgIC0weDEuNDFjNDcwcDE2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA2Ci0gICAgMHgxLjQ3OThiMzA2NzJmMjE2MDJhMjFhYWY0NzFlODI1OWEwcC0xOSwKLSAgICAweDEuNDQyZjc0cDE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA3Ci0gICAgMHgxLjQ3OThiMzA2NzJmMjE2MDJhMjFhYWY0NzFlODI1OWEwcC0xOSwKLSAgICAtMHgxLjQ0MmY3NHAxNQotICB9LAotICB7IC8vIEVudHJ5IDEwOAotICAgIDB4MS5lMmI1ZWNmZmZmYTQ5YzhjNjhkNzQzYzQ3ZjYyNDYzM3AtMSwKLSAgICAweDEuNWMwOWRhcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5Ci0gICAgMHgxLmUyYjVlY2ZmZmZhNDljOGM2OGQ3NDNjNDdmNjI0NjMzcC0xLAotICAgIC0weDEuNWMwOWRhcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEwCi0gICAgMHgxLjEwNTkxMDk0YWM1OGEyNzBkOWFkOTE4MDJkZjQ5ZmQwcC0xMSwKLSAgICAweDEuNWZlMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTExCi0gICAgMHgxLjEwNTkxMDk0YWM1OGEyNzBkOWFkOTE4MDJkZjQ5ZmQwcC0xMSwKLSAgICAtMHgxLjVmZTBwMwotICB9LAotICB7IC8vIEVudHJ5IDExMgotICAgIC0weDEuZmZmZTU4MGVlMTQxYzAyMjViNDQyODFjMWM2ZjdmZjFwLTEsCi0gICAgMHgxLjY2NTk4MnAxMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTMKLSAgICAtMHgxLmZmZmU1ODBlZTE0MWMwMjI1YjQ0MjgxYzFjNmY3ZmYxcC0xLAotICAgIC0weDEuNjY1OTgycDExOQotICB9LAotICB7IC8vIEVudHJ5IDExNAotICAgIC0weDEuZTJiOGVjZmZlZDkxY2UzYTRiOWRjNWE1OTJmYjBiMTRwLTEsCi0gICAgMHgxLjY2YTBiYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE1Ci0gICAgLTB4MS5lMmI4ZWNmZmVkOTFjZTNhNGI5ZGM1YTU5MmZiMGIxNHAtMSwKLSAgICAtMHgxLjY2YTBiYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2Ci0gICAgLTB4MS5hMDhjNmNmZGJlMDRiODU5YzBlMTZkNDc4ZmY4MWY3YnAtNSwKLSAgICAweDEuNmJlZTQycDEyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE3Ci0gICAgLTB4MS5hMDhjNmNmZGJlMDRiODU5YzBlMTZkNDc4ZmY4MWY3YnAtNSwKLSAgICAtMHgxLjZiZWU0MnAxMgotICB9LAotICB7IC8vIEVudHJ5IDExOAotICAgIDB4MS5mZjdjNzE5YTE4NDM5YzQyNjcwNzVlMmRmNjg4MzQzYXAtMSwKLSAgICAweDEuNmYxMDcwcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE5Ci0gICAgMHgxLmZmN2M3MTlhMTg0MzljNDI2NzA3NWUyZGY2ODgzNDNhcC0xLAotICAgIC0weDEuNmYxMDcwcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIwCi0gICAgMHgxLmZmN2MzYjk5N2Q2YmVhNjYxZWYwZDFlNjllMjIyYmZlcC0xLAotICAgIDB4MS42ZjViYzJwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjEKLSAgICAweDEuZmY3YzNiOTk3ZDZiZWE2NjFlZjBkMWU2OWUyMjJiZmVwLTEsCi0gICAgLTB4MS42ZjViYzJwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjIKLSAgICAtMHgxLjZhMGEwZWU2OGRhMTMxMDkxZTI5ZTA1NTIyNmExYmQ5cC0xLAotICAgIDB4MS43MmI1M2NwNQotICB9LAotICB7IC8vIEVudHJ5IDEyMwotICAgIC0weDEuNmEwYTBlZTY4ZGExMzEwOTFlMjllMDU1MjI2YTFiZDlwLTEsCi0gICAgLTB4MS43MmI1M2NwNQotICB9LAotICB7IC8vIEVudHJ5IDEyNAotICAgIDB4MS5mZjc3N2I5YTIxODk4NWMxYTE5MWM5MmIyZDExZmZiYXAtMSwKLSAgICAweDEuNzVlYzFhcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI1Ci0gICAgMHgxLmZmNzc3YjlhMjE4OTg1YzFhMTkxYzkyYjJkMTFmZmJhcC0xLAotICAgIC0weDEuNzVlYzFhcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI2Ci0gICAgMHgxLjZkNDg3ZjkyNDI3OTIwZTgxZGM1YWUzNGUwZThkN2JhcC0yLAotICAgIDB4MS43OGIzZmFwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI3Ci0gICAgMHgxLjZkNDg3ZjkyNDI3OTIwZTgxZGM1YWUzNGUwZThkN2JhcC0yLAotICAgIC0weDEuNzhiM2ZhcDEwMAotICB9LAotICB7IC8vIEVudHJ5IDEyOAotICAgIDB4MS40OTQ5YzJmZmZhMGNkMzM2ZGZkYTk5ODIxNmRhZTM5M3AtNCwKLSAgICAweDEuN2Q4NTY4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjkKLSAgICAweDEuNDk0OWMyZmZmYTBjZDMzNmRmZGE5OTgyMTZkYWUzOTNwLTQsCi0gICAgLTB4MS43ZDg1NjhwMAotICB9LAotICB7IC8vIEVudHJ5IDEzMAotICAgIC0weDEuYjllZDllYjMzZWFjYmZhYzgxNTFjZGExMTM3MzRjMjlwLTEsCi0gICAgMHgxLjgzMDY4OHA1NwotICB9LAotICB7IC8vIEVudHJ5IDEzMQotICAgIC0weDEuYjllZDllYjMzZWFjYmZhYzgxNTFjZGExMTM3MzRjMjlwLTEsCi0gICAgLTB4MS44MzA2ODhwNTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzIKLSAgICAweDEuYzczNDlhZjA2ZDYxMzk0Y2FlMTkxMjIzM2Y2NGEwNGVwLTUsCi0gICAgMHgxLjgzZTQzMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMzCi0gICAgMHgxLmM3MzQ5YWYwNmQ2MTM5NGNhZTE5MTIyMzNmNjRhMDRlcC01LAotICAgIC0weDEuODNlNDMwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzQKLSAgICAweDEuYWI3M2YwZjBmZTA0NDAzZTZhN2ZkZGUxNDFhMzhhOGVwLTUsCi0gICAgMHgxLjg0YzI4OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM1Ci0gICAgMHgxLmFiNzNmMGYwZmUwNDQwM2U2YTdmZGRlMTQxYTM4YThlcC01LAotICAgIC0weDEuODRjMjg4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzYKLSAgICAweDEuZmY2YzI3OTlkY2YwZDZjOGY3YWNhZjViMGE0NmU2ZTJwLTEsCi0gICAgMHgxLjg1MjE0MHAtNQotICB9LAotICB7IC8vIEVudHJ5IDEzNwotICAgIDB4MS5mZjZjMjc5OWRjZjBkNmM4ZjdhY2FmNWIwYTQ2ZTZlMnAtMSwKLSAgICAtMHgxLjg1MjE0MHAtNQotICB9LAotICB7IC8vIEVudHJ5IDEzOAotICAgIDB4MS5mZjY5ZWQ5OWRlNzBlNTFmNTE5ZjMwYmFkMjQ3YTRkOXAtMSwKLSAgICAweDEuODgwY2I2cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM5Ci0gICAgMHgxLmZmNjllZDk5ZGU3MGU1MWY1MTlmMzBiYWQyNDdhNGQ5cC0xLAotICAgIC0weDEuODgwY2I2cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQwCi0gICAgLTB4MS5mZDc2YzU3Zjg3MmY4NWJjNGIwZTFiZjU5MWIzYjViMHAtMSwKLSAgICAweDEuOTM2NGVhcDExOQotICB9LAotICB7IC8vIEVudHJ5IDE0MQotICAgIC0weDEuZmQ3NmM1N2Y4NzJmODViYzRiMGUxYmY1OTFiM2I1YjBwLTEsCi0gICAgLTB4MS45MzY0ZWFwMTE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQyCi0gICAgLTB4MS5mODdjMWNlZWM1ZmQ1ODExYzljMDg5Y2RhZWVmZjEzY3AtOCwKLSAgICAweDEuOTc5ZTI4cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDMKLSAgICAtMHgxLmY4N2MxY2VlYzVmZDU4MTFjOWMwODljZGFlZWZmMTNjcC04LAotICAgIC0weDEuOTc5ZTI4cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDQKLSAgICAtMHgxLjE2YWUyOTE0NGQzYjFlYThkOTA3Yjg3NzZmNzA0MTU3cC0yNiwKLSAgICAweDEuOWE0OGRlcDE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQ1Ci0gICAgLTB4MS4xNmFlMjkxNDRkM2IxZWE4ZDkwN2I4Nzc2ZjcwNDE1N3AtMjYsCi0gICAgLTB4MS45YTQ4ZGVwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDYKLSAgICAtMHgxLjk3NzU1MmY4ZTZhYjNjMDFjYjI5ZWM3NzgwMzAwN2NmcC0xMywKLSAgICAweDEuOWNiYzFhcDUwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ3Ci0gICAgLTB4MS45Nzc1NTJmOGU2YWIzYzAxY2IyOWVjNzc4MDMwMDdjZnAtMTMsCi0gICAgLTB4MS45Y2JjMWFwNTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDgKLSAgICAweDEuZmY1OGM1ZmZmZmZmYzcyNjZhOWRmNGU5MjE3MjY3NzFwLTEsCi0gICAgMHgxLjlkZGIwNnAtNQotICB9LAotICB7IC8vIEVudHJ5IDE0OQotICAgIDB4MS5mZjU4YzVmZmZmZmZjNzI2NmE5ZGY0ZTkyMTcyNjc3MXAtMSwKLSAgICAtMHgxLjlkZGIwNnAtNQotICB9LAotICB7IC8vIEVudHJ5IDE1MAotICAgIDB4MS5mZmZmZmZmZmZmZmZmNTcwMDAxOWZmZmZmMDA5NGMxNXAtMSwKLSAgICAweDEuOWZmZmZlcC0yNwotICB9LAotICB7IC8vIEVudHJ5IDE1MQotICAgIDB4MS5mZmZmZmZmZmZmZmZmNTcwMDAxOWZmZmZmMDA5NGMxNXAtMSwKLSAgICAtMHgxLjlmZmZmZXAtMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTIKLSAgICAweDEuMzFiZDYzMDA0YjFmZjRkNzIyYzc0NTA0NDcwNmQ1MTdwLTEsCi0gICAgMHgxLmFjMTI5Y3AyNAotICB9LAotICB7IC8vIEVudHJ5IDE1MwotICAgIDB4MS4zMWJkNjMwMDRiMWZmNGQ3MjJjNzQ1MDQ0NzA2ZDUxN3AtMSwKLSAgICAtMHgxLmFjMTI5Y3AyNAotICB9LAotICB7IC8vIEVudHJ5IDE1NAotICAgIC0weDEuZjFhZDBmMDAwMDA5ZTA2Y2U0NDlmNWJkZTAzZDVkMWFwLTEsCi0gICAgMHgxLmIwNzhmOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU1Ci0gICAgLTB4MS5mMWFkMGYwMDAwMDllMDZjZTQ0OWY1YmRlMDNkNWQxYXAtMSwKLSAgICAtMHgxLmIwNzhmOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU2Ci0gICAgMHgxLmZmNDc3NmZmZTMyNGJhMjk1OGFjYThkNzNjZjhiODM5cC0xLAotICAgIDB4MS5iMmMwM2NwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTcKLSAgICAweDEuZmY0Nzc2ZmZlMzI0YmEyOTU4YWNhOGQ3M2NmOGI4MzlwLTEsCi0gICAgLTB4MS5iMmMwM2NwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTgKLSAgICAweDEuZmY0MzdmMDAwMDVlNTAwZDI5YmQ4MTAzYThlNzY5ZTlwLTEsCi0gICAgMHgxLmI3NjZmNnAtNQotICB9LAotICB7IC8vIEVudHJ5IDE1OQotICAgIDB4MS5mZjQzN2YwMDAwNWU1MDBkMjliZDgxMDNhOGU3NjllOXAtMSwKLSAgICAtMHgxLmI3NjZmNnAtNQotICB9LAotICB7IC8vIEVudHJ5IDE2MAotICAgIC0weDEuOTk2NjNkYTk0ZGI3MzQ4YmNiYjI1N2VkMTZiNzIyN2NwLTI0LAotICAgIDB4MS5iZWVlZWVwNzkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjEKLSAgICAtMHgxLjk5NjYzZGE5NGRiNzM0OGJjYmIyNTdlZDE2YjcyMjdjcC0yNCwKLSAgICAtMHgxLmJlZWVlZXA3OQotICB9LAotICB7IC8vIEVudHJ5IDE2MgotICAgIDB4MS5mM2Q2MjBmZmZmZmY4NjBlNDliYmFiODk2M2RjYzQyZXAtMSwKLSAgICAweDEuYmY0ZTFjcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTYzCi0gICAgMHgxLmYzZDYyMGZmZmZmZjg2MGU0OWJiYWI4OTYzZGNjNDJlcC0xLAotICAgIC0weDEuYmY0ZTFjcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY0Ci0gICAgMHgxLjgxZmY3OWVkOTIwMTc1NWY3YWQxOGI1MzNhYTk5ZDE4cC0xLAotICAgIDB4MS5jMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY1Ci0gICAgMHgxLjgxZmY3OWVkOTIwMTc1NWY3YWQxOGI1MzNhYTk5ZDE4cC0xLAotICAgIC0weDEuYzBwMgotICB9LAotICB7IC8vIEVudHJ5IDE2NgotICAgIC0weDEuYWYzYzYxMDg4ODc3MzBmY2VjZWRmNjFkMmQ4MWNlYWJwLTE1LAotICAgIDB4MS5jMjBlYzhwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjcKLSAgICAtMHgxLmFmM2M2MTA4ODg3NzMwZmNlY2VkZjYxZDJkODFjZWFicC0xNSwKLSAgICAtMHgxLmMyMGVjOHAyMwotICB9LAotICB7IC8vIEVudHJ5IDE2OAotICAgIC0weDEuYjE2NTZlZjkxNDQ3ZmE2YTU0NmNiZDgxMDM0Y2FmYWJwLTE0LAotICAgIDB4MS5jNzlkMjBwMTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjkKLSAgICAtMHgxLmIxNjU2ZWY5MTQ0N2ZhNmE1NDZjYmQ4MTAzNGNhZmFicC0xNCwKLSAgICAtMHgxLmM3OWQyMHAxNwotICB9LAotICB7IC8vIEVudHJ5IDE3MAotICAgIDB4MS4yZGExZDMwMDdhNTc0NjFmNmY2N2YyZDNlOTgzZjc5OHAtMSwKLSAgICAweDEuY2E3Y2UwcDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTcxCi0gICAgMHgxLjJkYTFkMzAwN2E1NzQ2MWY2ZjY3ZjJkM2U5ODNmNzk4cC0xLAotICAgIC0weDEuY2E3Y2UwcDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTcyCi0gICAgMHgxLmZmZGQzNzg4ODM4N2NlM2M5ODI4MTQ0Njc2ZjJhYjBkcC0xLAotICAgIDB4MS5jYzMxYjhwMTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzMKLSAgICAweDEuZmZkZDM3ODg4Mzg3Y2UzYzk4MjgxNDQ2NzZmMmFiMGRwLTEsCi0gICAgLTB4MS5jYzMxYjhwMTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzQKLSAgICAweDEuMzk1YmE0ZmZmZmEwNjEyMjNmNzMwNDI5OWJlMGFhZDhwLTEsCi0gICAgMHgxLmQzMDg5MnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE3NQotICAgIDB4MS4zOTViYTRmZmZmYTA2MTIyM2Y3MzA0Mjk5YmUwYWFkOHAtMSwKLSAgICAtMHgxLmQzMDg5MnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE3NgotICAgIDB4MS5jYjI3YzZmZmQ4ZTlkNTFhMDYwNWI1N2ZkMDJlZTQ4M3AtMSwKLSAgICAweDEuZDU1NzRjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc3Ci0gICAgMHgxLmNiMjdjNmZmZDhlOWQ1MWEwNjA1YjU3ZmQwMmVlNDgzcC0xLAotICAgIC0weDEuZDU1NzRjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc4Ci0gICAgMHgxLmEwYTA5Y2ZkMmIyYjIzNDc2ZjA5YWEzZWI2MzEzNTFjcC01LAotICAgIDB4MS5kNzU1N2FwMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzkKLSAgICAweDEuYTBhMDljZmQyYjJiMjM0NzZmMDlhYTNlYjYzMTM1MWNwLTUsCi0gICAgLTB4MS5kNzU1N2FwMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODAKLSAgICAweDEuMzhhZTZkMDAwYzQ5ZGY1MDAxYmFmNzAxYjFhMmE1NjRwLTEsCi0gICAgMHgxLmRiZTc1Y3AyNAotICB9LAotICB7IC8vIEVudHJ5IDE4MQotICAgIDB4MS4zOGFlNmQwMDBjNDlkZjUwMDFiYWY3MDFiMWEyYTU2NHAtMSwKLSAgICAtMHgxLmRiZTc1Y3AyNAotICB9LAotICB7IC8vIEVudHJ5IDE4MgotICAgIDB4MS5mZmZmMWYwMDEyNWFiZjNkMTc2NTc4MWI2NGU2ZmUwN3AtMSwKLSAgICAweDEuZGZmZmZlcC05Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTgzCi0gICAgMHgxLmZmZmYxZjAwMTI1YWJmM2QxNzY1NzgxYjY0ZTZmZTA3cC0xLAotICAgIC0weDEuZGZmZmZlcC05Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTg0Ci0gICAgLTB4MS45YWJjNzZmN2ViMWQxNWE3MjdlMGJlN2FiMTY0MDBhN3AtMSwKLSAgICAweDEuZTAyYTQycDEwOAotICB9LAotICB7IC8vIEVudHJ5IDE4NQotICAgIC0weDEuOWFiYzc2ZjdlYjFkMTVhNzI3ZTBiZTdhYjE2NDAwYTdwLTEsCi0gICAgLTB4MS5lMDJhNDJwMTA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTg2Ci0gICAgMHgxLjVhMTQyOTA0NGViMDg3MDMyZGJlZTcxOWNkZDMwMjI2cC0xLAotICAgIDB4MS5lNzAxZWFwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg3Ci0gICAgMHgxLjVhMTQyOTA0NGViMDg3MDMyZGJlZTcxOWNkZDMwMjI2cC0xLAotICAgIC0weDEuZTcwMWVhcDEwMAotICB9LAotICB7IC8vIEVudHJ5IDE4OAotICAgIC0weDEuOTRmZmMwZjhkODg4ZjZmNDZjNmQ1NWEyZWZhMTA4M2ZwLTEsCi0gICAgMHgxLmVkZjE4OHAyNAotICB9LAotICB7IC8vIEVudHJ5IDE4OQotICAgIC0weDEuOTRmZmMwZjhkODg4ZjZmNDZjNmQ1NWEyZWZhMTA4M2ZwLTEsCi0gICAgLTB4MS5lZGYxODhwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTAKLSAgICAtMHgxLjI3YzZkMzAwZDg3NTZlNzg4NDZiODRhMWZhM2IxMmEycC0xLAotICAgIDB4MS5mNGM2M2FwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTEKLSAgICAtMHgxLjI3YzZkMzAwZDg3NTZlNzg4NDZiODRhMWZhM2IxMmEycC0xLAotICAgIC0weDEuZjRjNjNhcDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTkyCi0gICAgMHgxLmRhNTRlY2VmYjFjZDM5NTEwNTU1MTI2YTc2Y2IyMGQ0cC03LAotICAgIDB4MS5mNWJhNzZwMgotICB9LAotICB7IC8vIEVudHJ5IDE5MwotICAgIDB4MS5kYTU0ZWNlZmIxY2QzOTUxMDU1NTEyNmE3NmNiMjBkNHAtNywKLSAgICAtMHgxLmY1YmE3NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk0Ci0gICAgMHgxLmZjMjhkYTAwMDAwNmJjNGYwYjBjZDNjOGFiMTBmYzU3cC0xLAotICAgIDB4MS5mNWZmNGVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTUKLSAgICAweDEuZmMyOGRhMDAwMDA2YmM0ZjBiMGNkM2M4YWIxMGZjNTdwLTEsCi0gICAgLTB4MS5mNWZmNGVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTYKLSAgICAtMHgxLmZmZmZmZmZmZmZlYTM5NmFiOGFlZTUwOTM5MmM3NTVkcC0xLAotICAgIDB4MS5mNmE3YTJwMwotICB9LAotICB7IC8vIEVudHJ5IDE5NwotICAgIC0weDEuZmZmZmZmZmZmZmVhMzk2YWI4YWVlNTA5MzkyYzc1NWRwLTEsCi0gICAgLTB4MS5mNmE3YTJwMwotICB9LAotICB7IC8vIEVudHJ5IDE5OAotICAgIDB4MS5hNGYxZDRmZDBlYTI4NmYzMmYzY2IzMDkyYjRjZWQxNHAtNSwKLSAgICAweDEuZjZiZmYycDEyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk5Ci0gICAgMHgxLmE0ZjFkNGZkMGVhMjg2ZjMyZjNjYjMwOTJiNGNlZDE0cC01LAotICAgIC0weDEuZjZiZmYycDEyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAwCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmYWYzM2RlMjkwY2E5OWUyZmFmM3AtMSwKLSAgICAweDEuZjljYmUycDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDEKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZhZjMzZGUyOTBjYTk5ZTJmYWYzcC0xLAotICAgIC0weDEuZjljYmUycDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDIKLSAgICAweDEuZmRkNDBkNmQ5MTJjZTI1OTRmMjAwMTA0NTcwYWMxYjNwLTMsCi0gICAgMHgxLmZjNzY3ZXAxMgotICB9LAotICB7IC8vIEVudHJ5IDIwMwotICAgIDB4MS5mZGQ0MGQ2ZDkxMmNlMjU5NGYyMDAxMDQ1NzBhYzFiM3AtMywKLSAgICAtMHgxLmZjNzY3ZXAxMgotICB9LAotICB7IC8vIEVudHJ5IDIwNAotICAgIC0weDEuNzUyZGUyZmZmZmIxYTVlMjI3YmYyYzEyZjQwODMyMDNwLTEsCi0gICAgMHgxLmZmNTM1MnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjA1Ci0gICAgLTB4MS43NTJkZTJmZmZmYjFhNWUyMjdiZjJjMTJmNDA4MzIwM3AtMSwKLSAgICAtMHgxLmZmNTM1MnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjA2Ci0gICAgLTB4MS40ZWQ0YzVmZmM4MDE4NzQxODcwOTQ5NzY3ZmY4ZGFmYXAtMSwKLSAgICAweDEuZmZmMWZlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDcKLSAgICAtMHgxLjRlZDRjNWZmYzgwMTg3NDE4NzA5NDk3NjdmZjhkYWZhcC0xLAotICAgIC0weDEuZmZmMWZlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDgKLSAgICAtMHgxLjI4NDA2YTAwMjU1NDVjOWE1NjhkYWNkNDU1MThkZDY1cC0zLAotICAgIDB4MS5mZmYxZmVwMgotICB9LAotICB7IC8vIEVudHJ5IDIwOQotICAgIC0weDEuMjg0MDZhMDAyNTU0NWM5YTU2OGRhY2Q0NTUxOGRkNjVwLTMsCi0gICAgLTB4MS5mZmYxZmVwMgotICB9LAotICB7IC8vIEVudHJ5IDIxMAotICAgIDB4MS5mMDE1YzhjMjRjYTVlOTljN2M2NTU5OWM4ZDYwOTc2ZXAtMSwKLSAgICAweDEuZmZmN2ZlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMjExCi0gICAgMHgxLmYwMTVjOGMyNGNhNWU5OWM3YzY1NTk5YzhkNjA5NzZlcC0xLAotICAgIC0weDEuZmZmN2ZlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEyCi0gICAgMHgxLmFmZjliNDVlOTRkMzJkOGU1YmRlMjVkZWM2ZjM1N2Q2cC05LAotICAgIDB4MS5mZmZlM2VwNDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTMKLSAgICAweDEuYWZmOWI0NWU5NGQzMmQ4ZTViZGUyNWRlYzZmMzU3ZDZwLTksCi0gICAgLTB4MS5mZmZlM2VwNDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTQKLSAgICAtMHgxLmVhNTQ2NGZmZjU3MWY2ZmYzMzUwMDRlYWRlMzAxYjU2cC0xLAotICAgIDB4MS5mZmZmOGVwMwotICB9LAotICB7IC8vIEVudHJ5IDIxNQotICAgIC0weDEuZWE1NDY0ZmZmNTcxZjZmZjMzNTAwNGVhZGUzMDFiNTZwLTEsCi0gICAgLTB4MS5mZmZmOGVwMwotICB9LAotICB7IC8vIEVudHJ5IDIxNgotICAgIDB4MS5mZmZkNGU3MzVkZjZkYjZhN2NhN2NiMDQzNmU2ZWY0OHAtMSwKLSAgICAweDEuZmZmZjhlcDQwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE3Ci0gICAgMHgxLmZmZmQ0ZTczNWRmNmRiNmE3Y2E3Y2IwNDM2ZTZlZjQ4cC0xLAotICAgIC0weDEuZmZmZjhlcDQwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE4Ci0gICAgLTB4MS44OGU1MjdmZmVkZDg1ZDJlMjQyOTE2NmY3OTVkOTc4OHAtNywKLSAgICAweDEuZmZmZjllcDQ1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjE5Ci0gICAgLTB4MS44OGU1MjdmZmVkZDg1ZDJlMjQyOTE2NmY3OTVkOTc4OHAtNywKLSAgICAtMHgxLmZmZmY5ZXA0NQotICB9LAotICB7IC8vIEVudHJ5IDIyMAotICAgIC0weDEuZGI4ZmEwZTA3MWY5ODA2MWYyN2VmNjcxNjE1MTE0MzdwLTMsCi0gICAgMHgxLmZmZmZiYXAyMwotICB9LAotICB7IC8vIEVudHJ5IDIyMQotICAgIC0weDEuZGI4ZmEwZTA3MWY5ODA2MWYyN2VmNjcxNjE1MTE0MzdwLTMsCi0gICAgLTB4MS5mZmZmYmFwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjIKLSAgICAtMHgxLmZlNWIzMzdmNGNmZTI1ZDQ2OGRlZmU2NWQ1YzUyNGFkcC0xLAotICAgIDB4MS5mZmZmZGNwOAotICB9LAotICB7IC8vIEVudHJ5IDIyMwotICAgIC0weDEuZmU1YjMzN2Y0Y2ZlMjVkNDY4ZGVmZTY1ZDVjNTI0YWRwLTEsCi0gICAgLTB4MS5mZmZmZGNwOAotICB9LAotICB7IC8vIEVudHJ5IDIyNAotICAgIC0weDEuZjU5MDM4ZjRjMmRkMzNkMTU5MTcxZWU4MGJiNjQ4ODZwLTUsCi0gICAgMHgxLmZmZmZmOHAxMTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjUKLSAgICAtMHgxLmY1OTAzOGY0YzJkZDMzZDE1OTE3MWVlODBiYjY0ODg2cC01LAotICAgIC0weDEuZmZmZmY4cDExOAotICB9LAotICB7IC8vIEVudHJ5IDIyNgotICAgIDB4MS5mZmZmZmMwMDAwMTE1NTU1M2E3ZDI3ZjRhMjg5ZjMxOXAtMSwKLSAgICAweDEuZmZmZmZjcC0xMgotICB9LAotICB7IC8vIEVudHJ5IDIyNwotICAgIDB4MS5mZmZmZmMwMDAwMTE1NTU1M2E3ZDI3ZjRhMjg5ZjMxOXAtMSwKLSAgICAtMHgxLmZmZmZmY3AtMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjgKLSAgICAtMHgxLmY5ZDZiZGQ2MjQ3M2NkMmI3MjlmZTNhNjdhNGU5MTU3cC00LAotICAgIDB4MS5mZmZmZmNwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjkKLSAgICAtMHgxLmY5ZDZiZGQ2MjQ3M2NkMmI3MjlmZTNhNjdhNGU5MTU3cC00LAotICAgIC0weDEuZmZmZmZjcDIyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjMwCi0gICAgMHgxLmViNDA4MzAwMDA1ZDkxYjk4MTRjYWRhODhmNWZjNTk2cC0xLAotICAgIDB4MS4yNDgzNmNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzEKLSAgICAweDEuZWI0MDgzMDAwMDVkOTFiOTgxNGNhZGE4OGY1ZmM1OTZwLTEsCi0gICAgLTB4MS4yNDgzNmNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzIKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDIzMwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzQKLSAgICAweDEucDAsCi0gICAgMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM1Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDIzNgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMDAwMDAycC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzgKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLjAwMDAwMnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEucC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDAKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQxCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuZmZmZmZjcC0xMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDIKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLmZmZmZmY3AtMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQzCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5mZmZmZmNwLTEyNwotICB9LAotICB7IC8vIEVudHJ5IDI0NAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLmZmZmZmY3AtMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQ1Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5wLTEyNgotICB9LAotICB7IC8vIEVudHJ5IDI0NgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQ3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS4wMDAwMDJwLTEyNgotICB9LAotICB7IC8vIEVudHJ5IDI0OAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjAwMDAwMnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQ5Ci0gICAgMHgxLmZmZmZmZjVjMjhmNTc5NjBjZDU2ZWJmZTk0ODJhNjFmcC0xLAotICAgIDB4MS45OTk5OWFwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUwCi0gICAgMHgxLmZmZmZmZjVjMjhmNTc5NjBjZDU2ZWJmZTk0ODJhNjFmcC0xLAotICAgIC0weDEuOTk5OTlhcC0xMwotICB9LAotICB7IC8vIEVudHJ5IDI1MQotICAgIDB4MS5mZmZmZmQ3MGEzZDY0ZTVlYzE2NWNkNDMwN2FkMTMyNnAtMSwKLSAgICAweDEuOTk5OTlhcC0xMgotICB9LAotICB7IC8vIEVudHJ5IDI1MgotICAgIDB4MS5mZmZmZmQ3MGEzZDY0ZTVlYzE2NWNkNDMwN2FkMTMyNnAtMSwKLSAgICAtMHgxLjk5OTk5YXAtMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTMKLSAgICAweDEuZmZmZmZhM2Q3MDllZWNiZmI1YTM4NWIwZjNlMGNiOGZwLTEsCi0gICAgMHgxLjMzMzMzNHAtMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTQKLSAgICAweDEuZmZmZmZhM2Q3MDllZWNiZmI1YTM4NWIwZjNlMGNiOGZwLTEsCi0gICAgLTB4MS4zMzMzMzRwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU1Ci0gICAgMHgxLmZmZmZmNWMyOGY1ZmM3MzNjNDIwMmFhMGJkYTkyZjk3cC0xLAotICAgIDB4MS45OTk5OWFwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU2Ci0gICAgMHgxLmZmZmZmNWMyOGY1ZmM3MzNjNDIwMmFhMGJkYTkyZjk3cC0xLAotICAgIC0weDEuOTk5OTlhcC0xMQotICB9LAotICB7IC8vIEVudHJ5IDI1NwotICAgIDB4MS5mZmZmZjAwMDAwMTU1NTU1NDlmNDlmNGQzNGQzNGNhMHAtMSwKLSAgICAweDEucC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI1OAotICAgIDB4MS5mZmZmZjAwMDAwMTU1NTU1NDlmNDlmNGQzNGQzNGNhMHAtMSwKLSAgICAtMHgxLnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTkKLSAgICAweDEuZmZmZmU4ZjVjMjljZTA3NjQwYmQ1ZjZkOGJiMWVhNmJwLTEsCi0gICAgMHgxLjMzMzMzNHAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjAKLSAgICAweDEuZmZmZmU4ZjVjMjljZTA3NjQwYmQ1ZjZkOGJiMWVhNmJwLTEsCi0gICAgLTB4MS4zMzMzMzRwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYxCi0gICAgMHgxLmZmZmZlMGEzZDcxNDgzOWYzNjAxMTQ3YWRhNzNmOGQ5cC0xLAotICAgIDB4MS42NjY2NjhwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYyCi0gICAgMHgxLmZmZmZlMGEzZDcxNDgzOWYzNjAxMTQ3YWRhNzNmOGQ5cC0xLAotICAgIC0weDEuNjY2NjY4cC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI2MwotICAgIDB4MS5mZmZmZDcwYTNkODE5MWY2NmRlNTQwOGZiMmI5OTVhMHAtMSwKLSAgICAweDEuOTk5OTljcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI2NAotICAgIDB4MS5mZmZmZDcwYTNkODE5MWY2NmRlNTQwOGZiMmI5OTVhMHAtMSwKLSAgICAtMHgxLjk5OTk5Y3AtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjUKLSAgICAweDEuZmZmZmNjMjhmNmQwOTZiODdkNmQxOWEwNmU5Njk5OWJwLTEsCi0gICAgMHgxLmNjY2NjY3AtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjYKLSAgICAweDEuZmZmZmNjMjhmNmQwOTZiODdkNmQxOWEwNmU5Njk5OWJwLTEsCi0gICAgLTB4MS5jY2NjY2NwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY3Ci0gICAgMHgxLmZmZmJjYzJhNzFjZWFhYmY1NTgyYjZkYTFmYzMwNTMxcC0xLAotICAgIDB4MS4wNjY2NjZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjgKLSAgICAweDEuZmZmYmNjMmE3MWNlYWFiZjU1ODJiNmRhMWZjMzA1MzFwLTEsCi0gICAgLTB4MS4wNjY2NjZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjkKLSAgICAweDEuZmZmMzBhNGI3YjUxMTlkOGUyOTlmNzE3ZWMwZWNlMTZwLTEsCi0gICAgMHgxLmNjY2NjY3AtNwotICB9LAotICB7IC8vIEVudHJ5IDI3MAotICAgIDB4MS5mZmYzMGE0YjdiNTExOWQ4ZTI5OWY3MTdlYzBlY2UxNnAtMSwKLSAgICAtMHgxLmNjY2NjY3AtNwotICB9LAotICB7IC8vIEVudHJ5IDI3MQotICAgIDB4MS5mZmU1N2E3ODUxMjMyMjZjMWUyZWZiNDExMzUzZWRjOXAtMSwKLSAgICAweDEuNDk5OTk4cC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjcyCi0gICAgMHgxLmZmZTU3YTc4NTEyMzIyNmMxZTJlZmI0MTEzNTNlZGM5cC0xLAotICAgIC0weDEuNDk5OTk4cC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjczCi0gICAgMHgxLmZmZDMxY2QxMGNiNjMyZDk3MzNhYzVmNWYzMjdhNWY5cC0xLAotICAgIDB4MS5hY2NjY2NwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzQKLSAgICAweDEuZmZkMzFjZDEwY2I2MzJkOTczM2FjNWY1ZjMyN2E1ZjlwLTEsCi0gICAgLTB4MS5hY2NjY2NwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzUKLSAgICAweDEuZmZiYmYxODIwNzU0MmVmODEzOTBkNzNjM2JhODljMWFwLTEsCi0gICAgMHgxLjA4cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjc2Ci0gICAgMHgxLmZmYmJmMTgyMDc1NDJlZjgxMzkwZDczYzNiYTg5YzFhcC0xLAotICAgIC0weDEuMDhwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzcKLSAgICAweDEuZmY5ZmY4YzJlYWVhZWUzMGZiMjExNzY1YWY4MzUxNzFwLTEsCi0gICAgMHgxLjM5OTk5YXAtNQotICB9LAotICB7IC8vIEVudHJ5IDI3OAotICAgIDB4MS5mZjlmZjhjMmVhZWFlZTMwZmIyMTE3NjVhZjgzNTE3MXAtMSwKLSAgICAtMHgxLjM5OTk5YXAtNQotICB9LAotICB7IC8vIEVudHJ5IDI3OQotICAgIDB4MS5mZjdmMzJkNmViMWY5Y2Y5MDIyNmVjMjkxYzllMDkyMnAtMSwKLSAgICAweDEuNmIzMzM0cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjgwCi0gICAgMHgxLmZmN2YzMmQ2ZWIxZjljZjkwMjI2ZWMyOTFjOWUwOTIycC0xLAotICAgIC0weDEuNmIzMzM0cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjgxCi0gICAgMHgxLmZmNTlhMDBjYzRhZDQ5MmNhMjU5NzQ5NTQxMjk5OGVkcC0xLAotICAgIDB4MS45Y2NjY2VwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODIKLSAgICAweDEuZmY1OWEwMGNjNGFkNDkyY2EyNTk3NDk1NDEyOTk4ZWRwLTEsCi0gICAgLTB4MS45Y2NjY2VwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODMKLSAgICAweDEuZmYyZjQwYzA4YWNmNDU4MGE4ZDEzMzgwZDkwNzMzOThwLTEsCi0gICAgMHgxLmNlNjY2NnAtNQotICB9LAotICB7IC8vIEVudHJ5IDI4NAotICAgIDB4MS5mZjJmNDBjMDhhY2Y0NTgwYThkMTMzODBkOTA3MzM5OHAtMSwKLSAgICAtMHgxLmNlNjY2NnAtNQotICB9LAotICB7IC8vIEVudHJ5IDI4NQotICAgIDB4MS44Y2E0NmNhMDExNzcxYmZhZTBkOWVkYmYxZGFjYjQwMnAtMSwKLSAgICAweDEuNWU3ZmM0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg2Ci0gICAgMHgxLjhjYTQ2Y2EwMTE3NzFiZmFlMGQ5ZWRiZjFkYWNiNDAycC0xLAotICAgIC0weDEuNWU3ZmM0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg3Ci0gICAgMHgxLjBiNWQzOGQ1ZDgyZTRhNzYyNGRhYzRlMTBjZTE1OWMycC0yLAotICAgIDB4MS40ZTdmYzRwMAotICB9LAotICB7IC8vIEVudHJ5IDI4OAotICAgIDB4MS4wYjVkMzhkNWQ4MmU0YTc2MjRkYWM0ZTEwY2UxNTljMnAtMiwKLSAgICAtMHgxLjRlN2ZjNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg5Ci0gICAgLTB4MS42NmI5NmUyMDRlNjljZGE4ZTljZjUwOTk2NDMyNTM5ZXAtMiwKLSAgICAweDEuZWRiZmE2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTAKLSAgICAtMHgxLjY2Yjk2ZTIwNGU2OWNkYThlOWNmNTA5OTY0MzI1MzllcC0yLAotICAgIC0weDEuZWRiZmE2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTEKLSAgICAtMHgxLmE5MzU1NDBlZGVjYTRjMjIwZWQ5MWRjNTQ4MWU0ZDlicC0xLAotICAgIDB4MS40NjdmYzRwMQotICB9LAotICB7IC8vIEVudHJ5IDI5MgotICAgIC0weDEuYTkzNTU0MGVkZWNhNGMyMjBlZDkxZGM1NDgxZTRkOWJwLTEsCi0gICAgLTB4MS40NjdmYzRwMQotICB9LAotICB7IC8vIEVudHJ5IDI5MwotICAgIC0weDEuZmZjMDAxN2RkOTIwOWRkODg5MWYxN2ZlNGM5ZWVlNDZwLTEsCi0gICAgMHgxLjk2MWZiNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk0Ci0gICAgLTB4MS5mZmMwMDE3ZGQ5MjA5ZGQ4ODkxZjE3ZmU0YzllZWU0NnAtMSwKLSAgICAtMHgxLjk2MWZiNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk1Ci0gICAgLTB4MS45NjkwODIwMDc3MzNkNzg3ZjRjMzZiYTBmOTQyNTY5NHAtMSwKLSAgICAweDEuZTViZmE0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTYKLSAgICAtMHgxLjk2OTA4MjAwNzczM2Q3ODdmNGMzNmJhMGY5NDI1Njk0cC0xLAotICAgIC0weDEuZTViZmE0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTcKLSAgICAtMHgxLjJhMWU3NDIyM2Q5YmRkYjdkYjU5Zjc4MWY5NmI2NWVjcC0yLAotICAgIDB4MS4xYWFmY2FwMgotICB9LAotICB7IC8vIEVudHJ5IDI5OAotICAgIC0weDEuMmExZTc0MjIzZDliZGRiN2RiNTlmNzgxZjk2YjY1ZWNwLTIsCi0gICAgLTB4MS4xYWFmY2FwMgotICB9LAotICB7IC8vIEVudHJ5IDI5OQotICAgIDB4MS40ODk0ZDUwYjg0ZGJjOTgxMTM0YTU5MWFjNDE2NWQ5ZXAtMiwKLSAgICAweDEuNDI3ZmMycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDAKLSAgICAweDEuNDg5NGQ1MGI4NGRiYzk4MTEzNGE1OTFhYzQxNjVkOWVwLTIsCi0gICAgLTB4MS40MjdmYzJwMgotICB9LAotICB7IC8vIEVudHJ5IDMwMQotICAgIDB4MS5hMDE2ZGQ3NDgwYTFlZWE0ZDQ5ZWZiNTg1ZmE0OWM4NnAtMSwKLSAgICAweDEuNmE0ZmJhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDIKLSAgICAweDEuYTAxNmRkNzQ4MGExZWVhNGQ0OWVmYjU4NWZhNDljODZwLTEsCi0gICAgLTB4MS42YTRmYmFwMgotICB9LAotICB7IC8vIEVudHJ5IDMwMwotICAgIDB4MS5hMzBhNmEzYmY0YTNlMmI3ZTI3NjY2ZDNhOWMzYjc0YnAtMSwKLSAgICAweDEuNmFmMmYwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDQKLSAgICAweDEuYTMwYTZhM2JmNGEzZTJiN2UyNzY2NmQzYTljM2I3NGJwLTEsCi0gICAgLTB4MS42YWYyZjBwMgotICB9LAotICB7IC8vIEVudHJ5IDMwNQotICAgIDB4MS41YmQ2MjU1MDQwMTVjY2MxMDFlNGY0MzQwZDRiNzYyYnAtMiwKLSAgICAweDEuNDNjNjJhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDYKLSAgICAweDEuNWJkNjI1NTA0MDE1Y2NjMTAxZTRmNDM0MGQ0Yjc2MmJwLTIsCi0gICAgLTB4MS40M2M2MmFwMgotICB9LAotICB7IC8vIEVudHJ5IDMwNwotICAgIC0weDEuMGNiNzMzNDQ4YzMwZWUzZGRmZmI0ZGE2OWYwYjM4NDJwLTIsCi0gICAgMHgxLjFjOTk2NHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA4Ci0gICAgLTB4MS4wY2I3MzM0NDhjMzBlZTNkZGZmYjRkYTY5ZjBiMzg0MnAtMiwKLSAgICAtMHgxLjFjOTk2NHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA5Ci0gICAgLTB4MS44OWQ4NzRhZDMwZTNmYjQ2MjQ0ZGFhMjQ0NTE2OTBkN3AtMSwKLSAgICAweDEuZWFkOTNjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTAKLSAgICAtMHgxLjg5ZDg3NGFkMzBlM2ZiNDYyNDRkYWEyNDQ1MTY5MGQ3cC0xLAotICAgIC0weDEuZWFkOTNjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTEKLSAgICAtMHgxLmZlNTFhZTA5ZjBkMzllZDU1NGU2OGJlZjNlMmY4YTAzcC0xLAotICAgIDB4MS45YzdmYjBwMQotICB9LAotICB7IC8vIEVudHJ5IDMxMgotICAgIC0weDEuZmU1MWFlMDlmMGQzOWVkNTU0ZTY4YmVmM2UyZjhhMDNwLTEsCi0gICAgLTB4MS45YzdmYjBwMQotICB9LAotICB7IC8vIEVudHJ5IDMxMwotICAgIC0weDEuYjk3YmY3NmFlNzY1ZWI2OWNmNTVlODBhYWU5NzczMDNwLTEsCi0gICAgMHgxLjRlMjYyNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE0Ci0gICAgLTB4MS5iOTdiZjc2YWU3NjVlYjY5Y2Y1NWU4MGFhZTk3NzMwM3AtMSwKLSAgICAtMHgxLjRlMjYyNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE1Ci0gICAgLTB4MS5hOGFjNTc5M2UzMjYyOWIxMzE5ODRlY2ZmZDJkMGYzMXAtMiwKLSAgICAweDEuZmY5OTMycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTYKLSAgICAtMHgxLmE4YWM1NzkzZTMyNjI5YjEzMTk4NGVjZmZkMmQwZjMxcC0yLAotICAgIC0weDEuZmY5OTMycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTcKLSAgICAweDEuNzdhOTJjYTAxYmM3OWMxOTVkZGEzMzczNjgwN2Y5ODZwLTMsCi0gICAgMHgxLjYyZTYxY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE4Ci0gICAgMHgxLjc3YTkyY2EwMWJjNzljMTk1ZGRhMzM3MzY4MDdmOTg2cC0zLAotICAgIC0weDEuNjJlNjFjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTkKLSAgICAweDEuNmUxMDYwMjgyYzE0ODhkOWFiZDgzZGExZDY4Y2QwZjdwLTEsCi0gICAgMHgxLjhjNjYyY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDMyMAotICAgIDB4MS42ZTEwNjAyODJjMTQ4OGQ5YWJkODNkYTFkNjhjZDBmN3AtMSwKLSAgICAtMHgxLjhjNjYyY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDMyMQotICAgIC0weDEuNjgyZjJiYjg3YThmNTAxMTczNTA5NDE3NmM5YjZkYWNwLTQsCi0gICAgLTB4MS5hOGFhMWNwMAotICB9LAotICB7IC8vIEVudHJ5IDMyMgotICAgIC0weDEuNjgyZjJiYjg3YThmNTAxMTczNTA5NDE3NmM5YjZkYWNwLTQsCi0gICAgMHgxLmE4YWExY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIzCi0gICAgLTB4MS5lNjY1Y2IyYWY4NDJiZTViYTVmNjU5NjA1OTlhOTdlY3AtNywKLSAgICAtMHgxLjk1ZWM4YXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI0Ci0gICAgLTB4MS5lNjY1Y2IyYWY4NDJiZTViYTVmNjU5NjA1OTlhOTdlY3AtNywKLSAgICAweDEuOTVlYzhhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjUKLSAgICAweDEuZGRkMjMxNTAxYjEyZmNmMmJjMjA2MzNiZTRkNTFlNTFwLTUsCi0gICAgLTB4MS44MzJlZjhwMAotICB9LAotICB7IC8vIEVudHJ5IDMyNgotICAgIDB4MS5kZGQyMzE1MDFiMTJmY2YyYmMyMDYzM2JlNGQ1MWU1MXAtNSwKLSAgICAweDEuODMyZWY4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjcKLSAgICAweDEuMGNhYmE2OTk3NjkxYWIxOTcwZDQzYzc0MTllZDUxZTFwLTMsCi0gICAgLTB4MS43MDcxNjZwMAotICB9LAotICB7IC8vIEVudHJ5IDMyOAotICAgIDB4MS4wY2FiYTY5OTc2OTFhYjE5NzBkNDNjNzQxOWVkNTFlMXAtMywKLSAgICAweDEuNzA3MTY2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjkKLSAgICAweDEuYTA3MjU0MWZkNmVhZjhiNjVhODc0YzU4ZDZjYzU3MzlwLTMsCi0gICAgLTB4MS41ZGIzZDRwMAotICB9LAotICB7IC8vIEVudHJ5IDMzMAotICAgIDB4MS5hMDcyNTQxZmQ2ZWFmOGI2NWE4NzRjNThkNmNjNTczOXAtMywKLSAgICAweDEuNWRiM2Q0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzEKLSAgICAweDEuMThmZWY4MTA2YmVhNjNiOWU5NmE3YWRmNTM4YzYxOTRwLTIsCi0gICAgLTB4MS40YWY2NDJwMAotICB9LAotICB7IC8vIEVudHJ5IDMzMgotICAgIDB4MS4xOGZlZjgxMDZiZWE2M2I5ZTk2YTdhZGY1MzhjNjE5NHAtMiwKLSAgICAweDEuNGFmNjQycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzMKLSAgICAweDEuNjA0MzcyNzdkNDgwNjdlODUyMzBiY2UxODgzZWFhYmFwLTIsCi0gICAgLTB4MS4zODM4YjBwMAotICB9LAotICB7IC8vIEVudHJ5IDMzNAotICAgIDB4MS42MDQzNzI3N2Q0ODA2N2U4NTIzMGJjZTE4ODNlYWFiYXAtMiwKLSAgICAweDEuMzgzOGIwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzUKLSAgICAweDEuYTVhNGRlZDQ5MmJlZGZlOGNmNWMzNGNhZGQ3OGRmNzVwLTIsCi0gICAgLTB4MS4yNTdiMWVwMAotICB9LAotICB7IC8vIEVudHJ5IDMzNgotICAgIDB4MS5hNWE0ZGVkNDkyYmVkZmU4Y2Y1YzM0Y2FkZDc4ZGY3NXAtMiwKLSAgICAweDEuMjU3YjFlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzcKLSAgICAweDEuZThjNDA0MDY3OGQyZWY3MzYzMzNhNDUzN2ExMTEzYTFwLTIsCi0gICAgLTB4MS4xMmJkOTJwMAotICB9LAotICB7IC8vIEVudHJ5IDMzOAotICAgIDB4MS5lOGM0MDQwNjc4ZDJlZjczNjMzM2E0NTM3YTExMTNhMXAtMiwKLSAgICAweDEuMTJiZDkycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzkKLSAgICAweDEuMjY5NzZiMWIxNmQxOTA5MWMwOTI1OTc2NWM0YjM4NzJwLTEsCi0gICAgLTB4MS5lYTVjM2VwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDAKLSAgICAweDEuMjY5NzZiMWIxNmQxOTA5MWMwOTI1OTc2NWM0YjM4NzJwLTEsCi0gICAgMHgxLmVhNWMzZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDM0MQotICAgIDB4MS4zODA1YTJkYWZkYTdmODU1NGFlYzY1ZGFiMzQ4YTcxNHAtMSwKLSAgICAtMHgxLmQ0Yjg3Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDM0MgotICAgIDB4MS4zODA1YTJkYWZkYTdmODU1NGFlYzY1ZGFiMzQ4YTcxNHAtMSwKLSAgICAweDEuZDRiODdjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQzCi0gICAgMHgxLjQ4ZTUyZmY1YmJlNzk0NjE4Yjg1MTkwYjg2NDExODI0cC0xLAotICAgIC0weDEuYmYxNGJhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ0Ci0gICAgMHgxLjQ4ZTUyZmY1YmJlNzk0NjE4Yjg1MTkwYjg2NDExODI0cC0xLAotICAgIDB4MS5iZjE0YmFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDUKLSAgICAweDEuNTkyZTViNjE1ZWY1YWU0NjM5NzZkMzExNDFkYmFjZjBwLTEsCi0gICAgLTB4MS5hOTcwZjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDYKLSAgICAweDEuNTkyZTViNjE1ZWY1YWU0NjM5NzZkMzExNDFkYmFjZjBwLTEsCi0gICAgMHgxLmE5NzBmOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDM0NwotICAgIDB4MS42OGQ5YjJkNjU3ZTQzMDdkMzMxZWI3YmQzNWVlMTg3OXAtMSwKLSAgICAtMHgxLjkzY2QzNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM0OAotICAgIDB4MS42OGQ5YjJkNjU3ZTQzMDdkMzMxZWI3YmQzNWVlMTg3OXAtMSwKLSAgICAweDEuOTNjZDM2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ5Ci0gICAgMHgxLjc3ZTAwYzM3MTg1MjhjMzZmNzIyZTYzMDk2YzI2NDZicC0xLAotICAgIC0weDEuN2UyOTc0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUwCi0gICAgMHgxLjc3ZTAwYzM3MTg1MjhjMzZmNzIyZTYzMDk2YzI2NDZicC0xLAotICAgIDB4MS43ZTI5NzRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTEKLSAgICAweDEuODYzYTg4ZDZiMDY0ZjM2ZjM0MzcwNzIyZDM2MWNlOWZwLTEsCi0gICAgLTB4MS42ODg1YjJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTIKLSAgICAweDEuODYzYTg4ZDZiMDY0ZjM2ZjM0MzcwNzIyZDM2MWNlOWZwLTEsCi0gICAgMHgxLjY4ODViMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM1MwotICAgIDB4MS45M2UyOTg5Y2VlNjA4NGUzNGI1MzNiMWViOTI3NDZkYXAtMSwKLSAgICAtMHgxLjUyZTFmMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDM1NAotICAgIDB4MS45M2UyOTg5Y2VlNjA4NGUzNGI1MzNiMWViOTI3NDZkYXAtMSwKLSAgICAweDEuNTJlMWYwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzU1Ci0gICAgMHgxLmEwZDFmODYxM2ViYzYwYzdlZTY1MDJlZTE4M2M4OWU3cC0xLAotICAgIC0weDEuM2QzZTM2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzU2Ci0gICAgMHgxLmEwZDFmODYxM2ViYzYwYzdlZTY1MDJlZTE4M2M4OWU3cC0xLAotICAgIDB4MS4zZDNlMzZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTcKLSAgICAweDEuYmM2YmQ4ODlhOGE1OWRiYjU2ZTU0NmEzN2FlNzk4ZjVwLTEsCi0gICAgLTB4MS4wYTBiMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTgKLSAgICAweDEuYmM2YmQ4ODlhOGE1OWRiYjU2ZTU0NmEzN2FlNzk4ZjVwLTEsCi0gICAgMHgxLjBhMGIwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM1OQotICAgIDB4MS5jYTU5YzcxOWY5NjA3NWRkNmI3YTBmZjQ0M2FkNTlkY3AtMSwKLSAgICAtMHgxLmQ4ZjcyMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDM2MAotICAgIDB4MS5jYTU5YzcxOWY5NjA3NWRkNmI3YTBmZjQ0M2FkNTlkY3AtMSwKLSAgICAweDEuZDhmNzIwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzYxCi0gICAgMHgxLmQ2YzBiMTNkZjk5NjEzYTQ5MzA2YjRkYzZjNTdhYTAzcC0xLAotICAgIC0weDEuOWRkODNjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzYyCi0gICAgMHgxLmQ2YzBiMTNkZjk5NjEzYTQ5MzA2YjRkYzZjNTdhYTAzcC0xLAotICAgIDB4MS45ZGQ4M2NwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjMKLSAgICAweDEuZTE5NjAyNzNhNGFhYTFiZDE5ZWYwY2NhYTg4NzQxODNwLTEsCi0gICAgLTB4MS42MmI5NThwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjQKLSAgICAweDEuZTE5NjAyNzNhNGFhYTFiZDE5ZWYwY2NhYTg4NzQxODNwLTEsCi0gICAgMHgxLjYyYjk1OHAtMgotICB9LAotICB7IC8vIEVudHJ5IDM2NQotICAgIDB4MS5lYWQwN2NkMmUwZjdmMTk2Nzk2NDYzNjJiYmMwZWI4MHAtMSwKLSAgICAtMHgxLjI3OWE3NHAtMgotICB9LAotICB7IC8vIEVudHJ5IDM2NgotICAgIDB4MS5lYWQwN2NkMmUwZjdmMTk2Nzk2NDYzNjJiYmMwZWI4MHAtMSwKLSAgICAweDEuMjc5YTc0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY3Ci0gICAgMHgxLmYyNjg0MGVmZDg2Y2VlYTIzZjM4OGI2YTExMDJlYTRkcC0xLAotICAgIC0weDEuZDhmNzIwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY4Ci0gICAgMHgxLmYyNjg0MGVmZDg2Y2VlYTIzZjM4OGI2YTExMDJlYTRkcC0xLAotICAgIDB4MS5kOGY3MjBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjkKLSAgICAweDEuZjg1NmQ0OTI1MWJkMzdjNTRmMDA5NDI3MGVlY2JkMThwLTEsCi0gICAgLTB4MS42MmI5NThwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzAKLSAgICAweDEuZjg1NmQ0OTI1MWJkMzdjNTRmMDA5NDI3MGVlY2JkMThwLTEsCi0gICAgMHgxLjYyYjk1OHAtMwotICB9LAotICB7IC8vIEVudHJ5IDM3MQotICAgIDB4MS5mYzk3MjgzYzRmNWJkMWY3OTMyMDE5NzJiOGRiNTUxZnAtMSwKLSAgICAtMHgxLmQ4ZjcyMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDM3MgotICAgIDB4MS5mYzk3MjgzYzRmNWJkMWY3OTMyMDE5NzJiOGRiNTUxZnAtMSwKLSAgICAweDEuZDhmNzIwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzczCi0gICAgMHgxLmZmMjU5YjdiM2Q3MjFlZGYwNjNhNWJmNmU3YTFmOTNjcC0xLAotICAgIC0weDEuZDhmNzIwcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzc0Ci0gICAgMHgxLmZmMjU5YjdiM2Q3MjFlZGYwNjNhNWJmNmU3YTFmOTNjcC0xLAotICAgIDB4MS5kOGY3MjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzUKLSAgICAweDEuZmYyNTliN2IzZDcyMWVkZjA2M2E1YmY2ZTdhMWY5M2NwLTEsCi0gICAgMHgxLmQ4ZjcyMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDM3NgotICAgIDB4MS5mZjI1OWI3YjNkNzIxZWRmMDYzYTViZjZlN2ExZjkzY3AtMSwKLSAgICAtMHgxLmQ4ZjcyMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDM3NwotICAgIDB4MS5mYzk3MjgzYzRmNWJkMWY3OTMyMDE5NzJiOGRiNTUxZnAtMSwKLSAgICAweDEuZDhmNzIwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzc4Ci0gICAgMHgxLmZjOTcyODNjNGY1YmQxZjc5MzIwMTk3MmI4ZGI1NTFmcC0xLAotICAgIC0weDEuZDhmNzIwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzc5Ci0gICAgMHgxLmY4NTZkNDkyNTFiZDM3YzU0ZjAwOTQyNzBlZWNiZDE4cC0xLAotICAgIDB4MS42MmI5NThwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODAKLSAgICAweDEuZjg1NmQ0OTI1MWJkMzdjNTRmMDA5NDI3MGVlY2JkMThwLTEsCi0gICAgLTB4MS42MmI5NThwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODEKLSAgICAweDEuZjI2ODQwZWZkODZjZWVhMjNmMzg4YjZhMTEwMmVhNGRwLTEsCi0gICAgMHgxLmQ4ZjcyMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDM4MgotICAgIDB4MS5mMjY4NDBlZmQ4NmNlZWEyM2YzODhiNmExMTAyZWE0ZHAtMSwKLSAgICAtMHgxLmQ4ZjcyMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDM4MwotICAgIDB4MS5lYWQwN2NkMmUwZjdmMTk2Nzk2NDYzNjJiYmMwZWI4MHAtMSwKLSAgICAweDEuMjc5YTc0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg0Ci0gICAgMHgxLmVhZDA3Y2QyZTBmN2YxOTY3OTY0NjM2MmJiYzBlYjgwcC0xLAotICAgIC0weDEuMjc5YTc0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg1Ci0gICAgMHgxLmUxOTYwMjczYTRhYWExYmQxOWVmMGNjYWE4ODc0MTgzcC0xLAotICAgIDB4MS42MmI5NThwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODYKLSAgICAweDEuZTE5NjAyNzNhNGFhYTFiZDE5ZWYwY2NhYTg4NzQxODNwLTEsCi0gICAgLTB4MS42MmI5NThwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODcKLSAgICAweDEuZDZjMGIxM2RmOTk2MTNhNDkzMDZiNGRjNmM1N2FhMDNwLTEsCi0gICAgMHgxLjlkZDgzY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDM4OAotICAgIDB4MS5kNmMwYjEzZGY5OTYxM2E0OTMwNmI0ZGM2YzU3YWEwM3AtMSwKLSAgICAtMHgxLjlkZDgzY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDM4OQotICAgIDB4MS5jYTU5YzcxOWY5NjA3NWRkNmI3YTBmZjQ0M2FkNTlkY3AtMSwKLSAgICAweDEuZDhmNzIwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkwCi0gICAgMHgxLmNhNTljNzE5Zjk2MDc1ZGQ2YjdhMGZmNDQzYWQ1OWRjcC0xLAotICAgIC0weDEuZDhmNzIwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkxCi0gICAgMHgxLmJjNmJkODg5YThhNTlkYmI1NmU1NDZhMzdhZTc5OGY1cC0xLAotICAgIDB4MS4wYTBiMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTIKLSAgICAweDEuYmM2YmQ4ODlhOGE1OWRiYjU2ZTU0NmEzN2FlNzk4ZjVwLTEsCi0gICAgLTB4MS4wYTBiMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTMKLSAgICAweDEuYTBkMWY4NjEzZWJjNjBjN2VlNjUwMmVlMTgzYzg5ZTdwLTEsCi0gICAgMHgxLjNkM2UzNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM5NAotICAgIDB4MS5hMGQxZjg2MTNlYmM2MGM3ZWU2NTAyZWUxODNjODllN3AtMSwKLSAgICAtMHgxLjNkM2UzNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM5NQotICAgIDB4MS45M2UyOTNiMjNhNmFhMWFlNTM3MzIxNGViOGZiOWU5NnAtMSwKLSAgICAweDEuNTJlMWY4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk2Ci0gICAgMHgxLjkzZTI5M2IyM2E2YWExYWU1MzczMjE0ZWI4ZmI5ZTk2cC0xLAotICAgIC0weDEuNTJlMWY4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk3Ci0gICAgMHgxLjg2M2E4M2E4ZDk4MjZjNjEzNTUwOTQwNmViZTA1YzBmcC0xLAotICAgIDB4MS42ODg1YmFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTgKLSAgICAweDEuODYzYTgzYThkOTgyNmM2MTM1NTA5NDA2ZWJlMDVjMGZwLTEsCi0gICAgLTB4MS42ODg1YmFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTkKLSAgICAweDEuNzdlMDA2Yzg3Y2JhZGVkNjZlYzViOTYwYzkzYzU2OGFwLTEsCi0gICAgMHgxLjdlMjk3Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDQwMAotICAgIDB4MS43N2UwMDZjODdjYmFkZWQ2NmVjNWI5NjBjOTNjNTY4YXAtMSwKLSAgICAtMHgxLjdlMjk3Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDQwMQotICAgIDB4MS42OGQ5YWQyOTczNmMxNzA0Y2FlYTZhMmRiNmU3MTIyM3AtMSwKLSAgICAweDEuOTNjZDNlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAyCi0gICAgMHgxLjY4ZDlhZDI5NzM2YzE3MDRjYWVhNmEyZGI2ZTcxMjIzcC0xLAotICAgIC0weDEuOTNjZDNlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAzCi0gICAgMHgxLjU5MmU1NTc4YzllYzY2YWNjZWRkZDRkYzZjZTY2YjI2cC0xLAotICAgIDB4MS5hOTcxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA0Ci0gICAgMHgxLjU5MmU1NTc4YzllYzY2YWNjZWRkZDRkYzZjZTY2YjI2cC0xLAotICAgIC0weDEuYTk3MXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQwNQotICAgIDB4MS40OGU1MjlkNDI5ZTcyMWVjOGJiMWUwMTRmOTRkNDhmMXAtMSwKLSAgICAweDEuYmYxNGMycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA2Ci0gICAgMHgxLjQ4ZTUyOWQ0MjllNzIxZWM4YmIxZTAxNGY5NGQ0OGYxcC0xLAotICAgIC0weDEuYmYxNGMycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA3Ci0gICAgMHgxLjM4MDU5YzgzM2M1OGVhOTcwZjdiOTZkNmFkYTNkOWM0cC0xLAotICAgIDB4MS5kNGI4ODRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDgKLSAgICAweDEuMzgwNTljODMzYzU4ZWE5NzBmN2I5NmQ2YWRhM2Q5YzRwLTEsCi0gICAgLTB4MS5kNGI4ODRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDkKLSAgICAweDEuMjY5NzZiMWIxNmQxOTA5MWMwOTI1OTc2NWM0YjM4NzJwLTEsCi0gICAgMHgxLmVhNWMzZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQxMAotICAgIDB4MS4yNjk3NmIxYjE2ZDE5MDkxYzA5MjU5NzY1YzRiMzg3MnAtMSwKLSAgICAtMHgxLmVhNWMzZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQxMQotICAgIDB4MS5lOGM0MDQwNjc4ZDJlZjczNjMzM2E0NTM3YTExMTNhMXAtMiwKLSAgICAweDEuMTJiZDkycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTIKLSAgICAweDEuZThjNDA0MDY3OGQyZWY3MzYzMzNhNDUzN2ExMTEzYTFwLTIsCi0gICAgLTB4MS4xMmJkOTJwMAotICB9LAotICB7IC8vIEVudHJ5IDQxMwotICAgIDB4MS5hNWE0YzhmNTk4ZmEwMDc4OTcxMzE2ZWI0OTA3Zjk3YnAtMiwKLSAgICAweDEuMjU3YjI0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTQKLSAgICAweDEuYTVhNGM4ZjU5OGZhMDA3ODk3MTMxNmViNDkwN2Y5N2JwLTIsCi0gICAgLTB4MS4yNTdiMjRwMAotICB9LAotICB7IC8vIEVudHJ5IDQxNQotICAgIDB4MS42MDQzNWJlZWQxMGNhMDU3NjlmMGEzZDg2YTVhMjBmM3AtMiwKLSAgICAweDEuMzgzOGI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTYKLSAgICAweDEuNjA0MzViZWVkMTBjYTA1NzY5ZjBhM2Q4NmE1YTIwZjNwLTIsCi0gICAgLTB4MS4zODM4YjZwMAotICB9LAotICB7IC8vIEVudHJ5IDQxNwotICAgIDB4MS4xOGZlZTBmYzQ1YzMxYTc5YjJiOTQ3OGIxZjcyYTllYnAtMiwKLSAgICAweDEuNGFmNjQ4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTgKLSAgICAweDEuMThmZWUwZmM0NWMzMWE3OWIyYjk0NzhiMWY3MmE5ZWJwLTIsCi0gICAgLTB4MS40YWY2NDhwMAotICB9LAotICB7IC8vIEVudHJ5IDQxOQotICAgIDB4MS5hMDcyMjUyMDkwYzMzODI4NzY3YWVlM2UwNDBjY2RkZnAtMywKLSAgICAweDEuNWRiM2RhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjAKLSAgICAweDEuYTA3MjI1MjA5MGMzMzgyODc2N2FlZTNlMDQwY2NkZGZwLTMsCi0gICAgLTB4MS41ZGIzZGFwMAotICB9LAotICB7IC8vIEVudHJ5IDQyMQotICAgIDB4MS4wY2FiNzcwM2E4ZTlkYWNjNGFkMDExODhiNDQzY2ZlZXAtMywKLSAgICAweDEuNzA3MTZjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjIKLSAgICAweDEuMGNhYjc3MDNhOGU5ZGFjYzRhZDAxMTg4YjQ0M2NmZWVwLTMsCi0gICAgLTB4MS43MDcxNmNwMAotICB9LAotICB7IC8vIEVudHJ5IDQyMwotICAgIDB4MS5kZGQxNzFhM2M5ODUxZTc4MTliNWU0ZjZmOTBlNzYzZHAtNSwKLSAgICAweDEuODMyZWZlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjQKLSAgICAweDEuZGRkMTcxYTNjOTg1MWU3ODE5YjVlNGY2ZjkwZTc2M2RwLTUsCi0gICAgLTB4MS44MzJlZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDQyNQotICAgIC0weDEuZTY2OGNiMTU0ZWVhNjhiYmM3ZjgxNTRmNDZiMmU1MzZwLTcsCi0gICAgMHgxLjk1ZWM5MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI2Ci0gICAgLTB4MS5lNjY4Y2IxNTRlZWE2OGJiYzdmODE1NGY0NmIyZTUzNnAtNywKLSAgICAtMHgxLjk1ZWM5MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI3Ci0gICAgLTB4MS42ODJmMmJiODdhOGY1MDExNzM1MDk0MTc2YzliNmRhY3AtNCwKLSAgICAweDEuYThhYTFjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjgKLSAgICAtMHgxLjY4MmYyYmI4N2E4ZjUwMTE3MzUwOTQxNzZjOWI2ZGFjcC00LAotICAgIC0weDEuYThhYTFjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjkKLSAgICAweDEuMGNiMzQ0OWEwZDBhOWUwNjQzZDQxZjRhNWIwZjdkYjdwLTEsCi0gICAgMHgxLjA0YWZmOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMwCi0gICAgMHgxLjBjYjM0NDlhMGQwYTllMDY0M2Q0MWY0YTViMGY3ZGI3cC0xLAotICAgIC0weDEuMDRhZmY4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzEKLSAgICAweDEuMGNiMjI2OTcxNTNiY2YxZjhhNjNhY2RkZDk2YzU0Y2JwLTEsCi0gICAgMHgxLjA0YjBhMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMyCi0gICAgMHgxLjBjYjIyNjk3MTUzYmNmMWY4YTYzYWNkZGQ5NmM1NGNicC0xLAotICAgIC0weDEuMDRiMGEwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzMKLSAgICAweDEuMGNiMTA4OTNhOWI1NDcxYTQ0MzU2MDcyY2IzM2IzOTVwLTEsCi0gICAgMHgxLjA0YjE0OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM0Ci0gICAgMHgxLjBjYjEwODkzYTliNTQ3MWE0NDM1NjA3MmNiMzNiMzk1cC0xLAotICAgIC0weDEuMDRiMTQ4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzUKLSAgICAweDEuMGNhZmVhOGZjYTc3ODEyMzZhNTdlNWIxYzhhZWQzOWNwLTEsCi0gICAgMHgxLjA0YjFmMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM2Ci0gICAgMHgxLjBjYWZlYThmY2E3NzgxMjM2YTU3ZTViMWM4YWVkMzljcC0xLAotICAgIC0weDEuMDRiMWYwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzcKLSAgICAweDEuMGNhZWNjOGI3NzgyZjg2ODI3YWY5MmIwYjIzNzQ1MTBwLTEsCi0gICAgMHgxLjA0YjI5OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM4Ci0gICAgMHgxLjBjYWVjYzhiNzc4MmY4NjgyN2FmOTJiMGIyMzc0NTEwcC0xLAotICAgIC0weDEuMDRiMjk4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzkKLSAgICAweDEuMGNhZGFlODZiMGQ4MjgxNWQ4ZjYzMmU2N2M3ZTFhOTlwLTEsCi0gICAgMHgxLjA0YjM0MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQwCi0gICAgMHgxLjBjYWRhZTg2YjBkODI4MTVkOGY2MzJlNjdjN2UxYTk5cC0xLAotICAgIC0weDEuMDRiMzQwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDEKLSAgICAweDEuMGNhYzkwODE3Njc3OGI1YTBjYmFkMjFlZTc1Y2U3NjVwLTEsCi0gICAgMHgxLjA0YjNlOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQyCi0gICAgMHgxLjBjYWM5MDgxNzY3NzhiNWEwY2JhZDIxZWU3NWNlNzY1cC0xLAotICAgIC0weDEuMDRiM2U4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDMKLSAgICAweDEuMGNhYjcyN2JjODYxOWQ2MjgzNjE4NzZlMWYzMGE2MzNwLTEsCi0gICAgMHgxLjA0YjQ5MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ0Ci0gICAgMHgxLjBjYWI3MjdiYzg2MTlkNjI4MzYxODc2ZTFmMzBhNjMzcC0xLAotICAgIC0weDEuMDRiNDkwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDUKLSAgICAweDEuMGNhYTViNDUwYTQzMjRmMjA0YTU1NmIwNzJkYTEyNGFwLTEsCi0gICAgMHgxLjA0YjUzNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ2Ci0gICAgMHgxLjBjYWE1YjQ1MGE0MzI0ZjIwNGE1NTZiMDcyZGExMjRhcC0xLAotICAgIC0weDEuMDRiNTM0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDcKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDQ0OAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDkKLSAgICAweDEucDAsCi0gICAgMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUwCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDQ1MQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDUyCi0gICAgMHgxLmFkMDJjOGI5Y2M5M2Y0NDhlZjRlYjA2OGE4ODkyMmEzcC0xLAotICAgIDB4MS4yNzlhNzJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTMKLSAgICAweDEuYWQwMmM4YjljYzkzZjQ0OGVmNGViMDY4YTg4OTIyYTNwLTEsCi0gICAgLTB4MS4yNzlhNzJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTQKLSAgICAweDEuYWQwMmM3YTI1OGJmYjM2MmFiYmU4NmZiNDhmNGU5OGJwLTEsCi0gICAgMHgxLjI3OWE3NHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ1NQotICAgIDB4MS5hZDAyYzdhMjU4YmZiMzYyYWJiZTg2ZmI0OGY0ZTk4YnAtMSwKLSAgICAtMHgxLjI3OWE3NHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ1NgotICAgIDB4MS5hZDAyYzY4YWU0ZTljNTc5YTA4YzA0Y2U1OWJlNDAwMnAtMSwKLSAgICAweDEuMjc5YTc2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU3Ci0gICAgMHgxLmFkMDJjNjhhZTRlOWM1NzlhMDhjMDRjZTU5YmU0MDAycC0xLAotICAgIC0weDEuMjc5YTc2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU4Ci0gICAgLTB4MS40OGQxYzllOThiNmMwODc4NGYxMDA0MGY0N2ExMjE5MXAtMywKLSAgICAweDEuYmI2N2FjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTkKLSAgICAtMHgxLjQ4ZDFjOWU5OGI2YzA4Nzg0ZjEwMDQwZjQ3YTEyMTkxcC0zLAotICAgIC0weDEuYmI2N2FjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjAKLSAgICAtMHgxLjQ4ZDFkOWI0NjdlMzc5NTUzMzczMTFkZWNkMDlmYzc0cC0zLAotICAgIDB4MS5iYjY3YWVwMAotICB9LAotICB7IC8vIEVudHJ5IDQ2MQotICAgIC0weDEuNDhkMWQ5YjQ2N2UzNzk1NTMzNzMxMWRlY2QwOWZjNzRwLTMsCi0gICAgLTB4MS5iYjY3YWVwMAotICB9LAotICB7IC8vIEVudHJ5IDQ2MgotICAgIC0weDEuNDhkMWU5N2Y0NDU1YzZlYWIxMDQ4MDIyMjM4YjJiZDBwLTMsCi0gICAgMHgxLmJiNjdiMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDYzCi0gICAgLTB4MS40OGQxZTk3ZjQ0NTVjNmVhYjEwNDgwMjIyMzhiMmJkMHAtMywKLSAgICAtMHgxLmJiNjdiMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY0Ci0gICAgMHgxLmNmYzZkMDExYTBlNWQwZmNlYmI1NGI1ZmVkNjcyOTQwcC0xLAotICAgIDB4MS5iZmZmZmVwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjUKLSAgICAweDEuY2ZjNmQwMTFhMGU1ZDBmY2ViYjU0YjVmZWQ2NzI5NDBwLTEsCi0gICAgLTB4MS5iZmZmZmVwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjYKLSAgICAweDEuY2ZjNmNmYTUyYWQ5ZjYyZDZkNTQyM2NhODMzOWEwMGFwLTEsCi0gICAgMHgxLmMwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY3Ci0gICAgMHgxLmNmYzZjZmE1MmFkOWY2MmQ2ZDU0MjNjYTgzMzlhMDBhcC0xLAotICAgIC0weDEuYzBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjgKLSAgICAweDEuY2ZjNmNmMzhiNGNkYTc2YzNiMDliMTdlOWRlYjE5ZWFwLTEsCi0gICAgMHgxLmMwMDAwMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDQ2OQotICAgIDB4MS5jZmM2Y2YzOGI0Y2RhNzZjM2IwOWIxN2U5ZGViMTllYXAtMSwKLSAgICAtMHgxLmMwMDAwMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDQ3MAotICAgIDB4MS44YmIxMDZlYWM3Yzc1ZDMzZmJiMTk0NDYzMTNlY2MyZnAtMSwKLSAgICAweDEuNWZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDcxCi0gICAgMHgxLjhiYjEwNmVhYzdjNzVkMzNmYmIxOTQ0NjMxM2VjYzJmcC0xLAotICAgIC0weDEuNWZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDcyCi0gICAgMHgxLjhiYjEwNWE1ZGM5MDA2MThmODBmYTUxZDMwM2M2OXAtMSwKLSAgICAweDEuNjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzMKLSAgICAweDEuOGJiMTA1YTVkYzkwMDYxOGY4MGZhNTFkMzAzYzY5cC0xLAotICAgIC0weDEuNjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzQKLSAgICAweDEuOGJiMTA0NjBmMTU3MjM0Y2VlYzdkOTY0NGExYTc4ZTVwLTEsCi0gICAgMHgxLjYwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ3NQotICAgIDB4MS44YmIxMDQ2MGYxNTcyMzRjZWVjN2Q5NjQ0YTFhNzhlNXAtMSwKLSAgICAtMHgxLjYwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ3NgotICAgIDB4MS43ZWY0OGI5YTZmZDVjMjRmNWVjMzk4MzllMTcyOWI3OHAtMiwKLSAgICAweDEuMmZmZmZlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzcKLSAgICAweDEuN2VmNDhiOWE2ZmQ1YzI0ZjVlYzM5ODM5ZTE3MjliNzhwLTIsCi0gICAgLTB4MS4yZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDQ3OAotICAgIDB4MS43ZWY0ODQyZjBiY2NkNjBkNGE1MDFkYzhiYzRiNTdiM3AtMiwKLSAgICAweDEuMzBwMAotICB9LAotICB7IC8vIEVudHJ5IDQ3OQotICAgIDB4MS43ZWY0ODQyZjBiY2NkNjBkNGE1MDFkYzhiYzRiNTdiM3AtMiwKLSAgICAtMHgxLjMwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODAKLSAgICAweDEuN2VmNDdjYzNhN2JkZWRmOTI1MjA3NDI2M2Q4YTQ1OTZwLTIsCi0gICAgMHgxLjMwMDAwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDgxCi0gICAgMHgxLjdlZjQ3Y2MzYTdiZGVkZjkyNTIwNzQyNjNkOGE0NTk2cC0yLAotICAgIC0weDEuMzAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODIKLSAgICAtMHgxLjg2M2VmNTA4NWJjYzM1OGQyYWU4NTI1YmYzOWYwYzQwcC0xLAotICAgIDB4MS4zN2ZmZmVwMQotICB9LAotICB7IC8vIEVudHJ5IDQ4MwotICAgIC0weDEuODYzZWY1MDg1YmNjMzU4ZDJhZTg1MjViZjM5ZjBjNDBwLTEsCi0gICAgLTB4MS4zN2ZmZmVwMQotICB9LAotICB7IC8vIEVudHJ5IDQ4NAotICAgIC0weDEuODYzZWZhMzYxZGMyNTJiY2ExZWFlZWQzOTc0OWJlZDdwLTEsCi0gICAgMHgxLjM4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODUKLSAgICAtMHgxLjg2M2VmYTM2MWRjMjUyYmNhMWVhZWVkMzk3NDliZWQ3cC0xLAotICAgIC0weDEuMzhwMQotICB9LAotICB7IC8vIEVudHJ5IDQ4NgotICAgIC0weDEuODYzZWZmNjNkZmEwMGJmYzc1OGJhZjQ2OTQ2OWQ3NDFwLTEsCi0gICAgMHgxLjM4MDAwMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDg3Ci0gICAgLTB4MS44NjNlZmY2M2RmYTAwYmZjNzU4YmFmNDY5NDY5ZDc0MXAtMSwKLSAgICAtMHgxLjM4MDAwMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDg4Ci0gICAgMHgxLmZlZjJiMmQwYTEwZTI3MzljNTY2OTM2NDgwYTE0NzlicC0xLAotICAgIDB4MS4wNjljOGNwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODkKLSAgICAweDEuZmVmMmIyZDBhMTBlMjczOWM1NjY5MzY0ODBhMTQ3OWJwLTEsCi0gICAgLTB4MS4wNjljOGNwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTAKLSAgICAweDEuZmJjYmU2OGRkMTBiYWQwYTIyOWNjYmI1ODBjYzU0MzZwLTEsCi0gICAgMHgxLjA2OWM4Y3AtMwotICB9LAotICB7IC8vIEVudHJ5IDQ5MQotICAgIDB4MS5mYmNiZTY4ZGQxMGJhZDBhMjI5Y2NiYjU4MGNjNTQzNnAtMSwKLSAgICAtMHgxLjA2OWM4Y3AtMwotICB9LAotICB7IC8vIEVudHJ5IDQ5MgotICAgIDB4MS5mNjhlZWJlZjcyZTdmNjEyNmIzZjNkZGU2NDZhNzU1Y3AtMSwKLSAgICAweDEuODllYWQycC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNDkzCi0gICAgMHgxLmY2OGVlYmVmNzJlN2Y2MTI2YjNmM2RkZTY0NmE3NTVjcC0xLAotICAgIC0weDEuODllYWQycC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk0Ci0gICAgMHgxLmVmNDE0NTlkMmU5MGVhMWI3ZmFhZDdmYWJkMWZkNDQ0cC0xLAotICAgIDB4MS4wNjljOGNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTUKLSAgICAweDEuZWY0MTQ1OWQyZTkwZWExYjdmYWFkN2ZhYmQxZmQ0NDRwLTEsCi0gICAgLTB4MS4wNjljOGNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTYKLSAgICAweDEuZTVlYWEyM2EyN2ZlOGQ2ODkwYTNlZGFjZTFjNjE5OThwLTEsCi0gICAgMHgxLjQ4NDNiMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDQ5NwotICAgIDB4MS5lNWVhYTIzYTI3ZmU4ZDY4OTBhM2VkYWNlMWM2MTk5OHAtMSwKLSAgICAtMHgxLjQ4NDNiMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDQ5OAotICAgIDB4MS5kYTk0ZDRiOTljM2E5YTVlMGQxZmM4NmQ1MzM2OWE4NHAtMSwKLSAgICAweDEuODllYWQ0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk5Ci0gICAgMHgxLmRhOTRkNGI5OWMzYTlhNWUwZDFmYzg2ZDUzMzY5YTg0cC0xLAotICAgIC0weDEuODllYWQ0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNTAwCi0gICAgMHgxLmNkNGJjOWFmYzAxMjMwYjJmOTgyZjY5NjhkYWI3ZjA1cC0xLAotICAgIDB4MS5jYjkxZjhwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDEKLSAgICAweDEuY2Q0YmM5YWZjMDEyMzBiMmY5ODJmNjk2OGRhYjdmMDVwLTEsCi0gICAgLTB4MS5jYjkxZjhwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDIKLSAgICAweDEuYmUxZDdhZGYwNzdkZWYyYTM2MGZlYzIzZGJiY2VmMDlwLTEsCi0gICAgMHgxLjA2OWM4ZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDUwMwotICAgIDB4MS5iZTFkN2FkZjA3N2RlZjJhMzYwZmVjMjNkYmJjZWYwOXAtMSwKLSAgICAtMHgxLjA2OWM4ZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDUwNAotICAgIDB4MS5hZDE5ZTA4NDdkMjVmM2FhMTQyMjg5ZGFiNTU3YmY5NnAtMSwKLSAgICAweDEuMjc3MDIwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA1Ci0gICAgMHgxLmFkMTllMDg0N2QyNWYzYWExNDIyODlkYWI1NTdiZjk2cC0xLAotICAgIC0weDEuMjc3MDIwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA2Ci0gICAgMHgxLjlhNTJlMDhiMTkxYmQ1NTUxMmM4MzY1MDc0ZjE5ODdmcC0xLAotICAgIDB4MS40ODQzYjJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDcKLSAgICAweDEuOWE1MmUwOGIxOTFiZDU1NTEyYzgzNjUwNzRmMTk4N2ZwLTEsCi0gICAgLTB4MS40ODQzYjJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDgKLSAgICAweDEuODVkYzNiYjdjMmU5YWJiNWNjY2I2ZDk2ZDEyZDM5YzRwLTEsCi0gICAgMHgxLjY5MTc0NHAtMQotICB9LAotICB7IC8vIEVudHJ5IDUwOQotICAgIDB4MS44NWRjM2JiN2MyZTlhYmI1Y2NjYjZkOTZkMTJkMzljNHAtMSwKLSAgICAtMHgxLjY5MTc0NHAtMQotICB9LAotICB7IC8vIEVudHJ5IDUxMAotICAgIDB4MS42ZmNiNzhlMWNkNjVkMmU0ZmRlNzExOGNhYWM3OWQ2ZHAtMSwKLSAgICAweDEuODllYWQ2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTExCi0gICAgMHgxLjZmY2I3OGUxY2Q2NWQyZTRmZGU3MTE4Y2FhYzc5ZDZkcC0xLAotICAgIC0weDEuODllYWQ2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTEyCi0gICAgMHgxLjU4MzdjZTRkYzgzNWQ0YTU0NTRlYzBhMWJiMzk0MDgxcC0xLAotICAgIDB4MS5hYWJlNjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTMKLSAgICAweDEuNTgzN2NlNGRjODM1ZDRhNTQ1NGVjMGExYmIzOTQwODFwLTEsCi0gICAgLTB4MS5hYWJlNjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTQKLSAgICAweDEuM2YzYTA5NDI3OTY2ZTk1MTg4MDJkZWUzYmY0NDNhOTVwLTEsCi0gICAgMHgxLmNiOTFmYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDUxNQotICAgIDB4MS4zZjNhMDk0Mjc5NjZlOTUxODgwMmRlZTNiZjQ0M2E5NXAtMSwKLSAgICAtMHgxLmNiOTFmYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDUxNgotICAgIDB4MS4yNGVjNzNmMWFlZWY0OTQwYmI4ZGExOWE4MmJiYzQ5ZnAtMSwKLSAgICAweDEuZWM2NThjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTE3Ci0gICAgMHgxLjI0ZWM3M2YxYWVlZjQ5NDBiYjhkYTE5YTgyYmJjNDlmcC0xLAotICAgIC0weDEuZWM2NThjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTE4Ci0gICAgMHgxLjA5NmFiYjg2MmY5YmQ1NTE1OTgyYzI4MThjMzMyZmY5cC0xLAotICAgIDB4MS4wNjljOGVwMAotICB9LAotICB7IC8vIEVudHJ5IDUxOQotICAgIDB4MS4wOTZhYmI4NjJmOWJkNTUxNTk4MmMyODE4YzMzMmZmOXAtMSwKLSAgICAtMHgxLjA2OWM4ZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIwCi0gICAgMHgxLmQ5YTM5YzBkZGRjNjU0YzcxN2UzMDM2ZGE1ZGQ2ODVjcC0yLAotICAgIDB4MS4xNzA2NTZwMAotICB9LAotICB7IC8vIEVudHJ5IDUyMQotICAgIDB4MS5kOWEzOWMwZGRkYzY1NGM3MTdlMzAzNmRhNWRkNjg1Y3AtMiwKLSAgICAtMHgxLjE3MDY1NnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIyCi0gICAgMHgxLjllN2Y4MTg0MGMwYmJkMGYxYjEzNzMzMDYxMDYyZDM0cC0yLAotICAgIDB4MS4yNzcwMWVwMAotICB9LAotICB7IC8vIEVudHJ5IDUyMwotICAgIDB4MS45ZTdmODE4NDBjMGJiZDBmMWIxMzczMzA2MTA2MmQzNHAtMiwKLSAgICAtMHgxLjI3NzAxZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI0Ci0gICAgMHgxLjYxYTc1ZTJkZWI1OTY3MzFjOGNkNDVlM2Q5Nzk0NTI2cC0yLAotICAgIDB4MS4zN2Q5ZTZwMAotICB9LAotICB7IC8vIEVudHJ5IDUyNQotICAgIDB4MS42MWE3NWUyZGViNTk2NzMxYzhjZDQ1ZTNkOTc5NDUyNnAtMiwKLSAgICAtMHgxLjM3ZDllNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI2Ci0gICAgMHgxLjIzNWIzMzdiMDkxY2RkOGFjMDYzOTBhYmM2ODE2YjgycC0yLAotICAgIDB4MS40ODQzYWVwMAotICB9LAotICB7IC8vIEVudHJ5IDUyNwotICAgIDB4MS4yMzViMzM3YjA5MWNkZDhhYzA2MzkwYWJjNjgxNmI4MnAtMiwKLSAgICAtMHgxLjQ4NDNhZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI4Ci0gICAgMHgxLmM3YjkxNDZkNmQxMDgyNGZmNjUyZGMzOTBiYTJkN2Y5cC0zLAotICAgIDB4MS41OGFkNzZwMAotICB9LAotICB7IC8vIEVudHJ5IDUyOQotICAgIDB4MS5jN2I5MTQ2ZDZkMTA4MjRmZjY1MmRjMzkwYmEyZDdmOXAtMywKLSAgICAtMHgxLjU4YWQ3NnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMwCi0gICAgMHgxLjQ2ZGM1YjJmMWRlOTc3ZWZmZjdjMjc4YjVhZGIyYTc1cC0zLAotICAgIDB4MS42OTE3M2VwMAotICB9LAotICB7IC8vIEVudHJ5IDUzMQotICAgIDB4MS40NmRjNWIyZjFkZTk3N2VmZmY3YzI3OGI1YWRiMmE3NXAtMywKLSAgICAtMHgxLjY5MTczZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMyCi0gICAgMHgxLjg5NGY5M2VmNDljNDU3NTgwMGJiZDY0NmEzYTMxZDJhcC00LAotICAgIDB4MS43OTgxMDZwMAotICB9LAotICB7IC8vIEVudHJ5IDUzMwotICAgIDB4MS44OTRmOTNlZjQ5YzQ1NzU4MDBiYmQ2NDZhM2EzMWQyYXAtNCwKLSAgICAtMHgxLjc5ODEwNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM0Ci0gICAgMHgxLjA2OTE2NGUzZjVjZWU5NGQ4NjVmYjUyZTMxNmRmZjZicC01LAotICAgIDB4MS44OWVhY2VwMAotICB9LAotICB7IC8vIEVudHJ5IDUzNQotICAgIDB4MS4wNjkxNjRlM2Y1Y2VlOTRkODY1ZmI1MmUzMTZkZmY2YnAtNSwKLSAgICAtMHgxLjg5ZWFjZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM2Ci0gICAgLTB4MS4wNjkwOTNlZWMwZWQwNjZlYzgzZGQwMzQ0OThlZjhiZnAtNSwKLSAgICAweDEuOWE1NDk2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzcKLSAgICAtMHgxLjA2OTA5M2VlYzBlZDA2NmVjODNkZDAzNDQ5OGVmOGJmcC01LAotICAgIC0weDEuOWE1NDk2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzgKLSAgICAtMHgxLjg5NGYyYmUyOTc5ZGQ5Y2VkODNjY2M2MGNmNDljZDQ0cC00LAotICAgIDB4MS5hYWJlNWVwMAotICB9LAotICB7IC8vIEVudHJ5IDUzOQotICAgIC0weDEuODk0ZjJiZTI5NzlkZDljZWQ4M2NjYzYwY2Y0OWNkNDRwLTQsCi0gICAgLTB4MS5hYWJlNWVwMAotICB9LAotICB7IC8vIEVudHJ5IDU0MAotICAgIC0weDEuNDZkYzI3OTY3MzUxOTVhMTVjODBlNWI3MTllMmZjNDJwLTMsCi0gICAgMHgxLmJiMjgyNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQxCi0gICAgLTB4MS40NmRjMjc5NjczNTE5NWExNWM4MGU1YjcxOWUyZmM0MnAtMywKLSAgICAtMHgxLmJiMjgyNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQyCi0gICAgLTB4MS5jN2I4ZTE3OGI3ZThjMDFkOWYzMjA0NjZjYzdhNjhkNHAtMywKLSAgICAweDEuY2I5MWVlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDMKLSAgICAtMHgxLmM3YjhlMTc4YjdlOGMwMWQ5ZjMyMDQ2NmNjN2E2OGQ0cC0zLAotICAgIC0weDEuY2I5MWVlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDQKLSAgICAtMHgxLjIzNWIxYTZkNzY3ZTRiMzYyYzY0NTcxYWM5N2I0YTFjcC0yLAotICAgIDB4MS5kYmZiYjZwMAotICB9LAotICB7IC8vIEVudHJ5IDU0NQotICAgIC0weDEuMjM1YjFhNmQ3NjdlNGIzNjJjNjQ1NzFhYzk3YjRhMWNwLTIsCi0gICAgLTB4MS5kYmZiYjZwMAotICB9LAotICB7IC8vIEVudHJ5IDU0NgotICAgIC0weDEuNjFhNzQ1YTc3YjdlODNjMmY4YTJmOWIwOTFlODlhYWFwLTIsCi0gICAgMHgxLmVjNjU3ZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ3Ci0gICAgLTB4MS42MWE3NDVhNzdiN2U4M2MyZjhhMmY5YjA5MWU4OWFhYXAtMiwKLSAgICAtMHgxLmVjNjU3ZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ4Ci0gICAgLTB4MS45ZTdmNjk5ZThiOWFhZjhlZDUxYzcxYzhmNzNiMGI3NHAtMiwKLSAgICAweDEuZmNjZjQ2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDkKLSAgICAtMHgxLjllN2Y2OTllOGI5YWFmOGVkNTFjNzFjOGY3M2IwYjc0cC0yLAotICAgIC0weDEuZmNjZjQ2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTAKLSAgICAtMHgxLmQ5YTM4YmZhMzE5NWJhMWNhYTdmYjY5YmMxZDA0ZTQycC0yLAotICAgIDB4MS4wNjljODhwMQotICB9LAotICB7IC8vIEVudHJ5IDU1MQotICAgIC0weDEuZDlhMzhiZmEzMTk1YmExY2FhN2ZiNjliYzFkMDRlNDJwLTIsCi0gICAgLTB4MS4wNjljODhwMQotICB9LAotICB7IC8vIEVudHJ5IDU1MgotICAgIC0weDEuMDk2YWIzYzU1YzkxZjM2ZTIzNTllZDFjNWE4MzQyZGZwLTEsCi0gICAgMHgxLjBlZDE2Y3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUzCi0gICAgLTB4MS4wOTZhYjNjNTVjOTFmMzZlMjM1OWVkMWM1YTgzNDJkZnAtMSwKLSAgICAtMHgxLjBlZDE2Y3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU0Ci0gICAgLTB4MS4yNGVjNmM4MjA2ZTc0NDMyMmQ5OWY0N2U5ZTQxYmVjZXAtMSwKLSAgICAweDEuMTcwNjUwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTUKLSAgICAtMHgxLjI0ZWM2YzgyMDZlNzQ0MzIyZDk5ZjQ3ZTllNDFiZWNlcC0xLAotICAgIC0weDEuMTcwNjUwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTYKLSAgICAtMHgxLjNmM2EwMDliODJiNWI4MjM0ZTEyOTZkZDczY2ZmNDlkcC0xLAotICAgIDB4MS4xZjNiMzRwMQotICB9LAotICB7IC8vIEVudHJ5IDU1NwotICAgIC0weDEuM2YzYTAwOWI4MmI1YjgyMzRlMTI5NmRkNzNjZmY0OWRwLTEsCi0gICAgLTB4MS4xZjNiMzRwMQotICB9LAotICB7IC8vIEVudHJ5IDU1OAotICAgIC0weDEuNTgzN2M0YTE4NGNjZjdlZDU3YzE4OWYyYWRkZjMyYzVwLTEsCi0gICAgMHgxLjI3NzAxOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU5Ci0gICAgLTB4MS41ODM3YzRhMTg0Y2NmN2VkNTdjMTg5ZjJhZGRmMzJjNXAtMSwKLSAgICAtMHgxLjI3NzAxOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYwCi0gICAgLTB4MS42ZmNiNmU2Njg1ZTcyZmI0MDc0ZTcwY2QzMTYyZDNiYXAtMSwKLSAgICAweDEuMmZhNGZjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjEKLSAgICAtMHgxLjZmY2I2ZTY2ODVlNzJmYjQwNzRlNzBjZDMxNjJkM2JhcC0xLAotICAgIC0weDEuMmZhNGZjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjIKLSAgICAtMHgxLjg1ZGMzMGE3OWYyNjc1NGFiMTM3MDMzOGVlN2JmZDExcC0xLAotICAgIDB4MS4zN2Q5ZTBwMQotICB9LAotICB7IC8vIEVudHJ5IDU2MwotICAgIC0weDEuODVkYzMwYTc5ZjI2NzU0YWIxMzcwMzM4ZWU3YmZkMTFwLTEsCi0gICAgLTB4MS4zN2Q5ZTBwMQotICB9LAotICB7IC8vIEVudHJ5IDU2NAotICAgIC0weDEuOWE1MmQ1MjNiMTUzMmU0ZWQ0NzdlMjdkYzYwNTFjMTJwLTEsCi0gICAgMHgxLjQwMGVjNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY1Ci0gICAgLTB4MS45YTUyZDUyM2IxNTMyZTRlZDQ3N2UyN2RjNjA1MWMxMnAtMSwKLSAgICAtMHgxLjQwMGVjNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY2Ci0gICAgLTB4MS5hZDE5ZDUwNjY0YWJmMGMwMTQxMTM3ZDJjYTUwOWYyMXAtMSwKLSAgICAweDEuNDg0M2E4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjcKLSAgICAtMHgxLmFkMTlkNTA2NjRhYmYwYzAxNDExMzdkMmNhNTA5ZjIxcC0xLAotICAgIC0weDEuNDg0M2E4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjgKLSAgICAtMHgxLmJlMWQ2ZjhkNTE3ZGI1YzJjZjdkZTBmYWYwODA4ZDMwcC0xLAotICAgIDB4MS41MDc4OGNwMQotICB9LAotICB7IC8vIEVudHJ5IDU2OQotICAgIC0weDEuYmUxZDZmOGQ1MTdkYjVjMmNmN2RlMGZhZjA4MDhkMzBwLTEsCi0gICAgLTB4MS41MDc4OGNwMQotICB9LAotICB7IC8vIEVudHJ5IDU3MAotICAgIC0weDEuY2Q0YmJlY2Y3ZjI3MDVkNGZkMDBkZDQ2Mzc4MGY0NWVwLTEsCi0gICAgMHgxLjU4YWQ3MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcxCi0gICAgLTB4MS5jZDRiYmVjZjdmMjcwNWQ0ZmQwMGRkNDYzNzgwZjQ1ZXAtMSwKLSAgICAtMHgxLjU4YWQ3MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcyCi0gICAgLTB4MS5kYTk0Y2E5MTVkYTNjZGQxZmZmODM5ZDg1ZWVjMzllMnAtMSwKLSAgICAweDEuNjBlMjU0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzMKLSAgICAtMHgxLmRhOTRjYTkxNWRhM2NkZDFmZmY4MzlkODVlZWMzOWUycC0xLAotICAgIC0weDEuNjBlMjU0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzQKLSAgICAtMHgxLmU1ZWE5OTExNmIzOTM2MWFjOTI2ZGQ5ZmRjMjA4OWQxcC0xLAotICAgIDB4MS42OTE3MzhwMQotICB9LAotICB7IC8vIEVudHJ5IDU3NQotICAgIC0weDEuZTVlYTk5MTE2YjM5MzYxYWM5MjZkZDlmZGMyMDg5ZDFwLTEsCi0gICAgLTB4MS42OTE3MzhwMQotICB9LAotICB7IC8vIEVudHJ5IDU3NgotICAgIC0weDEuZWY0MTNkYmJkYTI4NTlmZmIwZDFhYjg0MzQyZmQyMzVwLTEsCi0gICAgMHgxLjcxNGMxY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc3Ci0gICAgLTB4MS5lZjQxM2RiYmRhMjg1OWZmYjBkMWFiODQzNDJmZDIzNXAtMSwKLSAgICAtMHgxLjcxNGMxY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc4Ci0gICAgLTB4MS5mNjhlZTViNWJmMzU2YjEwMjMwOTQ0YTE4ZTcwOTI1Y3AtMSwKLSAgICAweDEuNzk4MXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc5Ci0gICAgLTB4MS5mNjhlZTViNWJmMzU2YjEwMjMwOTQ0YTE4ZTcwOTI1Y3AtMSwKLSAgICAtMHgxLjc5ODFwMQotICB9LAotICB7IC8vIEVudHJ5IDU4MAotICAgIC0weDEuZmJjYmUyMzI5NmZjNjFiOTZmMzgyZjM1ZWExNWM3NjhwLTEsCi0gICAgMHgxLjgxYjVlNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgxCi0gICAgLTB4MS5mYmNiZTIzMjk2ZmM2MWI5NmYzODJmMzVlYTE1Yzc2OHAtMSwKLSAgICAtMHgxLjgxYjVlNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgyCi0gICAgLTB4MS5mZWYyYjA4OTQzMTk3Y2QzYThiYTg2MTA5NTIyN2M0OHAtMSwKLSAgICAweDEuODllYWM4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODMKLSAgICAtMHgxLmZlZjJiMDg5NDMxOTdjZDNhOGJhODYxMDk1MjI3YzQ4cC0xLAotICAgIC0weDEuODllYWM4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODQKLSAgICAweDEuZWY0MTQ4OWZjMmZlODAxYTZmYzhhZTc5MTQzOGViNzhwLTEsCi0gICAgLTB4MS44MWI1ZWVwMgotICB9LAotICB7IC8vIEVudHJ5IDU4NQotICAgIDB4MS5lZjQxNDg5ZmMyZmU4MDFhNmZjOGFlNzkxNDM4ZWI3OHAtMSwKLSAgICAweDEuODFiNWVlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODYKLSAgICAweDEuYmUxZDg0OWVjNjQ5Yjc5NzMyMGU5ODVkMGI4MmFlODVwLTEsCi0gICAgLTB4MS43MTRjMjZwMgotICB9LAotICB7IC8vIEVudHJ5IDU4NwotICAgIDB4MS5iZTFkODQ5ZWM2NDliNzk3MzIwZTk4NWQwYjgyYWU4NXAtMSwKLSAgICAweDEuNzE0YzI2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODgKLSAgICAweDEuNmZjYjhjNDRiZDMwZGQ2NjgxNDg2MDU5NjliMWMxNjFwLTEsCi0gICAgLTB4MS42MGUyNWVwMgotICB9LAotICB7IC8vIEVudHJ5IDU4OQotICAgIDB4MS42ZmNiOGM0NGJkMzBkZDY2ODE0ODYwNTk2OWIxYzE2MXAtMSwKLSAgICAweDEuNjBlMjVlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTAKLSAgICAweDEuMDk2YWQ4N2MzMjY2MjJjNDJkZTM0ZjkyODE0Y2ZhODRwLTEsCi0gICAgLTB4MS41MDc4OTZwMgotICB9LAotICB7IC8vIEVudHJ5IDU5MQotICAgIDB4MS4wOTZhZDg3YzMyNjYyMmM0MmRlMzRmOTI4MTRjZmE4NHAtMSwKLSAgICAweDEuNTA3ODk2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTIKLSAgICAweDEuMjM1Yjc0NmEyYTJlZmYyYmY2NDBkZDhjMDRkMzVhNWJwLTIsCi0gICAgLTB4MS40MDBlY2VwMgotICB9LAotICB7IC8vIEVudHJ5IDU5MwotICAgIDB4MS4yMzViNzQ2YTJhMmVmZjJiZjY0MGRkOGMwNGQzNWE1YnAtMiwKLSAgICAweDEuNDAwZWNlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTQKLSAgICAweDEuMDY5MzgyN2I0NmNlZTNiNjYxYWMxNzExNGI1ZmUwZmJwLTUsCi0gICAgLTB4MS4yZmE1MDZwMgotICB9LAotICB7IC8vIEVudHJ5IDU5NQotICAgIDB4MS4wNjkzODI3YjQ2Y2VlM2I2NjFhYzE3MTE0YjVmZTBmYnAtNSwKLSAgICAweDEuMmZhNTA2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTYKLSAgICAtMHgxLmM3Yjg1ZDY2OGUyYWJjYzQ2NTQyY2E4NTI3ZjBiODAxcC0zLAotICAgIC0weDEuMWYzYjNlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTcKLSAgICAtMHgxLmM3Yjg1ZDY2OGUyYWJjYzQ2NTQyY2E4NTI3ZjBiODAxcC0zLAotICAgIDB4MS4xZjNiM2VwMgotICB9LAotICB7IC8vIEVudHJ5IDU5OAotICAgIC0weDEuZDlhMzQ4ZDRmNDM2M2JhNDU2MjExMGRiMDFlZTg0ZThwLTIsCi0gICAgLTB4MS4wZWQxNzZwMgotICB9LAotICB7IC8vIEVudHJ5IDU5OQotICAgIC0weDEuZDlhMzQ4ZDRmNDM2M2JhNDU2MjExMGRiMDFlZTg0ZThwLTIsCi0gICAgMHgxLjBlZDE3NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAwCi0gICAgLTB4MS41ODM3YWU4NTY5Yzk1ODQ2ZTYxNjRkOTYzNjU0NjEyMHAtMSwKLSAgICAtMHgxLmZjY2Y1YXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAxCi0gICAgLTB4MS41ODM3YWU4NTY5Yzk1ODQ2ZTYxNjRkOTYzNjU0NjEyMHAtMSwKLSAgICAweDEuZmNjZjVhcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDIKLSAgICAtMHgxLmFkMTljOTE4ODgzMDAwYjBiNzAyZWMwODBjZjAxMjJlcC0xLAotICAgIC0weDEuZGJmYmM4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDMKLSAgICAtMHgxLmFkMTljOTE4ODgzMDAwYjBiNzAyZWMwODBjZjAxMjJlcC0xLAotICAgIDB4MS5kYmZiYzhwMQotICB9LAotICB7IC8vIEVudHJ5IDYwNAotICAgIC0weDEuZTVlYTk0YjJjZjA3YWRkM2QwZDk1YWIzYTMwYWQ0YWJwLTEsCi0gICAgLTB4MS5iYjI4MzZwMQotICB9LAotICB7IC8vIEVudHJ5IDYwNQotICAgIC0weDEuZTVlYTk0YjJjZjA3YWRkM2QwZDk1YWIzYTMwYWQ0YWJwLTEsCi0gICAgMHgxLmJiMjgzNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA2Ci0gICAgLTB4MS5mZWYyYjAyOTA4NTU5ZjkyZGU4OTJkMjQwYTJiMGI0OXAtMSwKLSAgICAtMHgxLjlhNTRhNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA3Ci0gICAgLTB4MS5mZWYyYjAyOTA4NTU5ZjkyZGU4OTJkMjQwYTJiMGI0OXAtMSwKLSAgICAweDEuOWE1NGE0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDgKLSAgICAtMHgxLmY2OGVmMzc5MmU1OTJjM2NlZmJjZTFkNWRlZDY0YTkycC0xLAotICAgIC0weDEuNzk4MTEycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDkKLSAgICAtMHgxLmY2OGVmMzc5MmU1OTJjM2NlZmJjZTFkNWRlZDY0YTkycC0xLAotICAgIDB4MS43OTgxMTJwMQotICB9LAotICB7IC8vIEVudHJ5IDYxMAotICAgIC0weDEuY2Q0YmRhOTQzZWVhMTM2MzBmOGU1MDhmODc0NGYyZjJwLTEsCi0gICAgLTB4MS41OGFkODBwMQotICB9LAotICB7IC8vIEVudHJ5IDYxMQotICAgIC0weDEuY2Q0YmRhOTQzZWVhMTM2MzBmOGU1MDhmODc0NGYyZjJwLTEsCi0gICAgMHgxLjU4YWQ4MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEyCi0gICAgLTB4MS44NWRjNTRmNDlmMzI0YmRmYzcxZDU3NDk0ODNiMzMxOHAtMSwKLSAgICAtMHgxLjM3ZDllZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEzCi0gICAgLTB4MS44NWRjNTRmNDlmMzI0YmRmYzcxZDU3NDk0ODNiMzMxOHAtMSwKLSAgICAweDEuMzdkOWVlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTQKLSAgICAtMHgxLjI0ZWM5M2UwNGQ0YmRiNTRlMjBiZWFmMzgzNTE5YWY4cC0xLAotICAgIC0weDEuMTcwNjVjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTUKLSAgICAtMHgxLjI0ZWM5M2UwNGQ0YmRiNTRlMjBiZWFmMzgzNTE5YWY4cC0xLAotICAgIDB4MS4xNzA2NWNwMQotICB9LAotICB7IC8vIEVudHJ5IDYxNgotICAgIC0weDEuNjFhNzk4M2Q0YzE2YzQ1MWI2OGJmMmY1YjcwZjNiNmFwLTIsCi0gICAgLTB4MS5lYzY1OTRwMAotICB9LAotICB7IC8vIEVudHJ5IDYxNwotICAgIC0weDEuNjFhNzk4M2Q0YzE2YzQ1MWI2OGJmMmY1YjcwZjNiNmFwLTIsCi0gICAgMHgxLmVjNjU5NHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE4Ci0gICAgLTB4MS44OTUwNGE4ZGU2YzllY2FjNjYzZTY3NTgzY2FiNDdlOHAtNCwKLSAgICAtMHgxLmFhYmU3MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE5Ci0gICAgLTB4MS44OTUwNGE4ZGU2YzllY2FjNjYzZTY3NTgzY2FiNDdlOHAtNCwKLSAgICAweDEuYWFiZTcwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjAKLSAgICAweDEuNDZkYmVjOWVhM2E1ZjA4YmE3M2FhNjllN2UyMmRlMWNwLTMsCi0gICAgLTB4MS42OTE3NGNwMAotICB9LAotICB7IC8vIEVudHJ5IDYyMQotICAgIDB4MS40NmRiZWM5ZWEzYTVmMDhiYTczYWE2OWU3ZTIyZGUxY3AtMywKLSAgICAweDEuNjkxNzRjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjIKLSAgICAweDEuOWU3ZjVjZjA3NWQxZWM0ZWY2OWM5YzY3YjYyYzI3Y2JwLTIsCi0gICAgLTB4MS4yNzcwMjhwMAotICB9LAotICB7IC8vIEVudHJ5IDYyMwotICAgIDB4MS45ZTdmNWNmMDc1ZDFlYzRlZjY5YzljNjdiNjJjMjdjYnAtMiwKLSAgICAweDEuMjc3MDI4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjQKLSAgICAweDEuM2YzOWZjYzAxNzY1M2QyNjM2ODM3YTU1ZmRmNmQyZDRwLTEsCi0gICAgLTB4MS5jYjkyMGFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjUKLSAgICAweDEuM2YzOWZjYzAxNzY1M2QyNjM2ODM3YTU1ZmRmNmQyZDRwLTEsCi0gICAgMHgxLmNiOTIwYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDYyNgotICAgIDB4MS45YTUyZDVjNzAwZGFhM2RjOGNmOGY1YTcxZjJkZjI4OXAtMSwKLSAgICAtMHgxLjQ4NDNjNHAtMQotICB9LAotICB7IC8vIEVudHJ5IDYyNwotICAgIDB4MS45YTUyZDVjNzAwZGFhM2RjOGNmOGY1YTcxZjJkZjI4OXAtMSwKLSAgICAweDEuNDg0M2M0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI4Ci0gICAgMHgxLmRhOTRjZDM4M2RkN2EzYjkxYTJmYzg4ZmY5MDVhNmEwcC0xLAotICAgIC0weDEuODllYWZjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI5Ci0gICAgMHgxLmRhOTRjZDM4M2RkN2EzYjkxYTJmYzg4ZmY5MDVhNmEwcC0xLAotICAgIDB4MS44OWVhZmNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzAKLSAgICAweDEuZmJjYmUzZGU1OGU2NmMzMjgzYmM4MTBkMTZjNDU4MzNwLTEsCi0gICAgLTB4MS4wNjljZTBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzEKLSAgICAweDEuZmJjYmUzZGU1OGU2NmMzMjgzYmM4MTBkMTZjNDU4MzNwLTEsCi0gICAgMHgxLjA2OWNlMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDYzMgotICAgIDB4MS5mYmNiZTkzZDQ4NTYzZDUxYjZlOWQ2ZWZkYjYyNDk1Y3AtMSwKLSAgICAweDEuMDY5YzM4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNjMzCi0gICAgMHgxLmZiY2JlOTNkNDg1NjNkNTFiNmU5ZDZlZmRiNjI0OTVjcC0xLAotICAgIC0weDEuMDY5YzM4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM0Ci0gICAgMHgxLmRhOTRkY2ZiMWNkMTU4NTNjZTg0OGZmYjAyNjRhZDA4cC0xLAotICAgIDB4MS44OWVhYThwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzUKLSAgICAweDEuZGE5NGRjZmIxY2QxNTg1M2NlODQ4ZmZiMDI2NGFkMDhwLTEsCi0gICAgLTB4MS44OWVhYThwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzYKLSAgICAweDEuOWE1MmVlZTVlMzUzNzdkNTU0YWNlODgxYmRjNDcyNWJwLTEsCi0gICAgMHgxLjQ4NDM5YXAtMQotICB9LAotICB7IC8vIEVudHJ5IDYzNwotICAgIDB4MS45YTUyZWVlNWUzNTM3N2Q1NTRhY2U4ODFiZGM0NzI1YnAtMSwKLSAgICAtMHgxLjQ4NDM5YXAtMQotICB9LAotICB7IC8vIEVudHJ5IDYzOAotICAgIDB4MS4zZjNhMWQ5NjU3ZmY2YWE0OThjNDZmNmZhYWYwM2I5MHAtMSwKLSAgICAweDEuY2I5MWUwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM5Ci0gICAgMHgxLjNmM2ExZDk2NTdmZjZhYTQ5OGM0NmY2ZmFhZjAzYjkwcC0xLAotICAgIC0weDEuY2I5MWUwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQwCi0gICAgMHgxLjllN2ZhNjE3YTFhM2E0MDBhN2Y1OWFhODc5MDg4ZTMxcC0yLAotICAgIDB4MS4yNzcwMTRwMAotICB9LAotICB7IC8vIEVudHJ5IDY0MQotICAgIDB4MS45ZTdmYTYxN2ExYTNhNDAwYTdmNTlhYTg3OTA4OGUzMXAtMiwKLSAgICAtMHgxLjI3NzAxNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQyCi0gICAgMHgxLjQ2ZGM4YTkxOWIyNzg0MGNkYTZlMThhMDc5ZGE0NTljcC0zLAotICAgIDB4MS42OTE3MzhwMAotICB9LAotICB7IC8vIEVudHJ5IDY0MwotICAgIDB4MS40NmRjOGE5MTliMjc4NDBjZGE2ZTE4YTA3OWRhNDU5Y3AtMywKLSAgICAtMHgxLjY5MTczOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ0Ci0gICAgLTB4MS44OTRmMGMwODcyNDE1NjYzYjdmOWU0ZTQ4MDFkZWFmMHAtNCwKLSAgICAweDEuYWFiZTVjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDUKLSAgICAtMHgxLjg5NGYwYzA4NzI0MTU2NjNiN2Y5ZTRlNDgwMWRlYWYwcC00LAotICAgIC0weDEuYWFiZTVjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDYKLSAgICAtMHgxLjYxYTc0ZDI5Nzc0YWU0ZTNiYzU1MzNhMmVhMDhhMTRhcC0yLAotICAgIDB4MS5lYzY1ODBwMAotICB9LAotICB7IC8vIEVudHJ5IDY0NwotICAgIC0weDEuNjFhNzRkMjk3NzRhZTRlM2JjNTUzM2EyZWEwOGExNGFwLTIsCi0gICAgLTB4MS5lYzY1ODBwMAotICB9LAotICB7IC8vIEVudHJ5IDY0OAotICAgIC0weDEuMjRlYzczMTFiZDdiMjI1NWY5Yjg5MGIzZmY1ODk5ZjRwLTEsCi0gICAgMHgxLjE3MDY1MnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ5Ci0gICAgLTB4MS4yNGVjNzMxMWJkN2IyMjU1ZjliODkwYjNmZjU4OTlmNHAtMSwKLSAgICAtMHgxLjE3MDY1MnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUwCi0gICAgLTB4MS44NWRjM2IwNmM0MzVmNTI0Yzg3M2Q5YjVlYmEzZGVmOHAtMSwKLSAgICAweDEuMzdkOWU0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTEKLSAgICAtMHgxLjg1ZGMzYjA2YzQzNWY1MjRjODczZDliNWViYTNkZWY4cC0xLAotICAgIC0weDEuMzdkOWU0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTIKLSAgICAtMHgxLmNkNGJjOTM5NDdlODY2NzFhYzdmMGVhY2Q5NTIxMzc3cC0xLAotICAgIDB4MS41OGFkNzZwMQotICB9LAotICB7IC8vIEVudHJ5IDY1MwotICAgIC0weDEuY2Q0YmM5Mzk0N2U4NjY3MWFjN2YwZWFjZDk1MjEzNzdwLTEsCi0gICAgLTB4MS41OGFkNzZwMQotICB9LAotICB7IC8vIEVudHJ5IDY1NAotICAgIC0weDEuZjY4ZWViZDNiOGYxMmY5NDMzZTZkNzIyNDk4OWMxMGVwLTEsCi0gICAgMHgxLjc5ODEwOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU1Ci0gICAgLTB4MS5mNjhlZWJkM2I4ZjEyZjk0MzNlNmQ3MjI0OTg5YzEwZXAtMSwKLSAgICAtMHgxLjc5ODEwOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU2Ci0gICAgLTB4MS5mZWYyYjJiOTFlNDAwMjFhMmZlZTc0ZmM2MTgxMjE1N3AtMSwKLSAgICAweDEuOWE1NDlhcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTcKLSAgICAtMHgxLmZlZjJiMmI5MWU0MDAyMWEyZmVlNzRmYzYxODEyMTU3cC0xLAotICAgIC0weDEuOWE1NDlhcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTgKLSAgICAtMHgxLmU1ZWFhMTRkODYxNjhiNjk5MThjMjJmMzcxNmE2N2VhcC0xLAotICAgIDB4MS5iYjI4MmNwMQotICB9LAotICB7IC8vIEVudHJ5IDY1OQotICAgIC0weDEuZTVlYWExNGQ4NjE2OGI2OTkxOGMyMmYzNzE2YTY3ZWFwLTEsCi0gICAgLTB4MS5iYjI4MmNwMQotICB9LAotICB7IC8vIEVudHJ5IDY2MAotICAgIC0weDEuYWQxOWRlZWFkMGVhZTJmNzJkMDQxNjVlMDllNGE0M2RwLTEsCi0gICAgMHgxLmRiZmJiZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYxCi0gICAgLTB4MS5hZDE5ZGVlYWQwZWFlMmY3MmQwNDE2NWUwOWU0YTQzZHAtMSwKLSAgICAtMHgxLmRiZmJiZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYyCi0gICAgLTB4MS41ODM3Y2MyMWRkYTQ0ZjNhYjdmZDk2ZjU3YzAxNGUxOXAtMSwKLSAgICAweDEuZmNjZjUwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjMKLSAgICAtMHgxLjU4MzdjYzIxZGRhNDRmM2FiN2ZkOTZmNTdjMDE0ZTE5cC0xLAotICAgIC0weDEuZmNjZjUwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjQKLSAgICAtMHgxLmQ5YTM5ZGYyMDcxMzlmOTllYmU5YjU2ZGFmYjIzNGI3cC0yLAotICAgIDB4MS4wZWQxNzBwMgotICB9LAotICB7IC8vIEVudHJ5IDY2NQotICAgIC0weDEuZDlhMzlkZjIwNzEzOWY5OWViZTliNTZkYWZiMjM0YjdwLTIsCi0gICAgLTB4MS4wZWQxNzBwMgotICB9LAotICB7IC8vIEVudHJ5IDY2NgotICAgIC0weDEuYzdiOTE4OTYzODEyOGJjMGFlMzNmZGYyNzI5Y2M5ODdwLTMsCi0gICAgMHgxLjFmM2IzOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY3Ci0gICAgLTB4MS5jN2I5MTg5NjM4MTI4YmMwYWUzM2ZkZjI3MjljYzk4N3AtMywKLSAgICAtMHgxLjFmM2IzOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY4Ci0gICAgMHgxLjA2OTA4MmUwNGIyNWU5ZDJlYTllMjYzYjUwZDA4YjM0cC01LAotICAgIDB4MS4yZmE1cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjkKLSAgICAweDEuMDY5MDgyZTA0YjI1ZTlkMmVhOWUyNjNiNTBkMDhiMzRwLTUsCi0gICAgLTB4MS4yZmE1cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzAKLSAgICAweDEuMjM1YjE4NjFmMjFhYTg2ZGNlMjU5ZTRlNWI0ZWYzOTVwLTIsCi0gICAgMHgxLjQwMGVjOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcxCi0gICAgMHgxLjIzNWIxODYxZjIxYWE4NmRjZTI1OWU0ZTViNGVmMzk1cC0yLAotICAgIC0weDEuNDAwZWM4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzIKLSAgICAweDEuMDk2YWFmNzAzNDE0ODUwNjJmNDQzYzgwYTkwYTNiZTNwLTEsCi0gICAgMHgxLjUwNzg5MHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjczCi0gICAgMHgxLjA5NmFhZjcwMzQxNDg1MDYyZjQ0M2M4MGE5MGEzYmUzcC0xLAotICAgIC0weDEuNTA3ODkwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzQKLSAgICAweDEuNmZjYjZhZTAzMTA3YmU0NThkMDczNjEzNzFlZmFiYjRwLTEsCi0gICAgMHgxLjYwZTI1OHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc1Ci0gICAgMHgxLjZmY2I2YWUwMzEwN2JlNDU4ZDA3MzYxMzcxZWZhYmI0cC0xLAotICAgIC0weDEuNjBlMjU4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzYKLSAgICAweDEuYmUxZDZkMTBkNWM4Y2VlYjhiZjlhZWI3YTlmNjkwYjlwLTEsCi0gICAgMHgxLjcxNGMyMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc3Ci0gICAgMHgxLmJlMWQ2ZDEwZDVjOGNlZWI4YmY5YWViN2E5ZjY5MGI5cC0xLAotICAgIC0weDEuNzE0YzIwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzgKLSAgICAweDEuZWY0MTNjNzJkOTg4YmI1MzkzNzk3NWU0ZmQ0ZmNjN2FwLTEsCi0gICAgMHgxLjgxYjVlOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc5Ci0gICAgMHgxLmVmNDEzYzcyZDk4OGJiNTM5Mzc5NzVlNGZkNGZjYzdhcC0xLAotICAgIC0weDEuODFiNWU4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODAKLSAgICAweDEuZmYwZmQyY2I1YTkyMjhjZmExZTAxNjA1ZDA2MjZjODRwLTEsCi0gICAgMHgxLmVmZmZmZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDY4MQotICAgIDB4MS5mZjBmZDJjYjVhOTIyOGNmYTFlMDE2MDVkMDYyNmM4NHAtMSwKLSAgICAtMHgxLmVmZmZmZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDY4MgotICAgIDB4MS5mZjBmZDJjOTZhZGZiYWQ1ZjkwNGE3MWIyZDIxMGEyYXAtMSwKLSAgICAweDEuZjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODMKLSAgICAweDEuZmYwZmQyYzk2YWRmYmFkNWY5MDRhNzFiMmQyMTBhMmFwLTEsCi0gICAgLTB4MS5mMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDY4NAotICAgIDB4MS5mZjBmZDJjNzdiMmQ0YWRkNDA1NjZlYzVhYTI0ZmM2ZXAtMSwKLSAgICAweDEuZjAwMDAycC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjg1Ci0gICAgMHgxLmZmMGZkMmM3N2IyZDRhZGQ0MDU2NmVjNWFhMjRmYzZlcC0xLAotICAgIC0weDEuZjAwMDAycC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjg2Ci0gICAgMHgxLmZjMjEwMDVkMjE2YTg5ZGU1NWIxOTIwOTZmYzZiN2JhcC0xLAotICAgIDB4MS5mN2ZmZmVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODcKLSAgICAweDEuZmMyMTAwNWQyMTZhODlkZTU1YjE5MjA5NmZjNmI3YmFwLTEsCi0gICAgLTB4MS5mN2ZmZmVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODgKLSAgICAweDEuZmMyMTAwNTU0NjdmZTU4YTIwMTkzMzk5YjNiYzBkZDJwLTEsCi0gICAgMHgxLmY4cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjg5Ci0gICAgMHgxLmZjMjEwMDU1NDY3ZmU1OGEyMDE5MzM5OWIzYmMwZGQycC0xLAotICAgIC0weDEuZjhwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTAKLSAgICAweDEuZmMyMTAwNGQ2Yjk1Mzk0NTY2N2Y4MDBmZjgxZGUwZWJwLTEsCi0gICAgMHgxLmY4MDAwMnAtNAotICB9LAotICB7IC8vIEVudHJ5IDY5MQotICAgIDB4MS5mYzIxMDA0ZDZiOTUzOTQ1NjY3ZjgwMGZmODFkZTBlYnAtMSwKLSAgICAtMHgxLmY4MDAwMnAtNAotICB9LAotICB7IC8vIEVudHJ5IDY5MgotICAgIDB4MS5mOTQ5ODRjNmZkZjFiZTYxNjg1MDlmZjFlMzVmNjJkZXAtMSwKLSAgICAweDEuNGJmZmZlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkzCi0gICAgMHgxLmY5NDk4NGM2ZmRmMWJlNjE2ODUwOWZmMWUzNWY2MmRlcC0xLAotICAgIC0weDEuNGJmZmZlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk0Ci0gICAgMHgxLmY5NDk4NGIyNTUyZTE5NDFlYzc2NmM2YTgyZWNlNGEzcC0xLAotICAgIDB4MS40Y3AtMwotICB9LAotICB7IC8vIEVudHJ5IDY5NQotICAgIDB4MS5mOTQ5ODRiMjU1MmUxOTQxZWM3NjZjNmE4MmVjZTRhM3AtMSwKLSAgICAtMHgxLjRjcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk2Ci0gICAgMHgxLmY5NDk4NDlkYWM2YTU0OGRkODUxMTM5MDQxMTA2MzE2cC0xLAotICAgIDB4MS40YzAwMDJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTcKLSAgICAweDEuZjk0OTg0OWRhYzZhNTQ4ZGQ4NTExMzkwNDExMDYzMTZwLTEsCi0gICAgLTB4MS40YzAwMDJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTgKLSAgICAweDEuZTkyMWRkNzA1NGVmNWQ0ZjcyN2Q5MzhjZTEwYTA1M2NwLTEsCi0gICAgMHgxLjMzMzMzMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDY5OQotICAgIDB4MS5lOTIxZGQ3MDU0ZWY1ZDRmNzI3ZDkzOGNlMTBhMDUzY3AtMSwKLSAgICAtMHgxLjMzMzMzMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDcwMAotICAgIDB4MS5lOTIxZGQyNGFkYjkxMjllZmMwNTNmOWFjZDRkMjQ0NHAtMSwKLSAgICAweDEuMzMzMzM0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzAxCi0gICAgMHgxLmU5MjFkZDI0YWRiOTEyOWVmYzA1M2Y5YWNkNGQyNDQ0cC0xLAotICAgIC0weDEuMzMzMzM0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzAyCi0gICAgMHgxLmU5MjFkY2Q5MDY4MjRkYTYwZTQzYzAzYTc3NzRiMTcxcC0xLAotICAgIDB4MS4zMzMzMzZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDMKLSAgICAweDEuZTkyMWRjZDkwNjgyNGRhNjBlNDNjMDNhNzc3NGIxNzFwLTEsCi0gICAgLTB4MS4zMzMzMzZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDQKLSAgICAweDEuOGZlZWRjOTI3NjRiZmJkY2I0MTM4OWU4MjA2M2VkNmVwLTEsCi0gICAgMHgxLjU5NDMxNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDcwNQotICAgIDB4MS44ZmVlZGM5Mjc2NGJmYmRjYjQxMzg5ZTgyMDYzZWQ2ZXAtMSwKLSAgICAtMHgxLjU5NDMxNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDcwNgotICAgIDB4MS44ZmVlZGI1MmM3NTAwODdjNWY4NzI3ZTAyNzllNWY2NnAtMSwKLSAgICAweDEuNTk0MzE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA3Ci0gICAgMHgxLjhmZWVkYjUyYzc1MDA4N2M1Zjg3MjdlMDI3OWU1ZjY2cC0xLAotICAgIC0weDEuNTk0MzE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA4Ci0gICAgMHgxLjhmZWVkYTEzMTg1Mjg1MmQyZmE3ZmU4ODQ3YjA1OTczcC0xLAotICAgIDB4MS41OTQzMWFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDkKLSAgICAweDEuOGZlZWRhMTMxODUyODUyZDJmYTdmZTg4NDdiMDU5NzNwLTEsCi0gICAgLTB4MS41OTQzMWFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTAKLSAgICAweDEuNmI4OTkxMTI3ODU5ZmQ5YjQzY2ExZDA4YjkyYWE0MDFwLTEsCi0gICAgMHgxLjhmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDcxMQotICAgIDB4MS42Yjg5OTExMjc4NTlmZDliNDNjYTFkMDhiOTJhYTQwMXAtMSwKLSAgICAtMHgxLjhmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDcxMgotICAgIDB4MS42Yjg5OGZhOWVmYjVkMjJiNThmMGQ5OWU5NjM0OTMxYXAtMSwKLSAgICAweDEuOTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTMKLSAgICAweDEuNmI4OThmYTllZmI1ZDIyYjU4ZjBkOTllOTYzNDkzMWFwLTEsCi0gICAgLTB4MS45MHAtMQotICB9LAotICB7IC8vIEVudHJ5IDcxNAotICAgIDB4MS42Yjg5OGU0MTY3MTAzYjMxZGU2ZGE2N2ViZjVlOWZlNnAtMSwKLSAgICAweDEuOTAwMDAycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE1Ci0gICAgMHgxLjZiODk4ZTQxNjcxMDNiMzFkZTZkYTY3ZWJmNWU5ZmU2cC0xLAotICAgIC0weDEuOTAwMDAycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE2Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTcKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzE4Ci0gICAgMHgxLnAwLAotICAgIDAuMAotICB9LAotICB7IC8vIEVudHJ5IDcxOQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjAKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDcyMQotICAgIDB4MS5mZjYyMWUzODk1NmEzYjNiZTkyMDI1NmRkYjYwMzRjZHAtMSwKLSAgICAweDEuOTIxZmI0cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzIyCi0gICAgMHgxLmZmNjIxZTM4OTU2YTNiM2JlOTIwMjU2ZGRiNjAzNGNkcC0xLAotICAgIC0weDEuOTIxZmI0cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzIzCi0gICAgMHgxLmZmNjIxZTM3MDM3M2RjNmYzOTYzZDQyODk2ZWRlMDc4cC0xLAotICAgIDB4MS45MjFmYjZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjQKLSAgICAweDEuZmY2MjFlMzcwMzczZGM2ZjM5NjNkNDI4OTZlZGUwNzhwLTEsCi0gICAgLTB4MS45MjFmYjZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjUKLSAgICAweDEuZmY2MjFlMzU3MTdkN2JhMzI3ODk0YmRmZGU5ZjQ3ODdwLTEsCi0gICAgMHgxLjkyMWZiOHAtNQotICB9LAotICB7IC8vIEVudHJ5IDcyNgotICAgIDB4MS5mZjYyMWUzNTcxN2Q3YmEzMjc4OTRiZGZkZTlmNDc4N3AtMSwKLSAgICAtMHgxLjkyMWZiOHAtNQotICB9LAotICB7IC8vIEVudHJ5IDcyNwotICAgIDB4MS5mZDg4ZGE0MTBiNjFjZDU1MjIxZDliZWI5OTZkNGQ5OXAtMSwKLSAgICAweDEuOTIxZmI0cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzI4Ci0gICAgMHgxLmZkODhkYTQxMGI2MWNkNTUyMjFkOWJlYjk5NmQ0ZDk5cC0xLAotICAgIC0weDEuOTIxZmI0cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzI5Ci0gICAgMHgxLmZkODhkYTNhYzU3ODFmNWE2ZmMzMmU0MGVkNTEyMmIwcC0xLAotICAgIDB4MS45MjFmYjZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzAKLSAgICAweDEuZmQ4OGRhM2FjNTc4MWY1YTZmYzMyZTQwZWQ1MTIyYjBwLTEsCi0gICAgLTB4MS45MjFmYjZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzEKLSAgICAweDEuZmQ4OGRhMzQ3ZjhlNjk2OTk5ZmZkNTgwNjBiYTM1NjlwLTEsCi0gICAgMHgxLjkyMWZiOHAtNAotICB9LAotICB7IC8vIEVudHJ5IDczMgotICAgIDB4MS5mZDg4ZGEzNDdmOGU2OTY5OTlmZmQ1ODA2MGJhMzU2OXAtMSwKLSAgICAtMHgxLjkyMWZiOHAtNAotICB9LAotICB7IC8vIEVudHJ5IDczMwotICAgIDB4MS5mNjI5N2QwZjQ2NzFkYTU4MGRmZWNkZDRkYjI5ZjQ3M3AtMSwKLSAgICAweDEuOTIxZmI0cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM0Ci0gICAgMHgxLmY2Mjk3ZDBmNDY3MWRhNTgwZGZlY2RkNGRiMjlmNDczcC0xLAotICAgIC0weDEuOTIxZmI0cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM1Ci0gICAgMHgxLmY2Mjk3Y2Y2NGRiOWEyMWQ5OGFiMzk0MGZjOGE4NmYwcC0xLAotICAgIDB4MS45MjFmYjZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzYKLSAgICAweDEuZjYyOTdjZjY0ZGI5YTIxZDk4YWIzOTQwZmM4YTg2ZjBwLTEsCi0gICAgLTB4MS45MjFmYjZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzcKLSAgICAweDEuZjYyOTdjZGQ1NTAxNGE4MDhiODgzZmQxODNmMzE4YWNwLTEsCi0gICAgMHgxLjkyMWZiOHAtMwotICB9LAotICB7IC8vIEVudHJ5IDczOAotICAgIDB4MS5mNjI5N2NkZDU1MDE0YTgwOGI4ODNmZDE4M2YzMThhY3AtMSwKLSAgICAtMHgxLjkyMWZiOHAtMwotICB9LAotICB7IC8vIEVudHJ5IDczOQotICAgIDB4MS5kOTA2YmQzMTM0NDMwMDdkY2IwYmQ0ZTNkNjMyODRjMHAtMSwKLSAgICAweDEuOTIxZmI0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQwCi0gICAgMHgxLmQ5MDZiZDMxMzQ0MzAwN2RjYjBiZDRlM2Q2MzI4NGMwcC0xLAotICAgIC0weDEuOTIxZmI0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQxCi0gICAgMHgxLmQ5MDZiY2NmM2NiODc1ODc0ZGEzZGE0YzAxMTA0YmFmcC0xLAotICAgIDB4MS45MjFmYjZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDIKLSAgICAweDEuZDkwNmJjY2YzY2I4NzU4NzRkYTNkYTRjMDExMDRiYWZwLTEsCi0gICAgLTB4MS45MjFmYjZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDMKLSAgICAweDEuZDkwNmJjNmQ0NTJkNzQ0ZjIxMDgxMDg2MTEwMmYyZGFwLTEsCi0gICAgMHgxLjkyMWZiOHAtMgotICB9LAotICB7IC8vIEVudHJ5IDc0NAotICAgIDB4MS5kOTA2YmM2ZDQ1MmQ3NDRmMjEwODEwODYxMTAyZjJkYXAtMSwKLSAgICAtMHgxLjkyMWZiOHAtMgotICB9LAotICB7IC8vIEVudHJ5IDc0NQotICAgIDB4MS42YTA5ZTc0ZDNkM2ZiYjk0ZDk0Mjc0ZjM3NzY5ZjZlYXAtMSwKLSAgICAweDEuOTIxZmI0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ2Ci0gICAgMHgxLjZhMDllNzRkM2QzZmJiOTRkOTQyNzRmMzc3NjlmNmVhcC0xLAotICAgIC0weDEuOTIxZmI0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ3Ci0gICAgMHgxLjZhMDllNWUzMzM1OTgzZTVhYzkyZTczM2UzZjI0YjQycC0xLAotICAgIDB4MS45MjFmYjZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDgKLSAgICAweDEuNmEwOWU1ZTMzMzU5ODNlNWFjOTJlNzMzZTNmMjRiNDJwLTEsCi0gICAgLTB4MS45MjFmYjZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDkKLSAgICAweDEuNmEwOWU0NzkyOTcxZTIyYzlhMDAyNjFhZWFjMDcwZGFwLTEsCi0gICAgMHgxLjkyMWZiOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDc1MAotICAgIDB4MS42YTA5ZTQ3OTI5NzFlMjJjOWEwMDI2MWFlYWMwNzBkYXAtMSwKLSAgICAtMHgxLjkyMWZiOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDc1MQotICAgIDB4MS40NDQyZDE4NDY5ODkzNjEwMjgxYTBmOWIwZThkMGVlZnAtMjQsCi0gICAgMHgxLjkyMWZiNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUyCi0gICAgMHgxLjQ0NDJkMTg0Njk4OTM2MTAyODFhMGY5YjBlOGQwZWVmcC0yNCwKLSAgICAtMHgxLjkyMWZiNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUzCi0gICAgLTB4MS43NzdhNWNmNzJjZWNjNGNkZTNhMzFlN2Q1YTAyNjE0MnAtMjUsCi0gICAgMHgxLjkyMWZiNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU0Ci0gICAgLTB4MS43NzdhNWNmNzJjZWNjNGNkZTNhMzFlN2Q1YTAyNjE0MnAtMjUsCi0gICAgLTB4MS45MjFmYjZwMAotICB9LAotICB7IC8vIEVudHJ5IDc1NQotICAgIC0weDEuNWRkZTk3M2RjYjM5ODVmNGE4ZTc2YTFmZWNhMjllMWRwLTIzLAotICAgIDB4MS45MjFmYjhwMAotICB9LAotICB7IC8vIEVudHJ5IDc1NgotICAgIC0weDEuNWRkZTk3M2RjYjM5ODVmNGE4ZTc2YTFmZWNhMjllMWRwLTIzLAotICAgIC0weDEuOTIxZmI4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTcKLSAgICAtMHgxLmZmZmZmZmZmZmZmOTk1MWIzMGUwODQ3MzJlNjBiYjg1cC0xLAotICAgIDB4MS45MjFmYjRwMQotICB9LAotICB7IC8vIEVudHJ5IDc1OAotICAgIC0weDEuZmZmZmZmZmZmZmY5OTUxYjMwZTA4NDczMmU2MGJiODVwLTEsCi0gICAgLTB4MS45MjFmYjRwMQotICB9LAotICB7IC8vIEVudHJ5IDc1OQotICAgIC0weDEuZmZmZmZmZmZmZmZkZDk0ODQ5MjcxZDA4ZWVjZjU0YTFwLTEsCi0gICAgMHgxLjkyMWZiNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYwCi0gICAgLTB4MS5mZmZmZmZmZmZmZmRkOTQ4NDkyNzFkMDhlZWNmNTRhMXAtMSwKLSAgICAtMHgxLjkyMWZiNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYxCi0gICAgLTB4MS5mZmZmZmZmZmZmZTIxZDc1NjE2ZGI1ZWJjNTY0MDVmNXAtMSwKLSAgICAweDEuOTIxZmI4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjIKLSAgICAtMHgxLmZmZmZmZmZmZmZlMjFkNzU2MTZkYjVlYmM1NjQwNWY1cC0xLAotICAgIC0weDEuOTIxZmI4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjMKLSAgICAweDEuZmZmZmZmZmZmZmU2NTQ2Y2MzODIxMWY1ZThkZWViOTdwLTEsCi0gICAgMHgxLjkyMWZiNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY0Ci0gICAgMHgxLmZmZmZmZmZmZmZlNjU0NmNjMzgyMTFmNWU4ZGVlYjk3cC0xLAotICAgIC0weDEuOTIxZmI0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjUKLSAgICAweDEuZmZmZmZmZmZmZmY3NjUyMTI0OWM3NDI4NWJmNzNjMDdwLTEsCi0gICAgMHgxLjkyMWZiNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY2Ci0gICAgMHgxLmZmZmZmZmZmZmZmNzY1MjEyNDljNzQyODViZjczYzA3cC0xLAotICAgIC0weDEuOTIxZmI2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjcKLSAgICAweDEuZmZmZmZmZmZmZjg4NzVkNTg1YjZkYjJjMzE3MTEwMDRwLTEsCi0gICAgMHgxLjkyMWZiOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY4Ci0gICAgMHgxLmZmZmZmZmZmZmY4ODc1ZDU4NWI2ZGIyYzMxNzExMDA0cC0xLAotICAgIC0weDEuOTIxZmI4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjkKLSAgICAweDEuZmZmZmZmZmZmZjk5NTFiMzBlMDg0YTZhOTkzYjg2NzVwLTEsCi0gICAgMHgxLjkyMWZiNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzcwCi0gICAgMHgxLmZmZmZmZmZmZmY5OTUxYjMwZTA4NGE2YTk5M2I4Njc1cC0xLAotICAgIC0weDEuOTIxZmI0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzEKLSAgICAweDEuZmZmZmZmZmZmZmRkOTQ4NDkyNzFkMGViN2I3Yjg4NGJwLTEsCi0gICAgMHgxLjkyMWZiNnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzcyCi0gICAgMHgxLmZmZmZmZmZmZmZkZDk0ODQ5MjcxZDBlYjdiN2I4ODRicC0xLAotICAgIC0weDEuOTIxZmI2cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzMKLSAgICAweDEuZmZmZmZmZmZmZTIxZDc1NjE2ZGJhNDgyODNkM2MyZjdwLTEsCi0gICAgMHgxLjkyMWZiOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc0Ci0gICAgMHgxLmZmZmZmZmZmZmUyMWQ3NTYxNmRiYTQ4MjgzZDNjMmY3cC0xLAotICAgIC0weDEuOTIxZmI4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzUKLSAgICAweDEuZmZmZmZmZmZmZTY1NDZjYzM4MjE1MmQ5YzBlYjliNDdwLTEsCi0gICAgMHgxLjkyMWZiNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzc2Ci0gICAgMHgxLmZmZmZmZmZmZmU2NTQ2Y2MzODIxNTJkOWMwZWI5YjQ3cC0xLAotICAgIC0weDEuOTIxZmI0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzcKLSAgICAweDEuZmZmZmZmZmZmZjc2NTIxMjQ5Yzc0ODRlYTdkN2E0MDlwLTEsCi0gICAgMHgxLjkyMWZiNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzc4Ci0gICAgMHgxLmZmZmZmZmZmZmY3NjUyMTI0OWM3NDg0ZWE3ZDdhNDA5cC0xLAotICAgIC0weDEuOTIxZmI2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzkKLSAgICAweDEuZmZmZmZmZmZmODg3NWQ1ODViNzIwZjI1ZjA0NzM5NDNwLTEsCi0gICAgMHgxLjkyMWZiOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzgwCi0gICAgMHgxLmZmZmZmZmZmZjg4NzVkNTg1YjcyMGYyNWYwNDczOTQzcC0xLAotICAgIC0weDEuOTIxZmI4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODEKLSAgICAweDEuZmZmZmZmZmZmOTk1MWIzMGUwODdkZTVjYzM4NjgzYjhwLTEsCi0gICAgMHgxLjkyMWZiNHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzgyCi0gICAgMHgxLmZmZmZmZmZmZjk5NTFiMzBlMDg3ZGU1Y2MzODY4M2I4cC0xLAotICAgIC0weDEuOTIxZmI0cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODMKLSAgICAweDEuZmZmZmZmZmZmZGQ5NDg0OTI3MWQ2YjQ2M2RmNmJkZGZwLTEsCi0gICAgMHgxLjkyMWZiNnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzg0Ci0gICAgMHgxLmZmZmZmZmZmZmRkOTQ4NDkyNzFkNmI0NjNkZjZiZGRmcC0xLAotICAgIC0weDEuOTIxZmI2cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODUKLSAgICAweDEuZmZmZmZmZmZlMjFkNzU2MTZlMDAwZTU1ZDA5Zjg3NTdwLTEsCi0gICAgMHgxLjkyMWZiOHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzg2Ci0gICAgMHgxLmZmZmZmZmZmZTIxZDc1NjE2ZTAwMGU1NWQwOWY4NzU3cC0xLAotICAgIC0weDEuOTIxZmI4cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODcKLSAgICAweDEuZmZmZmZmZmZlNjU0NmNjMzgyNDhhOGNmMGI5YjU3OTVwLTEsCi0gICAgMHgxLjkyMWZiNHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzg4Ci0gICAgMHgxLmZmZmZmZmZmZTY1NDZjYzM4MjQ4YThjZjBiOWI1Nzk1cC0xLAotICAgIC0weDEuOTIxZmI0cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODkKLSAgICAweDEuZmZmZmZmZmZmNzY1MjEyNDljN2E0ZGQyZTE1ZGQxYzRwLTEsCi0gICAgMHgxLjkyMWZiNnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzkwCi0gICAgMHgxLmZmZmZmZmZmZjc2NTIxMjQ5YzdhNGRkMmUxNWRkMWM0cC0xLAotICAgIC0weDEuOTIxZmI2cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTEKLSAgICAweDEuZmZmZmZmZmY4ODc1ZDU4NWJiN2Q1NTM4M2E5YjM5YTRwLTEsCi0gICAgMHgxLjkyMWZiOHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzkyCi0gICAgMHgxLmZmZmZmZmZmODg3NWQ1ODViYjdkNTUzODNhOWIzOWE0cC0xLAotICAgIC0weDEuOTIxZmI4cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTMKLSAgICAweDEuZmZmZmZmZmY5OTUxYjMwZTBiYjU5OGZjMDY3OWE2ZjdwLTEsCi0gICAgMHgxLjkyMWZiNHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzk0Ci0gICAgMHgxLmZmZmZmZmZmOTk1MWIzMGUwYmI1OThmYzA2NzlhNmY3cC0xLAotICAgIC0weDEuOTIxZmI0cDcKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTUKLSAgICAweDEuZmZmZmZmZmZkZDk0ODQ5MjcyMzM0MmVhMWRhNDliYWNwLTEsCi0gICAgMHgxLjkyMWZiNnA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzk2Ci0gICAgMHgxLmZmZmZmZmZmZGQ5NDg0OTI3MjMzNDJlYTFkYTQ5YmFjcC0xLAotICAgIC0weDEuOTIxZmI2cDcKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTcKLSAgICAweDEuZmZmZmZmZmUyMWQ3NTYxNzI1YzcxMmYwNjhmYzk3MThwLTEsCi0gICAgMHgxLjkyMWZiOHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzk4Ci0gICAgMHgxLmZmZmZmZmZlMjFkNzU2MTcyNWM3MTJmMDY4ZmM5NzE4cC0xLAotICAgIC0weDEuOTIxZmI4cDcKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTkKLSAgICAtMHgxLjZhMDlkYjNiZGJhMDg2OGEzMWU3NjYzNTlhODQwNmNhcC0xLAotICAgIDB4MS4yZDk3YzRwMQotICB9LAotICB7IC8vIEVudHJ5IDgwMAotICAgIC0weDEuNmEwOWRiM2JkYmEwODY4YTMxZTc2NjM1OWE4NDA2Y2FwLTEsCi0gICAgLTB4MS4yZDk3YzRwMQotICB9LAotICB7IC8vIEVudHJ5IDgwMQotICAgIC0weDEuNmEwOWUwZTQwMzViODY2OTRjMTY1MzRlNDJmYmUxMTFwLTEsCi0gICAgMHgxLjJkOTdjNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODAyCi0gICAgLTB4MS42YTA5ZTBlNDAzNWI4NjY5NGMxNjUzNGU0MmZiZTExMXAtMSwKLSAgICAtMHgxLjJkOTdjNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODAzCi0gICAgLTB4MS42YTA5ZTY4YzJhZmZlNWFhNTgwNTBhY2NiMDVjNjI0OHAtMSwKLSAgICAweDEuMmQ5N2M4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDQKLSAgICAtMHgxLjZhMDllNjhjMmFmZmU1YWE1ODA1MGFjY2IwNWM2MjQ4cC0xLAotICAgIC0weDEuMmQ5N2M4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDUKLSAgICAtMHgxLjZhMDllZGI2NzcwNmUwOTk3MTIxZDEyYTBjODdiYWU4cC0xLAotICAgIDB4MS5mNmE3YTBwMQotICB9LAotICB7IC8vIEVudHJ5IDgwNgotICAgIC0weDEuNmEwOWVkYjY3NzA2ZTA5OTcxMjFkMTJhMGM4N2JhZThwLTEsCi0gICAgLTB4MS5mNmE3YTBwMQotICB9LAotICB7IC8vIEVudHJ5IDgwNwotICAgIC0weDEuNmEwOWU4MGU0ZjdmMmE4OGRlYmVkMzdmYWE5M2U4YzhwLTEsCi0gICAgMHgxLmY2YTdhMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODA4Ci0gICAgLTB4MS42YTA5ZTgwZTRmN2YyYTg4ZGViZWQzN2ZhYTkzZThjOHAtMSwKLSAgICAtMHgxLmY2YTdhMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODA5Ci0gICAgLTB4MS42YTA5ZTI2NjI3ZTBkM2Q5Y2I3NmRlMDBjYjkwMmJlY3AtMSwKLSAgICAweDEuZjZhN2E0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTAKLSAgICAtMHgxLjZhMDllMjY2MjdlMGQzZDljYjc2ZGUwMGNiOTAyYmVjcC0xLAotICAgIC0weDEuZjZhN2E0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTEKLSAgICAtMHgxLmY5OTkwZTkxYTc0MTY4YjkwYmQ2OGRmYWI3NzVjOWNhcC0yMSwKLSAgICAweDEuMmQ5N2M0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTIKLSAgICAtMHgxLmY5OTkwZTkxYTc0MTY4YjkwYmQ2OGRmYWI3NzVjOWNhcC0yMSwKLSAgICAtMHgxLjJkOTdjNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODEzCi0gICAgLTB4MS5mMzMyMWQyMzRmMTM2M2QxODdkZDA5NTI4YjY3YjIxNXAtMjIsCi0gICAgMHgxLjJkOTdjNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODE0Ci0gICAgLTB4MS5mMzMyMWQyMzRmMTM2M2QxODdkZDA5NTI4YjY3YjIxNXAtMjIsCi0gICAgLTB4MS4yZDk3YzZwMgotICB9LAotICB7IC8vIEVudHJ5IDgxNQotICAgIDB4MS45OWJjNWI5NjFiMWFjYWNhMThkOTcxZjY4YWU5OWRhOXAtMjcsCi0gICAgMHgxLjJkOTdjOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODE2Ci0gICAgMHgxLjk5YmM1Yjk2MWIxYWNhY2ExOGQ5NzFmNjhhZTk5ZGE5cC0yNywKLSAgICAtMHgxLjJkOTdjOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODE3Ci0gICAgMHgxLjZhMDlkN2E2YjU3MmMyYzgyNGQxMzdkMDQwNWQ4MTg4cC0xLAotICAgIDB4MS41ZmRiYmNwMgotICB9LAotICB7IC8vIEVudHJ5IDgxOAotICAgIDB4MS42YTA5ZDdhNmI1NzJjMmM4MjRkMTM3ZDA0MDVkODE4OHAtMSwKLSAgICAtMHgxLjVmZGJiY3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgODE5Ci0gICAgMHgxLjZhMDllMmY3MDRlZWNiMTgxZTNmNWVjZTliZTBjYTBmcC0xLAotICAgIDB4MS41ZmRiYmVwMgotICB9LAotICB7IC8vIEVudHJ5IDgyMAotICAgIDB4MS42YTA5ZTJmNzA0ZWVjYjE4MWUzZjVlY2U5YmUwY2EwZnAtMSwKLSAgICAtMHgxLjVmZGJiZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODIxCi0gICAgMHgxLjZhMDllZTQ3NTQxMDUwZWY1OWVjNGJmY2U5MzVjYzFhcC0xLAotICAgIDB4MS41ZmRiYzBwMgotICB9LAotICB7IC8vIEVudHJ5IDgyMgotICAgIDB4MS42YTA5ZWU0NzU0MTA1MGVmNTllYzRiZmNlOTM1Y2MxYXAtMSwKLSAgICAtMHgxLjVmZGJjMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODIzCi0gICAgMHgxLjZhMDlmYzliZWJhYmEyMDhjODFlYzBiMWNkMzA3NTg5cC0xLAotICAgIDB4MS5jNDYzYThwMgotICB9LAotICB7IC8vIEVudHJ5IDgyNAotICAgIDB4MS42YTA5ZmM5YmViYWJhMjA4YzgxZWMwYjFjZDMwNzU4OXAtMSwKLSAgICAtMHgxLmM0NjNhOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODI1Ci0gICAgMHgxLjZhMDlmMTRiOWNmY2MwZjYyMjdkMzg2Y2MzNzA0YTA1cC0xLAotICAgIDB4MS5jNDYzYWFwMgotICB9LAotICB7IC8vIEVudHJ5IDgyNgotICAgIDB4MS42YTA5ZjE0YjljZmNjMGY2MjI3ZDM4NmNjMzcwNGEwNXAtMSwKLSAgICAtMHgxLmM0NjNhYXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODI3Ci0gICAgMHgxLjZhMDllNWZiNGRmMzVkNjcyOWY0NzJkYTM0MTNlNDA0cC0xLAotICAgIDB4MS5jNDYzYWNwMgotICB9LAotICB7IC8vIEVudHJ5IDgyOAotICAgIDB4MS42YTA5ZTVmYjRkZjM1ZDY3MjlmNDcyZGEzNDEzZTQwNHAtMSwKLSAgICAtMHgxLmM0NjNhY3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgODI5Ci0gICAgMHgxLjRhYTljMmYyYzFkZWZiODcyOGYwZDJkYTEyMTdhYWUxcC0yMSwKLSAgICAweDEuZjZhN2EwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzAKLSAgICAweDEuNGFhOWMyZjJjMWRlZmI4NzI4ZjBkMmRhMTIxN2FhZTFwLTIxLAotICAgIC0weDEuZjZhN2EwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzEKLSAgICAweDEuMmFhNzBiY2IwN2Q2ZDBmMzZiNzc3Y2IzODBhODQ1ZDlwLTIzLAotICAgIDB4MS5mNmE3YTJwMgotICB9LAotICB7IC8vIEVudHJ5IDgzMgotICAgIDB4MS4yYWE3MGJjYjA3ZDZkMGYzNmI3NzdjYjM4MGE4NDVkOXAtMjMsCi0gICAgLTB4MS5mNmE3YTJwMgotICB9LAotICB7IC8vIEVudHJ5IDgzMwotICAgIC0weDEuNmFhYzdhMWE3YzBjN2FmYzVmY2IyMzEzYTdlY2EyMjlwLTIyLAotICAgIDB4MS5mNmE3YTRwMgotICB9LAotICB7IC8vIEVudHJ5IDgzNAotICAgIC0weDEuNmFhYzdhMWE3YzBjN2FmYzVmY2IyMzEzYTdlY2EyMjlwLTIyLAotICAgIC0weDEuZjZhN2E0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzUKLSAgICAtMHgxLjZhMDljOGMxM2Y0OGI3YWFkODUxZjlkNjQ3NGJjYjMxcC0xLAotICAgIDB4MS4xNDc1Y2FwMwotICB9LAotICB7IC8vIEVudHJ5IDgzNgotICAgIC0weDEuNmEwOWM4YzEzZjQ4YjdhYWQ4NTFmOWQ2NDc0YmNiMzFwLTEsCi0gICAgLTB4MS4xNDc1Y2FwMwotICB9LAotICB7IC8vIEVudHJ5IDgzNwotICAgIC0weDEuNmEwOWRmNjFkZWQ0OWQxZWU0ZmNhNGJhNjE0MGQxNzlwLTEsCi0gICAgMHgxLjE0NzVjY3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgODM4Ci0gICAgLTB4MS42YTA5ZGY2MWRlZDQ5ZDFlZTRmY2E0YmE2MTQwZDE3OXAtMSwKLSAgICAtMHgxLjE0NzVjY3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgODM5Ci0gICAgLTB4MS42YTA5ZjYwMjdjZjY3OGIzOGZjODk5MmNkOTk5MDMwMnAtMSwKLSAgICAweDEuMTQ3NWNlcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDAKLSAgICAtMHgxLjZhMDlmNjAyN2NmNjc4YjM4ZmM4OTkyY2Q5OTkwMzAycC0xLAotICAgIC0weDEuMTQ3NWNlcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDEKLSAgICAtMHgxLmZmZmZmZmZmZmMxOTcyYzkwMmVmMzFjMzdjYjU0ODE3cC0xLAotICAgIDB4MS4yZDk3YzRwMwotICB9LAotICB7IC8vIEVudHJ5IDg0MgotICAgIC0weDEuZmZmZmZmZmZmYzE5NzJjOTAyZWYzMWMzN2NiNTQ4MTdwLTEsCi0gICAgLTB4MS4yZDk3YzRwMwotICB9LAotICB7IC8vIEVudHJ5IDg0MwotICAgIC0weDEuZmZmZmZmZmZmZjBjYTRlNjI2M2QyN2EwMjA0Mzg5ZGZwLTEsCi0gICAgMHgxLjJkOTdjNnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ0Ci0gICAgLTB4MS5mZmZmZmZmZmZmMGNhNGU2MjYzZDI3YTAyMDQzODlkZnAtMSwKLSAgICAtMHgxLjJkOTdjNnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ1Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZkNzAzNDk4YzNiODI4ODU2MzkxNXAtMSwKLSAgICAweDEuMmQ5N2M4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDYKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmQ3MDM0OThjM2I4Mjg4NTYzOTE1cC0xLAotICAgIC0weDEuMmQ5N2M4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDcKLSAgICAtMHgxLjZhMGEwYjgxNWZiMzdiMmQwMTU1MWUwN2NiMzAwOWQxcC0xLAotICAgIDB4MS40NmI5YzBwMwotICB9LAotICB7IC8vIEVudHJ5IDg0OAotICAgIC0weDEuNmEwYTBiODE1ZmIzN2IyZDAxNTUxZTA3Y2IzMDA5ZDFwLTEsCi0gICAgLTB4MS40NmI5YzBwMwotICB9LAotICB7IC8vIEVudHJ5IDg0OQotICAgIC0weDEuNmEwOWY0ZTBjMmU5OGRlYjc4NjQyYjYwMzJhNzNkNDZwLTEsCi0gICAgMHgxLjQ2YjljMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODUwCi0gICAgLTB4MS42YTA5ZjRlMGMyZTk4ZGViNzg2NDJiNjAzMmE3M2Q0NnAtMSwKLSAgICAtMHgxLjQ2YjljMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODUxCi0gICAgLTB4MS42YTA5ZGU0MDI0YjU5NmI1MGViMDZkNTYyZGI4Yzc3N3AtMSwKLSAgICAweDEuNDZiOWM0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTIKLSAgICAtMHgxLjZhMDlkZTQwMjRiNTk2YjUwZWIwNmQ1NjJkYjhjNzc3cC0xLAotICAgIC0weDEuNDZiOWM0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTMKLSAgICAtMHgxLjRkZGQzYmE5ZWRjZDg5OGI5OTQ2ZmRkMjBhZjIyYTY4cC0yMCwKLSAgICAweDEuNWZkYmJjcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTQKLSAgICAtMHgxLjRkZGQzYmE5ZWRjZDg5OGI5OTQ2ZmRkMjBhZjIyYTY4cC0yMCwKLSAgICAtMHgxLjVmZGJiY3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgODU1Ci0gICAgLTB4MS4zNzc0ZWVhN2I4YWJlOGZhOGMzODAxNDJiOTdhZjRiNnAtMjIsCi0gICAgMHgxLjVmZGJiZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODU2Ci0gICAgLTB4MS4zNzc0ZWVhN2I4YWJlOGZhOGMzODAxNDJiOTdhZjRiNnAtMjIsCi0gICAgLTB4MS41ZmRiYmVwMwotICB9LAotICB7IC8vIEVudHJ5IDg1NwotICAgIDB4MS42NDQ1ODhhYzIzOGFlNDkzZmEzMjQzNWJhNTEzMjliZnAtMjEsCi0gICAgMHgxLjVmZGJjMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODU4Ci0gICAgMHgxLjY0NDU4OGFjMjM4YWU0OTNmYTMyNDM1YmE1MTMyOWJmcC0yMSwKLSAgICAtMHgxLjVmZGJjMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODU5Ci0gICAgMHgxLjZhMDliOWRiYzg4MWM0NThlNzQ3OTA4Y2FmMmFhNWUxcC0xLAotICAgIDB4MS43OGZkYjZwMwotICB9LAotICB7IC8vIEVudHJ5IDg2MAotICAgIDB4MS42YTA5YjlkYmM4ODFjNDU4ZTc0NzkwOGNhZjJhYTVlMXAtMSwKLSAgICAtMHgxLjc4ZmRiNnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODYxCi0gICAgMHgxLjZhMDlkMDdjNjhmYzAxMGZmY2ZkM2IxOWYxZWU0ZjQ0cC0xLAotICAgIDB4MS43OGZkYjhwMwotICB9LAotICB7IC8vIEVudHJ5IDg2MgotICAgIDB4MS42YTA5ZDA3YzY4ZmMwMTBmZmNmZDNiMTlmMWVlNGY0NHAtMSwKLSAgICAtMHgxLjc4ZmRiOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODYzCi0gICAgMHgxLjZhMDllNzFkMDgwYzMzZjY5NjRhMDdkMWEwYmY1OTgwcC0xLAotICAgIDB4MS43OGZkYmFwMwotICB9LAotICB7IC8vIEVudHJ5IDg2NAotICAgIDB4MS42YTA5ZTcxZDA4MGMzM2Y2OTY0YTA3ZDFhMGJmNTk4MHAtMSwKLSAgICAtMHgxLjc4ZmRiYXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODY1Ci0gICAgMHgxLjZhMGEwM2M2Mzc0MmQ2MjgwMmQxNjNkNWNmYjNiN2Q1cC0xLAotICAgIDB4MS5hYjQxYWVwMwotICB9LAotICB7IC8vIEVudHJ5IDg2NgotICAgIDB4MS42YTBhMDNjNjM3NDJkNjI4MDJkMTYzZDVjZmIzYjdkNXAtMSwKLSAgICAtMHgxLmFiNDFhZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODY3Ci0gICAgMHgxLjZhMDllZDI1OTlmZDM2NGM5NzY2MGNjYTY2NTJjMGEzcC0xLAotICAgIDB4MS5hYjQxYjBwMwotICB9LAotICB7IC8vIEVudHJ5IDg2OAotICAgIDB4MS42YTA5ZWQyNTk5ZmQzNjRjOTc2NjBjY2E2NjUyYzBhM3AtMSwKLSAgICAtMHgxLmFiNDFiMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODY5Ci0gICAgMHgxLjZhMDlkNjg0ZmI0ZDhjODQwNjYwZDZiNDJlYzgzMDM5cC0xLAotICAgIDB4MS5hYjQxYjJwMwotICB9LAotICB7IC8vIEVudHJ5IDg3MAotICAgIDB4MS42YTA5ZDY4NGZiNGQ4Yzg0MDY2MGQ2YjQyZWM4MzAzOXAtMSwKLSAgICAtMHgxLmFiNDFiMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODcxCi0gICAgMHgxLmY2NjU5NWRhN2ExYWUzMDhkMjZhMThkZTRjMmVkM2EzcC0yMCwKLSAgICAweDEuYzQ2M2E4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzIKLSAgICAweDEuZjY2NTk1ZGE3YTFhZTMwOGQyNmExOGRlNGMyZWQzYTNwLTIwLAotICAgIC0weDEuYzQ2M2E4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzMKLSAgICAweDEuZWNjYjJiYjRmNjZlYTg2MTI0MWZhMDljYTlkOGEwMzRwLTIxLAotICAgIDB4MS5jNDYzYWFwMwotICB9LAotICB7IC8vIEVudHJ5IDg3NAotICAgIDB4MS5lY2NiMmJiNGY2NmVhODYxMjQxZmEwOWNhOWQ4YTAzNHAtMjEsCi0gICAgLTB4MS5jNDYzYWFwMwotICB9LAotICB7IC8vIEVudHJ5IDg3NQotICAgIC0weDEuMzM0ZDQ0YjA5NDU0MDdiMTE4YjM2MWFiNzgxNzFmNjdwLTI1LAotICAgIDB4MS5jNDYzYWNwMwotICB9LAotICB7IC8vIEVudHJ5IDg3NgotICAgIC0weDEuMzM0ZDQ0YjA5NDU0MDdiMTE4YjM2MWFiNzgxNzFmNjdwLTI1LAotICAgIC0weDEuYzQ2M2FjcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzcKLSAgICAtMHgxLjZhMDljMTk2ZjI4NjdjYzkxNmFlMmI3ZTZjOWQ5OWMxcC0xLAotICAgIDB4MS5kZDg1YTRwMwotICB9LAotICB7IC8vIEVudHJ5IDg3OAotICAgIC0weDEuNmEwOWMxOTZmMjg2N2NjOTE2YWUyYjdlNmM5ZDk5YzFwLTEsCi0gICAgLTB4MS5kZDg1YTRwMwotICB9LAotICB7IC8vIEVudHJ5IDg3OQotICAgIC0weDEuNmEwOWQ4Mzc5Mjg1MDZmN2NmZjc2ZjA5NGI0ZTAzNzdwLTEsCi0gICAgMHgxLmRkODVhNnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODgwCi0gICAgLTB4MS42YTA5ZDgzNzkyODUwNmY3Y2ZmNzZmMDk0YjRlMDM3N3AtMSwKLSAgICAtMHgxLmRkODVhNnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODgxCi0gICAgLTB4MS42YTA5ZWVkODMxMTk4NzRlNTFhZTRiYjhhZWRkYzFmMnAtMSwKLSAgICAweDEuZGQ4NWE4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODIKLSAgICAtMHgxLjZhMDllZWQ4MzExOTg3NGU1MWFlNGJiOGFlZGRjMWYycC0xLAotICAgIC0weDEuZGQ4NWE4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODMKLSAgICAtMHgxLmZmZmZmZmZmZmU1NGU1ZTRkMzJiMzQ1MzE2NjA2MGIzcC0xLAotICAgIDB4MS5mNmE3YTBwMwotICB9LAotICB7IC8vIEVudHJ5IDg4NAotICAgIC0weDEuZmZmZmZmZmZmZTU0ZTVlNGQzMmIzNDUzMTY2MDYwYjNwLTEsCi0gICAgLTB4MS5mNmE3YTBwMwotICB9LAotICB7IC8vIEVudHJ5IDg4NQotICAgIC0weDEuZmZmZmZmZmZmZmVhMzk2YWI4YWVlNTA5MzkyYzc1NWRwLTEsCi0gICAgMHgxLmY2YTdhMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODg2Ci0gICAgLTB4MS5mZmZmZmZmZmZmZWEzOTZhYjhhZWU1MDkzOTJjNzU1ZHAtMSwKLSAgICAtMHgxLmY2YTdhMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODg3Ci0gICAgLTB4MS5mZmZmZmZmZmZmN2Y4Y2YwOWUzMmQ2MzA5YmVhODVjYXAtMSwKLSAgICAweDEuZjZhN2E0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODgKLSAgICAtMHgxLmZmZmZmZmZmZmY3ZjhjZjA5ZTMyZDYzMDliZWE4NWNhcC0xLAotICAgIC0weDEuZjZhN2E0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODkKLSAgICAtMHgxLjZhMGEyOTRjNDVlYzc0N2E0NzcxMWE0OTk0ZDJjNWU0cC0xLAotICAgIDB4MS4wN2U0Y2NwNAotICB9LAotICB7IC8vIEVudHJ5IDg5MAotICAgIC0weDEuNmEwYTI5NGM0NWVjNzQ3YTQ3NzExYTQ5OTRkMmM1ZTRwLTEsCi0gICAgLTB4MS4wN2U0Y2NwNAotICB9LAotICB7IC8vIEVudHJ5IDg5MQotICAgIC0weDEuNmEwOWZjMGIwZWE3ZWQ5ZmI1ZGQ1MGEwYzhhZjE5Y2JwLTEsCi0gICAgMHgxLjA3ZTRjZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgODkyCi0gICAgLTB4MS42YTA5ZmMwYjBlYTdlZDlmYjVkZDUwYTBjOGFmMTljYnAtMSwKLSAgICAtMHgxLjA3ZTRjZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgODkzCi0gICAgLTB4MS42YTA5Y2VjOWQxYmIzZWQ0ZjgxMGM5Zjk3ODZkNjEwZXAtMSwKLSAgICAweDEuMDdlNGQwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTQKLSAgICAtMHgxLjZhMDljZWM5ZDFiYjNlZDRmODEwYzlmOTc4NmQ2MTBlcC0xLAotICAgIC0weDEuMDdlNGQwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTUKLSAgICAtMHgxLjRmNzZmODA1ODJjNzNmYzBjYzA5MDNlZDhjYTdkNmIzcC0xOSwKLSAgICAweDEuMTQ3NWNhcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTYKLSAgICAtMHgxLjRmNzZmODA1ODJjNzNmYzBjYzA5MDNlZDhjYTdkNmIzcC0xOSwKLSAgICAtMHgxLjE0NzVjYXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgODk3Ci0gICAgLTB4MS4zZGRiZTAxNjExMDhiNjkwZWVkNzBhN2Y1OWRlNzUxY3AtMjEsCi0gICAgMHgxLjE0NzVjY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgODk4Ci0gICAgLTB4MS4zZGRiZTAxNjExMDhiNjkwZWVkNzBhN2Y1OWRlNzUxY3AtMjEsCi0gICAgLTB4MS4xNDc1Y2NwNAotICB9LAotICB7IC8vIEVudHJ5IDg5OQotICAgIDB4MS42MTEyMGZmNGY3MDE4MGIwZDU1YzNhZTBmNjk1ODVjYXAtMjAsCi0gICAgMHgxLjE0NzVjZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTAwCi0gICAgMHgxLjYxMTIwZmY0ZjcwMTgwYjBkNTVjM2FlMGY2OTU4NWNhcC0yMCwKLSAgICAtMHgxLjE0NzVjZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTAxCi0gICAgMHgxLjZhMDliMmIxN2I3NDEwNTBhNmNmZDY0YjgxYzc2NDg1cC0xLAotICAgIDB4MS4yMTA2YzhwNAotICB9LAotICB7IC8vIEVudHJ5IDkwMgotICAgIDB4MS42YTA5YjJiMTdiNzQxMDUwYTZjZmQ2NGI4MWM3NjQ4NXAtMSwKLSAgICAtMHgxLjIxMDZjOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTAzCi0gICAgMHgxLjZhMDlkZmYyYmJlM2M5NjE2YTM1NzZjNTVlNzczMjA3cC0xLAotICAgIDB4MS4yMTA2Y2FwNAotICB9LAotICB7IC8vIEVudHJ5IDkwNAotICAgIDB4MS42YTA5ZGZmMmJiZTNjOTYxNmEzNTc2YzU1ZTc3MzIwN3AtMSwKLSAgICAtMHgxLjIxMDZjYXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTA1Ci0gICAgMHgxLjZhMGEwZDMzZjZhYjVhZjI2MmFkNmFkMThhYzFjZTlmcC0xLAotICAgIDB4MS4yMTA2Y2NwNAotICB9LAotICB7IC8vIEVudHJ5IDkwNgotICAgIDB4MS42YTBhMGQzM2Y2YWI1YWYyNjJhZDZhZDE4YWMxY2U5ZnAtMSwKLSAgICAtMHgxLjIxMDZjY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTA3Ci0gICAgMHgxLmZmZmZmZmZmZjA2NWNiMjQwYmNiZmRmZjQ5NzdkZGY4cC0xLAotICAgIDB4MS4yZDk3YzRwNAotICB9LAotICB7IC8vIEVudHJ5IDkwOAotICAgIDB4MS5mZmZmZmZmZmYwNjVjYjI0MGJjYmZkZmY0OTc3ZGRmOHAtMSwKLSAgICAtMHgxLjJkOTdjNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTA5Ci0gICAgMHgxLmZmZmZmZmZmZmMzMjkzOTg5OGY1ODVkNjk0OGNmMmQxcC0xLAotICAgIDB4MS4yZDk3YzZwNAotICB9LAotICB7IC8vIEVudHJ5IDkxMAotICAgIDB4MS5mZmZmZmZmZmZjMzI5Mzk4OThmNTg1ZDY5NDhjZjJkMXAtMSwKLSAgICAtMHgxLjJkOTdjNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTExCi0gICAgMHgxLmZmZmZmZmZmZmZmZjVjMGQyNjMwZWUwYTI3ZThkNmQxcC0xLAotICAgIDB4MS4yZDk3YzhwNAotICB9LAotICB7IC8vIEVudHJ5IDkxMgotICAgIDB4MS5mZmZmZmZmZmZmZmY1YzBkMjYzMGVlMGEyN2U4ZDZkMXAtMSwKLSAgICAtMHgxLjJkOTdjOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTEzCi0gICAgMHgxLjZhMGEzODMxYjgxZDk0OTY2YWQ4ZGY0ZDM3ODgyNGY5cC0xLAotICAgIDB4MS4zYTI4YzJwNAotICB9LAotICB7IC8vIEVudHJ5IDkxNAotICAgIDB4MS42YTBhMzgzMWI4MWQ5NDk2NmFkOGRmNGQzNzg4MjRmOXAtMSwKLSAgICAtMHgxLjNhMjhjMnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTE1Ci0gICAgMHgxLjZhMGEwYWYwODJiNWJjYTdmNTU2OWY0ZGE2ODgzZjY0cC0xLAotICAgIDB4MS4zYTI4YzRwNAotICB9LAotICB7IC8vIEVudHJ5IDkxNgotICAgIDB4MS42YTBhMGFmMDgyYjViY2E3ZjU1NjlmNGRhNjg4M2Y2NHAtMSwKLSAgICAtMHgxLjNhMjhjNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTE3Ci0gICAgMHgxLjZhMDlkZGFmNDdhNWJjOGRiZGNiNmIxMzg0NDkwMmFlcC0xLAotICAgIDB4MS4zYTI4YzZwNAotICB9LAotICB7IC8vIEVudHJ5IDkxOAotICAgIDB4MS42YTA5ZGRhZjQ3YTViYzhkYmRjYjZiMTM4NDQ5MDJhZXAtMSwKLSAgICAtMHgxLjNhMjhjNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTE5Ci0gICAgMHgxLmEzYmIyNTFkYzdlZmFhMWUyMTM3YmIzN2VkNjY1NGRicC0xOSwKLSAgICAweDEuNDZiOWMwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjAKLSAgICAweDEuYTNiYjI1MWRjN2VmYWExZTIxMzdiYjM3ZWQ2NjU0ZGJwLTE5LAotICAgIC0weDEuNDZiOWMwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjEKLSAgICAweDEuNDc3NjRhM2I5NTY2NzU4ZTViYWEyZTMwMjlmMWFiYmFwLTIwLAotICAgIDB4MS40NmI5YzJwNAotICB9LAotICB7IC8vIEVudHJ5IDkyMgotICAgIDB4MS40Nzc2NGEzYjk1NjY3NThlNWJhYTJlMzAyOWYxYWJiYXAtMjAsCi0gICAgLTB4MS40NmI5YzJwNAotICB9LAotICB7IC8vIEVudHJ5IDkyMwotICAgIC0weDEuNzExMzZiODhkNDYwODQ5MGYyZGRmZTkwMTAxMTEyYWVwLTIxLAotICAgIDB4MS40NmI5YzRwNAotICB9LAotICB7IC8vIEVudHJ5IDkyNAotICAgIC0weDEuNzExMzZiODhkNDYwODQ5MGYyZGRmZTkwMTAxMTEyYWVwLTIxLAotICAgIC0weDEuNDZiOWM0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjUKLSAgICAtMHgxLjZhMDlhM2NjMDNjNGJiYWQyMjIyZGZlNWJlMzE3NTY1cC0xLAotICAgIDB4MS41MzRhYmVwNAotICB9LAotICB7IC8vIEVudHJ5IDkyNgotICAgIC0weDEuNmEwOWEzY2MwM2M0YmJhZDIyMjJkZmU1YmUzMTc1NjVwLTEsCi0gICAgLTB4MS41MzRhYmVwNAotICB9LAotICB7IC8vIEVudHJ5IDkyNwotICAgIC0weDEuNmEwOWQxMGQ0NjExMjMzNWQwZTQzZDczODM4N2RlOGNwLTEsCi0gICAgMHgxLjUzNGFjMHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTI4Ci0gICAgLTB4MS42YTA5ZDEwZDQ2MTEyMzM1ZDBlNDNkNzM4Mzg3ZGU4Y3AtMSwKLSAgICAtMHgxLjUzNGFjMHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTI5Ci0gICAgLTB4MS42YTA5ZmU0ZTgyYjU2MzdhNGE4ZjM5MmMzMzAxYmU5NHAtMSwKLSAgICAweDEuNTM0YWMycDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzAKLSAgICAtMHgxLjZhMDlmZTRlODJiNTYzN2E0YThmMzkyYzMzMDFiZTk0cC0xLAotICAgIC0weDEuNTM0YWMycDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzEKLSAgICAtMHgxLmZmZmZmZmZmZjkzMjVhY2U1ZjY4MmJiYjhiMTIyYTA5cC0xLAotICAgIDB4MS41ZmRiYmNwNAotICB9LAotICB7IC8vIEVudHJ5IDkzMgotICAgIC0weDEuZmZmZmZmZmZmOTMyNWFjZTVmNjgyYmJiOGIxMjJhMDlwLTEsCi0gICAgLTB4MS41ZmRiYmNwNAotICB9LAotICB7IC8vIEVudHJ5IDkzMwotICAgIC0weDEuZmZmZmZmZmZmZmExNDRhYmFlZDViNGFhYjg4MDYzNWRwLTEsCi0gICAgMHgxLjVmZGJiZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTM0Ci0gICAgLTB4MS5mZmZmZmZmZmZmYTE0NGFiYWVkNWI0YWFiODgwNjM1ZHAtMSwKLSAgICAtMHgxLjVmZGJiZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTM1Ci0gICAgLTB4MS5mZmZmZmZmZmZlMTAyZTg4ZmU0NzYzMzFlMWRkZWZhZnAtMSwKLSAgICAweDEuNWZkYmMwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzYKLSAgICAtMHgxLmZmZmZmZmZmZmUxMDJlODhmZTQ3NjMzMWUxZGRlZmFmcC0xLAotICAgIC0weDEuNWZkYmMwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzcKLSAgICAtMHgxLjZhMGExOWQ1ZjYyNmEzNWVlMTEyYTM0NjM4ZTA3ODA4cC0xLAotICAgIDB4MS42YzZjYmFwNAotICB9LAotICB7IC8vIEVudHJ5IDkzOAotICAgIC0weDEuNmEwYTE5ZDVmNjI2YTM1ZWUxMTJhMzQ2MzhlMDc4MDhwLTEsCi0gICAgLTB4MS42YzZjYmFwNAotICB9LAotICB7IC8vIEVudHJ5IDkzOQotICAgIC0weDEuNmEwOWVjOTRiY2YzNTIwOGNjZDAzMDY4NGQ1ZGRkOWNwLTEsCi0gICAgMHgxLjZjNmNiY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQwCi0gICAgLTB4MS42YTA5ZWM5NGJjZjM1MjA4Y2NkMDMwNjg0ZDVkZGQ5Y3AtMSwKLSAgICAtMHgxLjZjNmNiY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQxCi0gICAgLTB4MS42YTA5YmY1MzdlMTdkOTAwNjU5YmQyZmEyNGMzYThjOHAtMSwKLSAgICAweDEuNmM2Y2JlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDIKLSAgICAtMHgxLjZhMDliZjUzN2UxN2Q5MDA2NTliZDJmYTI0YzNhOGM4cC0xLAotICAgIC0weDEuNmM2Y2JlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDMKLSAgICAtMHgxLmY3ZmY1MjM2MGM2MjJiM2Y5NGQ5YzcyNTBiZmFkOGQ0cC0xOSwKLSAgICAweDEuNzhmZGI2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDQKLSAgICAtMHgxLmY3ZmY1MjM2MGM2MjJiM2Y5NGQ5YzcyNTBiZmFkOGQ0cC0xOSwKLSAgICAtMHgxLjc4ZmRiNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQ1Ci0gICAgLTB4MS5lZmZlYTQ2YzIxYmFhM2RhN2MyNjZjOTUzYTAxMzU5OHAtMjAsCi0gICAgMHgxLjc4ZmRiOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQ2Ci0gICAgLTB4MS5lZmZlYTQ2YzIxYmFhM2RhN2MyNjZjOTUzYTAxMzU5OHAtMjAsCi0gICAgLTB4MS43OGZkYjhwNAotICB9LAotICB7IC8vIEVudHJ5IDk0NwotICAgIDB4MS4wMDE1YjkzZGQwZjA5NWJlMWViMGE1Yjg3ZmU1ZTMzZXAtMjQsCi0gICAgMHgxLjc4ZmRiYXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQ4Ci0gICAgMHgxLjAwMTViOTNkZDBmMDk1YmUxZWIwYTViODdmZTVlMzNlcC0yNCwKLSAgICAtMHgxLjc4ZmRiYXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQ5Ci0gICAgMHgxLjZhMDk5NGU2OGI3ODdlZTRmZDY4MzBiMjg4MjI1NzQ1cC0xLAotICAgIDB4MS44NThlYjRwNAotICB9LAotICB7IC8vIEVudHJ5IDk1MAotICAgIDB4MS42YTA5OTRlNjhiNzg3ZWU0ZmQ2ODMwYjI4ODIyNTc0NXAtMSwKLSAgICAtMHgxLjg1OGViNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTUxCi0gICAgMHgxLjZhMDljMjI3Y2ZhMTk0ZDFmYTdhYjk5MDlkZTUwODNjcC0xLAotICAgIDB4MS44NThlYjZwNAotICB9LAotICB7IC8vIEVudHJ5IDk1MgotICAgIDB4MS42YTA5YzIyN2NmYTE5NGQxZmE3YWI5OTA5ZGU1MDgzY3AtMSwKLSAgICAtMHgxLjg1OGViNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTUzCi0gICAgMHgxLjZhMDllZjY5MGUyMjgzYjY1ODUwOWVkMzE5NDgzODM5cC0xLAotICAgIDB4MS44NThlYjhwNAotICB9LAotICB7IC8vIEVudHJ5IDk1NAotICAgIDB4MS42YTA5ZWY2OTBlMjI4M2I2NTg1MDllZDMxOTQ4MzgzOXAtMSwKLSAgICAtMHgxLjg1OGViOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTU1Ci0gICAgLTB4MS5mMzk1N2JhZDcwZTA3NDFmMWQzZDY3NTEyNDZjZTIxYXAtMSwKLSAgICAweDEuZmZmZmZlcDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTU2Ci0gICAgLTB4MS5mMzk1N2JhZDcwZTA3NDFmMWQzZDY3NTEyNDZjZTIxYXAtMSwKLSAgICAtMHgxLmZmZmZmZXA2MgotICB9LAotICB7IC8vIEVudHJ5IDk1NwotICAgIDB4MS44MmFhMzc1YjNjMzNlNzA2NjM3MzFiYWI0YmViNmVkM3AtNywKLSAgICAweDEucDYzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTU4Ci0gICAgMHgxLjgyYWEzNzViM2MzM2U3MDY2MzczMWJhYjRiZWI2ZWQzcC03LAotICAgIC0weDEucDYzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTU5Ci0gICAgMHgxLjk0NWU2YzY5YTU4MGZiN2JiMjdkMDJjMGZlMGY4YTcxcC0yLAotICAgIDB4MS4wMDAwMDJwNjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjAKLSAgICAweDEuOTQ1ZTZjNjlhNTgwZmI3YmIyN2QwMmMwZmUwZjhhNzFwLTIsCi0gICAgLTB4MS4wMDAwMDJwNjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjEKLSAgICAtMHgxLmIyZDI1NWYyYmQwNDIzZTI5ZTJhNTQ4NzI4ZjAzNGFicC0xLAotICAgIDB4MS5mZmZmZmVwMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjIKLSAgICAtMHgxLmIyZDI1NWYyYmQwNDIzZTI5ZTJhNTQ4NzI4ZjAzNGFicC0xLAotICAgIC0weDEuZmZmZmZlcDI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTYzCi0gICAgMHgxLjRhYjY1MTFhN2QzOWFkM2NjODhkZWQxZTc3NWNhMTQ3cC0xLAotICAgIDB4MS5wMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjQKLSAgICAweDEuNGFiNjUxMWE3ZDM5YWQzY2M4OGRlZDFlNzc1Y2ExNDdwLTEsCi0gICAgLTB4MS5wMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjUKLSAgICAtMHgxLmFkM2Q4MGM4MmY0NDUyYjA3NjU4MWRlMjQ2NDg0MzVicC0xLAotICAgIDB4MS4wMDAwMDJwMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjYKLSAgICAtMHgxLmFkM2Q4MGM4MmY0NDUyYjA3NjU4MWRlMjQ2NDg0MzVicC0xLAotICAgIC0weDEuMDAwMDAycDI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTY3Ci0gICAgLTB4MS40NTMyYzM3MjFlZDQzNDNhZDg4ZWVhODkwOGE5ODhjYnAtMiwKLSAgICAweDEuZmZmZmZlcDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTY4Ci0gICAgLTB4MS40NTMyYzM3MjFlZDQzNDNhZDg4ZWVhODkwOGE5ODhjYnAtMiwKLSAgICAtMHgxLmZmZmZmZXAyMwotICB9LAotICB7IC8vIEVudHJ5IDk2OQotICAgIDB4MS40MGFkNjdmM2YwYzlhMTQzOTYzYzljOTZkYmNlM2Y4YXAtMSwKLSAgICAweDEucDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTcwCi0gICAgMHgxLjQwYWQ2N2YzZjBjOWExNDM5NjNjOWM5NmRiY2UzZjhhcC0xLAotICAgIC0weDEucDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTcxCi0gICAgMHgxLmNhZjg1MzdjM2U0NDJjYThhY2E4NmMxNTY3NzM4NTNhcC0yLAotICAgIDB4MS4wMDAwMDJwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzIKLSAgICAweDEuY2FmODUzN2MzZTQ0MmNhOGFjYTg2YzE1Njc3Mzg1M2FwLTIsCi0gICAgLTB4MS4wMDAwMDJwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzMKLSAgICAtMHgxLjRlYWE2NjdiYTBiOTBkZmIwNWFiM2Q5YzI0N2NkZWU3cC0xLAotICAgIDB4MS5mZmZmZmVwMQotICB9LAotICB7IC8vIEVudHJ5IDk3NAotICAgIC0weDEuNGVhYTY2N2JhMGI5MGRmYjA1YWIzZDljMjQ3Y2RlZTdwLTEsCi0gICAgLTB4MS5mZmZmZmVwMQotICB9LAotICB7IC8vIEVudHJ5IDk3NQotICAgIC0weDEuNGVhYTYwNmRiMjRjMGM0NjZkYTFjMmRjN2JhYTJiMzJwLTEsCi0gICAgMHgxLnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTc2Ci0gICAgLTB4MS40ZWFhNjA2ZGIyNGMwYzQ2NmRhMWMyZGM3YmFhMmIzMnAtMSwKLSAgICAtMHgxLnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTc3Ci0gICAgLTB4MS40ZWFhNTQ1MWQ1MzM0OGViODlkYzQ3OGQ0ZDExYmUwMnAtMSwKLSAgICAweDEuMDAwMDAycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzgKLSAgICAtMHgxLjRlYWE1NDUxZDUzMzQ4ZWI4OWRjNDc4ZDRkMTFiZTAycC0xLAotICAgIC0weDEuMDAwMDAycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzkKLSAgICAtMHgxLmFhMjI1ZTJlZjk2MjQxOTE1YjZmZDIxNzUyMjgxNGY1cC0yLAotICAgIDB4MS5mZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDk4MAotICAgIC0weDEuYWEyMjVlMmVmOTYyNDE5MTViNmZkMjE3NTIyODE0ZjVwLTIsCi0gICAgLTB4MS5mZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDk4MQotICAgIC0weDEuYWEyMjY1NzUzNzIwNGE0MzMyZjhhY2JiNzJiMGQ3NjhwLTIsCi0gICAgMHgxLnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTgyCi0gICAgLTB4MS5hYTIyNjU3NTM3MjA0YTQzMzJmOGFjYmI3MmIwZDc2OHAtMiwKLSAgICAtMHgxLnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTgzCi0gICAgLTB4MS5hYTIyNzQwMWIyODg2MjBhMDM3MmQ1YTk2MDg0OTE1ZHAtMiwKLSAgICAweDEuMDAwMDAycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODQKLSAgICAtMHgxLmFhMjI3NDAxYjI4ODYyMGEwMzcyZDVhOTYwODQ5MTVkcC0yLAotICAgIC0weDEuMDAwMDAycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODUKLSAgICAweDEuMTRhMjgyYWEyNWIxMWY2MzEyYTdhNjUxODBlN2MzZDRwLTEsCi0gICAgMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDk4NgotICAgIDB4MS4xNGEyODJhYTI1YjExZjYzMTJhN2E2NTE4MGU3YzNkNHAtMSwKLSAgICAtMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDk4NwotICAgIDB4MS4xNGEyODBmYjUwNjhiOTIzODQ4Y2RiMmVkMGUzN2E1M3AtMSwKLSAgICAweDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODgKLSAgICAweDEuMTRhMjgwZmI1MDY4YjkyMzg0OGNkYjJlZDBlMzdhNTNwLTEsCi0gICAgLTB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDk4OQotICAgIDB4MS4xNGEyN2Q5ZGE1ZDRhZWJjZTcxNDI4ZjkwNTdiMDhkYXAtMSwKLSAgICAweDEuMDAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTAKLSAgICAweDEuMTRhMjdkOWRhNWQ0YWViY2U3MTQyOGY5MDU3YjA4ZGFwLTEsCi0gICAgLTB4MS4wMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDk5MQotICAgIDB4MS5jMTUyODBlMDczNzY5MmRkNDM2OTA4ZmRjOGU2ZTJlMXAtMSwKLSAgICAweDEuZmZmZmZlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgOTkyCi0gICAgMHgxLmMxNTI4MGUwNzM3NjkyZGQ0MzY5MDhmZGM4ZTZlMmUxcC0xLAotICAgIC0weDEuZmZmZmZlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgOTkzCi0gICAgMHgxLmMxNTI4MDY1YjdkNGY5ZGI3YmJiM2I0NWY1ZjViMzBhcC0xLAotICAgIDB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTQKLSAgICAweDEuYzE1MjgwNjViN2Q0ZjlkYjdiYmIzYjQ1ZjVmNWIzMGFwLTEsCi0gICAgLTB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTUKLSAgICAweDEuYzE1MjdmNzA0MDkwNzZkYTBjMzIwNGRmMWUwOTlhODNwLTEsCi0gICAgMHgxLjAwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDk5NgotICAgIDB4MS5jMTUyN2Y3MDQwOTA3NmRhMGMzMjA0ZGYxZTA5OWE4M3AtMSwKLSAgICAtMHgxLjAwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDk5NwotICAgIDB4MS5mMDE1NGExNzg5ZDhkY2MxNzJjZDIwOTJkMDVmNjM5NHAtMSwKLSAgICAweDEuZmZmZmZlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgOTk4Ci0gICAgMHgxLmYwMTU0YTE3ODlkOGRjYzE3MmNkMjA5MmQwNWY2Mzk0cC0xLAotICAgIC0weDEuZmZmZmZlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgOTk5Ci0gICAgMHgxLmYwMTU0OWY3ZGVlYTE3NGYwN2E2Nzk3MmJmMjlmMTQ4cC0xLAotICAgIDB4MS5wLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDAwCi0gICAgMHgxLmYwMTU0OWY3ZGVlYTE3NGYwN2E2Nzk3MmJmMjlmMTQ4cC0xLAotICAgIC0weDEucC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwMQotICAgIDB4MS5mMDE1NDliODg5MGMyZjY2MzM3Y2FjMTVhNzIzN2M4ZXAtMSwKLSAgICAweDEuMDAwMDAycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwMgotICAgIDB4MS5mMDE1NDliODg5MGMyZjY2MzM3Y2FjMTVhNzIzN2M4ZXAtMSwKLSAgICAtMHgxLjAwMDAwMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDEwMDMKLSAgICAweDEuZmMwMTU1MmZkMDY4ZWU4M2Y1Yjc0MmMwNTI0NWU4YjJwLTEsCi0gICAgMHgxLmZmZmZmZXAtNAotICB9LAotICB7IC8vIEVudHJ5IDEwMDQKLSAgICAweDEuZmMwMTU1MmZkMDY4ZWU4M2Y1Yjc0MmMwNTI0NWU4YjJwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDA1Ci0gICAgMHgxLmZjMDE1NTI3ZDViZDM2ZGEzY2Q0MjUzYmVkZTMxOWNhcC0xLAotICAgIDB4MS5wLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDA2Ci0gICAgMHgxLmZjMDE1NTI3ZDViZDM2ZGEzY2Q0MjUzYmVkZTMxOWNhcC0xLAotICAgIC0weDEucC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwNwotICAgIDB4MS5mYzAxNTUxN2UwNjVhZmI2YmIxMDJjMThmNTkxOTgyMHAtMSwKLSAgICAweDEuMDAwMDAycC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwOAotICAgIDB4MS5mYzAxNTUxN2UwNjVhZmI2YmIxMDJjMThmNTkxOTgyMHAtMSwKLSAgICAtMHgxLjAwMDAwMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwMDkKLSAgICAweDEuZmYwMDE1NTY5ZWY3ZTJiOTYzMDFlNmY3NTJjMDE5ZDRwLTEsCi0gICAgMHgxLmZmZmZmZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDEwMTAKLSAgICAweDEuZmYwMDE1NTY5ZWY3ZTJiOTYzMDFlNmY3NTJjMDE5ZDRwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDExCi0gICAgMHgxLmZmMDAxNTU0OWY0ZDM0Y2EwZTFlZTY1MDliYzQyYjcxcC0xLAotICAgIDB4MS5wLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDEyCi0gICAgMHgxLmZmMDAxNTU0OWY0ZDM0Y2EwZTFlZTY1MDliYzQyYjcxcC0xLAotICAgIC0weDEucC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAxMwotICAgIDB4MS5mZjAwMTU1MDlmZjdkMmVlNjQxOGU5MjRmMGRlNWU5N3AtMSwKLSAgICAweDEuMDAwMDAycC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAxNAotICAgIDB4MS5mZjAwMTU1MDlmZjdkMmVlNjQxOGU5MjRmMGRlNWU5N3AtMSwKLSAgICAtMHgxLjAwMDAwMnAtNAotICB9LAotICB7IC8vIEVudHJ5IDEwMTUKLSAgICAweDEuZmZjMDAxNTVkMjc3ZDU4ZTcyN2NkOTVjNDNmNzU5Y2ZwLTEsCi0gICAgMHgxLmZmZmZmZXAtNgotICB9LAotICB7IC8vIEVudHJ5IDEwMTYKLSAgICAweDEuZmZjMDAxNTVkMjc3ZDU4ZTcyN2NkOTVjNDNmNzU5Y2ZwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDE3Ci0gICAgMHgxLmZmYzAwMTU1NTI3ZDJiMTJhZWRiNDlkOTI5MjhkZjcycC0xLAotICAgIDB4MS5wLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDE4Ci0gICAgMHgxLmZmYzAwMTU1NTI3ZDJiMTJhZWRiNDlkOTI5MjhkZjcycC0xLAotICAgIC0weDEucC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAxOQotICAgIDB4MS5mZmMwMDE1NDUyODdkNDliNTc5NzJhZjUxNDU2NjNhMHAtMSwKLSAgICAweDEuMDAwMDAycC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAyMAotICAgIDB4MS5mZmMwMDE1NDUyODdkNDliNTc5NzJhZjUxNDU2NjNhMHAtMSwKLSAgICAtMHgxLjAwMDAwMnAtNQotICB9LAotICB7IC8vIEVudHJ5IDEwMjEKLSAgICAweDEuZmZmMDAwMTU3NTQ5OWYzZDc5OTZlMmRhMTFjZGViMjRwLTEsCi0gICAgMHgxLmZmZmZmZXAtNwotICB9LAotICB7IC8vIEVudHJ5IDEwMjIKLSAgICAweDEuZmZmMDAwMTU3NTQ5OWYzZDc5OTZlMmRhMTFjZGViMjRwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIzCi0gICAgMHgxLmZmZjAwMDE1NTU0OWY0YTI4YTI4MGU5N2JjZDU5YzhhcC0xLAotICAgIDB4MS5wLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDI0Ci0gICAgMHgxLmZmZjAwMDE1NTU0OWY0YTI4YTI4MGU5N2JjZDU5YzhhcC0xLAotICAgIC0weDEucC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAyNQotICAgIDB4MS5mZmYwMDAxNTE1NGE5ZjBjYWU0YTYyMTUxNTAxY2QwYXAtMSwKLSAgICAweDEuMDAwMDAycC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAyNgotICAgIDB4MS5mZmYwMDAxNTE1NGE5ZjBjYWU0YTYyMTUxNTAxY2QwYXAtMSwKLSAgICAtMHgxLjAwMDAwMnAtNgotICB9LAotICB7IC8vIEVudHJ5IDEwMjcKLSAgICAweDEuZmZmZmZmZjAwMDAwMjAxNTU1NDRmZmY0OWZjYTM4ZTZwLTEsCi0gICAgMHgxLmZmZmZmZXAtMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDI4Ci0gICAgMHgxLmZmZmZmZmYwMDAwMDIwMTU1NTQ0ZmZmNDlmY2EzOGU2cC0xLAotICAgIC0weDEuZmZmZmZlcC0xNQotICB9LAotICB7IC8vIEVudHJ5IDEwMjkKLSAgICAweDEuZmZmZmZmZjAwMDAwMDAxNTU1NTU1NTQ5ZjQ5ZjQ5ZjdwLTEsCi0gICAgMHgxLnAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDMwCi0gICAgMHgxLmZmZmZmZmYwMDAwMDAwMTU1NTU1NTU0OWY0OWY0OWY3cC0xLAotICAgIC0weDEucC0xNAotICB9LAotICB7IC8vIEVudHJ5IDEwMzEKLSAgICAweDEuZmZmZmZmZWZmZmZmYzAxNTU1MTVmZmY0YTE0OTZjMWNwLTEsCi0gICAgMHgxLjAwMDAwMnAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDMyCi0gICAgMHgxLmZmZmZmZmVmZmZmZmMwMTU1NTE1ZmZmNGExNDk2YzFjcC0xLAotICAgIC0weDEuMDAwMDAycC0xNAotICB9LAotICB7IC8vIEVudHJ5IDEwMzMKLSAgICAweDEuZmZmZmZmZmZmZmZmZmMwMDAwMDdmZmZmZmMwMTU1NTVwLTEsCi0gICAgMHgxLmZmZmZmZXAtMjgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM0Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZjMDAwMDA3ZmZmZmZjMDE1NTU1cC0xLAotICAgIC0weDEuZmZmZmZlcC0yOAotICB9LAotICB7IC8vIEVudHJ5IDEwMzUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmMwMDAwMDAwMDAwMDAwMTU1NTVwLTEsCi0gICAgMHgxLnAtMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM2Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZjMDAwMDAwMDAwMDAwMDE1NTU1cC0xLAotICAgIC0weDEucC0yNwotICB9LAotICB7IC8vIEVudHJ5IDEwMzcKLSAgICAweDEuZmZmZmZmZmZmZmZmZmJmZmZmZWZmZmZmZjAwMTU1NTVwLTEsCi0gICAgMHgxLjAwMDAwMnAtMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZiZmZmZmVmZmZmZmYwMDE1NTU1cC0xLAotICAgIC0weDEuMDAwMDAycC0yNwotICB9LAotICB7IC8vIEVudHJ5IDEwMzkKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmMDAwMDAxZmZmZmZmMDAwMTVwLTEsCi0gICAgMHgxLmZmZmZmZXAtMzEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQwCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZjAwMDAwMWZmZmZmZjAwMDE1cC0xLAotICAgIC0weDEuZmZmZmZlcC0zMQotICB9LAotICB7IC8vIEVudHJ5IDEwNDEKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMDAwMTVwLTEsCi0gICAgMHgxLnAtMzAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQyCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDAwMDE1cC0xLAotICAgIC0weDEucC0zMAotICB9LAotICB7IC8vIEVudHJ5IDEwNDMKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZlZmZmZmZiZmZmZmZjMDAwMTVwLTEsCi0gICAgMHgxLjAwMDAwMnAtMzAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQ0Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZWZmZmZmYmZmZmZmYzAwMDE1cC0xLAotICAgIC0weDEuMDAwMDAycC0zMAotICB9LAotICB7IC8vIEVudHJ5IDEwNDUKLSAgICAweDEuYjRiZjJjNzliZGZjZGFhNTNlZDZjMDEzZjY1ZTA5NjNwLTEsCi0gICAgLTB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0NgotICAgIDB4MS5iNGJmMmM3OWJkZmNkYWE1M2VkNmMwMTNmNjVlMDk2M3AtMSwKLSAgICAweDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDEwNDcKLSAgICAweDEuYjRiZjJjNzliZGZjZGFhNTNlZDZjMDEzZjY1ZTA5NjNwLTEsCi0gICAgMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQ4Ci0gICAgMHgxLmI0YmYyYzc5YmRmY2RhYTUzZWQ2YzAxM2Y2NWUwOTYzcC0xLAotICAgIC0weDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDEwNDkKLSAgICAweDEuYjRiZjJjNzliZGZjZGFhNTNlZDZjMDEzZjY1ZTA5NjNwLTEsCi0gICAgMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUwCi0gICAgMHgxLmI0YmYyYzc5YmRmY2RhYTUzZWQ2YzAxM2Y2NWUwOTYzcC0xLAotICAgIC0weDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDEwNTEKLSAgICAtMHgxLjg4NzdhMjllM2Q3YjZkZWZjYjUyOGU4NmY0YzNlMDlhcC0xLAotICAgIDB4MS5mZmZmZmNwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1MgotICAgIC0weDEuODg3N2EyOWUzZDdiNmRlZmNiNTI4ZTg2ZjRjM2UwOWFwLTEsCi0gICAgLTB4MS5mZmZmZmNwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1MwotICAgIC0weDEuZmZmZmZmZmZmZmZkZDk0ODQ5MjcxZDA4ZWVjZjU0YTFwLTEsCi0gICAgMHgxLjkyMWZiNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA1NAotICAgIC0weDEuZmZmZmZmZmZmZmZkZDk0ODQ5MjcxZDA4ZWVjZjU0YTFwLTEsCi0gICAgLTB4MS45MjFmYjZwMQotICB9LAotICB7IC8vIEVudHJ5IDEwNTUKLSAgICAtMHgxLjc3N2E1Y2Y3MmNlY2M0Y2RlM2EzMWU3ZDVhMDI2MTQycC0yNSwKLSAgICAweDEuOTIxZmI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDU2Ci0gICAgLTB4MS43NzdhNWNmNzJjZWNjNGNkZTNhMzFlN2Q1YTAyNjE0MnAtMjUsCi0gICAgLTB4MS45MjFmYjZwMAotICB9LAotICB7IC8vIEVudHJ5IDEwNTcKLSAgICAweDEuMTRhMjdkOWRhNWQ0YWViY2U3MTQyOGY5MDU3YjA4ZGFwLTEsCi0gICAgMHgxLjAwMDAwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA1OAotICAgIDB4MS4xNGEyN2Q5ZGE1ZDRhZWJjZTcxNDI4ZjkwNTdiMDhkYXAtMSwKLSAgICAtMHgxLjAwMDAwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA1OQotICAgIDB4MS4xNGEyODBmYjUwNjhiOTIzODQ4Y2RiMmVkMGUzN2E1M3AtMSwKLSAgICAweDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYwCi0gICAgMHgxLjE0YTI4MGZiNTA2OGI5MjM4NDhjZGIyZWQwZTM3YTUzcC0xLAotICAgIC0weDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYxCi0gICAgMHgxLjE0YTI4MmFhMjViMTFmNjMxMmE3YTY1MTgwZTdjM2Q0cC0xLAotICAgIDB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYyCi0gICAgMHgxLjE0YTI4MmFhMjViMTFmNjMxMmE3YTY1MTgwZTdjM2Q0cC0xLAotICAgIC0weDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2MwotICAgIDB4MS42YTA5ZTVlMzMzNTk4M2U1YWM5MmU3MzNlM2YyNGI0MnAtMSwKLSAgICAweDEuOTIxZmI2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2NAotICAgIDB4MS42YTA5ZTVlMzMzNTk4M2U1YWM5MmU3MzNlM2YyNGI0MnAtMSwKLSAgICAtMHgxLjkyMWZiNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwNjUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLjAwMDAwMnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA2NgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjAwMDAwMnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA2NwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEucC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDY4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEucC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDY5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5mZmZmZmNwLTEyNwotICB9LAotICB7IC8vIEVudHJ5IDEwNzAKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS5mZmZmZmNwLTEyNwotICB9LAotICB7IC8vIEVudHJ5IDEwNzEKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLmZmZmZmOHAtMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA3MgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLmZmZmZmOHAtMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA3MwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEucC0xNDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDc0Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEucC0xNDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDc1Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDEwNzYKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDEwNzcKLSAgICAweDEucDAsCi0gICAgMC4wZgotICB9LAotICB7IC8vIEVudHJ5IDEwNzgKLSAgICAweDEucDAsCi0gICAgLTAuMGYKLSAgfSwKLX07Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwotCi1URVNUKG1hdGhfY29zZiwgY29zZl9pbnRlbCkgewotI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplb2YoZ19jb3NmX2ludGVsX2RhdGEpL3NpemVvZihjb3NmX2ludGVsX2RhdGFfdCk7IGkrKykgewotICAgIEVYUEVDVF9GTE9BVF9FUShnX2Nvc2ZfaW50ZWxfZGF0YVtpXS5leHBlY3RlZCwgY29zZihnX2Nvc2ZfaW50ZWxfZGF0YVtpXS5jYWxsX2RhdGEpKSA8PCAiRmFpbGVkIG9uIGVsZW1lbnQgIiA8PCBpOwotICB9Ci0jZWxzZSAvLyBfX0JJT05JQ19fCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCi19CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvYWNvc19pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvYWNvc19pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWMxNzdjZQotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9hY29zX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDEzMTQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxkb3VibGUsIGRvdWJsZT4gZ19hY29zX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgMHgxLmM4YTUzOGFlODNkMWY3ZmZmZmZmZmZmZmZmY2VmMDkxcC0xLAorICAgIDB4MS40MTgyMTk5OTk4NTg3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS41MjBkYzU1M2Y2YjIzODAwMDAwMDAwMDAwMjI2YjkzY3AtMiwKKyAgICAweDEuZTQ1YTFjOTM2NTFlY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAweDEuOTFlMDA2ZDQxZDhkOGZmZmZmZmZmZmZmZmZmZmU0YWVwMCwKKyAgICAweDEuZmQ3MzdiZTkxNDU3OHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLmVmZWVmNjFkMzlhYzFmZmZmZmZmZmZmZmY4MjQ0OTA0cC0zLAorICAgIDB4MS5mMTBmYzYxZTJjNzhmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS4wYzE1MjM4MmQ4ZjFiZmY0ZTEzOWI0MWU0MDI1ZDBmY3AxLAorICAgIC0weDEuMDAwMDAwMDAwNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLjBjMTUyMzgyZTA3MzJiZTkyM2ZlMDA5ZWEwYzczNTVkcDEsCisgICAgLTB4MS4wMDAwMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLmQyY2Y1Y2JlOGE0NzY4MDAwZDYzYmFlOWM3Mjk3YmNmcDAsCisgICAgLTB4MS4wMDAwMDEwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuMGMxNjRjNDVhY2EyNTM3MGI1OWZmZGY0YTE4ZDY1YTFwMSwKKyAgICAtMHgxLjAwMDQwNDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLmEyMjJlMTYzMGEzMmM4MDAxZTNjZTIzZGEwNzRiZTlicDAsCisgICAgLTB4MS4wMDA3ZmZmZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS4wYzc1YjczMWI5YzBjZWVkMGZjM2Y3YzVmOThjNWUxYnAxLAorICAgIC0weDEuMDE0ZTQ0NWJkY2Y3ZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLjBjOGRmMDBiNmE5NmI0NGI0YmJiMjA5ZmM3NjczNjlmcDEsCisgICAgLTB4MS4wMWEyMDM3YjFiYWM0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuMGRlNGVkZWE3MThiZDJkYjViOGYxZThkOTVkYTExZjVwMSwKKyAgICAtMHgxLjA2NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLjBlNGI3Yzg0ZDEwZmYyY2RjMDlkODYyOWMzN2M2YmY5cDEsCisgICAgLTB4MS4wN2FwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS4wZjJlNDBkMDkwNjBmMWEzZDk0NzMxYTZjYTcwYThkZHAxLAorICAgIC0weDEuMGFhN2Y3MWU2ZTcxY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLjBmNDM0NDVlZjU2MDZmZmZhMzJkZjFkODhmZjY5MWVmcDEsCisgICAgLTB4MS4wYWVmYjUwMjAyM2I2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuMTAxYWRiODgxYTgwYjI0ZDZiNzhkYmRhOWYxMDk3MjhwMSwKKyAgICAtMHgxLjBkY2UxYjljMzczODdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS4xMGU2MmZhNzY5ZTY1MzRlNjg4YzRlMGUzM2VjYTUwNXAxLAorICAgIC0weDEuMTA4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuMTFjMzM3OTdhZmRkYWJiZWEyNGRjMzU0NzU5NGM1YzBwMSwKKyAgICAtMHgxLjEzNmFlODkwYTBiMjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS4xYmFlMjUzNWVhZWUwYzEyOTZjNmVhYjEyZDI3MTE0YXAxLAorICAgIC0weDEuMzQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuMjM4ZDRmNjNjMDEzNzQ2MWNhN2M2NjM1ZmQwMjI1YmNwMSwKKyAgICAtMHgxLjRjOGRmMzBlMGY5ZjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5iZDRjMDYwZTlkNGZhODAwMGFlMjQxNGU0OWM0NDlkZXAwLAorICAgIC0weDEuNTdjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuZjM3MzlkZjE2ZDU4MTAwMDhkYmI4Zjg2MjA2Mjc0ZTNwMCwKKyAgICAtMHgxLjdjMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLjM1OWQyNmY5M2I2YzA4MDAxYjgyMjk3MWVhZDU2ZTRjcDEsCisgICAgLTB4MS43ZmZmZmZmZmZmZmY5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuZjRhYTBlY2JlOWNhMDdmZjUzODNlNmNiZGVkYTBlNmZwMCwKKyAgICAtMHgxLjgwOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLjNmMTc2MjgzZjkxMmY0ZDVjNzEyOWFkOWY1MTQxYzFkcDEsCisgICAgLTB4MS45ODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS45MjM5OGNkMDc3MzRjZmZmOGU0NjU4YWZiYTc2Yjk2M3AwLAorICAgIC0weDEuOWQ3OGMyOTI3MGMzN3AtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS4wMjQxY2NjNzc5N2IyODAwMWQ4YjNlZDUzMDI4ODE2N3AxLAorICAgIC0weDEuYmE3YzVhZjdjZDk4OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLmEwZmFkN2EwZmY2ZmY3ZmY3N2U0NGVjN2I1ZWY5YmEzcDAsCisgICAgLTB4MS5kYjJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcxMTg1NGJkZHAwLAorICAgIC0weDEuZjlhMjQ3NWQzN2EwNHAtMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MTE5MzY4ZTVwMCwKKyAgICAtMHgxLmZiNjVlODZkYzdlNTJwLTEwMQorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLjgyMWYzY2JlY2YwYTU3N2Y5OGQ5MTIyYjRmN2IzNzM3cDEsCisgICAgLTB4MS5mYzAxMTkwYzVmMWQ0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuOTMxZWI0NmU2ZDhmZDgwMDE5Y2YyZWMwMDJkMWVhNmVwMCwKKyAgICAtMHgxLmZkZmRmZmZmZmZmZmZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5kMmJkY2RlYTRiYmZmMjhlZTE1MTNjZTA1ODFlNmI4MHAwLAorICAgIC0weDEuZmY3N2ZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLmIyMzUyOTRjMzc2ZjlmZmJlM2NkYTg1ZWZiNjdjNjU4cDAsCisgICAgLTB4MS5mZmZmN2ZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuMGMxNTIzODA4ODAxMjgwMDAxNjk2MDE1ZDQ5OTc5NWZwMSwKKyAgICAtMHgxLmZmZmZmZmVmZmZmZTFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS45YTIwMGFhMzMzMmNhODAwMmRkMzNlZGE1MmRhYTNiNXAwLAorICAgIC0weDEuZmZmZmZmZmZmZjhmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLjBjMTUyMzgyZDczNDBmZmYxMWJiM2RjMWY5NWMyNjg5cDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZjAzcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuOWEyMDBhYTMzMzJlNjdmODMwNTNlZjA0ZDBhNGViNDVwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS45MjFmYjU0NDQyZDE4ODY5ODk4Y2M1MTcwMTk4MzlhMnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS43MjBhMzkyYzFkODUyN2YwNzY2YmRjMjMxYjM5MDcwNHAwLAorICAgIDB4MS4wMDAwMDAwMDAwOHAtMworICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLjUxNzAwZTBjMTMyNWI4MDBkMTZkZTg5MTFjNzRkZTdkcDAsCisgICAgMHgxLjAwMDAwMDAwMDYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuNzIwYTM5MmMxOThkMzAwMDllZGMyYTQyODNlYWU0MTFwMCwKKyAgICAweDEuMDAwMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuMGMxNTIzODA0YTE1OTAwMDAwNzM0MWM0YmU4NDU5YTNwMCwKKyAgICAweDEuMDAwMDAwMDQ2YjQwNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLjBjMTUyMzVkZTNlN2NiOWJkMjM0ODYxNzY5NmZhZmNjcDAsCisgICAgMHgxLjAwMDAwMDRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS41MTcwMGNmMzI5MTM1N2ZmYTRjYTMzMmViNjQ0ZjBmNnAwLAorICAgIDB4MS4wMDAwMDQ0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuOTExZmIxMTk5NjEzOTgwMDIzODU0NDA1Nzg0YWFkZWNwMCwKKyAgICAweDEuMDAwNDAwMDAwMDA1MHAtOAorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLjUxMmRmMjg0OWM1ODBlODBhMzg0ZTBkZjhmOGU1YTI5cDAsCisgICAgMHgxLjAxMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLjBhMmYyMmI0YWFmNDEzN2ZkNTUxNDg0ZWQ1OGE5NzM0cDAsCisgICAgMHgxLjAzNDdmOGVkYzlhOTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS40ZTM0NzI3YjM2NjE4ZTdiNDRhNjdhYTcwMmM1MzYyM3AwLAorICAgIDB4MS4wYzhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS4wNGJjMjU2N2RjOWY4Y2Q4NjI1NWRjZjRmYWZhNzY5M3AwLAorICAgIDB4MS4wYzllODkxNjQyMGI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuMDQwMTQ5ODJkOWNlNzNjNDY4YzU1ZWIxODc1MzJjZDdwMCwKKyAgICAweDEuMGRkYzY4YjY3NTY1OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLjgxMzg1NzYwZmFmMGY3ZmU3ZmQ5ZDFmNzkzZWI2ZTlicDAsCisgICAgMHgxLjBlNDM5MGU0MzkwZTFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS40ZDc0MDc4MTFlNWY4ZjUyMmRmZGViNDY5NTJlODc2MnAwLAorICAgIDB4MS4wZjY2NzFkM2NlZTVlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEuNGQ0YzM2OWVjNjUxNmJkMDc1YWRkYjk5YThmMWZkYzdwMCwKKyAgICAweDEuMGZmZmZmZmUwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuODk5ZjRlZGM5NDJjZTgwMDU1YzAwNTU4MmE5ZDlmNWZwMCwKKyAgICAweDEuMTAwMDAwMDA0cC01CisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuMDJiYjQ4ZGE1ZjdiOTMwOGZjNzk4M2I5ZjU1NWJkZjlwMCwKKyAgICAweDEuMTAwNWEzYWM2ZjA1NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLjAyOGIxYWY0NmQ5NTkzMjRlZTE5ZjQ2YTcwNmI3ZDM1cDAsCisgICAgMHgxLjEwNTc0MTFlNTczNWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS4wMjBiNTFiMWY3MmE4YzJlNGRlOWVjNTQ4OGRlNzg1N3AwLAorICAgIDB4MS4xMTJmOGEyN2JhNWQ1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuMDFlNjk3ZDYxMTA5ZjNiYmI5OWZlMjVlOGVmYWY4M2ZwMCwKKyAgICAweDEuMTE2ZGE2YmY4YjQ5NXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLjAxN2Q5Yjc4OTIzM2YzOTY0ZjFjNjJlM2QxZjE4YmI4cDAsCisgICAgMHgxLjEyMWYxNTdjYjZjMGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS4wMTc2YzRkNmI1NjMxMzI2MzgxZjI3NmExY2Y1YWZmMnAwLAorICAgIDB4MS4xMjJhYTI5MTM2MzZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuMDBkMjE2MGRhYTYwZjJkYzljNWQyMDcwZDkwZmYxMTdwMCwKKyAgICAweDEuMTM0MDkzZThmOTc1YnAtMQorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLjAwNjc4MTliYzBhNjEzMWIyNTE1ZTA4OWU1ZmZlYWQ2cDAsCisgICAgMHgxLjEzZjQzODczOGY3NzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS4wMDVhZjBkNjcwYTY5MzAwMzI2ZDFmOTE5ZTkwZTM3ZXAwLAorICAgIDB4MS4xNDA5NjMzZGEwMDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuMDAwNmFhYWIyMmY5NTM0NDY3OTg3ODNjMTdhZmE3M2FwMCwKKyAgICAweDEuMTQ5NzQ4YTlmMWUxMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLjhkYzFhNzYxZmMzZTI3ZmZkZGJhY2UwYzA4ZjdkOTMxcDAsCisgICAgMHgxLjE3OHAtNgorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgMHgxLmZhZWRiZTVkMzYyZjc3ZTBlMzdkZjBiYTM4MGQ2YmYycC0xLAorICAgIDB4MS4xOGUzNzUwOWI2NGJmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEuZjcyM2M4NTQ1N2YyM2UwNDgwMTdlYmFjOTgyOGY3NGFwLTEsCisgICAgMHgxLjFjMGM3MWIwZDc3YjRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS5mNDAwNDVhYTA2ODI1NWJlNTQzOTViMjYxOTFjYTZlY3AtMSwKKyAgICAweDEuMWVhNzk3MmZjODEyNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLmYzZTRhNzk3M2JhOWY1YmM1ODgwMjMyNzJiZmQ4ZmVmcC0xLAorICAgIDB4MS4xZWJlNzhlMjBiMWM0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuZjM1YjE4ZDkxMzNkZjVjMzI4NmFkN2M3ZjNhNTk5ZWJwLTEsCisgICAgMHgxLjFmMzA2NDkwYzU3ODJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIDB4MS5lZGYwNmU1MThmMWQ3ZTdkNjMxODg2NDU1Mzc1N2I2M3AtMSwKKyAgICAweDEuMjNhODNkNzY0OTc4OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLmVkYWU5YmNiNjMwZDRkMmQ5NTA4MWIxNTJiNjc5N2EzcC0xLAorICAgIDB4MS4yM2RlNTQ1ZGVlZWY2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEuZWI1OWQ3MGM5NzlmMmRhODI0OWQ1YTRmNTg3NTViOGZwLTEsCisgICAgMHgxLjI1YzdkY2IyNmE5Y2FwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5lYTU1Y2YxMjg3ODA1MDUyNDJjNjg4Mzg1MTMwMzJlN3AtMSwKKyAgICAweDEuMjY5Y2FlMTZjM2Y2M3AtMQorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgMHgxLmUwYzdiNjgyYjZhODU4MWFiZmJjNzdlOTk5NTRkYjcycC0xLAorICAgIDB4MS4yZTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS5kOWIyOTliYmI0ZTUzN2FjNmZmNjIyMDZkMmRhMzZiM3AtMSwKKyAgICAweDEuMzQwZmIyNDIzYzZiM3AtMQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLmQ1Mzg4ODkwODVkMzBlNGNhM2FiZTk4MWM5ODg4ZDIycC0xLAorICAgIDB4MS4zN2EwMTMwZjY4ZjZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEuOGQ0MDM0Mzg4Y2QyMmZmZjg5MmU5MTgwYzQzMzdmNjNwMCwKKyAgICAweDEuMzdkYjcwOWMzN2JmNXAtNgorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLmM4YTUzOGFlODNkMWY3ZmZmZmZmZmZmZmZmY2VmMDkxcC0xLAorICAgIDB4MS40MTgyMTk5OTk4NTg3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuM2VhNzE1MjBjZjNkMzdmYWViOTU1Y2Y2MDVkMGE3ZGJwMCwKKyAgICAweDEuNDgwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuYmU3NmU1NGRkZWRlM2ZmZTg2N2M4ODE3ZTdjNmUwNmZwLTEsCisgICAgMHgxLjQ5NWUxNjI1ZjdiNmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS45MjE1NjJiMDljZjBlODAwNGM1YTgxY2YyMjFhNmU1NnAwLAorICAgIDB4MS40YTUyNzRhNTI5NDk2cC0xMworICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLmFmOWZkYWJkNTlkOWU2NThmZjBlNWU4YzBjMTQ1MzcwcC0xLAorICAgIDB4MS41NDk2ZTA4N2IzMzhmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuOTFmNDhlMGE1Y2VjMzdmZmZmOTcwZDg5OWFiYzM4ZDZwMCwKKyAgICAweDEuNTkzOWNkOGM5ZmJlZHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS5hNTI4MjE2MWIwMTg1N2ZhNzRkMDgyMDE5N2ExNGY1ZXAtMSwKKyAgICAweDEuNWM1NTU3MjQ0N2ZiOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLjljMGM0MTk1MDY0ZGY3ZmZkM2M2Njc2MzNiZjdhNjUxcC0xLAorICAgIDB4MS42MmY0MmEwOWJjZTFkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAweDEuOTFjNGMyMGEwZWE3ZjgwMDAwNGViNDUwOTVmZDE5MWFwMCwKKyAgICAweDEuNmJjY2UxMjk3MzczZXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS4zMzlkMThmNTlhZmI4ODAwMDBkMmZiY2UzZDljMDhjMnAwLAorICAgIDB4MS43MTgyZmMyM2ViMzE2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuN2FkNGM1NzYyZDdiNjgwMDAwMWEzYWRmZmVkZWQ1ZjRwMCwKKyAgICAweDEuNzQyYjY2ZGNkNDMwOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLjMyODgyYzI0MjM2MDM4MDAwY2Q0N2IwYjQ2YmJhNjRlcDAsCisgICAgMHgxLjc1OGIzNDVjYjlmM2VwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS43ZjQ2OTI3YzQ2M2EyODA2MmUzYjFiMGMxNmFjMWJkYnAtMSwKKyAgICAweDEuNzcxZTM4ZTBhZjRmY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjc4MmViZTI0NmNiZTM3ZTNmYjZhMWVmNjc4YjA2NGJmcC0xLAorICAgIDB4MS43YmU4ZDM5MDhjYjI3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAweDEuN2E0MGRiNTdlOTk2MzdmZWEwNDE2MjgyNWIyYmMxODFwMCwKKyAgICAweDEuN2Q2cC00CisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuNzIwYTM5MmMxZDk1MTdmMDk3MGU4NmRkNWRlNWI2MzVwLTEsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS4yZTAzOGY0NzM3ZGZiN2Y5NGYzMWRmODk2ZWEwYWM3YXAwLAorICAgIDB4MS44NjRmYmI3YjEyYWQ2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEuNjU3ZGYxZjNhMGJjMDgzMzhhN2FmMTljMjM0ZGZjM2FwLTEsCisgICAgMHgxLjg4MmVmZDJkZDQyMjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS44NWNlYTE5MTE3MDFlODAwMDBiY2EwMzcxYjg5OTY3OXAwLAorICAgIDB4MS44OWZiOGE2ZGYxNWUycC01CisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuMmEyMDIzOTNlZDIzNzdmZDU4NTdmOTVhZjg2NjUxNjFwMCwKKyAgICAweDEuOTRhNTI5NGE1Mjk0OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLjc4MWU0Mzg5YzBiMzZmZmY5YzEwMTc0N2NkYTMwZWRjcDAsCisgICAgMHgxLjlmNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS41ZDMxOGJmM2UzOTBlN2ZmZjg4YWY3YTVkYTYwNGQzYXAwLAorICAgIDB4MS5hNDZlOTdmNDk2ZWEzcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLjFiNTE0OGRkOWUxYmQ3YjAxNzkxMTM4ZjNmMzI1NTgwcC0xLAorICAgIDB4MS5iMzk3YTVmOTYxODM5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLjFhNTgzZmQxMzhmYjM3YTNmNmQyZjA3ZGJmM2VjN2IzcC0xLAorICAgIDB4MS5iNDFhNTM3NzNhNGUzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLjE0ODIzYzI2NTdjODdmNTU1ZWNkMTViYjE5Mzg3ZTZicC0xLAorICAgIDB4MS5iNzIxY2Y4NzM4M2YzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjEzMDFmZDJhYjM0ZTQ4MDE4MWMzYTI4MzAxMTQ5N2M1cC0xLAorICAgIDB4MS5iN2U2ZTY4ODQwZGU5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjEyZTA5NmFmY2I3ZGU4Nzk5YjM5NjE5YTRkNDI1MDU1cC0xLAorICAgIDB4MS5iN2Y3ZmM5OTdiZmUzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMHgxLjA1Yjk0NGNjNDYwMGI3ZjYxMWI0NDU1MDkwMWYwY2VlcC0xLAorICAgIDB4MS5iZThjZDc2NzhmNTIxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLjhlOWY2ZTFkM2RlY2M3ZmZmNTU2MzBlYTVjY2ZkMjg5cDAsCisgICAgMHgxLmMwMWZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuZmZjN2FkOTE1M2ZmMmZkN2E3ODg3NjY2ODBkOWEzNThwLTIsCisgICAgMHgxLmMxNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS4xZGMyY2IzODhkYzk2ODAwMDA0YjFjYTVhMjFhZjZiMHAwLAorICAgIDB4MS5jMTk2YmE3YzM4Njk5cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLmZiMjlkODE1ZDE0OTg4MGE3Yjk1OWMxZmI4Mzc0ZmQwcC0yLAorICAgIDB4MS5jMjdhMDRlYTM4Y2RkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLmZiMGYzODc1NGEwY2Y3Zjk2Yjc0MTdiNzM5ZmQ2NzEycC0yLAorICAgIDB4MS5jMjgwNTg2OTc3ZmQzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLmYxODg0Mjg4MDA4ZTk3ZjgxZTFiYmRkOTU1Mjg3ZTVicC0yLAorICAgIDB4MS5jNGJlZDM0NWVhNDFhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLmViOTc0ZDg5ZTFjMTM2MDI2YzY4NThiOTYzZjRmMGQycC0yLAorICAgIDB4MS5jNjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuZTI5N2RhODNkZjA1ZjYyYzMwMjIzMjRjNTBlYzE2MTFwLTIsCisgICAgMHgxLmM4MmY2YjFjM2Q5MDZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuNTg5YzI5NjM4NDZjYTgwMTA3NGE0NzhiNTVmNmI3Y2FwMCwKKyAgICAweDEuYzg0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLmNkZDlmOGQ2ZTc3N2Y3ZmZmZjg1M2YwOWEwNmI1OTExcC0yLAorICAgIDB4MS5jY2NjY2NkNDQyYmY5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLmM0MjkwN2MzN2QxYjI3Y2MwZmEzMzUwYTI4MTc5NDIxcC0yLAorICAgIDB4MS5jZWU0MzdjNGQ2MTE1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLmJmMDVkYTQ1MGM5N2Y3Zjg4MjZjOGJmYWE5ZTBhZjk1cC0yLAorICAgIDB4MS5jZmZiYmY3MDJhNzMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLmJlZGY3MGQzNzAzNjE3ZmFjNjUyMGYwMzM3YmY0YTU2cC0yLAorICAgIDB4MS5kMDAzZGRmNTkyM2JhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLmI1ZDU4MjRjZDVhNWI3Zjg0ZTkyNzExM2RmNTBjYTFkcC0yLAorICAgIDB4MS5kMWU4NDIxMzA3OWEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLmE4NThjMjMxMTkwZTE3ZmE5YjIwYTNkMDM3ZWMwZTQzcC0yLAorICAgIDB4MS5kNGE5YzE2YjZiNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjlmNmM3ZmU4NzIzNzc3ZmIzZDI1NjYyMTE5NGViNmYxcC0yLAorICAgIDB4MS5kNjcxMTA1OWIyY2UzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgMHgxLjlkNTk3OGVmMjA0N2I3Zjk3YjA5M2FkNzU0MGIzOWI4cC0yLAorICAgIDB4MS5kNmQ5OWEwYzkwYTZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLjljYjE4OTY0NWIyZGY3Zjc5YjMwY2I3NWRmZjc4ZTBicC0yLAorICAgIDB4MS5kNmZhOGYwMTAyM2NmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjk3YjU3NDIyNmM3ZDc3ZmQ5YjNiZDNiYzhiYTc3ZGQ5cC0yLAorICAgIDB4MS5kN2YzNWU0ZjBlMTk0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLjk2MTNlMjUwZGE3M2U4MDU2YmVmMjJlOWZlMjk5MDc4cC0yLAorICAgIDB4MS5kODQ0MmExNmY4YTA1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLjk1ZTQ3NDkxMzNmMmE4MDZjYzE1NjFlYzkzMzgxYTA5cC0yLAorICAgIDB4MS5kODRkNTI3MWVjY2VkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLjg1OGM4YzBlMGYzNGJmOWI4N2JlOTA4ZDBlOGNkMzY1cC0yLAorICAgIDB4MS5kYjY1OGQ0N2E0ZjAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLjZiZjM4OTEzNjI2YWE3ZmYxYjhiMTViMDQ4MTQ1NmU1cC0yLAorICAgIDB4MS5lMDAwMDAwMDdmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLjNjMjMyOGRkYTg1NzEwMDFmMWZhM2E0YjFiNzM4YWIycC0yLAorICAgIDB4MS5lN2NiMDdiYTgwOTdhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLjM3ZmE3Zjg4YmQ1NGQwMDIzYjg2NGIyMDdhZjAzMDdjcC0yLAorICAgIDB4MS5lODZiYmYzNTAwN2RmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLjI5Y2U3MTkxY2MyZmU3ZmYxYWVlNGEyOTg4NjZmYTEycC0yLAorICAgIDB4MS5lYTdmZWFmMjlkNTU4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLjFjZWRmMjJlZGZkYWVlNTgxYTI4NDIzYzM3NGE2M2U5cC0yLAorICAgIDB4MS5lYzRlOWE1OTYxM2FjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLjExMGU5YTNkOTNlNWQzYjY2MWRjODg2YjdkZmMwMTQ1cDAsCisgICAgMHgxLmVlYWMyMDA2MjliNWRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEuZmZkM2JmMDZlZDI2NDJmMWJmNjQ2ZGU0ZGZiOTBmMTRwLTMsCisgICAgMHgxLmYwMTgwNjhmODRiZGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuMTA2ZWYwMjZhYjdlNzNjYjYyNTZhYjI5MzgyYTA1ZjNwMCwKKyAgICAweDEuZjBkYWYxNTRkZTcyY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS5lY2Q5MWVjZjVhOWU4MDAwZmNmMGZlMmE0ODE2NzZiOXAtMywKKyAgICAweDEuZjEzZWZhYzIzNDA2OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS5kNzU3NzI1NDZiZmM3ZjNkODc1MTFjZTAwOGI4YjhjM3AtMywKKyAgICAweDEuZjI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLmQ1Yjk2OTMyMzdhY2U4MjFmZTg3NWNjZWZkNGNjNDE4cC0zLAorICAgIDB4MS5mMjk3OTI5ZmU2M2NhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLmFmNmMyZDRiNTlkZTA4MDE2ZmNlZjJmMDE0OGE3NDZkcC0zLAorICAgIDB4MS5mNGFlODc1YzZiYWNicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgMHgxLmE2YmUwMzYxMDAxZWU4MDYwYWYyYmE0ZGQwYzUwYWE5cC0zLAorICAgIDB4MS5mNTIxOGE5MWJhYTA3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLjBlZTg1YmFhNWViN2YzZmJlMWZjY2QwOGJjM2I0NDkycDAsCisgICAgMHgxLmY2MmVjM2I5N2I2MGNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAweDEuMGU5YTk0MWIyMzIxMzNmYTYzNzcyY2M2YTA5MTE3MWJwMCwKKyAgICAweDEuZjczZGNmNzNkY2Y3MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS42YzQyNGIzNDMyMzhiN2M0NGI1MWJkNzdjNzE5MDE2MHAtMywKKyAgICAweDEuZjdlYzQzNGQyMDFkMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS42YTgzMDE3ZGZiNTRkZTU5ZTkxOTI0NzAxODg2NjJjZnAtMywKKyAgICAweDEuZjgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLjkwMjUyZDJjNDJjZDk3ZmZlOWJlNTBmOTMyMjUxNmNjcDAsCisgICAgMHgxLmZhODZjZDdjZjM1MTNwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAweDEuMGQ1OGEzNjBjODdjNGJiZjNkMjlkMGY0YTgyMTY5YmJwMCwKKyAgICAweDEuZmI5ZGM1Y2E3MzcyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS5mYTZjNjUxYmYzMmQ3ODY2MGZiNjJiYTg0NjhhOGNjMHAtNCwKKyAgICAweDEuZmMxNzc1ZGJlZjFhYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS5mN2MzMjhjZjgzNGNkODdkZTJiNjM5NTA5ZGRhNWRlMXAtNCwKKyAgICAweDEuZmMyMWVmM2I5ODk5MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS5mM2M4ZWQyN2VmOWYyODNmMmFjNzBlYzlkNjA5OGQxOXAtNCwKKyAgICAweDEuZmMzMTdjZDY5MWY1MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIDB4MS5lZWE2ZTk2Yjc1ZWFkODA3YmFjYTkwNmU1OGJiODA1OXAtNCwKKyAgICAweDEuZmM0NTYwYTAyZDcxMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS4wZDFhNGNmMWIxZmQ3M2I5YzRhOGI1MDE3ZDY0NWYzYnAwLAorICAgIDB4MS5mYzc2NDUzZTZiYWU4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgMHgxLmRmMzQ5NGM3NTU2YTAzZWNmNzU2YmY0YzVjMWQyNGI3cC00LAorICAgIDB4MS5mYzdmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLjBkMDUxMDNiNDJjOTk0MGU2ZTZjNzA1ZDY1ZTE3ODU4cDAsCisgICAgMHgxLmZjY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDB4MS45YzliYjViNGM5NGM4MDAxYjgxN2ZlZGIwZWFjYTBlY3AtNCwKKyAgICAweDEuZmQ2NzhhNWE3Mzg1ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS5mNGYzOTg3Y2Q2OGZmODY5MDA5MzBhMmI5OTE0OGY0ZnAtNSwKKyAgICAweDEuZmYwYjAxNmY3Y2I4YnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIDB4MS5iOTZmZTlhZmE0YzE0ODE1MmY0OGRkOWVhNzQ1NjVkNnAtNSwKKyAgICAweDEuZmY0MWJmMTg4NjIxMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS5hMzgxODkzNjBlNTg0YzJjMzE1YzM3Yjc0YThkZTMyNHAtNSwKKyAgICAweDEuZmY1NDJkNGFmMzNlNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDB4MS5kZWYyZmViNDI3ZjU4Njk5NDViMWU2MzQ0NmRhYWM4ZXAtNiwKKyAgICAweDEuZmZjN2ZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS45MTFmYjkxOWFhMTNhODAwMDNkYWI2NmVlYjkzYWY0N3AwLAorICAgIDB4MS5mZmY3ZmZlcC05CisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgMHgxLjdiYjk2ZDY4OWJlN2NhMTAzMGU0M2JjM2ZlY2I4MTlhcC04LAorICAgIDB4MS5mZmZkY2NjMWQ3MDFmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLmI5NWU1NDU0MWEwNzFmZmNjNTU5ZTU3NWUxYzQ1ZDg0cC05LAorICAgIDB4MS5mZmZmNDFjMjgzNzUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgMHgxLjk0NjRiYzFmZWE1ZTQ3NmZjN2M3MzA4NDdlZjIwNzJjcC05LAorICAgIDB4MS5mZmZmNjA0YzgxZjM1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLjIzODBjZTMzY2NjNWQ4MWExZGE0MmE2NjgxOGI1MWY0cC05LAorICAgIDB4MS5mZmZmYWQwNDdjZDdicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgMHgxLjBjMTUyNGJjZWI1MThjM2JiNjhkMmQzYzMyMGZjNTU4cDAsCisgICAgMHgxLmZmZmZmYmJmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuZmVmZmMwMzhjMzY4Zjk2NzI2MTk1NTE3MmIyZDIxZTJwLTEyLAorICAgIDB4MS5mZmZmZmMwM2ZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgMHgxLjgyMWQwOTczYjRhMGIwMDE2YzZiMWVkZmNjMDZiNmZmcDAsCisgICAgMHgxLmZmZmZmZTNmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuOWViMDRkNDliMjI1OTg2YTkwNjkxNzIwYjk2NzU4OWFwLTEzLAorICAgIDB4MS5mZmZmZmY1ODEwNTMzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMHgxLjM5ODhlMTVmOThmM2RkMzY2NWE3YTcyZDk3NTQ3NjE3cC0xMywKKyAgICAweDEuZmZmZmZmOWZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS5iYjY3YWVkMmUyMzcxNjJjOGFkOTZiNTQ4MmY2MDJiZXAtMTQsCisgICAgMHgxLmZmZmZmZmNmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAweDEuNjUxNGJhOTA5ZmJiZjMyMjZkZmQ3MzVkZmRmNDIxOTFwLTE0LAorICAgIDB4MS5mZmZmZmZlMGRlZDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLjkxMWZiNTE5YTAxMzI3ZmZmZmFmZjYzY2ZlNTFhNmZmcDAsCisgICAgMHgxLmZmZmZmZmYwMDEwNTBwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAweDEuMGMxNTIzODZlMWQyZjQxNzk5YTZiMjg5YjFkYjllNmNwMCwKKyAgICAweDEuZmZmZmZmZjFmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIDB4MS4zOTg4ZTdjOGQ0ZjYwZjAwM2U3NTBlNzEyOWViMzFjZHAtMTYsCisgICAgMHgxLmZmZmZmZmZlN2ZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuZGVlZWIyMzE2NDAxY2IyY2I3N2FkYTAzY2E4ZGQ0MzFwLTE3LAorICAgIDB4MS5mZmZmZmZmZjFmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLjc1MmVhOGE5ZGI5MzNkN2RmMWQ2Y2ZmYjAwMDA3YTVhcC0xOCwKKyAgICAweDEuZmZmZmZmZmZkZGZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS5kZWVmYjJjMzI1MzBiYWIzMGNmOGJiYjBhNjkyOGY0Y3AtMTksCisgICAgMHgxLmZmZmZmZmZmZjFmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuMGMxNTIzODJkYWFkMmM0MWQwOGFiMDkxZjlmNDNhYzZwMCwKKyAgICAweDEuZmZmZmZmZmZmM2ZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIDB4MS5iMDAwMDAwMDAwY2QwODAwMDAwMTA2YmM4MDY2NjgyM3AtMTksCisgICAgMHgxLmZmZmZmZmZmZjQ5YzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAweDEuMGMxNTIzODJkN2MxNzdkYmI1YzdiNTFjNGU4NzZlNzFwMCwKKyAgICAweDEuZmZmZmZmZmZmZTFlMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIDB4MS45MTFmYjUxOTk4MTNhODAwM2ViMDQ1Mzk0MTdjZDQwM3AwLAorICAgIDB4MS5mZmZmZmZmZmZmZmQwcC05CisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLjBjMTUyMzgyZDczNmFiNjljYzZjMzZmNTRlMGE5NThicDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZWVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAweDEuODAwMDAwMDAwMDAwMDkwMDAwMDAwMDAwMDA5MWNjY2NwLTI1LAorICAgIDB4MS5mZmZmZmZmZmZmZmY3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjBjMTUyMzgyZDczNjczZmNkNjliODY1YzAwMTBjZjk2cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuNGQ1MzQxYjAwYmU4YTdmZWQ0YzVkZmRjMmVlZTFjY2JwLTIsCisgICAgMHgxLmU1MWNmZTNiMWJhOGJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuMGMxNTIzODJkNzM2NTg0NjViYjMyZTBmNTY3YWQxMTZwMCwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS4wYzE1MjM4MmQ3MzY1ODQ2NWJiMzJlMGY1NjdhZDExNnAwLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLmRhMjI4NTliMmQ1YzI3YzJkNDVjZTc1MDcyOGM4ODA1cC0xLAorICAgIDB4MS4zM2I2NDVhMWNhYzA4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTkxMzAzMDEzOTU0MWI5YjgzOWEycC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjkyMWZiNTQ0NDJkMTkxMzAzMDEzOTU0MWI5YjgzOWEycC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgMHgxLjM1OWQyNmY5M2I2YzMyNTUxYWQ1Y2Y2M2I2NTQ5YjU3cDEsCisgICAgLTB4MS44cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLjBjMTUyMzgyZDczNjY2YmNhNjliODhmMDQ3OTBiNzZjcC0xLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLjBjMTUyMzgyZDczNjY2YmNhNjliODhmMDQ3OTBiNzZjcC0xLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgMHgxLjllN2M5Yjg5MjYwZTNiY2I0NGQxNGE4ZmRhYzFmZDcwcC04LAorICAgIDB4MS5mZmZkNjBlOTRlZTM5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjODUxNzAxYjgzOWEycDAsCisgICAgMHgxLjBwLTgyCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0NjE4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjBwLTYxCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgMHgxLjkyMWZiNTQ0NDI5MTg0Njk4OThjYzUxNzAxYjgzOWExcDAsCisgICAgMHgxLjBwLTQyCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLjkyMWZiMTQ0NDJkMTg0Njk3ZWUyMWE2YzU3MGQ0MjJhcDAsCisgICAgMHgxLjBwLTIyCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLjkxNmFiMDQxZjkxNTUyMmM3YTYzNDUyNzY5MGU4MmE1cDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAweDEuOTE2YWIwNDFmOTE1NTIyNDdhNjE0NTI2YTkwZTMyYTVwMCwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtOQorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIDB4MS45MTZhYjA0MWY5MTU1MjFjN2E1ZjQ1MjVlOTBkZTJhNXAwLAorICAgIDB4MS42YTA5ZTY2N2YzYmNkcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLjkwYjVhYWU1MmM3OWIyYWE2NmIzNmQ1NzdiOTUxYWI1cDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAweDEuOTBiNWFhZTUyYzc5YjI5YTY2YTM2ZDNmN2I2ZDFhNzBwMCwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtOAorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS45MGI1YWFlNTJjNzliMjhhNjY5MzZkMjc3YjQ1MWEyYXAwLAorICAgIDB4MS42YTA5ZTY2N2YzYmNkcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLjhmNGI5ZGIxZjU5YTc4NDUwNzI4ZDA3ZmNlYzgyODQ0cDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuOGY0YjlkYjFmNTlhNzgyNTA2YThjZDdmYmFjNzljNGNwMCwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtNworICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDB4MS44ZjRiOWRiMWY1OWE3ODA1MDYyOGNhN2ZhNmM3MTA0OXAwLAorICAgIDB4MS42YTA5ZTY2N2YzYmNkcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjhjNzc2ZjdkNzI5MWY1MTM5MmY1Yjk4YjRmOWVmNjQwcDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEuOGM3NzZmN2Q3MjkxZjRkMzhlZjU1OTgxNGU4NmQ3MWRwMCwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtNgorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS44Yzc3NmY3ZDcyOTFmNDkzOGFmNGY5Nzc0ZDZlYjc5ZnAwLAorICAgIDB4MS42YTA5ZTY2N2YzYmNkcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLjg2Y2U3NDdlYjVjYjk5NmNhZjQ0NzA5NzE3ZmVmMDkycDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuODZjZTc0N2ViNWNiOThlYzhmMzg2Yjk0ZTcwMjdmZTFwMCwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtNQorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIDB4MS44NmNlNzQ3ZWI1Y2I5ODZjNmYyYzY2OTJiNjA2MGM1YXAwLAorICAgIDB4MS42YTA5ZTY2N2YzYmNkcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLjdiNzc4NTJjNjMxYzM4MTYwOTEyZDRiZmYwNGU0MWUycDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEuN2I3Nzg1MmM2MzFjMzcxNTA3OTA1MDU4MDFjMzU3OWNwMCwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS43Yjc3ODUyYzYzMWMzNjE0MDYwZGNiZjAxMzM4NTY3MXAwLAorICAgIDB4MS42YTA5ZTY2N2YzYmNkcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLjY0YTE0NDIxN2E4ZjA0MzExMmRlNWY1NTU0NGUxYzI4cDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuNjRhMTQ0MjE3YThmMDIyOGUxOTU1ZTc5ODRiM2Y3MWJwMCwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtMworICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDB4MS42NGExNDQyMTdhOGYwMDIwYjA0YzVkOWRiNTE5MTQzNXAwLAorICAgIDB4MS42YTA5ZTY2N2YzYmNkcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLjM1OWQyNmY5M2I2YzM5MDVlNmQ2ZWY1ZWIwZjU3NGFkcDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAweDEuMzU5ZDI2ZjkzYjZjMzRiZjMzMWQ5NzU1YTY4YTdhZmNwMCwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS4zNTlkMjZmOTNiNmMzMDc4N2Y2NDNmNGM5YzE4OTdmZHAwLAorICAgIDB4MS42YTA5ZTY2N2YzYmNkcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLjkxNDIwMTUxNDk4YWRjNjFmYjI3NGYwOWU1NGYxOTM3cDAsCisgICAgMHgxLmJiNjdhZTg1ODRjYTlwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAweDEuOTE0MjAxNTE0OThhZGM1OWZiMjQ0ZjA4MzU0ZTBiMzdwMCwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAtOQorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS45MTQyMDE1MTQ5OGFkYzUxZmIyMTRmMDY4NTRjZmQzNnAwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FicC05CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLjkwNjQ0Y2I4MDg0YTI4OWUwZmRhZjMxOWEzZDcyZDBicDAsCisgICAgMHgxLmJiNjdhZTg1ODRjYTlwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAweDEuOTA2NDRjYjgwODRhMjg4ZTBmYzJmMmUzYTM1MDJiYWFwMCwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAtOAorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS45MDY0NGNiODA4NGEyODdlMGZhYWYyYWRhMmM5MmE0OHAwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FicC04CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLjhlYThkZWY5NzNhMzQxOWY4NjcyZGU2Mjc0ODFjYzE2cDAsCisgICAgMHgxLmJiNjdhZTg1ODRjYTlwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuOGVhOGRlZjk3M2EzNDE3Zjg1YjJkN2EyMzBmZjA3NDVwMCwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAtNworICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIDB4MS44ZWE4ZGVmOTczYTM0MTVmODRmMmQwZTFlZDdjNDI2N3AwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FicC03CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLjhiMzFkZjE4ODkzNjcwOTEyYjFjMWJlNDg4OTg4NGVmcDAsCisgICAgMHgxLmJiNjdhZTg1ODRjYTlwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuOGIzMWRmMTg4OTM2NzA1MTI1MWI0M2MyYzMwZTE1ZmNwMCwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAtNgorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS44YjMxZGYxODg5MzY3MDExMWYxYTZiYTBmZDgzYTY5OXAwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FicC02CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLjg0NDJiYmQyN2YwMzZkZWM5NDZhMWZiZGJmZTA3ZDhmcDAsCisgICAgMHgxLmJiNjdhZTg1ODRjYTlwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuODQ0MmJiZDI3ZjAzNmQ2YzY0NGYwZWQyYTU2MWI5YWFwMCwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAtNQorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDB4MS44NDQyYmJkMjdmMDM2Y2VjMzQzM2ZkZTc4YWUyZjI0YnAwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FicC01CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLjc2NWI0YzQ4MDQwMjE5NjY2YjJmZWY1OWZjYjBkMmQ0cDAsCisgICAgMHgxLmJiNjdhZTg1ODRjYTlwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEuNzY1YjRjNDgwNDAyMTg2NGU3Yzc2OGY3ODk2ZGY4ZWZwMCwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAtNAorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS43NjViNGM0ODA0MDIxNzYzNjQ1ZWUyOTUxNjJiMDJkNHAwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FicC00CisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLjVhNDE3ZGFlMzFiZjgyMDU5ODhlMWFmYzI5NGI5M2U3cDAsCisgICAgMHgxLmJiNjdhZTg1ODRjYTlwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEuNWE0MTdkYWUzMWJmN2ZmOTI4MjdkYjE2MWEwZTA0MTFwMCwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAtMworICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS41YTQxN2RhZTMxYmY3ZGVjYjdjMTliMzAwYWNmODVmOXAwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FicC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLjFmN2E5MDY5NWNhOTA0NmY3ZjcxMWYzYzUyNzE3ODhkcDAsCisgICAgMHgxLmJiNjdhZTg1ODRjYTlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEuMWY3YTkwNjk1Y2E4ZmZmZjc4YzkxMDQyMmQwOTE3OWJwMCwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS4xZjdhOTA2OTVjYThmYjhmNzIyMTAxNDgwNzk3NDBlZXAwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FicC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEyOAorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMHAwLAorICAgIDB4MS4wcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOTllcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4Mzk5ZXAwLAorICAgIDB4MS4wcC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5OWVwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLjkyMWZiNTQwNDJkMTg0Njk4OThjZTUwYzU3MGQ4ZWY3cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLjkyMWZiNTQwNDJkMTg0Njk4OThjYzUwYzU3MGQ4ZWY3cDAsCisgICAgMHgxLjBwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLjkyMWZiNTQwNDJkMTg0Njk4OThjODUwYzU3MGQ4ZWY3cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLjkyMWZiNTI0NDJkMTg0Njk4OThkYWZjMWFjNjJlNDRjcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLjkyMWZiNTI0NDJkMTg0Njk4OThjYWZjMWFjNjJlNDRjcDAsCisgICAgMHgxLjBwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgMHgxLjkyMWZiNTI0NDJkMTg0Njk4OThhYWZjMWFjNjJlNDRjcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLjkyMWZiNGM0NDJkMTg0Njk4OThiNmZjMWFjNjJlNDRjcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgMHgxLjkyMWZiNGM0NDJkMTg0Njk4OTg3NmZjMWFjNjJlNDRjcDAsCisgICAgMHgxLjBwLTI1CisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgMHgxLjkyMWZiNGM0NDJkMTg0Njk4OTdmNmZjMWFjNjJlNDRicDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTI1CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLjkyMWJiNTQ0NDJjNmQ5YmVmZTk1NGRhMDg3NjU1NDdmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLjkyMWJiNTQ0NDJjNmQ5YmVkZTk1NGQ5Zjg3NjU1NDczcDAsCisgICAgMHgxLjBwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLjkyMWJiNTQ0NDJjNmQ5YmU5ZTk1NGQ5ZDg3NjU1NDVicDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLjhlMWZhYTk5NGI1NzMxODUzZTU5ODc2NDIzMzMxYTMycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuOGUxZmFhOTk0YjU3MzE2NTNkNTk3YjYzODMyYTU5YmNwMCwKKyAgICAweDEuMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS44ZTFmYWE5OTRiNTczMTI1M2I1OTYzNjI0MzE4ZDhhMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjhhMWY1ZmU1NTI3NGEwOWFkYWM0MWFkOTIxNDc5N2Q4cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuOGExZjVmZTU1Mjc0YTA1YWQyYzI5YTg5MGZjM2E3MzBwMCwKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS44YTFmNWZlNTUyNzQ5ZmRhYzJiZjk5ZThlY2JiYzQ2MnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLjgyMWQwOTY1YWQ5YjZiYTNiZTMxN2I4MmE1YTA5YzkzcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEuODIxZDA5NjVhZDliNmIyMzdlMDE1MzVmODYwM2EzYWNwMCwKKyAgICAweDEuMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS44MjFkMDk2NWFkOWI2YTIyZmRhMTAzMTk0NmM5YTVjZXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjcyMGEzOTJjMWQ5NTQ5NTNjMGYwMWRjY2Q3Mjk2ZjkycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEuNzIwYTM5MmMxZDk1NDg1MWJhZGJkNmNkMmQ4ZTc5MmNwMCwKKyAgICAweDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIDB4MS43MjBhMzkyYzFkOTU0NjRkYWViMzQ4Y2RkYTU4MmExM3AwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgMHgxLjUxNzAwZTBjMTRiMjUyMDBkZmY5YjZmZGEwZjczNmUzcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuNTE3MDBlMGMxNGIyNGZmMDE1NjU1YzVlYzVhN2FhYTNwMCwKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDB4MS41MTcwMGUwYzE0YjI0YmNlODAzY2E3MjEwZjA1NDQxM3AwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgMHgxLjBjMTUyMzgyZDczNjVjZTRjNTg0OTIxYzFkODdmMGVkcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuMGMxNTIzODJkNzM2NTg0NjViYjMyZTBmNTY3YWQxMTZwMCwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIDB4MS4wYzE1MjM4MmQ3MzY0ZjA5ODgxMDY1ZjVjODNiOWUxYXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwYWFhYWFhYWFhYWFhYWJkZGRkcC0yNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDAuMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgMHgxLjkyMWZiNTQ0NDJkMWJlNzE2Y2UwOTNiOTRmYjgzOWEycC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgMHgxLjkyMWZiNTQ0NDJkMWE3ZDBjZTdhMTQ3ZDg1MzgzOWEycC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLjkyMWZiNTQ0NDJkMTkxMzAzMDEzOTU0MWI5YjgzOWEycC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTdhOGY5MWFkMTYwNWVkMzgzOWEycC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMHgxLjkyMWZiNTQ0NDJkMTYzZWVmMzQ2OTZjYTFmYjgzOWEycC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgMHgxLjBjMTUyMzgyZDczNmE2YmNhNjliODhmMDNkODE4NmQwcC0xLAorICAgIDB4MS5iYjY3YWU4NTg0Y2E4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgMHgxLjBjMTUyMzgyZDczNjg2YmNhNjliODhmMDQ0NDQ4NmNkcC0xLAorICAgIDB4MS5iYjY3YWU4NTg0Y2E5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgMHgxLjBjMTUyMzgyZDczNjY2YmNhNjliODhmMDQ3OTBiNzZjcC0xLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLjBjMTUyMzgyZDczNjQ2YmNhNjliODhmMDQ3NjYxOGFmcC0xLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMHgxLjBjMTUyMzgyZDczNjI2YmNhNjliODhmMDQzYzRhYTk1cC0xLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMC4wLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDB4MS4wMDAwMDAwMDAwMDAwMGFhYWFhYWFhYWFhYWFiZGRkZHAtMjYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAweDEuOTIxZmI1MjQ0MmQxODQ2OTg5OGNhZmMxYWM2MmU0NGNwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuNTViY2YzYzRhNDY5NDBlNDY3OTYxYTY5MjYyNjExODhwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAweDEuM2NiMDc4NTMxOWI3MzQzMDZmYTczZTdjYjgyZWI1NDBwMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMC4wCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvYWNvc2ZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2Fjb3NmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZGNhOWE2Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2Fjb3NmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDk4MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGZsb2F0LCBmbG9hdD4gZ19hY29zZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIDB4MS4wYzI1N2E3MDUwZmMzY2VhMjRmMzAyOWEyYWQyZTgxNXAxLAorICAgIC0weDEuMDAzODk4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS4wYzVmMTY3OTQyODRhODE0ZTU3ZGQxYWVhZmYyOTM1ZHAxLAorICAgIC0weDEuMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMHgxLjBjOGIwYTc3OTAwOWMzNzc1ZWVlMzU4YmUxNTNiYTY1cDEsCisgICAgLTB4MS4wMTk4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS4wYzljNjY3NjMwYWMxNDY1YjYxMmJlOTFmODgwMDMwNXAxLAorICAgIC0weDEuMDFkNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEuMGNhOTIyNDM2YTBmZjkwMmM2Y2VhN2JlZTM5ZjIxNjRwMSwKKyAgICAtMHgxLjAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS4wY2IyNjU3ZTBkY2U4NDRhYWQxMGQ1MjExYWQxNDM5Y3AxLAorICAgIC0weDEuMDIyMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuMGRmOGI5ZmZkNTI3YWEyMTdlNjY4ZWVkNWI5ODEzMGRwMSwKKyAgICAtMHgxLjA2ODRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLjBlNjc3ZDZjYTE2YTBhYTNhOWQwZTEyMzI0YjU2YjdmcDEsCisgICAgLTB4MS4wOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEuYjMzNzQ4MDA2OTJlNjJjY2IyODIzMmNmMTI0NDAzZWZwMCwKKyAgICAtMHgxLjA4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS4wZjkzMTk3ZDMxMTA2ZDlmOWRiYTljZTg4ODQ2ZTUyMHAxLAorICAgIC0weDEuMGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS4xMTIzZTU2ZDFkZTEzNDc0MjZmNmZhM2EyNWI5NWM4Y3AxLAorICAgIC0weDEuMTE1MGRhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuMTEyYWJkOGU1NjBiNjEyOTVmNzZjMzc4NTRjYzQwNGRwMSwKKyAgICAtMHgxLjExNjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5lNjc4ZDMwMDZkZmVlYTg0NjY1MDhlOWM2ZmVlNjdhNHAwLAorICAgIC0weDEuNGI1MjI4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEuOTc5ZmQxMDA2NzBkNTc2Njg4Y2ZhYTY2MmU4OTQ4MThwMCwKKyAgICAtMHgxLjYwcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEuOTIxZmI2MDA0MmQwODQ2OTg5OWRhYjBjMTIwNThmNTlwMCwKKyAgICAtMHgxLjc3ZmZmZXAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS4wNzgyOGJmZmJkMjZhOWY1NDI1YjNjNzY5MWQxMTQ1ZnAxLAorICAgIC0weDEuZTBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS44MjFmYWVmMDYxODE0M2M4NDYxNDkxZmMwMjk4NDIyMHAxLAorICAgIC0weDEuZmMwMTUycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuODU0OTExMDY3ZDAwYjA0Zjg5NTcyNGQyNGQyODMwYTRwMSwKKyAgICAtMHgxLmZkNmQ0MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLjg5MmIyOTA2OGY1ZWQ2MGNiYzgxNDFjZWIxZmYxNzAxcDEsCisgICAgLTB4MS5mZWJmNThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS44OTJkN2FmYjAxNWFiMzdkNmVjY2M3ZmY3NzcyYjQ0N3AxLAorICAgIC0weDEuZmViZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuOTIyZmI1MDAzNTdjMGQwZGY4MTQ1OTNlZDBkOGE2ZjZwMCwKKyAgICAtMHgxLmZmZjc3ZXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS5kMmNmNTRmZjkyOWUyZDViZTE0MTZjNTBkOWQ3OTY2MnAwLAorICAgIC0weDEuZmZmZmM2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEuNTE2ZmVjZmY2YWRmYTMxM2YyNTFhZWQxZTFhMjJmNTFwMCwKKyAgICAweDEuMDAwMDgwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuNzIwYTIyZmY5N2I4MzUzNTYxMmNiYTEyMDI5YzYyNmNwMCwKKyAgICAweDEuMDAwMGIwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuOTIwZmI1MDAwMDI2Yjc5ZDFhMDNmZWFlNjBiM2FkMThwMCwKKyAgICAweDEuMDAwNDQ0cC0xMgorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLjBjMDI5NmZlOTNjYjhlMmRmMDQ5ZDA3ZmMxZjcxNTczcDAsCisgICAgMHgxLjAwMjAyMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLjBiZWNhYzAwMDFlZDk1Y2FhYmM4YWFmN2FjNzFiYWFkcDAsCisgICAgMHgxLjAwNDYxNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLjgyMTQ0NGZmZmE1MDIwNThmZWU2NGQyOTQ0M2Y2NjczcDAsCisgICAgMHgxLjAwOGNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS45MjFmYTUwMDAyZDE4NDY2YmMyZmJhZjJkZmJmZTVjMHAwLAorICAgIDB4MS4wNDQ0cC0yMAorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLjg5ZmM1MjAwMDA2ODYwZDY2NGYxNzc5ZjY0MzNiYjZicDAsCisgICAgMHgxLjA0NjEyZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLjA2NmQwNmZmMjRjYjA4NjUwN2EzMTM2Y2JlMTdmNTNicDAsCisgICAgMHgxLjA5YmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS4wMDRiMjQwMDE4NGE2NzgzY2NlMzdjNzcxMjRmYmFkN3AwLAorICAgIDB4MS4xNDI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEuOGRjZTJiMDAwMDAwMjA0N2VkMjA5MWNiYTA4ZTY0NWRwMCwKKyAgICAweDEuMTQ1ZjM2cC02CisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEuZmY0ZTQzMTYxZjhlMTU2OGUzY2VmNWVhOTU1ZTI3YWVwLTEsCisgICAgMHgxLjE1MzhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS5mYmZkOWM4MDIzMGJiZWNlNzM4OWMyMzY5N2NjZjJmYnAtMSwKKyAgICAweDEuMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS5mYjU2NTIwMDZiOTI0YzM3Yjk4Yzg3ZGFlYjFkODJlY3AtMSwKKyAgICAweDEuMTg4Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLmZiNDJhNDMwZTAwZWRiZDVkYTI0ZjMzN2UxZDIzMDc5cC0xLAorICAgIDB4MS4xODljNzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS5mYTZmNGYyMzRiNzU5ODZkYjJkYjViNWRjNWM0OGNlY3AtMSwKKyAgICAweDEuMTk0ZDIycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuZjc3YTE4MzBjMTNiZGFkODY3ZDZjNGI5MDYxNmYwOTBwLTEsCisgICAgMHgxLjFiYzQ5ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLmY1NzMyNTBlNjgzZTNmYWQyM2RiNjZjMzE5MTYxODU0cC0xLAorICAgIDB4MS4xZDc0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuZjI2NTAwMGM0YmZhYmU3NzJlNzYxMmZkOTdmZWQyNzJwLTEsCisgICAgMHgxLjFmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS5mMjYwMmJmN2Y0NGY3ZGU4Nzg0ZWI5NWQxYmViYTg5YnAtMSwKKyAgICAweDEuMWZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuZjI1ZGU0ZmUyNGY3Y2YyN2NkMzE2ZDI4MjA2NzhmMmZwLTEsCisgICAgMHgxLjIwMDFlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLmYxOTZkOTAwMDQ1NDU3ZmQzYjU0YzM0ODljN2M5OGJlcC0xLAorICAgIDB4MS4yMGE2NWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS5lY2FmM2IwMDA1Yjc1ODUxODU4M2NmMjc4ZGIyYWU4MnAtMSwKKyAgICAweDEuMjRiMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuNmQ2OTVkZmZmZjliNjE3NWMxZDY5NjBkNTQwMmU4NmNwMCwKKyAgICAweDEuMjRiMTQ4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuZTllM2VkZmU1MjI5N2I3ZTNiZGE0M2VkY2VjMjhhZjVwLTEsCisgICAgMHgxLjI2ZjljYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLmU4ZTA0Y2ZmMTI5YzM4MTliMTA0N2ZmMWYxNzgzODI4cC0xLAorICAgIDB4MS4yN2NkZGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5lODU5YzMwMDAzMzk1ZTBkYTU1Y2MxMDBiZjY2MTIyZXAtMSwKKyAgICAweDEuMjgzYmEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuZTBjMWQ2MWQ3OGNkOTRiOWQ5ZTZlYzc1NjJlYzIzNmZwLTEsCisgICAgMHgxLjJlNjRiZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLmRkZmY3MjM4MTNlMzhhNDQxYzc4YzcwNDk2YTY1Nzg4cC0xLAorICAgIDB4MS4zMDlkYTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS44ODZlNTUwMDEzOTZlM2Y0NzUzMmQ4YTc4Nzc5NGYxNHAwLAorICAgIDB4MS4zNjE5MTBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS5kNDEyMTYzMWNmN2NmM2I1MTdmNDcxYjQ1NmJlYmRlMHAtMSwKKyAgICAweDEuMzg4OTgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEuY2E5NDk1ZmI3YjJhYzU4M2Y3YjYxMmI2NTliYjRkNzVwLTEsCisgICAgMHgxLjNmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLmM0OTU3MzUyYWE4MmU5ZTYwMmE3NTcxNmMwODdkMzU1cC0xLAorICAgIDB4MS40NGE4YjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIDB4MS5iYWEzMDkwMzBmNTU1ZDY2YTY0YTNjNTBkNDljYTBlNHAtMSwKKyAgICAweDEuNGM0OWVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuYWVhMTMyZmI4OThhMTFiYTY1ZGU2MTJjZjMyYzdmNmNwLTEsCisgICAgMHgxLjU1NTRkYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgMHgxLjY2OGYxZjAwMTI1NWQxYjg4NDRjMmJmN2Q4YjgwNGRlcDAsCisgICAgMHgxLjVhZDZiMHAtMworICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLmE2MzNiYWY2N2QzNTBiMDdjZDYxYzE3N2FiMDU4YTFlcC0xLAorICAgIDB4MS41YjkxMDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS5hMzcyNjJmNDk5MzgyYjI4MGMyOTI5NWM4MDA0M2VmM3AtMSwKKyAgICAweDEuNWQ5NWFhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuYTE5NDVhZjM5MjU4YzQ3NDAwYTcwNDliMGZhMWNlZDBwLTEsCisgICAgMHgxLjVlZjI1NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLmEwMjJjNmY0OWMzNmFkNzk4NmUxOWYwODdhYTkzM2Q5cC0xLAorICAgIDB4MS41ZmZmMTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS4zN2ZhYjJmZmZmOTQ3N2IwMzZmMzQ5OTcyMTk3YzJiZXAwLAorICAgIDB4MS42MTJjM2FwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS42NWIyOTJmZmZmY2M5Mzk3ODhlNGI2ZDQ4N2ZlOGNkZnAwLAorICAgIDB4MS42MWExMTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS45YjhmZjRmZTE4M2FmYWE0NzQ2NGMwN2U2MjRkNDQ0NXAtMSwKKyAgICAweDEuNjM0ZGI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEuOTZkYzE3MDFiNmUwZWI0ZWExZmNmMDIxYTJjM2QzOGFwLTEsCisgICAgMHgxLjY2YWNhYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgMHgxLjhlMzJhZjAwMDY1MTI1MjRiNWNkOGFlYjZlNjNjNzkxcC0xLAorICAgIDB4MS42Y2NkZDRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS44MDRiYmQwMTZjYTEzYzE4MjAwMzYyZGVhYTU5ZmVkMnAtMSwKKyAgICAweDEuNzY2YzQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuNGZkNTMyZmZmZmQwYjIzYWU5NzVjZGRkOTEyNTkxYjRwLTEsCisgICAgMHgxLjk1YzA5YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLjc4OGMxYjAwMDA3MjM2ZTdjNjY0YTA3MTRkZWY3OTdicDAsCisgICAgMHgxLjk4OGI3MnAtNAorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMHgxLjQyNmI2M2ZmZmY3NTQ4NGQ5OGFmYmFjYjcxZmQxYTVhcC0xLAorICAgIDB4MS45ZGNhZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIDB4MS4zOWRlNGVmZjk1ZjhhYzA4MDdhY2EwYjljZGQwNGExZHAtMSwKKyAgICAweDEuYTJjNTU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEuMzhmMTZlZmZmZjllNGU2NzUxNGQ1ZDYzYTBhNjU1N2RwLTEsCisgICAgMHgxLmEzNGQ3MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgMHgxLjFhNzZjYjA1NmY0MWJhOGQ5Y2Q2ODcxM2E5YzJiMGEzcC0xLAorICAgIDB4MS5iNDBhNTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS4xZWUzZTgwMDAwNTAzMzhmMGZjOWVmZTdmZmI2MGJkY3AwLAorICAgIDB4MS5iZDg2OTZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS4wMmJlZGFkODZmMTg1OTZmMDI2YWRhNDk0NGU5YzMzZHAtMSwKKyAgICAweDEuYmZmZmUycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuMDJiZTljZTBiODdjZDFlNWQwOWRhMmUwZjA0MjNiZmFwLTEsCisgICAgMHgxLmMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAweDEuZmY4MzA3YzFlYzRlMDc3ODQxMjZkMWI0ZWRkMDY4MjNwLTIsCisgICAgMHgxLmMxNzA3MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLmZlMDJiNjUyOTEyMGFhNTE1ZTE4MzIzNDlhNjYyZGZlcC0yLAorICAgIDB4MS5jMWNjNWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS43NTllZGQwMTYyYTkyYjFhNjI5MzcyNzU0NDhiYjA5MHAwLAorICAgIDB4MS5jNzFjNzJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS5lMzY4OWE2MmU5MmM4NzRlMTNmNTg5NDhiY2ZjM2Y4ZXAtMiwKKyAgICAweDEuYzdmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuNTg0MGMzZmZmZjlhMTZjMDJlYTRhMGJjNzYwOGQ2M2NwMCwKKyAgICAweDEuY2IwOGFlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEuNzU0OTBkMDAwMTJhZGQwMTRmZDIwNzgxY2ZhNTkxNDlwMCwKKyAgICAweDEuY2M3MGQ4cC00CisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEuYzJkNzg5MDI4ZDFiNmJjNDQ0NTM1OWE3N2I2NmIyMmNwLTIsCisgICAgMHgxLmNmMmMzY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLmJlZmVlNGZkZWFhNGRmMWNlOWZjYTM5ODhmZmMyNTZmcC0yLAorICAgIDB4MS5jZmZkMzhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS4xNTg1MWFmYzJlYTE4MjM0MTJjNDU2NmI5NzQxMTU1YXAwLAorICAgIDB4MS5kZWY3YjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS41NGNmODlmZmZmOWIzNWMyZDZmMGVlYzFjZGRkZDdmY3AwLAorICAgIDB4MS5lNWQ0NGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS43MzZmODZmZmZmOGYxYzhlMDc1NGY0NWNlNDZkZTBmMHAwLAorICAgIDB4MS5lOWQ2MGVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS4xMWJkNzU4NjYyYzViNWQyMTg2YzFkMjk4Y2Y3ZjBiMnAwLAorICAgIDB4MS5lYzQ3NDZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS5lMGY4YzMwODkyNjYzZGFkYzdmNDNiNWE5MzA4ODQyM3AtMywKKyAgICAweDEuZjFmMWZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuZTAwN2RmYjM2OTgxMTBlYmQxZGMzZDQ1MjMzZTJjNzNwLTMsCisgICAgMHgxLmYxZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLmQxZmE4YjAyOTg4NjEyOTU0NGQ5NDNjNjg0YThjZWI1cC0zLAorICAgIDB4MS5mMmNkZGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS5iNGRmODYwMjRiNThlOGU5NjUzNGE2ZTI2ZDMyNGZhMnAtMywKKyAgICAweDEuZjQ2NTIycC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAweDEuMzlkN2FjZjlkNmU0OGYzOWFkMjk2MmE4OWQzYThiODZwLTMsCisgICAgMHgxLmY5ZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLjBkNmRiZTdmMmUzNDFiMThjNzQwMTlhOTkxMjBmNTljcDAsCisgICAgMHgxLmZiNTQ3MnAtMgorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLjBjNWViOGY3YWI4YzllNjg1YjlkMjJlNDVkMDRmM2EycDAsCisgICAgMHgxLmZmMDEwNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjBjNTVjOTJhNTYxMzRiMzMzZmJmNGFmMmM2OGEzODU0cDAsCisgICAgMHgxLmZmMWZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLjBjNGU0MjZjZTk0MTRmMDhjMTk0MTUwYmRjYmNmMTc2cDAsCisgICAgMHgxLmZmM2ExNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLjgyMjBkY2ZmODAxYTg4MTU5YThjYTM0MWM5ZWVjNzkzcDAsCisgICAgMHgxLmZmODVjYXAtNQorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLjBjMTc5ODNkMWRlZjRlODJiOTUzYmRmYzdkZmYwZGZicDAsCisgICAgMHgxLmZmZjc3ZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS4wYzE1OWE3MWVjMTJjOTJlMTJiMjU5MmY5OGM2OGIwM3AwLAorICAgIDB4MS5mZmZlNjRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuODAwMDA5MDAwMDkxY2NkOTAxMTcxYzYwMzRlN2I0ZDNwLTksCisgICAgMHgxLmZmZmY3MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS45MDFmYjNmZWViMzVjMzU1ZTQwZWYyYjczMTY2ZWNjZXAwLAorICAgIDB4MS5mZmZmZjBwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuMGMxNTIzODJkNzM2NTg0NjViYjMyZTBmNTY3YWQxMTZwMCwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjBjMTUyMzgyZDczNjU4NDY1YmIzMmUwZjU2N2FkMTE2cDAsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5kYTIyODUyNTRlNzk1NDRmZjcwYTVjNDhmODU2ZTFlMnAtMSwKKyAgICAweDEuMzNiNjQ2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMHgxLjkyMWZiNWQ3NDU3Zjg0Njk4OTk0ZDk5NDljNzcwNTVlcC0xLAorICAgIDB4MS42YTA5ZTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuOTIxZmI1ZDc0NTdmODQ2OTg5OTRkOTk0OWM3NzA1NWVwLTEsCisgICAgMHgxLjZhMDllNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS4zNTlkMjZmOTNiNmMzMjU1MWFkNWNmNjNiNjU0OWI1N3AxLAorICAgIC0weDEuODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEuMGMxNTI0OGRlMGNiMmUxZWY0MjAyM2RjOGViODAwMjBwLTEsCisgICAgMHgxLmJiNjdhZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS4wYzE1MjQ4ZGUwY2IyZTFlZjQyMDIzZGM4ZWI4MDAyMHAtMSwKKyAgICAweDEuYmI2N2FlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLjllYzRhMWZmZWI0ZGEwZDgzNGMwYTg5Zjk0YThlM2Q1cC04LAorICAgIDB4MS5mZmZkNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGM4NTE3MDFiODM5YTJwMCwKKyAgICAweDEucC04MgorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS45MjFmYjU0NDQyZDE4NDYxODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5wLTYxCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLjkyMWZiNTQ0NDI5MTg0Njk4OThjYzUxNzAxYjgzOWExcDAsCisgICAgMHgxLnAtNDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuOTIxZmIxNDQ0MmQxODQ2OTdlZTIxYTZjNTcwZDQyMmFwMCwKKyAgICAweDEucC0yMgorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS45MTZhYjA0MzJkMGY3ZDgzMGU1NWJmNWY5ZDIzZWEwNnAwLAorICAgIDB4MS42YTA5ZTRwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEuOTE2YWIwNDIyZDBmM2Q4MmY2ZDRmOGUzZTBiMDE2MWFwMCwKKyAgICAweDEuNmEwOWU2cC05CisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjkxNmFiMDQxMmQwZWZkODJkZTlmMmNlZDYwMzE3NWExcDAsCisgICAgMHgxLjZhMDllOHAtOQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS45MGI1YWFlNzk0NmZkNzUxYmIzZjBkZDZiZDljM2E1ZnAwLAorICAgIDB4MS42YTA5ZTRwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuOTBiNWFhZTU5NDZkZDc0ZWJmMzQzMmUzMTE3MTRhMzJwMCwKKyAgICAweDEuNmEwOWU2cC04CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLjkwYjVhYWUzOTQ2YmQ3NGJiZDgxMWY1ZWM0MWE4ZDFjcDAsCisgICAgMHgxLjZhMDllOHAtOAorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS44ZjRiOWRiNmM1OTUzMWI2NGM5ZDFjY2E3MmE2MDA5OHAwLAorICAgIDB4MS42YTA5ZTRwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuOGY0YjlkYjJjNTg1MzE1NjY5ZWY1MjU3YTEyNTg4NWVwMCwKKyAgICAweDEuNmEwOWU2cC03CisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLjhmNGI5ZGFlYzU3NTMwZjY1OWZlMmMwMGMwODI4NTU2cDAsCisgICAgMHgxLjZhMDllOHAtNworICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDB4MS44Yzc3NmY4NzEyZmFmMzMyZjA1NjlkMmUyYjFjOGFmMnAwLAorICAgIDB4MS42YTA5ZTRwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuOGM3NzZmN2YxMjdhZTczMmFlZTlhMzhjMDA2ODNjMzFwMCwKKyAgICAweDEuNmEwOWU2cC02CisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLjhjNzc2Zjc3MTFmYWRiMzEwMzJlZDc3MjA2NGJmYWEycDAsCisgICAgMHgxLjZhMDllOHAtNgorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS44NmNlNzQ5MWZhM2IzNTE1Nzc0MzkzY2M1YTJhYzhkMXAwLAorICAgIDB4MS42YTA5ZTRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuODZjZTc0ODFmNjM5YjQ3ZDJiNTEzNTAzOTUyZDM2YjNwMCwKKyAgICAweDEuNmEwOWU2cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLjg2Y2U3NDcxZjIzODMzZDk4NjhlMWExY2UzMjIzZDk1cDAsCisgICAgMHgxLjZhMDllOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS43Yjc3ODU1MzA5MTE1ZTYwMjc3ZGQwYWRiMmQyMTFlY3AwLAorICAgIDB4MS42YTA5ZTRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuN2I3Nzg1MzJlOGUxMGUxMzhjMDUzMDk2NGJlYzZhNDVwMCwKKyAgICAweDEuNmEwOWU2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLjdiNzc4NTEyYzhiMGJkNmI1YmRlOTQxOGE2MGM1MzYycDAsCisgICAgMHgxLjZhMDllOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS42NGExNDQ2ZmI0NjljYjNlODEyOWQ4YWY1Njk3MGQwM3AwLAorICAgIDB4MS42YTA5ZTRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEuNjRhMTQ0MmVhZTQwYWQzOGU4MDJhYjIzMTkwOTZjYTRwMCwKKyAgICAweDEuNmEwOWU2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLjY0YTE0M2VkYTgxNzhjM2JlOWU1OGY4ODA1YThjZDk5cDAsCisgICAgMHgxLjZhMDllOHAtMworICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS4zNTlkMjc5ZGRhMmM4MDg0YzU3MTIyNzc0YmVkY2NkN3AwLAorICAgIDB4MS42YTA5ZTRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuMzU5ZDI3MTUwM2I1NjhmMzI2YWJhMmVlMTE2M2FhNTZwMCwKKyAgICAweDEuNmEwOWU2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLjM1OWQyNjhjMmQzZTM1YmM0ZWU5ZGVmOWE4ODNiOGU5cDAsCisgICAgMHgxLjZhMDllOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS45MTQyMDE1MjhjNGRiYWIzMjQ4NzQ1YjAxMjc0Mjg0Y3AwLAorICAgIDB4MS5iYjY3YWNwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuOTE0MjAxNTE4YzRkNWFiMmVmMmZjZjUwOTI0YmM0OGZwMCwKKyAgICAweDEuYmI2N2FlcC05CisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLjkxNDIwMTUwOGM0Y2ZhYjJiOGZhYTQyMGE2ZTg0MjkwcDAsCisgICAgMHgxLmJiNjdiMHAtOQorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDB4MS45MDY0NGNiYThkZDJiYjdkYmNlNmE4ZDAwZDYyOGI0NXAwLAorICAgIDB4MS5iYjY3YWNwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAweDEuOTA2NDRjYjg4ZGNmYmI3NzAyMWIzNTcyYzM1NmY3MTJwMCwKKyAgICAweDEuYmI2N2FlcC04CisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMHgxLjkwNjQ0Y2I2OGRjY2JiNzA0MDYyMDQyZmJhMzZiYTdmcDAsCisgICAgMHgxLmJiNjdiMHAtOAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS44ZWE4ZGVmZTdlY2IxYTA5MzdjYmQyNzQ4ZDk0YTIyY3AwLAorICAgIDB4MS5iYjY3YWNwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAweDEuOGVhOGRlZmE3ZWIzMTkzMTU5ODkxOWJhN2IyMjZhZWJwMCwKKyAgICAweDEuYmI2N2FlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLjhlYThkZWY2N2U5YjE4NTk0M2Q1ODU1Y2FiNmI4ZjFlcDAsCisgICAgMHgxLmJiNjdiMHAtNworICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS44YjMxZGYyMmEwM2JjZWFiOTM4MjI5MDNhNjRlNTYxNnAwLAorICAgIDB4MS5iYjY3YWNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuOGIzMWRmMWE5ZjdiYjNhOGFjODUxNmZmNDIyYjAyZWZwMCwKKyAgICAweDEuYmI2N2FlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgMHgxLjhiMzFkZjEyOWViYjk4YTQwOWEzODQ5MTVkOGExZTQ2cDAsCisgICAgMHgxLmJiNjdiMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS44NDQyYmJlNmIyYmU5NGJiZGM4YmM4Y2U5MDg0NjM0MnAwLAorICAgIDB4MS5iYjY3YWNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAweDEuODQ0MmJiZDZhY2JiMzJhOTBmY2Q0NGE2N2I5ZGJmYTdwMCwKKyAgICAweDEuYmI2N2FlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLjg0NDJiYmM2YTZiN2QwODg1ODJjMDE1YWE5MjljNjBicDAsCisgICAgMHgxLmJiNjdiMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDB4MS43NjViNGM3MDk5NWNiNmZkMWE1Nzg1ZjM3MzQ5NTAzZXAwLAorICAgIDB4MS5iYjY3YWNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuNzY1YjRjNTA2OGVmYTY4NmEyNjM1NjEwODBlZjgzZDNwMCwKKyAgICAweDEuYmI2N2FlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgMHgxLjc2NWI0YzMwMzg4Mjk1OWY1NjQ2N2JhNGRjYTAyOTMxcDAsCisgICAgMHgxLmJiNjdiMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS41YTQxN2UwMGQ4MzMyN2M2OWQ3YjFiZTcyNjY3ZmI3YXAwLAorICAgIDB4MS5iYjY3YWNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEuNWE0MTdkYmY0YTI2NjI5ZWU2YmZkNGE5MTkyMTM1MjBwMCwKKyAgICAweDEuYmI2N2FlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLjVhNDE3ZDdkYmMxOTk5YmUyOGM3MzdhNDlhOGIxYTk3cDAsCisgICAgMHgxLmJiNjdiMHAtMworICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIDB4MS4xZjdhOTExYzY1ODlhMjY3MDk3OWVlNGJiY2UyMDdhY3AwLAorICAgIDB4MS5iYjY3YWNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuMWY3YTkwOGU2NGI0YmQ1MTVlMzBmY2IwZDIwN2Y1NWNwMCwKKyAgICAweDEuYmI2N2FlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgMHgxLjFmN2E5MDAwNjNkZmIyNjRjODhmM2NmYjU0NjBhMTg5cDAsCisgICAgMHgxLmJiNjdiMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMHAwLAorICAgIDB4MS5mZmZmZjhwLTEyOAorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMHAwLAorICAgIDB4MS5wLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMHAwLAorICAgIDB4MS4wMDAwMDRwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4Mzk5ZXAwLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4Mzk5ZXAwLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4Mzk5ZXAwLAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhNnAwLAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTZwMCwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWE2cDAsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5OWVwMCwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5OWVwMCwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5OWVwMCwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAweDEuOTIxZmI1NDA0MmQxODg2OTg5OGNjNTBjNTcwZGFlZjdwMCwKKyAgICAweDEuZmZmZmZlcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS45MjFmYjU0MDQyZDE4NDY5ODk4Y2M1MGM1NzBkOGVmN3AwLAorICAgIDB4MS5wLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLjkyMWZiNTQwNDJkMTdjNjk4OThjYzUwYzU3MGQ0ZWY3cDAsCisgICAgMHgxLjAwMDAwMnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuOTIxZmI1MjQ0MmQxYTQ2OTg5OGNhZmMxYWNhMmU0NGNwMCwKKyAgICAweDEuZmZmZmZlcC0yOAorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIDB4MS45MjFmYjUyNDQyZDE4NDY5ODk4Y2FmYzFhYzYyZTQ0Y3AwLAorICAgIDB4MS5wLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjkyMWZiNTI0NDJkMTQ0Njk4OThjYWZjMWFiZTJlNDRicDAsCisgICAgMHgxLjAwMDAwMnAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuOTIxZmI0YzQ0MmQyMDQ2OTg5ODc2ZmMxYmM2MmU0M2NwMCwKKyAgICAweDEuZmZmZmZlcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS45MjFmYjRjNDQyZDE4NDY5ODk4NzZmYzFhYzYyZTQ0Y3AwLAorICAgIDB4MS5wLTI1CisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLjkyMWZiNGM0NDJkMDg0Njk4OTg3NmZjMThjNjJlNDBjcDAsCisgICAgMHgxLjAwMDAwMnAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuOTIxYmI1NDQ0NmM2ZDliZWZlOTU0ZDgxMDc2NTVjMzJwMCwKKyAgICAweDEuZmZmZmZlcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS45MjFiYjU0NDQyYzZkOWJlZGU5NTRkOWY4NzY1NTQ3M3AwLAorICAgIDB4MS5wLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjkyMWJiNTQ0M2FjNmQ5YmU5ZTk1NGQxYzg3NjRmMmY2cDAsCisgICAgMHgxLjAwMDAwMnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAweDEuOGUxZmFhOWQ0Yjc3MzJlNTMxNTc5MzQxZWQ1YzI3MTNwMCwKKyAgICAweDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLjhlMWZhYTk5NGI1NzMxNjUzZDU5N2I2MzgzMmE1OWJjcDAsCisgICAgMHgxLnAtNgorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIDB4MS44ZTFmYWE5MTRiMTcyZTY0OTU0YjQ5ZmU4MjgyOGUxNnAwLAorICAgIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEuOGExZjVmZWQ1Mzc0ZDA2M2Q0OTJmYWYyZTk4OWY1ZThwMCwKKyAgICAweDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLjhhMWY1ZmU1NTI3NGEwNWFkMmMyOWE4OTBmYzNhNzMwcDAsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIDB4MS44YTFmNWZkNTUwNzQ0MDQyY2NlMTIzN2U4YzQyN2IxOHAwLAorICAgIDB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAweDEuODIxZDA5NzViNWExNzAxZmQ1ZTVlM2RmYWI3MjRlMWRwMCwKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLjgyMWQwOTY1YWQ5YjZiMjM3ZTAxNTM1Zjg2MDNhM2FjcDAsCisgICAgMHgxLnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIDB4MS44MjFkMDk0NTlkOGY2MGZhODVkZGI4YTAwMWIyMjE1NHAwLAorICAgIDB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAweDEuNzIwYTM5NGM1ZTU3ZDBmMDI4NmJhZTQ3N2M4MDk1ZjFwMCwKKyAgICAweDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgMHgxLjcyMGEzOTJjMWQ5NTQ4NTFiYWRiZDZjZDJkOGU3OTJjcDAsCisgICAgMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDB4MS43MjBhMzhlYjljMTAzNThiYjFlNWRkMDYwNTkwOThiM3AwLAorICAgIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAweDEuNTE3MDBlNGUyZTA0ZDkwZmU1ODc1N2YzM2QxN2M2M2VwMCwKKyAgICAweDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgMHgxLjUxNzAwZTBjMTRiMjRmZjAxNTY1NWM1ZWM1YTdhYWEzcDAsCisgICAgMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIDB4MS41MTcwMGQ4N2UyMGQzMDc4MzE2NmE0NTU0Mzk2NGU4NXAwLAorICAgIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuMGMxNTI0MTZhNDcwNmMyNWMwNDk0MmZhOGJiOThkOThwMCwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgMHgxLjBjMTUyMzgyZDczNjU4NDY1YmIzMmUwZjU2N2FkMTE2cDAsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDB4MS4wYzE1MjI1YjNjYzE5Y2JhNTdmN2Y5Y2RlYTIzY2JhN3AwLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEuNmEwOWU2ODYxZjNhYWRkMTc2ODFlZTZkYjAyOWI0YzBwLTEyLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAwLjAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLjkyMWZiYjdmNmQwZjg0NjliMWRmNDljNzdjOWQ0ZDQ5cC0xLAorICAgIDB4MS42YTA5ZTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuOTIxZmI4YWI1OTQ5ODQ2OTkwMWRiODBmZjBiYTQ5ZWNwLTEsCisgICAgMHgxLjZhMDllNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIDB4MS45MjFmYjVkNzQ1N2Y4NDY5ODk5NGQ5OTQ5Yzc3MDU1ZXAtMSwKKyAgICAweDEuNmEwOWU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLjkyMWZiMzAzMzFiMTg0Njk4N2E0MTA3NWZiZmIyMzkycC0xLAorICAgIDB4MS42YTA5ZThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEuOTIxZmIwMmYxZGRmODQ2OTczYWFiZTE0OGI3MDFkMTdwLTEsCisgICAgMHgxLjZhMDllYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS4wYzE1MmM4ZGUwYTgzZDhlNGU1YjEzNjJmNDdhODdjMnAtMSwKKyAgICAweDEuYmI2N2FhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLjBjMTUyODhkZTBjMGEzNzRmNjc2ZjQ0MjU0ODJjMjgycC0xLAorICAgIDB4MS5iYjY3YWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuMGMxNTI0OGRlMGNiMmUxZWY0MjAyM2RjOGViODAwMjBwLTEsCisgICAgMHgxLmJiNjdhZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDB4MS4wYzE1MjA4ZGUwYzdkZDhiYTc1NmFiMTZhMjM2MmFmNHAtMSwKKyAgICAweDEuYmI2N2IwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLjBjMTUxYzhkZTBiNmIxYmE3MDFhODcyNDkyOGVmNDZhcC0xLAorICAgIDB4MS5iYjY3YjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAwLjAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIDB4MS42YTA5ZTY4NjFmM2FhZGQxNzY4MWVlNmRiMDI5YjRjMHAtMTIsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS45MjE0NjRmNTBlYTA4YTk0MWIwMTExMDc4ZTRhYjg1NHAxLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLjU1YmNmMjk1NTgwMDQyZTQ5NDc2NjRiNGMzOThhNjcycC0xLAorICAgIDB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAweDEuM2NiMDc4OWVlY2QxNzNiMDY0NmYyYmU5ZDBkMjEwMDVwMSwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4Mzk5ZXAwLAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhNnAwLAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5OWVwMCwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTZwMCwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOTllcDAsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWE2cDAsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4Mzk5ZXAwLAorICAgIDB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhNnAwLAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMC4wZgorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2Fjb3NoX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9hY29zaF9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjk1NTJmOAotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9hY29zaF9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSw5NTggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxkb3VibGUsIGRvdWJsZT4gZ19hY29zaF9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIDB4MS41MjQxN2RiMDY3ZjM3ZmZmNzhkYTBlNTljNzg2YTYzZXA4LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQ4NworICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuMTMyZGVmMmI1MDVlYmZiNzY4MTYxZDgyYmUxZjg4OGRwOSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA3OTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMHgxLjA5NzliMWRiYzJlNTY4MDAwMzBiYTliMDZjZjgzZjEwcDksCisgICAgMHgxLjAwMDAwMDAwMDAwMWZwNzY1CisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS4yYzJmYzU5NTQ1NmEyODA3MjE0ZDAwODdmNDQzMmQ0N3AtMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMmNwMAorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEuN2ZmZmZmZmZmZmZmNzAwMDAwMDAwMDAwOTFjY2NjY2NwLTIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLmZmZmZmZmZmZmZmYWFhYWFhYWFhYWFkMTExMTExMTExcC0yMiwKKyAgICAweDEuMDAwMDAwMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuYmI2N2FlODU0ZDVkYjE2YTg3OGY5ZWIyYWRiMDZhMGJwLTE2LAorICAgIDB4MS4wMDAwMDAwMThwMAorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuNjlkY2EyNTYzZmUwMjgwMjFlOTA5NGVkNDdlZDA0ZWNwLTE1LAorICAgIDB4MS4wMDAwMDAwM2ZmMHAwCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS4zMGZjMTkzNGYwOWM5N2ZmNDJmZmVjYWQ0Njc4OTdmZHA2LAorICAgIDB4MS4wMDAwMDBjcDEwOQorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuNmMyNzVlNjliMjhiNDQ0MWI1NDYzYjU0NzZkNTM3NThwLTEwLAorICAgIDB4MS4wMDAwMTAzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5iMWU1ZDkwNmQ1ZWQ3OWNlZmNhZTI2NjhjNWY2N2M4YXAtMTAsCisgICAgMHgxLjAwMDAxNmZiNWIwYzRwMAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLmRlZWU5Y2I5MDFlZDg4NzM1M2NlNTY4NGNkMjljODNlcC0xMCwKKyAgICAweDEuMDAwMDFjMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuZGVlZTViM2U3ZDRjMzMzY2JjYmExZjE2ZDg0NzNhMWVwLTgsCisgICAgMHgxLjAwMDFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5mZmZmYWFhYWQxMTBmYTM1YjJlODYzMTI5NDM5YjAxN3AtOCwKKyAgICAweDEuMDAwMjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLjMzOGE3YjBhOWJiZjQ1MTVkOTFmYzk0YjYzMWQ5NDlicC03LAorICAgIDB4MS4wMDAyZTJlYzNmODBjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS4zOTg4OTJkZThlYWI0NmRkZGY4OTVlNmIyZGY3MWUxNHAtNywKKyAgICAweDEuMDAwMzBwMAorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLmJiNjZkMGQyZDhkMjMwZmUxNzNkMGQ5NzJjNTMyMWEwcC03LAorICAgIDB4MS4wMDA2MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuZmZkZWE5ZWNmZTRhMjNmZDM3NTkyNDIwZGQxZTRhZWNwLTcsCisgICAgMHgxLjAwMDdmZjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLjZhMDgwM2I2ZGY4NWE1YTZhMjhhN2QyNDM0NGZkN2JjcC02LAorICAgIDB4MS4wMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjEzYjc0NGI2ZmMyNDA4MWRmNjQ4OGZjMGEwNTIxNDQ3cC01LAorICAgIDB4MS4wMDI1MWY0ZGJmMGYzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS41MTY0Yzc3NmViMzhiN2ExYjRlMzkyMjA5ZjdjZDc2Y3AwLAorICAgIDB4MS4wMDM4MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuNzQ5MjdhNTkwNjRiOTcyYzYyN2QwZjhkYmYzYTIwOGJwLTUsCisgICAgMHgxLjAwNDNjYTNlYTA1NzBwMAorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLmU5YjYxZmE4MzMyNzExNGE5NDk5YzQzODYxOTdmN2VjcC01LAorICAgIDB4MS4wMDc1MjIxNjZiODY0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS40YTZiNTA0YWUzMGJmODE4ZmY1OGRmNzMxNzg0YTJlNXAtNCwKKyAgICAweDEuMDBkNTVhMDdlN2Q3ZHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuNmU0OGRmMWJkMzA0ZDgzMjU5YjczNTBlZjE5ZDY1NGFwLTQsCisgICAgMHgxLjAxMDYzNmYwOGQ5OGNwMAorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLjg2Y2M4NDQ4NTY0N2I4MGM2MDhiZmM5NzdjNDY1YzNlcC00LAorICAgIDB4MS4wMTJhODNkNTExOTY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS44Yzk2YTYyZjQzZmRhODI5ZjJjNmFhNjRmYzdjM2Y1MnAtNCwKKyAgICAweDEuMDEzMzZlYWEyNzA2NXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuYzk2YWUxNThjMjYxNjgxYWFlMmYxYWM1YjFlN2I1M2RwLTQsCisgICAgMHgxLjAxOTkxNDI3Mjg2YTdwMAorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLmZkMzAzYmRjZDUxZDIwN2IzOGZkMDMzY2NjYTRlYmUwcC00LAorICAgIDB4MS4wMWZiMGI3NDcxYzEzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS4wMWZiZjA5MWFkNDI4ODBiNTA1OTFhYzVhM2MyNWE1NXAtMywKKyAgICAweDEuMDIwOGE3YmVjM2VmNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuMjE0Mjc4MGE1YjRkYTgwNTcyZjFmMWU0MTdjMjgxZTBwLTMsCisgICAgMHgxLjAyOGVjNGE4NjA5ODVwMAorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLmM2ZjNkZWJjNmI5YmFmOGZkNDk1MmQzZTc1MDA3MTE2cDQsCisgICAgMHgxLjA0MHA0MAorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLmI3NzZlYWNhNjdhOGQ4MTQ3MGNhMTFlM2MxOTYxOGY0cC0zLAorICAgIDB4MS4wNWVhOWU4NzM1OWYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS5jNzM4ZjM4ODY3NGJiZmZlYWI0MjQ2Nzk2NjQwMDM5YXAtMywKKyAgICAweDEuMDY1OWE0MzVmMDk5ZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuZjMzZDRmNzc5MGY2OTgyZTNjYWU1OGE4ZjVhNGM4NWNwLTMsCisgICAgMHgxLjA3YTRkOTdkOGQ5NGNwMAorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLmY2YWM3YmFkOGI0YWM3NDg5Nzg3NjYzYzUxZmQ4Mzg5cC0zLAorICAgIDB4MS4wN2NwMAorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLmZjMjVjN2Q5MTgwOWY4MGMxNWFkN2I4YTA5ODkwNGU5cC0zLAorICAgIDB4MS4wN2ViYWFjNjY1ZWU4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS4xNGQ3MmU1NjJiODZmODBiOTJkYjc2OTE0YzFhODQ4M3AtMiwKKyAgICAweDEuMDk2OWE1MTdlNzM5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMzcyNGViNTM2YWJkMTdmMzU0OWZkZTdjMGE4YmNjNzhwNCwKKyAgICAweDEuMGEwNTAyODE0MGFwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS40MjRlMWE4MzMwOTI3N2ZjNzRlNjI1MmY5Y2NmZjUxZXA0LAorICAgIDB4MS4wYjMxZDU1MjZlMzA0cDI4CisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuNDJkYzI0YWVmZWE0YTAwMDAwZjRjNGM0MmY3Njc2YmRwLTIsCisgICAgMHgxLjBjZDQ4NzcwYzIzNDhwMAorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLmFhM2RiZTQ4ZGVmODE3ODQ1ZmFhNjFmZDVjYjA0NDlhcC0yLAorICAgIDB4MS4xNjhwMAorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLjZjMGZmNTg5NTAzNmQxNGE1NDEzNmNiOTc0NThjM2ExcDAsCisgICAgMHgxLjE4YzYzMThjNjMxOGNwMQorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLjE0YWVhZjJjZjg4MmI4MDAwMTc4MTZiMDYzNGE1MWM3cDEsCisgICAgMHgxLjE5OTk5OTlhN2Y5MWJwMgorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLmM2MzZjMWIyNzAwYzc4MDAwMTE0ZTU4NDZlNTZmMDJhcC0yLAorICAgIDB4MS4xOTk5OTk5YWJjYjg0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5jNjM2YzFiNTVlODk4MDAwMDAyMDZmMmQ1YjYzNzQ2ZXAtMiwKKyAgICAweDEuMTk5OTk5OWIxMmIyZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuYzYzNmMxYjc4NzYyODgwMDAwN2UxYTk1MDU4ZTI4ZjlwLTIsCisgICAgMHgxLjE5OTk5OTliNTIwOTJwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLmM2MzZjMWJjODY3ZGMwMDAwMTU2YTFlYWU2MzVhMzVlcC0yLAorICAgIDB4MS4xOTk5OTk5YmU0OTM2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5jNjM2YzFjN2RhMmFmZmZmZmViOThmYzg2MGNkN2NlZXAtMiwKKyAgICAweDEuMTk5OTk5OWQzMGM2OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuYzZkMzBmMWQwODc3NTExNTdmYTUxYzMyNDQwZGQyOTFwLTIsCisgICAgMHgxLjE5YWI4NGZmNzcwZjlwMAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjM4MTM4MDIxNTI1YjE3ZjVhN2Q3OWM2Nzg3MDQ1ZmJhcDQsCisgICAgMHgxLjE5Zjk4NDJjYmU5ZGFwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5jZmY4ZWZkZDY4YjhiMDAwMDg4Zjk5MzAyZjEzZmQ1NXAtMiwKKyAgICAweDEuMWFiYjE0OTM0YzExMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuNDM0NWNlMDY3MjZlZWZmZDNkZWVjNjU0ZTkzYmI3MDRwNCwKKyAgICAweDEuMWJkOWZmMzgxODI1MHAyOAorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLmRhNjI3YjU3NDEyNDA0MWY1NWQwYjg1MzRjMDdjYWEycC0yLAorICAgIDB4MS4xYmY3MzQyMDY1NjJlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS5kY2ZhMTEwZTRkMmJlNGU2MGY0YzJjN2I3OTJhYTk3OXAtMiwKKyAgICAweDEuMWM0NzExYzQ3MTFjNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuZTRmNjAwYmNhOWI0M2M3NTA1ODIwZjM0NjI1YWVkZjhwLTIsCisgICAgMHgxLjFkNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuNDM1YWYwY2Q4NzIzZjdmYzBmMDMwNzQ0ZWFmNWU0ZjNwNCwKKyAgICAweDEuMWQ1MWVlNjkwNGYwNXAyOAorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgMHgxLmY2NmNkOGE1ODlmOWU4MDFkY2JiYWJhOTVmYTJkYjFicC0yLAorICAgIDB4MS4xZjdwMAorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLmZiMDRkYTI0YmQzMjYzYzNjMTk1OTU4MjlmODg3NjIzcC0yLAorICAgIDB4MS4yMDA2ZDliYTZiNjI3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS5mYjRkNjg1ZTEzZDE3Mzg1NTMxNTFjMmEwODQzNjUxM3AtMiwKKyAgICAweDEuMjAxMDM0YmU5Yjk5N3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuZmQ5NzQ3ZDE5OWQ5ZTM0YjVlZTVhNzU4YjNhMzNiMmVwLTIsCisgICAgMHgxLjIwNWJmNTEwYjVkZTRwMAorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLmZkZTY0OTIxZjJiZTI2ZDM0OWFmMTVjNjVkMmJhZWM4cC0yLAorICAgIDB4MS4yMDY2MzM1ODlmYjQycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5mZjg4YWI1YjU3OTg4YTYyNjQ1ZWMxMDZjNDA5Nzg2M3AtMiwKKyAgICAweDEuMjA5YzhlYTgyNDM5NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuZmZhYTVkMTkwYjNlMzhhMmY1OTc4YjBjYmRlZjM3YzBwLTIsCisgICAgMHgxLjIwYTBmMTZhMWYzYThwMAorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLjQzZDBjY2I3ZWFmODE3ZmJmYzU4YmIyZDYwNmMyNDZhcDQsCisgICAgMHgxLjI1YTYyZWNkNGFjOTZwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS4yNTk0MmQ3ZWEzOGQzMDM3ZmRmMjM1YzM3NGEwYTEwYXAtMSwKKyAgICAweDEuMmI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS4xZWI5MGZjYjk3NWM5N2U5OWEwM2NkNGU5ZWNmN2VmZXAxLAorICAgIDB4MS4zMDAwMDAwMGU0Y2ZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS4xZWQ2MWFjZDFjZWYzN2Y3MmViZTIxNTBkNzg2NjU0YXAxLAorICAgIDB4MS4zMDQzNzYzODJiZmMxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS4xZjk2MmU1YzE2ODAwN2VkYmNmOWFhYTgzMzRhN2JlOHAxLAorICAgIDB4MS4zMjAzMmEyNDBhZjQ1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS4xZmRhNTQ2ODAwZWI5ODEwMzliMDQyYzBhNjIwNWE1MXAxLAorICAgIDB4MS4zMmEyYTdjZWM4MGEzcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS4xZmY1M2ZhNjlmOWY2ODEzZGYxMjBjMGZjOWE3YzgyZnAxLAorICAgIDB4MS4zMmUxYmY5ODc3MGQycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIDB4MS44NWE2ZmU1MTUxZTg3N2ZmZmU4OWRmNzMyODFkYWMxZXAwLAorICAgIDB4MS4zMzMzMzMzMzVjNGU3cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS4yMDNkYWUwMDhmNDIyODEzMzYxOTg5MDRkMzUzYTlkM3AxLAorICAgIDB4MS4zMzhiYzZkMjE3MzkwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS4yMDQyMDBkMGFkM2NiODA4MjJlYWFmMWE4ZmQ0MDBlZXAxLAorICAgIDB4MS4zMzk1ZjAxZWMzMGFlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS4yMTgwYWU0MjQ1ODU1N2YxNjA4NjlmYTg4YmZkZDc2N3AxLAorICAgIDB4MS4zNjg2YjMwZWMyOGY5cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS4yMjgyNGQ3Nzc1ZDEyN2VkNjI0OWFlZGNkNjUzYTY4M3AxLAorICAgIDB4MS4zOGVjYmI0NDhiYjYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS4yNGQ3YWE1N2UwOWUyMDBmMGZhNTFiOGUxMjJhNTBkMXAxLAorICAgIDB4MS4zZThmYTNlOGZhM2U4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS4yNGVhZDA5OThiNDVlODBjMTU3NzVmZTQxMmZhMzQ3NnAxLAorICAgIDB4MS4zZWJlNTc0MGFiZjU3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS45MTE5YzEzYTMxYmFmZmU0NjgzNWFiMjI2NjU4OGRlOXAwLAorICAgIDB4MS40cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS42MzhlYWI0OTIxNmY4ZWU5MjE3Zjk4NjU0MDczOTI4MnAtMSwKKyAgICAweDEuNDA0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS42NjMxMDBjMmE0ZmUyMjUxYmM4MDJlMDQwYzIxNTE3Y3AtMSwKKyAgICAweDEuNDEzZTgyN2QwNGZhMHAwCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuMmE4YTQ1ZWIxNDdjZTgwMDg0ZDVkYzA2MjkwNjFiNzJwMSwKKyAgICAweDEuNGNjNWJhZjVjODM5MnAyCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEuODM0YjJjYWNlYzljZjAwMDAwYmY2NjEyZTU3Y2JlOGZwLTEsCisgICAgMHgxLjRjY2NjY2NkNjQ4MWFwMAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLjgzNGIyY2I1MTBhOWM3ZmZmZTkxMjU2YmRlNTRiYmRkcC0xLAorICAgIDB4MS40Y2NjY2NkMGM2MTNkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS44NjlmNjg5ZDQxZTVhZTFjYmM0ZGI4ODRkYTc4ZmVjMHAtMSwKKyAgICAweDEuNGUzMDkwMTYxNjVmY3AwCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEuZGZjZDVkZjFiYzI3MDdmZmQ1Y2E1MzgzZjRjY2U2ZTdwMSwKKyAgICAweDEuNTNkNGY1M2Q0ZjUzY3A0CisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuMmUzYmI2ZGQwYjBhZTAwNjdjNWY5MTFmYWFhYTc4ZGRwMSwKKyAgICAweDEuNTY1NTk1NjU1OTU2NHAyCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAweDEuMzBhZjgzYzQyYzE1N2ZmMTMwZjZiYmRmYjIzY2E3NTlwMSwKKyAgICAweDEuNWNkNzM1Y2Q3MzVjY3AyCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuYWY4Nzk3NzQwOTkxMGMxMmU4YTg4MDJmZDg3YzZhYmZwLTEsCisgICAgMHgxLjYwNzAzODFjMGUwNDBwMAorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLjNiYWNjNTMwNjFmM2I3ZjdkOTAzNWM1NzMxNTM0NWZicDQsCisgICAgMHgxLjYxMTg0NjExODQ2MTBwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS5iMjA2NmZlMDk1MmFmN2ZkNWIxYTUyZTM5N2QyMGI0MnAtMSwKKyAgICAweDEuNjE5Zjg5NzcxZmVhYXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEuYjI0M2Q2ODM5MWY5ZDgwYzE3MjE2ZDU5ZTQ5MTliYWZwLTEsCisgICAgMHgxLjYxYmNjZDdmMzQ5YzRwMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLmJiZTk1YWI2ZDI1MDc4MDAwMTc2ZWI1NzU3NTE4Y2UwcC0xLAorICAgIDB4MS42NjY2NjY2YTRkOGNhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5iY2U0N2M1MGU1OTdlODAxNjhlYTZlYTE5N2I3YzVmYnAtMSwKKyAgICAweDEuNjZlMTk4ZTQwYTA3Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuYzRiNDM0ZTc4NTg0MTdmZTU1MjJiZGMyNDUxNWUzYWJwLTEsCisgICAgMHgxLjZhYzJhYmNjZTY2MGZwMAorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLmI0YjA1OTFmYWI5M2U4MGMzNDQ5MTY2MDFmM2Y5OGZlcDAsCisgICAgMHgxLjZjMHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEuYzllNzc3MDM0YmVkMzdmYzUxOWUwMDRhZjIzYzU3ZWNwLTEsCisgICAgMHgxLjZkNjNjMGNiNTQyZDZwMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLmNkYTkzMTBiNzg0ZTUwMDBhZWFlN2JhYTJkY2M0Y2ZjcC0xLAorICAgIDB4MS42ZjVwMAorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLmQxNjk0MjZiMTM1ZDBiYmFiMjc2NjY0ZDlmODMwYzcxcC0xLAorICAgIDB4MS43MTQwNzI3YmI0ZmEzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS5kNzQwZmRmNTM2NjhhMWJjZWE4MTYwOWRiOWUwZGI2OHAtMSwKKyAgICAweDEuNzQ1cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuYmMwMTIwN2JkMjViNjgwMWRmOGU3ODhmYjVmNDEzNTdwMCwKKyAgICAweDEuNzVlMzJjZjM4Mzk5N3AxCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLmVjYzJjYWVjNTE2MDQzNmU2ZWYwYzRkZmQzN2RlOTA1cC0xLAorICAgIDB4MS43ZmZmZmZmZmZmZmZkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuZWNjMmNhZjBhNzVjZGZmZmZlOTM0MTk4MjIwOTg5NTZwLTEsCisgICAgMHgxLjgwMDAwMDAyNmM4MDNwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS5lZTNiMDZlY2VhNWVkNTY0NDA2NDQyZDA3ODYxYTczZnAtMSwKKyAgICAweDEuODBkMmJhMDgzYjQ0NnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLmYzMTRjOWNiODc1YmU3ZjI1OTE1ZWY2ZmU4MTQ3ZWE3cC0xLAorICAgIDB4MS44MzlwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5mNGJhMmYxY2FkOGY0NzVkZmI0ZmEwNDhiNWNlY2U3NXAtMSwKKyAgICAweDEuODQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuZmJkMThlNmFhNTM0ZWVkMDUwMDdhZWUzZDY2Yjk5MGFwLTEsCisgICAgMHgxLjg4OTViNDYxZGE2YzZwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS45YmRiMjI1ZGFjZTRiMDAwNTcxNGM0MTM3MWRmZjBjNHAxLAorICAgIDB4MS45MDI0MDkwMjQwOXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjBjMDYxNmRiZDMwMWUwMDAwMTZkN2YwZDg5NzMxNjc1cDAsCisgICAgMHgxLjk5OTk5OTlhYzExZjNwMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS5kNGQxOWQwYTgyNTkyN2ZlMWIwOTczZDhiNDYxZThlZHAwLAorICAgIDB4MS45OWNwMQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS40YzcwM2Q1ZGI4NTg2ODAyYmFkZmI4MmI3OTdkM2RjMHAxLAorICAgIDB4MS5iMDAyMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLjFlZmI2OTljZGNkMzM4MDFmYjAzYjk0NjZmZGQ2MGZhcDAsCisgICAgMHgxLmIyNmM5YjI2YzliMjZwMAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS4yZDcyYTNhY2U0ODQzN2ZkZTk4NmViNTE0MDlhZTI3M3AwLAorICAgIDB4MS5jNmY2MWU4YTU0MmE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEuZjFiNDY1NmZhYzI3NzdmZjBiMDczMmY0ZWQ5ZWFhZjBwMCwKKyAgICAweDEuYzg2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuNTU1MDU0MGQzZGU1NDdmY2UxMTE5NmZlYjIyYWEyZTFwMSwKKyAgICAweDEuY2ViMWRkOTE1ZTQ3NnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMHgxLmU0ZGI1NzFlMDA4MTk3ZmU5ZTA5YzNhYTI2YWE3ZmNjcDMsCisgICAgMHgxLmQwNzQxZDA3NDFkMDRwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEuMDdlYWM5ZjZkYWZhNTdmZjAyOGQzMzFjYjQ4ZjkwMzhwMywKKyAgICAweDEuZGQzNzRkZDM3NGRkMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS5lNzg0YzJiM2U1NTRmODAwMDA0ZDk2OTE5Zjc5MTY1MnA1LAorICAgIDB4MS5lMzkyMGZjYmEwOGM1cDg2CisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLmU0YmNkMmQ3N2VhZDNmZmZmYTcwODdjOTNmNTY3OGI1cDIsCisgICAgMHgxLmU2YmQ4NjVkNTkxODFwOQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS4wOWJhMjUyMTY2Y2U4ODAwMDAzYWEyYTk1NzQ2YTRhYXAzLAorICAgIDB4MS5mOGZjN2UzZjFmODgwcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLjRlNmIxMDhhYmViYWVmZmZjNWM2MTY2MDU2NjBkYTE0cDAsCisgICAgMHgxLmZiNXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLjJhNjY1OTRmMmU1YjBmZmZmZjdmZjM3OWY1ZTI0M2E3cDksCisgICAgMHgxLmZmZjAwM2ZmZmZmZmZwODU5CisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjA4MWNhM2U1MjRkYWY1YTRkMWU5ZTYwOTJhMzdjNjU5cDEsCisgICAgMHgxLmZmZjdmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS4wODFjZTVmZjdmY2ZkN2ZmMjkzNjI0OTNlZjU2MTY1ZnAxLAorICAgIDB4MS5mZmY4ZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEuNjI2MmFjYmI2OThjYTgwNTA3NzAwZDVlZjNkMGM1YWRwMSwKKyAgICAweDEuZmZmY2ZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjhlOGY0M2QzODA0MGZmZmVkYTczMmM4ZDE2NGMxZWI1cDgsCisgICAgMHgxLmZmZmZmYmJmZmZmZmZwNTczCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLmM1NTE3OTM5NWEwMDA4MDBkZGMzMzQ3OTA0NjlkNGRlcDcsCisgICAgMHgxLmZmZmZmZTNmZmZmZmZwMzI1CisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLjI3YTA5NGVkZWYwYzI3ZmZiM2Q5YmE5ZjZkMjkxMGE1cDksCisgICAgMHgxLmZmZmZmZTNmZmZmZmZwODUxCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLjI3Zjk0ZGY5ZWFmNTBmYmM4OWJlYWM3OTM5MmIwYTIwcDksCisgICAgMHgxLmZmZmZmZTNmZmZmZmZwODUyCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLmJiN2QyZmUzZGJmN2Y3ZmVlMDNlZGViYzdhMDFkNTk5cDEsCisgICAgMHgxLmZmZmZmZmZiZmJmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS42MmUzZWZlZjM1OWRmZmZmYjRlMjk3NTY3OGE2MWJmNHAyLAorICAgIDB4MS5mZmZmZmZmZjhmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEuODZlZjVjY2RmYTFiMTdmZTc4Yzg4NmE5ZDhiMmZhYWVwNywKKyAgICAweDEuZmZmZmZmZmZkZGZmZnAyODAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuNjJlM2VmZWY0MTllMTdmZmZlNjM5MGI5ZjAyYmNjMjhwMiwKKyAgICAweDEuZmZmZmZmZmZlZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLjYyZTNlZmVmNDM5ZGZmZmZkMjZiMTBmODQ2NzYyM3AyLAorICAgIDB4MS5mZmZmZmZmZmZmZmYxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuNDE5ZWNiNzEyYzQ4MDgwMzVkZWNiNTgzODY4NDFkOWRwNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmN3AyNworICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIDB4MS42MzNjZThmYjlmODdkYWZjNjlhYzU5MDlkM2U1YTZkOXA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZhcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuNjJlM2VmZWY0MzllMTgwMDAyNmJhMGZhMmQzY2RiOThwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgMHgxLjVjYTcyZDE3ZWQzZWE4MDA4OWFlNjVkZmFmYzFlMmIycDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMC4wLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuOWYzMjNlY2JmOTg0OGJmODM1YTQzM2MwY2U5YWVkMTdwLTIsCisgICAgMHgxLjE1NTU1NTU1NTU1NTVwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS4yM2E0ZmJjZGJjMDgzNTgxOWZlZWEyY2VhZTY1MzJiZHAtMSwKKyAgICAweDEuMmFhYWFhYWFhYWFhYXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgMHgxLjYyZTQyZmVmYTM5ZWM4YWNlOTFjYmM4NTVhNDRiZGY2cC0xLAorICAgIDB4MS4zZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuOTczYTI0NDhhNjM1ZDI0NzM1MjJlMGU3MDE1ZDI4ZjFwLTEsCisgICAgMHgxLjU1NTU1NTU1NTU1NTRwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDB4MS5jNDg0NjAzZWIwOWMwOTcwZmZhODYyNTRkNmJhYmZhNXAtMSwKKyAgICAweDEuNmFhYWFhYWFhYWFhOXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLmVjYzJjYWVjNTE2MDYwMGQ5NGI2ODRjZGIyMTEyNTQzcC0xLAorICAgIDB4MS43ZmZmZmZmZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAwLjAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS43OTA3MjAyODU4NmI3Mzc1OGE0ZjYyMmNhZmIwN2Q0OHAtMSwKKyAgICAweDEuNDg5YTU3OTZkZTBiMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMHgxLjk0ZDgwZjMwZTkzZTVlMjk5OTdhZjhmZTQ0ODFjODhjcC0xLAorICAgIDB4MS41NDQ5NDIwM2MxOTM0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuY2RkY2M3MWRlMzJhYjVhYzU3YzEzYmE0MGVjNzk2M2JwLTEsCisgICAgMHgxLjZmNmE4YmU5ODFkYjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS44ZmNiOWQ4NzRjMDI2ZjJjMTI0NTA5NzFiYjFiZGRmY3AtMSwKKyAgICAweDEuNTIxNzkyZWE3ZDI2ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLjhjYTUwNDNiNzkyNjNhMDZhYTBmNzBkN2QwYmRhMjJicC0yLAorICAgIDB4MS4xMzcyM2YyNTg1ZGEycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAweDEuZWNjMmNhZWM1MTYwOTk0YmUwNDIwNGE5NjhjNzAyMGRwLTEsCisgICAgMHgxLjhwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS5lY2MyY2FlYzUxNjA5OTRiZTA0MjA0YTk2OGM3MDIwZHAtMSwKKyAgICAweDEuOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgMHgxLjA4OTNmZjdjZWU0NmViMTYwMTU0NzdmOWI2Njk1ODE5cDAsCisgICAgMHgxLjk1NTU1NTU1NTU1NTVwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDB4MS4xOTNlYTdhYWQwMzBhMTc2YTQxOThkNTUwNTEzN2NiNXAwLAorICAgIDB4MS5hYWFhYWFhYWFhYWFhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAweDEuMjhhN2NiYjg1MDA2MWVkOGNiNDUyYzY0YzUyMjE4YzlwMCwKKyAgICAweDEuYmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLjM3MDMwYjhjYzkzNTQyY2NjMzhjY2E5MTU3YjBmMjZkcDAsCisgICAgMHgxLmQ1NTU1NTU1NTU1NTRwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIDB4MS40NDc3OWUxZWJkODQ3MjU3ZjZjMDc3Y2IzMzUwYjQ1N3AwLAorICAgIDB4MS5lYWFhYWFhYWFhYWE5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuNTEyNDI3MTk4MDQzMzc0NGMxMDYzZmU1NzA0MDliOWFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMHgxLmVjYzJjYWVjNTE2MDk5NGJlMDQyMDRhOTY4YzcwMjBkcC0xLAorICAgIDB4MS44cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEuMGMyNDIzZmMwMDFjMzhkY2JjOWNkMTk0NjAwMGY1NjNwMCwKKyAgICAweDEuOTliZjI1MjM0YmNjYXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgMHgxLjE5N2U4OWNhNDg4MDliMzc0NmRlNDE4ZmJmMGVlMzgzcDAsCisgICAgMHgxLmFhZmZlNTczYmQ3YmJwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDB4MS4yNjFiNzI5MDBkMTM2YjkwY2JlZjhmYTlhM2JiZDg1YXAwLAorICAgIDB4MS5iYzVjY2Q3MTk3NmNicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAweDEuZmJiZmI5NTMyNGViMTg2ZjNkNjc3YWVkMzBjMzU4ODRwLTEsCisgICAgMHgxLjg4OGI1NmQ4NmIyNmVwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS40Y2YxYTQ4YjRiZGJhOTA0MzcwN2E0NWIzNWYwZDUyOXAwLAorICAgIDB4MS5mOGNjNmRiMWJiY2I0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAweDEuNTEyNDI3MTk4MDQzNDliZTY4NGJkMDE4OGQ1MmNlY2NwMCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMHgxLjE4MDgwZGQzMTcxYjZjMDMxYTliNTc2YmU2M2I2ZDRjcDYsCisgICAgMHgxLjBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgMHgxLjE4NjlhNmQwZmMwYzg3MzRjZmY1YmU0Yzk5NGE2MjNjcDYsCisgICAgMHgxLjE5OTk5OTk5OTk5OWFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLjE4YzJjMDUzYTY0MDFmZGY4ZjgwMTg4NWVjZWM4OTZlcDYsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMHgxLjE5MTRiNzBhZDUzNzA5ZmMwMmU2MGM5OTMxNDY1ZDFjcDYsCisgICAgMHgxLjRjY2NjY2NjY2NjY2VwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLjE5NjA5YTAwYTg0ZWI1NDY5YjhhMTQ1NzVjZmNmZmRjcDYsCisgICAgMHgxLjY2NjY2NjY2NjY2NjhwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgMHgxLjE5YTc0MDExZTMxNGYxMTc5YjU5ODQyODJmOTI1NjgxcDYsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLjE5ZTk1Njc0Yjk4ZGQ5M2M2ODk0MjU0MmFlNDhlYzE0cDYsCisgICAgMHgxLjk5OTk5OTk5OTk5OWNwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMHgxLjFhMjc2YWQ2MzliMDllOTI5NGY3MjE4ZWY1ODdjZTZjcDYsCisgICAgMHgxLmIzMzMzMzMzMzMzMzZwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMHgxLjFhNjFmMjkyNzIzOWE0ZTVkNzVhYjcwOTUyYjM1OTVhcDYsCisgICAgMHgxLmNjY2NjY2NjY2NjZDBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgMHgxLjFhOTk0ZmY4M2VjYTc3ZjNlZjkxODY2YTdiODU0MGUycDYsCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLjFhY2RkNjMyZjY2MmE5ZTljOWMyZTYzYTQ2NGIzOTI3cDYsCisgICAgMHgxLjBwMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLjE2YTUyOWEzMjc3N2NkMGZjMzA3OTAwNGI2MzM4NzVmcDcsCisgICAgMHgxLjBwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLjE2ZDVmNjIyMTlmMDVhYTg5ZGI0YzM3NTBmYmIwMWQ2cDcsCisgICAgMHgxLjE5OTk5OTk5OTk5OWFwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLjE3MDI4MmUzNmYwYTI2ZmRmZDc5ZjA5MWI5OGMxNTcwcDcsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLjE3MmI3ZTNmMDY4NTljMGMzNzJjZWE5YjViYjhmZjQ3cDcsCisgICAgMHgxLjRjY2NjY2NjY2NjY2VwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLjE3NTE2ZmI5ZjAxMTcxYjE4MzdlZWU3YTcxOTQ1MGE2cDcsCisgICAgMHgxLjY2NjY2NjY2NjY2NjhwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLjE3NzRjMmMyOGQ3NDhmOWEwMzY2YTY2MmRhZGVmYmY5cDcsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjE3OTVjZGYzZjhiMTAzYWM2YTAzZjZmMDFhM2E0NmMzcDcsCisgICAgMHgxLjk5OTk5OTk5OTk5OWNwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjE3YjRkODI0YjhjMjY2NTc4MDM1NzUxNjNkZDliN2VmcDcsCisgICAgMHgxLmIzMzMzMzMzMzMzMzZwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLjE3ZDIxYzAyZDUwNmU5ODEyMTY3M2ZkMzZjNmY3ZDY2cDcsCisgICAgMHgxLmNjY2NjY2NjY2NjZDBwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLjE3ZWRjYWI1YmI0ZjUzMDgyZDgyYTc4NDAwZDg3MTJhcDcsCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLjE4MDgwZGQzMTcxYjZjMDMxYTliNTc2YmU2M2I2ZDRjcDcsCisgICAgMHgxLjBwMjAxCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLjVhZWI4ZmRjMDFiMjIxNjA1YzM1YWM5ZWIzYjg4MzQ5cDksCisgICAgMHgxLjBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS41YWY3YzJmYmJlNTA0NGM2OTJlMGY5N2FjYTFhNjFlN3A5LAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuNWIwMmU2MmMxMzk2YjdkYmVhZDI0NGMxZjQ4ZWE2Y2RwOSwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgMHgxLjViMGQyNTAyZjk3NTk1MWY3OTNmMDM0NDVkMTllMTQzcDksCisgICAgMHgxLjRjY2NjY2NjY2NjY2VwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS41YjE2YTE2MWIzZDg4YTg4Y2M1Mzg0M2MyMjkwYjU5YnA5LAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAweDEuNWIxZjc2MjNkYjMxNTIwMmVjNGQ3MjM2M2NlMzYwNzBwOSwKKyAgICAweDEuODAwMDAwMDAwMDAwMnAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgMHgxLjViMjdiOGYwMzYwMDZmMDc4NWY0YzY1OThjYmEzMzIycDksCisgICAgMHgxLjk5OTk5OTk5OTk5OWNwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIDB4MS41YjJmN2I3YzY2MDRjN2IyNGI4MTI1ZTMxNWEyMGY2ZHA5LAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuNWIzNmNjNzNlZDE1ZTg3Y2IzY2Q5ODkyNjE0NzgwY2JwOSwKKyAgICAweDEuY2NjY2NjY2NjY2NkMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgMHgxLjViM2RiODIwYTZhODAyZGU3NmQ0NzI3ZTg2NjFiZGJjcDksCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS41YjQ0NDhlN2ZkOWIwOTFkMzIxYTllNzg3ZmJhN2NjNHA5LAorICAgIDB4MS4wcDEwMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAwLjAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS5lY2MyY2FlYzUxNjA3Y2FjYmE3YzQ0YmI4ZTdlZDg0NnAtMSwKKyAgICAweDEuN2ZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgMHgxLmVjYzJjYWVjNTE2MDk5NGJlMDQyMDRhOTY4YzcwMjBkcC0xLAorICAgIDB4MS44cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuZWNjMmNhZWM1MTYwYjVlYjA2MDdjNDk3NDBlOWEyOThwLTEsCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDB4MS41MTI0MjcxOTgwNDM0MDgxOTRhOTA3ZmVmZWZhZjk5Y3AwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEuNTEyNDI3MTk4MDQzNDliZTY4NGJkMDE4OGQ1MmNlY2NwMCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLjUxMjQyNzE5ODA0MzVjMzgwZjkxNjA0YmE4ZGFkZWI5cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS4wODFlYjRiNDIxNTkxMzhkNzgwZWY5ZGE0NTQ3NmM5M3AxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAweDEuMDgxZWI0YjQyMTU5MTdhZjBkMzdhZjE3ZmJmOTNmNzNwMSwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjA4MWViNGI0MjE1OTFmZjIzNzg5MTk5MzY4ZjMyMzE0cDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS4xNTQyNDU3MzM3ZDQyOTljNmI3M2M4OWQ4NDY5YTE3MXA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLjE1NDI0NTczMzdkNDJhMWM2YjczYzg5ZDg0YWJhMTcxcDQsCisgICAgMHgxLjBwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEuMTU0MjQ1NzMzN2Q0MmIxYzZiNzNjODlkODUyM2ExNzFwNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyNAorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDB4MS4zNjg3YTlmMWFmMmIxNDVjYTE0ZTdhNGEwNmU2MTdiMnA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI2CisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLjM2ODdhOWYxYWYyYjE0ZGNhMTRlN2E0YTA2ZTkxN2IycDQsCisgICAgMHgxLjBwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuMzY4N2E5ZjFhZjJiMTVkY2ExNGU3YTRhMDZlMzE3YjJwNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyNworICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS40MTllY2I3MTJjNDgwYzAzNWRlY2I1ODM4NzI2MWQ5ZHA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLjQxOWVjYjcxMmM0ODBjODM1ZGVjYjU4Mzg3Mjg1ZDlkcDQsCisgICAgMHgxLjBwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAweDEuNDE5ZWNiNzEyYzQ4MGQ4MzVkZWNiNTgzODcyMGRkOWRwNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyOAorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS42MmU0MmZlZmEzOWVmMzE3OTNjNzY3MzAwN2U0ZWQ1ZXA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDUsCisgICAgMHgxLjBwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAweDEuNjJlNDJmZWZhMzllZjNkNzkzYzc2NzMwMDdlMWVkNWVwNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2MworICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS42MDFlNjc4ZmM0NTdiNTUwZTQ5ZmQ4NjFhN2Q1YTE4M3A2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEyNQorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS42MDFlNjc4ZmM0NTdiNTcwZTQ5ZmQ4NjFhN2Q2MjE4M3A2LAorICAgIDB4MS4wcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIDB4MS42MDFlNjc4ZmM0NTdiNWIwZTQ5ZmQ4NjFhN2Q0MjE4M3A2LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS42MjhiNzZlM2E3YjYwYjk2YmRlMjc1NTYzYmUzZTNlM3A5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAweDEuNjI4Yjc2ZTNhN2I2MGI5YWJkZTI3NTU2M2JlM2YzZTNwOSwKKyAgICAweDEuMHAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLjYyOGI3NmUzYTdiNjBiYTJiZGUyNzU1NjNiZTNiM2UzcDksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS42MzNjZThmYjlmODdkYjEwNjlhYzU5MDlkM2U3ZDZkOXA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS42MzNjZThmYjlmODdkYjEwNjlhYzU5MDlkM2U3ZDZkOXA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuNjMzY2U4ZmI5Zjg3ZGIwYzY5YWM1OTA5ZDNlN2E2ZDlwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLmNmYzAyZjkwMTA2YzE3YTNmZDc3ODg0NWRlMzQ5NGI0cDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS4wNWYyM2M2Y2JhZjMwYzA0MmUzMjAxMTk4OWFkZTU5NHAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuNmEwOWU2NjdmM2JjYzcyNWZiMWQzMzc3NDQzYWU2MThwLTI2LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAwLjAsCisgICAgMHgxLjBwMAorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2Fjb3NoZl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvYWNvc2hmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNTQxYWVlCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2Fjb3NoZl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSw2NjIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfYWNvc2hmX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgMHgxLjUxMjQyNzE5ODA0MzQ5YmU2ODRiZDAxODhkNTJjZWNjcDAsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS43OTEyNzMwZTlkZDhjMjhkMGMyZTg4NTE3MzBlZWI0NXA0LAorICAgIDB4MS4wMDAwMDJwMzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMHgxLjYyZTQyZmZmYTM5ZWUzNTc5M2RjYmM4NTNkM2I0MmU3cDUsCisgICAgMHgxLjAwMDAwMnA2MworICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuNmEwOWRlZGQxNGIxZTVkM2YwYTdiNjZmYjc5NzhlNTJwLTksCisgICAgMHgxLjAwMDA0MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS41MTI0NzEwMDExMDg3MzcwYmVmOGZmMjkzMzRmMDU4OHAwLAorICAgIDB4MS4wMDAwNDBwMQorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuN2ZmZmY3MDAwMDkxY2NjMDk4ODRkMzNiNjRiMWViODdwLTksCisgICAgMHgxLjAwMDA0OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS42ODZmYzMwZjYxZDMyZjM2Y2ViZDM1NTY2NDdlNmQ4NXA1LAorICAgIDB4MS4wMDAwNGNwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLjUxMjVlMjdmNzM2M2I5MWE0ZDMxNDljZjUwNjY2ZWNhcDAsCisgICAgMHgxLjAwMDE4MHAxCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS5lMzMwMzUwYzU3MmYzMzMxNjI3NjdjMzZkY2U2MTU2NHAtOCwKKyAgICAweDEuMDAwMWM4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLjUyYTc5N2Q3Mjk5NDE4MjNjNDRhYWU5NGE3OGU4ZDc0cC03LAorICAgIDB4MS4wMDAzODBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLjk0YzRkYjA2YzFlODRhMjIxZDM5ZjBhM2NlZTA1NTk5cC03LAorICAgIDB4MS4wMDA1cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5kZWVkODliN2IzNTM1Y2U4MzMxOWE4MzQ1NDI2MGJmOHAtNywKKyAgICAweDEuMDAwN3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuNTJhMWNlODViNzQ3NDMxMTY4ZDE1OWU2OWMxZWY1NmVwLTUsCisgICAgMHgxLjAwMzhwMAorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLjY3ZDY3NDU0YjkxYjFkNDY1NjdmOTliYTJlMmUxMDBjcC01LAorICAgIDB4MS4wMDNmM2NwMAorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLmRlZmY1ZDZkN2U3N2U5ZWY4OWQ1MzNjZDFiNDY3NGMwcC01LAorICAgIDB4MS4wMDcwMTBwMAorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLjAzZWNmNTA1YTM0Y2RiMjJlOTI2YzIyZGFmZGNiYTkzcC00LAorICAgIDB4MS4wMDg0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS41MjI2MzdlMTQ2Mzc1ZGIzZDVlNTRkYTUwNmE2ZGE4YXAwLAorICAgIDB4MS4wMGUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS43NGQwZmIwNDVmYWQyYmI2YTBlM2YyZjkzYzNkYmNjNHAtNCwKKyAgICAweDEuMDEwZmE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS45MGI1OTEwNThkZjA1OGViNzA3MzU5NDQ5MDkzZTdkNXAtNCwKKyAgICAweDEuMDEzOWRjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS5iYjY3YThmZDE3ZmIxNTJkMWM3M2ViZGIwOTJjYWMxZHAtNCwKKyAgICAweDEuMDE4MDYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5lNzFmNTMwZjk0ZTk0NzE1OGEzODZiMzM2Y2RlYzY1OHAtNCwKKyAgICAweDEuMDFkMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuZmZhYWQwZmE0NTI2Mjc5NzZmZjM2NmI5ZDM4NDBmZDFwLTQsCisgICAgMHgxLjAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS41NTMwY2NmZmY3YWU4ZjdjNzBmMTU5MDk4NGVlMDQ0ZnAwLAorICAgIDB4MS4wMzhhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS41ZTRmZDRmZmZmNWRiZTI2ZDRlZDU2NTBjMDAzYjg2YXAwLAorICAgIDB4MS4wYmMwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS41ZmFiMWY3ODBkMzg4ZTljYzU3YjM2YmUzYzMxNDFjN3AwLAorICAgIDB4MS4wZHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuNzYzYmRmMDAyZWExNzkzNmUwYmZjZmU3YjY1MTFiY2JwLTIsCisgICAgMHgxLjExNDk4NnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuYTAwOTExMDEwZjkzYWJlZTAyOGUzMDIwMDg5NjQ1MTNwLTIsCisgICAgMHgxLjE1NmJiY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuOTRlOTA1MGQ3ZjliMDVlYWFiMmFiNTc4ZjlmN2M4YTlwMiwKKyAgICAweDEuMTdhOTNjcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5iNmM5MzFjMDI1MjM4ZWJjZjk4ZWYxMmViMjhkODMwN3A1LAorICAgIDB4MS4xOHA3OAorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLmJiNmYwNWZmZGRjOGE2ZDdlYzAxZGY3MDcyZTZlMGYwcC0yLAorICAgIDB4MS4xODYxNmNwMAorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLjZkNzRlZTAwMDE5NWViMWFhN2Q4MWRkMTdhMjE3ZmZhcDAsCisgICAgMHgxLjFhMjNiYXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuY2E5NzZmNzA4M2ZhNzRmYjI4YjA0ZmIxNjk0M2UzNDhwMSwKKyAgICAweDEuMjBwNAorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLmVmYmUyMGZmOWI5M2I4YzFiZTA5MDRjNDE2NzM0OGQ3cDIsCisgICAgMHgxLjIxMDg0MHAxMAorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLjc2YjFjMzAwMDFlMjVmM2M4YmY1OWY1MWUxMzQ1Yjg5cDAsCisgICAgMHgxLjIzNjVlOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuMTRkN2Y3ZmZmZTJmYWJhZTkxYTExOTgyZTRlNjE2YzhwLTEsCisgICAgMHgxLjI2NThwMAorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLjI2OTM5OTA0ODNmZDhlZWI1MTI3MWUyZTU4NWI2ODRkcC0xLAorICAgIDB4MS4yYjhkNzRwMAorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLjVjNGU5NjAwMDFkNDc0NDViYWU0MTM2OWRiZmYzYmVicC0xLAorICAgIDB4MS4zZDhlYThwMAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLjZhYWU3MzAwMDA4ZmE0ZDlmMDIxZWQ2MDFjNjVmOTY1cC0xLAorICAgIDB4MS40MmY1NWNwMAorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLjllODZhNjAwMGVjZjAyMTBlNGE2YTViNzQyM2QwNDEzcDAsCisgICAgMHgxLjRmZDNmMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuOGUwNWI2ZmQ1ZDFiOGFlYzgzMmY3NThhYmFjOGZlODlwLTEsCisgICAgMHgxLjUxNTQ1MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuZGYzMjhiMGJhNDdhNzcyNzlmZDRjZWQzZjQ5YzkzZWFwMSwKKyAgICAweDEuNTIzYjU2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS45ZWI3YTJmYzViNmFhNGZmNTliODYwMTk4NGI3MmE2OHAtMSwKKyAgICAweDEuNThhYzQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5hYmM0N2E3Mzk2MGU4NDczMTM1NTExMjIwY2MxNmNhOXAwLAorICAgIDB4MS42MDU4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS44M2NlZWIwZTkzYTZlMDQ3YjcwYTMxNDViMjJkMDg1NXAzLAorICAgIDB4MS42NjBkZDZwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS5lNzMwNmYwYWUyNWY3OTI5MDI5MmU2ZTJlNmZhOGNhMHAxLAorICAgIDB4MS42N2ZmYzBwNAorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLmMzYmY4NDAwMDIzY2E4MjdjNjc0MWQ3ZTkwYzYyNWY0cC0xLAorICAgIDB4MS42YTQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS45MDM2MzEwMDAxYTI1YjFjY2VmMGY1MDM1ZDEzNmRjM3AxLAorICAgIDB4MS42ZDc2ODBwMworICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLmNiNzA3N2ZmZmZiNDkxZGQ3NjBiNzUzOGEwMmM2ZTNlcC0xLAorICAgIDB4MS42ZTJjNGNwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLmQ0NjZlYjA0N2QzMjc0YzNmOGU0YWQ1N2ZmNzY0ZWExcC0xLAorICAgIDB4MS43MmQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS5kNTNjNmZjNmY5MmUwYmEyM2IzMWMyMmQ4Y2MyNTRjZnAtMSwKKyAgICAweDEuNzM0MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuZWM0OWQyNWZiYjY3NjZkMzllOTA4MjllNmUyZTI1MGNwMSwKKyAgICAweDEuNzY5ZGEwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5kYzY3OWQwMTc2ODM5NDZkNzhlMmE5Y2M4MDNjZjZjN3AtMSwKKyAgICAweDEuNzcwZDEwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS5lOGMwYjBmZmZlMWRkZjZhZGYzZDRjMmY3ZGQ5NWQ1OHAtMSwKKyAgICAweDEuN2RjNTY2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS5lOTYwOWIwMDAwMDBhMGVkYTcxMDkyZjkzYWUxMjhhYnAtMSwKKyAgICAweDEuN2UxZGVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS5lY2MyYzAzMGEzMGZjZGFiOWFjMjQxYjY2Y2QzMGMyNXAtMSwKKyAgICAweDEuN2ZmZmZhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIDB4MS5lY2MzNWEwN2YzNjgyZGJhYTM2MDU4N2M1NTljY2JkM3AtMSwKKyAgICAweDEuODAwMDUwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS5lY2M2ZGMwM2MzNDE1NDM1NGY4NTVjNmJkNTE3YWY1ZHAtMSwKKyAgICAweDEuODAwMjQ2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS5mMDE5MmYwMDAxOTcxMmViOTc1MjRjMGJjNzAyYmUxN3AtMSwKKyAgICAweDEuODFkZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS5mMjg0NTQwMDAxYjkzYzhlYmUzZjRhZmZlMjE5MDVhNnAtMSwKKyAgICAweDEuODMzZGY2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS5mNGQ0NGMxY2FmNmNkMjE2YjYzNGQzMDk3ZTkwMTFmMXAtMSwKKyAgICAweDEuODQ4ZWU4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS5mNGZmODdkMDE1OWM1OWJhMDQ4MjYwMmFiZTQ0MmFlOHAtMSwKKyAgICAweDEuODRhNzk4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS5mYmQxOGRjMjUwZDMzMjRhZjc1Zjk3ODY1NGIyNmNkZnAtMSwKKyAgICAweDEuODg5NWI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5mYzVkNDNhMDQ1M2M1NDMxNWNjMzY0N2EzMGU0ZWQyYnAtMSwKKyAgICAweDEuODhlNmZhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS5mZWI0NDMwMDAwZWU4OTc3ZTE0YWM5NjJjM2VmNzcwNnAtMSwKKyAgICAweDEuOGE0NGJhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS5jZTUxZjlmNDc4OTVlZTgwNzE1OGRhMTZhMzhjYTE1N3AwLAorICAgIDB4MS44ZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLjZjMDI4NzBmNDNmNDEyZjJmYWNkYTljNzFhZjY0ZDlhcDUsCisgICAgMHgxLjkwMjZmNHA2NAorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgMHgxLjQ3NTMzZDAwMDAyNjRjNGNiYjdjMmZhYjU4MTMzMjQwcDEsCisgICAgMHgxLjlmNDdlMnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEuMWEzMGIyMDAwMDFjM2RlNzliYzBmMjk5ODJhZjVmYzFwMCwKKyAgICAweDEuYWJlZTIycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS4zZjYzNTBmZmRhMWQyMzVhNDQ5MGY3YWEyY2UyNmFlN3A0LAorICAgIDB4MS5iZDUzMWNwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS41MGViNmQwNDU0Mjg5MzExMWNmZDM3NGRmZDNkMjE0ZnAxLAorICAgIDB4MS5iZjNiYWFwMgorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMHgxLjJkZmE5M2ZmMmM2NzAwZDFkOTA4MjVkMzcxODNkY2Q5cDIsCisgICAgMHgxLmJmZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuZWNmNGMyMWFmOTU3ODcyNjZhYWM5OTYxNmQ2M2FmMjFwMCwKKyAgICAweDEuYzA1M2Q0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS5lZTU5NmUyNTJjMDE2NDFmZDE2MTYwYjgwYmM2YWZlNnAwLAorICAgIDB4MS5jMmFjMmFwMQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgMHgxLjUyODI2ZWZmZjM3OWU1OTExOTNmYjk3N2ZmNGU2YmIxcDEsCisgICAgMHgxLmM0YzNmY3AyCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuY2I2MDVkMGIwZjY2YzJhYzU4NTdjZGExMzkwMTc5MGJwNSwKKyAgICAweDEuY2IwZDA4cDgxCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAweDEuZjM4ZmMxZTI1ZjEwZjVmYjIyNzFiNTBlZGJhNDQ2YjhwMCwKKyAgICAweDEuY2I5MDgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS4zOTQwYTNmZmZmNjVlMTJmZjc2ZDY5NzZhMjUyNTRiZnAwLAorICAgIDB4MS5kOGNiNTRwMAorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLjQwODg5ZWZmZDI4ZTI3N2FkODQwZDc0NjZhYmFkNmVjcDQsCisgICAgMHgxLmRlNjFmY3AyNworICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLjA5YWEyMGZmNmRmMzI5ZmM2OTY1YzUxNTcwNDJiNDRhcDMsCisgICAgMHgxLmY3ZmZmZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLmRjYTIxZjAwNjA4YzFkNWRmYThjNmUyZGI1YWJkOWMwcDQsCisgICAgMHgxLmY3ZmZmZXA0MQorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLjYyNjM2ZTAwMGFhZTgwYTc0OGRjZDc1NTVjYWY4ZTg5cDIsCisgICAgMHgxLmZiZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuNTBhMmFjOTU2ODRiNjhmZGM1MDhkZjQwY2M3MzMyM2RwMCwKKyAgICAweDEuZmYxZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS41MGI5YzhkOWFjM2Q5ZmVkNjAyOTQ5MmUyOTQ2ZTg5Y3AwLAorICAgIDB4MS5mZjQ3ZjBwMAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLmI2MTAyYWZmYzdmNzQ2MzhjNmQ5Nzk3OTlkYjJiZmFhcDUsCisgICAgMHgxLmZmOWZmZXA3NworICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLjUwZjYyNTAwMDFlMTFlZGUyOTdjNGIzZjRiNzZlMjY0cDAsCisgICAgMHgxLmZmYjA1OHAwCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEuNTEwYTA4ZmZmZjNhNWI5NzFmYjQxYjc1N2M2NjAzZWNwMCwKKyAgICAweDEuZmZkMmM2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS40MTllY2IwMTJjNDY4NDgzNTZjNzI4MDhhYjg2MzYxY3A0LAorICAgIDB4MS5mZmZmZjJwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS41NTA3NDYwMDQ3M2E5ZGQ2MjdhYzQ3ZDFkMjQxOTk5MHA2LAorICAgIDB4MS5mZmZmZjhwMTIxCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuNjQwZTkwZmZmZTFkYjNlNGJiYmUzZDJjMWIwOGMyMjlwMCwKKyAgICAweDEuMTExODc0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDAuMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS45ZjMyNDUzMjVmZGRkNWIyYzg3ZjI0OWM1MjcxYzFjZHAtMiwKKyAgICAweDEuMTU1NTU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS4yM2E1MDAzZGMyYTZkOTI4ZGQ5MjFlODA4YTkwMTFlOHAtMSwKKyAgICAweDEuMmFhYWFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS42MmU0MzU0NGY4ZTg2ZTlhMjBmMjk3Y2U0YTJiYzVkOHAtMSwKKyAgICAweDEuNDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS45NzNhMmE1NGNhYTFkYTBhMDRiZTE1OWRiNWNhZThhYnAtMSwKKyAgICAweDEuNTU1NTU4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5jNDg0NjZlMzc2MDhlZWM1NTg0Mjk0MzQ0NTRlZmJjMHAtMSwKKyAgICAweDEuNmFhYWFlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS5lY2MyY2FlYzUxNjA5OTRiZTA0MjA0YTk2OGM3MDIwZHAtMSwKKyAgICAweDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMC4wLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLjc5MDcyMTJkOWYyOTExMmYyNDZlM2U0OGQxN2NiODc3cC0xLAorICAgIDB4MS40ODlhNThwMAorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLjk0ZDgwZjI4NTUyYTc5NjBkYmQzNjFlZjhkOTk3MjM5cC0xLAorICAgIDB4MS41NDQ5NDJwMAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmNkZGNjNzQ5OTU4YTUwOGQyNzJjOGFmMWQ3ZjRlZTlmcC0xLAorICAgIDB4MS42ZjZhOGNwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS44ZmNiYTAwYWFmNDdlNzk2ZDAxNzI0YzI4ZGYwYThjM3AtMSwKKyAgICAweDEuNTIxNzk0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuOGNhNTBjZDQyOGExNzZmNTM5MjA1ZjNhZGQ3ODNiNTdwLTIsCisgICAgMHgxLjEzNzI0MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLmVjYzJjYWVjNTE2MDk5NGJlMDQyMDRhOTY4YzcwMjBkcC0xLAorICAgIDB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLmVjYzJjYWVjNTE2MDk5NGJlMDQyMDRhOTY4YzcwMjBkcC0xLAorICAgIDB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjA4OTQwMDA3ZjU0M2NmYTBhZGFlMmU2MjI5ZGNlN2UycDAsCisgICAgMHgxLjk1NTU1NnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjE5M2VhOGFhZDAzMDA5NzZhNGI2ZTJhOTlhMTBkMzE1cDAsCisgICAgMHgxLmFhYWFhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMHgxLjI4YTdjZDFjZDJkODc1ZDg5YmEzMmViNWQ1NzRmZmE0cDAsCisgICAgMHgxLmMwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLjM3MDMwZDQ5MGYzY2IzNmRkYThlODQzNjI4MGY2NjY2cDAsCisgICAgMHgxLmQ1NTU1OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjQ0NzdhMDI4OWU3NjIyMDAxOTY1MjE0MTk5ZDA2NjFicDAsCisgICAgMHgxLmVhYWFhZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLjUxMjQyNzE5ODA0MzQ5YmU2ODRiZDAxODhkNTJjZWNjcDAsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLmVjYzJjYWVjNTE2MDk5NGJlMDQyMDRhOTY4YzcwMjBkcC0xLAorICAgIDB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLjBjMjQyMzEyZTlmMTQ3YzcyZGU2Zjg3OGVlZDVmMjYzcDAsCisgICAgMHgxLjk5YmYyNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLjE5N2U4OGIzZDE0ODY4MjZlNzU1Nzg0OWZhODcwMmY5cDAsCisgICAgMHgxLmFhZmZlNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLjI2MWI3MThiOGRjMjRhMzlhNzdhMDEzNDU5MTg3ZWFicDAsCisgICAgMHgxLmJjNWNjY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLmZiYmZiYjRmYjNjNTFhMWE2OTNiODUzOGQxMmIyNTI4cC0xLAorICAgIDB4MS44ODhiNThwMAorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS40Y2YxYTRiOTU5NjRiYzdhZjQ3NWExNjI4YjYxM2QwYnAwLAorICAgIDB4MS5mOGNjNmVwMAorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS41MTI0MjcxOTgwNDM0OWJlNjg0YmQwMTg4ZDUyY2VjY3AwLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS4xODA4MGRkMzE3MWI2YzAzMWE5YjU3NmJlNjNiNmQ0Y3A2LAorICAgIDB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjE4NjlhNmQyNzA2OTllMWZhN2MzMDdkNWZkYmNlODY0cDYsCisgICAgMHgxLjE5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEuMThjMmMwNTY1MGVhYzk3YzAxNDc5YTFhNzdjYWE5MDlwNiwKKyAgICAweDEuMzMzMzM0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS4xOTE0YjcwZTg2NzIxYmJkZTdhMmVlYTZmMDc3ZDU0OHA2LAorICAgIDB4MS40Y2NjY2VwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLjE5NjA5YTA1M2E5N2Q2ZjMwNDA5NzUxZTYyODFkZTU5cDYsCisgICAgMHgxLjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEuMTlhNzQwMTczODZhNDI4OTYyNzkxZjA1Njg3OTcyZjZwNiwKKyAgICAweDEuODAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS4xOWU5NTY3YWI5OGRkNDVjNjg5OGE1NDJhOTNkNmMxYnA2LAorICAgIDB4MS45OTk5OWNwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLjFhMjc2YWRjZDA0NzJmNTJjZGFlNDA1MTkwZjA1ODE0cDYsCisgICAgMHgxLmIzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEuMWE2MWYyOTk4ZWFiNjUzZTU1Y2RhOWNmMWI4ZDllNTBwNiwKKyAgICAweDEuY2NjY2QwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS4xYTk5NGZmZmQzMDA1NTVhMGQ2MzQ4MTYwMWQzNjQyMnA2LAorICAgIDB4MS5lNjY2NmFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLjFhY2RkNjMyZjY2MmE5ZTljOWMyZTYzYTQ2NGIzOTI3cDYsCisgICAgMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAwLjAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLmVjYzJjNzU4NmNhMzk2M2JhNTcyZGI4NjhjMzk0N2VlcC0xLAorICAgIDB4MS43ZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5lY2MyY2FlYzUxNjA5OTRiZTA0MjA0YTk2OGM3MDIwZHAtMSwKKyAgICAweDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS5lY2MyY2U4MDM2MTUwNjM3MmM4YWNjYWViMTZiODNhYnAtMSwKKyAgICAweDEuODAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuNTEyNDI1ZjFlNWNlMmJhOTkyZGJlYTNhOTA3NDUwYjZwMCwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEuNTEyNDI3MTk4MDQzNDliZTY4NGJkMDE4OGQ1MmNlY2NwMCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuNTEyNDI5NjhiNTI4ZTc3ZTQ2NjVmOGNkZTg1MDU1M2RwMCwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEuMDgxZWI0MmZlZWIzYmE4NWVkMTJjZTRiYzBmY2YxZWVwMSwKKyAgICAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuMDgxZWI0YjQyMTU5MTdhZjBkMzdhZjE3ZmJmOTNmNzNwMSwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuMDgxZWI1YmM4NmEyMmFmOGQ4MDhjNDk5MzYwZmMxMThwMSwKKyAgICAweDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuMTU0MjQ1NjMzN2Q0MjIxYzZiNjY3MzQ4MWY1NjRjMDNwNCwKKyAgICAweDEuZmZmZmZlcDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLjE1NDI0NTczMzdkNDJhMWM2YjczYzg5ZDg0YWJhMTcxcDQsCisgICAgMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS4xNTQyNDU5MzM3ZDQwYTFjNmJhZTczNDdiZjU2NGQwZXA0LAorICAgIDB4MS4wMDAwMDJwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuMzY4N2E5ZTFhZjJiMGNkY2ExNDkwNGY0YWQ2M2MyNTlwNCwKKyAgICAweDEuZmZmZmZlcDI2CisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLjM2ODdhOWYxYWYyYjE0ZGNhMTRlN2E0YTA2ZTkxN2IycDQsCisgICAgMHgxLnAyNworICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDB4MS4zNjg3YWExMWFmMmFmNGRjYTE3OTY0ZjQ3MGQzYzJjNXA0LAorICAgIDB4MS4wMDAwMDJwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAweDEuNDE5ZWNiNjEyYzQ4MDQ4MzVkZTc1ODJlMmRjNzA4NDVwNCwKKyAgICAweDEuZmZmZmZlcDI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMHgxLjQxOWVjYjcxMmM0ODBjODM1ZGVjYjU4Mzg3Mjg1ZDlkcDQsCisgICAgMHgxLnAyOAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS40MTllY2I5MTJjNDdlYzgzNWUxNzcwMmRmMWEzMDhhZnA0LAorICAgIDB4MS4wMDAwMDJwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAweDEuNjJlNDJmZTdhMzllZWY1NzkzYzRiYzg1NWIzYjQyYjJwNSwKKyAgICAweDEuZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDUsCisgICAgMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS42MmU0MmZmZmEzOWVlMzU3OTNkY2JjODUzZDNiNDJlN3A1LAorICAgIDB4MS4wMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuNjAxZTY3OGJjNDU3YjM3MGU0OWU4MzBjNTE4MGNjMmRwNiwKKyAgICAweDEuZmZmZmZlcDEyNQorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIDB4MS42MDFlNjc4ZmM0NTdiNTcwZTQ5ZmQ4NjFhN2Q2MjE4M3A2LAorICAgIDB4MS5wMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLjYwMWU2Nzk3YzQ1N2FkNzBlNGFhODMwYzQyODBjYzQ4cDYsCisgICAgMHgxLjAwMDAwMnAxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAweDEuNjVhOWY4NGI4MmU2MmYzZTQyZWRhMGE5MTFhMDYzZTNwNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAweDEuNjVhOWY4NGI4MmU2MmYzZTQyZWRhMGE5MTFhMDYzZTNwNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS42NWE5Zjg0NzgyZTYyOTNlNDJlNDRiNTNhZDRiMGU3NHA2LAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgMHgxLmNmYzAzMDBlMjNkZjU0Y2Q5MDhhMjVhYzQzNGU0ODhjcDAsCisgICAgMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgMHgxLjA1ZjIzZDA3YjYzYjBhZmFmYTlhZDgyMDNkYWQ2OWYycDAsCisgICAgMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMHgxLmZmZmZmZmFhYWFhYWQxMTExMGZhMzVhMzY5YzNkYzMycC0xMiwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAwLjAsCisgICAgMHgxLnAwCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvYXNpbl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvYXNpbl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2QxNmE0YgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9hc2luX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDI3NzQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxkb3VibGUsIGRvdWJsZT4gZ19hc2luX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgMHgxLjkyODM1ODY1MDNmZTAwMDAwMDAwMDAwMDAwMGU0NmFhcC01LAorICAgIDB4MS45MjU5ZTM3MDhiZDNhcC01CisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0weDEuOTI4MzU4NjUwM2ZlMDAwMDAwMDAwMDAwMDAwZTQ2YWFwLTUsCisgICAgLTB4MS45MjU5ZTM3MDhiZDNhcC01CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS5kN2JkY2Q3NzgwNDlmMDAwMDAwMDAwMDAwMDBkNTdlMXAtNSwKKyAgICAweDEuZDc3YjExN2YyMzBkNnAtNQorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAtMHgxLmQ3YmRjZDc3ODA0OWYwMDAwMDAwMDAwMDAwMGQ1N2UxcC01LAorICAgIC0weDEuZDc3YjExN2YyMzBkNnAtNQorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEuYTIwMmIzZmI4NDc4ODAwMDAwMDAwMDAwMDA1NmVkYjdwLTQsCisgICAgMHgxLmExNDkwYzhjMDZiYTdwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgLTB4MS5hMjAyYjNmYjg0Nzg4MDAwMDAwMDAwMDAwMDU2ZWRiN3AtNCwKKyAgICAtMHgxLmExNDkwYzhjMDZiYTdwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLjk5NGZmYjVkYWYwZjk3ZmZmZmZmZmZmZmZmYTgxYWRhcC0zLAorICAgIDB4MS45Njk3Y2I2MDJjNTgycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIC0weDEuOTk0ZmZiNWRhZjBmOTdmZmZmZmZmZmZmZmZhODFhZGFwLTMsCisgICAgLTB4MS45Njk3Y2I2MDJjNTgycC0zCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS5kNTA2NGU2ZmU4MmM0ZmZmZmZmZmZmZmZmZjllZDE4NHAtMywKKyAgICAweDEuZDBlZjc5OTAwMWJhOXAtMworICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAtMHgxLmQ1MDY0ZTZmZTgyYzRmZmZmZmZmZmZmZmZmOWVkMTg0cC0zLAorICAgIC0weDEuZDBlZjc5OTAwMWJhOXAtMworICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLmZlNzY3NzM5ZDBmNmQwMDAwMDAwMDAwMDAwMDAwNDU4cC0yLAorICAgIDB4MS5lOTk1MDczMGM0Njk2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAtMHgxLmZlNzY3NzM5ZDBmNmQwMDAwMDAwMDAwMDAwMDAwNDU4cC0yLAorICAgIC0weDEuZTk5NTA3MzBjNDY5NnAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLjMwNzA2ZjY5OTQ2NmQ3ZmZmZmZmZmZmZmZmNWYyMDExcC0xLAorICAgIDB4MS4xZWQwNmQ1MGY3ZTg4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAtMHgxLjMwNzA2ZjY5OTQ2NmQ3ZmZmZmZmZmZmZmZmNWYyMDExcC0xLAorICAgIC0weDEuMWVkMDZkNTBmN2U4OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLjI5NTE3YWI0YzEzMmE4MDAwMDAwMDAwMDAwODlkYjU2cDAsCisgICAgMHgxLmQ1YjA1YTg5ZDNlNzdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIC0weDEuMjk1MTdhYjRjMTMyYTgwMDAwMDAwMDAwMDA4OWRiNTZwMCwKKyAgICAtMHgxLmQ1YjA1YTg5ZDNlNzdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS4zYWEzMDFmNmViYjFkZmZmZmZmZmZmZmZmZjE2YzI4Y3AwLAorICAgIDB4MS5lMjY0MzU3ZWEwZTI5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAtMHgxLjNhYTMwMWY2ZWJiMWRmZmZmZmZmZmZmZmZmMTZjMjhjcDAsCisgICAgLTB4MS5lMjY0MzU3ZWEwZTI5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAtMHgxLjBjMTUyMzgyZDczNjU4NDY1YmIzMmUwZjU2N2FkMTE2cC0xLAorICAgIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjBjMTUyMzgyZDczNjU4NDY1YmIzMmUwZjU2N2FkMTE2cC0xLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIC0weDEuMDAwMDAwMDAwMDAwMTAwMmFhYWFhYWFhYWFhYjJhYmRwLTMwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS4wMDAwMDAwMDAwMDAxMDAyYWFhYWFhYWFhYWFiMmFiZHAtMzAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAtMHgxLjFmYzVlMTkzMTU4OTJmZmQ2OWRlZmI3MzFlNWI3MjNhcC0yLAorICAgIC0weDEuMWMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuMWZjNWUxOTMxNTg5MmZmZDY5ZGVmYjczMWU1YjcyM2FwLTIsCisgICAgMHgxLjFjMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgLTB4MS4zMjJmNmQ4ZTkxMDExMzU5MmZmNDAxNGY0MDNhYWQwNnAtMSwKKyAgICAtMHgxLjIwNDI0NjIxMjAyYWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS4zMjJmNmQ4ZTkxMDExMzU5MmZmNDAxNGY0MDNhYWQwNnAtMSwKKyAgICAweDEuMjA0MjQ2MjEyMDJhY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgLTB4MS41N2M4ZDMyZDRjN2E3NjNhYjY3N2EwMDZhZTY2NDY3ZnAtMSwKKyAgICAtMHgxLjNlODcyYzdjYmEwOTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS41N2M4ZDMyZDRjN2E3NjNhYjY3N2EwMDZhZTY2NDY3ZnAtMSwKKyAgICAweDEuM2U4NzJjN2NiYTA5NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgLTB4MS43NTllZGQwNGY2OGU0ODAwMWJiMDc3NzU4ODlmYzhhNXAtMSwKKyAgICAtMHgxLjU1NTU1NTU1NTU1NWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS43NTllZGQwNGY2OGU0ODAwMWJiMDc3NzU4ODlmYzhhNXAtMSwKKyAgICAweDEuNTU1NTU1NTU1NTU1YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgLTB4MS43ODIzMzNmOTI4ODEzZmZlYzExZGJhM2E4OWQwNWM2Y3AtMSwKKyAgICAtMHgxLjU3MzQ4OWI5YWU1YWRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS43ODIzMzNmOTI4ODEzZmZlYzExZGJhM2E4OWQwNWM2Y3AtMSwKKyAgICAweDEuNTczNDg5YjlhZTVhZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgLTB4MS45NGQ4YjRjNzgwOGZiN2E4N2U3NTdiNWY0MjAzNWFhY3AtMSwKKyAgICAtMHgxLjZiZjU3MDdhYTBmNmJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS45NGQ4YjRjNzgwOGZiN2E4N2U3NTdiNWY0MjAzNWFhY3AtMSwKKyAgICAweDEuNmJmNTcwN2FhMGY2YnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgLTB4MS5iMjM1MzE1Y2M4ZDAwODFjMDI3YjQyZTYzZTMwNWE2NnAtMSwKKyAgICAtMHgxLjgwMDAwMDAwNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLmIyMzUzMTVjYzhkMDA4MWMwMjdiNDJlNjNlMzA1YTY2cC0xLAorICAgIDB4MS44MDAwMDAwMDRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIC0weDEuOTZiNmU4YTIwMTg3MTAwMGY4NzBiMjQ4NDFjMDVmNzNwLTQsCisgICAgLTB4MS45NjBiZTVkYjdhODkycC00CisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuOTZiNmU4YTIwMTg3MTAwMGY4NzBiMjQ4NDFjMDVmNzNwLTQsCisgICAgMHgxLjk2MGJlNWRiN2E4OTJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIC0weDEuOThhZDdmOTk1NGMyYzAwMGRkYTEwMDY5ZjI0YmZiOWZwLTQsCisgICAgLTB4MS45ODBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS45OGFkN2Y5OTU0YzJjMDAwZGRhMTAwNjlmMjRiZmI5ZnAtNCwKKyAgICAweDEuOTgwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAtMHgxLmFhMzcxZWU3M2JkMWM4MDc5ZmZmZmEzNmJhNWU1ZDhjcC0yLAorICAgIC0weDEuOWUwM2QyZjUzNDczNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLmFhMzcxZWU3M2JkMWM4MDc5ZmZmZmEzNmJhNWU1ZDhjcC0yLAorICAgIDB4MS45ZTAzZDJmNTM0NzM0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAtMHgxLmVkMjdjYjAxYWRlZGQ3YWUzZDZjZmMwOGI1YjFjYTczcC0xLAorICAgIC0weDEuYTQ1Y2E1N2EzM2ZjZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLmVkMjdjYjAxYWRlZGQ3YWUzZDZjZmMwOGI1YjFjYTczcC0xLAorICAgIDB4MS5hNDVjYTU3YTMzZmNkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAtMHgxLmIzNGQxYzI5ZDVjY2JmZmVjZGMyYmRlYmMwOTViZjEzcC02LAorICAgIC0weDEuYjM0cC02CisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuYjM0ZDFjMjlkNWNjYmZmZWNkYzJiZGViYzA5NWJmMTNwLTYsCisgICAgMHgxLmIzNHAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgLTB4MS5iZjc5NzE0YTJjMTU2N2ZmZmZmOTU4NWY0OTA2OWFkYnAtMTUsCisgICAgLTB4MS5iZjc5NzE0NjljYTFmcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgMHgxLmJmNzk3MTRhMmMxNTY3ZmZmZmY5NTg1ZjQ5MDY5YWRicC0xNSwKKyAgICAweDEuYmY3OTcxNDY5Y2ExZnAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEuYmY3OTcxNGEyYzE5YjgwMDAwMTNiMjgzYjc3ZDlmODJwLTE1LAorICAgIC0weDEuYmY3OTcxNDY5Y2E2NHAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5iZjc5NzE0YTJjMTliODAwMDAxM2IyODNiNzdkOWY4MnAtMTUsCisgICAgMHgxLmJmNzk3MTQ2OWNhNjRwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAtMHgxLmNmYWYyNzQ2MTAzMTA3NjE3YzRiNmIyYzE1MjIzZDBkcC0yLAorICAgIC0weDEuYzAwMDAwMDAwMDNmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLmNmYWYyNzQ2MTAzMTA3NjE3YzRiNmIyYzE1MjIzZDBkcC0yLAorICAgIDB4MS5jMDAwMDAwMDAwM2ZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAtMHgxLjAxMjliZTQ5NDlhYWU3ZmVlYzU2NGZiZTU0ODljNzhlcC0xLAorICAgIC0weDEuZWNmOGNhZDc0NWY1NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLjAxMjliZTQ5NDlhYWU3ZmVlYzU2NGZiZTU0ODljNzhlcC0xLAorICAgIDB4MS5lY2Y4Y2FkNzQ1ZjU0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLjUwNDdkNzdiMGY4OTM4MDAwMDExZjVhZjQxZjcyYzg4cDAsCisgICAgLTB4MS5lZjI4ODQxMTk3MjkycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuNTA0N2Q3N2IwZjg5MzgwMDAwMTFmNWFmNDFmNzJjODhwMCwKKyAgICAweDEuZWYyODg0MTE5NzI5MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgLTB4MS5mYjlmMTE3N2E4MTU3ODgwMDcwZjNhZDJhMWY5NDIyZXAtNiwKKyAgICAtMHgxLmZiOGE0NzRmYTY2ZDBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS5mYjlmMTE3N2E4MTU3ODgwMDcwZjNhZDJhMWY5NDIyZXAtNiwKKyAgICAweDEuZmI4YTQ3NGZhNjZkMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgLTB4MS43YjkwMzNlZGFkNTMzNzkzZDE3MmJiNWQ2ODBiOTdiNHAwLAorICAgIC0weDEuZmUwMzU5YTIxOTNmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLjdiOTAzM2VkYWQ1MzM3OTNkMTcyYmI1ZDY4MGI5N2I0cDAsCisgICAgMHgxLmZlMDM1OWEyMTkzZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIC0weDEuN2I5MDMzZjE3ZmU4Yjc3MjgwMjhmMDRkNWI0MmRmYTRwMCwKKyAgICAtMHgxLmZlMDM1OWEyYzU4MTNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS43YjkwMzNmMTdmZThiNzcyODAyOGYwNGQ1YjQyZGZhNHAwLAorICAgIDB4MS5mZTAzNTlhMmM1ODEzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAtMHgxLjdkYTY2NWY1ZmU1OTI3ODA4NTBjMWJlZjYwZmFjNDc5cDAsCisgICAgLTB4MS5mZTVkMGI0ZjJmNTY5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEuN2RhNjY1ZjVmZTU5Mjc4MDg1MGMxYmVmNjBmYWM0NzlwMCwKKyAgICAweDEuZmU1ZDBiNGYyZjU2OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS5mZjM0ODIwMTM5MzI0OGE3OTU2ODZmM2YwZDMwN2M1YXAtNiwKKyAgICAtMHgxLmZmMWY0NjU1NDU5YjZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS5mZjM0ODIwMTM5MzI0OGE3OTU2ODZmM2YwZDMwN2M1YXAtNiwKKyAgICAweDEuZmYxZjQ2NTU0NTliNnAtNgorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwMDJhYWFhYWFhYWFhYWIyYWJkcC0zMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTAwMmFhYWFhYWFhYWFhYjJhYmRwLTMwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS4wYzE1MjM4MmQ3MzZkOTk5ZWU5YTFmNzUyNjA0ZDQwZXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS4wYzE1MjM4MmQ3MzZkOTk5ZWU5YTFmNzUyNjA0ZDQwZXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS4wYzE1MjM4MmQ3NDk1MzQxMzQyYTUyYzU2OTRjZDczNnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDEwN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS4wYzE1MjM4MmQ3NDk1MzQxMzQyYTUyYzU2OTRjZDczNnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAxMDdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS4wYzE1MjM4MmQ3NGM5MmEzOWI2NGFiZDRiM2RkMDhjM3AtMSwKKyAgICAweDEuMDAwMDAwMDAwMDEzNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS4wYzE1MjM4MmQ3NGM5MmEzOWI2NGFiZDRiM2RkMDhjM3AtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAxMzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS4wMDBhYWJkZTBiYmE4NTk3OGQ2YWQ5ZjQ4ODI4ZWM4NnAtNSwKKyAgICAweDEuMDAwMDAwMDAwMDFlMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS4wMDBhYWJkZTBiYmE4NTk3OGQ2YWQ5ZjQ4ODI4ZWM4NnAtNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAxZTBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS4wMDBhYWJkZTBiYmM3NWQ1OTkwZDQ2N2M1NWI5YWUzNHAtNSwKKyAgICAweDEuMDAwMDAwMDAwMDFmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgLTB4MS4wMDBhYWJkZTBiYmM3NWQ1OTkwZDQ2N2M1NWI5YWUzNHAtNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAxZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS4wMDBhYWJkZTBjOGRhZmZlODBkMmU3ZDNlMTQwOTdkN3AtNSwKKyAgICAweDEuMDAwMDAwMDAwMGYxMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS4wMDBhYWJkZTBjOGRhZmZlODBkMmU3ZDNlMTQwOTdkN3AtNSwKKyAgICAtMHgxLjAwMDAwMDAwMDBmMTFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS4wMmJlOWNlMGJhMGIyODAwMDFjMTUxNjcyYjU3MTQ2NnAtMiwKKyAgICAweDEuMDAwMDAwMDAwMTgxYnAtMgorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS4wMmJlOWNlMGJhMGIyODAwMDFjMTUxNjcyYjU3MTQ2NnAtMiwKKyAgICAtMHgxLjAwMDAwMDAwMDE4MWJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS4wYzE1MjM4MmRlMjNmNzAwNzFjZDQ2NGFmZDI2ZDBhZHAtMSwKKyAgICAweDEuMDAwMDAwMDAwNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIC0weDEuMGMxNTIzODJkZTIzZjcwMDcxY2Q0NjRhZmQyNmQwYWRwLTEsCisgICAgLTB4MS4wMDAwMDAwMDA2MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLjBjMTUyMzgyZjJlY2QzMmViNDZlYjI2ZWFhM2EzNDM2cC0xLAorICAgIDB4MS4wMDAwMDAwMDE4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS4wYzE1MjM4MmYyZWNkMzJlYjQ2ZWIyNmVhYTNhMzQzNnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMTgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuMGMxNTIzODM2YjAzOTI3MmU5OWQyYWE2YzczM2ZiZDRwLTEsCisgICAgMHgxLjAwMDAwMDAwOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS4wYzE1MjM4MzZiMDM5MjcyZTk5ZDJhYTZjNzMzZmJkNHAtMSwKKyAgICAtMHgxLjAwMDAwMDAwOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLjBjMTUyNTg4MjU4MjhhZWQ3NDMzYmU3MzRmYTAzNGUwcC0xLAorICAgIDB4MS4wMDAwMDFjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLjBjMTUyNTg4MjU4MjhhZWQ3NDMzYmU3MzRmYTAzNGUwcC0xLAorICAgIC0weDEuMDAwMDAxY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjBjMTUyNThkMmUyN2UxMTRkYzMzZTE5YmUyMTlhOTY3cC0xLAorICAgIDB4MS4wMDAwMDFjNDVjMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgLTB4MS4wYzE1MjU4ZDJlMjdlMTE0ZGMzM2UxOWJlMjE5YTk2N3AtMSwKKyAgICAtMHgxLjAwMDAwMWM0NWMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuMDJjMjNhNDNhODEyMjdmZmY1NWUzMDI5M2I4NjY5Y2ZwLTIsCisgICAgMHgxLjAwMDM4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAtMHgxLjAyYzIzYTQzYTgxMjI3ZmZmNTVlMzAyOTNiODY2OWNmcC0yLAorICAgIC0weDEuMDAwMzhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS4wMDMyYzFlYzc2MTE2ODAwMjU3ZGM2ZGU1M2MwNjE2ZXAtNCwKKyAgICAweDEuMDAwN2ZmZmZmZmZkMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgLTB4MS4wMDMyYzFlYzc2MTE2ODAwMjU3ZGM2ZGU1M2MwNjE2ZXAtNCwKKyAgICAtMHgxLjAwMDdmZmZmZmZmZDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS4wYzI3OWQ1YjYzM2NkYzY5ZjI3NzVlODU2MjJkYzRhMnAtMSwKKyAgICAweDEuMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAtMHgxLjBjMjc5ZDViNjMzY2RjNjlmMjc3NWU4NTYyMmRjNGEycC0xLAorICAgIC0weDEuMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLjBjNGM5MjM0NDcwODdkYWU1Y2FlN2M4MjVlZDJhMGNjcC0xLAorICAgIDB4MS4wMDNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAtMHgxLjBjNGM5MjM0NDcwODdkYWU1Y2FlN2M4MjVlZDJhMGNjcC0xLAorICAgIC0weDEuMDAzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLjBjNTVjZmE4MjhjMGIzOGJlY2QxNDA5YjY1OGQ2OTUwcC0xLAorICAgIDB4MS4wMDM4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuMGM1NWNmYTgyOGMwYjM4YmVjZDE0MDliNjU4ZDY5NTBwLTEsCisgICAgLTB4MS4wMDM4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS4wMDYyZGEwNDhlYTBkN2VmZDUzNmQ1YzY0M2U5ZjIxNXAtNCwKKyAgICAweDEuMDAzODBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAtMHgxLjAwNjJkYTA0OGVhMGQ3ZWZkNTM2ZDVjNjQzZTlmMjE1cC00LAorICAgIC0weDEuMDAzODBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuMDA0MDJhYWFjNWU2OTgwMDRjOTRlMzkyNjIyMDI3MTRwLTgsCisgICAgMHgxLjAwM2ZmZmVwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAtMHgxLjAwNDAyYWFhYzVlNjk4MDA0Yzk0ZTM5MjYyMjAyNzE0cC04LAorICAgIC0weDEuMDAzZmZmZXAtOAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS4wYzk3MjA1OTBhYzM3ZmQ1OTMyMjE4MjVlYzNhMDg0YnAtMSwKKyAgICAweDEuMDA3MDhhNTRiMmM2N3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIC0weDEuMGM5NzIwNTkwYWMzN2ZkNTkzMjIxODI1ZWMzYTA4NGJwLTEsCisgICAgLTB4MS4wMDcwOGE1NGIyYzY3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLjAwYzAwMDAwMDAwMDAwMDAwMDAwMDAwYWMyYmNhZjJhcC00NSwKKyAgICAweDEuMDBjcC00NQorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIC0weDEuMDBjMDAwMDAwMDAwMDAwMDAwMDAwMDBhYzJiY2FmMmFwLTQ1LAorICAgIC0weDEuMDBjcC00NQorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS4wZDk2ZTU3MjkwYzNmMWMzNjgxYmFiOGMxZjAwYjM5Y3AtMSwKKyAgICAweDEuMDE0ZGNhYTIzNzk3MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIC0weDEuMGQ5NmU1NzI5MGMzZjFjMzY4MWJhYjhjMWYwMGIzOWNwLTEsCisgICAgLTB4MS4wMTRkY2FhMjM3OTcwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLjBkYWJmNTVkY2U5MzdmNzU1OGE4YjUzMWQ0NTlmMTVlcC0xLAorICAgIDB4MS4wMTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAtMHgxLjBkYWJmNTVkY2U5MzdmNzU1OGE4YjUzMWQ0NTlmMTVlcC0xLAorICAgIC0weDEuMDE2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjBkYzJlZjY3MWQ2YzMzZWFhNTQ2ZGRhZTA1ZDVlNDUzcC0xLAorICAgIDB4MS4wMTczZGM5NGI2MzA2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgLTB4MS4wZGMyZWY2NzFkNmMzM2VhYTU0NmRkYWUwNWQ1ZTQ1M3AtMSwKKyAgICAtMHgxLjAxNzNkYzk0YjYzMDZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuMGYxZTZlYzU0ZWVhMmM3MzQwMWY2MmJhZGQyOTc2YWNwLTEsCisgICAgMHgxLjAyYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIC0weDEuMGYxZTZlYzU0ZWVhMmM3MzQwMWY2MmJhZGQyOTc2YWNwLTEsCisgICAgLTB4MS4wMmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuMGY0ZGE5MjI5Y2ZmZWMwYzM3NDM5OTc0OTFmMTFkNTZwLTEsCisgICAgMHgxLjAyYzhjMTZkYzE5MzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAtMHgxLjBmNGRhOTIyOWNmZmVjMGMzNzQzOTk3NDkxZjExZDU2cC0xLAorICAgIC0weDEuMDJjOGMxNmRjMTkzNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS4wZjY4OTlkYzczZTM0YTU0YWQzY2NlODA2Y2UyOTAxMXAtMSwKKyAgICAweDEuMDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgLTB4MS4wZjY4OTlkYzczZTM0YTU0YWQzY2NlODA2Y2UyOTAxMXAtMSwKKyAgICAtMHgxLjAyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS4wZjgzOGUzMDQ3OWFiYTY3ZWM2NTJiNjMyMDI4ZmVmYXAtMSwKKyAgICAweDEuMDJmNzQwZjYxZTM3YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIC0weDEuMGY4MzhlMzA0NzlhYmE2N2VjNjUyYjYzMjAyOGZlZmFwLTEsCisgICAgLTB4MS4wMmY3NDBmNjFlMzdhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLjBmZTMwMWMyZjViZTJhNjNlZjViMjYyNmZlMTljNzhhcC0xLAorICAgIDB4MS4wMzQ5OTNlZTNiOGRhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgLTB4MS4wZmUzMDFjMmY1YmUyYTYzZWY1YjI2MjZmZTE5Yzc4YXAtMSwKKyAgICAtMHgxLjAzNDk5M2VlM2I4ZGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuMTAyMjIxMmJhMjMwNjljNGE5Mzc0OTRkMzJmZWE1NThwLTEsCisgICAgMHgxLjAzOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIC0weDEuMTAyMjIxMmJhMjMwNjljNGE5Mzc0OTRkMzJmZWE1NThwLTEsCisgICAgLTB4MS4wMzhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuMTAyODI5OTZmOTg4M2E1ODg4NmJhMTc5OWVkNWRkOGVwLTEsCisgICAgMHgxLjAzODUzMzU2NGQyZjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLjEwMjgyOTk2Zjk4ODNhNTg4ODZiYTE3OTllZDVkZDhlcC0xLAorICAgIC0weDEuMDM4NTMzNTY0ZDJmNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS4xMDY2ZTg3ZWFjMGZhMjA3NjNjMzQ2NWZhZTQ5ZjZmM3AtMSwKKyAgICAweDEuMDNiYjQ3ZWJhMjdhY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEuMTA2NmU4N2VhYzBmYTIwNzYzYzM0NjVmYWU0OWY2ZjNwLTEsCisgICAgLTB4MS4wM2JiNDdlYmEyN2FjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLjEwY2JiNGM4NjU2NjIwZDVlMjVkZTk1NGNjMTk2YTE1cC0xLAorICAgIDB4MS4wNDEyMjA2OWFmYWIycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS4xMGNiYjRjODY1NjYyMGQ1ZTI1ZGU5NTRjYzE5NmExNXAtMSwKKyAgICAtMHgxLjA0MTIyMDY5YWZhYjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuMTE2NzE3Zjk2NTU2ZWU0NDIwYjkwOWI3ZmE2YjYzZGZwLTEsCisgICAgMHgxLjA0OTdlZGFiNmVkZTFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLjExNjcxN2Y5NjU1NmVlNDQyMGI5MDliN2ZhNmI2M2RmcC0xLAorICAgIC0weDEuMDQ5N2VkYWI2ZWRlMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS4xMTc5ZGJiMjdlNTgyZDczODc4YzAxNGI4ZTNlMWNjMHAtMSwKKyAgICAweDEuMDRhODE0NzU4ZTBmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuMTE3OWRiYjI3ZTU4MmQ3Mzg3OGMwMTRiOGUzZTFjYzBwLTEsCisgICAgLTB4MS4wNGE4MTQ3NThlMGY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLjExOThjMGQ3OTI4OWIyZjlmMjc3YzJmM2E3YTA1ZDI1cC0xLAorICAgIDB4MS4wNGMyYWI3N2NmNDc0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS4xMTk4YzBkNzkyODliMmY5ZjI3N2MyZjNhN2EwNWQyNXAtMSwKKyAgICAtMHgxLjA0YzJhYjc3Y2Y0NzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuMTk2ODc1NTU3ZjIxMzdkMzlkNzRkMTc0ZjUyOWRiNGJwLTEsCisgICAgMHgxLjBiNzNjMmRjZGMyYjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLjE5Njg3NTU1N2YyMTM3ZDM5ZDc0ZDE3NGY1MjlkYjRicC0xLAorICAgIC0weDEuMGI3M2MyZGNkYzJiOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS4xYjU1M2U0NDM2ZmVlMDU1ZDRkMmM2N2M2MDFhMDIxMnAtMSwKKyAgICAweDEuMGQxNzdiZWEzZjYxMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuMWI1NTNlNDQzNmZlZTA1NWQ0ZDJjNjdjNjAxYTAyMTJwLTEsCisgICAgLTB4MS4wZDE3N2JlYTNmNjEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLjFjMzg0NDlhNjFjOTU4MGQ2ODU5MzgwZTM0M2Q4MzNjcC0xLAorICAgIDB4MS4wZGQ4ODVhM2VmNGZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS4xYzM4NDQ5YTYxYzk1ODBkNjg1OTM4MGUzNDNkODMzY3AtMSwKKyAgICAtMHgxLjBkZDg4NWEzZWY0ZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuMWNjNGIzYzA3OTgzNjI2NTg3MmI3ZDQ5MjA0NGQ2MTZwLTEsCisgICAgMHgxLjBlNGZkNDJiMWQwZTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLjFjYzRiM2MwNzk4MzYyNjU4NzJiN2Q0OTIwNDRkNjE2cC0xLAorICAgIC0weDEuMGU0ZmQ0MmIxZDBlNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS4xY2ZkNmUyNjZkZTk1ZjFiZjQ4NzY0ZjQ2NTc3ZTMwOXAtMSwKKyAgICAweDEuMGU4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS4xY2ZkNmUyNjZkZTk1ZjFiZjQ4NzY0ZjQ2NTc3ZTMwOXAtMSwKKyAgICAtMHgxLjBlOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS4yMWNkY2Y1MjAwMGMyMjBhOTY2YmVmZWI2MmU2NDBmNnAtMSwKKyAgICAweDEuMTI5MzQ1MDUxYjI5ZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuMjFjZGNmNTIwMDBjMjIwYTk2NmJlZmViNjJlNjQwZjZwLTEsCisgICAgLTB4MS4xMjkzNDUwNTFiMjlkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLjEzMGQzYWEwMmRhYzI4MDE3NTAzMmQ3ZGNkOTAxMDI5cC01LAorICAgIDB4MS4xMzBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLjEzMGQzYWEwMmRhYzI4MDE3NTAzMmQ3ZGNkOTAxMDI5cC01LAorICAgIC0weDEuMTMwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLjE0MDAwMDAwMGQ1ZGY4MDAwMWJmNzkxM2NiODA5OTVjcC0xNywKKyAgICAweDEuMTQwcC0xNworICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEuMTQwMDAwMDAwZDVkZjgwMDAxYmY3OTEzY2I4MDk5NWNwLTE3LAorICAgIC0weDEuMTQwcC0xNworICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS4yNzc1YzRiNjE3ZDY1NDU4ODk1OGExNzhkZWE4NjFiYXAtMSwKKyAgICAweDEuMTc1NTE3NGQ2MjgyM3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuMjc3NWM0YjYxN2Q2NTQ1ODg5NThhMTc4ZGVhODYxYmFwLTEsCisgICAgLTB4MS4xNzU1MTc0ZDYyODIzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLjE5OWFmOGU1Y2E0MjU3ZmNkNzYzNTQzYjhmM2ZjZTgxcC01LAorICAgIDB4MS4xOThjYzY2MzMxOTgwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS4xOTlhZjhlNWNhNDI1N2ZjZDc2MzU0M2I4ZjNmY2U4MXAtNSwKKyAgICAtMHgxLjE5OGNjNjYzMzE5ODBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuMmM1YWI4MjY0YmRiYjNlMWJjNjUyMTQzMTc3NTlhMDlwLTEsCisgICAgMHgxLjFiNmJkYzkxZThlZDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAtMHgxLjJjNWFiODI2NGJkYmIzZTFiYzY1MjE0MzE3NzU5YTA5cC0xLAorICAgIC0weDEuMWI2YmRjOTFlOGVkOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS4yY2VlMDBhODcwYmE1MjhmYmU2YjlmM2NkYTE0MDhiM3AtMSwKKyAgICAweDEuMWJlNjc5OTFkZTJkNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuMmNlZTAwYTg3MGJhNTI4ZmJlNmI5ZjNjZGExNDA4YjNwLTEsCisgICAgLTB4MS4xYmU2Nzk5MWRlMmQ0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMHgxLjFmYzVlMTkzMTU4OTJmZmQ2OWRlZmI3MzFlNWI3MjNhcC0yLAorICAgIDB4MS4xYzBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLjFmYzVlMTkzMTU4OTJmZmQ2OWRlZmI3MzFlNWI3MjNhcC0yLAorICAgIC0weDEuMWMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLjJmZWJjNjU1MTg1Yzk5YzQ0NGZmMDRjNTViZmI2ZDY2cC0xLAorICAgIDB4MS4xZTYyN2Y2OWFmNTg4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS4yZmViYzY1NTE4NWM5OWM0NDRmZjA0YzU1YmZiNmQ2NnAtMSwKKyAgICAtMHgxLjFlNjI3ZjY5YWY1ODhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAweDEuMzBkOGE5ODFiOTk0OGEzOTRlMTQ2NzQ3MGNmYWQyMzVwLTEsCisgICAgMHgxLjFmMjZiZGY4YTAzNDNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLjMwZDhhOTgxYjk5NDhhMzk0ZTE0Njc0NzBjZmFkMjM1cC0xLAorICAgIC0weDEuMWYyNmJkZjhhMDM0M3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS4zMGY4ZDZiY2NkZjIxN2ZmZjhjMGRkYTMxMzkxOTc0ZnAtMSwKKyAgICAweDEuMWY0MTYxMzE3Mjc0NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEuMzBmOGQ2YmNjZGYyMTdmZmY4YzBkZGEzMTM5MTk3NGZwLTEsCisgICAgLTB4MS4xZjQxNjEzMTcyNzQ2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMHgxLjMxMTAyNDkwNDdlYWYzMGZjM2JhNjk4OGE0M2I4Y2NicC0xLAorICAgIDB4MS4xZjU0YWI1MGUzNDdlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS4zMTEwMjQ5MDQ3ZWFmMzBmYzNiYTY5ODhhNDNiOGNjYnAtMSwKKyAgICAtMHgxLjFmNTRhYjUwZTM0N2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuMzE0NjJmMjBkMzE0NWEyNTg5OGNkNTU2MTEyNmRiZWZwLTEsCisgICAgMHgxLjFmODE2NDYwYjZlMGRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLjMxNDYyZjIwZDMxNDVhMjU4OThjZDU1NjExMjZkYmVmcC0xLAorICAgIC0weDEuMWY4MTY0NjBiNmUwZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS4zMWVmMTk3YmRlMzU1MzFhOTE1ZTI2NGZlZjIzMDVlOHAtMSwKKyAgICAweDEuMjAwZDE5YzNmMGIwYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuMzFlZjE5N2JkZTM1NTMxYTkxNWUyNjRmZWYyMzA1ZThwLTEsCisgICAgLTB4MS4yMDBkMTljM2YwYjBicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLjMyMWQxMmU1NGY4M2IzMTYyN2Y4MGMzZmE2MmI3Y2ExcC0xLAorICAgIDB4MS4yMDMzMWFiOGE3NDU4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTB4MS4zMjFkMTJlNTRmODNiMzE2MjdmODBjM2ZhNjJiN2NhMXAtMSwKKyAgICAtMHgxLjIwMzMxYWI4YTc0NThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuMjE3NzUyMWEzMzhiMDdmZmYwZDljOTk1N2M1YTZjZWJwLTE2LAorICAgIDB4MS4yMTc3NTIxOWY1ZGM1cC0xNgorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIC0weDEuMjE3NzUyMWEzMzhiMDdmZmYwZDljOTk1N2M1YTZjZWJwLTE2LAorICAgIC0weDEuMjE3NzUyMTlmNWRjNXAtMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuM2U2NzkyNWQwZTZmOGJjYmIyMWE3OWQyN2VjY2E3ZDJwLTEsCisgICAgMHgxLjJhNDY0NzE4MDVlZmRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLjNlNjc5MjVkMGU2ZjhiY2JiMjFhNzlkMjdlY2NhN2QycC0xLAorICAgIC0weDEuMmE0NjQ3MTgwNWVmZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS4yYmIxODYyYTU2ODE0ODAxNWMwYmY0YTJhNzE1NGRjMXAtMywKKyAgICAweDEuMmFhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgLTB4MS4yYmIxODYyYTU2ODE0ODAxNWMwYmY0YTJhNzE1NGRjMXAtMywKKyAgICAtMHgxLjJhYXAtMworICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS4zZjZmZDBmMjc4MjNkN2ZlZmM3NGE3MWVjY2Q5NjI5OHAtMSwKKyAgICAweDEuMmIxY2U1NDg4MzNhZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuM2Y2ZmQwZjI3ODIzZDdmZWZjNzRhNzFlY2NkOTYyOThwLTEsCisgICAgLTB4MS4yYjFjZTU0ODgzM2FlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjQxMWJiNDkzNjRjNWVhNDE4NGJiMzgwNWE4OTNlMDU0cC0xLAorICAgIDB4MS4yYzc3YzNiN2ZhZGJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS40MTFiYjQ5MzY0YzVlYTQxODRiYjM4MDVhODkzZTA1NHAtMSwKKyAgICAtMHgxLjJjNzdjM2I3ZmFkYmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuNDQyZmY2YzBmNWQ0ZDdmZTc3NzVlNzBjM2U0ZTgyMTlwLTEsCisgICAgMHgxLjJlZjQ5ZTU1MTFkZGZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLjQ0MmZmNmMwZjVkNGQ3ZmU3Nzc1ZTcwYzNlNGU4MjE5cC0xLAorICAgIC0weDEuMmVmNDllNTUxMWRkZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS40NDNmZWNmZWJjMWRmN2RlNjgwNTI2MjRhOGIxZDYxZHAtMSwKKyAgICAweDEuMmYwMTdjNGZlMzU0NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuNDQzZmVjZmViYzFkZjdkZTY4MDUyNjI0YThiMWQ2MWRwLTEsCisgICAgLTB4MS4yZjAxN2M0ZmUzNTQ0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLjQ1N2JmMzE4ZmU1MTZhNzlkYTZmNGE2MWFmN2E3ZmE1cC0xLAorICAgIDB4MS4zcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTB4MS40NTdiZjMxOGZlNTE2YTc5ZGE2ZjRhNjFhZjdhN2ZhNXAtMSwKKyAgICAtMHgxLjNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAweDEuNWNjZDVjMDVlNjhmYjgwMDAwMDg0OWRkZDBmZTJjYTVwLTEsCisgICAgMHgxLjQyNzBlZDRhYWQ3MGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLjVjY2Q1YzA1ZTY4ZmI4MDAwMDA4NDlkZGQwZmUyY2E1cC0xLAorICAgIC0weDEuNDI3MGVkNGFhZDcwZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS40NDAwMDAwMDE1OWZkODAwMDNlNTkzYjc4NWJhOTYyNnAtMTcsCisgICAgMHgxLjQ0MHAtMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLjQ0MDAwMDAwMTU5ZmQ4MDAwM2U1OTNiNzg1YmE5NjI2cC0xNywKKyAgICAtMHgxLjQ0MHAtMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuNjNiMWNiYjY2YjhhMTdhZTFmZDc2MDM1ZDk0OWUyYjdwLTEsCisgICAgMHgxLjQ3YzNmZGM5YmY0MzNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLjYzYjFjYmI2NmI4YTE3YWUxZmQ3NjAzNWQ5NDllMmI3cC0xLAorICAgIC0weDEuNDdjM2ZkYzliZjQzM3AtMQorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS42NWZjOGY2NmJhNjkyZTAxYTVhZmRhN2FjZThkZWFlMnAtMSwKKyAgICAweDEuNDk4NWVjMjJlN2JmNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0weDEuNjVmYzhmNjZiYTY5MmUwMWE1YWZkYTdhY2U4ZGVhZTJwLTEsCisgICAgLTB4MS40OTg1ZWMyMmU3YmY2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLjRkNzhiYWMwODY1NjY4MTg0NzQ2MjQ2NzU1NWU1NDlicC0zLAorICAgIDB4MS40YzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLjRkNzhiYWMwODY1NjY4MTg0NzQ2MjQ2NzU1NWU1NDlicC0zLAorICAgIC0weDEuNGMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjZkNTliZmUzZjIyMjRmNjAwMGFjYzAwYjc2OWVkNDQwcC0xLAorICAgIDB4MS40ZjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAtMHgxLjZkNTliZmUzZjIyMjRmNjAwMGFjYzAwYjc2OWVkNDQwcC0xLAorICAgIC0weDEuNGYycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLjUwMDAwMDAwMDAyMDc4MDAwMDAwMTNhODM5MzMzMzQzcC0yMCwKKyAgICAweDEuNGZmZmZmZmZmZmNwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS41MDAwMDAwMDAwMjA3ODAwMDAwMDEzYTgzOTMzMzM0M3AtMjAsCisgICAgLTB4MS40ZmZmZmZmZmZmY3AtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuNTAwMDAwMDAwMDYwNzgwMDAwMDA0YWM4MzkzMzMzN2ZwLTIwLAorICAgIDB4MS41cC0yMAorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEuNTAwMDAwMDAwMDYwNzgwMDAwMDA0YWM4MzkzMzMzN2ZwLTIwLAorICAgIC0weDEuNXAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuNTUyNzdiOWYzOGQwMjdmZmZmMzAxMTJiZWQwYzlmMGZwLTQsCisgICAgMHgxLjU0YzI4YThlNGYzZTJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLjU1Mjc3YjlmMzhkMDI3ZmZmZjMwMTEyYmVkMGM5ZjBmcC00LAorICAgIC0weDEuNTRjMjhhOGU0ZjNlMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS41ZWQyYTM5MmJiNTBmN2ZhZDY5ZGI0ZDk1OWIzNTEwYXAtMiwKKyAgICAweDEuNTgwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS41ZWQyYTM5MmJiNTBmN2ZhZDY5ZGI0ZDk1OWIzNTEwYXAtMiwKKyAgICAtMHgxLjU4MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS43ZjFmNDkxN2M3MmI2MDAzYjU1YzgyMDBlOGRjZWNjMHAtMSwKKyAgICAweDEuNWM1YjM0MDdmNTVlMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEuN2YxZjQ5MTdjNzJiNjAwM2I1NWM4MjAwZThkY2VjYzBwLTEsCisgICAgLTB4MS41YzViMzQwN2Y1NWUxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLjhiNjIwMWMwZjE3OTA4MDAwMGQ4MWI3OTY0YWU0NjU0cC0xLAorICAgIDB4MS42NTNkYTViYWY3NDQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTB4MS44YjYyMDFjMGYxNzkwODAwMDBkODFiNzk2NGFlNDY1NHAtMSwKKyAgICAtMHgxLjY1M2RhNWJhZjc0NDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEuNzI1MDk1MmNhMjljMDgxM2Y0ZTUwYTBhZDE4ZjM2NDhwLTIsCisgICAgMHgxLjZhNGJiNjNjODIxMjlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLjcyNTA5NTJjYTI5YzA4MTNmNGU1MGEwYWQxOGYzNjQ4cC0yLAorICAgIC0weDEuNmE0YmI2M2M4MjEyOXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS43N2IyN2UzYTQ0MTg0ODBkOGMwMDYyYmUxMTY5M2UxNnAtMiwKKyAgICAweDEuNmY1MzM2MDNlMjMyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0weDEuNzdiMjdlM2E0NDE4NDgwZDhjMDA2MmJlMTE2OTNlMTZwLTIsCisgICAgLTB4MS42ZjUzMzYwM2UyMzIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLjllMTQ5YmFkOTY0OTI4MDAwMGViOWRhZDc0NDBjNTc0cC0xLAorICAgIDB4MS43MjY0ZDBiZWM0OWIycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgLTB4MS45ZTE0OWJhZDk2NDkyODAwMDBlYjlkYWQ3NDQwYzU3NHAtMSwKKyAgICAtMHgxLjcyNjRkMGJlYzQ5YjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuN2NjMGVlN2VkOGFkNDgxMzdlMTg1ZmI5MTU2YmFlNGNwLTIsCisgICAgMHgxLjc0MGE1OTY0N2Q3YTVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAtMHgxLjdjYzBlZTdlZDhhZDQ4MTM3ZTE4NWZiOTE1NmJhZTRjcC0yLAorICAgIC0weDEuNzQwYTU5NjQ3ZDdhNXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS5hMjA3NTY2NDg4ZmM5N2ZjYWRjMzA5MzNlMzM5MmQzZHAtMSwKKyAgICAweDEuNzUxYmNjYTg1MTMwOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIC0weDEuYTIwNzU2NjQ4OGZjOTdmY2FkYzMwOTMzZTMzOTJkM2RwLTEsCisgICAgLTB4MS43NTFiY2NhODUxMzA5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLjdlNjkzYzExM2Q0YTQ4MTRjMTUwZDhhYzViMGM4ZDUzcC0yLAorICAgIDB4MS43NTk1ODgzYjY3ZjE2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgLTB4MS43ZTY5M2MxMTNkNGE0ODE0YzE1MGQ4YWM1YjBjOGQ1M3AtMiwKKyAgICAtMHgxLjc1OTU4ODNiNjdmMTZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEuN2VlNmJlNTA1OGQwMjAxYTI0ZDEzN2Y1MmZmNjkwOWVwLTIsCisgICAgMHgxLjc2MGE2MTE2YzcxOThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAtMHgxLjdlZTZiZTUwNThkMDIwMWEyNGQxMzdmNTJmZjY5MDllcC0yLAorICAgIC0weDEuNzYwYTYxMTZjNzE5OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS5hNmExYmVmMzYxYTdkN2Y5YzI4MTZlMDJkYmFjMWJmNXAtMSwKKyAgICAweDEuNzgzZWU4MTgzMTY2NXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIC0weDEuYTZhMWJlZjM2MWE3ZDdmOWMyODE2ZTAyZGJhYzFiZjVwLTEsCisgICAgLTB4MS43ODNlZTgxODMxNjY1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLjg2NjE4NjEyYzM1OWU4MTQ4MWQ5YTczNDFkNmEyYTUxcC0yLAorICAgIDB4MS43Y2ZlNDczNDMwZmM2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgLTB4MS44NjYxODYxMmMzNTllODE0ODFkOWE3MzQxZDZhMmE1MXAtMiwKKyAgICAtMHgxLjdjZmU0NzM0MzBmYzZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAweDEuODhkOGEzYjE0ZDllMWZmMTRiYmRlM2QzM2QxNTc1MzBwLTIsCisgICAgMHgxLjdmNDdjZDEwZGUwZThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAtMHgxLjg4ZDhhM2IxNGQ5ZTFmZjE0YmJkZTNkMzNkMTU3NTMwcC0yLAorICAgIC0weDEuN2Y0N2NkMTBkZTBlOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDB4MS44OTg4ODY4ZmM1NjRjODE5ODJiMmRiOGNlOGJjMDYyNXAtMiwKKyAgICAweDEuN2ZlYWUxMzdkNWRkZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIC0weDEuODk4ODg2OGZjNTY0YzgxOTgyYjJkYjhjZThiYzA2MjVwLTIsCisgICAgLTB4MS43ZmVhZTEzN2Q1ZGRlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLjg5OWZkOGYwMTc1MTU4MTJkZTE0ZjQ0YmU5OGQwNTVjcC0yLAorICAgIDB4MS44MDAwN2ZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgLTB4MS44OTlmZDhmMDE3NTE1ODEyZGUxNGY0NGJlOThkMDU1Y3AtMiwKKyAgICAtMHgxLjgwMDA3ZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuYjI3YWUwZjVlZTZlNjdmZmZiNDRmYjNhMGNiM2MyMTVwLTEsCisgICAgMHgxLjgwMmUxNDNhOTFjNGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAtMHgxLmIyN2FlMGY1ZWU2ZTY3ZmZmYjQ0ZmIzYTBjYjNjMjE1cC0xLAorICAgIC0weDEuODAyZTE0M2E5MWM0ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDB4MS44Yjc4MDliYjg2YWUxN2VjNmMyNGRhOTg0MTM4ZjQxOXAtMiwKKyAgICAweDEuODFiNjEyODQwZGJhZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIC0weDEuOGI3ODA5YmI4NmFlMTdlYzZjMjRkYTk4NDEzOGY0MTlwLTIsCisgICAgLTB4MS44MWI2MTI4NDBkYmFlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMHgxLjhmOTFjMGZiOGUyZTk3ZWY4NDdlYWIxMTU5ZjAwY2M2cC0yLAorICAgIDB4MS44NTgxYWRlMjgzNTVmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgLTB4MS44ZjkxYzBmYjhlMmU5N2VmODQ3ZWFiMTE1OWYwMGNjNnAtMiwKKyAgICAtMHgxLjg1ODFhZGUyODM1NWZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuOGMxNmYzZmM0YTU4NDAwMTMxODdjNjJkOTQ4YWEwMDNwLTMsCisgICAgMHgxLjg5YXAtMworICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIC0weDEuOGMxNmYzZmM0YTU4NDAwMTMxODdjNjJkOTQ4YWEwMDNwLTMsCisgICAgLTB4MS44OWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEuYzFlMTIwYjk4MGIzY2YzZmJmMTcyNjgyMDBmYzhmZmJwLTEsCisgICAgMHgxLjhhMmYyZjU0ZDg0OWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAtMHgxLmMxZTEyMGI5ODBiM2NmM2ZiZjE3MjY4MjAwZmM4ZmZicC0xLAorICAgIC0weDEuOGEyZjJmNTRkODQ5ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS45NWI1YTkzNjU2MjExODA2MzM1ZTUzMDBlMjUxNTMzY3AtMiwKKyAgICAweDEuOGIyZGEwNzczMzhjMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIC0weDEuOTViNWE5MzY1NjIxMTgwNjMzNWU1MzAwZTI1MTUzM2NwLTIsCisgICAgLTB4MS44YjJkYTA3NzMzOGMycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgMHgxLjkwY2M3NzY2YjMzYmQwMDBmZmYxNDM0NDJiNGUyMDQzcC00LAorICAgIDB4MS45MDI4Y2ViNGFmZDJjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgLTB4MS45MGNjNzc2NmIzM2JkMDAwZmZmMTQzNDQyYjRlMjA0M3AtNCwKKyAgICAtMHgxLjkwMjhjZWI0YWZkMmNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuY2JlMjczOWNlNTY5MjdmYmI3ZDA3NzdmYzUwNTc5NjVwLTEsCisgICAgMHgxLjkwN2U2MzJiMTAwMGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAtMHgxLmNiZTI3MzljZTU2OTI3ZmJiN2QwNzc3ZmM1MDU3OTY1cC0xLAorICAgIC0weDEuOTA3ZTYzMmIxMDAwZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS45ZWZmN2QyMjRhMTBjZmZkMGNjYzJlZWEzOWM0ZWNhY3AtMiwKKyAgICAweDEuOTNiYjBmYzA3MDBiN3AtMgorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIC0weDEuOWVmZjdkMjI0YTEwY2ZmZDBjY2MyZWVhMzljNGVjYWNwLTIsCisgICAgLTB4MS45M2JiMGZjMDcwMGI3cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLmEwNTUyYWE0OWI3MTE3ZmE1M2IxMDU2MzAwMjRmZTQ5cC0yLAorICAgIDB4MS45NGY0Zjk1NDc3ZDllcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgLTB4MS5hMDU1MmFhNDliNzExN2ZhNTNiMTA1NjMwMDI0ZmU0OXAtMiwKKyAgICAtMHgxLjk0ZjRmOTU0NzdkOWVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuOTk0ZmZiNWRhZjBmOTdmZmZmZmZmZmZmZmZhODFhZGFwLTMsCisgICAgMHgxLjk2OTdjYjYwMmM1ODJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAtMHgxLjk5NGZmYjVkYWYwZjk3ZmZmZmZmZmZmZmZmYTgxYWRhcC0zLAorICAgIC0weDEuOTY5N2NiNjAyYzU4MnAtMworICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS45OGFkN2Y5OTU0YzJjMDAwZGRhMTAwNjlmMjRiZmI5ZnAtNCwKKyAgICAweDEuOTgwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgLTB4MS45OGFkN2Y5OTU0YzJjMDAwZGRhMTAwNjlmMjRiZmI5ZnAtNCwKKyAgICAtMHgxLjk4MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS45YzYxOGFhZmFiZWQ1MDAwMDA4MGJiOWQ5YzZkNjAyZXAtMywKKyAgICAweDEuOTk5OTk5YTQ1ZTg5OHAtMworICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIC0weDEuOWM2MThhYWZhYmVkNTAwMDAwODBiYjlkOWM2ZDYwMmVwLTMsCisgICAgLTB4MS45OTk5OTlhNDVlODk4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLjljNjE4YWFmYWMwNjEwMDM3MzJiMzQ3ZGJiNmJmNjEwcC0zLAorICAgIDB4MS45OTk5OTlhNDVlYTFjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgLTB4MS45YzYxOGFhZmFjMDYxMDAzNzMyYjM0N2RiYjZiZjYxMHAtMywKKyAgICAtMHgxLjk5OTk5OWE0NWVhMWNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuOWM2MThhYjU0YTdiMmZmZTQ2MjgxOTFmODIzOTE2NDdwLTMsCisgICAgMHgxLjk5OTk5OWE5ZTAwNmRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAtMHgxLjljNjE4YWI1NGE3YjJmZmU0NjI4MTkxZjgyMzkxNjQ3cC0zLAorICAgIC0weDEuOTk5OTk5YTllMDA2ZHAtMworICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS45YzYxOGFiNTViMDkyZmZkODA0YTNmNGJjMzJmNDNjNnAtMywKKyAgICAweDEuOTk5OTk5YTlmMDNmM3AtMworICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIC0weDEuOWM2MThhYjU1YjA5MmZmZDgwNGEzZjRiYzMyZjQzYzZwLTMsCisgICAgLTB4MS45OTk5OTlhOWYwM2YzcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLmRkZWRmNDAwNzEzMDk3Y2UzMWRmMDg4OGJjZGU4ZDY5cC0xLAorICAgIDB4MS45YjdjMWQ5NDQ1NDEzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgLTB4MS5kZGVkZjQwMDcxMzA5N2NlMzFkZjA4ODhiY2RlOGQ2OXAtMSwKKyAgICAtMHgxLjliN2MxZDk0NDU0MTNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuZWNhMzQ1NjJkNGEwZDc5NTE2MTg2ZDFjMjAwZWFlNDZwLTEsCisgICAgMHgxLmE0MTBlZjNmZmU5YjFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAtMHgxLmVjYTM0NTYyZDRhMGQ3OTUxNjE4NmQxYzIwMGVhZTQ2cC0xLAorICAgIC0weDEuYTQxMGVmM2ZmZTliMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS5mOTA0Njk0MzhmNjE2ODAxZWRiMjNlZjBmY2Y3YTMyMnAtMSwKKyAgICAweDEuYWIwNTM4MjVmYTNjN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIC0weDEuZjkwNDY5NDM4ZjYxNjgwMWVkYjIzZWYwZmNmN2EzMjJwLTEsCisgICAgLTB4MS5hYjA1MzgyNWZhM2M3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLmIwMDAwMDAwMDBjZDA4MDAwMDAxMDZiYzgwNjY2ODIzcC0yMCwKKyAgICAweDEuYnAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAtMHgxLmIwMDAwMDAwMDBjZDA4MDAwMDAxMDZiYzgwNjY2ODIzcC0yMCwKKyAgICAtMHgxLmJwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgMHgxLmIzYjBkYTY3NTQzYjM4MDc4MzRhOGZlYjFjMWViYTk0cC0zLAorICAgIDB4MS5iMDY5NmRlYzJjMGExcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgLTB4MS5iM2IwZGE2NzU0M2IzODA3ODM0YThmZWIxYzFlYmE5NHAtMywKKyAgICAtMHgxLmIwNjk2ZGVjMmMwYTFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuMDQxNzljYmUxZTVjMWZmZmZmODE4Nzk0ZTQ4MmQ1NDdwMCwKKyAgICAweDEuYjMzMzMzMzc2MTI0NXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuMDQxNzljYmUxZTVjMWZmZmZmODE4Nzk0ZTQ4MmQ1NDdwMCwKKyAgICAtMHgxLmIzMzMzMzM3NjEyNDVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuYjM0ZDFjMjlkNWNjYmZmZWNkYzJiZGViYzA5NWJmMTNwLTYsCisgICAgMHgxLmIzNHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIC0weDEuYjM0ZDFjMjlkNWNjYmZmZWNkYzJiZGViYzA5NWJmMTNwLTYsCisgICAgLTB4MS5iMzRwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEuMDU1NGJiMzI0MmEyYTgwMGRmNGNlZTQ5Y2EwOTIxNzdwMCwKKyAgICAweDEuYjQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgLTB4MS4wNTU0YmIzMjQyYTJhODAwZGY0Y2VlNDljYTA5MjE3N3AwLAorICAgIC0weDEuYjQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgMHgxLmI4YTg4ZjM4YmM1YWM4MTM3ZThjN2ViNTQ0NDM2NzVlcC0zLAorICAgIDB4MS5iNTQ0MjNjMTQ4M2UycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgLTB4MS5iOGE4OGYzOGJjNWFjODEzN2U4YzdlYjU0NDQzNjc1ZXAtMywKKyAgICAtMHgxLmI1NDQyM2MxNDgzZTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEuMDdkOGNkZjdlZWVlODgwZmJjNTI3N2ZhYTE0OWUyNGFwMCwKKyAgICAweDEuYjcxYmRjMmM0ZWNmNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIC0weDEuMDdkOGNkZjdlZWVlODgwZmJjNTI3N2ZhYTE0OWUyNGFwMCwKKyAgICAtMHgxLmI3MWJkYzJjNGVjZjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEuYmYwNmNhMzE1OWEyNDdmZmZkOTQ5YWNiZjcxOTAxNDFwLTYsCisgICAgMHgxLmJlZjg5Nzc1YjVlODhwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAtMHgxLmJmMDZjYTMxNTlhMjQ3ZmZmZDk0OWFjYmY3MTkwMTQxcC02LAorICAgIC0weDEuYmVmODk3NzViNWU4OHAtNgorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDB4MS5jZThjN2E1MGJkZGJhZmZlYWUyMDUyMDljNGIyOTBmY3AtMiwKKyAgICAweDEuYmVmYThjNzY0ZTM1ZHAtMgorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0weDEuY2U4YzdhNTBiZGRiYWZmZWFlMjA1MjA5YzRiMjkwZmNwLTIsCisgICAgLTB4MS5iZWZhOGM3NjRlMzVkcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLmNmNzljZjNjNjNmMDU3ZDA4ODVhMjY0ZmE3ZTE0YTI0cC0yLAorICAgIDB4MS5iZmQwMDdhMWIxYTQ4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgLTB4MS5jZjc5Y2YzYzYzZjA1N2QwODg1YTI2NGZhN2UxNGEyNHAtMiwKKyAgICAtMHgxLmJmZDAwN2ExYjFhNDhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuYzBlMGQ0MmExNTBmOTgwZTcxYjVmMDNlZGVkNTA3MGZwLTIzLAorICAgIDB4MS5jMGUwZDQyYTE1MGMwcC0yMworICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIC0weDEuYzBlMGQ0MmExNTBmOTgwZTcxYjVmMDNlZGVkNTA3MGZwLTIzLAorICAgIC0weDEuYzBlMGQ0MmExNTBjMHAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuYzE0YTZjNDUyYmZhMDgwMTYwMzg5ZjgwMjMzZWNhNjNwLTYsCisgICAgMHgxLmMxM2MwMjA3NTFhNzhwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAtMHgxLmMxNGE2YzQ1MmJmYTA4MDE2MDM4OWY4MDIzM2VjYTYzcC02LAorICAgIC0weDEuYzEzYzAyMDc1MWE3OHAtNgorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS5kMTFhN2I4MWIxYzFlNzljZjYxNmFkMmUyNzNhZmI0M3AtMiwKKyAgICAweDEuYzE0NjlhMTVlNjhmNXAtMgorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIC0weDEuZDExYTdiODFiMWMxZTc5Y2Y2MTZhZDJlMjczYWZiNDNwLTIsCisgICAgLTB4MS5jMTQ2OWExNWU2OGY1cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMHgxLjE2ZjRiYjg2NGFkZmM4MDAwMDhmZDM4ZmQxZTA0MjYxcDAsCisgICAgMHgxLmM1ZTAxMDE5MDA5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAtMHgxLjE2ZjRiYjg2NGFkZmM4MDAwMDhmZDM4ZmQxZTA0MjYxcDAsCisgICAgLTB4MS5jNWUwMTAxOTAwOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgMHgxLmM2Nzg1NDhjMjJiYTkwcC0xMTUsCisgICAgMHgxLmM2Nzg1NDhjMjJiYTlwLTExNQorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0weDEuYzY3ODU0OGMyMmJhOTBwLTExNSwKKyAgICAtMHgxLmM2Nzg1NDhjMjJiYTlwLTExNQorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIDB4MS5kN2VmZDBlMjBkMDdkODAxMzgwMWU5NjJlMzE3ZTU0OXAtMiwKKyAgICAweDEuYzc2N2ZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIC0weDEuZDdlZmQwZTIwZDA3ZDgwMTM4MDFlOTYyZTMxN2U1NDlwLTIsCisgICAgLTB4MS5jNzY3ZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLmM5ZTYzZjFmZTBmMGU4MjFiMjk2NjdiYzRlYjRkNTBicC00LAorICAgIDB4MS5jOGYyM2M4ZjIzYzhjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgLTB4MS5jOWU2M2YxZmUwZjBlODIxYjI5NjY3YmM0ZWI0ZDUwYnAtNCwKKyAgICAtMHgxLmM4ZjIzYzhmMjNjOGNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuMWVhOTM3MGU1NjdiZTdmZmZmZmZlMDFlMTU4NjZhMzNwMCwKKyAgICAweDEuY2NjY2NjZDQxNmMwOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIC0weDEuMWVhOTM3MGU1NjdiZTdmZmZmZmZlMDFlMTU4NjZhMzNwMCwKKyAgICAtMHgxLmNjY2NjY2Q0MTZjMDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuMjI5MjdlNjA3M2I0YzgwMDAwZDI3OTY3ZjJhN2E0ZjdwMCwKKyAgICAweDEuZDAyN2U0OGYyYzJiYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIC0weDEuMjI5MjdlNjA3M2I0YzgwMDAwZDI3OTY3ZjJhN2E0ZjdwMCwKKyAgICAtMHgxLmQwMjdlNDhmMmMyYmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEuZDJlMDAwMDAwMTAyY2RjNmViNDE4MzU5ZDA2ODJkZWRwLTIwLAorICAgIDB4MS5kMmVwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgLTB4MS5kMmUwMDAwMDAxMDJjZGM2ZWI0MTgzNTlkMDY4MmRlZHAtMjAsCisgICAgLTB4MS5kMmVwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgMHgxLjI4MWI0YzJmY2FmZTU3ZmUxNmI0Njc5YmU3NmQyOWY1cDAsCisgICAgMHgxLmQ0YjgxMTgyZmUxM2JwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAtMHgxLjI4MWI0YzJmY2FmZTU3ZmUxNmI0Njc5YmU3NmQyOWY1cDAsCisgICAgLTB4MS5kNGI4MTE4MmZlMTNicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgMHgxLmU3MGEwODAxMWVlYjk3ZmI0NmUyMTI2ODFmZDUwOWYwcC0yLAorICAgIDB4MS5kNGUyMDVjYWRiMzgxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgLTB4MS5lNzBhMDgwMTFlZWI5N2ZiNDZlMjEyNjgxZmQ1MDlmMHAtMiwKKyAgICAtMHgxLmQ0ZTIwNWNhZGIzODFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAweDEuZDkwZDA4MDMzOTNiOTgxOWZlYzllOTJiZmQ0MTQyMjNwLTQsCisgICAgMHgxLmQ4MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIC0weDEuZDkwZDA4MDMzOTNiOTgxOWZlYzllOTJiZmQ0MTQyMjNwLTQsCisgICAgLTB4MS5kODBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAweDEuMzE3MjUyN2EwMGY3ZTgwMDI0MzljNmQ5ZjFkMzU5MGRwMCwKKyAgICAweDEuZGJlYzBlMmFlNWJkYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIC0weDEuMzE3MjUyN2EwMGY3ZTgwMDI0MzljNmQ5ZjFkMzU5MGRwMCwKKyAgICAtMHgxLmRiZWMwZTJhZTViZGJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuZGQyYmY0ODhkNDI0MWMxMWJmMzI0ZDUwOGNmYWNiZWFwLTExLAorICAgIDB4MS5kZDJiZjAzNzk5Mjc4cC0xMQorICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIC0weDEuZGQyYmY0ODhkNDI0MWMxMWJmMzI0ZDUwOGNmYWNiZWFwLTExLAorICAgIC0weDEuZGQyYmYwMzc5OTI3OHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAweDEuZjE5MjExMmYxOWU2ZjdmYzMxMWJhNzhlYzYwYWJiMTNwLTIsCisgICAgMHgxLmRlMzg2ZDYwOTAzYTVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAtMHgxLmYxOTIxMTJmMTllNmY3ZmMzMTFiYTc4ZWM2MGFiYjEzcC0yLAorICAgIC0weDEuZGUzODZkNjA5MDNhNXAtMgorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDB4MS5mNDA4NTE1OTAyZjc3N2ZhZDVjYjYyOTY5MGM5NmU4Y3AtMiwKKyAgICAweDEuZTA2NTVmNjI4ZmNjNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIC0weDEuZjQwODUxNTkwMmY3NzdmYWQ1Y2I2Mjk2OTBjOTZlOGNwLTIsCisgICAgLTB4MS5lMDY1NWY2MjhmY2M0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgMHgxLmY0MjVkMGNkZjAzMWQ3OGQxNGU0N2VmOTJjMzA0MTBkcC0yLAorICAgIDB4MS5lMDdmNmMxMWYzYWQ3cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgLTB4MS5mNDI1ZDBjZGYwMzFkNzhkMTRlNDdlZjkyYzMwNDEwZHAtMiwKKyAgICAtMHgxLmUwN2Y2YzExZjNhZDdwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAweDEuZTRjODZjMzU4N2U4ODgwMzRjNzFlNjBhMzcwZDYyNjNwLTUsCisgICAgMHgxLmU0OHAtNQorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIC0weDEuZTRjODZjMzU4N2U4ODgwMzRjNzFlNjBhMzcwZDYyNjNwLTUsCisgICAgLTB4MS5lNDhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuZTZjMmVlODUxNTllZWZmZDA1ZGQ4Mjg4MjU3OGQxZDRwLTUsCisgICAgMHgxLmU2Nzk5ZTY3OTllNjRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAtMHgxLmU2YzJlZTg1MTU5ZWVmZmQwNWRkODI4ODI1NzhkMWQ0cC01LAorICAgIC0weDEuZTY3OTllNjc5OWU2NHAtNQorICB9LAorICB7IC8vIEVudHJ5IDM0NAorICAgIDB4MS5lOTI5NzNiZDA1ZmIyMWQzNGFmZGY2OTJjZWU3YzVkNXAtNCwKKyAgICAweDEuZTgwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzQ1CisgICAgLTB4MS5lOTI5NzNiZDA1ZmIyMWQzNGFmZGY2OTJjZWU3YzVkNXAtNCwKKyAgICAtMHgxLmU4MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS5lYjMyMjg5ODJkY2I4YWFhNTU3NzZlOGI5YmEzY2QyNXAtNCwKKyAgICAweDEuZWEwNGZiNzUxNTNmN3AtNAorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIC0weDEuZWIzMjI4OTgyZGNiOGFhYTU1Nzc2ZThiOWJhM2NkMjVwLTQsCisgICAgLTB4MS5lYTA0ZmI3NTE1M2Y3cC00CisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgMHgxLmYwMjZmNDg4NjYyZmM1MWIxZTZkOTczNzFiYjRmOTU3cC0zLAorICAgIDB4MS5lYjUwMjk1ZmFkNDI1cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgLTB4MS5mMDI2ZjQ4ODY2MmZjNTFiMWU2ZDk3MzcxYmI0Zjk1N3AtMywKKyAgICAtMHgxLmViNTAyOTVmYWQ0MjVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAweDEuZWI2MzA1MTE0OWQzYjc4MjJiYTU0MjA4ZmMwMzU4MGVwLTYsCisgICAgMHgxLmViNTAyOTVmYWQ0MjVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAtMHgxLmViNjMwNTExNDlkM2I3ODIyYmE1NDIwOGZjMDM1ODBlcC02LAorICAgIC0weDEuZWI1MDI5NWZhZDQyNXAtNgorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIDB4MS40YTU1YWUzMzJjN2E0YzA5ZWE5OGU3ZDU5ZDk4NzJkZnAwLAorICAgIDB4MS5lYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAtMHgxLjRhNTVhZTMzMmM3YTRjMDllYTk4ZTdkNTlkOTg3MmRmcDAsCisgICAgLTB4MS5lYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuNGM2NTViYWJjYmUwYjQxMzg5YmM4MmU5ZjEyZTY3YzdwMCwKKyAgICAweDEuZWQycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU1CisgICAgLTB4MS40YzY1NWJhYmNiZTBiNDEzODliYzgyZTlmMTJlNjdjN3AwLAorICAgIC0weDEuZWQycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgMHgxLjRmZjkzZjE5MWQzNjk0YWI1OTNkZTVkZDYzNzFiOTZmcDAsCisgICAgMHgxLmVmMDA3MDhhNTRiMmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAtMHgxLjRmZjkzZjE5MWQzNjk0YWI1OTNkZTVkZDYzNzFiOTZmcDAsCisgICAgLTB4MS5lZjAwNzA4YTU0YjJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgMHgxLmVmNzdhYjhlOGZlZmY0YzM5ZTk0ZmEwOTMyMDkwMmFicC0yMSwKKyAgICAweDEuZWY3N2FiOGU4ZmEyYXAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAtMHgxLmVmNzdhYjhlOGZlZmY0YzM5ZTk0ZmEwOTMyMDkwMmFicC0yMSwKKyAgICAtMHgxLmVmNzdhYjhlOGZhMmFwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgMHgxLmVmZTVkOTYxMDk2MnAtMTE0LAorICAgIDB4MS5lZmU1ZDk2MTA5NjIwcC0xMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAtMHgxLmVmZTVkOTYxMDk2MnAtMTE0LAorICAgIC0weDEuZWZlNWQ5NjEwOTYyMHAtMTE0CisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgMHgxLjUxZjRiZDEzZjg1OGViZjkyOWEyMDg4ZTJkZjM0YzcycDAsCisgICAgMHgxLmVmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAtMHgxLjUxZjRiZDEzZjg1OGViZjkyOWEyMDg4ZTJkZjM0YzcycDAsCisgICAgLTB4MS5lZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY0CisgICAgMHgxLjUyZjhjNzI3MjZhNTM0M2M2YjFmNzU5MTllZGI1Njk1cDAsCisgICAgMHgxLmYwOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIC0weDEuNTJmOGM3MjcyNmE1MzQzYzZiMWY3NTkxOWVkYjU2OTVwMCwKKyAgICAtMHgxLmYwOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIDB4MS41NGE1NTUzMjIxZTgwYmY4N2JkYjgyMzE5MjUyNjE3NnAwLAorICAgIDB4MS5mMTRlOTRkOGQyZTFlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgLTB4MS41NGE1NTUzMjIxZTgwYmY4N2JkYjgyMzE5MjUyNjE3NnAwLAorICAgIC0weDEuZjE0ZTk0ZDhkMmUxZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS41NTg3NTIzYzc0NjhiNDE3M2NmNjg4ZjMyMTlhMTg0YnAwLAorICAgIDB4MS5mMWI5NTM1YjRmMTk0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgLTB4MS41NTg3NTIzYzc0NjhiNDE3M2NmNjg4ZjMyMTlhMTg0YnAwLAorICAgIC0weDEuZjFiOTUzNWI0ZjE5NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIDB4MS41NmY0Mjg1NzM1ZWNkN2ZlNTE0NDRhZWJmMzUzYzBmYnAwLAorICAgIDB4MS5mMjYyNzRhZGFjOTc5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgLTB4MS41NmY0Mjg1NzM1ZWNkN2ZlNTE0NDRhZWJmMzUzYzBmYnAwLAorICAgIC0weDEuZjI2Mjc0YWRhYzk3OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIDB4MS42YTQ1NjMxZmM2OWYzNDAxMzkyMDhhOWVhNDhmZTExYXAwLAorICAgIDB4MS5mOWNlZjU0MWQ1ZTQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgLTB4MS42YTQ1NjMxZmM2OWYzNDAxMzkyMDhhOWVhNDhmZTExYXAwLAorICAgIC0weDEuZjljZWY1NDFkNWU0MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS5mYTYzOWZjMGFkYzA0NTRjYjE5YzgyMjk4NGRhODRlZHAtMTAsCisgICAgMHgxLmZhNjM4YjFjZWVkNjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgLTB4MS5mYTYzOWZjMGFkYzA0NTRjYjE5YzgyMjk4NGRhODRlZHAtMTAsCisgICAgLTB4MS5mYTYzOGIxY2VlZDYwcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIDB4MS5mYmY2NTVhNzU0NTNmODk1YjkzYWU0YWJmNDYyMmRhMXAtNSwKKyAgICAweDEuZmJhMzA1MzA0M2U2NXAtNQorICB9LAorICB7IC8vIEVudHJ5IDM3NworICAgIC0weDEuZmJmNjU1YTc1NDUzZjg5NWI5M2FlNGFiZjQ2MjJkYTFwLTUsCisgICAgLTB4MS5mYmEzMDUzMDQzZTY1cC01CisgIH0sCisgIHsgLy8gRW50cnkgMzc4CisgICAgMHgxLjdiODAyMDg3NTU3YWY3NmQ5NmYzMDRjMDMyMmRmOTk2cDAsCisgICAgMHgxLmZlMDA4NDM1NmU2ZDNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAtMHgxLjdiODAyMDg3NTU3YWY3NmQ5NmYzMDRjMDMyMmRmOTk2cDAsCisgICAgLTB4MS5mZTAwODQzNTZlNmQzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgMHgxLjdiODAyMDg5MGNmOWU3NmY4ZmJjMGZhYmQ2NGVmZjUzcDAsCisgICAgMHgxLmZlMDA4NDM1YmMwMTFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODEKKyAgICAtMHgxLjdiODAyMDg5MGNmOWU3NmY4ZmJjMGZhYmQ2NGVmZjUzcDAsCisgICAgLTB4MS5mZTAwODQzNWJjMDExcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgMHgxLjdlMTc4MWJiMzU1ZWM3ODAzZmYzMWQ1YmU4ZGVmNDYzcDAsCisgICAgMHgxLmZlNmVlYzE3OGRmY2JwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODMKKyAgICAtMHgxLjdlMTc4MWJiMzU1ZWM3ODAzZmYzMWQ1YmU4ZGVmNDYzcDAsCisgICAgLTB4MS5mZTZlZWMxNzhkZmNicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgMHgxLjdlMmYyMDQ2YzA3YjI4N2ZhOGRlYTgwYmEyM2FkMzJkcDAsCisgICAgMHgxLmZlNzI5YjNkNzZhZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAtMHgxLjdlMmYyMDQ2YzA3YjI4N2ZhOGRlYTgwYmEyM2FkMzJkcDAsCisgICAgLTB4MS5mZTcyOWIzZDc2YWY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgMHgxLjdlMmYyZGU4YjhhODE3ODA2ZDE2NzBiZTZmNzU0ZDZkcDAsCisgICAgMHgxLmZlNzI5ZDVjOTNhZDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODcKKyAgICAtMHgxLjdlMmYyZGU4YjhhODE3ODA2ZDE2NzBiZTZmNzU0ZDZkcDAsCisgICAgLTB4MS5mZTcyOWQ1YzkzYWQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgMHgxLmZmNDk4ODBkNWEyMGFhYzNlMzUyNmU2Y2Y5ZTA5Y2I4cC0xMCwKKyAgICAweDEuZmY0OTcyY2VjYmVkOHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAtMHgxLmZmNDk4ODBkNWEyMGFhYzNlMzUyNmU2Y2Y5ZTA5Y2I4cC0xMCwKKyAgICAtMHgxLmZmNDk3MmNlY2JlZDhwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzkwCisgICAgMHgxLmZmODdlMTQ0YjNkNTI4NWM4MzFjMDQ4M2JlMmUwNmE3cC02LAorICAgIDB4MS5mZjcyOWIzM2E0NTBhcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzkxCisgICAgLTB4MS5mZjg3ZTE0NGIzZDUyODVjODMxYzA0ODNiZTJlMDZhN3AtNiwKKyAgICAtMHgxLmZmNzI5YjMzYTQ1MGFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAweDEuMDI3YzdiZDgxYWNkZjdmZmZlMDljODYxM2IzYWMwNGFwLTIsCisgICAgMHgxLmZmN2ZlZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAtMHgxLjAyN2M3YmQ4MWFjZGY3ZmZmZTA5Yzg2MTNiM2FjMDRhcC0yLAorICAgIC0weDEuZmY3ZmVmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIDB4MS5mZjhmZmZmZmZmZmZmMDAwMDAwMDU1MWQ2MTk0NzBhYXAtNDEsCisgICAgMHgxLmZmOGZmZmZmZmZmZmZwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgMzk1CisgICAgLTB4MS5mZjhmZmZmZmZmZmZmMDAwMDAwMDU1MWQ2MTk0NzBhYXAtNDEsCisgICAgLTB4MS5mZjhmZmZmZmZmZmZmcC00MQorICB9LAorICB7IC8vIEVudHJ5IDM5NgorICAgIDB4MS4wYmY0Y2YzNGYzZmFlZmYyZTRjNmI4ODViNzdiYjU0OXAtMSwKKyAgICAweDEuZmZjN2ZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIC0weDEuMGJmNGNmMzRmM2ZhZWZmMmU0YzZiODg1Yjc3YmI1NDlwLTEsCisgICAgLTB4MS5mZmM3ZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMHgxLjhhYjBkNjQyZTRjNTQ4MDQzOThlYWQ3ZGQyNDUzMzc3cDAsCisgICAgMHgxLmZmYzhjMGM3ZTZlMWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTkKKyAgICAtMHgxLjhhYjBkNjQyZTRjNTQ4MDQzOThlYWQ3ZGQyNDUzMzc3cDAsCisgICAgLTB4MS5mZmM4YzBjN2U2ZTFhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLjhiYmMzZmE3OThkYjY4MDAwMDdjMWY5YmUzNTZhNTU0cDAsCisgICAgMHgxLmZmZDczMDYzNDkzOWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAtMHgxLjhiYmMzZmE3OThkYjY4MDAwMDdjMWY5YmUzNTZhNTU0cDAsCisgICAgLTB4MS5mZmQ3MzA2MzQ5MzljcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgMHgxLjhiYzA5YTUxMDA5OGI4MDRkZWU5OTM5NjExOTU5YzBlcDAsCisgICAgMHgxLmZmZDc2N2YwZWIwMTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAtMHgxLjhiYzA5YTUxMDA5OGI4MDRkZWU5OTM5NjExOTU5YzBlcDAsCisgICAgLTB4MS5mZmQ3NjdmMGViMDE0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA0CisgICAgMHgxLjAwMjJiOWU2NzEwZjk3ZmNkZjU2YTkxY2FjZTU5ZTZkcC00LAorICAgIDB4MS5mZmYwMDAwMDAwMDBhcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDA1CisgICAgLTB4MS4wMDIyYjllNjcxMGY5N2ZjZGY1NmE5MWNhY2U1OWU2ZHAtNCwKKyAgICAtMHgxLmZmZjAwMDAwMDAwMGFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDYKKyAgICAweDEuZmZmMTA2NTM3NWU5N2RjY2UzMzhjZjZlOTMzMWE1ZDlwLTEwLAorICAgIDB4MS5mZmYwZjBmZmZmZmZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIC0weDEuZmZmMTA2NTM3NWU5N2RjY2UzMzhjZjZlOTMzMWE1ZDlwLTEwLAorICAgIC0weDEuZmZmMGYwZmZmZmZmZnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDgKKyAgICAweDEuMGMxMDg1MWMxYTEwOTdkYzNkZjk3ODY1YzVjYWVjNWJwLTEsCisgICAgMHgxLmZmZjdmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAtMHgxLjBjMTA4NTFjMWExMDk3ZGMzZGY5Nzg2NWM1Y2FlYzVicC0xLAorICAgIC0weDEuZmZmN2ZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIDB4MS4wMmJlOTRkYjg1ZTgzN2ZmZmQwNmFiZDRiYjZlYjA2NXAtMiwKKyAgICAweDEuZmZmZmYwNzdmZmZhZXAtMworICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIC0weDEuMDJiZTk0ZGI4NWU4MzdmZmZkMDZhYmQ0YmI2ZWIwNjVwLTIsCisgICAgLTB4MS5mZmZmZjA3N2ZmZmFlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMHgxLmZmZmZmZjQ1NTU1NTNmN2JiYmJkMzUyOTcyZGI3OXAtMTUsCisgICAgMHgxLmZmZmZmZjNmZmZmZmZwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNDEzCisgICAgLTB4MS5mZmZmZmY0NTU1NTUzZjdiYmJiZDM1Mjk3MmRiNzlwLTE1LAorICAgIC0weDEuZmZmZmZmM2ZmZmZmZnAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTQKKyAgICAweDEuMDBhYmUwYzAyNmQ2OTgwMDAwZWU3YjViM2M3NTBlZTRwLTMsCisgICAgMHgxLmZmZmZmZmZkZmRmOWJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTUKKyAgICAtMHgxLjAwYWJlMGMwMjZkNjk4MDAwMGVlN2I1YjNjNzUwZWU0cC0zLAorICAgIC0weDEuZmZmZmZmZmRmZGY5YnAtNAorICB9LAorICB7IC8vIEVudHJ5IDQxNgorICAgIDB4MS45MjFlN2JiYjViMDhhZjczN2E4Yzg2YTFmMzQ3MGZiN3AwLAorICAgIDB4MS5mZmZmZmZmZTdmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDE3CisgICAgLTB4MS45MjFlN2JiYjViMDhhZjczN2E4Yzg2YTFmMzQ3MGZiN3AwLAorICAgIC0weDEuZmZmZmZmZmU3ZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxOAorICAgIDB4MS45MjFlOTE4MzYyMzA1NzBkY2VlNGZlMDM3NTZmNDU4Y3AwLAorICAgIDB4MS5mZmZmZmZmZWIzN2ZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDE5CisgICAgLTB4MS45MjFlOTE4MzYyMzA1NzBkY2VlNGZlMDM3NTZmNDU4Y3AwLAorICAgIC0weDEuZmZmZmZmZmViMzdmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIDB4MS4wMDAyYWFiZGFjNzMyN2ZmZmZkNTBkOGRiMWU3MjM4Y3AtNiwKKyAgICAweDEuZmZmZmZmZmY5YmJmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDQyMQorICAgIC0weDEuMDAwMmFhYmRhYzczMjdmZmZmZDUwZDhkYjFlNzIzOGNwLTYsCisgICAgLTB4MS5mZmZmZmZmZjliYmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgNDIyCisgICAgMHgxLjAwYWJlMGMxMjFkMWE4MGMwY2U4NzA4OTZiOTA1Mzg5cC0zLAorICAgIDB4MS5mZmZmZmZmZmVmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDIzCisgICAgLTB4MS4wMGFiZTBjMTIxZDFhODBjMGNlODcwODk2YjkwNTM4OXAtMywKKyAgICAtMHgxLmZmZmZmZmZmZWZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjQKKyAgICAweDEuMDAwMmFhYmRkZTcyMzdmZWJmZGVjMDJlNTcwNmJhYjFwLTYsCisgICAgMHgxLmZmZmZmZmZmZmZiYWZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAtMHgxLjAwMDJhYWJkZGU3MjM3ZmViZmRlYzAyZTU3MDZiYWIxcC02LAorICAgIC0weDEuZmZmZmZmZmZmZmJhZnAtNworICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIDB4MS4wMDJhYmRlOTUzNThkODAxNzBmYjM3MDBhMDJkODcyZHAtNCwKKyAgICAweDEuZmZmZmZmZmZmZmVlOXAtNQorICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIC0weDEuMDAyYWJkZTk1MzU4ZDgwMTcwZmIzNzAwYTAyZDg3MmRwLTQsCisgICAgLTB4MS5mZmZmZmZmZmZmZWU5cC01CisgIH0sCisgIHsgLy8gRW50cnkgNDI4CisgICAgMHgxLjkyMWZiMmNkZWYyMWQ3ZmViYzlmM2YxYjFkMTY4M2IwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmOWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAtMHgxLjkyMWZiMmNkZWYyMWQ3ZmViYzlmM2YxYjFkMTY4M2IwcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZjlmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDMwCisgICAgMHgxLjkyMWZiNDhmM2RkZTUwNmZhYjI0N2I0ZGM4NmVhNmUwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAtMHgxLjkyMWZiNDhmM2RkZTUwNmZhYjI0N2I0ZGM4NmVhNmUwcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgMHgxLjAyYmU5Y2UwYjg3Yzk4MGZhODYzYjk4MGYzZWI2ZWQ4cC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmY5cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgLTB4MS4wMmJlOWNlMGI4N2M5ODBmYTg2M2I5ODBmM2ViNmVkOHAtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjlwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzQKKyAgICAweDEuMGMxNTIzODJkNzM2NTg0NjViYjMyZTBmNTY3YWQxMTZwLTEsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAtMHgxLjBjMTUyMzgyZDczNjU4NDY1YmIzMmUwZjU2N2FkMTE2cC0xLAorICAgIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIDB4MS4wYzE1MjM4MmQ3MzY1ODQ2NWJiMzJlMGY1NjdhZDExNnAtMSwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzNworICAgIC0weDEuMGMxNTIzODJkNzM2NTg0NjViYjMyZTBmNTY3YWQxMTZwLTEsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLjRhMWNlNGVkNTg0NmUxMTAzZWJjYTJkZDkwZTNlYjNmcC0xLAorICAgIDB4MS4zM2I2NDVhMWNhYzA4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgLTB4MS40YTFjZTRlZDU4NDZlMTEwM2ViY2EyZGQ5MGUzZWIzZnAtMSwKKyAgICAtMHgxLjMzYjY0NWExY2FjMDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuOTIxZmI1NDQ0MmQxNzdhMmUzMDVmNGVjNDliODM5YTJwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDEKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTc3YTJlMzA1ZjRlYzQ5YjgzOWEycC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIDB4MS45MjFmYjU0NDQyZDE3N2EyZTMwNWY0ZWM0OWI4MzlhMnAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0MworICAgIC0weDEuOTIxZmI1NDQ0MmQxNzdhMmUzMDVmNGVjNDliODM5YTJwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgLTB4MS5iMjM1MzE1YzY4MGRjMDgxNTgzZGIzNjBkNWUxZmExOHAtMSwKKyAgICAtMHgxLjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDUKKyAgICAweDEuYjIzNTMxNWM2ODBkYzA4MTU4M2RiMzYwZDVlMWZhMThwLTEsCisgICAgMHgxLjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDYKKyAgICAweDEuMGMxNTIzODJkNzM2NTEwYjM2M2YwMDllZGRlZmRkZWJwMCwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0NworICAgIC0weDEuMGMxNTIzODJkNzM2NTEwYjM2M2YwMDllZGRlZmRkZWJwMCwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDgKKyAgICAweDEuMGMxNTIzODJkNzM2NTEwYjM2M2YwMDllZGRlZmRkZWJwMCwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIC0weDEuMGMxNTIzODJkNzM2NTEwYjM2M2YwMDllZGRlZmRkZWJwMCwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTAKKyAgICAweDEuOTA4MTM4YThiOWFiNzYyZGJlNDdmM2NjNzFkZDc3YTRwMCwKKyAgICAweDEuZmZmZDYwZTk0ZWUzOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1MQorICAgIC0weDEuOTA4MTM4YThiOWFiNzYyZGJlNDdmM2NjNzFkZDc3YTRwMCwKKyAgICAtMHgxLmZmZmQ2MGU5NGVlMzlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTIKKyAgICAweDEucC04MiwKKyAgICAweDEuMHAtODIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTMKKyAgICAtMHgxLnAtODIsCisgICAgLTB4MS4wcC04MgorICB9LAorICB7IC8vIEVudHJ5IDQ1NAorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwYXAtNjEsCisgICAgMHgxLjBwLTYxCisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwYXAtNjEsCisgICAgLTB4MS4wcC02MQorICB9LAorICB7IC8vIEVudHJ5IDQ1NgorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAyYWFhYWFhYWFhYXAtNDIsCisgICAgMHgxLjBwLTQyCisgIH0sCisgIHsgLy8gRW50cnkgNDU3CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAyYWFhYWFhYWFhYXAtNDIsCisgICAgLTB4MS4wcC00MgorICB9LAorICB7IC8vIEVudHJ5IDQ1OAorICAgIDB4MS4wMDAwMDAwMDAwMDJhYWFhYWFhYWFhYmRkZGRkZGRkZHAtMjIsCisgICAgMHgxLjBwLTIyCisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgLTB4MS4wMDAwMDAwMDAwMDJhYWFhYWFhYWFhYmRkZGRkZGRkZHAtMjIsCisgICAgLTB4MS4wcC0yMgorICB9LAorICB7IC8vIEVudHJ5IDQ2MAorICAgIDB4MS42YTBhMDQ5Mzc4NjQ3YTFlNTJmZmRmMzE1MzZkZjk1MXAtOSwKKyAgICAweDEuNmEwOWU2NjdmM2JjYnAtOQorICB9LAorICB7IC8vIEVudHJ5IDQ2MQorICAgIC0weDEuNmEwYTA0OTM3ODY0N2ExZTUyZmZkZjMxNTM2ZGY5NTFwLTksCisgICAgLTB4MS42YTA5ZTY2N2YzYmNicC05CisgIH0sCisgIHsgLy8gRW50cnkgNDYyCisgICAgMHgxLjZhMGEwNDkzNzg2NDhhMWU1NmZmZTBiMTU0MGRmOTM2cC05LAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC05CisgIH0sCisgIHsgLy8gRW50cnkgNDYzCisgICAgLTB4MS42YTBhMDQ5Mzc4NjQ4YTFlNTZmZmUwYjE1NDBkZjkzNnAtOSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2NwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjQKKyAgICAweDEuNmEwYTA0OTM3ODY0OWExZTVhZmZlMjMxNTRhZGY5NzZwLTksCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjUKKyAgICAtMHgxLjZhMGEwNDkzNzg2NDlhMWU1YWZmZTIzMTU0YWRmOTc2cC05LAorICAgIC0weDEuNmEwOWU2NjdmM2JjZHAtOQorICB9LAorICB7IC8vIEVudHJ5IDQ2NgorICAgIDB4MS42YTBhNWYxNjU3ZDFiZjIyZDk1N2JmODYyMzFlZWQxYXAtOCwKKyAgICAweDEuNmEwOWU2NjdmM2JjYnAtOAorICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIC0weDEuNmEwYTVmMTY1N2QxYmYyMmQ5NTdiZjg2MjMxZWVkMWFwLTgsCisgICAgLTB4MS42YTA5ZTY2N2YzYmNicC04CisgIH0sCisgIHsgLy8gRW50cnkgNDY4CisgICAgMHgxLjZhMGE1ZjE2NTdkMWNmMjJlOTU3ZDc4NjRiMWYzMTk5cC04LAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC04CisgIH0sCisgIHsgLy8gRW50cnkgNDY5CisgICAgLTB4MS42YTBhNWYxNjU3ZDFjZjIyZTk1N2Q3ODY0YjFmMzE5OXAtOCwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2NwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzAKKyAgICAweDEuNmEwYTVmMTY1N2QxZGYyMmY5NTdlZjg2NzMxZjc3ODJwLTgsCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzEKKyAgICAtMHgxLjZhMGE1ZjE2NTdkMWRmMjJmOTU3ZWY4NjczMWY3NzgycC04LAorICAgIC0weDEuNmEwOWU2NjdmM2JjZHAtOAorICB9LAorICB7IC8vIEVudHJ5IDQ3MgorICAgIDB4MS42YTBiYzkyNjliODYxMjQxMzFmYTRiOTk3ODA4YWVjOHAtNywKKyAgICAweDEuNmEwOWU2NjdmM2JjYnAtNworICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIC0weDEuNmEwYmM5MjY5Yjg2MTI0MTMxZmE0Yjk5NzgwOGFlYzhwLTcsCisgICAgLTB4MS42YTA5ZTY2N2YzYmNicC03CisgIH0sCisgIHsgLy8gRW50cnkgNDc0CisgICAgMHgxLjZhMGJjOTI2OWI4NjIyNDE3MWZiY2JhMzc4NGVhYWJhcC03LAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC03CisgIH0sCisgIHsgLy8gRW50cnkgNDc1CisgICAgLTB4MS42YTBiYzkyNjliODYyMjQxNzFmYmNiYTM3ODRlYWFiYXAtNywKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2NwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAweDEuNmEwYmM5MjY5Yjg2MzI0MWIxZmQ0YmFkNzg5NGFjNTVwLTcsCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAtMHgxLjZhMGJjOTI2OWI4NjMyNDFiMWZkNGJhZDc4OTRhYzU1cC03LAorICAgIC0weDEuNmEwOWU2NjdmM2JjZHAtNworICB9LAorICB7IC8vIEVudHJ5IDQ3OAorICAgIDB4MS42YTExNzFiNDBmZTNkNTdkYTVjMmUyZWM4NjUwZDg3M3AtNiwKKyAgICAweDEuNmEwOWU2NjdmM2JjYnAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ3OQorICAgIC0weDEuNmExMTcxYjQwZmUzZDU3ZGE1YzJlMmVjODY1MGQ4NzNwLTYsCisgICAgLTB4MS42YTA5ZTY2N2YzYmNicC02CisgIH0sCisgIHsgLy8gRW50cnkgNDgwCisgICAgMHgxLjZhMTE3MWI0MGZlM2U1N2VhNWRhZTU2Y2NjNThhMTNlcC02LAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDgxCisgICAgLTB4MS42YTExNzFiNDBmZTNlNTdlYTVkYWU1NmNjYzU4YTEzZXAtNiwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2NwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODIKKyAgICAweDEuNmExMTcxYjQwZmUzZjU3ZmE1ZjJlN2VkMTI2MDgwYWZwLTYsCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODMKKyAgICAtMHgxLjZhMTE3MWI0MGZlM2Y1N2ZhNWYyZTdlZDEyNjA4MGFmcC02LAorICAgIC0weDEuNmEwOWU2NjdmM2JjZHAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIDB4MS42YTI4MThiMWEwYmQ1ZjliNDkwYThmZmQzNzI5MjFmZnAtNSwKKyAgICAweDEuNmEwOWU2NjdmM2JjYnAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ4NQorICAgIC0weDEuNmEyODE4YjFhMGJkNWY5YjQ5MGE4ZmZkMzcyOTIxZmZwLTUsCisgICAgLTB4MS42YTA5ZTY2N2YzYmNicC01CisgIH0sCisgIHsgLy8gRW50cnkgNDg2CisgICAgMHgxLjZhMjgxOGIxYTBiZDZmOWY0YThiMzA0MzU2YjczODEycC01LAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgLTB4MS42YTI4MThiMWEwYmQ2ZjlmNGE4YjMwNDM1NmI3MzgxMnAtNSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2NwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAweDEuNmEyODE4YjFhMGJkN2ZhMzRjMGJkMDg5NzY0NWE4ZWJwLTUsCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODkKKyAgICAtMHgxLjZhMjgxOGIxYTBiZDdmYTM0YzBiZDA4OTc2NDVhOGVicC01LAorICAgIC0weDEuNmEwOWU2NjdmM2JjZHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ5MAorICAgIDB4MS42YTgzMDE3ZGZiNTRjNTM4MDc5ZjA1NzExNjlmN2MwM3AtNCwKKyAgICAweDEuNmEwOWU2NjdmM2JjYnAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ5MQorICAgIC0weDEuNmE4MzAxN2RmYjU0YzUzODA3OWYwNTcxMTY5ZjdjMDNwLTQsCisgICAgLTB4MS42YTA5ZTY2N2YzYmNicC00CisgIH0sCisgIHsgLy8gRW50cnkgNDkyCisgICAgMHgxLjZhODMwMTdkZmI1NGQ1NDgxZmM3NGJlZmZmNGUyMDVmcC00LAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDkzCisgICAgLTB4MS42YTgzMDE3ZGZiNTRkNTQ4MWZjNzRiZWZmZjRlMjA1ZnAtNCwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2NwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTQKKyAgICAweDEuNmE4MzAxN2RmYjU0ZTU1ODM3ZWY5MjZlZTdmZTMzMGRwLTQsCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTUKKyAgICAtMHgxLjZhODMwMTdkZmI1NGU1NTgzN2VmOTI2ZWU3ZmUzMzBkcC00LAorICAgIC0weDEuNmEwOWU2NjdmM2JjZHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ5NgorICAgIDB4MS42YmYzODkxNjQyMTQwMWMzYjU3MzJlMGQ2YjUwZWJkMHAtMywKKyAgICAweDEuNmEwOWU2NjdmM2JjYnAtMworICB9LAorICB7IC8vIEVudHJ5IDQ5NworICAgIC0weDEuNmJmMzg5MTY0MjE0MDFjM2I1NzMyZTBkNmI1MGViZDBwLTMsCisgICAgLTB4MS42YTA5ZTY2N2YzYmNicC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDk4CisgICAgMHgxLjZiZjM4OTE2NDIxNDEyMDUzZmJiMzRlYmU4MjIxNDM2cC0zLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDk5CisgICAgLTB4MS42YmYzODkxNjQyMTQxMjA1M2ZiYjM0ZWJlODIyMTQzNnAtMywKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2NwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDAKKyAgICAweDEuNmJmMzg5MTY0MjE0MjI0NmNhMDMzYmNhNjRmOTJiNjZwLTMsCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDEKKyAgICAtMHgxLjZiZjM4OTE2NDIxNDIyNDZjYTAzM2JjYTY0ZjkyYjY2cC0zLAorICAgIC0weDEuNmEwOWU2NjdmM2JjZHAtMworICB9LAorICB7IC8vIEVudHJ5IDUwMgorICAgIDB4MS43MjBhMzkyYzFkOTUyZDhlOGFkNzU2ZTE0MzBiMTNkMXAtMiwKKyAgICAweDEuNmEwOWU2NjdmM2JjYnAtMgorICB9LAorICB7IC8vIEVudHJ5IDUwMworICAgIC0weDEuNzIwYTM5MmMxZDk1MmQ4ZThhZDc1NmUxNDMwYjEzZDFwLTIsCisgICAgLTB4MS42YTA5ZTY2N2YzYmNicC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTA0CisgICAgMHgxLjcyMGEzOTJjMWQ5NTNlYTk1OWJjYjcwNTZjYjZmYTk2cC0yLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTA1CisgICAgLTB4MS43MjBhMzkyYzFkOTUzZWE5NTliY2I3MDU2Y2I2ZmE5NnAtMiwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2NwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDYKKyAgICAweDEuNzIwYTM5MmMxZDk1NGZjNDI4YTIxNzI5OTY3ZTg2OTRwLTIsCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAtMHgxLjcyMGEzOTJjMWQ5NTRmYzQyOGEyMTcyOTk2N2U4Njk0cC0yLAorICAgIC0weDEuNmEwOWU2NjdmM2JjZHAtMgorICB9LAorICB7IC8vIEVudHJ5IDUwOAorICAgIDB4MS5iYjY3ZTVmMjhkNTAwZjFjY2FlYzFhMzhkMjQwZDUzZnAtOSwKKyAgICAweDEuYmI2N2FlODU4NGNhOXAtOQorICB9LAorICB7IC8vIEVudHJ5IDUwOQorICAgIC0weDEuYmI2N2U1ZjI4ZDUwMGYxY2NhZWMxYTM4ZDI0MGQ1M2ZwLTksCisgICAgLTB4MS5iYjY3YWU4NTg0Y2E5cC05CisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgMHgxLmJiNjdlNWYyOGQ1MDFmMWNkMGVjMWQ5OGQ0NWNkNjM4cC05LAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcC05CisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgLTB4MS5iYjY3ZTVmMjhkNTAxZjFjZDBlYzFkOThkNDVjZDYzOHAtOSwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWFwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTIKKyAgICAweDEuYmI2N2U1ZjI4ZDUwMmYxY2Q2ZWMyMGY4ZDY3OGQ3YTBwLTksCisgICAgMHgxLmJiNjdhZTg1ODRjYWJwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTMKKyAgICAtMHgxLmJiNjdlNWYyOGQ1MDJmMWNkNmVjMjBmOGQ2NzhkN2EwcC05LAorICAgIC0weDEuYmI2N2FlODU4NGNhYnAtOQorICB9LAorICB7IC8vIEVudHJ5IDUxNAorICAgIDB4MS5iYjY4OGMzYTg3NWJjYjc5YjFkMWZkNWRlMTBjOTZkMXAtOCwKKyAgICAweDEuYmI2N2FlODU4NGNhOXAtOAorICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIC0weDEuYmI2ODhjM2E4NzViY2I3OWIxZDFmZDVkZTEwYzk2ZDFwLTgsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2E5cC04CisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgMHgxLmJiNjg4YzNhODc1YmRiNzljOWQyMzM1ZTY4MGRmNzhmcC04LAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcC04CisgIH0sCisgIHsgLy8gRW50cnkgNTE3CisgICAgLTB4MS5iYjY4OGMzYTg3NWJkYjc5YzlkMjMzNWU2ODBkZjc4ZnAtOCwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICAweDEuYmI2ODhjM2E4NzViZWI3OWUxZDI2OTVlZWYwZjVhMDhwLTgsCisgICAgMHgxLmJiNjdhZTg1ODRjYWJwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAtMHgxLmJiNjg4YzNhODc1YmViNzllMWQyNjk1ZWVmMGY1YTA4cC04LAorICAgIC0weDEuYmI2N2FlODU4NGNhYnAtOAorICB9LAorICB7IC8vIEVudHJ5IDUyMAorICAgIDB4MS5iYjZiMjU2Nzk3MjE2NTAxOGNmMzVhNDY5YjM2YzVlNnAtNywKKyAgICAweDEuYmI2N2FlODU4NGNhOXAtNworICB9LAorICB7IC8vIEVudHJ5IDUyMQorICAgIC0weDEuYmI2YjI1Njc5NzIxNjUwMThjZjM1YTQ2OWIzNmM1ZTZwLTcsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2E5cC03CisgIH0sCisgIHsgLy8gRW50cnkgNTIyCisgICAgMHgxLmJiNmIyNTY3OTcyMTc1MDFlY2Y2YmE2ODVjOTkyZTQxcC03LAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcC03CisgIH0sCisgIHsgLy8gRW50cnkgNTIzCisgICAgLTB4MS5iYjZiMjU2Nzk3MjE3NTAxZWNmNmJhNjg1Yzk5MmU0MXAtNywKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjQKKyAgICAweDEuYmI2YjI1Njc5NzIxODUwMjRjZmExYThhMWRmYjlkOGFwLTcsCisgICAgMHgxLmJiNjdhZTg1ODRjYWJwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAtMHgxLmJiNmIyNTY3OTcyMTg1MDI0Y2ZhMWE4YTFkZmI5ZDhhcC03LAorICAgIC0weDEuYmI2N2FlODU4NGNhYnAtNworICB9LAorICB7IC8vIEVudHJ5IDUyNgorICAgIDB4MS5iYjc1OGFlZTY2YzRmNjE3OWMyYTRjOWU0N2VkMmM5OHAtNiwKKyAgICAweDEuYmI2N2FlODU4NGNhOXAtNgorICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIC0weDEuYmI3NThhZWU2NmM0ZjYxNzljMmE0YzllNDdlZDJjOThwLTYsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2E5cC02CisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgMHgxLmJiNzU4YWVlNjZjNTA2MTkxYzYwNTUwZmFhODhlOTc4cC02LAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTI5CisgICAgLTB4MS5iYjc1OGFlZTY2YzUwNjE5MWM2MDU1MGZhYTg4ZTk3OHAtNiwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAweDEuYmI3NThhZWU2NmM1MTYxYTljOTY1ZDgxMGQyNGMyMTZwLTYsCisgICAgMHgxLmJiNjdhZTg1ODRjYWJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzEKKyAgICAtMHgxLmJiNzU4YWVlNjZjNTE2MWE5Yzk2NWQ4MTBkMjRjMjE2cC02LAorICAgIC0weDEuYmI2N2FlODU4NGNhYnAtNgorICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIDB4MS5iYjlmMmUzODc5YzJjZjllYTQ1NGFiMjgzYWY3ODI1YXAtNSwKKyAgICAweDEuYmI2N2FlODU4NGNhOXAtNQorICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIC0weDEuYmI5ZjJlMzg3OWMyY2Y5ZWE0NTRhYjI4M2FmNzgyNWFwLTUsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2E5cC01CisgIH0sCisgIHsgLy8gRW50cnkgNTM0CisgICAgMHgxLmJiOWYyZTM4NzljMmRmYTRhN2I2Yzg4YjhhY2ZmZWY1cC01LAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTM1CisgICAgLTB4MS5iYjlmMmUzODc5YzJkZmE0YTdiNmM4OGI4YWNmZmVmNXAtNSwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzYKKyAgICAweDEuYmI5ZjJlMzg3OWMyZWZhYWFiMThlNWVlZGFhOGVhZThwLTUsCisgICAgMHgxLmJiNjdhZTg1ODRjYWJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzcKKyAgICAtMHgxLmJiOWYyZTM4NzljMmVmYWFhYjE4ZTVlZWRhYThlYWU4cC01LAorICAgIC0weDEuYmI2N2FlODU4NGNhYnAtNQorICB9LAorICB7IC8vIEVudHJ5IDUzOAorICAgIDB4MS5iYzQ2OGZjM2VjZjZiMDMxZTVjZDViZDA1MDc2NmNkN3AtNCwKKyAgICAweDEuYmI2N2FlODU4NGNhOXAtNAorICB9LAorICB7IC8vIEVudHJ5IDUzOQorICAgIC0weDEuYmM0NjhmYzNlY2Y2YjAzMWU1Y2Q1YmQwNTA3NjZjZDdwLTQsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2E5cC00CisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgMHgxLmJjNDY4ZmMzZWNmNmMwNGExYzU1YzFmNzg0YTQwYjMzcC00LAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTQxCisgICAgLTB4MS5iYzQ2OGZjM2VjZjZjMDRhMWM1NWMxZjc4NGE0MGIzM3AtNCwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAweDEuYmM0NjhmYzNlY2Y2ZDA2MjUyZGUyODFlYjhkMzZjZGZwLTQsCisgICAgMHgxLmJiNjdhZTg1ODRjYWJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAtMHgxLmJjNDY4ZmMzZWNmNmQwNjI1MmRlMjgxZWI4ZDM2Y2RmcC00LAorICAgIC0weDEuYmI2N2FlODU4NGNhYnAtNAorICB9LAorICB7IC8vIEVudHJ5IDU0NAorICAgIDB4MS5iZWYxYmNiMDg4OTAxMzFmODdmNTUwZDZjMzY1MmRkN3AtMywKKyAgICAweDEuYmI2N2FlODU4NGNhOXAtMworICB9LAorICB7IC8vIEVudHJ5IDU0NQorICAgIC0weDEuYmVmMWJjYjA4ODkwMTMxZjg3ZjU1MGQ2YzM2NTJkZDdwLTMsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2E5cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgMHgxLmJlZjFiY2IwODg5MDIzODMwYjI3NTAwNzNkNTFhYzg3cC0zLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTQ3CisgICAgLTB4MS5iZWYxYmNiMDg4OTAyMzgzMGIyNzUwMDczZDUxYWM4N3AtMywKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDgKKyAgICAweDEuYmVmMWJjYjA4ODkwMzNlNjhlNTk0ZjM3Yjc0NTlkNDZwLTMsCisgICAgMHgxLmJiNjdhZTg1ODRjYWJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDkKKyAgICAtMHgxLmJlZjFiY2IwODg5MDMzZTY4ZTU5NGYzN2I3NDU5ZDQ2cC0zLAorICAgIC0weDEuYmI2N2FlODU4NGNhYnAtMworICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIDB4MS5jYTk0OTM2Yjk4YTFmZmU4Mjg2ZTk3NmFiZDFiMDQ1MXAtMiwKKyAgICAweDEuYmI2N2FlODU4NGNhOXAtMgorICB9LAorICB7IC8vIEVudHJ5IDU1MQorICAgIC0weDEuY2E5NDkzNmI5OGExZmZlODI4NmU5NzZhYmQxYjA0NTFwLTIsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2E5cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgMHgxLmNhOTQ5MzZiOThhMjExYTg0MzBlZDM1MzUyYmM4ODFicC0yLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTUzCisgICAgLTB4MS5jYTk0OTM2Yjk4YTIxMWE4NDMwZWQzNTM1MmJjODgxYnAtMiwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTQKKyAgICAweDEuY2E5NDkzNmI5OGEyMjM2ODVkYWYwZjNiZTg4M2UyZDBwLTIsCisgICAgMHgxLmJiNjdhZTg1ODRjYWJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTUKKyAgICAtMHgxLmNhOTQ5MzZiOThhMjIzNjg1ZGFmMGYzYmU4ODNlMmQwcC0yLAorICAgIC0weDEuYmI2N2FlODU4NGNhYnAtMgorICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMTI4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC0xMjgsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTgKKyAgICAweDEucC0xMjcsCisgICAgMHgxLjBwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDU1OQorICAgIC0weDEucC0xMjcsCisgICAgLTB4MS4wcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjAKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEyNywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTYxCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMTI3LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTYyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xMjcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDU2MworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEyNywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDU2NAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuMHAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTY1CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLjBwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDU2NgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTI2LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcC0xMjYsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjgKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcC0xMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU2OQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU3MAorICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDU3MworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDU3NAorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDU3NQorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzYKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzcKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTc4CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTc5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTgwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODEKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTgzCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTg0CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjAwNTU1NTU1NTU1NTU1NGQ1N2JwLTMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjAwNTU1NTU1NTU1NTU1NGQ1N2JwLTMxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODcKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMmFhYWFhYWFhYWFhYWFhYmRwLTMwLAorICAgIDB4MS4wcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDU4OAorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwMmFhYWFhYWFhYWFhYWFhYmRwLTMwLAorICAgIC0weDEuMHAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODkKKyAgICAweDEuMDAwMDAwMDAwMDAwMTAwMmFhYWFhYWFhYWFhYjJhYmRwLTMwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDU5MAorICAgIC0weDEuMDAwMDAwMDAwMDAwMTAwMmFhYWFhYWFhYWFhYjJhYmRwLTMwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjE1NTU1NTU1NTU1NTUzN2JiYmJwLTI4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yOAorICB9LAorICB7IC8vIEVudHJ5IDU5MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjE1NTU1NTU1NTU1NTUzN2JiYmJwLTI4LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTMKKyAgICAweDEuMDAwMDAwMDAwMDAwMDBhYWFhYWFhYWFhYWFhYmRkZGRwLTI3LAorICAgIDB4MS4wcC0yNworICB9LAorICB7IC8vIEVudHJ5IDU5NAorICAgIC0weDEuMDAwMDAwMDAwMDAwMDBhYWFhYWFhYWFhYWFhYmRkZGRwLTI3LAorICAgIC0weDEuMHAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTUKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBhYWFhYWFhYWFhYWFjYmRkZGRwLTI3LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yNworICB9LAorICB7IC8vIEVudHJ5IDU5NgorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBhYWFhYWFhYWFhYWFjYmRkZGRwLTI3LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAweDEuMDAwMDAwMDAwMDAwMDJhYWFhYWFhYWFhYWFkZGRkZGRwLTI1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIC0weDEuMDAwMDAwMDAwMDAwMDJhYWFhYWFhYWFhYWFkZGRkZGRwLTI1LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTkKKyAgICAweDEuMDAwMDAwMDAwMDAwMGFhYWFhYWFhYWFhYWJkZGRkZGRwLTI1LAorICAgIDB4MS4wcC0yNQorICB9LAorICB7IC8vIEVudHJ5IDYwMAorICAgIC0weDEuMDAwMDAwMDAwMDAwMGFhYWFhYWFhYWFhYWJkZGRkZGRwLTI1LAorICAgIC0weDEuMHAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDEKKyAgICAweDEuMDAwMDAwMDAwMDAwMWFhYWFhYWFhYWFhYWRkZGRkZGRwLTI1LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yNQorICB9LAorICB7IC8vIEVudHJ5IDYwMgorICAgIC0weDEuMDAwMDAwMDAwMDAwMWFhYWFhYWFhYWFhYWRkZGRkZGRwLTI1LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAweDEuMDAwMDAwMDJhYWFhYTJiZGRkZGQ5ZTk0Yjk0ODljODBwLTE0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDYwNAorICAgIC0weDEuMDAwMDAwMDJhYWFhYTJiZGRkZGQ5ZTk0Yjk0ODljODBwLTE0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDUKKyAgICAweDEuMDAwMDAwMDJhYWFhYWFiZGRkZGRkZTk0Yjk0YjljODBwLTE0LAorICAgIDB4MS4wcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDYwNgorICAgIC0weDEuMDAwMDAwMDJhYWFhYWFiZGRkZGRkZTk0Yjk0YjljODBwLTE0LAorICAgIC0weDEuMHAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDcKKyAgICAweDEuMDAwMDAwMDJhYWFhYmFiZGRkZGU1ZTk0Yjk1MTljODBwLTE0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDYwOAorICAgIC0weDEuMDAwMDAwMDJhYWFhYmFiZGRkZGU1ZTk0Yjk1MTljODBwLTE0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDkKKyAgICAweDEuMDAwMmFhYmRkZTk0YjkxMmNjY2Y2Y2I3YTE0N2RiZTZwLTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTAKKyAgICAtMHgxLjAwMDJhYWJkZGU5NGI5MTJjY2NmNmNiN2ExNDdkYmU2cC02LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDYxMQorICAgIDB4MS4wMDAyYWFiZGRlOTRjMTEzMGNkMjZjZGZhMzc3Zjk2N3AtNiwKKyAgICAweDEuMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDYxMgorICAgIC0weDEuMDAwMmFhYmRkZTk0YzExMzBjZDI2Y2RmYTM3N2Y5NjdwLTYsCisgICAgLTB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgNjEzCisgICAgMHgxLjAwMDJhYWJkZGU5NGQxMTM4Y2Q4NmQyZmE3ZDg0MDZjcC02LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgNjE0CisgICAgLTB4MS4wMDAyYWFiZGRlOTRkMTEzOGNkODZkMmZhN2Q4NDA2Y3AtNiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAweDEuMDAwYWFiZGUwYjljNzlkNWQ5MTU0N2JjMGUxNDM5NDZwLTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTYKKyAgICAtMHgxLjAwMGFhYmRlMGI5Yzc5ZDVkOTE1NDdiYzBlMTQzOTQ2cC01LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDYxNworICAgIDB4MS4wMDBhYWJkZTBiOWM4MWQ2ZDk0NTUxYmUzZTkyNGUyYXAtNSwKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDYxOAorICAgIC0weDEuMDAwYWFiZGUwYjljODFkNmQ5NDU1MWJlM2U5MjRlMmFwLTUsCisgICAgLTB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjE5CisgICAgMHgxLjAwMGFhYmRlMGI5YzkxZDhkOWE1NjVjMjlmOGVhODA0cC01LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjIwCisgICAgLTB4MS4wMDBhYWJkZTBiOWM5MWQ4ZDlhNTY1YzI5ZjhlYTgwNHAtNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICAweDEuMDAyYWJkZTk1MzYxOGM1Y2I1YjQ5OTQ1YzE3OWQwZjNwLTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjIKKyAgICAtMHgxLjAwMmFiZGU5NTM2MThjNWNiNWI0OTk0NWMxNzlkMGYzcC00LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDYyMworICAgIDB4MS4wMDJhYmRlOTUzNjE5NDYwYjhiNzFiNzdiYjQ5NWY1N3AtNCwKKyAgICAweDEuMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDYyNAorICAgIC0weDEuMDAyYWJkZTk1MzYxOTQ2MGI4YjcxYjc3YmI0OTVmNTdwLTQsCisgICAgLTB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjI1CisgICAgMHgxLjAwMmFiZGU5NTM2MWE0NjhiZWJjMWZkYmFlZTkzZDNmcC00LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjI2CisgICAgLTB4MS4wMDJhYmRlOTUzNjFhNDY4YmViYzFmZGJhZWU5M2QzZnAtNCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjcKKyAgICAweDEuMDBhYmUwYzEyOWUxZDhhZTQ0ZTUzYTUxNTQ3NjUwN2NwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjgKKyAgICAtMHgxLjAwYWJlMGMxMjllMWQ4YWU0NGU1M2E1MTU0NzY1MDdjcC0zLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDYyOQorICAgIDB4MS4wMGFiZTBjMTI5ZTFlMGJlNzU4NzcyNGVhMTRlMDNiMXAtMywKKyAgICAweDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDYzMAorICAgIC0weDEuMDBhYmUwYzEyOWUxZTBiZTc1ODc3MjRlYTE0ZTAzYjFwLTMsCisgICAgLTB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjMxCisgICAgMHgxLjAwYWJlMGMxMjllMWYwZGVkNmNiZTI0OTNiMDA3Yzc5cC0zLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjMyCisgICAgLTB4MS4wMGFiZTBjMTI5ZTFmMGRlZDZjYmUyNDkzYjAwN2M3OXAtMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzMKKyAgICAweDEuMDJiZTljZTBiODdjYzlhMmE2NGMzODY1ODMwNDBhZmFwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzQKKyAgICAtMHgxLjAyYmU5Y2UwYjg3Y2M5YTJhNjRjMzg2NTgzMDQwYWZhcC0yLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDYzNQorICAgIDB4MS4wMmJlOWNlMGI4N2NkMWU1ZDA5ZGEyZTBmMDQyM2JmYXAtMiwKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDYzNgorICAgIC0weDEuMDJiZTljZTBiODdjZDFlNWQwOWRhMmUwZjA0MjNiZmFwLTIsCisgICAgLTB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjM3CisgICAgMHgxLjAyYmU5Y2UwYjg3Y2UyNmMyNTQwNzdkN2NhY2JkNjNjcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjM4CisgICAgLTB4MS4wMmJlOWNlMGI4N2NlMjZjMjU0MDc3ZDdjYWNiZDYzY3AtMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzkKKyAgICAweDEuMGMxNTIzODJkNzM2NGYwOTg4MTA2NWY1Yzg2MDkxNjlwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDAKKyAgICAtMHgxLjBjMTUyMzgyZDczNjRmMDk4ODEwNjVmNWM4NjA5MTY5cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDY0MQorICAgIDB4MS4wYzE1MjM4MmQ3MzY1ODQ2NWJiMzJlMGY1NjdhZDExNnAtMSwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIC0weDEuMGMxNTIzODJkNzM2NTg0NjViYjMyZTBmNTY3YWQxMTZwLTEsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQzCisgICAgMHgxLjBjMTUyMzgyZDczNjZhYzAwMmY4YmU0MjcyZjkzNzBmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQ0CisgICAgLTB4MS4wYzE1MjM4MmQ3MzY2YWMwMDJmOGJlNDI3MmY5MzcwZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDUKKyAgICAweDEuOTIxZmI1MDQ0MmQxODQ2OTg5OGM5YTZjNTcwZDhlZjdwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY0NgorICAgIC0weDEuOTIxZmI1MDQ0MmQxODQ2OTg5OGM5YTZjNTcwZDhlZjdwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDcKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQ4CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQ5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTRhNjFhNjM4ZjY3NGIzYjgzOWEycC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjUwCisgICAgLTB4MS45MjFmYjU0NDQyZDE0YTYxYTYzOGY2NzRiM2I4MzlhMnAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2FwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTEKKyAgICAweDEuOTIxZmI1NDQ0MmQxNjEwMjQ0OWY3NWIwN2UzODM5YTJwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTIKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTYxMDI0NDlmNzViMDdlMzgzOWEycC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JjYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY1MworICAgIDB4MS45MjFmYjU0NDQyZDE3N2EyZTMwNWY0ZWM0OWI4MzlhMnAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDY1NAorICAgIC0weDEuOTIxZmI1NDQ0MmQxNzdhMmUzMDVmNGVjNDliODM5YTJwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjU1CisgICAgMHgxLjkyMWZiNTQ0NDJkMThlNDM4MTZjNzQyODE2MzgzOWEycC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjU2CisgICAgLTB4MS45MjFmYjU0NDQyZDE4ZTQzODE2Yzc0MjgxNjM4MzlhMnAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2RwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTcKKyAgICAweDEuOTIxZmI1NDQ0MmQxYTRlNDFmZDJmMzYzZTNiODM5YTJwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMWE0ZTQxZmQyZjM2M2UzYjgzOWEycC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JjZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY1OQorICAgIDB4MS4wYzE1MjM4MmQ3MzYzMTBiMzYzZjAwOWVlMmY3NzYzYXAwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2E4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjYwCisgICAgLTB4MS4wYzE1MjM4MmQ3MzYzMTBiMzYzZjAwOWVlMmY3NzYzYXAwLAorICAgIC0weDEuYmI2N2FlODU4NGNhOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY2MQorICAgIDB4MS4wYzE1MjM4MmQ3MzY0MTBiMzYzZjAwOWVkZjk1ZjYzYnAwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2E5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjYyCisgICAgLTB4MS4wYzE1MjM4MmQ3MzY0MTBiMzYzZjAwOWVkZjk1ZjYzYnAwLAorICAgIC0weDEuYmI2N2FlODU4NGNhOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY2MworICAgIDB4MS4wYzE1MjM4MmQ3MzY1MTBiMzYzZjAwOWVkZGVmZGRlYnAwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjY0CisgICAgLTB4MS4wYzE1MjM4MmQ3MzY1MTBiMzYzZjAwOWVkZGVmZGRlYnAwLAorICAgIC0weDEuYmI2N2FlODU4NGNhYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY2NQorICAgIDB4MS4wYzE1MjM4MmQ3MzY2MTBiMzYzZjAwOWVkZTA1MmQ0YXAwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FicC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjY2CisgICAgLTB4MS4wYzE1MjM4MmQ3MzY2MTBiMzYzZjAwOWVkZTA1MmQ0YXAwLAorICAgIC0weDEuYmI2N2FlODU4NGNhYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY2NworICAgIDB4MS4wYzE1MjM4MmQ3MzY3MTBiMzYzZjAwOWVkZmQ1ZTQ1N3AwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjY4CisgICAgLTB4MS4wYzE1MjM4MmQ3MzY3MTBiMzYzZjAwOWVkZmQ1ZTQ1N3AwLAorICAgIC0weDEuYmI2N2FlODU4NGNhY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDY2OQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzAKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzEKKyAgICAweDEuOTIxZmI1MDQ0MmQxODQ2OTg5OGM5YTZjNTcwZDhlZjdwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY3MgorICAgIC0weDEuOTIxZmI1MDQ0MmQxODQ2OTg5OGM5YTZjNTcwZDhlZjdwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzMKKyAgICAweDEuY2U4Mjc2YzNlMTM5YzdlZWFiODM2ZmM0ZGQ0YTYxYmNwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzQKKyAgICAtMHgxLmNlODI3NmMzZTEzOWM3ZWVhYjgzNmZjNGRkNGE2MWJjcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY3NQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDY3NgorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwLTEwMjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNjc3CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDY3OAorICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDY3OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDY4MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNjgxCisgICAgMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNjgyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODMKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNjg0CisgICAgLTB4MS5wLTEwNzMsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNjg1CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDY4NworICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODgKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9hc2luZl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvYXNpbmZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY5NzlhNmIKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvYXNpbmZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTkzNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGZsb2F0LCBmbG9hdD4gZ19hc2luZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIC0weDEuMGNhZDhlNjZmNmZiNDg3Y2YxZGY5ZWQwOTFlNGE3MmVwLTEsCisgICAgLTB4MS4wMDgzZjRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLjBjYWQ4ZTY2ZjZmYjQ4N2NmMWRmOWVkMDkxZTRhNzJlcC0xLAorICAgIDB4MS4wMDgzZjRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgLTB4MS4xMDM1NjVkYWQ3ZTIwMDIyODNhM2ZhYzJiMWQ2MzExZHAtMSwKKyAgICAtMHgxLjAzOTA5Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuMTAzNTY1ZGFkN2UyMDAyMjgzYTNmYWMyYjFkNjMxMWRwLTEsCisgICAgMHgxLjAzOTA5Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAtMHgxLjFjNjZiOWZmZDY2NmNjNzUxOGY1YWVlZTM4MTkzNTA4cC0xLAorICAgIC0weDEuMGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLjFjNjZiOWZmZDY2NmNjNzUxOGY1YWVlZTM4MTkzNTA4cC0xLAorICAgIDB4MS4wZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAtMHgxLjMxMTkwMDAxMjk1OGFjMzBmMDlhMTExYjgzOGEwMGM0cC0xLAorICAgIC0weDEuMWY1Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuMzExOTAwMDEyOTU4YWMzMGYwOWExMTFiODM4YTAwYzRwLTEsCisgICAgMHgxLjFmNWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIC0weDEuMjQ2ZjVjMDAwMGE3MjAyMmMzOWMyNTVlZGUxNTEyZDNwLTMsCisgICAgLTB4MS4yMzcxMzhwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS4yNDZmNWMwMDAwYTcyMDIyYzM5YzI1NWVkZTE1MTJkM3AtMywKKyAgICAweDEuMjM3MTM4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAtMHgxLjNkYjA5MDAwMDAzOTViNDIxMWFmZWZmZmM2OTE1YzM2cC0zLAorICAgIC0weDEuM2M2YWNhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEuM2RiMDkwMDAwMDM5NWI0MjExYWZlZmZmYzY5MTVjMzZwLTMsCisgICAgMHgxLjNjNmFjYXAtMworICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgLTB4MS41ZTJlNGI1NTFkNjhhZjRkODgxNTJkNjI5NzY3MjZjNHAtMSwKKyAgICAtMHgxLjQzODJjOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLjVlMmU0YjU1MWQ2OGFmNGQ4ODE1MmQ2Mjk3NjcyNmM0cC0xLAorICAgIDB4MS40MzgyYzhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIC0weDEuN2JlMjUyZjZmMGE3NzZhOTM2MDgzNTFhZTEwZWI5NzRwMCwKKyAgICAtMHgxLmZlMTFiNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLjdiZTI1MmY2ZjBhNzc2YTkzNjA4MzUxYWUxMGViOTc0cDAsCisgICAgMHgxLmZlMTFiNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgLTB4MS4wMGFiMDBmZmU1ZDY4YWI3NDJmZDkzNjQ3ZWMwYTY3YnAtMywKKyAgICAtMHgxLmZmZmU0NHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjAwYWIwMGZmZTVkNjhhYjc0MmZkOTM2NDdlYzBhNjdicC0zLAorICAgIDB4MS5mZmZlNDRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIC0weDEuMGMxNTExMDkzMDIyMGM3OWViNjI0YWU0MTljODgzNmNwLTEsCisgICAgLTB4MS5mZmZmZTBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS4wYzE1MTEwOTMwMjIwYzc5ZWI2MjRhZTQxOWM4ODM2Y3AtMSwKKyAgICAweDEuZmZmZmUwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS4wMmJlOWVmMTgzMTE0ZmM1NjA5ODgzMDZmODg3YWM3NHAtMiwKKyAgICAweDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAtMHgxLjAyYmU5ZWYxODMxMTRmYzU2MDk4ODMwNmY4ODdhYzc0cC0yLAorICAgIC0weDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuMDJiZWExMDI0ZGE2MTQyNjVhNTljMDAyYWUwYzU2YTBwLTIsCisgICAgMHgxLjAwMDAwNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgLTB4MS4wMmJlYTEwMjRkYTYxNDI2NWE1OWMwMDJhZTBjNTZhMHAtMiwKKyAgICAtMHgxLjAwMDAwNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLjBjMTUyYTcwNzVmNzViZjg1YzFjYTkxOTFiMTlhNWFmcC0xLAorICAgIDB4MS4wMDAwMDZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIC0weDEuMGMxNTJhNzA3NWY3NWJmODVjMWNhOTE5MWIxOWE1YWZwLTEsCisgICAgLTB4MS4wMDAwMDZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS4wYzE1MzE1ZTE0YzYzYWU4NzZmOTMxMzgxOTE1N2E5MnAtMSwKKyAgICAweDEuMDAwMDBjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAtMHgxLjBjMTUzMTVlMTRjNjNhZTg3NmY5MzEzODE5MTU3YTkycC0xLAorICAgIC0weDEuMDAwMDBjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEuMDBhYzAxMDFlYzcyZjFhODc4NzkwZDE3YmIyODE1NTZwLTMsCisgICAgMHgxLjAwMDAyMHAtMworICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgLTB4MS4wMGFjMDEwMWVjNzJmMWE4Nzg3OTBkMTdiYjI4MTU1NnAtMywKKyAgICAtMHgxLjAwMDAyMHAtMworICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLjBjMTU0YWM1NWI4OGEzYWY5MDM1YTI4MzIyZmRkOWEzcC0xLAorICAgIDB4MS4wMDAwMjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIC0weDEuMGMxNTRhYzU1Yjg4YTNhZjkwMzVhMjgzMjJmZGQ5YTNwLTEsCisgICAgLTB4MS4wMDAwMjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS4wMmJlYmZmZTJjN2VhMjgwNTMyMGRlYzY2Y2E3ODQ0Y3AtMiwKKyAgICAweDEuMDAwMDIycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAtMHgxLjAyYmViZmZlMmM3ZWEyODA1MzIwZGVjNjZjYTc4NDRjcC0yLAorICAgIC0weDEuMDAwMDIycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMGMxNTU2NTE2NGFhM2E1NTk1ODQ1ODQwNWExYzFlOThwLTEsCisgICAgMHgxLjAwMDAyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS4wYzE1NTY1MTY0YWEzYTU1OTU4NDU4NDA1YTFjMWU5OHAtMSwKKyAgICAtMHgxLjAwMDAyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLjBjMTU1YWVmY2VjMjcwYzVhMzFiM2UwMTY2MTRiNjc2cC0xLAorICAgIDB4MS4wMDAwMzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIC0weDEuMGMxNTVhZWZjZWMyNzBjNWEzMWIzZTAxNjYxNGI2NzZwLTEsCisgICAgLTB4MS4wMDAwMzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS4wYzE1NjY3YmQ4MTllYTUxOTBkNjRlMWVlY2Q5ZDNmZnAtMSwKKyAgICAweDEuMDAwMDNhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAtMHgxLjBjMTU2NjdiZDgxOWVhNTE5MGQ2NGUxZWVjZDlkM2ZmcC0xLAorICAgIC0weDEuMDAwMDNhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuMGMxNmRlZWFmNDk2Mzc4Y2IwYzE3NjAxYTgyYjNlZjdwLTEsCisgICAgMHgxLjAwMDE4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgLTB4MS4wYzE2ZGVlYWY0OTYzNzhjYjBjMTc2MDFhODJiM2VmN3AtMSwKKyAgICAtMHgxLjAwMDE4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLjBjMTc3MmI4ODRmYjA4NTM0ODhmODJjOGVhYjIyZjA2cC0xLAorICAgIDB4MS4wMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAtMHgxLjBjMTc3MmI4ODRmYjA4NTM0ODhmODJjOGVhYjIyZjA2cC0xLAorICAgIC0weDEuMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLjBjMTg5YTUzZWZhYzg3MzY5YmY3MzY5OWIwMmFhMDllcC0xLAorICAgIDB4MS4wMDAzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAtMHgxLjBjMTg5YTUzZWZhYzg3MzY5YmY3MzY5OWIwMmFhMDllcC0xLAorICAgIC0weDEuMDAwM3AtMQorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjAwYWVmY2ZmZmZmNTYzNjM0ZmIwOTVjYzllNDBkZGEzcC0zLAorICAgIDB4MS4wMDAzMTZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIC0weDEuMDBhZWZjZmZmZmY1NjM2MzRmYjA5NWNjOWU0MGRkYTNwLTMsCisgICAgLTB4MS4wMDAzMTZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS4wYzE5MDI0MGFhOTg1NTdkYTlkNGZlMjA2YWU2NjI3OXAtMSwKKyAgICAweDEuMDAwMzVhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLjBjMTkwMjQwYWE5ODU1N2RhOWQ0ZmUyMDZhZTY2Mjc5cC0xLAorICAgIC0weDEuMDAwMzVhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuMGMxOWMxZWZiY2U5MjZjYTE0Y2IzZTBiMGZjZmU0NmNwLTEsCisgICAgMHgxLjAwMDRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEuMGMxOWMxZWZiY2U5MjZjYTE0Y2IzZTBiMGZjZmU0NmNwLTEsCisgICAgLTB4MS4wMDA0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuMDAwYjJiMDFlNDA3MjgzMTEzODk0M2Q1MTAyMGMzZjVwLTYsCisgICAgMHgxLjAwMDg4MHAtNgorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgLTB4MS4wMDBiMmIwMWU0MDcyODMxMTM4OTQzZDUxMDIwYzNmNXAtNiwKKyAgICAtMHgxLjAwMDg4MHAtNgorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLjBjMzBkYTZjYTA2ODQ2MTE1YmI1ZTgwNDBjZDE2M2E1cC0xLAorICAgIDB4MS4wMDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLjBjMzBkYTZjYTA2ODQ2MTE1YmI1ZTgwNDBjZDE2M2E1cC0xLAorICAgIC0weDEuMDAxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLjBjMzU3OGZlN2Q3NDhlZjQ2NzkwMjE4NWI1NzA3OWExcC0xLAorICAgIDB4MS4wMDFjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLjBjMzU3OGZlN2Q3NDhlZjQ2NzkwMjE4NWI1NzA3OWExcC0xLAorICAgIC0weDEuMDAxY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLjBjM2ExNzk2ODQ2NmZhMTI4YzgyYjA0N2QyOWUxYTgxcC0xLAorICAgIDB4MS4wMDIwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLjBjM2ExNzk2ODQ2NmZhMTI4YzgyYjA0N2QyOWUxYTgxcC0xLAorICAgIC0weDEuMDAyMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLjBjM2IxYTQ4OTg0NmFiODgzNWM1MzBmM2M5MjVlNDhkcC0xLAorICAgIDB4MS4wMDIwZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuMGMzYjFhNDg5ODQ2YWI4ODM1YzUzMGYzYzkyNWU0OGRwLTEsCisgICAgLTB4MS4wMDIwZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS4wYzNjOGJkOWM5ZjM2YTk5ZjgwMzlmOTkyNDk3MTlhN3AtMSwKKyAgICAweDEuMDAyMjIwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLjBjM2M4YmQ5YzlmMzZhOTlmODAzOWY5OTI0OTcxOWE3cC0xLAorICAgIC0weDEuMDAyMjIwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuMGMzZWI2MzRiNTcwZDk1MDE3YzFlZmQxMTk2ZjAxODhwLTEsCisgICAgMHgxLjAwMjRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEuMGMzZWI2MzRiNTcwZDk1MDE3YzFlZmQxMTk2ZjAxODhwLTEsCisgICAgLTB4MS4wMDI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuMGM1MDJlMzI5Yjc2Y2JjOTBkMmJjMmQ4YTQ2ZmQ4OTRwLTEsCisgICAgMHgxLjAwMzMyMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS4wYzUwMmUzMjliNzZjYmM5MGQyYmMyZDhhNDZmZDg5NHAtMSwKKyAgICAtMHgxLjAwMzMyMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjBjN2Y2NTYzMTM4ZDhmZjMyODk0MjVhZmMyOWNmMmU0cC0xLAorICAgIDB4MS4wMDVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLjBjN2Y2NTYzMTM4ZDhmZjMyODk0MjVhZmMyOWNmMmU0cC0xLAorICAgIC0weDEuMDA1Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLjBjOGQ0MjY1ZDllZTIwN2IzZGMyMWYxZGI3NmVkZTdjcC0xLAorICAgIDB4MS4wMDY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMHgxLjBjOGQ0MjY1ZDllZTIwN2IzZGMyMWYxZGI3NmVkZTdjcC0xLAorICAgIC0weDEuMDA2OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLjBjOTFlMTczMjE5N2UyYTVkNGRjYTYzZGViNjgwOTBhcC0xLAorICAgIDB4MS4wMDZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMHgxLjBjOTFlMTczMjE5N2UyYTVkNGRjYTYzZGViNjgwOTBhcC0xLAorICAgIC0weDEuMDA2Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLjAzNWRhZDAwOTFkYWE1ZGYxZmMwZTBlMGE5ZmU0ZWQ0cC0yLAorICAgIDB4MS4wMDlhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLjAzNWRhZDAwOTFkYWE1ZGYxZmMwZTBlMGE5ZmU0ZWQ0cC0yLAorICAgIC0weDEuMDA5YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLjBkNDAzMjI2YTgyNzg4MGUyZmY4MjI2ZGRlYmRjYjJicC0xLAorICAgIDB4MS4wMTAyZDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuMGQ0MDMyMjZhODI3ODgwZTJmZjgyMjZkZGViZGNiMmJwLTEsCisgICAgLTB4MS4wMTAyZDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS4wZDk0ODhlZjdkOTNmNzFlMTI2YTg3ZTZhNGRmMjYwNHAtMSwKKyAgICAweDEuMDE0YmMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLjBkOTQ4OGVmN2Q5M2Y3MWUxMjZhODdlNmE0ZGYyNjA0cC0xLAorICAgIC0weDEuMDE0YmMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuMGRiNTM2N2Y5ZTY0ZjNmNTBhMmY3MGRiY2M1YjcyNTRwLTEsCisgICAgMHgxLjAxNjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIC0weDEuMGRiNTM2N2Y5ZTY0ZjNmNTBhMmY3MGRiY2M1YjcyNTRwLTEsCisgICAgLTB4MS4wMTY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuMGRlMDA1MDAxMTA1YmVjZmYzYmUyZjAyMmM0MjQ3MjdwLTEsCisgICAgMHgxLjAxOGRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuMGRlMDA1MDAxMTA1YmVjZmYzYmUyZjAyMmM0MjQ3MjdwLTEsCisgICAgLTB4MS4wMThkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuMGY4ZGIxYzQ3ZDU0Zjk1OWFiMDE0NTE0NWM2N2FjN2NwLTEsCisgICAgMHgxLjAzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAtMHgxLjBmOGRiMWM0N2Q1NGY5NTlhYjAxNDUxNDVjNjdhYzdjcC0xLAorICAgIC0weDEuMDNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS4xN2RmMTEwMjNiMDBiNjBlNTY2YmNjMzQ0NTJkOGVmY3AtMSwKKyAgICAweDEuMGEyNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS4xN2RmMTEwMjNiMDBiNjBlNTY2YmNjMzQ0NTJkOGVmY3AtMSwKKyAgICAtMHgxLjBhMjRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS4xODhhMTMwMDNlMmQ2NjczZjhiMTEzN2RkZWZhN2ZmNnAtMSwKKyAgICAweDEuMGFiNjA4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAtMHgxLjE4OGExMzAwM2UyZDY2NzNmOGIxMTM3ZGRlZmE3ZmY2cC0xLAorICAgIC0weDEuMGFiNjA4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuMGMzMTBiZmVkODE0NmJhYjNlY2NkMWYzNmFkNTk4ZGZwLTQsCisgICAgMHgxLjBjcC00CisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAtMHgxLjBjMzEwYmZlZDgxNDZiYWIzZWNjZDFmMzZhZDU5OGRmcC00LAorICAgIC0weDEuMGNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS4xYWIwNzFhNmE2NDk1NDgzZmIyMDI4MzI4NzYyNjdiMXAtMSwKKyAgICAweDEuMGM4YjNhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAtMHgxLjFhYjA3MWE2YTY0OTU0ODNmYjIwMjgzMjg3NjI2N2IxcC0xLAorICAgIC0weDEuMGM4YjNhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuMWFlMDMxMTdhZjc2NTBjNzAzNmVlYjdmMjU4NTM5YWVwLTEsCisgICAgMHgxLjBjYjNlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLTB4MS4xYWUwMzExN2FmNzY1MGM3MDM2ZWViN2YyNTg1MzlhZXAtMSwKKyAgICAtMHgxLjBjYjNlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS4xYzY2YjlmZmQ2NjZjYzc1MThmNWFlZWUzODE5MzUwOHAtMSwKKyAgICAweDEuMGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAtMHgxLjFjNjZiOWZmZDY2NmNjNzUxOGY1YWVlZTM4MTkzNTA4cC0xLAorICAgIC0weDEuMGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuMGUwMzIxMDA0ZjdmOTVkZTdkZjg1NmY0NjI3NmQzMmNwLTYsCisgICAgMHgxLjBlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgLTB4MS4wZTAzMjEwMDRmN2Y5NWRlN2RmODU2ZjQ2Mjc2ZDMyY3AtNiwKKyAgICAtMHgxLjBlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjFkMTliMzAwMGE4YzYzZGJiOWNkM2FhMjZjYjkzYWY4cC0xLAorICAgIDB4MS4wZTk4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTB4MS4xZDE5YjMwMDBhOGM2M2RiYjljZDNhYTI2Y2I5M2FmOHAtMSwKKyAgICAtMHgxLjBlOThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuMGYzN2U2ZmZmZmZmY2FkZjU0MDM2NTNkOTY4YTI2ODBwLTUsCisgICAgMHgxLjBmMmIzOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIC0weDEuMGYzN2U2ZmZmZmZmY2FkZjU0MDM2NTNkOTY4YTI2ODBwLTUsCisgICAgLTB4MS4wZjJiMzhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuMWVjZjY3YmI5MTA1N2UxYTQwOTJmMGQwZWFlYTE3MDFwLTEsCisgICAgMHgxLjEwMGIzMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIC0weDEuMWVjZjY3YmI5MTA1N2UxYTQwOTJmMGQwZWFlYTE3MDFwLTEsCisgICAgLTB4MS4xMDBiMzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuMWY0YjY0ZmZmZmZmZmEwYzkxMjkxZTE0MzEyODFmMzdwLTEsCisgICAgMHgxLjEwNzQzNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIC0weDEuMWY0YjY0ZmZmZmZmZmEwYzkxMjkxZTE0MzEyODFmMzdwLTEsCisgICAgLTB4MS4xMDc0MzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuMTkwMzkzMDAwNmY4MzA5MjQxODI3NTg1YjJjODA2NjFwLTIsCisgICAgMHgxLjE1ODBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLjE5MDM5MzAwMDZmODMwOTI0MTgyNzU4NWIyYzgwNjYxcC0yLAorICAgIC0weDEuMTU4MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS4xNzI0OTNmZmZlZTVhMjUwN2YxMzI2MTNjYWRlY2NjY3AtNSwKKyAgICAweDEuMTcxNmMwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS4xNzI0OTNmZmZlZTVhMjUwN2YxMzI2MTNjYWRlY2NjY3AtNSwKKyAgICAtMHgxLjE3MTZjMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS4xYzdkNDZmZDdiMWFjNGRlZDE2NTVjNTIwNmU2ZTYzMHAtMiwKKyAgICAweDEuMThkOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIC0weDEuMWM3ZDQ2ZmQ3YjFhYzRkZWQxNjU1YzUyMDZlNmU2MzBwLTIsCisgICAgLTB4MS4xOGQ4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjI5NjQ3YTdlNjQ2ZjMyMDA4Yzg2MDFhYzA0OTY3YmZjcC0xLAorICAgIDB4MS4xOGYzMmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAtMHgxLjI5NjQ3YTdlNjQ2ZjMyMDA4Yzg2MDFhYzA0OTY3YmZjcC0xLAorICAgIC0weDEuMThmMzJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLjMxMTkwMDAxMjk1OGFjMzBmMDlhMTExYjgzOGEwMGM0cC0xLAorICAgIDB4MS4xZjVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgLTB4MS4zMTE5MDAwMTI5NThhYzMwZjA5YTExMWI4MzhhMDBjNHAtMSwKKyAgICAtMHgxLjFmNWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEuMjNmZWU5MDU3YTc5OWJkNTI3NDBiMWFlMWQxZTk2ODVwLTIsCisgICAgMHgxLjIwMGVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLjIzZmVlOTA1N2E3OTliZDUyNzQwYjFhZTFkMWU5Njg1cC0yLAorICAgIC0weDEuMjAwZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS4zY2RmMjZmZGQ3ZjM5ZWY5YjZkZjE3ZTMwNmNmOTI0N3AtMSwKKyAgICAweDEuMjkwNmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgLTB4MS4zY2RmMjZmZGQ3ZjM5ZWY5YjZkZjE3ZTMwNmNmOTI0N3AtMSwKKyAgICAtMHgxLjI5MDZmY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS40NTMxMTkwNmRiYjQ5NWEwMzhlZGY3OGYzNDgxZmJhOXAtMSwKKyAgICAweDEuMmZjM2MycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgLTB4MS40NTMxMTkwNmRiYjQ5NWEwMzhlZGY3OGYzNDgxZmJhOXAtMSwKKyAgICAtMHgxLjJmYzNjMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS4zNjQ0ZWFmZmZmN2E3YTUwMzcwOGI1NzkyMTAxMjQzZnAtMiwKKyAgICAweDEuMzE4YjIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgLTB4MS4zNjQ0ZWFmZmZmN2E3YTUwMzcwOGI1NzkyMTAxMjQzZnAtMiwKKyAgICAtMHgxLjMxOGIyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS4zNDM2MGFmZmZmN2FiMGFjMWE0NGYxNTMxMjkwOGRlOXAtNSwKKyAgICAweDEuMzQyMzZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgLTB4MS4zNDM2MGFmZmZmN2FiMGFjMWE0NGYxNTMxMjkwOGRlOXAtNSwKKyAgICAtMHgxLjM0MjM2ZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS4zODAxMzRmNzNhMTI2MGRlMmU2MDE1YWEzYzg4MmUxMXAtNywKKyAgICAweDEuMzhwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMHgxLjM4MDEzNGY3M2ExMjYwZGUyZTYwMTVhYTNjODgyZTExcC03LAorICAgIC0weDEuMzhwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuNDAxNGQ4ZmZhZjhhZWIzZGJkMmRjZGFhZTgzNWZmZWZwLTUsCisgICAgMHgxLjQwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS40MDE0ZDhmZmFmOGFlYjNkYmQyZGNkYWFlODM1ZmZlZnAtNSwKKyAgICAtMHgxLjQwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLjU5YWQxNTA0Mjc0M2QwMzYyMjBiMDMzYTQzZTMzYTMzcC0xLAorICAgIDB4MS40MDAxYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLjU5YWQxNTA0Mjc0M2QwMzYyMjBiMDMzYTQzZTMzYTMzcC0xLAorICAgIC0weDEuNDAwMWMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLjVmZjFhY2ZmZWZlMWNlMzAxZGFhYTRmNzJjZWU1ZDNhcC0xLAorICAgIDB4MS40NGUwMjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLjVmZjFhY2ZmZWZlMWNlMzAxZGFhYTRmNzJjZWU1ZDNhcC0xLAorICAgIC0weDEuNDRlMDI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLjZlYWZhNmY5ZjI3NjNhYWVhYmY2MzExZjg4ZWQzY2UxcC0xLAorICAgIDB4MS41MDIyMzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMHgxLjZlYWZhNmY5ZjI3NjNhYWVhYmY2MzExZjg4ZWQzY2UxcC0xLAorICAgIC0weDEuNTAyMjMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLjc0MjNkNzAwMDdmODZkMWM1YzkyY2QyMzk5ZDMzZjRjcC0xLAorICAgIDB4MS41NDNhNzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLjc0MjNkNzAwMDdmODZkMWM1YzkyY2QyMzk5ZDMzZjRjcC0xLAorICAgIC0weDEuNTQzYTc2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLjU4M2RmZjAwMDA4M2ZhYjlhZmI4MDkyZjY4MTgzYTlmcC01LAorICAgIDB4MS41ODI0MTBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAtMHgxLjU4M2RmZjAwMDA4M2ZhYjlhZmI4MDkyZjY4MTgzYTlmcC01LAorICAgIC0weDEuNTgyNDEwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLjhmMTAyOTA4NDFkNjViZmQzMTNlMDI4NzdhODdhMjJlcC0xLAorICAgIDB4MS42N2RlMzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAtMHgxLjhmMTAyOTA4NDFkNjViZmQzMTNlMDI4NzdhODdhMjJlcC0xLAorICAgIC0weDEuNjdkZTMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLjY4YWI2ZWZjMDQ3ZDNhZDA0NmJkODE4M2VjNWM0ZDQ2cC00LAorICAgIDB4MS42ODM0MmFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLjY4YWI2ZWZjMDQ3ZDNhZDA0NmJkODE4M2VjNWM0ZDQ2cC00LAorICAgIC0weDEuNjgzNDJhcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLjk1OGQzYWZmZWRkNjQ4ZjM1MTEwY2Y4N2E3NDdlNDNkcC0xLAorICAgIDB4MS42Yzc0NTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLjk1OGQzYWZmZWRkNjQ4ZjM1MTEwY2Y4N2E3NDdlNDNkcC0xLAorICAgIC0weDEuNmM3NDUycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLjk4MDI3MmZmZjEzOTU0N2ZhNWFkODIyNjk0YjcxNTlmcC0xLAorICAgIDB4MS42ZTJkMmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAtMHgxLjk4MDI3MmZmZjEzOTU0N2ZhNWFkODIyNjk0YjcxNTlmcC0xLAorICAgIC0weDEuNmUyZDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLjgxMDFjZWZiNGI3NDk2MzA4NGI2NmMyMjM1YjQ4NTY3cC0yLAorICAgIDB4MS43N2ZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLjgxMDFjZWZiNGI3NDk2MzA4NGI2NmMyMjM1YjQ4NTY3cC0yLAorICAgIC0weDEuNzdmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLjgwMDAwMTAwMDAwMWNjY2NkMTE1ZjE2YWMwOWMyYzFkcC0xMCwKKyAgICAweDEuN2ZmZmY4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEuODAwMDAxMDAwMDAxY2NjY2QxMTVmMTZhYzA5YzJjMWRwLTEwLAorICAgIC0weDEuN2ZmZmY4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS44MWYyNzJmZGY3YjMxYzE2ZDMyNGY5MDcxN2FkOTg0OXAtNCwKKyAgICAweDEuODE2MDUwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTB4MS44MWYyNzJmZGY3YjMxYzE2ZDMyNGY5MDcxN2FkOTg0OXAtNCwKKyAgICAtMHgxLjgxNjA1MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS5iY2U0Y2VmZmVlMjY1NmFmNjUzZjQ3MWYyMjUwMmNjYnAtMSwKKyAgICAweDEuODZmYmU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS5iY2U0Y2VmZmVlMjY1NmFmNjUzZjQ3MWYyMjUwMmNjYnAtMSwKKyAgICAtMHgxLjg2ZmJlNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDB4MS5iZDU2ZDBmZmViZTY0MTVhOTIxYjUyNmIxMGNjMDllZHAtMSwKKyAgICAweDEuODc0NTc4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS5iZDU2ZDBmZmViZTY0MTVhOTIxYjUyNmIxMGNjMDllZHAtMSwKKyAgICAtMHgxLjg3NDU3OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS5iZDg2NmFmZmViODNhOGViZjI1YjdlMGM5YjQ1MzA5MXAtMSwKKyAgICAweDEuODc2NDJhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS5iZDg2NmFmZmViODNhOGViZjI1YjdlMGM5YjQ1MzA5MXAtMSwKKyAgICAtMHgxLjg3NjQyYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIDB4MS5iZGVhZThmZmVmZTc5ZmUyOTg5NGFmODQ0MGI4ODhiZHAtMSwKKyAgICAweDEuODdhNGVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5iZGVhZThmZmVmZTc5ZmUyOTg5NGFmODQ0MGI4ODhiZHAtMSwKKyAgICAtMHgxLjg3YTRlY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS5jMGZmYTJmZmVmMjllYWQxOGFlNmFiNjczODExZjcyNXAtMSwKKyAgICAweDEuODk5ZjIycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS5jMGZmYTJmZmVmMjllYWQxOGFlNmFiNjczODExZjcyNXAtMSwKKyAgICAtMHgxLjg5OWYyMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS5jMjU3ZmIwMDA0ZGRiMjg0OTA3NjczN2E1M2FjYjJhOHAtMSwKKyAgICAweDEuOGE3YWZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS5jMjU3ZmIwMDA0ZGRiMjg0OTA3NjczN2E1M2FjYjJhOHAtMSwKKyAgICAtMHgxLjhhN2FmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS5jYzlkMmIwMDExNmNiY2Y0NjI1YTFiYmIzYjViNGU3OHAtMSwKKyAgICAweDEuOTBmMjljcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS5jYzlkMmIwMDExNmNiY2Y0NjI1YTFiYmIzYjViNGU3OHAtMSwKKyAgICAtMHgxLjkwZjI5Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIDB4MS5jZGRkZjEwMDEzNWNiMmU4NzE2ZTYzOWJiM2I1MjQ5ZnAtMSwKKyAgICAweDEuOTFiOWNhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS5jZGRkZjEwMDEzNWNiMmU4NzE2ZTYzOWJiM2I1MjQ5ZnAtMSwKKyAgICAtMHgxLjkxYjljYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS45ZGQ4MGYwMDAwODRlMGMzZGYxOTQ2YWVkNmQ5NTliZnAtNywKKyAgICAweDEuOWRkNTNlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS45ZGQ4MGYwMDAwODRlMGMzZGYxOTQ2YWVkNmQ5NTliZnAtNywKKyAgICAtMHgxLjlkZDUzZXAtNworICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS5lNWU2ZWNlZGQ3OTUwMjNkZmEzYzdkYzI0MWYxMDQzOHAtMSwKKyAgICAweDEuYTAyZGNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgLTB4MS5lNWU2ZWNlZGQ3OTUwMjNkZmEzYzdkYzI0MWYxMDQzOHAtMSwKKyAgICAtMHgxLmEwMmRjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS5hYTgzNjNmZTA1MGE0OGM3MjM4ZTIzMzY0ZDAxOTk5NXAtNCwKKyAgICAweDEuYTliZTJlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTB4MS5hYTgzNjNmZTA1MGE0OGM3MjM4ZTIzMzY0ZDAxOTk5NXAtNCwKKyAgICAtMHgxLmE5YmUyZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS5iZjQyZDYwMjFhZDFiYTljMzc2MGU4YzdjY2NkYjZhNXAtMiwKKyAgICAweDEuYjEyY2QwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTB4MS5iZjQyZDYwMjFhZDFiYTljMzc2MGU4YzdjY2NkYjZhNXAtMiwKKyAgICAtMHgxLmIxMmNkMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS5jNDNjNDJmYzQ2Nzc2NTI2N2IyYmNlNTQ0ZDcwYjBlZHAtMiwKKyAgICAweDEuYjVhZDYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgLTB4MS5jNDNjNDJmYzQ2Nzc2NTI2N2IyYmNlNTQ0ZDcwYjBlZHAtMiwKKyAgICAtMHgxLmI1YWQ2MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS4xMDk0OTEwZTdmY2QxNmM5NzY0YjRlMWI3NmI3MzdmNnAwLAorICAgIDB4MS5iZmQ1ODhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAtMHgxLjEwOTQ5MTBlN2ZjZDE2Yzk3NjRiNGUxYjc2YjczN2Y2cDAsCisgICAgLTB4MS5iZmQ1ODhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuMTBjMDJmMGU5M2U4NjMyZTY0NmQ2N2U5MDE1Mzc0YzlwMCwKKyAgICAweDEuYmZmZmNhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTB4MS4xMGMwMmYwZTkzZTg2MzJlNjQ2ZDY3ZTkwMTUzNzRjOXAwLAorICAgIC0weDEuYmZmZmNhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjEwYzA2NmQzZTY5MzFiNzZhMTNkZjNhNjg5OTcxYmE1cDAsCisgICAgMHgxLmMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS4xMGMwNjZkM2U2OTMxYjc2YTEzZGYzYTY4OTk3MWJhNXAwLAorICAgIC0weDEuYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuYzcwMDZiMDI5NjZhZGY2YTNkZjY2NTA1Nzk1OTZkMzhwLTMsCisgICAgMHgxLmMzNDQ4ZXAtMworICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEuYzcwMDZiMDI5NjZhZGY2YTNkZjY2NTA1Nzk1OTZkMzhwLTMsCisgICAgLTB4MS5jMzQ0OGVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEuY2NlZDFjZmZmZmZmZWFkMmU2N2FmZjJlZDM0ZjY4ZmJwLTQsCisgICAgMHgxLmNiZjQzY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuY2NlZDFjZmZmZmZmZWFkMmU2N2FmZjJlZDM0ZjY4ZmJwLTQsCisgICAgLTB4MS5jYmY0M2NwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuZDE5NGZkMDI5N2Y1NmQ2NTRkNzY3NDYwZjEyYmJkNzBwLTMsCisgICAgMHgxLmNkOTVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLmQxOTRmZDAyOTdmNTZkNjU0ZDc2NzQ2MGYxMmJiZDcwcC0zLAorICAgIC0weDEuY2Q5NXAtMworICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS4yZDQ2ZTkwMDM4MTk5NjJlYzQzOGU0NzQxNmViZTM1NnAwLAorICAgIDB4MS5kOGM4YzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLjJkNDZlOTAwMzgxOTk2MmVjNDM4ZTQ3NDE2ZWJlMzU2cDAsCisgICAgLTB4MS5kOGM4YzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAweDEuZGUxYjA5MDFmOThlYWM3NTUzZjBlODE5NWFkMDc3ZmNwLTMsCisgICAgMHgxLmQ5YzY1NHAtMworICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuZGUxYjA5MDFmOThlYWM3NTUzZjBlODE5NWFkMDc3ZmNwLTMsCisgICAgLTB4MS5kOWM2NTRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuMzcyMmQyZmViMjRjN2Q5Y2NjODQ3ZjUzYTNhNGVlODBwMCwKKyAgICAweDEuZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLjM3MjJkMmZlYjI0YzdkOWNjYzg0N2Y1M2EzYTRlZTgwcDAsCisgICAgLTB4MS5lMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS5lNDgxYzBmY2U3MTM0MDM5Mzc5NmY1NmUyNjU2Mjk4MXAtMywKKyAgICAweDEuZTBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAtMHgxLmU0ODFjMGZjZTcxMzQwMzkzNzk2ZjU2ZTI2NTYyOTgxcC0zLAorICAgIC0weDEuZTBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuZTI1NzllMDAwMTBlMTZhMjMzODljNWQyZDA0Y2IwMTZwLTYsCisgICAgMHgxLmUyNDVjOHAtNgorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0weDEuZTI1NzllMDAwMTBlMTZhMjMzODljNWQyZDA0Y2IwMTZwLTYsCisgICAgLTB4MS5lMjQ1YzhwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAweDEuZWJmMTU3MDA4MjYxNmVlYzZkNjJjYTRiYmU5OGE4MGVwLTMsCisgICAgMHgxLmU3MzljMHAtMworICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuZWJmMTU3MDA4MjYxNmVlYzZkNjJjYTRiYmU5OGE4MGVwLTMsCisgICAgLTB4MS5lNzM5YzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuZWMwYjJlZmU0NTIxM2FhMmE1OTEzYmU1M2ZiYTI2NzVwLTMsCisgICAgMHgxLmU3NTJkYXAtMworICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuZWMwYjJlZmU0NTIxM2FhMmE1OTEzYmU1M2ZiYTI2NzVwLTMsCisgICAgLTB4MS5lNzUyZGFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuZWQzYjE2ZmZmZjdjYjk3MDkyMjk5MzQ4MDhiZDA4NmJwLTMsCisgICAgMHgxLmU4N2EwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEuZWQzYjE2ZmZmZjdjYjk3MDkyMjk5MzQ4MDhiZDA4NmJwLTMsCisgICAgLTB4MS5lODdhMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuZmZlYWVjZmZmZjgxN2NhMWFmNWRmN2FmZjcxZjk4YzZwLTMsCisgICAgMHgxLmZhOWE4MnAtMworICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0weDEuZmZlYWVjZmZmZjgxN2NhMWFmNWRmN2FmZjcxZjk4YzZwLTMsCisgICAgLTB4MS5mYTlhODJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAweDEuN2Q2MGMyZjQ3YzgxNjdkOWFmZmRmNjhkNGZkYmM1ZDlwMCwKKyAgICAweDEuZmU1MWQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS43ZDYwYzJmNDdjODE2N2Q5YWZmZGY2OGQ0ZmRiYzVkOXAwLAorICAgIC0weDEuZmU1MWQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgMHgxLjkwMWYzNGZlYTk0ZWQ4YmY3ZDVjZTFlMDAyNTZiZWM1cDAsCisgICAgMHgxLmZmZmJmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEuOTAxZjM0ZmVhOTRlZDhiZjdkNWNlMWUwMDI1NmJlYzVwMCwKKyAgICAtMHgxLmZmZmJmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS4wMGFiN2VmY2RjN2UzZGE3NjM3ZTYxN2M2MzA3YzEzM3AtMywKKyAgICAweDEuZmZmZjNlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTB4MS4wMGFiN2VmY2RjN2UzZGE3NjM3ZTYxN2M2MzA3YzEzM3AtMywKKyAgICAtMHgxLmZmZmYzZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS4wYzE1MTEwOTMwMjIwYzc5ZWI2MjRhZTQxOWM4ODM2Y3AtMSwKKyAgICAweDEuZmZmZmUwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgLTB4MS4wYzE1MTEwOTMwMjIwYzc5ZWI2MjRhZTQxOWM4ODM2Y3AtMSwKKyAgICAtMHgxLmZmZmZlMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS4wYzE1MjM4MmQ3MzY1ODQ2NWJiMzJlMGY1NjdhZDExNnAtMSwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgLTB4MS4wYzE1MjM4MmQ3MzY1ODQ2NWJiMzJlMGY1NjdhZDExNnAtMSwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS4wYzE1MjM4MmQ3MzY1ODQ2NWJiMzJlMGY1NjdhZDExNnAtMSwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgLTB4MS4wYzE1MjM4MmQ3MzY1ODQ2NWJiMzJlMGY1NjdhZDExNnAtMSwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS40YTFjZTU2MzM3MjliNDgzMWMwZjJkZTUwYjE5OTE2MXAtMSwKKyAgICAweDEuMzNiNjQ2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTB4MS40YTFjZTU2MzM3MjliNDgzMWMwZjJkZTUwYjE5OTE2MXAtMSwKKyAgICAtMHgxLjMzYjY0NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS45MjFmYjRiMTQwMjM4NDY5ODk4NGIwOTk2NmY5NmRlNnAtMSwKKyAgICAweDEuNmEwOWU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgLTB4MS45MjFmYjRiMTQwMjM4NDY5ODk4NGIwOTk2NmY5NmRlNnAtMSwKKyAgICAtMHgxLjZhMDllNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS45MjFmYjRiMTQwMjM4NDY5ODk4NGIwOTk2NmY5NmRlNnAtMSwKKyAgICAweDEuNmEwOWU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgLTB4MS45MjFmYjRiMTQwMjM4NDY5ODk4NGIwOTk2NmY5NmRlNnAtMSwKKyAgICAtMHgxLjZhMDllNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIC0weDEuYjIzNTMxNWM2ODBkYzA4MTU4M2RiMzYwZDVlMWZhMThwLTEsCisgICAgLTB4MS44MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIDB4MS5iMjM1MzE1YzY4MGRjMDgxNTgzZGIzNjBkNWUxZmExOHAtMSwKKyAgICAweDEuODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuMGMxNTIyZmQ1MjZiZWQ1YTBmN2NiMzI4YmE1YzM5OTFwMCwKKyAgICAweDEuYmI2N2FlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS4wYzE1MjJmZDUyNmJlZDVhMGY3Y2IzMjhiYTVjMzk5MXAwLAorICAgIC0weDEuYmI2N2FlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLjBjMTUyMmZkNTI2YmVkNWEwZjdjYjMyOGJhNWMzOTkxcDAsCisgICAgMHgxLmJiNjdhZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEuMGMxNTIyZmQ1MjZiZWQ1YTBmN2NiMzI4YmE1YzM5OTFwMCwKKyAgICAtMHgxLmJiNjdhZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS45MDgwZjBhMjQyZTYzNmM4YjE1ODA0NmU2MjIzOTBiZXAwLAorICAgIDB4MS5mZmZkNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAtMHgxLjkwODBmMGEyNDJlNjM2YzhiMTU4MDQ2ZTYyMjM5MGJlcDAsCisgICAgLTB4MS5mZmZkNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEucC04MiwKKyAgICAweDEucC04MgorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIC0weDEucC04MiwKKyAgICAtMHgxLnAtODIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGFwLTYxLAorICAgIDB4MS5wLTYxCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwYXAtNjEsCisgICAgLTB4MS5wLTYxCisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDJhYWFhYWFhYWFhcC00MiwKKyAgICAweDEucC00MgorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMmFhYWFhYWFhYWFwLTQyLAorICAgIC0weDEucC00MgorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDB4MS4wMDAwMDAwMDAwMDJhYWFhYWFhYWFhYmRkZGRkZGRkZHAtMjIsCisgICAgMHgxLnAtMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMmFhYWFhYWFhYWFiZGRkZGRkZGRkcC0yMiwKKyAgICAtMHgxLnAtMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEuNmEwYTAyMmI4NDBkY2NmNjZlMGI2ZWM5Mjg5ZjM2YjVwLTksCisgICAgMHgxLjZhMDllNHAtOQorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIC0weDEuNmEwYTAyMmI4NDBkY2NmNjZlMGI2ZWM5Mjg5ZjM2YjVwLTksCisgICAgLTB4MS42YTA5ZTRwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuNmEwYTA0MmI4NDhkY2QyNTZmOTg2NjQyMTA0NzEwMTBwLTksCisgICAgMHgxLjZhMDllNnAtOQorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIC0weDEuNmEwYTA0MmI4NDhkY2QyNTZmOTg2NjQyMTA0NzEwMTBwLTksCisgICAgLTB4MS42YTA5ZTZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEuNmEwYTA2MmI4NTBkY2Q1NWRiMzA1MzQzMGQ4ODAxZGVwLTksCisgICAgMHgxLjZhMDllOHAtOQorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIC0weDEuNmEwYTA2MmI4NTBkY2Q1NWRiMzA1MzQzMGQ4ODAxZGVwLTksCisgICAgLTB4MS42YTA5ZThwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuNmEwYTVjYWU2MWFkMTdjZTRkYjc0MDQ0MWJmZjQyNjRwLTgsCisgICAgMHgxLjZhMDllNHAtOAorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIC0weDEuNmEwYTVjYWU2MWFkMTdjZTRkYjc0MDQ0MWJmZjQyNjRwLTgsCisgICAgLTB4MS42YTA5ZTRwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEuNmEwYTVlYWU2M2FkMWFjYTU4OTIzM2YwNDZlZjZmOThwLTgsCisgICAgMHgxLjZhMDllNnAtOAorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIC0weDEuNmEwYTVlYWU2M2FkMWFjYTU4OTIzM2YwNDZlZjZmOThwLTgsCisgICAgLTB4MS42YTA5ZTZwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuNmEwYTYwYWU2NWFkMWRjYzBiYTViODNkOWRhYzg2MDhwLTgsCisgICAgMHgxLjZhMDllOHAtOAorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIC0weDEuNmEwYTYwYWU2NWFkMWRjYzBiYTViODNkOWRhYzg2MDhwLTgsCisgICAgLTB4MS42YTA5ZThwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuNmEwYmM2YmU5ZTI5NTk5ZTc3ZDQyNjQ3ODkxYzg0ZTlwLTcsCisgICAgMHgxLjZhMDllNHAtNworICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIC0weDEuNmEwYmM2YmU5ZTI5NTk5ZTc3ZDQyNjQ3ODkxYzg0ZTlwLTcsCisgICAgLTB4MS42YTA5ZTRwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuNmEwYmM4YmVhNjI5ODk4ZmNlYjk1ZmIwNDk1OGEyMTdwLTcsCisgICAgMHgxLjZhMDllNnAtNworICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIC0weDEuNmEwYmM4YmVhNjI5ODk4ZmNlYjk1ZmIwNDk1OGEyMTdwLTcsCisgICAgLTB4MS42YTA5ZTZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuNmEwYmNhYmVhZTI5Yjk5N2M3NGM4YjIwOWFkYTI2MjVwLTcsCisgICAgMHgxLjZhMDllOHAtNworICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIC0weDEuNmEwYmNhYmVhZTI5Yjk5N2M3NGM4YjIwOWFkYTI2MjVwLTcsCisgICAgLTB4MS42YTA5ZThwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuNmExMTZmNGJmNWE0NGRhNjRkODlmYTM1YTZlYmFjMDRwLTYsCisgICAgMHgxLjZhMDllNHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIC0weDEuNmExMTZmNGJmNWE0NGRhNjRkODlmYTM1YTZlYmFjMDRwLTYsCisgICAgLTB4MS42YTA5ZTRwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuNmExMTcxNGMxNWE3NGRiNmE4Yzg2MmMwNTNmZjVjNDdwLTYsCisgICAgMHgxLjZhMDllNnAtNgorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIC0weDEuNmExMTcxNGMxNWE3NGRiNmE4Yzg2MmMwNTNmZjVjNDdwLTYsCisgICAgLTB4MS42YTA5ZTZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEuNmExMTczNGMzNWFhNGUyMTk3N2I2OTNlZGIwZmJmZWRwLTYsCisgICAgMHgxLjZhMDllOHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIC0weDEuNmExMTczNGMzNWFhNGUyMTk3N2I2OTNlZGIwZmJmZWRwLTYsCisgICAgLTB4MS42YTA5ZThwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuNmEyODE2NDkxMmM5ZWE4MjQ5MjYyOTU0ZjFhZTFhMjJwLTUsCisgICAgMHgxLjZhMDllNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIC0weDEuNmEyODE2NDkxMmM5ZWE4MjQ5MjYyOTU0ZjFhZTFhMjJwLTUsCisgICAgLTB4MS42YTA5ZTRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuNmEyODE4NDk5MmY5ZmQ4YmM3NzIwMjZkOTE2MDVkY2FwLTUsCisgICAgMHgxLjZhMDllNnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIC0weDEuNmEyODE4NDk5MmY5ZmQ4YmM3NzIwMjZkOTE2MDVkY2FwLTUsCisgICAgLTB4MS42YTA5ZTZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuNmEyODFhNGExMzJhMTIwMDVmZDU1ZjQzZDJiZjgxYTZwLTUsCisgICAgMHgxLjZhMDllOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIC0weDEuNmEyODFhNGExMzJhMTIwMDVmZDU1ZjQzZDJiZjgxYTZwLTUsCisgICAgLTB4MS42YTA5ZThwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuNmE4MmZmMTM5YzAyNjA5NjIwZWY0Njk0ZWU2MjdiNTdwLTQsCisgICAgMHgxLjZhMDllNHAtNAorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIC0weDEuNmE4MmZmMTM5YzAyNjA5NjIwZWY0Njk0ZWU2MjdiNTdwLTQsCisgICAgLTB4MS42YTA5ZTRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAweDEuNmE4MzAxMTU5ZjA3NjU1ZmQ4Nzk0ODBiNWNiY2Y1Y2JwLTQsCisgICAgMHgxLjZhMDllNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIC0weDEuNmE4MzAxMTU5ZjA3NjU1ZmQ4Nzk0ODBiNWNiY2Y1Y2JwLTQsCisgICAgLTB4MS42YTA5ZTZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEuNmE4MzAzMTdhMjBjNmZlMmRhZTMwZmU1YmFiZTYzZjhwLTQsCisgICAgMHgxLjZhMDllOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIC0weDEuNmE4MzAzMTdhMjBjNmZlMmRhZTMwZmU1YmFiZTYzZjhwLTQsCisgICAgLTB4MS42YTA5ZThwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuNmJmMzg2YTQ3MzNkYzk1ODQzMTc2MzNkNTkwOTY0ZjRwLTMsCisgICAgMHgxLjZhMDllNHAtMworICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIC0weDEuNmJmMzg2YTQ3MzNkYzk1ODQzMTc2MzNkNTkwOTY0ZjRwLTMsCisgICAgLTB4MS42YTA5ZTRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuNmJmMzg4YWNhNDg2Yjk4NTBjNTBjZjlmNDU3NjY3ZjJwLTMsCisgICAgMHgxLjZhMDllNnAtMworICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuNmJmMzg4YWNhNDg2Yjk4NTBjNTBjZjlmNDU3NjY3ZjJwLTMsCisgICAgLTB4MS42YTA5ZTZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuNmJmMzhhYjRkNWNmYzE2Y2ZkMzlhYzc3ZTA3YjYwNDhwLTMsCisgICAgMHgxLjZhMDllOHAtMworICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIC0weDEuNmJmMzhhYjRkNWNmYzE2Y2ZkMzlhYzc3ZTA3YjYwNDhwLTMsCisgICAgLTB4MS42YTA5ZThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEuNzIwYTM2OTlhMjk0MGY5MzEwNmU4YTdlZDcyOWIzMmFwLTIsCisgICAgMHgxLjZhMDllNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIC0weDEuNzIwYTM2OTlhMjk0MGY5MzEwNmU4YTdlZDcyOWIzMmFwLTIsCisgICAgLTB4MS42YTA5ZTRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEuNzIwYTM4YmNmYzcwNmRkOThiODQ4OGEzYzE1MjNkMzFwLTIsCisgICAgMHgxLjZhMDllNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEuNzIwYTM4YmNmYzcwNmRkOThiODQ4OGEzYzE1MjNkMzFwLTIsCisgICAgLTB4MS42YTA5ZTZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEuNzIwYTNhZTA1NjRkM2FiNGVhOGI5ODc1NjRkMjAyZTJwLTIsCisgICAgMHgxLjZhMDllOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIC0weDEuNzIwYTNhZTA1NjRkM2FiNGVhOGI5ODc1NjRkMjAyZTJwLTIsCisgICAgLTB4MS42YTA5ZThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEuYmI2N2UzNmQwNzkzNmNjYTBhZmVjZGRlODgyMmFjOTJwLTksCisgICAgMHgxLmJiNjdhY3AtOQorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIC0weDEuYmI2N2UzNmQwNzkzNmNjYTBhZmVjZGRlODgyMmFjOTJwLTksCisgICAgLTB4MS5iYjY3YWNwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuYmI2N2U1NmQwODUzNmQzNGI5ZWI4Y2RlZDhlYTI1YjNwLTksCisgICAgMHgxLmJiNjdhZXAtOQorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0weDEuYmI2N2U1NmQwODUzNmQzNGI5ZWI4Y2RlZDhlYTI1YjNwLTksCisgICAgLTB4MS5iYjY3YWVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuYmI2N2U3NmQwOTEzNmRhMTI0NDFlY2I1OWZlZTI0OTNwLTksCisgICAgMHgxLmJiNjdiMHAtOQorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIC0weDEuYmI2N2U3NmQwOTEzNmRhMTI0NDFlY2I1OWZlZTI0OTNwLTksCisgICAgLTB4MS5iYjY3YjBwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuYmI2ODg5YjRmZWM4ZWJjY2E2MWM0NmY0NTVhZTVkNGZwLTgsCisgICAgMHgxLmJiNjdhY3AtOAorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIC0weDEuYmI2ODg5YjRmZWM4ZWJjY2E2MWM0NmY0NTVhZTVkNGZwLTgsCisgICAgLTB4MS5iYjY3YWNwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuYmI2ODhiYjUwMWM4ZjI4NzcxOGZhNDNlNjE0MjkwMmRwLTgsCisgICAgMHgxLmJiNjdhZXAtOAorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEuYmI2ODhiYjUwMWM4ZjI4NzcxOGZhNDNlNjE0MjkwMmRwLTgsCisgICAgLTB4MS5iYjY3YWVwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuYmI2ODhkYjUwNGM4Zjk0OTJhYzBlNzQ3ODE3ZjIyYThwLTgsCisgICAgMHgxLmJiNjdiMHAtOAorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIC0weDEuYmI2ODhkYjUwNGM4Zjk0OTJhYzBlNzQ3ODE3ZjIyYThwLTgsCisgICAgLTB4MS5iYjY3YjBwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEuYmI2YjIyZTIwMzM1MzAyOGUwNzk1MTNhMTFjYmJhYjNwLTcsCisgICAgMHgxLmJiNjdhY3AtNworICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIC0weDEuYmI2YjIyZTIwMzM1MzAyOGUwNzk1MTNhMTFjYmJhYjNwLTcsCisgICAgLTB4MS5iYjY3YWNwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuYmI2YjI0ZTIwZjM1OWMxODAxZDVhZTQzNGFlNzViMmRwLTcsCisgICAgMHgxLmJiNjdhZXAtNworICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0weDEuYmI2YjI0ZTIwZjM1OWMxODAxZDVhZTQzNGFlNzViMmRwLTcsCisgICAgLTB4MS5iYjY3YWVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuYmI2YjI2ZTIxYjM2MDgyMmRiOWZkZDJiMjY1NTQxYjVwLTcsCisgICAgMHgxLmJiNjdiMHAtNworICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIC0weDEuYmI2YjI2ZTIxYjM2MDgyMmRiOWZkZDJiMjY1NTQxYjVwLTcsCisgICAgLTB4MS5iYjY3YjBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAweDEuYmI3NTg4NjhhNTZkNmY3ZDgyYTcwNGQ2ZGE3OGUyZmRwLTYsCisgICAgMHgxLmJiNjdhY3AtNgorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIC0weDEuYmI3NTg4NjhhNTZkNmY3ZDgyYTcwNGQ2ZGE3OGUyZmRwLTYsCisgICAgLTB4MS5iYjY3YWNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuYmI3NThhNjhkNTc0MzAzNzQxZWI4NWVmZTM0ZGFjOWFwLTYsCisgICAgMHgxLmJiNjdhZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIC0weDEuYmI3NThhNjhkNTc0MzAzNzQxZWI4NWVmZTM0ZGFjOWFwLTYsCisgICAgLTB4MS5iYjY3YWVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuYmI3NThjNjkwNTdhZjE1ZmZhNTAyMTY5MGI4NmQ2ZTVwLTYsCisgICAgMHgxLmJiNjdiMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIC0weDEuYmI3NThjNjkwNTdhZjE1ZmZhNTAyMTY5MGI4NmQ2ZTVwLTYsCisgICAgLTB4MS5iYjY3YjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEuYmI5ZjJiYjIwMjVkZjViNWEwMWY4OTBlMjY3YWNiZjZwLTUsCisgICAgMHgxLmJiNjdhY3AtNQorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIC0weDEuYmI5ZjJiYjIwMjVkZjViNWEwMWY4OTBlMjY3YWNiZjZwLTUsCisgICAgLTB4MS5iYjY3YWNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAweDEuYmI5ZjJkYjJjMmNhMzgwZjM3ZjAwZTEwYzM0ZjNmNGVwLTUsCisgICAgMHgxLmJiNjdhZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIC0weDEuYmI5ZjJkYjJjMmNhMzgwZjM3ZjAwZTEwYzM0ZjNmNGVwLTUsCisgICAgLTB4MS5iYjY3YWVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEuYmI5ZjJmYjM4MzM2N2MyNjJjMTg3NzhiMTFjZTcyY2FwLTUsCisgICAgMHgxLmJiNjdiMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIC0weDEuYmI5ZjJmYjM4MzM2N2MyNjJjMTg3NzhiMTFjZTcyY2FwLTUsCisgICAgLTB4MS5iYjY3YjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAweDEuYmM0NjhkM2E5NzRjZDZjNmYzNTNmMjM4ZTZlZTk2MzVwLTQsCisgICAgMHgxLmJiNjdhY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIC0weDEuYmM0NjhkM2E5NzRjZDZjNmYzNTNmMjM4ZTZlZTk2MzVwLTQsCisgICAgLTB4MS5iYjY3YWNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAweDEuYmM0NjhmM2Q5ZTFkZGUyZTcyOTZmMDY4MGM4YjVjZjFwLTQsCisgICAgMHgxLmJiNjdhZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIC0weDEuYmM0NjhmM2Q5ZTFkZGUyZTcyOTZmMDY4MGM4YjVjZjFwLTQsCisgICAgLTB4MS5iYjY3YWVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuYmM0NjkxNDBhNGVlZWNhMzM0NjQ5NzIyNTE4MTA3MGVwLTQsCisgICAgMHgxLmJiNjdiMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIC0weDEuYmM0NjkxNDBhNGVlZWNhMzM0NjQ5NzIyNTE4MTA3MGVwLTQsCisgICAgLTB4MS5iYjY3YjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAweDEuYmVmMWJhMWI1NGYyZTUxNzYwOGQ0OTdlZGE4MWYxM2VwLTMsCisgICAgMHgxLmJiNjdhY3AtMworICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIC0weDEuYmVmMWJhMWI1NGYyZTUxNzYwOGQ0OTdlZGE4MWYxM2VwLTMsCisgICAgLTB4MS5iYjY3YWNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAweDEuYmVmMWJjMjdjNTU5MGU1NTE2Njc4MzZmNDRiODI0MGJwLTMsCisgICAgMHgxLmJiNjdhZXAtMworICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIC0weDEuYmVmMWJjMjdjNTU5MGU1NTE2Njc4MzZmNDRiODI0MGJwLTMsCisgICAgLTB4MS5iYjY3YWVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuYmVmMWJlMzQzNWJmNTU1YjA2MmM2YjkzMzk2OGY4NThwLTMsCisgICAgMHgxLmJiNjdiMHAtMworICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIC0weDEuYmVmMWJlMzQzNWJmNTU1YjA2MmM2YjkzMzk2OGY4NThwLTMsCisgICAgLTB4MS5iYjY3YjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAweDEuY2E5NDkwOWY3NTFmODgwYTAwNGI1YjJkMTM1OGM3ZDhwLTIsCisgICAgMHgxLmJiNjdhY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIC0weDEuY2E5NDkwOWY3NTFmODgwYTAwNGI1YjJkMTM1OGM3ZDhwLTIsCisgICAgLTB4MS5iYjY3YWNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuY2E5NDkyZDc3ODczMWM2MGFkNmYyMTk4YmVjMTExMThwLTIsCisgICAgMHgxLmJiNjdhZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIC0weDEuY2E5NDkyZDc3ODczMWM2MGFkNmYyMTk4YmVjMTExMThwLTIsCisgICAgLTB4MS5iYjY3YWVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuY2E5NDk1MGY3YmM3NDgxMzAzZjYyMDZlYjU1ZTYwNjNwLTIsCisgICAgMHgxLmJiNjdiMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIC0weDEuY2E5NDk1MGY3YmM3NDgxMzAzZjYyMDZlYjU1ZTYwNjNwLTIsCisgICAgLTB4MS5iYjY3YjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAweDEuZmZmZmY4cC0xMjgsCisgICAgMHgxLmZmZmZmOHAtMTI4CisgIH0sCisgIHsgLy8gRW50cnkgMzQ3CisgICAgLTB4MS5mZmZmZjhwLTEyOCwKKyAgICAtMHgxLmZmZmZmOHAtMTI4CisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgMHgxLnAtMTI3LAorICAgIDB4MS5wLTEyNworICB9LAorICB7IC8vIEVudHJ5IDM0OQorICAgIC0weDEucC0xMjcsCisgICAgLTB4MS5wLTEyNworICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS4wMDAwMDRwLTEyNywKKyAgICAweDEuMDAwMDA0cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAtMHgxLjAwMDAwNHAtMTI3LAorICAgIC0weDEuMDAwMDA0cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTIKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzUzCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIDB4MS4wMDAwMDJwLTEyNiwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAtMHgxLjAwMDAwMnAtMTI2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAtMHgxLjAwMDAwMnAtMTI2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAweDEuMDAwMDAycC0xMjYsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzYxCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDM2MworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIDB4MS4wMDAwMDJwLTEyNiwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAtMHgxLjAwMDAwMnAtMTI2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzUKKyAgICAweDEuZmZmZmZlMDAwMDAwMDAwNTU1NTU0NTU1NTU2NTU1N2JwLTMxLAorICAgIDB4MS5mZmZmZmVwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMDA1NTU1NTQ1NTU1NTY1NTU3YnAtMzEsCisgICAgLTB4MS5mZmZmZmVwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDJhYWFhYWFhYWFhYWFhYWJkcC0zMCwKKyAgICAweDEucC0zMAorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwMmFhYWFhYWFhYWFhYWFhYmRwLTMwLAorICAgIC0weDEucC0zMAorICB9LAorICB7IC8vIEVudHJ5IDM3OQorICAgIDB4MS4wMDAwMDIwMDAwMDAwMDAyYWFhYWJhYWFhYWNhYWFiZHAtMzAsCisgICAgMHgxLjAwMDAwMnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODAKKyAgICAtMHgxLjAwMDAwMjAwMDAwMDAwMDJhYWFhYmFhYWFhY2FhYWJkcC0zMCwKKyAgICAtMHgxLjAwMDAwMnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODEKKyAgICAweDEuZmZmZmZlMDAwMDAwMDE1NTU1NTE1NTU1NTk1N2JiYmFwLTI4LAorICAgIDB4MS5mZmZmZmVwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMTU1NTU1MTU1NTU1OTU3YmJiYXAtMjgsCisgICAgLTB4MS5mZmZmZmVwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwYWFhYWFhYWFhYWFhYWJkZGRkcC0yNywKKyAgICAweDEucC0yNworICB9LAorICB7IC8vIEVudHJ5IDM4NAorICAgIC0weDEuMDAwMDAwMDAwMDAwMDBhYWFhYWFhYWFhYWFhYmRkZGRwLTI3LAorICAgIC0weDEucC0yNworICB9LAorICB7IC8vIEVudHJ5IDM4NQorICAgIDB4MS4wMDAwMDIwMDAwMDAwMGFhYWFhZWFhYWFiMmFiZGRlM3AtMjcsCisgICAgMHgxLjAwMDAwMnAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODYKKyAgICAtMHgxLjAwMDAwMjAwMDAwMDAwYWFhYWFlYWFhYWIyYWJkZGUzcC0yNywKKyAgICAtMHgxLjAwMDAwMnAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODcKKyAgICAweDEuZmZmZmZlMDAwMDAwMTU1NTU1MTU1NTU1OTdiYmJiOWFwLTI2LAorICAgIDB4MS5mZmZmZmVwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgLTB4MS5mZmZmZmUwMDAwMDAxNTU1NTUxNTU1NTU5N2JiYmI5YXAtMjYsCisgICAgLTB4MS5mZmZmZmVwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzg5CisgICAgMHgxLjAwMDAwMDAwMDAwMDBhYWFhYWFhYWFhYWFiZGRkZGRkcC0yNSwKKyAgICAweDEucC0yNQorICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIC0weDEuMDAwMDAwMDAwMDAwMGFhYWFhYWFhYWFhYWJkZGRkZGRwLTI1LAorICAgIC0weDEucC0yNQorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS4wMDAwMDIwMDAwMDAwYWFhYWFlYWFhYWIyYmRkZGUzZnAtMjUsCisgICAgMHgxLjAwMDAwMnAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAtMHgxLjAwMDAwMjAwMDAwMDBhYWFhYWVhYWFhYjJiZGRkZTNmcC0yNSwKKyAgICAtMHgxLjAwMDAwMnAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAweDEuZmZmZmZlMDU1NTU1NDU3YmJiY2FmZDI5NmViN2UzYWFwLTE1LAorICAgIDB4MS5mZmZmZmVwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgMzk0CisgICAgLTB4MS5mZmZmZmUwNTU1NTU0NTdiYmJjYWZkMjk2ZWI3ZTNhYXAtMTUsCisgICAgLTB4MS5mZmZmZmVwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgMzk1CisgICAgMHgxLjAwMDAwMDAyYWFhYWFhYmRkZGRkZGU5NGI5NGI5YzgwcC0xNCwKKyAgICAweDEucC0xNAorICB9LAorICB7IC8vIEVudHJ5IDM5NgorICAgIC0weDEuMDAwMDAwMDJhYWFhYWFiZGRkZGRkZTk0Yjk0YjljODBwLTE0LAorICAgIC0weDEucC0xNAorICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIDB4MS4wMDAwMDIwMmFhYWFiYWJkZGRmZTllOTRkMWFhZjFkYnAtMTQsCisgICAgMHgxLjAwMDAwMnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTgKKyAgICAtMHgxLjAwMDAwMjAyYWFhYWJhYmRkZGZlOWU5NGQxYWFmMWRicC0xNCwKKyAgICAtMHgxLjAwMDAwMnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTkKKyAgICAweDEuMDAwMmE5YmRkNjk0NjExNjBkNGM3NTQ1MTcwNGEzYjdwLTYsCisgICAgMHgxLmZmZmZmZXAtNworICB9LAorICB7IC8vIEVudHJ5IDQwMAorICAgIC0weDEuMDAwMmE5YmRkNjk0NjExNjBkNGM3NTQ1MTcwNGEzYjdwLTYsCisgICAgLTB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAweDEuMDAwMmFhYmRkZTk0YzExMzBjZDI2Y2RmYTM3N2Y5NjdwLTYsCisgICAgMHgxLnAtNgorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIC0weDEuMDAwMmFhYmRkZTk0YzExMzBjZDI2Y2RmYTM3N2Y5NjdwLTYsCisgICAgLTB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAweDEuMDAwMmFjYmRlZTk1ODEzZDEwNWVjNjFmY2Q2YWUyZmFwLTYsCisgICAgMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIC0weDEuMDAwMmFjYmRlZTk1ODEzZDEwNWVjNjFmY2Q2YWUyZmFwLTYsCisgICAgLTB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAweDEuMDAwYWFhZGRlYjk2ODBiNjlmMzk0NDgzMDVjODc3NDFwLTUsCisgICAgMHgxLmZmZmZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIC0weDEuMDAwYWFhZGRlYjk2ODBiNjlmMzk0NDgzMDVjODc3NDFwLTUsCisgICAgLTB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICAweDEuMDAwYWFiZGUwYjljODFkNmQ5NDU1MWJlM2U5MjRlMmFwLTUsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIC0weDEuMDAwYWFiZGUwYjljODFkNmQ5NDU1MWJlM2U5MjRlMmFwLTUsCisgICAgLTB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAweDEuMDAwYWFkZGU0YmE4ODRkNzk1NzQzMzBlYWViN2QxMzJwLTUsCisgICAgMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIC0weDEuMDAwYWFkZGU0YmE4ODRkNzk1NzQzMzBlYWViN2QxMzJwLTUsCisgICAgLTB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTEKKyAgICAweDEuMDAyYWJjZThkMzAxNDQ5YjNhNmUxMzc1NjQ1ZWI4NTNwLTQsCisgICAgMHgxLmZmZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDQxMgorICAgIC0weDEuMDAyYWJjZThkMzAxNDQ5YjNhNmUxMzc1NjQ1ZWI4NTNwLTQsCisgICAgLTB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTMKKyAgICAweDEuMDAyYWJkZTk1MzYxOTQ2MGI4YjcxYjc3YmI0OTVmNTdwLTQsCisgICAgMHgxLnAtNAorICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIC0weDEuMDAyYWJkZTk1MzYxOTQ2MGI4YjcxYjc3YmI0OTVmNTdwLTQsCisgICAgLTB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTUKKyAgICAweDEuMDAyYWJmZWE1NDIyMzZmMDNhZjBjNzcwMDA2MTg0ZTBwLTQsCisgICAgMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDQxNgorICAgIC0weDEuMDAyYWJmZWE1NDIyMzZmMDNhZjBjNzcwMDA2MTg0ZTBwLTQsCisgICAgLTB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAweDEuMDBhYmRmYmYyM2NkOWJjYjA5MDhiNjdjMjliZDFkODRwLTMsCisgICAgMHgxLmZmZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDQxOAorICAgIC0weDEuMDBhYmRmYmYyM2NkOWJjYjA5MDhiNjdjMjliZDFkODRwLTMsCisgICAgLTB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTkKKyAgICAweDEuMDBhYmUwYzEyOWUxZTBiZTc1ODc3MjRlYTE0ZTAzYjFwLTMsCisgICAgMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIC0weDEuMDBhYmUwYzEyOWUxZTBiZTc1ODc3MjRlYTE0ZTAzYjFwLTMsCisgICAgLTB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjEKKyAgICAweDEuMDBhYmUyYzUzNjBhNzZlZWJkMzc0MDg3ZTEzZDA3NzhwLTMsCisgICAgMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDQyMgorICAgIC0weDEuMDBhYmUyYzUzNjBhNzZlZWJkMzc0MDg3ZTEzZDA3NzhwLTMsCisgICAgLTB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAweDEuMDJiZTliZDg1MzMyYWQ2NjkwMTViNDhmMTI4MWNkOGVwLTIsCisgICAgMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDQyNAorICAgIC0weDEuMDJiZTliZDg1MzMyYWQ2NjkwMTViNDhmMTI4MWNkOGVwLTIsCisgICAgLTB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAweDEuMDJiZTljZTBiODdjZDFlNWQwOWRhMmUwZjA0MjNiZmFwLTIsCisgICAgMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIC0weDEuMDJiZTljZTBiODdjZDFlNWQwOWRhMmUwZjA0MjNiZmFwLTIsCisgICAgLTB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAweDEuMDJiZTllZjE4MzExNGZjNTYwOTg4MzA2Zjg4N2FjNzRwLTIsCisgICAgMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIC0weDEuMDJiZTllZjE4MzExNGZjNTYwOTg4MzA2Zjg4N2FjNzRwLTIsCisgICAgLTB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEuMGMxNTIyNWIzY2MyMzA4NzkyODcwNDM4ZWJmZDU4MTRwLTEsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIC0weDEuMGMxNTIyNWIzY2MyMzA4NzkyODcwNDM4ZWJmZDU4MTRwLTEsCisgICAgLTB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAweDEuMGMxNTIzODJkNzM2NTg0NjViYjMyZTBmNTY3YWQxMTZwLTEsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzMgorICAgIC0weDEuMGMxNTIzODJkNzM2NTg0NjViYjMyZTBmNTY3YWQxMTZwLTEsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzMKKyAgICAweDEuMGMxNTI1ZDIwYzFmY2Y1ZTYzMjk5NjkyMmYyOGRiZjRwLTEsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIC0weDEuMGMxNTI1ZDIwYzFmY2Y1ZTYzMjk5NjkyMmYyOGRiZjRwLTEsCisgICAgLTB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAweDEuOTIwOTE0YTVkYTZmOTBiZWFjNzU1Y2Y4MWFkZDM3MDdwMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDM2CisgICAgLTB4MS45MjA5MTRhNWRhNmY5MGJlYWM3NTVjZjgxYWRkMzcwN3AwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDM3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzkKKyAgICAweDEuOTIxZmFmMDkxODkzODQ2OTYxM2E0MDY2ODZkMzI1ZmJwLTEsCisgICAgMHgxLjZhMDllMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0MAorICAgIC0weDEuOTIxZmFmMDkxODkzODQ2OTYxM2E0MDY2ODZkMzI1ZmJwLTEsCisgICAgLTB4MS42YTA5ZTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDEKKyAgICAweDEuOTIxZmIxZGQyYzU5ODQ2OTgyZmJkMjFlMTJiNjI5NTdwLTEsCisgICAgMHgxLjZhMDllNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIC0weDEuOTIxZmIxZGQyYzU5ODQ2OTgyZmJkMjFlMTJiNjI5NTdwLTEsCisgICAgLTB4MS42YTA5ZTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDMKKyAgICAweDEuOTIxZmI0YjE0MDIzODQ2OTg5ODRiMDk5NjZmOTZkZTZwLTEsCisgICAgMHgxLjZhMDllNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0NAorICAgIC0weDEuOTIxZmI0YjE0MDIzODQ2OTg5ODRiMDk5NjZmOTZkZTZwLTEsCisgICAgLTB4MS42YTA5ZTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDUKKyAgICAweDEuOTIxZmI3ODU1M2YxODQ2OThiNzU3OWI4MDc3NTRmYjFwLTEsCisgICAgMHgxLjZhMDllOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIC0weDEuOTIxZmI3ODU1M2YxODQ2OThiNzU3OWI4MDc3NTRmYjFwLTEsCisgICAgLTB4MS42YTA5ZThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDcKKyAgICAweDEuOTIxZmJhNTk2N2MzODQ2OTlmNmVjYzE5NzgwMDU2MmRwLTEsCisgICAgMHgxLjZhMDllYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIC0weDEuOTIxZmJhNTk2N2MzODQ2OTlmNmVjYzE5NzgwMDU2MmRwLTEsCisgICAgLTB4MS42YTA5ZWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDkKKyAgICAweDEuMGMxNTFlZmQ1MjdkNjVhMjYyNWYzYjY1ODc3YWY1YzFwMCwKKyAgICAweDEuYmI2N2FhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgLTB4MS4wYzE1MWVmZDUyN2Q2NWEyNjI1ZjNiNjU4NzdhZjVjMXAwLAorICAgIC0weDEuYmI2N2FhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgMHgxLjBjMTUyMGZkNTI3MTMyYWYwZTUxNGFmNWQ3NzZkODYxcDAsCisgICAgMHgxLmJiNjdhY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1MgorICAgIC0weDEuMGMxNTIwZmQ1MjcxMzJhZjBlNTE0YWY1ZDc3NmQ4NjFwMCwKKyAgICAtMHgxLmJiNjdhY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1MworICAgIDB4MS4wYzE1MjJmZDUyNmJlZDVhMGY3Y2IzMjhiYTVjMzk5MXAwLAorICAgIDB4MS5iYjY3YWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTQKKyAgICAtMHgxLjBjMTUyMmZkNTI2YmVkNWEwZjdjYjMyOGJhNWMzOTkxcDAsCisgICAgLTB4MS5iYjY3YWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAweDEuMGMxNTI0ZmQ1MjZkOTVhM2I1ZTE2ZjhiYjA5ZDI0MjhwMCwKKyAgICAweDEuYmI2N2IwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDU2CisgICAgLTB4MS4wYzE1MjRmZDUyNmQ5NWEzYjVlMTZmOGJiMDlkMjQyOHAwLAorICAgIC0weDEuYmI2N2IwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDU3CisgICAgMHgxLjBjMTUyNmZkNTI3NjJiOGM1MTdmODE4NGI4NzBiZjZkcDAsCisgICAgMHgxLmJiNjdiMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1OAorICAgIC0weDEuMGMxNTI2ZmQ1Mjc2MmI4YzUxN2Y4MTg0Yjg3MGJmNmRwMCwKKyAgICAtMHgxLmJiNjdiMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1OQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDQ2MAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgMHgxLjkyMDkxNGE1ZGE2ZjkwYmVhYzc1NWNmODFhZGQzNzA3cDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ2MgorICAgIC0weDEuOTIwOTE0YTVkYTZmOTBiZWFjNzU1Y2Y4MWFkZDM3MDdwMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ2MworICAgIDB4MS5jZTgyNzdmMzJkYTJjNWVlN2VhMzI1NzkzZmQ3Y2NkMXAtMSwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDY0CisgICAgLTB4MS5jZTgyNzdmMzJkYTJjNWVlN2VhMzI1NzkzZmQ3Y2NkMXAtMSwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ2NQorICAgIDB4MS4wMDAwMDJwLTEyNiwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjYKKyAgICAtMHgxLjAwMDAwMnAtMTI2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjcKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNDY4CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNDY5CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDQ3MQorICAgIDB4MS5mZmZmZjhwLTEyNywKKyAgICAweDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzIKKyAgICAtMHgxLmZmZmZmOHAtMTI3LAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzMKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNDc0CisgICAgLTB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNDc1CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ3NgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ3NworICAgIDAuMCwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgLTAuMCwKKyAgICAtMC4wZgorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2FzaW5oX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9hc2luaF9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOThlZmY4NgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9hc2luaF9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwyMDQyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZG91YmxlLCBkb3VibGU+IGdfYXNpbmhfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS5mMmViYTVlYjViNTNjODAzMzAxYzBmODI3OWVmZDM4Y3AtMiwKKyAgICAtMHgxLjAzNzJhZTExYzVhNTNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLmYyZWJhNWViNWI1M2M4MDMzMDFjMGY4Mjc5ZWZkMzhjcC0yLAorICAgIDB4MS4wMzcyYWUxMWM1YTUzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIC0weDEuZjhkZjAyM2QyMDIxYmMzZDQwMGIzMTVhNTQ5NGQwMDZwLTIsCisgICAgLTB4MS4wNmM5YjI2YzliMjY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS5mOGRmMDIzZDIwMjFiYzNkNDAwYjMxNWE1NDk0ZDAwNnAtMiwKKyAgICAweDEuMDZjOWIyNmM5YjI2OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAtMHgxLmZiMjVkM2E3NjBhMTkzNzA2YjMyMjg0NDA4MjllZThmcC0yLAorICAgIC0weDEuMDgxMTZhMjdjMTA3OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuZmIyNWQzYTc2MGExOTM3MDZiMzIyODQ0MDgyOWVlOGZwLTIsCisgICAgMHgxLjA4MTE2YTI3YzEwNzhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgLTB4MS5mZWMzNWIzZTcyMTVhMzcyNGZlZWNkYjI1MTg4OTljZXAtMiwKKyAgICAtMHgxLjBhMWE4NmExYTg3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS5mZWMzNWIzZTcyMTVhMzcyNGZlZWNkYjI1MTg4OTljZXAtMiwKKyAgICAweDEuMGExYTg2YTFhODdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIC0weDEuZmY5NTFiYjdlZTdmN2ExZDlkY2YzMGZiMWY0N2JhZDZwLTIsCisgICAgLTB4MS4wYTkwYmUxYzE1OTQ5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuZmY5NTFiYjdlZTdmN2ExZDlkY2YzMGZiMWY0N2JhZDZwLTIsCisgICAgMHgxLjBhOTBiZTFjMTU5NDlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIC0weDEuM2I2MGE0NDYwYTJkMjgwMDg4M2ViNWRlZDNiZTRkZjBwMiwKKyAgICAtMHgxLjE0MjEwODQyMTA4NDhwNgorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLjNiNjBhNDQ2MGEyZDI4MDA4ODNlYjVkZWQzYmU0ZGYwcDIsCisgICAgMHgxLjE0MjEwODQyMTA4NDhwNgorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgLTB4MS4xMzhhZWFiMDE3NDg4ODA0YjMzOGU5YWMwOTlhYjY4N3AtMiwKKyAgICAtMHgxLjE2ZTE0MDBkYjg4YThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS4xMzhhZWFiMDE3NDg4ODA0YjMzOGU5YWMwOTlhYjY4N3AtMiwKKyAgICAweDEuMTZlMTQwMGRiODhhOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgLTB4MS5mZGJhY2RjOGE2NjQzN2ZmMGM5M2Q5NzY3YTQ1Y2IwY3AtMSwKKyAgICAtMHgxLjJiMWE1MzI5NzE1NjhwMAorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLmZkYmFjZGM4YTY2NDM3ZmYwYzkzZDk3NjdhNDVjYjBjcC0xLAorICAgIDB4MS4yYjFhNTMyOTcxNTY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIC0weDEuMjQ1MDFkY2JjZTgzZjgxMjZjNjFiYWNiYjhhMjdjZWRwMSwKKyAgICAtMHgxLjM2YzAzOTA0YThlNGVwMgorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjI0NTAxZGNiY2U4M2Y4MTI2YzYxYmFjYmI4YTI3Y2VkcDEsCisgICAgMHgxLjM2YzAzOTA0YThlNGVwMgorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgLTB4MS41ZDM2ZjIyZjlkMzQyZmY4ZGE2YmEyYjE3YjQ3NGRiOHAtMywKKyAgICAtMHgxLjVlZThjYjNjNzgxYzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS41ZDM2ZjIyZjlkMzQyZmY4ZGE2YmEyYjE3YjQ3NGRiOHAtMywKKyAgICAweDEuNWVlOGNiM2M3ODFjMHAtMworICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS41MmI2NjcyYjAyNGZlMDAwYWUxNDRmYzlhZmFlYWY1MXAtMSwKKyAgICAtMHgxLjZiZjZmZGJmNmZkMjRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS41MmI2NjcyYjAyNGZlMDAwYWUxNDRmYzlhZmFlYWY1MXAtMSwKKyAgICAweDEuNmJmNmZkYmY2ZmQyNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgLTB4MS4zOTkzZDYzYWNjNGJhODAzNWQyYjQyMGIxMTU4Zjk5M3AxLAorICAgIC0weDEuNzAwMDAwMDAwMDBmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuMzk5M2Q2M2FjYzRiYTgwMzVkMmI0MjBiMTE1OGY5OTNwMSwKKyAgICAweDEuNzAwMDAwMDAwMDBmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAtMHgxLjk3NTgwMzUxMTAzMzYyODY3YWNjZTUwNGZlZTQyNDVkcC05LAorICAgIC0weDEuOTc1ODJlNGExMTVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS45NzU4MDM1MTEwMzM2Mjg2N2FjY2U1MDRmZWU0MjQ1ZHAtOSwKKyAgICAweDEuOTc1ODJlNGExMTVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIC0weDEuOTdiM2RhMmM5ODVkYzdlMDRlYmU2YjBkNjJhNTUxM2FwLTMsCisgICAgLTB4MS45YTY2OTlhNjY5OWIwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuOTdiM2RhMmM5ODVkYzdlMDRlYmU2YjBkNjJhNTUxM2FwLTMsCisgICAgMHgxLjlhNjY5OWE2Njk5YjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEuOTJhMzM4YWRhMDdjMWI1MzFhOTg2N2M5YTIzNWQ1MDJwLTIsCisgICAgLTB4MS45ZDE3ZDlmY2FkNzY4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuOTJhMzM4YWRhMDdjMWI1MzFhOTg2N2M5YTIzNWQ1MDJwLTIsCisgICAgMHgxLjlkMTdkOWZjYWQ3NjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIC0weDEuNGM3Njg1OGI5ODAyMTdhMjQwYTVjNzRhMjU4OGU2MzBwMSwKKyAgICAtMHgxLmFiNTJkZDA4ZjM0ZjRwMgorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLjRjNzY4NThiOTgwMjE3YTI0MGE1Yzc0YTI1ODhlNjMwcDEsCisgICAgMHgxLmFiNTJkZDA4ZjM0ZjRwMgorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgLTB4MS5jMDZmMzZiMWJkZmJmNjYzOGQyZDZjZGM5YmM2MzA4M3AtOCwKKyAgICAtMHgxLmMwNzAxYzA3MDFlcC04CisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEuYzA2ZjM2YjFiZGZiZjY2MzhkMmQ2Y2RjOWJjNjMwODNwLTgsCisgICAgMHgxLmMwNzAxYzA3MDFlcC04CisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIC0weDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuNDE5ZWNiNzEyYzQ4MGY4YjVkZWNiNTgzODZkZWRkOWRwNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwM3AyOAorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS40MTllY2I3MTJjNDgwZjhiNWRlY2I1ODM4NmRlZGQ5ZHA0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwM3AyOAorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLmVjYzJjYWVjNTE2MTYxYTVlOGFhNDQyYTUwNzhkNWNmcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDA3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAtMHgxLmVjYzJjYWVjNTE2MTYxYTVlOGFhNDQyYTUwNzhkNWNmcC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAwN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLmZhY2ZiMjM5OWU2NzRmZmE3MDJiYjNjODhiNTEzMDYzcC0zLAorICAgIDB4MS4wMDAwMDAwMDAwMDIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAtMHgxLmZhY2ZiMjM5OWU2NzRmZmE3MDJiYjNjODhiNTEzMDYzcC0zLAorICAgIC0weDEuMDAwMDAwMDAwMDAyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLmZmZmFhYWQxMGZiZjY4ZTMyZjgwNDg3MzQyZTU2MDkxcC03LAorICAgIDB4MS4wMDAwMDAwMDAwMGUwcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAtMHgxLmZmZmFhYWQxMGZiZjY4ZTMyZjgwNDg3MzQyZTU2MDkxcC03LAorICAgIC0weDEuMDAwMDAwMDAwMDBlMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLmZmZWFhZDEwYjVlYWRlOTM0ZDY3N2IyM2MyYjdmMWYxcC02LAorICAgIDB4MS4wMDAwMDAwMDAwMWMwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAtMHgxLmZmZWFhZDEwYjVlYWRlOTM0ZDY3N2IyM2MyYjdmMWYxcC02LAorICAgIC0weDEuMDAwMDAwMDAwMDFjMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLmMzNDM2NjE3YTE4MDhhNzRlOWNiNDRlMDc4NTIyMzEwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAzMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAtMHgxLmMzNDM2NjE3YTE4MDhhNzRlOWNiNDRlMDc4NTIyMzEwcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMzBwMAorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLmZmZmZlYWFhY2I3YjBjZTg2NDIwM2Y3OThjMGNlMzlkcC0xMCwKKyAgICAweDEuMDAwMDAwMDAwZjM1MHAtOQorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgLTB4MS5mZmZmZWFhYWNiN2IwY2U4NjQyMDNmNzk4YzBjZTM5ZHAtMTAsCisgICAgLTB4MS4wMDAwMDAwMDBmMzUwcC05CisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuZmZmZmVhYWFjZDMxMGNiMWE0MmE4MzcwYjg4ZTFkNjBwLTEwLAorICAgIDB4MS4wMDAwMDAwMDEwMXAtOQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgLTB4MS5mZmZmZWFhYWNkMzEwY2IxYTQyYTgzNzBiODhlMWQ2MHAtMTAsCisgICAgLTB4MS4wMDAwMDAwMDEwMXAtOQorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLmZlYWQwYjY5ZDYxOGE4MTc0NzYyNGYzYzdjYTM4MzgycC00LAorICAgIDB4MS4wMDAwMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEuZmVhZDBiNjlkNjE4YTgxNzQ3NjI0ZjNjN2NhMzgzODJwLTQsCisgICAgLTB4MS4wMDAwMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS5mZmVhYWQxMTMxYTM2ODc5NjJjYjhjYTBhNjRmNGM2MHAtNiwKKyAgICAweDEuMDAwMDAwMDAzZTBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEuZmZlYWFkMTEzMWEzNjg3OTYyY2I4Y2EwYTY0ZjRjNjBwLTYsCisgICAgLTB4MS4wMDAwMDAwMDNlMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLmZmZWFhZDExMzVhMmU4OTE1ZGNjNjU3OTRkNWMxMjE2cC02LAorICAgIDB4MS4wMDAwMDAwMDRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuZmZlYWFkMTEzNWEyZTg5MTVkY2M2NTc5NGQ1YzEyMTZwLTYsCisgICAgLTB4MS4wMDAwMDAwMDRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5mZWFkMGI2ZDBmYWJlN2Y3OTQwYTE3MmM4MWIyMTZhMnAtNCwKKyAgICAweDEuMDAwMDAwMDFjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLmZlYWQwYjZkMGZhYmU3Zjc5NDBhMTcyYzgxYjIxNmEycC00LAorICAgIC0weDEuMDAwMDAwMDFjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuNzE5MjE4MzY5YWRmODgwMDAzOTJkN2RjODUxOGExOGZwMCwKKyAgICAweDEuMDAwMDAwMDYwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuNzE5MjE4MzY5YWRmODgwMDAzOTJkN2RjODUxOGExOGZwMCwKKyAgICAtMHgxLjAwMDAwMDA2MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEuZWNjMmNhZmFiMjhmMTAwMDAwNThkNzU3ZDYyYmUwZjJwLTIsCisgICAgMHgxLjAwMDAwMDA4MDlkN2RwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuZWNjMmNhZmFiMjhmMTAwMDAwNThkNzU3ZDYyYmUwZjJwLTIsCisgICAgLTB4MS4wMDAwMDAwODA5ZDdkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuZmZlYWJiMGVmNjA2YzdkYTY3NDU5NDI4MTQ5YWRiYWRwLTYsCisgICAgMHgxLjAwMDAwNzBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEuZmZlYWJiMGVmNjA2YzdkYTY3NDU5NDI4MTQ5YWRiYWRwLTYsCisgICAgLTB4MS4wMDAwMDcwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuMGMxZjk4MDM3ZGRiOTdmZjNjNTA2OGIzMTZhMDAxNjVwMSwKKyAgICAweDEuMDAwMDFjMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLjBjMWY5ODAzN2RkYjk3ZmYzYzUwNjhiMzE2YTAwMTY1cDEsCisgICAgLTB4MS4wMDAwMWMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS5mYWQwNmM3ZTBlMGE3MDAzYjExNDBiYzk1YWI0MDVmZnAtMywKKyAgICAweDEuMDAwMDZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIC0weDEuZmFkMDZjN2UwZTBhNzAwM2IxMTQwYmM5NWFiNDA1ZmZwLTMsCisgICAgLTB4MS4wMDAwNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLmMzNDRkMDIxMjkyN2Y1ZmE0MmEzZGQ5MGM4NDVhYWZlcC0xLAorICAgIDB4MS4wMDAxMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMHgxLmMzNDRkMDIxMjkyN2Y1ZmE0MmEzZGQ5MGM4NDVhYWZlcC0xLAorICAgIC0weDEuMDAwMTBwMAorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLjU1MDc2NjBmNDc0NTY4MDBkOTEyNThlODc1NWJkNWY0cDcsCisgICAgMHgxLjAwMXAyNDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuNTUwNzY2MGY0NzQ1NjgwMGQ5MTI1OGU4NzU1YmQ1ZjRwNywKKyAgICAtMHgxLjAwMXAyNDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS4yMTBhZTEwYTZjYzU5ZmJiODAyMDE2N2FiMWRmZmNjYXA5LAorICAgIDB4MS4wMDFwODMzCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLjIxMGFlMTBhNmNjNTlmYmI4MDIwMTY3YWIxZGZmY2NhcDksCisgICAgLTB4MS4wMDFwODMzCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuZDVmNDViNzVkNjNiNjgwMDAxZDEzYWMxZGJlNTYyYmNwOCwKKyAgICAweDEuMDAzcDY3NworICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS5kNWY0NWI3NWQ2M2I2ODAwMDFkMTNhYzFkYmU1NjJiY3A4LAorICAgIC0weDEuMDAzcDY3NworICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLmZmYjNjMDQ0MTU3MzE4NDQ5ODEyYTU1N2JjZjE3MDZhcC00LAorICAgIDB4MS4wMDg0NjBhNDRmZmMxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLmZmYjNjMDQ0MTU3MzE4NDQ5ODEyYTU1N2JjZjE3MDZhcC00LAorICAgIC0weDEuMDA4NDYwYTQ0ZmZjMXAtMworICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLmVkYjUwNDM2NzIzZDQ3NTkzOTBkNjQ1NmMyZThhZGY1cC0yLAorICAgIDB4MS4wMDg3NmY2OWVjNTJmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLmVkYjUwNDM2NzIzZDQ3NTkzOTBkNjQ1NmMyZThhZGY1cC0yLAorICAgIC0weDEuMDA4NzZmNjllYzUyZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLjQxYmI0MWMzZjE3ZGE4MDRlOWFkMTRmNGJkNzViYWNlcDQsCisgICAgMHgxLjAxYzhmYjI5NTFjYTRwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuNDFiYjQxYzNmMTdkYTgwNGU5YWQxNGY0YmQ3NWJhY2VwNCwKKyAgICAtMHgxLjAxYzhmYjI5NTFjYTRwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS5jNmRmZTc5NzU2NWY1N2ZmZmY3YTg3MTNkMDMyYzA5NnAtMSwKKyAgICAweDEuMDI4ZjVjMmEzMDM0MnAwCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAtMHgxLmM2ZGZlNzk3NTY1ZjU3ZmZmZjdhODcxM2QwMzJjMDk2cC0xLAorICAgIC0weDEuMDI4ZjVjMmEzMDM0MnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuYzZkZmU3OWFmYWU3YWZmZmZmYTMxMTdkMzgxOGVlZWNwLTEsCisgICAgMHgxLjAyOGY1YzJjYzZlOGJwMAorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS5jNmRmZTc5YWZhZTdhZmZmZmZhMzExN2QzODE4ZWVlY3AtMSwKKyAgICAtMHgxLjAyOGY1YzJjYzZlOGJwMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLmYxNTg5NzcwNWM1NDk3ZmQwNzJjNDY3ZWUzODVjN2EwcC0yLAorICAgIDB4MS4wMjkwZDUyYzZlOTFjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAtMHgxLmYxNTg5NzcwNWM1NDk3ZmQwNzJjNDY3ZWUzODVjN2EwcC0yLAorICAgIC0weDEuMDI5MGQ1MmM2ZTkxY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLmYxNzYwNDIxNzQzNDI1ZmVlYzQ0Mzk4MDVlY2QxZmM1cC0yLAorICAgIDB4MS4wMmExNTBhODU0MmEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAtMHgxLmYxNzYwNDIxNzQzNDI1ZmVlYzQ0Mzk4MDVlY2QxZmM1cC0yLAorICAgIC0weDEuMDJhMTUwYTg1NDJhMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLmY2YmM3OWM4N2MwMmVjMjYxYWU3MDM2MTgxMDUxM2JmcC0yLAorICAgIDB4MS4wNTk2YWYzNjNlZTVhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAtMHgxLmY2YmM3OWM4N2MwMmVjMjYxYWU3MDM2MTgxMDUxM2JmcC0yLAorICAgIC0weDEuMDU5NmFmMzYzZWU1YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLjc4YTZjZjdiMzAzNWJjZTRlMDYzYWJkMWFiMDBjNDMycDAsCisgICAgMHgxLjA4MDQwMjAxMDA4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIC0weDEuNzhhNmNmN2IzMDM1YmNlNGUwNjNhYmQxYWIwMGM0MzJwMCwKKyAgICAtMHgxLjA4MDQwMjAxMDA4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuZmIxOGUyMzJkZThjZDdmYjBhN2M3ZDQwYzIxMDA0MTVwLTIsCisgICAgMHgxLjA4MGEyMjEzYzVkN2ZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAtMHgxLmZiMThlMjMyZGU4Y2Q3ZmIwYTdjN2Q0MGMyMTAwNDE1cC0yLAorICAgIC0weDEuMDgwYTIyMTNjNWQ3ZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS5mYzM2YzI0OGM4NTJhN2ZmZGRjOTA2MmQ5ZTc2NGY0YnAtMiwKKyAgICAweDEuMDhhYWZmYjA5OTg2M3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuZmMzNmMyNDhjODUyYTdmZmRkYzkwNjJkOWU3NjRmNGJwLTIsCisgICAgLTB4MS4wOGFhZmZiMDk5ODYzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjBmMjhlZGQ0NDc2MTE2ZDY2Y2E3OGRjMzA5Y2Y4MGY5cC05LAorICAgIDB4MS4wZjI4ZmE4MTViNmM4cC05CisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTB4MS4wZjI4ZWRkNDQ3NjExNmQ2NmNhNzhkYzMwOWNmODBmOXAtOSwKKyAgICAtMHgxLjBmMjhmYTgxNWI2YzhwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuMTUxZjQ0ZjJiNGY0MjdmZmZmN2E0MWMwMmM1Y2YzNTVwMSwKKyAgICAweDEuMTMzMzMzMzM1NDc5YXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgLTB4MS4xNTFmNDRmMmI0ZjQyN2ZmZmY3YTQxYzAyYzVjZjM1NXAxLAorICAgIC0weDEuMTMzMzMzMzM1NDc5YXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLmU0NmJmNjA4NjMwZjE3ZjMxODNhN2QxZGI1NTI5MTQ0cC0xLAorICAgIDB4MS4xODBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIC0weDEuZTQ2YmY2MDg2MzBmMTdmMzE4M2E3ZDFkYjU1MjkxNDRwLTEsCisgICAgLTB4MS4xODBwMAorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS40MzQyNjRjNmZjNjcwODAzNGEyNGM4ZTUyNGY1Njg3ZHA0LAorICAgIDB4MS4xYjlkODE5ZWJmOGNlcDI4CisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgLTB4MS40MzQyNjRjNmZjNjcwODAzNGEyNGM4ZTUyNGY1Njg3ZHA0LAorICAgIC0weDEuMWI5ZDgxOWViZjhjZXAyOAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS4xMDFmZjhhNzEzODgwYTM1MWY0N2M5NzRmMTJjZTU1ZXAtMSwKKyAgICAweDEuMWQxZTc0ZTMzMDkxMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIC0weDEuMTAxZmY4YTcxMzg4MGEzNTFmNDdjOTc0ZjEyY2U1NWVwLTEsCisgICAgLTB4MS4xZDFlNzRlMzMwOTExcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLjFhNDkzYWI4ODQ2MWQ3ZmQzYmVlYmExNzJmZjlhN2YwcC0yLAorICAgIDB4MS4xZGVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAtMHgxLjFhNDkzYWI4ODQ2MWQ3ZmQzYmVlYmExNzJmZjlhN2YwcC0yLAorICAgIC0weDEuMWRlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjEyZTA0NGMzYWIxNzE4MGJlYjY3ZmQzN2RkZTM4MThlcC0xLAorICAgIDB4MS4yMDQ1YTcwM2MyMzU4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgLTB4MS4xMmUwNDRjM2FiMTcxODBiZWI2N2ZkMzdkZGUzODE4ZXAtMSwKKyAgICAtMHgxLjIwNDVhNzAzYzIzNThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuMTM0ZjgzMDNmOGU3ZDc3OTJhOGNmY2FlMmFiMTg4YTNwLTEsCisgICAgMHgxLjIwYzU1N2IxZGExZDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAtMHgxLjEzNGY4MzAzZjhlN2Q3NzkyYThjZmNhZTJhYjE4OGEzcC0xLAorICAgIC0weDEuMjBjNTU3YjFkYTFkMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS4xM2E4OGY5MmYxNWRmNDMyMzZjMGFmMWY4NzAzZjFlM3AtMSwKKyAgICAweDEuMjEyYjk4N2I4NTAzNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIC0weDEuMTNhODhmOTJmMTVkZjQzMjM2YzBhZjFmODcwM2YxZTNwLTEsCisgICAgLTB4MS4yMTJiOTg3Yjg1MDM0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjE2ODA1ZTY2ZGViM2NmMGIxYzBlYzliNjBmZGI3ODk0cC0xLAorICAgIDB4MS4yNDcwOWI0YTdkZTU0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgLTB4MS4xNjgwNWU2NmRlYjNjZjBiMWMwZWM5YjYwZmRiNzg5NHAtMSwKKyAgICAtMHgxLjI0NzA5YjRhN2RlNTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEuMjY1MTk1ZGI2MzU1ZGZmZjAxMjdiYmYxZTVlMTE3MDNwLTYsCisgICAgMHgxLjI2NTVhMzQzYWY5MjNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAtMHgxLjI2NTE5NWRiNjM1NWRmZmYwMTI3YmJmMWU1ZTExNzAzcC02LAorICAgIC0weDEuMjY1NWEzNDNhZjkyM3AtNgorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS40M2ZlMTU1MGRjNTczMDAyMzQ1NTQ2OWJiNGRkYjYzZnA0LAorICAgIDB4MS4yOGU5ZTMwMzNiMmQwcDI4CisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgLTB4MS40M2ZlMTU1MGRjNTczMDAyMzQ1NTQ2OWJiNGRkYjYzZnA0LAorICAgIC0weDEuMjhlOWUzMDMzYjJkMHAyOAorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS4yMThmODUxM2ViNGQyN2VjMDBiMTI5MWNmZGMxOGQ2N3AxLAorICAgIDB4MS4zMDAwMDAwMzZiZjk5cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAtMHgxLjIxOGY4NTEzZWI0ZDI3ZWMwMGIxMjkxY2ZkYzE4ZDY3cDEsCisgICAgLTB4MS4zMDAwMDAwMzZiZjk5cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuMjJhNTQzMDExMzZkZTdlZTVjZTg1ZWIwMTQ1NWE0ZWVwMSwKKyAgICAweDEuMzJhNGU2NzQ2OTdlN3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgLTB4MS4yMmE1NDMwMTEzNmRlN2VlNWNlODVlYjAxNDU1YTRlZXAxLAorICAgIC0weDEuMzJhNGU2NzQ2OTdlN3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLjI0MjkyZWYwMzEyODA4MGVkM2Q5YjA4ZGY0NGY2ZmI3cDEsCisgICAgMHgxLjM2NWZjNjk2ZmE1YjBwMgorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEuMjQyOTJlZjAzMTI4MDgwZWQzZDliMDhkZjQ0ZjZmYjdwMSwKKyAgICAtMHgxLjM2NWZjNjk2ZmE1YjBwMgorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS4yNTc1MTY5Yzg4NzA1N2ZmZmY3YTViMTllZTg2YTNkNXAxLAorICAgIDB4MS4zOTk5OTk5YTFhYjhjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMHgxLjI1NzUxNjljODg3MDU3ZmZmZjdhNWIxOWVlODZhM2Q1cDEsCisgICAgLTB4MS4zOTk5OTk5YTFhYjhjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuMjVkYzg2MzhiZGIyZjgwZmYxNjY4MDMxNDM4Yzk3NjVwMSwKKyAgICAweDEuM2E5Y2E0NWU2NmU5MXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS4yNWRjODYzOGJkYjJmODBmZjE2NjgwMzE0MzhjOTc2NXAxLAorICAgIC0weDEuM2E5Y2E0NWU2NmU5MXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLjI2NDA5ZmFlYTEyNDE3ZmQ1Y2E0Njc0MjU0MTQyZDkxcDEsCisgICAgMHgxLjNiOTgxN2EyNDc3N2VwMgorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuMjY0MDlmYWVhMTI0MTdmZDVjYTQ2NzQyNTQxNDJkOTFwMSwKKyAgICAtMHgxLjNiOTgxN2EyNDc3N2VwMgorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS40ZmZmZmZmZmZmOWY4ODAwMDAwMDRhYzgzOTMzMzJlNnAtMjAsCisgICAgMHgxLjVwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS40ZmZmZmZmZmZmOWY4ODAwMDAwMDRhYzgzOTMzMzJlNnAtMjAsCisgICAgLTB4MS41cC0yMAorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS4yZWU3ODM3NWEyMWU1ODBiNTcyOGMwMzhmYjIyNWM5ZnAxLAorICAgIDB4MS41MjE5MWQyNTVhNzkwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLjJlZTc4Mzc1YTIxZTU4MGI1NzI4YzAzOGZiMjI1YzlmcDEsCisgICAgLTB4MS41MjE5MWQyNTVhNzkwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAweDEuMzE4NWQwZjE2ZTZiNjgwN2EwOTViYjM5MmEzMzgyYjRwMSwKKyAgICAweDEuNTkzNTUyYTM0MGY0MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS4zMTg1ZDBmMTZlNmI2ODA3YTA5NWJiMzkyYTMzODJiNHAxLAorICAgIC0weDEuNTkzNTUyYTM0MGY0MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLjVhYTgzYzE3NGQwNzQ3ZDc0MzFjM2FlMjQ2ZjBhMGMwcC01LAorICAgIDB4MS41YWMyYjkwMTNmYmEwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS41YWE4M2MxNzRkMDc0N2Q3NDMxYzNhZTI0NmYwYTBjMHAtNSwKKyAgICAtMHgxLjVhYzJiOTAxM2ZiYTBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuMzM5ZjRjMmE5MDk4NjdmYjljMTBlNDMwMTExMjVhYTVwMSwKKyAgICAweDEuNWYwMzg4OGRiZjIwZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS4zMzlmNGMyYTkwOTg2N2ZiOWMxMGU0MzAxMTEyNWFhNXAxLAorICAgIC0weDEuNWYwMzg4OGRiZjIwZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLmJkMzhkZmUzNWQxYWNhYWU1Yzk1MDExOTQyNzBhMTM2cDAsCisgICAgMHgxLjYxMTNiNDk3MjkwYTBwMQorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEuYmQzOGRmZTM1ZDFhY2FhZTVjOTUwMTE5NDI3MGExMzZwMCwKKyAgICAtMHgxLjYxMTNiNDk3MjkwYTBwMQorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS5jMTA3NWEzNjNlNDEwYThmOTg4NDVjNzQzYmEzNzg3YXAwLAorICAgIDB4MS42NmIzNTlhY2Q2NjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAtMHgxLmMxMDc1YTM2M2U0MTBhOGY5ODg0NWM3NDNiYTM3ODdhcDAsCisgICAgLTB4MS42NmIzNTlhY2Q2NjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuYzI2MmMxMjc2NmUzMjU3OTk3OWI5NTU1YzExZTE3MjZwMCwKKyAgICAweDEuNjhiOTdhMzg5YjQ2Y3AxCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS5jMjYyYzEyNzY2ZTMyNTc5OTc5Yjk1NTVjMTFlMTcyNnAwLAorICAgIC0weDEuNjhiOTdhMzg5YjQ2Y3AxCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLjc0N2RmMjNmMDk4ZTFlYThiZmM4MWZhNWJlOGUwOTk4cC03LAorICAgIDB4MS43NDhwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLjc0N2RmMjNmMDk4ZTFlYThiZmM4MWZhNWJlOGUwOTk4cC03LAorICAgIC0weDEuNzQ4cC03CisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgMHgxLjczNGYzOWU1OTBmZjRjNTU4NzE0Y2UwNmEzZTBjZTEycC0yLAorICAgIDB4MS43YjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMHgxLjczNGYzOWU1OTBmZjRjNTU4NzE0Y2UwNmEzZTBjZTEycC0yLAorICAgIC0weDEuN2I4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLjg0ZWE1NGU5NWI3OWQ4MDA1MmQ0NDk2YTNiMjU3MDM3cC00LAorICAgIDB4MS44NThwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAtMHgxLjg0ZWE1NGU5NWI3OWQ4MDA1MmQ0NDk2YTNiMjU3MDM3cC00LAorICAgIC0weDEuODU4cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLjhjM2Q4NzIzYWZhN2Q3ZmU1YWFjOGM2NzMwMmMyMDE2cC03LAorICAgIDB4MS44YzRwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAtMHgxLjhjM2Q4NzIzYWZhN2Q3ZmU1YWFjOGM2NzMwMmMyMDE2cC03LAorICAgIC0weDEuOGM0cC03CisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLjZmZGFiMTA2NzFiZGIwNGVlMGI5ZTIyNTVlYTg5ZWU0cC0xLAorICAgIDB4MS45MDU0MTUwNTQxNThjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS42ZmRhYjEwNjcxYmRiMDRlZTBiOWUyMjU1ZWE4OWVlNHAtMSwKKyAgICAtMHgxLjkwNTQxNTA1NDE1OGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuNzcyMDRiMzA3NjE5OTdmZmZmOWYxNGJjYWRkNTA1MGVwLTEsCisgICAgMHgxLjk5OTk5OTlkZjMxZjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLjc3MjA0YjMwNzYxOTk3ZmZmZjlmMTRiY2FkZDUwNTBlcC0xLAorICAgIC0weDEuOTk5OTk5OWRmMzFmMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS44ZjY1NmI0OGZkYmI4ODAwMDA3ZmI1M2JjN2YyMjg1N3AtMiwKKyAgICAweDEuOTk5OTk5YThlMjQwNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuOGY2NTZiNDhmZGJiODgwMDAwN2ZiNTNiYzdmMjI4NTdwLTIsCisgICAgLTB4MS45OTk5OTlhOGUyNDA0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLjk4ZWI5ZWE4NTA0OTQ3ZmZmZjk3ZGFlZjIwOTAxNmYwcC00LAorICAgIDB4MS45OTk5OTljM2JmYWI5cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS45OGViOWVhODUwNDk0N2ZmZmY5N2RhZWYyMDkwMTZmMHAtNCwKKyAgICAtMHgxLjk5OTk5OWMzYmZhYjlwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAweDEuOThlYjllYWRkZmViYTAwMDAwOGUwZjEzYjViMzc2ZThwLTQsCisgICAgMHgxLjk5OTk5OWM5NTY2N2FwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLjk4ZWI5ZWFkZGZlYmEwMDAwMDhlMGYxM2I1YjM3NmU4cC00LAorICAgIC0weDEuOTk5OTk5Yzk1NjY3YXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIDB4MS43OTYzMzVjYTc3MmMyMjc0ZWRjZmVmOWMwZDdhZWEyYXAtMSwKKyAgICAweDEuOWM4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS43OTYzMzVjYTc3MmMyMjc0ZWRjZmVmOWMwZDdhZWEyYXAtMSwKKyAgICAtMHgxLjljOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS5hM2ZjNzBlNzhiNzJhZmZlYTc5OGZiMWVkOWUwMWIxMXAtNywKKyAgICAweDEuYTNmZjYyN2Y3ODlwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLmEzZmM3MGU3OGI3MmFmZmVhNzk4ZmIxZWQ5ZTAxYjExcC03LAorICAgIC0weDEuYTNmZjYyN2Y3ODlwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuNGYwYTg1YjBhZDQ4NTdmZjAwMWI0MTQwNjQ5MzkwMTZwOSwKKyAgICAweDEuYTZlZGZmN2E1ODNmOHA5NjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAtMHgxLjRmMGE4NWIwYWQ0ODU3ZmYwMDFiNDE0MDY0OTM5MDE2cDksCisgICAgLTB4MS5hNmVkZmY3YTU4M2Y4cDk2NQorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS40YzJiNDg0YmM0MTkwN2ZlNTFmYmYwZGI3ZWI2YzA1OHAxLAorICAgIDB4MS5hYTU1MmE5NTRhYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTB4MS40YzJiNDg0YmM0MTkwN2ZlNTFmYmYwZGI3ZWI2YzA1OHAxLAorICAgIC0weDEuYWE1NTJhOTU0YWFwMgorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS44OTY0ZDA3MGI0MmZmMmQwMjYwNzFmODcwZTMxMWIyNnAtMSwKKyAgICAweDEuYjE0MjdjZDk4OGI4Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIC0weDEuODk2NGQwNzBiNDJmZjJkMDI2MDcxZjg3MGUzMTFiMjZwLTEsCisgICAgLTB4MS5iMTQyN2NkOTg4YjhjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjRkMDI5MTQ5NTVkNjJmZmZmZjcxZGYwMzA0MzM1MGY0cDAsCisgICAgMHgxLmIzMzMzMzM3NTA2Y2FwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0weDEuNGQwMjkxNDk1NWQ2MmZmZmZmNzFkZjAzMDQzMzUwZjRwMCwKKyAgICAtMHgxLmIzMzMzMzM3NTA2Y2FwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS5iMDEwYWQzOGE4MGIyYWUwZmM0NTVmOWYxMzZlNzQ2ZHAtMiwKKyAgICAweDEuYmQwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgLTB4MS5iMDEwYWQzOGE4MGIyYWUwZmM0NTVmOWYxMzZlNzQ2ZHAtMiwKKyAgICAtMHgxLmJkMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS5jODU0M2E5YTljMjQzMTEyMzNhMzE1MjU1ZjVjNDY1MXAtOSwKKyAgICAweDEuYzg1NDc3MDRjYzk0YXAtOQorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuYzg1NDNhOWE5YzI0MzExMjMzYTMxNTI1NWY1YzQ2NTFwLTksCisgICAgLTB4MS5jODU0NzcwNGNjOTRhcC05CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLmM5YWMwYzc3N2ZmZjhmZjlkOGVlNzE1MzYyNzE3NmFicC00LAorICAgIDB4MS5jYWFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAtMHgxLmM5YWMwYzc3N2ZmZjhmZjlkOGVlNzE1MzYyNzE3NmFicC00LAorICAgIC0weDEuY2FhcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLmNhNmFkYWJhNjVlZmU3ZjIwZjg3MWRlMTA5NDdjZDVjcC00LAorICAgIDB4MS5jYjVmZmZmZmU3YTA2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5jYTZhZGFiYTY1ZWZlN2YyMGY4NzFkZTEwOTQ3Y2Q1Y3AtNCwKKyAgICAtMHgxLmNiNWZmZmZmZTdhMDZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEuY2E2YWRhYmE3ZTI4YTdmNTlmYTA3YjY5MmE5ZmUwZjlwLTQsCisgICAgMHgxLmNiNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuY2E2YWRhYmE3ZTI4YTdmNTlmYTA3YjY5MmE5ZmUwZjlwLTQsCisgICAgLTB4MS5jYjZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuZTFjNWMwY2EyNzlmNzdmZjA3ZjMxYjkzM2I1OGQxMmFwMiwKKyAgICAweDEuZDBiNDJkMGI0MmQwOHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTB4MS5lMWM1YzBjYTI3OWY3N2ZmMDdmMzFiOTMzYjU4ZDEyYXAyLAorICAgIC0weDEuZDBiNDJkMGI0MmQwOHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLmEzZThiNzFjYmEyOGQ3ZmVjM2QxYzY0NTRiYmJhOTlkcC0xLAorICAgIDB4MS5kNDk3NGVjYTMzM2MzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS5hM2U4YjcxY2JhMjhkN2ZlYzNkMWM2NDU0YmJiYTk5ZHAtMSwKKyAgICAtMHgxLmQ0OTc0ZWNhMzMzYzNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAweDEuZDRlZGUwMWYxMGFiNjdiMjExYzI3ODI3NGEzYzY0ZWFwLTUsCisgICAgMHgxLmQ1MmY3MWU5M2NiMjFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLmQ0ZWRlMDFmMTBhYjY3YjIxMWMyNzgyNzRhM2M2NGVhcC01LAorICAgIC0weDEuZDUyZjcxZTkzY2IyMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDB4MS5hNjZiNmMxODFhNTdlZWM4OWE4NTZkYWI4ODI2MGM4NXAtMSwKKyAgICAweDEuZDgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS5hNjZiNmMxODFhNTdlZWM4OWE4NTZkYWI4ODI2MGM4NXAtMSwKKyAgICAtMHgxLmQ4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS5kYTQ5M2FmYTVmN2IxODM0YzBhYzkxMjllYTNmODQ4MXAtNSwKKyAgICAweDEuZGE4ZDEyYjExMTg1M3AtNQorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0weDEuZGE0OTNhZmE1ZjdiMTgzNGMwYWM5MTI5ZWEzZjg0ODFwLTUsCisgICAgLTB4MS5kYThkMTJiMTExODUzcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLmQ4NmM5MzA4OGJjZDg5YzNhN2VhNjllMTBiZWJjODM0cC0zLAorICAgIDB4MS5kY2FwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLmQ4NmM5MzA4OGJjZDg5YzNhN2VhNjllMTBiZWJjODM0cC0zLAorICAgIC0weDEuZGNhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjViMjEwMjMxMTI5Zjc4MDFiMmRmOGMwMzZiZWRkNjE0cDEsCisgICAgMHgxLmRmYmY3ZWZkZmJmNzhwMgorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuNWIyMTAyMzExMjlmNzgwMWIyZGY4YzAzNmJlZGQ2MTRwMSwKKyAgICAtMHgxLmRmYmY3ZWZkZmJmNzhwMgorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS5lNzQzY2U3M2Q5MjNkMDA4NTZjYmFhZmUwOTE2M2NkZnAtMywKKyAgICAweDEuZWJlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS5lNzQzY2U3M2Q5MjNkMDA4NTZjYmFhZmUwOTE2M2NkZnAtMywKKyAgICAtMHgxLmViZXAtMworICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDB4MS5kZTU5NmI0ZjRkNTAxOGViODVlNjU3MTAxMWMxNTY4M3AtMiwKKyAgICAweDEuZWZlZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEuZGU1OTZiNGY0ZDUwMThlYjg1ZTY1NzEwMTFjMTU2ODNwLTIsCisgICAgLTB4MS5lZmVmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLjZhNmViMmZmZWUyZWRhZmQ3ZmVkNDAzYWQyYzZkMjAzcDAsCisgICAgMHgxLmYwM2MzZjlkNTc2YmNwMAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0weDEuNmE2ZWIyZmZlZTJlZGFmZDdmZWQ0MDNhZDJjNmQyMDNwMCwKKyAgICAtMHgxLmYwM2MzZjlkNTc2YmNwMAorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS5mM2RmNmU4OGE3OTJlODAxZmY3MDY5MmU1YTc4OWYyMXAtNSwKKyAgICAweDEuZjQyZWRiZDg1ZDlmOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIC0weDEuZjNkZjZlODhhNzkyZTgwMWZmNzA2OTJlNWE3ODlmMjFwLTUsCisgICAgLTB4MS5mNDJlZGJkODVkOWY4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgMHgxLjZjNTlhNDQ2ZDFiNzhiMWM5Yjc0Njg0Yjc4YjEwYjBmcDAsCisgICAgMHgxLmY0NmVhNWY4ZjU0ZThwMAorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEuNmM1OWE0NDZkMWI3OGIxYzliNzQ2ODRiNzhiMTBiMGZwMCwKKyAgICAtMHgxLmY0NmVhNWY4ZjU0ZThwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS5mNTVhZmUwY2NjZjA5NzFkODEwMDY1ZmQ4Y2E1MTc0NnAtNywKKyAgICAweDEuZjU2cC03CisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTB4MS5mNTVhZmUwY2NjZjA5NzFkODEwMDY1ZmQ4Y2E1MTc0NnAtNywKKyAgICAtMHgxLmY1NnAtNworICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS5mNzJjMjhiZjQzOWNmODIzNDYyZjk0MzYxNzdjMGY2OHAtMywKKyAgICAweDEuZmM0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgLTB4MS5mNzJjMjhiZjQzOWNmODIzNDYyZjk0MzYxNzdjMGY2OHAtMywKKyAgICAtMHgxLmZjNHAtMworICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5mZTNkZThhMjVjMTQ4ZmYzN2ZmM2ZmZjRlYTk2YjBjNXAtNCwKKyAgICAweDEuZmY4ZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0weDEuZmUzZGU4YTI1YzE0OGZmMzdmZjNmZmY0ZWE5NmIwYzVwLTQsCisgICAgLTB4MS5mZjhmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLmZmN2FiYjBiMDc5ZDQ1YjhjMDc3YzEzODgxMmVmNzg1cC02LAorICAgIDB4MS5mZjhmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgLTB4MS5mZjdhYmIwYjA3OWQ0NWI4YzA3N2MxMzg4MTJlZjc4NXAtNiwKKyAgICAtMHgxLmZmOGZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuZmY4ZmFhZTJjNGE3ZTE1ZjQ5ZjFlN2ZkMTAyMjZkZjhwLTksCisgICAgMHgxLmZmOGZmZmZmZmZmZmZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAtMHgxLmZmOGZhYWUyYzRhN2UxNWY0OWYxZTdmZDEwMjI2ZGY4cC05LAorICAgIC0weDEuZmY4ZmZmZmZmZmZmZnAtOQorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS42MzYzNzE2NjU5YTBkNmVjOWE0ZDE2NzNhMGMxY2FmOXAxLAorICAgIDB4MS5mZmZmZmYzZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAtMHgxLjYzNjM3MTY2NTlhMGQ2ZWM5YTRkMTY3M2EwYzFjYWY5cDEsCisgICAgLTB4MS5mZmZmZmYzZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEuZmZmYWFhYjcwMDczY2ZmZTFjYTdhZjU5ZGVhMzgzYmRwLTcsCisgICAgMHgxLmZmZmZmZmU1ZWZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAtMHgxLmZmZmFhYWI3MDA3M2NmZmUxY2E3YWY1OWRlYTM4M2JkcC03LAorICAgIC0weDEuZmZmZmZmZTVlZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS5mZmVhYWQwOTFjMjVmN2ZlNzhiZTBlZmI5MTM5M2IzNXAtNiwKKyAgICAweDEuZmZmZmZmZjg2NTdmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0weDEuZmZlYWFkMDkxYzI1ZjdmZTc4YmUwZWZiOTEzOTNiMzVwLTYsCisgICAgLTB4MS5mZmZmZmZmODY1N2ZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMHgxLmZmZmFhYWNkMGZjMzU4NDNiOGI5YzJjOGVhYWYxNzBkcC03LAorICAgIDB4MS5mZmZmZmZmYmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS5mZmZhYWFjZDBmYzM1ODQzYjhiOWMyYzhlYWFmMTcwZHAtNywKKyAgICAtMHgxLmZmZmZmZmZiZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEuYzM0MzY2MTc5YWM4ZDAxZTJjZDQ1ZGU0NzQ1ZTEzNGFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmM3ZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAtMHgxLmMzNDM2NjE3OWFjOGQwMWUyY2Q0NWRlNDc0NWUxMzRhcC0xLAorICAgIC0weDEuZmZmZmZmZmZmYzdmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS5mZWFkMGI2OTk2Nzk3ODM0YjQzYmFjNmIwZjNmZTIwZnAtNCwKKyAgICAweDEuZmZmZmZmZmZmZmUyMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIC0weDEuZmVhZDBiNjk5Njc5NzgzNGI0M2JhYzZiMGYzZmUyMGZwLTQsCisgICAgLTB4MS5mZmZmZmZmZmZmZTIxcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLmMzNDM2NjE3OWQ0MWExMWMyMDU4YzQwMTU2ZWFlNzgwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmVlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTB4MS5jMzQzNjYxNzlkNDFhMTFjMjA1OGM0MDE1NmVhZTc4MHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEuZmZmZmFhYWFkMTBmZGEzNjQyZTdmNzEyZWUzOTEwNThwLTksCisgICAgMHgxLmZmZmZmZmZmZmZmZWVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAtMHgxLmZmZmZhYWFhZDEwZmRhMzY0MmU3ZjcxMmVlMzkxMDU4cC05LAorICAgIC0weDEuZmZmZmZmZmZmZmZlZXAtOQorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS4zMGZjMTkzMWYwOWM5N2ZmNDJmZjVjYWQ0Njc4OTdmZHA3LAorICAgIDB4MS5mZmZmZmZmZmZmZmVlcDIxOAorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIC0weDEuMzBmYzE5MzFmMDljOTdmZjQyZmY1Y2FkNDY3ODk3ZmRwNywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZWVwMjE4CisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLmZmYWFkMGZhNDUyNTU3ZmYyMjM0MmUwY2Q0OTk3ODMwcC01LAorICAgIDB4MS5mZmZmZmZmZmZmZmYzcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgLTB4MS5mZmFhZDBmYTQ1MjU1N2ZmMjIzNDJlMGNkNDk5NzgzMHAtNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEuNWNhNzJkMTdlZDNlYTgwMDg5YWU2NWRmYWZjMWUyYjJwOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA1MDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAtMHgxLjVjYTcyZDE3ZWQzZWE4MDA4OWFlNjVkZmFmYzFlMmIycDgsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDUwMQorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIC0weDEuYzM0MzY2MTc5ZDQyNmNjMWIxZjMzZDFiYTRhMzE0YTdwLTEsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEuYzM0MzY2MTc5ZDQyNmNjMWIxZjMzZDFiYTRhMzE0YTdwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIC0weDEuOTQ5MGZlYzNlZmJlNTk4ODQ5N2MxNDc4NTY1YWE0NDZwLTEsCisgICAgLTB4MS5jcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMHgxLjk0OTBmZWMzZWZiZTU5ODg0OTdjMTQ3ODU2NWFhNDQ2cC0xLAorICAgIDB4MS5jcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAtMSwKKyAgICAtMHgxLjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwLTEsCisgICAgMHgxLjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAtMHgxLjJlMjc1MDJjYmZiMzM0N2Y2YmNiZjg0ZWI5NWNhNGEzcC0xLAorICAgIC0weDEuNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIDB4MS4yZTI3NTAyY2JmYjMzNDdmNmJjYmY4NGViOTVjYTRhM3AtMSwKKyAgICAweDEuNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIC0weDEuZWNjMmNhZWM1MTYwOTk0YmUwNDIwNGE5NjhjNzAyMGRwLTIsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLmVjYzJjYWVjNTE2MDk5NGJlMDQyMDRhOTY4YzcwMjBkcC0yLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgLTB4MS43Nzg2YTc5NzNhNTkyM2I5NmVlZjI2MTBjMjVlODQxYXAtMiwKKyAgICAtMHgxLjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEuNzc4NmE3OTczYTU5MjNiOTZlZWYyNjEwYzI1ZTg0MWFwLTIsCisgICAgMHgxLjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAtMHgxLmZhY2ZiMjM5OWU2MzZlOGQ2NzExNWRlNTQwYTc3OGFjcC0zLAorICAgIC0weDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS5mYWNmYjIzOTllNjM2ZThkNjcxMTVkZTU0MGE3NzhhY3AtMywKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIC0weDEuZmVhZDBiNjk5Njk3MmQwNjA1OGUzZWIxMmM5MzgxNDBwLTQsCisgICAgLTB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgMHgxLmZlYWQwYjY5OTY5NzJkMDYwNThlM2ViMTJjOTM4MTQwcC00LAorICAgIDB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS5mZWFkMGI2OTk2OTcyZDA2MDU4ZTNlYjEyYzkzODE0MHAtNCwKKyAgICAweDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIC0weDEuZmVhZDBiNjk5Njk3MmQwNjA1OGUzZWIxMmM5MzgxNDBwLTQsCisgICAgLTB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLmZhY2ZiMjM5OWU2MzZlOGQ2NzExNWRlNTQwYTc3OGFjcC0zLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgLTB4MS5mYWNmYjIzOTllNjM2ZThkNjcxMTVkZTU0MGE3NzhhY3AtMywKKyAgICAtMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEuNzc4NmE3OTczYTU5MjNiOTZlZWYyNjEwYzI1ZTg0MWFwLTIsCisgICAgMHgxLjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAtMHgxLjc3ODZhNzk3M2E1OTIzYjk2ZWVmMjYxMGMyNWU4NDFhcC0yLAorICAgIC0weDEuOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS5lY2MyY2FlYzUxNjA5OTRiZTA0MjA0YTk2OGM3MDIwZHAtMiwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIC0weDEuZWNjMmNhZWM1MTYwOTk0YmUwNDIwNGE5NjhjNzAyMGRwLTIsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjJlMjc1MDJjYmZiMzM0N2Y2YmNiZjg0ZWI5NWNhNGEzcC0xLAorICAgIDB4MS40cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgLTB4MS4yZTI3NTAyY2JmYjMzNDdmNmJjYmY4NGViOTVjYTRhM3AtMSwKKyAgICAtMHgxLjRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwLTEsCisgICAgMHgxLjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcC0xLAorICAgIC0weDEuOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS45NDkwZmVjM2VmYmU1OTg4NDk3YzE0Nzg1NjVhYTQ0NnAtMSwKKyAgICAweDEuY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIC0weDEuOTQ5MGZlYzNlZmJlNTk4ODQ5N2MxNDc4NTY1YWE0NDZwLTEsCisgICAgLTB4MS5jcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLmMzNDM2NjE3OWQ0MjZjYzFiMWYzM2QxYmE0YTMxNGE3cC0xLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAtMHgxLmMzNDM2NjE3OWQ0MjZjYzFiMWYzM2QxYmE0YTMxNGE3cC0xLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMHgxLjE4MDgwZGQzMTcxYjZjMDMxYTliNTc2YmU2M2I2ZDRjcDYsCisgICAgMHgxLjBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgLTB4MS4xODA4MGRkMzE3MWI2YzAzMWE5YjU3NmJlNjNiNmQ0Y3A2LAorICAgIC0weDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuMTg2OWE2ZDBmYzBjODczNGNmZjViZTRjOTk0YTYyM2NwNiwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAtMHgxLjE4NjlhNmQwZmMwYzg3MzRjZmY1YmU0Yzk5NGE2MjNjcDYsCisgICAgLTB4MS4xOTk5OTk5OTk5OTlhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIDB4MS4xOGMyYzA1M2E2NDAxZmRmOGY4MDE4ODVlY2VjODk2ZXA2LAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIC0weDEuMThjMmMwNTNhNjQwMWZkZjhmODAxODg1ZWNlYzg5NmVwNiwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLjE5MTRiNzBhZDUzNzA5ZmMwMmU2MGM5OTMxNDY1ZDFjcDYsCisgICAgMHgxLjRjY2NjY2NjY2NjY2VwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgLTB4MS4xOTE0YjcwYWQ1MzcwOWZjMDJlNjBjOTkzMTQ2NWQxY3A2LAorICAgIC0weDEuNGNjY2NjY2NjY2NjZXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAweDEuMTk2MDlhMDBhODRlYjU0NjliOGExNDU3NWNmY2ZmZGNwNiwKKyAgICAweDEuNjY2NjY2NjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAtMHgxLjE5NjA5YTAwYTg0ZWI1NDY5YjhhMTQ1NzVjZmNmZmRjcDYsCisgICAgLTB4MS42NjY2NjY2NjY2NjY4cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIDB4MS4xOWE3NDAxMWUzMTRmMTE3OWI1OTg0MjgyZjkyNTY4MXA2LAorICAgIDB4MS44MDAwMDAwMDAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIC0weDEuMTlhNzQwMTFlMzE0ZjExNzliNTk4NDI4MmY5MjU2ODFwNiwKKyAgICAtMHgxLjgwMDAwMDAwMDAwMDJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgMHgxLjE5ZTk1Njc0Yjk4ZGQ5M2M2ODk0MjU0MmFlNDhlYzE0cDYsCisgICAgMHgxLjk5OTk5OTk5OTk5OWNwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgLTB4MS4xOWU5NTY3NGI5OGRkOTNjNjg5NDI1NDJhZTQ4ZWMxNHA2LAorICAgIC0weDEuOTk5OTk5OTk5OTk5Y3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAweDEuMWEyNzZhZDYzOWIwOWU5Mjk0ZjcyMThlZjU4N2NlNmNwNiwKKyAgICAweDEuYjMzMzMzMzMzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAtMHgxLjFhMjc2YWQ2MzliMDllOTI5NGY3MjE4ZWY1ODdjZTZjcDYsCisgICAgLTB4MS5iMzMzMzMzMzMzMzM2cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIDB4MS4xYTYxZjI5MjcyMzlhNGU1ZDc1YWI3MDk1MmIzNTk1YXA2LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIC0weDEuMWE2MWYyOTI3MjM5YTRlNWQ3NWFiNzA5NTJiMzU5NWFwNiwKKyAgICAtMHgxLmNjY2NjY2NjY2NjZDBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMHgxLjFhOTk0ZmY4M2VjYTc3ZjNlZjkxODY2YTdiODU0MGUycDYsCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgLTB4MS4xYTk5NGZmODNlY2E3N2YzZWY5MTg2NmE3Yjg1NDBlMnA2LAorICAgIC0weDEuZTY2NjY2NjY2NjY2YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuMWFjZGQ2MzJmNjYyYTllOWM5YzJlNjNhNDY0YjM5MjdwNiwKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAtMHgxLjFhY2RkNjMyZjY2MmE5ZTljOWMyZTYzYTQ2NGIzOTI3cDYsCisgICAgLTB4MS4wcDEwMQorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIDB4MS4xNmE1MjlhMzI3NzdjZDBmYzMwNzkwMDRiNjMzODc1ZnA3LAorICAgIDB4MS4wcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIC0weDEuMTZhNTI5YTMyNzc3Y2QwZmMzMDc5MDA0YjYzMzg3NWZwNywKKyAgICAtMHgxLjBwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgMHgxLjE2ZDVmNjIyMTlmMDVhYTg5ZGI0YzM3NTBmYmIwMWQ2cDcsCisgICAgMHgxLjE5OTk5OTk5OTk5OWFwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgLTB4MS4xNmQ1ZjYyMjE5ZjA1YWE4OWRiNGMzNzUwZmJiMDFkNnA3LAorICAgIC0weDEuMTk5OTk5OTk5OTk5YXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAweDEuMTcwMjgyZTM2ZjBhMjZmZGZkNzlmMDkxYjk4YzE1NzBwNywKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAtMHgxLjE3MDI4MmUzNmYwYTI2ZmRmZDc5ZjA5MWI5OGMxNTcwcDcsCisgICAgLTB4MS4zMzMzMzMzMzMzMzM0cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS4xNzJiN2UzZjA2ODU5YzBjMzcyY2VhOWI1YmI4ZmY0N3A3LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIC0weDEuMTcyYjdlM2YwNjg1OWMwYzM3MmNlYTliNWJiOGZmNDdwNywKKyAgICAtMHgxLjRjY2NjY2NjY2NjY2VwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgMHgxLjE3NTE2ZmI5ZjAxMTcxYjE4MzdlZWU3YTcxOTQ1MGE2cDcsCisgICAgMHgxLjY2NjY2NjY2NjY2NjhwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgLTB4MS4xNzUxNmZiOWYwMTE3MWIxODM3ZWVlN2E3MTk0NTBhNnA3LAorICAgIC0weDEuNjY2NjY2NjY2NjY2OHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAweDEuMTc3NGMyYzI4ZDc0OGY5YTAzNjZhNjYyZGFkZWZiZjlwNywKKyAgICAweDEuODAwMDAwMDAwMDAwMnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAtMHgxLjE3NzRjMmMyOGQ3NDhmOWEwMzY2YTY2MmRhZGVmYmY5cDcsCisgICAgLTB4MS44MDAwMDAwMDAwMDAycDIwMAorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIDB4MS4xNzk1Y2RmM2Y4YjEwM2FjNmEwM2Y2ZjAxYTNhNDZjM3A3LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIC0weDEuMTc5NWNkZjNmOGIxMDNhYzZhMDNmNmYwMWEzYTQ2YzNwNywKKyAgICAtMHgxLjk5OTk5OTk5OTk5OWNwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgMHgxLjE3YjRkODI0YjhjMjY2NTc4MDM1NzUxNjNkZDliN2VmcDcsCisgICAgMHgxLmIzMzMzMzMzMzMzMzZwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgLTB4MS4xN2I0ZDgyNGI4YzI2NjU3ODAzNTc1MTYzZGQ5YjdlZnA3LAorICAgIC0weDEuYjMzMzMzMzMzMzMzNnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuMTdkMjFjMDJkNTA2ZTk4MTIxNjczZmQzNmM2ZjdkNjZwNywKKyAgICAweDEuY2NjY2NjY2NjY2NkMHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAtMHgxLjE3ZDIxYzAyZDUwNmU5ODEyMTY3M2ZkMzZjNmY3ZDY2cDcsCisgICAgLTB4MS5jY2NjY2NjY2NjY2QwcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIDB4MS4xN2VkY2FiNWJiNGY1MzA4MmQ4MmE3ODQwMGQ4NzEyYXA3LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIC0weDEuMTdlZGNhYjViYjRmNTMwODJkODJhNzg0MDBkODcxMmFwNywKKyAgICAtMHgxLmU2NjY2NjY2NjY2NmFwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLjE4MDgwZGQzMTcxYjZjMDMxYTliNTc2YmU2M2I2ZDRjcDcsCisgICAgMHgxLjBwMjAxCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgLTB4MS4xODA4MGRkMzE3MWI2YzAzMWE5YjU3NmJlNjNiNmQ0Y3A3LAorICAgIC0weDEuMHAyMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuNWFlYjhmZGMwMWIyMjE2MDVjMzVhYzllYjNiODgzNDlwOSwKKyAgICAweDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgLTB4MS41YWViOGZkYzAxYjIyMTYwNWMzNWFjOWViM2I4ODM0OXA5LAorICAgIC0weDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgMHgxLjVhZjdjMmZiYmU1MDQ0YzY5MmUwZjk3YWNhMWE2MWU3cDksCisgICAgMHgxLjE5OTk5OTk5OTk5OWFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIC0weDEuNWFmN2MyZmJiZTUwNDRjNjkyZTBmOTdhY2ExYTYxZTdwOSwKKyAgICAtMHgxLjE5OTk5OTk5OTk5OWFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIDB4MS41YjAyZTYyYzEzOTZiN2RiZWFkMjQ0YzFmNDhlYTZjZHA5LAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAtMHgxLjViMDJlNjJjMTM5NmI3ZGJlYWQyNDRjMWY0OGVhNmNkcDksCisgICAgLTB4MS4zMzMzMzMzMzMzMzM0cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAweDEuNWIwZDI1MDJmOTc1OTUxZjc5M2YwMzQ0NWQxOWUxNDNwOSwKKyAgICAweDEuNGNjY2NjY2NjY2NjZXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgLTB4MS41YjBkMjUwMmY5NzU5NTFmNzkzZjAzNDQ1ZDE5ZTE0M3A5LAorICAgIC0weDEuNGNjY2NjY2NjY2NjZXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgMHgxLjViMTZhMTYxYjNkODhhODhjYzUzODQzYzIyOTBiNTlicDksCisgICAgMHgxLjY2NjY2NjY2NjY2NjhwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDMzOAorICAgIC0weDEuNWIxNmExNjFiM2Q4OGE4OGNjNTM4NDNjMjI5MGI1OWJwOSwKKyAgICAtMHgxLjY2NjY2NjY2NjY2NjhwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIDB4MS41YjFmNzYyM2RiMzE1MjAyZWM0ZDcyMzYzY2UzNjA3MHA5LAorICAgIDB4MS44MDAwMDAwMDAwMDAycDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAtMHgxLjViMWY3NjIzZGIzMTUyMDJlYzRkNzIzNjNjZTM2MDcwcDksCisgICAgLTB4MS44MDAwMDAwMDAwMDAycDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAweDEuNWIyN2I4ZjAzNjAwNmYwNzg1ZjRjNjU5OGNiYTMzMjJwOSwKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3AxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQyCisgICAgLTB4MS41YjI3YjhmMDM2MDA2ZjA3ODVmNGM2NTk4Y2JhMzMyMnA5LAorICAgIC0weDEuOTk5OTk5OTk5OTk5Y3AxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQzCisgICAgMHgxLjViMmY3YjdjNjYwNGM3YjI0YjgxMjVlMzE1YTIwZjZkcDksCisgICAgMHgxLmIzMzMzMzMzMzMzMzZwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDM0NAorICAgIC0weDEuNWIyZjdiN2M2NjA0YzdiMjRiODEyNWUzMTVhMjBmNmRwOSwKKyAgICAtMHgxLmIzMzMzMzMzMzMzMzZwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIDB4MS41YjM2Y2M3M2VkMTVlODdjYjNjZDk4OTI2MTQ3ODBjYnA5LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAtMHgxLjViMzZjYzczZWQxNWU4N2NiM2NkOTg5MjYxNDc4MGNicDksCisgICAgLTB4MS5jY2NjY2NjY2NjY2QwcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuNWIzZGI4MjBhNmE4MDJkZTc2ZDQ3MjdlODY2MWJkYmNwOSwKKyAgICAweDEuZTY2NjY2NjY2NjY2YXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgLTB4MS41YjNkYjgyMGE2YTgwMmRlNzZkNDcyN2U4NjYxYmRiY3A5LAorICAgIC0weDEuZTY2NjY2NjY2NjY2YXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgMHgxLjViNDQ0OGU3ZmQ5YjA5MWQzMjFhOWU3ODdmYmE3Y2M0cDksCisgICAgMHgxLjBwMTAwMQorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIC0weDEuNWI0NDQ4ZTdmZDliMDkxZDMyMWE5ZTc4N2ZiYTdjYzRwOSwKKyAgICAtMHgxLjBwMTAwMQorICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIC0weDEuNjMzY2U4ZmI5Zjg3ZGIxMDY5YWM1OTA5ZDNlN2Q2ZDlwOSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIDB4MS42MzNjZThmYjlmODdkYjEwNjlhYzU5MDlkM2U3ZDZkOXA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAweDEuNjMzY2U4ZmI5Zjg3ZGIxMDY5YWM1OTA5ZDNlN2Q2ZDlwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgLTB4MS42MzNjZThmYjlmODdkYjEwNjlhYzU5MDlkM2U3ZDZkOXA5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzU1CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIC0weDEuMDQ5OWU0MGM2NWZmNTcxYzQyMTQxOTFlNDA5Zjg4NmNwLTEsCisgICAgLTB4MS4xMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzYxCisgICAgMHgxLjA0OTllNDBjNjVmZjU3MWM0MjE0MTkxZTQwOWY4ODZjcC0xLAorICAgIDB4MS4xMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgLTB4MS4wNDk5ZTQwYzY1ZmY0OGZiMDQyMTNlYWIzMmZhYTM0NXAtMSwKKyAgICAtMHgxLjFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAweDEuMDQ5OWU0MGM2NWZmNDhmYjA0MjEzZWFiMzJmYWEzNDVwLTEsCisgICAgMHgxLjFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAtMHgxLjA0OTllNDBjNjVmZjNhZDljNjJlNjQzODI1MjZlODlhcC0xLAorICAgIC0weDEuMGZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIDB4MS4wNDk5ZTQwYzY1ZmYzYWQ5YzYyZTY0MzgyNTI2ZTg5YXAtMSwKKyAgICAweDEuMGZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIDB4MS4wNDk5ZTQwYzY1ZmYzYWQ5YzYyZTY0MzgyNTI2ZTg5YXAtMSwKKyAgICAweDEuMGZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIC0weDEuMDQ5OWU0MGM2NWZmM2FkOWM2MmU2NDM4MjUyNmU4OWFwLTEsCisgICAgLTB4MS4wZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY4CisgICAgMHgxLjA0OTllNDBjNjVmZjQ4ZmIwNDIxM2VhYjMyZmFhMzQ1cC0xLAorICAgIDB4MS4xcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgLTB4MS4wNDk5ZTQwYzY1ZmY0OGZiMDQyMTNlYWIzMmZhYTM0NXAtMSwKKyAgICAtMHgxLjFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzAKKyAgICAweDEuMDQ5OWU0MGM2NWZmNTcxYzQyMTQxOTFlNDA5Zjg4NmNwLTEsCisgICAgMHgxLjEwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICAtMHgxLjA0OTllNDBjNjVmZjU3MWM0MjE0MTkxZTQwOWY4ODZjcC0xLAorICAgIC0weDEuMTAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIDB4MS42MmU0MmZlZmEzOWVmMzE3OTNjNzY3MzAwN2U0ZWQ1ZXA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgLTB4MS42MmU0MmZlZmEzOWVmMzE3OTNjNzY3MzAwN2U0ZWQ1ZXA1LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2MgorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXA1LAorICAgIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXA1LAorICAgIC0weDEuMHA2MworICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIDB4MS42MmU0MmZlZmEzOWVmM2Q3OTNjNzY3MzAwN2UxZWQ1ZXA1LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgLTB4MS42MmU0MmZlZmEzOWVmM2Q3OTNjNzY3MzAwN2UxZWQ1ZXA1LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2MworICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS40MTllY2I3MTJjNDgwYzBiNWRlY2I1ODM4NzI2OWQ5ZHA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI3CisgIH0sCisgIHsgLy8gRW50cnkgMzc5CisgICAgLTB4MS40MTllY2I3MTJjNDgwYzBiNWRlY2I1ODM4NzI2OWQ5ZHA0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyNworICB9LAorICB7IC8vIEVudHJ5IDM4MAorICAgIDB4MS40MTllY2I3MTJjNDgwYzhiNWRlY2I1ODM4NzI4NWQ5ZHA0LAorICAgIDB4MS4wcDI4CisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgLTB4MS40MTllY2I3MTJjNDgwYzhiNWRlY2I1ODM4NzI4NWQ5ZHA0LAorICAgIC0weDEuMHAyOAorICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIDB4MS40MTllY2I3MTJjNDgwZDhiNWRlY2I1ODM4NzFmZGQ5ZHA0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI4CisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgLTB4MS40MTllY2I3MTJjNDgwZDhiNWRlY2I1ODM4NzFmZGQ5ZHA0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyOAorICB9LAorICB7IC8vIEVudHJ5IDM4NAorICAgIDB4MS4zNjg3YTlmMWFmMmIxNDdjYTE0ZTdhNGEwNmU4MTdiMnA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI2CisgIH0sCisgIHsgLy8gRW50cnkgMzg1CisgICAgLTB4MS4zNjg3YTlmMWFmMmIxNDdjYTE0ZTdhNGEwNmU4MTdiMnA0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyNgorICB9LAorICB7IC8vIEVudHJ5IDM4NgorICAgIDB4MS4zNjg3YTlmMWFmMmIxNGZjYTE0ZTdhNGEwNmU5MTdiMnA0LAorICAgIDB4MS4wcDI3CisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgLTB4MS4zNjg3YTlmMWFmMmIxNGZjYTE0ZTdhNGEwNmU5MTdiMnA0LAorICAgIC0weDEuMHAyNworICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIDB4MS4zNjg3YTlmMWFmMmIxNWZjYTE0ZTdhNGEwNmRmMTdiMnA0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI3CisgIH0sCisgIHsgLy8gRW50cnkgMzg5CisgICAgLTB4MS4zNjg3YTlmMWFmMmIxNWZjYTE0ZTdhNGEwNmRmMTdiMnA0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyNworICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIDB4MS4xNTQyNDU3MzM3ZDQzMTljNmI3M2M4OWQ4NGU5YTE3MXA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzkxCisgICAgLTB4MS4xNTQyNDU3MzM3ZDQzMTljNmI3M2M4OWQ4NGU5YTE3MXA0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyMworICB9LAorICB7IC8vIEVudHJ5IDM5MgorICAgIDB4MS4xNTQyNDU3MzM3ZDQzMjFjNmI3M2M4OWQ4NGFiYTE3MXA0LAorICAgIDB4MS4wcDI0CisgIH0sCisgIHsgLy8gRW50cnkgMzkzCisgICAgLTB4MS4xNTQyNDU3MzM3ZDQzMjFjNmI3M2M4OWQ4NGFiYTE3MXA0LAorICAgIC0weDEuMHAyNAorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIDB4MS4xNTQyNDU3MzM3ZDQzMzFjNmI3M2M4OWQ4NDIzYTE3MXA0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI0CisgIH0sCisgIHsgLy8gRW50cnkgMzk1CisgICAgLTB4MS4xNTQyNDU3MzM3ZDQzMzFjNmI3M2M4OWQ4NDIzYTE3MXA0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyNAorICB9LAorICB7IC8vIEVudHJ5IDM5NgorICAgIDB4MS4wYzFmOGE2ZTgwZWVhZTVjOTY4OTRmMmJmZmI1MzVhZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAtMHgxLjBjMWY4YTZlODBlZWFlNWM5Njg5NGYyYmZmYjUzNWFmcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTgKKyAgICAweDEuMGMxZjhhNmU4MGVlYjIzZTAzOTI2OTgxZTM0OGViMmVwMSwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgLTB4MS4wYzFmOGE2ZTgwZWViMjNlMDM5MjY5ODFlMzQ4ZWIyZXAxLAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLjBjMWY4YTZlODBlZWJhMDBkZGE0OWUyZGFhMThhZTcxcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIC0weDEuMGMxZjhhNmU4MGVlYmEwMGRkYTQ5ZTJkYWExOGFlNzFwMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIDB4MS43MTkyMTgzMTNkMDg2YmQxMWVjMDEzODM5ODMxMDI4N3AwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAtMHgxLjcxOTIxODMxM2QwODZiZDExZWMwMTM4Mzk4MzEwMjg3cDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDQKKyAgICAweDEuNzE5MjE4MzEzZDA4NzJmOGU4MzE4MzdmMGU5NTQxODlwMCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDA1CisgICAgLTB4MS43MTkyMTgzMTNkMDg3MmY4ZTgzMTgzN2YwZTk1NDE4OXAwLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgMHgxLjcxOTIxODMxM2QwODgxNDg3YjE0NjM3NWZhZDQ1ZDNmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIC0weDEuNzE5MjE4MzEzZDA4ODE0ODdiMTQ2Mzc1ZmFkNDVkM2ZwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIDB4MS5jMzQzNjYxNzlkNDI2MTcxNjJiZmZkN2RiZTQ0MmU3MXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwOQorICAgIC0weDEuYzM0MzY2MTc5ZDQyNjE3MTYyYmZmZDdkYmU0NDJlNzFwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDEwCisgICAgMHgxLmMzNDM2NjE3OWQ0MjZjYzFiMWYzM2QxYmE0YTMxNGE3cC0xLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTEKKyAgICAtMHgxLmMzNDM2NjE3OWQ0MjZjYzFiMWYzM2QxYmE0YTMxNGE3cC0xLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMHgxLmMzNDM2NjE3OWQ0MjgzNjI1MDU5YmM1NzcwZDkxZDVkcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTMKKyAgICAtMHgxLmMzNDM2NjE3OWQ0MjgzNjI1MDU5YmM1NzcwZDkxZDVkcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgMHgxLmVjYzJjYWVjNTE2MDhhZmM0ZDVmMjRiMjdjMjBkYzljcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDE1CisgICAgLTB4MS5lY2MyY2FlYzUxNjA4YWZjNGQ1ZjI0YjI3YzIwZGM5Y3AtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAweDEuZWNjMmNhZWM1MTYwOTk0YmUwNDIwNGE5NjhjNzAyMGRwLTIsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAtMHgxLmVjYzJjYWVjNTE2MDk5NGJlMDQyMDRhOTY4YzcwMjBkcC0yLAorICAgIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxOAorICAgIDB4MS5lY2MyY2FlYzUxNjBiNWViMDYwN2M0OTc0MWNlOWJjNnAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIC0weDEuZWNjMmNhZWM1MTYwYjVlYjA2MDdjNDk3NDFjZTliYzZwLTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgMHgxLmZhY2ZiMjM5OWU2MzVmMDdiMmVjZjQ4ZGIyOGY2YjgycC0zLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgLTB4MS5mYWNmYjIzOTllNjM1ZjA3YjJlY2Y0OGRiMjhmNmI4MnAtMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAweDEuZmFjZmIyMzk5ZTYzNmU4ZDY3MTE1ZGU1NDBhNzc4YWNwLTMsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAtMHgxLmZhY2ZiMjM5OWU2MzZlOGQ2NzExNWRlNTQwYTc3OGFjcC0zLAorICAgIC0weDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQyNAorICAgIDB4MS5mYWNmYjIzOTllNjM4ZDk4Y2Y1YTMwOTQ1Y2MxYTkxMHAtMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQyNQorICAgIC0weDEuZmFjZmIyMzk5ZTYzOGQ5OGNmNWEzMDk0NWNjMWE5MTBwLTMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDI2CisgICAgMHgxLmZlYWQwYjY5OTY5NzFkMjVhNmM5ZWUzODNmZjlkOTcxcC00LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDI3CisgICAgLTB4MS5mZWFkMGI2OTk2OTcxZDI1YTZjOWVlMzgzZmY5ZDk3MXAtNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAweDEuZmVhZDBiNjk5Njk3MmQwNjA1OGUzZWIxMmM5MzgxNDBwLTQsCisgICAgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAtMHgxLmZlYWQwYjY5OTY5NzJkMDYwNThlM2ViMTJjOTM4MTQwcC00LAorICAgIC0weDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIDB4MS5mZWFkMGI2OTk2OTc0Y2M2YzMxNmRmYTMwNWMwZjQyZHAtNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDQzMQorICAgIC0weDEuZmVhZDBiNjk5Njk3NGNjNmMzMTZkZmEzMDVjMGY0MmRwLTQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgMHgxLmZmYWFkMGZhNDUyNjE3OWY2OWY4NjI1ZGJmZWIyNzBmcC01LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgLTB4MS5mZmFhZDBmYTQ1MjYxNzlmNjlmODYyNWRiZmViMjcwZnAtNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzQKKyAgICAweDEuZmZhYWQwZmE0NTI2Mjc5NzZmZjM2NmI5ZDM4NDBmZDFwLTUsCisgICAgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAtMHgxLmZmYWFkMGZhNDUyNjI3OTc2ZmYzNjZiOWQzODQwZmQxcC01LAorICAgIC0weDEuMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIDB4MS5mZmFhZDBmYTQ1MjY0Nzg3N2JlOTZmNzFmYWI0NjM5MnAtNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDQzNworICAgIC0weDEuZmZhYWQwZmE0NTI2NDc4NzdiZTk2ZjcxZmFiNDYzOTJwLTUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLmZmZWFhZDEwYjViMmQ1OTNmZDRkN2ZkMzk4YTA0ZTE3cC02LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgLTB4MS5mZmVhYWQxMGI1YjJkNTkzZmQ0ZDdmZDM5OGEwNGUxN3AtNiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuZmZlYWFkMTBiNWIyZTU5MWZkYWQ2YmQ3ZjdhNDk3YzNwLTYsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDEKKyAgICAtMHgxLmZmZWFhZDEwYjViMmU1OTFmZGFkNmJkN2Y3YTQ5N2MzcC02LAorICAgIC0weDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIDB4MS5mZmVhYWQxMGI1YjMwNThkZmU2ZDQzZTBiNWFjY2I0MXAtNiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ0MworICAgIC0weDEuZmZlYWFkMTBiNWIzMDU4ZGZlNmQ0M2UwYjVhY2NiNDFwLTYsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgMHgxLmZmZmFhYWQxMGZhMzU5YzNhNGZhZDRiYmEzMzJhZjU0cC03LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgLTB4MS5mZmZhYWFkMTBmYTM1OWMzYTRmYWQ0YmJhMzMyYWY1NHAtNywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDYKKyAgICAweDEuZmZmYWFhZDEwZmEzNjljMzI1MDBkNDZiYTc5Mjc0NThwLTcsCisgICAgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDcKKyAgICAtMHgxLmZmZmFhYWQxMGZhMzY5YzMyNTAwZDQ2YmE3OTI3NDU4cC03LAorICAgIC0weDEuMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIDB4MS5mZmZhYWFkMTBmYTM4OWMyMjUwY2QzY2JiMDUxZTY2MHAtNywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIC0weDEuZmZmYWFhZDEwZmEzODljMjI1MGNkM2NiYjA1MWU2NjBwLTcsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgMHgxLmZmZmZmZmZhYWFhYTlhZDExMTExOGZhMzVhMmZiMmU4cC0xNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTEKKyAgICAtMHgxLmZmZmZmZmZhYWFhYTlhZDExMTExOGZhMzVhMmZiMmU4cC0xNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgMHgxLmZmZmZmZmZhYWFhYWFhZDExMTExMGZhMzVhMzViMmU4cC0xNSwKKyAgICAweDEuMHAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTMKKyAgICAtMHgxLmZmZmZmZmZhYWFhYWFhZDExMTExMGZhMzVhMzViMmU4cC0xNSwKKyAgICAtMHgxLjBwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgMHgxLmZmZmZmZmZhYWFhYWNhZDExMTEwMGZhMzVhNDFiMmU4cC0xNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAtMHgxLmZmZmZmZmZhYWFhYWNhZDExMTEwMGZhMzVhNDFiMmU4cC0xNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgNDU2CisgICAgMHgxLmZmZmZmZmZmZmZmZmVlYWFhYWFhYWFhYWFhY2QxMTExcC0yOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVlYWFhYWFhYWFhYWFhY2QxMTExcC0yOCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZlYWFhYWFhYWFhYWFhYWQxMTExcC0yOCwKKyAgICAweDEuMHAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZlYWFhYWFhYWFhYWFhYWQxMTExcC0yOCwKKyAgICAtMHgxLjBwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgMHgxLjAwMDAwMDAwMDAwMDBmNTU1NTU1NTU1NTU1MzY4ODg4cC0yNywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjEKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmNTU1NTU1NTU1NTU1MzY4ODg4cC0yNywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDYyCisgICAgMHgxLmZmZmZmZmZmZmZmZmVmYWFhYWFhYWFhYWFhYjJkMTExcC0yOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmYWFhYWFhYWFhYWFhYjJkMTExcC0yOSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTI5CisgIH0sCisgIHsgLy8gRW50cnkgNDY0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmYWFhYWFhYWFhYWFhYWFkMTExcC0yOSwKKyAgICAweDEuMHAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmYWFhYWFhYWFhYWFhYWFkMTExcC0yOSwKKyAgICAtMHgxLjBwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZDU1NTU1NTU1NTU1NGQ2ODg4cC0yOCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjcKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZDU1NTU1NTU1NTU1NGQ2ODg4cC0yOCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgNDY4CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmFhYWFhYWFhYWFhYWIyYWQxcC0zMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmFhYWFhYWFhYWFhYWIyYWQxcC0zMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgNDcwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmFhYWFhYWFhYWFhYWFhYWQxcC0zMSwKKyAgICAweDEuMHAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmFhYWFhYWFhYWFhYWFhYWQxcC0zMSwKKyAgICAtMHgxLjBwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmQ1NTU1NTU1NTU1NTRkNTY4cC0zMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmQ1NTU1NTU1NTU1NTRkNTY4cC0zMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgNDc0CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzUKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNDc2CisgICAgMHgxLjYzM2NlOGZiOWY4N2RiMTA2OWFjNTkwOWQzZTdkNmQ5cDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ3NworICAgIC0weDEuNjMzY2U4ZmI5Zjg3ZGIxMDY5YWM1OTA5ZDNlN2Q2ZDlwOSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ3OAorICAgIDB4MS42MzNjZThmYjlmODdkYjBjNjlhYzU5MDlkM2U3YTZkOXA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzkKKyAgICAtMHgxLjYzM2NlOGZiOWY4N2RiMGM2OWFjNTkwOWQzZTdhNmQ5cDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODAKKyAgICAweDEuZGNiZjY5ZjEwMDA2Y2JlOWMxMWNhOWE1ZDc2YWIwYzFwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDgxCisgICAgLTB4MS5kY2JmNjlmMTAwMDZjYmU5YzExY2E5YTVkNzZhYjBjMXAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDgyCisgICAgMHgxLjNiYzA0ZTg0N2VjMDUxNDczMWRkY2I0NzZkNDA3ZDM5cDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4MworICAgIC0weDEuM2JjMDRlODQ3ZWMwNTE0NzMxZGRjYjQ3NmQ0MDdkMzlwMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIDB4MS5jMzQzNjYxNzlkNDI4MzYyNTA1OWJjNTc3MGQ5MWQ1ZHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDg1CisgICAgLTB4MS5jMzQzNjYxNzlkNDI4MzYyNTA1OWJjNTc3MGQ5MWQ1ZHAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIDB4MS5jMzQzNjYxNzlkNDI2Y2MxYjFmMzNkMWJhNGEzMTRhN3AtMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgLTB4MS5jMzQzNjYxNzlkNDI2Y2MxYjFmMzNkMWJhNGEzMTRhN3AtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4OAorICAgIDB4MS5jMzQzNjYxNzlkNDI2MTcxNjJiZmZkN2RiZTQ0MmU3MXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIC0weDEuYzM0MzY2MTc5ZDQyNjE3MTYyYmZmZDdkYmU0NDJlNzFwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgMHgxLjcxNDQ3NzllM2YwYmE3YTZiZjc3YWU5MjI5MzNhMjk3cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDkxCisgICAgLTB4MS43MTQ0Nzc5ZTNmMGJhN2E2YmY3N2FlOTIyOTMzYTI5N3AtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTIKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDQ5NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTgKKyAgICAweDEuZmZmZmZmZmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDUwMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTA3NCwKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwNzQsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTAzCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTA1CisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvYXNpbmhmX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9hc2luaGZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUwOWIyZjEKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvYXNpbmhmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDE2NTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfYXNpbmhmX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS4wZjFmZWFmZmZlM2QxMTU0NzY1ZGU5OTQyNDQ2YWJkZnAtMiwKKyAgICAtMHgxLjEyNGRiOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuMGYxZmVhZmZmZTNkMTE1NDc2NWRlOTk0MjQ0NmFiZGZwLTIsCisgICAgMHgxLjEyNGRiOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAtMHgxLjI1MGFiYjAwMDM0ZTdmZjEyOWJkMzUxODdlNWE5MGE4cC0xMSwKKyAgICAtMHgxLjI1MGFiY3AtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLjI1MGFiYjAwMDM0ZTdmZjEyOWJkMzUxODdlNWE5MGE4cC0xMSwKKyAgICAweDEuMjUwYWJjcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMHgxLjU0NGU3MGZmZmZlMTRjY2JhZGFiOTdiNjU1ODBmMGY3cC01LAorICAgIC0weDEuNTQ2NzgwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS41NDRlNzBmZmZmZTE0Y2NiYWRhYjk3YjY1NTgwZjBmN3AtNSwKKyAgICAweDEuNTQ2NzgwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIC0weDEuZTQ3MTNkMGFiZjU1MmJkYmMxNjdlMjQyMmMzM2M5Y2JwMSwKKyAgICAtMHgxLjYwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLmU0NzEzZDBhYmY1NTJiZGJjMTY3ZTI0MjJjMzNjOWNicDEsCisgICAgMHgxLjYwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgLTB4MS41ZmU5YTAwMTY4ZjRiNmNjMWE3NmYyN2JiNmFjZDg4YnAtNCwKKyAgICAtMHgxLjYwNTg4MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuNWZlOWEwMDE2OGY0YjZjYzFhNzZmMjdiYjZhY2Q4OGJwLTQsCisgICAgMHgxLjYwNTg4MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgLTB4MS5kYWRlNTQ2ZmFjZDVkYzA2NzIxYzNhNzZmMmZhNmE0Y3AwLAorICAgIC0weDEuOGYwOTZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5kYWRlNTQ2ZmFjZDVkYzA2NzIxYzNhNzZmMmZhNmE0Y3AwLAorICAgIDB4MS44ZjA5NmVwMQorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgLTB4MS5kNDk4MmIwYzkzMGRhZDFiNDgyOTNlZjMxZDY5M2NlY3AtNiwKKyAgICAtMHgxLmQ0YTg4NnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLmQ0OTgyYjBjOTMwZGFkMWI0ODI5M2VmMzFkNjkzY2VjcC02LAorICAgIDB4MS5kNGE4ODZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIC0weDEuZDllY2JjZmZmOGJlMTI5Y2MzY2Y3YmYyMTZkYTVmNDZwLTQsCisgICAgLTB4MS5kYWZiYTBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5kOWVjYmNmZmY4YmUxMjljYzNjZjdiZjIxNmRhNWY0NnAtNCwKKyAgICAweDEuZGFmYmEwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAtMHgxLmY5NWFlMzA2OWVlNmVhNDYxMDYwNjA2MTViMDRkMWI5cC0zLAorICAgIC0weDEuZmU3ZmMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuZjk1YWUzMDY5ZWU2ZWE0NjEwNjA2MDYxNWIwNGQxYjlwLTMsCisgICAgMHgxLmZlN2ZjMHAtMworICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLmZmZWFhZDEwYjViMmU1OTFmZGFkNmJkN2Y3YTQ5N2MzcC02LAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIC0weDEuZmZlYWFkMTBiNWIyZTU5MWZkYWQ2YmQ3ZjdhNDk3YzNwLTYsCisgICAgLTB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTQ0LAorICAgIDB4MS5wLTE0MworICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTQ0LAorICAgIC0weDEucC0xNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5mZmVhYjExMDM1Y2FkZjkzNzU0ZmQ5MTcxYTk5NmM5OHAtNiwKKyAgICAweDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAtMHgxLmZmZWFiMTEwMzVjYWRmOTM3NTRmZDkxNzFhOTk2Yzk4cC02LAorICAgIC0weDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmNTU1NTUxNTU1NTRwLTQxLAorICAgIDB4MS4wMDAwMDJwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAtMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZjU1NTU1MTU1NTU0cC00MSwKKyAgICAtMHgxLjAwMDAwMnAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI2LAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgLTB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS43OTEyNzMwZTlkZDhjMjhkMGUyZTg4NDk3MzBmMDM0NXA0LAorICAgIDB4MS4wMDAwMDJwMzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIC0weDEuNzkxMjczMGU5ZGQ4YzI4ZDBlMmU4ODQ5NzMwZjAzNDVwNCwKKyAgICAtMHgxLjAwMDAwMnAzMworICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLmZlYWQzYjBhYjJkYjUzNjc1ZTc4ZmEyZDQxMDQ3ZDRhcC00LAorICAgIDB4MS4wMDAwMThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIC0weDEuZmVhZDNiMGFiMmRiNTM2NzVlNzhmYTJkNDEwNDdkNGFwLTQsCisgICAgLTB4MS4wMDAwMThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5mZWFkNDJmYWUyM2E0ZWMzZWM3NGU3NWQ3ZTZhOGUwMXAtNCwKKyAgICAweDEuMDAwMDFjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAtMHgxLmZlYWQ0MmZhZTIzYTRlYzNlYzc0ZTc1ZDdlNmE4ZTAxcC00LAorICAgIC0weDEuMDAwMDFjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuNjg2ZmMzMGY2MWQzMmYzNmNlYmQzNTU2NjQ3ZTZkODVwNSwKKyAgICAweDEuMDAwMDRjcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAtMHgxLjY4NmZjMzBmNjFkMzJmMzZjZWJkMzU1NjY0N2U2ZDg1cDUsCisgICAgLTB4MS4wMDAwNGNwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS4wYzFmYjhmZjk1MjQzNjZiNDc3MGU2NzlmM2QyYmUwOXAxLAorICAgIDB4MS4wMDAwNjBwMgorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgLTB4MS4wYzFmYjhmZjk1MjQzNjZiNDc3MGU2NzlmM2QyYmUwOXAxLAorICAgIC0weDEuMDAwMDYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS5lY2M0M2YwMTFlMzAwODY3MDQ0M2I0ZmFkMDY1ZjQ5MnAtMiwKKyAgICAweDEuMDAwMGQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAtMHgxLmVjYzQzZjAxMWUzMDA4NjcwNDQzYjRmYWQwNjVmNDkycC0yLAorICAgIC0weDEuMDAwMGQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuZmVhZmJlMDlhOWJhMTYyYzlkNzJlMWQ2YmY3NTY0YTNwLTQsCisgICAgMHgxLjAwMDE1Y3AtMworICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS5mZWFmYmUwOWE5YmExNjJjOWQ3MmUxZDZiZjc1NjRhM3AtNCwKKyAgICAtMHgxLjAwMDE1Y3AtMworICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLmMzNDU4NTI1YWIzOGZiYWJlNzZmYzc2N2NmN2E1NzMwcC0xLAorICAgIDB4MS4wMDAxODBwMAorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgLTB4MS5jMzQ1ODUyNWFiMzhmYmFiZTc2ZmM3NjdjZjdhNTczMHAtMSwKKyAgICAtMHgxLjAwMDE4MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuZmFkMmU1MDY1NTMxNGZjNGIyYzhmMjdiMGZjNjc0ZGRwLTMsCisgICAgMHgxLjAwMDFhNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgLTB4MS5mYWQyZTUwNjU1MzE0ZmM0YjJjOGYyN2IwZmM2NzRkZHAtMywKKyAgICAtMHgxLjAwMDFhNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLmZmZjhkNzRiN2UyMDRmODE4MjcyMTY5MDBlZDg1NDNmcC02LAorICAgIDB4MS4wMDA3MTZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0weDEuZmZmOGQ3NGI3ZTIwNGY4MTgyNzIxNjkwMGVkODU0M2ZwLTYsCisgICAgLTB4MS4wMDA3MTZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5mZmJhYzkwMDAwODk2NDg1OTcxMzkzODRkYTYyN2QzNnAtNSwKKyAgICAweDEuMDAwOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5mZmJhYzkwMDAwODk2NDg1OTcxMzkzODRkYTYyN2QzNnAtNSwKKyAgICAtMHgxLjAwMDhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIDB4MS5mZmZiMTMwNDA3NDFlMzQ2N2NjNjNiOTFkOWI5ZDhjN3AtNiwKKyAgICAweDEuMDAwODM0cC01CisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAtMHgxLmZmZmIxMzA0MDc0MWUzNDY3Y2M2M2I5MWQ5YjlkOGM3cC02LAorICAgIC0weDEuMDAwODM0cC01CisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuZmVjOGQ0MGM3MDFjNzQ2Y2Y5YmRjYzA2NmNjMGM1YmJwLTQsCisgICAgMHgxLjAwMGVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEuZmVjOGQ0MGM3MDFjNzQ2Y2Y5YmRjYzA2NmNjMGM1YmJwLTQsCisgICAgLTB4MS4wMDBlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuMGMzYWIxOWU0NWViMjlkN2FjM2NiNjkwYjA3ZjJjNzZwMSwKKyAgICAweDEuMDAzOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLjBjM2FiMTllNDVlYjI5ZDdhYzNjYjY5MGIwN2YyYzc2cDEsCisgICAgLTB4MS4wMDM4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS5jM2I1YTM3ZjkxMGJmYmY4YmE4ZmZjODYxNzU1ZjM4N3AtMSwKKyAgICAweDEuMDA1MGNlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEuYzNiNWEzN2Y5MTBiZmJmOGJhOGZmYzg2MTc1NWYzODdwLTEsCisgICAgLTB4MS4wMDUwY2VwMAorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLmZmOWIzMDFiMjJhNjczYzM0NTE1ZTZmYjg1ODEwZjYwcC00LAorICAgIDB4MS4wMDc4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLmZmOWIzMDFiMjJhNjczYzM0NTE1ZTZmYjg1ODEwZjYwcC00LAorICAgIC0weDEuMDA3OHAtMworICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLmM0YmM0Y2ZlYWIwMWQ1NTMyMTdkNzc1ZGFmYmUxZTU0cC0xLAorICAgIDB4MS4wMTBhYzhwMAorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgLTB4MS5jNGJjNGNmZWFiMDFkNTUzMjE3ZDc3NWRhZmJlMWU1NHAtMSwKKyAgICAtMHgxLjAxMGFjOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEuZmU1YjhlZjg1ZmZjN2VlMDVhNGYzZjk2YjZlNjA1NTRwLTMsCisgICAgMHgxLjAxZDRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIC0weDEuZmU1YjhlZjg1ZmZjN2VlMDVhNGYzZjk2YjZlNjA1NTRwLTMsCisgICAgLTB4MS4wMWQ0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuNzk1MjMzNDM3YmRhMTBhMTdjOTgxOWNiMTNkMjg4ZTNwMywKKyAgICAweDEuMDJwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuNzk1MjMzNDM3YmRhMTBhMTdjOTgxOWNiMTNkMjg4ZTNwMywKKyAgICAtMHgxLjAycDE2CisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEuNzk1MjM1MDAwMmMwMWJmZTBhZjdkNzQ1N2RiZjIwZGFwMywKKyAgICAweDEuMDIwMDBlcDE2CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLjc5NTIzNTAwMDJjMDFiZmUwYWY3ZDc0NTdkYmYyMGRhcDMsCisgICAgLTB4MS4wMjAwMGVwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS5mMWFiYWQwMDEwYmM5MmZiM2M5MjZlYjVkZWQ2MTQzMXAtMiwKKyAgICAweDEuMDJiZjYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAtMHgxLmYxYWJhZDAwMTBiYzkyZmIzYzkyNmViNWRlZDYxNDMxcC0yLAorICAgIC0weDEuMDJiZjYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuY2EzNWU0NTU0Yzk1YjRmNzNmOTYyMzRiZThkYjVhMGNwLTEsCisgICAgMHgxLjA0ZWZhOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLmNhMzVlNDU1NGM5NWI0ZjczZjk2MjM0YmU4ZGI1YTBjcC0xLAorICAgIC0weDEuMDRlZmE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS5mNjI1NTZmZmZmMTZjNjNkNGJhNjc4NTU1NDhlN2ExYXAtMiwKKyAgICAweDEuMDU0MWQ2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLmY2MjU1NmZmZmYxNmM2M2Q0YmE2Nzg1NTU0OGU3YTFhcC0yLAorICAgIC0weDEuMDU0MWQ2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuY2MwYWVjODhkMzJhMmNjZmY3MzhmZjhmNWUxMTZkZTNwLTEsCisgICAgMHgxLjA2M2VmNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMHgxLmNjMGFlYzg4ZDMyYTJjY2ZmNzM4ZmY4ZjVlMTE2ZGUzcC0xLAorICAgIC0weDEuMDYzZWY0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS4wNmFjN2EwMWEyYjkzZGQzNDMxMTdkNjJkYTAwZWZlOXAtNSwKKyAgICAweDEuMDZiOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS4wNmFjN2EwMWEyYjkzZGQzNDMxMTdkNjJkYTAwZWZlOXAtNSwKKyAgICAtMHgxLjA2YjhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS43OGE1MGYwMTM4MzhkZDRiYTMwMzE4MGVjYjBhZjMyZnAwLAorICAgIDB4MS4wODAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEuNzhhNTBmMDEzODM4ZGQ0YmEzMDMxODBlY2IwYWYzMmZwMCwKKyAgICAtMHgxLjA4MDJwMQorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLjEwNGUwMWFmMzM5NjUzNGE1OTRiZDcyYzM2NWEzZWVkcDEsCisgICAgMHgxLjA4YzIzMHAyCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLjEwNGUwMWFmMzM5NjUzNGE1OTRiZDcyYzM2NWEzZWVkcDEsCisgICAgLTB4MS4wOGMyMzBwMgorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLmQwNTE3ZjAwMDFhN2Q5YTFlNmY0NGM2YmFiMTQ2OWVlcC0xLAorICAgIDB4MS4wOTUwYzhwMAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS5kMDUxN2YwMDAxYTdkOWExZTZmNDRjNmJhYjE0NjllZXAtMSwKKyAgICAtMHgxLjA5NTBjOHAwCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuZmUwYTAzMGZiNDZkNDVmYjFjMDJiMzI3MmJjZDE5MTRwLTIsCisgICAgMHgxLjA5YjIxYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTB4MS5mZTBhMDMwZmI0NmQ0NWZiMWMwMmIzMjcyYmNkMTkxNHAtMiwKKyAgICAtMHgxLjA5YjIxYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLmZlYTZiYzQ3NDMzNjZhZWJhODY4MzM2ZmZhYzNhY2JkcC0yLAorICAgIDB4MS4wYTBhNjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuZmVhNmJjNDc0MzM2NmFlYmE4NjgzMzZmZmFjM2FjYmRwLTIsCisgICAgLTB4MS4wYTBhNjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS5kODIyZjMwMDAxOTYxMmIwZWExMTQzMDBiMjBiNmQ5ZHAtMSwKKyAgICAweDEuMGVmOWZhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIC0weDEuZDgyMmYzMDAwMTk2MTJiMGVhMTE0MzAwYjIwYjZkOWRwLTEsCisgICAgLTB4MS4wZWY5ZmFwMAorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLmQ5OGE3ODk2ZTE2MjQxNWY5MTY1ZTQxYWY1ZTg4OWNicC0xLAorICAgIDB4MS4xMHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLmQ5OGE3ODk2ZTE2MjQxNWY5MTY1ZTQxYWY1ZTg4OWNicC0xLAorICAgIC0weDEuMTBwMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjEwMzRiMjAwMGE2ZDdjMTQwMGZkMTg0YmRhYzczMmZmcC00LAorICAgIDB4MS4xMDY4cC00CisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAtMHgxLjEwMzRiMjAwMGE2ZDdjMTQwMGZkMTg0YmRhYzczMmZmcC00LAorICAgIC0weDEuMTA2OHAtNAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLmRlNWM3MGZmZmVhN2NkYzc2OThjMDBjYTdiNTdmOTE0cC0xLAorICAgIDB4MS4xMzg3NTRwMAorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgLTB4MS5kZTVjNzBmZmZlYTdjZGM3Njk4YzAwY2E3YjU3ZjkxNHAtMSwKKyAgICAtMHgxLjEzODc1NHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEuMTZhN2IwZmNlODE1ZDE3YTU4ZDk0MDYwNWM4NWY5Y2ZwLTMsCisgICAgMHgxLjE3ODRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIC0weDEuMTZhN2IwZmNlODE1ZDE3YTU4ZDk0MDYwNWM4NWY5Y2ZwLTMsCisgICAgLTB4MS4xNzg0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuZTQ2YmY2MDg2MzBmMTdmMzE4M2E3ZDFkYjU1MjkxNDRwLTEsCisgICAgMHgxLjE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIC0weDEuZTQ2YmY2MDg2MzBmMTdmMzE4M2E3ZDFkYjU1MjkxNDRwLTEsCisgICAgLTB4MS4xOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmI2YzkzMWMwMjUyMzhlYmNmOThlZjEyZWIyOGQ4MzA3cDUsCisgICAgMHgxLjE4cDc4CisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS5iNmM5MzFjMDI1MjM4ZWJjZjk4ZWYxMmViMjhkODMwN3A1LAorICAgIC0weDEuMThwNzgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuN2JmNDhkMDAwNjg5NmJhZDZiN2U1ZTY5YWZiZGM3MGJwMywKKyAgICAweDEuMTgyM3AxNgorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuN2JmNDhkMDAwNjg5NmJhZDZiN2U1ZTY5YWZiZGM3MGJwMywKKyAgICAtMHgxLjE4MjNwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuZTY4MTY4MmUzMjMwNzc5NTgyYTU3Mjg0Y2RmMTA1NTJwLTEsCisgICAgMHgxLjE5OGJlMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTB4MS5lNjgxNjgyZTMyMzA3Nzk1ODJhNTcyODRjZGYxMDU1MnAtMSwKKyAgICAtMHgxLjE5OGJlMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMHgxLmU3ZmY0N2VmMWJlNDk5ZGJkYjJkNGMyZGFiNzE0NGQycC0xLAorICAgIDB4MS4xYWE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAtMHgxLmU3ZmY0N2VmMWJlNDk5ZGJkYjJkNGMyZGFiNzE0NGQycC0xLAorICAgIC0weDEuMWFhOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjE5ZmZhOGZmZmNhYTVhNzA4MzZmZTU4NjlkNmYzZTY0cC0zLAorICAgIDB4MS4xYWU0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgLTB4MS4xOWZmYThmZmZjYWE1YTcwODM2ZmU1ODY5ZDZmM2U2NHAtMywKKyAgICAtMHgxLjFhZTRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuZThkNDVmMzhhMjJiYzY0NzIzYzQ0MTc0MjI3YjYwNTVwLTEsCisgICAgMHgxLjFiNDZkMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgLTB4MS5lOGQ0NWYzOGEyMmJjNjQ3MjNjNDQxNzQyMjdiNjA1NXAtMSwKKyAgICAtMHgxLjFiNDZkMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLmU4ZGI1M2ZlMDFjYjJmMTk0MWIxZTAyNjU2ODI4YjcxcC0xLAorICAgIDB4MS4xYjRjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLmU4ZGI1M2ZlMDFjYjJmMTk0MWIxZTAyNjU2ODI4YjcxcC0xLAorICAgIC0weDEuMWI0Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLmU5M2QxZmZmZmZjOTE2Y2FjNWRmNjY4NWNjZmI5YTk1cC0xLAorICAgIDB4MS4xYjk0ZjRwMAorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIC0weDEuZTkzZDFmZmZmZmM5MTZjYWM1ZGY2Njg1Y2NmYjlhOTVwLTEsCisgICAgLTB4MS4xYjk0ZjRwMAorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS5lOWNjODczMjFkMWVkM2VjODEzMGU5MTI4NTg1MjE0Y3AtMSwKKyAgICAweDEuMWNwMAorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIC0weDEuZTljYzg3MzIxZDFlZDNlYzgxMzBlOTEyODU4NTIxNGNwLTEsCisgICAgLTB4MS4xY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjE4NzYwYjAwMDQ1ZWIzMTNjZjI2NTA1OTM4ODdlMmJlcDYsCisgICAgMHgxLjFkMDc0MHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAtMHgxLjE4NzYwYjAwMDQ1ZWIzMTNjZjI2NTA1OTM4ODdlMmJlcDYsCisgICAgLTB4MS4xZDA3NDBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLmVkOThiMWY2NGE4MDg3OTNhZTA4OGExM2Q0M2RhOWMycC0xLAorICAgIDB4MS4xZWQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAtMHgxLmVkOThiMWY2NGE4MDg3OTNhZTA4OGExM2Q0M2RhOWMycC0xLAorICAgIC0weDEuMWVkOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjI0ZjUzMzc4NjkwZmM3YWI4YWFmYmViNjJiMWMzYmFkcC01LAorICAgIDB4MS4yNTA1MzBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLjI0ZjUzMzc4NjkwZmM3YWI4YWFmYmViNjJiMWMzYmFkcC01LAorICAgIC0weDEuMjUwNTMwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLjRhNWIxNTc2NThiYjUxZmUyY2QxNzBjODk3ZmY5MjI3cC01LAorICAgIDB4MS40YTcyMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAtMHgxLjRhNWIxNTc2NThiYjUxZmUyY2QxNzBjODk3ZmY5MjI3cC01LAorICAgIC0weDEuNGE3MjAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLmI3MzZlODAwMDE4MTM2YmM0NjY3OGQyOTZjZDAyOWJkcDAsCisgICAgMHgxLjU4NWMyMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgLTB4MS5iNzM2ZTgwMDAxODEzNmJjNDY2NzhkMjk2Y2QwMjliZHAwLAorICAgIC0weDEuNTg1YzIwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuMjIwYjM1ZmZmZWE0NWNhM2E3MDkxZDBkMWRkMDMyOGRwMCwKKyAgICAweDEuNjQzM2Y0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAtMHgxLjIyMGIzNWZmZmVhNDVjYTNhNzA5MWQwZDFkZDAzMjhkcDAsCisgICAgLTB4MS42NDMzZjRwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS42Yjg4ZTEwYjMxN2M5YzJkNTQwNzk2NjdjMjEyZmQxNnAtNiwKKyAgICAweDEuNmI5MDg0cC02CisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgLTB4MS42Yjg4ZTEwYjMxN2M5YzJkNTQwNzk2NjdjMjEyZmQxNnAtNiwKKyAgICAtMHgxLjZiOTA4NHAtNgorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS5jNTcwMjQwMDAwMTI5YzMzMDRhYTBiOTkxNTA5N2I5M3AwLAorICAgIDB4MS42ZDUwNWVwMQorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEuYzU3MDI0MDAwMDEyOWMzMzA0YWEwYjk5MTUwOTdiOTNwMCwKKyAgICAtMHgxLjZkNTA1ZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLjcxZjNkZTAyMzMxMjM5Yjg1MWY4OTZjOGMyNTFiMzZmcC00LAorICAgIDB4MS43Mjc0YjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMHgxLjcxZjNkZTAyMzMxMjM5Yjg1MWY4OTZjOGMyNTFiMzZmcC00LAorICAgIC0weDEuNzI3NGIwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLjdmZmZmZjAwMDAwMWNjY2NjODgzYTg0NjJlNTJjMmQxcC0xMCwKKyAgICAweDEuODAwMDA4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEuN2ZmZmZmMDAwMDAxY2NjY2M4ODNhODQ2MmU1MmMyZDFwLTEwLAorICAgIC0weDEuODAwMDA4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS5kMmMzNjVhMjM2N2UwYTBmMzQyYTk0NGI4ZmU5MTJhZHAwLAorICAgIDB4MS44MWY3NzhwMQorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuZDJjMzY1YTIzNjdlMGEwZjM0MmE5NDRiOGZlOTEyYWRwMCwKKyAgICAtMHgxLjgxZjc3OHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLjcwNDJmOTAwMDM0M2I4NWQwMDgwYWY1OGU2Y2UyYTVicDMsCisgICAgMHgxLjg0YzYxZXAxNQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuNzA0MmY5MDAwMzQzYjg1ZDAwODBhZjU4ZTZjZTJhNWJwMywKKyAgICAtMHgxLjg0YzYxZXAxNQorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS5jYTMyOGIwYjA3MzIzNzhkNzFiMmVkOGY5NDkyNmI1Y3A1LAorICAgIDB4MS44YzI1ZTRwODEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLmNhMzI4YjBiMDczMjM3OGQ3MWIyZWQ4Zjk0OTI2YjVjcDUsCisgICAgLTB4MS44YzI1ZTRwODEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAweDEuNmMwMjg3MGY0M2Y0MTJmMmZhY2RhOWM3MWFmNjRkOWFwNSwKKyAgICAweDEuOTAyNmY0cDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS42YzAyODcwZjQzZjQxMmYyZmFjZGE5YzcxYWY2NGQ5YXA1LAorICAgIC0weDEuOTAyNmY0cDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLmRjMjlhMjFkOTc4YzQ5ZDVlZjQwZTI0M2RhOTNlNTQ3cDAsCisgICAgMHgxLjkxMjkxMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS5kYzI5YTIxZDk3OGM0OWQ1ZWY0MGUyNDNkYTkzZTU0N3AwLAorICAgIC0weDEuOTEyOTEycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuZTg3ZGE5Y2UxNzE3NmQ5NTA4ZGQxNGM0NzBjODNiOThwMCwKKyAgICAweDEuYTVlOTcwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLmU4N2RhOWNlMTcxNzZkOTUwOGRkMTRjNDcwYzgzYjk4cDAsCisgICAgLTB4MS5hNWU5NzBwMQorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS41MjcyOGMwMGU1MmVmMDdkNmUwYTE3ODQ4ZDMyNmVlMnAxLAorICAgIDB4MS5iZmZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEuNTI3MjhjMDBlNTJlZjA3ZDZlMGExNzg0OGQzMjZlZTJwMSwKKyAgICAtMHgxLmJmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLjU1MTJiMmZmZmZmZmRjOTY2M2EzOGI3MmI2ZGNkZjZmcDAsCisgICAgMHgxLmMzNTIzZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS41NTEyYjJmZmZmZmZkYzk2NjNhMzhiNzJiNmRjZGY2ZnAwLAorICAgIC0weDEuYzM1MjNlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuYzUyYjdkMGYyN2U3MDA2MmI2ZWViNjNmYmZiY2NiOTZwLTYsCisgICAgMHgxLmM1M2E0OHAtNgorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEuYzUyYjdkMGYyN2U3MDA2MmI2ZWViNjNmYmZiY2NiOTZwLTYsCisgICAgLTB4MS5jNTNhNDhwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuYTg5YjMyZmZmNDBkMzBmY2I0OTg4YzY1NmUwM2FmODJwLTEsCisgICAgMHgxLmRhZmE3NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEuYTg5YjMyZmZmNDBkMzBmY2I0OTg4YzY1NmUwM2FmODJwLTEsCisgICAgLTB4MS5kYWZhNzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuNjI3NGIyZmZmZTY4OWQ3YWJiNjY3YjNmOGFiNjZlOTRwMCwKKyAgICAweDEuZGYxMzQ0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMHgxLjYyNzRiMmZmZmU2ODlkN2FiYjY2N2IzZjhhYjY2ZTk0cDAsCisgICAgLTB4MS5kZjEzNDRwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS5lOWQ4OWFmZmY2NjY5OWEzYTBhMDEwN2VlYzcyOTJiOHAtNCwKKyAgICAweDEuZWIwM2JjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS5lOWQ4OWFmZmY2NjY5OWEzYTBhMDEwN2VlYzcyOTJiOHAtNCwKKyAgICAtMHgxLmViMDNiY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDB4MS5iYWJhNjI0Y2YyMDNjMzhiZmM1ODVhYjE5NDYzZTgxYnAtMSwKKyAgICAweDEuZjNmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS5iYWJhNjI0Y2YyMDNjMzhiZmM1ODVhYjE5NDYzZTgxYnAtMSwKKyAgICAtMHgxLmYzZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS5iY2M2NmVhZDliZGM3YmFlMTBiNzA1NzM5Y2U2MjczYXAtMSwKKyAgICAweDEuZjZkZDgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS5iY2M2NmVhZDliZGM3YmFlMTBiNzA1NzM5Y2U2MjczYXAtMSwKKyAgICAtMHgxLmY2ZGQ4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIDB4MS5kY2EyMWYwMDYwOGMxZDVkZmE4YzZlYjFjZTJmNzI1Y3A0LAorICAgIDB4MS5mN2ZmZmVwNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLmRjYTIxZjAwNjA4YzFkNWRmYThjNmViMWNlMmY3MjVjcDQsCisgICAgLTB4MS5mN2ZmZmVwNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuMGEyZjFkMDAwMDA3NGI5ZmUxNzAyYjJlM2YwNzlhM2JwMSwKKyAgICAweDEuZjgxMDI0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLjBhMmYxZDAwMDAwNzRiOWZlMTcwMmIyZTNmMDc5YTNicDEsCisgICAgLTB4MS5mODEwMjRwMQorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS5mOGI4YzJkOTQwYjc2ZTFjY2ExZWJmNTRmNDE5NWQyMHAtNCwKKyAgICAweDEuZjlmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS5mOGI4YzJkOTQwYjc2ZTFjY2ExZWJmNTRmNDE5NWQyMHAtNCwKKyAgICAtMHgxLmY5ZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS5mYTZkMDZmZmY2NjkxZTk1NmYzMjA3YjBhNWNhNGVlYXAtNCwKKyAgICAweDEuZmJiNzk2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS5mYTZkMDZmZmY2NjkxZTk1NmYzMjA3YjBhNWNhNGVlYXAtNCwKKyAgICAtMHgxLmZiYjc5NnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIDB4MS5mZDI2YTUxMjAyZDg0MDQ3ZjUwYzE4YTRjNDIzNWQ4NnAtNiwKKyAgICAweDEuZmQzYmEwcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS5mZDI2YTUxMjAyZDg0MDQ3ZjUwYzE4YTRjNDIzNWQ4NnAtNiwKKyAgICAtMHgxLmZkM2JhMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS5lYWY4YTkwMDU3OTJmMDk3ZTAwNmQwNzBlYzZlNzUzOHAtMiwKKyAgICAweDEuZmRmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS5lYWY4YTkwMDU3OTJmMDk3ZTAwNmQwNzBlYzZlNzUzOHAtMiwKKyAgICAtMHgxLmZkZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS5mZjMyMmYxMjYwZDVkNTE2OGNhNmQ3Njk3NTI0NjAxMnAtNywKKyAgICAweDEuZmYzNzdlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgLTB4MS5mZjMyMmYxMjYwZDVkNTE2OGNhNmQ3Njk3NTI0NjAxMnAtNywKKyAgICAtMHgxLmZmMzc3ZXAtNworICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS5iNjEwMmFmZmM3Zjc0NjM4YzZkOTc5Nzk5ZGIyYmZhYXA1LAorICAgIDB4MS5mZjlmZmVwNzcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAtMHgxLmI2MTAyYWZmYzdmNzQ2MzhjNmQ5Nzk3OTlkYjJiZmFhcDUsCisgICAgLTB4MS5mZjlmZmVwNzcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuZmZiMjk5MTE0MzdiYjU4Y2IxNTFlMzA0YjFmYWQ5YThwLTcsCisgICAgMHgxLmZmYjdlY3AtNworICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIC0weDEuZmZiMjk5MTE0MzdiYjU4Y2IxNTFlMzA0YjFmYWQ5YThwLTcsCisgICAgLTB4MS5mZmI3ZWNwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuZmU4ZDQ4YWMxOTNlYWExN2UyYmI4YjkzNDI3OTFmMmRwLTQsCisgICAgMHgxLmZmZGZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0weDEuZmU4ZDQ4YWMxOTNlYWExN2UyYmI4YjkzNDI3OTFmMmRwLTQsCisgICAgLTB4MS5mZmRmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuZmZkZmE4YmFkMTA0ZTA1NTFmMDJiMDUzMGNmYWQ0ZjhwLTksCisgICAgMHgxLmZmZGZmZXAtOQorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuZmZkZmE4YmFkMTA0ZTA1NTFmMDJiMDUzMGNmYWQ0ZjhwLTksCisgICAgLTB4MS5mZmRmZmVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuZmVhNDlhM2FlYmJjMzVlMTcyMzhlZWEyOTU0N2NhZjhwLTQsCisgICAgMHgxLmZmZjc3ZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuZmVhNDlhM2FlYmJjMzVlMTcyMzhlZWEyOTU0N2NhZjhwLTQsCisgICAgLTB4MS5mZmY3N2VwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuZmFjZjk5MDA1OTllOWU2YWEwYjAyMzgxMTQ3NmZlZThwLTMsCisgICAgMHgxLmZmZmZlNnAtMworICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuZmFjZjk5MDA1OTllOWU2YWEwYjAyMzgxMTQ3NmZlZThwLTMsCisgICAgLTB4MS5mZmZmZTZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuZmZhYWM1MDA0MGE5YzA4ODFlNTYwZTQ4ODk3OTIwODdwLTUsCisgICAgMHgxLmZmZmZmNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEuZmZhYWM1MDA0MGE5YzA4ODFlNTYwZTQ4ODk3OTIwODdwLTUsCisgICAgLTB4MS5mZmZmZjRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEuZmZhYWM4ZmU0MjI4OTU4MTQ4NWVlMTEwNTA3ODM3ZjZwLTUsCisgICAgMHgxLmZmZmZmOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuZmZhYWM4ZmU0MjI4OTU4MTQ4NWVlMTEwNTA3ODM3ZjZwLTUsCisgICAgLTB4MS5mZmZmZjhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuYzlkOTI2ZmZmZmVjNTc3ZjU0OWM5NTJhZmY4ZWE2N2VwLTEsCisgICAgMHgxLjA0YWQ3NnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTB4MS5jOWQ5MjZmZmZmZWM1NzdmNTQ5Yzk1MmFmZjhlYTY3ZXAtMSwKKyAgICAtMHgxLjA0YWQ3NnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgLTB4MS5jMzQzNjYxNzlkNDI2Y2MxYjFmMzNkMWJhNGEzMTRhN3AtMSwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLmMzNDM2NjE3OWQ0MjZjYzFiMWYzM2QxYmE0YTMxNGE3cC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEuOTQ5MGZlYzNlZmJlNTk4ODQ5N2MxNDc4NTY1YWE0NDZwLTEsCisgICAgLTB4MS5jMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIDB4MS45NDkwZmVjM2VmYmU1OTg4NDk3YzE0Nzg1NjVhYTQ0NnAtMSwKKyAgICAweDEuYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcC0xLAorICAgIC0weDEuODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAweDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwLTEsCisgICAgMHgxLjgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgLTB4MS4yZTI3NTAyY2JmYjMzNDdmNmJjYmY4NGViOTVjYTRhM3AtMSwKKyAgICAtMHgxLjQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLjJlMjc1MDJjYmZiMzM0N2Y2YmNiZjg0ZWI5NWNhNGEzcC0xLAorICAgIDB4MS40MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIC0weDEuZWNjMmNhZWM1MTYwOTk0YmUwNDIwNGE5NjhjNzAyMGRwLTIsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAweDEuZWNjMmNhZWM1MTYwOTk0YmUwNDIwNGE5NjhjNzAyMGRwLTIsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIC0weDEuNzc4NmE3OTczYTU5MjNiOTZlZWYyNjEwYzI1ZTg0MWFwLTIsCisgICAgLTB4MS44MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS43Nzg2YTc5NzNhNTkyM2I5NmVlZjI2MTBjMjVlODQxYXAtMiwKKyAgICAweDEuODBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAtMHgxLmZhY2ZiMjM5OWU2MzZlOGQ2NzExNWRlNTQwYTc3OGFjcC0zLAorICAgIC0weDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLmZhY2ZiMjM5OWU2MzZlOGQ2NzExNWRlNTQwYTc3OGFjcC0zLAorICAgIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAtMHgxLmZlYWQwYjY5OTY5NzJkMDYwNThlM2ViMTJjOTM4MTQwcC00LAorICAgIC0weDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLmZlYWQwYjY5OTY5NzJkMDYwNThlM2ViMTJjOTM4MTQwcC00LAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMHgxLmZlYWQwYjY5OTY5NzJkMDYwNThlM2ViMTJjOTM4MTQwcC00LAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAtMHgxLmZlYWQwYjY5OTY5NzJkMDYwNThlM2ViMTJjOTM4MTQwcC00LAorICAgIC0weDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLmZhY2ZiMjM5OWU2MzZlOGQ2NzExNWRlNTQwYTc3OGFjcC0zLAorICAgIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAtMHgxLmZhY2ZiMjM5OWU2MzZlOGQ2NzExNWRlNTQwYTc3OGFjcC0zLAorICAgIC0weDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLjc3ODZhNzk3M2E1OTIzYjk2ZWVmMjYxMGMyNWU4NDFhcC0yLAorICAgIDB4MS44MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0weDEuNzc4NmE3OTczYTU5MjNiOTZlZWYyNjEwYzI1ZTg0MWFwLTIsCisgICAgLTB4MS44MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS5lY2MyY2FlYzUxNjA5OTRiZTA0MjA0YTk2OGM3MDIwZHAtMiwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgLTB4MS5lY2MyY2FlYzUxNjA5OTRiZTA0MjA0YTk2OGM3MDIwZHAtMiwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIDB4MS4yZTI3NTAyY2JmYjMzNDdmNmJjYmY4NGViOTVjYTRhM3AtMSwKKyAgICAweDEuNDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAtMHgxLjJlMjc1MDJjYmZiMzM0N2Y2YmNiZjg0ZWI5NWNhNGEzcC0xLAorICAgIC0weDEuNDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAweDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwLTEsCisgICAgMHgxLjgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAtMSwKKyAgICAtMHgxLjgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMHgxLjk0OTBmZWMzZWZiZTU5ODg0OTdjMTQ3ODU2NWFhNDQ2cC0xLAorICAgIDB4MS5jMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIC0weDEuOTQ5MGZlYzNlZmJlNTk4ODQ5N2MxNDc4NTY1YWE0NDZwLTEsCisgICAgLTB4MS5jMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS5jMzQzNjYxNzlkNDI2Y2MxYjFmMzNkMWJhNGEzMTRhN3AtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAtMHgxLmMzNDM2NjE3OWQ0MjZjYzFiMWYzM2QxYmE0YTMxNGE3cC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAweDEuMTgwODBkZDMxNzFiNmMwMzFhOWI1NzZiZTYzYjZkNGNwNiwKKyAgICAweDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIC0weDEuMTgwODBkZDMxNzFiNmMwMzFhOWI1NzZiZTYzYjZkNGNwNiwKKyAgICAtMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuMTg2OWE2ZDI3MDY5OWUxZmE3YzMwN2Q1ZmRiY2U4NjRwNiwKKyAgICAweDEuMTk5OTlhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIC0weDEuMTg2OWE2ZDI3MDY5OWUxZmE3YzMwN2Q1ZmRiY2U4NjRwNiwKKyAgICAtMHgxLjE5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEuMThjMmMwNTY1MGVhYzk3YzAxNDc5YTFhNzdjYWE5MDlwNiwKKyAgICAweDEuMzMzMzM0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIC0weDEuMThjMmMwNTY1MGVhYzk3YzAxNDc5YTFhNzdjYWE5MDlwNiwKKyAgICAtMHgxLjMzMzMzNHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAweDEuMTkxNGI3MGU4NjcyMWJiZGU3YTJlZWE2ZjA3N2Q1NDhwNiwKKyAgICAweDEuNGNjY2NlcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIC0weDEuMTkxNGI3MGU4NjcyMWJiZGU3YTJlZWE2ZjA3N2Q1NDhwNiwKKyAgICAtMHgxLjRjY2NjZXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEuMTk2MDlhMDUzYTk3ZDZmMzA0MDk3NTFlNjI4MWRlNTlwNiwKKyAgICAweDEuNjY2NjY4cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIC0weDEuMTk2MDlhMDUzYTk3ZDZmMzA0MDk3NTFlNjI4MWRlNTlwNiwKKyAgICAtMHgxLjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEuMTlhNzQwMTczODZhNDI4OTYyNzkxZjA1Njg3OTcyZjZwNiwKKyAgICAweDEuODAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIC0weDEuMTlhNzQwMTczODZhNDI4OTYyNzkxZjA1Njg3OTcyZjZwNiwKKyAgICAtMHgxLjgwMDAwMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAweDEuMTllOTU2N2FiOThkZDQ1YzY4OThhNTQyYTkzZDZjMWJwNiwKKyAgICAweDEuOTk5OTljcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIC0weDEuMTllOTU2N2FiOThkZDQ1YzY4OThhNTQyYTkzZDZjMWJwNiwKKyAgICAtMHgxLjk5OTk5Y3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEuMWEyNzZhZGNkMDQ3MmY1MmNkYWU0MDUxOTBmMDU4MTRwNiwKKyAgICAweDEuYjMzMzM2cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIC0weDEuMWEyNzZhZGNkMDQ3MmY1MmNkYWU0MDUxOTBmMDU4MTRwNiwKKyAgICAtMHgxLmIzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEuMWE2MWYyOTk4ZWFiNjUzZTU1Y2RhOWNmMWI4ZDllNTBwNiwKKyAgICAweDEuY2NjY2QwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIC0weDEuMWE2MWYyOTk4ZWFiNjUzZTU1Y2RhOWNmMWI4ZDllNTBwNiwKKyAgICAtMHgxLmNjY2NkMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuMWE5OTRmZmZkMzAwNTU1YTBkNjM0ODE2MDFkMzY0MjJwNiwKKyAgICAweDEuZTY2NjZhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIC0weDEuMWE5OTRmZmZkMzAwNTU1YTBkNjM0ODE2MDFkMzY0MjJwNiwKKyAgICAtMHgxLmU2NjY2YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEuMWFjZGQ2MzJmNjYyYTllOWM5YzJlNjNhNDY0YjM5MjdwNiwKKyAgICAweDEucDEwMQorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIC0weDEuMWFjZGQ2MzJmNjYyYTllOWM5YzJlNjNhNDY0YjM5MjdwNiwKKyAgICAtMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAtMHgxLjY1YTlmODRiODJlNjJmM2U0MmVkYTBhOTExYTA2M2UzcDYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjY1YTlmODRiODJlNjJmM2U0MmVkYTBhOTExYTA2M2UzcDYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAweDEuNjVhOWY4NGI4MmU2MmYzZTQyZWRhMGE5MTFhMDYzZTNwNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIC0weDEuNjVhOWY4NGI4MmU2MmYzZTQyZWRhMGE5MTFhMDYzZTNwNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgLTB4MS4wNDk5ZTVkMDhkYmQ0NjllNWM4ZTM5OWQzZmRhZjJiYXAtMSwKKyAgICAtMHgxLjEwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS4wNDk5ZTVkMDhkYmQ0NjllNWM4ZTM5OWQzZmRhZjJiYXAtMSwKKyAgICAweDEuMTAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgLTB4MS4wNDk5ZTQwYzY1ZmY0OGZiMDQyMTNlYWIzMmZhYTM0NXAtMSwKKyAgICAtMHgxLjEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLjA0OTllNDBjNjVmZjQ4ZmIwNDIxM2VhYjMyZmFhMzQ1cC0xLAorICAgIDB4MS4xMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIC0weDEuMDQ5OWUyNDgzZTQwOTAwMTk5NDcxMzExMDgwYWEzZWZwLTEsCisgICAgLTB4MS4wZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuMDQ5OWUyNDgzZTQwOTAwMTk5NDcxMzExMDgwYWEzZWZwLTEsCisgICAgMHgxLjBmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS4wNDk5ZTI0ODNlNDA5MDAxOTk0NzEzMTEwODBhYTNlZnAtMSwKKyAgICAweDEuMGZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgLTB4MS4wNDk5ZTI0ODNlNDA5MDAxOTk0NzEzMTEwODBhYTNlZnAtMSwKKyAgICAtMHgxLjBmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS4wNDk5ZTQwYzY1ZmY0OGZiMDQyMTNlYWIzMmZhYTM0NXAtMSwKKyAgICAweDEuMTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAtMHgxLjA0OTllNDBjNjVmZjQ4ZmIwNDIxM2VhYjMyZmFhMzQ1cC0xLAorICAgIC0weDEuMTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEuMDQ5OWU1ZDA4ZGJkNDY5ZTVjOGUzOTlkM2ZkYWYyYmFwLTEsCisgICAgMHgxLjEwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIC0weDEuMDQ5OWU1ZDA4ZGJkNDY5ZTVjOGUzOTlkM2ZkYWYyYmFwLTEsCisgICAgLTB4MS4xMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuNjJlNDJmZTdhMzllZWY1NzkzYzRiYzg1NWIzYjQyYjJwNSwKKyAgICAweDEuZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgLTB4MS42MmU0MmZlN2EzOWVlZjU3OTNjNGJjODU1YjNiNDJiMnA1LAorICAgIC0weDEuZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDUsCisgICAgMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIC0weDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwNSwKKyAgICAtMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIDB4MS42MmU0MmZmZmEzOWVlMzU3OTNkY2JjODUzZDNiNDJlN3A1LAorICAgIDB4MS4wMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAtMHgxLjYyZTQyZmZmYTM5ZWUzNTc5M2RjYmM4NTNkM2I0MmU3cDUsCisgICAgLTB4MS4wMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuNDE5ZWNiNjEyYzQ4MDQ4YjVkZTc2ODJlMmRkZjA4NDVwNCwKKyAgICAweDEuZmZmZmZlcDI3CisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgLTB4MS40MTllY2I2MTJjNDgwNDhiNWRlNzY4MmUyZGRmMDg0NXA0LAorICAgIC0weDEuZmZmZmZlcDI3CisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjQxOWVjYjcxMmM0ODBjOGI1ZGVjYjU4Mzg3Mjg1ZDlkcDQsCisgICAgMHgxLnAyOAorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIC0weDEuNDE5ZWNiNzEyYzQ4MGM4YjVkZWNiNTgzODcyODVkOWRwNCwKKyAgICAtMHgxLnAyOAorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIDB4MS40MTllY2I5MTJjNDdlYzhiNWUxNzUwMmRmMjAzMDhhZXA0LAorICAgIDB4MS4wMDAwMDJwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAtMHgxLjQxOWVjYjkxMmM0N2VjOGI1ZTE3NTAyZGYyMDMwOGFlcDQsCisgICAgLTB4MS4wMDAwMDJwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuMzY4N2E5ZTFhZjJiMGNmY2ExNDk0NGY0YWRjM2MyNWFwNCwKKyAgICAweDEuZmZmZmZlcDI2CisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgLTB4MS4zNjg3YTllMWFmMmIwY2ZjYTE0OTQ0ZjRhZGMzYzI1YXA0LAorICAgIC0weDEuZmZmZmZlcDI2CisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLjM2ODdhOWYxYWYyYjE0ZmNhMTRlN2E0YTA2ZTkxN2IycDQsCisgICAgMHgxLnAyNworICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuMzY4N2E5ZjFhZjJiMTRmY2ExNGU3YTRhMDZlOTE3YjJwNCwKKyAgICAtMHgxLnAyNworICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS4zNjg3YWExMWFmMmFmNGZjYTE3OGU0ZjQ3MjUzYzJjMXA0LAorICAgIDB4MS4wMDAwMDJwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAtMHgxLjM2ODdhYTExYWYyYWY0ZmNhMTc4ZTRmNDcyNTNjMmMxcDQsCisgICAgLTB4MS4wMDAwMDJwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEuMTU0MjQ1NjMzN2Q0MmExYzZiNzY3MzQ4Mzc1NjRjMjNwNCwKKyAgICAweDEuZmZmZmZlcDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgLTB4MS4xNTQyNDU2MzM3ZDQyYTFjNmI3NjczNDgzNzU2NGMyM3A0LAorICAgIC0weDEuZmZmZmZlcDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgMHgxLjE1NDI0NTczMzdkNDMyMWM2YjczYzg5ZDg0YWJhMTcxcDQsCisgICAgMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEuMTU0MjQ1NzMzN2Q0MzIxYzZiNzNjODlkODRhYmExNzFwNCwKKyAgICAtMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIDB4MS4xNTQyNDU5MzM3ZDQxMjFjNmI4ZTczNDgxZjU2NGMwZXA0LAorICAgIDB4MS4wMDAwMDJwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAtMHgxLjE1NDI0NTkzMzdkNDEyMWM2YjhlNzM0ODFmNTY0YzBlcDQsCisgICAgLTB4MS4wMDAwMDJwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEuMGMxZjg5ZjI1MzRkNTQ4MzczYTI1YTI2ZjI4NWM4ZTRwMSwKKyAgICAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAtMHgxLjBjMWY4OWYyNTM0ZDU0ODM3M2EyNWEyNmYyODVjOGU0cDEsCisgICAgLTB4MS5mZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDB4MS4wYzFmOGE2ZTgwZWViMjNlMDM5MjY5ODFlMzQ4ZWIyZXAxLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0weDEuMGMxZjhhNmU4MGVlYjIzZTAzOTI2OTgxZTM0OGViMmVwMSwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLjBjMWY4YjY2ZGMzMDBmMTQzMDIwM2RmN2I3NDY2MDYzcDEsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgLTB4MS4wYzFmOGI2NmRjMzAwZjE0MzAyMDNkZjdiNzQ2NjA2M3AxLAorICAgIC0weDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuNzE5MjE3NGM0M2Q5ZTk2Mjk5Zjc4MTE2ODUyZjAyMjZwMCwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAtMHgxLjcxOTIxNzRjNDNkOWU5NjI5OWY3ODExNjg1MmYwMjI2cDAsCisgICAgLTB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDB4MS43MTkyMTgzMTNkMDg3MmY4ZTgzMTgzN2YwZTk1NDE4OXAwLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEuNzE5MjE4MzEzZDA4NzJmOGU4MzE4MzdmMGU5NTQxODlwMCwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgMHgxLjcxOTIxOWZiMmY2MzYwOWM0YTA0NjM0ZmI2ODg3OGFlcDAsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgLTB4MS43MTkyMTlmYjJmNjM2MDljNGEwNDYzNGZiNjg4NzhhZXAwLAorICAgIC0weDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEuYzM0MzY0YWQ5MzViYWE0YjdiODEyMWJhOGRmNjJiNmNwLTEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIC0weDEuYzM0MzY0YWQ5MzViYWE0YjdiODEyMWJhOGRmNjJiNmNwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuYzM0MzY2MTc5ZDQyNmNjMWIxZjMzZDFiYTRhMzE0YTdwLTEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgLTB4MS5jMzQzNjYxNzlkNDI2Y2MxYjFmMzNkMWJhNGEzMTRhN3AtMSwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLmMzNDM2OGViYjEwZGQyOWY0NTk2MDhiY2E0M2Y5MWM4cC0xLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIC0weDEuYzM0MzY4ZWJiMTBkZDI5ZjQ1OTYwOGJjYTQzZjkxYzhwLTEsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS5lY2MyYzkyMjVmMDQwZjgxOTMxMWZjYzcwYTk4MTM0N3AtMiwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgLTB4MS5lY2MyYzkyMjVmMDQwZjgxOTMxMWZjYzcwYTk4MTM0N3AtMiwKKyAgICAtMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS5lY2MyY2FlYzUxNjA5OTRiZTA0MjA0YTk2OGM3MDIwZHAtMiwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgLTB4MS5lY2MyY2FlYzUxNjA5OTRiZTA0MjA0YTk2OGM3MDIwZHAtMiwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDB4MS5lY2MyY2U4MDM2MTg5YTFiZGNhY2E1OTAzNjg4NTBiMnAtMiwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgLTB4MS5lY2MyY2U4MDM2MTg5YTFiZGNhY2E1OTAzNjg4NTBiMnAtMiwKKyAgICAtMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS5mYWNmYjA0OGU3ZGVkMmM2ODA3YmRhMGI4MTAxYmU1ZXAtMywKKyAgICAweDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgLTB4MS5mYWNmYjA0OGU3ZGVkMmM2ODA3YmRhMGI4MTAxYmU1ZXAtMywKKyAgICAtMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIDB4MS5mYWNmYjIzOTllNjM2ZThkNjcxMTVkZTU0MGE3NzhhY3AtMywKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgLTB4MS5mYWNmYjIzOTllNjM2ZThkNjcxMTVkZTU0MGE3NzhhY3AtMywKKyAgICAtMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS5mYWNmYjYxYjBiNmM0ZTczNzcxYTdiNDQ0NjAwZDg2MnAtMywKKyAgICAweDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgLTB4MS5mYWNmYjYxYjBiNmM0ZTczNzcxYTdiNDQ0NjAwZDg2MnAtMywKKyAgICAtMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIDB4MS5mZWFkMDk2ZDhhYmU5ZjBlNzIyMmI5YWFiOTU1MTJmMXAtNCwKKyAgICAweDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgLTB4MS5mZWFkMDk2ZDhhYmU5ZjBlNzIyMmI5YWFiOTU1MTJmMXAtNCwKKyAgICAtMHgxLmZmZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS5mZWFkMGI2OTk2OTcyZDA2MDU4ZTNlYjEyYzkzODE0MHAtNCwKKyAgICAweDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgLTB4MS5mZWFkMGI2OTk2OTcyZDA2MDU4ZTNlYjEyYzkzODE0MHAtNCwKKyAgICAtMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIDB4MS5mZWFkMGY2MWFlNDgzMTgyNjk0M2MzYjg3MWJlNDZhNHAtNCwKKyAgICAweDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgLTB4MS5mZWFkMGY2MWFlNDgzMTgyNjk0M2MzYjg3MWJlNDZhNHAtNCwKKyAgICAtMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIDB4MS5mZmFhY2VmYjQ0NjZjNjBkNmJhMmQyZmFjODc3NGZkYXAtNSwKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgLTB4MS5mZmFhY2VmYjQ0NjZjNjBkNmJhMmQyZmFjODc3NGZkYXAtNSwKKyAgICAtMHgxLmZmZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDB4MS5mZmFhZDBmYTQ1MjYyNzk3NmZmMzY2YjlkMzg0MGZkMXAtNSwKKyAgICAweDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgLTB4MS5mZmFhZDBmYTQ1MjYyNzk3NmZmMzY2YjlkMzg0MGZkMXAtNSwKKyAgICAtMHgxLnAtNAorICB9LAorICB7IC8vIEVudHJ5IDMzOAorICAgIDB4MS5mZmFhZDRmODQ2YTRlNGI0NmQ1ZmE4NzE3NDk5MGQ5NnAtNSwKKyAgICAweDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgLTB4MS5mZmFhZDRmODQ2YTRlNGI0NmQ1ZmE4NzE3NDk5MGQ5NnAtNSwKKyAgICAtMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIDB4MS5mZmVhYWIxMGY1YTZlN2QxODljNTdjMGU2OGJiYjAzYXAtNiwKKyAgICAweDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzQxCisgICAgLTB4MS5mZmVhYWIxMGY1YTZlN2QxODljNTdjMGU2OGJiYjAzYXAtNiwKKyAgICAtMHgxLmZmZmZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS5mZmVhYWQxMGI1YjJlNTkxZmRhZDZiZDdmN2E0OTdjM3AtNiwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgMzQzCisgICAgLTB4MS5mZmVhYWQxMGI1YjJlNTkxZmRhZDZiZDdmN2E0OTdjM3AtNiwKKyAgICAtMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDM0NAorICAgIDB4MS5mZmVhYjExMDM1Y2FkZjkzNzU0ZmQ5MTcxYTk5NmM5OHAtNiwKKyAgICAweDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMzQ1CisgICAgLTB4MS5mZmVhYjExMDM1Y2FkZjkzNzU0ZmQ5MTcxYTk5NmM5OHAtNiwKKyAgICAtMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS5mZmZhYThkMTFmYTJhOWJkMjVmNGMzYTEzOTc5MWJhM3AtNywKKyAgICAweDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMzQ3CisgICAgLTB4MS5mZmZhYThkMTFmYTJhOWJkMjVmNGMzYTEzOTc5MWJhM3AtNywKKyAgICAtMHgxLmZmZmZmZXAtNworICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDB4MS5mZmZhYWFkMTBmYTM2OWMzMjUwMGQ0NmJhNzkyNzQ1OHAtNywKKyAgICAweDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgLTB4MS5mZmZhYWFkMTBmYTM2OWMzMjUwMGQ0NmJhNzkyNzQ1OHAtNywKKyAgICAtMHgxLnAtNgorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS5mZmZhYWVkMGVmYTRlOTZmMmMxODIyMTZhMWFkMjIxOHAtNywKKyAgICAweDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgLTB4MS5mZmZhYWVkMGVmYTRlOTZmMmMxODIyMTZhMWFkMjIxOHAtNywKKyAgICAtMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIDB4MS5mZmZmZmRmYWFhYWFiYWQxMTEwMDRmYTM2MTE1MDgzY3AtMTUsCisgICAgMHgxLmZmZmZmZXAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAtMHgxLmZmZmZmZGZhYWFhYWJhZDExMTAwNGZhMzYxMTUwODNjcC0xNSwKKyAgICAtMHgxLmZmZmZmZXAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuZmZmZmZmZmFhYWFhYWFkMTExMTEwZmEzNWEzNWIyZThwLTE1LAorICAgIDB4MS5wLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMzU1CisgICAgLTB4MS5mZmZmZmZmYWFhYWFhYWQxMTExMTBmYTM1YTM1YjJlOHAtMTUsCisgICAgLTB4MS5wLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgMHgxLjAwMDAwMWZkNTU1NTQ1Njg4ODY5NDdkMTlhYmI4NDI0cC0xNCwKKyAgICAweDEuMDAwMDAycC0xNAorICB9LAorICB7IC8vIEVudHJ5IDM1NworICAgIC0weDEuMDAwMDAxZmQ1NTU1NDU2ODg4Njk0N2QxOWFiYjg0MjRwLTE0LAorICAgIC0weDEuMDAwMDAycC0xNAorICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIDB4MS5mZmZmZmRmZmZmZmZmZWFhYWFhZWFhYWFhNmFkMTExMnAtMjgsCisgICAgMHgxLmZmZmZmZXAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZlYWFhYWFlYWFhYWE2YWQxMTEycC0yOCwKKyAgICAtMHgxLmZmZmZmZXAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmVhYWFhYWFhYWFhYWFhZDExMTFwLTI4LAorICAgIDB4MS5wLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzYxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZWFhYWFhYWFhYWFhYWFkMTExMXAtMjgsCisgICAgLTB4MS5wLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgMHgxLjAwMDAwMWZmZmZmZmZmNTU1NTUxNTU1NTRkNTY4ODgzcC0yNywKKyAgICAweDEuMDAwMDAycC0yNworICB9LAorICB7IC8vIEVudHJ5IDM2MworICAgIC0weDEuMDAwMDAxZmZmZmZmZmY1NTU1NTE1NTU1NGQ1Njg4ODNwLTI3LAorICAgIC0weDEuMDAwMDAycC0yNworICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmFhYWFhYmFhYWFhOWFhZDExMXAtMjksCisgICAgMHgxLmZmZmZmZXAtMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmYWFhYWFiYWFhYWE5YWFkMTExcC0yOSwKKyAgICAtMHgxLmZmZmZmZXAtMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZhYWFhYWFhYWFhYWFhYWQxMTFwLTI5LAorICAgIDB4MS5wLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmFhYWFhYWFhYWFhYWFhZDExMXAtMjksCisgICAgLTB4MS5wLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMzY4CisgICAgMHgxLjAwMDAwMWZmZmZmZmZmZDU1NTU0NTU1NTUzNTU2ODg3cC0yOCwKKyAgICAweDEuMDAwMDAycC0yOAorICB9LAorICB7IC8vIEVudHJ5IDM2OQorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZkNTU1NTQ1NTU1NTM1NTY4ODdwLTI4LAorICAgIC0weDEuMDAwMDAycC0yOAorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZhYWFhYWJhYWFhYTlhYWFkMXAtMzEsCisgICAgMHgxLmZmZmZmZXAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmFhYWFhYmFhYWFhOWFhYWQxcC0zMSwKKyAgICAtMHgxLmZmZmZmZXAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmYWFhYWFhYWFhYWFhYWFhZDFwLTMxLAorICAgIDB4MS5wLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZhYWFhYWFhYWFhYWFhYWFkMXAtMzEsCisgICAgLTB4MS5wLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMzc0CisgICAgMHgxLjAwMDAwMWZmZmZmZmZmZmQ1NTU1NDU1NTU1MzU1NTY4cC0zMCwKKyAgICAweDEuMDAwMDAycC0zMAorICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmZDU1NTU0NTU1NTUzNTU1NjhwLTMwLAorICAgIC0weDEuMDAwMDAycC0zMAorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzgKKyAgICAweDEuNjVhOWY4NGI4MmU2MmYzZTQyZWRhMGE5MTFhMDYzZTNwNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM3OQorICAgIC0weDEuNjVhOWY4NGI4MmU2MmYzZTQyZWRhMGE5MTFhMDYzZTNwNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODAKKyAgICAweDEuNjVhOWY4NDc4MmU2MjkzZTQyZTQ0YjUzYWQ0YjBlNzRwNiwKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM4MQorICAgIC0weDEuNjVhOWY4NDc4MmU2MjkzZTQyZTQ0YjUzYWQ0YjBlNzRwNiwKKyAgICAtMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODIKKyAgICAweDEuZGNiZjZhNjJlMzU0NzdmOWFlNzliZTcxZWQ5NzYyMGJwMCwKKyAgICAweDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODMKKyAgICAtMHgxLmRjYmY2YTYyZTM1NDc3ZjlhZTc5YmU3MWVkOTc2MjBicDAsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDM4NAorICAgIDB4MS4zYmMwNGVlOTUxMDMyYjRmNzUwOWIzYjJlMGYwNzE1YXAwLAorICAgIDB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDM4NQorICAgIC0weDEuM2JjMDRlZTk1MTAzMmI0Zjc1MDliM2IyZTBmMDcxNWFwMCwKKyAgICAtMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgMHgxLmMzNDM2OGViYjEwZGQyOWY0NTk2MDhiY2E0M2Y5MWM4cC0xLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDM4NworICAgIC0weDEuYzM0MzY4ZWJiMTBkZDI5ZjQ1OTYwOGJjYTQzZjkxYzhwLTEsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIDB4MS5jMzQzNjYxNzlkNDI2Y2MxYjFmMzNkMWJhNGEzMTRhN3AtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAtMHgxLmMzNDM2NjE3OWQ0MjZjYzFiMWYzM2QxYmE0YTMxNGE3cC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTAKKyAgICAweDEuYzM0MzY0YWQ5MzViYWE0YjdiODEyMWJhOGRmNjJiNmNwLTEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIC0weDEuYzM0MzY0YWQ5MzViYWE0YjdiODEyMWJhOGRmNjJiNmNwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAweDEuNzE0NDc4MzFlNDNjZGUyZWQzMDY1MDQyOGM1YTg0MTBwLTEsCisgICAgMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5MworICAgIC0weDEuNzE0NDc4MzFlNDNjZGUyZWQzMDY1MDQyOGM1YTg0MTBwLTEsCisgICAgLTB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTQKKyAgICAweDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNiwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAtMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjYsCisgICAgLTB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDM5NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDAKKyAgICAweDEuZmZmZmY3ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAtMHgxLmZmZmZmN2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTQ5LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTE0OSwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNDA0CisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgMC4wLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICAtMC4wLAorICAgIC0wLjBmCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvYXRhbjJfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2F0YW4yX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZDllYjQ0Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2F0YW4yX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDUzNDggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzJfdDxkb3VibGUsIGRvdWJsZSwgZG91YmxlPiBnX2F0YW4yX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS5mZmZmZmZmZmZmZmYyMDAwMDAwMDAwMDA2MWZmZmQ1NXAtNjAsCisgICAgLTB4MS4wcC0xMDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDdwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS5mZmZmZmZmZmZmZmYyMDAwMDAwMDAwMDA2MWZmZmQ1NXAtNjAsCisgICAgMHgxLjBwLTEwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwN3AtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMHgxLmNkNjQ4MDEwZTc2MzE3ZmQyNWYxOTdjODk4OTRhNzQ3cC0xLAorICAgIC0weDEuMHAxMCwKKyAgICAweDEuOTU1NTU1NTU1NTU1ZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS5jZDY0ODAxMGU3NjMxN2ZkMjVmMTk3Yzg5ODk0YTc0N3AtMSwKKyAgICAweDEuMHAxMCwKKyAgICAweDEuOTU1NTU1NTU1NTU1ZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIC0weDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA0MHAtOTI0LAorICAgIC0weDEuMHAxMDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA0MHAtOTI0LAorICAgIDB4MS4wcDEwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIC0weDEuMDk0NWNhNDc1NzYyNjgwMTEwYzg2YzgyZjQwMDdiZGFwMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjE4Y2Q1ODRlNjExMmJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLjA5NDVjYTQ3NTc2MjY4MDExMGM4NmM4MmY0MDA3YmRhcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjE4Y2Q1ODRlNjExMmJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIC0weDEuZjljYTBlMWRkOTU0MzI0Yjk2NzMyZjBhZTljMWM4ZmZwLTMsCisgICAgLTB4MS4wMjIyMjIyMjIyMjIycDAsCisgICAgMHgxLmZmZWZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLmY5Y2EwZTFkZDk1NDMyNGI5NjczMmYwYWU5YzFjOGZmcC0zLAorICAgIDB4MS4wMjIyMjIyMjIyMjIycDAsCisgICAgMHgxLmZmZWZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgLTB4MS5mZmY5NjUzZTYyMDFmODg4OTM3Y2ZjMmQ3MTZiNGQ0NHAtMiwKKyAgICAtMHgxLjE0MTcxZjA2YmZiODlwLTIsCisgICAgMHgxLmY5NjkwMmRjY2QyOWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5mZmY5NjUzZTYyMDFmODg4OTM3Y2ZjMmQ3MTZiNGQ0NHAtMiwKKyAgICAweDEuMTQxNzFmMDZiZmI4OXAtMiwKKyAgICAweDEuZjk2OTAyZGNjZDI5YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgLTB4MS5mZjU3MmFkZWQwYmU5MzJmZWViNDcwN2RjYjY1MzM2ZHAwLAorICAgIC0weDEuMTk5OTk5OTk5OTk5OHAtMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5mZjU3MmFkZWQwYmU5MzJmZWViNDcwN2RjYjY1MzM2ZHAwLAorICAgIDB4MS4xOTk5OTk5OTk5OTk4cC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgLTB4MS5mZjU0Mjc1OGVmMDViOGU3ZGUwZDcwZTJkMzQxZWQ2N3AwLAorICAgIC0weDEuMTk5OTk5OTk5OTk5OXAtMSwKKyAgICAtMHgxLmZmZWZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS5mZjU0Mjc1OGVmMDViOGU3ZGUwZDcwZTJkMzQxZWQ2N3AwLAorICAgIDB4MS4xOTk5OTk5OTk5OTk5cC0xLAorICAgIC0weDEuZmZlZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgLTB4MS4yZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTA3MSwKKyAgICAtMHgxLjNwLTEwNzAsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDcxLAorICAgIDB4MS4zcC0xMDcwLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIC0weDEuODU1Mzk3MjllZjE3MjdmZWQxNTc4NGI2MGI5MWIyZWNwLTEsCisgICAgLTB4MS4zY2YzY2YzY2YzY2Y0cDksCisgICAgMHgxLjRkMzRkMzRkMzRkMzRwOQorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjg1NTM5NzI5ZWYxNzI3ZmVkMTU3ODRiNjBiOTFiMmVjcC0xLAorICAgIDB4MS4zY2YzY2YzY2YzY2Y0cDksCisgICAgMHgxLjRkMzRkMzRkMzRkMzRwOQorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS40MDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMGZmZmQ2NXAtNTksCisgICAgLTB4MS4zZmZmZmZmZmZmZmZlcDQyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLjQwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwZmZmZDY1cC01OSwKKyAgICAweDEuM2ZmZmZmZmZmZmZmZXA0MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAtMHgxLjRwLTEwNzIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIDB4MS40cC0xMDcyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAtMHgxLjNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDczLAorICAgIC0weDEuNHAtMTA3MiwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuM2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwNzMsCisgICAgMHgxLjRwLTEwNzIsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgLTB4MS41ZmZlN2MyN2E1Y2YzN2ZlZjE1NjY4ZWQ4YmZkYzkyY3AtMSwKKyAgICAtMHgxLjY0NzdjODRhMDMyY2VwLTEsCisgICAgMHgxLmIyMWY2OWFlMDMwYjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS41ZmZlN2MyN2E1Y2YzN2ZlZjE1NjY4ZWQ4YmZkYzkyY3AtMSwKKyAgICAweDEuNjQ3N2M4NGEwMzJjZXAtMSwKKyAgICAweDEuYjIxZjY5YWUwMzBiMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgLTB4MS42NjcxOTkwOGY3YzNiNzk2ZDg0MTg0OTc3YzkyMzg5NHAtMTIsCisgICAgLTB4MS42NjY2NjY2NjY1YjY0cC0xLAorICAgIDB4MS5mZmVmZmZmZmZmZmZmcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuNjY3MTk5MDhmN2MzYjc5NmQ4NDE4NDk3N2M5MjM4OTRwLTEyLAorICAgIDB4MS42NjY2NjY2NjY1YjY0cC0xLAorICAgIDB4MS5mZmVmZmZmZmZmZmZmcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAtMHgxLjY2NzE5OWYzM2FjZDA4MDEwMDExYTgyZTk4Mzg1MDBkcC01MiwKKyAgICAtMHgxLjY2NjY2NjY2NjY2NjhwLTEsCisgICAgMHgxLmZmZWZmZmZmZjkyNGZwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS42NjcxOTlmMzNhY2QwODAxMDAxMWE4MmU5ODM4NTAwZHAtNTIsCisgICAgMHgxLjY2NjY2NjY2NjY2NjhwLTEsCisgICAgMHgxLmZmZWZmZmZmZjkyNGZwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIC0weDEuNDhlZjg2YTVkNjc0ZTdmZTYyNjM0NWNhYTZkZWExYWRwMCwKKyAgICAtMHgxLjZlNTg5MjkyYTU4YThwMywKKyAgICAweDEuYWViZDk1NjQ0OTlmMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEuNDhlZjg2YTVkNjc0ZTdmZTYyNjM0NWNhYTZkZWExYWRwMCwKKyAgICAweDEuNmU1ODkyOTJhNThhOHAzLAorICAgIDB4MS5hZWJkOTU2NDQ5OWYwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIC0weDEuNjk0MTI2NTFiNjYzODgwMTAyMDU3ZmZlMmI2OTE2ZTdwLTIsCisgICAgLTB4MS43OTA2ZmU5MjU5M2RjcC0yLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS42OTQxMjY1MWI2NjM4ODAxMDIwNTdmZmUyYjY5MTZlN3AtMiwKKyAgICAweDEuNzkwNmZlOTI1OTNkY3AtMiwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAtMHgxLjdmZmZmZmZmZmZmZjk3ZmZiODAwMDAwMDEzODAzYTgwcC0zMywKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmVwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwM3AzMworICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLjdmZmZmZmZmZmZmZjk3ZmZiODAwMDAwMDEzODAzYTgwcC0zMywKKyAgICAweDEuN2ZmZmZmZmZmZmZmZXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAzcDMzCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAtMHgxLjdmZmZmZmZmZWUwMDIwMDAwMTg0Yzg0Y2QwYTViZmI3cC0xOCwKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AxNworICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjdmZmZmZmZmZWUwMDIwMDAwMTg0Yzg0Y2QwYTViZmI3cC0xOCwKKyAgICAweDEuN2ZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcDE3CisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAtMHgxLjAxYjdlYWQ2MjU5MTI4MDEwOTlkNTVmM2JiNmQ5Yjc0cDAsCisgICAgLTB4MS44ZTM4ZTM4ZTM4ZTM5cDksCisgICAgMHgxLmY3ZGY3ZGY3ZGY3ZGVwOAorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLjAxYjdlYWQ2MjU5MTI4MDEwOTlkNTVmM2JiNmQ5Yjc0cDAsCisgICAgMHgxLjhlMzhlMzhlMzhlMzlwOSwKKyAgICAweDEuZjdkZjdkZjdkZjdkZXA4CisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAtMHgxLjExOWUwZjcwODRkOTZiYzE4YmJmMmU3YTA4Y2ZlNWFkcDEsCisgICAgLTB4MS45MjQ5MjQ5MjQ5MjQ2cC0yLAorICAgIC0weDEuMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuMTE5ZTBmNzA4NGQ5NmJjMThiYmYyZTdhMDhjZmU1YWRwMSwKKyAgICAweDEuOTI0OTI0OTI0OTI0NnAtMiwKKyAgICAtMHgxLjAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuOTk5OTk5OTk5OTlhOHAtNCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjk5OTk5OTk5OTk5YThwLTQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIC0weDEuMzc2MjZjMjM4MDNhZWM3ZDdhNzBmNzAwNTg1ODUyZjRwLTEsCisgICAgLTB4MS5hNzc1NjlkZDVhNzc2cDgsCisgICAgMHgxLjMwMWVjYzA3YjMwMWVwOQorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgMHgxLjM3NjI2YzIzODAzYWVjN2Q3YTcwZjcwMDU4NTg1MmY0cC0xLAorICAgIDB4MS5hNzc1NjlkZDVhNzc2cDgsCisgICAgMHgxLjMwMWVjYzA3YjMwMWVwOQorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgLTB4MS4wY2E3Y2MyZDBkN2ZkMDMxNjRlZTNhZjI2OWU2YmY3OXAxLAorICAgIC0weDEuYjZkYjZkYjZkYjZlMHAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS4wY2E3Y2MyZDBkN2ZkMDMxNjRlZTNhZjI2OWU2YmY3OXAxLAorICAgIDB4MS5iNmRiNmRiNmRiNmUwcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwM3AtMQorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgLTB4MS5hMjcxZjYzZTM0ZmIyZmZmNDJiOThlN2E1YWIxN2VhZnAtMiwKKyAgICAtMHgxLmJiNjdhZTg1ODRjOTZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDhwMQorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLmEyNzFmNjNlMzRmYjJmZmY0MmI5OGU3YTVhYjE3ZWFmcC0yLAorICAgIDB4MS5iYjY3YWU4NTg0Yzk2cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDA4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIC0weDEuZjA4NDVkZTMxN2RhZTc4MmFjM2U4YTdlYjFmYWRkNjNwLTIsCisgICAgLTB4MS5iZWQ2MWJlZDYxYmU0cDcsCisgICAgMHgxLmE4MTRhZmQ2YTA1M2JwOAorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmYwODQ1ZGUzMTdkYWU3ODJhYzNlOGE3ZWIxZmFkZDYzcC0yLAorICAgIDB4MS5iZWQ2MWJlZDYxYmU0cDcsCisgICAgMHgxLmE4MTRhZmQ2YTA1M2JwOAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgLTB4MS4zYTUxZjVmMGNiNWQzM2RlMDdhYzI0YTMyNjIxODc4ZHAtMSwKKyAgICAtMHgxLmMxOGY5YzE4ZjljM2VwNywKKyAgICAweDEuM2VmMzY4ZWIwNDMzNHA4CisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuM2E1MWY1ZjBjYjVkMzNkZTA3YWMyNGEzMjYyMTg3OGRwLTEsCisgICAgMHgxLmMxOGY5YzE4ZjljM2VwNywKKyAgICAweDEuM2VmMzY4ZWIwNDMzNHA4CisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLmZjYjUxMGNkNWI2YmJiOGNkZTEzZjQ2ZGJlZWIzMTEwcC0zLAorICAgIC0weDEuZDI2YTJiYWQ5OGQ2OHAtMiwKKyAgICAweDEuY2JiZDQwN2E3YTViMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuZmNiNTEwY2Q1YjZiYmI4Y2RlMTNmNDZkYmVlYjMxMTBwLTMsCisgICAgMHgxLmQyNmEyYmFkOThkNjhwLTIsCisgICAgMHgxLmNiYmQ0MDdhN2E1YjBwMAorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgLTB4MS5jZDVkZTk3YTJlM2UxODU5ZmMzZTI1MTdkZTdhMDg4MHAtMywKKyAgICAtMHgxLmQ1NTU1NTU1NTU1NTVwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwM3AzCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuY2Q1ZGU5N2EyZTNlMTg1OWZjM2UyNTE3ZGU3YTA4ODBwLTMsCisgICAgMHgxLmQ1NTU1NTU1NTU1NTVwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwM3AzCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAtMHgxLjMzN2QxNzVlMDg4ZmI3ZmEzMmZhZmNhMzgyNzY4YTE1cC0zLAorICAgIC0weDEuZGI4YTg3NDY0MDU2OXAtMywKKyAgICAweDEuODhlZWQxMGU3NTEzNXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuMzM3ZDE3NWUwODhmYjdmYTMyZmFmY2EzODI3NjhhMTVwLTMsCisgICAgMHgxLmRiOGE4NzQ2NDA1NjlwLTMsCisgICAgMHgxLjg4ZWVkMTBlNzUxMzVwMAorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgLTB4MS5mOWQyOGYzZGEwOWM4ODY0MzkwY2Q5MjRhYzY1OGQzM3AwLAorICAgIC0weDEuZGRkZGRkZGRkZGRlMHAtMiwKKyAgICAtMHgxLjk5Y2UwNzVmNmZkMjdwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS5mOWQyOGYzZGEwOWM4ODY0MzkwY2Q5MjRhYzY1OGQzM3AwLAorICAgIDB4MS5kZGRkZGRkZGRkZGUwcC0yLAorICAgIC0weDEuOTljZTA3NWY2ZmQyN3AtMworICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS5hZTEyN2I0ZmI1YTdlODFjYzE0YzhkMDYyN2QxOGM3M3AtOCwKKyAgICAtMHgxLmVjY2Q3ZmRmOTY0NTRwMTAsCisgICAgMHgxLjI1NTYwOGUxMzVkODBwMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS5hZTEyN2I0ZmI1YTdlODFjYzE0YzhkMDYyN2QxOGM3M3AtOCwKKyAgICAweDEuZWNjZDdmZGY5NjQ1NHAxMCwKKyAgICAweDEuMjU1NjA4ZTEzNWQ4MHAxOAorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgLTB4MS4wOTEyMWI0YjBmYjE1NDAzZjkwMmYyZDA2YThmMTAzNHAxLAorICAgIC0weDEuZjVhODE0YWZkNmEwNXA5LAorICAgIC0weDEuMTIxOWRiY2M0ODY3M3A5CisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAweDEuMDkxMjFiNGIwZmIxNTQwM2Y5MDJmMmQwNmE4ZjEwMzRwMSwKKyAgICAweDEuZjVhODE0YWZkNmEwNXA5LAorICAgIC0weDEuMTIxOWRiY2M0ODY3M3A5CisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAtMHgxLmZmZDU1YmJhOTc2MjVhODBmMDNhYWVlYmIzMTkyNDE3cC02LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3A0CisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuZmZkNTViYmE5NzYyNWE4MGYwM2FhZWViYjMxOTI0MTdwLTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmRwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwNAorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAxZmZmZmZkcC02NCwKKyAgICAweDEuMHAtNTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIC0weDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDFmZmZmZmRwLTY0LAorICAgIC0weDEuMHAtNTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczY3AtMworICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2NwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuOTk5OTk5OTk5OTlhOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjk5OTk5OTk5OTk5YThwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDFmZmZmZmZwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDFmZmZmZmZwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjAyMjIyMjIyMjIyMjNwMAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjAyMjIyMjIyMjIyMjNwMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wMzEyNmU5NzhkNGZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wMzEyNmU5NzhkNGZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMGEzZDcwYTNkNzBhM3AwCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMGEzZDcwYTNkNzBhM3AwCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuMGI4MzNiZTE2NWNjZDNmMzY2MGQzODU3OTJkMzBiMWZwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMiwKKyAgICAtMHgxLjI0OTI0OTI0OTI0YWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIC0weDEuMGI4MzNiZTE2NWNjZDNmMzY2MGQzODU3OTJkMzBiMWZwMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTIsCisgICAgLTB4MS4yNDkyNDkyNDkyNGFhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuNTUyMmQxNmIyZjVhN2Q1MmZiZjZkZDRlYTEyNzM0YzRwLTUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQsCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS41NTIyZDE2YjJmNWE3ZDUyZmJmNmRkNGVhMTI3MzRjNHAtNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTQsCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjdmZmZmZmZlZGZmZmU4MDE4NGNkMDJjYTVlZjBlNTlhcC0xNiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTcsCisgICAgMHgxLjU1NTU1NTU1NTU1NThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIC0weDEuN2ZmZmZmZmVkZmZmZTgwMTg0Y2QwMmNhNWVmMGU1OWFwLTE2LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTcsCisgICAgMHgxLjU1NTU1NTU1NTU1NThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS4wMDAwMDAwMDAwMDAxN2ZmYWFhYWFhYWFhYjZhOTJhYXAtMzIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTdmZmFhYWFhYWFhYWI2YTkyYWFwLTMyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjAwMDAwMDAwMDAwMDI3ZmZmZmZmYWFhYWFlNmFhYWFhcC00MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIC0weDEuMDAwMDAwMDAwMDAwMjdmZmZmZmZhYWFhYWU2YWFhYWFwLTQwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS4wMDAwMDAwMDAwMDA2ODAwMDAwMDAwMDAxMDNmYWFhYXAtNTYsCisgICAgMHgxLjAwMDAwMDAwMDAwMDRwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmYnA1NgorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLTB4MS4wMDAwMDAwMDAwMDA2ODAwMDAwMDAwMDAxMDNmYWFhYXAtNTYsCisgICAgLTB4MS4wMDAwMDAwMDAwMDA0cDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmJwNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuZmQ1YmE5YWFjMmY3YzhiNDU2MWI4MDAzNmYwZTE2NWNwLTQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDdwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS5mZDViYTlhYWMyZjdjOGI0NTYxYjgwMDM2ZjBlMTY1Y3AtNCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDdwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLmZmNTViYjcyY2ZlMmU4MjFlMjAzNzE2ZTFkOTdhMjU3cC01LAorICAgIDB4MS4wMDAwMDAwMDAwMDFjcC0zLAorICAgIDB4MS5mZmZmZmZmZmZmZmYzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAtMHgxLmZmNTViYjcyY2ZlMmU4MjFlMjAzNzE2ZTFkOTdhMjU3cC01LAorICAgIC0weDEuMDAwMDAwMDAwMDAxY3AtMywKKyAgICAweDEuZmZmZmZmZmZmZmZmM3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjM4ZTM2NzQ1YWVmNmQ3YWIwMjA1OGIwYzBjODc2ZmM4cC05LAorICAgIDB4MS4wMDAwMDAwMDAwNGQ2cC04LAorICAgIDB4MS5hMmU4YmEyZThiYTMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAtMHgxLjM4ZTM2NzQ1YWVmNmQ3YWIwMjA1OGIwYzBjODc2ZmM4cC05LAorICAgIC0weDEuMDAwMDAwMDAwMDRkNnAtOCwKKyAgICAweDEuYTJlOGJhMmU4YmEzMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMHgxLjNmZjQzMjVhODQzNzUwMDAwMDI4NmRmZjg2YmMwMmFkcC0xLAorICAgIDB4MS4wMDAwMDAwOWYwMjA1cC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgLTB4MS4zZmY0MzI1YTg0Mzc1MDAwMDAyODZkZmY4NmJjMDJhZHAtMSwKKyAgICAtMHgxLjAwMDAwMDA5ZjAyMDVwLTEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuYjRmNWYyMzYzMDhiNDgwMzdmZTIyOTYwOGMxZDgxZmJwLTIsCisgICAgMHgxLjAwMXAtMSwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgLTB4MS5iNGY1ZjIzNjMwOGI0ODAzN2ZlMjI5NjA4YzFkODFmYnAtMiwKKyAgICAtMHgxLjAwMXAtMSwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLjkyNDJlNjQ0MmQ0MzE3ZmYyNTMxY2VhZmNhOGFmMGY0cDAsCisgICAgMHgxLjAwMXAxMCwKKyAgICAtMHgxLjE5OTk5OTk5OTk5OTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAtMHgxLjkyNDJlNjQ0MmQ0MzE3ZmYyNTMxY2VhZmNhOGFmMGY0cDAsCisgICAgLTB4MS4wMDFwMTAsCisgICAgLTB4MS4xOTk5OTk5OTk5OTk5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLjA0Njg2MmE0MGNiZTZhYjkwNzAwMjFkZjllMWU0MTFicDEsCisgICAgMHgxLjAxNzVmY2Q0YWIyNjFwMSwKKyAgICAtMHgxLjAxNzQ5Y2E5NDI5NDNwMAorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIC0weDEuMDQ2ODYyYTQwY2JlNmFiOTA3MDAyMWRmOWUxZTQxMWJwMSwKKyAgICAtMHgxLjAxNzVmY2Q0YWIyNjFwMSwKKyAgICAtMHgxLjAxNzQ5Y2E5NDI5NDNwMAorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS45YjJiYjdlMTBiMjY3N2ZlYmIzNzhkZjgxYTk0ZDU4N3AtMSwKKyAgICAweDEuMDY2YjNmMzlhZTdhMXAwLAorICAgIDB4MS5mYTljNGI5ZjQ2ODQycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS45YjJiYjdlMTBiMjY3N2ZlYmIzNzhkZjgxYTk0ZDU4N3AtMSwKKyAgICAtMHgxLjA2NmIzZjM5YWU3YTFwMCwKKyAgICAweDEuZmE5YzRiOWY0Njg0MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS5lODk3ODUwYTcxNmU0ODg5YTE0M2FmZTZjZGFlNzdkMXAtMiwKKyAgICAweDEuMDhiMWQzYjk3Yzk1NXAtMiwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIC0weDEuZTg5Nzg1MGE3MTZlNDg4OWExNDNhZmU2Y2RhZTc3ZDFwLTIsCisgICAgLTB4MS4wOGIxZDNiOTdjOTU1cC0yLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjEzZTdiYjA2MTEzZDY4MDEzNWU5OGU4YzJlOWM5NjI4cC05MiwKKyAgICAweDEuMDlkODlkODlkODlkOHA5LAorICAgIDB4MS5lZDU1NTU1NTU1NTczcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIC0weDEuMTNlN2JiMDYxMTNkNjgwMTM1ZTk4ZThjMmU5Yzk2MjhwLTkyLAorICAgIC0weDEuMDlkODlkODlkODlkOHA5LAorICAgIDB4MS5lZDU1NTU1NTU1NTczcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS5mZjU3MmFkZWQwYmU3MTM2ZjIzNjMxNWUzYzllY2NiN3AwLAorICAgIDB4MS4xOTk5OTk5OTk5OTljcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIC0weDEuZmY1NzJhZGVkMGJlNzEzNmYyMzYzMTVlM2M5ZWNjYjdwMCwKKyAgICAtMHgxLjE5OTk5OTk5OTk5OWNwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjE5NmJhNjg3OGI5MjY4MGViZTRhNTY2NmZmMThhMzg0cC01LAorICAgIDB4MS4xOTk5OTk5OTk5OTljcC0yLAorICAgIDB4MS4wMDFwMworICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIC0weDEuMTk2YmE2ODc4YjkyNjgwZWJlNGE1NjY2ZmYxOGEzODRwLTUsCisgICAgLTB4MS4xOTk5OTk5OTk5OTljcC0yLAorICAgIDB4MS4wMDFwMworICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS4xYjRhMjlhMDJhOWM4N2ZmZmRiNDhlNTM5Mzk5OTY3YXAtMywKKyAgICAweDEuMWFkZWM3ZDA2YTAxMHAtMiwKKyAgICAweDEuZmJmYTIwNGM4MjM0Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgLTB4MS4xYjRhMjlhMDJhOWM4N2ZmZmRiNDhlNTM5Mzk5OTY3YXAtMywKKyAgICAtMHgxLjFhZGVjN2QwNmEwMTBwLTIsCisgICAgMHgxLmZiZmEyMDRjODIzNGNwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS4xOWRjZDA1NDE2OTI0N2ZmZmQ0Y2MwNTkwMGU2NDg0OHAtMiwKKyAgICAweDEuMjEzNDIyZWM2MWY1M3AtMywKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIC0weDEuMTlkY2QwNTQxNjkyNDdmZmZkNGNjMDU5MDBlNjQ4NDhwLTIsCisgICAgLTB4MS4yMTM0MjJlYzYxZjUzcC0zLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLmIzYjk1YmRjYjMwMjc3ZmVjMjNiYjRiZTkwYjYzNTMxcC0xLAorICAgIDB4MS4yNzc2ZmUyMTQ1YmQ1cDAsCisgICAgMHgxLjAzMDYyMTY3OTA3MzhwMAorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIC0weDEuYjNiOTViZGNiMzAyNzdmZWMyM2JiNGJlOTBiNjM1MzFwLTEsCisgICAgLTB4MS4yNzc2ZmUyMTQ1YmQ1cDAsCisgICAgMHgxLjAzMDYyMTY3OTA3MzhwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5lZTBjNTQ5ODRjYjE1ZWRjZGNiMjM5ZGJmZmZkNTdkZXAtNCwKKyAgICAweDEuMjdmYjdkZTBlNTdjOHAxMiwKKyAgICAweDEuMzEzZjkwNjEzOTBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLmVlMGM1NDk4NGNiMTVlZGNkY2IyMzlkYmZmZmQ1N2RlcC00LAorICAgIC0weDEuMjdmYjdkZTBlNTdjOHAxMiwKKyAgICAweDEuMzEzZjkwNjEzOTBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuMjdmZjQ4MzQ3NjZkNzc5ODYwNzY1ZDE0YjY4Nzg4Y2VwLTgsCisgICAgMHgxLjI3ZmI3ZGUwZTU3YzhwMTIsCisgICAgMHgxLmZmZjg4ZDZlMmQ5MzRwMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMHgxLjI3ZmY0ODM0NzY2ZDc3OTg2MDc2NWQxNGI2ODc4OGNlcC04LAorICAgIC0weDEuMjdmYjdkZTBlNTdjOHAxMiwKKyAgICAweDEuZmZmODhkNmUyZDkzNHAxOQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS5mOWM2YjIzOGM2NDM1Nzc3NzkwY2VkMGRmODEwNDllMnAwLAorICAgIDB4MS4yYWFhYWFhYWFhYWFicDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS5mOWM2YjIzOGM2NDM1Nzc3NzkwY2VkMGRmODEwNDllMnAwLAorICAgIC0weDEuMmFhYWFhYWFhYWFhYnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwM3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIDB4MS4yYWFhYWFhYWFhYWE3N2ZmNzg3ZTZiNzRmOWIyZDY1OHAtMzIsCisgICAgMHgxLjJhYWFhYWFhYWFhYWJwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwM3AzMgorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEuMmFhYWFhYWFhYWFhNzdmZjc4N2U2Yjc0ZjliMmQ2NThwLTMyLAorICAgIC0weDEuMmFhYWFhYWFhYWFhYnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAzcDMyCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLmVkYWU5MWViYmZiODc4MDAwNmY3ZTkxNDQ1ODNjN2IzcDAsCisgICAgMHgxLjJkNjZjYTg1N2JmOWFwMCwKKyAgICAtMHgxLmMyOGY1YzI4ZjVjMjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLmVkYWU5MWViYmZiODc4MDAwNmY3ZTkxNDQ1ODNjN2IzcDAsCisgICAgLTB4MS4yZDY2Y2E4NTdiZjlhcDAsCisgICAgLTB4MS5jMjhmNWMyOGY1YzI4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLjlkNWE3N2Q2N2NmMWQ3ZmViYWIzMzhlNjhmMjU4ZjVhcC0xLAorICAgIDB4MS4yZTEyNTMwYTg1OTUxcDIsCisgICAgMHgxLjIxMWE3Yjk2MTFhN2JwMgorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuOWQ1YTc3ZDY3Y2YxZDdmZWJhYjMzOGU2OGYyNThmNWFwLTEsCisgICAgLTB4MS4yZTEyNTMwYTg1OTUxcDIsCisgICAgMHgxLjIxMWE3Yjk2MTFhN2JwMgorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS5hMjQ0ZTIxZWJlZmE4ZmZmZmZiZmFiZWFiYTllNjdhY3AtMiwKKyAgICAweDEuMzMzMzMzM2Q4MTNhYnAtMiwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuYTI0NGUyMWViZWZhOGZmZmZmYmZhYmVhYmE5ZTY3YWNwLTIsCisgICAgLTB4MS4zMzMzMzMzZDgxM2FicC0yLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLjkwYTA4YjI5MjA2N2YwMDA5NDI4NDI3MGMzYjc1NTQ3cC00LAorICAgIDB4MS4zZGViMzA4YTljOTYwcC00LAorICAgIDB4MS45NTAwYTI3YzZhODJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS45MGEwOGIyOTIwNjdmMDAwOTQyODQyNzBjM2I3NTU0N3AtNCwKKyAgICAtMHgxLjNkZWIzMDhhOWM5NjBwLTQsCisgICAgMHgxLjk1MDBhMjdjNmE4MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAweDEuYTg5NjU5MmQ2ZmRiNTdiNjNmYTZlZDcyOGI5MWZlNDdwLTUsCisgICAgMHgxLjQyMGJjNTljNDJjN2NwMiwKKyAgICAweDEuODNmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS5hODk2NTkyZDZmZGI1N2I2M2ZhNmVkNzI4YjkxZmU0N3AtNSwKKyAgICAtMHgxLjQyMGJjNTljNDJjN2NwMiwKKyAgICAweDEuODNmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLjI1ZTMwMTBmZjFlZDM3ZmU3NjlmYTc2ZGVhNDM2MDhjcDEsCisgICAgMHgxLjQ5NGI0OGFjYmU1YjBwLTksCisgICAgLTB4MS4yM2RhNjFmMDg3NTMwcC05CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS4yNWUzMDEwZmYxZWQzN2ZlNzY5ZmE3NmRlYTQzNjA4Y3AxLAorICAgIC0weDEuNDk0YjQ4YWNiZTViMHAtOSwKKyAgICAtMHgxLjIzZGE2MWYwODc1MzBwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuNmQwZDE5ODQ2MzNlYjgwZTA5OGI2ZGM5MWYwODNhMDZwLTMsCisgICAgMHgxLjUxZmY4NWYyYmE0NjhwMCwKKyAgICAweDEuZDUwNjkyOTg2Yjk1ZHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS42ZDBkMTk4NDYzM2ViODBlMDk4YjZkYzkxZjA4M2EwNnAtMywKKyAgICAtMHgxLjUxZmY4NWYyYmE0NjhwMCwKKyAgICAweDEuZDUwNjkyOTg2Yjk1ZHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLmNjYWRkYTQ4ZDA4MDI3ZmY5MmQxYmQ4MTQ4MTJjZThjcC0xLAorICAgIDB4MS41NDEyZTAwMjMzZDc1cC0xLAorICAgIDB4MS4wZGZmMmQxNzE0OTQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS5jY2FkZGE0OGQwODAyN2ZmOTJkMWJkODE0ODEyY2U4Y3AtMSwKKyAgICAtMHgxLjU0MTJlMDAyMzNkNzVwLTEsCisgICAgMHgxLjBkZmYyZDE3MTQ5NDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuM2YyNDk2ZDg0YWMzNDgwMTExN2Y2ZjgzMGMwZmIyMDFwLTkwLAorICAgIDB4MS41NTU1NTU1NTU0YzJlcDgsCisgICAgMHgxLjExY2NjY2NjY2NjY2RwOTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLjNmMjQ5NmQ4NGFjMzQ4MDExMTdmNmY4MzBjMGZiMjAxcC05MCwKKyAgICAtMHgxLjU1NTU1NTU1NTRjMmVwOCwKKyAgICAweDEuMTFjY2NjY2NjY2NjZHA5OAorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS41NTU1NTU1NTU1NTVhYWFhYWFhYWFhYWFiNTU1NTU1NXAtMTAyMSwKKyAgICAweDEuNTU1NTU1NTU1NTU1OHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AxMDE4CisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS41NTU1NTU1NTU1NTVhYWFhYWFhYWFhYWFiNTU1NTU1NXAtMTAyMSwKKyAgICAtMHgxLjU1NTU1NTU1NTU1NThwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwMTAxOAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS44ODEzNGNiOGQwNGU4ODk4NTAwN2I5MmE2MmIxZmQxYXAtOCwKKyAgICAweDEuNTcxMWVmNWVlMWVlY3AtNSwKKyAgICAweDEuYzAwMDAwMDAwMDMwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTB4MS44ODEzNGNiOGQwNGU4ODk4NTAwN2I5MmE2MmIxZmQxYXAtOCwKKyAgICAtMHgxLjU3MTFlZjVlZTFlZWNwLTUsCisgICAgMHgxLmMwMDAwMDAwMDAzMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS45NGE0NzA3ODI5MDdmODAwMDA2YTQ4MjJiYzk0YmMyM3AtMSwKKyAgICAweDEuNjY2NjY2Njg4ZDQxMXAtMSwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0weDEuOTRhNDcwNzgyOTA3ZjgwMDAwNmE0ODIyYmM5NGJjMjNwLTEsCisgICAgLTB4MS42NjY2NjY2ODhkNDExcC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLmQ3ZDdiNjcyZWUzMGM4NWQwMTgxOWIyNTMwNWYzMjMwcC0xMCwKKyAgICAweDEuNmM5YjI2YzliMjZjYXAwLAorICAgIDB4MS44YmEyZThiYTJlOGNhcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAtMHgxLmQ3ZDdiNjcyZWUzMGM4NWQwMTgxOWIyNTMwNWYzMjMwcC0xMCwKKyAgICAtMHgxLjZjOWIyNmM5YjI2Y2FwMCwKKyAgICAweDEuOGJhMmU4YmEyZThjYXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLjdmZmZmZmZmZWUwMDMwMDAwMTg0YzYwY2QyYTVjMDA4cC0xOCwKKyAgICAweDEuOHAtNTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTM2CisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS43ZmZmZmZmZmVlMDAzMDAwMDE4NGM2MGNkMmE1YzAwOHAtMTgsCisgICAgLTB4MS44cC01MywKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMzYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuZTdjODk1MmNiMjYxNTgwMTJiNTRiOWE2MWMwOGY0MzFwLTIsCisgICAgMHgxLjhjNDYyMzExODhjcDAsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0weDEuZTdjODk1MmNiMjYxNTgwMTJiNTRiOWE2MWMwOGY0MzFwLTIsCisgICAgLTB4MS44YzQ2MjMxMTg4Y3AwLAorICAgIDB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuMmI4NTRmMDIyZGU3YTkzY2I2MjFjYjI0NjJmODYwNzRwMCwKKyAgICAweDEuOGQ3OTQzNWU1MGQ3MXAyLAorICAgIDB4MS41MGQ3OTQzNWU1MGQ5cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLjJiODU0ZjAyMmRlN2E5M2NiNjIxY2IyNDYyZjg2MDc0cDAsCisgICAgLTB4MS44ZDc5NDM1ZTUwZDcxcDIsCisgICAgMHgxLjUwZDc5NDM1ZTUwZDlwMQorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS40MmE3NmExNjRjMzljODAwZTQ0MDUwMjdjNDkwYmRmYnAtMSwKKyAgICAweDEuOGRkM2QyMjM1YWQ2MHAtMSwKKyAgICAweDEuMTBiNWQxZTc4NDU5Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS40MmE3NmExNjRjMzljODAwZTQ0MDUwMjdjNDkwYmRmYnAtMSwKKyAgICAtMHgxLjhkZDNkMjIzNWFkNjBwLTEsCisgICAgMHgxLjEwYjVkMWU3ODQ1OWNwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS5lMzI0MGU5OTNhYjk1N2Y5ZDc2ZGRlNGE1MDg5NjgyNnAtMywKKyAgICAweDEuOXAwLAorICAgIDB4MS45ZmZmZmZmZmZmZmZicDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLmUzMjQwZTk5M2FiOTU3ZjlkNzZkZGU0YTUwODk2ODI2cC0zLAorICAgIC0weDEuOXAwLAorICAgIDB4MS45ZmZmZmZmZmZmZmZicDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuYTMzNWVmZDRkYTkwYTgwNGY3YTZkYWQ0NDM0ZjViYTBwLTIsCisgICAgMHgxLjkyMGQ3OTlmZGE3MTNwLTMsCisgICAgMHgxLmNmNGNkYzQ4ZjM1MzZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAtMHgxLmEzMzVlZmQ0ZGE5MGE4MDRmN2E2ZGFkNDQzNGY1YmEwcC0yLAorICAgIC0weDEuOTIwZDc5OWZkYTcxM3AtMywKKyAgICAweDEuY2Y0Y2RjNDhmMzUzNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS5lZDg3ZjljNzI5ZDE3ZmZlOWQyZjQ3ZTJmZTllY2I0MHAtMSwKKyAgICAweDEuOTVmYWQ0MGE1N2VjNnA5LAorICAgIDB4MS4xOWRiY2M0ODY3NmY2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLmVkODdmOWM3MjlkMTdmZmU5ZDJmNDdlMmZlOWVjYjQwcC0xLAorICAgIC0weDEuOTVmYWQ0MGE1N2VjNnA5LAorICAgIDB4MS4xOWRiY2M0ODY3NmY2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuMGJmYTVmM2YwOTllNjgwMDAwNjhkODIyMzJkYzRjYzdwLTEsCisgICAgMHgxLjk5OTk5OTllMzdjMjRwLTIsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAtMHgxLjBiZmE1ZjNmMDk5ZTY4MDAwMDY4ZDgyMjMyZGM0Y2M3cC0xLAorICAgIC0weDEuOTk5OTk5OWUzN2MyNHAtMiwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS4xZmE2YWMzMGQwNjZkODAwMDA2YTVjMjM5ZTUxODhmMnAtMiwKKyAgICAweDEuOTk5OTk5YmIwOTE0MHAtMywKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuMWZhNmFjMzBkMDY2ZDgwMDAwNmE1YzIzOWU1MTg4ZjJwLTIsCisgICAgLTB4MS45OTk5OTliYjA5MTQwcC0zLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLjI1NzA3NDJmYTQ5ODlmZmZmZjllOTQ2Yzk4NjExN2Q5cC0zLAorICAgIDB4MS45OTk5OTljMmYzYjU1cC00LAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTB4MS4yNTcwNzQyZmE0OTg5ZmZmZmY5ZTk0NmM5ODYxMTdkOXAtMywKKyAgICAtMHgxLjk5OTk5OWMyZjNiNTVwLTQsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuMjU3MDc0Mzc4NjUzYTdmZmZmZmZiNzhkYjk5NWFhZmNwLTMsCisgICAgMHgxLjk5OTk5OWNlMWIxOGFwLTQsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLjI1NzA3NDM3ODY1M2E3ZmZmZmZmYjc4ZGI5OTVhYWZjcC0zLAorICAgIC0weDEuOTk5OTk5Y2UxYjE4YXAtNCwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS4yNTcwNzQzN2ExNDc2MDAwMDA2MTY5ZGRiNWRhYmRkN3AtMywKKyAgICAweDEuOTk5OTk5Y2U0MTNjY3AtNCwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuMjU3MDc0MzdhMTQ3NjAwMDAwNjE2OWRkYjVkYWJkZDdwLTMsCisgICAgLTB4MS45OTk5OTljZTQxM2NjcC00LAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLmI2YTAzYjBmMWZmMGQ3ZmQwOGU5ZjU4NDZlYzVhNzVicC0xLAorICAgIDB4MS45YzVjOTc1MzBjYzIxcDAsCisgICAgMHgxLjY1NjNmYTFkNmY1MThwMAorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuYjZhMDNiMGYxZmYwZDdmZDA4ZTlmNTg0NmVjNWE3NWJwLTEsCisgICAgLTB4MS45YzVjOTc1MzBjYzIxcDAsCisgICAgMHgxLjY1NjNmYTFkNmY1MThwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS5iODBhYTA2ODE2N2Y5NzU1ODk3MmVjZmVkNjc3Nzc3NHAtMTksCisgICAgMHgxLjlmNWFlYWUwMzc5OWRwLTE4LAorICAgIDB4MS5lMzQ2ZDliMmFkNzNlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAtMHgxLmI4MGFhMDY4MTY3Zjk3NTU4OTcyZWNmZWQ2Nzc3Nzc0cC0xOSwKKyAgICAtMHgxLjlmNWFlYWUwMzc5OWRwLTE4LAorICAgIDB4MS5lMzQ2ZDliMmFkNzNlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuZTVlZjdiMjJjODNiMjdhZDM0YmJmZGE2YzIzODNkMjNwLTIsCisgICAgMHgxLmE0ZDI2OTM0OWI2NmNwLTMsCisgICAgMHgxLjk5OTk5OTk5OTk5OWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLmU1ZWY3YjIyYzgzYjI3YWQzNGJiZmRhNmMyMzgzZDIzcC0yLAorICAgIC0weDEuYTRkMjY5MzQ5YjY2Y3AtMywKKyAgICAweDEuOTk5OTk5OTk5OTk5YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS41ZTgyY2I1MTY3NjcyODAxMWUxYzZiYTc1ZjMzMzlhN3AtOTEsCisgICAgMHgxLmFkNWFhNmZmNjMzNWVwOSwKKyAgICAweDEuMzk5NTg4MGRlNzU3YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMHgxLjVlODJjYjUxNjc2NzI4MDExZTFjNmJhNzVmMzMzOWE3cC05MSwKKyAgICAtMHgxLmFkNWFhNmZmNjMzNWVwOSwKKyAgICAweDEuMzk5NTg4MGRlNzU3YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuOTVhYzkzNTA0ZjMxOWZlZmIxYjUxNDg3OTJkYWI0MTJwLTEsCisgICAgMHgxLmIxNDI3Y2Q5ODhiOGNwLTIsCisgICAgMHgxLmFiNGFkZWFmMWEzZWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLjk1YWM5MzUwNGYzMTlmZWZiMWI1MTQ4NzkyZGFiNDEycC0xLAorICAgIC0weDEuYjE0MjdjZDk4OGI4Y3AtMiwKKyAgICAweDEuYWI0YWRlYWYxYTNlYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS45MjFmZDFmMDlmOTI4ODAxMDg4YTkzZmM3ZGJiYTFjYXAwLAorICAgIDB4MS5iYmQ0OWFjYzU4ZDk4cDEwLAorICAgIC0weDEuOGRiMGE0YWIyMmU3ZXAtOQorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIC0weDEuOTIxZmQxZjA5ZjkyODgwMTA4OGE5M2ZjN2RiYmExY2FwMCwKKyAgICAtMHgxLmJiZDQ5YWNjNThkOThwMTAsCisgICAgLTB4MS44ZGIwYTRhYjIyZTdlcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLjQzZTU0OTc1ZmI4YmM4MDEyOTUzZTllZjAyM2Y2N2IzcC0xMDAsCisgICAgMHgxLmMzN2RhYzM3ZGFjM2NwMCwKKyAgICAweDEuNjRkOTM2NGQ5MzY1OXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLjQzZTU0OTc1ZmI4YmM4MDEyOTUzZTllZjAyM2Y2N2IzcC0xMDAsCisgICAgLTB4MS5jMzdkYWMzN2RhYzNjcDAsCisgICAgMHgxLjY0ZDkzNjRkOTM2NTlwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLmFiNzhjMTM1MjFjZmM4MDExN2Y3ZmFlNTc4MzYzNTZlcC05OCwKKyAgICAweDEuYzliMjZjOWIyNmNhMHAyLAorICAgIDB4MS4xMjE5ZGJjYzQ4Njc5cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0weDEuYWI3OGMxMzUyMWNmYzgwMTE3ZjdmYWU1NzgzNjM1NmVwLTk4LAorICAgIC0weDEuYzliMjZjOWIyNmNhMHAyLAorICAgIDB4MS4xMjE5ZGJjYzQ4Njc5cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS43N2U0NjdkNWZmNjMzN2Y4NGY4ODBlYjg2ZjQyNmY4N3AtMSwKKyAgICAweDEuY2UwZDUwNzhhZTNkMHAwLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAtMHgxLjc3ZTQ2N2Q1ZmY2MzM3Zjg0Zjg4MGViODZmNDI2Zjg3cC0xLAorICAgIC0weDEuY2UwZDUwNzhhZTNkMHAwLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuN2NjZDg4MmQ4ZmRiZTgwMTBkMGJlNjFmMDIzMTg2YTVwLTEsCisgICAgMHgxLmRiY2M0ODY3NmYzMmFwNywKKyAgICAweDEuMDI5NWZhZDQwYTU4YnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS43Y2NkODgyZDhmZGJlODAxMGQwYmU2MWYwMjMxODZhNXAtMSwKKyAgICAtMHgxLmRiY2M0ODY3NmYzMmFwNywKKyAgICAweDEuMDI5NWZhZDQwYTU4YnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjJkM2E4N2UyNGViMzE5MTU2ZWY2MTVjYWE3YWJlMTI4cDAsCisgICAgMHgxLmUwNTJiZjVhODE0YjZwMiwKKyAgICAweDEuOGY4M2UwZjgzZTBmMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgLTB4MS4yZDNhODdlMjRlYjMxOTE1NmVmNjE1Y2FhN2FiZTEyOHAwLAorICAgIC0weDEuZTA1MmJmNWE4MTRiNnAyLAorICAgIDB4MS44ZjgzZTBmODNlMGYxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuZWIwZGY0MmMzNmE1ZjdmZTFkZjhjODZiZWQwYTI4YTBwLTEsCisgICAgMHgxLmUwNTQ3ZTQwZTRjYzhwLTIsCisgICAgMHgxLjUwZWViYzE5NWJiMjRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAtMHgxLmViMGRmNDJjMzZhNWY3ZmUxZGY4Yzg2YmVkMGEyOGEwcC0xLAorICAgIC0weDEuZTA1NDdlNDBlNGNjOHAtMiwKKyAgICAweDEuNTBlZWJjMTk1YmIyNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDB4MS5jN2ZlMWRiZDk1MzQ5Nzc4NDU4Njk3ZmUxOTVlNGE1OHAtOCwKKyAgICAweDEuZTY2NjY2NjY2NjY2OHAxLAorICAgIDB4MS4xMTExMTExMTExOTZkcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAtMHgxLmM3ZmUxZGJkOTUzNDk3Nzg0NTg2OTdmZTE5NWU0YTU4cC04LAorICAgIC0weDEuZTY2NjY2NjY2NjY2OHAxLAorICAgIDB4MS4xMTExMTExMTExOTZkcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuMzg5MjdlZGU2NzIxNjgwMDAwNmEzOWJiNDllOWMwZjRwMCwKKyAgICAweDEuZTY2NjY2NmI5ODdmNXAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgLTB4MS4zODkyN2VkZTY3MjE2ODAwMDA2YTM5YmI0OWU5YzBmNHAwLAorICAgIC0weDEuZTY2NjY2NmI5ODdmNXAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLjM5ZmVkNTY5OTQyOGIzYjY5YTczMzlkMzZiYjA0NGFicC0xLAorICAgIDB4MS5lOTFlZTc4YWZkMWU2cC0zLAorICAgIDB4MS41YjdjMzJiMzJiZGUwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS4zOWZlZDU2OTk0MjhiM2I2OWE3MzM5ZDM2YmIwNDRhYnAtMSwKKyAgICAtMHgxLmU5MWVlNzhhZmQxZTZwLTMsCisgICAgMHgxLjViN2MzMmIzMmJkZTBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuYTEyNzIyNDAxMGNiYTgwMzk0NWYzMTVlMWQwZWU0YjVwLTEsCisgICAgMHgxLmYxNjZlMWRjNDQ5OWJwMiwKKyAgICAweDEuZDUwNjkyOTg2Yjk4ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS5hMTI3MjI0MDEwY2JhODAzOTQ1ZjMxNWUxZDBlZTRiNXAtMSwKKyAgICAtMHgxLmYxNjZlMWRjNDQ5OWJwMiwKKyAgICAweDEuZDUwNjkyOTg2Yjk4ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLmYxZjMyYWE2YWNiNzA4MDFkZDQzNDlkNDNkM2Q0YzI1cC0zLAorICAgIDB4MS5mYmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS5mZmZmZmZmZmU3ZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLmYxZjMyYWE2YWNiNzA4MDFkZDQzNDlkNDNkM2Q0YzI1cC0zLAorICAgIC0weDEuZmJmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEuZmZmZmZmZmZlN2ZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMHgxLjA3OWM0MTM2MWI2YWI4MTE1MDE1ZTRmMzJkY2ZlNGIzcDEsCisgICAgMHgxLmZmNGI3Yzg0OGNkZTZwLTEsCisgICAgLTB4MS4wZmQ2YzdmNDRmNTg4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgLTB4MS4wNzljNDEzNjFiNmFiODExNTAxNWU0ZjMyZGNmZTRiM3AxLAorICAgIC0weDEuZmY0YjdjODQ4Y2RlNnAtMSwKKyAgICAtMHgxLjBmZDZjN2Y0NGY1ODhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAweDEuZGE0YzY5MTI3ODk5NjgwMTFmMWI1MTZmNTk1ZDg2OGVwLTIsCisgICAgMHgxLmZmNjc3ZmZmZmZmZmZwLTYsCisgICAgMHgxLmZmZmZmZmZmMTlmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAtMHgxLmRhNGM2OTEyNzg5OTY4MDExZjFiNTE2ZjU5NWQ4NjhlcC0yLAorICAgIC0weDEuZmY2NzdmZmZmZmZmZnAtNiwKKyAgICAweDEuZmZmZmZmZmYxOWZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS5mZmZjODAwMjFmZmM0ODAyMjVmYzFkODIyYTliYzVlMHAtNTgsCisgICAgMHgxLmZmZmM3ZmZmZmZmZmZwLTUwLAorICAgIDB4MS5mZmZmZmZmZGRmZmZmcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMHgxLmZmZmM4MDAyMWZmYzQ4MDIyNWZjMWQ4MjJhOWJjNWUwcC01OCwKKyAgICAtMHgxLmZmZmM3ZmZmZmZmZmZwLTUwLAorICAgIDB4MS5mZmZmZmZmZGRmZmZmcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuNjY2NjY2NjY2NjY2MTdmZmZmZmZmZmZmZjhiNzIwMTVwLTUwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcDUwLAorICAgIDB4MS42ZGI2ZGI2ZGI2ZGI5cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIC0weDEuNjY2NjY2NjY2NjY2MTdmZmZmZmZmZmZmZjhiNzIwMTVwLTUwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3A1MCwKKyAgICAweDEuNmRiNmRiNmRiNmRiOXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuZmY1NWQzNWFlOGU0NjdjZTc3NDA3MDY5YWQwMTNhYjVwLTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTMsCisgICAgMHgxLmZmZmZlN2ZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIC0weDEuZmY1NWQzNWFlOGU0NjdjZTc3NDA3MDY5YWQwMTNhYjVwLTUsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0zLAorICAgIDB4MS5mZmZmZTdmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEuYjRkZGQ2NmEzN2IzYjMzNWEyYTViMTFjZWI5YTRjNTZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTQsCisgICAgMHgxLjE5OTk5OTk5OTk5OWNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAtMHgxLmI0ZGRkNjZhMzdiM2IzMzVhMmE1YjExY2ViOWE0YzU2cC0yLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtNCwKKyAgICAweDEuMTk5OTk5OTk5OTk5Y3AtMgorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS45MGU2ZDQyNTM1MTdjODAxMDMyMWFlYWU4ODc5OTBhOXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC03LAorICAgIC0weDEuYTJlOGJhMmU5N2EyMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgLTB4MS45MGU2ZDQyNTM1MTdjODAxMDMyMWFlYWU4ODc5OTBhOXAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtNywKKyAgICAtMHgxLmEyZThiYTJlOTdhMjJwMAorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS5iNmRiNmRiNmRiNmQyODFkZGFhZWE1YjEyY2NlZDJhMXAtMjUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTI1LAorICAgIDB4MS4yYWFhYWFhYWFhYWFicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAtMHgxLmI2ZGI2ZGI2ZGI2ZDI4MWRkYWFlYTViMTJjY2VkMmExcC0yNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTI1LAorICAgIDB4MS4yYWFhYWFhYWFhYWFicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtODA3LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczY3AtMworICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTgwNywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2NwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAweDEuMDk2ZDA1MzcxYjFjNTRjNDBmOWEwNmM2Y2YyZGI5ODFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAwLAorICAgIC0weDEuMTk5OTk5OTk5OTk5YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS4wOTZkMDUzNzFiMWM1NGM0MGY5YTA2YzZjZjJkYjk4MXAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAwLAorICAgIC0weDEuMTk5OTk5OTk5OTk5YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuNHAtMTA3MgorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuNHAtMTA3MgorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAtMHgxLmY0ZjNiMTk4YzBmMTY4MDMwZTk0OTBiZTFlYTU1OWU4cC00LAorICAgIC0weDEuMDhkZTIwZmFmZTRhMnAwLAorICAgIDB4MS4wZDViYTc3YWRmOTY5cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEuZjRmM2IxOThjMGYxNjgwMzBlOTQ5MGJlMWVhNTU5ZThwLTQsCisgICAgMHgxLjA4ZGUyMGZhZmU0YTJwMCwKKyAgICAweDEuMGQ1YmE3N2FkZjk2OXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgLTB4MS4yZDk3YzdmMzMyMWQyMzRmMjcyOTkzZDE0MTRhMmIzOXAxLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLjJkOTdjN2YzMzIxZDIzNGYyNzI5OTNkMTQxNGEyYjM5cDEsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgLTB4MS4yZDk3YzdmMzMyMWQyMzRmMjcyOTkzZDE0MTRhMmIzOXAxLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEuZmQ1YmE5YWFjMmY2ZGM2NTkxMmYzMTNlN2QxMTFkZWZwLTQsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgLTB4MS5mZDViYTlhYWMyZjZkYzY1OTEyZjMxM2U3ZDExMWRlZnAtNCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLjcyNDlmYWE5OTZhMjE2YTMzMDc5ZDIwMzE5ZTcyN2MzcDAsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgLTB4MS43MjQ5ZmFhOTk2YTIxNmEzMzA3OWQyMDMxOWU3MjdjM3AwLAorICAgIC0weDEuMHAzLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLjBwMywKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLmZmZmZkNTU1NWJiYmJhOTcyOWFiN2FhYzA4OTQ3M2EzcC0xMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAtMHgxLmZmZmZkNTU1NWJiYmJhOTcyOWFiN2FhYzA4OTQ3M2EzcC0xMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLmZmZmZmNTU1NTViYmJiYjcyOTcyZDAwY2ZkZTc1MmY5cC0xMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgLTB4MS5mZmZmZjU1NTU1YmJiYmI3Mjk3MmQwMGNmZGU3NTJmOXAtMTEsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuZmZmNTU1YmJiNzI5YWI3N2NmMThhYzgwMmJlZWMwOTBwLTcsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgLTB4MS5mZmY1NTViYmI3MjlhYjc3Y2YxOGFjODAyYmVlYzA5MHAtNywKKyAgICAtMHgxLjBwMywKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgMHgxLmZmZmQ1NTViYmJhOTcyZDAwYzQ2YTNmNzdjYzE1ZThlcC04LAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAtMHgxLmZmZmQ1NTViYmJhOTcyZDAwYzQ2YTNmNzdjYzE1ZThlcC04LAorICAgIC0weDEuMHAzLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC05OCwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTk4LAorICAgIC0weDEuMHAzLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtOTksCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC05OSwKKyAgICAtMHgxLjBwMywKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuOTE5ZmI1NGVlZDdhOTU3YWUzYzI1YTM4NTZiNjE0ODVwMCwKKyAgICAweDEuMHA5LAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAtMHgxLjkxOWZiNTRlZWQ3YTk1N2FlM2MyNWEzODU2YjYxNDg1cDAsCisgICAgLTB4MS4wcDksCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS44ZTFmY2E5OGNiNjMzMTEyOTllZTkzYmUwMTYwNWMyMXAwLAorICAgIDB4MS4wcDksCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIC0weDEuOGUxZmNhOThjYjYzMzExMjk5ZWU5M2JlMDE2MDVjMjFwMCwKKyAgICAtMHgxLjBwOSwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLjkxZGZiNTQ1OTgyNmNjZjIxMmE3OTZiZDAwMTg3Y2I3cDAsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIC0weDEuOTFkZmI1NDU5ODI2Y2NmMjEyYTc5NmJkMDAxODdjYjdwMCwKKyAgICAtMHgxLjBwMTAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS45MDFmYjdlZWU3MTVkYWY2Yjk4MDdlNzMwYTNiNzg0M3AwLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAtMHgxLjkwMWZiN2VlZTcxNWRhZjZiOTgwN2U3MzBhM2I3ODQzcDAsCisgICAgLTB4MS4wcDEwLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgMHgxLjBwOSwKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLjBwOSwKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgMHgxLmRhYzY3MDU2MWJiNGY2OGFkZmM4OGJkOTc4NzUxYTA2cC0yLAorICAgIDB4MS4wcDksCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAtMHgxLmRhYzY3MDU2MWJiNGY2OGFkZmM4OGJkOTc4NzUxYTA2cC0yLAorICAgIC0weDEuMHA5LAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLjFiNmUxOTJlYmJlNDQ2YzZkMTlhYTIyMGEzOWFmMzIwcDAsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwOQorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIC0weDEuMWI2ZTE5MmViYmU0NDZjNmQxOWFhMjIwYTM5YWYzMjBwMCwKKyAgICAtMHgxLjBwMTAsCisgICAgMHgxLjBwOQorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEuMHAxMCwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS4wcDEwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC05MiwKKyAgICAweDEuMHA5LAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTkyLAorICAgIC0weDEuMHA5LAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtOTMsCisgICAgMHgxLjBwOSwKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC05MywKKyAgICAtMHgxLjBwOSwKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTkxLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTkxLAorICAgIC0weDEuMHAxMCwKKyAgICAweDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTkyLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDEwMQorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTkyLAorICAgIC0weDEuMHAxMCwKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE2ZjFiODM5YTJwMCwKKyAgICAweDEuMHAxMDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE2ZjFiODM5YTJwMCwKKyAgICAtMHgxLjBwMTAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE2ODFiODM5YTJwMCwKKyAgICAweDEuMHAxMDAsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE2ODFiODM5YTJwMCwKKyAgICAtMHgxLjBwMTAwLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE2ZjliODM5YTJwMCwKKyAgICAweDEuMHAxMDEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE2ZjliODM5YTJwMCwKKyAgICAtMHgxLjBwMTAxLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE2YzFiODM5YTJwMCwKKyAgICAweDEuMHAxMDEsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE2YzFiODM5YTJwMCwKKyAgICAtMHgxLjBwMTAxLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNGY3MDFiODM5YTJwMCwKKyAgICAweDEuMHAxMDAsCisgICAgMHgxLjBwOQorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNGY3MDFiODM5YTJwMCwKKyAgICAtMHgxLjBwMTAwLAorICAgIDB4MS4wcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNGQ3MDFiODM5YTJwMCwKKyAgICAweDEuMHAxMDAsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzRkNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcDEwMCwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MDcwMWI4MzlhMnAwLAorICAgIDB4MS4wcDEwMSwKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MDcwMWI4MzlhMnAwLAorICAgIC0weDEuMHAxMDEsCisgICAgMHgxLjBwOQorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M0ZjcwMWI4MzlhMnAwLAorICAgIDB4MS4wcDEwMSwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNGY3MDFiODM5YTJwMCwKKyAgICAtMHgxLjBwMTAxLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS4wcDEwMCwKKyAgICAweDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEuMHAxMDAsCisgICAgMHgxLjBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgMHgxLmRhYzY3MDU2MWJiNGY2OGFkZmM4OGJkOTc4NzUxYTA2cC0yLAorICAgIDB4MS4wcDEwMCwKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAtMHgxLmRhYzY3MDU2MWJiNGY2OGFkZmM4OGJkOTc4NzUxYTA2cC0yLAorICAgIC0weDEuMHAxMDAsCisgICAgMHgxLjBwMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgMHgxLjFiNmUxOTJlYmJlNDQ2YzZkMTlhYTIyMGEzOWFmMzIwcDAsCisgICAgMHgxLjBwMTAxLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIC0weDEuMWI2ZTE5MmViYmU0NDZjNmQxOWFhMjIwYTM5YWYzMjBwMCwKKyAgICAtMHgxLjBwMTAxLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEuMHAxMDEsCisgICAgMHgxLjBwMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLjBwMTAxLAorICAgIDB4MS4wcDEwMQorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzQyCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIDB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgLTB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIDB4MS5mZjU1YmI3MmNmZGU4YzdkODY1ZjE1YzgwYzZiOGJiMHAtNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgLTB4MS5mZjU1YmI3MmNmZGU4YzdkODY1ZjE1YzgwYzZiOGJiMHAtNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTQsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIDB4MS5mZjU1YmI3MmNmZGU2YzlkNjY3ZWY1ZTdlZjg0NzZjMXAtNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgLTB4MS5mZjU1YmI3MmNmZGU2YzlkNjY3ZWY1ZTdlZjg0NzZjMXAtNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDM0OQorICAgIDB4MS5mZjU1YmI3MmNmZGVhYzVkYTYzZjM1YTgyY2NiMmMxMHAtNSwKKyAgICAweDEuMHAtMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzUwCisgICAgLTB4MS5mZjU1YmI3MmNmZGVhYzVkYTYzZjM1YTgyY2NiMmMxMHAtNSwKKyAgICAtMHgxLjBwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIDB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAweDEuMHAtMywKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgLTB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAtMHgxLjBwLTMsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIDB4MS5mZjU1YmI3MmNmZGU3YzhkNzY2ZjA1ZDdmZTc4MDBiYXAtNSwKKyAgICAweDEuMHAtMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgLTB4MS5mZjU1YmI3MmNmZGU3YzhkNzY2ZjA1ZDdmZTc4MDBiYXAtNSwKKyAgICAtMHgxLjBwLTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIDB4MS5mZjU1YmI3MmNmZGVjYzNkYzYxZjU1ODg0ZGE2NTRlM3AtNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgLTB4MS5mZjU1YmI3MmNmZGVjYzNkYzYxZjU1ODg0ZGE2NTRlM3AtNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDM1NworICAgIDB4MS5mZjU1YmI3MmNmZGViYzRkYjYyZjQ1OTgzYzNhM2U3Y3AtNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMywKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgLTB4MS5mZjU1YmI3MmNmZGViYzRkYjYyZjQ1OTgzYzNhM2U3Y3AtNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIDB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgLTB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIC0weDEuZmY1NWJiNzJjZmRlY2MzZGM2MWY1NTg4NGRhNjU0ZTNwLTUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuZmY1NWJiNzJjZmRlY2MzZGM2MWY1NTg4NGRhNjU0ZTNwLTUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDM2MworICAgIC0weDEuZmY1NWJiNzJjZmRlYmM0ZGI2MmY0NTk4M2MzYTNlN2NwLTUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEuZmY1NWJiNzJjZmRlYmM0ZGI2MmY0NTk4M2MzYTNlN2NwLTUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIC0weDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIC0weDEuZmY1NWJiNzJjZmRlYWM1ZGE2M2YzNWE4MmNjYjJjMTBwLTUsCisgICAgLTB4MS4wcC0zLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAweDEuZmY1NWJiNzJjZmRlYWM1ZGE2M2YzNWE4MmNjYjJjMTBwLTUsCisgICAgMHgxLjBwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDM2OQorICAgIC0weDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgLTB4MS4wcC0zLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzAKKyAgICAweDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgMHgxLjBwLTMsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIC0weDEuZmY1NWJiNzJjZmRlN2M4ZDc2NmYwNWQ3ZmU3ODAwYmFwLTUsCisgICAgLTB4MS4wcC0zLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAweDEuZmY1NWJiNzJjZmRlN2M4ZDc2NmYwNWQ3ZmU3ODAwYmFwLTUsCisgICAgMHgxLjBwLTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIC0weDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC00LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAweDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIC0weDEuZmY1NWJiNzJjZmRlOGM3ZDg2NWYxNWM4MGM2YjhiYjBwLTUsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC00LAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzYKKyAgICAweDEuZmY1NWJiNzJjZmRlOGM3ZDg2NWYxNWM4MGM2YjhiYjBwLTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM3NworICAgIC0weDEuZmY1NWJiNzJjZmRlNmM5ZDY2N2VmNWU3ZWY4NDc2YzFwLTUsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC00LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzgKKyAgICAweDEuZmY1NWJiNzJjZmRlNmM5ZDY2N2VmNWU3ZWY4NDc2YzFwLTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDM3OQorICAgIDB4MS5hMjcxZjYzZTM0ZmNmNjVjY2Q2ZThkNDA0MGUyNzc4Y3AtMiwKKyAgICAweDEuYmI2N2FlODU4NGNhOXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgLTB4MS5hMjcxZjYzZTM0ZmNmNjVjY2Q2ZThkNDA0MGUyNzc4Y3AtMiwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYTlwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDM4MQorICAgIDB4MS5hMjcxZjYzZTM0ZmNlYWIxYTcyN2FiNzBkMGNlMzk5OHAtMiwKKyAgICAweDEuYmI2N2FlODU4NGNhOXAtMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgLTB4MS5hMjcxZjYzZTM0ZmNlYWIxYTcyN2FiNzBkMGNlMzk5OHAtMiwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYTlwLTEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIDB4MS5hMjcxZjYzZTM0ZmNkMzViNWE5OWU3ZDFmMjdkNjU2Y3AtMiwKKyAgICAweDEuYmI2N2FlODU4NGNhOXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgLTB4MS5hMjcxZjYzZTM0ZmNkMzViNWE5OWU3ZDFmMjdkNjU2Y3AtMiwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYTlwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDM4NQorICAgIDB4MS5hMjcxZjYzZTM0ZmQwM2Q2MTBjY2RlMTdkNTg3ODcyZHAtMiwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgLTB4MS5hMjcxZjYzZTM0ZmQwM2Q2MTBjY2RlMTdkNTg3ODcyZHAtMiwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDM4NworICAgIDB4MS5hMjcxZjYzZTM0ZmNmODJhZWE4NWZjNDg2NTI5ODkwY3AtMiwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAtMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgLTB4MS5hMjcxZjYzZTM0ZmNmODJhZWE4NWZjNDg2NTI5ODkwY3AtMiwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWFwLTEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM4OQorICAgIDB4MS5hMjcxZjYzZTM0ZmNlMGQ0OWRmODM4YTk4NjQ1MzQ4NXAtMiwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzkwCisgICAgLTB4MS5hMjcxZjYzZTM0ZmNlMGQ0OWRmODM4YTk4NjQ1MzQ4NXAtMiwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS5hMjcxZjYzZTM0ZmQxMTRmNTQyYjJlZWY2YTA1NDhkM3AtMiwKKyAgICAweDEuYmI2N2FlODU4NGNhYnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgLTB4MS5hMjcxZjYzZTM0ZmQxMTRmNTQyYjJlZWY2YTA1NDhkM3AtMiwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWJwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDM5MworICAgIDB4MS5hMjcxZjYzZTM0ZmQwNWE0MmRlNDRkMWZmOTVkOGE4NXAtMiwKKyAgICAweDEuYmI2N2FlODU4NGNhYnAtMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzk0CisgICAgLTB4MS5hMjcxZjYzZTM0ZmQwNWE0MmRlNDRkMWZmOTVkOGE4NXAtMiwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWJwLTEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM5NQorICAgIDB4MS5hMjcxZjYzZTM0ZmNlZTRkZTE1Njg5ODExOWU1YjVhNHAtMiwKKyAgICAweDEuYmI2N2FlODU4NGNhYnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgLTB4MS5hMjcxZjYzZTM0ZmNlZTRkZTE1Njg5ODExOWU1YjVhNHAtMiwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYWJwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIC0weDEuYTI3MWY2M2UzNGZkMTE0ZjU0MmIyZWVmNmEwNTQ4ZDNwLTIsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2FicC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTgKKyAgICAweDEuYTI3MWY2M2UzNGZkMTE0ZjU0MmIyZWVmNmEwNTQ4ZDNwLTIsCisgICAgMHgxLmJiNjdhZTg1ODRjYWJwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIC0weDEuYTI3MWY2M2UzNGZkMDVhNDJkZTQ0ZDFmZjk1ZDhhODVwLTIsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2FicC0xLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDAKKyAgICAweDEuYTI3MWY2M2UzNGZkMDVhNDJkZTQ0ZDFmZjk1ZDhhODVwLTIsCisgICAgMHgxLmJiNjdhZTg1ODRjYWJwLTEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIC0weDEuYTI3MWY2M2UzNGZjZWU0ZGUxNTY4OTgxMTllNWI1YTRwLTIsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2FicC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDIKKyAgICAweDEuYTI3MWY2M2UzNGZjZWU0ZGUxNTY4OTgxMTllNWI1YTRwLTIsCisgICAgMHgxLmJiNjdhZTg1ODRjYWJwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIC0weDEuYTI3MWY2M2UzNGZkMDNkNjEwY2NkZTE3ZDU4Nzg3MmRwLTIsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2FhcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDQKKyAgICAweDEuYTI3MWY2M2UzNGZkMDNkNjEwY2NkZTE3ZDU4Nzg3MmRwLTIsCisgICAgMHgxLmJiNjdhZTg1ODRjYWFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIC0weDEuYTI3MWY2M2UzNGZjZjgyYWVhODVmYzQ4NjUyOTg5MGNwLTIsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2FhcC0xLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDYKKyAgICAweDEuYTI3MWY2M2UzNGZjZjgyYWVhODVmYzQ4NjUyOTg5MGNwLTIsCisgICAgMHgxLmJiNjdhZTg1ODRjYWFwLTEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIC0weDEuYTI3MWY2M2UzNGZjZTBkNDlkZjgzOGE5ODY0NTM0ODVwLTIsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2FhcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDgKKyAgICAweDEuYTI3MWY2M2UzNGZjZTBkNDlkZjgzOGE5ODY0NTM0ODVwLTIsCisgICAgMHgxLmJiNjdhZTg1ODRjYWFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQwOQorICAgIC0weDEuYTI3MWY2M2UzNGZjZjY1Y2NkNmU4ZDQwNDBlMjc3OGNwLTIsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2E5cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAweDEuYTI3MWY2M2UzNGZjZjY1Y2NkNmU4ZDQwNDBlMjc3OGNwLTIsCisgICAgMHgxLmJiNjdhZTg1ODRjYTlwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIC0weDEuYTI3MWY2M2UzNGZjZWFiMWE3MjdhYjcwZDBjZTM5OThwLTIsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2E5cC0xLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTIKKyAgICAweDEuYTI3MWY2M2UzNGZjZWFiMWE3MjdhYjcwZDBjZTM5OThwLTIsCisgICAgMHgxLmJiNjdhZTg1ODRjYTlwLTEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIC0weDEuYTI3MWY2M2UzNGZjZDM1YjVhOTllN2QxZjI3ZDY1NmNwLTIsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2E5cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTQKKyAgICAweDEuYTI3MWY2M2UzNGZjZDM1YjVhOTllN2QxZjI3ZDY1NmNwLTIsCisgICAgMHgxLmJiNjdhZTg1ODRjYTlwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQxNQorICAgIDB4MS5lMWZjMDg0Y2Q3NjFhM2FhNzdlNTIxYjlhODAzYjJmMnAtMSwKKyAgICAweDEuNWY4OWUxMWEwNDQxY3AxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAtMHgxLmUxZmMwODRjZDc2MWEzYWE3N2U1MjFiOWE4MDNiMmYycC0xLAorICAgIC0weDEuNWY4OWUxMWEwNDQxY3AxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAweDEuZTFmYzA4NGNkNzYxOWMwZDUwOTE2ZDM1YWY0MGI2NjlwLTEsCisgICAgMHgxLjVmODllMTFhMDQ0MWNwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgLTB4MS5lMWZjMDg0Y2Q3NjE5YzBkNTA5MTZkMzVhZjQwYjY2OXAtMSwKKyAgICAtMHgxLjVmODllMTFhMDQ0MWNwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDE5CisgICAgMHgxLmUxZmMwODRjZDc2MThjZDMwMWVhMDQyZGJlMzk2MzYxcC0xLAorICAgIDB4MS41Zjg5ZTExYTA0NDFjcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIC0weDEuZTFmYzA4NGNkNzYxOGNkMzAxZWEwNDJkYmUzOTYzNjFwLTEsCisgICAgLTB4MS41Zjg5ZTExYTA0NDFjcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQyMQorICAgIDB4MS5lMWZjMDg0Y2Q3NjFhZWMxNTI3NWI1ZDI5YmEyMWEwOXAtMSwKKyAgICAweDEuNWY4OWUxMWEwNDQxZHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAtMHgxLmUxZmMwODRjZDc2MWFlYzE1Mjc1YjVkMjliYTIxYTA5cC0xLAorICAgIC0weDEuNWY4OWUxMWEwNDQxZHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAweDEuZTFmYzA4NGNkNzYxYTcyNDJiMjIwMTRlYTJmYTU3ZWJwLTEsCisgICAgMHgxLjVmODllMTFhMDQ0MWRwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgLTB4MS5lMWZjMDg0Y2Q3NjFhNzI0MmIyMjAxNGVhMmZhNTdlYnAtMSwKKyAgICAtMHgxLjVmODllMTFhMDQ0MWRwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgMHgxLmUxZmMwODRjZDc2MTk3ZTlkYzdhOTg0NmIyMjk3OWI5cC0xLAorICAgIDB4MS41Zjg5ZTExYTA0NDFkcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIC0weDEuZTFmYzA4NGNkNzYxOTdlOWRjN2E5ODQ2YjIyOTc5YjlwLTEsCisgICAgLTB4MS41Zjg5ZTExYTA0NDFkcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIDB4MS5lMWZjMDg0Y2Q3NjFiOWQ4MmQwNjQ5ZWI4ZTk3YTNiY3AtMSwKKyAgICAweDEuNWY4OWUxMWEwNDQxZXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAtMHgxLmUxZmMwODRjZDc2MWI5ZDgyZDA2NDllYjhlOTdhM2JjcC0xLAorICAgIC0weDEuNWY4OWUxMWEwNDQxZXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEuZTFmYzA4NGNkNzYxYjIzYjA1YjI5NTY3OTYwYjFjMDlwLTEsCisgICAgMHgxLjVmODllMTFhMDQ0MWVwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDMwCisgICAgLTB4MS5lMWZjMDg0Y2Q3NjFiMjNiMDViMjk1Njc5NjBiMWMwOXAtMSwKKyAgICAtMHgxLjVmODllMTFhMDQ0MWVwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDMxCisgICAgMHgxLmUxZmMwODRjZDc2MWEzMDBiNzBiMmM1ZmE1NzBiMmFlcC0xLAorICAgIDB4MS41Zjg5ZTExYTA0NDFlcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQzMgorICAgIC0weDEuZTFmYzA4NGNkNzYxYTMwMGI3MGIyYzVmYTU3MGIyYWVwLTEsCisgICAgLTB4MS41Zjg5ZTExYTA0NDFlcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQzMworICAgIC0weDEuZTFmYzA4NGNkNzYxYjlkODJkMDY0OWViOGU5N2EzYmNwLTEsCisgICAgLTB4MS41Zjg5ZTExYTA0NDFlcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS5lMWZjMDg0Y2Q3NjFiOWQ4MmQwNjQ5ZWI4ZTk3YTNiY3AtMSwKKyAgICAweDEuNWY4OWUxMWEwNDQxZXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAtMHgxLmUxZmMwODRjZDc2MWIyM2IwNWIyOTU2Nzk2MGIxYzA5cC0xLAorICAgIC0weDEuNWY4OWUxMWEwNDQxZXAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzYKKyAgICAweDEuZTFmYzA4NGNkNzYxYjIzYjA1YjI5NTY3OTYwYjFjMDlwLTEsCisgICAgMHgxLjVmODllMTFhMDQ0MWVwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDM3CisgICAgLTB4MS5lMWZjMDg0Y2Q3NjFhMzAwYjcwYjJjNWZhNTcwYjJhZXAtMSwKKyAgICAtMHgxLjVmODllMTFhMDQ0MWVwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLmUxZmMwODRjZDc2MWEzMDBiNzBiMmM1ZmE1NzBiMmFlcC0xLAorICAgIDB4MS41Zjg5ZTExYTA0NDFlcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQzOQorICAgIC0weDEuZTFmYzA4NGNkNzYxYWVjMTUyNzViNWQyOWJhMjFhMDlwLTEsCisgICAgLTB4MS41Zjg5ZTExYTA0NDFkcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0MAorICAgIDB4MS5lMWZjMDg0Y2Q3NjFhZWMxNTI3NWI1ZDI5YmEyMWEwOXAtMSwKKyAgICAweDEuNWY4OWUxMWEwNDQxZHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDEKKyAgICAtMHgxLmUxZmMwODRjZDc2MWE3MjQyYjIyMDE0ZWEyZmE1N2VicC0xLAorICAgIC0weDEuNWY4OWUxMWEwNDQxZHAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDIKKyAgICAweDEuZTFmYzA4NGNkNzYxYTcyNDJiMjIwMTRlYTJmYTU3ZWJwLTEsCisgICAgMHgxLjVmODllMTFhMDQ0MWRwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgLTB4MS5lMWZjMDg0Y2Q3NjE5N2U5ZGM3YTk4NDZiMjI5NzliOXAtMSwKKyAgICAtMHgxLjVmODllMTFhMDQ0MWRwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgMHgxLmUxZmMwODRjZDc2MTk3ZTlkYzdhOTg0NmIyMjk3OWI5cC0xLAorICAgIDB4MS41Zjg5ZTExYTA0NDFkcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ0NQorICAgIC0weDEuZTFmYzA4NGNkNzYxYTNhYTc3ZTUyMWI5YTgwM2IyZjJwLTEsCisgICAgLTB4MS41Zjg5ZTExYTA0NDFjcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIDB4MS5lMWZjMDg0Y2Q3NjFhM2FhNzdlNTIxYjlhODAzYjJmMnAtMSwKKyAgICAweDEuNWY4OWUxMWEwNDQxY3AxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDcKKyAgICAtMHgxLmUxZmMwODRjZDc2MTljMGQ1MDkxNmQzNWFmNDBiNjY5cC0xLAorICAgIC0weDEuNWY4OWUxMWEwNDQxY3AxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDgKKyAgICAweDEuZTFmYzA4NGNkNzYxOWMwZDUwOTE2ZDM1YWY0MGI2NjlwLTEsCisgICAgMHgxLjVmODllMTFhMDQ0MWNwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQ5CisgICAgLTB4MS5lMWZjMDg0Y2Q3NjE4Y2QzMDFlYTA0MmRiZTM5NjM2MXAtMSwKKyAgICAtMHgxLjVmODllMTFhMDQ0MWNwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgMHgxLmUxZmMwODRjZDc2MThjZDMwMWVhMDQyZGJlMzk2MzYxcC0xLAorICAgIDB4MS41Zjg5ZTExYTA0NDFjcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ1MQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTIKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTMKKyAgICAweDEuOTIxZmI1NDQ0MmQxN2M2OTg5OGNjNTE3MDE5ODM5YTJwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgLTB4MS45MjFmYjU0NDQyZDE3YzY5ODk4Y2M1MTcwMTk4MzlhMnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgMHgxLjkyMWZiNTQ0NDJkMTZjNjk4OThjYzUxNzAyMTgzOWEycC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ1NgorICAgIC0weDEuOTIxZmI1NDQ0MmQxNmM2OTg5OGNjNTE3MDIxODM5YTJwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIDB4MS45MjFmYjU0NDQyZDE4YzY5ODk4Y2M1MTcwMWQ4MzlhMnAtMSwKKyAgICAweDEuMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThjNjk4OThjYzUxNzAxZDgzOWEycC0xLAorICAgIC0weDEuMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTkKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgMHgxLjBwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLjBwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTc0Njk4OThjYzUxNzAyMzgzOWEycC0xLAorICAgIDB4MS4wcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ2MgorICAgIC0weDEuOTIxZmI1NDQ0MmQxNzQ2OTg5OGNjNTE3MDIzODM5YTJwLTEsCisgICAgLTB4MS4wcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ2MworICAgIDB4MS45MjFmYjU0NDQyZDE5YzY5ODk4Y2M1MTcwMTU4MzlhMnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjQKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTljNjk4OThjYzUxNzAxNTgzOWEycC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjUKKyAgICAweDEuOTIxZmI1NDQ0MmQxOTQ2OTg5OGNjNTE3MDEzODM5YTJwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgLTB4MS45MjFmYjU0NDQyZDE5NDY5ODk4Y2M1MTcwMTM4MzlhMnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDY3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZDU1NTU1NTU1NTU1NTViYmJiYnAtMjgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZkNTU1NTU1NTU1NTU1NWJiYmJicC0yOCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTI3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZWQ1NTU1NTU1NTU1NTU5YmJiYmJwLTI4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yNywKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZDU1NTU1NTU1NTU1NTliYmJiYnAtMjgsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0yNywKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDczCisgICAgMHgxLmZmZmZmZmZmZmZmZmNkNTU1NTU1NTU1NTU5MWJiYmJicC0yOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMjcsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIC0weDEuZmZmZmZmZmZmZmZmY2Q1NTU1NTU1NTU1NTkxYmJiYmJwLTI4LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMjcsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NQorICAgIDB4MS4wMDAwMDAwMDAwMDAwNmFhYWFhYWFhYWFhYWNkZGRkZHAtMjcsCisgICAgMHgxLjBwLTI2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDA2YWFhYWFhYWFhYWFhY2RkZGRkcC0yNywKKyAgICAtMHgxLjBwLTI2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmQ1NTU1NTU1NTU1NTU1YmJiYmJwLTI4LAorICAgIDB4MS4wcC0yNiwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZDU1NTU1NTU1NTU1NTViYmJiYnAtMjgsCisgICAgLTB4MS4wcC0yNiwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDc5CisgICAgMHgxLmZmZmZmZmZmZmZmZmRkNTU1NTU1NTU1NTU3ZGJiYmJicC0yOCwKKyAgICAweDEuMHAtMjYsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ4MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZGQ1NTU1NTU1NTU1NTdkYmJiYmJwLTI4LAorICAgIC0weDEuMHAtMjYsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIDB4MS4wMDAwMDAwMDAwMDAxNmFhYWFhYWFhYWFhYjBkZGRkZHAtMjcsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTI2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODIKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDE2YWFhYWFhYWFhYWFiMGRkZGRkcC0yNywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTI2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODMKKyAgICAweDEuMDAwMDAwMDAwMDAwMGVhYWFhYWFhYWFhYWE2ZGRkZGRwLTI3LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yNiwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDg0CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwZWFhYWFhYWFhYWFhYTZkZGRkZHAtMjcsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yNiwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZkNTU1NTU1NTU1NTU1NWJiYmJicC0yOCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmQ1NTU1NTU1NTU1NTU1YmJiYmJwLTI4LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMjYsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ4NworICAgIC0weDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDg4CisgICAgMHgxLjJkOTdjN2YzMzIxZDIzNGYyNzI5OTNkMTQxNGEyYjM5cDEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDg5CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ5MQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDkyCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDkzCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ5NgorICAgIDB4MS4yZDk3YzdmMzMyMWQyMzRmMjcyOTkzZDE0MTRhMmIzOXAxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ5NworICAgIC0weDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDk4CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ5OQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDUwMAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDUwMworICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTA0CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDUwNgorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDkKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDUxMAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDUxMgorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTEzCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUxNAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUxNworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUxOAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUyMAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTIxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTIyCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTIzCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUyNAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjYKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDIzNGYyNzI5OTNkMTQxNGEyYjM5cDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjcKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1NTU1cC01NywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDU2CisgIH0sCisgIHsgLy8gRW50cnkgNTI5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNTU1NXAtNTcsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZjU1NTVwLTU3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjBwNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmY1NTU1cC01NywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuMHA1NworICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIDB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMmZmNTU1NXAtNTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1NworICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDJmZjU1NTVwLTU3LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDU3CisgIH0sCisgIHsgLy8gRW50cnkgNTM0CisgICAgMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwM2ZhYWFhcC01NiwKKyAgICAweDEuMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDU2CisgIH0sCisgIHsgLy8gRW50cnkgNTM1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDNmYWFhYXAtNTYsCisgICAgLTB4MS4wcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjU1NTVwLTU3LAorICAgIDB4MS4wcDEsCisgICAgMHgxLjBwNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1NTU1cC01NywKKyAgICAtMHgxLjBwMSwKKyAgICAweDEuMHA1NworICB9LAorICB7IC8vIEVudHJ5IDUzOAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMWZmNTU1NXAtNTcsCisgICAgMHgxLjBwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1NworICB9LAorICB7IC8vIEVudHJ5IDUzOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDFmZjU1NTVwLTU3LAorICAgIC0weDEuMHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDU3CisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgMHgxLjAwMDAwMDAwMDAwMDE4MDAwMDAwMDAwMDAwYmZhYWFhcC01NiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDU2CisgIH0sCisgIHsgLy8gRW50cnkgNTQxCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxODAwMDAwMDAwMDAwMGJmYWFhYXAtNTYsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmFhYWFwLTU2LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLjBwNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZhYWFhcC01NiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuMHA1NworICB9LAorICB7IC8vIEVudHJ5IDU0NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNTU1NXAtNTcsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1NworICB9LAorICB7IC8vIEVudHJ5IDU0NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjU1NTVwLTU3LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDU3CisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxODAwMDAwMDAwMDAwMGJmYWFhYXAtNTYsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDcKKyAgICAweDEuMDAwMDAwMDAwMDAwMTgwMDAwMDAwMDAwMDBiZmFhYWFwLTU2LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDgKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZhYWFhcC01NiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuMHA1NworICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIDB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZmZmYWFhYXAtNTYsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuMHA1NworICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjU1NTVwLTU3LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDU3CisgIH0sCisgIHsgLy8gRW50cnkgNTUxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1NTU1cC01NywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDU3CisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDNmYWFhYXAtNTYsCisgICAgLTB4MS4wcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTMKKyAgICAweDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDAzZmFhYWFwLTU2LAorICAgIDB4MS4wcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1NTU1cC01NywKKyAgICAtMHgxLjBwMSwKKyAgICAweDEuMHA1NworICB9LAorICB7IC8vIEVudHJ5IDU1NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNTU1NXAtNTcsCisgICAgMHgxLjBwMSwKKyAgICAweDEuMHA1NworICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDFmZjU1NTVwLTU3LAorICAgIC0weDEuMHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDU3CisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAxZmY1NTU1cC01NywKKyAgICAweDEuMHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDU3CisgIH0sCisgIHsgLy8gRW50cnkgNTU4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNTU1NXAtNTcsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjU1NTVwLTU3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmY1NTU1cC01NywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuMHA1NworICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmNTU1NXAtNTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuMHA1NworICB9LAorICB7IC8vIEVudHJ5IDU2MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDJmZjU1NTVwLTU3LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDU3CisgIH0sCisgIHsgLy8gRW50cnkgNTYzCisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAyZmY1NTU1cC01NywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDU3CisgIH0sCisgIHsgLy8gRW50cnkgNTY0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZjU1NTU1NTU1NTU1NTU1NWJicC0zMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDMxCisgIH0sCisgIHsgLy8gRW50cnkgNTY1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTViYnAtMzEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmNTU1NTU1NTU1NTU1NjU1YmJwLTMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEsCisgICAgMHgxLjBwMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZjU1NTU1NTU1NTU1NTY1NWJicC0zMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMSwKKyAgICAweDEuMHAzMgorICB9LAorICB7IC8vIEVudHJ5IDU2OAorICAgIDB4MS5mZmZmZmZmZmZmZmZjZmY1NTU1NTU1NTU1ODU4NTViYnAtMzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzMgorICB9LAorICB7IC8vIEVudHJ5IDU2OQorICAgIC0weDEuZmZmZmZmZmZmZmZmY2ZmNTU1NTU1NTU1NTg1ODU1YmJwLTMxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMyCisgIH0sCisgIHsgLy8gRW50cnkgNTcwCisgICAgMHgxLjAwMDAwMDAwMDAwMDA3ZmFhYWFhYWFhYWFhZWEyYWRkcC0zMCwKKyAgICAweDEuMHAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDMxCisgIH0sCisgIHsgLy8gRW50cnkgNTcxCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwN2ZhYWFhYWFhYWFhYWVhMmFkZHAtMzAsCisgICAgLTB4MS4wcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmNTU1NTU1NTU1NTU1NTU1YmJwLTMxLAorICAgIDB4MS4wcDIsCisgICAgMHgxLjBwMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZjU1NTU1NTU1NTU1NTU1NWJicC0zMSwKKyAgICAtMHgxLjBwMiwKKyAgICAweDEuMHAzMgorICB9LAorICB7IC8vIEVudHJ5IDU3NAorICAgIDB4MS5mZmZmZmZmZmZmZmZkZmY1NTU1NTU1NTU1NzU3NTViYnAtMzEsCisgICAgMHgxLjBwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzMgorICB9LAorICB7IC8vIEVudHJ5IDU3NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZGZmNTU1NTU1NTU1NTc1NzU1YmJwLTMxLAorICAgIC0weDEuMHAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMyCisgIH0sCisgIHsgLy8gRW50cnkgNTc2CisgICAgMHgxLjAwMDAwMDAwMDAwMDE3ZmFhYWFhYWFhYWFiNjkyYWRkcC0zMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDMxCisgIH0sCisgIHsgLy8gRW50cnkgNTc3CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxN2ZhYWFhYWFhYWFhYjY5MmFkZHAtMzAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmYWFhYWFhYWFhYWFhOWFhZGRwLTMwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDIsCisgICAgMHgxLjBwMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmFhYWFhYWFhYWFhYTlhYWRkcC0zMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMiwKKyAgICAweDEuMHAzMgorICB9LAorICB7IC8vIEVudHJ5IDU4MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTViYnAtMzEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzMgorICB9LAorICB7IC8vIEVudHJ5IDU4MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmNTU1NTU1NTU1NTU1NTU1YmJwLTMxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMyCisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxN2ZhYWFhYWFhYWFhYjY5MmFkZHAtMzAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI3CisgIH0sCisgIHsgLy8gRW50cnkgNTgzCisgICAgMHgxLjAwMDAwMDAwMDAwMDE3ZmFhYWFhYWFhYWFiNjkyYWRkcC0zMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyNworICB9LAorICB7IC8vIEVudHJ5IDU4NAorICAgIC0weDEuMDAwMDAwMDAwMDAwMGZmYWFhYWFhYWFhYWFhOWFhZGRwLTMwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMiwKKyAgICAweDEuMHAyOAorICB9LAorICB7IC8vIEVudHJ5IDU4NQorICAgIDB4MS4wMDAwMDAwMDAwMDAwZmZhYWFhYWFhYWFhYWE5YWFkZHAtMzAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIsCisgICAgMHgxLjBwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZjU1NTU1NTU1NTU1NTU1NWJicC0zMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmNTU1NTU1NTU1NTU1NTU1YmJwLTMxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI4CisgIH0sCisgIHsgLy8gRW50cnkgNTg4CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwN2ZhYWFhYWFhYWFhYWVhMmFkZHAtMzAsCisgICAgLTB4MS4wcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI3CisgIH0sCisgIHsgLy8gRW50cnkgNTg5CisgICAgMHgxLjAwMDAwMDAwMDAwMDA3ZmFhYWFhYWFhYWFhZWEyYWRkcC0zMCwKKyAgICAweDEuMHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyNworICB9LAorICB7IC8vIEVudHJ5IDU5MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmNTU1NTU1NTU1NTU1NTU1YmJwLTMxLAorICAgIC0weDEuMHAtMiwKKyAgICAweDEuMHAyOAorICB9LAorICB7IC8vIEVudHJ5IDU5MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTViYnAtMzEsCisgICAgMHgxLjBwLTIsCisgICAgMHgxLjBwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZjU1NTU1NTU1NTU3NTc1NWJicC0zMSwKKyAgICAtMHgxLjBwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTMKKyAgICAweDEuZmZmZmZmZmZmZmZmZGZmNTU1NTU1NTU1NTc1NzU1YmJwLTMxLAorICAgIDB4MS4wcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI4CisgIH0sCisgIHsgLy8gRW50cnkgNTk0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTViYnAtMzEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0zLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI3CisgIH0sCisgIHsgLy8gRW50cnkgNTk1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZjU1NTU1NTU1NTU1NTU1NWJicC0zMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyNworICB9LAorICB7IC8vIEVudHJ5IDU5NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmNTU1NTU1NTU1NTU1NjU1YmJwLTMxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMywKKyAgICAweDEuMHAyOAorICB9LAorICB7IC8vIEVudHJ5IDU5NworICAgIDB4MS5mZmZmZmZmZmZmZmZlZmY1NTU1NTU1NTU1NTU2NTViYnAtMzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMsCisgICAgMHgxLjBwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNmZjU1NTU1NTU1NTU4NTg1NWJicC0zMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTkKKyAgICAweDEuZmZmZmZmZmZmZmZmY2ZmNTU1NTU1NTU1NTg1ODU1YmJwLTMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI4CisgIH0sCisgIHsgLy8gRW50cnkgNjAwCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDYwMQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDYwMgorICAgIDB4MS45MjFmYjU0NDQyZDE3YzY5ODk4Y2M1MTcwMTk4MzlhMnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdjNjk4OThjYzUxNzAxOTgzOWEycC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDQKKyAgICAweDEuOTIxZmI1NDQ0MmQxNmM2OTg5OGNjNTE3MDIxODM5YTJwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjA1CisgICAgLTB4MS45MjFmYjU0NDQyZDE2YzY5ODk4Y2M1MTcwMjE4MzlhMnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjA2CisgICAgMHgxLjkyMWZiNTQ0NDJkMThjNjk4OThjYzUxNzAxZDgzOWEycC0xLAorICAgIDB4MS4wcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDYwNworICAgIC0weDEuOTIxZmI1NDQ0MmQxOGM2OTg5OGNjNTE3MDFkODM5YTJwLTEsCisgICAgLTB4MS4wcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDYwOAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDkKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEuMHAzLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTAKKyAgICAweDEuOTIxZmI1NDQ0MmQxNzQ2OTg5OGNjNTE3MDIzODM5YTJwLTEsCisgICAgMHgxLjBwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjExCisgICAgLTB4MS45MjFmYjU0NDQyZDE3NDY5ODk4Y2M1MTcwMjM4MzlhMnAtMSwKKyAgICAtMHgxLjBwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjEyCisgICAgMHgxLjkyMWZiNTQ0NDJkMTljNjk4OThjYzUxNzAxNTgzOWEycC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDYxMworICAgIC0weDEuOTIxZmI1NDQ0MmQxOWM2OTg5OGNjNTE3MDE1ODM5YTJwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDYxNAorICAgIDB4MS45MjFmYjU0NDQyZDE5NDY5ODk4Y2M1MTcwMTM4MzlhMnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTk0Njk4OThjYzUxNzAxMzgzOWEycC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTYKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjE3CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjE4CisgICAgLTB4MS5kYWM2NzA1NjFiYjUxY2YxNDYyZWYyM2ZkZjU2NjFiNHAtMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjE5CisgICAgMHgxLmRhYzY3MDU2MWJiNTFjZjE0NjJlZjIzZmRmNTY2MWI0cC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDYyMAorICAgIC0weDEuZGFjNjcwNTYxYmI1MTAyNDc5NjIyNTczMTFiY2M4MWJwLTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgMHgxLjBwNAorICB9LAorICB7IC8vIEVudHJ5IDYyMQorICAgIDB4MS5kYWM2NzA1NjFiYjUxMDI0Nzk2MjI1NzMxMWJjYzgxYnAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzLAorICAgIDB4MS4wcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjIKKyAgICAtMHgxLmRhYzY3MDU2MWJiNGY2OGFkZmM4OGJkOTc4NzUxYTA2cC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjMKKyAgICAweDEuZGFjNjcwNTYxYmI0ZjY4YWRmYzg4YmQ5Nzg3NTFhMDZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNjI0CisgICAgLTB4MS5kYWM2NzA1NjFiYjUwMzU3YWM5NTU4YTY0NTkzZDI1OHAtMiwKKyAgICAtMHgxLjBwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjI1CisgICAgMHgxLmRhYzY3MDU2MWJiNTAzNTdhYzk1NThhNjQ1OTNkMjU4cC0yLAorICAgIDB4MS4wcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDYyNgorICAgIC0weDEuZGFjNjcwNTYxYmI0ZjY4YWRmYzg4YmQ5Nzg3NTFhMDZwLTIsCisgICAgLTB4MS4wcDMsCisgICAgMHgxLjBwNAorICB9LAorICB7IC8vIEVudHJ5IDYyNworICAgIDB4MS5kYWM2NzA1NjFiYjRmNjhhZGZjODhiZDk3ODc1MWEwNnAtMiwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjgKKyAgICAtMHgxLmRhYzY3MDU2MWJiNGRjZjE0NjJlZjIzZmUwMjMyZTgxcC0yLAorICAgIC0weDEuMHAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjkKKyAgICAweDEuZGFjNjcwNTYxYmI0ZGNmMTQ2MmVmMjNmZTAyMzJlODFwLTIsCisgICAgMHgxLjBwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNjMwCisgICAgLTB4MS5kYWM2NzA1NjFiYjRmNjhhZGZjODhiZDk3ODc1MWEwNnAtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjMxCisgICAgMHgxLmRhYzY3MDU2MWJiNGY2OGFkZmM4OGJkOTc4NzUxYTA2cC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDYzMgorICAgIC0weDEuZGFjNjcwNTYxYmI0ZTliZTEyZmJiZjBjYWI5M2QyNThwLTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLjBwNAorICB9LAorICB7IC8vIEVudHJ5IDYzMworICAgIDB4MS5kYWM2NzA1NjFiYjRlOWJlMTJmYmJmMGNhYjkzZDI1OHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS4wcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzQKKyAgICAtMHgxLmRhYzY3MDU2MWJiNGQwMjQ3OTYyMjU3MzEzYmNjODFicC0yLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzUKKyAgICAweDEuZGFjNjcwNTYxYmI0ZDAyNDc5NjIyNTczMTNiY2M4MWJwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNjM2CisgICAgMHgxLjcyYzQzZjRiMTY1MGE5ZDlhZWE2YTQwYjE1NmQ5OGMwcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDYzNworICAgIC0weDEuNzJjNDNmNGIxNjUwYTlkOWFlYTZhNDBiMTU2ZDk4YzBwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDYzOAorICAgIDB4MS43MmM0M2Y0YjE2NTBhN2Y3Y2NjNGMyMjkzM2I1NThmOHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgLTB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzkKKyAgICAtMHgxLjcyYzQzZjRiMTY1MGE3ZjdjY2M0YzIyOTMzYjU1OGY4cDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgLTB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDAKKyAgICAweDEuNzJjNDNmNGIxNjUwYTcwNmRiZDNkMTM4NDJjM2Y2YTVwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjQxCisgICAgLTB4MS43MmM0M2Y0YjE2NTBhNzA2ZGJkM2QxMzg0MmMzZjZhNXAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjQyCisgICAgMHgxLjcyYzQzZjRiMTY1MGE4ZThiZGI1YjMxYTI0ODk3ZmYycDEsCisgICAgMHgxLjBwMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDY0MworICAgIC0weDEuNzJjNDNmNGIxNjUwYThlOGJkYjViMzFhMjQ4OTdmZjJwMSwKKyAgICAtMHgxLjBwMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDY0NAorICAgIDB4MS43MmM0M2Y0YjE2NTBhNzA2ZGJkM2QxMzg0MmMzZjZhNXAxLAorICAgIDB4MS4wcDMsCisgICAgLTB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDUKKyAgICAtMHgxLjcyYzQzZjRiMTY1MGE3MDZkYmQzZDEzODQyYzNmNmE1cDEsCisgICAgLTB4MS4wcDMsCisgICAgLTB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDYKKyAgICAweDEuNzJjNDNmNGIxNjUwYTYxNWVhZTJlMDQ3NTFjYmVmOGZwMSwKKyAgICAweDEuMHAzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjQ3CisgICAgLTB4MS43MmM0M2Y0YjE2NTBhNjE1ZWFlMmUwNDc1MWNiZWY4ZnAxLAorICAgIC0weDEuMHAzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjQ4CisgICAgMHgxLjcyYzQzZjRiMTY1MGE3MDZkYmQzZDEzODQyYzNmNmE1cDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDY0OQorICAgIC0weDEuNzJjNDNmNGIxNjUwYTcwNmRiZDNkMTM4NDJjM2Y2YTVwMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIDB4MS43MmM0M2Y0YjE2NTBhNTI0ZjlmMWVmNTY2MGUzZGE0ZHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgLTB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTEKKyAgICAtMHgxLjcyYzQzZjRiMTY1MGE1MjRmOWYxZWY1NjYwZTNkYTRkcDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgLTB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTIKKyAgICAweDEuNzJjNDNmNGIxNjUwYTQzNDA5MDBmZTY1NmZkZTg5YjFwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjUzCisgICAgLTB4MS43MmM0M2Y0YjE2NTBhNDM0MDkwMGZlNjU2ZmRlODliMXAxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjU0CisgICAgMHgxLmZkNWJhOWFhYzJmNmRjNjU5MTJmMzEzZTdkMTExZGVmcC00LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDY1NQorICAgIC0weDEuZmQ1YmE5YWFjMmY2ZGM2NTkxMmYzMTNlN2QxMTFkZWZwLTQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDY1NgorICAgIDB4MS5mZDViYTlhYWMyZjZjY2E0OTUxZjcwNDI2ZDRlMzE4MXAtNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS4wcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTcKKyAgICAtMHgxLmZkNWJhOWFhYzJmNmNjYTQ5NTFmNzA0MjZkNGUzMTgxcC00LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS4wcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAweDEuZmQ1YmE5YWFjMmY2YWQyMjljZmZlZTRhNTBiMGU1YjRwLTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjU5CisgICAgLTB4MS5mZDViYTlhYWMyZjZhZDIyOWNmZmVlNGE1MGIwZTViNHAtNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjYwCisgICAgMHgxLmZkNWJhOWFhYzJmNmVjMjY4ZDNlZjIzYThkNGUzMTgxcC00LAorICAgIDB4MS4wcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDY2MQorICAgIC0weDEuZmQ1YmE5YWFjMmY2ZWMyNjhkM2VmMjNhOGQ0ZTMxODFwLTQsCisgICAgLTB4MS4wcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDY2MgorICAgIDB4MS5mZDViYTlhYWMyZjZkYzY1OTEyZjMxM2U3ZDExMWRlZnAtNCwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjMKKyAgICAtMHgxLmZkNWJhOWFhYzJmNmRjNjU5MTJmMzEzZTdkMTExZGVmcC00LAorICAgIC0weDEuMHAzLAorICAgIDB4MS4wcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjQKKyAgICAweDEuZmQ1YmE5YWFjMmY2YmNlMzk5MGZhZjQ2NWY3ZjgzZDlwLTQsCisgICAgMHgxLjBwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjY1CisgICAgLTB4MS5mZDViYTlhYWMyZjZiY2UzOTkwZmFmNDY1ZjdmODNkOXAtNCwKKyAgICAtMHgxLjBwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjY2CisgICAgMHgxLmZkNWJhOWFhYzJmNzBiYTg4NTVlNzQzMmFkYmNiNjcxcC00LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDY2NworICAgIC0weDEuZmQ1YmE5YWFjMmY3MGJhODg1NWU3NDMyYWRiY2I2NzFwLTQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDY2OAorICAgIDB4MS5mZDViYTlhYWMyZjZmYmU3ODk0ZWIzMzY5YzhiNTQ5NnAtNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzLAorICAgIDB4MS4wcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjkKKyAgICAtMHgxLmZkNWJhOWFhYzJmNmZiZTc4OTRlYjMzNjljOGI1NDk2cC00LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzLAorICAgIDB4MS4wcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzAKKyAgICAweDEuZmQ1YmE5YWFjMmY2ZGM2NTkxMmYzMTNlN2QxMTFkZWZwLTQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjcxCisgICAgLTB4MS5mZDViYTlhYWMyZjZkYzY1OTEyZjMxM2U3ZDExMWRlZnAtNCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjcyCisgICAgLTB4MS5mZjU1YmI3MmNmZGVjYzNkYzYxZjU1ODg0ZGE2NTRlM3AtNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjczCisgICAgMHgxLmZmNTViYjcyY2ZkZWNjM2RjNjFmNTU4ODRkYTY1NGUzcC01LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDY3NAorICAgIC0weDEuZmY1NWJiNzJjZmRlYmM0ZGI2MmY0NTk4M2MzYTNlN2NwLTUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDY3NQorICAgIDB4MS5mZjU1YmI3MmNmZGViYzRkYjYyZjQ1OTgzYzNhM2U3Y3AtNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzLAorICAgIDB4MS4wcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzYKKyAgICAtMHgxLmZmNTViYjcyY2ZkZTljNmQ5NjRmMjViODFjNWMxYWEycC01LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzcKKyAgICAweDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA3CisgIH0sCisgIHsgLy8gRW50cnkgNjc4CisgICAgLTB4MS5mZjU1YmI3MmNmZGVhYzVkYTYzZjM1YTgyY2NiMmMxMHAtNSwKKyAgICAtMHgxLjBwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjc5CisgICAgMHgxLmZmNTViYjcyY2ZkZWFjNWRhNjNmMzVhODJjY2IyYzEwcC01LAorICAgIDB4MS4wcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDY4MAorICAgIC0weDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgLTB4MS4wcDMsCisgICAgMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDY4MQorICAgIDB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODIKKyAgICAtMHgxLmZmNTViYjcyY2ZkZTdjOGQ3NjZmMDVkN2ZlNzgwMGJhcC01LAorICAgIC0weDEuMHAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODMKKyAgICAweDEuZmY1NWJiNzJjZmRlN2M4ZDc2NmYwNWQ3ZmU3ODAwYmFwLTUsCisgICAgMHgxLjBwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA3CisgIH0sCisgIHsgLy8gRW50cnkgNjg0CisgICAgLTB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjg1CisgICAgMHgxLmZmNTViYjcyY2ZkZTljNmQ5NjRmMjViODFjNWMxYWEycC01LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIC0weDEuZmY1NWJiNzJjZmRlOGM3ZDg2NWYxNWM4MGM2YjhiYjBwLTUsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDY4NworICAgIDB4MS5mZjU1YmI3MmNmZGU4YzdkODY1ZjE1YzgwYzZiOGJiMHAtNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS4wcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODgKKyAgICAtMHgxLmZmNTViYjcyY2ZkZTZjOWQ2NjdlZjVlN2VmODQ3NmMxcC01LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODkKKyAgICAweDEuZmY1NWJiNzJjZmRlNmM5ZDY2N2VmNWU3ZWY4NDc2YzFwLTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA3CisgIH0sCisgIHsgLy8gRW50cnkgNjkwCisgICAgMHgxLjA0NjhhOGFjZTRkZjY1ZDJlZDhjNDBkMzdjYzZlOTA3cDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDY5MQorICAgIC0weDEuMDQ2OGE4YWNlNGRmNjVkMmVkOGM0MGQzN2NjNmU5MDdwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDY5MgorICAgIDB4MS4wNDY4YThhY2U0ZGY2MjlmYmE1OTBkYTA0OThlOTcxY3AxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTMKKyAgICAtMHgxLjA0NjhhOGFjZTRkZjYyOWZiYTU5MGRhMDQ5OGU5NzFjcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTQKKyAgICAweDEuMDQ2OGE4YWNlNGRmNjEwNjIwYmY3NDA2YWZlYWMwMTJwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjk1CisgICAgLTB4MS4wNDY4YThhY2U0ZGY2MTA2MjBiZjc0MDZhZmVhYzAxMnAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjk2CisgICAgMHgxLjA0NjhhOGFjZTRkZjY0Mzk1M2YyYTczOWUzMTNiNWQ0cDEsCisgICAgMHgxLjBwMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDY5NworICAgIC0weDEuMDQ2OGE4YWNlNGRmNjQzOTUzZjJhNzM5ZTMxM2I1ZDRwMSwKKyAgICAtMHgxLjBwMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDY5OAorICAgIDB4MS4wNDY4YThhY2U0ZGY2MTA2MjBiZjc0MDZhZmVhYzAxMnAxLAorICAgIDB4MS4wcDMsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTkKKyAgICAtMHgxLjA0NjhhOGFjZTRkZjYxMDYyMGJmNzQwNmFmZWFjMDEycDEsCisgICAgLTB4MS4wcDMsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDAKKyAgICAweDEuMDQ2OGE4YWNlNGRmNWY2Yzg3MjVkYTZkMTY0ZTk3MWNwMSwKKyAgICAweDEuMHAzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzAxCisgICAgLTB4MS4wNDY4YThhY2U0ZGY1ZjZjODcyNWRhNmQxNjRlOTcxY3AxLAorICAgIC0weDEuMHAzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzAyCisgICAgMHgxLjA0NjhhOGFjZTRkZjYxMDYyMGJmNzQwNmFmZWFjMDEycDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDcwMworICAgIC0weDEuMDQ2OGE4YWNlNGRmNjEwNjIwYmY3NDA2YWZlYWMwMTJwMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDcwNAorICAgIDB4MS4wNDY4YThhY2U0ZGY1ZGQyZWQ4YzQwZDM3Y2UwODJhMXAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDUKKyAgICAtMHgxLjA0NjhhOGFjZTRkZjVkZDJlZDhjNDBkMzdjZTA4MmExcDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDYKKyAgICAweDEuMDQ2OGE4YWNlNGRmNWMzOTUzZjJhNzM5ZTM1M2I1ZDRwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzA3CisgICAgLTB4MS4wNDY4YThhY2U0ZGY1YzM5NTNmMmE3MzllMzUzYjVkNHAxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzA4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDcwOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDcxMAorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMDMsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xMDMsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDJmZmZmZmZwLTEwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzEzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMmZmZmZmZnAtMTAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzE0CisgICAgMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwNDBwLTEwMCwKKyAgICAweDEuMHAtMTAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzE1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDQwcC0xMDAsCisgICAgLTB4MS4wcC0xMDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMSwKKyAgICAweDEuMHAtMTAyLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzE3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIC0weDEuMHAtMTAyLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzE4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAxZmZmZmZmcC0xMDEsCisgICAgMHgxLjBwLTEwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDcxOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDFmZmZmZmZwLTEwMSwKKyAgICAtMHgxLjBwLTEwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDcyMAorICAgIDB4MS4wMDAwMDAwMDAwMDAxODAwMDAwMDAwMDAwMGMwcC0xMDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDcyMQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTgwMDAwMDAwMDAwMDBjMHAtMTAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzIyCisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMiwKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDcyMworICAgIC0weDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMiwKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDcyNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTIwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMjAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzI3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMjAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMjAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzI4CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC0yMDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIwMywKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDcyOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwLTIwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTIwMywKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDczMAorICAgIDB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMmZmZmZmZnAtMjAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yMDMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAyZmZmZmZmcC0yMDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0yMDMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzIKKyAgICAweDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA0MHAtMjAwLAorICAgIDB4MS4wcC0yMDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwNDBwLTIwMCwKKyAgICAtMHgxLjBwLTIwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDczNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMjAxLAorICAgIDB4MS4wcC0yMDIsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0yMDEsCisgICAgLTB4MS4wcC0yMDIsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDFmZmZmZmZwLTIwMSwKKyAgICAweDEuMHAtMjAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzM3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMWZmZmZmZnAtMjAxLAorICAgIC0weDEuMHAtMjAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzM4CisgICAgMHgxLjAwMDAwMDAwMDAwMDE4MDAwMDAwMDAwMDAwYzBwLTIwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzM5CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxODAwMDAwMDAwMDAwMGMwcC0yMDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yMDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDAKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTIwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjAyLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzQxCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZmZmZmZmZnAtMjAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMjAyLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzQyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0yMDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDc0MworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTIwMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTIwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDc0NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTAwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDc0NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xMDAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzQ2CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMDAzLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzQ3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEwMDMsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDgKKyAgICAweDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDJmZmZmZmZwLTEwMDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEwMDMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAyZmZmZmZmcC0xMDAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTAwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDc1MAorICAgIDB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDQwcC0xMDAwLAorICAgIDB4MS4wcC0xMDAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzUxCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDQwcC0xMDAwLAorICAgIC0weDEuMHAtMTAwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDc1MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAwMSwKKyAgICAweDEuMHAtMTAwMiwKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc1MworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMDEsCisgICAgLTB4MS4wcC0xMDAyLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzU0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAxZmZmZmZmcC0xMDAxLAorICAgIDB4MS4wcC0xMDAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzU1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMWZmZmZmZnAtMTAwMSwKKyAgICAtMHgxLjBwLTEwMDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTYKKyAgICAweDEuMDAwMDAwMDAwMDAwMTgwMDAwMDAwMDAwMDBjMHAtMTAwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDc1NworICAgIC0weDEuMDAwMDAwMDAwMDAwMTgwMDAwMDAwMDAwMDBjMHAtMTAwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTgKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMDIsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAwMiwKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc2MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDc2MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzYyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyCisgIH0sCisgIHsgLy8gRW50cnkgNzY0CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmN2ZmZmZmcC0xMDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmN2ZmZmZmcC0xMDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyCisgIH0sCisgIHsgLy8gRW50cnkgNzY2CisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMiwKKyAgICAweDEuMHAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDIsCisgICAgMHgxLjBwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNzY4CisgICAgMHgxLmZmZmZmZmZmZmZmZmMwMDAwMDAwMDAwMDAzZmZmZmZmcC0xMDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwMDAwMDAwMDAwMDAzZmZmZmZmcC0xMDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNzcwCisgICAgMHgxLmZmZmZmZmZmZmZmZmEwMDAwMDAwMDAwMDBiZmZmZmZmcC0xMDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmEwMDAwMDAwMDAwMDBiZmZmZmZmcC0xMDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNzcyCisgICAgMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwODBwLTEwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDc3MworICAgIC0weDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA4MHAtMTAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDc3NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyCisgIH0sCisgIHsgLy8gRW50cnkgNzc1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDc3NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLjBwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNzc3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS4wcDEwMworICB9LAorICB7IC8vIEVudHJ5IDc3OAorICAgIDB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMmZmZmZmZnAtMTAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNzc5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMmZmZmZmZnAtMTAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMworICB9LAorICB7IC8vIEVudHJ5IDc4MAorICAgIDB4MS5mZmZmZmZmZmZmZmZiMDAwMDAwMDAwMDAwOWZmZmZmZnAtMTAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNzgxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZiMDAwMDAwMDAwMDAwOWZmZmZmZnAtMTAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDEwMworICB9LAorICB7IC8vIEVudHJ5IDc4MgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMXAtMTAwLAorICAgIDB4MS4wcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyCisgIH0sCisgIHsgLy8gRW50cnkgNzgzCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMXAtMTAwLAorICAgIC0weDEuMHAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDc4NAorICAgIDB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDQwcC0xMDAsCisgICAgMHgxLjBwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODUKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwNDBwLTEwMCwKKyAgICAtMHgxLjBwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMSwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDEwMworICB9LAorICB7IC8vIEVudHJ5IDc4NworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMSwKKyAgICAtMHgxLjBwMywKKyAgICAweDEuMHAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDFmZmZmZmZwLTEwMSwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMworICB9LAorICB7IC8vIEVudHJ5IDc4OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDFmZmZmZmZwLTEwMSwKKyAgICAtMHgxLjBwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTAKKyAgICAweDEuZmZmZmZmZmZmZmZmYzAwMDAwMDAwMDAwMDdmZmZmZmZwLTEwMSwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDEwMworICB9LAorICB7IC8vIEVudHJ5IDc5MQorICAgIC0weDEuZmZmZmZmZmZmZmZmYzAwMDAwMDAwMDAwMDdmZmZmZmZwLTEwMSwKKyAgICAtMHgxLjBwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTIKKyAgICAweDEuMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDJwLTEwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDc5MworICAgIC0weDEuMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDJwLTEwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTQKKyAgICAweDEuMDAwMDAwMDAwMDAwMTgwMDAwMDAwMDAwMDBjMHAtMTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyCisgIH0sCisgIHsgLy8gRW50cnkgNzk1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxODAwMDAwMDAwMDAwMGMwcC0xMDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyCisgIH0sCisgIHsgLy8gRW50cnkgNzk2CisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAweDEuMHAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTcKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgMHgxLjBwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNzk4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgODAwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAzZmZmZmZmcC0xMDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAzZmZmZmZmcC0xMDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgODAyCisgICAgMHgxLjAwMDAwMDAwMDAwMDMwMDAwMDAwMDAwMDAzcC0xMDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDMwMDAwMDAwMDAwMDAzcC0xMDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyCisgIH0sCisgIHsgLy8gRW50cnkgODA0CisgICAgMHgxLjAwMDAwMDAwMDAwMDI4MDAwMDAwMDAwMDAxNDBwLTEwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDgwNQorICAgIC0weDEuMDAwMDAwMDAwMDAwMjgwMDAwMDAwMDAwMDE0MHAtMTAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDgwNgorICAgIDB4MS4wMDAwMDAwMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDMsCisgICAgMHgxLjBwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgODA3CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAzLAorICAgIDB4MS4wcDEwMworICB9LAorICB7IC8vIEVudHJ5IDgwOAorICAgIDB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZnAtMTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgODA5CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZnAtMTAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMworICB9LAorICB7IC8vIEVudHJ5IDgxMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgODExCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDEwMworICB9LAorICB7IC8vIEVudHJ5IDgxMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDI0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmY3ZmZmZmZwLTEwMjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODE1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZjdmZmZmZnAtMTAyNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODE2CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmN2ZmZmZmcC0xMDI0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDgxNworICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmY3ZmZmZmZwLTEwMjQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDgxOAorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZjdmZmZmZnAtMTAyNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmN2ZmZmZmcC0xMDI0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmY3ZmZmZmZwLTEwMjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODIxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZjdmZmZmZnAtMTAyNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODIyCisgICAgMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwODBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODIzCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDgwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODI1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODI2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDI0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDgyNworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDgyOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDI0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODMxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODMyCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAxcC0xMDIzLAorICAgIDB4MS4wcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDgzMworICAgIC0weDEuMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDFwLTEwMjMsCisgICAgLTB4MS4wcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDgzNAorICAgIDB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDQwcC0xMDIzLAorICAgIDB4MS4wcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDgzNQorICAgIC0weDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA0MHAtMTAyMywKKyAgICAtMHgxLjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODM2CisgICAgMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwNDBwLTEwMjMsCisgICAgMHgxLjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODM3CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDQwcC0xMDIzLAorICAgIC0weDEuMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA0MHAtMTAyMywKKyAgICAweDEuMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwNDBwLTEwMjMsCisgICAgLTB4MS4wcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg0MAorICAgIDB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDQwcC0xMDIzLAorICAgIDB4MS4wcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg0MQorICAgIC0weDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA0MHAtMTAyMywKKyAgICAtMHgxLjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODQyCisgICAgMHgxLjAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAycC0xMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg0MworICAgIC0weDEuMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDJwLTEwMjMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg0NAorICAgIDB4MS4wMDAwMDAwMDAwMDAxODAwMDAwMDAwMDAwMGMwcC0xMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg0NQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTgwMDAwMDAwMDAwMDBjMHAtMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODQ2CisgICAgMHgxLjAwMDAwMDAwMDAwMDE4MDAwMDAwMDAwMDAwYzBwLTEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODQ3CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxODAwMDAwMDAwMDAwMGMwcC0xMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTgwMDAwMDAwMDAwMDBjMHAtMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDE4MDAwMDAwMDAwMDAwYzBwLTEwMjMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg1MAorICAgIDB4MS4wMDAwMDAwMDAwMDAxODAwMDAwMDAwMDAwMGMwcC0xMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg1MQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTgwMDAwMDAwMDAwMDBjMHAtMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODUyCisgICAgMHgxLjAwMDAwMDAwMDAwMDMwMDAwMDAwMDAwMDAzcC0xMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg1MworICAgIC0weDEuMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDNwLTEwMjMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg1NAorICAgIDB4MS4wMDAwMDAwMDAwMDAyODAwMDAwMDAwMDAwMTQwcC0xMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg1NQorICAgIC0weDEuMDAwMDAwMDAwMDAwMjgwMDAwMDAwMDAwMDE0MHAtMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODU2CisgICAgMHgxLjAwMDAwMDAwMDAwMDI4MDAwMDAwMDAwMDAxNDBwLTEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODU3CisgICAgLTB4MS4wMDAwMDAwMDAwMDAyODAwMDAwMDAwMDAwMTQwcC0xMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTgKKyAgICAweDEuMDAwMDAwMDAwMDAwMjgwMDAwMDAwMDAwMDE0MHAtMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDI4MDAwMDAwMDAwMDAxNDBwLTEwMjMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg2MAorICAgIDB4MS4wMDAwMDAwMDAwMDAyODAwMDAwMDAwMDAwMTQwcC0xMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg2MQorICAgIC0weDEuMDAwMDAwMDAwMDAwMjgwMDAwMDAwMDAwMDE0MHAtMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODYyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg2MworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg2NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZjdmZmZmZnAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmN2ZmZmZmcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmY3ZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODY3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZjdmZmZmZnAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODY4CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmN2ZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg2OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmY3ZmZmZmZwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg3MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZjdmZmZmZnAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmN2ZmZmZmcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzIKKyAgICAweDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA4MHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwODBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg3NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODc3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODc4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg3OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg4MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODIKKyAgICAweDEuMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDFwLTEwMjIsCisgICAgMHgxLjBwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODgzCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMXAtMTAyMiwKKyAgICAtMHgxLjBwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODg0CisgICAgMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwNDBwLTEwMjIsCisgICAgMHgxLjBwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODg1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDQwcC0xMDIyLAorICAgIC0weDEuMHAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODYKKyAgICAweDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA0MHAtMTAyMiwKKyAgICAweDEuMHAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODcKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwNDBwLTEwMjIsCisgICAgLTB4MS4wcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg4OAorICAgIDB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDQwcC0xMDIyLAorICAgIDB4MS4wcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg4OQorICAgIC0weDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA0MHAtMTAyMiwKKyAgICAtMHgxLjBwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODkwCisgICAgMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwNDBwLTEwMjIsCisgICAgMHgxLjBwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODkxCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDQwcC0xMDIyLAorICAgIC0weDEuMHAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTIKKyAgICAweDEuMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDJwLTEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODkzCisgICAgLTB4MS4wMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMnAtMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODk0CisgICAgMHgxLjAwMDAwMDAwMDAwMDE4MDAwMDAwMDAwMDAwYzBwLTEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODk1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxODAwMDAwMDAwMDAwMGMwcC0xMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTYKKyAgICAweDEuMDAwMDAwMDAwMDAwMTgwMDAwMDAwMDAwMDBjMHAtMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTcKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDE4MDAwMDAwMDAwMDAwYzBwLTEwMjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg5OAorICAgIDB4MS4wMDAwMDAwMDAwMDAxODAwMDAwMDAwMDAwMGMwcC0xMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg5OQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTgwMDAwMDAwMDAwMDBjMHAtMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTAwCisgICAgMHgxLjAwMDAwMDAwMDAwMDE4MDAwMDAwMDAwMDAwYzBwLTEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTAxCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxODAwMDAwMDAwMDAwMGMwcC0xMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDIKKyAgICAweDEuMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDNwLTEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTAzCisgICAgLTB4MS4wMDAwMDAwMDAwMDAzMDAwMDAwMDAwMDAwM3AtMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTA0CisgICAgMHgxLjAwMDAwMDAwMDAwMDI4MDAwMDAwMDAwMDAxNDBwLTEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTA1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAyODAwMDAwMDAwMDAwMTQwcC0xMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDYKKyAgICAweDEuMDAwMDAwMDAwMDAwMjgwMDAwMDAwMDAwMDE0MHAtMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDcKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDI4MDAwMDAwMDAwMDAxNDBwLTEwMjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDkwOAorICAgIDB4MS4wMDAwMDAwMDAwMDAyODAwMDAwMDAwMDAwMTQwcC0xMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDkwOQorICAgIC0weDEuMDAwMDAwMDAwMDAwMjgwMDAwMDAwMDAwMDE0MHAtMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTEwCisgICAgMHgxLjAwMDAwMDAwMDAwMDI4MDAwMDAwMDAwMDAxNDBwLTEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTExCisgICAgLTB4MS4wMDAwMDAwMDAwMDAyODAwMDAwMDAwMDAwMTQwcC0xMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTIKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDEwMjMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTMKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAxMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTE0CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAxMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTE1CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDkxNgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwMTAyMywKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDkxNworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDEwMjMsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTE5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjAKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTIxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjIKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMjMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjMKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTI0CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTI1CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDkyNgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAyMywKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDkyNworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMjMsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTI5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzAKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTMxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzIKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcDEwMjMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzMKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuMHAxMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTM0CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuMHAxMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTM1CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDkzNgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLjBwMTAyMywKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDkzNworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS4wcDEwMjMsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTM5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDAKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTQxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDIKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDMKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTQ0CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTQ1CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDk0NgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDk0NworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTQ5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTAKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTUxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTIKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTMKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTU0CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTU1CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDk1NgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDk1NworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTU5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjAKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTYxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjIKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAwLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDk2MworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjQKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDk2NQorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjYKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTY3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDk2OAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjkKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzAKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgOTcxCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTcyCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTczCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgOTc0CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzUKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgLTAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzYKKyAgICAwLjAsCisgICAgMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgOTc3CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTc4CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDk3OQorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODAKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTgxCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgOTgyCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODMKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODQKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODUKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODYKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLUhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDk4NworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDk4OQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTkwCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTkxCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTIKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTMKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTQKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTUKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDk5NgorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDk5NworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDk5OAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIEhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTkKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAwCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEwMDEKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTAwMgorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTAwMworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEwMDQKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA1CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEwMDYKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEwMDcKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEwMDgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEwMDkKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEwCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTAxMQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEyCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEzCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE0CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwMTUKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEwMTYKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwMTcKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwMTgKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTAyMAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwMjEKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTAyMgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIzCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwMjQKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEwMjUKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwMjYKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI3CisgICAgLTB4MS4yZDk3YzdmMzMyMWQyMzRmMjcyOTkzZDE0MTRhMmIzOXAxLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI4CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTAyOQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTAzMAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEwMzIKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTAzMworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTAzNAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTAzNQorICAgIDB4MS4yZDk3YzdmMzMyMWQyMzRmMjcyOTkzZDE0MTRhMmIzOXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM2CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM3CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM4CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwMzkKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTA0MAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwNDEKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQyCisgICAgMHgxLjkyMWZiNTQ0NDJkMTc0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQzCisgICAgMHgxLjkyMWZiNTQ0NDJkMTk0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTA0NAorICAgIDB4MS4yZDk3YzdmMzMyMWQyMzRmMjcyOTkzZDE0MTRhMmIzOXAxLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEwNDUKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwNDYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1NTU1NTVwLTUzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTA0NworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1NTU1NTVwLTUzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEwNDgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEwNDkKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUwCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTA1MQorICAgIDB4MS4yZDk3YzdmMzMyMWQyMzRmMjcyOTkzZDE0MTRhMmIzOXAxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwNTIKKyAgICAweDEuOTIxZmI1NDQ0MmQxN2M2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUzCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU0CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU1CisgICAgLTB4MS45MjFmYjU0NDQyZDE3NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwNTYKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU3CisgICAgLTB4MS4yZDk3YzdmMzMyMWQyMzRmMjcyOTkzZDE0MTRhMmIzOXAxLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU4CisgICAgLTB4MS45MjFmYjU0NDQyZDE3YzY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU5CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwNjAKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTk0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwNjEKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTA2MgorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY0CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEwNjUKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDIzNGYyNzI5OTNkMTQxNGEyYjM5cDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9hdGFuMmZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2F0YW4yZl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmE5MDQ2YwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9hdGFuMmZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsNDcwMyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMl90PGZsb2F0LCBmbG9hdCwgZmxvYXQ+IGdfYXRhbjJmX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS5mZmZmZTQwMDAxODdmZmVhOTAwMTJjMWZlZjk2M2UzYnAtNjAsCisgICAgLTB4MS5wLTEwMCwKKyAgICAweDEuMDAwMDBlcC00MQorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuZmZmZmU0MDAwMTg3ZmZlYTkwMDEyYzFmZWY5NjNlM2JwLTYwLAorICAgIDB4MS5wLTEwMCwKKyAgICAweDEuMDAwMDBlcC00MQorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTAwLAorICAgIDB4MS4wMDAwMGVwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMC4wZiwKKyAgICAweDEucC0xMDAsCisgICAgMHgxLjAwMDAwZXA1MAorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMHgxLjdmZmZmZmZmZmZmNDRjY2NmZjk1ZjEzYjE1ZWU0MGYzcC0xMSwKKyAgICAtMHgxLjAwMDAwMnAtMTAsCisgICAgMHgxLjU1NTU1NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS43ZmZmZmZmZmZmZjQ0Y2NjZmY5NWYxM2IxNWVlNDBmM3AtMTEsCisgICAgMHgxLjAwMDAwMnAtMTAsCisgICAgMHgxLjU1NTU1NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIC0weDEuZmZmZmZjMDAwMDBkNTU1NTA1NTU1NzFiYmJiMmQxMTFwLTIzLAorICAgIC0weDEuMDAwMDA0cDAsCisgICAgMHgxLjAwMDAwNnAyMgorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuZmZmZmZjMDAwMDBkNTU1NTA1NTU1NzFiYmJiMmQxMTFwLTIzLAorICAgIDB4MS4wMDAwMDRwMCwKKyAgICAweDEuMDAwMDA2cDIyCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIC0weDEuZGFkMjBlZmZiZDMwZjQzMTBhNTg1MDJiMGZmMzk2NWRwLTIsCisgICAgLTB4MS4wMDAwMDZwMywKKyAgICAweDEuZmZmMTg2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLmRhZDIwZWZmYmQzMGY0MzEwYTU4NTAyYjBmZjM5NjVkcC0yLAorICAgIDB4MS4wMDAwMDZwMywKKyAgICAweDEuZmZmMTg2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIC0weDEuZmY2NTRiZGVmYzE5N2M3NTE1OWUyM2I4NmExMTI3YzFwLTUsCisgICAgLTB4MS4wMDA4cDE2LAorICAgIDB4MS4wMDAwMzBwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5mZjY1NGJkZWZjMTk3Yzc1MTU5ZTIzYjg2YTExMjdjMXAtNSwKKyAgICAweDEuMDAwOHAxNiwKKyAgICAweDEuMDAwMDMwcDIwCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAtMHgxLmZmOWIzOWUxYTQ3MjgyNTRiY2I5MWY4OTVlNTJhYmMycC01LAorICAgIC0weDEuMDAyMzA0cDMsCisgICAgMHgxLjAwMDAyMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEuZmY5YjM5ZTFhNDcyODI1NGJjYjkxZjg5NWU1MmFiYzJwLTUsCisgICAgMHgxLjAwMjMwNHAzLAorICAgIDB4MS4wMDAwMjJwNworICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgLTB4MS40M2U2YmIwMTBhMDIyYWJhYTk3YmM5MmMyYmY5MmIyZHAtMiwKKyAgICAtMHgxLjA0ZmQxNHAtNCwKKyAgICAweDEuOGViMzU4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuNDNlNmJiMDEwYTAyMmFiYWE5N2JjOTJjMmJmOTJiMmRwLTIsCisgICAgMHgxLjA0ZmQxNHAtNCwKKyAgICAweDEuOGViMzU4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAtMHgxLjkwNTgyNzYxMGFhMTk0MDY2YjczYTM2YmNhZmEyMDQxcC0xLAorICAgIC0weDEuMDU5NmJjcC0zLAorICAgIDB4MS4wNzY5ZGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS45MDU4Mjc2MTBhYTE5NDA2NmI3M2EzNmJjYWZhMjA0MXAtMSwKKyAgICAweDEuMDU5NmJjcC0zLAorICAgIDB4MS4wNzY5ZGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIC0weDEuZjViNzcxMDM0N2I5YThiNzlhZmRlZmMzMWEyMTg1YTBwLTIsCisgICAgLTB4MS4xMTExMThwLTIsCisgICAgMHgxLmZmZmZmOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLmY1Yjc3MTAzNDdiOWE4Yjc5YWZkZWZjMzFhMjE4NWEwcC0yLAorICAgIDB4MS4xMTExMThwLTIsCisgICAgMHgxLmZmZmZmOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgLTB4MS4xNTFjNDc3Y2I5MWFkNGJiNGE2NWU4ZDNmZDMzMjFmNHAwLAorICAgIC0weDEuMTExMTE4cC0xNCwKKyAgICAweDEuMjIyMjE4cC0xNQorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjE1MWM0NzdjYjkxYWQ0YmI0YTY1ZThkM2ZkMzMyMWY0cDAsCisgICAgMHgxLjExMTExOHAtMTQsCisgICAgMHgxLjIyMjIxOHAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIC0weDEuNTIwYWNiMDAyZTE4ZTk3Y2Y3YmVhMmFlOTI5MDM1N2JwMCwKKyAgICAtMHgxLjE5OTk5NHAtMSwKKyAgICAweDEuMjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS41MjBhY2IwMDJlMThlOTdjZjdiZWEyYWU5MjkwMzU3YnAwLAorICAgIDB4MS4xOTk5OTRwLTEsCisgICAgMHgxLjIwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAtMHgxLmQxYTFlYmFkMjhjYTc0M2VlNTQzMTMyYjQ1OTgwZDVjcC0yLAorICAgIC0weDEuMTk5OTk4cC0xLAorICAgIDB4MS4yMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuZDFhMWViYWQyOGNhNzQzZWU1NDMxMzJiNDU5ODBkNWNwLTIsCisgICAgMHgxLjE5OTk5OHAtMSwKKyAgICAweDEuMjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuMTk5OTlhcDAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuMTk5OTlhcDAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAtMHgxLjkyMjE3MGZlODZkYzU2OTY5Yzc4Yjk1OTUwODE3NGQzcC0xLAorICAgIC0weDEuMmMwMjAycDksCisgICAgMHgxLjJiZmZmYXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuOTIyMTcwZmU4NmRjNTY5NjljNzhiOTU5NTA4MTc0ZDNwLTEsCisgICAgMHgxLjJjMDIwMnA5LAorICAgIDB4MS4yYmZmZmFwOQorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgLTB4MS44ZWMxNzBmYzUxYmIwYTIzYmQwMTBjYzgyNjk2ZjU0OHAwLAorICAgIC0weDEuMmZmZmYwcDYsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuOGVjMTcwZmM1MWJiMGEyM2JkMDEwY2M4MjY5NmY1NDhwMCwKKyAgICAweDEuMmZmZmYwcDYsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAtMHgxLjJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xNDYsCisgICAgLTB4MS4zMHAtMTQ1LAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLjJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xNDYsCisgICAgMHgxLjMwcC0xNDUsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAtMHgxLjJhNzNhY2ZjZWQ1MzhkZTBlMzdmZTZiOWIwYTQxZWJhcC0yLAorICAgIC0weDEuMzMzMzM4cC0yLAorICAgIDB4MS5mZmZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS4yYTczYWNmY2VkNTM4ZGUwZTM3ZmU2YjliMGE0MWViYXAtMiwKKyAgICAweDEuMzMzMzM4cC0yLAorICAgIDB4MS5mZmZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAtMHgxLjQwcC0xNDcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAweDEuNDBwLTE0NywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIC0weDEuM2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTE0OCwKKyAgICAtMHgxLjQwcC0xNDcsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuM2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTE0OCwKKyAgICAweDEuNDBwLTE0NywKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIC0weDEuZmZhMzNkY2M3MmNlNWEyNGZiZmZjNDcyZTZkOGFhNTRwLTUsCisgICAgLTB4MS43N2ZmZmVwLTE1LAorICAgIDB4MS43N2M2ZTJwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuZmZhMzNkY2M3MmNlNWEyNGZiZmZjNDcyZTZkOGFhNTRwLTUsCisgICAgMHgxLjc3ZmZmZXAtMTUsCisgICAgMHgxLjc3YzZlMnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIC0weDEuNzJlYWI2NDBkYWIzZmYxNmU1N2FjZGJlNzNlODA0ZDZwLTIsCisgICAgLTB4MS43YjRhMTZwLTQsCisgICAgMHgxLmY0NzRkOHAtMworICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLjcyZWFiNjQwZGFiM2ZmMTZlNTdhY2RiZTczZTgwNGQ2cC0yLAorICAgIDB4MS43YjRhMTZwLTQsCisgICAgMHgxLmY0NzRkOHAtMworICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgLTB4MS43ZmZmYWQwMDFlYmViZjNhNTk5YzAzODU0YjUxZTU5N3AtOSwKKyAgICAtMHgxLjdmZmZmZXAwLAorICAgIDB4MS4wMDAwMDZwOQorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLjdmZmZhZDAwMWViZWJmM2E1OTljMDM4NTRiNTFlNTk3cC05LAorICAgIDB4MS43ZmZmZmVwMCwKKyAgICAweDEuMDAwMDA2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIC0weDEuZTM1MzljMGYxNWY3ZjQ4ZWFiMjA4ODAzYTI5YTJjN2RwMCwKKyAgICAtMHgxLjg1ZTg1ZXAtMSwKKyAgICAtMHgxLmZmZmZmY3AtMworICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLmUzNTM5YzBmMTVmN2Y0OGVhYjIwODgwM2EyOWEyYzdkcDAsCisgICAgMHgxLjg1ZTg1ZXAtMSwKKyAgICAtMHgxLmZmZmZmY3AtMworICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgLTB4MS5mZmY3YTk1YWRhYzQzZTljOTc2Mzk4MTkxMWYwYWY5MXAtNiwKKyAgICAtMHgxLjg4MWE0YXA1LAorICAgIDB4MS44OHAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgMHgxLmZmZjdhOTVhZGFjNDNlOWM5NzYzOTgxOTExZjBhZjkxcC02LAorICAgIDB4MS44ODFhNGFwNSwKKyAgICAweDEuODhwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEuYWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTE0NiwKKyAgICAtMHgxLmIwcC0xNDUsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEuYWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTE0NiwKKyAgICAweDEuYjBwLTE0NSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEuYTVjZThkMWEyOGQ1YmNiMjcwYmMwMTY3OTBlYjQyM2FwMCwKKyAgICAtMHgxLmJiYmJiY3AtMSwKKyAgICAtMHgxLjExNzlmOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLmE1Y2U4ZDFhMjhkNWJjYjI3MGJjMDE2NzkwZWI0MjNhcDAsCisgICAgMHgxLmJiYmJiY3AtMSwKKyAgICAtMHgxLjExNzlmOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgLTB4MS5lYWZlNzAwMGE1ZGMyNjRmNzBmZTFkZDdmNjg0YjE2MHAtMywKKyAgICAtMHgxLmQ1NTU1NHAtMSwKKyAgICAweDEuZGZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIDB4MS5lYWZlNzAwMGE1ZGMyNjRmNzBmZTFkZDdmNjg0YjE2MHAtMywKKyAgICAweDEuZDU1NTU0cC0xLAorICAgIDB4MS5kZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgLTB4MS5lYjRhNzUwMDFkZWVlNTlhOGYxZDAzZjJlNzI1YjNhZXAtMiwKKyAgICAtMHgxLmQ1ZTkyNnAtMywKKyAgICAweDEuYzM4ZGM0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuZWI0YTc1MDAxZGVlZTU5YThmMWQwM2YyZTcyNWIzYWVwLTIsCisgICAgMHgxLmQ1ZTkyNnAtMywKKyAgICAweDEuYzM4ZGM0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xNDcsCisgICAgLTB4MS5lMHAtMTQ2LAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xNDcsCisgICAgMHgxLmUwcC0xNDYsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAtMHgxLmYxMmFiOGY0ZjczZDE0YWJlZmE4ZTM2Y2FjMTY4MXAtMTksCisgICAgLTB4MS5mMTJhOTZwMiwKKyAgICAweDEuZmZmZmRjcDIwCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuZjEyYWI4ZjRmNzNkMTRhYmVmYThlMzZjYWMxNjgxcC0xOSwKKyAgICAweDEuZjEyYTk2cDIsCisgICAgMHgxLmZmZmZkY3AyMAorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgLTB4MS5lNDJiMjUwMDM5ZTdkY2ExZmUwNGVlMzA0Njg0YzBlZHAtMiwKKyAgICAtMHgxLmY4NzMyYXAtMiwKKyAgICAweDEuZWQxNmUycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuZTQyYjI1MDAzOWU3ZGNhMWZlMDRlZTMwNDY4NGMwZWRwLTIsCisgICAgMHgxLmY4NzMyYXAtMiwKKyAgICAweDEuZWQxNmUycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAtMHgxLmZmNTcxYTE1MzVlODRhM2VkMDYxN2Y3YzhiZDQzYzlkcC01LAorICAgIC0weDEuZmZmZmRlcC0zLAorICAgIDB4MS5mZmZlN2VwMQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLmZmNTcxYTE1MzVlODRhM2VkMDYxN2Y3YzhiZDQzYzlkcC01LAorICAgIDB4MS5mZmZmZGVwLTMsCisgICAgMHgxLmZmZmU3ZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLjVmZmZmN2MwMDAzMTdmZmVkNzAwMDZmNWZmZDYzY3AtMTQ3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNzQ1ZDIwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAtMHgxLjVmZmZmN2MwMDAzMTdmZmVkNzAwMDZmNWZmZDYzY3AtMTQ3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLjc0NWQyMHAtMworICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLjQwMDAwZGMwMDA5NzQwMDY3ZmMwNDc3ZDQzMTI2MWUxcC0xNDYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS45OTk5ODhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuNDAwMDBkYzAwMDk3NDAwNjdmYzA0NzdkNDMxMjYxZTFwLTE0NiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS45OTk5ODhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS4wMDAwMDEwMDAwMDBmZmZhYWJhYTlhYWJhYThhYWJkZHAtMzAsCisgICAgMHgxLnAyLAorICAgIDB4MS5mZmZmZmVwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIC0weDEuMDAwMDAxMDAwMDAwZmZmYWFiYWE5YWFiYWE4YWFiZGRwLTMwLAorICAgIC0weDEucDIsCisgICAgMHgxLmZmZmZmZXAzMQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLjAzYTI2NGZmZmE4ZjgyNjJiMWZhYmY3MTQ5MTQyY2IxcC0xLAorICAgIDB4MS5wOSwKKyAgICAweDEuY2NjY2Q4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEuMDNhMjY0ZmZmYThmODI2MmIxZmFiZjcxNDkxNDJjYjFwLTEsCisgICAgLTB4MS5wOSwKKyAgICAweDEuY2NjY2Q4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS4wOTZkMDI5MTA2NzZjMmJlMTFkY2ZlOWZlMzE3NTI3OHAxLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgLTB4MS4xOTk5OGVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEuMDk2ZDAyOTEwNjc2YzJiZTExZGNmZTlmZTMxNzUyNzhwMSwKKyAgICAtMHgxLjAwMDAwMnAtMSwKKyAgICAtMHgxLjE5OTk4ZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLmZmNTRiOGQwNGU3OTdmMTQ2MzE1MmEzMjdkMGI4NmM0cC0yLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLmQ1NTU2MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgLTB4MS5mZjU0YjhkMDRlNzk3ZjE0NjMxNTJhMzI3ZDBiODZjNHAtMiwKKyAgICAtMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuZDU1NTYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEuZGFjNjc1MjJlODgzYWVkY2M5YzQ3MzQzOGU5MzY5NjRwLTIsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAtMHgxLmRhYzY3NTIyZTg4M2FlZGNjOWM0NzM0MzhlOTM2OTY0cC0yLAorICAgIC0weDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS5mNDMwOTk5NjcyYzA0ZTBkZjQ2ZmQxMzA3MTkxYTM4MHAtNCwKKyAgICAweDEuMDAwMDAycC0zLAorICAgIDB4MS4wNGJkOWNwMAorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTB4MS5mNDMwOTk5NjcyYzA0ZTBkZjQ2ZmQxMzA3MTkxYTM4MHAtNCwKKyAgICAtMHgxLjAwMDAwMnAtMywKKyAgICAweDEuMDRiZDljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS43ZmI4MWVmZjQzZDRmMjQzODdlMjdlMDQyZDY1NjJkYnAtNSwKKyAgICAweDEuMDAwMDAycC01LAorICAgIDB4MS41NTU1NTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIC0weDEuN2ZiODFlZmY0M2Q0ZjI0Mzg3ZTI3ZTA0MmQ2NTYyZGJwLTUsCisgICAgLTB4MS4wMDAwMDJwLTUsCisgICAgMHgxLjU1NTU1MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLjAwMDAwMzAwMDAwMWFhYWFhMWFhYWE4MGRkZGQ5OGRkcC0yMywKKyAgICAweDEuMDAwMDAycC0yMywKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAtMHgxLjAwMDAwMzAwMDAwMWFhYWFhMWFhYWE4MGRkZGQ5OGRkcC0yMywKKyAgICAtMHgxLjAwMDAwMnAtMjMsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLjkyMWZiNGZkZGM2YTY2ZjhlNTRmMDEyYTE0OGNhYzRlcDEsCisgICAgMHgxLjAwMDAwMnAtMjUsCisgICAgLTB4MS5kMTc0NWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIC0weDEuOTIxZmI0ZmRkYzZhNjZmOGU1NGYwMTJhMTQ4Y2FjNGVwMSwKKyAgICAtMHgxLjAwMDAwMnAtMjUsCisgICAgLTB4MS5kMTc0NWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS4wNDY4YTk3OWIxYTlmMDYyNGY0YzE1MTZkOTZjNjQyMnAxLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgLTB4MS4wNDY4YTk3OWIxYTlmMDYyNGY0YzE1MTZkOTZjNjQyMnAxLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS5iOTZlNTdhYmY5MDE0MGY4OTQwOTE4MzhjMmI4YTY5MHAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmI2ZGI3NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgLTB4MS5iOTZlNTdhYmY5MDE0MGY4OTQwOTE4MzhjMmI4YTY5MHAtMSwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5iNmRiNzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS5mMDFlY2ZkYTI1ZGU3MGMzZTBiZmRlYTIyOTUxMGZkM3AwLAorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAtMHgxLjg5ZDhhMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgLTB4MS5mMDFlY2ZkYTI1ZGU3MGMzZTBiZmRlYTIyOTUxMGZkM3AwLAorICAgIC0weDEuMDAwMDAycDEsCisgICAgLTB4MS44OWQ4YTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS5mZjU2MjUwOTRkOTUwZGIwYzc0MTQ0ODg2ZDkxYzE0Y3AtNSwKKyAgICAweDEuMDAwMDA0cC0zLAorICAgIDB4MS5mZmZmOWVwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIC0weDEuZmY1NjI1MDk0ZDk1MGRiMGM3NDE0NDg4NmQ5MWMxNGNwLTUsCisgICAgLTB4MS4wMDAwMDRwLTMsCisgICAgMHgxLmZmZmY5ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLmZkNWJkNGZkN2FjOGIwY2Y2MDA2YzQ0MTRmNzQzZWEwcC00LAorICAgIDB4MS4wMDAwMDZwMywKKyAgICAweDEuZmZmZmUwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAtMHgxLmZkNWJkNGZkN2FjOGIwY2Y2MDA2YzQ0MTRmNzQzZWEwcC00LAorICAgIC0weDEuMDAwMDA2cDMsCisgICAgMHgxLmZmZmZlMHA1CisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLjhjNGY0NzAwMDNlMTE4Yjc2NDkxYjBjODU5ZDZjMDUzcDEsCisgICAgMHgxLjAwMDAwOHAtMiwKKyAgICAtMHgxLjYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAtMHgxLjhjNGY0NzAwMDNlMTE4Yjc2NDkxYjBjODU5ZDZjMDUzcDEsCisgICAgLTB4MS4wMDAwMDhwLTIsCisgICAgLTB4MS42MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjI4MzQ2MDNiNTFiMGIxYjdhZGE1MWJhZGI4YzVlNzg3cC0xLAorICAgIDB4MS4wMDAwMGVwLTIwLAorICAgIDB4MS44OHAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAtMHgxLjI4MzQ2MDNiNTFiMGIxYjdhZGE1MWJhZGI4YzVlNzg3cC0xLAorICAgIC0weDEuMDAwMDBlcC0yMCwKKyAgICAweDEuODhwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLmY3N2U3YmI2NGViNWY0MjM5NWE2ZDhhZGNmZmE2MzM3cC0yLAorICAgIDB4MS4wMDAwMGVwLTIwLAorICAgIDB4MS5kZGZmZmVwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgLTB4MS5mNzdlN2JiNjRlYjVmNDIzOTVhNmQ4YWRjZmZhNjMzN3AtMiwKKyAgICAtMHgxLjAwMDAwZXAtMjAsCisgICAgMHgxLmRkZmZmZXAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEuZmZkODdjZjZmZDM4MjQ5ZmMyMzFjNTQwMmVkYmMxMjJwLTYsCisgICAgMHgxLjAwMDAxMHAtMywKKyAgICAweDEuZmZmY2ZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAtMHgxLmZmZDg3Y2Y2ZmQzODI0OWZjMjMxYzU0MDJlZGJjMTIycC02LAorICAgIC0weDEuMDAwMDEwcC0zLAorICAgIDB4MS5mZmZjZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS5mZDViZDRmZDc2YjhlZmI1OTIxMDcxMmQ4OGI2ZTkxMnAtNCwKKyAgICAweDEuMDAwMDFlcDMsCisgICAgMHgxLjAwMDAwOHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgLTB4MS5mZDViZDRmZDc2YjhlZmI1OTIxMDcxMmQ4OGI2ZTkxMnAtNCwKKyAgICAtMHgxLjAwMDAxZXAzLAorICAgIDB4MS4wMDAwMDhwNgorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS5mZDVjMzU3Yjg3OWIyZmUzMGRlZGNkMzEzNWNiNjkxYnAtNCwKKyAgICAweDEuMDAwMDM4cDMsCisgICAgMHgxLmZmZmZlMnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgLTB4MS5mZDVjMzU3Yjg3OWIyZmUzMGRlZGNkMzEzNWNiNjkxYnAtNCwKKyAgICAtMHgxLjAwMDAzOHAzLAorICAgIDB4MS5mZmZmZTJwNQorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS45OTM5MmNmZmZmYjFlMzQ0MzFkYzBiNzg1OTJhZDI3Y3AwLAorICAgIDB4MS4wMDAyNjJwMCwKKyAgICAtMHgxLmM2N2ZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIC0weDEuOTkzOTJjZmZmZmIxZTM0NDMxZGMwYjc4NTkyYWQyN2NwMCwKKyAgICAtMHgxLjAwMDI2MnAwLAorICAgIC0weDEuYzY3ZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLmZmNjU0YmRlZmMxOTdjNzUxNTllMjNiODZhMTEyN2MxcC01LAorICAgIDB4MS4wMDA4cDE2LAorICAgIDB4MS4wMDAwMzBwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAtMHgxLmZmNjU0YmRlZmMxOTdjNzUxNTllMjNiODZhMTEyN2MxcC01LAorICAgIC0weDEuMDAwOHAxNiwKKyAgICAweDEuMDAwMDMwcDIwCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLjMyMWE2YWVhYjIwOTIxMTI2MGE1N2ZmYTMzMjk4NzRlcC0xLAorICAgIDB4MS4wMDBlcC0yMCwKKyAgICAweDEuNzdmZmZlcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIC0weDEuMzIxYTZhZWFiMjA5MjExMjYwYTU3ZmZhMzMyOTg3NGVwLTEsCisgICAgLTB4MS4wMDBlcC0yMCwKKyAgICAweDEuNzdmZmZlcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS5mZjc1M2JlYTc4MGU0YjY3MTViMTI4OThkMjZmYWRhMHAtNSwKKyAgICAweDEuMDAxMHAtMywKKyAgICAweDEuMDAwMDMwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAtMHgxLmZmNzUzYmVhNzgwZTRiNjcxNWIxMjg5OGQyNmZhZGEwcC01LAorICAgIC0weDEuMDAxMHAtMywKKyAgICAweDEuMDAwMDMwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuNDAwZWE5ZmZmZDBkY2YyOTg5YTRlNzZmOGFhNWRiNTFwLTEsCisgICAgMHgxLjAwMWJlNHAtMSwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgLTB4MS40MDBlYTlmZmZkMGRjZjI5ODlhNGU3NmY4YWE1ZGI1MXAtMSwKKyAgICAtMHgxLjAwMWJlNHAtMSwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLmZmOWIzOWUxYTQ3MjgyNTRiY2I5MWY4OTVlNTJhYmMycC01LAorICAgIDB4MS4wMDIzMDRwMywKKyAgICAweDEuMDAwMDIycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAtMHgxLmZmOWIzOWUxYTQ3MjgyNTRiY2I5MWY4OTVlNTJhYmMycC01LAorICAgIC0weDEuMDAyMzA0cDMsCisgICAgMHgxLjAwMDAyMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLjk0M2Y5YTRiMzZlYjJiODAzM2RlNTExMDY4OWVjMjI4cC0xLAorICAgIDB4MS4wMjIyMjhwMCwKKyAgICAweDEuZmZmZmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgLTB4MS45NDNmOWE0YjM2ZWIyYjgwMzNkZTUxMTA2ODllYzIyOHAtMSwKKyAgICAtMHgxLjAyMjIyOHAwLAorICAgIDB4MS5mZmZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuYzY2NDUwZmZlOTA1YWJkY2ZlMDUzMWQ1ZjE0YzIyMzhwMCwKKyAgICAweDEuMGI3Nzc4cC0yMSwKKyAgICAtMHgxLmJiMGNwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgLTB4MS5jNjY0NTBmZmU5MDVhYmRjZmUwNTMxZDVmMTRjMjIzOHAwLAorICAgIC0weDEuMGI3Nzc4cC0yMSwKKyAgICAtMHgxLmJiMGNwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLmY3NTllYzM2ZTU5YmQ2MWIwMTdiNmViYWFmMTQ4NDg5cC0yLAorICAgIDB4MS4wZGY2YjBwOSwKKyAgICAweDEuZjgzZGMwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAtMHgxLmY3NTllYzM2ZTU5YmQ2MWIwMTdiNmViYWFmMTQ4NDg5cC0yLAorICAgIC0weDEuMGRmNmIwcDksCisgICAgMHgxLmY4M2RjMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLjAwMzllMjQ2NWNmODA4MWZjOWMzZjZhY2M2MDE3ZTMxcC0xLAorICAgIDB4MS4wZjgzZGFwOSwKKyAgICAweDEuZjA3YmQ0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAtMHgxLjAwMzllMjQ2NWNmODA4MWZjOWMzZjZhY2M2MDE3ZTMxcC0xLAorICAgIC0weDEuMGY4M2RhcDksCisgICAgMHgxLmYwN2JkNHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMHgxLjMyYzAwY2ZmZmY4MDYxMmFjMjlkOTZlNTM4N2U0YWNkcC0xLAorICAgIDB4MS4xMGNlZTBwMSwKKyAgICAweDEuOGY4M2U0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLjMyYzAwY2ZmZmY4MDYxMmFjMjlkOTZlNTM4N2U0YWNkcC0xLAorICAgIC0weDEuMTBjZWUwcDEsCisgICAgMHgxLjhmODNlNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgMHgxLmZjOWQzZWZmY2Y2M2NlM2M3M2QzMmY2ODhiN2UwZDNlcC0yLAorICAgIDB4MS4xMzMzMzJwOSwKKyAgICAweDEuZmJiYmFjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAtMHgxLmZjOWQzZWZmY2Y2M2NlM2M3M2QzMmY2ODhiN2UwZDNlcC0yLAorICAgIC0weDEuMTMzMzMycDksCisgICAgMHgxLmZiYmJhY3A5CisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLjEzYjdiYTljYmQyYmRlMGFlOTlkZDViOTBiNmE2Y2FlcC00LAorICAgIDB4MS4xNDIyODhwLTUsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIC0weDEuMTNiN2JhOWNiZDJiZGUwYWU5OWRkNWI5MGI2YTZjYWVwLTQsCisgICAgLTB4MS4xNDIyODhwLTUsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIDB4MS45YmFlYjkwMzE3MzU0OWE0NjA1YzEzY2IwZWM1Yzk5N3AtMSwKKyAgICAweDEuMWE4YTA4cC0xLAorICAgIDB4MS4xMDJlODhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAtMHgxLjliYWViOTAzMTczNTQ5YTQ2MDVjMTNjYjBlYzVjOTk3cC0xLAorICAgIC0weDEuMWE4YTA4cC0xLAorICAgIDB4MS4xMDJlODhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAweDEuNTg1ZWQxMDAwM2UyNTAzOTI4OGQyYTU5N2JhYWJiNGVwLTEsCisgICAgMHgxLjFhYWIwZXAtMSwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgLTB4MS41ODVlZDEwMDAzZTI1MDM5Mjg4ZDJhNTk3YmFhYmI0ZXAtMSwKKyAgICAtMHgxLjFhYWIwZXAtMSwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMHgxLmZkN2IzMGZlNzU0NTIxMjlkZDRkOTI1NzViMWI2NjQzcC0zLAorICAgIDB4MS4yMHAwLAorICAgIDB4MS4xYjZkYjZwMgorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIC0weDEuZmQ3YjMwZmU3NTQ1MjEyOWRkNGQ5MjU3NWIxYjY2NDNwLTMsCisgICAgLTB4MS4yMHAwLAorICAgIDB4MS4xYjZkYjZwMgorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS41ZWUyYWJmZmZjODMzMDg3YTg0NjJkODQzZDM3NWY0MHAtMSwKKyAgICAweDEuMjIxZmZjcC0xLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAtMHgxLjVlZTJhYmZmZmM4MzMwODdhODQ2MmQ4NDNkMzc1ZjQwcC0xLAorICAgIC0weDEuMjIxZmZjcC0xLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAweDEuOTIyZGQyZmVhNDFhMDdhMDA4NTIwNjI2ODA0NDkxOTJwLTEsCisgICAgMHgxLjIyMzIyNHA5LAorICAgIDB4MS4yMjIyMjRwOQorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEuOTIyZGQyZmVhNDFhMDdhMDA4NTIwNjI2ODA0NDkxOTJwLTEsCisgICAgLTB4MS4yMjMyMjRwOSwKKyAgICAweDEuMjIyMjI0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAweDEuZmQ5ODc2NWI3YTMxMWFkOTc0YjU4NjE3MzdhODkxMjZwLTQsCisgICAgMHgxLjMwMjRhNnAtMSwKKyAgICAweDEuMmZmZmZjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLmZkOTg3NjViN2EzMTFhZDk3NGI1ODYxNzM3YTg5MTI2cC00LAorICAgIC0weDEuMzAyNGE2cC0xLAorICAgIDB4MS4yZmZmZmNwMgorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIDB4MS5mZjE3M2Y1OWNiMjVmNDM2MmM5NGNlNmFiMzllY2U3MHAtNCwKKyAgICAweDEuMzEwYjdlcC0xLAorICAgIDB4MS4yZmZmZmNwMgorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0weDEuZmYxNzNmNTljYjI1ZjQzNjJjOTRjZTZhYjM5ZWNlNzBwLTQsCisgICAgLTB4MS4zMTBiN2VwLTEsCisgICAgMHgxLjJmZmZmY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgMHgxLjg5MzY2MWQ5ODVjZmI2ZTc4ZDZlZDA3NDliMmZkODAzcC0xLAorICAgIDB4MS4zMWY1NjRwLTQsCisgICAgMHgxLjNjY2M4MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEuODkzNjYxZDk4NWNmYjZlNzhkNmVkMDc0OWIyZmQ4MDNwLTEsCisgICAgLTB4MS4zMWY1NjRwLTQsCisgICAgMHgxLjNjY2M4MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIDB4MS4zODAwYTZmODU5NWFlNzM3MmIxNzJlZjZhZWM0MGFmM3AtMjgsCisgICAgMHgxLjM4cC0yMCwKKyAgICAweDEuZmZmZWVlcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLjM4MDBhNmY4NTk1YWU3MzcyYjE3MmVmNmFlYzQwYWYzcC0yOCwKKyAgICAtMHgxLjM4cC0yMCwKKyAgICAweDEuZmZmZWVlcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEuZjUxZGVjMjMwYjNkY2RlZTRkNGIxMDQyNzZiZDA5MWJwMCwKKyAgICAweDEuM2E1OGY4cDAsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAtMHgxLmY1MWRlYzIzMGIzZGNkZWU0ZDRiMTA0Mjc2YmQwOTFicDAsCisgICAgLTB4MS4zYTU4ZjhwMCwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIDB4MS5hZGQ0ZmNmZmZjODE4Zjc1ZWRhNDllYWUwZDhmOThlMnAtMiwKKyAgICAweDEuM2NjMzY2cC0yLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMHgxLmFkZDRmY2ZmZmM4MThmNzVlZGE0OWVhZTBkOGY5OGUycC0yLAorICAgIC0weDEuM2NjMzY2cC0yLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAweDEuOWQ2Mzk0ZmZmZmZlODk5MGVkZmNmNWMzM2Y5ZTdiYzFwMCwKKyAgICAweDEuM2ZjMmU0cDMsCisgICAgLTB4MS5jMjhmNWVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLjlkNjM5NGZmZmZmZTg5OTBlZGZjZjVjMzNmOWU3YmMxcDAsCisgICAgLTB4MS4zZmMyZTRwMywKKyAgICAtMHgxLmMyOGY1ZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIDB4MS4xNmQwMDUxM2E1YzJiMTE2Njg4ZmVkN2M5ZTZkN2JmOXAtMywKKyAgICAweDEuNDBhMDUwcC02LAorICAgIDB4MS4yNDkyNGFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtMHgxLjE2ZDAwNTEzYTVjMmIxMTY2ODhmZWQ3YzllNmQ3YmY5cC0zLAorICAgIC0weDEuNDBhMDUwcC02LAorICAgIDB4MS4yNDkyNGFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAweDEuNmQ3MWVhMjdkZGRlNzI5MjA0Njk5ZGI5N2ZkZDAzN2VwLTEsCisgICAgMHgxLjQxZjA3MHAyLAorICAgIDB4MS43M2I3ODJwMgorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIC0weDEuNmQ3MWVhMjdkZGRlNzI5MjA0Njk5ZGI5N2ZkZDAzN2VwLTEsCisgICAgLTB4MS40MWYwNzBwMiwKKyAgICAweDEuNzNiNzgycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAweDEuNmUyY2UyMTgyYTY1OGQ4NDUwNzIwZTY3N2YyMWNlNjFwLTEsCisgICAgMHgxLjQyOWFwOSwKKyAgICAweDEuNzM2OGUycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLjZlMmNlMjE4MmE2NThkODQ1MDcyMGU2NzdmMjFjZTYxcC0xLAorICAgIC0weDEuNDI5YXA5LAorICAgIDB4MS43MzY4ZTJwOQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIDB4MS43NDBhNzVmNWUwMGYzYzJhMjY1ODE4YThlMDVjY2M5OXAtMSwKKyAgICAweDEuNDM1ZTU0cDAsCisgICAgMHgxLjZiY2EyMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgLTB4MS43NDBhNzVmNWUwMGYzYzJhMjY1ODE4YThlMDVjY2M5OXAtMSwKKyAgICAtMHgxLjQzNWU1NHAwLAorICAgIDB4MS42YmNhMjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDB4MS40ZWI5Mjc2NmZhMTY0MWJkY2Q2YjcyZjNiZDYxOTI1MXAtMSwKKyAgICAweDEuNWJhYTNhcC0yLAorICAgIDB4MS5jNWM4NWNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLjRlYjkyNzY2ZmExNjQxYmRjZDZiNzJmM2JkNjE5MjUxcC0xLAorICAgIC0weDEuNWJhYTNhcC0yLAorICAgIDB4MS5jNWM4NWNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuZmViMTdjYTgxNTJhNmYxYzk2ZWJhYjIzZTFjYTQ0MzhwLTQsCisgICAgMHgxLjVkNmM1MHAtOCwKKyAgICAweDEuNWM4MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIC0weDEuZmViMTdjYTgxNTJhNmYxYzk2ZWJhYjIzZTFjYTQ0MzhwLTQsCisgICAgLTB4MS41ZDZjNTBwLTgsCisgICAgMHgxLjVjODBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAweDEuNjFlMDU0ZmZmZjUxNzU2NGZiYjc1ZmE5MjdlOTMxN2RwMSwKKyAgICAweDEuNjJiMTQwcDEsCisgICAgLTB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgLTB4MS42MWUwNTRmZmZmNTE3NTY0ZmJiNzVmYTkyN2U5MzE3ZHAxLAorICAgIC0weDEuNjJiMTQwcDEsCisgICAgLTB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLjkyNjA2NGZmZmQzNDJmOGYxMjlhNzBkZjkyYTQ1OGIzcC0xLAorICAgIDB4MS42MzNkZTZwLTEsCisgICAgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIC0weDEuOTI2MDY0ZmZmZDM0MmY4ZjEyOWE3MGRmOTJhNDU4YjNwLTEsCisgICAgLTB4MS42MzNkZTZwLTEsCisgICAgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIDB4MS5kZGYxNWNmZmZlZmY5MDcxMzNkZjgzNDA1Y2YxYzM4M3AtMiwKKyAgICAweDEuNjVhM2UycC0yLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAtMHgxLmRkZjE1Y2ZmZmVmZjkwNzEzM2RmODM0MDVjZjFjMzgzcC0yLAorICAgIC0weDEuNjVhM2UycC0yLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAweDEuYThjNjkyZmMzZWZlNTBjOTIwNzZmMmNkZDNmNmJkOTJwMCwKKyAgICAweDEuNjhiNDRlcDAsCisgICAgLTB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAtMHgxLmE4YzY5MmZjM2VmZTUwYzkyMDc2ZjJjZGQzZjZiZDkycDAsCisgICAgLTB4MS42OGI0NGVwMCwKKyAgICAtMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIDB4MS4xZDczMGRmZmZjMGQxMDgyNmJmZmY0MjY4YzRkYjIxMHAwLAorICAgIDB4MS42YTAwOTJwMCwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgLTB4MS4xZDczMGRmZmZjMGQxMDgyNmJmZmY0MjY4YzRkYjIxMHAwLAorICAgIC0weDEuNmEwMDkycDAsCisgICAgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS45YTA2YzZmZmZjYjAwMGYwZWIzNzE5OThjMzM4YmRhZXAtMSwKKyAgICAweDEuNmUwNGYycC0xLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAtMHgxLjlhMDZjNmZmZmNiMDAwZjBlYjM3MTk5OGMzMzhiZGFlcC0xLAorICAgIC0weDEuNmUwNGYycC0xLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAweDEuOTIxZjlmMDAwMDA5MmI2Y2M4MWUzY2Q5NzUzMTI5OWNwMCwKKyAgICAweDEuNzBwLTEsCisgICAgMHgxLjAwMTFwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTB4MS45MjFmOWYwMDAwMDkyYjZjYzgxZTNjZDk3NTMxMjk5Y3AwLAorICAgIC0weDEuNzBwLTEsCisgICAgMHgxLjAwMTFwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgMHgxLjU1YTFmMzAwMDQwYjAwN2I5ZmNmODhlMGJiYWE0YmY5cDAsCisgICAgMHgxLjcwNzY1MnAxLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMHgxLjU1YTFmMzAwMDQwYjAwN2I5ZmNmODhlMGJiYWE0YmY5cDAsCisgICAgLTB4MS43MDc2NTJwMSwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLmZmYTMzZGNjNzJjZTVhMjRmYmZmYzQ3MmU2ZDhhYTU0cC01LAorICAgIDB4MS43N2ZmZmVwLTE1LAorICAgIDB4MS43N2M2ZTJwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgLTB4MS5mZmEzM2RjYzcyY2U1YTI0ZmJmZmM0NzJlNmQ4YWE1NHAtNSwKKyAgICAtMHgxLjc3ZmZmZXAtMTUsCisgICAgMHgxLjc3YzZlMnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAweDEuNzcwMmQ5YzBmN2Y0ZTFmNWY2NWU4MDZlNGU5ZTJlYjRwLTMsCisgICAgMHgxLjdiNDI3NHAtMiwKKyAgICAweDEuMDAwMDA2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLjc3MDJkOWMwZjdmNGUxZjVmNjVlODA2ZTRlOWUyZWI0cC0zLAorICAgIC0weDEuN2I0Mjc0cC0yLAorICAgIDB4MS4wMDAwMDZwMQorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIDB4MS5mYWM5MjU1ZTJlODQ1MDFkN2Y2OTEzNWZhNzhhNzg0MnAtMiwKKyAgICAweDEuN2MxNTcwcC0yLAorICAgIDB4MS42MDFlODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAtMHgxLmZhYzkyNTVlMmU4NDUwMWQ3ZjY5MTM1ZmE3OGE3ODQycC0yLAorICAgIC0weDEuN2MxNTcwcC0yLAorICAgIDB4MS42MDFlODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAweDEuYTRjMjIyMDAwM2U5ZmY3MTg0ZDExYzExZGJlZDc5MGFwLTEsCisgICAgMHgxLjdkYjY1MnAtMSwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgLTB4MS5hNGMyMjIwMDAzZTlmZjcxODRkMTFjMTFkYmVkNzkwYXAtMSwKKyAgICAtMHgxLjdkYjY1MnAtMSwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgMHgxLjQ4N2Y2ODIwMjJkM2E1NTYyMTA5YTAzMDZkY2IwNWEycC0xLAorICAgIDB4MS43ZTdhOWFwLTIsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIC0weDEuNDg3ZjY4MjAyMmQzYTU1NjIxMDlhMDMwNmRjYjA1YTJwLTEsCisgICAgLTB4MS43ZTdhOWFwLTIsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDB4MS5lNDhiMmZkZGZmMTllMWIyYWQzMDViZjg1ZjU1M2FjZnAwLAorICAgIDB4MS43ZmJkZGVwMCwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0weDEuZTQ4YjJmZGRmZjE5ZTFiMmFkMzA1YmY4NWY1NTNhY2ZwMCwKKyAgICAtMHgxLjdmYmRkZXAwLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLjgwMDAwMzAwMDAwMTdmZmZmMGZmZmZjNDRjY2M4N2NjcC0yMywKKyAgICAweDEuODBwLTIzLAorICAgIDB4MS5mZmZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAtMHgxLjgwMDAwMzAwMDAwMTdmZmZmMGZmZmZjNDRjY2M4N2NjcC0yMywKKyAgICAtMHgxLjgwcC0yMywKKyAgICAweDEuZmZmZmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgMHgxLjIzNmVkZTAwMDQxOWYwMjMyMjA2YTE5ZGMxYzliYTcycDAsCisgICAgMHgxLjgwN2NkY3AwLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMHgxLjIzNmVkZTAwMDQxOWYwMjMyMjA2YTE5ZGMxYzliYTcycDAsCisgICAgLTB4MS44MDdjZGNwMCwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLjIzYWY5MTAwMDQzMmZmN2NhOTFiNTg2OTQ0NmQyNjc3cDAsCisgICAgMHgxLjgxN2NjZXAwLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAtMHgxLjIzYWY5MTAwMDQzMmZmN2NhOTFiNTg2OTQ0NmQyNjc3cDAsCisgICAgLTB4MS44MTdjY2VwMCwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLjFkMGQ3OGZmZGU3NWUwMDVjZTEzYTQ4YmI5NmMyMGQycDEsCisgICAgMHgxLjg2YmNmNnAtOSwKKyAgICAtMHgxLjJjZGUxNHAtOQorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIC0weDEuMWQwZDc4ZmZkZTc1ZTAwNWNlMTNhNDhiYjk2YzIwZDJwMSwKKyAgICAtMHgxLjg2YmNmNnAtOSwKKyAgICAtMHgxLjJjZGUxNHAtOQorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIDB4MS5jNDBiNDRmN2Q0OWVjM2JlYmJlNmMxNDNiYjg3NDk4OHAtMTcsCisgICAgMHgxLjg4cC03LAorICAgIDB4MS5iYmZkZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIC0weDEuYzQwYjQ0ZjdkNDllYzNiZWJiZTZjMTQzYmI4NzQ5ODhwLTE3LAorICAgIC0weDEuODhwLTcsCisgICAgMHgxLmJiZmRmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMHgxLmFjN2RmZmZkMmI5NGViZDJiNDE1NWQ4MWZjYjc0M2M4cC0xLAorICAgIDB4MS44YmEyYmNwOSwKKyAgICAweDEuNjRkOTE2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAtMHgxLmFjN2RmZmZkMmI5NGViZDJiNDE1NWQ4MWZjYjc0M2M4cC0xLAorICAgIC0weDEuOGJhMmJjcDksCisgICAgMHgxLjY0ZDkxNnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLmY0NDM2YzI5MThkNTY5MTYyMGJkZGVhNWYwYmRiOTlmcDAsCisgICAgMHgxLjkwNGE2YXA5LAorICAgIC0weDEuNDJlMjIwcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAtMHgxLmY0NDM2YzI5MThkNTY5MTYyMGJkZGVhNWYwYmRiOTlmcDAsCisgICAgLTB4MS45MDRhNmFwOSwKKyAgICAtMHgxLjQyZTIyMHA4CisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLmYyODBhNGE4NWE5ODM0ODA4NDg3NDQzYTIyYzI3ZjljcC00LAorICAgIDB4MS45MGM4NjRwLTUsCisgICAgMHgxLjk5OTk5YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0weDEuZjI4MGE0YTg1YTk4MzQ4MDg0ODc0NDNhMjJjMjdmOWNwLTQsCisgICAgLTB4MS45MGM4NjRwLTUsCisgICAgMHgxLjk5OTk5YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS4wYTU4ZDkwMDAwMDVmMGJhOWE0NzBjZTUyNDFmMWI5Y3AtMSwKKyAgICAweDEuOTY5NzcwcC0yLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAtMHgxLjBhNThkOTAwMDAwNWYwYmE5YTQ3MGNlNTI0MWYxYjljcC0xLAorICAgIC0weDEuOTY5NzcwcC0yLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAweDEuZjczMGE1OTc5NDhlNWMzNTQzM2Q1MjJjMjRiZGVmYTVwLTEsCisgICAgMHgxLjliMjY5OHA5LAorICAgIDB4MS4xMjE5ZDZwOQorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIC0weDEuZjczMGE1OTc5NDhlNWMzNTQzM2Q1MjJjMjRiZGVmYTVwLTEsCisgICAgLTB4MS45YjI2OThwOSwKKyAgICAweDEuMTIxOWQ2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAweDEuMjVjNzhmMDAwMmI1MDMwODAzYjM0ZTBkM2Q1NjVlYzVwMSwKKyAgICAweDEuYTk5NTUycC05LAorICAgIC0weDEuNzg4ZWUwcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgLTB4MS4yNWM3OGYwMDAyYjUwMzA4MDNiMzRlMGQzZDU2NWVjNXAxLAorICAgIC0weDEuYTk5NTUycC05LAorICAgIC0weDEuNzg4ZWUwcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMHgxLmZlYzEyNzU2MTI1YTFjMTdmNDk2Y2E3ZWZmNmI1ZDA3cC00LAorICAgIDB4MS5hYWM3NjZwLTEsCisgICAgMHgxLmE5OTk5NHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgLTB4MS5mZWMxMjc1NjEyNWExYzE3ZjQ5NmNhN2VmZjZiNWQwN3AtNCwKKyAgICAtMHgxLmFhYzc2NnAtMSwKKyAgICAweDEuYTk5OTk0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAweDEuZmYyNzI2ZmZmYWRjNTdhNTljMDY4ZGFmOTQwMTFhMDZwLTIsCisgICAgMHgxLmFjZDljOHAtMiwKKyAgICAweDEuODk0NjllcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgLTB4MS5mZjI3MjZmZmZhZGM1N2E1OWMwNjhkYWY5NDAxMWEwNnAtMiwKKyAgICAtMHgxLmFjZDljOHAtMiwKKyAgICAweDEuODk0NjllcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLjZjZWZhNTJjZDQ5ZGY1M2ExOWE5NjY0ZWY3OWI1ZDIxcC0xLAorICAgIDB4MS5iYThjcC0yLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAtMHgxLjZjZWZhNTJjZDQ5ZGY1M2ExOWE5NjY0ZWY3OWI1ZDIxcC0xLAorICAgIC0weDEuYmE4Y3AtMiwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgMHgxLmZmZWNkMWJkZmMxMDcwM2JlNGNhZGIxYWM2NGE2ZWFjcC02LAorICAgIDB4MS5iZjMxZTJwLTUsCisgICAgMHgxLmJmMWQ2MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgLTB4MS5mZmVjZDFiZGZjMTA3MDNiZTRjYWRiMWFjNjRhNmVhY3AtNiwKKyAgICAtMHgxLmJmMzFlMnAtNSwKKyAgICAweDEuYmYxZDYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEuZDkzNzMyZjc3YzkxNTdjMTY4ODdjZTVhYTc2MmYzODlwLTYsCisgICAgMHgxLmMxYWVwLTUsCisgICAgMHgxLmU2NjY1OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgLTB4MS5kOTM3MzJmNzdjOTE1N2MxNjg4N2NlNWFhNzYyZjM4OXAtNiwKKyAgICAtMHgxLmMxYWVwLTUsCisgICAgMHgxLmU2NjY1OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLmNlYThiY2Y1NzE5OTA0ODk5MGYyMWEyMDlhMmQyZDNlcC00NSwKKyAgICAweDEuYzI1YzI2cC00NCwKKyAgICAweDEuZjI2M2EwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAtMHgxLmNlYThiY2Y1NzE5OTA0ODk5MGYyMWEyMDlhMmQyZDNlcC00NSwKKyAgICAtMHgxLmMyNWMyNnAtNDQsCisgICAgMHgxLmYyNjNhMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgMHgxLjkwMDA0NzAyZTYyYmY1OGZkMjVlMWNiMWMyMDhmYjhicC0xLAorICAgIDB4MS5jOGRjYjhwMiwKKyAgICAweDEuY2NhYTk0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAtMHgxLjkwMDA0NzAyZTYyYmY1OGZkMjVlMWNiMWMyMDhmYjhicC0xLAorICAgIC0weDEuYzhkY2I4cDIsCisgICAgMHgxLmNjYWE5NHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLmZkN2M4NjVhM2U3MWFkMGQ4YTcyNGM5MTJmNmZiOGI5cC00LAorICAgIDB4MS5kNjQ4NjZwLTMsCisgICAgMHgxLmQ2MjljMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgLTB4MS5mZDdjODY1YTNlNzFhZDBkOGE3MjRjOTEyZjZmYjhiOXAtNCwKKyAgICAtMHgxLmQ2NDg2NnAtMywKKyAgICAweDEuZDYyOWMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAweDEuNGFhNjY5MDAwMTcwNDgzNzE1ZWZlMDUyODM2OWU3M2VwLTEsCisgICAgMHgxLmQ3MDExY3AwLAorICAgIDB4MS4zODgwYzhwMQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIC0weDEuNGFhNjY5MDAwMTcwNDgzNzE1ZWZlMDUyODM2OWU3M2VwLTEsCisgICAgLTB4MS5kNzAxMWNwMCwKKyAgICAweDEuMzg4MGM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEuZjQyMGU2MDMyZGEwM2M1ODFjMjEzZDBjYzJlYWNmNWJwLTIsCisgICAgMHgxLmRiNmUzMHAtMiwKKyAgICAweDEuYmY2MmE0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgLTB4MS5mNDIwZTYwMzJkYTAzYzU4MWMyMTNkMGNjMmVhY2Y1YnAtMiwKKyAgICAtMHgxLmRiNmUzMHAtMiwKKyAgICAweDEuYmY2MmE0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLjkyMmRjMTVkZDI1ZTI5NGYwMjM2MWYwMjkyYmMwZGY4cC0xLAorICAgIDB4MS5kZGRkZGNwLTIsCisgICAgMHgxLmRkYzNhNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIC0weDEuOTIyZGMxNWRkMjVlMjk0ZjAyMzYxZjAyOTJiYzBkZjhwLTEsCisgICAgLTB4MS5kZGRkZGNwLTIsCisgICAgMHgxLmRkYzNhNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDB4MS45ZDZmZDkwMmRlZmFlZGU3ODMwODgzYjdhMjc4OGRhOHAtMSwKKyAgICAweDEuZGU2MWZjcDksCisgICAgMHgxLmM5YjIyY3A5CisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgLTB4MS45ZDZmZDkwMmRlZmFlZGU3ODMwODgzYjdhMjc4OGRhOHAtMSwKKyAgICAtMHgxLmRlNjFmY3A5LAorICAgIDB4MS5jOWIyMmNwOQorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS43ZWUxODBjYTI3MDk1YzU1MDZiMGZhNjhlOTQwMDRkMHAtNCwKKyAgICAweDEuZGZmZmZlcC0yLAorICAgIDB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgLTB4MS43ZWUxODBjYTI3MDk1YzU1MDZiMGZhNjhlOTQwMDRkMHAtNCwKKyAgICAtMHgxLmRmZmZmZXAtMiwKKyAgICAweDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS43ZDg0OGYwMDBiZmFmMjQzZjc1YjNhMTIxOGRhZDk0ZXAwLAorICAgIDB4MS5kZmZmZmVwMiwKKyAgICAweDEuMzVjMjkycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgLTB4MS43ZDg0OGYwMDBiZmFmMjQzZjc1YjNhMTIxOGRhZDk0ZXAwLAorICAgIC0weDEuZGZmZmZlcDIsCisgICAgMHgxLjM1YzI5MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS5kZmZmZTYzNjAxYzEzODNiYzU0ZWVhMzc3M2E0NjI0ZnAtMTEsCisgICAgMHgxLmRmZmZmZXAxMCwKKyAgICAweDEuMDAwMDA4cDIxCisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgLTB4MS5kZmZmZTYzNjAxYzEzODNiYzU0ZWVhMzc3M2E0NjI0ZnAtMTEsCisgICAgLTB4MS5kZmZmZmVwMTAsCisgICAgMHgxLjAwMDAwOHAyMQorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIDB4MS44ZjgyZDFiMTQ0M2QxN2IwMDhmMThmNzgyMjE3NTkwMnAtNCwKKyAgICAweDEuZTBmMDc4cC02LAorICAgIDB4MS4zMzMzMzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAtMHgxLjhmODJkMWIxNDQzZDE3YjAwOGYxOGY3ODIyMTc1OTAycC00LAorICAgIC0weDEuZTBmMDc4cC02LAorICAgIDB4MS4zMzMzMzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuMDc3OTVkN2JjNTY4ZDc1OTc2MDVmMWU0NDM4ODE5OGVwMSwKKyAgICAweDEuZTJiZTM2cC0yLAorICAgIC0weDEuZmZmZmZjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgLTB4MS4wNzc5NWQ3YmM1NjhkNzU5NzYwNWYxZTQ0Mzg4MTk4ZXAxLAorICAgIC0weDEuZTJiZTM2cC0yLAorICAgIC0weDEuZmZmZmZjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLmZmZjk1ZTU3YTBiMzliYjhhZmMzMWE4OTY3NGRjMTk3cC05MiwKKyAgICAweDEuZTYyNDQ4cDgsCisgICAgMHgxLmU2MmE5NHA5OQorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIC0weDEuZmZmOTVlNTdhMGIzOWJiOGFmYzMxYTg5Njc0ZGMxOTdwLTkyLAorICAgIC0weDEuZTYyNDQ4cDgsCisgICAgMHgxLmU2MmE5NHA5OQorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS4wZTA2ZjcwMDBhNGU1NGU3MTgxZWQ3OWQ2MzVkZWFkM3AwLAorICAgIDB4MS5lNzgzZDRwLTEsCisgICAgMHgxLjE0OGNmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIC0weDEuMGUwNmY3MDAwYTRlNTRlNzE4MWVkNzlkNjM1ZGVhZDNwMCwKKyAgICAtMHgxLmU3ODNkNHAtMSwKKyAgICAweDEuMTQ4Y2Y4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLmZlYTYzZmJkMTY3Y2YzZjRmYTA5ODdkMWUyOGNkNzVmcC00LAorICAgIDB4MS5lN2E1NWFwLTEsCisgICAgMHgxLmU2NjY2MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgLTB4MS5mZWE2M2ZiZDE2N2NmM2Y0ZmEwOTg3ZDFlMjhjZDc1ZnAtNCwKKyAgICAtMHgxLmU3YTU1YXAtMSwKKyAgICAweDEuZTY2NjYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuZDMyYWJjZmZmZmZlZTQyZjVhZDZjYzg4ODA3MmU0NDVwMCwKKyAgICAweDEuZWNlNmQ0cDAsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAtMHgxLmQzMmFiY2ZmZmZmZWU0MmY1YWQ2Y2M4ODgwNzJlNDQ1cDAsCisgICAgLTB4MS5lY2U2ZDRwMCwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS5lY2FjOTZmYWQxZDAyZWMyNWVlY2RlNGI3ZjBiOTdlYXAtNCwKKyAgICAweDEuZWYxMDYwcC01LAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAtMHgxLmVjYWM5NmZhZDFkMDJlYzI1ZWVjZGU0YjdmMGI5N2VhcC00LAorICAgIC0weDEuZWYxMDYwcC01LAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEuMTIwMmMyZTZiODQ1NDlkMmJkZDMwZjUwNmFkZmE5ZDRwMCwKKyAgICAweDEuZjA3YmQycDksCisgICAgMHgxLjBmODNkY3A5CisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgLTB4MS4xMjAyYzJlNmI4NDU0OWQyYmRkMzBmNTA2YWRmYTlkNHAwLAorICAgIC0weDEuZjA3YmQycDksCisgICAgMHgxLjBmODNkY3A5CisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLmZmZTdkOTcwMWIyNzA0M2Y0MDFmMjc3MWZjZmY2MWFhcC02LAorICAgIDB4MS5mZGRmZmVwMTUsCisgICAgMHgxLmZkY2Q5MHAyMAorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIC0weDEuZmZlN2Q5NzAxYjI3MDQzZjQwMWYyNzcxZmNmZjYxYWFwLTYsCisgICAgLTB4MS5mZGRmZmVwMTUsCisgICAgMHgxLmZkY2Q5MHAyMAorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS45MTljOTQ0MzRmYzkxZmI3NzA0MWUwZDRlYWFkZjYxNHAtMSwKKyAgICAweDEuZmVmZmZlcC0xMCwKKyAgICAweDEuMDAwM3AtOQorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIC0weDEuOTE5Yzk0NDM0ZmM5MWZiNzcwNDFlMGQ0ZWFhZGY2MTRwLTEsCisgICAgLTB4MS5mZWZmZmVwLTEwLAorICAgIDB4MS4wMDAzcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjFiNTc3ODA4MjAwODViYzAzOTFjYmQ2MWIyZmQyMzM1cDAsCisgICAgMHgxLmZmOGZmZXAtMjAsCisgICAgMHgxLjAwMDA4OHAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAtMHgxLjFiNTc3ODA4MjAwODViYzAzOTFjYmQ2MWIyZmQyMzM1cDAsCisgICAgLTB4MS5mZjhmZmVwLTIwLAorICAgIDB4MS4wMDAwODhwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLmZmOTc2YWY2ZTgxN2FjMGIzNDNjYzc5ZGEwNzViOGE4cC02LAorICAgIDB4MS5mZmMwcC0xMzksCisgICAgMHgxLmZmZmVwLTEzNAorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIC0weDEuZmY5NzZhZjZlODE3YWMwYjM0M2NjNzlkYTA3NWI4YThwLTYsCisgICAgLTB4MS5mZmMwcC0xMzksCisgICAgMHgxLmZmZmVwLTEzNAorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS5mZjdmYzNlNDkzM2U4OTRjNzIyNjBlMDUzMzg1NjMxM3AtNCwKKyAgICAweDEuZmZmNzdlcC01LAorICAgIDB4MS5mZGNkMmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAtMHgxLmZmN2ZjM2U0OTMzZTg5NGM3MjI2MGUwNTMzODU2MzEzcC00LAorICAgIC0weDEuZmZmNzdlcC01LAorICAgIDB4MS5mZGNkMmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuZmY1NzFhMTUzNWU4NGEzZWQwNjE3ZjdjOGJkNDNjOWRwLTUsCisgICAgMHgxLmZmZmZkZXAtMywKKyAgICAweDEuZmZmZTdlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAtMHgxLmZmNTcxYTE1MzVlODRhM2VkMDYxN2Y3YzhiZDQzYzlkcC01LAorICAgIC0weDEuZmZmZmRlcC0zLAorICAgIDB4MS5mZmZlN2VwMQorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIDB4MS5mZmZmZmRmZmZmZjdmZmZmZGZmZmZmN2ZmZmZkZmZmZnAtMTI3LAorICAgIDB4MS5mZmZmZjZwMCwKKyAgICAweDEuZmZmZmY4cDEyNgorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIC0weDEuZmZmZmZkZmZmZmY3ZmZmZmRmZmZmZjdmZmZmZGZmZmZwLTEyNywKKyAgICAtMHgxLmZmZmZmNnAwLAorICAgIDB4MS5mZmZmZjhwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgMHgxLmZmZmZlYzAwMDA3N2ZmZmQwNTU1NmIzNTU0YTAxNTVicC0zNCwKKyAgICAweDEuZmZmZmY4cC0yLAorICAgIDB4MS4wMDAwMDZwMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAtMHgxLmZmZmZlYzAwMDA3N2ZmZmQwNTU1NmIzNTU0YTAxNTVicC0zNCwKKyAgICAtMHgxLmZmZmZmOHAtMiwKKyAgICAweDEuMDAwMDA2cDMyCisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgMHgxLjU1NTU0ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDQsCisgICAgMHgxLmZmZmZmOHAtMTI3LAorICAgIDB4MS44MHAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAtMHgxLjU1NTU0ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDQsCisgICAgLTB4MS5mZmZmZjhwLTEyNywKKyAgICAweDEuODBwLTIzCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLmZmNTRiZWVkYTgwN2FhNGVjNTY5OGNlOGNjN2RjYmE4cC0yLAorICAgIDB4MS5mZmZmZmNwLTEsCisgICAgMHgxLmQ1NTU1MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgLTB4MS5mZjU0YmVlZGE4MDdhYTRlYzU2OThjZThjYzdkY2JhOHAtMiwKKyAgICAtMHgxLmZmZmZmY3AtMSwKKyAgICAweDEuZDU1NTUycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAweDEuZmZmZmY4MDAwMDBmZmZmZmUwMDAwMDNmZmZmZjgwcC0xMjksCisgICAgMHgxLmZmZmZmY3AtMiwKKyAgICAweDEuMDAwMDAycDEyNworICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIC0weDEuZmZmZmY4MDAwMDBmZmZmZmUwMDAwMDNmZmZmZjgwcC0xMjksCisgICAgLTB4MS5mZmZmZmNwLTIsCisgICAgMHgxLjAwMDAwMnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEuZDc2MjVkZWI5ZDNkMTEzZTBiZTFiYTVkYWM0MmU2YzBwLTIsCisgICAgMHgxLmZmZmZmY3AtMiwKKyAgICAweDEuMDIyMjI4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAtMHgxLmQ3NjI1ZGViOWQzZDExM2UwYmUxYmE1ZGFjNDJlNmMwcC0yLAorICAgIC0weDEuZmZmZmZjcC0yLAorICAgIDB4MS4wMjIyMjhwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIDB4MS4wYzMwYjc1ZmM4YjA2MzdmY2JhZjNlZDIxZjQ3YmJkNXAtMTE4LAorICAgIDB4MS5mZmZmZmNwLTEyMiwKKyAgICAweDEuZThiYTQwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgLTB4MS4wYzMwYjc1ZmM4YjA2MzdmY2JhZjNlZDIxZjQ3YmJkNXAtMTE4LAorICAgIC0weDEuZmZmZmZjcC0xMjIsCisgICAgMHgxLmU4YmE0MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNiwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNiwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuZjViNzQ4ZmMzMjQ5MmY5YjBlMWE5ZTI5YzdiNDBhNDVwLTMsCisgICAgMHgxLmZmZmZmY3AyMCwKKyAgICAweDEuMDAwMDBhcDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgLTB4MS5mNWI3NDhmYzMyNDkyZjliMGUxYTllMjljN2I0MGE0NXAtMywKKyAgICAtMHgxLmZmZmZmY3AyMCwKKyAgICAweDEuMDAwMDBhcDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMHgxLmU4MDA5ZWZmZmM3MjQwMmY1NjA0NmJiYjM3NzVkYjdlcC0yLAorICAgIDB4MS42ZTZkNTJwLTIsCisgICAgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIC0weDEuZTgwMDllZmZmYzcyNDAyZjU2MDQ2YmJiMzc3NWRiN2VwLTIsCisgICAgLTB4MS42ZTZkNTJwLTIsCisgICAgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAweDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIDB4MS4yZDk3YzdmMzMyMWQyMzRmMjcyOTkzZDE0MTRhMmIzOXAxLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgLTB4MS4yZDk3YzdmMzMyMWQyMzRmMjcyOTkzZDE0MTRhMmIzOXAxLAorICAgIC0weDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIDB4MS5mZDViYTlhYWMyZjZkYzY1OTEyZjMxM2U3ZDExMWRlZnAtNCwKKyAgICAweDEucDAsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgLTB4MS5mZDViYTlhYWMyZjZkYzY1OTEyZjMxM2U3ZDExMWRlZnAtNCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIDB4MS43MjQ5ZmFhOTk2YTIxNmEzMzA3OWQyMDMxOWU3MjdjM3AwLAorICAgIDB4MS5wMywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAtMHgxLjcyNDlmYWE5OTZhMjE2YTMzMDc5ZDIwMzE5ZTcyN2MzcDAsCisgICAgLTB4MS5wMywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgMHgxLnAzLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS5wMywKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEuZmZmZmQ1NTU1YmJiYmE5NzI5YWI3YWFjMDg5NDczYTNwLTEwLAorICAgIDB4MS5wMCwKKyAgICAweDEucDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAtMHgxLmZmZmZkNTU1NWJiYmJhOTcyOWFiN2FhYzA4OTQ3M2EzcC0xMCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wOQorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIDB4MS5mZmZmZjU1NTU1YmJiYmI3Mjk3MmQwMGNmZGU3NTJmOXAtMTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAtMHgxLmZmZmZmNTU1NTViYmJiYjcyOTcyZDAwY2ZkZTc1MmY5cC0xMSwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEuZmZmNTU1YmJiNzI5YWI3N2NmMThhYzgwMmJlZWMwOTBwLTcsCisgICAgMHgxLnAzLAorICAgIDB4MS5wOQorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIC0weDEuZmZmNTU1YmJiNzI5YWI3N2NmMThhYzgwMmJlZWMwOTBwLTcsCisgICAgLTB4MS5wMywKKyAgICAweDEucDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEuZmZmZDU1NWJiYmE5NzJkMDBjNDZhM2Y3N2NjMTVlOGVwLTgsCisgICAgMHgxLnAzLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAtMHgxLmZmZmQ1NTViYmJhOTcyZDAwYzQ2YTNmNzdjYzE1ZThlcC04LAorICAgIC0weDEucDMsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIDB4MS5wMCwKKyAgICAweDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMSwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyLAorICAgIC0weDEucDAsCisgICAgMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTk4LAorICAgIDB4MS5wMywKKyAgICAweDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTk4LAorICAgIC0weDEucDMsCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTk5LAorICAgIDB4MS5wMywKKyAgICAweDEucDEwMQorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTk5LAorICAgIC0weDEucDMsCisgICAgMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAweDEuOTE5ZmI1NGVlZDdhOTU3YWUzYzI1YTM4NTZiNjE0ODVwMCwKKyAgICAweDEucDksCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgLTB4MS45MTlmYjU0ZWVkN2E5NTdhZTNjMjVhMzg1NmI2MTQ4NXAwLAorICAgIC0weDEucDksCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgMHgxLjhlMWZjYTk4Y2I2MzMxMTI5OWVlOTNiZTAxNjA1YzIxcDAsCisgICAgMHgxLnA5LAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIC0weDEuOGUxZmNhOThjYjYzMzExMjk5ZWU5M2JlMDE2MDVjMjFwMCwKKyAgICAtMHgxLnA5LAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIDB4MS45MWRmYjU0NTk4MjZjY2YyMTJhNzk2YmQwMDE4N2NiN3AwLAorICAgIDB4MS5wMTAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQyCisgICAgLTB4MS45MWRmYjU0NTk4MjZjY2YyMTJhNzk2YmQwMDE4N2NiN3AwLAorICAgIC0weDEucDEwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIDB4MS45MDFmYjdlZWU3MTVkYWY2Yjk4MDdlNzMwYTNiNzg0M3AwLAorICAgIDB4MS5wMTAsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgLTB4MS45MDFmYjdlZWU3MTVkYWY2Yjk4MDdlNzMwYTNiNzg0M3AwLAorICAgIC0weDEucDEwLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEucDksCisgICAgMHgxLnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLnA5LAorICAgIDB4MS5wOQorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIDB4MS5kYWM2NzA1NjFiYjRmNjhhZGZjODhiZDk3ODc1MWEwNnAtMiwKKyAgICAweDEucDksCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIC0weDEuZGFjNjcwNTYxYmI0ZjY4YWRmYzg4YmQ5Nzg3NTFhMDZwLTIsCisgICAgLTB4MS5wOSwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgMHgxLjFiNmUxOTJlYmJlNDQ2YzZkMTlhYTIyMGEzOWFmMzIwcDAsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAtMHgxLjFiNmUxOTJlYmJlNDQ2YzZkMTlhYTIyMGEzOWFmMzIwcDAsCisgICAgLTB4MS5wMTAsCisgICAgMHgxLnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS5wMTAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS5wMTAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtOTIsCisgICAgMHgxLnA5LAorICAgIDB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtOTIsCisgICAgLTB4MS5wOSwKKyAgICAweDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtOTMsCisgICAgMHgxLnA5LAorICAgIDB4MS5wMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtOTMsCisgICAgLTB4MS5wOSwKKyAgICAweDEucDEwMQorICB9LAorICB7IC8vIEVudHJ5IDM1NworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtOTEsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTkxLAorICAgIC0weDEucDEwLAorICAgIDB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzU5CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC05MiwKKyAgICAweDEucDEwLAorICAgIDB4MS5wMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtOTIsCisgICAgLTB4MS5wMTAsCisgICAgMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE2ZjFiODM5YTJwMCwKKyAgICAweDEucDEwMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNmYxYjgzOWEycDAsCisgICAgLTB4MS5wMTAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM2MworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTY4MWI4MzlhMnAwLAorICAgIDB4MS5wMTAwLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE2ODFiODM5YTJwMCwKKyAgICAtMHgxLnAxMDAsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNmY5YjgzOWEycDAsCisgICAgMHgxLnAxMDEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTZmOWI4MzlhMnAwLAorICAgIC0weDEucDEwMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjcKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE2YzFiODM5YTJwMCwKKyAgICAweDEucDEwMSwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNmMxYjgzOWEycDAsCisgICAgLTB4MS5wMTAxLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDM2OQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M0ZjcwMWI4MzlhMnAwLAorICAgIDB4MS5wMTAwLAorICAgIDB4MS5wOQorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNGY3MDFiODM5YTJwMCwKKyAgICAtMHgxLnAxMDAsCisgICAgMHgxLnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzRkNzAxYjgzOWEycDAsCisgICAgMHgxLnAxMDAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNGQ3MDFiODM5YTJwMCwKKyAgICAtMHgxLnAxMDAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MDcwMWI4MzlhMnAwLAorICAgIDB4MS5wMTAxLAorICAgIDB4MS5wOQorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTA3MDFiODM5YTJwMCwKKyAgICAtMHgxLnAxMDEsCisgICAgMHgxLnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzRmNzAxYjgzOWEycDAsCisgICAgMHgxLnAxMDEsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNGY3MDFiODM5YTJwMCwKKyAgICAtMHgxLnAxMDEsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDM3NworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEucDEwMCwKKyAgICAweDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS5wMTAwLAorICAgIDB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzc5CisgICAgMHgxLmRhYzY3MDU2MWJiNGY2OGFkZmM4OGJkOTc4NzUxYTA2cC0yLAorICAgIDB4MS5wMTAwLAorICAgIDB4MS5wMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgLTB4MS5kYWM2NzA1NjFiYjRmNjhhZGZjODhiZDk3ODc1MWEwNnAtMiwKKyAgICAtMHgxLnAxMDAsCisgICAgMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODEKKyAgICAweDEuMWI2ZTE5MmViYmU0NDZjNmQxOWFhMjIwYTM5YWYzMjBwMCwKKyAgICAweDEucDEwMSwKKyAgICAweDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIC0weDEuMWI2ZTE5MmViYmU0NDZjNmQxOWFhMjIwYTM5YWYzMjBwMCwKKyAgICAtMHgxLnAxMDEsCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODMKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgMHgxLnAxMDEsCisgICAgMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODQKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEucDEwMSwKKyAgICAweDEucDEwMQorICB9LAorICB7IC8vIEVudHJ5IDM4NQorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODgKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDM5NQorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzk3CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTgKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTkKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQwMAorICAgIDB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAweDEuZmZmZmZlcC00LAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIC0weDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgLTB4MS5mZmZmZmVwLTQsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgMHgxLmZmNTViOTc0Y2RlMDk4NzM4ZTU5YzA3YWE0OGRkMTEwcC01LAorICAgIDB4MS5mZmZmZmVwLTQsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDAzCisgICAgLTB4MS5mZjU1Yjk3NGNkZTA5ODczOGU1OWMwN2FhNDhkZDExMHAtNSwKKyAgICAtMHgxLmZmZmZmZXAtNCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDQKKyAgICAweDEuZmY1NWI1NzhjOWYwNzhhMzM3MTlhODVlZjI5ZThhMjBwLTUsCisgICAgMHgxLmZmZmZmZXAtNCwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAtMHgxLmZmNTViNTc4YzlmMDc4YTMzNzE5YTg1ZWYyOWU4YTIwcC01LAorICAgIC0weDEuZmZmZmZlcC00LAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIDB4MS5mZjU1YmQ3MGQxZGU5YTcxOTI1MDdmMDM3ZTU0MTRiYnAtNSwKKyAgICAweDEucC0zLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIC0weDEuZmY1NWJkNzBkMWRlOWE3MTkyNTA3ZjAzN2U1NDE0YmJwLTUsCisgICAgLTB4MS5wLTMsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDA4CisgICAgMHgxLmZmNTViYjcyY2ZkZTljNmQ5NjRmMjViODFjNWMxYWEycC01LAorICAgIDB4MS5wLTMsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDA5CisgICAgLTB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAtMHgxLnAtMywKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAweDEuZmY1NWI3NzZjYmVhODg4OTYyYWZkODI3NmMwMWEyNWVwLTUsCisgICAgMHgxLnAtMywKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTEKKyAgICAtMHgxLmZmNTViNzc2Y2JlYTg4ODk2MmFmZDgyNzZjMDFhMjVlcC01LAorICAgIC0weDEucC0zLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQxMgorICAgIDB4MS5mZjU1YzE2Y2Q1ZGU4YTkxNjY1Yjg0YWJiOTVlMGNjN3AtNSwKKyAgICAweDEuMDAwMDAycC0zLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIC0weDEuZmY1NWMxNmNkNWRlOGE5MTY2NWI4NGFiYjk1ZTBjYzdwLTUsCisgICAgLTB4MS4wMDAwMDJwLTMsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgMHgxLmZmNTViZjZlZDNkYTk4Nzk4MjY1Y2MzZjI3Yzg5NmM3cC01LAorICAgIDB4MS4wMDAwMDJwLTMsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDE1CisgICAgLTB4MS5mZjU1YmY2ZWQzZGE5ODc5ODI2NWNjM2YyN2M4OTZjN3AtNSwKKyAgICAtMHgxLjAwMDAwMnAtMywKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAweDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgMHgxLjAwMDAwMnAtMywKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAtMHgxLmZmNTViYjcyY2ZkZTljNmQ5NjRmMjViODFjNWMxYWEycC01LAorICAgIC0weDEuMDAwMDAycC0zLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQxOAorICAgIC0weDEuZmY1NWMxNmNkNWRlOGE5MTY2NWI4NGFiYjk1ZTBjYzdwLTUsCisgICAgLTB4MS4wMDAwMDJwLTMsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDE5CisgICAgMHgxLmZmNTVjMTZjZDVkZThhOTE2NjViODRhYmI5NWUwY2M3cC01LAorICAgIDB4MS4wMDAwMDJwLTMsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgLTB4MS5mZjU1YmY2ZWQzZGE5ODc5ODI2NWNjM2YyN2M4OTZjN3AtNSwKKyAgICAtMHgxLjAwMDAwMnAtMywKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjEKKyAgICAweDEuZmY1NWJmNmVkM2RhOTg3OTgyNjVjYzNmMjdjODk2YzdwLTUsCisgICAgMHgxLjAwMDAwMnAtMywKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAtMHgxLmZmNTViYjcyY2ZkZTljNmQ5NjRmMjViODFjNWMxYWEycC01LAorICAgIC0weDEuMDAwMDAycC0zLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQyMworICAgIDB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAweDEuMDAwMDAycC0zLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQyNAorICAgIC0weDEuZmY1NWJkNzBkMWRlOWE3MTkyNTA3ZjAzN2U1NDE0YmJwLTUsCisgICAgLTB4MS5wLTMsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgMHgxLmZmNTViZDcwZDFkZTlhNzE5MjUwN2YwMzdlNTQxNGJicC01LAorICAgIDB4MS5wLTMsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDI2CisgICAgLTB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAtMHgxLnAtMywKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAweDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgMHgxLnAtMywKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAtMHgxLmZmNTViNzc2Y2JlYTg4ODk2MmFmZDgyNzZjMDFhMjVlcC01LAorICAgIC0weDEucC0zLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQyOQorICAgIDB4MS5mZjU1Yjc3NmNiZWE4ODg5NjJhZmQ4Mjc2YzAxYTI1ZXAtNSwKKyAgICAweDEucC0zLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIC0weDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgLTB4MS5mZmZmZmVwLTQsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDMxCisgICAgMHgxLmZmNTViYjcyY2ZkZTljNmQ5NjRmMjViODFjNWMxYWEycC01LAorICAgIDB4MS5mZmZmZmVwLTQsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgLTB4MS5mZjU1Yjk3NGNkZTA5ODczOGU1OWMwN2FhNDhkZDExMHAtNSwKKyAgICAtMHgxLmZmZmZmZXAtNCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzMKKyAgICAweDEuZmY1NWI5NzRjZGUwOTg3MzhlNTljMDdhYTQ4ZGQxMTBwLTUsCisgICAgMHgxLmZmZmZmZXAtNCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzQKKyAgICAtMHgxLmZmNTViNTc4YzlmMDc4YTMzNzE5YTg1ZWYyOWU4YTIwcC01LAorICAgIC0weDEuZmZmZmZlcC00LAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQzNQorICAgIDB4MS5mZjU1YjU3OGM5ZjA3OGEzMzcxOWE4NWVmMjllOGEyMHAtNSwKKyAgICAweDEuZmZmZmZlcC00LAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIDB4MS5hMjcxZjU5NDAxODY0NjVkNDA2NjQ1MTg2ZjNmZjk0YXAtMiwKKyAgICAweDEuYmI2N2FjcC0xLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQzNworICAgIC0weDEuYTI3MWY1OTQwMTg2NDY1ZDQwNjY0NTE4NmYzZmY5NGFwLTIsCisgICAgLTB4MS5iYjY3YWNwLTEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLmEyNzFmNDFlOWNiZGEzYTI2OTRjYTRkZjc2ZGM0YTg2cC0yLAorICAgIDB4MS5iYjY3YWNwLTEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgLTB4MS5hMjcxZjQxZTljYmRhM2EyNjk0Y2E0ZGY3NmRjNGE4NnAtMiwKKyAgICAtMHgxLmJiNjdhY3AtMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuYTI3MWYxMzNkMzMzYmNjYjlhYmE0MDY3YjFkNTUxYTJwLTIsCisgICAgMHgxLmJiNjdhY3AtMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDEKKyAgICAtMHgxLmEyNzFmMTMzZDMzM2JjY2I5YWJhNDA2N2IxZDU1MWEycC0yLAorICAgIC0weDEuYmI2N2FjcC0xLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIDB4MS5hMjcxZjc0MzI5ZjNhZjE0YWIwMmY3MmUxNDYyN2UzZXAtMiwKKyAgICAweDEuYmI2N2FlcC0xLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0MworICAgIC0weDEuYTI3MWY3NDMyOWYzYWYxNGFiMDJmNzJlMTQ2MjdlM2VwLTIsCisgICAgLTB4MS5iYjY3YWVwLTEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgMHgxLmEyNzFmNWNkYzUyOWU1NTkxY2JlMDFmMGRmZjVkNDM2cC0yLAorICAgIDB4MS5iYjY3YWVwLTEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgLTB4MS5hMjcxZjVjZGM1MjllNTU5MWNiZTAxZjBkZmY1ZDQzNnAtMiwKKyAgICAtMHgxLmJiNjdhZXAtMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDYKKyAgICAweDEuYTI3MWYyZTJmYjlkYjA4MGUyZjc4Y2JhYTdhZTc2ZGFwLTIsCisgICAgMHgxLmJiNjdhZXAtMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDcKKyAgICAtMHgxLmEyNzFmMmUyZmI5ZGIwODBlMmY3OGNiYWE3YWU3NmRhcC0yLAorICAgIC0weDEuYmI2N2FlcC0xLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIDB4MS5hMjcxZjhmMjUyNjA3YTk0MmI3NDNhMjkyNTFmNDFiM3AtMiwKKyAgICAweDEuYmI2N2IwcC0xLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIC0weDEuYTI3MWY4ZjI1MjYwN2E5NDJiNzQzYTI5MjUxZjQxYjNwLTIsCisgICAgLTB4MS5iYjY3YjBwLTEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgMHgxLmEyNzFmNzdjZWQ5NTg5ZDdlNzc4NGJlOGM1OWIyODllcC0yLAorICAgIDB4MS5iYjY3YjBwLTEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgLTB4MS5hMjcxZjc3Y2VkOTU4OWQ3ZTc3ODRiZThjNTliMjg5ZXAtMiwKKyAgICAtMHgxLmJiNjdiMHAtMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTIKKyAgICAweDEuYTI3MWY0OTIyNDA3MDZmZTQ1NjY3ZGU5N2VlMTA1MWJwLTIsCisgICAgMHgxLmJiNjdiMHAtMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTMKKyAgICAtMHgxLmEyNzFmNDkyMjQwNzA2ZmU0NTY2N2RlOTdlZTEwNTFicC0yLAorICAgIC0weDEuYmI2N2IwcC0xLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ1NAorICAgIC0weDEuYTI3MWY4ZjI1MjYwN2E5NDJiNzQzYTI5MjUxZjQxYjNwLTIsCisgICAgLTB4MS5iYjY3YjBwLTEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgMHgxLmEyNzFmOGYyNTI2MDdhOTQyYjc0M2EyOTI1MWY0MWIzcC0yLAorICAgIDB4MS5iYjY3YjBwLTEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDU2CisgICAgLTB4MS5hMjcxZjc3Y2VkOTU4OWQ3ZTc3ODRiZThjNTliMjg5ZXAtMiwKKyAgICAtMHgxLmJiNjdiMHAtMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTcKKyAgICAweDEuYTI3MWY3N2NlZDk1ODlkN2U3Nzg0YmU4YzU5YjI4OWVwLTIsCisgICAgMHgxLmJiNjdiMHAtMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTgKKyAgICAtMHgxLmEyNzFmNDkyMjQwNzA2ZmU0NTY2N2RlOTdlZTEwNTFicC0yLAorICAgIC0weDEuYmI2N2IwcC0xLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ1OQorICAgIDB4MS5hMjcxZjQ5MjI0MDcwNmZlNDU2NjdkZTk3ZWUxMDUxYnAtMiwKKyAgICAweDEuYmI2N2IwcC0xLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ2MAorICAgIC0weDEuYTI3MWY3NDMyOWYzYWYxNGFiMDJmNzJlMTQ2MjdlM2VwLTIsCisgICAgLTB4MS5iYjY3YWVwLTEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgMHgxLmEyNzFmNzQzMjlmM2FmMTRhYjAyZjcyZTE0NjI3ZTNlcC0yLAorICAgIDB4MS5iYjY3YWVwLTEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDYyCisgICAgLTB4MS5hMjcxZjVjZGM1MjllNTU5MWNiZTAxZjBkZmY1ZDQzNnAtMiwKKyAgICAtMHgxLmJiNjdhZXAtMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICAweDEuYTI3MWY1Y2RjNTI5ZTU1OTFjYmUwMWYwZGZmNWQ0MzZwLTIsCisgICAgMHgxLmJiNjdhZXAtMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjQKKyAgICAtMHgxLmEyNzFmMmUyZmI5ZGIwODBlMmY3OGNiYWE3YWU3NmRhcC0yLAorICAgIC0weDEuYmI2N2FlcC0xLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ2NQorICAgIDB4MS5hMjcxZjJlMmZiOWRiMDgwZTJmNzhjYmFhN2FlNzZkYXAtMiwKKyAgICAweDEuYmI2N2FlcC0xLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ2NgorICAgIC0weDEuYTI3MWY1OTQwMTg2NDY1ZDQwNjY0NTE4NmYzZmY5NGFwLTIsCisgICAgLTB4MS5iYjY3YWNwLTEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDY3CisgICAgMHgxLmEyNzFmNTk0MDE4NjQ2NWQ0MDY2NDUxODZmM2ZmOTRhcC0yLAorICAgIDB4MS5iYjY3YWNwLTEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDY4CisgICAgLTB4MS5hMjcxZjQxZTljYmRhM2EyNjk0Y2E0ZGY3NmRjNGE4NnAtMiwKKyAgICAtMHgxLmJiNjdhY3AtMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjkKKyAgICAweDEuYTI3MWY0MWU5Y2JkYTNhMjY5NGNhNGRmNzZkYzRhODZwLTIsCisgICAgMHgxLmJiNjdhY3AtMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzAKKyAgICAtMHgxLmEyNzFmMTMzZDMzM2JjY2I5YWJhNDA2N2IxZDU1MWEycC0yLAorICAgIC0weDEuYmI2N2FjcC0xLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3MQorICAgIDB4MS5hMjcxZjEzM2QzMzNiY2NiOWFiYTQwNjdiMWQ1NTFhMnAtMiwKKyAgICAweDEuYmI2N2FjcC0xLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3MgorICAgIDB4MS5lMWZjMDg3ZDA2OGNiZmQyNWM2NGQwZGE5OTYxZGUwZHAtMSwKKyAgICAweDEuNWY4OWUwcDEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDczCisgICAgLTB4MS5lMWZjMDg3ZDA2OGNiZmQyNWM2NGQwZGE5OTYxZGUwZHAtMSwKKyAgICAtMHgxLjVmODllMHAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIDB4MS5lMWZjMDc4OTYxYTFiOGQ1OGVmZjBlZjM1NzNlNWViYnAtMSwKKyAgICAweDEuNWY4OWUwcDEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDc1CisgICAgLTB4MS5lMWZjMDc4OTYxYTFiOGQ1OGVmZjBlZjM1NzNlNWViYnAtMSwKKyAgICAtMHgxLjVmODllMHAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NgorICAgIDB4MS5lMWZjMDVhMjE3Y2RhNTc0MjMxZmFiN2VmNTZhODAyZXAtMSwKKyAgICAweDEuNWY4OWUwcDEsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDc3CisgICAgLTB4MS5lMWZjMDVhMjE3Y2RhNTc0MjMxZmFiN2VmNTZhODAyZXAtMSwKKyAgICAtMHgxLjVmODllMHAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3OAorICAgIDB4MS5lMWZjMDlkZmUxZGU4N2JlNjNkMmVmYTc2YWVkZWVmMXAtMSwKKyAgICAweDEuNWY4OWUycDEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDc5CisgICAgLTB4MS5lMWZjMDlkZmUxZGU4N2JlNjNkMmVmYTc2YWVkZWVmMXAtMSwKKyAgICAtMHgxLjVmODllMnAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4MAorICAgIDB4MS5lMWZjMDhlYzNjZjNlZGFiNDNjODg4OTVkYzhiZDE0OXAtMSwKKyAgICAweDEuNWY4OWUycDEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDgxCisgICAgLTB4MS5lMWZjMDhlYzNjZjNlZGFiNDNjODg4OTVkYzhiZDE0OXAtMSwKKyAgICAtMHgxLjVmODllMnAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDQ4MgorICAgIDB4MS5lMWZjMDcwNGYzMjBiNDFkMmRmOTFjOGZjN2E3ODVhNnAtMSwKKyAgICAweDEuNWY4OWUycDEsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDgzCisgICAgLTB4MS5lMWZjMDcwNGYzMjBiNDFkMmRmOTFjOGZjN2E3ODVhNnAtMSwKKyAgICAtMHgxLjVmODllMnAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIDB4MS5lMWZjMGI0MmJkMmRhYzM0ZGMzMzZlYmUxYTVkZDYzOXAtMSwKKyAgICAweDEuNWY4OWU0cDEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDg1CisgICAgLTB4MS5lMWZjMGI0MmJkMmRhYzM0ZGMzMzZlYmUxYTVkZDYzOXAtMSwKKyAgICAtMHgxLjVmODllNHAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIDB4MS5lMWZjMGE0ZjE4NDM3ZjBiNmE4OTM4MmJlYzgzNmEwM3AtMSwKKyAgICAweDEuNWY4OWU0cDEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgLTB4MS5lMWZjMGE0ZjE4NDM3ZjBiNmE4OTM4MmJlYzgzNmEwM3AtMSwKKyAgICAtMHgxLjVmODllNHAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDQ4OAorICAgIDB4MS5lMWZjMDg2N2NlNzExZjUwYWNkMzZlZjE5ODZhOWVkM3AtMSwKKyAgICAweDEuNWY4OWU0cDEsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDg5CisgICAgLTB4MS5lMWZjMDg2N2NlNzExZjUwYWNkMzZlZjE5ODZhOWVkM3AtMSwKKyAgICAtMHgxLjVmODllNHAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ5MAorICAgIC0weDEuZTFmYzBiNDJiZDJkYWMzNGRjMzM2ZWJlMWE1ZGQ2MzlwLTEsCisgICAgLTB4MS41Zjg5ZTRwMSwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAweDEuZTFmYzBiNDJiZDJkYWMzNGRjMzM2ZWJlMWE1ZGQ2MzlwLTEsCisgICAgMHgxLjVmODllNHAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQ5MgorICAgIC0weDEuZTFmYzBhNGYxODQzN2YwYjZhODkzODJiZWM4MzZhMDNwLTEsCisgICAgLTB4MS41Zjg5ZTRwMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICAweDEuZTFmYzBhNGYxODQzN2YwYjZhODkzODJiZWM4MzZhMDNwLTEsCisgICAgMHgxLjVmODllNHAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDQ5NAorICAgIC0weDEuZTFmYzA4NjdjZTcxMWY1MGFjZDM2ZWYxOTg2YTllZDNwLTEsCisgICAgLTB4MS41Zjg5ZTRwMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTUKKyAgICAweDEuZTFmYzA4NjdjZTcxMWY1MGFjZDM2ZWYxOTg2YTllZDNwLTEsCisgICAgMHgxLjVmODllNHAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ5NgorICAgIC0weDEuZTFmYzA5ZGZlMWRlODdiZTYzZDJlZmE3NmFlZGVlZjFwLTEsCisgICAgLTB4MS41Zjg5ZTJwMSwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTcKKyAgICAweDEuZTFmYzA5ZGZlMWRlODdiZTYzZDJlZmE3NmFlZGVlZjFwLTEsCisgICAgMHgxLjVmODllMnAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQ5OAorICAgIC0weDEuZTFmYzA4ZWMzY2YzZWRhYjQzYzg4ODk1ZGM4YmQxNDlwLTEsCisgICAgLTB4MS41Zjg5ZTJwMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTkKKyAgICAweDEuZTFmYzA4ZWMzY2YzZWRhYjQzYzg4ODk1ZGM4YmQxNDlwLTEsCisgICAgMHgxLjVmODllMnAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDUwMAorICAgIC0weDEuZTFmYzA3MDRmMzIwYjQxZDJkZjkxYzhmYzdhNzg1YTZwLTEsCisgICAgLTB4MS41Zjg5ZTJwMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDEKKyAgICAweDEuZTFmYzA3MDRmMzIwYjQxZDJkZjkxYzhmYzdhNzg1YTZwLTEsCisgICAgMHgxLjVmODllMnAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDUwMgorICAgIC0weDEuZTFmYzA4N2QwNjhjYmZkMjVjNjRkMGRhOTk2MWRlMGRwLTEsCisgICAgLTB4MS41Zjg5ZTBwMSwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICAweDEuZTFmYzA4N2QwNjhjYmZkMjVjNjRkMGRhOTk2MWRlMGRwLTEsCisgICAgMHgxLjVmODllMHAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDUwNAorICAgIC0weDEuZTFmYzA3ODk2MWExYjhkNThlZmYwZWYzNTczZTVlYmJwLTEsCisgICAgLTB4MS41Zjg5ZTBwMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAweDEuZTFmYzA3ODk2MWExYjhkNThlZmYwZWYzNTczZTVlYmJwLTEsCisgICAgMHgxLjVmODllMHAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDUwNgorICAgIC0weDEuZTFmYzA1YTIxN2NkYTU3NDIzMWZhYjdlZjU2YTgwMmVwLTEsCisgICAgLTB4MS41Zjg5ZTBwMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAweDEuZTFmYzA1YTIxN2NkYTU3NDIzMWZhYjdlZjU2YTgwMmVwLTEsCisgICAgMHgxLjVmODllMHAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDUwOAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTA5CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDUxMAorICAgIDB4MS45MjFmYjQ0NDQyZDEwNDY5ODk2MjFhNmM1NzBkOGYwNHAtMSwKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgLTB4MS45MjFmYjQ0NDQyZDEwNDY5ODk2MjFhNmM1NzBkOGYwNHAtMSwKKyAgICAtMHgxLmZmZmZmZXAwLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDUxMgorICAgIDB4MS45MjFmYjI0NDQyZDMwNDY5OGIwY2M1MTQwMWI4MzljOHAtMSwKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTEzCisgICAgLTB4MS45MjFmYjI0NDQyZDMwNDY5OGIwY2M1MTQwMWI4MzljOHAtMSwKKyAgICAtMHgxLmZmZmZmZXAwLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDUxNAorICAgIDB4MS45MjFmYjY0NDQyZDIwNDY5ODliNzZmYzFhYzYyZTQ0MHAtMSwKKyAgICAweDEucDEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTE1CisgICAgLTB4MS45MjFmYjY0NDQyZDIwNDY5ODliNzZmYzFhYzYyZTQ0MHAtMSwKKyAgICAtMHgxLnAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDUxNgorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEucDEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTE3CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLnAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDUxOAorICAgIDB4MS45MjFmYjM0NDQyZDM4NDY5ODgzNzZmYzFhYzYyZTVlNnAtMSwKKyAgICAweDEucDEsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTE5CisgICAgLTB4MS45MjFmYjM0NDQyZDM4NDY5ODgzNzZmYzFhYzYyZTVlNnAtMSwKKyAgICAtMHgxLnAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDUyMAorICAgIDB4MS45MjFmYjg0NDQyZDAwNDY5ODgwY2M1MWEwMWI4Mzk3YnAtMSwKKyAgICAweDEuMDAwMDAycDEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTIxCisgICAgLTB4MS45MjFmYjg0NDQyZDAwNDY5ODgwY2M1MWEwMWI4Mzk3YnAtMSwKKyAgICAtMHgxLjAwMDAwMnAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDUyMgorICAgIDB4MS45MjFmYjc0NDQyY2Y4NDY5OGFlMjFhNmM1NzBkOGQ1ZXAtMSwKKyAgICAweDEuMDAwMDAycDEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTIzCisgICAgLTB4MS45MjFmYjc0NDQyY2Y4NDY5OGFlMjFhNmM1NzBkOGQ1ZXAtMSwKKyAgICAtMHgxLjAwMDAwMnAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDUyNAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEuMDAwMDAycDEsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTI1CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLjAwMDAwMnAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDUyNgorICAgIDB4MS5mZmZmZmZkNTU1NTU1YmJiYmJiYTk3Mjk3MmQwMGRwLTE0LAorICAgIDB4MS5mZmZmZmVwLTEzLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIC0weDEuZmZmZmZmZDU1NTU1NWJiYmJiYmE5NzI5NzJkMDBkcC0xNCwKKyAgICAtMHgxLmZmZmZmZXAtMTMsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgMHgxLmZmZmZmZGQ1NTU1NWRiYmJiYjFhOTcyOWU1N2FiNzUxcC0xNCwKKyAgICAweDEuZmZmZmZlcC0xMywKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjkKKyAgICAtMHgxLmZmZmZmZGQ1NTU1NWRiYmJiYjFhOTcyOWU1N2FiNzUxcC0xNCwKKyAgICAtMHgxLmZmZmZmZXAtMTMsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTMwCisgICAgMHgxLmZmZmZmOWQ1NTU2MmRiYmI5YmRhOTc3OTBhY2YzZGIycC0xNCwKKyAgICAweDEuZmZmZmZlcC0xMywKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzEKKyAgICAtMHgxLmZmZmZmOWQ1NTU2MmRiYmI5YmRhOTc3OTBhY2YzZGIycC0xNCwKKyAgICAtMHgxLmZmZmZmZXAtMTMsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTMyCisgICAgMHgxLjAwMDAwMGVhYWFhYjZkZGRkZTZkNGI5NTEwMTJiMTRjcC0xMywKKyAgICAweDEucC0xMiwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzMKKyAgICAtMHgxLjAwMDAwMGVhYWFhYjZkZGRkZTZkNGI5NTEwMTJiMTRjcC0xMywKKyAgICAtMHgxLnAtMTIsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTM0CisgICAgMHgxLmZmZmZmZmQ1NTU1NTViYmJiYmJhOTcyOTcyZDAwZHAtMTQsCisgICAgMHgxLnAtMTIsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTM1CisgICAgLTB4MS5mZmZmZmZkNTU1NTU1YmJiYmJiYTk3Mjk3MmQwMGRwLTE0LAorICAgIC0weDEucC0xMiwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzYKKyAgICAweDEuZmZmZmZiZDU1NTVlNWJiYmE3N2E5NzU4NTgyNGYyZDJwLTE0LAorICAgIDB4MS5wLTEyLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDUzNworICAgIC0weDEuZmZmZmZiZDU1NTVlNWJiYmE3N2E5NzU4NTgyNGYyZDJwLTE0LAorICAgIC0weDEucC0xMiwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzgKKyAgICAweDEuMDAwMDAyZWFhYWFjZWRkZGRlMGQ0YjkxN2Q2ODAwOWJwLTEzLAorICAgIDB4MS4wMDAwMDJwLTEyLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDUzOQorICAgIC0weDEuMDAwMDAyZWFhYWFjZWRkZGRlMGQ0YjkxN2Q2ODAwOWJwLTEzLAorICAgIC0weDEuMDAwMDAycC0xMiwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDAKKyAgICAweDEuMDAwMDAxZWFhYWFhMmRkZGRjZmQ0Yjk0ODZiZDVjYTdwLTEzLAorICAgIDB4MS4wMDAwMDJwLTEyLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDU0MQorICAgIC0weDEuMDAwMDAxZWFhYWFhMmRkZGRjZmQ0Yjk0ODZiZDVjYTdwLTEzLAorICAgIC0weDEuMDAwMDAycC0xMiwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAweDEuZmZmZmZmZDU1NTU1NWJiYmJiYmE5NzI5NzJkMDBkcC0xNCwKKyAgICAweDEuMDAwMDAycC0xMiwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAtMHgxLmZmZmZmZmQ1NTU1NTViYmJiYmJhOTcyOTcyZDAwZHAtMTQsCisgICAgLTB4MS4wMDAwMDJwLTEyLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDU0NAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDUKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDU0NgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5wLTE0OSwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNTQ5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTAKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAwLjAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDU1MQorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTMKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTUKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEucC0xNDksCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTU2CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEucC0xNDksCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNTU5CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTYxCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDU2MgorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTYzCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDU2NAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDU2NQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjYKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTY3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDU2OAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDU2OQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzAKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzEKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzIKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDU3MworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDU3NAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNTc1CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNTc2CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDU3NworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTc4CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTc5CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODAKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODEKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODIKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDU4MworICAgIC0weDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTg0CisgICAgMHgxLjJkOTdjN2YzMzIxZDIzNGYyNzI5OTNkMTQxNGEyYjM5cDEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1NTU1cC01NywKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXA1NgorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjU1NTVwLTU3LAorICAgIC0weDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXA1NgorICB9LAorICB7IC8vIEVudHJ5IDU4NworICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNTU1NXAtNTcsCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5wNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODgKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1NTU1cC01NywKKyAgICAtMHgxLmZmZmZmZXAwLAorICAgIDB4MS5wNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODkKKyAgICAweDEuZmZmZmZhMDAwMDBiZmZmZmU4MDAwMDJmZmZmZWY1NTVwLTU3LAorICAgIDB4MS5mZmZmZmVwMCwKKyAgICAweDEuMDAwMDAycDU3CisgIH0sCisgIHsgLy8gRW50cnkgNTkwCisgICAgLTB4MS5mZmZmZmEwMDAwMGJmZmZmZTgwMDAwMmZmZmZlZjU1NXAtNTcsCisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAweDEuMDAwMDAycDU3CisgIH0sCisgIHsgLy8gRW50cnkgNTkxCisgICAgMHgxLjAwMDAwMTAwMDAwMTAwMDAwMTAwMDAwMGZmZmZhYmFhcC01NiwKKyAgICAweDEucDEsCisgICAgMHgxLmZmZmZmZXA1NgorICB9LAorICB7IC8vIEVudHJ5IDU5MgorICAgIC0weDEuMDAwMDAxMDAwMDAxMDAwMDAxMDAwMDAwZmZmZmFiYWFwLTU2LAorICAgIC0weDEucDEsCisgICAgMHgxLmZmZmZmZXA1NgorICB9LAorICB7IC8vIEVudHJ5IDU5MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNTU1NXAtNTcsCisgICAgMHgxLnAxLAorICAgIDB4MS5wNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1NTU1cC01NywKKyAgICAtMHgxLnAxLAorICAgIDB4MS5wNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTUKKyAgICAweDEuZmZmZmZjMDAwMDA3ZmZmZmYwMDAwMDFmZmZmZjE1NTVwLTU3LAorICAgIDB4MS5wMSwKKyAgICAweDEuMDAwMDAycDU3CisgIH0sCisgIHsgLy8gRW50cnkgNTk2CisgICAgLTB4MS5mZmZmZmMwMDAwMDdmZmZmZjAwMDAwMWZmZmZmMTU1NXAtNTcsCisgICAgLTB4MS5wMSwKKyAgICAweDEuMDAwMDAycDU3CisgIH0sCisgIHsgLy8gRW50cnkgNTk3CisgICAgMHgxLjAwMDAwMzAwMDAwMzAwMDAwMzAwMDAwMmZmZmZhZGFhcC01NiwKKyAgICAweDEuMDAwMDAycDEsCisgICAgMHgxLmZmZmZmZXA1NgorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIC0weDEuMDAwMDAzMDAwMDAzMDAwMDAzMDAwMDAyZmZmZmFkYWFwLTU2LAorICAgIC0weDEuMDAwMDAycDEsCisgICAgMHgxLmZmZmZmZXA1NgorICB9LAorICB7IC8vIEVudHJ5IDU5OQorICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYWFhYXAtNTYsCisgICAgMHgxLjAwMDAwMnAxLAorICAgIDB4MS5wNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDAKKyAgICAtMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZhYWFhcC01NiwKKyAgICAtMHgxLjAwMDAwMnAxLAorICAgIDB4MS5wNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjU1NTVwLTU3LAorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAweDEuMDAwMDAycDU3CisgIH0sCisgIHsgLy8gRW50cnkgNjAyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNTU1NXAtNTcsCisgICAgLTB4MS4wMDAwMDJwMSwKKyAgICAweDEuMDAwMDAycDU3CisgIH0sCisgIHsgLy8gRW50cnkgNjAzCisgICAgLTB4MS4wMDAwMDMwMDAwMDMwMDAwMDMwMDAwMDJmZmZmYWRhYXAtNTYsCisgICAgLTB4MS4wMDAwMDJwMSwKKyAgICAweDEuZmZmZmZlcDU2CisgIH0sCisgIHsgLy8gRW50cnkgNjA0CisgICAgMHgxLjAwMDAwMzAwMDAwMzAwMDAwMzAwMDAwMmZmZmZhZGFhcC01NiwKKyAgICAweDEuMDAwMDAycDEsCisgICAgMHgxLmZmZmZmZXA1NgorICB9LAorICB7IC8vIEVudHJ5IDYwNQorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmFhYWFwLTU2LAorICAgIC0weDEuMDAwMDAycDEsCisgICAgMHgxLnA1NworICB9LAorICB7IC8vIEVudHJ5IDYwNgorICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYWFhYXAtNTYsCisgICAgMHgxLjAwMDAwMnAxLAorICAgIDB4MS5wNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1NTU1cC01NywKKyAgICAtMHgxLjAwMDAwMnAxLAorICAgIDB4MS4wMDAwMDJwNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDgKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjU1NTVwLTU3LAorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAweDEuMDAwMDAycDU3CisgIH0sCisgIHsgLy8gRW50cnkgNjA5CisgICAgLTB4MS4wMDAwMDEwMDAwMDEwMDAwMDEwMDAwMDBmZmZmYWJhYXAtNTYsCisgICAgLTB4MS5wMSwKKyAgICAweDEuZmZmZmZlcDU2CisgIH0sCisgIHsgLy8gRW50cnkgNjEwCisgICAgMHgxLjAwMDAwMTAwMDAwMTAwMDAwMTAwMDAwMGZmZmZhYmFhcC01NiwKKyAgICAweDEucDEsCisgICAgMHgxLmZmZmZmZXA1NgorICB9LAorICB7IC8vIEVudHJ5IDYxMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjU1NTVwLTU3LAorICAgIC0weDEucDEsCisgICAgMHgxLnA1NworICB9LAorICB7IC8vIEVudHJ5IDYxMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNTU1NXAtNTcsCisgICAgMHgxLnAxLAorICAgIDB4MS5wNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTMKKyAgICAtMHgxLmZmZmZmYzAwMDAwN2ZmZmZmMDAwMDAxZmZmZmYxNTU1cC01NywKKyAgICAtMHgxLnAxLAorICAgIDB4MS4wMDAwMDJwNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTQKKyAgICAweDEuZmZmZmZjMDAwMDA3ZmZmZmYwMDAwMDFmZmZmZjE1NTVwLTU3LAorICAgIDB4MS5wMSwKKyAgICAweDEuMDAwMDAycDU3CisgIH0sCisgIHsgLy8gRW50cnkgNjE1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNTU1NXAtNTcsCisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAweDEuZmZmZmZlcDU2CisgIH0sCisgIHsgLy8gRW50cnkgNjE2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1NTU1cC01NywKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXA1NgorICB9LAorICB7IC8vIEVudHJ5IDYxNworICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjU1NTVwLTU3LAorICAgIC0weDEuZmZmZmZlcDAsCisgICAgMHgxLnA1NworICB9LAorICB7IC8vIEVudHJ5IDYxOAorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNTU1NXAtNTcsCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5wNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTkKKyAgICAtMHgxLmZmZmZmYTAwMDAwYmZmZmZlODAwMDAyZmZmZmVmNTU1cC01NywKKyAgICAtMHgxLmZmZmZmZXAwLAorICAgIDB4MS4wMDAwMDJwNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjAKKyAgICAweDEuZmZmZmZhMDAwMDBiZmZmZmU4MDAwMDJmZmZmZWY1NTVwLTU3LAorICAgIDB4MS5mZmZmZmVwMCwKKyAgICAweDEuMDAwMDAycDU3CisgIH0sCisgIHsgLy8gRW50cnkgNjIxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZjU1NTU1NTU1NTU1NTU1NWJicC0zMSwKKyAgICAweDEuZmZmZmZlcDEsCisgICAgMHgxLmZmZmZmZXAzMQorICB9LAorICB7IC8vIEVudHJ5IDYyMgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmNTU1NTU1NTU1NTU1NTU1YmJwLTMxLAorICAgIC0weDEuZmZmZmZlcDEsCisgICAgMHgxLmZmZmZmZXAzMQorICB9LAorICB7IC8vIEVudHJ5IDYyMworICAgIDB4MS5mZmZmZmRmZmZmZmZmZmY1NTU1NTc1NTU1NTM1NTViYnAtMzEsCisgICAgMHgxLmZmZmZmZXAxLAorICAgIDB4MS5wMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjQKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZjU1NTU1NzU1NTU1MzU1NWJicC0zMSwKKyAgICAtMHgxLmZmZmZmZXAxLAorICAgIDB4MS5wMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjUKKyAgICAweDEuZmZmZmZhMDAwMDBiZmZmNTNkNTViNTg1NTM3NGY1YzJwLTMxLAorICAgIDB4MS5mZmZmZmVwMSwKKyAgICAweDEuMDAwMDAycDMyCisgIH0sCisgIHsgLy8gRW50cnkgNjI2CisgICAgLTB4MS5mZmZmZmEwMDAwMGJmZmY1M2Q1NWI1ODU1Mzc0ZjVjMnAtMzEsCisgICAgLTB4MS5mZmZmZmVwMSwKKyAgICAweDEuMDAwMDAycDMyCisgIH0sCisgIHsgLy8gRW50cnkgNjI3CisgICAgMHgxLjAwMDAwMTAwMDAwMGZmZmFhYmFhOWFhYmFhOGFhYmRkcC0zMCwKKyAgICAweDEucDIsCisgICAgMHgxLmZmZmZmZXAzMQorICB9LAorICB7IC8vIEVudHJ5IDYyOAorICAgIC0weDEuMDAwMDAxMDAwMDAwZmZmYWFiYWE5YWFiYWE4YWFiZGRwLTMwLAorICAgIC0weDEucDIsCisgICAgMHgxLmZmZmZmZXAzMQorICB9LAorICB7IC8vIEVudHJ5IDYyOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTViYnAtMzEsCisgICAgMHgxLnAyLAorICAgIDB4MS5wMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZjU1NTU1NTU1NTU1NTU1NWJicC0zMSwKKyAgICAtMHgxLnAyLAorICAgIDB4MS5wMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzEKKyAgICAweDEuZmZmZmZjMDAwMDA3ZmZmNTQ1NTU5NTc1NTQ1NTE1YmZwLTMxLAorICAgIDB4MS5wMiwKKyAgICAweDEuMDAwMDAycDMyCisgIH0sCisgIHsgLy8gRW50cnkgNjMyCisgICAgLTB4MS5mZmZmZmMwMDAwMDdmZmY1NDU1NTk1NzU1NDU1MTViZnAtMzEsCisgICAgLTB4MS5wMiwKKyAgICAweDEuMDAwMDAycDMyCisgIH0sCisgIHsgLy8gRW50cnkgNjMzCisgICAgMHgxLjAwMDAwMzAwMDAwMmZmZmFhZGFhN2FhZGE5ZWFhZGRicC0zMCwKKyAgICAweDEuMDAwMDAycDIsCisgICAgMHgxLmZmZmZmZXAzMQorICB9LAorICB7IC8vIEVudHJ5IDYzNAorICAgIC0weDEuMDAwMDAzMDAwMDAyZmZmYWFkYWE3YWFkYTllYWFkZGJwLTMwLAorICAgIC0weDEuMDAwMDAycDIsCisgICAgMHgxLmZmZmZmZXAzMQorICB9LAorICB7IC8vIEVudHJ5IDYzNQorICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZhYWFhYThhYWFhYTZhYWFkZHAtMzAsCisgICAgMHgxLjAwMDAwMnAyLAorICAgIDB4MS5wMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzYKKyAgICAtMHgxLjAwMDAwMWZmZmZmZmZmZmFhYWFhOGFhYWFhNmFhYWRkcC0zMCwKKyAgICAtMHgxLjAwMDAwMnAyLAorICAgIDB4MS5wMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmNTU1NTU1NTU1NTU1NTU1YmJwLTMxLAorICAgIDB4MS4wMDAwMDJwMiwKKyAgICAweDEuMDAwMDAycDMyCisgIH0sCisgIHsgLy8gRW50cnkgNjM4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTViYnAtMzEsCisgICAgLTB4MS4wMDAwMDJwMiwKKyAgICAweDEuMDAwMDAycDMyCisgIH0sCisgIHsgLy8gRW50cnkgNjM5CisgICAgLTB4MS4wMDAwMDMwMDAwMDJmZmZhYWRhYTdhYWRhOWVhYWRkYnAtMzAsCisgICAgLTB4MS4wMDAwMDJwLTIsCisgICAgMHgxLmZmZmZmZXAyNworICB9LAorICB7IC8vIEVudHJ5IDY0MAorICAgIDB4MS4wMDAwMDMwMDAwMDJmZmZhYWRhYTdhYWRhOWVhYWRkYnAtMzAsCisgICAgMHgxLjAwMDAwMnAtMiwKKyAgICAweDEuZmZmZmZlcDI3CisgIH0sCisgIHsgLy8gRW50cnkgNjQxCisgICAgLTB4MS4wMDAwMDFmZmZmZmZmZmZhYWFhYThhYWFhYTZhYWFkZHAtMzAsCisgICAgLTB4MS4wMDAwMDJwLTIsCisgICAgMHgxLnAyOAorICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZhYWFhYThhYWFhYTZhYWFkZHAtMzAsCisgICAgMHgxLjAwMDAwMnAtMiwKKyAgICAweDEucDI4CisgIH0sCisgIHsgLy8gRW50cnkgNjQzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTViYnAtMzEsCisgICAgLTB4MS4wMDAwMDJwLTIsCisgICAgMHgxLjAwMDAwMnAyOAorICB9LAorICB7IC8vIEVudHJ5IDY0NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTViYnAtMzEsCisgICAgMHgxLjAwMDAwMnAtMiwKKyAgICAweDEuMDAwMDAycDI4CisgIH0sCisgIHsgLy8gRW50cnkgNjQ1CisgICAgLTB4MS4wMDAwMDEwMDAwMDBmZmZhYWJhYTlhYWJhYThhYWJkZHAtMzAsCisgICAgLTB4MS5wLTIsCisgICAgMHgxLmZmZmZmZXAyNworICB9LAorICB7IC8vIEVudHJ5IDY0NgorICAgIDB4MS4wMDAwMDEwMDAwMDBmZmZhYWJhYTlhYWJhYThhYWJkZHAtMzAsCisgICAgMHgxLnAtMiwKKyAgICAweDEuZmZmZmZlcDI3CisgIH0sCisgIHsgLy8gRW50cnkgNjQ3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTViYnAtMzEsCisgICAgLTB4MS5wLTIsCisgICAgMHgxLnAyOAorICB9LAorICB7IC8vIEVudHJ5IDY0OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTViYnAtMzEsCisgICAgMHgxLnAtMiwKKyAgICAweDEucDI4CisgIH0sCisgIHsgLy8gRW50cnkgNjQ5CisgICAgLTB4MS5mZmZmZmMwMDAwMDdmZmY1NDU1NTk1NzU1NDU1MTViZnAtMzEsCisgICAgLTB4MS5wLTIsCisgICAgMHgxLjAwMDAwMnAyOAorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIDB4MS5mZmZmZmMwMDAwMDdmZmY1NDU1NTk1NzU1NDU1MTViZnAtMzEsCisgICAgMHgxLnAtMiwKKyAgICAweDEuMDAwMDAycDI4CisgIH0sCisgIHsgLy8gRW50cnkgNjUxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTViYnAtMzEsCisgICAgLTB4MS5mZmZmZmVwLTMsCisgICAgMHgxLmZmZmZmZXAyNworICB9LAorICB7IC8vIEVudHJ5IDY1MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTViYnAtMzEsCisgICAgMHgxLmZmZmZmZXAtMywKKyAgICAweDEuZmZmZmZlcDI3CisgIH0sCisgIHsgLy8gRW50cnkgNjUzCisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmY1NTU1NTc1NTU1NTM1NTViYnAtMzEsCisgICAgLTB4MS5mZmZmZmVwLTMsCisgICAgMHgxLnAyOAorICB9LAorICB7IC8vIEVudHJ5IDY1NAorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmY1NTU1NTc1NTU1NTM1NTViYnAtMzEsCisgICAgMHgxLmZmZmZmZXAtMywKKyAgICAweDEucDI4CisgIH0sCisgIHsgLy8gRW50cnkgNjU1CisgICAgLTB4MS5mZmZmZmEwMDAwMGJmZmY1M2Q1NWI1ODU1Mzc0ZjVjMnAtMzEsCisgICAgLTB4MS5mZmZmZmVwLTMsCisgICAgMHgxLjAwMDAwMnAyOAorICB9LAorICB7IC8vIEVudHJ5IDY1NgorICAgIDB4MS5mZmZmZmEwMDAwMGJmZmY1M2Q1NWI1ODU1Mzc0ZjVjMnAtMzEsCisgICAgMHgxLmZmZmZmZXAtMywKKyAgICAweDEuMDAwMDAycDI4CisgIH0sCisgIHsgLy8gRW50cnkgNjU3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS5mZmZmZmVwMiwKKyAgICAweDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEuZmZmZmZlcDIsCisgICAgMHgxLmZmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjU5CisgICAgMHgxLjkyMWZiNDQ0NDJkMTA0Njk4OTYyMWE2YzU3MGQ4ZjA0cC0xLAorICAgIDB4MS5mZmZmZmVwMiwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjAKKyAgICAtMHgxLjkyMWZiNDQ0NDJkMTA0Njk4OTYyMWE2YzU3MGQ4ZjA0cC0xLAorICAgIC0weDEuZmZmZmZlcDIsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjYxCisgICAgMHgxLjkyMWZiMjQ0NDJkMzA0Njk4YjBjYzUxNDAxYjgzOWM4cC0xLAorICAgIDB4MS5mZmZmZmVwMiwKKyAgICAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjIKKyAgICAtMHgxLjkyMWZiMjQ0NDJkMzA0Njk4YjBjYzUxNDAxYjgzOWM4cC0xLAorICAgIC0weDEuZmZmZmZlcDIsCisgICAgMHgxLjAwMDAwMnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjYzCisgICAgMHgxLjkyMWZiNjQ0NDJkMjA0Njk4OWI3NmZjMWFjNjJlNDQwcC0xLAorICAgIDB4MS5wMywKKyAgICAweDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjQKKyAgICAtMHgxLjkyMWZiNjQ0NDJkMjA0Njk4OWI3NmZjMWFjNjJlNDQwcC0xLAorICAgIC0weDEucDMsCisgICAgMHgxLmZmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjY1CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS5wMywKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjYKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEucDMsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjY3CisgICAgMHgxLjkyMWZiMzQ0NDJkMzg0Njk4ODM3NmZjMWFjNjJlNWU2cC0xLAorICAgIDB4MS5wMywKKyAgICAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjgKKyAgICAtMHgxLjkyMWZiMzQ0NDJkMzg0Njk4ODM3NmZjMWFjNjJlNWU2cC0xLAorICAgIC0weDEucDMsCisgICAgMHgxLjAwMDAwMnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjY5CisgICAgMHgxLjkyMWZiODQ0NDJkMDA0Njk4ODBjYzUxYTAxYjgzOTdicC0xLAorICAgIDB4MS4wMDAwMDJwMywKKyAgICAweDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzAKKyAgICAtMHgxLjkyMWZiODQ0NDJkMDA0Njk4ODBjYzUxYTAxYjgzOTdicC0xLAorICAgIC0weDEuMDAwMDAycDMsCisgICAgMHgxLmZmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjcxCisgICAgMHgxLjkyMWZiNzQ0NDJjZjg0Njk4YWUyMWE2YzU3MGQ4ZDVlcC0xLAorICAgIDB4MS4wMDAwMDJwMywKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzIKKyAgICAtMHgxLjkyMWZiNzQ0NDJjZjg0Njk4YWUyMWE2YzU3MGQ4ZDVlcC0xLAorICAgIC0weDEuMDAwMDAycDMsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjczCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS4wMDAwMDJwMywKKyAgICAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzQKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEuMDAwMDAycDMsCisgICAgMHgxLjAwMDAwMnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjc1CisgICAgLTB4MS5kYWM2NzUyMmU4ODNhZWRjYzljNDczNDM4ZTkzNjk2NHAtMiwKKyAgICAtMHgxLjAwMDAwMnAzLAorICAgIDB4MS5mZmZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDY3NgorICAgIDB4MS5kYWM2NzUyMmU4ODNhZWRjYzljNDczNDM4ZTkzNjk2NHAtMiwKKyAgICAweDEuMDAwMDAycDMsCisgICAgMHgxLmZmZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjc3CisgICAgLTB4MS5kYWM2NzM4OTRlZTZlMjBmZmU1NTJjZjYxMzAzNWU0MXAtMiwKKyAgICAtMHgxLjAwMDAwMnAzLAorICAgIDB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDY3OAorICAgIDB4MS5kYWM2NzM4OTRlZTZlMjBmZmU1NTJjZjYxMzAzNWU0MXAtMiwKKyAgICAweDEuMDAwMDAycDMsCisgICAgMHgxLnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjc5CisgICAgLTB4MS5kYWM2NzA1NjFiYjRmNjhhZGZjODhiZDk3ODc1MWEwNnAtMiwKKyAgICAtMHgxLjAwMDAwMnAzLAorICAgIDB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDY4MAorICAgIDB4MS5kYWM2NzA1NjFiYjRmNjhhZGZjODhiZDk3ODc1MWEwNnAtMiwKKyAgICAweDEuMDAwMDAycDMsCisgICAgMHgxLjAwMDAwMnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjgxCisgICAgLTB4MS5kYWM2NzFlZmI1NGZkN2QyOGVjZDUzMzBjODlhM2Q3M3AtMiwKKyAgICAtMHgxLnAzLAorICAgIDB4MS5mZmZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDY4MgorICAgIDB4MS5kYWM2NzFlZmI1NGZkN2QyOGVjZDUzMzBjODlhM2Q3M3AtMiwKKyAgICAweDEucDMsCisgICAgMHgxLmZmZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjgzCisgICAgLTB4MS5kYWM2NzA1NjFiYjRmNjhhZGZjODhiZDk3ODc1MWEwNnAtMiwKKyAgICAtMHgxLnAzLAorICAgIDB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDY4NAorICAgIDB4MS5kYWM2NzA1NjFiYjRmNjhhZGZjODhiZDk3ODc1MWEwNnAtMiwKKyAgICAweDEucDMsCisgICAgMHgxLnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjg1CisgICAgLTB4MS5kYWM2NmQyMmU4ODZlMjBmZjZmZTdhMjM3OGJhZjZmOXAtMiwKKyAgICAtMHgxLnAzLAorICAgIDB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIDB4MS5kYWM2NmQyMmU4ODZlMjBmZjZmZTdhMjM3OGJhZjZmOXAtMiwKKyAgICAweDEucDMsCisgICAgMHgxLjAwMDAwMnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjg3CisgICAgLTB4MS5kYWM2NzA1NjFiYjRmNjhhZGZjODhiZDk3ODc1MWEwNnAtMiwKKyAgICAtMHgxLmZmZmZmZXAyLAorICAgIDB4MS5mZmZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDY4OAorICAgIDB4MS5kYWM2NzA1NjFiYjRmNjhhZGZjODhiZDk3ODc1MWEwNnAtMiwKKyAgICAweDEuZmZmZmZlcDIsCisgICAgMHgxLmZmZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjg5CisgICAgLTB4MS5kYWM2NmViYzgyMWIwYjA1YzExNWIwMDdlZTI2MmY3OHAtMiwKKyAgICAtMHgxLmZmZmZmZXAyLAorICAgIDB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDY5MAorICAgIDB4MS5kYWM2NmViYzgyMWIwYjA1YzExNWIwMDdlZTI2MmY3OHAtMiwKKyAgICAweDEuZmZmZmZlcDIsCisgICAgMHgxLnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjkxCisgICAgLTB4MS5kYWM2NmI4OTRlZWVlMjBmZjc2NjNlMGEwNTVjMjQ2MHAtMiwKKyAgICAtMHgxLmZmZmZmZXAyLAorICAgIDB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDY5MgorICAgIDB4MS5kYWM2NmI4OTRlZWVlMjBmZjc2NjNlMGEwNTVjMjQ2MHAtMiwKKyAgICAweDEuZmZmZmZlcDIsCisgICAgMHgxLjAwMDAwMnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjkzCisgICAgMHgxLjcyYzQzZmE1NzBhYTVjOWU1NjRjN2YwYTViZWZhNDg0cDEsCisgICAgMHgxLmZmZmZmZXAyLAorICAgIC0weDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTQKKyAgICAtMHgxLjcyYzQzZmE1NzBhYTVjOWU1NjRjN2YwYTViZWZhNDg0cDEsCisgICAgLTB4MS5mZmZmZmVwMiwKKyAgICAtMHgxLjAwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgNjk1CisgICAgMHgxLjcyYzQzZjY5MzQ2ZWM2ZWE4MzNlOGM4ZjgxMWQ1YjIzcDEsCisgICAgMHgxLmZmZmZmZXAyLAorICAgIC0weDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTYKKyAgICAtMHgxLjcyYzQzZjY5MzQ2ZWM2ZWE4MzNlOGM4ZjgxMWQ1YjIzcDEsCisgICAgLTB4MS5mZmZmZmVwMiwKKyAgICAtMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNjk3CisgICAgMHgxLjcyYzQzZjRiMTY1MGE3MDZkYmQzZDEzODQyYzNmNmE1cDEsCisgICAgMHgxLmZmZmZmZXAyLAorICAgIC0weDEuZmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTgKKyAgICAtMHgxLjcyYzQzZjRiMTY1MGE3MDZkYmQzZDEzODQyYzNmNmE1cDEsCisgICAgLTB4MS5mZmZmZmVwMiwKKyAgICAtMHgxLmZmZmZmZXA0CisgIH0sCisgIHsgLy8gRW50cnkgNjk5CisgICAgMHgxLjcyYzQzZjg3NTI4YzcxZTBjNTljZDNjZDRlZWRjOTFjcDEsCisgICAgMHgxLnAzLAorICAgIC0weDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDAKKyAgICAtMHgxLjcyYzQzZjg3NTI4YzcxZTBjNTljZDNjZDRlZWRjOTFjcDEsCisgICAgLTB4MS5wMywKKyAgICAtMHgxLjAwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgNzAxCisgICAgMHgxLjcyYzQzZjRiMTY1MGE3MDZkYmQzZDEzODQyYzNmNmE1cDEsCisgICAgMHgxLnAzLAorICAgIC0weDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDIKKyAgICAtMHgxLjcyYzQzZjRiMTY1MGE3MDZkYmQzZDEzODQyYzNmNmE1cDEsCisgICAgLTB4MS5wMywKKyAgICAtMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNzAzCisgICAgMHgxLjcyYzQzZjJjZjgzMjZjOTAyOGNhODY2MDdiNjY3YThjcDEsCisgICAgMHgxLnAzLAorICAgIC0weDEuZmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDQKKyAgICAtMHgxLjcyYzQzZjJjZjgzMjZjOTAyOGNhODY2MDdiNjY3YThjcDEsCisgICAgLTB4MS5wMywKKyAgICAtMHgxLmZmZmZmZXA0CisgIH0sCisgIHsgLy8gRW50cnkgNzA1CisgICAgMHgxLjcyYzQzZjRiMTY1MGE3MDZkYmQzZDEzODQyYzNmNmE1cDEsCisgICAgMHgxLjAwMDAwMnAzLAorICAgIC0weDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDYKKyAgICAtMHgxLjcyYzQzZjRiMTY1MGE3MDZkYmQzZDEzODQyYzNmNmE1cDEsCisgICAgLTB4MS4wMDAwMDJwMywKKyAgICAtMHgxLjAwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgNzA3CisgICAgMHgxLjcyYzQzZjBlZGExNDcxZTBjNGNmNzUyYTI2Y2ExMGE2cDEsCisgICAgMHgxLjAwMDAwMnAzLAorICAgIC0weDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDgKKyAgICAtMHgxLjcyYzQzZjBlZGExNDcxZTBjNGNmNzUyYTI2Y2ExMGE2cDEsCisgICAgLTB4MS4wMDAwMDJwMywKKyAgICAtMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNzA5CisgICAgMHgxLjcyYzQzZWYwYmJmNjAyNDNmYWE2NmVhZjk1YjhlYjhlcDEsCisgICAgMHgxLjAwMDAwMnAzLAorICAgIC0weDEuZmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTAKKyAgICAtMHgxLjcyYzQzZWYwYmJmNjAyNDNmYWE2NmVhZjk1YjhlYjhlcDEsCisgICAgLTB4MS4wMDAwMDJwMywKKyAgICAtMHgxLmZmZmZmZXA0CisgIH0sCisgIHsgLy8gRW50cnkgNzExCisgICAgMHgxLmZkNWJhOWFhYzJmNmRjNjU5MTJmMzEzZTdkMTExZGVmcC00LAorICAgIDB4MS5mZmZmZmVwMiwKKyAgICAweDEuZmZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTIKKyAgICAtMHgxLmZkNWJhOWFhYzJmNmRjNjU5MTJmMzEzZTdkMTExZGVmcC00LAorICAgIC0weDEuZmZmZmZlcDIsCisgICAgMHgxLmZmZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgNzEzCisgICAgMHgxLmZkNWJhN2IyYTM3NGRjODQ5NzEyM2I2NGIzOThhYWUycC00LAorICAgIDB4MS5mZmZmZmVwMiwKKyAgICAweDEucDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTQKKyAgICAtMHgxLmZkNWJhN2IyYTM3NGRjODQ5NzEyM2I2NGIzOThhYWUycC00LAorICAgIC0weDEuZmZmZmZlcDIsCisgICAgMHgxLnA2CisgIH0sCisgIHsgLy8gRW50cnkgNzE1CisgICAgMHgxLmZkNWJhM2MyNjQ3YzdlZjZjNzZkNmQ1ZWE5N2JhYjc1cC00LAorICAgIDB4MS5mZmZmZmVwMiwKKyAgICAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTYKKyAgICAtMHgxLmZkNWJhM2MyNjQ3YzdlZjZjNzZkNmQ1ZWE5N2JhYjc1cC00LAorICAgIC0weDEuZmZmZmZlcDIsCisgICAgMHgxLjAwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgNzE3CisgICAgMHgxLmZkNWJhYmEyZTI3YWM0ZTMxZWRlNWM0ZDM0ODVlYmFjcC00LAorICAgIDB4MS5wMywKKyAgICAweDEuZmZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTgKKyAgICAtMHgxLmZkNWJhYmEyZTI3YWM0ZTMxZWRlNWM0ZDM0ODVlYmFjcC00LAorICAgIC0weDEucDMsCisgICAgMHgxLmZmZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgNzE5CisgICAgMHgxLmZkNWJhOWFhYzJmNmRjNjU5MTJmMzEzZTdkMTExZGVmcC00LAorICAgIDB4MS5wMywKKyAgICAweDEucDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjAKKyAgICAtMHgxLmZkNWJhOWFhYzJmNmRjNjU5MTJmMzEzZTdkMTExZGVmcC00LAorICAgIC0weDEucDMsCisgICAgMHgxLnA2CisgIH0sCisgIHsgLy8gRW50cnkgNzIxCisgICAgMHgxLmZkNWJhNWJhODNmYWFkOWVhNTUwZTZkNTRiMDJkMGY5cC00LAorICAgIDB4MS5wMywKKyAgICAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjIKKyAgICAtMHgxLmZkNWJhNWJhODNmYWFkOWVhNTUwZTZkNTRiMDJkMGY5cC00LAorICAgIC0weDEucDMsCisgICAgMHgxLjAwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgNzIzCisgICAgMHgxLmZkNWJhZjkzMjE4MjY3NTU2OGI5ZDFkYWYyZmQxNzI3cC00LAorICAgIDB4MS4wMDAwMDJwMywKKyAgICAweDEuZmZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjQKKyAgICAtMHgxLmZkNWJhZjkzMjE4MjY3NTU2OGI5ZDFkYWYyZmQxNzI3cC00LAorICAgIC0weDEuMDAwMDAycDMsCisgICAgMHgxLmZmZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgNzI1CisgICAgMHgxLmZkNWJhZDliMDFmYWFkOWViNDZlZjliZGE5OWQ0ZmRhcC00LAorICAgIDB4MS4wMDAwMDJwMywKKyAgICAweDEucDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjYKKyAgICAtMHgxLmZkNWJhZDliMDFmYWFkOWViNDZlZjliZGE5OWQ0ZmRhcC00LAorICAgIC0weDEuMDAwMDAycDMsCisgICAgMHgxLnA2CisgIH0sCisgIHsgLy8gRW50cnkgNzI3CisgICAgMHgxLmZkNWJhOWFhYzJmNmRjNjU5MTJmMzEzZTdkMTExZGVmcC00LAorICAgIDB4MS4wMDAwMDJwMywKKyAgICAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjgKKyAgICAtMHgxLmZkNWJhOWFhYzJmNmRjNjU5MTJmMzEzZTdkMTExZGVmcC00LAorICAgIC0weDEuMDAwMDAycDMsCisgICAgMHgxLjAwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgNzI5CisgICAgLTB4MS5mZjU1YzE2Y2Q1ZGU4YTkxNjY1Yjg0YWJiOTVlMGNjN3AtNSwKKyAgICAtMHgxLjAwMDAwMnAzLAorICAgIDB4MS5mZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDczMAorICAgIDB4MS5mZjU1YzE2Y2Q1ZGU4YTkxNjY1Yjg0YWJiOTVlMGNjN3AtNSwKKyAgICAweDEuMDAwMDAycDMsCisgICAgMHgxLmZmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgNzMxCisgICAgLTB4MS5mZjU1YmY2ZWQzZGE5ODc5ODI2NWNjM2YyN2M4OTZjN3AtNSwKKyAgICAtMHgxLjAwMDAwMnAzLAorICAgIDB4MS5wNworICB9LAorICB7IC8vIEVudHJ5IDczMgorICAgIDB4MS5mZjU1YmY2ZWQzZGE5ODc5ODI2NWNjM2YyN2M4OTZjN3AtNSwKKyAgICAweDEuMDAwMDAycDMsCisgICAgMHgxLnA3CisgIH0sCisgIHsgLy8gRW50cnkgNzMzCisgICAgLTB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAtMHgxLjAwMDAwMnAzLAorICAgIDB4MS4wMDAwMDJwNworICB9LAorICB7IC8vIEVudHJ5IDczNAorICAgIDB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAweDEuMDAwMDAycDMsCisgICAgMHgxLjAwMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgNzM1CisgICAgLTB4MS5mZjU1YmQ3MGQxZGU5YTcxOTI1MDdmMDM3ZTU0MTRiYnAtNSwKKyAgICAtMHgxLnAzLAorICAgIDB4MS5mZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDczNgorICAgIDB4MS5mZjU1YmQ3MGQxZGU5YTcxOTI1MDdmMDM3ZTU0MTRiYnAtNSwKKyAgICAweDEucDMsCisgICAgMHgxLmZmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgNzM3CisgICAgLTB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAtMHgxLnAzLAorICAgIDB4MS5wNworICB9LAorICB7IC8vIEVudHJ5IDczOAorICAgIDB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAweDEucDMsCisgICAgMHgxLnA3CisgIH0sCisgIHsgLy8gRW50cnkgNzM5CisgICAgLTB4MS5mZjU1Yjc3NmNiZWE4ODg5NjJhZmQ4Mjc2YzAxYTI1ZXAtNSwKKyAgICAtMHgxLnAzLAorICAgIDB4MS4wMDAwMDJwNworICB9LAorICB7IC8vIEVudHJ5IDc0MAorICAgIDB4MS5mZjU1Yjc3NmNiZWE4ODg5NjJhZmQ4Mjc2YzAxYTI1ZXAtNSwKKyAgICAweDEucDMsCisgICAgMHgxLjAwMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgNzQxCisgICAgLTB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAtMHgxLmZmZmZmZXAyLAorICAgIDB4MS5mZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDc0MgorICAgIDB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAweDEuZmZmZmZlcDIsCisgICAgMHgxLmZmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgNzQzCisgICAgLTB4MS5mZjU1Yjk3NGNkZTA5ODczOGU1OWMwN2FhNDhkZDExMHAtNSwKKyAgICAtMHgxLmZmZmZmZXAyLAorICAgIDB4MS5wNworICB9LAorICB7IC8vIEVudHJ5IDc0NAorICAgIDB4MS5mZjU1Yjk3NGNkZTA5ODczOGU1OWMwN2FhNDhkZDExMHAtNSwKKyAgICAweDEuZmZmZmZlcDIsCisgICAgMHgxLnA3CisgIH0sCisgIHsgLy8gRW50cnkgNzQ1CisgICAgLTB4MS5mZjU1YjU3OGM5ZjA3OGEzMzcxOWE4NWVmMjllOGEyMHAtNSwKKyAgICAtMHgxLmZmZmZmZXAyLAorICAgIDB4MS4wMDAwMDJwNworICB9LAorICB7IC8vIEVudHJ5IDc0NgorICAgIDB4MS5mZjU1YjU3OGM5ZjA3OGEzMzcxOWE4NWVmMjllOGEyMHAtNSwKKyAgICAweDEuZmZmZmZlcDIsCisgICAgMHgxLjAwMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgNzQ3CisgICAgMHgxLjA0NjhhOTQ2N2U3OTM4MTA1ZGZlZjBmM2YyYWU4OWZkcDEsCisgICAgMHgxLmZmZmZmZXAyLAorICAgIC0weDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDgKKyAgICAtMHgxLjA0NjhhOTQ2N2U3OTM4MTA1ZGZlZjBmM2YyYWU4OWZkcDEsCisgICAgLTB4MS5mZmZmZmVwMiwKKyAgICAtMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzQ5CisgICAgMHgxLjA0NjhhOGUwMTgxMmJkMmYxNmEwMGNmMTk5ZWY2NDdmcDEsCisgICAgMHgxLmZmZmZmZXAyLAorICAgIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTAKKyAgICAtMHgxLjA0NjhhOGUwMTgxMmJkMmYxNmEwMGNmMTk5ZWY2NDdmcDEsCisgICAgLTB4MS5mZmZmZmVwMiwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzUxCisgICAgMHgxLjA0NjhhOGFjZTRkZjYxMDYyMGJmNzQwNmFmZWFjMDEycDEsCisgICAgMHgxLmZmZmZmZXAyLAorICAgIC0weDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTIKKyAgICAtMHgxLjA0NjhhOGFjZTRkZjYxMDYyMGJmNzQwNmFmZWFjMDEycDEsCisgICAgLTB4MS5mZmZmZmVwMiwKKyAgICAtMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzUzCisgICAgMHgxLjA0NjhhOTEzNGI0NTllNzZjNDkxMDgyYTQzM2M4ODk5cDEsCisgICAgMHgxLnAzLAorICAgIC0weDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTQKKyAgICAtMHgxLjA0NjhhOTEzNGI0NTllNzZjNDkxMDgyYTQzM2M4ODk5cDEsCisgICAgLTB4MS5wMywKKyAgICAtMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzU1CisgICAgMHgxLjA0NjhhOGFjZTRkZjYxMDYyMGJmNzQwNmFmZWFjMDEycDEsCisgICAgMHgxLnAzLAorICAgIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTYKKyAgICAtMHgxLjA0NjhhOGFjZTRkZjYxMDYyMGJmNzQwNmFmZWFjMDEycDEsCisgICAgLTB4MS5wMywKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzU3CisgICAgMHgxLjA0NjhhODc5YjFhYzIzOTU3Y2U5MTg4YzdlYTBlMmMwcDEsCisgICAgMHgxLnAzLAorICAgIC0weDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTgKKyAgICAtMHgxLjA0NjhhODc5YjFhYzIzOTU3Y2U5MTg4YzdlYTBlMmMwcDEsCisgICAgLTB4MS5wMywKKyAgICAtMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzU5CisgICAgMHgxLjA0NjhhOGFjZTRkZjYxMDYyMGJmNzQwNmFmZWFjMDEycDEsCisgICAgMHgxLjAwMDAwMnAzLAorICAgIC0weDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjAKKyAgICAtMHgxLjA0NjhhOGFjZTRkZjYxMDYyMGJmNzQwNmFmZWFjMDEycDEsCisgICAgLTB4MS4wMDAwMDJwMywKKyAgICAtMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzYxCisgICAgMHgxLjA0NjhhODQ2N2U3OTllNzZjM2E2MzFjZmVmZjM3YmIwcDEsCisgICAgMHgxLjAwMDAwMnAzLAorICAgIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjIKKyAgICAtMHgxLjA0NjhhODQ2N2U3OTllNzZjM2E2MzFjZmVmZjM3YmIwcDEsCisgICAgLTB4MS4wMDAwMDJwMywKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzYzCisgICAgMHgxLjA0NjhhODEzNGI0NjllNzZjM2IzMmE0Y2MxODdhMTVkcDEsCisgICAgMHgxLjAwMDAwMnAzLAorICAgIC0weDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjQKKyAgICAtMHgxLjA0NjhhODEzNGI0NjllNzZjM2IzMmE0Y2MxODdhMTVkcDEsCisgICAgLTB4MS4wMDAwMDJwMywKKyAgICAtMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzY1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgMHgxLmZmZmZmZXAtMTAzLAorICAgIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgLTB4MS5mZmZmZmVwLTEwMywKKyAgICAweDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzY3CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgMHgxLmZmZmZmZXAtMTAzLAorICAgIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjgKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgLTB4MS5mZmZmZmVwLTEwMywKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzY5CisgICAgMHgxLmZmZmZmYTAwMDAwYmZmZmZlODAwMDAyZmZmZmZhMHAtMTAxLAorICAgIDB4MS5mZmZmZmVwLTEwMywKKyAgICAweDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzcwCisgICAgLTB4MS5mZmZmZmEwMDAwMGJmZmZmZTgwMDAwMmZmZmZmYTBwLTEwMSwKKyAgICAtMHgxLmZmZmZmZXAtMTAzLAorICAgIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzEKKyAgICAweDEuMDAwMDAxMDAwMDAxMDAwMDAxMDAwMDAxMDAwMDAxcC0xMDAsCisgICAgMHgxLnAtMTAyLAorICAgIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzIKKyAgICAtMHgxLjAwMDAwMTAwMDAwMTAwMDAwMTAwMDAwMTAwMDAwMXAtMTAwLAorICAgIC0weDEucC0xMDIsCisgICAgMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDc3MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIDB4MS5wLTEwMiwKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzc0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIC0weDEucC0xMDIsCisgICAgMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDc3NQorICAgIDB4MS5mZmZmZmMwMDAwMDdmZmZmZjAwMDAwMWZmZmZmYzBwLTEwMSwKKyAgICAweDEucC0xMDIsCisgICAgMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDc3NgorICAgIC0weDEuZmZmZmZjMDAwMDA3ZmZmZmYwMDAwMDFmZmZmZmMwcC0xMDEsCisgICAgLTB4MS5wLTEwMiwKKyAgICAweDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzc3CisgICAgMHgxLjAwMDAwMzAwMDAwMzAwMDAwMzAwMDAwMzAwMDAwM3AtMTAwLAorICAgIDB4MS4wMDAwMDJwLTEwMiwKKyAgICAweDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzc4CisgICAgLTB4MS4wMDAwMDMwMDAwMDMwMDAwMDMwMDAwMDMwMDAwMDNwLTEwMCwKKyAgICAtMHgxLjAwMDAwMnAtMTAyLAorICAgIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzkKKyAgICAweDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMCwKKyAgICAweDEuMDAwMDAycC0xMDIsCisgICAgMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDc4MAorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMCwKKyAgICAtMHgxLjAwMDAwMnAtMTAyLAorICAgIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMSwKKyAgICAweDEuMDAwMDAycC0xMDIsCisgICAgMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDc4MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMSwKKyAgICAtMHgxLjAwMDAwMnAtMTAyLAorICAgIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMSwKKyAgICAweDEuZmZmZmZjcDIsCisgICAgMHgxLmZmZmZmY3AxMDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgLTB4MS5mZmZmZmNwMiwKKyAgICAweDEuZmZmZmZjcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDc4NQorICAgIDB4MS5mZmZmZmRmZmZmZmRmZmZmZmRmZmZmZmRmZmZmZmRmZnAtMTAxLAorICAgIDB4MS5mZmZmZmNwMiwKKyAgICAweDEuZmZmZmZlcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDc4NgorICAgIC0weDEuZmZmZmZkZmZmZmZkZmZmZmZkZmZmZmZkZmZmZmZkZmZwLTEwMSwKKyAgICAtMHgxLmZmZmZmY3AyLAorICAgIDB4MS5mZmZmZmVwMTAyCisgIH0sCisgIHsgLy8gRW50cnkgNzg3CisgICAgMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgMHgxLmZmZmZmY3AyLAorICAgIDB4MS5wMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNzg4CisgICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIC0weDEuZmZmZmZjcDIsCisgICAgMHgxLnAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODkKKyAgICAweDEuZmZmZmY4MDAwMDBmZmZmZmUwMDAwMDNmZmZmZjgwcC0xMDEsCisgICAgMHgxLmZmZmZmY3AyLAorICAgIDB4MS4wMDAwMDJwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNzkwCisgICAgLTB4MS5mZmZmZjgwMDAwMGZmZmZmZTAwMDAwM2ZmZmZmODBwLTEwMSwKKyAgICAtMHgxLmZmZmZmY3AyLAorICAgIDB4MS4wMDAwMDJwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNzkxCisgICAgMHgxLmZmZmZmNDAwMDAyZmZmZmY0MDAwMDJmZmZmZjRwLTEwMSwKKyAgICAweDEuZmZmZmZjcDIsCisgICAgMHgxLjAwMDAwNHAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTIKKyAgICAtMHgxLmZmZmZmNDAwMDAyZmZmZmY0MDAwMDJmZmZmZjRwLTEwMSwKKyAgICAtMHgxLmZmZmZmY3AyLAorICAgIDB4MS4wMDAwMDRwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNzkzCisgICAgMHgxLjAwMDAwMTAwMDAwMjAwMDAwNDAwMDAwODAwMDAxMHAtMTAwLAorICAgIDB4MS5mZmZmZmVwMiwKKyAgICAweDEuZmZmZmZjcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDc5NAorICAgIC0weDEuMDAwMDAxMDAwMDAyMDAwMDA0MDAwMDA4MDAwMDEwcC0xMDAsCisgICAgLTB4MS5mZmZmZmVwMiwKKyAgICAweDEuZmZmZmZjcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDc5NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIDB4MS5mZmZmZmVwMiwKKyAgICAweDEuZmZmZmZlcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDc5NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMSwKKyAgICAtMHgxLmZmZmZmZXAyLAorICAgIDB4MS5mZmZmZmVwMTAyCisgIH0sCisgIHsgLy8gRW50cnkgNzk3CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgMHgxLmZmZmZmZXAyLAorICAgIDB4MS5wMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNzk4CisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIC0weDEuZmZmZmZlcDIsCisgICAgMHgxLnAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTkKKyAgICAweDEuZmZmZmZhMDAwMDBiZmZmZmU4MDAwMDJmZmZmZmEwcC0xMDEsCisgICAgMHgxLmZmZmZmZXAyLAorICAgIDB4MS4wMDAwMDJwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgODAwCisgICAgLTB4MS5mZmZmZmEwMDAwMGJmZmZmZTgwMDAwMmZmZmZmYTBwLTEwMSwKKyAgICAtMHgxLmZmZmZmZXAyLAorICAgIDB4MS4wMDAwMDJwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgODAxCisgICAgMHgxLmZmZmZmNjAwMDAyN2ZmZmY2MDAwMDI3ZmZmZjZwLTEwMSwKKyAgICAweDEuZmZmZmZlcDIsCisgICAgMHgxLjAwMDAwNHAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDIKKyAgICAtMHgxLmZmZmZmNjAwMDAyN2ZmZmY2MDAwMDI3ZmZmZjZwLTEwMSwKKyAgICAtMHgxLmZmZmZmZXAyLAorICAgIDB4MS4wMDAwMDRwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgODAzCisgICAgMHgxLjAwMDAwMjAwMDAwNDAwMDAwODAwMDAxMDAwMDAyMHAtMTAwLAorICAgIDB4MS5wMywKKyAgICAweDEuZmZmZmZjcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDgwNAorICAgIC0weDEuMDAwMDAyMDAwMDA0MDAwMDA4MDAwMDEwMDAwMDIwcC0xMDAsCisgICAgLTB4MS5wMywKKyAgICAweDEuZmZmZmZjcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDgwNQorICAgIDB4MS4wMDAwMDEwMDAwMDEwMDAwMDEwMDAwMDEwMDAwMDFwLTEwMCwKKyAgICAweDEucDMsCisgICAgMHgxLmZmZmZmZXAxMDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDYKKyAgICAtMHgxLjAwMDAwMTAwMDAwMTAwMDAwMTAwMDAwMTAwMDAwMXAtMTAwLAorICAgIC0weDEucDMsCisgICAgMHgxLmZmZmZmZXAxMDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMSwKKyAgICAweDEucDMsCisgICAgMHgxLnAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgLTB4MS5wMywKKyAgICAweDEucDEwMworICB9LAorICB7IC8vIEVudHJ5IDgwOQorICAgIDB4MS5mZmZmZmMwMDAwMDdmZmZmZjAwMDAwMWZmZmZmYzBwLTEwMSwKKyAgICAweDEucDMsCisgICAgMHgxLjAwMDAwMnAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTAKKyAgICAtMHgxLmZmZmZmYzAwMDAwN2ZmZmZmMDAwMDAxZmZmZmZjMHAtMTAxLAorICAgIC0weDEucDMsCisgICAgMHgxLjAwMDAwMnAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTEKKyAgICAweDEuZmZmZmY4MDAwMDFmZmZmZjgwMDAwMWZmZmZmOHAtMTAxLAorICAgIDB4MS5wMywKKyAgICAweDEuMDAwMDA0cDEwMworICB9LAorICB7IC8vIEVudHJ5IDgxMgorICAgIC0weDEuZmZmZmY4MDAwMDFmZmZmZjgwMDAwMWZmZmZmOHAtMTAxLAorICAgIC0weDEucDMsCisgICAgMHgxLjAwMDAwNHAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTMKKyAgICAweDEuMDAwMDA0MDAwMDA4MDAwMDEwMDAwMDIwMDAwMDQwcC0xMDAsCisgICAgMHgxLjAwMDAwMnAzLAorICAgIDB4MS5mZmZmZmNwMTAyCisgIH0sCisgIHsgLy8gRW50cnkgODE0CisgICAgLTB4MS4wMDAwMDQwMDAwMDgwMDAwMTAwMDAwMjAwMDAwNDBwLTEwMCwKKyAgICAtMHgxLjAwMDAwMnAzLAorICAgIDB4MS5mZmZmZmNwMTAyCisgIH0sCisgIHsgLy8gRW50cnkgODE1CisgICAgMHgxLjAwMDAwMzAwMDAwMzAwMDAwMzAwMDAwMzAwMDAwM3AtMTAwLAorICAgIDB4MS4wMDAwMDJwMywKKyAgICAweDEuZmZmZmZlcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDgxNgorICAgIC0weDEuMDAwMDAzMDAwMDAzMDAwMDAzMDAwMDAzMDAwMDAzcC0xMDAsCisgICAgLTB4MS4wMDAwMDJwMywKKyAgICAweDEuZmZmZmZlcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDgxNworICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAwLAorICAgIDB4MS4wMDAwMDJwMywKKyAgICAweDEucDEwMworICB9LAorICB7IC8vIEVudHJ5IDgxOAorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMCwKKyAgICAtMHgxLjAwMDAwMnAzLAorICAgIDB4MS5wMTAzCisgIH0sCisgIHsgLy8gRW50cnkgODE5CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgMHgxLjAwMDAwMnAzLAorICAgIDB4MS4wMDAwMDJwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgODIwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAxLAorICAgIC0weDEuMDAwMDAycDMsCisgICAgMHgxLjAwMDAwMnAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjEKKyAgICAweDEuZmZmZmZjMDAwMDBmZmZmZmMwMDAwMGZmZmZmY3AtMTAxLAorICAgIDB4MS4wMDAwMDJwMywKKyAgICAweDEuMDAwMDA0cDEwMworICB9LAorICB7IC8vIEVudHJ5IDgyMgorICAgIC0weDEuZmZmZmZjMDAwMDBmZmZmZmMwMDAwMGZmZmZmY3AtMTAxLAorICAgIC0weDEuMDAwMDAycDMsCisgICAgMHgxLjAwMDAwNHAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjMKKyAgICAweDEuMDAwMDA2MDAwMDBjMDAwMDE4MDAwMDMwMDAwMDYwcC0xMDAsCisgICAgMHgxLjAwMDAwNHAzLAorICAgIDB4MS5mZmZmZmNwMTAyCisgIH0sCisgIHsgLy8gRW50cnkgODI0CisgICAgLTB4MS4wMDAwMDYwMDAwMGMwMDAwMTgwMDAwMzAwMDAwNjBwLTEwMCwKKyAgICAtMHgxLjAwMDAwNHAzLAorICAgIDB4MS5mZmZmZmNwMTAyCisgIH0sCisgIHsgLy8gRW50cnkgODI1CisgICAgMHgxLjAwMDAwNTAwMDAwNTAwMDAwNTAwMDAwNTAwMDAwNXAtMTAwLAorICAgIDB4MS4wMDAwMDRwMywKKyAgICAweDEuZmZmZmZlcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDgyNgorICAgIC0weDEuMDAwMDA1MDAwMDA1MDAwMDA1MDAwMDA1MDAwMDA1cC0xMDAsCisgICAgLTB4MS4wMDAwMDRwMywKKyAgICAweDEuZmZmZmZlcDEwMgorICB9LAorICB7IC8vIEVudHJ5IDgyNworICAgIDB4MS4wMDAwMDNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAwLAorICAgIDB4MS4wMDAwMDRwMywKKyAgICAweDEucDEwMworICB9LAorICB7IC8vIEVudHJ5IDgyOAorICAgIC0weDEuMDAwMDAzZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMCwKKyAgICAtMHgxLjAwMDAwNHAzLAorICAgIDB4MS5wMTAzCisgIH0sCisgIHsgLy8gRW50cnkgODI5CisgICAgMHgxLjAwMDAwMWZmZmZmYzAwMDAwN2ZmZmZmMDAwMDAxZmZmcC0xMDAsCisgICAgMHgxLjAwMDAwNHAzLAorICAgIDB4MS4wMDAwMDJwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgODMwCisgICAgLTB4MS4wMDAwMDFmZmZmZmMwMDAwMDdmZmZmZjAwMDAwMWZmZnAtMTAwLAorICAgIC0weDEuMDAwMDA0cDMsCisgICAgMHgxLjAwMDAwMnAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMSwKKyAgICAweDEuMDAwMDA0cDMsCisgICAgMHgxLjAwMDAwNHAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDEsCisgICAgLTB4MS4wMDAwMDRwMywKKyAgICAweDEuMDAwMDA0cDEwMworICB9LAorICB7IC8vIEVudHJ5IDgzMworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIDAuMGYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzQKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgLTAuMGYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzUKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODM2CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODM3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgODM4CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODM5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgODQwCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDEKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAwLjBmLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDIKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDg0MworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODQ0CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0wLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDUKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODQ2CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAxLAorICAgIC0wLjBmLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDcKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDgKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDg0OQorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDg1MAorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDg1MQorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDg1MgorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODUzCisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDg1NAorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgODU1CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTYKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDg1NworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTkKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODYwCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg2MQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODYyCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg2MworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODY0CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjUKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg2NgorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjcKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEucC0xMjYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg2OAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODY5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODcwCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzEKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzIKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzMKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODc0CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzUKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAweDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDg3NgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDg3NworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzgKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODc5CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDg4MAorICAgIDAuMCwKKyAgICAweDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODgxCisgICAgMC4wLAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODIKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODMKKyAgICAtMC4wLAorICAgIC0weDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODg0CisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDg4NQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDg4NgorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODcKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgODg4CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDg4OQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgODkwCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTEKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDg5MgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDg5MworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDg5NAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDg5NQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTYKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgODk3CisgICAgMHgxLjJkOTdjN2YzMzIxZDIzNGYyNzI5OTNkMTQxNGEyYjM5cDEsCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTgKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDIzNGYyNzI5OTNkMTQxNGEyYjM5cDEsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODk5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDAKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgOTAxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTAyCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgOTAzCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTA0CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDkwNQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDYKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDcKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDkwOAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTA5CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDkxMAorICAgIC0wLjBmLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTEKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDkxMgorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgOTEzCisgICAgMHgxLjkyMWZiMzQ0NDJkMTg0Njk4YzM3NmZjMWFjNjJkZGU2cDAsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDkxNAorICAgIDB4MS45MjFmYjc0NDQyZDE4NDY5ODZlMjFhNmM1NzBkOTU1ZXAwLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTE1CisgICAgMHgxLjJkOTdjN2YzMzIxZDIzNGYyNzI5OTNkMTQxNGEyYjM5cDEsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTYKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTE3CisgICAgMHgxLmZmZmZmZmZmZmZmZDU1NTU1NTU1NTU1YmJiYmJiYmJicC0yNCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgOTE4CisgICAgLTB4MS5mZmZmZmZmZmZmZmQ1NTU1NTU1NTU1NWJiYmJiYmJiYnAtMjQsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTkKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgOTIwCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjEKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDkyMgorICAgIDB4MS4yZDk3YzdmMzMyMWQyMzRmMjcyOTkzZDE0MTRhMmIzOXAxLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTIzCisgICAgMHgxLjkyMWZiNDQ0NDJkMTg0Njk4YWUyMWE2YzU3MGQ4YmM0cDEsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjQKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTI1CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDkyNgorICAgIC0weDEuOTIxZmIzNDQ0MmQxODQ2OThjMzc2ZmMxYWM2MmRkZTZwMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDkyNworICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTI4CisgICAgLTB4MS4yZDk3YzdmMzMyMWQyMzRmMjcyOTkzZDE0MTRhMmIzOXAxLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDkyOQorICAgIC0weDEuOTIxZmI0NDQ0MmQxODQ2OThhZTIxYTZjNTcwZDhiYzRwMSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzAKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDEsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzEKKyAgICAtMHgxLjkyMWZiNzQ0NDJkMTg0Njk4NmUyMWE2YzU3MGQ5NTVlcDAsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTMyCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTMzCisgICAgLTB4MS4yZDk3YzdmMzMyMWQyMzRmMjcyOTkzZDE0MTRhMmIzOXAxLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDkzNAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMSwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDkzNQorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDkzNgorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMjM0ZjI3Mjk5M2QxNDE0YTJiMzlwMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvYXRhbl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvYXRhbl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjRiZDYwNwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9hdGFuX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDQ2NDYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxkb3VibGUsIGRvdWJsZT4gZ19hdGFuX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgMHgxLjBmYjA2ZWRlOTk3M2EwMDAwMDAwMDAwMDAwN2NjMDYwcC01LAorICAgIDB4MS4wZmM5ZjFmYWJlNjU4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0weDEuMGZiMDZlZGU5OTczYTAwMDAwMDAwMDAwMDA3Y2MwNjBwLTUsCisgICAgLTB4MS4wZmM5ZjFmYWJlNjU4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS4xYmExOTUxZGIxZDZkZmZmZmZmZmZmZmZmZmI4ZjE3NHAtNSwKKyAgICAweDEuMWJiZTljMjU1Njk4ZHAtNQorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAtMHgxLjFiYTE5NTFkYjFkNmRmZmZmZmZmZmZmZmZmYjhmMTc0cC01LAorICAgIC0weDEuMWJiZTljMjU1Njk4ZHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEuOGQ4ZDJkNGJkNmZhMmZmZmZmZmZmZmZmZmZiNTJhMDFwLTUsCisgICAgMHgxLjhkZGQyNWFiOTBjYTFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgLTB4MS44ZDhkMmQ0YmQ2ZmEyZmZmZmZmZmZmZmZmZmI1MmEwMXAtNSwKKyAgICAtMHgxLjhkZGQyNWFiOTBjYTFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLjUyYzM5ZWYwNzBjYWQwMDAwMDAwMDAwMDAwMzk3YjhkcC00LAorICAgIDB4MS41Mzg5ZTZkZjQxOTc5cC00CisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIC0weDEuNTJjMzllZjA3MGNhZDAwMDAwMDAwMDAwMDAzOTdiOGRwLTQsCisgICAgLTB4MS41Mzg5ZTZkZjQxOTc5cC00CisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS5hMzNmMzJhYzVjZWI0ZmZmZmZmZmZmZmZmZmY2MmMwZXAtMywKKyAgICAweDEuYTkzM2ZlMTc2YjM3NXAtMworICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAtMHgxLmEzM2YzMmFjNWNlYjRmZmZmZmZmZmZmZmZmZjYyYzBlcC0zLAorICAgIC0weDEuYTkzM2ZlMTc2YjM3NXAtMworICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLjA5NTQ0YjcxYWQ0YTY4MDAwMDAwMDAwMDAwMTNhOGQ0cC0yLAorICAgIDB4MS4wZjZlNWQ5OTYwMzk3cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAtMHgxLjA5NTQ0YjcxYWQ0YTY4MDAwMDAwMDAwMDAwMTNhOGQ0cC0yLAorICAgIC0weDEuMGY2ZTVkOTk2MDM5N3AtMgorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLjQ2YWMzNzIyNDM1MzYwMDAwMDAwMDAwMDAwMGY4YWI4cC0xLAorICAgIDB4MS43YmE0OWY3Mzk4MjlmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAtMHgxLjQ2YWMzNzIyNDM1MzYwMDAwMDAwMDAwMDAwMGY4YWI4cC0xLAorICAgIC0weDEuN2JhNDlmNzM5ODI5ZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgLTB4MS45M2QwZDRiNGIxZGVlODJjZWE1YjBjMzcwNTRiNDBlMnAtMSwKKyAgICAtMHgxLjAxYjI4Zjc1MTlhYjVwMAorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLjkzZDBkNGI0YjFkZWU4MmNlYTViMGMzNzA1NGI0MGUycC0xLAorICAgIDB4MS4wMWIyOGY3NTE5YWI1cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIC0weDEuOGUzNzNjNzY2YTljYjdmZmYwMDkzZDI2YTNlOTZmZGNwMCwKKyAgICAtMHgxLjA1ZmZmZmZmZmYwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS44ZTM3M2M3NjZhOWNiN2ZmZjAwOTNkMjZhM2U5NmZkY3AwLAorICAgIDB4MS4wNWZmZmZmZmZmMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAtMHgxLjlhNjZiNzdmMzcwOTM4MjgzZGI3NDVmYTRkOGY2OTI5cC0xLAorICAgIC0weDEuMDg2YTA1MTcyYzE1OXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuOWE2NmI3N2YzNzA5MzgyODNkYjc0NWZhNGQ4ZjY5MjlwLTEsCisgICAgMHgxLjA4NmEwNTE3MmMxNTlwMAorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgLTB4MS5hMWYyOTQ5NmE2M2ViN2ZlZDc5NDE3NDJhYzI1YzBiY3AtMSwKKyAgICAtMHgxLjEwNTU2ZjE0OTc2NjFwMAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLmExZjI5NDk2YTYzZWI3ZmVkNzk0MTc0MmFjMjVjMGJjcC0xLAorICAgIDB4MS4xMDU1NmYxNDk3NjYxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIC0weDEuYTQ2YTI0ZDM0ZTliMjgyODEwYWRiMTg4ODI3YTlhZjFwLTEsCisgICAgLTB4MS4xMmZhMGQ2OTAxNTI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS5hNDZhMjRkMzRlOWIyODI4MTBhZGIxODg4MjdhOWFmMXAtMSwKKyAgICAweDEuMTJmYTBkNjkwMTUyNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAtMHgxLmZkNzM0MzExN2ZhNTc1YzU1MGRjZGZmMGZkNjQyNDEwcC0yLAorICAgIC0weDEuMTYwZGMzMTdiZjg3Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLmZkNzM0MzExN2ZhNTc1YzU1MGRjZGZmMGZkNjQyNDEwcC0yLAorICAgIDB4MS4xNjBkYzMxN2JmODdjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAtMHgxLmFiZGNjNzQ4MjE0ODVmZmIzZGNlMmM0NzFmMWQ5Y2NkcC0xLAorICAgIC0weDEuMWIycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5hYmRjYzc0ODIxNDg1ZmZiM2RjZTJjNDcxZjFkOWNjZHAtMSwKKyAgICAweDEuMWIycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIC0weDEuMWI2YjAwZjY0NjkyYjgxNTdhMzIyZDA1YWRkMTcwYzRwLTIsCisgICAgLTB4MS4yMmUyNDVjNDhiODk0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuMWI2YjAwZjY0NjkyYjgxNTdhMzIyZDA1YWRkMTcwYzRwLTIsCisgICAgMHgxLjIyZTI0NWM0OGI4OTRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEuNzZmNWRkYzNhOGI1MDhlZDlmMTM3ZGVhNmI4MWU5MGZwMCwKKyAgICAtMHgxLjJjNzJmOTk1YjFkMmVwMworICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLjc2ZjVkZGMzYThiNTA4ZWQ5ZjEzN2RlYTZiODFlOTBmcDAsCisgICAgMHgxLjJjNzJmOTk1YjFkMmVwMworICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgLTB4MS4xZTAwYmFiZGVmZDQ0N2Q3Y2QyOTNmZDg4MThkZWQxNnAtMSwKKyAgICAtMHgxLjNmZmZmZmZmZmZlMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS4xZTAwYmFiZGVmZDQ0N2Q3Y2QyOTNmZDg4MThkZWQxNnAtMSwKKyAgICAweDEuM2ZmZmZmZmZmZmUwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgLTB4MS4yNTdjZjhmODZhYWUzN2ZkODkwMDdjZGRkOWZiZWRhZHAtMSwKKyAgICAtMHgxLjRhODE4YWRmNGQwMGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS4yNTdjZjhmODZhYWUzN2ZkODkwMDdjZGRkOWZiZWRhZHAtMSwKKyAgICAweDEuNGE4MThhZGY0ZDAwY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgLTB4MS4zMGFjOTQ1MTM3MzM2Y2VlNmRjZjczZGI2NDhjZmNiOHAtMSwKKyAgICAtMHgxLjVhOTUxOTIwNDFmOWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS4zMGFjOTQ1MTM3MzM2Y2VlNmRjZjczZGI2NDhjZmNiOHAtMSwKKyAgICAweDEuNWE5NTE5MjA0MWY5ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgLTB4MS5kZmM5YjdmOWFiNDJkODAzNDUzZWRiNDE1NmIyMmZlMHAtMSwKKyAgICAtMHgxLjVjNjM0Y2IxZGZlNmJwMAorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLmRmYzliN2Y5YWI0MmQ4MDM0NTNlZGI0MTU2YjIyZmUwcC0xLAorICAgIDB4MS41YzYzNGNiMWRmZTZicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIC0weDEuNmJmMzMwMmE5ODRhOGEwMDZjNDQ3OGMwZTc2M2ZhYjlwLTIsCisgICAgLTB4MS43YzE3NTZlYzEyYjIzcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuNmJmMzMwMmE5ODRhOGEwMDZjNDQ3OGMwZTc2M2ZhYjlwLTIsCisgICAgMHgxLjdjMTc1NmVjMTJiMjNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIC0weDEuN2Y3NDdjMzcwYzA3MjdmY2NmYjk0OTVlZGUxMTA1NzlwLTUsCisgICAgLTB4MS43ZmJjM2RmMmVkMjc2cC01CisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEuN2Y3NDdjMzcwYzA3MjdmY2NmYjk0OTVlZGUxMTA1NzlwLTUsCisgICAgMHgxLjdmYmMzZGYyZWQyNzZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIC0weDEuZmRkYTRhZWY4MWU4ZTdmZmZkNTQ3ZTU2Y2UwOGYzNmRwLTEsCisgICAgLTB4MS44YjBhZGM1MjhiY2U0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5mZGRhNGFlZjgxZThlN2ZmZmQ1NDdlNTZjZTA4ZjM2ZHAtMSwKKyAgICAweDEuOGIwYWRjNTI4YmNlNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAtMHgxLjkxY2YwNjBhNTcyNTQ3ZmY4ZThlODI5YjE2NzU5M2ZjcDAsCisgICAgLTB4MS45NjIwMDAwMDAwMDBicDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS45MWNmMDYwYTU3MjU0N2ZmOGU4ZTgyOWIxNjc1OTNmY3AwLAorICAgIDB4MS45NjIwMDAwMDAwMDBicDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIC0weDEuNDdjMjhlOGM0MGVjMjgwMDAwMDIwODA4ZmRjOTAyNjRwMCwKKyAgICAtMHgxLmFjMmUwODYyZTU0M2VwMQorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgMHgxLjQ3YzI4ZThjNDBlYzI4MDAwMDAyMDgwOGZkYzkwMjY0cDAsCisgICAgMHgxLmFjMmUwODYyZTU0M2VwMQorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTZlZjkyMTQzOXAwLAorICAgIC0weDEuYzM1ZmUwY2M5ZDBlNHA5OQorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNmVmOTIxNDM5cDAsCisgICAgMHgxLmMzNWZlMGNjOWQwZTRwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEuZmVlMjQzMTIxNTYwNmY5ZGIyMmQ1MmZjN2U3MzFiOThwLTYsCisgICAgLTB4MS5mZjBjYWFhZTMxNzkwcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEuZmVlMjQzMTIxNTYwNmY5ZGIyMmQ1MmZjN2U3MzFiOThwLTYsCisgICAgMHgxLmZmMGNhYWFlMzE3OTBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIC0weDEuMWI2YWU1ZTcwZDU3YTAwMjQ4MjViMGNlZTg2ZmQ0MTVwMCwKKyAgICAtMHgxLmZmZWZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLjFiNmFlNWU3MGQ1N2EwMDI0ODI1YjBjZWU4NmZkNDE1cDAsCisgICAgMHgxLmZmZWZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgLTB4MS5mNWFhMzJkOGE2ZDE3N2ZmZmFkNjFiNWRjYTBiZThiZnAtMywKKyAgICAtMHgxLmZmZjIwMDdmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS5mNWFhMzJkOGE2ZDE3N2ZmZmFkNjFiNWRjYTBiZThiZnAtMywKKyAgICAweDEuZmZmMjAwN2ZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgLTB4MS5mNWIzOWY5MjU3OGUwMDNjZTAyNTQ0NWQ1NDQ4YzcyM3AtMywKKyAgICAtMHgxLmZmZmMwM2ZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS5mNWIzOWY5MjU3OGUwMDNjZTAyNTQ0NWQ1NDQ4YzcyM3AtMywKKyAgICAweDEuZmZmYzAzZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLmZkNWJhOWFhYzJmN2Y3Zjc0YTRhYzJmNzk2MmVhMDA2cC00LAorICAgIDB4MS4wMDAwMDAwMDAwMDA5cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLmZkNWJhOWFhYzJmN2Y3Zjc0YTRhYzJmNzk2MmVhMDA2cC00LAorICAgIC0weDEuMDAwMDAwMDAwMDAwOXAtMworICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLjFiNmUxOTJlYmJlNGIzOTM5ZTY3NmVlZDEzZWNkZWE1cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMTFwMQorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS4xYjZlMTkyZWJiZTRiMzkzOWU2NzZlZWQxM2VjZGVhNXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAxMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuZmQ1YmE5YWFjMzMwMTc3OTQyNmE0NGQ2MjE2YzAxMjdwLTQsCisgICAgMHgxLjAwMDAwMDAwMDAxZDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuZmQ1YmE5YWFjMzMwMTc3OTQyNmE0NGQ2MjE2YzAxMjdwLTQsCisgICAgLTB4MS4wMDAwMDAwMDAwMWQxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEuZjViNzVmOTJjOGUwYThmZGFlNjIwYjUxY2Q5YWZmMTJwLTMsCisgICAgMHgxLjAwMDAwMDAwMDA3cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLmY1Yjc1ZjkyYzhlMGE4ZmRhZTYyMGI1MWNkOWFmZjEycC0zLAorICAgIC0weDEuMDAwMDAwMDAwMDdwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS5mZmQ1NWJiYTlkNjlhOGFkNjUxZDcxYWVjOTg4ZGFkMHAtNiwKKyAgICAweDEuMDAwMDAwMDAwMzA0N3AtNQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5mZmQ1NWJiYTlkNjlhOGFkNjUxZDcxYWVjOTg4ZGFkMHAtNiwKKyAgICAtMHgxLjAwMDAwMDAwMDMwNDdwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS45MTFmYjU5OTk4MTNhODAwM2M4NzliMTc5Mzk2NmVhMXAwLAorICAgIDB4MS4wMDAwMDAwMDIwMDE3cDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIC0weDEuOTExZmI1OTk5ODEzYTgwMDNjODc5YjE3OTM5NjZlYTFwMCwKKyAgICAtMHgxLjAwMDAwMDAwMjAwMTdwOAorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjkyMWZiNTQ0NzJkMTg0Njk4NTBjYzUxNzAyMDAzOWEycC0xLAorICAgIDB4MS4wMDAwMDAwMDNwMAorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS45MjFmYjU0NDcyZDE4NDY5ODUwY2M1MTcwMjAwMzlhMnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwM3AwCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuZjViNzVmOTU5YWUwYThmZDZlOWFjMWU4NGJjZWNhNTdwLTMsCisgICAgMHgxLjAwMDAwMDAxOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5mNWI3NWY5NTlhZTBhOGZkNmU5YWMxZTg0YmNlY2E1N3AtMywKKyAgICAtMHgxLjAwMDAwMDAxOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLmY1Yjc2NzFhNGY5Mzk4MjkxNDM3ODJmYzZlMTI0Y2NhcC0zLAorICAgIDB4MS4wMDAwMDQwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMHgxLmY1Yjc2NzFhNGY5Mzk4MjkxNDM3ODJmYzZlMTI0Y2NhcC0zLAorICAgIC0weDEuMDAwMDA0MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLmZkNWJiMThiNDE3YzQ4YWM4NDg1MjFiYjA3NzJkOWExcC00LAorICAgIDB4MS4wMDAwMDQwMDAwNHAtMworICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgLTB4MS5mZDViYjE4YjQxN2M0OGFjODQ4NTIxYmIwNzcyZDlhMXAtNCwKKyAgICAtMHgxLjAwMDAwNDAwMDA0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuOTIxZmM0NDQwMjQ4MjgyZDI5MGE2MTZiOGJkMmE0MGZwLTEsCisgICAgMHgxLjAwMDAwZWZmYmZlNzJwMAorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS45MjFmYzQ0NDAyNDgyODJkMjkwYTYxNmI4YmQyYTQwZnAtMSwKKyAgICAtMHgxLjAwMDAwZWZmYmZlNzJwMAorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLjkyMWZjYjRlZmU4Yjk4MDAwMDE5NzljM2MxNGFlNjQ3cC0xLAorICAgIDB4MS4wMDAwMTYwYWJjYWQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIC0weDEuOTIxZmNiNGVmZThiOTgwMDAwMTk3OWMzYzE0YWU2NDdwLTEsCisgICAgLTB4MS4wMDAwMTYwYWJjYWQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS5mZDVkOWRkOWZlNDg3N2ZkNTc4ZjQ2MGRjYjgzYTA2OHAtNCwKKyAgICAweDEuMDAwMGZlMHAtMworICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTB4MS5mZDVkOWRkOWZlNDg3N2ZkNTc4ZjQ2MGRjYjgzYTA2OHAtNCwKKyAgICAtMHgxLjAwMDBmZTBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS4xYjZmYjJjMzM2ZDQ5MzE0ZWFjOWY5Yzk4ZmQ3ZTMzY3AwLAorICAgIDB4MS4wMDA0MHAxCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAtMHgxLjFiNmZiMmMzMzZkNDkzMTRlYWM5ZjljOThmZDdlMzNjcDAsCisgICAgLTB4MS4wMDA0MHAxCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuOGUyMDBhOTBjYzYzMDgwMzM3YmI1ZjQ3MjMwM2QwY2JwMCwKKyAgICAweDEuMDAwZmZmZmZmZmZlMXA2CisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAtMHgxLjhlMjAwYTkwY2M2MzA4MDMzN2JiNWY0NzIzMDNkMGNicDAsCisgICAgLTB4MS4wMDBmZmZmZmZmZmUxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS45MjRmYjBjNDhhZDE4M2E3NDE4M2VkZDUzNjI0ODZkZnAtMSwKKyAgICAweDEuMDAzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIC0weDEuOTI0ZmIwYzQ4YWQxODNhNzQxODNlZGQ1MzYyNDg2ZGZwLTEsCisgICAgLTB4MS4wMDNwMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLmZlZGM1ZjZhZWI5ODE4NmEzYjBkM2I5NTRkNzA5MTFjcC00LAorICAgIDB4MS4wMGMzNWU5NzU4ZTJjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAtMHgxLmZlZGM1ZjZhZWI5ODE4NmEzYjBkM2I5NTRkNzA5MTFjcC00LAorICAgIC0weDEuMDBjMzVlOTc1OGUyY3AtMworICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLjkyMWZiMzQ2NjA5MWU3ZmZiYzliOGU1YzZkODhjZTIycDAsCisgICAgMHgxLjAxMXAyMworICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgLTB4MS45MjFmYjM0NjYwOTFlN2ZmYmM5YjhlNWM2ZDg4Y2UyMnAwLAorICAgIC0weDEuMDExcDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEuMWMyMTAwOTU4NTU4ZGZmZjkxNTM5NWE1YmZiNGU0ZjdwMCwKKyAgICAweDEuMDFjMWI3NWEyOTE5OHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAtMHgxLjFjMjEwMDk1ODU1OGRmZmY5MTUzOTVhNWJmYjRlNGY3cDAsCisgICAgLTB4MS4wMWMxYjc1YTI5MTk4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS45NDFkYTZiOTc2MTEyODAwYWU1MGE3OTI0NGIyZjAwZnAtMSwKKyAgICAweDEuMDFmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLTB4MS45NDFkYTZiOTc2MTEyODAwYWU1MGE3OTI0NGIyZjAwZnAtMSwKKyAgICAtMHgxLjAxZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuOTU0MTJjMTRjYWVjNjgzNjhkMjM1MjI2MmUyMDVlMjlwLTEsCisgICAgMHgxLjAzMjY2N2IzOGZkNjNwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIC0weDEuOTU0MTJjMTRjYWVjNjgzNjhkMjM1MjI2MmUyMDVlMjlwLTEsCisgICAgLTB4MS4wMzI2NjdiMzhmZDYzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuOTU0Nzk3MTU2OTA3ZmZlOGQ0M2M1NmZlZDg4MDZjYmFwLTEsCisgICAgMHgxLjAzMmNlNzIwOWU5MzZwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuOTU0Nzk3MTU2OTA3ZmZlOGQ0M2M1NmZlZDg4MDZjYmFwLTEsCisgICAgLTB4MS4wMzJjZTcyMDllOTM2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuMDNmZTkyNmRlYjg3ZGVhMDM2YWUwZTUwMDBhNzgxNzlwLTcsCisgICAgMHgxLjAzZmZmODBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAtMHgxLjAzZmU5MjZkZWI4N2RlYTAzNmFlMGU1MDAwYTc4MTc5cC03LAorICAgIC0weDEuMDNmZmY4MHAtNworICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5mZDYxZTQzMjZjMWUxN2Y5YmU1YzBlOTZiOWUyNDViNXAtMywKKyAgICAweDEuMDQxMzkxYjRmNjc3M3AtMgorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIC0weDEuZmQ2MWU0MzI2YzFlMTdmOWJlNWMwZTk2YjllMjQ1YjVwLTMsCisgICAgLTB4MS4wNDEzOTFiNGY2NzczcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjk2OTBlNzQ2NTg0N2E3ZGRjMTUzYmM2Nzk4ZDFiODJicC0xLAorICAgIDB4MS4wNDdiMmQ1YWM4Y2NicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAtMHgxLjk2OTBlNzQ2NTg0N2E3ZGRjMTUzYmM2Nzk4ZDFiODJicC0xLAorICAgIC0weDEuMDQ3YjJkNWFjOGNjYnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLjk2YzhlYTYzOWY2OGNjMDlkNDQ1ODQxOTYyOTVkZjkzcC0xLAorICAgIDB4MS4wNGI0MzQwMzk1M2IwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAtMHgxLjk2YzhlYTYzOWY2OGNjMDlkNDQ1ODQxOTYyOTVkZjkzcC0xLAorICAgIC0weDEuMDRiNDM0MDM5NTNiMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLjk2Yzk1YmE3ZGY4NGY3ZmVjZjg0MWYwNGE1Mzg2YTk1cC0xLAorICAgIDB4MS4wNGI0YTc2MWEwNzNicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLjk2Yzk1YmE3ZGY4NGY3ZmVjZjg0MWYwNGE1Mzg2YTk1cC0xLAorICAgIC0weDEuMDRiNGE3NjFhMDczYnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLmZmOTU2YTY4ZTVmNWQ3ZmEyNjgyOWJhMGEzMjg3MjI3cC0zLAorICAgIDB4MS4wNTNmOTZiODY4YjQwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS5mZjk1NmE2OGU1ZjVkN2ZhMjY4MjliYTBhMzI4NzIyN3AtMywKKyAgICAtMHgxLjA1M2Y5NmI4NjhiNDBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEuOThiMGMzYzBkZDg5MTdmZWJlMjFiNTgyZTQ1YmYzMmFwLTEsCisgICAgMHgxLjA2YTZmZGQ4YzliZThwMAorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIC0weDEuOThiMGMzYzBkZDg5MTdmZWJlMjFiNTgyZTQ1YmYzMmFwLTEsCisgICAgLTB4MS4wNmE2ZmRkOGM5YmU4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuZTdlM2QwOTEwODA3ZWZmZjk5MmM3YTI3NGZkYmVkOGNwLTIsCisgICAgMHgxLjA4NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIC0weDEuZTdlM2QwOTEwODA3ZWZmZjk5MmM3YTI3NGZkYmVkOGNwLTIsCisgICAgLTB4MS4wODRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuMDk4ODJmMGZkODc4YjdmYzc1MGMyM2MwNDE3YWEzNTJwLTUsCisgICAgMHgxLjA5YXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIC0weDEuMDk4ODJmMGZkODc4YjdmYzc1MGMyM2MwNDE3YWEzNTJwLTUsCisgICAgLTB4MS4wOWFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEuYTA1N2UzY2I3NDI0NTgwMmI3MWM1Nzg2YmQzYmY1YTlwLTEsCisgICAgMHgxLjBlYTEyODE3ODY2ODFwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIC0weDEuYTA1N2UzY2I3NDI0NTgwMmI3MWM1Nzg2YmQzYmY1YTlwLTEsCisgICAgLTB4MS4wZWExMjgxNzg2NjgxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEuYTA1N2UzY2I3NDI4MTAwY2RlNjI0MmIzYmYyZDc1ZTdwLTEsCisgICAgMHgxLjBlYTEyODE3ODY2YzBwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIC0weDEuYTA1N2UzY2I3NDI4MTAwY2RlNjI0MmIzYmYyZDc1ZTdwLTEsCisgICAgLTB4MS4wZWExMjgxNzg2NmMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuMDk1NDRiNzFhZDRhNjgwMDAwMDAwMDAwMDAxM2E4ZDRwLTIsCisgICAgMHgxLjBmNmU1ZDk5NjAzOTdwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAtMHgxLjA5NTQ0YjcxYWQ0YTY4MDAwMDAwMDAwMDAwMTNhOGQ0cC0yLAorICAgIC0weDEuMGY2ZTVkOTk2MDM5N3AtMgorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS45MjFmYjRjZDljNjc2N2ZmZmZmZTYwNTFiZjFjM2ZlY3AwLAorICAgIDB4MS4xNDJjNjliNzIwMGI0cDI1CisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgLTB4MS45MjFmYjRjZDljNjc2N2ZmZmZmZTYwNTFiZjFjM2ZlY3AwLAorICAgIC0weDEuMTQyYzY5YjcyMDBiNHAyNQorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5hOTA4YWZhNWIxZDQ5ZDQ1MDgzNDU0MGZlZTljM2MyNHAtMSwKKyAgICAweDEuMTgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLmE5MDhhZmE1YjFkNDlkNDUwODM0NTQwZmVlOWMzYzI0cC0xLAorICAgIC0weDEuMTgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuYWJkY2M3NDgyMTQ4NWZmYjNkY2UyYzQ3MWYxZDljY2RwLTEsCisgICAgMHgxLjFiMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS5hYmRjYzc0ODIxNDg1ZmZiM2RjZTJjNDcxZjFkOWNjZHAtMSwKKyAgICAtMHgxLjFiMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLjFmZmZmZmZmZmZmODY4MDAwMDAwMDA1YzQzOTk5OTk5cC0yMiwKKyAgICAweDEuMnAtMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMHgxLjFmZmZmZmZmZmZmODY4MDAwMDAwMDA1YzQzOTk5OTk5cC0yMiwKKyAgICAtMHgxLjJwLTIyCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLjEyMzFmM2NmM2I2NDA4MDExMGZmNDFlYWYwOGU3ZjUycC0xLAorICAgIDB4MS4yZmNmNzQ0NGJkZTc2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS4xMjMxZjNjZjNiNjQwODAxMTBmZjQxZWFmMDhlN2Y1MnAtMSwKKyAgICAtMHgxLjJmY2Y3NDQ0YmRlNzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuMTRlODkxOTg4NjA2MjdmZmZmZTg2MDIyNzU1MTk0OTBwLTEsCisgICAgMHgxLjMzN2Q5ZGI2ZDdjMTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLjE0ZTg5MTk4ODYwNjI3ZmZmZmU4NjAyMjc1NTE5NDkwcC0xLAorICAgIC0weDEuMzM3ZDlkYjZkN2MxMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS45MWVhZTdlNDc0MjM0ODAwZmZlZDQ1NzllOTM5YjY5ZXAwLAorICAgIDB4MS4zNjRhMmYxMzRmY2M4cDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS45MWVhZTdlNDc0MjM0ODAwZmZlZDQ1NzllOTM5YjY5ZXAwLAorICAgIC0weDEuMzY0YTJmMTM0ZmNjOHAxMAorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS45MjFmYjUzZGE5YWZjN2ZmOGE3YjM2ZTQ5ODg3YTg4Y3AwLAorICAgIDB4MS4zNjYzOTg2ZjgyMjIwcDI5CisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS45MjFmYjUzZGE5YWZjN2ZmOGE3YjM2ZTQ5ODg3YTg4Y3AwLAorICAgIC0weDEuMzY2Mzk4NmY4MjIyMHAyOQorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS43OGM1NmI5MmYxOTBlODRhMzIzYmQ1ODA0YTFjNWJhNnAwLAorICAgIDB4MS40MjEwODQyMTA4NDIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAtMHgxLjc4YzU2YjkyZjE5MGU4NGEzMjNiZDU4MDRhMWM1YmE2cDAsCisgICAgLTB4MS40MjEwODQyMTA4NDIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAweDEuNzhkNzUxNDk0ODk4MzcyZDBmZTNhZjNhNzgzN2ZmOGZwMCwKKyAgICAweDEuNDJmNWZmMTVkZGMwOHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS43OGQ3NTE0OTQ4OTgzNzJkMGZlM2FmM2E3ODM3ZmY4ZnAwLAorICAgIC0weDEuNDJmNWZmMTVkZGMwOHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLjMxY2U0ZGEwMzdmMTU0MjM0MGVlNGM2MTQyMWJiYTVhcDAsCisgICAgMHgxLjQzZmZmODBwMQorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0weDEuMzFjZTRkYTAzN2YxNTQyMzQwZWU0YzYxNDIxYmJhNWFwMCwKKyAgICAtMHgxLjQzZmZmODBwMQorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS4zMWNlNGZjOTMxMzQ3NGU2OWI0MTMwNmQ4MmRlY2ViMHAwLAorICAgIDB4MS40NDBwMQorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEuMzFjZTRmYzkzMTM0NzRlNjliNDEzMDZkODJkZWNlYjBwMCwKKyAgICAtMHgxLjQ0MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLjI2YjNkMjExYmMzZmFhZjhmMDM3ZGQzNDIxZDlmOTYycC0xLAorICAgIDB4MS40YzNhOTg3NTMwZWE2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS4yNmIzZDIxMWJjM2ZhYWY4ZjAzN2RkMzQyMWQ5Zjk2MnAtMSwKKyAgICAtMHgxLjRjM2E5ODc1MzBlYTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuMzUxNzc5ZjA3Mjg0NjgwMGE5YmIxOGQ3MmE3OTgxNGVwMCwKKyAgICAweDEuNTA5NDI1MDk0MjUwOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS4zNTE3NzlmMDcyODQ2ODAwYTliYjE4ZDcyYTc5ODE0ZXAwLAorICAgIC0weDEuNTA5NDI1MDk0MjUwOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLjU4ZmNlY2I2OTZkODI3ZWM2NmM0YTdiZmQ4ZWQzMjdicC04LAorICAgIDB4MS41OGZkYmQ4ZGRiYmY4cC04CisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS41OGZjZWNiNjk2ZDgyN2VjNjZjNGE3YmZkOGVkMzI3YnAtOCwKKyAgICAtMHgxLjU4ZmRiZDhkZGJiZjhwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuNjMzOThmNmRhMmYxYTdmZmZmZjJkMzExODg2OTQ4YzVwMCwKKyAgICAweDEuNTk2ZGU4Y2ExMWFlNnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTB4MS42MzM5OGY2ZGEyZjFhN2ZmZmZmMmQzMTE4ODY5NDhjNXAwLAorICAgIC0weDEuNTk2ZGU4Y2ExMWFlNnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLjM0MjRhMDA2NmU2YThkNmUzZDY5MDFmOTkwMzRjZGUxcC0xLAorICAgIDB4MS41ZmFhMGNiZjQ4ZTU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS4zNDI0YTAwNjZlNmE4ZDZlM2Q2OTAxZjk5MDM0Y2RlMXAtMSwKKyAgICAtMHgxLjVmYWEwY2JmNDhlNTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuNWZmMjIzYTYzOWQ1YmZjZTdhZTFjZmI3NTE2ZDI2YWRwLTYsCisgICAgMHgxLjZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAtMHgxLjVmZjIyM2E2MzlkNWJmY2U3YWUxY2ZiNzUxNmQyNmFkcC02LAorICAgIC0weDEuNnAtNgorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS4zNDVmMDFjY2UzOGM4ZDhiZTQwY2MxMmM1ODI0MGUxNXAtMSwKKyAgICAweDEuNjAwMDAwMDAwMDE4ZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuMzQ1ZjAxY2NlMzhjOGQ4YmU0MGNjMTJjNTgyNDBlMTVwLTEsCisgICAgLTB4MS42MDAwMDAwMDAwMThkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMHgxLjM2N2NiMjRmZGZmMjE0NmEzYzY4NjNkMjMzZmYwOWZlcC0xLAorICAgIDB4MS42MzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLjM2N2NiMjRmZGZmMjE0NmEzYzY4NjNkMjMzZmYwOWZlcC0xLAorICAgIC0weDEuNjMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLjU3YmFlYjljNTFkYjQ5MGY4MjQ5ZjY2Nzk3Njg3NDFmcC0yLAorICAgIDB4MS42NTRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLjU3YmFlYjljNTFkYjQ5MGY4MjQ5ZjY2Nzk3Njg3NDFmcC0yLAorICAgIC0weDEuNjU0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLjM5NTAwNmIwZmQ2ODJkODZmNGE0MGY2OWU0ZGFkMWYzcC0xLAorICAgIDB4MS42NzUzNzBjYzIxN2YxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS4zOTUwMDZiMGZkNjgyZDg2ZjRhNDBmNjllNGRhZDFmM3AtMSwKKyAgICAtMHgxLjY3NTM3MGNjMjE3ZjFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAweDEuNjk1YTJjMjY4ZTFlNTdmZmVlMGNiOGM4ODk4NmRmZWZwLTEyLAorICAgIDB4MS42OTVhMmQxNjhiNDQwcC0xMgorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEuNjk1YTJjMjY4ZTFlNTdmZmVlMGNiOGM4ODk4NmRmZWZwLTEyLAorICAgIC0weDEuNjk1YTJkMTY4YjQ0MHAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuOTBiNmZjMDQ3NGZlYzdmZTEyZjUyNGYxYjQyMGIxODRwMCwKKyAgICAweDEuNmI1YWQ2YjVhY2ViNHA3CisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS45MGI2ZmMwNDc0ZmVjN2ZlMTJmNTI0ZjFiNDIwYjE4NHAwLAorICAgIC0weDEuNmI1YWQ2YjVhY2ViNHA3CisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLjNiOGYzMzA2MTY3YThiYWEzNjhkYWFlMGJmMDhlODZjcDAsCisgICAgMHgxLjZjMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS4zYjhmMzMwNjE2N2E4YmFhMzY4ZGFhZTBiZjA4ZTg2Y3AwLAorICAgIC0weDEuNmMwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuNWY2YmFlMTg5YjUxMDk4YTg2ZDkwYzk4ZGE0Y2M4NzdwLTIsCisgICAgMHgxLjZkZTYzYjE0OGNmMGJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAtMHgxLjVmNmJhZTE4OWI1MTA5OGE4NmQ5MGM5OGRhNGNjODc3cC0yLAorICAgIC0weDEuNmRlNjNiMTQ4Y2YwYnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS4zZGUxODcwM2Q0MmQ2OWY1NWIzZTZjNGQxZmU1NjI5ZHAtMSwKKyAgICAweDEuNmUzMDAyMmNiNDUwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuM2RlMTg3MDNkNDJkNjlmNTViM2U2YzRkMWZlNTYyOWRwLTEsCisgICAgLTB4MS42ZTMwMDIyY2I0NTAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLmViZTU0MDEzNjRkMGM4MDJiNmQ1MmVlMmNkZjIwODZlcC0xLAorICAgIDB4MS42ZTNiMWUyMWIyN2RkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAtMHgxLmViZTU0MDEzNjRkMGM4MDJiNmQ1MmVlMmNkZjIwODZlcC0xLAorICAgIC0weDEuNmUzYjFlMjFiMjdkZHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjYzMTA3MjFlOGQ3YmMwNGUyYWU0ZThjY2U4N2ExZWMwcC0yLAorICAgIDB4MS43MjAzNmY4ODllODZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgLTB4MS42MzEwNzIxZThkN2JjMDRlMmFlNGU4Y2NlODdhMWVjMHAtMiwKKyAgICAtMHgxLjcyMDM2Zjg4OWU4NmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuNjg1YzgyYmUxZDZmYTkwMmIyMzhlODc3MTZjM2JiZmJwLTIsCisgICAgMHgxLjc4MDM3MTg0MzQ2MjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAtMHgxLjY4NWM4MmJlMWQ2ZmE5MDJiMjM4ZTg3NzE2YzNiYmZicC0yLAorICAgIC0weDEuNzgwMzcxODQzNDYyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS42OGMzYjA4YzIwYWYwOWJlODA3ZjU5OGNiY2EzMmNiOXAtMiwKKyAgICAweDEuNzg3ODhkMzIwZDYzOXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuNjhjM2IwOGMyMGFmMDliZTgwN2Y1OThjYmNhMzJjYjlwLTIsCisgICAgLTB4MS43ODc4OGQzMjBkNjM5cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjZiMzVjYmFkMDI2MDA5ZjEyZDAwMDAzZjg0YzI5Y2FlcC0yLAorICAgIDB4MS43YjNmZTkyZTJmZDYzcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS42YjM1Y2JhZDAyNjAwOWYxMmQwMDAwM2Y4NGMyOWNhZXAtMiwKKyAgICAtMHgxLjdiM2ZlOTJlMmZkNjNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuNmM0YjM2MTBjNDJiMjllYWJlYWEzNWNjMWI4MDY3ZWNwLTIsCisgICAgMHgxLjdjN2I4MGE5ZDc4OGJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLjZjNGIzNjEwYzQyYjI5ZWFiZWFhMzVjYzFiODA2N2VjcC0yLAorICAgIC0weDEuN2M3YjgwYTlkNzg4YnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS42ZWVkNmZmNmNkOTljYTAyYzRkODhjOWFhNTk1ZDVjZnAtMiwKKyAgICAweDEuN2Y3YjhjNjQ4YTY1MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuNmVlZDZmZjZjZDk5Y2EwMmM0ZDg4YzlhYTU5NWQ1Y2ZwLTIsCisgICAgLTB4MS43ZjdiOGM2NDhhNjUwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLjdmZmZmZmZmZmZmZmI4MDAwMDAwMDAwMDE4NGNjY2NjcC0yNSwKKyAgICAweDEuOHAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmI4MDAwMDAwMDAwMDE4NGNjY2NjcC0yNSwKKyAgICAtMHgxLjhwLTI1CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLjdmZmZmZmZmZmZmZmM4MDAwMDAwMDAwMDBmNGNjY2NjcC0yNSwKKyAgICAweDEuODAwMDAwMDAwMDAwMXAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmM4MDAwMDAwMDAwMDBmNGNjY2NjcC0yNSwKKyAgICAtMHgxLjgwMDAwMDAwMDAwMDFwLTI1CisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLjdmZmZmZmZmZmZmZmQ4MDAwMDAwMDAwMDA2NGNjY2NjcC0yNSwKKyAgICAweDEuODAwMDAwMDAwMDAwMnAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmQ4MDAwMDAwMDAwMDA2NGNjY2NjcC0yNSwKKyAgICAtMHgxLjgwMDAwMDAwMDAwMDJwLTI1CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLmY3YjllZjNkYzY1NDA4MDAwMDA1ZTNmOTFlODE2MDYzcC0xLAorICAgIDB4MS44MGRmNGIyOGI1YTg0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLmY3YjllZjNkYzY1NDA4MDAwMDA1ZTNmOTFlODE2MDYzcC0xLAorICAgIC0weDEuODBkZjRiMjhiNWE4NHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgMHgxLjkwY2UwMjQ5ODExMDA4MDA2NjM4NzAyZGI4YWU1OWUycDAsCisgICAgMHgxLjg0MjEwODQyMTA4NDZwNworICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0weDEuOTBjZTAyNDk4MTEwMDgwMDY2Mzg3MDJkYjhhZTU5ZTJwMCwKKyAgICAtMHgxLjg0MjEwODQyMTA4NDZwNworICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS5mYjNjNTdkYWI1YWZhODBhNTA2ZTkxZjkyZTZhOGRmOXAtMSwKKyAgICAweDEuODZhNzEzOTViYzliNXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS5mYjNjNTdkYWI1YWZhODBhNTA2ZTkxZjkyZTZhOGRmOXAtMSwKKyAgICAtMHgxLjg2YTcxMzk1YmM5YjVwMAorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDB4MS42OGQ5NDMxMmNhN2YxN2ZmZWVkMWRkMTZlYzJkMzVlNnAwLAorICAgIDB4MS44OThwMgorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuNjhkOTQzMTJjYTdmMTdmZmVlZDFkZDE2ZWMyZDM1ZTZwMCwKKyAgICAtMHgxLjg5OHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLmZmNjlkMGNlZmE4YTI3ZWJmOGNiZjVlYzFjYzc4MzQycC0xLAorICAgIDB4MS44ZGIxODA0N2M4OTQ0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAtMHgxLmZmNjlkMGNlZmE4YTI3ZWJmOGNiZjVlYzFjYzc4MzQycC0xLAorICAgIC0weDEuOGRiMTgwNDdjODk0NHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLjk4M2UyODU0NTNiM2YwMDAwMDJlZmM5ZDY1NGM2YTMycC00LAorICAgIDB4MS45OTk5OTljMDIyMzQycC00CisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgLTB4MS45ODNlMjg1NDUzYjNmMDAwMDAyZWZjOWQ2NTRjNmEzMnAtNCwKKyAgICAtMHgxLjk5OTk5OWMwMjIzNDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuOTQ0NDFmZWI3YmU3MTgwMDAwMDA1YzQ2MzYyYjE2ZDhwLTMsCisgICAgMHgxLjk5OTk5OWY5NTE5NjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLjk0NDQxZmViN2JlNzE4MDAwMDAwNWM0NjM2MmIxNmQ4cC0zLAorICAgIC0weDEuOTk5OTk5Zjk1MTk2MHAtMworICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS45YTZhOGU5NmM4NjA0N2ZmZmU5NGJhNDk3OTljMDExZnAtMywKKyAgICAweDEuOWZmZmZmZmZmZmZkZHAtMworICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIC0weDEuOWE2YThlOTZjODYwNDdmZmZlOTRiYTQ5Nzk5YzAxMWZwLTMsCisgICAgLTB4MS45ZmZmZmZmZmZmZmRkcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgMHgxLjllOTQxNTNjZmU0ZGM4MDAzNmMwMzdlMTcyYjdjZWU5cC00LAorICAgIDB4MS5hMDAwMDAwMDAwOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEuOWU5NDE1M2NmZTRkYzgwMDM2YzAzN2UxNzJiN2NlZTlwLTQsCisgICAgLTB4MS5hMDAwMDAwMDAwOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS45ZmQ4YTRkOTk3M2U1N2ZjNDY1ZGU0MWRkYzRjYmFlMnAtNCwKKyAgICAweDEuYTE0N2ViNGMxNzAwNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIC0weDEuOWZkOGE0ZDk5NzNlNTdmYzQ2NWRlNDFkZGM0Y2JhZTJwLTQsCisgICAgLTB4MS5hMTQ3ZWI0YzE3MDA2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMHgxLjYyZTIzZDdkYTVmNmQ4MDEwZDU0OTZhMDg1NzNlMTg4cC0xLAorICAgIDB4MS5hOTQ2Nzg4MjFmMGU5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgLTB4MS42MmUyM2Q3ZGE1ZjZkODAxMGQ1NDk2YTA4NTczZTE4OHAtMSwKKyAgICAtMHgxLmE5NDY3ODgyMWYwZTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAweDEuMDk2ZmUyMjA4MWUyYjgwMDAwN2UzNmM2ODIxMDkwNThwMCwKKyAgICAweDEuYjEwMjM0MjE2Mzk1MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgLTB4MS4wOTZmZTIyMDgxZTJiODAwMDA3ZTM2YzY4MjEwOTA1OHAwLAorICAgIC0weDEuYjEwMjM0MjE2Mzk1MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLjBhNDcxNzM2YjkyM2IxZjE4ODg1YTE3MzA4ZTEyYmVlcDAsCisgICAgMHgxLmI0NDVjMWFkM2NhZDFwMAorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIC0weDEuMGE0NzE3MzZiOTIzYjFmMTg4ODVhMTczMDhlMTJiZWVwMCwKKyAgICAtMHgxLmI0NDVjMWFkM2NhZDFwMAorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS4wYTY2ZDZmNjQ2ZThkMzc2NjIyNTNiZDkxNTVhODRkZXAwLAorICAgIDB4MS5iNGMxZDBjMTBjY2E5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAtMHgxLjBhNjZkNmY2NDZlOGQzNzY2MjI1M2JkOTE1NWE4NGRlcDAsCisgICAgLTB4MS5iNGMxZDBjMTBjY2E5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuYTNhZDYwZTg5ZGE4YjZmMWRkMjBjNjkyMTNiNzYxMmFwLTIsCisgICAgMHgxLmJjZGU2ZjM3OWJjZGVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAtMHgxLmEzYWQ2MGU4OWRhOGI2ZjFkZDIwYzY5MjEzYjc2MTJhcC0yLAorICAgIC0weDEuYmNkZTZmMzc5YmNkZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS4wZTA0YTIzZTczMzc5MzAzNzFkODFmMGNmNGQ3ZTlkY3AwLAorICAgIDB4MS5jMzRwMAorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEuMGUwNGEyM2U3MzM3OTMwMzcxZDgxZjBjZjRkN2U5ZGNwMCwKKyAgICAtMHgxLmMzNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmM3NzI1MGM1MmE0YzRwOTk0CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuYzc3MjUwYzUyYTRjNHA5OTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuYWQwMGY1NDIyMDU4YjdmMTMwY2UyNDc0YjlmYmJkZjhwLTIsCisgICAgMHgxLmM4MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIC0weDEuYWQwMGY1NDIyMDU4YjdmMTMwY2UyNDc0YjlmYmJkZjhwLTIsCisgICAgLTB4MS5jODBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEuNGM1MDY5N2FmZTMyMjdmZDZhZjk2YWQ4MDQxOTFmYzRwMCwKKyAgICAweDEuYzliMjZjOWIyNmNiMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgLTB4MS40YzUwNjk3YWZlMzIyN2ZkNmFmOTZhZDgwNDE5MWZjNHAwLAorICAgIC0weDEuYzliMjZjOWIyNmNiMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLmMyODdiNTY3MmI2NmQ4MjhlYmFmNDc1NmU0ZjYwYWQxcC0zLAorICAgIDB4MS5jOWYwZjFmZTY0OGJmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS5jMjg3YjU2NzJiNjZkODI4ZWJhZjQ3NTZlNGY2MGFkMXAtMywKKyAgICAtMHgxLmM5ZjBmMWZlNjQ4YmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEuY2UzNWU0MGIwYWYyOTgwMDA3ZjQ3ZjQ0ZjExNzllNjlwLTUsCisgICAgMHgxLmNlYjM5Y2U3MzljZTJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAtMHgxLmNlMzVlNDBiMGFmMjk4MDAwN2Y0N2Y0NGYxMTc5ZTY5cC01LAorICAgIC0weDEuY2ViMzljZTczOWNlMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS5jYTUwNzI4MzA4OTllODA3YTQ2ZmQ0NmRlZWQwNmMxM3AtMywKKyAgICAweDEuZDIxZjFiYzA3ZmYxMHAtMworICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIC0weDEuY2E1MDcyODMwODk5ZTgwN2E0NmZkNDZkZWVkMDZjMTNwLTMsCisgICAgLTB4MS5kMjFmMWJjMDdmZjEwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgMHgxLmQ3NTdhZDYzMjFlMWI3ZmYxMGUyYmMyZGVlYTQwMTUycC03LAorICAgIDB4MS5kNzZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAtMHgxLmQ3NTdhZDYzMjFlMWI3ZmYxMGUyYmMyZGVlYTQwMTUycC03LAorICAgIC0weDEuZDc2cC03CisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLmJjNTY4ZmQ2ZWI1OGY3NTE0MDliOTQ1NzE3ZDk1NTRhcC0yLAorICAgIDB4MS5kYThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAtMHgxLmJjNTY4ZmQ2ZWI1OGY3NTE0MDliOTQ1NzE3ZDk1NTRhcC0yLAorICAgIC0weDEuZGE4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMHgxLmRjYjU4Y2RiMjA2NDc3ZmVhMmFjNjEyZWFmZTkwYWYwcC02LAorICAgIDB4MS5kY2Q4MHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIC0weDEuZGNiNThjZGIyMDY0NzdmZWEyYWM2MTJlYWZlOTBhZjBwLTYsCisgICAgLTB4MS5kY2Q4MHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS40ZmVmYzk2MzhhNzlmNTEwOTQwNTNhOTcyMDIzZjZjMnAwLAorICAgIDB4MS5lM2ZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAtMHgxLjRmZWZjOTYzOGE3OWY1MTA5NDA1M2E5NzIwMjNmNmMycDAsCisgICAgLTB4MS5lM2ZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEuZTU1OWY3N2IzZDFiYzdmZTBmMGFmNjIwMDFjNGQ2NGFwLTQsCisgICAgMHgxLmU3YTJjNjhjYTNiYmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAtMHgxLmU1NTlmNzdiM2QxYmM3ZmUwZjBhZjYyMDAxYzRkNjRhcC00LAorICAgIC0weDEuZTdhMmM2OGNhM2JiZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS41MDczMTY1OTU5MTFjYmJlNDc1ZDZhMGQwYzg3OTAwN3AwLAorICAgIDB4MS5lN2YzZjlmY2ZlNzgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAtMHgxLjUwNzMxNjU5NTkxMWNiYmU0NzVkNmEwZDBjODc5MDA3cDAsCisgICAgLTB4MS5lN2YzZjlmY2ZlNzgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEuZGYxMTA4NjRjOWQ5ZDAzMDA0ZWUyNzRhNzBjMGFlMjJwLTMsCisgICAgMHgxLmU3ZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAtMHgxLmRmMTEwODY0YzlkOWQwMzAwNGVlMjc0YTcwYzBhZTIycC0zLAorICAgIC0weDEuZTdmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS43MTQ1ZWFjMjA4OGEzODA5NmExYTEzMzU3ZDJmNWYwMnAwLAorICAgIDB4MS5mcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAtMHgxLjcxNDVlYWMyMDg4YTM4MDk2YTFhMTMzNTdkMmY1ZjAycDAsCisgICAgLTB4MS5mcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuZjJkODg2MDJkOTE1YjdhOTIwZDM4YzlmOWNmZjE2ZThwLTYsCisgICAgMHgxLmYzMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIC0weDEuZjJkODg2MDJkOTE1YjdhOTIwZDM4YzlmOWNmZjE2ZThwLTYsCisgICAgLTB4MS5mMzBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuZjhjZGE2NGEwOGVkYWZhMjAzOWQ5ZDhhOTM1NDY1NDVwLTYsCisgICAgMHgxLmY4ZjY4ZWM5ZTE3ZWVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAtMHgxLmY4Y2RhNjRhMDhlZGFmYTIwMzlkOWQ4YTkzNTQ2NTQ1cC02LAorICAgIC0weDEuZjhmNjhlYzllMTdlZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS44ZTExOTlkMGZmZDE5N2ZmZmU5M2VjYWZiYzdkZjJlMXAwLAorICAgIDB4MS5mOGZmZmZlZmZmZmFlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAtMHgxLjhlMTE5OWQwZmZkMTk3ZmZmZTkzZWNhZmJjN2RmMmUxcDAsCisgICAgLTB4MS5mOGZmZmZlZmZmZmFlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuZWZjMjBmZjBlYTQzNDdmYjA5Zjc1MWYwNjIyNWNmM2VwLTMsCisgICAgMHgxLmY5YWM4N2MyMmMzODFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAtMHgxLmVmYzIwZmYwZWE0MzQ3ZmIwOWY3NTFmMDYyMjVjZjNlcC0zLAorICAgIC0weDEuZjlhYzg3YzIyYzM4MXAtMworICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS5mYTU1NTc5ZTBiYTU3N2ZlOTI5ZGM4M2ViNzk5NWFiY3AtNiwKKyAgICAweDEuZmE3ZTlmYTdlOWY4OXAtNgorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIC0weDEuZmE1NTU3OWUwYmE1NzdmZTkyOWRjODNlYjc5OTVhYmNwLTYsCisgICAgLTB4MS5mYTdlOWZhN2U5Zjg5cC02CisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLmZhNTU1NzllMGJhNmY3YTBiNzQwZDhkYWQ4MGM3NmRlcC02LAorICAgIDB4MS5mYTdlOWZhN2U5ZmExcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgLTB4MS5mYTU1NTc5ZTBiYTZmN2EwYjc0MGQ4ZGFkODBjNzZkZXAtNiwKKyAgICAtMHgxLmZhN2U5ZmE3ZTlmYTFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuZmRiMDY3NjM4ZWI1Nzc5OTMxOTQ2MTZiMWYwMjI1M2VwLTYsCisgICAgMHgxLmZkZGE4MmZlZjY2ZWVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAtMHgxLmZkYjA2NzYzOGViNTc3OTkzMTk0NjE2YjFmMDIyNTNlcC02LAorICAgIC0weDEuZmRkYTgyZmVmNjZlZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS5mNThhMzIyNWQ1MTdmN2I4NWQwMTQ2NDBmOTI5NjM1ZHAtMywKKyAgICAweDEuZmZjZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIC0weDEuZjU4YTMyMjVkNTE3ZjdiODVkMDE0NjQwZjkyOTYzNWRwLTMsCisgICAgLTB4MS5mZmNmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLmY1YTg1MDdjYTJlN2Y3NGZlODM4OTcxODIwOGJjYjE2cC0zLAorICAgIDB4MS5mZmVmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgLTB4MS5mNWE4NTA3Y2EyZTdmNzRmZTgzODk3MTgyMDhiY2IxNnAtMywKKyAgICAtMHgxLmZmZWZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuMWI2YWU1ZTcwZDU3YTAwMjQ4MjViMGNlZTg2ZmQ0MTVwMCwKKyAgICAweDEuZmZlZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgLTB4MS4xYjZhZTVlNzBkNTdhMDAyNDgyNWIwY2VlODZmZDQxNXAwLAorICAgIC0weDEuZmZlZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjgyMjQ4N2U0MzRhNjg4NDMzZjg1ZjRkOWQ1OWY1YzkxcDAsCisgICAgMHgxLmZmZWZmZmZmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIC0weDEuODIyNDg3ZTQzNGE2ODg0MzNmODVmNGQ5ZDU5ZjVjOTFwMCwKKyAgICAtMHgxLmZmZWZmZmZmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5mZmY4ZTYxZWFkY2Y3cDEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmY4ZTYxZWFkY2Y3cDEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuZjViMzlmOTI1NzhlMDAzY2UwMjU0NDVkNTQ0OGM3MjNwLTMsCisgICAgMHgxLmZmZmMwM2ZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAtMHgxLmY1YjM5ZjkyNTc4ZTAwM2NlMDI1NDQ1ZDU0NDhjNzIzcC0zLAorICAgIC0weDEuZmZmYzAzZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDB4MS4xYjZlMGY5NTIxOTI1ODAxZDMyYjQzNzVkMjQwZTViMXAwLAorICAgIDB4MS5mZmZmY2ZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAtMHgxLjFiNmUwZjk1MjE5MjU4MDFkMzJiNDM3NWQyNDBlNWIxcDAsCisgICAgLTB4MS5mZmZmY2ZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuZjViNzVkZWQyMjY0NDdmZTkwYzZjYjkwNDk4N2YyNzVwLTMsCisgICAgMHgxLmZmZmZmZTNmZmZmYmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAtMHgxLmY1Yjc1ZGVkMjI2NDQ3ZmU5MGM2Y2I5MDQ5ODdmMjc1cC0zLAorICAgIC0weDEuZmZmZmZlM2ZmZmZiZnAtMworICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIDB4MS44YTIwNWZkNTI4N2ZmN2ZmMjYyYmFkNjUxMzIwNzU0M3AwLAorICAgIDB4MS5mZmZmZmZmM2ZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLjhhMjA1ZmQ1Mjg3ZmY3ZmYyNjJiYWQ2NTEzMjA3NTQzcDAsCisgICAgLTB4MS5mZmZmZmZmM2ZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEuZmZkNTViYmE5NjJkZjc5OWFhMGMzYTVhNWVkZjc2MzFwLTYsCisgICAgMHgxLmZmZmZmZmZmZmVjYjZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAtMHgxLmZmZDU1YmJhOTYyZGY3OTlhYTBjM2E1YTVlZGY3NjMxcC02LAorICAgIC0weDEuZmZmZmZmZmZmZWNiNnAtNgorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIDB4MS5mZmQ1NWJiYTk3MmRmNzk5YWEwYzNhODc3MzlhNDc3ZHAtNiwKKyAgICAweDEuZmZmZmZmZmZmZmNiYXAtNgorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIC0weDEuZmZkNTViYmE5NzJkZjc5OWFhMGMzYTg3NzM5YTQ3N2RwLTYsCisgICAgLTB4MS5mZmZmZmZmZmZmY2JhcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMHgxLmRhYzY3MDU2MWJiMzc2OGFkZmM4OGJkOTMwNzUxYTA2cC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmUycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgLTB4MS5kYWM2NzA1NjFiYjM3NjhhZGZjODhiZDkzMDc1MWEwNnAtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZTJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuOGEyMDVmZDU1ODczZjgwMDQ1OWJlNjU4NTI2MjRiNWZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmM3A0CisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgLTB4MS44YTIwNWZkNTU4NzNmODAwNDU5YmU2NTg1MjYyNGI1ZnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmM3A0CisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLmZmZmZmNTU1NTViYjNiYjczMTcyY2Y4Y2ZkZWY1MGY5cC0xMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmOHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAtMHgxLmZmZmZmNTU1NTViYjNiYjczMTcyY2Y4Y2ZkZWY1MGY5cC0xMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjhwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMHgxLmY1Yjc1ZjkyYzgwZGI4MGNiZDcxMWZjZGQxMDliOTE4cC0zLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgLTB4MS5mNWI3NWY5MmM4MGRiODBjYmQ3MTFmY2RkMTA5YjkxOHAtMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuZmZmZmZmZmZmZmZmYjU1NTU1NTU1NTU1NjNiYmJiYmJwLTI2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEuZmZmZmZmZmZmZmZmYjU1NTU1NTU1NTU1NjNiYmJiYmJwLTI2LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIC0weDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIDB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIC0weDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgMHgxLjk5OTk5OTQyMzdmYWIxZGE2NDk5MmEzMTAzMTI1MDVlcC0xMywKKyAgICAweDEuOTk5OTk5OTk5OTk5YXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAtMHgxLjk5OTk5OTQyMzdmYWIxZGE2NDk5MmEzMTAzMTI1MDVlcC0xMywKKyAgICAtMHgxLjk5OTk5OTk5OTk5OWFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLjk5OTk5ODNjMTMxZjdhMTBjNWRkNWQ2ZTdjZTNjYjgxcC0xMiwKKyAgICAweDEuOTk5OTk5OTk5OTk5YXAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAtMHgxLjk5OTk5ODNjMTMxZjdhMTBjNWRkNWQ2ZTdjZTNjYjgxcC0xMiwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OWFwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgMHgxLjMzMzMzMGU1NjA0OThjNzI3ZTRkNjI2NWJkMmZmZWM4cC0xMSwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAtMHgxLjMzMzMzMGU1NjA0OThjNzI3ZTRkNjI2NWJkMmZmZWM4cC0xMSwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzRwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgMHgxLjk5OTk5NDIzN2ZjYTMyYjVhMjZmZjhmN2Q5YmQ4ZDM1cC0xMSwKKyAgICAweDEuOTk5OTk5OTk5OTk5YXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAtMHgxLjk5OTk5NDIzN2ZjYTMyYjVhMjZmZjhmN2Q5YmQ4ZDM1cC0xMSwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OWFwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgMHgxLmZmZmZmNTU1NTViYmJiYjcyOTcyZDAwY2ZkZTc1MmY5cC0xMSwKKyAgICAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAtMHgxLmZmZmZmNTU1NTViYmJiYjcyOTcyZDAwY2ZkZTc1MmY5cC0xMSwKKyAgICAtMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgMHgxLjMzMzMyOWZiZTdlYmVlZjA5ZTUxNzExYjQ0Zjg2NTM5cC0xMCwKKyAgICAweDEuMzMzMzMzMzMzMzMzM3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAtMHgxLjMzMzMyOWZiZTdlYmVlZjA5ZTUxNzExYjQ0Zjg2NTM5cC0xMCwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzNwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgMHgxLjY2NjY1N2MzZWRmNWZjNjBlOGVlMjJhNGNmZTA1NjljcC0xMCwKKyAgICAweDEuNjY2NjY2NjY2NjY2NnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAtMHgxLjY2NjY1N2MzZWRmNWZjNjBlOGVlMjJhNGNmZTA1NjljcC0xMCwKKyAgICAtMHgxLjY2NjY2NjY2NjY2NjZwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgMHgxLjk5OTk4M2MxMzNlZTgxZDQxN2NhZTIxZTQ0MDQ5MmZmcC0xMCwKKyAgICAweDEuOTk5OTk5OTk5OTk5OXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAtMHgxLjk5OTk4M2MxMzNlZTgxZDQxN2NhZTIxZTQ0MDQ5MmZmcC0xMCwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OTlwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzQxCisgICAgMHgxLmNjY2NhZGIyMzBkNWJlMjA1NWY4ZjNiNjY4ZDU3YzYxcC0xMCwKKyAgICAweDEuY2NjY2NjY2NjY2NjY3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAtMHgxLmNjY2NhZGIyMzBkNWJlMjA1NWY4ZjNiNjY4ZDU3YzYxcC0xMCwKKyAgICAtMHgxLmNjY2NjY2NjY2NjY2NwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzQzCisgICAgMHgxLjA2NjRmNmQ1ZTFiNTU5MzlmYTM5ZDM5NzgzNTRmYjA4cC03LAorICAgIDB4MS4wNjY2NjY2NjY2NjY2cC03CisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgLTB4MS4wNjY0ZjZkNWUxYjU1OTM5ZmEzOWQzOTc4MzU0ZmIwOHAtNywKKyAgICAtMHgxLjA2NjY2NjY2NjY2NjZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAweDEuY2NjNTA2NjE1MjU2YjRkNjYwYWNiZTU1MzY2MTRiYzBwLTcsCisgICAgMHgxLmNjY2NjY2NjY2NjY2NwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAtMHgxLmNjYzUwNjYxNTI1NmI0ZDY2MGFjYmU1NTM2NjE0YmMwcC03LAorICAgIC0weDEuY2NjY2NjY2NjY2NjY3AtNworICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIDB4MS40OThlMzg1ZTYyYjQyZDQwNzA4MzIyYjY1YjlhOTJhMnAtNiwKKyAgICAweDEuNDk5OTk5OTk5OTk5OXAtNgorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIC0weDEuNDk4ZTM4NWU2MmI0MmQ0MDcwODMyMmI2NWI5YTkyYTJwLTYsCisgICAgLTB4MS40OTk5OTk5OTk5OTk5cC02CisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgMHgxLmFjYjNiZjI4ODhmZDI1M2NkZTcyYTY1ZmY2YjVhNWVkcC02LAorICAgIDB4MS5hY2NjY2NjY2NjY2NjcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzUwCisgICAgLTB4MS5hY2IzYmYyODg4ZmQyNTNjZGU3MmE2NWZmNmI1YTVlZHAtNiwKKyAgICAtMHgxLmFjY2NjY2NjY2NjY2NwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAweDEuMDdlODllM2FiZWU3ZGY1YmMyMmI4ODM4NTZlNWQ4MDJwLTUsCisgICAgMHgxLjA4MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIC0weDEuMDdlODllM2FiZWU3ZGY1YmMyMmI4ODM4NTZlNWQ4MDJwLTUsCisgICAgLTB4MS4wODBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAweDEuMzk3MjZiMDk2YWZiNTY1N2YwMzdkNDRjZWFiYWNmZGVwLTUsCisgICAgMHgxLjM5OTk5OTk5OTk5OWFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAtMHgxLjM5NzI2YjA5NmFmYjU2NTdmMDM3ZDQ0Y2VhYmFjZmRlcC01LAorICAgIC0weDEuMzk5OTk5OTk5OTk5YXAtNQorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIDB4MS42YWY2NTk3NTJhOGU5MGU3OTgyMzYxNmQxODkyMmQwNnAtNSwKKyAgICAweDEuNmIzMzMzMzMzMzMzNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIC0weDEuNmFmNjU5NzUyYThlOTBlNzk4MjM2MTZkMTg5MjJkMDZwLTUsCisgICAgLTB4MS42YjMzMzMzMzMzMzM0cC01CisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgMHgxLjljNzM3ZDliNGQwNzA5MmMyOTU1ODQ5NTFhMWY1YTcxcC01LAorICAgIDB4MS45Y2NjY2NjY2NjY2NlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgLTB4MS45YzczN2Q5YjRkMDcwOTJjMjk1NTg0OTUxYTFmNWE3MXAtNSwKKyAgICAtMHgxLjljY2NjY2NjY2NjY2VwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAweDEuY2RlOGVjNWJiNjVmMGU3NDI0MDVlNTZiNWFlNDI2ZTJwLTUsCisgICAgMHgxLmNlNjY2NjY2NjY2NjZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAtMHgxLmNkZThlYzViYjY1ZjBlNzQyNDA1ZTU2YjVhZTQyNmUycC01LAorICAgIC0weDEuY2U2NjY2NjY2NjY2NnAtNQorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIDB4MS4zMzU5YmNlODVkNGMwZWRmMDYyYTMxNmFjOWEzYjAzNXAtMSwKKyAgICAweDEuNWU3ZmM0MzY5YmRhZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIC0weDEuMzM1OWJjZTg1ZDRjMGVkZjA2MmEzMTZhYzlhM2IwMzVwLTEsCisgICAgLTB4MS41ZTdmYzQzNjliZGFkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgMHgxLmQ1Y2E3MDg1NjE0NTBiZWM4Y2Q1NGNkMDZlZjcxNTg4cC0xLAorICAgIDB4MS40ZTdmYzQzNjliZGFkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAtMHgxLmQ1Y2E3MDg1NjE0NTBiZWM4Y2Q1NGNkMDZlZjcxNTg4cC0xLAorICAgIC0weDEuNGU3ZmM0MzY5YmRhZHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgMHgxLjE3YWM0NDFlZWFjMmUwZTEzMTYzM2Q1ZGJkYTExOTJkcDAsCisgICAgMHgxLmVkYmZhNjUxZTljODRwMAorICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIC0weDEuMTdhYzQ0MWVlYWMyZTBlMTMxNjMzZDVkYmRhMTE5MmRwMCwKKyAgICAtMHgxLmVkYmZhNjUxZTljODRwMAorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIDB4MS4zMjc5ZTg1NTkwYmVkNWMwYTdkNDY1YzcwZTkzMTJkYnAwLAorICAgIDB4MS40NjdmYzQzNjliZGFkcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAtMHgxLjMyNzllODU1OTBiZWQ1YzBhN2Q0NjVjNzBlOTMxMmRicDAsCisgICAgLTB4MS40NjdmYzQzNjliZGFkcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICAweDEuNDNmNjQ0YTIzZjExMzEyYjBiYWVkYTY0Njk5MzlkZjFwMCwKKyAgICAweDEuOTYxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgLTB4MS40M2Y2NDRhMjNmMTEzMTJiMGJhZWRhNjQ2OTkzOWRmMXAwLAorICAgIC0weDEuOTYxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgMHgxLjUwMmExZDNkYTJiNjJjZGFmZGZjOGRmODk2ZmI3ODFlcDAsCisgICAgMHgxLmU1YmZhNjUxZTljODNwMQorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIC0weDEuNTAyYTFkM2RhMmI2MmNkYWZkZmM4ZGY4OTZmYjc4MWVwMCwKKyAgICAtMHgxLmU1YmZhNjUxZTljODNwMQorICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIDB4MS41OTIwNjZhYTczM2U1NjUzNWVmMjM0ODdmMWJhNDVhYnAwLAorICAgIDB4MS4xYWFmY2JhZmM4NWY3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAtMHgxLjU5MjA2NmFhNzMzZTU2NTM1ZWYyMzQ4N2YxYmE0NWFicDAsCisgICAgLTB4MS4xYWFmY2JhZmM4NWY3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzUKKyAgICAweDEuNWZmOGUyNzU1MTY1ZDk1ZWY0ZGZhMjM4YjY5MDM1YzNwMCwKKyAgICAweDEuNDI3ZmM0MzY5YmRhZHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgLTB4MS41ZmY4ZTI3NTUxNjVkOTVlZjRkZmEyMzhiNjkwMzVjM3AwLAorICAgIC0weDEuNDI3ZmM0MzY5YmRhZHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgMHgxLjY1NWQ2NTQ4NWRjMTcyYWQxZGE1ZDM3NjEwNjk4N2RlcDAsCisgICAgMHgxLjZhNGZiY2JkNmY1NjJwMgorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIC0weDEuNjU1ZDY1NDg1ZGMxNzJhZDFkYTVkMzc2MTA2OTg3ZGVwMCwKKyAgICAtMHgxLjZhNGZiY2JkNmY1NjJwMgorICB9LAorICB7IC8vIEVudHJ5IDM3OQorICAgIDB4MS42NTcxMWQ2YmZkNTMwM2IyNjZlMWY3NjY5MTYzNTNjMHAwLAorICAgIDB4MS42YWYyZWZmMGEyODk2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODAKKyAgICAtMHgxLjY1NzExZDZiZmQ1MzAzYjI2NmUxZjc2NjkxNjM1M2MwcDAsCisgICAgLTB4MS42YWYyZWZmMGEyODk2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODEKKyAgICAweDEuNjAyYTJhYWE1OTA0MWU3M2ZlOWNiZTUwMThkOTI1OGJwMCwKKyAgICAweDEuNDNjNjJhOWQwMjQxNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgLTB4MS42MDJhMmFhYTU5MDQxZTczZmU5Y2JlNTAxOGQ5MjU4YnAwLAorICAgIC0weDEuNDNjNjJhOWQwMjQxNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgMHgxLjU5N2Y0NmUxMGFhMGVmNmU3Yjc5YmFiZDUyMjE4ZTQxcDAsCisgICAgMHgxLjFjOTk2NTQ5NjFmOTJwMgorICB9LAorICB7IC8vIEVudHJ5IDM4NAorICAgIC0weDEuNTk3ZjQ2ZTEwYWEwZWY2ZTdiNzliYWJkNTIyMThlNDFwMCwKKyAgICAtMHgxLjFjOTk2NTQ5NjFmOTJwMgorICB9LAorICB7IC8vIEVudHJ5IDM4NQorICAgIDB4MS41MGQyMDI1NGEyZmY0MmRhYjczMjUyMzk1OGZhMDI0Y3AwLAorICAgIDB4MS5lYWQ5M2ZlYjgzNjFmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODYKKyAgICAtMHgxLjUwZDIwMjU0YTJmZjQyZGFiNzMyNTIzOTU4ZmEwMjRjcDAsCisgICAgLTB4MS5lYWQ5M2ZlYjgzNjFmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODcKKyAgICAweDEuNDUxOTBjMDMwZGYwZjY4NjExZjgxNmEzNmQxMGI1OWFwMCwKKyAgICAweDEuOWM3ZmI1NDQ0MmQxYXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgLTB4MS40NTE5MGMwMzBkZjBmNjg2MTFmODE2YTM2ZDEwYjU5YXAwLAorICAgIC0weDEuOWM3ZmI1NDQ0MmQxYXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzg5CisgICAgMHgxLjM0Nzk0ZDY5OTNlNjAzZGMyMzZkYzk3MDBiYzk4NGU5cDAsCisgICAgMHgxLjRlMjYyYTlkMDI0MTVwMQorICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIC0weDEuMzQ3OTRkNjk5M2U2MDNkYzIzNmRjOTcwMGJjOTg0ZTlwMCwKKyAgICAtMHgxLjRlMjYyYTlkMDI0MTVwMQorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS4xYjU5ODkxMGJkOWJkZmVlYjYwOGI2YjQxYTk2ZjI4N3AwLAorICAgIDB4MS5mZjk5M2ZlYjgzNjIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAtMHgxLjFiNTk4OTEwYmQ5YmRmZWViNjA4YjZiNDFhOTZmMjg3cDAsCisgICAgLTB4MS5mZjk5M2ZlYjgzNjIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAweDEuZTQ0YzkzMDkxOTdjNGY5ODM5MjIxNWE0MjQ2MzBiYjRwLTEsCisgICAgMHgxLjYyZTYyYTlkMDI0MTZwMAorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIC0weDEuZTQ0YzkzMDkxOTdjNGY5ODM5MjIxNWE0MjQ2MzBiYjRwLTEsCisgICAgLTB4MS42MmU2MmE5ZDAyNDE2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAweDEuNTE1MGYxYWNmYjAxOTBhYTk3OTRiYTAyMTFiNGViNGJwLTEsCisgICAgMHgxLjhjNjYyYTlkMDI0MTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAtMHgxLjUxNTBmMWFjZmIwMTkwYWE5Nzk0YmEwMjExYjRlYjRicC0xLAorICAgIC0weDEuOGM2NjJhOWQwMjQxOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIC0weDEuMDczZWExNWM2MTRlMTE2NjhiYTlmZTc1ODg4ZmVlMTNwMCwKKyAgICAtMHgxLmE4YWExZDExYzQ0ZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDM5OAorICAgIDB4MS4wNzNlYTE1YzYxNGUxMTY2OGJhOWZlNzU4ODhmZWUxM3AwLAorICAgIDB4MS5hOGFhMWQxMWM0NGZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTkKKyAgICAtMHgxLjAyMTU0OTVjZWIxODA2YzE1NTA0MjY0ZTlmMWJlMjIycDAsCisgICAgLTB4MS45NWVjOGI5ZTAzZDU0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDAKKyAgICAweDEuMDIxNTQ5NWNlYjE4MDZjMTU1MDQyNjRlOWYxYmUyMjJwMCwKKyAgICAweDEuOTVlYzhiOWUwM2Q1NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDAxCisgICAgLTB4MS5mOTIzNjYxYjUyNjQ3ZTY1OGMxZjk3MDdmODdkMTYwNnAtMSwKKyAgICAtMHgxLjgzMmVmYTJhNDM1YTlwMAorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIDB4MS5mOTIzNjYxYjUyNjQ3ZTY1OGMxZjk3MDdmODdkMTYwNnAtMSwKKyAgICAweDEuODMyZWZhMmE0MzVhOXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDAzCisgICAgLTB4MS5lZDU3ODA2YjkwOTBkZWY3MzEwNjA0YmZmZWQwMDkzZHAtMSwKKyAgICAtMHgxLjcwNzE2OGI2ODJkZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIDB4MS5lZDU3ODA2YjkwOTBkZWY3MzEwNjA0YmZmZWQwMDkzZHAtMSwKKyAgICAweDEuNzA3MTY4YjY4MmRmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDA1CisgICAgLTB4MS5lMGI1MjRiNTc4YjQyMTIxMDBmNWY3OGVjZDY5YTFkZHAtMSwKKyAgICAtMHgxLjVkYjNkNzQyYzI2NTNwMAorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIDB4MS5lMGI1MjRiNTc4YjQyMTIxMDBmNWY3OGVjZDY5YTFkZHAtMSwKKyAgICAweDEuNWRiM2Q3NDJjMjY1M3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDA3CisgICAgLTB4MS5kMzI5MDcwMWU4YWM5ODdlYTU3MzJiMTY3MDFhMDVmY3AtMSwKKyAgICAtMHgxLjRhZjY0NWNmMDFlYThwMAorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIDB4MS5kMzI5MDcwMWU4YWM5ODdlYTU3MzJiMTY3MDFhMDVmY3AtMSwKKyAgICAweDEuNGFmNjQ1Y2YwMWVhOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDA5CisgICAgLTB4MS5jNDllNDg4NjgzYWNlNGQ1ZmQ0NjgzZjdjYWFiN2U5ZnAtMSwKKyAgICAtMHgxLjM4MzhiNDViNDE2ZmRwMAorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIDB4MS5jNDllNDg4NjgzYWNlNGQ1ZmQ0NjgzZjdjYWFiN2U5ZnAtMSwKKyAgICAweDEuMzgzOGI0NWI0MTZmZHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDExCisgICAgLTB4MS5iNGZlODQzZTllODAzYjIzNDlmZmQzODRhYWI4MDdmM3AtMSwKKyAgICAtMHgxLjI1N2IyMmU3ODBmNTJwMAorICB9LAorICB7IC8vIEVudHJ5IDQxMgorICAgIDB4MS5iNGZlODQzZTllODAzYjIzNDlmZmQzODRhYWI4MDdmM3AtMSwKKyAgICAweDEuMjU3YjIyZTc4MGY1MnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEzCisgICAgLTB4MS5hNDMxZjM5YmM2ZjRmYzJmNTMzZmI4YjY4NWY3ZmE1NnAtMSwKKyAgICAtMHgxLjEyYmQ5MTczYzA3YWJwMAorICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIDB4MS5hNDMxZjM5YmM2ZjRmYzJmNTMzZmI4YjY4NWY3ZmE1NnAtMSwKKyAgICAweDEuMTJiZDkxNzNjMDdhYnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDE1CisgICAgLTB4MS44NzEyNzhlMmIwMjI2YzdiZTMxNGYzOWU2MzRjYjg2NnAtMSwKKyAgICAtMHgxLmVhNWMzZWQ1YjM4NTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAweDEuODcxMjc4ZTJiMDIyNmM3YmUzMTRmMzllNjM0Y2I4NjZwLTEsCisgICAgMHgxLmVhNWMzZWQ1YjM4NTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAtMHgxLjdiOGIzYmUxM2ZjYTYxNGM4NThhZjBkMmMyODc5YjdhcC0xLAorICAgIC0weDEuZDRiODdkYWI2NzBhMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxOAorICAgIDB4MS43YjhiM2JlMTNmY2E2MTRjODU4YWYwZDJjMjg3OWI3YXAtMSwKKyAgICAweDEuZDRiODdkYWI2NzBhMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIC0weDEuNmY4NTFlZDYwZjFlMGNlMWZmMmQ1NTc3NDMzYzVhYjJwLTEsCisgICAgLTB4MS5iZjE0YmM4MTFhOGYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgMHgxLjZmODUxZWQ2MGYxZTBjZTFmZjJkNTU3NzQzM2M1YWIycC0xLAorICAgIDB4MS5iZjE0YmM4MTFhOGYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgLTB4MS42MmZiNjQ0ZGUxOThjY2JiMGI3ZTBkMzI0ODRkNGVjMHAtMSwKKyAgICAtMHgxLmE5NzBmYjU2Y2UxNDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAweDEuNjJmYjY0NGRlMTk4Y2NiYjBiN2UwZDMyNDg0ZDRlYzBwLTEsCisgICAgMHgxLmE5NzBmYjU2Y2UxNDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAtMHgxLjU1ZTk4NmI0YWZlMGNmZGNmMDEzODYzNGM3Yzk1YjJicC0xLAorICAgIC0weDEuOTNjZDNhMmM4MTk5MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQyNAorICAgIDB4MS41NWU5ODZiNGFmZTBjZmRjZjAxMzg2MzRjN2M5NWIyYnAtMSwKKyAgICAweDEuOTNjZDNhMmM4MTk5MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQyNQorICAgIC0weDEuNDg0YjUyMTI2YTI3MzVkZWIyMjQ2MzJjNGMyZTQwNDJwLTEsCisgICAgLTB4MS43ZTI5NzkwMjM1MWUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDI2CisgICAgMHgxLjQ4NGI1MjEyNmEyNzM1ZGViMjI0NjMyYzRjMmU0MDQycC0xLAorICAgIDB4MS43ZTI5NzkwMjM1MWUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDI3CisgICAgLTB4MS4zYTFkMDFjOWY0YjFlOTk2ODVlM2ZlNzM5ZmRjZmZkYXAtMSwKKyAgICAtMHgxLjY4ODViN2Q3ZThhMzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAweDEuM2ExZDAxYzlmNGIxZTk5Njg1ZTNmZTczOWZkY2ZmZGFwLTEsCisgICAgMHgxLjY4ODViN2Q3ZThhMzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAtMHgxLjJiNWI2MjYzNTNiYjQ3MTQ4NzQyZjljMDUzY2Q0NWMzcC0xLAorICAgIC0weDEuNTJlMWY2YWQ5YzI4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIDB4MS4yYjViNjI2MzUzYmI0NzE0ODc0MmY5YzA1M2NkNDVjM3AtMSwKKyAgICAweDEuNTJlMWY2YWQ5YzI4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzMQorICAgIC0weDEuMWMwM2Y3MzVlODE4MTYzNjk4MDQzZmZhNTI0ZGQ1ZjdwLTEsCisgICAgLTB4MS4zZDNlMzU4MzRmYWQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgMHgxLjFjMDNmNzM1ZTgxODE2MzY5ODA0M2ZmYTUyNGRkNWY3cC0xLAorICAgIDB4MS4zZDNlMzU4MzRmYWQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgLTB4MS5lYWI3YjJlZGJlMjZlYjFiNWZiMTQ5MzU3ZjUxZDZjOXAtMiwKKyAgICAtMHgxLjBhMGIwMjUwMWM3OTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzQKKyAgICAweDEuZWFiN2IyZWRiZTI2ZWIxYjVmYjE0OTM1N2Y1MWQ2YzlwLTIsCisgICAgMHgxLjBhMGIwMjUwMWM3OTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAtMHgxLmJiMTJmMzRiYmVmZDYzMDAyNmIzNTFiYTE1YzNkMjU2cC0yLAorICAgIC0weDEuZDhmNzIwOGU2YjgyY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIDB4MS5iYjEyZjM0YmJlZmQ2MzAwMjZiMzUxYmExNWMzZDI1NnAtMiwKKyAgICAweDEuZDhmNzIwOGU2YjgyY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDQzNworICAgIC0weDEuODk0YWUwY2IwZWUyZjAwNzg5ZWVlMDkzOTk4YjRhOWJwLTIsCisgICAgLTB4MS45ZGQ4M2M3YzllMTI2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLjg5NGFlMGNiMGVlMmYwMDc4OWVlZTA5Mzk5OGI0YTlicC0yLAorICAgIDB4MS45ZGQ4M2M3YzllMTI2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgLTB4MS41NTc5ZmRjM2E4ZjNmOWNmM2Y4NjNkYzZhYTliNzE5OHAtMiwKKyAgICAtMHgxLjYyYjk1ODZhZDBhMjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuNTU3OWZkYzNhOGYzZjljZjNmODYzZGM2YWE5YjcxOThwLTIsCisgICAgMHgxLjYyYjk1ODZhZDBhMjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDEKKyAgICAtMHgxLjFmYzc5Y2ZiZjRlN2I1NWY0ZGMyNWYxODkwZmVjZDUzcC0yLAorICAgIC0weDEuMjc5YTc0NTkwMzMxYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIDB4MS4xZmM3OWNmYmY0ZTdiNTVmNGRjMjVmMTg5MGZlY2Q1M3AtMiwKKyAgICAweDEuMjc5YTc0NTkwMzMxYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ0MworICAgIC0weDEuZDBkMGY4NWY5NzNjY2U1NDdiYjBkYzBhMzg3MDhiZmZwLTMsCisgICAgLTB4MS5kOGY3MjA4ZTZiODI5cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgMHgxLmQwZDBmODVmOTczY2NlNTQ3YmIwZGMwYTM4NzA4YmZmcC0zLAorICAgIDB4MS5kOGY3MjA4ZTZiODI5cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgLTB4MS41ZjNkNDE1Y2I0N2ZlZDc2MDA3MmRiYWViMjY4Y2VlZnAtMywKKyAgICAtMHgxLjYyYjk1ODZhZDBhMWVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDYKKyAgICAweDEuNWYzZDQxNWNiNDdmZWQ3NjAwNzJkYmFlYjI2OGNlZWZwLTMsCisgICAgMHgxLjYyYjk1ODZhZDBhMWVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDcKKyAgICAtMHgxLmQ2ZTE0MzFkZTViZTU2MzBkZWMzM2QzMWZiOTI2Y2JmcC00LAorICAgIC0weDEuZDhmNzIwOGU2YjgyNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIDB4MS5kNmUxNDMxZGU1YmU1NjMwZGVjMzNkMzFmYjkyNmNiZnAtNCwKKyAgICAweDEuZDhmNzIwOGU2YjgyNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIC0weDEuZDg3MGRjZmNmZTdkNGNlMzc0MmM3MjY4ZjhmNWUwZThwLTUsCisgICAgLTB4MS5kOGY3MjA4ZTZiODJkcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgMHgxLmQ4NzBkY2ZjZmU3ZDRjZTM3NDJjNzI2OGY4ZjVlMGU4cC01LAorICAgIDB4MS5kOGY3MjA4ZTZiODJkcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgMHgxLmQ4NzBkY2ZjZmU3ZDRjZTM3NDJjNzI2OGY4ZjVlMGU4cC01LAorICAgIDB4MS5kOGY3MjA4ZTZiODJkcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgLTB4MS5kODcwZGNmY2ZlN2Q0Y2UzNzQyYzcyNjhmOGY1ZTBlOHAtNSwKKyAgICAtMHgxLmQ4ZjcyMDhlNmI4MmRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTMKKyAgICAweDEuZDZlMTQzMWRlNWJlYzRiNzliNjRlYzVhNjdiYmNjMDhwLTQsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTQKKyAgICAtMHgxLmQ2ZTE0MzFkZTViZWM0Yjc5YjY0ZWM1YTY3YmJjYzA4cC00LAorICAgIC0weDEuZDhmNzIwOGU2YjgyZHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ1NQorICAgIDB4MS41ZjNkNDE1Y2I0ODAyYjk4Y2M0MTI2M2VkYTdmMjQyYXAtMywKKyAgICAweDEuNjJiOTU4NmFkMGEyMnAtMworICB9LAorICB7IC8vIEVudHJ5IDQ1NgorICAgIC0weDEuNWYzZDQxNWNiNDgwMmI5OGNjNDEyNjNlZGE3ZjI0MmFwLTMsCisgICAgLTB4MS42MmI5NTg2YWQwYTIycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDU3CisgICAgMHgxLmQwZDBmODVmOTczZDBiMTZlOWRlM2EwM2JkYzY4MDhicC0zLAorICAgIDB4MS5kOGY3MjA4ZTZiODJkcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgLTB4MS5kMGQwZjg1Zjk3M2QwYjE2ZTlkZTNhMDNiZGM2ODA4YnAtMywKKyAgICAtMHgxLmQ4ZjcyMDhlNmI4MmRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTkKKyAgICAweDEuMWZjNzljZmJmNGU3ZDJlOTI2NWZlOGYxMmVkYTk2Y2FwLTIsCisgICAgMHgxLjI3OWE3NDU5MDMzMWNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjAKKyAgICAtMHgxLjFmYzc5Y2ZiZjRlN2QyZTkyNjVmZThmMTJlZGE5NmNhcC0yLAorICAgIC0weDEuMjc5YTc0NTkwMzMxY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDQ2MQorICAgIDB4MS41NTc5ZmRjM2E4ZjQxNjYxODhhYWQwMGZjZjcxYjUxMHAtMiwKKyAgICAweDEuNjJiOTU4NmFkMGEyMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ2MgorICAgIC0weDEuNTU3OWZkYzNhOGY0MTY2MTg4YWFkMDBmY2Y3MWI1MTBwLTIsCisgICAgLTB4MS42MmI5NTg2YWQwYTIycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDYzCisgICAgMHgxLjg5NGFlMGNiMGVlMzBiODk1ZjYzODFmM2IxMzNkYzA0cC0yLAorICAgIDB4MS45ZGQ4M2M3YzllMTI4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDY0CisgICAgLTB4MS44OTRhZTBjYjBlZTMwYjg5NWY2MzgxZjNiMTMzZGMwNHAtMiwKKyAgICAtMHgxLjlkZDgzYzdjOWUxMjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjUKKyAgICAweDEuYmIxMmYzNGJiZWZkN2Q1ZmNjYWRiMTYwMTAzYTIwMDFwLTIsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjYKKyAgICAtMHgxLmJiMTJmMzRiYmVmZDdkNWZjY2FkYjE2MDEwM2EyMDAxcC0yLAorICAgIC0weDEuZDhmNzIwOGU2YjgyZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIDB4MS5lYWI3YjJlZGJlMjZlYjFiNWZiMTQ5MzU3ZjUxZDZjOXAtMiwKKyAgICAweDEuMGEwYjAyNTAxYzc5OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIC0weDEuZWFiN2IyZWRiZTI2ZWIxYjVmYjE0OTM1N2Y1MWQ2YzlwLTIsCisgICAgLTB4MS4wYTBiMDI1MDFjNzk5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDY5CisgICAgMHgxLjFjMDNmNzM1ZTgxN2U3ZjdjOTA3ZmYzYzRlNTQ2NTBkcC0xLAorICAgIDB4MS4zZDNlMzU4MzRmYWNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDcwCisgICAgLTB4MS4xYzAzZjczNWU4MTdlN2Y3YzkwN2ZmM2M0ZTU0NjUwZHAtMSwKKyAgICAtMHgxLjNkM2UzNTgzNGZhY2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzEKKyAgICAweDEuMmI1YjYyNjM1M2JiMWE5MzlhNTc4OTM0ODFmYzZlZmVwLTEsCisgICAgMHgxLjUyZTFmNmFkOWMyN2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzIKKyAgICAtMHgxLjJiNWI2MjYzNTNiYjFhOTM5YTU3ODkzNDgxZmM2ZWZlcC0xLAorICAgIC0weDEuNTJlMWY2YWQ5YzI3Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIDB4MS4zYTFkMDFjOWY0YjFiZWNkNTYzMzhiMmZmMDA0NTUyY3AtMSwKKyAgICAweDEuNjg4NWI3ZDdlOGEyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIC0weDEuM2ExZDAxYzlmNGIxYmVjZDU2MzM4YjJmZjAwNDU1MmNwLTEsCisgICAgLTB4MS42ODg1YjdkN2U4YTJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDc1CisgICAgMHgxLjQ4NGI1MjEyNmEyNzBjYzRjMmYwYjliOGQ1NzQ5YzIzcC0xLAorICAgIDB4MS43ZTI5NzkwMjM1MWRjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDc2CisgICAgLTB4MS40ODRiNTIxMjZhMjcwY2M0YzJmMGI5YjhkNTc0OWMyM3AtMSwKKyAgICAtMHgxLjdlMjk3OTAyMzUxZGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAweDEuNTVlOTg2YjRhZmUwYTg2N2UxN2I4NzVmODg5MjEzM2VwLTEsCisgICAgMHgxLjkzY2QzYTJjODE5OGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzgKKyAgICAtMHgxLjU1ZTk4NmI0YWZlMGE4NjdlMTdiODc1Zjg4OTIxMzNlcC0xLAorICAgIC0weDEuOTNjZDNhMmM4MTk4Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3OQorICAgIDB4MS42MmZiNjQ0ZGUxOThhNmRmMDQ0YzVmMjA2YWIxODllNXAtMSwKKyAgICAweDEuYTk3MGZiNTZjZTEzY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4MAorICAgIC0weDEuNjJmYjY0NGRlMTk4YTZkZjA0NGM1ZjIwNmFiMTg5ZTVwLTEsCisgICAgLTB4MS5hOTcwZmI1NmNlMTNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgxCisgICAgMHgxLjZmODUxZWQ2MGYxZGU4OTIwYWQzOTY3MzJkODBlNjMwcC0xLAorICAgIDB4MS5iZjE0YmM4MTFhOGVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgyCisgICAgLTB4MS42Zjg1MWVkNjBmMWRlODkyMGFkMzk2NzMyZDgwZTYzMHAtMSwKKyAgICAtMHgxLmJmMTRiYzgxMWE4ZWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODMKKyAgICAweDEuN2I4YjNiZTEzZmNhM2U3YWU2MWVjZTM5M2RjMjAzNTFwLTEsCisgICAgMHgxLmQ0Yjg3ZGFiNjcwOWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODQKKyAgICAtMHgxLjdiOGIzYmUxM2ZjYTNlN2FlNjFlY2UzOTNkYzIwMzUxcC0xLAorICAgIC0weDEuZDRiODdkYWI2NzA5Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4NQorICAgIDB4MS44NzEyNzhlMmIwMjI0YjFhNTdhNzUxN2FhNjA4MDU2MXAtMSwKKyAgICAweDEuZWE1YzNlZDViMzg0Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIC0weDEuODcxMjc4ZTJiMDIyNGIxYTU3YTc1MTdhYTYwODA1NjFwLTEsCisgICAgLTB4MS5lYTVjM2VkNWIzODRjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgMHgxLmE0MzFmMzliYzZmNGZjMmY1MzNmYjhiNjg1ZjdmYTU2cC0xLAorICAgIDB4MS4xMmJkOTE3M2MwN2FicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAtMHgxLmE0MzFmMzliYzZmNGZjMmY1MzNmYjhiNjg1ZjdmYTU2cC0xLAorICAgIC0weDEuMTJiZDkxNzNjMDdhYnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDg5CisgICAgMHgxLmI0ZmU4NDNlOWU4MDcyNzI3YjRiOGJlNzczMGRjOWY1cC0xLAorICAgIDB4MS4yNTdiMjJlNzgwZjU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTAKKyAgICAtMHgxLmI0ZmU4NDNlOWU4MDcyNzI3YjRiOGJlNzczMGRjOWY1cC0xLAorICAgIC0weDEuMjU3YjIyZTc4MGY1NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDkxCisgICAgMHgxLmM0OWU0ODg2ODNhZDE4NGI0MjY5OTE1OWRiODk2M2MzcC0xLAorICAgIDB4MS4zODM4YjQ1YjQxNzAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTIKKyAgICAtMHgxLmM0OWU0ODg2ODNhZDE4NGI0MjY5OTE1OWRiODk2M2MzcC0xLAorICAgIC0weDEuMzgzOGI0NWI0MTcwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDkzCisgICAgMHgxLmQzMjkwNzAxZThhY2M4NjhmMjA3MzMwNTljMGM2MDhlcC0xLAorICAgIDB4MS40YWY2NDVjZjAxZWFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTQKKyAgICAtMHgxLmQzMjkwNzAxZThhY2M4NjhmMjA3MzMwNTljMGM2MDhlcC0xLAorICAgIC0weDEuNGFmNjQ1Y2YwMWVhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDk1CisgICAgMHgxLmUwYjUyNGI1NzhiNDRkY2E0MjRlMjg2Yjg2MTJiMzMycC0xLAorICAgIDB4MS41ZGIzZDc0MmMyNjU3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTYKKyAgICAtMHgxLmUwYjUyNGI1NzhiNDRkY2E0MjRlMjg2Yjg2MTJiMzMycC0xLAorICAgIC0weDEuNWRiM2Q3NDJjMjY1N3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgMHgxLmVkNTc4MDZiOTA5MTA4YTNmZjAyYzcwYTU2OGJmNTk0cC0xLAorICAgIDB4MS43MDcxNjhiNjgyZTAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTgKKyAgICAtMHgxLmVkNTc4MDZiOTA5MTA4YTNmZjAyYzcwYTU2OGJmNTk0cC0xLAorICAgIC0weDEuNzA3MTY4YjY4MmUwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDk5CisgICAgMHgxLmY5MjM2NjFiNTI2NGE1NTUxZGY2YzNkNGMyNzllMmM2cC0xLAorICAgIDB4MS44MzJlZmEyYTQzNWFkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDAKKyAgICAtMHgxLmY5MjM2NjFiNTI2NGE1NTUxZGY2YzNkNGMyNzllMmM2cC0xLAorICAgIC0weDEuODMyZWZhMmE0MzVhZHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTAxCisgICAgMHgxLjAyMTU0OTVjZWIxODE4Zjc3YzI4N2I2Mjk5NWVlZGRicDAsCisgICAgMHgxLjk1ZWM4YjllMDNkNThwMAorICB9LAorICB7IC8vIEVudHJ5IDUwMgorICAgIC0weDEuMDIxNTQ5NWNlYjE4MThmNzdjMjg3YjYyOTk1ZWVkZGJwMCwKKyAgICAtMHgxLjk1ZWM4YjllMDNkNThwMAorICB9LAorICB7IC8vIEVudHJ5IDUwMworICAgIDB4MS4wNzNlYTE1YzYxNGUxMTY2OGJhOWZlNzU4ODhmZWUxM3AwLAorICAgIDB4MS5hOGFhMWQxMWM0NGZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAtMHgxLjA3M2VhMTVjNjE0ZTExNjY4YmE5ZmU3NTg4OGZlZTEzcDAsCisgICAgLTB4MS5hOGFhMWQxMWM0NGZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAweDEuOTZjNGMwZWMyOTBlYmVmOTJhYjkzNjcwMGU3ZDNmMWJwLTEsCisgICAgMHgxLjA0YWZmNmQzMzA5NDJwMAorICB9LAorICB7IC8vIEVudHJ5IDUwNgorICAgIC0weDEuOTZjNGMwZWMyOTBlYmVmOTJhYjkzNjcwMGU3ZDNmMWJwLTEsCisgICAgLTB4MS4wNGFmZjZkMzMwOTQycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAweDEuOTZjNTY1YTY2OTkyZTU3OGQ1NTM2MzU5ZTI0ZDFjZmZwLTEsCisgICAgMHgxLjA0YjA5ZTk4ZGNkYjRwMAorICB9LAorICB7IC8vIEVudHJ5IDUwOAorICAgIC0weDEuOTZjNTY1YTY2OTkyZTU3OGQ1NTM2MzU5ZTI0ZDFjZmZwLTEsCisgICAgLTB4MS4wNGIwOWU5OGRjZGI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDkKKyAgICAweDEuOTZjNjBhNjAzZTI3MGFjNmY1NTQ3ZmQwYzFmOGY4ZWNwLTEsCisgICAgMHgxLjA0YjE0NjVlODkyMjZwMAorICB9LAorICB7IC8vIEVudHJ5IDUxMAorICAgIC0weDEuOTZjNjBhNjAzZTI3MGFjNmY1NTQ3ZmQwYzFmOGY4ZWNwLTEsCisgICAgLTB4MS4wNGIxNDY1ZTg5MjI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTEKKyAgICAweDEuOTZjNmFmMTlhNmNiNzZlMDQzMjEzYTY2MzcyZmM4NTZwLTEsCisgICAgMHgxLjA0YjFlZTI0MzU2OThwMAorICB9LAorICB7IC8vIEVudHJ5IDUxMgorICAgIC0weDEuOTZjNmFmMTlhNmNiNzZlMDQzMjEzYTY2MzcyZmM4NTZwLTEsCisgICAgLTB4MS4wNGIxZWUyNDM1Njk4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTMKKyAgICAweDEuOTZjNzUzZDJhMzgwNzFjMTcyMjg3ZGQwZTkwMWEyOGVwLTEsCisgICAgMHgxLjA0YjI5NWU5ZTFiMGFwMAorICB9LAorICB7IC8vIEVudHJ5IDUxNAorICAgIC0weDEuOTZjNzUzZDJhMzgwNzFjMTcyMjg3ZGQwZTkwMWEyOGVwLTEsCisgICAgLTB4MS4wNGIyOTVlOWUxYjBhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTUKKyAgICAweDEuOTZjN2Y4OGIzNDQ2NDM2NzMwZTJjN2M5ZTQ5YzY0ZmFwLTEsCisgICAgMHgxLjA0YjMzZGFmOGRmN2NwMAorICB9LAorICB7IC8vIEVudHJ5IDUxNgorICAgIC0weDEuOTZjN2Y4OGIzNDQ2NDM2NzMwZTJjN2M5ZTQ5YzY0ZmFwLTEsCisgICAgLTB4MS4wNGIzM2RhZjhkZjdjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTcKKyAgICAweDEuOTZjODlkNDM1OTFkMzNjZTI4ZDE3ZmVjMjUxM2JmY2JwLTEsCisgICAgMHgxLjA0YjNlNTc1M2EzZWVwMAorICB9LAorICB7IC8vIEVudHJ5IDUxOAorICAgIC0weDEuOTZjODlkNDM1OTFkMzNjZTI4ZDE3ZmVjMjUxM2JmY2JwLTEsCisgICAgLTB4MS4wNGIzZTU3NTNhM2VlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAweDEuOTZjOTQxZmIxMjA1OGFmMmZlN2U0ZTk2NWEzMDA0NDFwLTEsCisgICAgMHgxLjA0YjQ4ZDNhZTY4NjBwMAorICB9LAorICB7IC8vIEVudHJ5IDUyMAorICAgIC0weDEuOTZjOTQxZmIxMjA1OGFmMmZlN2U0ZTk2NWEzMDA0NDFwLTEsCisgICAgLTB4MS4wNGI0OGQzYWU2ODYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjEKKyAgICAweDEuOTZjOWU2YjI1ZWZmNjFiMjM3OTMwYTdkMDVhNzMxZWJwLTEsCisgICAgMHgxLjA0YjUzNTAwOTJjY2ZwMAorICB9LAorICB7IC8vIEVudHJ5IDUyMgorICAgIC0weDEuOTZjOWU2YjI1ZWZmNjFiMjM3OTMwYTdkMDVhNzMxZWJwLTEsCisgICAgLTB4MS4wNGI1MzUwMDkyY2NmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjMKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUyNAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUyNQorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDUyNgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgMHgxLjBjMTUyMzgyZDczNjQ4YThjOGY5MTc1NzE5ZDg0ZjAzcC0xLAorICAgIDB4MS4yNzlhNzQ1OTAzMzFicC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTI5CisgICAgLTB4MS4wYzE1MjM4MmQ3MzY0OGE4YzhmOTE3NTcxOWQ4NGYwM3AtMSwKKyAgICAtMHgxLjI3OWE3NDU5MDMzMWJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAweDEuMGMxNTIzODJkNzM2NTRhOGM4ZjkxNzU3MWExYWVkNGFwLTEsCisgICAgMHgxLjI3OWE3NDU5MDMzMWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzEKKyAgICAtMHgxLjBjMTUyMzgyZDczNjU0YThjOGY5MTc1NzFhMWFlZDRhcC0xLAorICAgIC0weDEuMjc5YTc0NTkwMzMxY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIDB4MS4wYzE1MjM4MmQ3MzY2MGE4YzhmOTE3NTcxYTBhNjgyMXAtMSwKKyAgICAweDEuMjc5YTc0NTkwMzMxZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIC0weDEuMGMxNTIzODJkNzM2NjBhOGM4ZjkxNzU3MWEwYTY4MjFwLTEsCisgICAgLTB4MS4yNzlhNzQ1OTAzMzFkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTM0CisgICAgMHgxLjBjMTUyMzgyZDczNjUyNzc5MjU2MjJiMzM4MTI1NjFlcDAsCisgICAgMHgxLmJiNjdhZTg1ODRjYTlwMAorICB9LAorICB7IC8vIEVudHJ5IDUzNQorICAgIC0weDEuMGMxNTIzODJkNzM2NTI3NzkyNTYyMmIzMzgxMjU2MWVwMCwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYTlwMAorICB9LAorICB7IC8vIEVudHJ5IDUzNgorICAgIDB4MS4wYzE1MjM4MmQ3MzY1Njc3OTI1NjIyYjMzODQ3MTkyOHAwLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzcKKyAgICAtMHgxLjBjMTUyMzgyZDczNjU2Nzc5MjU2MjJiMzM4NDcxOTI4cDAsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2FhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzgKKyAgICAweDEuMGMxNTIzODJkNzM2NWE3NzkyNTYyMmIzMzg0NDZmM2NwMCwKKyAgICAweDEuYmI2N2FlODU4NGNhYnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTM5CisgICAgLTB4MS4wYzE1MjM4MmQ3MzY1YTc3OTI1NjIyYjMzODQ0NmYzY3AwLAorICAgIC0weDEuYmI2N2FlODU4NGNhYnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgMHgxLmE2NGVlYzNjYzIzZmJkZmU5MGI5NjE4OWQxMjg1MWI0cC0yLAorICAgIDB4MS5iZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTQxCisgICAgLTB4MS5hNjRlZWMzY2MyM2ZiZGZlOTBiOTYxODlkMTI4NTFiNHAtMiwKKyAgICAtMHgxLmJmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAweDEuYTY0ZWVjM2NjMjNmY2I2Yzg0ZjkyYmQyMDAzY2UyNmNwLTIsCisgICAgMHgxLmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAtMHgxLmE2NGVlYzNjYzIzZmNiNmM4NGY5MmJkMjAwM2NlMjZjcC0yLAorICAgIC0weDEuY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDU0NAorICAgIDB4MS5hNjRlZWMzY2MyM2ZkOGRhNzkzOGY2MWEyZjI5ZmY3M3AtMiwKKyAgICAweDEuYzAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDU0NQorICAgIC0weDEuYTY0ZWVjM2NjMjNmZDhkYTc5MzhmNjFhMmYyOWZmNzNwLTIsCisgICAgLTB4MS5jMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgMHgxLjM0NWYwMWNjZTM3YmE5NjMyNWVhY2RjNmY3Y2VlYzhjcC0xLAorICAgIDB4MS41ZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTQ3CisgICAgLTB4MS4zNDVmMDFjY2UzN2JhOTYzMjVlYWNkYzZmN2NlZWM4Y3AtMSwKKyAgICAtMHgxLjVmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDgKKyAgICAweDEuMzQ1ZjAxY2NlMzdiYjQ0MDg0NGRmMWM0NDA5ZmU3NzlwLTEsCisgICAgMHgxLjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDkKKyAgICAtMHgxLjM0NWYwMWNjZTM3YmI0NDA4NDRkZjFjNDQwOWZlNzc5cC0xLAorICAgIC0weDEuNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIDB4MS4zNDVmMDFjY2UzN2JiZjFkZTJiMTE1YzE4OTFmYmFmYXAtMSwKKyAgICAweDEuNjAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1MQorICAgIC0weDEuMzQ1ZjAxY2NlMzdiYmYxZGUyYjExNWMxODkxZmJhZmFwLTEsCisgICAgLTB4MS42MDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgMHgxLmJkZTcwZWQ0MzlmZTVmNzNhMjE1ZDYwOTZjMDRiNDJicC0xLAorICAgIDB4MS4yZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTMKKyAgICAtMHgxLmJkZTcwZWQ0MzlmZTVmNzNhMjE1ZDYwOTZjMDRiNDJicC0xLAorICAgIC0weDEuMmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU0CisgICAgMHgxLmJkZTcwZWQ0MzlmZTZjYmE5NTM5MWE3ZjQyMWIzODIxcC0xLAorICAgIDB4MS4zcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTUKKyAgICAtMHgxLmJkZTcwZWQ0MzlmZTZjYmE5NTM5MWE3ZjQyMWIzODIxcC0xLAorICAgIC0weDEuM3AwCisgIH0sCisgIHsgLy8gRW50cnkgNTU2CisgICAgMHgxLmJkZTcwZWQ0MzlmZTdhMDE4ODVjNWVmNTE3NjA2NjJhcC0xLAorICAgIDB4MS4zMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTcKKyAgICAtMHgxLmJkZTcwZWQ0MzlmZTdhMDE4ODVjNWVmNTE3NjA2NjJhcC0xLAorICAgIC0weDEuMzAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU4CisgICAgMHgxLjJlNzU3Mjg4MzNhNTNjN2FiOWRlNzM0YjllYjRmMzk3cDAsCisgICAgMHgxLjM3ZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDU1OQorICAgIC0weDEuMmU3NTcyODgzM2E1M2M3YWI5ZGU3MzRiOWViNGYzOTdwMCwKKyAgICAtMHgxLjM3ZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDB4MS4yZTc1NzI4ODMzYTU0MTE2ZTNlZjczMjZiZDk4MzlwMCwKKyAgICAweDEuMzgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjEKKyAgICAtMHgxLjJlNzU3Mjg4MzNhNTQxMTZlM2VmNzMyNmJkOTgzOXAwLAorICAgIC0weDEuMzgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjIKKyAgICAweDEuMmU3NTcyODgzM2E1NDViMzBlMDA3MzAxZGMxM2UzOTlwMCwKKyAgICAweDEuMzgwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNTYzCisgICAgLTB4MS4yZTc1NzI4ODMzYTU0NWIzMGUwMDczMDFkYzEzZTM5OXAwLAorICAgIC0weDEuMzgwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNTY0CisgICAgMHgxLjA2NDBhNzRkNjEwNWVlMzM4YzViY2M2YzczNDhjMTIzcC00LAorICAgIDB4MS4wNjljOGI0NmIzNzkycC00CisgIH0sCisgIHsgLy8gRW50cnkgNTY1CisgICAgLTB4MS4wNjQwYTc0ZDYxMDVlZTMzOGM1YmNjNmM3MzQ4YzEyM3AtNCwKKyAgICAtMHgxLjA2OWM4YjQ2YjM3OTJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjYKKyAgICAweDEuMDUyZmFiMzY4ZTA2MmU3MmZiZjJkMzlmZTlkMTg4ODhwLTMsCisgICAgMHgxLjA2OWM4YjQ2YjM3OTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICAtMHgxLjA1MmZhYjM2OGUwNjJlNzJmYmYyZDM5ZmU5ZDE4ODg4cC0zLAorICAgIC0weDEuMDY5YzhiNDZiMzc5MnAtMworICB9LAorICB7IC8vIEVudHJ5IDU2OAorICAgIDB4MS44NTJhMjE4NzZmMjQyZThiMTgyYWJkNDJjNDFlZTg5ZHAtMywKKyAgICAweDEuODllYWQwZWEwZDM1YnAtMworICB9LAorICB7IC8vIEVudHJ5IDU2OQorICAgIC0weDEuODUyYTIxODc2ZjI0MmU4YjE4MmFiZDQyYzQxZWU4OWRwLTMsCisgICAgLTB4MS44OWVhZDBlYTBkMzVicC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTcwCisgICAgMHgxLjAxMTIzYmMxMGE2NGJmMGFiNjJkNmVmN2YzMjY1MWFhcC0yLAorICAgIDB4MS4wNjljOGI0NmIzNzkycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTcxCisgICAgLTB4MS4wMTEyM2JjMTBhNjRiZjBhYjYyZDZlZjdmMzI2NTFhYXAtMiwKKyAgICAtMHgxLjA2OWM4YjQ2YjM3OTJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzIKKyAgICAweDEuM2RhYTczM2VlNTM1NzgwOGU2OGFlZTAwODk3MmM4MjhwLTIsCisgICAgMHgxLjQ4NDNhZTE4NjA1NzZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzMKKyAgICAtMHgxLjNkYWE3MzNlZTUzNTc4MDhlNjhhZWUwMDg5NzJjODI4cC0yLAorICAgIC0weDEuNDg0M2FlMTg2MDU3NnAtMgorICB9LAorICB7IC8vIEVudHJ5IDU3NAorICAgIDB4MS43ODBjNDViOTczNmE5MDg5ZjJmZTFmOGVmYTYwYmY0NHAtMiwKKyAgICAweDEuODllYWQwZWEwZDM1YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDU3NQorICAgIC0weDEuNzgwYzQ1Yjk3MzZhOTA4OWYyZmUxZjhlZmE2MGJmNDRwLTIsCisgICAgLTB4MS44OWVhZDBlYTBkMzVhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTc2CisgICAgMHgxLmFmZmFhYzk2ZDc5NzAyOWUwYjhhYjQwODNkOTgwYjY4cC0yLAorICAgIDB4MS5jYjkxZjNiYmJhMTNlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTc3CisgICAgLTB4MS5hZmZhYWM5NmQ3OTcwMjllMGI4YWI0MDgzZDk4MGI2OHAtMiwKKyAgICAtMHgxLmNiOTFmM2JiYmExM2VwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzgKKyAgICAweDEuZTU0YzdmOWRhYzY3MDhmMzE1ZDM4YzhhOGMyY2U0ZDNwLTIsCisgICAgMHgxLjA2OWM4YjQ2YjM3OTFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzkKKyAgICAtMHgxLmU1NGM3ZjlkYWM2NzA4ZjMxNWQzOGM4YThjMmNlNGQzcC0yLAorICAgIC0weDEuMDY5YzhiNDZiMzc5MXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU4MAorICAgIDB4MS4wYmY1NjBhMDliOTI0MDczZTQ3M2NiMGQ1YzMyNTAxZXAtMSwKKyAgICAweDEuMjc3MDFjYWY4OWU4M3AtMQorICB9LAorICB7IC8vIEVudHJ5IDU4MQorICAgIC0weDEuMGJmNTYwYTA5YjkyNDA3M2U0NzNjYjBkNWMzMjUwMWVwLTEsCisgICAgLTB4MS4yNzcwMWNhZjg5ZTgzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgMHgxLjIzZTcxN2QwZmE3YjBiOGJmNDVkMmNkMTIwZjZkMjllcC0xLAorICAgIDB4MS40ODQzYWUxODYwNTc1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTgzCisgICAgLTB4MS4yM2U3MTdkMGZhN2IwYjhiZjQ1ZDJjZDEyMGY2ZDI5ZXAtMSwKKyAgICAtMHgxLjQ4NDNhZTE4NjA1NzVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODQKKyAgICAweDEuM2E3ZTNmNDc5M2FmYTlhMjRiMDExMmVhODMwMzVjN2VwLTEsCisgICAgMHgxLjY5MTczZjgxMzZjNjdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODUKKyAgICAtMHgxLjNhN2UzZjQ3OTNhZmE5YTI0YjAxMTJlYTgzMDM1YzdlcC0xLAorICAgIC0weDEuNjkxNzNmODEzNmM2N3AtMQorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIDB4MS40ZmMyYzU1ZjcxNTQ4NzFjOGRhYTM1ODQzODU3YjdmZnAtMSwKKyAgICAweDEuODllYWQwZWEwZDM1OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU4NworICAgIC0weDEuNGZjMmM1NWY3MTU0ODcxYzhkYWEzNTg0Mzg1N2I3ZmZwLTEsCisgICAgLTB4MS44OWVhZDBlYTBkMzU5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTg4CisgICAgMHgxLjYzYzA1ZWY4YTM1M2M2ZDEzNjBlYWQ5NzdjMmFkYjk0cC0xLAorICAgIDB4MS5hYWJlNjI1MmUzYTRicC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTg5CisgICAgLTB4MS42M2MwNWVmOGEzNTNjNmQxMzYwZWFkOTc3YzJhZGI5NHAtMSwKKyAgICAtMHgxLmFhYmU2MjUyZTNhNGJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTAKKyAgICAweDEuNzY4NTYyNGNiMzc0YWQ4OTUwZWUzMDJhZWU3NDhhZDlwLTEsCisgICAgMHgxLmNiOTFmM2JiYmExM2RwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTEKKyAgICAtMHgxLjc2ODU2MjRjYjM3NGFkODk1MGVlMzAyYWVlNzQ4YWQ5cC0xLAorICAgIC0weDEuY2I5MWYzYmJiYTEzZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU5MgorICAgIDB4MS44ODIxZDE4NzhkY2IwMzcxZDJlZDAwZjhiYWQ3NzU1ZXAtMSwKKyAgICAweDEuZWM2NTg1MjQ5MDgyZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU5MworICAgIC0weDEuODgyMWQxODc4ZGNiMDM3MWQyZWQwMGY4YmFkNzc1NWVwLTEsCisgICAgLTB4MS5lYzY1ODUyNDkwODJmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTk0CisgICAgMHgxLjk4YTY5NTkyOTk5NDg4NDY1YzhiNjE4NWRkNThiMzhhcC0xLAorICAgIDB4MS4wNjljOGI0NmIzNzkxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTUKKyAgICAtMHgxLjk4YTY5NTkyOTk5NDg4NDY1YzhiNjE4NWRkNThiMzhhcC0xLAorICAgIC0weDEuMDY5YzhiNDZiMzc5MXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTk2CisgICAgMHgxLmE4MjRlNTZiZWFmYjE3ZWZiOWVkMTI2OTUxODVjYzVicC0xLAorICAgIDB4MS4xNzA2NTNmYjFlYjBhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAtMHgxLmE4MjRlNTZiZWFmYjE3ZWZiOWVkMTI2OTUxODVjYzVicC0xLAorICAgIC0weDEuMTcwNjUzZmIxZWIwYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTk4CisgICAgMHgxLmI2YWRkNDQ4NzE0ZTYyN2U3NGVlOWNlNjkxMTk5M2U2cC0xLAorICAgIDB4MS4yNzcwMWNhZjg5ZTgzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTkKKyAgICAtMHgxLmI2YWRkNDQ4NzE0ZTYyN2U3NGVlOWNlNjkxMTk5M2U2cC0xLAorICAgIC0weDEuMjc3MDFjYWY4OWU4M3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjAwCisgICAgMHgxLmM0NTIwMDA3MzQ0ZjhiMzZhMWM2MTBlMjdmNGJiNTdlcC0xLAorICAgIDB4MS4zN2Q5ZTU2M2Y1MWZjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDEKKyAgICAtMHgxLmM0NTIwMDA3MzQ0ZjhiMzZhMWM2MTBlMjdmNGJiNTdlcC0xLAorICAgIC0weDEuMzdkOWU1NjNmNTFmY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjAyCisgICAgMHgxLmQxMjE1OWExNDRmZjNjODhlNTQ5YjZjN2ZlOTc3YTZicC0xLAorICAgIDB4MS40ODQzYWUxODYwNTc1cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAtMHgxLmQxMjE1OWExNDRmZjNjODhlNTQ5YjZjN2ZlOTc3YTZicC0xLAorICAgIC0weDEuNDg0M2FlMTg2MDU3NXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjA0CisgICAgMHgxLmRkMmIwMWUxN2M0MjcwY2FhNWVhZDgzMTE4NDc4Yzk5cC0xLAorICAgIDB4MS41OGFkNzZjY2NiOGVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDUKKyAgICAtMHgxLmRkMmIwMWUxN2M0MjcwY2FhNWVhZDgzMTE4NDc4Yzk5cC0xLAorICAgIC0weDEuNThhZDc2Y2NjYjhlZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjA2CisgICAgMHgxLmU4N2QzNTgzNjFiZDQ3NTFjNDcyZmU3NjYwODgwNGY3cC0xLAorICAgIDB4MS42OTE3M2Y4MTM2YzY3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDcKKyAgICAtMHgxLmU4N2QzNTgzNjFiZDQ3NTFjNDcyZmU3NjYwODgwNGY3cC0xLAorICAgIC0weDEuNjkxNzNmODEzNmM2N3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjA4CisgICAgMHgxLmYzMjU0NGI2NmFhNWRmZDFkNWM1NTFjN2I0MzVmMDk5cC0xLAorICAgIDB4MS43OTgxMDgzNWExZmUwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDkKKyAgICAtMHgxLmYzMjU0NGI2NmFhNWRmZDFkNWM1NTFjN2I0MzVmMDk5cC0xLAorICAgIC0weDEuNzk4MTA4MzVhMWZlMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjEwCisgICAgMHgxLmZkMmY5MmQxZjUxZjFkMzIzZWFjYjYwOTgzYTZmNDBkcC0xLAorICAgIDB4MS44OWVhZDBlYTBkMzU5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTEKKyAgICAtMHgxLmZkMmY5MmQxZjUxZjFkMzIzZWFjYjYwOTgzYTZmNDBkcC0xLAorICAgIC0weDEuODllYWQwZWEwZDM1OXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjEyCisgICAgMHgxLjAzNTNjZGRkYzE2NjA3ZTMzYjFmNGM5ZDU1ZmYxNzg0cDAsCisgICAgMHgxLjlhNTQ5OTllNzg2ZDJwMAorICB9LAorICB7IC8vIEVudHJ5IDYxMworICAgIC0weDEuMDM1M2NkZGRjMTY2MDdlMzNiMWY0YzlkNTVmZjE3ODRwMCwKKyAgICAtMHgxLjlhNTQ5OTllNzg2ZDJwMAorICB9LAorICB7IC8vIEVudHJ5IDYxNAorICAgIDB4MS4wN2NiZmU4YzE0ZGQ5YWU2ODIzNzc2YjVhNGQ4MWJhOXAwLAorICAgIDB4MS5hYWJlNjI1MmUzYTRicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAtMHgxLjA3Y2JmZThjMTRkZDlhZTY4MjM3NzZiNWE0ZDgxYmE5cDAsCisgICAgLTB4MS5hYWJlNjI1MmUzYTRicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTYKKyAgICAweDEuMGMwNTQwZWU2ZWZmNWNiOGM4M2YwZTdlMjI1NjUyYzBwMCwKKyAgICAweDEuYmIyODJiMDc0ZWRjNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjE3CisgICAgLTB4MS4wYzA1NDBlZTZlZmY1Y2I4YzgzZjBlN2UyMjU2NTJjMHAwLAorICAgIC0weDEuYmIyODJiMDc0ZWRjNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjE4CisgICAgMHgxLjEwMDQxNzk5MTVmM2JkNzgyN2JlMWM5ZDU1N2RlNGIxcDAsCisgICAgMHgxLmNiOTFmM2JiYmExM2RwMAorICB9LAorICB7IC8vIEVudHJ5IDYxOQorICAgIC0weDEuMTAwNDE3OTkxNWYzYmQ3ODI3YmUxYzlkNTU3ZGU0YjFwMCwKKyAgICAtMHgxLmNiOTFmM2JiYmExM2RwMAorICB9LAorICB7IC8vIEVudHJ5IDYyMAorICAgIDB4MS4xM2NjYThmNTkwY2RkNjEwNzc2YmIyMzI2OTRiYTFjMXAwLAorICAgIDB4MS5kYmZiYmM3MDI1NGI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICAtMHgxLjEzY2NhOGY1OTBjZGQ2MTA3NzZiYjIzMjY5NGJhMWMxcDAsCisgICAgLTB4MS5kYmZiYmM3MDI1NGI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjIKKyAgICAweDEuMTc2MmM2MDQzOGNlMmNmNTlhOTFhMjE4NjQ1MjkwMTZwMCwKKyAgICAweDEuZWM2NTg1MjQ5MDgyZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjIzCisgICAgLTB4MS4xNzYyYzYwNDM4Y2UyY2Y1OWE5MWEyMTg2NDUyOTAxNnAwLAorICAgIC0weDEuZWM2NTg1MjQ5MDgyZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjI0CisgICAgMHgxLjFhYzlmMGY1ZjBhYzU5ZWY0NjhkMGU4YzEzZWVjYzk0cDAsCisgICAgMHgxLmZjY2Y0ZGQ4ZmJiYThwMAorICB9LAorICB7IC8vIEVudHJ5IDYyNQorICAgIC0weDEuMWFjOWYwZjVmMGFjNTllZjQ2OGQwZThjMTNlZWNjOTRwMCwKKyAgICAtMHgxLmZjY2Y0ZGQ4ZmJiYThwMAorICB9LAorICB7IC8vIEVudHJ5IDYyNgorICAgIDB4MS4xZTA1NjM3ZmZjMGE4YTZkMGE3ZTIyMzI0ZWJlZmFjZnAwLAorICAgIDB4MS4wNjljOGI0NmIzNzkxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjcKKyAgICAtMHgxLjFlMDU2MzdmZmMwYThhNmQwYTdlMjIzMjRlYmVmYWNmcDAsCisgICAgLTB4MS4wNjljOGI0NmIzNzkxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjgKKyAgICAweDEuMjExODE0ZDc5NTQwZWViZDZkZGE4YmU3ZWQxOTdkODRwMCwKKyAgICAweDEuMGVkMTZmYTBlOTE0ZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjI5CisgICAgLTB4MS4yMTE4MTRkNzk1NDBlZWJkNmRkYThiZTdlZDE5N2Q4NHAwLAorICAgIC0weDEuMGVkMTZmYTBlOTE0ZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjMwCisgICAgMHgxLjI0MDRiZjRiM2VhZDAwMGZhZjg5MmMzZjRlYjRiZmE5cDAsCisgICAgMHgxLjE3MDY1M2ZiMWViMGJwMQorICB9LAorICB7IC8vIEVudHJ5IDYzMQorICAgIC0weDEuMjQwNGJmNGIzZWFkMDAwZmFmODkyYzNmNGViNGJmYTlwMCwKKyAgICAtMHgxLjE3MDY1M2ZiMWViMGJwMQorICB9LAorICB7IC8vIEVudHJ5IDYzMgorICAgIDB4MS4yNmNkZTU3NWI2NDE2MmU5ZTQ2MmQ1NjQ3OTdhNWRkN3AwLAorICAgIDB4MS4xZjNiMzg1NTU0NGM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzMKKyAgICAtMHgxLjI2Y2RlNTc1YjY0MTYyZTllNDYyZDU2NDc5N2E1ZGQ3cDAsCisgICAgLTB4MS4xZjNiMzg1NTU0NGM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzQKKyAgICAweDEuMjk3NWQ3MGE4NzRlZTJjMGZiYzRkMzJiOTk5N2VkYjRwMCwKKyAgICAweDEuMjc3MDFjYWY4OWU4NXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjM1CisgICAgLTB4MS4yOTc1ZDcwYTg3NGVlMmMwZmJjNGQzMmI5OTk3ZWRiNHAwLAorICAgIC0weDEuMjc3MDFjYWY4OWU4NXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjM2CisgICAgMHgxLjJiZmViNTNlZjJkNjI5ZmQyZWMzYmJlMDk4OGVjMTI3cDAsCisgICAgMHgxLjJmYTUwMTA5YmY4NDJwMQorICB9LAorICB7IC8vIEVudHJ5IDYzNworICAgIC0weDEuMmJmZWI1M2VmMmQ2MjlmZDJlYzNiYmUwOTg4ZWMxMjdwMCwKKyAgICAtMHgxLjJmYTUwMTA5YmY4NDJwMQorICB9LAorICB7IC8vIEVudHJ5IDYzOAorICAgIDB4MS4yZTZhNzZkM2E3YzRkYWE4OGNkMDg1OGRlYmNiZmQ1NXAwLAorICAgIDB4MS4zN2Q5ZTU2M2Y1MWZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzkKKyAgICAtMHgxLjJlNmE3NmQzYTdjNGRhYTg4Y2QwODU4ZGViY2JmZDU1cDAsCisgICAgLTB4MS4zN2Q5ZTU2M2Y1MWZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDAKKyAgICAweDEuMzBiYWViYzRkMGIxMjI3OWM0YzZhNzBhODNlYzc0MDRwMCwKKyAgICAweDEuNDAwZWM5YmUyYWJiY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNjQxCisgICAgLTB4MS4zMGJhZWJjNGQwYjEyMjc5YzRjNmE3MGE4M2VjNzQwNHAwLAorICAgIC0weDEuNDAwZWM5YmUyYWJiY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNjQyCisgICAgMHgxLjMyZjFjMGE2ODg3MDlkYjkwMTZkMjY5NzI1YzAyYTRmcDAsCisgICAgMHgxLjQ4NDNhZTE4NjA1NzlwMQorICB9LAorICB7IC8vIEVudHJ5IDY0MworICAgIC0weDEuMzJmMWMwYTY4ODcwOWRiOTAxNmQyNjk3MjVjMDJhNGZwMCwKKyAgICAtMHgxLjQ4NDNhZTE4NjA1NzlwMQorICB9LAorICB7IC8vIEVudHJ5IDY0NAorICAgIDB4MS4zNTEwODFiM2Y5MjA1YzY1OGVlZjNjNTdiY2M4YWNiMnAwLAorICAgIDB4MS41MDc4OTI3Mjk1ZjM2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDUKKyAgICAtMHgxLjM1MTA4MWIzZjkyMDVjNjU4ZWVmM2M1N2JjYzhhY2IycDAsCisgICAgLTB4MS41MDc4OTI3Mjk1ZjM2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDYKKyAgICAweDEuMzcxODlkOTc1ZTVmOWNiOTYyZjdiZjhjZjAzOGNjYzhwMCwKKyAgICAweDEuNThhZDc2Y2NjYjhmM3AxCisgIH0sCisgIHsgLy8gRW50cnkgNjQ3CisgICAgLTB4MS4zNzE4OWQ5NzVlNWY5Y2I5NjJmN2JmOGNmMDM4Y2NjOHAwLAorICAgIC0weDEuNThhZDc2Y2NjYjhmM3AxCisgIH0sCisgIHsgLy8gRW50cnkgNjQ4CisgICAgMHgxLjM5MGI2N2YwZjA1ZmUzYzMxZDAyODc5MGZmMGZmNTcxcDAsCisgICAgMHgxLjYwZTI1YjI3MDEyYjBwMQorICB9LAorICB7IC8vIEVudHJ5IDY0OQorICAgIC0weDEuMzkwYjY3ZjBmMDVmZTNjMzFkMDI4NzkwZmYwZmY1NzFwMCwKKyAgICAtMHgxLjYwZTI1YjI3MDEyYjBwMQorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIDB4MS4zYWVhMWJhMjcwZmM3NjYzZjU3NWM2NmEyZGJmNWZmOHAwLAorICAgIDB4MS42OTE3M2Y4MTM2YzZkcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTEKKyAgICAtMHgxLjNhZWExYmEyNzBmYzc2NjNmNTc1YzY2YTJkYmY1ZmY4cDAsCisgICAgLTB4MS42OTE3M2Y4MTM2YzZkcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTIKKyAgICAweDEuM2NiNWRjZTRiOGY2MzBiNjI5ZDcyMmY1YWUzZGM3NTdwMCwKKyAgICAweDEuNzE0YzIzZGI2YzYyYXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjUzCisgICAgLTB4MS4zY2I1ZGNlNGI4ZjYzMGI2MjlkNzIyZjVhZTNkYzc1N3AwLAorICAgIC0weDEuNzE0YzIzZGI2YzYyYXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjU0CisgICAgMHgxLjNlNmZiYjJjNDEzOTZjZTRhZWZmMTlkOTc1NTJkMjE3cDAsCisgICAgMHgxLjc5ODEwODM1YTFmZTdwMQorICB9LAorICB7IC8vIEVudHJ5IDY1NQorICAgIC0weDEuM2U2ZmJiMmM0MTM5NmNlNGFlZmYxOWQ5NzU1MmQyMTdwMCwKKyAgICAtMHgxLjc5ODEwODM1YTFmZTdwMQorICB9LAorICB7IC8vIEVudHJ5IDY1NgorICAgIDB4MS40MDE4YjJlMTNmZTkzMmJjYTc1MzlkYWNiZmE0ZDA5ZXAwLAorICAgIDB4MS44MWI1ZWM4ZmQ3OWE0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTcKKyAgICAtMHgxLjQwMThiMmUxM2ZlOTMyYmNhNzUzOWRhY2JmYTRkMDllcDAsCisgICAgLTB4MS44MWI1ZWM4ZmQ3OWE0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAweDEuNDFiMWFlZWY4ZTRhZTZiZDg3MjNjYzE0OGQ2Y2FmMTBwMCwKKyAgICAweDEuODllYWQwZWEwZDM1YnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjU5CisgICAgLTB4MS40MWIxYWVlZjhlNGFlNmJkODcyM2NjMTQ4ZDZjYWYxMHAwLAorICAgIC0weDEuODllYWQwZWEwZDM1YnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjYwCisgICAgLTB4MS42ODA3YTljNTQwZGQzNTMxMjU0NjMzNDhhNjg1ZWRjOHAwLAorICAgIC0weDEuODFiNWVjOGZkNzk5ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjYxCisgICAgMHgxLjY4MDdhOWM1NDBkZDM1MzEyNTQ2MzM0OGE2ODVlZGM4cDAsCisgICAgMHgxLjgxYjVlYzhmZDc5OWZwMgorICB9LAorICB7IC8vIEVudHJ5IDY2MgorICAgIC0weDEuNjYzMWUxYTU5NTkwMzc2ZDk4NDQ3MGQ5OWNjOGRmN2JwMCwKKyAgICAtMHgxLjcxNGMyM2RiNmM2MjZwMgorICB9LAorICB7IC8vIEVudHJ5IDY2MworICAgIDB4MS42NjMxZTFhNTk1OTAzNzZkOTg0NDcwZDk5Y2M4ZGY3YnAwLAorICAgIDB4MS43MTRjMjNkYjZjNjI2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjQKKyAgICAtMHgxLjY0MzFiYjdlZGYyYmI3MjMwMDhiM2M1MWNhNDQ4YTc2cDAsCisgICAgLTB4MS42MGUyNWIyNzAxMmFkcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjUKKyAgICAweDEuNjQzMWJiN2VkZjJiYjcyMzAwOGIzYzUxY2E0NDhhNzZwMCwKKyAgICAweDEuNjBlMjViMjcwMTJhZHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjY2CisgICAgLTB4MS42MjAxNDkzYjAyMjM2MWJkM2M0MDY1MjA3NjFiNjVjZnAwLAorICAgIC0weDEuNTA3ODkyNzI5NWYzNHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjY3CisgICAgMHgxLjYyMDE0OTNiMDIyMzYxYmQzYzQwNjUyMDc2MWI2NWNmcDAsCisgICAgMHgxLjUwNzg5MjcyOTVmMzRwMgorICB9LAorICB7IC8vIEVudHJ5IDY2OAorICAgIC0weDEuNWY5OTc3YTQ3YWVlMTdkMGYxMmMxOTNhN2RkNjIyNTlwMCwKKyAgICAtMHgxLjQwMGVjOWJlMmFiYmJwMgorICB9LAorICB7IC8vIEVudHJ5IDY2OQorICAgIDB4MS41Zjk5NzdhNDdhZWUxN2QwZjEyYzE5M2E3ZGQ2MjI1OXAwLAorICAgIDB4MS40MDBlYzliZTJhYmJicDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzAKKyAgICAtMHgxLjVjZjFjNTNkZDljYTlmYTI5YjNiYjA0ZWM1NmUwNzNmcDAsCisgICAgLTB4MS4yZmE1MDEwOWJmODQycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzEKKyAgICAweDEuNWNmMWM1M2RkOWNhOWZhMjliM2JiMDRlYzU2ZTA3M2ZwMCwKKyAgICAweDEuMmZhNTAxMDliZjg0MnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjcyCisgICAgLTB4MS41OWZmZTI3OGZiNWQwZmQ2NmQzYTg3NWYzNGU5NTViOXAwLAorICAgIC0weDEuMWYzYjM4NTU1NDRjOXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjczCisgICAgMHgxLjU5ZmZlMjc4ZmI1ZDBmZDY2ZDNhODc1ZjM0ZTk1NWI5cDAsCisgICAgMHgxLjFmM2IzODU1NTQ0YzlwMgorICB9LAorICB7IC8vIEVudHJ5IDY3NAorICAgIC0weDEuNTZiNzMyZTVjZDllNzY2NWM4NTVjMzNlYzdiYTg2YTNwMCwKKyAgICAtMHgxLjBlZDE2ZmEwZTkxNTBwMgorICB9LAorICB7IC8vIEVudHJ5IDY3NQorICAgIDB4MS41NmI3MzJlNWNkOWU3NjY1Yzg1NWMzM2VjN2JhODZhM3AwLAorICAgIDB4MS4wZWQxNmZhMGU5MTUwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzYKKyAgICAtMHgxLjUzMDgyMzQ4M2QzNjA1YjJiZDk2ZmZhZjJjNDY3OWM5cDAsCisgICAgLTB4MS5mY2NmNGRkOGZiYmFlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzcKKyAgICAweDEuNTMwODIzNDgzZDM2MDViMmJkOTZmZmFmMmM0Njc5YzlwMCwKKyAgICAweDEuZmNjZjRkZDhmYmJhZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjc4CisgICAgLTB4MS40ZWRmNDMwYzAwMjQ0NzdjZWZmZmVjMzY0ZGE4NWMxZHAwLAorICAgIC0weDEuZGJmYmJjNzAyNTRiY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNjc5CisgICAgMHgxLjRlZGY0MzBjMDAyNDQ3N2NlZmZmZWMzNjRkYTg1YzFkcDAsCisgICAgMHgxLmRiZmJiYzcwMjU0YmNwMQorICB9LAorICB7IC8vIEVudHJ5IDY4MAorICAgIC0weDEuNGEyNDA3NDQ3YTgxYzdkYzExMjEyNTllMDg1NjVkM2VwMCwKKyAgICAtMHgxLmJiMjgyYjA3NGVkY2FwMQorICB9LAorICB7IC8vIEVudHJ5IDY4MQorICAgIDB4MS40YTI0MDc0NDdhODFjN2RjMTEyMTI1OWUwODU2NWQzZXAwLAorICAgIDB4MS5iYjI4MmIwNzRlZGNhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODIKKyAgICAtMHgxLjQ0YjcxMGJkZTk0NGY1YjczZDIzODA5MTNmYjk2YjkzcDAsCisgICAgLTB4MS45YTU0OTk5ZTc4NmQ4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODMKKyAgICAweDEuNDRiNzEwYmRlOTQ0ZjViNzNkMjM4MDkxM2ZiOTZiOTNwMCwKKyAgICAweDEuOWE1NDk5OWU3ODZkOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjg0CisgICAgLTB4MS4zZTZmYmIyYzQxMzk2OTk3ZmFlM2NlN2NiMjAyYWIzY3AwLAorICAgIC0weDEuNzk4MTA4MzVhMWZlNnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjg1CisgICAgMHgxLjNlNmZiYjJjNDEzOTY5OTdmYWUzY2U3Y2IyMDJhYjNjcDAsCisgICAgMHgxLjc5ODEwODM1YTFmZTZwMQorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIC0weDEuMzcxODlkOTc1ZTVmYTA5YTM4MjcyZDdmNTYwZTBkYTRwMCwKKyAgICAtMHgxLjU4YWQ3NmNjY2I4ZjRwMQorICB9LAorICB7IC8vIEVudHJ5IDY4NworICAgIDB4MS4zNzE4OWQ5NzVlNWZhMDlhMzgyNzJkN2Y1NjBlMGRhNHAwLAorICAgIDB4MS41OGFkNzZjY2NiOGY0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODgKKyAgICAtMHgxLjJlNmE3NmQzYTdjNGU4N2ZlZmE1MThjMzI2YWI2MTU2cDAsCisgICAgLTB4MS4zN2Q5ZTU2M2Y1MjAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODkKKyAgICAweDEuMmU2YTc2ZDNhN2M0ZTg3ZmVmYTUxOGMzMjZhYjYxNTZwMCwKKyAgICAweDEuMzdkOWU1NjNmNTIwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjkwCisgICAgLTB4MS4yNDA0YmY0YjNlYWQxYmUwZDYxNGUxNmJkMTkxNmY0ZHAwLAorICAgIC0weDEuMTcwNjUzZmIxZWIxMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjkxCisgICAgMHgxLjI0MDRiZjRiM2VhZDFiZTBkNjE0ZTE2YmQxOTE2ZjRkcDAsCisgICAgMHgxLjE3MDY1M2ZiMWViMTBwMQorICB9LAorICB7IC8vIEVudHJ5IDY5MgorICAgIC0weDEuMTc2MmM2MDQzOGNlNTkzODA2OWIyMGNmNjMxNDk0NGFwMCwKKyAgICAtMHgxLmVjNjU4NTI0OTA4M2NwMAorICB9LAorICB7IC8vIEVudHJ5IDY5MworICAgIDB4MS4xNzYyYzYwNDM4Y2U1OTM4MDY5YjIwY2Y2MzE0OTQ0YXAwLAorICAgIDB4MS5lYzY1ODUyNDkwODNjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTQKKyAgICAtMHgxLjA3Y2JmZThjMTRkZGQxZjFkMzhiYTk4MWIwOTk2YTFhcDAsCisgICAgLTB4MS5hYWJlNjI1MmUzYTU4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTUKKyAgICAweDEuMDdjYmZlOGMxNGRkZDFmMWQzOGJhOTgxYjA5OTZhMWFwMCwKKyAgICAweDEuYWFiZTYyNTJlM2E1OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjk2CisgICAgLTB4MS5lODdkMzU4MzYxYmRkMjc4OWZkMTM5MDA1NDkxMDRjMnAtMSwKKyAgICAtMHgxLjY5MTczZjgxMzZjNzRwMAorICB9LAorICB7IC8vIEVudHJ5IDY5NworICAgIDB4MS5lODdkMzU4MzYxYmRkMjc4OWZkMTM5MDA1NDkxMDRjMnAtMSwKKyAgICAweDEuNjkxNzNmODEzNmM3NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjk4CisgICAgLTB4MS5iNmFkZDQ0ODcxNGYxNGU0Y2JkMDQ1NzQwMTE2ZjUzNHAtMSwKKyAgICAtMHgxLjI3NzAxY2FmODllOTBwMAorICB9LAorICB7IC8vIEVudHJ5IDY5OQorICAgIDB4MS5iNmFkZDQ0ODcxNGYxNGU0Y2JkMDQ1NzQwMTE2ZjUzNHAtMSwKKyAgICAweDEuMjc3MDFjYWY4OWU5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzAwCisgICAgLTB4MS43Njg1NjI0Y2IzNzU5M2ViOTYwYWYzNjhhZWVhMjYxNnAtMSwKKyAgICAtMHgxLmNiOTFmM2JiYmExNTdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDEKKyAgICAweDEuNzY4NTYyNGNiMzc1OTNlYjk2MGFmMzY4YWVlYTI2MTZwLTEsCisgICAgMHgxLmNiOTFmM2JiYmExNTdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDIKKyAgICAtMHgxLjIzZTcxN2QwZmE3YzI3MDU2NTllMTFlZDg1ZTZkYWM0cC0xLAorICAgIC0weDEuNDg0M2FlMTg2MDU4ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwMworICAgIDB4MS4yM2U3MTdkMGZhN2MyNzA1NjU5ZTExZWQ4NWU2ZGFjNHAtMSwKKyAgICAweDEuNDg0M2FlMTg2MDU4ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwNAorICAgIC0weDEuNzgwYzQ1Yjk3MzZkMmQ4OWU1ZGJjNWZlNzE2N2E3ODZwLTIsCisgICAgLTB4MS44OWVhZDBlYTBkMzhhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzA1CisgICAgMHgxLjc4MGM0NWI5NzM2ZDJkODllNWRiYzVmZTcxNjdhNzg2cC0yLAorICAgIDB4MS44OWVhZDBlYTBkMzhhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzA2CisgICAgLTB4MS4wNTJmYWIzNjhlMGJmNjFlYTNmOTQyYmQyNjAxZTFiYXAtMywKKyAgICAtMHgxLjA2OWM4YjQ2YjM3ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDcKKyAgICAweDEuMDUyZmFiMzY4ZTBiZjYxZWEzZjk0MmJkMjYwMWUxYmFwLTMsCisgICAgMHgxLjA2OWM4YjQ2YjM3ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDgKKyAgICAweDEuMDUyZmFiMzY4ZTAwNjZjNzUzZWM2NDgxOWI3NmE0ODlwLTMsCisgICAgMHgxLjA2OWM4YjQ2YjM3MzRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDkKKyAgICAtMHgxLjA1MmZhYjM2OGUwMDY2Yzc1M2VjNjQ4MTliNzZhNDg5cC0zLAorICAgIC0weDEuMDY5YzhiNDZiMzczNHAtMworICB9LAorICB7IC8vIEVudHJ5IDcxMAorICAgIDB4MS43ODBjNDViOTczNjgwZjY5ZmY5NDYwMGQ5NzZlY2NhM3AtMiwKKyAgICAweDEuODllYWQwZWEwZDMyY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDcxMQorICAgIC0weDEuNzgwYzQ1Yjk3MzY4MGY2OWZmOTQ2MDBkOTc2ZWNjYTNwLTIsCisgICAgLTB4MS44OWVhZDBlYTBkMzJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzEyCisgICAgMHgxLjIzZTcxN2QwZmE3YTEyMTZkODYxODFlYWIxMDVkY2Y5cC0xLAorICAgIDB4MS40ODQzYWUxODYwNTVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzEzCisgICAgLTB4MS4yM2U3MTdkMGZhN2ExMjE2ZDg2MTgxZWFiMTA1ZGNmOXAtMSwKKyAgICAtMHgxLjQ4NDNhZTE4NjA1NWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTQKKyAgICAweDEuNzY4NTYyNGNiMzczZjM3NTA1NmFhNjI5YzE0ZDdmN2VwLTEsCisgICAgMHgxLmNiOTFmM2JiYmExMjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTUKKyAgICAtMHgxLjc2ODU2MjRjYjM3M2YzNzUwNTZhYTYyOWMxNGQ3ZjdlcC0xLAorICAgIC0weDEuY2I5MWYzYmJiYTEyOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxNgorICAgIDB4MS5iNmFkZDQ0ODcxNGRjYjhhNTJjZDM1YTk4NzMzMGY3MXAtMSwKKyAgICAweDEuMjc3MDFjYWY4OWU3OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzE3CisgICAgLTB4MS5iNmFkZDQ0ODcxNGRjYjhhNTJjZDM1YTk4NzMzMGY3MXAtMSwKKyAgICAtMHgxLjI3NzAxY2FmODllNzhwMAorICB9LAorICB7IC8vIEVudHJ5IDcxOAorICAgIDB4MS5lODdkMzU4MzYxYmNkMTkzNTk5OTZhNzc3OWM5NzdhMnAtMSwKKyAgICAweDEuNjkxNzNmODEzNmM1Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNzE5CisgICAgLTB4MS5lODdkMzU4MzYxYmNkMTkzNTk5OTZhNzc3OWM5NzdhMnAtMSwKKyAgICAtMHgxLjY5MTczZjgxMzZjNWNwMAorICB9LAorICB7IC8vIEVudHJ5IDcyMAorICAgIDB4MS4wN2NiZmU4YzE0ZGQ2YzUzMTYwM2U5NDNmMjNiNTM5NXAwLAorICAgIDB4MS5hYWJlNjI1MmUzYTQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjEKKyAgICAtMHgxLjA3Y2JmZThjMTRkZDZjNTMxNjAzZTk0M2YyM2I1Mzk1cDAsCisgICAgLTB4MS5hYWJlNjI1MmUzYTQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjIKKyAgICAweDEuMTc2MmM2MDQzOGNlMDc4MjUyZDg1ZTQyNjIxMzExZWZwMCwKKyAgICAweDEuZWM2NTg1MjQ5MDgyNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzIzCisgICAgLTB4MS4xNzYyYzYwNDM4Y2UwNzgyNTJkODVlNDI2MjEzMTFlZnAwLAorICAgIC0weDEuZWM2NTg1MjQ5MDgyNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzI0CisgICAgMHgxLjI0MDRiZjRiM2VhY2Q5MWUxMzJiZmI2NzRlMjkxM2FkcDAsCisgICAgMHgxLjE3MDY1M2ZiMWViMDRwMQorICB9LAorICB7IC8vIEVudHJ5IDcyNQorICAgIC0weDEuMjQwNGJmNGIzZWFjZDkxZTEzMmJmYjY3NGUyOTEzYWRwMCwKKyAgICAtMHgxLjE3MDY1M2ZiMWViMDRwMQorICB9LAorICB7IC8vIEVudHJ5IDcyNgorICAgIDB4MS4yZTZhNzZkM2E3YzRiMTIyNjQ1MmNiZWUyNTRjYjAwZXAwLAorICAgIDB4MS4zN2Q5ZTU2M2Y1MWY2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjcKKyAgICAtMHgxLjJlNmE3NmQzYTdjNGIxMjI2NDUyY2JlZTI1NGNiMDBlcDAsCisgICAgLTB4MS4zN2Q5ZTU2M2Y1MWY2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjgKKyAgICAweDEuMzcxODlkOTc1ZTVmNzIxMDM5ZWUwNjIyN2IyY2MzNGVwMCwKKyAgICAweDEuNThhZDc2Y2NjYjhlOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzI5CisgICAgLTB4MS4zNzE4OWQ5NzVlNWY3MjEwMzllZTA2MjI3YjJjYzM0ZXAwLAorICAgIC0weDEuNThhZDc2Y2NjYjhlOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzMwCisgICAgMHgxLjNlNmZiYjJjNDEzOTQxZmY4OTljNDYyMzc2YWZhZmYzcDAsCisgICAgMHgxLjc5ODEwODM1YTFmZGFwMQorICB9LAorICB7IC8vIEVudHJ5IDczMQorICAgIC0weDEuM2U2ZmJiMmM0MTM5NDFmZjg5OWM0NjIzNzZhZmFmZjNwMCwKKyAgICAtMHgxLjc5ODEwODM1YTFmZGFwMQorICB9LAorICB7IC8vIEVudHJ5IDczMgorICAgIDB4MS40NGI3MTBiZGU5NDRkM2E5YWVmZjYzZDkxZmExZjAzN3AwLAorICAgIDB4MS45YTU0OTk5ZTc4NmNjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzMKKyAgICAtMHgxLjQ0YjcxMGJkZTk0NGQzYTlhZWZmNjNkOTFmYTFmMDM3cDAsCisgICAgLTB4MS45YTU0OTk5ZTc4NmNjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzQKKyAgICAweDEuNGEyNDA3NDQ3YTgxYWE0YTY3NTFiYTFjMDBhZDE2YjRwMCwKKyAgICAweDEuYmIyODJiMDc0ZWRiZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzM1CisgICAgLTB4MS40YTI0MDc0NDdhODFhYTRhNjc1MWJhMWMwMGFkMTZiNHAwLAorICAgIC0weDEuYmIyODJiMDc0ZWRiZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzM2CisgICAgMHgxLjRlZGY0MzBjMDAyNDJkOTc2MGFmMmJhM2QxMzRlZTMwcDAsCisgICAgMHgxLmRiZmJiYzcwMjU0YjBwMQorICB9LAorICB7IC8vIEVudHJ5IDczNworICAgIC0weDEuNGVkZjQzMGMwMDI0MmQ5NzYwYWYyYmEzZDEzNGVlMzBwMCwKKyAgICAtMHgxLmRiZmJiYzcwMjU0YjBwMQorICB9LAorICB7IC8vIEVudHJ5IDczOAorICAgIDB4MS41MzA4MjM0ODNkMzVlZWQ3YmRjNDFjN2Q0M2Q0ZDFiZXAwLAorICAgIDB4MS5mY2NmNGRkOGZiYmEycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzkKKyAgICAtMHgxLjUzMDgyMzQ4M2QzNWVlZDdiZGM0MWM3ZDQzZDRkMWJlcDAsCisgICAgLTB4MS5mY2NmNGRkOGZiYmEycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDAKKyAgICAweDEuNTZiNzMyZTVjZDllNjIxNjIwYzI5MmYyMWMzNzBhNjVwMCwKKyAgICAweDEuMGVkMTZmYTBlOTE0YXAyCisgIH0sCisgIHsgLy8gRW50cnkgNzQxCisgICAgLTB4MS41NmI3MzJlNWNkOWU2MjE2MjBjMjkyZjIxYzM3MGE2NXAwLAorICAgIC0weDEuMGVkMTZmYTBlOTE0YXAyCisgIH0sCisgIHsgLy8gRW50cnkgNzQyCisgICAgMHgxLjU5ZmZlMjc4ZmI1Y2ZkYWNiYzUxMDYxNjY3NjQxMzIwcDAsCisgICAgMHgxLjFmM2IzODU1NTQ0YzNwMgorICB9LAorICB7IC8vIEVudHJ5IDc0MworICAgIC0weDEuNTlmZmUyNzhmYjVjZmRhY2JjNTEwNjE2Njc2NDEzMjBwMCwKKyAgICAtMHgxLjFmM2IzODU1NTQ0YzNwMgorICB9LAorICB7IC8vIEVudHJ5IDc0NAorICAgIDB4MS41Y2YxYzUzZGQ5Y2E4ZjRkMzIwZWZhZjJiZWQyMzhkZXAwLAorICAgIDB4MS4yZmE1MDEwOWJmODNjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDUKKyAgICAtMHgxLjVjZjFjNTNkZDljYThmNGQzMjBlZmFmMmJlZDIzOGRlcDAsCisgICAgLTB4MS4yZmE1MDEwOWJmODNjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDYKKyAgICAweDEuNWY5OTc3YTQ3YWVlMDkwZDU0Y2E3Yjc2M2FmMmI4ZjZwMCwKKyAgICAweDEuNDAwZWM5YmUyYWJiNXAyCisgIH0sCisgIHsgLy8gRW50cnkgNzQ3CisgICAgLTB4MS41Zjk5NzdhNDdhZWUwOTBkNTRjYTdiNzYzYWYyYjhmNnAwLAorICAgIC0weDEuNDAwZWM5YmUyYWJiNXAyCisgIH0sCisgIHsgLy8gRW50cnkgNzQ4CisgICAgMHgxLjYyMDE0OTNiMDIyMzU0NTRjZmU5OTc4NDliNTZlNmE0cDAsCisgICAgMHgxLjUwNzg5MjcyOTVmMmVwMgorICB9LAorICB7IC8vIEVudHJ5IDc0OQorICAgIC0weDEuNjIwMTQ5M2IwMjIzNTQ1NGNmZTk5Nzg0OWI1NmU2YTRwMCwKKyAgICAtMHgxLjUwNzg5MjcyOTVmMmVwMgorICB9LAorICB7IC8vIEVudHJ5IDc1MAorICAgIDB4MS42NDMxYmI3ZWRmMmJhYWU4ODQ2NGVhZDEyYWI0NjE5ZXAwLAorICAgIDB4MS42MGUyNWIyNzAxMmE3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTEKKyAgICAtMHgxLjY0MzFiYjdlZGYyYmFhZTg4NDY0ZWFkMTJhYjQ2MTllcDAsCisgICAgLTB4MS42MGUyNWIyNzAxMmE3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTIKKyAgICAweDEuNjYzMWUxYTU5NTkwMmMzYjQyMTcxYTc2ODk4ZWM4ZmJwMCwKKyAgICAweDEuNzE0YzIzZGI2YzYyMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzUzCisgICAgLTB4MS42NjMxZTFhNTk1OTAyYzNiNDIxNzFhNzY4OThlYzhmYnAwLAorICAgIC0weDEuNzE0YzIzZGI2YzYyMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzU0CisgICAgMHgxLjY4MDdhOWM1NDBkZDJhZTcyYTNlOGFkOGM5MTQ3ODY3cDAsCisgICAgMHgxLjgxYjVlYzhmZDc5OTlwMgorICB9LAorICB7IC8vIEVudHJ5IDc1NQorICAgIC0weDEuNjgwN2E5YzU0MGRkMmFlNzJhM2U4YWQ4YzkxNDc4NjdwMCwKKyAgICAtMHgxLjgxYjVlYzhmZDc5OTlwMgorICB9LAorICB7IC8vIEVudHJ5IDc1NgorICAgIDB4MS5lZjY1MmRjZWNhNGRhZWMwNDRkZWIzNDZjNGIwOGQ0OHAtNSwKKyAgICAweDEuZWZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDc1NworICAgIC0weDEuZWY2NTJkY2VjYTRkYWVjMDQ0ZGViMzQ2YzRiMDhkNDhwLTUsCisgICAgLTB4MS5lZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgNzU4CisgICAgMHgxLmVmNjUyZGNlY2E0ZGJlYjE0ZWU5MDcxNTlkZDFjMzY5cC01LAorICAgIDB4MS5mcC01CisgIH0sCisgIHsgLy8gRW50cnkgNzU5CisgICAgLTB4MS5lZjY1MmRjZWNhNGRiZWIxNGVlOTA3MTU5ZGQxYzM2OXAtNSwKKyAgICAtMHgxLmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjAKKyAgICAweDEuZWY2NTJkY2VjYTRkY2VhMjU4ZjM1YWU0NzZmMjAzNTlwLTUsCisgICAgMHgxLmYwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjEKKyAgICAtMHgxLmVmNjUyZGNlY2E0ZGNlYTI1OGYzNWFlNDc2ZjIwMzU5cC01LAorICAgIC0weDEuZjAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDc2MgorICAgIDB4MS5mNTdhYjAyNmMzYThlY2I4M2VjMGNjZGQxMGFkZDQ5ZXAtNCwKKyAgICAweDEuZjdmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDc2MworICAgIC0weDEuZjU3YWIwMjZjM2E4ZWNiODNlYzBjY2RkMTBhZGQ0OWVwLTQsCisgICAgLTB4MS5mN2ZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNzY0CisgICAgMHgxLmY1N2FiMDI2YzNhOGZjN2IyNzhhMDZlOWQwYzQzZTNhcC00LAorICAgIDB4MS5mODBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjUKKyAgICAtMHgxLmY1N2FiMDI2YzNhOGZjN2IyNzhhMDZlOWQwYzQzZTNhcC00LAorICAgIC0weDEuZjgwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNzY2CisgICAgMHgxLmY1N2FiMDI2YzNhOTBjM2UxMDUzNDBmNjkwZDZkNWFmcC00LAorICAgIDB4MS5mODAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgNzY3CisgICAgLTB4MS5mNTdhYjAyNmMzYTkwYzNlMTA1MzQwZjY5MGQ2ZDVhZnAtNCwKKyAgICAtMHgxLmY4MDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjgKKyAgICAweDEuNDkyMzAyNGNjYjc3ZmZjMzYwOTFhNmYyMzQwNTE3ODNwLTMsCisgICAgMHgxLjRiZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjkKKyAgICAtMHgxLjQ5MjMwMjRjY2I3N2ZmYzM2MDkxYTZmMjM0MDUxNzgzcC0zLAorICAgIC0weDEuNGJmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDc3MAorICAgIDB4MS40OTIzMDI0Y2NiNzgwZjVhN2UyZWFkNGUyYmQyNGQzM3AtMywKKyAgICAweDEuNGMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzcxCisgICAgLTB4MS40OTIzMDI0Y2NiNzgwZjVhN2UyZWFkNGUyYmQyNGQzM3AtMywKKyAgICAtMHgxLjRjMHAtMworICB9LAorICB7IC8vIEVudHJ5IDc3MgorICAgIDB4MS40OTIzMDI0Y2NiNzgxZWYxOWJjYmIzYWEyMzk1YTkyYnAtMywKKyAgICAweDEuNGMwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDc3MworICAgIC0weDEuNDkyMzAyNGNjYjc4MWVmMTliY2JiM2FhMjM5NWE5MmJwLTMsCisgICAgLTB4MS40YzAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzc0CisgICAgMHgxLjJhNzNhNjYxZWFmMDRjOTQ4MzNlMDE5OTE4MGU5MzFkcC0yLAorICAgIDB4MS4zMzMzMzMzMzMzMzMycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzc1CisgICAgLTB4MS4yYTczYTY2MWVhZjA0Yzk0ODMzZTAxOTkxODBlOTMxZHAtMiwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzYKKyAgICAweDEuMmE3M2E2NjFlYWYwNWI0MjRmOTI4ZTgzZjRlYTdiYzJwLTIsCisgICAgMHgxLjMzMzMzMzMzMzMzMzNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzcKKyAgICAtMHgxLjJhNzNhNjYxZWFmMDViNDI0ZjkyOGU4M2Y0ZWE3YmMycC0yLAorICAgIC0weDEuMzMzMzMzMzMzMzMzM3AtMgorICB9LAorICB7IC8vIEVudHJ5IDc3OAorICAgIDB4MS4yYTczYTY2MWVhZjA2OWYwMWJlNzFiNmVkMWE2MTI1OXAtMiwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc3OQorICAgIC0weDEuMmE3M2E2NjFlYWYwNjlmMDFiZTcxYjZlZDFhNjEyNTlwLTIsCisgICAgLTB4MS4zMzMzMzMzMzMzMzM0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzgwCisgICAgMHgxLjJmYzQ4MjIwY2MxZmNlN2ZjOTNhNzdhMDdlNDhiMDAycC0xLAorICAgIDB4MS41OTQzMTdhY2M0ZWY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzgxCisgICAgLTB4MS4yZmM0ODIyMGNjMWZjZTdmYzkzYTc3YTA3ZTQ4YjAwMnAtMSwKKyAgICAtMHgxLjU5NDMxN2FjYzRlZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODIKKyAgICAweDEuMmZjNDgyMjBjYzFmZDk3ZjZiOTQxOWYyY2VmYTA2NDZwLTEsCisgICAgMHgxLjU5NDMxN2FjYzRlZjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODMKKyAgICAtMHgxLjJmYzQ4MjIwY2MxZmQ5N2Y2Yjk0MTlmMmNlZmEwNjQ2cC0xLAorICAgIC0weDEuNTk0MzE3YWNjNGVmOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDc4NAorICAgIDB4MS4yZmM0ODIyMGNjMWZlNDdmMGRlZGJjNDUxZjU5Yzk5Y3AtMSwKKyAgICAweDEuNTk0MzE3YWNjNGVmYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDc4NQorICAgIC0weDEuMmZjNDgyMjBjYzFmZTQ3ZjBkZWRiYzQ1MWY1OWM5OWNwLTEsCisgICAgLTB4MS41OTQzMTdhY2M0ZWZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzg2CisgICAgMHgxLjUzOGY1N2I4OTA2MWUxYTE5NzkzYWRhYjcyZGM0Y2QwcC0xLAorICAgIDB4MS44ZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzg3CisgICAgLTB4MS41MzhmNTdiODkwNjFlMWExOTc5M2FkYWI3MmRjNGNkMHAtMSwKKyAgICAtMHgxLjhmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODgKKyAgICAweDEuNTM4ZjU3Yjg5MDYxZWI5MTIyZDUwOTZiN2NmMjY3ZWJwLTEsCisgICAgMHgxLjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODkKKyAgICAtMHgxLjUzOGY1N2I4OTA2MWViOTEyMmQ1MDk2YjdjZjI2N2VicC0xLAorICAgIC0weDEuOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDc5MAorICAgIDB4MS41MzhmNTdiODkwNjFmNTgwYWUxNjY1MmI4NmJiNjM1M3AtMSwKKyAgICAweDEuOTAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDc5MQorICAgIC0weDEuNTM4ZjU3Yjg5MDYxZjU4MGFlMTY2NTJiODZiYjYzNTNwLTEsCisgICAgLTB4MS45MDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzkyCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTMKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTQKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTUKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTYKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDc5NworICAgIDB4MS45MWNkMjRkZDRmODZmM2FiY2ZhNDI3NmQ4M2ExM2Q3M3AtNSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AtNQorICB9LAorICB7IC8vIEVudHJ5IDc5OAorICAgIC0weDEuOTFjZDI0ZGQ0Zjg2ZjNhYmNmYTQyNzZkODNhMTNkNzNwLTUsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cC01CisgIH0sCisgIHsgLy8gRW50cnkgNzk5CisgICAgMHgxLjkxY2QyNGRkNGY4NzAzYTFmNzE4OGYxZDY0NTQyMWIxcC01LAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC01CisgIH0sCisgIHsgLy8gRW50cnkgODAwCisgICAgLTB4MS45MWNkMjRkZDRmODcwM2ExZjcxODhmMWQ2NDU0MjFiMXAtNSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDEKKyAgICAweDEuOTFjZDI0ZGQ0Zjg3MTM5ODFlOGNmNmNkNDUwNjNkZDZwLTUsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDIKKyAgICAtMHgxLjkxY2QyNGRkNGY4NzEzOTgxZThjZjZjZDQ1MDYzZGQ2cC01LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtNQorICB9LAorICB7IC8vIEVudHJ5IDgwMworICAgIDB4MS45MGQ2ZGZiZjA0NjNiZTJlZmMzZDNhZTk5NWI5ZTI0MHAtNCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AtNAorICB9LAorICB7IC8vIEVudHJ5IDgwNAorICAgIC0weDEuOTBkNmRmYmYwNDYzYmUyZWZjM2QzYWU5OTViOWUyNDBwLTQsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cC00CisgIH0sCisgIHsgLy8gRW50cnkgODA1CisgICAgMHgxLjkwZDZkZmJmMDQ2M2NlMDdlMjNlNTQxNDU4YzRhYTA3cC00LAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC00CisgIH0sCisgIHsgLy8gRW50cnkgODA2CisgICAgLTB4MS45MGQ2ZGZiZjA0NjNjZTA3ZTIzZTU0MTQ1OGM0YWEwN3AtNCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDcKKyAgICAweDEuOTBkNmRmYmYwNDYzZGRlMGM4M2Y2ZDNmMWJjYzVjZDdwLTQsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDgKKyAgICAtMHgxLjkwZDZkZmJmMDQ2M2RkZTBjODNmNmQzZjFiY2M1Y2Q3cC00LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtNAorICB9LAorICB7IC8vIEVudHJ5IDgwOQorICAgIDB4MS44ZDEyOGVhZTk1NjEzNTNhODgwNjJlZjBhMzRiNGU4MHAtMywKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AtMworICB9LAorICB7IC8vIEVudHJ5IDgxMAorICAgIC0weDEuOGQxMjhlYWU5NTYxMzUzYTg4MDYyZWYwYTM0YjRlODBwLTMsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cC0zCisgIH0sCisgIHsgLy8gRW50cnkgODExCisgICAgMHgxLjhkMTI4ZWFlOTU2MTQ0YTI3YWQwNGVhYTViOTI0ZDA2cC0zLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgODEyCisgICAgLTB4MS44ZDEyOGVhZTk1NjE0NGEyN2FkMDRlYWE1YjkyNGQwNnAtMywKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTMKKyAgICAweDEuOGQxMjhlYWU5NTYxNTQwYTZkOWE2ZTY0MTNjZGE0ZjdwLTMsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTQKKyAgICAtMHgxLjhkMTI4ZWFlOTU2MTU0MGE2ZDlhNmU2NDEzY2RhNGY3cC0zLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMworICB9LAorICB7IC8vIEVudHJ5IDgxNQorICAgIDB4MS43ZjJkNmEyNDc3N2UwOTljMjM3NmNmMDg5OGIzYzM2MHAtMiwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AtMgorICB9LAorICB7IC8vIEVudHJ5IDgxNgorICAgIC0weDEuN2YyZDZhMjQ3NzdlMDk5YzIzNzZjZjA4OThiM2MzNjBwLTIsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cC0yCisgIH0sCisgIHsgLy8gRW50cnkgODE3CisgICAgMHgxLjdmMmQ2YTI0Nzc3ZTE3NzhlMGQ1YzYyMTAyMDg1NjEwcC0yLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgODE4CisgICAgLTB4MS43ZjJkNmEyNDc3N2UxNzc4ZTBkNWM2MjEwMjA4NTYxMHAtMiwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTkKKyAgICAweDEuN2YyZDZhMjQ3NzdlMjU1NTllMzRiZDM5NmIzNzJkOWVwLTIsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjAKKyAgICAtMHgxLjdmMmQ2YTI0Nzc3ZTI1NTU5ZTM0YmQzOTZiMzcyZDllcC0yLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMgorICB9LAorICB7IC8vIEVudHJ5IDgyMQorICAgIDB4MS41NGUwNGMwNWQwNjlmYTFlY2FjMGMzZjVkN2ZhZTcwZnAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDgyMgorICAgIC0weDEuNTRlMDRjMDVkMDY5ZmExZWNhYzBjM2Y1ZDdmYWU3MGZwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODIzCisgICAgMHgxLjU0ZTA0YzA1ZDA2YTA0MDQxY2NmMzBmMDAxMTBjMGY2cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODI0CisgICAgLTB4MS41NGUwNGMwNWQwNmEwNDA0MWNjZjMwZjAwMTEwYzBmNnAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjUKKyAgICAweDEuNTRlMDRjMDVkMDZhMGRlOTZlZGQ5ZGVhMjlkOWIxOTFwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjYKKyAgICAtMHgxLjU0ZTA0YzA1ZDA2YTBkZTk2ZWRkOWRlYTI5ZDliMTkxcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDgyNworICAgIDB4MS4wMGZlOTg3ZWQwMmZlZDk2MmUxMjNhN2UxMmE2ZDI4M3AwLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjgKKyAgICAtMHgxLjAwZmU5ODdlZDAyZmVkOTYyZTEyM2E3ZTEyYTZkMjgzcDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjkKKyAgICAweDEuMDBmZTk4N2VkMDJmZjIzMzc3ZDk5ZWMzNmRiNTMzZmVwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgODMwCisgICAgLTB4MS4wMGZlOTg3ZWQwMmZmMjMzNzdkOTllYzM2ZGI1MzNmZXAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgODMxCisgICAgMHgxLjAwZmU5ODdlZDAyZmY2ZDBjMWExMDMwOGM4ODBiMGQzcDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwMAorICB9LAorICB7IC8vIEVudHJ5IDgzMgorICAgIC0weDEuMDBmZTk4N2VkMDJmZjZkMGMxYTEwMzA4Yzg4MGIwZDNwMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMAorICB9LAorICB7IC8vIEVudHJ5IDgzMworICAgIDB4MS40MzNiOGEzMjJkZGQyNjZmZDgxZWM4NDNkN2M5MmE3YXAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzQKKyAgICAtMHgxLjQzM2I4YTMyMmRkZDI2NmZkODFlYzg0M2Q3YzkyYTdhcDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzUKKyAgICAweDEuNDMzYjhhMzIyZGRkMjk2MTgxNjhhMjFjOTYyYzY4YmNwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgODM2CisgICAgLTB4MS40MzNiOGEzMjJkZGQyOTYxODE2OGEyMWM5NjJjNjhiY3AwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgODM3CisgICAgMHgxLjQzM2I4YTMyMmRkZDJjNTMyYWIyN2JmNTU0NTkzMjBicDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwMQorICB9LAorICB7IC8vIEVudHJ5IDgzOAorICAgIC0weDEuNDMzYjhhMzIyZGRkMmM1MzJhYjI3YmY1NTQ1OTMyMGJwMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMQorICB9LAorICB7IC8vIEVudHJ5IDgzOQorICAgIDB4MS42OWI4MTU0YmFmNDJlMGY1MjdmZjNmNGRmN2E0NjMzZXAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDAKKyAgICAtMHgxLjY5YjgxNTRiYWY0MmUwZjUyN2ZmM2Y0ZGY3YTQ2MzNlcDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDEKKyAgICAweDEuNjliODE1NGJhZjQyZTI4OWVhNDZkZTU5Zjc1YTdiOTBwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAyCisgIH0sCisgIHsgLy8gRW50cnkgODQyCisgICAgLTB4MS42OWI4MTU0YmFmNDJlMjg5ZWE0NmRlNTlmNzVhN2I5MHAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAyCisgIH0sCisgIHsgLy8gRW50cnkgODQzCisgICAgMHgxLjY5YjgxNTRiYWY0MmU0MWVhYzhlN2Q2NWY2ZjEyOWU3cDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwMgorICB9LAorICB7IC8vIEVudHJ5IDg0NAorICAgIC0weDEuNjliODE1NGJhZjQyZTQxZWFjOGU3ZDY1ZjZmMTI5ZTdwMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMgorICB9LAorICB7IC8vIEVudHJ5IDg0NQorICAgIDB4MS43ZGNiN2M1YzM5OWVjMDRhZDVjMWVhYmJiMGNjY2Y5ZnAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDYKKyAgICAtMHgxLjdkY2I3YzVjMzk5ZWMwNGFkNWMxZWFiYmIwY2NjZjlmcDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDcKKyAgICAweDEuN2RjYjdjNWMzOTllYzExOTA4ZjU5ODY0NDNmMzBiZGFwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODQ4CisgICAgLTB4MS43ZGNiN2M1YzM5OWVjMTE5MDhmNTk4NjQ0M2YzMGJkYXAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODQ5CisgICAgMHgxLjdkY2I3YzVjMzk5ZWMxZTczYzI5NDYwY2Q3MDhmOWQ4cDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwMworICB9LAorICB7IC8vIEVudHJ5IDg1MAorICAgIC0weDEuN2RjYjdjNWMzOTllYzFlNzNjMjk0NjBjZDcwOGY5ZDhwMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMworICB9LAorICB7IC8vIEVudHJ5IDg1MQorICAgIDB4MS44N2YxN2NmZGEwYjVjYWY3YjE3MGRkODZmODI4N2I2M3AwLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTIKKyAgICAtMHgxLjg3ZjE3Y2ZkYTBiNWNhZjdiMTcwZGQ4NmY4Mjg3YjYzcDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTMKKyAgICAweDEuODdmMTdjZmRhMGI1Y2I1ZjQ4MzJjMDRjZGY3MzZmODRwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA0CisgIH0sCisgIHsgLy8gRW50cnkgODU0CisgICAgLTB4MS44N2YxN2NmZGEwYjVjYjVmNDgzMmMwNGNkZjczNmY4NHAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA0CisgIH0sCisgIHsgLy8gRW50cnkgODU1CisgICAgMHgxLjg3ZjE3Y2ZkYTBiNWNiYzZkZWY0YTMxMmM2YjYyOGIwcDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwNAorICB9LAorICB7IC8vIEVudHJ5IDg1NgorICAgIC0weDEuODdmMTdjZmRhMGI1Y2JjNmRlZjRhMzEyYzZiNjI4YjBwMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNAorICB9LAorICB7IC8vIEVudHJ5IDg1NworICAgIDB4MS44ZDA4MTUyZWRkYjdhM2I4Yzk3NmQ3ZTEyMGJhMTE5N3AwLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTgKKyAgICAtMHgxLjhkMDgxNTJlZGRiN2EzYjhjOTc2ZDdlMTIwYmExMTk3cDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTkKKyAgICAweDEuOGQwODE1MmVkZGI3YTNlY2E0OTQ4ZjNhY2ZmNTA4NjRwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA1CisgIH0sCisgIHsgLy8gRW50cnkgODYwCisgICAgLTB4MS44ZDA4MTUyZWRkYjdhM2VjYTQ5NDhmM2FjZmY1MDg2NHAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA1CisgIH0sCisgIHsgLy8gRW50cnkgODYxCisgICAgMHgxLjhkMDgxNTJlZGRiN2E0MjA3ZmIyNDY5NDdmMmJkZjM1cDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwNQorICB9LAorICB7IC8vIEVudHJ5IDg2MgorICAgIC0weDEuOGQwODE1MmVkZGI3YTQyMDdmYjI0Njk0N2YyYmRmMzVwMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNQorICB9LAorICB7IC8vIEVudHJ5IDg2MworICAgIDB4MS44ZjkzZDRiNzhiN2NkZGY0NDZlMzZlNTM4Yjk4MDE5M3AwLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjQKKyAgICAtMHgxLjhmOTNkNGI3OGI3Y2RkZjQ0NmUzNmU1MzhiOTgwMTkzcDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjUKKyAgICAweDEuOGY5M2Q0Yjc4YjdjZGUwZTM2NmFhMjEyNjQ2ZDNjYjZwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA2CisgIH0sCisgIHsgLy8gRW50cnkgODY2CisgICAgLTB4MS44ZjkzZDRiNzhiN2NkZTBlMzY2YWEyMTI2NDZkM2NiNnAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA2CisgIH0sCisgIHsgLy8gRW50cnkgODY3CisgICAgMHgxLjhmOTNkNGI3OGI3Y2RlMjgyNWYxZDVkMTNkNDA2NzhicDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwNgorICB9LAorICB7IC8vIEVudHJ5IDg2OAorICAgIC0weDEuOGY5M2Q0Yjc4YjdjZGUyODI1ZjFkNWQxM2Q0MDY3OGJwMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNgorICB9LAorICB7IC8vIEVudHJ5IDg2OQorICAgIDB4MS45MGQ5YzJlZDg4NzM3NzVhNGY2ZTNmZTRjM2E1OTgyYnAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzAKKyAgICAtMHgxLjkwZDljMmVkODg3Mzc3NWE0ZjZlM2ZlNGMzYTU5ODJicDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzEKKyAgICAweDEuOTBkOWMyZWQ4ODczNzc2NzQ3NzBlYWMzNmMyNDM2YjVwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA3CisgIH0sCisgIHsgLy8gRW50cnkgODcyCisgICAgLTB4MS45MGQ5YzJlZDg4NzM3NzY3NDc3MGVhYzM2YzI0MzZiNXAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA3CisgIH0sCisgIHsgLy8gRW50cnkgODczCisgICAgMHgxLjkwZDljMmVkODg3Mzc3NzQzZjczOTVhMjE0YTFjZDBlcDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwNworICB9LAorICB7IC8vIEVudHJ5IDg3NAorICAgIC0weDEuOTBkOWMyZWQ4ODczNzc3NDNmNzM5NWEyMTRhMWNkMGVwMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNworICB9LAorICB7IC8vIEVudHJ5IDg3NQorICAgIDB4MS4yYjVmNGI1M2M3OTQ4ZGY1NTY4NzgyZDBhNzViODQ1OXAwLAorICAgIDB4MS4yZDk3YzdmMzMyMWQxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzYKKyAgICAtMHgxLjJiNWY0YjUzYzc5NDhkZjU1Njg3ODJkMGE3NWI4NDU5cDAsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzcKKyAgICAweDEuMmI1ZjRiNTNjNzk0OTJkN2I1YTZjZDYyMDNjOWFhZTJwMCwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMnAxCisgIH0sCisgIHsgLy8gRW50cnkgODc4CisgICAgLTB4MS4yYjVmNGI1M2M3OTQ5MmQ3YjVhNmNkNjIwM2M5YWFlMnAwLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMnAxCisgIH0sCisgIHsgLy8gRW50cnkgODc5CisgICAgMHgxLjJiNWY0YjUzYzc5NDk3YmExNGM2MTdmMzVmYzc2NjJlcDAsCisgICAgMHgxLjJkOTdjN2YzMzIxZDNwMQorICB9LAorICB7IC8vIEVudHJ5IDg4MAorICAgIC0weDEuMmI1ZjRiNTNjNzk0OTdiYTE0YzYxN2YzNWZjNzY2MmVwMCwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDNwMQorICB9LAorICB7IC8vIEVudHJ5IDg4MQorICAgIDB4MS41MjRhNjlmY2ZmMmFmMDlmNWYxNDBkZjM0MWE0NTVkZHAwLAorICAgIDB4MS5mNmE3YTI5NTUzODVkcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODIKKyAgICAtMHgxLjUyNGE2OWZjZmYyYWYwOWY1ZjE0MGRmMzQxYTQ1NWRkcDAsCisgICAgLTB4MS5mNmE3YTI5NTUzODVkcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODMKKyAgICAweDEuNTI0YTY5ZmNmZjJhZjI5MjNjYWI1YzAwYjY2MGM1NWZwMCwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZXAxCisgIH0sCisgIHsgLy8gRW50cnkgODg0CisgICAgLTB4MS41MjRhNjlmY2ZmMmFmMjkyM2NhYjVjMDBiNjYwYzU1ZnAwLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZXAxCisgIH0sCisgIHsgLy8gRW50cnkgODg1CisgICAgMHgxLjUyNGE2OWZjZmYyYWY0ODUxYTQyYWEwZTJhZmY2MWJjcDAsCisgICAgMHgxLmY2YTdhMjk1NTM4NWZwMQorICB9LAorICB7IC8vIEVudHJ5IDg4NgorICAgIC0weDEuNTI0YTY5ZmNmZjJhZjQ4NTFhNDJhYTBlMmFmZjYxYmNwMCwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWZwMQorICB9LAorICB7IC8vIEVudHJ5IDg4NworICAgIDB4MS41Yzk3ZDM3ZDk4YWEzN2FmMWExYjc1YTYxOTA5ODI4OHAwLAorICAgIDB4MS4yZDk3YzdmMzMyMWQxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODgKKyAgICAtMHgxLjVjOTdkMzdkOThhYTM3YWYxYTFiNzVhNjE5MDk4Mjg4cDAsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODkKKyAgICAweDEuNWM5N2QzN2Q5OGFhM2E3MTFiOTQzNTkzNzFhYWY5MDNwMCwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMnAyCisgIH0sCisgIHsgLy8gRW50cnkgODkwCisgICAgLTB4MS41Yzk3ZDM3ZDk4YWEzYTcxMWI5NDM1OTM3MWFhZjkwM3AwLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMnAyCisgIH0sCisgIHsgLy8gRW50cnkgODkxCisgICAgMHgxLjVjOTdkMzdkOThhYTNkMzMxZDBjZjU4MGNhMDRjMTAycDAsCisgICAgMHgxLjJkOTdjN2YzMzIxZDNwMgorICB9LAorICB7IC8vIEVudHJ5IDg5MgorICAgIC0weDEuNWM5N2QzN2Q5OGFhM2QzMzFkMGNmNTgwY2EwNGMxMDJwMCwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDNwMgorICB9LAorICB7IC8vIEVudHJ5IDg5MworICAgIDB4MS42NDEwMmZjNTcxYzc0MjJiNmFkMGVkMDVmZDI0ZTY1MnAwLAorICAgIDB4MS41ZmRiYmU5YmJhNzc0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTQKKyAgICAtMHgxLjY0MTAyZmM1NzFjNzQyMmI2YWQwZWQwNWZkMjRlNjUycDAsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTUKKyAgICAweDEuNjQxMDJmYzU3MWM3NDQzODFkMjY2ZmViMDhkZGZjYzRwMCwKKyAgICAweDEuNWZkYmJlOWJiYTc3NXAyCisgIH0sCisgIHsgLy8gRW50cnkgODk2CisgICAgLTB4MS42NDEwMmZjNTcxYzc0NDM4MWQyNjZmZWIwOGRkZmNjNHAwLAorICAgIC0weDEuNWZkYmJlOWJiYTc3NXAyCisgIH0sCisgIHsgLy8gRW50cnkgODk3CisgICAgMHgxLjY0MTAyZmM1NzFjNzQ2NDRjZjdiZjJkMDE0NjhlMjY1cDAsCisgICAgMHgxLjVmZGJiZTliYmE3NzZwMgorICB9LAorICB7IC8vIEVudHJ5IDg5OAorICAgIC0weDEuNjQxMDJmYzU3MWM3NDY0NGNmN2JmMmQwMTQ2OGUyNjVwMCwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzZwMgorICB9LAorICB7IC8vIEVudHJ5IDg5OQorICAgIDB4MS42ZTI1NjFhNmNkMjE4MWMwMDlkN2Q4NjNlNjY2YzQzN3AwLAorICAgIDB4MS5jNDYzYWJlY2NiMmJhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDAKKyAgICAtMHgxLjZlMjU2MWE2Y2QyMTgxYzAwOWQ3ZDg2M2U2NjZjNDM3cDAsCisgICAgLTB4MS5jNDYzYWJlY2NiMmJhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDEKKyAgICAweDEuNmUyNTYxYTZjZDIxODMwMTgzYzg3YWUxNzYxMzU0YjBwMCwKKyAgICAweDEuYzQ2M2FiZWNjYjJiYnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTAyCisgICAgLTB4MS42ZTI1NjFhNmNkMjE4MzAxODNjODdhZTE3NjEzNTRiMHAwLAorICAgIC0weDEuYzQ2M2FiZWNjYjJiYnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTAzCisgICAgMHgxLjZlMjU2MWE2Y2QyMTg0NDJmZGI5MWQ1ZjA1YTk5YXAwLAorICAgIDB4MS5jNDYzYWJlY2NiMmJjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDQKKyAgICAtMHgxLjZlMjU2MWE2Y2QyMTg0NDJmZGI5MWQ1ZjA1YTk5YXAwLAorICAgIC0weDEuYzQ2M2FiZWNjYjJiY3AyCisgIH0sCisgIHsgLy8gRW50cnkgOTA1CisgICAgMHgxLjcxYjQxMDBmMDk1Njc2OWQxYzY0YWU0ZDcyOTEwN2E1cDAsCisgICAgMHgxLmY2YTdhMjk1NTM4NWRwMgorICB9LAorICB7IC8vIEVudHJ5IDkwNgorICAgIC0weDEuNzFiNDEwMGYwOTU2NzY5ZDFjNjRhZTRkNzI5MTA3YTVwMCwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWRwMgorICB9LAorICB7IC8vIEVudHJ5IDkwNworICAgIDB4MS43MWI0MTAwZjA5NTY3N2EyN2IyYzAzYjk0MGQ1ZTYxM3AwLAorICAgIDB4MS5mNmE3YTI5NTUzODVlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDgKKyAgICAtMHgxLjcxYjQxMDBmMDk1Njc3YTI3YjJjMDNiOTQwZDVlNjEzcDAsCisgICAgLTB4MS5mNmE3YTI5NTUzODVlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDkKKyAgICAweDEuNzFiNDEwMGYwOTU2NzhhN2Q5ZjM1OTI1MGYwYTY0YzhwMCwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTEwCisgICAgLTB4MS43MWI0MTAwZjA5NTY3OGE3ZDlmMzU5MjUwZjBhNjRjOHAwLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTExCisgICAgMHgxLjc0OWY5NjA5N2M3MDE1MDczNzMzZTJlMzY1OWE4NDRicDAsCisgICAgMHgxLjE0NzVjYzllZWRlZmZwMworICB9LAorICB7IC8vIEVudHJ5IDkxMgorICAgIC0weDEuNzQ5Zjk2MDk3YzcwMTUwNzM3MzNlMmUzNjU5YTg0NGJwMCwKKyAgICAtMHgxLjE0NzVjYzllZWRlZmZwMworICB9LAorICB7IC8vIEVudHJ5IDkxMworICAgIDB4MS43NDlmOTYwOTdjNzAxNmI4NmU5NWNhNjRiM2YxNTQ2ZnAwLAorICAgIDB4MS4xNDc1Y2M5ZWVkZnAzCisgIH0sCisgIHsgLy8gRW50cnkgOTE0CisgICAgLTB4MS43NDlmOTYwOTdjNzAxNmI4NmU5NWNhNjRiM2YxNTQ2ZnAwLAorICAgIC0weDEuMTQ3NWNjOWVlZGZwMworICB9LAorICB7IC8vIEVudHJ5IDkxNQorICAgIDB4MS43NDlmOTYwOTdjNzAxODY5YTVmN2IxZTYwMjE2YTk1MnAwLAorICAgIDB4MS4xNDc1Y2M5ZWVkZjAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTYKKyAgICAtMHgxLjc0OWY5NjA5N2M3MDE4NjlhNWY3YjFlNjAyMTZhOTUycDAsCisgICAgLTB4MS4xNDc1Y2M5ZWVkZjAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTcKKyAgICAweDEuNzcxMDBhYmJkZmU0Zjg4YzQyYjc2YTFhNDRjY2I0ODdwMCwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMXAzCisgIH0sCisgIHsgLy8gRW50cnkgOTE4CisgICAgLTB4MS43NzEwMGFiYmRmZTRmODhjNDJiNzZhMWE0NGNjYjQ4N3AwLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXAzCisgIH0sCisgIHsgLy8gRW50cnkgOTE5CisgICAgMHgxLjc3MTAwYWJiZGZlNGY5ZjkwZDkwNTMzYzAyYjM5NjRlcDAsCisgICAgMHgxLjJkOTdjN2YzMzIxZDJwMworICB9LAorICB7IC8vIEVudHJ5IDkyMAorICAgIC0weDEuNzcxMDBhYmJkZmU0ZjlmOTBkOTA1MzNjMDJiMzk2NGVwMCwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDJwMworICB9LAorICB7IC8vIEVudHJ5IDkyMQorICAgIDB4MS43NzEwMGFiYmRmZTRmYjY1ZDg2OTNjNWRjMDc0MzFiZHAwLAorICAgIDB4MS4yZDk3YzdmMzMyMWQzcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjIKKyAgICAtMHgxLjc3MTAwYWJiZGZlNGZiNjVkODY5M2M1ZGMwNzQzMWJkcDAsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQzcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjMKKyAgICAweDEuNzkyMTZiOTRiNjYyZGViMDdlMmQ2ZGU3ZjE4MDQ1MDdwMCwKKyAgICAweDEuNDZiOWMzNDc3NjRhMnAzCisgIH0sCisgIHsgLy8gRW50cnkgOTI0CisgICAgLTB4MS43OTIxNmI5NGI2NjJkZWIwN2UyZDZkZTdmMTgwNDUwN3AwLAorICAgIC0weDEuNDZiOWMzNDc3NjRhMnAzCisgIH0sCisgIHsgLy8gRW50cnkgOTI1CisgICAgMHgxLjc5MjE2Yjk0YjY2MmRmZTdkNWE5MWI3M2MwNjA4NmVicDAsCisgICAgMHgxLjQ2YjljMzQ3NzY0YTNwMworICB9LAorICB7IC8vIEVudHJ5IDkyNgorICAgIC0weDEuNzkyMTZiOTRiNjYyZGZlN2Q1YTkxYjczYzA2MDg2ZWJwMCwKKyAgICAtMHgxLjQ2YjljMzQ3NzY0YTNwMworICB9LAorICB7IC8vIEVudHJ5IDkyNworICAgIDB4MS43OTIxNmI5NGI2NjJlMTFmMmQyNGM4ZmY4ZjIyOTRiM3AwLAorICAgIDB4MS40NmI5YzM0Nzc2NGE0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjgKKyAgICAtMHgxLjc5MjE2Yjk0YjY2MmUxMWYyZDI0YzhmZjhmMjI5NGIzcDAsCisgICAgLTB4MS40NmI5YzM0Nzc2NGE0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjkKKyAgICAweDEuN2FlN2Q3ZTVkMWY5ZWUyYTBlODlhMjI4OTA2MmFkNzRwMCwKKyAgICAweDEuNWZkYmJlOWJiYTc3NHAzCisgIH0sCisgIHsgLy8gRW50cnkgOTMwCisgICAgLTB4MS43YWU3ZDdlNWQxZjllZTJhMGU4OWEyMjg5MDYyYWQ3NHAwLAorICAgIC0weDEuNWZkYmJlOWJiYTc3NHAzCisgIH0sCisgIHsgLy8gRW50cnkgOTMxCisgICAgMHgxLjdhZTdkN2U1ZDFmOWVmMzZkYzg3MGVkNjk2NGZhOWRmcDAsCisgICAgMHgxLjVmZGJiZTliYmE3NzVwMworICB9LAorICB7IC8vIEVudHJ5IDkzMgorICAgIC0weDEuN2FlN2Q3ZTVkMWY5ZWYzNmRjODcwZWQ2OTY0ZmE5ZGZwMCwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzVwMworICB9LAorICB7IC8vIEVudHJ5IDkzMworICAgIDB4MS43YWU3ZDdlNWQxZjlmMDQzYWE4NDdiODQ5YzI0Njc0YXAwLAorICAgIDB4MS41ZmRiYmU5YmJhNzc2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzQKKyAgICAtMHgxLjdhZTdkN2U1ZDFmOWYwNDNhYTg0N2I4NDljMjQ2NzRhcDAsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzUKKyAgICAweDEuN2M3MjI0NzYzMTlhMjgwZGFiMGI0Y2Y0YzE4N2Y4YWJwMCwKKyAgICAweDEuNzhmZGI5ZWZmZWE0NXAzCisgIH0sCisgIHsgLy8gRW50cnkgOTM2CisgICAgLTB4MS43YzcyMjQ3NjMxOWEyODBkYWIwYjRjZjRjMTg3ZjhhYnAwLAorICAgIC0weDEuNzhmZGI5ZWZmZWE0NXAzCisgIH0sCisgIHsgLy8gRW50cnkgOTM3CisgICAgMHgxLjdjNzIyNDc2MzE5YTI4ZjgxMzFmNWQ1MDBmMGYwM2U2cDAsCisgICAgMHgxLjc4ZmRiOWVmZmVhNDZwMworICB9LAorICB7IC8vIEVudHJ5IDkzOAorICAgIC0weDEuN2M3MjI0NzYzMTlhMjhmODEzMWY1ZDUwMGYwZjAzZTZwMCwKKyAgICAtMHgxLjc4ZmRiOWVmZmVhNDZwMworICB9LAorICB7IC8vIEVudHJ5IDkzOQorICAgIDB4MS43YzcyMjQ3NjMxOWEyOWUyN2IzMzZkYWI1YzgyNGRlZHAwLAorICAgIDB4MS43OGZkYjllZmZlYTQ3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDAKKyAgICAtMHgxLjdjNzIyNDc2MzE5YTI5ZTI3YjMzNmRhYjVjODI0ZGVkcDAsCisgICAgLTB4MS43OGZkYjllZmZlYTQ3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDEKKyAgICAweDEuN2VmYzcxMWM5N2FjYTM0YjE2MjgyMzFkNGY0ZmFiZTJwMCwKKyAgICAweDEuYWI0MWIwOTg4NmZlOHAzCisgIH0sCisgIHsgLy8gRW50cnkgOTQyCisgICAgLTB4MS43ZWZjNzExYzk3YWNhMzRiMTYyODIzMWQ0ZjRmYWJlMnAwLAorICAgIC0weDEuYWI0MWIwOTg4NmZlOHAzCisgIH0sCisgIHsgLy8gRW50cnkgOTQzCisgICAgMHgxLjdlZmM3MTFjOTdhY2E0MDFkZjYwOWNhYjAzYmFiNjhjcDAsCisgICAgMHgxLmFiNDFiMDk4ODZmZTlwMworICB9LAorICB7IC8vIEVudHJ5IDk0NAorICAgIC0weDEuN2VmYzcxMWM5N2FjYTQwMWRmNjA5Y2FiMDNiYWI2OGNwMCwKKyAgICAtMHgxLmFiNDFiMDk4ODZmZTlwMworICB9LAorICB7IC8vIEVudHJ5IDk0NQorICAgIDB4MS43ZWZjNzExYzk3YWNhNGI4YTg5OTE2MzhiODE4MjQxY3AwLAorICAgIDB4MS5hYjQxYjA5ODg2ZmVhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDYKKyAgICAtMHgxLjdlZmM3MTFjOTdhY2E0YjhhODk5MTYzOGI4MTgyNDFjcDAsCisgICAgLTB4MS5hYjQxYjA5ODg2ZmVhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDcKKyAgICAweDEuODAwYmIxNWZmZTgwZGQxNTBiODM1MDZlY2FmY2Q4OTdwMCwKKyAgICAweDEuYzQ2M2FiZWNjYjJiYXAzCisgIH0sCisgIHsgLy8gRW50cnkgOTQ4CisgICAgLTB4MS44MDBiYjE1ZmZlODBkZDE1MGI4MzUwNmVjYWZjZDg5N3AwLAorICAgIC0weDEuYzQ2M2FiZWNjYjJiYXAzCisgIH0sCisgIHsgLy8gRW50cnkgOTQ5CisgICAgMHgxLjgwMGJiMTVmZmU4MGRkYjgyZjEzODhhOTQxYTgyMTVjcDAsCisgICAgMHgxLmM0NjNhYmVjY2IyYmJwMworICB9LAorICB7IC8vIEVudHJ5IDk1MAorICAgIC0weDEuODAwYmIxNWZmZTgwZGRiODJmMTM4OGE5NDFhODIxNWNwMCwKKyAgICAtMHgxLmM0NjNhYmVjY2IyYmJwMworICB9LAorICB7IC8vIEVudHJ5IDk1MQorICAgIDB4MS44MDBiYjE1ZmZlODBkZTViNTJhM2MwZTNiODQ3ZWVhYXAwLAorICAgIDB4MS5jNDYzYWJlY2NiMmJjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTIKKyAgICAtMHgxLjgwMGJiMTVmZmU4MGRlNWI1MmEzYzBlM2I4NDdlZWFhcDAsCisgICAgLTB4MS5jNDYzYWJlY2NiMmJjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTMKKyAgICAweDEuODBmZTg2YjEzMmU4Zjg2MThkZTA4Y2YzMzc5OTNjYTNwMCwKKyAgICAweDEuZGQ4NWE3NDEwZjU4YnAzCisgIH0sCisgIHsgLy8gRW50cnkgOTU0CisgICAgLTB4MS44MGZlODZiMTMyZThmODYxOGRlMDhjZjMzNzk5M2NhM3AwLAorICAgIC0weDEuZGQ4NWE3NDEwZjU4YnAzCisgIH0sCisgIHsgLy8gRW50cnkgOTU1CisgICAgMHgxLjgwZmU4NmIxMzJlOGY4ZjQwYzE5ZDA5ZTQ4OWQzOGUxcDAsCisgICAgMHgxLmRkODVhNzQxMGY1OGNwMworICB9LAorICB7IC8vIEVudHJ5IDk1NgorICAgIC0weDEuODBmZTg2YjEzMmU4ZjhmNDBjMTlkMDllNDg5ZDM4ZTFwMCwKKyAgICAtMHgxLmRkODVhNzQxMGY1OGNwMworICB9LAorICB7IC8vIEVudHJ5IDk1NworICAgIDB4MS44MGZlODZiMTMyZThmOTg2OGE1MzE0NDk1OTk3NmYzY3AwLAorICAgIDB4MS5kZDg1YTc0MTBmNThkcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTgKKyAgICAtMHgxLjgwZmU4NmIxMzJlOGY5ODY4YTUzMTQ0OTU5OTc2ZjNjcDAsCisgICAgLTB4MS5kZDg1YTc0MTBmNThkcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTkKKyAgICAweDEuODFkOTJkZWYyNWYyNTcxOGM2ODI5YTA2M2ZiODFmZDdwMCwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZHAzCisgIH0sCisgIHsgLy8gRW50cnkgOTYwCisgICAgLTB4MS44MWQ5MmRlZjI1ZjI1NzE4YzY4MjlhMDYzZmI4MWZkN3AwLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZHAzCisgIH0sCisgIHsgLy8gRW50cnkgOTYxCisgICAgMHgxLjgxZDkyZGVmMjVmMjU3OWQwYjA2YmQ1NWU1ZGQxMGQxcDAsCisgICAgMHgxLmY2YTdhMjk1NTM4NWVwMworICB9LAorICB7IC8vIEVudHJ5IDk2MgorICAgIC0weDEuODFkOTJkZWYyNWYyNTc5ZDBiMDZiZDU1ZTVkZDEwZDFwMCwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWVwMworICB9LAorICB7IC8vIEVudHJ5IDk2MworICAgIDB4MS44MWQ5MmRlZjI1ZjI1ODIxNGY4YWUwYTU4YmY5OWVkZXAwLAorICAgIDB4MS5mNmE3YTI5NTUzODVmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjQKKyAgICAtMHgxLjgxZDkyZGVmMjVmMjU4MjE0ZjhhZTBhNThiZjk5ZWRlcDAsCisgICAgLTB4MS5mNmE3YTI5NTUzODVmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjUKKyAgICAweDEuODI5ZjE2YmI3ZDk1MTA4YzBlYjIxMjM4YTBjNTNmNWVwMCwKKyAgICAweDEuMDdlNGNlZjRjYmQ5NnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTY2CisgICAgLTB4MS44MjlmMTZiYjdkOTUxMDhjMGViMjEyMzhhMGM1M2Y1ZXAwLAorICAgIC0weDEuMDdlNGNlZjRjYmQ5NnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTY3CisgICAgMHgxLjgyOWYxNmJiN2Q5NTExN2MxNmJhNjQ4ZjM0ODZkNzE4cDAsCisgICAgMHgxLjA3ZTRjZWY0Y2JkOTdwNAorICB9LAorICB7IC8vIEVudHJ5IDk2OAorICAgIC0weDEuODI5ZjE2YmI3ZDk1MTE3YzE2YmE2NDhmMzQ4NmQ3MThwMCwKKyAgICAtMHgxLjA3ZTRjZWY0Y2JkOTdwNAorICB9LAorICB7IC8vIEVudHJ5IDk2OQorICAgIDB4MS44MjlmMTZiYjdkOTUxMjZjMWVjMmI2ZTVjODJiNmVkZXAwLAorICAgIDB4MS4wN2U0Y2VmNGNiZDk4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzAKKyAgICAtMHgxLjgyOWYxNmJiN2Q5NTEyNmMxZWMyYjZlNWM4MmI2ZWRlcDAsCisgICAgLTB4MS4wN2U0Y2VmNGNiZDk4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzEKKyAgICAweDEuODM1MzExYzRmYTVkN2MzN2M1NTdiN2E1YTMzMzgzMjRwMCwKKyAgICAweDEuMTQ3NWNjOWVlZGVmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTcyCisgICAgLTB4MS44MzUzMTFjNGZhNWQ3YzM3YzU1N2I3YTVhMzMzODMyNHAwLAorICAgIC0weDEuMTQ3NWNjOWVlZGVmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTczCisgICAgMHgxLjgzNTMxMWM0ZmE1ZDdkMTI4YzVmYTA5Y2M5MjI0ODNkcDAsCisgICAgMHgxLjE0NzVjYzllZWRmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzQKKyAgICAtMHgxLjgzNTMxMWM0ZmE1ZDdkMTI4YzVmYTA5Y2M5MjI0ODNkcDAsCisgICAgLTB4MS4xNDc1Y2M5ZWVkZnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTc1CisgICAgMHgxLjgzNTMxMWM0ZmE1ZDdkZWQ1MzY3ODk5M2VlZjdkMDM3cDAsCisgICAgMHgxLjE0NzVjYzllZWRmMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDk3NgorICAgIC0weDEuODM1MzExYzRmYTVkN2RlZDUzNjc4OTkzZWVmN2QwMzdwMCwKKyAgICAtMHgxLjE0NzVjYzllZWRmMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDk3NworICAgIDB4MS44M2Y3NzMxODI1ZGM5ZDhmZjU3MzcwOTNiYjM1NDBkZXAwLAorICAgIDB4MS4yMTA2Y2E0OTEwMDY4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzgKKyAgICAtMHgxLjgzZjc3MzE4MjVkYzlkOGZmNTczNzA5M2JiMzU0MGRlcDAsCisgICAgLTB4MS4yMTA2Y2E0OTEwMDY4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzkKKyAgICAweDEuODNmNzczMTgyNWRjOWU1ODJlYmMwMjA5NzhlZTFhOTVwMCwKKyAgICAweDEuMjEwNmNhNDkxMDA2OXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTgwCisgICAgLTB4MS44M2Y3NzMxODI1ZGM5ZTU4MmViYzAyMDk3OGVlMWE5NXAwLAorICAgIC0weDEuMjEwNmNhNDkxMDA2OXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTgxCisgICAgMHgxLjgzZjc3MzE4MjVkYzlmMjA2ODA0OTM3ZjM2OTBkYTlicDAsCisgICAgMHgxLjIxMDZjYTQ5MTAwNmFwNAorICB9LAorICB7IC8vIEVudHJ5IDk4MgorICAgIC0weDEuODNmNzczMTgyNWRjOWYyMDY4MDQ5MzdmMzY5MGRhOWJwMCwKKyAgICAtMHgxLjIxMDZjYTQ5MTAwNmFwNAorICB9LAorICB7IC8vIEVudHJ5IDk4MworICAgIDB4MS44NDhlMmJlYzc5OWVjZTQ4MjMwZWE5YjRkZTYwY2ZiN3AwLAorICAgIDB4MS4yZDk3YzdmMzMyMWQxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODQKKyAgICAtMHgxLjg0OGUyYmVjNzk5ZWNlNDgyMzBlYTliNGRlNjBjZmI3cDAsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODUKKyAgICAweDEuODQ4ZTJiZWM3OTllY2YwMDExYTA4ZTkzYmZjYmY2YmFwMCwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTg2CisgICAgLTB4MS44NDhlMmJlYzc5OWVjZjAwMTFhMDhlOTNiZmNiZjZiYXAwLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTg3CisgICAgMHgxLjg0OGUyYmVjNzk5ZWNmYjgwMDMyNzM3MmExMjNhN2I3cDAsCisgICAgMHgxLjJkOTdjN2YzMzIxZDNwNAorICB9LAorICB7IC8vIEVudHJ5IDk4OAorICAgIC0weDEuODQ4ZTJiZWM3OTllY2ZiODAwMzI3MzcyYTEyM2E3YjdwMCwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDNwNAorICB9LAorICB7IC8vIEVudHJ5IDk4OQorICAgIDB4MS44NTE4ZGU0YjQ4ZTc2ZTQxMWVhMWNkZWViNTljYmY3N3AwLAorICAgIDB4MS4zYTI4YzU5ZDU0MzM5cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTAKKyAgICAtMHgxLjg1MThkZTRiNDhlNzZlNDExZWExY2RlZWI1OWNiZjc3cDAsCisgICAgLTB4MS4zYTI4YzU5ZDU0MzM5cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTEKKyAgICAweDEuODUxOGRlNGI0OGU3NmVlYWFiMmE1OGFiNzM5YzMwY2JwMCwKKyAgICAweDEuM2EyOGM1OWQ1NDMzYXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTkyCisgICAgLTB4MS44NTE4ZGU0YjQ4ZTc2ZWVhYWIyYTU4YWI3MzljMzBjYnAwLAorICAgIC0weDEuM2EyOGM1OWQ1NDMzYXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTkzCisgICAgMHgxLjg1MThkZTRiNDhlNzZmOTQzN2IyZTM2ODMxOGE2ODY5cDAsCisgICAgMHgxLjNhMjhjNTlkNTQzM2JwNAorICB9LAorICB7IC8vIEVudHJ5IDk5NAorICAgIC0weDEuODUxOGRlNGI0OGU3NmY5NDM3YjJlMzY4MzE4YTY4NjlwMCwKKyAgICAtMHgxLjNhMjhjNTlkNTQzM2JwNAorICB9LAorICB7IC8vIEVudHJ5IDk5NQorICAgIDB4MS44NTk4ZWMzNTE2NzEyN2NlMjAzZDI5Y2NlNjZiNjg1YnAwLAorICAgIDB4MS40NmI5YzM0Nzc2NGEycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTYKKyAgICAtMHgxLjg1OThlYzM1MTY3MTI3Y2UyMDNkMjljY2U2NmI2ODVicDAsCisgICAgLTB4MS40NmI5YzM0Nzc2NGEycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTcKKyAgICAweDEuODU5OGVjMzUxNjcxMjg2YWVhMDEwYTdjZjE1MzA0YTRwMCwKKyAgICAweDEuNDZiOWMzNDc3NjRhM3A0CisgIH0sCisgIHsgLy8gRW50cnkgOTk4CisgICAgLTB4MS44NTk4ZWMzNTE2NzEyODZhZWEwMTBhN2NmMTUzMDRhNHAwLAorICAgIC0weDEuNDZiOWMzNDc3NjRhM3A0CisgIH0sCisgIHsgLy8gRW50cnkgOTk5CisgICAgMHgxLjg1OThlYzM1MTY3MTI5MDdiM2M0ZWIyY2ZjMmI0ZjJkcDAsCisgICAgMHgxLjQ2YjljMzQ3NzY0YTRwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMDAKKyAgICAtMHgxLjg1OThlYzM1MTY3MTI5MDdiM2M0ZWIyY2ZjMmI0ZjJkcDAsCisgICAgLTB4MS40NmI5YzM0Nzc2NGE0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAxCisgICAgMHgxLjg2MGY4MzZlNTljZjUzM2E1ZjVhY2Q5NzdmYjNiZDFicDAsCisgICAgMHgxLjUzNGFjMGYxOTg2MGJwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMDIKKyAgICAtMHgxLjg2MGY4MzZlNTljZjUzM2E1ZjVhY2Q5NzdmYjNiZDFicDAsCisgICAgLTB4MS41MzRhYzBmMTk4NjBicDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAzCisgICAgMHgxLjg2MGY4MzZlNTljZjUzY2JjOTdjNGUzMjc4NzRmZTNmcDAsCisgICAgMHgxLjUzNGFjMGYxOTg2MGNwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMDQKKyAgICAtMHgxLjg2MGY4MzZlNTljZjUzY2JjOTdjNGUzMjc4NzRmZTNmcDAsCisgICAgLTB4MS41MzRhYzBmMTk4NjBjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA1CisgICAgMHgxLjg2MGY4MzZlNTljZjU0NWQzMzlkY2VjZDcxMjg5MDNhcDAsCisgICAgMHgxLjUzNGFjMGYxOTg2MGRwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMDYKKyAgICAtMHgxLjg2MGY4MzZlNTljZjU0NWQzMzlkY2VjZDcxMjg5MDNhcDAsCisgICAgLTB4MS41MzRhYzBmMTk4NjBkcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA3CisgICAgMHgxLjg2N2RhNmM4N2I1N2U4YWRmODk5MDAxNGFlNmMwMTJmcDAsCisgICAgMHgxLjVmZGJiZTliYmE3NzRwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMDgKKyAgICAtMHgxLjg2N2RhNmM4N2I1N2U4YWRmODk5MDAxNGFlNmMwMTJmcDAsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA5CisgICAgMHgxLjg2N2RhNmM4N2I1N2U5MzUzNDk3MjRlMGNjMzdiMzExcDAsCisgICAgMHgxLjVmZGJiZTliYmE3NzVwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMTAKKyAgICAtMHgxLjg2N2RhNmM4N2I1N2U5MzUzNDk3MjRlMGNjMzdiMzExcDAsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc1cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDExCisgICAgMHgxLjg2N2RhNmM4N2I1N2U5YmM3MDk1NDlhY2U5ZjcxZWU5cDAsCisgICAgMHgxLjVmZGJiZTliYmE3NzZwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMTIKKyAgICAtMHgxLjg2N2RhNmM4N2I1N2U5YmM3MDk1NDlhY2U5ZjcxZWU5cDAsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEzCisgICAgMHgxLjg2ZTQzNTgxODE1MWI4NGZlMjU4MzRjMTlhN2UyZTVmcDAsCisgICAgMHgxLjZjNmNiYzQ1ZGM4ZGNwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMTQKKyAgICAtMHgxLjg2ZTQzNTgxODE1MWI4NGZlMjU4MzRjMTlhN2UyZTVmcDAsCisgICAgLTB4MS42YzZjYmM0NWRjOGRjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE1CisgICAgMHgxLjg2ZTQzNTgxODE1MWI4Y2RmODZlNjM0NWY1OGM2OWZhcDAsCisgICAgMHgxLjZjNmNiYzQ1ZGM4ZGRwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMTYKKyAgICAtMHgxLjg2ZTQzNTgxODE1MWI4Y2RmODZlNjM0NWY1OGM2OWZhcDAsCisgICAgLTB4MS42YzZjYmM0NWRjOGRkcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE3CisgICAgMHgxLjg2ZTQzNTgxODE1MWI5NGMwZTg0OTFjYTUwOGY5OGI1cDAsCisgICAgMHgxLjZjNmNiYzQ1ZGM4ZGVwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMTgKKyAgICAtMHgxLjg2ZTQzNTgxODE1MWI5NGMwZTg0OTFjYTUwOGY5OGI1cDAsCisgICAgLTB4MS42YzZjYmM0NWRjOGRlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE5CisgICAgMHgxLjg3NDNmMTJiZjlmYzkyYTdmNjVkZThkNmNkM2RmNTlkcDAsCisgICAgMHgxLjc4ZmRiOWVmZmVhNDVwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMjAKKyAgICAtMHgxLjg3NDNmMTJiZjlmYzkyYTdmNjVkZThkNmNkM2RmNTlkcDAsCisgICAgLTB4MS43OGZkYjllZmZlYTQ1cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIxCisgICAgMHgxLjg3NDNmMTJiZjlmYzkzMWRjYzQwMGU0NWYxY2JmZDE4cDAsCisgICAgMHgxLjc4ZmRiOWVmZmVhNDZwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMjIKKyAgICAtMHgxLjg3NDNmMTJiZjlmYzkzMWRjYzQwMGU0NWYxY2JmZDE4cDAsCisgICAgLTB4MS43OGZkYjllZmZlYTQ2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIzCisgICAgMHgxLjg3NDNmMTJiZjlmYzkzOTNhMjIyMzNiNTE2NTAwODlmcDAsCisgICAgMHgxLjc4ZmRiOWVmZmVhNDdwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMjQKKyAgICAtMHgxLjg3NDNmMTJiZjlmYzkzOTNhMjIyMzNiNTE2NTAwODlmcDAsCisgICAgLTB4MS43OGZkYjllZmZlYTQ3cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI1CisgICAgMHgxLjg3OWQ4MjczOGNkYjA3MTVjN2U1MDkwN2U3YTg3YzgwcDAsCisgICAgMHgxLjg1OGViNzlhMjBiYWVwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMjYKKyAgICAtMHgxLjg3OWQ4MjczOGNkYjA3MTVjN2U1MDkwN2U3YTg3YzgwcDAsCisgICAgLTB4MS44NThlYjc5YTIwYmFlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI3CisgICAgMHgxLjg3OWQ4MjczOGNkYjA3ODQyNjM0ZjE4N2ViNzdkZGRjcDAsCisgICAgMHgxLjg1OGViNzlhMjBiYWZwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMjgKKyAgICAtMHgxLjg3OWQ4MjczOGNkYjA3ODQyNjM0ZjE4N2ViNzdkZGRjcDAsCisgICAgLTB4MS44NThlYjc5YTIwYmFmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI5CisgICAgMHgxLjg3OWQ4MjczOGNkYjA3ZjI4NDg0ZGEwN2VmM2UzMjMwcDAsCisgICAgMHgxLjg1OGViNzlhMjBiYjBwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMzAKKyAgICAtMHgxLjg3OWQ4MjczOGNkYjA3ZjI4NDg0ZGEwN2VmM2UzMjMwcDAsCisgICAgLTB4MS44NThlYjc5YTIwYmIwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njc4OThjYzUxNzAxYjgyOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMyCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY3ODk4Y2M1MTcwMWI4MjlhMnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2MgorICB9LAorICB7IC8vIEVudHJ5IDEwMzMKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2Nzg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuMHA2MworICB9LAorICB7IC8vIEVudHJ5IDEwMzQKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njc4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTAzNQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY3ODk4Y2M1MTcwMWI4NTlhMnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTAzNgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2Nzg5OGNjNTE3MDFiODU5YTJwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM3CisgICAgMHgxLjkyMWZiNTI0NDJkMTg0Njk4OThiZWZjMWFjNjJlNDRjcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM4CisgICAgLTB4MS45MjFmYjUyNDQyZDE4NDY5ODk4YmVmYzFhYzYyZTQ0Y3AwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyNgorICB9LAorICB7IC8vIEVudHJ5IDEwMzkKKyAgICAweDEuOTIxZmI1MjQ0MmQxODQ2OTg5OGNlZmMxYWM2MmU0NGNwMCwKKyAgICAweDEuMHAyNworICB9LAorICB7IC8vIEVudHJ5IDEwNDAKKyAgICAtMHgxLjkyMWZiNTI0NDJkMTg0Njk4OThjZWZjMWFjNjJlNDRjcDAsCisgICAgLTB4MS4wcDI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA0MQorICAgIDB4MS45MjFmYjUyNDQyZDE4NDY5ODk4ZWVmYzFhYzYyZTQ0Y3AwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA0MgorICAgIC0weDEuOTIxZmI1MjQ0MmQxODQ2OTg5OGVlZmMxYWM2MmU0NGNwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQzCisgICAgMHgxLjkyMWZiNDQ0NDJkMTg0Njk4OWRhMWE2YzU3MGQ4ZWNjcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ0CisgICAgLTB4MS45MjFmYjQ0NDQyZDE4NDY5ODlkYTFhNmM1NzBkOGVjY3AwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyMworICB9LAorICB7IC8vIEVudHJ5IDEwNDUKKyAgICAweDEuOTIxZmI0NDQ0MmQxODQ2OTg5ZTIxYTZjNTcwZDhlYzRwMCwKKyAgICAweDEuMHAyNAorICB9LAorICB7IC8vIEVudHJ5IDEwNDYKKyAgICAtMHgxLjkyMWZiNDQ0NDJkMTg0Njk4OWUyMWE2YzU3MGQ4ZWM0cDAsCisgICAgLTB4MS4wcDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTA0NworICAgIDB4MS45MjFmYjQ0NDQyZDE4NDY5ODlmMjFhNmM1NzBkOGViM3AwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTA0OAorICAgIC0weDEuOTIxZmI0NDQ0MmQxODQ2OTg5ZjIxYTZjNTcwZDhlYjNwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ5CisgICAgMHgxLjUzNjhjOTUxZTljZmM3YzI0YzM4ZmI3N2ExZGZhNTdjcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDEwNTAKKyAgICAtMHgxLjUzNjhjOTUxZTljZmM3YzI0YzM4ZmI3N2ExZGZhNTdjcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUxCisgICAgMHgxLjUzNjhjOTUxZTljZmM5YTQyZTFhZGQ1OTgzY2ZiM2E4cDAsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDEwNTIKKyAgICAtMHgxLjUzNjhjOTUxZTljZmM5YTQyZTFhZGQ1OTgzY2ZiM2E4cDAsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUzCisgICAgMHgxLjUzNjhjOTUxZTljZmNkNjdmMWRlYTExZDQ3NWFjNjQzcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDEwNTQKKyAgICAtMHgxLjUzNjhjOTUxZTljZmNkNjdmMWRlYTExZDQ3NWFjNjQzcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU1CisgICAgMHgxLjFiNmUxOTJlYmJlNDQzOTM5ZTY3NmVlZDcwNTM0NTBjcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNTYKKyAgICAtMHgxLjFiNmUxOTJlYmJlNDQzOTM5ZTY3NmVlZDcwNTM0NTBjcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU3CisgICAgMHgxLjFiNmUxOTJlYmJlNDQ2YzZkMTlhYTIyMGEzOWFmMzIwcDAsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDEwNTgKKyAgICAtMHgxLjFiNmUxOTJlYmJlNDQ2YzZkMTlhYTIyMGEzOWFmMzIwcDAsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU5CisgICAgMHgxLjFiNmUxOTJlYmJlNDRkMmQzODAxMDg4NzA5YWY2ZTAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDEwNjAKKyAgICAtMHgxLjFiNmUxOTJlYmJlNDRkMmQzODAxMDg4NzA5YWY2ZTAxcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdjNjk4OThjYzUxNzAxOTgzOWEycC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MgorICAgIC0weDEuOTIxZmI1NDQ0MmQxN2M2OTg5OGNjNTE3MDE5ODM5YTJwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2NAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY1CisgICAgMHgxLjkyMWZiNTQ0NDJkMTk0Njk4OThjYzUxNzAxMzgzOWEycC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY2CisgICAgLTB4MS45MjFmYjU0NDQyZDE5NDY5ODk4Y2M1MTcwMTM4MzlhMnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNjcKKyAgICAweDEuZGFjNjcwNTYxYmI0ZTliZTEyZmJiZjBjYWI5M2QyNThwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY4CisgICAgLTB4MS5kYWM2NzA1NjFiYjRlOWJlMTJmYmJmMGNhYjkzZDI1OHAtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY5CisgICAgMHgxLmRhYzY3MDU2MWJiNGY2OGFkZmM4OGJkOTc4NzUxYTA2cC0yLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA3MAorICAgIC0weDEuZGFjNjcwNTYxYmI0ZjY4YWRmYzg4YmQ5Nzg3NTFhMDZwLTIsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA3MQorICAgIDB4MS5kYWM2NzA1NjFiYjUxMDI0Nzk2MjI1NzMxMWJjYzgxYnAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNzIKKyAgICAtMHgxLmRhYzY3MDU2MWJiNTEwMjQ3OTYyMjU3MzExYmNjODFicC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNzMKKyAgICAweDEuZjViNzVmOTJjODBkYzcxYmNjODAyZWRjZTAyZTBhOTdwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc0CisgICAgLTB4MS5mNWI3NWY5MmM4MGRjNzFiY2M4MDJlZGNlMDJlMGE5N3AtMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc1CisgICAgMHgxLmY1Yjc1ZjkyYzgwZGQ2MmFkYjhmM2RlYmVmNDQyZmNicC0zLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTA3NgorICAgIC0weDEuZjViNzVmOTJjODBkZDYyYWRiOGYzZGViZWY0NDJmY2JwLTMsCisgICAgLTB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTA3NworICAgIDB4MS5mNWI3NWY5MmM4MGRmNDQ4ZjlhZDVjMGEwZDQ1ZjU1NHAtMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwNzgKKyAgICAtMHgxLmY1Yjc1ZjkyYzgwZGY0NDhmOWFkNWMwYTBkNDVmNTU0cC0zLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwNzkKKyAgICAweDEuZmQ1YmE5YWFjMmY2Y2NhNDk1MWY3MDQyNmQ0ZTMxODFwLTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgwCisgICAgLTB4MS5mZDViYTlhYWMyZjZjY2E0OTUxZjcwNDI2ZDRlMzE4MXAtNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgxCisgICAgMHgxLmZkNWJhOWFhYzJmNmRjNjU5MTJmMzEzZTdkMTExZGVmcC00LAorICAgIDB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA4MgorICAgIC0weDEuZmQ1YmE5YWFjMmY2ZGM2NTkxMmYzMTNlN2QxMTFkZWZwLTQsCisgICAgLTB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA4MworICAgIDB4MS5mZDViYTlhYWMyZjZmYmU3ODk0ZWIzMzY5YzhiNTQ5NnAtNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDEwODQKKyAgICAtMHgxLmZkNWJhOWFhYzJmNmZiZTc4OTRlYjMzNjljOGI1NDk2cC00LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDEwODUKKyAgICAweDEuZmY1NWJiNzJjZmRlOGM3ZDg2NWYxNWM4MGM2YjhiYjBwLTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg2CisgICAgLTB4MS5mZjU1YmI3MmNmZGU4YzdkODY1ZjE1YzgwYzZiOGJiMHAtNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg3CisgICAgMHgxLmZmNTViYjcyY2ZkZTljNmQ5NjRmMjViODFjNWMxYWEycC01LAorICAgIDB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA4OAorICAgIC0weDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgLTB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA4OQorICAgIDB4MS5mZjU1YmI3MmNmZGViYzRkYjYyZjQ1OTgzYzNhM2U3Y3AtNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwOTAKKyAgICAtMHgxLmZmNTViYjcyY2ZkZWJjNGRiNjJmNDU5ODNjM2EzZTdjcC01LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwOTEKKyAgICAweDEuZmZkNTViYmE5NzYyM2E4OGVlM2IyZWNiYjkxN2E0NzZwLTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkyCisgICAgLTB4MS5mZmQ1NWJiYTk3NjIzYTg4ZWUzYjJlY2JiOTE3YTQ3NnAtNiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkzCisgICAgMHgxLmZmZDU1YmJhOTc2MjRhODRlZjNhZWVkYmI1MThjNDI3cC02LAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA5NAorICAgIC0weDEuZmZkNTViYmE5NzYyNGE4NGVmM2FlZWRiYjUxOGM0MjdwLTYsCisgICAgLTB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA5NQorICAgIDB4MS5mZmQ1NWJiYTk3NjI2YTdjZjEzYTZlZmJhZDFhNDNlN3AtNiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwOTYKKyAgICAtMHgxLmZmZDU1YmJhOTc2MjZhN2NmMTNhNmVmYmFkMWE0M2U3cC02LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwOTcKKyAgICAweDEuZmZmNTU1YmJiNzI5OWI3OGNmMDhhZDgwMWJlZmI4ODFwLTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDk4CisgICAgLTB4MS5mZmY1NTViYmI3Mjk5Yjc4Y2YwOGFkODAxYmVmYjg4MXAtNywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDk5CisgICAgMHgxLmZmZjU1NWJiYjcyOWFiNzdjZjE4YWM4MDJiZWVjMDkwcC03LAorICAgIDB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTEwMAorICAgIC0weDEuZmZmNTU1YmJiNzI5YWI3N2NmMThhYzgwMmJlZWMwOTBwLTcsCisgICAgLTB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTEwMQorICAgIDB4MS5mZmY1NTViYmI3MjljYjc1Y2YzOGFhODA0YmVjYTBiNHAtNywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDExMDIKKyAgICAtMHgxLmZmZjU1NWJiYjcyOWNiNzVjZjM4YWE4MDRiZWNhMGI0cC03LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDExMDMKKyAgICAweDEuZmZmZmZmZjU1NTU1NDViYmJiYmNiNzI5NzI4NzYyNTZwLTE1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDExMDQKKyAgICAtMHgxLmZmZmZmZmY1NTU1NTQ1YmJiYmJjYjcyOTcyODc2MjU2cC0xNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgMTEwNQorICAgIDB4MS5mZmZmZmZmNTU1NTU1NWJiYmJiYmI3Mjk3Mjk3NjI1NnAtMTUsCisgICAgMHgxLjBwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTEwNgorICAgIC0weDEuZmZmZmZmZjU1NTU1NTViYmJiYmJiNzI5NzI5NzYyNTZwLTE1LAorICAgIC0weDEuMHAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTA3CisgICAgMHgxLmZmZmZmZmY1NTU1NTc1YmJiYmI5YjcyOTcyYjc2MjU2cC0xNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTA4CisgICAgLTB4MS5mZmZmZmZmNTU1NTU3NWJiYmJiOWI3Mjk3MmI3NjI1NnAtMTUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDExMDkKKyAgICAweDEuZmZmZmZmZmZmZmZmZWQ1NTU1NTU1NTU1NTU5YmJiYmJwLTI4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yOAorICB9LAorICB7IC8vIEVudHJ5IDExMTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVkNTU1NTU1NTU1NTU1OWJiYmJicC0yOCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMTExMQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZDU1NTU1NTU1NTU1NTViYmJiYnAtMjgsCisgICAgMHgxLjBwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTExMgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmQ1NTU1NTU1NTU1NTU1YmJiYmJwLTI4LAorICAgIC0weDEuMHAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEzCisgICAgMHgxLjAwMDAwMDAwMDAwMDBlYWFhYWFhYWFhYWFhNmRkZGRkcC0yNywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTE0CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwZWFhYWFhYWFhYWFhYTZkZGRkZHAtMjcsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yNworICB9LAorICB7IC8vIEVudHJ5IDExMTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmNTU1NTU1NTU1NTU1NjU1YmJwLTMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDExMTYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZjU1NTU1NTU1NTU1NTY1NWJicC0zMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMTExNworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTViYnAtMzEsCisgICAgMHgxLjBwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMTExOAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmNTU1NTU1NTU1NTU1NTU1YmJwLTMxLAorICAgIC0weDEuMHAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTE5CisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmFhYWFhYWFhYWFhYTlhYWRkcC0zMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIwCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwZmZhYWFhYWFhYWFhYWE5YWFkZHAtMzAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDExMjEKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIyCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExMjMKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTEyNAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExMjUKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDExMjYKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTEyNworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI4CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTEyOQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMwCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTEzMQorICAgIDB4MS40MzNiOGEzMjJkZGQyOTYxODE2OGEyMWM5NjJjNjhiY3AwLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMyCisgICAgLTB4MS40MzNiOGEzMjJkZGQyOTYxODE2OGEyMWM5NjJjNjhiY3AwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTEzMworICAgIDB4MS4wMGZlOTg3ZWQwMmZmMjMzNzdkOTllYzM2ZGI1MzNmZXAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTM0CisgICAgLTB4MS4wMGZlOTg3ZWQwMmZmMjMzNzdkOTllYzM2ZGI1MzNmZXAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEzNQorICAgIDB4MS45MjFmYjU0NDQyZDE5NDY5ODk4Y2M1MTcwMTM4MzlhMnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEzNgorICAgIC0weDEuOTIxZmI1NDQ0MmQxOTQ2OTg5OGNjNTE3MDEzODM5YTJwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTM3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTM4CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDExMzkKKyAgICAweDEuOTIxZmI1NDQ0MmQxN2M2OTg5OGNjNTE3MDE5ODM5YTJwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQwCisgICAgLTB4MS45MjFmYjU0NDQyZDE3YzY5ODk4Y2M1MTcwMTk4MzlhMnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQxCisgICAgMHgxLjU0ZTA0YzA1ZDA2YTA0MDQxY2NmMzBmMDAxMTBjMGY2cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE0MgorICAgIC0weDEuNTRlMDRjMDVkMDZhMDQwNDFjY2YzMGYwMDExMGMwZjZwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE0MworICAgIDB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDExNDQKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDExNDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ3CisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTE0OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTE0OQorICAgIDB4MS5mZmZmZmZmZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExNTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExNTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwNzQsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUzCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTE1NAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTE1NQorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTU2CisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvYXRhbmZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2F0YW5mX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NWY5OTYyCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2F0YW5mX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDQzNTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfYXRhbmZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMHgxLmRjMmM5ODAwOGQ1MzVjNTE3ZGQ5ZDM3MWM0NGE2MTUxcC0yLAorICAgIC0weDEuMDBlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuZGMyYzk4MDA4ZDUzNWM1MTdkZDlkMzcxYzQ0YTYxNTFwLTIsCisgICAgMHgxLjAwZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS45M2Q2M2JmY2U0NjdlZjEyNzQ1YmNhZjE2NGM5ODhjZHAtMSwKKyAgICAtMHgxLjAxYjhwMAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuOTNkNjNiZmNlNDY3ZWYxMjc0NWJjYWYxNjRjOTg4Y2RwLTEsCisgICAgMHgxLjAxYjhwMAorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMHgxLjkzZTZiY2ZjYmYyODY4YmYzZDIyN2FkNTJjYzA2Nzc1cC0xLAorICAgIC0weDEuMDFjODllcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLjkzZTZiY2ZjYmYyODY4YmYzZDIyN2FkNTJjYzA2Nzc1cC0xLAorICAgIDB4MS4wMWM4OWVwMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAtMHgxLmU0MzUzZjAwNDQ4MWE2OWUwZDk3MTM2Y2Q4MzAyNTA4cC0yLAorICAgIC0weDEuMDVlYzQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS5lNDM1M2YwMDQ0ODFhNjllMGQ5NzEzNmNkODMwMjUwOHAtMiwKKyAgICAweDEuMDVlYzQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIC0weDEuOTgwZGQ5NDJjNTg5MzFjY2ZhODhhYTU3MTRkOTU4OWJwLTEsCisgICAgLTB4MS4wNnAwCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS45ODBkZDk0MmM1ODkzMWNjZmE4OGFhNTcxNGQ5NTg5YnAtMSwKKyAgICAweDEuMDZwMAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgLTB4MS5lNGU3MDUwMDQxZmVhNWU0NzRiYzQyYmIzZTk1OThlZHAtMiwKKyAgICAtMHgxLjA2NWM3OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLmU0ZTcwNTAwNDFmZWE1ZTQ3NGJjNDJiYjNlOTU5OGVkcC0yLAorICAgIDB4MS4wNjVjNzhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIC0weDEuZmQwOGRhZmZlMjkwZTgwNjc3NWY4ZGY0ZWQ2MzMzMWZwLTIsCisgICAgLTB4MS4xNWM4ZTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5mZDA4ZGFmZmUyOTBlODA2Nzc1ZjhkZjRlZDYzMzMxZnAtMiwKKyAgICAweDEuMTVjOGUycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAtMHgxLjEyZDA5MTAwMDBhY2QzNzk2MDQzY2UzOTdkYzBhYWYwcC0xLAorICAgIC0weDEuMzBhNjEycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuMTJkMDkxMDAwMGFjZDM3OTYwNDNjZTM5N2RjMGFhZjBwLTEsCisgICAgMHgxLjMwYTYxMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgLTB4MS44NTAxZGVmYzQwYTk0YmQ2OWEzMjZmNmY0ZWZjM2NhYnAwLAorICAgIC0weDEuMzgwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuODUwMWRlZmM0MGE5NGJkNjlhMzI2ZjZmNGVmYzNjYWJwMCwKKyAgICAweDEuMzgwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAtMHgxLjFkYmZkYjAwMmFhZmEzNGQ1NmQ0ZWZkZWI4NzVkN2NjcC0xLAorICAgIC0weDEuM2ZhNWQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuMWRiZmRiMDAyYWFmYTM0ZDU2ZDRlZmRlYjg3NWQ3Y2NwLTEsCisgICAgMHgxLjNmYTVkMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgLTB4MS45MWM3ZjZmZmZmZjZhNWVlZjU4ZDMyYTIwY2I3NjU4NnAwLAorICAgIC0weDEuNzU3M2ZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS45MWM3ZjZmZmZmZjZhNWVlZjU4ZDMyYTIwY2I3NjU4NnAwLAorICAgIDB4MS43NTczZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS5mMzFkMzViODEyNTlmNWY0NWJhZGM4Yjc3NDI0MWIxNXAtMSwKKyAgICAtMHgxLjc5NzQzZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuZjMxZDM1YjgxMjU5ZjVmNDViYWRjOGI3NzQyNDFiMTVwLTEsCisgICAgMHgxLjc5NzQzZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAtMHgxLmY1NGI3NmZmOGM4ZjQwMjBjY2M0ZGZiYTVmMWRjZmM0cC0xLAorICAgIC0weDEuN2NlZmM4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5mNTRiNzZmZjhjOGY0MDIwY2NjNGRmYmE1ZjFkY2ZjNHAtMSwKKyAgICAweDEuN2NlZmM4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIC0weDEuOTIxZmEyZmZlZmVhMWE0NzVmYzYzNjQzMzFlOThjMGZwMCwKKyAgICAtMHgxLmMwNzYzMHAxOQorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLjkyMWZhMmZmZWZlYTFhNDc1ZmM2MzY0MzMxZTk4YzBmcDAsCisgICAgMHgxLmMwNzYzMHAxOQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgLTB4MS5jOGQzN2NmZmY5NzMyYWFlNTY1ZTk2YzlhYjFhZTNwLTQsCisgICAgLTB4MS5jYWJhZDBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS5jOGQzN2NmZmY5NzMyYWFlNTY1ZTk2YzlhYjFhZTNwLTQsCisgICAgMHgxLmNhYmFkMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgLTB4MS44NDU1ODE2Y2Q4YjE3OTEwZDVmYjQyYzU0YTdhM2Y2YXAtMSwKKyAgICAtMHgxLmU1MjMyNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLjg0NTU4MTZjZDhiMTc5MTBkNWZiNDJjNTRhN2EzZjZhcC0xLAorICAgIDB4MS5lNTIzMjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIC0weDEuODdjZTZjYTM4ZjY2OTUxZjdkMTc2ZDI3ZTRjYzcxMTRwLTEsCisgICAgLTB4MS5lYmM1MThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS44N2NlNmNhMzhmNjY5NTFmN2QxNzZkMjdlNGNjNzExNHAtMSwKKyAgICAweDEuZWJjNTE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuZmZkNTViYmE5NzYyNGE4NGVmM2FlZWRiYjUxOGM0MjdwLTYsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgLTB4MS5mZmQ1NWJiYTk3NjI0YTg0ZWYzYWVlZGJiNTE4YzQyN3AtNiwKKyAgICAtMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLmZmNTViZjZlZDNkYTk4Nzk4MjY1Y2MzZjI3Yzg5NmM3cC01LAorICAgIDB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIC0weDEuZmY1NWJmNmVkM2RhOTg3OTgyNjVjYzNmMjdjODk2YzdwLTUsCisgICAgLTB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS5mZjU2MzJmYjQ3NGIyYmRmZjg1OWVlNjQyMWExMmQ0OHAtNSwKKyAgICAweDEuMDAwMDNjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAtMHgxLmZmNTYzMmZiNDc0YjJiZGZmODU5ZWU2NDIxYTEyZDQ4cC01LAorICAgIC0weDEuMDAwMDNjcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuOTIyMDY1NDQwNjUxOTI0NmRlZTIxODc1MGY2MTE4ZTBwLTEsCisgICAgMHgxLjAwMDBiMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAtMHgxLjkyMjA2NTQ0MDY1MTkyNDZkZWUyMTg3NTBmNjExOGUwcC0xLAorICAgIC0weDEuMDAwMGIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5mNWI4YzhmYzIxODU2OGQyNTQ4YzM5MGRlN2EzZGZjZXAtMywKKyAgICAweDEuMDAwMGMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAtMHgxLmY1YjhjOGZjMjE4NTY4ZDI1NDhjMzkwZGU3YTNkZmNlcC0zLAorICAgIC0weDEuMDAwMGMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuZmQ2NGQ0ZmNjZmZhZWVlZGJhOWM5NTY0YTY3MzBkMThwLTQsCisgICAgMHgxLjAwMDRhOHAtMworICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgLTB4MS5mZDY0ZDRmY2NmZmFlZWVkYmE5Yzk1NjRhNjczMGQxOHAtNCwKKyAgICAtMHgxLjAwMDRhOHAtMworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLjkyMjdiNTI0NDMyNmQ5YmVkODdiZGViMDA5MDhhZWI3cC0xLAorICAgIDB4MS4wMDA4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0weDEuOTIyN2I1MjQ0MzI2ZDliZWQ4N2JkZWIwMDkwOGFlYjdwLTEsCisgICAgLTB4MS4wMDA4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS45MjJiNzZmZjI0NWU2ZGU2MzQ1NTU5ZGRiMmZjZjUzNnAtMSwKKyAgICAweDEuMDAwYmMycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIC0weDEuOTIyYjc2ZmYyNDVlNmRlNjM0NTU1OWRkYjJmY2Y1MzZwLTEsCisgICAgLTB4MS4wMDBiYzJwMAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjkyMmI4MmZlOTcwMWFlYWZmYjczYTE0NDNjMGM4M2QwcC0xLAorICAgIDB4MS4wMDBiY2VwMAorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTB4MS45MjJiODJmZTk3MDFhZWFmZmI3M2ExNDQzYzBjODNkMHAtMSwKKyAgICAtMHgxLjAwMGJjZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuOTIzZmFmNDRkODE2ZGFhNTRkNDI1ZDgwNDVlMjg4N2RwLTEsCisgICAgMHgxLjAwMWZmY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLjkyM2ZhZjQ0ZDgxNmRhYTU0ZDQyNWQ4MDQ1ZTI4ODdkcC0xLAorICAgIC0weDEuMDAxZmZjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS5mZTI0ODRmZDMxZDNjZjA5ODIxOWEyYWYxZDk4NmVlZHAtNCwKKyAgICAweDEuMDA2NnAtMworICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgLTB4MS5mZTI0ODRmZDMxZDNjZjA5ODIxOWEyYWYxZDk4NmVlZHAtNCwKKyAgICAtMHgxLjAwNjZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS45MjkzOWIwMDNiMDY5YjNlMjc1OTUwYWY4MGNkNjNmY3AtMSwKKyAgICAweDEuMDA3NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLjkyOTM5YjAwM2IwNjliM2UyNzU5NTBhZjgwY2Q2M2ZjcC0xLAorICAgIC0weDEuMDA3NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuMWI5ZDNiMDAyMTU5ZTI5NDViNTk1ZGFiNjQ4OGRlNWJwMCwKKyAgICAweDEuMDA3NnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLjFiOWQzYjAwMjE1OWUyOTQ1YjU5NWRhYjY0ODhkZTVicDAsCisgICAgLTB4MS4wMDc2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS5kYzJjOTgwMDhkNTM1YzUxN2RkOWQzNzFjNDRhNjE1MXAtMiwKKyAgICAweDEuMDBlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgLTB4MS5kYzJjOTgwMDhkNTM1YzUxN2RkOWQzNzFjNDRhNjE1MXAtMiwKKyAgICAtMHgxLjAwZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS45M2Q2M2JmY2U0NjdlZjEyNzQ1YmNhZjE2NGM5ODhjZHAtMSwKKyAgICAweDEuMDFiOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLjkzZDYzYmZjZTQ2N2VmMTI3NDViY2FmMTY0Yzk4OGNkcC0xLAorICAgIC0weDEuMDFiOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuOTQxNjdlZmNjYmMwZmE2ZDQ1NzdmNjlmNjFlMDMxZDJwLTEsCisgICAgMHgxLjAxZjhiYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAtMHgxLjk0MTY3ZWZjY2JjMGZhNmQ0NTc3ZjY5ZjYxZTAzMWQycC0xLAorICAgIC0weDEuMDFmOGJhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS45NjcyNDI4YWJhZDRjZWQzZDBhNmUzNDllOWJmMmIzZXAtMSwKKyAgICAweDEuMDQ1Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLjk2NzI0MjhhYmFkNGNlZDNkMGE2ZTM0OWU5YmYyYjNlcC0xLAorICAgIC0weDEuMDQ1Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuZmU4YWJlZmYwZDg1N2FkZWE3MzVlMDdjZGMyNWY0NWNwLTMsCisgICAgMHgxLjA0YjE5OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5mZThhYmVmZjBkODU3YWRlYTczNWUwN2NkYzI1ZjQ1Y3AtMywKKyAgICAtMHgxLjA0YjE5OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMHgxLmUzZWU5OTAwMzYzMmFjYmQ2MzAxOGRjZDk5OGIwYTY2cC0yLAorICAgIDB4MS4wNWJmYjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIC0weDEuZTNlZTk5MDAzNjMyYWNiZDYzMDE4ZGNkOTk4YjBhNjZwLTIsCisgICAgLTB4MS4wNWJmYjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS45ODBkZDk0MmM1ODkzMWNjZmE4OGFhNTcxNGQ5NTg5YnAtMSwKKyAgICAweDEuMDZwMAorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS45ODBkZDk0MmM1ODkzMWNjZmE4OGFhNTcxNGQ5NTg5YnAtMSwKKyAgICAtMHgxLjA2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5lNGMwMGYwMDQwZmQ1NTU4MTM1ZDIyMWZjOTVkODU1ZXAtMiwKKyAgICAweDEuMDY0M2UwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMHgxLmU0YzAwZjAwNDBmZDU1NTgxMzVkMjIxZmM5NWQ4NTVlcC0yLAorICAgIC0weDEuMDY0M2UwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuZTRlNzA1MDA0MWZlYTVlNDc0YmM0MmJiM2U5NTk4ZWRwLTIsCisgICAgMHgxLjA2NWM3OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS5lNGU3MDUwMDQxZmVhNWU0NzRiYzQyYmIzZTk1OThlZHAtMiwKKyAgICAtMHgxLjA2NWM3OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLjA2N2ZlOTAwMDc2ODlkNDhmYjM5NzkxYzBhODA5NzIzcC05LAorICAgIDB4MS4wNjgwcC05CisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLjA2N2ZlOTAwMDc2ODlkNDhmYjM5NzkxYzBhODA5NzIzcC05LAorICAgIC0weDEuMDY4MHAtOQorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLmU1ZjY0NTAwNDFmMzFkN2ExYjFmZmM2NjI2ZTNhM2E5cC0yLAorICAgIDB4MS4wNzA3Y2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuZTVmNjQ1MDA0MWYzMWQ3YTFiMWZmYzY2MjZlM2EzYTlwLTIsCisgICAgLTB4MS4wNzA3Y2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS45YTAwMGE5MzViZDhlMmIyODIzYmUxYjk5ZGU5YWE2ZHAtMSwKKyAgICAweDEuMDhwMAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS45YTAwMGE5MzViZDhlMmIyODIzYmUxYjk5ZGU5YWE2ZHAtMSwKKyAgICAtMHgxLjA4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS5lN2UwOTUwMDNjOTcyYzQ3YzdiNDg0ZDExNzRlZjhmMXAtMiwKKyAgICAweDEuMDgzZGY0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLmU3ZTA5NTAwM2M5NzJjNDdjN2I0ODRkMTE3NGVmOGYxcC0yLAorICAgIC0weDEuMDgzZGY0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuOWI5NWQyMDI3ZjNiNTFjNDA4YmFkZDIzMjQ0N2ZjYTdwLTEsCisgICAgMHgxLjA5YTRwMAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS45Yjk1ZDIwMjdmM2I1MWM0MDhiYWRkMjMyNDQ3ZmNhN3AtMSwKKyAgICAtMHgxLjA5YTRwMAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLjliZjIzNDljMmZlMTkxNWIyYmE5NTFmNGQ5MGMyMzQ2cC0xLAorICAgIDB4MS4wYTA0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIC0weDEuOWJmMjM0OWMyZmUxOTE1YjJiYTk1MWY0ZDkwYzIzNDZwLTEsCisgICAgLTB4MS4wYTA0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS45YzBkMjAyZWU2Y2FkYjMzNjhkMGJjM2JjNjE2MjBmN3AtMSwKKyAgICAweDEuMGEyMHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLjljMGQyMDJlZTZjYWRiMzM2OGQwYmMzYmM2MTYyMGY3cC0xLAorICAgIC0weDEuMGEyMHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuOWMwZTllYmY5ZWU2ZjMzOWI4ZDRlYjNlMzY1OWM3MGVwLTEsCisgICAgMHgxLjBhMjE4ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAtMHgxLjljMGU5ZWJmOWVlNmYzMzliOGQ0ZWIzZTM2NTljNzBlcC0xLAorICAgIC0weDEuMGEyMThlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS45ZDI1MmU2NTkyNjc2MTliZWVmNjhlODc3M2RjNmVjM3AtMSwKKyAgICAweDEuMGI0NHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAtMHgxLjlkMjUyZTY1OTI2NzYxOWJlZWY2OGU4NzczZGM2ZWMzcC0xLAorICAgIC0weDEuMGI0NHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEuZWUzOWZiMDAwODIxYjFhOWMwMDA4OWUxMzVmMDY5ZDJwLTIsCisgICAgMHgxLjBjNDY3MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgLTB4MS5lZTM5ZmIwMDA4MjFiMWE5YzAwMDg5ZTEzNWYwNjlkMnAtMiwKKyAgICAtMHgxLjBjNDY3MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLmVmZjI4NTAzNGIzY2EzNDZmYmVkMmY5OTZhMTUzNGYxcC0yLAorICAgIDB4MS4wZDVmNmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIC0weDEuZWZmMjg1MDM0YjNjYTM0NmZiZWQyZjk5NmExNTM0ZjFwLTIsCisgICAgLTB4MS4wZDVmNmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuZjMzODM3MDM0YzM3MTQxYzZlZTZjNGMyMTVlYmU4NzlwLTIsCisgICAgMHgxLjBmNzcxZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIC0weDEuZjMzODM3MDM0YzM3MTQxYzZlZTZjNGMyMTVlYmU4NzlwLTIsCisgICAgLTB4MS4wZjc3MWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuYTE2OWFkODcyNWIzYWE1NzgzMWQ1Y2VhOWNmODRhNDVwLTEsCisgICAgMHgxLjBmYzNhZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgLTB4MS5hMTY5YWQ4NzI1YjNhYTU3ODMxZDVjZWE5Y2Y4NGE0NXAtMSwKKyAgICAtMHgxLjBmYzNhZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLmExOTlhNTAxM2I2N2EzNjY4MDI0YjVmZGJhNTM3ZmZicC0xLAorICAgIDB4MS4wZmY2YjZwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIC0weDEuYTE5OWE1MDEzYjY3YTM2NjgwMjRiNWZkYmE1MzdmZmJwLTEsCisgICAgLTB4MS4wZmY2YjZwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5mOWVmMTEwMDAxZmIzMDk5ZGJjMDMyYmFmZjhhN2M5Y3AtMiwKKyAgICAweDEuMTNjOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIC0weDEuZjllZjExMDAwMWZiMzA5OWRiYzAzMmJhZmY4YTdjOWNwLTIsCisgICAgLTB4MS4xM2M4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLmZiMDVmMmQwOWE0ZGM2YjMxZjkxZWFlZDM2NTFhYTBmcC0yLAorICAgIDB4MS4xNDdjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgLTB4MS5mYjA1ZjJkMDlhNGRjNmIzMWY5MWVhZWQzNjUxYWEwZnAtMiwKKyAgICAtMHgxLjE0N2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuMTY2MjEwZmYxZjI3NDE5YmQ1NmQ3YWQ1OGE1MzIyMDNwLTQsCisgICAgMHgxLjE2ZDBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAtMHgxLjE2NjIxMGZmMWYyNzQxOWJkNTZkN2FkNThhNTMyMjAzcC00LAorICAgIC0weDEuMTZkMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS5mZjE0NDc5ZWEwZDA4YjMwNTY2N2VhMWU2YjcxZWZhOXAtMiwKKyAgICAweDEuMTcxY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIC0weDEuZmYxNDQ3OWVhMGQwOGIzMDU2NjdlYTFlNmI3MWVmYTlwLTIsCisgICAgLTB4MS4xNzFjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLmFhNjU1OTQxYzJlZDIzNzUyOTY1OWIyNmE2ZDQwMzYwcC0xLAorICAgIDB4MS4xOTgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAtMHgxLmFhNjU1OTQxYzJlZDIzNzUyOTY1OWIyNmE2ZDQwMzYwcC0xLAorICAgIC0weDEuMTk4MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjFhYzNjOTU1OTgwMjkxNDQ4N2ExYTdlMWI1NjNkYzQycC00LAorICAgIDB4MS4xYjM3cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgLTB4MS4xYWMzYzk1NTk4MDI5MTQ0ODdhMWE3ZTFiNTYzZGM0MnAtNCwKKyAgICAtMHgxLjFiMzdwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuYWNlMzFhZmQ2M2M2MTg3OTJkN2YwMDRhNWYyMGJmNTNwLTEsCisgICAgMHgxLjFjNDQzZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgLTB4MS5hY2UzMWFmZDYzYzYxODc5MmQ3ZjAwNGE1ZjIwYmY1M3AtMSwKKyAgICAtMHgxLjFjNDQzZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLmFlZmQ2M2NlZWViYTU5NmUxZDM3N2VkOTUwMWY5ZjJkcC0xLAorICAgIDB4MS4xZWEwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAtMHgxLmFlZmQ2M2NlZWViYTU5NmUxZDM3N2VkOTUwMWY5ZjJkcC0xLAorICAgIC0weDEuMWVhMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjMxZTNkZGZmZmJlOWM4MWMxNzgyNzBiYzc1OTg3NWU5cC0zLAorICAgIDB4MS4zNDJmNmNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLjMxZTNkZGZmZmJlOWM4MWMxNzgyNzBiYzc1OTg3NWU5cC0zLAorICAgIC0weDEuMzQyZjZjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLjMwZjU4OGZmZmVlMTQxNzgyZjYxZGUzYjkxM2NjMzQ0cC0yLAorICAgIDB4MS4zYTRlODJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAtMHgxLjMwZjU4OGZmZmVlMTQxNzgyZjYxZGUzYjkxM2NjMzQ0cC0yLAorICAgIC0weDEuM2E0ZTgycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLjI2YzM4NGZlOTVkNWUyNGM5YzYwYWRmOTNmNTMxMTgycC0xLAorICAgIDB4MS40YzUwZThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAtMHgxLjI2YzM4NGZlOTVkNWUyNGM5YzYwYWRmOTNmNTMxMTgycC0xLAorICAgIC0weDEuNGM1MGU4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLmU0Mjg1NmZmZmRhZjFlMjcwZjUwMmM3MmJmZTI3MmIwcC0xLAorICAgIDB4MS42MmIxNDBwMAorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIC0weDEuZTQyODU2ZmZmZGFmMWUyNzBmNTAyYzcyYmZlMjcyYjBwLTEsCisgICAgLTB4MS42MmIxNDBwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS42NzAzZmVmZWQwNmI5MTRiOTllMzEyNGNhMGMyY2I1OHAtMiwKKyAgICAweDEuNzY3Y2FhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgLTB4MS42NzAzZmVmZWQwNmI5MTRiOTllMzEyNGNhMGMyY2I1OHAtMiwKKyAgICAtMHgxLjc2N2NhYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS43NWNiMDZmZmZmZmViYzA5YmUzNzQ5MzIyM2QxNDM2YXAtNCwKKyAgICAweDEuNzZkNThlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS43NWNiMDZmZmZmZmViYzA5YmUzNzQ5MzIyM2QxNDM2YXAtNCwKKyAgICAtMHgxLjc2ZDU4ZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS40M2ZkZDFhNjk1OWFhOTg5ZjUwNTc1Y2Y0NTQ1NWQ2NHAtMSwKKyAgICAweDEuNzc4MGYycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS40M2ZkZDFhNjk1OWFhOTg5ZjUwNTc1Y2Y0NTQ1NWQ2NHAtMSwKKyAgICAtMHgxLjc3ODBmMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIDB4MS40ODFiYmEwMjE1ZmIwNGY2NjI1MmQ1YjhmNGEwMjk5YXAtMSwKKyAgICAweDEuN2RkZjYycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS40ODFiYmEwMjE1ZmIwNGY2NjI1MmQ1YjhmNGEwMjk5YXAtMSwKKyAgICAtMHgxLjdkZGY2MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS42Zjk0NjU5NTU3OGJmN2VkY2FkYmJlNmU4MTY4MzhkYXAtMiwKKyAgICAweDEuODAzOWY4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTB4MS42Zjk0NjU5NTU3OGJmN2VkY2FkYmJlNmU4MTY4MzhkYXAtMiwKKyAgICAtMHgxLjgwMzlmOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS42ZjlkMjk5Y2M1MzA4NGZlYWViNGE4OWRkNTM4OTg0Y3AtMiwKKyAgICAweDEuODA0M2Y4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS42ZjlkMjk5Y2M1MzA4NGZlYWViNGE4OWRkNTM4OTg0Y3AtMiwKKyAgICAtMHgxLjgwNDNmOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS42ZmE0NjE2MzQzODU2MjFhN2I0YTFmM2YzOWU2OWU4OHAtMiwKKyAgICAweDEuODA0YzM0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS42ZmE0NjE2MzQzODU2MjFhN2I0YTFmM2YzOWU2OWU4OHAtMiwKKyAgICAtMHgxLjgwNGMzNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS42ZmVkYmUwM2NmMGIwMGNkYjY0OGYzZjU4ODIyZjNjOHAtMiwKKyAgICAweDEuODA5ZmU4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS42ZmVkYmUwM2NmMGIwMGNkYjY0OGYzZjU4ODIyZjNjOHAtMiwKKyAgICAtMHgxLjgwOWZlOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS43MzhjMjk3YTc4ZThjNjAzMDQ4MDE1ZmRjOGJjZjRjOXAtMiwKKyAgICAweDEuODRjMjcwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS43MzhjMjk3YTc4ZThjNjAzMDQ4MDE1ZmRjOGJjZjRjOXAtMiwKKyAgICAtMHgxLjg0YzI3MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS45OGYwMzQwMDAyYzYxYjFkMzNmOGQxZTJjMWFmNTU4MXAtNCwKKyAgICAweDEuOWE0ZDZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS45OGYwMzQwMDAyYzYxYjFkMzNmOGQxZTJjMWFmNTU4MXAtNCwKKyAgICAtMHgxLjlhNGQ2ZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS45ZjhiNDMwMDAzOGIyMzllYjYzZTdiZTgyMjU5MWI1ZnAtNCwKKyAgICAweDEuYTBmOWJjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS45ZjhiNDMwMDAzOGIyMzllYjYzZTdiZTgyMjU5MWI1ZnAtNCwKKyAgICAtMHgxLmEwZjliY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS5hMGZkOWQwMDAzOWE2MGJkZGJmZGRjMTBiMDVjNTZhM3AtNCwKKyAgICAweDEuYTI2ZmYwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS5hMGZkOWQwMDAzOWE2MGJkZGJmZGRjMTBiMDVjNTZhM3AtNCwKKyAgICAtMHgxLmEyNmZmMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDB4MS5hNDcyODkwMDU1NmZjMmI4YTVhNTMwZTNkOTk5YjFkN3AtNCwKKyAgICAweDEuYTVlZTJjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS5hNDcyODkwMDU1NmZjMmI4YTVhNTMwZTNkOTk5YjFkN3AtNCwKKyAgICAtMHgxLmE1ZWUyY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS5hNDcyOGFmYWY1MzdiNTczNjlkZDE2MTM2NzNmMjc1N3AtNCwKKyAgICAweDEuYTVlZTJlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS5hNDcyOGFmYWY1MzdiNTczNjlkZDE2MTM2NzNmMjc1N3AtNCwKKyAgICAtMHgxLmE1ZWUyZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS45MTVlMTlhYTA5OGNiYTZlZjE3ODQxMWVhNDE3NGY2N3AtMiwKKyAgICAweDEuYTc0NGQ4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTB4MS45MTVlMTlhYTA5OGNiYTZlZjE3ODQxMWVhNDE3NGY2N3AtMiwKKyAgICAtMHgxLmE3NDRkOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS5hOTVkNWVmZmZmZWU4ZGZhMmE0NGFmOTEyZmY1YzZiZHAtNCwKKyAgICAweDEuYWFlNjg2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS5hOTVkNWVmZmZmZWU4ZGZhMmE0NGFmOTEyZmY1YzZiZHAtNCwKKyAgICAtMHgxLmFhZTY4NnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDB4MS5iMGY4OTdmZGVhNTc2OWVmYjQzYjczNGM2ZjVkMzhmZHAtNCwKKyAgICAweDEuYjI5NzQ4cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS5iMGY4OTdmZGVhNTc2OWVmYjQzYjczNGM2ZjVkMzhmZHAtNCwKKyAgICAtMHgxLmIyOTc0OHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS5iNmZkNjhmZmZiZjMzNzg0YThlMTI5NjA2YzVhM2ZkNHAtNCwKKyAgICAweDEuYjhhZGIwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS5iNmZkNjhmZmZiZjMzNzg0YThlMTI5NjA2YzVhM2ZkNHAtNCwKKyAgICAtMHgxLmI4YWRiMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIDB4MS5hMjA1MzQyYzQ1N2FjM2EwNTZhYmNmZTc1MjdhNDQ1M3AtMiwKKyAgICAweDEuYmFlNjhlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5hMjA1MzQyYzQ1N2FjM2EwNTZhYmNmZTc1MjdhNDQ1M3AtMiwKKyAgICAtMHgxLmJhZTY4ZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS5hNjRlZmQwNjMzNzBiNWUzYTcwOGIyYTM3ZGRhYjIyM3AtMiwKKyAgICAweDEuYzAwMDE0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS5hNjRlZmQwNjMzNzBiNWUzYTcwOGIyYTM3ZGRhYjIyM3AtMiwKKyAgICAtMHgxLmMwMDAxNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS5hZDAwZjM5NmRiMDNmYWE3ZjlkN2UzMjIxZDQ1NTJhZHAtMiwKKyAgICAweDEuYzdmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS5hZDAwZjM5NmRiMDNmYWE3ZjlkN2UzMjIxZDQ1NTJhZHAtMiwKKyAgICAtMHgxLmM3ZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS42ZTZkNWQyN2JkMDgxNTRhNjM0OWRkMmQ5YTMxMWUxMHAwLAorICAgIDB4MS5jN2ZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEuNmU2ZDVkMjdiZDA4MTU0YTYzNDlkZDJkOWEzMTFlMTBwMCwKKyAgICAtMHgxLmM3ZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMHgxLjc2OTg4NWU0ODRkMDk5OWVmMDdhMGM3Y2MwY2U3M2Y1cC0xLAorICAgIDB4MS5jYmI0ODRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAtMHgxLjc2OTg4NWU0ODRkMDk5OWVmMDdhMGM3Y2MwY2U3M2Y1cC0xLAorICAgIC0weDEuY2JiNDg0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLjc4MDVmNWVkNWE3ZDM0Y2Y5MjIwNDM0NzFjNzRlZWNmcC0xLAorICAgIDB4MS5jZTRhMzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLjc4MDVmNWVkNWE3ZDM0Y2Y5MjIwNDM0NzFjNzRlZWNmcC0xLAorICAgIC0weDEuY2U0YTM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLmM4NWIyZWJkYTEzZTRmNzgxZWE2NWU1YWExYjhiOWUxcC0zLAorICAgIDB4MS5kMDBmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAtMHgxLmM4NWIyZWJkYTEzZTRmNzgxZWE2NWU1YWExYjhiOWUxcC0zLAorICAgIC0weDEuZDAwZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLmM4ZGYzNzNlZWJkYmQ3ZDI5ODNkOWMwNzQ2ODdiM2IxcC0zLAorICAgIDB4MS5kMDlhZDBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAtMHgxLmM4ZGYzNzNlZWJkYmQ3ZDI5ODNkOWMwNzQ2ODdiM2IxcC0zLAorICAgIC0weDEuZDA5YWQwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLjgxMDhmNzAwMWI3Y2U5ZDI2ZWEyYTc3MGFjZDQxMDQ0cDAsCisgICAgMHgxLmRlYWEzOHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTB4MS44MTA4ZjcwMDFiN2NlOWQyNmVhMmE3NzBhY2Q0MTA0NHAwLAorICAgIC0weDEuZGVhYTM4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuODJkNmI2ODdkODY5MmU5YWVmYzYxMWJlNmIxZDQ0YThwLTEsCisgICAgMHgxLmUyNGVhZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0weDEuODJkNmI2ODdkODY5MmU5YWVmYzYxMWJlNmIxZDQ0YThwLTEsCisgICAgLTB4MS5lMjRlYWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuOTIxZmI1MDExZDBiZmYwMmY1MTMyMmEwOGY0MzU2ODlwMCwKKyAgICAweDEuZTdmZmZlcDI1CisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgLTB4MS45MjFmYjUwMTFkMGJmZjAyZjUxMzIyYTA4ZjQzNTY4OXAwLAorICAgIC0weDEuZTdmZmZlcDI1CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLjg3NTVmNzIwNGIzNWZlZGQ2OTMwNGMwMTRiYTkxOTNhcC0xLAorICAgIDB4MS5lYWRkYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAtMHgxLjg3NTVmNzIwNGIzNWZlZGQ2OTMwNGMwMTRiYTkxOTNhcC0xLAorICAgIC0weDEuZWFkZGI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjkyMWZhY2ZmZmU0ZDUyNTg2OWFkZjM2NDUzYWMwMDQ1cDAsCisgICAgMHgxLmVmN2JkMHAyMAorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuOTIxZmFjZmZmZTRkNTI1ODY5YWRmMzY0NTNhYzAwNDVwMCwKKyAgICAtMHgxLmVmN2JkMHAyMAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS5mMTQwNDFmZmZjNmY5Mzc0MmZmMTU5NDI3ODM5MDdlZXAtNCwKKyAgICAweDEuZjNiNTUycC00CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5mMTQwNDFmZmZjNmY5Mzc0MmZmMTU5NDI3ODM5MDdlZXAtNCwKKyAgICAtMHgxLmYzYjU1MnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5mNGJiMGFmZWQ3NTU5NDgzZTU4MDVkZDQ4Nzk0NjViY3AtNiwKKyAgICAweDEuZjRlMmY4cC02CisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS5mNGJiMGFmZWQ3NTU5NDgzZTU4MDVkZDQ4Nzk0NjViY3AtNiwKKyAgICAtMHgxLmY0ZTJmOHAtNgorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIDB4MS5kNDVhZWIwMmEwN2NhNGI3MTFjMjE5MzMyOTQyNWM3OHAtMiwKKyAgICAweDEuZjdmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTB4MS5kNDVhZWIwMmEwN2NhNGI3MTFjMjE5MzMyOTQyNWM3OHAtMiwKKyAgICAtMHgxLmY3ZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS5kNTM5YmNmZmQ1ODg4ZGNhN2RlY2ViYThhM2YyZDA0MXAtMiwKKyAgICAweDEuZjkxNGU4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS5kNTM5YmNmZmQ1ODg4ZGNhN2RlY2ViYThhM2YyZDA0MXAtMiwKKyAgICAtMHgxLmY5MTRlOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS44ZWU4NGYxNDc4YTI1YjliZmFjZGFiYjQ5ZmNlYTZkNXAtMSwKKyAgICAweDEuZjk5Yjc2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgLTB4MS44ZWU4NGYxNDc4YTI1YjliZmFjZGFiYjQ5ZmNlYTZkNXAtMSwKKyAgICAtMHgxLmY5OWI3NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDB4MS5mYWRiZjBmZjQ4NmIxNWUyNjRjMDJjYTM5YjhlNmU0NnAtNiwKKyAgICAweDEuZmIwNTVhcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS5mYWRiZjBmZjQ4NmIxNWUyNjRjMDJjYTM5YjhlNmU0NnAtNiwKKyAgICAtMHgxLmZiMDU1YXAtNgorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS45MDQ0ZGYwMzRiOGQ5NDMzMjdiZWU1YzYzM2IzZjMxY3AtMSwKKyAgICAweDEuZmM0ZGMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgLTB4MS45MDQ0ZGYwMzRiOGQ5NDMzMjdiZWU1YzYzM2IzZjMxY3AtMSwKKyAgICAtMHgxLmZjNGRjMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS45MjFmNzRmZmZhMDNlNzAxYWNjYzlkMWVlM2JkMmY0M3AwLAorICAgIDB4MS5mZGRmZmVwMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLjkyMWY3NGZmZmEwM2U3MDFhY2NjOWQxZWUzYmQyZjQzcDAsCisgICAgLTB4MS5mZGRmZmVwMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAweDEuOTFhZjliYzA0MDBlMGUyMWZiNDQ2OTJhNDE4MjljNWRwLTEsCisgICAgMHgxLmZmMWZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuOTFhZjliYzA0MDBlMGUyMWZiNDQ2OTJhNDE4MjljNWRwLTEsCisgICAgLTB4MS5mZjFmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuOTFiZmEyNDFhMmJmMWM4ZjMzZTdhZWUzYTM4MzYyZmFwLTEsCisgICAgMHgxLmZmM2ZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuOTFiZmEyNDFhMmJmMWM4ZjMzZTdhZWUzYTM4MzYyZmFwLTEsCisgICAgLTB4MS5mZjNmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuZjUwMmE1MDAwOGRjZmEzZDEyNTJlODI1NjI5N2FhMTZwLTMsCisgICAgMHgxLmZmM2ZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEuZjUwMmE1MDAwOGRjZmEzZDEyNTJlODI1NjI5N2FhMTZwLTMsCisgICAgLTB4MS5mZjNmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuMWI2YzY1OGY1N2QxZTQ0MzVjOTQ2NTMwZTdkMDQxNWNwMCwKKyAgICAweDEuZmZmNzdlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLjFiNmM2NThmNTdkMWU0NDM1Yzk0NjUzMGU3ZDA0MTVjcDAsCisgICAgLTB4MS5mZmY3N2VwMAorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS5mNWIwYThmYWM4ZWUzYjJhMDk5NzU1MjE4M2JiYWY4NnAtMywKKyAgICAweDEuZmZmOGRlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS5mNWIwYThmYWM4ZWUzYjJhMDk5NzU1MjE4M2JiYWY4NnAtMywKKyAgICAtMHgxLmZmZjhkZXAtMworICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS5mNWIwYzhmYWQ2M2I1NjVlZGFhNDIwNWI1Nzg3ZDIzNHAtMywKKyAgICAweDEuZmZmOXAtMworICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEuZjViMGM4ZmFkNjNiNTY1ZWRhYTQyMDViNTc4N2QyMzRwLTMsCisgICAgLTB4MS5mZmY5cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLmZmZDA0OGZmNDJmZjAyMjcwMTU0NjE4Y2FjNzY4Zjk4cC02LAorICAgIDB4MS5mZmZhZWNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLmZmZDA0OGZmNDJmZjAyMjcwMTU0NjE4Y2FjNzY4Zjk4cC02LAorICAgIC0weDEuZmZmYWVjcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMHgxLjkyMWRlNTQyOWU1MDg2NWMzNDM4NmEyNDdkYzRlZTRlcC0xLAorICAgIDB4MS5mZmZjNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLjkyMWRlNTQyOWU1MDg2NWMzNDM4NmEyNDdkYzRlZTRlcC0xLAorICAgIC0weDEuZmZmYzYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMHgxLjkyMWY4NDQ0M2UyMTA0MWNmMTYyMWE2ZDJlOTBhM2NhcC0xLAorICAgIDB4MS5mZmZmOWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAtMHgxLjkyMWY4NDQ0M2UyMTA0MWNmMTYyMWE2ZDJlOTBhM2NhcC0xLAorICAgIC0weDEuZmZmZjllcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLjFiNmUwZDk1MjEzZDhlNWU4YWNhY2Y2ZWUzYjVkZGExcDAsCisgICAgMHgxLmZmZmZjNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgLTB4MS4xYjZlMGQ5NTIxM2Q4ZTVlOGFjYWNmNmVlM2I1ZGRhMXAwLAorICAgIC0weDEuZmZmZmM2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuNTM2OGM1NTFlOThmYzlhMDQzNmZmNmFlZDVhNDNiZmVwMCwKKyAgICAweDEuZmZmZmRlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAtMHgxLjUzNjhjNTUxZTk4ZmM5YTA0MzZmZjZhZWQ1YTQzYmZlcDAsCisgICAgLTB4MS5mZmZmZGVwMQorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS4xYjZlMTU5NTIyMzBjMWE3NmUzNjQ0MTQzMjdhZTI1MHAwLAorICAgIDB4MS5mZmZmZWVwMAorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIC0weDEuMWI2ZTE1OTUyMjMwYzFhNzZlMzY0NDE0MzI3YWUyNTBwMCwKKyAgICAtMHgxLmZmZmZlZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLjkyMWZiMTQ0NDJjOTg0Njk3ZWUyMWE2YzU3MGRjMjJhcC0xLAorICAgIDB4MS5mZmZmZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAtMHgxLjkyMWZiMTQ0NDJjOTg0Njk3ZWUyMWE2YzU3MGRjMjJhcC0xLAorICAgIC0weDEuZmZmZmY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNiwKKyAgICAtMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjYsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIC0weDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNiwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAtMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjYsCisgICAgLTB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS45OTk5OTlhODllNjBkMDUxMmQ2YjBiMzliZDJhNTY1YXAtMTMsCisgICAgMHgxLjk5OTk5YXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAtMHgxLjk5OTk5OWE4OWU2MGQwNTEyZDZiMGIzOWJkMmE1NjVhcC0xMywKKyAgICAtMHgxLjk5OTk5YXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEuOTk5OTk4YTI3OTg0ZDNlYmViMWMzMjkwY2MyYzVjYWFwLTEyLAorICAgIDB4MS45OTk5OWFwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgLTB4MS45OTk5OThhMjc5ODRkM2ViZWIxYzMyOTBjYzJjNWNhYXAtMTIsCisgICAgLTB4MS45OTk5OWFwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMHgxLjMzMzMzMWIyMmQxMWIwY2NiMmJiN2JhNmY2M2I0ZDNjcC0xMSwKKyAgICAweDEuMzMzMzM0cC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIC0weDEuMzMzMzMxYjIyZDExYjBjY2IyYmI3YmE2ZjYzYjRkM2NwLTExLAorICAgIC0weDEuMzMzMzM0cC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIDB4MS45OTk5OTQ4OWU2MmM3YTIyNTZlMDVjNDk4ODBkMjNkOXAtMTEsCisgICAgMHgxLjk5OTk5YXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAtMHgxLjk5OTk5NDg5ZTYyYzdhMjI1NmUwNWM0OTg4MGQyM2Q5cC0xMSwKKyAgICAtMHgxLjk5OTk5YXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuZmZmZmY1NTU1NWJiYmJiNzI5NzJkMDBjZmRlNzUyZjlwLTExLAorICAgIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgLTB4MS5mZmZmZjU1NTU1YmJiYmI3Mjk3MmQwMGNmZGU3NTJmOXAtMTEsCisgICAgLTB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLjMzMzMyYWM4YjRhNjUwNWFhZDFhNTUzOTIwMmRmNGY0cC0xMCwKKyAgICAweDEuMzMzMzM0cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIC0weDEuMzMzMzJhYzhiNGE2NTA1YWFkMWE1NTM5MjAyZGY0ZjRwLTEwLAorICAgIC0weDEuMzMzMzM0cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS42NjY2NTk1ZDg3NWQ2ZjU4N2U0ZDg3OGE3YjQ5MmY0N3AtMTAsCisgICAgMHgxLjY2NjY2OHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAtMHgxLjY2NjY1OTVkODc1ZDZmNTg3ZTRkODc4YTdiNDkyZjQ3cC0xMCwKKyAgICAtMHgxLjY2NjY2OHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuOTk5OTg2Mjc5OWYyYTQxMDRiYThjNDExODYzZTcxZjdwLTEwLAorICAgIDB4MS45OTk5OWNwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgLTB4MS45OTk5ODYyNzk5ZjJhNDEwNGJhOGM0MTE4NjNlNzFmN3AtMTAsCisgICAgLTB4MS45OTk5OWNwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgMHgxLmNjY2NhY2U1NjQzMjc2ZWNkOGZmYWU1NGIyOGI4N2ZmcC0xMCwKKyAgICAweDEuY2NjY2NjcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIC0weDEuY2NjY2FjZTU2NDMyNzZlY2Q4ZmZhZTU0YjI4Yjg3ZmZwLTEwLAorICAgIC0weDEuY2NjY2NjcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS4wNjY0ZjY2ZjdjZmQ0ODJjZjBmZjQ1ODJiYmVlZjQ3OHAtNywKKyAgICAweDEuMDY2NjY2cC03CisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgLTB4MS4wNjY0ZjY2ZjdjZmQ0ODJjZjBmZjQ1ODJiYmVlZjQ3OHAtNywKKyAgICAtMHgxLjA2NjY2NnAtNworICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS5jY2M1MDU5NDhmZTdhM2I4ZTA4Mzc0NDVjMjEzNjg5N3AtNywKKyAgICAweDEuY2NjY2NjcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgLTB4MS5jY2M1MDU5NDhmZTdhM2I4ZTA4Mzc0NDVjMjEzNjg5N3AtNywKKyAgICAtMHgxLmNjY2NjY3AtNworICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS40OThlMzZjNGYzODVkNWFmM2I2YjY0ODBhOGViZmUxNHAtNiwKKyAgICAweDEuNDk5OTk4cC02CisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgLTB4MS40OThlMzZjNGYzODVkNWFmM2I2YjY0ODBhOGViZmUxNHAtNiwKKyAgICAtMHgxLjQ5OTk5OHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS5hY2IzYmU1YmUwMTM5MzAyMDUzMzVlOTFmMjMwZWM4YnAtNiwKKyAgICAweDEuYWNjY2NjcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgLTB4MS5hY2IzYmU1YmUwMTM5MzAyMDUzMzVlOTFmMjMwZWM4YnAtNiwKKyAgICAtMHgxLmFjY2NjY3AtNgorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIDB4MS4wN2U4OWUzYWJlZTdkZjViYzIyYjg4Mzg1NmU1ZDgwMnAtNSwKKyAgICAweDEuMDhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAtMHgxLjA3ZTg5ZTNhYmVlN2RmNWJjMjJiODgzODU2ZTVkODAycC01LAorICAgIC0weDEuMDhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEuMzk3MjZiNmZhYjA1OWI2NmRkNzQwYWU4M2ZiNTY1YjdwLTUsCisgICAgMHgxLjM5OTk5YXAtNQorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIC0weDEuMzk3MjZiNmZhYjA1OWI2NmRkNzQwYWU4M2ZiNTY1YjdwLTUsCisgICAgLTB4MS4zOTk5OWFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEuNmFmNjVhNDE5MDgwMzljMjY3Njc0ZjM1NmY5OTdkNGRwLTUsCisgICAgMHgxLjZiMzMzNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIC0weDEuNmFmNjVhNDE5MDgwMzljMjY3Njc0ZjM1NmY5OTdkNGRwLTUsCisgICAgLTB4MS42YjMzMzRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuOWM3MzdlY2RiOTBhN2M0ZjlkODY4MmJjMjgxNTYzNWJwLTUsCisgICAgMHgxLjljY2NjZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIC0weDEuOWM3MzdlY2RiOTBhN2M0ZjlkODY4MmJjMjgxNTYzNWJwLTUsCisgICAgLTB4MS45Y2NjY2VwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAweDEuY2RlOGViZjVhMzNhMjY5YzU1MjljNTNlODUzY2U0OTJwLTUsCisgICAgMHgxLmNlNjY2NnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIC0weDEuY2RlOGViZjVhMzNhMjY5YzU1MjljNTNlODUzY2U0OTJwLTUsCisgICAgLTB4MS5jZTY2NjZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuMzM1OWJjYzMyZTU4YzZkZTIwM2Y4YjZjMTlmYTVmZjlwLTEsCisgICAgMHgxLjVlN2ZjNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIC0weDEuMzM1OWJjYzMyZTU4YzZkZTIwM2Y4YjZjMTlmYTVmZjlwLTEsCisgICAgLTB4MS41ZTdmYzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuZDVjYTcwNWQwOWJlZWVjNTU4YTViOGRiMmQ2NTcxOTJwLTEsCisgICAgMHgxLjRlN2ZjNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgLTB4MS5kNWNhNzA1ZDA5YmVlZWM1NThhNWI4ZGIyZDY1NzE5MnAtMSwKKyAgICAtMHgxLjRlN2ZjNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLjE3YWM0NDBkOGZlYmViN2ExZDE5YTVhZThmYWE3ZDdlcDAsCisgICAgMHgxLmVkYmZhNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgLTB4MS4xN2FjNDQwZDhmZWJlYjdhMWQxOWE1YWU4ZmFhN2Q3ZXAwLAorICAgIC0weDEuZWRiZmE2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAweDEuMzI3OWU4NDcwM2ZjOWM4ZjcwMmE2Nzg2OTMxMDJjNDdwMCwKKyAgICAweDEuNDY3ZmM0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAtMHgxLjMyNzllODQ3MDNmYzljOGY3MDJhNjc4NjkzMTAyYzQ3cDAsCisgICAgLTB4MS40NjdmYzRwMQorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIDB4MS40M2Y2NDQ2N2E1NzgxMjcxNTgyY2U2MWNjYzZiMDE5OXAwLAorICAgIDB4MS45NjFmYjRwMQorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIC0weDEuNDNmNjQ0NjdhNTc4MTI3MTU4MmNlNjFjY2M2YjAxOTlwMCwKKyAgICAtMHgxLjk2MWZiNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgMHgxLjUwMmExY2YwODJjMTk5Zjg1ODkyYjE3NjNlZmE2YzYxcDAsCisgICAgMHgxLmU1YmZhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgLTB4MS41MDJhMWNmMDgyYzE5OWY4NTg5MmIxNzYzZWZhNmM2MXAwLAorICAgIC0weDEuZTViZmE0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAweDEuNTkyMDY2NTYzZDYxMzc4YzY1YThlZjdkMDkxYmRjOTVwMCwKKyAgICAweDEuMWFhZmNhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAtMHgxLjU5MjA2NjU2M2Q2MTM3OGM2NWE4ZWY3ZDA5MWJkYzk1cDAsCisgICAgLTB4MS4xYWFmY2FwMgorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIDB4MS41ZmY4ZTIxZjcxMmY5ZWU0NDI0YmJjNzExZTFlZjZmM3AwLAorICAgIDB4MS40MjdmYzJwMgorICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIC0weDEuNWZmOGUyMWY3MTJmOWVlNDQyNGJiYzcxMWUxZWY2ZjNwMCwKKyAgICAtMHgxLjQyN2ZjMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMHgxLjY1NWQ2NGYzNzdjOWU1OGU3MjdmNDYwMTMzZWQ5N2EzcDAsCisgICAgMHgxLjZhNGZiYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgLTB4MS42NTVkNjRmMzc3YzllNThlNzI3ZjQ2MDEzM2VkOTdhM3AwLAorICAgIC0weDEuNmE0ZmJhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuNjU3MTFkNmRkN2NhODc4NDgxZmNiMmVjNGY5ZjkzNDFwMCwKKyAgICAweDEuNmFmMmYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAtMHgxLjY1NzExZDZkZDdjYTg3ODQ4MWZjYjJlYzRmOWY5MzQxcDAsCisgICAgLTB4MS42YWYyZjBwMgorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIDB4MS42MDJhMmE5MmJiMzc3ODQ4OWJiYzE2NWE3ZDI1ZmI2OHAwLAorICAgIDB4MS40M2M2MmFwMgorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIC0weDEuNjAyYTJhOTJiYjM3Nzg0ODliYmMxNjVhN2QyNWZiNjhwMCwKKyAgICAtMHgxLjQzYzYyYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgMHgxLjU5N2Y0NmExOWYwNmQ1M2JmMWRmNDJiZmFlZGM1YzRkcDAsCisgICAgMHgxLjFjOTk2NHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgLTB4MS41OTdmNDZhMTlmMDZkNTNiZjFkZjQyYmZhZWRjNWM0ZHAwLAorICAgIC0weDEuMWM5OTY0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAweDEuNTBkMjAxZDRkODE4OGJjOTUwY2UyMzljZDQ5OTFiYjlwMCwKKyAgICAweDEuZWFkOTNjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAtMHgxLjUwZDIwMWQ0ZDgxODhiYzk1MGNlMjM5Y2Q0OTkxYmI5cDAsCisgICAgLTB4MS5lYWQ5M2NwMQorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS40NTE5MGIxNjM3MTljODI4MzA3ZDZhM2QwY2YwYjU0Y3AwLAorICAgIDB4MS45YzdmYjBwMQorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIC0weDEuNDUxOTBiMTYzNzE5YzgyODMwN2Q2YTNkMGNmMGI1NGNwMCwKKyAgICAtMHgxLjljN2ZiMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgMHgxLjM0Nzk0YmI4NGQyYmFhMDI5NTNhMGE3MmI3MTdmMGVicDAsCisgICAgMHgxLjRlMjYyNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgLTB4MS4zNDc5NGJiODRkMmJhYTAyOTUzYTBhNzJiNzE3ZjBlYnAwLAorICAgIC0weDEuNGUyNjI0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAweDEuMWI1OTg2NDcyNGExMGVmYWM4NTk3ZTc3NDYxYmMzZjFwMCwKKyAgICAweDEuZmY5OTMycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAtMHgxLjFiNTk4NjQ3MjRhMTBlZmFjODU5N2U3NzQ2MWJjM2YxcDAsCisgICAgLTB4MS5mZjk5MzJwMAorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIDB4MS5lNDRjODkwODZkMWFlY2FjMWNiZTJiMzk0MWM2N2EwZnAtMSwKKyAgICAweDEuNjJlNjFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAtMHgxLmU0NGM4OTA4NmQxYWVjYWMxY2JlMmIzOTQxYzY3YTBmcC0xLAorICAgIC0weDEuNjJlNjFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEuNTE1MGYyOGFlZTdhYTgxOWNiNDc1YjRhODVhZTc1NjlwLTEsCisgICAgMHgxLjhjNjYyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIC0weDEuNTE1MGYyOGFlZTdhYTgxOWNiNDc1YjRhODVhZTc1NjlwLTEsCisgICAgLTB4MS44YzY2MmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAtMHgxLjA3M2VhMTEzNjhmN2E0Nzk3MmM3YTkwZmM3N2UzYzMzcDAsCisgICAgLTB4MS5hOGFhMWNwMAorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIDB4MS4wNzNlYTExMzY4ZjdhNDc5NzJjN2E5MGZjNzdlM2MzM3AwLAorICAgIDB4MS5hOGFhMWNwMAorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIC0weDEuMDIxNTQ4ZTcxYmIzNDU3ZDY0OGMxOTI0ZGU0ZjVkNjVwMCwKKyAgICAtMHgxLjk1ZWM4YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgMHgxLjAyMTU0OGU3MWJiMzQ1N2Q2NDhjMTkyNGRlNGY1ZDY1cDAsCisgICAgMHgxLjk1ZWM4YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgLTB4MS5mOTIzNjRjYTFmYTJkYWJjNjNiYTdmNmU4YTY4ZDNmNnAtMSwKKyAgICAtMHgxLjgzMmVmOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgMHgxLmY5MjM2NGNhMWZhMmRhYmM2M2JhN2Y2ZThhNjhkM2Y2cC0xLAorICAgIDB4MS44MzJlZjhwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIC0weDEuZWQ1NzdlYTc1MTdjMjhjYmM4OTFjMDE4NDM4ZGFjMTFwLTEsCisgICAgLTB4MS43MDcxNjZwMAorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS5lZDU3N2VhNzUxN2MyOGNiYzg5MWMwMTg0MzhkYWMxMXAtMSwKKyAgICAweDEuNzA3MTY2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAtMHgxLmUwYjUyMjZlZjM2ZDY3ZTAwNWEwZWI5Y2ZkYjliNTFhcC0xLAorICAgIC0weDEuNWRiM2Q0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuZTBiNTIyNmVmMzZkNjdlMDA1YTBlYjljZmRiOWI1MWFwLTEsCisgICAgMHgxLjVkYjNkNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgLTB4MS5kMzI5MDQyN2YxZDE3ZTMwYTY5OTNmYmU5NmNjMWZkZnAtMSwKKyAgICAtMHgxLjRhZjY0MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLmQzMjkwNDI3ZjFkMTdlMzBhNjk5M2ZiZTk2Y2MxZmRmcC0xLAorICAgIDB4MS40YWY2NDJwMAorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIC0weDEuYzQ5ZTQ1MDVjZmY3ZTlmNThiZTljNjBlZjA4Yjc5NGRwLTEsCisgICAgLTB4MS4zODM4YjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDB4MS5jNDllNDUwNWNmZjdlOWY1OGJlOWM2MGVmMDhiNzk0ZHAtMSwKKyAgICAweDEuMzgzOGIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAtMHgxLmI0ZmU4MDAxOWExOTBjZWIzOWM3Y2NlMmYwODQ3MDgycC0xLAorICAgIC0weDEuMjU3YjFlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuYjRmZTgwMDE5YTE5MGNlYjM5YzdjY2UyZjA4NDcwODJwLTEsCisgICAgMHgxLjI1N2IxZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgLTB4MS5hNDMxZjQxZTIyMWVlMjk5M2UyODQ4MWYzNGY3YzgyMnAtMSwKKyAgICAtMHgxLjEyYmQ5MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMHgxLmE0MzFmNDFlMjIxZWUyOTkzZTI4NDgxZjM0ZjdjODIycC0xLAorICAgIDB4MS4xMmJkOTJwMAorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIC0weDEuODcxMjc4NzMzOWRjMWJiMjhhYWNkYmI3NWQwZWRhNDlwLTEsCisgICAgLTB4MS5lYTVjM2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuODcxMjc4NzMzOWRjMWJiMjhhYWNkYmI3NWQwZWRhNDlwLTEsCisgICAgMHgxLmVhNWMzZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIC0weDEuN2I4YjNhZjhiOTI3OGRkNWM4MGJmNGYzODZkYzU1MDNwLTEsCisgICAgLTB4MS5kNGI4N2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuN2I4YjNhZjhiOTI3OGRkNWM4MGJmNGYzODZkYzU1MDNwLTEsCisgICAgMHgxLmQ0Yjg3Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIC0weDEuNmY4NTFkNmE0ZjQwM2E3MWVmODc0ZGNjOWVkOWQ1OWFwLTEsCisgICAgLTB4MS5iZjE0YmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAweDEuNmY4NTFkNmE0ZjQwM2E3MWVmODc0ZGNjOWVkOWQ1OWFwLTEsCisgICAgMHgxLmJmMTRiYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIC0weDEuNjJmYjYyNTQzN2FmMjJlYzM0Y2U5NmIxN2M1YWM5ZWNwLTEsCisgICAgLTB4MS5hOTcwZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDgKKyAgICAweDEuNjJmYjYyNTQzN2FmMjJlYzM0Y2U5NmIxN2M1YWM5ZWNwLTEsCisgICAgMHgxLmE5NzBmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0OQorICAgIC0weDEuNTVlOTg0MjFlZTk0NjViOTIyZDE5ZTc4MDA0YjllOTZwLTEsCisgICAgLTB4MS45M2NkMzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAweDEuNTVlOTg0MjFlZTk0NjViOTIyZDE5ZTc4MDA0YjllOTZwLTEsCisgICAgMHgxLjkzY2QzNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIC0weDEuNDg0YjRlZGFmODg3MTg0NjI2MWE3NmJkMzNkOWYwNDlwLTEsCisgICAgLTB4MS43ZTI5NzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTIKKyAgICAweDEuNDg0YjRlZGFmODg3MTg0NjI2MWE3NmJkMzNkOWYwNDlwLTEsCisgICAgMHgxLjdlMjk3NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIC0weDEuM2ExY2ZkZTFlNTkwNDcxYWMyZmY1ZWVmZTc0NWEyNDlwLTEsCisgICAgLTB4MS42ODg1YjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuM2ExY2ZkZTFlNTkwNDcxYWMyZmY1ZWVmZTc0NWEyNDlwLTEsCisgICAgMHgxLjY4ODViMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIC0weDEuMmI1YjVkYmU4NDY3OTMwZGYyNGJlNmI5MDQ2ZGRmYWVwLTEsCisgICAgLTB4MS41MmUxZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAweDEuMmI1YjVkYmU4NDY3OTMwZGYyNGJlNmI5MDQ2ZGRmYWVwLTEsCisgICAgMHgxLjUyZTFmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1NworICAgIC0weDEuMWMwM2Y3OTAwMTMxYzdjYjNmYmZiYjVlNmM1MTE1ZWFwLTEsCisgICAgLTB4MS4zZDNlMzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAweDEuMWMwM2Y3OTAwMTMxYzdjYjNmYmZiYjVlNmM1MTE1ZWFwLTEsCisgICAgMHgxLjNkM2UzNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIC0weDEuZWFiN2IyNmY5NTU3NTJlNzhjMDYyY2I2MDg3MDY0ZDlwLTIsCisgICAgLTB4MS4wYTBiMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAweDEuZWFiN2IyNmY5NTU3NTJlNzhjMDYyY2I2MDg3MDY0ZDlwLTIsCisgICAgMHgxLjBhMGIwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIC0weDEuYmIxMmYyZDY1ZGYxM2ZmMzZiNzRlMTIwNjYwMjIyMzZwLTIsCisgICAgLTB4MS5kOGY3MjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuYmIxMmYyZDY1ZGYxM2ZmMzZiNzRlMTIwNjYwMjIyMzZwLTIsCisgICAgMHgxLmQ4ZjcyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM2MworICAgIC0weDEuODk0YWUwNWZlZmU2ZWUxMTY0YzNlNzY5YjJiMWE4NGVwLTIsCisgICAgLTB4MS45ZGQ4M2NwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEuODk0YWUwNWZlZmU2ZWUxMTY0YzNlNzY5YjJiMWE4NGVwLTIsCisgICAgMHgxLjlkZDgzY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIC0weDEuNTU3OWZkNjQ0YTFhMmQ5NmZhZjViYjg4NDQ2NTZkMGNwLTIsCisgICAgLTB4MS42MmI5NThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuNTU3OWZkNjQ0YTFhMmQ5NmZhZjViYjg4NDQ2NTZkMGNwLTIsCisgICAgMHgxLjYyYjk1OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIC0weDEuMWZjNzljYTljYTkyODIzZDAxMzc1MzI4YWM0NzJlZWRwLTIsCisgICAgLTB4MS4yNzlhNzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAweDEuMWZjNzljYTljYTkyODIzZDAxMzc1MzI4YWM0NzJlZWRwLTIsCisgICAgMHgxLjI3OWE3NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM2OQorICAgIC0weDEuZDBkMGY3ZDg2MWM3NTNjMzFmYTI5ZTc0MTQ1ZGMxMjdwLTMsCisgICAgLTB4MS5kOGY3MjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzAKKyAgICAweDEuZDBkMGY3ZDg2MWM3NTNjMzFmYTI5ZTc0MTQ1ZGMxMjdwLTMsCisgICAgMHgxLmQ4ZjcyMHAtMworICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIC0weDEuNWYzZDQwZjUwMDUwMWY4MGJiYTdhNzgxYjE2MTliODVwLTMsCisgICAgLTB4MS42MmI5NThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAweDEuNWYzZDQwZjUwMDUwMWY4MGJiYTdhNzgxYjE2MTliODVwLTMsCisgICAgMHgxLjYyYjk1OHAtMworICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIC0weDEuZDZlMTQyOTE1OWY2ZjAyOTBjZjlmMmZiMjRiYzI2YmRwLTQsCisgICAgLTB4MS5kOGY3MjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAweDEuZDZlMTQyOTE1OWY2ZjAyOTBjZjlmMmZiMjRiYzI2YmRwLTQsCisgICAgMHgxLmQ4ZjcyMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIC0weDEuZDg3MGRjNmYwYzFiM2RhNjZmYjI4MmViNzhjNDcxMzRwLTUsCisgICAgLTB4MS5kOGY3MjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzYKKyAgICAweDEuZDg3MGRjNmYwYzFiM2RhNjZmYjI4MmViNzhjNDcxMzRwLTUsCisgICAgMHgxLmQ4ZjcyMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDM3NworICAgIDB4MS5kODcwZGM2ZjBjMWIzZGE2NmZiMjgyZWI3OGM0NzEzNHAtNSwKKyAgICAweDEuZDhmNzIwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzc4CisgICAgLTB4MS5kODcwZGM2ZjBjMWIzZGE2NmZiMjgyZWI3OGM0NzEzNHAtNSwKKyAgICAtMHgxLmQ4ZjcyMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDM3OQorICAgIDB4MS5kNmUxNDI5MTU5ZjZmMDI5MGNmOWYyZmIyNGJjMjZiZHAtNCwKKyAgICAweDEuZDhmNzIwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgLTB4MS5kNmUxNDI5MTU5ZjZmMDI5MGNmOWYyZmIyNGJjMjZiZHAtNCwKKyAgICAtMHgxLmQ4ZjcyMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM4MQorICAgIDB4MS41ZjNkNDBmNTAwNTAxZjgwYmJhN2E3ODFiMTYxOWI4NXAtMywKKyAgICAweDEuNjJiOTU4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgLTB4MS41ZjNkNDBmNTAwNTAxZjgwYmJhN2E3ODFiMTYxOWI4NXAtMywKKyAgICAtMHgxLjYyYjk1OHAtMworICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIDB4MS5kMGQwZjdkODYxYzc1M2MzMWZhMjllNzQxNDVkYzEyN3AtMywKKyAgICAweDEuZDhmNzIwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgLTB4MS5kMGQwZjdkODYxYzc1M2MzMWZhMjllNzQxNDVkYzEyN3AtMywKKyAgICAtMHgxLmQ4ZjcyMHAtMworICB9LAorICB7IC8vIEVudHJ5IDM4NQorICAgIDB4MS4xZmM3OWNhOWNhOTI4MjNkMDEzNzUzMjhhYzQ3MmVlZHAtMiwKKyAgICAweDEuMjc5YTc0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgLTB4MS4xZmM3OWNhOWNhOTI4MjNkMDEzNzUzMjhhYzQ3MmVlZHAtMiwKKyAgICAtMHgxLjI3OWE3NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM4NworICAgIDB4MS41NTc5ZmQ2NDRhMWEyZDk2ZmFmNWJiODg0NDY1NmQwY3AtMiwKKyAgICAweDEuNjJiOTU4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgLTB4MS41NTc5ZmQ2NDRhMWEyZDk2ZmFmNWJiODg0NDY1NmQwY3AtMiwKKyAgICAtMHgxLjYyYjk1OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM4OQorICAgIDB4MS44OTRhZTA1ZmVmZTZlZTExNjRjM2U3NjliMmIxYTg0ZXAtMiwKKyAgICAweDEuOWRkODNjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzkwCisgICAgLTB4MS44OTRhZTA1ZmVmZTZlZTExNjRjM2U3NjliMmIxYTg0ZXAtMiwKKyAgICAtMHgxLjlkZDgzY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS5iYjEyZjJkNjVkZjEzZmYzNmI3NGUxMjA2NjAyMjIzNnAtMiwKKyAgICAweDEuZDhmNzIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgLTB4MS5iYjEyZjJkNjVkZjEzZmYzNmI3NGUxMjA2NjAyMjIzNnAtMiwKKyAgICAtMHgxLmQ4ZjcyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM5MworICAgIDB4MS5lYWI3YjI2Zjk1NTc1MmU3OGMwNjJjYjYwODcwNjRkOXAtMiwKKyAgICAweDEuMGEwYjAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzk0CisgICAgLTB4MS5lYWI3YjI2Zjk1NTc1MmU3OGMwNjJjYjYwODcwNjRkOXAtMiwKKyAgICAtMHgxLjBhMGIwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5NQorICAgIDB4MS4xYzAzZjc5MDAxMzFjN2NiM2ZiZmJiNWU2YzUxMTVlYXAtMSwKKyAgICAweDEuM2QzZTM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgLTB4MS4xYzAzZjc5MDAxMzFjN2NiM2ZiZmJiNWU2YzUxMTVlYXAtMSwKKyAgICAtMHgxLjNkM2UzNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIDB4MS4yYjViNjM0ZWEyMGJkYzg2ZWUyYTAwNTkxNmU2NDQwYXAtMSwKKyAgICAweDEuNTJlMWY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgLTB4MS4yYjViNjM0ZWEyMGJkYzg2ZWUyYTAwNTkxNmU2NDQwYXAtMSwKKyAgICAtMHgxLjUyZTFmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIDB4MS4zYTFkMDMzYjBiOGFmOTliYTMxMWE1YjJiNjE5MjNmZHAtMSwKKyAgICAweDEuNjg4NWJhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgLTB4MS4zYTFkMDMzYjBiOGFmOTliYTMxMWE1YjJiNjE5MjNmZHAtMSwKKyAgICAtMHgxLjY4ODViYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIDB4MS40ODRiNTNmZTM2NzAwOTVhOGRlNTgwYmQzN2IwOTgzNHAtMSwKKyAgICAweDEuN2UyOTdjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgLTB4MS40ODRiNTNmZTM2NzAwOTVhOGRlNTgwYmQzN2IwOTgzNHAtMSwKKyAgICAtMHgxLjdlMjk3Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIDB4MS41NWU5ODkxMDkwNjdkMDRmYjQ3ZjM4ODMxMTEyMjg0ZXAtMSwKKyAgICAweDEuOTNjZDNlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA0CisgICAgLTB4MS41NWU5ODkxMDkwNjdkMDRmYjQ3ZjM4ODMxMTEyMjg0ZXAtMSwKKyAgICAtMHgxLjkzY2QzZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIDB4MS42MmZiNjcwZmI4OTNjZjE5MWQzOGFiMmYxMDY3YjJkZXAtMSwKKyAgICAweDEuYTk3MXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIC0weDEuNjJmYjY3MGZiODkzY2YxOTFkMzhhYjJmMTA2N2IyZGVwLTEsCisgICAgLTB4MS5hOTcxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA3CisgICAgMHgxLjZmODUyMWY0NGRjODE1NDIwZmE2MTJlZGI2NGNiZGU2cC0xLAorICAgIDB4MS5iZjE0YzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDgKKyAgICAtMHgxLjZmODUyMWY0NGRjODE1NDIwZmE2MTJlZGI2NGNiZGU2cC0xLAorICAgIC0weDEuYmYxNGMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA5CisgICAgMHgxLjdiOGIzZjUyZWQxMDA0ZTdiMmZkZTI2OTY0ZjFjZTcycC0xLAorICAgIDB4MS5kNGI4ODRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAtMHgxLjdiOGIzZjUyZWQxMDA0ZTdiMmZkZTI2OTY0ZjFjZTcycC0xLAorICAgIC0weDEuZDRiODg0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDExCisgICAgMHgxLjg3MTI3ODczMzlkYzFiYjI4YWFjZGJiNzVkMGVkYTQ5cC0xLAorICAgIDB4MS5lYTVjM2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTIKKyAgICAtMHgxLjg3MTI3ODczMzlkYzFiYjI4YWFjZGJiNzVkMGVkYTQ5cC0xLAorICAgIC0weDEuZWE1YzNlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDEzCisgICAgMHgxLmE0MzFmNDFlMjIxZWUyOTkzZTI4NDgxZjM0ZjdjODIycC0xLAorICAgIDB4MS4xMmJkOTJwMAorICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIC0weDEuYTQzMWY0MWUyMjFlZTI5OTNlMjg0ODFmMzRmN2M4MjJwLTEsCisgICAgLTB4MS4xMmJkOTJwMAorICB9LAorICB7IC8vIEVudHJ5IDQxNQorICAgIDB4MS5iNGZlODUzMTA2YzFlZTllZDkyMDYxYTg2YWJlYThmYnAtMSwKKyAgICAweDEuMjU3YjI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAtMHgxLmI0ZmU4NTMxMDZjMWVlOWVkOTIwNjFhODZhYmVhOGZicC0xLAorICAgIC0weDEuMjU3YjI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAweDEuYzQ5ZTQ5ZDhjZTc5OWRmNjA1YzBjMzc1NGYxMmM4MDRwLTEsCisgICAgMHgxLjM4MzhiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgLTB4MS5jNDllNDlkOGNlNzk5ZGY2MDVjMGMzNzU0ZjEyYzgwNHAtMSwKKyAgICAtMHgxLjM4MzhiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDE5CisgICAgMHgxLmQzMjkwOGE1ZTkwMmUyZjlkMWJkZDY0NGVkZWM0ZmVjcC0xLAorICAgIDB4MS40YWY2NDhwMAorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIC0weDEuZDMyOTA4YTVlOTAyZTJmOWQxYmRkNjQ0ZWRlYzRmZWNwLTEsCisgICAgLTB4MS40YWY2NDhwMAorICB9LAorICB7IC8vIEVudHJ5IDQyMQorICAgIDB4MS5lMGI1MjY5ZWQxOGViNmU4ZjFiNDg1NDgzZjk1MGU2OXAtMSwKKyAgICAweDEuNWRiM2RhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAtMHgxLmUwYjUyNjllZDE4ZWI2ZThmMWI0ODU0ODNmOTUwZTY5cC0xLAorICAgIC0weDEuNWRiM2RhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAweDEuZWQ1NzgyOGY4NGNhY2RlYzQ0YjI5ZWFlYjkxMzhhZTdwLTEsCisgICAgMHgxLjcwNzE2Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgLTB4MS5lZDU3ODI4Zjg0Y2FjZGVjNDRiMjllYWViOTEzOGFlN3AtMSwKKyAgICAtMHgxLjcwNzE2Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgMHgxLmY5MjM2ODcwOTU0YzM5MTBhZTQ2ZGI3OGU4ZGFiNGExcC0xLAorICAgIDB4MS44MzJlZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIC0weDEuZjkyMzY4NzA5NTRjMzkxMGFlNDZkYjc4ZThkYWI0YTFwLTEsCisgICAgLTB4MS44MzJlZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIDB4MS4wMjE1NGE5YzJmNWM4YzE0NzIwNzg5YjM5NGE4ZDcxZXAwLAorICAgIDB4MS45NWVjOTBwMAorICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIC0weDEuMDIxNTRhOWMyZjVjOGMxNDcyMDc4OWIzOTRhOGQ3MWVwMCwKKyAgICAtMHgxLjk1ZWM5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDI5CisgICAgMHgxLjA3M2VhMTEzNjhmN2E0Nzk3MmM3YTkwZmM3N2UzYzMzcDAsCisgICAgMHgxLmE4YWExY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDMwCisgICAgLTB4MS4wNzNlYTExMzY4ZjdhNDc5NzJjN2E5MGZjNzdlM2MzM3AwLAorICAgIC0weDEuYThhYTFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAweDEuOTZjNGMyMTM4MzYwN2VjOTA1MTBiMzJhYTE3NWZlMTNwLTEsCisgICAgMHgxLjA0YWZmOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgLTB4MS45NmM0YzIxMzgzNjA3ZWM5MDUxMGIzMmFhMTc1ZmUxM3AtMSwKKyAgICAtMHgxLjA0YWZmOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgMHgxLjk2YzU2NzA3MDdkMDc5Zjk2N2JkZTU2NzI0YTE1MDhjcC0xLAorICAgIDB4MS4wNGIwYTBwMAorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIC0weDEuOTZjNTY3MDcwN2QwNzlmOTY3YmRlNTY3MjRhMTUwOGNwLTEsCisgICAgLTB4MS4wNGIwYTBwMAorICB9LAorICB7IC8vIEVudHJ5IDQzNQorICAgIDB4MS45NmM2MGJmYTIwMDU1YWE2Mzg5OTlkYmE5ZDViOWJhNHAtMSwKKyAgICAweDEuMDRiMTQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzYKKyAgICAtMHgxLjk2YzYwYmZhMjAwNTVhYTYzODk5OWRiYTlkNWI5YmE0cC0xLAorICAgIC0weDEuMDRiMTQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAweDEuOTZjNmIwZWNjYmZmNjkxNzVlYWU3ZDczMGYyZDYzYzhwLTEsCisgICAgMHgxLjA0YjFmMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgLTB4MS45NmM2YjBlY2NiZmY2OTE3NWVhZTdkNzMwZjJkNjNjOHAtMSwKKyAgICAtMHgxLjA0YjFmMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgMHgxLjk2Yzc1NWRmMGJiZWVkOTRiYzBhNzZmZTZmNmVmZTAzcC0xLAorICAgIDB4MS4wNGIyOThwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0MAorICAgIC0weDEuOTZjNzU1ZGYwYmJlZWQ5NGJjMGE3NmZlNmY2ZWZlMDNwLTEsCisgICAgLTB4MS4wNGIyOThwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0MQorICAgIDB4MS45NmM3ZmFkMGRmNDQzMDY2MmRiZTIzYTEyNWZkZjRkY3AtMSwKKyAgICAweDEuMDRiMzQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDIKKyAgICAtMHgxLjk2YzdmYWQwZGY0NDMwNjYyZGJlMjNhMTI1ZmRmNGRjcC0xLAorICAgIC0weDEuMDRiMzQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDMKKyAgICAweDEuOTZjODlmYzI0NjhmNzlkMzhiZGMxOTJlZDFiMTVlYWRwLTEsCisgICAgMHgxLjA0YjNlOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgLTB4MS45NmM4OWZjMjQ2OGY3OWQzOGJkYzE5MmVkMWIxNWVhZHAtMSwKKyAgICAtMHgxLjA0YjNlOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgMHgxLjk2Yzk0NGIzNDFhMTEyMjRhOTc4M2ZjNTUwODg3MzBhcC0xLAorICAgIDB4MS4wNGI0OTBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIC0weDEuOTZjOTQ0YjM0MWExMTIyNGE5NzgzZmM1NTA4ODczMGFwLTEsCisgICAgLTB4MS4wNGI0OTBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NworICAgIDB4MS45NmM5ZTViNjc4ZmYzOTFjMmQzZmEyODQ5YzBhMjVkNHAtMSwKKyAgICAweDEuMDRiNTM0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDgKKyAgICAtMHgxLjk2YzllNWI2NzhmZjM5MWMyZDNmYTI4NDljMGEyNWQ0cC0xLAorICAgIC0weDEuMDRiNTM0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDkKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTEKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTMKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgMHgxLjBjMTUyMWMwMTRkMDFmOGE5ZGRlY2MzNmYxNDMwOTQwcC0xLAorICAgIDB4MS4yNzlhNzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAtMHgxLjBjMTUyMWMwMTRkMDFmOGE5ZGRlY2MzNmYxNDMwOTQwcC0xLAorICAgIC0weDEuMjc5YTcycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDU2CisgICAgMHgxLjBjMTUyMzQwMTRkMGZmYTIzNmQ5OTI2YTY4MGZkODE3cC0xLAorICAgIDB4MS4yNzlhNzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTcKKyAgICAtMHgxLjBjMTUyMzQwMTRkMGZmYTIzNmQ5OTI2YTY4MGZkODE3cC0xLAorICAgIC0weDEuMjc5YTc0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgMHgxLjBjMTUyNGMwMTRkMDkzMmMwY2YwMzUwNjc0YzMwNWNhcC0xLAorICAgIDB4MS4yNzlhNzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTkKKyAgICAtMHgxLjBjMTUyNGMwMTRkMDkzMmMwY2YwMzUwNjc0YzMwNWNhcC0xLAorICAgIC0weDEuMjc5YTc2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgMHgxLjBjMTUyMmUxNzYwMmZlNDMxMzUxYzFjMDhhZTUxZmY3cDAsCisgICAgMHgxLmJiNjdhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgLTB4MS4wYzE1MjJlMTc2MDJmZTQzMTM1MWMxYzA4YWU1MWZmN3AwLAorICAgIC0weDEuYmI2N2FjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICAweDEuMGMxNTIzNjE3NjAzYTZlZGI3MjU1N2U2MzRiNGI4ZTBwMCwKKyAgICAweDEuYmI2N2FlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICAtMHgxLjBjMTUyMzYxNzYwM2E2ZWRiNzI1NTdlNjM0YjRiOGUwcDAsCisgICAgLTB4MS5iYjY3YWVwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2NAorICAgIDB4MS4wYzE1MjNlMTc2MDM3MWU0ODMzMGE2ZGI0Nzk2OGE5M3AwLAorICAgIDB4MS5iYjY3YjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2NQorICAgIC0weDEuMGMxNTIzZTE3NjAzNzFlNDgzMzBhNmRiNDc5NjhhOTNwMCwKKyAgICAtMHgxLmJiNjdiMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgMHgxLmE2NGVlYThmMDNiNzgzM2MxYjc4ZjljZWYyODJjZjBmcC0yLAorICAgIDB4MS5iZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjcKKyAgICAtMHgxLmE2NGVlYThmMDNiNzgzM2MxYjc4ZjljZWYyODJjZjBmcC0yLAorICAgIC0weDEuYmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDY4CisgICAgMHgxLmE2NGVlYzNjYzIzZmNiNmM4NGY5MmJkMjAwM2NlMjZjcC0yLAorICAgIDB4MS5jMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIC0weDEuYTY0ZWVjM2NjMjNmY2I2Yzg0ZjkyYmQyMDAzY2UyNmNwLTIsCisgICAgLTB4MS5jMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIDB4MS5hNjRlZWRlYTgwYzc3NWNlMjcyM2IzN2Q1ZjI3Nzg4ZHAtMiwKKyAgICAweDEuYzAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDcxCisgICAgLTB4MS5hNjRlZWRlYTgwYzc3NWNlMjcyM2IzN2Q1ZjI3Nzg4ZHAtMiwKKyAgICAtMHgxLmMwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ3MgorICAgIDB4MS4zNDVmMDA3MTM3YWVhZDcyMDJkODdhZGM1ZTcwZTUzZXAtMSwKKyAgICAweDEuNWZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDczCisgICAgLTB4MS4zNDVmMDA3MTM3YWVhZDcyMDJkODdhZGM1ZTcwZTUzZXAtMSwKKyAgICAtMHgxLjVmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIDB4MS4zNDVmMDFjY2UzN2JiNDQwODQ0ZGYxYzQ0MDlmZTc3OXAtMSwKKyAgICAweDEuNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzUKKyAgICAtMHgxLjM0NWYwMWNjZTM3YmI0NDA4NDRkZjFjNDQwOWZlNzc5cC0xLAorICAgIC0weDEuNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAweDEuMzQ1ZjAzMjg4ZjQ3NzY3MTU1MmY0MDNmNzczNjNjNmVwLTEsCisgICAgMHgxLjYwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NworICAgIC0weDEuMzQ1ZjAzMjg4ZjQ3NzY3MTU1MmY0MDNmNzczNjNjNmVwLTEsCisgICAgLTB4MS42MDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzgKKyAgICAweDEuYmRlNzBkMmI1Yjk4NjE4MDAwMTZkMjRmMzdlMWYxODJwLTEsCisgICAgMHgxLjJmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDc5CisgICAgLTB4MS5iZGU3MGQyYjViOTg2MTgwMDAxNmQyNGYzN2UxZjE4MnAtMSwKKyAgICAtMHgxLjJmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDgwCisgICAgMHgxLmJkZTcwZWQ0MzlmZTZjYmE5NTM5MWE3ZjQyMWIzODIxcC0xLAorICAgIDB4MS4zMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDgxCisgICAgLTB4MS5iZGU3MGVkNDM5ZmU2Y2JhOTUzOTFhN2Y0MjFiMzgyMXAtMSwKKyAgICAtMHgxLjMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODIKKyAgICAweDEuYmRlNzEwN2QxODYxMzI5ZDc3Zjg1ZTIxYzVjZjk5MWRwLTEsCisgICAgMHgxLjMwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDgzCisgICAgLTB4MS5iZGU3MTA3ZDE4NjEzMjlkNzdmODVlMjFjNWNmOTkxZHAtMSwKKyAgICAtMHgxLjMwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDg0CisgICAgMHgxLjJlNzU3MWY0YWU2MjUxZTVkZGI3NzEzMjUxMDU0OTVlcDAsCisgICAgMHgxLjM3ZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNDg1CisgICAgLTB4MS4yZTc1NzFmNGFlNjI1MWU1ZGRiNzcxMzI1MTA1NDk1ZXAwLAorICAgIC0weDEuMzdmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODYKKyAgICAweDEuMmU3NTcyODgzM2E1NDExNmUzZWY3MzI2YmQ5ODM5cDAsCisgICAgMHgxLjM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODcKKyAgICAtMHgxLjJlNzU3Mjg4MzNhNTQxMTZlM2VmNzMyNmJkOTgzOXAwLAorICAgIC0weDEuMzhwMQorICB9LAorICB7IC8vIEVudHJ5IDQ4OAorICAgIDB4MS4yZTc1NzMxYmI4ZTY5MWRjYTc4OGMwMjMzMmQyODhmMHAwLAorICAgIDB4MS4zODAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIC0weDEuMmU3NTczMWJiOGU2OTFkY2E3ODhjMDIzMzJkMjg4ZjBwMCwKKyAgICAtMHgxLjM4MDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgMHgxLjA2NDBhODA1ZWI1YWM4ZDQ1ZjZlNjI2NDY5Y2ZkMzdjcC00LAorICAgIDB4MS4wNjljOGNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAtMHgxLjA2NDBhODA1ZWI1YWM4ZDQ1ZjZlNjI2NDY5Y2ZkMzdjcC00LAorICAgIC0weDEuMDY5YzhjcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDkyCisgICAgMHgxLjA1MmZhYmVjZGIzMTkyMDA2NjAxZGE1N2I5ZjE4NWJicC0zLAorICAgIDB4MS4wNjljOGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICAtMHgxLjA1MmZhYmVjZGIzMTkyMDA2NjAxZGE1N2I5ZjE4NWJicC0zLAorICAgIC0weDEuMDY5YzhjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgMHgxLjg1MmEyMjkzNzc2ZTNjMmNmNGI3YTIzN2RmYmNhYzljcC0zLAorICAgIDB4MS44OWVhZDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTUKKyAgICAtMHgxLjg1MmEyMjkzNzc2ZTNjMmNmNGI3YTIzN2RmYmNhYzljcC0zLAorICAgIC0weDEuODllYWQycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgMHgxLjAxMTIzYzZlZTc4ZGY5ZmRkZWFlYWFjMGY2NTFmZmZkcC0yLAorICAgIDB4MS4wNjljOGNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTcKKyAgICAtMHgxLjAxMTIzYzZlZTc4ZGY5ZmRkZWFlYWFjMGY2NTFmZmZkcC0yLAorICAgIC0weDEuMDY5YzhjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDk4CisgICAgMHgxLjNkYWE3NGY5MTNlZjk4YmViZGFmNmZmNWZlOWVkOTNlcC0yLAorICAgIDB4MS40ODQzYjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTkKKyAgICAtMHgxLjNkYWE3NGY5MTNlZjk4YmViZGFmNmZmNWZlOWVkOTNlcC0yLAorICAgIC0weDEuNDg0M2IwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTAwCisgICAgMHgxLjc4MGM0ODY5OTFkYWE1ZDcyZmRkYTVjZTU3ZDQ0Mjg5cC0yLAorICAgIDB4MS44OWVhZDRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDEKKyAgICAtMHgxLjc4MGM0ODY5OTFkYWE1ZDcyZmRkYTVjZTU3ZDQ0Mjg5cC0yLAorICAgIC0weDEuODllYWQ0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgMHgxLmFmZmFiMDIzZmU1ODE5YWIxZjRjYWQ2MDA1MWE4MzQ1cC0yLAorICAgIDB4MS5jYjkxZjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICAtMHgxLmFmZmFiMDIzZmU1ODE5YWIxZjRjYWQ2MDA1MWE4MzQ1cC0yLAorICAgIC0weDEuY2I5MWY4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTA0CisgICAgMHgxLmU1NGM4M2VkY2M1Y2FhYTdhMDc0NjQ0YjNkMjE4M2EycC0yLAorICAgIDB4MS4wNjljOGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAtMHgxLmU1NGM4M2VkY2M1Y2FhYTdhMDc0NjQ0YjNkMjE4M2EycC0yLAorICAgIC0weDEuMDY5YzhlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTA2CisgICAgMHgxLjBiZjU2MzFkMjFiNTliZWE2MDM3MDY1YmQxODRjN2ZkcC0xLAorICAgIDB4MS4yNzcwMjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAtMHgxLjBiZjU2MzFkMjFiNTliZWE2MDM3MDY1YmQxODRjN2ZkcC0xLAorICAgIC0weDEuMjc3MDIwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLjIzZTcxYTk1NjVjZDJlNDBlZTM5MTUxNGJkYjRlNmQ1cC0xLAorICAgIDB4MS40ODQzYjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDkKKyAgICAtMHgxLjIzZTcxYTk1NjVjZDJlNDBlZTM5MTUxNGJkYjRlNmQ1cC0xLAorICAgIC0weDEuNDg0M2IycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgMHgxLjNhN2U0MjQ4MWI3MDgwY2VlY2EwNmFjMzc1ZTJhZjVicC0xLAorICAgIDB4MS42OTE3NDRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTEKKyAgICAtMHgxLjNhN2U0MjQ4MWI3MDgwY2VlY2EwNmFjMzc1ZTJhZjVicC0xLAorICAgIC0weDEuNjkxNzQ0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTEyCisgICAgMHgxLjRmYzJjODkxNDkxYjUyODc0Y2UyOTMxZjI0ZTRiNjE5cC0xLAorICAgIDB4MS44OWVhZDZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTMKKyAgICAtMHgxLjRmYzJjODkxNDkxYjUyODc0Y2UyOTMxZjI0ZTRiNjE5cC0xLAorICAgIC0weDEuODllYWQ2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgMHgxLjYzYzA2MjUyMTVhOGZhZmRhY2I2NWVlYmNjNzZkMDkwcC0xLAorICAgIDB4MS5hYWJlNjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTUKKyAgICAtMHgxLjYzYzA2MjUyMTVhOGZhZmRhY2I2NWVlYmNjNzZkMDkwcC0xLAorICAgIC0weDEuYWFiZTY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgMHgxLjc2ODU2NWM1MjhjMWM3NTEyMTgxZWYwMjFhOWJlZmU1cC0xLAorICAgIDB4MS5jYjkxZmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTcKKyAgICAtMHgxLjc2ODU2NWM1MjhjMWM3NTEyMTgxZWYwMjFhOWJlZmU1cC0xLAorICAgIC0weDEuY2I5MWZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTE4CisgICAgMHgxLjg4MjFkNTE3ODUzYTkyOTMxMDFlMzQ1YWQ3NGY2NDkycC0xLAorICAgIDB4MS5lYzY1OGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAtMHgxLjg4MjFkNTE3ODUzYTkyOTMxMDFlMzQ1YWQ3NGY2NDkycC0xLAorICAgIC0weDEuZWM2NThjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgMHgxLjk4YTY5ODNhMWY2OWUyYmE3ODMwZDQ1YjljYWEyODQ3cC0xLAorICAgIDB4MS4wNjljOGVwMAorICB9LAorICB7IC8vIEVudHJ5IDUyMQorICAgIC0weDEuOThhNjk4M2ExZjY5ZTJiYTc4MzBkNDViOWNhYTI4NDdwLTEsCisgICAgLTB4MS4wNjljOGVwMAorICB9LAorICB7IC8vIEVudHJ5IDUyMgorICAgIDB4MS5hODI0ZTc0NDY0NzllODljMjhjM2M5M2FmYzVjNjBhM3AtMSwKKyAgICAweDEuMTcwNjU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjMKKyAgICAtMHgxLmE4MjRlNzQ0NjQ3OWU4OWMyOGMzYzkzYWZjNWM2MGEzcC0xLAorICAgIC0weDEuMTcwNjU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjQKKyAgICAweDEuYjZhZGQ1NjkwNWMxMTg3Nzk4NTE4NGIxZWU1ZDM1M2FwLTEsCisgICAgMHgxLjI3NzAxZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTI1CisgICAgLTB4MS5iNmFkZDU2OTA1YzExODc3OTg1MTg0YjFlZTVkMzUzYXAtMSwKKyAgICAtMHgxLjI3NzAxZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTI2CisgICAgMHgxLmM0NTIwMDg0ZDg4MDg0N2RkYTM2N2JhOGI3YThiMjFkcC0xLAorICAgIDB4MS4zN2Q5ZTZwMAorICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIC0weDEuYzQ1MjAwODRkODgwODQ3ZGRhMzY3YmE4YjdhOGIyMWRwLTEsCisgICAgLTB4MS4zN2Q5ZTZwMAorICB9LAorICB7IC8vIEVudHJ5IDUyOAorICAgIDB4MS5kMTIxNTk4ZWQ1MGZmYWNlNjMyNGFhMWMyMWE3NGQyM3AtMSwKKyAgICAweDEuNDg0M2FlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjkKKyAgICAtMHgxLmQxMjE1OThlZDUwZmZhY2U2MzI0YWExYzIxYTc0ZDIzcC0xLAorICAgIC0weDEuNDg0M2FlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAweDEuZGQyYjAxNGZkZTM1ZDE2NWM0NzRhMTEyMjgyNTgwMmRwLTEsCisgICAgMHgxLjU4YWQ3NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTMxCisgICAgLTB4MS5kZDJiMDE0ZmRlMzVkMTY1YzQ3NGExMTIyODI1ODAyZHAtMSwKKyAgICAtMHgxLjU4YWQ3NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTMyCisgICAgMHgxLmU4N2QzNDgxYWM4ZGQ1NjIxYTNiM2M0ZjkyMWM0NGZhcC0xLAorICAgIDB4MS42OTE3M2VwMAorICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIC0weDEuZTg3ZDM0ODFhYzhkZDU2MjFhM2IzYzRmOTIxYzQ0ZmFwLTEsCisgICAgLTB4MS42OTE3M2VwMAorICB9LAorICB7IC8vIEVudHJ5IDUzNAorICAgIDB4MS5mMzI1NDM1MjBlZjljNWY1ODEwZjZkYjg1ZDdhYWYyOHAtMSwKKyAgICAweDEuNzk4MTA2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAtMHgxLmYzMjU0MzUyMGVmOWM1ZjU4MTBmNmRiODVkN2FhZjI4cC0xLAorICAgIC0weDEuNzk4MTA2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzYKKyAgICAweDEuZmQyZjkxMTZlNTljZWU4YTA0MGU2MmQ0YjUyNDNlMWFwLTEsCisgICAgMHgxLjg5ZWFjZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTM3CisgICAgLTB4MS5mZDJmOTExNmU1OWNlZThhMDQwZTYyZDRiNTI0M2UxYXAtMSwKKyAgICAtMHgxLjg5ZWFjZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgMHgxLjAzNTNjY2RhMmQ2NDRkNzkzOGM0ODI0MTBiYjkxYmIxcDAsCisgICAgMHgxLjlhNTQ5NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTM5CisgICAgLTB4MS4wMzUzY2NkYTJkNjQ0ZDc5MzhjNDgyNDEwYmI5MWJiMXAwLAorICAgIC0weDEuOWE1NDk2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDAKKyAgICAweDEuMDdjYmZkNjcyOGJlMWQ3MjhlNmVmYWE1NjY5NjJhMzFwMCwKKyAgICAweDEuYWFiZTVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDEKKyAgICAtMHgxLjA3Y2JmZDY3MjhiZTFkNzI4ZTZlZmFhNTY2OTYyYTMxcDAsCisgICAgLTB4MS5hYWJlNWVwMAorICB9LAorICB7IC8vIEVudHJ5IDU0MgorICAgIDB4MS4wYzA1M2ZhYzU2MTViZDMzZWE2NjkwOTFmYzdhOTBiY3AwLAorICAgIDB4MS5iYjI4MjZwMAorICB9LAorICB7IC8vIEVudHJ5IDU0MworICAgIC0weDEuMGMwNTNmYWM1NjE1YmQzM2VhNjY5MDkxZmM3YTkwYmNwMCwKKyAgICAtMHgxLmJiMjgyNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ0CisgICAgMHgxLjEwMDQxNjNkODIwMDA1OTNlN2RmNmJjZTNkOGNhYjEwcDAsCisgICAgMHgxLmNiOTFlZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ1CisgICAgLTB4MS4xMDA0MTYzZDgyMDAwNTkzZTdkZjZiY2UzZDhjYWIxMHAwLAorICAgIC0weDEuY2I5MWVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDYKKyAgICAweDEuMTNjY2E3ODNjN2JkMjA4OGI5MDBiNDExM2JhODc4NTJwMCwKKyAgICAweDEuZGJmYmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDcKKyAgICAtMHgxLjEzY2NhNzgzYzdiZDIwODhiOTAwYjQxMTNiYTg3ODUycDAsCisgICAgLTB4MS5kYmZiYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIDB4MS4xNzYyYzQ3ZjIxMGY1NDVhYzlhOGE3ZTAyNDFlNzI1OXAwLAorICAgIDB4MS5lYzY1N2VwMAorICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIC0weDEuMTc2MmM0N2YyMTBmNTQ1YWM5YThhN2UwMjQxZTcyNTlwMCwKKyAgICAtMHgxLmVjNjU3ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUwCisgICAgMHgxLjFhYzllZjYwMWMyZjk3ZjdiMGYwYTZkOTNkZDgzNGVlcDAsCisgICAgMHgxLmZjY2Y0NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUxCisgICAgLTB4MS4xYWM5ZWY2MDFjMmY5N2Y3YjBmMGE2ZDkzZGQ4MzRlZXAwLAorICAgIC0weDEuZmNjZjQ2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTIKKyAgICAweDEuMWUwNTYyM2RmYjRjYzNjNmJhYTYyZTRiYzI3OWE5YTRwMCwKKyAgICAweDEuMDY5Yzg4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTMKKyAgICAtMHgxLjFlMDU2MjNkZmI0Y2MzYzZiYWE2MmU0YmMyNzlhOWE0cDAsCisgICAgLTB4MS4wNjljODhwMQorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS4yMTE4MTM4NDU4OGJlNjA3MzJkMDE4NDhiYzcxNzAwYnAwLAorICAgIDB4MS4wZWQxNmNwMQorICB9LAorICB7IC8vIEVudHJ5IDU1NQorICAgIC0weDEuMjExODEzODQ1ODhiZTYwNzMyZDAxODQ4YmM3MTcwMGJwMCwKKyAgICAtMHgxLjBlZDE2Y3AxCisgIH0sCisgIHsgLy8gRW50cnkgNTU2CisgICAgMHgxLjI0MDRiZGU4ZTI1NTJkZTNjYzUwMzM0ZDc4YjVkYzRhcDAsCisgICAgMHgxLjE3MDY1MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgLTB4MS4yNDA0YmRlOGUyNTUyZGUzY2M1MDMzNGQ3OGI1ZGM0YXAwLAorICAgIC0weDEuMTcwNjUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTgKKyAgICAweDEuMjZjZGU0MDYxYzc1NzczOGUyY2U3ZjIxNTIyYjg5ZGFwMCwKKyAgICAweDEuMWYzYjM0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTkKKyAgICAtMHgxLjI2Y2RlNDA2MWM3NTc3MzhlMmNlN2YyMTUyMmI4OWRhcDAsCisgICAgLTB4MS4xZjNiMzRwMQorICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDB4MS4yOTc1ZDU4ZjVlOWJkZmUxODk5ZWYyMWQ5OWM0OWIyYnAwLAorICAgIDB4MS4yNzcwMThwMQorICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIC0weDEuMjk3NWQ1OGY1ZTliZGZlMTg5OWVmMjFkOTljNDliMmJwMCwKKyAgICAtMHgxLjI3NzAxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTYyCisgICAgMHgxLjJiZmViM2I5YmJlYTgzY2RlNTZmYmY5NTFlODcxNDg3cDAsCisgICAgMHgxLjJmYTRmY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNTYzCisgICAgLTB4MS4yYmZlYjNiOWJiZWE4M2NkZTU2ZmJmOTUxZTg3MTQ4N3AwLAorICAgIC0weDEuMmZhNGZjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjQKKyAgICAweDEuMmU2YTc1NDViYTg4NjkyYTQ4ZDU2ZTU1ODE4NzMyMTFwMCwKKyAgICAweDEuMzdkOWUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjUKKyAgICAtMHgxLjJlNmE3NTQ1YmE4ODY5MmE0OGQ1NmU1NTgxODczMjExcDAsCisgICAgLTB4MS4zN2Q5ZTBwMQorICB9LAorICB7IC8vIEVudHJ5IDU2NgorICAgIDB4MS4zMGJhZWEyZjYwYzVhNTljYzZkMmU5NDEzMGY5NTc2OHAwLAorICAgIDB4MS40MDBlYzRwMQorICB9LAorICB7IC8vIEVudHJ5IDU2NworICAgIC0weDEuMzBiYWVhMmY2MGM1YTU5Y2M2ZDJlOTQxMzBmOTU3NjhwMCwKKyAgICAtMHgxLjQwMGVjNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTY4CisgICAgMHgxLjMyZjFiZjBhYTkyYzhhNjVhNjk0ODY0M2ZkY2ZkMjU1cDAsCisgICAgMHgxLjQ4NDNhOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTY5CisgICAgLTB4MS4zMmYxYmYwYWE5MmM4YTY1YTY5NDg2NDNmZGNmZDI1NXAwLAorICAgIC0weDEuNDg0M2E4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzAKKyAgICAweDEuMzUxMDgwMTJhMTEzYzA1YWFhYjJkMTQ2ZjEzOTNmNWNwMCwKKyAgICAweDEuNTA3ODhjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzEKKyAgICAtMHgxLjM1MTA4MDEyYTExM2MwNWFhYWIyZDE0NmYxMzkzZjVjcDAsCisgICAgLTB4MS41MDc4OGNwMQorICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIDB4MS4zNzE4OWJmMTZhNzEyMDFhZGFmNWI4NzA4NDU5ODI4ZXAwLAorICAgIDB4MS41OGFkNzBwMQorICB9LAorICB7IC8vIEVudHJ5IDU3MworICAgIC0weDEuMzcxODliZjE2YTcxMjAxYWRhZjViODcwODQ1OTgyOGVwMCwKKyAgICAtMHgxLjU4YWQ3MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTc0CisgICAgMHgxLjM5MGI2NjQ3MjY4ZTRmZjdhN2ZjOWFkM2QzMTVjYTY4cDAsCisgICAgMHgxLjYwZTI1NHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTc1CisgICAgLTB4MS4zOTBiNjY0NzI2OGU0ZmY3YTdmYzlhZDNkMzE1Y2E2OHAwLAorICAgIC0weDEuNjBlMjU0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzYKKyAgICAweDEuM2FlYTE5ZjU4MmNmYjJmYzdmMDFlNjkwYjllNjFjMzJwMCwKKyAgICAweDEuNjkxNzM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzcKKyAgICAtMHgxLjNhZWExOWY1ODJjZmIyZmM3ZjAxZTY5MGI5ZTYxYzMycDAsCisgICAgLTB4MS42OTE3MzhwMQorICB9LAorICB7IC8vIEVudHJ5IDU3OAorICAgIDB4MS4zY2I1ZGIzNTQ1YTk1NzdiOWQwNTdjZTgyZGM2MDhjNnAwLAorICAgIDB4MS43MTRjMWNwMQorICB9LAorICB7IC8vIEVudHJ5IDU3OQorICAgIC0weDEuM2NiNWRiMzU0NWE5NTc3YjlkMDU3Y2U4MmRjNjA4YzZwMCwKKyAgICAtMHgxLjcxNGMxY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNTgwCisgICAgMHgxLjNlNmZiOTdhZDdhNjZiYTA0YzdiMDFkMTY0NjYwMmUxcDAsCisgICAgMHgxLjc5ODFwMQorICB9LAorICB7IC8vIEVudHJ5IDU4MQorICAgIC0weDEuM2U2ZmI5N2FkN2E2NmJhMDRjN2IwMWQxNjQ2NjAyZTFwMCwKKyAgICAtMHgxLjc5ODFwMQorICB9LAorICB7IC8vIEVudHJ5IDU4MgorICAgIDB4MS40MDE4YjEyZTYwM2Q2OTBkZmQ4OTE0NGNhMzU1YWQ3Y3AwLAorICAgIDB4MS44MWI1ZTRwMQorICB9LAorICB7IC8vIEVudHJ5IDU4MworICAgIC0weDEuNDAxOGIxMmU2MDNkNjkwZGZkODkxNDRjYTM1NWFkN2NwMCwKKyAgICAtMHgxLjgxYjVlNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTg0CisgICAgMHgxLjQxYjFhZDNiYWI4YjU3OWM3MWNlYjg5Y2IyM2E0MTkxcDAsCisgICAgMHgxLjg5ZWFjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTg1CisgICAgLTB4MS40MWIxYWQzYmFiOGI1NzljNzFjZWI4OWNiMjNhNDE5MXAwLAorICAgIC0weDEuODllYWM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODYKKyAgICAtMHgxLjY4MDdhOWVjYjYxZTcxNzlkNDdiODZhM2Q3ZDg5NjE0cDAsCisgICAgLTB4MS44MWI1ZWVwMgorICB9LAorICB7IC8vIEVudHJ5IDU4NworICAgIDB4MS42ODA3YTllY2I2MWU3MTc5ZDQ3Yjg2YTNkN2Q4OTYxNHAwLAorICAgIDB4MS44MWI1ZWVwMgorICB9LAorICB7IC8vIEVudHJ5IDU4OAorICAgIC0weDEuNjYzMWUxZTU5MGM4OTQzYmI5ODA4Mjc1ODU4NDE0MDFwMCwKKyAgICAtMHgxLjcxNGMyNnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTg5CisgICAgMHgxLjY2MzFlMWU1OTBjODk0M2JiOTgwODI3NTg1ODQxNDAxcDAsCisgICAgMHgxLjcxNGMyNnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTkwCisgICAgLTB4MS42NDMxYmJkYmJiMjNiMDVhNjI5NDY5MGNjOGZlNGFmYnAwLAorICAgIC0weDEuNjBlMjVlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTEKKyAgICAweDEuNjQzMWJiZGJiYjIzYjA1YTYyOTQ2OTBjYzhmZTRhZmJwMCwKKyAgICAweDEuNjBlMjVlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTIKKyAgICAtMHgxLjYyMDE0OWJhMDViM2FiZDdjNzQ0ODk4YjM5NWZmMDc4cDAsCisgICAgLTB4MS41MDc4OTZwMgorICB9LAorICB7IC8vIEVudHJ5IDU5MworICAgIDB4MS42MjAxNDliYTA1YjNhYmQ3Yzc0NDg5OGIzOTVmZjA3OHAwLAorICAgIDB4MS41MDc4OTZwMgorICB9LAorICB7IC8vIEVudHJ5IDU5NAorICAgIC0weDEuNWY5OTc4NGMxNmFlNmFkZTA5Nzg0OTg5ZGU5MGY5Y2VwMCwKKyAgICAtMHgxLjQwMGVjZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNTk1CisgICAgMHgxLjVmOTk3ODRjMTZhZTZhZGUwOTc4NDk4OWRlOTBmOWNlcDAsCisgICAgMHgxLjQwMGVjZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNTk2CisgICAgLTB4MS41Y2YxYzYxNWY5NTRhMWMxODNmYTlkZjg3NDUzOGVlOXAwLAorICAgIC0weDEuMmZhNTA2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAweDEuNWNmMWM2MTVmOTU0YTFjMTgzZmE5ZGY4NzQ1MzhlZTlwMCwKKyAgICAweDEuMmZhNTA2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTgKKyAgICAtMHgxLjU5ZmZlMzhiNzE4OThlZDc5OThiMzM1MDg1ZTY1OTY0cDAsCisgICAgLTB4MS4xZjNiM2VwMgorICB9LAorICB7IC8vIEVudHJ5IDU5OQorICAgIDB4MS41OWZmZTM4YjcxODk4ZWQ3OTk4YjMzNTA4NWU2NTk2NHAwLAorICAgIDB4MS4xZjNiM2VwMgorICB9LAorICB7IC8vIEVudHJ5IDYwMAorICAgIC0weDEuNTZiNzM0M2VlNjY3MWJmMTM3YzMwNjBkNmJiYWM5MGJwMCwKKyAgICAtMHgxLjBlZDE3NnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjAxCisgICAgMHgxLjU2YjczNDNlZTY2NzFiZjEzN2MzMDYwZDZiYmFjOTBicDAsCisgICAgMHgxLjBlZDE3NnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjAyCisgICAgLTB4MS41MzA4MjRiYTkyMjhmOTA2Y2Y2ZmJiYjExNDA3MzIxMnAwLAorICAgIC0weDEuZmNjZjVhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAweDEuNTMwODI0YmE5MjI4ZjkwNmNmNmZiYmIxMTQwNzMyMTJwMCwKKyAgICAweDEuZmNjZjVhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDQKKyAgICAtMHgxLjRlZGY0NDliMzhjYTNhMjI0NzZmNjJjNzM0OWJiNzczcDAsCisgICAgLTB4MS5kYmZiYzhwMQorICB9LAorICB7IC8vIEVudHJ5IDYwNQorICAgIDB4MS40ZWRmNDQ5YjM4Y2EzYTIyNDc2ZjYyYzczNDliYjc3M3AwLAorICAgIDB4MS5kYmZiYzhwMQorICB9LAorICB7IC8vIEVudHJ5IDYwNgorICAgIC0weDEuNGEyNDA4ZjUwODEzMWEzNTFlNzViZDY1YTU2MzE4MGFwMCwKKyAgICAtMHgxLmJiMjgzNnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjA3CisgICAgMHgxLjRhMjQwOGY1MDgxMzFhMzUxZTc1YmQ2NWE1NjMxODBhcDAsCisgICAgMHgxLmJiMjgzNnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjA4CisgICAgLTB4MS40NGI3MTI5NTNmODVmNzIzZThiOTM0OGM5ZjYwMGE4Y3AwLAorICAgIC0weDEuOWE1NGE0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDkKKyAgICAweDEuNDRiNzEyOTUzZjg1ZjcyM2U4YjkzNDhjOWY2MDBhOGNwMCwKKyAgICAweDEuOWE1NGE0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTAKKyAgICAtMHgxLjNlNmZiZDMxMjI0MThlYTBhYzMwN2EyZWQxN2MwZDI4cDAsCisgICAgLTB4MS43OTgxMTJwMQorICB9LAorICB7IC8vIEVudHJ5IDYxMQorICAgIDB4MS4zZTZmYmQzMTIyNDE4ZWEwYWMzMDdhMmVkMTdjMGQyOHAwLAorICAgIDB4MS43OTgxMTJwMQorICB9LAorICB7IC8vIEVudHJ5IDYxMgorICAgIC0weDEuMzcxODlmZDIzZjlhN2FjMThmZjRlNGM1ODIxZTgwYmZwMCwKKyAgICAtMHgxLjU4YWQ4MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjEzCisgICAgMHgxLjM3MTg5ZmQyM2Y5YTdhYzE4ZmY0ZTRjNTgyMWU4MGJmcDAsCisgICAgMHgxLjU4YWQ4MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjE0CisgICAgLTB4MS4yZTZhNzk0ZjM3NTI5ZDdiOGM3ODQzODA5NGRmODU2MHAwLAorICAgIC0weDEuMzdkOWVlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAweDEuMmU2YTc5NGYzNzUyOWQ3YjhjNzg0MzgwOTRkZjg1NjBwMCwKKyAgICAweDEuMzdkOWVlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTYKKyAgICAtMHgxLjI0MDRjMjE1MGU3NmY2ZDIzZTRhNTE0Yzc3ODM5OTI2cDAsCisgICAgLTB4MS4xNzA2NWNwMQorICB9LAorICB7IC8vIEVudHJ5IDYxNworICAgIDB4MS4yNDA0YzIxNTBlNzZmNmQyM2U0YTUxNGM3NzgzOTkyNnAwLAorICAgIDB4MS4xNzA2NWNwMQorICB9LAorICB7IC8vIEVudHJ5IDYxOAorICAgIC0weDEuMTc2MmM5MmQ4OWY3YjUxNmUzOGIxZmFkYmM3YzE3MjVwMCwKKyAgICAtMHgxLmVjNjU5NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjE5CisgICAgMHgxLjE3NjJjOTJkODlmN2I1MTZlMzhiMWZhZGJjN2MxNzI1cDAsCisgICAgMHgxLmVjNjU5NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjIwCisgICAgLTB4MS4wN2NjMDIyYTk5OGNkMzYzNTA3MzY3NzU2MjlmNzQxMXAwLAorICAgIC0weDEuYWFiZTcwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICAweDEuMDdjYzAyMmE5OThjZDM2MzUwNzM2Nzc1NjI5Zjc0MTFwMCwKKyAgICAweDEuYWFiZTcwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjIKKyAgICAtMHgxLmU4N2QzZGRmNWQ5NzRkMDhmNGRkNThmZTJjYjYyYTc1cC0xLAorICAgIC0weDEuNjkxNzRjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjMKKyAgICAweDEuZTg3ZDNkZGY1ZDk3NGQwOGY0ZGQ1OGZlMmNiNjJhNzVwLTEsCisgICAgMHgxLjY5MTc0Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjI0CisgICAgLTB4MS5iNmFkZGRmY2I2MDc5MWJkZmEyOWU0M2FlMjM3NTI2Y3AtMSwKKyAgICAtMHgxLjI3NzAyOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjI1CisgICAgMHgxLmI2YWRkZGZjYjYwNzkxYmRmYTI5ZTQzYWUyMzc1MjZjcC0xLAorICAgIDB4MS4yNzcwMjhwMAorICB9LAorICB7IC8vIEVudHJ5IDYyNgorICAgIC0weDEuNzY4NTZlYTE4ZGExOTUxNzZlMGVjZTJjYmE5NDcwYTlwLTEsCisgICAgLTB4MS5jYjkyMGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjcKKyAgICAweDEuNzY4NTZlYTE4ZGExOTUxNzZlMGVjZTJjYmE5NDcwYTlwLTEsCisgICAgMHgxLmNiOTIwYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDYyOAorICAgIC0weDEuMjNlNzI3NTcwNTdjNTgwOTM3OWEzMTM5YmE4Nzc5MWRwLTEsCisgICAgLTB4MS40ODQzYzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjkKKyAgICAweDEuMjNlNzI3NTcwNTdjNTgwOTM3OWEzMTM5YmE4Nzc5MWRwLTEsCisgICAgMHgxLjQ4NDNjNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYzMAorICAgIC0weDEuNzgwYzZiNDE5MGE0YzAyZWM2ODZkODY1ZDU5ODY5YzhwLTIsCisgICAgLTB4MS44OWVhZmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzEKKyAgICAweDEuNzgwYzZiNDE5MGE0YzAyZWM2ODZkODY1ZDU5ODY5YzhwLTIsCisgICAgMHgxLjg5ZWFmY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDYzMgorICAgIC0weDEuMDUyZmZlOTBmZWIyM2MxMDE2ZDg5YzNmMDFiYzllMWZwLTMsCisgICAgLTB4MS4wNjljZTBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzMKKyAgICAweDEuMDUyZmZlOTBmZWIyM2MxMDE2ZDg5YzNmMDFiYzllMWZwLTMsCisgICAgMHgxLjA2OWNlMHAtMworICB9LAorICB7IC8vIEVudHJ5IDYzNAorICAgIDB4MS4wNTJmNTk0OGI2ZDVmODYwYmQzMzgxNWZiNDI5MjY3OXAtMywKKyAgICAweDEuMDY5YzM4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjM1CisgICAgLTB4MS4wNTJmNTk0OGI2ZDVmODYwYmQzMzgxNWZiNDI5MjY3OXAtMywKKyAgICAtMHgxLjA2OWMzOHAtMworICB9LAorICB7IC8vIEVudHJ5IDYzNgorICAgIDB4MS43ODBjMjIxNTkyMjFkMTk3NmNjNThjMDY3YzcxMmMxMnAtMiwKKyAgICAweDEuODllYWE4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjM3CisgICAgLTB4MS43ODBjMjIxNTkyMjFkMTk3NmNjNThjMDY3YzcxMmMxMnAtMiwKKyAgICAtMHgxLjg5ZWFhOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDYzOAorICAgIDB4MS4yM2U3MDk5MzNhZWMwMTlkYWY5YTY1M2FmYTM3YmQ1NnAtMSwKKyAgICAweDEuNDg0MzlhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjM5CisgICAgLTB4MS4yM2U3MDk5MzNhZWMwMTlkYWY5YTY1M2FmYTM3YmQ1NnAtMSwKKyAgICAtMHgxLjQ4NDM5YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY0MAorICAgIDB4MS43Njg1NTc1ZjA0M2ZjOTM3NTcwZmJjZDY3OTIxOGE5ZXAtMSwKKyAgICAweDEuY2I5MWUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQxCisgICAgLTB4MS43Njg1NTc1ZjA0M2ZjOTM3NTcwZmJjZDY3OTIxOGE5ZXAtMSwKKyAgICAtMHgxLmNiOTFlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIDB4MS5iNmFkY2NkNTU1MjViOWM1NTAzZTBjZGM4ZDM3ZTkwZXAtMSwKKyAgICAweDEuMjc3MDE0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDMKKyAgICAtMHgxLmI2YWRjY2Q1NTUyNWI5YzU1MDNlMGNkYzhkMzdlOTBlcC0xLAorICAgIC0weDEuMjc3MDE0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDQKKyAgICAweDEuZTg3ZDMwN2UxNzYzZTYxODlmMzNhZGZiMGU4MDY4YzlwLTEsCisgICAgMHgxLjY5MTczOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQ1CisgICAgLTB4MS5lODdkMzA3ZTE3NjNlNjE4OWYzM2FkZmIwZTgwNjhjOXAtMSwKKyAgICAtMHgxLjY5MTczOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQ2CisgICAgMHgxLjA3Y2JmY2RmYWE2OTk2YjEyYjQ0NDM0ZGNhMzYzNWU5cDAsCisgICAgMHgxLmFhYmU1Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjQ3CisgICAgLTB4MS4wN2NiZmNkZmFhNjk5NmIxMmI0NDQzNGRjYTM2MzVlOXAwLAorICAgIC0weDEuYWFiZTVjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDgKKyAgICAweDEuMTc2MmM0ZWMxMzU2N2JkN2Y1Zjc5OWI2NTAxMzllZjJwMCwKKyAgICAweDEuZWM2NTgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDkKKyAgICAtMHgxLjE3NjJjNGVjMTM1NjdiZDdmNWY3OTliNjUwMTM5ZWYycDAsCisgICAgLTB4MS5lYzY1ODBwMAorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIDB4MS4yNDA0YmU5YWU5YjU2YTFlN2I5M2FhYjQyOWE0MzdkY3AwLAorICAgIDB4MS4xNzA2NTJwMQorICB9LAorICB7IC8vIEVudHJ5IDY1MQorICAgIC0weDEuMjQwNGJlOWFlOWI1NmExZTdiOTNhYWI0MjlhNDM3ZGNwMCwKKyAgICAtMHgxLjE3MDY1MnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjUyCisgICAgMHgxLjJlNmE3NjZkMDJjYTQ5NzY2YjhjNWUwNjRlZGQzMzBhcDAsCisgICAgMHgxLjM3ZDllNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjUzCisgICAgLTB4MS4yZTZhNzY2ZDAyY2E0OTc2NmI4YzVlMDY0ZWRkMzMwYXAwLAorICAgIC0weDEuMzdkOWU0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTQKKyAgICAweDEuMzcxODlkNjViYTZhMjAzNjcxYjc4MjYzZWE1OTE1MGVwMCwKKyAgICAweDEuNThhZDc2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTUKKyAgICAtMHgxLjM3MTg5ZDY1YmE2YTIwMzY3MWI3ODI2M2VhNTkxNTBlcDAsCisgICAgLTB4MS41OGFkNzZwMQorICB9LAorICB7IC8vIEVudHJ5IDY1NgorICAgIDB4MS4zZTZmYmIyMTMxYmM4M2ZiN2JiMTY4MDUyOGQ4ODEyNXAwLAorICAgIDB4MS43OTgxMDhwMQorICB9LAorICB7IC8vIEVudHJ5IDY1NworICAgIC0weDEuM2U2ZmJiMjEzMWJjODNmYjdiYjE2ODA1MjhkODgxMjVwMCwKKyAgICAtMHgxLjc5ODEwOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjU4CisgICAgMHgxLjQ0YjcxMGNmMzU3ZWVmZDUxMzM1MDI0OTQ1NDY5MmZlcDAsCisgICAgMHgxLjlhNTQ5YXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjU5CisgICAgLTB4MS40NGI3MTBjZjM1N2VlZmQ1MTMzNTAyNDk0NTQ2OTJmZXAwLAorICAgIC0weDEuOWE1NDlhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjAKKyAgICAweDEuNGEyNDA3NmFjNzQ0YzVkMjA2YzQzNjJmMGE4MWM1MzlwMCwKKyAgICAweDEuYmIyODJjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjEKKyAgICAtMHgxLjRhMjQwNzZhYzc0NGM1ZDIwNmM0MzYyZjBhODFjNTM5cDAsCisgICAgLTB4MS5iYjI4MmNwMQorICB9LAorICB7IC8vIEVudHJ5IDY2MgorICAgIDB4MS40ZWRmNDM0MWVlYjE5MGYzOGQwZjYyOGRmN2MwZjM5Y3AwLAorICAgIDB4MS5kYmZiYmVwMQorICB9LAorICB7IC8vIEVudHJ5IDY2MworICAgIC0weDEuNGVkZjQzNDFlZWIxOTBmMzhkMGY2MjhkZjdjMGYzOWNwMCwKKyAgICAtMHgxLmRiZmJiZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjY0CisgICAgMHgxLjUzMDgyMzg5ZDRkZTBiZjAwMzNjOTZlMDJlNGNlOTE1cDAsCisgICAgMHgxLmZjY2Y1MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjY1CisgICAgLTB4MS41MzA4MjM4OWQ0ZGUwYmYwMDMzYzk2ZTAyZTRjZTkxNXAwLAorICAgIC0weDEuZmNjZjUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjYKKyAgICAweDEuNTZiNzMyZjllYmY1OTJjMGM5NDA5NmJjMWVkMjhhNmJwMCwKKyAgICAweDEuMGVkMTcwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjcKKyAgICAtMHgxLjU2YjczMmY5ZWJmNTkyYzBjOTQwOTZiYzFlZDI4YTZicDAsCisgICAgLTB4MS4wZWQxNzBwMgorICB9LAorICB7IC8vIEVudHJ5IDY2OAorICAgIDB4MS41OWZmZTI2OGQ2ODAxYWNlMDNmM2QxOTVkY2ZlN2IwM3AwLAorICAgIDB4MS4xZjNiMzhwMgorICB9LAorICB7IC8vIEVudHJ5IDY2OQorICAgIC0weDEuNTlmZmUyNjhkNjgwMWFjZTAzZjNkMTk1ZGNmZTdiMDNwMCwKKyAgICAtMHgxLjFmM2IzOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjcwCisgICAgMHgxLjVjZjFjNTEwYTJjNTEyMzFjNzdhZWI1YmNmZGIxOGY2cDAsCisgICAgMHgxLjJmYTVwMgorICB9LAorICB7IC8vIEVudHJ5IDY3MQorICAgIC0weDEuNWNmMWM1MTBhMmM1MTIzMWM3N2FlYjViY2ZkYjE4ZjZwMCwKKyAgICAtMHgxLjJmYTVwMgorICB9LAorICB7IC8vIEVudHJ5IDY3MgorICAgIDB4MS41Zjk5Nzc1ZmRjZWExOWQwMjg4OTM3NGQ4OTA2NjRiNXAwLAorICAgIDB4MS40MDBlYzhwMgorICB9LAorICB7IC8vIEVudHJ5IDY3MworICAgIC0weDEuNWY5OTc3NWZkY2VhMTlkMDI4ODkzNzRkODkwNjY0YjVwMCwKKyAgICAtMHgxLjQwMGVjOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjc0CisgICAgMHgxLjYyMDE0OGUzN2VlZWVkMDU2YWFkNDFlNzlhNjJjMmMxcDAsCisgICAgMHgxLjUwNzg5MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjc1CisgICAgLTB4MS42MjAxNDhlMzdlZWVlZDA1NmFhZDQxZTc5YTYyYzJjMXAwLAorICAgIC0weDEuNTA3ODkwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzYKKyAgICAweDEuNjQzMWJiMTgxMzYxMjE2Mjc1YjBkMjAzYTkzMzFjMTNwMCwKKyAgICAweDEuNjBlMjU4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzcKKyAgICAtMHgxLjY0MzFiYjE4MTM2MTIxNjI3NWIwZDIwM2E5MzMxYzEzcDAsCisgICAgLTB4MS42MGUyNThwMgorICB9LAorICB7IC8vIEVudHJ5IDY3OAorICAgIDB4MS42NjMxZTEzMjZiNjRmMDI4MmM0NjVhZjkwZDlkM2JkOXAwLAorICAgIDB4MS43MTRjMjBwMgorICB9LAorICB7IC8vIEVudHJ5IDY3OQorICAgIC0weDEuNjYzMWUxMzI2YjY0ZjAyODJjNDY1YWY5MGQ5ZDNiZDlwMCwKKyAgICAtMHgxLjcxNGMyMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjgwCisgICAgMHgxLjY4MDdhOTQ4MTY2Y2FhYzg4MWFkNjc2MTI3NjMxOTAzcDAsCisgICAgMHgxLjgxYjVlOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjgxCisgICAgLTB4MS42ODA3YTk0ODE2NmNhYWM4ODFhZDY3NjEyNzYzMTkwM3AwLAorICAgIC0weDEuODFiNWU4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODIKKyAgICAweDEuZWY2NTJiZDBhOTBjNzI0YjExYTU2ZDJmZDY3MWFmMzFwLTUsCisgICAgMHgxLmVmZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDY4MworICAgIC0weDEuZWY2NTJiZDBhOTBjNzI0YjExYTU2ZDJmZDY3MWFmMzFwLTUsCisgICAgLTB4MS5lZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODQKKyAgICAweDEuZWY2NTJkY2VjYTRkYmViMTRlZTkwNzE1OWRkMWMzNjlwLTUsCisgICAgMHgxLmYwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjg1CisgICAgLTB4MS5lZjY1MmRjZWNhNGRiZWIxNGVlOTA3MTU5ZGQxYzM2OXAtNSwKKyAgICAtMHgxLmYwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjg2CisgICAgMHgxLmVmNjUyZmNjZWI4ZjA3M2VjN2VjNGUwZDIwYmI3YmZicC01LAorICAgIDB4MS5mMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODcKKyAgICAtMHgxLmVmNjUyZmNjZWI4ZjA3M2VjN2VjNGUwZDIwYmI3YmZicC01LAorICAgIC0weDEuZjAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgNjg4CisgICAgMHgxLmY1N2FhZTJlNjY4ZmNkOTUzZjk1YzE0MDBiNjZmNjlhcC00LAorICAgIDB4MS5mN2ZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODkKKyAgICAtMHgxLmY1N2FhZTJlNjY4ZmNkOTUzZjk1YzE0MDBiNjZmNjlhcC00LAorICAgIC0weDEuZjdmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjkwCisgICAgMHgxLmY1N2FiMDI2YzNhOGZjN2IyNzhhMDZlOWQwYzQzZTNhcC00LAorICAgIDB4MS5mOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDY5MQorICAgIC0weDEuZjU3YWIwMjZjM2E4ZmM3YjI3OGEwNmU5ZDBjNDNlM2FwLTQsCisgICAgLTB4MS5mOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDY5MgorICAgIDB4MS5mNTdhYjIxZjIwYzIxYzE4NmY5NjAzODQzNzFjYjE3NHAtNCwKKyAgICAweDEuZjgwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgNjkzCisgICAgLTB4MS5mNTdhYjIxZjIwYzIxYzE4NmY5NjAzODQzNzFjYjE3NHAtNCwKKyAgICAtMHgxLmY4MDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDY5NAorICAgIDB4MS40OTIzMDA1OWU3YzQ1YWRiOGVjNjdiZmI4ZThhNjU2YnAtMywKKyAgICAweDEuNGJmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjk1CisgICAgLTB4MS40OTIzMDA1OWU3YzQ1YWRiOGVjNjdiZmI4ZThhNjU2YnAtMywKKyAgICAtMHgxLjRiZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDY5NgorICAgIDB4MS40OTIzMDI0Y2NiNzgwZjVhN2UyZWFkNGUyYmQyNGQzM3AtMywKKyAgICAweDEuNGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTcKKyAgICAtMHgxLjQ5MjMwMjRjY2I3ODBmNWE3ZTJlYWQ0ZTJiZDI0ZDMzcC0zLAorICAgIC0weDEuNGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTgKKyAgICAweDEuNDkyMzA0M2ZhZjJiOWM3MjhjYTY2MDExYWVmYTVkOTVwLTMsCisgICAgMHgxLjRjMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDY5OQorICAgIC0weDEuNDkyMzA0M2ZhZjJiOWM3MjhjYTY2MDExYWVmYTVkOTVwLTMsCisgICAgLTB4MS40YzAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDAKKyAgICAweDEuMmE3M2E1NDgxNTM2YmM1YWYwNmI2ZGY0NTMxZjJjNDVwLTIsCisgICAgMHgxLjMzMzMzMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDcwMQorICAgIC0weDEuMmE3M2E1NDgxNTM2YmM1YWYwNmI2ZGY0NTMxZjJjNDVwLTIsCisgICAgLTB4MS4zMzMzMzJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDIKKyAgICAweDEuMmE3M2E3MWRjZWMxNWFlNWVhZDAwYWRkNDI5NGU3NTRwLTIsCisgICAgMHgxLjMzMzMzNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDcwMworICAgIC0weDEuMmE3M2E3MWRjZWMxNWFlNWVhZDAwYWRkNDI5NGU3NTRwLTIsCisgICAgLTB4MS4zMzMzMzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDQKKyAgICAweDEuMmE3M2E4ZjM4ODRiNzgyOGIwYzAxMTEyNTUxMDNkYzNwLTIsCisgICAgMHgxLjMzMzMzNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDcwNQorICAgIC0weDEuMmE3M2E4ZjM4ODRiNzgyOGIwYzAxMTEyNTUxMDNkYzNwLTIsCisgICAgLTB4MS4zMzMzMzZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDYKKyAgICAweDEuMmZjNDgwZmEwZTg4NTcwZWRhMjAwOTAxMTNlMjllMzZwLTEsCisgICAgMHgxLjU5NDMxNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwNworICAgIC0weDEuMmZjNDgwZmEwZTg4NTcwZWRhMjAwOTAxMTNlMjllMzZwLTEsCisgICAgLTB4MS41OTQzMTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDgKKyAgICAweDEuMmZjNDgyNWEwMmQzZjk3NDE1N2ZlM2M1MDBhN2RlZmJwLTEsCisgICAgMHgxLjU5NDMxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwOQorICAgIC0weDEuMmZjNDgyNWEwMmQzZjk3NDE1N2ZlM2M1MDBhN2RlZmJwLTEsCisgICAgLTB4MS41OTQzMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTAKKyAgICAweDEuMmZjNDgzYjlmNzFlNTU4ZDk5OTI5Y2M4ZTVkYTI5ZGZwLTEsCisgICAgMHgxLjU5NDMxYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxMQorICAgIC0weDEuMmZjNDgzYjlmNzFlNTU4ZDk5OTI5Y2M4ZTVkYTI5ZGZwLTEsCisgICAgLTB4MS41OTQzMWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTIKKyAgICAweDEuNTM4ZjU2N2E5ZWY5MjVkOWJhOWE0MjMxMDQ2ZTdmMmNwLTEsCisgICAgMHgxLjhmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxMworICAgIC0weDEuNTM4ZjU2N2E5ZWY5MjVkOWJhOWE0MjMxMDQ2ZTdmMmNwLTEsCisgICAgLTB4MS44ZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTQKKyAgICAweDEuNTM4ZjU3Yjg5MDYxZWI5MTIyZDUwOTZiN2NmMjY3ZWJwLTEsCisgICAgMHgxLjkwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzE1CisgICAgLTB4MS41MzhmNTdiODkwNjFlYjkxMjJkNTA5NmI3Y2YyNjdlYnAtMSwKKyAgICAtMHgxLjkwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzE2CisgICAgMHgxLjUzOGY1OGY2ODFjOTdjYzliZDVhMTI3N2U5ZTJmMGZicC0xLAorICAgIDB4MS45MDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTcKKyAgICAtMHgxLjUzOGY1OGY2ODFjOTdjYzliZDVhMTI3N2U5ZTJmMGZicC0xLAorICAgIC0weDEuOTAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzE4CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDcxOQorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzIwCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDcyMQorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzIyCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDcyMworICAgIDB4MS45MWNkMjM5OWQ0M2ZhYmY5MDE4NzU0NDI3NmE5ZmRkNnAtNSwKKyAgICAweDEuOTIxZmI0cC01CisgIH0sCisgIHsgLy8gRW50cnkgNzI0CisgICAgLTB4MS45MWNkMjM5OWQ0M2ZhYmY5MDE4NzU0NDI3NmE5ZmRkNnAtNSwKKyAgICAtMHgxLjkyMWZiNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDcyNQorICAgIDB4MS45MWNkMjU5ODk5MmUzOTU5YjMzMDg5YWRjOTMxYWYxYnAtNSwKKyAgICAweDEuOTIxZmI2cC01CisgIH0sCisgIHsgLy8gRW50cnkgNzI2CisgICAgLTB4MS45MWNkMjU5ODk5MmUzOTU5YjMzMDg5YWRjOTMxYWYxYnAtNSwKKyAgICAtMHgxLjkyMWZiNnAtNQorICB9LAorICB7IC8vIEVudHJ5IDcyNworICAgIDB4MS45MWNkMjc5NzVlMWNjMzlhMDIwZTExNTU5NTZjOTc0ZXAtNSwKKyAgICAweDEuOTIxZmI4cC01CisgIH0sCisgIHsgLy8gRW50cnkgNzI4CisgICAgLTB4MS45MWNkMjc5NzVlMWNjMzlhMDIwZTExNTU5NTZjOTc0ZXAtNSwKKyAgICAtMHgxLjkyMWZiOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDcyOQorICAgIDB4MS45MGQ2ZGU3ZGRhMDQwMDg5MzJiYjlkYzZkNjY2M2RmZnAtNCwKKyAgICAweDEuOTIxZmI0cC00CisgIH0sCisgIHsgLy8gRW50cnkgNzMwCisgICAgLTB4MS45MGQ2ZGU3ZGRhMDQwMDg5MzJiYjlkYzZkNjY2M2RmZnAtNCwKKyAgICAtMHgxLjkyMWZiNHAtNAorICB9LAorICB7IC8vIEVudHJ5IDczMQorICAgIDB4MS45MGQ2ZTA3OGY2YzQyNTUzNGE1MjkwMGQ1NWMwN2MwOHAtNCwKKyAgICAweDEuOTIxZmI2cC00CisgIH0sCisgIHsgLy8gRW50cnkgNzMyCisgICAgLTB4MS45MGQ2ZTA3OGY2YzQyNTUzNGE1MjkwMGQ1NWMwN2MwOHAtNCwKKyAgICAtMHgxLjkyMWZiNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDczMworICAgIDB4MS45MGQ2ZTI3NDEzODQzZGM5ODRkNmQ2OTZjMThmMTU3YXAtNCwKKyAgICAweDEuOTIxZmI4cC00CisgIH0sCisgIHsgLy8gRW50cnkgNzM0CisgICAgLTB4MS45MGQ2ZTI3NDEzODQzZGM5ODRkNmQ2OTZjMThmMTU3YXAtNCwKKyAgICAtMHgxLjkyMWZiOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDczNQorICAgIDB4MS44ZDEyOGQ3NjVjMTYzYmIyYTQ2ODRiMzU5YmMzN2I0YXAtMywKKyAgICAweDEuOTIxZmI0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzM2CisgICAgLTB4MS44ZDEyOGQ3NjVjMTYzYmIyYTQ2ODRiMzU5YmMzN2I0YXAtMywKKyAgICAtMHgxLjkyMWZiNHAtMworICB9LAorICB7IC8vIEVudHJ5IDczNworICAgIDB4MS44ZDEyOGY2MzVhNmY4NWUwNmY4ODhlMDg4N2Y5OTA4ZnAtMywKKyAgICAweDEuOTIxZmI2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzM4CisgICAgLTB4MS44ZDEyOGY2MzVhNmY4NWUwNmY4ODhlMDg4N2Y5OTA4ZnAtMywKKyAgICAtMHgxLjkyMWZiNnAtMworICB9LAorICB7IC8vIEVudHJ5IDczOQorICAgIDB4MS44ZDEyOTE1MDU4YzhhMTczZTZiMmQ3YzhjZjVmMDEyYXAtMywKKyAgICAweDEuOTIxZmI4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzQwCisgICAgLTB4MS44ZDEyOTE1MDU4YzhhMTczZTZiMmQ3YzhjZjVmMDEyYXAtMywKKyAgICAtMHgxLjkyMWZiOHAtMworICB9LAorICB7IC8vIEVudHJ5IDc0MQorICAgIDB4MS43ZjJkNjkwYjg3OWYyNmIxNjM0MzUwMTA0NDc4YTIwOXAtMiwKKyAgICAweDEuOTIxZmI0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzQyCisgICAgLTB4MS43ZjJkNjkwYjg3OWYyNmIxNjM0MzUwMTA0NDc4YTIwOXAtMiwKKyAgICAtMHgxLjkyMWZiNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc0MworICAgIDB4MS43ZjJkNmFjNzFmNGIxOWIzOGNmNzhiYmFkZWMxNDM1YXAtMiwKKyAgICAweDEuOTIxZmI2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzQ0CisgICAgLTB4MS43ZjJkNmFjNzFmNGIxOWIzOGNmNzhiYmFkZWMxNDM1YXAtMiwKKyAgICAtMHgxLjkyMWZiNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDc0NQorICAgIDB4MS43ZjJkNmM4MmI2ZjY3NWM5MmM5ZGZhNjM1ZjMxOGVkN3AtMiwKKyAgICAweDEuOTIxZmI4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzQ2CisgICAgLTB4MS43ZjJkNmM4MmI2ZjY3NWM5MmM5ZGZhNjM1ZjMxOGVkN3AtMiwKKyAgICAtMHgxLjkyMWZiOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc0NworICAgIDB4MS41NGUwNGIzZDQzNTg5ZDBjYzBiZDMzMmM2YTgyMmVjZnAtMSwKKyAgICAweDEuOTIxZmI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzQ4CisgICAgLTB4MS41NGUwNGIzZDQzNTg5ZDBjYzBiZDMzMmM2YTgyMmVjZnAtMSwKKyAgICAtMHgxLjkyMWZiNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc0OQorICAgIDB4MS41NGUwNGM3OWVkOWE5M2IwMWM2YTkwNjJkYmQ4ZTBmZnAtMSwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzUwCisgICAgLTB4MS41NGUwNGM3OWVkOWE5M2IwMWM2YTkwNjJkYmQ4ZTBmZnAtMSwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDc1MQorICAgIDB4MS41NGUwNGRiNjk3ZGI1NmFlNDg5Zjg5OTg2YTE0YTFiN3AtMSwKKyAgICAweDEuOTIxZmI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzUyCisgICAgLTB4MS41NGUwNGRiNjk3ZGI1NmFlNDg5Zjg5OTg2YTE0YTFiN3AtMSwKKyAgICAtMHgxLjkyMWZiOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc1MworICAgIDB4MS4wMGZlOTgyMTRiZDQ3YjA3MjdjZWY3MGFmNjhhY2VlZXAwLAorICAgIDB4MS45MjFmYjRwMAorICB9LAorICB7IC8vIEVudHJ5IDc1NAorICAgIC0weDEuMDBmZTk4MjE0YmQ0N2IwNzI3Y2VmNzBhZjY4YWNlZWVwMCwKKyAgICAtMHgxLjkyMWZiNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzU1CisgICAgMHgxLjAwZmU5OGI0ZjUwZDhiM2MzNmI5ZTJhMTgwZDk3ZWVhcDAsCisgICAgMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzU2CisgICAgLTB4MS4wMGZlOThiNGY1MGQ4YjNjMzZiOWUyYTE4MGQ5N2VlYXAwLAorICAgIC0weDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTcKKyAgICAweDEuMDBmZTk5NDg5ZTQ1OGZkZWFmOWJlOTY4Y2FiNmRhNjNwMCwKKyAgICAweDEuOTIxZmI4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTgKKyAgICAtMHgxLjAwZmU5OTQ4OWU0NThmZGVhZjliZTk2OGNhYjZkYTYzcDAsCisgICAgLTB4MS45MjFmYjhwMAorICB9LAorICB7IC8vIEVudHJ5IDc1OQorICAgIDB4MS40MzNiODlmNjgzZWQ3ZmE1ODE3ZDg2NWY0ZjQwYjc3MnAwLAorICAgIDB4MS45MjFmYjRwMQorICB9LAorICB7IC8vIEVudHJ5IDc2MAorICAgIC0weDEuNDMzYjg5ZjY4M2VkN2ZhNTgxN2Q4NjVmNGY0MGI3NzJwMCwKKyAgICAtMHgxLjkyMWZiNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzYxCisgICAgMHgxLjQzM2I4YTU0YjkxNmQ3ZWIyN2NlZTYyOTMwNjZlOWY2cDAsCisgICAgMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzYyCisgICAgLTB4MS40MzNiOGE1NGI5MTZkN2ViMjdjZWU2MjkzMDY2ZTlmNnAwLAorICAgIC0weDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjMKKyAgICAweDEuNDMzYjhhYjJlZTNmNTY1ZDA0MzQ0NDU5ODUyZmJjZjRwMCwKKyAgICAweDEuOTIxZmI4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjQKKyAgICAtMHgxLjQzM2I4YWIyZWUzZjU2NWQwNDM0NDQ1OTg1MmZiY2Y0cDAsCisgICAgLTB4MS45MjFmYjhwMQorICB9LAorICB7IC8vIEVudHJ5IDc2NQorICAgIDB4MS42OWI4MTUyYmE0NGE0OWNhYjM4MWE4MmQzZWZiZjcwMnAwLAorICAgIDB4MS45MjFmYjRwMgorICB9LAorICB7IC8vIEVudHJ5IDc2NgorICAgIC0weDEuNjliODE1MmJhNDRhNDljYWIzODFhODJkM2VmYmY3MDJwMCwKKyAgICAtMHgxLjkyMWZiNHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzY3CisgICAgMHgxLjY5YjgxNTVlM2M5MzRlNmNlNjNhMzQ0YjI5NTZhYjUwcDAsCisgICAgMHgxLjkyMWZiNnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzY4CisgICAgLTB4MS42OWI4MTU1ZTNjOTM0ZTZjZTYzYTM0NGIyOTU2YWI1MHAwLAorICAgIC0weDEuOTIxZmI2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjkKKyAgICAweDEuNjliODE1OTBkNGRiZDU2NzMzMWMwZGM0YjdmZDA0N2JwMCwKKyAgICAweDEuOTIxZmI4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzAKKyAgICAtMHgxLjY5YjgxNTkwZDRkYmQ1NjczMzFjMGRjNGI3ZmQwNDdicDAsCisgICAgLTB4MS45MjFmYjhwMgorICB9LAorICB7IC8vIEVudHJ5IDc3MQorICAgIDB4MS43ZGNiN2M0YmU2YjRiZTY0NGQ3ZGIwOThjNjhlNmU1ZXAwLAorICAgIDB4MS45MjFmYjRwMworICB9LAorICB7IC8vIEVudHJ5IDc3MgorICAgIC0weDEuN2RjYjdjNGJlNmI0YmU2NDRkN2RiMDk4YzY4ZTZlNWVwMCwKKyAgICAtMHgxLjkyMWZiNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzczCisgICAgMHgxLjdkY2I3YzY1YWQxYjNjY2I3MzYwZjFiOWI3N2JjNTEwcDAsCisgICAgMHgxLjkyMWZiNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNzc0CisgICAgLTB4MS43ZGNiN2M2NWFkMWIzY2NiNzM2MGYxYjliNzdiYzUxMHAwLAorICAgIC0weDEuOTIxZmI2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzUKKyAgICAweDEuN2RjYjdjN2Y3MzgxNzlmOWE1ODQ4YmQyZjZlYTc0cDAsCisgICAgMHgxLjkyMWZiOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzc2CisgICAgLTB4MS43ZGNiN2M3ZjczODE3OWY5YTU4NDhiZDJmNmVhNzRwMCwKKyAgICAtMHgxLjkyMWZiOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzc3CisgICAgMHgxLjg3ZjE3Y2Y1NmQ1ODU0NTcyZDhlZDRiNmQ3NjI5Y2I3cDAsCisgICAgMHgxLjkyMWZiNHA0CisgIH0sCisgIHsgLy8gRW50cnkgNzc4CisgICAgLTB4MS44N2YxN2NmNTZkNTg1NDU3MmQ4ZWQ0YjZkNzYyOWNiN3AwLAorICAgIC0weDEuOTIxZmI0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzkKKyAgICAweDEuODdmMTdkMDI2MDMwOTUxMzg4ZWRmZjYwNGM1YjMxYWNwMCwKKyAgICAweDEuOTIxZmI2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODAKKyAgICAtMHgxLjg3ZjE3ZDAyNjAzMDk1MTM4OGVkZmY2MDRjNWIzMWFjcDAsCisgICAgLTB4MS45MjFmYjZwNAorICB9LAorICB7IC8vIEVudHJ5IDc4MQorICAgIDB4MS44N2YxN2QwZjUzMDhiNGU0MGQ2Njg4NGJmZGE3MWYxNnAwLAorICAgIDB4MS45MjFmYjhwNAorICB9LAorICB7IC8vIEVudHJ5IDc4MgorICAgIC0weDEuODdmMTdkMGY1MzA4YjRlNDBkNjY4ODRiZmRhNzFmMTZwMCwKKyAgICAtMHgxLjkyMWZiOHA0CisgIH0sCisgIHsgLy8gRW50cnkgNzgzCisgICAgMHgxLjhkMDgxNTJhYzJjOWY4MDUxMGI2N2ZlODY4OGZlMDBicDAsCisgICAgMHgxLjkyMWZiNHA1CisgIH0sCisgIHsgLy8gRW50cnkgNzg0CisgICAgLTB4MS44ZDA4MTUyYWMyYzlmODA1MTBiNjdmZTg2ODhmZTAwYnAwLAorICAgIC0weDEuOTIxZmI0cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODUKKyAgICAweDEuOGQwODE1MzEzZTJkYjEyMzZiNzQxNmFhZjMxNzg0ZWRwMCwKKyAgICAweDEuOTIxZmI2cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODYKKyAgICAtMHgxLjhkMDgxNTMxM2UyZGIxMjM2Yjc0MTZhYWYzMTc4NGVkcDAsCisgICAgLTB4MS45MjFmYjZwNQorICB9LAorICB7IC8vIEVudHJ5IDc4NworICAgIDB4MS44ZDA4MTUzN2I5OTE1OWMxZDg3YjQ5MDg5YjQ2MjU5YnAwLAorICAgIDB4MS45MjFmYjhwNQorICB9LAorICB7IC8vIEVudHJ5IDc4OAorICAgIC0weDEuOGQwODE1MzdiOTkxNTljMWQ4N2I0OTA4OWI0NjI1OWJwMCwKKyAgICAtMHgxLjkyMWZiOHA1CisgIH0sCisgIHsgLy8gRW50cnkgNzg5CisgICAgMHgxLjhmOTNkNGI1N2RkZTFhZTg4ODc3NmRmOTU5MjQwYTI5cDAsCisgICAgMHgxLjkyMWZiNHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzkwCisgICAgLTB4MS44ZjkzZDRiNTdkZGUxYWU4ODg3NzZkZjk1OTI0MGEyOXAwLAorICAgIC0weDEuOTIxZmI0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTEKKyAgICAweDEuOGY5M2Q0YjhiYmNmMDI3YTIwYzhmMmYxNDk2ZWQ1ODFwMCwKKyAgICAweDEuOTIxZmI2cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTIKKyAgICAtMHgxLjhmOTNkNGI4YmJjZjAyN2EyMGM4ZjJmMTQ5NmVkNTgxcDAsCisgICAgLTB4MS45MjFmYjZwNgorICB9LAorICB7IC8vIEVudHJ5IDc5MworICAgIDB4MS44ZjkzZDRiYmY5YmZlMWNhODE0MDRmZmIxMTQ2MDFlZnAwLAorICAgIDB4MS45MjFmYjhwNgorICB9LAorICB7IC8vIEVudHJ5IDc5NAorICAgIC0weDEuOGY5M2Q0YmJmOWJmZTFjYTgxNDA0ZmZiMTE0NjAxZWZwMCwKKyAgICAtMHgxLjkyMWZiOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzk1CisgICAgMHgxLjkwZDljMmVjODE5ZjE3YjRkODA2MmRmNjVjNzk2ODZlcDAsCisgICAgMHgxLjkyMWZiNHA3CisgIH0sCisgIHsgLy8gRW50cnkgNzk2CisgICAgLTB4MS45MGQ5YzJlYzgxOWYxN2I0ZDgwNjJkZjY1Yzc5Njg2ZXAwLAorICAgIC0weDEuOTIxZmI0cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTcKKyAgICAweDEuOTBkOWMyZWUyMDlmNmQ5ZDkxMGJhYmU3ZjYyZTdhNzFwMCwKKyAgICAweDEuOTIxZmI2cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTgKKyAgICAtMHgxLjkwZDljMmVlMjA5ZjZkOWQ5MTBiYWJlN2Y2MmU3YTcxcDAsCisgICAgLTB4MS45MjFmYjZwNworICB9LAorICB7IC8vIEVudHJ5IDc5OQorICAgIDB4MS45MGQ5YzJlZmJmOWZiZjY1ODVmZTdmODc5ZTMwY2IyN3AwLAorICAgIDB4MS45MjFmYjhwNworICB9LAorICB7IC8vIEVudHJ5IDgwMAorICAgIC0weDEuOTBkOWMyZWZiZjlmYmY2NTg1ZmU3Zjg3OWUzMGNiMjdwMCwKKyAgICAtMHgxLjkyMWZiOHA3CisgIH0sCisgIHsgLy8gRW50cnkgODAxCisgICAgMHgxLjJiNWY0YTFmMTg2YTRmNGNjZTg0NjMzZDRlODhjNmUzcDAsCisgICAgMHgxLjJkOTdjNHAxCisgIH0sCisgIHsgLy8gRW50cnkgODAyCisgICAgLTB4MS4yYjVmNGExZjE4NmE0ZjRjY2U4NDYzM2Q0ZTg4YzZlM3AwLAorICAgIC0weDEuMmQ5N2M0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDMKKyAgICAweDEuMmI1ZjRhYmI2NDUwY2ZlMzk0YjExZDAxOTBiMDEyYTJwMCwKKyAgICAweDEuMmQ5N2M2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDQKKyAgICAtMHgxLjJiNWY0YWJiNjQ1MGNmZTM5NGIxMWQwMTkwYjAxMmEycDAsCisgICAgLTB4MS4yZDk3YzZwMQorICB9LAorICB7IC8vIEVudHJ5IDgwNQorICAgIDB4MS4yYjVmNGI1N2IwMzU4ZWNkNWM0ZWYyY2Y4ZWVjYThiNXAwLAorICAgIDB4MS4yZDk3YzhwMQorICB9LAorICB7IC8vIEVudHJ5IDgwNgorICAgIC0weDEuMmI1ZjRiNTdiMDM1OGVjZDVjNGVmMmNmOGVlY2E4YjVwMCwKKyAgICAtMHgxLjJkOTdjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgODA3CisgICAgMHgxLjUyNGE2OWFjNzM5YmU4YWE0NDgxOWRhMmM0NmRkZWZmcDAsCisgICAgMHgxLmY2YTdhMHAxCisgIH0sCisgIHsgLy8gRW50cnkgODA4CisgICAgLTB4MS41MjRhNjlhYzczOWJlOGFhNDQ4MTlkYTJjNDZkZGVmZnAwLAorICAgIC0weDEuZjZhN2EwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDkKKyAgICAweDEuNTI0YTY5ZWFjZjRmMzBkZDc5MzAwOTRjMmM1NDIyZmFwMCwKKyAgICAweDEuZjZhN2EycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTAKKyAgICAtMHgxLjUyNGE2OWVhY2Y0ZjMwZGQ3OTMwMDk0YzJjNTQyMmZhcDAsCisgICAgLTB4MS5mNmE3YTJwMQorICB9LAorICB7IC8vIEVudHJ5IDgxMQorICAgIDB4MS41MjRhNmEyOTJiMDIwMWM0MWRmNzZmOTg1NmVhNzkzZXAwLAorICAgIDB4MS5mNmE3YTRwMQorICB9LAorICB7IC8vIEVudHJ5IDgxMgorICAgIC0weDEuNTI0YTZhMjkyYjAyMDFjNDFkZjc2Zjk4NTZlYTc5M2VwMCwKKyAgICAtMHgxLmY2YTdhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgODEzCisgICAgMHgxLjVjOTdkMmNmNGQ0N2MzOWUxZDMzNjJjNWM2Y2I0NjVlcDAsCisgICAgMHgxLjJkOTdjNHAyCisgIH0sCisgIHsgLy8gRW50cnkgODE0CisgICAgLTB4MS41Yzk3ZDJjZjRkNDdjMzllMWQzMzYyYzVjNmNiNDY1ZXAwLAorICAgIC0weDEuMmQ5N2M0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTUKKyAgICAweDEuNWM5N2QzMjc4ZDc4ODI4NzE0ZTFkYjM3M2MwMWM0MjhwMCwKKyAgICAweDEuMmQ5N2M2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTYKKyAgICAtMHgxLjVjOTdkMzI3OGQ3ODgyODcxNGUxZGIzNzNjMDFjNDI4cDAsCisgICAgLTB4MS4yZDk3YzZwMgorICB9LAorICB7IC8vIEVudHJ5IDgxNworICAgIDB4MS41Yzk3ZDM3ZmNkYTgyMmI2MTJjYzMwNWFjZGIzNzE5YXAwLAorICAgIDB4MS4yZDk3YzhwMgorICB9LAorICB7IC8vIEVudHJ5IDgxOAorICAgIC0weDEuNWM5N2QzN2ZjZGE4MjJiNjEyY2MzMDVhY2RiMzcxOWFwMCwKKyAgICAtMHgxLjJkOTdjOHAyCisgIH0sCisgIHsgLy8gRW50cnkgODE5CisgICAgMHgxLjY0MTAyZjZmZTg5OTc4ODc5ZWMxZWI5MzgxMjdmMzQ3cDAsCisgICAgMHgxLjVmZGJiY3AyCisgIH0sCisgIHsgLy8gRW50cnkgODIwCisgICAgLTB4MS42NDEwMmY2ZmU4OTk3ODg3OWVjMWViOTM4MTI3ZjM0N3AwLAorICAgIC0weDEuNWZkYmJjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjEKKyAgICAweDEuNjQxMDJmYjE3ZWU0YmQ3ODRjMGJjM2M0Yjg3YjEyZGJwMCwKKyAgICAweDEuNWZkYmJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjIKKyAgICAtMHgxLjY0MTAyZmIxN2VlNGJkNzg0YzBiYzNjNGI4N2IxMmRicDAsCisgICAgLTB4MS41ZmRiYmVwMgorICB9LAorICB7IC8vIEVudHJ5IDgyMworICAgIDB4MS42NDEwMmZmMzE1MmY0OWE1YjI1YmJiZWQwZTI5ODc4OXAwLAorICAgIDB4MS41ZmRiYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDgyNAorICAgIC0weDEuNjQxMDJmZjMxNTJmNDlhNWIyNWJiYmVkMGUyOTg3ODlwMCwKKyAgICAtMHgxLjVmZGJjMHAyCisgIH0sCisgIHsgLy8gRW50cnkgODI1CisgICAgMHgxLjZlMjU2MTU3ZjA4YWYyOGY4ZmJjYjJmMTAwYjQyN2IycDAsCisgICAgMHgxLmM0NjNhOHAyCisgIH0sCisgIHsgLy8gRW50cnkgODI2CisgICAgLTB4MS42ZTI1NjE1N2YwOGFmMjhmOGZiY2IyZjEwMGI0MjdiMnAwLAorICAgIC0weDEuYzQ2M2E4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjcKKyAgICAweDEuNmUyNTYxODAxZmM5ODk0OWU0NzFiODdkZDllMTY1YWRwMCwKKyAgICAweDEuYzQ2M2FhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjgKKyAgICAtMHgxLjZlMjU2MTgwMWZjOTg5NDllNDcxYjg3ZGQ5ZTE2NWFkcDAsCisgICAgLTB4MS5jNDYzYWFwMgorICB9LAorICB7IC8vIEVudHJ5IDgyOQorICAgIDB4MS42ZTI1NjFhODRmMDdjNmQ3OGYzNTFmNzc4Y2E0OGVlMXAwLAorICAgIDB4MS5jNDYzYWNwMgorICB9LAorICB7IC8vIEVudHJ5IDgzMAorICAgIC0weDEuNmUyNTYxYTg0ZjA3YzZkNzhmMzUxZjc3OGNhNDhlZTFwMCwKKyAgICAtMHgxLmM0NjNhY3AyCisgIH0sCisgIHsgLy8gRW50cnkgODMxCisgICAgMHgxLjcxYjQwZmU0ZDYyNjRmNmRjYjVhYTkzZDgxZWVlMzM0cDAsCisgICAgMHgxLmY2YTdhMHAyCisgIH0sCisgIHsgLy8gRW50cnkgODMyCisgICAgLTB4MS43MWI0MGZlNGQ2MjY0ZjZkY2I1YWE5M2Q4MWVlZTMzNHAwLAorICAgIC0weDEuZjZhN2EwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzMKKyAgICAweDEuNzFiNDEwMDU4MWZmNmRmNGQwZTQzYWRjMWM2ZGYzOTRwMCwKKyAgICAweDEuZjZhN2EycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzQKKyAgICAtMHgxLjcxYjQxMDA1ODFmZjZkZjRkMGU0M2FkYzFjNmRmMzk0cDAsCisgICAgLTB4MS5mNmE3YTJwMgorICB9LAorICB7IC8vIEVudHJ5IDgzNQorICAgIDB4MS43MWI0MTAyNjJkZDg0YWZjZjYxMjhiMDAyMjM4NjRkNHAwLAorICAgIDB4MS5mNmE3YTRwMgorICB9LAorICB7IC8vIEVudHJ5IDgzNgorICAgIC0weDEuNzFiNDEwMjYyZGQ4NGFmY2Y2MTI4YjAwMjIzODY0ZDRwMCwKKyAgICAtMHgxLmY2YTdhNHAyCisgIH0sCisgIHsgLy8gRW50cnkgODM3CisgICAgMHgxLjc0OWY5NWMyODY1NWUyNzE4NWJkZjc2MTFiZjZkYWJhcDAsCisgICAgMHgxLjE0NzVjYXAzCisgIH0sCisgIHsgLy8gRW50cnkgODM4CisgICAgLTB4MS43NDlmOTVjMjg2NTVlMjcxODViZGY3NjExYmY2ZGFiYXAwLAorICAgIC0weDEuMTQ3NWNhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzkKKyAgICAweDEuNzQ5Zjk1ZjhhZDQyYmZjODRjZDgyMTYzOGQwNTI3MmVwMCwKKyAgICAweDEuMTQ3NWNjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDAKKyAgICAtMHgxLjc0OWY5NWY4YWQ0MmJmYzg0Y2Q4MjE2MzhkMDUyNzJlcDAsCisgICAgLTB4MS4xNDc1Y2NwMworICB9LAorICB7IC8vIEVudHJ5IDg0MQorICAgIDB4MS43NDlmOTYyZWQ0MmVkNzMyMTU2MTAzMDkwMDQzZmUyMHAwLAorICAgIDB4MS4xNDc1Y2VwMworICB9LAorICB7IC8vIEVudHJ5IDg0MgorICAgIC0weDEuNzQ5Zjk2MmVkNDJlZDczMjE1NjEwMzA5MDA0M2ZlMjBwMCwKKyAgICAtMHgxLjE0NzVjZXAzCisgIH0sCisgIHsgLy8gRW50cnkgODQzCisgICAgMHgxLjc3MTAwYTYxZDExYmQzNjgzZWY3ZjEzZTBlMmQzNzE0cDAsCisgICAgMHgxLjJkOTdjNHAzCisgIH0sCisgIHsgLy8gRW50cnkgODQ0CisgICAgLTB4MS43NzEwMGE2MWQxMWJkMzY4M2VmN2YxM2UwZTJkMzcxNHAwLAorICAgIC0weDEuMmQ5N2M0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDUKKyAgICAweDEuNzcxMDBhOGY2YTc3ZDI1ZTYwYzhhYzZiMzY4Y2VkN2NwMCwKKyAgICAweDEuMmQ5N2M2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDYKKyAgICAtMHgxLjc3MTAwYThmNmE3N2QyNWU2MGM4YWM2YjM2OGNlZDdjcDAsCisgICAgLTB4MS4yZDk3YzZwMworICB9LAorICB7IC8vIEVudHJ5IDg0NworICAgIDB4MS43NzEwMGFiZDAzZDMzODNiMjAwYzM0OWEyODhkMDg1OHAwLAorICAgIDB4MS4yZDk3YzhwMworICB9LAorICB7IC8vIEVudHJ5IDg0OAorICAgIC0weDEuNzcxMDBhYmQwM2QzMzgzYjIwMGMzNDlhMjg4ZDA4NThwMCwKKyAgICAtMHgxLjJkOTdjOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODQ5CisgICAgMHgxLjc5MjE2YjU0ZTc2OTBmNWRjNjBjOWY5YWQxOGMyZmU0cDAsCisgICAgMHgxLjQ2YjljMHAzCisgIH0sCisgIHsgLy8gRW50cnkgODUwCisgICAgLTB4MS43OTIxNmI1NGU3NjkwZjVkYzYwYzlmOWFkMThjMmZlNHAwLAorICAgIC0weDEuNDZiOWMwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTEKKyAgICAweDEuNzkyMTZiN2JkMjU5MGViYzgxNjBhMmUyMjg4YjIxM2NwMCwKKyAgICAweDEuNDZiOWMycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTIKKyAgICAtMHgxLjc5MjE2YjdiZDI1OTBlYmM4MTYwYTJlMjI4OGIyMTNjcDAsCisgICAgLTB4MS40NmI5YzJwMworICB9LAorICB7IC8vIEVudHJ5IDg1MworICAgIDB4MS43OTIxNmJhMmJkNDg5NTRhY2M0N2ZiMjQzNjYzODlkY3AwLAorICAgIDB4MS40NmI5YzRwMworICB9LAorICB7IC8vIEVudHJ5IDg1NAorICAgIC0weDEuNzkyMTZiYTJiZDQ4OTU0YWNjNDdmYjI0MzY2Mzg5ZGNwMCwKKyAgICAtMHgxLjQ2YjljNHAzCisgIH0sCisgIHsgLy8gRW50cnkgODU1CisgICAgMHgxLjdhZTdkN2I5ZmZmMWI4ZmMxYTE5MGNiMDllYzE5MjEycDAsCisgICAgMHgxLjVmZGJiY3AzCisgIH0sCisgIHsgLy8gRW50cnkgODU2CisgICAgLTB4MS43YWU3ZDdiOWZmZjFiOGZjMWExOTBjYjA5ZWMxOTIxMnAwLAorICAgIC0weDEuNWZkYmJjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTcKKyAgICAweDEuN2FlN2Q3ZGI5OWIxYjQ4Zjc0YTQ3NTUwZGQyNzc1ZmJwMCwKKyAgICAweDEuNWZkYmJlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTgKKyAgICAtMHgxLjdhZTdkN2RiOTliMWI0OGY3NGE0NzU1MGRkMjc3NWZicDAsCisgICAgLTB4MS41ZmRiYmVwMworICB9LAorICB7IC8vIEVudHJ5IDg1OQorICAgIDB4MS43YWU3ZDdmZDMzNzE0ZjI2ZDI1NmJhZTdiOGRhMjY5Y3AwLAorICAgIDB4MS41ZmRiYzBwMworICB9LAorICB7IC8vIEVudHJ5IDg2MAorICAgIC0weDEuN2FlN2Q3ZmQzMzcxNGYyNmQyNTZiYWU3YjhkYTI2OWNwMCwKKyAgICAtMHgxLjVmZGJjMHAzCisgIH0sCisgIHsgLy8gRW50cnkgODYxCisgICAgMHgxLjdjNzIyNDNjODIxMDg0YTgwY2U1OTExZjZlM2RlYTVkcDAsCisgICAgMHgxLjc4ZmRiNnAzCisgIH0sCisgIHsgLy8gRW50cnkgODYyCisgICAgLTB4MS43YzcyMjQzYzgyMTA4NGE4MGNlNTkxMWY2ZTNkZWE1ZHAwLAorICAgIC0weDEuNzhmZGI2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjMKKyAgICAweDEuN2M3MjI0NTljZjEzN2FjMjU4YzNiNzIzNzYwNGUwOGVwMCwKKyAgICAweDEuNzhmZGI4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjQKKyAgICAtMHgxLjdjNzIyNDU5Y2YxMzdhYzI1OGMzYjcyMzc2MDRlMDhlcDAsCisgICAgLTB4MS43OGZkYjhwMworICB9LAorICB7IC8vIEVudHJ5IDg2NQorICAgIDB4MS43YzcyMjQ3NzFjMTYyMWQ3ZDAxMDg5MWNjNmNiZDkxZXAwLAorICAgIDB4MS43OGZkYmFwMworICB9LAorICB7IC8vIEVudHJ5IDg2NgorICAgIC0weDEuN2M3MjI0NzcxYzE2MjFkN2QwMTA4OTFjYzZjYmQ5MWVwMCwKKyAgICAtMHgxLjc4ZmRiYXAzCisgIH0sCisgIHsgLy8gRW50cnkgODY3CisgICAgMHgxLjdlZmM3MGZlZjAwNzlkMGY0OGI2ZDk0MDJiMjZkOTA1cDAsCisgICAgMHgxLmFiNDFhZXAzCisgIH0sCisgIHsgLy8gRW50cnkgODY4CisgICAgLTB4MS43ZWZjNzBmZWYwMDc5ZDBmNDhiNmQ5NDAyYjI2ZDkwNXAwLAorICAgIC0weDEuYWI0MWFlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjkKKyAgICAweDEuN2VmYzcxMTVjOTJlZDdiNDE5OWM0NzA3MTI3Y2I1NGJwMCwKKyAgICAweDEuYWI0MWIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzAKKyAgICAtMHgxLjdlZmM3MTE1YzkyZWQ3YjQxOTljNDcwNzEyN2NiNTRicDAsCisgICAgLTB4MS5hYjQxYjBwMworICB9LAorICB7IC8vIEVudHJ5IDg3MQorICAgIDB4MS43ZWZjNzEyY2EyNTVkYmU0ODdiOGEyNzA3ZTdjMDMxOXAwLAorICAgIDB4MS5hYjQxYjJwMworICB9LAorICB7IC8vIEVudHJ5IDg3MgorICAgIC0weDEuN2VmYzcxMmNhMjU1ZGJlNDg3YjhhMjcwN2U3YzAzMTlwMCwKKyAgICAtMHgxLmFiNDFiMnAzCisgIH0sCisgIHsgLy8gRW50cnkgODczCisgICAgMHgxLjgwMGJiMTM3Zjk3MTVhZDYyMmFmZjJhZWExMzBkY2UwcDAsCisgICAgMHgxLmM0NjNhOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODc0CisgICAgLTB4MS44MDBiYjEzN2Y5NzE1YWQ2MjJhZmYyYWVhMTMwZGNlMHAwLAorICAgIC0weDEuYzQ2M2E4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzUKKyAgICAweDEuODAwYmIxNGM1ZGUzYTUwOTI0NTE2ODA3YTJhY2YzZmVwMCwKKyAgICAweDEuYzQ2M2FhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzYKKyAgICAtMHgxLjgwMGJiMTRjNWRlM2E1MDkyNDUxNjgwN2EyYWNmM2ZlcDAsCisgICAgLTB4MS5jNDYzYWFwMworICB9LAorICB7IC8vIEVudHJ5IDg3NworICAgIDB4MS44MDBiYjE2MGMyNTVjMTRlNGUyN2ZmMTQwOWQ0MjJlM3AwLAorICAgIDB4MS5jNDYzYWNwMworICB9LAorICB7IC8vIEVudHJ5IDg3OAorICAgIC0weDEuODAwYmIxNjBjMjU1YzE0ZTRlMjdmZjE0MDlkNDIyZTNwMCwKKyAgICAtMHgxLmM0NjNhY3AzCisgIH0sCisgIHsgLy8gRW50cnkgODc5CisgICAgMHgxLjgwZmU4NjkzNjc5MGJjZjg3NWM1ZmUyZmI1NDdkNTY1cDAsCisgICAgMHgxLmRkODVhNHAzCisgIH0sCisgIHsgLy8gRW50cnkgODgwCisgICAgLTB4MS44MGZlODY5MzY3OTBiY2Y4NzVjNWZlMmZiNTQ3ZDU2NXAwLAorICAgIC0weDEuZGQ4NWE0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODEKKyAgICAweDEuODBmZTg2YTViNzU4MTE3ZDBkNTYxOWQwNmFiMjczMThwMCwKKyAgICAweDEuZGQ4NWE2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODIKKyAgICAtMHgxLjgwZmU4NmE1Yjc1ODExN2QwZDU2MTlkMDZhYjI3MzE4cDAsCisgICAgLTB4MS5kZDg1YTZwMworICB9LAorICB7IC8vIEVudHJ5IDg4MworICAgIDB4MS44MGZlODZiODA3MWYzZWVhMThiNWI3M2ZmN2YyZTRhOXAwLAorICAgIDB4MS5kZDg1YThwMworICB9LAorICB7IC8vIEVudHJ5IDg4NAorICAgIC0weDEuODBmZTg2YjgwNzFmM2VlYTE4YjViNzNmZjdmMmU0YTlwMCwKKyAgICAtMHgxLmRkODVhOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODg1CisgICAgMHgxLjgxZDkyZGQ5Y2FmMTMyOGJjNmIzNzUxNDMyMzdjYjBmcDAsCisgICAgMHgxLmY2YTdhMHAzCisgIH0sCisgIHsgLy8gRW50cnkgODg2CisgICAgLTB4MS44MWQ5MmRkOWNhZjEzMjhiYzZiMzc1MTQzMjM3Y2IwZnAwLAorICAgIC0weDEuZjZhN2EwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODcKKyAgICAweDEuODFkOTJkZWE1MzgxZDE4NDM2YzkxZGMxNWZiYzY0NmRwMCwKKyAgICAweDEuZjZhN2EycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODgKKyAgICAtMHgxLjgxZDkyZGVhNTM4MWQxODQzNmM5MWRjMTVmYmM2NDZkcDAsCisgICAgLTB4MS5mNmE3YTJwMworICB9LAorICB7IC8vIEVudHJ5IDg4OQorICAgIDB4MS44MWQ5MmRmYWRjMTI0ZWYwZjI0NzdlMzZlNmY2OGY3NHAwLAorICAgIDB4MS5mNmE3YTRwMworICB9LAorICB7IC8vIEVudHJ5IDg5MAorICAgIC0weDEuODFkOTJkZmFkYzEyNGVmMGYyNDc3ZTM2ZTZmNjhmNzRwMCwKKyAgICAtMHgxLmY2YTdhNHAzCisgIH0sCisgIHsgLy8gRW50cnkgODkxCisgICAgMHgxLjgyOWYxNjhmMjQyNmU1YWFhZGU2YWY0YzVmZGU4OTBhcDAsCisgICAgMHgxLjA3ZTRjY3A0CisgIH0sCisgIHsgLy8gRW50cnkgODkyCisgICAgLTB4MS44MjlmMTY4ZjI0MjZlNWFhYWRlNmFmNGM1ZmRlODkwYXAwLAorICAgIC0weDEuMDdlNGNjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTMKKyAgICAweDEuODI5ZjE2YWQyNTI4NjE2YjgyNWI5NzI2MWI4MmIwNjlwMCwKKyAgICAweDEuMDdlNGNlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTQKKyAgICAtMHgxLjgyOWYxNmFkMjUyODYxNmI4MjViOTcyNjFiODJiMDY5cDAsCisgICAgLTB4MS4wN2U0Y2VwNAorICB9LAorICB7IC8vIEVudHJ5IDg5NQorICAgIDB4MS44MjlmMTZjYjI2Mjk2OTJjODUzYzk2ODQyYTBiZTk4N3AwLAorICAgIDB4MS4wN2U0ZDBwNAorICB9LAorICB7IC8vIEVudHJ5IDg5NgorICAgIC0weDEuODI5ZjE2Y2IyNjI5NjkyYzg1M2M5Njg0MmEwYmU5ODdwMCwKKyAgICAtMHgxLjA3ZTRkMHA0CisgIH0sCisgIHsgLy8gRW50cnkgODk3CisgICAgMHgxLjgzNTMxMWExMjQ1OTQ1NWFjODJlYjE1NjYwOTI3ZWE4cDAsCisgICAgMHgxLjE0NzVjYXA0CisgIH0sCisgIHsgLy8gRW50cnkgODk4CisgICAgLTB4MS44MzUzMTFhMTI0NTk0NTVhYzgyZWIxNTY2MDkyN2VhOHAwLAorICAgIC0weDEuMTQ3NWNhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTkKKyAgICAweDEuODM1MzExYmM3ZDNhOTQ0YTQ3MDQ4OWE3ZTRkNzljODlwMCwKKyAgICAweDEuMTQ3NWNjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDAKKyAgICAtMHgxLjgzNTMxMWJjN2QzYTk0NGE0NzA0ODlhN2U0ZDc5Yzg5cDAsCisgICAgLTB4MS4xNDc1Y2NwNAorICB9LAorICB7IC8vIEVudHJ5IDkwMQorICAgIDB4MS44MzUzMTFkN2Q2MWI3ZTQ1NGFmYmRhNmZjMzc4MGY5YnAwLAorICAgIDB4MS4xNDc1Y2VwNAorICB9LAorICB7IC8vIEVudHJ5IDkwMgorICAgIC0weDEuODM1MzExZDdkNjFiN2U0NTRhZmJkYTZmYzM3ODBmOWJwMCwKKyAgICAtMHgxLjE0NzVjZXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTAzCisgICAgMHgxLjgzZjc3MmZiOGM2NTZiZjI4NmJmYjk4ZTFiNmMyMjk3cDAsCisgICAgMHgxLjIxMDZjOHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTA0CisgICAgLTB4MS44M2Y3NzJmYjhjNjU2YmYyODZiZmI5OGUxYjZjMjI5N3AwLAorICAgIC0weDEuMjEwNmM4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDUKKyAgICAweDEuODNmNzczMTQ5MzhlYjZmMjA5ZTlkNmYxNjJjZWIyMThwMCwKKyAgICAweDEuMjEwNmNhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDYKKyAgICAtMHgxLjgzZjc3MzE0OTM4ZWI2ZjIwOWU5ZDZmMTYyY2ViMjE4cDAsCisgICAgLTB4MS4yMTA2Y2FwNAorICB9LAorICB7IC8vIEVudHJ5IDkwNworICAgIDB4MS44M2Y3NzMyZDlhYjdhOThhY2M2MGRiODE5ZGI4MTA1MHAwLAorICAgIDB4MS4yMTA2Y2NwNAorICB9LAorICB7IC8vIEVudHJ5IDkwOAorICAgIC0weDEuODNmNzczMmQ5YWI3YTk4YWNjNjBkYjgxOWRiODEwNTBwMCwKKyAgICAtMHgxLjIxMDZjY3A0CisgIH0sCisgIHsgLy8gRW50cnkgOTA5CisgICAgMHgxLjg0OGUyYmJmMTEyYjdjMjg3NjY1N2EyYTg2ZGY5OTEycDAsCisgICAgMHgxLjJkOTdjNHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTEwCisgICAgLTB4MS44NDhlMmJiZjExMmI3YzI4NzY2NTdhMmE4NmRmOTkxMnAwLAorICAgIC0weDEuMmQ5N2M0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTEKKyAgICAweDEuODQ4ZTJiZDYwZWZlMmI5NjEyYjVmYzgwNmZkNDE4ZDlwMCwKKyAgICAweDEuMmQ5N2M2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTIKKyAgICAtMHgxLjg0OGUyYmQ2MGVmZTJiOTYxMmI1ZmM4MDZmZDQxOGQ5cDAsCisgICAgLTB4MS4yZDk3YzZwNAorICB9LAorICB7IC8vIEVudHJ5IDkxMworICAgIDB4MS44NDhlMmJlZDBjZDA4ZDJiOWE5ZWZjMDk1NDE1M2M0OHAwLAorICAgIDB4MS4yZDk3YzhwNAorICB9LAorICB7IC8vIEVudHJ5IDkxNAorICAgIC0weDEuODQ4ZTJiZWQwY2QwOGQyYjlhOWVmYzA5NTQxNTNjNDhwMCwKKyAgICAtMHgxLjJkOTdjOHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTE1CisgICAgMHgxLjg1MThkZTI0ZmI1ZTIzYjJmZjBjYzQxN2IzMzhmNDEwcDAsCisgICAgMHgxLjNhMjhjMnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTE2CisgICAgLTB4MS44NTE4ZGUyNGZiNWUyM2IyZmYwY2M0MTdiMzM4ZjQxMHAwLAorICAgIC0weDEuM2EyOGMycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTcKKyAgICAweDEuODUxOGRlM2EyY2VmOGYxZDhlYjg0MGMxOTVmN2FlYzZwMCwKKyAgICAweDEuM2EyOGM0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTgKKyAgICAtMHgxLjg1MThkZTNhMmNlZjhmMWQ4ZWI4NDBjMTk1ZjdhZWM2cDAsCisgICAgLTB4MS4zYTI4YzRwNAorICB9LAorICB7IC8vIEVudHJ5IDkxOQorICAgIDB4MS44NTE4ZGU0ZjVlODBiNWExNDRjY2I0NDIyODY5OTNmMnAwLAorICAgIDB4MS4zYTI4YzZwNAorICB9LAorICB7IC8vIEVudHJ5IDkyMAorICAgIC0weDEuODUxOGRlNGY1ZTgwYjVhMTQ0Y2NiNDQyMjg2OTkzZjJwMCwKKyAgICAtMHgxLjNhMjhjNnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTIxCisgICAgMHgxLjg1OThlYzE0ZjQ1NTlmYjdjZTZmOTdmOGIwY2U5NzcycDAsCisgICAgMHgxLjQ2YjljMHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTIyCisgICAgLTB4MS44NTk4ZWMxNGY0NTU5ZmI3Y2U2Zjk3ZjhiMGNlOTc3MnAwLAorICAgIC0weDEuNDZiOWMwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjMKKyAgICAweDEuODU5OGVjMjg4ZDhlNjFhMjRmMzE2MzczNzk1MDNmYzVwMCwKKyAgICAweDEuNDZiOWMycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjQKKyAgICAtMHgxLjg1OThlYzI4OGQ4ZTYxYTI0ZjMxNjM3Mzc5NTAzZmM1cDAsCisgICAgLTB4MS40NmI5YzJwNAorICB9LAorICB7IC8vIEVudHJ5IDkyNQorICAgIDB4MS44NTk4ZWMzYzI2YzZlNjQ1ZDExN2IwYjRkMGI5MDcxNnAwLAorICAgIDB4MS40NmI5YzRwNAorICB9LAorICB7IC8vIEVudHJ5IDkyNgorICAgIC0weDEuODU5OGVjM2MyNmM2ZTY0NWQxMTdiMGI0ZDBiOTA3MTZwMCwKKyAgICAtMHgxLjQ2YjljNHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTI3CisgICAgMHgxLjg2MGY4MzUzOThkMzcwNDBkZGMyZDcwMTdiZjkyMDk5cDAsCisgICAgMHgxLjUzNGFiZXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTI4CisgICAgLTB4MS44NjBmODM1Mzk4ZDM3MDQwZGRjMmQ3MDE3YmY5MjA5OXAwLAorICAgIC0weDEuNTM0YWJlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjkKKyAgICAweDEuODYwZjgzNjVjNjE3ZDU4NmExNGI0NDkzMGFmMjcwNGFwMCwKKyAgICAweDEuNTM0YWMwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzAKKyAgICAtMHgxLjg2MGY4MzY1YzYxN2Q1ODZhMTRiNDQ5MzBhZjI3MDRhcDAsCisgICAgLTB4MS41MzRhYzBwNAorICB9LAorICB7IC8vIEVudHJ5IDkzMQorICAgIDB4MS44NjBmODM3N2YzNWMwNDBmYzQxMjMwZGIyODM0YTM3OXAwLAorICAgIDB4MS41MzRhYzJwNAorICB9LAorICB7IC8vIEVudHJ5IDkzMgorICAgIC0weDEuODYwZjgzNzdmMzVjMDQwZmM0MTIzMGRiMjgzNGEzNzlwMCwKKyAgICAtMHgxLjUzNGFjMnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTMzCisgICAgMHgxLjg2N2RhNmIyNmY5YWMyZmE0YzFkNzBiNzUzMmNiNmFlcDAsCisgICAgMHgxLjVmZGJiY3A0CisgIH0sCisgIHsgLy8gRW50cnkgOTM0CisgICAgLTB4MS44NjdkYTZiMjZmOWFjMmZhNGMxZDcwYjc1MzJjYjZhZXAwLAorICAgIC0weDEuNWZkYmJjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzUKKyAgICAweDEuODY3ZGE2YzM1NzFhYWYwZTk3Yjc1ZmQ4MTAyZTMxMmFwMCwKKyAgICAweDEuNWZkYmJlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzYKKyAgICAtMHgxLjg2N2RhNmMzNTcxYWFmMGU5N2I3NWZkODEwMmUzMTJhcDAsCisgICAgLTB4MS41ZmRiYmVwNAorICB9LAorICB7IC8vIEVudHJ5IDkzNworICAgIDB4MS44NjdkYTZkNDNlOWE2YTBhYjg0NDIyMTU1OWUwY2E0ZXAwLAorICAgIDB4MS41ZmRiYzBwNAorICB9LAorICB7IC8vIEVudHJ5IDkzOAorICAgIC0weDEuODY3ZGE2ZDQzZTlhNmEwYWI4NDQyMjE1NTllMGNhNGVwMCwKKyAgICAtMHgxLjVmZGJjMHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTM5CisgICAgMHgxLjg2ZTQzNTZmOTgwNTg5OGVmZjczOWJlZTA5YjBlYjJicDAsCisgICAgMHgxLjZjNmNiYXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTQwCisgICAgLTB4MS44NmU0MzU2Zjk4MDU4OThlZmY3MzliZWUwOWIwZWIyYnAwLAorICAgIC0weDEuNmM2Y2JhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDEKKyAgICAweDEuODZlNDM1N2Y1YWM4NmI4MTQ1M2E0YjlmMWFiNDJhYzJwMCwKKyAgICAweDEuNmM2Y2JjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDIKKyAgICAtMHgxLjg2ZTQzNTdmNWFjODZiODE0NTNhNGI5ZjFhYjQyYWMycDAsCisgICAgLTB4MS42YzZjYmNwNAorICB9LAorICB7IC8vIEVudHJ5IDk0MworICAgIDB4MS44NmU0MzU4ZjFkOGIyMTQwMGM1MjczYWIyMzMyMmNjNHAwLAorICAgIDB4MS42YzZjYmVwNAorICB9LAorICB7IC8vIEVudHJ5IDk0NAorICAgIC0weDEuODZlNDM1OGYxZDhiMjE0MDBjNTI3M2FiMjMzMjJjYzRwMCwKKyAgICAtMHgxLjZjNmNiZXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTQ1CisgICAgMHgxLjg3NDNmMTBlZmE2MzllYWFmNDA1ZTgzZjg0YTk5MWJicDAsCisgICAgMHgxLjc4ZmRiNnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTQ2CisgICAgLTB4MS44NzQzZjEwZWZhNjM5ZWFhZjQwNWU4M2Y4NGE5OTFiYnAwLAorICAgIC0weDEuNzhmZGI2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDcKKyAgICAweDEuODc0M2YxMWRiNTIwMWUwMGZiYTM2OTMxMjljZWFhYWRwMCwKKyAgICAweDEuNzhmZGI4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDgKKyAgICAtMHgxLjg3NDNmMTFkYjUyMDFlMDBmYmEzNjkzMTI5Y2VhYWFkcDAsCisgICAgLTB4MS43OGZkYjhwNAorICB9LAorICB7IC8vIEVudHJ5IDk0OQorICAgIDB4MS44NzQzZjEyYzZmZGM3NTY3MmZmMjljY2Q2ZDY0MjNjY3AwLAorICAgIDB4MS43OGZkYmFwNAorICB9LAorICB7IC8vIEVudHJ5IDk1MAorICAgIC0weDEuODc0M2YxMmM2ZmRjNzU2NzJmZjI5Y2NkNmQ2NDIzY2NwMCwKKyAgICAtMHgxLjc4ZmRiYXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTUxCisgICAgMHgxLjg3OWQ4MjVhYjNmZTQ5ZjcxMWIyZmEwOWRmMmM1NzI2cDAsCisgICAgMHgxLjg1OGViNHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTUyCisgICAgLTB4MS44NzlkODI1YWIzZmU0OWY3MTFiMmZhMDlkZjJjNTcyNnAwLAorICAgIC0weDEuODU4ZWI0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTMKKyAgICAweDEuODc5ZDgyNjg3ZmM4NzYyMTJiODQ3NWU2NGRlNTk2YTRwMCwKKyAgICAweDEuODU4ZWI2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTQKKyAgICAtMHgxLjg3OWQ4MjY4N2ZjODc2MjEyYjg0NzVlNjRkZTU5NmE0cDAsCisgICAgLTB4MS44NThlYjZwNAorICB9LAorICB7IC8vIEVudHJ5IDk1NQorICAgIDB4MS44NzlkODI3NjRiOTI3ZTE3MjhlZDE0NGYyZGIyMTdlYnAwLAorICAgIDB4MS44NThlYjhwNAorICB9LAorICB7IC8vIEVudHJ5IDk1NgorICAgIC0weDEuODc5ZDgyNzY0YjkyN2UxNzI4ZWQxNDRmMmRiMjE3ZWJwMCwKKyAgICAtMHgxLjg1OGViOHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTU3CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njc4OThjYzMxNzAxYjYzOWEycDAsCisgICAgMHgxLmZmZmZmZXA2MgorICB9LAorICB7IC8vIEVudHJ5IDk1OAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2Nzg5OGNjMzE3MDFiNjM5YTJwMCwKKyAgICAtMHgxLmZmZmZmZXA2MgorICB9LAorICB7IC8vIEVudHJ5IDk1OQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY3ODk4Y2M1MTcwMWI4MzlhMnAwLAorICAgIDB4MS5wNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjAKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njc4OThjYzUxNzAxYjgzOWEycDAsCisgICAgLTB4MS5wNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjEKKyAgICAweDEuOTIxZmI1NDQ0MmQxODQ2Nzg5OGNjOTE3MDFiMDM5YTJwMCwKKyAgICAweDEuMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgOTYyCisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY3ODk4Y2M5MTcwMWIwMzlhMnAwLAorICAgIC0weDEuMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgOTYzCisgICAgMHgxLjkyMWZiNTI0NDJkMTY0Njk4OTZjZWZjMThjZTJlNDJkcDAsCisgICAgMHgxLmZmZmZmZXAyNgorICB9LAorICB7IC8vIEVudHJ5IDk2NAorICAgIC0weDEuOTIxZmI1MjQ0MmQxNjQ2OTg5NmNlZmMxOGNlMmU0MmRwMCwKKyAgICAtMHgxLmZmZmZmZXAyNgorICB9LAorICB7IC8vIEVudHJ5IDk2NQorICAgIDB4MS45MjFmYjUyNDQyZDE4NDY5ODk4Y2VmYzFhYzYyZTQ0Y3AwLAorICAgIDB4MS5wMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjYKKyAgICAtMHgxLjkyMWZiNTI0NDJkMTg0Njk4OThjZWZjMWFjNjJlNDRjcDAsCisgICAgLTB4MS5wMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjcKKyAgICAweDEuOTIxZmI1MjQ0MmQxYzQ2OTg5MGNlZmMyYWI2MmUyNTBwMCwKKyAgICAweDEuMDAwMDAycDI3CisgIH0sCisgIHsgLy8gRW50cnkgOTY4CisgICAgLTB4MS45MjFmYjUyNDQyZDFjNDY5ODkwY2VmYzJhYjYyZTI1MHAwLAorICAgIC0weDEuMDAwMDAycDI3CisgIH0sCisgIHsgLy8gRW50cnkgOTY5CisgICAgMHgxLjkyMWZiNDQ0NDJkMDg0Njk4OGUyMWE2YzU3MGQ4ZmM0cDAsCisgICAgMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDk3MAorICAgIC0weDEuOTIxZmI0NDQ0MmQwODQ2OTg4ZTIxYTZjNTcwZDhmYzRwMCwKKyAgICAtMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDk3MQorICAgIDB4MS45MjFmYjQ0NDQyZDE4NDY5ODllMjFhNmM1NzBkOGVjNHAwLAorICAgIDB4MS5wMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzIKKyAgICAtMHgxLjkyMWZiNDQ0NDJkMTg0Njk4OWUyMWE2YzU3MGQ4ZWM0cDAsCisgICAgLTB4MS5wMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzMKKyAgICAweDEuOTIxZmI0NDQ0MmQzODQ2OTg1ZTIxYTcyNTcwZDg2YzRwMCwKKyAgICAweDEuMDAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgOTc0CisgICAgLTB4MS45MjFmYjQ0NDQyZDM4NDY5ODVlMjFhNzI1NzBkODZjNHAwLAorICAgIC0weDEuMDAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgOTc1CisgICAgMHgxLjUzNjhjOTE1YWQ5MzU0YjZjODA4NDdhOWY1MTRiYjc1cDAsCisgICAgMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTc2CisgICAgLTB4MS41MzY4YzkxNWFkOTM1NGI2YzgwODQ3YTlmNTE0YmI3NXAwLAorICAgIC0weDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzcKKyAgICAweDEuNTM2OGM5NTFlOWNmYzlhNDJlMWFkZDU5ODNjZmIzYThwMCwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzgKKyAgICAtMHgxLjUzNjhjOTUxZTljZmM5YTQyZTFhZGQ1OTgzY2ZiM2E4cDAsCisgICAgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDk3OQorICAgIDB4MS41MzY4YzljYTYyNDc1ZjU4MDFhY2UyODM5YzIzNTg5NXAwLAorICAgIDB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDk4MAorICAgIC0weDEuNTM2OGM5Y2E2MjQ3NWY1ODAxYWNlMjgzOWMyMzU4OTVwMCwKKyAgICAtMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTgxCisgICAgMHgxLjFiNmUxOGM4NTU3ZDhlNzRlNWQ5NzA0YWNmOTFhYTQ1cDAsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTgyCisgICAgLTB4MS4xYjZlMThjODU1N2Q4ZTc0ZTVkOTcwNGFjZjkxYWE0NXAwLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODMKKyAgICAweDEuMWI2ZTE5MmViYmU0NDZjNmQxOWFhMjIwYTM5YWYzMjBwMCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODQKKyAgICAtMHgxLjFiNmUxOTJlYmJlNDQ2YzZkMTlhYTIyMGEzOWFmMzIwcDAsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDk4NQorICAgIDB4MS4xYjZlMTlmYjg4YWZjYmU1OGJjZDI2OGUyMzg5N2JlM3AwLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDk4NgorICAgIC0weDEuMWI2ZTE5ZmI4OGFmY2JlNThiY2QyNjhlMjM4OTdiZTNwMCwKKyAgICAtMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTg3CisgICAgMHgxLjkyMWZiNDQ0NDJkMTA0Njk4OTYyMWE2YzU3MGQ4ZjA0cC0xLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODgKKyAgICAtMHgxLjkyMWZiNDQ0NDJkMTA0Njk4OTYyMWE2YzU3MGQ4ZjA0cC0xLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTg5CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDk5MAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwLTEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDk5MQorICAgIDB4MS45MjFmYjc0NDQyY2Y4NDY5OGFlMjFhNmM1NzBkOGQ1ZXAtMSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTIKKyAgICAtMHgxLjkyMWZiNzQ0NDJjZjg0Njk4YWUyMWE2YzU3MGQ4ZDVlcC0xLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTMKKyAgICAweDEuZGFjNjZlYmM4MjFiMGIwNWMxMTViMDA3ZWUyNjJmNzhwLTIsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDk5NAorICAgIC0weDEuZGFjNjZlYmM4MjFiMGIwNWMxMTViMDA3ZWUyNjJmNzhwLTIsCisgICAgLTB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTUKKyAgICAweDEuZGFjNjcwNTYxYmI0ZjY4YWRmYzg4YmQ5Nzg3NTFhMDZwLTIsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDk5NgorICAgIC0weDEuZGFjNjcwNTYxYmI0ZjY4YWRmYzg4YmQ5Nzg3NTFhMDZwLTIsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTcKKyAgICAweDEuZGFjNjczODk0ZWU2ZTIwZmZlNTUyY2Y2MTMwMzVlNDFwLTIsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDk5OAorICAgIC0weDEuZGFjNjczODk0ZWU2ZTIwZmZlNTUyY2Y2MTMwMzVlNDFwLTIsCisgICAgLTB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTkKKyAgICAweDEuZjViNzVkYjBlNjJiZDdmMDY0ZTM4ODc4MDlhZGU3ZWZwLTMsCisgICAgMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDEwMDAKKyAgICAtMHgxLmY1Yjc1ZGIwZTYyYmQ3ZjA2NGUzODg3ODA5YWRlN2VmcC0zLAorICAgIC0weDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTAwMQorICAgIDB4MS5mNWI3NWY5MmM4MGRkNjJhZGI4ZjNkZWJlZjQ0MmZjYnAtMywKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTAwMgorICAgIC0weDEuZjViNzVmOTJjODBkZDYyYWRiOGYzZGViZWY0NDJmY2JwLTMsCisgICAgLTB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAzCisgICAgMHgxLmY1Yjc2MzU2OGJkMTI4OGM0YmQ0ZmVjZGFlZTI4ZmI1cC0zLAorICAgIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA0CisgICAgLTB4MS5mNWI3NjM1NjhiZDEyODhjNGJkNGZlY2RhZWUyOGZiNXAtMywKKyAgICAtMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwMDUKKyAgICAweDEuZmQ1YmE3YjJhMzc0ZGM4NDk3MTIzYjY0YjM5OGFhZTJwLTQsCisgICAgMHgxLmZmZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMDYKKyAgICAtMHgxLmZkNWJhN2IyYTM3NGRjODQ5NzEyM2I2NGIzOThhYWUycC00LAorICAgIC0weDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTAwNworICAgIDB4MS5mZDViYTlhYWMyZjZkYzY1OTEyZjMxM2U3ZDExMWRlZnAtNCwKKyAgICAweDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTAwOAorICAgIC0weDEuZmQ1YmE5YWFjMmY2ZGM2NTkxMmYzMTNlN2QxMTFkZWZwLTQsCisgICAgLTB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA5CisgICAgMHgxLmZkNWJhZDliMDFmYWFkOWViNDZlZjliZGE5OWQ0ZmRhcC00LAorICAgIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEwCisgICAgLTB4MS5mZDViYWQ5YjAxZmFhZDllYjQ2ZWY5YmRhOTlkNGZkYXAtNCwKKyAgICAtMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDEwMTEKKyAgICAweDEuZmY1NWI5NzRjZGUwOTg3MzhlNTljMDdhYTQ4ZGQxMTBwLTUsCisgICAgMHgxLmZmZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwMTIKKyAgICAtMHgxLmZmNTViOTc0Y2RlMDk4NzM4ZTU5YzA3YWE0OGRkMTEwcC01LAorICAgIC0weDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTAxMworICAgIDB4MS5mZjU1YmI3MmNmZGU5YzZkOTY0ZjI1YjgxYzVjMWFhMnAtNSwKKyAgICAweDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMTAxNAorICAgIC0weDEuZmY1NWJiNzJjZmRlOWM2ZDk2NGYyNWI4MWM1YzFhYTJwLTUsCisgICAgLTB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE1CisgICAgMHgxLmZmNTViZjZlZDNkYTk4Nzk4MjY1Y2MzZjI3Yzg5NmM3cC01LAorICAgIDB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE2CisgICAgLTB4MS5mZjU1YmY2ZWQzZGE5ODc5ODI2NWNjM2YyN2M4OTZjN3AtNSwKKyAgICAtMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMTcKKyAgICAweDEuZmZkNTU5YmIxNzQyNTIwMzJmYTMwMTRjMDY3MTMzNmNwLTYsCisgICAgMHgxLmZmZmZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwMTgKKyAgICAtMHgxLmZmZDU1OWJiMTc0MjUyMDMyZmEzMDE0YzA2NzEzMzZjcC02LAorICAgIC0weDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTAxOQorICAgIDB4MS5mZmQ1NWJiYTk3NjI0YTg0ZWYzYWVlZGJiNTE4YzQyN3AtNiwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgMTAyMAorICAgIC0weDEuZmZkNTViYmE5NzYyNGE4NGVmM2FlZWRiYjUxOGM0MjdwLTYsCisgICAgLTB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIxCisgICAgMHgxLmZmZDU1ZmI5OTdhMjM4ODllZGQ5ZmI2YjI3NThhNjNlcC02LAorICAgIDB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIyCisgICAgLTB4MS5mZmQ1NWZiOTk3YTIzODg5ZWRkOWZiNmIyNzU4YTYzZXAtNiwKKyAgICAtMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwMjMKKyAgICAweDEuZmZmNTUzYmJkNzI3YWI3N2QxMTg3NzJjZDZiOTY0OTBwLTcsCisgICAgMHgxLmZmZmZmZXAtNworICB9LAorICB7IC8vIEVudHJ5IDEwMjQKKyAgICAtMHgxLmZmZjU1M2JiZDcyN2FiNzdkMTE4NzcyY2Q2Yjk2NDkwcC03LAorICAgIC0weDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTAyNQorICAgIDB4MS5mZmY1NTViYmI3MjlhYjc3Y2YxOGFjODAyYmVlYzA5MHAtNywKKyAgICAweDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMTAyNgorICAgIC0weDEuZmZmNTU1YmJiNzI5YWI3N2NmMThhYzgwMmJlZWMwOTBwLTcsCisgICAgLTB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI3CisgICAgMHgxLmZmZjU1OWJiNzcyZGFhYjdlMzE2OTc2ZWNlZGE1NDczcC03LAorICAgIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI4CisgICAgLTB4MS5mZmY1NTliYjc3MmRhYWI3ZTMxNjk3NmVjZWRhNTQ3M3AtNywKKyAgICAtMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwMjkKKyAgICAweDEuZmZmZmZkZjU1NTU1NzViYmJiOTliNzI5ODE2MjBjZmNwLTE1LAorICAgIDB4MS5mZmZmZmVwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgMTAzMAorICAgIC0weDEuZmZmZmZkZjU1NTU1NzViYmJiOTliNzI5ODE2MjBjZmNwLTE1LAorICAgIC0weDEuZmZmZmZlcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDEwMzEKKyAgICAweDEuZmZmZmZmZjU1NTU1NTViYmJiYmJiNzI5NzI5NzYyNTZwLTE1LAorICAgIDB4MS5wLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTAzMgorICAgIC0weDEuZmZmZmZmZjU1NTU1NTViYmJiYmJiNzI5NzI5NzYyNTZwLTE1LAorICAgIC0weDEucC0xNAorICB9LAorICB7IC8vIEVudHJ5IDEwMzMKKyAgICAweDEuMDAwMDAxZmFhYWFhOGFkZGRkOWZkYjk0OTY4MTA2OGZwLTE0LAorICAgIDB4MS4wMDAwMDJwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTAzNAorICAgIC0weDEuMDAwMDAxZmFhYWFhOGFkZGRkOWZkYjk0OTY4MTA2OGZwLTE0LAorICAgIC0weDEuMDAwMDAycC0xNAorICB9LAorICB7IC8vIEVudHJ5IDEwMzUKKyAgICAweDEuZmZmZmZkZmZmZmZmZmQ1NTU1NWQ1NTU1NGQ1YmJiYmVwLTI4LAorICAgIDB4MS5mZmZmZmVwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMTAzNgorICAgIC0weDEuZmZmZmZkZmZmZmZmZmQ1NTU1NWQ1NTU1NGQ1YmJiYmVwLTI4LAorICAgIC0weDEuZmZmZmZlcC0yOAorICB9LAorICB7IC8vIEVudHJ5IDEwMzcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmQ1NTU1NTU1NTU1NTU1YmJiYmJwLTI4LAorICAgIDB4MS5wLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTAzOAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmQ1NTU1NTU1NTU1NTU1YmJiYmJwLTI4LAorICAgIC0weDEucC0yNworICB9LAorICB7IC8vIEVudHJ5IDEwMzkKKyAgICAweDEuMDAwMDAxZmZmZmZmZmVhYWFhYTJhYWFhOWFhZGRkZDNwLTI3LAorICAgIDB4MS4wMDAwMDJwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA0MAorICAgIC0weDEuMDAwMDAxZmZmZmZmZmVhYWFhYTJhYWFhOWFhZGRkZDNwLTI3LAorICAgIC0weDEuMDAwMDAycC0yNworICB9LAorICB7IC8vIEVudHJ5IDEwNDEKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmNTU1NTU3NTU1NTUzNTU1YmJwLTMxLAorICAgIDB4MS5mZmZmZmVwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMTA0MgorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmNTU1NTU3NTU1NTUzNTU1YmJwLTMxLAorICAgIC0weDEuZmZmZmZlcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDEwNDMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmNTU1NTU1NTU1NTU1NTU1YmJwLTMxLAorICAgIDB4MS5wLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmNTU1NTU1NTU1NTU1NTU1YmJwLTMxLAorICAgIC0weDEucC0zMAorICB9LAorICB7IC8vIEVudHJ5IDEwNDUKKyAgICAweDEuMDAwMDAxZmZmZmZmZmZmYWFhYWE4YWFhYWE2YWFhZGRwLTMwLAorICAgIDB4MS4wMDAwMDJwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0NgorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmYWFhYWE4YWFhYWE2YWFhZGRwLTMwLAorICAgIC0weDEuMDAwMDAycC0zMAorICB9LAorICB7IC8vIEVudHJ5IDEwNDcKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWExcDAsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA0OAorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMXAwLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA0OQorICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMXAwLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA1MAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTFwMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWEycDAsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTA1MgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTJwMCwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTA1MworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMXAwLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA1NAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODQ2OTg5OGNjNTE3MDFiODM5YTFwMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU1CisgICAgMHgxLjkyMWZiNTQ0NDJkMTg0Njk4OThjYzUxNzAxYjgzOWExcDAsCisgICAgMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU2CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMXAwLAorICAgIC0weDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNTcKKyAgICAweDEuNDMzYjhhNTRiOTE2ZDdlYjI3Y2VlNjI5MzA2NmU5ZjZwMCwKKyAgICAweDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU4CisgICAgLTB4MS40MzNiOGE1NGI5MTZkN2ViMjdjZWU2MjkzMDY2ZTlmNnAwLAorICAgIC0weDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU5CisgICAgMHgxLjAwZmU5OGI0ZjUwZDhiM2MzNmI5ZTJhMTgwZDk3ZWVhcDAsCisgICAgMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MAorICAgIC0weDEuMDBmZTk4YjRmNTBkOGIzYzM2YjllMmExODBkOTdlZWFwMCwKKyAgICAtMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MQorICAgIDB4MS45MjFmYjc0NDQyY2Y4NDY5OGFlMjFhNmM1NzBkOGQ1ZXAtMSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYyCisgICAgLTB4MS45MjFmYjc0NDQyY2Y4NDY5OGFlMjFhNmM1NzBkOGQ1ZXAtMSwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MworICAgIDB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY0CisgICAgLTB4MS45MjFmYjU0NDQyZDE4NDY5ODk4Y2M1MTcwMWI4MzlhMnAtMSwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2NQorICAgIDB4MS45MjFmYjQ0NDQyZDEwNDY5ODk2MjFhNmM1NzBkOGYwNHAtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA2NgorICAgIC0weDEuOTIxZmI0NDQ0MmQxMDQ2OTg5NjIxYTZjNTcwZDhmMDRwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY3CisgICAgMHgxLjU0ZTA0Yzc5ZWQ5YTkzYjAxYzZhOTA2MmRiZDhlMGZmcC0xLAorICAgIDB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY4CisgICAgLTB4MS41NGUwNGM3OWVkOWE5M2IwMWM2YTkwNjJkYmQ4ZTBmZnAtMSwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNjkKKyAgICAweDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNiwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcwCisgICAgLTB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTA3MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTA3MworICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNzQKKyAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNzUKKyAgICAweDEuZmZmZmY3ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc2CisgICAgLTB4MS5mZmZmZjdmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xNDksCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMTA3OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTE0OSwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMTA3OQorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTA4MAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgxCisgICAgMC4wLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgyCisgICAgLTAuMCwKKyAgICAtMC4wZgorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2F0YW5oX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9hdGFuaF9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmI2ODA4YgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9hdGFuaF9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwyNDU4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZG91YmxlLCBkb3VibGU+IGdfYXRhbmhfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAtMHgxLjMzYzUzNzI1NmFjMjZlYTFiODg2NWEwMjZlNzJjNzUycC0xLAorICAgIC0weDEuMTM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS4zM2M1MzcyNTZhYzI2ZWExYjg4NjVhMDI2ZTcyYzc1MnAtMSwKKyAgICAweDEuMTM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIC0weDEuNDQ3NjdmZGM4NTM3NzNlY2Q2NWI0M2IwZWZkMWY4ZDZwLTEsCisgICAgLTB4MS4xZjA3YzFmMDdjMWY0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS40NDc2N2ZkYzg1Mzc3M2VjZDY1YjQzYjBlZmQxZjhkNnAtMSwKKyAgICAweDEuMWYwN2MxZjA3YzFmNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAtMHgxLjc3NjFkZGJkMDU3M2I3ZmYxZDUxZTMwMGJkYjQzOWJlcC0xLAorICAgIC0weDEuNDAwMDAwMDEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS43NzYxZGRiZDA1NzNiN2ZmMWQ1MWUzMDBiZGI0MzliZXAtMSwKKyAgICAweDEuNDAwMDAwMDEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIC0weDEuNjI1OTQ5NGE0YmIzOTdmZjg5ZGQ4NGI3NGUyMzBmMzFwLTIsCisgICAgLTB4MS41NGQ5ZDgxMTQ2OGMycC0yCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS42MjU5NDk0YTRiYjM5N2ZmODlkZDg0Yjc0ZTIzMGYzMXAtMiwKKyAgICAweDEuNTRkOWQ4MTE0NjhjMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgLTB4MS42NzE5YTZmYmZlZjFkN2ZjMzI2ZDA2NzkwMzE4M2NkZHAtMiwKKyAgICAtMHgxLjU5MTFjM2E3MGNlYmRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS42NzE5YTZmYmZlZjFkN2ZjMzI2ZDA2NzkwMzE4M2NkZHAtMiwKKyAgICAweDEuNTkxMWMzYTcwY2ViZHAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgLTB4MS5hZDc1Yjk4NDFiMjRlMjY0ODc1NDgzZGVmMTYxMGMwMXAtMSwKKyAgICAtMHgxLjVlY2UzNTRmZjgwYTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5hZDc1Yjk4NDFiMjRlMjY0ODc1NDgzZGVmMTYxMGMwMXAtMSwKKyAgICAweDEuNWVjZTM1NGZmODBhMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgLTB4MS5jMDhlNmFhNTVlNDE3MmRiNGM0MTMxMzJiMjQyODNlZHAtMSwKKyAgICAtMHgxLjY4YWUxY2E4ZjZhZDZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5jMDhlNmFhNTVlNDE3MmRiNGM0MTMxMzJiMjQyODNlZHAtMSwKKyAgICAweDEuNjhhZTFjYThmNmFkNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgLTB4MS5kNmYxMGE3MDgxZTdlY2M0YTJkM2Q5ZTIzNzFkMWNiMHAtMSwKKyAgICAtMHgxLjczOWNlNzM5Y2U3M2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS5kNmYxMGE3MDgxZTdlY2M0YTJkM2Q5ZTIzNzFkMWNiMHAtMSwKKyAgICAweDEuNzM5Y2U3MzljZTczY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgLTB4MS44NjI3OTYzMTdlZDNkN2ZjYjhiZWM3NDJiMmVhNWMwYnAtMiwKKyAgICAtMHgxLjc0NGY4NjEzYzUxNGJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS44NjI3OTYzMTdlZDNkN2ZjYjhiZWM3NDJiMmVhNWMwYnAtMiwKKyAgICAweDEuNzQ0Zjg2MTNjNTE0YnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgLTB4MS44MDI3ZmU0OTZlYWFkMDAwNmEzZGY0YTdjZmMzOTliYXAtNSwKKyAgICAtMHgxLjdmZGZmN2ZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS44MDI3ZmU0OTZlYWFkMDAwNmEzZGY0YTdjZmMzOTliYXAtNSwKKyAgICAweDEuN2ZkZmY3ZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS44MDYwMmExMzhhNDhlNTgxYjdiZjBhMWQxZjg0NzY5ZnAtMTAsCisgICAgLTB4MS44MDYwMTgwNjAxZmY2cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLjgwNjAyYTEzOGE0OGU1ODFiN2JmMGExZDFmODQ3NjlmcC0xMCwKKyAgICAweDEuODA2MDE4MDYwMWZmNnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIC0weDEuOWYzMjNlY2JmOTg0YzVkNjEzODIxMTllYWZjZGRmMzZwLTMsCisgICAgLTB4MS45OTk5OTk5OTk5OTlhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuOWYzMjNlY2JmOTg0YzVkNjEzODIxMTllYWZjZGRmMzZwLTMsCisgICAgMHgxLjk5OTk5OTk5OTk5OWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIC0weDEuYjdjNTRmNDU4MmE4ZjUyY2IwNDM0YjYyNGNiMzE0MGJwLTIsCisgICAgLTB4MS45ZTk3MDM3MzVmNjUycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuYjdjNTRmNDU4MmE4ZjUyY2IwNDM0YjYyNGNiMzE0MGJwLTIsCisgICAgMHgxLjllOTcwMzczNWY2NTJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIC0weDEuYWM0NGExZjkyMzI1MGY4NmUwNmQ4OGU2OTE5YTFhNGZwLTI0LAorICAgIC0weDEuYWM0NGExZjkyMzIzOHAtMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS5hYzQ0YTFmOTIzMjUwZjg2ZTA2ZDg4ZTY5MTlhMWE0ZnAtMjQsCisgICAgMHgxLmFjNDRhMWY5MjMyMzhwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAtMHgxLmNlZTYyYzUxNjg4MjE4YWJjYTM2ZWZjZjVmNmFkZDYzcC0yLAorICAgIC0weDEuYjFiZmExYzJmZjVjOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLmNlZTYyYzUxNjg4MjE4YWJjYTM2ZWZjZjVmNmFkZDYzcC0yLAorICAgIDB4MS5iMWJmYTFjMmZmNWM4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAtMHgxLmI0YzExODM4MjdkNGE4MDVkNjRkZTZmODcwY2Q2ODg4cC01LAorICAgIC0weDEuYjQ1NzQ2ZmI0NTk4MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLmI0YzExODM4MjdkNGE4MDVkNjRkZTZmODcwY2Q2ODg4cC01LAorICAgIDB4MS5iNDU3NDZmYjQ1OTgwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAtMHgxLmNkMWNlODY1OGYxZTI3ZjkyOWJiMjZmNzFjZjM5ZXAtMywKKyAgICAtMHgxLmM1NzlkNDA0M2UwNTRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS5jZDFjZTg2NThmMWUyN2Y5MjliYjI2ZjcxY2YzOWVwLTMsCisgICAgMHgxLmM1NzlkNDA0M2UwNTRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIC0weDEuZjRiOTc1NWYyYzI2ZTdmYzkwNmI4NzkyN2YzMDc2ZWNwLTIsCisgICAgLTB4MS5kMDRiOWJiMGJkYTI4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuZjRiOTc1NWYyYzI2ZTdmYzkwNmI4NzkyN2YzMDc2ZWNwLTIsCisgICAgMHgxLmQwNGI5YmIwYmRhMjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIC0weDEuZDQ5ZGQ1Y2Q4MDg2ZDdmZTE5NmRmMWRhNjNhYWRhZjlwLTQsCisgICAgLTB4MS5kMjk1MjNiYjY5MzI4cC00CisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuZDQ5ZGQ1Y2Q4MDg2ZDdmZTE5NmRmMWRhNjNhYWRhZjlwLTQsCisgICAgMHgxLmQyOTUyM2JiNjkzMjhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIC0weDEuZjdmNjBhYzk1NjExZTc1YTJhMDg1ZjM1YTdjNTA4ZGNwLTIsCisgICAgLTB4MS5kMmRjZTc4MGE3MzA0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuZjdmNjBhYzk1NjExZTc1YTJhMDg1ZjM1YTdjNTA4ZGNwLTIsCisgICAgMHgxLmQyZGNlNzgwYTczMDRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIC0weDEuZGY4NzVlYjMyNmIyMDliOWM5YTAwZjgyZTNkYmMzYmFwLTMsCisgICAgLTB4MS5kNmY0MWUzZWE2NDNhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEuZGY4NzVlYjMyNmIyMDliOWM5YTAwZjgyZTNkYmMzYmFwLTMsCisgICAgMHgxLmQ2ZjQxZTNlYTY0M2FwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIC0weDEuZmUwZGM0ZmFiZTgxZjcyZDA0MmQ0NTljZGIxN2Y3YzVwLTIsCisgICAgLTB4MS5kN2FkMTA1NWVkNTg3cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuZmUwZGM0ZmFiZTgxZjcyZDA0MmQ0NTljZGIxN2Y3YzVwLTIsCisgICAgMHgxLmQ3YWQxMDU1ZWQ1ODdwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIC0weDEuZWRlN2ZlZjg1NjE1ZDU3NjI3MjNhNGJjOTA3MWJjZmNwLTQsCisgICAgLTB4MS5lYjg2Yjg1YmY2NWQ4cC00CisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuZWRlN2ZlZjg1NjE1ZDU3NjI3MjNhNGJjOTA3MWJjZmNwLTQsCisgICAgMHgxLmViODZiODViZjY1ZDhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIC0weDEuZmZmZjBmMDVkYjQxOWUwNTYyYThhMTNlMGM4OGVjMGNwLTMsCisgICAgLTB4MS5mNTk3MDdlM2Y0OWQwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuZmZmZjBmMDVkYjQxOWUwNTYyYThhMTNlMGM4OGVjMGNwLTMsCisgICAgMHgxLmY1OTcwN2UzZjQ5ZDBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEuMzQwYWY3NjQ3ODNlZGZmZmFjMTk5YjBlYmYwMWMzNjJwMSwKKyAgICAtMHgxLmY3Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLjM0MGFmNzY0NzgzZWRmZmZhYzE5OWIwZWJmMDFjMzYycDEsCisgICAgMHgxLmY3Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgLTB4MS5mYzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjlhY2E5NXAtNTIsCisgICAgLTB4MS5mYzBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEuZmMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDI5YWNhOTVwLTUyLAorICAgIDB4MS5mYzBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAtMHgxLmZkYzkzZWEwNGU2MDMwMDIxYmYzYjdmMWI3Mjc0YWRkcC01LAorICAgIC0weDEuZmQyMTBhZjc3ODU2Y3AtNQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmZkYzkzZWEwNGU2MDMwMDIxYmYzYjdmMWI3Mjc0YWRkcC01LAorICAgIDB4MS5mZDIxMGFmNzc4NTZjcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLmZmZWFhOTExMTVhNGU4NzE2ZGM5ZjA5YmUyMGE5MzY0cC03LAorICAgIC0weDEuZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuZmZlYWE5MTExNWE0ZTg3MTZkYzlmMDliZTIwYTkzNjRwLTcsCisgICAgMHgxLmZmZXAtNworICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgLTB4MS45YTc3NWU2ODc4NTBkODc3NTg3MTE0ZjkzMWY2MTM2OXAzLAorICAgIC0weDEuZmZmZmZmZmZlMDNlZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLjlhNzc1ZTY4Nzg1MGQ4Nzc1ODcxMTRmOTMxZjYxMzY5cDMsCisgICAgMHgxLmZmZmZmZmZmZTAzZWRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEuOWJhODYzZmI2YmY4ZTc5MWM4MDk5ZTU1Y2ZmNTcwYzNwMywKKyAgICAtMHgxLmZmZmZmZmZmZTI4NjNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS45YmE4NjNmYjZiZjhlNzkxYzgwOTllNTVjZmY1NzBjM3AzLAorICAgIDB4MS5mZmZmZmZmZmUyODYzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAtMHgxLmYzNjlkOGVlZGZiYjM4NGIwZWUzMWJlNDI0NDIzZWMycDMsCisgICAgLTB4MS5mZmZmZmZmZmZmZTBicC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuZjM2OWQ4ZWVkZmJiMzg0YjBlZTMxYmU0MjQ0MjNlYzJwMywKKyAgICAweDEuZmZmZmZmZmZmZmUwYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgLTB4MS4wMmJkMjJiZDE5Nzk3ODE1YjFkZGVmYzkwYzQxZjhmYnA0LAorICAgIC0weDEuZmZmZmZmZmZmZmY1ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLjAyYmQyMmJkMTk3OTc4MTViMWRkZWZjOTBjNDFmOGZicDQsCisgICAgMHgxLmZmZmZmZmZmZmZmNWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEuMTg0MWE0YmFiMmQ2ZDAzYTI4NTM3ZjQzZGU5ZTkwYTRwNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS4xODQxYTRiYWIyZDZkMDNhMjg1MzdmNDNkZTllOTBhNHA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmY1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEucC05OSwKKyAgICAweDEuMHAtOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEucC05OSwKKyAgICAtMHgxLjBwLTk5CisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMDAwMDAwMDE1NTU1NTU1NTU1NXAtNDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwMDAwMDAwMTU1NTU1NTU1NTU1cC00MSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuMDE1ODkxYzllYWVmZDgxZjVlZGI5NTgzZjM4NzE4ODlwLTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuMDE1ODkxYzllYWVmZDgxZjVlZGI5NTgzZjM4NzE4ODlwLTMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDA2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuMTkzZWE3YWFkMDMxM2VjYmY5NmVlMmFhNzA1N2VlN2NwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuMTkzZWE3YWFkMDMxM2VjYmY5NmVlMmFhNzA1N2VlN2NwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDA3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEuMDAwNTU1ODg4YWQ0YzliZTEwM2E4NjJkY2Y5MzNkYjZwLTYsCisgICAgMHgxLjAwMDAwMDAwMDAwMzBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEuMDAwNTU1ODg4YWQ0YzliZTEwM2E4NjJkY2Y5MzNkYjZwLTYsCisgICAgLTB4MS4wMDAwMDAwMDAwMDMwcC02CisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuMDAwMDA1NTU1NWE4OTg4Y2QyYWQ1NzUzNzdlY2UwZDdwLTEwLAorICAgIDB4MS4wMDAwMDAwMDAwMjAxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS4wMDAwMDU1NTU1YTg5ODhjZDJhZDU3NTM3N2VjZTBkN3AtMTAsCisgICAgLTB4MS4wMDAwMDAwMDAwMjAxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLjAxNTg5MWM5ZjEwN2Q4MWY1ZWRjMmExZjg1ZDAzZTU3cC0zLAorICAgIDB4MS4wMDAwMDAwMDA2MHAtMworICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS4wMTU4OTFjOWYxMDdkODFmNWVkYzJhMWY4NWQwM2U1N3AtMywKKyAgICAtMHgxLjAwMDAwMDAwMDYwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuMDA1NTg4YWQ1OTdjZWZlZDM1Mzk1NDliODZjZTJiMWJwLTQsCisgICAgMHgxLjAwMDAwMDAwMjIwcC00CisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLjAwNTU4OGFkNTk3Y2VmZWQzNTM5NTQ5Yjg2Y2UyYjFicC00LAorICAgIC0weDEuMDAwMDAwMDAyMjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS4wMDAwMDU1NTc3ODg4YWFhZDFjZjM3OGRkNWI0Y2FhM3AtMTAsCisgICAgMHgxLjAwMDAwMDAwMjIwcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS4wMDAwMDU1NTc3ODg4YWFhZDFjZjM3OGRkNWI0Y2FhM3AtMTAsCisgICAgLTB4MS4wMDAwMDAwMDIyMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS4xOTNlYTdmY2EwNmQ3MDAwMDAwZmQ2ZTNlNDUwMzZjM3AtMSwKKyAgICAweDEuMDAwMDAwM2Q1YzJkOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS4xOTNlYTdmY2EwNmQ3MDAwMDAwZmQ2ZTNlNDUwMzZjM3AtMSwKKyAgICAtMHgxLjAwMDAwMDNkNWMyZDlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS4wMTU4OTIwYWVlZmZiN2RmNjJmYzVmNzJkMDVhZmM4YXAtMywKKyAgICAweDEuMDAwMDAwNHAtMworICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS4wMTU4OTIwYWVlZmZiN2RmNjJmYzVmNzJkMDVhZmM4YXAtMywKKyAgICAtMHgxLjAwMDAwMDRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS4wMTU4OTRkNjFiYjJhN2YwZWU2NTMyZmE2NmMxMzg4N3AtMywKKyAgICAweDEuMDAwMDAzMHAtMworICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgLTB4MS4wMTU4OTRkNjFiYjJhN2YwZWU2NTMyZmE2NmMxMzg4N3AtMywKKyAgICAtMHgxLjAwMDAwMzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS4wMDI1NWM4YTViNGY5ODEzNDYxM2M2YWUxMDBiMTdkMnAtNSwKKyAgICAweDEuMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAtMHgxLjAwMjU1YzhhNWI0Zjk4MTM0NjEzYzZhZTEwMGIxN2QycC01LAorICAgIC0weDEuMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEuMTk5NDAzYzg5NWYzYjJmYmQ2ZTA0ZWY2M2U1ZTBiOTlwLTEsCisgICAgMHgxLjAwM2ZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIC0weDEuMTk5NDAzYzg5NWYzYjJmYmQ2ZTA0ZWY2M2U1ZTBiOTlwLTEsCisgICAgLTB4MS4wMDNmZmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuMDA0MDEwMDQwMDA0ODAwMDAwMDAwMDAwMDU1OTU3NTZwLTUwLAorICAgIDB4MS4wMDQwMTAwNDAwMDQ4cC01MAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLTB4MS4wMDQwMTAwNDAwMDQ4MDAwMDAwMDAwMDAwNTU5NTc1NnAtNTAsCisgICAgLTB4MS4wMDQwMTAwNDAwMDQ4cC01MAorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS4wMGI1ZTkzMWU0YzMwODA5MTY5NDhmYTI4MzkwMmZhOHAtNCwKKyAgICAweDEuMDA2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS4wMGI1ZTkzMWU0YzMwODA5MTY5NDhmYTI4MzkwMmZhOHAtNCwKKyAgICAtMHgxLjAwNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS4wMjFjODU3NzY1MGZhNDFkMjQyODE1NjFlZGNiMTI3M3AtMTAsCisgICAgMHgxLjAyMWM4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuMDIxYzg1Nzc2NTBmYTQxZDI0MjgxNTYxZWRjYjEyNzNwLTEwLAorICAgIC0weDEuMDIxYzhwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjAzODU4ZTUxMDg4ZDI3ZjlkZjgzNzc0MTM5NTYzZjJjcC02LAorICAgIDB4MS4wMzhwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAtMHgxLjAzODU4ZTUxMDg4ZDI3ZjlkZjgzNzc0MTM5NTYzZjJjcC02LAorICAgIC0weDEuMDM4cC02CisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMHgxLjFlOWIyZmQxOGQ5MWI0MmUzOTBkMTNlOWJlYjY5NzhjcC0xLAorICAgIDB4MS4wNDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAtMHgxLjFlOWIyZmQxOGQ5MWI0MmUzOTBkMTNlOWJlYjY5NzhjcC0xLAorICAgIC0weDEuMDQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjA4NDE3NzZjNDIwZDQ3MDc2ODlmNDUzMjlhOWJmMmNlcC03LAorICAgIDB4MS4wODRwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAtMHgxLjA4NDE3NzZjNDIwZDQ3MDc2ODlmNDUzMjlhOWJmMmNlcC03LAorICAgIC0weDEuMDg0cC03CisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLjM3ZWQ0MTZkZmFmNjc0N2IzMDdiZWU1ODkxNTdmZTkzcC0xLAorICAgIDB4MS4xNjUwZWZlZGI5ZWIycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgLTB4MS4zN2VkNDE2ZGZhZjY3NDdiMzA3YmVlNTg5MTU3ZmU5M3AtMSwKKyAgICAtMHgxLjE2NTBlZmVkYjllYjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuNDVlMTE0MWE4YzAwZTBiMGViNzY3ZWIzMzgyZjIwYjhwLTEsCisgICAgMHgxLjFmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLjQ1ZTExNDFhOGMwMGUwYjBlYjc2N2ViMzM4MmYyMGI4cC0xLAorICAgIC0weDEuMWZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS40NWUxMTQxYThjMDBmODE4Yzg1YWIzNWNlODk2ODNhMnAtMSwKKyAgICAweDEuMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIC0weDEuNDVlMTE0MWE4YzAwZjgxOGM4NWFiMzVjZTg5NjgzYTJwLTEsCisgICAgLTB4MS4ycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjJlMjIzMTE5ZDMyZjg3MGExMjliNzhhMTk2ZWU0YzhkcC03LAorICAgIDB4MS4yZTJwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAtMHgxLjJlMjIzMTE5ZDMyZjg3MGExMjliNzhhMTk2ZWU0YzhkcC03LAorICAgIC0weDEuMmUycC03CisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjYwMGM5YzZmNzBlZmNkODVjZDE2MTg5ZWU2ODhlYWQwcC0xLAorICAgIDB4MS4zMTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAtMHgxLjYwMGM5YzZmNzBlZmNkODVjZDE2MTg5ZWU2ODhlYWQwcC0xLAorICAgIC0weDEuMzE2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLjNiNWFmYzJiOGNmZDg3ZjY1NWM5MTQxNGM1OTY5ZDYwcC0yLAorICAgIDB4MS4zMWNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAtMHgxLjNiNWFmYzJiOGNmZDg3ZjY1NWM5MTQxNGM1OTY5ZDYwcC0yLAorICAgIC0weDEuMzFjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjYyZTQzMDcxMjgxMDA4MDAwMDFmNzg4MWJhYmM0NGYzcC0xLAorICAgIDB4MS4zMzMzMzM4NjE3NTI5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgLTB4MS42MmU0MzA3MTI4MTAwODAwMDAxZjc4ODFiYWJjNDRmM3AtMSwKKyAgICAtMHgxLjMzMzMzMzg2MTc1MjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEuMzNhZWY1NDViYjIwOTY4NTM3YjA5Mzc1ZTZkNWM2MGFwLTcsCisgICAgMHgxLjMzYWNhNGFlMmIwODFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAtMHgxLjMzYWVmNTQ1YmIyMDk2ODUzN2IwOTM3NWU2ZDVjNjBhcC03LAorICAgIC0weDEuMzNhY2E0YWUyYjA4MXAtNworICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS45YzVjZmJiODg5YTc0MTlmZTc3MDVlODkzYjk5ZmJiNXAtMSwKKyAgICAweDEuNTU4NmFkODY2OTQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIC0weDEuOWM1Y2ZiYjg4OWE3NDE5ZmU3NzA1ZTg5M2I5OWZiYjVwLTEsCisgICAgLTB4MS41NTg2YWQ4NjY5NDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLjlkNWUwNzY1ZDMxODJlNDE3ZTRkOTE4MDhmMzBiOTVmcC0xLAorICAgIDB4MS41NjE1MmE1MWRkYTcycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgLTB4MS45ZDVlMDc2NWQzMTgyZTQxN2U0ZDkxODA4ZjMwYjk1ZnAtMSwKKyAgICAtMHgxLjU2MTUyYTUxZGRhNzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuOWQ3ODNhZjlmOTdiY2UzM2JkMjIxYTk5NTRiZWZiMGNwLTEsCisgICAgMHgxLjU2MjNhYjI3MWZhNTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLjlkNzgzYWY5Zjk3YmNlMzNiZDIyMWE5OTU0YmVmYjBjcC0xLAorICAgIC0weDEuNTYyM2FiMjcxZmE1MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS41NmEwZjBiNDQ3NmRlODAyNzBhNjMzMmZmNDQ1MDUzM3AtNSwKKyAgICAweDEuNTY2ZGQ0ODkyZmFiOXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEuNTZhMGYwYjQ0NzZkZTgwMjcwYTYzMzJmZjQ0NTA1MzNwLTUsCisgICAgLTB4MS41NjZkZDQ4OTJmYWI5cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLjVkYjQzYWEwZTNlNTVmZmZhNWFkOTg4NmU4ZjIyY2I4cC0zLAorICAgIDB4MS41YTU4MmNkYzRlOWQ0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS41ZGI0M2FhMGUzZTU1ZmZmYTVhZDk4ODZlOGYyMmNiOHAtMywKKyAgICAtMHgxLjVhNTgyY2RjNGU5ZDRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuYWI5ZGZhMGVjODliODI0N2MwM2Y3MGQ2ZmNjZGZkNjZwLTEsCisgICAgMHgxLjVkZDM0ZTdhZjhkNjFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLmFiOWRmYTBlYzg5YjgyNDdjMDNmNzBkNmZjY2RmZDY2cC0xLAorICAgIC0weDEuNWRkMzRlN2FmOGQ2MXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS42N2E2NDhlNWIxNmM2YTY5OTlkOTY2NWE4YzI4OGQyN3AtOCwKKyAgICAweDEuNjdhNTVjNDlhYTVkNnAtOAorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuNjdhNjQ4ZTViMTZjNmE2OTk5ZDk2NjVhOGMyODhkMjdwLTgsCisgICAgLTB4MS42N2E1NWM0OWFhNWQ2cC04CisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLjdiNTdlZTdiZWE1N2E3ZmNlYmFhZWE2ZjU1NzcwNmMycC0yLAorICAgIDB4MS42YWU0OTFmNzBjN2NicC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS43YjU3ZWU3YmVhNTdhN2ZjZWJhYWVhNmY1NTc3MDZjMnAtMiwKKyAgICAtMHgxLjZhZTQ5MWY3MGM3Y2JwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuNzIyMmI1MGZkNGY4Y2UwOTU0ZTg5MzEzOTMzYmRlZDNwLTMsCisgICAgMHgxLjZlMjg1NmUyODU2ZjVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLjcyMjJiNTBmZDRmOGNlMDk1NGU4OTMxMzkzM2JkZWQzcC0zLAorICAgIC0weDEuNmUyODU2ZTI4NTZmNXAtMworICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS5jZjYzNDcxOTFmNWI1YWJhMjJkYzg0MDBmYTg4MmNlZXAtMSwKKyAgICAweDEuN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuY2Y2MzQ3MTkxZjViNWFiYTIyZGM4NDAwZmE4ODJjZWVwLTEsCisgICAgLTB4MS43cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLjgzOTE2Zjg2ODI4NGY4ODJhZDk0NjNkMTc0YTU5ZDk3cC0yLAorICAgIDB4MS43MjEwNjBjMWE3M2NlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS44MzkxNmY4NjgyODRmODgyYWQ5NDYzZDE3NGE1OWQ5N3AtMiwKKyAgICAtMHgxLjcyMTA2MGMxYTczY2VwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuODVlMDgwNmU4ZTEzYjdmY2MwODQ3OTUyOWM4MTA0ZTZwLTIsCisgICAgMHgxLjc0MTFkNDYzYmZlOTBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLjg1ZTA4MDZlOGUxM2I3ZmNjMDg0Nzk1MjljODEwNGU2cC0yLAorICAgIC0weDEuNzQxMWQ0NjNiZmU5MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS5mMjI3MmFmNDZiYmUwODAwMDAxMmI4N2QwOGU3OTMyZnAtMSwKKyAgICAweDEuODAwMDAwMDc4ZWFhY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEuZjIyNzJhZjQ2YmJlMDgwMDAwMTJiODdkMDhlNzkzMmZwLTEsCisgICAgLTB4MS44MDAwMDAwNzhlYWFjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLmYyMjcyYWY0NmJiZjA4MDAwMDFmYWQwZmQ3NjZlOGNmcC0xLAorICAgIDB4MS44MDAwMDAwNzhlYWIzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS5mMjI3MmFmNDZiYmYwODAwMDAxZmFkMGZkNzY2ZThjZnAtMSwKKyAgICAtMHgxLjgwMDAwMDA3OGVhYjNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuODNlNGEzNTNmMzRmMzU2MmQ5ZDIzZjQ1ZGM4YjJlMjlwLTcsCisgICAgMHgxLjgzZXAtNworICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEuODNlNGEzNTNmMzRmMzU2MmQ5ZDIzZjQ1ZGM4YjJlMjlwLTcsCisgICAgLTB4MS44M2VwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuODliNTQxZDFiMzlmYTMwYTA1NGQ2OWMzOGZmYmRiNWVwLTQsCisgICAgMHgxLjg4OHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEuODliNTQxZDFiMzlmYTMwYTA1NGQ2OWMzOGZmYmRiNWVwLTQsCisgICAgLTB4MS44ODhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuOGEwOGMzMmVlMTNjZDk0MjJiOWFkMTJmMzk4ZjUwYmJwLTgsCisgICAgMHgxLjhhMDc4YzAzZjhkY2VwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMHgxLjhhMDhjMzJlZTEzY2Q5NDIyYjlhZDEyZjM5OGY1MGJicC04LAorICAgIC0weDEuOGEwNzhjMDNmOGRjZXAtOAorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS45NDY2NjlhNmJiYTkwOWM0YmM1ZGE4NTJlNzVhM2Q2NnAtOCwKKyAgICAweDEuOTQ2NTE5NDY1MTk0MXAtOAorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0weDEuOTQ2NjY5YTZiYmE5MDljNGJjNWRhODUyZTc1YTNkNjZwLTgsCisgICAgLTB4MS45NDY1MTk0NjUxOTQxcC04CisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLjljN2QxODRhYzY1MDVlZWUyMWFjZTY3MzJhNTI3MzBjcC0zLAorICAgIDB4MS45NzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAtMHgxLjljN2QxODRhYzY1MDVlZWUyMWFjZTY3MzJhNTI3MzBjcC0zLAorICAgIC0weDEuOTcwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLjk4ZGEzYzQwMDAwZTk4MDFlYzgyOWExMzg5OTQyNWVjcC00LAorICAgIDB4MS45NzhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLjk4ZGEzYzQwMDAwZTk4MDFlYzgyOWExMzg5OTQyNWVjcC00LAorICAgIC0weDEuOTc4cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMHgxLjlhZjkzY2RjNTYyNDAwMDAwMDBmZmY0MWEwNDIyMGZmcC00LAorICAgIDB4MS45OTk5OTlhM2ExOGMycC00CisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS45YWY5M2NkYzU2MjQwMDAwMDAwZmZmNDFhMDQyMjBmZnAtNCwKKyAgICAtMHgxLjk5OTk5OWEzYTE4YzJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuOWFmOTNjZGM1NjZmMDAwMDAwMTk3ZjI5N2ExMzg5NWNwLTQsCisgICAgMHgxLjk5OTk5OWEzYTFkNjZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLjlhZjkzY2RjNTY2ZjAwMDAwMDE5N2YyOTdhMTM4OTVjcC00LAorICAgIC0weDEuOTk5OTk5YTNhMWQ2NnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS4xOTNlYTdmYThkNzcxZmZmZmZlNmRlNjYwYWFiNDA0NXAwLAorICAgIDB4MS45OTk5OTlkMzAzMjg3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS4xOTNlYTdmYThkNzcxZmZmZmZlNmRlNjYwYWFiNDA0NXAwLAorICAgIC0weDEuOTk5OTk5ZDMwMzI4N3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS45YWY5M2QwYzllZjdkODAwMDAwMTdiOTdjMGMwOTMwY3AtNCwKKyAgICAweDEuOTk5OTk5ZDM2ZWM0NHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEuOWFmOTNkMGM5ZWY3ZDgwMDAwMDE3Yjk3YzBjMDkzMGNwLTQsCisgICAgLTB4MS45OTk5OTlkMzZlYzQ0cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMHgxLjlmMzIzZjc2Mzg3MjY4MDAwMDFlZGEzNzAxYTVjMzM4cC0zLAorICAgIDB4MS45OTk5OWEzZDA5MzYxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS45ZjMyM2Y3NjM4NzI2ODAwMDAxZWRhMzcwMWE1YzMzOHAtMywKKyAgICAtMHgxLjk5OTk5YTNkMDkzNjFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuOWYzMjNmZDQ3MTc1YjdmZmZmZTA1ZmJmOTYwZWZjNmFwLTMsCisgICAgMHgxLjk5OTk5YTk3N2Q2MjNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLjlmMzIzZmQ0NzE3NWI3ZmZmZmUwNWZiZjk2MGVmYzZhcC0zLAorICAgIC0weDEuOTk5OTlhOTc3ZDYyM3AtMworICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS45ZjMyM2ZlMTBjOWExODAwMDAxZWZiYmUwYmI0OGViYnAtMywKKyAgICAweDEuOTk5OTlhYTM5NzcwYXAtMworICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuOWYzMjNmZTEwYzlhMTgwMDAwMWVmYmJlMGJiNDhlYmJwLTMsCisgICAgLTB4MS45OTk5OWFhMzk3NzBhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLjlhMTc5YmUxZTdhNmU4MDFhMGNiYzE3NzBjY2MwNjkxcC01LAorICAgIDB4MS45OWNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAtMHgxLjlhMTc5YmUxZTdhNmU4MDFhMGNiYzE3NzBjY2MwNjkxcC01LAorICAgIC0weDEuOTljcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLmE1MjU2OTcxZGM2ZTQ0MDY5OGYyNTQxMGY5YTUwOGZmcC0xMCwKKyAgICAweDEuYTUyNTUxYjMxMzUzY3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAtMHgxLmE1MjU2OTcxZGM2ZTQ0MDY5OGYyNTQxMGY5YTUwOGZmcC0xMCwKKyAgICAtMHgxLmE1MjU1MWIzMTM1M2NwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLmFkNmRmMDBjODJjZDkyYzkzMTc3NTE0ZGQyNDU1NjdicC0yNCwKKyAgICAweDEuYWQ2ZGYwMGM4MmNjMHAtMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLmFkNmRmMDBjODJjZDkyYzkzMTc3NTE0ZGQyNDU1NjdicC0yNCwKKyAgICAtMHgxLmFkNmRmMDBjODJjYzBwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmFlYzY0ODk1MGFhOWI2MTYwYmY0NWJmNDViMmNlMGJlcC04LAorICAgIDB4MS5hZWM0YjIwMWFhNTNicC04CisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgLTB4MS5hZWM2NDg5NTBhYTliNjE2MGJmNDViZjQ1YjJjZTBiZXAtOCwKKyAgICAtMHgxLmFlYzRiMjAxYWE1M2JwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuYjZjYWJiMzVmMzM4ZjdmYjgzMjIzNDcwYzlmYmZiMDlwLTMsCisgICAgMHgxLmIwMzJlMTM4YTUzOWRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAtMHgxLmI2Y2FiYjM1ZjMzOGY3ZmI4MzIyMzQ3MGM5ZmJmYjA5cC0zLAorICAgIC0weDEuYjAzMmUxMzhhNTM5ZHAtMworICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS5kNmY0YzY0YmVlOTVkODg0YjA3YTUzZmUxMmQ1NzFmNHAtMiwKKyAgICAweDEuYjg1NjgwMDAxYzMzMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuZDZmNGM2NGJlZTk1ZDg4NGIwN2E1M2ZlMTJkNTcxZjRwLTIsCisgICAgLTB4MS5iODU2ODAwMDFjMzMycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLmMxODRiNWZiZWQ4MTkyZmE0NTNkNGQ5YzE1NzdhOWUzcC0xMCwKKyAgICAweDEuYzE4NDk5MWJmMmZwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5jMTg0YjVmYmVkODE5MmZhNDUzZDRkOWMxNTc3YTllM3AtMTAsCisgICAgLTB4MS5jMTg0OTkxYmYyZnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEuZTcxZDM1MTdkM2UwMWI0MmQ1ZGFlNGMzYWFmNzA1MDNwLTIsCisgICAgMHgxLmM1NmIwYjk2Y2RmOTFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMHgxLmU3MWQzNTE3ZDNlMDFiNDJkNWRhZTRjM2FhZjcwNTAzcC0yLAorICAgIC0weDEuYzU2YjBiOTZjZGY5MXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIDB4MS5jNWUwMDAwMDAxZGI4ZmZmZWQyZTJiOTRmZDU0ODcwZHAtMjAsCisgICAgMHgxLmM1ZXAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLmM1ZTAwMDAwMDFkYjhmZmZlZDJlMmI5NGZkNTQ4NzBkcC0yMCwKKyAgICAtMHgxLmM1ZXAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAweDEuZjA1NTQ1MWZiMzU5ZTdmZmZmZmJlNTE5NWQ0Mzc3ZThwLTIsCisgICAgMHgxLmNjY2NjY2Q2NjAwODNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLmYwNTU0NTFmYjM1OWU3ZmZmZmZiZTUxOTVkNDM3N2U4cC0yLAorICAgIC0weDEuY2NjY2NjZDY2MDA4M3AtMgorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS5mMWM3MDRlMWYzYzhhODAwYjcxMTMxYzkwZTE5MzU5NnAtMiwKKyAgICAweDEuY2RmMzdjZGYzN2NkOXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuZjFjNzA0ZTFmM2M4YTgwMGI3MTEzMWM5MGUxOTM1OTZwLTIsCisgICAgLTB4MS5jZGYzN2NkZjM3Y2Q5cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLmQwMGEwNTg3MTUxOTQ4MDI5Y2IxZmIzNmIyYTI0OTAzcC01LAorICAgIDB4MS5jZjhiMjA1MmJiYjExcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS5kMDBhMDU4NzE1MTk0ODAyOWNiMWZiMzZiMmEyNDkwM3AtNSwKKyAgICAtMHgxLmNmOGIyMDUyYmJiMTFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEuZjQ2NTZhNjliZWE2ZDczM2U4ZjNkZmFlYzEyMTExYzNwLTIsCisgICAgMHgxLmQwMDhkNTVmNzUzNjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAtMHgxLmY0NjU2YTY5YmVhNmQ3MzNlOGYzZGZhZWMxMjExMWMzcC0yLAorICAgIC0weDEuZDAwOGQ1NWY3NTM2MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS5kMGNhZDZhZGM5YTBjODM3YmJlY2VhOTg0ZTkwMTlkN3AtNSwKKyAgICAweDEuZDA0YjUzMmJkNWI0MXAtNQorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0weDEuZDBjYWQ2YWRjOWEwYzgzN2JiZWNlYTk4NGU5MDE5ZDdwLTUsCisgICAgLTB4MS5kMDRiNTMyYmQ1YjQxcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLmY2MmY0MDc5NGE3YjA4OTk3MzIzMWFlNjE0NTUzZWIwcC0yLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDExcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgLTB4MS5mNjJmNDA3OTRhN2IwODk5NzMyMzFhZTYxNDU1M2ViMHAtMiwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuZDFjMDAwMDAwMDgwNzdmZTVkMDAzZmM4Y2U2M2U0YTRwLTIxLAorICAgIDB4MS5kMWNwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS5kMWMwMDAwMDAwODA3N2ZlNWQwMDNmYzhjZTYzZTRhNHAtMjEsCisgICAgLTB4MS5kMWNwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLmY2YmVkZGI2ZWMyOWI3NDlhOWU0YTNmNjdhMzZiNDE0cC0yLAorICAgIDB4MS5kMWU2NDZmMTU2NTcwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgLTB4MS5mNmJlZGRiNmVjMjliNzQ5YTllNGEzZjY3YTM2YjQxNHAtMiwKKyAgICAtMHgxLmQxZTY0NmYxNTY1NzBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuZmFiYzdjODQxNjYwMzNlYjU3YTQ1M2ZkODM1ODVkYzhwLTIsCisgICAgMHgxLmQ1MGVmYTIwNWExNzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLmZhYmM3Yzg0MTY2MDMzZWI1N2E0NTNmZDgzNTg1ZGM4cC0yLAorICAgIC0weDEuZDUwZWZhMjA1YTE3NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS5kNjJmNDNiNGMyYzczN2ZkZDIzMmNmMmUyOTkwNzZmN3AtMTEsCisgICAgMHgxLmQ2MmYzYjcxZmNhOGNwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS5kNjJmNDNiNGMyYzczN2ZkZDIzMmNmMmUyOTkwNzZmN3AtMTEsCisgICAgLTB4MS5kNjJmM2I3MWZjYThjcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS5lM2E0YjQ2OGYyNTE0ODBhNjA0OWUzZmUxN2I4OTY0NnAtNSwKKyAgICAweDEuZTMxNTBkYWVkYjQ3NnAtNQorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEuZTNhNGI0NjhmMjUxNDgwYTYwNDllM2ZlMTdiODk2NDZwLTUsCisgICAgLTB4MS5lMzE1MGRhZWRiNDc2cC01CisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLmU2OGUwYzJkZTZkMjI4MGM4YTExN2M0ZDYxZDhmNDJmcC01LAorICAgIDB4MS5lNWZiYzllZWNiZGFlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTB4MS5lNjhlMGMyZGU2ZDIyODBjOGExMTdjNGQ2MWQ4ZjQyZnAtNSwKKyAgICAtMHgxLmU1ZmJjOWVlY2JkYWVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEuZTlkZTg2ZThmZDNiZTgwMWE5ZjgzMDg0NGJhNWU1MDFwLTUsCisgICAgMHgxLmU5NDk0MzAzY2Q4MGZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLmU5ZGU4NmU4ZmQzYmU4MDFhOWY4MzA4NDRiYTVlNTAxcC01LAorICAgIC0weDEuZTk0OTQzMDNjZDgwZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5lZGJjYzgyYTAwYTRjMDAxZTdhYzAxODkxODQ5ODAwZXAtNSwKKyAgICAweDEuZWQyM2Y0Yzg5ZGE3MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0weDEuZWRiY2M4MmEwMGE0YzAwMWU3YWMwMTg5MTg0OTgwMGVwLTUsCisgICAgLTB4MS5lZDIzZjRjODlkYTcwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLmZhMGRjOWQ3MTMxZmVlMmIzOGJhOTkzYTY1ZjgyYTA2cC0zLAorICAgIDB4MS5lZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgLTB4MS5mYTBkYzlkNzEzMWZlZTJiMzhiYTk5M2E2NWY4MmEwNnAtMywKKyAgICAtMHgxLmVmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuZjM3NDI5YWY5NjFhOTgyNDc1NGI3N2ExYjU5M2QzOWFwLTQsCisgICAgMHgxLmYwZmUzNTMwZjcyMzlwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAtMHgxLmYzNzQyOWFmOTYxYTk4MjQ3NTRiNzdhMWI1OTNkMzlhcC00LAorICAgIC0weDEuZjBmZTM1MzBmNzIzOXAtNAorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS5mMzc0MjlhZjk2MWFiODllZGRlNmY0YWU3NDM3NWEwNnAtNCwKKyAgICAweDEuZjBmZTM1MzBmNzIzYnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIC0weDEuZjM3NDI5YWY5NjFhYjg5ZWRkZTZmNGFlNzQzNzVhMDZwLTQsCisgICAgLTB4MS5mMGZlMzUzMGY3MjNicC00CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLmYzNzQyOWFmOTYxYWM4ZGMxMjM0YjMzNGQzOGYxZDFicC00LAorICAgIDB4MS5mMGZlMzUzMGY3MjNjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgLTB4MS5mMzc0MjlhZjk2MWFjOGRjMTIzNGIzMzRkMzhmMWQxYnAtNCwKKyAgICAtMHgxLmYwZmUzNTMwZjcyM2NwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEuZjM3NDI5YWY5NjJiMjY4YWM4OGViNmEyZjQwMjYxNTFwLTQsCisgICAgMHgxLmYwZmUzNTMwZjczM2VwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAtMHgxLmYzNzQyOWFmOTYyYjI2OGFjODhlYjZhMmY0MDI2MTUxcC00LAorICAgIC0weDEuZjBmZTM1MzBmNzMzZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS5mMWU5YzQzYjIxMzQ4ODU3YzdlNDY1ZTQ2Nzk5ZGNlMXAtNSwKKyAgICAweDEuZjE0ZDA4YzcxMDlhYXAtNQorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIC0weDEuZjFlOWM0M2IyMTM0ODg1N2M3ZTQ2NWU0Njc5OWRjZTFwLTUsCisgICAgLTB4MS5mMTRkMDhjNzEwOWFhcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLmY5MGI0MjM3NWE0ODZhMzljZGY5YjJjY2YyODI0ZmVjcC00LAorICAgIDB4MS5mNjhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAtMHgxLmY5MGI0MjM3NWE0ODZhMzljZGY5YjJjY2YyODI0ZmVjcC00LAorICAgIC0weDEuZjY4cC00CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLmY3MmExNTNmZjc2ODg4MDhjODk2ZGQ2ZmZlNjUxNmQ0cC01LAorICAgIDB4MS5mNjg4NTgyYmRmNDUwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS5mNzJhMTUzZmY3Njg4ODA4Yzg5NmRkNmZmZTY1MTZkNHAtNSwKKyAgICAtMHgxLmY2ODg1ODJiZGY0NTBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEuZjdlNzAzZjFkYjA2ZTgwMmY5MzIxZmQ1ZTIzOTRlMDdwLTUsCisgICAgMHgxLmY3NDQ5MDk3MDY0MTRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAtMHgxLmY3ZTcwM2YxZGIwNmU4MDJmOTMyMWZkNWUyMzk0ZTA3cC01LAorICAgIC0weDEuZjc0NDkwOTcwNjQxNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS4zNDBhZjc2NDc4M2VkZmZmYWMxOTliMGViZjAxYzM2MnAxLAorICAgIDB4MS5mN2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAtMHgxLjM0MGFmNzY0NzgzZWRmZmZhYzE5OWIwZWJmMDFjMzYycDEsCisgICAgLTB4MS5mN2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuZmEyNGEwMDZmYjcyNzdmZTk5MTA3ZTUzNWYxNDg4ZDdwLTUsCisgICAgMHgxLmY5OHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIC0weDEuZmEyNGEwMDZmYjcyNzdmZTk5MTA3ZTUzNWYxNDg4ZDdwLTUsCisgICAgLTB4MS5mOThwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuZmFiZTkzODRkOGViMjgwMzBkNTMwNmMxZDM4ZmZlM2NwLTUsCisgICAgMHgxLmZhMTk1ZDNmMjgyNGFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAtMHgxLmZhYmU5Mzg0ZDhlYjI4MDMwZDUzMDZjMWQzOGZmZTNjcC01LAorICAgIC0weDEuZmExOTVkM2YyODI0YXAtNQorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS5mYWM1M2NjN2Y1MWEyODI1ZjAzNjE1ZmYyMDExYTNmNHAtNSwKKyAgICAweDEuZmEycC01CisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgLTB4MS5mYWM1M2NjN2Y1MWEyODI1ZjAzNjE1ZmYyMDExYTNmNHAtNSwKKyAgICAtMHgxLmZhMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS5mY2E3MTU2MTBkNGM1ODRhNzIxYjJjMTllNjIyM2M2M3AtNSwKKyAgICAweDEuZmJmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIC0weDEuZmNhNzE1NjEwZDRjNTg0YTcyMWIyYzE5ZTYyMjNjNjNwLTUsCisgICAgLTB4MS5mYmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLmZmMjMwM2U5NGE2ZmE3NzZiOTlmZGNkYWMzNDI0NDNkcC00LAorICAgIDB4MS5mYzdmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgLTB4MS5mZjIzMDNlOTRhNmZhNzc2Yjk5ZmRjZGFjMzQyNDQzZHAtNCwKKyAgICAtMHgxLmZjN2ZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuZmNjYTc3NjIzMjJhMTk1ZWMyODU5MTAzM2U5M2U1NWJwLTcsCisgICAgMHgxLmZjY3AtNworICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIC0weDEuZmNjYTc3NjIzMjJhMTk1ZWMyODU5MTAzM2U5M2U1NWJwLTcsCisgICAgLTB4MS5mY2NwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEuZmRlMzRlNWU3MTExMjgwMmNkNWRjNGUxZmIyZDA2NDBwLTUsCisgICAgMHgxLmZkM2IwMGVmMjhkYzlwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAtMHgxLmZkZTM0ZTVlNzExMTI4MDJjZDVkYzRlMWZiMmQwNjQwcC01LAorICAgIC0weDEuZmQzYjAwZWYyOGRjOXAtNQorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS5mZDVkYTUxZTZiZWU5YjAxOWU2MmNkNzk2Njk5ZGY1Y3AtOCwKKyAgICAweDEuZmQ1YjA0ZjM3YThhZHAtOAorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIC0weDEuZmQ1ZGE1MWU2YmVlOWIwMTllNjJjZDc5NjY5OWRmNWNwLTgsCisgICAgLTB4MS5mZDViMDRmMzdhOGFkcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLmZmMDhiOWIzOTgxNzY4MDIyZTY2ZGQ0MmNkNDE5ZjRjcC05LAorICAgIDB4MS5mZjA4MGZmZmZmZmZmcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgLTB4MS5mZjA4YjliMzk4MTc2ODAyMmU2NmRkNDJjZDQxOWY0Y3AtOSwKKyAgICAtMHgxLmZmMDgwZmZmZmZmZmZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuZmY3ODJhODhiYTBmYmEwMGY5MDhlMTZmMDUxYTE4MTBwLTEwLAorICAgIDB4MS5mZjc3ZmZmZmZmZmZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIC0weDEuZmY3ODJhODhiYTBmYmEwMGY5MDhlMTZmMDUxYTE4MTBwLTEwLAorICAgIC0weDEuZmY3N2ZmZmZmZmZmZnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuMDE1NDgxODkyOGViMTExMzI5MDUzNTI1MDE4MjZhZjVwLTMsCisgICAgMHgxLmZmZjdmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAtMHgxLjAxNTQ4MTg5MjhlYjExMTMyOTA1MzUyNTAxODI2YWY1cC0zLAorICAgIC0weDEuZmZmN2ZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS5mZmZjYTZhNzBkMTU1NjQ0ODJkYzkzYTEzOTc2NGUyZHAtOSwKKyAgICAweDEuZmZmYmZiZmZmZmZmZnAtOQorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIC0weDEuZmZmY2E2YTcwZDE1NTY0NDgyZGM5M2ExMzk3NjRlMmRwLTksCisgICAgLTB4MS5mZmZiZmJmZmZmZmZmcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgMHgxLjAxNTdjZWJkYmM3ZWNmZjU2ZDkzNmRlZjJkYzkwODQ4cC0zLAorICAgIDB4MS5mZmZlN2ZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgLTB4MS4wMTU3Y2ViZGJjN2VjZmY1NmQ5MzZkZWYyZGM5MDg0OHAtMywKKyAgICAtMHgxLmZmZmU3ZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEuZmZmZjJhYWE3MGUxMTIyOWE2NDZjM2VhMjE0ZDVjNmJwLTEwLAorICAgIDB4MS5mZmZlZmZmZmZmY2ZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIC0weDEuZmZmZjJhYWE3MGUxMTIyOWE2NDZjM2VhMjE0ZDVjNmJwLTEwLAorICAgIC0weDEuZmZmZWZmZmZmZmNmZnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuZmU4NDlhZTRhZTA5NDhmYzM1Y2Q1NjBmZTBmN2E2NGZwMiwKKyAgICAweDEuZmZmZmY4MTcwNDMyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIC0weDEuZmU4NDlhZTRhZTA5NDhmYzM1Y2Q1NjBmZTBmN2E2NGZwMiwKKyAgICAtMHgxLmZmZmZmODE3MDQzMmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuZmU4NjM2MTE5ZGVmMDcyN2YwYjIxYWQ4ZGExN2I3MDVwMiwKKyAgICAweDEuZmZmZmY4MTc2OWQzYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIC0weDEuZmU4NjM2MTE5ZGVmMDcyN2YwYjIxYWQ4ZGExN2I3MDVwMiwKKyAgICAtMHgxLmZmZmZmODE3NjlkM2JwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuZmVhYjBmOGQwODkyMzczMjZmNTI0NmNlNzgyMmRkY2FwMiwKKyAgICAweDEuZmZmZmY4MjA3ZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIC0weDEuZmVhYjBmOGQwODkyMzczMjZmNTI0NmNlNzgyMmRkY2FwMiwKKyAgICAtMHgxLmZmZmZmODIwN2ZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuZmZmZmZiYzAwMmFhOWE5OWFhYjEzNGYwY2NmODlkY2ZwLTIwLAorICAgIDB4MS5mZmZmZmJiZmZmZmZmcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIC0weDEuZmZmZmZiYzAwMmFhOWE5OWFhYjEzNGYwY2NmODlkY2ZwLTIwLAorICAgIC0weDEuZmZmZmZiYmZmZmZmZnAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAweDEuMzhhYTliYmM4MWRlODAzNzJkYTA2NjI3M2UxODFmM2RwMywKKyAgICAweDEuZmZmZmZmYzdmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIC0weDEuMzhhYTliYmM4MWRlODAzNzJkYTA2NjI3M2UxODFmM2RwMywKKyAgICAtMHgxLmZmZmZmZmM3ZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEuYTc5MWQ4NzNiY2YxZWY2Y2M1ODliNTViZTk0YzExY2NwMywKKyAgICAweDEuZmZmZmZmZmZmMWZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIC0weDEuYTc5MWQ4NzNiY2YxZWY2Y2M1ODliNTViZTk0YzExY2NwMywKKyAgICAtMHgxLmZmZmZmZmZmZjFmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuMDQ4ZmEzMWVjNmEwNzZjZmQyNmFiYjQ1NmM5ZTg2M2FwNCwKKyAgICAweDEuZmZmZmZmZmZmZmY3ZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIC0weDEuMDQ4ZmEzMWVjNmEwNzZjZmQyNmFiYjQ1NmM5ZTg2M2FwNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmN2ZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuZmZmZmZmZmZmZmZmOGFhYWFhYWFhYWE5ZjExMTExMTFwLTI1LAorICAgIDB4MS5mZmZmZmZmZmZmZmVlcC0yNQorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuZmZmZmZmZmZmZmZmOGFhYWFhYWFhYWE5ZjExMTExMTFwLTI1LAorICAgIC0weDEuZmZmZmZmZmZmZmZlZXAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAtMHgxLjMxZGQyOGM4OWQ2NGYzNTEzZWE5OGYwMTRhZTc2MzBjcDEsCisgICAgLTB4MS5mNzc3Nzc3Nzc3Nzc3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLjMxZGQyOGM4OWQ2NGYzNTEzZWE5OGYwMTRhZTc2MzBjcDEsCisgICAgMHgxLmY3Nzc3Nzc3Nzc3NzdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAtMHgxLjA0ZjY1ZjljNzI5NzUyNzc0OTM4Mjg4M2I4ZTg4ZTMzcDEsCisgICAgLTB4MS5lZWVlZWVlZWVlZWVlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgMHgxLjA0ZjY1ZjljNzI5NzUyNzc0OTM4Mjg4M2I4ZTg4ZTMzcDEsCisgICAgMHgxLmVlZWVlZWVlZWVlZWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAtMHgxLmQ0ZWY5Njg4ODBkY2YxYzQ4YmY2ZDcwNzAwOGU3MWEwcDAsCisgICAgLTB4MS5lNjY2NjY2NjY2NjY1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgMHgxLmQ0ZWY5Njg4ODBkY2YxYzQ4YmY2ZDcwNzAwOGU3MWEwcDAsCisgICAgMHgxLmU2NjY2NjY2NjY2NjVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAtMHgxLmFmMDM4Y2JjZGZlMTc3ZjliOTdjYjEzYWNiNmExZDU2cDAsCisgICAgLTB4MS5kZGRkZGRkZGRkZGRjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgMHgxLmFmMDM4Y2JjZGZlMTc3ZjliOTdjYjEzYWNiNmExZDU2cDAsCisgICAgMHgxLmRkZGRkZGRkZGRkZGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAtMHgxLjkxNTdkZmRkMWIzZThiYjJiYzhjOTRiNjkyYzM2YzhicDAsCisgICAgLTB4MS5kNTU1NTU1NTU1NTUzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgMHgxLjkxNTdkZmRkMWIzZThiYjJiYzhjOTRiNjkyYzM2YzhicDAsCisgICAgMHgxLmQ1NTU1NTU1NTU1NTNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAtMHgxLjc4ZTM2MDYwNGIzMjUxM2FmYTMwMmRkOTA5MGY1NGFmcDAsCisgICAgLTB4MS5jY2NjY2NjY2NjY2NhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgMHgxLjc4ZTM2MDYwNGIzMjUxM2FmYTMwMmRkOTA5MGY1NGFmcDAsCisgICAgMHgxLmNjY2NjY2NjY2NjY2FwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAtMHgxLjY0MDc3NWQ0ZGQ5ODQ1N2IzNmZiN2NlOThlYzQzMzA4cDAsCisgICAgLTB4MS5jNDQ0NDQ0NDQ0NDQxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMHgxLjY0MDc3NWQ0ZGQ5ODQ1N2IzNmZiN2NlOThlYzQzMzA4cDAsCisgICAgMHgxLmM0NDQ0NDQ0NDQ0NDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAtMHgxLjUxY2NhMTZkN2JiOWZmNzk2MDNjMjUzM2M1Yzc2YjdhcDAsCisgICAgLTB4MS5iYmJiYmJiYmJiYmI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgMHgxLjUxY2NhMTZkN2JiOWZmNzk2MDNjMjUzM2M1Yzc2YjdhcDAsCisgICAgMHgxLmJiYmJiYmJiYmJiYjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAtMHgxLjQxOTMzYjBlNDQ2MzA1YTk2YWNlMWJjMjYyY2RlZTk5cDAsCisgICAgLTB4MS5iMzMzMzMzMzMzMzJmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA3CisgICAgMHgxLjQxOTMzYjBlNDQ2MzA1YTk2YWNlMWJjMjYyY2RlZTk5cDAsCisgICAgMHgxLmIzMzMzMzMzMzMzMmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAtMHgxLjMyZWUzYjc3ZjM3NDQxNGQzYTI5MTQxMDgwZGZhYmVhcDAsCisgICAgLTB4MS5hYWFhYWFhYWFhYWE2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgMHgxLjMyZWUzYjc3ZjM3NDQxNGQzYTI5MTQxMDgwZGZhYmVhcDAsCisgICAgMHgxLmFhYWFhYWFhYWFhYTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAtMHgxLjI1OGZkYWU4MzcyYjkyMzFhNjY0ZWE3NmM5ZDY1ODZmcDAsCisgICAgLTB4MS5hMjIyMjIyMjIyMjFkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgMHgxLjI1OGZkYWU4MzcyYjkyMzFhNjY0ZWE3NmM5ZDY1ODZmcDAsCisgICAgMHgxLmEyMjIyMjIyMjIyMWRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAtMHgxLjE5M2VhN2FhZDAzMDJkMDRkY2ZkMWI4ZTE5MmVkODVkcDAsCisgICAgLTB4MS45OTk5OTk5OTk5OTk0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgMHgxLjE5M2VhN2FhZDAzMDJkMDRkY2ZkMWI4ZTE5MmVkODVkcDAsCisgICAgMHgxLjk5OTk5OTk5OTk5OTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAtMHgxLjBkY2VmZWE0ZDAyNWUwYjhkMDkwNTJlNDZmZGY0ZjJlcDAsCisgICAgLTB4MS45MTExMTExMTExMTBicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgMHgxLjBkY2VmZWE0ZDAyNWUwYjhkMDkwNTJlNDZmZGY0ZjJlcDAsCisgICAgMHgxLjkxMTExMTExMTExMGJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAtMHgxLjAzMWVmMTEwOTBmNzcxZDk5MGU0MWU0N2QzMDkxM2Q2cDAsCisgICAgLTB4MS44ODg4ODg4ODg4ODgycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgMHgxLjAzMWVmMTEwOTBmNzcxZDk5MGU0MWU0N2QzMDkxM2Q2cDAsCisgICAgMHgxLjg4ODg4ODg4ODg4ODJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAtMHgxLmYyMjcyYWUzMjVhNDc1NDZmNjk0OTZjZjg2MWJlMDQ2cC0xLAorICAgIC0weDEuN2ZmZmZmZmZmZmZmOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIDB4MS5mMjI3MmFlMzI1YTQ3NTQ2ZjY5NDk2Y2Y4NjFiZTA0NnAtMSwKKyAgICAweDEuN2ZmZmZmZmZmZmZmOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIC0weDEuZGYyZTZkNmU1ZmI5YTNhZWRlNzNiNTU1NzhmNTU2NzJwLTEsCisgICAgLTB4MS43Nzc3Nzc3Nzc3NzcwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgMHgxLmRmMmU2ZDZlNWZiOWEzYWVkZTczYjU1NTc4ZjU1NjcycC0xLAorICAgIDB4MS43Nzc3Nzc3Nzc3NzcwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgLTB4MS5jZDMwMjExNmY1MGFiYWJjNDBjMTMyNDE5ZTFkYWIyYXAtMSwKKyAgICAtMHgxLjZlZWVlZWVlZWVlZTdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuY2QzMDIxMTZmNTBhYmFiYzQwYzEzMjQxOWUxZGFiMmFwLTEsCisgICAgMHgxLjZlZWVlZWVlZWVlZTdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAtMHgxLmJjMGVkMDk0N2ZiZDg4ZTFiYTUyNzIzYjU3OTUwNTkycC0xLAorICAgIC0weDEuNjY2NjY2NjY2NjY1ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIDB4MS5iYzBlZDA5NDdmYmQ4OGUxYmE1MjcyM2I1Nzk1MDU5MnAtMSwKKyAgICAweDEuNjY2NjY2NjY2NjY1ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIC0weDEuYWJiMWM5MDY1ODI1OTcyYWFhZjNkMTY0Y2ExZjUzMjNwLTEsCisgICAgLTB4MS41ZGRkZGRkZGRkZGQ1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLmFiYjFjOTA2NTgyNTk3MmFhYWYzZDE2NGNhMWY1MzIzcC0xLAorICAgIDB4MS41ZGRkZGRkZGRkZGQ1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgLTB4MS45YzA0MWY3ZWQ4ZDIyOWUzMTJhYWQ4NDk5OGEwZTAwOHAtMSwKKyAgICAtMHgxLjU1NTU1NTU1NTU1NGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuOWMwNDFmN2VkOGQyMjllMzEyYWFkODQ5OThhMGUwMDhwLTEsCisgICAgMHgxLjU1NTU1NTU1NTU1NGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAtMHgxLjhjZjNmM2I3OTE3MzliYTM1ODI0YjIwYmI2N2JjMDUxcC0xLAorICAgIC0weDEuNGNjY2NjY2NjY2NjM3AtMQorICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIDB4MS44Y2YzZjNiNzkxNzM5YmEzNTgyNGIyMGJiNjdiYzA1MXAtMSwKKyAgICAweDEuNGNjY2NjY2NjY2NjM3AtMQorICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIC0weDEuN2U3MWRlZDY2NDYwNjE0ZDNjZmVlYWU1MTk1ODUzZmRwLTEsCisgICAgLTB4MS40NDQ0NDQ0NDQ0NDNhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgMHgxLjdlNzFkZWQ2NjQ2MDYxNGQzY2ZlZWFlNTE5NTg1M2ZkcC0xLAorICAgIDB4MS40NDQ0NDQ0NDQ0NDNhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgLTB4MS43MDcwODI3ZjFjN2VlOWZjMjNlYjA5MDk5NDk1Zjc2MHAtMSwKKyAgICAtMHgxLjNiYmJiYmJiYmJiYjFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAweDEuNzA3MDgyN2YxYzdlZTlmYzIzZWIwOTA5OTQ5NWY3NjBwLTEsCisgICAgMHgxLjNiYmJiYmJiYmJiYjFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZGRiNTc5M2M3NjczMDYzYzVlZDVlcC0xLAorICAgIC0weDEuMzMzMzMzMzMzMzMyOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIDB4MS42MmU0MmZlZmEzOWRkYjU3OTNjNzY3MzA2M2M1ZWQ1ZXAtMSwKKyAgICAweDEuMzMzMzMzMzMzMzMyOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzOAorICAgIC0weDEuNTVjMmExNDFiZDkxM2M5ZGE5MWU5YmE5N2Q4NGVmNDJwLTEsCisgICAgLTB4MS4yYWFhYWFhYWFhYTlmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgMHgxLjU1YzJhMTQxYmQ5MTNjOWRhOTFlOWJhOTdkODRlZjQycC0xLAorICAgIDB4MS4yYWFhYWFhYWFhYTlmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgLTB4MS40OTAyYzA4YmVjOGI4ZDZiYTJkZWJjZWU2NzEwN2FhNXAtMSwKKyAgICAtMHgxLjIyMjIyMjIyMjIyMTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAweDEuNDkwMmMwOGJlYzhiOGQ2YmEyZGViY2VlNjcxMDdhYTVwLTEsCisgICAgMHgxLjIyMjIyMjIyMjIyMTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAtMHgxLjNjOWM3OWJjODUwOGNhMmQ1YjkwYTg0MmVlN2VkZmEzcC0xLAorICAgIC0weDEuMTk5OTk5OTk5OTk4ZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIDB4MS4zYzljNzliYzg1MDhjYTJkNWI5MGE4NDJlZTdlZGZhM3AtMSwKKyAgICAweDEuMTk5OTk5OTk5OTk4ZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0NAorICAgIC0weDEuMzA4ODk0ZDcxMGQ3NjdhZjM0OWFkNTY2NGY5MWFmYmNwLTEsCisgICAgLTB4MS4xMTExMTExMTExMTA0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQ1CisgICAgMHgxLjMwODg5NGQ3MTBkNzY3YWYzNDlhZDU2NjRmOTFhZmJjcC0xLAorICAgIDB4MS4xMTExMTExMTExMTA0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgLTB4MS4yNGMwOTZjZjk3NmE5NjA4N2MxMzM1NjI4ZmRjMDA5OHAtMSwKKyAgICAtMHgxLjA4ODg4ODg4ODg4N2JwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuMjRjMDk2Y2Y5NzZhOTYwODdjMTMzNTYyOGZkYzAwOThwLTEsCisgICAgMHgxLjA4ODg4ODg4ODg4N2JwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDgKKyAgICAtMHgxLjE5M2VhN2FhZDAzMGE5NzZhNDE5OGQ1NTA1M2I3Y2I1cC0xLAorICAgIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0OQorICAgIDB4MS4xOTNlYTdhYWQwMzBhOTc2YTQxOThkNTUwNTNiN2NiNXAtMSwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS4xOTNlYTdhYWQwMzBhOTc2YTQxOThkNTUwNTNiN2NiNXAtMSwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIC0weDEuMTkzZWE3YWFkMDMwYTk3NmE0MTk4ZDU1MDUzYjdjYjVwLTEsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLjI0YzA5NmNmOTc2YmM3OWE3YWI3ODk5NWQzNmIwNjZicC0xLAorICAgIDB4MS4wODg4ODg4ODg4ODg5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzUzCisgICAgLTB4MS4yNGMwOTZjZjk3NmJjNzlhN2FiNzg5OTVkMzZiMDY2YnAtMSwKKyAgICAtMHgxLjA4ODg4ODg4ODg4ODlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuMzA4ODk0ZDcxMGQ4YTBiYTU1ZmYwMWViODdjYmMyMjBwLTEsCisgICAgMHgxLjExMTExMTExMTExMTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAtMHgxLjMwODg5NGQ3MTBkOGEwYmE1NWZmMDFlYjg3Y2JjMjIwcC0xLAorICAgIC0weDEuMTExMTExMTExMTExMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIDB4MS4zYzljNzliYzg1MGEwYjUyZmE0ZGFjZDkxMGQxMmEzMnAtMSwKKyAgICAweDEuMTk5OTk5OTk5OTk5YnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1NworICAgIC0weDEuM2M5Yzc5YmM4NTBhMGI1MmZhNGRhY2Q5MTBkMTJhMzJwLTEsCisgICAgLTB4MS4xOTk5OTk5OTk5OTlicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgMHgxLjQ5MDJjMDhiZWM4Y2Q3NWYxMTEwMmRhMzBmMWY3OGQ3cC0xLAorICAgIDB4MS4yMjIyMjIyMjIyMjI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU5CisgICAgLTB4MS40OTAyYzA4YmVjOGNkNzVmMTExMDJkYTMwZjFmNzhkN3AtMSwKKyAgICAtMHgxLjIyMjIyMjIyMjIyMjRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAweDEuNTVjMmExNDFiZDkyOTAyNzE3OWE5MGUxYmNkYzFhMmRwLTEsCisgICAgMHgxLjJhYWFhYWFhYWFhYWRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAtMHgxLjU1YzJhMTQxYmQ5MjkwMjcxNzlhOTBlMWJjZGMxYTJkcC0xLAorICAgIC0weDEuMmFhYWFhYWFhYWFhZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIDB4MS42MmU0MmZlZmEzOWYzOTU3OTNjNzY3MzAwZGEzZWQ1ZXAtMSwKKyAgICAweDEuMzMzMzMzMzMzMzMzNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2MworICAgIC0weDEuNjJlNDJmZWZhMzlmMzk1NzkzYzc2NzMwMGRhM2VkNWVwLTEsCisgICAgLTB4MS4zMzMzMzMzMzMzMzM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY0CisgICAgMHgxLjcwNzA4MjdmMWM4MDUzNmZlYjc2NzNkZDg4Yjk0NmVjcC0xLAorICAgIDB4MS4zYmJiYmJiYmJiYmJmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgLTB4MS43MDcwODI3ZjFjODA1MzZmZWI3NjczZGQ4OGI5NDZlY3AtMSwKKyAgICAtMHgxLjNiYmJiYmJiYmJiYmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuN2U3MWRlZDY2NDYxZDc1M2UzM2FjMmZmNjE4NjQ0ZTBwLTEsCisgICAgMHgxLjQ0NDQ0NDQ0NDQ0NDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjcKKyAgICAtMHgxLjdlNzFkZWQ2NjQ2MWQ3NTNlMzNhYzJmZjYxODY0NGUwcC0xLAorICAgIC0weDEuNDQ0NDQ0NDQ0NDQ0OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS44Y2YzZjNiNzkxNzUxZjg0NTA2MmMxOGY0YjBkN2ZlN3AtMSwKKyAgICAweDEuNGNjY2NjY2NjY2NkMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2OQorICAgIC0weDEuOGNmM2YzYjc5MTc1MWY4NDUwNjJjMThmNGIwZDdmZTdwLTEsCisgICAgLTB4MS40Y2NjY2NjY2NjY2QxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLjljMDQxZjdlZDhkM2JkMTY0NWRlMGI3Yzg1NDRiNzEzcC0xLAorICAgIDB4MS41NTU1NTU1NTU1NTVhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgLTB4MS45YzA0MWY3ZWQ4ZDNiZDE2NDVkZTBiN2M4NTQ0YjcxM3AtMSwKKyAgICAtMHgxLjU1NTU1NTU1NTU1NWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAweDEuYWJiMWM5MDY1ODI3M2I2MmIyNmM0N2RhYmQyYjE2Y2FwLTEsCisgICAgMHgxLjVkZGRkZGRkZGRkZTNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzMKKyAgICAtMHgxLmFiYjFjOTA2NTgyNzNiNjJiMjZjNDdkYWJkMmIxNmNhcC0xLAorICAgIC0weDEuNWRkZGRkZGRkZGRlM3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS5iYzBlZDA5NDdmYmY0MDE4ZjE4OWE5NzI1YTBjODIxNHAtMSwKKyAgICAweDEuNjY2NjY2NjY2NjY2Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIC0weDEuYmMwZWQwOTQ3ZmJmNDAxOGYxODlhOTcyNWEwYzgyMTRwLTEsCisgICAgLTB4MS42NjY2NjY2NjY2NjZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgMHgxLmNkMzAyMTE2ZjUwYzg3NDVhZWQ4NGJkNzUxZmI1NzVjcC0xLAorICAgIDB4MS42ZWVlZWVlZWVlZWY1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgLTB4MS5jZDMwMjExNmY1MGM4NzQ1YWVkODRiZDc1MWZiNTc1Y3AtMSwKKyAgICAtMHgxLjZlZWVlZWVlZWVlZjVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzgKKyAgICAweDEuZGYyZTZkNmU1ZmJiODg0YzY4NGM1MmRmM2IyNjBjMzhwLTEsCisgICAgMHgxLjc3Nzc3Nzc3Nzc3N2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAtMHgxLmRmMmU2ZDZlNWZiYjg4NGM2ODRjNTJkZjNiMjYwYzM4cC0xLAorICAgIC0weDEuNzc3Nzc3Nzc3Nzc3ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM4MAorICAgIDB4MS5mMjI3MmFlMzI1YTY3NTQ2ZjY5NDk2Y2Y4NjFiZTA0NnAtMSwKKyAgICAweDEuODAwMDAwMDAwMDAwN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM4MQorICAgIC0weDEuZjIyNzJhZTMyNWE2NzU0NmY2OTQ5NmNmODYxYmUwNDZwLTEsCisgICAgLTB4MS44MDAwMDAwMDAwMDA3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgMHgxLjAzMWVmMTEwOTBmODgxOGM0ODcwMzE5OWZlYzE0MzNhcDAsCisgICAgMHgxLjg4ODg4ODg4ODg4OTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODMKKyAgICAtMHgxLjAzMWVmMTEwOTBmODgxOGM0ODcwMzE5OWZlYzE0MzNhcDAsCisgICAgLTB4MS44ODg4ODg4ODg4ODkwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgMHgxLjBkY2VmZWE0ZDAyNzAyOTVkOGQ4NzdiMzZlYTFjMGUzcDAsCisgICAgMHgxLjkxMTExMTExMTExMTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAtMHgxLjBkY2VmZWE0ZDAyNzAyOTVkOGQ4NzdiMzZlYTFjMGUzcDAsCisgICAgLTB4MS45MTExMTExMTExMTE5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgMHgxLjE5M2VhN2FhZDAzMTY0MjE0ZWM0MzgwMDFjYzliNTk5cDAsCisgICAgMHgxLjk5OTk5OTk5OTk5YTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODcKKyAgICAtMHgxLjE5M2VhN2FhZDAzMTY0MjE0ZWM0MzgwMDFjYzliNTk5cDAsCisgICAgLTB4MS45OTk5OTk5OTk5OWEycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgMHgxLjI1OGZkYWU4MzcyY2UyNzk2M2M3NTgzNWQ0NmI2NmU2cDAsCisgICAgMHgxLmEyMjIyMjIyMjIyMmJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAtMHgxLjI1OGZkYWU4MzcyY2UyNzk2M2M3NTgzNWQ0NmI2NmU2cDAsCisgICAgLTB4MS5hMjIyMjIyMjIyMjJicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzkwCisgICAgMHgxLjMyZWUzYjc3ZjM3NWFmZDhkZDExY2UzZjllNGI5Mjg3cDAsCisgICAgMHgxLmFhYWFhYWFhYWFhYjRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTEKKyAgICAtMHgxLjMyZWUzYjc3ZjM3NWFmZDhkZDExY2UzZjllNGI5Mjg3cDAsCisgICAgLTB4MS5hYWFhYWFhYWFhYWI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgMHgxLjQxOTMzYjBlNDQ2NDk5NDNmMDkyMjRmY2UzODJjNzk5cDAsCisgICAgMHgxLmIzMzMzMzMzMzMzM2RwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAtMHgxLjQxOTMzYjBlNDQ2NDk5NDNmMDkyMjRmY2UzODJjNzk5cDAsCisgICAgLTB4MS5iMzMzMzMzMzMzMzNkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzk0CisgICAgMHgxLjUxY2NhMTZkN2JiYmMxNzk2MDNjMjUzNTA1YjM2YjdhcDAsCisgICAgMHgxLmJiYmJiYmJiYmJiYzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAtMHgxLjUxY2NhMTZkN2JiYmMxNzk2MDNjMjUzNTA1YjM2YjdhcDAsCisgICAgLTB4MS5iYmJiYmJiYmJiYmM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgMHgxLjY0MDc3NWQ0ZGQ5YTQzMzc0MDBiNThhYmZkZWE2NDRmcDAsCisgICAgMHgxLmM0NDQ0NDQ0NDQ0NGZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAtMHgxLjY0MDc3NWQ0ZGQ5YTQzMzc0MDBiNThhYmZkZWE2NDRmcDAsCisgICAgLTB4MS5jNDQ0NDQ0NDQ0NDRmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMHgxLjc4ZTM2MDYwNGIzNDllYjQzZDhlN2ViMzdhM2MwMWI2cDAsCisgICAgMHgxLmNjY2NjY2NjY2NjZDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTkKKyAgICAtMHgxLjc4ZTM2MDYwNGIzNDllYjQzZDhlN2ViMzdhM2MwMWI2cDAsCisgICAgLTB4MS5jY2NjY2NjY2NjY2Q4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLjkxNTdkZmRkMWI0MTQ4ZWE2MzgxNzM1NmZjMDRjMTNicDAsCisgICAgMHgxLmQ1NTU1NTU1NTU1NjFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAtMHgxLjkxNTdkZmRkMWI0MTQ4ZWE2MzgxNzM1NmZjMDRjMTNicDAsCisgICAgLTB4MS5kNTU1NTU1NTU1NTYxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgMHgxLmFmMDM4Y2JjZGZlNGRjZjBlNWEwMDBiNTcwNzdkMDA1cDAsCisgICAgMHgxLmRkZGRkZGRkZGRkZWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAtMHgxLmFmMDM4Y2JjZGZlNGRjZjBlNWEwMDBiNTcwNzdkMDA1cDAsCisgICAgLTB4MS5kZGRkZGRkZGRkZGVhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA0CisgICAgMHgxLmQ0ZWY5Njg4ODBlMTZlN2M1NzczOGVlMWNhYjI3NjU3cDAsCisgICAgMHgxLmU2NjY2NjY2NjY2NzNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAtMHgxLmQ0ZWY5Njg4ODBlMTZlN2M1NzczOGVlMWNhYjI3NjU3cDAsCisgICAgLTB4MS5lNjY2NjY2NjY2NjczcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgMHgxLjA0ZjY1ZjljNzI5YWE4YjQwODIyNzZiMDY5YjZjNDc5cDEsCisgICAgMHgxLmVlZWVlZWVlZWVlZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICAtMHgxLjA0ZjY1ZjljNzI5YWE4YjQwODIyNzZiMDY5YjZjNDc5cDEsCisgICAgLTB4MS5lZWVlZWVlZWVlZWZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA4CisgICAgMHgxLjMxZGQyOGM4OWQ2NGYzNTEzZWE5OGYwMTRhZTc2MzBjcDEsCisgICAgMHgxLmY3Nzc3Nzc3Nzc3NzdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAtMHgxLjMxZGQyOGM4OWQ2NGYzNTEzZWE5OGYwMTRhZTc2MzBjcDEsCisgICAgLTB4MS5mNzc3Nzc3Nzc3Nzc3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDEwCisgICAgLTB4MS4yYjcwODg3MjMyMGUxZDMxZTRiMDNmMTA4NmE5YzA0N3A0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIDB4MS4yYjcwODg3MjMyMGUxZDMxZTRiMDNmMTA4NmE5YzA0N3A0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgLTB4MS4yNWU0ZjdiMjczN2ZhMTQ0ODY2MTIxNzNjNjg5Njg5MnA0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIDB4MS4yNWU0ZjdiMjczN2ZhMTQ0ODY2MTIxNzNjNjg5Njg5MnA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgLTB4MS4yMmE2OTMzNGRiOGM5N2E2MmY4ZjcyYTVkZTdkZTQ2MnA0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxNQorICAgIDB4MS4yMmE2OTMzNGRiOGM5N2E2MmY4ZjcyYTVkZTdkZTQ2MnA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDE2CisgICAgMHgxLjJiNzA4ODcyMzIwZTFkMzFlNGIwM2YxMDg2YTljMDQ3cDQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAtMHgxLjJiNzA4ODcyMzIwZTFkMzFlNGIwM2YxMDg2YTljMDQ3cDQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgMHgxLjI1ZTRmN2IyNzM3ZmExNDQ4NjYxMjE3M2M2ODk2ODkycDQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTkKKyAgICAtMHgxLjI1ZTRmN2IyNzM3ZmExNDQ4NjYxMjE3M2M2ODk2ODkycDQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgMHgxLjIyYTY5MzM0ZGI4Yzk3YTYyZjhmNzJhNWRlN2RlNDYycDQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjEKKyAgICAtMHgxLjIyYTY5MzM0ZGI4Yzk3YTYyZjhmNzJhNWRlN2RlNDYycDQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIyCisgICAgMHgxLjRhODUxYmFmMjdiNmQ1NDliN2M1MjRmYmQ5MTY0NGIycC0zLAorICAgIDB4MS40N2FlMTQ3YWUxNDdhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDIzCisgICAgLTB4MS40YTg1MWJhZjI3YjZkNTQ5YjdjNTI0ZmJkOTE2NDRiMnAtMywKKyAgICAtMHgxLjQ3YWUxNDdhZTE0N2FwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjQKKyAgICAweDEuNGE4NTFiYWYyN2I2ZTViNTU0OTA5OTZjODEzNzI5NmFwLTMsCisgICAgMHgxLjQ3YWUxNDdhZTE0N2JwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAtMHgxLjRhODUxYmFmMjdiNmU1YjU1NDkwOTk2YzgxMzcyOTZhcC0zLAorICAgIC0weDEuNDdhZTE0N2FlMTQ3YnAtMworICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIDB4MS40YTg1MWJhZjI3YjZmNjIwZjE1YzBkZGQyOTYyZDcyMXAtMywKKyAgICAweDEuNDdhZTE0N2FlMTQ3Y3AtMworICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIC0weDEuNGE4NTFiYWYyN2I2ZjYyMGYxNWMwZGRkMjk2MmQ3MjFwLTMsCisgICAgLTB4MS40N2FlMTQ3YWUxNDdjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDI4CisgICAgLTB4MS40YTg1MWJhZjI3YjZmNjIwZjE1YzBkZGQyOTYyZDcyMXAtMywKKyAgICAtMHgxLjQ3YWUxNDdhZTE0N2NwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEuNGE4NTFiYWYyN2I2ZjYyMGYxNWMwZGRkMjk2MmQ3MjFwLTMsCisgICAgMHgxLjQ3YWUxNDdhZTE0N2NwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzAKKyAgICAtMHgxLjRhODUxYmFmMjdiNmU1YjU1NDkwOTk2YzgxMzcyOTZhcC0zLAorICAgIC0weDEuNDdhZTE0N2FlMTQ3YnAtMworICB9LAorICB7IC8vIEVudHJ5IDQzMQorICAgIDB4MS40YTg1MWJhZjI3YjZlNWI1NTQ5MDk5NmM4MTM3Mjk2YXAtMywKKyAgICAweDEuNDdhZTE0N2FlMTQ3YnAtMworICB9LAorICB7IC8vIEVudHJ5IDQzMgorICAgIC0weDEuNGE4NTFiYWYyN2I2ZDU0OWI3YzUyNGZiZDkxNjQ0YjJwLTMsCisgICAgLTB4MS40N2FlMTQ3YWUxNDdhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgMHgxLjRhODUxYmFmMjdiNmQ1NDliN2M1MjRmYmQ5MTY0NGIycC0zLAorICAgIDB4MS40N2FlMTQ3YWUxNDdhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDM0CisgICAgMHgxLjE5M2VhN2FhZDAzMDllY2JmOTZlZTJhYTVhYWQ0M2QycC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDM1CisgICAgLTB4MS4xOTNlYTdhYWQwMzA5ZWNiZjk2ZWUyYWE1YWFkNDNkMnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzYKKyAgICAweDEuMTkzZWE3YWFkMDMwYTk3NmE0MTk4ZDU1MDUzYjdjYjVwLTEsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAtMHgxLjE5M2VhN2FhZDAzMGE5NzZhNDE5OGQ1NTA1M2I3Y2I1cC0xLAorICAgIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzOAorICAgIDB4MS4xOTNlYTdhYWQwMzBiZWNiZjk2ZWUyYWE1YjAyOTkyN3AtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzOQorICAgIC0weDEuMTkzZWE3YWFkMDMwYmVjYmY5NmVlMmFhNWIwMjk5MjdwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDQwCisgICAgMHgxLjA1OGFlZmE4MTE0NTExZTllZTMzYTZmOTdiYjc2ZjBhcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgLTB4MS4wNThhZWZhODExNDUxMWU5ZWUzM2E2Zjk3YmI3NmYwYXAtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDIKKyAgICAweDEuMDU4YWVmYTgxMTQ1MWE3Mjc2YmMyZjgyMDQzYjZhN2RwLTIsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDMKKyAgICAtMHgxLjA1OGFlZmE4MTE0NTFhNzI3NmJjMmY4MjA0M2I2YTdkcC0yLAorICAgIC0weDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ0NAorICAgIDB4MS4wNThhZWZhODExNDUyYjgzODdjZDQwOTMxNTVlYWZlNHAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ0NQorICAgIC0weDEuMDU4YWVmYTgxMTQ1MmI4Mzg3Y2Q0MDkzMTU1ZWFmZTRwLTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDQ2CisgICAgMHgxLjAxNTg5MWM5ZWFlZjZlNzhjNDcxZWVlOTg5NGNlYWJkcC0zLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgLTB4MS4wMTU4OTFjOWVhZWY2ZTc4YzQ3MWVlZTk4OTRjZWFiZHAtMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDgKKyAgICAweDEuMDE1ODkxYzllYWVmNzY5OTQ2N2EwZjZiOTE2YzY0OTRwLTMsCisgICAgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDkKKyAgICAtMHgxLjAxNTg5MWM5ZWFlZjc2OTk0NjdhMGY2YjkxNmM2NDk0cC0zLAorICAgIC0weDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIDB4MS4wMTU4OTFjOWVhZWY4NmRhNGE4YTUwNmZhMWIxODk2OXAtMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDQ1MQorICAgIC0weDEuMDE1ODkxYzllYWVmODZkYTRhOGE1MDZmYTFiMTg5NjlwLTMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgMHgxLjAwNTU4OGFkMzc1YWM1YzMwYjBhOWQ1YmJlN2Q1ZGQ3cC00LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgLTB4MS4wMDU1ODhhZDM3NWFjNWMzMGIwYTlkNWJiZTdkNWRkN3AtNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTQKKyAgICAweDEuMDA1NTg4YWQzNzVhY2RjYjEzMTJhNTYzYzY4NTI1NWVwLTQsCisgICAgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAtMHgxLjAwNTU4OGFkMzc1YWNkY2IxMzEyYTU2M2M2ODUyNTVlcC00LAorICAgIC0weDEuMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ1NgorICAgIDB4MS4wMDU1ODhhZDM3NWFkZGRiMjMyMmI1NzNkNjk2Mzc3MXAtNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIC0weDEuMDA1NTg4YWQzNzVhZGRkYjIzMjJiNTczZDY5NjM3NzFwLTQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgMHgxLjAwMTU1ODg5MWFlZTFjYjI5ZDUzZGRiZGI0NmU3OWQ5cC01LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgLTB4MS4wMDE1NTg4OTFhZWUxY2IyOWQ1M2RkYmRiNDZlNzlkOXAtNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjAKKyAgICAweDEuMDAxNTU4ODkxYWVlMjRiNDlkZDNmZGM1YjY2ZWU5ZjFwLTUsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjEKKyAgICAtMHgxLjAwMTU1ODg5MWFlZTI0YjQ5ZGQzZmRjNWI2NmVlOWYxcC01LAorICAgIC0weDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ2MgorICAgIDB4MS4wMDE1NTg4OTFhZWUzNGI4OWVkNDNkZDViYTcwMmE1MnAtNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ2MworICAgIC0weDEuMDAxNTU4ODkxYWVlMzRiODllZDQzZGQ1YmE3MDJhNTJwLTUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDY0CisgICAgMHgxLjAwMDU1NTg4OGFkMWMxOGQ4ZDMyNTVhYWM2ZDJhY2FkcC02LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgNDY1CisgICAgLTB4MS4wMDA1NTU4ODhhZDFjMThkOGQzMjU1YWFjNmQyYWNhZHAtNiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjYKKyAgICAweDEuMDAwNTU1ODg4YWQxYzk4ZTBkM2E1NjJhY2VkMzI4YjVwLTYsCisgICAgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjcKKyAgICAtMHgxLjAwMDU1NTg4OGFkMWM5OGUwZDNhNTYyYWNlZDMyOGI1cC02LAorICAgIC0weDEuMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIDB4MS4wMDA1NTU4ODhhZDFkOThmMGQ0YTU3MmFkZWQ0MzhjN3AtNiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIC0weDEuMDAwNTU1ODg4YWQxZDk4ZjBkNGE1NzJhZGVkNDM4YzdwLTYsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDcwCisgICAgMHgxLjAwMDE1NTU4ODg5MWE1MzcyM2QwY2ZjMjVkOTkyZmQycC03LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC04CisgIH0sCisgIHsgLy8gRW50cnkgNDcxCisgICAgLTB4MS4wMDAxNTU1ODg4OTFhNTM3MjNkMGNmYzI1ZDk5MmZkMnAtNywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzIKKyAgICAweDEuMDAwMTU1NTg4ODkxYWQzNzQzZDE0ZmM0NWRhMTJlZjJwLTcsCisgICAgMHgxLjBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzMKKyAgICAtMHgxLjAwMDE1NTU4ODg5MWFkMzc0M2QxNGZjNDVkYTEyZWYycC03LAorICAgIC0weDEuMHAtNworICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIDB4MS4wMDAxNTU1ODg4OTFiZDM3ODNkMjRmYzg1ZGIxMzMzMnAtNywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNworICB9LAorICB7IC8vIEVudHJ5IDQ3NQorICAgIC0weDEuMDAwMTU1NTg4ODkxYmQzNzgzZDI0ZmM4NWRiMTMzMzJwLTcsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC03CisgIH0sCisgIHsgLy8gRW50cnkgNDc2CisgICAgMHgxLjAwMDA1NTU1ODg4OGE1MWFlNjFlZjEzM2ZjMDc4ZjlhcC04LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC05CisgIH0sCisgIHsgLy8gRW50cnkgNDc3CisgICAgLTB4MS4wMDAwNTU1NTg4ODhhNTFhZTYxZWYxMzNmYzA3OGY5YXAtOCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzgKKyAgICAweDEuMDAwMDU1NTU4ODg4YWQxYWVlMWVmOTM0MDQwNzk3NWFwLTgsCisgICAgMHgxLjBwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzkKKyAgICAtMHgxLjAwMDA1NTU1ODg4OGFkMWFlZTFlZjkzNDA0MDc5NzVhcC04LAorICAgIC0weDEuMHAtOAorICB9LAorICB7IC8vIEVudHJ5IDQ4MAorICAgIDB4MS4wMDAwNTU1NTg4ODhiZDFhZmUxZjA5MzQxNDA3YTg1YnAtOCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtOAorICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIC0weDEuMDAwMDU1NTU4ODg4YmQxYWZlMWYwOTM0MTQwN2E4NWJwLTgsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC04CisgIH0sCisgIHsgLy8gRW50cnkgNDgyCisgICAgMHgxLjAwMDAxNTU1NTg4ODgxMWFjZmM5OGMxZTlhZTIzMGZjcC05LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ4MworICAgIC0weDEuMDAwMDE1NTU1ODg4ODExYWNmYzk4YzFlOWFlMjMwZmNwLTksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIDB4MS4wMDAwMTU1NTU4ODg4OTFhZDFjOThjOWU5YjAyMzBmNHAtOSwKKyAgICAweDEuMHAtOQorICB9LAorICB7IC8vIEVudHJ5IDQ4NQorICAgIC0weDEuMDAwMDE1NTU1ODg4ODkxYWQxYzk4YzllOWIwMjMwZjRwLTksCisgICAgLTB4MS4wcC05CisgIH0sCisgIHsgLy8gRW50cnkgNDg2CisgICAgMHgxLjAwMDAxNTU1NTg4ODk5MWFkNWM5OGQ5ZTliNDIzMTQ0cC05LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC05CisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgLTB4MS4wMDAwMTU1NTU4ODg5OTFhZDVjOThkOWU5YjQyMzE0NHAtOSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAweDEuMDAwMDA1NTU1NTg4ODA4YWQxMmQzNzNiNzVhYjIwYTNwLTEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIC0weDEuMDAwMDA1NTU1NTg4ODA4YWQxMmQzNzNiNzVhYjIwYTNwLTEwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTAKKyAgICAweDEuMDAwMDA1NTU1NTg4ODg4YWQxYWQzNzQzNzVhYmEwOWZwLTEwLAorICAgIDB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ5MQorICAgIC0weDEuMDAwMDA1NTU1NTg4ODg4YWQxYWQzNzQzNzVhYmEwOWZwLTEwLAorICAgIC0weDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTIKKyAgICAweDEuMDAwMDA1NTU1NTg4OTg4YWQyYWQzNzUzNzVhY2EwYWZwLTEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ5MworICAgIC0weDEuMDAwMDA1NTU1NTg4OTg4YWQyYWQzNzUzNzVhY2EwYWZwLTEwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTQKKyAgICAweDEuMDAwMDAwMDU1NTU1NGQ4ODg4ODgwYWQxYWQxMmVlMWVwLTE0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIC0weDEuMDAwMDAwMDU1NTU1NGQ4ODg4ODgwYWQxYWQxMmVlMWVwLTE0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTYKKyAgICAweDEuMDAwMDAwMDU1NTU1NTU4ODg4ODg4YWQxYWQxYWVlMWVwLTE0LAorICAgIDB4MS4wcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDQ5NworICAgIC0weDEuMDAwMDAwMDU1NTU1NTU4ODg4ODg4YWQxYWQxYWVlMWVwLTE0LAorICAgIC0weDEuMHAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTgKKyAgICAweDEuMDAwMDAwMDU1NTU1NjU4ODg4ODk4YWQxYWQyYWVlMWVwLTE0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDQ5OQorICAgIC0weDEuMDAwMDAwMDU1NTU1NjU4ODg4ODk4YWQxYWQyYWVlMWVwLTE0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBhYWFhYWFhYWFhYWE5YjExMTFwLTI5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yOQorICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBhYWFhYWFhYWFhYWE5YjExMTFwLTI5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDIKKyAgICAweDEuMDAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1NTg4ODhwLTI4LAorICAgIDB4MS4wcC0yOAorICB9LAorICB7IC8vIEVudHJ5IDUwMworICAgIC0weDEuMDAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1NTg4ODhwLTI4LAorICAgIC0weDEuMHAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAweDEuMDAwMDAwMDAwMDAwMTA1NTU1NTU1NTU1NTU2NTg4ODhwLTI4LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yOAorICB9LAorICB7IC8vIEVudHJ5IDUwNQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTA1NTU1NTU1NTU1NTU2NTg4ODhwLTI4LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjAwYWFhYWFhYWFhYWFhOWFiMTFwLTMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDUwNworICAgIC0weDEuZmZmZmZmZmZmZmZmZjAwYWFhYWFhYWFhYWFhOWFiMTFwLTMxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDgKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTU1ODhwLTMwLAorICAgIDB4MS4wcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDUwOQorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTU1ODhwLTMwLAorICAgIC0weDEuMHAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTAKKyAgICAweDEuMDAwMDAwMDAwMDAwMTAwNTU1NTU1NTU1NTU1NjU1ODhwLTMwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDUxMQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTAwNTU1NTU1NTU1NTU1NjU1ODhwLTMwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTIKKyAgICAtMHgxLjE5M2VhN2FhZDAzMGJlY2JmOTZlZTJhYTViMDI5OTI3cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDUxMworICAgIDB4MS4xOTNlYTdhYWQwMzBiZWNiZjk2ZWUyYWE1YjAyOTkyN3AtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDUxNAorICAgIC0weDEuMTkzZWE3YWFkMDMwYTk3NmE0MTk4ZDU1MDUzYjdjYjVwLTEsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTE1CisgICAgMHgxLjE5M2VhN2FhZDAzMGE5NzZhNDE5OGQ1NTA1M2I3Y2I1cC0xLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgLTB4MS4xOTNlYTdhYWQwMzA5ZWNiZjk2ZWUyYWE1YWFkNDNkMnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTcKKyAgICAweDEuMTkzZWE3YWFkMDMwOWVjYmY5NmVlMmFhNWFhZDQzZDJwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICAtMHgxLjA1OGFlZmE4MTE0NTJiODM4N2NkNDA5MzE1NWVhZmU0cC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDUxOQorICAgIDB4MS4wNThhZWZhODExNDUyYjgzODdjZDQwOTMxNTVlYWZlNHAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDUyMAorICAgIC0weDEuMDU4YWVmYTgxMTQ1MWE3Mjc2YmMyZjgyMDQzYjZhN2RwLTIsCisgICAgLTB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTIxCisgICAgMHgxLjA1OGFlZmE4MTE0NTFhNzI3NmJjMmY4MjA0M2I2YTdkcC0yLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTIyCisgICAgLTB4MS4wNThhZWZhODExNDUxMWU5ZWUzM2E2Zjk3YmI3NmYwYXAtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjMKKyAgICAweDEuMDU4YWVmYTgxMTQ1MTFlOWVlMzNhNmY5N2JiNzZmMGFwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjQKKyAgICAtMHgxLjAxNTg5MWM5ZWFlZjg2ZGE0YThhNTA2ZmExYjE4OTY5cC0zLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDUyNQorICAgIDB4MS4wMTU4OTFjOWVhZWY4NmRhNGE4YTUwNmZhMWIxODk2OXAtMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDUyNgorICAgIC0weDEuMDE1ODkxYzllYWVmNzY5OTQ2N2EwZjZiOTE2YzY0OTRwLTMsCisgICAgLTB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTI3CisgICAgMHgxLjAxNTg5MWM5ZWFlZjc2OTk0NjdhMGY2YjkxNmM2NDk0cC0zLAorICAgIDB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgLTB4MS4wMTU4OTFjOWVhZWY2ZTc4YzQ3MWVlZTk4OTRjZWFiZHAtMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjkKKyAgICAweDEuMDE1ODkxYzllYWVmNmU3OGM0NzFlZWU5ODk0Y2VhYmRwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAtMHgxLjAwNTU4OGFkMzc1YWRkZGIyMzIyYjU3M2Q2OTYzNzcxcC00LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDUzMQorICAgIDB4MS4wMDU1ODhhZDM3NWFkZGRiMjMyMmI1NzNkNjk2Mzc3MXAtNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIC0weDEuMDA1NTg4YWQzNzVhY2RjYjEzMTJhNTYzYzY4NTI1NWVwLTQsCisgICAgLTB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTMzCisgICAgMHgxLjAwNTU4OGFkMzc1YWNkY2IxMzEyYTU2M2M2ODUyNTVlcC00LAorICAgIDB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTM0CisgICAgLTB4MS4wMDU1ODhhZDM3NWFjNWMzMGIwYTlkNWJiZTdkNWRkN3AtNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAweDEuMDA1NTg4YWQzNzVhYzVjMzBiMGE5ZDViYmU3ZDVkZDdwLTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzYKKyAgICAtMHgxLjAwMTU1ODg5MWFlZTM0Yjg5ZWQ0M2RkNWJhNzAyYTUycC01LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDUzNworICAgIDB4MS4wMDE1NTg4OTFhZWUzNGI4OWVkNDNkZDViYTcwMmE1MnAtNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDUzOAorICAgIC0weDEuMDAxNTU4ODkxYWVlMjRiNDlkZDNmZGM1YjY2ZWU5ZjFwLTUsCisgICAgLTB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTM5CisgICAgMHgxLjAwMTU1ODg5MWFlZTI0YjQ5ZGQzZmRjNWI2NmVlOWYxcC01LAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgLTB4MS4wMDE1NTg4OTFhZWUxY2IyOWQ1M2RkYmRiNDZlNzlkOXAtNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDEKKyAgICAweDEuMDAxNTU4ODkxYWVlMWNiMjlkNTNkZGJkYjQ2ZTc5ZDlwLTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAtMHgxLjAwMDU1NTg4OGFkMWQ5OGYwZDRhNTcyYWRlZDQzOGM3cC02LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDU0MworICAgIDB4MS4wMDA1NTU4ODhhZDFkOThmMGQ0YTU3MmFkZWQ0MzhjN3AtNiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDU0NAorICAgIC0weDEuMDAwNTU1ODg4YWQxYzk4ZTBkM2E1NjJhY2VkMzI4YjVwLTYsCisgICAgLTB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTQ1CisgICAgMHgxLjAwMDU1NTg4OGFkMWM5OGUwZDNhNTYyYWNlZDMyOGI1cC02LAorICAgIDB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgLTB4MS4wMDA1NTU4ODhhZDFjMThkOGQzMjU1YWFjNmQyYWNhZHAtNiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDcKKyAgICAweDEuMDAwNTU1ODg4YWQxYzE4ZDhkMzI1NWFhYzZkMmFjYWRwLTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDgKKyAgICAtMHgxLjAwMDE1NTU4ODg5MWJkMzc4M2QyNGZjODVkYjEzMzMycC03LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNworICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIDB4MS4wMDAxNTU1ODg4OTFiZDM3ODNkMjRmYzg1ZGIxMzMzMnAtNywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNworICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIC0weDEuMDAwMTU1NTg4ODkxYWQzNzQzZDE0ZmM0NWRhMTJlZjJwLTcsCisgICAgLTB4MS4wcC03CisgIH0sCisgIHsgLy8gRW50cnkgNTUxCisgICAgMHgxLjAwMDE1NTU4ODg5MWFkMzc0M2QxNGZjNDVkYTEyZWYycC03LAorICAgIDB4MS4wcC03CisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgLTB4MS4wMDAxNTU1ODg4OTFhNTM3MjNkMGNmYzI1ZDk5MmZkMnAtNywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTMKKyAgICAweDEuMDAwMTU1NTg4ODkxYTUzNzIzZDBjZmMyNWQ5OTJmZDJwLTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTQKKyAgICAtMHgxLjAwMDA1NTU1ODg4OGJkMWFmZTFmMDkzNDE0MDdhODVicC04LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtOAorICB9LAorICB7IC8vIEVudHJ5IDU1NQorICAgIDB4MS4wMDAwNTU1NTg4ODhiZDFhZmUxZjA5MzQxNDA3YTg1YnAtOCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtOAorICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIC0weDEuMDAwMDU1NTU4ODg4YWQxYWVlMWVmOTM0MDQwNzk3NWFwLTgsCisgICAgLTB4MS4wcC04CisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgMHgxLjAwMDA1NTU1ODg4OGFkMWFlZTFlZjkzNDA0MDc5NzVhcC04LAorICAgIDB4MS4wcC04CisgIH0sCisgIHsgLy8gRW50cnkgNTU4CisgICAgLTB4MS4wMDAwNTU1NTg4ODhhNTFhZTYxZWYxMzNmYzA3OGY5YXAtOCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTkKKyAgICAweDEuMDAwMDU1NTU4ODg4YTUxYWU2MWVmMTMzZmMwNzhmOWFwLTgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjAKKyAgICAtMHgxLjAwMDAxNTU1NTg4ODk5MWFkNWM5OGQ5ZTliNDIzMTQ0cC05LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtOQorICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIDB4MS4wMDAwMTU1NTU4ODg5OTFhZDVjOThkOWU5YjQyMzE0NHAtOSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtOQorICB9LAorICB7IC8vIEVudHJ5IDU2MgorICAgIC0weDEuMDAwMDE1NTU1ODg4ODkxYWQxYzk4YzllOWIwMjMwZjRwLTksCisgICAgLTB4MS4wcC05CisgIH0sCisgIHsgLy8gRW50cnkgNTYzCisgICAgMHgxLjAwMDAxNTU1NTg4ODg5MWFkMWM5OGM5ZTliMDIzMGY0cC05LAorICAgIDB4MS4wcC05CisgIH0sCisgIHsgLy8gRW50cnkgNTY0CisgICAgLTB4MS4wMDAwMTU1NTU4ODg4MTFhY2ZjOThjMWU5YWUyMzBmY3AtOSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTY1CisgICAgMHgxLjAwMDAxNTU1NTg4ODgxMWFjZmM5OGMxZTlhZTIzMGZjcC05LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDU2NgorICAgIC0weDEuMDAwMDA1NTU1NTg4OTg4YWQyYWQzNzUzNzVhY2EwYWZwLTEwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICAweDEuMDAwMDA1NTU1NTg4OTg4YWQyYWQzNzUzNzVhY2EwYWZwLTEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDU2OAorICAgIC0weDEuMDAwMDA1NTU1NTg4ODg4YWQxYWQzNzQzNzVhYmEwOWZwLTEwLAorICAgIC0weDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjkKKyAgICAweDEuMDAwMDA1NTU1NTg4ODg4YWQxYWQzNzQzNzVhYmEwOWZwLTEwLAorICAgIDB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDU3MAorICAgIC0weDEuMDAwMDA1NTU1NTg4ODA4YWQxMmQzNzNiNzVhYjIwYTNwLTEwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzEKKyAgICAweDEuMDAwMDA1NTU1NTg4ODA4YWQxMmQzNzNiNzVhYjIwYTNwLTEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIC0weDEuMDAwMDAwMDU1NTU1NjU4ODg4ODk4YWQxYWQyYWVlMWVwLTE0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzMKKyAgICAweDEuMDAwMDAwMDU1NTU1NjU4ODg4ODk4YWQxYWQyYWVlMWVwLTE0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDU3NAorICAgIC0weDEuMDAwMDAwMDU1NTU1NTU4ODg4ODg4YWQxYWQxYWVlMWVwLTE0LAorICAgIC0weDEuMHAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzUKKyAgICAweDEuMDAwMDAwMDU1NTU1NTU4ODg4ODg4YWQxYWQxYWVlMWVwLTE0LAorICAgIDB4MS4wcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDU3NgorICAgIC0weDEuMDAwMDAwMDU1NTU1NGQ4ODg4ODgwYWQxYWQxMmVlMWVwLTE0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzcKKyAgICAweDEuMDAwMDAwMDU1NTU1NGQ4ODg4ODgwYWQxYWQxMmVlMWVwLTE0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDU3OAorICAgIC0weDEuMDAwMDAwMDAwMDAwMTA1NTU1NTU1NTU1NTU2NTg4ODhwLTI4LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzkKKyAgICAweDEuMDAwMDAwMDAwMDAwMTA1NTU1NTU1NTU1NTU2NTg4ODhwLTI4LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yOAorICB9LAorICB7IC8vIEVudHJ5IDU4MAorICAgIC0weDEuMDAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1NTg4ODhwLTI4LAorICAgIC0weDEuMHAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODEKKyAgICAweDEuMDAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1NTg4ODhwLTI4LAorICAgIDB4MS4wcC0yOAorICB9LAorICB7IC8vIEVudHJ5IDU4MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBhYWFhYWFhYWFhYWE5YjExMTFwLTI5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBhYWFhYWFhYWFhYWE5YjExMTFwLTI5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yOQorICB9LAorICB7IC8vIEVudHJ5IDU4NAorICAgIC0weDEuMDAwMDAwMDAwMDAwMTAwNTU1NTU1NTU1NTU1NjU1ODhwLTMwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODUKKyAgICAweDEuMDAwMDAwMDAwMDAwMTAwNTU1NTU1NTU1NTU1NjU1ODhwLTMwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTU1ODhwLTMwLAorICAgIC0weDEuMHAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODcKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTU1ODhwLTMwLAorICAgIDB4MS4wcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDU4OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjAwYWFhYWFhYWFhYWFhOWFiMTFwLTMxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjAwYWFhYWFhYWFhYWFhOWFiMTFwLTMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDU5MAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTEKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTIKKyAgICAweDEuMmI3MDg4NzIzMjBlMWQzMWU0YjAzZjEwODZhOWMwNDdwNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU5MworICAgIC0weDEuMmI3MDg4NzIzMjBlMWQzMWU0YjAzZjEwODZhOWMwNDdwNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTQKKyAgICAweDEuMGYyZWIwNzAyMzA2ODgxNDlhMjUzMThmZDhkNGVhMGZwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU5NQorICAgIC0weDEuMGYyZWIwNzAyMzA2ODgxNDlhMjUzMThmZDhkNGVhMGZwMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTYKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcC0xMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTkKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDYwMgorICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDYwMworICAgIC0weDEuZmZmZmZmZmZmZmZmYzBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNjA0CisgICAgMHgxLnAtMTA3MywKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDYwNQorICAgIC0weDEucC0xMDczLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDYwNgorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDcKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDgKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNjA5CisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvYXRhbmhmX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9hdGFuaGZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlkODAyNWEKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvYXRhbmhmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDIwOTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfYXRhbmhmX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS4xZmZjMDAwMDAwNzk3YWYwMTIwMDQ2ZTdkYzMxZDNmNXAtMjAsCisgICAgLTB4MS4xZmZjcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuMWZmYzAwMDAwMDc5N2FmMDEyMDA0NmU3ZGMzMWQzZjVwLTIwLAorICAgIDB4MS4xZmZjcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAtMHgxLjVmMzI4N2Y5MDIwNzUxOTdjNzg2YzFjZjY5NjEwMWI0cC0xLAorICAgIC0weDEuMzBkMzVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS41ZjMyODdmOTAyMDc1MTk3Yzc4NmMxY2Y2OTYxMDFiNHAtMSwKKyAgICAweDEuMzBkMzVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIC0weDEuOGEwY2E2ZmZkYjM0YzcwYmI0YTViMjNmYjZlMTlkMDFwLTEsCisgICAgLTB4MS40YjFkZjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLjhhMGNhNmZmZGIzNGM3MGJiNGE1YjIzZmI2ZTE5ZDAxcC0xLAorICAgIDB4MS40YjFkZjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgLTB4MS42ZDQ2ZmYwMDMxOTMxZDc0Y2JiOWMyY2ZkOTQyOWQ4Y3AtMywKKyAgICAtMHgxLjY5NzNlMHAtMworICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuNmQ0NmZmMDAzMTkzMWQ3NGNiYjljMmNmZDk0MjlkOGNwLTMsCisgICAgMHgxLjY5NzNlMHAtMworICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAtMHgxLjcxM2Y2MTAwMTBkZWIxOGVlMmUyMzlmMTk2M2ExNDA1cC0xMiwKKyAgICAtMHgxLjcxM2Y2MHAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLjcxM2Y2MTAwMTBkZWIxOGVlMmUyMzlmMTk2M2ExNDA1cC0xMiwKKyAgICAweDEuNzEzZjYwcC0xMgorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgLTB4MS43MTQxNDkwMDE0ZDVmODFmOTAzZGY0OTUwNDY0Y2RhOHAtMTIsCisgICAgLTB4MS43MTQxNDhwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuNzE0MTQ5MDAxNGQ1ZjgxZjkwM2RmNDk1MDQ2NGNkYThwLTEyLAorICAgIDB4MS43MTQxNDhwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAtMHgxLjcxNDE3NzAwMTUzNWFjNmUyOTFmMjQ2YWQ1NTc5YjBlcC0xMiwKKyAgICAtMHgxLjcxNDE3NnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS43MTQxNzcwMDE1MzVhYzZlMjkxZjI0NmFkNTU3OWIwZXAtMTIsCisgICAgMHgxLjcxNDE3NnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIC0weDEuMTU5NjNkYTkzOGE2YzEwYTc0YWFmYWM4NDBhMDEyYTFwMCwKKyAgICAtMHgxLjk2ZWZhMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLjE1OTYzZGE5MzhhNmMxMGE3NGFhZmFjODQwYTAxMmExcDAsCisgICAgMHgxLjk2ZWZhMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgLTB4MS4xN2Y2ZTlhNjI1NjVkNjQ0Y2QwMDIyZDkxNDg3ZWY3YnAwLAorICAgIC0weDEuOThhY2FlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuMTdmNmU5YTYyNTY1ZDY0NGNkMDAyMmQ5MTQ4N2VmN2JwMCwKKyAgICAweDEuOThhY2FlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAtMHgxLjFiYTBmMmZmZmM4ZTM2OTM1M2NhYWNmYTU0OWFjYmYycDAsCisgICAgLTB4MS45YjRkYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS4xYmEwZjJmZmZjOGUzNjkzNTNjYWFjZmE1NDlhY2JmMnAwLAorICAgIDB4MS45YjRkYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIC0weDEuMmRkOWI2NjNlNWFlMDZjZDQ3ZDRjY2ExZjYxMzk1OThwMCwKKyAgICAtMHgxLmE3ODJhNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjJkZDliNjYzZTVhZTA2Y2Q0N2Q0Y2NhMWY2MTM5NTk4cDAsCisgICAgMHgxLmE3ODJhNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS5jZDJhZjEwMDNmYjk3ZWQzMWE2OTY1NjQ4NzFmZDE4YXAtNCwKKyAgICAtMHgxLmNiM2E5YXAtNAorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLmNkMmFmMTAwM2ZiOTdlZDMxYTY5NjU2NDg3MWZkMThhcC00LAorICAgIDB4MS5jYjNhOWFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIC0weDEuZDA3N2ZjMDFmZGE1M2I4MDk2N2Q5NDJiMWZmZTIxOTNwLTE2LAorICAgIC0weDEuZDA3N2ZjcC0xNgorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLmQwNzdmYzAxZmRhNTNiODA5NjdkOTQyYjFmZmUyMTkzcC0xNiwKKyAgICAweDEuZDA3N2ZjcC0xNgorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgLTB4MS5mYjAzMzViNDE2NjVhNDQ1YmFkMTZhNWRhMjQ1NGQxYXAtMywKKyAgICAtMHgxLmYwZTdwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5mYjAzMzViNDE2NjVhNDQ1YmFkMTZhNWRhMjQ1NGQxYXAtMywKKyAgICAweDEuZjBlN3AtMworICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgLTB4MS5mYmJiZTkwMDE2MjdlNzE4OGNiNDhmMzhjNDgyMGUzNXAtMywKKyAgICAtMHgxLmYxOTRkMHAtMworICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLmZiYmJlOTAwMTYyN2U3MTg4Y2I0OGYzOGM0ODIwZTM1cC0zLAorICAgIDB4MS5mMTk0ZDBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEuMTkzZDU1MDA5NTg3NmY3OTEwNWU3NmM3NWNhNThiMmZwLTEsCisgICAgLTB4MS5mZmZlMDRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS4xOTNkNTUwMDk1ODc2Zjc5MTA1ZTc2Yzc1Y2E1OGIyZnAtMSwKKyAgICAweDEuZmZmZTA0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAtMHgxLjE5M2VhNTAwMjU4N2M1ZTg2ODcyMGJjNDZkODc1MDVicC0xLAorICAgIC0weDEuZmZmZmZjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEuMTkzZWE1MDAyNTg3YzVlODY4NzIwYmM0NmQ4NzUwNWJwLTEsCisgICAgMHgxLmZmZmZmY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLjE5M2VhN2FhZDAzMGE5NzZhNDE5OGQ1NTA1M2I3Y2I1cC0xLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIC0weDEuMTkzZWE3YWFkMDMwYTk3NmE0MTk4ZDU1MDUzYjdjYjVwLTEsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLjAwMDAwMjAwMDAwMDAwMDAwMDAwMTU1NTU1ZDU1NTU2cC00MSwKKyAgICAweDEuMDAwMDAycC00MQorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS4wMDAwMDIwMDAwMDAwMDAwMDAwMDE1NTU1NWQ1NTU1NnAtNDEsCisgICAgLTB4MS4wMDAwMDJwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuMTkzZWJkMDAyNWY3YzVlZGYzMWNmNWEwZTI4NTA1OWVwLTEsCisgICAgMHgxLjAwMDAxMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS4xOTNlYmQwMDI1ZjdjNWVkZjMxY2Y1YTBlMjg1MDU5ZXAtMSwKKyAgICAtMHgxLjAwMDAxMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLjA1OTAxYzc2OGE5MmM1YTIzYzhlODUzMWZmZTAxOTQ1cC0yLAorICAgIDB4MS4wMDA0ZGFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIC0weDEuMDU5MDFjNzY4YTkyYzVhMjNjOGU4NTMxZmZlMDE5NDVwLTIsCisgICAgLTB4MS4wMDA0ZGFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS4wMWQ5NzJmZmZmNDBjZDFjZjM3NzMyMmQ1ZmFjYTk3NXAtNiwKKyAgICAweDEuMDFkNHAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgLTB4MS4wMWQ5NzJmZmZmNDBjZDFjZjM3NzMyMmQ1ZmFjYTk3NXAtNiwKKyAgICAtMHgxLjAxZDRwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS4wYjRkMDU2MGE5ODBlZjliYzY0NWIyYzI5NTYzZTg5ZnAtMiwKKyAgICAweDEuMDU2NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgLTB4MS4wYjRkMDU2MGE5ODBlZjliYzY0NWIyYzI5NTYzZTg5ZnAtMiwKKyAgICAtMHgxLjA1NjRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS4wNjE2ZTFmZmQwMDc2NjcwN2M4NDU0NTQ2ODhhYzI4NXAtNSwKKyAgICAweDEuMDZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIC0weDEuMDYxNmUxZmZkMDA3NjY3MDdjODQ1NDU0Njg4YWMyODVwLTUsCisgICAgLTB4MS4wNnAtNQorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjBjMWE3MWUwZjI0M2FhYWJmOTg4YTA4NmI5MmQ4MDk4cC0yLAorICAgIDB4MS4wNjI0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAtMHgxLjBjMWE3MWUwZjI0M2FhYWJmOTg4YTA4NmI5MmQ4MDk4cC0yLAorICAgIC0weDEuMDYyNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLjA2ODAxNmZmZmZkODllYTVhZjg2ZDE0MGNjNDQ5OWFjcC05LAorICAgIDB4MS4wNjgwcC05CisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLjA2ODAxNmZmZmZkODllYTVhZjg2ZDE0MGNjNDQ5OWFjcC05LAorICAgIC0weDEuMDY4MHAtOQorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjEwZjk5YTU4ZDA3MzE3M2Y2NGQwNzhkMTkyMWQwYWJkcC0yLAorICAgIDB4MS4wYWIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLjEwZjk5YTU4ZDA3MzE3M2Y2NGQwNzhkMTkyMWQwYWJkcC0yLAorICAgIC0weDEuMGFiMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLjEwMDIyZWZjZDIwNDk3NWNkNWRlMmViNzk4YzVhMzY2cC00LAorICAgIDB4MS4wZjljcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLjEwMDIyZWZjZDIwNDk3NWNkNWRlMmViNzk4YzVhMzY2cC00LAorICAgIC0weDEuMGY5Y3AtNAorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLjM4NGM3YmJiNDA4MTdhNzEzNjcwZWRhOWIxYjFhYWNkcC0xLAorICAgIDB4MS4xNjk0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLjM4NGM3YmJiNDA4MTdhNzEzNjcwZWRhOWIxYjFhYWNkcC0xLAorICAgIC0weDEuMTY5NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLjE4OWEyNzAwMDMzMjczMjUxZTEyZDVlYmE5MGU0NDY1cC0zLAorICAgIDB4MS4xNmRjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLjE4OWEyNzAwMDMzMjczMjUxZTEyZDVlYmE5MGU0NDY1cC0zLAorICAgIC0weDEuMTZkY3AtMworICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLjNhNTJhY2NiYzc4NmYyMzdmZmI3MzYzM2MxODMyNGZicC0xLAorICAgIDB4MS4xOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS4zYTUyYWNjYmM3ODZmMjM3ZmZiNzM2MzNjMTgzMjRmYnAtMSwKKyAgICAtMHgxLjE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuMTljM2IwZmE4NmQ1NDAwNzJjMDhjNWQ2YjM5NGIxNjVwLTMsCisgICAgMHgxLjE4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAtMHgxLjE5YzNiMGZhODZkNTQwMDcyYzA4YzVkNmIzOTRiMTY1cC0zLAorICAgIC0weDEuMThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS4xYzhmNzMwMDAwMGI3ZGMwZmY1YjAzZTY0NjIzZGVjNnAtNCwKKyAgICAweDEuMWMxYTdhcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLjFjOGY3MzAwMDAwYjdkYzBmZjViMDNlNjQ2MjNkZWM2cC00LAorICAgIC0weDEuMWMxYTdhcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuNDRmMTZhOWJlYTdmMDNhZjUyOWIwMzdiMjM1ZjMxYjVwLTEsCisgICAgMHgxLjFmNWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEuNDRmMTZhOWJlYTdmMDNhZjUyOWIwMzdiMjM1ZjMxYjVwLTEsCisgICAgLTB4MS4xZjVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuMWZmYzAwMDAwMDc5N2FmMDEyMDA0NmU3ZGMzMWQzZjVwLTIwLAorICAgIDB4MS4xZmZjcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS4xZmZjMDAwMDAwNzk3YWYwMTIwMDQ2ZTdkYzMxZDNmNXAtMjAsCisgICAgLTB4MS4xZmZjcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjI3ZjljZmMzNDM4NWFmZjk2ZmE3YTI1YzkwMTA3MTFicC0yLAorICAgIDB4MS4xZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIC0weDEuMjdmOWNmYzM0Mzg1YWZmOTZmYTdhMjVjOTAxMDcxMWJwLTIsCisgICAgLTB4MS4xZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS41ZGViOWE4M2VlOTVjMzg1YmE1MzM1NTgwYWYwOGYwOHAtMSwKKyAgICAweDEuMzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuNWRlYjlhODNlZTk1YzM4NWJhNTMzNTU4MGFmMDhmMDhwLTEsCisgICAgLTB4MS4zMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLjVlMGUwMjk4ZDllZWMzYWI4YjRmNGUxYjhkMjk1YWMzcC0xLAorICAgIDB4MS4zMDE2NDZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuNWUwZTAyOThkOWVlYzNhYjhiNGY0ZTFiOGQyOTVhYzNwLTEsCisgICAgLTB4MS4zMDE2NDZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS41ZTYwZTQwMDAwNmY1MmNiNzY5MmI2ZThhNTFkYTM4NHAtMSwKKyAgICAweDEuMzA0YmU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLjVlNjBlNDAwMDA2ZjUyY2I3NjkyYjZlOGE1MWRhMzg0cC0xLAorICAgIC0weDEuMzA0YmU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuNDdmNTE3MDAwMDAyNDIzMzg1NGI2MjAzZDk4ZDMyNGZwLTUsCisgICAgMHgxLjQ3Yzg0NHAtNQorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS40N2Y1MTcwMDAwMDI0MjMzODU0YjYyMDNkOThkMzI0ZnAtNSwKKyAgICAtMHgxLjQ3Yzg0NHAtNQorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLjQ4YWUxY2ZmZmVmZjMwN2IxM2MxN2ViNTZmZGNmN2MycC01LAorICAgIDB4MS40ODgwZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIC0weDEuNDhhZTFjZmZmZWZmMzA3YjEzYzE3ZWI1NmZkY2Y3YzJwLTUsCisgICAgLTB4MS40ODgwZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS43OWQ0YzQwMDAwMzU0ZDgzZjRjMjZjMDk3YjBlNzVmZHAtMiwKKyAgICAweDEuNjk5MWRhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLjc5ZDRjNDAwMDAzNTRkODNmNGMyNmMwOTdiMGU3NWZkcC0yLAorICAgIC0weDEuNjk5MWRhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuYzcxMzlmMjE1ZmViM2E3MmNmMWI1ZTE5MmY5MzhlYTRwLTEsCisgICAgMHgxLjZiZWY3MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5jNzEzOWYyMTVmZWIzYTcyY2YxYjVlMTkyZjkzOGVhNHAtMSwKKyAgICAtMHgxLjZiZWY3MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLjcxNDBlMzAwMTQwMWMxYjAxNDE3MmQ2ZmQ5MTcxMWFlcC0xMiwKKyAgICAweDEuNzE0MGUycC0xMgorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS43MTQwZTMwMDE0MDFjMWIwMTQxNzJkNmZkOTE3MTFhZXAtMTIsCisgICAgLTB4MS43MTQwZTJwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuZTA1NjQ4ZGI3YWY2N2E1NDc2ZGNlZjMxYzc4MzQ3NDBwLTEsCisgICAgMHgxLjc3ZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS5lMDU2NDhkYjdhZjY3YTU0NzZkY2VmMzFjNzgzNDc0MHAtMSwKKyAgICAtMHgxLjc3ZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjc3ZmZmZTAwMDAwMDAwMTBlNWY1MTA0ZDU1YjM1NmIzcC0zMCwKKyAgICAweDEuNzdmZmZlcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgLTB4MS43N2ZmZmUwMDAwMDAwMDEwZTVmNTEwNGQ1NWIzNTZiM3AtMzAsCisgICAgLTB4MS43N2ZmZmVwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuOTNiMGFlZTIxYzJjODA4ZjU4NDBhOGZkZWM5OTg0ZTFwLTIsCisgICAgMHgxLjgwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAtMHgxLjkzYjBhZWUyMWMyYzgwOGY1ODQwYThmZGVjOTk4NGUxcC0yLAorICAgIC0weDEuODBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5mMjI3ODFiZTllNjk2MjllNTY1Y2IyN2Q3ZThiZTI0MXAtMSwKKyAgICAweDEuODAwMDI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAtMHgxLmYyMjc4MWJlOWU2OTYyOWU1NjVjYjI3ZDdlOGJlMjQxcC0xLAorICAgIC0weDEuODAwMDI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuZjIyYTgxYzJjMWRmNmUyOTBhMzRkNzhjMGU0MjE2NWZwLTEsCisgICAgMHgxLjgwMDE3NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLTB4MS5mMjJhODFjMmMxZGY2ZTI5MGEzNGQ3OGMwZTQyMTY1ZnAtMSwKKyAgICAtMHgxLjgwMDE3NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS5mNGQ5YjFmNDQ5Zjk2MzcwNDlmNDY1YWQ4MTM2NzdjZHAtMSwKKyAgICAweDEuODEyY2VhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS5mNGQ5YjFmNDQ5Zjk2MzcwNDlmNDY1YWQ4MTM2NzdjZHAtMSwKKyAgICAtMHgxLjgxMmNlYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS5mNmE5OGEzNDdhZWZkZmJmZGZjMjZlNmM1ZmQzOWQ2M3AtMSwKKyAgICAweDEuODFmNWI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgLTB4MS5mNmE5OGEzNDdhZWZkZmJmZGZjMjZlNmM1ZmQzOWQ2M3AtMSwKKyAgICAtMHgxLjgxZjViNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS5mNmIxNmUwMzZhMTIyOGUyZDc1OTJiOTk5MjFhNzNmZHAtMSwKKyAgICAweDEuODFmOTFlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTB4MS5mNmIxNmUwMzZhMTIyOGUyZDc1OTJiOTk5MjFhNzNmZHAtMSwKKyAgICAtMHgxLjgxZjkxZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS44NzkxMTVmZmZmODk4MGY5ZGExNDA1NzgxYWZkNjNlMHAtMywKKyAgICAweDEuODJkZDNjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgLTB4MS44NzkxMTVmZmZmODk4MGY5ZGExNDA1NzgxYWZkNjNlMHAtMywKKyAgICAtMHgxLjgyZGQzY3AtMworICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS44N2YzZmIwMDAwYWIyMTBiZTYwNmNhMzk3NjE2ODFiZHAtNywKKyAgICAweDEuODdlZjMycC03CisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgLTB4MS44N2YzZmIwMDAwYWIyMTBiZTYwNmNhMzk3NjE2ODFiZHAtNywKKyAgICAtMHgxLjg3ZWYzMnAtNworICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS44YzY4MGIzYWRkYTVhNjZhZDZkOGRhODU2MjM2ZmY5N3AtNywKKyAgICAweDEuOGM2MzE4cC03CisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgLTB4MS44YzY4MGIzYWRkYTVhNjZhZDZkOGRhODU2MjM2ZmY5N3AtNywKKyAgICAtMHgxLjhjNjMxOHAtNworICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS45YWE2NGQwMDE4MWFiYzQwZjQ1ZDA4NzExYThhMGUyZHAtMywKKyAgICAweDEuOTUzYmI4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgLTB4MS45YWE2NGQwMDE4MWFiYzQwZjQ1ZDA4NzExYThhMGUyZHAtMywKKyAgICAtMHgxLjk1M2JiOHAtMworICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS45OWJhMzkwMDExODIxZWI4YmEyZjM5OGUzZWMzY2JkMnAtNCwKKyAgICAweDEuOTg1ZGM0cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS45OWJhMzkwMDExODIxZWI4YmEyZjM5OGUzZWMzY2JkMnAtNCwKKyAgICAtMHgxLjk4NWRjNHAtNAorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS5hMDViYWNmY2NjYzc4OGIwMjI5MWZmMmE3MzM4NWJlZnAtNSwKKyAgICAweDEuOWZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgLTB4MS5hMDViYWNmY2NjYzc4OGIwMjI5MWZmMmE3MzM4NWJlZnAtNSwKKyAgICAtMHgxLjlmZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS5hNjRmYjcwMDJkOWI5YjcyNDg5NTg0MzFkOTVmNzdlYnAtNCwKKyAgICAweDEuYTRkMjQwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgLTB4MS5hNjRmYjcwMDJkOWI5YjcyNDg5NTg0MzFkOTVmNzdlYnAtNCwKKyAgICAtMHgxLmE0ZDI0MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS5hNjQ5MDhmYmVjNTliNmIwMmQzMjY2NzRkZWQyZjlmMnAtNSwKKyAgICAweDEuYTVlOTYycC01CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgLTB4MS5hNjQ5MDhmYmVjNTliNmIwMmQzMjY2NzRkZWQyZjlmMnAtNSwKKyAgICAtMHgxLmE1ZTk2MnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5iMTkyNDcwMDAwZmIyMTE4ZGE2ODdjYzQxNjBmOThjNnAtNiwKKyAgICAweDEuYjE3ODYwcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgLTB4MS5iMTkyNDcwMDAwZmIyMTE4ZGE2ODdjYzQxNjBmOThjNnAtNiwKKyAgICAtMHgxLmIxNzg2MHAtNgorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5kNmY0NWNjOTIyNjYzZjY0ZGZmZjE5ODkzNjhlYWZkMHAtMiwKKyAgICAweDEuYjg1NjJhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgLTB4MS5kNmY0NWNjOTIyNjYzZjY0ZGZmZjE5ODkzNjhlYWZkMHAtMiwKKyAgICAtMHgxLmI4NTYyYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS5kYWQ4ODI3NjAwMzFiMGIyMDdlZWM1M2YyYmFkM2E1NnAtMiwKKyAgICAweDEuYmI4MGM4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgLTB4MS5kYWQ4ODI3NjAwMzFiMGIyMDdlZWM1M2YyYmFkM2E1NnAtMiwKKyAgICAtMHgxLmJiODBjOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS5iY2VmMDkwMDA3MGJiNGQ2MGRiYTdkNzkxNmU0NGYxY3AtMTEsCisgICAgMHgxLmJjZWYwMnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAtMHgxLmJjZWYwOTAwMDcwYmI0ZDYwZGJhN2Q3OTE2ZTQ0ZjFjcC0xMSwKKyAgICAtMHgxLmJjZWYwMnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuZTA2NDhmMjlhNWNiOGZhODMwMzU3ZWIyODQ2M2IzNzFwLTIsCisgICAgMHgxLmJmZmZiZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0weDEuZTA2NDhmMjlhNWNiOGZhODMwMzU3ZWIyODQ2M2IzNzFwLTIsCisgICAgLTB4MS5iZmZmYmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuYzJlNWU4MDAwMDQ3NGZjYTQxMWRlZWFiYzJkODcxYjJwLTYsCisgICAgMHgxLmMyYzhjNnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEuYzJlNWU4MDAwMDQ3NGZjYTQxMWRlZWFiYzJkODcxYjJwLTYsCisgICAgLTB4MS5jMmM4YzZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuYzk5NzQzMDAxOWIwNDVkNzk5ODQwNDQ1NDNiZDQzMjJwLTQsCisgICAgMHgxLmM3YjI1OHAtNAorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuYzk5NzQzMDAxOWIwNDVkNzk5ODQwNDQ1NDNiZDQzMjJwLTQsCisgICAgLTB4MS5jN2IyNThwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuNmNjOGRjYTg1NzMxNGU2OTAxMTU2ZDAwZjhhM2I2ODJwMCwKKyAgICAweDEuYzdmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS42Y2M4ZGNhODU3MzE0ZTY5MDExNTZkMDBmOGEzYjY4MnAwLAorICAgIC0weDEuYzdmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLmM3ZmZmZTAxZTI0NWY5YWIxNjIzMDE5OTA1NTBjYWE5cC0xNiwKKyAgICAweDEuYzdmZmZlcC0xNgorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuYzdmZmZlMDFlMjQ1ZjlhYjE2MjMwMTk5MDU1MGNhYTlwLTE2LAorICAgIC0weDEuYzdmZmZlcC0xNgorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5lZDY1MjY3ZDAxYTFkYjU0MGIzNzc1M2M1MWQ2NjQyNnAtMiwKKyAgICAweDEuY2E3NDM2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS5lZDY1MjY3ZDAxYTFkYjU0MGIzNzc1M2M1MWQ2NjQyNnAtMiwKKyAgICAtMHgxLmNhNzQzNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS5kNDhhZjMyOTY4ZmEzYjM0NDU3YmNmZjAzZGIwNjIyZHAtMywKKyAgICAweDEuY2M4OTI4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS5kNDhhZjMyOTY4ZmEzYjM0NDU3YmNmZjAzZGIwNjIyZHAtMywKKyAgICAtMHgxLmNjODkyOHAtMworICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS5mMGMyZDhmZmZlZmNhMDEyOTBjMmVmMzYzMzBjOTExNXAtMiwKKyAgICAweDEuY2QyNDJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS5mMGMyZDhmZmZlZmNhMDEyOTBjMmVmMzYzMzBjOTExNXAtMiwKKyAgICAtMHgxLmNkMjQyY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS5jZTUzNWVmYTMyZjBjZWMxNWIzYmNjZjA1YzA3OWYxOXAtNSwKKyAgICAweDEuY2RkNWUwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS5jZTUzNWVmYTMyZjBjZWMxNWIzYmNjZjA1YzA3OWYxOXAtNSwKKyAgICAtMHgxLmNkZDVlMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS5kMDcwM2UwMWZkOGJiZjk2Mzk1ZWQyZjYyZjU0ZmRjYXAtMTYsCisgICAgMHgxLmQwNzAzZXAtMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLmQwNzAzZTAxZmQ4YmJmOTYzOTVlZDJmNjJmNTRmZGNhcC0xNiwKKyAgICAtMHgxLmQwNzAzZXAtMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuZjg0ZmQ2NmNmNThlM2RhOWUyZDc1Y2U2ODNjY2EyZDBwLTIsCisgICAgMHgxLmQzMjQwNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEuZjg0ZmQ2NmNmNThlM2RhOWUyZDc1Y2U2ODNjY2EyZDBwLTIsCisgICAgLTB4MS5kMzI0MDZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAweDEuZGNhNjAxMDA0MjdkNGQyNjUxNWRjYjE5MDA5ZTBmZTdwLTQsCisgICAgMHgxLmRhODIyY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuZGNhNjAxMDA0MjdkNGQyNjUxNWRjYjE5MDA5ZTBmZTdwLTQsCisgICAgLTB4MS5kYTgyMmNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuZjE5MDU3OTA3YjZhNmZlODRiYThlNDgzMGI3YTA3OTlwLTMsCisgICAgMHgxLmU3ZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEuZjE5MDU3OTA3YjZhNmZlODRiYThlNDgzMGI3YTA3OTlwLTMsCisgICAgLTB4MS5lN2ZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuZWYzMTFiMDA0OWRjMTNiNWIwZTAxYjg2OGI0Y2ZjOTJwLTQsCisgICAgMHgxLmVjY2IxNHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEuZWYzMTFiMDA0OWRjMTNiNWIwZTAxYjg2OGI0Y2ZjOTJwLTQsCisgICAgLTB4MS5lY2NiMTRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuZWU3MDNiNDBiYWQ0NDgxODhkMzIxYzljZjFjNzdjMmZwLTYsCisgICAgMHgxLmVlNDlkMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZWU3MDNiNDBiYWQ0NDgxODhkMzIxYzljZjFjNzdjMmZwLTYsCisgICAgLTB4MS5lZTQ5ZDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEuZWZhMjhlY2NlYmE5NGFmMDBiYWY2YTcwMzk5YjI3YzVwLTYsCisgICAgMHgxLmVmN2JkZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0weDEuZWZhMjhlY2NlYmE5NGFmMDBiYWY2YTcwMzk5YjI3YzVwLTYsCisgICAgLTB4MS5lZjdiZGVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuZmEwZGM3YjcyYzE2ZmNkMWIxNjYyM2Q3OWVkNzJiNDhwLTMsCisgICAgMHgxLmVmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuZmEwZGM3YjcyYzE2ZmNkMWIxNjYyM2Q3OWVkNzJiNDhwLTMsCisgICAgLTB4MS5lZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEuZjQ3OWNlOWU2MmYxZGU3OTNlNjI2YzVlNGNkNDgzYmZwLTQsCisgICAgMHgxLmYxZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuZjQ3OWNlOWU2MmYxZGU3OTNlNjI2YzVlNGNkNDgzYmZwLTQsCisgICAgLTB4MS5mMWZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuZjQ4ZGZkMDA0NDkyNDI0YTIyNDJhN2YxYjg0ZmRlNDNwLTQsCisgICAgMHgxLmYyMTNlMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0weDEuZjQ4ZGZkMDA0NDkyNDI0YTIyNDJhN2YxYjg0ZmRlNDNwLTQsCisgICAgLTB4MS5mMjEzZTBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuZjU1NTY1MDA0ZTFiYTc3ZjhjNjg5NTRkNThhZDk1MjJwLTQsCisgICAgMHgxLmYyZDg1NHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuZjU1NTY1MDA0ZTFiYTc3ZjhjNjg5NTRkNThhZDk1MjJwLTQsCisgICAgLTB4MS5mMmQ4NTRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAweDEuZmVjNzk0ZmZmZjgwZGU2ZjEzM2ZmNzkxYzU0MzlkOGVwLTMsCisgICAgMHgxLmY0NzIzMnAtMworICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEuZmVjNzk0ZmZmZjgwZGU2ZjEzM2ZmNzkxYzU0MzlkOGVwLTMsCisgICAgLTB4MS5mNDcyMzJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAweDEuZjgxM2U5MDA0ZDVjZGZiMDYzNzI4NjY2ZmI2NmU5N2ZwLTQsCisgICAgMHgxLmY1OGM1ZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEuZjgxM2U5MDA0ZDVjZGZiMDYzNzI4NjY2ZmI2NmU5N2ZwLTQsCisgICAgLTB4MS5mNThjNWVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuZjdiNzIxZmZmZjk5MWM3MDZkOTA5NDUxMDVlYzAzMGZwLTcsCisgICAgMHgxLmY3YWNmYXAtNworICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIC0weDEuZjdiNzIxZmZmZjk5MWM3MDZkOTA5NDUxMDVlYzAzMGZwLTcsCisgICAgLTB4MS5mN2FjZmFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuZmJkNWY1MDA1MWZiYzllNTVjOGIyYmU5ZTllMjE4NTFwLTQsCisgICAgMHgxLmY5M2ZlMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIC0weDEuZmJkNWY1MDA1MWZiYzllNTVjOGIyYmU5ZTllMjE4NTFwLTQsCisgICAgLTB4MS5mOTNmZTJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuZmNmYWZmMDA1MGY4Y2EzMDA5YWI3YjFlNDZiNGVjOWRwLTQsCisgICAgMHgxLmZhNjA3NHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuZmNmYWZmMDA1MGY4Y2EzMDA5YWI3YjFlNDZiNGVjOWRwLTQsCisgICAgLTB4MS5mYTYwNzRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAweDEuMDNhOGEzMDAwNjM4NWVkNjVkNzQ1YjVkZWM3YzE5NGVwLTIsCisgICAgMHgxLmZjNzc0NnAtMworICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuMDNhOGEzMDAwNjM4NWVkNjVkNzQ1YjVkZWM3YzE5NGVwLTIsCisgICAgLTB4MS5mYzc3NDZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuZmUyYTMxNzI0MzA3OWU0ZmRkMWNiODU1Yzk3NWNkZjFwLTYsCisgICAgMHgxLmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTB4MS5mZTJhMzE3MjQzMDc5ZTRmZGQxY2I4NTVjOTc1Y2RmMXAtNiwKKyAgICAtMHgxLmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLmZlODJkYjc0NTZjZjViOWI5ZWRmMWI0Yjc3Yzk5NGJkcC02LAorICAgIDB4MS5mZTU4OTRwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLmZlODJkYjc0NTZjZjViOWI5ZWRmMWI0Yjc3Yzk5NGJkcC02LAorICAgIC0weDEuZmU1ODk0cC02CisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmZmZWFhNzEwZjVhNmU4ZDE2ZGM5MDVlMzM4YzAyMDBmcC03LAorICAgIDB4MS5mZmRmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAtMHgxLmZmZWFhNzEwZjVhNmU4ZDE2ZGM5MDVlMzM4YzAyMDBmcC03LAorICAgIC0weDEuZmZkZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLjdkMzNjYjBjMDI1MDVmNDc3NzhhZTMzN2FlNzJlYzFmcDIsCisgICAgMHgxLmZmZmUzZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuN2QzM2NiMGMwMjUwNWY0Nzc3OGFlMzM3YWU3MmVjMWZwMiwKKyAgICAtMHgxLmZmZmUzZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS4xOTNlNTEwMDJjZGJjNDc1OTc1ZmY3NjZmYmQxZjZiNXAtMSwKKyAgICAweDEuZmZmZjdlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS4xOTNlNTEwMDJjZGJjNDc1OTc1ZmY3NjZmYmQxZjZiNXAtMSwKKyAgICAtMHgxLmZmZmY3ZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS4wMDA1MTQ4NDdhOTFjZGFlYmFlY2ZhNzdmNjExMWRkOXAtNiwKKyAgICAweDEuZmZmZjdlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS4wMDA1MTQ4NDdhOTFjZGFlYmFlY2ZhNzdmNjExMWRkOXAtNiwKKyAgICAtMHgxLmZmZmY3ZXAtNworICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS4xOTNlYTUwMDI1ODdjNWU4Njg3MjBiYzQ2ZDg3NTA1YnAtMSwKKyAgICAweDEuZmZmZmZjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS4xOTNlYTUwMDI1ODdjNWU4Njg3MjBiYzQ2ZDg3NTA1YnAtMSwKKyAgICAtMHgxLmZmZmZmY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIDB4MS5mZmZmZmNhYWFhYTcxMTExMTU1YTM1YWEzZGMzZDA2Y3AtMTMsCisgICAgMHgxLmZmZmZmY3AtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLmZmZmZmY2FhYWFhNzExMTExNTVhMzVhYTNkYzNkMDZjcC0xMywKKyAgICAtMHgxLmZmZmZmY3AtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAtMHgxLjMxZGQyY2QxMzg2OTMzZDFkODkwYjZhOTcwM2MxNmFkcDEsCisgICAgLTB4MS5mNzc3NzhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAweDEuMzFkZDJjZDEzODY5MzNkMWQ4OTBiNmE5NzAzYzE2YWRwMSwKKyAgICAweDEuZjc3Nzc4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgLTB4MS4wNGY2NjNhZGNkZDVlODg2NGM1NWE1NzUxYTBiMTdiN3AxLAorICAgIC0weDEuZWVlZWYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgMHgxLjA0ZjY2M2FkY2RkNWU4ODY0YzU1YTU3NTFhMGIxN2I3cDEsCisgICAgMHgxLmVlZWVmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIC0weDEuZDRlZjllYmQwNDY1OGU2NDE0MjNhNmVkM2RlZmUwZGFwMCwKKyAgICAtMHgxLmU2NjY2OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDB4MS5kNGVmOWViZDA0NjU4ZTY0MTQyM2E2ZWQzZGVmZTBkYXAwLAorICAgIDB4MS5lNjY2NjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMHgxLmFmMDM5NTAzN2YwNzVjYzdiYWVmYTM4ZWY4MWY1MDhmcDAsCisgICAgLTB4MS5kZGRkZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEuYWYwMzk1MDM3ZjA3NWNjN2JhZWZhMzhlZjgxZjUwOGZwMCwKKyAgICAweDEuZGRkZGUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgLTB4MS45MTU3ZTgzNjI2YTA0NWM3Y2FmNjVmMTNkMjNiMGRkM3AwLAorICAgIC0weDEuZDU1NTU4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgMHgxLjkxNTdlODM2MjZhMDQ1YzdjYWY2NWYxM2QyM2IwZGQzcDAsCisgICAgMHgxLmQ1NTU1OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIC0weDEuNzhlMzY4Y2MxNThkOGM0NmRjZmExZjhhODg5NjNhYTRwMCwKKyAgICAtMHgxLmNjY2NkMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS43OGUzNjhjYzE1OGQ4YzQ2ZGNmYTFmOGE4ODk2M2FhNHAwLAorICAgIDB4MS5jY2NjZDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAtMHgxLjY0MDc3ZTUzYmJkZDA1N2M5OTU2MTZiNDg5ZDUzY2Y0cDAsCisgICAgLTB4MS5jNDQ0NDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEuNjQwNzdlNTNiYmRkMDU3Yzk5NTYxNmI0ODlkNTNjZjRwMCwKKyAgICAweDEuYzQ0NDQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgLTB4MS41MWNjYTlmZmM1MWViNjJkYWQxYzJkNTEzYWI4N2E1MnAwLAorICAgIC0weDEuYmJiYmMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLjUxY2NhOWZmYzUxZWI2MmRhZDFjMmQ1MTNhYjg3YTUycDAsCisgICAgMHgxLmJiYmJjMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIC0weDEuNDE5MzQzYjQ1Mjc5OGY5NTQ1ODU0NWIzYThlNWMzNjVwMCwKKyAgICAtMHgxLmIzMzMzOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS40MTkzNDNiNDUyNzk4Zjk1NDU4NTQ1YjNhOGU1YzM2NXAwLAorICAgIDB4MS5iMzMzMzhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAtMHgxLjMyZWU0NDMyMjIzZmQ2ZmY3ZmM5NmI3NDVhMzM5ZDE1cDAsCisgICAgLTB4MS5hYWFhYjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAweDEuMzJlZTQ0MzIyMjNmZDZmZjdmYzk2Yjc0NWEzMzlkMTVwMCwKKyAgICAweDEuYWFhYWIwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgLTB4MS4yNThmZTNiNmU1MzdiYjMyOTJmNmQ3ZTRhZmJiOWQwN3AwLAorICAgIC0weDEuYTIyMjI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLjI1OGZlM2I2ZTUzN2JiMzI5MmY2ZDdlNGFmYmI5ZDA3cDAsCisgICAgMHgxLmEyMjIyOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0weDEuMTkzZWIwOGU1ZWE4YzJjMjAwYjBlOTljNWEzNmZkZGVwMCwKKyAgICAtMHgxLjk5OTlhMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS4xOTNlYjA4ZTVlYThjMmMyMDBiMGU5OWM1YTM2ZmRkZXAwLAorICAgIDB4MS45OTk5YTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAtMHgxLjBkY2YwNzlkYTJmMDMwYWUzZmJmNmI2ZjkyYTJhNzQzcDAsCisgICAgLTB4MS45MTExMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAweDEuMGRjZjA3OWRhMmYwMzBhZTNmYmY2YjZmOTJhMmE3NDNwMCwKKyAgICAweDEuOTExMTE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgLTB4MS4wMzFlZmExZjBlY2M4ZjNhOTA2ZGQ0MmQ4YzIxMjNjYnAwLAorICAgIC0weDEuODg4ODkwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLjAzMWVmYTFmMGVjYzhmM2E5MDZkZDQyZDhjMjEyM2NicDAsCisgICAgMHgxLjg4ODg5MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIC0weDEuZjIyNzNkMmM0YWI1MjFiNGNkNDg3NjQwZmY5NTkxMzVwLTEsCisgICAgLTB4MS44MDAwMDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAweDEuZjIyNzNkMmM0YWI1MjFiNGNkNDg3NjQwZmY5NTkxMzVwLTEsCisgICAgMHgxLjgwMDAwOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIC0weDEuZGYyZTdmZTQ4NzlhMTRiZWQzNDQ0Y2ViZWIxNGUxN2FwLTEsCisgICAgLTB4MS43Nzc3ODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAweDEuZGYyZTdmZTQ4NzlhMTRiZWQzNDQ0Y2ViZWIxNGUxN2FwLTEsCisgICAgMHgxLjc3Nzc4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIC0weDEuY2QzMDMzYmFmZjc5NTk3NjU4ZWQ4NGE3MDc5MmI0MThwLTEsCisgICAgLTB4MS42ZWVlZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAweDEuY2QzMDMzYmFmZjc5NTk3NjU4ZWQ4NGE3MDc5MmI0MThwLTEsCisgICAgMHgxLjZlZWVmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIC0weDEuYmMwZWUzNjc1MzBkNjZjYzg0MWQ1ZjlkMzBjMmI4ODZwLTEsCisgICAgLTB4MS42NjY2NzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuYmMwZWUzNjc1MzBkNjZjYzg0MWQ1ZjlkMzBjMmI4ODZwLTEsCisgICAgMHgxLjY2NjY3MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIC0weDEuYWJiMWRjMDhlMTgxMjY2MjBkNTc1YWFiYzc5M2IyYTlwLTEsCisgICAgLTB4MS41ZGRkZThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEuYWJiMWRjMDhlMTgxMjY2MjBkNTc1YWFiYzc5M2IyYTlwLTEsCisgICAgMHgxLjVkZGRlOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIC0weDEuOWMwNDMyYjIwYzgxNGIzMDIxMDExYzQ3OWE1MWFjZWZwLTEsCisgICAgLTB4MS41NTU1NjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAweDEuOWMwNDMyYjIwYzgxNGIzMDIxMDExYzQ3OWE1MWFjZWZwLTEsCisgICAgMHgxLjU1NTU2MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIC0weDEuOGNmNDA3MWM2YjI1MzY1NzI4MGUzMDAxOWI0MmI2Y2JwLTEsCisgICAgLTB4MS40Y2NjZDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEuOGNmNDA3MWM2YjI1MzY1NzI4MGUzMDAxOWI0MmI2Y2JwLTEsCisgICAgMHgxLjRjY2NkOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIC0weDEuN2U3MWYyNmRlNzc3YmM1MzJhNDBjNDA1NjllODBiZTdwLTEsCisgICAgLTB4MS40NDQ0NTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEuN2U3MWYyNmRlNzc3YmM1MzJhNDBjNDA1NjllODBiZTdwLTEsCisgICAgMHgxLjQ0NDQ1MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIC0weDEuNzA3MDk2NGE1NDY1MDE5ODY5YmU0MjkyODA3MjQzYWRwLTEsCisgICAgLTB4MS4zYmJiYzhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAweDEuNzA3MDk2NGE1NDY1MDE5ODY5YmU0MjkyODA3MjQzYWRwLTEsCisgICAgMHgxLjNiYmJjOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIC0weDEuNjJlNDQzZWZhNDE2ZjM1Y2ZlNzI1MTlhYjVjNDk4MzNwLTEsCisgICAgLTB4MS4zMzMzNDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEuNjJlNDQzZWZhNDE2ZjM1Y2ZlNzI1MTlhYjVjNDk4MzNwLTEsCisgICAgMHgxLjMzMzM0MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIC0weDEuNTVjMmI1NzdhMzE2ZjM5ODc0M2JjODQ4MThhODM2NmRwLTEsCisgICAgLTB4MS4yYWFhYjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEuNTVjMmI1NzdhMzE2ZjM5ODc0M2JjODQ4MThhODM2NmRwLTEsCisgICAgMHgxLjJhYWFiOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIC0weDEuNDkwMmQ0ZjhkY2FiYmE1OTUzMzY4N2FkZjM3OGZjM2JwLTEsCisgICAgLTB4MS4yMjIyMzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuNDkwMmQ0ZjhkY2FiYmE1OTUzMzY4N2FkZjM3OGZjM2JwLTEsCisgICAgMHgxLjIyMjIzMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIC0weDEuM2M5YzhlNjFhZWM5NzNlMzcwMDMxYTc3MTkzMjEwODlwLTEsCisgICAgLTB4MS4xOTk5YThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEuM2M5YzhlNjFhZWM5NzNlMzcwMDMxYTc3MTkzMjEwODlwLTEsCisgICAgMHgxLjE5OTlhOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIC0weDEuMzA4OGE5YjVhZDIwMmIxN2U1MmQ4NjAxNTEzNjYyYjBwLTEsCisgICAgLTB4MS4xMTExMjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEuMzA4OGE5YjVhZDIwMmIxN2U1MmQ4NjAxNTEzNjYyYjBwLTEsCisgICAgMHgxLjExMTEyMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIC0weDEuMjRjMGFiZThlOTczZDZlOTlhY2JkMTU0ODRmZDY0ZjFwLTEsCisgICAgLTB4MS4wODg4OThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAweDEuMjRjMGFiZThlOTczZDZlOTlhY2JkMTU0ODRmZDY0ZjFwLTEsCisgICAgMHgxLjA4ODg5OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIC0weDEuMTkzZWJkMDAyNWY3YzVlZGYzMWNmNWEwZTI4NTA1OWVwLTEsCisgICAgLTB4MS4wMDAwMTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEuMTkzZWJkMDAyNWY3YzVlZGYzMWNmNWEwZTI4NTA1OWVwLTEsCisgICAgMHgxLjAwMDAxMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS4xOTNlYTdhYWQwMzBhOTc2YTQxOThkNTUwNTNiN2NiNXAtMSwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgLTB4MS4xOTNlYTdhYWQwMzBhOTc2YTQxOThkNTUwNTNiN2NiNXAtMSwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS4yNGMwOTYxNTU2ZDBhYTk1ZDZmYjZjMTA2YjIzNjA0OHAtMSwKKyAgICAweDEuMDg4ODg4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgLTB4MS4yNGMwOTYxNTU2ZDBhYTk1ZDZmYjZjMTA2YjIzNjA0OHAtMSwKKyAgICAtMHgxLjA4ODg4OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS4zMDg4OTM1OTczNmU5YWNmOTE1MmZlNDNmMjhmN2RjZHAtMSwKKyAgICAweDEuMTExMTEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgLTB4MS4zMDg4OTM1OTczNmU5YWNmOTE1MmZlNDNmMjhmN2RjZHAtMSwKKyAgICAtMHgxLjExMTExMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS4zYzljNzc3MTQ3OTE1NDdhYWIzN2E0MzM2NjhlYmZiOHAtMSwKKyAgICAweDEuMTk5OTk4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgLTB4MS4zYzljNzc3MTQ3OTE1NDdhYWIzN2E0MzM2NjhlYmZiOHAtMSwKKyAgICAtMHgxLjE5OTk5OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS40OTAyYmQ2Nzc4ZWJhNGRkZTM2NTliZDRlNGIzYjc5NnAtMSwKKyAgICAweDEuMjIyMjIwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgLTB4MS40OTAyYmQ2Nzc4ZWJhNGRkZTM2NTliZDRlNGIzYjc5NnAtMSwKKyAgICAtMHgxLjIyMjIyMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS41NWMyOWQzNmY2MmUwMzQyYTYwNjdiNTg4MTc3ODNiZXAtMSwKKyAgICAweDEuMmFhYWE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgLTB4MS41NWMyOWQzNmY2MmUwMzQyYTYwNjdiNTg4MTc3ODNiZXAtMSwKKyAgICAtMHgxLjJhYWFhOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS42MmU0MmFlZmEzYTY3MzU3N2UxY2JjYzUxZDNhNzViM3AtMSwKKyAgICAweDEuMzMzMzMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgLTB4MS42MmU0MmFlZmEzYTY3MzU3N2UxY2JjYzUxZDNhNzViM3AtMSwKKyAgICAtMHgxLjMzMzMzMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS43MDcwN2M3OGVhNDhkY2QyYmU5MDI0MzQyMDEzODYzNHAtMSwKKyAgICAweDEuM2JiYmI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgLTB4MS43MDcwN2M3OGVhNDhkY2QyYmU5MDI0MzQyMDEzODYzNHAtMSwKKyAgICAtMHgxLjNiYmJiOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS43ZTcxZDdiNjkyMDlmYmY4YTMxZjYxZTI4ZmIzODQwNXAtMSwKKyAgICAweDEuNDQ0NDQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgLTB4MS43ZTcxZDdiNjkyMDlmYmY4YTMxZjYxZTI4ZmIzODQwNXAtMSwKKyAgICAtMHgxLjQ0NDQ0MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS44Y2YzZWI2N2M2YmNmZGI1MDZiYWE2ZWNiNWYyZDk1MHAtMSwKKyAgICAweDEuNGNjY2M4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgLTB4MS44Y2YzZWI2N2M2YmNmZGI1MDZiYWE2ZWNiNWYyZDk1MHAtMSwKKyAgICAtMHgxLjRjY2NjOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIDB4MS45YzA0MTVlNTNmNTg1NTY3ODU1YWZkMGMzMmFhN2UxN3AtMSwKKyAgICAweDEuNTU1NTUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgLTB4MS45YzA0MTVlNTNmNTg1NTY3ODU1YWZkMGMzMmFhN2UxN3AtMSwKKyAgICAtMHgxLjU1NTU1MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIDB4MS5hYmIxYmUwNGUwYTY3NWJhMTk0OGI4ZmIxODQxNTg0Y3AtMSwKKyAgICAweDEuNWRkZGQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgLTB4MS5hYmIxYmUwNGUwYTY3NWJhMTk0OGI4ZmIxODQxNTg0Y3AtMSwKKyAgICAtMHgxLjVkZGRkOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS5iYzBlYzQwN2YzNjkyMWUwMGE1YmZlZTUyNmRkMDgzNHAtMSwKKyAgICAweDEuNjY2NjYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgLTB4MS5iYzBlYzQwN2YzNjkyMWUwMGE1YmZlZTUyNmRkMDgzNHAtMSwKKyAgICAtMHgxLjY2NjY2MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIDB4MS5jZDMwMTJkNWMwOGQyNDI4ODZmY2MwZjYxNjY4YTNkNXAtMSwKKyAgICAweDEuNmVlZWU4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgLTB4MS5jZDMwMTJkNWMwOGQyNDI4ODZmY2MwZjYxNjY4YTNkNXAtMSwKKyAgICAtMHgxLjZlZWVlOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS5kZjJlNWQ0NmZkYTQyY2YyN2E3MTg2M2I0Y2Y3YzdlNnAtMSwKKyAgICAweDEuNzc3NzcwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgLTB4MS5kZjJlNWQ0NmZkYTQyY2YyN2E3MTg2M2I0Y2Y3YzdlNnAtMSwKKyAgICAtMHgxLjc3Nzc3MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDB4MS5mMjI3MTg5YTAxOTA4ZjYwZjYxNTc2MDE0OGNiOGUzZnAtMSwKKyAgICAweDEuN2ZmZmY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgLTB4MS5mMjI3MTg5YTAxOTA4ZjYwZjYxNTc2MDE0OGNiOGUzZnAtMSwKKyAgICAtMHgxLjdmZmZmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS4wMzFlZTZiNmRkMzEzYjhlOTU1Y2YwZGViNzRiMTNkNXAwLAorICAgIDB4MS44ODg4ODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAtMHgxLjAzMWVlNmI2ZGQzMTNiOGU5NTVjZjBkZWI3NGIxM2Q1cDAsCisgICAgLTB4MS44ODg4ODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEuMGRjZWYyZTk0NzE3Y2Y1NGFiNWUzZDRhZTdjNmFiMDNwMCwKKyAgICAweDEuOTExMTA4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgLTB4MS4wZGNlZjJlOTQ3MTdjZjU0YWI1ZTNkNGFlN2M2YWIwM3AwLAorICAgIC0weDEuOTExMTA4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgMHgxLjE5M2U5YTU1N2I2OThjZmJkOWQ0YTc2N2VmOTljNzY3cDAsCisgICAgMHgxLjk5OTk5MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEuMTkzZTlhNTU3YjY5OGNmYmQ5ZDRhNzY3ZWY5OWM3NjdwMCwKKyAgICAtMHgxLjk5OTk5MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIDB4MS4yNThmY2JiMWM1ZTUzNGYzN2FkNjRhMWU5OWE4NjllOHAwLAorICAgIDB4MS5hMjIyMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAtMHgxLjI1OGZjYmIxYzVlNTM0ZjM3YWQ2NGExZTk5YTg2OWU4cDAsCisgICAgLTB4MS5hMjIyMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEuMzJlZTJhMDM5NzViNTdmNjRhODQ1Mjg5OTBiZTFmOWFwMCwKKyAgICAweDEuYWFhYWEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgLTB4MS4zMmVlMmEwMzk3NWI1N2Y2NGE4NDUyODk5MGJlMWY5YXAwLAorICAgIC0weDEuYWFhYWEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgMHgxLjQxOTMyNmUwMjU3M2Q4YjNhY2M3Y2JmNzY5NjhmZTMzcDAsCisgICAgMHgxLmIzMzMyOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0weDEuNDE5MzI2ZTAyNTczZDhiM2FjYzdjYmY3Njk2OGZlMzNwMCwKKyAgICAtMHgxLmIzMzMyOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIDB4MS41MWNjODlkYjM0Nzc2Y2NlZjU2ZGQ2MThlMDJmMWRhNnAwLAorICAgIDB4MS5iYmJiYjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAtMHgxLjUxY2M4OWRiMzQ3NzZjY2VmNTZkZDYxOGUwMmYxZGE2cDAsCisgICAgLTB4MS5iYmJiYjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuNjQwNzU5ZWFlMjNhMjI2YTlkN2MzOTI2MjQyZGEwMDZwMCwKKyAgICAweDEuYzQ0NDM4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgLTB4MS42NDA3NTllYWUyM2EyMjZhOWQ3YzM5MjYyNDJkYTAwNnAwLAorICAgIC0weDEuYzQ0NDM4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgMHgxLjc4ZTMzZWIxMjZjNDI2MzE0MmU0Zjk1ODRkZmFhMjM4cDAsCisgICAgMHgxLmNjY2NjMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEuNzhlMzNlYjEyNmM0MjYzMTQyZTRmOTU4NGRmYWEyMzhwMCwKKyAgICAtMHgxLmNjY2NjMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS45MTU3YjYxZmU5ZDUwNDFhZDlmOTcyMGUzYWUwZDdjMHAwLAorICAgIDB4MS5kNTU1NDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAtMHgxLjkxNTdiNjFmZTlkNTA0MWFkOWY5NzIwZTNhZTBkN2MwcDAsCisgICAgLTB4MS5kNTU1NDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEuYWYwMzU2ZjFlMTlhZDUzMGQ4OWVjNTQ1OTk1NDk1YjZwMCwKKyAgICAweDEuZGRkZGQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgLTB4MS5hZjAzNTZmMWUxOWFkNTMwZDg5ZWM1NDU5OTU0OTViNnAwLAorICAgIC0weDEuZGRkZGQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgMHgxLmQ0ZWY0Y2FmZjc5MDFiZThkZGEwNTYwMzgzZjk5NWY1cDAsCisgICAgMHgxLmU2NjY1OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0weDEuZDRlZjRjYWZmNzkwMWJlOGRkYTA1NjAzODNmOTk1ZjVwMCwKKyAgICAtMHgxLmU2NjY1OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIDB4MS4wNGY2MjZhOThmNmM3Nzc1ZjVhYTI3MmRmYTMwYWEwY3AxLAorICAgIDB4MS5lZWVlZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAtMHgxLjA0ZjYyNmE5OGY2Yzc3NzVmNWFhMjcyZGZhMzBhYTBjcDEsCisgICAgLTB4MS5lZWVlZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAweDEuMzFkY2IzY2Y3YWFkY2NiNTNkZGM2YWIzZTVmNDRjZjFwMSwKKyAgICAweDEuZjc3NzY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgLTB4MS4zMWRjYjNjZjdhYWRjY2I1M2RkYzZhYjNlNWY0NGNmMXAxLAorICAgIC0weDEuZjc3NzY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgLTB4MS4xNTQyNDU2YjM3ZDQyYzFjNmI3MzFkZjJkYjQwZjZjN3AzLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgMHgxLjE1NDI0NTZiMzdkNDJjMWM2YjczMWRmMmRiNDBmNmM3cDMsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIC0weDEuMGEyYjIzZTNiYWI3MmU4MWFlZDAzODBlYWM5NzFjYWVwMywKKyAgICAtMHgxLmZmZmZmY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDB4MS4wYTJiMjNlM2JhYjcyZTgxYWVkMDM4MGVhYzk3MWNhZXAzLAorICAgIDB4MS5mZmZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAtMHgxLjAzYWU1YWUwOGFkMTExODUwMTIwMmZjODIxOTdlOThlcDMsCisgICAgLTB4MS5mZmZmZmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuMDNhZTVhZTA4YWQxMTE4NTAxMjAyZmM4MjE5N2U5OGVwMywKKyAgICAweDEuZmZmZmZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgMHgxLjE1NDI0NTZiMzdkNDJjMWM2YjczMWRmMmRiNDBmNmM3cDMsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIC0weDEuMTU0MjQ1NmIzN2Q0MmMxYzZiNzMxZGYyZGI0MGY2YzdwMywKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS4wYTJiMjNlM2JhYjcyZTgxYWVkMDM4MGVhYzk3MWNhZXAzLAorICAgIDB4MS5mZmZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAtMHgxLjBhMmIyM2UzYmFiNzJlODFhZWQwMzgwZWFjOTcxY2FlcDMsCisgICAgLTB4MS5mZmZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAweDEuMDNhZTVhZTA4YWQxMTE4NTAxMjAyZmM4MjE5N2U5OGVwMywKKyAgICAweDEuZmZmZmZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgLTB4MS4wM2FlNWFlMDhhZDExMTg1MDEyMDJmYzgyMTk3ZTk4ZXAzLAorICAgIC0weDEuZmZmZmZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgMHgxLjRhODUxOTIzOTg1ZjI5ZTU2NmQxMDBhYTY3MmU5YWUzcC0zLAorICAgIDB4MS40N2FlMTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAtMHgxLjRhODUxOTIzOTg1ZjI5ZTU2NmQxMDBhYTY3MmU5YWUzcC0zLAorICAgIC0weDEuNDdhZTEycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgMHgxLjRhODUxYjMxMGJmODc4ODZmMThkYjY4MzFjN2RiYjVicC0zLAorICAgIDB4MS40N2FlMTRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAtMHgxLjRhODUxYjMxMGJmODc4ODZmMThkYjY4MzFjN2RiYjVicC0zLAorICAgIC0weDEuNDdhZTE0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLjRhODUxZDNlN2Y5MWYyNGM3NTdiMzYzMzJhMjE1Y2I0cC0zLAorICAgIDB4MS40N2FlMTZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAtMHgxLjRhODUxZDNlN2Y5MWYyNGM3NTdiMzYzMzJhMjE1Y2I0cC0zLAorICAgIC0weDEuNDdhZTE2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgLTB4MS40YTg1MWQzZTdmOTFmMjRjNzU3YjM2MzMyYTIxNWNiNHAtMywKKyAgICAtMHgxLjQ3YWUxNnAtMworICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIDB4MS40YTg1MWQzZTdmOTFmMjRjNzU3YjM2MzMyYTIxNWNiNHAtMywKKyAgICAweDEuNDdhZTE2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgLTB4MS40YTg1MWIzMTBiZjg3ODg2ZjE4ZGI2ODMxYzdkYmI1YnAtMywKKyAgICAtMHgxLjQ3YWUxNHAtMworICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIDB4MS40YTg1MWIzMTBiZjg3ODg2ZjE4ZGI2ODMxYzdkYmI1YnAtMywKKyAgICAweDEuNDdhZTE0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgLTB4MS40YTg1MTkyMzk4NWYyOWU1NjZkMTAwYWE2NzJlOWFlM3AtMywKKyAgICAtMHgxLjQ3YWUxMnAtMworICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIDB4MS40YTg1MTkyMzk4NWYyOWU1NjZkMTAwYWE2NzJlOWFlM3AtMywKKyAgICAweDEuNDdhZTEycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzQyCisgICAgMHgxLjE5M2VhNjU1N2FkYmM1ZTg2YWRkODBiMGViZjJjYjg1cC0xLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAtMHgxLjE5M2VhNjU1N2FkYmM1ZTg2YWRkODBiMGViZjJjYjg1cC0xLAorICAgIC0weDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgMHgxLjE5M2VhN2FhZDAzMGE5NzZhNDE5OGQ1NTA1M2I3Y2I1cC0xLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAtMHgxLjE5M2VhN2FhZDAzMGE5NzZhNDE5OGQ1NTA1M2I3Y2I1cC0xLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMHgxLjE5M2VhYTU1N2FkZDFiM2RjMzRmNDdkMTExZGZkYmExcC0xLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAtMHgxLjE5M2VhYTU1N2FkZDFiM2RjMzRmNDdkMTExZGZkYmExcC0xLAorICAgIC0weDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgMHgxLjA1OGFlZTk3MDAzNDFiOTViYzFjMDk3YjE4MTcxMTU4cC0yLAorICAgIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAtMHgxLjA1OGFlZTk3MDAzNDFiOTViYzFjMDk3YjE4MTcxMTU4cC0yLAorICAgIC0weDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzUwCisgICAgMHgxLjA1OGFlZmE4MTE0NTFhNzI3NmJjMmY4MjA0M2I2YTdkcC0yLAorICAgIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAtMHgxLjA1OGFlZmE4MTE0NTFhNzI3NmJjMmY4MjA0M2I2YTdkcC0yLAorICAgIC0weDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLjA1OGFmMWNhMzM2Nzg1NjVmMmZlM2EyZDk0MDgzMzc2cC0yLAorICAgIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAtMHgxLjA1OGFmMWNhMzM2Nzg1NjVmMmZlM2EyZDk0MDgzMzc2cC0yLAorICAgIC0weDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgMHgxLjAxNTg5MGM1ZGFhZTc2YTljOTg4ZWE1M2M5ZmRkNTcxcC0zLAorICAgIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAtMHgxLjAxNTg5MGM1ZGFhZTc2YTljOTg4ZWE1M2M5ZmRkNTcxcC0zLAorICAgIC0weDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgMHgxLjAxNTg5MWM5ZWFlZjc2OTk0NjdhMGY2YjkxNmM2NDk0cC0zLAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAtMHgxLjAxNTg5MWM5ZWFlZjc2OTk0NjdhMGY2YjkxNmM2NDk0cC0zLAorICAgIC0weDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgMHgxLjAxNTg5M2QyMGI3MThmM2NkOGRmNmMwNTZkYzA0NWE5cC0zLAorICAgIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAtMHgxLjAxNTg5M2QyMGI3MThmM2NkOGRmNmMwNTZkYzA0NWE5cC0zLAorICAgIC0weDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgMHgxLjAwNTU4N2FjMzY1OWNkY2MxNTE1NTIwZTZkZDM3MWFjcC00LAorICAgIDB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAtMHgxLjAwNTU4N2FjMzY1OWNkY2MxNTE1NTIwZTZkZDM3MWFjcC00LAorICAgIC0weDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgMHgxLjAwNTU4OGFkMzc1YWNkY2IxMzEyYTU2M2M2ODUyNTVlcC00LAorICAgIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAtMHgxLjAwNTU4OGFkMzc1YWNkY2IxMzEyYTU2M2M2ODUyNTVlcC00LAorICAgIC0weDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMzY0CisgICAgMHgxLjAwNTU4YWFmMzk1Y2QzZDUyMTI3NzY1MGRhODVhMmIzcC00LAorICAgIDB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAtMHgxLjAwNTU4YWFmMzk1Y2QzZDUyMTI3NzY1MGRhODVhMmIzcC00LAorICAgIC0weDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgMHgxLjAwMTU1Nzg4ZGFkZTIwZjNiZDlmZGM0ZDhjNzAyNzkxcC01LAorICAgIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjcKKyAgICAtMHgxLjAwMTU1Nzg4ZGFkZTIwZjNiZDlmZGM0ZDhjNzAyNzkxcC01LAorICAgIC0weDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzY4CisgICAgMHgxLjAwMTU1ODg5MWFlZTI0YjQ5ZGQzZmRjNWI2NmVlOWYxcC01LAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICAtMHgxLjAwMTU1ODg5MWFlZTI0YjQ5ZGQzZmRjNWI2NmVlOWYxcC01LAorICAgIC0weDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLjAwMTU1YTg5OWIwZTJkYjcxZTg0ZDk3ZTA0ZTY0ZWQzcC01LAorICAgIDB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICAtMHgxLjAwMTU1YTg5OWIwZTJkYjcxZTg0ZDk3ZTA0ZTY0ZWQzcC01LAorICAgIC0weDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMzcyCisgICAgMHgxLjAwMDU1NDg4N2FkMGM5OGUwZTNhNzBkNjc5NmRkMDBhcC02LAorICAgIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzMKKyAgICAtMHgxLjAwMDU1NDg4N2FkMGM5OGUwZTNhNzBkNjc5NmRkMDBhcC02LAorICAgIC0weDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMzc0CisgICAgMHgxLjAwMDU1NTg4OGFkMWM5OGUwZDNhNTYyYWNlZDMyOGI1cC02LAorICAgIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzUKKyAgICAtMHgxLjAwMDU1NTg4OGFkMWM5OGUwZDNhNTYyYWNlZDMyOGI1cC02LAorICAgIC0weDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgMHgxLjAwMDU1Nzg4YWFkM2M5ZWUxNzNiNjBmNzdkNWU0ODE4cC02LAorICAgIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAtMHgxLjAwMDU1Nzg4YWFkM2M5ZWUxNzNiNjBmNzdkNWU0ODE4cC02LAorICAgIC0weDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMzc4CisgICAgMHgxLjAwMDE1NDU4ODQ5MTlkM2IwM2YwNGYyYWVjM2FhZDY0cC03LAorICAgIDB4MS5mZmZmZmVwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAtMHgxLjAwMDE1NDU4ODQ5MTlkM2IwM2YwNGYyYWVjM2FhZDY0cC03LAorICAgIC0weDEuZmZmZmZlcC04CisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgMHgxLjAwMDE1NTU4ODg5MWFkMzc0M2QxNGZjNDVkYTEyZWYycC03LAorICAgIDB4MS5wLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODEKKyAgICAtMHgxLjAwMDE1NTU4ODg5MWFkMzc0M2QxNGZjNDVkYTEyZWYycC03LAorICAgIC0weDEucC03CisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgMHgxLjAwMDE1NzU4OTA5MWNkNDdjNDUzNWQ3ODE4NzYyYjY5cC03LAorICAgIDB4MS4wMDAwMDJwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODMKKyAgICAtMHgxLjAwMDE1NzU4OTA5MWNkNDdjNDUzNWQ3ODE4NzYyYjY5cC03LAorICAgIC0weDEuMDAwMDAycC03CisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgMHgxLjAwMDA1NDU1ODc4OGFjMWJlZDIwZjdlMWFiYjYzYzBicC04LAorICAgIDB4MS5mZmZmZmVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAtMHgxLjAwMDA1NDU1ODc4OGFjMWJlZDIwZjdlMWFiYjYzYzBicC04LAorICAgIC0weDEuZmZmZmZlcC05CisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgMHgxLjAwMDA1NTU1ODg4OGFkMWFlZTFlZjkzNDA0MDc5NzVhcC04LAorICAgIDB4MS5wLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODcKKyAgICAtMHgxLjAwMDA1NTU1ODg4OGFkMWFlZTFlZjkzNDA0MDc5NzVhcC04LAorICAgIC0weDEucC04CisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgMHgxLjAwMDA1NzU1OGE4OGFmMWVmMDI2ZmRlYWMwYzI2YzI5cC04LAorICAgIDB4MS4wMDAwMDJwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAtMHgxLjAwMDA1NzU1OGE4OGFmMWVmMDI2ZmRlYWMwYzI2YzI5cC04LAorICAgIC0weDEuMDAwMDAycC04CisgIH0sCisgIHsgLy8gRW50cnkgMzkwCisgICAgMHgxLjAwMDAxNDU1NTg0ODg5MGIxMWM1YWM4ODUxOGM5ZjhicC05LAorICAgIDB4MS5mZmZmZmVwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzkxCisgICAgLTB4MS4wMDAwMTQ1NTU4NDg4OTBiMTFjNWFjODg1MThjOWY4YnAtOSwKKyAgICAtMHgxLmZmZmZmZXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAweDEuMDAwMDE1NTU1ODg4ODkxYWQxYzk4YzllOWIwMjMwZjRwLTksCisgICAgMHgxLnAtOQorICB9LAorICB7IC8vIEVudHJ5IDM5MworICAgIC0weDEuMDAwMDE1NTU1ODg4ODkxYWQxYzk4YzllOWIwMjMwZjRwLTksCisgICAgLTB4MS5wLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTQKKyAgICAweDEuMDAwMDE3NTU1OTA4ODkzYmQxZDIwZDRiNzZhZDZjNDBwLTksCisgICAgMHgxLjAwMDAwMnAtOQorICB9LAorICB7IC8vIEVudHJ5IDM5NQorICAgIC0weDEuMDAwMDE3NTU1OTA4ODkzYmQxZDIwZDRiNzZhZDZjNDBwLTksCisgICAgLTB4MS4wMDAwMDJwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAweDEuMDAwMDA0NTU1NTc4ODg4OWUxYWQyOTNlMWY4NDRiM2RwLTEwLAorICAgIDB4MS5mZmZmZmVwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMzk3CisgICAgLTB4MS4wMDAwMDQ1NTU1Nzg4ODg5ZTFhZDI5M2UxZjg0NGIzZHAtMTAsCisgICAgLTB4MS5mZmZmZmVwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMHgxLjAwMDAwNTU1NTU4ODg4OGFkMWFkMzc0Mzc1YWJhMDlmcC0xMCwKKyAgICAweDEucC0xMAorICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIC0weDEuMDAwMDA1NTU1NTg4ODg4YWQxYWQzNzQzNzVhYmEwOWZwLTEwLAorICAgIC0weDEucC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQwMAorICAgIDB4MS4wMDAwMDc1NTU1YTg4ODhkMTFhZDVmNmUyMzI2NGI3Y3AtMTAsCisgICAgMHgxLjAwMDAwMnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAtMHgxLjAwMDAwNzU1NTVhODg4OGQxMWFkNWY2ZTIzMjY0YjdjcC0xMCwKKyAgICAtMHgxLjAwMDAwMnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDIKKyAgICAweDEuZmZmZmZlMGFhYWFhOGIxMTExMmYxNWEzNTM2YjMxOGZwLTE1LAorICAgIDB4MS5mZmZmZmVwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNDAzCisgICAgLTB4MS5mZmZmZmUwYWFhYWE4YjExMTEyZjE1YTM1MzZiMzE4ZnAtMTUsCisgICAgLTB4MS5mZmZmZmVwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNDA0CisgICAgMHgxLjAwMDAwMDA1NTU1NTU1ODg4ODg4OGFkMWFkMWFlZTFlcC0xNCwKKyAgICAweDEucC0xNAorICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIC0weDEuMDAwMDAwMDU1NTU1NTU4ODg4ODg4YWQxYWQxYWVlMWVwLTE0LAorICAgIC0weDEucC0xNAorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIDB4MS4wMDAwMDIwNTU1NTU3NTg4ODhjYThhZDFkZmU1OThkYXAtMTQsCisgICAgMHgxLjAwMDAwMnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICAtMHgxLjAwMDAwMjA1NTU1NTc1ODg4OGNhOGFkMWRmZTU5OGRhcC0xNCwKKyAgICAtMHgxLjAwMDAwMnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDgKKyAgICAweDEuZmZmZmZlMDAwMDAwMDBhYWFhYThhYWFhYWNhYjExMTBwLTI5LAorICAgIDB4MS5mZmZmZmVwLTI5CisgIH0sCisgIHsgLy8gRW50cnkgNDA5CisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMGFhYWFhOGFhYWFhY2FiMTExMHAtMjksCisgICAgLTB4MS5mZmZmZmVwLTI5CisgIH0sCisgIHsgLy8gRW50cnkgNDEwCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTU4ODg4cC0yOCwKKyAgICAweDEucC0yOAorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIC0weDEuMDAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1NTg4ODhwLTI4LAorICAgIC0weDEucC0yOAorICB9LAorICB7IC8vIEVudHJ5IDQxMgorICAgIDB4MS4wMDAwMDIwMDAwMDAwMDU1NTU1NzU1NTU1OTU1ODg4YnAtMjgsCisgICAgMHgxLjAwMDAwMnAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTMKKyAgICAtMHgxLjAwMDAwMjAwMDAwMDAwNTU1NTU3NTU1NTU5NTU4ODhicC0yOCwKKyAgICAtMHgxLjAwMDAwMnAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTQKKyAgICAweDEuZmZmZmZlMDAwMDAwMDAwYWFhYWE4YWFhYWFjYWFiMTFwLTMxLAorICAgIDB4MS5mZmZmZmVwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgNDE1CisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMDBhYWFhYThhYWFhYWNhYWIxMXAtMzEsCisgICAgLTB4MS5mZmZmZmVwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgNDE2CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDU1NTU1NTU1NTU1NTU1NTg4cC0zMCwKKyAgICAweDEucC0zMAorICB9LAorICB7IC8vIEVudHJ5IDQxNworICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTU1ODhwLTMwLAorICAgIC0weDEucC0zMAorICB9LAorICB7IC8vIEVudHJ5IDQxOAorICAgIDB4MS4wMDAwMDIwMDAwMDAwMDA1NTU1NTc1NTU1NTk1NTU4OHAtMzAsCisgICAgMHgxLjAwMDAwMnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTkKKyAgICAtMHgxLjAwMDAwMjAwMDAwMDAwMDU1NTU1NzU1NTU1OTU1NTg4cC0zMCwKKyAgICAtMHgxLjAwMDAwMnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjAKKyAgICAtMHgxLjE5M2VhYTU1N2FkZDFiM2RjMzRmNDdkMTExZGZkYmExcC0xLAorICAgIC0weDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgMHgxLjE5M2VhYTU1N2FkZDFiM2RjMzRmNDdkMTExZGZkYmExcC0xLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAtMHgxLjE5M2VhN2FhZDAzMGE5NzZhNDE5OGQ1NTA1M2I3Y2I1cC0xLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIzCisgICAgMHgxLjE5M2VhN2FhZDAzMGE5NzZhNDE5OGQ1NTA1M2I3Y2I1cC0xLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjQKKyAgICAtMHgxLjE5M2VhNjU1N2FkYmM1ZTg2YWRkODBiMGViZjJjYjg1cC0xLAorICAgIC0weDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgMHgxLjE5M2VhNjU1N2FkYmM1ZTg2YWRkODBiMGViZjJjYjg1cC0xLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjYKKyAgICAtMHgxLjA1OGFmMWNhMzM2Nzg1NjVmMmZlM2EyZDk0MDgzMzc2cC0yLAorICAgIC0weDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDI3CisgICAgMHgxLjA1OGFmMWNhMzM2Nzg1NjVmMmZlM2EyZDk0MDgzMzc2cC0yLAorICAgIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAtMHgxLjA1OGFlZmE4MTE0NTFhNzI3NmJjMmY4MjA0M2I2YTdkcC0yLAorICAgIC0weDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDI5CisgICAgMHgxLjA1OGFlZmE4MTE0NTFhNzI3NmJjMmY4MjA0M2I2YTdkcC0yLAorICAgIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzAKKyAgICAtMHgxLjA1OGFlZTk3MDAzNDFiOTViYzFjMDk3YjE4MTcxMTU4cC0yLAorICAgIC0weDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDMxCisgICAgMHgxLjA1OGFlZTk3MDAzNDFiOTViYzFjMDk3YjE4MTcxMTU4cC0yLAorICAgIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzIKKyAgICAtMHgxLjAxNTg5M2QyMGI3MThmM2NkOGRmNmMwNTZkYzA0NWE5cC0zLAorICAgIC0weDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgMHgxLjAxNTg5M2QyMGI3MThmM2NkOGRmNmMwNTZkYzA0NWE5cC0zLAorICAgIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzQKKyAgICAtMHgxLjAxNTg5MWM5ZWFlZjc2OTk0NjdhMGY2YjkxNmM2NDk0cC0zLAorICAgIC0weDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDM1CisgICAgMHgxLjAxNTg5MWM5ZWFlZjc2OTk0NjdhMGY2YjkxNmM2NDk0cC0zLAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzYKKyAgICAtMHgxLjAxNTg5MGM1ZGFhZTc2YTljOTg4ZWE1M2M5ZmRkNTcxcC0zLAorICAgIC0weDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDM3CisgICAgMHgxLjAxNTg5MGM1ZGFhZTc2YTljOTg4ZWE1M2M5ZmRkNTcxcC0zLAorICAgIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzgKKyAgICAtMHgxLjAwNTU4YWFmMzk1Y2QzZDUyMTI3NzY1MGRhODVhMmIzcC00LAorICAgIC0weDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgMHgxLjAwNTU4YWFmMzk1Y2QzZDUyMTI3NzY1MGRhODVhMmIzcC00LAorICAgIDB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAtMHgxLjAwNTU4OGFkMzc1YWNkY2IxMzEyYTU2M2M2ODUyNTVlcC00LAorICAgIC0weDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgMHgxLjAwNTU4OGFkMzc1YWNkY2IxMzEyYTU2M2M2ODUyNTVlcC00LAorICAgIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDIKKyAgICAtMHgxLjAwNTU4N2FjMzY1OWNkY2MxNTE1NTIwZTZkZDM3MWFjcC00LAorICAgIC0weDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgMHgxLjAwNTU4N2FjMzY1OWNkY2MxNTE1NTIwZTZkZDM3MWFjcC00LAorICAgIDB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDQKKyAgICAtMHgxLjAwMTU1YTg5OWIwZTJkYjcxZTg0ZDk3ZTA0ZTY0ZWQzcC01LAorICAgIC0weDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgMHgxLjAwMTU1YTg5OWIwZTJkYjcxZTg0ZDk3ZTA0ZTY0ZWQzcC01LAorICAgIDB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDYKKyAgICAtMHgxLjAwMTU1ODg5MWFlZTI0YjQ5ZGQzZmRjNWI2NmVlOWYxcC01LAorICAgIC0weDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgMHgxLjAwMTU1ODg5MWFlZTI0YjQ5ZGQzZmRjNWI2NmVlOWYxcC01LAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDgKKyAgICAtMHgxLjAwMTU1Nzg4ZGFkZTIwZjNiZDlmZGM0ZDhjNzAyNzkxcC01LAorICAgIC0weDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDQ5CisgICAgMHgxLjAwMTU1Nzg4ZGFkZTIwZjNiZDlmZGM0ZDhjNzAyNzkxcC01LAorICAgIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTAKKyAgICAtMHgxLjAwMDU1Nzg4YWFkM2M5ZWUxNzNiNjBmNzdkNWU0ODE4cC02LAorICAgIC0weDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgMHgxLjAwMDU1Nzg4YWFkM2M5ZWUxNzNiNjBmNzdkNWU0ODE4cC02LAorICAgIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTIKKyAgICAtMHgxLjAwMDU1NTg4OGFkMWM5OGUwZDNhNTYyYWNlZDMyOGI1cC02LAorICAgIC0weDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgMHgxLjAwMDU1NTg4OGFkMWM5OGUwZDNhNTYyYWNlZDMyOGI1cC02LAorICAgIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTQKKyAgICAtMHgxLjAwMDU1NDg4N2FkMGM5OGUwZTNhNzBkNjc5NmRkMDBhcC02LAorICAgIC0weDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgMHgxLjAwMDU1NDg4N2FkMGM5OGUwZTNhNzBkNjc5NmRkMDBhcC02LAorICAgIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAtMHgxLjAwMDE1NzU4OTA5MWNkNDdjNDUzNWQ3ODE4NzYyYjY5cC03LAorICAgIC0weDEuMDAwMDAycC03CisgIH0sCisgIHsgLy8gRW50cnkgNDU3CisgICAgMHgxLjAwMDE1NzU4OTA5MWNkNDdjNDUzNWQ3ODE4NzYyYjY5cC03LAorICAgIDB4MS4wMDAwMDJwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTgKKyAgICAtMHgxLjAwMDE1NTU4ODg5MWFkMzc0M2QxNGZjNDVkYTEyZWYycC03LAorICAgIC0weDEucC03CisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgMHgxLjAwMDE1NTU4ODg5MWFkMzc0M2QxNGZjNDVkYTEyZWYycC03LAorICAgIDB4MS5wLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjAKKyAgICAtMHgxLjAwMDE1NDU4ODQ5MTlkM2IwM2YwNGYyYWVjM2FhZDY0cC03LAorICAgIC0weDEuZmZmZmZlcC04CisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgMHgxLjAwMDE1NDU4ODQ5MTlkM2IwM2YwNGYyYWVjM2FhZDY0cC03LAorICAgIDB4MS5mZmZmZmVwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICAtMHgxLjAwMDA1NzU1OGE4OGFmMWVmMDI2ZmRlYWMwYzI2YzI5cC04LAorICAgIC0weDEuMDAwMDAycC04CisgIH0sCisgIHsgLy8gRW50cnkgNDYzCisgICAgMHgxLjAwMDA1NzU1OGE4OGFmMWVmMDI2ZmRlYWMwYzI2YzI5cC04LAorICAgIDB4MS4wMDAwMDJwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjQKKyAgICAtMHgxLjAwMDA1NTU1ODg4OGFkMWFlZTFlZjkzNDA0MDc5NzVhcC04LAorICAgIC0weDEucC04CisgIH0sCisgIHsgLy8gRW50cnkgNDY1CisgICAgMHgxLjAwMDA1NTU1ODg4OGFkMWFlZTFlZjkzNDA0MDc5NzVhcC04LAorICAgIDB4MS5wLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjYKKyAgICAtMHgxLjAwMDA1NDU1ODc4OGFjMWJlZDIwZjdlMWFiYjYzYzBicC04LAorICAgIC0weDEuZmZmZmZlcC05CisgIH0sCisgIHsgLy8gRW50cnkgNDY3CisgICAgMHgxLjAwMDA1NDU1ODc4OGFjMWJlZDIwZjdlMWFiYjYzYzBicC04LAorICAgIDB4MS5mZmZmZmVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjgKKyAgICAtMHgxLjAwMDAxNzU1NTkwODg5M2JkMWQyMGQ0Yjc2YWQ2YzQwcC05LAorICAgIC0weDEuMDAwMDAycC05CisgIH0sCisgIHsgLy8gRW50cnkgNDY5CisgICAgMHgxLjAwMDAxNzU1NTkwODg5M2JkMWQyMGQ0Yjc2YWQ2YzQwcC05LAorICAgIDB4MS4wMDAwMDJwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzAKKyAgICAtMHgxLjAwMDAxNTU1NTg4ODg5MWFkMWM5OGM5ZTliMDIzMGY0cC05LAorICAgIC0weDEucC05CisgIH0sCisgIHsgLy8gRW50cnkgNDcxCisgICAgMHgxLjAwMDAxNTU1NTg4ODg5MWFkMWM5OGM5ZTliMDIzMGY0cC05LAorICAgIDB4MS5wLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzIKKyAgICAtMHgxLjAwMDAxNDU1NTg0ODg5MGIxMWM1YWM4ODUxOGM5ZjhicC05LAorICAgIC0weDEuZmZmZmZlcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIDB4MS4wMDAwMTQ1NTU4NDg4OTBiMTFjNWFjODg1MThjOWY4YnAtOSwKKyAgICAweDEuZmZmZmZlcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIC0weDEuMDAwMDA3NTU1NWE4ODg4ZDExYWQ1ZjZlMjMyNjRiN2NwLTEwLAorICAgIC0weDEuMDAwMDAycC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ3NQorICAgIDB4MS4wMDAwMDc1NTU1YTg4ODhkMTFhZDVmNmUyMzI2NGI3Y3AtMTAsCisgICAgMHgxLjAwMDAwMnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAtMHgxLjAwMDAwNTU1NTU4ODg4OGFkMWFkMzc0Mzc1YWJhMDlmcC0xMCwKKyAgICAtMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAweDEuMDAwMDA1NTU1NTg4ODg4YWQxYWQzNzQzNzVhYmEwOWZwLTEwLAorICAgIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgLTB4MS4wMDAwMDQ1NTU1Nzg4ODg5ZTFhZDI5M2UxZjg0NGIzZHAtMTAsCisgICAgLTB4MS5mZmZmZmVwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNDc5CisgICAgMHgxLjAwMDAwNDU1NTU3ODg4ODllMWFkMjkzZTFmODQ0YjNkcC0xMCwKKyAgICAweDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDQ4MAorICAgIC0weDEuMDAwMDAyMDU1NTU1NzU4ODg4Y2E4YWQxZGZlNTk4ZGFwLTE0LAorICAgIC0weDEuMDAwMDAycC0xNAorICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIDB4MS4wMDAwMDIwNTU1NTU3NTg4ODhjYThhZDFkZmU1OThkYXAtMTQsCisgICAgMHgxLjAwMDAwMnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODIKKyAgICAtMHgxLjAwMDAwMDA1NTU1NTU1ODg4ODg4OGFkMWFkMWFlZTFlcC0xNCwKKyAgICAtMHgxLnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODMKKyAgICAweDEuMDAwMDAwMDU1NTU1NTU4ODg4ODg4YWQxYWQxYWVlMWVwLTE0LAorICAgIDB4MS5wLTE0CisgIH0sCisgIHsgLy8gRW50cnkgNDg0CisgICAgLTB4MS5mZmZmZmUwYWFhYWE4YjExMTEyZjE1YTM1MzZiMzE4ZnAtMTUsCisgICAgLTB4MS5mZmZmZmVwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNDg1CisgICAgMHgxLmZmZmZmZTBhYWFhYThiMTExMTJmMTVhMzUzNmIzMThmcC0xNSwKKyAgICAweDEuZmZmZmZlcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIC0weDEuMDAwMDAyMDAwMDAwMDA1NTU1NTc1NTU1NTk1NTg4OGJwLTI4LAorICAgIC0weDEuMDAwMDAycC0yOAorICB9LAorICB7IC8vIEVudHJ5IDQ4NworICAgIDB4MS4wMDAwMDIwMDAwMDAwMDU1NTU1NzU1NTU1OTU1ODg4YnAtMjgsCisgICAgMHgxLjAwMDAwMnAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTU4ODg4cC0yOCwKKyAgICAtMHgxLnAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODkKKyAgICAweDEuMDAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1NTg4ODhwLTI4LAorICAgIDB4MS5wLTI4CisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMGFhYWFhOGFhYWFhY2FiMTExMHAtMjksCisgICAgLTB4MS5mZmZmZmVwLTI5CisgIH0sCisgIHsgLy8gRW50cnkgNDkxCisgICAgMHgxLmZmZmZmZTAwMDAwMDAwYWFhYWE4YWFhYWFjYWIxMTEwcC0yOSwKKyAgICAweDEuZmZmZmZlcC0yOQorICB9LAorICB7IC8vIEVudHJ5IDQ5MgorICAgIC0weDEuMDAwMDAyMDAwMDAwMDAwNTU1NTU3NTU1NTU5NTU1ODhwLTMwLAorICAgIC0weDEuMDAwMDAycC0zMAorICB9LAorICB7IC8vIEVudHJ5IDQ5MworICAgIDB4MS4wMDAwMDIwMDAwMDAwMDA1NTU1NTc1NTU1NTk1NTU4OHAtMzAsCisgICAgMHgxLjAwMDAwMnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTQKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMDU1NTU1NTU1NTU1NTU1NTg4cC0zMCwKKyAgICAtMHgxLnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTUKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTU1ODhwLTMwLAorICAgIDB4MS5wLTMwCisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMDBhYWFhYThhYWFhYWNhYWIxMXAtMzEsCisgICAgLTB4MS5mZmZmZmVwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMGFhYWFhOGFhYWFhY2FhYjExcC0zMSwKKyAgICAweDEuZmZmZmZlcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDQ5OAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTkKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDAKKyAgICAweDEuMTU0MjQ1NmIzN2Q0MmMxYzZiNzMxZGYyZGI0MGY2YzdwMywKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTAxCisgICAgLTB4MS4xNTQyNDU2YjM3ZDQyYzFjNmI3MzFkZjJkYjQwZjZjN3AzLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgMHgxLjBmMmViMTY1MjE5MTIzMzZkYTk4OTkwN2I0MmU4NDkzcDAsCisgICAgMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDUwMworICAgIC0weDEuMGYyZWIxNjUyMTkxMjMzNmRhOTg5OTA3YjQyZTg0OTNwMCwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDUwNAorICAgIDB4MS4wMDAwMDJwLTEyNiwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAtMHgxLjAwMDAwMnAtMTI2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDYKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTA3CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDUwOQorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDUxMAorICAgIDB4MS5mZmZmZjhwLTEyNywKKyAgICAweDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTEKKyAgICAtMHgxLmZmZmZmOHAtMTI3LAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTIKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNTEzCisgICAgLTB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDUxNgorICAgIDAuMCwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNTE3CisgICAgLTAuMCwKKyAgICAtMC4wZgorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2NicnRfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2NicnRfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjliYjQ3MDgKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvY2JydF9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwyMjc0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZG91YmxlLCBkb3VibGU+IGdfY2JydF9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEucC0xMCwKKyAgICAtMHgxLjBwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS5wLTEwLAorICAgIDB4MS4wcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAtMHgxLjAwMDAwMDAwMDA3ZmZmZmZmZmZmYzAwMDAwMDAwMDM1cC0zLAorICAgIC0weDEuMDAwMDAwMDAwMThwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLjAwMDAwMDAwMDA3ZmZmZmZmZmZmYzAwMDAwMDAwMDM1cC0zLAorICAgIDB4MS4wMDAwMDAwMDAxOHAtOQorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMHgxLjAwMDAwMDAwMDdmZmZmZmZmZmMwMDAwMDAwMDM1NTU1cC0zNDAsCisgICAgLTB4MS4wMDAwMDAwMDE4MHAtMTAyMAorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuMDAwMDAwMDAwN2ZmZmZmZmZmYzAwMDAwMDAwMzU1NTVwLTM0MCwKKyAgICAweDEuMDAwMDAwMDAxODBwLTEwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgLTB4MS45OTg2NjU3ZmVkZmU0ZmQzNmU1MzNlYmI1OWU5NmVlNnAtMTQsCisgICAgLTB4MS4wNjBwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS45OTg2NjU3ZmVkZmU0ZmQzNmU1MzNlYmI1OWU5NmVlNnAtMTQsCisgICAgMHgxLjA2MHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgLTB4MS40NWFiZmI3ZWY3MTg5OTExYmE4OTRjNDVlY2ExZGRjYXAtMSwKKyAgICAtMHgxLjA3ODdjMWZhNzdjZTBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLjQ1YWJmYjdlZjcxODk5MTFiYTg5NGM0NWVjYTFkZGNhcC0xLAorICAgIDB4MS4wNzg3YzFmYTc3Y2UwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAtMHgxLjllOWVlMmJlZTY5ZmU4MGM0ZjczY2I1OWNjYjdmM2QxcDUsCisgICAgLTB4MS4wZmU2ZmMwNWFjOGMwcDE3CisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuOWU5ZWUyYmVlNjlmZTgwYzRmNzNjYjU5Y2NiN2YzZDFwNSwKKyAgICAweDEuMGZlNmZjMDVhYzhjMHAxNworICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgLTB4MS40OTNiMzMzNThmODNmZjE5N2MyOTE5MmJhYWNmMjc2M3AtOSwKKyAgICAtMHgxLjEwNDQxMTA0NDEycC0yNgorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLjQ5M2IzMzM1OGY4M2ZmMTk3YzI5MTkyYmFhY2YyNzYzcC05LAorICAgIDB4MS4xMDQ0MTEwNDQxMnAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIC0weDEuOWYxODdiYjk5NGI0ZTgyMmQ0YzI5Zjg0ZWRhNjYxNDVwLTEsCisgICAgLTB4MS4xMGQ2N2MwNjJkN2UwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuOWYxODdiYjk5NGI0ZTgyMmQ0YzI5Zjg0ZWRhNjYxNDVwLTEsCisgICAgMHgxLjEwZDY3YzA2MmQ3ZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIC0weDEuMGFmNjU2MmY4MjkzNzgwMGY2YWFlYjU5Y2E4YmU5MjNwLTIsCisgICAgLTB4MS4yMjUwYWIzNzI2YjA4cC02CisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuMGFmNjU2MmY4MjkzNzgwMGY2YWFlYjU5Y2E4YmU5MjNwLTIsCisgICAgMHgxLjIyNTBhYjM3MjZiMDhwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIC0weDEuYTljZDkxOTQwMmY0ODgyMDUwMWQwYTE2ZTYxNmExZWZwMzAsCisgICAgLTB4MS4yNjgwMjlhYmYxNTg1cDkyCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuYTljZDkxOTQwMmY0ODgyMDUwMWQwYTE2ZTYxNmExZWZwMzAsCisgICAgMHgxLjI2ODAyOWFiZjE1ODVwOTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIC0weDEuYWE3NGZiNTNhY2UyNDgxMzdlYzJhNjhmNGUyYzBlNmFwLTExLAorICAgIC0weDEuMjdkYzEwMmZiYWFlY3AtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS5hYTc0ZmI1M2FjZTI0ODEzN2VjMmE2OGY0ZTJjMGU2YXAtMTEsCisgICAgMHgxLjI3ZGMxMDJmYmFhZWNwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAtMHgxLmJmYjVjMWNkYWE2ZGRmZDAzMmM4YTg3ZGI3YTE5Y2EycC01LAorICAgIC0weDEuNTY1NTk1NjU1OTU4MHAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS5iZmI1YzFjZGFhNmRkZmQwMzJjOGE4N2RiN2ExOWNhMnAtNSwKKyAgICAweDEuNTY1NTk1NjU1OTU4MHAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIC0weDEuY2I4YTc1NTQxYWJlZDgxZmE3OTk0NjQ0NTFhNTU4ZDNwMzAsCisgICAgLTB4MS43MjMyNTYwYjljY2M2cDkyCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuY2I4YTc1NTQxYWJlZDgxZmE3OTk0NjQ0NTFhNTU4ZDNwMzAsCisgICAgMHgxLjcyMzI1NjBiOWNjYzZwOTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIC0weDEuN2QwMzhkNjE1NWRjNDgwYTlmMjllODY1NjZhNWY0M2RwLTM1NiwKKyAgICAtMHgxLmE2MHAtMTA2NworICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLjdkMDM4ZDYxNTVkYzQ4MGE5ZjI5ZTg2NTY2YTVmNDNkcC0zNTYsCisgICAgMHgxLmE2MHAtMTA2NworICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgLTB4MS5lM2I5ZGZiY2FmY2RhODM5NTMzMWIyMjMyMDIxMmM0Y3A3LAorICAgIC0weDEuYWZjNmFiZjVkMGNlMHAyMworICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLmUzYjlkZmJjYWZjZGE4Mzk1MzMxYjIyMzIwMjEyYzRjcDcsCisgICAgMHgxLmFmYzZhYmY1ZDBjZTBwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEuODRhZDYwMzcyN2EwNTA4Y2JlZGQyYmNhMGVjNDg3MjVwMCwKKyAgICAtMHgxLmJmZmE5MGQ4N2FhOThwMQorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLjg0YWQ2MDM3MjdhMDUwOGNiZWRkMmJjYTBlYzQ4NzI1cDAsCisgICAgMHgxLmJmZmE5MGQ4N2FhOThwMQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgLTB4MS45NDdjMDlmYTI1ODE1MWNmZWVlODUxNzViYzQxZmI4MXAtMywKKyAgICAtMHgxLmY4ZTM4ZTM4ZTM4ZTRwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS45NDdjMDlmYTI1ODE1MWNmZWVlODUxNzViYzQxZmI4MXAtMywKKyAgICAweDEuZjhlMzhlMzhlMzhlNHAtOAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgLTB4MS5mZmZmZmZmZmZmZmY5ZmZmZmZmZmZmZmZlZGZmZmZmZnAtMzQxLAorICAgIC0weDEuZmZmZmZmZmZmZmZlZXAtMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLmZmZmZmZmZmZmZmZjlmZmZmZmZmZmZmZmVkZmZmZmZmcC0zNDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZWVwLTEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS40MjhhMmY5OGQ3MjhjMjRhZTBkNDQ0ODg0N2M0YTZiYXAtMzQxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAzcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAtMHgxLjQyOGEyZjk4ZDcyOGMyNGFlMGQ0NDQ4ODQ3YzRhNmJhcC0zNDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAzcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuOTY1ZmVhNTNkNmUzZmFmNzAyZTQxNTkwYjA3MGJmZmJwLTE0LAorICAgIDB4MS4wMDAwMDAwMDAwMDA2cC00MAorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS45NjVmZWE1M2Q2ZTNmYWY3MDJlNDE1OTBiMDcwYmZmYnAtMTQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDA2cC00MAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLjk2NWZlYTUzZDZlM2ZhZjcwMmU0MTU5MGIwNzBiZmZicDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDZwMgorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS45NjVmZWE1M2Q2ZTNmYWY3MDJlNDE1OTBiMDcwYmZmYnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwNnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuOTY1ZmVhNTNkNmU2MDdkZDkxOTA2MDczYmYxYTM1ZWRwMCwKKyAgICAweDEuMDAwMDAwMDAwMDA0NHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAtMHgxLjk2NWZlYTUzZDZlNjA3ZGQ5MTkwNjA3M2JmMWEzNWVkcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDQ0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS45NjVmZWE1M2Q2ZTY5N2NhMzQ4ZTExZTJhMDkxZDViNnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDU1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIC0weDEuOTY1ZmVhNTNkNmU2OTdjYTM0OGUxMWUyYTA5MWQ1YjZwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwNTVwMgorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLjAwMDAwMDAwMDAwY2JmZmZmZmZmZmY1ZDcwcDEsCisgICAgMHgxLjAwMDAwMDAwMDAyNjRwMworICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgLTB4MS4wMDAwMDAwMDAwMGNiZmZmZmZmZmZmNWQ3MHAxLAorICAgIC0weDEuMDAwMDAwMDAwMDI2NHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEuOTY1ZmVhNTNkNzAyZjdiY2IxMjhiMGFhODkwOTk3ZTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDNhZnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAtMHgxLjk2NWZlYTUzZDcwMmY3YmNiMTI4YjBhYTg5MDk5N2UwcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwM2FmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIDB4MS40MjhhMmY5OGQ3NWU2ZmQ0ZDc1M2RmOTI3YjZiMWQ0ZnAtMTQsCisgICAgMHgxLjAwMDAwMDAwMDA4cC00MQorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTB4MS40MjhhMmY5OGQ3NWU2ZmQ0ZDc1M2RmOTI3YjZiMWQ0ZnAtMTQsCisgICAgLTB4MS4wMDAwMDAwMDAwOHAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS4wMDAwMDAwMDAwN2ZmZmZmZmZmZmMwMDAwMDAwMDAzNXAtMywKKyAgICAweDEuMDAwMDAwMDAwMThwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEuMDAwMDAwMDAwMDdmZmZmZmZmZmZjMDAwMDAwMDAwMzVwLTMsCisgICAgLTB4MS4wMDAwMDAwMDAxOHAtOQorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjk2NWZlYTUzZGExMDg3ZmZhZDQxMDhjNGVhODBjYmMycC0xNCwKKyAgICAweDEuMDAwMDAwMDAwNjBwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLjk2NWZlYTUzZGExMDg3ZmZhZDQxMDhjNGVhODBjYmMycC0xNCwKKyAgICAtMHgxLjAwMDAwMDAwMDYwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLjk2NWZlYTUzZGE0YWY3YWE4ZjZlNmQ0MDQ4ZTUyZjJicDEsCisgICAgMHgxLjAwMDAwMDAwMDY2ZTdwNQorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgLTB4MS45NjVmZWE1M2RhNGFmN2FhOGY2ZTZkNDA0OGU1MmYyYnAxLAorICAgIC0weDEuMDAwMDAwMDAwNjZlN3A1CisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuMDAwMDAwMDAwN2ZmZmZmZmZmYzAwMDAwMDAwMzU1NTVwLTM0MCwKKyAgICAweDEuMDAwMDAwMDAxODBwLTEwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEuMDAwMDAwMDAwN2ZmZmZmZmZmYzAwMDAwMDAwMzU1NTVwLTM0MCwKKyAgICAtMHgxLjAwMDAwMDAwMTgwcC0xMDIwCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuOTY1ZmVhNTVmNTQwOTdjMzZhNjczN2Q4NWRkMDA2ZGNwLTQwLAorICAgIDB4MS4wMDAwMDAwNDAxMDA0cC0xMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuOTY1ZmVhNTVmNTQwOTdjMzZhNjczN2Q4NWRkMDA2ZGNwLTQwLAorICAgIC0weDEuMDAwMDAwMDQwMTAwNHAtMTE4CisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEuNDI4YTJmYTE1OTk1ZTdmZmZmNjg1MzRkYWEyNjQ2ZWRwMCwKKyAgICAweDEuMDAwMDAwMTQ0MzBlMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLjQyOGEyZmExNTk5NWU3ZmZmZjY4NTM0ZGFhMjY0NmVkcDAsCisgICAgLTB4MS4wMDAwMDAxNDQzMGUycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS40MjhhMmZiZWEzNWEzZDlkODZkMGE3M2QwNTBkMTM3OXAtMzQ4LAorICAgIDB4MS4wMDAwMDA1YTBwLTEwNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuNDI4YTJmYmVhMzVhM2Q5ZDg2ZDBhNzNkMDUwZDEzNzlwLTM0OCwKKyAgICAtMHgxLjAwMDAwMDVhMHAtMTA0MworICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgMHgxLjk2NWZmMmNhYTQyMzE3YzAwZmZkNzkxYzA0MGZiOTFkcC0zNCwKKyAgICAweDEuMDAwMDBmZmYwcC0xMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuOTY1ZmYyY2FhNDIzMTdjMDBmZmQ3OTFjMDQwZmI5MWRwLTM0LAorICAgIC0weDEuMDAwMDBmZmYwcC0xMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS45NjVmZjJjYjJiOTg2MDM3NGM3YTkyZTNiZjc5MjY1ZHAtMTQsCisgICAgMHgxLjAwMDAxcC00MAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS45NjVmZjJjYjJiOTg2MDM3NGM3YTkyZTNiZjc5MjY1ZHAtMTQsCisgICAgLTB4MS4wMDAwMXAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS45NjYwYjU4MzY2YjljODE0NDNjNTY0Yzg1MTljMTY0OXAtMzQxLAorICAgIDB4MS4wMDAxODAwMDAwOHAtMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS45NjYwYjU4MzY2YjljODE0NDNjNTY0Yzg1MTljMTY0OXAtMzQxLAorICAgIC0weDEuMDAwMTgwMDAwMDhwLTEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS45NjYzOWU4MDU1NGQwN2Y0NDQ4MmVkNGVkZWI2OTAyNHAtMTQsCisgICAgMHgxLjAwMDcwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS45NjYzOWU4MDU1NGQwN2Y0NDQ4MmVkNGVkZWI2OTAyNHAtMTQsCisgICAgLTB4MS4wMDA3MHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS45NjY1YjIzNDJmOGQ5N2FiODI3Y2M5MDdiZWE2YTZhMHAtMiwKKyAgICAweDEuMDAwYWVjZjI0YjhiYnAtNAorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS45NjY1YjIzNDJmOGQ5N2FiODI3Y2M5MDdiZWE2YTZhMHAtMiwKKyAgICAtMHgxLjAwMGFlY2YyNGI4YmJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS45NjY2NGU1MTQ3MDg1N2JhOTI3ZmQ4YzgzZTRhNjY4ZnAtMiwKKyAgICAweDEuMDAwYzE0MDQ2YzI3Y3AtNAorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS45NjY2NGU1MTQ3MDg1N2JhOTI3ZmQ4YzgzZTRhNjY4ZnAtMiwKKyAgICAtMHgxLjAwMGMxNDA0NmMyN2NwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS45NjgxY2Q0ZDU5Y2YzYzQ5ZDA5YTQ0YTZlNWE3MWEwYnAtNCwKKyAgICAweDEuMDA0MDEwMDQwMDBkZXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEuOTY4MWNkNGQ1OWNmM2M0OWQwOWE0NGE2ZTVhNzFhMGJwLTQsCisgICAgLTB4MS4wMDQwMTAwNDAwMGRlcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLjAwMjU0ZmU0ZTA5YTI4MTYxYjE5YTE1MGVkNjc5YzM4cC0zNDAsCisgICAgMHgxLjAwN3AtMTAyMAorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS4wMDI1NGZlNGUwOWEyODE2MWIxOWExNTBlZDY3OWMzOHAtMzQwLAorICAgIC0weDEuMDA3cC0xMDIwCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEuNDJiOTMyM2FiYWZkNzhkMDY2NmYyY2ExZmJkOWY4YjlwLTM0MSwKKyAgICAweDEuMDA3cC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLjQyYjkzMjNhYmFmZDc4ZDA2NjZmMmNhMWZiZDlmOGI5cC0zNDEsCisgICAgLTB4MS4wMDdwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS4wMDVhOGFhMTFmZDk2NjEwZjQ3NWQxM2ViNmY4MjQ3ZnAtMzQwLAorICAgIDB4MS4wMTFwLTEwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIC0weDEuMDA1YThhYTExZmQ5NjYxMGY0NzVkMTNlYjZmODI0N2ZwLTM0MCwKKyAgICAtMHgxLjAxMXAtMTAyMAorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLjk3NmUyMTFiNGE1ZmRhMmYzZDkxMTBmNTkzMTYyOThhcC0xNCwKKyAgICAweDEuMDIwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS45NzZlMjExYjRhNWZkYTJmM2Q5MTEwZjU5MzE2Mjk4YXAtMTQsCisgICAgLTB4MS4wMjBwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuOTdmNGM3MmE0Y2M5MzdjOGVjNTgwOGY3ZTBmMjNmMWRwMzM0LAorICAgIDB4MS4wMzAwMWZjMGViNmYwcDEwMDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIC0weDEuOTdmNGM3MmE0Y2M5MzdjOGVjNTgwOGY3ZTBmMjNmMWRwMzM0LAorICAgIC0weDEuMDMwMDFmYzBlYjZmMHAxMDA0CisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuOTdmNWY4MTYwYjg5MTdjODBkMzhhNmFmMWY2ZjE1MmJwMCwKKyAgICAweDEuMDMwMjY0ODRjMzk5NHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLjk3ZjVmODE2MGI4OTE3YzgwZDM4YTZhZjFmNmYxNTJicDAsCisgICAgLTB4MS4wMzAyNjQ4NGMzOTk0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS40NDZjMWZiZTFhODIxYTg4YjNhMjViODU0OTU1OWQxY3AtODEsCisgICAgMHgxLjA0ODI0MTIwOTA0ODJwLTI0MgorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgLTB4MS40NDZjMWZiZTFhODIxYTg4YjNhMjViODU0OTU1OWQxY3AtODEsCisgICAgLTB4MS4wNDgyNDEyMDkwNDgycC0yNDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS45OTg2NjU3ZmVkZmU0ZmQzNmU1MzNlYmI1OWU5NmVlNnAtMTQsCisgICAgMHgxLjA2MHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIC0weDEuOTk4NjY1N2ZlZGZlNGZkMzZlNTMzZWJiNTllOTZlZTZwLTE0LAorICAgIC0weDEuMDYwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjQ1NDA4OGQxNTAxMGY3ZjM0MzQyMmM3NjFlNjAxZTYxcC0xLAorICAgIDB4MS4wNjgzNDFhMGQwNjgwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAtMHgxLjQ1NDA4OGQxNTAxMGY3ZjM0MzQyMmM3NjFlNjAxZTYxcC0xLAorICAgIC0weDEuMDY4MzQxYTBkMDY4MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLjlhOTJjNjA3Y2ZkNzM3ZTc1MjFiYzdmOTg3NzBiMTcwcDIsCisgICAgMHgxLjA4MDQ2YTNjNzA5ZTNwOAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLTB4MS45YTkyYzYwN2NmZDczN2U3NTIxYmM3Zjk4NzcwYjE3MHAyLAorICAgIC0weDEuMDgwNDZhM2M3MDllM3A4CisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLjlhOTNjZGU3MWJhNTU3ZTYyMTg1MjhjMWNiMGQ2ZTMycC0xLAorICAgIDB4MS4wODA2Njc0OTU4NGRkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS45YTkzY2RlNzFiYTU1N2U2MjE4NTI4YzFjYjBkNmUzMnAtMSwKKyAgICAtMHgxLjA4MDY2NzQ5NTg0ZGRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuOWE5NTI3NzNkMzUwYzdlOTdiNDIyMzU2NGZkNzNiZTdwLTM0NywKKyAgICAweDEuMDgwOTAxZWJhcC0xMDM5CisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgLTB4MS45YTk1Mjc3M2QzNTBjN2U5N2I0MjIzNTY0ZmQ3M2JlN3AtMzQ3LAorICAgIC0weDEuMDgwOTAxZWJhcC0xMDM5CisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjAzMmVlNjNjNTZlM2I1NTYyOGM2NDAwYzc0MmQ5M2VkcDEsCisgICAgMHgxLjA5YWIzOGVkMTg0YmFwMworICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIC0weDEuMDMyZWU2M2M1NmUzYjU1NjI4YzY0MDBjNzQyZDkzZWRwMSwKKyAgICAtMHgxLjA5YWIzOGVkMTg0YmFwMworICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS45Yjk5Njg0NTdjODZhN2Q3ZGJiNTRmNWEwMmZjMDM3YnA0LAorICAgIDB4MS4wYTAwNTY5NjBlMzY4cDE0CisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgLTB4MS45Yjk5Njg0NTdjODZhN2Q3ZGJiNTRmNWEwMmZjMDM3YnA0LAorICAgIC0weDEuMGEwMDU2OTYwZTM2OHAxNAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS45ZTlmMWYyZDA4NTU4ODE2MjRiNjBmNzdjMDQyYjc4ZHAwLAorICAgIDB4MS4wZmU3NzJlOTAzOWY1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAtMHgxLjllOWYxZjJkMDg1NTg4MTYyNGI2MGY3N2MwNDJiNzhkcDAsCisgICAgLTB4MS4wZmU3NzJlOTAzOWY1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuOWVhNzUzY2RlMWJkMDg1NWRmMmVkZjAxNWY3MDdhMDRwMSwKKyAgICAweDEuMGZmNzk3ZWYxYTNjM3A1CisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgLTB4MS45ZWE3NTNjZGUxYmQwODU1ZGYyZWRmMDE1ZjcwN2EwNHAxLAorICAgIC0weDEuMGZmNzk3ZWYxYTNjM3A1CisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLjQ5MWZjMTUyNTc4Y2E3Y2RkODA3OGZkYWZjYjMzMDM2cC0zNTcsCisgICAgMHgxLjFwLTEwNzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLjQ5MWZjMTUyNTc4Y2E3Y2RkODA3OGZkYWZjYjMzMDM2cC0zNTcsCisgICAgLTB4MS4xcC0xMDcwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLjllYWM5ZWZjNmU4OGQ3YzMxMmNhZmJmY2JkOTRiNWI0cDAsCisgICAgMHgxLjEwMDIwMjllMWFhZGRwMgorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIC0weDEuOWVhYzllZmM2ZTg4ZDdjMzEyY2FmYmZjYmQ5NGI1YjRwMCwKKyAgICAtMHgxLjEwMDIwMjllMWFhZGRwMgorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS45ZjE0NDVmNDdiZWI4ODFmZWI4Y2M2ZGE2NDIzZjFmYXAwLAorICAgIDB4MS4xMGNlMmVlMzlmNzFicDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAtMHgxLjlmMTQ0NWY0N2JlYjg4MWZlYjhjYzZkYTY0MjNmMWZhcDAsCisgICAgLTB4MS4xMGNlMmVlMzlmNzFicDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuOWYxNmYxYjM4NDkwOTgyMDM0NjBjNWJmNzk0NmU5ZGRwLTEsCisgICAgMHgxLjEwZDM3MzEyYWY4ZmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAtMHgxLjlmMTZmMWIzODQ5MDk4MjAzNDYwYzViZjc5NDZlOWRkcC0xLAorICAgIC0weDEuMTBkMzczMTJhZjhmYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS45ZjIyYjg5OTE2NjQwODFmNjhmOTlkYjlhMWNjMGI3M3AwLAorICAgIDB4MS4xMGVhYWM4OTJhMjQ1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAtMHgxLjlmMjJiODk5MTY2NDA4MWY2OGY5OWRiOWExY2MwYjczcDAsCisgICAgLTB4MS4xMGVhYWM4OTJhMjQ1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEuOWY0NTg5MjFkNTJhMjgxZmFmZWYyZTIyNWFhYWI2YzZwMCwKKyAgICAweDEuMTEyZjVjMDNlY2VjMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgLTB4MS45ZjQ1ODkyMWQ1MmEyODFmYWZlZjJlMjI1YWFhYjZjNnAwLAorICAgIC0weDEuMTEyZjVjMDNlY2VjMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLjRjNGM5OTFhYzY1MWE4NGUwZmYwNjU2Mjg1OTc3MDQ3cDEsCisgICAgMHgxLjE3ZjJjYWZhYmI0NmFwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIC0weDEuNGM0Yzk5MWFjNjUxYTg0ZTBmZjA2NTYyODU5NzcwNDdwMSwKKyAgICAtMHgxLjE3ZjJjYWZhYmI0NmFwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS5hNDMwZWNmY2Y0NGVlN2RjNGU3MzU3NjI5NDdkM2RjM3AwLAorICAgIDB4MS4xYjAyNjAyYzkwOGJmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAtMHgxLmE0MzBlY2ZjZjQ0ZWU3ZGM0ZTczNTc2Mjk0N2QzZGMzcDAsCisgICAgLTB4MS4xYjAyNjAyYzkwOGJmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuYTZhNTU2Yjk1ZGZmYTgyOGE5YTgxYTkyMWY4N2ZhODVwLTQsCisgICAgMHgxLjFmZmY5MDVjM2FkYmNwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgLTB4MS5hNmE1NTZiOTVkZmZhODI4YTlhODFhOTIxZjg3ZmE4NXAtNCwKKyAgICAtMHgxLjFmZmY5MDVjM2FkYmNwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLmE2YTU4ZDU1ZTMwN2JkZGVkNmYwYzI2NDQ3ZTE0YWZhcC0xNCwKKyAgICAweDEuMnAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLmE2YTU4ZDU1ZTMwN2JkZGVkNmYwYzI2NDQ3ZTE0YWZhcC0xNCwKKyAgICAtMHgxLjJwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLmE3NDFkY2FhODVjNTA3ZjhmNDc2ODcxYTg2YzhmMmZicC0xNCwKKyAgICAweDEuMjE0cC00MAorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEuYTc0MWRjYWE4NWM1MDdmOGY0NzY4NzFhODZjOGYyZmJwLTE0LAorICAgIC0weDEuMjE0cC00MAorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS5hOWI5YTk4Y2ZjMTEzODFkZWZlNjI1M2E5ODkzODc3NXAtNCwKKyAgICAweDEuMjY1NmRkZDBlZjlhOXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMHgxLmE5YjlhOThjZmMxMTM4MWRlZmU2MjUzYTk4OTM4Nzc1cC00LAorICAgIC0weDEuMjY1NmRkZDBlZjlhOXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuYTljZTg2Mjk0MzQxOTgxZmZiZDA0ZjQ2MzM5YjdjYTNwMCwKKyAgICAweDEuMjY4MjI1MjljYjk5N3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS5hOWNlODYyOTQzNDE5ODFmZmJkMDRmNDYzMzliN2NhM3AwLAorICAgIC0weDEuMjY4MjI1MjljYjk5N3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLmFhMzM5MzYxMDExMTgwMGM3NzNlNDkyYmEwM2MwYmMwcC00LAorICAgIDB4MS4yNzU0MDQxZTBiZDU4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuYWEzMzkzNjEwMTExODAwYzc3M2U0OTJiYTAzYzBiYzBwLTQsCisgICAgLTB4MS4yNzU0MDQxZTBiZDU4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5hYTZlYWYxNDk3MTEwODEyNjdkNGQzYmNmYjIxNTc2YXAtMSwKKyAgICAweDEuMjdjZWY0ZDU4ZmEwNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuYWE2ZWFmMTQ5NzExMDgxMjY3ZDRkM2JjZmIyMTU3NmFwLTEsCisgICAgLTB4MS4yN2NlZjRkNThmYTA2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLmFiMDExMWM0ZjY3Njg3ZWFiNDViNDdkYmEzODk5MzQ1cC0xNCwKKyAgICAweDEuMjkwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuYWIwMTExYzRmNjc2ODdlYWI0NWI0N2RiYTM4OTkzNDVwLTE0LAorICAgIC0weDEuMjkwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS5hYjdkMjNmNTllZDkzN2UxMmZhZDcwNzVhYjJhMzRmNXA2NiwKKyAgICAweDEuMmEwMzJmMzYwYjE0MXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAtMHgxLmFiN2QyM2Y1OWVkOTM3ZTEyZmFkNzA3NWFiMmEzNGY1cDY2LAorICAgIC0weDEuMmEwMzJmMzYwYjE0MXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAweDEuMGU3ZmU5MjBmMzFkMzc0NjI3NTAyN2IzMjgyMTcyZWVwLTM0MCwKKyAgICAweDEuMmUwMjVjMDRiODVmY3AtMTAyMAorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEuMGU3ZmU5MjBmMzFkMzc0NjI3NTAyN2IzMjgyMTcyZWVwLTM0MCwKKyAgICAtMHgxLjJlMDI1YzA0Yjg1ZmNwLTEwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuNTVhYWFhYWUzODcyMTdkNTNmYmJhNDIzY2ViYjFhMmVwLTIsCisgICAgMHgxLjMwNGMxMzA0YzEzMDRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLjU1YWFhYWFlMzg3MjE3ZDUzZmJiYTQyM2NlYmIxYTJlcC0yLAorICAgIC0weDEuMzA0YzEzMDRjMTMwNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS5iM2RkNTZhMmIxMzJlN2ZkZjEwMDc0YjA5MjQyODhmMXAzMiwKKyAgICAweDEuM2JkZmVlMzNiMDJmOHA5OAorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEuYjNkZDU2YTJiMTMyZTdmZGYxMDA3NGIwOTI0Mjg4ZjFwMzIsCisgICAgLTB4MS4zYmRmZWUzM2IwMmY4cDk4CisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLmI0MzlkZjNjMjY1OTA4MWRmNmEzMDg1Yzg3N2M3Y2ZmcDAsCisgICAgMHgxLjNjYTk0NmU3MzY4NDVwMgorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuYjQzOWRmM2MyNjU5MDgxZGY2YTMwODVjODc3YzdjZmZwMCwKKyAgICAtMHgxLjNjYTk0NmU3MzY4NDVwMgorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDB4MS4xMzgyOTFlYWJiOTJlZmJhOWZlMGQ5ODQ5YTg5N2FhNXAtMzQwLAorICAgIDB4MS4zZjFhYTRkOTg0MjU2cC0xMDIwCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS4xMzgyOTFlYWJiOTJlZmJhOWZlMGQ5ODQ5YTg5N2FhNXAtMzQwLAorICAgIC0weDEuM2YxYWE0ZDk4NDI1NnAtMTAyMAorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS5iNTY5NWQ0ODUwYmYwMDJmOTNhODk1MTg0MGZkYmRjMXAtMTQsCisgICAgMHgxLjNmNHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLmI1Njk1ZDQ4NTBiZjAwMmY5M2E4OTUxODQwZmRiZGMxcC0xNCwKKyAgICAtMHgxLjNmNHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuMTNjNDg0MTM4NzA0ZTgxMDA2NjA1MjJmZjcxNGQwNjNwLTIsCisgICAgMHgxLjNmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMHgxLjEzYzQ4NDEzODcwNGU4MTAwNjYwNTIyZmY3MTRkMDYzcC0yLAorICAgIC0weDEuM2ZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS5iNjdiYzMwNzVlNDEwN2ZhM2U3MGRlNWQ0ZmE3NWIyMHAwLAorICAgIDB4MS40MTlhNGE0NTk4ZjVhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAtMHgxLmI2N2JjMzA3NWU0MTA3ZmEzZTcwZGU1ZDRmYTc1YjIwcDAsCisgICAgLTB4MS40MTlhNGE0NTk4ZjVhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuYjk0YTg2N2Q3ZDM3MzA0YmYzNTE4MDM2MGM4ZjI2YmFwLTExLAorICAgIDB4MS40N2QxZjQ3ZDFmNDcxcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuYjk0YTg2N2Q3ZDM3MzA0YmYzNTE4MDM2MGM4ZjI2YmFwLTExLAorICAgIC0weDEuNDdkMWY0N2QxZjQ3MXAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEuYmE2OTQwZjk0OWE1ZjgwMmNiNTFjN2M4MzhjNzMwOGRwLTIsCisgICAgMHgxLjRhNTI5NGE1Mjk0YTVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLmJhNjk0MGY5NDlhNWY4MDJjYjUxYzdjODM4YzczMDhkcC0yLAorICAgIC0weDEuNGE1Mjk0YTUyOTRhNXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIDB4MS4xNzY1ODYyNDkxYjU3N2ZmZmY2NzRmYWM1MmVlNDI4ZXAwLAorICAgIDB4MS40Y2NjY2NjZjZjYzg5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLjE3NjU4NjI0OTFiNTc3ZmZmZjY3NGZhYzUyZWU0MjhlcDAsCisgICAgLTB4MS40Y2NjY2NjZjZjYzg5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuMTc2NTg2MjRiM2I2YTdmZmZmNjczNjllZDcyNGI5MGFwMCwKKyAgICAweDEuNGNjY2NjY2ZlNjRiZHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS4xNzY1ODYyNGIzYjZhN2ZmZmY2NzM2OWVkNzI0YjkwYXAwLAorICAgIC0weDEuNGNjY2NjY2ZlNjRiZHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLjE3NjU4NjJjYTllZTc4MDAwMDk3MzA2YjEzZTBhZDlicDAsCisgICAgMHgxLjRjY2NjY2VjNTliMjFwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEuMTc2NTg2MmNhOWVlNzgwMDAwOTczMDZiMTNlMGFkOWJwMCwKKyAgICAtMHgxLjRjY2NjY2VjNTliMjFwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS5jMDRkMTM3NmMzN2U0ODE3ZTE4MzE1YmQ2YTllODVlM3AtOCwKKyAgICAweDEuNTdiMTI3MmJiODQ0MXAtMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLmMwNGQxMzc2YzM3ZTQ4MTdlMTgzMTViZDZhOWU4NWUzcC04LAorICAgIC0weDEuNTdiMTI3MmJiODQ0MXAtMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuYzA2ZWJiYTI2Y2NkNTAwYTBkZTA5Yjc5Y2M2NDBmM2RwLTEsCisgICAgMHgxLjU3ZmU5NWRiZDdkMjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAtMHgxLmMwNmViYmEyNmNjZDUwMGEwZGUwOWI3OWNjNjQwZjNkcC0xLAorICAgIC0weDEuNTdmZTk1ZGJkN2QyOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS5jMGUyOWUzYjRhOWU4N2Y0M2M0ZWI5ZDEzZGUyM2FlZnAwLAorICAgIDB4MS41OTA5OGFlOTA0MDg0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLmMwZTI5ZTNiNGE5ZTg3ZjQzYzRlYjlkMTNkZTIzYWVmcDAsCisgICAgLTB4MS41OTA5OGFlOTA0MDg0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuYzNkYjA3ZTFhMTRhYzgzODQxMjUzMjAzMGQ0ZDRkNzhwMCwKKyAgICAweDEuNWZlZWE3NDMwM2QzOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgLTB4MS5jM2RiMDdlMWExNGFjODM4NDEyNTMyMDMwZDRkNGQ3OHAwLAorICAgIC0weDEuNWZlZWE3NDMwM2QzOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLjZkNzNhYjdkZjRlNDdiMDc1ODJhM2VhMDA5MjE0NDI4cC0xNCwKKyAgICAweDEuNzQ2cC00MQorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuNmQ3M2FiN2RmNGU0N2IwNzU4MmEzZWEwMDkyMTQ0MjhwLTE0LAorICAgIC0weDEuNzQ2cC00MQorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS4yMjYyMmRkMTVlZDg5YTlmOTIyYzQyYTFiMTI4OTc2OXAtMiwKKyAgICAweDEuNzVhcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTB4MS4yMjYyMmRkMTVlZDg5YTlmOTIyYzQyYTFiMTI4OTc2OXAtMiwKKyAgICAtMHgxLjc1YXAtNgorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS5jZDg1MTViNTZjZWIzZjQxNTYxZWRjNzZjOWJmMDFiMHAtMTQsCisgICAgMHgxLjc3MHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLmNkODUxNWI1NmNlYjNmNDE1NjFlZGM3NmM5YmYwMWIwcC0xNCwKKyAgICAtMHgxLjc3MHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuZDQ0OWI2ZGJiYzQ1OTgxMmJkZDIxZjc3Y2NkZmQwNDVwLTQsCisgICAgMHgxLjg3YmRiMTdlZDNkMWZwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgLTB4MS5kNDQ5YjZkYmJjNDU5ODEyYmRkMjFmNzdjY2RmZDA0NXAtNCwKKyAgICAtMHgxLjg3YmRiMTdlZDNkMWZwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLjI4MGEzNmNmNjM3OWVhOGZkZmFmYzg5Y2M5ZDc3MDkxcC03LAorICAgIDB4MS44YmUyZjhiZTJmOGIxcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuMjgwYTM2Y2Y2Mzc5ZWE4ZmRmYWZjODljYzlkNzcwOTFwLTcsCisgICAgLTB4MS44YmUyZjhiZTJmOGIxcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS43NTQ2MDYzOWY4NzFiN2ZmZmY2NzliYjk0OGQxZTU4NXAwLAorICAgIDB4MS44Y2NjY2NkNDE5MjhhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAtMHgxLjc1NDYwNjM5Zjg3MWI3ZmZmZjY3OWJiOTQ4ZDFlNTg1cDAsCisgICAgLTB4MS44Y2NjY2NkNDE5MjhhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuZDdiZDAwODA4ZjgzMzdkOWE1OWJhNzhmN2YxZDY3OTBwLTEsCisgICAgMHgxLjkwNzZjNzc1YjUyNzNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLmQ3YmQwMDgwOGY4MzM3ZDlhNTliYTc4ZjdmMWQ2NzkwcC0xLAorICAgIC0weDEuOTA3NmM3NzViNTI3M3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5kN2U2NGRjODBmNzA5N2YxMTI5OTk4ZDRkYTIwOTAzMXAtMTQsCisgICAgMHgxLjkwZXAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMHgxLmQ3ZTY0ZGM4MGY3MDk3ZjExMjk5OThkNGRhMjA5MDMxcC0xNCwKKyAgICAtMHgxLjkwZXAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuZGE3YzJhYjA0Zjg4ZDdlOTllY2JmZWNmMWE1MjRiY2JwLTE0LAorICAgIDB4MS45NzhwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTB4MS5kYTdjMmFiMDRmODhkN2U5OWVjYmZlY2YxYTUyNGJjYnAtMTQsCisgICAgLTB4MS45NzhwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLmRhZDQ5ZDI0MDljMzZmZjJkNGM5Yjk5NGExNTQ3Zjc5cC00LAorICAgIDB4MS45ODY0MGM0MWVjMzc4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIC0weDEuZGFkNDlkMjQwOWMzNmZmMmQ0YzliOTk0YTE1NDdmNzlwLTQsCisgICAgLTB4MS45ODY0MGM0MWVjMzc4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS43OWVhZmEwM2NkMGM5YjcwNTRjZjUxODRmMzQzMjE4OHAtMSwKKyAgICAweDEuOWJjYmQ2ZDIwNDIzNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuNzllYWZhMDNjZDBjOWI3MDU0Y2Y1MTg0ZjM0MzIxODhwLTEsCisgICAgLTB4MS45YmNiZDZkMjA0MjM0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLjdhNDE5NzAzNjVlZWJmZmU4NDc3OWQzNmU1YjU1ZmY5cC00LAorICAgIDB4MS45Y2U3MzljZTczOWMxcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0weDEuN2E0MTk3MDM2NWVlYmZmZTg0Nzc5ZDM2ZTViNTVmZjlwLTQsCisgICAgLTB4MS45Y2U3MzljZTczOWMxcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS5kZDE4MmY5ZWNjZDMzODE1NGRmNTJjODA2OGQyMWM1OHAtNCwKKyAgICAweDEuOWU0MjllOTJiMDFhYXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAtMHgxLmRkMTgyZjllY2NkMzM4MTU0ZGY1MmM4MDY4ZDIxYzU4cC00LAorICAgIC0weDEuOWU0MjllOTJiMDFhYXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuN2IxODRjOTllYWZkOTgwODAwMzlmMTljZGFiYTk1NjZwLTIsCisgICAgMHgxLjlmYTdlOWZhN2U5ZjhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLjdiMTg0Yzk5ZWFmZDk4MDgwMDM5ZjE5Y2RhYmE5NTY2cC0yLAorICAgIC0weDEuOWZhN2U5ZmE3ZTlmOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDB4MS4yY2Y4ODhmOGRiMDJlODBjZjc4YTMyZDYwZGI5MzEwZXAtMSwKKyAgICAweDEuYXAtMworICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuMmNmODg4ZjhkYjAyZTgwY2Y3OGEzMmQ2MGRiOTMxMGVwLTEsCisgICAgLTB4MS5hcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLjdkOWQ2NjgwNTRhZjcwYWIzMDhmNGNjZTRmMDZkYTE4cC0xMiwKKyAgICAweDEuYTgwcC0zNQorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuN2Q5ZDY2ODA1NGFmNzBhYjMwOGY0Y2NlNGYwNmRhMThwLTEyLAorICAgIC0weDEuYTgwcC0zNQorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDB4MS43Zjg2N2NhNWJmN2ZkODAwMDA5NWQ3MDA2NTljNDE5YnAxLAorICAgIDB4MS5hZTY2NjY2N2VmMjE1cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAtMHgxLjdmODY3Y2E1YmY3ZmQ4MDAwMDk1ZDcwMDY1OWM0MTlicDEsCisgICAgLTB4MS5hZTY2NjY2N2VmMjE1cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuZTNjZTQ0YTFhOTFjYjAwZDgwM2QzN2Y5NTc4MTRjZDBwLTEsCisgICAgMHgxLmFmZmQ0YWQ4MWQ2NzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLmUzY2U0NGExYTkxY2IwMGQ4MDNkMzdmOTU3ODE0Y2QwcC0xLAorICAgIC0weDEuYWZmZDRhZDgxZDY3MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS44MDc5MzZhNDhhMGY0N2ZmZmY4ZjE1ZDdmNzQzMzk3MnAxLAorICAgIDB4MS5iMTk5OTk5YjdiOTVjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAtMHgxLjgwNzkzNmE0OGEwZjQ3ZmZmZjhmMTVkN2Y3NDMzOTcycDEsCisgICAgLTB4MS5iMTk5OTk5YjdiOTVjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuZTU5MzkxZjIzNDAwZTAwMDg0ZGNhODAzMzhhODYyNjdwLTE0LAorICAgIDB4MS5iNGNwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS5lNTkzOTFmMjM0MDBlMDAwODRkY2E4MDMzOGE4NjI2N3AtMTQsCisgICAgLTB4MS5iNGNwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLjMyZTRkMjU0ZTBkYzI1NTIyMTMyM2E1YzA2ODM4YTFhcDAsCisgICAgMHgxLmI5MGJmMzYwNDA4YjZwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIC0weDEuMzJlNGQyNTRlMGRjMjU1MjIxMzIzYTVjMDY4MzhhMWFwMCwKKyAgICAtMHgxLmI5MGJmMzYwNDA4YjZwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS5lODZjOWY3ZjQzMDY2ZjU1MjQxNzkwNGFhNjE1YjlhMHAzLAorICAgIDB4MS5iYzdhY2FkOGRkNWFjcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgLTB4MS5lODZjOWY3ZjQzMDY2ZjU1MjQxNzkwNGFhNjE1YjlhMHAzLAorICAgIC0weDEuYmM3YWNhZDhkZDVhY3AxMQorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5lOWI1ZGJhNTgxODlkYmJjYTBhNmQ3NmU4NzBlYmI1OXAtMzQ4LAorICAgIDB4MS5jcC0xMDQyCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgLTB4MS5lOWI1ZGJhNTgxODlkYmJjYTBhNmQ3NmU4NzBlYmI1OXAtMzQ4LAorICAgIC0weDEuY3AtMTA0MgorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS5lYWM3ODg1N2JmNTBhZmZmNWY5M2RkMTM0NTcyNDE2ZHAtMTEsCisgICAgMHgxLmMyZjBiYzJmMGJjMjFwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgLTB4MS5lYWM3ODg1N2JmNTBhZmZmNWY5M2RkMTM0NTcyNDE2ZHAtMTEsCisgICAgLTB4MS5jMmYwYmMyZjBiYzIxcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS5lYzA1YjUzMmRmYTVjNjJiZWU0MjM4MThhYmUyYmVlMXAtMTQsCisgICAgMHgxLmM2NnAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAtMHgxLmVjMDViNTMyZGZhNWM2MmJlZTQyMzgxOGFiZTJiZWUxcC0xNCwKKyAgICAtMHgxLmM2NnAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuZWU2YTk5ODY0ZGZmZjdmOWZhNGQyYWQ3NDI0ZWFhMTZwMCwKKyAgICAweDEuY2QwYTQzYTJlZWI1OHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgLTB4MS5lZTZhOTk4NjRkZmZmN2Y5ZmE0ZDJhZDc0MjRlYWExNnAwLAorICAgIC0weDEuY2QwYTQzYTJlZWI1OHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLjM5NDMyMDk3NTViM2Q1NTZiYmRmN2I3MTNkYjkzOWNicDAsCisgICAgMHgxLmQ1MTNiNGI2ZDIyNGRwMAorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEuMzk0MzIwOTc1NWIzZDU1NmJiZGY3YjcxM2RiOTM5Y2JwMCwKKyAgICAtMHgxLmQ1MTNiNGI2ZDIyNGRwMAorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS4zOTZiZGM2MGJkYjQxZjAxNzIyYTI3ZTI5MTEyMmEwMnAwLAorICAgIDB4MS5kNWNhYzgwNzU3MTc4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAtMHgxLjM5NmJkYzYwYmRiNDFmMDE3MjJhMjdlMjkxMTIyYTAycDAsCisgICAgLTB4MS5kNWNhYzgwNzU3MTc4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuOGFlMmQ5OWM2N2IyMWQ0YTEwN2NkNzE4MGNiNjA0N2NwMCwKKyAgICAweDEuZDVjYWM4MDc1NzIzNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS44YWUyZDk5YzY3YjIxZDRhMTA3Y2Q3MTgwY2I2MDQ3Y3AwLAorICAgIC0weDEuZDVjYWM4MDc1NzIzNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLjhhZTJkOTljNjdiM2IwYzE3N2YzYjRkMDIwMDE5ZGIzcDAsCisgICAgMHgxLmQ1Y2FjODA3NTcyOGVwMQorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEuOGFlMmQ5OWM2N2IzYjBjMTc3ZjNiNGQwMjAwMTlkYjNwMCwKKyAgICAtMHgxLmQ1Y2FjODA3NTcyOGVwMQorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS5mNTFhNjIwMzdlOTU1NWRmMjI0YTA5ZTg0MzE2MDVlY3AtMzQ4LAorICAgIDB4MS5lcC0xMDQyCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS5mNTFhNjIwMzdlOTU1NWRmMjI0YTA5ZTg0MzE2MDVlY3AtMzQ4LAorICAgIC0weDEuZXAtMTA0MgorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDB4MS44ZjFhYTY2NDY5NzY0ODAwNTA0MGNhMDU5ZGVjMmFhN3AxLAorICAgIDB4MS5lNTAxZjk5MTRiNDk3cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAtMHgxLjhmMWFhNjY0Njk3NjQ4MDA1MDQwY2EwNTlkZWMyYWE3cDEsCisgICAgLTB4MS5lNTAxZjk5MTRiNDk3cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEuOTFkMzg5NjgwZDI1MjU3OGM3MWJkOTY5ZTllNWRmN2NwLTEyLAorICAgIDB4MS5lZjBwLTM1CisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgLTB4MS45MWQzODk2ODBkMjUyNTc4YzcxYmQ5NjllOWU1ZGY3Y3AtMTIsCisgICAgLTB4MS5lZjBwLTM1CisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgMHgxLmZhOWMzMTM4NTg1Njc1YjYzM2FjNTE5YmJlN2ViNmNhcC0xLAorICAgIDB4MS5mcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgLTB4MS5mYTljMzEzODU4NTY3NWI2MzNhYzUxOWJiZTdlYjZjYXAtMSwKKyAgICAtMHgxLmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuOTJhMjA3NzFmZjExMjU4NGE0NzkwMzg5MTk2NTY1ZDFwMCwKKyAgICAweDEuZjFmY2E2YzU4M2MzMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgLTB4MS45MmEyMDc3MWZmMTEyNTg0YTQ3OTAzODkxOTY1NjVkMXAwLAorICAgIC0weDEuZjFmY2E2YzU4M2MzMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMHgxLmZkN2NkOTZjZTE2NDM3ZmRhZTFkNGJmYjc4N2I0MjZmcC0xNCwKKyAgICAweDEuZjg4cC00MAorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIC0weDEuZmQ3Y2Q5NmNlMTY0MzdmZGFlMWQ0YmZiNzg3YjQyNmZwLTE0LAorICAgIC0weDEuZjg4cC00MAorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS5mZTljODk1YmIzMTg2ODFkMGI1NDA4ZDk2ZDFiZWFlNXAtMSwKKyAgICAweDEuZmJkODdmYzMyN2EyZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIC0weDEuZmU5Yzg5NWJiMzE4NjgxZDBiNTQwOGQ5NmQxYmVhZTVwLTEsCisgICAgLTB4MS5mYmQ4N2ZjMzI3YTJkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLmZlYjI3MWRlYjk1MWY4MjAwMDRlOTkzNGJiYmY3ZTQzcC0xLAorICAgIDB4MS5mYzE5ZTBmNzM0ZWUxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgLTB4MS5mZWIyNzFkZWI5NTFmODIwMDA0ZTk5MzRiYmJmN2U0M3AtMSwKKyAgICAtMHgxLmZjMTllMGY3MzRlZTFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuOTU4MzU0MGQ4ZmRhZTA2OGY4YzlkZGI2Y2VhYjBjMzdwLTE0LAorICAgIDB4MS5mY2NwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgLTB4MS45NTgzNTQwZDhmZGFlMDY4ZjhjOWRkYjZjZWFiMGMzN3AtMTQsCisgICAgLTB4MS5mY2NwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgMHgxLmZlZWU1Y2NhM2M0M2JmZjYxODJhYmQ2ZWE4M2E2MTI1cC0xLAorICAgIDB4MS5mY2NjY2NjY2NjY2NkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgLTB4MS5mZWVlNWNjYTNjNDNiZmY2MTgyYWJkNmVhODNhNjEyNXAtMSwKKyAgICAtMHgxLmZjY2NjY2NjY2NjY2RwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuOTYxNDNlMTE3OGI2YTAyZTAxODk5ZTEyOTZlOTE3NTlwLTIsCisgICAgMHgxLmZlZTIyZWIyOTRkMWNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAtMHgxLjk2MTQzZTExNzhiNmEwMmUwMTg5OWUxMjk2ZTkxNzU5cC0yLAorICAgIC0weDEuZmVlMjJlYjI5NGQxY3AtNQorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS5mZmE1NDU0MjVkYWQ1ODAzYTRjNTkyNTc0OGNjZTJhMHAtMzQxLAorICAgIDB4MS5mZWVmZmZmZmZmZmZmcC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgLTB4MS5mZmE1NDU0MjVkYWQ1ODAzYTRjNTkyNTc0OGNjZTJhMHAtMzQxLAorICAgIC0weDEuZmVlZmZmZmZmZmZmZnAtMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS5mZmI0OWY5MjYzY2ZhODE0ZDhiYTc3ZWJiYjk3NDY3OHAtNCwKKyAgICAweDEuZmYxZTAwMDAwMDA3MHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAtMHgxLmZmYjQ5ZjkyNjNjZmE4MTRkOGJhNzdlYmJiOTc0Njc4cC00LAorICAgIC0weDEuZmYxZTAwMDAwMDA3MHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuZmZjNWIzMjAzZWE5MjgyZTRhMTBhY2UzOTYzZTFmYmJwMSwKKyAgICAweDEuZmY1MTJkNGE1ZDJkY3A1CisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgLTB4MS5mZmM1YjMyMDNlYTkyODJlNGExMGFjZTM5NjNlMWZiYnAxLAorICAgIC0weDEuZmY1MTJkNGE1ZDJkY3A1CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLjk2NTIwNzMxNWRjNDkwMmJkMDc2ZmNmNDA4YTcwOTAycC0xLAorICAgIDB4MS5mZmNiODQzYTBhNmNicC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgLTB4MS45NjUyMDczMTVkYzQ5MDJiZDA3NmZjZjQwOGE3MDkwMnAtMSwKKyAgICAtMHgxLmZmY2I4NDNhMGE2Y2JwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuOTY1MzE2OTgyNTgwNTAyYmI4M2M1OGNkYWViM2EzNjlwMCwKKyAgICAweDEuZmZjZjg1Y2JmMTE3NnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgLTB4MS45NjUzMTY5ODI1ODA1MDJiYjgzYzU4Y2RhZWIzYTM2OXAwLAorICAgIC0weDEuZmZjZjg1Y2JmMTE3NnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLjQyODAxYWY2YjNhMmE2MWZmNWZhNzFkMGE2ODQ1YTlicC0zNDAsCisgICAgMHgxLmZmY2ZmZmZmZmZmZmZwLTEwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAtMHgxLjQyODAxYWY2YjNhMmE2MWZmNWZhNzFkMGE2ODQ1YTlicC0zNDAsCisgICAgLTB4MS5mZmNmZmZmZmZmZmZmcC0xMDIwCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLjk2NWZlYTEwMWMzY2FhYWM2ZWFiMjkyYWE1NzY5YmNhcC0xNCwKKyAgICAweDEuZmZmZmZlZmZmZmZmZnAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAtMHgxLjk2NWZlYTEwMWMzY2FhYWM2ZWFiMjkyYWE1NzY5YmNhcC0xNCwKKyAgICAtMHgxLmZmZmZmZWZmZmZmZmZwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLmZmZmZmZmY1NTU1NTRmYzcxYzcxOGMzZjM1YTkzMzlmcC0xNCwKKyAgICAweDEuZmZmZmZmZGZmZmZmZnAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAtMHgxLmZmZmZmZmY1NTU1NTRmYzcxYzcxOGMzZjM1YTkzMzlmcC0xNCwKKyAgICAtMHgxLmZmZmZmZmRmZmZmZmZwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLjk2NWZlYTRkN2Q2NDFhODY5OTlhZDJiMWIzODE5MmQzcC0xNCwKKyAgICAweDEuZmZmZmZmZTdmZmZmZnAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAtMHgxLjk2NWZlYTRkN2Q2NDFhODY5OTlhZDJiMWIzODE5MmQzcC0xNCwKKyAgICAtMHgxLmZmZmZmZmU3ZmZmZmZwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLjk2NWZlYTRkN2Q2NDFhODY5OTlhZDJiMWIzODE5MmQzcDAsCisgICAgMHgxLmZmZmZmZmU3ZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIC0weDEuOTY1ZmVhNGQ3ZDY0MWE4Njk5OWFkMmIxYjM4MTkyZDNwMCwKKyAgICAtMHgxLmZmZmZmZmU3ZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS45NjVmZWE0ZDdkNjQxYTg2OTk5YWQyYjFiMzgxOTJkM3AxMywKKyAgICAweDEuZmZmZmZmZTdmZmZmZnA0MAorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIC0weDEuOTY1ZmVhNGQ3ZDY0MWE4Njk5OWFkMmIxYjM4MTkyZDNwMTMsCisgICAgLTB4MS5mZmZmZmZlN2ZmZmZmcDQwCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLmZmZmZmZmZkNTU1NTRmZmM3MWM3MGUzMGZjYzg4MTdmcC0xNCwKKyAgICAweDEuZmZmZmZmZjdmZmZmZnAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAtMHgxLmZmZmZmZmZkNTU1NTRmZmM3MWM3MGUzMGZjYzg4MTdmcC0xNCwKKyAgICAtMHgxLmZmZmZmZmY3ZmZmZmZwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgMHgxLmZmZmZmZmZmZmZmMzRmZmZmZmZmZmZhZjgzN2ZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZDlmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgLTB4MS5mZmZmZmZmZmZmZjM0ZmZmZmZmZmZmYWY4MzdmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZkOWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuZmZmZmZmZmZmZmY5ZmZmZmZmZmZmZmVkZmZmZmZmZmZwLTM0MSwKKyAgICAweDEuZmZmZmZmZmZmZmVlMHAtMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuZmZmZmZmZmZmZmY5ZmZmZmZmZmZmZmVkZmZmZmZmZmZwLTM0MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZlZTBwLTEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuZmZmZmZmZmZmZmZmOWZmZmZmZmZmZmZmZWRmZmZmZmZwLTM0MSwKKyAgICAweDEuZmZmZmZmZmZmZmZlZXAtMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIC0weDEuZmZmZmZmZmZmZmZmOWZmZmZmZmZmZmZmZWRmZmZmZmZwLTM0MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZWVwLTEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEuOTY1ZmVhNTNkNmUzODAzNGI0MWFjMWZiZGFlOWEyMmZwLTE0LAorICAgIDB4MS5mZmZmZmZmZmZmZmVmcC00MQorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIC0weDEuOTY1ZmVhNTNkNmUzODAzNGI0MWFjMWZiZGFlOWEyMmZwLTE0LAorICAgIC0weDEuZmZmZmZmZmZmZmZlZnAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEuOTY1ZmVhNTNkNmUzODAzNGI0MWFjMWZiZGFlOWEyMmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZlZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgLTB4MS45NjVmZWE1M2Q2ZTM4MDM0YjQxYWMxZmJkYWU5YTIyZnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZlZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLjk2NWZlYTUzZDZlMzgwMzRiNDFhYzFmYmRhZTlhMjJmcDEzLAorICAgIDB4MS5mZmZmZmZmZmZmZmVmcDQwCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgLTB4MS45NjVmZWE1M2Q2ZTM4MDM0YjQxYWMxZmJkYWU5YTIyZnAxMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZWZwNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZWFhYWFhYWFhYWFhYTljNzFjNzFwLTE0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC00MAorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZWFhYWFhYWFhYWFhYTljNzFjNzFwLTE0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuZmZmZmZmZmZmZmZmZWFhYWFhYWFhYWFhYTljNzFjNzFwLTM0MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZWFhYWFhYWFhYWFhYTljNzFjNzFwLTM0MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuNDI4YTJmOThkNzI4YTc2YTA3ODc4N2VmOGZiNWQ1NGJwLTM0MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMAorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIC0weDEuNDI4YTJmOThkNzI4YTc2YTA3ODc4N2VmOGZiNWQ1NGJwLTM0MCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuOTY1ZmVhNTNkNmUzYmZiM2IwYjdkYjhmN2VjMTdkMGZwLTM0MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIC0weDEuOTY1ZmVhNTNkNmUzYmZiM2IwYjdkYjhmN2VjMTdkMGZwLTM0MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEucDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuMGNlOWQ1NzNmNDNiNDQyOWI4OWVjNTc5NDVlNWQ0MzRwMCwKKyAgICAweDEuMjhiYTJlOGJhMmU4Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgLTB4MS4wY2U5ZDU3M2Y0M2I0NDI5Yjg5ZWM1Nzk0NWU1ZDQzNHAwLAorICAgIC0weDEuMjhiYTJlOGJhMmU4Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMHgxLjE4YjE2ZjA4NjI4OGQ2ZjAwY2U1YzU3ODBmY2I4NmYwcDAsCisgICAgMHgxLjUxNzQ1ZDE3NDVkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIC0weDEuMThiMTZmMDg2Mjg4ZDZmMDBjZTVjNTc4MGZjYjg2ZjBwMCwKKyAgICAtMHgxLjUxNzQ1ZDE3NDVkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDB4MS4yMzhmMmM4NDc3YWRjMDQ5YjUxNWM3Zjc4ZjNhZTQyMnAwLAorICAgIDB4MS43YTJlOGJhMmU4YmE0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAtMHgxLjIzOGYyYzg0NzdhZGMwNDliNTE1YzdmNzhmM2FlNDIycDAsCisgICAgLTB4MS43YTJlOGJhMmU4YmE0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuMmRhYmI3ZTQ5ZTM5ZmYyYTEwZGVkZGMzM2JjODFmY2NwMCwKKyAgICAweDEuYTJlOGJhMmU4YmEzMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgLTB4MS4yZGFiYjdlNDllMzlmZjJhMTBkZWRkYzMzYmM4MWZjY3AwLAorICAgIC0weDEuYTJlOGJhMmU4YmEzMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLjM3MjU3OWZkMDhiZjNmNzQwZDQyNWUxMjVhMTM1MmZmcDAsCisgICAgMHgxLmNiYTJlOGJhMmU4YmNwMAorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIC0weDEuMzcyNTc5ZmQwOGJmM2Y3NDBkNDI1ZTEyNWExMzUyZmZwMCwKKyAgICAtMHgxLmNiYTJlOGJhMmU4YmNwMAorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS40MDEzZGFjNWRhMmE3MDNlMWM3N2NhNDcyMWFjZWUxY3AwLAorICAgIDB4MS5mNDVkMTc0NWQxNzQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAtMHgxLjQwMTNkYWM1ZGEyYTcwM2UxYzc3Y2E0NzIxYWNlZTFjcDAsCisgICAgLTB4MS5mNDVkMTc0NWQxNzQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuNDg4OTRjNTJiMzQ0NWY2Zjg0MDEyZjQwNWRlMzJmYTJwMCwKKyAgICAweDEuMGU4YmEyZThiYTJlYXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgLTB4MS40ODg5NGM1MmIzNDQ1ZjZmODQwMTJmNDA1ZGUzMmZhMnAwLAorICAgIC0weDEuMGU4YmEyZThiYTJlYXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgMHgxLjUwOTRhMWQ2ZTZiNjM5MjI5Y2RiMzgxMGI0MTBjZDVjcDAsCisgICAgMHgxLjIyZThiYTJlOGJhMzBwMQorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIC0weDEuNTA5NGExZDZlNmI2MzkyMjljZGIzODEwYjQxMGNkNWNwMCwKKyAgICAtMHgxLjIyZThiYTJlOGJhMzBwMQorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIDB4MS41ODQxZjhjNjFmZDU4YzhkYWQwNGZkZWMzY2YwYWY3M3AwLAorICAgIDB4MS4zNzQ1ZDE3NDVkMTc2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAtMHgxLjU4NDFmOGM2MWZkNThjOGRhZDA0ZmRlYzNjZjBhZjczcDAsCisgICAgLTB4MS4zNzQ1ZDE3NDVkMTc2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEuNWY5YjVjMTY5MTBhZTY5ZWQwNmQzZTYyMWEwOWYxODRwMCwKKyAgICAweDEuNGJhMmU4YmEyZThiY3AxCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgLTB4MS41ZjliNWMxNjkxMGFlNjllZDA2ZDNlNjIxYTA5ZjE4NHAwLAorICAgIC0weDEuNGJhMmU4YmEyZThiY3AxCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgMHgxLjY2YTkzOThiYTJhM2E2OThjMDUxZGYxMDlmNzcwZTg4cDAsCisgICAgMHgxLjYwMDAwMDAwMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIC0weDEuNjZhOTM5OGJhMmEzYTY5OGMwNTFkZjEwOWY3NzBlODhwMCwKKyAgICAtMHgxLjYwMDAwMDAwMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS42ZDcyYjdkY2M3NjcyY2ZjZWYxMDkzOTM2ZTJhZmU3OXAwLAorICAgIDB4MS43NDVkMTc0NWQxNzQ4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAtMHgxLjZkNzJiN2RjYzc2NzJjZmNlZjEwOTM5MzZlMmFmZTc5cDAsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuNzNmZGY3MzhlNTVlMTQ3MzZjODBiZDUxYjc4MTJmMzBwMCwKKyAgICAweDEuODhiYTJlOGJhMmU4ZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgLTB4MS43M2ZkZjczOGU1NWUxNDczNmM4MGJkNTFiNzgxMmYzMHAwLAorICAgIC0weDEuODhiYTJlOGJhMmU4ZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLjdhNTA0MjY5ZjNmOGVhYWNmZTY5ODg5OWQ3MmQ1NjI0cDAsCisgICAgMHgxLjlkMTc0NWQxNzQ1ZDRwMQorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIC0weDEuN2E1MDQyNjlmM2Y4ZWFhY2ZlNjk4ODk5ZDcyZDU2MjRwMCwKKyAgICAtMHgxLjlkMTc0NWQxNzQ1ZDRwMQorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDB4MS44MDZlMzRkNGFmNTcxYThlYzA0ODU4ZTkyOTZlNmYzYnAwLAorICAgIDB4MS5iMTc0NWQxNzQ1ZDFhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAtMHgxLjgwNmUzNGQ0YWY1NzFhOGVjMDQ4NThlOTI5NmU2ZjNicDAsCisgICAgLTB4MS5iMTc0NWQxNzQ1ZDFhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuODY1YmQ4NDE0OTMwODVlNzgxMDNkZWJlN2MxZjkzYzhwMCwKKyAgICAweDEuYzVkMTc0NWQxNzQ2MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgLTB4MS44NjViZDg0MTQ5MzA4NWU3ODEwM2RlYmU3YzFmOTNjOHAwLAorICAgIC0weDEuYzVkMTc0NWQxNzQ2MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMHgxLjhjMWNiYzdjZDRlNTVlODg2Y2I0YTk0ZjYzOTQxYjQ0cDAsCisgICAgMHgxLmRhMmU4YmEyZThiYTZwMQorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIC0weDEuOGMxY2JjN2NkNGU1NWU4ODZjYjRhOTRmNjM5NDFiNDRwMCwKKyAgICAtMHgxLmRhMmU4YmEyZThiYTZwMQorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS45MWI0MGE0ZGYyMTEzMmM0NjdkODY1NTM4MDc2MDBjZHAwLAorICAgIDB4MS5lZThiYTJlOGJhMmVjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAtMHgxLjkxYjQwYTRkZjIxMTMyYzQ2N2Q4NjU1MzgwNzYwMGNkcDAsCisgICAgLTB4MS5lZThiYTJlOGJhMmVjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuOTcyNDkyZDA4ZTJjOTlkOTA0YjgzYmQ4ZDhiNWI3YjdwMCwKKyAgICAweDEuMDE3NDVkMTc0NWQxOXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzQ1CisgICAgLTB4MS45NzI0OTJkMDhlMmM5OWQ5MDRiODNiZDhkOGI1YjdiN3AwLAorICAgIC0weDEuMDE3NDVkMTc0NWQxOXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMHgxLjljNzBkYzA0YjIwNmVjNmI4NThmYmVkOTU4NjViZGEwcDAsCisgICAgMHgxLjBiYTJlOGJhMmU4YmNwMgorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIC0weDEuOWM3MGRjMDRiMjA2ZWM2Yjg1OGZiZWQ5NTg2NWJkYTBwMCwKKyAgICAtMHgxLjBiYTJlOGJhMmU4YmNwMgorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDB4MS5hMTliMmIyOTI5MzA2ZTQxOGJjODVjYTE0YjQ3MTE1OXAwLAorICAgIDB4MS4xNWQxNzQ1ZDE3NDVmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAtMHgxLmExOWIyYjI5MjkzMDZlNDE4YmM4NWNhMTRiNDcxMTU5cDAsCisgICAgLTB4MS4xNWQxNzQ1ZDE3NDVmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAweDEuYTZhNThkNTVlMzA3Y2Q4NjI4MDZlNzNlYTNhYTc1ZGNwMCwKKyAgICAweDEuMjAwMDAwMDAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgLTB4MS5hNmE1OGQ1NWUzMDdjZDg2MjgwNmU3M2VhM2FhNzVkY3AwLAorICAgIC0weDEuMjAwMDAwMDAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLmFiOTFkZWFlZTZlNzM5OGE0ZGI4ZDkwOGUxZDIwYjQycDAsCisgICAgMHgxLjJhMmU4YmEyZThiYTVwMgorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIC0weDEuYWI5MWRlYWVlNmU3Mzk4YTRkYjhkOTA4ZTFkMjBiNDJwMCwKKyAgICAtMHgxLjJhMmU4YmEyZThiYTVwMgorICB9LAorICB7IC8vIEVudHJ5IDM1NAorICAgIDB4MS5iMDYxZDA3NGFmYjg4MDkzOThmYzg5MDI2ZmQ3NWE4NXAwLAorICAgIDB4MS4zNDVkMTc0NWQxNzQ4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAtMHgxLmIwNjFkMDc0YWZiODgwOTM5OGZjODkwMjZmZDc1YTg1cDAsCisgICAgLTB4MS4zNDVkMTc0NWQxNzQ4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAweDEuYjUxNmVlMjdjMmQzNWNmNTlhNzU3MzBmODhmMTczZTBwMCwKKyAgICAweDEuM2U4YmEyZThiYTJlYnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgLTB4MS5iNTE2ZWUyN2MyZDM1Y2Y1OWE3NTczMGY4OGYxNzNlMHAwLAorICAgIC0weDEuM2U4YmEyZThiYTJlYnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgMHgxLmI5YjJhMWU5ZjlkYTMzNDQ5MGQ0OGNiMDJjYjRiZjU4cDAsCisgICAgMHgxLjQ4YmEyZThiYTJlOGVwMgorICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIC0weDEuYjliMmExZTlmOWRhMzM0NDkwZDQ4Y2IwMmNiNGJmNThwMCwKKyAgICAtMHgxLjQ4YmEyZThiYTJlOGVwMgorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS5iZTM2MzgzZjQ3NTZmMTZkNzc3YmZlZTE0NjViOTA3ZXAwLAorICAgIDB4MS41MmU4YmEyZThiYTMxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAtMHgxLmJlMzYzODNmNDc1NmYxNmQ3NzdiZmVlMTQ2NWI5MDdlcDAsCisgICAgLTB4MS41MmU4YmEyZThiYTMxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuYzJhMmUzNDkwOThlMWNlM2NmMDkwYzg5MmVjMDQ3Y2FwMCwKKyAgICAweDEuNWQxNzQ1ZDE3NDVkNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgLTB4MS5jMmEyZTM0OTA5OGUxY2UzY2YwOTBjODkyZWMwNDdjYXAwLAorICAgIC0weDEuNWQxNzQ1ZDE3NDVkNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzY0CisgICAgMHgxLmM2ZjliZDkxYzcyMTYyOWQ3ZDA1YTU0YTNiMzRjOGZlcDAsCisgICAgMHgxLjY3NDVkMTc0NWQxNzdwMgorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIC0weDEuYzZmOWJkOTFjNzIxNjI5ZDdkMDVhNTRhM2IzNGM4ZmVwMCwKKyAgICAtMHgxLjY3NDVkMTc0NWQxNzdwMgorICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIDB4MS5jYjNiY2M3YjE5MDU2OGVkZTJlMTI3NzQzOGNiN2RjMHAwLAorICAgIDB4MS43MTc0NWQxNzQ1ZDFhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjcKKyAgICAtMHgxLmNiM2JjYzdiMTkwNTY4ZWRlMmUxMjc3NDM4Y2I3ZGMwcDAsCisgICAgLTB4MS43MTc0NWQxNzQ1ZDFhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAweDEuY2Y2YTAyNWM0OGQ0NzAxMzY1NTA3NTNiMDY5ZWI2ODZwMCwKKyAgICAweDEuN2JhMmU4YmEyZThiZHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgLTB4MS5jZjZhMDI1YzQ4ZDQ3MDEzNjU1MDc1M2IwNjllYjY4NnAwLAorICAgIC0weDEuN2JhMmU4YmEyZThiZHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLmQzODU0MDVkOTcwNTdjMmQ5MGU2M2YwMWNiODA1ODdkcDAsCisgICAgMHgxLjg1ZDE3NDVkMTc0NjBwMgorICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIC0weDEuZDM4NTQwNWQ5NzA1N2MyZDkwZTYzZjAxY2I4MDU4N2RwMCwKKyAgICAtMHgxLjg1ZDE3NDVkMTc0NjBwMgorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIDB4MS5kNzhlNTgxYTBjMTMwYjU1YThmZTE3ZTRjMDQxNjk4Y3AwLAorICAgIDB4MS45MDAwMDAwMDAwMDAzcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzMKKyAgICAtMHgxLmQ3OGU1ODFhMGMxMzBiNTVhOGZlMTdlNGMwNDE2OThjcDAsCisgICAgLTB4MS45MDAwMDAwMDAwMDAzcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAweDEuZGI4NjBkMTAwZDc1ZjJjYjY5NzI2ZTc1ZTVhNWE5YTBwMCwKKyAgICAweDEuOWEyZThiYTJlOGJhNnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgLTB4MS5kYjg2MGQxMDBkNzVmMmNiNjk3MjZlNzVlNWE1YTlhMHAwLAorICAgIC0weDEuOWEyZThiYTJlOGJhNnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgMHgxLmRmNmQxNWU3OTVhZjAyYTljNTQ4NDA1MGI4NDdkYjdkcDAsCisgICAgMHgxLmE0NWQxNzQ1ZDE3NDlwMgorICB9LAorICB7IC8vIEVudHJ5IDM3NworICAgIC0weDEuZGY2ZDE1ZTc5NWFmMDJhOWM1NDg0MDUwYjg0N2RiN2RwMCwKKyAgICAtMHgxLmE0NWQxNzQ1ZDE3NDlwMgorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS5lMzQ0MWQ5M2Q0YTZlNDM1MGMyMjNjMjQwODc4MzgyY3AwLAorICAgIDB4MS5hZThiYTJlOGJhMmVjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAtMHgxLmUzNDQxZDkzZDRhNmU0MzUwYzIyM2MyNDA4NzgzODJjcDAsCisgICAgLTB4MS5hZThiYTJlOGJhMmVjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODAKKyAgICAweDEuZTcwYmM0NTUxNjc4NDNhZmY2MjliNzQ2YWNmZGI5NTRwMCwKKyAgICAweDEuYjhiYTJlOGJhMmU4ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgLTB4MS5lNzBiYzQ1NTE2Nzg0M2FmZjYyOWI3NDZhY2ZkYjk1NHAwLAorICAgIC0weDEuYjhiYTJlOGJhMmU4ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgMHgxLmVhYzRhMDlmMTAyZGM1NDM5MmUyZDQ0NzNkODU5MDhjcDAsCisgICAgMHgxLmMyZThiYTJlOGJhMzJwMgorICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIC0weDEuZWFjNGEwOWYxMDJkYzU0MzkyZTJkNDQ3M2Q4NTkwOGNwMCwKKyAgICAtMHgxLmMyZThiYTJlOGJhMzJwMgorICB9LAorICB7IC8vIEVudHJ5IDM4NAorICAgIDB4MS5lZTZmM2ZlNzE0MzQ4NzM0NWE1YmRkMDU1MDAyNjYwY3AwLAorICAgIDB4MS5jZDE3NDVkMTc0NWQ1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAtMHgxLmVlNmYzZmU3MTQzNDg3MzQ1YTViZGQwNTUwMDI2NjBjcDAsCisgICAgLTB4MS5jZDE3NDVkMTc0NWQ1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODYKKyAgICAweDEuZjIwYzI3NWQyZDAyZmVkNTM1OGYxY2JmNmJkZTIxZjZwMCwKKyAgICAweDEuZDc0NWQxNzQ1ZDE3OHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgLTB4MS5mMjBjMjc1ZDJkMDJmZWQ1MzU4ZjFjYmY2YmRlMjFmNnAwLAorICAgIC0weDEuZDc0NWQxNzQ1ZDE3OHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgMHgxLmY1OWJkNDkyYWVjYjgxZThmOTIyZGZiMGEwNzBiMjJjcDAsCisgICAgMHgxLmUxNzQ1ZDE3NDVkMWJwMgorICB9LAorICB7IC8vIEVudHJ5IDM4OQorICAgIC0weDEuZjU5YmQ0OTJhZWNiODFlOGY5MjJkZmIwYTA3MGIyMmNwMCwKKyAgICAtMHgxLmUxNzQ1ZDE3NDVkMWJwMgorICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIDB4MS5mOTFlYmUxMDc1MTMxNjA3ZTFkYmMzY2UyMzlkMDBkMnAwLAorICAgIDB4MS5lYmEyZThiYTJlOGJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTEKKyAgICAtMHgxLmY5MWViZTEwNzUxMzE2MDdlMWRiYzNjZTIzOWQwMGQycDAsCisgICAgLTB4MS5lYmEyZThiYTJlOGJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAweDEuZmM5NTUzZGViMzg5YmIwNDJhYzBlNDNkMmRjYjY3NWRwMCwKKyAgICAweDEuZjVkMTc0NWQxNzQ2MXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzkzCisgICAgLTB4MS5mYzk1NTNkZWIzODliYjA0MmFjMGU0M2QyZGNiNjc1ZHAwLAorICAgIC0weDEuZjVkMTc0NWQxNzQ2MXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzk0CisgICAgMHgxLnAxLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAtMHgxLnAxLAorICAgIC0weDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgMHgxLjQyOGEyZjk4ZDcyOGFlMjIzZGRhYjcxNWJlMjUwZDBjcDMzLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIC0weDEuNDI4YTJmOThkNzI4YWUyMjNkZGFiNzE1YmUyNTBkMGNwMzMsCisgICAgLTB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM5OAorICAgIDB4MS40Y2YzOGZhMWFmMWM4ZTYwYjk5YWIxYzkwYTcwMTgyOHAzMywKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTkKKyAgICAtMHgxLjRjZjM4ZmExYWYxYzhlNjBiOTlhYjFjOTBhNzAxODI4cDMzLAorICAgIC0weDEuMTk5OTk5OTk5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDAKKyAgICAweDEuNTZiZmVhNjZlZjc4ZDUwNzQ2NTdiM2RlZTQyYjVlMGNwMzMsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNDAxCisgICAgLTB4MS41NmJmZWE2NmVmNzhkNTA3NDY1N2IzZGVlNDJiNWUwY3AzMywKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgMHgxLjYwMDQ4MzY1ZDRjOWZmOWI2N2Y5MzQ5OGYzMzc4NWVhcDMzLAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIC0weDEuNjAwNDgzNjVkNGM5ZmY5YjY3ZjkzNDk4ZjMzNzg1ZWFwMzMsCisgICAgLTB4MS40Y2NjY2NjY2NjY2NlcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIDB4MS42OGQyNWE5YmRmNDgzYzYyMmEyNjg1OTE4MzJiOWUwY3AzMywKKyAgICAweDEuNjY2NjY2NjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAtMHgxLjY4ZDI1YTliZGY0ODNjNjIyYTI2ODU5MTgzMmI5ZTBjcDMzLAorICAgIC0weDEuNjY2NjY2NjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDYKKyAgICAweDEuNzEzNzQ0OTEyM2VmNzAwZjY3ODMxZWUxNjlhMGY4NTlwMzMsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNDA3CisgICAgLTB4MS43MTM3NDQ5MTIzZWY3MDBmNjc4MzFlZTE2OWEwZjg1OXAzMywKKyAgICAtMHgxLjgwMDAwMDAwMDAwMDJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNDA4CisgICAgMHgxLjc5M2VhY2UxYTM0MjZjMmFiMzFmMGY3MjQyY2JkYTA0cDMzLAorICAgIDB4MS45OTk5OTk5OTk5OTljcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQwOQorICAgIC0weDEuNzkzZWFjZTFhMzQyNmMyYWIzMWYwZjcyNDJjYmRhMDRwMzMsCisgICAgLTB4MS45OTk5OTk5OTk5OTljcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIDB4MS44MGYyMjEwOWRmNGU5YWFiZjE1YWE0MmIwOWE1NmZlNHAzMywKKyAgICAweDEuYjMzMzMzMzMzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTEKKyAgICAtMHgxLjgwZjIyMTA5ZGY0ZTlhYWJmMTVhYTQyYjA5YTU2ZmU0cDMzLAorICAgIC0weDEuYjMzMzMzMzMzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTIKKyAgICAweDEuODg1OWI1YmQ3ZTQ2ZDBiMTY3MjkzNDhjZGM3MmM4NTFwMzMsCisgICAgMHgxLmNjY2NjY2NjY2NjZDBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEzCisgICAgLTB4MS44ODU5YjViZDdlNDZkMGIxNjcyOTM0OGNkYzcyYzg1MXAzMywKKyAgICAtMHgxLmNjY2NjY2NjY2NjZDBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgMHgxLjhmN2M1MjY0MDAzODA4NTk5YjE2ZThiYmZhMjkwZWY2cDMzLAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQxNQorICAgIC0weDEuOGY3YzUyNjQwMDM4MDg1OTliMTZlOGJiZmEyOTBlZjZwMzMsCisgICAgLTB4MS5lNjY2NjY2NjY2NjZhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQxNgorICAgIDB4MS45NjVmZWE1M2Q2ZTNjODJiMDU5OTlhYjQzZGM0ZGVmMXAzMywKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAtMHgxLjk2NWZlYTUzZDZlM2M4MmIwNTk5OWFiNDNkYzRkZWYxcDMzLAorICAgIC0weDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTgKKyAgICAweDEuOTY1ZmVhNTNkNmUzYzgyYjA1OTk5YWI0M2RjNGRlZjFwNjYsCisgICAgMHgxLjBwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDE5CisgICAgLTB4MS45NjVmZWE1M2Q2ZTNjODJiMDU5OTlhYjQzZGM0ZGVmMXA2NiwKKyAgICAtMHgxLjBwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgMHgxLmEzN2UxM2RjNGIzYmJkYzlmMDcwYmJjY2FlZTllNzA4cDY2LAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQyMQorICAgIC0weDEuYTM3ZTEzZGM0YjNiYmRjOWYwNzBiYmNjYWVlOWU3MDhwNjYsCisgICAgLTB4MS4xOTk5OTk5OTk5OTlhcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQyMgorICAgIDB4MS5hZmQ2NjgwM2IyYzBjYjI4YjgxNDliNjNmMmU1YjhlOXA2NiwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAtMHgxLmFmZDY2ODAzYjJjMGNiMjhiODE0OWI2M2YyZTViOGU5cDY2LAorICAgIC0weDEuMzMzMzMzMzMzMzMzNHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjQKKyAgICAweDEuYmI4M2IxMjdlOTM0Mzk2ZGU1MDAyZjI2ODQ1NjkzYzJwNjYsCisgICAgMHgxLjRjY2NjY2NjY2NjY2VwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgLTB4MS5iYjgzYjEyN2U5MzQzOTZkZTUwMDJmMjY4NDU2OTNjMnA2NiwKKyAgICAtMHgxLjRjY2NjY2NjY2NjY2VwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDI2CisgICAgMHgxLmM2OWI1YTcyZjFhOWEzZDUyOTdkZmEwNzEzMjlkMzAzcDY2LAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIC0weDEuYzY5YjVhNzJmMWE5YTNkNTI5N2RmYTA3MTMyOWQzMDNwNjYsCisgICAgLTB4MS42NjY2NjY2NjY2NjY4cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIDB4MS5kMTJlZDBhZjFhMjdmYzI5YTM0MTI5NWI4MjI1NDQxN3A2NiwKKyAgICAweDEuODAwMDAwMDAwMDAwMnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAtMHgxLmQxMmVkMGFmMWEyN2ZjMjlhMzQxMjk1YjgyMjU0NDE3cDY2LAorICAgIC0weDEuODAwMDAwMDAwMDAwMnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzAKKyAgICAweDEuZGI0Yzc3NjBiY2ZmMzY2NWI3ZjY4YWVkODU0ZTc4OWJwNjYsCisgICAgMHgxLjk5OTk5OTk5OTk5OWNwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDMxCisgICAgLTB4MS5kYjRjNzc2MGJjZmYzNjY1YjdmNjhhZWQ4NTRlNzg5YnA2NiwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OWNwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgMHgxLmU1MDA1N2E2ODE5MDMyMzQyZjBiMTk2NDdmNzBmYzg3cDY2LAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQzMworICAgIC0weDEuZTUwMDU3YTY4MTkwMzIzNDJmMGIxOTY0N2Y3MGZjODdwNjYsCisgICAgLTB4MS5iMzMzMzMzMzMzMzM2cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS5lZTU0OWZlNzA4NWU4N2U1OWNhNmE0MzYzMTE2NmVlNHA2NiwKKyAgICAweDEuY2NjY2NjY2NjY2NkMHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAtMHgxLmVlNTQ5ZmU3MDg1ZTg3ZTU5Y2E2YTQzNjMxMTY2ZWU0cDY2LAorICAgIC0weDEuY2NjY2NjY2NjY2NkMHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzYKKyAgICAweDEuZjc1MjAyZWM4NmUwYzQ3YTZiMDVjMjI5YTZiNThjNjRwNjYsCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDM3CisgICAgLTB4MS5mNzUyMDJlYzg2ZTBjNDdhNmIwNWMyMjlhNmI1OGM2NHA2NiwKKyAgICAtMHgxLmU2NjY2NjY2NjY2NmFwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLnA2NywKKyAgICAweDEuMHAyMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzkKKyAgICAtMHgxLnA2NywKKyAgICAtMHgxLjBwMjAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQwCisgICAgMHgxLjQyOGEyZjk4ZDcyOGFlMjIzZGRhYjcxNWJlMjUwZDBjcDMzMywKKyAgICAweDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgLTB4MS40MjhhMmY5OGQ3MjhhZTIyM2RkYWI3MTViZTI1MGQwY3AzMzMsCisgICAgLTB4MS4wcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDIKKyAgICAweDEuNGNmMzhmYTFhZjFjOGU2MGI5OWFiMWM5MGE3MDE4MjhwMzMzLAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDMKKyAgICAtMHgxLjRjZjM4ZmExYWYxYzhlNjBiOTlhYjFjOTBhNzAxODI4cDMzMywKKyAgICAtMHgxLjE5OTk5OTk5OTk5OWFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NAorICAgIDB4MS41NmJmZWE2NmVmNzhkNTA3NDY1N2IzZGVlNDJiNWUwY3AzMzMsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NQorICAgIC0weDEuNTZiZmVhNjZlZjc4ZDUwNzQ2NTdiM2RlZTQyYjVlMGNwMzMzLAorICAgIC0weDEuMzMzMzMzMzMzMzMzNHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ2CisgICAgMHgxLjYwMDQ4MzY1ZDRjOWZmOWI2N2Y5MzQ5OGYzMzc4NWVhcDMzMywKKyAgICAweDEuNGNjY2NjY2NjY2NjZXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgLTB4MS42MDA0ODM2NWQ0YzlmZjliNjdmOTM0OThmMzM3ODVlYXAzMzMsCisgICAgLTB4MS40Y2NjY2NjY2NjY2NlcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDgKKyAgICAweDEuNjhkMjVhOWJkZjQ4M2M2MjJhMjY4NTkxODMyYjllMGNwMzMzLAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDkKKyAgICAtMHgxLjY4ZDI1YTliZGY0ODNjNjIyYTI2ODU5MTgzMmI5ZTBjcDMzMywKKyAgICAtMHgxLjY2NjY2NjY2NjY2NjhwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIDB4MS43MTM3NDQ5MTIzZWY3MDBmNjc4MzFlZTE2OWEwZjg1OXAzMzMsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MQorICAgIC0weDEuNzEzNzQ0OTEyM2VmNzAwZjY3ODMxZWUxNjlhMGY4NTlwMzMzLAorICAgIC0weDEuODAwMDAwMDAwMDAwMnAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgMHgxLjc5M2VhY2UxYTM0MjZjMmFiMzFmMGY3MjQyY2JkYTA0cDMzMywKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3AxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgLTB4MS43OTNlYWNlMWEzNDI2YzJhYjMxZjBmNzI0MmNiZGEwNHAzMzMsCisgICAgLTB4MS45OTk5OTk5OTk5OTljcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTQKKyAgICAweDEuODBmMjIxMDlkZjRlOWFhYmYxNWFhNDJiMDlhNTZmZTRwMzMzLAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAtMHgxLjgwZjIyMTA5ZGY0ZTlhYWJmMTVhYTQyYjA5YTU2ZmU0cDMzMywKKyAgICAtMHgxLmIzMzMzMzMzMzMzMzZwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NgorICAgIDB4MS44ODU5YjViZDdlNDZkMGIxNjcyOTM0OGNkYzcyYzg1MXAzMzMsCisgICAgMHgxLmNjY2NjY2NjY2NjZDBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIC0weDEuODg1OWI1YmQ3ZTQ2ZDBiMTY3MjkzNDhjZGM3MmM4NTFwMzMzLAorICAgIC0weDEuY2NjY2NjY2NjY2NkMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgMHgxLjhmN2M1MjY0MDAzODA4NTk5YjE2ZThiYmZhMjkwZWY2cDMzMywKKyAgICAweDEuZTY2NjY2NjY2NjY2YXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgLTB4MS44ZjdjNTI2NDAwMzgwODU5OWIxNmU4YmJmYTI5MGVmNnAzMzMsCisgICAgLTB4MS5lNjY2NjY2NjY2NjZhcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjAKKyAgICAweDEuOTY1ZmVhNTNkNmUzYzgyYjA1OTk5YWI0M2RjNGRlZjFwMzMzLAorICAgIDB4MS4wcDEwMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjEKKyAgICAtMHgxLjk2NWZlYTUzZDZlM2M4MmIwNTk5OWFiNDNkYzRkZWYxcDMzMywKKyAgICAtMHgxLjBwMTAwMQorICB9LAorICB7IC8vIEVudHJ5IDQ2MgorICAgIDB4MS45NjVmZWE1M2Q2ZTNjM2VmNWIyOGJiMjFkZTRlNzdjNnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICAtMHgxLjk2NWZlYTUzZDZlM2MzZWY1YjI4YmIyMWRlNGU3N2M2cDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjQKKyAgICAweDEuOTY1ZmVhNTNkNmUzYzgyYjA1OTk5YWI0M2RjNGRlZjFwMCwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDY1CisgICAgLTB4MS45NjVmZWE1M2Q2ZTNjODJiMDU5OTlhYjQzZGM0ZGVmMXAwLAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgMHgxLjk2NWZlYTUzZDZlM2QwYTI1YTdiNTlkOGZjNmRmMmEwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIC0weDEuOTY1ZmVhNTNkNmUzZDBhMjVhN2I1OWQ4ZmM2ZGYyYTBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIDB4MS40MjhhMmY5OGQ3MjhhYWM2MjJiMTFmODJhNmY2NjZjOXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjkKKyAgICAtMHgxLjQyOGEyZjk4ZDcyOGFhYzYyMmIxMWY4MmE2ZjY2NmM5cDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzAKKyAgICAweDEuNDI4YTJmOThkNzI4YWUyMjNkZGFiNzE1YmUyNTBkMGNwMCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDcxCisgICAgLTB4MS40MjhhMmY5OGQ3MjhhZTIyM2RkYWI3MTViZTI1MGQwY3AwLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgMHgxLjQyOGEyZjk4ZDcyOGI0ZGE3NDJkZTYzYmVjNGM5N2RlcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIC0weDEuNDI4YTJmOThkNzI4YjRkYTc0MmRlNjNiZWM0Yzk3ZGVwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmYWFhYWFhYWFhYWFhYTljNzFjN3AtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmFhYWFhYWFhYWFhYWE5YzcxYzdwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDc2CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgMHgxLjAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1MzhlMzhlcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3OQorICAgIC0weDEuMDAwMDAwMDAwMDAwMDU1NTU1NTU1NTU1NTUzOGUzOGVwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4MAorICAgIDB4MS45NjVmZWE1M2Q2ZTNjM2VmNWIyOGJiMjFkZTRlNzdjNnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIC0weDEuOTY1ZmVhNTNkNmUzYzNlZjViMjhiYjIxZGU0ZTc3YzZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDgyCisgICAgMHgxLjk2NWZlYTUzZDZlM2M4MmIwNTk5OWFiNDNkYzRkZWYxcC0xLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgzCisgICAgLTB4MS45NjVmZWE1M2Q2ZTNjODJiMDU5OTlhYjQzZGM0ZGVmMXAtMSwKKyAgICAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODQKKyAgICAweDEuOTY1ZmVhNTNkNmUzZDBhMjVhN2I1OWQ4ZmM2ZGYyYTBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAtMHgxLjk2NWZlYTUzZDZlM2QwYTI1YTdiNTlkOGZjNmRmMmEwcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIDB4MS40MjhhMmY5OGQ3MjhhYWM2MjJiMTFmODJhNmY2NjZjOXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDQ4NworICAgIC0weDEuNDI4YTJmOThkNzI4YWFjNjIyYjExZjgyYTZmNjY2YzlwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDg4CisgICAgMHgxLjQyOGEyZjk4ZDcyOGFlMjIzZGRhYjcxNWJlMjUwZDBjcC0xLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDg5CisgICAgLTB4MS40MjhhMmY5OGQ3MjhhZTIyM2RkYWI3MTViZTI1MGQwY3AtMSwKKyAgICAtMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTAKKyAgICAweDEuNDI4YTJmOThkNzI4YjRkYTc0MmRlNjNiZWM0Yzk3ZGVwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAtMHgxLjQyOGEyZjk4ZDcyOGI0ZGE3NDJkZTYzYmVjNGM5N2RlcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ5MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmYWFhYWFhYWFhYWFhYTljNzFjN3AtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ5MworICAgIC0weDEuZmZmZmZmZmZmZmZmZmFhYWFhYWFhYWFhYWE5YzcxYzdwLTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgMHgxLnAtMSwKKyAgICAweDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIC0weDEucC0xLAorICAgIC0weDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDQ5NgorICAgIDB4MS4wMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTM4ZTM4ZXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDQ5NworICAgIC0weDEuMDAwMDAwMDAwMDAwMDU1NTU1NTU1NTU1NTUzOGUzOGVwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDk4CisgICAgMHgxLjk2NWZlYTUzZDZlM2MzZWY1YjI4YmIyMWRlNGU3N2M2cC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDk5CisgICAgLTB4MS45NjVmZWE1M2Q2ZTNjM2VmNWIyOGJiMjFkZTRlNzdjNnAtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDAKKyAgICAweDEuOTY1ZmVhNTNkNmUzYzgyYjA1OTk5YWI0M2RjNGRlZjFwLTIsCisgICAgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDEKKyAgICAtMHgxLjk2NWZlYTUzZDZlM2M4MmIwNTk5OWFiNDNkYzRkZWYxcC0yLAorICAgIC0weDEuMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDUwMgorICAgIDB4MS45NjVmZWE1M2Q2ZTNkMGEyNWE3YjU5ZDhmYzZkZjJhMHAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDUwMworICAgIC0weDEuOTY1ZmVhNTNkNmUzZDBhMjVhN2I1OWQ4ZmM2ZGYyYTBwLTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTA0CisgICAgMHgxLjQyOGEyZjk4ZDcyOGFhYzYyMmIxMWY4MmE2ZjY2NmM5cC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTA1CisgICAgLTB4MS40MjhhMmY5OGQ3MjhhYWM2MjJiMTFmODJhNmY2NjZjOXAtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDYKKyAgICAweDEuNDI4YTJmOThkNzI4YWUyMjNkZGFiNzE1YmUyNTBkMGNwLTIsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAtMHgxLjQyOGEyZjk4ZDcyOGFlMjIzZGRhYjcxNWJlMjUwZDBjcC0yLAorICAgIC0weDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDUwOAorICAgIDB4MS40MjhhMmY5OGQ3MjhiNGRhNzQyZGU2M2JlYzRjOTdkZXAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDUwOQorICAgIC0weDEuNDI4YTJmOThkNzI4YjRkYTc0MmRlNjNiZWM0Yzk3ZGVwLTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZhYWFhYWFhYWFhYWFhOWM3MWM3cC0zLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmYWFhYWFhYWFhYWFhYTljNzFjN3AtMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTIKKyAgICAweDEucC0yLAorICAgIDB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTEzCisgICAgLTB4MS5wLTIsCisgICAgLTB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgMHgxLjAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1MzhlMzhlcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTE1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTM4ZTM4ZXAtMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTYKKyAgICAweDEucC0zNTgsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTcKKyAgICAtMHgxLnAtMzU4LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUxOAorICAgIC0weDEucC0zNTgsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTE5CisgICAgMHgxLnAtMzU4LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgMHgxLjQyOGEyZjk4ZDcyOGFhYzYyMmIxMWY4MmE2ZjY2NmM5cDM0MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTIxCisgICAgLTB4MS40MjhhMmY5OGQ3MjhhYWM2MjJiMTFmODJhNmY2NjZjOXAzNDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjIKKyAgICAtMHgxLjQyOGEyZjk4ZDcyOGFhYzYyMmIxMWY4MmE2ZjY2NmM5cDM0MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDUyMworICAgIDB4MS40MjhhMmY5OGQ3MjhhYWM2MjJiMTFmODJhNmY2NjZjOXAzNDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDUyNAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNTI1CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDUyNgorICAgIDB4MS40MjhhMmY5OGQ3MjhhYWM2MjJiMTFmODJhNmY2NjZjOXAzNDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIC0weDEuNDI4YTJmOThkNzI4YWFjNjIyYjExZjgyYTZmNjY2YzlwMzQxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgMHgxLjQyOGEyZjk4ZDcyOGE3NmEwNzg3ODdlZjhmYjVkNTRicDM0MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTI5CisgICAgLTB4MS40MjhhMmY5OGQ3MjhhNzZhMDc4Nzg3ZWY4ZmI1ZDU0YnAzNDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAweDEuNzZlZjdlNzMxMDRiNzc1MDgzMzEzMTI4NzFjMWJhZWFwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTMxCisgICAgLTB4MS43NmVmN2U3MzEwNGI3NzUwODMzMTMxMjg3MWMxYmFlYXAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTMyCisgICAgMHgxLjI5OTYyNjRlMGUzZmRiNTRkM2FiMjUxMTQ2YTI0MDI3cDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIC0weDEuMjk5NjI2NGUwZTNmZGI1NGQzYWIyNTExNDZhMjQwMjdwMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDUzNAorICAgIDB4MS5kODYzOWZkY2I2MGVhMGI4NzEyMzhhZDAyODYzN2Q5ZnAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDUzNQorICAgIC0weDEuZDg2MzlmZGNiNjBlYTBiODcxMjM4YWQwMjg2MzdkOWZwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTM2CisgICAgMHgxLnAxLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzcKKyAgICAtMHgxLnAxLAorICAgIC0weDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgMHgxLjQyOGEyZjk4ZDcyOGFlMjIzZGRhYjcxNWJlMjUwZDBjcDAsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDUzOQorICAgIC0weDEuNDI4YTJmOThkNzI4YWUyMjNkZGFiNzE1YmUyNTBkMGNwMCwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDU0MAorICAgIDB4MS4wMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTM4ZTM4ZXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDEKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1MzhlMzhlcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDU0MworICAgIC0weDEucDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmFhYWFhYWFhYWFhYWE5YzcxYzdwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZhYWFhYWFhYWFhYWFhOWM3MWM3cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU0NgorICAgIDB4MS40MjhhMmY5OGQ3MjhiNGRhNzQyZGU2M2JlYzRjOTdkZXAtMzQxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTQ3CisgICAgLTB4MS40MjhhMmY5OGQ3MjhiNGRhNzQyZGU2M2JlYzRjOTdkZXAtMzQxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIDB4MS40MjhhMmY5OGQ3MjhhZTIyM2RkYWI3MTViZTI1MGQwY3AtMzQxLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTQ5CisgICAgLTB4MS40MjhhMmY5OGQ3MjhhZTIyM2RkYWI3MTViZTI1MGQwY3AtMzQxLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIDB4MS40MjhhMmY5OGQ3MjhhNzZhMDc4Nzg3ZWY4ZmI1ZDU0YnAtMzQxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTUxCisgICAgLTB4MS40MjhhMmY5OGQ3MjhhNzZhMDc4Nzg3ZWY4ZmI1ZDU0YnAtMzQxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDU1MgorICAgIDB4MS40MjhhMmY5OGQ3MjhhMGIxZDEzNDU4Yzk2MGZlZjA5Y3AtMzQxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTUzCisgICAgLTB4MS40MjhhMmY5OGQ3MjhhMGIxZDEzNDU4Yzk2MGZlZjA5Y3AtMzQxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS40MjhhMmY5OGQ3MjhhZTIyM2RkYWI3MTViZTI1MGQwY3AtMzU4LAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNTU1CisgICAgLTB4MS40MjhhMmY5OGQ3MjhhZTIyM2RkYWI3MTViZTI1MGQwY3AtMzU4LAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIDB4MS5wLTM1OCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDU1NworICAgIC0weDEucC0zNTgsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTU4CisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDU1OQorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDB4MS44MHAxLAorICAgIDB4MS5icDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjEKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS5icDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjIKKyAgICAweDEuNDBwMiwKKyAgICAweDEuZjQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjMKKyAgICAtMHgxLjQwcDIsCisgICAgLTB4MS5mNDBwNgorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2NicnRmX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9jYnJ0Zl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWNlNzNkZgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9jYnJ0Zl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxNzU0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZmxvYXQsIGZsb2F0PiBnX2NicnRmX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS4wMDAwN2ZmZmMwMDAzNTU1MjAwMDNhYWE2NjM5MzZhYXAtNDIsCisgICAgLTB4MS4wMDAxODBwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuMDAwMDdmZmZjMDAwMzU1NTIwMDAzYWFhNjYzOTM2YWFwLTQyLAorICAgIDB4MS4wMDAxODBwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAtMHgxLjAwMDBmZmZmMDAwMWFhYTc1NTVjYWE5OThlNjI3MTVmcC0yLAorICAgIC0weDEuMDAwM3AtNgorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuMDAwMGZmZmYwMDAxYWFhNzU1NWNhYTk5OGU2MjcxNWZwLTIsCisgICAgMHgxLjAwMDNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgLTB4MS4wMDdjMjcxNWI2OTExNzk1MTU4YTRkNGNjNDViOGQ1OXAyLAorICAgIC0weDEuMDE3NTJhcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLjAwN2MyNzE1YjY5MTE3OTUxNThhNGQ0Y2M0NWI4ZDU5cDIsCisgICAgMHgxLjAxNzUyYXA2CisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIC0weDEuMGI5Y2NkMDYwMTFmY2UzNjNiN2E1MGEwYTNiOGUyNmNwMSwKKyAgICAtMHgxLjI0NzExMnAzCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS4wYjljY2QwNjAxMWZjZTM2M2I3YTUwYTBhM2I4ZTI2Y3AxLAorICAgIDB4MS4yNDcxMTJwMworICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAtMHgxLmFhODYzYjBhMzhkMDBlMTI1Y2JkMTczZjYwZGRiYjY4cDEsCisgICAgLTB4MS4yN2ZmZjhwNQorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuYWE4NjNiMGEzOGQwMGUxMjVjYmQxNzNmNjBkZGJiNjhwMSwKKyAgICAweDEuMjdmZmY4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIC0weDEuYjBmZjRiMGNmNTMwYmUyZGU0NTA1NDlmOTg1ZjQyYWZwLTMsCisgICAgLTB4MS4zNWFlODBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5iMGZmNGIwY2Y1MzBiZTJkZTQ1MDU0OWY5ODVmNDJhZnAtMywKKyAgICAweDEuMzVhZTgwcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAtMHgxLmQzMGQ0ZDAwMjdhMzM5ZTMzNTViNmFjYzFkMTZiODU4cC0xMSwKKyAgICAtMHgxLjg0YTViNnAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5kMzBkNGQwMDI3YTMzOWUzMzU1YjZhY2MxZDE2Yjg1OHAtMTEsCisgICAgMHgxLjg0YTViNnAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIC0weDEuN2JjNzQ2MDA5OGEyNGZiNDY5ZjYwZGVkZDBjMTEzY2VwLTQsCisgICAgLTB4MS5hMWU4ODBwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuN2JjNzQ2MDA5OGEyNGZiNDY5ZjYwZGVkZDBjMTEzY2VwLTQsCisgICAgMHgxLmExZTg4MHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIC0weDEuZTE4NzE4ZmQyYjVlNTMwNzA0OGQ0NDE3NDQ5NDY3YjZwLTExLAorICAgIC0weDEuYTllYTgwcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLmUxODcxOGZkMmI1ZTUzMDcwNDhkNDQxNzQ0OTQ2N2I2cC0xMSwKKyAgICAweDEuYTllYTgwcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgLTB4MS5lMzA4MmJlMzMyNmRhNmMyM2FlMzM4YTNmMTIxZGQxZnAtMTEsCisgICAgLTB4MS5hZGViODBwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuZTMwODJiZTMzMjZkYTZjMjNhZTMzOGEzZjEyMWRkMWZwLTExLAorICAgIDB4MS5hZGViODBwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuOTY1ZmY3MDZkNWQwY2VlY2Q5NzlmMjVkMmJkMGYyZGNwLTE0LAorICAgIDB4MS4wMDAwMThwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAtMHgxLjk2NWZmNzA2ZDVkMGNlZWNkOTc5ZjI1ZDJiZDBmMmRjcC0xNCwKKyAgICAtMHgxLjAwMDAxOHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS45NjYwMmUwZTcyYTdmZGYxNWUzMzE0NWFmNmYyNjNkOHAwLAorICAgIDB4MS4wMDAwODBwMgorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgLTB4MS45NjYwMmUwZTcyYTdmZGYxNWUzMzE0NWFmNmYyNjNkOHAwLAorICAgIC0weDEuMDAwMDgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS45NjYwM2VmZDE2MTFmZjhlYTE5MGNlZmQwMjhmNDUwNnAtMTQsCisgICAgMHgxLjAwMDBhMHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIC0weDEuOTY2MDNlZmQxNjExZmY4ZWExOTBjZWZkMDI4ZjQ1MDZwLTE0LAorICAgIC0weDEuMDAwMGEwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLjAwMDAzZmZmZjAwMDA2YWFhNzU1NTcyYWE5OThlNDM0cC0yLAorICAgIDB4MS4wMDAwYzBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIC0weDEuMDAwMDNmZmZmMDAwMDZhYWE3NTU1NzJhYTk5OGU0MzRwLTIsCisgICAgLTB4MS4wMDAwYzBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS45NjYwNjBkYTU4YWE1ZDBjNTczMzRhOWE2ODBjM2UxNHAtMTQsCisgICAgMHgxLjAwMDBlMHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIC0weDEuOTY2MDYwZGE1OGFhNWQwYzU3MzM0YTlhNjgwYzNlMTRwLTE0LAorICAgIC0weDEuMDAwMGUwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLjQyOGFkMGRkOWU1MmQxMDIzYjJmYWNhMjgxMDQ5ZDIzcC00MiwKKyAgICAweDEuMDAwMTgwcC0xMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIC0weDEuNDI4YWQwZGQ5ZTUyZDEwMjNiMmZhY2EyODEwNDlkMjNwLTQyLAorICAgIC0weDEuMDAwMTgwcC0xMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS4wMDAwN2ZmZmMwMDAzNTU1MjAwMDNhYWE2NjM5MzZhYXAtNDIsCisgICAgMHgxLjAwMDE4MHAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAtMHgxLjAwMDA3ZmZmYzAwMDM1NTUyMDAwM2FhYTY2MzkzNmFhcC00MiwKKyAgICAtMHgxLjAwMDE4MHAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuOTY2MTE4ZmQwZmZmNGFmMTAxNjc4NmM1MjQ3M2Q3MzlwMCwKKyAgICAweDEuMDAwMjNjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIC0weDEuOTY2MTE4ZmQwZmZmNGFmMTAxNjc4NmM1MjQ3M2Q3MzlwMCwKKyAgICAtMHgxLjAwMDIzY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEuMDAwMGZmZmYwMDAxYWFhNzU1NWNhYTk5OGU2MjcxNWZwLTIsCisgICAgMHgxLjAwMDNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIC0weDEuMDAwMGZmZmYwMDAxYWFhNzU1NWNhYTk5OGU2MjcxNWZwLTIsCisgICAgLTB4MS4wMDAzcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuOTY2MWM0NmMzZjJhY2NiYzNiMjg3OWVjYzY0YzU1NjNwLTQyLAorICAgIDB4MS4wMDAzODBwLTEyNAorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS45NjYxYzQ2YzNmMmFjY2JjM2IyODc5ZWNjNjRjNTU2M3AtNDIsCisgICAgLTB4MS4wMDAzODBwLTEyNAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLjAwMDk1NGZlM2UyZTNiM2ZjMjAzYzBmMTEyMmVmNTI1cC0yLAorICAgIDB4MS4wMDFjcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAtMHgxLjAwMDk1NGZlM2UyZTNiM2ZjMjAzYzBmMTEyMmVmNTI1cC0yLAorICAgIC0weDEuMDAxY3AtNgorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLjAwMGZmZjAwMWFhNzU1Y2E5OTkwZDE1ZjQ5NzhjMzE5cC0xLAorICAgIDB4MS4wMDMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAtMHgxLjAwMGZmZjAwMWFhNzU1Y2E5OTkwZDE1ZjQ5NzhjMzE5cC0xLAorICAgIC0weDEuMDAzMHAtMworICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLjAwMGZmZjAwMWFhNzU1Y2E5OTkwZDE1ZjQ5NzhjMzE5cC0yLAorICAgIDB4MS4wMDMwcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAtMHgxLjAwMGZmZjAwMWFhNzU1Y2E5OTkwZDE1ZjQ5NzhjMzE5cC0yLAorICAgIC0weDEuMDAzMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLjk2ZTk0ZWZlM2JiNGYwMzFmNmZkMjk3NjRjMTg3YmE5cC0xNCwKKyAgICAweDEuMDEwNHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0weDEuOTZlOTRlZmUzYmI0ZjAzMWY2ZmQyOTc2NGMxODdiYTlwLTE0LAorICAgIC0weDEuMDEwNHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS40MzU0ZjQ3MDQ2YjEyMmM4MjY5Y2VmYTMzZjY5NDVlMHAtMTIsCisgICAgMHgxLjAxZTRwLTM1CisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAtMHgxLjQzNTRmNDcwNDZiMTIyYzgyNjljZWZhMzNmNjk0NWUwcC0xMiwKKyAgICAtMHgxLjAxZTRwLTM1CisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuNDM1Y2U0ZmZlNWRmMGVkNjE4NmYzN2M4Y2Q1NWRmY2RwLTE0LAorICAgIDB4MS4wMWY3cC00MQorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTB4MS40MzVjZTRmZmU1ZGYwZWQ2MTg2ZjM3YzhjZDU1ZGZjZHAtMTQsCisgICAgLTB4MS4wMWY3cC00MQorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLjQzZGE2YjAwMDA1YzM5YjBlNmM3YzRjZWM4MDYzZjQ1cDAsCisgICAgMHgxLjAzMjNkZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLjQzZGE2YjAwMDA1YzM5YjBlNmM3YzRjZWM4MDYzZjQ1cDAsCisgICAgLTB4MS4wMzIzZGVwMQorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjk5OGNhNWZkOTA3OWMwYWNmOGQwYzQ3MDU1MTgxNWM0cC0xNCwKKyAgICAweDEuMDYwY3AtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEuOTk4Y2E1ZmQ5MDc5YzBhY2Y4ZDBjNDcwNTUxODE1YzRwLTE0LAorICAgIC0weDEuMDYwY3AtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS45OThlYmI3MWVhZjU0ZjJiNjM2NjM2NzhhY2Q5YzFiMHAtMTQsCisgICAgMHgxLjA2MTBwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLjk5OGViYjcxZWFmNTRmMmI2MzY2MzY3OGFjZDljMWIwcC0xNCwKKyAgICAtMHgxLjA2MTBwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuNDU0Zjc3MDAwMDAwOWE3N2I2Njc1ODYyMDI5NDM2NWZwLTEsCisgICAgMHgxLjA2YTc2YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgLTB4MS40NTRmNzcwMDAwMDA5YTc3YjY2NzU4NjIwMjk0MzY1ZnAtMSwKKyAgICAtMHgxLjA2YTc2YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLjlhcC00LAorICAgIDB4MS4wNmU5YWFwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLjlhcC00LAorICAgIC0weDEuMDZlOWFhcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLjlhMmRjNmRhOGMwNWY1ZTc2NDg4ZDA4YTlkNjhhYWIzcDAsCisgICAgMHgxLjA3NDFjNHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLjlhMmRjNmRhOGMwNWY1ZTc2NDg4ZDA4YTlkNjhhYWIzcDAsCisgICAgLTB4MS4wNzQxYzRwMgorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLjliNjdiMWE2ZWQ2ZmQxYzE0ZTA5NzNkMWJiZGZmYzQ0cC0xNCwKKyAgICAweDEuMDlhMHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuOWI2N2IxYTZlZDZmZDFjMTRlMDk3M2QxYmJkZmZjNDRwLTE0LAorICAgIC0weDEuMDlhMHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS40NmZmYzcwMDM2NmIxMjU1Yjc2NDhiNDg5OWI5OGQ1YXAtMTQsCisgICAgMHgxLjBhYzRwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLjQ2ZmZjNzAwMzY2YjEyNTViNzY0OGI0ODk5Yjk4ZDVhcC0xNCwKKyAgICAtMHgxLjBhYzRwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuOWMxZjJhZDY5ZDM3NTQyZWJlMjE1ZWRlMzczMjVmN2RwLTE0LAorICAgIDB4MS4wYjA0cC00MAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS45YzFmMmFkNjlkMzc1NDJlYmUyMTVlZGUzNzMyNWY3ZHAtMTQsCisgICAgLTB4MS4wYjA0cC00MAorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMHgxLjljODE0ODAwNDEwNmIyOWJhY2RmZDY0NmNjYjg5MGJicC0yLAorICAgIDB4MS4wYmMyZTJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIC0weDEuOWM4MTQ4MDA0MTA2YjI5YmFjZGZkNjQ2Y2NiODkwYmJwLTIsCisgICAgLTB4MS4wYmMyZTJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS40NzhhN2JiNTcyY2M5MGNlZjM1OTZmZDg1MmI1MzJjZHAwLAorICAgIDB4MS4wYzE4MDhwMQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS40NzhhN2JiNTcyY2M5MGNlZjM1OTZmZDg1MmI1MzJjZHAwLAorICAgIC0weDEuMGMxODA4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS45ZDIzOTcwMzJjZWY0ZWJlOGEyYzVjODg5YTg4NzZhMXAtMSwKKyAgICAweDEuMGNmZjcwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMHgxLjlkMjM5NzAzMmNlZjRlYmU4YTJjNWM4ODlhODg3NmExcC0xLAorICAgIC0weDEuMGNmZjcwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuOWUyMGI4ZDYyNDBmMDJmMGVhZjkzMGZkZjQ0MTc4OWVwMCwKKyAgICAweDEuMGVlZjEycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuOWUyMGI4ZDYyNDBmMDJmMGVhZjkzMGZkZjQ0MTc4OWVwMCwKKyAgICAtMHgxLjBlZWYxMnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEuOWVhZDMxMDVkOTU4ZWE3ZWM3NjUwMzk0NDMwM2VmN2RwMiwKKyAgICAweDEuMTAwMzIycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEuOWVhZDMxMDVkOTU4ZWE3ZWM3NjUwMzk0NDMwM2VmN2RwMiwKKyAgICAtMHgxLjEwMDMyMnA4CisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuOWYyZmFmZmRlZjY0NjFjMDk0NTU0NDhmYTkyOGI5YzNwLTEsCisgICAgMHgxLjExMDQ0MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS45ZjJmYWZmZGVmNjQ2MWMwOTQ1NTQ0OGZhOTI4YjljM3AtMSwKKyAgICAtMHgxLjExMDQ0MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLmEwZGZiODEzN2MzZTkxYzNmM2U4Mzg2NDViNDU0ZjA1cC0xNCwKKyAgICAweDEuMTQ1Y3AtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIC0weDEuYTBkZmI4MTM3YzNlOTFjM2YzZTgzODY0NWI0NTRmMDVwLTE0LAorICAgIC0weDEuMTQ1Y3AtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS5hMjMxMWIwMzUyNzAzMTNjOWNhN2Y5MmU0MjY0NDM3OHAtMSwKKyAgICAweDEuMTZmZDFlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLmEyMzExYjAzNTI3MDMxM2M5Y2E3ZjkyZTQyNjQ0Mzc4cC0xLAorICAgIC0weDEuMTZmZDFlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuYTI1ZTdlZmQwMWI0YzdmNjlmMDFmZTk2ZjY0MzQ5NGZwLTE0LAorICAgIDB4MS4xNzU4cC00MAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5hMjVlN2VmZDAxYjRjN2Y2OWYwMWZlOTZmNjQzNDk0ZnAtMTQsCisgICAgLTB4MS4xNzU4cC00MAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLmEyOGE2OGZmYmRmYjdlYjY2NjdkMmNkZDM0MWNkMjM0cC0xNCwKKyAgICAweDEuMTdiMHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIC0weDEuYTI4YTY4ZmZiZGZiN2ViNjY2N2QyY2RkMzQxY2QyMzRwLTE0LAorICAgIC0weDEuMTdiMHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS5hMmIyNGQwNGE3NTg1ZmRkZTYwN2E3ZjQyZDM3MDg3NnAtNDIsCisgICAgMHgxLjE4cC0xMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIC0weDEuYTJiMjRkMDRhNzU4NWZkZGU2MDdhN2Y0MmQzNzA4NzZwLTQyLAorICAgIC0weDEuMThwLTEyNAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLmE0ODBkYjA3NjM0NTYzOGIyOGQwYjVkOTdlMjE2NDAycC0xNCwKKyAgICAweDEuMWJhNHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIC0weDEuYTQ4MGRiMDc2MzQ1NjM4YjI4ZDBiNWQ5N2UyMTY0MDJwLTE0LAorICAgIC0weDEuMWJhNHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS40ZTExOTcwNjE0Y2ZlOTM5NWU3YzUyNGIyOTIyZWQ2MnAtMTQsCisgICAgMHgxLjFjNzFjOHAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIC0weDEuNGUxMTk3MDYxNGNmZTkzOTVlN2M1MjRiMjkyMmVkNjJwLTE0LAorICAgIC0weDEuMWM3MWM4cC00MQorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLmE1MjRhYzAwOWU5NzIzZDQwMTg4NTkyODUyNjBhMTMycC0xNCwKKyAgICAweDEuMWNmMHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIC0weDEuYTUyNGFjMDA5ZTk3MjNkNDAxODg1OTI4NTI2MGExMzJwLTE0LAorICAgIC0weDEuMWNmMHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5hNWI2NGU2ZDFhZDIzM2E1OTMzNjhhYzIxNjNkNmI3ZHAtMTQsCisgICAgMHgxLjFlMThwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAtMHgxLmE1YjY0ZTZkMWFkMjMzYTU5MzM2OGFjMjE2M2Q2YjdkcC0xNCwKKyAgICAtMHgxLjFlMThwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmE2YTU4YzViNmRmNWM3MjVlM2VjNGFiMTg3MzAxNTg2cC0xNCwKKyAgICAweDEuMWZmZmZlcC00MAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIC0weDEuYTZhNThjNWI2ZGY1YzcyNWUzZWM0YWIxODczMDE1ODZwLTE0LAorICAgIC0weDEuMWZmZmZlcC00MAorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS5hY3AtNCwKKyAgICAweDEuMmIxNTMwcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuYWNwLTQsCisgICAgLTB4MS4yYjE1MzBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjU1MDA1NjNiMDI1YTI2ZTZjZGU3ODQ2YzYwZGQxYTYzcDAsCisgICAgMHgxLjJlODVkY3AxCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTB4MS41NTAwNTYzYjAyNWEyNmU2Y2RlNzg0NmM2MGRkMWE2M3AwLAorICAgIC0weDEuMmU4NWRjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuNTdiZmIzMDBjODlkNTM1ZGRjNjFmOWIzZDk5OWRjMWVwMCwKKyAgICAweDEuMzVlNGY4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAtMHgxLjU3YmZiMzAwYzg5ZDUzNWRkYzYxZjliM2Q5OTlkYzFlcDAsCisgICAgLTB4MS4zNWU0ZjhwMQorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5iMmU5NDMwYmQyMWFhZTg0NjU5OWZkZjY4ZTUxZTFlNnAtMSwKKyAgICAweDEuMzljZTcwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgLTB4MS5iMmU5NDMwYmQyMWFhZTg0NjU5OWZkZjY4ZTUxZTFlNnAtMSwKKyAgICAtMHgxLjM5Y2U3MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS5iNDBhMDEwYzg0ZWFjOTZkNDEwZjhiYTIxZmRhM2YyMnAwLAorICAgIDB4MS4zYzQxMTRwMgorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIC0weDEuYjQwYTAxMGM4NGVhYzk2ZDQxMGY4YmEyMWZkYTNmMjJwMCwKKyAgICAtMHgxLjNjNDExNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLmM1ZDg1OTBjYTU0M2ZjYjFjMGJmYjQ2ZTkwZTQxOWJlcDAsCisgICAgMHgxLjY0OTlmNnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgLTB4MS5jNWQ4NTkwY2E1NDNmY2IxYzBiZmI0NmU5MGU0MTliZXAwLAorICAgIC0weDEuNjQ5OWY2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuYzY3OTFmMGNiNDdmMTlmMTZkMDgzYzIxMWQxMDQyMGJwMCwKKyAgICAweDEuNjYxNTc2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAtMHgxLmM2NzkxZjBjYjQ3ZjE5ZjE2ZDA4M2MyMTFkMTA0MjBicDAsCisgICAgLTB4MS42NjE1NzZwMgorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS5jNzFmN2YwY2Q1YzUxZDZiYjQ5YTkzMDIzYTlhNjUyZHAtMSwKKyAgICAweDEuNjc5ZjRhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgLTB4MS5jNzFmN2YwY2Q1YzUxZDZiYjQ5YTkzMDIzYTlhNjUyZHAtMSwKKyAgICAtMHgxLjY3OWY0YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS5jNzI4YzUwYzllY2EzNjM2MGMyMjI1NmUzM2U0MmRjMnAwLAorICAgIDB4MS42N2I1NDZwMgorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIC0weDEuYzcyOGM1MGM5ZWNhMzYzNjBjMjIyNTZlMzNlNDJkYzJwMCwKKyAgICAtMHgxLjY3YjU0NnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLjFmYjJiNTAyMjQwMjBiOWEzMWI1ZTA5ODQ0ZTEzNDhkcC0xLAorICAgIDB4MS42YjVhZDZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAtMHgxLjFmYjJiNTAyMjQwMjBiOWEzMWI1ZTA5ODQ0ZTEzNDhkcC0xLAorICAgIC0weDEuNmI1YWQ2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjZhYjU2MGZmZmY4NDI4YjRkNDUzYmFlMDg5NTk5YmJhcC0xLAorICAgIDB4MS42YzBkNGFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLjZhYjU2MGZmZmY4NDI4YjRkNDUzYmFlMDg5NTk5YmJhcC0xLAorICAgIC0weDEuNmMwZDRhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLmNkZWUwMjgxZTc0ZTk3MTBjNjg5MTgwODliOWE2MmYycC00MiwKKyAgICAweDEuNzdmZmZlcC0xMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAtMHgxLmNkZWUwMjgxZTc0ZTk3MTBjNjg5MTgwODliOWE2MmYycC00MiwKKyAgICAtMHgxLjc3ZmZmZXAtMTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLmQxMWZiNmY5Zjc2ZTFmZDE5ZGU0N2NiZTcwOTBkZmZicC00MywKKyAgICAweDEuN2ZkYTljcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAtMHgxLmQxMWZiNmY5Zjc2ZTFmZDE5ZGU0N2NiZTcwOTBkZmZicC00MywKKyAgICAtMHgxLjdmZGE5Y3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLjdhZDY1OTAwMTU5NWNmMWIyNzJkNTk4NGQ4MDAxNDUxcC0yLAorICAgIDB4MS45ZWNmMjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAtMHgxLjdhZDY1OTAwMTU5NWNmMWIyNzJkNTk4NGQ4MDAxNDUxcC0yLAorICAgIC0weDEuOWVjZjIwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLjdhZDY1OTAwMTU5NWNmMWIyNzJkNTk4NGQ4MDAxNDUxcC00MSwKKyAgICAweDEuOWVjZjIwcC0xMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLjdhZDY1OTAwMTU5NWNmMWIyNzJkNTk4NGQ4MDAxNDUxcC00MSwKKyAgICAtMHgxLjllY2YyMHAtMTIyCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLmRmMTAyNWZmOGIxZmViODVhZmZmZThiMGNjZTVjNmMxcC0xLAorICAgIDB4MS5hMzY4ZDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMHgxLmRmMTAyNWZmOGIxZmViODVhZmZmZThiMGNjZTVjNmMxcC0xLAorICAgIC0weDEuYTM2OGQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLmRmYTVkMmZmN2IzMWZhOWIwNzM1NThhNzE4ZGQ3YmVhcC0zLAorICAgIDB4MS5hNGYyNjhwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMHgxLmRmYTVkMmZmN2IzMWZhOWIwNzM1NThhNzE4ZGQ3YmVhcC0zLAorICAgIC0weDEuYTRmMjY4cC03CisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLmUxNGQ1NjgwNWE3MjRiZmFmZTRhZDNiZGJmMjc2OTRmcDAsCisgICAgMHgxLmE5NTE0ZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS5lMTRkNTY4MDVhNzI0YmZhZmU0YWQzYmRiZjI3Njk0ZnAwLAorICAgIC0weDEuYTk1MTRlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuZTJkZjUzMDYzMjYzZGQ0N2Y0ZTNiNGJlNWQ4YWNkMjBwLTIsCisgICAgMHgxLmFkN2U3OHAtNAorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuZTJkZjUzMDYzMjYzZGQ0N2Y0ZTNiNGJlNWQ4YWNkMjBwLTIsCisgICAgLTB4MS5hZDdlNzhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAweDEuZWI1NzUyZmY5NGRmMGY1OWRlYzhkZjM2ZjRjYzFiMzFwLTQxLAorICAgIDB4MS5jNDdkOGNwLTEyMQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuZWI1NzUyZmY5NGRmMGY1OWRlYzhkZjM2ZjRjYzFiMzFwLTQxLAorICAgIC0weDEuYzQ3ZDhjcC0xMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuZWJlNWRmMDNkOWQ2NTNlOTNlOGZkMDdlMTE5MGRjYTdwLTIsCisgICAgMHgxLmM2MDdkMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuZWJlNWRmMDNkOWQ2NTNlOTNlOGZkMDdlMTE5MGRjYTdwLTIsCisgICAgLTB4MS5jNjA3ZDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAweDEuZWNwLTMsCisgICAgMHgxLmM2NTAzMHAtNworICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuZWNwLTMsCisgICAgLTB4MS5jNjUwMzBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAweDEuZWQ1M2MyZmVkNzkzOGNmZTdkNTc1MDY5MzRkNzJlcC00MywKKyAgICAweDEuYzlmZmYwcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAtMHgxLmVkNTNjMmZlZDc5MzhjZmU3ZDU3NTA2OTM0ZDcyZXAtNDMsCisgICAgLTB4MS5jOWZmZjBwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS44N2QzMGYwMDAwMDM2NzBiODk1NDVkNTc2NWUwZTQ2MnAtMiwKKyAgICAweDEuY2FmMzAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS44N2QzMGYwMDAwMDM2NzBiODk1NDVkNTc2NWUwZTQ2MnAtMiwKKyAgICAtMHgxLmNhZjMwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS4zNzk2NGVmZmZmNzc4OTU3YjE2YjQyMDhhZjc3YTliOXAtMSwKKyAgICAweDEuY2Q5N2E4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS4zNzk2NGVmZmZmNzc4OTU3YjE2YjQyMDhhZjc3YTliOXAtMSwKKyAgICAtMHgxLmNkOTdhOHAtMworICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS5lZjc4ZTIwYWVlNDMwMzA3MjhhZjA2NDk1ZWU2NmQ4N3AtMTQsCisgICAgMHgxLmNmZmZmZXAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAtMHgxLmVmNzhlMjBhZWU0MzAzMDcyOGFmMDY0OTVlZTY2ZDg3cC0xNCwKKyAgICAtMHgxLmNmZmZmZXAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuZjA2MGNlZmY4ZGI4M2YyZjg3MDc3YjkzOGEwZGU2N2ZwLTEsCisgICAgMHgxLmQyOGNjNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEuZjA2MGNlZmY4ZGI4M2YyZjg3MDc3YjkzOGEwZGU2N2ZwLTEsCisgICAgLTB4MS5kMjhjYzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuZjBkMjgyZmY4NmJhMjgyOGFmZjEwOThhNzU2M2ZjNWJwLTEsCisgICAgMHgxLmQzY2RhYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEuZjBkMjgyZmY4NmJhMjgyOGFmZjEwOThhNzU2M2ZjNWJwLTEsCisgICAgLTB4MS5kM2NkYWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuZjFhODkyMzY3MTljZDkxZmNlNjNlY2FjMTlhNTNkNTZwMCwKKyAgICAweDEuZDYyYjVhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMHgxLmYxYTg5MjM2NzE5Y2Q5MWZjZTYzZWNhYzE5YTUzZDU2cDAsCisgICAgLTB4MS5kNjJiNWFwMgorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS5mMWMyYmZjMDM4NjMxNWM1MDFlMzllM2FjMTljNDI3OXAtMSwKKyAgICAweDEuZDY3NTkwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS5mMWMyYmZjMDM4NjMxNWM1MDFlMzllM2FjMTljNDI3OXAtMSwKKyAgICAtMHgxLmQ2NzU5MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDB4MS5mMnAtNCwKKyAgICAweDEuZDcyMzUycC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuZjJwLTQsCisgICAgLTB4MS5kNzIzNTJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLmYyMWMyMDM1NTc4NThhN2YxYzc4YjBjYjE0NzE4ZmEwcDAsCisgICAgMHgxLmQ3NzMyYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS5mMjFjMjAzNTU3ODU4YTdmMWM3OGIwY2IxNDcxOGZhMHAwLAorICAgIC0weDEuZDc3MzJhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuZjIxY2Y0Mzg5ZDU5OWVjNTAyMmI4NzZlOWRhYjgxNDJwLTgsCisgICAgMHgxLmQ3NzU4NHAtMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLmYyMWNmNDM4OWQ1OTllYzUwMjJiODc2ZTlkYWI4MTQycC04LAorICAgIC0weDEuZDc3NTg0cC0yMgorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS5mMjUwYTEwNTI4ZmQzY2Y3NTUyZTY1ZGY3YTQ5NTZmN3AyLAorICAgIDB4MS5kODA4NGVwOAorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuZjI1MGExMDUyOGZkM2NmNzU1MmU2NWRmN2E0OTU2ZjdwMiwKKyAgICAtMHgxLmQ4MDg0ZXA4CisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLjhiZTYwZjAwMDA4N2E3YzI4NWQxMjQxNmQwYjBjYjk2cC01LAorICAgIDB4MS5kOTZhNGFwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS44YmU2MGYwMDAwODdhN2MyODVkMTI0MTZkMGIwY2I5NnAtNSwKKyAgICAtMHgxLmQ5NmE0YXAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAweDEuM2E3YmI4ZmZmZjc3Y2U3NWNmZTMzZWNhMTQ5YTZhNTBwLTEsCisgICAgMHgxLmRhOTU2Y3AtMworICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEuM2E3YmI4ZmZmZjc3Y2U3NWNmZTMzZWNhMTQ5YTZhNTBwLTEsCisgICAgLTB4MS5kYTk1NmNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuZjU0NzdhZmNmMzIwYmQ0NmEyOGEyMmRiMDg5Njk2OGVwMCwKKyAgICAweDEuZTA4MWE0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAtMHgxLmY1NDc3YWZjZjMyMGJkNDZhMjhhMjJkYjA4OTY5NjhlcDAsCisgICAgLTB4MS5lMDgxYTRwMgorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS5mNjNlMGFmZjg3Y2YxNjQ4Njg3ZmVjOTIwZjQwYWMxYXAtMywKKyAgICAweDEuZTM0ODBhcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS5mNjNlMGFmZjg3Y2YxNjQ4Njg3ZmVjOTIwZjQwYWMxYXAtMywKKyAgICAtMHgxLmUzNDgwYXAtNworICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS5mNjRkNzhmZjgzYmRlY2RkNmFiYmJiNWMyNzg0NzZjMnAyLAorICAgIDB4MS5lMzc0OTZwOAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuZjY0ZDc4ZmY4M2JkZWNkZDZhYmJiYjVjMjc4NDc2YzJwMiwKKyAgICAtMHgxLmUzNzQ5NnA4CisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLmY2N2RiYzFlNjI1MDg5N2IwZTkwYWExZDAxZDIyMmM3cC0xNCwKKyAgICAweDEuZTNmZmZlcC00MAorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuZjY3ZGJjMWU2MjUwODk3YjBlOTBhYTFkMDFkMjIyYzdwLTE0LAorICAgIC0weDEuZTNmZmZlcC00MAorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS5mNjk2YTZmZjkyODAwNDUwODc4OTY4NDJiNmVkNTYxNHAwLAorICAgIDB4MS5lNDQ4MDJwMgorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIC0weDEuZjY5NmE2ZmY5MjgwMDQ1MDg3ODk2ODQyYjZlZDU2MTRwMCwKKyAgICAtMHgxLmU0NDgwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLmY2YjZlNGZmNGE5Mzg2NTE3MDU1NjkwOTE2MDNkZTE1cDAsCisgICAgMHgxLmU0YTUzY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgLTB4MS5mNmI2ZTRmZjRhOTM4NjUxNzA1NTY5MDkxNjAzZGUxNXAwLAorICAgIC0weDEuZTRhNTNjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuM2RlNmQ1MDAyOWM1YmJmODg4ZTY3YmFlMTQ4Nzk4MzNwLTEsCisgICAgMHgxLmVhM2E4MHAtMworICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuM2RlNmQ1MDAyOWM1YmJmODg4ZTY3YmFlMTQ4Nzk4MzNwLTEsCisgICAgLTB4MS5lYTNhODBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuZmM1ZmM1ZDBhZDA3ZjM4ZWM5YjE3YjFmN2Q0ZTE3MTdwMCwKKyAgICAweDEuZjUzMmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAtMHgxLmZjNWZjNWQwYWQwN2YzOGVjOWIxN2IxZjdkNGUxNzE3cDAsCisgICAgLTB4MS5mNTMyZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS5mYzdkNjVkMGY2YjE3NGFkZjg2MGI5ZGU2MGNlN2IyNHAtMSwKKyAgICAweDEuZjU4YWEycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS5mYzdkNjVkMGY2YjE3NGFkZjg2MGI5ZGU2MGNlN2IyNHAtMSwKKyAgICAtMHgxLmY1OGFhMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS40MGQ5ZGYyODRiZGJkZGJjODc3NzI3MDNiZmM5NTY0NXAtNDIsCisgICAgMHgxLmY3ZmZmZXAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS40MGQ5ZGYyODRiZGJkZGJjODc3NzI3MDNiZmM5NTY0NXAtNDIsCisgICAgLTB4MS5mN2ZmZmVwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS45NDUxMjBmZmZmNzdmNGQ3ZTY4ZjE3YTQzZGExOTIwNXAtMSwKKyAgICAweDEuZjg0MmYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS45NDUxMjBmZmZmNzdmNGQ3ZTY4ZjE3YTQzZGExOTIwNXAtMSwKKyAgICAtMHgxLmY4NDJmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIDB4MS5mZDkyNjI3ZWE5NzY4OWFmYWM0MDM5ODY5ZjAwZTRhZXAtNDMsCisgICAgMHgxLmY4YmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTB4MS5mZDkyNjI3ZWE5NzY4OWFmYWM0MDM5ODY5ZjAwZTRhZXAtNDMsCisgICAgLTB4MS5mOGJmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS5mZWZmN2VlOTk0MDhjOWIyMjJkODVkNDRkNzJkNjg3ZnAtMTQsCisgICAgMHgxLmZjZmZmZXAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLmZlZmY3ZWU5OTQwOGM5YjIyMmQ4NWQ0NGQ3MmQ2ODdmcC0xNCwKKyAgICAtMHgxLmZjZmZmZXAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAweDEuNDIxN2NiMDQ3MjQxZmVlYjc4YzlhNzg1OTFmN2JjNzJwLTQyLAorICAgIDB4MS5mZGRmZmVwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuNDIxN2NiMDQ3MjQxZmVlYjc4YzlhNzg1OTFmN2JjNzJwLTQyLAorICAgIC0weDEuZmRkZmZlcC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuZmZmYTUzZWZlOWViZjc1ZDZlMTE0ZGI4MTQ2MWRjN2VwLTQzLAorICAgIDB4MS5mZmVlZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0weDEuZmZmYTUzZWZlOWViZjc1ZDZlMTE0ZGI4MTQ2MWRjN2VwLTQzLAorICAgIC0weDEuZmZlZWZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEuOTY1Y2JkMDYzMTNiMWQ4MjNlOTZkNWM0NzM3MjIxZmJwMTMsCisgICAgMHgxLmZmZjNmZXA0MAorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0weDEuOTY1Y2JkMDYzMTNiMWQ4MjNlOTZkNWM0NzM3MjIxZmJwMTMsCisgICAgLTB4MS5mZmYzZmVwNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuNDI4OTczMDZmNDZiODg3YjZlYjg5ZDliNTAyZTE3ODJwLTIsCisgICAgMHgxLmZmZmM3ZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0weDEuNDI4OTczMDZmNDZiODg3YjZlYjg5ZDliNTAyZTE3ODJwLTIsCisgICAgLTB4MS5mZmZjN2VwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAweDEuNDI4OTczMDZmNDZiODg3YjZlYjg5ZDliNTAyZTE3ODJwLTQyLAorICAgIDB4MS5mZmZjN2VwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuNDI4OTczMDZmNDZiODg3YjZlYjg5ZDliNTAyZTE3ODJwLTQyLAorICAgIC0weDEuZmZmYzdlcC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuOTY1ZmI3MDA1ZGNmYTVkYWY5MmUzZWJjMjU1MTgzYzJwMTMsCisgICAgMHgxLmZmZmYzZXA0MAorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuOTY1ZmI3MDA1ZGNmYTVkYWY5MmUzZWJjMjU1MTgzYzJwMTMsCisgICAgLTB4MS5mZmZmM2VwNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuZmZmZmYzZmZmZmI3ZmZmZDJmZmZkZTNmZmU0MjdmZTdwLTQyLAorICAgIDB4MS5mZmZmZGNwLTEyNAorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEuZmZmZmYzZmZmZmI3ZmZmZDJmZmZkZTNmZmU0MjdmZTdwLTQyLAorICAgIC0weDEuZmZmZmRjcC0xMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuZmZmZmZkZmZmZmZkZmZmZmZjYWFhYWEzZmZmZmYxNTVwLTE0LAorICAgIDB4MS5mZmZmZmFwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgLTB4MS5mZmZmZmRmZmZmZmRmZmZmZmNhYWFhYTNmZmZmZjE1NXAtMTQsCisgICAgLTB4MS5mZmZmZmFwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLjk2NWZlOTQ0ZWM0NmRiYWEwNGQwZTI4MTJjZmJlZmIwcC00MiwKKyAgICAweDEuZmZmZmZjcC0xMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAtMHgxLjk2NWZlOTQ0ZWM0NmRiYWEwNGQwZTI4MTJjZmJlZmIwcC00MiwKKyAgICAtMHgxLmZmZmZmY3AtMTI1CisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgMHgxLjU1OTg0YjAwMDA4NTY2NzViYWI1ZjE2OGYyZTUzYjFhcC0xLAorICAgIDB4MS4zMDFhZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAtMHgxLjU1OTg0YjAwMDA4NTY2NzViYWI1ZjE2OGYyZTUzYjFhcC0xLAorICAgIC0weDEuMzAxYWZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIC0weDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS4wY2U5ZDU0OWM1ODMyOTk5ODFmZDcxZmY0ZmI5OTU0MnAwLAorICAgIDB4MS4yOGJhMmVwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIC0weDEuMGNlOWQ1NDljNTgzMjk5OTgxZmQ3MWZmNGZiOTk1NDJwMCwKKyAgICAtMHgxLjI4YmEyZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMHgxLjE4YjE2ZWJhZjNjYjM3OWZhZTljYTcxMjRlZDc5Y2ZmcDAsCisgICAgMHgxLjUxNzQ1Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgLTB4MS4xOGIxNmViYWYzY2IzNzlmYWU5Y2E3MTI0ZWQ3OWNmZnAwLAorICAgIC0weDEuNTE3NDVjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAweDEuMjM4ZjJjMThkMDk5MzNlMTkwMTQ2NjNjNTY2MjcwZmNwMCwKKyAgICAweDEuN2EyZThhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMHgxLjIzOGYyYzE4ZDA5OTMzZTE5MDE0NjYzYzU2NjI3MGZjcDAsCisgICAgLTB4MS43YTJlOGFwMAorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS4yZGFiYjc1ZThhY2I5MTQ0ZjZiNTJjZGE0MjBmZWZhYXAwLAorICAgIDB4MS5hMmU4YjhwMAorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIC0weDEuMmRhYmI3NWU4YWNiOTE0NGY2YjUyY2RhNDIwZmVmYWFwMCwKKyAgICAtMHgxLmEyZThiOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgMHgxLjM3MjU3OTVmN2RkZjFlNzg3MjllNDRhMTdlNTNkNjFlcDAsCisgICAgMHgxLmNiYTJlNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgLTB4MS4zNzI1Nzk1ZjdkZGYxZTc4NzI5ZTQ0YTE3ZTUzZDYxZXAwLAorICAgIC0weDEuY2JhMmU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEuNDAxM2RhMTMzNDRhYjQ2ZDQxMzdkYTMwOGIzM2NmMDlwMCwKKyAgICAweDEuZjQ1ZDE0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAtMHgxLjQwMTNkYTEzMzQ0YWI0NmQ0MTM3ZGEzMDhiMzNjZjA5cDAsCisgICAgLTB4MS5mNDVkMTRwMAorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS40ODg5NGJmNDdmMGQ1MTZkOTg4MGM4NWRhZWEyYmEwZXAwLAorICAgIDB4MS4wZThiYTJwMQorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0weDEuNDg4OTRiZjQ3ZjBkNTE2ZDk4ODBjODVkYWVhMmJhMGVwMCwKKyAgICAtMHgxLjBlOGJhMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMHgxLjUwOTRhMWM0ZjM0M2JkNTc0N2RkZDQyOGEyZTIxNzI2cDAsCisgICAgMHgxLjIyZThiYXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS41MDk0YTFjNGYzNDNiZDU3NDdkZGQ0MjhhMmUyMTcyNnAwLAorICAgIC0weDEuMjJlOGJhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEuNTg0MWY4Zjk5YTI1YmYxYzMzZmVkMDA1OWY0NDlmMTJwMCwKKyAgICAweDEuMzc0NWQycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAtMHgxLjU4NDFmOGY5OWEyNWJmMWMzM2ZlZDAwNTlmNDQ5ZjEycDAsCisgICAgLTB4MS4zNzQ1ZDJwMQorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS41ZjliNWM4OWI2NzIzYTQ3NDBiMDJkMDBlNjNlZDhjNXAwLAorICAgIDB4MS40YmEyZWFwMQorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIC0weDEuNWY5YjVjODliNjcyM2E0NzQwYjAyZDAwZTYzZWQ4YzVwMCwKKyAgICAtMHgxLjRiYTJlYXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLjY2YTkzYTM5ODgxNDgzNWJmNjRiZDk1NDUzMGMyZTI0cDAsCisgICAgMHgxLjYwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTB4MS42NmE5M2EzOTg4MTQ4MzViZjY0YmQ5NTQ1MzBjMmUyNHAwLAorICAgIC0weDEuNjAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEuNmQ3MmI4YzEyZjE5N2NjZDJhODkxZGNlMmIzNDIwY2NwMCwKKyAgICAweDEuNzQ1ZDFhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAtMHgxLjZkNzJiOGMxMmYxOTdjY2QyYTg5MWRjZTJiMzQyMGNjcDAsCisgICAgLTB4MS43NDVkMWFwMQorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS43M2ZkZjg1MDFlOWY1MTMxNWNkOTIwOGFlYjBkZjVmZHAwLAorICAgIDB4MS44OGJhMzJwMQorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIC0weDEuNzNmZGY4NTAxZTlmNTEzMTVjZDkyMDhhZWIwZGY1ZmRwMCwKKyAgICAtMHgxLjg4YmEzMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLjdhNTA0M2IwYzI1MDYyYzNhNzdmMDEyMDQxZWQwZGQzcDAsCisgICAgMHgxLjlkMTc0YXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgLTB4MS43YTUwNDNiMGMyNTA2MmMzYTc3ZjAxMjA0MWVkMGRkM3AwLAorICAgIC0weDEuOWQxNzRhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEuODA2ZTM2NDgzNzBkMDEwNzQzMGU2OWJlNTFiYTYxODFwMCwKKyAgICAweDEuYjE3NDYycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAtMHgxLjgwNmUzNjQ4MzcwZDAxMDc0MzBlNjliZTUxYmE2MTgxcDAsCisgICAgLTB4MS5iMTc0NjJwMQorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS44NjViZDlkZWZmZGIxMDA5ODExMDFhN2JiMzcxYzZiOHAwLAorICAgIDB4MS5jNWQxN2FwMQorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIC0weDEuODY1YmQ5ZGVmZmRiMTAwOTgxMTAxYTdiYjM3MWM2YjhwMCwKKyAgICAtMHgxLmM1ZDE3YXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjhjMWNiZTQyNzUwMmRjZjBlNWRkYWE2Y2RlODIyZTFmcDAsCisgICAgMHgxLmRhMmU5MnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgLTB4MS44YzFjYmU0Mjc1MDJkY2YwZTVkZGFhNmNkZTgyMmUxZnAwLAorICAgIC0weDEuZGEyZTkycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuOTFiNDBjMzk3MGZhNDViNDVlMWVjNGYxODAzNjZhNjNwMCwKKyAgICAweDEuZWU4YmFhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAtMHgxLjkxYjQwYzM5NzBmYTQ1YjQ1ZTFlYzRmMTgwMzY2YTYzcDAsCisgICAgLTB4MS5lZThiYWFwMQorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS45NzI0OTQ1OTIxNDg0YjlmNWViNWRlZDQzYjg0ZDBhNnAwLAorICAgIDB4MS4wMTc0NjBwMgorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIC0weDEuOTcyNDk0NTkyMTQ4NGI5ZjVlYjVkZWQ0M2I4NGQwYTZwMCwKKyAgICAtMHgxLjAxNzQ2MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLjljNzBkZGIzMTE4Njg1NzcwZjliOWYyZWQ0NzRhOWQwcDAsCisgICAgMHgxLjBiYTJlY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgLTB4MS45YzcwZGRiMzExODY4NTc3MGY5YjlmMmVkNDc0YTlkMHAwLAorICAgIC0weDEuMGJhMmVjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuYTE5YjJjZmI5OGQ2Yjk4ZmNhNDg3YjQwMDc4ZjYwZjhwMCwKKyAgICAweDEuMTVkMTc4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAtMHgxLmExOWIyY2ZiOThkNmI5OGZjYTQ4N2I0MDA3OGY2MGY4cDAsCisgICAgLTB4MS4xNWQxNzhwMgorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS5hNmE1OGY0YWNkMjgzMGNjZjQ2MTA2OGJkNzhiNDNkZnAwLAorICAgIDB4MS4yMDAwMDRwMgorICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIC0weDEuYTZhNThmNGFjZDI4MzBjY2Y0NjEwNjhiZDc4YjQzZGZwMCwKKyAgICAtMHgxLjIwMDAwNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLmFiOTFlMGM0ZDdiZWIyZGUwMzNlYjA2Yzk3ZmYyNjIzcDAsCisgICAgMHgxLjJhMmU5MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgLTB4MS5hYjkxZTBjNGQ3YmViMmRlMDMzZWIwNmM5N2ZmMjYyM3AwLAorICAgIC0weDEuMmEyZTkwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuYjA2MWQyYWE1MTdhOTI3MWUxMWYyOTI3MGJlMjc1YzJwMCwKKyAgICAweDEuMzQ1ZDFjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAtMHgxLmIwNjFkMmFhNTE3YTkyNzFlMTFmMjkyNzBiZTI3NWMycDAsCisgICAgLTB4MS4zNDVkMWNwMgorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS5iNTE2ZjA3YmRhNGFhZjNjYmI4NDlkZWQ4MTMzNTI0NnAwLAorICAgIDB4MS4zZThiYThwMgorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIC0weDEuYjUxNmYwN2JkYTRhYWYzY2JiODQ5ZGVkODEzMzUyNDZwMCwKKyAgICAtMHgxLjNlOGJhOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLmI5YjJhNDViNjM4MzRiZTdlOTIwNjhmNGVmZjdkMjFmcDAsCisgICAgMHgxLjQ4YmEzNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgLTB4MS5iOWIyYTQ1YjYzODM0YmU3ZTkyMDY4ZjRlZmY3ZDIxZnAwLAorICAgIC0weDEuNDhiYTM0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuYmUzNjNhY2NmNGUwN2ZhNzI4YzM1Y2IwNDQ1ZjA1NmJwMCwKKyAgICAweDEuNTJlOGMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAtMHgxLmJlMzYzYWNjZjRlMDdmYTcyOGMzNWNiMDQ0NWYwNTZicDAsCisgICAgLTB4MS41MmU4YzBwMgorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS5jMmEyZTVmMWZmYWU0NzM2OTUyOGRkNmJhZjM5MTY1ZHAwLAorICAgIDB4MS41ZDE3NGNwMgorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIC0weDEuYzJhMmU1ZjFmZmFlNDczNjk1MjhkZDZiYWYzOTE2NWRwMCwKKyAgICAtMHgxLjVkMTc0Y3AyCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLmM2ZjljMDU1MWJiMmEyNThkNmEzOTZjYTUyNjE1NzQ5cDAsCisgICAgMHgxLjY3NDVkOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgLTB4MS5jNmY5YzA1NTFiYjJhMjU4ZDZhMzk2Y2E1MjYxNTc0OXAwLAorICAgIC0weDEuNjc0NWQ4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuY2IzYmNmNTdmMTVmZjE0YTAyZjY5YjQyMjEzZWU1YzZwMCwKKyAgICAweDEuNzE3NDY0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAtMHgxLmNiM2JjZjU3ZjE1ZmYxNGEwMmY2OWI0MjIxM2VlNWM2cDAsCisgICAgLTB4MS43MTc0NjRwMgorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS5jZjZhMDU1MWQ4NWIxMjE0NGFlMTM3N2E2YTliNzJiMnAwLAorICAgIDB4MS43YmEyZjBwMgorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIC0weDEuY2Y2YTA1NTFkODViMTIxNDRhZTEzNzdhNmE5YjcyYjJwMCwKKyAgICAtMHgxLjdiYTJmMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLmQzODU0MzZiMWRkZTg4M2UzOWM0ODBkNzEwMjM2OTQxcDAsCisgICAgMHgxLjg1ZDE3Y3AyCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgLTB4MS5kMzg1NDM2YjFkZGU4ODNlMzljNDgwZDcxMDIzNjk0MXAwLAorICAgIC0weDEuODVkMTdjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuZDc4ZTViM2VkNjA2ZjNjYjEzYTkxZjEzNTdmOTE2NTdwMCwKKyAgICAweDEuOTAwMDA4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAtMHgxLmQ3OGU1YjNlZDYwNmYzY2IxM2E5MWYxMzU3ZjkxNjU3cDAsCisgICAgLTB4MS45MDAwMDhwMgorICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDB4MS5kYjg2MTA0YjcwZWU3N2Q2Mzg3YWQwM2Y1YTQ0YzZiM3AwLAorICAgIDB4MS45YTJlOTRwMgorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuZGI4NjEwNGI3MGVlNzdkNjM4N2FkMDNmNWE0NGM2YjNwMCwKKyAgICAtMHgxLjlhMmU5NHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgMHgxLmRmNmQxOTM4ZjJkMjg1NjcyYmEwMjM4MzdjNzY1MGEzcDAsCisgICAgMHgxLmE0NWQyMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgLTB4MS5kZjZkMTkzOGYyZDI4NTY3MmJhMDIzODM3Yzc2NTBhM3AwLAorICAgIC0weDEuYTQ1ZDIwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEuZTM0NDIwZmE5NDhjMmQ1ZmM4Y2UzMGU3NTM0MzMxNWJwMCwKKyAgICAweDEuYWU4YmFjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLmUzNDQyMGZhOTQ4YzJkNWZjOGNlMzBlNzUzNDMzMTVicDAsCisgICAgLTB4MS5hZThiYWNwMgorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS5lNzBiYzdkMGFhNmY5YThjMWE5MGJkZmQyMzk0NDE2MHAwLAorICAgIDB4MS5iOGJhMzhwMgorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEuZTcwYmM3ZDBhYTZmOWE4YzFhOTBiZGZkMjM5NDQxNjBwMCwKKyAgICAtMHgxLmI4YmEzOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLmVhYzRhNDJlZjExY2FhYmRiZjQ4NTM0NmJiODVkY2E5cDAsCisgICAgMHgxLmMyZThjNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgLTB4MS5lYWM0YTQyZWYxMWNhYWJkYmY0ODUzNDZiYjg1ZGNhOXAwLAorICAgIC0weDEuYzJlOGM0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEuZWU2ZjQzOGFjMjAxY2M4M2MzNTUxZWMzZWM4OGY3NjVwMCwKKyAgICAweDEuY2QxNzUwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAtMHgxLmVlNmY0MzhhYzIwMWNjODNjMzU1MWVjM2VjODhmNzY1cDAsCisgICAgLTB4MS5jZDE3NTBwMgorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDB4MS5mMjBjMmIxNDJlMTE0MWY5NDRhNWJkNDM2Zjg5OWZkOHAwLAorICAgIDB4MS5kNzQ1ZGNwMgorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0weDEuZjIwYzJiMTQyZTExNDFmOTQ0YTViZDQzNmY4OTlmZDhwMCwKKyAgICAtMHgxLmQ3NDVkY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLmY1OWJkODVjOGY4MDYwMGY5YTkwOTFhYzRhZTY5YjJicDAsCisgICAgMHgxLmUxNzQ2OHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgLTB4MS5mNTliZDg1YzhmODA2MDBmOWE5MDkxYWM0YWU2OWIyYnAwLAorICAgIC0weDEuZTE3NDY4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuZjkxZWMxZWNjNzY5OWVhOTA4YjNkYzkxYmIyMTE3ZDdwMCwKKyAgICAweDEuZWJhMmY0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAtMHgxLmY5MWVjMWVjYzc2OTllYTkwOGIzZGM5MWJiMjExN2Q3cDAsCisgICAgLTB4MS5lYmEyZjRwMgorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDB4MS5mYzk1NTdjZDBlYWVlMDMzNzZhMGRmNmQxYmE1ZDUwMXAwLAorICAgIDB4MS5mNWQxODBwMgorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEuZmM5NTU3Y2QwZWFlZTAzMzc2YTBkZjZkMWJhNWQ1MDFwMCwKKyAgICAtMHgxLmY1ZDE4MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgMHgxLnAxLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIC0weDEucDEsCisgICAgLTB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIDB4MS40MjhhMmY5OGQ3MjhhZTIyM2RkYWI3MTViZTI1MGQwY3AzMywKKyAgICAweDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIC0weDEuNDI4YTJmOThkNzI4YWUyMjNkZGFiNzE1YmUyNTBkMGNwMzMsCisgICAgLTB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgMHgxLjRjZjM4ZmNhMGFiMWQwZGQ1ZTNmOGIxMGRmN2RlODlkcDMzLAorICAgIDB4MS4xOTk5OWFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgLTB4MS40Y2YzOGZjYTBhYjFkMGRkNWUzZjhiMTBkZjdkZTg5ZHAzMywKKyAgICAtMHgxLjE5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuNTZiZmVhYjMxYTFlOWQ1M2U3NTI2MWUwZjcxNDkyN2JwMzMsCisgICAgMHgxLjMzMzMzNHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAtMHgxLjU2YmZlYWIzMWExZTlkNTNlNzUyNjFlMGY3MTQ5MjdicDMzLAorICAgIC0weDEuMzMzMzM0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS42MDA0ODNkMjI0ZjI0NTljYmU5YTY5MTUxMTUxYzkwOHAzMywKKyAgICAweDEuNGNjY2NlcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIC0weDEuNjAwNDgzZDIyNGYyNDU5Y2JlOWE2OTE1MTE1MWM5MDhwMzMsCisgICAgLTB4MS40Y2NjY2VwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMHgxLjY4ZDI1YjI1NTNmY2NkMTgwYWYxMGVlYzY2MGVhZDRkcDMzLAorICAgIDB4MS42NjY2NjhwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgLTB4MS42OGQyNWIyNTUzZmNjZDE4MGFmMTBlZWM2NjBlYWQ0ZHAzMywKKyAgICAtMHgxLjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuNzEzNzQ1MzUzYzdmNWQ2MTI1NzA1YjA2OWVjNDUyYjhwMzMsCisgICAgMHgxLjgwMDAwMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAtMHgxLjcxMzc0NTM1M2M3ZjVkNjEyNTcwNWIwNjllYzQ1MmI4cDMzLAorICAgIC0weDEuODAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS43OTNlYWQ5ZTQyOTg3MmUyYjNmZTYxOWY3ZjI1MTUzY3AzMywKKyAgICAweDEuOTk5OTljcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIC0weDEuNzkzZWFkOWU0Mjk4NzJlMmIzZmU2MTlmN2YyNTE1M2NwMzMsCisgICAgLTB4MS45OTk5OWNwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgMHgxLjgwZjIyMWRkMzcwZmVjYTdjN2VmYmU0OTZhODRlZTIycDMzLAorICAgIDB4MS5iMzMzMzZwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgLTB4MS44MGYyMjFkZDM3MGZlY2E3YzdlZmJlNDk2YTg0ZWUyMnAzMywKKyAgICAtMHgxLmIzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEuODg1OWI2YTVmZjQ5OWYzMTMzOGIxMTA3NmZiNDU3YmFwMzMsCisgICAgMHgxLmNjY2NkMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAtMHgxLjg4NTliNmE1ZmY0OTlmMzEzMzhiMTEwNzZmYjQ1N2JhcDMzLAorICAgIC0weDEuY2NjY2QwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIDB4MS44ZjdjNTM2MDRlYmMzYTEyNjdlYjYwODM0NjRhYzNhNnAzMywKKyAgICAweDEuZTY2NjZhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIC0weDEuOGY3YzUzNjA0ZWJjM2ExMjY3ZWI2MDgzNDY0YWMzYTZwMzMsCisgICAgLTB4MS5lNjY2NmFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgMHgxLjk2NWZlYTUzZDZlM2M4MmIwNTk5OWFiNDNkYzRkZWYxcDMzLAorICAgIDB4MS5wMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgLTB4MS45NjVmZWE1M2Q2ZTNjODJiMDU5OTlhYjQzZGM0ZGVmMXAzMywKKyAgICAtMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuOTY1ZmU5Y2M2MTk1N2YxMTlmODlkMDhhODkxODQ4MWVwMCwKKyAgICAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAtMHgxLjk2NWZlOWNjNjE5NTdmMTE5Zjg5ZDA4YTg5MTg0ODFlcDAsCisgICAgLTB4MS5mZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIDB4MS45NjVmZWE1M2Q2ZTNjODJiMDU5OTlhYjQzZGM0ZGVmMXAwLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIC0weDEuOTY1ZmVhNTNkNmUzYzgyYjA1OTk5YWI0M2RjNGRlZjFwMCwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgMHgxLjk2NWZlYjYyYzE3ZjRiNzMzNjE3Y2NjNTY5MDllOWY5cDAsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgLTB4MS45NjVmZWI2MmMxN2Y0YjczMzYxN2NjYzU2OTA5ZTlmOXAwLAorICAgIC0weDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuNDI4YTJmMmQ1M2MzNTc1OTYzZDExYzlkZjVkOWFkODNwMCwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzkKKyAgICAtMHgxLjQyOGEyZjJkNTNjMzU3NTk2M2QxMWM5ZGY1ZDlhZDgzcDAsCisgICAgLTB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIDB4MS40MjhhMmY5OGQ3MjhhZTIyM2RkYWI3MTViZTI1MGQwY3AwLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIC0weDEuNDI4YTJmOThkNzI4YWUyMjNkZGFiNzE1YmUyNTBkMGNwMCwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzQyCisgICAgMHgxLjQyOGEzMDZmZGRmMjg0YWQyN2ZmN2NjYjc5YWFiZjNjcDAsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzQzCisgICAgLTB4MS40MjhhMzA2ZmRkZjI4NGFkMjdmZjdjY2I3OWFhYmYzY3AwLAorICAgIC0weDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuZmZmZmZmNTU1NTU1MWM3MWM2ZmNkNmU5Y2I1MzM5ZTFwLTEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIC0weDEuZmZmZmZmNTU1NTU1MWM3MWM2ZmNkNmU5Y2I1MzM5ZTFwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ3CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgMHgxLjAwMDAwMGFhYWFhYTM4ZTM4ZWI3NGYwMjgwODZkOWZjcDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgLTB4MS4wMDAwMDBhYWFhYWEzOGUzOGViNzRmMDI4MDg2ZDlmY3AwLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAweDEuOTY1ZmU5Y2M2MTk1N2YxMTlmODlkMDhhODkxODQ4MWVwLTEsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIC0weDEuOTY1ZmU5Y2M2MTk1N2YxMTlmODlkMDhhODkxODQ4MWVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTIKKyAgICAweDEuOTY1ZmVhNTNkNmUzYzgyYjA1OTk5YWI0M2RjNGRlZjFwLTEsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIC0weDEuOTY1ZmVhNTNkNmUzYzgyYjA1OTk5YWI0M2RjNGRlZjFwLTEsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuOTY1ZmViNjJjMTdmNGI3MzM2MTdjY2M1NjkwOWU5ZjlwLTEsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIC0weDEuOTY1ZmViNjJjMTdmNGI3MzM2MTdjY2M1NjkwOWU5ZjlwLTEsCisgICAgLTB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAweDEuNDI4YTJmMmQ1M2MzNTc1OTYzZDExYzlkZjVkOWFkODNwLTEsCisgICAgMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDM1NworICAgIC0weDEuNDI4YTJmMmQ1M2MzNTc1OTYzZDExYzlkZjVkOWFkODNwLTEsCisgICAgLTB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAweDEuNDI4YTJmOThkNzI4YWUyMjNkZGFiNzE1YmUyNTBkMGNwLTEsCisgICAgMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIC0weDEuNDI4YTJmOThkNzI4YWUyMjNkZGFiNzE1YmUyNTBkMGNwLTEsCisgICAgLTB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAweDEuNDI4YTMwNmZkZGYyODRhZDI3ZmY3Y2NiNzlhYWJmM2NwLTEsCisgICAgMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIC0weDEuNDI4YTMwNmZkZGYyODRhZDI3ZmY3Y2NiNzlhYWJmM2NwLTEsCisgICAgLTB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuZmZmZmZmNTU1NTU1MWM3MWM2ZmNkNmU5Y2I1MzM5ZTFwLTIsCisgICAgMHgxLmZmZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDM2MworICAgIC0weDEuZmZmZmZmNTU1NTU1MWM3MWM2ZmNkNmU5Y2I1MzM5ZTFwLTIsCisgICAgLTB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEucC0xLAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAtMHgxLnAtMSwKKyAgICAtMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIDB4MS4wMDAwMDBhYWFhYWEzOGUzOGViNzRmMDI4MDg2ZDlmY3AtMSwKKyAgICAweDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgLTB4MS4wMDAwMDBhYWFhYWEzOGUzOGViNzRmMDI4MDg2ZDlmY3AtMSwKKyAgICAtMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS45NjVmZTljYzYxOTU3ZjExOWY4OWQwOGE4OTE4NDgxZXAtMiwKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgLTB4MS45NjVmZTljYzYxOTU3ZjExOWY4OWQwOGE4OTE4NDgxZXAtMiwKKyAgICAtMHgxLmZmZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIDB4MS45NjVmZWE1M2Q2ZTNjODJiMDU5OTlhYjQzZGM0ZGVmMXAtMiwKKyAgICAweDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgLTB4MS45NjVmZWE1M2Q2ZTNjODJiMDU5OTlhYjQzZGM0ZGVmMXAtMiwKKyAgICAtMHgxLnAtNAorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIDB4MS45NjVmZWI2MmMxN2Y0YjczMzYxN2NjYzU2OTA5ZTlmOXAtMiwKKyAgICAweDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgLTB4MS45NjVmZWI2MmMxN2Y0YjczMzYxN2NjYzU2OTA5ZTlmOXAtMiwKKyAgICAtMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS40MjhhMmYyZDUzYzM1NzU5NjNkMTFjOWRmNWQ5YWQ4M3AtMiwKKyAgICAweDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgLTB4MS40MjhhMmYyZDUzYzM1NzU5NjNkMTFjOWRmNWQ5YWQ4M3AtMiwKKyAgICAtMHgxLmZmZmZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIDB4MS40MjhhMmY5OGQ3MjhhZTIyM2RkYWI3MTViZTI1MGQwY3AtMiwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgLTB4MS40MjhhMmY5OGQ3MjhhZTIyM2RkYWI3MTViZTI1MGQwY3AtMiwKKyAgICAtMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS40MjhhMzA2ZmRkZjI4NGFkMjdmZjdjY2I3OWFhYmYzY3AtMiwKKyAgICAweDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMzc5CisgICAgLTB4MS40MjhhMzA2ZmRkZjI4NGFkMjdmZjdjY2I3OWFhYmYzY3AtMiwKKyAgICAtMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDM4MAorICAgIDB4MS5mZmZmZmY1NTU1NTUxYzcxYzZmY2Q2ZTljYjUzMzllMXAtMywKKyAgICAweDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgLTB4MS5mZmZmZmY1NTU1NTUxYzcxYzZmY2Q2ZTljYjUzMzllMXAtMywKKyAgICAtMHgxLmZmZmZmZXAtNworICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIDB4MS5wLTIsCisgICAgMHgxLnAtNgorICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIC0weDEucC0yLAorICAgIC0weDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgMHgxLjAwMDAwMGFhYWFhYTM4ZTM4ZWI3NGYwMjgwODZkOWZjcC0yLAorICAgIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAtMHgxLjAwMDAwMGFhYWFhYTM4ZTM4ZWI3NGYwMjgwODZkOWZjcC0yLAorICAgIC0weDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgMHgxLjQyOGEyZjk4ZDcyOGFlMjIzZGRhYjcxNWJlMjUwZDBjcC01MCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODcKKyAgICAtMHgxLjQyOGEyZjk4ZDcyOGFlMjIzZGRhYjcxNWJlMjUwZDBjcC01MCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgLTB4MS40MjhhMmY5OGQ3MjhhZTIyM2RkYWI3MTViZTI1MGQwY3AtNTAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDM4OQorICAgIDB4MS40MjhhMmY5OGQ3MjhhZTIyM2RkYWI3MTViZTI1MGQwY3AtNTAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzkwCisgICAgMHgxLjk2NWZlOWNjNjE5NTdmMTE5Zjg5ZDA4YTg5MTg0ODFlcDQyLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzkxCisgICAgLTB4MS45NjVmZTljYzYxOTU3ZjExOWY4OWQwOGE4OTE4NDgxZXA0MiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAtMHgxLjk2NWZlOWNjNjE5NTdmMTE5Zjg5ZDA4YTg5MTg0ODFlcDQyLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM5MworICAgIDB4MS45NjVmZTljYzYxOTU3ZjExOWY4OWQwOGE4OTE4NDgxZXA0MiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAweDEuOTY1ZmU5Y2M2MTk1N2YxMTlmODlkMDhhODkxODQ4MWVwNDIsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAtMHgxLjk2NWZlOWNjNjE5NTdmMTE5Zjg5ZDA4YTg5MTg0ODFlcDQyLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM5OAorICAgIDB4MS45NjVmZTk0NGVjNDZkYmFhMDRkMGUyODEyY2ZiZWZiMHA0MiwKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIC0weDEuOTY1ZmU5NDRlYzQ2ZGJhYTA0ZDBlMjgxMmNmYmVmYjBwNDIsCisgICAgLTB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLjc2ZWY3ZWFkNjk4NTI3MWZlNzYxN2IxZGE1MDY1NTQzcDAsCisgICAgMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDAxCisgICAgLTB4MS43NmVmN2VhZDY5ODUyNzFmZTc2MTdiMWRhNTA2NTU0M3AwLAorICAgIC0weDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDIKKyAgICAweDEuMjk5NjI2N2M1ZGVlZGM0N2I4OGNjYWU2MGFhMjc0MmFwMCwKKyAgICAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAtMHgxLjI5OTYyNjdjNWRlZWRjNDdiODhjY2FlNjBhYTI3NDJhcDAsCisgICAgLTB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIDB4MS5kODYzYTAyNjM5YzgyMjJiYWViMGQ0ODQ5OTFlNTJjZHAtMSwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA1CisgICAgLTB4MS5kODYzYTAyNjM5YzgyMjJiYWViMGQ0ODQ5OTFlNTJjZHAtMSwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIDB4MS5wMSwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICAtMHgxLnAxLAorICAgIC0weDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDgKKyAgICAweDEuNDI4YTJmOThkNzI4YWUyMjNkZGFiNzE1YmUyNTBkMGNwMCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAtMHgxLjQyOGEyZjk4ZDcyOGFlMjIzZGRhYjcxNWJlMjUwZDBjcDAsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIDB4MS4wMDAwMDBhYWFhYWEzOGUzOGViNzRmMDI4MDg2ZDlmY3AwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIC0weDEuMDAwMDAwYWFhYWFhMzhlMzhlYjc0ZjAyODA4NmQ5ZmNwMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIC0weDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIDB4MS5mZmZmZmY1NTU1NTUxYzcxYzZmY2Q2ZTljYjUzMzllMXAtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDE1CisgICAgLTB4MS5mZmZmZmY1NTU1NTUxYzcxYzZmY2Q2ZTljYjUzMzllMXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxNgorICAgIDB4MS4wMDAwMDBhYWFhYWEzOGUzOGViNzRmMDI4MDg2ZDlmY3AtNDIsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNDE3CisgICAgLTB4MS4wMDAwMDBhYWFhYWEzOGUzOGViNzRmMDI4MDg2ZDlmY3AtNDIsCisgICAgLTB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDQxOAorICAgIDB4MS5wLTQyLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIC0weDEucC00MiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgMHgxLmZmZmZmZWFhYWFhOWM3MWM3MGNhNDU4Njk1OThiZmU5cC00MywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjEKKyAgICAtMHgxLmZmZmZmZWFhYWFhOWM3MWM3MGNhNDU4Njk1OThiZmU5cC00MywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDIyCisgICAgMHgxLmZmZmZmZDU1NTU1MWM3MWM2OWUwNjUwZGIyMGE0YjI2cC00MywKKyAgICAweDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAtMHgxLmZmZmZmZDU1NTU1MWM3MWM2OWUwNjUwZGIyMGE0YjI2cC00MywKKyAgICAtMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgMHgxLjk2NWZlYTUzZDZlM2M4MmIwNTk5OWFiNDNkYzRkZWYxcC01MCwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAtMHgxLjk2NWZlYTUzZDZlM2M4MmIwNTk5OWFiNDNkYzRkZWYxcC01MCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNDI2CisgICAgMHgxLjQyOGEyZjk4ZDcyOGFlMjIzZGRhYjcxNWJlMjUwZDBjcC01MCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAtMHgxLjQyOGEyZjk4ZDcyOGFlMjIzZGRhYjcxNWJlMjUwZDBjcC01MCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDI4CisgICAgMC4wLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAtMC4wLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNDMwCisgICAgMHgxLjgwcDEsCisgICAgMHgxLmIwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS5iMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgMHgxLjQwcDIsCisgICAgMHgxLmY0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzMKKyAgICAtMHgxLjQwcDIsCisgICAgLTB4MS5mNHA2CisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvY2VpbF9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvY2VpbF9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzMwOTZhYgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9jZWlsX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDEzMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxkb3VibGUsIGRvdWJsZT4gZ19jZWlsX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS5wMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLnAxLAorICAgIDB4MS43ZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5wMSwKKyAgICAweDEuOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEucDEsCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5wMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEuODBwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuODBwMSwKKyAgICAweDEuM2ZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEuODBwMSwKKyAgICAweDEuNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuODBwMSwKKyAgICAweDEuNDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOGZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuOTRwNiwKKyAgICAweDEuOTAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuOTRwNiwKKyAgICAweDEuOTFmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEuOTRwNiwKKyAgICAweDEuOTIwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS45NHA2LAorICAgIDB4MS45MjAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mM2ZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDBwOQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLmY0ODBwOSwKKyAgICAweDEuZjQwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuZjQ4MHA5LAorICAgIDB4MS5mNDNmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5mNDgwcDksCisgICAgMHgxLmY0NHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuZjQ4MHA5LAorICAgIDB4MS5mNDQwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5wNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS5wNTAsCisgICAgMHgxLjBwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS4wMDAwMDAwMDAwMDA0MHA1MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MAorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLnA1MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLnA1MSwKKyAgICAweDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEucDUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEucDUyLAorICAgIDB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MgorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLnA1MywKKyAgICAweDEuMHA1MworICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUzCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5wNTQsCisgICAgMHgxLjBwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA1NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1NAorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0wLjAsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEucDAsCisgICAgLTB4MS44MDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEucDAsCisgICAgLTB4MS44cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIC0weDEucDAsCisgICAgLTB4MS43ZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEucDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIC0weDEucDEsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIC0weDEucDEsCisgICAgLTB4MS40MDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEucDEsCisgICAgLTB4MS40cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEucDEsCisgICAgLTB4MS4zZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLjhjcDYsCisgICAgLTB4MS44ZmZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkyMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTIwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkxZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDBwOQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5mMzgwcDksCisgICAgLTB4MS5mM2ZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0NDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQ0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0M2ZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS5wNTAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAtMHgxLnA1MCwKKyAgICAtMHgxLjBwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuZmZmZmZmZmZmZmZmODBwNDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLnA1MSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEucDUxLAorICAgIC0weDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHA1MCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwNTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUyCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAtMHgxLnA1MiwKKyAgICAtMHgxLjBwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwNTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDUzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MworICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS5wNTMsCisgICAgLTB4MS4wcDUzCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDUyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MgorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA1NCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIC0weDEucDU0LAorICAgIC0weDEuMHA1NAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA1MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLnAzMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyOQorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLnAzMCwKKyAgICAweDEuMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLjAwMDAwMDA0cDMwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmY3ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjdmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZjgwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmODAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmY5ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZjlmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYTBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZhMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZhMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZiZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZiZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5wMzEsCisgICAgMHgxLmZmZmZmZmZjMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEucDMxLAorICAgIDB4MS5mZmZmZmZmYzAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLnAzMSwKKyAgICAweDEuZmZmZmZmZmRmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5wMzEsCisgICAgMHgxLmZmZmZmZmZkZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEucDMxLAorICAgIDB4MS5mZmZmZmZmZTBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEucDMxLAorICAgIDB4MS5mZmZmZmZmZTAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLnAzMSwKKyAgICAweDEuZmZmZmZmZmUwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS5wMzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEucDMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLnAzMSwKKyAgICAweDEuMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS4wMDAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS4wMDAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS4wMDAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAwMDBmZmZmZXAzMQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS4wMDAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAwMDBmZmZmZnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS4wMDAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAwMDEwcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLjAwMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDAwMTAwMDAxcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLjAwMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDAwMTAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLmZmZmZmZmUwcDMwLAorICAgIDB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgMHgxLmZmZmZmZmU0cDMwLAorICAgIDB4MS5mZmZmZmZlNDBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEuZmZmZmZmZThwMzAsCisgICAgMHgxLmZmZmZmZmU4MHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDB4MS5mZmZmZmZlY3AzMCwKKyAgICAweDEuZmZmZmZmZWMwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLmZmZmZmZmYwcDMwLAorICAgIDB4MS5mZmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLmZmZmZmZmY0cDMwLAorICAgIDB4MS5mZmZmZmZmNDBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmY4MHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLnAzMSwKKyAgICAweDEuMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS4wMDAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAwMDIwcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgLTB4MS5wMzAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS5wMzAsCisgICAgLTB4MS4wcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgLTB4MS5mZmZmZmZmOHAyOSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZjgwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmODAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmY4MHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuZmZmZmZmZjRwMzAsCisgICAgLTB4MS5mZmZmZmZmN2ZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTB4MS5mZmZmZmZmNHAzMCwKKyAgICAtMHgxLmZmZmZmZmY3ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZmEwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmYTAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmZhMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmOWZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmY5ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmMwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYzAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmYmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmZiZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmUwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmZTAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZlMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmZGZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZkZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMTAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMTAwMDAxcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMTBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwZmZmZmZwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwZmZmZmVwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHA2MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA2MQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA2MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2MQorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS5wNjIsCisgICAgMHgxLjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAweDEuMDAwMDAwMDAwMDAwMjBwNjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwNjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEucDYzLAorICAgIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDYzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcDYzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDYzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDYzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLnA2NCwKKyAgICAweDEuMHA2NAorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA2NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2NAorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS4wMDAwMDAwMDAwMDAyMHA2NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIC0weDEuMDAwMDAwMDAwMDAwMjBwNjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA2MiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMHgxLnA2MiwKKyAgICAtMHgxLjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDYxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2MQorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwNjEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAyMHA2MywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDYzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2MworICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEucDYzLAorICAgIC0weDEuMHA2MworICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwNjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHA2MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDIwcDY0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwNjQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTB4MS5wNjQsCisgICAgLTB4MS4wcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA2MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDYzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXA2MworICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIDB4MS5wNjIsCisgICAgMHgxLjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEucDYzLAorICAgIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS5wNjIsCisgICAgLTB4MS4wcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgLTB4MS5wNjMsCisgICAgLTB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYzBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEucDMxLAorICAgIDB4MS5mZmZmZmZmYzAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEucDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS5wMiwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLjQwcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS5wMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLnAzLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAweDEuMjBwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgMHgxLnA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEucDQsCisgICAgMHgxLjBwNAorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIDB4MS4xMHA0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAweDEucDUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNAorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS5wNSwKKyAgICAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLjA4cDUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS5wNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgMHgxLnA2LAorICAgIDB4MS4wcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAweDEuMDRwNiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgMHgxLnA3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAweDEucDcsCisgICAgMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS4wMnA3LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEucDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNworICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS5wOCwKKyAgICAweDEuMHA4CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLjAxcDgsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwOAorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS5wOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLnA5LAorICAgIDB4MS4wcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEuMDA4MHA5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEucDEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAweDEucDEwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEucDExLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgMHgxLnAxMSwKKyAgICAweDEuMHAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS4wMDIwcDExLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgMHgxLnAxMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS5wMTIsCisgICAgMHgxLjBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEuMDAxMHAxMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMgorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDB4MS40MHAyLAorICAgIDB4MS4xZmZmZmZmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuNDBwMiwKKyAgICAweDEuMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMHgxLjQwcDIsCisgICAgMHgxLjIwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS4yMHAzLAorICAgIDB4MS4wZmZmZmZmZmZmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuMjBwMywKKyAgICAweDEuMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLjIwcDMsCisgICAgMHgxLjEwMDAwMDAwMDAwMDFwMworICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDB4MS4xMHA0LAorICAgIDB4MS4wN2ZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAweDEuMTBwNCwKKyAgICAweDEuMDgwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuMTBwNCwKKyAgICAweDEuMDgwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjA4cDUsCisgICAgMHgxLjAzZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS4wOHA1LAorICAgIDB4MS4wNDBwNQorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIDB4MS4wOHA1LAorICAgIDB4MS4wNDAwMDAwMDAwMDAxcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuMDRwNiwKKyAgICAweDEuMDFmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLjA0cDYsCisgICAgMHgxLjAyMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLjA0cDYsCisgICAgMHgxLjAyMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS4wMnA3LAorICAgIDB4MS4wMGZmZmZmZmZmZmZmcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuMDJwNywKKyAgICAweDEuMDEwcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuMDJwNywKKyAgICAweDEuMDEwMDAwMDAwMDAwMXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLjAxcDgsCisgICAgMHgxLjAwN2ZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS4wMXA4LAorICAgIDB4MS4wMDhwOAorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS4wMXA4LAorICAgIDB4MS4wMDgwMDAwMDAwMDAxcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEuMDA4MHA5LAorICAgIDB4MS4wMDNmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuMDA4MHA5LAorICAgIDB4MS4wMDRwOQorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS4wMDgwcDksCisgICAgMHgxLjAwNDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS4wMDFmZmZmZmZmZmZmcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS4wMDIwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLjAwODBwMTAsCisgICAgMHgxLjAwNWZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuMDA4MHAxMCwKKyAgICAweDEuMDA2cDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjAwODBwMTAsCisgICAgMHgxLjAwNjAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuMDAyMHAxMSwKKyAgICAweDEuMDAwZmZmZmZmZmZmZnAxMQorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS4wMDIwcDExLAorICAgIDB4MS4wMDFwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuMDAyMHAxMSwKKyAgICAweDEuMDAxMDAwMDAwMDAwMXAxMQorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS4wMDEwcDEyLAorICAgIDB4MS4wMDA3ZmZmZmZmZmZmcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjAwMTBwMTIsCisgICAgMHgxLjAwMDgwcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjAwMTBwMTIsCisgICAgMHgxLjAwMDgwMDAwMDAwMDFwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS5wMiwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgLTB4MS44MHAxLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLnAxLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLnAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEucDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAtMC4wLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAweDEucDEsCisgICAgMHgxLjhwMAorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIC0weDEucDAsCisgICAgLTB4MS44cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuODBwMSwKKyAgICAweDEuNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjRwMQorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEucDEsCisgICAgMHgxLjgwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEucDEsCisgICAgMHgxLjdmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAtMHgxLnAwLAorICAgIC0weDEuODAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIC0weDEucDAsCisgICAgLTB4MS43ZmZmZnAwCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvY2VpbGZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2NlaWxmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YjUyNDA2Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2NlaWxmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDEzMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfY2VpbGZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAweDEucDAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS5wMCwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEucDEsCisgICAgMHgxLjdmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEucDEsCisgICAgMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5wMSwKKyAgICAweDEuODAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5wMSwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5wMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS44MHAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLjgwcDEsCisgICAgMHgxLjNmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEuODBwMSwKKyAgICAweDEuNDBwMQorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLjgwcDEsCisgICAgMHgxLjQwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOGZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS45MHA2LAorICAgIDB4MS45MHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuOTRwNiwKKyAgICAweDEuOTAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS45NHA2LAorICAgIDB4MS45MWZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLjk0cDYsCisgICAgMHgxLjkycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS45NHA2LAorICAgIDB4MS45MjAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLmY0cDksCisgICAgMHgxLmYzZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjRwOQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLmY0ODBwOSwKKyAgICAweDEuZjQwMDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5mNDgwcDksCisgICAgMHgxLmY0M2ZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuZjQ4MHA5LAorICAgIDB4MS5mNDQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS5mNDgwcDksCisgICAgMHgxLmY0NDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEucDIxLAorICAgIDB4MS5mZmZmZmVwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS5wMjEsCisgICAgMHgxLnAyMQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLjAwMDAwOHAyMSwKKyAgICAweDEuMDAwMDAycDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEucDIyLAorICAgIDB4MS5mZmZmZmVwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS5wMjIsCisgICAgMHgxLnAyMgorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLjAwMDAwNHAyMiwKKyAgICAweDEuMDAwMDAycDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEucDIzLAorICAgIDB4MS5mZmZmZmVwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS5wMjMsCisgICAgMHgxLnAyMworICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEuMDAwMDAycDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuZmZmZmZlcDIzLAorICAgIDB4MS5mZmZmZmVwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS5wMjQsCisgICAgMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjAwMDAwMnAyNCwKKyAgICAweDEuMDAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuZmZmZmZlcDI0LAorICAgIDB4MS5mZmZmZmVwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5wMjUsCisgICAgMHgxLnAyNQorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLjAwMDAwMnAyNSwKKyAgICAweDEuMDAwMDAycDI1CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgLTAuMCwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEucDAsCisgICAgLTB4MS44MDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIC0weDEucDAsCisgICAgLTB4MS43ZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLnAxLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjQwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLnAxLAorICAgIC0weDEuNDBwMQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjNmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS45MDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTBwNgorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS44Y3A2LAorICAgIC0weDEuOGZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkyMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS45MnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS45MWZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQwMDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEuZjM4MHA5LAorICAgIC0weDEuZjNmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0NDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0M2ZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLnAyMSwKKyAgICAtMHgxLjAwMDAwMnAyMQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS5wMjEsCisgICAgLTB4MS5wMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuZmZmZmYwcDIwLAorICAgIC0weDEuZmZmZmZlcDIwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLnAyMiwKKyAgICAtMHgxLjAwMDAwMnAyMgorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS5wMjIsCisgICAgLTB4MS5wMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEuZmZmZmY4cDIxLAorICAgIC0weDEuZmZmZmZlcDIxCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLjAwMDAwMnAyMywKKyAgICAtMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgLTB4MS5wMjMsCisgICAgLTB4MS5wMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuZmZmZmZjcDIyLAorICAgIC0weDEuZmZmZmZlcDIyCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAtMHgxLjAwMDAwMnAyNAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS5wMjQsCisgICAgLTB4MS5wMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIC0weDEuZmZmZmZlcDIzLAorICAgIC0weDEuZmZmZmZlcDIzCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLjAwMDAwMnAyNSwKKyAgICAtMHgxLjAwMDAwMnAyNQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTB4MS5wMjUsCisgICAgLTB4MS5wMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuZmZmZmZlcDI0LAorICAgIC0weDEuZmZmZmZlcDI0CisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuZmZmZmZlcDI5LAorICAgIDB4MS5mZmZmZmVwMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS5wMzAsCisgICAgMHgxLnAzMAorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLjAwMDAwMnAzMCwKKyAgICAweDEuMDAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIC0weDEuMDAwMDAycDMwLAorICAgIC0weDEuMDAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS5wMzAsCisgICAgLTB4MS5wMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAtMHgxLmZmZmZmZXAyOSwKKyAgICAtMHgxLmZmZmZmZXAyOQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgMHgxLmZmZmZmY3A2MSwKKyAgICAweDEuZmZmZmZjcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLmZmZmZmZXA2MSwKKyAgICAweDEuZmZmZmZlcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLnA2MiwKKyAgICAweDEucDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLjAwMDAwMnA2MiwKKyAgICAweDEuMDAwMDAycDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLjAwMDAwNHA2MiwKKyAgICAweDEuMDAwMDA0cDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLmZmZmZmY3A2MiwKKyAgICAweDEuZmZmZmZjcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLmZmZmZmZXA2MiwKKyAgICAweDEuZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLnA2MywKKyAgICAweDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjAwMDAwMnA2MywKKyAgICAweDEuMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjAwMDAwNHA2MywKKyAgICAweDEuMDAwMDA0cDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLmZmZmZmY3A2MywKKyAgICAweDEuZmZmZmZjcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmZmZmZmZXA2MywKKyAgICAweDEuZmZmZmZlcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLnA2NCwKKyAgICAweDEucDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLjAwMDAwMnA2NCwKKyAgICAweDEuMDAwMDAycDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLjAwMDAwNHA2NCwKKyAgICAweDEuMDAwMDA0cDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTB4MS4wMDAwMDRwNjIsCisgICAgLTB4MS4wMDAwMDRwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAtMHgxLjAwMDAwMnA2MiwKKyAgICAtMHgxLjAwMDAwMnA2MgorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0weDEucDYyLAorICAgIC0weDEucDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5mZmZmZmVwNjEsCisgICAgLTB4MS5mZmZmZmVwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAtMHgxLmZmZmZmY3A2MSwKKyAgICAtMHgxLmZmZmZmY3A2MQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuMDAwMDA0cDYzLAorICAgIC0weDEuMDAwMDA0cDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgLTB4MS4wMDAwMDJwNjMsCisgICAgLTB4MS4wMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLnA2MywKKyAgICAtMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0weDEuZmZmZmZlcDYyLAorICAgIC0weDEuZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS5mZmZmZmNwNjIsCisgICAgLTB4MS5mZmZmZmNwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAtMHgxLjAwMDAwNHA2NCwKKyAgICAtMHgxLjAwMDAwNHA2NAorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuMDAwMDAycDY0LAorICAgIC0weDEuMDAwMDAycDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTB4MS5wNjQsCisgICAgLTB4MS5wNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLmZmZmZmZXA2MywKKyAgICAtMHgxLmZmZmZmZXA2MworICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0weDEuZmZmZmZjcDYzLAorICAgIC0weDEuZmZmZmZjcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLnA2MiwKKyAgICAweDEucDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLnA2MywKKyAgICAweDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS5wNjIsCisgICAgLTB4MS5wNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMHgxLnA2MywKKyAgICAtMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS5wMiwKKyAgICAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAweDEucDIsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLjQwcDIsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgMHgxLnAzLAorICAgIDB4MS5mZmZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDB4MS5wMywKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAweDEuMjBwMywKKyAgICAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAweDEucDQsCisgICAgMHgxLmZmZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMHgxLnA0LAorICAgIDB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIDB4MS4xMHA0LAorICAgIDB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5wNSwKKyAgICAweDEuZmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAweDEucDUsCisgICAgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLjA4cDUsCisgICAgMHgxLjAwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMHgxLnA2LAorICAgIDB4MS5mZmZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS5wNiwKKyAgICAweDEucDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAweDEuMDRwNiwKKyAgICAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEucDcsCisgICAgMHgxLmZmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLnA3LAorICAgIDB4MS5wNworICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS4wMnA3LAorICAgIDB4MS4wMDAwMDJwNworICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDB4MS5wOCwKKyAgICAweDEuZmZmZmZlcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEucDgsCisgICAgMHgxLnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLjAxcDgsCisgICAgMHgxLjAwMDAwMnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMHgxLnA5LAorICAgIDB4MS5mZmZmZmVwOAorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDB4MS5wOSwKKyAgICAweDEucDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEuMDA4MHA5LAorICAgIDB4MS4wMDAwMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS5wMTAsCisgICAgMHgxLmZmZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLnAxMCwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDB4MS5wMTEsCisgICAgMHgxLmZmZmZmZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS5wMTEsCisgICAgMHgxLnAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS4wMDIwcDExLAorICAgIDB4MS4wMDAwMDJwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEucDEyLAorICAgIDB4MS5mZmZmZmVwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEucDEyLAorICAgIDB4MS5wMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEuMDAxMHAxMiwKKyAgICAweDEuMDAwMDAycDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLjQwcDIsCisgICAgMHgxLjFmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLjQwcDIsCisgICAgMHgxLjIwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEuNDBwMiwKKyAgICAweDEuMjAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEuMjBwMywKKyAgICAweDEuMGZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuMjBwMywKKyAgICAweDEuMTBwMworICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS4yMHAzLAorICAgIDB4MS4xMDAwMDJwMworICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDB4MS4xMHA0LAorICAgIDB4MS4wN2ZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS4xMHA0LAorICAgIDB4MS4wOHA0CisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgMHgxLjEwcDQsCisgICAgMHgxLjA4MDAwMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjA4cDUsCisgICAgMHgxLjAzZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgMHgxLjA4cDUsCisgICAgMHgxLjA0cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuMDhwNSwKKyAgICAweDEuMDQwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuMDRwNiwKKyAgICAweDEuMDFmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAweDEuMDRwNiwKKyAgICAweDEuMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS4wNHA2LAorICAgIDB4MS4wMjAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS4wMnA3LAorICAgIDB4MS4wMGZmZmVwNworICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS4wMnA3LAorICAgIDB4MS4wMXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLjAycDcsCisgICAgMHgxLjAxMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLjAxcDgsCisgICAgMHgxLjAwN2ZmZXA4CisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgMHgxLjAxcDgsCisgICAgMHgxLjAwODBwOAorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS4wMXA4LAorICAgIDB4MS4wMDgwMDJwOAorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS4wMDgwcDksCisgICAgMHgxLjAwM2ZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgMHgxLjAwODBwOSwKKyAgICAweDEuMDA0MHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLjAwODBwOSwKKyAgICAweDEuMDA0MDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDAxZmZlcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjAwMjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDAyMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLjAwODBwMTAsCisgICAgMHgxLjAwNWZmZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS4wMDgwcDEwLAorICAgIDB4MS4wMDYwcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjAwODBwMTAsCisgICAgMHgxLjAwNjAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIDB4MS4wMDIwcDExLAorICAgIDB4MS4wMDBmZmVwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEuMDAyMHAxMSwKKyAgICAweDEuMDAxMHAxMQorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIDB4MS4wMDIwcDExLAorICAgIDB4MS4wMDEwMDJwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEuMDAxMHAxMiwKKyAgICAweDEuMDAwN2ZlcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjAwMTBwMTIsCisgICAgMHgxLjAwMDhwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuMDAxMHAxMiwKKyAgICAweDEuMDAwODAycDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDB4MS5mZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgLTB4MS5mZmZmZmNwMTI3LAorICAgIC0weDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS5wMiwKKyAgICAweDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIDB4MS5wMSwKKyAgICAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLnAwLAorICAgIC0weDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEucDEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIC0weDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDB4MS5wMCwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgLTAuMCwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEucDAsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEucDAsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0wLjAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIDAuMCwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgLTAuMCwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS5wMSwKKyAgICAweDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIC0weDEucDAsCisgICAgLTB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMHgxLjgwcDEsCisgICAgMHgxLjQwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAtMHgxLnAxLAorICAgIC0weDEuNDBwMQorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAxMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAtMC4wLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAxMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS5wMSwKKyAgICAweDEuODAwMDEwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEucDEsCisgICAgMHgxLjdmZmZmMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjgwMDAxMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjdmZmZmMHAwCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvY29weXNpZ25faW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2NvcHlzaWduX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNDc4ZjFlCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2NvcHlzaWduX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDE0NTggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzJfdDxkb3VibGUsIGRvdWJsZSwgZG91YmxlPiBnX2NvcHlzaWduX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS5wLTEwLAorICAgIC0weDEuMHAtMTAsCisgICAgLTB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEucC0xMCwKKyAgICAtMHgxLjBwLTEwLAorICAgIDB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAtMHgxLnAtMTAsCisgICAgMHgxLjBwLTEwLAorICAgIC0weDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLnAtMTAsCisgICAgMHgxLjBwLTEwLAorICAgIDB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMHgxLjQwcDMsCisgICAgLTB4MS40cDMsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLjQwcDMsCisgICAgLTB4MS40cDMsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAtMHgxLjQwcDMsCisgICAgMHgxLjRwMywKKyAgICAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuNDBwMywKKyAgICAweDEuNHAzLAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgLTB4MS5wLTEwNzMsCisgICAgLTB4MS4wcC0xMDczLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAtMHgxLnAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLnAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIC0weDEucC0xMDczLAorICAgIDB4MS4wcC0xMDczLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgLTB4MS5wLTEwNzMsCisgICAgMHgxLjBwLTEwNzMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLnAtMTA3MywKKyAgICAweDEuMHAtMTA3MywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgLTB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS4wMDAwMDAwMDAwMDAyMHAtMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS4wMDAwMDAwMDAwMDAyMHAtMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMsCisgICAgMHgxLjBwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS4wMDAwMDAwMDAwMDAyMHAtMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5wLTEwMjMsCisgICAgLTB4MS4wcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDI0CisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEucC0xMDIzLAorICAgIC0weDEuMHAtMTAyMywKKyAgICAweDEuMHAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLnAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQsCisgICAgMHgxLjBwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEucDAsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS5wMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEucDAsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDIzLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS5wMTAyMywKKyAgICAtMHgxLjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEucDEwMjMsCisgICAgLTB4MS4wcDEwMjMsCisgICAgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLnAxMDIzLAorICAgIC0weDEuMHAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEuZmZmZmZmZmZmZmZmYzBwLTEwMjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDI0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDI0LAorICAgIC0weDEuMHAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEucC0xMDIzLAorICAgIDB4MS4wcC0xMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgLTB4MS5wLTEwMjMsCisgICAgMHgxLjBwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLnAtMTAyMywKKyAgICAweDEuMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuMDAwMDAwMDAwMDAwMjBwLTEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDIwcC0xMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycC0xMDIzLAorICAgIC0weDEuMHAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS4wMDAwMDAwMDAwMDAyMHAtMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAtMHgxLnAwLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEucDAsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgLTB4MS5wMCwKKyAgICAweDEuMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAtMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEucDEwMjMsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgLTB4MS5wMTAyMywKKyAgICAweDEuMHAxMDIzLAorICAgIC0weDEuMHAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAtMHgxLnAxMDIzLAorICAgIDB4MS4wcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMywKKyAgICAtMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgLTB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIC0weDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIC0weDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIC0weDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIC0weDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgLTB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgLTB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAwLjAsCisgICAgMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMC4wLAorICAgIDAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTAuMCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgLTAuMCwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTAuMCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgLTAuMCwKKyAgICAwLjAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMC4wLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIC0wLjAsCisgICAgMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMC4wLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMC4wLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAwLjAsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAweDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIDB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEucDAsCisgICAgLTB4MS4wcDAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAweDEucDAsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS5wMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIDB4MS5wMCwKKyAgICAtMHgxLjBwMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIC0weDEucDAsCisgICAgLTB4MS4wcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIC0weDEucDAsCisgICAgLTB4MS4wcDAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2NvcHlzaWduZl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvY29weXNpZ25mX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41OGE1NzlkCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2NvcHlzaWduZl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxNDU4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8yX3Q8ZmxvYXQsIGZsb2F0LCBmbG9hdD4gZ19jb3B5c2lnbmZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMHgxLnAtMTAsCisgICAgLTB4MS5wLTEwLAorICAgIC0weDEucC0xMAorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEucC0xMCwKKyAgICAtMHgxLnAtMTAsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS5wLTEwLAorICAgIDB4MS5wLTEwLAorICAgIC0weDEucC0xMAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEucC0xMCwKKyAgICAweDEucC0xMCwKKyAgICAweDEucC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMHgxLjQwcDMsCisgICAgLTB4MS40MHAzLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuNDBwMywKKyAgICAtMHgxLjQwcDMsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgLTB4MS40MHAzLAorICAgIDB4MS40MHAzLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuNDBwMywKKyAgICAweDEuNDBwMywKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAtMHgxLnAtMTQ4LAorICAgIC0weDEucC0xNDgsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEucC0xNDgsCisgICAgLTB4MS5wLTE0OCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAtMC4wLAorICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgLTB4MS5wLTE0OCwKKyAgICAweDEucC0xNDgsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgLTAuMCwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLjAwMDAwNHAtMTI3LAorICAgIC0weDEuMDAwMDA0cC0xMjcsCisgICAgMHgxLmZmZmZmOHAtMTI4CisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuMDAwMDA0cC0xMjcsCisgICAgLTB4MS4wMDAwMDRwLTEyNywKKyAgICAweDEucC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS4wMDAwMDRwLTEyNywKKyAgICAtMHgxLjAwMDAwNHAtMTI3LAorICAgIDB4MS4wMDAwMDRwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLnAtMTI3LAorICAgIC0weDEucC0xMjcsCisgICAgMHgxLmZmZmZmOHAtMTI4CisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEucC0xMjcsCisgICAgLTB4MS5wLTEyNywKKyAgICAweDEucC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS5wLTEyNywKKyAgICAtMHgxLnAtMTI3LAorICAgIDB4MS4wMDAwMDRwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLmZmZmZmOHAtMTI4LAorICAgIC0weDEuZmZmZmY4cC0xMjgsCisgICAgMHgxLmZmZmZmOHAtMTI4CisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuZmZmZmY4cC0xMjgsCisgICAgLTB4MS5mZmZmZjhwLTEyOCwKKyAgICAweDEucC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS5mZmZmZjhwLTEyOCwKKyAgICAtMHgxLmZmZmZmOHAtMTI4LAorICAgIDB4MS4wMDAwMDRwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgMHgxLjAwMDAwMnAxMjcsCisgICAgLTB4MS4wMDAwMDJwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuMDAwMDAycDEyNywKKyAgICAtMHgxLjAwMDAwMnAxMjcsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS4wMDAwMDJwMTI3LAorICAgIC0weDEuMDAwMDAycDEyNywKKyAgICAweDEuMDAwMDAycDEyNworICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLnAxMjcsCisgICAgLTB4MS5wMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEucDEyNywKKyAgICAtMHgxLnAxMjcsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5wMTI3LAorICAgIC0weDEucDEyNywKKyAgICAweDEuMDAwMDAycDEyNworICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgLTB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5mZmZmZmVwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNiwKKyAgICAweDEuMDAwMDAycDEyNworICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS5mZmZmZjhwLTEyOCwKKyAgICAweDEuZmZmZmY4cC0xMjgsCisgICAgLTB4MS4wMDAwMDRwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgLTB4MS5mZmZmZjhwLTEyOCwKKyAgICAweDEuZmZmZmY4cC0xMjgsCisgICAgLTB4MS5wLTEyNworICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgLTB4MS5mZmZmZjhwLTEyOCwKKyAgICAweDEuZmZmZmY4cC0xMjgsCisgICAgLTB4MS5mZmZmZjhwLTEyOAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5wLTEyNywKKyAgICAweDEucC0xMjcsCisgICAgLTB4MS4wMDAwMDRwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgLTB4MS5wLTEyNywKKyAgICAweDEucC0xMjcsCisgICAgLTB4MS5wLTEyNworICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5wLTEyNywKKyAgICAweDEucC0xMjcsCisgICAgLTB4MS5mZmZmZjhwLTEyOAorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgLTB4MS4wMDAwMDRwLTEyNywKKyAgICAweDEuMDAwMDA0cC0xMjcsCisgICAgLTB4MS4wMDAwMDRwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS4wMDAwMDRwLTEyNywKKyAgICAweDEuMDAwMDA0cC0xMjcsCisgICAgLTB4MS5wLTEyNworICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS4wMDAwMDRwLTEyNywKKyAgICAweDEuMDAwMDA0cC0xMjcsCisgICAgLTB4MS5mZmZmZjhwLTEyOAorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEucDAsCisgICAgMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEucDAsCisgICAgMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEucDAsCisgICAgMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgLTB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEuMDAwMDAycDEyNworICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEucDEyNworICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5wMTI3LAorICAgIDB4MS5wMTI3LAorICAgIC0weDEuMDAwMDAycDEyNworICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgLTB4MS5wMTI3LAorICAgIDB4MS5wMTI3LAorICAgIC0weDEucDEyNworICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS5wMTI3LAorICAgIDB4MS5wMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgLTB4MS4wMDAwMDJwMTI3LAorICAgIDB4MS4wMDAwMDJwMTI3LAorICAgIC0weDEuMDAwMDAycDEyNworICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS4wMDAwMDJwMTI3LAorICAgIDB4MS4wMDAwMDJwMTI3LAorICAgIC0weDEucDEyNworICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgLTB4MS4wMDAwMDJwMTI3LAorICAgIDB4MS4wMDAwMDJwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgLTAuMCwKKyAgICAwLjBmLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTAuMCwKKyAgICAwLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtMC4wLAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0wLjAsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgLTAuMCwKKyAgICAwLjBmLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMC4wLAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgLTAuMCwKKyAgICAwLjBmLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAwLjAsCisgICAgLTAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMC4wLAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMC4wLAorICAgIC0wLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIDAuMCwKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAwLjAsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMC4wLAorICAgIC0wLjBmLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEucDAsCisgICAgLTB4MS5wMCwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEucDAsCisgICAgLTB4MS5wMCwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAweDEucDAsCisgICAgLTB4MS5wMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEucDAsCisgICAgLTB4MS5wMCwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIC0weDEucDAsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvY29zX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9jb3NfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIyZWMwYmMKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvY29zX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDU2MjIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxkb3VibGUsIGRvdWJsZT4gZ19jb3NfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAweDEuYzFhMjdhZTgzNmYxMjgwMDAwMDAwMDAwMDA1MDRlOWJwLTEsCisgICAgMHgxLmZlYjFmNzkyMGUyNDhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLmMxYTI3YWU4MzZmMTI4MDAwMDAwMDAwMDAwNTA0ZTlicC0xLAorICAgIC0weDEuZmViMWY3OTIwZTI0OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAweDEuNzhkYWYwMTAzNmQwY2ZmZmZmZmZmZmZmZmY5ODkwZDZwLTEsCisgICAgMHgxLjdjYjc2NDg1MjZmOTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLjc4ZGFmMDEwMzZkMGNmZmZmZmZmZmZmZmZmOTg5MGQ2cC0xLAorICAgIC0weDEuN2NiNzY0ODUyNmY5OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEuZmY4ZWI2YTkxZWNiMDAwMDAwMDAwMDAwMDAxZjhmNTZwLTEsCisgICAgMHgxLjU0OWVjMGMwYzVhZmFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLmZmOGViNmE5MWVjYjAwMDAwMDAwMDAwMDAwMWY4ZjU2cC0xLAorICAgIC0weDEuNTQ5ZWMwYzBjNWFmYXAtNQorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuZmVkMDQ3NmZjNzVjOTgwMDAwMDAwMDAwMDAyMGIxM2VwLTEsCisgICAgMHgxLjE2ZTUzNGVlMzY1ODBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLmZlZDA0NzZmYzc1Yzk4MDAwMDAwMDAwMDAwMjBiMTNlcC0xLAorICAgIC0weDEuMTZlNTM0ZWUzNjU4MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEuZjEwZmM2MWUyYzc4ZWZmZmZmZmZmZmZmZmY4NzY2NmFwLTEsCisgICAgMHgxLmVmZWVmNjFkMzlhYzJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLmYxMGZjNjFlMmM3OGVmZmZmZmZmZmZmZmZmODc2NjZhcC0xLAorICAgIC0weDEuZWZlZWY2MWQzOWFjMnAtMworICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLjQzNGEzNjQ1YmUyMDg3ZmZmZmZmZmZmZmZmNzJkMGFlcC0xLAorICAgIDB4MS5jNjVhMTcwNDc0NTQ5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuNDM0YTM2NDViZTIwODdmZmZmZmZmZmZmZmY3MmQwYWVwLTEsCisgICAgLTB4MS5jNjVhMTcwNDc0NTQ5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuMzM3ZmM1YjA3MmM1MjgwMDAwMDAwMDAwMDAxN2ZlNzdwLTMsCisgICAgMHgxLjZiOGE2MjczZDdjMjFwMAorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLjMzN2ZjNWIwNzJjNTI4MDAwMDAwMDAwMDAwMTdmZTc3cC0zLAorICAgIC0weDEuNmI4YTYyNzNkN2MyMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEuZWZhN2NkZGIxMjhmYjgwMDQzNTY4NzdiNzRlZThhYmRwLTEsCisgICAgLTB4MS4wMzZmNGJhN2U5MGFhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuZWZhN2NkZGIxMjhmYjgwMDQzNTY4NzdiNzRlZThhYmRwLTEsCisgICAgMHgxLjAzNmY0YmE3ZTkwYWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZiNTExN2ZlZTJlZGE3ZjEzZXAtMSwKKyAgICAtMHgxLjE1MDA3NjZjOWRmMjBwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmYjUxMTdmZWUyZWRhN2YxM2VwLTEsCisgICAgMHgxLjE1MDA3NjZjOWRmMjBwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuZWMyMzE4MDI5MTdiZGZmYTYyN2FiNmE1OWFiZTNmN2RwLTEsCisgICAgLTB4MS4xZTJhMTU2M2UwNjhlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuZWMyMzE4MDI5MTdiZGZmYTYyN2FiNmE1OWFiZTNmN2RwLTEsCisgICAgMHgxLjFlMmExNTYzZTA2OGVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5kYzA0NGFjOTJiN2ZiOTAwNzkxM2M4N2RiNzZmYTQ5ZnAtOCwKKyAgICAtMHgxLjIxMTVhYTczZjhkMDVwNQorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLmRjMDQ0YWM5MmI3ZmI5MDA3OTEzYzg3ZGI3NmZhNDlmcC04LAorICAgIDB4MS4yMTE1YWE3M2Y4ZDA1cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5kMWZhNjdjNTBkZDUyN2Y2ZTlhYmJiMGJkMDY2NGFiOXAtNCwKKyAgICAtMHgxLjM0ZTNiY2RmOGY2OWFwMgorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLmQxZmE2N2M1MGRkNTI3ZjZlOWFiYmIwYmQwNjY0YWI5cC00LAorICAgIDB4MS4zNGUzYmNkZjhmNjlhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS5lMmY4ZDE5ZmI4ZGI4ODA1NmRjZGRkNzZmNWEwNWMyMHAtMiwKKyAgICAtMHgxLjM4MDAwMDAwMDAwMGJwNworICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLmUyZjhkMTlmYjhkYjg4MDU2ZGNkZGQ3NmY1YTA1YzIwcC0yLAorICAgIDB4MS4zODAwMDAwMDAwMDBicDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS44ZGE5YzkwYzNlZGExN2Y1YmQ3MDhjZmM0MTRmZjFiOHAtMSwKKyAgICAtMHgxLjQ0MDAwMDAwNHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuOGRhOWM5MGMzZWRhMTdmNWJkNzA4Y2ZjNDE0ZmYxYjhwLTEsCisgICAgMHgxLjQ0MDAwMDAwNHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuYjU5YjMyMDYwM2Y4MzdmZjAxNWUyYTk2MWU3NTk0NmVwLTEsCisgICAgLTB4MS41NTBjOGVlNjdhNGM0cDI5CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuYjU5YjMyMDYwM2Y4MzdmZjAxNWUyYTk2MWU3NTk0NmVwLTEsCisgICAgMHgxLjU1MGM4ZWU2N2E0YzRwMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5mZmZmZmY3YWY2Yzg4N2U1ZjMxODYzNzFhMTdkZDgxZnAtMSwKKyAgICAtMHgxLjcxMTc4OWZkYjJlOGFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuZmZmZmZmN2FmNmM4ODdlNWYzMTg2MzcxYTE3ZGQ4MWZwLTEsCisgICAgMHgxLjcxMTc4OWZkYjJlOGFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEuYzFiNjhlYmIwYjRmZTgyZThlOTlmOWQ0MjVlZTkwMWFwLTIsCisgICAgLTB4MS43N2UwMDAwMDJwOAorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLmMxYjY4ZWJiMGI0ZmU4MmU4ZTk5ZjlkNDI1ZWU5MDFhcC0yLAorICAgIDB4MS43N2UwMDAwMDJwOAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLjExNjFlMWRhZDc2ZGJmZDU1ZjA4YzRhNGE5MGJkNTQ3cC00LAorICAgIC0weDEuODEwNjU2MTkzMWI0M3AwCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEuMTE2MWUxZGFkNzZkYmZkNTVmMDhjNGE0YTkwYmQ1NDdwLTQsCisgICAgMHgxLjgxMDY1NjE5MzFiNDNwMAorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLmY4MjhjMzIyNmIzZDc3YzM3NGU3ODlkNzIxNmE4NWIzcC01LAorICAgIC0weDEuODI1YmUyNDYxY2FkNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuZjgyOGMzMjI2YjNkNzdjMzc0ZTc4OWQ3MjE2YTg1YjNwLTUsCisgICAgMHgxLjgyNWJlMjQ2MWNhZDRwMAorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLmYyOTkwZDc0MmU5ZmE4MGRkMTk0ODNhMmMwZGU0MjhicC01LAorICAgIC0weDEuODI4ODc1NTgwM2IwOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuZjI5OTBkNzQyZTlmYTgwZGQxOTQ4M2EyYzBkZTQyOGJwLTUsCisgICAgMHgxLjgyODg3NTU4MDNiMDhwMAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgLTB4MS5mZjE1MGRkYTc1MjRjZTY3OGFiOTdlZTQ2MGU4ZTk2MXAtMSwKKyAgICAtMHgxLjhhNzU3MDFmNGNjZDNwMQorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS5mZjE1MGRkYTc1MjRjZTY3OGFiOTdlZTQ2MGU4ZTk2MXAtMSwKKyAgICAweDEuOGE3NTcwMWY0Y2NkM3AxCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuMDE1YzQ3YzMyYjU3NDgwMmViODFkZWIwZGI0NmMyMDdwLTEsCisgICAgLTB4MS5iMzg5MzE2ZjM3ZjM3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS4wMTVjNDdjMzJiNTc0ODAyZWI4MWRlYjBkYjQ2YzIwN3AtMSwKKyAgICAweDEuYjM4OTMxNmYzN2YzN3AzCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuZDY4MWEzNjZhMDUzNDdmYTU2Yjc1ZDg0NWIzM2M3YmJwLTEsCisgICAgLTB4MS5jNjAyYzQ2NWQ3ZDI3cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5kNjgxYTM2NmEwNTM0N2ZhNTZiNzVkODQ1YjMzYzdiYnAtMSwKKyAgICAweDEuYzYwMmM0NjVkN2QyN3A2CisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAtMHgxLjg0ZTg5NmM3NTQzZDU0YzE2ZDdiZTM0NmUwZjQwMDE3cC0xLAorICAgIC0weDEuY2ZiODFmZTY5NjY0Y3A0CisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAtMHgxLjg0ZTg5NmM3NTQzZDU0YzE2ZDdiZTM0NmUwZjQwMDE3cC0xLAorICAgIDB4MS5jZmI4MWZlNjk2NjRjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5mYzVkY2ZkZGQ1NGMwN2YxNTc0Y2UxMTRjMWU1ZWZmZXAtMSwKKyAgICAtMHgxLmQwOGYyZDg2YjEyYzZwMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS5mYzVkY2ZkZGQ1NGMwN2YxNTc0Y2UxMTRjMWU1ZWZmZXAtMSwKKyAgICAweDEuZDA4ZjJkODZiMTJjNnAxMworICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLmZlODMyMzVmYmUwMTVkNmMzNjE1NTZlZTVhMGUyMjk0cC0zLAorICAgIC0weDEuZGUxM2YwOTQzYzQ5NHA5OQorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLmZlODMyMzVmYmUwMTVkNmMzNjE1NTZlZTVhMGUyMjk0cC0zLAorICAgIDB4MS5kZTEzZjA5NDNjNDk0cDk5CisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAtMHgxLjcyMDMyMTIzOWVjNGYzOGQ1NWI0MGQ4NDQ1MDk5YzJhcC0xLAorICAgIC0weDEuZGUzYzFmMTI4NWU4YnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLjcyMDMyMTIzOWVjNGYzOGQ1NWI0MGQ4NDQ1MDk5YzJhcC0xLAorICAgIDB4MS5kZTNjMWYxMjg1ZThicDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS5mNzE0M2M4YmJhNDA2ZDZmODM0YTNiY2E1ZTljNmE1OHAtNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmN2ZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmY3MTQzYzhiYmE0MDZkNmY4MzRhM2JjYTVlOWM2YTU4cC00LAorICAgIDB4MS5mZmZmZmZmZmZmZjdmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIC0weDEuZmZmZTYyZWNmYWI3NTNjMDcxYjI2ODBlMWUyNmJiY2VwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEuZmZmZTYyZWNmYWI3NTNjMDcxYjI2ODBlMWUyNmJiY2VwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLjA1NWU0NTdhYzEyMjc2NmE3YTM0M2VhNGFjNzM5YjJlcC01LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuMDU1ZTQ1N2FjMTIyNzY2YTdhMzQzZWE0YWM3MzliMmVwLTUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuYzE1MjgwNjViN2Q0ZTJkODRkNjQwMzAxODAwZGRkODFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS5jMTUyODA2NWI3ZDRlMmQ4NGQ2NDAzMDE4MDBkZGQ4MXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmYTBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDNwLTMyCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmEwcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwM3AtMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS5mZmZlYTQ0NGJjMDVlMGIyZWM2OTNmNzIyNmQwNTZiOHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAyMHAxNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS5mZmZlYTQ0NGJjMDVlMGIyZWM2OTNmNzIyNmQwNTZiOHAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMjBwMTUwCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAtMHgxLmViZGRlZTg3NmY0MzM4Y2M4ODUzOTRkMTAzOWFjZmUxcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDM4cDM4MAorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgLTB4MS5lYmRkZWU4NzZmNDMzOGNjODg1Mzk0ZDEwMzlhY2ZlMXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMzhwMzgwCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmYyZmZjNTFkYzY5NjgxZGVkMzMzNjI2NDViNGU4NTEzcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMTE4cDM4MAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5mMmZmYzUxZGM2OTY4MWRlZDMzMzYyNjQ1YjRlODUxM3AtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAxMThwMzgwCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAtMHgxLmY4ZmJiNGQzNThiMjA3ZjRmODFjMzZjZjIxYzRhZjk3cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwM2ZmcDY0MQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5mOGZiYjRkMzU4YjIwN2Y0ZjgxYzM2Y2YyMWM0YWY5N3AtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAzZmZwNjQxCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAtMHgxLmFhMjI2NTc1M2U2Njg3ZmRlNzYyNjllZTkyYTc4NGIwcC0yLAorICAgIDB4MS4wMDAwMDAwMDAxMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLmFhMjI2NTc1M2U2Njg3ZmRlNzYyNjllZTkyYTc4NGIwcC0yLAorICAgIC0weDEuMDAwMDAwMDAwMTBwMQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLmZkMTI0MmMyNTk5NGQwY2M1ZGFmNDA1ZmE1MTBlNTM5cC0xLAorICAgIDB4MS4wMDAwMDAwMDhwNDUyCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAweDEuZmQxMjQyYzI1OTk0ZDBjYzVkYWY0MDVmYTUxMGU1MzlwLTEsCisgICAgLTB4MS4wMDAwMDAwMDhwNDUyCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuZmZmYzAwMDE1NTRkYTgwMDAwNDg4MjhkZTk3YWNjY2JwLTEsCisgICAgMHgxLjAwMDAwMDAwZWZmYWZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS5mZmZjMDAwMTU1NGRhODAwMDA0ODgyOGRlOTdhY2NjYnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwZWZmYWZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS4xNGEyN2YyOTI1NTIyODAwMDBkZDMwZmJmNmIzODQ4MXAtMSwKKyAgICAweDEuMDAwMDAxMTRmZWZlMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAweDEuMTRhMjdmMjkyNTUyMjgwMDAwZGQzMGZiZjZiMzg0ODFwLTEsCisgICAgLTB4MS4wMDAwMDExNGZlZmUycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS5iZjgxZTAyNjljNTljN2ZmNzUzY2EzMjE0NzY2NmM1NnAtMywKKyAgICAweDEuMDAwMDA3MHA0MAorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLmJmODFlMDI2OWM1OWM3ZmY3NTNjYTMyMTQ3NjY2YzU2cC0zLAorICAgIC0weDEuMDAwMDA3MHA0MAorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLjE0YTI2ZWQxOTYwZDY3ZmZmZmRmOGQxM2I0M2ZhMmI0cC0xLAorICAgIDB4MS4wMDAwMGFjYWRiM2QzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS4xNGEyNmVkMTk2MGQ2N2ZmZmZkZjhkMTNiNDNmYTJiNHAtMSwKKyAgICAtMHgxLjAwMDAwYWNhZGIzZDNwMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLmZmZmZmZmZmYmZmZmU3ZmZmZjE1NTY1NTU1OWE3ZDJkcC0xLAorICAgIDB4MS4wMDAwM3AtMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS5mZmZmZmZmZmJmZmZlN2ZmZmYxNTU2NTU1NTlhN2QyZHAtMSwKKyAgICAtMHgxLjAwMDAzcC0xNworICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLmZmZmZmZmZmZWZmZmY3ZmZmZjE1Zjk2YWQzYjI5ZDk0cC0xLAorICAgIDB4MS4wMDAwM2ZmZmZmZmFlcC0xOAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLmZmZmZmZmZmZWZmZmY3ZmZmZjE1Zjk2YWQzYjI5ZDk0cC0xLAorICAgIC0weDEuMDAwMDNmZmZmZmZhZXAtMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS5mZmZmZmZmZmVmZmZmN2ZmZmYxNTU3NmFhYjMyOWY0NXAtMSwKKyAgICAweDEuMDAwMDNmZmZmZmZmZnAtMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS5mZmZmZmZmZmVmZmZmN2ZmZmYxNTU3NmFhYjMyOWY0NXAtMSwKKyAgICAtMHgxLjAwMDAzZmZmZmZmZmZwLTE4CisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAtMHgxLmRhYjdlZmViMzViYWQ3ZmJkY2IwZWZlZGI2NjIwOTdjcC0yLAorICAgIDB4MS4wMDAwN2ZmZmZkZWEwcDQxCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLmRhYjdlZmViMzViYWQ3ZmJkY2IwZWZlZGI2NjIwOTdjcC0yLAorICAgIC0weDEuMDAwMDdmZmZmZGVhMHA0MQorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLmZmZmZmZmZmZmJmZmY4MDAwMDAxNTk1YWE5YWZmZmNmcC0xLAorICAgIDB4MS4wMDAwZmZmZjhwLTE5CisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAweDEuZmZmZmZmZmZmYmZmZjgwMDAwMDE1OTVhYTlhZmZmY2ZwLTEsCisgICAgLTB4MS4wMDAwZmZmZjhwLTE5CisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuZmZmZmZmZmZmZWZmZjgwMDAwMDA0YjM2NDIzMDUwZjZwLTEsCisgICAgMHgxLjAwMDNmZmY4MDAwNTFwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuZmZmZmZmZmZmZWZmZjgwMDAwMDA0YjM2NDIzMDUwZjZwLTEsCisgICAgLTB4MS4wMDAzZmZmODAwMDUxcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLmZmZmZmZmZmZmVmZmY4MDAwMDAwNDI5NjFmYjA5NWY3cC0xLAorICAgIDB4MS4wMDAzZmZmODAwMDk2cC0yMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLmZmZmZmZmZmZmVmZmY4MDAwMDAwNDI5NjFmYjA5NWY3cC0xLAorICAgIC0weDEuMDAwM2ZmZjgwMDA5NnAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIC0weDEuZmJmMmI3MWEyM2E1NzdmZGRkMDgxZDMwYmMyNDkxN2ZwLTIsCisgICAgMHgxLjAwMGZkMjBwMzM0CisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAtMHgxLmZiZjJiNzFhMjNhNTc3ZmRkZDA4MWQzMGJjMjQ5MTdmcC0yLAorICAgIC0weDEuMDAwZmQyMHAzMzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuZmNjYzg3ZWFlNzczNmQ4ZDhhNDc3NjMxNGY2YjBiYTdwLTUsCisgICAgMHgxLjAwM3A1MTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuZmNjYzg3ZWFlNzczNmQ4ZDhhNDc3NjMxNGY2YjBiYTdwLTUsCisgICAgLTB4MS4wMDNwNTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgLTB4MS5hNDNmNDBkOTJiN2VkN2VlZjBmZTZkMTc5OTQ0MmNmYXAtNywKKyAgICAweDEuMDA2MDAwMDAwMTVmNHA0MQorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuYTQzZjQwZDkyYjdlZDdlZWYwZmU2ZDE3OTk0NDJjZmFwLTcsCisgICAgLTB4MS4wMDYwMDAwMDAxNWY0cDQxCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLmMxMWNjMzhmNDBhYjI4MjdkZDBmZjhjNmYzZGQxZGFmcC0xLAorICAgIDB4MS4wMDdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEuYzExY2MzOGY0MGFiMjgyN2RkMGZmOGM2ZjNkZDFkYWZwLTEsCisgICAgLTB4MS4wMDdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuZmZmZmZmZmZmZmJmYzdmM2MwMDAwMTU3YWMzMzFkMGNwLTEsCisgICAgMHgxLjAwN3AtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuZmZmZmZmZmZmZmJmYzdmM2MwMDAwMTU3YWMzMzFkMGNwLTEsCisgICAgLTB4MS4wMDdwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLmU5YmE5ODIzMWY3MzQ2ZTA1NjY2OTRlMTQ4NGE1Yjk4cC04LAorICAgIDB4MS4wMGNwNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEuZTliYTk4MjMxZjczNDZlMDU2NjY5NGUxNDg0YTViOThwLTgsCisgICAgLTB4MS4wMGNwNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuZmVmZGY0OGVkNjQ5Y2QwODdlM2U4MDEyMTllZGY4MDRwLTEsCisgICAgMHgxLjAxMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS5mZWZkZjQ4ZWQ2NDljZDA4N2UzZTgwMTIxOWVkZjgwNHAtMSwKKyAgICAtMHgxLjAxMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIC0weDEuZmZjMTZhMGYxMmZmMjcxY2VkNzJmYzY1OWRkY2QzODJwLTEsCisgICAgMHgxLjAxMXA5OTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLmZmYzE2YTBmMTJmZjI3MWNlZDcyZmM2NTlkZGNkMzgycC0xLAorICAgIC0weDEuMDExcDk5NgorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS5lZmQ1YjYxYTMwYTM4N2ZmZjE0MDA1MTk4NDVmY2IxZXAtMSwKKyAgICAweDEuMDIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMHgxLmVmZDViNjFhMzBhMzg3ZmZmMTQwMDUxOTg0NWZjYjFlcC0xLAorICAgIC0weDEuMDIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLmM5N2I4MTYxZGM1MGEwNmNkNDgwMWRlZWI4ZTA3MTVicC0yLAorICAgIDB4MS4wMjA0MjYwYzE4MzA3cDU5CisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLmM5N2I4MTYxZGM1MGEwNmNkNDgwMWRlZWI4ZTA3MTVicC0yLAorICAgIC0weDEuMDIwNDI2MGMxODMwN3A1OQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIC0weDEuYmYyNmEzYzliOWZiZTgzNDg4NDQ5MzQzZjA4YjA4ZDdwLTIsCisgICAgMHgxLjAyZTc4YTMyMTE1NWVwMQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIC0weDEuYmYyNmEzYzliOWZiZTgzNDg4NDQ5MzQzZjA4YjA4ZDdwLTIsCisgICAgLTB4MS4wMmU3OGEzMjExNTVlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuZmVmODA2YjFmODRlNGRmZDVmNzEzMDdhM2MzZWI2MDJwLTEsCisgICAgMHgxLjA0MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS5mZWY4MDZiMWY4NGU0ZGZkNWY3MTMwN2EzYzNlYjYwMnAtMSwKKyAgICAtMHgxLjA0MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5mZTg1MWZiZjg3ZDE3NmZiNGM2OTI5NWM3ZjkyODQwMnAtMSwKKyAgICAweDEuMDRiZGU4YmI4MDI1OHA5OAorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS5mZTg1MWZiZjg3ZDE3NmZiNGM2OTI5NWM3ZjkyODQwMnAtMSwKKyAgICAtMHgxLjA0YmRlOGJiODAyNThwOTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEuNzBmNmE1MWRhOGVmZWMzOThlNzQxNjllNzcxMzg2ZWFwLTEsCisgICAgMHgxLjA3N2U3NDllMzdjZWVwMjM2CisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjcwZjZhNTFkYThlZmVjMzk4ZTc0MTY5ZTc3MTM4NmVhcC0xLAorICAgIC0weDEuMDc3ZTc0OWUzN2NlZXAyMzYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuNmI0MDhjODU2YmRhNTdmZTU4MjlhNTgzNjFmZWExMTJwLTMsCisgICAgMHgxLjA3ZjgwcDMwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS42YjQwOGM4NTZiZGE1N2ZlNTgyOWE1ODM2MWZlYTExMnAtMywKKyAgICAtMHgxLjA3ZjgwcDMwMAorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS4yYjJmOTY1YWU0MGZjN2ZmZmZiY2EwYjdlYWVjNTkxOXAtMSwKKyAgICAweDEuMDdmOWJlYTFiMzU0NnAyNworICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS4yYjJmOTY1YWU0MGZjN2ZmZmZiY2EwYjdlYWVjNTkxOXAtMSwKKyAgICAtMHgxLjA3ZjliZWExYjM1NDZwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAtMHgxLjRlZWQyZjNmYzc2YTc3ZjgwM2Q4OTExZWVkZGNjNWU4cC0xLAorICAgIDB4MS4wOTBkMTgzNzJmMmQ1cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLjRlZWQyZjNmYzc2YTc3ZjgwM2Q4OTExZWVkZGNjNWU4cC0xLAorICAgIC0weDEuMDkwZDE4MzcyZjJkNXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLmZiYTU5YWVjZWU1MDAwMzE1Y2VlMzIzMDc5ZWQxNDI3cC0xLAorICAgIDB4MS4wYjRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEuZmJhNTlhZWNlZTUwMDAzMTVjZWUzMjMwNzllZDE0MjdwLTEsCisgICAgLTB4MS4wYjRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuZmZmZDFiY2RhN2E3ZDU1MTBhYTNkMGVkOGFkZGM3ODVwLTEsCisgICAgMHgxLjBjMGQ1YzJhZjNjMmVwMzQ2CisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMHgxLmZmZmQxYmNkYTdhN2Q1NTEwYWEzZDBlZDhhZGRjNzg1cC0xLAorICAgIC0weDEuMGMwZDVjMmFmM2MyZXAzNDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLmU0ZGZlODMxMjkyODY3ZmRjMTMzM2MwYTRjM2YzZjcwcC0xLAorICAgIDB4MS4wZDMwNTk2ZWU5MWZkcDIxNgorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEuZTRkZmU4MzEyOTI4NjdmZGMxMzMzYzBhNGMzZjNmNzBwLTEsCisgICAgLTB4MS4wZDMwNTk2ZWU5MWZkcDIxNgorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS5mYjg0MzI4ODZhMjgzYjE3YWNhYTUyNGUzMTJhYjFlM3AtMiwKKyAgICAweDEuMGQ2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuZmI4NDMyODg2YTI4M2IxN2FjYWE1MjRlMzEyYWIxZTNwLTIsCisgICAgLTB4MS4wZDZwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5mZmZmZWUyMDI4NTNmZmJiYzE2ODQ4NDcwMTk3MjdhMHAtMSwKKyAgICAweDEuMGU5NDc0YzY4ODMxY3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuZmZmZmVlMjAyODUzZmZiYmMxNjg0ODQ3MDE5NzI3YTBwLTEsCisgICAgLTB4MS4wZTk0NzRjNjg4MzFjcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEuYjcwZDNkNTU4NGIxYTgzYzY4ZTI1NGU1MjNkMzdkZmRwLTIsCisgICAgMHgxLjExM2JhZTQwNDk4NDlwMgorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuYjcwZDNkNTU4NGIxYTgzYzY4ZTI1NGU1MjNkMzdkZmRwLTIsCisgICAgLTB4MS4xMTNiYWU0MDQ5ODQ5cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAweDEuZmVkOGRmNThmNjI1ZmRjYmIxZTQwY2Y4M2NhYTJjYTJwLTEsCisgICAgMHgxLjEyZWI4NzA5NzY1NDBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAweDEuZmVkOGRmNThmNjI1ZmRjYmIxZTQwY2Y4M2NhYTJjYTJwLTEsCisgICAgLTB4MS4xMmViODcwOTc2NTQwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLmU1MzZhZTM5NWRmY2UwMDE0NTc5NzBjOGFhYWMzYjFmcC0yLAorICAgIDB4MS4xM2NwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS5lNTM2YWUzOTVkZmNlMDAxNDU3OTcwYzhhYWFjM2IxZnAtMiwKKyAgICAtMHgxLjEzY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLmZlZDA0NzZmYzc1Yzk4MDAwMDAwMDAwMDAwMjBiMTNlcC0xLAorICAgIDB4MS4xNmU1MzRlZTM2NTgwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgMHgxLmZlZDA0NzZmYzc1Yzk4MDAwMDAwMDAwMDAwMjBiMTNlcC0xLAorICAgIC0weDEuMTZlNTM0ZWUzNjU4MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS5mYjM4ZTgyZTMxOTNhN2YxOWExN2QyMzFhMmU4MTk0ZXAtMSwKKyAgICAweDEuMTdmZmZmZmZmZWE5OHAtMworICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIDB4MS5mYjM4ZTgyZTMxOTNhN2YxOWExN2QyMzFhMmU4MTk0ZXAtMSwKKyAgICAtMHgxLjE3ZmZmZmZmZmVhOThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAweDEuZmIzOGU4MmUzMTg3ZmM2NTc0N2FlNDQzNDYxZWI0MzRwLTEsCisgICAgMHgxLjE4MHAtMworICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIDB4MS5mYjM4ZTgyZTMxODdmYzY1NzQ3YWU0NDM0NjFlYjQzNHAtMSwKKyAgICAtMHgxLjE4MHAtMworICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0weDEuZTU5NjQ3ZjFmZTljNzUwMDU5YjllYWZiODhjMmFjZWFwLTEsCisgICAgMHgxLjFhMTkxZWJiYjRkN2ZwNworICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEuZTU5NjQ3ZjFmZTljNzUwMDU5YjllYWZiODhjMmFjZWFwLTEsCisgICAgLTB4MS4xYTE5MWViYmI0ZDdmcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAtMHgxLmQwZGNhMWY4NzE1YmQ3ZjlmZjM3M2M3NjM1MjJkYjBlcC00LAorICAgIDB4MS4xZGE4NGYyYjdiMWQ4cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLmQwZGNhMWY4NzE1YmQ3ZjlmZjM3M2M3NjM1MjJkYjBlcC00LAorICAgIC0weDEuMWRhODRmMmI3YjFkOHA3CisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgMHgxLmI5MTdlYmJjMzBlMWQ4MzY0YmMzYzJjMTBlYTEzNTM5cC0yLAorICAgIDB4MS4yMDFlOTczMjUxMzAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEuYjkxN2ViYmMzMGUxZDgzNjRiYzNjMmMxMGVhMTM1MzlwLTIsCisgICAgLTB4MS4yMDFlOTczMjUxMzAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEuZmZmYWRmMTJmZjQxNDdmNmY2ZjM1YjQ0YjBmNmNiNDZwLTEsCisgICAgMHgxLjIxZTAycC03CisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgMHgxLmZmZmFkZjEyZmY0MTQ3ZjZmNmYzNWI0NGIwZjZjYjQ2cC0xLAorICAgIC0weDEuMjFlMDJwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMHgxLjU5OGE0ZGFiM2RlNTk3ZDUyZmFhNzM2NzYyYTNmNjUxcC0xLAorICAgIDB4MS4yN2UyOWE0Yjk4NWJmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAtMHgxLjU5OGE0ZGFiM2RlNTk3ZDUyZmFhNzM2NzYyYTNmNjUxcC0xLAorICAgIC0weDEuMjdlMjlhNGI5ODViZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLmZhOTVjMTE1NGFiZjU2YzRkYmI3N2JmZTVlNGU4ZjQycC0xLAorICAgIDB4MS4yYTFmMjhkYmZiNmMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgMHgxLmZhOTVjMTE1NGFiZjU2YzRkYmI3N2JmZTVlNGU4ZjQycC0xLAorICAgIC0weDEuMmExZjI4ZGJmYjZjMHAtMworICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuNjQxMjI5M2FkYjdiY2E5NzczMWU1MGE4NjMxMmRhMmRwLTEsCisgICAgMHgxLjJiOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS42NDEyMjkzYWRiN2JjYTk3NzMxZTUwYTg2MzEyZGEyZHAtMSwKKyAgICAtMHgxLjJiOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLmZmZmE1MThhN2QwZTc3ZjNiNDMxZmNkMGJhMzUzMDk1cC0xLAorICAgIDB4MS4zMTE5OWRlZjcyZjRkcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMHgxLmZmZmE1MThhN2QwZTc3ZjNiNDMxZmNkMGJhMzUzMDk1cC0xLAorICAgIC0weDEuMzExOTlkZWY3MmY0ZHAtNworICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS5mMzY4OTVmZTE3N2Y3N2ZlODQ3OTgyNjRhZDRmMzNiMXAtMSwKKyAgICAweDEuMzEyNjBlMTQ4NTAxNHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgMHgxLmYzNjg5NWZlMTc3Zjc3ZmU4NDc5ODI2NGFkNGYzM2IxcC0xLAorICAgIC0weDEuMzEyNjBlMTQ4NTAxNHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLmQzNjIwN2I0ZmVlMTY3ZjZiMzE4NWZkZDkyOTRhMjMzcC00LAorICAgIDB4MS4zNGU5NjRjZDEwM2JkcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAweDEuZDM2MjA3YjRmZWUxNjdmNmIzMTg1ZmRkOTI5NGEyMzNwLTQsCisgICAgLTB4MS4zNGU5NjRjZDEwM2JkcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLjg0YTM3ZjRmYTc2MTZjYWFkNjZiNGQ3MDFhYjUzZTk0cC0xLAorICAgIDB4MS4zNzYxOGEwYmE3ODUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAtMHgxLjg0YTM3ZjRmYTc2MTZjYWFkNjZiNGQ3MDFhYjUzZTk0cC0xLAorICAgIC0weDEuMzc2MThhMGJhNzg1MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgLTB4MS5jODMwYmJjOTllMjI5MGY5ZDkzYWE2MmIyZGRmZWM5N3AtMzksCisgICAgMHgxLjM3OTcwNGY1ZjFlYjNwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLmM4MzBiYmM5OWUyMjkwZjlkOTNhYTYyYjJkZGZlYzk3cC0zOSwKKyAgICAtMHgxLjM3OTcwNGY1ZjFlYjNwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuYjVkYWFhMjMzYmQ0ZjdmY2YzNGI2ZDVkMDI4MDE3MmZwLTMsCisgICAgMHgxLjNiNjFkZDE2NmQ0NzBwMgorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIDB4MS5iNWRhYWEyMzNiZDRmN2ZjZjM0YjZkNWQwMjgwMTcyZnAtMywKKyAgICAtMHgxLjNiNjFkZDE2NmQ0NzBwMgorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIC0weDEuZmZkMDBkYzRkYjQwMGQ5NjJlMmQyNTVhNjYxZTNjY2JwLTQsCisgICAgMHgxLjNjMDExMDIyYWNiZDBwMzcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAtMHgxLmZmZDAwZGM0ZGI0MDBkOTYyZTJkMjU1YTY2MWUzY2NicC00LAorICAgIC0weDEuM2MwMTEwMjJhY2JkMHAzNworICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIC0weDEuMTQwNTJiNDAxNmZmNTdmZTU3NTBlZDM0MjZiZmQ3NThwLTEsCisgICAgMHgxLjNlNzc4OGU5MDBiNzBwNzI3CisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTB4MS4xNDA1MmI0MDE2ZmY1N2ZlNTc1MGVkMzQyNmJmZDc1OHAtMSwKKyAgICAtMHgxLjNlNzc4OGU5MDBiNzBwNzI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLmZmZmZlNmE1ZTQxOTdmNWZjNTBhY2IxODllYjg1Yzk0cC0xLAorICAgIDB4MS40MjNlYWZkY2MyNzc5cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIDB4MS5mZmZmZTZhNWU0MTk3ZjVmYzUwYWNiMTg5ZWI4NWM5NHAtMSwKKyAgICAtMHgxLjQyM2VhZmRjYzI3NzlwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgLTB4MS5mZTA5ZmMzZDE2ZmVkZDc1MDgzMDFkZjY4ODU3Yjc1NnAtNiwKKyAgICAweDEuNDMyMTgyOGMxYjUzOHAxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAtMHgxLmZlMDlmYzNkMTZmZWRkNzUwODMwMWRmNjg4NTdiNzU2cC02LAorICAgIC0weDEuNDMyMTgyOGMxYjUzOHAxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuYjY4NWQ5NDlhMjdhMDE0M2M0YWM5YjU1MzU0MWViZWNwLTE0LAorICAgIDB4MS40MzUwNmNiMjI5NzVkcDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLmI2ODVkOTQ5YTI3YTAxNDNjNGFjOWI1NTM1NDFlYmVjcC0xNCwKKyAgICAtMHgxLjQzNTA2Y2IyMjk3NWRwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuZmUzOTgwOTBlMjAzYmMyZjZmZTY4MzBkMzgwZmFjYzRwLTEsCisgICAgMHgxLjQzOWY2MzQ5NTc4NmFwNjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAweDEuZmUzOTgwOTBlMjAzYmMyZjZmZTY4MzBkMzgwZmFjYzRwLTEsCisgICAgLTB4MS40MzlmNjM0OTU3ODZhcDY3CisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLmZlNjI3NGUwMDA5NzNhMjZjMWEwMDUzZTNmZGVmZmM3cC0xLAorICAgIDB4MS40NTc1MzhhNmJkMDczcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLmZlNjI3NGUwMDA5NzNhMjZjMWEwMDUzZTNmZGVmZmM3cC0xLAorICAgIC0weDEuNDU3NTM4YTZiZDA3M3AtNAorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS4wOWZjYjY5MzU5YzA5ZDU3MzlmMWYwMjU1ZDRmY2U4M3AtMSwKKyAgICAweDEuNDc4ZmMwOHA0MworICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIDB4MS4wOWZjYjY5MzU5YzA5ZDU3MzlmMWYwMjU1ZDRmY2U4M3AtMSwKKyAgICAtMHgxLjQ3OGZjMDhwNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLjIwYzIxNTg1MTFlNzg5OWYxZWMzNzllOTBjMjk2NzgwcC05LAorICAgIDB4MS40OGE0NTc5N2NiZTYzcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTB4MS4yMGMyMTU4NTExZTc4OTlmMWVjMzc5ZTkwYzI5Njc4MHAtOSwKKyAgICAtMHgxLjQ4YTQ1Nzk3Y2JlNjNwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAweDEuOTkwZDE3YWFlMjUzMDdmZWM0YWU2ZDRlOThmMzAwOTNwLTEsCisgICAgMHgxLjRhNjJlMGUxMmMxNzNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAweDEuOTkwZDE3YWFlMjUzMDdmZWM0YWU2ZDRlOThmMzAwOTNwLTEsCisgICAgLTB4MS40YTYyZTBlMTJjMTczcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLmZkZDRmMWUwMGIzODcwMDQxOWY5NmQzNDE5MDVkMDQ1cC0zLAorICAgIDB4MS40YzU5NjY0MmE5NDg4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAweDEuZmRkNGYxZTAwYjM4NzAwNDE5Zjk2ZDM0MTkwNWQwNDVwLTMsCisgICAgLTB4MS40YzU5NjY0MmE5NDg4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuZmU0ZjE0MTAzMmYzNzdmZTEzNWIxM2UwNDQzNmM1ZmZwLTEsCisgICAgMHgxLjRkMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDB4MS5mZTRmMTQxMDMyZjM3N2ZlMTM1YjEzZTA0NDM2YzVmZnAtMSwKKyAgICAtMHgxLjRkMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS45NGU5ZjQ1ZDQzYzEzN2EzZjM0NTY0NDI0MGEyY2VmMHAtMiwKKyAgICAweDEuNGYwZjMwOHA0ODgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEuOTRlOWY0NWQ0M2MxMzdhM2YzNDU2NDQyNDBhMmNlZjBwLTIsCisgICAgLTB4MS40ZjBmMzA4cDQ4OAorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS45MzU1ZjY5YWQ0MzI2NDA0ODI3Y2Q1Y2NmZjhhMGM2OXAtMiwKKyAgICAweDEuNTJmMDBlMHA3OTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAweDEuOTM1NWY2OWFkNDMyNjQwNDgyN2NkNWNjZmY4YTBjNjlwLTIsCisgICAgLTB4MS41MmYwMGUwcDc5MworICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDB4MS4xYTE5YmU4YmVhMTBhODAxZDBiMmQwOWQ5NTA5YzJjNHAtMSwKKyAgICAweDEuNTJmMDZjNzMwZWMwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLjFhMTliZThiZWExMGE4MDFkMGIyZDA5ZDk1MDljMmM0cC0xLAorICAgIC0weDEuNTJmMDZjNzMwZWMwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLjM4NWQ5MmVjMGM3MzM3ZmVhMzk0OTNmNmYyNjc0MzI4cC0xLAorICAgIDB4MS41M2U3ZDU4NDVmZTNkcDIyMAorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDB4MS4zODVkOTJlYzBjNzMzN2ZlYTM5NDkzZjZmMjY3NDMyOHAtMSwKKyAgICAtMHgxLjUzZTdkNTg0NWZlM2RwMjIwCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLmZmZmZmZmZmZmUyZjBmMDAwMDAwNDY1ZTM1OTJiZmZicC0xLAorICAgIDB4MS41OTBwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLmZmZmZmZmZmZmUyZjBmMDAwMDAwNDY1ZTM1OTJiZmZicC0xLAorICAgIC0weDEuNTkwcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIC0weDEuZmZkN2JjMjhkZWQ5MWZmYTIwMGQ2NzcxMDkyNTE4MDFwLTEsCisgICAgMHgxLjU5MmYxMTc2ZjA5ODBwODYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLmZmZDdiYzI4ZGVkOTFmZmEyMDBkNjc3MTA5MjUxODAxcC0xLAorICAgIC0weDEuNTkyZjExNzZmMDk4MHA4NgorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIC0weDEuY2VlMjhiM2Q3OTc5OTAwMDAwOWVhODA4MTI0NDExNmNwLTEsCisgICAgMHgxLjU5OTk5OTlkYzA5ZGNwMQorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIC0weDEuY2VlMjhiM2Q3OTc5OTAwMDAwOWVhODA4MTI0NDExNmNwLTEsCisgICAgLTB4MS41OTk5OTk5ZGMwOWRjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuYzFmMWViMDhjMjYwNDBhMzI4MDBmMDg3OTUyYTM4M2NwLTEsCisgICAgMHgxLjViZWEwMTBwNDY4CisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLmMxZjFlYjA4YzI2MDQwYTMyODAwZjA4Nzk1MmEzODNjcC0xLAorICAgIC0weDEuNWJlYTAxMHA0NjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAweDEuZmZmZTM1YWIwOWE2NTNlMjY2ZWFkYTZmNDQwNTUyMTRwLTEsCisgICAgMHgxLjVjYjgwYTYxMzVlNWFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS5mZmZlMzVhYjA5YTY1M2UyNjZlYWRhNmY0NDA1NTIxNHAtMSwKKyAgICAtMHgxLjVjYjgwYTYxMzVlNWFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIC0weDEuMDdiODVmNjA2ZTc1ZDc2NWIxYWEzYmJjY2JhNmVhZjhwLTMsCisgICAgMHgxLjVkNWJlNDg3MzBkMmRwMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLjA3Yjg1ZjYwNmU3NWQ3NjViMWFhM2JiY2NiYTZlYWY4cC0zLAorICAgIC0weDEuNWQ1YmU0ODczMGQyZHAxMworICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5mZmZmZmZmZmZmODYyMzljMDAwMDA0ZDU4MWIwNTVlYnAtMSwKKyAgICAweDEuNjE0cC0yMQorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS5mZmZmZmZmZmZmODYyMzljMDAwMDA0ZDU4MWIwNTVlYnAtMSwKKyAgICAtMHgxLjYxNHAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAtMHgxLmRkM2E4MDZlODljZjE3ZmZmZmYxNmVjZDUzOTdiNDg2cC0xLAorICAgIDB4MS42MmFkYzhhNjYwMzY0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMHgxLmRkM2E4MDZlODljZjE3ZmZmZmYxNmVjZDUzOTdiNDg2cC0xLAorICAgIC0weDEuNjJhZGM4YTY2MDM2NHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgLTB4MS40MzA4YjE0ZjRiNmVkYzRjMDdlZTY4OTVmMzE4OGFmM3AtMSwKKyAgICAweDEuNjRlZjQzOHAxNDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAtMHgxLjQzMDhiMTRmNGI2ZWRjNGMwN2VlNjg5NWYzMTg4YWYzcC0xLAorICAgIC0weDEuNjRlZjQzOHAxNDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuNjYyM2QyZWI2YWRkMWZmYzM5OGEzYzIwNDQ3ZjlkMDZwLTMsCisgICAgMHgxLjY1MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLjY2MjNkMmViNmFkZDFmZmMzOThhM2MyMDQ0N2Y5ZDA2cC0zLAorICAgIC0weDEuNjUycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEuZmZmODMyYzUwZjQ3MWZmNTU5OWMyM2RjOTY4ZWI4ZTRwLTEsCisgICAgMHgxLjY1ODY1YjJjYjA4YTJwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuZmZmODMyYzUwZjQ3MWZmNTU5OWMyM2RjOTY4ZWI4ZTRwLTEsCisgICAgLTB4MS42NTg2NWIyY2IwOGEycC03CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMHgxLmFjYzI1MWJlMzMwMjI4MDIxYmMzMTMwN2JjODFkYzE2cC0xLAorICAgIDB4MS42YTkzN2RhYWJjMjBlcDM3NQorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIDB4MS5hY2MyNTFiZTMzMDIyODAyMWJjMzEzMDdiYzgxZGMxNnAtMSwKKyAgICAtMHgxLjZhOTM3ZGFhYmMyMGVwMzc1CisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgLTB4MS4xNGFlNzJlNmJhMjJlZjQ2MDg4NzVjNDEzNzhlYjA1MnAtNjEsCisgICAgMHgxLjZhYzViMjYyY2ExZmZwODQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS4xNGFlNzJlNmJhMjJlZjQ2MDg4NzVjNDEzNzhlYjA1MnAtNjEsCisgICAgLTB4MS42YWM1YjI2MmNhMWZmcDg0OQorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIDB4MS5lMDYxOTk2MGExMWM2ODAxZTgwYWIwYzllMjVmODlkMHAtMiwKKyAgICAweDEuNmY3YmRlZjdiZGVmNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgMHgxLmUwNjE5OTYwYTExYzY4MDFlODBhYjBjOWUyNWY4OWQwcC0yLAorICAgIC0weDEuNmY3YmRlZjdiZGVmNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLjhkMjNmOTc5MDFhMzA3ZmZmZDZjNTJhZGY4M2YwOTkzcC0xLAorICAgIDB4MS43MzljZTc1OWNlNzM4cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIDB4MS44ZDIzZjk3OTAxYTMwN2ZmZmQ2YzUyYWRmODNmMDk5M3AtMSwKKyAgICAtMHgxLjczOWNlNzU5Y2U3MzhwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLmZmZmZmNzhhMTRiYTBmMzhhODRiNDhkY2RiNjNkNDRmcC0xLAorICAgIDB4MS43NDUwYzNmNDlkMGIycC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS5mZmZmZjc4YTE0YmEwZjM4YTg0YjQ4ZGNkYjYzZDQ0ZnAtMSwKKyAgICAtMHgxLjc0NTBjM2Y0OWQwYjJwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLmQ2ZjFjNzI3ZmIyY2I3ZjdlOWNiZWUyZTE0MjQ2YzA4cC00LAorICAgIDB4MS43NDlmZTUzZjk2M2ZkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEuZDZmMWM3MjdmYjJjYjdmN2U5Y2JlZTJlMTQyNDZjMDhwLTQsCisgICAgLTB4MS43NDlmZTUzZjk2M2ZkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAtMHgxLmYyODRiNTAyOGMxODQ3ZmZmZmZjOTUzMmZlODkyYWFkcC0xLAorICAgIDB4MS43NGFmNjcyNWM2MjA2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAtMHgxLmYyODRiNTAyOGMxODQ3ZmZmZmZjOTUzMmZlODkyYWFkcC0xLAorICAgIC0weDEuNzRhZjY3MjVjNjIwNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgLTB4MS5mMzE2NWEwYjMwNmIxZmZjZjhkMTE5MDlmZmZiYTE2N3AtMSwKKyAgICAweDEuNzU1MGQyOGZmY2NjNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgLTB4MS5mMzE2NWEwYjMwNmIxZmZjZjhkMTE5MDlmZmZiYTE2N3AtMSwKKyAgICAtMHgxLjc1NTBkMjhmZmNjYzRwMQorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS5kNjZkMjA3OGViZGViN2ZmZWRmOGE0OGUyNTA4NGMxOXAtMSwKKyAgICAweDEuNzc1ZTM5N2NkNmFhMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLmQ2NmQyMDc4ZWJkZWI3ZmZlZGY4YTQ4ZTI1MDg0YzE5cC0xLAorICAgIC0weDEuNzc1ZTM5N2NkNmFhMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLjdhZjlhMTMwODVmNTM4MmE4N2E1NDFhZTBiMmU1OTY1cC0xLAorICAgIDB4MS43OTkzMDJiZjdmMjkwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLjdhZjlhMTMwODVmNTM4MmE4N2E1NDFhZTBiMmU1OTY1cC0xLAorICAgIC0weDEuNzk5MzAyYmY3ZjI5MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDB4MS5mZmRkMmZkYWMwYzI0ODNlN2IxMTZkNmQ0ODhlN2E0YnAtMSwKKyAgICAweDEuNzk5ZmZmZmZmZmZmZHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS5mZmRkMmZkYWMwYzI0ODNlN2IxMTZkNmQ0ODhlN2E0YnAtMSwKKyAgICAtMHgxLjc5OWZmZmZmZmZmZmRwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuZmZmNzQ0ZjE4NWE3MzdmMjU2NzMyY2U4N2RiYWY3YTdwLTEsCisgICAgMHgxLjdhMzY5MmNhOTQ0OTBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEuZmZmNzQ0ZjE4NWE3MzdmMjU2NzMyY2U4N2RiYWY3YTdwLTEsCisgICAgLTB4MS43YTM2OTJjYTk0NDkwcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgMHgxLjdhNmIzMjZiNjkwZmE4MzFlZTRkMGRkNzI3ODdmYmMzcC0xLAorICAgIDB4MS43YTY2YTYzOGFjNWI1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLjdhNmIzMjZiNjkwZmE4MzFlZTRkMGRkNzI3ODdmYmMzcC0xLAorICAgIC0weDEuN2E2NmE2MzhhYzViNXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS42NzFmZGI2NGZmYmVkN2U0OTUyYTlkOTY3OTQxZTdkYXAtNCwKKyAgICAweDEuN2JhNjU0NjJiNDlhMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLjY3MWZkYjY0ZmZiZWQ3ZTQ5NTJhOWQ5Njc5NDFlN2RhcC00LAorICAgIC0weDEuN2JhNjU0NjJiNDlhMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLmZmYTU1NDkwZjIwNmUzYjQzMjNhMDI0NzdiNDE0OWU4cC0xLAorICAgIDB4MS43Y2RmMzdjZGYzN2M5cDIzOQorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS5mZmE1NTQ5MGYyMDZlM2I0MzIzYTAyNDc3YjQxNDllOHAtMSwKKyAgICAtMHgxLjdjZGYzN2NkZjM3YzlwMjM5CisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLjRjNWI1OTcwYTNhNDg4MjMzMDA1NzQyYWY1ZTZhOTVlcC00LAorICAgIDB4MS43ZDU0MjU2NWY0NzJlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuNGM1YjU5NzBhM2E0ODgyMzMwMDU3NDJhZjVlNmE5NWVwLTQsCisgICAgLTB4MS43ZDU0MjU2NWY0NzJlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuNDc5YTU2NjdjNjNmNTdkYTI2YWRmMTgwYTdlYjJmZmJwLTQsCisgICAgMHgxLjdkYTA3NTE2NDkwNThwMAorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS40NzlhNTY2N2M2M2Y1N2RhMjZhZGYxODBhN2ViMmZmYnAtNCwKKyAgICAtMHgxLjdkYTA3NTE2NDkwNThwMAorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS5mZmY3MTc1MTFkY2I1N2YzMmQzOGYyOWMwMTM3OWI5OHAtMSwKKyAgICAweDEuN2UwZGRjZGE2Y2MwZHAtNworICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS5mZmY3MTc1MTFkY2I1N2YzMmQzOGYyOWMwMTM3OWI5OHAtMSwKKyAgICAtMHgxLjdlMGRkY2RhNmNjMGRwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuZmZmZmZmZmZmZjcwNzdlNzAwMDAwNmI0YzcwNjBjMzNwLTEsCisgICAgMHgxLjdmNnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEuZmZmZmZmZmZmZjcwNzdlNzAwMDAwNmI0YzcwNjBjMzNwLTEsCisgICAgLTB4MS43ZjZwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgLTB4MS5mZmY5ZTE1NTQ2OTgwMTcyMjA5MTdjM2ZiMzExODhkZHAtMSwKKyAgICAweDEuN2Y5MDExN2Q0NGM3NHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAtMHgxLmZmZjllMTU1NDY5ODAxNzIyMDkxN2MzZmIzMTE4OGRkcC0xLAorICAgIC0weDEuN2Y5MDExN2Q0NGM3NHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuZmZkYzAwNmJmZjdlOTg0YThkNTAzMWE3MTUyZDM2ZTVwLTEsCisgICAgMHgxLjdmZmZmZmZmZmVmN2FwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuZmZkYzAwNmJmZjdlOTg0YThkNTAzMWE3MTUyZDM2ZTVwLTEsCisgICAgLTB4MS43ZmZmZmZmZmZlZjdhcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLmZmZGMwMDZiZmY3ZTc4NDc0ZDY2ZDdmMjVjM2FjMjc3cC0xLAorICAgIDB4MS43ZmZmZmZmZmZmYTI2cC02CisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLmZmZGMwMDZiZmY3ZTc4NDc0ZDY2ZDdmMjVjM2FjMjc3cC0xLAorICAgIC0weDEuN2ZmZmZmZmZmZmEyNnAtNgorICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIDB4MS5mZmRjMDA2YmZmN2U2ODM5YWRiYTJhOTExMDhkNTZhZnAtMSwKKyAgICAweDEuN2ZmZmZmZmZmZmY4MHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS5mZmRjMDA2YmZmN2U2ODM5YWRiYTJhOTExMDhkNTZhZnAtMSwKKyAgICAtMHgxLjdmZmZmZmZmZmZmODBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuNzYwNzE4YWI0NDM5NzdmZGQ4ZjhmMjIyMWNhNGRiM2NwLTEsCisgICAgMHgxLjgwZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS43NjA3MThhYjQ0Mzk3N2ZkZDhmOGYyMjIxY2E0ZGIzY3AtMSwKKyAgICAtMHgxLjgwZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmViMjlkMGJwLTEsCisgICAgMHgxLjgxYWUwZGZmYTNiMzNwOTU5CisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWIyOWQwYnAtMSwKKyAgICAtMHgxLjgxYWUwZGZmYTNiMzNwOTU5CisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgLTB4MS5mYmRjNDgxMjViMzQ1NzRjZjFmOTE0MTllN2VkYjc1YnAtMSwKKyAgICAweDEuODFkNjEyMjg5YzVjZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgLTB4MS5mYmRjNDgxMjViMzQ1NzRjZjFmOTE0MTllN2VkYjc1YnAtMSwKKyAgICAtMHgxLjgxZDYxMjI4OWM1Y2ZwMQorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS5mZjllMzk2NjUxY2M5N2U5MzViMmUwZWU3MzYwN2QxMnAtNSwKKyAgICAweDEuODIyMDE5MjI3MGEwZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgMHgxLmZmOWUzOTY2NTFjYzk3ZTkzNWIyZTBlZTczNjA3ZDEycC01LAorICAgIC0weDEuODIyMDE5MjI3MGEwZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLmZlMmIyNmRkZGI1Yzg4MmYzMGE4ODVjMWIyOTFmOTQ1cC01LAorICAgIDB4MS44MjJiYjc4MGU5MTA0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuZmUyYjI2ZGRkYjVjODgyZjMwYTg4NWMxYjI5MWY5NDVwLTUsCisgICAgLTB4MS44MjJiYjc4MGU5MTA0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuZWI4N2NmZjdjOTExNTdhNzU1ODE4YzAxMjg0YjBlNTFwLTUsCisgICAgMHgxLjgyYzExOWM0YjhlNDlwMAorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIDB4MS5lYjg3Y2ZmN2M5MTE1N2E3NTU4MThjMDEyODRiMGU1MXAtNSwKKyAgICAtMHgxLjgyYzExOWM0YjhlNDlwMAorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIDB4MS5lYjg3Y2ZmN2E2MmI3N2I1N2E2NmFjMjc1YTMxMDRjOHAtNSwKKyAgICAweDEuODJjMTE5YzRiOWZjNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgMHgxLmViODdjZmY3YTYyYjc3YjU3YTY2YWMyNzVhMzEwNGM4cC01LAorICAgIC0weDEuODJjMTE5YzRiOWZjNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgMHgxLmViODdjZmY3OTVhYjE3YTgwNzg2NGQ4ZmIwY2E0M2NhcC01LAorICAgIDB4MS44MmMxMTljNGJhODA4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEuZWI4N2NmZjc5NWFiMTdhODA3ODY0ZDhmYjBjYTQzY2FwLTUsCisgICAgLTB4MS44MmMxMTljNGJhODA4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEuZGUxZDE3YWIwZDZhNDgzNjc1MjMxOTNkNjg1NjhjMWJwLTUsCisgICAgMHgxLjgzMmM5ZmM3NjUyNzBwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIDB4MS5kZTFkMTdhYjBkNmE0ODM2NzUyMzE5M2Q2ODU2OGMxYnAtNSwKKyAgICAtMHgxLjgzMmM5ZmM3NjUyNzBwMAorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIDB4MS5kYzg2ZTdiZWMwYzQ0ODQ4Y2ZjMzliN2YxYjgyMDRhY3AtNSwKKyAgICAweDEuODMzOTU2Y2U3ZDFmOXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgMHgxLmRjODZlN2JlYzBjNDQ4NDhjZmMzOWI3ZjFiODIwNGFjcC01LAorICAgIC0weDEuODMzOTU2Y2U3ZDFmOXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgMHgxLmRiMDNjYmI5NDJhN2E4NDk3NGU5MDRlY2M4OTZhNWVlcC01LAorICAgIDB4MS44MzQ1NzRlYjFjMDk5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuZGIwM2NiYjk0MmE3YTg0OTc0ZTkwNGVjYzg5NmE1ZWVwLTUsCisgICAgLTB4MS44MzQ1NzRlYjFjMDk5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuY2U0MzE3MTBkMTUwNzdiMWU4MTcwYTUzMmI2OGFiZGVwLTUsCisgICAgMHgxLjgzYWJhNTY4OGUxM2VwMAorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIDB4MS5jZTQzMTcxMGQxNTA3N2IxZTgxNzBhNTMyYjY4YWJkZXAtNSwKKyAgICAtMHgxLjgzYWJhNTY4OGUxM2VwMAorICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIDB4MS5jZDQ2YjNhNzdmNmRkN2FiMGQzMTI1NDZhYmE3YzBhZnAtNSwKKyAgICAweDEuODNiMzhiYmFmZDc1YnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgMHgxLmNkNDZiM2E3N2Y2ZGQ3YWIwZDMxMjU0NmFiYTdjMGFmcC01LAorICAgIC0weDEuODNiMzhiYmFmZDc1YnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgLTB4MS5mZjI5YmM2NjZiZWU2ZWE0NGQ0ZGIwMDBlNWYxNzNiZnAtMSwKKyAgICAweDEuODZhMDE3Y2IxYzMxY3AxNgorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEuZmYyOWJjNjY2YmVlNmVhNDRkNGRiMDAwZTVmMTczYmZwLTEsCisgICAgLTB4MS44NmEwMTdjYjFjMzFjcDE2CisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgLTB4MS43OTY4OTE2ZTRjNjQ2MzBlOGUzYWU2MDI3NmJhMmQyN3AtMiwKKyAgICAweDEuODcyMDU4OHAzOTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAtMHgxLjc5Njg5MTZlNGM2NDYzMGU4ZTNhZTYwMjc2YmEyZDI3cC0yLAorICAgIC0weDEuODcyMDU4OHAzOTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEuZmI5N2M3ZTQ1MjkxN2Y1OTg5MGRmYjQ3ZTdjOWI1ZTNwLTEsCisgICAgMHgxLjg4YTIyODhhMjI4ODhwOQorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIDB4MS5mYjk3YzdlNDUyOTE3ZjU5ODkwZGZiNDdlN2M5YjVlM3AtMSwKKyAgICAtMHgxLjg4YTIyODhhMjI4ODhwOQorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIC0weDEuYWU0NGE1ZjAxYmY2MzMwMTVlNWFhY2NjYWI0YTdmM2RwLTEsCisgICAgMHgxLjhjZjAxMzk5MWMzMDhwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0weDEuYWU0NGE1ZjAxYmY2MzMwMTVlNWFhY2NjYWI0YTdmM2RwLTEsCisgICAgLTB4MS44Y2YwMTM5OTFjMzA4cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuZDk2ZTgyZjcxYTlkYzdmZDg2ZjU3NDgwZTc1NDkxZTNwLTEsCisgICAgMHgxLjlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAweDEuZDk2ZTgyZjcxYTlkYzdmZDg2ZjU3NDgwZTc1NDkxZTNwLTEsCisgICAgLTB4MS45cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLjBmZDlkNWMwOTNkZjRmNTdmYzQ5NDYzZTJmM2YzM2U2cC03LAorICAgIDB4MS45cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAweDEuMGZkOWQ1YzA5M2RmNGY1N2ZjNDk0NjNlMmYzZjMzZTZwLTcsCisgICAgLTB4MS45cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuMGZkOWQ1YzA1ZTVmYzgwMWEwZjVjYmZhMzM3NzdhZTRwLTcsCisgICAgMHgxLjkwMDAwMDAwMDA2YjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIDB4MS4wZmQ5ZDVjMDVlNWZjODAxYTBmNWNiZmEzMzc3N2FlNHAtNywKKyAgICAtMHgxLjkwMDAwMDAwMDA2YjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDB4MS5iYzhiZTcyNTQxN2Q4ODAwMDAwY2FkYTQyZWVlYTA0ZXAtMSwKKyAgICAweDEuOTAwYzIwNmQ0NDE2MnA2CisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgMHgxLmJjOGJlNzI1NDE3ZDg4MDAwMDBjYWRhNDJlZWVhMDRlcC0xLAorICAgIC0weDEuOTAwYzIwNmQ0NDE2MnA2CisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgMHgxLmZmZmZmZmZmZjYzYjY3ZTQ5NzJkODZhMmY5ZDgyMDlicC0xLAorICAgIDB4MS45MDBjMmFmN2JhZWYzcC0xOQorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIDB4MS5mZmZmZmZmZmY2M2I2N2U0OTcyZDg2YTJmOWQ4MjA5YnAtMSwKKyAgICAtMHgxLjkwMGMyYWY3YmFlZjNwLTE5CisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgMHgxLmJkNDY0YzkzNTJkMTA3ZmZmZmZmOGRiOWUwZGE3MWMwcC0xLAorICAgIDB4MS45MDBmMTFiZDg5NTVkcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEuYmQ0NjRjOTM1MmQxMDdmZmZmZmY4ZGI5ZTBkYTcxYzBwLTEsCisgICAgLTB4MS45MDBmMTFiZDg5NTVkcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEuZmZmZmZkYTg1Y2RkMGQ0MzFlMDZmOWFhNzRiYzhjZTBwLTEsCisgICAgMHgxLjkxMGIzNWMzMjUzZDRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLmZmZmZmZGE4NWNkZDBkNDMxZTA2ZjlhYTc0YmM4Y2UwcC0xLAorICAgIC0weDEuOTEwYjM1YzMyNTNkNHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQ0MTlmYThwLTU0LAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQ0MTlmYThwLTU0LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgLTB4MS4yYWVlZjRiOWVhMWFlNGU2NGM3MWZjY2YxZmQwNmY0MHAtMTgsCisgICAgMHgxLjkyMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgLTB4MS4yYWVlZjRiOWVhMWFlNGU2NGM3MWZjY2YxZmQwNmY0MHAtMTgsCisgICAgLTB4MS45MjJwMAorICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIC0weDEuZmZmZmZmZmZkOTA0ODQ3Nzk4YzdhY2Q0NmFkMTgzY2FwLTE4LAorICAgIDB4MS45MjIwMzU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAtMHgxLmZmZmZmZmZmZDkwNDg0Nzc5OGM3YWNkNDZhZDE4M2NhcC0xOCwKKyAgICAtMHgxLjkyMjAzNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmYyYWM4YzNkYTcyY2JwLTEsCisgICAgMHgxLjkyNTFmOTNhZWI1OWRwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmMmFjOGMzZGE3MmNicC0xLAorICAgIC0weDEuOTI1MWY5M2FlYjU5ZHAxMgorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDB4MS5mZmI4YzRkMWY3OGE4N2ZmZmZmYjIzZDE3MWJkNTRkMHAtMSwKKyAgICAweDEuOTQzYmUyMjFkOTA5YXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgMHgxLmZmYjhjNGQxZjc4YTg3ZmZmZmZiMjNkMTcxYmQ1NGQwcC0xLAorICAgIC0weDEuOTQzYmUyMjFkOTA5YXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgMHgxLmZmZjYwMTFmZGRkYWI3ZjI1YzgyZTUzODRkNDZjYzY5cC0xLAorICAgIDB4MS45NGFmNjk5MzAyODc1cC03CisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgMHgxLmZmZjYwMTFmZGRkYWI3ZjI1YzgyZTUzODRkNDZjYzY5cC0xLAorICAgIC0weDEuOTRhZjY5OTMwMjg3NXAtNworICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIDB4MS5kNzk1NGU3YTNlZTk5ODAwMDA5OTQ3MDYwNDMyOWI2OHAtMSwKKyAgICAweDEuOTk5OTk5YWI3YjBlZHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIDB4MS5kNzk1NGU3YTNlZTk5ODAwMDA5OTQ3MDYwNDMyOWI2OHAtMSwKKyAgICAtMHgxLjk5OTk5OWFiN2IwZWRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuZDc5NTRlNzZjOGUzMGZmZmZmNWE5YmY0NTVhMDY0MTBwLTEsCisgICAgMHgxLjk5OTk5OWJkNDE5MGJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAweDEuZDc5NTRlNzZjOGUzMGZmZmZmNWE5YmY0NTVhMDY0MTBwLTEsCisgICAgLTB4MS45OTk5OTliZDQxOTBicC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgMHgxLmZhMjNjZmI4MjAyMjQ0MGViOTcyYzdlMDgzOTMzZDIwcC0xLAorICAgIDB4MS45YmQwZjE5NDc5YTI0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAweDEuZmEyM2NmYjgyMDIyNDQwZWI5NzJjN2UwODM5MzNkMjBwLTEsCisgICAgLTB4MS45YmQwZjE5NDc5YTI0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAtMHgxLjZhMDllNjY3ZjNhZjA3ZjJmNDY3NmI1ZjZmMjY4YzgxcC0xLAorICAgIDB4MS45YzU1ODM1ZTdlODNlcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAtMHgxLjZhMDllNjY3ZjNhZjA3ZjJmNDY3NmI1ZjZmMjY4YzgxcC0xLAorICAgIC0weDEuOWM1NTgzNWU3ZTgzZXA4CisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgMHgxLmZmZjU5YzEyNTU4MDk3ZjI4NThmNGExMzI2ZjJkZGY0cC0xLAorICAgIDB4MS45Yzk5NDJiMTQ0NDhkcC03CisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgMHgxLmZmZjU5YzEyNTU4MDk3ZjI4NThmNGExMzI2ZjJkZGY0cC0xLAorICAgIC0weDEuOWM5OTQyYjE0NDQ4ZHAtNworICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS5mZmVjZTVjYWI0Y2E1NjUyZWEyZmM3Y2NjZTg4MzMwNHAtMSwKKyAgICAweDEuOWQzZDkyNDg1ZTJiNXA1MjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAweDEuZmZlY2U1Y2FiNGNhNTY1MmVhMmZjN2NjY2U4ODMzMDRwLTEsCisgICAgLTB4MS45ZDNkOTI0ODVlMmI1cDUyMworICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIC0weDEuZmY1NTMwMWQzYTc4MGQxOWMyOGMyMmM4MmMxZjUzODNwLTUsCisgICAgMHgxLmEwZDA2ODM0MWEwODBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIC0weDEuZmY1NTMwMWQzYTc4MGQxOWMyOGMyMmM4MmMxZjUzODNwLTUsCisgICAgLTB4MS5hMGQwNjgzNDFhMDgwcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuNWE1NjE1YWNkMGRjMDliZjMyZTkwMzE0OTYzNGY5OTlwLTEsCisgICAgMHgxLmE3ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIDB4MS41YTU2MTVhY2QwZGMwOWJmMzJlOTAzMTQ5NjM0Zjk5OXAtMSwKKyAgICAtMHgxLmE3ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIDB4MS43NjZhZDI3YTFkZTRmYjFhNWI2NjcyMTZiYmU2YmY2OHAtMTQsCisgICAgMHgxLmE4NTgzNDM4NjM5NjVwMTE5CisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgMHgxLjc2NmFkMjdhMWRlNGZiMWE1YjY2NzIxNmJiZTZiZjY4cC0xNCwKKyAgICAtMHgxLmE4NTgzNDM4NjM5NjVwMTE5CisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgMHgxLjZiZDRkNWJlNzI0OTMyNWQ4NjgwNjA2ZTZiOWVhNjI1cC0xLAorICAgIDB4MS5hYjE5MDYzM2Q4OGVhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAweDEuNmJkNGQ1YmU3MjQ5MzI1ZDg2ODA2MDZlNmI5ZWE2MjVwLTEsCisgICAgLTB4MS5hYjE5MDYzM2Q4OGVhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAweDEuZmZmZmZmZmZmZjRhNTdlNjRkYTg3YTVhZjQ3Y2ZhMThwLTEsCisgICAgMHgxLmFmNGJkMmY0YmQyZjBwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMzYxCisgICAgMHgxLmZmZmZmZmZmZmY0YTU3ZTY0ZGE4N2E1YWY0N2NmYTE4cC0xLAorICAgIC0weDEuYWY0YmQyZjRiZDJmMHAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuN2ZmMjkzNGFkMjlhNzQyODhiODg2MTI0ZmVhZDU4NDJwLTEsCisgICAgMHgxLmFmYTcwMzAwYWVlNjBwNzIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAweDEuN2ZmMjkzNGFkMjlhNzQyODhiODg2MTI0ZmVhZDU4NDJwLTEsCisgICAgLTB4MS5hZmE3MDMwMGFlZTYwcDcyCisgIH0sCisgIHsgLy8gRW50cnkgMzY0CisgICAgMHgxLmZmODY2YWViZGNlMGE3ZmZmZmZiNjA3NGQ1MTk5ODk2cC0xLAorICAgIDB4MS5iNWFiNDI3Y2ZmYjRjcDk0CisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgMHgxLmZmODY2YWViZGNlMGE3ZmZmZmZiNjA3NGQ1MTk5ODk2cC0xLAorICAgIC0weDEuYjVhYjQyN2NmZmI0Y3A5NAorICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIC0weDEuZjU0ZjUyMjdhNGU4M2ZiZjkzOWIyZTk2MTc4ZjEyMWRwLTYwLAorICAgIDB4MS5iOTUxZjE1NzJlYmE1cDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgLTB4MS5mNTRmNTIyN2E0ZTgzZmJmOTM5YjJlOTYxNzhmMTIxZHAtNjAsCisgICAgLTB4MS5iOTUxZjE1NzJlYmE1cDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzY4CisgICAgMHgxLmZmZmQwNmQzNTU3OWM3ZmUyOTVkYWQxN2VmYmJiZTk3cC0xLAorICAgIDB4MS5iOTZlNWI5NmU1YjkxcC04CisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgMHgxLmZmZmQwNmQzNTU3OWM3ZmUyOTVkYWQxN2VmYmJiZTk3cC0xLAorICAgIC0weDEuYjk2ZTViOTZlNWI5MXAtOAorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIC0weDEuN2M0MTI4ZTJhZmY0YjJiNzhlMTQ3NjAxZmE2NThhZjVwLTEsCisgICAgMHgxLmJhM2IxODM5NWQxN2JwOAorICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIC0weDEuN2M0MTI4ZTJhZmY0YjJiNzhlMTQ3NjAxZmE2NThhZjVwLTEsCisgICAgLTB4MS5iYTNiMTgzOTVkMTdicDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlZmFmZjlkcC0xLAorICAgIDB4MS5iYWI2MmVkNjU1MDE5cDk3MAorICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVmYWZmOWRwLTEsCisgICAgLTB4MS5iYWI2MmVkNjU1MDE5cDk3MAorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS5mZmZmZmYzZTUzNDQ2N2ZmZmZmMzdlNTA5YjdiNzkyZXAtMSwKKyAgICAweDEuYmQ1NWFhNDExYWI0NnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzUKKyAgICAweDEuZmZmZmZmM2U1MzQ0NjdmZmZmZjM3ZTUwOWI3Yjc5MmVwLTEsCisgICAgLTB4MS5iZDU1YWE0MTFhYjQ2cC0xMworICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIC0weDEuN2ZkYjA3YjlmNzdlMDdmZmZmNzIwN2M0NjI4ZDNmNjhwLTEsCisgICAgMHgxLmJkNjE2ZDRmZTk1Y2RwMzYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAtMHgxLjdmZGIwN2I5Zjc3ZTA3ZmZmZjcyMDdjNDYyOGQzZjY4cC0xLAorICAgIC0weDEuYmQ2MTZkNGZlOTVjZHAzNgorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS5mZmNmNGRhNzYyMjJjODg5NzE4MjM5NTIzMzQxZjRiNXAtMSwKKyAgICAweDEuYmVhcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzc5CisgICAgMHgxLmZmY2Y0ZGE3NjIyMmM4ODk3MTgyMzk1MjMzNDFmNGI1cC0xLAorICAgIC0weDEuYmVhcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgLTB4MS5kZGVlMTMzNTdlYzZmN2ZjYzk1MDIzOTlmY2NkYzJmMHAtMSwKKyAgICAweDEuYzExNTE2YWY1ODVhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgLTB4MS5kZGVlMTMzNTdlYzZmN2ZjYzk1MDIzOTlmY2NkYzJmMHAtMSwKKyAgICAtMHgxLmMxMTUxNmFmNTg1YTRwMQorICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIDB4MS41OGNjY2VjMDU5ZGExN2QzZjQ0OGE4YjJiNmU3YzBlOHAtMSwKKyAgICAweDEuYzc1ZTU0ZGU0YzA2ZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgMHgxLjU4Y2NjZWMwNTlkYTE3ZDNmNDQ4YThiMmI2ZTdjMGU4cC0xLAorICAgIC0weDEuYzc1ZTU0ZGU0YzA2ZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmM4NjYzZXAtMSwKKyAgICAweDEuY2I0NGU4NmJjMTkyYnA2NDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYzg2NjNlcC0xLAorICAgIC0weDEuY2I0NGU4NmJjMTkyYnA2NDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYyMTk4ZjlwLTEsCisgICAgMHgxLmNiNDRlODZiYzE5MmJwNjQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMjE5OGY5cC0xLAorICAgIC0weDEuY2I0NGU4NmJjMTkyYnA2NDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODgKKyAgICAtMHgxLmNhMjgxZDdmZTQ0YjA3ZmZmZmQyYjdkNDZhYjVkMzYxcC0xLAorICAgIDB4MS5jZDVhNmY4NzYyYWZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAtMHgxLmNhMjgxZDdmZTQ0YjA3ZmZmZmQyYjdkNDZhYjVkMzYxcC0xLAorICAgIC0weDEuY2Q1YTZmODc2MmFmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzkwCisgICAgMHgxLmU4MGFkNGZlNTRjNzFkNGU2MDRlZGU0NzRjY2EwYjE5cC01LAorICAgIDB4MS5kMGNiOTVmMDJhZDc3cDQ2NAorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS5lODBhZDRmZTU0YzcxZDRlNjA0ZWRlNDc0Y2NhMGIxOXAtNSwKKyAgICAtMHgxLmQwY2I5NWYwMmFkNzdwNDY0CisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgMHgxLjBkZjhlYjQwOWVmZTM3ZmZmZmY5MjViNWRlMmM4MGI2cC0xLAorICAgIDB4MS5kMzFiZDYwNDkwM2EwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAweDEuMGRmOGViNDA5ZWZlMzdmZmZmZjkyNWI1ZGUyYzgwYjZwLTEsCisgICAgLTB4MS5kMzFiZDYwNDkwM2EwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTQKKyAgICAweDEuZmYyYWU5NjhlZmU3MGVhNDEyNjg0OWMzODMyYzljYmRwLTEsCisgICAgMHgxLmQzMmY0NjEwMTgwZjZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAweDEuZmYyYWU5NjhlZmU3MGVhNDEyNjg0OWMzODMyYzljYmRwLTEsCisgICAgLTB4MS5kMzJmNDYxMDE4MGY2cC01CisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgLTB4MS5jZWMzMDdhNjc0ZDNlZDJmOGRmNDdjZjM5NGFhODhlYXAtMywKKyAgICAweDEuZDk2ZTA1OHA0ODgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAtMHgxLmNlYzMwN2E2NzRkM2VkMmY4ZGY0N2NmMzk0YWE4OGVhcC0zLAorICAgIC0weDEuZDk2ZTA1OHA0ODgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTgKKyAgICAtMHgxLmFjOGRiZjljZGM5NTQ4MzU3NzU2MGIxODE0ZWE4ODk1cC01LAorICAgIDB4MS5kYjA4MDNjMzkyYjRjcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgLTB4MS5hYzhkYmY5Y2RjOTU0ODM1Nzc1NjBiMTgxNGVhODg5NXAtNSwKKyAgICAtMHgxLmRiMDgwM2MzOTJiNGNwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDAKKyAgICAtMHgxLmFjOTQ4NzBjYTYzMTY4NGJkMTBiNjU4YjgwY2ZjZDQycC01LAorICAgIDB4MS5kYjA4MDNjM2ZmNTFkcDE1CisgIH0sCisgIHsgLy8gRW50cnkgNDAxCisgICAgLTB4MS5hYzk0ODcwY2E2MzE2ODRiZDEwYjY1OGI4MGNmY2Q0MnAtNSwKKyAgICAtMHgxLmRiMDgwM2MzZmY1MWRwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDIKKyAgICAweDEuZmYyMjkwNzNmZDhiNWU5MWQ2MGRkMDk1Y2ZkZTU5NjdwLTEsCisgICAgMHgxLmRjNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIDB4MS5mZjIyOTA3M2ZkOGI1ZTkxZDYwZGQwOTVjZmRlNTk2N3AtMSwKKyAgICAtMHgxLmRjNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIDB4MS5mZjIxZTVmOTc1ZmZmZTgzYzJhZTFjNTVhODg1ZjEyZnAtMSwKKyAgICAweDEuZGNmNzNkY2Y3M2RjY3AtNQorICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIDB4MS5mZjIxZTVmOTc1ZmZmZTgzYzJhZTFjNTVhODg1ZjEyZnAtMSwKKyAgICAtMHgxLmRjZjczZGNmNzNkY2NwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDYKKyAgICAweDEuMmYwMTEzMjY0MjBlNTAwMjE3MmRiMjQ1ZmQ5MDYzZTJwLTEsCisgICAgMHgxLmRmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICAweDEuMmYwMTEzMjY0MjBlNTAwMjE3MmRiMjQ1ZmQ5MDYzZTJwLTEsCisgICAgLTB4MS5kZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA4CisgICAgMHgxLmY3MmM4ZTE2ZGJjNzhiMjZhZmJmMzQ2MTg1ZGNjYjQ4cC0xLAorICAgIDB4MS5lMTIzNjkxYTdjNGJlcDI2CisgIH0sCisgIHsgLy8gRW50cnkgNDA5CisgICAgMHgxLmY3MmM4ZTE2ZGJjNzhiMjZhZmJmMzQ2MTg1ZGNjYjQ4cC0xLAorICAgIC0weDEuZTEyMzY5MWE3YzRiZXAyNgorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIC0weDEuNGIwYzZiYjYyM2Y1N2ZmZmZmNWU0NTgyMDNkZWVmMzNwLTIsCisgICAgMHgxLmU2NjY2NjZmOWNmNDlwMAorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIC0weDEuNGIwYzZiYjYyM2Y1N2ZmZmZmNWU0NTgyMDNkZWVmMzNwLTIsCisgICAgLTB4MS5lNjY2NjY2ZjljZjQ5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTIKKyAgICAweDEuZmQ3NGI1NTg3NTg4NDgxODg0YTkyZTgzNzQ3ZjVjNGVwLTEsCisgICAgMHgxLmU4M2FjY2ZjNTBiNzBwOTk1CisgIH0sCisgIHsgLy8gRW50cnkgNDEzCisgICAgMHgxLmZkNzRiNTU4NzU4ODQ4MTg4NGE5MmU4Mzc0N2Y1YzRlcC0xLAorICAgIC0weDEuZTgzYWNjZmM1MGI3MHA5OTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTQKKyAgICAweDEuZmZmMTY5YjZhYjdkMTdmNDNkNTlmNmNmMDg1YWNjYjBwLTEsCisgICAgMHgxLmU4ZXAtNworICB9LAorICB7IC8vIEVudHJ5IDQxNQorICAgIDB4MS5mZmYxNjliNmFiN2QxN2Y0M2Q1OWY2Y2YwODVhY2NiMHAtMSwKKyAgICAtMHgxLmU4ZXAtNworICB9LAorICB7IC8vIEVudHJ5IDQxNgorICAgIDB4MS43ZDM5YzlmMWIwYjNjMDAyN2E1ZmM5YTc2ZmFlZTgzZHAtMSwKKyAgICAweDEuZWFmNWVhNTMxNzQ0MnA0CisgIH0sCisgIHsgLy8gRW50cnkgNDE3CisgICAgMHgxLjdkMzljOWYxYjBiM2MwMDI3YTVmYzlhNzZmYWVlODNkcC0xLAorICAgIC0weDEuZWFmNWVhNTMxNzQ0MnA0CisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgMHgxLjdmMTNhZjcwODFhNjc0MTY2MDQ2OWZkNjAyNTVmZTQ5cC0xLAorICAgIDB4MS5lYjBjMmIwMGIxYjgzcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTkKKyAgICAweDEuN2YxM2FmNzA4MWE2NzQxNjYwNDY5ZmQ2MDI1NWZlNDlwLTEsCisgICAgLTB4MS5lYjBjMmIwMGIxYjgzcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjAKKyAgICAtMHgxLjdhZDdiODhhMWZlMGY4MmI2ZjI0OWM3YzU2ZGQ4YjVhcC0xLAorICAgIDB4MS5lYmM2YjU1NTMxMWM0cDE1CisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgLTB4MS43YWQ3Yjg4YTFmZTBmODJiNmYyNDljN2M1NmRkOGI1YXAtMSwKKyAgICAtMHgxLmViYzZiNTU1MzExYzRwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAweDEuYjA2YjJiNThhMmEyM2M5OGIxMjg1MzQxNWI1YzgzYTFwLTUsCisgICAgMHgxLmVmN2JkZWY3YmRlZjJwMjM5CisgIH0sCisgIHsgLy8gRW50cnkgNDIzCisgICAgMHgxLmIwNmIyYjU4YTJhMjNjOThiMTI4NTM0MTViNWM4M2ExcC01LAorICAgIC0weDEuZWY3YmRlZjdiZGVmMnAyMzkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjQKKyAgICAweDEuZmU2ZGVkNTMxNzJhNjg3Njc5MGQzYWFiODNhNjU2ZjRwLTEsCisgICAgMHgxLmVmYmJlZWZiYmVlZjhwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAweDEuZmU2ZGVkNTMxNzJhNjg3Njc5MGQzYWFiODNhNjU2ZjRwLTEsCisgICAgLTB4MS5lZmJiZWVmYmJlZWY4cDE1CisgIH0sCisgIHsgLy8gRW50cnkgNDI2CisgICAgLTB4MS5mZTJiY2I4N2E3ZTE1OGNmZmEyZmU4ZDMwNmNjNzU1NXAtMSwKKyAgICAweDEuZjA3YzFmMDdjMWVmN3AyMzkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAtMHgxLmZlMmJjYjg3YTdlMTU4Y2ZmYTJmZThkMzA2Y2M3NTU1cC0xLAorICAgIC0weDEuZjA3YzFmMDdjMWVmN3AyMzkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAtMHgxLjc5ZDA4ZDZiM2E4ODI4MmUwYTBkYTIzNTA0NjRkMGFicC0xLAorICAgIDB4MS5mMGYyYjVlMDYwYjI5cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAtMHgxLjc5ZDA4ZDZiM2E4ODI4MmUwYTBkYTIzNTA0NjRkMGFicC0xLAorICAgIC0weDEuZjBmMmI1ZTA2MGIyOXAxCisgIH0sCisgIHsgLy8gRW50cnkgNDMwCisgICAgMHgxLmYwZDExZDMyMTE3OGQ3ZmYxNWRhNDg5OTBkNTk4M2MycC0xLAorICAgIDB4MS5mNDBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAweDEuZjBkMTFkMzIxMTc4ZDdmZjE1ZGE0ODk5MGQ1OTgzYzJwLTEsCisgICAgLTB4MS5mNDBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzIKKyAgICAweDEuZTNmZjViMTVmNzIzZDdmN2Y3ZjViYjBkYmNlNTRkMDFwLTQsCisgICAgMHgxLmY0M2Q0OWY5NDdlODdwOQorICB9LAorICB7IC8vIEVudHJ5IDQzMworICAgIDB4MS5lM2ZmNWIxNWY3MjNkN2Y3ZjdmNWJiMGRiY2U1NGQwMXAtNCwKKyAgICAtMHgxLmY0M2Q0OWY5NDdlODdwOQorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIC0weDEuNjYzNmM5ZjZhODdhOTdmMWNiZGY3MDhhMmYxYWQ5YmFwLTEsCisgICAgMHgxLmY3ZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDQzNQorICAgIC0weDEuNjYzNmM5ZjZhODdhOTdmMWNiZGY3MDhhMmYxYWQ5YmFwLTEsCisgICAgLTB4MS5mN2ZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzYKKyAgICAweDEuZmZjMWJlMzMwOTI4NTdmZjI2MjIwZjk5ODE2MzViYzdwLTEsCisgICAgMHgxLmY4ZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAweDEuZmZjMWJlMzMwOTI4NTdmZjI2MjIwZjk5ODE2MzViYzdwLTEsCisgICAgLTB4MS5mOGZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLmZmYzFiZTMzMDkyODU3ZmIzNDRhZmZkZDkzZDA0M2E3cC0xLAorICAgIDB4MS5mOTBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzkKKyAgICAweDEuZmZjMWJlMzMwOTI4NTdmYjM0NGFmZmRkOTNkMDQzYTdwLTEsCisgICAgLTB4MS5mOTBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAtMHgxLmZmZmZmZmZjYWIwZDU4MjIwNjY5ZGNmYTQyMWNjZmE2cC0xLAorICAgIDB4MS5mYTAyMzY1MjNjZTU0cDM0NAorICB9LAorICB7IC8vIEVudHJ5IDQ0MQorICAgIC0weDEuZmZmZmZmZmNhYjBkNTgyMjA2NjlkY2ZhNDIxY2NmYTZwLTEsCisgICAgLTB4MS5mYTAyMzY1MjNjZTU0cDM0NAorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIDB4MS5mYzBkOThhY2UyMzA4ODAwMDAwMjEyNzg4YTc5NGVhY3AtMSwKKyAgICAweDEuZmNlYWI1NGQzN2RhMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ0MworICAgIDB4MS5mYzBkOThhY2UyMzA4ODAwMDAwMjEyNzg4YTc5NGVhY3AtMSwKKyAgICAtMHgxLmZjZWFiNTRkMzdkYTBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDQKKyAgICAtMHgxLjk1ODliY2ExMjhiOTE3ZmU1OTY5MmE3MzhjMzc5MWM5cC00LAorICAgIDB4MS5mZDAwNzJmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDUKKyAgICAtMHgxLjk1ODliY2ExMjhiOTE3ZmU1OTY5MmE3MzhjMzc5MWM5cC00LAorICAgIC0weDEuZmQwMDcyZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDQ2CisgICAgLTB4MS40ZDMwNGIwN2ZjODk3Y2YxYWRlNTRmZTk3ZGI3YzhiZHAtMiwKKyAgICAweDEuZmUwZjgyNzY3MzQyMnA2MgorICB9LAorICB7IC8vIEVudHJ5IDQ0NworICAgIC0weDEuNGQzMDRiMDdmYzg5N2NmMWFkZTU0ZmU5N2RiN2M4YmRwLTIsCisgICAgLTB4MS5mZTBmODI3NjczNDIycDYyCisgIH0sCisgIHsgLy8gRW50cnkgNDQ4CisgICAgMHgxLmMxYTI3YWU4MzZmMTI4MDAwMDAwMDAwMDAwNTA0ZTlicC0xLAorICAgIDB4MS5mZWIxZjc5MjBlMjQ4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDQ5CisgICAgMHgxLmMxYTI3YWU4MzZmMTI4MDAwMDAwMDAwMDAwNTA0ZTlicC0xLAorICAgIC0weDEuZmViMWY3OTIwZTI0OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIC0weDEuOTM2YjY0ZTk1NTk3OGQxNWFhY2ZkZGY1ODIxYzYyODFwLTEsCisgICAgMHgxLmZlZWZmZmZmZmZmYzZwOTk1CisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgLTB4MS45MzZiNjRlOTU1OTc4ZDE1YWFjZmRkZjU4MjFjNjI4MXAtMSwKKyAgICAtMHgxLmZlZWZmZmZmZmZmYzZwOTk1CisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgMHgxLmZmZjAwNzE0N2VhNTc3ZmIwMjEzMGM2OGIzMzVlZjQ1cC0xLAorICAgIDB4MS5mZjhmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgMHgxLmZmZjAwNzE0N2VhNTc3ZmIwMjEzMGM2OGIzMzVlZjQ1cC0xLAorICAgIC0weDEuZmY4ZmZmZmZmZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDQ1NAorICAgIDB4MS5mZmZmYzAxYmZlNDQyYjA5Y2JlYzE5ZjY4YWY4ZmJmOHAtMSwKKyAgICAweDEuZmY4ZmZmZmZmZmZmZnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAweDEuZmZmZmMwMWJmZTQ0MmIwOWNiZWMxOWY2OGFmOGZiZjhwLTEsCisgICAgLTB4MS5mZjhmZmZmZmZmZmZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NgorICAgIDB4MS43Y2M5ZmI3NTMxN2FlOTNiZjVkZGVlMGU4YjljODNjZXAtMSwKKyAgICAweDEuZmY4ZmZmZmZmZmZmZnA4NzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTcKKyAgICAweDEuN2NjOWZiNzUzMTdhZTkzYmY1ZGRlZTBlOGI5YzgzY2VwLTEsCisgICAgLTB4MS5mZjhmZmZmZmZmZmZmcDg3MAorICB9LAorICB7IC8vIEVudHJ5IDQ1OAorICAgIDB4MS5kNmFlYTQ4MDE1NTg4ZTcxOTgzMTQyODA0MjI3ZmQ4NHAtMSwKKyAgICAweDEuZmZjZmZmOHAxOQorICB9LAorICB7IC8vIEVudHJ5IDQ1OQorICAgIDB4MS5kNmFlYTQ4MDE1NTg4ZTcxOTgzMTQyODA0MjI3ZmQ4NHAtMSwKKyAgICAtMHgxLmZmY2ZmZjhwMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjAKKyAgICAtMHgxLjZhOTk3MmVlZTE5YmFkZjllMzRkMzZiMGQxMjAyMDkxcC0yLAorICAgIDB4MS5mZmNmZmY4cDM2NQorICB9LAorICB7IC8vIEVudHJ5IDQ2MQorICAgIC0weDEuNmE5OTcyZWVlMTliYWRmOWUzNGQzNmIwZDEyMDIwOTFwLTIsCisgICAgLTB4MS5mZmNmZmY4cDM2NQorICB9LAorICB7IC8vIEVudHJ5IDQ2MgorICAgIC0weDEuM2FhYTE1Zjc1NDRiNjkxYTQzZTFmYTFhNjM5YmRmYzJwLTEsCisgICAgMHgxLmZmY2ZmZmZmZmZmNmNwNzIwCisgIH0sCisgIHsgLy8gRW50cnkgNDYzCisgICAgLTB4MS4zYWFhMTVmNzU0NGI2OTFhNDNlMWZhMWE2MzliZGZjMnAtMSwKKyAgICAtMHgxLmZmY2ZmZmZmZmZmNmNwNzIwCisgIH0sCisgIHsgLy8gRW50cnkgNDY0CisgICAgMHgxLjNmMTY0YmNlMDU1YzRjNjFiNzRhNjFmNzNjYTczZDNmcC0xLAorICAgIDB4MS5mZmNmZmZmZmZmZmY5cDMyMAorICB9LAorICB7IC8vIEVudHJ5IDQ2NQorICAgIDB4MS4zZjE2NGJjZTA1NWM0YzYxYjc0YTYxZjczY2E3M2QzZnAtMSwKKyAgICAtMHgxLmZmY2ZmZmZmZmZmZjlwMzIwCisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgMHgxLmZmZmZmMDAyZmZmMTRkNTY2YWU4ZWM5ZDFlZGMzZTNmcC0xLAorICAgIDB4MS5mZmNmZmZmZmZmZmZmcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIDB4MS5mZmZmZjAwMmZmZjE0ZDU2NmFlOGVjOWQxZWRjM2UzZnAtMSwKKyAgICAtMHgxLmZmY2ZmZmZmZmZmZmZwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNDY4CisgICAgLTB4MS5mZmZmZmY5ODdmOTg1ZDY3OTQ0Yjg2N2JmZjRhYjg1N3AtMSwKKyAgICAweDEuZmZjZmZmZmZmZmZmZnA0MDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjkKKyAgICAtMHgxLmZmZmZmZjk4N2Y5ODVkNjc5NDRiODY3YmZmNGFiODU3cC0xLAorICAgIC0weDEuZmZjZmZmZmZmZmZmZnA0MDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzAKKyAgICAtMHgxLmZmZmY2MjM1YTI1ZWRiOGM5NzViNDg1YzVjNmY0MWY3cC0xLAorICAgIDB4MS5mZmNmZmZmZmZmZmZmcDU2NworICB9LAorICB7IC8vIEVudHJ5IDQ3MQorICAgIC0weDEuZmZmZjYyMzVhMjVlZGI4Yzk3NWI0ODVjNWM2ZjQxZjdwLTEsCisgICAgLTB4MS5mZmNmZmZmZmZmZmZmcDU2NworICB9LAorICB7IC8vIEVudHJ5IDQ3MgorICAgIDB4MS5mZGYxMWFlNDYwOGIwODk0YmFiODc4Njk0OWFhNjMzM3AtMywKKyAgICAweDEuZmZlZmZmOGZmZmZmZnAxNgorICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIDB4MS5mZGYxMWFlNDYwOGIwODk0YmFiODc4Njk0OWFhNjMzM3AtMywKKyAgICAtMHgxLmZmZWZmZjhmZmZmZmZwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzQKKyAgICAweDEuOGY1NTI1YWI0NTgzYzA2NDM1M2FhYWQxMmM2Y2NlNmNwLTEsCisgICAgMHgxLmZmZWZmZmZmZmZmY2NwOTk1CisgIH0sCisgIHsgLy8gRW50cnkgNDc1CisgICAgMHgxLjhmNTUyNWFiNDU4M2MwNjQzNTNhYWFkMTJjNmNjZTZjcC0xLAorICAgIC0weDEuZmZlZmZmZmZmZmZjY3A5OTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAweDEuYTBhZjQ0YTQ1YzA1NjliNzIwNThjYzM0ZWZkMGUzMmVwLTgsCisgICAgMHgxLmZmZWZmZmZmZmZmZmZwNzcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAweDEuYTBhZjQ0YTQ1YzA1NjliNzIwNThjYzM0ZWZkMGUzMmVwLTgsCisgICAgLTB4MS5mZmVmZmZmZmZmZmZmcDc3CisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgLTB4MS5kZjc1NDZjMzFiZjhjZmZlZjY5YzQ4NTlkYTA1NWYzM3AtMSwKKyAgICAweDEuZmZlZmZmZmZmZmZmZnAxMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzkKKyAgICAtMHgxLmRmNzU0NmMzMWJmOGNmZmVmNjljNDg1OWRhMDU1ZjMzcC0xLAorICAgIC0weDEuZmZlZmZmZmZmZmZmZnAxMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODAKKyAgICAtMHgxLjgyNWE3YmVhMjdkNWIxYTU5OGFmNmI2ODRlYjE4NDc4cC0xLAorICAgIDB4MS5mZmVmZmZmZmZmZmZmcDE3OQorICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIC0weDEuODI1YTdiZWEyN2Q1YjFhNTk4YWY2YjY4NGViMTg0NzhwLTEsCisgICAgLTB4MS5mZmVmZmZmZmZmZmZmcDE3OQorICB9LAorICB7IC8vIEVudHJ5IDQ4MgorICAgIC0weDEuMWJlMmFiMjA3OGQ1NDdmZmYwOTkzMjAxMWZlMTY0NTZwLTEsCisgICAgMHgxLmZmZWZmZmZmZmZmZmZwMjM4CisgIH0sCisgIHsgLy8gRW50cnkgNDgzCisgICAgLTB4MS4xYmUyYWIyMDc4ZDU0N2ZmZjA5OTMyMDExZmUxNjQ1NnAtMSwKKyAgICAtMHgxLmZmZWZmZmZmZmZmZmZwMjM4CisgIH0sCisgIHsgLy8gRW50cnkgNDg0CisgICAgLTB4MS5hNGNjNWY4MzhmNTI5N2UwYTdlNzQ5Y2IwODdjMmYxNHAtNywKKyAgICAweDEuZmZmMDAwMDAwMjUxMXA0OTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAtMHgxLmE0Y2M1ZjgzOGY1Mjk3ZTBhN2U3NDljYjA4N2MyZjE0cC03LAorICAgIC0weDEuZmZmMDAwMDAwMjUxMXA0OTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODYKKyAgICAweDEuZjE2NDM3ZDYxMTlmODliZmE3M2EyZjE0ZjM3N2ZkM2VwLTEwLAorICAgIDB4MS5mZmYxZmZmZmZmZmZmcDQxCisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgMHgxLmYxNjQzN2Q2MTE5Zjg5YmZhNzNhMmYxNGYzNzdmZDNlcC0xMCwKKyAgICAtMHgxLmZmZjFmZmZmZmZmZmZwNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAweDEuODk4MzI0YzJmMWNmYzU5NmU1OTBiNGE4MGQyNTA4ZmJwLTExLAorICAgIDB4MS5mZmZmYzdmZmZmZmZmcDQ1CisgIH0sCisgIHsgLy8gRW50cnkgNDg5CisgICAgMHgxLjg5ODMyNGMyZjFjZmM1OTZlNTkwYjRhODBkMjUwOGZicC0xMSwKKyAgICAtMHgxLmZmZmZjN2ZmZmZmZmZwNDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTAKKyAgICAweDEuZjAxNTRjMDA2ODhmODdmY2M5NmYxNGM4ZWZiNTkxNGZwLTEsCisgICAgMHgxLmZmZmZkZjFmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAweDEuZjAxNTRjMDA2ODhmODdmY2M5NmYxNGM4ZWZiNTkxNGZwLTEsCisgICAgLTB4MS5mZmZmZGYxZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDkyCisgICAgMHgxLmZmYzAwMTU3MTI2YTdkOTgyMTY0OTFkZjczZDk3Y2QzcC0xLAorICAgIDB4MS5mZmZmZjhmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDkzCisgICAgMHgxLmZmYzAwMTU3MTI2YTdkOTgyMTY0OTFkZjczZDk3Y2QzcC0xLAorICAgIC0weDEuZmZmZmY4ZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ5NAorICAgIC0weDEuZTBkOWYwZjM4YzczZjAwNjk3MzllOWRlNjUxOTE0MTZwLTIsCisgICAgMHgxLmZmZmZmYmZmZmZmZmZwOTY4CisgIH0sCisgIHsgLy8gRW50cnkgNDk1CisgICAgLTB4MS5lMGQ5ZjBmMzhjNzNmMDA2OTczOWU5ZGU2NTE5MTQxNnAtMiwKKyAgICAtMHgxLmZmZmZmYmZmZmZmZmZwOTY4CisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgMHgxLmZmZjQ2OTlkZDU2MGI1ZGJiODhhMDI5MzM3YjlhYjg2cC0xLAorICAgIDB4MS5mZmZmZmNmZmZmZmZmcDQwCisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgMHgxLmZmZjQ2OTlkZDU2MGI1ZGJiODhhMDI5MzM3YjlhYjg2cC0xLAorICAgIC0weDEuZmZmZmZjZmZmZmZmZnA0MAorICB9LAorICB7IC8vIEVudHJ5IDQ5OAorICAgIDB4MS5mZjAwMTU1NTlmMjI4ODAyNDMzNzMyYWUxMTk0Mjk0NXAtMSwKKyAgICAweDEuZmZmZmZmMDAwMDA0MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ5OQorICAgIDB4MS5mZjAwMTU1NTlmMjI4ODAyNDMzNzMyYWUxMTk0Mjk0NXAtMSwKKyAgICAtMHgxLmZmZmZmZjAwMDAwNDBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDAKKyAgICAtMHgxLjljNjk1MWNjY2QzOWJmNjBkNDdkYjgwYmU2ZmNlMzRmcC0yLAorICAgIDB4MS5mZmZmZmY4cDExOQorICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIC0weDEuOWM2OTUxY2NjZDM5YmY2MGQ0N2RiODBiZTZmY2UzNGZwLTIsCisgICAgLTB4MS5mZmZmZmY4cDExOQorICB9LAorICB7IC8vIEVudHJ5IDUwMgorICAgIC0weDEuZjJjMjI2MzU5MDAzNGVjNjI1MjJkNDVkMmVlY2EyODVwLTEsCisgICAgMHgxLmZmZmZmZjhwMTkyCisgIH0sCisgIHsgLy8gRW50cnkgNTAzCisgICAgLTB4MS5mMmMyMjYzNTkwMDM0ZWM2MjUyMmQ0NWQyZWVjYTI4NXAtMSwKKyAgICAtMHgxLmZmZmZmZjhwMTkyCisgIH0sCisgIHsgLy8gRW50cnkgNTA0CisgICAgMHgxLmM3ODg0ZDZjZmI1NTExYTZiNTExMTA3N2ZkMGIxYjcycC0xLAorICAgIDB4MS5mZmZmZmY4cDU0MworICB9LAorICB7IC8vIEVudHJ5IDUwNQorICAgIDB4MS5jNzg4NGQ2Y2ZiNTUxMWE2YjUxMTEwNzdmZDBiMWI3MnAtMSwKKyAgICAtMHgxLmZmZmZmZjhwNTQzCisgIH0sCisgIHsgLy8gRW50cnkgNTA2CisgICAgMHgxLmU2NmM3OWU3NzZhMWVmZjZiNjhmMmQwMTI4OWUwOGU4cC0yLAorICAgIDB4MS5mZmZmZmZjM2ZmZmZmcDUwMAorICB9LAorICB7IC8vIEVudHJ5IDUwNworICAgIDB4MS5lNjZjNzllNzc2YTFlZmY2YjY4ZjJkMDEyODllMDhlOHAtMiwKKyAgICAtMHgxLmZmZmZmZmMzZmZmZmZwNTAwCisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLmM3YzlhOWM1N2MwYjIwMDlmMThhNmMyYzA3YjUyZWEycC0zLAorICAgIDB4MS5mZmZmZmZlMWZmZmZmcDcwMAorICB9LAorICB7IC8vIEVudHJ5IDUwOQorICAgIDB4MS5jN2M5YTljNTdjMGIyMDA5ZjE4YTZjMmMwN2I1MmVhMnAtMywKKyAgICAtMHgxLmZmZmZmZmUxZmZmZmZwNzAwCisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgMHgxLjdiYjI4ZGFmNWY5YWQzNjA4ZGRhOGExNmVhMjM1Y2I0cC0xLAorICAgIDB4MS5mZmZmZmZmZjBmMGZmcDQwMAorICB9LAorICB7IC8vIEVudHJ5IDUxMQorICAgIDB4MS43YmIyOGRhZjVmOWFkMzYwOGRkYThhMTZlYTIzNWNiNHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmMGYwZmZwNDAwCisgIH0sCisgIHsgLy8gRW50cnkgNTEyCisgICAgMHgxLmZjMDE1NTI3ZDhiYjM3ODA2ZTQ5NzZkY2Y3YTdjOThjcC0xLAorICAgIDB4MS5mZmZmZmZmZjNmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTEzCisgICAgMHgxLmZjMDE1NTI3ZDhiYjM3ODA2ZTQ5NzZkY2Y3YTdjOThjcC0xLAorICAgIC0weDEuZmZmZmZmZmYzZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDUxNAorICAgIC0weDEuZWE1MjU3ZWI2NmUzYmZmZWU5MDBjZDQ0NDc0MDRjMTZwLTEsCisgICAgMHgxLmZmZmZmZmZmOGZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIC0weDEuZWE1MjU3ZWI2NmUzYmZmZWU5MDBjZDQ0NDc0MDRjMTZwLTEsCisgICAgLTB4MS5mZmZmZmZmZjhmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTYKKyAgICAtMHgxLjRlYWE2MDZkYmVmOTY4MDAwMjY3YjAzNzVkZWQ2ODcycC0xLAorICAgIDB4MS5mZmZmZmZmZmZiY2ZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTcKKyAgICAtMHgxLjRlYWE2MDZkYmVmOTY4MDAwMjY3YjAzNzVkZWQ2ODcycC0xLAorICAgIC0weDEuZmZmZmZmZmZmYmNmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTE4CisgICAgLTB4MS5mYzljZDZiNWYwMDk0ODJiMGQ1NTgyZTFjNmNkZjczOHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZTBiNXA3MjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAtMHgxLmZjOWNkNmI1ZjAwOTQ4MmIwZDU1ODJlMWM2Y2RmNzM4cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZTBiNXA3MjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjAKKyAgICAweDEuZTk2YWMwNDVkZDEzOGQyNTc0MWNiODc5YjkyYWZhNDhwLTMsCisgICAgMHgxLmZmZmZmZmZmZmU3ZmZwNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjEKKyAgICAweDEuZTk2YWMwNDVkZDEzOGQyNTc0MWNiODc5YjkyYWZhNDhwLTMsCisgICAgLTB4MS5mZmZmZmZmZmZlN2ZmcDQxCisgIH0sCisgIHsgLy8gRW50cnkgNTIyCisgICAgLTB4MS5mY2FmMzljZmI5NGQ0ODE5NWQyYjI2MDYwYjMwZjgyMnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZWUwOXA3MjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjMKKyAgICAtMHgxLmZjYWYzOWNmYjk0ZDQ4MTk1ZDJiMjYwNjBiMzBmODIycC0xLAorICAgIC0weDEuZmZmZmZmZmZmZWUwOXA3MjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjQKKyAgICAweDEuODQzMjIzMmE2ZDFkYWE2YWM4YTk0YzAwMjFlNjBkNTBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZkZmZwNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAweDEuODQzMjIzMmE2ZDFkYWE2YWM4YTk0YzAwMjFlNjBkNTBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZGZmcDQwCisgIH0sCisgIHsgLy8gRW50cnkgNTI2CisgICAgMHgxLjllMzc1MTQzMTM5ZDlhMzdiMzU0ZWEzM2RkNjI1Y2Q2cC02LAorICAgIDB4MS5mZmZmZmZmZmZmZWZmcDQxCisgIH0sCisgIHsgLy8gRW50cnkgNTI3CisgICAgMHgxLjllMzc1MTQzMTM5ZDlhMzdiMzU0ZWEzM2RkNjI1Y2Q2cC02LAorICAgIC0weDEuZmZmZmZmZmZmZmVmZnA0MQorICB9LAorICB7IC8vIEVudHJ5IDUyOAorICAgIDB4MS5mZmZjMDAwMTU1NTUyODAwMDA0OWIxMGMyNmExZjUzOXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmY0YXAtOAorICB9LAorICB7IC8vIEVudHJ5IDUyOQorICAgIDB4MS5mZmZjMDAwMTU1NTUyODAwMDA0OWIxMGMyNmExZjUzOXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmNGFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAweDEuNDYzYTg5NWM0ZWE1Y2U0ZTU2ZThmNTc4Mzg4ZWVkM2FwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmNzhwOTIwCisgIH0sCisgIHsgLy8gRW50cnkgNTMxCisgICAgMHgxLjQ2M2E4OTVjNGVhNWNlNGU1NmU4ZjU3ODM4OGVlZDNhcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmY3OHA5MjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzIKKyAgICAweDEuM2MxYTQ4NjM1Y2YzODBjODE1OGQ5MzRjNGQwZGQ4N2NwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZDVwOTk1CisgIH0sCisgIHsgLy8gRW50cnkgNTMzCisgICAgMHgxLjNjMWE0ODYzNWNmMzgwYzgxNThkOTM0YzRkMGRkODdjcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZkNXA5OTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzQKKyAgICAweDEuOTFjNGUwNzA4YmQ0ODYyMTdmNWZjMjMwZjA0MTYyMjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZThwNzIwCisgIH0sCisgIHsgLy8gRW50cnkgNTM1CisgICAgMHgxLjkxYzRlMDcwOGJkNDg2MjE3ZjVmYzIzMGYwNDE2MjIwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZlOHA3MjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzYKKyAgICAtMHgxLjNlMTVjYjg0OWI1ZWE4N2JjYzU4M2Y2MzQ0Y2JjYzQwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmVicDkyMAorICB9LAorICB7IC8vIEVudHJ5IDUzNworICAgIC0weDEuM2UxNWNiODQ5YjVlYTg3YmNjNTgzZjYzNDRjYmNjNDBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmVicDkyMAorICB9LAorICB7IC8vIEVudHJ5IDUzOAorICAgIC0weDEuODE2ODA4MzQ5YjgwZGQzYzIyY2JlODBiNGMxNzFkMWZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZjFwMjQ1CisgIH0sCisgIHsgLy8gRW50cnkgNTM5CisgICAgLTB4MS44MTY4MDgzNDliODBkZDNjMjJjYmU4MGI0YzE3MWQxZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjFwMjQ1CisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgMHgxLjQ2OTljODE0YzVmMDc1YmIwZWQ5NDcyZGZlY2M1MGE5cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmY0cDg0NQorICB9LAorICB7IC8vIEVudHJ5IDU0MQorICAgIDB4MS40Njk5YzgxNGM1ZjA3NWJiMGVkOTQ3MmRmZWNjNTBhOXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjRwODQ1CisgIH0sCisgIHsgLy8gRW50cnkgNTQyCisgICAgLTB4MS44MTVlOTJiN2EyYTAxOWU3NDY1MGE4NTk5NjhlMGYyOXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmNHAxMDIwCisgIH0sCisgIHsgLy8gRW50cnkgNTQzCisgICAgLTB4MS44MTVlOTJiN2EyYTAxOWU3NDY1MGE4NTk5NjhlMGYyOXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjRwMTAyMAorICB9LAorICB7IC8vIEVudHJ5IDU0NAorICAgIC0weDEuM2U4ZDAyODE1MzIwMWVkMjcyZmM5NTQ5NzI1ZmNiM2ZwLTEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcDQ1CisgIH0sCisgIHsgLy8gRW50cnkgNTQ1CisgICAgLTB4MS4zZThkMDI4MTUzMjAxZWQyNzJmYzk1NDk3MjVmY2IzZnAtMTAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjcDQ1CisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgMHgxLjdkNjc2NTcxNGM3ODUzMmQzZWIwZjJhNzNjNWQ2MTI2cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwNQorICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIDB4MS43ZDY3NjU3MTRjNzg1MzJkM2ViMGYyYTczYzVkNjEyNnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTA1CisgIH0sCisgIHsgLy8gRW50cnkgNTQ4CisgICAgLTB4MS5mODY5ZmIxNGQyNTY4ZDY3YzM3YzkwYjBhMDM4YjI0MHAtMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA0ODAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDkKKyAgICAtMHgxLmY4NjlmYjE0ZDI1NjhkNjdjMzdjOTBiMGEwMzhiMjQwcC0zLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXA0ODAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTAKKyAgICAtMHgxLjgwYTc1YjM2OWQzYzNmZDE1YjYwNjBjNmZiOThmMmQ2cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDk3MAorICB9LAorICB7IC8vIEVudHJ5IDU1MQorICAgIC0weDEuODBhNzViMzY5ZDNjM2ZkMTViNjA2MGM2ZmI5OGYyZDZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDk3MAorICB9LAorICB7IC8vIEVudHJ5IDU1MgorICAgIC0weDEuOWRiYTY5ZTg1M2JkNzdmZDg4M2JlM2JiMTE3MWRmNTVwLTQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTMKKyAgICAtMHgxLjlkYmE2OWU4NTNiZDc3ZmQ4ODNiZTNiYjExNzFkZjU1cC00LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA0MgorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTYKKyAgICAweDEucDAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDU1NworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDU1OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTYwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTYxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU2MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU2MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTY3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTY4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU2OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU3MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzEKKyAgICAweDEuZmZmZmZmNWMyOGY1Y2I0YzUyNzIwNjEyODEyMTExMjBwLTEsCisgICAgMHgxLjk5OTk5OTk5OTk5OWFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgNTcyCisgICAgMHgxLmZmZmZmZjVjMjhmNWNiNGM1MjcyMDYxMjgxMjExMTIwcC0xLAorICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzMKKyAgICAweDEuZmZmZmZkNzBhM2Q3OTYwY2Q1Njk1YTA2ZmRiODBlNzRwLTEsCisgICAgMHgxLjk5OTk5OTk5OTk5OWFwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgNTc0CisgICAgMHgxLmZmZmZmZDcwYTNkNzk2MGNkNTY5NWEwNmZkYjgwZTc0cC0xLAorICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzUKKyAgICAweDEuZmZmZmZhM2Q3MGE2OWFkNDJiMzlkODY5NjYzMmY4NTZwLTEsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNTc2CisgICAgMHgxLmZmZmZmYTNkNzBhNjlhZDQyYjM5ZDg2OTY2MzJmODU2cC0xLAorICAgIC0weDEuMzMzMzMzMzMzMzMzNHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzcKKyAgICAweDEuZmZmZmY1YzI4ZjY0ZTVlYzBkYTBhNGY3ZjQzODgwNTJwLTEsCisgICAgMHgxLjk5OTk5OTk5OTk5OWFwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNTc4CisgICAgMHgxLmZmZmZmNWMyOGY2NGU1ZWMwZGEwYTRmN2Y0Mzg4MDUycC0xLAorICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzkKKyAgICAweDEuZmZmZmYwMDAwMDE1NTU1NTQ5ZjQ5ZjRkMzRkMzRjYTBwLTEsCisgICAgMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTgwCisgICAgMHgxLmZmZmZmMDAwMDAxNTU1NTU0OWY0OWY0ZDM0ZDM0Y2EwcC0xLAorICAgIC0weDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODEKKyAgICAweDEuZmZmZmU4ZjVjMmJiOThjN2MxMDNkMmZmNzlmMTVkNmFwLTEsCisgICAgMHgxLjMzMzMzMzMzMzMzMzNwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgMHgxLmZmZmZlOGY1YzJiYjk4YzdjMTAzZDJmZjc5ZjE1ZDZhcC0xLAorICAgIC0weDEuMzMzMzMzMzMzMzMzM3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODMKKyAgICAweDEuZmZmZmUwYTNkNzVjMzFiMjY0NTExNjZkNmYzOThhYmRwLTEsCisgICAgMHgxLjY2NjY2NjY2NjY2NjZwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTg0CisgICAgMHgxLmZmZmZlMGEzZDc1YzMxYjI2NDUxMTY2ZDZmMzk4YWJkcC0xLAorICAgIC0weDEuNjY2NjY2NjY2NjY2NnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODUKKyAgICAweDEuZmZmZmQ3MGEzZGZjNzMzYjMzMzFkODM4MmIxZTlkZjVwLTEsCisgICAgMHgxLjk5OTk5OTk5OTk5OTlwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTg2CisgICAgMHgxLmZmZmZkNzBhM2RmYzczM2IzMzMxZDgzODJiMWU5ZGY1cC0xLAorICAgIC0weDEuOTk5OTk5OTk5OTk5OXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODcKKyAgICAweDEuZmZmZmNjMjhmNmEyODIzZjM3NjViNTA2NTllY2IwZTJwLTEsCisgICAgMHgxLmNjY2NjY2NjY2NjY2NwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTg4CisgICAgMHgxLmZmZmZjYzI4ZjZhMjgyM2YzNzY1YjUwNjU5ZWNiMGUycC0xLAorICAgIC0weDEuY2NjY2NjY2NjY2NjY3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODkKKyAgICAweDEuZmZmYmNjMmE2ZTg2ZmVmN2QyYWYxNTgwYmQ4ZTY2OTlwLTEsCisgICAgMHgxLjA2NjY2NjY2NjY2NjZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTAKKyAgICAweDEuZmZmYmNjMmE2ZTg2ZmVmN2QyYWYxNTgwYmQ4ZTY2OTlwLTEsCisgICAgLTB4MS4wNjY2NjY2NjY2NjY2cC03CisgIH0sCisgIHsgLy8gRW50cnkgNTkxCisgICAgMHgxLmZmZjMwYTRiNmZjYzE0MDVlMThmYmY3MzM1ZDJmNzg5cC0xLAorICAgIDB4MS5jY2NjY2NjY2NjY2NjcC03CisgIH0sCisgIHsgLy8gRW50cnkgNTkyCisgICAgMHgxLmZmZjMwYTRiNmZjYzE0MDVlMThmYmY3MzM1ZDJmNzg5cC0xLAorICAgIC0weDEuY2NjY2NjY2NjY2NjY3AtNworICB9LAorICB7IC8vIEVudHJ5IDU5MworICAgIDB4MS5mZmU1N2E3ODBmMzhjMGRiMzcwNTFmYThjOGQ2MGZiY3AtMSwKKyAgICAweDEuNDk5OTk5OTk5OTk5OXAtNgorICB9LAorICB7IC8vIEVudHJ5IDU5NAorICAgIDB4MS5mZmU1N2E3ODBmMzhjMGRiMzcwNTFmYThjOGQ2MGZiY3AtMSwKKyAgICAtMHgxLjQ5OTk5OTk5OTk5OTlwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTUKKyAgICAweDEuZmZkMzFjZDBlMWQ2MmMwNWQyY2RlZDIxYWRkOGJkMzNwLTEsCisgICAgMHgxLmFjY2NjY2NjY2NjY2NwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTYKKyAgICAweDEuZmZkMzFjZDBlMWQ2MmMwNWQyY2RlZDIxYWRkOGJkMzNwLTEsCisgICAgLTB4MS5hY2NjY2NjY2NjY2NjcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTk3CisgICAgMHgxLmZmYmJmMTgyMDc1NDJlZjgxMzkwZDczYzNiYTg5YzFhcC0xLAorICAgIDB4MS4wODBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTgKKyAgICAweDEuZmZiYmYxODIwNzU0MmVmODEzOTBkNzNjM2JhODljMWFwLTEsCisgICAgLTB4MS4wODBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTkKKyAgICAweDEuZmY5ZmY4YzMyOTlmNTQ0NTdiYmFmOGMxMjE3M2I0NmJwLTEsCisgICAgMHgxLjM5OTk5OTk5OTk5OWFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDAKKyAgICAweDEuZmY5ZmY4YzMyOTlmNTQ0NTdiYmFmOGMxMjE3M2I0NmJwLTEsCisgICAgLTB4MS4zOTk5OTk5OTk5OTlhcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjAxCisgICAgMHgxLmZmN2YzMmQ3N2M1YjFjNDJmMTY2MGM5YjZmMmVmNjRmcC0xLAorICAgIDB4MS42YjMzMzMzMzMzMzM0cC01CisgIH0sCisgIHsgLy8gRW50cnkgNjAyCisgICAgMHgxLmZmN2YzMmQ3N2M1YjFjNDJmMTY2MGM5YjZmMmVmNjRmcC0xLAorICAgIC0weDEuNmIzMzMzMzMzMzMzNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDYwMworICAgIDB4MS5mZjU5YTAwZGJjNDA4OTZiYjVlNGFjOGFkMjkzYWZiNHAtMSwKKyAgICAweDEuOWNjY2NjY2NjY2NjZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDYwNAorICAgIDB4MS5mZjU5YTAwZGJjNDA4OTZiYjVlNGFjOGFkMjkzYWZiNHAtMSwKKyAgICAtMHgxLjljY2NjY2NjY2NjY2VwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDUKKyAgICAweDEuZmYyZjQwYzAyZTYwZjYxZDZkY2ZjMzliNmMyYmUwODdwLTEsCisgICAgMHgxLmNlNjY2NjY2NjY2NjZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDYKKyAgICAweDEuZmYyZjQwYzAyZTYwZjYxZDZkY2ZjMzliNmMyYmUwODdwLTEsCisgICAgLTB4MS5jZTY2NjY2NjY2NjY2cC01CisgIH0sCisgIHsgLy8gRW50cnkgNjA3CisgICAgMHgxLjhjYTQ2YzdkODk3NWU1N2ExNDg0ZjA1YzM3MzhkODNicC0xLAorICAgIDB4MS41ZTdmYzQzNjliZGFkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjA4CisgICAgMHgxLjhjYTQ2YzdkODk3NWU1N2ExNDg0ZjA1YzM3MzhkODNicC0xLAorICAgIC0weDEuNWU3ZmM0MzY5YmRhZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYwOQorICAgIDB4MS4wYjVkMzgwMmZjNzk5MTE0MDE2OGYyOTRlZWRkNzkwNHAtMiwKKyAgICAweDEuNGU3ZmM0MzY5YmRhZHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjEwCisgICAgMHgxLjBiNWQzODAyZmM3OTkxMTQwMTY4ZjI5NGVlZGQ3OTA0cC0yLAorICAgIC0weDEuNGU3ZmM0MzY5YmRhZHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjExCisgICAgLTB4MS42NmI5NmY1MzMyM2FmMWQ3ZTMxYTcxNjJhYjE4YTc1YnAtMiwKKyAgICAweDEuZWRiZmE2NTFlOWM4NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjEyCisgICAgLTB4MS42NmI5NmY1MzMyM2FmMWQ3ZTMxYTcxNjJhYjE4YTc1YnAtMiwKKyAgICAtMHgxLmVkYmZhNjUxZTljODRwMAorICB9LAorICB7IC8vIEVudHJ5IDYxMworICAgIC0weDEuYTkzNTU0ODg4YzMyZmE1N2YyMmE5NTI5YTMyMGMxY2JwLTEsCisgICAgMHgxLjQ2N2ZjNDM2OWJkYWRwMQorICB9LAorICB7IC8vIEVudHJ5IDYxNAorICAgIC0weDEuYTkzNTU0ODg4YzMyZmE1N2YyMmE5NTI5YTMyMGMxY2JwLTEsCisgICAgLTB4MS40NjdmYzQzNjliZGFkcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAtMHgxLmZmYzAwMTU1NTI3ZDJiOWZkYTJhZTg5Mzk2ZTA5NzI3cC0xLAorICAgIDB4MS45NjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTYKKyAgICAtMHgxLmZmYzAwMTU1NTI3ZDJiOWZkYTJhZTg5Mzk2ZTA5NzI3cC0xLAorICAgIC0weDEuOTYxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjE3CisgICAgLTB4MS45NjkwN2M1YzdjMjViODhlMzRhZGRmZjFmYmVmNjZlNHAtMSwKKyAgICAweDEuZTViZmE2NTFlOWM4M3AxCisgIH0sCisgIHsgLy8gRW50cnkgNjE4CisgICAgLTB4MS45NjkwN2M1YzdjMjViODhlMzRhZGRmZjFmYmVmNjZlNHAtMSwKKyAgICAtMHgxLmU1YmZhNjUxZTljODNwMQorICB9LAorICB7IC8vIEVudHJ5IDYxOQorICAgIC0weDEuMmExZTVhNTBmOTQ4Y2Q0ODdjNTMwOTY4MmIxMTBhNTNwLTIsCisgICAgMHgxLjFhYWZjYmFmYzg1ZjdwMgorICB9LAorICB7IC8vIEVudHJ5IDYyMAorICAgIC0weDEuMmExZTVhNTBmOTQ4Y2Q0ODdjNTMwOTY4MmIxMTBhNTNwLTIsCisgICAgLTB4MS4xYWFmY2JhZmM4NWY3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICAweDEuNDg5NGY2OTVkYzU2YmNlOGIyNzNlNTUyNGYxODEyNjRwLTIsCisgICAgMHgxLjQyN2ZjNDM2OWJkYWRwMgorICB9LAorICB7IC8vIEVudHJ5IDYyMgorICAgIDB4MS40ODk0ZjY5NWRjNTZiY2U4YjI3M2U1NTI0ZjE4MTI2NHAtMiwKKyAgICAtMHgxLjQyN2ZjNDM2OWJkYWRwMgorICB9LAorICB7IC8vIEVudHJ5IDYyMworICAgIDB4MS5hMDE2ZWEzYTY5MmNlMGMzMjFiNzdmMTY4ZGUzOTEyMnAtMSwKKyAgICAweDEuNmE0ZmJjYmQ2ZjU2MnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjI0CisgICAgMHgxLmEwMTZlYTNhNjkyY2UwYzMyMWI3N2YxNjhkZTM5MTIycC0xLAorICAgIC0weDEuNmE0ZmJjYmQ2ZjU2MnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjI1CisgICAgMHgxLmEzMGE2OWY1NTM3ZWJjMjJmMDg3MGMyYmQyNmVmMjg0cC0xLAorICAgIDB4MS42YWYyZWZmMGEyODk2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjYKKyAgICAweDEuYTMwYTY5ZjU1MzdlYmMyMmYwODcwYzJiZDI2ZWYyODRwLTEsCisgICAgLTB4MS42YWYyZWZmMGEyODk2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjcKKyAgICAweDEuNWJkNjJlOGIwNGFkNTkxNWU2NjI0MjM0OWI3NTZlMTFwLTIsCisgICAgMHgxLjQzYzYyYTlkMDI0MTRwMgorICB9LAorICB7IC8vIEVudHJ5IDYyOAorICAgIDB4MS41YmQ2MmU4YjA0YWQ1OTE1ZTY2MjQyMzQ5Yjc1NmUxMXAtMiwKKyAgICAtMHgxLjQzYzYyYTlkMDI0MTRwMgorICB9LAorICB7IC8vIEVudHJ5IDYyOQorICAgIC0weDEuMGNiNzFmNjcxZTYzNDEwOTY2ZTc4ZDIwMDljMDYxNmZwLTIsCisgICAgMHgxLjFjOTk2NTQ5NjFmOTJwMgorICB9LAorICB7IC8vIEVudHJ5IDYzMAorICAgIC0weDEuMGNiNzFmNjcxZTYzNDEwOTY2ZTc4ZDIwMDljMDYxNmZwLTIsCisgICAgLTB4MS4xYzk5NjU0OTYxZjkycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzEKKyAgICAtMHgxLjg5ZDg2YWE4NTIxYzExYjc0ZjhiMTk1NGMwOGY5YjM2cC0xLAorICAgIDB4MS5lYWQ5M2ZlYjgzNjFmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzIKKyAgICAtMHgxLjg5ZDg2YWE4NTIxYzExYjc0ZjhiMTk1NGMwOGY5YjM2cC0xLAorICAgIC0weDEuZWFkOTNmZWI4MzYxZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjMzCisgICAgLTB4MS5mZTUxYWM1NTRhMTZhZDgxOTRmMTgxMDg1ZjhhMTdmMnAtMSwKKyAgICAweDEuOWM3ZmI1NDQ0MmQxYXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjM0CisgICAgLTB4MS5mZTUxYWM1NTRhMTZhZDgxOTRmMTgxMDg1ZjhhMTdmMnAtMSwKKyAgICAtMHgxLjljN2ZiNTQ0NDJkMWFwMQorICB9LAorICB7IC8vIEVudHJ5IDYzNQorICAgIC0weDEuYjk3YzA0ZDA4YmM1ZDc2NWIzNDFhMjJiMmM3MjBiNmZwLTEsCisgICAgMHgxLjRlMjYyYTlkMDI0MTVwMQorICB9LAorICB7IC8vIEVudHJ5IDYzNgorICAgIC0weDEuYjk3YzA0ZDA4YmM1ZDc2NWIzNDFhMjJiMmM3MjBiNmZwLTEsCisgICAgLTB4MS40ZTI2MmE5ZDAyNDE1cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzcKKyAgICAtMHgxLmE4YWM4YTNlNThmNmNhOTUyMzkwMjk5ZDJlOGIxODdmcC0yLAorICAgIDB4MS5mZjk5M2ZlYjgzNjIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzgKKyAgICAtMHgxLmE4YWM4YTNlNThmNmNhOTUyMzkwMjk5ZDJlOGIxODdmcC0yLAorICAgIC0weDEuZmY5OTNmZWI4MzYyMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjM5CisgICAgMHgxLjc3YThiOWIzZDI1NGE5ZTM5ZDAyYjNlYjNlMjM5MGU3cC0zLAorICAgIDB4MS42MmU2MmE5ZDAyNDE2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDAKKyAgICAweDEuNzdhOGI5YjNkMjU0YTllMzlkMDJiM2ViM2UyMzkwZTdwLTMsCisgICAgLTB4MS42MmU2MmE5ZDAyNDE2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDEKKyAgICAweDEuNmUxMDYxMjA1ZGQ3OTA1MWMxMTJkMzBhMDUwOTdjNjFwLTEsCisgICAgMHgxLjhjNjYyYTlkMDI0MTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDIKKyAgICAweDEuNmUxMDYxMjA1ZGQ3OTA1MWMxMTJkMzBhMDUwOTdjNjFwLTEsCisgICAgLTB4MS44YzY2MmE5ZDAyNDE5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQzCisgICAgLTB4MS42ODJmM2NjM2M3YTA4ZGEyY2UwMmE0MWNkYzdiZWQ4NnAtNCwKKyAgICAtMHgxLmE4YWExZDExYzQ0ZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDY0NAorICAgIC0weDEuNjgyZjNjYzNjN2EwOGRhMmNlMDJhNDFjZGM3YmVkODZwLTQsCisgICAgMHgxLmE4YWExZDExYzQ0ZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDY0NQorICAgIC0weDEuZTY2NjlhMjcwYzM2ZDQ4NzliNDI4ZGRiYTk2Y2Q4N2JwLTcsCisgICAgLTB4MS45NWVjOGI5ZTAzZDU0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDYKKyAgICAtMHgxLmU2NjY5YTI3MGMzNmQ0ODc5YjQyOGRkYmE5NmNkODdicC03LAorICAgIDB4MS45NWVjOGI5ZTAzZDU0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDcKKyAgICAweDEuZGRkMWVjMjVlMjA5ZjFiYmY3ZTE3ZWY2Yzg0NTBjZDdwLTUsCisgICAgLTB4MS44MzJlZmEyYTQzNWE5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDgKKyAgICAweDEuZGRkMWVjMjVlMjA5ZjFiYmY3ZTE3ZWY2Yzg0NTBjZDdwLTUsCisgICAgMHgxLjgzMmVmYTJhNDM1YTlwMAorICB9LAorICB7IC8vIEVudHJ5IDY0OQorICAgIDB4MS4wY2FiOTExNTY0MGQ5OTMwODJhNzM0M2JiNWFmZmVhMnAtMywKKyAgICAtMHgxLjcwNzE2OGI2ODJkZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIDB4MS4wY2FiOTExNTY0MGQ5OTMwODJhNzM0M2JiNWFmZmVhMnAtMywKKyAgICAweDEuNzA3MTY4YjY4MmRmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjUxCisgICAgMHgxLmEwNzIzYTk1NDkyZWRlZTVkYzk4Mzk0ZTQ1Zjk2ZDg4cC0zLAorICAgIC0weDEuNWRiM2Q3NDJjMjY1M3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjUyCisgICAgMHgxLmEwNzIzYTk1NDkyZWRlZTVkYzk4Mzk0ZTQ1Zjk2ZDg4cC0zLAorICAgIDB4MS41ZGIzZDc0MmMyNjUzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTMKKyAgICAweDEuMThmZWU5NmExYTU4NTkyOGE5NGNkYTdlM2Q5MTZmZTFwLTIsCisgICAgLTB4MS40YWY2NDVjZjAxZWE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTQKKyAgICAweDEuMThmZWU5NmExYTU4NTkyOGE5NGNkYTdlM2Q5MTZmZTFwLTIsCisgICAgMHgxLjRhZjY0NWNmMDFlYThwMAorICB9LAorICB7IC8vIEVudHJ5IDY1NQorICAgIDB4MS42MDQzNjIxYjEzYmUyZmYwNzA4NWY4Mjc4NTk4ZTU2NnAtMiwKKyAgICAtMHgxLjM4MzhiNDViNDE2ZmRwMAorICB9LAorICB7IC8vIEVudHJ5IDY1NgorICAgIDB4MS42MDQzNjIxYjEzYmUyZmYwNzA4NWY4Mjc4NTk4ZTU2NnAtMiwKKyAgICAweDEuMzgzOGI0NWI0MTZmZHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjU3CisgICAgMHgxLmE1YTRjY2Y0MGQ5ZDliYTk3ZmFhNGUyM2VjY2U5ZTNhcC0yLAorICAgIC0weDEuMjU3YjIyZTc4MGY1MnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjU4CisgICAgMHgxLmE1YTRjY2Y0MGQ5ZDliYTk3ZmFhNGUyM2VjY2U5ZTNhcC0yLAorICAgIDB4MS4yNTdiMjJlNzgwZjUycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTkKKyAgICAweDEuZThjNDA1ZjM2Zjg1YjdmNWQ2YTM4ZGZkNGE2OTIzNDFwLTIsCisgICAgLTB4MS4xMmJkOTE3M2MwN2FicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjAKKyAgICAweDEuZThjNDA1ZjM2Zjg1YjdmNWQ2YTM4ZGZkNGE2OTIzNDFwLTIsCisgICAgMHgxLjEyYmQ5MTczYzA3YWJwMAorICB9LAorICB7IC8vIEVudHJ5IDY2MQorICAgIDB4MS4yNjk3NmE2YzRlMGY4NjYzMzMyN2YxY2VlY2I1MDhhZXAtMSwKKyAgICAtMHgxLmVhNWMzZWQ1YjM4NTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjIKKyAgICAweDEuMjY5NzZhNmM0ZTBmODY2MzMzMjdmMWNlZWNiNTA4YWVwLTEsCisgICAgMHgxLmVhNWMzZWQ1YjM4NTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjMKKyAgICAweDEuMzgwNWExODgyMDA5ZjI4NDNkYTgwOGU5NTlmMTc4NjFwLTEsCisgICAgLTB4MS5kNGI4N2RhYjY3MGEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjY0CisgICAgMHgxLjM4MDVhMTg4MjAwOWYyODQzZGE4MDhlOTU5ZjE3ODYxcC0xLAorICAgIDB4MS5kNGI4N2RhYjY3MGEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjY1CisgICAgMHgxLjQ4ZTUyZTBhNjViY2IzY2Q0NjQ1NWM0ZDIzMzhiZGYycC0xLAorICAgIC0weDEuYmYxNGJjODExYThmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY2NgorICAgIDB4MS40OGU1MmUwYTY1YmNiM2NkNDY0NTVjNGQyMzM4YmRmMnAtMSwKKyAgICAweDEuYmYxNGJjODExYThmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY2NworICAgIDB4MS41OTJlNThlYTBhOWVlYzBiMzU3ZWI0ZTlhODNiMGVhNXAtMSwKKyAgICAtMHgxLmE5NzBmYjU2Y2UxNDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjgKKyAgICAweDEuNTkyZTU4ZWEwYTllZWMwYjM1N2ViNGU5YTgzYjBlYTVwLTEsCisgICAgMHgxLmE5NzBmYjU2Y2UxNDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjkKKyAgICAweDEuNjhkOWFmZTA1MmQxZjBlOTMyNGFlODc2OTYxYmNkYjFwLTEsCisgICAgLTB4MS45M2NkM2EyYzgxOTkwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjcwCisgICAgMHgxLjY4ZDlhZmUwNTJkMWYwZTkzMjRhZTg3Njk2MWJjZGIxcC0xLAorICAgIDB4MS45M2NkM2EyYzgxOTkwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjcxCisgICAgMHgxLjc3ZTAwOGQwNzc1ZTc0NGViMTZhMmM0ZWM3MTg0YzQzcC0xLAorICAgIC0weDEuN2UyOTc5MDIzNTFlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY3MgorICAgIDB4MS43N2UwMDhkMDc3NWU3NDRlYjE2YTJjNGVjNzE4NGM0M3AtMSwKKyAgICAweDEuN2UyOTc5MDIzNTFlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY3MworICAgIDB4MS44NjNhODUwZTQzOGZlMDI5MzAyYWJhMGY1ZjEyNzYxNnAtMSwKKyAgICAtMHgxLjY4ODViN2Q3ZThhMzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzQKKyAgICAweDEuODYzYTg1MGU0MzhmZTAyOTMwMmFiYTBmNWYxMjc2MTZwLTEsCisgICAgMHgxLjY4ODViN2Q3ZThhMzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzUKKyAgICAweDEuOTNlMjk0ODIzM2ZjZTgxNDQzOWVkNTFmZDI1NDg5MjBwLTEsCisgICAgLTB4MS41MmUxZjZhZDljMjgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjc2CisgICAgMHgxLjkzZTI5NDgyMzNmY2U4MTQ0MzllZDUxZmQyNTQ4OTIwcC0xLAorICAgIDB4MS41MmUxZjZhZDljMjgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjc3CisgICAgMHgxLmEwZDFmOGE5YTc5MWQ0YjU2OTRjYTY4YTQyZmU2YzlicC0xLAorICAgIC0weDEuM2QzZTM1ODM0ZmFkMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY3OAorICAgIDB4MS5hMGQxZjhhOWE3OTFkNGI1Njk0Y2E2OGE0MmZlNmM5YnAtMSwKKyAgICAweDEuM2QzZTM1ODM0ZmFkMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY3OQorICAgIDB4MS5iYzZiZDg2MWUxM2RlMzA5NDI4ZTAwZjdiZWY2YzNlY3AtMSwKKyAgICAtMHgxLjBhMGIwMjUwMWM3OTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODAKKyAgICAweDEuYmM2YmQ4NjFlMTNkZTMwOTQyOGUwMGY3YmVmNmMzZWNwLTEsCisgICAgMHgxLjBhMGIwMjUwMWM3OTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODEKKyAgICAweDEuY2E1OWM2ZmEzZDljZTIzOGEyMjczOTNiNmIwNzViYzVwLTEsCisgICAgLTB4MS5kOGY3MjA4ZTZiODJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjgyCisgICAgMHgxLmNhNTljNmZhM2Q5Y2UyMzhhMjI3MzkzYjZiMDc1YmM1cC0xLAorICAgIDB4MS5kOGY3MjA4ZTZiODJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjgzCisgICAgMHgxLmQ2YzBiMTI1NzkxY2ZmY2U4M2UzMjU2NDcxMmI3OGM2cC0xLAorICAgIC0weDEuOWRkODNjN2M5ZTEyNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDY4NAorICAgIDB4MS5kNmMwYjEyNTc5MWNmZmNlODNlMzI1NjQ3MTJiNzhjNnAtMSwKKyAgICAweDEuOWRkODNjN2M5ZTEyNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDY4NQorICAgIDB4MS5lMTk2MDI2MTgyOTg1ODM5MTY0NWJiZTEyMDE5ZTU4YXAtMSwKKyAgICAtMHgxLjYyYjk1ODZhZDBhMjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODYKKyAgICAweDEuZTE5NjAyNjE4Mjk4NTgzOTE2NDViYmUxMjAxOWU1OGFwLTEsCisgICAgMHgxLjYyYjk1ODZhZDBhMjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODcKKyAgICAweDEuZWFkMDdjYzYzNTY5NjRlMjdhMTAzNmQyZjhiMTU4ZjdwLTEsCisgICAgLTB4MS4yNzlhNzQ1OTAzMzFhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjg4CisgICAgMHgxLmVhZDA3Y2M2MzU2OTY0ZTI3YTEwMzZkMmY4YjE1OGY3cC0xLAorICAgIDB4MS4yNzlhNzQ1OTAzMzFhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjg5CisgICAgMHgxLmYyNjg0MGU3YjIxODhmN2EwY2M2NjFhMGVkZTM3MjhicC0xLAorICAgIC0weDEuZDhmNzIwOGU2YjgyOXAtMworICB9LAorICB7IC8vIEVudHJ5IDY5MAorICAgIDB4MS5mMjY4NDBlN2IyMTg4ZjdhMGNjNjYxYTBlZGUzNzI4YnAtMSwKKyAgICAweDEuZDhmNzIwOGU2YjgyOXAtMworICB9LAorICB7IC8vIEVudHJ5IDY5MQorICAgIDB4MS5mODU2ZDQ4ZGI3OTdkZWMwYjc5ZTEzNTM0MDlkYzNmMnAtMSwKKyAgICAtMHgxLjYyYjk1ODZhZDBhMWVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTIKKyAgICAweDEuZjg1NmQ0OGRiNzk3ZGVjMGI3OWUxMzUzNDA5ZGMzZjJwLTEsCisgICAgMHgxLjYyYjk1ODZhZDBhMWVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTMKKyAgICAweDEuZmM5NzI4M2E0MjQ3OTcyMTVmOGE4ZDE5Njc3MzZjOWJwLTEsCisgICAgLTB4MS5kOGY3MjA4ZTZiODI2cC00CisgIH0sCisgIHsgLy8gRW50cnkgNjk0CisgICAgMHgxLmZjOTcyODNhNDI0Nzk3MjE1ZjhhOGQxOTY3NzM2YzlicC0xLAorICAgIDB4MS5kOGY3MjA4ZTZiODI2cC00CisgIH0sCisgIHsgLy8gRW50cnkgNjk1CisgICAgMHgxLmZmMjU5YjdhYjlmNGY5YThjYjlmMWMzMzMyNzJlNDA5cC0xLAorICAgIC0weDEuZDhmNzIwOGU2YjgyZHAtNQorICB9LAorICB7IC8vIEVudHJ5IDY5NgorICAgIDB4MS5mZjI1OWI3YWI5ZjRmOWE4Y2I5ZjFjMzMzMjcyZTQwOXAtMSwKKyAgICAweDEuZDhmNzIwOGU2YjgyZHAtNQorICB9LAorICB7IC8vIEVudHJ5IDY5NworICAgIDB4MS5mZjI1OWI3YWI5ZjRmOWE4Y2I5ZjFjMzMzMjcyZTQwOXAtMSwKKyAgICAweDEuZDhmNzIwOGU2YjgyZHAtNQorICB9LAorICB7IC8vIEVudHJ5IDY5OAorICAgIDB4MS5mZjI1OWI3YWI5ZjRmOWE4Y2I5ZjFjMzMzMjcyZTQwOXAtMSwKKyAgICAtMHgxLmQ4ZjcyMDhlNmI4MmRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTkKKyAgICAweDEuZmM5NzI4M2E0MjQ3OTU4NDcyOTQ2NTRhMWQ4YTA4ZWRwLTEsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDAKKyAgICAweDEuZmM5NzI4M2E0MjQ3OTU4NDcyOTQ2NTRhMWQ4YTA4ZWRwLTEsCisgICAgLTB4MS5kOGY3MjA4ZTZiODJkcC00CisgIH0sCisgIHsgLy8gRW50cnkgNzAxCisgICAgMHgxLmY4NTZkNDhkYjc5N2RiZmVjZmE4YjRjZDNiZTQ0MDI3cC0xLAorICAgIDB4MS42MmI5NTg2YWQwYTIycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzAyCisgICAgMHgxLmY4NTZkNDhkYjc5N2RiZmVjZmE4YjRjZDNiZTQ0MDI3cC0xLAorICAgIC0weDEuNjJiOTU4NmFkMGEyMnAtMworICB9LAorICB7IC8vIEVudHJ5IDcwMworICAgIDB4MS5mMjY4NDBlN2IyMTg4YmQwODE0ZTNkZmM3ZjZmM2Y4N3AtMSwKKyAgICAweDEuZDhmNzIwOGU2YjgyZHAtMworICB9LAorICB7IC8vIEVudHJ5IDcwNAorICAgIDB4MS5mMjY4NDBlN2IyMTg4YmQwODE0ZTNkZmM3ZjZmM2Y4N3AtMSwKKyAgICAtMHgxLmQ4ZjcyMDhlNmI4MmRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDUKKyAgICAweDEuZWFkMDdjYzYzNTY5NjA1NDZhZTYzNGVmNjI2MjFmYjJwLTEsCisgICAgMHgxLjI3OWE3NDU5MDMzMWNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDYKKyAgICAweDEuZWFkMDdjYzYzNTY5NjA1NDZhZTYzNGVmNjI2MjFmYjJwLTEsCisgICAgLTB4MS4yNzlhNzQ1OTAzMzFjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzA3CisgICAgMHgxLmUxOTYwMjYxODI5ODUyY2E2NjJjYTI3ZDUxOGMyZmE5cC0xLAorICAgIDB4MS42MmI5NTg2YWQwYTIycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzA4CisgICAgMHgxLmUxOTYwMjYxODI5ODUyY2E2NjJjYTI3ZDUxOGMyZmE5cC0xLAorICAgIC0weDEuNjJiOTU4NmFkMGEyMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDcwOQorICAgIDB4MS5kNmMwYjEyNTc5MWNmOTgzZDUzZWZhYTdkNDVlMjkxZXAtMSwKKyAgICAweDEuOWRkODNjN2M5ZTEyOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDcxMAorICAgIDB4MS5kNmMwYjEyNTc5MWNmOTgzZDUzZWZhYTdkNDVlMjkxZXAtMSwKKyAgICAtMHgxLjlkZDgzYzdjOWUxMjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTEKKyAgICAweDEuY2E1OWM2ZmEzZDljZGIxNzUzMDkyN2FmZjFiMzNhYmJwLTEsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTIKKyAgICAweDEuY2E1OWM2ZmEzZDljZGIxNzUzMDkyN2FmZjFiMzNhYmJwLTEsCisgICAgLTB4MS5kOGY3MjA4ZTZiODJlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzEzCisgICAgMHgxLmJjNmJkODYxZTEzZGUzMDk0MjhlMDBmN2JlZjZjM2VjcC0xLAorICAgIDB4MS4wYTBiMDI1MDFjNzk5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzE0CisgICAgMHgxLmJjNmJkODYxZTEzZGUzMDk0MjhlMDBmN2JlZjZjM2VjcC0xLAorICAgIC0weDEuMGEwYjAyNTAxYzc5OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxNQorICAgIDB4MS5hMGQxZjhhOWE3OTFmOWRmZjVjOTkzYWY0OTA4MjY0ZHAtMSwKKyAgICAweDEuM2QzZTM1ODM0ZmFjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDcxNgorICAgIDB4MS5hMGQxZjhhOWE3OTFmOWRmZjVjOTkzYWY0OTA4MjY0ZHAtMSwKKyAgICAtMHgxLjNkM2UzNTgzNGZhY2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTcKKyAgICAweDEuOTNlMjk0ODIzM2ZkMGY2OWUzOTE4OTgyMTQ4ZjgyNjVwLTEsCisgICAgMHgxLjUyZTFmNmFkOWMyN2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTgKKyAgICAweDEuOTNlMjk0ODIzM2ZkMGY2OWUzOTE4OTgyMTQ4ZjgyNjVwLTEsCisgICAgLTB4MS41MmUxZjZhZDljMjdjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzE5CisgICAgMHgxLjg2M2E4NTBlNDM5MDA5OTdlNzZiZTgwNDA1NDM3Mzc3cC0xLAorICAgIDB4MS42ODg1YjdkN2U4YTJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzIwCisgICAgMHgxLjg2M2E4NTBlNDM5MDA5OTdlNzZiZTgwNDA1NDM3Mzc3cC0xLAorICAgIC0weDEuNjg4NWI3ZDdlOGEyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDcyMQorICAgIDB4MS43N2UwMDhkMDc3NWU5ZmMzOGUzZjQ5MmY4ZTkzZmY1MXAtMSwKKyAgICAweDEuN2UyOTc5MDIzNTFkY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDcyMgorICAgIDB4MS43N2UwMDhkMDc3NWU5ZmMzOGUzZjQ5MmY4ZTkzZmY1MXAtMSwKKyAgICAtMHgxLjdlMjk3OTAyMzUxZGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjMKKyAgICAweDEuNjhkOWFmZTA1MmQyMWU1MDU2MGY5ZmZiNmNjMWI5NDVwLTEsCisgICAgMHgxLjkzY2QzYTJjODE5OGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjQKKyAgICAweDEuNjhkOWFmZTA1MmQyMWU1MDU2MGY5ZmZiNmNjMWI5NDVwLTEsCisgICAgLTB4MS45M2NkM2EyYzgxOThjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzI1CisgICAgMHgxLjU5MmU1OGVhMGE5ZjFiNGZkZGJhYWY4NjhmZTQ3OTExcC0xLAorICAgIDB4MS5hOTcwZmI1NmNlMTNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzI2CisgICAgMHgxLjU5MmU1OGVhMGE5ZjFiNGZkZGJhYWY4NjhmZTQ3OTExcC0xLAorICAgIC0weDEuYTk3MGZiNTZjZTEzY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDcyNworICAgIDB4MS40OGU1MmUwYTY1YmNlNGQ5ZDYyYTMxMjkzZjdkNDFjMXAtMSwKKyAgICAweDEuYmYxNGJjODExYThlY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDcyOAorICAgIDB4MS40OGU1MmUwYTY1YmNlNGQ5ZDYyYTMxMjkzZjdkNDFjMXAtMSwKKyAgICAtMHgxLmJmMTRiYzgxMWE4ZWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjkKKyAgICAweDEuMzgwNWExODgyMDBhMjU0MjQ3ZjMwNDYyYzM2YWNmNmFwLTEsCisgICAgMHgxLmQ0Yjg3ZGFiNjcwOWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzAKKyAgICAweDEuMzgwNWExODgyMDBhMjU0MjQ3ZjMwNDYyYzM2YWNmNmFwLTEsCisgICAgLTB4MS5kNGI4N2RhYjY3MDljcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzMxCisgICAgMHgxLjI2OTc2YTZjNGUwZmJhYmI4NDYzMmJkOTlmZWVjOWM2cC0xLAorICAgIDB4MS5lYTVjM2VkNWIzODRjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzMyCisgICAgMHgxLjI2OTc2YTZjNGUwZmJhYmI4NDYzMmJkOTlmZWVjOWM2cC0xLAorICAgIC0weDEuZWE1YzNlZDViMzg0Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDczMworICAgIDB4MS5lOGM0MDVmMzZmODViN2Y1ZDZhMzhkZmQ0YTY5MjM0MXAtMiwKKyAgICAweDEuMTJiZDkxNzNjMDdhYnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzM0CisgICAgMHgxLmU4YzQwNWYzNmY4NWI3ZjVkNmEzOGRmZDRhNjkyMzQxcC0yLAorICAgIC0weDEuMTJiZDkxNzNjMDdhYnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzM1CisgICAgMHgxLmE1YTRjY2Y0MGQ5Y2IyNWYxNmFkOTdlNDgwYzRiNDgzcC0yLAorICAgIDB4MS4yNTdiMjJlNzgwZjU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzYKKyAgICAweDEuYTVhNGNjZjQwZDljYjI1ZjE2YWQ5N2U0ODBjNGI0ODNwLTIsCisgICAgLTB4MS4yNTdiMjJlNzgwZjU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzcKKyAgICAweDEuNjA0MzYyMWIxM2JkM2Y5MDRiM2I4NzZkZjViMmM2ZjRwLTIsCisgICAgMHgxLjM4MzhiNDViNDE3MDFwMAorICB9LAorICB7IC8vIEVudHJ5IDczOAorICAgIDB4MS42MDQzNjIxYjEzYmQzZjkwNGIzYjg3NmRmNWIyYzZmNHAtMiwKKyAgICAtMHgxLjM4MzhiNDViNDE3MDFwMAorICB9LAorICB7IC8vIEVudHJ5IDczOQorICAgIDB4MS4xOGZlZTk2YTFhNTc2MmZjNjc3MGZmMTY4ZTA2YWIzZXAtMiwKKyAgICAweDEuNGFmNjQ1Y2YwMWVhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNzQwCisgICAgMHgxLjE4ZmVlOTZhMWE1NzYyZmM2NzcwZmYxNjhlMDZhYjNlcC0yLAorICAgIC0weDEuNGFmNjQ1Y2YwMWVhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNzQxCisgICAgMHgxLmEwNzIzYTk1NDkyY2U5OTg0NTdmYjdhMGQwOWE2Mzg1cC0zLAorICAgIDB4MS41ZGIzZDc0MmMyNjU3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDIKKyAgICAweDEuYTA3MjNhOTU0OTJjZTk5ODQ1N2ZiN2EwZDA5YTYzODVwLTMsCisgICAgLTB4MS41ZGIzZDc0MmMyNjU3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDMKKyAgICAweDEuMGNhYjkxMTU2NDBiOWQ5ZDQ2NjcyM2JiZDVkNTg5YmVwLTMsCisgICAgMHgxLjcwNzE2OGI2ODJlMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDc0NAorICAgIDB4MS4wY2FiOTExNTY0MGI5ZDlkNDY2NzIzYmJkNWQ1ODliZXAtMywKKyAgICAtMHgxLjcwNzE2OGI2ODJlMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDc0NQorICAgIDB4MS5kZGQxZWMyNWUyMDFmNTM4OTI1YmY1YmNmN2M3ZGY2ZXAtNSwKKyAgICAweDEuODMyZWZhMmE0MzVhZHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzQ2CisgICAgMHgxLmRkZDFlYzI1ZTIwMWY1Mzg5MjViZjViY2Y3YzdkZjZlcC01LAorICAgIC0weDEuODMyZWZhMmE0MzVhZHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzQ3CisgICAgLTB4MS5lNjY2OWEyNzBjNTZkM2EwOGQ5MWNjMjcyMWY5MmZlMXAtNywKKyAgICAweDEuOTVlYzhiOWUwM2Q1OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzQ4CisgICAgLTB4MS5lNjY2OWEyNzBjNTZkM2EwOGQ5MWNjMjcyMWY5MmZlMXAtNywKKyAgICAtMHgxLjk1ZWM4YjllMDNkNThwMAorICB9LAorICB7IC8vIEVudHJ5IDc0OQorICAgIC0weDEuNjgyZjNjYzNjN2EwOGRhMmNlMDJhNDFjZGM3YmVkODZwLTQsCisgICAgMHgxLmE4YWExZDExYzQ0ZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDc1MAorICAgIC0weDEuNjgyZjNjYzNjN2EwOGRhMmNlMDJhNDFjZGM3YmVkODZwLTQsCisgICAgLTB4MS5hOGFhMWQxMWM0NGZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTEKKyAgICAweDEuMGNiMzQ2OWEyOWVhNjZkNDAzMWJlNzY5NzAyYWFkNWNwLTEsCisgICAgMHgxLjA0YWZmNmQzMzA5NDJwMAorICB9LAorICB7IC8vIEVudHJ5IDc1MgorICAgIDB4MS4wY2IzNDY5YTI5ZWE2NmQ0MDMxYmU3Njk3MDJhYWQ1Y3AtMSwKKyAgICAtMHgxLjA0YWZmNmQzMzA5NDJwMAorICB9LAorICB7IC8vIEVudHJ5IDc1MworICAgIDB4MS4wY2IyMjhmYTdmODExN2M4MmU2MWNmNTM5MzM0MWM2NHAtMSwKKyAgICAweDEuMDRiMDllOThkY2RiNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzU0CisgICAgMHgxLjBjYjIyOGZhN2Y4MTE3YzgyZTYxY2Y1MzkzMzQxYzY0cC0xLAorICAgIC0weDEuMDRiMDllOThkY2RiNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzU1CisgICAgMHgxLjBjYjEwYjVhNjFiMDVhNzNlNzhhM2U0NDQ3YmFmNTE0cC0xLAorICAgIDB4MS4wNGIxNDY1ZTg5MjI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTYKKyAgICAweDEuMGNiMTBiNWE2MWIwNWE3M2U3OGEzZTQ0NDdiYWY1MTRwLTEsCisgICAgLTB4MS4wNGIxNDY1ZTg5MjI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTcKKyAgICAweDEuMGNhZmVkYjlkMDc4YTk4NDA4NjkyOGFhNDBkMmU0YTVwLTEsCisgICAgMHgxLjA0YjFlZTI0MzU2OThwMAorICB9LAorICB7IC8vIEVudHJ5IDc1OAorICAgIDB4MS4wY2FmZWRiOWQwNzhhOTg0MDg2OTI4YWE0MGQyZTRhNXAtMSwKKyAgICAtMHgxLjA0YjFlZTI0MzU2OThwMAorICB9LAorICB7IC8vIEVudHJ5IDc1OQorICAgIDB4MS4wY2FlZDAxOGNiZGE3ZmE1OWM2MzFjZDU1YjMxYWE4ZHAtMSwKKyAgICAweDEuMDRiMjk1ZTllMWIwYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzYwCisgICAgMHgxLjBjYWVkMDE4Y2JkYTdmYTU5YzYzMWNkNTViMzFhYThkcC0xLAorICAgIC0weDEuMDRiMjk1ZTllMWIwYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzYxCisgICAgMHgxLjBjYWRiMjc3NTNkNjU3ODVlMDZkMGU0NjQwMDYxNDllcC0xLAorICAgIDB4MS4wNGIzM2RhZjhkZjdjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjIKKyAgICAweDEuMGNhZGIyNzc1M2Q2NTc4NWUwNmQwZTQ2NDAwNjE0OWVwLTEsCisgICAgLTB4MS4wNGIzM2RhZjhkZjdjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjMKKyAgICAweDEuMGNhYzk0ZDU2ODZjYWJkMjQzMGMyMGZkZjI4NTViNDdwLTEsCisgICAgMHgxLjA0YjNlNTc1M2EzZWVwMAorICB9LAorICB7IC8vIEVudHJ5IDc2NAorICAgIDB4MS4wY2FjOTRkNTY4NmNhYmQyNDMwYzIwZmRmMjg1NWI0N3AtMSwKKyAgICAtMHgxLjA0YjNlNTc1M2EzZWVwMAorICB9LAorICB7IC8vIEVudHJ5IDc2NQorICAgIDB4MS4wY2FiNzczMzA5OWRmNzM4NjQ1NTc0Y2Q0ODJlZjRiMnAtMSwKKyAgICAweDEuMDRiNDhkM2FlNjg2MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzY2CisgICAgMHgxLjBjYWI3NzMzMDk5ZGY3Mzg2NDU1NzRjZDQ4MmVmNGIycC0xLAorICAgIC0weDEuMDRiNDhkM2FlNjg2MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzY3CisgICAgMHgxLjBjYWE1OTkwMzc2YjA2MWVjMWNmMzg5MGYxYjhlMWUzcC0xLAorICAgIDB4MS4wNGI1MzUwMDkyY2NmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjgKKyAgICAweDEuMGNhYTU5OTAzNzZiMDYxZWMxY2YzODkwZjFiOGUxZTNwLTEsCisgICAgLTB4MS4wNGI1MzUwMDkyY2NmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzcwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzcxCisgICAgMHgxLnAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzc0CisgICAgMHgxLmFkMDJjNzcxYzM1ZWQ1ZjAxMDg5YTAwYzZhMjdlMGNmcC0xLAorICAgIDB4MS4yNzlhNzQ1OTAzMzFicC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzc1CisgICAgMHgxLmFkMDJjNzcxYzM1ZWQ1ZjAxMDg5YTAwYzZhMjdlMGNmcC0xLAorICAgIC0weDEuMjc5YTc0NTkwMzMxYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDc3NgorICAgIDB4MS5hZDAyYzc3MWMzNWVjZDM0NzFkZTkwMjFlNmMzYjkyYnAtMSwKKyAgICAweDEuMjc5YTc0NTkwMzMxY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDc3NworICAgIDB4MS5hZDAyYzc3MWMzNWVjZDM0NzFkZTkwMjFlNmMzYjkyYnAtMSwKKyAgICAtMHgxLjI3OWE3NDU5MDMzMWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzgKKyAgICAweDEuYWQwMmM3NzFjMzVlYzQ3OGQzMzM4MDM3NjJmNDUwZDVwLTEsCisgICAgMHgxLjI3OWE3NDU5MDMzMWRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzkKKyAgICAweDEuYWQwMmM3NzFjMzVlYzQ3OGQzMzM4MDM3NjJmNDUwZDVwLTEsCisgICAgLTB4MS4yNzlhNzQ1OTAzMzFkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzgwCisgICAgLTB4MS40OGQxZGRkMmIyYjNmOGMyMWI5NDIxZTY1YjM4MDczNXAtMywKKyAgICAweDEuYmI2N2FlODU4NGNhOXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzgxCisgICAgLTB4MS40OGQxZGRkMmIyYjNmOGMyMWI5NDIxZTY1YjM4MDczNXAtMywKKyAgICAtMHgxLmJiNjdhZTg1ODRjYTlwMAorICB9LAorICB7IC8vIEVudHJ5IDc4MgorICAgIC0weDEuNDhkMWRkZDJiMmI0NzcxOGZmMzA2M2I2YmQ5ODEwOTlwLTMsCisgICAgMHgxLmJiNjdhZTg1ODRjYWFwMAorICB9LAorICB7IC8vIEVudHJ5IDc4MworICAgIC0weDEuNDhkMWRkZDJiMmI0NzcxOGZmMzA2M2I2YmQ5ODEwOTlwLTMsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2FhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODQKKyAgICAtMHgxLjQ4ZDFkZGQyYjJiNGY1NmZlMmNjYTU4NzFlYWY0ODIwcC0zLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODUKKyAgICAtMHgxLjQ4ZDFkZGQyYjJiNGY1NmZlMmNjYTU4NzFlYWY0ODIwcC0zLAorICAgIC0weDEuYmI2N2FlODU4NGNhYnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzg2CisgICAgMHgxLmNmYzZjZmE1MmFkOWY5OTExZGI0Y2EwZDQ1ZmRiMGIzcC0xLAorICAgIDB4MS5iZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzg3CisgICAgMHgxLmNmYzZjZmE1MmFkOWY5OTExZGI0Y2EwZDQ1ZmRiMGIzcC0xLAorICAgIC0weDEuYmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDc4OAorICAgIDB4MS5jZmM2Y2ZhNTJhZDlmNjJkNmQ1NDIzY2E4MzM5YTAwYXAtMSwKKyAgICAweDEuY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDc4OQorICAgIDB4MS5jZmM2Y2ZhNTJhZDlmNjJkNmQ1NDIzY2E4MzM5YTAwYXAtMSwKKyAgICAtMHgxLmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTAKKyAgICAweDEuY2ZjNmNmYTUyYWQ5ZjJjOWJjZjM3ZDg3YzA1ODkyZjVwLTEsCisgICAgMHgxLmMwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTEKKyAgICAweDEuY2ZjNmNmYTUyYWQ5ZjJjOWJjZjM3ZDg3YzA1ODkyZjVwLTEsCisgICAgLTB4MS5jMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzkyCisgICAgMHgxLjhiYjEwNWE1ZGM5MDEwNDA1MWQwOGNiOTY1NjMxODA3cC0xLAorICAgIDB4MS41ZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzkzCisgICAgMHgxLjhiYjEwNWE1ZGM5MDEwNDA1MWQwOGNiOTY1NjMxODA3cC0xLAorICAgIC0weDEuNWZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDc5NAorICAgIDB4MS44YmIxMDVhNWRjOTAwNjE4ZjgwZmE1MWQzMDNjNjlwLTEsCisgICAgMHgxLjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTUKKyAgICAweDEuOGJiMTA1YTVkYzkwMDYxOGY4MGZhNTFkMzAzYzY5cC0xLAorICAgIC0weDEuNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDc5NgorICAgIDB4MS44YmIxMDVhNWRjOGZmYmYxOWU0ZWJkODBmYWIyY2RiOHAtMSwKKyAgICAweDEuNjAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDc5NworICAgIDB4MS44YmIxMDVhNWRjOGZmYmYxOWU0ZWJkODBmYWIyY2RiOHAtMSwKKyAgICAtMHgxLjYwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTgKKyAgICAweDEuN2VmNDg0MmYwYmNkMTE2ODZhYWY2ZjIxYzlhYTgzNTRwLTIsCisgICAgMHgxLjJmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDc5OQorICAgIDB4MS43ZWY0ODQyZjBiY2QxMTY4NmFhZjZmMjFjOWFhODM1NHAtMiwKKyAgICAtMHgxLjJmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDgwMAorICAgIDB4MS43ZWY0ODQyZjBiY2NkNjBkNGE1MDFkYzhiYzRiNTdiM3AtMiwKKyAgICAweDEuM3AwCisgIH0sCisgIHsgLy8gRW50cnkgODAxCisgICAgMHgxLjdlZjQ4NDJmMGJjY2Q2MGQ0YTUwMWRjOGJjNGI1N2IzcC0yLAorICAgIC0weDEuM3AwCisgIH0sCisgIHsgLy8gRW50cnkgODAyCisgICAgMHgxLjdlZjQ4NDJmMGJjYzlhYjIyOWYwY2M2ZmFkNmQzNzhkcC0yLAorICAgIDB4MS4zMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDMKKyAgICAweDEuN2VmNDg0MmYwYmNjOWFiMjI5ZjBjYzZmYWQ2ZDM3OGRwLTIsCisgICAgLTB4MS4zMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDQKKyAgICAtMHgxLjg2M2VmYTM2MWRjMjI5NGU5MjliOTUxNWZiMzRmOWJhcC0xLAorICAgIDB4MS4zN2ZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDUKKyAgICAtMHgxLjg2M2VmYTM2MWRjMjI5NGU5MjliOTUxNWZiMzRmOWJhcC0xLAorICAgIC0weDEuMzdmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgODA2CisgICAgLTB4MS44NjNlZmEzNjFkYzI1MmJjYTFlYWVlZDM5NzQ5YmVkN3AtMSwKKyAgICAweDEuMzgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDcKKyAgICAtMHgxLjg2M2VmYTM2MWRjMjUyYmNhMWVhZWVkMzk3NDliZWQ3cC0xLAorICAgIC0weDEuMzgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDgKKyAgICAtMHgxLjg2M2VmYTM2MWRjMjdjMmFiMTNhNDg5MTJkNDU4ODBicC0xLAorICAgIDB4MS4zODAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDkKKyAgICAtMHgxLjg2M2VmYTM2MWRjMjdjMmFiMTNhNDg5MTJkNDU4ODBicC0xLAorICAgIC0weDEuMzgwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgODEwCisgICAgMHgxLmZlZjJiMmQyMWNmNmMxMDZlODZmZjkzOTVmODIwNGEwcC0xLAorICAgIDB4MS4wNjljOGI0NmIzNzkycC00CisgIH0sCisgIHsgLy8gRW50cnkgODExCisgICAgMHgxLmZlZjJiMmQyMWNmNmMxMDZlODZmZjkzOTVmODIwNGEwcC0xLAorICAgIC0weDEuMDY5YzhiNDZiMzc5MnAtNAorICB9LAorICB7IC8vIEVudHJ5IDgxMgorICAgIDB4MS5mYmNiZTY5M2JkOGVjODU3MjNiNmNiNTVlNGY1ZTc4ZnAtMSwKKyAgICAweDEuMDY5YzhiNDZiMzc5MnAtMworICB9LAorICB7IC8vIEVudHJ5IDgxMworICAgIDB4MS5mYmNiZTY5M2JkOGVjODU3MjNiNmNiNTVlNGY1ZTc4ZnAtMSwKKyAgICAtMHgxLjA2OWM4YjQ2YjM3OTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTQKKyAgICAweDEuZjY4ZWViZmNiYjVlODQxOTAwZTI1NDJmN2MyNGJhYjBwLTEsCisgICAgMHgxLjg5ZWFkMGVhMGQzNWJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTUKKyAgICAweDEuZjY4ZWViZmNiYjVlODQxOTAwZTI1NDJmN2MyNGJhYjBwLTEsCisgICAgLTB4MS44OWVhZDBlYTBkMzVicC0zCisgIH0sCisgIHsgLy8gRW50cnkgODE2CisgICAgMHgxLmVmNDE0NWI0YWVjZmZiZGFhZmZiNzhmZmI0OWFjOWJkcC0xLAorICAgIDB4MS4wNjljOGI0NmIzNzkycC0yCisgIH0sCisgIHsgLy8gRW50cnkgODE3CisgICAgMHgxLmVmNDE0NWI0YWVjZmZiZGFhZmZiNzhmZmI0OWFjOWJkcC0xLAorICAgIC0weDEuMDY5YzhiNDZiMzc5MnAtMgorICB9LAorICB7IC8vIEVudHJ5IDgxOAorICAgIDB4MS5lNWVhYTI4NmZiYmM2NzBkYmY2MzkyZDdjOThhYjBhMHAtMSwKKyAgICAweDEuNDg0M2FlMTg2MDU3NnAtMgorICB9LAorICB7IC8vIEVudHJ5IDgxOQorICAgIDB4MS5lNWVhYTI4NmZiYmM2NzBkYmY2MzkyZDdjOThhYjBhMHAtMSwKKyAgICAtMHgxLjQ4NDNhZTE4NjA1NzZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjAKKyAgICAweDEuZGE5NGQ1NGRkNGMwODc2ZTE4ZWU5N2M3MGQxYTRhOTRwLTEsCisgICAgMHgxLjg5ZWFkMGVhMGQzNWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjEKKyAgICAweDEuZGE5NGQ1NGRkNGMwODc2ZTE4ZWU5N2M3MGQxYTRhOTRwLTEsCisgICAgLTB4MS44OWVhZDBlYTBkMzVhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODIyCisgICAgMHgxLmNkNGJjYTljYjVjNzE1MzAyMDAxZTQ0NmNjOTNhN2JjcC0xLAorICAgIDB4MS5jYjkxZjNiYmJhMTNlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODIzCisgICAgMHgxLmNkNGJjYTljYjVjNzE1MzAyMDAxZTQ0NmNjOTNhN2JjcC0xLAorICAgIC0weDEuY2I5MWYzYmJiYTEzZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDgyNAorICAgIDB4MS5iZTFkN2MzNTM0YzQwMzMxZmRkZjI0M2Q4YTBhNTZiMHAtMSwKKyAgICAweDEuMDY5YzhiNDZiMzc5MXAtMQorICB9LAorICB7IC8vIEVudHJ5IDgyNQorICAgIDB4MS5iZTFkN2MzNTM0YzQwMzMxZmRkZjI0M2Q4YTBhNTZiMHAtMSwKKyAgICAtMHgxLjA2OWM4YjQ2YjM3OTFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjYKKyAgICAweDEuYWQxOWUyNTM1YWE5Njc4YmQ1ZmRhZmM2ODgxNzcwMGJwLTEsCisgICAgMHgxLjI3NzAxY2FmODllODNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjcKKyAgICAweDEuYWQxOWUyNTM1YWE5Njc4YmQ1ZmRhZmM2ODgxNzcwMGJwLTEsCisgICAgLTB4MS4yNzcwMWNhZjg5ZTgzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODI4CisgICAgMHgxLjlhNTJlMmUwZmJjYjNhM2Y0YmRlNmY2ZWMyNzc2N2E5cC0xLAorICAgIDB4MS40ODQzYWUxODYwNTc1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODI5CisgICAgMHgxLjlhNTJlMmUwZmJjYjNhM2Y0YmRlNmY2ZWMyNzc2N2E5cC0xLAorICAgIC0weDEuNDg0M2FlMTg2MDU3NXAtMQorICB9LAorICB7IC8vIEVudHJ5IDgzMAorICAgIDB4MS44NWRjM2VhMWJiY2U5YTgwODVmNjY1OTNhODdiN2UyZXAtMSwKKyAgICAweDEuNjkxNzNmODEzNmM2N3AtMQorICB9LAorICB7IC8vIEVudHJ5IDgzMQorICAgIDB4MS44NWRjM2VhMWJiY2U5YTgwODVmNjY1OTNhODdiN2UyZXAtMSwKKyAgICAtMHgxLjY5MTczZjgxMzZjNjdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzIKKyAgICAweDEuNmZjYjdjNmI4YjkxOWFmM2RkYTUzMDk0YzlhMjdhYWJwLTEsCisgICAgMHgxLjg5ZWFkMGVhMGQzNTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzMKKyAgICAweDEuNmZjYjdjNmI4YjkxOWFmM2RkYTUzMDk0YzlhMjdhYWJwLTEsCisgICAgLTB4MS44OWVhZDBlYTBkMzU5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODM0CisgICAgMHgxLjU4MzdkMjgxN2NmMzAzZWY2ZGFlNjlmYWViMGYwMTVlcC0xLAorICAgIDB4MS5hYWJlNjI1MmUzYTRicC0xCisgIH0sCisgIHsgLy8gRW50cnkgODM1CisgICAgMHgxLjU4MzdkMjgxN2NmMzAzZWY2ZGFlNjlmYWViMGYwMTVlcC0xLAorICAgIC0weDEuYWFiZTYyNTJlM2E0YnAtMQorICB9LAorICB7IC8vIEVudHJ5IDgzNgorICAgIDB4MS4zZjNhMGUyOGJlZGQ0MDQ0NTg1OGY4MjNlMTUwMjY0YnAtMSwKKyAgICAweDEuY2I5MWYzYmJiYTEzZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDgzNworICAgIDB4MS4zZjNhMGUyOGJlZGQ0MDQ0NTg1OGY4MjNlMTUwMjY0YnAtMSwKKyAgICAtMHgxLmNiOTFmM2JiYmExM2RwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzgKKyAgICAweDEuMjRlYzc5OTE3MTY0MmRiZDI0ZDI1OTAwNTgyMmJkMjVwLTEsCisgICAgMHgxLmVjNjU4NTI0OTA4MmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzkKKyAgICAweDEuMjRlYzc5OTE3MTY0MmRiZDI0ZDI1OTAwNTgyMmJkMjVwLTEsCisgICAgLTB4MS5lYzY1ODUyNDkwODJmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODQwCisgICAgMHgxLjA5NmFjMDJlYzQyYzg1YjdiMTBhZmVkOTIwMjc4NWI5cC0xLAorICAgIDB4MS4wNjljOGI0NmIzNzkxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDEKKyAgICAweDEuMDk2YWMwMmVjNDJjODViN2IxMGFmZWQ5MjAyNzg1YjlwLTEsCisgICAgLTB4MS4wNjljOGI0NmIzNzkxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDIKKyAgICAweDEuZDlhM2EzMzZlZGI3NjEzZGYwNjJlODZhMzJkMDlmZTFwLTIsCisgICAgMHgxLjE3MDY1M2ZiMWViMGFwMAorICB9LAorICB7IC8vIEVudHJ5IDg0MworICAgIDB4MS5kOWEzYTMzNmVkYjc2MTNkZjA2MmU4NmEzMmQwOWZlMXAtMiwKKyAgICAtMHgxLjE3MDY1M2ZiMWViMGFwMAorICB9LAorICB7IC8vIEVudHJ5IDg0NAorICAgIDB4MS45ZTdmODY1MmI0NzU4MmFmZDI5NzQ0MjkzMTcwYzA3Y3AtMiwKKyAgICAweDEuMjc3MDFjYWY4OWU4M3AwCisgIH0sCisgIHsgLy8gRW50cnkgODQ1CisgICAgMHgxLjllN2Y4NjUyYjQ3NTgyYWZkMjk3NDQyOTMxNzBjMDdjcC0yLAorICAgIC0weDEuMjc3MDFjYWY4OWU4M3AwCisgIH0sCisgIHsgLy8gRW50cnkgODQ2CisgICAgMHgxLjYxYTc2MDc3YWVlMDdiYjM0OWNhNzZjZjcwMDkxM2QxcC0yLAorICAgIDB4MS4zN2Q5ZTU2M2Y1MWZjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDcKKyAgICAweDEuNjFhNzYwNzdhZWUwN2JiMzQ5Y2E3NmNmNzAwOTEzZDFwLTIsCisgICAgLTB4MS4zN2Q5ZTU2M2Y1MWZjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDgKKyAgICAweDEuMjM1YjMzMWQ4Zjc0OGUyMGZiNmRkYjZhNzA4ZGJhMTBwLTIsCisgICAgMHgxLjQ4NDNhZTE4NjA1NzVwMAorICB9LAorICB7IC8vIEVudHJ5IDg0OQorICAgIDB4MS4yMzViMzMxZDhmNzQ4ZTIwZmI2ZGRiNmE3MDhkYmExMHAtMiwKKyAgICAtMHgxLjQ4NDNhZTE4NjA1NzVwMAorICB9LAorICB7IC8vIEVudHJ5IDg1MAorICAgIDB4MS5jN2I5MGUzMDI0NTkzZGE4NDQ5OTYzY2ZlMDhkZGU4NXAtMywKKyAgICAweDEuNThhZDc2Y2NjYjhlZXAwCisgIH0sCisgIHsgLy8gRW50cnkgODUxCisgICAgMHgxLmM3YjkwZTMwMjQ1OTNkYTg0NDk5NjNjZmUwOGRkZTg1cC0zLAorICAgIC0weDEuNThhZDc2Y2NjYjhlZXAwCisgIH0sCisgIHsgLy8gRW50cnkgODUyCisgICAgMHgxLjQ2ZGM0ZjRjZTgzZGE3MjdlYTA0OGNjN2QyZjI3NmQxcC0zLAorICAgIDB4MS42OTE3M2Y4MTM2YzY3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTMKKyAgICAweDEuNDZkYzRmNGNlODNkYTcyN2VhMDQ4Y2M3ZDJmMjc2ZDFwLTMsCisgICAgLTB4MS42OTE3M2Y4MTM2YzY3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTQKKyAgICAweDEuODk0ZjcwYmVmYmI5OWFiN2RmOWQxNzkwYTI4ZjQ4YWRwLTQsCisgICAgMHgxLjc5ODEwODM1YTFmZTBwMAorICB9LAorICB7IC8vIEVudHJ5IDg1NQorICAgIDB4MS44OTRmNzBiZWZiYjk5YWI3ZGY5ZDE3OTBhMjhmNDhhZHAtNCwKKyAgICAtMHgxLjc5ODEwODM1YTFmZTBwMAorICB9LAorICB7IC8vIEVudHJ5IDg1NgorICAgIDB4MS4wNjkxMDdhZTkzMzJmOTVmYTJjNWNlZWFkZmIyOWY3N3AtNSwKKyAgICAweDEuODllYWQwZWEwZDM1OXAwCisgIH0sCisgIHsgLy8gRW50cnkgODU3CisgICAgMHgxLjA2OTEwN2FlOTMzMmY5NWZhMmM1Y2VlYWRmYjI5Zjc3cC01LAorICAgIC0weDEuODllYWQwZWEwZDM1OXAwCisgIH0sCisgIHsgLy8gRW50cnkgODU4CisgICAgLTB4MS4wNjkxMDdhZTkzMjdlMDczMWE3NDhjMjFmMDNiNWVmY3AtNSwKKyAgICAweDEuOWE1NDk5OWU3ODZkMnAwCisgIH0sCisgIHsgLy8gRW50cnkgODU5CisgICAgLTB4MS4wNjkxMDdhZTkzMjdlMDczMWE3NDhjMjFmMDNiNWVmY3AtNSwKKyAgICAtMHgxLjlhNTQ5OTllNzg2ZDJwMAorICB9LAorICB7IC8vIEVudHJ5IDg2MAorICAgIC0weDEuODk0ZjcwYmVmYmI0MTQxN2RmZjg0M2U4MWZhYzM4OGJwLTQsCisgICAgMHgxLmFhYmU2MjUyZTNhNGJwMAorICB9LAorICB7IC8vIEVudHJ5IDg2MQorICAgIC0weDEuODk0ZjcwYmVmYmI0MTQxN2RmZjg0M2U4MWZhYzM4OGJwLTQsCisgICAgLTB4MS5hYWJlNjI1MmUzYTRicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjIKKyAgICAtMHgxLjQ2ZGM0ZjRjZTgzYWU5YWIxY2MxYjIzNjdjYjc1M2VicC0zLAorICAgIDB4MS5iYjI4MmIwNzRlZGM0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjMKKyAgICAtMHgxLjQ2ZGM0ZjRjZTgzYWU5YWIxY2MxYjIzNjdjYjc1M2VicC0zLAorICAgIC0weDEuYmIyODJiMDc0ZWRjNHAwCisgIH0sCisgIHsgLy8gRW50cnkgODY0CisgICAgLTB4MS5jN2I5MGUzMDI0NTY4OGUwOTk4NjBlOGQ0ZmZmNjAxY3AtMywKKyAgICAweDEuY2I5MWYzYmJiYTEzZHAwCisgIH0sCisgIHsgLy8gRW50cnkgODY1CisgICAgLTB4MS5jN2I5MGUzMDI0NTY4OGUwOTk4NjBlOGQ0ZmZmNjAxY3AtMywKKyAgICAtMHgxLmNiOTFmM2JiYmExM2RwMAorICB9LAorICB7IC8vIEVudHJ5IDg2NgorICAgIC0weDEuMjM1YjMzMWQ4ZjczMzk4NDFhNTE3MzEyZDBkMzQ3ZmJwLTIsCisgICAgMHgxLmRiZmJiYzcwMjU0YjZwMAorICB9LAorICB7IC8vIEVudHJ5IDg2NworICAgIC0weDEuMjM1YjMzMWQ4ZjczMzk4NDFhNTE3MzEyZDBkMzQ3ZmJwLTIsCisgICAgLTB4MS5kYmZiYmM3MDI1NGI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjgKKyAgICAtMHgxLjYxYTc2MDc3YWVkZjJlNDNhY2E0MThmN2EyZTEzMjRkcC0yLAorICAgIDB4MS5lYzY1ODUyNDkwODJmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjkKKyAgICAtMHgxLjYxYTc2MDc3YWVkZjJlNDNhY2E0MThmN2EyZTEzMjRkcC0yLAorICAgIC0weDEuZWM2NTg1MjQ5MDgyZnAwCisgIH0sCisgIHsgLy8gRW50cnkgODcwCisgICAgLTB4MS45ZTdmODY1MmI0NzQzZGNjM2MzNTY4YmFmZjhiZjllYnAtMiwKKyAgICAweDEuZmNjZjRkZDhmYmJhOHAwCisgIH0sCisgIHsgLy8gRW50cnkgODcxCisgICAgLTB4MS45ZTdmODY1MmI0NzQzZGNjM2MzNTY4YmFmZjhiZjllYnAtMiwKKyAgICAtMHgxLmZjY2Y0ZGQ4ZmJiYThwMAorICB9LAorICB7IC8vIEVudHJ5IDg3MgorICAgIC0weDEuZDlhM2EzMzZlZGI2NWVmYTMwZTFhNjY3OWFhMDY0YzJwLTIsCisgICAgMHgxLjA2OWM4YjQ2YjM3OTFwMQorICB9LAorICB7IC8vIEVudHJ5IDg3MworICAgIC0weDEuZDlhM2EzMzZlZGI2NWVmYTMwZTFhNjY3OWFhMDY0YzJwLTIsCisgICAgLTB4MS4wNjljOGI0NmIzNzkxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzQKKyAgICAtMHgxLjA5NmFjMDJlYzQyYzI0ODgwYTU5NTE3ODhjYjM4M2M4cC0xLAorICAgIDB4MS4wZWQxNmZhMGU5MTRlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzUKKyAgICAtMHgxLjA5NmFjMDJlYzQyYzI0ODgwYTU5NTE3ODhjYjM4M2M4cC0xLAorICAgIC0weDEuMGVkMTZmYTBlOTE0ZXAxCisgIH0sCisgIHsgLy8gRW50cnkgODc2CisgICAgLTB4MS4yNGVjNzk5MTcxNjNkZGE2NWFmZDgxMDlmNTljYjQ2NXAtMSwKKyAgICAweDEuMTcwNjUzZmIxZWIwYnAxCisgIH0sCisgIHsgLy8gRW50cnkgODc3CisgICAgLTB4MS4yNGVjNzk5MTcxNjNkZGE2NWFmZDgxMDlmNTljYjQ2NXAtMSwKKyAgICAtMHgxLjE3MDY1M2ZiMWViMGJwMQorICB9LAorICB7IC8vIEVudHJ5IDg3OAorICAgIC0weDEuM2YzYTBlMjhiZWRkMGNmMGM0YmZiZDhjODJhM2JhYWZwLTEsCisgICAgMHgxLjFmM2IzODU1NTQ0YzhwMQorICB9LAorICB7IC8vIEVudHJ5IDg3OQorICAgIC0weDEuM2YzYTBlMjhiZWRkMGNmMGM0YmZiZDhjODJhM2JhYWZwLTEsCisgICAgLTB4MS4xZjNiMzg1NTU0NGM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODAKKyAgICAtMHgxLjU4MzdkMjgxN2NmMmViMDY5MDM1NTUyZGMzYWU4MzRjcC0xLAorICAgIDB4MS4yNzcwMWNhZjg5ZTg1cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODEKKyAgICAtMHgxLjU4MzdkMjgxN2NmMmViMDY5MDM1NTUyZGMzYWU4MzRjcC0xLAorICAgIC0weDEuMjc3MDFjYWY4OWU4NXAxCisgIH0sCisgIHsgLy8gRW50cnkgODgyCisgICAgLTB4MS42ZmNiN2M2YjhiOTE5OWNlMmYxN2RkM2VlODZiM2I5YXAtMSwKKyAgICAweDEuMmZhNTAxMDliZjg0MnAxCisgIH0sCisgIHsgLy8gRW50cnkgODgzCisgICAgLTB4MS42ZmNiN2M2YjhiOTE5OWNlMmYxN2RkM2VlODZiM2I5YXAtMSwKKyAgICAtMHgxLjJmYTUwMTA5YmY4NDJwMQorICB9LAorICB7IC8vIEVudHJ5IDg4NAorICAgIC0weDEuODVkYzNlYTFiYmNlYWUyZDI5NDQyMWU4YzczNTBmOGNwLTEsCisgICAgMHgxLjM3ZDllNTYzZjUxZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDg4NQorICAgIC0weDEuODVkYzNlYTFiYmNlYWUyZDI5NDQyMWU4YzczNTBmOGNwLTEsCisgICAgLTB4MS4zN2Q5ZTU2M2Y1MWZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODYKKyAgICAtMHgxLjlhNTJlMmUwZmJjYjVmOGEzZjU1YzI3NGY5ZWM3NTRicC0xLAorICAgIDB4MS40MDBlYzliZTJhYmJjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODcKKyAgICAtMHgxLjlhNTJlMmUwZmJjYjVmOGEzZjU1YzI3NGY5ZWM3NTRicC0xLAorICAgIC0weDEuNDAwZWM5YmUyYWJiY3AxCisgIH0sCisgIHsgLy8gRW50cnkgODg4CisgICAgLTB4MS5hZDE5ZTI1MzVhYTk5YjA0OWFjMGI1ODU4YzVkMzgxZnAtMSwKKyAgICAweDEuNDg0M2FlMTg2MDU3OXAxCisgIH0sCisgIHsgLy8gRW50cnkgODg5CisgICAgLTB4MS5hZDE5ZTI1MzVhYTk5YjA0OWFjMGI1ODU4YzVkMzgxZnAtMSwKKyAgICAtMHgxLjQ4NDNhZTE4NjA1NzlwMQorICB9LAorICB7IC8vIEVudHJ5IDg5MAorICAgIC0weDEuYmUxZDdjMzUzNGM0NDEzMmFiMWM0MTMwY2JlOWRmYTBwLTEsCisgICAgMHgxLjUwNzg5MjcyOTVmMzZwMQorICB9LAorICB7IC8vIEVudHJ5IDg5MQorICAgIC0weDEuYmUxZDdjMzUzNGM0NDEzMmFiMWM0MTMwY2JlOWRmYTBwLTEsCisgICAgLTB4MS41MDc4OTI3Mjk1ZjM2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTIKKyAgICAtMHgxLmNkNGJjYTljYjVjNzU5ZTRkNmRjODYwMWVjM2Q4NGI2cC0xLAorICAgIDB4MS41OGFkNzZjY2NiOGYzcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTMKKyAgICAtMHgxLmNkNGJjYTljYjVjNzU5ZTRkNmRjODYwMWVjM2Q4NGI2cC0xLAorICAgIC0weDEuNThhZDc2Y2NjYjhmM3AxCisgIH0sCisgIHsgLy8gRW50cnkgODk0CisgICAgLTB4MS5kYTk0ZDU0ZGQ0YzBjZWRjY2Q3MzY4NDk5NDQyMjc0MHAtMSwKKyAgICAweDEuNjBlMjViMjcwMTJiMHAxCisgIH0sCisgIHsgLy8gRW50cnkgODk1CisgICAgLTB4MS5kYTk0ZDU0ZGQ0YzBjZWRjY2Q3MzY4NDk5NDQyMjc0MHAtMSwKKyAgICAtMHgxLjYwZTI1YjI3MDEyYjBwMQorICB9LAorICB7IC8vIEVudHJ5IDg5NgorICAgIC0weDEuZTVlYWEyODZmYmJjYWQxZTRhNjM3MzM5MmU2Nzk2NjlwLTEsCisgICAgMHgxLjY5MTczZjgxMzZjNmRwMQorICB9LAorICB7IC8vIEVudHJ5IDg5NworICAgIC0weDEuZTVlYWEyODZmYmJjYWQxZTRhNjM3MzM5MmU2Nzk2NjlwLTEsCisgICAgLTB4MS42OTE3M2Y4MTM2YzZkcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTgKKyAgICAtMHgxLmVmNDE0NWI0YWVkMDNjNWYxZDM5NzYzYjFlZWU2ZWQ4cC0xLAorICAgIDB4MS43MTRjMjNkYjZjNjJhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTkKKyAgICAtMHgxLmVmNDE0NWI0YWVkMDNjNWYxZDM5NzYzYjFlZWU2ZWQ4cC0xLAorICAgIC0weDEuNzE0YzIzZGI2YzYyYXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTAwCisgICAgLTB4MS5mNjhlZWJmY2JiNWViYTEyNGQ4Y2M0OGZkMWJlYjA0ZHAtMSwKKyAgICAweDEuNzk4MTA4MzVhMWZlN3AxCisgIH0sCisgIHsgLy8gRW50cnkgOTAxCisgICAgLTB4MS5mNjhlZWJmY2JiNWViYTEyNGQ4Y2M0OGZkMWJlYjA0ZHAtMSwKKyAgICAtMHgxLjc5ODEwODM1YTFmZTdwMQorICB9LAorICB7IC8vIEVudHJ5IDkwMgorICAgIC0weDEuZmJjYmU2OTNiZDhlZjAwNmY1ZmYwMjIxMGRmZTA2MTlwLTEsCisgICAgMHgxLjgxYjVlYzhmZDc5YTRwMQorICB9LAorICB7IC8vIEVudHJ5IDkwMworICAgIC0weDEuZmJjYmU2OTNiZDhlZjAwNmY1ZmYwMjIxMGRmZTA2MTlwLTEsCisgICAgLTB4MS44MWI1ZWM4ZmQ3OWE0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDQKKyAgICAtMHgxLmZlZjJiMmQyMWNmNmJlMWEyYzdlYTY2NWVmMWY4NzRlcC0xLAorICAgIDB4MS44OWVhZDBlYTBkMzVicDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDUKKyAgICAtMHgxLmZlZjJiMmQyMWNmNmJlMWEyYzdlYTY2NWVmMWY4NzRlcC0xLAorICAgIC0weDEuODllYWQwZWEwZDM1YnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTA2CisgICAgMHgxLmVmNDE0NWI0YWVjZmY2ZjU4ZWRlY2YyNDk1NTQyOGMxcC0xLAorICAgIC0weDEuODFiNWVjOGZkNzk5ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTA3CisgICAgMHgxLmVmNDE0NWI0YWVjZmY2ZjU4ZWRlY2YyNDk1NTQyOGMxcC0xLAorICAgIDB4MS44MWI1ZWM4ZmQ3OTlmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDgKKyAgICAweDEuYmUxZDdjMzUzNGMzZjliOWIzNTYxOTI4MDA0OWRlODVwLTEsCisgICAgLTB4MS43MTRjMjNkYjZjNjI2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDkKKyAgICAweDEuYmUxZDdjMzUzNGMzZjliOWIzNTYxOTI4MDA0OWRlODVwLTEsCisgICAgMHgxLjcxNGMyM2RiNmM2MjZwMgorICB9LAorICB7IC8vIEVudHJ5IDkxMAorICAgIDB4MS42ZmNiN2M2YjhiOTE4ZDg2ZmM4M2Q2MTJhNjU4N2VkZHAtMSwKKyAgICAtMHgxLjYwZTI1YjI3MDEyYWRwMgorICB9LAorICB7IC8vIEVudHJ5IDkxMQorICAgIDB4MS42ZmNiN2M2YjhiOTE4ZDg2ZmM4M2Q2MTJhNjU4N2VkZHAtMSwKKyAgICAweDEuNjBlMjViMjcwMTJhZHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTEyCisgICAgMHgxLjA5NmFjMDJlYzQyYzgyZTViMjI1MTg1YmQ2Yzc1N2Q1cC0xLAorICAgIC0weDEuNTA3ODkyNzI5NWYzNHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTEzCisgICAgMHgxLjA5NmFjMDJlYzQyYzgyZTViMjI1MTg1YmQ2Yzc1N2Q1cC0xLAorICAgIDB4MS41MDc4OTI3Mjk1ZjM0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTQKKyAgICAweDEuMjM1YjMzMWQ4Zjc0ODdjZTJkYjk3ODE5ZmFlNzc3N2NwLTIsCisgICAgLTB4MS40MDBlYzliZTJhYmJicDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTUKKyAgICAweDEuMjM1YjMzMWQ4Zjc0ODdjZTJkYjk3ODE5ZmFlNzc3N2NwLTIsCisgICAgMHgxLjQwMGVjOWJlMmFiYmJwMgorICB9LAorICB7IC8vIEVudHJ5IDkxNgorICAgIDB4MS4wNjkxMDdhZTkzMzJjNGExY2QyZGMwMzNiOGQ1MDU5OHAtNSwKKyAgICAtMHgxLjJmYTUwMTA5YmY4NDJwMgorICB9LAorICB7IC8vIEVudHJ5IDkxNworICAgIDB4MS4wNjkxMDdhZTkzMzJjNGExY2QyZGMwMzNiOGQ1MDU5OHAtNSwKKyAgICAweDEuMmZhNTAxMDliZjg0MnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTE4CisgICAgLTB4MS5jN2I5MGUzMDI0NTY5NWJkMWVjMTcwZjQ1ZmVlYjFmZnAtMywKKyAgICAtMHgxLjFmM2IzODU1NTQ0YzlwMgorICB9LAorICB7IC8vIEVudHJ5IDkxOQorICAgIC0weDEuYzdiOTBlMzAyNDU2OTViZDFlYzE3MGY0NWZlZWIxZmZwLTMsCisgICAgMHgxLjFmM2IzODU1NTQ0YzlwMgorICB9LAorICB7IC8vIEVudHJ5IDkyMAorICAgIC0weDEuZDlhM2EzMzZlZGI2MmMxNTQxYjg1ODRjZDZjMDBmODdwLTIsCisgICAgLTB4MS4wZWQxNmZhMGU5MTUwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjEKKyAgICAtMHgxLmQ5YTNhMzM2ZWRiNjJjMTU0MWI4NTg0Y2Q2YzAwZjg3cC0yLAorICAgIDB4MS4wZWQxNmZhMGU5MTUwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjIKKyAgICAtMHgxLjU4MzdkMjgxN2NmMjc3MDVjYWM3ODgxZmI1NjlmZmM3cC0xLAorICAgIC0weDEuZmNjZjRkZDhmYmJhZXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTIzCisgICAgLTB4MS41ODM3ZDI4MTdjZjI3NzA1Y2FjNzg4MWZiNTY5ZmZjN3AtMSwKKyAgICAweDEuZmNjZjRkZDhmYmJhZXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTI0CisgICAgLTB4MS5hZDE5ZTI1MzVhYThmZmI0MDA2NmQ3OGFlZjcxZmFiZHAtMSwKKyAgICAtMHgxLmRiZmJiYzcwMjU0YmNwMQorICB9LAorICB7IC8vIEVudHJ5IDkyNQorICAgIC0weDEuYWQxOWUyNTM1YWE4ZmZiNDAwNjZkNzhhZWY3MWZhYmRwLTEsCisgICAgMHgxLmRiZmJiYzcwMjU0YmNwMQorICB9LAorICB7IC8vIEVudHJ5IDkyNgorICAgIC0weDEuZTVlYWEyODZmYmJjMmIxMjkyMzgxNjBkZjMwY2U3MDRwLTEsCisgICAgLTB4MS5iYjI4MmIwNzRlZGNhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjcKKyAgICAtMHgxLmU1ZWFhMjg2ZmJiYzJiMTI5MjM4MTYwZGYzMGNlNzA0cC0xLAorICAgIDB4MS5iYjI4MmIwNzRlZGNhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjgKKyAgICAtMHgxLmZlZjJiMmQyMWNmNmI0MGZmM2I1MzBjZThkYzBkOGE3cC0xLAorICAgIC0weDEuOWE1NDk5OWU3ODZkOHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTI5CisgICAgLTB4MS5mZWYyYjJkMjFjZjZiNDBmZjNiNTMwY2U4ZGMwZDhhN3AtMSwKKyAgICAweDEuOWE1NDk5OWU3ODZkOHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTMwCisgICAgLTB4MS5mNjhlZWJmY2JiNWVhZGQ2NWMyNjFjZDgwMzk5MGFlMXAtMSwKKyAgICAtMHgxLjc5ODEwODM1YTFmZTZwMQorICB9LAorICB7IC8vIEVudHJ5IDkzMQorICAgIC0weDEuZjY4ZWViZmNiYjVlYWRkNjVjMjYxY2Q4MDM5OTBhZTFwLTEsCisgICAgMHgxLjc5ODEwODM1YTFmZTZwMQorICB9LAorICB7IC8vIEVudHJ5IDkzMgorICAgIC0weDEuY2Q0YmNhOWNiNWM3NzVhOTk3MjlmN2FkOTViN2RjZTNwLTEsCisgICAgLTB4MS41OGFkNzZjY2NiOGY0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzMKKyAgICAtMHgxLmNkNGJjYTljYjVjNzc1YTk5NzI5ZjdhZDk1YjdkY2UzcC0xLAorICAgIDB4MS41OGFkNzZjY2NiOGY0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzQKKyAgICAtMHgxLjg1ZGMzZWExYmJjZjJhYTJlMjFlYzU4NmQ1NDk3ZTM1cC0xLAorICAgIC0weDEuMzdkOWU1NjNmNTIwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTM1CisgICAgLTB4MS44NWRjM2VhMWJiY2YyYWEyZTIxZWM1ODZkNTQ5N2UzNXAtMSwKKyAgICAweDEuMzdkOWU1NjNmNTIwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTM2CisgICAgLTB4MS4yNGVjNzk5MTcxNjRlNDFhZGRkNGJhY2Q0NDIwZjlmYnAtMSwKKyAgICAtMHgxLjE3MDY1M2ZiMWViMTBwMQorICB9LAorICB7IC8vIEVudHJ5IDkzNworICAgIC0weDEuMjRlYzc5OTE3MTY0ZTQxYWRkZDRiYWNkNDQyMGY5ZmJwLTEsCisgICAgMHgxLjE3MDY1M2ZiMWViMTBwMQorICB9LAorICB7IC8vIEVudHJ5IDkzOAorICAgIC0weDEuNjFhNzYwNzdhZWUyM2IxMWYwYzY3M2Y2MzgwMDNiMGFwLTIsCisgICAgLTB4MS5lYzY1ODUyNDkwODNjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzkKKyAgICAtMHgxLjYxYTc2MDc3YWVlMjNiMTFmMGM2NzNmNjM4MDAzYjBhcC0yLAorICAgIDB4MS5lYzY1ODUyNDkwODNjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDAKKyAgICAtMHgxLjg5NGY3MGJlZmJjMTA0YjcwNmU4NWNmNGMxYzk2YTUycC00LAorICAgIC0weDEuYWFiZTYyNTJlM2E1OHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTQxCisgICAgLTB4MS44OTRmNzBiZWZiYzEwNGI3MDZlODVjZjRjMWM5NmE1MnAtNCwKKyAgICAweDEuYWFiZTYyNTJlM2E1OHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTQyCisgICAgMHgxLjQ2ZGM0ZjRjZTgzNzNjN2M0NGYxM2I1NzM2M2VkZDNicC0zLAorICAgIC0weDEuNjkxNzNmODEzNmM3NHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTQzCisgICAgMHgxLjQ2ZGM0ZjRjZTgzNzNjN2M0NGYxM2I1NzM2M2VkZDNicC0zLAorICAgIDB4MS42OTE3M2Y4MTM2Yzc0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDQKKyAgICAweDEuOWU3Zjg2NTJiNDcyODllNTNmY2NkNTQ5NTVkYjQ1NTJwLTIsCisgICAgLTB4MS4yNzcwMWNhZjg5ZTkwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDUKKyAgICAweDEuOWU3Zjg2NTJiNDcyODllNTNmY2NkNTQ5NTVkYjQ1NTJwLTIsCisgICAgMHgxLjI3NzAxY2FmODllOTBwMAorICB9LAorICB7IC8vIEVudHJ5IDk0NgorICAgIDB4MS4zZjNhMGUyOGJlZGJmYjA2NmI2N2FiZDljMzM4NDA5ZXAtMSwKKyAgICAtMHgxLmNiOTFmM2JiYmExNTdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDcKKyAgICAweDEuM2YzYTBlMjhiZWRiZmIwNjZiNjdhYmQ5YzMzODQwOWVwLTEsCisgICAgMHgxLmNiOTFmM2JiYmExNTdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDgKKyAgICAweDEuOWE1MmUyZTBmYmNhNGIwMGM3MmRhYTNjZGFjYTI1N2NwLTEsCisgICAgLTB4MS40ODQzYWUxODYwNThlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTQ5CisgICAgMHgxLjlhNTJlMmUwZmJjYTRiMDBjNzJkYWEzY2RhY2EyNTdjcC0xLAorICAgIDB4MS40ODQzYWUxODYwNThlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTUwCisgICAgMHgxLmRhOTRkNTRkZDRiZmY3NTNkOTg4YzE3NTVlMmZmYzA0cC0xLAorICAgIC0weDEuODllYWQwZWEwZDM4YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDk1MQorICAgIDB4MS5kYTk0ZDU0ZGQ0YmZmNzUzZDk4OGMxNzU1ZTJmZmMwNHAtMSwKKyAgICAweDEuODllYWQwZWEwZDM4YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDk1MgorICAgIDB4MS5mYmNiZTY5M2JkOGU5ODQyMzIwN2UzNjU4N2Q5NDJiN3AtMSwKKyAgICAtMHgxLjA2OWM4YjQ2YjM3ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTMKKyAgICAweDEuZmJjYmU2OTNiZDhlOTg0MjMyMDdlMzY1ODdkOTQyYjdwLTEsCisgICAgMHgxLjA2OWM4YjQ2YjM3ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTQKKyAgICAweDEuZmJjYmU2OTNiZDhlZjg2YzE1NjViMzQ1MzAzNmU1NWVwLTEsCisgICAgMHgxLjA2OWM4YjQ2YjM3MzRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTUKKyAgICAweDEuZmJjYmU2OTNiZDhlZjg2YzE1NjViMzQ1MzAzNmU1NWVwLTEsCisgICAgLTB4MS4wNjljOGI0NmIzNzM0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgOTU2CisgICAgMHgxLmRhOTRkNTRkZDRjMTExODc0MDVhZGE3ZjA0ZTViMTcxcC0xLAorICAgIDB4MS44OWVhZDBlYTBkMzJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTU3CisgICAgMHgxLmRhOTRkNTRkZDRjMTExODc0MDVhZGE3ZjA0ZTViMTcxcC0xLAorICAgIC0weDEuODllYWQwZWEwZDMyY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDk1OAorICAgIDB4MS45YTUyZTJlMGZiY2MwY2M4M2I4NDNiYWU1OGM2Y2RmOHAtMSwKKyAgICAweDEuNDg0M2FlMTg2MDU1ZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDk1OQorICAgIDB4MS45YTUyZTJlMGZiY2MwY2M4M2I4NDNiYWU1OGM2Y2RmOHAtMSwKKyAgICAtMHgxLjQ4NDNhZTE4NjA1NWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjAKKyAgICAweDEuM2YzYTBlMjhiZWRlNDZmNjVjYTViNWMxOWFkOTlkZDdwLTEsCisgICAgMHgxLmNiOTFmM2JiYmExMjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjEKKyAgICAweDEuM2YzYTBlMjhiZWRlNDZmNjVjYTViNWMxOWFkOTlkZDdwLTEsCisgICAgLTB4MS5jYjkxZjNiYmJhMTI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTYyCisgICAgMHgxLjllN2Y4NjUyYjQ3ODA2NmVlYzU2M2Y4MzUwOTdmMTQ4cC0yLAorICAgIDB4MS4yNzcwMWNhZjg5ZTc4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjMKKyAgICAweDEuOWU3Zjg2NTJiNDc4MDY2ZWVjNTYzZjgzNTA5N2YxNDhwLTIsCisgICAgLTB4MS4yNzcwMWNhZjg5ZTc4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjQKKyAgICAweDEuNDZkYzRmNGNlODQzMTUxYjlkMTRlNTYxODc5ZTVmZTNwLTMsCisgICAgMHgxLjY5MTczZjgxMzZjNWNwMAorICB9LAorICB7IC8vIEVudHJ5IDk2NQorICAgIDB4MS40NmRjNGY0Y2U4NDMxNTFiOWQxNGU1NjE4NzllNWZlM3AtMywKKyAgICAtMHgxLjY5MTczZjgxMzZjNWNwMAorICB9LAorICB7IC8vIEVudHJ5IDk2NgorICAgIC0weDEuODk0ZjcwYmVmYmE5MjExYjBkY2FhNGRjYTQ1MDY3MGZwLTQsCisgICAgMHgxLmFhYmU2MjUyZTNhNDBwMAorICB9LAorICB7IC8vIEVudHJ5IDk2NworICAgIC0weDEuODk0ZjcwYmVmYmE5MjExYjBkY2FhNGRjYTQ1MDY3MGZwLTQsCisgICAgLTB4MS5hYWJlNjI1MmUzYTQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjgKKyAgICAtMHgxLjYxYTc2MDc3YWVkYzk5OTUyNDM4NDIxZjgyMGEyYmVmcC0yLAorICAgIDB4MS5lYzY1ODUyNDkwODI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjkKKyAgICAtMHgxLjYxYTc2MDc3YWVkYzk5OTUyNDM4NDIxZjgyMGEyYmVmcC0yLAorICAgIC0weDEuZWM2NTg1MjQ5MDgyNHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTcwCisgICAgLTB4MS4yNGVjNzk5MTcxNjI2ZTM2NzA5Y2ZjZjdjNzc1MjMzMnAtMSwKKyAgICAweDEuMTcwNjUzZmIxZWIwNHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTcxCisgICAgLTB4MS4yNGVjNzk5MTcxNjI2ZTM2NzA5Y2ZjZjdjNzc1MjMzMnAtMSwKKyAgICAtMHgxLjE3MDY1M2ZiMWViMDRwMQorICB9LAorICB7IC8vIEVudHJ5IDk3MgorICAgIC0weDEuODVkYzNlYTFiYmNkMzhjYmZlYjQzNzBkNTQwNWVlYmFwLTEsCisgICAgMHgxLjM3ZDllNTYzZjUxZjZwMQorICB9LAorICB7IC8vIEVudHJ5IDk3MworICAgIC0weDEuODVkYzNlYTFiYmNkMzhjYmZlYjQzNzBkNTQwNWVlYmFwLTEsCisgICAgLTB4MS4zN2Q5ZTU2M2Y1MWY2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzQKKyAgICAtMHgxLmNkNGJjYTljYjVjNjI4NzA5Mzg4YTM5ZmM4NDU5MWQxcC0xLAorICAgIDB4MS41OGFkNzZjY2NiOGU4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzUKKyAgICAtMHgxLmNkNGJjYTljYjVjNjI4NzA5Mzg4YTM5ZmM4NDU5MWQxcC0xLAorICAgIC0weDEuNThhZDc2Y2NjYjhlOHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTc2CisgICAgLTB4MS5mNjhlZWJmY2JiNWUxYjA3MGI1NjQwMzdmNTU3MWEzOXAtMSwKKyAgICAweDEuNzk4MTA4MzVhMWZkYXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTc3CisgICAgLTB4MS5mNjhlZWJmY2JiNWUxYjA3MGI1NjQwMzdmNTU3MWEzOXAtMSwKKyAgICAtMHgxLjc5ODEwODM1YTFmZGFwMQorICB9LAorICB7IC8vIEVudHJ5IDk3OAorICAgIC0weDEuZmVmMmIyZDIxY2Y2ZTU0NGFiNzc5NWFlZDEwZDlmYTdwLTEsCisgICAgMHgxLjlhNTQ5OTllNzg2Y2NwMQorICB9LAorICB7IC8vIEVudHJ5IDk3OQorICAgIC0weDEuZmVmMmIyZDIxY2Y2ZTU0NGFiNzc5NWFlZDEwZDlmYTdwLTEsCisgICAgLTB4MS45YTU0OTk5ZTc4NmNjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODAKKyAgICAtMHgxLmU1ZWFhMjg2ZmJiZDFkMTM1ZTIxNmM0OWE5ZjdlNWRhcC0xLAorICAgIDB4MS5iYjI4MmIwNzRlZGJlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODEKKyAgICAtMHgxLmU1ZWFhMjg2ZmJiZDFkMTM1ZTIxNmM0OWE5ZjdlNWRhcC0xLAorICAgIC0weDEuYmIyODJiMDc0ZWRiZXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTgyCisgICAgLTB4MS5hZDE5ZTI1MzVhYWFhMmFjODcwNTZiNmQ3Nzc2ZTk3YXAtMSwKKyAgICAweDEuZGJmYmJjNzAyNTRiMHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTgzCisgICAgLTB4MS5hZDE5ZTI1MzVhYWFhMmFjODcwNTZiNmQ3Nzc2ZTk3YXAtMSwKKyAgICAtMHgxLmRiZmJiYzcwMjU0YjBwMQorICB9LAorICB7IC8vIEVudHJ5IDk4NAorICAgIC0weDEuNTgzN2QyODE3Y2Y0YWY4ZTVlNTliMTNiNGFhOWI1ZTNwLTEsCisgICAgMHgxLmZjY2Y0ZGQ4ZmJiYTJwMQorICB9LAorICB7IC8vIEVudHJ5IDk4NQorICAgIC0weDEuNTgzN2QyODE3Y2Y0YWY4ZTVlNTliMTNiNGFhOWI1ZTNwLTEsCisgICAgLTB4MS5mY2NmNGRkOGZiYmEycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODYKKyAgICAtMHgxLmQ5YTNhMzM2ZWRiYjdkZTY0YTIxODNjYjI3YmU0YjVicC0yLAorICAgIDB4MS4wZWQxNmZhMGU5MTRhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODcKKyAgICAtMHgxLmQ5YTNhMzM2ZWRiYjdkZTY0YTIxODNjYjI3YmU0YjVicC0yLAorICAgIC0weDEuMGVkMTZmYTBlOTE0YXAyCisgIH0sCisgIHsgLy8gRW50cnkgOTg4CisgICAgLTB4MS5jN2I5MGUzMDI0NjI0OGI3YTBjMmM4N2EzZGQyNTIyNHAtMywKKyAgICAweDEuMWYzYjM4NTU1NDRjM3AyCisgIH0sCisgIHsgLy8gRW50cnkgOTg5CisgICAgLTB4MS5jN2I5MGUzMDI0NjI0OGI3YTBjMmM4N2EzZGQyNTIyNHAtMywKKyAgICAtMHgxLjFmM2IzODU1NTQ0YzNwMgorICB9LAorICB7IC8vIEVudHJ5IDk5MAorICAgIDB4MS4wNjkxMDdhZTkzMDJjYWYyMDY4YjQ4ODQyYWZkZjA1MXAtNSwKKyAgICAweDEuMmZhNTAxMDliZjgzY3AyCisgIH0sCisgIHsgLy8gRW50cnkgOTkxCisgICAgMHgxLjA2OTEwN2FlOTMwMmNhZjIwNjhiNDg4NDJhZmRmMDUxcC01LAorICAgIC0weDEuMmZhNTAxMDliZjgzY3AyCisgIH0sCisgIHsgLy8gRW50cnkgOTkyCisgICAgMHgxLjIzNWIzMzFkOGY2ZWM3NGFhM2RlNWFlZDE1ZmEzZjY4cC0yLAorICAgIDB4MS40MDBlYzliZTJhYmI1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTMKKyAgICAweDEuMjM1YjMzMWQ4ZjZlYzc0YWEzZGU1YWVkMTVmYTNmNjhwLTIsCisgICAgLTB4MS40MDBlYzliZTJhYmI1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTQKKyAgICAweDEuMDk2YWMwMmVjNDI5ZjIyNWM5OWI4OWJiNGM5ZTVkM2VwLTEsCisgICAgMHgxLjUwNzg5MjcyOTVmMmVwMgorICB9LAorICB7IC8vIEVudHJ5IDk5NQorICAgIDB4MS4wOTZhYzAyZWM0MjlmMjI1Yzk5Yjg5YmI0YzllNWQzZXAtMSwKKyAgICAtMHgxLjUwNzg5MjcyOTVmMmVwMgorICB9LAorICB7IC8vIEVudHJ5IDk5NgorICAgIDB4MS42ZmNiN2M2YjhiOGY3NzNlM2I0MjFkZGVkNmZjMWYyNnAtMSwKKyAgICAweDEuNjBlMjViMjcwMTJhN3AyCisgIH0sCisgIHsgLy8gRW50cnkgOTk3CisgICAgMHgxLjZmY2I3YzZiOGI4Zjc3M2UzYjQyMWRkZWQ2ZmMxZjI2cC0xLAorICAgIC0weDEuNjBlMjViMjcwMTJhN3AyCisgIH0sCisgIHsgLy8gRW50cnkgOTk4CisgICAgMHgxLmJlMWQ3YzM1MzRjMjgwZGFiNDNkY2VkNjcwMzMwYjYzcC0xLAorICAgIDB4MS43MTRjMjNkYjZjNjIwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTkKKyAgICAweDEuYmUxZDdjMzUzNGMyODBkYWI0M2RjZWQ2NzAzMzBiNjNwLTEsCisgICAgLTB4MS43MTRjMjNkYjZjNjIwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAwCisgICAgMHgxLmVmNDE0NWI0YWVjZjM0MjcwOWEzYjE5MzIwZDFiMTk0cC0xLAorICAgIDB4MS44MWI1ZWM4ZmQ3OTk5cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAxCisgICAgMHgxLmVmNDE0NWI0YWVjZjM0MjcwOWEzYjE5MzIwZDFiMTk0cC0xLAorICAgIC0weDEuODFiNWVjOGZkNzk5OXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTAwMgorICAgIDB4MS5mZjBmZDJjOTZhZGZiYWU1NzY5ODFlZTRiMzQ3NjlkZXAtMSwKKyAgICAweDEuZWZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwMDMKKyAgICAweDEuZmYwZmQyYzk2YWRmYmFlNTc2OTgxZWU0YjM0NzY5ZGVwLTEsCisgICAgLTB4MS5lZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTAwNAorICAgIDB4MS5mZjBmZDJjOTZhZGZiYWQ1ZjkwNGE3MWIyZDIxMGEyYXAtMSwKKyAgICAweDEuZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwMDUKKyAgICAweDEuZmYwZmQyYzk2YWRmYmFkNWY5MDRhNzFiMmQyMTBhMmFwLTEsCisgICAgLTB4MS5mcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTAwNgorICAgIDB4MS5mZjBmZDJjOTZhZGZiYWM2N2I3MTJmNTFhNmZhMmFiM3AtMSwKKyAgICAweDEuZjAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwMDcKKyAgICAweDEuZmYwZmQyYzk2YWRmYmFjNjdiNzEyZjUxYTZmYTJhYjNwLTEsCisgICAgLTB4MS5mMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTAwOAorICAgIDB4MS5mYzIxMDA1NTQ2N2ZlNWM4Zjc2ZTc1ZmQ3MDgzODE4Y3AtMSwKKyAgICAweDEuZjdmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMDkKKyAgICAweDEuZmMyMTAwNTU0NjdmZTVjOGY3NmU3NWZkNzA4MzgxOGNwLTEsCisgICAgLTB4MS5mN2ZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTAxMAorICAgIDB4MS5mYzIxMDA1NTQ2N2ZlNThhMjAxOTMzOTliM2JjMGRkMnAtMSwKKyAgICAweDEuZjgwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTAxMQorICAgIDB4MS5mYzIxMDA1NTQ2N2ZlNThhMjAxOTMzOTliM2JjMGRkMnAtMSwKKyAgICAtMHgxLmY4MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMTIKKyAgICAweDEuZmMyMTAwNTU0NjdmZTU0YjQ4YzNmMTM1ZjZmMjlkZjdwLTEsCisgICAgMHgxLmY4MDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEzCisgICAgMHgxLmZjMjEwMDU1NDY3ZmU1NGI0OGMzZjEzNWY2ZjI5ZGY3cC0xLAorICAgIC0weDEuZjgwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMTQKKyAgICAweDEuZjk0OTg0YjI1NTJlMTllNzMyOTQxM2I4YzJlOGRjNTFwLTEsCisgICAgMHgxLjRiZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE1CisgICAgMHgxLmY5NDk4NGIyNTUyZTE5ZTczMjk0MTNiOGMyZThkYzUxcC0xLAorICAgIC0weDEuNGJmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDEwMTYKKyAgICAweDEuZjk0OTg0YjI1NTJlMTk0MWVjNzY2YzZhODJlY2U0YTNwLTEsCisgICAgMHgxLjRjMHAtMworICB9LAorICB7IC8vIEVudHJ5IDEwMTcKKyAgICAweDEuZjk0OTg0YjI1NTJlMTk0MWVjNzY2YzZhODJlY2U0YTNwLTEsCisgICAgLTB4MS40YzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE4CisgICAgMHgxLmY5NDk4NGIyNTUyZTE4OWNhNjU4YzUxYzQyZTkwN2NlcC0xLAorICAgIDB4MS40YzAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTAxOQorICAgIDB4MS5mOTQ5ODRiMjU1MmUxODljYTY1OGM1MWM0MmU5MDdjZXAtMSwKKyAgICAtMHgxLjRjMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIwCisgICAgMHgxLmU5MjFkZDQyZjA5YmE4Njg2MDNlYTM3NmY2ZTJkMDEycC0xLAorICAgIDB4MS4zMzMzMzMzMzMzMzMycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTAyMQorICAgIDB4MS5lOTIxZGQ0MmYwOWJhODY4NjAzZWEzNzZmNmUyZDAxMnAtMSwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIyCisgICAgMHgxLmU5MjFkZDQyZjA5YmE2MGIyNjhiZWMxZmIwODc4YTQycC0xLAorICAgIDB4MS4zMzMzMzMzMzMzMzMzcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTAyMworICAgIDB4MS5lOTIxZGQ0MmYwOWJhNjBiMjY4YmVjMWZiMDg3OGE0MnAtMSwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI0CisgICAgMHgxLmU5MjFkZDQyZjA5YmEzYWRlY2Q5MzRjODZhMGRiMjU0cC0xLAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTAyNQorICAgIDB4MS5lOTIxZGQ0MmYwOWJhM2FkZWNkOTM0Yzg2YTBkYjI1NHAtMSwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI2CisgICAgMHgxLjhmZWVkYjg2YmYwZWYzMTU4ZjhhMWRjYmVmNDlkMTIzcC0xLAorICAgIDB4MS41OTQzMTdhY2M0ZWY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAyNworICAgIDB4MS44ZmVlZGI4NmJmMGVmMzE1OGY4YTFkY2JlZjQ5ZDEyM3AtMSwKKyAgICAtMHgxLjU5NDMxN2FjYzRlZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI4CisgICAgMHgxLjhmZWVkYjg2YmYwZWU5MTgxN2E2NGIyOGI3OWU1MTE5cC0xLAorICAgIDB4MS41OTQzMTdhY2M0ZWY5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAyOQorICAgIDB4MS44ZmVlZGI4NmJmMGVlOTE4MTdhNjRiMjhiNzllNTExOXAtMSwKKyAgICAtMHgxLjU5NDMxN2FjYzRlZjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMwCisgICAgMHgxLjhmZWVkYjg2YmYwZWRmMWE5ZmMyNzg4NTdmOGVkNTU5cC0xLAorICAgIDB4MS41OTQzMTdhY2M0ZWZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAzMQorICAgIDB4MS44ZmVlZGI4NmJmMGVkZjFhOWZjMjc4ODU3ZjhlZDU1OXAtMSwKKyAgICAtMHgxLjU5NDMxN2FjYzRlZmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMyCisgICAgMHgxLjZiODk4ZmE5ZWZiNWRkNmY5ZTE3ZTM0NDJkNTliMjQxcC0xLAorICAgIDB4MS44ZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAzMworICAgIDB4MS42Yjg5OGZhOWVmYjVkZDZmOWUxN2UzNDQyZDU5YjI0MXAtMSwKKyAgICAtMHgxLjhmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM0CisgICAgMHgxLjZiODk4ZmE5ZWZiNWQyMmI1OGYwZDk5ZTk2MzQ5MzFhcC0xLAorICAgIDB4MS45cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAzNQorICAgIDB4MS42Yjg5OGZhOWVmYjVkMjJiNThmMGQ5OWU5NjM0OTMxYXAtMSwKKyAgICAtMHgxLjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM2CisgICAgMHgxLjZiODk4ZmE5ZWZiNWM2ZTcxM2M5Y2ZmOGZlYjQ5MThmcC0xLAorICAgIDB4MS45MDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAzNworICAgIDB4MS42Yjg5OGZhOWVmYjVjNmU3MTNjOWNmZjhmZWI0OTE4ZnAtMSwKKyAgICAtMHgxLjkwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwMzkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQwCisgICAgMHgxLnAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTA0MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQzCisgICAgMHgxLmZmNjIxZTM3OTZkN2RlNGE4YWI3ZDdjZDg0ODhmNDk5cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA0NAorICAgIDB4MS5mZjYyMWUzNzk2ZDdkZTRhOGFiN2Q3Y2Q4NDg4ZjQ5OXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ1CisgICAgMHgxLmZmNjIxZTM3OTZkN2RlM2RmYjA0ZGY0Njk4N2Y2NDUwcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA0NgorICAgIDB4MS5mZjYyMWUzNzk2ZDdkZTNkZmIwNGRmNDY5ODdmNjQ1MHAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ3CisgICAgMHgxLmZmNjIxZTM3OTZkN2RlMzE2YjUxZTZiZmFjNzU1NDJmcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA0OAorICAgIDB4MS5mZjYyMWUzNzk2ZDdkZTMxNmI1MWU2YmZhYzc1NTQyZnAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ5CisgICAgMHgxLmZkODhkYTNkMTI1MjVhMjA4ODk4Y2Y1OGRlZDBlZWIzcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA1MAorICAgIDB4MS5mZDg4ZGEzZDEyNTI1YTIwODg5OGNmNThkZWQwZWViM3AtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUxCisgICAgMHgxLmZkODhkYTNkMTI1MjU5ZWU1OTRiNTcwNTc2N2FiNjQ5cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA1MgorICAgIDB4MS5mZDg4ZGEzZDEyNTI1OWVlNTk0YjU3MDU3NjdhYjY0OXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUzCisgICAgMHgxLmZkODhkYTNkMTI1MjU5YmMyOWZkZGViMjBlMjI4MDU2cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA1NAorICAgIDB4MS5mZDg4ZGEzZDEyNTI1OWJjMjlmZGRlYjIwZTIyODA1NnAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU1CisgICAgMHgxLmY2Mjk3Y2ZmNzVjYjAzYWIxZmNlZDYzMzdlMzVhMjQ1cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA1NgorICAgIDB4MS5mNjI5N2NmZjc1Y2IwM2FiMWZjZWQ2MzM3ZTM1YTI0NXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU3CisgICAgMHgxLmY2Mjk3Y2ZmNzVjYjAyZTM1YTBjZjJlNjRkZTYwNjI2cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA1OAorICAgIDB4MS5mNjI5N2NmZjc1Y2IwMmUzNWEwY2YyZTY0ZGU2MDYyNnAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU5CisgICAgMHgxLmY2Mjk3Y2ZmNzVjYjAyMWI5NDRiMGY5OTFkOGU5MTYxcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MAorICAgIDB4MS5mNjI5N2NmZjc1Y2IwMjFiOTQ0YjBmOTkxZDhlOTE2MXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYxCisgICAgMHgxLmQ5MDZiY2YzMjhkNDY2NzJkOWMxYTg2NTg5OGU1OTY2cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MgorICAgIDB4MS5kOTA2YmNmMzI4ZDQ2NjcyZDljMWE4NjU4OThlNTk2NnAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYzCisgICAgMHgxLmQ5MDZiY2YzMjhkNDYzNjMxZDZjZDI5MDVkNGIxM2Y1cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTA2NAorICAgIDB4MS5kOTA2YmNmMzI4ZDQ2MzYzMWQ2Y2QyOTA1ZDRiMTNmNXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY1CisgICAgMHgxLmQ5MDZiY2YzMjhkNDYwNTM2MTE3ZmNiYjMwZWEzZTE3cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTA2NgorICAgIDB4MS5kOTA2YmNmMzI4ZDQ2MDUzNjExN2ZjYmIzMGVhM2UxN3AtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY3CisgICAgMHgxLjZhMDllNjY3ZjNiY2Q3NzdiNjQ2MTM3NmFiNTIzMjQycC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA2OAorICAgIDB4MS42YTA5ZTY2N2YzYmNkNzc3YjY0NjEzNzZhYjUyMzI0MnAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY5CisgICAgMHgxLjZhMDllNjY3ZjNiY2NjMjc2NzEyZDNkOGM1NTAyMzg3cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA3MAorICAgIDB4MS42YTA5ZTY2N2YzYmNjYzI3NjcxMmQzZDhjNTUwMjM4N3AtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcxCisgICAgMHgxLjZhMDllNjY3ZjNiY2MwZDcxN2RmOTQzYWRlZjM5MjUzcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA3MgorICAgIDB4MS42YTA5ZTY2N2YzYmNjMGQ3MTdkZjk0M2FkZWYzOTI1M3AtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDczCisgICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWMwYjhiNTBicC01MiwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTA3NAorICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDljMGI4YjUwYnAtNTIsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc1CisgICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0NDE5ZmE4cC01NCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA3NgorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwNDQxOWZhOHAtNTQsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc3CisgICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3ZGJjZmJhMHAtNTMsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNzgKKyAgICAtMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzdkYmNmYmEwcC01MywKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNzkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5N2Q1YmZmcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTdkNWJmZnAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwMQorICB9LAorICB7IC8vIEVudHJ5IDEwODEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDEwODMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGU2ZTU4Y3AtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMQorICB9LAorICB7IC8vIEVudHJ5IDEwODUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTVmNTZmZmVwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwMgorICB9LAorICB7IC8vIEVudHJ5IDEwODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTVmNTZmZmVwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzE3cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzE3cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTA4OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzliOTYzMXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTA5MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzliOTYzMXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMgorICB9LAorICB7IC8vIEVudHJ5IDEwOTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTdkNWJmZjhwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwMworICB9LAorICB7IC8vIEVudHJ5IDEwOTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTdkNWJmZjhwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiMjIwYzVlcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDk0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiMjIwYzVlcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA5NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjNHAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA5NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjNHAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMworICB9LAorICB7IC8vIEVudHJ5IDEwOTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNWY1NmZmZTFwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwNAorICB9LAorICB7IC8vIEVudHJ5IDEwOTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNWY1NmZmZTFwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDk5CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMTdhcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMTdhcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEwMQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3OWI5NjMxM3AtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEwMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3OWI5NjMxM3AtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNAorICB9LAorICB7IC8vIEVudHJ5IDExMDMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5N2Q1YmZmODdwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwNQorICB9LAorICB7IC8vIEVudHJ5IDExMDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5N2Q1YmZmODdwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTA1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNWU5cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTA2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNWU5cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA1CisgIH0sCisgIHsgLy8gRW50cnkgMTEwNworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRlNmU1OGM0Y3AtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOXA1CisgIH0sCisgIHsgLy8gRW50cnkgMTEwOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRlNmU1OGM0Y3AtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNQorICB9LAorICB7IC8vIEVudHJ5IDExMDkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZlMWRwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwNgorICB9LAorICB7IC8vIEVudHJ5IDExMTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZlMWRwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTExCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWM4ODMxN2E3cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWM4ODMxN2E3cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTExMworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5Yjk2MzEzMXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTExNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5Yjk2MzEzMXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNgorICB9LAorICB7IC8vIEVudHJ5IDExMTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjk3ZDViZmY4NzRwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwNworICB9LAorICB7IC8vIEVudHJ5IDExMTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjk3ZDViZmY4NzRwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTE3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1ZTlkcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTE4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1ZTlkcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA3CisgIH0sCisgIHsgLy8gRW50cnkgMTExOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGU2ZTU4YzRjNnAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOXA3CisgIH0sCisgIHsgLy8gRW50cnkgMTEyMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGU2ZTU4YzRjNnAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNworICB9LAorICB7IC8vIEVudHJ5IDExMjEKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzkyNmI1OWU2ZDM5OWJkMWI5MDZjcC0xLAorICAgIDB4MS4yZDk3YzdmMzMyMWQxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIyCisgICAgLTB4MS42YTA5ZTY2N2YzYmM5MjZiNTllNmQzOTliZDFiOTA2Y3AtMSwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDFwMQorICB9LAorICB7IC8vIEVudHJ5IDExMjMKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2JmYWM5NmIzZDIxMTVhM2MzZTIxcC0xLAorICAgIDB4MS4yZDk3YzdmMzMyMWQycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI0CisgICAgLTB4MS42YTA5ZTY2N2YzYmNiZmFjOTZiM2QyMTE1YTNjM2UyMXAtMSwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDJwMQorICB9LAorICB7IC8vIEVudHJ5IDExMjUKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2VjZWRkMzgwZDA4OGYxYjRjNDNjcC0xLAorICAgIDB4MS4yZDk3YzdmMzMyMWQzcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI2CisgICAgLTB4MS42YTA5ZTY2N2YzYmNlY2VkZDM4MGQwODhmMWI0YzQzY3AtMSwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDNwMQorICB9LAorICB7IC8vIEVudHJ5IDExMjcKKyAgICAtMHgxLjZhMDllNjY3ZjNiZDA1ZTM3NDNlZDQxN2M0NGZiYTQ2cC0xLAorICAgIDB4MS5mNmE3YTI5NTUzODVkcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI4CisgICAgLTB4MS42YTA5ZTY2N2YzYmQwNWUzNzQzZWQ0MTdjNDRmYmE0NnAtMSwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWRwMQorICB9LAorICB7IC8vIEVudHJ5IDExMjkKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2Q4YTIzNzcxZDVhMDJmZjVlODQzcC0xLAorICAgIDB4MS5mNmE3YTI5NTUzODVlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMwCisgICAgLTB4MS42YTA5ZTY2N2YzYmNkOGEyMzc3MWQ1YTAyZmY1ZTg0M3AtMSwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWVwMQorICB9LAorICB7IC8vIEVudHJ5IDExMzEKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2FiNjBmYWE0ZDcyODk1ZjNlZWE1cC0xLAorICAgIDB4MS5mNmE3YTI5NTUzODVmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMyCisgICAgLTB4MS42YTA5ZTY2N2YzYmNhYjYwZmFhNGQ3Mjg5NWYzZWVhNXAtMSwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWZwMQorICB9LAorICB7IC8vIEVudHJ5IDExMzMKKyAgICAtMHgxLjM0ZjI3Mjk5M2QxNDE0YTJiMzliZDgzNzRjMWQxNjMxcC01MCwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTEzNAorICAgIC0weDEuMzRmMjcyOTkzZDE0MTRhMmIzOWJkODM3NGMxZDE2MzFwLTUwLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTEzNQorICAgIC0weDEuYTc5Mzk0YzllOGEwYTUxNTljZGVjMWJhODYzNzdjOTJwLTUzLAorICAgIDB4MS4yZDk3YzdmMzMyMWQycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTM2CisgICAgLTB4MS5hNzkzOTRjOWU4YTBhNTE1OWNkZWMxYmE4NjM3N2M5MnAtNTMsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTM3CisgICAgMHgxLjk2MWIxYWNkODVkN2Q2YmE5OGM4NGY5MTViYmNiYzZjcC01MSwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkM3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTEzOAorICAgIDB4MS45NjFiMWFjZDg1ZDdkNmJhOThjODRmOTE1YmJjYmM2Y3AtNTEsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQzcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTM5CisgICAgMHgxLjZhMDllNjY3ZjNiYzU4YWY0Y2JhZDM1YWFiYjIwMGY0cC0xLAorICAgIDB4MS41ZmRiYmU5YmJhNzc0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQwCisgICAgMHgxLjZhMDllNjY3ZjNiYzU4YWY0Y2JhZDM1YWFiYjIwMGY0cC0xLAorICAgIC0weDEuNWZkYmJlOWJiYTc3NHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE0MQorICAgIDB4MS42YTA5ZTY2N2YzYmNiMzMxYzY1NGQwNDllZWJhMzgwZnAtMSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE0MgorICAgIDB4MS42YTA5ZTY2N2YzYmNiMzMxYzY1NGQwNDllZWJhMzgwZnAtMSwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzVwMgorICB9LAorICB7IC8vIEVudHJ5IDExNDMKKyAgICAweDEuNmEwOWU2NjdmM2JkMGRiNDNmZWVjZDM5MWIyMWQwYzRwLTEsCisgICAgMHgxLjVmZGJiZTliYmE3NzZwMgorICB9LAorICB7IC8vIEVudHJ5IDExNDQKKyAgICAweDEuNmEwOWU2NjdmM2JkMGRiNDNmZWVjZDM5MWIyMWQwYzRwLTEsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ1CisgICAgMHgxLjZhMDllNjY3ZjNiZDNmOWY4MTZhZDQ1NmJhMWE1NGE5cC0xLAorICAgIDB4MS5jNDYzYWJlY2NiMmJhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ2CisgICAgMHgxLjZhMDllNjY3ZjNiZDNmOWY4MTZhZDQ1NmJhMWE1NGE5cC0xLAorICAgIC0weDEuYzQ2M2FiZWNjYjJiYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE0NworICAgIDB4MS42YTA5ZTY2N2YzYmNlNTFkMDdkMGQ3Njc5YTJkOGM1M3AtMSwKKyAgICAweDEuYzQ2M2FiZWNjYjJiYnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE0OAorICAgIDB4MS42YTA5ZTY2N2YzYmNlNTFkMDdkMGQ3Njc5YTJkOGM1M3AtMSwKKyAgICAtMHgxLmM0NjNhYmVjY2IyYmJwMgorICB9LAorICB7IC8vIEVudHJ5IDExNDkKKyAgICAweDEuNmEwOWU2NjdmM2JjOGE5YThlMzZkYTc4NjNhMDI1OTdwLTEsCisgICAgMHgxLmM0NjNhYmVjY2IyYmNwMgorICB9LAorICB7IC8vIEVudHJ5IDExNTAKKyAgICAweDEuNmEwOWU2NjdmM2JjOGE5YThlMzZkYTc4NjNhMDI1OTdwLTEsCisgICAgLTB4MS5jNDYzYWJlY2NiMmJjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUxCisgICAgMHgxLjU4M2ViZWZmNjVjYzIyNjQ4MGFlNjg1YzJhZDlhZmRhcC01MCwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE1MgorICAgIDB4MS41ODNlYmVmZjY1Y2MyMjY0ODBhZTY4NWMyYWQ5YWZkYXAtNTAsCisgICAgLTB4MS5mNmE3YTI5NTUzODVkcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUzCisgICAgMHgxLjYwZmFmYmZkOTczMDg5OTIwMmI5YTE3MGM0ZTZhODQ5cC01MiwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE1NAorICAgIDB4MS42MGZhZmJmZDk3MzA4OTkyMDJiOWExNzBjNGU2YTg0OXAtNTIsCisgICAgLTB4MS5mNmE3YTI5NTUzODVlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTU1CisgICAgLTB4MS40ZjgyODIwMTM0NjdiYjM2ZmVhMzJmNDc5YmQ0OGY0YXAtNTEsCisgICAgMHgxLmY2YTdhMjk1NTM4NWZwMgorICB9LAorICB7IC8vIEVudHJ5IDExNTYKKyAgICAtMHgxLjRmODI4MjAxMzQ2N2JiMzZmZWEzMmY0NzliZDQ4ZjRhcC01MSwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWZwMgorICB9LAorICB7IC8vIEVudHJ5IDExNTcKKyAgICAtMHgxLjZhMDllNjY3ZjNiYjk3MmY4OTI3ZDdiNDZjNzM3NDg1cC0xLAorICAgIDB4MS4xNDc1Y2M5ZWVkZWZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTU4CisgICAgLTB4MS42YTA5ZTY2N2YzYmI5NzJmODkyN2Q3YjQ2YzczNzQ4NXAtMSwKKyAgICAtMHgxLjE0NzVjYzllZWRlZmZwMworICB9LAorICB7IC8vIEVudHJ5IDExNTkKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzRjMzQ3YzViZDE5MzNjYTMyNjFmcC0xLAorICAgIDB4MS4xNDc1Y2M5ZWVkZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE2MAorICAgIC0weDEuNmEwOWU2NjdmM2JjNGMzNDdjNWJkMTkzM2NhMzI2MWZwLTEsCisgICAgLTB4MS4xNDc1Y2M5ZWVkZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE2MQorICAgIC0weDEuNmEwOWU2NjdmM2JkMDEzOTZmOGZjYjcxYjI1MDVlMWZwLTEsCisgICAgMHgxLjE0NzVjYzllZWRmMDFwMworICB9LAorICB7IC8vIEVudHJ5IDExNjIKKyAgICAtMHgxLjZhMDllNjY3ZjNiZDAxMzk2ZjhmY2I3MWIyNTA1ZTFmcC0xLAorICAgIC0weDEuMTQ3NWNjOWVlZGYwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE2MworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYTJjOWVkYThwLTEsCisgICAgMHgxLjJkOTdjN2YzMzIxZDFwMworICB9LAorICB7IC8vIEVudHJ5IDExNjQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmEyYzllZGE4cC0xLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE2NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQ0MzI2ZjVwLTEsCisgICAgMHgxLjJkOTdjN2YzMzIxZDJwMworICB9LAorICB7IC8vIEVudHJ5IDExNjYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkNDMyNmY1cC0xLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE2NworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDdiYzYwNDFwLTEsCisgICAgMHgxLjJkOTdjN2YzMzIxZDNwMworICB9LAorICB7IC8vIEVudHJ5IDExNjgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQ3YmM2MDQxcC0xLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkM3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTE2OQorICAgIC0weDEuNmEwOWU2NjdmM2JlMDExZjQ0ZmRjZmZjMTY3ZjcxNDBwLTEsCisgICAgMHgxLjQ2YjljMzQ3NzY0YTJwMworICB9LAorICB7IC8vIEVudHJ5IDExNzAKKyAgICAtMHgxLjZhMDllNjY3ZjNiZTAxMWY0NGZkY2ZmYzE2N2Y3MTQwcC0xLAorICAgIC0weDEuNDZiOWMzNDc3NjRhMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE3MQorICAgIC0weDEuNmEwOWU2NjdmM2JkNGMxYTUxYzlkNjFlMjBjNTIzZjdwLTEsCisgICAgMHgxLjQ2YjljMzQ3NzY0YTNwMworICB9LAorICB7IC8vIEVudHJ5IDExNzIKKyAgICAtMHgxLjZhMDllNjY3ZjNiZDRjMWE1MWM5ZDYxZTIwYzUyM2Y3cC0xLAorICAgIC0weDEuNDZiOWMzNDc3NjRhM3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTE3MworICAgIC0weDEuNmEwOWU2NjdmM2JjOTcxNTVlOTVkYzNmZDA4ODVkMTRwLTEsCisgICAgMHgxLjQ2YjljMzQ3NzY0YTRwMworICB9LAorICB7IC8vIEVudHJ5IDExNzQKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzk3MTU1ZTk1ZGMzZmQwODg1ZDE0cC0xLAorICAgIC0weDEuNDZiOWMzNDc3NjRhNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE3NQorICAgIC0weDEuM2RjNTg1YjJjNzQyMTgxMzI2ZTA3YzQwNzQ4ODczYmJwLTQ5LAorICAgIDB4MS41ZmRiYmU5YmJhNzc0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTc2CisgICAgLTB4MS4zZGM1ODViMmM3NDIxODEzMjZlMDdjNDA3NDg4NzNiYnAtNDksCisgICAgLTB4MS41ZmRiYmU5YmJhNzc0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTc3CisgICAgLTB4MS5lZTJjMmQ5NjNhMTBjMDk5MzcwM2UyMDQ0NjQ2MzMwMXAtNTIsCisgICAgMHgxLjVmZGJiZTliYmE3NzVwMworICB9LAorICB7IC8vIEVudHJ5IDExNzgKKyAgICAtMHgxLmVlMmMyZDk2M2ExMGMwOTkzNzAzZTIwNDQ2NDYzMzAxcC01MiwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzVwMworICB9LAorICB7IC8vIEVudHJ5IDExNzkKKyAgICAweDEuODQ3NGY0OWE3MTdiY2ZkOWIyM2YwNzdlZTRkMDkwY2ZwLTUwLAorICAgIDB4MS41ZmRiYmU5YmJhNzc2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgwCisgICAgMHgxLjg0NzRmNDlhNzE3YmNmZDliMjNmMDc3ZWU0ZDA5MGNmcC01MCwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzZwMworICB9LAorICB7IC8vIEVudHJ5IDExODEKKyAgICAweDEuNmEwOWU2NjdmM2JiOGFiNGI4YzhkNWVjZjZiOTEwZDZwLTEsCisgICAgMHgxLjc4ZmRiOWVmZmVhNDVwMworICB9LAorICB7IC8vIEVudHJ5IDExODIKKyAgICAweDEuNmEwOWU2NjdmM2JiOGFiNGI4YzhkNWVjZjZiOTEwZDZwLTEsCisgICAgLTB4MS43OGZkYjllZmZlYTQ1cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgzCisgICAgMHgxLjZhMDllNjY3ZjNiYzNmYjlhYmZjY2ZjYmNkMjYyYWEwcC0xLAorICAgIDB4MS43OGZkYjllZmZlYTQ2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg0CisgICAgMHgxLjZhMDllNjY3ZjNiYzNmYjlhYmZjY2ZjYmNkMjYyYWEwcC0xLAorICAgIC0weDEuNzhmZGI5ZWZmZWE0NnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE4NQorICAgIDB4MS42YTA5ZTY2N2YzYmNmNGJlOWYzMGM5YWE0OTEwY2FjZnAtMSwKKyAgICAweDEuNzhmZGI5ZWZmZWE0N3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTE4NgorICAgIDB4MS42YTA5ZTY2N2YzYmNmNGJlOWYzMGM5YWE0OTEwY2FjZnAtMSwKKyAgICAtMHgxLjc4ZmRiOWVmZmVhNDdwMworICB9LAorICB7IC8vIEVudHJ5IDExODcKKyAgICAweDEuNmEwOWU2NjdmM2JlMGQ5YTE1NWNkMWMzNzY3ZWI3YjNwLTEsCisgICAgMHgxLmFiNDFiMDk4ODZmZThwMworICB9LAorICB7IC8vIEVudHJ5IDExODgKKyAgICAweDEuNmEwOWU2NjdmM2JlMGQ5YTE1NWNkMWMzNzY3ZWI3YjNwLTEsCisgICAgLTB4MS5hYjQxYjA5ODg2ZmU4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg5CisgICAgMHgxLjZhMDllNjY3ZjNiZDU4OTUyMjI4ZDdlNTg3MDFkMjk5cC0xLAorICAgIDB4MS5hYjQxYjA5ODg2ZmU5cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkwCisgICAgMHgxLjZhMDllNjY3ZjNiZDU4OTUyMjI4ZDdlNTg3MDFkMjk5cC0xLAorICAgIC0weDEuYWI0MWIwOTg4NmZlOXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE5MQorICAgIDB4MS42YTA5ZTY2N2YzYmNhMzkwMmVmNGRlMDczZDAyNzNlNnAtMSwKKyAgICAweDEuYWI0MWIwOTg4NmZlYXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE5MgorICAgIDB4MS42YTA5ZTY2N2YzYmNhMzkwMmVmNGRlMDczZDAyNzNlNnAtMSwKKyAgICAtMHgxLmFiNDFiMDk4ODZmZWFwMworICB9LAorICB7IC8vIEVudHJ5IDExOTMKKyAgICAweDEuNGY2YmFiZTVkYjllMWVmNDBkNjljNDUyZTEzNTU5MWRwLTQ5LAorICAgIDB4MS5jNDYzYWJlY2NiMmJhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk0CisgICAgMHgxLjRmNmJhYmU1ZGI5ZTFlZjQwZDY5YzQ1MmUxMzU1OTFkcC00OSwKKyAgICAtMHgxLmM0NjNhYmVjY2IyYmFwMworICB9LAorICB7IC8vIEVudHJ5IDExOTUKKyAgICAweDEuM2RhZWFmOTc2ZTc4N2JkMDM1YTcxMTRiZTM4N2I1YzNwLTUxLAorICAgIDB4MS5jNDYzYWJlY2NiMmJicDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk2CisgICAgMHgxLjNkYWVhZjk3NmU3ODdiZDAzNWE3MTE0YmUzODdiNWMzcC01MSwKKyAgICAtMHgxLmM0NjNhYmVjY2IyYmJwMworICB9LAorICB7IC8vIEVudHJ5IDExOTcKKyAgICAtMHgxLjYxMjhhODM0NDhjM2MyMTdlNTJjNzc1YTA2OThkMjZhcC01MCwKKyAgICAweDEuYzQ2M2FiZWNjYjJiY3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTE5OAorICAgIC0weDEuNjEyOGE4MzQ0OGMzYzIxN2U1MmM3NzVhMDY5OGQyNmFwLTUwLAorICAgIC0weDEuYzQ2M2FiZWNjYjJiY3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTE5OQorICAgIC0weDEuNmEwOWU2NjdmM2JiN2UzOWU4NjlkNDI1ODA5MDhjN2NwLTEsCisgICAgMHgxLmRkODVhNzQxMGY1OGJwMworICB9LAorICB7IC8vIEVudHJ5IDEyMDAKKyAgICAtMHgxLjZhMDllNjY3ZjNiYjdlMzllODY5ZDQyNTgwOTA4YzdjcC0xLAorICAgIC0weDEuZGQ4NWE3NDEwZjU4YnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIwMQorICAgIC0weDEuNmEwOWU2NjdmM2JjMzMzZWRiOWRjZTA0NWQzYjBlNzVwLTEsCisgICAgMHgxLmRkODVhNzQxMGY1OGNwMworICB9LAorICB7IC8vIEVudHJ5IDEyMDIKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzMzM2VkYjlkY2UwNDVkM2IwZTc1cC0xLAorICAgIC0weDEuZGQ4NWE3NDEwZjU4Y3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTIwMworICAgIC0weDEuNmEwOWU2NjdmM2JjZTg0M2NlZDFjN2UyZGY2MzE2ZDRwLTEsCisgICAgMHgxLmRkODVhNzQxMGY1OGRwMworICB9LAorICB7IC8vIEVudHJ5IDEyMDQKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2U4NDNjZWQxYzdlMmRmNjMxNmQ0cC0xLAorICAgIC0weDEuZGQ4NWE3NDEwZjU4ZHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIwNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOGM0NWQzZDRwLTEsCisgICAgMHgxLmY2YTdhMjk1NTM4NWRwMworICB9LAorICB7IC8vIEVudHJ5IDEyMDYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhjNDVkM2Q0cC0xLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIwNworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjg2NTMzNTNwLTEsCisgICAgMHgxLmY2YTdhMjk1NTM4NWVwMworICB9LAorICB7IC8vIEVudHJ5IDEyMDgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4NjUzMzUzcC0xLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIwOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTQ4NDkyZDNwLTEsCisgICAgMHgxLmY2YTdhMjk1NTM4NWZwMworICB9LAorICB7IC8vIEVudHJ5IDEyMTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU0ODQ5MmQzcC0xLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIxMQorICAgIC0weDEuNmEwOWU2NjdmM2JmODQxZWNjMjNjNzQ1OTkwNzZhODFwLTEsCisgICAgMHgxLjA3ZTRjZWY0Y2JkOTZwNAorICB9LAorICB7IC8vIEVudHJ5IDEyMTIKKyAgICAtMHgxLjZhMDllNjY3ZjNiZjg0MWVjYzIzYzc0NTk5MDc2YTgxcC0xLAorICAgIC0weDEuMDdlNGNlZjRjYmQ5NnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTIxMworICAgIC0weDEuNmEwOWU2NjdmM2JlMWExNGU1YmJkMzhhZDYwZmRkN2JwLTEsCisgICAgMHgxLjA3ZTRjZWY0Y2JkOTdwNAorICB9LAorICB7IC8vIEVudHJ5IDEyMTQKKyAgICAtMHgxLjZhMDllNjY3ZjNiZTFhMTRlNWJiZDM4YWQ2MGZkZDdicC0xLAorICAgIC0weDEuMDdlNGNlZjRjYmQ5N3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTIxNQorICAgIC0weDEuNmEwOWU2NjdmM2JjYjAwYWZmNTNkZmNlYTkwZTZhMGNwLTEsCisgICAgMHgxLjA3ZTRjZWY0Y2JkOThwNAorICB9LAorICB7IC8vIEVudHJ5IDEyMTYKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2IwMGFmZjUzZGZjZWE5MGU2YTBjcC0xLAorICAgIC0weDEuMDdlNGNlZjRjYmQ5OHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTIxNworICAgIC0weDEuYjA4OGU5MGM3N2ZkMTJlYTc5Zjk4NjMxZTZmMGI3NGJwLTQ4LAorICAgIDB4MS4xNDc1Y2M5ZWVkZWZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjE4CisgICAgLTB4MS5iMDg4ZTkwYzc3ZmQxMmVhNzlmOTg2MzFlNmYwYjc0YnAtNDgsCisgICAgLTB4MS4xNDc1Y2M5ZWVkZWZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjE5CisgICAgLTB4MS42MTExZDIxOGVmZmEyNWQ0ZjNmMzBjNjU0ZDdjMzZhMXAtNDksCisgICAgMHgxLjE0NzVjYzllZWRmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIwCisgICAgLTB4MS42MTExZDIxOGVmZmEyNWQ0ZjNmMzBjNjU0ZDdjMzZhMXAtNDksCisgICAgLTB4MS4xNDc1Y2M5ZWVkZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTIyMQorICAgIDB4MS4zZGRjNWJjZTIwMGJiNDU2MTgxOWU3MzUyN2Y1YTZkN3AtNTAsCisgICAgMHgxLjE0NzVjYzllZWRmMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDEyMjIKKyAgICAweDEuM2RkYzViY2UyMDBiYjQ1NjE4MTllNzM1MjdmNWE2ZDdwLTUwLAorICAgIC0weDEuMTQ3NWNjOWVlZGYwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTIyMworICAgIDB4MS42YTA5ZTY2N2YzYmFiY2JhMjRkNmQ4N2VjYzhmODNiNHAtMSwKKyAgICAweDEuMjEwNmNhNDkxMDA2OHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTIyNAorICAgIDB4MS42YTA5ZTY2N2YzYmFiY2JhMjRkNmQ4N2VjYzhmODNiNHAtMSwKKyAgICAtMHgxLjIxMDZjYTQ5MTAwNjhwNAorICB9LAorICB7IC8vIEVudHJ5IDEyMjUKKyAgICAweDEuNmEwOWU2NjdmM2JjMjZjNDBiM2VjYzNjZWNlMWQxYTBwLTEsCisgICAgMHgxLjIxMDZjYTQ5MTAwNjlwNAorICB9LAorICB7IC8vIEVudHJ5IDEyMjYKKyAgICAweDEuNmEwOWU2NjdmM2JjMjZjNDBiM2VjYzNjZWNlMWQxYTBwLTEsCisgICAgLTB4MS4yMTA2Y2E0OTEwMDY5cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjI3CisgICAgMHgxLjZhMDllNjY3ZjNiZDkwY2RmMWE2YmZmOWEzMmEzOTIzcC0xLAorICAgIDB4MS4yMTA2Y2E0OTEwMDZhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjI4CisgICAgMHgxLjZhMDllNjY3ZjNiZDkwY2RmMWE2YmZmOWEzMmEzOTIzcC0xLAorICAgIC0weDEuMjEwNmNhNDkxMDA2YXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTIyOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU4YjI3YjZhMnAtMSwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTIzMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU4YjI3YjZhMnAtMSwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDFwNAorICB9LAorICB7IC8vIEVudHJ5IDEyMzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjUwYzliZDRwLTEsCisgICAgMHgxLjJkOTdjN2YzMzIxZDJwNAorICB9LAorICB7IC8vIEVudHJ5IDEyMzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjUwYzliZDRwLTEsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjVlZjE4MTA3cC0xLAorICAgIDB4MS4yZDk3YzdmMzMyMWQzcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjM0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjVlZjE4MTA3cC0xLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkM3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTIzNQorICAgIDB4MS42YTA5ZTY2N2YzYmY5MDk5OWM4MmM5MGNlYmFmOWYzZnAtMSwKKyAgICAweDEuM2EyOGM1OWQ1NDMzOXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTIzNgorICAgIDB4MS42YTA5ZTY2N2YzYmY5MDk5OWM4MmM5MGNlYmFmOWYzZnAtMSwKKyAgICAtMHgxLjNhMjhjNTlkNTQzMzlwNAorICB9LAorICB7IC8vIEVudHJ5IDEyMzcKKyAgICAweDEuNmEwOWU2NjdmM2JlMjY4ZmI2MWFkNTUyMzUzMmUyOThwLTEsCisgICAgMHgxLjNhMjhjNTlkNTQzM2FwNAorICB9LAorICB7IC8vIEVudHJ5IDEyMzgKKyAgICAweDEuNmEwOWU2NjdmM2JlMjY4ZmI2MWFkNTUyMzUzMmUyOThwLTEsCisgICAgLTB4MS4zYTI4YzU5ZDU0MzNhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjM5CisgICAgMHgxLjZhMDllNjY3ZjNiY2JjODVjZmIyZTE5NjE0YWMzZjg4cC0xLAorICAgIDB4MS4zYTI4YzU5ZDU0MzNicDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQwCisgICAgMHgxLjZhMDllNjY3ZjNiY2JjODVjZmIyZTE5NjE0YWMzZjg4cC0xLAorICAgIC0weDEuM2EyOGM1OWQ1NDMzYnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI0MQorICAgIDB4MS5iOTViZmMyNjAyMmIxNjVhZWQzZTJhM2IxMjM4MjQ3OXAtNDgsCisgICAgMHgxLjQ2YjljMzQ3NzY0YTJwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNDIKKyAgICAweDEuYjk1YmZjMjYwMjJiMTY1YWVkM2UyYTNiMTIzODI0NzlwLTQ4LAorICAgIC0weDEuNDZiOWMzNDc3NjRhMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI0MworICAgIDB4MS43MmI3Zjg0YzA0NTYyY2I1ZGE3YzU0NzdiOTU3YWRlYnAtNDksCisgICAgMHgxLjQ2YjljMzQ3NzY0YTNwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNDQKKyAgICAweDEuNzJiN2Y4NGMwNDU2MmNiNWRhN2M1NDc3Yjk1N2FkZWJwLTQ5LAorICAgIC0weDEuNDZiOWMzNDc3NjRhM3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTI0NQorICAgIC0weDEuMWE5MDBmNjdmNzUzYTY5NDRiMDc1NzEwNDhmMWNhZDJwLTUwLAorICAgIDB4MS40NmI5YzM0Nzc2NGE0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQ2CisgICAgLTB4MS4xYTkwMGY2N2Y3NTNhNjk0NGIwNzU3MTA0OGYxY2FkMnAtNTAsCisgICAgLTB4MS40NmI5YzM0Nzc2NGE0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQ3CisgICAgLTB4MS42YTA5ZTY2N2YzYmFiMDNmNTQ3N2Q2Yjc0ZjRkNTVkNXAtMSwKKyAgICAweDEuNTM0YWMwZjE5ODYwYnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI0OAorICAgIC0weDEuNmEwOWU2NjdmM2JhYjAzZjU0NzdkNmI3NGY0ZDU1ZDVwLTEsCisgICAgLTB4MS41MzRhYzBmMTk4NjBicDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQ5CisgICAgLTB4MS42YTA5ZTY2N2YzYmMxYTQ5M2FkZmNhNzU3YzFhNzQxZnAtMSwKKyAgICAweDEuNTM0YWMwZjE5ODYwY3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTI1MAorICAgIC0weDEuNmEwOWU2NjdmM2JjMWE0OTNhZGZjYTc1N2MxYTc0MWZwLTEsCisgICAgLTB4MS41MzRhYzBmMTk4NjBjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUxCisgICAgLTB4MS42YTA5ZTY2N2YzYmQ4NDUzMjE0N2JlMzIzZWRkYWMwMXAtMSwKKyAgICAweDEuNTM0YWMwZjE5ODYwZHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI1MgorICAgIC0weDEuNmEwOWU2NjdmM2JkODQ1MzIxNDdiZTMyM2VkZGFjMDFwLTEsCisgICAgLTB4MS41MzRhYzBmMTk4NjBkcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU3NThkM2E3Y3AtMSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI1NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNzU4ZDNhN2NwLTEsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjU1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTE4NDVlMXAtMSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI1NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjExODQ1ZTFwLTEsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc1cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjU3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2Y2EzNTE0N3AtMSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI1OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNmNhMzUxNDdwLTEsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjU5CisgICAgLTB4MS42YTA5ZTY2N2YzYmY5ZDE0NmNlMWNhZDQzZGU5YjM1MnAtMSwKKyAgICAweDEuNmM2Y2JjNDVkYzhkY3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTI2MAorICAgIC0weDEuNmEwOWU2NjdmM2JmOWQxNDZjZTFjYWQ0M2RlOWIzNTJwLTEsCisgICAgLTB4MS42YzZjYmM0NWRjOGRjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYxCisgICAgLTB4MS42YTA5ZTY2N2YzYmUzMzBhODY3OWQ3MTk5M2U3YzcwOXAtMSwKKyAgICAweDEuNmM2Y2JjNDVkYzhkZHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI2MgorICAgIC0weDEuNmEwOWU2NjdmM2JlMzMwYTg2NzlkNzE5OTNlN2M3MDlwLTEsCisgICAgLTB4MS42YzZjYmM0NWRjOGRkcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYzCisgICAgLTB4MS42YTA5ZTY2N2YzYmNjOTAwYTAxMWUzNWQ3ZmRiZjQ1OXAtMSwKKyAgICAweDEuNmM2Y2JjNDVkYzhkZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI2NAorICAgIC0weDEuNmEwOWU2NjdmM2JjYzkwMGEwMTFlMzVkN2ZkYmY0NTlwLTEsCisgICAgLTB4MS42YzZjYmM0NWRjOGRlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjY1CisgICAgLTB4MS5jMjJmMGYzZjhjNTkxOWNiNjA4MmNlNDQzY2Y5NTAyMnAtNDgsCisgICAgMHgxLjc4ZmRiOWVmZmVhNDVwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNjYKKyAgICAtMHgxLmMyMmYwZjNmOGM1OTE5Y2I2MDgyY2U0NDNjZjk1MDIycC00OCwKKyAgICAtMHgxLjc4ZmRiOWVmZmVhNDVwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNjcKKyAgICAtMHgxLjg0NWUxZTdmMThiMjMzOTZjMTA1OWM4YTI0YzI2MDljcC00OSwKKyAgICAweDEuNzhmZGI5ZWZmZWE0NnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI2OAorICAgIC0weDEuODQ1ZTFlN2YxOGIyMzM5NmMxMDU5YzhhMjRjMjYwOWNwLTQ5LAorICAgIC0weDEuNzhmZGI5ZWZmZWE0NnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI2OQorICAgIDB4MS5lZTg3ODYwMzlkMzczMWE0ZmJlOThkZDZkMzJmZjYyYXAtNTEsCisgICAgMHgxLjc4ZmRiOWVmZmVhNDdwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNzAKKyAgICAweDEuZWU4Nzg2MDM5ZDM3MzFhNGZiZTk4ZGQ2ZDMyZmY2MmFwLTUxLAorICAgIC0weDEuNzhmZGI5ZWZmZWE0N3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTI3MQorICAgIDB4MS42YTA5ZTY2N2YzYmFhM2M0ODQxOGQ0ZWZkMTlkMDc0YXAtMSwKKyAgICAweDEuODU4ZWI3OWEyMGJhZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI3MgorICAgIDB4MS42YTA5ZTY2N2YzYmFhM2M0ODQxOGQ0ZWZkMTlkMDc0YXAtMSwKKyAgICAtMHgxLjg1OGViNzlhMjBiYWVwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNzMKKyAgICAweDEuNmEwOWU2NjdmM2JjMGRjZTZhODBjOGFlMGFlNGY1ZjNwLTEsCisgICAgMHgxLjg1OGViNzlhMjBiYWZwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNzQKKyAgICAweDEuNmEwOWU2NjdmM2JjMGRjZTZhODBjOGFlMGFlNGY1ZjNwLTEsCisgICAgLTB4MS44NThlYjc5YTIwYmFmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjc1CisgICAgMHgxLjZhMDllNjY3ZjNiZDc3ZDg1MGU4YmM2YWRhMjJmZTM0cC0xLAorICAgIDB4MS44NThlYjc5YTIwYmIwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjc2CisgICAgMHgxLjZhMDllNjY3ZjNiZDc3ZDg1MGU4YmM2YWRhMjJmZTM0cC0xLAorICAgIC0weDEuODU4ZWI3OWEyMGJiMHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI3NworICAgIC0weDEuMmNjYWY2NDFkNDI2MWVhM2NjZDhkMmExMDJkYzMwNjZwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjc4CisgICAgLTB4MS4yY2NhZjY0MWQ0MjYxZWEzY2NkOGQyYTEwMmRjMzA2NnAtMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjc5CisgICAgMHgxLjgyYWEzNzViM2MzM2U3MDY2MzczMWJhYjRiZWI2ZWQzcC03LAorICAgIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTI4MAorICAgIDB4MS44MmFhMzc1YjNjMzNlNzA2NjM3MzFiYWI0YmViNmVkM3AtNywKKyAgICAtMHgxLjBwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgxCisgICAgMHgxLjRjMDYyMmE2ZTM1ZGRlZmQ1ZjJiNzcwMDcxNmE1ODFmcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTI4MgorICAgIDB4MS40YzA2MjJhNmUzNWRkZWZkNWYyYjc3MDA3MTZhNTgxZnAtMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgzCisgICAgMHgxLjRhYjY1MGI4YzYwNzM0Mzg1Mzc1ZTIyNjAzZmNkYjEwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI2CisgIH0sCisgIHsgLy8gRW50cnkgMTI4NAorICAgIDB4MS40YWI2NTBiOGM2MDczNDM4NTM3NWUyMjYwM2ZjZGIxMHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjg1CisgICAgMHgxLjRhYjY1MTFhN2QzOWFkM2NjODhkZWQxZTc3NWNhMTQ3cC0xLAorICAgIDB4MS4wcDI3CisgIH0sCisgIHsgLy8gRW50cnkgMTI4NgorICAgIDB4MS40YWI2NTExYTdkMzlhZDNjYzg4ZGVkMWU3NzVjYTE0N3AtMSwKKyAgICAtMHgxLjBwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjg3CisgICAgMHgxLjRhYjY1MWRkZWI5ZTYxNDM4MzgyZjAyMTY3YWRlNGFmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI3CisgIH0sCisgIHsgLy8gRW50cnkgMTI4OAorICAgIDB4MS40YWI2NTFkZGViOWU2MTQzODM4MmYwMjE2N2FkZTRhZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjg5CisgICAgMHgxLjQwYWQ2N2U3NzdiMWRmMDE5NTE4OWY1MGE4YzI2MzQ1cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI5MAorICAgIDB4MS40MGFkNjdlNzc3YjFkZjAxOTUxODlmNTBhOGMyNjM0NXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkxCisgICAgMHgxLjQwYWQ2N2YzZjBjOWExNDM5NjNjOWM5NmRiY2UzZjhhcC0xLAorICAgIDB4MS4wcDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTI5MgorICAgIDB4MS40MGFkNjdmM2YwYzlhMTQzOTYzYzljOTZkYmNlM2Y4YXAtMSwKKyAgICAtMHgxLjBwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkzCisgICAgMHgxLjQwYWQ2ODBjZTJmOTI0ZDcxNjc2OWQxMDY0YmM4ZGVmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTI5NAorICAgIDB4MS40MGFkNjgwY2UyZjkyNGQ3MTY3NjlkMTA2NGJjOGRlZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjk1CisgICAgLTB4MS40ZWFhNjA2ZGIyNGMzY2I1ZTE1ZDdiMTlkNWVlNzNhMXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI5NgorICAgIC0weDEuNGVhYTYwNmRiMjRjM2NiNWUxNWQ3YjE5ZDVlZTczYTFwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjk3CisgICAgLTB4MS40ZWFhNjA2ZGIyNGMwYzQ2NmRhMWMyZGM3YmFhMmIzMnAtMSwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTI5OAorICAgIC0weDEuNGVhYTYwNmRiMjRjMGM0NjZkYTFjMmRjN2JhYTJiMzJwLTEsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjk5CisgICAgLTB4MS40ZWFhNjA2ZGIyNGJhYjY3ODYyYTUyNjFiNzcxOWRjZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTMwMAorICAgIC0weDEuNGVhYTYwNmRiMjRiYWI2Nzg2MmE1MjYxYjc3MTlkY2ZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAxCisgICAgLTB4MS5hYTIyNjU3NTM3MjAxMDExNDUyMzA5NTJlNjFjNmYyY3AtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMwMgorICAgIC0weDEuYWEyMjY1NzUzNzIwMTAxMTQ1MjMwOTUyZTYxYzZmMmNwLTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAzCisgICAgLTB4MS5hYTIyNjU3NTM3MjA0YTQzMzJmOGFjYmI3MmIwZDc2OHAtMiwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTMwNAorICAgIC0weDEuYWEyMjY1NzUzNzIwNGE0MzMyZjhhY2JiNzJiMGQ3NjhwLTIsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzA1CisgICAgLTB4MS5hYTIyNjU3NTM3MjBiZWE3MGVhM2YzOGM4NmRiNDBhZnAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTMwNgorICAgIC0weDEuYWEyMjY1NzUzNzIwYmVhNzBlYTNmMzhjODZkYjQwYWZwLTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzA3CisgICAgMHgxLjE0YTI4MGZiNTA2OGM2OWEyZWQ0NWZiNTQ3YzJmMjcxcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMwOAorICAgIDB4MS4xNGEyODBmYjUwNjhjNjlhMmVkNDVmYjU0N2MyZjI3MXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzA5CisgICAgMHgxLjE0YTI4MGZiNTA2OGI5MjM4NDhjZGIyZWQwZTM3YTUzcC0xLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEwCisgICAgMHgxLjE0YTI4MGZiNTA2OGI5MjM4NDhjZGIyZWQwZTM3YTUzcC0xLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMxMQorICAgIDB4MS4xNGEyODBmYjUwNjg5ZTM2MmZmZGQyMjFlMjU1MTAzNXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMxMgorICAgIDB4MS4xNGEyODBmYjUwNjg5ZTM2MmZmZGQyMjFlMjU1MTAzNXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMTMKKyAgICAweDEuYzE1MjgwNjViN2Q0ZmRiMTU4YzljNGE2YjNlNGI3NDBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzE0CisgICAgMHgxLmMxNTI4MDY1YjdkNGZkYjE1OGM5YzRhNmIzZTRiNzQwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDEzMTUKKyAgICAweDEuYzE1MjgwNjViN2Q0ZjlkYjdiYmIzYjQ1ZjVmNWIzMGFwLTEsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzE2CisgICAgMHgxLmMxNTI4MDY1YjdkNGY5ZGI3YmJiM2I0NWY1ZjViMzBhcC0xLAorICAgIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMTcKKyAgICAweDEuYzE1MjgwNjViN2Q0ZjIyZmMxOWUyODg0NzljMzZiMjdwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzE4CisgICAgMHgxLmMxNTI4MDY1YjdkNGYyMmZjMTllMjg4NDc5YzM2YjI3cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMTkKKyAgICAweDEuZjAxNTQ5ZjdkZWVhMTg0YzVmMWQyMTBiNmFkYmU1NmNwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIwCisgICAgMHgxLmYwMTU0OWY3ZGVlYTE4NGM1ZjFkMjEwYjZhZGJlNTZjcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDEzMjEKKyAgICAweDEuZjAxNTQ5ZjdkZWVhMTc0ZjA3YTY3OTcyYmYyOWYxNDhwLTEsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIyCisgICAgMHgxLmYwMTU0OWY3ZGVlYTE3NGYwN2E2Nzk3MmJmMjlmMTQ4cC0xLAorICAgIC0weDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDEzMjMKKyAgICAweDEuZjAxNTQ5ZjdkZWVhMTU1NDU4YjkyYTQxNjdhZWM3ZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzI0CisgICAgMHgxLmYwMTU0OWY3ZGVlYTE1NTQ1OGI5MmE0MTY3YWVjN2ZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEzMjUKKyAgICAweDEuZmMwMTU1MjdkNWJkMzcxYTEyMzIwMjQ5Y2E0ZGFmZDdwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzI2CisgICAgMHgxLmZjMDE1NTI3ZDViZDM3MWExMjMyMDI0OWNhNGRhZmQ3cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDEzMjcKKyAgICAweDEuZmMwMTU1MjdkNWJkMzZkYTNjZDQyNTNiZWRlMzE5Y2FwLTEsCisgICAgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzI4CisgICAgMHgxLmZjMDE1NTI3ZDViZDM2ZGEzY2Q0MjUzYmVkZTMxOWNhcC0xLAorICAgIC0weDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDEzMjkKKyAgICAweDEuZmMwMTU1MjdkNWJkMzY1YTkyMTg2YjIwMzUwN2Y5YWRwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMwCisgICAgMHgxLmZjMDE1NTI3ZDViZDM2NWE5MjE4NmIyMDM1MDdmOWFkcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDEzMzEKKyAgICAweDEuZmYwMDE1NTQ5ZjRkMzRkYTBiNzQ1ZGM3NDMzMTQ1ZWZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMyCisgICAgMHgxLmZmMDAxNTU0OWY0ZDM0ZGEwYjc0NWRjNzQzMzE0NWVmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEzMzMKKyAgICAweDEuZmYwMDE1NTQ5ZjRkMzRjYTBlMWVlNjUwOWJjNDJiNzFwLTEsCisgICAgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzM0CisgICAgMHgxLmZmMDAxNTU0OWY0ZDM0Y2EwZTFlZTY1MDliYzQyYjcxcC0xLAorICAgIC0weDEuMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDEzMzUKKyAgICAweDEuZmYwMDE1NTQ5ZjRkMzRhYTEzNzNmNzYzNGNlODc3MzdwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzM2CisgICAgMHgxLmZmMDAxNTU0OWY0ZDM0YWExMzczZjc2MzRjZTg3NzM3cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDEzMzcKKyAgICAweDEuZmZjMDAxNTU1MjdkMmIxNmFlYjA5ZmI3MDYzNmExMGFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzM4CisgICAgMHgxLmZmYzAwMTU1NTI3ZDJiMTZhZWIwOWZiNzA2MzZhMTBhcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEzMzkKKyAgICAweDEuZmZjMDAxNTU1MjdkMmIxMmFlZGI0OWQ5MjkyOGRmNzJwLTEsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQwCisgICAgMHgxLmZmYzAwMTU1NTI3ZDJiMTJhZWRiNDlkOTI5MjhkZjcycC0xLAorICAgIC0weDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDEzNDEKKyAgICAweDEuZmZjMDAxNTU1MjdkMmIwYWFmMzA5ZTFkNmYwY2ZjNGVwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQyCisgICAgMHgxLmZmYzAwMTU1NTI3ZDJiMGFhZjMwOWUxZDZmMGNmYzRlcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEzNDMKKyAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMzhhMjU2M2VmMzQ0YzNmZjRwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQ0CisgICAgMHgxLmZmZjAwMDE1NTU0OWY0YTM4YTI1NjNlZjM0NGMzZmY0cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDEzNDUKKyAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMjhhMjgwZTk3YmNkNTljOGFwLTEsCisgICAgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQ2CisgICAgMHgxLmZmZjAwMDE1NTU0OWY0YTI4YTI4MGU5N2JjZDU5YzhhcC0xLAorICAgIC0weDEuMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDEzNDcKKyAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMDhhMmQ2M2U4Y2RlODNkYjVwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQ4CisgICAgMHgxLmZmZjAwMDE1NTU0OWY0YTA4YTJkNjNlOGNkZTgzZGI1cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDEzNDkKKyAgICAweDEuZmZmZmZmZjAwMDAwMDAxNTU1NTY1NTQ5ZjQ5YzlmNGRwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgMTM1MAorICAgIDB4MS5mZmZmZmZmMDAwMDAwMDE1NTU1NjU1NDlmNDljOWY0ZHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgMTM1MQorICAgIDB4MS5mZmZmZmZmMDAwMDAwMDE1NTU1NTU1NDlmNDlmNDlmN3AtMSwKKyAgICAweDEuMHAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUyCisgICAgMHgxLmZmZmZmZmYwMDAwMDAwMTU1NTU1NTU0OWY0OWY0OWY3cC0xLAorICAgIC0weDEuMHAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUzCisgICAgMHgxLmZmZmZmZmYwMDAwMDAwMTU1NTUzNTU0OWY0YTQ5ZjRkcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDEzNTQKKyAgICAweDEuZmZmZmZmZjAwMDAwMDAxNTU1NTM1NTQ5ZjRhNDlmNGRwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDEzNTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmMwMDAwMDAwMDAwMDA0MTU1NTVwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMTM1NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmYzAwMDAwMDAwMDAwMDQxNTU1NXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMTM1NworICAgIDB4MS5mZmZmZmZmZmZmZmZmYzAwMDAwMDAwMDAwMDAxNTU1NXAtMSwKKyAgICAweDEuMHAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzU4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZjMDAwMDAwMDAwMDAwMDE1NTU1cC0xLAorICAgIC0weDEuMHAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzU5CisgICAgMHgxLmZmZmZmZmZmZmZmZmZiZmZmZmZmZmZmZmZmODE1NTU1cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yNworICB9LAorICB7IC8vIEVudHJ5IDEzNjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmY4MTU1NTVwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yNworICB9LAorICB7IC8vIEVudHJ5IDEzNjEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMTAwMTVwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMTM2MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAxMDAxNXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMTM2MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwMDAxNXAtMSwKKyAgICAweDEuMHAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzY0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDAwMDE1cC0xLAorICAgIC0weDEuMHAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzY1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmUwMDE1cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDEzNjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZTAwMTVwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDEzNjcKKyAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTM2OAorICAgIC0weDEuZmZmZTYyZWNmYWI3NTNjMDcxYjI2ODBlMWUyNmJiY2VwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNjkKKyAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcwCisgICAgLTB4MS5mZmZlNjJlY2ZhYjc1M2MwNzFiMjY4MGUxZTI2YmJjZXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNzEKKyAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcyCisgICAgLTB4MS5mZmZlNjJlY2ZhYjc1M2MwNzFiMjY4MGUxZTI2YmJjZXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNzMKKyAgICAweDEuN2ZmZGZiNGM1MzA4Zjc3N2NmNzc0YzczM2IyNTY2OTVwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNzQKKyAgICAweDEuN2ZmZGZiNGM1MzA4Zjc3N2NmNzc0YzczM2IyNTY2OTVwLTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzc1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTM3NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiMjIwYzVwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzc3CisgICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0NDE5ZmE4cC01NCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM3OAorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwNDQxOWZhOHAtNTQsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzc5CisgICAgMHgxLjE0YTI4MGZiNTA2ODllMzYyZmZkZDIyMWUyNTUxMDM1cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgwCisgICAgMHgxLjE0YTI4MGZiNTA2ODllMzYyZmZkZDIyMWUyNTUxMDM1cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM4MQorICAgIDB4MS4xNGEyODBmYjUwNjhiOTIzODQ4Y2RiMmVkMGUzN2E1M3AtMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM4MgorICAgIDB4MS4xNGEyODBmYjUwNjhiOTIzODQ4Y2RiMmVkMGUzN2E1M3AtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEzODMKKyAgICAweDEuMTRhMjgwZmI1MDY4YzY5YTJlZDQ1ZmI1NDdjMmYyNzFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzg0CisgICAgMHgxLjE0YTI4MGZiNTA2OGM2OWEyZWQ0NWZiNTQ3YzJmMjcxcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzODUKKyAgICAweDEuNmEwOWU2NjdmM2JjY2MyNzY3MTJkM2Q4YzU1MDIzODdwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzg2CisgICAgMHgxLjZhMDllNjY3ZjNiY2NjMjc2NzEyZDNkOGM1NTAyMzg3cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzODcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzg4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEzODkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEzOTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzOTMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzk0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzOTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzk2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDEzOTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzk4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEzOTkKKyAgICAweDEucDAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQwMAorICAgIDB4MS5wMCwKKyAgICAtMC4wCisgIH0sCit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2Nvc2ZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2Nvc2ZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ2MDYwMjEKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvY29zZl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSw0MzM0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZmxvYXQsIGZsb2F0PiBnX2Nvc2ZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAweDEuYmM3YjY2ZmZiNzY4OWQ2NDZkZDFhZjgzZTk2NjFkMmRwLTEsCisgICAgLTB4MS4wOWViYWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLmJjN2I2NmZmYjc2ODlkNjQ2ZGQxYWY4M2U5NjYxZDJkcC0xLAorICAgIDB4MS4wOWViYWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMHgxLmRlZThkMGZmZmNkOTk3Y2U1Y2ZiYWIwYTVhMzM2YzE0cC01LAorICAgIC0weDEuMTU2NTY0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLmRlZThkMGZmZmNkOTk3Y2U1Y2ZiYWIwYTVhMzM2YzE0cC01LAorICAgIDB4MS4xNTY1NjRwNAorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMHgxLmMxMWJiMmYwNTY1NTJjYTRjZGI2YzVhMGNmNzE1MDlkcC04LAorICAgIC0weDEuNDA2YTQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgLTB4MS5jMTFiYjJmMDU2NTUyY2E0Y2RiNmM1YTBjZjcxNTA5ZHAtOCwKKyAgICAweDEuNDA2YTQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLmZmODM2Y2ZmOTcwNzdiZjQ4OWFhZGM1ZjM0OWE5ZmI5cC0xLAorICAgIC0weDEuNjUzMDc4cC01CisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS5mZjgzNmNmZjk3MDc3YmY0ODlhYWRjNWYzNDlhOWZiOXAtMSwKKyAgICAweDEuNjUzMDc4cC01CisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS5iMjljZDRmOWRhMjk2NGU4YzZiYjU2OTMzODdkM2YzYnAtNSwKKyAgICAtMHgxLjZjMDAwOHA1CisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS5iMjljZDRmOWRhMjk2NGU4YzZiYjU2OTMzODdkM2YzYnAtNSwKKyAgICAweDEuNmMwMDA4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5kZjQwZDNmNjUwZjZjOTQzOTBhM2NhNWQ4ZDliNDhjMXAtMSwKKyAgICAtMHgxLjcwMzgyNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLmRmNDBkM2Y2NTBmNmM5NDM5MGEzY2E1ZDhkOWI0OGMxcC0xLAorICAgIDB4MS43MDM4MjRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5mNzYzMTZmNTQxZTEwZWYxNWQ1N2M1YTIzNzc1MzI5Y3AtMSwKKyAgICAtMHgxLjc4MmUyZXAtMworICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLmY3NjMxNmY1NDFlMTBlZjE1ZDU3YzVhMjM3NzUzMjljcC0xLAorICAgIDB4MS43ODJlMmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS5jZmFiMGVjMmZjOTUzODI5ODZmYTUxMTY0OGJkNGU2ZnAtMjQsCisgICAgLTB4MS44ZTMyNjZwOQorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLmNmYWIwZWMyZmM5NTM4Mjk4NmZhNTExNjQ4YmQ0ZTZmcC0yNCwKKyAgICAweDEuOGUzMjY2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS45MmU2NmI1OTIwYTg1ZDYwODNlOWNjODU1NjhjZWFhM3AtMjEsCisgICAgLTB4MS5jNmFjMDJwMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS45MmU2NmI1OTIwYTg1ZDYwODNlOWNjODU1NjhjZWFhM3AtMjEsCisgICAgMHgxLmM2YWMwMnAxNAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLmQxY2ViNGZmZmY2ZWQwNWI1ZWY1ZmM2MTgyMzEyMTRhcC0yLAorICAgIC0weDEuZTUxM2ZjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS5kMWNlYjRmZmZmNmVkMDViNWVmNWZjNjE4MjMxMjE0YXAtMiwKKyAgICAweDEuZTUxM2ZjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5jMjdlMDQ5ZGZlYWIzOGUxYjhlYTZhMDk2MzE4MjlmZXAtMSwKKyAgICAtMHgxLmZiMTkwNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLmMyN2UwNDlkZmVhYjM4ZTFiOGVhNmEwOTYzMTgyOWZlcC0xLAorICAgIDB4MS5mYjE5MDRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5iNGJmMmM3OWJkZmNkYWE1M2VkNmMwMTNmNjVlMDk2M3AtMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS5iNGJmMmM3OWJkZmNkYWE1M2VkNmMwMTNmNjVlMDk2M3AtMSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLmZmZmZmZjAwMDAwMDE1NTU1NTU0OWY0OWY0YTI4YTI4cC0xLAorICAgIDB4MS5wLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuZmZmZmZmMDAwMDAwMTU1NTU1NTQ5ZjQ5ZjRhMjhhMjhwLTEsCisgICAgLTB4MS5wLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuZmZmZmZmZmZmZmMwMDAwMDAwMDAwMTU1NTU1NTU1NTVwLTEsCisgICAgMHgxLnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5mZmZmZmZmZmZmYzAwMDAwMDAwMDAxNTU1NTU1NTU1NXAtMSwKKyAgICAtMHgxLnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5mZmZmZmZmZmZmZjAwMDAwMDAwMDAwMTU1NTU1NTU1NXAtMSwKKyAgICAweDEucC0yMgorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAxNTU1NTU1NTU1cC0xLAorICAgIC0weDEucC0yMgorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLmZmZmZmZWZmZmZmYzE1NTU1MWZmNDlmNjk2YzRhZWNhcC0xLAorICAgIDB4MS4wMDAwMDJwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuZmZmZmZlZmZmZmZjMTU1NTUxZmY0OWY2OTZjNGFlY2FwLTEsCisgICAgLTB4MS4wMDAwMDJwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEuODgyZDYwNmJhMDc1MDVhN2EwOWFlNzRkNzEzZjk3ODhwLTEsCisgICAgMHgxLjAwMDAwMnA1MQorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLjg4MmQ2MDZiYTA3NTA1YTdhMDlhZTc0ZDcxM2Y5Nzg4cC0xLAorICAgIC0weDEuMDAwMDAycDUxCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuZmMwMTU0ZjdmNWI2NDIyZjc3OTRiZjE1NmVlOThiN2VwLTEsCisgICAgMHgxLjAwMDAwNnAtMworICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLmZjMDE1NGY3ZjViNjQyMmY3Nzk0YmYxNTZlZTk4YjdlcC0xLAorICAgIC0weDEuMDAwMDA2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEuMzRlOTc2ZWY2N2Q2MGEzZGU4MTRhZDNkMDIwM2JhMjFwLTEwLAorICAgIDB4MS4wMDAwMDZwMTIxCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuMzRlOTc2ZWY2N2Q2MGEzZGU4MTRhZDNkMDIwM2JhMjFwLTEwLAorICAgIC0weDEuMDAwMDA2cDEyMQorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgLTB4MS5mZmZmYTJjZjU5Mzk4ZGM2MTgwODAxZTllYTMxMjBjOHAtMSwKKyAgICAweDEuMDAwMDA2cDEyMgorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS5mZmZmYTJjZjU5Mzk4ZGM2MTgwODAxZTllYTMxMjBjOHAtMSwKKyAgICAtMHgxLjAwMDAwNnAxMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS5mZmMwMDE0NDUzMzE1ZDQ3ZTJhMzE4YmY2M2U0Y2FhN3AtMSwKKyAgICAweDEuMDAwMDIycC01CisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuZmZjMDAxNDQ1MzMxNWQ0N2UyYTMxOGJmNjNlNGNhYTdwLTEsCisgICAgLTB4MS4wMDAwMjJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5jMTUyMTUwMTVmM2Q5MTZhMDAxOWEzOWUzYWNjNzM2NHAtMSwKKyAgICAweDEuMDAwMGUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEuYzE1MjE1MDE1ZjNkOTE2YTAwMTlhMzllM2FjYzczNjRwLTEsCisgICAgLTB4MS4wMDAwZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS5mZjAwMTM5NGU5MzA4NWM3Y2NlNTM5MTU4OTNhZjc2NXAtMSwKKyAgICAweDEuMDAwMGUwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuZmYwMDEzOTRlOTMwODVjN2NjZTUzOTE1ODkzYWY3NjVwLTEsCisgICAgLTB4MS4wMDAwZTBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS45MGIwYzk3ZGUyMzcwNTg3YTY4YWVhZTJiNjk0Mzk1M3AtMTUsCisgICAgMHgxLjAwMDMyMnAyMworICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLjkwYjBjOTdkZTIzNzA1ODdhNjhhZWFlMmI2OTQzOTUzcC0xNSwKKyAgICAtMHgxLjAwMDMyMnAyMworICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgLTB4MS44YjkwYzY3Njc3NTY1ODc0ZjQ0ZDkzMTRjYTJiYTYzNHAtNiwKKyAgICAweDEuMDAwNDAycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIC0weDEuOGI5MGM2NzY3NzU2NTg3NGY0NGQ5MzE0Y2EyYmE2MzRwLTYsCisgICAgLTB4MS4wMDA0MDJwOAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjE0NzM1ZmZmZDU1MTIwYTQ0ODBiN2M5MWExZDc4ZDZlcC0xLAorICAgIDB4MS4wMDFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS4xNDczNWZmZmQ1NTEyMGE0NDgwYjdjOTFhMWQ3OGQ2ZXAtMSwKKyAgICAtMHgxLjAwMWNwMAorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLmMwYjZkMTAwMDU0NjhhM2EzZWIwNTZlYjU5YjU4Y2UycC0xLAorICAgIDB4MS4wMTQ0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEuYzBiNmQxMDAwNTQ2OGEzYTNlYjA1NmViNTliNThjZTJwLTEsCisgICAgLTB4MS4wMTQ0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAtMHgxLmM0MDNkOTAwMDY1MDliMDc2MjY0MmQwYmVhNDBlNGIxcC0yLAorICAgIDB4MS4wMzk0YzhwMQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgLTB4MS5jNDAzZDkwMDA2NTA5YjA3NjI2NDJkMGJlYTQwZTRiMXAtMiwKKyAgICAtMHgxLjAzOTRjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLjI3MGRhMThiMTk4ZTZlYmZjODc4MjA4MjkwMmJmMmQ0cC0yNSwKKyAgICAweDEuMDRjY2JjcDE4CisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLjI3MGRhMThiMTk4ZTZlYmZjODc4MjA4MjkwMmJmMmQ0cC0yNSwKKyAgICAtMHgxLjA0Y2NiY3AxOAorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLmVlMGY2NzAxNWI5ZmIzOWJhNmViOTFkNDc4MjljOTEzcC0xLAorICAgIDB4MS4wN2I1MThwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS5lZTBmNjcwMTViOWZiMzliYTZlYjkxZDQ3ODI5YzkxM3AtMSwKKyAgICAtMHgxLjA3YjUxOHA5OQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLmZlZjA1ZDAwMDY2NmNiNDdmMTYzMmM0NzhhNjI4MmE4cC0xLAorICAgIDB4MS4wN2JmODBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS5mZWYwNWQwMDA2NjZjYjQ3ZjE2MzJjNDc4YTYyODJhOHAtMSwKKyAgICAtMHgxLjA3YmY4MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLjE2ZjQzMzAwMDBiNDRjODI4ODY3OWY4Yzc5ZDM2YzRmcC02LAorICAgIDB4MS4wN2MxZjBwNQorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgMHgxLjE2ZjQzMzAwMDBiNDRjODI4ODY3OWY4Yzc5ZDM2YzRmcC02LAorICAgIC0weDEuMDdjMWYwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS5jZmI0MDQ1NTcyNzdkODViZjE0OTQ5NmQ0NmMyZmE5ZnAtMTgsCisgICAgMHgxLjBiZDIxZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEuY2ZiNDA0NTU3Mjc3ZDg1YmYxNDk0OTZkNDZjMmZhOWZwLTE4LAorICAgIC0weDEuMGJkMjFlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS5iYjU0M2VmZmZkNmNhY2FjMTI2OThiOGE5NGVkMmMzZXAtMSwKKyAgICAweDEuMGMzY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgMHgxLmJiNTQzZWZmZmQ2Y2FjYWMxMjY5OGI4YTk0ZWQyYzNlcC0xLAorICAgIC0weDEuMGMzY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLmJiMGEyMmMxM2I2MTZjZGNhZDMyYzdmY2E1OGU2NjQzcC0xLAorICAgIDB4MS4wY2QwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAweDEuYmIwYTIyYzEzYjYxNmNkY2FkMzJjN2ZjYTU4ZTY2NDNwLTEsCisgICAgLTB4MS4wY2QwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuZjk4ZjliMWQwNWU3YzkyMmFjNWU1YzZiNmFjODY4NzZwLTIsCisgICAgMHgxLjBkZjBwMAorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLmY5OGY5YjFkMDVlN2M5MjJhYzVlNWM2YjZhYzg2ODc2cC0yLAorICAgIC0weDEuMGRmMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEuZWUxNTE4MTgzMGMyNWIwYjEwY2U2NzFlOGY3YTMyODlwLTEsCisgICAgMHgxLjBmYjRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS5lZTE1MTgxODMwYzI1YjBiMTBjZTY3MWU4ZjdhMzI4OXAtMSwKKyAgICAtMHgxLjBmYjRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5lZGY2Y2MxNmRlZmU2MzYxZjM4ZmZhNjBlY2UzOTQ0Y3AtMSwKKyAgICAweDEuMTA5YWIycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAweDEuZWRmNmNjMTZkZWZlNjM2MWYzOGZmYTYwZWNlMzk0NGNwLTEsCisgICAgLTB4MS4xMDlhYjJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS5kZWU4ZDBmZmZjZDk5N2NlNWNmYmFiMGE1YTMzNmMxNHAtNSwKKyAgICAweDEuMTU2NTY0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS5kZWU4ZDBmZmZjZDk5N2NlNWNmYmFiMGE1YTMzNmMxNHAtNSwKKyAgICAtMHgxLjE1NjU2NHA0CisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEuYjY1NmQ2MDAwMDE1NWJhY2I0YWE4NzRiMjhkZTJmZjlwLTEsCisgICAgMHgxLjE2MGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS5iNjU2ZDYwMDAwMTU1YmFjYjRhYTg3NGIyOGRlMmZmOXAtMSwKKyAgICAtMHgxLjE2MGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS5mZmIyNzU5NjdjMTkxZWU5NWY4NjJlZmI0Zjc5MGNlY3AtMSwKKyAgICAweDEuMTljY3AtNQorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLmZmYjI3NTk2N2MxOTFlZTk1Zjg2MmVmYjRmNzkwY2VjcC0xLAorICAgIC0weDEuMTljY3AtNQorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLmM1OWM1MGZmZTU0MjIzM2I3ZWEyMTEwMGRmODdiYjYwcC0yLAorICAgIDB4MS4xY2E0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS5jNTljNTBmZmU1NDIyMzNiN2VhMjExMDBkZjg3YmI2MHAtMiwKKyAgICAtMHgxLjFjYTRwMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLmFmNjMwZjg2Yjc3NTcxYjlkZTJmMTdmZWUyYjZjNWNlcC01LAorICAgIDB4MS4xZmZmZmVwNzkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS5hZjYzMGY4NmI3NzU3MWI5ZGUyZjE3ZmVlMmI2YzVjZXAtNSwKKyAgICAtMHgxLjFmZmZmZXA3OQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLmIxNDkzZWYxZmJjNjI2NzNlYzE0MGMxMmFkYzVhMTM0cC02LAorICAgIDB4MS4yNjIwcDEwCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAweDEuYjE0OTNlZjFmYmM2MjY3M2VjMTQwYzEyYWRjNWExMzRwLTYsCisgICAgLTB4MS4yNjIwcDEwCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLmFkMDBiNmYxNWM2YWM1YzNlNzllZjU1ZDJmZWM3MGJkcC01LAorICAgIDB4MS4yYTNkNjJwMgorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS5hZDAwYjZmMTVjNmFjNWMzZTc5ZWY1NWQyZmVjNzBiZHAtNSwKKyAgICAtMHgxLjJhM2Q2MnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAtMHgxLmFiOTk4NGYyODNmMTE0Y2YxM2NjNmRmMzhjNjc5NTVmcC02LAorICAgIDB4MS4yYmVjMjJwMgorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS5hYjk5ODRmMjgzZjExNGNmMTNjYzZkZjM4YzY3OTU1ZnAtNiwKKyAgICAtMHgxLjJiZWMyMnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuOTliYzViOTYxYjFhY2FjYTE4ZDk3MWY2OGFlOTlkYTlwLTI3LAorICAgIDB4MS4yZDk3YzhwMgorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLjk5YmM1Yjk2MWIxYWNhY2ExOGQ5NzFmNjhhZTk5ZGE5cC0yNywKKyAgICAtMHgxLjJkOTdjOHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQ3MDM0OThjM2I4Mjg4NTYzOTE1cC0xLAorICAgIDB4MS4yZDk3YzhwMworICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkNzAzNDk4YzNiODI4ODU2MzkxNXAtMSwKKyAgICAtMHgxLjJkOTdjOHAzCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEuZmZmZmZmZmZmZmZmNWMwZDI2MzBlZTBhMjdlOGQ2ZDFwLTEsCisgICAgMHgxLjJkOTdjOHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuZmZmZmZmZmZmZmZmNWMwZDI2MzBlZTBhMjdlOGQ2ZDFwLTEsCisgICAgLTB4MS4yZDk3YzhwNAorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgLTB4MS45OWI2OWNmMGM0YTJjOGRkYWQzZjRjZjI5NDUzZTUwOXAtNiwKKyAgICAweDEuMmZlZmM0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIC0weDEuOTliNjljZjBjNGEyYzhkZGFkM2Y0Y2YyOTQ1M2U1MDlwLTYsCisgICAgLTB4MS4yZmVmYzRwOQorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS5lOTIxNDgzMjhkNjIwZmMxODZkZjlkNmNlMTA4OGZkOXAtMSwKKyAgICAweDEuMzMzNzI0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLmU5MjE0ODMyOGQ2MjBmYzE4NmRmOWQ2Y2UxMDg4ZmQ5cC0xLAorICAgIC0weDEuMzMzNzI0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLmExY2FhYjAwMDAyZDMxODllMDY5OWYyYWFmMjBkOWZjcC0xLAorICAgIDB4MS4zYjkwZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuYTFjYWFiMDAwMDJkMzE4OWUwNjk5ZjJhYWYyMGQ5ZmNwLTEsCisgICAgLTB4MS4zYjkwZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuZmMzM2JhZmZmZmZmYmIwNTVjZTAzNjkwYmQzOTI1MzFwLTEsCisgICAgMHgxLjQxYzQ3MHAxNgorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5mYzMzYmFmZmZmZmZiYjA1NWNlMDM2OTBiZDM5MjUzMXAtMSwKKyAgICAtMHgxLjQxYzQ3MHAxNgorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS40Nzk4YjMwNjcyZjIxNjAyYTIxYWFmNDcxZTgyNTlhMHAtMTksCisgICAgMHgxLjQ0MmY3NHAxNQorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS40Nzk4YjMwNjcyZjIxNjAyYTIxYWFmNDcxZTgyNTlhMHAtMTksCisgICAgLTB4MS40NDJmNzRwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuZTJiNWVjZmZmZmE0OWM4YzY4ZDc0M2M0N2Y2MjQ2MzNwLTEsCisgICAgMHgxLjVjMDlkYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS5lMmI1ZWNmZmZmYTQ5YzhjNjhkNzQzYzQ3ZjYyNDYzM3AtMSwKKyAgICAtMHgxLjVjMDlkYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS4xMDU5MTA5NGFjNThhMjcwZDlhZDkxODAyZGY0OWZkMHAtMTEsCisgICAgMHgxLjVmZTBwMworICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS4xMDU5MTA5NGFjNThhMjcwZDlhZDkxODAyZGY0OWZkMHAtMTEsCisgICAgLTB4MS41ZmUwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAtMHgxLmZmZmU1ODBlZTE0MWMwMjI1YjQ0MjgxYzFjNmY3ZmYxcC0xLAorICAgIDB4MS42NjU5ODJwMTE5CisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgLTB4MS5mZmZlNTgwZWUxNDFjMDIyNWI0NDI4MWMxYzZmN2ZmMXAtMSwKKyAgICAtMHgxLjY2NTk4MnAxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAtMHgxLmUyYjhlY2ZmZWQ5MWNlM2E0YjlkYzVhNTkyZmIwYjE0cC0xLAorICAgIDB4MS42NmEwYmFwMQorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIC0weDEuZTJiOGVjZmZlZDkxY2UzYTRiOWRjNWE1OTJmYjBiMTRwLTEsCisgICAgLTB4MS42NmEwYmFwMQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIC0weDEuYTA4YzZjZmRiZTA0Yjg1OWMwZTE2ZDQ3OGZmODFmN2JwLTUsCisgICAgMHgxLjZiZWU0MnAxMgorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIC0weDEuYTA4YzZjZmRiZTA0Yjg1OWMwZTE2ZDQ3OGZmODFmN2JwLTUsCisgICAgLTB4MS42YmVlNDJwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuZmY3YzcxOWExODQzOWM0MjY3MDc1ZTJkZjY4ODM0M2FwLTEsCisgICAgMHgxLjZmMTA3MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS5mZjdjNzE5YTE4NDM5YzQyNjcwNzVlMmRmNjg4MzQzYXAtMSwKKyAgICAtMHgxLjZmMTA3MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS5mZjdjM2I5OTdkNmJlYTY2MWVmMGQxZTY5ZTIyMmJmZXAtMSwKKyAgICAweDEuNmY1YmMycC01CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLmZmN2MzYjk5N2Q2YmVhNjYxZWYwZDFlNjllMjIyYmZlcC0xLAorICAgIC0weDEuNmY1YmMycC01CisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgLTB4MS42YTBhMGVlNjhkYTEzMTA5MWUyOWUwNTUyMjZhMWJkOXAtMSwKKyAgICAweDEuNzJiNTNjcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLjZhMGEwZWU2OGRhMTMxMDkxZTI5ZTA1NTIyNmExYmQ5cC0xLAorICAgIC0weDEuNzJiNTNjcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEuZmY3NzdiOWEyMTg5ODVjMWExOTFjOTJiMmQxMWZmYmFwLTEsCisgICAgMHgxLjc1ZWMxYXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDB4MS5mZjc3N2I5YTIxODk4NWMxYTE5MWM5MmIyZDExZmZiYXAtMSwKKyAgICAtMHgxLjc1ZWMxYXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS42ZDQ4N2Y5MjQyNzkyMGU4MWRjNWFlMzRlMGU4ZDdiYXAtMiwKKyAgICAweDEuNzhiM2ZhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS42ZDQ4N2Y5MjQyNzkyMGU4MWRjNWFlMzRlMGU4ZDdiYXAtMiwKKyAgICAtMHgxLjc4YjNmYXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuNDk0OWMyZmZmYTBjZDMzNmRmZGE5OTgyMTZkYWUzOTNwLTQsCisgICAgMHgxLjdkODU2OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLjQ5NDljMmZmZmEwY2QzMzZkZmRhOTk4MjE2ZGFlMzkzcC00LAorICAgIC0weDEuN2Q4NTY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAtMHgxLmI5ZWQ5ZWIzM2VhY2JmYWM4MTUxY2RhMTEzNzM0YzI5cC0xLAorICAgIDB4MS44MzA2ODhwNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLmI5ZWQ5ZWIzM2VhY2JmYWM4MTUxY2RhMTEzNzM0YzI5cC0xLAorICAgIC0weDEuODMwNjg4cDU3CisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLmM3MzQ5YWYwNmQ2MTM5NGNhZTE5MTIyMzNmNjRhMDRlcC01LAorICAgIDB4MS44M2U0MzBwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIDB4MS5jNzM0OWFmMDZkNjEzOTRjYWUxOTEyMjMzZjY0YTA0ZXAtNSwKKyAgICAtMHgxLjgzZTQzMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLmFiNzNmMGYwZmUwNDQwM2U2YTdmZGRlMTQxYTM4YThlcC01LAorICAgIDB4MS44NGMyODhwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIDB4MS5hYjczZjBmMGZlMDQ0MDNlNmE3ZmRkZTE0MWEzOGE4ZXAtNSwKKyAgICAtMHgxLjg0YzI4OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLmZmNmMyNzk5ZGNmMGQ2YzhmN2FjYWY1YjBhNDZlNmUycC0xLAorICAgIDB4MS44NTIxNDBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuZmY2YzI3OTlkY2YwZDZjOGY3YWNhZjViMGE0NmU2ZTJwLTEsCisgICAgLTB4MS44NTIxNDBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuZmY2OWVkOTlkZTcwZTUxZjUxOWYzMGJhZDI0N2E0ZDlwLTEsCisgICAgMHgxLjg4MGNiNnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIDB4MS5mZjY5ZWQ5OWRlNzBlNTFmNTE5ZjMwYmFkMjQ3YTRkOXAtMSwKKyAgICAtMHgxLjg4MGNiNnAtNQorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIC0weDEuZmQ3NmM1N2Y4NzJmODViYzRiMGUxYmY1OTFiM2I1YjBwLTEsCisgICAgMHgxLjkzNjRlYXAxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMHgxLmZkNzZjNTdmODcyZjg1YmM0YjBlMWJmNTkxYjNiNWIwcC0xLAorICAgIC0weDEuOTM2NGVhcDExOQorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEuZjg3YzFjZWVjNWZkNTgxMWM5YzA4OWNkYWVlZmYxM2NwLTgsCisgICAgMHgxLjk3OWUyOHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS5mODdjMWNlZWM1ZmQ1ODExYzljMDg5Y2RhZWVmZjEzY3AtOCwKKyAgICAtMHgxLjk3OWUyOHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgLTB4MS4xNmFlMjkxNDRkM2IxZWE4ZDkwN2I4Nzc2ZjcwNDE1N3AtMjYsCisgICAgMHgxLjlhNDhkZXAxNQorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuMTZhZTI5MTQ0ZDNiMWVhOGQ5MDdiODc3NmY3MDQxNTdwLTI2LAorICAgIC0weDEuOWE0OGRlcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgLTB4MS45Nzc1NTJmOGU2YWIzYzAxY2IyOWVjNzc4MDMwMDdjZnAtMTMsCisgICAgMHgxLjljYmMxYXA1MAorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEuOTc3NTUyZjhlNmFiM2MwMWNiMjllYzc3ODAzMDA3Y2ZwLTEzLAorICAgIC0weDEuOWNiYzFhcDUwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLmZmNThjNWZmZmZmZmM3MjY2YTlkZjRlOTIxNzI2NzcxcC0xLAorICAgIDB4MS45ZGRiMDZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAweDEuZmY1OGM1ZmZmZmZmYzcyNjZhOWRmNGU5MjE3MjY3NzFwLTEsCisgICAgLTB4MS45ZGRiMDZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjU3MDAwMTlmZmZmZjAwOTRjMTVwLTEsCisgICAgMHgxLjlmZmZmZXAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjU3MDAwMTlmZmZmZjAwOTRjMTVwLTEsCisgICAgLTB4MS45ZmZmZmVwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLjMxYmQ2MzAwNGIxZmY0ZDcyMmM3NDUwNDQ3MDZkNTE3cC0xLAorICAgIDB4MS5hYzEyOWNwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAweDEuMzFiZDYzMDA0YjFmZjRkNzIyYzc0NTA0NDcwNmQ1MTdwLTEsCisgICAgLTB4MS5hYzEyOWNwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAtMHgxLmYxYWQwZjAwMDAwOWUwNmNlNDQ5ZjViZGUwM2Q1ZDFhcC0xLAorICAgIDB4MS5iMDc4ZjhwMQorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEuZjFhZDBmMDAwMDA5ZTA2Y2U0NDlmNWJkZTAzZDVkMWFwLTEsCisgICAgLTB4MS5iMDc4ZjhwMQorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS5mZjQ3NzZmZmUzMjRiYTI5NThhY2E4ZDczY2Y4YjgzOXAtMSwKKyAgICAweDEuYjJjMDNjcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgMHgxLmZmNDc3NmZmZTMyNGJhMjk1OGFjYThkNzNjZjhiODM5cC0xLAorICAgIC0weDEuYjJjMDNjcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgMHgxLmZmNDM3ZjAwMDA1ZTUwMGQyOWJkODEwM2E4ZTc2OWU5cC0xLAorICAgIDB4MS5iNzY2ZjZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEuZmY0MzdmMDAwMDVlNTAwZDI5YmQ4MTAzYThlNzY5ZTlwLTEsCisgICAgLTB4MS5iNzY2ZjZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAtMHgxLjk5NjYzZGE5NGRiNzM0OGJjYmIyNTdlZDE2YjcyMjdjcC0yNCwKKyAgICAweDEuYmVlZWVlcDc5CisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS45OTY2M2RhOTRkYjczNDhiY2JiMjU3ZWQxNmI3MjI3Y3AtMjQsCisgICAgLTB4MS5iZWVlZWVwNzkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuZjNkNjIwZmZmZmZmODYwZTQ5YmJhYjg5NjNkY2M0MmVwLTEsCisgICAgMHgxLmJmNGUxY3AtMworICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIDB4MS5mM2Q2MjBmZmZmZmY4NjBlNDliYmFiODk2M2RjYzQyZXAtMSwKKyAgICAtMHgxLmJmNGUxY3AtMworICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS44MWZmNzllZDkyMDE3NTVmN2FkMThiNTMzYWE5OWQxOHAtMSwKKyAgICAweDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIDB4MS44MWZmNzllZDkyMDE3NTVmN2FkMThiNTMzYWE5OWQxOHAtMSwKKyAgICAtMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtMHgxLmFmM2M2MTA4ODg3NzMwZmNlY2VkZjYxZDJkODFjZWFicC0xNSwKKyAgICAweDEuYzIwZWM4cDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5hZjNjNjEwODg4NzczMGZjZWNlZGY2MWQyZDgxY2VhYnAtMTUsCisgICAgLTB4MS5jMjBlYzhwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAtMHgxLmIxNjU2ZWY5MTQ0N2ZhNmE1NDZjYmQ4MTAzNGNhZmFicC0xNCwKKyAgICAweDEuYzc5ZDIwcDE3CisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS5iMTY1NmVmOTE0NDdmYTZhNTQ2Y2JkODEwMzRjYWZhYnAtMTQsCisgICAgLTB4MS5jNzlkMjBwMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAweDEuMmRhMWQzMDA3YTU3NDYxZjZmNjdmMmQzZTk4M2Y3OThwLTEsCisgICAgMHgxLmNhN2NlMHAyNAorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIDB4MS4yZGExZDMwMDdhNTc0NjFmNmY2N2YyZDNlOTgzZjc5OHAtMSwKKyAgICAtMHgxLmNhN2NlMHAyNAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS5mZmRkMzc4ODgzODdjZTNjOTgyODE0NDY3NmYyYWIwZHAtMSwKKyAgICAweDEuY2MzMWI4cDE4CisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMHgxLmZmZGQzNzg4ODM4N2NlM2M5ODI4MTQ0Njc2ZjJhYjBkcC0xLAorICAgIC0weDEuY2MzMWI4cDE4CisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMHgxLjM5NWJhNGZmZmZhMDYxMjIzZjczMDQyOTliZTBhYWQ4cC0xLAorICAgIDB4MS5kMzA4OTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuMzk1YmE0ZmZmZmEwNjEyMjNmNzMwNDI5OWJlMGFhZDhwLTEsCisgICAgLTB4MS5kMzA4OTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuY2IyN2M2ZmZkOGU5ZDUxYTA2MDViNTdmZDAyZWU0ODNwLTEsCisgICAgMHgxLmQ1NTc0Y3AtMgorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS5jYjI3YzZmZmQ4ZTlkNTFhMDYwNWI1N2ZkMDJlZTQ4M3AtMSwKKyAgICAtMHgxLmQ1NTc0Y3AtMgorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS5hMGEwOWNmZDJiMmIyMzQ3NmYwOWFhM2ViNjMxMzUxY3AtNSwKKyAgICAweDEuZDc1NTdhcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLmEwYTA5Y2ZkMmIyYjIzNDc2ZjA5YWEzZWI2MzEzNTFjcC01LAorICAgIC0weDEuZDc1NTdhcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLjM4YWU2ZDAwMGM0OWRmNTAwMWJhZjcwMWIxYTJhNTY0cC0xLAorICAgIDB4MS5kYmU3NWNwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEuMzhhZTZkMDAwYzQ5ZGY1MDAxYmFmNzAxYjFhMmE1NjRwLTEsCisgICAgLTB4MS5kYmU3NWNwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuZmZmZjFmMDAxMjVhYmYzZDE3NjU3ODFiNjRlNmZlMDdwLTEsCisgICAgMHgxLmRmZmZmZXAtOQorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIDB4MS5mZmZmMWYwMDEyNWFiZjNkMTc2NTc4MWI2NGU2ZmUwN3AtMSwKKyAgICAtMHgxLmRmZmZmZXAtOQorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIC0weDEuOWFiYzc2ZjdlYjFkMTVhNzI3ZTBiZTdhYjE2NDAwYTdwLTEsCisgICAgMHgxLmUwMmE0MnAxMDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLjlhYmM3NmY3ZWIxZDE1YTcyN2UwYmU3YWIxNjQwMGE3cC0xLAorICAgIC0weDEuZTAyYTQycDEwOAorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS41YTE0MjkwNDRlYjA4NzAzMmRiZWU3MTljZGQzMDIyNnAtMSwKKyAgICAweDEuZTcwMWVhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS41YTE0MjkwNDRlYjA4NzAzMmRiZWU3MTljZGQzMDIyNnAtMSwKKyAgICAtMHgxLmU3MDFlYXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAtMHgxLjk0ZmZjMGY4ZDg4OGY2ZjQ2YzZkNTVhMmVmYTEwODNmcC0xLAorICAgIDB4MS5lZGYxODhwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAtMHgxLjk0ZmZjMGY4ZDg4OGY2ZjQ2YzZkNTVhMmVmYTEwODNmcC0xLAorICAgIC0weDEuZWRmMTg4cDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTB4MS4yN2M2ZDMwMGQ4NzU2ZTc4ODQ2Yjg0YTFmYTNiMTJhMnAtMSwKKyAgICAweDEuZjRjNjNhcDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS4yN2M2ZDMwMGQ4NzU2ZTc4ODQ2Yjg0YTFmYTNiMTJhMnAtMSwKKyAgICAtMHgxLmY0YzYzYXAyNAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS5kYTU0ZWNlZmIxY2QzOTUxMDU1NTEyNmE3NmNiMjBkNHAtNywKKyAgICAweDEuZjViYTc2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAweDEuZGE1NGVjZWZiMWNkMzk1MTA1NTUxMjZhNzZjYjIwZDRwLTcsCisgICAgLTB4MS5mNWJhNzZwMgorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5mYzI4ZGEwMDAwMDZiYzRmMGIwY2QzYzhhYjEwZmM1N3AtMSwKKyAgICAweDEuZjVmZjRlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLmZjMjhkYTAwMDAwNmJjNGYwYjBjZDNjOGFiMTBmYzU3cC0xLAorICAgIC0weDEuZjVmZjRlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgLTB4MS5mZmZmZmZmZmZmZWEzOTZhYjhhZWU1MDkzOTJjNzU1ZHAtMSwKKyAgICAweDEuZjZhN2EycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLmZmZmZmZmZmZmZlYTM5NmFiOGFlZTUwOTM5MmM3NTVkcC0xLAorICAgIC0weDEuZjZhN2EycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAweDEuYTRmMWQ0ZmQwZWEyODZmMzJmM2NiMzA5MmI0Y2VkMTRwLTUsCisgICAgMHgxLmY2YmZmMnAxMgorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIDB4MS5hNGYxZDRmZDBlYTI4NmYzMmYzY2IzMDkyYjRjZWQxNHAtNSwKKyAgICAtMHgxLmY2YmZmMnAxMgorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmFmMzNkZTI5MGNhOTllMmZhZjNwLTEsCisgICAgMHgxLmY5Y2JlMnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmYWYzM2RlMjkwY2E5OWUyZmFmM3AtMSwKKyAgICAtMHgxLmY5Y2JlMnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLmZkZDQwZDZkOTEyY2UyNTk0ZjIwMDEwNDU3MGFjMWIzcC0zLAorICAgIDB4MS5mYzc2N2VwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAweDEuZmRkNDBkNmQ5MTJjZTI1OTRmMjAwMTA0NTcwYWMxYjNwLTMsCisgICAgLTB4MS5mYzc2N2VwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMHgxLjc1MmRlMmZmZmZiMWE1ZTIyN2JmMmMxMmY0MDgzMjAzcC0xLAorICAgIDB4MS5mZjUzNTJwOAorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0weDEuNzUyZGUyZmZmZmIxYTVlMjI3YmYyYzEyZjQwODMyMDNwLTEsCisgICAgLTB4MS5mZjUzNTJwOAorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIC0weDEuNGVkNGM1ZmZjODAxODc0MTg3MDk0OTc2N2ZmOGRhZmFwLTEsCisgICAgMHgxLmZmZjFmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS40ZWQ0YzVmZmM4MDE4NzQxODcwOTQ5NzY3ZmY4ZGFmYXAtMSwKKyAgICAtMHgxLmZmZjFmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgLTB4MS4yODQwNmEwMDI1NTQ1YzlhNTY4ZGFjZDQ1NTE4ZGQ2NXAtMywKKyAgICAweDEuZmZmMWZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAtMHgxLjI4NDA2YTAwMjU1NDVjOWE1NjhkYWNkNDU1MThkZDY1cC0zLAorICAgIC0weDEuZmZmMWZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuZjAxNWM4YzI0Y2E1ZTk5YzdjNjU1OTljOGQ2MDk3NmVwLTEsCisgICAgMHgxLmZmZjdmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDB4MS5mMDE1YzhjMjRjYTVlOTljN2M2NTU5OWM4ZDYwOTc2ZXAtMSwKKyAgICAtMHgxLmZmZjdmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDB4MS5hZmY5YjQ1ZTk0ZDMyZDhlNWJkZTI1ZGVjNmYzNTdkNnAtOSwKKyAgICAweDEuZmZmZTNlcDQxCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLmFmZjliNDVlOTRkMzJkOGU1YmRlMjVkZWM2ZjM1N2Q2cC05LAorICAgIC0weDEuZmZmZTNlcDQxCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgLTB4MS5lYTU0NjRmZmY1NzFmNmZmMzM1MDA0ZWFkZTMwMWI1NnAtMSwKKyAgICAweDEuZmZmZjhlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLmVhNTQ2NGZmZjU3MWY2ZmYzMzUwMDRlYWRlMzAxYjU2cC0xLAorICAgIC0weDEuZmZmZjhlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAweDEuZmZmZDRlNzM1ZGY2ZGI2YTdjYTdjYjA0MzZlNmVmNDhwLTEsCisgICAgMHgxLmZmZmY4ZXA0MAorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIDB4MS5mZmZkNGU3MzVkZjZkYjZhN2NhN2NiMDQzNmU2ZWY0OHAtMSwKKyAgICAtMHgxLmZmZmY4ZXA0MAorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIC0weDEuODhlNTI3ZmZlZGQ4NWQyZTI0MjkxNjZmNzk1ZDk3ODhwLTcsCisgICAgMHgxLmZmZmY5ZXA0NQorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEuODhlNTI3ZmZlZGQ4NWQyZTI0MjkxNjZmNzk1ZDk3ODhwLTcsCisgICAgLTB4MS5mZmZmOWVwNDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAtMHgxLmRiOGZhMGUwNzFmOTgwNjFmMjdlZjY3MTYxNTExNDM3cC0zLAorICAgIDB4MS5mZmZmYmFwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLmRiOGZhMGUwNzFmOTgwNjFmMjdlZjY3MTYxNTExNDM3cC0zLAorICAgIC0weDEuZmZmZmJhcDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgLTB4MS5mZTViMzM3ZjRjZmUyNWQ0NjhkZWZlNjVkNWM1MjRhZHAtMSwKKyAgICAweDEuZmZmZmRjcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLmZlNWIzMzdmNGNmZTI1ZDQ2OGRlZmU2NWQ1YzUyNGFkcC0xLAorICAgIC0weDEuZmZmZmRjcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAtMHgxLmY1OTAzOGY0YzJkZDMzZDE1OTE3MWVlODBiYjY0ODg2cC01LAorICAgIDB4MS5mZmZmZjhwMTE4CisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgLTB4MS5mNTkwMzhmNGMyZGQzM2QxNTkxNzFlZTgwYmI2NDg4NnAtNSwKKyAgICAtMHgxLmZmZmZmOHAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAweDEuZmZmZmZjMDAwMDExNTU1NTNhN2QyN2Y0YTI4OWYzMTlwLTEsCisgICAgMHgxLmZmZmZmY3AtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAweDEuZmZmZmZjMDAwMDExNTU1NTNhN2QyN2Y0YTI4OWYzMTlwLTEsCisgICAgLTB4MS5mZmZmZmNwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgLTB4MS5mOWQ2YmRkNjI0NzNjZDJiNzI5ZmUzYTY3YTRlOTE1N3AtNCwKKyAgICAweDEuZmZmZmZjcDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTB4MS5mOWQ2YmRkNjI0NzNjZDJiNzI5ZmUzYTY3YTRlOTE1N3AtNCwKKyAgICAtMHgxLmZmZmZmY3AyMgorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS5lYjQwODMwMDAwNWQ5MWI5ODE0Y2FkYTg4ZjVmYzU5NnAtMSwKKyAgICAweDEuMjQ4MzZjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLmViNDA4MzAwMDA1ZDkxYjk4MTRjYWRhODhmNWZjNTk2cC0xLAorICAgIC0weDEuMjQ4MzZjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDB4MS5mZmZmZmY1YzI4ZjU3OTYwY2Q1NmViZmU5NDgyYTYxZnAtMSwKKyAgICAweDEuOTk5OTlhcC0xMworICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS5mZmZmZmY1YzI4ZjU3OTYwY2Q1NmViZmU5NDgyYTYxZnAtMSwKKyAgICAtMHgxLjk5OTk5YXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEuZmZmZmZkNzBhM2Q2NGU1ZWMxNjVjZDQzMDdhZDEzMjZwLTEsCisgICAgMHgxLjk5OTk5YXAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuZmZmZmZkNzBhM2Q2NGU1ZWMxNjVjZDQzMDdhZDEzMjZwLTEsCisgICAgLTB4MS45OTk5OWFwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLmZmZmZmYTNkNzA5ZWVjYmZiNWEzODViMGYzZTBjYjhmcC0xLAorICAgIDB4MS4zMzMzMzRwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLmZmZmZmYTNkNzA5ZWVjYmZiNWEzODViMGYzZTBjYjhmcC0xLAorICAgIC0weDEuMzMzMzM0cC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS5mZmZmZjVjMjhmNWZjNzMzYzQyMDJhYTBiZGE5MmY5N3AtMSwKKyAgICAweDEuOTk5OTlhcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS5mZmZmZjVjMjhmNWZjNzMzYzQyMDJhYTBiZGE5MmY5N3AtMSwKKyAgICAtMHgxLjk5OTk5YXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEuZmZmZmYwMDAwMDE1NTU1NTQ5ZjQ5ZjRkMzRkMzRjYTBwLTEsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEuZmZmZmYwMDAwMDE1NTU1NTQ5ZjQ5ZjRkMzRkMzRjYTBwLTEsCisgICAgLTB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLmZmZmZlOGY1YzI5Y2UwNzY0MGJkNWY2ZDhiYjFlYTZicC0xLAorICAgIDB4MS4zMzMzMzRwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLmZmZmZlOGY1YzI5Y2UwNzY0MGJkNWY2ZDhiYjFlYTZicC0xLAorICAgIC0weDEuMzMzMzM0cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS5mZmZmZTBhM2Q3MTQ4MzlmMzYwMTE0N2FkYTczZjhkOXAtMSwKKyAgICAweDEuNjY2NjY4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS5mZmZmZTBhM2Q3MTQ4MzlmMzYwMTE0N2FkYTczZjhkOXAtMSwKKyAgICAtMHgxLjY2NjY2OHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEuZmZmZmQ3MGEzZDgxOTFmNjZkZTU0MDhmYjJiOTk1YTBwLTEsCisgICAgMHgxLjk5OTk5Y3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuZmZmZmQ3MGEzZDgxOTFmNjZkZTU0MDhmYjJiOTk1YTBwLTEsCisgICAgLTB4MS45OTk5OWNwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLmZmZmZjYzI4ZjZkMDk2Yjg3ZDZkMTlhMDZlOTY5OTlicC0xLAorICAgIDB4MS5jY2NjY2NwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLmZmZmZjYzI4ZjZkMDk2Yjg3ZDZkMTlhMDZlOTY5OTlicC0xLAorICAgIC0weDEuY2NjY2NjcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS5mZmZiY2MyYTcxY2VhYWJmNTU4MmI2ZGExZmMzMDUzMXAtMSwKKyAgICAweDEuMDY2NjY2cC03CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLmZmZmJjYzJhNzFjZWFhYmY1NTgyYjZkYTFmYzMwNTMxcC0xLAorICAgIC0weDEuMDY2NjY2cC03CisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgMHgxLmZmZjMwYTRiN2I1MTE5ZDhlMjk5ZjcxN2VjMGVjZTE2cC0xLAorICAgIDB4MS5jY2NjY2NwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuZmZmMzBhNGI3YjUxMTlkOGUyOTlmNzE3ZWMwZWNlMTZwLTEsCisgICAgLTB4MS5jY2NjY2NwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEuZmZlNTdhNzg1MTIzMjI2YzFlMmVmYjQxMTM1M2VkYzlwLTEsCisgICAgMHgxLjQ5OTk5OHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS5mZmU1N2E3ODUxMjMyMjZjMWUyZWZiNDExMzUzZWRjOXAtMSwKKyAgICAtMHgxLjQ5OTk5OHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS5mZmQzMWNkMTBjYjYzMmQ5NzMzYWM1ZjVmMzI3YTVmOXAtMSwKKyAgICAweDEuYWNjY2NjcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLmZmZDMxY2QxMGNiNjMyZDk3MzNhYzVmNWYzMjdhNWY5cC0xLAorICAgIC0weDEuYWNjY2NjcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLmZmYmJmMTgyMDc1NDJlZjgxMzkwZDczYzNiYTg5YzFhcC0xLAorICAgIDB4MS4wOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS5mZmJiZjE4MjA3NTQyZWY4MTM5MGQ3M2MzYmE4OWMxYXAtMSwKKyAgICAtMHgxLjA4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLmZmOWZmOGMyZWFlYWVlMzBmYjIxMTc2NWFmODM1MTcxcC0xLAorICAgIDB4MS4zOTk5OWFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuZmY5ZmY4YzJlYWVhZWUzMGZiMjExNzY1YWY4MzUxNzFwLTEsCisgICAgLTB4MS4zOTk5OWFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEuZmY3ZjMyZDZlYjFmOWNmOTAyMjZlYzI5MWM5ZTA5MjJwLTEsCisgICAgMHgxLjZiMzMzNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIDB4MS5mZjdmMzJkNmViMWY5Y2Y5MDIyNmVjMjkxYzllMDkyMnAtMSwKKyAgICAtMHgxLjZiMzMzNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS5mZjU5YTAwY2M0YWQ0OTJjYTI1OTc0OTU0MTI5OThlZHAtMSwKKyAgICAweDEuOWNjY2NlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLmZmNTlhMDBjYzRhZDQ5MmNhMjU5NzQ5NTQxMjk5OGVkcC0xLAorICAgIC0weDEuOWNjY2NlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLmZmMmY0MGMwOGFjZjQ1ODBhOGQxMzM4MGQ5MDczMzk4cC0xLAorICAgIDB4MS5jZTY2NjZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEuZmYyZjQwYzA4YWNmNDU4MGE4ZDEzMzgwZDkwNzMzOThwLTEsCisgICAgLTB4MS5jZTY2NjZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAweDEuOGNhNDZjYTAxMTc3MWJmYWUwZDllZGJmMWRhY2I0MDJwLTEsCisgICAgMHgxLjVlN2ZjNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS44Y2E0NmNhMDExNzcxYmZhZTBkOWVkYmYxZGFjYjQwMnAtMSwKKyAgICAtMHgxLjVlN2ZjNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIDB4MS4wYjVkMzhkNWQ4MmU0YTc2MjRkYWM0ZTEwY2UxNTljMnAtMiwKKyAgICAweDEuNGU3ZmM0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuMGI1ZDM4ZDVkODJlNGE3NjI0ZGFjNGUxMGNlMTU5YzJwLTIsCisgICAgLTB4MS40ZTdmYzRwMAorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuNjZiOTZlMjA0ZTY5Y2RhOGU5Y2Y1MDk5NjQzMjUzOWVwLTIsCisgICAgMHgxLmVkYmZhNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgLTB4MS42NmI5NmUyMDRlNjljZGE4ZTljZjUwOTk2NDMyNTM5ZXAtMiwKKyAgICAtMHgxLmVkYmZhNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgLTB4MS5hOTM1NTQwZWRlY2E0YzIyMGVkOTFkYzU0ODFlNGQ5YnAtMSwKKyAgICAweDEuNDY3ZmM0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAtMHgxLmE5MzU1NDBlZGVjYTRjMjIwZWQ5MWRjNTQ4MWU0ZDlicC0xLAorICAgIC0weDEuNDY3ZmM0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLmZmYzAwMTdkZDkyMDlkZDg4OTFmMTdmZTRjOWVlZTQ2cC0xLAorICAgIDB4MS45NjFmYjRwMQorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIC0weDEuZmZjMDAxN2RkOTIwOWRkODg5MWYxN2ZlNGM5ZWVlNDZwLTEsCisgICAgLTB4MS45NjFmYjRwMQorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEuOTY5MDgyMDA3NzMzZDc4N2Y0YzM2YmEwZjk0MjU2OTRwLTEsCisgICAgMHgxLmU1YmZhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgLTB4MS45NjkwODIwMDc3MzNkNzg3ZjRjMzZiYTBmOTQyNTY5NHAtMSwKKyAgICAtMHgxLmU1YmZhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgLTB4MS4yYTFlNzQyMjNkOWJkZGI3ZGI1OWY3ODFmOTZiNjVlY3AtMiwKKyAgICAweDEuMWFhZmNhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAtMHgxLjJhMWU3NDIyM2Q5YmRkYjdkYjU5Zjc4MWY5NmI2NWVjcC0yLAorICAgIC0weDEuMWFhZmNhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAweDEuNDg5NGQ1MGI4NGRiYzk4MTEzNGE1OTFhYzQxNjVkOWVwLTIsCisgICAgMHgxLjQyN2ZjMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgMHgxLjQ4OTRkNTBiODRkYmM5ODExMzRhNTkxYWM0MTY1ZDllcC0yLAorICAgIC0weDEuNDI3ZmMycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuYTAxNmRkNzQ4MGExZWVhNGQ0OWVmYjU4NWZhNDljODZwLTEsCisgICAgMHgxLjZhNGZiYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLmEwMTZkZDc0ODBhMWVlYTRkNDllZmI1ODVmYTQ5Yzg2cC0xLAorICAgIC0weDEuNmE0ZmJhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAweDEuYTMwYTZhM2JmNGEzZTJiN2UyNzY2NmQzYTljM2I3NGJwLTEsCisgICAgMHgxLjZhZjJmMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMHgxLmEzMGE2YTNiZjRhM2UyYjdlMjc2NjZkM2E5YzNiNzRicC0xLAorICAgIC0weDEuNmFmMmYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuNWJkNjI1NTA0MDE1Y2NjMTAxZTRmNDM0MGQ0Yjc2MmJwLTIsCisgICAgMHgxLjQzYzYyYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgMHgxLjViZDYyNTUwNDAxNWNjYzEwMWU0ZjQzNDBkNGI3NjJicC0yLAorICAgIC0weDEuNDNjNjJhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAtMHgxLjBjYjczMzQ0OGMzMGVlM2RkZmZiNGRhNjlmMGIzODQycC0yLAorICAgIDB4MS4xYzk5NjRwMgorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIC0weDEuMGNiNzMzNDQ4YzMwZWUzZGRmZmI0ZGE2OWYwYjM4NDJwLTIsCisgICAgLTB4MS4xYzk5NjRwMgorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIC0weDEuODlkODc0YWQzMGUzZmI0NjI0NGRhYTI0NDUxNjkwZDdwLTEsCisgICAgMHgxLmVhZDkzY3AxCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgLTB4MS44OWQ4NzRhZDMwZTNmYjQ2MjQ0ZGFhMjQ0NTE2OTBkN3AtMSwKKyAgICAtMHgxLmVhZDkzY3AxCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgLTB4MS5mZTUxYWUwOWYwZDM5ZWQ1NTRlNjhiZWYzZTJmOGEwM3AtMSwKKyAgICAweDEuOWM3ZmIwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAtMHgxLmZlNTFhZTA5ZjBkMzllZDU1NGU2OGJlZjNlMmY4YTAzcC0xLAorICAgIC0weDEuOWM3ZmIwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAtMHgxLmI5N2JmNzZhZTc2NWViNjljZjU1ZTgwYWFlOTc3MzAzcC0xLAorICAgIDB4MS40ZTI2MjRwMQorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIC0weDEuYjk3YmY3NmFlNzY1ZWI2OWNmNTVlODBhYWU5NzczMDNwLTEsCisgICAgLTB4MS40ZTI2MjRwMQorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIC0weDEuYThhYzU3OTNlMzI2MjliMTMxOTg0ZWNmZmQyZDBmMzFwLTIsCisgICAgMHgxLmZmOTkzMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgLTB4MS5hOGFjNTc5M2UzMjYyOWIxMzE5ODRlY2ZmZDJkMGYzMXAtMiwKKyAgICAtMHgxLmZmOTkzMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgMHgxLjc3YTkyY2EwMWJjNzljMTk1ZGRhMzM3MzY4MDdmOTg2cC0zLAorICAgIDB4MS42MmU2MWNwMAorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS43N2E5MmNhMDFiYzc5YzE5NWRkYTMzNzM2ODA3Zjk4NnAtMywKKyAgICAtMHgxLjYyZTYxY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgMHgxLjZlMTA2MDI4MmMxNDg4ZDlhYmQ4M2RhMWQ2OGNkMGY3cC0xLAorICAgIDB4MS44YzY2MmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuNmUxMDYwMjgyYzE0ODhkOWFiZDgzZGExZDY4Y2QwZjdwLTEsCisgICAgLTB4MS44YzY2MmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAtMHgxLjY4MmYyYmI4N2E4ZjUwMTE3MzUwOTQxNzZjOWI2ZGFjcC00LAorICAgIC0weDEuYThhYTFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAtMHgxLjY4MmYyYmI4N2E4ZjUwMTE3MzUwOTQxNzZjOWI2ZGFjcC00LAorICAgIDB4MS5hOGFhMWNwMAorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIC0weDEuZTY2NWNiMmFmODQyYmU1YmE1ZjY1OTYwNTk5YTk3ZWNwLTcsCisgICAgLTB4MS45NWVjOGFwMAorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIC0weDEuZTY2NWNiMmFmODQyYmU1YmE1ZjY1OTYwNTk5YTk3ZWNwLTcsCisgICAgMHgxLjk1ZWM4YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgMHgxLmRkZDIzMTUwMWIxMmZjZjJiYzIwNjMzYmU0ZDUxZTUxcC01LAorICAgIC0weDEuODMyZWY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEuZGRkMjMxNTAxYjEyZmNmMmJjMjA2MzNiZTRkNTFlNTFwLTUsCisgICAgMHgxLjgzMmVmOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLjBjYWJhNjk5NzY5MWFiMTk3MGQ0M2M3NDE5ZWQ1MWUxcC0zLAorICAgIC0weDEuNzA3MTY2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAweDEuMGNhYmE2OTk3NjkxYWIxOTcwZDQzYzc0MTllZDUxZTFwLTMsCisgICAgMHgxLjcwNzE2NnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgMHgxLmEwNzI1NDFmZDZlYWY4YjY1YTg3NGM1OGQ2Y2M1NzM5cC0zLAorICAgIC0weDEuNWRiM2Q0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAweDEuYTA3MjU0MWZkNmVhZjhiNjVhODc0YzU4ZDZjYzU3MzlwLTMsCisgICAgMHgxLjVkYjNkNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgMHgxLjE4ZmVmODEwNmJlYTYzYjllOTZhN2FkZjUzOGM2MTk0cC0yLAorICAgIC0weDEuNGFmNjQycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuMThmZWY4MTA2YmVhNjNiOWU5NmE3YWRmNTM4YzYxOTRwLTIsCisgICAgMHgxLjRhZjY0MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgMHgxLjYwNDM3Mjc3ZDQ4MDY3ZTg1MjMwYmNlMTg4M2VhYWJhcC0yLAorICAgIC0weDEuMzgzOGIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAweDEuNjA0MzcyNzdkNDgwNjdlODUyMzBiY2UxODgzZWFhYmFwLTIsCisgICAgMHgxLjM4MzhiMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgMHgxLmE1YTRkZWQ0OTJiZWRmZThjZjVjMzRjYWRkNzhkZjc1cC0yLAorICAgIC0weDEuMjU3YjFlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAweDEuYTVhNGRlZDQ5MmJlZGZlOGNmNWMzNGNhZGQ3OGRmNzVwLTIsCisgICAgMHgxLjI1N2IxZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgMHgxLmU4YzQwNDA2NzhkMmVmNzM2MzMzYTQ1MzdhMTExM2ExcC0yLAorICAgIC0weDEuMTJiZDkycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuZThjNDA0MDY3OGQyZWY3MzYzMzNhNDUzN2ExMTEzYTFwLTIsCisgICAgMHgxLjEyYmQ5MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgMHgxLjI2OTc2YjFiMTZkMTkwOTFjMDkyNTk3NjVjNGIzODcycC0xLAorICAgIC0weDEuZWE1YzNlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMHgxLjI2OTc2YjFiMTZkMTkwOTFjMDkyNTk3NjVjNGIzODcycC0xLAorICAgIDB4MS5lYTVjM2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAweDEuMzgwNWEyZGFmZGE3Zjg1NTRhZWM2NWRhYjM0OGE3MTRwLTEsCisgICAgLTB4MS5kNGI4N2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuMzgwNWEyZGFmZGE3Zjg1NTRhZWM2NWRhYjM0OGE3MTRwLTEsCisgICAgMHgxLmQ0Yjg3Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIDB4MS40OGU1MmZmNWJiZTc5NDYxOGI4NTE5MGI4NjQxMTgyNHAtMSwKKyAgICAtMHgxLmJmMTRiYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0NAorICAgIDB4MS40OGU1MmZmNWJiZTc5NDYxOGI4NTE5MGI4NjQxMTgyNHAtMSwKKyAgICAweDEuYmYxNGJhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQ1CisgICAgMHgxLjU5MmU1YjYxNWVmNWFlNDYzOTc2ZDMxMTQxZGJhY2YwcC0xLAorICAgIC0weDEuYTk3MGY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMHgxLjU5MmU1YjYxNWVmNWFlNDYzOTc2ZDMxMTQxZGJhY2YwcC0xLAorICAgIDB4MS5hOTcwZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuNjhkOWIyZDY1N2U0MzA3ZDMzMWViN2JkMzVlZTE4NzlwLTEsCisgICAgLTB4MS45M2NkMzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDgKKyAgICAweDEuNjhkOWIyZDY1N2U0MzA3ZDMzMWViN2JkMzVlZTE4NzlwLTEsCisgICAgMHgxLjkzY2QzNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0OQorICAgIDB4MS43N2UwMGMzNzE4NTI4YzM2ZjcyMmU2MzA5NmMyNjQ2YnAtMSwKKyAgICAtMHgxLjdlMjk3NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS43N2UwMGMzNzE4NTI4YzM2ZjcyMmU2MzA5NmMyNjQ2YnAtMSwKKyAgICAweDEuN2UyOTc0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgMHgxLjg2M2E4OGQ2YjA2NGYzNmYzNDM3MDcyMmQzNjFjZTlmcC0xLAorICAgIC0weDEuNjg4NWIycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLjg2M2E4OGQ2YjA2NGYzNmYzNDM3MDcyMmQzNjFjZTlmcC0xLAorICAgIDB4MS42ODg1YjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAweDEuOTNlMjk4OWNlZTYwODRlMzRiNTMzYjFlYjkyNzQ2ZGFwLTEsCisgICAgLTB4MS41MmUxZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuOTNlMjk4OWNlZTYwODRlMzRiNTMzYjFlYjkyNzQ2ZGFwLTEsCisgICAgMHgxLjUyZTFmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIDB4MS5hMGQxZjg2MTNlYmM2MGM3ZWU2NTAyZWUxODNjODllN3AtMSwKKyAgICAtMHgxLjNkM2UzNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIDB4MS5hMGQxZjg2MTNlYmM2MGM3ZWU2NTAyZWUxODNjODllN3AtMSwKKyAgICAweDEuM2QzZTM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgMHgxLmJjNmJkODg5YThhNTlkYmI1NmU1NDZhMzdhZTc5OGY1cC0xLAorICAgIC0weDEuMGEwYjAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgMHgxLmJjNmJkODg5YThhNTlkYmI1NmU1NDZhMzdhZTc5OGY1cC0xLAorICAgIDB4MS4wYTBiMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAweDEuY2E1OWM3MTlmOTYwNzVkZDZiN2EwZmY0NDNhZDU5ZGNwLTEsCisgICAgLTB4MS5kOGY3MjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAweDEuY2E1OWM3MTlmOTYwNzVkZDZiN2EwZmY0NDNhZDU5ZGNwLTEsCisgICAgMHgxLmQ4ZjcyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIDB4MS5kNmMwYjEzZGY5OTYxM2E0OTMwNmI0ZGM2YzU3YWEwM3AtMSwKKyAgICAtMHgxLjlkZDgzY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIDB4MS5kNmMwYjEzZGY5OTYxM2E0OTMwNmI0ZGM2YzU3YWEwM3AtMSwKKyAgICAweDEuOWRkODNjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgMHgxLmUxOTYwMjczYTRhYWExYmQxOWVmMGNjYWE4ODc0MTgzcC0xLAorICAgIC0weDEuNjJiOTU4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzY0CisgICAgMHgxLmUxOTYwMjczYTRhYWExYmQxOWVmMGNjYWE4ODc0MTgzcC0xLAorICAgIDB4MS42MmI5NThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAweDEuZWFkMDdjZDJlMGY3ZjE5Njc5NjQ2MzYyYmJjMGViODBwLTEsCisgICAgLTB4MS4yNzlhNzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuZWFkMDdjZDJlMGY3ZjE5Njc5NjQ2MzYyYmJjMGViODBwLTEsCisgICAgMHgxLjI3OWE3NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIDB4MS5mMjY4NDBlZmQ4NmNlZWEyM2YzODhiNmExMTAyZWE0ZHAtMSwKKyAgICAtMHgxLmQ4ZjcyMHAtMworICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS5mMjY4NDBlZmQ4NmNlZWEyM2YzODhiNmExMTAyZWE0ZHAtMSwKKyAgICAweDEuZDhmNzIwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgMHgxLmY4NTZkNDkyNTFiZDM3YzU0ZjAwOTQyNzBlZWNiZDE4cC0xLAorICAgIC0weDEuNjJiOTU4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLmY4NTZkNDkyNTFiZDM3YzU0ZjAwOTQyNzBlZWNiZDE4cC0xLAorICAgIDB4MS42MmI5NThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICAweDEuZmM5NzI4M2M0ZjViZDFmNzkzMjAxOTcyYjhkYjU1MWZwLTEsCisgICAgLTB4MS5kOGY3MjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAweDEuZmM5NzI4M2M0ZjViZDFmNzkzMjAxOTcyYjhkYjU1MWZwLTEsCisgICAgMHgxLmQ4ZjcyMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIDB4MS5mZjI1OWI3YjNkNzIxZWRmMDYzYTViZjZlN2ExZjkzY3AtMSwKKyAgICAtMHgxLmQ4ZjcyMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS5mZjI1OWI3YjNkNzIxZWRmMDYzYTViZjZlN2ExZjkzY3AtMSwKKyAgICAweDEuZDhmNzIwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgMHgxLmZmMjU5YjdiM2Q3MjFlZGYwNjNhNWJmNmU3YTFmOTNjcC0xLAorICAgIDB4MS5kOGY3MjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzYKKyAgICAweDEuZmYyNTliN2IzZDcyMWVkZjA2M2E1YmY2ZTdhMWY5M2NwLTEsCisgICAgLTB4MS5kOGY3MjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAweDEuZmM5NzI4M2M0ZjViZDFmNzkzMjAxOTcyYjhkYjU1MWZwLTEsCisgICAgMHgxLmQ4ZjcyMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS5mYzk3MjgzYzRmNWJkMWY3OTMyMDE5NzJiOGRiNTUxZnAtMSwKKyAgICAtMHgxLmQ4ZjcyMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM3OQorICAgIDB4MS5mODU2ZDQ5MjUxYmQzN2M1NGYwMDk0MjcwZWVjYmQxOHAtMSwKKyAgICAweDEuNjJiOTU4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgMHgxLmY4NTZkNDkyNTFiZDM3YzU0ZjAwOTQyNzBlZWNiZDE4cC0xLAorICAgIC0weDEuNjJiOTU4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgMHgxLmYyNjg0MGVmZDg2Y2VlYTIzZjM4OGI2YTExMDJlYTRkcC0xLAorICAgIDB4MS5kOGY3MjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODIKKyAgICAweDEuZjI2ODQwZWZkODZjZWVhMjNmMzg4YjZhMTEwMmVhNGRwLTEsCisgICAgLTB4MS5kOGY3MjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODMKKyAgICAweDEuZWFkMDdjZDJlMGY3ZjE5Njc5NjQ2MzYyYmJjMGViODBwLTEsCisgICAgMHgxLjI3OWE3NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM4NAorICAgIDB4MS5lYWQwN2NkMmUwZjdmMTk2Nzk2NDYzNjJiYmMwZWI4MHAtMSwKKyAgICAtMHgxLjI3OWE3NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM4NQorICAgIDB4MS5lMTk2MDI3M2E0YWFhMWJkMTllZjBjY2FhODg3NDE4M3AtMSwKKyAgICAweDEuNjJiOTU4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgMHgxLmUxOTYwMjczYTRhYWExYmQxOWVmMGNjYWE4ODc0MTgzcC0xLAorICAgIC0weDEuNjJiOTU4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgMHgxLmQ2YzBiMTNkZjk5NjEzYTQ5MzA2YjRkYzZjNTdhYTAzcC0xLAorICAgIDB4MS45ZGQ4M2NwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODgKKyAgICAweDEuZDZjMGIxM2RmOTk2MTNhNDkzMDZiNGRjNmM1N2FhMDNwLTEsCisgICAgLTB4MS45ZGQ4M2NwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAweDEuY2E1OWM3MTlmOTYwNzVkZDZiN2EwZmY0NDNhZDU5ZGNwLTEsCisgICAgMHgxLmQ4ZjcyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIDB4MS5jYTU5YzcxOWY5NjA3NWRkNmI3YTBmZjQ0M2FkNTlkY3AtMSwKKyAgICAtMHgxLmQ4ZjcyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS5iYzZiZDg4OWE4YTU5ZGJiNTZlNTQ2YTM3YWU3OThmNXAtMSwKKyAgICAweDEuMGEwYjAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgMHgxLmJjNmJkODg5YThhNTlkYmI1NmU1NDZhMzdhZTc5OGY1cC0xLAorICAgIC0weDEuMGEwYjAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzkzCisgICAgMHgxLmEwZDFmODYxM2ViYzYwYzdlZTY1MDJlZTE4M2M4OWU3cC0xLAorICAgIDB4MS4zZDNlMzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTQKKyAgICAweDEuYTBkMWY4NjEzZWJjNjBjN2VlNjUwMmVlMTgzYzg5ZTdwLTEsCisgICAgLTB4MS4zZDNlMzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAweDEuOTNlMjkzYjIzYTZhYTFhZTUzNzMyMTRlYjhmYjllOTZwLTEsCisgICAgMHgxLjUyZTFmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5NgorICAgIDB4MS45M2UyOTNiMjNhNmFhMWFlNTM3MzIxNGViOGZiOWU5NnAtMSwKKyAgICAtMHgxLjUyZTFmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIDB4MS44NjNhODNhOGQ5ODI2YzYxMzU1MDk0MDZlYmUwNWMwZnAtMSwKKyAgICAweDEuNjg4NWJhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMHgxLjg2M2E4M2E4ZDk4MjZjNjEzNTUwOTQwNmViZTA1YzBmcC0xLAorICAgIC0weDEuNjg4NWJhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgMHgxLjc3ZTAwNmM4N2NiYWRlZDY2ZWM1Yjk2MGM5M2M1NjhhcC0xLAorICAgIDB4MS43ZTI5N2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDAKKyAgICAweDEuNzdlMDA2Yzg3Y2JhZGVkNjZlYzViOTYwYzkzYzU2OGFwLTEsCisgICAgLTB4MS43ZTI5N2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAweDEuNjhkOWFkMjk3MzZjMTcwNGNhZWE2YTJkYjZlNzEyMjNwLTEsCisgICAgMHgxLjkzY2QzZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIDB4MS42OGQ5YWQyOTczNmMxNzA0Y2FlYTZhMmRiNmU3MTIyM3AtMSwKKyAgICAtMHgxLjkzY2QzZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIDB4MS41OTJlNTU3OGM5ZWM2NmFjY2VkZGQ0ZGM2Y2U2NmIyNnAtMSwKKyAgICAweDEuYTk3MXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIDB4MS41OTJlNTU3OGM5ZWM2NmFjY2VkZGQ0ZGM2Y2U2NmIyNnAtMSwKKyAgICAtMHgxLmE5NzFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAweDEuNDhlNTI5ZDQyOWU3MjFlYzhiYjFlMDE0Zjk0ZDQ4ZjFwLTEsCisgICAgMHgxLmJmMTRjMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIDB4MS40OGU1MjlkNDI5ZTcyMWVjOGJiMWUwMTRmOTRkNDhmMXAtMSwKKyAgICAtMHgxLmJmMTRjMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIDB4MS4zODA1OWM4MzNjNThlYTk3MGY3Yjk2ZDZhZGEzZDljNHAtMSwKKyAgICAweDEuZDRiODg0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA4CisgICAgMHgxLjM4MDU5YzgzM2M1OGVhOTcwZjdiOTZkNmFkYTNkOWM0cC0xLAorICAgIC0weDEuZDRiODg0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA5CisgICAgMHgxLjI2OTc2YjFiMTZkMTkwOTFjMDkyNTk3NjVjNGIzODcycC0xLAorICAgIDB4MS5lYTVjM2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAweDEuMjY5NzZiMWIxNmQxOTA5MWMwOTI1OTc2NWM0YjM4NzJwLTEsCisgICAgLTB4MS5lYTVjM2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTEKKyAgICAweDEuZThjNDA0MDY3OGQyZWY3MzYzMzNhNDUzN2ExMTEzYTFwLTIsCisgICAgMHgxLjEyYmQ5MnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMHgxLmU4YzQwNDA2NzhkMmVmNzM2MzMzYTQ1MzdhMTExM2ExcC0yLAorICAgIC0weDEuMTJiZDkycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTMKKyAgICAweDEuYTVhNGM4ZjU5OGZhMDA3ODk3MTMxNmViNDkwN2Y5N2JwLTIsCisgICAgMHgxLjI1N2IyNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgMHgxLmE1YTRjOGY1OThmYTAwNzg5NzEzMTZlYjQ5MDdmOTdicC0yLAorICAgIC0weDEuMjU3YjI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTUKKyAgICAweDEuNjA0MzViZWVkMTBjYTA1NzY5ZjBhM2Q4NmE1YTIwZjNwLTIsCisgICAgMHgxLjM4MzhiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDE2CisgICAgMHgxLjYwNDM1YmVlZDEwY2EwNTc2OWYwYTNkODZhNWEyMGYzcC0yLAorICAgIC0weDEuMzgzOGI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAweDEuMThmZWUwZmM0NWMzMWE3OWIyYjk0NzhiMWY3MmE5ZWJwLTIsCisgICAgMHgxLjRhZjY0OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgMHgxLjE4ZmVlMGZjNDVjMzFhNzliMmI5NDc4YjFmNzJhOWVicC0yLAorICAgIC0weDEuNGFmNjQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTkKKyAgICAweDEuYTA3MjI1MjA5MGMzMzgyODc2N2FlZTNlMDQwY2NkZGZwLTMsCisgICAgMHgxLjVkYjNkYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgMHgxLmEwNzIyNTIwOTBjMzM4Mjg3NjdhZWUzZTA0MGNjZGRmcC0zLAorICAgIC0weDEuNWRiM2RhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjEKKyAgICAweDEuMGNhYjc3MDNhOGU5ZGFjYzRhZDAxMTg4YjQ0M2NmZWVwLTMsCisgICAgMHgxLjcwNzE2Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDIyCisgICAgMHgxLjBjYWI3NzAzYThlOWRhY2M0YWQwMTE4OGI0NDNjZmVlcC0zLAorICAgIC0weDEuNzA3MTZjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAweDEuZGRkMTcxYTNjOTg1MWU3ODE5YjVlNGY2ZjkwZTc2M2RwLTUsCisgICAgMHgxLjgzMmVmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgMHgxLmRkZDE3MWEzYzk4NTFlNzgxOWI1ZTRmNmY5MGU3NjNkcC01LAorICAgIC0weDEuODMyZWZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAtMHgxLmU2NjhjYjE1NGVlYTY4YmJjN2Y4MTU0ZjQ2YjJlNTM2cC03LAorICAgIDB4MS45NWVjOTBwMAorICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIC0weDEuZTY2OGNiMTU0ZWVhNjhiYmM3ZjgxNTRmNDZiMmU1MzZwLTcsCisgICAgLTB4MS45NWVjOTBwMAorICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIC0weDEuNjgyZjJiYjg3YThmNTAxMTczNTA5NDE3NmM5YjZkYWNwLTQsCisgICAgMHgxLmE4YWExY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDI4CisgICAgLTB4MS42ODJmMmJiODdhOGY1MDExNzM1MDk0MTc2YzliNmRhY3AtNCwKKyAgICAtMHgxLmE4YWExY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDI5CisgICAgMHgxLjBjYjM0NDlhMGQwYTllMDY0M2Q0MWY0YTViMGY3ZGI3cC0xLAorICAgIDB4MS4wNGFmZjhwMAorICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIDB4MS4wY2IzNDQ5YTBkMGE5ZTA2NDNkNDFmNGE1YjBmN2RiN3AtMSwKKyAgICAtMHgxLjA0YWZmOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDMxCisgICAgMHgxLjBjYjIyNjk3MTUzYmNmMWY4YTYzYWNkZGQ5NmM1NGNicC0xLAorICAgIDB4MS4wNGIwYTBwMAorICB9LAorICB7IC8vIEVudHJ5IDQzMgorICAgIDB4MS4wY2IyMjY5NzE1M2JjZjFmOGE2M2FjZGRkOTZjNTRjYnAtMSwKKyAgICAtMHgxLjA0YjBhMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgMHgxLjBjYjEwODkzYTliNTQ3MWE0NDM1NjA3MmNiMzNiMzk1cC0xLAorICAgIDB4MS4wNGIxNDhwMAorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS4wY2IxMDg5M2E5YjU0NzFhNDQzNTYwNzJjYjMzYjM5NXAtMSwKKyAgICAtMHgxLjA0YjE0OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDM1CisgICAgMHgxLjBjYWZlYThmY2E3NzgxMjM2YTU3ZTViMWM4YWVkMzljcC0xLAorICAgIDB4MS4wNGIxZjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIDB4MS4wY2FmZWE4ZmNhNzc4MTIzNmE1N2U1YjFjOGFlZDM5Y3AtMSwKKyAgICAtMHgxLjA0YjFmMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDM3CisgICAgMHgxLjBjYWVjYzhiNzc4MmY4NjgyN2FmOTJiMGIyMzc0NTEwcC0xLAorICAgIDB4MS4wNGIyOThwMAorICB9LAorICB7IC8vIEVudHJ5IDQzOAorICAgIDB4MS4wY2FlY2M4Yjc3ODJmODY4MjdhZjkyYjBiMjM3NDUxMHAtMSwKKyAgICAtMHgxLjA0YjI5OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgMHgxLjBjYWRhZTg2YjBkODI4MTVkOGY2MzJlNjdjN2UxYTk5cC0xLAorICAgIDB4MS4wNGIzNDBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0MAorICAgIDB4MS4wY2FkYWU4NmIwZDgyODE1ZDhmNjMyZTY3YzdlMWE5OXAtMSwKKyAgICAtMHgxLjA0YjM0MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgMHgxLjBjYWM5MDgxNzY3NzhiNWEwY2JhZDIxZWU3NWNlNzY1cC0xLAorICAgIDB4MS4wNGIzZThwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIDB4MS4wY2FjOTA4MTc2Nzc4YjVhMGNiYWQyMWVlNzVjZTc2NXAtMSwKKyAgICAtMHgxLjA0YjNlOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgMHgxLjBjYWI3MjdiYzg2MTlkNjI4MzYxODc2ZTFmMzBhNjMzcC0xLAorICAgIDB4MS4wNGI0OTBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NAorICAgIDB4MS4wY2FiNzI3YmM4NjE5ZDYyODM2MTg3NmUxZjMwYTYzM3AtMSwKKyAgICAtMHgxLjA0YjQ5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgMHgxLjBjYWE1YjQ1MGE0MzI0ZjIwNGE1NTZiMDcyZGExMjRhcC0xLAorICAgIDB4MS4wNGI1MzRwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIDB4MS4wY2FhNWI0NTBhNDMyNGYyMDRhNTU2YjA3MmRhMTI0YXAtMSwKKyAgICAtMHgxLjA0YjUzNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDgKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDQ5CisgICAgMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ1MgorICAgIDB4MS5hZDAyYzhiOWNjOTNmNDQ4ZWY0ZWIwNjhhODg5MjJhM3AtMSwKKyAgICAweDEuMjc5YTcycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgMHgxLmFkMDJjOGI5Y2M5M2Y0NDhlZjRlYjA2OGE4ODkyMmEzcC0xLAorICAgIC0weDEuMjc5YTcycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgMHgxLmFkMDJjN2EyNThiZmIzNjJhYmJlODZmYjQ4ZjRlOThicC0xLAorICAgIDB4MS4yNzlhNzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAweDEuYWQwMmM3YTI1OGJmYjM2MmFiYmU4NmZiNDhmNGU5OGJwLTEsCisgICAgLTB4MS4yNzlhNzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAweDEuYWQwMmM2OGFlNGU5YzU3OWEwOGMwNGNlNTliZTQwMDJwLTEsCisgICAgMHgxLjI3OWE3NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIDB4MS5hZDAyYzY4YWU0ZTljNTc5YTA4YzA0Y2U1OWJlNDAwMnAtMSwKKyAgICAtMHgxLjI3OWE3NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1OAorICAgIC0weDEuNDhkMWM5ZTk4YjZjMDg3ODRmMTAwNDBmNDdhMTIxOTFwLTMsCisgICAgMHgxLmJiNjdhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgLTB4MS40OGQxYzllOThiNmMwODc4NGYxMDA0MGY0N2ExMjE5MXAtMywKKyAgICAtMHgxLmJiNjdhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgLTB4MS40OGQxZDliNDY3ZTM3OTU1MzM3MzExZGVjZDA5ZmM3NHAtMywKKyAgICAweDEuYmI2N2FlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjEKKyAgICAtMHgxLjQ4ZDFkOWI0NjdlMzc5NTUzMzczMTFkZWNkMDlmYzc0cC0zLAorICAgIC0weDEuYmI2N2FlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICAtMHgxLjQ4ZDFlOTdmNDQ1NWM2ZWFiMTA0ODAyMjIzOGIyYmQwcC0zLAorICAgIDB4MS5iYjY3YjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2MworICAgIC0weDEuNDhkMWU5N2Y0NDU1YzZlYWIxMDQ4MDIyMjM4YjJiZDBwLTMsCisgICAgLTB4MS5iYjY3YjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2NAorICAgIDB4MS5jZmM2ZDAxMWEwZTVkMGZjZWJiNTRiNWZlZDY3Mjk0MHAtMSwKKyAgICAweDEuYmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDY1CisgICAgMHgxLmNmYzZkMDExYTBlNWQwZmNlYmI1NGI1ZmVkNjcyOTQwcC0xLAorICAgIC0weDEuYmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgMHgxLmNmYzZjZmE1MmFkOWY2MmQ2ZDU0MjNjYTgzMzlhMDBhcC0xLAorICAgIDB4MS5jMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIDB4MS5jZmM2Y2ZhNTJhZDlmNjJkNmQ1NDIzY2E4MzM5YTAwYXAtMSwKKyAgICAtMHgxLmMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDY4CisgICAgMHgxLmNmYzZjZjM4YjRjZGE3NmMzYjA5YjE3ZTlkZWIxOWVhcC0xLAorICAgIDB4MS5jMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjkKKyAgICAweDEuY2ZjNmNmMzhiNGNkYTc2YzNiMDliMTdlOWRlYjE5ZWFwLTEsCisgICAgLTB4MS5jMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzAKKyAgICAweDEuOGJiMTA2ZWFjN2M3NWQzM2ZiYjE5NDQ2MzEzZWNjMmZwLTEsCisgICAgMHgxLjVmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3MQorICAgIDB4MS44YmIxMDZlYWM3Yzc1ZDMzZmJiMTk0NDYzMTNlY2MyZnAtMSwKKyAgICAtMHgxLjVmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3MgorICAgIDB4MS44YmIxMDVhNWRjOTAwNjE4ZjgwZmE1MWQzMDNjNjlwLTEsCisgICAgMHgxLjYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDczCisgICAgMHgxLjhiYjEwNWE1ZGM5MDA2MThmODBmYTUxZDMwM2M2OXAtMSwKKyAgICAtMHgxLjYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDc0CisgICAgMHgxLjhiYjEwNDYwZjE1NzIzNGNlZWM3ZDk2NDRhMWE3OGU1cC0xLAorICAgIDB4MS42MDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzUKKyAgICAweDEuOGJiMTA0NjBmMTU3MjM0Y2VlYzdkOTY0NGExYTc4ZTVwLTEsCisgICAgLTB4MS42MDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAweDEuN2VmNDhiOWE2ZmQ1YzI0ZjVlYzM5ODM5ZTE3MjliNzhwLTIsCisgICAgMHgxLjJmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDc3CisgICAgMHgxLjdlZjQ4YjlhNmZkNWMyNGY1ZWMzOTgzOWUxNzI5Yjc4cC0yLAorICAgIC0weDEuMmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzgKKyAgICAweDEuN2VmNDg0MmYwYmNjZDYwZDRhNTAxZGM4YmM0YjU3YjNwLTIsCisgICAgMHgxLjMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzkKKyAgICAweDEuN2VmNDg0MmYwYmNjZDYwZDRhNTAxZGM4YmM0YjU3YjNwLTIsCisgICAgLTB4MS4zMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDgwCisgICAgMHgxLjdlZjQ3Y2MzYTdiZGVkZjkyNTIwNzQyNjNkOGE0NTk2cC0yLAorICAgIDB4MS4zMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIDB4MS43ZWY0N2NjM2E3YmRlZGY5MjUyMDc0MjYzZDhhNDU5NnAtMiwKKyAgICAtMHgxLjMwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDgyCisgICAgLTB4MS44NjNlZjUwODViY2MzNThkMmFlODUyNWJmMzlmMGM0MHAtMSwKKyAgICAweDEuMzdmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODMKKyAgICAtMHgxLjg2M2VmNTA4NWJjYzM1OGQyYWU4NTI1YmYzOWYwYzQwcC0xLAorICAgIC0weDEuMzdmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODQKKyAgICAtMHgxLjg2M2VmYTM2MWRjMjUyYmNhMWVhZWVkMzk3NDliZWQ3cC0xLAorICAgIDB4MS4zOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDg1CisgICAgLTB4MS44NjNlZmEzNjFkYzI1MmJjYTFlYWVlZDM5NzQ5YmVkN3AtMSwKKyAgICAtMHgxLjM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODYKKyAgICAtMHgxLjg2M2VmZjYzZGZhMDBiZmM3NThiYWY0Njk0NjlkNzQxcC0xLAorICAgIDB4MS4zODAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ4NworICAgIC0weDEuODYzZWZmNjNkZmEwMGJmYzc1OGJhZjQ2OTQ2OWQ3NDFwLTEsCisgICAgLTB4MS4zODAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ4OAorICAgIDB4MS5mZWYyYjJkMGExMGUyNzM5YzU2NjkzNjQ4MGExNDc5YnAtMSwKKyAgICAweDEuMDY5YzhjcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDg5CisgICAgMHgxLmZlZjJiMmQwYTEwZTI3MzljNTY2OTM2NDgwYTE0NzlicC0xLAorICAgIC0weDEuMDY5YzhjcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgMHgxLmZiY2JlNjhkZDEwYmFkMGEyMjljY2JiNTgwY2M1NDM2cC0xLAorICAgIDB4MS4wNjljOGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAweDEuZmJjYmU2OGRkMTBiYWQwYTIyOWNjYmI1ODBjYzU0MzZwLTEsCisgICAgLTB4MS4wNjljOGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTIKKyAgICAweDEuZjY4ZWViZWY3MmU3ZjYxMjZiM2YzZGRlNjQ2YTc1NWNwLTEsCisgICAgMHgxLjg5ZWFkMnAtMworICB9LAorICB7IC8vIEVudHJ5IDQ5MworICAgIDB4MS5mNjhlZWJlZjcyZTdmNjEyNmIzZjNkZGU2NDZhNzU1Y3AtMSwKKyAgICAtMHgxLjg5ZWFkMnAtMworICB9LAorICB7IC8vIEVudHJ5IDQ5NAorICAgIDB4MS5lZjQxNDU5ZDJlOTBlYTFiN2ZhYWQ3ZmFiZDFmZDQ0NHAtMSwKKyAgICAweDEuMDY5YzhjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDk1CisgICAgMHgxLmVmNDE0NTlkMmU5MGVhMWI3ZmFhZDdmYWJkMWZkNDQ0cC0xLAorICAgIC0weDEuMDY5YzhjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgMHgxLmU1ZWFhMjNhMjdmZThkNjg5MGEzZWRhY2UxYzYxOTk4cC0xLAorICAgIDB4MS40ODQzYjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTcKKyAgICAweDEuZTVlYWEyM2EyN2ZlOGQ2ODkwYTNlZGFjZTFjNjE5OThwLTEsCisgICAgLTB4MS40ODQzYjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTgKKyAgICAweDEuZGE5NGQ0Yjk5YzNhOWE1ZTBkMWZjODZkNTMzNjlhODRwLTEsCisgICAgMHgxLjg5ZWFkNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ5OQorICAgIDB4MS5kYTk0ZDRiOTljM2E5YTVlMGQxZmM4NmQ1MzM2OWE4NHAtMSwKKyAgICAtMHgxLjg5ZWFkNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDUwMAorICAgIDB4MS5jZDRiYzlhZmMwMTIzMGIyZjk4MmY2OTY4ZGFiN2YwNXAtMSwKKyAgICAweDEuY2I5MWY4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTAxCisgICAgMHgxLmNkNGJjOWFmYzAxMjMwYjJmOTgyZjY5NjhkYWI3ZjA1cC0xLAorICAgIC0weDEuY2I5MWY4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgMHgxLmJlMWQ3YWRmMDc3ZGVmMmEzNjBmZWMyM2RiYmNlZjA5cC0xLAorICAgIDB4MS4wNjljOGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICAweDEuYmUxZDdhZGYwNzdkZWYyYTM2MGZlYzIzZGJiY2VmMDlwLTEsCisgICAgLTB4MS4wNjljOGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAweDEuYWQxOWUwODQ3ZDI1ZjNhYTE0MjI4OWRhYjU1N2JmOTZwLTEsCisgICAgMHgxLjI3NzAyMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDUwNQorICAgIDB4MS5hZDE5ZTA4NDdkMjVmM2FhMTQyMjg5ZGFiNTU3YmY5NnAtMSwKKyAgICAtMHgxLjI3NzAyMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDUwNgorICAgIDB4MS45YTUyZTA4YjE5MWJkNTU1MTJjODM2NTA3NGYxOTg3ZnAtMSwKKyAgICAweDEuNDg0M2IycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTA3CisgICAgMHgxLjlhNTJlMDhiMTkxYmQ1NTUxMmM4MzY1MDc0ZjE5ODdmcC0xLAorICAgIC0weDEuNDg0M2IycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLjg1ZGMzYmI3YzJlOWFiYjVjY2NiNmQ5NmQxMmQzOWM0cC0xLAorICAgIDB4MS42OTE3NDRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDkKKyAgICAweDEuODVkYzNiYjdjMmU5YWJiNWNjY2I2ZDk2ZDEyZDM5YzRwLTEsCisgICAgLTB4MS42OTE3NDRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTAKKyAgICAweDEuNmZjYjc4ZTFjZDY1ZDJlNGZkZTcxMThjYWFjNzlkNmRwLTEsCisgICAgMHgxLjg5ZWFkNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDUxMQorICAgIDB4MS42ZmNiNzhlMWNkNjVkMmU0ZmRlNzExOGNhYWM3OWQ2ZHAtMSwKKyAgICAtMHgxLjg5ZWFkNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDUxMgorICAgIDB4MS41ODM3Y2U0ZGM4MzVkNGE1NDU0ZWMwYTFiYjM5NDA4MXAtMSwKKyAgICAweDEuYWFiZTY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTEzCisgICAgMHgxLjU4MzdjZTRkYzgzNWQ0YTU0NTRlYzBhMWJiMzk0MDgxcC0xLAorICAgIC0weDEuYWFiZTY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgMHgxLjNmM2EwOTQyNzk2NmU5NTE4ODAyZGVlM2JmNDQzYTk1cC0xLAorICAgIDB4MS5jYjkxZmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTUKKyAgICAweDEuM2YzYTA5NDI3OTY2ZTk1MTg4MDJkZWUzYmY0NDNhOTVwLTEsCisgICAgLTB4MS5jYjkxZmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTYKKyAgICAweDEuMjRlYzczZjFhZWVmNDk0MGJiOGRhMTlhODJiYmM0OWZwLTEsCisgICAgMHgxLmVjNjU4Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDUxNworICAgIDB4MS4yNGVjNzNmMWFlZWY0OTQwYmI4ZGExOWE4MmJiYzQ5ZnAtMSwKKyAgICAtMHgxLmVjNjU4Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDUxOAorICAgIDB4MS4wOTZhYmI4NjJmOWJkNTUxNTk4MmMyODE4YzMzMmZmOXAtMSwKKyAgICAweDEuMDY5YzhlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAweDEuMDk2YWJiODYyZjliZDU1MTU5ODJjMjgxOGMzMzJmZjlwLTEsCisgICAgLTB4MS4wNjljOGVwMAorICB9LAorICB7IC8vIEVudHJ5IDUyMAorICAgIDB4MS5kOWEzOWMwZGRkYzY1NGM3MTdlMzAzNmRhNWRkNjg1Y3AtMiwKKyAgICAweDEuMTcwNjU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjEKKyAgICAweDEuZDlhMzljMGRkZGM2NTRjNzE3ZTMwMzZkYTVkZDY4NWNwLTIsCisgICAgLTB4MS4xNzA2NTZwMAorICB9LAorICB7IC8vIEVudHJ5IDUyMgorICAgIDB4MS45ZTdmODE4NDBjMGJiZDBmMWIxMzczMzA2MTA2MmQzNHAtMiwKKyAgICAweDEuMjc3MDFlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjMKKyAgICAweDEuOWU3ZjgxODQwYzBiYmQwZjFiMTM3MzMwNjEwNjJkMzRwLTIsCisgICAgLTB4MS4yNzcwMWVwMAorICB9LAorICB7IC8vIEVudHJ5IDUyNAorICAgIDB4MS42MWE3NWUyZGViNTk2NzMxYzhjZDQ1ZTNkOTc5NDUyNnAtMiwKKyAgICAweDEuMzdkOWU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAweDEuNjFhNzVlMmRlYjU5NjczMWM4Y2Q0NWUzZDk3OTQ1MjZwLTIsCisgICAgLTB4MS4zN2Q5ZTZwMAorICB9LAorICB7IC8vIEVudHJ5IDUyNgorICAgIDB4MS4yMzViMzM3YjA5MWNkZDhhYzA2MzkwYWJjNjgxNmI4MnAtMiwKKyAgICAweDEuNDg0M2FlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjcKKyAgICAweDEuMjM1YjMzN2IwOTFjZGQ4YWMwNjM5MGFiYzY4MTZiODJwLTIsCisgICAgLTB4MS40ODQzYWVwMAorICB9LAorICB7IC8vIEVudHJ5IDUyOAorICAgIDB4MS5jN2I5MTQ2ZDZkMTA4MjRmZjY1MmRjMzkwYmEyZDdmOXAtMywKKyAgICAweDEuNThhZDc2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjkKKyAgICAweDEuYzdiOTE0NmQ2ZDEwODI0ZmY2NTJkYzM5MGJhMmQ3ZjlwLTMsCisgICAgLTB4MS41OGFkNzZwMAorICB9LAorICB7IC8vIEVudHJ5IDUzMAorICAgIDB4MS40NmRjNWIyZjFkZTk3N2VmZmY3YzI3OGI1YWRiMmE3NXAtMywKKyAgICAweDEuNjkxNzNlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzEKKyAgICAweDEuNDZkYzViMmYxZGU5NzdlZmZmN2MyNzhiNWFkYjJhNzVwLTMsCisgICAgLTB4MS42OTE3M2VwMAorICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIDB4MS44OTRmOTNlZjQ5YzQ1NzU4MDBiYmQ2NDZhM2EzMWQyYXAtNCwKKyAgICAweDEuNzk4MTA2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzMKKyAgICAweDEuODk0ZjkzZWY0OWM0NTc1ODAwYmJkNjQ2YTNhMzFkMmFwLTQsCisgICAgLTB4MS43OTgxMDZwMAorICB9LAorICB7IC8vIEVudHJ5IDUzNAorICAgIDB4MS4wNjkxNjRlM2Y1Y2VlOTRkODY1ZmI1MmUzMTZkZmY2YnAtNSwKKyAgICAweDEuODllYWNlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAweDEuMDY5MTY0ZTNmNWNlZTk0ZDg2NWZiNTJlMzE2ZGZmNmJwLTUsCisgICAgLTB4MS44OWVhY2VwMAorICB9LAorICB7IC8vIEVudHJ5IDUzNgorICAgIC0weDEuMDY5MDkzZWVjMGVkMDY2ZWM4M2RkMDM0NDk4ZWY4YmZwLTUsCisgICAgMHgxLjlhNTQ5NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTM3CisgICAgLTB4MS4wNjkwOTNlZWMwZWQwNjZlYzgzZGQwMzQ0OThlZjhiZnAtNSwKKyAgICAtMHgxLjlhNTQ5NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgLTB4MS44OTRmMmJlMjk3OWRkOWNlZDgzY2NjNjBjZjQ5Y2Q0NHAtNCwKKyAgICAweDEuYWFiZTVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzkKKyAgICAtMHgxLjg5NGYyYmUyOTc5ZGQ5Y2VkODNjY2M2MGNmNDljZDQ0cC00LAorICAgIC0weDEuYWFiZTVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDAKKyAgICAtMHgxLjQ2ZGMyNzk2NzM1MTk1YTE1YzgwZTViNzE5ZTJmYzQycC0zLAorICAgIDB4MS5iYjI4MjZwMAorICB9LAorICB7IC8vIEVudHJ5IDU0MQorICAgIC0weDEuNDZkYzI3OTY3MzUxOTVhMTVjODBlNWI3MTllMmZjNDJwLTMsCisgICAgLTB4MS5iYjI4MjZwMAorICB9LAorICB7IC8vIEVudHJ5IDU0MgorICAgIC0weDEuYzdiOGUxNzhiN2U4YzAxZDlmMzIwNDY2Y2M3YTY4ZDRwLTMsCisgICAgMHgxLmNiOTFlZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQzCisgICAgLTB4MS5jN2I4ZTE3OGI3ZThjMDFkOWYzMjA0NjZjYzdhNjhkNHAtMywKKyAgICAtMHgxLmNiOTFlZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ0CisgICAgLTB4MS4yMzViMWE2ZDc2N2U0YjM2MmM2NDU3MWFjOTdiNGExY3AtMiwKKyAgICAweDEuZGJmYmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDUKKyAgICAtMHgxLjIzNWIxYTZkNzY3ZTRiMzYyYzY0NTcxYWM5N2I0YTFjcC0yLAorICAgIC0weDEuZGJmYmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDYKKyAgICAtMHgxLjYxYTc0NWE3N2I3ZTgzYzJmOGEyZjliMDkxZTg5YWFhcC0yLAorICAgIDB4MS5lYzY1N2VwMAorICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIC0weDEuNjFhNzQ1YTc3YjdlODNjMmY4YTJmOWIwOTFlODlhYWFwLTIsCisgICAgLTB4MS5lYzY1N2VwMAorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIC0weDEuOWU3ZjY5OWU4YjlhYWY4ZWQ1MWM3MWM4ZjczYjBiNzRwLTIsCisgICAgMHgxLmZjY2Y0NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ5CisgICAgLTB4MS45ZTdmNjk5ZThiOWFhZjhlZDUxYzcxYzhmNzNiMGI3NHAtMiwKKyAgICAtMHgxLmZjY2Y0NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUwCisgICAgLTB4MS5kOWEzOGJmYTMxOTViYTFjYWE3ZmI2OWJjMWQwNGU0MnAtMiwKKyAgICAweDEuMDY5Yzg4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTEKKyAgICAtMHgxLmQ5YTM4YmZhMzE5NWJhMWNhYTdmYjY5YmMxZDA0ZTQycC0yLAorICAgIC0weDEuMDY5Yzg4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTIKKyAgICAtMHgxLjA5NmFiM2M1NWM5MWYzNmUyMzU5ZWQxYzVhODM0MmRmcC0xLAorICAgIDB4MS4wZWQxNmNwMQorICB9LAorICB7IC8vIEVudHJ5IDU1MworICAgIC0weDEuMDk2YWIzYzU1YzkxZjM2ZTIzNTllZDFjNWE4MzQyZGZwLTEsCisgICAgLTB4MS4wZWQxNmNwMQorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIC0weDEuMjRlYzZjODIwNmU3NDQzMjJkOTlmNDdlOWU0MWJlY2VwLTEsCisgICAgMHgxLjE3MDY1MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTU1CisgICAgLTB4MS4yNGVjNmM4MjA2ZTc0NDMyMmQ5OWY0N2U5ZTQxYmVjZXAtMSwKKyAgICAtMHgxLjE3MDY1MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTU2CisgICAgLTB4MS4zZjNhMDA5YjgyYjViODIzNGUxMjk2ZGQ3M2NmZjQ5ZHAtMSwKKyAgICAweDEuMWYzYjM0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTcKKyAgICAtMHgxLjNmM2EwMDliODJiNWI4MjM0ZTEyOTZkZDczY2ZmNDlkcC0xLAorICAgIC0weDEuMWYzYjM0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTgKKyAgICAtMHgxLjU4MzdjNGExODRjY2Y3ZWQ1N2MxODlmMmFkZGYzMmM1cC0xLAorICAgIDB4MS4yNzcwMThwMQorICB9LAorICB7IC8vIEVudHJ5IDU1OQorICAgIC0weDEuNTgzN2M0YTE4NGNjZjdlZDU3YzE4OWYyYWRkZjMyYzVwLTEsCisgICAgLTB4MS4yNzcwMThwMQorICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIC0weDEuNmZjYjZlNjY4NWU3MmZiNDA3NGU3MGNkMzE2MmQzYmFwLTEsCisgICAgMHgxLjJmYTRmY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNTYxCisgICAgLTB4MS42ZmNiNmU2Njg1ZTcyZmI0MDc0ZTcwY2QzMTYyZDNiYXAtMSwKKyAgICAtMHgxLjJmYTRmY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNTYyCisgICAgLTB4MS44NWRjMzBhNzlmMjY3NTRhYjEzNzAzMzhlZTdiZmQxMXAtMSwKKyAgICAweDEuMzdkOWUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjMKKyAgICAtMHgxLjg1ZGMzMGE3OWYyNjc1NGFiMTM3MDMzOGVlN2JmZDExcC0xLAorICAgIC0weDEuMzdkOWUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjQKKyAgICAtMHgxLjlhNTJkNTIzYjE1MzJlNGVkNDc3ZTI3ZGM2MDUxYzEycC0xLAorICAgIDB4MS40MDBlYzRwMQorICB9LAorICB7IC8vIEVudHJ5IDU2NQorICAgIC0weDEuOWE1MmQ1MjNiMTUzMmU0ZWQ0NzdlMjdkYzYwNTFjMTJwLTEsCisgICAgLTB4MS40MDBlYzRwMQorICB9LAorICB7IC8vIEVudHJ5IDU2NgorICAgIC0weDEuYWQxOWQ1MDY2NGFiZjBjMDE0MTEzN2QyY2E1MDlmMjFwLTEsCisgICAgMHgxLjQ4NDNhOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTY3CisgICAgLTB4MS5hZDE5ZDUwNjY0YWJmMGMwMTQxMTM3ZDJjYTUwOWYyMXAtMSwKKyAgICAtMHgxLjQ4NDNhOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTY4CisgICAgLTB4MS5iZTFkNmY4ZDUxN2RiNWMyY2Y3ZGUwZmFmMDgwOGQzMHAtMSwKKyAgICAweDEuNTA3ODhjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjkKKyAgICAtMHgxLmJlMWQ2ZjhkNTE3ZGI1YzJjZjdkZTBmYWYwODA4ZDMwcC0xLAorICAgIC0weDEuNTA3ODhjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzAKKyAgICAtMHgxLmNkNGJiZWNmN2YyNzA1ZDRmZDAwZGQ0NjM3ODBmNDVlcC0xLAorICAgIDB4MS41OGFkNzBwMQorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIC0weDEuY2Q0YmJlY2Y3ZjI3MDVkNGZkMDBkZDQ2Mzc4MGY0NWVwLTEsCisgICAgLTB4MS41OGFkNzBwMQorICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIC0weDEuZGE5NGNhOTE1ZGEzY2RkMWZmZjgzOWQ4NWVlYzM5ZTJwLTEsCisgICAgMHgxLjYwZTI1NHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTczCisgICAgLTB4MS5kYTk0Y2E5MTVkYTNjZGQxZmZmODM5ZDg1ZWVjMzllMnAtMSwKKyAgICAtMHgxLjYwZTI1NHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTc0CisgICAgLTB4MS5lNWVhOTkxMTZiMzkzNjFhYzkyNmRkOWZkYzIwODlkMXAtMSwKKyAgICAweDEuNjkxNzM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzUKKyAgICAtMHgxLmU1ZWE5OTExNmIzOTM2MWFjOTI2ZGQ5ZmRjMjA4OWQxcC0xLAorICAgIC0weDEuNjkxNzM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzYKKyAgICAtMHgxLmVmNDEzZGJiZGEyODU5ZmZiMGQxYWI4NDM0MmZkMjM1cC0xLAorICAgIDB4MS43MTRjMWNwMQorICB9LAorICB7IC8vIEVudHJ5IDU3NworICAgIC0weDEuZWY0MTNkYmJkYTI4NTlmZmIwZDFhYjg0MzQyZmQyMzVwLTEsCisgICAgLTB4MS43MTRjMWNwMQorICB9LAorICB7IC8vIEVudHJ5IDU3OAorICAgIC0weDEuZjY4ZWU1YjViZjM1NmIxMDIzMDk0NGExOGU3MDkyNWNwLTEsCisgICAgMHgxLjc5ODFwMQorICB9LAorICB7IC8vIEVudHJ5IDU3OQorICAgIC0weDEuZjY4ZWU1YjViZjM1NmIxMDIzMDk0NGExOGU3MDkyNWNwLTEsCisgICAgLTB4MS43OTgxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODAKKyAgICAtMHgxLmZiY2JlMjMyOTZmYzYxYjk2ZjM4MmYzNWVhMTVjNzY4cC0xLAorICAgIDB4MS44MWI1ZTRwMQorICB9LAorICB7IC8vIEVudHJ5IDU4MQorICAgIC0weDEuZmJjYmUyMzI5NmZjNjFiOTZmMzgyZjM1ZWExNWM3NjhwLTEsCisgICAgLTB4MS44MWI1ZTRwMQorICB9LAorICB7IC8vIEVudHJ5IDU4MgorICAgIC0weDEuZmVmMmIwODk0MzE5N2NkM2E4YmE4NjEwOTUyMjdjNDhwLTEsCisgICAgMHgxLjg5ZWFjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTgzCisgICAgLTB4MS5mZWYyYjA4OTQzMTk3Y2QzYThiYTg2MTA5NTIyN2M0OHAtMSwKKyAgICAtMHgxLjg5ZWFjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTg0CisgICAgMHgxLmVmNDE0ODlmYzJmZTgwMWE2ZmM4YWU3OTE0MzhlYjc4cC0xLAorICAgIC0weDEuODFiNWVlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODUKKyAgICAweDEuZWY0MTQ4OWZjMmZlODAxYTZmYzhhZTc5MTQzOGViNzhwLTEsCisgICAgMHgxLjgxYjVlZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNTg2CisgICAgMHgxLmJlMWQ4NDllYzY0OWI3OTczMjBlOTg1ZDBiODJhZTg1cC0xLAorICAgIC0weDEuNzE0YzI2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODcKKyAgICAweDEuYmUxZDg0OWVjNjQ5Yjc5NzMyMGU5ODVkMGI4MmFlODVwLTEsCisgICAgMHgxLjcxNGMyNnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTg4CisgICAgMHgxLjZmY2I4YzQ0YmQzMGRkNjY4MTQ4NjA1OTY5YjFjMTYxcC0xLAorICAgIC0weDEuNjBlMjVlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODkKKyAgICAweDEuNmZjYjhjNDRiZDMwZGQ2NjgxNDg2MDU5NjliMWMxNjFwLTEsCisgICAgMHgxLjYwZTI1ZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNTkwCisgICAgMHgxLjA5NmFkODdjMzI2NjIyYzQyZGUzNGY5MjgxNGNmYTg0cC0xLAorICAgIC0weDEuNTA3ODk2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTEKKyAgICAweDEuMDk2YWQ4N2MzMjY2MjJjNDJkZTM0ZjkyODE0Y2ZhODRwLTEsCisgICAgMHgxLjUwNzg5NnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTkyCisgICAgMHgxLjIzNWI3NDZhMmEyZWZmMmJmNjQwZGQ4YzA0ZDM1YTVicC0yLAorICAgIC0weDEuNDAwZWNlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTMKKyAgICAweDEuMjM1Yjc0NmEyYTJlZmYyYmY2NDBkZDhjMDRkMzVhNWJwLTIsCisgICAgMHgxLjQwMGVjZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNTk0CisgICAgMHgxLjA2OTM4MjdiNDZjZWUzYjY2MWFjMTcxMTRiNWZlMGZicC01LAorICAgIC0weDEuMmZhNTA2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTUKKyAgICAweDEuMDY5MzgyN2I0NmNlZTNiNjYxYWMxNzExNGI1ZmUwZmJwLTUsCisgICAgMHgxLjJmYTUwNnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTk2CisgICAgLTB4MS5jN2I4NWQ2NjhlMmFiY2M0NjU0MmNhODUyN2YwYjgwMXAtMywKKyAgICAtMHgxLjFmM2IzZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNTk3CisgICAgLTB4MS5jN2I4NWQ2NjhlMmFiY2M0NjU0MmNhODUyN2YwYjgwMXAtMywKKyAgICAweDEuMWYzYjNlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTgKKyAgICAtMHgxLmQ5YTM0OGQ0ZjQzNjNiYTQ1NjIxMTBkYjAxZWU4NGU4cC0yLAorICAgIC0weDEuMGVkMTc2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTkKKyAgICAtMHgxLmQ5YTM0OGQ0ZjQzNjNiYTQ1NjIxMTBkYjAxZWU4NGU4cC0yLAorICAgIDB4MS4wZWQxNzZwMgorICB9LAorICB7IC8vIEVudHJ5IDYwMAorICAgIC0weDEuNTgzN2FlODU2OWM5NTg0NmU2MTY0ZDk2MzY1NDYxMjBwLTEsCisgICAgLTB4MS5mY2NmNWFwMQorICB9LAorICB7IC8vIEVudHJ5IDYwMQorICAgIC0weDEuNTgzN2FlODU2OWM5NTg0NmU2MTY0ZDk2MzY1NDYxMjBwLTEsCisgICAgMHgxLmZjY2Y1YXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjAyCisgICAgLTB4MS5hZDE5YzkxODg4MzAwMGIwYjcwMmVjMDgwY2YwMTIyZXAtMSwKKyAgICAtMHgxLmRiZmJjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjAzCisgICAgLTB4MS5hZDE5YzkxODg4MzAwMGIwYjcwMmVjMDgwY2YwMTIyZXAtMSwKKyAgICAweDEuZGJmYmM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDQKKyAgICAtMHgxLmU1ZWE5NGIyY2YwN2FkZDNkMGQ5NWFiM2EzMGFkNGFicC0xLAorICAgIC0weDEuYmIyODM2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDUKKyAgICAtMHgxLmU1ZWE5NGIyY2YwN2FkZDNkMGQ5NWFiM2EzMGFkNGFicC0xLAorICAgIDB4MS5iYjI4MzZwMQorICB9LAorICB7IC8vIEVudHJ5IDYwNgorICAgIC0weDEuZmVmMmIwMjkwODU1OWY5MmRlODkyZDI0MGEyYjBiNDlwLTEsCisgICAgLTB4MS45YTU0YTRwMQorICB9LAorICB7IC8vIEVudHJ5IDYwNworICAgIC0weDEuZmVmMmIwMjkwODU1OWY5MmRlODkyZDI0MGEyYjBiNDlwLTEsCisgICAgMHgxLjlhNTRhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjA4CisgICAgLTB4MS5mNjhlZjM3OTJlNTkyYzNjZWZiY2UxZDVkZWQ2NGE5MnAtMSwKKyAgICAtMHgxLjc5ODExMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjA5CisgICAgLTB4MS5mNjhlZjM3OTJlNTkyYzNjZWZiY2UxZDVkZWQ2NGE5MnAtMSwKKyAgICAweDEuNzk4MTEycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTAKKyAgICAtMHgxLmNkNGJkYTk0M2VlYTEzNjMwZjhlNTA4Zjg3NDRmMmYycC0xLAorICAgIC0weDEuNThhZDgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTEKKyAgICAtMHgxLmNkNGJkYTk0M2VlYTEzNjMwZjhlNTA4Zjg3NDRmMmYycC0xLAorICAgIDB4MS41OGFkODBwMQorICB9LAorICB7IC8vIEVudHJ5IDYxMgorICAgIC0weDEuODVkYzU0ZjQ5ZjMyNGJkZmM3MWQ1NzQ5NDgzYjMzMThwLTEsCisgICAgLTB4MS4zN2Q5ZWVwMQorICB9LAorICB7IC8vIEVudHJ5IDYxMworICAgIC0weDEuODVkYzU0ZjQ5ZjMyNGJkZmM3MWQ1NzQ5NDgzYjMzMThwLTEsCisgICAgMHgxLjM3ZDllZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjE0CisgICAgLTB4MS4yNGVjOTNlMDRkNGJkYjU0ZTIwYmVhZjM4MzUxOWFmOHAtMSwKKyAgICAtMHgxLjE3MDY1Y3AxCisgIH0sCisgIHsgLy8gRW50cnkgNjE1CisgICAgLTB4MS4yNGVjOTNlMDRkNGJkYjU0ZTIwYmVhZjM4MzUxOWFmOHAtMSwKKyAgICAweDEuMTcwNjVjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTYKKyAgICAtMHgxLjYxYTc5ODNkNGMxNmM0NTFiNjhiZjJmNWI3MGYzYjZhcC0yLAorICAgIC0weDEuZWM2NTk0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTcKKyAgICAtMHgxLjYxYTc5ODNkNGMxNmM0NTFiNjhiZjJmNWI3MGYzYjZhcC0yLAorICAgIDB4MS5lYzY1OTRwMAorICB9LAorICB7IC8vIEVudHJ5IDYxOAorICAgIC0weDEuODk1MDRhOGRlNmM5ZWNhYzY2M2U2NzU4M2NhYjQ3ZThwLTQsCisgICAgLTB4MS5hYWJlNzBwMAorICB9LAorICB7IC8vIEVudHJ5IDYxOQorICAgIC0weDEuODk1MDRhOGRlNmM5ZWNhYzY2M2U2NzU4M2NhYjQ3ZThwLTQsCisgICAgMHgxLmFhYmU3MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjIwCisgICAgMHgxLjQ2ZGJlYzllYTNhNWYwOGJhNzNhYTY5ZTdlMjJkZTFjcC0zLAorICAgIC0weDEuNjkxNzRjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICAweDEuNDZkYmVjOWVhM2E1ZjA4YmE3M2FhNjllN2UyMmRlMWNwLTMsCisgICAgMHgxLjY5MTc0Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjIyCisgICAgMHgxLjllN2Y1Y2YwNzVkMWVjNGVmNjljOWM2N2I2MmMyN2NicC0yLAorICAgIC0weDEuMjc3MDI4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjMKKyAgICAweDEuOWU3ZjVjZjA3NWQxZWM0ZWY2OWM5YzY3YjYyYzI3Y2JwLTIsCisgICAgMHgxLjI3NzAyOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjI0CisgICAgMHgxLjNmMzlmY2MwMTc2NTNkMjYzNjgzN2E1NWZkZjZkMmQ0cC0xLAorICAgIC0weDEuY2I5MjBhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjI1CisgICAgMHgxLjNmMzlmY2MwMTc2NTNkMjYzNjgzN2E1NWZkZjZkMmQ0cC0xLAorICAgIDB4MS5jYjkyMGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjYKKyAgICAweDEuOWE1MmQ1YzcwMGRhYTNkYzhjZjhmNWE3MWYyZGYyODlwLTEsCisgICAgLTB4MS40ODQzYzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjcKKyAgICAweDEuOWE1MmQ1YzcwMGRhYTNkYzhjZjhmNWE3MWYyZGYyODlwLTEsCisgICAgMHgxLjQ4NDNjNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYyOAorICAgIDB4MS5kYTk0Y2QzODNkZDdhM2I5MWEyZmM4OGZmOTA1YTZhMHAtMSwKKyAgICAtMHgxLjg5ZWFmY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDYyOQorICAgIDB4MS5kYTk0Y2QzODNkZDdhM2I5MWEyZmM4OGZmOTA1YTZhMHAtMSwKKyAgICAweDEuODllYWZjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjMwCisgICAgMHgxLmZiY2JlM2RlNThlNjZjMzI4M2JjODEwZDE2YzQ1ODMzcC0xLAorICAgIC0weDEuMDY5Y2UwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjMxCisgICAgMHgxLmZiY2JlM2RlNThlNjZjMzI4M2JjODEwZDE2YzQ1ODMzcC0xLAorICAgIDB4MS4wNjljZTBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzIKKyAgICAweDEuZmJjYmU5M2Q0ODU2M2Q1MWI2ZTlkNmVmZGI2MjQ5NWNwLTEsCisgICAgMHgxLjA2OWMzOHAtMworICB9LAorICB7IC8vIEVudHJ5IDYzMworICAgIDB4MS5mYmNiZTkzZDQ4NTYzZDUxYjZlOWQ2ZWZkYjYyNDk1Y3AtMSwKKyAgICAtMHgxLjA2OWMzOHAtMworICB9LAorICB7IC8vIEVudHJ5IDYzNAorICAgIDB4MS5kYTk0ZGNmYjFjZDE1ODUzY2U4NDhmZmIwMjY0YWQwOHAtMSwKKyAgICAweDEuODllYWE4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjM1CisgICAgMHgxLmRhOTRkY2ZiMWNkMTU4NTNjZTg0OGZmYjAyNjRhZDA4cC0xLAorICAgIC0weDEuODllYWE4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjM2CisgICAgMHgxLjlhNTJlZWU1ZTM1Mzc3ZDU1NGFjZTg4MWJkYzQ3MjVicC0xLAorICAgIDB4MS40ODQzOWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzcKKyAgICAweDEuOWE1MmVlZTVlMzUzNzdkNTU0YWNlODgxYmRjNDcyNWJwLTEsCisgICAgLTB4MS40ODQzOWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzgKKyAgICAweDEuM2YzYTFkOTY1N2ZmNmFhNDk4YzQ2ZjZmYWFmMDNiOTBwLTEsCisgICAgMHgxLmNiOTFlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYzOQorICAgIDB4MS4zZjNhMWQ5NjU3ZmY2YWE0OThjNDZmNmZhYWYwM2I5MHAtMSwKKyAgICAtMHgxLmNiOTFlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY0MAorICAgIDB4MS45ZTdmYTYxN2ExYTNhNDAwYTdmNTlhYTg3OTA4OGUzMXAtMiwKKyAgICAweDEuMjc3MDE0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDEKKyAgICAweDEuOWU3ZmE2MTdhMWEzYTQwMGE3ZjU5YWE4NzkwODhlMzFwLTIsCisgICAgLTB4MS4yNzcwMTRwMAorICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIDB4MS40NmRjOGE5MTliMjc4NDBjZGE2ZTE4YTA3OWRhNDU5Y3AtMywKKyAgICAweDEuNjkxNzM4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDMKKyAgICAweDEuNDZkYzhhOTE5YjI3ODQwY2RhNmUxOGEwNzlkYTQ1OWNwLTMsCisgICAgLTB4MS42OTE3MzhwMAorICB9LAorICB7IC8vIEVudHJ5IDY0NAorICAgIC0weDEuODk0ZjBjMDg3MjQxNTY2M2I3ZjllNGU0ODAxZGVhZjBwLTQsCisgICAgMHgxLmFhYmU1Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjQ1CisgICAgLTB4MS44OTRmMGMwODcyNDE1NjYzYjdmOWU0ZTQ4MDFkZWFmMHAtNCwKKyAgICAtMHgxLmFhYmU1Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjQ2CisgICAgLTB4MS42MWE3NGQyOTc3NGFlNGUzYmM1NTMzYTJlYTA4YTE0YXAtMiwKKyAgICAweDEuZWM2NTgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDcKKyAgICAtMHgxLjYxYTc0ZDI5Nzc0YWU0ZTNiYzU1MzNhMmVhMDhhMTRhcC0yLAorICAgIC0weDEuZWM2NTgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDgKKyAgICAtMHgxLjI0ZWM3MzExYmQ3YjIyNTVmOWI4OTBiM2ZmNTg5OWY0cC0xLAorICAgIDB4MS4xNzA2NTJwMQorICB9LAorICB7IC8vIEVudHJ5IDY0OQorICAgIC0weDEuMjRlYzczMTFiZDdiMjI1NWY5Yjg5MGIzZmY1ODk5ZjRwLTEsCisgICAgLTB4MS4xNzA2NTJwMQorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIC0weDEuODVkYzNiMDZjNDM1ZjUyNGM4NzNkOWI1ZWJhM2RlZjhwLTEsCisgICAgMHgxLjM3ZDllNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjUxCisgICAgLTB4MS44NWRjM2IwNmM0MzVmNTI0Yzg3M2Q5YjVlYmEzZGVmOHAtMSwKKyAgICAtMHgxLjM3ZDllNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjUyCisgICAgLTB4MS5jZDRiYzkzOTQ3ZTg2NjcxYWM3ZjBlYWNkOTUyMTM3N3AtMSwKKyAgICAweDEuNThhZDc2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTMKKyAgICAtMHgxLmNkNGJjOTM5NDdlODY2NzFhYzdmMGVhY2Q5NTIxMzc3cC0xLAorICAgIC0weDEuNThhZDc2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTQKKyAgICAtMHgxLmY2OGVlYmQzYjhmMTJmOTQzM2U2ZDcyMjQ5ODljMTBlcC0xLAorICAgIDB4MS43OTgxMDhwMQorICB9LAorICB7IC8vIEVudHJ5IDY1NQorICAgIC0weDEuZjY4ZWViZDNiOGYxMmY5NDMzZTZkNzIyNDk4OWMxMGVwLTEsCisgICAgLTB4MS43OTgxMDhwMQorICB9LAorICB7IC8vIEVudHJ5IDY1NgorICAgIC0weDEuZmVmMmIyYjkxZTQwMDIxYTJmZWU3NGZjNjE4MTIxNTdwLTEsCisgICAgMHgxLjlhNTQ5YXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjU3CisgICAgLTB4MS5mZWYyYjJiOTFlNDAwMjFhMmZlZTc0ZmM2MTgxMjE1N3AtMSwKKyAgICAtMHgxLjlhNTQ5YXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjU4CisgICAgLTB4MS5lNWVhYTE0ZDg2MTY4YjY5OTE4YzIyZjM3MTZhNjdlYXAtMSwKKyAgICAweDEuYmIyODJjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTkKKyAgICAtMHgxLmU1ZWFhMTRkODYxNjhiNjk5MThjMjJmMzcxNmE2N2VhcC0xLAorICAgIC0weDEuYmIyODJjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjAKKyAgICAtMHgxLmFkMTlkZWVhZDBlYWUyZjcyZDA0MTY1ZTA5ZTRhNDNkcC0xLAorICAgIDB4MS5kYmZiYmVwMQorICB9LAorICB7IC8vIEVudHJ5IDY2MQorICAgIC0weDEuYWQxOWRlZWFkMGVhZTJmNzJkMDQxNjVlMDllNGE0M2RwLTEsCisgICAgLTB4MS5kYmZiYmVwMQorICB9LAorICB7IC8vIEVudHJ5IDY2MgorICAgIC0weDEuNTgzN2NjMjFkZGE0NGYzYWI3ZmQ5NmY1N2MwMTRlMTlwLTEsCisgICAgMHgxLmZjY2Y1MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjYzCisgICAgLTB4MS41ODM3Y2MyMWRkYTQ0ZjNhYjdmZDk2ZjU3YzAxNGUxOXAtMSwKKyAgICAtMHgxLmZjY2Y1MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjY0CisgICAgLTB4MS5kOWEzOWRmMjA3MTM5Zjk5ZWJlOWI1NmRhZmIyMzRiN3AtMiwKKyAgICAweDEuMGVkMTcwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjUKKyAgICAtMHgxLmQ5YTM5ZGYyMDcxMzlmOTllYmU5YjU2ZGFmYjIzNGI3cC0yLAorICAgIC0weDEuMGVkMTcwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjYKKyAgICAtMHgxLmM3YjkxODk2MzgxMjhiYzBhZTMzZmRmMjcyOWNjOTg3cC0zLAorICAgIDB4MS4xZjNiMzhwMgorICB9LAorICB7IC8vIEVudHJ5IDY2NworICAgIC0weDEuYzdiOTE4OTYzODEyOGJjMGFlMzNmZGYyNzI5Y2M5ODdwLTMsCisgICAgLTB4MS4xZjNiMzhwMgorICB9LAorICB7IC8vIEVudHJ5IDY2OAorICAgIDB4MS4wNjkwODJlMDRiMjVlOWQyZWE5ZTI2M2I1MGQwOGIzNHAtNSwKKyAgICAweDEuMmZhNXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjY5CisgICAgMHgxLjA2OTA4MmUwNGIyNWU5ZDJlYTllMjYzYjUwZDA4YjM0cC01LAorICAgIC0weDEuMmZhNXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjcwCisgICAgMHgxLjIzNWIxODYxZjIxYWE4NmRjZTI1OWU0ZTViNGVmMzk1cC0yLAorICAgIDB4MS40MDBlYzhwMgorICB9LAorICB7IC8vIEVudHJ5IDY3MQorICAgIDB4MS4yMzViMTg2MWYyMWFhODZkY2UyNTllNGU1YjRlZjM5NXAtMiwKKyAgICAtMHgxLjQwMGVjOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjcyCisgICAgMHgxLjA5NmFhZjcwMzQxNDg1MDYyZjQ0M2M4MGE5MGEzYmUzcC0xLAorICAgIDB4MS41MDc4OTBwMgorICB9LAorICB7IC8vIEVudHJ5IDY3MworICAgIDB4MS4wOTZhYWY3MDM0MTQ4NTA2MmY0NDNjODBhOTBhM2JlM3AtMSwKKyAgICAtMHgxLjUwNzg5MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjc0CisgICAgMHgxLjZmY2I2YWUwMzEwN2JlNDU4ZDA3MzYxMzcxZWZhYmI0cC0xLAorICAgIDB4MS42MGUyNThwMgorICB9LAorICB7IC8vIEVudHJ5IDY3NQorICAgIDB4MS42ZmNiNmFlMDMxMDdiZTQ1OGQwNzM2MTM3MWVmYWJiNHAtMSwKKyAgICAtMHgxLjYwZTI1OHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjc2CisgICAgMHgxLmJlMWQ2ZDEwZDVjOGNlZWI4YmY5YWViN2E5ZjY5MGI5cC0xLAorICAgIDB4MS43MTRjMjBwMgorICB9LAorICB7IC8vIEVudHJ5IDY3NworICAgIDB4MS5iZTFkNmQxMGQ1YzhjZWViOGJmOWFlYjdhOWY2OTBiOXAtMSwKKyAgICAtMHgxLjcxNGMyMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjc4CisgICAgMHgxLmVmNDEzYzcyZDk4OGJiNTM5Mzc5NzVlNGZkNGZjYzdhcC0xLAorICAgIDB4MS44MWI1ZThwMgorICB9LAorICB7IC8vIEVudHJ5IDY3OQorICAgIDB4MS5lZjQxM2M3MmQ5ODhiYjUzOTM3OTc1ZTRmZDRmY2M3YXAtMSwKKyAgICAtMHgxLjgxYjVlOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjgwCisgICAgMHgxLmZmMGZkMmNiNWE5MjI4Y2ZhMWUwMTYwNWQwNjI2Yzg0cC0xLAorICAgIDB4MS5lZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODEKKyAgICAweDEuZmYwZmQyY2I1YTkyMjhjZmExZTAxNjA1ZDA2MjZjODRwLTEsCisgICAgLTB4MS5lZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODIKKyAgICAweDEuZmYwZmQyYzk2YWRmYmFkNWY5MDRhNzFiMmQyMTBhMmFwLTEsCisgICAgMHgxLmYwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjgzCisgICAgMHgxLmZmMGZkMmM5NmFkZmJhZDVmOTA0YTcxYjJkMjEwYTJhcC0xLAorICAgIC0weDEuZjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODQKKyAgICAweDEuZmYwZmQyYzc3YjJkNGFkZDQwNTY2ZWM1YWEyNGZjNmVwLTEsCisgICAgMHgxLmYwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDY4NQorICAgIDB4MS5mZjBmZDJjNzdiMmQ0YWRkNDA1NjZlYzVhYTI0ZmM2ZXAtMSwKKyAgICAtMHgxLmYwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIDB4MS5mYzIxMDA1ZDIxNmE4OWRlNTViMTkyMDk2ZmM2YjdiYXAtMSwKKyAgICAweDEuZjdmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjg3CisgICAgMHgxLmZjMjEwMDVkMjE2YTg5ZGU1NWIxOTIwOTZmYzZiN2JhcC0xLAorICAgIC0weDEuZjdmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjg4CisgICAgMHgxLmZjMjEwMDU1NDY3ZmU1OGEyMDE5MzM5OWIzYmMwZGQycC0xLAorICAgIDB4MS5mOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDY4OQorICAgIDB4MS5mYzIxMDA1NTQ2N2ZlNThhMjAxOTMzOTliM2JjMGRkMnAtMSwKKyAgICAtMHgxLmY4cC00CisgIH0sCisgIHsgLy8gRW50cnkgNjkwCisgICAgMHgxLmZjMjEwMDRkNmI5NTM5NDU2NjdmODAwZmY4MWRlMGVicC0xLAorICAgIDB4MS5mODAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTEKKyAgICAweDEuZmMyMTAwNGQ2Yjk1Mzk0NTY2N2Y4MDBmZjgxZGUwZWJwLTEsCisgICAgLTB4MS5mODAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTIKKyAgICAweDEuZjk0OTg0YzZmZGYxYmU2MTY4NTA5ZmYxZTM1ZjYyZGVwLTEsCisgICAgMHgxLjRiZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDY5MworICAgIDB4MS5mOTQ5ODRjNmZkZjFiZTYxNjg1MDlmZjFlMzVmNjJkZXAtMSwKKyAgICAtMHgxLjRiZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDY5NAorICAgIDB4MS5mOTQ5ODRiMjU1MmUxOTQxZWM3NjZjNmE4MmVjZTRhM3AtMSwKKyAgICAweDEuNGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTUKKyAgICAweDEuZjk0OTg0YjI1NTJlMTk0MWVjNzY2YzZhODJlY2U0YTNwLTEsCisgICAgLTB4MS40Y3AtMworICB9LAorICB7IC8vIEVudHJ5IDY5NgorICAgIDB4MS5mOTQ5ODQ5ZGFjNmE1NDhkZDg1MTEzOTA0MTEwNjMxNnAtMSwKKyAgICAweDEuNGMwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjk3CisgICAgMHgxLmY5NDk4NDlkYWM2YTU0OGRkODUxMTM5MDQxMTA2MzE2cC0xLAorICAgIC0weDEuNGMwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjk4CisgICAgMHgxLmU5MjFkZDcwNTRlZjVkNGY3MjdkOTM4Y2UxMGEwNTNjcC0xLAorICAgIDB4MS4zMzMzMzJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTkKKyAgICAweDEuZTkyMWRkNzA1NGVmNWQ0ZjcyN2Q5MzhjZTEwYTA1M2NwLTEsCisgICAgLTB4MS4zMzMzMzJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDAKKyAgICAweDEuZTkyMWRkMjRhZGI5MTI5ZWZjMDUzZjlhY2Q0ZDI0NDRwLTEsCisgICAgMHgxLjMzMzMzNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDcwMQorICAgIDB4MS5lOTIxZGQyNGFkYjkxMjllZmMwNTNmOWFjZDRkMjQ0NHAtMSwKKyAgICAtMHgxLjMzMzMzNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDcwMgorICAgIDB4MS5lOTIxZGNkOTA2ODI0ZGE2MGU0M2MwM2E3Nzc0YjE3MXAtMSwKKyAgICAweDEuMzMzMzM2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzAzCisgICAgMHgxLmU5MjFkY2Q5MDY4MjRkYTYwZTQzYzAzYTc3NzRiMTcxcC0xLAorICAgIC0weDEuMzMzMzM2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzA0CisgICAgMHgxLjhmZWVkYzkyNzY0YmZiZGNiNDEzODllODIwNjNlZDZlcC0xLAorICAgIDB4MS41OTQzMTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDUKKyAgICAweDEuOGZlZWRjOTI3NjRiZmJkY2I0MTM4OWU4MjA2M2VkNmVwLTEsCisgICAgLTB4MS41OTQzMTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDYKKyAgICAweDEuOGZlZWRiNTJjNzUwMDg3YzVmODcyN2UwMjc5ZTVmNjZwLTEsCisgICAgMHgxLjU5NDMxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwNworICAgIDB4MS44ZmVlZGI1MmM3NTAwODdjNWY4NzI3ZTAyNzllNWY2NnAtMSwKKyAgICAtMHgxLjU5NDMxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwOAorICAgIDB4MS44ZmVlZGExMzE4NTI4NTJkMmZhN2ZlODg0N2IwNTk3M3AtMSwKKyAgICAweDEuNTk0MzFhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzA5CisgICAgMHgxLjhmZWVkYTEzMTg1Mjg1MmQyZmE3ZmU4ODQ3YjA1OTczcC0xLAorICAgIC0weDEuNTk0MzFhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzEwCisgICAgMHgxLjZiODk5MTEyNzg1OWZkOWI0M2NhMWQwOGI5MmFhNDAxcC0xLAorICAgIDB4MS44ZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTEKKyAgICAweDEuNmI4OTkxMTI3ODU5ZmQ5YjQzY2ExZDA4YjkyYWE0MDFwLTEsCisgICAgLTB4MS44ZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTIKKyAgICAweDEuNmI4OThmYTllZmI1ZDIyYjU4ZjBkOTllOTYzNDkzMWFwLTEsCisgICAgMHgxLjkwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzEzCisgICAgMHgxLjZiODk4ZmE5ZWZiNWQyMmI1OGYwZDk5ZTk2MzQ5MzFhcC0xLAorICAgIC0weDEuOTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTQKKyAgICAweDEuNmI4OThlNDE2NzEwM2IzMWRlNmRhNjdlYmY1ZTlmZTZwLTEsCisgICAgMHgxLjkwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxNQorICAgIDB4MS42Yjg5OGU0MTY3MTAzYjMxZGU2ZGE2N2ViZjVlOWZlNnAtMSwKKyAgICAtMHgxLjkwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzE3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDcxOAorICAgIDB4MS5wMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzIwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjEKKyAgICAweDEuZmY2MjFlMzg5NTZhM2IzYmU5MjAyNTZkZGI2MDM0Y2RwLTEsCisgICAgMHgxLjkyMWZiNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDcyMgorICAgIDB4MS5mZjYyMWUzODk1NmEzYjNiZTkyMDI1NmRkYjYwMzRjZHAtMSwKKyAgICAtMHgxLjkyMWZiNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDcyMworICAgIDB4MS5mZjYyMWUzNzAzNzNkYzZmMzk2M2Q0Mjg5NmVkZTA3OHAtMSwKKyAgICAweDEuOTIxZmI2cC01CisgIH0sCisgIHsgLy8gRW50cnkgNzI0CisgICAgMHgxLmZmNjIxZTM3MDM3M2RjNmYzOTYzZDQyODk2ZWRlMDc4cC0xLAorICAgIC0weDEuOTIxZmI2cC01CisgIH0sCisgIHsgLy8gRW50cnkgNzI1CisgICAgMHgxLmZmNjIxZTM1NzE3ZDdiYTMyNzg5NGJkZmRlOWY0Nzg3cC0xLAorICAgIDB4MS45MjFmYjhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjYKKyAgICAweDEuZmY2MjFlMzU3MTdkN2JhMzI3ODk0YmRmZGU5ZjQ3ODdwLTEsCisgICAgLTB4MS45MjFmYjhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjcKKyAgICAweDEuZmQ4OGRhNDEwYjYxY2Q1NTIyMWQ5YmViOTk2ZDRkOTlwLTEsCisgICAgMHgxLjkyMWZiNHAtNAorICB9LAorICB7IC8vIEVudHJ5IDcyOAorICAgIDB4MS5mZDg4ZGE0MTBiNjFjZDU1MjIxZDliZWI5OTZkNGQ5OXAtMSwKKyAgICAtMHgxLjkyMWZiNHAtNAorICB9LAorICB7IC8vIEVudHJ5IDcyOQorICAgIDB4MS5mZDg4ZGEzYWM1NzgxZjVhNmZjMzJlNDBlZDUxMjJiMHAtMSwKKyAgICAweDEuOTIxZmI2cC00CisgIH0sCisgIHsgLy8gRW50cnkgNzMwCisgICAgMHgxLmZkODhkYTNhYzU3ODFmNWE2ZmMzMmU0MGVkNTEyMmIwcC0xLAorICAgIC0weDEuOTIxZmI2cC00CisgIH0sCisgIHsgLy8gRW50cnkgNzMxCisgICAgMHgxLmZkODhkYTM0N2Y4ZTY5Njk5OWZmZDU4MDYwYmEzNTY5cC0xLAorICAgIDB4MS45MjFmYjhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzIKKyAgICAweDEuZmQ4OGRhMzQ3ZjhlNjk2OTk5ZmZkNTgwNjBiYTM1NjlwLTEsCisgICAgLTB4MS45MjFmYjhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzMKKyAgICAweDEuZjYyOTdkMGY0NjcxZGE1ODBkZmVjZGQ0ZGIyOWY0NzNwLTEsCisgICAgMHgxLjkyMWZiNHAtMworICB9LAorICB7IC8vIEVudHJ5IDczNAorICAgIDB4MS5mNjI5N2QwZjQ2NzFkYTU4MGRmZWNkZDRkYjI5ZjQ3M3AtMSwKKyAgICAtMHgxLjkyMWZiNHAtMworICB9LAorICB7IC8vIEVudHJ5IDczNQorICAgIDB4MS5mNjI5N2NmNjRkYjlhMjFkOThhYjM5NDBmYzhhODZmMHAtMSwKKyAgICAweDEuOTIxZmI2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzM2CisgICAgMHgxLmY2Mjk3Y2Y2NGRiOWEyMWQ5OGFiMzk0MGZjOGE4NmYwcC0xLAorICAgIC0weDEuOTIxZmI2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzM3CisgICAgMHgxLmY2Mjk3Y2RkNTUwMTRhODA4Yjg4M2ZkMTgzZjMxOGFjcC0xLAorICAgIDB4MS45MjFmYjhwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzgKKyAgICAweDEuZjYyOTdjZGQ1NTAxNGE4MDhiODgzZmQxODNmMzE4YWNwLTEsCisgICAgLTB4MS45MjFmYjhwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzkKKyAgICAweDEuZDkwNmJkMzEzNDQzMDA3ZGNiMGJkNGUzZDYzMjg0YzBwLTEsCisgICAgMHgxLjkyMWZiNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc0MAorICAgIDB4MS5kOTA2YmQzMTM0NDMwMDdkY2IwYmQ0ZTNkNjMyODRjMHAtMSwKKyAgICAtMHgxLjkyMWZiNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc0MQorICAgIDB4MS5kOTA2YmNjZjNjYjg3NTg3NGRhM2RhNGMwMTEwNGJhZnAtMSwKKyAgICAweDEuOTIxZmI2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzQyCisgICAgMHgxLmQ5MDZiY2NmM2NiODc1ODc0ZGEzZGE0YzAxMTA0YmFmcC0xLAorICAgIC0weDEuOTIxZmI2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzQzCisgICAgMHgxLmQ5MDZiYzZkNDUyZDc0NGYyMTA4MTA4NjExMDJmMmRhcC0xLAorICAgIDB4MS45MjFmYjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDQKKyAgICAweDEuZDkwNmJjNmQ0NTJkNzQ0ZjIxMDgxMDg2MTEwMmYyZGFwLTEsCisgICAgLTB4MS45MjFmYjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDUKKyAgICAweDEuNmEwOWU3NGQzZDNmYmI5NGQ5NDI3NGYzNzc2OWY2ZWFwLTEsCisgICAgMHgxLjkyMWZiNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc0NgorICAgIDB4MS42YTA5ZTc0ZDNkM2ZiYjk0ZDk0Mjc0ZjM3NzY5ZjZlYXAtMSwKKyAgICAtMHgxLjkyMWZiNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc0NworICAgIDB4MS42YTA5ZTVlMzMzNTk4M2U1YWM5MmU3MzNlM2YyNGI0MnAtMSwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzQ4CisgICAgMHgxLjZhMDllNWUzMzM1OTgzZTVhYzkyZTczM2UzZjI0YjQycC0xLAorICAgIC0weDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzQ5CisgICAgMHgxLjZhMDllNDc5Mjk3MWUyMmM5YTAwMjYxYWVhYzA3MGRhcC0xLAorICAgIDB4MS45MjFmYjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTAKKyAgICAweDEuNmEwOWU0NzkyOTcxZTIyYzlhMDAyNjFhZWFjMDcwZGFwLTEsCisgICAgLTB4MS45MjFmYjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTEKKyAgICAweDEuNDQ0MmQxODQ2OTg5MzYxMDI4MWEwZjliMGU4ZDBlZWZwLTI0LAorICAgIDB4MS45MjFmYjRwMAorICB9LAorICB7IC8vIEVudHJ5IDc1MgorICAgIDB4MS40NDQyZDE4NDY5ODkzNjEwMjgxYTBmOWIwZThkMGVlZnAtMjQsCisgICAgLTB4MS45MjFmYjRwMAorICB9LAorICB7IC8vIEVudHJ5IDc1MworICAgIC0weDEuNzc3YTVjZjcyY2VjYzRjZGUzYTMxZTdkNWEwMjYxNDJwLTI1LAorICAgIDB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDc1NAorICAgIC0weDEuNzc3YTVjZjcyY2VjYzRjZGUzYTMxZTdkNWEwMjYxNDJwLTI1LAorICAgIC0weDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTUKKyAgICAtMHgxLjVkZGU5NzNkY2IzOTg1ZjRhOGU3NmExZmVjYTI5ZTFkcC0yMywKKyAgICAweDEuOTIxZmI4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTYKKyAgICAtMHgxLjVkZGU5NzNkY2IzOTg1ZjRhOGU3NmExZmVjYTI5ZTFkcC0yMywKKyAgICAtMHgxLjkyMWZiOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzU3CisgICAgLTB4MS5mZmZmZmZmZmZmZjk5NTFiMzBlMDg0NzMyZTYwYmI4NXAtMSwKKyAgICAweDEuOTIxZmI0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTgKKyAgICAtMHgxLmZmZmZmZmZmZmZmOTk1MWIzMGUwODQ3MzJlNjBiYjg1cC0xLAorICAgIC0weDEuOTIxZmI0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZGQ5NDg0OTI3MWQwOGVlY2Y1NGExcC0xLAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDc2MAorICAgIC0weDEuZmZmZmZmZmZmZmZkZDk0ODQ5MjcxZDA4ZWVjZjU0YTFwLTEsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDc2MQorICAgIC0weDEuZmZmZmZmZmZmZmUyMWQ3NTYxNmRiNWViYzU2NDA1ZjVwLTEsCisgICAgMHgxLjkyMWZiOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzYyCisgICAgLTB4MS5mZmZmZmZmZmZmZTIxZDc1NjE2ZGI1ZWJjNTY0MDVmNXAtMSwKKyAgICAtMHgxLjkyMWZiOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzYzCisgICAgMHgxLmZmZmZmZmZmZmZlNjU0NmNjMzgyMTFmNWU4ZGVlYjk3cC0xLAorICAgIDB4MS45MjFmYjRwMgorICB9LAorICB7IC8vIEVudHJ5IDc2NAorICAgIDB4MS5mZmZmZmZmZmZmZTY1NDZjYzM4MjExZjVlOGRlZWI5N3AtMSwKKyAgICAtMHgxLjkyMWZiNHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzY1CisgICAgMHgxLmZmZmZmZmZmZmZmNzY1MjEyNDljNzQyODViZjczYzA3cC0xLAorICAgIDB4MS45MjFmYjZwMgorICB9LAorICB7IC8vIEVudHJ5IDc2NgorICAgIDB4MS5mZmZmZmZmZmZmZjc2NTIxMjQ5Yzc0Mjg1YmY3M2MwN3AtMSwKKyAgICAtMHgxLjkyMWZiNnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzY3CisgICAgMHgxLmZmZmZmZmZmZmY4ODc1ZDU4NWI2ZGIyYzMxNzExMDA0cC0xLAorICAgIDB4MS45MjFmYjhwMgorICB9LAorICB7IC8vIEVudHJ5IDc2OAorICAgIDB4MS5mZmZmZmZmZmZmODg3NWQ1ODViNmRiMmMzMTcxMTAwNHAtMSwKKyAgICAtMHgxLjkyMWZiOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzY5CisgICAgMHgxLmZmZmZmZmZmZmY5OTUxYjMwZTA4NGE2YTk5M2I4Njc1cC0xLAorICAgIDB4MS45MjFmYjRwMworICB9LAorICB7IC8vIEVudHJ5IDc3MAorICAgIDB4MS5mZmZmZmZmZmZmOTk1MWIzMGUwODRhNmE5OTNiODY3NXAtMSwKKyAgICAtMHgxLjkyMWZiNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzcxCisgICAgMHgxLmZmZmZmZmZmZmZkZDk0ODQ5MjcxZDBlYjdiN2I4ODRicC0xLAorICAgIDB4MS45MjFmYjZwMworICB9LAorICB7IC8vIEVudHJ5IDc3MgorICAgIDB4MS5mZmZmZmZmZmZmZGQ5NDg0OTI3MWQwZWI3YjdiODg0YnAtMSwKKyAgICAtMHgxLjkyMWZiNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNzczCisgICAgMHgxLmZmZmZmZmZmZmUyMWQ3NTYxNmRiYTQ4MjgzZDNjMmY3cC0xLAorICAgIDB4MS45MjFmYjhwMworICB9LAorICB7IC8vIEVudHJ5IDc3NAorICAgIDB4MS5mZmZmZmZmZmZlMjFkNzU2MTZkYmE0ODI4M2QzYzJmN3AtMSwKKyAgICAtMHgxLjkyMWZiOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzc1CisgICAgMHgxLmZmZmZmZmZmZmU2NTQ2Y2MzODIxNTJkOWMwZWI5YjQ3cC0xLAorICAgIDB4MS45MjFmYjRwNAorICB9LAorICB7IC8vIEVudHJ5IDc3NgorICAgIDB4MS5mZmZmZmZmZmZlNjU0NmNjMzgyMTUyZDljMGViOWI0N3AtMSwKKyAgICAtMHgxLjkyMWZiNHA0CisgIH0sCisgIHsgLy8gRW50cnkgNzc3CisgICAgMHgxLmZmZmZmZmZmZmY3NjUyMTI0OWM3NDg0ZWE3ZDdhNDA5cC0xLAorICAgIDB4MS45MjFmYjZwNAorICB9LAorICB7IC8vIEVudHJ5IDc3OAorICAgIDB4MS5mZmZmZmZmZmZmNzY1MjEyNDljNzQ4NGVhN2Q3YTQwOXAtMSwKKyAgICAtMHgxLjkyMWZiNnA0CisgIH0sCisgIHsgLy8gRW50cnkgNzc5CisgICAgMHgxLmZmZmZmZmZmZjg4NzVkNTg1YjcyMGYyNWYwNDczOTQzcC0xLAorICAgIDB4MS45MjFmYjhwNAorICB9LAorICB7IC8vIEVudHJ5IDc4MAorICAgIDB4MS5mZmZmZmZmZmY4ODc1ZDU4NWI3MjBmMjVmMDQ3Mzk0M3AtMSwKKyAgICAtMHgxLjkyMWZiOHA0CisgIH0sCisgIHsgLy8gRW50cnkgNzgxCisgICAgMHgxLmZmZmZmZmZmZjk5NTFiMzBlMDg3ZGU1Y2MzODY4M2I4cC0xLAorICAgIDB4MS45MjFmYjRwNQorICB9LAorICB7IC8vIEVudHJ5IDc4MgorICAgIDB4MS5mZmZmZmZmZmY5OTUxYjMwZTA4N2RlNWNjMzg2ODNiOHAtMSwKKyAgICAtMHgxLjkyMWZiNHA1CisgIH0sCisgIHsgLy8gRW50cnkgNzgzCisgICAgMHgxLmZmZmZmZmZmZmRkOTQ4NDkyNzFkNmI0NjNkZjZiZGRmcC0xLAorICAgIDB4MS45MjFmYjZwNQorICB9LAorICB7IC8vIEVudHJ5IDc4NAorICAgIDB4MS5mZmZmZmZmZmZkZDk0ODQ5MjcxZDZiNDYzZGY2YmRkZnAtMSwKKyAgICAtMHgxLjkyMWZiNnA1CisgIH0sCisgIHsgLy8gRW50cnkgNzg1CisgICAgMHgxLmZmZmZmZmZmZTIxZDc1NjE2ZTAwMGU1NWQwOWY4NzU3cC0xLAorICAgIDB4MS45MjFmYjhwNQorICB9LAorICB7IC8vIEVudHJ5IDc4NgorICAgIDB4MS5mZmZmZmZmZmUyMWQ3NTYxNmUwMDBlNTVkMDlmODc1N3AtMSwKKyAgICAtMHgxLjkyMWZiOHA1CisgIH0sCisgIHsgLy8gRW50cnkgNzg3CisgICAgMHgxLmZmZmZmZmZmZTY1NDZjYzM4MjQ4YThjZjBiOWI1Nzk1cC0xLAorICAgIDB4MS45MjFmYjRwNgorICB9LAorICB7IC8vIEVudHJ5IDc4OAorICAgIDB4MS5mZmZmZmZmZmU2NTQ2Y2MzODI0OGE4Y2YwYjliNTc5NXAtMSwKKyAgICAtMHgxLjkyMWZiNHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzg5CisgICAgMHgxLmZmZmZmZmZmZjc2NTIxMjQ5YzdhNGRkMmUxNWRkMWM0cC0xLAorICAgIDB4MS45MjFmYjZwNgorICB9LAorICB7IC8vIEVudHJ5IDc5MAorICAgIDB4MS5mZmZmZmZmZmY3NjUyMTI0OWM3YTRkZDJlMTVkZDFjNHAtMSwKKyAgICAtMHgxLjkyMWZiNnA2CisgIH0sCisgIHsgLy8gRW50cnkgNzkxCisgICAgMHgxLmZmZmZmZmZmODg3NWQ1ODViYjdkNTUzODNhOWIzOWE0cC0xLAorICAgIDB4MS45MjFmYjhwNgorICB9LAorICB7IC8vIEVudHJ5IDc5MgorICAgIDB4MS5mZmZmZmZmZjg4NzVkNTg1YmI3ZDU1MzgzYTliMzlhNHAtMSwKKyAgICAtMHgxLjkyMWZiOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzkzCisgICAgMHgxLmZmZmZmZmZmOTk1MWIzMGUwYmI1OThmYzA2NzlhNmY3cC0xLAorICAgIDB4MS45MjFmYjRwNworICB9LAorICB7IC8vIEVudHJ5IDc5NAorICAgIDB4MS5mZmZmZmZmZjk5NTFiMzBlMGJiNTk4ZmMwNjc5YTZmN3AtMSwKKyAgICAtMHgxLjkyMWZiNHA3CisgIH0sCisgIHsgLy8gRW50cnkgNzk1CisgICAgMHgxLmZmZmZmZmZmZGQ5NDg0OTI3MjMzNDJlYTFkYTQ5YmFjcC0xLAorICAgIDB4MS45MjFmYjZwNworICB9LAorICB7IC8vIEVudHJ5IDc5NgorICAgIDB4MS5mZmZmZmZmZmRkOTQ4NDkyNzIzMzQyZWExZGE0OWJhY3AtMSwKKyAgICAtMHgxLjkyMWZiNnA3CisgIH0sCisgIHsgLy8gRW50cnkgNzk3CisgICAgMHgxLmZmZmZmZmZlMjFkNzU2MTcyNWM3MTJmMDY4ZmM5NzE4cC0xLAorICAgIDB4MS45MjFmYjhwNworICB9LAorICB7IC8vIEVudHJ5IDc5OAorICAgIDB4MS5mZmZmZmZmZTIxZDc1NjE3MjVjNzEyZjA2OGZjOTcxOHAtMSwKKyAgICAtMHgxLjkyMWZiOHA3CisgIH0sCisgIHsgLy8gRW50cnkgNzk5CisgICAgLTB4MS42YTA5ZGIzYmRiYTA4NjhhMzFlNzY2MzU5YTg0MDZjYXAtMSwKKyAgICAweDEuMmQ5N2M0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDAKKyAgICAtMHgxLjZhMDlkYjNiZGJhMDg2OGEzMWU3NjYzNTlhODQwNmNhcC0xLAorICAgIC0weDEuMmQ5N2M0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDEKKyAgICAtMHgxLjZhMDllMGU0MDM1Yjg2Njk0YzE2NTM0ZTQyZmJlMTExcC0xLAorICAgIDB4MS4yZDk3YzZwMQorICB9LAorICB7IC8vIEVudHJ5IDgwMgorICAgIC0weDEuNmEwOWUwZTQwMzViODY2OTRjMTY1MzRlNDJmYmUxMTFwLTEsCisgICAgLTB4MS4yZDk3YzZwMQorICB9LAorICB7IC8vIEVudHJ5IDgwMworICAgIC0weDEuNmEwOWU2OGMyYWZmZTVhYTU4MDUwYWNjYjA1YzYyNDhwLTEsCisgICAgMHgxLjJkOTdjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgODA0CisgICAgLTB4MS42YTA5ZTY4YzJhZmZlNWFhNTgwNTBhY2NiMDVjNjI0OHAtMSwKKyAgICAtMHgxLjJkOTdjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgODA1CisgICAgLTB4MS42YTA5ZWRiNjc3MDZlMDk5NzEyMWQxMmEwYzg3YmFlOHAtMSwKKyAgICAweDEuZjZhN2EwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDYKKyAgICAtMHgxLjZhMDllZGI2NzcwNmUwOTk3MTIxZDEyYTBjODdiYWU4cC0xLAorICAgIC0weDEuZjZhN2EwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDcKKyAgICAtMHgxLjZhMDllODBlNGY3ZjJhODhkZWJlZDM3ZmFhOTNlOGM4cC0xLAorICAgIDB4MS5mNmE3YTJwMQorICB9LAorICB7IC8vIEVudHJ5IDgwOAorICAgIC0weDEuNmEwOWU4MGU0ZjdmMmE4OGRlYmVkMzdmYWE5M2U4YzhwLTEsCisgICAgLTB4MS5mNmE3YTJwMQorICB9LAorICB7IC8vIEVudHJ5IDgwOQorICAgIC0weDEuNmEwOWUyNjYyN2UwZDNkOWNiNzZkZTAwY2I5MDJiZWNwLTEsCisgICAgMHgxLmY2YTdhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgODEwCisgICAgLTB4MS42YTA5ZTI2NjI3ZTBkM2Q5Y2I3NmRlMDBjYjkwMmJlY3AtMSwKKyAgICAtMHgxLmY2YTdhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgODExCisgICAgLTB4MS5mOTk5MGU5MWE3NDE2OGI5MGJkNjhkZmFiNzc1YzljYXAtMjEsCisgICAgMHgxLjJkOTdjNHAyCisgIH0sCisgIHsgLy8gRW50cnkgODEyCisgICAgLTB4MS5mOTk5MGU5MWE3NDE2OGI5MGJkNjhkZmFiNzc1YzljYXAtMjEsCisgICAgLTB4MS4yZDk3YzRwMgorICB9LAorICB7IC8vIEVudHJ5IDgxMworICAgIC0weDEuZjMzMjFkMjM0ZjEzNjNkMTg3ZGQwOTUyOGI2N2IyMTVwLTIyLAorICAgIDB4MS4yZDk3YzZwMgorICB9LAorICB7IC8vIEVudHJ5IDgxNAorICAgIC0weDEuZjMzMjFkMjM0ZjEzNjNkMTg3ZGQwOTUyOGI2N2IyMTVwLTIyLAorICAgIC0weDEuMmQ5N2M2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTUKKyAgICAweDEuOTliYzViOTYxYjFhY2FjYTE4ZDk3MWY2OGFlOTlkYTlwLTI3LAorICAgIDB4MS4yZDk3YzhwMgorICB9LAorICB7IC8vIEVudHJ5IDgxNgorICAgIDB4MS45OWJjNWI5NjFiMWFjYWNhMThkOTcxZjY4YWU5OWRhOXAtMjcsCisgICAgLTB4MS4yZDk3YzhwMgorICB9LAorICB7IC8vIEVudHJ5IDgxNworICAgIDB4MS42YTA5ZDdhNmI1NzJjMmM4MjRkMTM3ZDA0MDVkODE4OHAtMSwKKyAgICAweDEuNWZkYmJjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTgKKyAgICAweDEuNmEwOWQ3YTZiNTcyYzJjODI0ZDEzN2QwNDA1ZDgxODhwLTEsCisgICAgLTB4MS41ZmRiYmNwMgorICB9LAorICB7IC8vIEVudHJ5IDgxOQorICAgIDB4MS42YTA5ZTJmNzA0ZWVjYjE4MWUzZjVlY2U5YmUwY2EwZnAtMSwKKyAgICAweDEuNWZkYmJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjAKKyAgICAweDEuNmEwOWUyZjcwNGVlY2IxODFlM2Y1ZWNlOWJlMGNhMGZwLTEsCisgICAgLTB4MS41ZmRiYmVwMgorICB9LAorICB7IC8vIEVudHJ5IDgyMQorICAgIDB4MS42YTA5ZWU0NzU0MTA1MGVmNTllYzRiZmNlOTM1Y2MxYXAtMSwKKyAgICAweDEuNWZkYmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjIKKyAgICAweDEuNmEwOWVlNDc1NDEwNTBlZjU5ZWM0YmZjZTkzNWNjMWFwLTEsCisgICAgLTB4MS41ZmRiYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDgyMworICAgIDB4MS42YTA5ZmM5YmViYWJhMjA4YzgxZWMwYjFjZDMwNzU4OXAtMSwKKyAgICAweDEuYzQ2M2E4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjQKKyAgICAweDEuNmEwOWZjOWJlYmFiYTIwOGM4MWVjMGIxY2QzMDc1ODlwLTEsCisgICAgLTB4MS5jNDYzYThwMgorICB9LAorICB7IC8vIEVudHJ5IDgyNQorICAgIDB4MS42YTA5ZjE0YjljZmNjMGY2MjI3ZDM4NmNjMzcwNGEwNXAtMSwKKyAgICAweDEuYzQ2M2FhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjYKKyAgICAweDEuNmEwOWYxNGI5Y2ZjYzBmNjIyN2QzODZjYzM3MDRhMDVwLTEsCisgICAgLTB4MS5jNDYzYWFwMgorICB9LAorICB7IC8vIEVudHJ5IDgyNworICAgIDB4MS42YTA5ZTVmYjRkZjM1ZDY3MjlmNDcyZGEzNDEzZTQwNHAtMSwKKyAgICAweDEuYzQ2M2FjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjgKKyAgICAweDEuNmEwOWU1ZmI0ZGYzNWQ2NzI5ZjQ3MmRhMzQxM2U0MDRwLTEsCisgICAgLTB4MS5jNDYzYWNwMgorICB9LAorICB7IC8vIEVudHJ5IDgyOQorICAgIDB4MS40YWE5YzJmMmMxZGVmYjg3MjhmMGQyZGExMjE3YWFlMXAtMjEsCisgICAgMHgxLmY2YTdhMHAyCisgIH0sCisgIHsgLy8gRW50cnkgODMwCisgICAgMHgxLjRhYTljMmYyYzFkZWZiODcyOGYwZDJkYTEyMTdhYWUxcC0yMSwKKyAgICAtMHgxLmY2YTdhMHAyCisgIH0sCisgIHsgLy8gRW50cnkgODMxCisgICAgMHgxLjJhYTcwYmNiMDdkNmQwZjM2Yjc3N2NiMzgwYTg0NWQ5cC0yMywKKyAgICAweDEuZjZhN2EycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzIKKyAgICAweDEuMmFhNzBiY2IwN2Q2ZDBmMzZiNzc3Y2IzODBhODQ1ZDlwLTIzLAorICAgIC0weDEuZjZhN2EycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzMKKyAgICAtMHgxLjZhYWM3YTFhN2MwYzdhZmM1ZmNiMjMxM2E3ZWNhMjI5cC0yMiwKKyAgICAweDEuZjZhN2E0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzQKKyAgICAtMHgxLjZhYWM3YTFhN2MwYzdhZmM1ZmNiMjMxM2E3ZWNhMjI5cC0yMiwKKyAgICAtMHgxLmY2YTdhNHAyCisgIH0sCisgIHsgLy8gRW50cnkgODM1CisgICAgLTB4MS42YTA5YzhjMTNmNDhiN2FhZDg1MWY5ZDY0NzRiY2IzMXAtMSwKKyAgICAweDEuMTQ3NWNhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzYKKyAgICAtMHgxLjZhMDljOGMxM2Y0OGI3YWFkODUxZjlkNjQ3NGJjYjMxcC0xLAorICAgIC0weDEuMTQ3NWNhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzcKKyAgICAtMHgxLjZhMDlkZjYxZGVkNDlkMWVlNGZjYTRiYTYxNDBkMTc5cC0xLAorICAgIDB4MS4xNDc1Y2NwMworICB9LAorICB7IC8vIEVudHJ5IDgzOAorICAgIC0weDEuNmEwOWRmNjFkZWQ0OWQxZWU0ZmNhNGJhNjE0MGQxNzlwLTEsCisgICAgLTB4MS4xNDc1Y2NwMworICB9LAorICB7IC8vIEVudHJ5IDgzOQorICAgIC0weDEuNmEwOWY2MDI3Y2Y2NzhiMzhmYzg5OTJjZDk5OTAzMDJwLTEsCisgICAgMHgxLjE0NzVjZXAzCisgIH0sCisgIHsgLy8gRW50cnkgODQwCisgICAgLTB4MS42YTA5ZjYwMjdjZjY3OGIzOGZjODk5MmNkOTk5MDMwMnAtMSwKKyAgICAtMHgxLjE0NzVjZXAzCisgIH0sCisgIHsgLy8gRW50cnkgODQxCisgICAgLTB4MS5mZmZmZmZmZmZjMTk3MmM5MDJlZjMxYzM3Y2I1NDgxN3AtMSwKKyAgICAweDEuMmQ5N2M0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDIKKyAgICAtMHgxLmZmZmZmZmZmZmMxOTcyYzkwMmVmMzFjMzdjYjU0ODE3cC0xLAorICAgIC0weDEuMmQ5N2M0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDMKKyAgICAtMHgxLmZmZmZmZmZmZmYwY2E0ZTYyNjNkMjdhMDIwNDM4OWRmcC0xLAorICAgIDB4MS4yZDk3YzZwMworICB9LAorICB7IC8vIEVudHJ5IDg0NAorICAgIC0weDEuZmZmZmZmZmZmZjBjYTRlNjI2M2QyN2EwMjA0Mzg5ZGZwLTEsCisgICAgLTB4MS4yZDk3YzZwMworICB9LAorICB7IC8vIEVudHJ5IDg0NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZDcwMzQ5OGMzYjgyODg1NjM5MTVwLTEsCisgICAgMHgxLjJkOTdjOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODQ2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkNzAzNDk4YzNiODI4ODU2MzkxNXAtMSwKKyAgICAtMHgxLjJkOTdjOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODQ3CisgICAgLTB4MS42YTBhMGI4MTVmYjM3YjJkMDE1NTFlMDdjYjMwMDlkMXAtMSwKKyAgICAweDEuNDZiOWMwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDgKKyAgICAtMHgxLjZhMGEwYjgxNWZiMzdiMmQwMTU1MWUwN2NiMzAwOWQxcC0xLAorICAgIC0weDEuNDZiOWMwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDkKKyAgICAtMHgxLjZhMDlmNGUwYzJlOThkZWI3ODY0MmI2MDMyYTczZDQ2cC0xLAorICAgIDB4MS40NmI5YzJwMworICB9LAorICB7IC8vIEVudHJ5IDg1MAorICAgIC0weDEuNmEwOWY0ZTBjMmU5OGRlYjc4NjQyYjYwMzJhNzNkNDZwLTEsCisgICAgLTB4MS40NmI5YzJwMworICB9LAorICB7IC8vIEVudHJ5IDg1MQorICAgIC0weDEuNmEwOWRlNDAyNGI1OTZiNTBlYjA2ZDU2MmRiOGM3NzdwLTEsCisgICAgMHgxLjQ2YjljNHAzCisgIH0sCisgIHsgLy8gRW50cnkgODUyCisgICAgLTB4MS42YTA5ZGU0MDI0YjU5NmI1MGViMDZkNTYyZGI4Yzc3N3AtMSwKKyAgICAtMHgxLjQ2YjljNHAzCisgIH0sCisgIHsgLy8gRW50cnkgODUzCisgICAgLTB4MS40ZGRkM2JhOWVkY2Q4OThiOTk0NmZkZDIwYWYyMmE2OHAtMjAsCisgICAgMHgxLjVmZGJiY3AzCisgIH0sCisgIHsgLy8gRW50cnkgODU0CisgICAgLTB4MS40ZGRkM2JhOWVkY2Q4OThiOTk0NmZkZDIwYWYyMmE2OHAtMjAsCisgICAgLTB4MS41ZmRiYmNwMworICB9LAorICB7IC8vIEVudHJ5IDg1NQorICAgIC0weDEuMzc3NGVlYTdiOGFiZThmYThjMzgwMTQyYjk3YWY0YjZwLTIyLAorICAgIDB4MS41ZmRiYmVwMworICB9LAorICB7IC8vIEVudHJ5IDg1NgorICAgIC0weDEuMzc3NGVlYTdiOGFiZThmYThjMzgwMTQyYjk3YWY0YjZwLTIyLAorICAgIC0weDEuNWZkYmJlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTcKKyAgICAweDEuNjQ0NTg4YWMyMzhhZTQ5M2ZhMzI0MzViYTUxMzI5YmZwLTIxLAorICAgIDB4MS41ZmRiYzBwMworICB9LAorICB7IC8vIEVudHJ5IDg1OAorICAgIDB4MS42NDQ1ODhhYzIzOGFlNDkzZmEzMjQzNWJhNTEzMjliZnAtMjEsCisgICAgLTB4MS41ZmRiYzBwMworICB9LAorICB7IC8vIEVudHJ5IDg1OQorICAgIDB4MS42YTA5YjlkYmM4ODFjNDU4ZTc0NzkwOGNhZjJhYTVlMXAtMSwKKyAgICAweDEuNzhmZGI2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjAKKyAgICAweDEuNmEwOWI5ZGJjODgxYzQ1OGU3NDc5MDhjYWYyYWE1ZTFwLTEsCisgICAgLTB4MS43OGZkYjZwMworICB9LAorICB7IC8vIEVudHJ5IDg2MQorICAgIDB4MS42YTA5ZDA3YzY4ZmMwMTBmZmNmZDNiMTlmMWVlNGY0NHAtMSwKKyAgICAweDEuNzhmZGI4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjIKKyAgICAweDEuNmEwOWQwN2M2OGZjMDEwZmZjZmQzYjE5ZjFlZTRmNDRwLTEsCisgICAgLTB4MS43OGZkYjhwMworICB9LAorICB7IC8vIEVudHJ5IDg2MworICAgIDB4MS42YTA5ZTcxZDA4MGMzM2Y2OTY0YTA3ZDFhMGJmNTk4MHAtMSwKKyAgICAweDEuNzhmZGJhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjQKKyAgICAweDEuNmEwOWU3MWQwODBjMzNmNjk2NGEwN2QxYTBiZjU5ODBwLTEsCisgICAgLTB4MS43OGZkYmFwMworICB9LAorICB7IC8vIEVudHJ5IDg2NQorICAgIDB4MS42YTBhMDNjNjM3NDJkNjI4MDJkMTYzZDVjZmIzYjdkNXAtMSwKKyAgICAweDEuYWI0MWFlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjYKKyAgICAweDEuNmEwYTAzYzYzNzQyZDYyODAyZDE2M2Q1Y2ZiM2I3ZDVwLTEsCisgICAgLTB4MS5hYjQxYWVwMworICB9LAorICB7IC8vIEVudHJ5IDg2NworICAgIDB4MS42YTA5ZWQyNTk5ZmQzNjRjOTc2NjBjY2E2NjUyYzBhM3AtMSwKKyAgICAweDEuYWI0MWIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjgKKyAgICAweDEuNmEwOWVkMjU5OWZkMzY0Yzk3NjYwY2NhNjY1MmMwYTNwLTEsCisgICAgLTB4MS5hYjQxYjBwMworICB9LAorICB7IC8vIEVudHJ5IDg2OQorICAgIDB4MS42YTA5ZDY4NGZiNGQ4Yzg0MDY2MGQ2YjQyZWM4MzAzOXAtMSwKKyAgICAweDEuYWI0MWIycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzAKKyAgICAweDEuNmEwOWQ2ODRmYjRkOGM4NDA2NjBkNmI0MmVjODMwMzlwLTEsCisgICAgLTB4MS5hYjQxYjJwMworICB9LAorICB7IC8vIEVudHJ5IDg3MQorICAgIDB4MS5mNjY1OTVkYTdhMWFlMzA4ZDI2YTE4ZGU0YzJlZDNhM3AtMjAsCisgICAgMHgxLmM0NjNhOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODcyCisgICAgMHgxLmY2NjU5NWRhN2ExYWUzMDhkMjZhMThkZTRjMmVkM2EzcC0yMCwKKyAgICAtMHgxLmM0NjNhOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODczCisgICAgMHgxLmVjY2IyYmI0ZjY2ZWE4NjEyNDFmYTA5Y2E5ZDhhMDM0cC0yMSwKKyAgICAweDEuYzQ2M2FhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzQKKyAgICAweDEuZWNjYjJiYjRmNjZlYTg2MTI0MWZhMDljYTlkOGEwMzRwLTIxLAorICAgIC0weDEuYzQ2M2FhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzUKKyAgICAtMHgxLjMzNGQ0NGIwOTQ1NDA3YjExOGIzNjFhYjc4MTcxZjY3cC0yNSwKKyAgICAweDEuYzQ2M2FjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzYKKyAgICAtMHgxLjMzNGQ0NGIwOTQ1NDA3YjExOGIzNjFhYjc4MTcxZjY3cC0yNSwKKyAgICAtMHgxLmM0NjNhY3AzCisgIH0sCisgIHsgLy8gRW50cnkgODc3CisgICAgLTB4MS42YTA5YzE5NmYyODY3Y2M5MTZhZTJiN2U2YzlkOTljMXAtMSwKKyAgICAweDEuZGQ4NWE0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzgKKyAgICAtMHgxLjZhMDljMTk2ZjI4NjdjYzkxNmFlMmI3ZTZjOWQ5OWMxcC0xLAorICAgIC0weDEuZGQ4NWE0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzkKKyAgICAtMHgxLjZhMDlkODM3OTI4NTA2ZjdjZmY3NmYwOTRiNGUwMzc3cC0xLAorICAgIDB4MS5kZDg1YTZwMworICB9LAorICB7IC8vIEVudHJ5IDg4MAorICAgIC0weDEuNmEwOWQ4Mzc5Mjg1MDZmN2NmZjc2ZjA5NGI0ZTAzNzdwLTEsCisgICAgLTB4MS5kZDg1YTZwMworICB9LAorICB7IC8vIEVudHJ5IDg4MQorICAgIC0weDEuNmEwOWVlZDgzMTE5ODc0ZTUxYWU0YmI4YWVkZGMxZjJwLTEsCisgICAgMHgxLmRkODVhOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODgyCisgICAgLTB4MS42YTA5ZWVkODMxMTk4NzRlNTFhZTRiYjhhZWRkYzFmMnAtMSwKKyAgICAtMHgxLmRkODVhOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODgzCisgICAgLTB4MS5mZmZmZmZmZmZlNTRlNWU0ZDMyYjM0NTMxNjYwNjBiM3AtMSwKKyAgICAweDEuZjZhN2EwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODQKKyAgICAtMHgxLmZmZmZmZmZmZmU1NGU1ZTRkMzJiMzQ1MzE2NjA2MGIzcC0xLAorICAgIC0weDEuZjZhN2EwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODUKKyAgICAtMHgxLmZmZmZmZmZmZmZlYTM5NmFiOGFlZTUwOTM5MmM3NTVkcC0xLAorICAgIDB4MS5mNmE3YTJwMworICB9LAorICB7IC8vIEVudHJ5IDg4NgorICAgIC0weDEuZmZmZmZmZmZmZmVhMzk2YWI4YWVlNTA5MzkyYzc1NWRwLTEsCisgICAgLTB4MS5mNmE3YTJwMworICB9LAorICB7IC8vIEVudHJ5IDg4NworICAgIC0weDEuZmZmZmZmZmZmZjdmOGNmMDllMzJkNjMwOWJlYTg1Y2FwLTEsCisgICAgMHgxLmY2YTdhNHAzCisgIH0sCisgIHsgLy8gRW50cnkgODg4CisgICAgLTB4MS5mZmZmZmZmZmZmN2Y4Y2YwOWUzMmQ2MzA5YmVhODVjYXAtMSwKKyAgICAtMHgxLmY2YTdhNHAzCisgIH0sCisgIHsgLy8gRW50cnkgODg5CisgICAgLTB4MS42YTBhMjk0YzQ1ZWM3NDdhNDc3MTFhNDk5NGQyYzVlNHAtMSwKKyAgICAweDEuMDdlNGNjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTAKKyAgICAtMHgxLjZhMGEyOTRjNDVlYzc0N2E0NzcxMWE0OTk0ZDJjNWU0cC0xLAorICAgIC0weDEuMDdlNGNjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTEKKyAgICAtMHgxLjZhMDlmYzBiMGVhN2VkOWZiNWRkNTBhMGM4YWYxOWNicC0xLAorICAgIDB4MS4wN2U0Y2VwNAorICB9LAorICB7IC8vIEVudHJ5IDg5MgorICAgIC0weDEuNmEwOWZjMGIwZWE3ZWQ5ZmI1ZGQ1MGEwYzhhZjE5Y2JwLTEsCisgICAgLTB4MS4wN2U0Y2VwNAorICB9LAorICB7IC8vIEVudHJ5IDg5MworICAgIC0weDEuNmEwOWNlYzlkMWJiM2VkNGY4MTBjOWY5Nzg2ZDYxMGVwLTEsCisgICAgMHgxLjA3ZTRkMHA0CisgIH0sCisgIHsgLy8gRW50cnkgODk0CisgICAgLTB4MS42YTA5Y2VjOWQxYmIzZWQ0ZjgxMGM5Zjk3ODZkNjEwZXAtMSwKKyAgICAtMHgxLjA3ZTRkMHA0CisgIH0sCisgIHsgLy8gRW50cnkgODk1CisgICAgLTB4MS40Zjc2ZjgwNTgyYzczZmMwY2MwOTAzZWQ4Y2E3ZDZiM3AtMTksCisgICAgMHgxLjE0NzVjYXA0CisgIH0sCisgIHsgLy8gRW50cnkgODk2CisgICAgLTB4MS40Zjc2ZjgwNTgyYzczZmMwY2MwOTAzZWQ4Y2E3ZDZiM3AtMTksCisgICAgLTB4MS4xNDc1Y2FwNAorICB9LAorICB7IC8vIEVudHJ5IDg5NworICAgIC0weDEuM2RkYmUwMTYxMTA4YjY5MGVlZDcwYTdmNTlkZTc1MWNwLTIxLAorICAgIDB4MS4xNDc1Y2NwNAorICB9LAorICB7IC8vIEVudHJ5IDg5OAorICAgIC0weDEuM2RkYmUwMTYxMTA4YjY5MGVlZDcwYTdmNTlkZTc1MWNwLTIxLAorICAgIC0weDEuMTQ3NWNjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTkKKyAgICAweDEuNjExMjBmZjRmNzAxODBiMGQ1NWMzYWUwZjY5NTg1Y2FwLTIwLAorICAgIDB4MS4xNDc1Y2VwNAorICB9LAorICB7IC8vIEVudHJ5IDkwMAorICAgIDB4MS42MTEyMGZmNGY3MDE4MGIwZDU1YzNhZTBmNjk1ODVjYXAtMjAsCisgICAgLTB4MS4xNDc1Y2VwNAorICB9LAorICB7IC8vIEVudHJ5IDkwMQorICAgIDB4MS42YTA5YjJiMTdiNzQxMDUwYTZjZmQ2NGI4MWM3NjQ4NXAtMSwKKyAgICAweDEuMjEwNmM4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDIKKyAgICAweDEuNmEwOWIyYjE3Yjc0MTA1MGE2Y2ZkNjRiODFjNzY0ODVwLTEsCisgICAgLTB4MS4yMTA2YzhwNAorICB9LAorICB7IC8vIEVudHJ5IDkwMworICAgIDB4MS42YTA5ZGZmMmJiZTNjOTYxNmEzNTc2YzU1ZTc3MzIwN3AtMSwKKyAgICAweDEuMjEwNmNhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDQKKyAgICAweDEuNmEwOWRmZjJiYmUzYzk2MTZhMzU3NmM1NWU3NzMyMDdwLTEsCisgICAgLTB4MS4yMTA2Y2FwNAorICB9LAorICB7IC8vIEVudHJ5IDkwNQorICAgIDB4MS42YTBhMGQzM2Y2YWI1YWYyNjJhZDZhZDE4YWMxY2U5ZnAtMSwKKyAgICAweDEuMjEwNmNjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDYKKyAgICAweDEuNmEwYTBkMzNmNmFiNWFmMjYyYWQ2YWQxOGFjMWNlOWZwLTEsCisgICAgLTB4MS4yMTA2Y2NwNAorICB9LAorICB7IC8vIEVudHJ5IDkwNworICAgIDB4MS5mZmZmZmZmZmYwNjVjYjI0MGJjYmZkZmY0OTc3ZGRmOHAtMSwKKyAgICAweDEuMmQ5N2M0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDgKKyAgICAweDEuZmZmZmZmZmZmMDY1Y2IyNDBiY2JmZGZmNDk3N2RkZjhwLTEsCisgICAgLTB4MS4yZDk3YzRwNAorICB9LAorICB7IC8vIEVudHJ5IDkwOQorICAgIDB4MS5mZmZmZmZmZmZjMzI5Mzk4OThmNTg1ZDY5NDhjZjJkMXAtMSwKKyAgICAweDEuMmQ5N2M2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTAKKyAgICAweDEuZmZmZmZmZmZmYzMyOTM5ODk4ZjU4NWQ2OTQ4Y2YyZDFwLTEsCisgICAgLTB4MS4yZDk3YzZwNAorICB9LAorICB7IC8vIEVudHJ5IDkxMQorICAgIDB4MS5mZmZmZmZmZmZmZmY1YzBkMjYzMGVlMGEyN2U4ZDZkMXAtMSwKKyAgICAweDEuMmQ5N2M4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTIKKyAgICAweDEuZmZmZmZmZmZmZmZmNWMwZDI2MzBlZTBhMjdlOGQ2ZDFwLTEsCisgICAgLTB4MS4yZDk3YzhwNAorICB9LAorICB7IC8vIEVudHJ5IDkxMworICAgIDB4MS42YTBhMzgzMWI4MWQ5NDk2NmFkOGRmNGQzNzg4MjRmOXAtMSwKKyAgICAweDEuM2EyOGMycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTQKKyAgICAweDEuNmEwYTM4MzFiODFkOTQ5NjZhZDhkZjRkMzc4ODI0ZjlwLTEsCisgICAgLTB4MS4zYTI4YzJwNAorICB9LAorICB7IC8vIEVudHJ5IDkxNQorICAgIDB4MS42YTBhMGFmMDgyYjViY2E3ZjU1NjlmNGRhNjg4M2Y2NHAtMSwKKyAgICAweDEuM2EyOGM0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTYKKyAgICAweDEuNmEwYTBhZjA4MmI1YmNhN2Y1NTY5ZjRkYTY4ODNmNjRwLTEsCisgICAgLTB4MS4zYTI4YzRwNAorICB9LAorICB7IC8vIEVudHJ5IDkxNworICAgIDB4MS42YTA5ZGRhZjQ3YTViYzhkYmRjYjZiMTM4NDQ5MDJhZXAtMSwKKyAgICAweDEuM2EyOGM2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTgKKyAgICAweDEuNmEwOWRkYWY0N2E1YmM4ZGJkY2I2YjEzODQ0OTAyYWVwLTEsCisgICAgLTB4MS4zYTI4YzZwNAorICB9LAorICB7IC8vIEVudHJ5IDkxOQorICAgIDB4MS5hM2JiMjUxZGM3ZWZhYTFlMjEzN2JiMzdlZDY2NTRkYnAtMTksCisgICAgMHgxLjQ2YjljMHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTIwCisgICAgMHgxLmEzYmIyNTFkYzdlZmFhMWUyMTM3YmIzN2VkNjY1NGRicC0xOSwKKyAgICAtMHgxLjQ2YjljMHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTIxCisgICAgMHgxLjQ3NzY0YTNiOTU2Njc1OGU1YmFhMmUzMDI5ZjFhYmJhcC0yMCwKKyAgICAweDEuNDZiOWMycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjIKKyAgICAweDEuNDc3NjRhM2I5NTY2NzU4ZTViYWEyZTMwMjlmMWFiYmFwLTIwLAorICAgIC0weDEuNDZiOWMycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjMKKyAgICAtMHgxLjcxMTM2Yjg4ZDQ2MDg0OTBmMmRkZmU5MDEwMTExMmFlcC0yMSwKKyAgICAweDEuNDZiOWM0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjQKKyAgICAtMHgxLjcxMTM2Yjg4ZDQ2MDg0OTBmMmRkZmU5MDEwMTExMmFlcC0yMSwKKyAgICAtMHgxLjQ2YjljNHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTI1CisgICAgLTB4MS42YTA5YTNjYzAzYzRiYmFkMjIyMmRmZTViZTMxNzU2NXAtMSwKKyAgICAweDEuNTM0YWJlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjYKKyAgICAtMHgxLjZhMDlhM2NjMDNjNGJiYWQyMjIyZGZlNWJlMzE3NTY1cC0xLAorICAgIC0weDEuNTM0YWJlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjcKKyAgICAtMHgxLjZhMDlkMTBkNDYxMTIzMzVkMGU0M2Q3MzgzODdkZThjcC0xLAorICAgIDB4MS41MzRhYzBwNAorICB9LAorICB7IC8vIEVudHJ5IDkyOAorICAgIC0weDEuNmEwOWQxMGQ0NjExMjMzNWQwZTQzZDczODM4N2RlOGNwLTEsCisgICAgLTB4MS41MzRhYzBwNAorICB9LAorICB7IC8vIEVudHJ5IDkyOQorICAgIC0weDEuNmEwOWZlNGU4MmI1NjM3YTRhOGYzOTJjMzMwMWJlOTRwLTEsCisgICAgMHgxLjUzNGFjMnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTMwCisgICAgLTB4MS42YTA5ZmU0ZTgyYjU2MzdhNGE4ZjM5MmMzMzAxYmU5NHAtMSwKKyAgICAtMHgxLjUzNGFjMnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTMxCisgICAgLTB4MS5mZmZmZmZmZmY5MzI1YWNlNWY2ODJiYmI4YjEyMmEwOXAtMSwKKyAgICAweDEuNWZkYmJjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzIKKyAgICAtMHgxLmZmZmZmZmZmZjkzMjVhY2U1ZjY4MmJiYjhiMTIyYTA5cC0xLAorICAgIC0weDEuNWZkYmJjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzMKKyAgICAtMHgxLmZmZmZmZmZmZmZhMTQ0YWJhZWQ1YjRhYWI4ODA2MzVkcC0xLAorICAgIDB4MS41ZmRiYmVwNAorICB9LAorICB7IC8vIEVudHJ5IDkzNAorICAgIC0weDEuZmZmZmZmZmZmZmExNDRhYmFlZDViNGFhYjg4MDYzNWRwLTEsCisgICAgLTB4MS41ZmRiYmVwNAorICB9LAorICB7IC8vIEVudHJ5IDkzNQorICAgIC0weDEuZmZmZmZmZmZmZTEwMmU4OGZlNDc2MzMxZTFkZGVmYWZwLTEsCisgICAgMHgxLjVmZGJjMHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTM2CisgICAgLTB4MS5mZmZmZmZmZmZlMTAyZTg4ZmU0NzYzMzFlMWRkZWZhZnAtMSwKKyAgICAtMHgxLjVmZGJjMHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTM3CisgICAgLTB4MS42YTBhMTlkNWY2MjZhMzVlZTExMmEzNDYzOGUwNzgwOHAtMSwKKyAgICAweDEuNmM2Y2JhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzgKKyAgICAtMHgxLjZhMGExOWQ1ZjYyNmEzNWVlMTEyYTM0NjM4ZTA3ODA4cC0xLAorICAgIC0weDEuNmM2Y2JhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzkKKyAgICAtMHgxLjZhMDllYzk0YmNmMzUyMDhjY2QwMzA2ODRkNWRkZDljcC0xLAorICAgIDB4MS42YzZjYmNwNAorICB9LAorICB7IC8vIEVudHJ5IDk0MAorICAgIC0weDEuNmEwOWVjOTRiY2YzNTIwOGNjZDAzMDY4NGQ1ZGRkOWNwLTEsCisgICAgLTB4MS42YzZjYmNwNAorICB9LAorICB7IC8vIEVudHJ5IDk0MQorICAgIC0weDEuNmEwOWJmNTM3ZTE3ZDkwMDY1OWJkMmZhMjRjM2E4YzhwLTEsCisgICAgMHgxLjZjNmNiZXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTQyCisgICAgLTB4MS42YTA5YmY1MzdlMTdkOTAwNjU5YmQyZmEyNGMzYThjOHAtMSwKKyAgICAtMHgxLjZjNmNiZXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTQzCisgICAgLTB4MS5mN2ZmNTIzNjBjNjIyYjNmOTRkOWM3MjUwYmZhZDhkNHAtMTksCisgICAgMHgxLjc4ZmRiNnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTQ0CisgICAgLTB4MS5mN2ZmNTIzNjBjNjIyYjNmOTRkOWM3MjUwYmZhZDhkNHAtMTksCisgICAgLTB4MS43OGZkYjZwNAorICB9LAorICB7IC8vIEVudHJ5IDk0NQorICAgIC0weDEuZWZmZWE0NmMyMWJhYTNkYTdjMjY2Yzk1M2EwMTM1OThwLTIwLAorICAgIDB4MS43OGZkYjhwNAorICB9LAorICB7IC8vIEVudHJ5IDk0NgorICAgIC0weDEuZWZmZWE0NmMyMWJhYTNkYTdjMjY2Yzk1M2EwMTM1OThwLTIwLAorICAgIC0weDEuNzhmZGI4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDcKKyAgICAweDEuMDAxNWI5M2RkMGYwOTViZTFlYjBhNWI4N2ZlNWUzM2VwLTI0LAorICAgIDB4MS43OGZkYmFwNAorICB9LAorICB7IC8vIEVudHJ5IDk0OAorICAgIDB4MS4wMDE1YjkzZGQwZjA5NWJlMWViMGE1Yjg3ZmU1ZTMzZXAtMjQsCisgICAgLTB4MS43OGZkYmFwNAorICB9LAorICB7IC8vIEVudHJ5IDk0OQorICAgIDB4MS42YTA5OTRlNjhiNzg3ZWU0ZmQ2ODMwYjI4ODIyNTc0NXAtMSwKKyAgICAweDEuODU4ZWI0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTAKKyAgICAweDEuNmEwOTk0ZTY4Yjc4N2VlNGZkNjgzMGIyODgyMjU3NDVwLTEsCisgICAgLTB4MS44NThlYjRwNAorICB9LAorICB7IC8vIEVudHJ5IDk1MQorICAgIDB4MS42YTA5YzIyN2NmYTE5NGQxZmE3YWI5OTA5ZGU1MDgzY3AtMSwKKyAgICAweDEuODU4ZWI2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTIKKyAgICAweDEuNmEwOWMyMjdjZmExOTRkMWZhN2FiOTkwOWRlNTA4M2NwLTEsCisgICAgLTB4MS44NThlYjZwNAorICB9LAorICB7IC8vIEVudHJ5IDk1MworICAgIDB4MS42YTA5ZWY2OTBlMjI4M2I2NTg1MDllZDMxOTQ4MzgzOXAtMSwKKyAgICAweDEuODU4ZWI4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTQKKyAgICAweDEuNmEwOWVmNjkwZTIyODNiNjU4NTA5ZWQzMTk0ODM4MzlwLTEsCisgICAgLTB4MS44NThlYjhwNAorICB9LAorICB7IC8vIEVudHJ5IDk1NQorICAgIC0weDEuZjM5NTdiYWQ3MGUwNzQxZjFkM2Q2NzUxMjQ2Y2UyMWFwLTEsCisgICAgMHgxLmZmZmZmZXA2MgorICB9LAorICB7IC8vIEVudHJ5IDk1NgorICAgIC0weDEuZjM5NTdiYWQ3MGUwNzQxZjFkM2Q2NzUxMjQ2Y2UyMWFwLTEsCisgICAgLTB4MS5mZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTcKKyAgICAweDEuODJhYTM3NWIzYzMzZTcwNjYzNzMxYmFiNGJlYjZlZDNwLTcsCisgICAgMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDk1OAorICAgIDB4MS44MmFhMzc1YjNjMzNlNzA2NjM3MzFiYWI0YmViNmVkM3AtNywKKyAgICAtMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDk1OQorICAgIDB4MS45NDVlNmM2OWE1ODBmYjdiYjI3ZDAyYzBmZTBmOGE3MXAtMiwKKyAgICAweDEuMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgOTYwCisgICAgMHgxLjk0NWU2YzY5YTU4MGZiN2JiMjdkMDJjMGZlMGY4YTcxcC0yLAorICAgIC0weDEuMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgOTYxCisgICAgLTB4MS5iMmQyNTVmMmJkMDQyM2UyOWUyYTU0ODcyOGYwMzRhYnAtMSwKKyAgICAweDEuZmZmZmZlcDI2CisgIH0sCisgIHsgLy8gRW50cnkgOTYyCisgICAgLTB4MS5iMmQyNTVmMmJkMDQyM2UyOWUyYTU0ODcyOGYwMzRhYnAtMSwKKyAgICAtMHgxLmZmZmZmZXAyNgorICB9LAorICB7IC8vIEVudHJ5IDk2MworICAgIDB4MS40YWI2NTExYTdkMzlhZDNjYzg4ZGVkMWU3NzVjYTE0N3AtMSwKKyAgICAweDEucDI3CisgIH0sCisgIHsgLy8gRW50cnkgOTY0CisgICAgMHgxLjRhYjY1MTFhN2QzOWFkM2NjODhkZWQxZTc3NWNhMTQ3cC0xLAorICAgIC0weDEucDI3CisgIH0sCisgIHsgLy8gRW50cnkgOTY1CisgICAgLTB4MS5hZDNkODBjODJmNDQ1MmIwNzY1ODFkZTI0NjQ4NDM1YnAtMSwKKyAgICAweDEuMDAwMDAycDI3CisgIH0sCisgIHsgLy8gRW50cnkgOTY2CisgICAgLTB4MS5hZDNkODBjODJmNDQ1MmIwNzY1ODFkZTI0NjQ4NDM1YnAtMSwKKyAgICAtMHgxLjAwMDAwMnAyNworICB9LAorICB7IC8vIEVudHJ5IDk2NworICAgIC0weDEuNDUzMmMzNzIxZWQ0MzQzYWQ4OGVlYTg5MDhhOTg4Y2JwLTIsCisgICAgMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDk2OAorICAgIC0weDEuNDUzMmMzNzIxZWQ0MzQzYWQ4OGVlYTg5MDhhOTg4Y2JwLTIsCisgICAgLTB4MS5mZmZmZmVwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjkKKyAgICAweDEuNDBhZDY3ZjNmMGM5YTE0Mzk2M2M5Yzk2ZGJjZTNmOGFwLTEsCisgICAgMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDk3MAorICAgIDB4MS40MGFkNjdmM2YwYzlhMTQzOTYzYzljOTZkYmNlM2Y4YXAtMSwKKyAgICAtMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDk3MQorICAgIDB4MS5jYWY4NTM3YzNlNDQyY2E4YWNhODZjMTU2NzczODUzYXAtMiwKKyAgICAweDEuMDAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgOTcyCisgICAgMHgxLmNhZjg1MzdjM2U0NDJjYThhY2E4NmMxNTY3NzM4NTNhcC0yLAorICAgIC0weDEuMDAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgOTczCisgICAgLTB4MS40ZWFhNjY3YmEwYjkwZGZiMDVhYjNkOWMyNDdjZGVlN3AtMSwKKyAgICAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzQKKyAgICAtMHgxLjRlYWE2NjdiYTBiOTBkZmIwNWFiM2Q5YzI0N2NkZWU3cC0xLAorICAgIC0weDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzUKKyAgICAtMHgxLjRlYWE2MDZkYjI0YzBjNDY2ZGExYzJkYzdiYWEyYjMycC0xLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDk3NgorICAgIC0weDEuNGVhYTYwNmRiMjRjMGM0NjZkYTFjMmRjN2JhYTJiMzJwLTEsCisgICAgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDk3NworICAgIC0weDEuNGVhYTU0NTFkNTMzNDhlYjg5ZGM0NzhkNGQxMWJlMDJwLTEsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTc4CisgICAgLTB4MS40ZWFhNTQ1MWQ1MzM0OGViODlkYzQ3OGQ0ZDExYmUwMnAtMSwKKyAgICAtMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTc5CisgICAgLTB4MS5hYTIyNWUyZWY5NjI0MTkxNWI2ZmQyMTc1MjI4MTRmNXAtMiwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODAKKyAgICAtMHgxLmFhMjI1ZTJlZjk2MjQxOTE1YjZmZDIxNzUyMjgxNGY1cC0yLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODEKKyAgICAtMHgxLmFhMjI2NTc1MzcyMDRhNDMzMmY4YWNiYjcyYjBkNzY4cC0yLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDk4MgorICAgIC0weDEuYWEyMjY1NzUzNzIwNGE0MzMyZjhhY2JiNzJiMGQ3NjhwLTIsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDk4MworICAgIC0weDEuYWEyMjc0MDFiMjg4NjIwYTAzNzJkNWE5NjA4NDkxNWRwLTIsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTg0CisgICAgLTB4MS5hYTIyNzQwMWIyODg2MjBhMDM3MmQ1YTk2MDg0OTE1ZHAtMiwKKyAgICAtMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTg1CisgICAgMHgxLjE0YTI4MmFhMjViMTFmNjMxMmE3YTY1MTgwZTdjM2Q0cC0xLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODYKKyAgICAweDEuMTRhMjgyYWEyNWIxMWY2MzEyYTdhNjUxODBlN2MzZDRwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODcKKyAgICAweDEuMTRhMjgwZmI1MDY4YjkyMzg0OGNkYjJlZDBlMzdhNTNwLTEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTg4CisgICAgMHgxLjE0YTI4MGZiNTA2OGI5MjM4NDhjZGIyZWQwZTM3YTUzcC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODkKKyAgICAweDEuMTRhMjdkOWRhNWQ0YWViY2U3MTQyOGY5MDU3YjA4ZGFwLTEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTkwCisgICAgMHgxLjE0YTI3ZDlkYTVkNGFlYmNlNzE0MjhmOTA1N2IwOGRhcC0xLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTEKKyAgICAweDEuYzE1MjgwZTA3Mzc2OTJkZDQzNjkwOGZkYzhlNmUyZTFwLTEsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDk5MgorICAgIDB4MS5jMTUyODBlMDczNzY5MmRkNDM2OTA4ZmRjOGU2ZTJlMXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDk5MworICAgIDB4MS5jMTUyODA2NWI3ZDRmOWRiN2JiYjNiNDVmNWY1YjMwYXAtMSwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTk0CisgICAgMHgxLmMxNTI4MDY1YjdkNGY5ZGI3YmJiM2I0NWY1ZjViMzBhcC0xLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTk1CisgICAgMHgxLmMxNTI3ZjcwNDA5MDc2ZGEwYzMyMDRkZjFlMDk5YTgzcC0xLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTYKKyAgICAweDEuYzE1MjdmNzA0MDkwNzZkYTBjMzIwNGRmMWUwOTlhODNwLTEsCisgICAgLTB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTcKKyAgICAweDEuZjAxNTRhMTc4OWQ4ZGNjMTcyY2QyMDkyZDA1ZjYzOTRwLTEsCisgICAgMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDk5OAorICAgIDB4MS5mMDE1NGExNzg5ZDhkY2MxNzJjZDIwOTJkMDVmNjM5NHAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDk5OQorICAgIDB4MS5mMDE1NDlmN2RlZWExNzRmMDdhNjc5NzJiZjI5ZjE0OHAtMSwKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTAwMAorICAgIDB4MS5mMDE1NDlmN2RlZWExNzRmMDdhNjc5NzJiZjI5ZjE0OHAtMSwKKyAgICAtMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwMDEKKyAgICAweDEuZjAxNTQ5Yjg4OTBjMmY2NjMzN2NhYzE1YTcyMzdjOGVwLTEsCisgICAgMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwMDIKKyAgICAweDEuZjAxNTQ5Yjg4OTBjMmY2NjMzN2NhYzE1YTcyMzdjOGVwLTEsCisgICAgLTB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAzCisgICAgMHgxLmZjMDE1NTJmZDA2OGVlODNmNWI3NDJjMDUyNDVlOGIycC0xLAorICAgIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA0CisgICAgMHgxLmZjMDE1NTJmZDA2OGVlODNmNWI3NDJjMDUyNDVlOGIycC0xLAorICAgIC0weDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTAwNQorICAgIDB4MS5mYzAxNTUyN2Q1YmQzNmRhM2NkNDI1M2JlZGUzMTljYXAtMSwKKyAgICAweDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTAwNgorICAgIDB4MS5mYzAxNTUyN2Q1YmQzNmRhM2NkNDI1M2JlZGUzMTljYXAtMSwKKyAgICAtMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDEwMDcKKyAgICAweDEuZmMwMTU1MTdlMDY1YWZiNmJiMTAyYzE4ZjU5MTk4MjBwLTEsCisgICAgMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDEwMDgKKyAgICAweDEuZmMwMTU1MTdlMDY1YWZiNmJiMTAyYzE4ZjU5MTk4MjBwLTEsCisgICAgLTB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA5CisgICAgMHgxLmZmMDAxNTU2OWVmN2UyYjk2MzAxZTZmNzUyYzAxOWQ0cC0xLAorICAgIDB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEwCisgICAgMHgxLmZmMDAxNTU2OWVmN2UyYjk2MzAxZTZmNzUyYzAxOWQ0cC0xLAorICAgIC0weDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTAxMQorICAgIDB4MS5mZjAwMTU1NDlmNGQzNGNhMGUxZWU2NTA5YmM0MmI3MXAtMSwKKyAgICAweDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMTAxMgorICAgIDB4MS5mZjAwMTU1NDlmNGQzNGNhMGUxZWU2NTA5YmM0MmI3MXAtMSwKKyAgICAtMHgxLnAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMTMKKyAgICAweDEuZmYwMDE1NTA5ZmY3ZDJlZTY0MThlOTI0ZjBkZTVlOTdwLTEsCisgICAgMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMTQKKyAgICAweDEuZmYwMDE1NTA5ZmY3ZDJlZTY0MThlOTI0ZjBkZTVlOTdwLTEsCisgICAgLTB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE1CisgICAgMHgxLmZmYzAwMTU1ZDI3N2Q1OGU3MjdjZDk1YzQzZjc1OWNmcC0xLAorICAgIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE2CisgICAgMHgxLmZmYzAwMTU1ZDI3N2Q1OGU3MjdjZDk1YzQzZjc1OWNmcC0xLAorICAgIC0weDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTAxNworICAgIDB4MS5mZmMwMDE1NTUyN2QyYjEyYWVkYjQ5ZDkyOTI4ZGY3MnAtMSwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgMTAxOAorICAgIDB4MS5mZmMwMDE1NTUyN2QyYjEyYWVkYjQ5ZDkyOTI4ZGY3MnAtMSwKKyAgICAtMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwMTkKKyAgICAweDEuZmZjMDAxNTQ1Mjg3ZDQ5YjU3OTcyYWY1MTQ1NjYzYTBwLTEsCisgICAgMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwMjAKKyAgICAweDEuZmZjMDAxNTQ1Mjg3ZDQ5YjU3OTcyYWY1MTQ1NjYzYTBwLTEsCisgICAgLTB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIxCisgICAgMHgxLmZmZjAwMDE1NzU0OTlmM2Q3OTk2ZTJkYTExY2RlYjI0cC0xLAorICAgIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIyCisgICAgMHgxLmZmZjAwMDE1NzU0OTlmM2Q3OTk2ZTJkYTExY2RlYjI0cC0xLAorICAgIC0weDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTAyMworICAgIDB4MS5mZmYwMDAxNTU1NDlmNGEyOGEyODBlOTdiY2Q1OWM4YXAtMSwKKyAgICAweDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMTAyNAorICAgIDB4MS5mZmYwMDAxNTU1NDlmNGEyOGEyODBlOTdiY2Q1OWM4YXAtMSwKKyAgICAtMHgxLnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwMjUKKyAgICAweDEuZmZmMDAwMTUxNTRhOWYwY2FlNGE2MjE1MTUwMWNkMGFwLTEsCisgICAgMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwMjYKKyAgICAweDEuZmZmMDAwMTUxNTRhOWYwY2FlNGE2MjE1MTUwMWNkMGFwLTEsCisgICAgLTB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI3CisgICAgMHgxLmZmZmZmZmYwMDAwMDIwMTU1NTQ0ZmZmNDlmY2EzOGU2cC0xLAorICAgIDB4MS5mZmZmZmVwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgMTAyOAorICAgIDB4MS5mZmZmZmZmMDAwMDAyMDE1NTU0NGZmZjQ5ZmNhMzhlNnAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI5CisgICAgMHgxLmZmZmZmZmYwMDAwMDAwMTU1NTU1NTU0OWY0OWY0OWY3cC0xLAorICAgIDB4MS5wLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTAzMAorICAgIDB4MS5mZmZmZmZmMDAwMDAwMDE1NTU1NTU1NDlmNDlmNDlmN3AtMSwKKyAgICAtMHgxLnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMxCisgICAgMHgxLmZmZmZmZmVmZmZmZmMwMTU1NTE1ZmZmNGExNDk2YzFjcC0xLAorICAgIDB4MS4wMDAwMDJwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTAzMgorICAgIDB4MS5mZmZmZmZlZmZmZmZjMDE1NTUxNWZmZjRhMTQ5NmMxY3AtMSwKKyAgICAtMHgxLjAwMDAwMnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZjMDAwMDA3ZmZmZmZjMDE1NTU1cC0xLAorICAgIDB4MS5mZmZmZmVwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMTAzNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmYzAwMDAwN2ZmZmZmYzAxNTU1NXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZjMDAwMDAwMDAwMDAwMDE1NTU1cC0xLAorICAgIDB4MS5wLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTAzNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmYzAwMDAwMDAwMDAwMDAxNTU1NXAtMSwKKyAgICAtMHgxLnAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZiZmZmZmVmZmZmZmYwMDE1NTU1cC0xLAorICAgIDB4MS4wMDAwMDJwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTAzOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmYmZmZmZlZmZmZmZmMDAxNTU1NXAtMSwKKyAgICAtMHgxLjAwMDAwMnAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM5CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZjAwMDAwMWZmZmZmZjAwMDE1cC0xLAorICAgIDB4MS5mZmZmZmVwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMTA0MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmYwMDAwMDFmZmZmZmYwMDAxNXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDAwMDE1cC0xLAorICAgIDB4MS5wLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwMDAxNXAtMSwKKyAgICAtMHgxLnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZWZmZmZmYmZmZmZmYzAwMDE1cC0xLAorICAgIDB4MS4wMDAwMDJwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmVmZmZmZmJmZmZmZmMwMDAxNXAtMSwKKyAgICAtMHgxLjAwMDAwMnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ1CisgICAgMHgxLmI0YmYyYzc5YmRmY2RhYTUzZWQ2YzAxM2Y2NWUwOTYzcC0xLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNDYKKyAgICAweDEuYjRiZjJjNzliZGZjZGFhNTNlZDZjMDEzZjY1ZTA5NjNwLTEsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ3CisgICAgMHgxLmI0YmYyYzc5YmRmY2RhYTUzZWQ2YzAxM2Y2NWUwOTYzcC0xLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA0OAorICAgIDB4MS5iNGJmMmM3OWJkZmNkYWE1M2VkNmMwMTNmNjVlMDk2M3AtMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ5CisgICAgMHgxLmI0YmYyYzc5YmRmY2RhYTUzZWQ2YzAxM2Y2NWUwOTYzcC0xLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA1MAorICAgIDB4MS5iNGJmMmM3OWJkZmNkYWE1M2VkNmMwMTNmNjVlMDk2M3AtMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUxCisgICAgLTB4MS44ODc3YTI5ZTNkN2I2ZGVmY2I1MjhlODZmNGMzZTA5YXAtMSwKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNTIKKyAgICAtMHgxLjg4NzdhMjllM2Q3YjZkZWZjYjUyOGU4NmY0YzNlMDlhcC0xLAorICAgIC0weDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZGQ5NDg0OTI3MWQwOGVlY2Y1NGExcC0xLAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDEwNTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZGQ5NDg0OTI3MWQwOGVlY2Y1NGExcC0xLAorICAgIC0weDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU1CisgICAgLTB4MS43NzdhNWNmNzJjZWNjNGNkZTNhMzFlN2Q1YTAyNjE0MnAtMjUsCisgICAgMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1NgorICAgIC0weDEuNzc3YTVjZjcyY2VjYzRjZGUzYTMxZTdkNWEwMjYxNDJwLTI1LAorICAgIC0weDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU3CisgICAgMHgxLjE0YTI3ZDlkYTVkNGFlYmNlNzE0MjhmOTA1N2IwOGRhcC0xLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNTgKKyAgICAweDEuMTRhMjdkOWRhNWQ0YWViY2U3MTQyOGY5MDU3YjA4ZGFwLTEsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNTkKKyAgICAweDEuMTRhMjgwZmI1MDY4YjkyMzg0OGNkYjJlZDBlMzdhNTNwLTEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MAorICAgIDB4MS4xNGEyODBmYjUwNjhiOTIzODQ4Y2RiMmVkMGUzN2E1M3AtMSwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MQorICAgIDB4MS4xNGEyODJhYTI1YjExZjYzMTJhN2E2NTE4MGU3YzNkNHAtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MgorICAgIDB4MS4xNGEyODJhYTI1YjExZjYzMTJhN2E2NTE4MGU3YzNkNHAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNjMKKyAgICAweDEuNmEwOWU1ZTMzMzU5ODNlNWFjOTJlNzMzZTNmMjRiNDJwLTEsCisgICAgMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNjQKKyAgICAweDEuNmEwOWU1ZTMzMzU5ODNlNWFjOTJlNzMzZTNmMjRiNDJwLTEsCisgICAgLTB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwNjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwNjcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTA2OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTA2OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMTA3NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMTA3NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc3CisgICAgMHgxLnAwLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc4CisgICAgMHgxLnAwLAorICAgIC0wLjBmCisgIH0sCit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2Nvc2hfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2Nvc2hfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJhOGZlODIKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvY29zaF9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwyOTM0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZG91YmxlLCBkb3VibGU+IGdfY29zaF9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIDB4MS5mOTIyNWY3ZTMxOTNjODAxNTZlMjkzNzhjMzRiMjNkM3A4MzEsCisgICAgLTB4MS4yMGIwNjU5ZDhhN2UxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLmY5MjI1ZjdlMzE5M2M4MDE1NmUyOTM3OGMzNGIyM2QzcDgzMSwKKyAgICAweDEuMjBiMDY1OWQ4YTdlMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS5lMTI4ZDNhOTljNGIyODIxNjUxMWE3YWQ5OGQxMDZmMHA5MTEsCisgICAgLTB4MS4zYzY0MHA5CisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS5lMTI4ZDNhOTljNGIyODIxNjUxMWE3YWQ5OGQxMDZmMHA5MTEsCisgICAgMHgxLjNjNjQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLmY1ZjYyZDQ0NGYyNGMzYmVlOGFlYjc1YTQxM2I4MTAxcDk0MSwKKyAgICAtMHgxLjQ2Y2YxYTRlOGVmZjhwOQorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuZjVmNjJkNDQ0ZjI0YzNiZWU4YWViNzVhNDEzYjgxMDFwOTQxLAorICAgIDB4MS40NmNmMWE0ZThlZmY4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLmZkMGQyN2Y0Y2ZlOTg4MDFkMTVmYTJkNDhlNWE1NGMwcDk1MiwKKyAgICAtMHgxLjRhYTBkOTY3MTlmYzZwOQorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuZmQwZDI3ZjRjZmU5ODgwMWQxNWZhMmQ0OGU1YTU0YzBwOTUyLAorICAgIDB4MS40YWEwZDk2NzE5ZmM2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLmViMzRmMGE5MmVlNzI4MDEyOGMxMTRmMDdkMzU1Nzc2cDk1OCwKKyAgICAtMHgxLjRjYjA5ZTY1ZWI5MzBwOQorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuZWIzNGYwYTkyZWU3MjgwMTI4YzExNGYwN2QzNTU3NzZwOTU4LAorICAgIDB4MS40Y2IwOWU2NWViOTMwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5kMjEwOGU5YWExYjEyNDE2ODk2MGE2N2YxY2IyOGIwN3A5NjAsCisgICAgLTB4MS40ZDViNTZkNWI1NWFjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5kMjEwOGU5YWExYjEyNDE2ODk2MGE2N2YxY2IyOGIwN3A5NjAsCisgICAgMHgxLjRkNWI1NmQ1YjU1YWNwOQorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLmY2OGQ3Y2YzMGUwMTIzYzIxNjRjMTM2OGQyMTNmOWI1cDk3MCwKKyAgICAtMHgxLjUwZGMzNzM5ZGRlOGVwOQorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLmY2OGQ3Y2YzMGUwMTIzYzIxNjRjMTM2OGQyMTNmOWI1cDk3MCwKKyAgICAweDEuNTBkYzM3MzlkZGU4ZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEuZmQ3OTk0MzA0NDNmMDgwMGVmMmZjZjJjZDlkYTk2OTdwOTc1LAorICAgIC0weDEuNTI5OTk0YmIxNTc5NXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuZmQ3OTk0MzA0NDNmMDgwMGVmMmZjZjJjZDlkYTk2OTdwOTc1LAorICAgIDB4MS41Mjk5OTRiYjE1Nzk1cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5lN2IzNmViMWYxZTY5ODAxN2Q5MDVjOTFlMjVkZjYxNnAxMDA1LAorICAgIC0weDEuNWNmOWFjZTI3ZDEyMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuZTdiMzZlYjFmMWU2OTgwMTdkOTA1YzkxZTI1ZGY2MTZwMTAwNSwKKyAgICAweDEuNWNmOWFjZTI3ZDEyMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuZjNhZTZlNmFkNmNmMzNmOTUyYjhkN2QyNmFiY2Q5NDZwMTAxMywKKyAgICAtMHgxLjVmYzI5MDdiYmZiNTNwOQorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLmYzYWU2ZTZhZDZjZjMzZjk1MmI4ZDdkMjZhYmNkOTQ2cDEwMTMsCisgICAgMHgxLjVmYzI5MDdiYmZiNTNwOQorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLmZmZmZmZmZmZmViMmExYjBlMjYzYWM2ODA3NmVkNGUwcDEwMjIsCisgICAgLTB4MS42MmU0MmZlZmEzOWVhcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS5mZmZmZmZmZmZlYjJhMWIwZTI2M2FjNjgwNzZlZDRlMHAxMDIyLAorICAgIDB4MS42MmU0MmZlZmEzOWVhcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS4wMDAwMDRhMjRlNTU4YzAyYTk0NzBiZDhkNGY4NjlhM3AwLAorICAgIC0weDEuODVhY2ZiNmNmMDk5MnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS4wMDAwMDRhMjRlNTU4YzAyYTk0NzBiZDhkNGY4NjlhM3AwLAorICAgIDB4MS44NWFjZmI2Y2YwOTkycC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLnAwLAorICAgIC0weDEuOXAtMTA2OQorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLnAwLAorICAgIDB4MS45cC0xMDY5CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuMTRjMTI4YjFhN2MyYjY5ZjU4NGM0MmUxZjVkMjRlNDNwMCwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS4xNGMxMjhiMWE3YzJiNjlmNTg0YzQyZTFmNWQyNGU0M3AwLAorICAgIDB4MS45OTk5OTk5OTk5OTlhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuNTgwNDg1OTkzY2Y1MzgwMDA3YjZmM2RmYjM0MjY3OTVwMSwKKyAgICAtMHgxLmE1MmYyZmZmMjY2NThwMAorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLjU4MDQ4NTk5M2NmNTM4MDAwN2I2ZjNkZmIzNDI2Nzk1cDEsCisgICAgMHgxLmE1MmYyZmZmMjY2NThwMAorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLjc4NmNmNTY1NWZmMmNmOWYzZTJmOTEwMTNmM2Y4YzMxcDksCisgICAgLTB4MS5kNDQ5ZjZiOTJmYjcwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS43ODZjZjU2NTVmZjJjZjlmM2UyZjkxMDEzZjNmOGMzMXA5LAorICAgIDB4MS5kNDQ5ZjZiOTJmYjcwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS4wNzJmMmY4OWRkYzJmN2E2ZGQyNDIwZjRmZGUyYzI0NHAwLAorICAgIC0weDEuZTQxMWFjMTdjNjE2ZHAtMworICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLjA3MmYyZjg5ZGRjMmY3YTZkZDI0MjBmNGZkZTJjMjQ0cDAsCisgICAgMHgxLmU0MTFhYzE3YzYxNmRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS4wMDAwMDAwMDAwMjAwMDAwMDAwMDAwYWFhYWFhYWFhYXAwLAorICAgIDB4MS4wcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLjAwMDAwMDAwMDAyMDAwMDAwMDAwMDBhYWFhYWFhYWFhcDAsCisgICAgLTB4MS4wcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwMGFhYWFhcDAsCisgICAgMHgxLjBwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDAwYWFhYWFwMCwKKyAgICAtMHgxLjBwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuOTVlNTRjNWRkNDIxNzdmNTNmNGQ1MjE5ZGYxMWNhM2JwMTgzLAorICAgIDB4MS4wcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS45NWU1NGM1ZGQ0MjE3N2Y1M2Y0ZDUyMTlkZjExY2EzYnAxODMsCisgICAgLTB4MS4wcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDIwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAyMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMzUyCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEucDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS43NDllYWE5M2Y0ZTk4ZmZlY2Q0NGVhZTAzZDBhMWQ1YnAxMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwM3AzCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuNzQ5ZWFhOTNmNGU5OGZmZWNkNDRlYWUwM2QwYTFkNWJwMTAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAzcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS40MWM3YTg4MTRjNzg2ODNjZGJjMTY1NTk3Y2E2MWQyM3AzNjgsCisgICAgMHgxLjAwMDAwMDAwMDAwMDdwOAorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLjQxYzdhODgxNGM3ODY4M2NkYmMxNjU1OTdjYTYxZDIzcDM2OCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDdwOAorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDExMGFhYWFhcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMTFwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMTEwYWFhYWFwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMTFwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuOGIwNzU1MWQ5ZjY3ZjdmZGMwZmY2N2JmOTJhOTYyZmRwMCwKKyAgICAweDEuMDAwMDAwMDAwMDEwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEuOGIwNzU1MWQ5ZjY3ZjdmZGMwZmY2N2JmOTJhOTYyZmRwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAxMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLjFmNDNmY2M1OTUyYzM3ZmYwNTA2ZWFhMWIwYzIxNmVlcDQ1LAorICAgIDB4MS4wMDAwMDAwMDA2MzQ1cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS4xZjQzZmNjNTk1MmMzN2ZmMDUwNmVhYTFiMGMyMTZlZXA0NSwKKyAgICAtMHgxLjAwMDAwMDAwMDYzNDVwNQorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjk0ZGJkZmJiNjZiYzY1MWVlNzY1NzIxMTlkOWMxYzRjcDczNywKKyAgICAweDEuMDAwMDIwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuOTRkYmRmYmI2NmJjNjUxZWU3NjU3MjExOWQ5YzFjNGNwNzM3LAorICAgIC0weDEuMDAwMDIwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuMjAzZmM2NWEwMzRkMDdmZmRhODkxZjBjZTU2YTY5YjZwNDUsCisgICAgMHgxLjAwMDcwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS4yMDNmYzY1YTAzNGQwN2ZmZGE4OTFmMGNlNTZhNjliNnA0NSwKKyAgICAtMHgxLjAwMDcwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS4wMDAwMDAwMDAwMDAwODAxMDAwODAwMDAwMDBhYWQ1NXAwLAorICAgIDB4MS4wMDFwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuMDAwMDAwMDAwMDAwMDgwMTAwMDgwMDAwMDAwYWFkNTVwMCwKKyAgICAtMHgxLjAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS43NWU1NDQzMmM4NTUxZmFiZWVjMzI0ODIwMWU2YzJjY3AxMCwKKyAgICAweDEuMDAxYzBwMworICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLjc1ZTU0NDMyYzg1NTFmYWJlZWMzMjQ4MjAxZTZjMmNjcDEwLAorICAgIC0weDEuMDAxYzBwMworICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLmU3MDhkNmY3YTMxOTI1ODAzNGVlM2IyMDRkMjZjYTkycDEsCisgICAgMHgxLjAxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuZTcwOGQ2ZjdhMzE5MjU4MDM0ZWUzYjIwNGQyNmNhOTJwMSwKKyAgICAtMHgxLjAxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuMDAwMDIxNjI4N2NlY2MwZDBkYzJjNTMwNGY1MTNkYjFwMCwKKyAgICAweDEuMDU3YjE3NDgwZWI2YnAtOQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLjAwMDAyMTYyODdjZWNjMGQwZGMyYzUzMDRmNTEzZGIxcDAsCisgICAgLTB4MS4wNTdiMTc0ODBlYjZicC05CisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEuMDAwMDA4NjM3YmRkNDgwMDAxZTk1ZWZkODA0NDc0MDVwMCwKKyAgICAweDEuMDYyNGRkNDFkMWQwNnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS4wMDAwMDg2MzdiZGQ0ODAwMDFlOTVlZmQ4MDQ0NzQwNXAwLAorICAgIC0weDEuMDYyNGRkNDFkMWQwNnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS5mZTg3YzQ2MGFkYzA4ODJmYmU4NTMxNGRmNDE4ZDJiNHAxLAorICAgIDB4MS4wN2JkNjlmNzIwMTdkcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS5mZTg3YzQ2MGFkYzA4ODJmYmU4NTMxNGRmNDE4ZDJiNHAxLAorICAgIC0weDEuMDdiZDY5ZjcyMDE3ZHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuMDAwMDAwMDAwMDIyMDgwMDAwMDAwMGMxMDU2MHAwLAorICAgIDB4MS4wODBwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuMDAwMDAwMDAwMDIyMDgwMDAwMDAwMGMxMDU2MHAwLAorICAgIC0weDEuMDgwcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLmYzOWE1OWYyNTA0MTY4MDM5MjNhMWMxZTE1MjhkNzRkcDEwLAorICAgIDB4MS4wOTYyNTg5NjI1ODk0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS5mMzlhNTlmMjUwNDE2ODAzOTIzYTFjMWUxNTI4ZDc0ZHAxMCwKKyAgICAtMHgxLjA5NjI1ODk2MjU4OTRwMworICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLjA5YzRmZTAwOGViYmY3ZmVmZjljNTU3NDI5NDRjOTc5cDQ3LAorICAgIDB4MS4wYTc3ZDc4ZjYzYzc3cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS4wOWM0ZmUwMDhlYmJmN2ZlZmY5YzU1NzQyOTQ0Yzk3OXA0NywKKyAgICAtMHgxLjBhNzdkNzhmNjNjNzdwNQorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLjI1MGU4MzBkMTdjNTNmZmZmMGYwYTdiMzdjMzI3NGFlcDAsCisgICAgMHgxLjEwNDQxMTA0NDExMDRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS4yNTBlODMwZDE3YzUzZmZmZjBmMGE3YjM3YzMyNzRhZXAwLAorICAgIC0weDEuMTA0NDExMDQ0MTEwNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLjAwMDAwMjRmZjUyNGVjMDIwNmJjZWJjYmNiOGZkMmQ4cDAsCisgICAgMHgxLjEzNDNiOTRjMTBiOTFwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAweDEuMDAwMDAyNGZmNTI0ZWMwMjA2YmNlYmNiY2I4ZmQyZDhwMCwKKyAgICAtMHgxLjEzNDNiOTRjMTBiOTFwLTExCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuYTRlNDY5MzQxM2I5OTcwNzU1YzE1NjMzYWYyNWY5NmJwMzk5LAorICAgIDB4MS4xNWMxOGRlODc3NTYzcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS5hNGU0NjkzNDEzYjk5NzA3NTVjMTU2MzNhZjI1Zjk2YnAzOTksCisgICAgLTB4MS4xNWMxOGRlODc3NTYzcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS5hN2IwYTYzYjc3MTQ4N2ZlN2VhM2U0YzRjNmE1OTg2Y3AwLAorICAgIDB4MS4xNzBwMAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLmE3YjBhNjNiNzcxNDg3ZmU3ZWEzZTRjNGM2YTU5ODZjcDAsCisgICAgLTB4MS4xNzBwMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLjIwNDBmMmExYWI1MmY2NTE5YWNkMGE2OGU0NGUyNjcycDIsCisgICAgMHgxLjE3Y3AxCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEuMjA0MGYyYTFhYjUyZjY1MTlhY2QwYTY4ZTQ0ZTI2NzJwMiwKKyAgICAtMHgxLjE3Y3AxCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuZmZmZmZmZmZmZmZmNjkxYWZkYmY4NTFmNWViZWNmOGZwMjQsCisgICAgMHgxLjIwNTk2NmYyYjRmMTJwNAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLmZmZmZmZmZmZmZmZjY5MWFmZGJmODUxZjVlYmVjZjhmcDI0LAorICAgIC0weDEuMjA1OTY2ZjJiNGYxMnA0CisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuNzk4NDJjMWJjZjAwOTdmZjdmYjJkZDE4MjcxM2U2N2FwMjA3LAorICAgIDB4MS4yMTIwNDgxMjA0ODMxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS43OTg0MmMxYmNmMDA5N2ZmN2ZiMmRkMTgyNzEzZTY3YXAyMDcsCisgICAgLTB4MS4yMTIwNDgxMjA0ODMxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS4yOWZiYjg0YmE4ODc2YjM2OGQ4YTlkYjVjMWUxNDU0ZHAwLAorICAgIDB4MS4yMTVjMzFkZmIwNmJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEuMjlmYmI4NGJhODg3NmIzNjhkOGE5ZGI1YzFlMTQ1NGRwMCwKKyAgICAtMHgxLjIxNWMzMWRmYjA2YmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS5lYWE1MjFlZGYxYmMyODAxNDYwMjE5MWNlNjE4YzA1ZnA4NDUsCisgICAgMHgxLjI1ODZjYTljZjQxMWJwOQorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLmVhYTUyMWVkZjFiYzI4MDE0NjAyMTkxY2U2MThjMDVmcDg0NSwKKyAgICAtMHgxLjI1ODZjYTljZjQxMWJwOQorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLjZhMDllNjY3ZjNiODczZTNmZTNhNjQ2MzJlMzgyYzIwcDI1LAorICAgIDB4MS4yNWU0ZjdiMjczN2Y3cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS42YTA5ZTY2N2YzYjg3M2UzZmUzYTY0NjMyZTM4MmMyMHAyNSwKKyAgICAtMHgxLjI1ZTRmN2IyNzM3ZjdwNAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjU3MjYxZDkwMjIwMTc4MDA5MDU3MWZiNWJmNzBmNjE4cDEyLAorICAgIDB4MS4yOWI5OGQyY2E3N2JmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS41NzI2MWQ5MDIyMDE3ODAwOTA1NzFmYjViZjcwZjYxOHAxMiwKKyAgICAtMHgxLjI5Yjk4ZDJjYTc3YmZwMworICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLmJmYTg2YjNhMDhiYTA4MDAwMzMzMWI4NGZhODA5Yjc4cDUsCisgICAgMHgxLjJkZWUwZjk0NzZlZjBwMgorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmJmYTg2YjNhMDhiYTA4MDAwMzMzMWI4NGZhODA5Yjc4cDUsCisgICAgLTB4MS4yZGVlMGY5NDc2ZWYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuY2EyZDMwYWVlOGM4MzdmOTNjMDE2NDYzYzIzNGJlYjBwMCwKKyAgICAweDEuMmZhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuY2EyZDMwYWVlOGM4MzdmOTNjMDE2NDYzYzIzNGJlYjBwMCwKKyAgICAtMHgxLjJmYXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLmRjODUxYTU1Njg2ZDQ4MDEyYWRkM2MwMmE1NGNjNGQ5cDg3NSwKKyAgICAweDEuMmZlOGJjZDE4MzI5OXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLmRjODUxYTU1Njg2ZDQ4MDEyYWRkM2MwMmE1NGNjNGQ5cDg3NSwKKyAgICAtMHgxLjJmZThiY2QxODMyOTlwOQorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS5mZjEyZjcyOTZiMDQwODAxN2VhYWY0OGZiZjI4MDM5OXA4NzcsCisgICAgMHgxLjMwYTMyNGQ2MDMzYjVwOQorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5mZjEyZjcyOTZiMDQwODAxN2VhYWY0OGZiZjI4MDM5OXA4NzcsCisgICAgLTB4MS4zMGEzMjRkNjAzM2I1cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuMDAwMGI4MzlmODYzYjNlNGJjYWU3MWI1NTA3MmNhODBwMCwKKyAgICAweDEuMzMxZjJhZGJhZjk4ZHAtOAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS4wMDAwYjgzOWY4NjNiM2U0YmNhZTcxYjU1MDcyY2E4MHAwLAorICAgIC0weDEuMzMxZjJhZGJhZjk4ZHAtOAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5mM2E5ODg4NGViYTRiYzMyNjQ3YjdhYzNjNTQwNGY4NXAyNiwKKyAgICAweDEuMzYyM2MwYzllOWQ1YXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLmYzYTk4ODg0ZWJhNGJjMzI2NDdiN2FjM2M1NDA0Zjg1cDI2LAorICAgIC0weDEuMzYyM2MwYzllOWQ1YXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLjc1YTA3Y2ZiMTA3Y2E2YmE5ZGJhMWUyYzJjZWRkNjU5cDQ1MywKKyAgICAweDEuM2IxMTIwNjAwNTQyOXA4CisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLjc1YTA3Y2ZiMTA3Y2E2YmE5ZGJhMWUyYzJjZWRkNjU5cDQ1MywKKyAgICAtMHgxLjNiMTEyMDYwMDU0MjlwOAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS5mMWVmOWM4YTRmZGFlODAxYjE5ZjhlNDJlZmYyYzRhOHA5MjksCisgICAgMHgxLjQyYTU2NWU0NTZlMDRwOQorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS5mMWVmOWM4YTRmZGFlODAxYjE5ZjhlNDJlZmYyYzRhOHA5MjksCisgICAgLTB4MS40MmE1NjVlNDU2ZTA0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuZjRlYzQ0MTk0YjY0MjgwMWE0YWZkNGM1MDYzM2U4YWFwOTM3LAorICAgIDB4MS40NTZiZjIzZTAyNDI4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuZjRlYzQ0MTk0YjY0MjgwMWE0YWZkNGM1MDYzM2U4YWFwOTM3LAorICAgIC0weDEuNDU2YmYyM2UwMjQyOHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLmVhOTFkOTUzM2IzOTQ4MDFiZjNkM2VjOGY4OGRlNTY4cDkzOCwKKyAgICAweDEuNDVjMWZlZWY4MDg2Y3A5CisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLmVhOTFkOTUzM2IzOTQ4MDFiZjNkM2VjOGY4OGRlNTY4cDkzOCwKKyAgICAtMHgxLjQ1YzFmZWVmODA4NmNwOQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS40ZGJlMjczNzkyYmRlN2ZjNDVmZjRmNjg3YmY4MWY5NHA2LAorICAgIDB4MS40NzhwMgorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS40ZGJlMjczNzkyYmRlN2ZjNDVmZjRmNjg3YmY4MWY5NHA2LAorICAgIC0weDEuNDc4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuYTE3MzJiZWZmYjgxZTgwZjA1OWJlNTlkZjA4OGUwZGNwMiwKKyAgICAweDEuNDgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEuYTE3MzJiZWZmYjgxZTgwZjA1OWJlNTlkZjA4OGUwZGNwMiwKKyAgICAtMHgxLjQ4MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLmYyOTJiNzA5YzcwYzkwMzlhZWMyYzk3OGQxZDdlNzNlcDAsCisgICAgMHgxLjQ5NHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgMHgxLmYyOTJiNzA5YzcwYzkwMzlhZWMyYzk3OGQxZDdlNzNlcDAsCisgICAgLTB4MS40OTRwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5hNmM4M2MwZmQ2NDUzMjA3OTNhMDE0NzI1YzNkNmUyZHAyLAorICAgIDB4MS40OWE0ZDI2OTM0OTgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEuYTZjODNjMGZkNjQ1MzIwNzkzYTAxNDcyNWMzZDZlMmRwMiwKKyAgICAtMHgxLjQ5YTRkMjY5MzQ5ODBwMQorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS4xNGZmOGNlN2VlZGNmN2ZmMDBjODVjMjI5OTBmZDBmZXA5NTEsCisgICAgMHgxLjQ5ZmEzYmM5ZmEzYmNwOQorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS4xNGZmOGNlN2VlZGNmN2ZmMDBjODVjMjI5OTBmZDBmZXA5NTEsCisgICAgLTB4MS40OWZhM2JjOWZhM2JjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuZjZjNjY1MWRlNzBkNzA0YzU1ODM3MjUwODExYzg2ZGRwMCwKKyAgICAweDEuNGJjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuZjZjNjY1MWRlNzBkNzA0YzU1ODM3MjUwODExYzg2ZGRwMCwKKyAgICAtMHgxLjRiY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLmMxOGM1NjMwM2ZlNjZmZmY5ZDliOGM0NzY1NWYxMmMwcDIsCisgICAgMHgxLjUxOTY1ZDJiNTk4MjZwMQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS5jMThjNTYzMDNmZTY2ZmZmOWQ5YjhjNDc2NTVmMTJjMHAyLAorICAgIC0weDEuNTE5NjVkMmI1OTgyNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLmVlYWMzZDkxMmIxY2U4MDEwMGRmMDQyY2ZiMzNjMDZlcDU5LAorICAgIDB4MS41MWZhZmI3ODI2ZjI3cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEuZWVhYzNkOTEyYjFjZTgwMTAwZGYwNDJjZmIzM2MwNmVwNTksCisgICAgLTB4MS41MWZhZmI3ODI2ZjI3cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuOTU0OGU5Njg4ZmIyZTgwMGM0NjZlN2Q4OTMzMjhmNjhwOTkxLAorICAgIDB4MS41ODA3ZGM3ODdhNWQ1cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEuOTU0OGU5Njg4ZmIyZTgwMGM0NjZlN2Q4OTMzMjhmNjhwOTkxLAorICAgIC0weDEuNTgwN2RjNzg3YTVkNXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLjAwMDAwM2E5M2JlNzJiZmZhZWI4MjlhZDIzZjk5MDFicDAsCisgICAgMHgxLjVhNWM2YWYzY2JmMzVwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgMHgxLjAwMDAwM2E5M2JlNzJiZmZhZWI4MjlhZDIzZjk5MDFicDAsCisgICAgLTB4MS41YTVjNmFmM2NiZjM1cC0xMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS44ZDM1YjEyYzQ4NDA0ODAwMDM0YmVlNzNjOTk4MzE2ZnAxNCwKKyAgICAweDEuNWFjNDkwOGE3NTRjMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLjhkMzViMTJjNDg0MDQ4MDAwMzRiZWU3M2M5OTgzMTZmcDE0LAorICAgIC0weDEuNWFjNDkwOGE3NTRjMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLmYyYTNjMjlmYzZkNzIzYTYzZTM0OWJiY2Q3ODk0YThhcDEwMDcsCisgICAgMHgxLjVkYWRmNWQxZTQ1MmNwOQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIDB4MS5mMmEzYzI5ZmM2ZDcyM2E2M2UzNDliYmNkNzg5NGE4YXAxMDA3LAorICAgIC0weDEuNWRhZGY1ZDFlNDUyY3A5CisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLmVkY2IxNDg3OTYxM2U4MDE3NjA4N2MxYTc2ZGVjOTdjcDEwMDgsCisgICAgMHgxLjVlMDU2ZWQ0MGU1NmVwOQorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDB4MS5lZGNiMTQ4Nzk2MTNlODAxNzYwODdjMWE3NmRlYzk3Y3AxMDA4LAorICAgIC0weDEuNWUwNTZlZDQwZTU2ZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLjk2ZmFhODcyYTA2YWEzMDAzZjUxNThkZTljNTcwMzAycDEwMjMsCisgICAgMHgxLjYzMWY4NmFjMDYxMWJwOQorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS45NmZhYTg3MmEwNmFhMzAwM2Y1MTU4ZGU5YzU3MDMwMnAxMDIzLAorICAgIC0weDEuNjMxZjg2YWMwNjExYnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLmJmNjY4ZmM2ZjRmOWQzMWY3NTNjNDA4MjYxYmIwMmI0cDEwMjMsCisgICAgMHgxLjYzMmJhNThlYWUwNzFwOQorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS5iZjY2OGZjNmY0ZjlkMzFmNzUzYzQwODI2MWJiMDJiNHAxMDIzLAorICAgIC0weDEuNjMyYmE1OGVhZTA3MXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLmZmZmZmZmZmYmNkM2FlNTk1MzAzZTc0YWJiM2ZkNzVkcDEwMjMsCisgICAgMHgxLjYzM2NlOGZiOWY3NzFwOQorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS5mZmZmZmZmZmJjZDNhZTU5NTMwM2U3NGFiYjNmZDc1ZHAxMDIzLAorICAgIC0weDEuNjMzY2U4ZmI5Zjc3MXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLmZmZmZmZmZmZjA5M2FlNTk0ZWQ3NTA4YTAyNDI5NDM2cDEwMjMsCisgICAgMHgxLjYzM2NlOGZiOWY4NDBwOQorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIDB4MS5mZmZmZmZmZmYwOTNhZTU5NGVkNzUwOGEwMjQyOTQzNnAxMDIzLAorICAgIC0weDEuNjMzY2U4ZmI5Zjg0MHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLmZmZmZmZmZmZjcxM2FlNTk0ZWFmYzA4MGE0ODI4OWY5cDEwMjMsCisgICAgMHgxLjYzM2NlOGZiOWY4NWFwOQorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIDB4MS5mZmZmZmZmZmY3MTNhZTU5NGVhZmMwODBhNDgyODlmOXAxMDIzLAorICAgIC0weDEuNjMzY2U4ZmI5Zjg1YXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLjEzNTBhNDEzMDIzYmZmZmZmZTE0MTU2YjJhZDJhMGFhcDEsCisgICAgMHgxLjY2NjY2NjY2NzhkYzlwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDB4MS4xMzUwYTQxMzAyM2JmZmZmZmUxNDE1NmIyYWQyYTBhYXAxLAorICAgIC0weDEuNjY2NjY2NjY3OGRjOXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLjQxNTJjMTg2M2JhODI4MDAwMWNiZjc4OGU2YWEyMzdjcDAsCisgICAgMHgxLjY2NjY2NjY2YTZiN2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAweDEuNDE1MmMxODYzYmE4MjgwMDAxY2JmNzg4ZTZhYTIzN2NwMCwKKyAgICAtMHgxLjY2NjY2NjY2YTZiN2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuZmZmZmQ0N2ZiNzM1YjgwMDc0MDY5MTE3NGM3ZjU4MTNwMzEsCisgICAgMHgxLjZkZmI1MDEzMWU2NmRwNAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDB4MS5mZmZmZDQ3ZmI3MzViODAwNzQwNjkxMTc0YzdmNTgxM3AzMSwKKyAgICAtMHgxLjZkZmI1MDEzMWU2NmRwNAorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS4yM2FhYWNhZjMwNGZiZmZmZmY4NWYyZTAzZjExNzg3MnAzLAorICAgIDB4MS43MzMzMzMzMzVjODRhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAweDEuMjNhYWFjYWYzMDRmYmZmZmZmODVmMmUwM2YxMTc4NzJwMywKKyAgICAtMHgxLjczMzMzMzMzNWM4NGFwMQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDB4MS4wMDAwMDAwMDAwNDdmNDAwODAwMDAzNWVlMDIzZmVwMCwKKyAgICAweDEuN2ZlcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIDB4MS4wMDAwMDAwMDAwNDdmNDAwODAwMDAzNWVlMDIzZmVwMCwKKyAgICAtMHgxLjdmZXAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEuZjBlM2U1YjZjMTdjMDJhNzk5YzMwNmRiYzFiMWE4ZWNwNTU1LAorICAgIDB4MS44MjBkOTJmYzRiNDJhcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAweDEuZjBlM2U1YjZjMTdjMDJhNzk5YzMwNmRiYzFiMWE4ZWNwNTU1LAorICAgIC0weDEuODIwZDkyZmM0YjQyYXA4CisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMHgxLjlkNTU1NTVhYjk4ZjQ4MTdhOWY5MGFjZWZjYTIzNTIzcDE0MCwKKyAgICAweDEuODhkOWVmZjI0M2VjOHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgMHgxLjlkNTU1NTVhYjk4ZjQ4MTdhOWY5MGFjZWZjYTIzNTIzcDE0MCwKKyAgICAtMHgxLjg4ZDllZmYyNDNlYzhwNgorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS4wNGM1ZjNkNzUwOTFlODAxMjU1OWZiODcyODVhOTlkZXAwLAorICAgIDB4MS44YWVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAweDEuMDRjNWYzZDc1MDkxZTgwMTI1NTlmYjg3Mjg1YTk5ZGVwMCwKKyAgICAtMHgxLjhhZXAtMworICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS41MGExMjVhZDMwMGU1ODAyNzM2YWQyZjY4ZGU5ZWZkYXAwLAorICAgIDB4MS44YzYzMThjNjMxOGM0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgMHgxLjUwYTEyNWFkMzAwZTU4MDI3MzZhZDJmNjhkZTllZmRhcDAsCisgICAgLTB4MS44YzYzMThjNjMxOGM0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLmEyY2MwOWUyZTdkZDc4MDAwNWM1ODhiZjJlYmQyZDI4cDM1LAorICAgIDB4MS45NzIwY2M2NmYxY2JicDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAweDEuYTJjYzA5ZTJlN2RkNzgwMDA1YzU4OGJmMmViZDJkMjhwMzUsCisgICAgLTB4MS45NzIwY2M2NmYxY2JicDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuNDllYTViMTU1NjQ2NTAwMDAxY2IzYzdhMTRkNGY2NDFwMSwKKyAgICAweDEuOTk5OTk5OTliOGRiOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgMHgxLjQ5ZWE1YjE1NTY0NjUwMDAwMWNiM2M3YTE0ZDRmNjQxcDEsCisgICAgLTB4MS45OTk5OTk5OWI4ZGI4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuMDE0N2Y0MDIyNGVhNzdmZmZlMzVmNjNlMDYyMGMyOGVwMCwKKyAgICAweDEuOTk5OTk5OTliYmUxYnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS4wMTQ3ZjQwMjI0ZWE3N2ZmZmUzNWY2M2UwNjIwYzI4ZXAwLAorICAgIC0weDEuOTk5OTk5OTliYmUxYnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS4wNTIzMTg0YjI2MTgxZmZmZmU1YWQ1ZjYwYWYzOTYwN3AwLAorICAgIDB4MS45OTk5OTk5YWI2ZWVicC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLjA1MjMxODRiMjYxODFmZmZmZTVhZDVmNjBhZjM5NjA3cDAsCisgICAgLTB4MS45OTk5OTk5YWI2ZWVicC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLjAxNDdmNDAyMjY5NzY4MDAwMWIzZTEzZjAwOWFmODBicDAsCisgICAgMHgxLjk5OTk5OTlhYzc4NTdwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEuMDE0N2Y0MDIyNjk3NjgwMDAxYjNlMTNmMDA5YWY4MGJwMCwKKyAgICAtMHgxLjk5OTk5OTlhYzc4NTdwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuMDUyMzE4NGIyOTAyOTAwMDAxOTlkZTc3MjNiYzc5OWRwMCwKKyAgICAweDEuOTk5OTk5OWIyYWNhMXAtMworICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIDB4MS4wNTIzMTg0YjI5MDI5MDAwMDE5OWRlNzcyM2JjNzk5ZHAwLAorICAgIC0weDEuOTk5OTk5OWIyYWNhMXAtMworICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS4wMTQ3ZjQwMjI4MGVkODAwMDFkNTllZWFjMzZiYTczZHAwLAorICAgIDB4MS45OTk5OTk5YmIxYzc3cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLjAxNDdmNDAyMjgwZWQ4MDAwMWQ1OWVlYWMzNmJhNzNkcDAsCisgICAgLTB4MS45OTk5OTk5YmIxYzc3cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmZmZmZmZmZmZmZlZDQ1N2E0MmUxNjE0NTZjZjg2MmIycDU5MCwKKyAgICAweDEuOWE1N2Q3NmQxNTJmY3A4CisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLmZmZmZmZmZmZmZlZDQ1N2E0MmUxNjE0NTZjZjg2MmIycDU5MCwKKyAgICAtMHgxLjlhNTdkNzZkMTUyZmNwOAorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS42Mzc1NDAxYzRmYmJmODAwMzM4NmVhMzgxZDNmZTY2OXAwLAorICAgIDB4MS5iNWRhZWQ3NmJiNTgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLjYzNzU0MDFjNGZiYmY4MDAzMzg2ZWEzODFkM2ZlNjY5cDAsCisgICAgLTB4MS5iNWRhZWQ3NmJiNTgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLmYzMDYwNWU4YjU0NTE4MDUxMDFiM2VhMDMzYmFiNDFjcDgsCisgICAgMHgxLmI5Zjg5ZTIyNjI5YjVwMgorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIDB4MS5mMzA2MDVlOGI1NDUxODA1MTAxYjNlYTAzM2JhYjQxY3A4LAorICAgIC0weDEuYjlmODllMjI2MjliNXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLmYzMDllYmY4MjNkMTA4MDU0MTU5ZjI3OGUxNmFkMTA5cDgsCisgICAgMHgxLmI5ZjkxZTIyNjI5YjVwMgorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIDB4MS5mMzA5ZWJmODIzZDEwODA1NDE1OWYyNzhlMTZhZDEwOXA4LAorICAgIC0weDEuYjlmOTFlMjI2MjliNXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgMHgxLjE4NWMyYmYxZDUyNzZmZmZkNzNmZDUxYTMwNzc0M2E0cDAsCisgICAgMHgxLmJiNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIDB4MS4xODVjMmJmMWQ1Mjc2ZmZmZDczZmQ1MWEzMDc3NDNhNHAwLAorICAgIC0weDEuYmI0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLjAwMDVmZmQwYzc5N2Y3ZmYxOTcwYmUxODA3ODRhNTVjcDAsCisgICAgMHgxLmJiNnAtNworICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIDB4MS4wMDA1ZmZkMGM3OTdmN2ZmMTk3MGJlMTgwNzg0YTU1Y3AwLAorICAgIC0weDEuYmI2cC03CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLjk2OGVmNmNlYWRlN2Y2MGVkYzJiNGYwMjY1ZGE2YmE0cDY0MCwKKyAgICAweDEuYmNjNTE3YjU1M2M5M3A4CisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLjk2OGVmNmNlYWRlN2Y2MGVkYzJiNGYwMjY1ZGE2YmE0cDY0MCwKKyAgICAtMHgxLmJjYzUxN2I1NTNjOTNwOAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS43Yjk3MmU0NTM3ODM5MzBmMjAyYThhYTQ1NWJiNmMwMXAxLAorICAgIDB4MS5jMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIDB4MS43Yjk3MmU0NTM3ODM5MzBmMjAyYThhYTQ1NWJiNmMwMXAxLAorICAgIC0weDEuYzAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuN2VlYzE5ZDRkY2JjNzM4YmFhMWExMTE0ZGVlMDQ5YjhwMSwKKyAgICAweDEuYzI4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAweDEuN2VlYzE5ZDRkY2JjNzM4YmFhMWExMTE0ZGVlMDQ5YjhwMSwKKyAgICAtMHgxLmMyOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgMHgxLjA2NTY1NjFjYmU1M2M3ZmZmZGI2MGUxYjA1NGQ4ZjE2cDAsCisgICAgMHgxLmM2YzJlOTM0NjdlODBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEuMDY1NjU2MWNiZTUzYzdmZmZkYjYwZTFiMDU0ZDhmMTZwMCwKKyAgICAtMHgxLmM2YzJlOTM0NjdlODBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuMDZhMmIzZTdiNjAzZTgwMGMyZjQxNjc3NjFiMzBiZjhwMCwKKyAgICAweDEuZDE0YmY4M2I0OGVjM3AtMworICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDB4MS4wNmEyYjNlN2I2MDNlODAwYzJmNDE2Nzc2MWIzMGJmOHAwLAorICAgIC0weDEuZDE0YmY4M2I0OGVjM3AtMworICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDB4MS5mYjRkOWRlMGFkODQ1Njc3ZWM2ZmM0NjdjMmNhOWY5YXAxOSwKKyAgICAweDEuZDE4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEuZmI0ZDlkZTBhZDg0NTY3N2VjNmZjNDY3YzJjYTlmOWFwMTksCisgICAgLTB4MS5kMThwMworICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS43M2E2Y2Q4ZjJmNmQ2ODFlNzBmOTY5NWEyNWYzOWMzNXAwLAorICAgIDB4MS5kNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEuNzNhNmNkOGYyZjZkNjgxZTcwZjk2OTVhMjVmMzljMzVwMCwKKyAgICAtMHgxLmQ2MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDB4MS45ZmI3MTU4YTIyNWUwMDAwNDdmNDRmNDdlZGFkMDU0NXAxLAorICAgIDB4MS5kOGI1ZjE0NDM5Zjg3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAweDEuOWZiNzE1OGEyMjVlMDAwMDQ3ZjQ0ZjQ3ZWRhZDA1NDVwMSwKKyAgICAtMHgxLmQ4YjVmMTQ0MzlmODdwMAorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIDB4MS5lYTQwYjRjMzYzMGQxMDAwNjE1ZGU4NzM3ZWM0ODU3Y3A5LAorICAgIDB4MS5lNTMyYTEzNGI5NThjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEuZWE0MGI0YzM2MzBkMTAwMDYxNWRlODczN2VjNDg1N2NwOSwKKyAgICAtMHgxLmU1MzJhMTM0Yjk1OGNwMgorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS5kYmNhOTI2M2Y4NDBmY2E0ODQ1MGU0MDhmYTM2YjU2YnAxNzcsCisgICAgMHgxLmVmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIDB4MS5kYmNhOTI2M2Y4NDBmY2E0ODQ1MGU0MDhmYTM2YjU2YnAxNzcsCisgICAgLTB4MS5lZmZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuMDFlNGZhZDNiOTkzYWExYTUyZDAzNjc5MGIzNGUxY2VwMCwKKyAgICAweDEuZjFmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDB4MS4wMWU0ZmFkM2I5OTNhYTFhNTJkMDM2NzkwYjM0ZTFjZXAwLAorICAgIC0weDEuZjFmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS4wN2E2YmI3ZWRiNWRlODAwMDY2OWIxMjFhNDhmODFlOXAwLAorICAgIDB4MS5mMzdhN2E3NmNiYzcycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgMHgxLjA3YTZiYjdlZGI1ZGU4MDAwNjY5YjEyMWE0OGY4MWU5cDAsCisgICAgLTB4MS5mMzdhN2E3NmNiYzcycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMHgxLmQxZWU4ZTYyYjIwOThmZmY3YjIyNTMyOTczYjRjY3AxLAorICAgIDB4MS5mNzNhMjliOGZjYzIycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAweDEuZDFlZThlNjJiMjA5OGZmZjdiMjI1MzI5NzNiNGNjcDEsCisgICAgLTB4MS5mNzNhMjliOGZjYzIycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAweDEuZjYxN2EyN2UyNTBjZTFiMDY0ODhlNTE2N2MwODQ5YThwOTAsCisgICAgMHgxLmZkZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS5mNjE3YTI3ZTI1MGNlMWIwNjQ4OGU1MTY3YzA4NDlhOHA5MCwKKyAgICAtMHgxLmZkZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS4wMDAwMDAwMDAwMDdmNDAxODE4MGE4MzMyZmVlZDI2OXAwLAorICAgIDB4MS5mZTdmOWZlN2Y5ZmMxcC0yMworICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS4wMDAwMDAwMDAwMDdmNDAxODE4MGE4MzMyZmVlZDI2OXAwLAorICAgIC0weDEuZmU3ZjlmZTdmOWZjMXAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuMDAwMDA3Zjc4MjRjOTQxMjBlYjljM2JlMjE0NDQxOTVwMCwKKyAgICAweDEuZmVlZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAweDEuMDAwMDA3Zjc4MjRjOTQxMjBlYjljM2JlMjE0NDQxOTVwMCwKKyAgICAtMHgxLmZlZWZmZmZmZmZmZmZwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgMHgxLmRmYTM2ZjhlNmJmNzJmYThhOTM0ZWYyN2I1MjMxYjU0cDEsCisgICAgMHgxLmZlZWZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIDB4MS5kZmEzNmY4ZTZiZjcyZmE4YTkzNGVmMjdiNTIzMWI1NHAxLAorICAgIC0weDEuZmVlZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLjA4MDg2ZWM0M2JmNjI4NzU5MGYzNjkyYzJiOGQ1NTVkcDAsCisgICAgMHgxLmZmYjg4NmZlNDQ0YzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuMDgwODZlYzQzYmY2Mjg3NTkwZjM2OTJjMmI4ZDU1NWRwMCwKKyAgICAtMHgxLmZmYjg4NmZlNDQ0YzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEuMDgwOTcyOTk1YTJiNTczYWMwNzY2Njc2MmYxYTBiNzJwMCwKKyAgICAweDEuZmZkOGFmMzM2ODZkYnAtMworICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIDB4MS4wODA5NzI5OTVhMmI1NzNhYzA3NjY2NzYyZjFhMGI3MnAwLAorICAgIC0weDEuZmZkOGFmMzM2ODZkYnAtMworICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS42ZDRmZDlhYjQ3YzkyMDAwNzNhYTgxMjdhMjQxOWFjOHA3MzcsCisgICAgMHgxLmZmZTVlZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDB4MS42ZDRmZDlhYjQ3YzkyMDAwNzNhYTgxMjdhMjQxOWFjOHA3MzcsCisgICAgLTB4MS5mZmU1ZWZmZmZmZmZmcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEuNzQ0MThlOGVhY2E2M2M4MmUyNWE5ZjdkMDY1NDhlNWRwMTAsCisgICAgMHgxLmZmZWZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS43NDQxOGU4ZWFjYTYzYzgyZTI1YTlmN2QwNjU0OGU1ZHAxMCwKKyAgICAtMHgxLmZmZWZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS4wODBhM2RlYjQ2ZWMwOGE1NmNiZDdmMWJkZTI3NTliMHAwLAorICAgIDB4MS5mZmYxZDc3ZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLjA4MGEzZGViNDZlYzA4YTU2Y2JkN2YxYmRlMjc1OWIwcDAsCisgICAgLTB4MS5mZmYxZDc3ZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLjk0MWE4NTVhY2JmN2E3ZmZjNThiMzI2NjBhMjNiYTMycDczNywKKyAgICAweDEuZmZmZmM1ZGZmZmZmZnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgMHgxLjk0MWE4NTVhY2JmN2E3ZmZjNThiMzI2NjBhMjNiYTMycDczNywKKyAgICAtMHgxLmZmZmZjNWRmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS45NWU0ODE2YjYwYThkNzY5NzI0YjU4NmU0ZGViM2IxYnAxODMsCisgICAgMHgxLmZmZmZmZGZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS45NWU0ODE2YjYwYThkNzY5NzI0YjU4NmU0ZGViM2IxYnAxODMsCisgICAgLTB4MS5mZmZmZmRmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuMDgwYWIwNTg5YjYxMjg2YjZkNDE0MDI2OThkNWJmZWVwMCwKKyAgICAweDEuZmZmZmZmN2ZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS4wODBhYjA1ODliNjEyODZiNmQ0MTQwMjY5OGQ1YmZlZXAwLAorICAgIC0weDEuZmZmZmZmN2ZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDB4MS4yMGFjMTg1NDE3NTZmODAwN2I5YTJmNDNkYWIwY2M5Y3AwLAorICAgIDB4MS5mZmZmZmY4ZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLjIwYWMxODU0MTc1NmY4MDA3YjlhMmY0M2RhYjBjYzljcDAsCisgICAgLTB4MS5mZmZmZmY4ZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMHgxLmUxOGZhMGRlYjk4YzY4MDA4YzE5Njc2NjEyMjg2YTJkcDEsCisgICAgMHgxLmZmZmZmZmZmYmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS5lMThmYTBkZWI5OGM2ODAwOGMxOTY3NjYxMjI4NmEyZHAxLAorICAgIC0weDEuZmZmZmZmZmZiZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmY3ZmZmcC0zNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEucDAsCisgICAgLTB4MS5mZmZmZmZmZmY3ZmZmcC0zNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEuMGYyZWJkMGE3ZmMxNzdmNmZhMmEwYTRlNmJiMmY2OTZwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmN2ZwMworICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS4wZjJlYmQwYTdmYzE3N2Y2ZmEyYTBhNGU2YmIyZjY5NnAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmN2ZwMworICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS5lMThmYTBkZjJkOTliODRlOTJmNDNiOWI0N2Y3MzQxZXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEuZTE4ZmEwZGYyZDk5Yjg0ZTkyZjQzYjliNDdmNzM0MWVwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZWVwMAorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS5iNGVlODU4ZGUzZTVhODAwZjY1OTc5Mzc2NTI0OGZiNHA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmY1cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuYjRlZTg1OGRlM2U1YTgwMGY2NTk3OTM3NjUyNDhmYjRwNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjVwMQorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZHAtMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZHAtMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLjAwMDAwMDAwMDAwMDFmZmZmZmZmZmZmZmZjYWFhYWFhcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLjAwMDAwMDAwMDAwMDFmZmZmZmZmZmZmZmZjYWFhYWFhcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZjBhYWFhYXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0yNworICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZjBhYWFhYXAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuOTQ3NjUwNGJhODIwNTdmNjkzMTA2MDhjMzBlNzZjZWJwNzM3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuOTQ3NjUwNGJhODIwNTdmNjkzMTA2MDhjMzBlNzZjZWJwNzM3LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXA4CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS4wMGE3NDEzODY5ZTBiYzY3NWVmOGY4MDU5YmNjMzcyMnAwLAorICAgIDB4MS4yNDkyNDkyNDkyNDkycC00CisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgMHgxLjAwYTc0MTM4NjllMGJjNjc1ZWY4ZjgwNTliY2MzNzIycDAsCisgICAgLTB4MS4yNDkyNDkyNDkyNDkycC00CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLjAyOWRkZjZkZjdmMjljNmU1NTMxYzg1M2FhN2VmNTUxcDAsCisgICAgMHgxLjI0OTI0OTI0OTI0OTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEuMDI5ZGRmNmRmN2YyOWM2ZTU1MzFjODUzYWE3ZWY1NTFwMCwKKyAgICAtMHgxLjI0OTI0OTI0OTI0OTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEuMDVlNjZiNjMyZGYxMjUzYjAxZGY2OWJlOWVjZTQ0ZTNwMCwKKyAgICAweDEuYjZkYjZkYjZkYjZkYnAtMworICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS4wNWU2NmI2MzJkZjEyNTNiMDFkZjY5YmU5ZWNlNDRlM3AwLAorICAgIC0weDEuYjZkYjZkYjZkYjZkYnAtMworICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS4wYTg1MmY2YWVmNGZkMDMwMDhhOGFhMDU1NDg2NTUxOHAwLAorICAgIDB4MS4yNDkyNDkyNDkyNDkycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLjBhODUyZjZhZWY0ZmQwMzAwOGE4YWEwNTU0ODY1NTE4cDAsCisgICAgLTB4MS4yNDkyNDkyNDkyNDkycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjEwODAzNTAzYTcwMGYzMWViMWQ0ZWQ5ZGVmY2JhNTg4cDAsCisgICAgMHgxLjZkYjZkYjZkYjZkYjZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuMTA4MDM1MDNhNzAwZjMxZWIxZDRlZDlkZWZjYmE1ODhwMCwKKyAgICAtMHgxLjZkYjZkYjZkYjZkYjZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEuMTdkZjRjYmFiZGUwYTI1NjUxMTc5YmM5NWQyNzNiNjNwMCwKKyAgICAweDEuYjZkYjZkYjZkYjZkYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIDB4MS4xN2RmNGNiYWJkZTBhMjU2NTExNzliYzk1ZDI3M2I2M3AwLAorICAgIC0weDEuYjZkYjZkYjZkYjZkYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS4yMGFjMTg2MmFlOGQwMjFhNGUzNjU1NzcyMjcyNzBiMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjIwYWMxODYyYWU4ZDAyMWE0ZTM2NTU3NzIyNzI3MGIxcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjIwYWMxODYyYWU4ZDA2NDU4MjNhNGYwNjA4MDBlODhjcDAsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEuMjBhYzE4NjJhZThkMDY0NTgyM2E0ZjA2MDgwMGU4OGNwMCwKKyAgICAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAweDEuMmFmMjE3YTkwZTZkZWMzOTAwNGY1NjQ5NWNkNDM1MDVwMCwKKyAgICAweDEuMjQ5MjQ5MjQ5MjQ5MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS4yYWYyMTdhOTBlNmRlYzM5MDA0ZjU2NDk1Y2Q0MzUwNXAwLAorICAgIC0weDEuMjQ5MjQ5MjQ5MjQ5MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIDB4MS4zNmJlYjcxY2ZlMTU0ZmEyNmI4NjVjYjFhM2NiOGE1ZnAwLAorICAgIDB4MS40OTI0OTI0OTI0OTI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLjM2YmViNzFjZmUxNTRmYTI2Yjg2NWNiMWEzY2I4YTVmcDAsCisgICAgLTB4MS40OTI0OTI0OTI0OTI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgMHgxLjQ0MjE2MWI5YTMwNzExOTAyODcxZTZkNTA3OTEzMzYycDAsCisgICAgMHgxLjZkYjZkYjZkYjZkYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuNDQyMTYxYjlhMzA3MTE5MDI4NzFlNmQ1MDc5MTMzNjJwMCwKKyAgICAtMHgxLjZkYjZkYjZkYjZkYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAweDEuNTMyYjk1MGI5NjgzMDYwNzIwZjU3OWUzMjNlOTM0NzRwMCwKKyAgICAweDEuOTI0OTI0OTI0OTI0OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIDB4MS41MzJiOTUwYjk2ODMwNjA3MjBmNTc5ZTMyM2U5MzQ3NHAwLAorICAgIC0weDEuOTI0OTI0OTI0OTI0OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDB4MS42M2YwZjgwYjljNmJiMDUxOWQ4ZWFlMmMzY2NiYmQ5OHAwLAorICAgIDB4MS5iNmRiNmRiNmRiNmRhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgMHgxLjYzZjBmODBiOWM2YmIwNTE5ZDhlYWUyYzNjY2JiZDk4cDAsCisgICAgLTB4MS5iNmRiNmRiNmRiNmRhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgMHgxLjc2ODc3NGNjN2Y0OTc2NGU3NTg5MzQ3ZTM2MTNkMzZicDAsCisgICAgMHgxLmRiNmRiNmRiNmRiNmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEuNzY4Nzc0Y2M3ZjQ5NzY0ZTc1ODkzNDdlMzYxM2QzNmJwMCwKKyAgICAtMHgxLmRiNmRiNmRiNmRiNmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuOGIwNzU1MWQ5ZjU0ZjFmNTFkNjNjMTQ4MTUwZmY5ZjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIDB4MS44YjA3NTUxZDlmNTRmMWY1MWQ2M2MxNDgxNTBmZjlmMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS5wMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuMDAwOWExNDhiMGUwNmRjM2QwNjE0YzQwZGQxNDY4ZDZwMCwKKyAgICAweDEuMThkZTVhYjI3N2Y0NXAtNgorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIDB4MS4wMDA5YTE0OGIwZTA2ZGMzZDA2MTRjNDBkZDE0NjhkNnAwLAorICAgIC0weDEuMThkZTVhYjI3N2Y0NXAtNgorICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIDB4MS4wMDI2ODVkYzNjZjM5Y2RiMzYxNTRhOGM2NzNmNDAwYnAwLAorICAgIDB4MS4xOGRlNWFiMjc3ZjQ1cC01CisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMHgxLjAwMjY4NWRjM2NmMzljZGIzNjE1NGE4YzY3M2Y0MDBicDAsCisgICAgLTB4MS4xOGRlNWFiMjc3ZjQ1cC01CisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMHgxLjAwNTZhZmU3MWU4MzdjYzU2MTY5YTAwYTk2NTM1ZDYwcDAsCisgICAgMHgxLmE1NGQ4ODBiYjNlZThwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuMDA1NmFmZTcxZTgzN2NjNTYxNjlhMDBhOTY1MzVkNjBwMCwKKyAgICAtMHgxLmE1NGQ4ODBiYjNlZThwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuMDA5YTIzMDhmYThmY2RhZGRlZTYzNzc3ZGJiMzcwZTZwMCwKKyAgICAweDEuMThkZTVhYjI3N2Y0NXAtNAorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIDB4MS4wMDlhMjMwOGZhOGZjZGFkZGVlNjM3NzdkYmIzNzBlNnAwLAorICAgIC0weDEuMThkZTVhYjI3N2Y0NXAtNAorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS4wMGYwZTQ1NGU2OTg5NmRiZTdiZmE0MmM0OTA1MDJiYnAwLAorICAgIDB4MS41ZjE1ZjE1ZjE1ZjE2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgMHgxLjAwZjBlNDU0ZTY5ODk2ZGJlN2JmYTQyYzQ5MDUwMmJicDAsCisgICAgLTB4MS41ZjE1ZjE1ZjE1ZjE2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMHgxLjAxNWFmYTUxY2E1YThjNmE4MTJjYjc0MDEwZmQyMzM5cDAsCisgICAgMHgxLmE1NGQ4ODBiYjNlZTdwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAweDEuMDE1YWZhNTFjYTVhOGM2YTgxMmNiNzQwMTBmZDIzMzlwMCwKKyAgICAtMHgxLmE1NGQ4ODBiYjNlZTdwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuMDFkODZjZmFkZDg0YmVmNDJlZmZiZWU5MGZkM2IyNjVwMCwKKyAgICAweDEuZWI4NTFlYjg1MWViOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS4wMWQ4NmNmYWRkODRiZWY0MmVmZmJlZTkwZmQzYjI2NXAwLAorICAgIC0weDEuZWI4NTFlYjg1MWViOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIDB4MS4wMWQ4NmNmYWRkODRiZWY0MmVmZmJlZTkwZmQzYjI2NXAwLAorICAgIDB4MS5lYjg1MWViODUxZWI4cC00CisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgMHgxLjAxZDg2Y2ZhZGQ4NGJlZjQyZWZmYmVlOTBmZDNiMjY1cDAsCisgICAgLTB4MS5lYjg1MWViODUxZWI4cC00CisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLjAyMDY4Y2YwNTU5NzM3MzY4NDg1OTU2NWZlMzZiYWJmcDAsCisgICAgMHgxLjAxNzY3ZGNlNDM0YWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAweDEuMDIwNjhjZjA1NTk3MzczNjg0ODU5NTY1ZmUzNmJhYmZwMCwKKyAgICAtMHgxLjAxNzY3ZGNlNDM0YWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuMDIzNmQ1MGZiMGRhZmY5ZmVlYTM5ZGNhZTUyMTk2ODVwMCwKKyAgICAweDEuMGQyYTZjNDA1ZDlmOHAtMworICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIDB4MS4wMjM2ZDUwZmIwZGFmZjlmZWVhMzlkY2FlNTIxOTY4NXAwLAorICAgIC0weDEuMGQyYTZjNDA1ZDlmOHAtMworICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDB4MS4wMjY5NDVjMDQxNzEwYWFjYjZlNWIzYzdmYjJhYTM3YXAwLAorICAgIDB4MS4xOGRlNWFiMjc3ZjQ2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgMHgxLjAyNjk0NWMwNDE3MTBhYWNiNmU1YjNjN2ZiMmFhMzdhcDAsCisgICAgLTB4MS4xOGRlNWFiMjc3ZjQ2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgMHgxLjAyOWRkZjZkZjdmMjlkMDExZGQ4NmJmZTAxZWMzNjgzcDAsCisgICAgMHgxLjI0OTI0OTI0OTI0OTRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuMDI5ZGRmNmRmN2YyOWQwMTFkZDg2YmZlMDFlYzM2ODNwMCwKKyAgICAtMHgxLjI0OTI0OTI0OTI0OTRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAweDEuMDJkNGEyODk2NDU4NDlmYWYxMmE5NWE5MmQyNTM0ZDVwMCwKKyAgICAweDEuMzA0NjM3OTZhYzllMnAtMworICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIDB4MS4wMmQ0YTI4OTY0NTg0OWZhZjEyYTk1YTkyZDI1MzRkNXAwLAorICAgIC0weDEuMzA0NjM3OTZhYzllMnAtMworICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS4wMzBkOGY4N2I2ZWFkNGEwYmM3NDY0YjMzZGJiYTNhYXAwLAorICAgIDB4MS4zYmZhMjYwOGM2ZjMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLjAzMGQ4Zjg3YjZlYWQ0YTBiYzc0NjRiMzNkYmJhM2FhcDAsCisgICAgLTB4MS4zYmZhMjYwOGM2ZjMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgMHgxLjAzNDhhNmUyYzEzZGY1ZmIzZDk5YzM2MWExYmI5ZGNicDAsCisgICAgMHgxLjQ3YWUxNDdhZTE0N2JwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuMDM0OGE2ZTJjMTNkZjVmYjNkOTljMzYxYTFiYjlkY2JwMCwKKyAgICAtMHgxLjQ3YWUxNDdhZTE0N2JwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAweDEuMDM0OGE2ZTJjMTNkZjVmYjNkOTljMzYxYTFiYjlkY2JwMCwKKyAgICAweDEuNDdhZTE0N2FlMTQ3YnAtMworICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIDB4MS4wMzQ4YTZlMmMxM2RmNWZiM2Q5OWMzNjFhMWJiOWRjYnAwLAorICAgIC0weDEuNDdhZTE0N2FlMTQ3YnAtMworICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIDB4MS4wYTE5ZDZkZTYwNWFiZjA4MTI5Y2RkZGUxNjM2ZGQyYXAwLAorICAgIDB4MS4xZWI4NTFlYjg1MWVjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgMHgxLjBhMTlkNmRlNjA1YWJmMDgxMjljZGRkZTE2MzZkZDJhcDAsCisgICAgLTB4MS4xZWI4NTFlYjg1MWVjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLjE0YzEyOGIxYTdjMmI2OWY1ODRjNDJlMWY1ZDI0ZTQzcDAsCisgICAgMHgxLjk5OTk5OTk5OTk5OWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAweDEuMTRjMTI4YjFhN2MyYjY5ZjU4NGM0MmUxZjVkMjRlNDNwMCwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAweDEuMjM2NWVlNmM2MGQzMzExMzVkMGIzYWQzMTU4MzMzNjNwMCwKKyAgICAweDEuMGEzZDcwYTNkNzBhNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIDB4MS4yMzY1ZWU2YzYwZDMzMTEzNWQwYjNhZDMxNTgzMzM2M3AwLAorICAgIC0weDEuMGEzZDcwYTNkNzBhNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzOAorICAgIDB4MS4zNjNlMzQxZjY2MTYwNTI3ZDkzYzMwYjYzZDYxOWE2MHAwLAorICAgIDB4MS40N2FlMTQ3YWUxNDdicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgMHgxLjM2M2UzNDFmNjYxNjA1MjdkOTNjMzBiNjNkNjE5YTYwcDAsCisgICAgLTB4MS40N2FlMTQ3YWUxNDdicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMHgxLjRkOGY4NzU3MjU4MmJhZGQ3NDM5NjIwYmQ3ZTk1OTBicDAsCisgICAgMHgxLjg1MWViODUxZWI4NTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAweDEuNGQ4Zjg3NTcyNTgyYmFkZDc0Mzk2MjBiZDdlOTU5MGJwMCwKKyAgICAtMHgxLjg1MWViODUxZWI4NTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuNjlhZmY3ZDBjZTEzNWRjZDFhNmVjMmU2NWQwYTg5ZGZwMCwKKyAgICAweDEuYzI4ZjVjMjhmNWMyOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIDB4MS42OWFmZjdkMGNlMTM1ZGNkMWE2ZWMyZTY1ZDBhODlkZnAwLAorICAgIC0weDEuYzI4ZjVjMjhmNWMyOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0NAorICAgIDB4MS44YjA3NTUxZDlmNTUwNGMyYmQyODEwMDE5NmE0ZjY2YXAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAweDEuOGIwNzU1MWQ5ZjU1MDRjMmJkMjgxMDAxOTZhNGY2NmFwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS44YjA3NTUxZDlmNTUwNGMyYmQyODEwMDE5NmE0ZjY2YXAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuOGIwNzU1MWQ5ZjU1MDRjMmJkMjgxMDAxOTZhNGY2NmFwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDB4MS5jMDM1Y2MzY2Y3OGVkZjgyMTNjYmFkOTQ3OTA5MGQxNHA3LAorICAgIDB4MS44NmJjODhjYmYxYjY3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAweDEuYzAzNWNjM2NmNzhlZGY4MjEzY2JhZDk0NzkwOTBkMTRwNywKKyAgICAtMHgxLjg2YmM4OGNiZjFiNjdwMgorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS4yMGFmNmNiYjRiYTY5NTk4ZWM5MzlkN2RlODRmNTg4ZHAxNSwKKyAgICAweDEuNjZiYzg4Y2JmMWI2N3AzCisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgMHgxLjIwYWY2Y2JiNGJhNjk1OThlYzkzOWQ3ZGU4NGY1ODhkcDE1LAorICAgIC0weDEuNjZiYzg4Y2JmMWI2N3AzCisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLjczZTA5NmNmNTdiNTUwNTI0MmZiOGUzYjhiZTY4MDM0cDIyLAorICAgIDB4MS4wNTBkNjY5OGY1NDhkcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAweDEuNzNlMDk2Y2Y1N2I1NTA1MjQyZmI4ZTNiOGJlNjgwMzRwMjIsCisgICAgLTB4MS4wNTBkNjY5OGY1NDhkcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuZGYwYjEzYTg0NTEzZTJkZmNiNGIyZGQwYjc2NWNhZjRwMjksCisgICAgMHgxLjU2YmM4OGNiZjFiNjdwNAorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIDB4MS5kZjBiMTNhODQ1MTNlMmRmY2I0YjJkZDBiNzY1Y2FmNHAyOSwKKyAgICAtMHgxLjU2YmM4OGNiZjFiNjdwNAorICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIDB4MS4zNDhiYzFlMDE4YmM1OTNjZTMxNDVlOWY0YzA2YjIyY3AzNywKKyAgICAweDEuYTg2YmFhZmVlZTI0MXA0CisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgMHgxLjM0OGJjMWUwMThiYzU5M2NlMzE0NWU5ZjRjMDZiMjJjcDM3LAorICAgIC0weDEuYTg2YmFhZmVlZTI0MXA0CisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgMHgxLjhkNzYxYTMzOTg5NDI0NDhlYTc5NmNiN2U2MDJhMjA1cDQ0LAorICAgIDB4MS5mYTFhY2QzMWVhOTFicDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAweDEuOGQ3NjFhMzM5ODk0MjQ0OGVhNzk2Y2I3ZTYwMmEyMDVwNDQsCisgICAgLTB4MS5mYTFhY2QzMWVhOTFicDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAweDEuZmZmZmZmZmZmZmZmOWVkZTY3YjdhMzBlNjcxYzc5ZTJwNTEsCisgICAgMHgxLjI1ZTRmN2IyNzM3ZmFwNQorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIDB4MS5mZmZmZmZmZmZmZmY5ZWRlNjdiN2EzMGU2NzFjNzllMnA1MSwKKyAgICAtMHgxLjI1ZTRmN2IyNzM3ZmFwNQorICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIDB4MS4wMDAwMDAwMGZmZmY2NTQzNjFjNTYxM2M4ZGNmOGIzOHAxNSwKKyAgICAweDEuNjJlNDJmZWZhMzllZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgMHgxLjAwMDAwMDAwZmZmZjY1NDM2MWM1NjEzYzhkY2Y4YjM4cDE1LAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzY0CisgICAgMHgxLjAwMDAwMDAwZmZmZmU1NDM2MWM0ZTEzYzYwNzEzYzFhcDE1LAorICAgIDB4MS42MmU0MmZlZmEzOWVmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAweDEuMDAwMDAwMDBmZmZmZTU0MzYxYzRlMTNjNjA3MTNjMWFwMTUsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuMDAwMDAwMDEwMDAwNjU0MzYxYzQ2MTNjNzMxMmVjZmRwMTUsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwMworICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIDB4MS4wMDAwMDAwMTAwMDA2NTQzNjFjNDYxM2M3MzEyZWNmZHAxNSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwMworICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS4wMDAwZmZmZmZmZmZiMmExZmU0MGIyNWQ4OGQ5NjRmOXA3LAorICAgIDB4MS42MmU0MmZlZmEzOWVlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICAweDEuMDAwMGZmZmZmZmZmYjJhMWZlNDBiMjVkODhkOTY0ZjlwNywKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwMgorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIDB4MS4wMDAwZmZmZmZmZmZmMmExYmU0MGIyNWQ3ZDgxYzVkYXA3LAorICAgIDB4MS42MmU0MmZlZmEzOWVmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICAweDEuMDAwMGZmZmZmZmZmZjJhMWJlNDBiMjVkN2Q4MWM1ZGFwNywKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZwMgorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIDB4MS4wMDAxMDAwMDAwMDAzMmExN2U0MGIyNWQ4MjJhMzZiYnA3LAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzMKKyAgICAweDEuMDAwMTAwMDAwMDAwMzJhMTdlNDBiMjVkODIyYTM2YmJwNywKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwMgorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS4wMGZmZmZmZmZmZmZkOTc3ODc5OGMwNmU1MzMzMTkyNHAzLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzUKKyAgICAweDEuMDBmZmZmZmZmZmZmZDk3Nzg3OThjMDZlNTMzMzE5MjRwMywKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwMQorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIDB4MS4wMGZmZmZmZmZmZmZmOTU3ODc5OGMwNmU1MDVhNWU0ZHAzLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAweDEuMDBmZmZmZmZmZmZmZjk1Nzg3OThjMDZlNTA1YTVlNGRwMywKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZwMQorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS4wMTAwMDAwMDAwMDAxOTM3ODc5OGMwNmU1MTg1YTM3NnAzLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAweDEuMDEwMDAwMDAwMDAwMTkzNzg3OThjMDZlNTE4NWEzNzZwMywKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM4MAorICAgIDB4MS4wZmZmZmZmZmZmZmZlZGRkZTU3NTBmNDJmOTVmMzE1OXAxLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODEKKyAgICAweDEuMGZmZmZmZmZmZmZmZWRkZGU1NzUwZjQyZjk1ZjMxNTlwMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwMAorICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIDB4MS4wZmZmZmZmZmZmZmZmY2RkZTU3NTBmNDJmODllNjA4OXAxLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODMKKyAgICAweDEuMGZmZmZmZmZmZmZmZmNkZGU1NzUwZjQyZjg5ZTYwODlwMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZwMAorICB9LAorICB7IC8vIEVudHJ5IDM4NAorICAgIDB4MS4xMDAwMDAwMDAwMDAwYmRkZTU3NTBmNDJmOGVkOGZiOHAxLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAweDEuMTAwMDAwMDAwMDAwMGJkZGU1NzUwZjQyZjhlZDhmYjhwMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM4NgorICAgIDB4MS4zZmZmZmZmZmZmZmZmOGJmMjg5NTM5NGRmZDQ0M2JhOHAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgMHgxLjNmZmZmZmZmZmZmZmY4YmYyODk1Mzk0ZGZkNDQzYmE4cDAsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgMHgxLjNmZmZmZmZmZmZmZmZlYmYyODk1Mzk0ZGZkMGI4NWM1cDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAweDEuM2ZmZmZmZmZmZmZmZmViZjI4OTUzOTRkZmQwYjg1YzVwMCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTAKKyAgICAweDEuNDAwMDAwMDAwMDAwMDRiZjI4OTUzOTRkZmQyMmNmZTJwMCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS40MDAwMDAwMDAwMDAwNGJmMjg5NTM5NGRmZDIyY2ZlMnAwLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5MgorICAgIDB4MS4wZjg3NmNjZGY2Y2Q5NTEwZGNkNTAzNTdhNzMzNWY5ZHAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzkzCisgICAgMHgxLjBmODc2Y2NkZjZjZDk1MTBkY2Q1MDM1N2E3MzM1ZjlkcDAsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzk0CisgICAgMHgxLjBmODc2Y2NkZjZjZDk2N2FlNmJiNmI0YjYzZjA2MDlicDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAweDEuMGY4NzZjY2RmNmNkOTY3YWU2YmI2YjRiNjNmMDYwOWJwMCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAweDEuMGY4NzZjY2RmNmNkOTdlNGYwYTFkMzNmMjBiZTVhMGZwMCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIDB4MS4wZjg3NmNjZGY2Y2Q5N2U0ZjBhMWQzM2YyMGJlNWEwZnAwLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM5OAorICAgIDB4MS4wM2RhNmViNmY5MDc1ZTdkOTg4MTBmZTk2ZmU3NDg0MHAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgMHgxLjAzZGE2ZWI2ZjkwNzVlN2Q5ODgxMGZlOTZmZTc0ODQwcDAsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLjAzZGE2ZWI2ZjkwNzVlZDZjMzY0ZTgyZTQzY2M1MWMxcDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAweDEuMDNkYTZlYjZmOTA3NWVkNmMzNjRlODJlNDNjYzUxYzFwMCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDIKKyAgICAweDEuMDNkYTZlYjZmOTA3NWYyZmVlNDhjMDczMTdiNTZhYWRwMCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtMworICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIDB4MS4wM2RhNmViNmY5MDc1ZjJmZWU0OGMwNzMxN2I1NmFhZHAwLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtMworICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIDB4MS4wMGY2MjU1N2Q5MWRmMzYzOGIwYmE3Y2E0ODhiMjgzOXAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDA1CisgICAgMHgxLjAwZjYyNTU3ZDkxZGYzNjM4YjBiYTdjYTQ4OGIyODM5cDAsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgMHgxLjAwZjYyNTU3ZDkxZGYzNzljMDZhMTdjNjQyNDRjMWE1cDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICAweDEuMDBmNjI1NTdkOTFkZjM3OWMwNmExN2M2NDI0NGMxYTVwMCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDgKKyAgICAweDEuMDBmNjI1NTdkOTFkZjM4ZmY1Yzg4N2MyM2JmZjVjMDdwMCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQwOQorICAgIDB4MS4wMGY2MjU1N2Q5MWRmMzhmZjVjODg3YzIzYmZmNWMwN3AwLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIDB4MS4wMDNkODFmMjVlOGJlMTI0NGVmODc1YmUzMmU1ZmJiMHAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDExCisgICAgMHgxLjAwM2Q4MWYyNWU4YmUxMjQ0ZWY4NzViZTMyZTVmYmIwcDAsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMHgxLjAwM2Q4MWYyNWU4YmUxMjlkYWZhZTQ1YjM1NzA0ZDhhcDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTMKKyAgICAweDEuMDAzZDgxZjI1ZThiZTEyOWRhZmFlNDViMzU3MDRkOGFwMCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTQKKyAgICAweDEuMDAzZDgxZjI1ZThiZTEyZjY2ZmQ1MmY4MzdmYWRmNzVwMCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQxNQorICAgIDB4MS4wMDNkODFmMjVlOGJlMTJmNjZmZDUyZjgzN2ZhZGY3NXAwLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQxNgorICAgIDB4MS4wMDBmNjAwNjY1NDBhMzcyY2YyZjBlYTVkM2NhN2U4YnAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDE3CisgICAgMHgxLjAwMGY2MDA2NjU0MGEzNzJjZjJmMGVhNWQzY2E3ZThicDAsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgMHgxLjAwMGY2MDA2NjU0MGEzNzQzMjFhNTk2Mjk5NzI4MWIycDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTkKKyAgICAweDEuMDAwZjYwMDY2NTQwYTM3NDMyMWE1OTYyOTk3MjgxYjJwMCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjAKKyAgICAweDEuMDAwZjYwMDY2NTQwYTM3NTk1MDVhNDFmNWYxYTk0ZGJwMCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDQyMQorICAgIDB4MS4wMDBmNjAwNjY1NDBhMzc1OTUwNWE0MWY1ZjFhOTRkYnAwLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDQyMgorICAgIDB4MS4wMDAwMDAwMDAwMDBjYTg3YzM4OThjZmZkMWJjZDk1NHAzMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwNAorICB9LAorICB7IC8vIEVudHJ5IDQyMworICAgIDB4MS4wMDAwMDAwMDAwMDBjYTg3YzM4OThjZmZkMWJjZDk1NHAzMSwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgMHgxLmZmZmZmZmZmZmZmZjk1MGY4NzEzMTlmZjBlNmUyYjk1cDMwLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgMHgxLmZmZmZmZmZmZmZmZjk1MGY4NzEzMTlmZjBlNmUyYjk1cDMwLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjYKKyAgICAweDEuZmZmZmZmZmZmZmZkOTUwZjg3MTMxYTAwNzk2MmE0ODJwMzAsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAweDEuZmZmZmZmZmZmZmZkOTUwZjg3MTMxYTAwNzk2MmE0ODJwMzAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwNAorICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIDB4MS4wMDAwMDAwMTAwMDA2NTQzNjFjNDYxM2M3MzEyZWNmZHAxNSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwMworICB9LAorICB7IC8vIEVudHJ5IDQyOQorICAgIDB4MS4wMDAwMDAwMTAwMDA2NTQzNjFjNDYxM2M3MzEyZWNmZHAxNSwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDMwCisgICAgMHgxLjAwMDAwMDAwZmZmZmU1NDM2MWM0ZTEzYzYwNzEzYzFhcDE1LAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDMxCisgICAgMHgxLjAwMDAwMDAwZmZmZmU1NDM2MWM0ZTEzYzYwNzEzYzFhcDE1LAorICAgIDB4MS42MmU0MmZlZmEzOWVmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzIKKyAgICAweDEuMDAwMDAwMDBmZmZmNjU0MzYxYzU2MTNjOGRjZjhiMzhwMTUsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzMKKyAgICAweDEuMDAwMDAwMDBmZmZmNjU0MzYxYzU2MTNjOGRjZjhiMzhwMTUsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwMworICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS4wMDAxMDAwMDAwMDAzMmExN2U0MGIyNWQ4MjJhMzZiYnA3LAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDM1CisgICAgMHgxLjAwMDEwMDAwMDAwMDMyYTE3ZTQwYjI1ZDgyMmEzNmJicDcsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwMgorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIDB4MS4wMDAwZmZmZmZmZmZmMmExYmU0MGIyNWQ3ZDgxYzVkYXA3LAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDM3CisgICAgMHgxLjAwMDBmZmZmZmZmZmYyYTFiZTQwYjI1ZDdkODFjNWRhcDcsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwMgorICB9LAorICB7IC8vIEVudHJ5IDQzOAorICAgIDB4MS4wMDAwZmZmZmZmZmZiMmExZmU0MGIyNWQ4OGQ5NjRmOXA3LAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgMHgxLjAwMDBmZmZmZmZmZmIyYTFmZTQwYjI1ZDg4ZDk2NGY5cDcsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwMgorICB9LAorICB7IC8vIEVudHJ5IDQ0MAorICAgIDB4MS4wMTAwMDAwMDAwMDAxOTM3ODc5OGMwNmU1MTg1YTM3NnAzLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgMHgxLjAxMDAwMDAwMDAwMDE5Mzc4Nzk4YzA2ZTUxODVhMzc2cDMsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwMQorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIDB4MS4wMGZmZmZmZmZmZmZmOTU3ODc5OGMwNmU1MDVhNWU0ZHAzLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgMHgxLjAwZmZmZmZmZmZmZmY5NTc4Nzk4YzA2ZTUwNWE1ZTRkcDMsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwMQorICB9LAorICB7IC8vIEVudHJ5IDQ0NAorICAgIDB4MS4wMGZmZmZmZmZmZmZkOTc3ODc5OGMwNmU1MzMzMTkyNHAzLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgMHgxLjAwZmZmZmZmZmZmZmQ5Nzc4Nzk4YzA2ZTUzMzMxOTI0cDMsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwMQorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIDB4MS4xMDAwMDAwMDAwMDAwYmRkZTU3NTBmNDJmOGVkOGZiOHAxLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgMHgxLjEwMDAwMDAwMDAwMDBiZGRlNTc1MGY0MmY4ZWQ4ZmI4cDEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIDB4MS4wZmZmZmZmZmZmZmZmY2RkZTU3NTBmNDJmODllNjA4OXAxLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ5CisgICAgMHgxLjBmZmZmZmZmZmZmZmZjZGRlNTc1MGY0MmY4OWU2MDg5cDEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIDB4MS4wZmZmZmZmZmZmZmZlZGRkZTU3NTBmNDJmOTVmMzE1OXAxLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgMHgxLjBmZmZmZmZmZmZmZmVkZGRlNTc1MGY0MmY5NWYzMTU5cDEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MgorICAgIDB4MS40MDAwMDAwMDAwMDAwNGJmMjg5NTM5NGRmZDIyY2ZlMnAwLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1MworICAgIDB4MS40MDAwMDAwMDAwMDAwNGJmMjg5NTM5NGRmZDIyY2ZlMnAwLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgMHgxLjNmZmZmZmZmZmZmZmZlYmYyODk1Mzk0ZGZkMGI4NWM1cDAsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgMHgxLjNmZmZmZmZmZmZmZmZlYmYyODk1Mzk0ZGZkMGI4NWM1cDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAweDEuM2ZmZmZmZmZmZmZmZjhiZjI4OTUzOTRkZmQ0NDNiYThwMCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTcKKyAgICAweDEuM2ZmZmZmZmZmZmZmZjhiZjI4OTUzOTRkZmQ0NDNiYThwMCwKKyAgICAweDEuNjJlNDJmZWZhMzllZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1OAorICAgIDB4MS4wZjg3NmNjZGY2Y2Q5N2U0ZjBhMWQzM2YyMGJlNWEwZnAwLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ1OQorICAgIDB4MS4wZjg3NmNjZGY2Y2Q5N2U0ZjBhMWQzM2YyMGJlNWEwZnAwLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgMHgxLjBmODc2Y2NkZjZjZDk2N2FlNmJiNmI0YjYzZjA2MDlicDAsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgMHgxLjBmODc2Y2NkZjZjZDk2N2FlNmJiNmI0YjYzZjA2MDlicDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICAweDEuMGY4NzZjY2RmNmNkOTUxMGRjZDUwMzU3YTczMzVmOWRwMCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICAweDEuMGY4NzZjY2RmNmNkOTUxMGRjZDUwMzU3YTczMzVmOWRwMCwKKyAgICAweDEuNjJlNDJmZWZhMzllZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ2NAorICAgIDB4MS4wM2RhNmViNmY5MDc1ZjJmZWU0OGMwNzMxN2I1NmFhZHAwLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtMworICB9LAorICB7IC8vIEVudHJ5IDQ2NQorICAgIDB4MS4wM2RhNmViNmY5MDc1ZjJmZWU0OGMwNzMxN2I1NmFhZHAwLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgMHgxLjAzZGE2ZWI2ZjkwNzVlZDZjMzY0ZTgyZTQzY2M1MWMxcDAsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDY3CisgICAgMHgxLjAzZGE2ZWI2ZjkwNzVlZDZjMzY0ZTgyZTQzY2M1MWMxcDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjgKKyAgICAweDEuMDNkYTZlYjZmOTA3NWU3ZDk4ODEwZmU5NmZlNzQ4NDBwMCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjkKKyAgICAweDEuMDNkYTZlYjZmOTA3NWU3ZDk4ODEwZmU5NmZlNzQ4NDBwMCwKKyAgICAweDEuNjJlNDJmZWZhMzllZXAtMworICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIDB4MS4wMGY2MjU1N2Q5MWRmMzhmZjVjODg3YzIzYmZmNWMwN3AwLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ3MQorICAgIDB4MS4wMGY2MjU1N2Q5MWRmMzhmZjVjODg3YzIzYmZmNWMwN3AwLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgMHgxLjAwZjYyNTU3ZDkxZGYzNzljMDZhMTdjNjQyNDRjMWE1cDAsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDczCisgICAgMHgxLjAwZjYyNTU3ZDkxZGYzNzljMDZhMTdjNjQyNDRjMWE1cDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzQKKyAgICAweDEuMDBmNjI1NTdkOTFkZjM2MzhiMGJhN2NhNDg4YjI4MzlwMCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzUKKyAgICAweDEuMDBmNjI1NTdkOTFkZjM2MzhiMGJhN2NhNDg4YjI4MzlwMCwKKyAgICAweDEuNjJlNDJmZWZhMzllZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ3NgorICAgIDB4MS4wMDNkODFmMjVlOGJlMTJmNjZmZDUyZjgzN2ZhZGY3NXAwLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ3NworICAgIDB4MS4wMDNkODFmMjVlOGJlMTJmNjZmZDUyZjgzN2ZhZGY3NXAwLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgMHgxLjAwM2Q4MWYyNWU4YmUxMjlkYWZhZTQ1YjM1NzA0ZDhhcDAsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDc5CisgICAgMHgxLjAwM2Q4MWYyNWU4YmUxMjlkYWZhZTQ1YjM1NzA0ZDhhcDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODAKKyAgICAweDEuMDAzZDgxZjI1ZThiZTEyNDRlZjg3NWJlMzJlNWZiYjBwMCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODEKKyAgICAweDEuMDAzZDgxZjI1ZThiZTEyNDRlZjg3NWJlMzJlNWZiYjBwMCwKKyAgICAweDEuNjJlNDJmZWZhMzllZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ4MgorICAgIDB4MS5iZmViMzIwNjk1ODQ2MWUwY2Q5NDliNzQwMzk3Mzc0YnAyNjIsCisgICAgMHgxLjZkYjZkYjZkYjZkYjdwNworICB9LAorICB7IC8vIEVudHJ5IDQ4MworICAgIDB4MS5iZmViMzIwNjk1ODQ2MWUwY2Q5NDliNzQwMzk3Mzc0YnAyNjIsCisgICAgLTB4MS42ZGI2ZGI2ZGI2ZGI3cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODQKKyAgICAweDEuZWU0YWRmZmM0ODE2YzE5NmNjODVjNTc5YjQ5YjcxM2NwMzQxLAorICAgIDB4MS5kYjZkYjZkYjZkYjZlcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAweDEuZWU0YWRmZmM0ODE2YzE5NmNjODVjNTc5YjQ5YjcxM2NwMzQxLAorICAgIC0weDEuZGI2ZGI2ZGI2ZGI2ZXA3CisgIH0sCisgIHsgLy8gRW50cnkgNDg2CisgICAgMHgxLjEwYmJkMzA0ZTRkNTMzMTcxOTFkYjgwMTY4ZjQxZTg4cDQyMSwKKyAgICAweDEuMjQ5MjQ5MjQ5MjQ5MnA4CisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgMHgxLjEwYmJkMzA0ZTRkNTMzMTcxOTFkYjgwMTY4ZjQxZTg4cDQyMSwKKyAgICAtMHgxLjI0OTI0OTI0OTI0OTJwOAorICB9LAorICB7IC8vIEVudHJ5IDQ4OAorICAgIDB4MS4yY2Y4NjIxYWEzZWFjYmNlM2M1YzZhYWM3YTUyZTg3MnA1MDAsCisgICAgMHgxLjViNmRiNmRiNmRiNmRwOAorICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIDB4MS4yY2Y4NjIxYWEzZWFjYmNlM2M1YzZhYWM3YTUyZTg3MnA1MDAsCisgICAgLTB4MS41YjZkYjZkYjZkYjZkcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTAKKyAgICAweDEuNGMyMTUzOTU3MmMxOWI1OWZjNjI5MTI5ZDMwN2Q5YjFwNTc5LAorICAgIDB4MS45MjQ5MjQ5MjQ5MjQ4cDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAweDEuNGMyMTUzOTU3MmMxOWI1OWZjNjI5MTI5ZDMwN2Q5YjFwNTc5LAorICAgIC0weDEuOTI0OTI0OTI0OTI0OHA4CisgIH0sCisgIHsgLy8gRW50cnkgNDkyCisgICAgMHgxLjZlODQyMmI0ZGIzM2I2MjkzY2Q0NGNkMWM2NTU4NWIycDY1OCwKKyAgICAweDEuYzkyNDkyNDkyNDkyM3A4CisgIH0sCisgIHsgLy8gRW50cnkgNDkzCisgICAgMHgxLjZlODQyMmI0ZGIzM2I2MjkzY2Q0NGNkMWM2NTU4NWIycDY1OCwKKyAgICAtMHgxLmM5MjQ5MjQ5MjQ5MjNwOAorICB9LAorICB7IC8vIEVudHJ5IDQ5NAorICAgIDB4MS42ZGRlNGM4NTVmMzM5N2NkMDVmMzgzZTJhZDVlZjIxOXA5MzUsCisgICAgMHgxLjQ0OTI0OTI0OTI0OTJwOQorICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIDB4MS42ZGRlNGM4NTVmMzM5N2NkMDVmMzgzZTJhZDVlZjIxOXA5MzUsCisgICAgLTB4MS40NDkyNDkyNDkyNDkycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTYKKyAgICAweDEuYTE3OGQyNTNmYzM1YTBiOTgwMmQ5Y2Q1ZjY3Y2I3ZWZwOTQ4LAorICAgIDB4MS40OTI0OTI0OTI0OTI0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTcKKyAgICAweDEuYTE3OGQyNTNmYzM1YTBiOTgwMmQ5Y2Q1ZjY3Y2I3ZWZwOTQ4LAorICAgIC0weDEuNDkyNDkyNDkyNDkyNHA5CisgIH0sCisgIHsgLy8gRW50cnkgNDk4CisgICAgMHgxLmRjNWE5Yzk3ZWExM2EwMDYyODI4Mzg2ZGMyNDYwYWMycDk2MSwKKyAgICAweDEuNGRiNmRiNmRiNmRiNnA5CisgIH0sCisgIHsgLy8gRW50cnkgNDk5CisgICAgMHgxLmRjNWE5Yzk3ZWExM2EwMDYyODI4Mzg2ZGMyNDYwYWMycDk2MSwKKyAgICAtMHgxLjRkYjZkYjZkYjZkYjZwOQorICB9LAorICB7IC8vIEVudHJ5IDUwMAorICAgIDB4MS4wZmM1M2M3MjcxNTVkOWRkMDAxNzMzZDQyNThlMzIwM3A5NzUsCisgICAgMHgxLjUyNDkyNDkyNDkyNDhwOQorICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIDB4MS4wZmM1M2M3MjcxNTVkOWRkMDAxNzMzZDQyNThlMzIwM3A5NzUsCisgICAgLTB4MS41MjQ5MjQ5MjQ5MjQ4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDIKKyAgICAweDEuMzYxYTIyZjU4NzlhMTU4MTA2YmVlMWU4OWVhMmE0ZDdwOTg4LAorICAgIDB4MS41NmRiNmRiNmRiNmRhcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICAweDEuMzYxYTIyZjU4NzlhMTU4MTA2YmVlMWU4OWVhMmE0ZDdwOTg4LAorICAgIC0weDEuNTZkYjZkYjZkYjZkYXA5CisgIH0sCisgIHsgLy8gRW50cnkgNTA0CisgICAgMHgxLjYxZDcxNmVjYTkzODExZjhkODI4ODY0OWRjMmNlZTY1cDEwMDEsCisgICAgMHgxLjViNmRiNmRiNmRiNmNwOQorICB9LAorICB7IC8vIEVudHJ5IDUwNQorICAgIDB4MS42MWQ3MTZlY2E5MzgxMWY4ZDgyODg2NDlkYzJjZWU2NXAxMDAxLAorICAgIC0weDEuNWI2ZGI2ZGI2ZGI2Y3A5CisgIH0sCisgIHsgLy8gRW50cnkgNTA2CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjc2ZGI2ZGI2ZGI2ZGJwOQorICB9LAorICB7IC8vIEVudHJ5IDUwNworICAgIEhVR0VfVkFMLAorICAgIC0weDEuNzZkYjZkYjZkYjZkYnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjhkYjZkYjZkYjZkYjZwOQorICB9LAorICB7IC8vIEVudHJ5IDUwOQorICAgIEhVR0VfVkFMLAorICAgIC0weDEuOGRiNmRiNmRiNmRiNnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmE0OTI0OTI0OTI0OTFwOQorICB9LAorICB7IC8vIEVudHJ5IDUxMQorICAgIEhVR0VfVkFMLAorICAgIC0weDEuYTQ5MjQ5MjQ5MjQ5MXA5CisgIH0sCisgIHsgLy8gRW50cnkgNTEyCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmJiNmRiNmRiNmRiNmNwOQorICB9LAorICB7IC8vIEVudHJ5IDUxMworICAgIEhVR0VfVkFMLAorICAgIC0weDEuYmI2ZGI2ZGI2ZGI2Y3A5CisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmQyNDkyNDkyNDkyNDdwOQorICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZDI0OTI0OTI0OTI0N3A5CisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmU5MjQ5MjQ5MjQ5MjJwOQorICB9LAorICB7IC8vIEVudHJ5IDUxNworICAgIEhVR0VfVkFMLAorICAgIC0weDEuZTkyNDkyNDkyNDkyMnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTE4CisgICAgMHgxLjkzYmY0ZWMyODJlZmIzMjBhNTdmOWFlMDJlMDFhZTUxcDEwMTQsCisgICAgLTB4MS42cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAweDEuOTNiZjRlYzI4MmVmYjMyMGE1N2Y5YWUwMmUwMWFlNTFwMTAxNCwKKyAgICAweDEuNnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgMHgxLjYxZDcxNmVjYTk5MDg3YmU5MzUyZGY1ZDEzMWE1ZGQycDEwMDEsCisgICAgLTB4MS41YjZkYjZkYjZkYjZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjEKKyAgICAweDEuNjFkNzE2ZWNhOTkwODdiZTkzNTJkZjVkMTMxYTVkZDJwMTAwMSwKKyAgICAweDEuNWI2ZGI2ZGI2ZGI2ZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNTIyCisgICAgMHgxLjM2MWEyMmY1ODdlNzljMDljNDIwZDIxZWNmZmMwMGNkcDk4OCwKKyAgICAtMHgxLjU2ZGI2ZGI2ZGI2ZGNwOQorICB9LAorICB7IC8vIEVudHJ5IDUyMworICAgIDB4MS4zNjFhMjJmNTg3ZTc5YzA5YzQyMGQyMWVjZmZjMDBjZHA5ODgsCisgICAgMHgxLjU2ZGI2ZGI2ZGI2ZGNwOQorICB9LAorICB7IC8vIEVudHJ5IDUyNAorICAgIDB4MS4wZmM1M2M3MjcxOTljYjJjMWNiMzkxYzhjNmIxY2I1YnA5NzUsCisgICAgLTB4MS41MjQ5MjQ5MjQ5MjRhcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAweDEuMGZjNTNjNzI3MTk5Y2IyYzFjYjM5MWM4YzZiMWNiNWJwOTc1LAorICAgIDB4MS41MjQ5MjQ5MjQ5MjRhcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjYKKyAgICAweDEuZGM1YTljOTdlYThhYjZhZDRlMjJjYzM4OThiNGQ0MjJwOTYxLAorICAgIC0weDEuNGRiNmRiNmRiNmRiOHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTI3CisgICAgMHgxLmRjNWE5Yzk3ZWE4YWI2YWQ0ZTIyY2MzODk4YjRkNDIycDk2MSwKKyAgICAweDEuNGRiNmRiNmRiNmRiOHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgMHgxLmExNzhkMjUzZmM5ZGZlZWUxNTJjYjc0OWViNmY2MzM5cDk0OCwKKyAgICAtMHgxLjQ5MjQ5MjQ5MjQ5MjZwOQorICB9LAorICB7IC8vIEVudHJ5IDUyOQorICAgIDB4MS5hMTc4ZDI1M2ZjOWRmZWVlMTUyY2I3NDllYjZmNjMzOXA5NDgsCisgICAgMHgxLjQ5MjQ5MjQ5MjQ5MjZwOQorICB9LAorICB7IC8vIEVudHJ5IDUzMAorICAgIDB4MS42ZGRlNGM4NTVmOGYwZjYwMjc0YjVjMzc5MzA0OTlmNXA5MzUsCisgICAgLTB4MS40NDkyNDkyNDkyNDk0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzEKKyAgICAweDEuNmRkZTRjODU1ZjhmMGY2MDI3NGI1YzM3OTMwNDk5ZjVwOTM1LAorICAgIDB4MS40NDkyNDkyNDkyNDk0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzIKKyAgICAweDEuNDBhNGI5YzI3MWM4YzQyNzFmYmNjM2RmMzM2ZTBlZGJwOTIyLAorICAgIC0weDEuNDAwMDAwMDAwMDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTMzCisgICAgMHgxLjQwYTRiOWMyNzFjOGM0MjcxZmJjYzNkZjMzNmUwZWRicDkyMiwKKyAgICAweDEuNDAwMDAwMDAwMDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTM0CisgICAgMHgxLnAwLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUzNQorICAgIDB4MS5wMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUzNgorICAgIDB4MS5wMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTM3CisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgMHgxLnAwLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUzOQorICAgIDB4MS4wMWQ4NmNmYWRkODRiZWQ1NjNjYTgxZTYzOWQ4MmRlNHAwLAorICAgIDB4MS5lYjg1MWViODUxZWI3cC00CisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgMHgxLjAxZDg2Y2ZhZGQ4NGJlZDU2M2NhODFlNjM5ZDgyZGU0cDAsCisgICAgLTB4MS5lYjg1MWViODUxZWI3cC00CisgIH0sCisgIHsgLy8gRW50cnkgNTQxCisgICAgMHgxLjAxZDg2Y2ZhZGQ4NGJlZjQyZWZmYmVlOTBmZDNiMjY1cDAsCisgICAgMHgxLmViODUxZWI4NTFlYjhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAweDEuMDFkODZjZmFkZDg0YmVmNDJlZmZiZWU5MGZkM2IyNjVwMCwKKyAgICAtMHgxLmViODUxZWI4NTFlYjhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAweDEuMDFkODZjZmFkZDg0YmYxMmZhMzRmYmViZTVkMDM4YmVwMCwKKyAgICAweDEuZWI4NTFlYjg1MWViOXAtNAorICB9LAorICB7IC8vIEVudHJ5IDU0NAorICAgIDB4MS4wMWQ4NmNmYWRkODRiZjEyZmEzNGZiZWJlNWQwMzhiZXAwLAorICAgIC0weDEuZWI4NTFlYjg1MWViOXAtNAorICB9LAorICB7IC8vIEVudHJ5IDU0NQorICAgIDB4MS4yMGFjMTg2MmFlOGQwNDJmZTgzODUyM2U5NTMwYTczZXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgMHgxLjIwYWMxODYyYWU4ZDA0MmZlODM4NTIzZTk1MzBhNzNlcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTQ3CisgICAgMHgxLjIwYWMxODYyYWU4ZDA2NDU4MjNhNGYwNjA4MDBlODhjcDAsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDgKKyAgICAweDEuMjBhYzE4NjJhZThkMDY0NTgyM2E0ZjA2MDgwMGU4OGNwMCwKKyAgICAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDkKKyAgICAweDEuMjBhYzE4NjJhZThkMGE3MGI2M2U0ODk0ZWRkNzhiNmVwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIDB4MS4yMGFjMTg2MmFlOGQwYTcwYjYzZTQ4OTRlZGQ3OGI2ZXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1MQorICAgIDB4MS44YjA3NTUxZDlmNTRmYjViZWQ0NWU4YTRkNWE5MTc0MnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgMHgxLjhiMDc1NTFkOWY1NGZiNWJlZDQ1ZThhNGQ1YTkxNzQycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTUzCisgICAgMHgxLjhiMDc1NTFkOWY1NTA0YzJiZDI4MTAwMTk2YTRmNjZhcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS44YjA3NTUxZDlmNTUwNGMyYmQyODEwMDE5NmE0ZjY2YXAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU1CisgICAgMHgxLjhiMDc1NTFkOWY1NTE3OTA1Y2VjNWViYjE5YzRmYTM5cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIDB4MS44YjA3NTUxZDlmNTUxNzkwNWNlYzVlYmIxOWM0ZmEzOXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgMHgxLmFiNWFkYjljNDM1ZTRjYzMzZDEzODZkODA1YmNjNjY3cDMwLAorICAgIDB4MS41ZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTgKKyAgICAweDEuYWI1YWRiOWM0MzVlNGNjMzNkMTM4NmQ4MDViY2M2NjdwMzAsCisgICAgLTB4MS41ZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTkKKyAgICAweDEuYWI1YWRiOWM0MzVmZjgxZTE4YWZjYTM3MjgyOGE2NzZwMzAsCisgICAgMHgxLjZwNAorICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDB4MS5hYjVhZGI5YzQzNWZmODFlMThhZmNhMzcyODI4YTY3NnAzMCwKKyAgICAtMHgxLjZwNAorICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIDB4MS5hYjVhZGI5YzQzNjFhMzc4ZjQ0YzBkOTdmNWVmNjIyMnAzMCwKKyAgICAweDEuNjAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNTYyCisgICAgMHgxLmFiNWFkYjljNDM2MWEzNzhmNDRjMGQ5N2Y1ZWY2MjIycDMwLAorICAgIC0weDEuNjAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNTYzCisgICAgMHgxLjIyNmFmMzNiMWZkYWU3ZWNjYTEwMmFkNmI3Zjk4YTA2cDMyLAorICAgIDB4MS42ZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjQKKyAgICAweDEuMjI2YWYzM2IxZmRhZTdlY2NhMTAyYWQ2YjdmOThhMDZwMzIsCisgICAgLTB4MS42ZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjUKKyAgICAweDEuMjI2YWYzM2IxZmRjMGE1N2JkNGI0YWIyMzExYjVjZGZwMzIsCisgICAgMHgxLjdwNAorICB9LAorICB7IC8vIEVudHJ5IDU2NgorICAgIDB4MS4yMjZhZjMzYjFmZGMwYTU3YmQ0YjRhYjIzMTFiNWNkZnAzMiwKKyAgICAtMHgxLjdwNAorICB9LAorICB7IC8vIEVudHJ5IDU2NworICAgIDB4MS4yMjZhZjMzYjFmZGQyY2MyYjA4NjZhOGVjY2E4MjJmNHAzMiwKKyAgICAweDEuNzAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNTY4CisgICAgMHgxLjIyNmFmMzNiMWZkZDJjYzJiMDg2NmE4ZWNjYTgyMmY0cDMyLAorICAgIC0weDEuNzAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNTY5CisgICAgMHgxLmZmZmZmZmZmZmZmYjllZGU2N2I3YTMxMzI5NWZhYTczcDUxLAorICAgIDB4MS4yNWU0ZjdiMjczN2Y5cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzAKKyAgICAweDEuZmZmZmZmZmZmZmZiOWVkZTY3YjdhMzEzMjk1ZmFhNzNwNTEsCisgICAgLTB4MS4yNWU0ZjdiMjczN2Y5cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzEKKyAgICAweDEuZmZmZmZmZmZmZmZmOWVkZTY3YjdhMzBlNjcxYzc5ZTJwNTEsCisgICAgMHgxLjI1ZTRmN2IyNzM3ZmFwNQorICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIDB4MS5mZmZmZmZmZmZmZmY5ZWRlNjdiN2EzMGU2NzFjNzllMnA1MSwKKyAgICAtMHgxLjI1ZTRmN2IyNzM3ZmFwNQorICB9LAorICB7IC8vIEVudHJ5IDU3MworICAgIDB4MS4wMDAwMDAwMDAwMDFjZjZmMzNkYmQxODhkMjZjYTRhOXA1MiwKKyAgICAweDEuMjVlNGY3YjI3MzdmYnA1CisgIH0sCisgIHsgLy8gRW50cnkgNTc0CisgICAgMHgxLjAwMDAwMDAwMDAwMWNmNmYzM2RiZDE4OGQyNmNhNGE5cDUyLAorICAgIC0weDEuMjVlNGY3YjI3MzdmYnA1CisgIH0sCisgIHsgLy8gRW50cnkgNTc1CisgICAgMHgxLjZhMDllNjY3ZjNiNzNiMmU5YjEzMmQ1MTQzNGU2ODJkcDUyLAorICAgIDB4MS4yOGFhYzAxMjUyYzZjcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzYKKyAgICAweDEuNmEwOWU2NjdmM2I3M2IyZTliMTMyZDUxNDM0ZTY4MmRwNTIsCisgICAgLTB4MS4yOGFhYzAxMjUyYzZjcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzcKKyAgICAweDEuNmEwOWU2NjdmM2JhMGY0MjY3ZTMxNGMyOGRiZjZiMjNwNTIsCisgICAgMHgxLjI4YWFjMDEyNTJjNmRwNQorICB9LAorICB7IC8vIEVudHJ5IDU3OAorICAgIDB4MS42YTA5ZTY2N2YzYmEwZjQyNjdlMzE0YzI4ZGJmNmIyM3A1MiwKKyAgICAtMHgxLjI4YWFjMDEyNTJjNmRwNQorICB9LAorICB7IC8vIEVudHJ5IDU3OQorICAgIDB4MS42YTA5ZTY2N2YzYmNlMzU2MzRiMmZjMzk4MDU4MDdiOXA1MiwKKyAgICAweDEuMjhhYWMwMTI1MmM2ZXA1CisgIH0sCisgIHsgLy8gRW50cnkgNTgwCisgICAgMHgxLjZhMDllNjY3ZjNiY2UzNTYzNGIyZmMzOTgwNTgwN2I5cDUyLAorICAgIC0weDEuMjhhYWMwMTI1MmM2ZXA1CisgIH0sCisgIHsgLy8gRW50cnkgNTgxCisgICAgMHgxLmZmZmZmZmZmZmY5M2FlNTk0ZTliZTQyNWEwMTBiZGVjcDEwMjMsCisgICAgMHgxLjYzM2NlOGZiOWY4N2NwOQorICB9LAorICB7IC8vIEVudHJ5IDU4MgorICAgIDB4MS5mZmZmZmZmZmZmOTNhZTU5NGU5YmU0MjVhMDEwYmRlY3AxMDIzLAorICAgIC0weDEuNjMzY2U4ZmI5Zjg3Y3A5CisgIH0sCisgIHsgLy8gRW50cnkgNTgzCisgICAgMHgxLmZmZmZmZmZmZmZkM2FlNTk0ZTliZGE5YjZiM2E5MTY4cDEwMjMsCisgICAgMHgxLjYzM2NlOGZiOWY4N2RwOQorICB9LAorICB7IC8vIEVudHJ5IDU4NAorICAgIDB4MS5mZmZmZmZmZmZmZDNhZTU5NGU5YmRhOWI2YjNhOTE2OHAxMDIzLAorICAgIC0weDEuNjMzY2U4ZmI5Zjg3ZHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTg1CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjYzM2NlOGZiOWY4N2VwOQorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuNjMzY2U4ZmI5Zjg3ZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNTg3CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS42MzNjZThmYjlmODdlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODgKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuNjMzY2U4ZmI5Zjg3ZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNTg5CisgICAgMHgxLmZmZmZmZmZmZmZkM2FlNTk0ZTliZGE5YjZiM2E5MTY4cDEwMjMsCisgICAgLTB4MS42MzNjZThmYjlmODdkcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTAKKyAgICAweDEuZmZmZmZmZmZmZmQzYWU1OTRlOWJkYTliNmIzYTkxNjhwMTAyMywKKyAgICAweDEuNjMzY2U4ZmI5Zjg3ZHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTkxCisgICAgMHgxLmZmZmZmZmZmZmY5M2FlNTk0ZTliZTQyNWEwMTBiZGVjcDEwMjMsCisgICAgLTB4MS42MzNjZThmYjlmODdjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTIKKyAgICAweDEuZmZmZmZmZmZmZjkzYWU1OTRlOWJlNDI1YTAxMGJkZWNwMTAyMywKKyAgICAweDEuNjMzY2U4ZmI5Zjg3Y3A5CisgIH0sCisgIHsgLy8gRW50cnkgNTkzCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmY4MDBhcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgNTk0CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmY4MDBhcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDU5NQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwMDAwYXAwLAorICAgIDB4MS4wcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDU5NgorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwMDAwYXAwLAorICAgIC0weDEuMHAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMTAwMGFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTgKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMTAwMGFwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgNTk5CisgICAgMHgxLjAwMDAwMDAyMDAwMDAwMDBhYWFhOGFhYWMxNmMwMTZjcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgNjAwCisgICAgMHgxLjAwMDAwMDAyMDAwMDAwMDBhYWFhOGFhYWMxNmMwMTZjcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xNgorICB9LAorICB7IC8vIEVudHJ5IDYwMQorICAgIDB4MS4wMDAwMDAwMjAwMDAwMDAwYWFhYWFhYWFjMTZjMTZjMXAwLAorICAgIDB4MS4wcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDYwMgorICAgIDB4MS4wMDAwMDAwMjAwMDAwMDAwYWFhYWFhYWFjMTZjMTZjMXAwLAorICAgIC0weDEuMHAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAweDEuMDAwMDAwMDIwMDAwMDAwMGFhYWFlYWFhYzE2YzQxNmNwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDQKKyAgICAweDEuMDAwMDAwMDIwMDAwMDAwMGFhYWFlYWFhYzE2YzQxNmNwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNjA1CisgICAgMHgxLjAwMDgwMDBhYWFiMDViMDZkMDczZmJmMzU2NzVkM2M3cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDYKKyAgICAweDEuMDAwODAwMGFhYWIwNWIwNmQwNzNmYmYzNTY3NWQzYzdwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDcKKyAgICAweDEuMDAwODAwMGFhYWIwNWIwNzUwNzU1MTQ5YmNkY2EwMzRwMCwKKyAgICAweDEuMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDYwOAorICAgIDB4MS4wMDA4MDAwYWFhYjA1YjA3NTA3NTUxNDliY2RjYTAzNHAwLAorICAgIC0weDEuMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDYwOQorICAgIDB4MS4wMDA4MDAwYWFhYjA1YjA4NTA3N2ZiZjY4OWFhNDUwZXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgNjEwCisgICAgMHgxLjAwMDgwMDBhYWFiMDViMDg1MDc3ZmJmNjg5YWE0NTBlcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgNjExCisgICAgMHgxLjAwMjAwMGFhYWMxNmMzMGEzMWQ1OWMyMjE3OGU4MGQycDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTIKKyAgICAweDEuMDAyMDAwYWFhYzE2YzMwYTMxZDU5YzIyMTc4ZTgwZDJwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTMKKyAgICAweDEuMDAyMDAwYWFhYzE2YzMwYzMxZWFmMWJiYjE5MDE5NDdwMCwKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDYxNAorICAgIDB4MS4wMDIwMDBhYWFjMTZjMzBjMzFlYWYxYmJiMTkwMTk0N3AwLAorICAgIC0weDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDYxNQorICAgIDB4MS4wMDIwMDBhYWFjMTZjMzEwMzIxNTljZWVlNTkzN2EzOHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjE2CisgICAgMHgxLjAwMjAwMGFhYWMxNmMzMTAzMjE1OWNlZWU1OTM3YTM4cDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjE3CisgICAgMHgxLjAwODAwYWFiMDViMWZiMWM1MDQyOWVhMjY5NGNjYWM4cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTgKKyAgICAweDEuMDA4MDBhYWIwNWIxZmIxYzUwNDI5ZWEyNjk0Y2NhYzhwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTkKKyAgICAweDEuMDA4MDBhYWIwNWIxZmIyNDUxOTgwNTA5MzdiYjAzNjhwMCwKKyAgICAweDEuMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDYyMAorICAgIDB4MS4wMDgwMGFhYjA1YjFmYjI0NTE5ODA1MDkzN2JiMDM2OHAwLAorICAgIC0weDEuMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDYyMQorICAgIDB4MS4wMDgwMGFhYjA1YjFmYjM0NTQ0MmQxZDZkNDk4MzUwOHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjIyCisgICAgMHgxLjAwODAwYWFiMDViMWZiMzQ1NDQyZDFkNmQ0OTgzNTA4cDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjIzCisgICAgMHgxLjAyMDBhYWMxNmRiNmVkY2M4MGIzM2IxMDYyMDMzY2M3cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjQKKyAgICAweDEuMDIwMGFhYzE2ZGI2ZWRjYzgwYjMzYjEwNjIwMzNjYzdwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjUKKyAgICAweDEuMDIwMGFhYzE2ZGI2ZWRlYzk2MGNkNTEyMDdlNDZjMWVwMCwKKyAgICAweDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDYyNgorICAgIDB4MS4wMjAwYWFjMTZkYjZlZGVjOTYwY2Q1MTIwN2U0NmMxZXAwLAorICAgIC0weDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDYyNworICAgIDB4MS4wMjAwYWFjMTZkYjZlZTJjYzBjMDA5MTU1M2E5ZDBjZXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjI4CisgICAgMHgxLjAyMDBhYWMxNmRiNmVlMmNjMGMwMDkxNTUzYTlkMGNlcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjI5CisgICAgMHgxLjA4MGFiMDVjYTYxNDVlNWI4ODI5NmIxODdmMDY4MDVmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzAKKyAgICAweDEuMDgwYWIwNWNhNjE0NWU1Yjg4Mjk2YjE4N2YwNjgwNWZwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzEKKyAgICAweDEuMDgwYWIwNWNhNjE0NWVkY2RlOTAzOTljODcxM2EzODRwMCwKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDYzMgorICAgIDB4MS4wODBhYjA1Y2E2MTQ1ZWRjZGU5MDM5OWM4NzEzYTM4NHAwLAorICAgIC0weDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDYzMworICAgIDB4MS4wODBhYjA1Y2E2MTQ1ZmRmOGI1ZGQ2YTQ5NzNhNGE0ZXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjM0CisgICAgMHgxLjA4MGFiMDVjYTYxNDVmZGY4YjVkZDZhNDk3M2E0YTRlcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjM1CisgICAgMHgxLmUxOGZhMGRmMmQ5YmE1OGY1ODkzNjA5NWFlOGQ5OTY5cDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDYzNgorICAgIDB4MS5lMThmYTBkZjJkOWJhNThmNTg5MzYwOTVhZThkOTk2OXAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjM3CisgICAgMHgxLmUxOGZhMGRmMmQ5YmMyOTMyN2Y3MTc3NzRkMGMwNjYxcDEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDYzOAorICAgIDB4MS5lMThmYTBkZjJkOWJjMjkzMjdmNzE3Nzc0ZDBjMDY2MXAxLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjM5CisgICAgMHgxLmUxOGZhMGRmMmQ5YmZjOWFjNmJlODUzYThmYWQ4ZjMzcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDY0MAorICAgIDB4MS5lMThmYTBkZjJkOWJmYzlhYzZiZTg1M2E4ZmFkOGYzM3AxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjQxCisgICAgMHgxLmI0ZWU4NThkZTNlN2M5Y2Q1NjllM2Q3MTliMzhkMzQycDQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIDB4MS5iNGVlODU4ZGUzZTdjOWNkNTY5ZTNkNzE5YjM4ZDM0MnA0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjQzCisgICAgMHgxLmI0ZWU4NThkZTNlODAwNjFjNmE1MWRkZGY5NjBmMzE3cDQsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDY0NAorICAgIDB4MS5iNGVlODU4ZGUzZTgwMDYxYzZhNTFkZGRmOTYwZjMxN3A0LAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjQ1CisgICAgMHgxLmI0ZWU4NThkZTNlODZkOGFhNmIyZGViNmNhMmM2MTA0cDQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDY0NgorICAgIDB4MS5iNGVlODU4ZGUzZTg2ZDhhYTZiMmRlYjZjYTJjNjEwNHA0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjQ3CisgICAgMHgxLjc0OWVhYTkzZjRlNzAzZTkyYzYwNGNiYjgyYjA3ODdhcDEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDgKKyAgICAweDEuNzQ5ZWFhOTNmNGU3MDNlOTJjNjA0Y2JiODJiMDc4N2FwMTAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDkKKyAgICAweDEuNzQ5ZWFhOTNmNGU3NjExMGQ1YTU4N2U1MGU0ZDNkYzNwMTAsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIDB4MS43NDllYWE5M2Y0ZTc2MTEwZDVhNTg3ZTUwZTRkM2RjM3AxMCwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDY1MQorICAgIDB4MS43NDllYWE5M2Y0ZTgxYjYwMjgyZmZlMzg2YjY0ODg1MXAxMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjUyCisgICAgMHgxLjc0OWVhYTkzZjRlODFiNjAyODJmZmUzODZiNjQ4ODUxcDEwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjUzCisgICAgMHgxLjBmMmViZDBhODAwNTQzYTYzY2NhMDE0Mjg5OWUyNjJmcDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTQKKyAgICAweDEuMGYyZWJkMGE4MDA1NDNhNjNjY2EwMTQyODk5ZTI2MmZwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTUKKyAgICAweDEuMGYyZWJkMGE4MDA1Y2IzZDliNGY0MTQxODZhYmE0ZDdwMjIsCisgICAgMHgxLjBwNAorICB9LAorICB7IC8vIEVudHJ5IDY1NgorICAgIDB4MS4wZjJlYmQwYTgwMDVjYjNkOWI0ZjQxNDE4NmFiYTRkN3AyMiwKKyAgICAtMHgxLjBwNAorICB9LAorICB7IC8vIEVudHJ5IDY1NworICAgIDB4MS4wZjJlYmQwYTgwMDZkYTZjNTg1OWMxNDA0YzI5YWZmMHAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNjU4CisgICAgMHgxLjBmMmViZDBhODAwNmRhNmM1ODU5YzE0MDRjMjlhZmYwcDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNjU5CisgICAgMHgxLjFmNDNmY2M0YjY2MWE4OTQ0YWMzODljNDRjMTM3MmZmcDQ1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjAKKyAgICAweDEuMWY0M2ZjYzRiNjYxYTg5NDRhYzM4OWM0NGMxMzcyZmZwNDUsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjEKKyAgICAweDEuMWY0M2ZjYzRiNjYyYzdkODQ3ODg0MDI2ODQ0OWJjMjVwNDUsCisgICAgMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDY2MgorICAgIDB4MS4xZjQzZmNjNGI2NjJjN2Q4NDc4ODQwMjY4NDQ5YmMyNXA0NSwKKyAgICAtMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDY2MworICAgIDB4MS4xZjQzZmNjNGI2NjUwNjYwNDExMWFjZWU1MjgyNDRiZnA0NSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1CisgIH0sCisgIHsgLy8gRW50cnkgNjY0CisgICAgMHgxLjFmNDNmY2M0YjY2NTA2NjA0MTExYWNlZTUyODI0NGJmcDQ1LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1CisgIH0sCisgIHsgLy8gRW50cnkgNjY1CisgICAgMHgxLjQyNTk4MmNmNTk3YTRkNTJjODllYTg1N2JiYWE4MDdhcDkxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjYKKyAgICAweDEuNDI1OTgyY2Y1OTdhNGQ1MmM4OWVhODU3YmJhYTgwN2FwOTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjcKKyAgICAweDEuNDI1OTgyY2Y1OTdjZDIwNWNlM2Q1YjRlZGIwMzE3NTZwOTEsCisgICAgMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDY2OAorICAgIDB4MS40MjU5ODJjZjU5N2NkMjA1Y2UzZDViNGVkYjAzMTc1NnA5MSwKKyAgICAtMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDY2OQorICAgIDB4MS40MjU5ODJjZjU5ODFkYjZiZDk3YWMxNGMzNWU2NjZjNnA5MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjcwCisgICAgMHgxLjQyNTk4MmNmNTk4MWRiNmJkOTdhYzE0YzM1ZTY2NmM2cDkxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjcxCisgICAgMHgxLjk1ZTU0YzVkZDQxYjIwNjAwZGQ2MDFhMGFlNjcyZmY0cDE4MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjcyCisgICAgMHgxLjk1ZTU0YzVkZDQxYjIwNjAwZGQ2MDFhMGFlNjcyZmY0cDE4MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDY3MworICAgIDB4MS45NWU1NGM1ZGQ0MjE3N2Y1M2Y0ZDUyMTlkZjExY2EzYnAxODMsCisgICAgMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDY3NAorICAgIDB4MS45NWU1NGM1ZGQ0MjE3N2Y1M2Y0ZDUyMTlkZjExY2EzYnAxODMsCisgICAgLTB4MS4wcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzUKKyAgICAweDEuOTVlNTRjNWRkNDJlMjcxZmEyM2JmMzU4NWI2NTUwNjBwMTgzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzYKKyAgICAweDEuOTVlNTRjNWRkNDJlMjcxZmEyM2JmMzU4NWI2NTUwNjBwMTgzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA3CisgIH0sCisgIHsgLy8gRW50cnkgNjc3CisgICAgMHgxLjQxYzdhODgxNGJlMTkyYTVkZjI1YjA0MmFmODI0ZWZkcDM2OCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA3CisgIH0sCisgIHsgLy8gRW50cnkgNjc4CisgICAgMHgxLjQxYzdhODgxNGJlMTkyYTVkZjI1YjA0MmFmODI0ZWZkcDM2OCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNworICB9LAorICB7IC8vIEVudHJ5IDY3OQorICAgIDB4MS40MWM3YTg4MTRiZWJhMGUzMjMzMDBmNzc3ZGE2NTg1NHAzNjgsCisgICAgMHgxLjBwOAorICB9LAorICB7IC8vIEVudHJ5IDY4MAorICAgIDB4MS40MWM3YTg4MTRiZWJhMGUzMjMzMDBmNzc3ZGE2NTg1NHAzNjgsCisgICAgLTB4MS4wcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODEKKyAgICAweDEuNDFjN2E4ODE0YmZmYmQ1ZGFiNDRjZWQyNmZhY2NiZmJwMzY4LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODIKKyAgICAweDEuNDFjN2E4ODE0YmZmYmQ1ZGFiNDRjZWQyNmZhY2NiZmJwMzY4LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA4CisgIH0sCisgIHsgLy8gRW50cnkgNjgzCisgICAgMHgxLjk0NzY1MDRiYTgzOTlmNWI5N2NhZTM1YmViNzhjM2M1cDczNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA4CisgIH0sCisgIHsgLy8gRW50cnkgNjg0CisgICAgMHgxLjk0NzY1MDRiYTgzOTlmNWI5N2NhZTM1YmViNzhjM2M1cDczNywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDY4NQorICAgIDB4MS45NDc2NTA0YmE4NTJlNmMwOWM4NTY3YzAxYzVhNjY0OHA3MzcsCisgICAgMHgxLjBwOQorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIDB4MS45NDc2NTA0YmE4NTJlNmMwOWM4NTY3YzAxYzVhNjY0OHA3MzcsCisgICAgLTB4MS4wcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODcKKyAgICAweDEuOTQ3NjUwNGJhODg1NzU4YWE1ZmE3NTQ1ZTEwZThlNDZwNzM3LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODgKKyAgICAweDEuOTQ3NjUwNGJhODg1NzU4YWE1ZmE3NTQ1ZTEwZThlNDZwNzM3LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgNjg5CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTAKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNjkxCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDY5MgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNjkzCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTQKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNjk1CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDY5NgorICAgIDB4MS43MmYxNDdmZWU0MDAwNGY2MzY5NjBmYjY1NjE2ZjkzM3AzLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTcKKyAgICAweDEuNDEyY2MyYThkNGU5ZGY4MzE5Y2VlZTQ1ZDkzZjIxZjNwMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjk4CisgICAgMHgxLjhiMDc1NTFkOWY1NTE3OTA1Y2VjNWViYjE5YzRmYTM5cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDY5OQorICAgIDB4MS44YjA3NTUxZDlmNTUwNGMyYmQyODEwMDE5NmE0ZjY2YXAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDAKKyAgICAweDEuOGIwNzU1MWQ5ZjU0ZmI1YmVkNDVlOGE0ZDVhOTE3NDJwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwMQorICAgIDB4MS41MzE5OTRjZTUyNWI5N2Q0ODljMWJlYjM4Mzk0MzI0MHAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzAyCisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzAzCisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzA0CisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzA1CisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzA2CisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNzA3CisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzA4CisgICAgMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDcwOQorICAgIDB4MS5wMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzEwCisgICAgMHgxLnAwLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDcxMQorICAgIDB4MS5wMCwKKyAgICAtMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTIKKyAgICAweDEucDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzEzCisgICAgMHgxLnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDcxNAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTUKKyAgICAweDEucDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzE2CisgICAgMHgxLjUzMTk5NGNlNTI1Yjk3ZDQ4OWMxYmViMzgzOTQzMjQwcDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzE3CisgICAgMHgxLjhiMDc1NTFkOWY1NGZiNWJlZDQ1ZThhNGQ1YTkxNzQycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzE4CisgICAgMHgxLjhiMDc1NTFkOWY1NTA0YzJiZDI4MTAwMTk2YTRmNjZhcDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTkKKyAgICAweDEuOGIwNzU1MWQ5ZjU1MTc5MDVjZWM1ZWJiMTljNGZhMzlwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDcyMAorICAgIDB4MS40MTJjYzJhOGQ0ZTlkZjgzMTljZWVlNDVkOTNmMjFmM3AxLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzIxCisgICAgMHgxLjcyZjE0N2ZlZTQwMDA0ZjYzNjk2MGZiNjU2MTZmOTMzcDMsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjIKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDcyMworICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzI0CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzI1CisgICAgMHgxLmZmZmZmZmZmZmZkM2FlNTk0ZTliZGE5YjZiM2E5MTY4cDEwMjMsCisgICAgMHgxLjYzM2NlOGZiOWY4N2RwOQorICB9LAorICB7IC8vIEVudHJ5IDcyNgorICAgIDB4MS5mZmZmZmZmZmZmZDNhZTU5NGU5YmRhOWI2YjNhOTE2OHAxMDIzLAorICAgIC0weDEuNjMzY2U4ZmI5Zjg3ZHA5CisgIH0sCisgIHsgLy8gRW50cnkgNzI3CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjYzM2NlOGZiOWY4N2VwOQorICB9LAorICB7IC8vIEVudHJ5IDcyOAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuNjMzY2U4ZmI5Zjg3ZXA5CisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvY29zaGZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2Nvc2hmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MTNiMWIzCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2Nvc2hmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDI0MzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfY29zaGZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAweDEuMmFlMDYxMDBlNjJiZTkwNGZkYjViYzg1NjgxZDVhYWVwMTEsCisgICAgLTB4MS4wZjFmYjJwMworICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuMmFlMDYxMDBlNjJiZTkwNGZkYjViYzg1NjgxZDVhYWVwMTEsCisgICAgMHgxLjBmMWZiMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwYzg3Nzg1ZDYxODhwMCwKKyAgICAtMHgxLjQwNWY5MHAtMzgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDBjODc3ODVkNjE4OHAwLAorICAgIDB4MS40MDVmOTBwLTM4CisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS40ZjFmZTZmZmZkMDU1NDAzYTBhZmE1ZjYxZjdhZDQ1NnAxMjIsCisgICAgLTB4MS41NjFiMTBwNgorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuNGYxZmU2ZmZmZDA1NTQwM2EwYWZhNWY2MWY3YWQ0NTZwMTIyLAorICAgIDB4MS41NjFiMTBwNgorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuZDJmMjIyN2FlNGRkNjViNTgxMDcxYjBmNDA0NjdjMzBwMTIyLAorICAgIC0weDEuNTc2ZWJjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLmQyZjIyMjdhZTRkZDY1YjU4MTA3MWIwZjQwNDY3YzMwcDEyMiwKKyAgICAweDEuNTc2ZWJjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLjkzNmI0MTA0N2M3ZjRlZjIwYWNiZmMzYWIyOGFkZGUxcDcsCisgICAgLTB4MS43ZmZmODBwMgorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuOTM2YjQxMDQ3YzdmNGVmMjBhY2JmYzNhYjI4YWRkZTFwNywKKyAgICAweDEuN2ZmZjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS4wMDAwMDE3ZjU4NDM3YWM1N2JlODZlYWY4NzhhZmRkYXAwLAorICAgIC0weDEuYmIwNmNjcC0xMgorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLjAwMDAwMTdmNTg0MzdhYzU3YmU4NmVhZjg3OGFmZGRhcDAsCisgICAgMHgxLmJiMDZjY3AtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5mYmFjZjRjYTcwMmE5Nzk0NWQ3YzdkNzhjMGJkYWQ0N3A4LAorICAgIC0weDEuYmIxMjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5mYmFjZjRjYTcwMmE5Nzk0NWQ3YzdkNzhjMGJkYWQ0N3A4LAorICAgIDB4MS5iYjEyNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLjAwMDAwMTdmYjJjOWI5ZTI4ODk4M2ZhMDZjZTYyYjA0cDAsCisgICAgLTB4MS5iYjNiMThwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuMDAwMDAxN2ZiMmM5YjllMjg4OTgzZmEwNmNlNjJiMDRwMCwKKyAgICAweDEuYmIzYjE4cC0xMgorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLjAwMDAwNzAwMDM1NTFmZWNlYTBkYWU2ZDA1NTFkZTEwcDAsCisgICAgLTB4MS5kZWVmMTJwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuMDAwMDA3MDAwMzU1MWZlY2VhMGRhZTZkMDU1MWRlMTBwMCwKKyAgICAweDEuZGVlZjEycC0xMQorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLjAxZmUyYjAwMDg3NGQ4OTE3YjNhNzNmZDA4MDU0MmY3cDAsCisgICAgLTB4MS5mZWMwOTBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS4wMWZlMmIwMDA4NzRkODkxN2IzYTczZmQwODA1NDJmN3AwLAorICAgIDB4MS5mZWMwOTBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS4wMDAwMDAwMDAwMjAwMDAwMDAwMDAwYWFhYWFhYWFhYXAwLAorICAgIDB4MS5wLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuMDAwMDAwMDAwMDIwMDAwMDAwMDAwMGFhYWFhYWFhYWFwMCwKKyAgICAtMHgxLnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5wMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS5wMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAyMDAwMDA4MHAwLAorICAgIDB4MS4wMDAwMDJwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAyMDAwMDA4MHAwLAorICAgIC0weDEuMDAwMDAycC00MQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLjc0OWYxZjA1OWFhZmFjM2UzYWU0ODJmNzMyMDM0Zjk5cDEwLAorICAgIDB4MS4wMDAwMGFwMworICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLjc0OWYxZjA1OWFhZmFjM2UzYWU0ODJmNzMyMDM0Zjk5cDEwLAorICAgIC0weDEuMDAwMDBhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS4wODBhYjEzZWZkNGU5OTg1NjZiMDY5M2E5YTc3MzFhOHAwLAorICAgIDB4MS4wMDAwMGVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS4wODBhYjEzZWZkNGU5OTg1NjZiMDY5M2E5YTc3MzFhOHAwLAorICAgIC0weDEuMDAwMDBlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuMDIwMGFiMDE5ODZjMjVmMTM3N2RkODUxNjljN2NjZjVwMCwKKyAgICAweDEuMDAwMDEwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuMDIwMGFiMDE5ODZjMjVmMTM3N2RkODUxNjljN2NjZjVwMCwKKyAgICAtMHgxLjAwMDAxMHAtMworICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLmUxOTBmZDBkNmRiOGRiMDliNWFhZDJmODliYjJhZDc2cDEsCisgICAgMHgxLjAwMDA2MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEuZTE5MGZkMGQ2ZGI4ZGIwOWI1YWFkMmY4OWJiMmFkNzZwMSwKKyAgICAtMHgxLjAwMDA2MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuYjRmNGVhZmYwNGYyNjVkNWY1NWFlY2FkOTQ0MTI4NzdwNCwKKyAgICAweDEuMDAwMGYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS5iNGY0ZWFmZjA0ZjI2NWQ1ZjU1YWVjYWQ5NDQxMjg3N3A0LAorICAgIC0weDEuMDAwMGYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS43NjExMmYwMjhhODIzM2M2YmU1MmRkZDBkMTFkZDUwZnAxMCwKKyAgICAweDEuMDAxZmMycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS43NjExMmYwMjhhODIzM2M2YmU1MmRkZDBkMTFkZDUwZnAxMCwKKyAgICAtMHgxLjAwMWZjMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuZTIwM2JmMmE2ZjEwNGQ5OTBkOTYxMGFmYjZjOGIwMTRwMSwKKyAgICAweDEuMDAyMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuZTIwM2JmMmE2ZjEwNGQ5OTBkOTYxMGFmYjZjOGIwMTRwMSwKKyAgICAtMHgxLjAwMjBwMQorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLjA4MGNjNTAxNTkxY2M2NjljNGNjOGNkMWE1ODkxNzI3cDAsCisgICAgMHgxLjAwMjBmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjA4MGNjNTAxNTkxY2M2NjljNGNjOGNkMWE1ODkxNzI3cDAsCisgICAgLTB4MS4wMDIwZjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS43ZDE1NzkwOTIzZmM1OWI4ZDdkMTBhOGM1ZDNhZGM0OHAxMCwKKyAgICAweDEuMDBiOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEuN2QxNTc5MDkyM2ZjNTliOGQ3ZDEwYThjNWQzYWRjNDhwMTAsCisgICAgLTB4MS4wMGI4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS4wMDgxODUwMDAyMGMwNmNlZGJkMzhkMzRlZWU2YWI1NHAwLAorICAgIDB4MS4wMTc5cC00CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuMDA4MTg1MDAwMjBjMDZjZWRiZDM4ZDM0ZWVlNmFiNTRwMCwKKyAgICAtMHgxLjAxNzlwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS44ZDE3ZTcwMzBiOGU5NjkwZTAxOTY0YmQyYzhiZTk0YnAwLAorICAgIDB4MS4wMWJmYzJwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLjhkMTdlNzAzMGI4ZTk2OTBlMDE5NjRiZDJjOGJlOTRicDAsCisgICAgLTB4MS4wMWJmYzJwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLjhlMzQ0MzAwNzNlMGU5MTk5ZTY4YWQzYmNhOWVkNzkzcDEwLAorICAgIDB4MS4wMjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS44ZTM0NDMwMDczZTBlOTE5OWU2OGFkM2JjYTllZDc5M3AxMCwKKyAgICAtMHgxLjAyMjBwMworICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjkzZGM2MzAwMDhiNjY5MTg3ZTUxNWRjN2FhNDJmNDg2cDAsCisgICAgMHgxLjA3NjBwMAorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLjkzZGM2MzAwMDhiNjY5MTg3ZTUxNWRjN2FhNDJmNDg2cDAsCisgICAgLTB4MS4wNzYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS5iZjFhYmVkYjlmY2RlNzk0YmE3OTNiNmI1MDVlYjE3YnAyMiwKKyAgICAweDEuMDhwNAorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLmJmMWFiZWRiOWZjZGU3OTRiYTc5M2I2YjUwNWViMTdicDIyLAorICAgIC0weDEuMDhwNAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjg5YWNkZjI2Zjk5MDEyZWM1MjdjNWVhMTE2MmFhMDk1cDQ2LAorICAgIDB4MS4wODEwZWVwNQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLjg5YWNkZjI2Zjk5MDEyZWM1MjdjNWVhMTE2MmFhMDk1cDQ2LAorICAgIC0weDEuMDgxMGVlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS45NTA2ZDIwMjMzOTY5MWRhYTkyMjQyYzg5MGQ1MzAzN3AwLAorICAgIDB4MS4wODU0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS45NTA2ZDIwMjMzOTY5MWRhYTkyMjQyYzg5MGQ1MzAzN3AwLAorICAgIC0weDEuMDg1NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuOTdhNzViMDAwODgxMGJlMjg1MTEwZGNmZjMzMWFjMTdwMCwKKyAgICAweDEuMGE3NTljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS45N2E3NWIwMDA4ODEwYmUyODUxMTBkY2ZmMzMxYWMxN3AwLAorICAgIC0weDEuMGE3NTljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS5hMjI5ZGZmZmY2MWUxNDk0Nzg3ZDI5ZGRmMjNiMGE1Y3AwLAorICAgIDB4MS4xMmM0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS5hMjI5ZGZmZmY2MWUxNDk0Nzg3ZDI5ZGRmMjNiMGE1Y3AwLAorICAgIC0weDEuMTJjNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEuYTMwODY1MGEwOTkxNmExZjY1ZGQyZTMwNDBkYWM4ZTZwMCwKKyAgICAweDEuMTM3MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuYTMwODY1MGEwOTkxNmExZjY1ZGQyZTMwNDBkYWM4ZTZwMCwKKyAgICAtMHgxLjEzNzBwMAorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLmFmN2M4OGI1OWY4Y2I5MDI3M2Q5NzEyMTBmOWViYWYxcDAsCisgICAgMHgxLjFjZDRwMAorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLmFmN2M4OGI1OWY4Y2I5MDI3M2Q5NzEyMTBmOWViYWYxcDAsCisgICAgLTB4MS4xY2Q0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS5iMTQ1ZGVkZGQ0YjcyODdlMDk3NmIxMzRhYWVhMWU1OXAwLAorICAgIDB4MS4xZTI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS5iMTQ1ZGVkZGQ0YjcyODdlMDk3NmIxMzRhYWVhMWU1OXAwLAorICAgIC0weDEuMWUyNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuMDAwMDAyODAyNjMyZWVjYWEwMDg0OGJlMmU0M2U3ZThwMCwKKyAgICAweDEuMWU0MDA0cC0xMQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLjAwMDAwMjgwMjYzMmVlY2FhMDA4NDhiZTJlNDNlN2U4cDAsCisgICAgLTB4MS4xZTQwMDRwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuMDAwMDAyODBhZTBjOTM3NmQwMmMwZWUyZWVjMDdiOWNwMCwKKyAgICAweDEuMWU1ZTYycC0xMQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLjAwMDAwMjgwYWUwYzkzNzZkMDJjMGVlMmVlYzA3YjljcDAsCisgICAgLTB4MS4xZTVlNjJwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEuMDAwYTBkNDE5YjRhZDczMjVjY2VkNmUzZGYyNDMyYjdwMCwKKyAgICAweDEuMWVmNHAtNgorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgMHgxLjAwMGEwZDQxOWI0YWQ3MzI1Y2NlZDZlM2RmMjQzMmI3cDAsCisgICAgLTB4MS4xZWY0cC02CisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuYjI2N2VkNzIzZjg4ZjgyMTM2YmEzNjZkYjIxNzE1NDhwMCwKKyAgICAweDEuMWVmOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAweDEuYjI2N2VkNzIzZjg4ZjgyMTM2YmEzNjZkYjIxNzE1NDhwMCwKKyAgICAtMHgxLjFlZjhwMAorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLmQ3ZmQwNTBlNDJiZmI5ZGE1MjRiZGExYjY2OGVkMjBlcDI0LAorICAgIDB4MS4xZjBjMWNwNAorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLmQ3ZmQwNTBlNDJiZmI5ZGE1MjRiZGExYjY2OGVkMjBlcDI0LAorICAgIC0weDEuMWYwYzFjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS4wMmIwNWIwMDAwZmU0MzBiOGVjMGFiMDAwODkzNDMyMHAwLAorICAgIDB4MS4yODkyYzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS4wMmIwNWIwMDAwZmU0MzBiOGVjMGFiMDAwODkzNDMyMHAwLAorICAgIC0weDEuMjg5MmMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuYjU2ZDdiMDAxOWViZTE5ODBhODhiZmM5OGI5NmY5MDNwNSwKKyAgICAweDEuMmM3MzNjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS5iNTZkN2IwMDE5ZWJlMTk4MGE4OGJmYzk4Yjk2ZjkwM3A1LAorICAgIC0weDEuMmM3MzNjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS4yZGRlMDcwMDI3ZTU1NWFmOTNiZjRiM2EyOTZmZTFlNHAwLAorICAgIDB4MS4yZTE2ZDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS4yZGRlMDcwMDI3ZTU1NWFmOTNiZjRiM2EyOTZmZTFlNHAwLAorICAgIC0weDEuMmUxNmQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuMGJiYmU3MDAwMDAxZTZiM2I0NTVlZmRhYjUzZTRlZTRwMCwKKyAgICAweDEuMzRkZTMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEuMGJiYmU3MDAwMDAxZTZiM2I0NTVlZmRhYjUzZTRlZTRwMCwKKyAgICAtMHgxLjM0ZGUzMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLmQ2ZGFlYWRjMGFhMzg2YTJkZjdmZWUyZjliNzU4YmRicDAsCisgICAgMHgxLjM4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS5kNmRhZWFkYzBhYTM4NmEyZGY3ZmVlMmY5Yjc1OGJkYnAwLAorICAgIC0weDEuMzhwMAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLmVjN2U4ODBiZjQzMmFjZjBjZGIzMDU1Yzg5ZWNhMTE5cDAsCisgICAgMHgxLjQ1OTUwNnAwCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuZWM3ZTg4MGJmNDMyYWNmMGNkYjMwNTVjODllY2ExMTlwMCwKKyAgICAtMHgxLjQ1OTUwNnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuOWE3NDE1MGFhMjM1ZWU3YzgxZWIwYzhhODRlNTc1NmVwMiwKKyAgICAweDEuNDVjZjZhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS45YTc0MTUwYWEyMzVlZTdjODFlYjBjOGE4NGU1NzU2ZXAyLAorICAgIC0weDEuNDVjZjZhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS5mN2M2MDFjMjZhMGFhYjA3YWNiM2FlZDEyOTUyOTg2MHAxMTYsCisgICAgMHgxLjQ3MTljNnA2CisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAweDEuZjdjNjAxYzI2YTBhYWIwN2FjYjNhZWQxMjk1Mjk4NjBwMTE2LAorICAgIC0weDEuNDcxOWM2cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5mZWI3NTEzN2U3M2ZjNTUxMWExY2RkYTFjZTZlYTczYnAxMTYsCisgICAgMHgxLjQ3MjdjYXA2CisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuZmViNzUxMzdlNzNmYzU1MTFhMWNkZGExY2U2ZWE3M2JwMTE2LAorICAgIC0weDEuNDcyN2NhcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS4zOTJmZTEwMDMwM2FjMmMwZjY1M2EzYWM0MGJiMzQ1ZXAwLAorICAgIDB4MS41MDI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuMzkyZmUxMDAzMDNhYzJjMGY2NTNhM2FjNDBiYjM0NWVwMCwKKyAgICAtMHgxLjUwMjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS43ZWNhMzEwYjJjYzE4ZjFiMTQwMTJiMWFiYTc1ZDE5MXA2LAorICAgIDB4MS41MDQ2YTRwMgorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLjdlY2EzMTBiMmNjMThmMWIxNDAxMmIxYWJhNzVkMTkxcDYsCisgICAgLTB4MS41MDQ2YTRwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS4wM2I5NjhmZmZmMDIxNWJmYWNjNzBjMWNjOGNiZWIwMXAwLAorICAgIDB4MS41Y2VhNDRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuMDNiOTY4ZmZmZjAyMTViZmFjYzcwYzFjYzhjYmViMDFwMCwKKyAgICAtMHgxLjVjZWE0NHAtMworICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS5mYmRhYmFjOTdhYzEzMDUxN2NhMDg1MDAxZGU5N2E4ZHA2LAorICAgIDB4MS42MjVlYmNwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS5mYmRhYmFjOTdhYzEzMDUxN2NhMDg1MDAxZGU5N2E4ZHA2LAorICAgIC0weDEuNjI1ZWJjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuZmZlMzA4ZmZmNjA0ODM3NTBhOGE2NmM5M2UxNmRhOTZwMTI2LAorICAgIDB4MS42MmUzZjZwNgorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5mZmUzMDhmZmY2MDQ4Mzc1MGE4YTY2YzkzZTE2ZGE5NnAxMjYsCisgICAgLTB4MS42MmUzZjZwNgorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS4wMDIxMDYzODM2YjQ5ZGNjODllNGM1YWFiNWU5MTFkMXAxMjcsCisgICAgMHgxLjYyZTRiNHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLjAwMjEwNjM4MzZiNDlkY2M4OWU0YzVhYWI1ZTkxMWQxcDEyNywKKyAgICAtMHgxLjYyZTRiNHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjAzZGQzOGZmZmYwMTE2YjQxMjgwNzZhNDk1Y2NkODE0cDAsCisgICAgMHgxLjYzNjQ0NHAtMworICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS4wM2RkMzhmZmZmMDExNmI0MTI4MDc2YTQ5NWNjZDgxNHAwLAorICAgIC0weDEuNjM2NDQ0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLjM4ODdjNTlmYjA0ZDQzNGU2MDk2MTBjMTQ4ZDliOGNlcDEyNywKKyAgICAweDEuNjNiMDgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuMzg4N2M1OWZiMDRkNDM0ZTYwOTYxMGMxNDhkOWI4Y2VwMTI3LAorICAgIC0weDEuNjNiMDgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuZjQwYTJjNmM3ZTRlZWM0YzBlZDFmYWUzMmQyNTVlMjNwMTI3LAorICAgIDB4MS42NTkxYzRwNgorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS5mNDBhMmM2YzdlNGVlYzRjMGVkMWZhZTMyZDI1NWUyM3AxMjcsCisgICAgLTB4MS42NTkxYzRwNgorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS5mZjcwZWM0MDBiOWMyZDhkZWU4NzhlMzBiNTYzMzliZXAxMjcsCisgICAgMHgxLjY1YThkYXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMHgxLmZmNzBlYzQwMGI5YzJkOGRlZTg3OGUzMGI1NjMzOWJlcDEyNywKKyAgICAtMHgxLjY1YThkYXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjAwZmU3NWZmZmZhMjU3OWY3M2VkZGIyNjkzMjY0MWFkcDAsCisgICAgMHgxLjY4ZDUwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS4wMGZlNzVmZmZmYTI1NzlmNzNlZGRiMjY5MzI2NDFhZHAwLAorICAgIC0weDEuNjhkNTAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjAwMDAwMTAwMDM0ZDRkODJjYzY1OWJhNDJmZDllZWU3cDAsCisgICAgMHgxLjZhMGMzY3AtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEuMDAwMDAxMDAwMzRkNGQ4MmNjNjU5YmE0MmZkOWVlZTdwMCwKKyAgICAtMHgxLjZhMGMzY3AtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuMDQzN2IwZmZmZjZmYzM5NjA3MDM4NDlkMDQ4NjRkMTlwMCwKKyAgICAweDEuNzMzZWFhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLjA0MzdiMGZmZmY2ZmMzOTYwNzAzODQ5ZDA0ODY0ZDE5cDAsCisgICAgLTB4MS43MzNlYWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEuMDAwNDU5MDAwMjhiNzZjZWU0MzMwY2MzNjEwNTAwNGNwMCwKKyAgICAweDEuNzk3MTI0cC03CisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgMHgxLjAwMDQ1OTAwMDI4Yjc2Y2VlNDMzMGNjMzYxMDUwMDRjcDAsCisgICAgLTB4MS43OTcxMjRwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEuMTFhZWVkMDAwMGZkYTk3N2YxZDg5NDYwNmMxMzEyN2VwMCwKKyAgICAweDEuN2E3MzBjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjExYWVlZDAwMDBmZGE5NzdmMWQ4OTQ2MDZjMTMxMjdlcDAsCisgICAgLTB4MS43YTczMGNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuMDExODJlZmZmY2QxNGIzM2Q0NWM5MDBlZDAzZTViOGRwMCwKKyAgICAweDEuN2E5ZTUwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLjAxMTgyZWZmZmNkMTRiMzNkNDVjOTAwZWQwM2U1YjhkcDAsCisgICAgLTB4MS43YTllNTBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuMDQ2YTY3MDAwMzBkNGFmODk4NTAwN2U4NWI0YWYzYTdwMCwKKyAgICAweDEuN2JkNmI2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLjA0NmE2NzAwMDMwZDRhZjg5ODUwMDdlODViNGFmM2E3cDAsCisgICAgLTB4MS43YmQ2YjZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuNWRmOTFjZmZmODZmNzIxMGZhMTYzNjhkZjA2OThmYTlwMTYsCisgICAgMHgxLjgzMTNlYXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLjVkZjkxY2ZmZjg2ZjcyMTBmYTE2MzY4ZGYwNjk4ZmE5cDE2LAorICAgIC0weDEuODMxM2VhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuMDQ5YjA1MDAwMWM4MDhhOTQxNTUzM2FmYzdhODQ4ODZwMCwKKyAgICAweDEuODNlNWE4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLjA0OWIwNTAwMDFjODA4YTk0MTU1MzNhZmM3YTg0ODg2cDAsCisgICAgLTB4MS44M2U1YThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuMDRiMWE1MDAwMjdmODlhMWIwZmU0MTQ4OTgzZTE4YTJwMCwKKyAgICAweDEuODc5NzBjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMHgxLjA0YjFhNTAwMDI3Zjg5YTFiMGZlNDE0ODk4M2UxOGEycDAsCisgICAgLTB4MS44Nzk3MGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuOTgyYWE0ZjlkNmVjZjJkYWYyOWVmNjMxMWM3ZGI4ZTFwMTYsCisgICAgMHgxLjg4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuOTgyYWE0ZjlkNmVjZjJkYWYyOWVmNjMxMWM3ZGI4ZTFwMTYsCisgICAgLTB4MS44OHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLmQ1MDE5NTBlOGVmMjNjNWFjYmI3OGU2YmY3YTQ0NDFjcDcsCisgICAgMHgxLjg5YTM5ZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLmQ1MDE5NTBlOGVmMjNjNWFjYmI3OGU2YmY3YTQ0NDFjcDcsCisgICAgLTB4MS44OWEzOWVwMgorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5kYWI3N2QwNDFlZDVhZTA5ZjExOTQzMzZlMWRmZWNhNHAxNiwKKyAgICAweDEuOGNkNTU4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuZGFiNzdkMDQxZWQ1YWUwOWYxMTk0MzM2ZTFkZmVjYTRwMTYsCisgICAgLTB4MS44Y2Q1NThwMworICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS4wMDEzNzcwMDAyYTA2YmRhNWRlZDU1NjQwNmUzNGE1NHAwLAorICAgIDB4MS44ZjRmM2VwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAweDEuMDAxMzc3MDAwMmEwNmJkYTVkZWQ1NTY0MDZlMzRhNTRwMCwKKyAgICAtMHgxLjhmNGYzZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS4wMTRhOGMwMDAwMDE3MjRiY2YyMWJjYzljZDRlZjY0N3AwLAorICAgIDB4MS45YjM3MTZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAweDEuMDE0YThjMDAwMDAxNzI0YmNmMjFiY2M5Y2Q0ZWY2NDdwMCwKKyAgICAtMHgxLjliMzcxNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS45MmMxZGYwYWEwOGM4OTQ5ZDJkYmZiNjE3MTI2MzZlYXAzLAorICAgIDB4MS45Y2IxNjRwMQorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS45MmMxZGYwYWEwOGM4OTQ5ZDJkYmZiNjE3MTI2MzZlYXAzLAorICAgIC0weDEuOWNiMTY0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuNWIyNTk4ZmZmZmZlMzhmZGUyOGFiM2U2ZjZjOTM5MjJwMCwKKyAgICAweDEuYTQyOTljcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgMHgxLjViMjU5OGZmZmZmZTM4ZmRlMjhhYjNlNmY2YzkzOTIycDAsCisgICAgLTB4MS5hNDI5OWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuMDU2ZWE1MDIwZWI0NjA3ZTg4MDBlNTYxNzViOTU0MjdwMCwKKyAgICAweDEuYTUyOTMycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgMHgxLjA1NmVhNTAyMGViNDYwN2U4ODAwZTU2MTc1Yjk1NDI3cDAsCisgICAgLTB4MS5hNTI5MzJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAweDEuMTY5MjhmMDAwMGJmOTI2MjkxZWQ5ZWZhNTgyY2NlYWJwMCwKKyAgICAweDEuYWFlYWU0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgMHgxLjE2OTI4ZjAwMDBiZjkyNjI5MWVkOWVmYTU4MmNjZWFicDAsCisgICAgLTB4MS5hYWVhZTRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuMDE3MzFhZmZmZjAyODU5YmQxZmMyZTNkM2Q1YzZhZmNwMCwKKyAgICAweDEuYjNiMGZjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgMHgxLjAxNzMxYWZmZmYwMjg1OWJkMWZjMmUzZDNkNWM2YWZjcDAsCisgICAgLTB4MS5iM2IwZmNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuZmMzYjVhYzg2MTRhNzNlODM5NGZlOWUxYmYzNDFhNWRwMywKKyAgICAweDEuYmE4YWE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAweDEuZmMzYjVhYzg2MTRhNzNlODM5NGZlOWUxYmYzNDFhNWRwMywKKyAgICAtMHgxLmJhOGFhOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgMHgxLmZjYjY5OGNlYmVmYmRkZTA4N2Y5NDBlMTM2MzdiOTk3cDMsCisgICAgMHgxLmJhYTliZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMHgxLmZjYjY5OGNlYmVmYmRkZTA4N2Y5NDBlMTM2MzdiOTk3cDMsCisgICAgLTB4MS5iYWE5YmVwMQorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS4wMDYyODkwMDAwMDAwYTIwMDUxNzdhMzYwYjhkYWZhZHAwLAorICAgIDB4MS5jMTJhNTBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAweDEuMDA2Mjg5MDAwMDAwMGEyMDA1MTc3YTM2MGI4ZGFmYWRwMCwKKyAgICAtMHgxLmMxMmE1MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDB4MS44NjFjZTkwYTJjZDk0NWUyNzk2YTcwMDM0YTA2MmY5MHAxLAorICAgIDB4MS5jNzhjMmNwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIDB4MS44NjFjZTkwYTJjZDk0NWUyNzk2YTcwMDM0YTA2MmY5MHAxLAorICAgIC0weDEuYzc4YzJjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEuMDAwMDE5NjIwMDMyNjE5NGYzNmY4N2E5YTEwOTU0YmNwMCwKKyAgICAweDEuYzdmZmZlcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIDB4MS4wMDAwMTk2MjAwMzI2MTk0ZjM2Zjg3YTlhMTA5NTRiY3AwLAorICAgIC0weDEuYzdmZmZlcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIDB4MS4xYTYwNDRmZmZmMDE5YmU3ZmU0MzE1MzRjMWUxZTkxY3AwLAorICAgIDB4MS5jY2VmNTJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAweDEuMWE2MDQ0ZmZmZjAxOWJlN2ZlNDMxNTM0YzFlMWU5MWNwMCwKKyAgICAtMHgxLmNjZWY1MnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS45MDhkZTEwYWZkOWY1YWEwYmFkYzA3NWE4YWExNGNjZnAxLAorICAgIDB4MS5jZWIxYzBwMAorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIDB4MS45MDhkZTEwYWZkOWY1YWEwYmFkYzA3NWE4YWExNGNjZnAxLAorICAgIC0weDEuY2ViMWMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAweDEuYTA2MGFiMDhiZTcxNjRhMDk1NDZiNWNlMTU5NzBlMzhwMSwKKyAgICAweDEuZDkyMzljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAweDEuYTA2MGFiMDhiZTcxNjRhMDk1NDZiNWNlMTU5NzBlMzhwMSwKKyAgICAtMHgxLmQ5MjM5Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLmQzNDRlMTBlOGJjZWEwMGFjNDg0NGEzNDQ4YmU5YTVlcDksCisgICAgMHgxLmUyMWZmMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMHgxLmQzNDRlMTBlOGJjZWEwMGFjNDg0NGEzNDQ4YmU5YTVlcDksCisgICAgLTB4MS5lMjFmZjBwMgorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIDB4MS4wMWRiYWJmZmZmZmRjODkwOTkyMTAxZTllMDIzMDE3N3AwLAorICAgIDB4MS5lZDM0MmFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuMDFkYmFiZmZmZmZkYzg5MDk5MjEwMWU5ZTAyMzAxNzdwMCwKKyAgICAtMHgxLmVkMzQyYXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS43NWNhYTcwMmFjMzFmY2FjYTcwM2NiNzY3ZTcwNDczMnAyMSwKKyAgICAweDEuZjQxNjlhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAweDEuNzVjYWE3MDJhYzMxZmNhY2E3MDNjYjc2N2U3MDQ3MzJwMjEsCisgICAgLTB4MS5mNDE2OWFwMworICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS4yZDExY2VmZmE3M2Q2MDNlY2E5NjFlMDdmYmNkMDc0OXA4OSwKKyAgICAweDEuZjQ1ZHA1CisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLjJkMTFjZWZmYTczZDYwM2VjYTk2MWUwN2ZiY2QwNzQ5cDg5LAorICAgIC0weDEuZjQ1ZHA1CisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLjAwMDAxZjAyMDA2MTNmNTRlMDE4ZWFjY2M3NjkwNjcxcDAsCisgICAgMHgxLmY3ZmZmZXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEuMDAwMDFmMDIwMDYxM2Y1NGUwMThlYWNjYzc2OTA2NzFwMCwKKyAgICAtMHgxLmY3ZmZmZXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuZmU4YmZkMzg3NjI0OTBjN2Y2OGU4MGE0YmRmM2ExN2RwODksCisgICAgMHgxLmY4OTZhMnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLmZlOGJmZDM4NzYyNDkwYzdmNjhlODBhNGJkZjNhMTdkcDg5LAorICAgIC0weDEuZjg5NmEycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuZDZjZmNhYzU3ZDZiYWFhMjlkZTU3YzkzZTU3NmFiYzVwMSwKKyAgICAweDEuZjlmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuZDZjZmNhYzU3ZDZiYWFhMjlkZTU3YzkzZTU3NmFiYzVwMSwKKyAgICAtMHgxLmY5ZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmRkYmZhMzBlNDc3MTcxOWUwN2MxZGE3OGMwOTcxYjQ2cDEsCisgICAgMHgxLmZkZTM3ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLmRkYmZhMzBlNDc3MTcxOWUwN2MxZGE3OGMwOTcxYjQ2cDEsCisgICAgLTB4MS5mZGUzN2VwMAorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS4wMDdmMGFmZjk5OTVhMzAwMGM3Yzk1MDk1YTA2ZjcxZHAwLAorICAgIDB4MS5mZGZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAweDEuMDA3ZjBhZmY5OTk1YTMwMDBjN2M5NTA5NWEwNmY3MWRwMCwKKyAgICAtMHgxLmZkZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS4yMDcxMzcwMDAxMDFlZjZhNjc1NmJlYjBlYTQ1Yjg1N3AwLAorICAgIDB4MS5mZTNiMmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAweDEuMjA3MTM3MDAwMTAxZWY2YTY3NTZiZWIwZWE0NWI4NTdwMCwKKyAgICAtMHgxLmZlM2IyZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS42ZjhmNTNjM2ViYWM2ZGZmZmU4YTliNmUwODhhYzA3ZnAxMCwKKyAgICAweDEuZmYxZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAweDEuNmY4ZjUzYzNlYmFjNmRmZmZlOGE5YjZlMDg4YWMwN2ZwMTAsCisgICAgLTB4MS5mZjFmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5iMjYxNzQxYzRmYjNmMTAzNmQ5Zjg0NWYzNTY0YWYyZHA0LAorICAgIDB4MS5mZjNmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIDB4MS5iMjYxNzQxYzRmYjNmMTAzNmQ5Zjg0NWYzNTY0YWYyZHA0LAorICAgIC0weDEuZmYzZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuM2Q1OWQyZDhiMjJiNDFjMmJiNjMzNGM5YmU3YmU5MDJwOTEsCisgICAgMHgxLmZmZGZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgMHgxLjNkNTlkMmQ4YjIyYjQxYzJiYjYzMzRjOWJlN2JlOTAycDkxLAorICAgIC0weDEuZmZkZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAweDEuZTE1NTlkMDM1ZWMxM2Y4MjkxM2FlZWI2MWZhYjIwZDRwMSwKKyAgICAweDEuZmZlMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLmUxNTU5ZDAzNWVjMTNmODI5MTNhZWViNjFmYWIyMGQ0cDEsCisgICAgLTB4MS5mZmUwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAweDEuMWYwNTA4ZTNjODI3OGZlMTBhMmU4YzkwMjBjODE3NmRwNDUsCisgICAgMHgxLmZmZmM3ZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgMHgxLjFmMDUwOGUzYzgyNzhmZTEwYTJlOGM5MDIwYzgxNzZkcDQ1LAorICAgIC0weDEuZmZmYzdlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuMGYxM2ZlZmZmZjhlMTRlNzIzOThlNThkNjI1OGExZGNwMjIsCisgICAgMHgxLmZmZmNkOHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgMHgxLjBmMTNmZWZmZmY4ZTE0ZTcyMzk4ZTU4ZDYyNThhMWRjcDIyLAorICAgIC0weDEuZmZmY2Q4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEuZTE4ZGNkMDJiMjAyNDEzYTRhNzYwMzdlZmU3MTZmZWVwMSwKKyAgICAweDEuZmZmZWZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEuZTE4ZGNkMDJiMjAyNDEzYTRhNzYwMzdlZmU3MTZmZWVwMSwKKyAgICAtMHgxLmZmZmVmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLjFmMzY2MWZlZDg4N2UxZWE2YjFjNDljODZlNjJjNjVjcDQ1LAorICAgIDB4MS5mZmZmM2VwNAorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDB4MS4xZjM2NjFmZWQ4ODdlMWVhNmIxYzQ5Yzg2ZTYyYzY1Y3A0NSwKKyAgICAtMHgxLmZmZmYzZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjIwYWMxNGZmOTQ2MTlkYjRkMmU0MGFmMWNmMTE4ZjUwcDAsCisgICAgMHgxLmZmZmZlNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS4yMGFjMTRmZjk0NjE5ZGI0ZDJlNDBhZjFjZjExOGY1MHAwLAorICAgIC0weDEuZmZmZmU2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLjAwMDAwMWZmZmZmOGFhYWFhZDZjMTZkMDVjYTViYTQycDAsCisgICAgMHgxLmZmZmZmY3AtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEuMDAwMDAxZmZmZmY4YWFhYWFkNmMxNmQwNWNhNWJhNDJwMCwKKyAgICAtMHgxLmZmZmZmY3AtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuMWM3NGE2ZmZmZjI3MDM3YWVkODliZTc5OWFlODdkODlwMCwKKyAgICAweDEuZGU3MzE0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLjFjNzRhNmZmZmYyNzAzN2FlZDg5YmU3OTlhZTg3ZDg5cDAsCisgICAgLTB4MS5kZTczMTRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEucDAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMHgxLjAwYTc0MTM5NjRkZGRmNjI5NjY5YzM1MDBmNzA4NDU5cDAsCisgICAgMHgxLjI0OTI0YXAtNAorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS4wMGE3NDEzOTY0ZGRkZjYyOTY2OWMzNTAwZjcwODQ1OXAwLAorICAgIC0weDEuMjQ5MjRhcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLjAyOWRkZjcxZTY3NzE0YWFiYWRlY2I2YzM0ODgxNDY2cDAsCisgICAgMHgxLjI0OTI0YXAtMworICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS4wMjlkZGY3MWU2NzcxNGFhYmFkZWNiNmMzNDg4MTQ2NnAwLAorICAgIC0weDEuMjQ5MjRhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLjA1ZTY2YjcyZjkyMGNhNTM0ZTFkYWEwYjg2YTRlN2VicDAsCisgICAgMHgxLmI2ZGI3MHAtMworICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS4wNWU2NmI3MmY5MjBjYTUzNGUxZGFhMGI4NmE0ZTdlYnAwLAorICAgIC0weDEuYjZkYjcwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgMHgxLjBhODUyZjdhZDI4OGFiZDA2OTVjNTAzNzc3YmMwMTk1cDAsCisgICAgMHgxLjI0OTI0YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS4wYTg1MmY3YWQyODhhYmQwNjk1YzUwMzc3N2JjMDE5NXAwLAorICAgIC0weDEuMjQ5MjRhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLjEwODAzNTEwZmUzNmEzZjdjODQyYWI2YTc1YzhiMDA2cDAsCisgICAgMHgxLjZkYjZkY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS4xMDgwMzUxMGZlMzZhM2Y3Yzg0MmFiNmE3NWM4YjAwNnAwLAorICAgIC0weDEuNmRiNmRjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLjE3ZGY0Y2MyZDIxMDAwMTkwYjUzODNiNmJlY2Q3YmVjcDAsCisgICAgMHgxLmI2ZGI2ZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS4xN2RmNGNjMmQyMTAwMDE5MGI1MzgzYjZiZWNkN2JlY3AwLAorICAgIC0weDEuYjZkYjZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMHgxLjIwYWMxODYyYWU4ZDA2NDU4MjNhNGYwNjA4MDBlODhjcDAsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS4yMGFjMTg2MmFlOGQwNjQ1ODIzYTRmMDYwODAwZTg4Y3AwLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLjIwYWMxODYyYWU4ZDA2NDU4MjNhNGYwNjA4MDBlODhjcDAsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS4yMGFjMTg2MmFlOGQwNjQ1ODIzYTRmMDYwODAwZTg4Y3AwLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLjJhZjIxN2ViMzdlMjM2OTY1MDAwMzk5N2JiMDJkNzJjcDAsCisgICAgMHgxLjI0OTI0YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS4yYWYyMTdlYjM3ZTIzNjk2NTAwMDM5OTdiYjAyZDcyY3AwLAorICAgIC0weDEuMjQ5MjRhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgMHgxLjM2YmViN2IzZjhmMjM3ZTQ4ZWZjZGE3ZmJhODVkZWY1cDAsCisgICAgMHgxLjQ5MjQ5NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS4zNmJlYjdiM2Y4ZjIzN2U0OGVmY2RhN2ZiYTg1ZGVmNXAwLAorICAgIC0weDEuNDkyNDk0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLjQ0MjE2MmI5M2YyZDQ5NjdiMmJhYzg3ZDk4ODk5OGNhcDAsCisgICAgMHgxLjZkYjZkZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS40NDIxNjJiOTNmMmQ0OTY3YjJiYWM4N2Q5ODg5OThjYXAwLAorICAgIC0weDEuNmRiNmRlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLjUzMmI5Njg4ZmU4NDc0OWQ3MWE5NjI3OTM0ZDAwYTA1cDAsCisgICAgMHgxLjkyNDkyOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIDB4MS41MzJiOTY4OGZlODQ3NDlkNzFhOTYyNzkzNGQwMGEwNXAwLAorICAgIC0weDEuOTI0OTI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgMHgxLjYzZjBmYTFkOGIyN2FiZjc5MjhhODM1MzhmMWZiNDAycDAsCisgICAgMHgxLmI2ZGI3MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS42M2YwZmExZDhiMjdhYmY3OTI4YTgzNTM4ZjFmYjQwMnAwLAorICAgIC0weDEuYjZkYjcycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLjc2ODc3NzhiNzhjODU3MWZiZDVmNDE2NWZjMDUyYWVmcDAsCisgICAgMHgxLmRiNmRiY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDB4MS43Njg3Nzc4Yjc4Yzg1NzFmYmQ1ZjQxNjVmYzA1MmFlZnAwLAorICAgIC0weDEuZGI2ZGJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgMHgxLjhiMDc1NTFkOWY1NTA0YzJiZDI4MTAwMTk2YTRmNjZhcDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLjhiMDc1NTFkOWY1NTA0YzJiZDI4MTAwMTk2YTRmNjZhcDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS5wMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuMDAwOWExNDhhNGEzNjMxN2I3NjhmYTE4MGQzYjdlYjNwMCwKKyAgICAweDEuMThkZTVhcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLjAwMDlhMTQ4YTRhMzYzMTdiNzY4ZmExODBkM2I3ZWIzcDAsCisgICAgLTB4MS4xOGRlNWFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuMDAyNjg1ZGMwYmZkOWFiZGRkZDQ1NWIxM2VhODg3ZDlwMCwKKyAgICAweDEuMThkZTVhcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLjAwMjY4NWRjMGJmZDlhYmRkZGQ0NTViMTNlYTg4N2Q5cDAsCisgICAgLTB4MS4xOGRlNWFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEuMDA1NmFmZTcxOWIyNTUwMzhlNTU5ZTM5NGNmNGI3OWVwMCwKKyAgICAweDEuYTU0ZDg4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLjAwNTZhZmU3MTliMjU1MDM4ZTU1OWUzOTRjZjRiNzllcDAsCisgICAgLTB4MS5hNTRkODhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuMDA5YTIzMDgzNjlhNGNiZjk2ODMxNzhlYmI5ZDljNzlwMCwKKyAgICAweDEuMThkZTVhcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLjAwOWEyMzA4MzY5YTRjYmY5NjgzMTc4ZWJiOWQ5Yzc5cDAsCisgICAgLTB4MS4xOGRlNWFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEuMDBmMGU0NTMwNDg0NmQzYTliNjUxODEwYjQwZmYzNjNwMCwKKyAgICAweDEuNWYxNWYwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMHgxLjAwZjBlNDUzMDQ4NDZkM2E5YjY1MTgxMGI0MGZmMzYzcDAsCisgICAgLTB4MS41ZjE1ZjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuMDE1YWZhNGU2YWY3Y2M2NzE0NWI5NjY2MjgwMTVkNDFwMCwKKyAgICAweDEuYTU0ZDg2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjAxNWFmYTRlNmFmN2NjNjcxNDViOTY2NjI4MDE1ZDQxcDAsCisgICAgLTB4MS5hNTRkODZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEuMDFkODZjZjVhMTVmOGNkMzg5ODk0NzUyNmEzMjI0NjFwMCwKKyAgICAweDEuZWI4NTFjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLjAxZDg2Y2Y1YTE1ZjhjZDM4OTg5NDc1MjZhMzIyNDYxcDAsCisgICAgLTB4MS5lYjg1MWNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuMDFkODZjZjk3YWM2MzBmY2U3NGNkNWQ1MjQzYjNiMmZwMCwKKyAgICAweDEuZWI4NTFlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLjAxZDg2Y2Y5N2FjNjMwZmNlNzRjZDVkNTI0M2IzYjJmcDAsCisgICAgLTB4MS5lYjg1MWVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuMDIwNjhjZjExZTM0MWJlYTQ1ODRlOTI2YjliODdhNWNwMCwKKyAgICAweDEuMDE3NjdlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLjAyMDY4Y2YxMWUzNDFiZWE0NTg0ZTkyNmI5Yjg3YTVjcDAsCisgICAgLTB4MS4wMTc2N2VwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuMDIzNmQ1MGVhMTVmMjQ5NzRjNGYyZjc4NDY5NWY4ZjNwMCwKKyAgICAweDEuMGQyYTZjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLjAyMzZkNTBlYTE1ZjI0OTc0YzRmMmY3ODQ2OTVmOGYzcDAsCisgICAgLTB4MS4wZDJhNmNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuMDI2OTQ1YmQyZmMzMTRhYTUzOWJkMmIwYTEzNDRlNmFwMCwKKyAgICAweDEuMThkZTVhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgMHgxLjAyNjk0NWJkMmZjMzE0YWE1MzliZDJiMGExMzQ0ZTZhcDAsCisgICAgLTB4MS4xOGRlNWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuMDI5ZGRmNjhiOWVjYWI5N2E1NDMxNDBhYjdiYzE5NmFwMCwKKyAgICAweDEuMjQ5MjQ4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgMHgxLjAyOWRkZjY4YjllY2FiOTdhNTQzMTQwYWI3YmMxOTZhcDAsCisgICAgLTB4MS4yNDkyNDhwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuMDJkNGEyODFjZmM3NDMzNzZmNjlmOGI5YjAxNjdhNWVwMCwKKyAgICAweDEuMzA0NjM2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLjAyZDRhMjgxY2ZjNzQzMzc2ZjY5ZjhiOWIwMTY3YTVlcDAsCisgICAgLTB4MS4zMDQ2MzZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEuMDMwZDhmN2RhMThkYjA4NjRmNDc4MzAwZTc4MGE5NTFwMCwKKyAgICAweDEuM2JmYTI0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLjAzMGQ4ZjdkYTE4ZGIwODY0ZjQ3ODMwMGU3ODBhOTUxcDAsCisgICAgLTB4MS4zYmZhMjRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuMDM0OGE2ZDYwMGM1MGFjNGFiODMyZTQ3NDEyMWU4YjFwMCwKKyAgICAweDEuNDdhZTEycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLjAzNDhhNmQ2MDBjNTBhYzRhYjgzMmU0NzQxMjFlOGIxcDAsCisgICAgLTB4MS40N2FlMTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuMDM0OGE2ZTA0OTY4OWQzMGIyZDIwYjAxMzVmM2ZlZTRwMCwKKyAgICAweDEuNDdhZTE0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjAzNDhhNmUwNDk2ODlkMzBiMmQyMGIwMTM1ZjNmZWU0cDAsCisgICAgLTB4MS40N2FlMTRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuMGExOWQ2ZGZkNDJiOWViZDU3M2RlMmJkZWZmMzM2MmVwMCwKKyAgICAweDEuMWViODUycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLjBhMTlkNmRmZDQyYjllYmQ1NzNkZTJiZGVmZjMzNjJlcDAsCisgICAgLTB4MS4xZWI4NTJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuMTRjMTI4YmMyYmFhYzNmNGY4M2YxNmI0M2ZjNjkzMjRwMCwKKyAgICAweDEuOTk5OTlhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLjE0YzEyOGJjMmJhYWMzZjRmODNmMTZiNDNmYzY5MzI0cDAsCisgICAgLTB4MS45OTk5OWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAweDEuMjM2NWVlM2ZkNTdjOTk4NjQwYTM3OTY5NjdiNmMwMjJwMCwKKyAgICAweDEuMGEzZDcwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjIzNjVlZTNmZDU3Yzk5ODY0MGEzNzk2OTY3YjZjMDIycDAsCisgICAgLTB4MS4wYTNkNzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEuMzYzZTMzZjU1NjU5OThmMWI1MjIxNzczZjAzZWVhOGJwMCwKKyAgICAweDEuNDdhZTE0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMHgxLjM2M2UzM2Y1NTY1OTk4ZjFiNTIyMTc3M2YwM2VlYThicDAsCisgICAgLTB4MS40N2FlMTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuNGQ4Zjg3MzRlZWI0M2M2ODYyMzlmYzM5MzBiZmJhMTdwMCwKKyAgICAweDEuODUxZWI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgMHgxLjRkOGY4NzM0ZWViNDNjNjg2MjM5ZmMzOTMwYmZiYTE3cDAsCisgICAgLTB4MS44NTFlYjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuNjlhZmY3YmM1ZDYwMTA4YjM0OGVkMzhiODAzZWI0NDVwMCwKKyAgICAweDEuYzI4ZjVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgMHgxLjY5YWZmN2JjNWQ2MDEwOGIzNDhlZDM4YjgwM2ViNDQ1cDAsCisgICAgLTB4MS5jMjhmNWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuOGIwNzU1MWQ5ZjU1MDRjMmJkMjgxMDAxOTZhNGY2NmFwMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAweDEuOGIwNzU1MWQ5ZjU1MDRjMmJkMjgxMDAxOTZhNGY2NmFwMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLjhiMDc1NTFkOWY1NTA0YzJiZDI4MTAwMTk2YTRmNjZhcDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgMHgxLjhiMDc1NTFkOWY1NTA0YzJiZDI4MTAwMTk2YTRmNjZhcDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS45Njk1M2U1ZjE1YmViYjA5MjRkOTVlNTZlNzMzOTBkM3AzLAorICAgIDB4MS45ZGU4MjZwMQorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIDB4MS45Njk1M2U1ZjE1YmViYjA5MjRkOTVlNTZlNzMzOTBkM3AzLAorICAgIC0weDEuOWRlODI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEuZDlhNTQxZDY0NTkzOTExNjExOTU5NDQwZWJiOThmZDJwNiwKKyAgICAweDEuNWRlODI2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuZDlhNTQxZDY0NTkzOTExNjExOTU5NDQwZWJiOThmZDJwNiwKKyAgICAtMHgxLjVkZTgyNnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMHgxLjE0NGRhZjczYjA1NTY3YThhYjBhZWMwNjM1OTY4N2JhcDEwLAorICAgIDB4MS5lY2RjMzhwMgorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS4xNDRkYWY3M2IwNTU2N2E4YWIwYWVjMDYzNTk2ODdiYXAxMCwKKyAgICAtMHgxLmVjZGMzOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgMHgxLjQyNWYyYTU4MTlkOTc0YjRmOTE4MGE2MjExMGQ0OGNicDEzLAorICAgIDB4MS4zZGU4MjZwMworICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIDB4MS40MjVmMmE1ODE5ZDk3NGI0ZjkxODBhNjIxMTBkNDhjYnAxMywKKyAgICAtMHgxLjNkZTgyNnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLjc4MWYwMDFiZDNlMzUwNjU2YjA1NzM2OGE0MzEzODIycDE2LAorICAgIDB4MS44NTYyMzBwMworICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIDB4MS43ODFmMDAxYmQzZTM1MDY1NmIwNTczNjhhNDMxMzgyMnAxNiwKKyAgICAtMHgxLjg1NjIzMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMHgxLmI2ZDUwNmM1OWViNzZkNjI3NDE1YTZjOWVlNDgwYjRmcDE5LAorICAgIDB4MS5jY2RjM2FwMworICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIDB4MS5iNmQ1MDZjNTllYjc2ZDYyNzQxNWE2YzllZTQ4MGI0ZnAxOSwKKyAgICAtMHgxLmNjZGMzYXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgMHgxLmZmZmZjMTg4YWNlYWIxMTEyNGZlOWEwMmI5MjhmN2Q4cDIyLAorICAgIDB4MS4wYTJiMjJwNAorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIDB4MS5mZmZmYzE4OGFjZWFiMTExMjRmZTlhMDJiOTI4ZjdkOHAyMiwKKyAgICAtMHgxLjBhMmIyMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgMHgxLmZmZmZjMTA3YzlmMDkzODE5ZTc2ZTM3YzA4NTEwZjdjcDE0LAorICAgIDB4MS42MmU0MmNwMworICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIDB4MS5mZmZmYzEwN2M5ZjA5MzgxOWU3NmUzN2MwODUxMGY3Y3AxNCwKKyAgICAtMHgxLjYyZTQyY3AzCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMHgxLmZmZmZlMTA3YzcwMGQwMDY3OTA5NzBhODIyMmUyMWQ4cDE0LAorICAgIDB4MS42MmU0MmVwMworICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIDB4MS5mZmZmZTEwN2M3MDBkMDA2NzkwOTcwYTgyMjJlMjFkOHAxNCwKKyAgICAtMHgxLjYyZTQyZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgMHgxLjAwMDAwMDgzZTMwODg2MzYyZGIxOTRhNzc1NGQxYzczcDE1LAorICAgIDB4MS42MmU0MzBwMworICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS4wMDAwMDA4M2UzMDg4NjM2MmRiMTk0YTc3NTRkMWM3M3AxNSwKKyAgICAtMHgxLjYyZTQzMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLjAwMDBmMDQxODFiZWIyZGMwZGEzMjMwZWJhMWRkYWQ4cDcsCisgICAgMHgxLjYyZTQyY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgMHgxLjAwMDBmMDQxODFiZWIyZGMwZGEzMjMwZWJhMWRkYWQ4cDcsCisgICAgLTB4MS42MmU0MmNwMgorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS4wMDAwZjg0MTc5NjBiZTBjNzdjZmJhZDJlZmY3NjIwMXA3LAorICAgIDB4MS42MmU0MmVwMgorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIDB4MS4wMDAwZjg0MTc5NjBiZTBjNzdjZmJhZDJlZmY3NjIwMXA3LAorICAgIC0weDEuNjJlNDJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuMDAwMTAwNDE3MTQyYzk3YWYyNWFhYzFiZmY4ZjM0NjZwNywKKyAgICAweDEuNjJlNDMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAweDEuMDAwMTAwNDE3MTQyYzk3YWYyNWFhYzFiZmY4ZjM0NjZwNywKKyAgICAtMHgxLjYyZTQzMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgMHgxLjAwZmZmODI4OTgyODcyODRkMjA5YzI2MzlhZWNkOGVicDMsCisgICAgMHgxLjYyZTQyY3AxCisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgMHgxLjAwZmZmODI4OTgyODcyODRkMjA5YzI2MzlhZWNkOGVicDMsCisgICAgLTB4MS42MmU0MmNwMQorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS4wMGZmZmMyNDk4MTBkZGViMDRkMTdlOWZhNzFjYzUxNHAzLAorICAgIDB4MS42MmU0MmVwMQorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIDB4MS4wMGZmZmMyNDk4MTBkZGViMDRkMTdlOWZhNzFjYzUxNHAzLAorICAgIC0weDEuNjJlNDJlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAweDEuMDEwMDAwMjA5ODA5NTk1MGY5ZTJiYmZlZmNhNzU2YjZwMywKKyAgICAweDEuNjJlNDMwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEuMDEwMDAwMjA5ODA5NTk1MGY5ZTJiYmZlZmNhNzU2YjZwMywKKyAgICAtMHgxLjYyZTQzMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgMHgxLjBmZmZmYzRmNTZhMzM2ZTM3MzlmN2U3MGIwYTE3ZmZjcDEsCisgICAgMHgxLjYyZTQyY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLjBmZmZmYzRmNTZhMzM2ZTM3MzlmN2U3MGIwYTE3ZmZjcDEsCisgICAgLTB4MS42MmU0MmNwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIDB4MS4wZmZmZmUyZjU2OWNmOWE3Y2EzZjU3OWQ2MGE1YmFmYXAxLAorICAgIDB4MS42MmU0MmVwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIDB4MS4wZmZmZmUyZjU2OWNmOWE3Y2EzZjU3OWQ2MGE1YmFmYXAxLAorICAgIC0weDEuNjJlNDJlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAweDEuMTAwMDAwMGY1NjlhZmM2YzE5OWM4YjNmNjFmM2M3MzVwMSwKKyAgICAweDEuNjJlNDMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAweDEuMTAwMDAwMGY1NjlhZmM2YzE5OWM4YjNmNjFmM2M3MzVwMSwKKyAgICAtMHgxLjYyZTQzMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgMHgxLjNmZmZmZTg2MjJhNmQwNzU4MTZjMjU1OWRlMzFhMTJlcDAsCisgICAgMHgxLjYyZTQyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIDB4MS4zZmZmZmU4NjIyYTZkMDc1ODE2YzI1NTlkZTMxYTEyZXAwLAorICAgIC0weDEuNjJlNDJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLjNmZmZmZjQ2MjJhNGZhYWYzZWVhZjNiZTcxNTVhOTNjcDAsCisgICAgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIDB4MS4zZmZmZmY0NjIyYTRmYWFmM2VlYWYzYmU3MTU1YTkzY3AwLAorICAgIC0weDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgMHgxLjQwMDAwMDA2MjJhNDY0ZThmYmFmZTRjODE5ZDM5YWNmcDAsCisgICAgMHgxLjYyZTQzMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIDB4MS40MDAwMDAwNjIyYTQ2NGU4ZmJhZmU0YzgxOWQzOWFjZnAwLAorICAgIC0weDEuNjJlNDMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgMHgxLjBmODc2Yzc0ZTY4OGIzOGVjOGNjOTkzYmVkNzJjMzY5cDAsCisgICAgMHgxLjYyZTQyY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIDB4MS4wZjg3NmM3NGU2ODhiMzhlYzhjYzk5M2JlZDcyYzM2OXAwLAorICAgIC0weDEuNjJlNDJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMHgxLjBmODc2Y2EyMjdjNTFjZTVjNWYyMWU0ODQwZDY0NzVhcDAsCisgICAgMHgxLjYyZTQyZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIDB4MS4wZjg3NmNhMjI3YzUxY2U1YzVmMjFlNDg0MGQ2NDc1YXAwLAorICAgIC0weDEuNjJlNDJlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzQyCisgICAgMHgxLjBmODc2Y2NmNjkwMWNhMWU5ZTQwMmQ0NWRjZGQ0NmFmcDAsCisgICAgMHgxLjYyZTQzMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIDB4MS4wZjg3NmNjZjY5MDFjYTFlOWU0MDJkNDVkY2RkNDZhZnAwLAorICAgIC0weDEuNjJlNDMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgMHgxLjAzZGE2ZWExMDk3YzNmOWNkNTdlN2I2NWJjOTJlY2M0cDAsCisgICAgMHgxLjYyZTQyY3AtMworICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIDB4MS4wM2RhNmVhMTA5N2MzZjljZDU3ZTdiNjViYzkyZWNjNHAwLAorICAgIC0weDEuNjJlNDJjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMHgxLjAzZGE2ZWFjMmVkOGEyY2RkMGZhODdhNTAzMTFjYzVkcDAsCisgICAgMHgxLjYyZTQyZXAtMworICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIDB4MS4wM2RhNmVhYzJlZDhhMmNkZDBmYTg3YTUwMzExY2M1ZHAwLAorICAgIC0weDEuNjJlNDJlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgMHgxLjAzZGE2ZWI3NTQzNTE2M2M3MzYxNTZkMWQzZDMzMDhlcDAsCisgICAgMHgxLjYyZTQzMHAtMworICB9LAorICB7IC8vIEVudHJ5IDM0OQorICAgIDB4MS4wM2RhNmViNzU0MzUxNjNjNzM2MTU2ZDFkM2QzMzA4ZXAwLAorICAgIC0weDEuNjJlNDMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzUwCisgICAgMHgxLjAwZjYyNTUyNjI3YmY3NGEwYWQ0YmE3N2U4YWI3OGEycDAsCisgICAgMHgxLjYyZTQyY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIDB4MS4wMGY2MjU1MjYyN2JmNzRhMGFkNGJhNzdlOGFiNzhhMnAwLAorICAgIC0weDEuNjJlNDJjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLjAwZjYyNTU1MjkyN2JmNjQ5ZDY0NmI4NTFiZTUwMDE2cDAsCisgICAgMHgxLjYyZTQyZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIDB4MS4wMGY2MjU1NTI5MjdiZjY0OWQ2NDZiODUxYmU1MDAxNnAwLAorICAgIC0weDEuNjJlNDJlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgMHgxLjAwZjYyNTU3ZWZkMzhiODMwODg5NzEzNmVlMWQ3MDllcDAsCisgICAgMHgxLjYyZTQzMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIDB4MS4wMGY2MjU1N2VmZDM4YjgzMDg4OTcxMzZlZTFkNzA5ZXAwLAorICAgIC0weDEuNjJlNDMwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgMHgxLjAwM2Q4MWYxMDEzNzUwOTVjYTU0ZTMyMTI4M2VmNzdicDAsCisgICAgMHgxLjYyZTQyY3AtNQorICB9LAorICB7IC8vIEVudHJ5IDM1NworICAgIDB4MS4wMDNkODFmMTAxMzc1MDk1Y2E1NGUzMjEyODNlZjc3YnAwLAorICAgIC0weDEuNjJlNDJjcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgMHgxLjAwM2Q4MWYxYjJiNzljZjEzZThhZjcyYmRjMWEzYTk2cDAsCisgICAgMHgxLjYyZTQyZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIDB4MS4wMDNkODFmMWIyYjc5Y2YxM2U4YWY3MmJkYzFhM2E5NnAwLAorICAgIC0weDEuNjJlNDJlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgMHgxLjAwM2Q4MWYyNjQzN2VhNGNmMDQyZmNlOTQ3OTI4NDRicDAsCisgICAgMHgxLjYyZTQzMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIDB4MS4wMDNkODFmMjY0MzdlYTRjZjA0MmZjZTk0NzkyODQ0YnAwLAorICAgIC0weDEuNjJlNDMwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgMHgxLjAwMGY2MDA2MGRmMGJkYmRiOTRhOWFhNjFkZmViOGU4cDAsCisgICAgMHgxLjYyZTQyY3AtNgorICB9LAorICB7IC8vIEVudHJ5IDM2MworICAgIDB4MS4wMDBmNjAwNjBkZjBiZGJkYjk0YTlhYTYxZGZlYjhlOHAwLAorICAgIC0weDEuNjJlNDJjcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzY0CisgICAgMHgxLjAwMGY2MDA2M2E0ZTI2Yjc1N2U3MmQ0OTM2YTEzNTk5cDAsCisgICAgMHgxLjYyZTQyZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIDB4MS4wMDBmNjAwNjNhNGUyNmI3NTdlNzJkNDkzNmExMzU5OXAwLAorICAgIC0weDEuNjJlNDJlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgMHgxLjAwMGY2MDA2NjZhYjhmZjBmYTViYzE3YWUyY2Q2MTc2cDAsCisgICAgMHgxLjYyZTQzMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIDB4MS4wMDBmNjAwNjY2YWI4ZmYwZmE1YmMxN2FlMmNkNjE3NnAwLAorICAgIC0weDEuNjJlNDMwcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzY4CisgICAgMHgxLjAwMDAwMTA1YzYxMTUwNWU3Zjc0YTMwZTZkMjBlODUwcDMxLAorICAgIC0weDEuNjJlNDMwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICAweDEuMDAwMDAxMDVjNjExNTA1ZTdmNzRhMzBlNmQyMGU4NTBwMzEsCisgICAgMHgxLjYyZTQzMHA0CisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLmZmZmZjMjBiOGZlMTJmMTIxNzQwZWE4YWNiOTU5NTI1cDMwLAorICAgIC0weDEuNjJlNDJlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICAweDEuZmZmZmMyMGI4ZmUxMmYxMjE3NDBlYThhY2I5NTk1MjVwMzAsCisgICAgMHgxLjYyZTQyZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMzcyCisgICAgMHgxLmZmZmY4MjBiOWI5ZmJjNmY1ZGRhYmU1ZjVkNTVjODMxcDMwLAorICAgIC0weDEuNjJlNDJjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzMKKyAgICAweDEuZmZmZjgyMGI5YjlmYmM2ZjVkZGFiZTVmNWQ1NWM4MzFwMzAsCisgICAgMHgxLjYyZTQyY3A0CisgIH0sCisgIHsgLy8gRW50cnkgMzc0CisgICAgMHgxLjAwMDAwMDgzZTMwODg2MzYyZGIxOTRhNzc1NGQxYzczcDE1LAorICAgIC0weDEuNjJlNDMwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzUKKyAgICAweDEuMDAwMDAwODNlMzA4ODYzNjJkYjE5NGE3NzU0ZDFjNzNwMTUsCisgICAgMHgxLjYyZTQzMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgMHgxLmZmZmZlMTA3YzcwMGQwMDY3OTA5NzBhODIyMmUyMWQ4cDE0LAorICAgIC0weDEuNjJlNDJlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAweDEuZmZmZmUxMDdjNzAwZDAwNjc5MDk3MGE4MjIyZTIxZDhwMTQsCisgICAgMHgxLjYyZTQyZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzc4CisgICAgMHgxLmZmZmZjMTA3YzlmMDkzODE5ZTc2ZTM3YzA4NTEwZjdjcDE0LAorICAgIC0weDEuNjJlNDJjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAweDEuZmZmZmMxMDdjOWYwOTM4MTllNzZlMzdjMDg1MTBmN2NwMTQsCisgICAgMHgxLjYyZTQyY3AzCisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgMHgxLjAwMDEwMDQxNzE0MmM5N2FmMjVhYWMxYmZmOGYzNDY2cDcsCisgICAgLTB4MS42MmU0MzBwMgorICB9LAorICB7IC8vIEVudHJ5IDM4MQorICAgIDB4MS4wMDAxMDA0MTcxNDJjOTdhZjI1YWFjMWJmZjhmMzQ2NnA3LAorICAgIDB4MS42MmU0MzBwMgorICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIDB4MS4wMDAwZjg0MTc5NjBiZTBjNzdjZmJhZDJlZmY3NjIwMXA3LAorICAgIC0weDEuNjJlNDJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODMKKyAgICAweDEuMDAwMGY4NDE3OTYwYmUwYzc3Y2ZiYWQyZWZmNzYyMDFwNywKKyAgICAweDEuNjJlNDJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODQKKyAgICAweDEuMDAwMGYwNDE4MWJlYjJkYzBkYTMyMzBlYmExZGRhZDhwNywKKyAgICAtMHgxLjYyZTQyY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMzg1CisgICAgMHgxLjAwMDBmMDQxODFiZWIyZGMwZGEzMjMwZWJhMWRkYWQ4cDcsCisgICAgMHgxLjYyZTQyY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgMHgxLjAxMDAwMDIwOTgwOTU5NTBmOWUyYmJmZWZjYTc1NmI2cDMsCisgICAgLTB4MS42MmU0MzBwMQorICB9LAorICB7IC8vIEVudHJ5IDM4NworICAgIDB4MS4wMTAwMDAyMDk4MDk1OTUwZjllMmJiZmVmY2E3NTZiNnAzLAorICAgIDB4MS42MmU0MzBwMQorICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIDB4MS4wMGZmZmMyNDk4MTBkZGViMDRkMTdlOWZhNzFjYzUxNHAzLAorICAgIC0weDEuNjJlNDJlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAweDEuMDBmZmZjMjQ5ODEwZGRlYjA0ZDE3ZTlmYTcxY2M1MTRwMywKKyAgICAweDEuNjJlNDJlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTAKKyAgICAweDEuMDBmZmY4Mjg5ODI4NzI4NGQyMDljMjYzOWFlY2Q4ZWJwMywKKyAgICAtMHgxLjYyZTQyY3AxCisgIH0sCisgIHsgLy8gRW50cnkgMzkxCisgICAgMHgxLjAwZmZmODI4OTgyODcyODRkMjA5YzI2MzlhZWNkOGVicDMsCisgICAgMHgxLjYyZTQyY3AxCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgMHgxLjEwMDAwMDBmNTY5YWZjNmMxOTljOGIzZjYxZjNjNzM1cDEsCisgICAgLTB4MS42MmU0MzBwMAorICB9LAorICB7IC8vIEVudHJ5IDM5MworICAgIDB4MS4xMDAwMDAwZjU2OWFmYzZjMTk5YzhiM2Y2MWYzYzczNXAxLAorICAgIDB4MS42MmU0MzBwMAorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIDB4MS4wZmZmZmUyZjU2OWNmOWE3Y2EzZjU3OWQ2MGE1YmFmYXAxLAorICAgIC0weDEuNjJlNDJlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAweDEuMGZmZmZlMmY1NjljZjlhN2NhM2Y1NzlkNjBhNWJhZmFwMSwKKyAgICAweDEuNjJlNDJlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAweDEuMGZmZmZjNGY1NmEzMzZlMzczOWY3ZTcwYjBhMTdmZmNwMSwKKyAgICAtMHgxLjYyZTQyY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMzk3CisgICAgMHgxLjBmZmZmYzRmNTZhMzM2ZTM3MzlmN2U3MGIwYTE3ZmZjcDEsCisgICAgMHgxLjYyZTQyY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMHgxLjQwMDAwMDA2MjJhNDY0ZThmYmFmZTRjODE5ZDM5YWNmcDAsCisgICAgLTB4MS42MmU0MzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTkKKyAgICAweDEuNDAwMDAwMDYyMmE0NjRlOGZiYWZlNGM4MTlkMzlhY2ZwMCwKKyAgICAweDEuNjJlNDMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLjNmZmZmZjQ2MjJhNGZhYWYzZWVhZjNiZTcxNTVhOTNjcDAsCisgICAgLTB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAweDEuM2ZmZmZmNDYyMmE0ZmFhZjNlZWFmM2JlNzE1NWE5M2NwMCwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgMHgxLjNmZmZmZTg2MjJhNmQwNzU4MTZjMjU1OWRlMzFhMTJlcDAsCisgICAgLTB4MS42MmU0MmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAweDEuM2ZmZmZlODYyMmE2ZDA3NTgxNmMyNTU5ZGUzMWExMmVwMCwKKyAgICAweDEuNjJlNDJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA0CisgICAgMHgxLjBmODc2Y2NmNjkwMWNhMWU5ZTQwMmQ0NWRjZGQ0NmFmcDAsCisgICAgLTB4MS42MmU0MzBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAweDEuMGY4NzZjY2Y2OTAxY2ExZTllNDAyZDQ1ZGNkZDQ2YWZwMCwKKyAgICAweDEuNjJlNDMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgMHgxLjBmODc2Y2EyMjdjNTFjZTVjNWYyMWU0ODQwZDY0NzVhcDAsCisgICAgLTB4MS42MmU0MmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICAweDEuMGY4NzZjYTIyN2M1MWNlNWM1ZjIxZTQ4NDBkNjQ3NWFwMCwKKyAgICAweDEuNjJlNDJlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDA4CisgICAgMHgxLjBmODc2Yzc0ZTY4OGIzOGVjOGNjOTkzYmVkNzJjMzY5cDAsCisgICAgLTB4MS42MmU0MmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAweDEuMGY4NzZjNzRlNjg4YjM4ZWM4Y2M5OTNiZWQ3MmMzNjlwMCwKKyAgICAweDEuNjJlNDJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDEwCisgICAgMHgxLjAzZGE2ZWI3NTQzNTE2M2M3MzYxNTZkMWQzZDMzMDhlcDAsCisgICAgLTB4MS42MmU0MzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTEKKyAgICAweDEuMDNkYTZlYjc1NDM1MTYzYzczNjE1NmQxZDNkMzMwOGVwMCwKKyAgICAweDEuNjJlNDMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMHgxLjAzZGE2ZWFjMmVkOGEyY2RkMGZhODdhNTAzMTFjYzVkcDAsCisgICAgLTB4MS42MmU0MmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTMKKyAgICAweDEuMDNkYTZlYWMyZWQ4YTJjZGQwZmE4N2E1MDMxMWNjNWRwMCwKKyAgICAweDEuNjJlNDJlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgMHgxLjAzZGE2ZWExMDk3YzNmOWNkNTdlN2I2NWJjOTJlY2M0cDAsCisgICAgLTB4MS42MmU0MmNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTUKKyAgICAweDEuMDNkYTZlYTEwOTdjM2Y5Y2Q1N2U3YjY1YmM5MmVjYzRwMCwKKyAgICAweDEuNjJlNDJjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDE2CisgICAgMHgxLjAwZjYyNTU3ZWZkMzhiODMwODg5NzEzNmVlMWQ3MDllcDAsCisgICAgLTB4MS42MmU0MzBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAweDEuMDBmNjI1NTdlZmQzOGI4MzA4ODk3MTM2ZWUxZDcwOWVwMCwKKyAgICAweDEuNjJlNDMwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgMHgxLjAwZjYyNTU1MjkyN2JmNjQ5ZDY0NmI4NTFiZTUwMDE2cDAsCisgICAgLTB4MS42MmU0MmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTkKKyAgICAweDEuMDBmNjI1NTUyOTI3YmY2NDlkNjQ2Yjg1MWJlNTAwMTZwMCwKKyAgICAweDEuNjJlNDJlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgMHgxLjAwZjYyNTUyNjI3YmY3NGEwYWQ0YmE3N2U4YWI3OGEycDAsCisgICAgLTB4MS42MmU0MmNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjEKKyAgICAweDEuMDBmNjI1NTI2MjdiZjc0YTBhZDRiYTc3ZThhYjc4YTJwMCwKKyAgICAweDEuNjJlNDJjcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDIyCisgICAgMHgxLjAwM2Q4MWYyNjQzN2VhNGNmMDQyZmNlOTQ3OTI4NDRicDAsCisgICAgLTB4MS42MmU0MzBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAweDEuMDAzZDgxZjI2NDM3ZWE0Y2YwNDJmY2U5NDc5Mjg0NGJwMCwKKyAgICAweDEuNjJlNDMwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgMHgxLjAwM2Q4MWYxYjJiNzljZjEzZThhZjcyYmRjMWEzYTk2cDAsCisgICAgLTB4MS42MmU0MmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAweDEuMDAzZDgxZjFiMmI3OWNmMTNlOGFmNzJiZGMxYTNhOTZwMCwKKyAgICAweDEuNjJlNDJlcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDI2CisgICAgMHgxLjAwM2Q4MWYxMDEzNzUwOTVjYTU0ZTMyMTI4M2VmNzdicDAsCisgICAgLTB4MS42MmU0MmNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAweDEuMDAzZDgxZjEwMTM3NTA5NWNhNTRlMzIxMjgzZWY3N2JwMCwKKyAgICAweDEuNjJlNDJjcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDI4CisgICAgMHgxLnAwLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEucDAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDMwCisgICAgMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQzMQorICAgIDB4MS5wMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzIKKyAgICAweDEucDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQzMworICAgIDB4MS4wMWQ4NmNmNWExNWY4Y2QzODk4OTQ3NTI2YTMyMjQ2MXAwLAorICAgIDB4MS5lYjg1MWNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzQKKyAgICAweDEuMDFkODZjZjVhMTVmOGNkMzg5ODk0NzUyNmEzMjI0NjFwMCwKKyAgICAtMHgxLmViODUxY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDQzNQorICAgIDB4MS4wMWQ4NmNmOTdhYzYzMGZjZTc0Y2Q1ZDUyNDNiM2IyZnAwLAorICAgIDB4MS5lYjg1MWVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzYKKyAgICAweDEuMDFkODZjZjk3YWM2MzBmY2U3NGNkNWQ1MjQzYjNiMmZwMCwKKyAgICAtMHgxLmViODUxZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDQzNworICAgIDB4MS4wMWQ4NmNmZDU0MmNkOTJkYTZjNDRhNDJmNzA5OWQ2NXAwLAorICAgIDB4MS5lYjg1MjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzgKKyAgICAweDEuMDFkODZjZmQ1NDJjZDkyZGE2YzQ0YTQyZjcwOTlkNjVwMCwKKyAgICAtMHgxLmViODUyMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQzOQorICAgIDB4MS4yMGFjMTgxZmZiNGNlYWMyMTZlOGI0ODljNDhkZDNkZnAwLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuMjBhYzE4MWZmYjRjZWFjMjE2ZThiNDg5YzQ4ZGQzZGZwMCwKKyAgICAtMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ0MQorICAgIDB4MS4yMGFjMTg2MmFlOGQwNjQ1ODIzYTRmMDYwODAwZTg4Y3AwLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDIKKyAgICAweDEuMjBhYzE4NjJhZThkMDY0NTgyM2E0ZjA2MDgwMGU4OGNwMCwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0MworICAgIDB4MS4yMGFjMThlODE1MGUxNWNkNmIzODMzYjg3MTA5ODA0ZnAwLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDQKKyAgICAweDEuMjBhYzE4ZTgxNTBlMTVjZDZiMzgzM2I4NzEwOTgwNGZwMCwKKyAgICAtMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0NQorICAgIDB4MS44YjA3NTNmMGM1NTk4NTVhY2Y1ZjEzNTUyYTBjMzU3YnAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDYKKyAgICAweDEuOGIwNzUzZjBjNTU5ODU1YWNmNWYxMzU1MmEwYzM1N2JwMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0NworICAgIDB4MS44YjA3NTUxZDlmNTUwNGMyYmQyODEwMDE5NmE0ZjY2YXAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIDB4MS44YjA3NTUxZDlmNTUwNGMyYmQyODEwMDE5NmE0ZjY2YXAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDkKKyAgICAweDEuOGIwNzU3Nzc1MzUwYTRhODk5M2ZjMTU2ZWI0ZmM4MDhwMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTAKKyAgICAweDEuOGIwNzU3Nzc1MzUwYTRhODk5M2ZjMTU2ZWI0ZmM4MDhwMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgMHgxLmFiNWFhNjMwZWI0MzI1NDViNTRjZGFmN2Y0NTUyMTBjcDMwLAorICAgIDB4MS41ZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDQ1MgorICAgIDB4MS5hYjVhYTYzMGViNDMyNTQ1YjU0Y2RhZjdmNDU1MjEwY3AzMCwKKyAgICAtMHgxLjVmZmZmZXA0CisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgMHgxLmFiNWFkYjljNDM1ZmY4MWUxOGFmY2EzNzI4MjhhNjc2cDMwLAorICAgIDB4MS42MHA0CisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgMHgxLmFiNWFkYjljNDM1ZmY4MWUxOGFmY2EzNzI4MjhhNjc2cDMwLAorICAgIC0weDEuNjBwNAorICB9LAorICB7IC8vIEVudHJ5IDQ1NQorICAgIDB4MS5hYjViMTEwN2EyMmEzNjY0ZWQyMjczMjU0ZTg0OWE4MXAzMCwKKyAgICAweDEuNjAwMDAycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAweDEuYWI1YjExMDdhMjJhMzY2NGVkMjI3MzI1NGU4NDlhODFwMzAsCisgICAgLTB4MS42MDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIDB4MS4yMjZhY2VlZGMzYjk3YzJhN2VhYzk1ZTc1NjJiZTI2M3AzMiwKKyAgICAweDEuNmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTgKKyAgICAweDEuMjI2YWNlZWRjM2I5N2MyYTdlYWM5NWU3NTYyYmUyNjNwMzIsCisgICAgLTB4MS42ZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDQ1OQorICAgIDB4MS4yMjZhZjMzYjFmZGMwYTU3YmQ0YjRhYjIzMTFiNWNkZnAzMiwKKyAgICAweDEuNzBwNAorICB9LAorICB7IC8vIEVudHJ5IDQ2MAorICAgIDB4MS4yMjZhZjMzYjFmZGMwYTU3YmQ0YjRhYjIzMTFiNWNkZnAzMiwKKyAgICAtMHgxLjcwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjEKKyAgICAweDEuMjI2YjE3ODg4MDg4NDQ1MWU4NmFmMmRmYWY0ZWQ5ZTBwMzIsCisgICAgMHgxLjcwMDAwMnA0CisgIH0sCisgIHsgLy8gRW50cnkgNDYyCisgICAgMHgxLjIyNmIxNzg4ODA4ODQ0NTFlODZhZjJkZmFmNGVkOWUwcDMyLAorICAgIC0weDEuNzAwMDAycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICAweDEuZmZmZjgxODhiOGI5OWFjY2I1OTIzOWE5OTk3OTVjZWRwMjIsCisgICAgMHgxLjBhMmIyMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNDY0CisgICAgMHgxLmZmZmY4MTg4YjhiOTlhY2NiNTkyMzlhOTk5Nzk1Y2VkcDIyLAorICAgIC0weDEuMGEyYjIwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjUKKyAgICAweDEuZmZmZmMxODhhY2VhYjExMTI0ZmU5YTAyYjkyOGY3ZDhwMjIsCisgICAgMHgxLjBhMmIyMnA0CisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgMHgxLmZmZmZjMTg4YWNlYWIxMTEyNGZlOWEwMmI5MjhmN2Q4cDIyLAorICAgIC0weDEuMGEyYjIycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjcKKyAgICAweDEuMDAwMDAwYzQ1NDhkZTMyZGRiOTBhN2U1M2E2NmJhMGFwMjMsCisgICAgMHgxLjBhMmIyNHA0CisgIH0sCisgIHsgLy8gRW50cnkgNDY4CisgICAgMHgxLjAwMDAwMGM0NTQ4ZGUzMmRkYjkwYTdlNTNhNjZiYTBhcDIzLAorICAgIC0weDEuMGEyYjI0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjkKKyAgICAweDEuZmZmZmMyYzQ1OGIzNmU3ZTE4Y2IxZjIxNGU3YjEwZmZwMTAsCisgICAgMHgxLjBhMmIyMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDcwCisgICAgMHgxLmZmZmZjMmM0NThiMzZlN2UxOGNiMWYyMTRlN2IxMGZmcDEwLAorICAgIC0weDEuMGEyYjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzEKKyAgICAweDEuZmZmZmUyYzQ1NTlmYjNlODFmYmUyYmJiMTJlMTJhZTFwMTAsCisgICAgMHgxLjBhMmIyMnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgMHgxLmZmZmZlMmM0NTU5ZmIzZTgxZmJlMmJiYjEyZTEyYWUxcDEwLAorICAgIC0weDEuMGEyYjIycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzMKKyAgICAweDEuMDAwMDAxNjIyYTQ1ZmM5YTc1ODM4MTU5YjNkMTA1MDlwMTEsCisgICAgMHgxLjBhMmIyNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDc0CisgICAgMHgxLjAwMDAwMTYyMmE0NWZjOWE3NTgzODE1OWIzZDEwNTA5cDExLAorICAgIC0weDEuMGEyYjI0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzUKKyAgICAweDEuZmZmZWQ4M2VlMjUzMmFjODQ2YmRmZjA5N2NkMmY0M2JwMTI3LAorICAgIDB4MS42NWE5ZjZwNgorICB9LAorICB7IC8vIEVudHJ5IDQ3NgorICAgIDB4MS5mZmZlZDgzZWUyNTMyYWM4NDZiZGZmMDk3Y2QyZjQzYnAxMjcsCisgICAgLTB4MS42NWE5ZjZwNgorICB9LAorICB7IC8vIEVudHJ5IDQ3NworICAgIDB4MS5mZmZmZDgzZThlNzI4MWE0NWU0MzJiZDU4Y2JiYzM4YXAxMjcsCisgICAgMHgxLjY1YTlmOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgMHgxLmZmZmZkODNlOGU3MjgxYTQ1ZTQzMmJkNThjYmJjMzhhcDEyNywKKyAgICAtMHgxLjY1YTlmOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNDc5CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS42NWE5ZmFwNgorICB9LAorICB7IC8vIEVudHJ5IDQ4MAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLjY1YTlmYXA2CisgIH0sCisgIHsgLy8gRW50cnkgNDgxCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuNjVhOWZhcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODIKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLjY1YTlmYXA2CisgIH0sCisgIHsgLy8gRW50cnkgNDgzCisgICAgMHgxLmZmZmZkODNlOGU3MjgxYTQ1ZTQzMmJkNThjYmJjMzhhcDEyNywKKyAgICAtMHgxLjY1YTlmOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNDg0CisgICAgMHgxLmZmZmZkODNlOGU3MjgxYTQ1ZTQzMmJkNThjYmJjMzhhcDEyNywKKyAgICAweDEuNjVhOWY4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAweDEuZmZmZWQ4M2VlMjUzMmFjODQ2YmRmZjA5N2NkMmY0M2JwMTI3LAorICAgIC0weDEuNjVhOWY2cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODYKKyAgICAweDEuZmZmZWQ4M2VlMjUzMmFjODQ2YmRmZjA5N2NkMmY0M2JwMTI3LAorICAgIDB4MS42NWE5ZjZwNgorICB9LAorICB7IC8vIEVudHJ5IDQ4NworICAgIDB4MS4wMDAwMDAwMDAwMDAwMDA3ZmZmZmYwMDAwMDA4MDAwYXAwLAorICAgIDB4MS5mZmZmZmVwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgNDg4CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDdmZmZmZjAwMDAwMDgwMDBhcDAsCisgICAgLTB4MS5mZmZmZmVwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgNDg5CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDAwMDBhcDAsCisgICAgMHgxLnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTAKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDAwMGFwMCwKKyAgICAtMHgxLnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwODAwMDAyMDAwMDAyMDAwMGFwMCwKKyAgICAweDEuMDAwMDAycC0zMAorICB9LAorICB7IC8vIEVudHJ5IDQ5MgorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDA4MDAwMDIwMDAwMDIwMDAwYXAwLAorICAgIC0weDEuMDAwMDAycC0zMAorICB9LAorICB7IC8vIEVudHJ5IDQ5MworICAgIDB4MS4wMDAwMDAwMWZmZmZmYzAwYWFhY2E4MDAxNmM1NmI4ZXAwLAorICAgIDB4MS5mZmZmZmVwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgMHgxLjAwMDAwMDAxZmZmZmZjMDBhYWFjYTgwMDE2YzU2YjhlcDAsCisgICAgLTB4MS5mZmZmZmVwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgNDk1CisgICAgMHgxLjAwMDAwMDAyMDAwMDAwMDBhYWFhYWFhYWMxNmMxNmMxcDAsCisgICAgMHgxLnAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTYKKyAgICAweDEuMDAwMDAwMDIwMDAwMDAwMGFhYWFhYWFhYzE2YzE2YzFwMCwKKyAgICAtMHgxLnAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTcKKyAgICAweDEuMDAwMDAwMDIwMDAwMDgwMGFhYjJiMDAwMTZkMTZkMjdwMCwKKyAgICAweDEuMDAwMDAycC0xNQorICB9LAorICB7IC8vIEVudHJ5IDQ5OAorICAgIDB4MS4wMDAwMDAwMjAwMDAwODAwYWFiMmIwMDAxNmQxNmQyN3AwLAorICAgIC0weDEuMDAwMDAycC0xNQorICB9LAorICB7IC8vIEVudHJ5IDQ5OQorICAgIDB4MS4wMDA4MDAwYTlhYjAzMDY0ODNlODc3ZDE0N2Y2ZDE4YXAwLAorICAgIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDAKKyAgICAweDEuMDAwODAwMGE5YWIwMzA2NDgzZTg3N2QxNDdmNmQxOGFwMCwKKyAgICAtMHgxLmZmZmZmZXAtNworICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIDB4MS4wMDA4MDAwYWFhYjA1YjA3NTA3NTUxNDliY2RjYTAzNHAwLAorICAgIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDIKKyAgICAweDEuMDAwODAwMGFhYWIwNWIwNzUwNzU1MTQ5YmNkY2EwMzRwMCwKKyAgICAtMHgxLnAtNgorICB9LAorICB7IC8vIEVudHJ5IDUwMworICAgIDB4MS4wMDA4MDAwYWNhYjBiMDdjZWIwZjA2M2JhN2JiZmE1NHAwLAorICAgIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAweDEuMDAwODAwMGFjYWIwYjA3Y2ViMGYwNjNiYTdiYmZhNTRwMCwKKyAgICAtMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDUwNQorICAgIDB4MS4wMDIwMDBhYTZjMTQxODc5MDJhYWQyZmZiYTc0Y2YyY3AwLAorICAgIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDYKKyAgICAweDEuMDAyMDAwYWE2YzE0MTg3OTAyYWFkMmZmYmE3NGNmMmNwMCwKKyAgICAtMHgxLmZmZmZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDUwNworICAgIDB4MS4wMDIwMDBhYWFjMTZjMzBjMzFlYWYxYmJiMTkwMTk0N3AwLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDgKKyAgICAweDEuMDAyMDAwYWFhYzE2YzMwYzMxZWFmMWJiYjE5MDE5NDdwMCwKKyAgICAtMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDUwOQorICAgIDB4MS4wMDIwMDBhYjJjMWMxOGYyYTg2YmFmNDRiMTgzYWY3MnAwLAorICAgIDB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTAKKyAgICAweDEuMDAyMDAwYWIyYzFjMThmMmE4NmJhZjQ0YjE4M2FmNzJwMCwKKyAgICAtMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDUxMQorICAgIDB4MS4wMDgwMGFhYTA1ODc0ZWQ3YjdjZjhmNGI1ZTZmZGIzOHAwLAorICAgIDB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTIKKyAgICAweDEuMDA4MDBhYWEwNTg3NGVkN2I3Y2Y4ZjRiNWU2ZmRiMzhwMCwKKyAgICAtMHgxLmZmZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDUxMworICAgIDB4MS4wMDgwMGFhYjA1YjFmYjI0NTE5ODA1MDkzN2JiMDM2OHAwLAorICAgIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTQKKyAgICAweDEuMDA4MDBhYWIwNWIxZmIyNDUxOTgwNTA5MzdiYjAzNjhwMCwKKyAgICAtMHgxLnAtNAorICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIDB4MS4wMDgwMGFhZDA2MDc1NmJmMDU0OGYyOTYyYWYwNGRmNnAwLAorICAgIDB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTYKKyAgICAweDEuMDA4MDBhYWQwNjA3NTZiZjA1NDhmMjk2MmFmMDRkZjZwMCwKKyAgICAtMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDUxNworICAgIDB4MS4wMjAwYWFiZDZiMGJiY2IwNjJhNjFmMzYxODI4ZjgyMnAwLAorICAgIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICAweDEuMDIwMGFhYmQ2YjBiYmNiMDYyYTYxZjM2MTgyOGY4MjJwMCwKKyAgICAtMHgxLmZmZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDUxOQorICAgIDB4MS4wMjAwYWFjMTZkYjZlZGVjOTYwY2Q1MTIwN2U0NmMxZXAwLAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjAKKyAgICAweDEuMDIwMGFhYzE2ZGI2ZWRlYzk2MGNkNTEyMDdlNDZjMWVwMCwKKyAgICAtMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDUyMQorICAgIDB4MS4wMjAwYWFjOTczMGQ1YzdkMDRkYjYxZjkyNzViODNmYXAwLAorICAgIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjIKKyAgICAweDEuMDIwMGFhYzk3MzBkNWM3ZDA0ZGI2MWY5Mjc1YjgzZmFwMCwKKyAgICAtMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDUyMworICAgIDB4MS4wODBhYjA0YzdiNDc4ZDRjYjMxMTBkNDkxMDQ2YzljOXAwLAorICAgIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjQKKyAgICAweDEuMDgwYWIwNGM3YjQ3OGQ0Y2IzMTEwZDQ5MTA0NmM5YzlwMCwKKyAgICAtMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDUyNQorICAgIDB4MS4wODBhYjA1Y2E2MTQ1ZWRjZGU5MDM5OWM4NzEzYTM4NHAwLAorICAgIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjYKKyAgICAweDEuMDgwYWIwNWNhNjE0NWVkY2RlOTAzOTljODcxM2EzODRwMCwKKyAgICAtMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIDB4MS4wODBhYjA3Y2ZiYWUzMzdmMzZhMGY0MTQxNGQ5ZDBjOHAwLAorICAgIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjgKKyAgICAweDEuMDgwYWIwN2NmYmFlMzM3ZjM2YTBmNDE0MTRkOWQwYzhwMCwKKyAgICAtMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDUyOQorICAgIDB4MS5lMThmOWQzZWIzYjMwZWQ2MzM1YzkwMjQxOGZiNzIzNHAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDUzMAorICAgIDB4MS5lMThmOWQzZWIzYjMwZWQ2MzM1YzkwMjQxOGZiNzIzNHAxLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzEKKyAgICAweDEuZTE4ZmEwZGYyZDliYzI5MzI3ZjcxNzc3NGQwYzA2NjFwMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzIKKyAgICAweDEuZTE4ZmEwZGYyZDliYzI5MzI3ZjcxNzc3NGQwYzA2NjFwMSwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTMzCisgICAgMHgxLmUxOGZhODIwMjE4M2JjYzhhYTI0MzEzMzQyM2Y3NmZmcDEsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTM0CisgICAgMHgxLmUxOGZhODIwMjE4M2JjYzhhYTI0MzEzMzQyM2Y3NmZmcDEsCisgICAgLTB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDUzNQorICAgIDB4MS5iNGVlN2ViYjU1ZjRjYmM4NTRiMDgyZTczMjA5MjUwN3A0LAorICAgIDB4MS5mZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDUzNgorICAgIDB4MS5iNGVlN2ViYjU1ZjRjYmM4NTRiMDgyZTczMjA5MjUwN3A0LAorICAgIC0weDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzcKKyAgICAweDEuYjRlZTg1OGRlM2U4MDA2MWM2YTUxZGRkZjk2MGYzMTdwNCwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzgKKyAgICAweDEuYjRlZTg1OGRlM2U4MDA2MWM2YTUxZGRkZjk2MGYzMTdwNCwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTM5CisgICAgMHgxLmI0ZWU5MzMzMDAyMDU2NGUyMjUxZjBhMTBlMjQ3MDYwcDQsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgMHgxLmI0ZWU5MzMzMDAyMDU2NGUyMjUxZjBhMTBlMjQ3MDYwcDQsCisgICAgLTB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDU0MQorICAgIDB4MS43NDllOWVlZWZmZWQ0ZDgwNzkwNzBjYzQ0MWIwN2U1MXAxMCwKKyAgICAweDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAweDEuNzQ5ZTllZWVmZmVkNGQ4MDc5MDcwY2M0NDFiMDdlNTFwMTAsCisgICAgLTB4MS5mZmZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDU0MworICAgIDB4MS43NDllYWE5M2Y0ZTc2MTEwZDVhNTg3ZTUwZTRkM2RjM3AxMCwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDQKKyAgICAweDEuNzQ5ZWFhOTNmNGU3NjExMGQ1YTU4N2U1MGU0ZDNkYzNwMTAsCisgICAgLTB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDU0NQorICAgIDB4MS43NDllYzFkZGRmZjJmZjM0NjcxNzg3NTBiZGExMzYyYnAxMCwKKyAgICAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDYKKyAgICAweDEuNzQ5ZWMxZGRkZmYyZmYzNDY3MTc4NzUwYmRhMTM2MmJwMTAsCisgICAgLTB4MS4wMDAwMDJwMworICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIDB4MS4wZjJlYWMxNzk0YmNiYTk5Njk4OTk3MzkzMzNkNTc1ZHAyMiwKKyAgICAweDEuZmZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDgKKyAgICAweDEuMGYyZWFjMTc5NGJjYmE5OTY5ODk5NzM5MzMzZDU3NWRwMjIsCisgICAgLTB4MS5mZmZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIDB4MS4wZjJlYmQwYTgwMDVjYjNkOWI0ZjQxNDE4NmFiYTRkN3AyMiwKKyAgICAweDEucDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTAKKyAgICAweDEuMGYyZWJkMGE4MDA1Y2IzZDliNGY0MTQxODZhYmE0ZDdwMjIsCisgICAgLTB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDU1MQorICAgIDB4MS4wZjJlZGVmMDU5YzU3OGNlMTE0NzQyYmVmODQyYTcwYnAyMiwKKyAgICAweDEuMDAwMDAycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTIKKyAgICAweDEuMGYyZWRlZjA1OWM1NzhjZTExNDc0MmJlZjg0MmE3MGJwMjIsCisgICAgLTB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDU1MworICAgIDB4MS4xZjQzZDhkYzM5MDhiOGVkODdhNWFiZTM0ODU1YjQ2MXA0NSwKKyAgICAweDEuZmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTQKKyAgICAweDEuMWY0M2Q4ZGMzOTA4YjhlZDg3YTVhYmUzNDg1NWI0NjFwNDUsCisgICAgLTB4MS5mZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDU1NQorICAgIDB4MS4xZjQzZmNjNGI2NjJjN2Q4NDc4ODQwMjY4NDQ5YmMyNXA0NSwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTYKKyAgICAweDEuMWY0M2ZjYzRiNjYyYzdkODQ3ODg0MDI2ODQ0OWJjMjVwNDUsCisgICAgLTB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDU1NworICAgIDB4MS4xZjQ0NDQ5NWJlOGUxNjE2YTFlNWUzOTZiOWNhYWM2YnA0NSwKKyAgICAweDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTgKKyAgICAweDEuMWY0NDQ0OTViZThlMTYxNmExZTVlMzk2YjljYWFjNmJwNDUsCisgICAgLTB4MS4wMDAwMDJwNQorICB9LAorICB7IC8vIEVudHJ5IDU1OQorICAgIDB4MS40MjU5MzIzOTAyZGJjNmU2MmUzZTA3Y2UyNmNkOTA0Y3A5MSwKKyAgICAweDEuZmZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjAKKyAgICAweDEuNDI1OTMyMzkwMmRiYzZlNjJlM2UwN2NlMjZjZDkwNGNwOTEsCisgICAgLTB4MS5mZmZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIDB4MS40MjU5ODJjZjU5N2NkMjA1Y2UzZDViNGVkYjAzMTc1NnA5MSwKKyAgICAweDEucDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjIKKyAgICAweDEuNDI1OTgyY2Y1OTdjZDIwNWNlM2Q1YjRlZGIwMzE3NTZwOTEsCisgICAgLTB4MS5wNgorICB9LAorICB7IC8vIEVudHJ5IDU2MworICAgIDB4MS40MjVhMjNmYzQzMmZiNWQ1NTYwMDZhNGQ4ZTdlZTExYnA5MSwKKyAgICAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjQKKyAgICAweDEuNDI1YTIzZmM0MzJmYjVkNTU2MDA2YTRkOGU3ZWUxMWJwOTEsCisgICAgLTB4MS4wMDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDU2NQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjYKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjgKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTY5CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDU3MAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIDB4MS43MmYxNGExY2VkODU2YTdlNjVjMTYwN2QzNmVmNjRiM3AzLAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDU3MworICAgIDB4MS40MTJjYzM4MGRhN2NiNjk4N2RmZjY4YWQ3NzkzMmY1ZHAxLAorICAgIDB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDU3NAorICAgIDB4MS44YjA3NTc3NzUzNTBhNGE4OTkzZmMxNTZlYjRmYzgwOHAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDU3NQorICAgIDB4MS44YjA3NTUxZDlmNTUwNGMyYmQyODEwMDE5NmE0ZjY2YXAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU3NgorICAgIDB4MS44YjA3NTNmMGM1NTk4NTVhY2Y1ZjEzNTUyYTBjMzU3YnAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzcKKyAgICAweDEuNTMxOTk1MWZkZDA4ZDk1NjQzYTY3NjJjMmJlZmZhZTJwMCwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTc4CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDU3OQorICAgIDB4MS5wMCwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODAKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTgxCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDU4MgorICAgIDB4MS5wMCwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODMKKyAgICAweDEucDAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNTg0CisgICAgMHgxLnAwLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODUKKyAgICAweDEucDAsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODYKKyAgICAweDEucDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDU4NworICAgIDB4MS5wMCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNTg4CisgICAgMHgxLnAwLAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODkKKyAgICAweDEucDAsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDU5MAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTkxCisgICAgMHgxLnAwLAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTIKKyAgICAweDEuNTMxOTk1MWZkZDA4ZDk1NjQzYTY3NjJjMmJlZmZhZTJwMCwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU5MworICAgIDB4MS44YjA3NTNmMGM1NTk4NTVhY2Y1ZjEzNTUyYTBjMzU3YnAwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTk0CisgICAgMHgxLjhiMDc1NTFkOWY1NTA0YzJiZDI4MTAwMTk2YTRmNjZhcDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU5NQorICAgIDB4MS44YjA3NTc3NzUzNTBhNGE4OTkzZmMxNTZlYjRmYzgwOHAwLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTYKKyAgICAweDEuNDEyY2MzODBkYTdjYjY5ODdkZmY2OGFkNzc5MzJmNWRwMSwKKyAgICAtMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTk3CisgICAgMHgxLjcyZjE0YTFjZWQ4NTZhN2U2NWMxNjA3ZDM2ZWY2NGIzcDMsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTkKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNjAwCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDEKKyAgICAweDEuZmZmZmQ4M2U4ZTcyODFhNDVlNDMyYmQ1OGNiYmMzOGFwMTI3LAorICAgIDB4MS42NWE5ZjhwNgorICB9LAorICB7IC8vIEVudHJ5IDYwMgorICAgIDB4MS5mZmZmZDgzZThlNzI4MWE0NWU0MzJiZDU4Y2JiYzM4YXAxMjcsCisgICAgLTB4MS42NWE5ZjhwNgorICB9LAorICB7IC8vIEVudHJ5IDYwMworICAgIEhVR0VfVkFMRiwKKyAgICAweDEuNjVhOWZhcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDQKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS42NWE5ZmFwNgorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2V4cDJfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2V4cDJfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUxZjI2OTAKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvZXhwMl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxMzQyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZG91YmxlLCBkb3VibGU+IGdfZXhwMl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIDB4MS43NTUwNjg1YTQyYzYzODAwMDAwMDAwMDAwMDg0NWE0N3AwLAorICAgIDB4MS4xNmE3NmVjNDFiNTE2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS44OWQ5NDhhOTRmZTE2ZmZmZmZmZmZmZmZmZjJjZDNiZHAwLAorICAgIDB4MS4zZTM0ZmE2YWI5NjllcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS45MDY2MWRhMTJkNTI4ODAwMDAwMDAwMDAwMGIxYjVmMXAwLAorICAgIDB4MS40YTYzZmYxZDUzZjUzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS5jZDZiMzdlZGVjZWFmN2ZmZmZmZmZmZmZmZjc2ODFkNHAwLAorICAgIDB4MS5iMzJhNmM5MmQxMTg1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS4xYmEzOWZmMjhlM2U5ZmZmZmZmZmZmZmZmZmM2OWM0NHAxLAorICAgIDB4MS4yNWRkOWVlZGFjNzlhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuZmZmZmZmZmU5ZDFiZDAxMGQ3NWZlZTc4MTdlNGRmYzBwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zMgorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuZmZmZmZmZmZmZmE3NDZmNDA0MTcxZmYzMTk5YWVlZDdwLTEwMjUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS5mZTlkOTZiMmEyM2Q4ODIxOTNmN2I5OTM1ODZmMjYwMnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwNmFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLmZmZmZmZmZmOGEyYTNjMTU3YzNiN2YxOGViYWI2NDJkcC0xMDI1LAorICAgIC0weDEuMDAwMDAwMDAwMDE1NHAxMAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLmVhNGFmYTJhNDdiOWJmZmViNTNhOTIxMjNlMjg5MmQ1cC0xLAorICAgIC0weDEuMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuNmEwOWQzYzdmYTc4NTdmZmZmNWQ4MTZlYjY4M2VmNGJwLTEsCisgICAgLTB4MS4wMDAwMjVmZmZmZmFmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuZmU5ZDk2NmMxZmI4YTgyZGU5MWVlOWEyOTQxMGQ5YTlwLTEsCisgICAgLTB4MS4wMDAwMzMwcC04CisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEuZmE3NjQ0MTdmZjdkYTdmZDI1MjU2MGVhNjExMzAyOTZwLTEsCisgICAgLTB4MS4wMTFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS5lM2VmOTY2OTNmODU3OWJiYzIwZmMxY2JmOWRlY2ZjM3AtMTAzMSwKKyAgICAtMHgxLjAxODUzNDc5ZDY0MTRwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS4xNzEzNTRhM2RhYzkwZmIxYzA2Y2VkOTRiYzA5ODU2NHAtMTA1OCwKKyAgICAtMHgxLjA4NzgwODBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS4wMDAwMDAwMDAxOGY0MGI1ZWQ5OTRhMjcyNjQxNGQwNnAtMTA3NCwKKyAgICAtMHgxLjBjN2ZmZmZmZmZmZjdwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS4wMDAwMDAwMDAwMmM1Yzg1ZmRmNDc3YjY2MmIyNjk0NXAtMTA3NCwKKyAgICAtMHgxLjBjN2ZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDAuMCwKKyAgICAtMHgxLjBjODAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDAuMCwKKyAgICAtMHgxLjBjODA0MDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDAuMCwKKyAgICAtMHgxLjBjYmZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDAuMCwKKyAgICAtMHgxLjBjY3AxMAorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLjVmYTIxZjQ4YjM4MGE3ZmY4OGU2ODUyNTVjZDJiMGI5cC02OCwKKyAgICAtMHgxLjBlMmIxNGY2MzcwOTNwNgorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLmZmZmZmM2RlYjM4MTU4MDkxMWJiMGEzMzhkNTAxM2QzcC0xLAorICAgIC0weDEuMTgwcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLmYyMjBjOWJmYzNlNWU4MDJkM2QyMjk5ZjFjMGNiODk2cC0xLAorICAgIC0weDEuNDRhcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuZDJjNDE2NjQwYmI1ODgwMDAwMDMwMmQ4OGRkNDc5NGRwLTYsCisgICAgLTB4MS40ODhhNWE4OGQ4NjI3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS43NDc3ZmU2NWVkOWViODAxZmI3OGU5ZjgxOTU5NDdkZXAtNiwKKyAgICAtMHgxLjVkNjBhODVjZWM4NjJwMgorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLmZmZmZmZmZmZmUwMWQ3ZmIxNzg1YzlhYjEwOGY4NWYwcC0xLAorICAgIC0weDEuN3AtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5mNzEwMDY0ZmZiZGY2ODAwZmYzNTRlOTM0MjYwZGQ0NXAtMSwKKyAgICAtMHgxLmEwNHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLjgxZGIyNjk5ZDY0N2U4MDExOWE1ZmY2NTc4NTYyMzY4cC0xLAorICAgIC0weDEuYTFlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuMThhODJjMDdmYzQ2ZDgwMzNiZDBmZDA2NDE4ZjFkODNwLTEsCisgICAgLTB4MS5iYzEzN2M4MjlmZTNmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuZmZmZmQ3MWFiOGUxYzdmZmMyM2JiOTdlNjQzMWI2ZmVwLTEsCisgICAgLTB4MS5kN2ZmZXAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5iMjNkZDJmYmQ5MjUzODAxZDU5NjMwNjRlYjczNGEyZnAtMSwKKyAgICAtMHgxLmU2YjMwY2RmZjY2ZWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS45YWZkYWU1ZmExMDlmN2ZmZmI1NTVhMzJjMTcwZDhiMXAtMzIsCisgICAgLTB4MS5mNTEyOTU5YzlmZWY4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS42YWU1ZjQwYzJkMjY4MDAxNTk1NjM3ZDcyMGZkYWE5MHAtMSwKKyAgICAtMHgxLmZjN2YxZmM3ZjFmYzhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS5hZWQ0OWI1ZWI1ODAzMDAxZmNkMDQ5YTM3MzJiMzFmMHAtMSwKKyAgICAtMHgxLmZkZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS4wMDAwMDAwZDZhNzUyODAwYTkxNjMwNTM5YzZlN2IwZnAtMTAyMiwKKyAgICAtMHgxLmZlZmZmZmZmZjY1MjlwOQorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLjAwMDAwMDBjMDc5MGY3ZmY2MjQ5ZDg0MThlMWI4MmMwcC0xMDIyLAorICAgIC0weDEuZmVmZmZmZmZmNzUyOXA5CisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuNWFiMDdkZDQ4NTRhMTgwMGUzNmNkNWFlNDdhNjg1YmVwLTI1NiwKKyAgICAtMHgxLmZmMWZmZmZmZmZmZmZwNworICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLjZhMGJkYzRkYjRkN2IxZjRlMzVlNDNkZmM4NTgxN2E3cC0xLAorICAgIC0weDEuZmZmN2ZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU5ZDIwYmMxcC0xLAorICAgIC0weDEuZmZmOGU2MWVhZGQ0OHAtMTAxCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuZmZkM2E1NzA1YTBhMzgwMDAwM2RlOGYwNjhiYThmZGRwLTEsCisgICAgLTB4MS5mZmZmODdiZmZmZmZmcC0xMgorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLmZmZmZmNGU4ZGU5ZjQ4MDAwMzg2YTc3NTg5OTUxN2VhcC0xLAorICAgIC0weDEuZmZmZmZmZmYwN2ZmZnAtMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5mZmZmZDNhMzdiZWUxODAwOTY2ZTZjOWU5YmI0ODQ5NnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmM2ZmZmZwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuMDAwMDAwMGI1NjFlZGZmZjc3NjIyMDNlNmQ5NTRhYjRwLTEwMjQsCisgICAgLTB4MS5mZmZmZmZmZmY3ZDI5cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS4wMDAwMDAwNGRhODI3N2ZmZmY1ZDczYWZlMjRmMjFjM3AtNTEyLAorICAgIC0weDEuZmZmZmZmZmZmOGZmN3A4CisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuMDAwMDAwMDAzODUxNzYxYjZkODhmODI5YmVjZDMzMTVwLTEwMjQsCisgICAgLTB4MS5mZmZmZmZmZmZmZDc2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS4wMDAwMDAwMDFlNTMzZjk4OWJlNzA0MDgyNDQyMzQ1MHAtMTAyNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZlYTJwOQorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLjAwMDAwMDAwMTExMTk5OGUzNzIwNDBlMTc4NmQ4MTZmcC0xMDI0LAorICAgIC0weDEuZmZmZmZmZmZmZmYzYnA5CisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuMDAwMDAwMDAwNDU1MDkxNWNjZThiMmZjNGQ0N2E1MzlwLTEwMjQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmNlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIDB4MS4wMDAwMDAwMDAxZmUyODA0ZTg3ZDMwY2Y4YWNjNTljN3AtMTAyNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZTlwOQorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLjAwMDAwMDAwMDEyMDU5NjZmMmI1OTM4YTVhOTU3Y2U0cC0xMDI0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmM3A5CisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuZmZmZmZmZmZmZTlkMWJkMDEwNWNkYzIxY2VhZDQyOGNwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC00MQorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLmZmZmZmZmZmZmZhNzQ2ZjQwNDE3MWZmOGE1MmJhZTk1cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS4wMDAwMDAwMDAwMTYyZTQyZmVmYTNhZTUzMzY5Mzg4Y3AtMTAyNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuNmEwOWU2NjdmM2JjZDBlMDQ0OGZmMjE1MmM1NmJmMWZwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgMHgxLjAwMDAwMDAwYjE3MjE3ZjgwZjRmMDBjMWZmMjNkYTIxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMyCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuMDAwMDAwMDBiMTcyMTdmODBmNGY0MzRjYzgyMGY2ZWVwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwN3AtMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS4wMmM5YTNlNzc4MGZlODAwYzcyOGU3ZDQ4NmZjZjMxY3AwLAorICAgIDB4MS4wMDAwMDAwMDAzODM4cC02CisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuNmEwOWU2NmNjMTg0YjAwMDAwNGVlMTMzMDBlZWZlZWRwMCwKKyAgICAweDEuMDAwMDAwMDljZDE4OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLjAwYjFhZmRlN2IxY2I4MDEyODc3NzZiNjk5Mjc4MTc0cDAsCisgICAgMHgxLjAwMDA1MWJjZDYwZTdwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS4wMDU4Yzg5YTBkYTkyN2ZmZDRmNTRjNzY4MWViMDY4ZHAwLAorICAgIDB4MS4wMDAwN2ZmZmZmZmFlcC05CisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuMDU5YjY3ZGJiNzM3NDdmZmM3NTU5ZjM3ZWY5MTMxNTdwMCwKKyAgICAweDEuMDAwZmZmZmMwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuNmIxNGVhMDQ4YmE2YjRhOGE3N2ZkMjc1YTIwZGNiMjdwMCwKKyAgICAweDEuMDIycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEuMDAyZDcxMWM5ZmUyN2ZmZmZmZjQ1YTllNTE5YmU5OWZwMCwKKyAgICAweDEuMDYyNGRlMGI4NzdhOXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS4wMDJkNzExZGQ2NWY3N2ZmZmZmOWEzMGUxOGJhZmY2MHAwLAorICAgIDB4MS4wNjI0ZTUwYTBiZWUxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgMHgxLjAwMmQ3MTFmNGM1Yjc4MDAwMDA2NzFkMTViYjYwNjY3cDAsCisgICAgMHgxLjA2MjRlZDc2YmI5ODZwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuMWE3YzA3MTNjMTRjMmZmZmZmNWU3MDg1ZDcxNDA3MDFwNCwKKyAgICAweDEuMDkxNmZiZDE2YTRhNHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAweDEuMDAwNWYwZWVjYTQ3NmZmNTc0NmU3NzkxOGYzMDU2MjJwMCwKKyAgICAweDEuMTI0NDkxMjQ0OTEwMXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS43NTUwNjg1YTQyYzYzODAwMDAwMDAwMDAwMDg0NWE0N3AwLAorICAgIDB4MS4xNmE3NmVjNDFiNTE2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuNzZlMjE5ZjQ0ZTgwNzdmZmZiZjY5MTMyN2UxOGE2YTZwMCwKKyAgICAweDEuMTljMDk0OTRiODM5ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjM3MzhkNzJlODUxZDA4MDA3Zjk0YWVjMDRlNzIwMTQzcDAsCisgICAgMHgxLjIwOTA0ODI0MTIwODBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS41ZWJjYjBjM2E1ZThjZmZmZmY0MDNjZmM4OWFmMDI1ZHAyLAorICAgIDB4MS4zYTI0YmM5Zjc0N2E0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5lZmY5NDhhYjg2ODdmODAxZDhjMGI1MmQ0ZmQxYWJjNHA0LAorICAgIDB4MS4zZDEwNGQ1NTFkODFjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS5mNjYyYWE2NzA2MmY2ODMxMmFmY2JiNjRlZTdhMGNhY3AxOSwKKyAgICAweDEuM2Y4ZmZhM2Y2YzcxNnA0CisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuM2RjNjQyNDU3ZDA4NTdmZjE2ZmIzYjliYzBjODY4MTRwMSwKKyAgICAweDEuNGZkNjAzMWNlMmY1OXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAweDEuMDAwMDAwMDA3NTU3MWZmZmZlOTI4N2I4OTEzNDkwY2FwMCwKKyAgICAweDEuNTI5Mjk3ZTRkNDczMHAtMzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS40MjhhMmY5OGQ3Mjg5ODAyODdjZDE5ZjIyYmEyMzM0MnAwLAorICAgIDB4MS41NTU1NTU1NTU1NTRmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAweDEuMDc5MmMzNzQzNWU1YjgwMWE5YmFlNDIxOWYxMWE2YTlwMCwKKyAgICAweDEuNTg4ZjBhNGVhYzEzZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLmUwZWFhNWUxMmI2MmI3ZmVmZjBhZTk4MmJjOWIwZTIwcDIsCisgICAgMHgxLjc0NmYyZGFjNGM0YWVwMQorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLmU4ZjU5N2EzNzViOTA4MzEwYjlmZDE4OTJiOTQwZmRkcDIsCisgICAgMHgxLjc3N2YzZWIxMTg2NDRwMQorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLmUyMTJkMWNkOTJhZjU4MDAwMDA2NWFlNGQzMzVmY2Q1cDUsCisgICAgMHgxLjdhNzA2MjNhNjUwNTVwMgorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLjZlMTc2NzY5ODMyNDM3ZmYwMDc4YjEzNzkxMzgxOTYycDEsCisgICAgMHgxLjg0MWM4NGJmMDJjOTNwMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLjAwMDAwMDAwMTBlNTc4MDAwMTUyYjU2MjMyYWFiNjhlcDAsCisgICAgMHgxLjg2MDU1MTI5YzEzM2ZwLTM2CisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEuMWY5OGUzMGIwNzA3MTdmMDQ3OTQ0ZTU2NGZiNjg5NDlwNiwKKyAgICAweDEuOGFiZWY4NWFjMjdjYXAyCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuMjlmMjA5ZjYyY2QxYmZmZmZmYjQ0MmZjNjY2YWIwMDJwNiwKKyAgICAweDEuOGUwMjg3ZWIzMDU3MnAyCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAweDEuMmU2ZWI2MGZlZjllOTgwMWE3MDNkN2I4YjcyNzc2MGRwNTAsCisgICAgMHgxLjkxZWM3YjFlYzdjM2RwNQorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLjEyNWZiZWUzYThmNGIwMDAwMDZiMDFhYzZjMzlmYWUzcDAsCisgICAgMHgxLjk5OTk5OWI2OTY2YjFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS4xMjVmYmVmNjBkMjNmN2ZmZmZmOTkwYWY0YWQzNTZkZXAwLAorICAgIDB4MS45OTk5OWI0MmIwMTBlcC00CisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuMmRmODlkNjhlY2Q4MTdmZWZmYmM4YTAyNDg5YTJjMzFwMywKKyAgICAweDEuOWU3Zjg3Y2Q4MTNkMHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEuN2IwODM3YTAxYzRiZjdmZmZiNGIyNGNhOTIwNTdlYzhwODQ0LAorICAgIDB4MS5hNjQ4Nzg3NjVkOWM2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS4yNzk0MTdiZDFlZTU4MDAwZDY1N2M4OGU5NTlhYTMwYXAwLAorICAgIDB4MS5hOGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS4yNGU0Y2ZhOTUwZDg1ODAxZTRlOTdjZjU4OGVhZTg1NXA4NTgsCisgICAgMHgxLmFkMThkY2E3NTE1MWNwOQorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLmM5ZDdkOWI2ODdmZDU4MDMzZWI1NjIzM2FjZDJlNzQzcDg1OCwKKyAgICAweDEuYWQ2YjVhZDZiNWFkNnA5CisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuMDk5YWQxOGJhNDUyNTgwMTc5ZTg0YjlmMzY3YzI0ZmNwMCwKKyAgICAweDEuYjM0Y2M0NTY2ZDBiOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjc1ZGIwNDg2MjZjYzk4MDFmZGQ4MzI4ZTVlN2MyZWQzcDU1LAorICAgIDB4MS5iYzVlZTVmYjVhYmRmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS4wNGViOWRmOTQ2N2VhODAwNmVjMmFlNDBmZTRhYTlhMnAwLAorICAgIDB4MS5jMjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS43MzM2YTY2MmY3YTMwODAwMDAzMjFjNzYxOTEyYmI0ZHAzLAorICAgIDB4MS5jNDlmMTkwMjBiZTk5cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS4wMDA1MTE4MDIxOGNhN2ZmZmZmYTk4YTBhY2ExNjAyYnAwLAorICAgIDB4MS5kM2Y0Y2ZhN2U5ZTU0cC0xNAorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS4wMDAwMTQ2YmI4MWVhMDAwM2I2MmUzZDZkOTA4YTcwOHAwLAorICAgIDB4MS5kNzZwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLmU3ZWRlODE1NWY0MTQ4MDEzYzQyMzJhYmM3MTk0ZDRkcDAsCisgICAgMHgxLmRjNmUzNzFiOGRjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLmU5NmI1NjI0YzhmM2U4MDAwNDc1OWUxMjM3ZTI5OGRmcDEsCisgICAgMHgxLmVmNTc2MjdiY2QxOGRwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS42NjFiZDBlNzY3ZWUzN2ZmZmY2ZjE5ZGNiZjEzZjczM3AwLAorICAgIDB4MS5lZmUwMmJjY2NjM2UwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjBiMjE2ZTI3YWQwMTU3ZmZiN2IwN2FlZTc0NGJjNjRicDAsCisgICAgMHgxLmY3MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5mYmRhOWIyMzdhMTQzN2ZlZmZlZTEyOTQ0Y2NjMmFiZXAxLAorICAgIDB4MS5mY2ZmM2ZjZmYzZmNjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuZjBmNWQ5ZTFhYjRjYzgyNWY2NTUwMDdlOGNlODM1MmZwNywKKyAgICAweDEuZmQzZjQ2Mzk3YzkyY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLmZjNTJlODM2OTgwYWY3ZmZmYjY5ODg3ODMyZGYzNmJlcDEsCisgICAgMHgxLmZkNTZiMjM2ZTQ3YjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5mZTk3NGE0NmYwN2IwODJkMzJjZTM2MjdhZGJlNzM0YnAxLAorICAgIDB4MS5mZWZiNzFiM2U1MTkycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEuMzA1NTgxMjY4NzlhNjgyZmYzZjE2ZmJmZWYxMmE5NTlwMCwKKyAgICAweDEuZmVmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS5lYTRhZmEyYTNlNTk5ODAxNDMzODFjMGQ2NmYwNjI0MXA1MTEsCisgICAgMHgxLmZmZWZmZmZmZmZmN2ZwOAorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS5mZmQ5MzA4MzY0ZjA4ZjZmMjYxN2RhN2QwYjk5NGFlZXAxMDIzLAorICAgIDB4MS5mZmZmZjFmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuZmZmZmZmZmZhYTU1ZTdmZmZmYWE4ZTZiNWY4NzEzNTJwMCwKKyAgICAweDEuZmZmZmZmZmY4NDY5OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtMSwKKyAgICAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuN2IyOTM1OGQ0MWE2NDY2ZjA1OWJhZGViYzBmM2VmMmFwLTEsCisgICAgLTB4MS5iYmJiYmJiYmJiYmJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjhkMTdkMmI3NzAwNjdkZDBiNTYwOTk3ZDcwOTQ2MmYycC0xLAorICAgIC0weDEuNzc3Nzc3Nzc3Nzc3OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS45ZmRmOGJjY2U1MzNkMzg1MDQ5OWNkOTFiNGZlMWI0NXAtMSwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuYjM4YWE1NjgyMTUzZWExMGVjNmFhZjAzYjFlMTlhMTdwLTEsCisgICAgLTB4MS5kZGRkZGRkZGRkZGUwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLmM4MjNlMDc0ZWMxMjhkZDNlNWEyMjY2NWY1M2RlNDMwcC0xLAorICAgIC0weDEuNTU1NTU1NTU1NTU1OHAtMworICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS5kZGI2ODAxMTdhYjExOWRkZjdkZTIzYWJmNzBhOTc0YXAtMSwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OWZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEuZjQ0ZTRmYjZjNTVkNmY4NDYxZjBjMjRhNjU2MWU4Y2ZwLTEsCisgICAgLTB4MS4xMTExMTExMTExMTFjcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjA1ZmJkNGQ1YjRkNTk3NTE3ZjJmMTQ5OTBjN2MxZDc0cDAsCisgICAgMHgxLjExMTExMTExMTExMDZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuMTI1ZmJlZTI1MDY2M2UzOWE2MDA5MjVlY2FmODdlN2FwMCwKKyAgICAweDEuOTk5OTk5OTk5OTk5NHAtNAorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS4xZjU5YWMzYzdkNmJmODNjMGFhYzA4Zjg2NGQ5MTdhMHAwLAorICAgIDB4MS41NTU1NTU1NTU1NTUycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjJjZjBiNTI0NWU4ZjI4OGZkNzlmYjEzMTM3MzUyZDNjcDAsCisgICAgMHgxLmRkZGRkZGRkZGRkZGFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuM2IyYzQ3YmZmODMyODY5OTU0NWViYmMxYjgyMjQ1NjlwMCwKKyAgICAweDEuMzMzMzMzMzMzMzMzMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS40YTE0MmMyYjJlNzFkYmZjMmI0NDY3MzVkZGZlMDJmZXAwLAorICAgIDB4MS43Nzc3Nzc3Nzc3Nzc1cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLjU5YjA4OGI4ZjI5ZWQyNmU0YWZjODUzZDIyNDJmM2RjcDAsCisgICAgMHgxLmJiYmJiYmJiYmJiYjlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuNmEwOWU2NjdmM2JjYmQ0NTU4OWJjNTYxODg0NTIzODhwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZHAtMgorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5wNDgsCisgICAgMHgxLjhwNQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS41MWNiNDUzYjk1MzY2NmFlOGE3M2MzNzdlNzA0YTEzMXA0OCwKKyAgICAweDEuODMzMzMzMzMzMzMzM3A1CisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLmJkYjhjZGFkYmUxMTBhZWJkMmJhMjY2NjhmMWEwNTNmcDQ4LAorICAgIDB4MS44NjY2NjY2NjY2NjY2cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEuMjYxMTE4NmJhZTY2NTRkMTQ0MTUzODI2YThjYmRlNmFwNDksCisgICAgMHgxLjg5OTk5OTk5OTk5OTlwNQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS44NDA2MDAzYjJhZTQxODY0YTQ5ZWVhNTQ5OTRkZjM2ZnA0OSwKKyAgICAweDEuOGNjY2NjY2NjY2NjY3A1CisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMHgxLmZmZmZmZmZmZmZmZDNhMzdhMDIwYjhjNDA1NGNiODY5cDQ5LAorICAgIDB4MS44ZmZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuNTFjYjQ1M2I5NTM0OTI2NjVjNmQyZmIxNTA4M2Y2ZTJwNTAsCisgICAgMHgxLjkzMzMzMzMzMzMzMzJwNQorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS5iZGI4Y2RhZGJlMGVhMTA0ZmE0MjhjYWIwZDUxMjVhMnA1MCwKKyAgICAweDEuOTY2NjY2NjY2NjY2NXA1CisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLjI2MTExODZiYWU2NGJkMjc4MjA2MjdiMWU0YzNmMTc5cDUxLAorICAgIDB4MS45OTk5OTk5OTk5OTk4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuODQwNjAwM2IyYWUxZmU3YTdhNGM5MGFlOWU3YTg1OGVwNTEsCisgICAgMHgxLjljY2NjY2NjY2NjY2JwNQorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5mZmZmZmZmZmZmZmE3NDZmNDA0MTcxOGJlMjkxMzBjM3A1MSwKKyAgICAweDEuOWZmZmZmZmZmZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgMHgxLnAtNTIsCisgICAgLTB4MS5hcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuNTFjYjQ1M2I5NTM2NjZhZThhNzNjMzc3ZTcwNGExMzFwLTUyLAorICAgIC0weDEuOWNjY2NjY2NjY2NjZHA1CisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgMHgxLmJkYjhjZGFkYmUxMTBhZWJkMmJhMjY2NjhmMWEwNTNmcC01MiwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OWFwNQorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS4yNjExMTg2YmFlNjY1NGQxNDQxNTM4MjZhOGNiZGU2YXAtNTEsCisgICAgLTB4MS45NjY2NjY2NjY2NjY3cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAweDEuODQwNjAwM2IyYWU0MTg2NGE0OWVlYTU0OTk0ZGYzNmZwLTUxLAorICAgIC0weDEuOTMzMzMzMzMzMzMzNHA1CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLmZmZmZmZmZmZmZmZDNhMzdhMDIwYjhjNDA1NGNiODY5cC01MSwKKyAgICAtMHgxLjkwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS41MWNiNDUzYjk1MzQ5MjY2NWM2ZDJmYjE1MDgzZjZlMnAtNTAsCisgICAgLTB4MS44Y2NjY2NjY2NjY2NlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuYmRiOGNkYWRiZTBlYTEwNGZhNDI4Y2FiMGQ1MTI1YTJwLTUwLAorICAgIC0weDEuODk5OTk5OTk5OTk5YnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgMHgxLjI2MTExODZiYWU2NGJkMjc4MjA2MjdiMWU0YzNmMTc5cC00OSwKKyAgICAtMHgxLjg2NjY2NjY2NjY2NjhwNQorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS44NDA2MDAzYjJhZTFmZTdhN2E0YzkwYWU5ZTdhODU4ZXAtNDksCisgICAgLTB4MS44MzMzMzMzMzMzMzM1cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAweDEuZmZmZmZmZmZmZmZhNzQ2ZjQwNDE3MThiZTI5MTMwYzNwLTQ5LAorICAgIC0weDEuODAwMDAwMDAwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLnA3NjgsCisgICAgMHgxLjhwOQorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIDB4MS5wLTg5NiwKKyAgICAtMHgxLmNwOQorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIEhVR0VfVkFMLAorICAgIDB4MS40cDEyCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgMC4wLAorICAgIC0weDEuNnAxMgorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS5mZmZmZmZmZmZmZDNhMzdhMDIwYjhlMGQ5MGVkN2YzZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAweDEucC0xMDc0LAorICAgIC0weDEuMGM4cDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgMHgxLmZmZmZmZmZmZmZhNzQ2ZjQwNDE3MWZmMzE5OWFlZWQ3cC0xMDI1LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDB4MS5wLTEwMjQsCisgICAgLTB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLjAwMDAwMDAwMDAxNjJlNDJmZWZhM2FlNTMzNjkzODhjcC0xMDI0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgMHgxLmZmZmZmZmZmZmZkM2EzN2EwMjBiOGUwZDkwZWQ3ZjNmcC01MTMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEucC01MTIsCisgICAgLTB4MS4wcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAweDEuMDAwMDAwMDAwMDBiMTcyMTdmN2QxZDM1MWEzODlkNDBwLTUxMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS5mZmZmZmZmZmZmZTlkMWJkMDEwNWM2OGJjOTdlYzE5NHAtMjU3LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA4CisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgMHgxLnAtMjU2LAorICAgIC0weDEuMHA4CisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMHgxLjAwMDAwMDAwMDAwNThiOTBiZmJlOGU4YjJkM2Q0ZWRlcC0yNTYsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAweDEuZmZmZmZmZmZmZmY0ZThkZTgwODJlMzI3MjUwMTYxNDdwLTEyOSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNworICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS5wLTEyOCwKKyAgICAtMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIDB4MS4wMDAwMDAwMDAwMDJjNWM4NWZkZjQ3NDFiZWE2ZTc3ZnAtMTI4LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLmZmZmZmZmZmZmZmYTc0NmY0MDQxNzE4YmUyOTEzMGMzcC02NSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIDB4MS5wLTY0LAorICAgIC0weDEuMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLjAwMDAwMDAwMDAwMTYyZTQyZmVmYTM5ZmU5NTU4M2MzcC02NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDB4MS5mZmZmZmZmZmZmZmQzYTM3YTAyMGI4YzQwNTRjYjg2OXAtMzMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEucC0zMiwKKyAgICAtMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIDB4MS4wMDAwMDAwMDAwMDBiMTcyMTdmN2QxY2ZiNzJiNDVlMnAtMzIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuZmZmZmZmZmZmZmZlOWQxYmQwMTA1YzYxODdhNzY0MzZwLTE3LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLnAtMTYsCisgICAgLTB4MS4wcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuMDAwMDAwMDAwMDAwNThiOTBiZmJlOGU3Y2MzNWMzZjFwLTE2LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLmZmZmZmZmZmZmZmZjRlOGRlODA4MmUzMGE1MTNmNDFicC05LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLnAtOCwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIDB4MS4wMDAwMDAwMDAwMDAyYzVjODVmZGY0NzNlMjQyZWEzOHAtOCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS5mZmZmZmZmZmZmZmZhNzQ2ZjQwNDE3MTg0YWRhMGE4ZXAtNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIDB4MS5wLTQsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuMDAwMDAwMDAwMDAwMTYyZTQyZmVmYTM5ZjAyYjc3MmNwLTQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuZmZmZmZmZmZmZmZmZDNhMzdhMDIwYjhjMjM4MTA5NjdwLTMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEucC0yLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLjAwMDAwMDAwMDAwMDBiMTcyMTdmN2QxY2Y3ZDgzYzFhcC0yLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLmZmZmZmZmZmZmZmZmU5ZDFiZDAxMDVjNjExNDU4NWJicC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLnAtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS4wMDAwMDAwMDAwMDAwNThiOTBiZmJlOGU3YmRjYmUyZXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAweDEuZmZmZmZmZmZmZmU5ZDFiZDAxMDVjNjhiYzk3ZWMxOTRwNTExLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEucDUxMiwKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLjAwMDAwMDAwMDAxNjJlNDJmZWZhM2FlNTMzNjkzODhjcDUxMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgMHgxLmZmZmZmZmZmZmZmNGU4ZGU4MDgyZTMyNzI1MDE2MTQ3cDI1NSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA3CisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLnAyNTYsCisgICAgMHgxLjBwOAorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIDB4MS4wMDAwMDAwMDAwMGIxNzIxN2Y3ZDFkMzUxYTM4OWQ0MHAyNTYsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwOAorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIDB4MS5mZmZmZmZmZmZmZmE3NDZmNDA0MTcxOGJlMjkxMzBjM3AxMjcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS5wMTI4LAorICAgIDB4MS4wcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAweDEuMDAwMDAwMDAwMDA1OGI5MGJmYmU4ZThiMmQzZDRlZGVwMTI4LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAweDEuZmZmZmZmZmZmZmZkM2EzN2EwMjBiOGM0MDU0Y2I4NjlwNjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIDB4MS5wNjQsCisgICAgMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDB4MS4wMDAwMDAwMDAwMDJjNWM4NWZkZjQ3NDFiZWE2ZTc3ZnA2NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgMHgxLmZmZmZmZmZmZmZmZTlkMWJkMDEwNWM2MTg3YTc2NDM2cDMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEucDMyLAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEuMDAwMDAwMDAwMDAxNjJlNDJmZWZhMzlmZTk1NTgzYzNwMzIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS5mZmZmZmZmZmZmZmY0ZThkZTgwODJlMzBhNTEzZjQxYnAxNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgMHgxLnAxNiwKKyAgICAweDEuMHA0CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjAwMDAwMDAwMDAwMGIxNzIxN2Y3ZDFjZmI3MmI0NWUycDE2LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEuZmZmZmZmZmZmZmZmYTc0NmY0MDQxNzE4NGFkYTBhOGVwNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLnA4LAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEuMDAwMDAwMDAwMDAwNThiOTBiZmJlOGU3Y2MzNWMzZjFwOCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmQzYTM3YTAyMGI4YzIzODEwOTY3cDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIDB4MS5wNCwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLjAwMDAwMDAwMDAwMDJjNWM4NWZkZjQ3M2UyNDJlYTM4cDQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlOWQxYmQwMTA1YzYxMTQ1ODViYnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAweDEucDIsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIDB4MS4wMDAwMDAwMDAwMDAxNjJlNDJmZWZhMzlmMDJiNzcyY3AyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjRlOGRlODA4MmUzMDg4NDAzMWZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDB4MS5wMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLjAwMDAwMDAwMDAwMDBiMTcyMTdmN2QxY2Y3ZDgzYzFhcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS42YTA5ZTY2N2YzYmNjMTMxMjE2NjM0YjhhOGZmYjdiMHAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTEsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLjZhMDllNjY3ZjNiY2NjZjQ3YmM1ODJiZTBiNzBhZWE0cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5hZTg5Zjk5NWFkM2FkMTNlYmUyZmQ0MzdjZGM0ZDg2YnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAweDEuYWU4OWY5OTVhZDNhZDVlODczNGQxNzczMjA1YTdmYmNwLTEsCisgICAgLTB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLmFlODlmOTk1YWQzYWQ4M2Q0ZGRiYjkxMGM5YWEyYzg0cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS5kNTgxOGRjZmJhNDg2ZmQyYzBiNTg1OTEzNTNlMTQzMXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuZDU4MThkY2ZiYTQ4NzI1ZGEwNWFlYjY2ZTBkY2E5ZjVwLTEsCisgICAgLTB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLmQ1ODE4ZGNmYmE0ODczYTMxMDJkOWU1MWI2YWQ0NzM0cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS5lYTRhZmEyYTQ5MGQ5NzA1MWVkZmQ2ZjVkZTg0ZjFmZXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAweDEuZWE0YWZhMmE0OTBkOTg1OGY3M2ExOGY1ZGIzMDFmODZwLTEsCisgICAgLTB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLmVhNGFmYTJhNDkwZDk5MDJlMzY3MzlmNWQ5ODYwZWEwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDB4MS5mNTA3NjViNmU0NTQwNWM3NTM5NmIyNzE0NzAyOWNjMHAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEuZjUwNzY1YjZlNDU0MDY3NGY4NGI3NjI4NjJiYWZmOTlwLTEsCisgICAgLTB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLmY1MDc2NWI2ZTQ1NDA2Y2JjYWE1ZDgwM2YwOTc0Nzk2cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS5mYTdjMTgxOWU5MGQ4MjkxNDYxYzllYWMzOGUyMTY3NnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAweDEuZmE3YzE4MTllOTBkODJlOTBhN2U3NGIyNjNjMWRjMDZwLTEsCisgICAgLTB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLmZhN2MxODE5ZTkwZDgzMTRlY2FmNWZiNTc5MzFjNDgycC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS5mZDNjMjJiOGY3MWYxMDZiM2M3M2E0NTRmODBjMDBlY3AtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAweDEuZmQzYzIyYjhmNzFmMTA5NzViYTRiMzJiY2YzYTVlMTJwLTEsCisgICAgLTB4MS4wcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLmZkM2MyMmI4ZjcxZjEwYWQ2YjNkM2E5NzNhZDE4ZTE1cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtOAorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDB4MS5mZTlkOTZiMmEyM2Q5MTM0NDE0ZWQxNWViMTc1YmM2MnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAweDEuZmU5ZDk2YjJhMjNkOTE0YTYwMzc0NDJmZGUzMWJhZjhwLTEsCisgICAgLTB4MS4wcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLmZlOWQ5NmIyYTIzZDkxNTU2ZmFiN2Q5ODc0OGZiYTlmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtOQorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS5mZjRlYWNhNDM5MWI1ZDk4MmIyYTA0NjY0Njc3MmE4N3AtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuZmY0ZWFjYTQzOTFiNWRhMzNlNzQzNjkxZjcyOThiMTJwLTEsCisgICAgLTB4MS4wcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLmZmNGVhY2E0MzkxYjVkYThjODE5NGZhN2NmODJiYjZlcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuZmZhNzRlYTM4MWVmYzIxMjFjZDkxYTNlNjQ3NWE3ZDhwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDB4MS5mZmE3NGVhMzgxZWZjMjE3YTc3M2YxNWMwMjVmN2MwZHAtMSwKKyAgICAtMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMHgxLmZmYTc0ZWEzODFlZmMyMWE2Y2MxNWNlYWQxNTQ2NjJkcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEuZmZmNGU4ZmQ0MDA4MGNjNzk1YjBlNWU0NmE5MWYwZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMworICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS5mZmY0ZThmZDQwMDgwY2M4NDcxZjI1ZWYyNDgwYjAwYnAtMSwKKyAgICAtMHgxLjBwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLmZmZjRlOGZkNDAwODBjYzg5ZmQ2NDVmNDgxNzgwZjkwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEuNmEwOWU2NjdmM2JjYzUxY2VhMzBhNDBmYzljNTJhZWNwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAwLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgMHgxLjZhMDllNjY3ZjNiY2QwZTA0NDhmZjIxNTJjNTZiZjFmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEuMzA2ZmUwYTMxYjcxNTEzODgzNDhmZjBkZTA3NGM1YTNwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS4zMDZmZTBhMzFiNzE1MmRlOGQ1YTQ2MzA1Yzg1ZWRlY3AwLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLjMwNmZlMGEzMWI3MTU2MmFhMTdjZDQ3NTU0YWYxOWI0cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuMTcyYjgzYzdkNTE3YWQwYzc2NDcyNDBjYmYyNTlkMGRwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS4xNzJiODNjN2Q1MTdhZGNkZjdjOGM1MGViMTRhNzkyMHAwLAorICAgIDB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLjE3MmI4M2M3ZDUxN2FmNTBmYWNjMDcxMjk1OTVjM2E4cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEuMGI1NTg2Y2Y5ODkwZjVjY2U0ZWYwZDkyZWRmOThmODFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS4wYjU1ODZjZjk4OTBmNjI5OGI5MmI3MTg0MmE5ODM2NHAwLAorICAgIDB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLjBiNTU4NmNmOTg5MGY2ZTJkOGRhMGEyMmVjMDljYjdkcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuMDU5YjBkMzE1ODU3NDM4MTI3MjFhNDZiYmQwN2YwNDJwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS4wNTliMGQzMTU4NTc0M2FlN2M1NDhlYjY4Y2E0MTdmZXAwLAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLjA1OWIwZDMxNTg1NzQ0MDkyNmJhNjM0YzJiZGM3ZjA2cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEuMDJjOWEzZTc3ODA2MGVkMDhiYjJiZjNhNGM0YmZmZGRwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS4wMmM5YTNlNzc4MDYwZWU2ZjdjYWNhNGY3YTI5YmRlOXAwLAorICAgIDB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLjAyYzlhM2U3NzgwNjBmMTNjZmZhZTA3OWQ1ZTUzZmQ1cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEuMDE2M2RhOWZiMzMzNTZjZDIzZGFhMmE0ZGU5MmIwMTBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtOAorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS4wMTYzZGE5ZmIzMzM1NmQ4NGE2NmFlMzM2ZGNkZmE0MHAwLAorICAgIDB4MS4wcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLjAxNjNkYTlmYjMzMzU2ZWU5NzdlYzU1MDhjNDQ5MDExcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuMDBiMWFmYTVhYmNiZWQ1YjlhNDEwNzFhNTA5Y2VhZjdwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtOQorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS4wMGIxYWZhNWFiY2JlZDYxMjlhYjEzZWMxMWRjOTU0NHAwLAorICAgIDB4MS4wcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjAwYjFhZmE1YWJjYmVkNmM0ODdmMmQ4Zjk0NWJlYTM5cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuMDA1OGM4NmRhMWMwOWU5ZjM4NWI0YTIwMTE4MGFmODlwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEuMDA1OGM4NmRhMWMwOWVhMWZmMTlkMjk0Y2YyZjY3OWNwMCwKKyAgICAweDEuMHAtOQorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIDB4MS4wMDU4Yzg2ZGExYzA5ZWE3OGM5NmUzN2U0YThjZDdkOHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLjAwMmM2MDVlMmU4Y2VjNGYwYTAwMGIwODk3MDhiOTBkcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjAwMmM2MDVlMmU4Y2VjNTA2ZDIxYmZjODlhMjNhMDEwcDAsCisgICAgMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjAwMmM2MDVlMmU4Y2VjNTMzMzY1Mjk0OGEwNTk2ZTFjcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLjAwMDU4YmEwMWZiOWY5NmQ0MDRmNThiMmYyMTNjNmNjcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMHgxLjAwMDU4YmEwMWZiOWY5NmQ2Y2FjZDRiMTgwOTE3YzNlcDAsCisgICAgMHgxLjBwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgMHgxLjAwMDU4YmEwMWZiOWY5NmRjNTY3Y2NhZTlkOGNlNzIxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgMC4wLAorICAgIC0weDEuMGM4MDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS4wYzhwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuMDAwMDAwMDAwMDJjNWM4NWZkZjQ3N2I2NjJiMjY5NDVwLTEwNzQsCisgICAgLTB4MS4wYzdmZmZmZmZmZmZmcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgMC4wLAorICAgIC0weDEuMGNjMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIDAuMCwKKyAgICAtMHgxLjBjY3AxMAorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIDAuMCwKKyAgICAtMHgxLjBjYmZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgMHgxLjFhNjYzN2U2NjZmODJlMWJmOWJkYzI5M2UxMTBjNTg2cDMsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIDB4MS5kMDIzMWJkNWU5Y2ZkMWM1NmQ4YzU3ZmI5YWRjMTZlMXAtNCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS43YzNmNzNlNWU5ZGY0OTU1ZTUxZGIyYzk2YzRjZDQ4M3AxLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuNThiMzk0MGFmZWQxNjVlNDZmYmI3NmQwY2IwMWRkODdwLTIsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuMDAwMDAwMDAwMDAwMGIxNzIxN2Y3ZDFjZjdkODNjMWFwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLmZmZmZmZmZmZmZmZmU5ZDFiZDAxMDVjNjExNDU4NWJicC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMHgxLnAxLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEucC0xLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgMHgxLmZmZmZmZmZmZmZmZmY0ZThkZTgwODJlMzA4ODQwMzFmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuMDAwMDAwMDAwMDAwMDU4YjkwYmZiZThlN2JkY2JlMmVwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA3CisgICAgMHgxLmI5M2JiZjg1ODJlMTI5MzQxZTI0ZmY0NjUxNDJhZGZhcDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuMjkwZWU2YTVlODNjZjc4ZGEwNjMwNjBhM2Y1MGNjN2ZwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIDB4MS5wMCwKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS5wMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgMHgxLmZmZmZmZmZmZmZkM2EzN2EwMjBiOGUwZDkwZWQ3ZjNmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgMHgxLnAtMTAyMiwKKyAgICAtMHgxLmZmMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgMHgxLmZmZmZmZmZmZmZkM2EzN2EwMjBiOGUwZDkwZWQ3ZjNmcC0xMDIzLAorICAgIC0weDEuZmYwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLnAxMjUsCisgICAgMHgxLmY0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgMHgxLnAtMTI1LAorICAgIC0weDEuZjQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEucDIsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS5wLTIsCisgICAgLTB4MS4wcDEKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9leHAyZl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvZXhwMmZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVkYzUyYWMKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvZXhwMmZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTEyNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGZsb2F0LCBmbG9hdD4gZ19leHAyZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS5wLTEyOCwKKyAgICAtMHgxLnA3CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS5mZmZlOWQxYzRiMGYzN2Y0MTNkNDRjNjZjMDQ4MTgzNHAtMTI5LAorICAgIC0weDEuMDAwMDAycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLmFlODk5MzAwMjhlZmI3ODg2NjM1MDM0ZGI3MDU0MDIwcC0xLAorICAgIC0weDEuMDAwMTYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS5mZmE3MjMwMDAwNmUyMGZhMDM1OWM1N2YxYjM2YThlNnAtMSwKKyAgICAtMHgxLjAwN2VwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS5mNGY1ZDhmZmNmZWM1ZTdiNTg5YWE0OGY1YjVkOTAxN3AtMSwKKyAgICAtMHgxLjAxOWVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLjFjMGRmOWI5NGRmM2NkYjQxNjI4OTc2OTI3YmY1NGU1cC0xMjksCisgICAgLTB4MS4wMWIzMzBwNworICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuZTlmMGJkMDEzOWVjNjg5ZjcyZmI2N2M0ZTJjYTYwMWNwLTEsCisgICAgLTB4MS4wNDQwcC00CisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS41ZWZmYjBmZmZkMTliNDM3NmQ0ZTZhZTJiMTZiM2EyMXAtMSwKKyAgICAtMHgxLjE2ZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLmQ3MzdhN2ZhNGRiZjJjZmI2ZGJhNmVjNjgxN2VkMDNicC0yLAorICAgIC0weDEuMWVhOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEuYTRlNWIzMDAwMGY1OWRhZjQwMzI2YzIxMmM1YTJmY2JwLTEsCisgICAgLTB4MS4yMTc1YmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS45ZjdmMTZmZWIyNWYzMDAwZDA2MjA1NTQxMzA2OGE5N3AtMTksCisgICAgLTB4MS4yNGQyMjhwNAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLjAwMDYzZDE2NGQzNTEyYTEzOTQ2YTlkNDQ3N2Q1OTRmcC0xNDksCisgICAgLTB4MS4yOWZmZWVwNworICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMC4wZiwKKyAgICAtMHgxLjJhMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAwLjBmLAorICAgIC0weDEuMmEwMDA0cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDAuMGYsCisgICAgLTB4MS4yYTE0YzBwNworICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMC4wZiwKKyAgICAtMHgxLjJjMDAwYXA3CisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuYTBkOWVjZmZmZjE5ZDQxNTJiODJjNjYwZGMyMDlhNzdwLTEsCisgICAgLTB4MS4yZmJhZDBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS5jNjA1MmYwMDU4OWQ0ZjgwMzczOGY4ZmNmMzZmYTAwYnAtMSwKKyAgICAtMHgxLjYzMThkMHAtMworICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLmY3Y2JmMGZmZmUzMmFmNGRkYTAxZmI1NTU0ZTViZGQ1cC0xLAorICAgIC0weDEuN2RjOGU2cC02CisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuOTk0YjRmMDliNmVlMDRiZGY1YjQyMWQ0ZTk1ZGQzOGVwLTEwNywKKyAgICAtMHgxLmE5NGFjMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuOTc2OGRkMGJhZmM5ZDliMWE5N2E1NDcxMWQ0OTliNzRwLTQsCisgICAgLTB4MS5hYTMyNmNwMQorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLmQ1ODE5N2ZiMzhmYTNjMWZlMTJlN2FkNTljMDhmZjIxcC04LAorICAgIC0weDEuYzdmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS42ZDdhNjhiMmU0N2QzMTEwNzEyZGYyNTk1YzkxZjIzY3AtMSwKKyAgICAtMHgxLmYyMDdmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLmJlOWU5MzQ3NzMwMTk0OTAxNmJjMmMyYjUwYmZlMmNhcC0xMjYsCisgICAgLTB4MS5mNGM5ZDRwNgorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLmQ2MTAyN2Y3YmFlOWYxOTY0YzIwNWRmY2JlM2Y0Njc5cC0xLAorICAgIC0weDEuZjhmZTQwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuNGM2ZmVhMDU3OWRjNzk0ZTk4OWMzNTA1ZTM5YmU0OGZwLTEyNywKKyAgICAtMHgxLmZhN2UwNHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuZDVkYTAwZmZmN2ZjNTNlYjRmZmY3OGNkN2QxZjA4MGJwLTEsCisgICAgLTB4MS5mYmE3MmFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS4wNWM5ZDEzYjcwY2ZmMmNkZTVmNzViODcwZGFjY2E2MnAtMTI3LAorICAgIC0weDEuZmJkZWY4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS5kNWQyZjBmYTFmMjNiYTBiN2EwNmM4OWNjMDEyOGY3N3AtMSwKKyAgICAtMHgxLmZiZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLmVhNWE2NGY1NmE3YmE3NjJmZTM4ZmU4ZWI0YTlkZDAzcC0xLAorICAgIC0weDEuZmU4YzY0cC01CisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuZWE0Y2NjZjUzMjNiOGM0NDA1ZjFhNzM2ZTU4NjczOGZwLTEsCisgICAgLTB4MS5mZmQ0MGNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS4wMDI2ZGVmZjhlNTNjMjQwOTc2ZDI5NmIzODEwMGQ4YXAtMTYsCisgICAgLTB4MS5mZmY4ZmVwMworICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLmVhNGIzOWY4MWJhNjY4MDRlY2FiM2Q3MTA3M2UyN2IzcC0xLAorICAgIC0weDEuZmZmOWZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuMDA3OTY5YmZkY2JkZmIzZTU4YmRmMzMzZjUzYTNjMWRwLTEyOCwKKyAgICAtMHgxLmZmZmQ0NHA2CisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEuMDA1NmIzNjBlNWEyZGZlOWVlNDk4NzVkZDUyOWUzM2JwLTEyOCwKKyAgICAtMHgxLmZmZmUwY3A2CisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEuZmZmNGU5MDAxMGQ3ZjBmNWQ1ZTg4ZWQ0ODUxZDE1NDJwLTEsCisgICAgLTB4MS5mZmZmN2VwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuMDAxMTU0YmE3ZWQ0ODVmYmY4MDRjZDgyODBkNGNhMGZwLTEyOCwKKyAgICAtMHgxLmZmZmY5Y3A2CisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuZDU4MTk0ZjY0ZjU3OTE3M2Q5ZWU1ZDNjNTc2ZWY1MjNwLTEsCisgICAgLTB4MS5mZmZmYTZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5mNTA3NjcwNzUzNzJiMjljNTU3N2I3YTk2MTBmOGQ2OXAtMSwKKyAgICAtMHgxLmZmZmZjMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLjZhMDlmMmE4Yzc2YTdhM2NmZWYwZGU4MWYyYjc5ZDhlcC0xLAorICAgIC0weDEuZmZmZmNlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuYWU4OWZlZDQ5OTAzZWZmMDFmYjhkYTIwZWUzMDZhNWVwLTEsCisgICAgLTB4MS5mZmZmZGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS4wMDUzM2FmZmY1ZWVhYzZkMmRjOTAyM2MwYjg3MmJkYXAxLAorICAgIDB4MS4wMDc4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS42YTRhOWVhMTM3MDAzOWJiNjU0YTIxYTgwOGQ0MmVhOXAwLAorICAgIDB4MS4wMDg0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuNmMwMjEzZGIyMGUxMmQwMGI1OTNlMjFiNDFlYzZmN2JwMCwKKyAgICAweDEuMDQwMWUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuNmQ3YzYyZGVhMmY4YTc5ODkyZmZiMGE0MjNjODMxMmRwMCwKKyAgICAweDEuMDdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS4wMmVhOWQwMDBjYTdhM2QxYzlmMmZlZmYxZDc1ZDllOHAwLAorICAgIDB4MS4wYmMyZjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS43OGQwNjIwNDI0ZWQyMDAyZDBmMzZjYjYwMTJjMDkyY3AwLAorICAgIDB4MS4xZDhjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEuOGZiY2MzMGI4YTlkMWVhMTg1NDI2YWU3MjU0ZmEyOWFwNCwKKyAgICAweDEuMjkyNTZhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS4zOWU0NGNmZmZmZmUzOGFmZjI4NzA0YzczMmI1NDBmZHAwLAorICAgIDB4MS4yZDJlYjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIDB4MS45Mzk0YzUwYTE1OTA4MGFkMzc3Zjk4ZTFkMzgyZDIxYXAwLAorICAgIDB4MS41MDNjZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS45NjcxODcwM2Y2MTkwNzc3NDMxY2E4ZTljOGQxZTQ0MXAwLAorICAgIDB4MS41NTc1NThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS5iZTI1ZGNmZmZmZmRlOGIwNGU3YzdiMWJhZWM3YWJkYnAyLAorICAgIDB4MS42NjkzOTBwMQorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLjdjYTQwZjBjN2JkYzhiNTY4M2ZjMDU2MGM2MTU5ZjE4cDI0LAorICAgIDB4MS44OTI4MTZwNAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjI1MzZhYWZmZmYxNDFjODg3MGU4ZDRjMjM1MmU5MmVhcDAsCisgICAgMHgxLjkxMDNjMnAtMworICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLjdjYTQ0ZWYyOTdkOWMzMmZlMDBkYjU1OTg2NDJlODY4cDEsCisgICAgMHgxLjkyODE5ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuMDAwMDA4ZmY0N2Q3ZWUyY2U4MmFlMGJkYWFhNTU3NzJwMCwKKyAgICAweDEuOWY1ZGM4cC0yMQorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgMHgxLjkzY2RmMzBiY2EzZjFjY2M2ZWViMjNlYjY1NDVmMGZkcDYsCisgICAgMHgxLmFhMTRiMnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuMTMyNTJkMDAwMGY0YjUzNzc1MzkzYTA0ZGJlZTZjZDNwMCwKKyAgICAweDEuYWEyZmMwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuMjhlYjU0MDAwMGM1ZTcyNjA1N2YzZWU1NjYxMmE4NDNwMCwKKyAgICAweDEuYjYxZjQ0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuYjVmZWFkMDAwMDIyYTg2ZWM5YmM0MjMyZGE0N2YyZmJwMSwKKyAgICAweDEuYzY1NzU0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS5kZTg0NGNmZmZmMGIyMWUwYTQ3MWU5ZDU2MGE1MTRjYnAwLAorICAgIDB4MS5jZTBhYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS4wMDA1MDRmZmZmMDcyOTg1ZDcxNDU4ZDVkNDUzODUwZXAwLAorICAgIDB4MS5jZjcyYjJwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuYzFjMjc4ZmZmYjZiYzdkYTgxZTIwYzQzYWViOWNlOTJwMSwKKyAgICAweDEuZDAyMTc0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS5lMWFlNzhmZmZmMDAwMGI1Y2E4ODg2N2Y1NGRjYzg5MXAwLAorICAgIDB4MS5kMmU5NDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS4xNTM1ZDMwMDAwMDBjZDAzMjExZTc3ZThkZTRlYjdkMnAwLAorICAgIDB4MS5kNjVmMWNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS4wMDA1MWMwMDAwMDA3Zjk5OGJlMGQ0NWVmMzVmM2Q1N3AwLAorICAgIDB4MS5kN2JlMmVwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEuZjI5NGQ0ZmZmZWJhOWFkNGZlNTUzYmMxOTdmYWMyNDNwMCwKKyAgICAweDEuZWM2MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLmYyOTRkNGZmZmViYTlhZDRmZTU1M2JjMTk3ZmFjMjQzcDMwLAorICAgIDB4MS5lZjYzMTBwNAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLmVhM2NiNTA5YTk1ZjYwYTVkNDE2MmVhN2U0NzZmNzg3cDMsCisgICAgMHgxLmY3ZmFhMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuMDMzNDNiNDc1MDJjMWYyOGViNjNlN2Y0MjM5MmMwMjRwMTI3LAorICAgIDB4MS5mYzEyNjBwNgorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLjE2ZmM4YjAwMDBjODczOTU4Y2U3N2I1NThiYjA0Yjc3cDAsCisgICAgMHgxLmZjMWQ2OHAtNAorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjY5ZWE4OTAwMGE5NDNjYmI0NDRmZTMzZWY2NDg0YjE0cDAsCisgICAgMHgxLmZmN2ZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgMHgxLjY5ZjI1ZDA4YzliZGVmOTJiMTU1MDQ3ZTRlMjcwMGY4cDAsCisgICAgMHgxLmZmOWZmMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLmZmZWY1ODA3OGNkNmQwZDVmMWZlNjU3NDRjNjE2NDk2cDMsCisgICAgMHgxLmZmZjlmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAweDEuZmZmMzdiMGE1ZWJjYTAxMWQ3NTZlZGI0ZDYyZTc2NjZwNywKKyAgICAweDEuZmZmZGJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS5mZmZlMTgwNzI2YTA0MjAxOTA3Y2Q3M2Y4ODQ4OGQ4MHAzMSwKKyAgICAweDEuZmZmZmVhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGIxN3AwLAorICAgIDB4MS5mZmZmZmNwLTExNworICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAweDEuN2IyOTM1N2JiYzQ4ZDI5NTM3ODEyMjhiMmU5YmE0NzRwLTEsCisgICAgLTB4MS5iYmJiYmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS44ZDE3ZDI5MmJkMDg0ZjYwODA5OTM0NGM0MGJhMTU2YXAtMSwKKyAgICAtMHgxLjc3Nzc3OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLjlmZGY4YjkzM2UzOGEwOTllOGIyNzVhYTY1NWQ3MjBkcC0xLAorICAgIC0weDEuMzMzMzM0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEuYjM4YWE1MTdhMDAwODcyNDYwY2U0NTBiNDE1Mjk3ZWVwLTEsCisgICAgLTB4MS5kZGRkZTBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS5jODIzZTAwYjg4MGE1NjEwMDhkNWMxNTU2YTg0MmE3NHAtMSwKKyAgICAtMHgxLjU1NTU1OHAtMworICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLmRkYjY3ZmI2NmI3N2MzNTEwMmNlNDE4NzRlNjU3ZWI2cC0xLAorICAgIC0weDEuOTk5OTllcC00CisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEuZjQ0ZTRmNmJhMjUyOGE1MTBlOGE3Y2I4ZTExOTMwYmRwLTEsCisgICAgLTB4MS4xMTExMThwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS4wNWZiZDRiOGY0NDBmMmMxY2NkYjVjZGRlZmY2NmI0MXAwLAorICAgIDB4MS4xMTExMGNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS4xMjVmYmVjZjRiYzA1NGUwMzkxMmRiODIzNjZiNmNiNXAwLAorICAgIDB4MS45OTk5OThwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS4xZjU5YWMxYjRiM2U4MmI2ZTVhNjZhYzUwYTg4NTdkYnAwLAorICAgIDB4MS41NTU1NTRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS4yY2YwYjRmM2IyNmU2M2M5ZDNjYjQwYjRiYWUzMTU4NnAwLAorICAgIDB4MS5kZGRkZGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS4zYjJjNDc3ZTZlNWY4N2ZlYTRiMDJlYWQ4MjRmMjY5YXAwLAorICAgIDB4MS4zMzMzMzJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS40YTE0MmJkNzRhNjQxY2UwZWU5MDg3NzliN2QyMTRmY3AwLAorICAgIDB4MS43Nzc3NzZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS41OWIwODg1MTFkNzdhYjQ3Mjk1MzQ2Y2IzYTc3M2IyOHAwLAorICAgIDB4MS5iYmJiYmFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS42YTA5ZTVlYTdhYTM5MGRiZjg2OGI3Mjc4Yjc0NDgyOXAwLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5wNDgsCisgICAgMHgxLjgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS41MWNiNWNhNTk4NTNhMWU1NDU5M2M3N2U3ZWI4ZGI4M3A0OCwKKyAgICAweDEuODMzMzM0cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5iZGI5MGI3ODBiMzMzNTdhMzU5YTUyYjlmN2NlODhkMnA0OCwKKyAgICAweDEuODY2NjY4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS4yNjExNTU5MWY4NDUyNzhhYmIxMzAxNjM0OGFjMmYzOHA0OSwKKyAgICAweDEuODk5OTljcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS44NDA2NmJkMDc1NzllMDk3ODgwYTA4NTUzYjQ3MTY3YXA0OSwKKyAgICAweDEuOGNjY2QwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS4wMDAwNThiOTFiNWJjOWFlMmVlZDgxZTliN2Q0Y2ZhY3A1MCwKKyAgICAweDEuOTAwMDA0cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuNTFjYmQxYjdjMDNjMTIxYjAxN2I3YTYzZTVlN2RmMmNwNTAsCisgICAgMHgxLjkzMzMzOHA1CisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLmJkYjlhNWYxZjE4MDE3MzYzNDU0MmY0MmQ1MTIyZTExcDUwLAorICAgIDB4MS45NjY2NmNwNQorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS4yNjExYmI3YzhmYTM2ZjNhNmM5Njg2ODA2NGNhMmQzMXA1MSwKKyAgICAweDEuOTk5OWEwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuODQwNmYyNGIzY2E1M2ZmNmFmZjQyM2M0MWFiMDZlZmFwNTEsCisgICAgMHgxLjljY2NkNHA1CisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLnA1MiwKKyAgICAweDEuYTBwNQorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5wLTUyLAorICAgIC0weDEuYTBwNQorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS41MWNiNWNhNTk4NTNhMWU1NDU5M2M3N2U3ZWI4ZGI4M3AtNTIsCisgICAgLTB4MS45Y2NjY2NwNQorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5iZGI5MGI3ODBiMzMzNTdhMzU5YTUyYjlmN2NlODhkMnAtNTIsCisgICAgLTB4MS45OTk5OThwNQorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS4yNjExNTU5MWY4NDUyNzhhYmIxMzAxNjM0OGFjMmYzOHAtNTEsCisgICAgLTB4MS45NjY2NjRwNQorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS44NDA2NmJkMDc1NzllMDk3ODgwYTA4NTUzYjQ3MTY3YXAtNTEsCisgICAgLTB4MS45MzMzMzBwNQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS4wMDAwNThiOTFiNWJjOWFlMmVlZDgxZTliN2Q0Y2ZhY3AtNTAsCisgICAgLTB4MS44ZmZmZmNwNQorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS41MWNiZDFiN2MwM2MxMjFiMDE3YjdhNjNlNWU3ZGYyY3AtNTAsCisgICAgLTB4MS44Y2NjYzhwNQorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS5iZGI5YTVmMWYxODAxNzM2MzQ1NDJmNDJkNTEyMmUxMXAtNTAsCisgICAgLTB4MS44OTk5OTRwNQorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS4yNjExYmI3YzhmYTM2ZjNhNmM5Njg2ODA2NGNhMmQzMXAtNDksCisgICAgLTB4MS44NjY2NjBwNQorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS44NDA2ZjI0YjNjYTUzZmY2YWZmNDIzYzQxYWIwNmVmYXAtNDksCisgICAgLTB4MS44MzMzMmNwNQorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS5wLTQ4LAorICAgIC0weDEuODBwNQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuODBwOQorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDAuMGYsCisgICAgLTB4MS5jMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS40MHAxMgorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDAuMGYsCisgICAgLTB4MS42MHAxMgorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS5mZmZmNGU4ZTA2YzdlOGEyYTg0ZGFlZDhlYzU2ZDZjM3AxMjcsCisgICAgMHgxLmZmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuMmFwNworICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5mZmZlOWQxYzRiMGYzN2Y0MTNkNDRjNjZjMDQ4MTgzNHAtMTI5LAorICAgIC0weDEuMDAwMDAycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEucC0xMjgsCisgICAgLTB4MS5wNworICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS4wMDAwNThiOTFiNWJjOWFlMmVlZDgxZTliN2Q0Y2ZhY3AtMTI4LAorICAgIC0weDEuZmZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEuZmZmZjRlOGUwNmM3ZThhMmE4NGRhZWQ4ZWM1NmQ2YzNwLTY1LAorICAgIC0weDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEucC02NCwKKyAgICAtMHgxLnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLjAwMDAyYzVjODlkNWVjNmNhNGQ3YzhhY2MwMTdiN2M5cC02NCwKKyAgICAtMHgxLmZmZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLmZmZmZhNzQ2ZmJiNDA2MjY3N2JkMGY1MDZmMzkxMjY1cC0zMywKKyAgICAtMHgxLjAwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLnAtMzIsCisgICAgLTB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS4wMDAwMTYyZTQzZjRmODMxMDYwZTAyZDgzOWE5ZDE2ZHAtMzIsCisgICAgLTB4MS5mZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS5mZmZmZDNhMzdiZWUwNzVkZTQzZDQ5YjlmNjBkMDViMHAtMTcsCisgICAgLTB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS5wLTE2LAorICAgIC0weDEucDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEuMDAwMDBiMTcyMWJjZmM5OWQ5Zjg5MGVhMDY5MTE3NjNwLTE2LAorICAgIC0weDEuZmZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuZmZmZmU5ZDFiZDdjMDRiYzQ4MjUxNDdhOGMwZTYzZTNwLTksCisgICAgLTB4MS4wMDAwMDJwMworICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIDB4MS5wLTgsCisgICAgLTB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIDB4MS4wMDAwMDU4YjkwY2YxZTZkOTdmOWNhMTRkYmNjMTYyOHAtOCwKKyAgICAtMHgxLmZmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgMHgxLmZmZmZmNGU4ZGU5ZjQyYTBjZjExZjc5MTJlYTE3ZWUycC01LAorICAgIC0weDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEucC00LAorICAgIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuMDAwMDAyYzVjODYzYjczZjAxNjQ2OGY2YmFjNWNhMmNwLTQsCisgICAgLTB4MS5mZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5mZmZmZmE3NDZmNDdmMTYwZmNmODkwZTNiODAxYWVkZHAtMywKKyAgICAtMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgMHgxLnAtMiwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLjAwMDAwMTYyZTQzMGU1YTE4ZjYxMTllM2MwMjI4MmE1cC0yLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAweDEuZmZmZmZkM2EzN2EyMGNiNGExMmUyNGVhZjI1ZTM5MDdwLTIsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS5wLTEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS4wMDAwMDBiMTcyMTgzNTUxNGI4NmU2ZDk2ZWZkMWJmZnAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS5mZmZmYTc0NmZiYjQwNjI2NzdiZDBmNTA2ZjM5MTI2NXA2MywKKyAgICAweDEuZmZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAweDEucDY0LAorICAgIDB4MS5wNgorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS4wMDAwNThiOTFiNWJjOWFlMmVlZDgxZTliN2Q0Y2ZhY3A2NCwKKyAgICAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAweDEuZmZmZmQzYTM3YmVlMDc1ZGU0M2Q0OWI5ZjYwZDA1YjBwMzEsCisgICAgMHgxLmZmZmZmZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLnAzMiwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAweDEuMDAwMDJjNWM4OWQ1ZWM2Y2E0ZDdjOGFjYzAxN2I3YzlwMzIsCisgICAgMHgxLjAwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLmZmZmZlOWQxYmQ3YzA0YmM0ODI1MTQ3YThjMGU2M2UzcDE1LAorICAgIDB4MS5mZmZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIDB4MS5wMTYsCisgICAgMHgxLnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLjAwMDAxNjJlNDNmNGY4MzEwNjBlMDJkODM5YTlkMTZkcDE2LAorICAgIDB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDB4MS5mZmZmZjRlOGRlOWY0MmEwY2YxMWY3OTEyZWExN2VlMnA3LAorICAgIDB4MS5mZmZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS5wOCwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAweDEuMDAwMDBiMTcyMWJjZmM5OWQ5Zjg5MGVhMDY5MTE3NjNwOCwKKyAgICAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuZmZmZmZhNzQ2ZjQ3ZjE2MGZjZjg5MGUzYjgwMWFlZGRwMywKKyAgICAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEucDQsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLjAwMDAwNThiOTBjZjFlNmQ5N2Y5Y2ExNGRiY2MxNjI4cDQsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgMHgxLmZmZmZmZDNhMzdhMjBjYjRhMTJlMjRlYWYyNWUzOTA3cDEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLnAyLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIDB4MS4wMDAwMDJjNWM4NjNiNzNmMDE2NDY4ZjZiYWM1Y2EyY3AyLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS5mZmZmZmU5ZDFiZDA4YjViNThlZTQ4NzlhMTIyOTY2ZXAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAweDEucDEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMHgxLjAwMDAwMTYyZTQzMGU1YTE4ZjYxMTllM2MwMjI4MmE1cDEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgMHgxLjZhMDllNTZkMDE4YTg0MmI5MGRkMDZjMzYyZmVmN2FkcC0xLAorICAgIC0weDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMHgxLjZhMDllNmU1NmNkNjJjYjFjMGEzMmRhY2VlNmMxNTEzcC0xLAorICAgIC0weDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLmFlODlmOTAwNzY5NzQ3NWM1YWQzYzFjYTIwYzVlZjM1cC0xLAorICAgIC0weDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgMHgxLmFlODlmOTk1YWQzYWQ1ZTg3MzRkMTc3MzIwNWE3ZmJjcC0xLAorICAgIC0weDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLmFlODlmOWUwNDg4Y2IwOTJmY2VlODM5ZWZiZjNmYzRjcC0xLAorICAgIC0weDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMHgxLmQ1ODE4ZDdlNWU1M2NjYWY4NWJlMDRmOTJkZTdlOWJmcC0xLAorICAgIC0weDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMHgxLmQ1ODE4ZGNmYmE0ODcyNWRhMDVhZWI2NmUwZGNhOWY1cC0xLAorICAgIC0weDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgMHgxLmQ1ODE4ZGY4Njg0MmNhN2UyMWNhZTEzODVjOTdlYjk3cC0xLAorICAgIC0weDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLmVhNGFmOWZmY2UwMjUxZjAxN2JkYjk3MDEwYzExODI0cC0xLAorICAgIC0weDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLmVhNGFmYTJhNDkwZDk4NThmNzNhMThmNWRiMzAxZjg2cC0xLAorICAgIC0weDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLmVhNGFmYTNmODY5MzNjZWViZjBiMWQ3ZTI5NjZiM2ZicC0xLAorICAgIC0weDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLmY1MDc2NWExMmZiZDZlNzY3MTE4ZmEwMmJjYjNhMGQxcC0xLAorICAgIC0weDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLmY1MDc2NWI2ZTQ1NDA2NzRmODRiNzYyODYyYmFmZjk5cC0xLAorICAgIC0weDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLmY1MDc2NWMxYmU5ZjUyY2U4MTE4MjNkYzQ2NGI0MGQ1cC0xLAorICAgIC0weDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLmZhN2MxODBlZjA4MTQ4NDZiMDE1MjJlODM3MTdhZDcxcC0xLAorICAgIC0weDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLmZhN2MxODE5ZTkwZDgyZTkwYTdlNzRiMjYzYzFkYzA2cC0xLAorICAgIC0weDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLmZhN2MxODFmNjU1M2EwNTEwN2U5MWI5MGVlYTQyZDlkcC0xLAorICAgIC0weDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLmZkM2MyMmIzNzMzOGVlYzQyNjBkYTM2YTdiN2Y1YmYzcC0xLAorICAgIC0weDEuMDAwMDAycC03CisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmZkM2MyMmI4ZjcxZjEwOTc1YmE0YjMyYmNmM2E1ZTEycC0xLAorICAgIC0weDEucC03CisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLmZkM2MyMmJiYjkxMjIxODZiMjZiNDgyNzk5Y2U0MGM3cC0xLAorICAgIC0weDEuZmZmZmZlcC04CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLmZlOWQ5NmFmZGU2MDgyZjIyNTQ3MTVlZmM1ZjZhZDdlcC0xLAorICAgIC0weDEuMDAwMDAycC04CisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLmZlOWQ5NmIyYTIzZDkxNGE2MDM3NDQyZmRlMzFiYWY4cC0xLAorICAgIC0weDEucC04CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLmZlOWQ5NmI0MDQyYzE4NzdlZGFjZDg4OWIzNmQxY2Q1cC0xLAorICAgIC0weDEuZmZmZmZlcC05CisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgMHgxLmZmNGVhY2EyZDZiMjE3NWU0MzMyNDk0ZmIxYzI0NTg5cC0xLAorICAgIC0weDEuMDAwMDAycC05CisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLmZmNGVhY2E0MzkxYjVkYTMzZTc0MzY5MWY3Mjk4YjEycC0xLAorICAgIC0weDEucC05CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLmZmNGVhY2E0ZWE1MDAwYzYxODM0NzQ1MTQyMTIxMGNicC0xLAorICAgIC0weDEuZmZmZmZlcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5mZmE3NGVhMmQwOWM2NzM0MTI3MTIxMzg2OTkyMTE2N3AtMSwKKyAgICAtMHgxLjAwMDAwMnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAweDEuZmZhNzRlYTM4MWVmYzIxN2E3NzNmMTVjMDI1ZjdjMGRwLTEsCisgICAgLTB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLmZmYTc0ZWEzZGE5OTZmODk4OTAxMjkzOGQwMmRkZGZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIDB4MS5mZmY0ZThmZDI5ZGE0NGM2ZjA1YzRhNWJhZjFjMmJlZHAtMSwKKyAgICAtMHgxLjAwMDAwMnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAweDEuZmZmNGU4ZmQ0MDA4MGNjODQ3MWYyNWVmMjQ4MGIwMGJwLTEsCisgICAgLTB4MS5wLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLmZmZjRlOGZkNGIxZWYwYzhmMmRjZDBmMzVjYTVhZmVlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS42YTA5ZTVlYTdhYTM5MGRiZjg2OGI3Mjc4Yjc0NDgyOXAwLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLjZhMDllNzYyZTVlZmJiZDcyMTcwMTgyNTBhM2FiMTk0cDAsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDB4MS4zMDZmZTA2ZTVhMmYyZThjNjIwZjdlNTVjYzgwM2RiYXAwLAorICAgIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEuMzA2ZmUwYTMxYjcxNTJkZThkNWE0NjMwNWM4NWVkZWNwMCwKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLjMwNmZlMTBjOWRmNWI2ZWZiZDQwMGI3ODA2MDA1ZmE5cDAsCisgICAgMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS4xNzJiODNhZmE0ZTc3YWI5ZmIxNGVkNmQ1OTAwMGI1OHAwLAorICAgIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAweDEuMTcyYjgzYzdkNTE3YWRjZGY3YzhjNTBlYjE0YTc5MjBwMCwKKyAgICAweDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjE3MmI4M2Y4MzU3ODFhM2Y3YTk1OWFkYzZmNTE3MDEwcDAsCisgICAgMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS4wYjU1ODZjNDAzYmM4MTM5MTk3ZWJmNmNlMDljYTdmOHAwLAorICAgIDB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuMGI1NTg2Y2Y5ODkwZjYyOThiOTJiNzE4NDJhOTgzNjRwMCwKKyAgICAweDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLjBiNTU4NmU2YzIzOWUxOGJjMmM2ZTY4MDBlMWEzNTRlcDAsCisgICAgMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDB4MS4wNTliMGQyYmFkYjBlNjc0ZDg2ZjNhYmU1ODU3OGM3ZHAwLAorICAgIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAweDEuMDU5YjBkMzE1ODU3NDNhZTdjNTQ4ZWI2OGNhNDE3ZmVwMCwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLjA1OWIwZDNjYWRhM2ZlODAwODc0NjBmMTJiM2Y4NWQ3cDAsCisgICAgMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS4wMmM5YTNlNGFhODMwZDg4MzRiZGM5NWRhNjA1ZDQyNXAwLAorICAgIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAweDEuMDJjOWEzZTc3ODA2MGVlNmY3Y2FjYTRmN2EyOWJkZTlwMCwKKyAgICAweDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLjAyYzlhM2VkMTMwYzExYmJjZGZkMTVmNmNiNDU3NzdhcDAsCisgICAgMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS4wMTYzZGE5ZTRlNjFkNTY3NmZkMzI2MThmMjcxOWIyMHAwLAorICAgIDB4MS5mZmZmZmVwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAweDEuMDE2M2RhOWZiMzMzNTZkODRhNjZhZTMzNmRjZGZhNDBwMCwKKyAgICAweDEucC03CisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLjAxNjNkYWEyN2NkNjU5YmZjYjg1MDVhMDhhNjY4NDlhcDAsCisgICAgMHgxLjAwMDAwMnAtNworICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS4wMGIxYWZhNGY5ZGVhYmM3MmYyZDQ5ZjYzYTI4MTQyNHAwLAorICAgIDB4MS5mZmZmZmVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEuMDBiMWFmYTVhYmNiZWQ2MTI5YWIxM2VjMTFkYzk1NDRwMCwKKyAgICAweDEucC04CisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLjAwYjFhZmE3MGZhNjcwOTY5MGEzYWJkYTQ5MjllYzI1cDAsCisgICAgMHgxLjAwMDAwMnAtOAorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS4wMDU4Yzg2ZDQ4ZThjZDkzNzZjOTJmOGZlOTMzMzViNnAwLAorICAgIDB4MS5mZmZmZmVwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLjAwNThjODZkYTFjMDllYTFmZjE5ZDI5NGNmMmY2NzljcDAsCisgICAgMHgxLnAtOQorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS4wMDU4Yzg2ZTUzNzA0MGJmNmMxYTUwOTIwNDI2ZTA3ZnAwLAorICAgIDB4MS4wMDAwMDJwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAweDEuMDAyYzYwNWUwMjI4YjViODcwOTcwNTM4ZmYzMjgzZGNwMCwKKyAgICAweDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS4wMDJjNjA1ZTJlOGNlYzUwNmQyMWJmYzg5YTIzYTAxMHAwLAorICAgIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLjAwMmM2MDVlODc1NTU5ODA3ZDRiMDJjZDVhY2U1NzIzcDAsCisgICAgMHgxLjAwMDAwMnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuMDAwNThiYTAxYTJlNDllZDlhZWM3ZTM3OTE4YzFhNGFwMCwKKyAgICAweDEuZmZmZmZlcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIDB4MS4wMDA1OGJhMDFmYjlmOTZkNmNhY2Q0YjE4MDkxN2MzZXAwLAorICAgIDB4MS5wLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLjAwMDU4YmEwMmFkMTU4NmQxMDg5YzJkZWU5NGVhNDIwcDAsCisgICAgMHgxLjAwMDAwMnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAwLjBmLAorICAgIC0weDEuMmEwMDAycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEucC0xNDksCisgICAgLTB4MS4yYXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLjAwMDBiMTcyNTU3NzVjMDQwNjE4YmY0YTRhZGU4M2ZjcC0xNDksCisgICAgLTB4MS4yOWZmZmVwNworICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDAuMGYsCisgICAgLTB4MS4yYzAwMDJwNworICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDAuMGYsCisgICAgLTB4MS4yY3A3CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMC4wZiwKKyAgICAtMHgxLjJiZmZmZXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAweDEuMWE2NjM5MDU4MGEyYzU4NWYzZGUyMDdkZWNiMjc2NmRwMywKKyAgICAweDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEuZDAyMzE5ZmUwY2M4Yzc5OGFhZTliZWMxYzMwMWZjZTJwLTQsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS43YzNmNzRhNzMzZDAzMmFhNTJkMWE4MTY4MmU5YWE5Y3AxLAorICAgIDB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS41OGIzOTM1YmM2OGU1YjYxYjg5ODg0NDVkYTMzMTJlZHAtMiwKKyAgICAtMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLjAwMDAwMTYyZTQzMGU1YTE4ZjYxMTllM2MwMjI4MmE1cDEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLmZmZmZmZDNhMzdhMjBjYjRhMTJlMjRlYWYyNWUzOTA3cC0yLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEucDEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMHgxLnAtMSwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLmZmZmZmZTlkMWJkMDhiNWI1OGVlNDg3OWExMjI5NjZlcDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS4wMDAwMDBiMTcyMTgzNTUxNGI4NmU2ZDk2ZWZkMWJmZnAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS5iOTNiYmZmNWE3ZTU3MmJjZDUxMjI3YzliMzM5NzZmMHAwLAorICAgIDB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEuMjkwZWU2NWE2ODA4Y2IzYWM2N2EwODZiNTE5MDlmOWRwLTEsCisgICAgLTB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDJwMCwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmFwLTEsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYXAtMSwKKyAgICAtMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycDAsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZhcC0xLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDJwMCwKKyAgICAweDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmFwLTEsCisgICAgLTB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS5wMCwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS5wMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS5wMCwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLnAwLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgMHgxLmZmZmY0ZThlMDZjN2U4YTJhODRkYWVkOGVjNTZkNmMzcDEyNywKKyAgICAweDEuZmZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnA3CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZjhwNgorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS5mZmZmNGU4ZTA2YzdlOGEyYTg0ZGFlZDhlYzU2ZDZjM3AtMTI3LAorICAgIC0weDEuZjgwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEucDEyNSwKKyAgICAweDEuZjRwNgorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS5wLTEyNSwKKyAgICAtMHgxLmY0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEucDIsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLnAtMiwKKyAgICAtMHgxLnAxCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvZXhwX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9leHBfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBjYTM4MTMKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvZXhwX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDE5NTQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxkb3VibGUsIGRvdWJsZT4gZ19leHBfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAweDEuMDAwMDAwMDAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLjAwMDAwMDAwMDAxMWZmZmZmZmZmZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjFmZmZmZmZmZmZmNWVwLTQ0CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS4wMDAwMDAwMDAyMDdmZmZmZmZmZmZmZmZmZmZmZmQzNHAwLAorICAgIDB4MS4wM2ZmZmZmZmZlZjdmcC0zOQorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuMDAwMDAwMDBjMWI1OTgwMDAwMDAwMDAwMDAyN2E3ZDVwMCwKKyAgICAweDEuODM2YjJmZmY2ZDZjYnAtMzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLjAwMDAwMDAzM2QzOTc4MDAwMDAwMDAwMDAwMDJhNTFkcDAsCisgICAgMHgxLjllOWNiYmZkNjA4MGJwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS4wMDNhZjZjMzdjMWQzMDAwMDAwMDAwMDAwMDA5NDQ2ZXAwLAorICAgIDB4MS5kNzdmZDEzZDI3ZmZmcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuMDE2YjRkZjMyOTlkNzdmZmZmZmZmZmZmZmZlODNlMTBwMCwKKyAgICAweDEuNmE0ZDFhZjljYzk4OXAtOAorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuMGNhNGE0MTY2M2ZlMDdmZmZmZmZmZmZmZmZkYWIyMzVwMCwKKyAgICAweDEuOGFlODIzODUwMjMwYnAtNQorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEuMTUzOGVhMThhNDU4NTAwMDAwMDAwMDAwMDAzOWUwNTRwMCwKKyAgICAweDEuNDYzNzBkOTE1OTkxYnAtNAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuNDc0MDhjYjk1ODNjZTAwMDAwMDAwMDAwMDAyYzg5NmZwMCwKKyAgICAweDEuZjZlNGMzY2VkN2M3MnAtMworICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLjI3YzJlNGJjMWVlNzA3ZmZmZmZmZmZmZmZmZWIwYzJkcDEsCisgICAgMHgxLmFjY2ZiZTQ2YjRlZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS41NTdkNGFjZDdlNTU2ODAwMDAwMDAwMDAwMDIwMmM4NnAyLAorICAgIDB4MS5hY2E3YWU4ZGE1YTdicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS45MWE4ZGZmNTQwZmY3MDAwMDAwMDAwMDAwMDJmMWUzM3AyLAorICAgIDB4MS5kNjMzNmE4ODA3N2FhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS44ZWRlNDkyZDk2MDcxZmZmZmZmZmZmZmZmZjBhZWNkMnAzLAorICAgIDB4MS40MmVlM2M3ZGM0OTQ2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS5hYzUwYjQwOWM4YWVlMDAwMDAwMDAwMDAwMDAyMmNlM3A4LAorICAgIDB4MS44M2Q0YmNkZWJiM2Y0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5mM2U1NThjZjRkZTU0MDAwMDAwMDAwMDAwMDFmNTgwOHAtMjMsCisgICAgLTB4MS5lOGJkYmZjZDkxNDRlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS45NTFjNmRjNWQyNGUyN2ZmZmZmZmZmZmZmZmI2ZTBjM3AtOSwKKyAgICAtMHgxLjcxZTBiODY5YjVlNzlwMgorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLjEwNjRiMmMxMDNkZGE4MDAwMDAwMDAwMDAwM2ViNWQ3cC0zLAorICAgIC0weDEuMDIzOTNkNTk3Njc2OXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuM2VmMWU5YjNhODFjN2ZmZmZmZmZmZmZmZmZjMzE1cC0yLAorICAgIC0weDEuMmE5Y2FkOTk5ODI2MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuNTM0ZDRkZTg3MDcxMzAwMDAwMDAwMDAwMDAzYzZmYjdwLTMsCisgICAgLTB4MS5jYzM3ZWY3ZGU3NTAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS4yMjE3MTQ3Yjg1ZWE5ODAwMDAwMDAwMDAwMDc3NDVhM3AtMSwKKyAgICAtMHgxLjIyZTI0ZmEzZDVjZjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS45NDAzZmQwZWU1MWM4MDAwMDAwMDAwMDAwMDc3MjBmMXAtMiwKKyAgICAtMHgxLmRjMmI1ZGYxZjdkM2RwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5iYWRlZDMwY2JmMWMzZmZmZmZmZmZmZmZmZmZiZDkwNHAtMSwKKyAgICAtMHgxLjI5MGVhMDllMzY0NzlwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS5mZmU1ZDBiYjdlYWJmMDAwMDAwMDAwMDAwMDAzMDMyMHAtMSwKKyAgICAtMHgxLmEyZmVmZWZkNTgwZGZwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuZmZmZmZmODRiMzljNGZmZmZmZmZmZmZmZmZmZjE3ZjRwLTEsCisgICAgLTB4MS5lZDMxOGVmYjYyN2VhcC0yNworICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLmZmZmZmZmZhZDBhZTY4MDAwMDAwMDAwMDAwMDlmMWE4cC0xLAorICAgIC0weDEuNGJkNDY2MDFhZTFlZnAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS5mZmZmZmZmZmZmNzAwMDAwMDAwMDAwMDAwMDAwMDAwM3AtMSwKKyAgICAtMHgxLjIwMDAwMDAwMDAyODhwLTQyCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuZmZmZmZmZmZmZmZkcC0xLAorICAgIC0weDEuODAwMDAwMDAwMDAxMnAtNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS4wMDAwMDAwMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmUwcC00OAorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLjAwMDAwMDAxN2ZmZTgwMDAwMDAwMDAwMDAwMDM1ZmZkcDAsCisgICAgMHgxLjdmZmU3ZmZlZTAwMjRwLTMyCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEuMDAwMDAwMDE4MDAxN2ZmZmZmZmZmZmZmZmZmYzlmZmRwMCwKKyAgICAweDEuODAwMTdmZmVkZmZkY3AtMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS4wMDAwMDA3NWU5ZjY0MDAwMDAwMDAwMDAwMDBiMWU4MHAwLAorICAgIDB4MS5kN2E3ZDg5MzYwOWU1cC0yNgorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLjAwMDZlODM3MzZmOGM4MDAwMDAwMDAwMDAwMGFhMGFmcDAsCisgICAgMHgxLmJhMDdkNzMyNTBkZTdwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEuZGU3Y2Q2NzUxMDI5YTAwMDAwMDAwMDAwMDBlOGJiMmZwMTYsCisgICAgMHgxLjc2ZTdlNWQ3YjZlYWNwMworICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLjFkNzE5NjVmNTE2YWQ4MDAwMDAwMDAwMDAwOWY3ZTk3cDE5LAorICAgIDB4MS5hOGVhZDA1OGJjNmI4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS5hOGMwMmU5NzRjMzE0ZmZmZmZmZmZmZmZmZmUyMWYwM3AyNSwKKyAgICAweDEuMWQ1YzJkYWViZTM2N3A0CisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuYjg5MGNhODYzN2FlMWZmZmZmZmZmZmZmZmZlNDIxNjFwNDAsCisgICAgMHgxLmM0NGNlMGQ3MTZhMWFwNAorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLmYwM2Y1NmE4OGI1ZDc4MWM5MDVmNmI1MWM3NmFlOTgxcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLmZmMDAzZmY1NTZhYTg3ZWJiMDZlMGViNTcyODc1NjdmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwYXAtOQorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjhlYmVmOWVhYzgxZmM4MDAxYTNkYmQ4ODI0OGVmZTEzcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAyNXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLmZjMDNmZDU2YTQ2OWI4MDAwMDhiY2RmZTAxOGRiYzc0cC0xLAorICAgIC0weDEuMDAwMDAwMDE3MTA1MXAtNworICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLjc4YjU2MTJkYmVlMDEwMDA4ZDNiYzA3MzVjODBmN2E4cC0yLAorICAgIC0weDEuMDAwMDAxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuOTY5Yzg3MGVhOWY1YTgwMWRkYzFmZjA4YTAwOGRiMDlwLTkzLAorICAgIC0weDEuMDAwMDAxZTNlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS43OGFmODY3YmM1MTFkMzIxY2Q0NTRkYmRkYWY4MDZiY3AtMiwKKyAgICAtMHgxLjAwMDNmYzBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLmZmZmZmZmZmZmVmZmY4MDAwMDAwMDAwNDAwMTAwMDE1cC0xLAorICAgIC0weDEuMDAwODAwMDAwMDRwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuNzg5MjE0MDkzYzgxZDNiNjVmYWM2NTlmYjNmYzgyNDlwLTIsCisgICAgLTB4MS4wMDE4MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEuOGUyOThlNTJmY2NlODgwMTRhZDk1YzRmM2JkODg3NjVwLTEsCisgICAgLTB4MS4wMThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS5hYTZmZmIwYmE1MTlmODAxZjljM2UxNDZhMTVkYzAyY3AtMjQsCisgICAgLTB4MS4wMjAxMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuZGQ3YTQ2YjhkODVkNjdkNjczNTkzMzcxMDljMjUxNjhwLTM3NiwKKyAgICAtMHgxLjA0MHA4CisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEuMzNlOTZjYTNiY2YzZTgwMWY5YjNmNjEyNmZjNjA2OTlwLTEsCisgICAgLTB4MS4wNDViOTQ4NzI0MTMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuZWYyZjY1MmRjMjYwNTdmZmZjOThhYTU0ZDRjMzNjMTZwLTEsCisgICAgLTB4MS4xMThlMDVjZmEzZTgwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEuYTVkMmNlOTc3YmJlMjgwNDhiMzE2OTI3Zjk3MGMyMDFwLTcsCisgICAgLTB4MS4xNjkxNTZlMTdiOWI5cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS5hMDIwN2NmNDE5MGY3MDA0NTIyODJiMDRmYTM5MDQwN3AtNywKKyAgICAtMHgxLjE3NzAxYjNiZjA1MDJwMgorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmZiOTdlMWZmOGNiYmE3YWRmMTZmM2ZiZDY4NzhmNTYwcC0xLAorICAgIC0weDEuMWI0cC03CisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuYmNmZjA5YWUzMGM0NjgwNGE2ZmFmZDU1MDc2NmVlZDJwLTEsCisgICAgLTB4MS4xZjRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS5mZWU3MGNmNWU4NmVmNGU1NGQwYjFmYTI3MDFhMzQ2ZnAtODMzLAorICAgIC0weDEuMjA1OWFkNDJjM2NmN3A5CisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuN2NjZDNmMzM0MDc0NTgwMTE0NzBiM2Y2NzE5N2E5YzhwLTEsCisgICAgLTB4MS4yZjI2OWQyY2EzOGQycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuMDljZGIzNmU5NzdiYzdmZmZmZTZkNGRkYmIxOGQ1NTNwLTE0LAorICAgIC0weDEuMzU1M2NmMTgyOGIwYnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuZjlkYzVjZDU0NmQ5YjgwMGRjM2Q5NTUxOWRjNjdlZThwLTQ0OSwKKyAgICAtMHgxLjM2OGFjMDgzMTI4ZmNwOAorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLmYxYzUzYzkwN2Y2ZjU3NmU2MmU0MDEzMTViYWZjNjllcC0xNSwKKyAgICAtMHgxLjM3NmU4ZjY3OWFlMTZwMworICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLmYyNDU5NTk1NGU2NjE4MDI4OTY1YTlkNjdlZGVhZjdicC04LAorICAgIC0weDEuMzg0NGY2NzQ5NWY3ZHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuZmI1NjUyMTI5MGEyMjI1MjdkMWQzYzM2MzgyNjVmNDZwLTkwNSwKKyAgICAtMHgxLjM5NGU5ZTFiMDg5ZDdwOQorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLmRjMTY1OGZmNmUwNzA3ZmFmZDJmZDgzMDZjNGIxODk3cC0xMTQsCisgICAgLTB4MS4zOTk3ZWE1MWU1MjcxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS5lYzhiM2MwOTBmOGI5NzcxNmEzZDM4ZGU0NmQ2OGExZXAtMSwKKyAgICAtMHgxLjNkNWRlNTYwZTE5MDZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS5hZjQxMWJmOTg1MjIwYjU2MjkwOWM2NTJjMDg3ZmVmNHAtOTUxLAorICAgIC0weDEuNDk1NGFhNTUyYTk2MHA5CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEuZTFiNzFkMjM4ZDUwNzdmZTNiZWEyMjJmY2JhMTU2MDhwLTk1NywKKyAgICAtMHgxLjRiNWFkNmE5YWQ2YWRwOQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLmNjNjY2YTM1MTljYTA4MGYxZGFlZjU3ZjkyYjQxZDI5cC05NzMsCisgICAgLTB4MS41MGVjMzI2ODZhODM0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS4yMjQ2MmJkNWY3MmIwZmZmYTYwODViMDQ0MjdmZGY1ZHAtOTc2LAorICAgIC0weDEuNTIzMTY4NzJiMDIyMnA5CisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuYzFlYmMxODYxMDMwMWZmZjI0MjRiYzM5MzYyNjBkZDJwLTk4MSwKKyAgICAtMHgxLjUzYjRlZDNiNGVjNzdwOQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLjhkMDE1YmNhZjllMThiNTdmZGYwNTcyMzlkOTRmNTg2cC05ODEsCisgICAgLTB4MS41M2M0ZjEzYzRmMDc5cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS5mZDU4MzU0NjBlZDQ4YzRlMTQyMDczMDlhMTIzN2Y5MHAtOTg5LAorICAgIC0weDEuNTY2YWQ0YTQxYmVjMHA5CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEuNTg3MzNmYmMwODhlZjdmZjM4ZTE1Zjk0MTY2YzAyMmNwLTk5NCwKKyAgICAtMHgxLjU4NTg4M2U3YjNiMzhwOQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLmIwNTIwOTA2OTA0ODE4MDJhY2YwMTY5ZjYyYmYzMmM5cC0zMiwKKyAgICAtMHgxLjVhODFlY2Y2OGJlY2NwNAorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgMHgxLmRmNjE1NGJjNjQ0ZGFjMGY5ZTNhNTY2NDY5NDhiN2M1cC0xMDE1LAorICAgIC0weDEuNWY3NTYyOWFmNGViN3A5CisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuZmY0YjBkYTM3MDgzNTAyYzExNGE3YWM1NmFjMDQ5OGZwLTEwMjMsCisgICAgLTB4MS42MjMyZWIxYzQzMmYycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS42MjVlZGQ0Yzc1MTNlODQyZjI3YTkzMWMyYmJlMDA3Y3AtMTAyMywKKyAgICAtMHgxLjYyNjFkN2RiZjQ4Y2NwOQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLmQ1NzJkMjQ5NzNiZTIwMDA2YmFkOTJlMjliY2JhOTg0cC0xLAorICAgIC0weDEuNjM2NGI4Zjc0N2UzMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLmVlNGRkNzkyMjQ1Nzc4MDIwMjUwZjg5ODFkMWEwYWQxcC05LAorICAgIC0weDEuNjUyNDc5NmI0MDg5NXAyCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuZjY2MGM1OWIyOTQ1MDVkODk4OWY4NWY4ZWQyYTE4NzhwLTUsCisgICAgLTB4MS42NTUxZGFhZTM2OWNlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS5hYTA3MDQ0OWVmZmZlOWI5MTA2NTc4OThjZGMwY2NkZHAtMTAzNywKKyAgICAtMHgxLjY3MjQ2M2YxNDE2MDdwOQorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLmQ0ZTdmYzMzMWI3MzI3ZmZjY2Y0ZWUwYzU5YWE3YjIycC0xLAorICAgIC0weDEuNjgyMGM5OWMxZGMxNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLmZjYzQ0OGFjZjQ3NjU3NWM2NmVlMzk2OTEyZGJhYWNkcC01MjgsCisgICAgLTB4MS42ZDRiN2U4MmMzZjAycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS43ZmZmNWExYmZmY2IyMDYyYzlhYWE1YjA3ZDA5NzI1NXAtNTI5LAorICAgIC0weDEuNmU0NGY3NjVmZGE3NnA4CisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEuZmE0ZWNkOGFlNTcxODdmZmZmZmZmOTkxMGM0NzZjNjRwLTEsCisgICAgLTB4MS42ZTU2ZTcyNWI4MzA0cC03CisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuZThkMmRhZmQwMTdjZTgwMzJiY2I4OTQ1OTQ2NGZlN2RwLTMsCisgICAgLTB4MS42ZWNwMAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLjIxNGUzNGNhYWM5ZTY3MTM5Njg4YWQxNjMyZGQyMDU1cC0xMDYyLAorICAgIC0weDEuN3A5CisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuYzg3ZjIxNzc1YTQ4MmEwOWE0NGFmNTljM2MzYWU0NGJwLTEwNzEsCisgICAgLTB4MS43MmU0MnA5CisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuYTM0OWIyMzI5YzY3NzdmZmNlNjU5MzRiM2I2MjAzYTdwLTI3MywKKyAgICAtMHgxLjc5NzhiYWM3MTEyMWNwNworICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLmQyYTZkNWVhOTk1YzE3YWI0NDgxMzJlMWUwNDUzODA1cC0xLAorICAgIC0weDEuN2JkZTc5ZTBmOTcwY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLmI3NzZkYzY0Yzc2ZDE5N2U4YzY0NGRjOGNiNTA5YzRhcC0zLAorICAgIC0weDEuOGEwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS40NDQ2ZmNmN2RhNjg5ODAyZDhjNzI1ZGI4YzExNDVhZnAtNzIsCisgICAgLTB4MS44ZDVjODRmMGJhYzhjcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5lNzJhMGI2OGJiODJiNzhjZTA1MjRkMWFiYjZmN2FiZXAtNzMsCisgICAgLTB4MS44ZmE2OGI0NDQ3MjMwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5mYzMzZDVlMWNhNmRmN2Q1MDY5YjAzZGM1YTY4M2U0ZnAtNzUsCisgICAgLTB4MS45YTY3MTY5M2I5NDZicDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS5lNjk4MWZkNmVmNzljN2ZmZmZmY2M3MjAxZjgyZmQ0OXAtMSwKKyAgICAtMHgxLmEwZWM4OWY4OTdhNzVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5mMmI5ZDNiNmNmMjI3N2ExMjgzZjhlMDA3NDNhMDY2OXAtMSwKKyAgICAtMHgxLmFlNnAtNgorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLmU1MDM0YzhkMTkxYmJmZmY3MTlmMjA5OGUzM2MwNTc3cC0xLAorICAgIC0weDEuYmI5NzA2ZTJmMWJiNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLmYyNGRjOTBmOWZiZWI4MDI4ZmJjYWVlYmFiYzdlOWZjcC0xLAorICAgIC0weDEuYmMzZWRhZDJlMWVmYnAtNgorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLjcxZjIzN2Q2NGE2ZWI0NmFhMTU0NDc2ZmQwZmMzODg2cC0xMSwKKyAgICAtMHgxLmQwNjk3ZWRiZTAwNTJwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS5mMTJjMGQzYWRkYWE0ODAwNGIyMzUxNmQyYTExMzgwNHAtMSwKKyAgICAtMHgxLmUxOHAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS5mMTEwZGQ5MDczZDcxODAwYmI0MDU2ODMwYjUxN2IwOHAtMSwKKyAgICAtMHgxLmU1MHAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS5mM2FhN2E4NjA1NzRjMmIwNzgzMDYxZmUxZmQxZGYyZXAtNzA1LAorICAgIC0weDEuZTdmZmZmZmZmZmZmZnA4CisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLmYwZjg5OGQ1NTExNzA4MWZjM2I4NzkyMjA1ZTRlMTMwcC0xLAorICAgIC0weDEuZTgycC02CisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLmZmODE0ZmZmMThkYWM4NTQxODVkMDE5YjBmOGVhZDM2cC0xLAorICAgIC0weDEuZmFmZWJmYWZlYmZiMHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEuZmZmZmZmZmYwMWMwNzAxYzQ2MjA4YzU0MTZkOTQzYWRwLTEsCisgICAgLTB4MS5mYzdmMWZjN2YyMHAtMzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuNzkwN2Q0MTQ4YmQ5MTY4N2ExYjUwZjI2ZTg4MzA3NzVwLTIsCisgICAgLTB4MS5mZjhmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLmZmZmZmZmZmZmZmZjgwMWMwMDAwMDAwMDEzZjkwMGMzcC0xLAorICAgIC0weDEuZmY4ZmZmZmZmZmZmZnAtNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuZTBmYmIwM2EwYzI3ZDdlODQ4MDRjYWRlYzM3N2JkZjlwLTEsCisgICAgLTB4MS5mZmVmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLmZmZmZmZmZmZmYwMDA4MDAwMDAwNDAwNDAwMGZmZmY1cC0xLAorICAgIC0weDEuZmZlZmZmZmZmZmZmZnAtNDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuZmZmZmZmZmZmZjAwMDdmZmZmZmZmZmZjMDAxMDAwMTVwLTEsCisgICAgLTB4MS5mZmYwMDAwMDAwOHAtNDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTAwMDcxOWVwLTEsCisgICAgLTB4MS5mZmY4ZTYxZWFkZDQ4cC0xMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuZmZmZmZmZmZmYzAwMDgwMDAwMDQwMDEwMDAwZmZkNTVwLTEsCisgICAgLTB4MS5mZmZiZmZmZmZmZmZmcC00MAorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS5mZmZmZmZmZmZjMDAwMDFjMDAwNDAwMWZjN2ZmZmUxOXAtMSwKKyAgICAtMHgxLmZmZmZmMWZmZmZmZmZwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLmZmODAwZmZlYWFjMDA4NTg5ZjlhOTZhZjczZWFmZjY3cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmRhNXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuZTM1NWJiYWVlOGQ4NTgxNWU0YjQ3NmI3MDRkMGY0ZjFwLTI0LAorICAgIC0weDEuZmZmZmZmZmZmZmY3ZHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjc4YjU2MzYyY2VmM2RhOTg0NDUzZDFjNzJjMzQ0YTMxcC0yLAorICAgIC0weDEuZmZmZmZmZmZmZmZmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuNDJlYjlmMzlhZmJhYzdlNWU3M2MzMmEyMWU4NTNmMjZwLTE4NSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDIwcDAsCisgICAgMHgxLjBwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLjk1ZTU0YzVkZDQyMTc3ZjUzZjRkNTIxOWRmMTFjYTNicDE4NCwKKyAgICAweDEuMHA3CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLjk0NzY1MDRiYTg4NTc1OGFhNWZhNzU0NWUxMGU4ZTQ2cDczOCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjAxMDA4MDJhYjU1Nzc4MDJiYTQyNGFkNDZiMTA2YTY2cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDNwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuMDAwMDAwNDAwMDAwMDgwMDAwMWNhYWFhYjFiNTU1NTZwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwN3AtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEuZDhlNjRiOGYyNmMxMjg1MTc0ODlhNDkwZTY4NGQ4YThwMiwKKyAgICAweDEuMDAwMDAwMDA4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEuNzQ5ZWE3ZTAxNWJjMWRkZGZhMTlmYmIzY2Y4YmRlZDRwMTEsCisgICAgMHgxLjAwMDAwMDAxMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLjBmMmViZDJjNjVkOWE4MDA4MWFjMmU2NWU4MDI1YWIxcDIzLAorICAgIDB4MS4wMDAwMDAwMjBwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS4wZjJlYzE0NzNhZmVhODA4MWZhNDU2NjkyN2E0Y2ZkM3AyMywKKyAgICAweDEuMDAwMDAwNHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLjAwMDAwMDAwMDEwMDA4MDAwMDAwODAwODAwMjAwMDJhcDAsCisgICAgMHgxLjAwMDgwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS4wMDAwMDAwMDAwODAwODAwMDAwMDIwMDQwMDIwMDAwNXAwLAorICAgIDB4MS4wMDFwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLjAwMDAwMDAwMDAwMDA4MDA4MDAwMDAwMDAwMjAwNHAwLAorICAgIDB4MS4wMDFwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLmE4YmY4MWE1OTdlZGQyMjNmMmRiNmViZmUyZWIxY2MxcDE4NCwKKyAgICAweDEuMDAxNzNlYWIzNjIzYXA3CisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLjc1ZTU0MTc1YWFiYjM3ZmZmNWU1YjQ0YmEwZjEwMWI3cDExLAorICAgIDB4MS4wMDFjMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLjYwMDA4ZmJlZDZjNTI4MDIwNmU3OTkwOTMyMWQwOWM4cDEsCisgICAgMHgxLjAyZjhhZjhhZjhhZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS4wNDE4NGJiODBmZjQzZmZmYzg5YzUzZjFlZTA0Y2UwNHAwLAorICAgIDB4MS4wNDBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEuMDAwMDA4NDAwMDIyMDgwMDVkOTYwMGMxMDU2MTNlN2NwMCwKKyAgICAweDEuMDgwcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIDB4MS4yMzM4YWI5Yjc0MzIwODAwMDAwMDA5NzM5MzhiYWNiMHAwLAorICAgIDB4MS4wODAwMDAwMWQwZmM4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgMHgxLmFjYzkxYmZhN2M1NGM4MDM2NTQ4Yzk2OGIzNmU1NzUwcDAsCisgICAgMHgxLjA4MTQ0MTlkNmE2NWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuYTRlNDY5MzQxM2I5OTcwNzU1YzE1NjMzYWYyNWY5NmJwNDAwLAorICAgIDB4MS4xNWMxOGRlODc3NTYzcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuMDAwMDAwMDAwMDAwNDgwMDAwMDAwMDAwMDYxZmZmZmZwMCwKKyAgICAweDEuMWZmZmZmZmZmZmZmZnAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAweDEuZWFhNTIxZWRmMWJjMjgwMTQ2MDIxOTFjZTYxOGMwNWZwODQ2LAorICAgIDB4MS4yNTg2Y2E5Y2Y0MTFicDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuZmNhOWM0NzAxNmNiMTc2MTdiMjc1YjI5OGNmOWY4OTRwMjYsCisgICAgMHgxLjJiNTVjMDM3ZWJiOWRwNAorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS5mY2JiMWU1YzhkNTM1NzVhYmM3ODcyNmY1Y2VhNmY1MXAyNiwKKyAgICAweDEuMmI1NjRiZWUwYTZjYXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgMHgxLmNjMGY5ZDkxMWYxZDEwMDJjZjBhZjM4MmZkZjYyZjAycDAsCisgICAgMHgxLjJjMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS5iNjhhMjhiMDlmZTk0N2ZkZjAwMTA0ZjZkOGMyNDgwMXA2LAorICAgIDB4MS4yYzllMzNmNzk0NzY5cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAweDEuZDJlMDM1YjE4OTJkNjgwMmE5YzllMjg4ZDhlOTdjOThwMCwKKyAgICAweDEuMzNhNzRmZjA2ZmI2NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS42YWNkZTg0NDM1NmM5MjFmYTk5MzEzYWExODY3MDU5M3AzLAorICAgIDB4MS4zNmNjZTNjMzkyNXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMHgxLjA2ZGFkZWUyOGMxMWM4MDBmYjkwOTQ0MzVjMWRlNzI3cDcsCisgICAgMHgxLjM4Mzg5YzQ4YjBmY2VwMgorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS5jNzhmMzdmMDdjZWE2NDI2ZWQ1NTQ4YjRhMzFkNGFjMnA5MDQsCisgICAgMHgxLjM5OTczODFkN2Q5NGZwOQorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS5iZmUwYzUxOTE2NmM0N2ZlM2E0YjM0ZTZjMzRiNWFlNHAxLAorICAgIDB4MS40MGEzMzljODFjZWNicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuZmJjOWMzMDYwMzA4NzQ4OGEzZDkyMjY1YjUzYzJhNjVwOTI3LAorICAgIDB4MS40MTlkYmNjNDg2NzcwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAweDEuZjFlZjljOGE0ZmRhZTgwMWIxOWY4ZTQyZWZmMmM0YThwOTMwLAorICAgIDB4MS40MmE1NjVlNDU2ZTA0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAweDEuZGExMzRkNWE0ZDFlMTgwMGM0MzY1NDQ5OTQwNThjZTZwOTM0LAorICAgIDB4MS40NDAyMDEwMDgwNHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgMHgxLmY0ZWM0NDE5NGI2NDI4MDFhNGFmZDRjNTA2MzNlOGFhcDkzOCwKKyAgICAweDEuNDU2YmYyM2UwMjQyOHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLmVhOTFkOTUzM2IzOTQ4MDFiZjNkM2VjOGY4OGRlNTY4cDkzOSwKKyAgICAweDEuNDVjMWZlZWY4MDg2Y3A5CisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgMHgxLmNiNDE5YjkyNzliMzU3NjNkMTEzZTZjNWRiNzlkYzU0cDk0MywKKyAgICAweDEuNDcxYzcxYzcxYzcxY3A5CisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLjZkMTQzMDg4MjgzMjFkZTZmZTY3YTQxMzZmMTdkMWY4cDI5LAorICAgIDB4MS40NzRjOWNjNDRjYzI1cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAweDEuYzAxOTRiNDE4NmUyNzgwMTIwYjg3M2Q3MjQ1NmVjZGRwOTU2LAorICAgIDB4MS40YjlhYjE3ODEyMDMwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuMTVjNjA1ODUzNDc2YjgwMDA4Y2FiYzRiMjA3ZmZkMWZwMCwKKyAgICAweDEuNGU1OWRjN2UyYjA1M3AtNAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDB4MS42ZGVlMzg3MzVhNmQzODAwZDhlYzExNzY4MzI3NWYzYXA5NzIsCisgICAgMHgxLjUxMGM1NDY1ZDk4NGJwOQorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS5mMWU5NmJlMmE1MmNkNzc3ZThjZjU0MTg0ZWQ3YWU0OHAwLAorICAgIDB4MS41NDliMGY1NzQyMzgycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgMHgxLmYyNTNjNTk5MGFhZDI4MDAwMDRkYjYxNWIxMTQ4NDc2cDAsCisgICAgMHgxLjU1MDg1ZmI4NjUwMWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuMjc5YjFjNDNhMjY2MTdmZjRjNzUwOGMzNWU1NjJiMjJwOTkzLAorICAgIDB4MS41ODM4MzEyNmU5NGJmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAweDEuNmZkNWFiNTkxNTNmMzJhNGEzODM3MTBhMzQxOWY1N2RwOTk2LAorICAgIDB4MS41OTVlNTc5NWU1OTJicDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEuNWVjZjE4NzY1Mzk1NDdmZmQ2MTJlNWM0YjcxNWM4YWRwMTAwNCwKKyAgICAweDEuNWMxZTBmMDc4M2MxMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgMHgxLmYyYTNjMjlmYzZkNzIzYTYzZTM0OWJiY2Q3ODk0YThhcDEwMDgsCisgICAgMHgxLjVkYWRmNWQxZTQ1MmNwOQorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIDB4MS5lZGNiMTQ4Nzk2MTNlODAxNzYwODdjMWE3NmRlYzk3Y3AxMDA5LAorICAgIDB4MS41ZTA1NmVkNDBlNTZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAweDEuZmNjN2U1Y2E4MGIxZjc1YzE0ZDc2MmY4NDZiYzE2NjlwMCwKKyAgICAweDEuNWZhOTdiYjRlOTA2MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS5mOGI1Yzk4N2EzZDg3N2UxOGJmY2FkYTUwZjFjNTRiMHAzLAorICAgIDB4MS42MTBlNDdlMTMyNWRjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAweDEuZjFlOWQ4Y2YyNGZjZDgwMjUxMjc4NzdhNzM4ZWIyZDFwNywKKyAgICAweDEuNjExYjE5ZGNjNTNlNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLmZmYzA0NTY5MmU4YTAzOWM1NjIyYjgyMTlmMTljNjE5cDEwMjMsCisgICAgMHgxLjYyZTQxZmZmZmZmZmFwOQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIDB4MS5mZmMwNDU2OTMwMDlkM2QwNjUwNjJmOTI2N2RmZjU1ZXAxMDIzLAorICAgIDB4MS42MmU0MnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLmZmYzA0NTY5YTJmYjgzNjc5MjM5MDkxZGYwNjg5OTdlcDEwMjMsCisgICAgMHgxLjYyZTQyMDAwMDAxY2NwOQorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDB4MS5mZmZmZmZmZmZlYjJhMWIwZTI2M2FjNjgwNzZlZDRlMHAxMDIzLAorICAgIDB4MS42MmU0MmZlZmEzOWVhcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuMDAwMDBiNDAwMDNmNDgwMGVkNGUwMjliNmI2NWRkYjFwMCwKKyAgICAweDEuNjgwcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIDB4MS4xN2U2MmY3MGJlYzk5ODAxYTI5MzZlODliNTRjNTI1NnA4LAorICAgIDB4MS42ODlhN2RjNTkyMWI4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuNmRhYWExMzM2YTMxNTAwMTc0Y2EwYmU1Njk4MDZmZGVwMjY0LAorICAgIDB4MS42ZWIxZGU2OWFjZTMycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAweDEuNzJhOWRhZGVhNzQ5OGM5NWE1MTRjMDFkNTQwM2U1ZDBwMCwKKyAgICAweDEuN2IwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLjFlZDNmZTY0ZmM1Mzk4MDBmOWNkMzRlYzRjODNkOWQxcDIsCisgICAgMHgxLjdmZmZmZmZmZmZmZjlwMAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIDB4MS4wMDAwMDAwMDAwMDAxODAwMDAwMDAwMDAwMDFmZmZmZnAwLAorICAgIDB4MS43ZmZmZmZmZmZmZmZmcC01MgorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS5mZTMxMTUyYjdlZjZiMWUwYThiOWZlYzdlY2RkODVhNHA1NTMsCisgICAgMHgxLjhwOAorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIDB4MS43NGQ3N2I3NmQ5NTE2MzIyNmNhZjg0NzYwYTM0NmFiYnAwLAorICAgIDB4MS44MTBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuZjBlM2U1YjZjMTdjMDJhNzk5YzMwNmRiYzFiMWE4ZWNwNTU2LAorICAgIDB4MS44MjBkOTJmYzRiNDJhcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAweDEuMDAwMDAwMDBjMWI1OTgwMDAwMDAwMDAwMDAyN2E3ZDVwMCwKKyAgICAweDEuODM2YjJmZmY2ZDZjYnAtMzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuNzhiNjlkNjkwZGI3OTJiNTc0ZjkwNGQyYmIxZTllYmVwNTcwLAorICAgIDB4MS44YjdhZWU2MzFmNDg5cDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuNGRhZDk1ODc3YWUwNzgwMDAwMTI4MjdmYWM4OTE1MzVwMTQ0LAorICAgIDB4MS45MDUwMTFlMGRmNjI5cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuZmNiYjg3NzhmNjEyMTc2NjVhNmU2ZjIxMTk4ODBiMjlwMTQ0LAorICAgIDB4MS45MWZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLjdhNWIyNzcxZTBhMTZjZTZlY2Q2ZGU4NTczYzExMTkycDQsCisgICAgMHgxLjk0ZTU0NzM4ZmI0YjdwMQorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS43ZDY3NmEyNmZlNWNhY2NlYTU5YjAyMzU0MGJlYzgwZnAwLAorICAgIDB4MS45ODRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAweDEuNjk4NzY0MTI4YTQ0NDgwMTBlMjUxYjU1ZjM3YTdiNmVwMTQ3LAorICAgIDB4MS45OGYzODFkN2RiNDRmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuNDRlNWE3NTJmOWUxZWZmZmIzMTQ4MTQ4NGFhNzY5MmFwOSwKKyAgICAweDEuOWU4MTg2YjI2N2EyOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgMHgxLjgwMjNkMjk4ZTM3MmY4MDIwZWM4Y2Y0YTcwYWZmYTg3cDAsCisgICAgMHgxLjlmOTFjMTQ0OWM0MjFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuZGY5YmQwNmRhZjhjZTdiMTIzZGY0M2JiNTAxMDk5MzhwMjk5LAorICAgIDB4MS45ZmMxZjIxMmQ3MGY2cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAweDEuODFhNGZiY2E5ZGNkYjgwMDAwMGFlMDY4YmMyMWM0ZjVwMCwKKyAgICAweDEuYTM5Mjc4OWVhZmNlOXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS44MjVmMzU0Y2NmNmYyZmZmYWI3ZTllYjgyOGZiYzY3ZHAwLAorICAgIDB4MS5hNTgwN2NhMTM5MmIycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLjNjMWUyODc2ODM0YWE3ZmE0NjAxMWU5OGFiZWFkZjc2cDAsCisgICAgMHgxLmJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuMWM3ZTFhY2E1Mzc5NWZmZjU0YTVmZGY1NTI5MjYxY2FwMCwKKyAgICAweDEuYjA0cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgMHgxLmEyZDUwYjhiMjg4MGU4MDFhMjdhMzRkMTk1NGRhYjUwcDMzMSwKKyAgICAweDEuY2JkOTE3Y2NhZDA5NnA3CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLjQxOWM4YThkYTFiNzk4MDJlMjAyOTZlNWY5Mjc5NjI2cDEsCisgICAgMHgxLmQ3YjY3N2UzMzNkMzhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAweDEuNDFkMWI4YjQ2NDllYjgwMDAwMjNmOTc3NmRhOWQ2NDVwMSwKKyAgICAweDEuZDgwYjFhNjMzMGJlYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS5iZjM0NDc5MjFmZDM5N2ZkNmRiNDYyY2QyZmJiMzlmZXAxMCwKKyAgICAweDEuZGY1MGQ5YWY5ZTQxMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgMHgxLjk5MTk3OTRiYzg2Mjk4MDIwYTE5NTg4NTUyY2VhZTVjcDAsCisgICAgMHgxLmUwMDgxZWJjMzI2NGVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuNzZhNjJiYWQ3MTViNDgwMGRhYWRiNmZjMmI2ZTYxNjZwNSwKKyAgICAweDEuZWM1YmIyMDllNTcwN3AxCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgMHgxLmM3MDE1NTRjNzYxYWE4MGVlZGYyYTQ5ZWY2MGU1NjJjcDIsCisgICAgMHgxLmY2MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgMHgxLmMzZGRhM2M5NTJiOTE4MDEyZmQ3OWZiYjhlYTM4ZjY5cDcyNywKKyAgICAweDEuZjg3Yzc4MjBkODQ0NnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLmQyOGM2MDk3YjlkNTU3ODgzNWU2Y2ZmMWIxOTQ2NGNkcDIsCisgICAgMHgxLmZjODlkYzFhYTkwOWNwMAorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS40MjMxMTc4YzIzNDhmNWY3N2VlZGIyN2RjNDA0ZjYxNnA3MzQsCisgICAgMHgxLmZjZmZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDB4MS4wNDAzNDU5MTkxMWU3N2ZmMTgzNGZkNzBkMGJiYjRiMHAwLAorICAgIDB4MS5mZGE2ZGZlMjdmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLmE1YjU2OTFjNGIwZWY4MDNjYWIyYmFkNGEyMDEzZjE0cDAsCisgICAgMHgxLmZmMWRkMWZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEuMDAwMDAwMDAwMDAwM2ZmMjAwMDAwMDAwMDVmYzgwNjJwMCwKKyAgICAweDEuZmY4ZmZmZmZmZmZmZnAtNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuNmQ0ZmQ5YWI0N2M5MjAwMDczYWE4MTI3YTI0MTlhYzhwNzM4LAorICAgIDB4MS5mZmU1ZWZmZmZmZmZmcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEuMDAwMDAwMDAwMGZmZjgwMDAwMDAwMDAwMDAxZmZmYWFwMCwKKyAgICAweDEuZmZlZmZmZmZmZjAwMXAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuNzQ0MThiY2U3ODhlYjQ2NzQ2YjM4YjU3ODc1OWVjYzBwMTEsCisgICAgMHgxLmZmZWZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIDB4MS4wMDAwMDAwMDAwZmZmODAwMDAwMDdmZjgwMDIwMDAyYXAwLAorICAgIDB4MS5mZmZwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLjAwMDAwMDAwMDBmZmZmZjIwMDAwN2ZmN2YyMDAwMDhjcDAsCisgICAgMHgxLmZmZmZlM2ZmZmZmZmZwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMHgxLmQ4ZTY0YjhkMjE4NTI4MWY5ODRhNGU1MTE0OGRhZGVjcDIsCisgICAgMHgxLmZmZmZmZmZmZTdmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZjlmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC01NAorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZmRmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01NAorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDB4MS4zMDRkNmFlY2EyNTI1MzE0NzVlYzkxODIzNjliYTQxNXA2OSwKKyAgICAweDEuN2ZmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLjMwNGQ2YWVjYTI1NGIzYWY0YmM1ZDYyOTNkNWY2NWM3cDY5LAorICAgIDB4MS44cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAweDEuMzA0ZDZhZWNhMjU3MTQ0YTIxOWYxYWQ1MDU1OGQzMmNwNjksCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS5mOGU2YzI0YjU1OGVmMTc0OTk1YmNmYWQ0OTUxNDlmNXAtNzYsCisgICAgLTB4MS5hMDAwMDAwMDAwMDAxcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAweDEuZjhlNmMyNGI1NTkyZTM0MjFkZjI3YWNmMWUwODAxNDRwLTc2LAorICAgIC0weDEuYXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMHgxLmY4ZTZjMjRiNTU5NmQ1MGZhMjg5MjVmOGQ2NTljMWJmcC03NiwKKyAgICAtMHgxLjlmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS41NTc3OWI5ODRmMzk1ZGVhMzZhMjc3YjhiZWUyZTY0Y3AxMTUsCisgICAgMHgxLjNmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS41NTc3OWI5ODRmM2ViM2M4YTUwM2I0YThlMjQ4OWQ5OHAxMTUsCisgICAgMHgxLjRwNgorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS41NTc3OWI5ODRmNDQwOWE3MTM2NGYxYWU1ZDI4MGU2OXAxMTUsCisgICAgMHgxLjQwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS4wN2I3MTEyYmMxZmJjMmMwZjljMTM2NTMzMDkzMDMxMHAtMTI3LAorICAgIC0weDEuNjAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLjA3YjcxMTJiYzFmZmUxOWQzZTcwM2U0YTc5NGY3MzcycC0xMjcsCisgICAgLTB4MS42cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuMDdiNzExMmJjMjA0MDA3OTgzMWY0NjUyM2Q3Y2Y2OTJwLTEyNywKKyAgICAtMHgxLjVmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIDB4MS40MGE0YjljMjcxNTA4NjYxNzZkMjJmMjEzOWQxZDQwZnA5MjMsCisgICAgMHgxLjNmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS40MGE0YjljMjcxNzg5YWY4YWYyMDViYjM0Zjc0MzMzN3A5MjMsCisgICAgMHgxLjRwOQorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDB4MS40MGE0YjljMjcxYTBhZjhmZTc2ZThkNDdmN2ZkOWMyNnA5MjMsCisgICAgMHgxLjQwMDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS40NGEzODI0ZTUyNWQ1NmZjM2YwMmY4ODYzNzVlYzg3NnAtMTAxNiwKKyAgICAtMHgxLjYwMDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIDB4MS40NGEzODI0ZTUyODVlYjZjODhjZDQ2YmE1ZGViNDU3YXAtMTAxNiwKKyAgICAtMHgxLjZwOQorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS40NGEzODI0ZTUyYWU3ZmRjZDI5NzlhMDExMjgwZmJjOHAtMTAxNiwKKyAgICAtMHgxLjVmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDB4MS4wMzk5NjUyOGUwNzJiNzhhMzMyNDgwODg0Yzc5YmFmN3A3NSwKKyAgICAweDEuOWZmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLjAzOTk2NTI4ZTA3NGJlYmNmZDc2NDE2ZmMyYzBlYjkycDc1LAorICAgIDB4MS5hcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEuMDM5OTY1MjhlMDc2YzVlZmM3YzgwMjViNDc2ZGIwZDBwNzUsCisgICAgMHgxLmEwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS5hZWJhYmFlM2E0MTdlZTZlN2ZhZjllY2ZjOTUxMDQwY3AtNzAsCisgICAgLTB4MS44MDAwMDAwMDAwMDAxcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEuYWViYWJhZTNhNDFiNGJlM2Y1NzZlNzAzMDNhMzc5MzJwLTcwLAorICAgIC0weDEuOHA1CisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLmFlYmFiYWUzYTQxZWE5NTk2YjNlMmYzY2Y4ZTBkOWU3cC03MCwKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS5mMTA1NmRjN2JmMWIwZmM4NTdiNjc5OTlmNTAzNTI3M3AxMjYsCisgICAgMHgxLjVmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS5mMTA1NmRjN2JmMjJkM2RlMGVkNTc2MTViYzUwMWY4YnAxMjYsCisgICAgMHgxLjZwNgorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS5mMTA1NmRjN2JmMmE5N2YzYzVmNDcyYjA5M2YzYzkxZnAxMjYsCisgICAgMHgxLjYwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS43ZmQ5NzRkMzcyZGU0OTA5OWVlN2JmNDhhZTM0NmVhYXAtMTE2LAorICAgIC0weDEuNDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLjdmZDk3NGQzNzJlNDQ4NmY3MjM1OGFjZGQxMjY5MGU1cC0xMTYsCisgICAgLTB4MS40cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuN2ZkOTc0ZDM3MmVhNDdkNTQ1ODM1NjZhZjFiMDAwNTZwLTExNiwKKyAgICAtMHgxLjNmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDB4MS45M2JmNGVjMjgyYmQzYjM2Y2QyZjQwMTE0ODhhODM2NHAxMDE1LAorICAgIDB4MS41ZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEuOTNiZjRlYzI4MmVmYjMyMGE1N2Y5YWUwMmUwMWFlNTFwMTAxNSwKKyAgICAweDEuNnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLjkzYmY0ZWMyODMyMjJiMGE3ZGNmZmJmZTEwYjNlMzRhcDEwMTUsCisgICAgMHgxLjYwMDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS45OGM3MmNhMGNhYjE0ZWRhNWFjYTk3YmVlMGZkZDQ4ZnAtOTI0LAorICAgIC0weDEuNDAwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLjk4YzcyY2EwY2FlNDY3YmZlZWUzZjExYTRhYTI2Zjc3cC05MjQsCisgICAgLTB4MS40cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEuOThjNzJjYTBjYjE3ODBhNTgyZmQ1MGQ4ZDBmOThkOGJwLTkyNCwKKyAgICAtMHgxLjNmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS42MTAxM2E0NGE5ODFjOTEwZjIwZjgwNzU2MDA3MTIwYXAtODIyLAorICAgIC0weDEuMWNiOTBiZmJlOGU3Y3A5CisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgMHgxLjgwODc3MTdhN2YwOGE3MjUxMjEwZTcxZDQ3YWNjNWUzcC05MDUsCisgICAgLTB4MS4zOTcyMTdmN2QxY2Y4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEuYTJkZTU5ZDg1NDUyMTA5ZjM0MTY1ZmE1NWY5ZTRlN2JwLTk4OCwKKyAgICAtMHgxLjU2MmIyM2YzYmFiNzNwOQorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMzU3OTNjNzY3MzAwODBkZmI5YnAtMiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuMDAwMDAwMDAwMDAwMDFhYmM5ZTNiMzk4MDNmNDVjMWNwLTEsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLjAwMDAwMDAwMDAwMDA5YWJjOWUzYjM5ODA0MjFiYTZicC0xLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS42YTA5ZTY2N2YzYmNjNDhmMDk2NTAwOWYyNzc4ZGY5MXAtMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuNmEwOWU2NjdmM2JjY2EzNzMwZmVhMDZlMWE5NjZjMDZwLTEsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLjZhMDllNjY3ZjNiY2NmZGY1ODk4NDAzZDBkY2E5OTE5cC0xLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS5hZTg5Zjk5NWFkM2FkMzNmM2M0NTExMThlNGFkNzRjNXAtMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuYWU4OWY5OTVhZDNhZDY5YzUwMzgzYzczNWE1NzUwNTJwLTEsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLmFlODlmOTk1YWQzYWQ5Zjk2NDJiNjdjZGQwMDdlNjA2cC0xLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAtMworICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS5kNTgxOGRjZmJhNDg3MGVhMzBmODk3NGYzNjllYWI4Y3AtMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuZDU4MThkY2ZiYTQ4NzJiZmIyODY2NzA5N2YxMDgwN2VwLTEsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgMHgxLmQ1ODE4ZGNmYmE0ODc0OTUzNDE0MzZjM2M3ODQyYWYxcC0xLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS5lYTRhZmEyYTQ5MGQ5Nzk3MDY5ODg3ODc5YjdjOTc0ZXAtMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEuZWE0YWZhMmE0OTBkOTg4YzJjMTU5Y2FjMjI0OGEwMWJwLTEsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLmVhNGFmYTJhNDkwZDk5ODE1MTkyYjFkMGE5MTUyMzdicC0xLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS5mNTA3NjViNmU0NTQwNjExZTA2NWMxNGYxMDUwMjRjZXAtMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuZjUwNzY1YjZlNDU0MDY4ZjIyM2YyZjA4MjU1MWI4ZWZwLTEsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLmY1MDc2NWI2ZTQ1NDA3MGM2NDE4OWNjMTNhNTM2YzVmcC0xLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS4wNTliMGQzMTU4NTc0MzVmNmM1MWNlZWIwYTZiNDZlNnAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjA1OWIwZDMxNTg1NzQzYTBkMzE1MWI0MTIwM2MyNmVlcDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuMDU5YjBkMzE1ODU3NDNlMjM5ZDg2Nzk3MzYwZDE3NGZwMCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS4wYjU1ODZjZjk4OTBmNTg3ZjUyNzkyOTQxMTQxNjVhMnAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLjBiNTU4NmNmOTg5MGY2MGQ5ZmVhZmE2MDU5YmM0YjA4cDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEuMGI1NTg2Y2Y5ODkwZjY5MzRhYWU2MjJjYTIzNzczNDJwMCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS4xNzJiODNjN2Q1MTdhYzdjN2MwZDM0MzJhZDU0M2FmYXAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjE3MmI4M2M3ZDUxN2FkOTNhNzkwZmMwN2M1MDE0MzBjcDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEuMTcyYjgzYzdkNTE3YWVhYWQzMTRjM2RjZGNhZjYyNDlwMCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIDB4MS4zMDZmZTBhMzFiNzE0ZmZlN2VlYzZiZWJmN2NhOWQ3ZHAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgMHgxLjMwNmZlMGEzMWI3MTUyNWY1ZWFkYjIyMmRhNmNmYjVhcDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuMzA2ZmUwYTMxYjcxNTRjMDNlNmVmODU5YmQxNDFhZjdwMCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtMworICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDB4MS42YTA5ZTY2N2YzYmNjMjMyMGQ1ZGU2OTBjNzgxNzJhZXAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgMHgxLjZhMDllNjY3ZjNiY2M3ZGEzNGY3ODY1ZmJhOTU4YjMzcDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuNmEwOWU2NjdmM2JjY2Q4MjVjOTEyNjJlYWRjMDQ0NTZwMCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIDB4MS5mZmZmZmZmZmZmZmZlY2E4NmMzODk4Y2ZmODc3OWExYXAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZjYTg2YzM4OThjZmY4MWNkZDdjcDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAweDEuMDAwMDAwMDAwMDAwMDY1NDM2MWM0YzY3ZmMyMTEwNmZwMSwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS5mZmZmZmZmZmZmZmZkOTUwZDg3MTMxOWZmMWFhNDMyOHAxLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjk1MGQ4NzEzMTlmZjAzZjUwYWZwMSwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLjAwMDAwMDAwMDAwMDBjYTg2YzM4OThjZmY4NmEyZjFicDIsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIDB4MS5mZmZmZmZmZmZmZmZiMmExYjBlMjYzM2ZlNjQwYzIxYnAzLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjJhMWIwZTI2MzNmZTA5NGY4MzdwMywKKyAgICAweDEuNjJlNDJmZWZhMzllZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgMHgxLjAwMDAwMDAwMDAwMDE5NTBkODcxMzE5ZmYxNzQ5NzJhcDQsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwMQorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDB4MS5mZmZmZmZmZmZmZmY2NTQzNjFjNGM2N2ZkODMyNzM2MXA3LAorICAgIDB4MS42MmU0MmZlZmEzOWVlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTU0MzYxYzRjNjdmYzE4MzRiZDNwNywKKyAgICAweDEuNjJlNDJmZWZhMzllZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLjAwMDAwMDAwMDAwMDMyYTFiMGUyNjMzZmU1NmExMjIycDgsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwMgorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIDB4MS5mZmZmZmZmZmZmZmVjYTg2YzM4OThjZmZkZjI4YTM2ZnAxNSwKKyAgICAweDEuNjJlNDJmZWZhMzllZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMHgxLmZmZmZmZmZmZmZmZmNhODZjMzg5OGNmZjg0NmMwNTM0cDE1LAorICAgIDB4MS42MmU0MmZlZmEzOWVmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuMDAwMDAwMDAwMDAwNjU0MzYxYzRjNjdmZDRkN2IzN2NwMTYsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwMworICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDB4MS5mZmZmZmZmZmZmZmQ5NTBkODcxMzFhMDA3OTYwMzk4ZnAzMSwKKyAgICAweDEuNjJlNDJmZWZhMzllZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMzA3CisgICAgMHgxLmZmZmZmZmZmZmZmZjk1MGQ4NzEzMTlmZjBlNmRjMGEzcDMxLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuMDAwMDAwMDAwMDAwY2E4NmMzODk4Y2ZmZDFiZGEzZGJwMzIsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwNAorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIDB4MS5mZmZmZmZmZmZmYjJhMWIwZTI2MzQ1YjhkZmUwMDY5N3AxMDIzLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEuZmZmZmZmZmZmZmYyYTFiMGUyNjM0MDBkMTVmYzUyZmZwMTAyMywKKyAgICAweDEuNjJlNDJmZWZhMzllZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwOQorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDB4MS5jODQ2NGY3NjE2MTk2MmVkMTkzMDc5NmMwNzk0MjU0YXAtMTA3MSwKKyAgICAtMHgxLjcyZTQyZmVmYTM5ZjBwOQorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS5jODQ2NGY3NjE2NTI2YmI3MDdmMzQwMjhmMWQ2Mzc4NnAtMTA3MSwKKyAgICAtMHgxLjcyZTQyZmVmYTM5ZWZwOQorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIDB4MS5jODQ2NGY3NjE2OGI3NDgwZjZiNjBlMDZmNTU2MjIxYnAtMTA3MSwKKyAgICAtMHgxLjcyZTQyZmVmYTM5ZWVwOQorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIDB4MS44ZWJlZjllYWM4MjBhODRiODZkMWNlMWE0NDI0NDM1ZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAweDEuOGViZWY5ZWFjODIwYWU4NjgyYjk3OTNhYzZkMWU3NzJwLTEsCisgICAgLTB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgMHgxLjhlYmVmOWVhYzgyMGIxYTQwMGFkNGVjYjA4MzIxMWY2cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS5jM2Q2YTI0ZWQ4MjIxNGYwZDAxZGFmOGUxYThkMmNhN3AtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAweDEuYzNkNmEyNGVkODIyMTg3ODdkNjI0ZDNlNWViYTk1ZjVwLTEsCisgICAgLTB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgMHgxLmMzZDZhMjRlZDgyMjFhM2M1NDA0OWMxNjgwZDNmMDVlcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDB4MS5lMGZhYmZiYzcwMmEzYjA0ZTg2MDIzZjA2OTFjYzU5N3AtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEuZTBmYWJmYmM3MDJhM2NlNWUzMWZlMDYwOTM1OGJhZmRwLTEsCisgICAgLTB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgMHgxLmUwZmFiZmJjNzAyYTNkZDY2MDdmYmU5OGE4Nzc2YTBlcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIDB4MS5mMDNmNTZhODhiNWQ3ODFjOTA1ZjZiNTFjNzZhZTk4MXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEuZjAzZjU2YTg4YjVkNzkxNGIwMGFiZjk3NzYyNzM1ZDFwLTEsCisgICAgLTB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgMHgxLmYwM2Y1NmE4OGI1ZDc5OTBiZmUwNjliYTRkODU4YTdmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIDB4MS5mODBmZWFiZmVlZmE0OGE5Y2QxMTJkNTkyYzQzNzAxMnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAweDEuZjgwZmVhYmZlZWZhNDkyN2QxMGJkZDU0ZWFkNWFhNDZwLTEsCisgICAgLTB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgMHgxLmY4MGZlYWJmZWVmYTQ5NjZkMzA5MzU1MmNhMWVkMzMwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS5mYzAzZmQ1NmFhMjI0ZjU4N2MzZjY4NWQ1NDNlNTNkN3AtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAweDEuZmMwM2ZkNTZhYTIyNGY5N2ZjYmYxMzMyOTg4ODQyZGVwLTEsCisgICAgLTB4MS4wcC03CisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgMHgxLmZjMDNmZDU2YWEyMjRmYjdiY2ZlZTg5ZDNhYWQzZDVjcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtOAorICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIDB4MS5mZTAwZmZhYWJmZmJiYzUxY2QwZTE2ZDhiMDA1ZDY2MnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAweDEuZmUwMGZmYWFiZmZiYmM3MWFkMWUxMTg0YWZjMTljN2VwLTEsCisgICAgLTB4MS4wcC04CisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgMHgxLmZlMDBmZmFhYmZmYmJjODE5ZDI2MGVkYWFmOWY4MDRicC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtOQorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDB4MS5mZjAwM2ZmNTU2YWE4ODdiNjg4MDBiYjVkMjdkYTRmZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAweDEuZmYwMDNmZjU1NmFhODg4YjYwODIwYjYwODdkMWU5MWFwLTEsCisgICAgLTB4MS4wcC05CisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgMHgxLmZmMDAzZmY1NTZhYTg4OTM1YzgzMGIzNWUyN2MwYjU3cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzkKKyAgICAweDEuZmY4MDBmZmVhYWJmZmVlNmZjNGVmY2ZjNjQ1OWRlMTNwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIDB4MS5mZjgwMGZmZWFhYmZmZWVlZmE0ZjNjZjcwZjU5ZDliZnAtMSwKKyAgICAtMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzQxCisgICAgMHgxLmZmODAwZmZlYWFiZmZlZjJmOTRmNWNmNDY0ZDlkN2ExcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuZmZmMDAwM2ZmZjU1NTZhOWE4OTA4YjQwYjMyMDg0OWRwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMworICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIDB4MS5mZmYwMDAzZmZmNTU1NmFhYTg4ODhiNjBiMmNiMmZmMnAtMSwKKyAgICAtMHgxLjBwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgMHgxLmZmZjAwMDNmZmY1NTU2YWIyODg0OGI3MGIyYTA4NTlkcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAweDEuNDhiNWUzYzNlODE4NjNlNTBmZmMyZWNiNzlmM2Y3YzNwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS40OGI1ZTNjM2U4MTg2Njc2N2JjM2I2OWJhYWJlNTM0ZXAwLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzQ3CisgICAgMHgxLjQ4YjVlM2MzZTgxODZiOTk1MzUyYzYzYzBjNjI3MmVjcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDgKKyAgICAweDEuMjIxNjA0NWI2ZjVjY2U3YWQ3NjQyODE1ODM5YzgxNjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDM0OQorICAgIDB4MS4yMjE2MDQ1YjZmNWNjZjljZWQ2ODgzODRlMDZiOGQ0MnAwLAorICAgIDB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzUwCisgICAgMHgxLjIyMTYwNDViNmY1Y2QxZTExOTcxM2E2MzlhMGQwYjQ5cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAweDEuMTA4MmI1NzdkMzRlZDc0ZDcwNDU1ZGY4N2U1ZGUwODlwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIDB4MS4xMDgyYjU3N2QzNGVkN2Q1YjFhMDE5ZTIyNWM5YTk1MXAwLAorICAgIDB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzUzCisgICAgMHgxLjEwODJiNTc3ZDM0ZWQ4ZTYzNDU1OTFiNTc0YTIwNzQ0cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuMDgyMDU2MDExMjdlYzk0YzAzYmIwMzY3MDg1YTNjNjRwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIDB4MS4wODIwNTYwMTEyN2VjOThlMGJkMDgzYWJhODBjOTdhNnAwLAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgMHgxLjA4MjA1NjAxMTI3ZWNhMTIxYmZiODQzNGU3NzE3ZmIwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAweDEuMDQwODBhYjU1ZGUzOTE1YTM3NjM1ZDNkNDdkYzNkZjZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIDB4MS4wNDA4MGFiNTVkZTM5MTdhYjg2NGIzZTkwNDRlNmI0NXAwLAorICAgIDB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzU5CisgICAgMHgxLjA0MDgwYWI1NWRlMzkxYmJiYTY3NjE0MDdkMzJkMjEzcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAweDEuMDIwMjAxNTYwMDQ0NWFmYzEyNDM2ZDVjNmYyMmVjZjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtOAorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIDB4MS4wMjAyMDE1NjAwNDQ1YjBjMzI2MzgyYmM3MzY4OWQzMnAwLAorICAgIDB4MS4wcC03CisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgMHgxLjAyMDIwMTU2MDA0NDViMmM3MmEzYWQ3YzdiZjQwMGJjcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAweDEuMDEwMDgwMmFiNTU3NzdjYTgyMjY0MTdjYmZlZTJmZjNwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtOQorICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIDB4MS4wMTAwODAyYWI1NTc3N2QyOGEyYTQyZDI2YWE5ZWU2N3AwLAorICAgIDB4MS4wcC04CisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgMHgxLjAxMDA4MDJhYjU1Nzc3ZTI5YTMyNDU3ZGMwMjE2YzEwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuMDA4MDIwMDU1NjAwMTEwZTdiNDE1NWE4MWFmNDg0YjFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjcKKyAgICAweDEuMDA4MDIwMDU1NjAwMTExMjdkNDFkNWJkNzJmNGM4ZjNwMCwKKyAgICAweDEuMHAtOQorICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS4wMDgwMjAwNTU2MDAxMTFhODE0MmQ1ZTgyMmY1NTFhN3AwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC05CisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgMHgxLjAwNDAwODAwYWFiNTU1ZGJlMzBlNWNlNzE5MjdjYmYwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLjAwNDAwODAwYWFiNTU1ZGRlMzhlNmNlODZlOTI3N2FhcDAsCisgICAgMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgMHgxLjAwNDAwODAwYWFiNTU1ZTFlNDhlOGNlYjE5NjdjZjI5cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzcyCisgICAgMHgxLjAwMDgwMDIwMDA1NTU1ZmZjMTBmMTI3NTI5NWQ0MzQ5cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgMHgxLjAwMDgwMDIwMDA1NTU2MDAwMTExMTI3ZDI5NzI5OGM5cDAsCisgICAgMHgxLjBwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMzc0CisgICAgMHgxLjAwMDgwMDIwMDA1NTU2MDA4MTE1MTI4ZDI5OWQ0M2M5cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgMHgxLjQ0MTA5ZWRiMjA2YTkzOGZhZDY3MGI2OGFiOTliNzY4cC03MzksCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzYKKyAgICAweDEuNDQxMDllZGIyMDkzMTVhMzg4Y2IxYjQzM2VjZDFhOGFwLTczOSwKKyAgICAtMHgxLjBwOQorICB9LAorICB7IC8vIEVudHJ5IDM3NworICAgIDB4MS40NDEwOWVkYjIwYTc1NmFkNzY3ZDI1MTZhMTU1MTRjY3AtNzM5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA4CisgIH0sCisgIHsgLy8gRW50cnkgMzc4CisgICAgMHgxLjk3NTU5NTZhZDRkMDRhNjA2YThjZDlkZGZiMzY4ZWZmcC0zNzAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAweDEuOTc1NTk1NmFkNGU5YmZiOWMxM2EyN2FlNGMwN2VkMzdwLTM3MCwKKyAgICAtMHgxLjBwOAorICB9LAorICB7IC8vIEVudHJ5IDM4MAorICAgIDB4MS45NzU1OTU2YWQ0ZjY3YTY2NmM5MGNmMmYzNDg4YTQ2M3AtMzcwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA3CisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgMHgxLjQyZWI5ZjM5YWZhNjk5MmJmM2ExMzc5NzE1ZjY2ODNicC0xODUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODIKKyAgICAweDEuNDJlYjlmMzlhZmIwYjA4OGVkNmViNGY0M2NjOWVjN2JwLTE4NSwKKyAgICAtMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIDB4MS40MmViOWYzOWFmYjViYzM3NmE1NTczYzExNjRhOWMwM3AtMTg1LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgMHgxLjk2OWQ0NzMyMWU0NjYwNGExMDVmOGRlMzJkOWRjNjg1cC05MywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDM4NQorICAgIDB4MS45NjlkNDczMjFlNGNiYWJmMmQyODA3MDk2M2IwNDE5NHAtOTMsCisgICAgLTB4MS4wcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODYKKyAgICAweDEuOTY5ZDQ3MzIxZTRmZTdmOWJiOGM0M2E2MDY2OTJhNDhwLTkzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgMHgxLmM4NDY0Zjc2MTY0MmYxNTVmYWIzZTViYjE0NGZiOTEwcC00NywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIDB4MS5jODQ2NGY3NjE2NDY4MWUyOTlhMDEyNDQ4Nzg4NGQ2NHAtNDcsCisgICAgLTB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAweDEuYzg0NjRmNzYxNjQ4NGEyOGU5MTYyODhiZWQ4ZTBlYmZwLTQ3LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMzkwCisgICAgMHgxLmUzNTViYmFlZTg1YWNhNTBhM2M1MGFkMmNjZmZiYjI5cC0yNCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS5lMzU1YmJhZWU4NWNhZGE2NWY3M2YzMmU4OGZiM2NjNnAtMjQsCisgICAgLTB4MS4wcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAweDEuZTM1NWJiYWVlODVkOWY1MTNkNGI2NzVkMWMzOTIzZjZwLTI0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzkzCisgICAgMHgxLjVmYzIxMDQxMDI3YTFiZGVjNTI1ZjZkMmI0OGE0NjM3cC0xMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMworICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIDB4MS41ZmMyMTA0MTAyN2FjYmJmY2Q0Njc4MGZlZTcxZWFkMnAtMTIsCisgICAgLTB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAweDEuNWZjMjEwNDEwMjdiMjNiMDUxNTZiOGFlYWM1ZmVlYTVwLTEyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgMHgxLjJjMTU1YjgyMTNjZWZjNzkzNDBmOGUzODYyNjM0NTZhcC02LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzk3CisgICAgMHgxLjJjMTU1YjgyMTNjZjQ3N2U4YWYwMTMyYzJhZTIzZDRhcC02LAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMHgxLjJjMTU1YjgyMTNjZjZkMDEzNjYwNTVhNjE2MmEzOTVmcC02LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgMHgxLjE1MmFhYTNiZjgxYzk3NTg2MjI3MmYwZjNiMTNmNTg2cC0zLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLjE1MmFhYTNiZjgxY2I5ZmRiNzZlYWUxMmQwMjk1NzFmcC0zLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDAxCisgICAgMHgxLjE1MmFhYTNiZjgxY2NiNTA2MjEyNmQ5NDljNTNjN2VicC0zLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgMHgxLjc4YjU2MzYyY2VmMzY0ZGY5NTQ0ZjExYjBhNDk5MDMxcC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDAzCisgICAgMHgxLjc4YjU2MzYyY2VmMzdjNmFlYjdiMWUwYTQxNTNlNDM3cC0yLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDA0CisgICAgMHgxLjc4YjU2MzYyY2VmMzg4MzA5Njk2MzQ4MWRkNjY1MjNmcC0yLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIDB4MS45NDc2NTA0YmE4Mzk5ZjViOTdjYWUzNWJlYjc4YzNjNXA3MzgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIDB4MS45NDc2NTA0YmE4NTJlNmMwOWM4NTY3YzAxYzVhNjY0OHA3MzgsCisgICAgMHgxLjBwOQorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIDB4MS45NDc2NTA0YmE4ODU3NThhYTVmYTc1NDVlMTBlOGU0NnA3MzgsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIDB4MS40MWM3YTg4MTRiZTE5MmE1ZGYyNWIwNDJhZjgyNGVmZHAzNjksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNworICB9LAorICB7IC8vIEVudHJ5IDQwOQorICAgIDB4MS40MWM3YTg4MTRiZWJhMGUzMjMzMDBmNzc3ZGE2NTg1NHAzNjksCisgICAgMHgxLjBwOAorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIDB4MS40MWM3YTg4MTRiZmZiZDVkYWI0NGNlZDI2ZmFjY2JmYnAzNjksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwOAorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIDB4MS45NWU1NGM1ZGQ0MWIyMDYwMGRkNjAxYTBhZTY3MmZmNHAxODQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDQxMgorICAgIDB4MS45NWU1NGM1ZGQ0MjE3N2Y1M2Y0ZDUyMTlkZjExY2EzYnAxODQsCisgICAgMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIDB4MS45NWU1NGM1ZGQ0MmUyNzFmYTIzYmYzNTg1YjY1NTA2MHAxODQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNworICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIDB4MS40MjU5ODJjZjU5N2E0ZDUyYzg5ZWE4NTdiYmFhODA3YXA5MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgNDE1CisgICAgMHgxLjQyNTk4MmNmNTk3Y2QyMDVjZTNkNWI0ZWRiMDMxNzU2cDkyLAorICAgIDB4MS4wcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAweDEuNDI1OTgyY2Y1OTgxZGI2YmQ5N2FjMTRjMzVlNjY2YzZwOTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDQxNworICAgIDB4MS4xZjQzZmNjNGI2NjFhODk0NGFjMzg5YjYwOWUwZjc0ZXA0NiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgMHgxLjFmNDNmY2M0YjY2MmM3ZDg0Nzg4NDAxODQyMTc0MDc0cDQ2LAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTkKKyAgICAweDEuMWY0M2ZjYzRiNjY1MDY2MDQxMTFhY2UwMTA0ZmM5MGVwNDYsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIDB4MS4wZjJlYmQwYTgwMDE3Y2ZhYzU2YzMwODc0YWZiYWI5OHAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgMHgxLjBmMmViZDBhODAwMjA0OTIyM2YxNzA4ODJiNWVlNWVmcDIzLAorICAgIDB4MS4wcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAweDEuMGYyZWJkMGE4MDAzMTNjMGUwZmJmMDhhYjc4ODY4NjZwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDQyMworICAgIDB4MS43NDllYTdkNDcwYzY4MWU0MzYxOGVjMThkNTNmMWIyMXAxMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgMHgxLjc0OWVhN2Q0NzBjNmRmMGJlMDBlMDg0YTgxNWQxZGU2cDExLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAweDEuNzQ5ZWE3ZDQ3MGM3OTk1YjMzZjg0MGFlMWY3NmUyZTdwMTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMworICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIDB4MS5iNGM5MDJlMjczYTU0ZmRmYjY3NzcxNjZlNjc2MGRmYnA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAweDEuYjRjOTAyZTI3M2E1ODY3OGQ2ZDNiZmRiOTNkYjk2ZDBwNSwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDI4CisgICAgMHgxLmI0YzkwMmUyNzNhNWYzYWIxNzhjNWNjNTAzMjAxNDljcDUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDQyOQorICAgIDB4MS5kOGU2NGI4ZDRkZGFiZjM0ZDU4MmNkMjkwOWFhZmIyYXAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzAKKyAgICAweDEuZDhlNjRiOGQ0ZGRhZGNjMzNhM2JhMjA2YjY4YWJiYThwMiwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDMxCisgICAgMHgxLmQ4ZTY0YjhkNGRkYjE3ZTAwM2FkNGJjMjE1ZDRlZjg2cDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQzMgorICAgIDB4MS41YmYwYThiMTQ1NzY4YTU1ZGE3MzIyMTQ5OWZjNGNmYnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgMHgxLjViZjBhOGIxNDU3Njk1MzU1ZmI4YWM0MDRlN2E3OWUzcDEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS41YmYwYThiMTQ1NzZhYWY0NmE0M2MwOTdiODdiYzgzM3AxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAweDEuZmZjMDQ1NjkyZmM5ZGJjN2I3ZTAzMjU3NmU1ZTI2ZjhwMTAyMywKKyAgICAweDEuNjJlNDFmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgNDM2CisgICAgMHgxLmZmYzA0NTY5MzAwOWQzZDA2NTA2MmY5MjY3ZGZmNTVlcDEwMjMsCisgICAgMHgxLjYyZTQycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAweDEuZmZjMDQ1NjkzMDQ5Y2JkOTEyMmMzNGNjNjI3NzY4ODRwMTAyMywKKyAgICAweDEuNjJlNDIwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLmM4N2YyMTc3NWEwZjFhMjU3NTVmYjAyN2Y5NDk0OWExcC0xMDcxLAorICAgIC0weDEuNzJlNDIwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgMHgxLmM4N2YyMTc3NWE0ODJhMDlhNDRhZjU5YzNjM2FlNDRicC0xMDcxLAorICAgIC0weDEuNzJlNDJwOQorICB9LAorICB7IC8vIEVudHJ5IDQ0MAorICAgIDB4MS5jODdmMjE3NzVhODEzOWVkZDMzNjQyMzI3YmIyNWM1ZnAtMTA3MSwKKyAgICAtMHgxLjcyZTQxZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDQ0MQorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcDEwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDIKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuOTk5OTk5OTk5OTk5YXAxMDIwCisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjE5OTk5OTk5OTk5OWFwMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDQ0NAorICAgIEhVR0VfVkFMLAorICAgIDB4MS42NjY2NjY2NjY2NjY3cDEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDUKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuYjMzMzMzMzMzMzMzNHAxMDIxCisgIH0sCisgIHsgLy8gRW50cnkgNDQ2CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDQ0NworICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDgKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTAKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgMHgxLjcyNDA0NmViMDkzMzhkMjk5MWEzMDg5M2U3ZjQxMDhkcDQsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDQ1MgorICAgIDB4MS4zM2RlZGM4NTU5MzVlZmFhYWY1NzhjZWQzZjgyMWY5NnAyLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTMKKyAgICAweDEuNWJmMGE4YjE0NTc2YWFmNDZhNDNjMDk3Yjg3YmM4MzNwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgMHgxLjViZjBhOGIxNDU3Njk1MzU1ZmI4YWM0MDRlN2E3OWUzcDEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NQorICAgIDB4MS41YmYwYThiMTQ1NzY4YTU1ZGE3MzIyMTQ5OWZjNGNmYnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDU2CisgICAgMHgxLjE4YmQ2Njk0NzFjYWE1NTg1YzcxY2MzMmE3OTJhYzg1cDEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTcKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTgKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTkKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjAKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjEKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICAweDEucDAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDY0CisgICAgMHgxLnAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjgKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDY5CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzEKKyAgICAweDEuZDJlMTcxY2YwNDg3OTNlMTZhN2Y5NDA2ZTAwYzJkZDlwLTIsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgMHgxLjc4YjU2MzYyY2VmMzg4MzA5Njk2MzQ4MWRkNjY1MjNmcC0yLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIDB4MS43OGI1NjM2MmNlZjM3YzZhZWI3YjFlMGE0MTUzZTQzN3AtMiwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIDB4MS43OGI1NjM2MmNlZjM2NGRmOTU0NGYxMWIwYTQ5OTAzMXAtMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3NQorICAgIDB4MS5hOWJjYzQ2Zjc2N2RmYjBkNGVlYzJiMTMzN2EwNGI5YXAtMywKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3NgorICAgIDB4MS42MjAyMjdiNTk4ZWY5OTQ5ZTYwZTQ0ZGM0NWQxNGQwY3AtNSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NworICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ3OAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ3OQorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODAKKyAgICAweDEuZmZmZmZmZmZmZmYyYTFiMGUyNjM0MDBkMTVmYzUyZmZwMTAyMywKKyAgICAweDEuNjJlNDJmZWZhMzllZnA5CisgIH0sCisgIHsgLy8gRW50cnkgNDgxCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwOQorICB9LAorICB7IC8vIEVudHJ5IDQ4MgorICAgIDB4MS4wMDAwMDAwMDAwMDdiYmNmZmIwNmY4ZmRhYjg5NmRiMHAtMTAyMiwKKyAgICAtMHgxLjYyMzJiZGQ3YWJjZDJwOQorICB9LAorICB7IC8vIEVudHJ5IDQ4MworICAgIDB4MS5mZmZmZmZmZmZmY2Y3NzlmZjYwZGY0MGM2MzE0MTlhMnAtMTAyMywKKyAgICAtMHgxLjYyMzJiZGQ3YWJjZDNwOQorICB9LAorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9leHBmX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9leHBmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MDA3NDU4Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2V4cGZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTQxOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGZsb2F0LCBmbG9hdD4gZ19leHBmX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgMHgxLmUwZmFiZjA4MTIyMjc4MGQ3NGMwMGZkYTMwYWEzOTQzcC0xLAorICAgIC0weDEuMDAwMDA2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS5lMGZhYmVjYmYyY2E5YWNkMjVlZWY2M2FmODU4ZWQ2MHAtMSwKKyAgICAtMHgxLjAwMDAwOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAweDEuZmMwM2ZjY2ZiOTEzMTY3ZWNmYTg0ZjQ4ZjViNzIwNWJwLTEsCisgICAgLTB4MS4wMDAwMjJwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLmMzZDY0MmZmOWJmMmQyOTRjMGNlMDg4ZThiYWQyN2IzcC0xLAorICAgIC0weDEuMDAwMWIwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS5mZjgwMGVmYWViYjgyMThmYzVkNDkxYjk4Njg2ODlhYXAtMSwKKyAgICAtMHgxLjAwMDIwOHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLjhlYmQ5ZDA0NDYxODJlOTA1NmY2MDQ4OWZjZDAwMmNkcC0xLAorICAgIC0weDEuMDAwMzgwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS5lMGY5OTUwMTBmZDk2ZDNmMjk0YzNmZmUwZTUxMjQyNnAtMSwKKyAgICAtMHgxLjAwMDlmMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuNzhhM2JiNGMxN2FkZjViMmQ0MGU2ZWUzZGJkNDg2NmZwLTIsCisgICAgLTB4MS4wMDBjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLmZmZGZmZDAwM2FhY2JmY2E2NTkxZTdhMzgzNjhiOTRjcC0xLAorICAgIC0weDEuMDAyMHAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLmZkZmY0MTZhYTM4MjdkNjMzNWExZmZhNDNkNDQwNTYycC0xLAorICAgIC0weDEuMDBlMHAtOAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLjk5MDA3ZmZiZGZmYWMzMWRmZjkwZGE1ZWU0NmExNmZhcC00NywKKyAgICAtMHgxLjAwZTBwNQorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLjM1YzBkY2ZmZmI0NDE5ZGMyOTU1NWMyMzJmM2NkY2E3cC0xLAorICAgIC0weDEuMDE0ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLmZiZWQ5YWM3ZWQwMzJhYmZjNzYzMDZhM2UxZGM4MTZicC0xLAorICAgIC0weDEuMDVhNHAtNworICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLmVmZGRiOWNjY2Q3M2Y3MWE0YjJiOGMwMWE1N2FlNzVmcC0xLAorICAgIC0weDEuMDY0Y3AtNQorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLmZmZmRmMTAxMGYzN2UyZjFmNWZjYThiOWMxM2FmZjcwcC0xLAorICAgIC0weDEuMDc4MHAtMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5lZmMzNTY1MzkxMmZhZGU2YTE3YThmOGVmNDEwOTY3OXAtMSwKKyAgICAtMHgxLjA4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEuOGIzMDk2ZmZmY2JlNzM3OTYxZjhjNjFjZGY5ZDcxMzdwLTEsCisgICAgLTB4MS4wOTJjNjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS5mYmRkMWNlNTYxZjlkMGE2ODk4MTJlNWJlYTA4OWY5Y3AtMSwKKyAgICAtMHgxLjA5Y2NwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS5lZmExZWY4YTE5ZDQwYmIyMmM1ZDNjMzE1OTkxZTE1ZnAtMSwKKyAgICAtMHgxLjBhMjhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS5mZmZmZWYwOWNlNDdlY2MwM2QxZDExZjk0OTFlNjUxOXAtMSwKKyAgICAtMHgxLjBmNjMyMHAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5mZmZmZWYwOWMwNDdlZDM2ZjhhYTFhN2U2N2UyNjUyOHAtMSwKKyAgICAtMHgxLjBmNjRwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuODg5MDYzNmUzMWY1NDNiMzg1M2IxYjMwNWRhZWI5MzNwLTEsCisgICAgLTB4MS4xMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLmZmZmZlZjAwMDA0ODNmZmYzMzRhYWM1ZGFiZmQxYzdkcC0xLAorICAgIC0weDEuMTBwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuZWYxYzJkMDAyZjc2MzlkNGQ4MmVkYzAxZWFhZDFkZWRwLTEsCisgICAgLTB4MS4xMmNjcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuZGU3ZjAxMGQxYzY0OTQxMzliMDUzMWJkNWI4ZjEwOGJwLTEsCisgICAgLTB4MS4xNTM0cC00CisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuMDIwNTdkMTI0NWNlYWY2MmEyMTA5OWQ0NDQxYTM2ZGJwLTEwMSwKKyAgICAtMHgxLjE4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS5lOTA0MDczNGExNjMzMzU2N2NmNmYzMWJjOTBkNDM1NXAtMjcsCisgICAgLTB4MS4yMTE1ODhwNAorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLjhkMDNmOGZmZmZiMWEyNjIyYmJhODFkNmFiNGE5MmZmcC0xNCwKKyAgICAtMHgxLjI4N2QwOHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuZTk3ZTQzMDI1N2U3NWY0OTdmNmEzZWZlNTFmZjUwNTRwLTExMiwKKyAgICAtMHgxLjMzZWZlYXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuYzY5YzUxOGVhN2M1ODg0MmMxNzhmYmQ5ZThjZjUzNmVwLTExNywKKyAgICAtMHgxLjQyMTg4OHA2CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuZGYyYTBmOTJjMTdlOWZmMGJmYjc3YjdhYmJlNjM3YTZwLTEyNiwKKyAgICAtMHgxLjVhZDZiNnA2CisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuNzgyZjIzMDY4YzEwYjFjNTUxM2RjM2IwMTkyZDMwZDRwLTEyNywKKyAgICAtMHgxLjVlOTQ0NHA2CisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEuNzEwNjAyZjlmNDI4ODM0OGNjODM0ODQ3MmEyNGY5M2RwLTEyNywKKyAgICAtMHgxLjVlYTdmMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEuNjVhYjc5OTRmZjM0NDBkY2QzZWU3ZjliOWEwMjQyM2FwLTEyNywKKyAgICAtMHgxLjVlYzdmMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuNjAzMWNjNDU0ZjFjM2UwMTI2YjcxYmYyMWU5MDNkMjBwLTEyNywKKyAgICAtMHgxLjVlZDdiZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEuYjc4ZjY4MDAwMzBmYjdlYzc5ODRhM2U3NDE5ZDZmYzJwLTEyOSwKKyAgICAtMHgxLjYzODA2NnA2CisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEuZjkzNjNmMzU4MzI3OWFjMjRlNzU3ZWViNzY1NDkxMGNwLTMsCisgICAgLTB4MS42NjRlZTBwMAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLmQ2MTdmMTBlNjNhZGZjZDY3NDE0YzA4ZGM2ZjlkMDEwcC05LAorICAgIC0weDEuNjg1YjQ0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS5jZjhjNDUwM2JmMTdkOGM3NjQ3ZTkzYTE1M2FmMzdiNnAtOSwKKyAgICAtMHgxLjY5NDFwMgorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLmQ0NzBiNzBlOTBkNTA5N2U4N2I5MjVjNWY2M2ZlZTdkcC0xLAorICAgIC0weDEuNmMzMzI4cC00CisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuYTljMGE1MDEwZGU4NWY5YTYwYzgxMDRmMzdmYzU5N2ZwLTEsCisgICAgLTB4MS43OWM5ODRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS5kZmYxMjZmZmZjZGRlMzQzNjMyMmJhMDlkYjQ1NTZlMXAtMiwKKyAgICAtMHgxLjgzZmYzOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLmRhMWI4MzAxYWY4MTM4NGI4ZTQ5NWM5YTRmOTc0OTdmcC03MiwKKyAgICAtMHgxLjhhNTI5ZXA1CisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEuYmFiYWY0ZmZmZmUyOTAyNWNlNzUxMDk0YWVjZjliMDNwLTE5LAorICAgIC0weDEuOTNlNzg4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS42ZTk1M2FmZmZlYzdmYzNiNWRkYTE3YzgyMDY3ODgyMXAtNDMsCisgICAgLTB4MS5kNzIzZjhwNAorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLmZmMGZmNmYzZDlmNDkzZWQ2MTAzNjQ4NjFhOTk1NjY0cC0xLAorICAgIC0weDEuZTA4MmM0cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLmZmMzhhNDBhM2JjMzNmNjVmNGJlZDVkZTBiZGZjMzk3cC00NSwKKyAgICAtMHgxLmU3ZmZmZXA0CisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuODAyODk5MDAzNGZjYzhmMzM0NDMzMjFkYjA4YzZkZThwLTIsCisgICAgLTB4MS5mNWY5MjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5mZjAyNDhmMWExNzQxOGU2M2Q0NzExZjNlNjZiN2MyNXAtMSwKKyAgICAtMHgxLmZiZWNwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuZmYwMjQ2ZjI5ZjJjMjZjNWVkNTFkMTY0OThkMWQ2OGVwLTEsCisgICAgLTB4MS5mYmYwcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLmZhODdmNjZmODEyODQ5MjkyMjkwYTlmNjI2OGVmMmY5cC0yNCwKKyAgICAtMHgxLmZlN2ZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEuZmYwMDQ2ZjJkNzE2YzA5NTc3MGQ4NDllMTgyYTNiYjJwLTEsCisgICAgLTB4MS5mZmYxZmVwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuZTBmYjI5MTE2NTUwMDY0MjJhMTVjM2MwM2Y4Y2U4NDdwLTEsCisgICAgLTB4MS5mZmY4ZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS5mZjAwNDBmNGQ2Y2FjMzE2YmRjZmExM2NjNWFmN2U3Y3AtMSwKKyAgICAtMHgxLmZmZmVwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuZmZlMDAxMDgxYTI4YzQyMDI2MGExNjFiMTJmYmI5N2RwLTEsCisgICAgLTB4MS5mZmZmN2VwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuMDAwMDAxMDAwMDAwODAwMDAwMmFhYWFhYjU1NTU1NTdwMCwKKyAgICAweDEucC0yNAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLjQyNjQzNmY1YWVjMWMzMTNhNmQyYmJjZDU4YTM4OGRlcDkyLAorICAgIDB4MS4wMDAwMjJwNgorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgMHgxLmE2MTVlNTBhNWU1NGUxZjJmN2U1N2MzZjBmZjkwYzYxcDAsCisgICAgMHgxLjAwMDRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS5kOTVkNjMwMTRjZTVjZGNkMTEzZmVlMGE0YmU2NzkwMnAyLAorICAgIDB4MS4wMDIwMzhwMQorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLjc2MmI2MzA0ZTE5ZjM1MThlOTAzNDhiNWQ5ZGM1NDRlcDExLAorICAgIDB4MS4wMDIycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS5hNjM2ZTAwYTBjZDViODUyNjI3NTZkNTBiOTVjY2M4OHAwLAorICAgIDB4MS4wMDJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuOGNhNmQzMDU4N2FmNTA0YTZmNjlkM2E1N2JmM2U2YThwMTEsCisgICAgMHgxLjAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5kZmEyZDcwMWRhOThhMTQ4MDYzYzNjYTZkMTNmMWJjZXA5MywKKyAgICAweDEuMDQ1Y2I2cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS42MzQwZTcwMDAwZTI5NmU3OTA3MzY3MGVmOWMwOTE1ZHAxLAorICAgIDB4MS4wNTUzM2VwMAorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLmVmNTk1YjAxODU0OTQ0MmVjNzNlM2Q1MTYxNzY4ZDE2cDUsCisgICAgMHgxLjA4MGQ3NHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEuODlhY2RmMjZmOTkwMTJlYzUyN2M1ZTllN2M0NzExN2ZwNDcsCisgICAgMHgxLjA4MTBlZXA1CisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEuZjMzYmVmMDAwMDNhYjkzYTQ2N2M5NGZjOTVkZWVkMzBwNSwKKyAgICAweDEuMDg4ZDc0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS5iMGYzNGFmZmZmOWRjMjQzMGIzMWMyZWEwNGY5ZGY5MHA5NSwKKyAgICAweDEuMDk3ZjZhcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS42YjRhZTU1MjI2MDRlMTAyNzMyODNlZmJmOWY2MjZjOXAxLAorICAgIDB4MS4wYjBkYmFwMAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLjAwMDAxMTAwMDA5MDgwMDMzMmQ1NjJlZDYwMmUzODI0cDAsCisgICAgMHgxLjEwcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMHgxLmIzODBiMGY2YTEyZmExOWRmMzkxZjUwMzRiOGFlMzFicDAsCisgICAgMHgxLjEwMDlhNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLmI1ZDI5M2Y1YmZhMjA0MTY3MjE5OTljNmJlMDNhMTk1cDAsCisgICAgMHgxLjEyYzFmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLmI2NjA5ZmY3ODVhMDQ2MzA1MzEzNTRkMTkyNGY4ZDExcDAsCisgICAgMHgxLjEzNjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS43ODI0MWFmZmZmZDFjZjk2N2E5ZWVjNjYzZjQ1Njc3ZXAxLAorICAgIDB4MS4xM2YzN2FwMAorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLmI3NzY2MGY1OGJjYjFlZTJkNzU3YTk3ZjgyYzgyMjNkcDAsCisgICAgMHgxLjE0YWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS43YjRkNmYwNmNmMGZiZDFmYmMwNWQ1MDkwODM1MjA3NXAxLAorICAgIDB4MS4xNjE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS4yNzY1ODEwMDAyYzJlYjQyNjUzMDhhYzhiMTJhZmEzYnAwLAorICAgIDB4MS4yNTI3MjZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS45MmIwYWNmZmZmMWM4NjQ2ZDQwNzU5NzZmNjJkZmJjMnAxLAorICAgIDB4MS4yNTY5M2VwMAorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLmZiZDIyNGM3ZTE5NzBiZWQ4NjhmYWRjODAxMmM4NWFlcDEzLAorICAgIDB4MS4zNjQ0ODZwMworICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLjA2MDA3ZDAwMDg0MzQ5Zjk0OTExMDRmMjBjODlmMmY5cDI4LAorICAgIDB4MS4zNmU2OTZwNAorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLjVlYzE4NDAwMDAzNDE5YWQzODE1YjQxYzQ1Mzg0ZGNjcDAsCisgICAgMHgxLjQyNzg5OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLmIyM2ZkYWNmYTNlMGQ5ZDIxYjM0Mjk4M2UxNTlmZWRjcDExOCwKKyAgICAweDEuNDk0NzdjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS5mZWEwMDBlMjQzODIxNGNhOTE1NWQ0YzkxYmQyOWU5YXAxMTksCisgICAgMHgxLjRjYjMyY3A2CisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEuZjY3MTc2YzE5ZmVlMGM5YThkMWM5Y2JiMmQ3M2I2MTdwMTIwLAorICAgIDB4MS40ZjY4NmFwNgorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLmQxYzI0MTAyNGQ4NDFiZDUyOTcyYmU2MTgyNjMzNzMzcDEyMSwKKyAgICAweDEuNTFlMDkwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS5jZGUyZGQwNzBjN2RlOWNiNThjMGNhZWQ5MjcxNDVkOHAzLAorICAgIDB4MS41NWI0ZTJwMQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLmY3MTA5MDA5Y2QzNDk0YWY1MjZjMThhZjAxOTA1NWVlcDAsCisgICAgMHgxLjU5ZTA4ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLmZhN2MyNmMxMmFmYjg3YjViMmIxNTFlNjU0ZjZlYjkwcDAsCisgICAgMHgxLjVkNThhZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLmNmM2Q0NmNiOThhNTcxODcxZjZkZWUxYTgwNTgxYTUycDEyNiwKKyAgICAweDEuNWZiN2VjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS5mZDg3MThmM2QzZWQ4ZjRhNWQ4ZGVjNmFlNzMyNzE1OXA3LAorICAgIDB4MS42Mjk0ZTJwMgorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLmZlYWZmZWYzZTczNmI3MTU2OWE0NzQwNDIwNTRlOGI3cDcsCisgICAgMHgxLjYyYmEyMnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEuZjc2YmE0NjczM2Y0MTQ2YTBmOTRiM2QxMzExNDk0YmNwMTI3LAorICAgIDB4MS42MmQyZTJwNgorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLmZkN2I5ZjAxYjRkZjA4ODU1ZmViMjkwMjMyMzJmZDk5cDEyNywKKyAgICAweDEuNjJkZjI0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5mZjY5MWU2ZGQ3MWJjOGNiMWYxZmNmZmNjMzJjYjk4MnAxMjcsCisgICAgMHgxLjYyZTMwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuZmZjZTBhOWU0ZmM2NzYyYzkxZjFhMGNlMzU4YTg0ODdwMTI3LAorICAgIDB4MS42MmUzY2NwNgorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLmZmZmMwMTA5YzQwMmQ4YjIzYmZlYTNhMTQ4MzU4MzFicDE1LAorICAgIDB4MS42MmUzZjBwMworICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLmZmZjEwODY2MzJiMGU5YjkzYmM1YmU0NGQ5YzFkZWE3cDEyNywKKyAgICAweDEuNjJlNDEycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS5mZmY2MDg0NzA3ODZkN2U0N2VmMTE2NjJmMTc5MGMyYXAxMjcsCisgICAgMHgxLjYyZTQxY3A2CisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuMjMyYjk2ZmZlYzE0N2JiMzE2OTU1OTU4NzhiYTRmOWRwNCwKKyAgICAweDEuNzM1ZTcwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS44ZDJjOTkwMzE3NjYwZTIxYTY0YmE3NzIzZjVlMGVkM3A4LAorICAgIDB4MS43ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmVkMzc5ZjAyNTc4MWRkY2EyNDBjODMzNzVlZTQ5NmFicDcwLAorICAgIDB4MS44OTY4OWFwNQorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS4zNjg3NDEwMDAwZTJjOWY4NzMyMjA4Yzk3OTE5ZmIwZXAwLAorICAgIDB4MS44Yjc2ZDBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuMzEyZTc5ZmY1MjJhZjcxYjllMmU4MzdiZjg4NzI5NzJwMiwKKyAgICAweDEuOGZlMGNhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuNzAwOGYxMDAyMDIyNmU0ZjU5YjVhZmQ4YzExN2MwOTZwNCwKKyAgICAweDEuOTE1YWZjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuZGU3NWU5MDIyNWVjNmRhMmNmYjM5ZGNhNjQ0MGI2ODhwNzUsCisgICAgMHgxLmE0ZTQzOHA1CisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjc5ZjA2NTAwOTVmZDQyNmRjZThhYTgwM2U5YTRmYzk4cDksCisgICAgMHgxLmE4MmYzMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMHgxLjJlMDJkNmZmZmZmZWQ5N2YyN2RjYzM3NDI0NzJmZmE0cDEsCisgICAgMHgxLmI3ODQ5OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5mYTJiNjBmZmZmZmVlYTFjN2JkMWM3OGJiNWM0NmIxN3A5LAorICAgIDB4MS5iYWUxOTZwMgorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS4wMDA3MzRmZmZmZmZiYWJhNDgyMGEyYjc5ZDI5NmQ2M3AwLAorICAgIDB4MS5jZDM5ODJwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLmQ1NDE1OGY1NDM0ZWRiMmEyMzQzNTliZWZiMjIwOWJjcDEwLAorICAgIDB4MS5lMjY1NzBwMgorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS45OWZiMjkwMTc2ZWMwMTBkMDY4YzVmODg4YTE4ZDg0N3A4NywKKyAgICAweDEuZTYzMmFhcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuYmM4ZTUzMDAwMDNlMTJlYWYwZWEwNGI4YzUwNzY0NzRwMiwKKyAgICAweDEuZjAyZDY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuNTY1NjcyZmZmZmU3ODE2OGNlYTllZDFkZWVkMmM0NzJwMSwKKyAgICAweDEuZjdiMDVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLmE2NjRkY2VkN2NjMzNlZGU5NjUzOTI3MjJiMGQ4N2JmcDIyLAorICAgIDB4MS5mN2ZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS5mZThiZmQzODc2MjQ5MGM3ZjY4ZTgwYTRiZGYzYTE3ZHA5MCwKKyAgICAweDEuZjg5NmEycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuY2MyNGQ1MGMxNjUwMDA4NDc1NGZiZGRjNjBlNzI3NmNwMiwKKyAgICAweDEuZjhmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEuNzIxNTFjNjlmZjBlOTg1MGI4OGNiZDlhNjAwZmVhNTBwMTEsCisgICAgMHgxLmZmOTAwZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLjNkNTlkMmQ4YjIyYjQxYzJiYjYzMzRjOWJlN2JlOTAycDkyLAorICAgIDB4MS5mZmRmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS43NDg3NTMwMDA0MmI5NDNiYTM2ODk5NGVlYzhkY2IwZXAxMSwKKyAgICAweDEuZmZmYmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEuZDhlNjA5MGNlZmU4MDQ4Nzk0OGMwMWVmZTNjZjRjNWFwMiwKKyAgICAweDEuZmZmZmRjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuMDAwMDAwZmZmZmZlN2ZmZmZlMmFhYWFiYjU1NTU3MDJwMCwKKyAgICAweDEuZmZmZmZjcC0yNQorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS4zMDRkMWVkOTUxMWJmNWE2YTViMjBlNGNkYmY2ZDhmZnA2OSwKKyAgICAweDEuN2ZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEuMzA0ZDZhZWNhMjU0YjNhZjRiYzVkNjI5M2Q1ZjY1YzdwNjksCisgICAgMHgxLjgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuMzA0ZGI3MDAwNjkyNDg2NmJjMTg0NTA5N2M5MWU0ODhwNjksCisgICAgMHgxLjgwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLmY4ZTY0NDExYjRjNzQyOWYyNjBjYjcyNTM5ODgwOTE5cC03NiwKKyAgICAtMHgxLmEwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLmY4ZTZjMjRiNTU5MmUzNDIxZGYyN2FjZjFlMDgwMTQ0cC03NiwKKyAgICAtMHgxLmEwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuZjhlNzQwODUxNWVjZjAwOWNiNWI3ZmU4MDAwM2FlNzRwLTc2LAorICAgIC0weDEuOWZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEuNTU3NmYwZGNhYzIxNzg3ZjJkNTdiMTRhNzAwMjI0ZTNwMTE1LAorICAgIDB4MS4zZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS41NTc3OWI5ODRmM2ViM2M4YTUwM2I0YThlMjQ4OWQ5OHAxMTUsCisgICAgMHgxLjQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuNTU3ODQ2NTQ0N2I5ZDVmODMyNDZhZjFlNDhlODIyNWJwMTE1LAorICAgIDB4MS40MDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS4wN2I2OGQ1MDVhNjBkZDQ0NGI4YjJiZGZlMDYwMzhjZnAtMTI3LAorICAgIC0weDEuNjAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEuMDdiNzExMmJjMWZmZTE5ZDNlNzAzZTRhNzk0ZjczNzJwLTEyNywKKyAgICAtMHgxLjYwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuMDdiNzk1MDc2YjhjYWE0MTIzMzRlN2RkZjE4YjAwZjVwLTEyNywKKyAgICAtMHgxLjVmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLjAzOTkyNDQyOGY0NzUxMWMwM2U3NWRkNjIzYmM0N2UxcDc1LAorICAgIDB4MS45ZmZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS4wMzk5NjUyOGUwNzRiZWJjZmQ3NjQxNmZjMmMwZWI5MnA3NSwKKyAgICAweDEuYTBwNQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIDB4MS4wMzk5YTYwZjQxZGJjMmIwODUyMjEzMTJmNTA1MDg5ZHA3NSwKKyAgICAweDEuYTAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuYWViYTRmMzUwMmQ4Mzc5NTE4ODk3NDA4OTA3NDc2MDlwLTcwLAorICAgIC0weDEuODAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuYWViYWJhZTNhNDFiNGJlM2Y1NzZlNzAzMDNhMzc5MzJwLTcwLAorICAgIC0weDEuODBwNQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS5hZWJiMjY5MjYwNGEwYmUxMGNjOWYzYTA5ZTc3YWFlMXAtNzAsCisgICAgLTB4MS43ZmZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIDB4MS5mMTA0NzU0NTQ2NWY5N2FhZDY3NzRkZmUxNmI5NjBlMnAxMjYsCisgICAgMHgxLjVmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLmYxMDU2ZGM3YmYyMmQzZGUwZWQ1NzYxNWJjNTAxZjhicDEyNiwKKyAgICAweDEuNjBwNgorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIDB4MS5mMTA2NjY0YWI0Mjc2YjgzMzk5MzA1MGM5YWEwOWE5NXAxMjYsCisgICAgMHgxLjYwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLjdmZDhiNGU2ZTg3NWI1OTg4YWViMmU5MDgzY2FmNzkxcC0xMTYsCisgICAgLTB4MS40MDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDB4MS43ZmQ5NzRkMzcyZTQ0ODZmNzIzNThhY2RkMTI2OTBlNXAtMTE2LAorICAgIC0weDEuNDBwNgorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS43ZmRhMzRjMDVkNDkzODdiMzgzOGM1YzJiZmFkMDEyM3AtMTE2LAorICAgIC0weDEuM2ZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAweDEuNmEzMmUxNjA2NDVkYzUzNjRkYTkzYzEyMzIxNWM1OTFwLTEwNywKKyAgICAtMHgxLjI3NDc2OHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLjQyYTI4MGI0N2YxZTUwZTczMDdjOTU5OWU5NDk3NWRhcC0xMjEsCisgICAgLTB4MS40ZThlZDBwNgorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS4xZjY0NzlkNmU3OWQ5MjQ3NTljN2Y0NDE2MGFkMzBlM3AtMTM1LAorICAgIC0weDEuNzVkNjM4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuZmZmZmZmZWZhMzllZjM5YTdmMjU0NTM1ZDkzNTE0MmJwLTIsCisgICAgLTB4MS42MmU0MzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAweDEuMDAwMDAwZjdkMWNmZjE5ZjBmMzMwMzZjZjAxYzEyMGNwLTEsCisgICAgLTB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuMDAwMDAxZjdkMWQxNjk3MGRmY2IzNjBlZmE5MWZlYTBwLTEsCisgICAgLTB4MS42MmU0MmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAweDEuNmEwOWU2NjIyYWViZmJkN2E0YTAzNzc3MjIzYzYwNGZwLTEsCisgICAgLTB4MS42MmU0MzBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAweDEuNmEwOWU3MTcyZmRmNWEyZTU3NzFmMzg2NmEyNTUxNGVwLTEsCisgICAgLTB4MS42MmU0MmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAweDEuNmEwOWU3Y2MzNGQzMTMwNzg0MDk3YjhkOGE3YzkwMDhwLTEsCisgICAgLTB4MS42MmU0MmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuYWU4OWY5OTIzY2JiNDkxODNhYWJiMzNiOWRlMWJjODJwLTEsCisgICAgLTB4MS42MmU0MzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAweDEuYWU4OWY5ZmRkZjM5YmIxYmI5NGJhYTM2Yzk4YWJiN2JwLTEsCisgICAgLTB4MS42MmU0MmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuYWU4OWZhNjk4MWI4NDgwN2Q3OGI3ZjI1OTEwOTU2ZGVwLTEsCisgICAgLTB4MS42MmU0MmNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAweDEuZDU4MThkY2RkYTMwMWJjYTk1ZmJjYzUzMGFiOWI5MzhwLTEsCisgICAgLTB4MS42MmU0MzBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuZDU4MThlMDg4YTYxZDkzMGRmMWIwODdhNGI5MjhlYTBwLTEsCisgICAgLTB4MS42MmU0MmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEuZDU4MThlNDMzYTkzOWRlZDJlNzI2NmNiMTNkMjk5ODZwLTEsCisgICAgLTB4MS42MmU0MmNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEuZWE0YWZhMjk0ZTYwYjRiZmEyNDQ5NDYxMGU3NTI2MWNwLTEsCisgICAgLTB4MS42MmU0MzBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAweDEuZWE0YWZhNDdmMzEwNTg0OWFkY2NmYTFkZDViM2Y5M2RwLTEsCisgICAgLTB4MS42MmU0MmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuZWE0YWZhNjY5N2JmZmRiZTA0NGZhN2NkYWQ0YjNlZTdwLTEsCisgICAgLTB4MS42MmU0MmNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAweDEuZjUwNzY1YjY2NDNlZmFhMmNhOWU2NjkwOTMzZTVjMzdwLTEsCisgICAgLTB4MS42MmU0MzBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEuZjUwNzY1YzYwYzdhMjg5NDhkODJmMzFhNzI4ODIzMmZwLTEsCisgICAgLTB4MS42MmU0MmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAweDEuZjUwNzY1ZDViNGI1NTcwMzkyNDBmMTI3NzA1YzExZTdwLTEsCisgICAgLTB4MS42MmU0MmNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuMDU5YjBkMjE0MTg2Y2ZmOWE5NzRiY2I4ODNjZjY4ZGVwMCwKKyAgICAweDEuNjJlNDJjcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgMHgxLjA1OWIwZDI5NmU1ZjM5MjQ2OTBjZTEwNTMzZmU1OTlicDAsCisgICAgMHgxLjYyZTQyZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS4wNTliMGQzMTliMzdhMjkwOGY2ODRmYWQ3YmZiOTRkMHAwLAorICAgIDB4MS42MmU0MzBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAweDEuMGI1NTg2YWViNjhlYTI0YzkyODFmMjViNzlkODRmODNwMCwKKyAgICAweDEuNjJlNDJjcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLjBiNTU4NmJmNmJlNzBkYmRhNjJmNzE0OGNkNWE3ODhmcDAsCisgICAgMHgxLjYyZTQyZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIDB4MS4wYjU1ODZkMDIxM2Y3YTNhMGY2M2FmYTIwN2VhNzU4N3AwLAorICAgIDB4MS42MmU0MzBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAweDEuMTcyYjgzODMyN2FlMWY5ZDdlNzA0MThhNDc2ZGE0ODBwMCwKKyAgICAweDEuNjJlNDJjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMHgxLjE3MmI4M2E2MGQxZTkyMzBjYjNiNTJjZDEyMDBiOGRjcDAsCisgICAgMHgxLjYyZTQyZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIDB4MS4xNzJiODNjOGYyOGYwOTIwYzYxNGZjNDQ1NmRlMDQ5ZnAwLAorICAgIDB4MS42MmU0MzBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuMzA2ZmUwMGQ1MjFjNWIzNWJmMzczNzM4YjBhMTJlMWFwMCwKKyAgICAweDEuNjJlNDJjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLjMwNmZlMDU5NmUxNDY4MGRjNTRmM2EyZWExNWUzYWZjcDAsCisgICAgMHgxLjYyZTQyZXAtMworICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS4zMDZmZTBhNThhMGM4N2VjYzk2Y2Q0MDVkOGI1ODJkYnAwLAorICAgIDB4MS42MmU0MzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuNmEwOWU1MDNiMmE3ZGQ5OWNmOTQ3NGIxMTVhNzNlY2VwMCwKKyAgICAweDEuNjJlNDJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLjZhMDllNWI4Yjc5YThjYjQ2MDJiNDJjZDRjOTllNjBlcDAsCisgICAgMHgxLjYyZTQyZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS42YTA5ZTY2ZGJjOGQ5NjUxNmEzMDNlZDAyODljNWQzNnAwLAorICAgIDB4MS42MmU0MzBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEuZmZmZmZjMTA1YzY0ZWMzMjkyZjJhZmFjM2YxYTQzMGRwMCwKKyAgICAweDEuNjJlNDJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLmZmZmZmZTEwNWM2MWZjOGVmNjNjNjVjNjZhOWQ0OTcxcDAsCisgICAgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIDB4MS4wMDAwMDAwODJlMzA4Njc1YWJjYjNjMjE1ZWFjZjg0YXAxLAorICAgIDB4MS42MmU0MzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuZmZmZmY4MjBiOGQxOTc3OTY5MmZiMGZjYzAyODEyNDZwMSwKKyAgICAweDEuNjJlNDJjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuZmZmZmZjMjBiOGM1ZDhlYWZmNGFjMDEzY2Y3MzQ2MzlwMSwKKyAgICAweDEuNjJlNDJlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuMDAwMDAwMTA1YzYxMGQyZTQyZjQ1OTIyNzY4YThlNmNwMiwKKyAgICAweDEuNjJlNDMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAweDEuZmZmZmYwNDE3MWMyMmI0M2EyOGQ4MDg4YzM0N2JmMWZwMywKKyAgICAweDEuNjJlNDJjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuZmZmZmY4NDE3MTkzMzEwYTQyOWI3MWU3MGQ3OTIxODZwMywKKyAgICAweDEuNjJlNDJlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAweDEuMDAwMDAwMjBiOGMyMWI2ODMzNjAzZTUxODk3YzU5OGNwNCwKKyAgICAweDEuNjJlNDMwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuZmZmZmUwODJlNDAwNDdjODlkZmE0MWQwOWMxZTFlZjhwNywKKyAgICAweDEuNjJlNDJjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAweDEuZmZmZmYwODJlMzQ0NWVlNTViM2ZhODRhNWRkODQ5YzlwNywKKyAgICAweDEuNjJlNDJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuMDAwMDAwNDE3MTg0M2FmZjFjOWVmMTQzNDFiZmE0MmVwOCwKKyAgICAweDEuNjJlNDMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAweDEuZmZmZmMxMDVjOWYwNTQ4NzYwYTgyM2IwZGZkYWViNjZwMTUsCisgICAgMHgxLjYyZTQyY3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgMHgxLmZmZmZlMTA1YzcwMGIxMGMzZTJhNTQ5ZmJkZWJiMGRhcDE1LAorICAgIDB4MS42MmU0MmVwMworICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIDB4MS4wMDAwMDA4MmUzMDg4NmI5MTBiOWQ4NzUyODI4Mzg5ZHAxNiwKKyAgICAweDEuNjJlNDMwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuZmZmZjgyMGI5YjlmYmM2ZDVkZGE0MDZhZDlmOTMzNTRwMzEsCisgICAgMHgxLjYyZTQyY3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgMHgxLmZmZmZjMjBiOGZlMTJmMTAxNzQwYWM5NjUzZjc4ZmUzcDMxLAorICAgIDB4MS42MmU0MmVwNAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS4wMDAwMDEwNWM2MTE1MDVkN2Y3NGE0MTQzMzMxMmRwMzIsCisgICAgMHgxLjYyZTQzMHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLmZmZmUwODJmMjg2ODhkMzg3MmFiOGFhNjlmM2RjMzU4cDEyNywKKyAgICAweDEuNjJlNDJjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAweDEuZmZmZjA4MmU2YzdmZWQxZDNmZDVjZmY3ZTFmNjA1OTFwMTI3LAorICAgIDB4MS42MmU0MmVwNgorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuNjJlNDMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAwLjBmLAorICAgIC0weDEuOWQxZGEycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAwLjBmLAorICAgIC0weDEuOWQxZGEwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEuMDAwMDczM2QzN2IxZDA4YTgwZDdmNWI0NWE1N2I4ODhwLTE0OSwKKyAgICAtMHgxLjlkMWQ5ZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLjhlYmVmOTIzNjhhM2VhZmE1MTk3NDA1ODRjMGJjM2I0cC0xLAorICAgIC0weDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLjhlYmVmOWVhYzgyMGFlODY4MmI5NzkzYWM2ZDFlNzcycC0xLAorICAgIC0weDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgMHgxLjhlYmVmYTRlNzdkZjM1YWU4MmI1N2FmMTIxNTE4Y2VmcC0xLAorICAgIC0weDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLmMzZDZhMWRkZTI3OTkyZTEyOWVkNzhhNjU1NzNmODc4cC0xLAorICAgIC0weDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLmMzZDZhMjRlZDgyMjE4Nzg3ZDYyNGQzZTVlYmE5NWY1cC0xLAorICAgIC0weDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLmMzZDZhMjg3NTJmNjY1ZGIyZWVhMWZhNTg3Njc5OGEzcC0xLAorICAgIC0weDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLmUwZmFiZjgwNTBkMjQ5MTlkMzU3OTQ2ZjllODgwNzU0cC0xLAorICAgIC0weDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLmUwZmFiZmJjNzAyYTNjZTVlMzFmZTA2MDkzNThiYWZkcC0xLAorICAgIC0weDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLmUwZmFiZmRhN2ZkNjM5OWQ2MzIzOTFmOTc3MWYzZTgycC0xLAorICAgIC0weDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLmYwM2Y1Njg5ODc2ODBmODQxOWRlN2Q2NmQwYTYxOWVjcC0xLAorICAgIC0weDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMHgxLmYwM2Y1NmE4OGI1ZDc5MTRiMDBhYmY5Nzc2MjczNWQxcC0xLAorICAgIC0weDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLmYwM2Y1NmI4MGQ1ODJlOTcxMmUxNWRmM2NjOWU4ZTljcC0xLAorICAgIC0weDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLmY4MGZlYWIwMmU3YWYzNjc1YjM2ZWI2YzNjNzFhNWVlcC0xLAorICAgIC0weDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgMHgxLmY4MGZlYWJmZWVmYTQ5MjdkMTBiZGQ1NGVhZDVhYTQ2cC0xLAorICAgIC0weDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLmY4MGZlYWM3Y2YzOWY0Mzc0ZDc0NTgwOGE3ODEzMGVjcC0xLAorICAgIC0weDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLmZjMDNmZDRlYmExMjVhNGQzNDU1YmY3MmNiYzkzOWY3cC0xLAorICAgIC0weDEuMDAwMDAycC03CisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgMHgxLmZjMDNmZDU2YWEyMjRmOTdmY2JmMTMzMjk4ODg0MmRlcC0xLAorICAgIC0weDEucC03CisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMHgxLmZjMDNmZDVhYTIyYTRhNDk0OTBiYWQxMjhiYTVhZjkzcC0xLAorICAgIC0weDEuZmZmZmZlcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLmZlMDBmZmE2YzNmOWJkMjAyOTI4OTdmNDJkN2I5ZDc2cC0xLAorICAgIC0weDEuMDAwMDAycC04CisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMHgxLmZlMDBmZmFhYmZmYmJjNzFhZDFlMTE4NGFmYzE5YzdlcC0xLAorICAgIC0weDEucC04CisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLmZlMDBmZmFjYmRmY2JjMWQ2YzFhNGRjYzExZGRiNmQ4cC0xLAorICAgIC0weDEuZmZmZmZlcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLmZmMDAzZmYzNTdhYTQ4OTcwOTU3YTJjZjdkN2E2Y2FjcC0xLAorICAgIC0weDEuMDAwMDAycC05CisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMHgxLmZmMDAzZmY1NTZhYTg4OGI2MDgyMGI2MDg3ZDFlOTFhcC0xLAorICAgIC0weDEucC05CisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgMHgxLmZmMDAzZmY2NTYyYWE4ODY0YmI3NTdhNGVkOGQ5Njg2cC0xLAorICAgIC0weDEuZmZmZmZlcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS5mZjgwMGZmZGFhZmZmNmVmZTRkZjNmN2Y1Y2UyM2FjY3AtMSwKKyAgICAtMHgxLjAwMDAwMnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuZmY4MDBmZmVhYWJmZmVlZWZhNGYzY2Y3MGY1OWQ5YmZwLTEsCisgICAgLTB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLmZmODAwZmZmMmFhMDAyZWViNGZiM2QzMmM0OThhOGZmcC0xLAorICAgIC0weDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS5mZmYwMDAzZmRmNTY1NmE2YTk5MzJkZjYyODNjZmNiZHAtMSwKKyAgICAtMHgxLjAwMDAwMnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuZmZmMDAwM2ZmZjU1NTZhYWE4ODg4YjYwYjJjYjJmZjJwLTEsCisgICAgLTB4MS5wLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMHgxLmZmZjAwMDQwMGY1NGQ2YWNhOGMzMzQxNjEwMTAwOTllcC0xLAorICAgIC0weDEuZmZmZmZlcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIDB4MS40OGI1ZTM3MWJhOWY3ZmMyMjRjNzVkMTk4ZmU0Y2QxYnAwLAorICAgIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuNDhiNWUzYzNlODE4NjY3NjdiYzNiNjliYWFiZTUzNGVwMCwKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLjQ4YjVlNDY4NDMwYTcxODE0NDc2NDdmYzAzYWRiZmI2cDAsCisgICAgMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIDB4MS4yMjE2MDQzNzJjOWM0NjczMmRkNzJlOTk2YzllMjNmMnAwLAorICAgIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEuMjIxNjA0NWI2ZjVjY2Y5Y2VkNjg4Mzg0ZTA2YjhkNDJwMCwKKyAgICAweDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLjIyMTYwNGEzZjRkZGVmODk3NGMwMDc5ZjIzZmQwYmI5cDAsCisgICAgMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIDB4MS4xMDgyYjU2NmNiMjM4MGUwYmUwZDU1OWEwMTUwMTcyZnAwLAorICAgIDB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEuMTA4MmI1NzdkMzRlZDdkNWIxYTAxOWUyMjVjOWE5NTFwMCwKKyAgICAweDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgMHgxLjEwODJiNTk5ZTNhNTg4ZjEyMGU2MWFmNDg2OWM5ODQycDAsCisgICAgMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS4wODIwNTVmOGQxN2MxOWE2N2JlNGY3MDU4ZTlhNTcwYXAwLAorICAgIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEuMDgyMDU2MDExMjdlYzk4ZTBiZDA4M2FiYTgwYzk3YTZwMCwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgMHgxLjA4MjA1NjExOTQ4NDJhMjM0M2U4MWZkNWZhYjQ1MWVmcDAsCisgICAgMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS4wNDA4MGFiMTRkYzM2NmFkNjExNmMzOWUzYzJkMGE5ZXAwLAorICAgIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuMDQwODBhYjU1ZGUzOTE3YWI4NjRiM2U5MDQ0ZTZiNDVwMCwKKyAgICAweDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLjA0MDgwYWJkN2UyM2U3NDYyODgyOTZjMTMxM2YyMWIxcDAsCisgICAgMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS4wMjAyMDE1M2ZjNDA1ODYyMzVkZWNmNGViNzI3YTE1ZnAwLAorICAgIDB4MS5mZmZmZmVwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEuMDIwMjAxNTYwMDQ0NWIwYzMyNjM4MmJjNzM2ODlkMzJwMCwKKyAgICAweDEucC03CisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLjAyMDIwMTVhMDg0YzYwNmM0Mzg0ZjlhN2ZmMmVlNDI1cDAsCisgICAgMHgxLjAwMDAwMnAtNworICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS4wMTAwODAyOWI0NTZmN2E4NTU1MzBiMTUxMDU1ZmNjY3AwLAorICAgIDB4MS5mZmZmZmVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEuMDEwMDgwMmFiNTU3NzdkMjhhMmE0MmQyNmFhOWVlNjdwMCwKKyAgICAweDEucC04CisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMHgxLjAxMDA4MDJjYjc1ODc4MjlmNmRhMzJjZTQwNThiOTQwcDAsCisgICAgMHgxLjAwMDAwMnAtOAorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS4wMDgwMjAwNGQ1YzAwMTBmZjI1MWQxMzRkOWJiZGY4Y3AwLAorICAgIDB4MS5mZmZmZmVwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjAwODAyMDA1NTYwMDExMTI3ZDQxZDViZDcyZjRjOGYzcDAsCisgICAgMHgxLnAtOQorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS4wMDgwMjAwNjU2ODAzMTE4NTM4MWY2ZDJjNWY2YWM5MHAwLAorICAgIDB4MS4wMDAwMDJwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuMDA0MDA4MDA2YWE1NTNkZGMwZTMxN2IwZmE1OWIxYzRwMCwKKyAgICAweDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS4wMDQwMDgwMGFhYjU1NWRkZTM4ZTZjZTg2ZTkyNzdhYXAwLAorICAgIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLjAwNDAwODAxMmFkNTU5ZGU1OGYxMThkNzdiMDcwM2FmcDAsCisgICAgMHgxLjAwMDAwMnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuMDAwODAwMWZmODU1MTVmZjAxMmU2OGNkMmQ2OWM1ODhwMCwKKyAgICAweDEuZmZmZmZlcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS4wMDA4MDAyMDAwNTU1NjAwMDExMTEyN2QyOTcyOThjOXAwLAorICAgIDB4MS5wLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLjAwMDgwMDIwMTA1NWQ2MDIwMTk2NmJkZDM5ODY3ZjVjcDAsCisgICAgMHgxLjAwMDAwMnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuOTY5YzdiZTNhZDg3NGMwNjc4N2FiYTk1NWQyMDZkODNwLTkzLAorICAgIC0weDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuOTY5ZDQ3MzIxZTRjYmFiZjJkMjgwNzA5NjNiMDQxOTRwLTkzLAorICAgIC0weDEucDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuOTY5ZGFjZDk3Y2NlMmQ5YjAwNWZmNTc2YjdhMGJiNGZwLTkzLAorICAgIC0weDEuZmZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuYzg0NWRkNjQ5MGFiMmQ5YzdiMGNmZWM5YzUwMDg0ODNwLTQ3LAorICAgIC0weDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEuYzg0NjRmNzYxNjQ2ODFlMjk5YTAxMjQ0ODc4ODRkNjRwLTQ3LAorICAgIC0weDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuYzg0Njg4N2VlM2M1ZDE3MDViZTYxNzJkMTE3ODcwYTBwLTQ3LAorICAgIC0weDEuZmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEuZTM1NTdmNDQzNGFkN2JlOWUwNmMyOTk2NmY1NmU2MmJwLTI0LAorICAgIC0weDEuMDAwMDAycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEuZTM1NWJiYWVlODVjYWRhNjVmNzNmMzJlODhmYjNjYzZwLTI0LAorICAgIC0weDEucDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEuZTM1NWQ5ZTQ0NTA5NDcwZjBhYTczYWM3ZWYxMjE0OGZwLTI0LAorICAgIC0weDEuZmZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuNWZjMWZhNDRlMjI2OWM5Yzk3MDY0NjljMjBiOTNlOTVwLTEyLAorICAgIC0weDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuNWZjMjEwNDEwMjdhY2JiZmNkNDY3ODBmZWU3MWVhZDJwLTEyLAorICAgIC0weDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuNWZjMjFiM2YxMzI4Y2MxNjIxMDU3NmQzYzcwYmY5OGJwLTEyLAorICAgIC0weDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAweDEuMmMxNTUyMjE2OTE4Yjk4YjFjZWY3YjA0ZjcxMGUzNmNwLTYsCisgICAgLTB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIDB4MS4yYzE1NWI4MjEzY2Y0NzdlOGFmMDEzMmMyYWUyM2Q0YXAtNiwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLjJjMTU2MDMyNjk0NmIwNzhiMDlmOGZhZWJlMmZjMjg3cC02LAorICAgIC0weDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuMTUyYWE1ZTc0ZDdjNzM3MjhhZGEwNjYzZjIyNGEzODFwLTMsCisgICAgLTB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS4xNTJhYWEzYmY4MWNiOWZkYjc2ZWFlMTJkMDI5NTcxZnAtMywKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjE1MmFhYzY2NGQ3MzVjNDM0NmNjMjdmNDJhM2Q4M2IxcC0zLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuNzhiNTYwNzE2NDJmYTgzN2M5NTE5ZWVjMTBhN2Y5MzdwLTIsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIDB4MS43OGI1NjM2MmNlZjM3YzZhZWI3YjFlMGE0MTUzZTQzN3AtMiwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMHgxLjc4YjU2NGRiODQ1NzliOTQ5MGU3Yjk1NTcwMjZjNjQ3cC0yLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgMHgxLjQyNTkzMjM5MDJkYmM2ZTYyZTNlMDdjZTI2Y2Q5MDRjcDkyLAorICAgIDB4MS5mZmZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIDB4MS40MjU5ODJjZjU5N2NkMjA1Y2UzZDViNGVkYjAzMTc1NnA5MiwKKyAgICAweDEucDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuNDI1YTIzZmM0MzJmYjVkNTU2MDA2YTRkOGU3ZWUxMWJwOTIsCisgICAgMHgxLjAwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgMHgxLjFmNDNkOGRjMzkwOGI4ZWQ4N2E1YWJkNTA2MjE3MDZhcDQ2LAorICAgIDB4MS5mZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS4xZjQzZmNjNGI2NjJjN2Q4NDc4ODQwMTg0MjE3NDA3NHA0NiwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAweDEuMWY0NDQ0OTViZThlMTYxNmExZTVlMzg4Nzc5YmMxNDZwNDYsCisgICAgMHgxLjAwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLjBmMmVhYzE3OTRiOGYzZWRiNWMxMGQyNmE1MWY0MjBmcDIzLAorICAgIDB4MS5mZmZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDB4MS4wZjJlYmQwYTgwMDIwNDkyMjNmMTcwODgyYjVlZTVlZnAyMywKKyAgICAweDEucDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEuMGYyZWRlZjA1OWMxYjIyMzEyYmVkOTY0MDA2ZWU2MzNwMjMsCisgICAgMHgxLjAwMDAwMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgMHgxLjc0OWU5YzJmN2JiNmNmNWEyNzZlZTA4MjM2YzJkNmMzcDExLAorICAgIDB4MS5mZmZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIDB4MS43NDllYTdkNDcwYzZkZjBiZTAwZTA4NGE4MTVkMWRlNnAxMSwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuNzQ5ZWJmMWU1YmZlNzU3MDE5ZGU0ZTIyYjExM2ZkZTlwMTEsCisgICAgMHgxLjAwMDAwMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMHgxLmI0YzhmYzBmNGZhN2EyZjI0NTlhNmVmNTNjMzE1ZjBmcDUsCisgICAgMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgMHgxLmI0YzkwMmUyNzNhNTg2NzhkNmQzYmZkYjkzZGI5NmQwcDUsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgMHgxLmI0YzkxMDg4YmJmMzMzMzZmMGVlNTJiMWFkODU4ZTQzcDUsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgMHgxLmQ4ZTY0N2RiODE0NzczZjQxOTI2MmVlNDc3YTk4NjE2cDIsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLmQ4ZTY0YjhkNGRkYWRjYzMzYTNiYTIwNmI2OGFiYmE4cDIsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMHgxLmQ4ZTY1MmYwZTcxN2Q5MmQxNWNkNjEwMDIyYWU1MWUzcDIsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMHgxLjViZjBhNzU1NTRjZTkxZTgzZDQyMWMyYTdjMDc1Y2IycDEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIDB4MS41YmYwYThiMTQ1NzY5NTM1NWZiOGFjNDA0ZTdhNzllM3AxLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDB4MS41YmYwYWI2OTI2Y2FhZmExYTAxNThkNzk2OTNhYzhlMXAxLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIEhVR0VfVkFMRiwKKyAgICAweDEucDEyNAorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuOTk5OTlhcDEyNAorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuMTk5OTlhcDEyNQorICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuNjY2NjY4cDEyNQorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuYjMzMzM0cDEyNQorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucDEyNgorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAweDEuNzI0MDQ5MGExNjU2MjBkOWI5MjJhYWEyMmE4ZTRjMDlwNCwKKyAgICAweDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuMzNkZWRkNjcyMDg0Y2NhNjEyYWFiMmI5YTNlODE3YmJwMiwKKyAgICAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAweDEuNWJmMGFiNjkyNmNhYWZhMWEwMTU4ZDc5NjkzYWM4ZTFwMSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuNWJmMGE4YjE0NTc2OTUzNTVmYjhhYzQwNGU3YTc5ZTNwMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEuNWJmMGE3NTU1NGNlOTFlODNkNDIxYzJhN2MwNzVjYjJwMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgMHgxLjE4YmQ2NmZiNjJiMzE5MDBjYzA3NjM0ZGViYTQzNDU2cDEsCisgICAgMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNHAwLAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNHAwLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM3AwLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM3AwLAorICAgIDB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIDB4MS5wMCwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAweDEucDAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgMHgxLnAwLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAweDEucDAsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cC0xLAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwLTEsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMSwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3cC0xLAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAweDEuZDJlMTcxMjNkMmFlMDJhYmJjZjg5NmYyMDI1ZTM0NjNwLTIsCisgICAgLTB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuNzhiNTY0ZGI4NDU3OWI5NDkwZTdiOTU1NzAyNmM2NDdwLTIsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzkKKyAgICAweDEuNzhiNTYzNjJjZWYzN2M2YWViN2IxZTBhNDE1M2U0MzdwLTIsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIDB4MS43OGI1NjA3MTY0MmZhODM3Yzk1MTllZWMxMGE3ZjkzN3AtMiwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQxCisgICAgMHgxLmE5YmNjMzM3M2VmZDNlNGQ2YTk2YmU3YTc1NjJmNDI4cC0zLAorICAgIC0weDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuNjIwMjI1YWU1ZTkzNDk1OTNkNmJiNjE4YzIzMTU0NWVwLTUsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS5mZmZmMDgyZTZjN2ZlZDFkM2ZkNWNmZjdlMWY2MDU5MXAxMjcsCisgICAgMHgxLjYyZTQyZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMzQ3CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS42MmU0MzBwNgorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDB4MS4wMDAwNGJmOTRmNjNlM2ZhNjg2MjIyMTQ4ZjEyOTNjNHAtMTI2LAorICAgIC0weDEuNWQ1ODllcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAweDEuZmZmZjk3ZjI5MmNlODBlNDk0MjMxYzY0OTZlOWNiZjVwLTEyNywKKyAgICAtMHgxLjVkNThhMHA2CisgIH0sCit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2V4cG0xX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9leHBtMV9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmU5MGM4ZAotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9leHBtMV9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxNTcwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZG91YmxlLCBkb3VibGU+IGdfZXhwbTFfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMHgxLmZmZmZmZmZmZmYwMDAwMDAwMDAwNTU1NTU1NTU1NTQwcC00MSwKKyAgICAtMHgxLjBwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIC0weDEuZmUwMTU0YWFlZWQ4NzM4MjIwMjEzYmY4MDVjOWEwMTdwLTgsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycC03CisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIC0weDEuZmZmZmZmZmZmZmEwMDAwMDAwMDAwNTU1NTU1NTU1NTZwLTQyLAorICAgIC0weDEuMDAwMDAwMDAwMDFwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIC0weDEuZmUwMTU0YWFlZjU3MTU0MGI2NGI4NDg1Y2M4MjhmMDRwLTgsCisgICAgLTB4MS4wMDAwMDAwMDAwM2ZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIC0weDEuNDNhNTRlNGViMDExOTgwMGI1YjhmMzVlMmI0ZTdlODFwLTEsCisgICAgLTB4MS4wMDAwMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAtMHgxLmJhY2Y0YzkyNTM3MzY5NmZkMjFmMjRhZTg5MzU0YTMycC0xLAorICAgIC0weDEuMDAzcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgLTB4MS5mY2MyNTU2ZTg1MzQzMDBlNjNjMTJmOGE1YTExMDZiNnAtNywKKyAgICAtMHgxLjAwNnAtNgorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAtMHgxLmJkYWVlYTIwNzQ0OTU2NjM2ZTJlODg4ZmMxODA5NjUxcC0xLAorICAgIC0weDEuMDU5ZGVmMmIyZjJjNHAxCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIC0weDEuMDdmZmZmZmZmZjc3ZTAwMDAwMDAyZWNhZmZmZmZmZjNwLTQwLAorICAgIC0weDEuMDgwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgLTB4MS4xYjE5ZTVlOTBlNjUzODAwMmVjNGU5ZjYzYzE5MjdhOXAtMywKKyAgICAtMHgxLjMwYWU4MDY4N2NkNTdwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIC0weDEuZDIzYzgzZTVjOTIzYThkNzUwYjIzNzQyYWQ1ZDJkM2RwLTEsCisgICAgLTB4MS4zNTE5NTMwYTg2M2ZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIC0weDEuMzQ1MzNjZjQ0NzQ0YzdmN2RmZTI0Y2M4MWNlOTNhNWVwLTQsCisgICAgLTB4MS40MDhjMGE0M2NkOTdjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAtMHgxLjc5YzZjYWE5ZTQ5YWY0NDYzY2VlM2Q1MjZhOGUxNzYycC0xLAorICAgIC0weDEuNTZiY2NmOWMwOGY5NHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAtMHgxLjdkZTg5OGJiNGExODE0NDQ5ZmM5YmY1YTc4N2YyY2UzcC0xLAorICAgIC0weDEuNWViZTA4Y2U1OTQ0MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAtMHgxLmZkZTg1NmI0YTZiMGQ3ZmMzNjBhOTY1NzI5NDRhNWVkcC0xLAorICAgIC0weDEuNWZmZmZmZmZmZmY4MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAtMHgxLjdmNjM3Mjc2ZGIzN2FiOGI0ZjhhZjM4YWQ2MmFmZGIzcC0xLAorICAgIC0weDEuNjFhYmQzYmI2MzhmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAtMHgxLjdmZDM4NTg4MTg2MzBhZDlhZmQxMTc5ODQ4ZWUyZWZmcC0xLAorICAgIC0weDEuNjI4YjRhNzBlODU4NnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNjJlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIC0weDEuNzg1YjE4ZjUyNzVkNjRhM2Y1ZmRhOWVmNzM5ZDgwYjVwLTgsCisgICAgLTB4MS43OTcwY2YyMjY1YjlhcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAtMHgxLjhiOTI4NzBmYTJiNTk3ZmU5YjAyYzI1ZTlhZDhhM2NlcC00LAorICAgIC0weDEuYXAtNAorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS5iNTdhYmU5YmE4NmQ1NmUyNjk2MmM1NTI1ZjEzNDdhN3AtOCwKKyAgICAtMHgxLmI2ZjIzOGMyYTA0MGFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIC0weDEuYjU3YWJlOWJhODg4OTdmZjExOTRmNjczYjEyZTIyNThwLTgsCisgICAgLTB4MS5iNmYyMzhjMmEwNWMxcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAtMHgxLmI1N2FiZTliYTg4OTE3MjQ1NDM1YTg5ZjZjYzI1OTdlcC04LAorICAgIC0weDEuYjZmMjM4YzJhMDVjOXAtOAorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgLTB4MS5iNzZmNTY1MWQxOWMyNmY4OTU2Yjk5Y2Y2MWYzZjJlZnAtNiwKKyAgICAtMHgxLmJkNmY3YmZhNzg5NWVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIC0weDEuYjc2ZjU2NTFkM2JjNjcxMGIwMjI5YmUzZjk2MDcwODlwLTYsCisgICAgLTB4MS5iZDZmN2JmYTdhYzUycC02CisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAtMHgxLmE3OGMyYjdhZTIxNjY5ZjBmM2NkMzdjMTA1MjgyNjdlcC0xLAorICAgIC0weDEuYzE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIC0weDEuMmI4ZGVkMzEzMmQ2MWZmZmY0OTU0OGI2ZWM2ZWM4YzZwLTEsCisgICAgLTB4MS5jMjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIC0weDEuYWM2YjE1OGQ5NTNkZTk5NDI1MjA2NDgzYmRjZDJiMjhwLTEsCisgICAgLTB4MS5kcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEuZmZlZmZmZmZmZmZmZTgwMDdmZmUwMDAwMDA5NTRmNTVwLTU0LAorICAgIC0weDEuZmZlZmZmZmZmZmZmZnAtNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIC0weDEuYmFiNTIxNzhlZTkwODljZjA5MDI2MWVjODUxNjFiNDRwLTEsCisgICAgLTB4MS5mZmZmM2ZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIC0weDEuZjY5ZjU1MjNlZjQ3YTgwMGMzNjcwNDk5NGRlNmJmN2NwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZlOWVmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIC0weDEuZmUwMTU0YWFlZTk4YjM4MWY1YTEyMjYxZDhjZjAzNTJwLTgsCisgICAgLTB4MS5mZmZmZmZmZmZmY3AtOAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgLTB4MS45MmU5YTA3MjBkMzAyN2Y2MGY1NzhhMmNkMzBkMTA0ZXAtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZlN2ZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIC0weDEuYmFiNTU1NzEwMWY4YzhkNzNjZDI3NGJhNjU5YjI3MjdwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS4wMDAwMDAwMDAwODAwMDAwMDAwMDJhYWFhYWFhYWFiNXAtNDAsCisgICAgMHgxLjBwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDAyYWFhYWFwLTUyLAorICAgIDB4MS4wcC01MgorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLjk0NzY1MDRiYTg4NTc1OGFhNWZhNzU0NWUxMGU4ZTQ2cDczOCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuMGYyZWJiMmM2NWQ5YTgwMDgxYWMyZTY1ZTgwMjVhYjFwMjMsCisgICAgMHgxLjAwMDAwMDAyMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuZTUyMDhjOGViYjYwN2FkNzY3YzFhZGIyYWU5NjE2ZjRwNzM5LAorICAgIDB4MS4wMDdwOQorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLjA0MDAwMDAwMDA4NDA4MDAwMDAwMmNiMmI1NTU1NTYwcC00MCwKKyAgICAweDEuMDQwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLmM2MWU4MTA4Y2IzYjEwMGY0YTk2NDFmZTRiNTlkNWEycDAsCisgICAgMHgxLjA1MmY3NDJiYjUzZDZwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLjA2NDY2Zjk3YjQyNmQwMDAwMDBhOTA1NjAyZDdmYjY5cC0xMCwKKyAgICAweDEuMDYyNGRlY2FkODVkOXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS42NTU5MWEzYTdiOWZhYmU4OTFjMmVhNWY0N2E2YmI5NnAtMSwKKyAgICAweDEuMGYwZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLjY2ZjBmYjkwMWYyYmQ0NWQ5OWMzYWUwYzU1MDZhZDdmcC0xLAorICAgIDB4MS4xcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuMjZiZWFjZWY4NGRkYTgwMGVlODdkOTFkODhjMTk5YTdwLTYsCisgICAgMHgxLjI0MnAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLjExZjYyNzBkMjViZTcwMGVmN2MzNGQwMmEyOTk3NGYxcDUzLAorICAgIDB4MS4yNjZmZDdjZGRmZjQycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS4yZDI2MjE2MTM5ZDgxMDA2YmNkNWM4NzZjYTYwMGEzOHA1MywKKyAgICAweDEuMjczMTllODE4YzIzMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuNGQxM2ZiYjFhMDAxOTI3ODVkZjI3MjU3ZjA2MGU2ODNwNTMsCisgICAgMHgxLjI4MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEuNjBjOWI1MzZlMzNiYWZlZmM2MmJjYTk2Zjg4NGEyMmVwNTMsCisgICAgMHgxLjI4NzViZDZkYWI2MzBwNQorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLjgyNDRmNzM4YWI5ODZmY2IwMjIzNzQyNDBkODYwNWNhcDUzLAorICAgIDB4MS4yOTJmNmQ4ZDMwNmMzcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS5mNGIxZWNkNTA4NTA0ZmRiZTk2NjI5OTgwZDQ4YTAyMHA1MywKKyAgICAweDEuMmI0MmNlNmU1ODRlYnA1CisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuODhhMTIyZDIzNGIzOTRiODg2OTZhZGE3ZjdjMTFhMGFwODY1LAorICAgIDB4MS4yYzBwOQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLjY2NDE2MzM3MDNlYTI4MDAwMDEwOTk1YmI3YzRiMjFkcC0yLAorICAgIDB4MS4zMzMzMzM0MjAyMmE3cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuMDRkYWRlZTI4YzExYzgwMGZiOTA5NDQzNWMxZGU3MjdwNywKKyAgICAweDEuMzgzODljNDhiMGZjZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuMDA3ODQ4YmFlZDhiMzdjM2U2Y2MzYmZiMWExMDE2NDRwNTgsCisgICAgMHgxLjQxYTI4Y2Q1Mzk1YzBwNQorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLjBjNzE5MjI5ZmIwNGI3YzIxZWMzZTBkN2YyYWVkOTE4cDU4LAorICAgIDB4MS40MjAwMDAwMDA0MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuMTA5MjQ2MDAzMDc0NDdjMTM5ZDliYjJmODJmZjlhMjdwNTgsCisgICAgMHgxLjQyMWY0MDY2Y2YyZmNwNQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLjMxZDIxNWQzNmIxY2M3YzAyM2RhY2MwZWRmYTcxYmVicDU4LAorICAgIDB4MS40MzBhZjkwYzE3ZTM2cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS4zNzk1NTNiMTlkZjIwN2MwMTU2NWU1ZjE2ZDQ4NWQ0ZHA1OCwKKyAgICAweDEuNDMzMTM0NmNhNmNlN3A1CisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEuMzc5NTUzYjQ5OGRhNTdjMDBmZWMwYTU3MWRkNDhhNmZwNTgsCisgICAgMHgxLjQzMzEzNDZjYmE2NGZwNQorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgMHgxLjRiYzJmZGNlMTU2MTE3YmY1YTQ5ODA1ZGQ0MTljMDcycDU4LAorICAgIDB4MS40M2IxYjc5MzUxZjRlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS5jZjM5MjA3NmExYmRkN2JmMGQ1M2U2NGVmZWMxMDA1M3A1OCwKKyAgICAweDEuNDY1ZDUyYjhiMDU5NnA1CisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEuZGY4MDI4ZDA4ZDdiZjdjMDFhMDY2YzBiY2E1MzllNWFwNTgsCisgICAgMHgxLjQ2YTQwZGFlOTA2NzBwNQorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgMHgxLmVhNTc5ODhlOTRjODE3YmY4ZjUyZjg0ZWQzZGY4OGIwcDU4LAorICAgIDB4MS40NmQxZDdkOWU4YTk4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS5jYjQxOWI5Mjc5YjM1NzYzZDExM2U2YzVkYjc5ZGM1NHA5NDMsCisgICAgMHgxLjQ3MWM3MWM3MWM3MWNwOQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLmYxMzQ1MzU1ZDc4YmE0YmY3YjNmZDFlM2VjYmY3ZGZkcDk0OCwKKyAgICAweDEuNDhlMjM4OGUyMzkxY3A5CisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAweDEuNTVhYjgzNjQ5NWFiZTgwMDAwNWNhNmQyMDA5NTI0MzNwMSwKKyAgICAweDEuNGNjY2NjY2U4Y2U5N3AwCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuNmE3N2MyNDc4YmRiMTUwYmJjOGVhNzU2YmJiODU3MGJwOTcwLAorICAgIDB4MS41MDU5YWFiZmU1NzY1cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIDB4MS5lMWFmYzFmMTUxMmI3NDI4ZDNkMjhjNTg2ZGNkN2RhMHA5NzQsCisgICAgMHgxLjUxZTBmNGM3MGVjZGFwOQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjViMWJhYzUyNjU1YmYwMTVkMGMwODk3MzUyY2ZmMDc0cC04LAorICAgIDB4MS41YTMxMmUyZDU0NjllcC04CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEuNWQ5OGE4YjFjNWI4YTA0M2Y4NzJkY2U0MTU1YmEwMmRwLTgsCisgICAgMHgxLjVjYWFjYzVhODVjYWRwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5mMmEzYzI5ZmM2ZDcyM2E2M2UzNDliYmNkNzg5NGE4YXAxMDA4LAorICAgIDB4MS41ZGFkZjVkMWU0NTJjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS42MjRjYTFhY2UzZjE1OTczYTQ2M2I1MzljNzlhMjlmZHAtOCwKKyAgICAweDEuNjE1ODU2ZjU5MDQ1NnAtOAorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLjYyNGNhMWFjZTYxM2E5NzkwYzBlMGZjZmY5MjRiYjdmcC04LAorICAgIDB4MS42MTU4NTZmNTkyNjRjcC04CisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAweDEuZmZmZmZmZmZmYzcyYTFiMGUyNjY2NzcyMjA3MDIzNzFwMTAyMywKKyAgICAweDEuNjJlNDJmZWZhMzllMXA5CisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEuNjZiYjZmODk4YzZiNWZiNWQ4NDZkZTE3YmUzNjZhZDBwLTgsCisgICAgMHgxLjY1YzEwMGZmYWMzZmRwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS4wMzg1NGMyNzM3YjhkN2ZmZmZhNTk0NGVjYzU4NDQ3OXAwLAorICAgIDB4MS42NjY2NjY2OGM4YmMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuYWQ0NDVmOTQ5ZmE3ZDM0NDk2ZTgzMTc0ZTI3ODZiMDdwLTIsCisgICAgMHgxLjY2OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLjY3YWQ5NDVmMmYxZDlmZTJiNjZkYzA2MmRiNzk5NmVmcC04LAorICAgIDB4MS42NmIxZDNlYzIwNTRmcC04CisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEuYWUzNWYwN2Y1NWI4NzJkZTQ3MDc3NDRjMGEyNmFlOTBwLTIsCisgICAgMHgxLjY3MmEyODI5NWU5YzlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS43OGE0YWY2YjMzNzQ4ZmUyY2IwNWRkNmE0YmZhNzA1NnAtOCwKKyAgICAweDEuNzc5MGFiZWQ0OGY1YXAtOAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLjdiY2FlMmZhM2E4Y2M4Y2NlOTUzMzZmNzA2Mjc5ZTVhcC04LAorICAgIDB4MS43YWIyM2YzYTI2ODA3cC04CisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEuN2NlNTI3YWRkZTBiODhkMDZlY2JhMTk1YzdiMGFhNGNwLTgsCisgICAgMHgxLjdiY2FlMmZhM2FkYmVwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS43Y2U1MjdhZGUwZjVkOGQwOWZjZDk3NjRjODJkMTI3NHAtOCwKKyAgICAweDEuN2JjYWUyZmEzZGMxZXAtOAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLjdlMDExMGY4YjBlNjc4ZDRhODU4NjQ3MmFlN2JjMWQycC04LAorICAgIDB4MS43Y2U1MjdhZGUyNWI0cC04CisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuN2YxZWEyODkyNWE2MzhkYzBkYjRmYmYwOTFiOTBiMDlwLTgsCisgICAgMHgxLjdlMDExMGY4YjBjOGNwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS44MDNkZTAxOGM0MTEyOGRlMDdjM2FhZjhjZDc5ZDQ1Y3AtOCwKKyAgICAweDEuN2YxZWEyODkyNjY1MXAtOAorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLmZlMzExNTJiN2VmNmIxZTBhOGI5ZmVjN2VjZGQ4NWE0cDU1MywKKyAgICAweDEuOHA4CisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEuZDM4Yzg5ODU0MWNmOTU1NDRkYjQ1ZmZjN2U0NmZkMTZwLTIsCisgICAgMHgxLjgxMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjg1MjdhMWVjZGJlYzI4MDAwNTAwZjJlZjgxMDY1ZTY1cC03LAorICAgIDB4MS44MmRjYjRlNTJjYWIxcC03CisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAweDEuOGZlNWU2MWE4M2NhZDdmY2VlNzhhYTI3NGU4ZGM2NTRwLTksCisgICAgMHgxLjhmNGEwYjlmZjdlZDBwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5lOTMwNmQ2NzE1NTBiN2ZjZTUyZmUzODRlMjM2ZWQ1MXAtMiwKKyAgICAweDEuOGZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuYWVjN2IzNWM4YzIwOWZmZmZmZTc2ZDRhYzE0OGNhN2FwLTQsCisgICAgMHgxLjk5OTk5OTliZTZlYmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5jNTZlY2YzZGRlYTc0N2ZmZmZhMWNmY2Q5MjY2ZjM4NHAtMywKKyAgICAweDEuOTk5OTk5YTdmNDVmOXAtMworICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLmY3YTBlNGQ1MDY3ZWZmZmZmZmMyYmYwZDAzODc3NzIycC0yLAorICAgIDB4MS45OTk5OTlhODY3ZjE3cC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuZjdhMGU0ZDhhZjdjNDgwMDAwMzI1Yzk4NjZkM2Y2NjZwLTIsCisgICAgMHgxLjk5OTk5OWFhZGMwNmFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS5mYzhlY2FiZTE1NmE5MmY5MmNjZDk1Zjc0MmQ1ZjcwZnAtMiwKKyAgICAweDEuOWNlNjFkMzA2MTU0NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS5jODA4MmE4ZTMwMjI4ODAwMDJlMzlmYTkzNzg2YjBjZXAtNCwKKyAgICAweDEuYjA2MmEyZGYxZGU5OHAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS5iNWUxZjBmMGMxZDc5OGE1YjE2OWNiMTkxY2QwYzYyMXAtOCwKKyAgICAweDEuYjQ2ZDFiNDZlNWNjZXAtOAorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS5iNWU5ZmE5OTE5ZWRkOGJhZmRlYzAzNDU4ZGY0OWMxMXAtOCwKKyAgICAweDEuYjQ3NTE3NDZlNWNjZHAtOAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS5iNWU5ZmE5OTE5ZWRlOGQ2NWM4YmFjZDcyY2QyYTg5Y3AtOCwKKyAgICAweDEuYjQ3NTE3NDZlNWNjZXAtOAorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS5iNzU5NDU2NWE0YjQyOGI0NzM0ZTJjOWI0M2JlYzYxMnAtOCwKKyAgICAweDEuYjVlMWYwZjBhZjY3N3AtOAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5jZjdmY2UzOTMxYzVlN2ZmZTQwNmIwOGRjNDc3ZjkxYnAtOCwKKyAgICAweDEuY2RkZTJlM2Q3MGM2ZHAtOAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5jZjQ0YjUzNjI3NzU0ODA5OTBkMjE5M2ZkYWMyYTZjMnAtOSwKKyAgICAweDEuY2U3MzljZTczNWNlMnAtOQorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS44MjYwZGFlMGYxODg1M2ZmOWVkYWY0NGIyN2JhMTdiMnAwLAorICAgIDB4MS5kNzBhM2Q3MGEzZDcxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLmRlYzVjNTk0YTQxYmI3MmYzYWI2YTYzOTI3ZjhlODBkcC04LAorICAgIDB4MS5kZDA4M2QyOTA4YTgxcC04CisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLmUwODY5MGMzZmI3NzU3MWU0OTUzN2Q0ZDVmNjlhYWYycC04LAorICAgIDB4MS5kZWM1YzU5NGVjZmJjcC04CisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLmU2ZjhkYTkyOTU0Y2U4MGI2NjAxNTdkM2FlOWY0ZTcwcC05LAorICAgIDB4MS5lNjExZDc4ZGNmOTQ2cC05CisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLjk1ZTc4NGJhNjI4MDczZmY3N2QyZjdlZDRkNjIwMWJjcDAsCisgICAgMHgxLmU2NWYwMzYyNzIyMzlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuZTdkODc1MzI3MWU3YTgwMzU5YmQzNGFjMDVkNjg3ZjVwLTksCisgICAgMHgxLmU2ZjA5ZTFhNDgzNTFwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEuOThkZjVjMjEzNDI3ZjQwODRmNzdkNjE1ZjM1NDRjNTZwMCwKKyAgICAweDEuZThhOTc0YzVkMzlmN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS45ZjViOGJlYzU4MmU0YjU5YmI2OThkYmQyNTc2ZWQ0NHAwLAorICAgIDB4MS5lZGExYjliNWRmZjU4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMHgxLmYxYmUxMmY4ZjIwY2Y4NzZiY2NiOWU0N2UzZWIzMGI4cC03LAorICAgIDB4MS5lZTBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEuZjE1Yzk1MGFhZGQzMTc4ZTRlOGQ0ODg2OTEzMDcyNzRwLTgsCisgICAgMHgxLmVmN2JkZWY3YmRlZjJwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEuZjQ2NDdjZTdmZGVmYzgwNDE1YmI4Yzc0N2JlZDQ5OGVwLTksCisgICAgMHgxLmYzNzA5NTk5YmQwYTBwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuZmJmYzgxYzAwNjJhMjgwYmMzZGI4YTM5MTgwMTBiNmFwLTksCisgICAgMHgxLmZiMDEyNzZhZDUzOGJwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEuNDIzMTE3OGMyMzQ4ZjVmNzdlZWRiMjdkYzQwNGY2MTZwNzM0LAorICAgIDB4MS5mY2ZmZmZmZmZmZmZmcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuNzQyMThiY2U3ODhlYjQ2NzQ2YjM4YjU3ODc1OWVjYzBwMTEsCisgICAgMHgxLmZmZWZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS4wMDAwMDAwMDAwOWZmN2ZmZmZmZmVhOWFhYWFhYWE2M3AtMzksCisgICAgMHgxLmZmZmZmZmZmZmYzZmZwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZlYWFhYWFhcC01MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTdmZmZmZmZmZmZmZmYxNTU1NTVwLTU0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC01NAorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS4wMDAwMDAwMDAwN2ZmODAwMDAwMDJhYTJhYWFhYWFiNXAtNDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjMwNGQ2YWVjYTI1MjUzMTQ2ZGVjOTE4MjM2OWJhNDE1cDY5LAorICAgIDB4MS43ZmZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuMzA0ZDZhZWNhMjU0YjNhZjQzYzVkNjI5M2Q1ZjY1YzdwNjksCisgICAgMHgxLjhwNQorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS4zMDRkNmFlY2EyNTcxNDRhMTk5ZjFhZDUwNTU4ZDMyY3A2OSwKKyAgICAweDEuODAwMDAwMDAwMDAwMXA1CisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZjMGUzMjdiNjk1NGUyMXAtMSwKKyAgICAtMHgxLmEwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmYzBlMzI3YjY5NTRkYTNwLTEsCisgICAgLTB4MS5hcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmMwZTMyN2I2OTU0ZDI1cC0xLAorICAgIC0weDEuOWZmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLjU1Nzc5Yjk4NGYzOTVkZWEzNmEyNzdiOGJlZTJjNjRjcDExNSwKKyAgICAweDEuM2ZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLjU1Nzc5Yjk4NGYzZWIzYzhhNTAzYjRhOGUyNDg3ZDk4cDExNSwKKyAgICAweDEuNHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLjU1Nzc5Yjk4NGY0NDA5YTcxMzY0ZjFhZTVkMjdlZTY5cDExNSwKKyAgICAweDEuNDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYnAtMSwKKyAgICAtMHgxLjYwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmJwLTEsCisgICAgLTB4MS42cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZicC0xLAorICAgIC0weDEuNWZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgMHgxLjQwYTRiOWMyNzE1MDg2NjE3NmQyMmYyMTM5ZDFkNDBmcDkyMywKKyAgICAweDEuM2ZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLjQwYTRiOWMyNzE3ODlhZjhhZjIwNWJiMzRmNzQzMzM3cDkyMywKKyAgICAweDEuNHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLjQwYTRiOWMyNzFhMGFmOGZlNzZlOGQ0N2Y3ZmQ5YzI2cDkyMywKKyAgICAweDEuNDAwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjYwMDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS42cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNWZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgMHgxLjAzOTk2NTI4ZTA3MmI3OGEzMzA0ODA4ODRjNzliYWY3cDc1LAorICAgIDB4MS45ZmZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAweDEuMDM5OTY1MjhlMDc0YmViY2ZkNTY0MTZmYzJjMGViOTJwNzUsCisgICAgMHgxLmFwNQorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS4wMzk5NjUyOGUwNzZjNWVmYzdhODAyNWI0NzZkYjBkMHA3NSwKKyAgICAweDEuYTAwMDAwMDAwMDAwMXA1CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZjI4YTJhMjhlMmRmNDA4Y3AtMSwKKyAgICAtMHgxLjgwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmYyOGEyYTI4ZTJkZjI1YTBwLTEsCisgICAgLTB4MS44cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmMjhhMmEyOGUyZGYwYWI1cC0xLAorICAgIC0weDEuN2ZmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgMHgxLmYxMDU2ZGM3YmYxYjBmYzg1N2I2Nzk5OWY1MDM1MjZmcDEyNiwKKyAgICAweDEuNWZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLmYxMDU2ZGM3YmYyMmQzZGUwZWQ1NzYxNWJjNTAxZjg3cDEyNiwKKyAgICAweDEuNnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgMHgxLmYxMDU2ZGM3YmYyYTk3ZjNjNWY0NzJiMDkzZjNjOTFicDEyNiwKKyAgICAweDEuNjAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDAwNHAtMSwKKyAgICAtMHgxLjQwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQwMDRwLTEsCisgICAgLTB4MS40cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkMDA0cC0xLAorICAgIC0weDEuM2ZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgMHgxLjkzYmY0ZWMyODJiZDNiMzZjZDJmNDAxMTQ4OGE4MzY0cDEwMTUsCisgICAgMHgxLjVmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS45M2JmNGVjMjgyZWZiMzIwYTU3ZjlhZTAyZTAxYWU1MXAxMDE1LAorICAgIDB4MS42cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAweDEuOTNiZjRlYzI4MzIyMmIwYTdkY2ZmYmZlMTBiM2UzNGFwMTAxNSwKKyAgICAweDEuNjAwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjQwMDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS40cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuM2ZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjFjYjkwYmZiZThlN2NwOQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4zOTcyMTdmN2QxY2Y4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNTYyYjIzZjNiYWI3M3A5CisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwNjU0MzYxYzRjNjdmYmY5MDIzMnAtMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZjYTg2YzM4OThjZmY4MTc0N2M2cC0yLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZWNhODZjMzg5OGNmZjdiYzhiMjhwLTIsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS4yYmVjMzMzMDE4ODY3NmUxZWQzNWZlYzFiMTBlNDBkY3AtMiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAtMHgxLjJiZWMzMzMwMTg4NjZiOTE5ZTAyYmYyM2NhZDMyN2YzcC0yLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuMmJlYzMzMzAxODg2NjA0MTRlY2Y3Zjg1ZTQ2YWNkY2RwLTIsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgLTB4MS40NWQ4MTlhOTRiMTRiMzAzMGVlYmJiOWM2ZDRhMmNlOHAtMywKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLjQ1ZDgxOWE5NGIxNGE1OGViZjFmMGUzMjk2YTJiZWI2cC0zLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtMworICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIC0weDEuNDVkODE5YTk0YjE0OTgxYTZmNTI2MGM4YmZlMDY3ZTVwLTMsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS41M2YzOTE4MjJkYmM3OGFlNzgzYjQ1ODY0YjBhYTM5OHAtNCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLjUzZjM5MTgyMmRiYzZhMDI2YmNjYzdiNDA3N2JmYzBhcC00LAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIC0weDEuNTNmMzkxODIyZGJjNWI1NjVmNWU0OWUxYzNkZWE4NzBwLTQsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgLTB4MS41YjUwNWQ1YjZmMjY4NjhmOTY3Nzg3ODY0ODM2OGIxMXAtNSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLjViNTA1ZDViNmYyNjc3M2QzZWE2MzUzZGRiNzVmZTQ2cC01LAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIC0weDEuNWI1MDVkNWI2ZjI2NjdlYWU2ZDRlMmY1NmVhZGM4NGZwLTUsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgLTB4MS41ZjEzNDkyMzc1N2YzZGMzZjM0N2Q2MWRmNWZiNjYyNnAtNiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAtMHgxLjVmMTM0OTIzNzU3ZjJlMWJiODFhMWVmYjU1YzhlMjFjcC02LAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuNWYxMzQ5MjM3NTdmMWU3MzdjZWM2N2Q4YjU5Mjc0MDJwLTYsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLjY2YzM0YzU2MTVkMGQ3ZGIxNDczYmFjMjlhZDFiOThkcC02LAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjY2YzM0YzU2MTVkMGU4MzRjNTQ2ZDA0ODBmMDliYjg5cC02LAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjY2YzM0YzU2MTVkMGY4OGU3NjE5ZTVjZDgzNDVkM2YwcC02LAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLjZhYjBkOWYzMTIxZWIwZmVhNGYyNTI4MjI4MmNiNDU5cC01LAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLjZhYjBkOWYzMTIxZWMxYjNmZDVmNGMwYjM3ODk2MTAxcC01LAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLjZhYjBkOWYzMTIxZWQyNjk1NWNjNDU5NDQ2ZWU2ODU2cC01LAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLjcyYjgzYzdkNTE3YWM3YzdjMGQzNDMyYWQ1NDNhZmE2cC00LAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLjcyYjgzYzdkNTE3YWQ5M2E3OTBmYzA3YzUwMTQzMGMzcC00LAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjcyYjgzYzdkNTE3YWVhYWQzMTRjM2RjZGNhZjYyNDk4cC00LAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgMHgxLjgzN2YwNTE4ZGI4YTdmZjNmNzYzNWY1ZmJlNTRlYmU4cC0zLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLjgzN2YwNTE4ZGI4YTkyZmFmNTZkOTExNmQzNjdkYWQ1cC0zLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLjgzN2YwNTE4ZGI4YWE2MDFmMzc3YzJjZGU4YTBkN2JlcC0zLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgMHgxLmE4Mjc5OTlmY2VmMzA4YzgzNTc3OWE0MzFlMDVjYWJicC0yLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLmE4Mjc5OTlmY2VmMzFmNjhkM2RlMTk3ZWVhNTYyY2NlcC0yLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLmE4Mjc5OTlmY2VmMzM2MDk3MjQ0OThiYWI3MDExMTVhcC0yLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgMHgxLmZmZmZmZmZmZmZmZmQ5NTBkODcxMzE5ZmYwZWYzNDM1cC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLmZmZmZmZmZmZmZmZmY5NTBkODcxMzE5ZmYwMzliYWY5cC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLjAwMDAwMDAwMDAwMDBjYTg2YzM4OThjZmY4NDIyMGRlcDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAweDEuN2ZmZmZmZmZmZmZmZDk1MGQ4NzEzMTlmZjFhYTQzMjhwMSwKKyAgICAweDEuNjJlNDJmZWZhMzllZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgMHgxLjdmZmZmZmZmZmZmZmY5NTBkODcxMzE5ZmYwM2Y1MGFmcDEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwMAorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDB4MS44MDAwMDAwMDAwMDAxOTUwZDg3MTMxOWZmMGQ0NWUzNnAxLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAweDEuZGZmZmZmZmZmZmZmYjJhMWIwZTI2MzNmZTY0MGMyMWJwMywKKyAgICAweDEuNjJlNDJmZWZhMzllZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgMHgxLmRmZmZmZmZmZmZmZmYyYTFiMGUyNjMzZmUwOTRmODM3cDMsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwMQorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIDB4MS5lMDAwMDAwMDAwMDAzMmExYjBlMjYzM2ZlMmU5MmU1NHAzLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuZmRmZmZmZmZmZmZmNjU0MzYxYzRjNjdmZDgzMjczNjFwNywKKyAgICAweDEuNjJlNDJmZWZhMzllZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgMHgxLmZkZmZmZmZmZmZmZmU1NDM2MWM0YzY3ZmMxODM0YmQzcDcsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwMgorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDB4MS5mZTAwMDAwMDAwMDA2NTQzNjFjNGM2N2ZjYWQ0MjQ0NHA3LAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEuZmZmZGZmZmZmZmZlY2E4NmMzODk4Y2ZmZGYyOGEzNmZwMTUsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwMworICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS5mZmZkZmZmZmZmZmZjYTg2YzM4OThjZmY4NDZjMDUzNHAxNSwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLmZmZmUwMDAwMDAwMGNhODZjMzg5OGNmZmE5YWY2NmY5cDE1LAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuZmZmZmZmZmRmZmZkOTUwZDg3MTMxYTAwNzk2MDM5OGZwMzEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwNAorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIDB4MS5mZmZmZmZmZGZmZmY5NTBkODcxMzE5ZmYwZTZkYzBhM3AzMSwKKyAgICAweDEuNjJlNDJmZWZhMzllZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLmZmZmZmZmZlMDAwMTk1MGQ4NzEzMTlmZmEzN2I0N2I2cDMxLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEuZmZmZmZmZmZmZmIyYTFiMGUyNjM0NWI4ZGZlMDA2OTdwMTAyMywKKyAgICAweDEuNjJlNDJmZWZhMzllZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLmZmZmZmZmZmZmZmMmExYjBlMjYzNDAwZDE1ZmM1MmZmcDEwMjMsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwOQorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIEhVR0VfVkFMLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNzJlNDJmZWZhMzlmMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjcyZTQyZmVmYTM5ZWZwOQorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS43MmU0MmZlZmEzOWVlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLmM1MDQxODU0ZGY3ZDVlZDFlNGI4Yzc5NmVmNmVmMjgxcC0zLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIC0weDEuYzUwNDE4NTRkZjdkNDVlNWY1MWExYjE0ZTRiODYyMzRwLTMsCisgICAgLTB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgLTB4MS5jNTA0MTg1NGRmN2QzOTZmZmQ0YWM0ZDNkZjM3YjgyN3AtMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAtMHgxLmUxNGFlZDg5M2VlZjU4Nzk3ZjEyODM4ZjJiOTY5YWMwcC00LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0weDEuZTE0YWVkODkzZWVmM2MzYzE0ZWQ5NjBkMGEyYjUwNTRwLTQsCisgICAgLTB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgLTB4MS5lMTRhZWQ4OTNlZWYyZTFkNWZkYjFmNGJmOTYwN2QwZXAtNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMHgxLmYwNTQwNDM4ZmQ1YzRmYjE3OWZkYzBmOTZlMzNhNjg3cC01LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIC0weDEuZjA1NDA0MzhmZDVjMzFhMWNlMDFmOWY2Y2E3NDUwMmJwLTUsCisgICAgLTB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTB4MS5mMDU0MDQzOGZkNWMyMjk5ZjgwNDE2NzU3ODg5NWYxZHAtNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAtMHgxLmY4MTUyYWVlOTQ1MGZjNmRmNDEyOTVjNzEyYTJjZmNicC02LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIC0weDEuZjgxNTJhZWU5NDUwZGQ2OWZlYTgwZDExM2IxOTQ1YzdwLTYsCisgICAgLTB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgLTB4MS5mODE1MmFlZTk0NTBjZGU4MDNmMmM4YjY0ZjRlYjAwOHAtNiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAtMHgxLmZjMDU1MDA0NDE2ZGQ1OGNiYmI0YTliNGVmMjNmYjY3cC03LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIC0weDEuZmMwNTUwMDQ0MTZkYjYwYmJkMDhhYWM1NGE5NTZlNzZwLTcsCisgICAgLTB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgLTB4MS5mYzA1NTAwNDQxNmRhNjRiM2RiMmFiNGQ3ODRiMzNlNnAtNywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAtMHgxLmZlMDE1NGFhZWVkODUzYzFlMDRiZDE1NWUwZDYxNDU3cC04LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNworICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIC0weDEuZmUwMTU0YWFlZWQ4MzQwMWEwNzY2NmIzYmJkZTkwOGZwLTgsCisgICAgLTB4MS4wcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgLTB4MS5mZTAxNTRhYWVlZDgyNDIxODA4YmIxNjJhOTYxNTFhOHAtOCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAtMHgxLmZmMDA1NTQwMDQ0M2FlMzJmMWU5Mjc0ZmZhMjk5ZDVkcC05LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtOAorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIC0weDEuZmYwMDU1NDAwNDQzOGU1MmUxZWU3YjUwM2U2MzgxOGNwLTksCisgICAgLTB4MS4wcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS5mZjAwNTU0MDA0NDM3ZTYyZDlmMTI1NTA2MDdmYjQ2M3AtOSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAtMHgxLmZmODAxNTUyYWFlZjA5MmVmZmU4OTQ1YjA0YjYwMTY4cC0xMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAtMHgxLmZmODAxNTUyYWFlZWU5M2VmYmU5M2VmMDVjMmRjYjIwcC0xMCwKKyAgICAtMHgxLjBwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAtMHgxLmZmODAxNTUyYWFlZWQ5NDZmOWU5OTQzYjA3ZTk1MDJjcC0xMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgLTB4MS5mZmMwMDU1NTAwMDQ2NDBlYzQwYzBlNmU5ODg3YjBjOXAtMTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIC0weDEuZmZjMDA1NTUwMDA0NDQxNmMzMGMyM2MyOTg5OTAxMTRwLTExLAorICAgIC0weDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAtMHgxLmZmYzAwNTU1MDAwNDM0MWFjMjhjMmU2Yzk4YTE3OTQ2cC0xMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgLTB4MS5mZmY4MDAxNTU1MmFjYWVkZWU5N2U5OWJlZjZjNDJmZnAtMTQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMworICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIC0weDEuZmZmODAwMTU1NTJhYWFlZWVlOTNlOWE2OWEwMWEwNzZwLTE0LAorICAgIC0weDEuMHAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAtMHgxLmZmZjgwMDE1NTUyYTlhZWY2ZTkxZTlhYmVmNGM0OTMycC0xNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLjIyZDc4ZjBmYTA2MThmOTQzZmYwYmIyZGU3Y2ZkZjBjcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLjIyZDc4ZjBmYTA2MTk5ZDllZjBlZGE2ZWFhZjk0ZDNicC0yLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLjIyZDc4ZjBmYTA2MWFlNjU0ZDRiMThmMDMxODljYmIzcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjEwYjAyMmRiN2FlNjczZDZiYjIxNDBhYzFjZTQwYnAtMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS4xMGIwMjJkYjdhZTY3Y2U3NmI0NDFjMjcwMzVjNmExM3AtMywKKyAgICAweDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS4xMGIwMjJkYjdhZTY4ZjA4Y2I4OWQzMWNkMDY4NWE0YXAtMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIDB4MS4wODJiNTc3ZDM0ZWQ3NGQ3MDQ1NWRmODdlNWRlMDg5NHAtNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS4wODJiNTc3ZDM0ZWQ3ZDViMWEwMTllMjI1YzlhOTUxYnAtNCwKKyAgICAweDEuMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIDB4MS4wODJiNTc3ZDM0ZWQ4ZTYzNDU1OTFiNTc0YTIwNzQ0YnAtNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS4wNDBhYzAyMjRmZDkyOTgwNzc2MDZjZTEwYjQ3OGM5N3AtNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS4wNDBhYzAyMjRmZDkzMWMxN2ExMDc1NzUwMTkyZjRkNXAtNSwKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS4wNDBhYzAyMjRmZDk0MjQzN2Y3MDg2OWNlZTJmZjYxM3AtNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS4wMjAyYWQ1Nzc4ZTQ1NjhkZDhkNzRmNTFmNzBmN2Q5Y3AtNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS4wMjAyYWQ1Nzc4ZTQ1ZWFlMTkyY2ZhNDExMzlhZDE1YnAtNiwKKyAgICAweDEuMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS4wMjAyYWQ1Nzc4ZTQ2ZWVlOTlkODUwMWY0Y2I0ODRmMnAtNiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS4wMTAwYWIwMDIyMmQ3ZTA5MjFiNmFlMzc5MTc2NzgyNXAtNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtOAorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS4wMTAwYWIwMDIyMmQ4NjE5MzFjMTVlMzliNDRlOTkzN3AtNywKKyAgICAweDEuMHAtNworICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS4wMTAwYWIwMDIyMmQ5NjM5NTFkNmJlM2RmYTAwNWU1ZnAtNywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNworICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS4wMDgwMmFiNTU3NzdjYTgyMjY0MTdjYmZlZTJmZjM4YnAtOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtOQorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS4wMDgwMmFiNTU3NzdkMjhhMmE0MmQyNmFhOWVlNjdiY3AtOCwKKyAgICAweDEuMHAtOAorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS4wMDgwMmFiNTU3NzdlMjlhMzI0NTdkYzAyMTZjMTBkZnAtOCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtOAorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS4wMDQwMGFhYzAwMjIxY2Y2ODJhYjUwMzVlOTA5NjM1NXAtOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEuMDA0MDBhYWMwMDIyMjRmYTgzYWI3YWU1ZTk5MWU3MzdwLTksCisgICAgMHgxLjBwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuMDA0MDBhYWMwMDIyMzUwMjg1YWJkMDQ1ZWFhMzRmMmJwLTksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuMDAyMDAyYWFkNTU3NmY4YzM5NzM5YzY0OWYyZmMyMzdwLTEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS4wMDIwMDJhYWQ1NTc3NzhlMzliM2ExYmE0OWRlYTk1MnAtMTAsCisgICAgMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjAwMjAwMmFhZDU1Nzg3OTIzYTMzYWM2NTlmM2NhNzkycC0xMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuMDAwNDAwMGFhYWJmZjgyMWUyNGVhNTJiYTg2OTMyYjhwLTEzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS4wMDA0MDAwYWFhYzAwMDIyMjI0ZmE1MmU1MzE5MzFjMXAtMTMsCisgICAgMHgxLjBwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLjAwMDQwMDBhYWFjMDEwMjJhMjUxYTUzM2E4NzkzNWQycC0xMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwOQorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA4CisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwOAorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNjk2MmI4Y2RlcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTY5NjJiOGNkZXAtMSwKKyAgICAtMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU2OTYyYjhjZGVwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmOGRlZTZjMjI3YTZmNDNhYTgxNTMwcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgLTB4MS5mZmZmZmZmZmZmZjhkZWU2YzIyN2E2ZTVmODc1OTk3ZnAtMSwKKyAgICAtMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEuZmZmZmZmZmZmZmY4ZGVlNmMyMjdhNmRlZDc1YzViYTdwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAtMHgxLmZmZmZmYzM5NTQ4OGEyMmY0YTZiNWViODc1ZWE1YTY2cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgLTB4MS5mZmZmZmMzOTU0ODhhMjJmNDZhNGIzNDExODE5YTJlZXAtMSwKKyAgICAtMHgxLjBwNAorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIC0weDEuZmZmZmZjMzk1NDg4YTIyZjQ0YzE1ZDg1NjkzMTQ1YzdwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAtMHgxLmZmZDQwN2JkZjdkZmIwYmM4NDI3NWI0MTI1YTk2ZWI3cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgLTB4MS5mZmQ0MDdiZGY3ZGZiMGE2ODgwNjU3MzBmZTAyMzFjMnAtMSwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0weDEuZmZkNDA3YmRmN2RmYjA5Yjg5ZjVkNTI4ZWEyYTc0MDJwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAtMHgxLmY2OWY1NTIzZWY2MTg4MWMzNjVmODM4ZTNjZWNlNWQ0cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgLTB4MS5mNjlmNTUyM2VmNjE4NWM0MGJhODdmNjY5ZWE4ZWUxNXAtMSwKKyAgICAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIC0weDEuZjY5ZjU1MjNlZjYxODQ5N2Y2NGNmZDUyY2Y0ZWFlMzVwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAtMHgxLmJhYjU1NTcxMDFmOGRhMjllNzc2MzQzYzMxM2IwMjllcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgLTB4MS5iYWI1NTU3MTAxZjhkMTgwOTIyNDU0N2I0YmY1YWEzOHAtMSwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEuYmFiNTU1NzEwMWY4Y2QyYmU3N2I2NDlhZDhlYjBlMDVwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAtMHgxLjQzYTU0ZTRlOTg4NjRkOTAzNTVkODc3MjdhZGIzN2U3cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgLTB4MS40M2E1NGU0ZTk4ODY0MWNhOGE0MjcwZmFkZjU2MGRlNHAtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIC0weDEuNDNhNTRlNGU5ODg2M2JlN2I0YjRlNWJmMTE0Y2Q2ZTBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgMHgxLjk0NzY1MDRiYTgzOTlmNWI5N2NhZTM1YmViNzhjM2M1cDczOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA4CisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgMHgxLjk0NzY1MDRiYTg1MmU2YzA5Yzg1NjdjMDFjNWE2NjQ4cDczOCwKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgMHgxLjk0NzY1MDRiYTg4NTc1OGFhNWZhNzU0NWUxMGU4ZTQ2cDczOCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLjQxYzdhODgxNGJlMTkyYTVkZjI1YjA0MmFmODI0ZWZkcDM2OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA3CisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgMHgxLjQxYzdhODgxNGJlYmEwZTMyMzMwMGY3NzdkYTY1ODU0cDM2OSwKKyAgICAweDEuMHA4CisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLjQxYzdhODgxNGJmZmJkNWRhYjQ0Y2VkMjZmYWNjYmZicDM2OSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA4CisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgMHgxLjk1ZTU0YzVkZDQxYjIwNjAwZGQ2MDFhMGFlNjcyZmY0cDE4NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMHgxLjk1ZTU0YzVkZDQyMTc3ZjUzZjRkNTIxOWRmMTFjYTNicDE4NCwKKyAgICAweDEuMHA3CisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgMHgxLjk1ZTU0YzVkZDQyZTI3MWZhMjNiZjM1ODViNjU1MDYwcDE4NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA3CisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgMHgxLjQyNTk4MmNmNTk3YTRkNTJjODllYTg0N2JiYWE4MDdhcDkyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEuNDI1OTgyY2Y1OTdjZDIwNWNlM2Q1YjNlZGIwMzE3NTZwOTIsCisgICAgMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS40MjU5ODJjZjU5ODFkYjZiZDk3YWMxM2MzNWU2NjZjNnA5MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgMHgxLjFmNDNmY2M0YjY1ZGE4OTQ0YWMzODliNjA5ZTBmNzRlcDQ2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAweDEuMWY0M2ZjYzRiNjVlYzdkODQ3ODg0MDE4NDIxNzQwNzRwNDYsCisgICAgMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIDB4MS4xZjQzZmNjNGI2NjEwNjYwNDExMWFjZTAxMDRmYzkwZXA0NiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1CisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgMHgxLjBmMmViYjBhODAwMTdjZmFjNTZjMzA4NzRhZmJhYjk4cDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEuMGYyZWJiMGE4MDAyMDQ5MjIzZjE3MDg4MmI1ZWU1ZWZwMjMsCisgICAgMHgxLjBwNAorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIDB4MS4wZjJlYmIwYTgwMDMxM2MwZTBmYmYwOGFiNzg4Njg2NnAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgMHgxLjc0N2VhN2Q0NzBjNjgxZTQzNjE4ZWMxOGQ1M2YxYjIxcDExLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAweDEuNzQ3ZWE3ZDQ3MGM2ZGYwYmUwMGUwODRhODE1ZDFkZTZwMTEsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIDB4MS43NDdlYTdkNDcwYzc5OTViMzNmODQwYWUxZjc2ZTJlN3AxMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgMHgxLmFjYzkwMmUyNzNhNTRmZGZiNjc3NzE2NmU2NzYwZGZicDUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIDB4MS5hY2M5MDJlMjczYTU4Njc4ZDZkM2JmZGI5M2RiOTZkMHA1LAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAweDEuYWNjOTAyZTI3M2E1ZjNhYjE3OGM1Y2M1MDMyMDE0OWNwNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgMHgxLjk4ZTY0YjhkNGRkYWJmMzRkNTgyY2QyOTA5YWFmYjJhcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDB4MS45OGU2NGI4ZDRkZGFkY2MzM2EzYmEyMDZiNjhhYmJhOHAyLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAweDEuOThlNjRiOGQ0ZGRiMTdlMDAzYWQ0YmMyMTVkNGVmODZwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgMHgxLmI3ZTE1MTYyOGFlZDE0YWJiNGU2NDQyOTMzZjg5OWY2cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzkKKyAgICAweDEuYjdlMTUxNjI4YWVkMmE2YWJmNzE1ODgwOWNmNGYzYzdwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMHgxLmI3ZTE1MTYyOGFlZDU1ZThkNDg3ODEyZjcwZjc5MDY3cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIDB4MS5mZmMwNDU2OTJmYzlkYmM3YjdlMDMyNTc2ZTVlMjZmOHAxMDIzLAorICAgIDB4MS42MmU0MWZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuZmZjMDQ1NjkzMDA5ZDNkMDY1MDYyZjkyNjdkZmY1NWVwMTAyMywKKyAgICAweDEuNjJlNDJwOQorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIDB4MS5mZmMwNDU2OTMwNDljYmQ5MTIyYzM0Y2M2Mjc3Njg4NHAxMDIzLAorICAgIDB4MS42MmU0MjAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNzJlNDIwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMzQ1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjcyZTQycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNzJlNDFmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzQ3CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwMTAyMAorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIEhVR0VfVkFMLAorICAgIDB4MS45OTk5OTk5OTk5OTlhcDEwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAxMDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzUwCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjY2NjY2NjY2NjY2NjdwMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIEhVR0VfVkFMLAorICAgIDB4MS5iMzMzMzMzMzMzMzM0cDEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTIKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzUzCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM1NAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMzU1CisgICAgLTB4MS5wMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgMHgxLjYyNDA0NmViMDkzMzhkMjk5MWEzMDg5M2U3ZjQxMDhkcDQsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIC0weDEuZTlkZmRkODRhNjcxMDY2YjYxOWYxYmIyM2JhMmViMmZwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuZTdiZGI5MGFiMjZiZGY1NTVlYWYxOWRhN2YwNDNmMmNwMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgLTB4MS45NTkwY2VlNDIyNjA4MTNjYWM0NGY1M2IzMjE3ZWQxOXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIDB4MS5iN2UxNTE2MjhhZWQ1NWU4ZDQ4NzgxMmY3MGY3OTA2N3AwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAtMHgxLjQzYTU0ZTRlOTg4NjRkOTAzNTVkODc3MjdhZGIzN2U3cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgMHgxLmI3ZTE1MTYyOGFlZDJhNmFiZjcxNTg4MDljZjRmM2M3cDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIC0weDEuNDNhNTRlNGU5ODg2NDFjYThhNDI3MGZhZGY1NjBkZTRwLTEsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAweDEuYjdlMTUxNjI4YWVkMTRhYmI0ZTY0NDI5MzNmODk5ZjZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2OQorICAgIC0weDEuNDNhNTRlNGU5ODg2M2JlN2I0YjRlNWJmMTE0Y2Q2ZTBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLjMxN2FjZDI4ZTM5NTRhYjBiOGUzOTg2NTRmMjU1OTBhcDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICAtMHgxLjE2OGY0NzE4N2RiYzM2MGY0YWMwMzVmYzhmZjllOTEzcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIC0weDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzc0CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzgKKyAgICAweDEuZmZmZmZmZmZmZmZmYzBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM4MAorICAgIDB4MS5wLTEwNzMsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDc0LAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODMKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDM4NAorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODYKKyAgICAweDEuZmZmZmZmZmZmZmYyYTFiMGUyNjM0MDBkMTVmYzUyZmZwMTAyMywKKyAgICAweDEuNjJlNDJmZWZhMzllZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwOQorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2V4cG0xZl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvZXhwbTFmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNmY2YmMyCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2V4cG0xZl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxMTgyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZmxvYXQsIGZsb2F0PiBnX2V4cG0xZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEuZmZmZmYwMDAwMDU1NTU1NDAwMDAwNDQ0NDQzOGUzOGVwLTIxLAorICAgIC0weDEucC0yMAorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAtMHgxLmZmZmZmODAwMDAxNTU1NTUyYWFhYWFlZWVlZWU5M2U5cC0yMiwKKyAgICAtMHgxLnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS5mZmZmZmYwMDAwMDA1NTU1NTU0MDAwMDAwNDQ0NDQ0M3AtMjUsCisgICAgLTB4MS5wLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIC0weDEuZmZmZmY0MDAwMDE1NTU1NWJmZmZmZDk5OTk5YjhlMzhwLTIxLAorICAgIC0weDEuMDAwMDAycC0yMAorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMHgxLjAwMDAwMGZmZmZmY2FhYWFhYTU1NTU1YWNjY2NjYjZjcC0yMywKKyAgICAtMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgLTB4MS45MmVhZDZmY2VmNjJmYThmZmQ2ZGRkZWE1MmNiNzc1ZHAtMiwKKyAgICAtMHgxLjAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgLTB4MS4wMDAzZmZmZmZmN2ZmYmZmZjgwMDJhYWNhYWIyYWFhYXAtNDAsCisgICAgLTB4MS4wMDA0cC00MAorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAtMHgxLjQzZWIyNzAwMDczZDQyMzgxOWZhODVjZTUzNGYzYmYxcC0xLAorICAgIC0weDEuMDA1ZnAwCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIC0weDEuYzU5OTk4ZjA3NDM1M2M1ZDA0OTJlMjNjZmVjYmMxZjVwLTMsCisgICAgLTB4MS4wMDYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIC0weDEuZjQ4YTJhZTVjYzcyZDI4ZTRmZjVkMzk0MGM2MDgxNDZwLTUsCisgICAgLTB4MS4wMjNlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAtMHgxLmYyYmU1NzAwMmZjMzcxMDkzZGQ5NjIzZWM2Y2RjZjg4cC00LAorICAgIC0weDEuMDllOTQwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAtMHgxLjRiM2I4Y2ZmZmY3OGI5N2E2MGNlODQxZDk5MTM4ZTM0cC0xLAorICAgIC0weDEuMGE4NjZjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIC0weDEuMWUzN2ZhZmZmYjVkZTg0ZGRiNjFhYzU4ZDk2YzYxMDlwLTIxLAorICAgIC0weDEuMWUzOHAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIC0weDEuYzk2MDA2ZmZmNzM1ZDU5YjI4Y2M4MjI2ZTk5YmQ4MTFwLTIsCisgICAgLTB4MS4yZWZkMGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIC0weDEuZDMwMDIzMDAzY2M0NTg5YTRhMjE3NzQ5YTUwOTU5ZGNwLTEsCisgICAgLTB4MS4zNzQxMThwMQorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgLTB4MS43ZThiY2VmOWM0ZmU5ZTBhYzJkMDUzMTBmNWNiZDhmMnAtMSwKKyAgICAtMHgxLjYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmJwLTEsCisgICAgLTB4MS42MHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAtMHgxLjk3NThiNmYzOGIwMTI5NDllN2I5M2M3ZjI3MjAyYTQ4cC0zLAorICAgIC0weDEuYzYyZWUwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAtMHgxLjc1MWIyMTY5ZWUyMDBhN2JiNGYyNmJjY2I2MTlhODBlcC0yLAorICAgIC0weDEuY2ZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAtMHgxLmEwNjZkMzAwMTMwZmY0ZTRmYzY1YmFkMGE3ZjcyY2ExcC0zLAorICAgIC0weDEuZDE4NDhjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAtMHgxLmZmZmZmNmZmZmYyOTMzMzIwZWIzMzEwZmM5NWM5N2E1cC0xLAorICAgIC0weDEuZTQzNGRlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIC0weDEuZmZmZmY3ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNjk2MWVkN2YwcC0xLAorICAgIC0weDEuZmZmZmZjcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS4wMTAwYWIwMDIyMmQ4NjE5MzFjMTVlMzliNDRlOTkzN3AtNywKKyAgICAweDEucC03CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuMDAwMDA0MDAwMDBhYWFhYWMwMDAwMDIyMjIyMjRmYTRwLTIxLAorICAgIDB4MS5wLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuYmNhYjg5MDAwMTFmZjQ1NmI1NjIxMmY5OTg5NTFlMzhwMCwKKyAgICAweDEuMDFjMThlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS5iNjFlNWNhM2E1ZTMwYjJmMGEwM2YyOGFmOWNlMDA4NHA5MywKKyAgICAweDEuMDRwNgorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLmM2MmIxZDdlZWE5Y2M2ZjZlYTNmZjc4MmJlNzNiMGNicDAsCisgICAgMHgxLjA1MzRwMAorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLmFlZjFhYmMxYjFjNTRlMjQyOWQ4MWRkYjc5Nzc1ZWVmcDk0LAorICAgIDB4MS4wNmI0ZTBwNgorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLjk0YzI1OTBjMGFjOTk5M2U5M2FhOGFjYWYxMDQ2YzczcDk2LAorICAgIDB4MS4wYzAwNDBwNgorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLjJhNzkzOGZmZmVjOTYxNmI0ZDYzMWNiMzNkOTkwMTYwcC0zLAorICAgIDB4MS4xNmExNTBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS43NTJhNjRmZmZmNjE0OWZhMGJkNmY5NWJiMTBiZjhlOHAtMSwKKyAgICAweDEuMTg0YjYycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEuMzc3MDNkMDAwMDJkODE0ZTQ2MDViMDlkN2VmMTUzNjhwLTQsCisgICAgMHgxLjJjMmE5MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLjQ0ODM1YWZmZmVmMGYwMWUyZTQwMDk4OWRlODFiZDgycC0zLAorICAgIDB4MS4yZDNiNzZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS4wMjFjODRmZmZmZjVkNTRlNDIyOWVkZTk0M2Y0YTE2OHA3LAorICAgIDB4MS4zNzhjYjRwMgorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLmZmMmFjNDcwN2RlZTNjZDM1ODQ4YmRiNGQ0Mjk2ODI0cDEyNCwKKyAgICAweDEuNWE5MTJjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS43ZmY3ZjY5MzI0NDVkMmUzMWYxYjdjMjBkN2M3ZDg3MXAxMjYsCisgICAgMHgxLjVlZjdiY3A2CisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuZjkxNjQ2NzM0OWIwNThiOWMzODkwNjkxMWI4NTYwNTJwMTI2LAorICAgIDB4MS42MDEwN2NwNgorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLmY3NmJhNDY3MzNmNDE0NmEwZjk0YjNkMTMxMTQ5NGJhcDEyNywKKyAgICAweDEuNjJkMmUycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5mZmYxMDg2NjMyYjBlOWI5M2JjNWJlNDRkOWMxZGVhNXAxMjcsCisgICAgMHgxLjYyZTQxMnA2CisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuOGRiZTYzMDAwMDAwZDdkYzY3ZTJlNjc1NzVjMDY1OTlwLTMsCisgICAgMHgxLjZiN2Q4YXAtMworICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjkxODVhOGZmZmU1YTRmMDAwZWI1YWI2M2RhM2JmYTNmcC0zLAorICAgIDB4MS42ZWE2ZTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5lNWZhNzM2MzFjODA1NzFiYjc4NWU4NGIxZGZmMGZiNHA3MCwKKyAgICAweDEuODk0YTUycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5kZmM1ZTUwMGEwZDY0NzY1ZjA2OTI3M2I3ZTIxNTcxOXAtMiwKKyAgICAweDEuODk3YmE4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuOWE2ZTg3MGJiYjdiMjc3OWNkZWQ3OGJlOWI5MWEyZGFwNzEsCisgICAgMHgxLjhkN2JkZXA1CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuZmIxODA2MDAwMDBjMDE3NWVlMWM4ODU1ZGFhZWJkYjZwMSwKKyAgICAweDEuOWEwYmNjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS4wMGYyMDBmZmZmOTE4YzYwYTZmMTIyYTNiNDc1ZTBmZXAtMSwKKyAgICAweDEuYTA3NGI4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuYzZiNGFhMDAwMDBiZjJkNTgyMjNjYTkyNDliNDczMTZwLTQsCisgICAgMHgxLmFmMzExYXAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLmUxYmNkNGZmZmUzMTQ0ODc1NTZhMDliYjBjOGE3NTUxcC0zLAorICAgIDB4MS5iMGE0ZDRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS5kNjI2NDlmZmZmZjgyYjFlNjY5ODQxMWEwODE0NWEyOXAtNCwKKyAgICAweDEuYmQxMWE4cC00CisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuMDUxNjFiMDAwMTFiOTMxM2VmZWQyNGEwOWE4Y2IwNDRwLTIsCisgICAgMHgxLmQxMWViYXAtMworICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLjlhOTJlOTBiYWEyOTY5ZmE4YzcxYmIzYzJiZThiYjQwcDg1LAorICAgIDB4MS5kYjFlN2VwNQorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLmU2M2ViY2ZmZmVlODQwMDgyMDZjNDU0MzVlZTUyNzIycC0xNCwKKyAgICAweDEuZTYzNzg2cC0xNAorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLjk3NjhkMzAwMDJkODliYmQ3Zjg3YzIxMzEwNzRjOWM1cDAsCisgICAgMHgxLmU3ODhiOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjZlMjNkOTgwZGQyZDJmYmEyODVmZjMwNDQ2YTc4OTE0cDUsCisgICAgMHgxLmVjMmYyNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuYTY2NGQ4ZWQ3Y2MzM2VkZTk2NTM5MjcyMmIwZDg3YmZwMjIsCisgICAgMHgxLmY3ZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuYjY5MDRkZmZmZTQyNTE0Mjc5ZGI3MTM5N2I3ZmZiNDVwMCwKKyAgICAweDEuZmYwN2NlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuYjZiMTFlYTc5OWI3YzcxY2YyZjZiOTY1OWM4MTU1YzZwMCwKKyAgICAweDEuZmYxZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuM2Q1OWQyZDhiMjJiNDFjMmJiNjMzNGI5YmU3YmU5MDJwOTIsCisgICAgMHgxLmZmZGZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuMDAwMDBiMDAwMDBhYWFhNzhmZmZlOTc3NzdhNGQ4MzJwLTE5LAorICAgIDB4MS5mZmZmZjZwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuZmZmZmY4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNwLTEyNywKKyAgICAweDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS4wMDAwMDFmZmZmZmFhYWFhOGZmZmZmZjc3Nzc3ZmE0ZnAtMjEsCisgICAgMHgxLmZmZmZmY3AtMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS40MjU4ZTFhMmMwNjA0ZWVhMWU4NzRkNzAwNGU2ZGZiOXA5MiwKKyAgICAweDEuZmZmZmZjcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS4wMDAwMDcwMDAwMWFhYWFhZGQ1NTU1NGNjY2NiYTdkMnAtMjAsCisgICAgMHgxLmZmZmZmZXAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS4zMDRkMWVkOTUxMWJmNWE2OWRiMjBlNGNkYmY2ZDhmZnA2OSwKKyAgICAweDEuN2ZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS4zMDRkNmFlY2EyNTRiM2FmNDNjNWQ2MjkzZDVmNjVjN3A2OSwKKyAgICAweDEuODBwNQorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgMHgxLjMwNGRiNzAwMDY5MjQ4NjZiNDE4NDUwOTdjOTFlNDg4cDY5LAorICAgIDB4MS44MDAwMDJwNQorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZjMGUzMzc3ZGM5NjcxN3AtMSwKKyAgICAtMHgxLmEwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmMwZTMyN2I2OTU0ZGEzcC0xLAorICAgIC0weDEuYTBwNQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZjMGUzMTdlZjVkNDI2MXAtMSwKKyAgICAtMHgxLjlmZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuNTU3NmYwZGNhYzIxNzg3ZjJkNTdiMTRhNzAwMjA0ZTNwMTE1LAorICAgIDB4MS4zZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLjU1Nzc5Yjk4NGYzZWIzYzhhNTAzYjRhOGUyNDg3ZDk4cDExNSwKKyAgICAweDEuNDBwNgorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjU1Nzg0NjU0NDdiOWQ1ZjgzMjQ2YWYxZTQ4ZTgwMjVicDExNSwKKyAgICAweDEuNDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmJwLTEsCisgICAgLTB4MS42MDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYnAtMSwKKyAgICAtMHgxLjYwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmJwLTEsCisgICAgLTB4MS41ZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLjAzOTkyNDQyOGY0NzUxMWMwM2M3NWRkNjIzYmM0N2UxcDc1LAorICAgIDB4MS45ZmZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLjAzOTk2NTI4ZTA3NGJlYmNmZDU2NDE2ZmMyYzBlYjkycDc1LAorICAgIDB4MS5hMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEuMDM5OWE2MGY0MWRiYzJiMDg1MDIxMzEyZjUwNTA4OWRwNzUsCisgICAgMHgxLmEwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmMjhhMmQ4NjU3ZTkzZTQzcC0xLAorICAgIC0weDEuODAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmYyOGEyYTI4ZTJkZjI1YTBwLTEsCisgICAgLTB4MS44MHA1CisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmMjhhMjZjYjZjZmRhZmEwcC0xLAorICAgIC0weDEuN2ZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS5mMTA0NzU0NTQ2NWY5N2FhZDY3NzRkZmUxNmI5NjBkZXAxMjYsCisgICAgMHgxLjVmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEuZjEwNTZkYzdiZjIyZDNkZTBlZDU3NjE1YmM1MDFmODdwMTI2LAorICAgIDB4MS42MHA2CisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuZjEwNjY2NGFiNDI3NmI4MzM5OTMwNTBjOWFhMDlhOTFwMTI2LAorICAgIDB4MS42MDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDAwNHAtMSwKKyAgICAtMHgxLjQwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkMDA0cC0xLAorICAgIC0weDEuNDBwNgorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDAwNHAtMSwKKyAgICAtMHgxLjNmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYTU3MzQ3cC0xLAorICAgIC0weDEuMjc0NzY4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYmRwLTEsCisgICAgLTB4MS40ZThlZDBwNgorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjc1ZDYzOHA2CisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLjAwMDAwMDA4MmUzMDg2MzJjMDZkNWQ2NTEzNjU3NWVhcC0xLAorICAgIC0weDEuNjJlNDMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAtMHgxLmZmZmZmZTEwNWM2MDFjYzFlMTk5ZjkyNjFmYzdkYmU2cC0yLAorICAgIC0weDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAtMHgxLmZmZmZmYzEwNWM1ZDJkMWU0MDY5OTNlMjBhZGMwMmJmcC0yLAorICAgIC0weDEuNjJlNDJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAtMHgxLjJiZWMzMzNiYWEyODA4NTBiNmJmOTExMWJiODczZjYwcC0yLAorICAgIC0weDEuNjJlNDMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAtMHgxLjJiZWMzMWQxYTA0MTRiYTM1MTFjMThmMzJiYjU1ZDYzcC0yLAorICAgIC0weDEuNjJlNDJlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAtMHgxLjJiZWMzMDY3OTY1OWQ5ZjBmN2VkMDhlNGViMDZkZmVmcC0yLAorICAgIC0weDEuNjJlNDJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAtMHgxLjQ1ZDgxOWI3MGQxMmRiOWYxNTUxMzMxMTg4NzkwZGY2cC0zLAorICAgIC0weDEuNjJlNDMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAtMHgxLjQ1ZDgxODA4ODMxOTEzOTExYWQxNTcyNGQ5ZDUxMjExcC0zLAorICAgIC0weDEuNjJlNDJlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAtMHgxLjQ1ZDgxNjU5ZjkxZWRmZTBhMWQyMDM2OWJiZGFhNDg1cC0zLAorICAgIC0weDEuNjJlNDJjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgLTB4MS41M2YzOTE5MTJlN2YyMWFiNTAyMTlkNjdhYTMyMzYzYXAtNCwKKyAgICAtMHgxLjYyZTQzMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIC0weDEuNTNmMzhmYmJhY2YxMzY3OTA3MjdiYzJkYTM2YjhhZmNwLTQsCisgICAgLTB4MS42MmU0MmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAtMHgxLjUzZjM4ZGU2MmI2MzEwOTY4YzZjYzlhNzYxNmIzM2NicC00LAorICAgIC0weDEuNjJlNDJjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgLTB4MS41YjUwNWQ2YjE5ZjRiNDA1ZGJiNmI5ZWYxOGFkOWUzNXAtNSwKKyAgICAtMHgxLjYyZTQzMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIC0weDEuNWI1MDViODBjZWZhN2I2NTIzMzA1ZTIyYTRjMDZjMjhwLTUsCisgICAgLTB4MS42MmU0MmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAtMHgxLjViNTA1OTk2ODQwMDI0MWZiYjA1ODMyNTJiNGMxMTg1cC01LAorICAgIC0weDEuNjJlNDJjcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgLTB4MS41ZjEzNDkzMzc4MjBhYmE2YWMzMzJkZWQ5ODM0NzkwNHAtNiwKKyAgICAtMHgxLjYyZTQzMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIC0weDEuNWYxMzQ3M2U3MGJhZWQ2ZTRmYTE5Y2IxYWVmYjlhMDRwLTYsCisgICAgLTB4MS42MmU0MmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMHgxLjVmMTM0NTQ5Njk1NTFmOGRiN2UxZGIxMWY0N2RjMzE1cC02LAorICAgIC0weDEuNjJlNDJjcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLjY2YzM0ODUwNjFiM2ZlNmE1ZDJmMmUyMGYzZGEzNzgzcC02LAorICAgIDB4MS42MmU0MmNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuNjZjMzRhNWI5N2NlNDkxYTQzMzg0MTRjZmY5NjY2ZTZwLTYsCisgICAgMHgxLjYyZTQyZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS42NmMzNGM2NmNkZThhNDIzZGExM2ViNWVmZWU1MzQwZXAtNiwKKyAgICAweDEuNjJlNDMwcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLjZhYjBkNWQ2ZDFkNDQ5OTI1MDNlNGI2ZjNiMDlmMDdlcC01LAorICAgIDB4MS42MmU0MmNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEuNmFiMGQ3ZWQ3Y2UxYjdiNGM1ZWUyOTE5YWI0ZjExZTZwLTUsCisgICAgMHgxLjYyZTQyZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS42YWIwZGEwNDI3ZWY0NzQxZWM3NWY0NDBmZDRlYjBmOXAtNSwKKyAgICAweDEuNjJlNDMwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMHgxLjcyYjgzODMyN2FlMWY5ZDdlNzA0MThhNDc2ZGE0ODBkcC00LAorICAgIDB4MS42MmU0MmNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEuNzJiODNhNjBkMWU5MjMwY2IzYjUyY2QxMjAwYjhkY2RwLTQsCisgICAgMHgxLjYyZTQyZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS43MmI4M2M4ZjI4ZjA5MjBjNjE0ZmM0NDU2ZGUwNDlmY3AtNCwKKyAgICAweDEuNjJlNDMwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjgzN2YwMDZhOTBlMmQ5YWRmOWI5YjljNTg1MDk3MGQxcC0zLAorICAgIDB4MS42MmU0MmNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEuODM3ZjAyY2I3MGEzNDA2ZTJhNzlkMTc1MGFmMWQ3ZTJwLTMsCisgICAgMHgxLjYyZTQyZXAtMworICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS44MzdmMDUyYzUwNjQzZjY2NGI2NmEwMmVjNWFjMTZkYnAtMywKKyAgICAweDEuNjJlNDMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLmE4Mjc5NDBlY2E5Zjc2NjczZTUxZDJjNDU2OWNmYjNhcC0yLAorICAgIDB4MS42MmU0MmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEuYTgyNzk2ZTJkZTZhMzJkMTgwYWQwYjM1MzI2Nzk4M2JwLTIsCisgICAgMHgxLjYyZTQyZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS5hODI3OTliNmYyMzY1OTQ1YThjMGZiNDBhMjcxNzRkYXAtMiwKKyAgICAweDEuNjJlNDMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLmZmZmZmODIwYjhjOWQ4NjUyNWU1NWY1ODdlMzQ4NjFhcC0xLAorICAgIDB4MS42MmU0MmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEuZmZmZmZjMjBiOGMzZjkxZGVjNzhjYjhjZDUzYTkyZTNwLTEsCisgICAgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS4wMDAwMDAxMDVjNjEwY2ViNTc5Njc4NDJiZDU5ZjA5NHAwLAorICAgIDB4MS42MmU0MzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEuN2ZmZmY4MjBiOGQxOTc3OTY5MmZiMGZjYzAyODEyNDZwMSwKKyAgICAweDEuNjJlNDJjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuN2ZmZmZjMjBiOGM1ZDhlYWZmNGFjMDEzY2Y3MzQ2MzlwMSwKKyAgICAweDEuNjJlNDJlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuODAwMDAwMjBiOGMyMWE1Yzg1ZThiMjQ0ZWQxNTFjZDhwMSwKKyAgICAweDEuNjJlNDMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuZGZmZmYwNDE3MWMyMmI0M2EyOGQ4MDg4YzM0N2JmMWZwMywKKyAgICAweDEuNjJlNDJjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEuZGZmZmY4NDE3MTkzMzEwYTQyOWI3MWU3MGQ3OTIxODZwMywKKyAgICAweDEuNjJlNDJlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuZTAwMDAwNDE3MTg0MzZkMDY2YzA3Y2EzMTJmOGIzMThwMywKKyAgICAweDEuNjJlNDMwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEuZmRmZmUwODJlNDAwNDdjODlkZmE0MWQwOWMxZTFlZjhwNywKKyAgICAweDEuNjJlNDJjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuZmRmZmYwODJlMzQ0NWVlNTViM2ZhODRhNWRkODQ5YzlwNywKKyAgICAweDEuNjJlNDJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEuZmUwMDAwODJlMzA4NzVmZTM5M2RlMjg2ODM3ZjQ4NWRwNywKKyAgICAweDEuNjJlNDMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuZmZmZGMxMDVjOWYwNTQ4NzYwYTgyM2IwZGZkYWViNjZwMTUsCisgICAgMHgxLjYyZTQyY3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgMHgxLmZmZmRlMTA1YzcwMGIxMGMzZTJhNTQ5ZmJkZWJiMGRhcDE1LAorICAgIDB4MS42MmU0MmVwMworICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS5mZmZlMDEwNWM2MTEwZDcyMjE3M2IwZWE1MDUwNzEzYXAxNSwKKyAgICAweDEuNjJlNDMwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuZmZmZjgyMDk5YjlmYmM2ZDVkZGE0MDZhZDlmOTMzNTRwMzEsCisgICAgMHgxLjYyZTQyY3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLmZmZmZjMjA5OGZlMTJmMTAxNzQwYWM5NjUzZjc4ZmUzcDMxLAorICAgIDB4MS42MmU0MmVwNAorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIDB4MS4wMDAwMDEwNGM2MTE1MDVkN2Y3NGE0MTQzMzMxMmRwMzIsCisgICAgMHgxLjYyZTQzMHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLmZmZmUwODJmMjg2ODhkMzg3MmFiOGFhNjlmM2RjMzU2cDEyNywKKyAgICAweDEuNjJlNDJjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAweDEuZmZmZjA4MmU2YzdmZWQxZDNmZDVjZmY3ZTFmNjA1OGZwMTI3LAorICAgIDB4MS42MmU0MmVwNgorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuNjJlNDMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuOWQxZGEycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuOWQxZGEwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuOWQxZDllcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAtMHgxLmM1MDQxYjcyNWQ3MDU0MTZiOWEyZmU5ZWNmZDBmMTJmcC0zLAorICAgIC0weDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS5jNTA0MTg1NGRmN2Q0NWU1ZjUxYTFiMTRlNGI4NjIzNHAtMywKKyAgICAtMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEuYzUwNDE2YzYyMDgzMjk0NWY1MmExNDNiN2FiOWNjNDBwLTMsCisgICAgLTB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLmUxNGFmMTEwZWMzMzY4ZjZiMDk0M2FjZDU0NjAzYzM4cC00LAorICAgIC0weDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgLTB4MS5lMTRhZWQ4OTNlZWYzYzNjMTRlZDk2MGQwYTJiNTA1NHAtNCwKKyAgICAtMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuZTE0YWViYzU2ODRjZDEyNjg4YWYwMmQzYzRjMzNhZTVwLTQsCisgICAgLTB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAtMHgxLmYwNTQwN2ZhZjJkYjZlNjJjYTg2YjkwNjE3N2Y4YWI0cC01LAorICAgIC0weDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS5mMDU0MDQzOGZkNWMzMWExY2UwMWY5ZjZjYTc0NTAyYnAtNSwKKyAgICAtMHgxLnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEuZjA1NDAyNTgwMjljNjYyOWNkYzZlMDY4OGUwYzE3ZDFwLTUsCisgICAgLTB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLmY4MTUyZWNmMTJmZTBmN2NjNDMwNTMyNWViM2NjMjdlcC02LAorICAgIC0weDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgLTB4MS5mODE1MmFlZTk0NTBkZDY5ZmVhODBkMTEzYjE5NDVjN3AtNiwKKyAgICAtMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZjgxNTI4ZmU1NGZhMmQxZGEzZDQ0MTg2NmMyZTJjNjhwLTYsCisgICAgLTB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAtMHgxLmZjMDU1M2Y0NjE0MzI2MjkzMjQ1MjRmMGUzOTY4NDU1cC03LAorICAgIC0weDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS5mYzA1NTAwNDQxNmRiNjBiYmQwOGFhYzU0YTk1NmU3NnAtNywKKyAgICAtMHgxLnAtNgorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEuZmMwNTRlMGMzMTgyZjIyY2EyZTlmZGQ2MWZiM2M0ZDZwLTcsCisgICAgLTB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAtMHgxLmZlMDE1OGEyZjZkMmQ5NjVkNTIwNDY5YTFiNjMwNDE4cC04LAorICAgIC0weDEuMDAwMDAycC03CisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgLTB4MS5mZTAxNTRhYWVlZDgzNDAxYTA3NjY2YjNiYmRlOTA4ZnAtOCwKKyAgICAtMHgxLnAtNworICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuZmUwMTUyYWVlYWRhZGI1YjdhMjk3NmJhMmQyODM2MzRwLTgsCisgICAgLTB4MS5mZmZmZmVwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtMHgxLmZmMDA1OTNjMDY0MmRmZDZkNzY4MGJkMjg0NjI4OWU4cC05LAorICAgIC0weDEuMDAwMDAycC04CisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5mZjAwNTU0MDA0NDM4ZTUyZTFlZTdiNTAzZTYzODE4Y3AtOSwKKyAgICAtMHgxLnAtOAorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIC0weDEuZmYwMDUzNDIwMzQzZTI5M2U1YjIzM2VlMjI0OTI3N2JwLTksCisgICAgLTB4MS5mZmZmZmVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLmZmODAxOTUwYWI2ZWQxZWQ1MGJhNjEwNTBiMjZhN2MycC0xMCwKKyAgICAtMHgxLjAwMDAwMnAtOQorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIC0weDEuZmY4MDE1NTJhYWVlZTkzZWZiZTkzZWYwNWMyZGNiMjBwLTEwLAorICAgIC0weDEucC05CisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS5mZjgwMTM1M2FhYWVmMzY4OTE1MGI2MjRlNGQyZjJkYXAtMTAsCisgICAgLTB4MS5mZmZmZmVwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgLTB4MS5mZmMwMDk1NDAwMjQ0MDZjODMwMjAyOGM3NzE0Y2NlYXAtMTEsCisgICAgLTB4MS4wMDAwMDJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS5mZmMwMDU1NTAwMDQ0NDE2YzMwYzIzYzI5ODk5MDExNHAtMTEsCisgICAgLTB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgLTB4MS5mZmMwMDM1NTdmZjQ0NTJjMTMwYjM0ZWQ5ZDVjMDE3ZXAtMTEsCisgICAgLTB4MS5mZmZmZmVwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS5mZmY4MDQxNTM1MmIyYWNkOWE0MTNhZjg2MDY4NGM5Y3AtMTQsCisgICAgLTB4MS4wMDAwMDJwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgLTB4MS5mZmY4MDAxNTU1MmFhYWVlZWU5M2U5YTY5YTAxYTA3NnAtMTQsCisgICAgLTB4MS5wLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS5mZmY3ZmUxNTY1MmE2YWU3OTk3ZDNkZmRmZWNjM2E2YnAtMTQsCisgICAgLTB4MS5mZmZmZmVwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLjIyZDc4ZGM2ZWE3ZGZmMDg5MzFkNzQ2NjNmOTMzNDZkcC0yLAorICAgIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAweDEuMjJkNzhmMGZhMDYxOTlkOWVmMGVkYTZlYWFmOTRkM2JwLTIsCisgICAgMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS4yMmQ3OTFhMTBjMjljNjA1MTFkOTFmZjAwZWI2ZmVkYXAtMiwKKyAgICAweDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLjEwYjAyMWI5NjRlMjMzOTk2ZWI5NzRjYjY0ZjExZjk2cC0zLAorICAgIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuMTBiMDIyZGI3YWU2N2NlNzZiNDQxYzI3MDM1YzZhMTNwLTMsCisgICAgMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIDB4MS4xMGIwMjUxZmE2ZWY3YzRiYTYwMDNjZjkxZmU4NWRjOXAtMywKKyAgICAweDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjA4MmI1NjZjYjIzODBlMGJlMGQ1NTlhMDE1MDE3MmY3cC00LAorICAgIDB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuMDgyYjU3N2QzNGVkN2Q1YjFhMDE5ZTIyNWM5YTk1MWJwLTQsCisgICAgMHgxLnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS4wODJiNTk5ZTNhNTg4ZjEyMGU2MWFmNDg2OWM5ODQyMXAtNCwKKyAgICAweDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLjA0MGFiZjFhMmY4MzM0Y2Y3YzllZTBiMWQzNGFlMTQ0cC01LAorICAgIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuMDQwYWMwMjI0ZmQ5MzFjMTdhMTA3NTc1MDE5MmY0ZDVwLTUsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS4wNDBhYzIzMjkwODU0NDY4N2QwM2ZhYmY1NjhhM2RlMnAtNSwKKyAgICAweDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjAyMDJhYzUzNzBkOWFiNTg0NWIwZTc4ZjBiNDJhNzgzcC02LAorICAgIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAweDEuMDIwMmFkNTc3OGU0NWVhZTE5MmNmYTQxMTM5YWQxNWJwLTYsCisgICAgMHgxLnAtNgorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS4wMjAyYWY1Zjg4ZjlkMThhMjBhNWIwNGM0ZmM4NmM1MXAtNiwKKyAgICAweDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLjAxMDBhOWZlMjAyYzMxMWFlZjY3YTc1YjkzZDBhZmY3cC03LAorICAgIDB4MS5mZmZmZmVwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEuMDEwMGFiMDAyMjJkODYxOTMxYzE1ZTM5YjQ0ZTk5MzdwLTcsCisgICAgMHgxLnAtNworICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIDB4MS4wMTAwYWQwNDI2MzAzNjIxYzI3Y2QzZmY5NzcyMTJmNHAtNywKKyAgICAweDEuMDAwMDAycC03CisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLjAwODAyOWI0NTZmN2E4NTU1MzBiMTUxMDU1ZmNjY2Q5cC04LAorICAgIDB4MS5mZmZmZmVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAweDEuMDA4MDJhYjU1Nzc3ZDI4YTJhNDJkMjZhYTllZTY3YmNwLTgsCisgICAgMHgxLnAtOAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS4wMDgwMmNiNzU4NzgyOWY2ZGEzMmNlNDA1OGI5NDA5OXAtOCwKKyAgICAweDEuMDAwMDAycC04CisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLjAwNDAwOWFiODAwMjFmZTRhM2EyNjliMzc3YmYxOGQ2cC05LAorICAgIDB4MS5mZmZmZmVwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLjAwNDAwYWFjMDAyMjI0ZmE4M2FiN2FlNWU5OTFlNzM3cC05LAorICAgIDB4MS5wLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAweDEuMDA0MDBjYWQwMDYyMzBhNzAzZWRhNThiZWQ1OTIxMjFwLTksCisgICAgMHgxLjAwMDAwMnAtOQorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDB4MS4wMDIwMDFhYTk1NGY3NzAzOGM1ZWMzZTk2NmM3MTFmM3AtMTAsCisgICAgMHgxLmZmZmZmZXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAweDEuMDAyMDAyYWFkNTU3Nzc4ZTM5YjNhMWJhNDlkZWE5NTJwLTEwLAorICAgIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgMHgxLjAwMjAwNGFiNTU2Nzc5NjNjNDYzNWRlYzFjMGViZTg3cC0xMCwKKyAgICAweDEuMDAwMDAycC0xMAorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIDB4MS4wMDAzZmYwYWEyYmZlMDI1Y2QxOWE1YWQzOGIxMGM5NnAtMTMsCisgICAgMHgxLmZmZmZmZXAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuMDAwNDAwMGFhYWMwMDAyMjIyNGZhNTJlNTMxOTMxYzFwLTEzLAorICAgIDB4MS5wLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgMHgxLjAwMDQwMjBhYmFjMDQwMzJjZDdiYTczMGNmZWI4YzFlcC0xMywKKyAgICAweDEuMDAwMDAycC0xMworICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU2OTYzODQxYzVwLTEsCisgICAgLTB4MS4wMDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU2OTYyYjhjZGVwLTEsCisgICAgLTB4MS5wNgorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU2OTYyNTMyNjhwLTEsCisgICAgLTB4MS5mZmZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuZmZmZmZmZmZmZmY4ZGVlODhhNmRiZDUzNDk4ZTEzY2NwLTEsCisgICAgLTB4MS4wMDAwMDJwNQorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIC0weDEuZmZmZmZmZmZmZmY4ZGVlNmMyMjdhNmU1Zjg3NTk5N2ZwLTEsCisgICAgLTB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEuZmZmZmZmZmZmZmY4ZGVlNWRlMDQ3MGU4YmEzZTkwNjdwLTEsCisgICAgLTB4MS5mZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIC0weDEuZmZmZmZjMzk1NTAxNzc5NmE1MDgyYzNmMjdhY2QzMjFwLTEsCisgICAgLTB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0weDEuZmZmZmZjMzk1NDg4YTIyZjQ2YTRiMzQxMTgxOWEyZWVwLTEsCisgICAgLTB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIC0weDEuZmZmZmZjMzk1NDRjMzc3NWVkNzFlMWVhYjE4YTcwMjFwLTEsCisgICAgLTB4MS5mZmZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIC0weDEuZmZkNDA3YzBiNzYzYmIyYzZjNmQxZjM3MmM3YmU4ZDhwLTEsCisgICAgLTB4MS4wMDAwMDJwMworICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIC0weDEuZmZkNDA3YmRmN2RmYjBhNjg4MDY1NzMwZmUwMjMxYzJwLTEsCisgICAgLTB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEuZmZkNDA3YmM5ODFkOWFlNjdkM2JkZjUxMjU4NzFlODBwLTEsCisgICAgLTB4MS5mZmZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0weDEuZjY5ZjU1NmVmNGI3M2EzM2E3MTg4NDI3ZDg0Nzc4ZTRwLTEsCisgICAgLTB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIC0weDEuZjY5ZjU1MjNlZjYxODVjNDBiYTg3ZjY2OWVhOGVlMTVwLTEsCisgICAgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIC0weDEuZjY5ZjU0ZmU2Y2I1Y2E3YzNhN2IwMzgyOGEwZTgxZWJwLTEsCisgICAgLTB4MS5mZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIC0weDEuYmFiNTU2ODYyY2EwZTMyMzVkNDk3ZTY3MDM3NmQ3MWZwLTEsCisgICAgLTB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIC0weDEuYmFiNTU1NzEwMWY4ZDE4MDkyMjQ1NDdiNGJmNWFhMzhwLTEsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0weDEuYmFiNTU0ZTY2Y2EzMjhlZjJlNGNmNjAyZjU3MDlmMTNwLTEsCisgICAgLTB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIC0weDEuNDNhNTRmYzc0ZGU4MmJlNDFiNTczMDg5ZjdhYzAzNjRwLTEsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIC0weDEuNDNhNTRlNGU5ODg2NDFjYThhNDI3MGZhZGY1NjBkZTRwLTEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIC0weDEuNDNhNTRkOTIzZGQ0MzIzNWI3OGMyMzU1NDdlYzljZGNwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAweDEuNDI1OTMyMzkwMmRiYzZlNjJlM2UwN2JlMjZjZDkwNGNwOTIsCisgICAgMHgxLmZmZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgMHgxLjQyNTk4MmNmNTk3Y2QyMDVjZTNkNWIzZWRiMDMxNzU2cDkyLAorICAgIDB4MS5wNgorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIDB4MS40MjVhMjNmYzQzMmZiNWQ1NTYwMDZhM2Q4ZTdlZTExYnA5MiwKKyAgICAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEuMWY0M2Q4ZGMzOTA0YjhlZDg3YTVhYmQ1MDYyMTcwNmFwNDYsCisgICAgMHgxLmZmZmZmZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgMHgxLjFmNDNmY2M0YjY1ZWM3ZDg0Nzg4NDAxODQyMTc0MDc0cDQ2LAorICAgIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS4xZjQ0NDQ5NWJlOGExNjE2YTFlNWUzODg3NzliYzE0NnA0NiwKKyAgICAweDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEuMGYyZWFhMTc5NGI4ZjNlZGI1YzEwZDI2YTUxZjQyMGZwMjMsCisgICAgMHgxLmZmZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMHgxLjBmMmViYjBhODAwMjA0OTIyM2YxNzA4ODJiNWVlNWVmcDIzLAorICAgIDB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDB4MS4wZjJlZGNmMDU5YzFiMjIzMTJiZWQ5NjQwMDZlZTYzM3AyMywKKyAgICAweDEuMDAwMDAycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEuNzQ3ZTljMmY3YmI2Y2Y1YTI3NmVlMDgyMzZjMmQ2YzNwMTEsCisgICAgMHgxLmZmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgMHgxLjc0N2VhN2Q0NzBjNmRmMGJlMDBlMDg0YTgxNWQxZGU2cDExLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS43NDdlYmYxZTViZmU3NTcwMTlkZTRlMjJiMTEzZmRlOXAxMSwKKyAgICAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEuYWNjOGZjMGY0ZmE3YTJmMjQ1OWE2ZWY1M2MzMTVmMGZwNSwKKyAgICAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEuYWNjOTAyZTI3M2E1ODY3OGQ2ZDNiZmRiOTNkYjk2ZDBwNSwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAweDEuYWNjOTEwODhiYmYzMzMzNmYwZWU1MmIxYWQ4NThlNDNwNSwKKyAgICAweDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEuOThlNjQ3ZGI4MTQ3NzNmNDE5MjYyZWU0NzdhOTg2MTZwMiwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEuOThlNjRiOGQ0ZGRhZGNjMzNhM2JhMjA2YjY4YWJiYThwMiwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuOThlNjUyZjBlNzE3ZDkyZDE1Y2Q2MTAwMjJhZTUxZTNwMiwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEuYjdlMTRlYWFhOTlkMjNkMDdhODQzODU0ZjgwZWI5NjVwMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLmI3ZTE1MTYyOGFlZDJhNmFiZjcxNTg4MDljZjRmM2M3cDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLmI3ZTE1NmQyNGQ5NTVmNDM0MDJiMWFmMmQyNzU5MWMycDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wMTI0CisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS45OTk5OWFwMTI0CisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS4xOTk5OWFwMTI1CisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS42NjY2NjhwMTI1CisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5iMzMzMzRwMTI1CisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIC0weDEucDAsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEuNjI0MDQ5MGExNjU2MjBkOWI5MjJhYWEyMmE4ZTRjMDlwNCwKKyAgICAweDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAtMHgxLmU5ZGZkZGE1MWExNmNiNmE2YzI5NDQ5ZTczZGNlYWJhcC0xLAorICAgIC0weDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuZTdiZGJhY2U0MTA5OTk0YzI1NTU2NTczNDdkMDJmNzdwMSwKKyAgICAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAtMHgxLjk1OTBjZjMyMzA0MGIwNmNhNTVhNTA2MTYyYTc0MmY1cC0xLAorICAgIC0weDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuYjdlMTU2ZDI0ZDk1NWY0MzQwMmIxYWYyZDI3NTkxYzJwMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAtMHgxLjQzYTU0ZmM3NGRlODJiZTQxYjU3MzA4OWY3YWMwMzY0cC0xLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEuYjdlMTUxNjI4YWVkMmE2YWJmNzE1ODgwOWNmNGYzYzdwMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAtMHgxLjQzYTU0ZTRlOTg4NjQxY2E4YTQyNzBmYWRmNTYwZGU0cC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEuYjdlMTRlYWFhOTlkMjNkMDdhODQzODU0ZjgwZWI5NjVwMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgLTB4MS40M2E1NGQ5MjNkZDQzMjM1Yjc4YzIzNTU0N2VjOWNkY3AtMSwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS4zMTdhY2RmNmM1NjYzMjAxOTgwZWM2OWJkNzQ4NjhhY3AwLAorICAgIDB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAtMHgxLjE2OGY0NzZlMTZhOGZlYWEyMTgzYjQ4NmZlZDBlNWNlcC0xLAorICAgIC0weDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLjAwMDAwMjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycC0xMjYsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgLTB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZHAtMTI2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDJwLTEyNiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS5mZmZmZmMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIC0weDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLmZmZmZmODAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzcC0xMjcsCisgICAgMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgLTB4MS5mZmZmZjdmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTQ5LAorICAgIC0weDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIDAuMCwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgLTAuMCwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIDB4MS5mZmZmMDgyZTZjN2ZlZDFkM2ZkNWNmZjdlMWY2MDU4ZnAxMjcsCisgICAgMHgxLjYyZTQyZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS42MmU0MzBwNgorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2ZhYnNfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2ZhYnNfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkyZGIwY2EKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvZmFic19pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSw0OTQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxkb3VibGUsIGRvdWJsZT4gZ19mYWJzX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgMHgxLnAtMTAsCisgICAgLTB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAwLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA5OTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOTk5CisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS5wMTAwMCwKKyAgICAweDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMDAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDE5OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLnAyMDAsCisgICAgMHgxLjBwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAyMDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5wMTAwLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDEwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxOQorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLnAyMCwKKyAgICAweDEuMHAyMAorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDIwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDIwCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS5wMTUsCisgICAgMHgxLjBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxNQorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLnAxMCwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEucDksCisgICAgMHgxLjBwOQorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLnA3LAorICAgIDB4MS4wcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA3LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS5wNSwKKyAgICAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1CisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEucDQsCisgICAgMHgxLjBwNAorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLnAzLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS5wMiwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEucDEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEucC0xLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLnAtMiwKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS5wLTMsCisgICAgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC01LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEucC00LAorICAgIDB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLnAtNSwKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC01LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5wLTcsCisgICAgMHgxLjBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtNywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNworICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS5wLTksCisgICAgMHgxLjBwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtOSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtOQorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS5wLTEwLAorICAgIDB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEucC0xNSwKKyAgICAweDEuMHAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTIxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLnAtMjAsCisgICAgMHgxLjBwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTIwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xMDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEwMQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLnAtMTAwLAorICAgIDB4MS4wcC0xMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMjAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS5wLTIwMCwKKyAgICAweDEuMHAtMjAwCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTIwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjAwCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEwMDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEwMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS5wLTEwMDAsCisgICAgMHgxLjBwLTEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLjkyMWZiNTQ0NDJkMTgwcDEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLjkyMWZiNTQ0NDJkMTgwcDEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS45MjFmYjU0NDQyZDE4MHAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS45MjFmYjU0NDQyZDE4MHAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEucDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLjkyMWZiNTQ0NDJkMTgwcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjkyMWZiNTQ0NDJkMTgwcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS5wLTEwNzMsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEucC0xMDczLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAwLjAsCisgICAgLTAuMAorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2ZhYnNmX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9mYWJzZl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWI0MjZiNgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9mYWJzZl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSw0NDYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfZmFic2ZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAweDEucC0xMCwKKyAgICAtMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS5mZmZmZmVwOTksCisgICAgMHgxLmZmZmZmZXA5OQorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEucDEwMCwKKyAgICAweDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuMDAwMDAycDEwMCwKKyAgICAweDEuMDAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuZmZmZmZlcDE5LAorICAgIDB4MS5mZmZmZmVwMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLnAyMCwKKyAgICAweDEucDIwCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS4wMDAwMDJwMjAsCisgICAgMHgxLjAwMDAwMnAyMAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLmZmZmZmZXAxNCwKKyAgICAweDEuZmZmZmZlcDE0CisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEucDE1LAorICAgIDB4MS5wMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS4wMDAwMDJwMTUsCisgICAgMHgxLjAwMDAwMnAxNQorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLmZmZmZmZXA5LAorICAgIDB4MS5mZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLnAxMCwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuMDAwMDAycDEwLAorICAgIDB4MS4wMDAwMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5mZmZmZmVwOCwKKyAgICAweDEuZmZmZmZlcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS5wOSwKKyAgICAweDEucDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS4wMDAwMDJwOSwKKyAgICAweDEuMDAwMDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS5mZmZmZmVwNiwKKyAgICAweDEuZmZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5wNywKKyAgICAweDEucDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS4wMDAwMDJwNywKKyAgICAweDEuMDAwMDAycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5mZmZmZmVwNCwKKyAgICAweDEuZmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS5wNSwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS4wMDAwMDJwNSwKKyAgICAweDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5mZmZmZmVwMywKKyAgICAweDEuZmZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS5wNCwKKyAgICAweDEucDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS4wMDAwMDJwNCwKKyAgICAweDEuMDAwMDAycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5mZmZmZmVwMiwKKyAgICAweDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS5wMywKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS4wMDAwMDJwMywKKyAgICAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS5mZmZmZmVwMSwKKyAgICAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5wMiwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS4wMDAwMDJwMiwKKyAgICAweDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS5mZmZmZmVwMCwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS5wMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEucC0xLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLmZmZmZmZXAtMywKKyAgICAweDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEucC0yLAorICAgIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS4wMDAwMDJwLTIsCisgICAgMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLmZmZmZmZXAtNCwKKyAgICAweDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEucC0zLAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS4wMDAwMDJwLTMsCisgICAgMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgMHgxLmZmZmZmZXAtNSwKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEucC00LAorICAgIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS4wMDAwMDJwLTQsCisgICAgMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLmZmZmZmZXAtNiwKKyAgICAweDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEucC01LAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS4wMDAwMDJwLTUsCisgICAgMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmZmZmZmZXAtOCwKKyAgICAweDEuZmZmZmZlcC04CisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEucC03LAorICAgIDB4MS5wLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS4wMDAwMDJwLTcsCisgICAgMHgxLjAwMDAwMnAtNworICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLmZmZmZmZXAtMTAsCisgICAgMHgxLmZmZmZmZXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS5wLTksCisgICAgMHgxLnAtOQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLjAwMDAwMnAtOSwKKyAgICAweDEuMDAwMDAycC05CisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuZmZmZmZlcC0xMSwKKyAgICAweDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLnAtMTAsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS4wMDAwMDJwLTEwLAorICAgIDB4MS4wMDAwMDJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuZmZmZmZlcC0xNiwKKyAgICAweDEuZmZmZmZlcC0xNgorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLnAtMTUsCisgICAgMHgxLnAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS4wMDAwMDJwLTE1LAorICAgIDB4MS4wMDAwMDJwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEuZmZmZmZlcC0yMSwKKyAgICAweDEuZmZmZmZlcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLnAtMjAsCisgICAgMHgxLnAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS4wMDAwMDJwLTIwLAorICAgIDB4MS4wMDAwMDJwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuZmZmZmZlcC0xMDEsCisgICAgMHgxLmZmZmZmZXAtMTAxCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEucC0xMDAsCisgICAgMHgxLnAtMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEuMDAwMDAycC0xMDAsCisgICAgMHgxLjAwMDAwMnAtMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS5mZmZmZmNwMTI3LAorICAgIC0weDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLjkyMWZiNnAxLAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLjkyMWZiNnAxLAorICAgIC0weDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS45MjFmYjZwMCwKKyAgICAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS45MjFmYjZwMCwKKyAgICAtMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLjkyMWZiNnAtMSwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuOTIxZmI2cC0xLAorICAgIC0weDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAweDEuMDAwMDAycC0xMjYsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuMDAwMDAycC0xMjYsCisgICAgLTB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAweDEuZmZmZmY4cC0xMjcsCisgICAgMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmZmZmZmOHAtMTI3LAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLnAtMTQ4LAorICAgIC0weDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAwLjAsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDAuMCwKKyAgICAtMC4wZgorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2ZkaW1faW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2ZkaW1faW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM0NDhkOTYKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvZmRpbV9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxNzg4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8yX3Q8ZG91YmxlLCBkb3VibGUsIGRvdWJsZT4gZ19mZGltX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgMHgxLjMzNGQ2YTE2MWU0ZjQ4cC0yLAorICAgIC0weDEuOTk5OTk5OTk5OTk5ZnAtMywKKyAgICAtMHgxLjAwMGQxYjcxNzU4ZTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLjk5YjNkMDdjODRiNWM4cC0yLAorICAgIC0weDEuOTk5OTk5OTk5OTk5ZnAtMywKKyAgICAtMHgxLjMzNDA0ZWE0YThjMTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMHgxLjk5OTk5OTk5OTk5OTg4cC0xMiwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OWZwLTEzLAorICAgIC0weDEuMzMzMzMzMzMzMzMzNHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLmYwN2MxZjA3YzFmMGY4cC0xMiwKKyAgICAtMHgxLmRiY2M0ODY3NmYyZjlwLTEzLAorICAgIC0weDEuNmYzMTIxOWRiY2M0NnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLjExMWUyYzgyODY5ZjE4cC0xLAorICAgIC0weDEuZGRkZGRkZGRkZGRlMXAtMiwKKyAgICAtMHgxLjAwMDY4ZGI4YmFjNzFwMAorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuMTExZTJjODI4NjllYThwLTEsCisgICAgLTB4MS5kZGRkZGRkZGRkZGVmcC0yLAorICAgIC0weDEuMDAwNjhkYjhiYWM3MXAwCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS5wMSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuYWYyODZiY2ExYWYzMDgwMDAwMDAwMDAwMDA4MHAtNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTcsCisgICAgLTB4MS5hZjI4NmJjYTFhZjMwcC00CisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZmZmZmZmZnAzNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMzUwLAorICAgIDB4MS5hZjI4NmJjYTFhZjIwcC00CisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS5hZjI4NmJjYTFhZjMwODAwODAwMDAwMDAwMDgwcC00LAorICAgIDB4MS4wMDEwMDAwMDAwMDAxcC01NywKKyAgICAtMHgxLmFmMjg2YmNhMWFmMzBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS4wYzMwYzMwYzMwYzMwOHAtMTAsCisgICAgMHgxLjg2MTg2MTg2MTg2MTBwLTE1LAorICAgIC0weDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5hNDkyNDkyNDkyNDkzOHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtNCwKKyAgICAtMHgxLjI0OTI0OTI0OTI0OTRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS43ZmZmZmZmZmZmZmZmOHAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTUzLAorICAgIC0weDEuMHAtNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS45cC0xMDY4CisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAwLjAsCisgICAgLTB4MS40cDMsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5wMSwKKyAgICAtMHgxLjBwMywKKyAgICAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLnAyLAorICAgIC0weDEuOHAyLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuODBwMiwKKyAgICAtMHgxLjBwMiwKKyAgICAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLnAzLAorICAgIC0weDEuMHAxLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuNDBwMywKKyAgICAwLjAsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS44MHAzLAorICAgIDB4MS4wcDEsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5jMHAzLAorICAgIDB4MS4wcDIsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS5wNCwKKyAgICAweDEuOHAyLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuMjBwNCwKKyAgICAweDEuMHAzLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuNDBwNCwKKyAgICAweDEuNHAzLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAwLjAsCisgICAgLTB4MS44cC0xMDczLAorICAgIC0weDEuOHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMC4wLAorICAgIC0weDEuOHAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDAuMCwKKyAgICAtMHgxLjhwLTEwNzMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAwLjAsCisgICAgLTB4MS44cC0xMDczLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDAuMCwKKyAgICAtMHgxLjhwLTEwNzMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDAuMCwKKyAgICAtMHgxLjhwLTEwNzMsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDAuMCwKKyAgICAtMHgxLjhwLTEwNzMsCisgICAgMHgxLjhwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDczLAorICAgIC0weDEuOHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDczLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzMsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzMsCisgICAgMHgxLjhwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS5wLTEwNzMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuOHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS44cC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuODBwLTEwNzMsCisgICAgLTAuMCwKKyAgICAtMHgxLjhwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5wLTEwNzMsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAwLjAsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMC4wLAorICAgIC0wLjAsCisgICAgMHgxLjhwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS5wLTEwNzIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS44cC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuODBwLTEwNzMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS44cC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuNDBwLTEwNzIsCisgICAgMHgxLjBwLTEwNzMsCisgICAgLTB4MS44cC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEucC0xMDcyLAorICAgIDB4MS4wcC0xMDczLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgMHgxLjgwcC0xMDczLAorICAgIDB4MS4wcC0xMDczLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLnAtMTA3MywKKyAgICAweDEuMHAtMTA3MywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDczLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzMsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDAuMCwKKyAgICAweDEuMHAtMTA3MywKKyAgICAweDEuOHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLjgwcC0xMDcyLAorICAgIDB4MS44cC0xMDczLAorICAgIC0weDEuOHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLjQwcC0xMDcyLAorICAgIDB4MS44cC0xMDczLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMHgxLnAtMTA3MiwKKyAgICAweDEuOHAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIDB4MS44MHAtMTA3MywKKyAgICAweDEuOHAtMTA3MywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEucC0xMDczLAorICAgIDB4MS44cC0xMDczLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS44cC0xMDczLAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAwLjAsCisgICAgMHgxLjhwLTEwNzMsCisgICAgMHgxLjhwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLnAtMTA3MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMC4wLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyNAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDI0LAorICAgIDB4MS4wcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMywKKyAgICAweDEuMHAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDI0CisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAycC0xMDIzLAorICAgIDB4MS4wcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxLAorICAgIDB4MS4wcC01MAorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS5wLTEwMywKKyAgICAweDEuMHAtNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMC4wLAorICAgIDB4MS4wcC01MCwKKyAgICAweDEuMHAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAwLjAsCisgICAgMHgxLjBwLTUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MAorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS44MHAtMTAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEucC0xMDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwLAorICAgIDB4MS4wcC01MAorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTExLAorICAgIDB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLnAtNjMsCisgICAgMHgxLjBwLTEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDAuMCwKKyAgICAweDEuMHAtMTAsCisgICAgMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMC4wLAorICAgIDB4MS4wcC0xMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuODBwLTYyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEucC02MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAsCisgICAgMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEucC01NCwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDAuMCwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDAuMCwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS44MHAtNTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEucC01MywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS5wLTUyLAorICAgIDB4MS4wcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDAuMCwKKyAgICAweDEuMHAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAwLjAsCisgICAgMHgxLjBwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLjgwcC01MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEucC01MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5LAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEucC00MywKKyAgICAweDEuMHAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMC4wLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgMC4wLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLjgwcC00MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLnAtNDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDksCisgICAgMHgxLjBwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAweDEucC0zLAorICAgIDB4MS4wcDUwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMC4wLAorICAgIDB4MS4wcDUwLAorICAgIDB4MS4wcDUwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMC4wLAorICAgIDB4MS4wcDUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMHgxLjgwcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLnAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MCwKKyAgICAweDEuMHA1MAorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuMHAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIDB4MS5wOTcwLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDAuMCwKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAwLjAsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLjgwcDk3MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAweDEucDk3MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIzLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMC4wLAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5wLTEwMjEsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS5wMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMC4wLAorICAgIDAuMCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLnAtMTA3NCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEucC0xMDIyLAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEucDAsCisgICAgMC4wLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgSFVHRV9WQUwsCisgICAgMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDAuMCwKKyAgICAtMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMC4wLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMC4wLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAwLjAsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDAuMCwKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgMHgxLnAtMTAyMiwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS5wMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIEhVR0VfVkFMLAorICAgIC0wLjAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEuZmZmZmZmZmZmZmZmYzBwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS5wLTUzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAwLjAsCisgICAgLTB4MS4wcDAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAwLjAsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIDAuMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIDAuMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDAuMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIDAuMCwKKyAgICAtMHgxLjBwMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAwLjAsCisgICAgLTB4MS4wcDAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIDAuMCwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAwLjAsCisgICAgLTB4MS4wcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgMC4wLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDAuMCwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcDAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAwLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAwLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAwLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAwLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAwLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIDAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAwLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIEhVR0VfVkFMLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMzQxCisgICAgMC4wLAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIDAuMCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzQ1CisgICAgMC4wLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzQ3CisgICAgMC4wLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgMC4wLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgMC4wLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2ZkaW1mX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9mZGltZl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWIwNTk4MwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9mZGltZl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxNzkzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8yX3Q8ZmxvYXQsIGZsb2F0LCBmbG9hdD4gZ19mZGltZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIDB4MS44NjE4NjFwLTE0LAorICAgIC0weDEuODYxODdlcC0xNSwKKyAgICAtMHgxLjI0OTI1MHAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLjMzNGQ2OXAtMiwKKyAgICAtMHgxLjk5OTk5ZXAtMywKKyAgICAtMHgxLjAwMGQxY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAweDEuOTliM2QxcC0yLAorICAgIC0weDEuOTk5OTllcC0zLAorICAgIC0weDEuMzM0MDUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS45OTk5OTlwLTEyLAorICAgIC0weDEuOTk5OTllcC0xMywKKyAgICAtMHgxLjMzMzMzNHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLjExMWUyYnAtMSwKKyAgICAtMHgxLmRkZGRlMnAtMiwKKyAgICAtMHgxLjAwMDY4ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS4xMTFlMjlwLTEsCisgICAgLTB4MS5kZGRkZTZwLTIsCisgICAgLTB4MS4wMDA2OGVwMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuMDRhNzgxcC0xMSwKKyAgICAtMHgxLmY2YjBmZXAtMTIsCisgICAgLTB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS4wMjk2MGJwLTExLAorICAgIC0weDEuZmFkM2VhcC0xMiwKKyAgICAtMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLnAxLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmMjg2YmFjMHA3MywKKyAgICAweDEuMDAwMDAycDczLAorICAgIDB4MS5hZjI4YThwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS4yNDkyNjlwLTIsCisgICAgMHgxLjA4cC0yMSwKKyAgICAtMHgxLjI0OTI0OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLmFmMjg1MXAtNCwKKyAgICAweDEuMDhwLTIzLAorICAgIC0weDEuYWYyODMwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuMDAwMDIxcC0yNCwKKyAgICAweDEuMDhwLTQzLAorICAgIC0weDEucC0yNAorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLjRmZjRkM3AzLAorICAgIDB4MS4wODNkMjhwMiwKKyAgICAtMHgxLjk3YWM3ZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLjkwcC0xNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAwLjAsCisgICAgLTB4MS40MHAzLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLnAxLAorICAgIC0weDEucDMsCisgICAgLTB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEucDIsCisgICAgLTB4MS44MHAyLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjgwcDIsCisgICAgLTB4MS5wMiwKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5wMywKKyAgICAtMHgxLnAxLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjQwcDMsCisgICAgMC4wLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLjgwcDMsCisgICAgMHgxLnAxLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLmMwcDMsCisgICAgMHgxLnAyLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLnA0LAorICAgIDB4MS44MHAyLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLjIwcDQsCisgICAgMHgxLnAzLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLjQwcDQsCisgICAgMHgxLjQwcDMsCisgICAgLTB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAwLjAsCisgICAgLTB4MS44MHAtMTQ4LAorICAgIC0weDEuODBwLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMC4wLAorICAgIC0weDEuODBwLTE0OCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAwLjAsCisgICAgLTB4MS44MHAtMTQ4LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDAuMCwKKyAgICAtMHgxLjgwcC0xNDgsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAwLjAsCisgICAgLTB4MS44MHAtMTQ4LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMC4wLAorICAgIC0weDEuODBwLTE0OCwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDAuMCwKKyAgICAtMHgxLjgwcC0xNDgsCisgICAgMHgxLjgwcC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ4LAorICAgIC0weDEuODBwLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMC4wLAorICAgIC0weDEucC0xNDgsCisgICAgLTB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMC4wLAorICAgIC0weDEucC0xNDgsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMC4wLAorICAgIC0weDEucC0xNDgsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAwLjAsCisgICAgLTB4MS5wLTE0OCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMC4wLAorICAgIC0weDEucC0xNDgsCisgICAgMHgxLjgwcC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuODBwLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMC4wLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAwLjAsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLjgwcC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS44MHAtMTQ4LAorICAgIDAuMCwKKyAgICAtMHgxLjgwcC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS5wLTE0OCwKKyAgICAwLjAsCisgICAgLTB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDB4MS44MHAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEucC0xNDcsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuODBwLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLjgwcC0xNDgsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMC4wLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuODBwLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLjQwcC0xNDcsCisgICAgMHgxLnAtMTQ4LAorICAgIC0weDEuODBwLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgMHgxLnAtMTQ3LAorICAgIDB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuODBwLTE0OCwKKyAgICAweDEucC0xNDgsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMC4wLAorICAgIDB4MS5wLTE0OCwKKyAgICAweDEuODBwLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLjgwcC0xNDcsCisgICAgMHgxLjgwcC0xNDgsCisgICAgLTB4MS44MHAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuNDBwLTE0NywKKyAgICAweDEuODBwLTE0OCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEucC0xNDcsCisgICAgMHgxLjgwcC0xNDgsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjgwcC0xNDgsCisgICAgMHgxLjgwcC0xNDgsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEucC0xNDgsCisgICAgMHgxLjgwcC0xNDgsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEucC0xNDksCisgICAgMHgxLjgwcC0xNDgsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAwLjAsCisgICAgMHgxLjgwcC0xNDgsCisgICAgMHgxLjgwcC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDAuMCwKKyAgICAweDEuZmZmZmY4cC0xMjgsCisgICAgMHgxLmZmZmZmOHAtMTI4CisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmOHAtMTI4LAorICAgIDB4MS5wLTEyNworICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMC4wLAorICAgIDB4MS5mZmZmZjhwLTEyOCwKKyAgICAweDEuMDAwMDA0cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xMjcsCisgICAgMHgxLmZmZmZmOHAtMTI4CisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAwLjAsCisgICAgMHgxLnAtMTI3LAorICAgIDB4MS5wLTEyNworICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMC4wLAorICAgIDB4MS5wLTEyNywKKyAgICAweDEuMDAwMDA0cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5wLTE0OCwKKyAgICAweDEuMDAwMDA0cC0xMjcsCisgICAgMHgxLmZmZmZmOHAtMTI4CisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEucC0xNDksCisgICAgMHgxLjAwMDAwNHAtMTI3LAorICAgIDB4MS5wLTEyNworICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDRwLTEyNywKKyAgICAweDEuMDAwMDA0cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcC01MSwKKyAgICAweDEuZmZmZmZlcC01MQorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwLTUxLAorICAgIDB4MS5wLTUwCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAtNTEsCisgICAgMHgxLjAwMDAwMnAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEucC03NCwKKyAgICAweDEucC01MCwKKyAgICAweDEuZmZmZmZlcC01MQorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDAuMCwKKyAgICAweDEucC01MCwKKyAgICAweDEucC01MAorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDAuMCwKKyAgICAweDEucC01MCwKKyAgICAweDEuMDAwMDAycC01MAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS44MHAtNzMsCisgICAgMHgxLjAwMDAwMnAtNTAsCisgICAgMHgxLmZmZmZmZXAtNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEucC03MywKKyAgICAweDEuMDAwMDAycC01MCwKKyAgICAweDEucC01MAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAycC01MCwKKyAgICAweDEuMDAwMDAycC01MAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcC0xMSwKKyAgICAweDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcC0xMSwKKyAgICAweDEucC0xMAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcC0xMSwKKyAgICAweDEuMDAwMDAycC0xMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS5wLTM0LAorICAgIDB4MS5wLTEwLAorICAgIDB4MS5mZmZmZmVwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMC4wLAorICAgIDB4MS5wLTEwLAorICAgIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMC4wLAorICAgIDB4MS5wLTEwLAorICAgIDB4MS4wMDAwMDJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLjgwcC0zMywKKyAgICAweDEuMDAwMDAycC0xMCwKKyAgICAweDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS5wLTMzLAorICAgIDB4MS4wMDAwMDJwLTEwLAorICAgIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwLTEwLAorICAgIDB4MS4wMDAwMDJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLnAtMjUsCisgICAgMHgxLnAtMSwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMC4wLAorICAgIDB4MS5wLTEsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDAuMCwKKyAgICAweDEucC0xLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEuODBwLTI0LAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5wLTI0LAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDAuMCwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMCwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEucC0yMywKKyAgICAweDEucDEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMC4wLAorICAgIDB4MS5wMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAwLjAsCisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS44MHAtMjIsCisgICAgMHgxLjAwMDAwMnAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS5wLTIyLAorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDksCisgICAgMHgxLmZmZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwOSwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwOSwKKyAgICAweDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLnAtMTQsCisgICAgMHgxLnAxMCwKKyAgICAweDEuZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAwLjAsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMC4wLAorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIDB4MS44MHAtMTMsCisgICAgMHgxLjAwMDAwMnAxMCwKKyAgICAweDEuZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAweDEucC0xMywKKyAgICAweDEuMDAwMDAycDEwLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAxMCwKKyAgICAweDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwNDksCisgICAgMHgxLmZmZmZmZXA0OQorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDQ5LAorICAgIDB4MS5wNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXA0OSwKKyAgICAweDEuMDAwMDAycDUwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMHgxLnAyNiwKKyAgICAweDEucDUwLAorICAgIDB4MS5mZmZmZmVwNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAwLjAsCisgICAgMHgxLnA1MCwKKyAgICAweDEucDUwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMC4wLAorICAgIDB4MS5wNTAsCisgICAgMHgxLjAwMDAwMnA1MAorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS44MHAyNywKKyAgICAweDEuMDAwMDAycDUwLAorICAgIDB4MS5mZmZmZmVwNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAweDEucDI3LAorICAgIDB4MS4wMDAwMDJwNTAsCisgICAgMHgxLnA1MAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDAuMCwKKyAgICAweDEuMDAwMDAycDUwLAorICAgIDB4MS4wMDAwMDJwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLmZmZmZmZXAxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLjAwMDAwMnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEucDEwMywKKyAgICAweDEucDEyNywKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDAuMCwKKyAgICAweDEucDEyNywKKyAgICAweDEucDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDAuMCwKKyAgICAweDEucDEyNywKKyAgICAweDEuMDAwMDAycDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIDB4MS44MHAxMDQsCisgICAgMHgxLjAwMDAwMnAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEucDEwNCwKKyAgICAweDEuMDAwMDAycDEyNywKKyAgICAweDEucDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAycDEyNywKKyAgICAweDEuMDAwMDAycDEyNworICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDAuMCwKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAweDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDJwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAwLjAsCisgICAgMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDAuMCwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAwLjAsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLjAwMDAwMnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgMHgxLmZmZmZmZXAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLnAtMTI1LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0cDAsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDB4MS5mZmZmZjhwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDB4MS5mZmZmZmNwLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDB4MS5mZmZmZmVwLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM3AwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMC4wLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMC4wLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAweDEuMDAwMDAycC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEucDAsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMC4wLAorICAgIDAuMGYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEucC0xNDksCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEucDAsCisgICAgMC4wZiwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMC4wLAorICAgIC0wLjBmLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDAuMCwKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDAuMCwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAwLjAsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMC4wLAorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDAuMCwKKyAgICAtMC4wZiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMC4wLAorICAgIC0wLjBmLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLnAwLAorICAgIC0wLjBmLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgMC4wLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIDB4MS5mZmZmZjhwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwLTEsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAwLjAsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAwLjAsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDAuMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIDAuMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDAuMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDAuMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAwLjAsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIDAuMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAwLjAsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgMC4wLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMSwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDB4MS5wLTI0LAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMC4wLAorICAgIC0weDEucDAsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMC4wLAorICAgIC0weDEucDAsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAwLjAsCisgICAgLTB4MS5wMCwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAwLjAsCisgICAgLTB4MS5wMCwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAwLjAsCisgICAgLTB4MS5wMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAwLjAsCisgICAgLTB4MS5wMCwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgMC4wLAorICAgIC0weDEucDAsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAwLjAsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgMC4wLAorICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDAuMCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAwLjAsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlcDEyNywKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAwLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAwLjAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAwLjAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDAuMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIDAuMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDAuMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDAuMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAwLjAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIDAuMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAwLjAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgMC4wLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDAuMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRwMTI3LAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzkKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDAuMCwKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIDAuMCwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgMC4wLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzQ1CisgICAgMC4wLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMC4wLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzQ3CisgICAgMC4wLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgMC4wLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMC4wLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIDAuMCwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM1NAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9mbG9vcl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvZmxvb3JfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExMjE2ZGYKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvZmxvb3JfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTMzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGRvdWJsZSwgZG91YmxlPiBnX2Zsb29yX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMC4wLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLnAwLAorICAgIDB4MS43ZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5wMCwKKyAgICAweDEuOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEucDAsCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5wMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEucDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLnAxLAorICAgIDB4MS4zZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5wMSwKKyAgICAweDEuNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEucDEsCisgICAgMHgxLjQwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLjhjcDYsCisgICAgMHgxLjhmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjkwcDYsCisgICAgMHgxLjlwNgorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkxZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkyMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTIwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuZjM4MHA5LAorICAgIDB4MS5mM2ZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDBwOQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0MDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0M2ZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0NHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjQ0MDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuZmZmZmZmZmZmZmZmODBwNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS5wNTAsCisgICAgMHgxLjBwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5wNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS5mZmZmZmZmZmZmZmZjMHA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLnA1MSwKKyAgICAweDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLnA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEucDUyLAorICAgIDB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MgorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLnA1MywKKyAgICAweDEuMHA1MworICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUzCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5wNTQsCisgICAgMHgxLjBwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA1NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1NAorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0weDEucDAsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEucDEsCisgICAgLTB4MS44MDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEucDEsCisgICAgLTB4MS44cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIC0weDEucDEsCisgICAgLTB4MS43ZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEuODBwMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgLTB4MS44MHAxLAorICAgIC0weDEuNDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS40cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEuODBwMSwKKyAgICAtMHgxLjNmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgLTB4MS45NHA2LAorICAgIC0weDEuOTAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS45cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjhmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgLTB4MS45NHA2LAorICAgIC0weDEuOTIwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAtMHgxLjk0cDYsCisgICAgLTB4MS45MjBwNgorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS45NHA2LAorICAgIC0weDEuOTFmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLmY0ODBwOSwKKyAgICAtMHgxLmY0MDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmYzZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgLTB4MS5mNDgwcDksCisgICAgLTB4MS5mNDQwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIC0weDEuZjQ4MHA5LAorICAgIC0weDEuZjQ0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuZjQ4MHA5LAorICAgIC0weDEuZjQzZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDQwcDUwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MAorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS5wNTAsCisgICAgLTB4MS4wcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMHgxLnA1MCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIC0weDEuMDAwMDAwMDAwMDAwMjBwNTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMHgxLnA1MSwKKyAgICAtMHgxLjBwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEucDUxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MAorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA1MiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEucDUyLAorICAgIC0weDEuMHA1MgorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS5wNTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDUzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MworICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS5wNTMsCisgICAgLTB4MS4wcDUzCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDUyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MgorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA1NCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIC0weDEucDU0LAorICAgIC0weDEuMHA1NAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA1MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLmZmZmZmZmY4cDI5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI5CisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEucDMwLAorICAgIDB4MS4wcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEucDMwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZmZmZmZmZjRwMzAsCisgICAgMHgxLmZmZmZmZmY3ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5mZmZmZmZmNHAzMCwKKyAgICAweDEuZmZmZmZmZjdmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjgwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmY5ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjlmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmYTBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmZhMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmZhMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmZiZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmZiZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmRmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmRmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmUwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmZTAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmZTAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLnAzMSwKKyAgICAweDEuMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEucDMxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLnAzMSwKKyAgICAweDEuMDAwMDAwMDBmZmZmZXAzMQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAwZmZmZmZwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEucDMxLAorICAgIDB4MS4wMDAwMDAwMTBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEucDMxLAorICAgIDB4MS4wMDAwMDAwMTAwMDAxcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLnAzMSwKKyAgICAweDEuMDAwMDAwMDEwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5mZmZmZmZlMHAzMCwKKyAgICAweDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS5mZmZmZmZlNHAzMCwKKyAgICAweDEuZmZmZmZmZTQwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLmZmZmZmZmU4cDMwLAorICAgIDB4MS5mZmZmZmZlODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEuZmZmZmZmZWNwMzAsCisgICAgMHgxLmZmZmZmZmVjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS5mZmZmZmZmMHAzMCwKKyAgICAweDEuZmZmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS5mZmZmZmZmNHAzMCwKKyAgICAweDEuZmZmZmZmZjQwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5wMzEsCisgICAgMHgxLjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEuMDAwMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMDAyMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIC0weDEuMDAwMDAwMDRwMzAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS5wMzAsCisgICAgLTB4MS4wcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgLTB4MS5wMzAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDI5CisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmY4MDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZjgwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZjdmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmN2ZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZhMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmEwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYTBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZjlmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmOWZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5mZmZmZmZmYzAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5mZmZmZmZmYzAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZiZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLmZmZmZmZmZlMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLmZmZmZmZmZlMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLmZmZmZmZmZlMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEucDMxLAorICAgIC0weDEuZmZmZmZmZmRmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0weDEucDMxLAorICAgIC0weDEuZmZmZmZmZmRmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEuMDAwMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgLTB4MS4wMDAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAtMHgxLjAwMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAwMDEwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0weDEuMDAwMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDAwMTAwMDAxcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgLTB4MS4wMDAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMDAxMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuMDAwMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDAwMGZmZmZmcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgLTB4MS4wMDAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwZmZmZmVwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHA2MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA2MQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA2MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2MQorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS5wNjIsCisgICAgMHgxLjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAweDEuMDAwMDAwMDAwMDAwMjBwNjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwNjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEucDYzLAorICAgIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDYzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcDYzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDYzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDYzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLnA2NCwKKyAgICAweDEuMHA2NAorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA2NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2NAorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS4wMDAwMDAwMDAwMDAyMHA2NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIC0weDEuMDAwMDAwMDAwMDAwMjBwNjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA2MiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMHgxLnA2MiwKKyAgICAtMHgxLjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDYxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2MQorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwNjEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAyMHA2MywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDYzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2MworICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEucDYzLAorICAgIC0weDEuMHA2MworICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwNjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHA2MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDIwcDY0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwNjQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTB4MS5wNjQsCisgICAgLTB4MS4wcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA2MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDYzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXA2MworICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIDB4MS5wNjIsCisgICAgMHgxLjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEucDYzLAorICAgIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS5wNjIsCisgICAgLTB4MS4wcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgLTB4MS5wNjMsCisgICAgLTB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmYmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYzBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAtMHgxLjAwMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzMQorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEucDMxLAorICAgIC0weDEuMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIC0weDEucDMxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS44MHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAweDEucDIsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIDB4MS5wMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgMHgxLmMwcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDB4MS5wMywKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLnAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAweDEuZTBwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMHgxLnA0LAorICAgIDB4MS4wcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAweDEucDQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5mMHA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAweDEucDUsCisgICAgMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS5wNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMHgxLmY4cDUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS5wNiwKKyAgICAweDEuMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLnA2LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuZmNwNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLnA3LAorICAgIDB4MS4wcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEucDcsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNworICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDB4MS5mZXA3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEucDgsCisgICAgMHgxLjBwOAorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIDB4MS5wOCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA4CisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMHgxLmZmcDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDB4MS5wOSwKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLnA5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEuZmY4MHA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAweDEucDEwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDB4MS5mZmMwcDEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgMHgxLnAxMSwKKyAgICAweDEuMHAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS5wMTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEuZmZlMHAxMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS5wMTIsCisgICAgMHgxLjBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLnAyLAorICAgIDB4MS4xZmZmZmZmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEucDIsCisgICAgMHgxLjJwMgorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS5wMiwKKyAgICAweDEuMjAwMDAwMDAwMDAwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLnAzLAorICAgIDB4MS4wZmZmZmZmZmZmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEucDMsCisgICAgMHgxLjFwMworICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS5wMywKKyAgICAweDEuMTAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLnA0LAorICAgIDB4MS4wN2ZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAweDEucDQsCisgICAgMHgxLjA4MHA0CisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgMHgxLnA0LAorICAgIDB4MS4wODAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEucDUsCisgICAgMHgxLjAzZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS5wNSwKKyAgICAweDEuMDQwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEucDUsCisgICAgMHgxLjA0MDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS5wNiwKKyAgICAweDEuMDFmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLnA2LAorICAgIDB4MS4wMjBwNgorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS5wNiwKKyAgICAweDEuMDIwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLnA3LAorICAgIDB4MS4wMGZmZmZmZmZmZmZmcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEucDcsCisgICAgMHgxLjAxMHA3CisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLnA3LAorICAgIDB4MS4wMTAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEucDgsCisgICAgMHgxLjAwN2ZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS5wOCwKKyAgICAweDEuMDA4cDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEucDgsCisgICAgMHgxLjAwODAwMDAwMDAwMDFwOAorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS5wOSwKKyAgICAweDEuMDAzZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgMHgxLnA5LAorICAgIDB4MS4wMDRwOQorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS5wOSwKKyAgICAweDEuMDA0MDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAxZmZmZmZmZmZmZnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMjAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDA1ZmZmZmZmZmZmZnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS4wMDZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDA2MDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIDB4MS5wMTEsCisgICAgMHgxLjAwMGZmZmZmZmZmZmZwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEucDExLAorICAgIDB4MS4wMDFwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEucDExLAorICAgIDB4MS4wMDEwMDAwMDAwMDAxcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLnAxMiwKKyAgICAweDEuMDAwN2ZmZmZmZmZmZnAxMgorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS5wMTIsCisgICAgMHgxLjAwMDgwcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLnAxMiwKKyAgICAweDEuMDAwODAwMDAwMDAwMXAxMgorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgMHgxLjgwcDEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIC0weDEucDIsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEucDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIC0weDEucDEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEucDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIC0weDEucDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDAuMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0weDEucDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0weDEucDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS5wMCwKKyAgICAweDEuOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjhwMAorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS5wMSwKKyAgICAweDEuNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgLTB4MS44MHAxLAorICAgIC0weDEuNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgMC4wLAorICAgIDB4MS5mZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDAuMCwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDAuMCwKKyAgICAweDEuMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS5wMCwKKyAgICAweDEuODAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIDB4MS5wMCwKKyAgICAweDEuN2ZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIC0weDEucDEsCisgICAgLTB4MS44MDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjdmZmZmcDAKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9mbG9vcmZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2Zsb29yZl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2JmMmM5ZgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9mbG9vcmZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTMzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGZsb2F0LCBmbG9hdD4gZ19mbG9vcmZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMHgxLnAwLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDAuMCwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEucDAsCisgICAgMHgxLjdmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEucDAsCisgICAgMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5wMCwKKyAgICAweDEuODAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5wMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS5wMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5wMSwKKyAgICAweDEuM2ZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5wMSwKKyAgICAweDEuNDBwMQorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLnAxLAorICAgIDB4MS40MDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLjhjcDYsCisgICAgMHgxLjhmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTBwNgorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTFmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS45MHA2LAorICAgIDB4MS45MnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTIwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS5mMzgwcDksCisgICAgMHgxLmYzZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjRwOQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0MDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjQzZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDQwMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLmZmZmZmMHAyMCwKKyAgICAweDEuZmZmZmZlcDIwCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEucDIxLAorICAgIDB4MS5wMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5wMjEsCisgICAgMHgxLjAwMDAwMnAyMQorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLmZmZmZmOHAyMSwKKyAgICAweDEuZmZmZmZlcDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEucDIyLAorICAgIDB4MS5wMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS5wMjIsCisgICAgMHgxLjAwMDAwMnAyMgorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLmZmZmZmY3AyMiwKKyAgICAweDEuZmZmZmZlcDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEucDIzLAorICAgIDB4MS5wMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS4wMDAwMDJwMjMsCisgICAgMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLmZmZmZmZXAyMywKKyAgICAweDEuZmZmZmZlcDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEucDI0LAorICAgIDB4MS5wMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS4wMDAwMDJwMjQsCisgICAgMHgxLjAwMDAwMnAyNAorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLmZmZmZmZXAyNCwKKyAgICAweDEuZmZmZmZlcDI0CisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEucDI1LAorICAgIDB4MS5wMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS4wMDAwMDJwMjUsCisgICAgMHgxLjAwMDAwMnAyNQorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0weDEucDAsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIC0weDEucDEsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAtMHgxLnAxLAorICAgIC0weDEuODAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEucDEsCisgICAgLTB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAtMHgxLnAxLAorICAgIC0weDEuN2ZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEuODBwMSwKKyAgICAtMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLnAxLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEucDEsCisgICAgLTB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgLTB4MS44MHAxLAorICAgIC0weDEuNDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEuODBwMSwKKyAgICAtMHgxLjQwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEuODBwMSwKKyAgICAtMHgxLjNmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLjk0cDYsCisgICAgLTB4MS45MDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTBwNgorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOGZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEuOTRwNiwKKyAgICAtMHgxLjkyMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAtMHgxLjk0cDYsCisgICAgLTB4MS45MnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAtMHgxLjk0cDYsCisgICAgLTB4MS45MWZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgLTB4MS5mNDgwcDksCisgICAgLTB4MS5mNDAwMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjRwOQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjNmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuZjQ4MHA5LAorICAgIC0weDEuZjQ0MDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIC0weDEuZjQ4MHA5LAorICAgIC0weDEuZjQ0MHA5CisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAtMHgxLmY0ODBwOSwKKyAgICAtMHgxLmY0M2ZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLjAwMDAwOHAyMSwKKyAgICAtMHgxLjAwMDAwMnAyMQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS5wMjEsCisgICAgLTB4MS5wMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEucDIxLAorICAgIC0weDEuZmZmZmZlcDIwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLjAwMDAwNHAyMiwKKyAgICAtMHgxLjAwMDAwMnAyMgorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS5wMjIsCisgICAgLTB4MS5wMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEucDIyLAorICAgIC0weDEuZmZmZmZlcDIxCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLjAwMDAwMnAyMywKKyAgICAtMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgLTB4MS5wMjMsCisgICAgLTB4MS5wMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEucDIzLAorICAgIC0weDEuZmZmZmZlcDIyCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAtMHgxLjAwMDAwMnAyNAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS5wMjQsCisgICAgLTB4MS5wMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIC0weDEuZmZmZmZlcDIzLAorICAgIC0weDEuZmZmZmZlcDIzCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLjAwMDAwMnAyNSwKKyAgICAtMHgxLjAwMDAwMnAyNQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTB4MS5wMjUsCisgICAgLTB4MS5wMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuZmZmZmZlcDI0LAorICAgIC0weDEuZmZmZmZlcDI0CisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuZmZmZmZlcDI5LAorICAgIDB4MS5mZmZmZmVwMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS5wMzAsCisgICAgMHgxLnAzMAorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLjAwMDAwMnAzMCwKKyAgICAweDEuMDAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIC0weDEuMDAwMDAycDMwLAorICAgIC0weDEuMDAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS5wMzAsCisgICAgLTB4MS5wMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAtMHgxLmZmZmZmZXAyOSwKKyAgICAtMHgxLmZmZmZmZXAyOQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgMHgxLmZmZmZmY3A2MSwKKyAgICAweDEuZmZmZmZjcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLmZmZmZmZXA2MSwKKyAgICAweDEuZmZmZmZlcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLnA2MiwKKyAgICAweDEucDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLjAwMDAwMnA2MiwKKyAgICAweDEuMDAwMDAycDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLjAwMDAwNHA2MiwKKyAgICAweDEuMDAwMDA0cDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLmZmZmZmY3A2MiwKKyAgICAweDEuZmZmZmZjcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLmZmZmZmZXA2MiwKKyAgICAweDEuZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLnA2MywKKyAgICAweDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjAwMDAwMnA2MywKKyAgICAweDEuMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjAwMDAwNHA2MywKKyAgICAweDEuMDAwMDA0cDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLmZmZmZmY3A2MywKKyAgICAweDEuZmZmZmZjcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmZmZmZmZXA2MywKKyAgICAweDEuZmZmZmZlcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLnA2NCwKKyAgICAweDEucDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLjAwMDAwMnA2NCwKKyAgICAweDEuMDAwMDAycDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLjAwMDAwNHA2NCwKKyAgICAweDEuMDAwMDA0cDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTB4MS4wMDAwMDRwNjIsCisgICAgLTB4MS4wMDAwMDRwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAtMHgxLjAwMDAwMnA2MiwKKyAgICAtMHgxLjAwMDAwMnA2MgorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0weDEucDYyLAorICAgIC0weDEucDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5mZmZmZmVwNjEsCisgICAgLTB4MS5mZmZmZmVwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAtMHgxLmZmZmZmY3A2MSwKKyAgICAtMHgxLmZmZmZmY3A2MQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuMDAwMDA0cDYzLAorICAgIC0weDEuMDAwMDA0cDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgLTB4MS4wMDAwMDJwNjMsCisgICAgLTB4MS4wMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLnA2MywKKyAgICAtMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0weDEuZmZmZmZlcDYyLAorICAgIC0weDEuZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS5mZmZmZmNwNjIsCisgICAgLTB4MS5mZmZmZmNwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAtMHgxLjAwMDAwNHA2NCwKKyAgICAtMHgxLjAwMDAwNHA2NAorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuMDAwMDAycDY0LAorICAgIC0weDEuMDAwMDAycDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTB4MS5wNjQsCisgICAgLTB4MS5wNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLmZmZmZmZXA2MywKKyAgICAtMHgxLmZmZmZmZXA2MworICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0weDEuZmZmZmZjcDYzLAorICAgIC0weDEuZmZmZmZjcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLnA2MiwKKyAgICAweDEucDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLnA2MywKKyAgICAweDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS5wNjIsCisgICAgLTB4MS5wNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMHgxLnA2MywKKyAgICAtMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS44MHAxLAorICAgIDB4MS5mZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS5wMiwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAweDEucDIsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgMHgxLmMwcDIsCisgICAgMHgxLmZmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLnAzLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS5wMywKKyAgICAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAweDEuZTBwMywKKyAgICAweDEuZmZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEucDQsCisgICAgMHgxLnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLnA0LAorICAgIDB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5mMHA0LAorICAgIDB4MS5mZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS5wNSwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAweDEucDUsCisgICAgMHgxLjAwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMHgxLmY4cDUsCisgICAgMHgxLmZmZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgMHgxLnA2LAorICAgIDB4MS5wNgorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS5wNiwKKyAgICAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuZmNwNiwKKyAgICAweDEuZmZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAweDEucDcsCisgICAgMHgxLnA3CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLnA3LAorICAgIDB4MS4wMDAwMDJwNworICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDB4MS5mZXA3LAorICAgIDB4MS5mZmZmZmVwNworICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS5wOCwKKyAgICAweDEucDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEucDgsCisgICAgMHgxLjAwMDAwMnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMHgxLmZmcDgsCisgICAgMHgxLmZmZmZmZXA4CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLnA5LAorICAgIDB4MS5wOQorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIDB4MS5wOSwKKyAgICAweDEuMDAwMDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEuZmY4MHA5LAorICAgIDB4MS5mZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS5wMTAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDB4MS5mZmMwcDEwLAorICAgIDB4MS5mZmZmZmVwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAweDEucDExLAorICAgIDB4MS5wMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEucDExLAorICAgIDB4MS4wMDAwMDJwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEuZmZlMHAxMSwKKyAgICAweDEuZmZmZmZlcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgMHgxLnAxMiwKKyAgICAweDEucDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLnAxMiwKKyAgICAweDEuMDAwMDAycDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLnAyLAorICAgIDB4MS4xZmZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDB4MS5wMiwKKyAgICAweDEuMjBwMgorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS5wMiwKKyAgICAweDEuMjAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEucDMsCisgICAgMHgxLjBmZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLnAzLAorICAgIDB4MS4xMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLnAzLAorICAgIDB4MS4xMDAwMDJwMworICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDB4MS5wNCwKKyAgICAweDEuMDdmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAweDEucDQsCisgICAgMHgxLjA4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEucDQsCisgICAgMHgxLjA4MDAwMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLnA1LAorICAgIDB4MS4wM2ZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS5wNSwKKyAgICAweDEuMDRwNQorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIDB4MS5wNSwKKyAgICAweDEuMDQwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEucDYsCisgICAgMHgxLjAxZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLnA2LAorICAgIDB4MS4wMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLnA2LAorICAgIDB4MS4wMjAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS5wNywKKyAgICAweDEuMDBmZmZlcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEucDcsCisgICAgMHgxLjAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEucDcsCisgICAgMHgxLjAxMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLnA4LAorICAgIDB4MS4wMDdmZmVwOAorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS5wOCwKKyAgICAweDEuMDA4MHA4CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLnA4LAorICAgIDB4MS4wMDgwMDJwOAorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS5wOSwKKyAgICAweDEuMDAzZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEucDksCisgICAgMHgxLjAwNDBwOQorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS5wOSwKKyAgICAweDEuMDA0MDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEucDEwLAorICAgIDB4MS4wMDFmZmVwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEucDEwLAorICAgIDB4MS4wMDIwcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAyMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjAwNWZmZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS4wMDYwcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjAwNjAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIDB4MS5wMTEsCisgICAgMHgxLjAwMGZmZXAxMQorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS5wMTEsCisgICAgMHgxLjAwMTBwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEucDExLAorICAgIDB4MS4wMDEwMDJwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDA3ZmVwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDA4cDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLnAxMiwKKyAgICAweDEuMDAwODAycDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDB4MS5mZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgLTB4MS5mZmZmZmNwMTI3LAorICAgIC0weDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS44MHAxLAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIC0weDEucDIsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIDB4MS5wMCwKKyAgICAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLnAxLAorICAgIC0weDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIC0weDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDAuMCwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIDAuMCwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAwLjAsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDAuMCwKKyAgICAweDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgMC4wLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0weDEucDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIDAuMCwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgLTAuMCwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS5wMCwKKyAgICAweDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIC0weDEucDEsCisgICAgLTB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMHgxLnAxLAorICAgIDB4MS40MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgLTB4MS44MHAxLAorICAgIC0weDEuNDBwMQorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDAuMCwKKyAgICAweDEuZmZmZmYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgMC4wLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAwLjAsCisgICAgMHgxLjAwMDAxMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAtMHgxLnAwLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAxMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS5wMCwKKyAgICAweDEuODAwMDEwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEucDAsCisgICAgMHgxLjdmZmZmMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjgwMDAxMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjdmZmZmMHAwCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvZm1hX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9mbWFfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZmMDU5OTcKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvZm1hX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDEzODMwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8zX3Q8ZG91YmxlLCBkb3VibGUsIGRvdWJsZSwgZG91YmxlPiBnX2ZtYV9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEuZTY2NjY2NjY2NjY2NjBwMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmNjY2NjY2NjY2NjY2RwLTEsCisgICAgLTB4MS5lNjY2NjY2NjY2NjY2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLjE1ZjE1ZjE1ZjE1ZWRmZmZmZmZmZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuY2NjY2NjY2NjY2NjZHAtMSwKKyAgICAweDEuMTVmMTVmMTVmMTVlZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAweDEuMDAwMDAwMDAwMDAwMmZmZmZmZmZmZmZmZmZmZmZmZmZwLTQxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZTY2NjY2NjY2NjY2NnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwM3AtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgLTB4MS5lNjY2NjY2NjY2NjY1ZmZmZmZmZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wNzUwNzUwNzUwNzU2cC0zLAorICAgIC0weDEuZTY2NjY2NjY2NjY2NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS4wMDAwMDAwMDAwMDAzMHAtNDEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjQ0NDQ0NDQ0NDQ0MzBwLTQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDNwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIC0weDEuZjRjY2NjY2NjY2NjYzc2NjY2NjY2NjY2NjY2OHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC00LAorICAgIC0weDEuY2NjY2NjY2NjY2NjZHAtMSwKKyAgICAtMHgxLmU2NjY2NjY2NjY2NjZwMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuMWJlOWMwN2JlZjNhYTAwMDAwMDAwY2EzYWNjMHAwLAorICAgIDB4MS4zMzMzMzRiZTkwYjdkcC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS4yZGE4NWMyYzkzNDE2ZmZmZmZmZmZkMWI0MmMwcDAsCisgICAgMHgxLjY2NjY2NzBmMjRhYTVwLTEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLjZjZTk5OTk5OTk5OWM4MDIzMzMzMzMzMzM0ODBwMTYsCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwNCwKKyAgICAweDEuZTY2NjY2NjY2NjY2OXAxMSwKKyAgICAweDEuY2NjY2NjY2NjY2NjZnA0CisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS42MmI4M2M0NDYxY2MyODAwMDAwMDAwMDFiYzQwcDAsCisgICAgMHgxLmZmODEyZThiYzJkMWZwLTEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS4wOTQyYjBkZjZhMzBlN2ZmMzU4NmZiNWZiNXAzOSwKKyAgICAweDEuZmZlN2ZmZmZmZmZmZnA0MCwKKyAgICAweDEuMDk0ZjIwOTRmMjA5NnAtMiwKKyAgICAtMHgxLmJhMmU4YmEyZThiYTJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS4wNmZiNTg2ZmI1ODZmOHAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEsCisgICAgLTB4MS44ZGY2YjBkZjZiMGRmcC0xLAorICAgIDB4MS44ZGY2YjBkZjZiMGUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuZmZmZmZmZmZmZmZmNzAwMDAwMDAwMDAwMDRwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5mZmZmZmZmZmZmZmY4MDAwMDAwMDAwMDAwNHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEuZmZmZmZmZmZmZmZmYTAwMDAwMDAwMDAwMDRwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLjAwMDAwMDAwMDAwMDM3ZmZmZmZmZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjAwMDAwMDAwMDAwMDNmZmZmZmZmZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuMDAwMDAwMDAwMDAwNGZmZmZmZmZmZmZmZmVwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS5mZmZmZmZmZmZmZmY3MDAwMDAwMDAwMDAwOHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLmZmZmZmZmZmZmZmZjgwMDAwMDAwMDAwMDA4cC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuZmZmZmZmZmZmZmZmYTAwMDAwMDAwMDAwMDhwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5wLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuMDAwMDAwMDAwMDAwMzdmZmZmZmZmZmZmZmNwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLjAwMDAwMDAwMDAwMDNmZmZmZmZmZmZmZmZjcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS4wMDAwMDAwMDAwMDA0ZmZmZmZmZmZmZmZmY3AtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuZmZmZmZmZmZmZmZmNzAwMDAwMDAwMDAwMDRwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS5mZmZmZmZmZmZmZmY4MDAwMDAwMDAwMDAwNHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLmZmZmZmZmZmZmZmZmEwMDAwMDAwMDAwMDA0cC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgLTAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLjAwMDAwMDAwMDAwMDM3ZmZmZmZmZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS4wMDAwMDAwMDAwMDAzZmZmZmZmZmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMDAwMDAwMDAwMDAwNGZmZmZmZmZmZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLmZmZmZmZmZmZmZmZjcwcC0yLAorICAgIDB4MS4wcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuZmZmZmZmZmZmZmZmODBwLTIsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS5mZmZmZmZmZmZmZmZhMHAtMiwKKyAgICAweDEuMHAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0yLAorICAgIDB4MS4wcDEwMjMsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLnAtMSwKKyAgICAweDEuMHAxMDIzLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAweDEuMHAxMDIzLAorICAgIC0wLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS4wMDAwMDAwMDAwMDAzOHAtMSwKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuMDAwMDAwMDAwMDAwNDBwLTEsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLjAwMDAwMDAwMDAwMDUwcC0xLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5mZmZmZmZmZmZmZmZiMDAwMDAwMDAwMDAwNHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgMHgxLmZmZmZmZmZmZmZmZmMwMDAwMDAwMDAwMDA0cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwNHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgLTAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuMDAwMDAwMDAwMDAwMTdmZmZmZmZmZmZmZmVwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuMDAwMDAwMDAwMDAwMWZmZmZmZmZmZmZmZmVwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS4wMDAwMDAwMDAwMDAyZmZmZmZmZmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgMHgxLmZmZmZmZmZmZmZmZmIwMDAwMDAwMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuZmZmZmZmZmZmZmZmYzAwMDAwMDAwMDAwMDJwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIC0wLjAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS4wMDAwMDAwMDAwMDAxN2ZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS4wMDAwMDAwMDAwMDAxZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLjAwMDAwMDAwMDAwMDJmZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEuZmZmZmZmZmZmZmZmYjBwLTEsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMSwKKyAgICAweDEuMHAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIDB4MS4wcDEwMjMsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMHgxLnAwLAorICAgIDB4MS4wcDEwMjMsCisgICAgLTAuMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMHAxMDIzLAorICAgIC0wLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjAwMDAwMDAwMDAwMDE4cDAsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcDAsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuMDAwMDAwMDAwMDAwMzBwMCwKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMDdmZmZmZnAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMDgwcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMDgwcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEuMHAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmY3ZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZjgwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZmZmODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0yLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMiwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEucC0xLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS4wcDAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLnAtMSwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAweDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmY3ZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmY4MHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmY4MHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLjAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLjAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS4wMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmNDBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwNDBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAyNDBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjAwMDAwMDAwMDAwMDE3ZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01MworICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS4wMDAwMDAwMDAwMDAxOHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuMHAtNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuMDAwMDAwMDAwMDAwMTgwMDAwMDAwMDAwMDJwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjAwMDAwMDAwMDAwMDI3ZmZmZmZmZmZmZmZlODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLjAwMDAwMDAwMDAwMDI3ZmZmZmZmZmZmZmZmODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLjAwMDAwMDAwMDAwMDI4MDAwMDAwMDAwMDAxODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLjAwMDAwMDAwMDAwMDE3ZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLjAwMDAwMDAwMDAwMDE4cC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLjAwMDAwMDAwMDAwMDE4MDAwMDAwMDAwMDAycC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLjAwMDAwMDAwMDAwMDFmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAycC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLjAwMDAwMDAwMDAwMDJmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjAwMDAwMDAwMDAwMDMwcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLjAwMDAwMDAwMDAwMDMwMDAwMDAwMDAwMDAycC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLjAwMDAwMDAwMDAwMDI3ZmZmZmZmZmZmZmZlODBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEuMDAwMDAwMDAwMDAwMjdmZmZmZmZmZmZmZmY4MHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wcC01MgorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS4wMDAwMDAwMDAwMDAyODAwMDAwMDAwMDAwMTgwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgMHgxLjAwMDAwMDAwMDAwMDJmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLjAwMDAwMDAwMDAwMDMwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjAwMDAwMDAwMDAwMDMwMDAwMDAwMDAwMDAycC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLjAwMDAwMDAwMDAwMDQwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLjAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLjAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDAzcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmNDBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwNDBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAyNDBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLjAwMDAwMDAwMDAwMDE3ZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01MworICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIDB4MS4wMDAwMDAwMDAwMDAxOHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuMHAtNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuMDAwMDAwMDAwMDAwMTgwMDAwMDAwMDAwMDJwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMHgxLjAwMDAwMDAwMDAwMDI3ZmZmZmZmZmZmZmZlODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLjAwMDAwMDAwMDAwMDI3ZmZmZmZmZmZmZmZmODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgMHgxLjAwMDAwMDAwMDAwMDI4MDAwMDAwMDAwMDAxODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLjAwMDAwMDAwMDAwMDE3ZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLjAwMDAwMDAwMDAwMDE4cC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLjAwMDAwMDAwMDAwMDE4MDAwMDAwMDAwMDAycC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgMHgxLjAwMDAwMDAwMDAwMDFmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgMHgxLjAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAycC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLjAwMDAwMDAwMDAwMDJmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMHgxLjAwMDAwMDAwMDAwMDMwcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLjAwMDAwMDAwMDAwMDMwMDAwMDAwMDAwMDAycC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMHgxLjAwMDAwMDAwMDAwMDI3ZmZmZmZmZmZmZmZlODBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuMDAwMDAwMDAwMDAwMjdmZmZmZmZmZmZmZmY4MHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wcC01MgorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS4wMDAwMDAwMDAwMDAyODAwMDAwMDAwMDAwMTgwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLjAwMDAwMDAwMDAwMDJmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgMHgxLjAwMDAwMDAwMDAwMDMwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLjAwMDAwMDAwMDAwMDMwMDAwMDAwMDAwMDAycC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgMHgxLjAwMDAwMDAwMDAwMDQwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLjAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgMHgxLjAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDAzcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLjAwMDAwMDAwMDAwMDZmZmZmZmZmZmZmZmZjNDBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgMHgxLjAwMDAwMDAwMDAwMDcwMDAwMDAwMDAwMDAwNDBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjBwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgMHgxLjAwMDAwMDAwMDAwMDcwMDAwMDAwMDAwMDA4NDBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMHgxLjAwMDAwMDAwMDAwMDc3ZmZmZmZmZmZmZmZjcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01MQorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS4wMDAwMDAwMDAwMDA3OHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuMHAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAweDEuMDAwMDAwMDAwMDAwNzgwMDAwMDAwMDAwMDhwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLjAwMDAwMDAwMDAwMDg3ZmZmZmZmZmZmZmZiODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgMHgxLjAwMDAwMDAwMDAwMDg3ZmZmZmZmZmZmZmZmODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLjAwMDAwMDAwMDAwMDg4MDAwMDAwMDAwMDA3ODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgMHgxLjAwMDAwMDAwMDAwMDc3ZmZmZmZmZmZmZmZjcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMHgxLjAwMDAwMDAwMDAwMDc4cC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjBwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgMHgxLjAwMDAwMDAwMDAwMDc4MDAwMDAwMDAwMDA4cC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLjAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmZjcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMHgxLjAwMDAwMDAwMDAwMDgwcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjBwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLjAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA4cC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgMHgxLjAwMDAwMDAwMDAwMDhmZmZmZmZmZmZmZmZjcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLjAwMDAwMDAwMDAwMDkwcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMHgxLjAwMDAwMDAwMDAwMDkwMDAwMDAwMDAwMDA4cC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMHgxLjAwMDAwMDAwMDAwMDg3ZmZmZmZmZmZmZmZiODBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuMDAwMDAwMDAwMDAwODdmZmZmZmZmZmZmZmY4MHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wcC01MAorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS4wMDAwMDAwMDAwMDA4ODAwMDAwMDAwMDAwNzgwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLjAwMDAwMDAwMDAwMDhmZmZmZmZmZmZmZmZjcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLjAwMDAwMDAwMDAwMDkwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjBwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLjAwMDAwMDAwMDAwMDkwMDAwMDAwMDAwMDA4cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLjAwMDAwMDAwMDAwMDlmZmZmZmZmZmZmZmZkcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLjAwMDAwMDAwMDAwMGEwMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLjAwMDAwMDAwMDAwMGEwMDAwMDAwMDAwMDA5cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01NQorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMDgwcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wcC01NAorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMTgwcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01NAorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjgwcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01NQorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS5wLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjBwLTU0CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTU0CisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmNDBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTU1CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTU0CisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01NAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjgwcC0yLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTU1CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLnAtMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wcC01NAorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgwcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTU0CisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZmZmYzBwLTEsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuMDAwMDAwMDAwMDAwMDhwLTEsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuMHAtNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAweDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA4MHAtMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01NAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS4wMDAwMDAwMDAwMDAxN2ZmZmZmZmZmZmZmZmMwcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTU1CisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLjAwMDAwMDAwMDAwMDE4cC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTU0CisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLjAwMDAwMDAwMDAwMDE4MDAwMDAwMDAwMDAwODBwLTEsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmY0MHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01NQorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZjgwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjBwLTU0CisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTU0CisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgMHgxLjAwMDAwMDAwMDAwMDE3ZmZmZmZmZmZmZmZmYzBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEuMDAwMDAwMDAwMDAwMThwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuMHAtNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuMDAwMDAwMDAwMDAwMTgwMDAwMDAwMDAwMDA4MHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01NAorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDB4MS4wMDAwMDAwMDAwMDAyODAwMDAwMDAwMDAwMGMwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTU1CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjAwMDAwMDAwMDAwMDI4MDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTU0CisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLjAwMDAwMDAwMDAwMDI4MDAwMDAwMDAwMDAxODBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDA3ZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMDgwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAwODBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAwLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA5NzAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOTcxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMGZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA1MTEsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTExLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDUxMSwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTExLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDUxMSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMDdmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MTEsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAwODBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTExLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDA4MHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MTEsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MTEsCisgICAgMHgxLjBwNTEyLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxMSwKKyAgICAweDEuMHA1MTIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxMSwKKyAgICAweDEuMHA1MTIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmYwcDk3MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA1MTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwNTExLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA5NzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwNTExLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEucDk3MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA1MTEsCisgICAgMHgxLjBwNTEyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA5NzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTExLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDUxMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwOTcwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTExLAorICAgIDB4MS4wcDUxMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIC0weDEucDk3MSwKKyAgICAweDEuMHA1MTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwNTExLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMC4wLAorICAgIDB4MS4wcDUxMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEucDk3MSwKKyAgICAweDEuMHA1MTIsCisgICAgMHgxLjBwNTEyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHA5NzAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLnA5NzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMHgxLjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDk3MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDk3MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAtMHgxLjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDk3MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAtMHgxLjgwcDk3MiwKKyAgICAweDEuMHAxMDIzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAtMHgxLnA5NzEsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMC4wLAorICAgIDB4MS4wcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIC0weDEuMHAxLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIC0weDEuMHAxLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMHgxLjBwMSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAwZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIC0weDEuMHAxLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIC0weDEuMHAxLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAtMHgxLjBwMSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDA4MHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMDgwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMDdmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcDEwMjMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLjBwMSwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLjBwMSwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcDEwMjMsCisgICAgLTB4MS4wcDEsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuN2ZmZmZmZmZmZmZmZTQwMDAwMDAwMDAwMDA0MHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIDB4MS43ZmZmZmZmZmZmZmZlYzAwMDAwMDAwMDAwMDQwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLjdmZmZmZmZmZmZmZmY0MDAwMDAwMDAwMDAwNDBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEuN2ZmZmZmZmZmZmZmZThwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuN2ZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEuN2ZmZmZmZmZmZmZmZjhwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAweDEuN2ZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmY4MHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIDB4MS43ZmZmZmZmZmZmZmZmN2ZmZmZmZmZmZmZmZjgwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLjdmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmODBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAweDEuN2ZmZmZmZmZmZmZmZTgwMDAwMDAwMDAwMDAyMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS43ZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMDIwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgMHgxLjdmZmZmZmZmZmZmZmY4MDAwMDAwMDAwMDAwMjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuN2ZmZmZmZmZmZmZmZWNwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuN2ZmZmZmZmZmZmZmZjRwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuN2ZmZmZmZmZmZmZmZmNwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAweDEuN2ZmZmZmZmZmZmZmZjNmZmZmZmZmZmZmZmZjMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIDB4MS43ZmZmZmZmZmZmZmZmYmZmZmZmZmZmZmZmZmMwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgMHgxLjgwMDAwMDAwMDAwMDAzZmZmZmZmZmZmZmZmYzBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEuN2ZmZmZmZmZmZmZmZWNwMTAyMywKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEuN2ZmZmZmZmZmZmZmZjRwMTAyMywKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEuN2ZmZmZmZmZmZmZmZmNwMTAyMywKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuN2ZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEuN2ZmZmZmZmZmZmZmZjhwMTAyMywKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAweDEuODBwMTAyMywKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuN2ZmZmZmZmZmZmZmZjhwMTAyMywKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuODBwMTAyMywKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuODAwMDAwMDAwMDAwMDhwMTAyMywKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAweDEuZmZmZmZmZmZmZmZmZDgwMDAwMDAwMDAwMDA4MHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMDgwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgMHgxLmZmZmZmZmZmZmZmZmU4MDAwMDAwMDAwMDAwODBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIDB4MS5mZmZmZmZmZmZmZmZlOHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmN2ZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDA0MHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS5mZmZmZmZmZmZmZmZlODAwMDAwMDAwMDAwMDQwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwNDBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZThwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjdmZmZmZmZmZmZmZmY4MHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDB4MS5mZmZmZmZmZmZmZmZlOHAxMDIzLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS5mZmZmZmZmZmZmZmZkODAwMDAwMDAwMDAwMDgwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAwODBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTgwMDAwMDAwMDAwMDA4MHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLmZmZmZmZmZmZmZmZmU4cDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAweDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgMHgxLmZmZmZmZmZmZmZmZmY3ZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMDQwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMHgxLmZmZmZmZmZmZmZmZmU4MDAwMDAwMDAwMDAwNDBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDA0MHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlOHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzQzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmN2ZmZmZmZmZmZmZmZjgwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgMHgxLmZmZmZmZmZmZmZmZmU4cDEwMjMsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzUwCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTIKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgMHgxLmZmZmZmZmZmZmZmZmU4MDAwMDAwMDAwMDAwNDBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMDQwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDIwcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjhwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuMDAwMDAwMDAwMDAwMDRwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4MHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEuMDAwMDAwMDAwMDAwMDNmZmZmZmZmZmZmZmZjMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIDB4MS4wMDAwMDAwMDAwMDAwYmZmZmZmZmZmZmZmZmMwcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIDB4MS5mZmZmZmZmZmZmZmZmOHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS4wMDAwMDAwMDAwMDAwNHAxLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDM2OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmOHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIDB4MS5wMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIDB4MS4wMDAwMDAwMDAwMDAwOHAxLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzcyCisgICAgMHgxLjAwMDAwMDAwMDAwMDA0cDEsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgMHgxLjAwMDAwMDAwMDAwMDA4cDEsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjgwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIDB4MS4wMDAwMDAwMDAwMDAwM2ZmZmZmZmZmZmZmZmMwcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgMHgxLjAwMDAwMDAwMDAwMDBiZmZmZmZmZmZmZmZmYzBwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMDRwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAweDEuMDAwMDAwMDAwMDAwMDhwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM4MAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgMHgxLjAwMDAwMDAwMDAwMDBjMDAwMDAwMDAwMDAwODBwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODIKKyAgICAweDEuMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDA4MHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgMHgxLjAwMDAwMDAwMDAwMDE4MDAwMDAwMDAwMDAwODBwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDM4NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzg1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtNTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM4NgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtNTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDM4NworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIDB4MS5wLTUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAweDEuODBwLTUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTU0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmOHAtNTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZmNwLTUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzkzCisgICAgLTB4MS44MHAtNTIsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIC0weDEucC01MiwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAwLjAsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgLTB4MS5wLTUzLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAwLjAsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMHgxLnAtNTIsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgMC4wLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLnAtNTMsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIDB4MS44MHAtNTIsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIC0weDEuNDAwMDAwMDAwMDAwMDhwLTUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDA4cC01MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDQKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcC01MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAtMHgxLjgwcC01MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgLTB4MS5wLTUyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC01MywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTU0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDA3ZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAwODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIDB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMDgwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDE1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDQxNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDE3CisgICAgMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZmZmN2ZmZmZmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTgKKyAgICAweDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmY4MHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZjgwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQyMQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQyMworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIDB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQyOQorICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZjdmZmZmZnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDMwCisgICAgMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZmZmODBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAweDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmY4MHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzIKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzQKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAweDEuMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDBmZmZmZmZwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDM2CisgICAgMHgxLjAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAweDEuMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzgKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZmZmODBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZmZmODBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDQwCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZjdmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMDgwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAwODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAwN2ZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ0NworICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIC0weDEucDAsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTEKKyAgICAtMHgxLnAwLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wcDAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ1MworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAweDEuMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ1NgorICAgIC0weDEuMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIC0weDEuMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTgKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwZmZmZmZmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ1OQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ2MAorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMHAwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjEKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ2MgorICAgIC0weDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmY4MHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ2MworICAgIC0weDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmY4MHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjQKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZmZmN2ZmZmZmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjUKKyAgICAweDEuMDAwMDAwM2ZmZmZmZWZmZmZmZmUwMDAwMDA0MHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yNworICB9LAorICB7IC8vIEVudHJ5IDQ2NgorICAgIDB4MS4wMDAwMDAzZmZmZmZmMDAwMDAwMDAwMDAwMDQwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgNDY3CisgICAgMHgxLjAwMDAwMDNmZmZmZmYwMDAwMDA0MDAwMDAwNDBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjgKKyAgICAweDEuMDAwMDAwM2ZmZmZmZjdmZmZmZmVwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yNworICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIDB4MS4wMDAwMDAzZmZmZmZmOHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgNDcwCisgICAgMHgxLjAwMDAwMDNmZmZmZmY4MDAwMDA0cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzEKKyAgICAweDEuMDAwMDAwNDAwMDAwMDdmZmZmZmRmZmZmZmY4MHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgMHgxLjAwMDAwMDQwMDAwMDA3ZmZmZmZmZmZmZmZmODBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIDB4MS4wMDAwMDA0MDAwMDAwODAwMDAwM2ZmZmZmZjgwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzQKKyAgICAweDEuMDAwMDAwM2ZmZmZmZjdmZmZmZmVwMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yNworICB9LAorICB7IC8vIEVudHJ5IDQ3NQorICAgIDB4MS4wMDAwMDAzZmZmZmZmOHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgNDc2CisgICAgMHgxLjAwMDAwMDNmZmZmZmY4MDAwMDA0cDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAweDEuMDAwMDAwM2ZmZmZmZmZmZmZmZmVwMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgMHgxLjAwMDAwMDQwcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDQ3OQorICAgIDB4MS4wMDAwMDA0MDAwMDAwMDAwMDAwNHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODAKKyAgICAweDEuMDAwMDAwNDAwMDAwMGZmZmZmZmVwMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDgxCisgICAgMHgxLjAwMDAwMDQwMDAwMDEwcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDQ4MgorICAgIDB4MS4wMDAwMDA0MDAwMDAxMDAwMDAwNHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODMKKyAgICAweDEuMDAwMDAwNDAwMDAwMDdmZmZmZmRmZmZmZmY4MHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDg0CisgICAgMHgxLjAwMDAwMDQwMDAwMDA3ZmZmZmZmZmZmZmZmODBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDQ4NQorICAgIDB4MS4wMDAwMDA0MDAwMDAwODAwMDAwM2ZmZmZmZjgwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODYKKyAgICAweDEuMDAwMDAwNDAwMDAwMGZmZmZmZmVwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgMHgxLjAwMDAwMDQwMDAwMDEwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDQ4OAorICAgIDB4MS4wMDAwMDA0MDAwMDAxMDAwMDAwNHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODkKKyAgICAweDEuMDAwMDAwNDAwMDAwMWZmZmZmZmUwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgMHgxLjAwMDAwMDQwMDAwMDIwMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDQ5MQorICAgIDB4MS4wMDAwMDA0MDAwMDAyMDAwMDAwNDAwMDAwMXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTIKKyAgICAtMHgxLmZmZmZmZjgwMDAwMDEwMDAwMDAzZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yNworICB9LAorICB7IC8vIEVudHJ5IDQ5MworICAgIC0weDEuZmZmZmZmODAwMDAwMGZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgLTB4MS5mZmZmZmY4MDAwMDAwZmZmZmZmN2ZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTUKKyAgICAtMHgxLmZmZmZmZjdmZmZmZmYwMDAwMDA0cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yNworICB9LAorICB7IC8vIEVudHJ5IDQ5NgorICAgIC0weDEuZmZmZmZmN2ZmZmZmZjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgLTB4MS5mZmZmZmY3ZmZmZmZlZmZmZmZmOHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTgKKyAgICAtMHgxLmZmZmZmZjdmZmZmZmUwMDAwMDA0MDAwMDAwODBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yNworICB9LAorICB7IC8vIEVudHJ5IDQ5OQorICAgIC0weDEuZmZmZmZmN2ZmZmZmZTAwMDAwMDAwMDAwMDA4MHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTAwCisgICAgLTB4MS5mZmZmZmY3ZmZmZmZkZmZmZmZmODAwMDAwMDgwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDEKKyAgICAtMHgxLmZmZmZmZjgwMDAwMDIwMDAwMDA0cC0xLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgLTB4MS5mZmZmZmY4MDAwMDAyMHAtMSwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDUwMworICAgIC0weDEuZmZmZmZmODAwMDAwMWZmZmZmZjhwLTEsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAtMHgxLmZmZmZmZjgwMDAwMDAwMDAwMDA0cC0xLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTA1CisgICAgLTB4MS5mZmZmZmY4MHAtMSwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMHAwLAorICAgIDB4MS4wcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDUwNgorICAgIC0weDEuZmZmZmZmN2ZmZmZmZmZmZmZmZjhwLTEsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAtMHgxLmZmZmZmZjdmZmZmZmYwMDAwMDA0cC0xLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yNworICB9LAorICB7IC8vIEVudHJ5IDUwOAorICAgIC0weDEuZmZmZmZmN2ZmZmZmZjBwLTEsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTA5CisgICAgLTB4MS5mZmZmZmY3ZmZmZmZlZmZmZmZmOHAtMSwKKyAgICAweDEuMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTAKKyAgICAtMHgxLmZmZmZmZjgwMDAwMDQwMDAwMDA0MDAwMDAycC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgLTB4MS5mZmZmZmY4MDAwMDA0MDAwMDAwMDAwMDAwMnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDUxMgorICAgIC0weDEuZmZmZmZmODAwMDAwM2ZmZmZmZjgwMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTMKKyAgICAtMHgxLmZmZmZmZjgwMDAwMDIwMDAwMDA0cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgLTB4MS5mZmZmZmY4MDAwMDAyMHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMHAwLAorICAgIDB4MS4wcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIC0weDEuZmZmZmZmODAwMDAwMWZmZmZmZjhwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTYKKyAgICAtMHgxLmZmZmZmZjgwMDAwMDEwMDAwMDAzZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yNworICB9LAorICB7IC8vIEVudHJ5IDUxNworICAgIC0weDEuZmZmZmZmODAwMDAwMGZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTE4CisgICAgLTB4MS5mZmZmZmY4MDAwMDAwZmZmZmZmN2ZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZjcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUyCisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmOHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MQorICB9LAorICB7IC8vIEVudHJ5IDUyMgorICAgIC0weDEuODBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MSwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MgorICB9LAorICB7IC8vIEVudHJ5IDUyMworICAgIC0weDEucC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgNTI0CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNTI1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MgorICB9LAorICB7IC8vIEVudHJ5IDUyNgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMHA1MgorICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MQorICB9LAorICB7IC8vIEVudHJ5IDUyOAorICAgIC0weDEuODBwMCwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjkKKyAgICAtMHgxLnAtMSwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAwLjAsCisgICAgMHgxLjBwNTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNTMxCisgICAgLTB4MS5wMCwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MgorICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIDAuMCwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMHA1MgorICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIDB4MS5wLTEsCisgICAgMHgxLjBwNTIsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzQKKyAgICAwLjAsCisgICAgMHgxLjBwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAweDEucDAsCisgICAgMHgxLjBwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjBwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzYKKyAgICAweDEuODBwMCwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MQorICB9LAorICB7IC8vIEVudHJ5IDUzNworICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUyCisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHA1MgorICB9LAorICB7IC8vIEVudHJ5IDUzOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDAKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDEKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAweDEuODBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MiwKKyAgICAweDEuMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MQorICB9LAorICB7IC8vIEVudHJ5IDU0MworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUyCisgIH0sCisgIHsgLy8gRW50cnkgNTQ0CisgICAgMHgxLjAwMDAwMDAwMDAwMDA4cDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjBwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDUKKyAgICAweDEuNDAwMDAwMDAwMDAwMDhwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MQorICB9LAorICB7IC8vIEVudHJ5IDU0NgorICAgIDB4MS4wOHAtNSwKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIDB4MS4wMDQwcDAsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIDB4MS5wLTQsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIDB4MS4wOHAwLAorICAgIDB4MS4wcC01LAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIDB4MS5wLTQsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDU1MQorICAgIDB4MS4wOHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDU1MgorICAgIDB4MS4wOHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDU1MworICAgIDB4MS5wMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS4yMHAtMiwKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTU1CisgICAgMHgxLjQwcDAsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU2CisgICAgMHgxLjA4cDAsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwNSwKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDU1NworICAgIDB4MS5wMSwKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTgKKyAgICAweDEuMDFwMywKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTkKKyAgICAweDEuMjBwMywKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDB4MS4wMDQwcDUsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTYxCisgICAgMHgxLjA4cDUsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjIKKyAgICAweDEuMDA0MHA1LAorICAgIDB4MS4wcC01LAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTYzCisgICAgMHgxLjA4cDUsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDU2NAorICAgIDB4MS4wMDEwcDcsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMTIsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjUKKyAgICAweDEuMDJwNywKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAxMiwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTY2CisgICAgMHgxLjAwMDJwMTAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAxMCwKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDU2NworICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDU2OAorICAgIDB4MS4wMDAwODBwMTIsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAxMiwKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDU2OQorICAgIDB4MS4wMDEwcDEyLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMTIsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDU3MAorICAgIDB4MS4wMDA4cDMsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIDB4MS4wMDAycDUsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIDB4MS4wMXAzLAorICAgIDB4MS4wcC01LAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDU3MworICAgIDB4MS4wMDQwcDUsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTc0CisgICAgMHgxLjAxcDMsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTc1CisgICAgMHgxLjAwNDBwNSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcC01LAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzYKKyAgICAweDEuMjBwMywKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDU3NworICAgIDB4MS4wOHA1LAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTc4CisgICAgMHgxLjA4cDMsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTc5CisgICAgMHgxLjAycDUsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTgwCisgICAgMHgxLjIwcDMsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwNSwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTgxCisgICAgMHgxLjA4cDUsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwNSwKKyAgICAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgMHgxLnA0LAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTgzCisgICAgMHgxLjQwcDUsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODQKKyAgICAweDEuNDBwNSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDU4NQorICAgIDB4MS5wNiwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIDB4MS40MHA1LAorICAgIDB4MS4wcC01LAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODcKKyAgICAweDEucDYsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDU4OAorICAgIDB4MS4xMHA3LAorICAgIDB4MS4wcC01LAorICAgIDB4MS4wcDEyLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODkKKyAgICAweDEuNDBwNywKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAxMiwKKyAgICAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTkwCisgICAgMHgxLjAycDEwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDU5MQorICAgIDB4MS4wOHAxMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTIKKyAgICAweDEuMDA4MHAxMiwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDEyLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTMKKyAgICAweDEuMDJwMTIsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAxMiwKKyAgICAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTk0CisgICAgMHgxLjAwMDAxMHAxMCwKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDU5NQorICAgIDB4MS4wMDAwMDRwMTIsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTYKKyAgICAweDEuMDAwMnAxMCwKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNTk3CisgICAgMHgxLjAwMDA4MHAxMiwKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDEyCisgIH0sCisgIHsgLy8gRW50cnkgNTk4CisgICAgMHgxLjAwMDJwMTAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDU5OQorICAgIDB4MS4wMDAwODBwMTIsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAxMgorICB9LAorICB7IC8vIEVudHJ5IDYwMAorICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDYwMQorICAgIDB4MS4wMDEwcDEyLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAxMgorICB9LAorICB7IC8vIEVudHJ5IDYwMgorICAgIDB4MS4wMDEwcDEwLAorICAgIDB4MS4wcC01LAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAweDEuMDAwNHAxMiwKKyAgICAweDEuMHAtNSwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDEyCisgIH0sCisgIHsgLy8gRW50cnkgNjA0CisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwNSwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDYwNQorICAgIDB4MS4wMDEwcDEyLAorICAgIDB4MS4wcC01LAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDYKKyAgICAweDEuMDJwMTAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNjA3CisgICAgMHgxLjAwODBwMTIsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDEyCisgIH0sCisgIHsgLy8gRW50cnkgNjA4CisgICAgMHgxLjA4cDEwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwNSwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDYwOQorICAgIDB4MS4wMnAxMiwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTAKKyAgICAweDEuMDhwMTAsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTEKKyAgICAweDEuMDJwMTIsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTIKKyAgICAweDEuMjBwMTAsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMTIsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTMKKyAgICAweDEuMDhwMTIsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwMTIsCisgICAgMHgxLjBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTQKKyAgICAweDEucDExLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAweDEuNDBwMTIsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAxMCwKKyAgICAweDEuMHAxMgorICB9LAorICB7IC8vIEVudHJ5IDYxNgorICAgIDB4MS40MHAxMiwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDEyLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNjE3CisgICAgMHgxLnAxMywKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDEyLAorICAgIDB4MS4wcDEyCisgIH0sCisgIHsgLy8gRW50cnkgNjE4CisgICAgMHgxLjAwMjBwNiwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTkKKyAgICAweDEuMDRwNiwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDYyMAorICAgIDB4MS4wMDA4cDgsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjIxCisgICAgMHgxLjAxcDgsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjIKKyAgICAweDEuMDAwOHA4LAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDYyMworICAgIDB4MS4wMXA4LAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjI0CisgICAgMHgxLjAwMDJwMTAsCisgICAgMHgxLjBwNSwKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjI1CisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjBwNSwKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjYKKyAgICAweDEuMjBwNiwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDYyNworICAgIDB4MS44MHA2LAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNjI4CisgICAgMHgxLjA4cDgsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjkKKyAgICAweDEuMjBwOCwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDYzMAorICAgIDB4MS4wOHA4LAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjMxCisgICAgMHgxLjIwcDgsCisgICAgMHgxLjBwNSwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzIKKyAgICAweDEuMDJwMTAsCisgICAgMHgxLjBwNSwKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzMKKyAgICAweDEuMDhwMTAsCisgICAgMHgxLjBwNSwKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzQKKyAgICAweDEuMTBwMTAsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNjM1CisgICAgMHgxLjA0cDEyLAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAxMgorICB9LAorICB7IC8vIEVudHJ5IDYzNgorICAgIDB4MS40MHAxMCwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzcKKyAgICAweDEuMTBwMTIsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDEyCisgIH0sCisgIHsgLy8gRW50cnkgNjM4CisgICAgMHgxLjQwcDEwLAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDYzOQorICAgIDB4MS4xMHAxMiwKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDAKKyAgICAweDEucDExLAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwNSwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDY0MQorICAgIDB4MS40MHAxMiwKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDIKKyAgICAweDEuMDAwMDQwcDEzLAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDMKKyAgICAweDEuMDAwOHAxMywKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDQKKyAgICAweDEuMDAwMDEwcDE1LAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwMTIsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDUKKyAgICAweDEuMDAwMnAxNSwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDEyLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDYKKyAgICAweDEuMDAwMDEwcDE1LAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDcKKyAgICAweDEuMDAwMnAxNSwKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDgKKyAgICAweDEuMDAwMDA0cDE3LAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwMTIsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDkKKyAgICAweDEuMDAwMDgwcDE3LAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwMTIsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIDB4MS4wMDQwcDEzLAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDY1MQorICAgIDB4MS4wMXAxMywKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTIKKyAgICAweDEuMDAxMHAxNSwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDEyLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTMKKyAgICAweDEuMDA0MHAxNSwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDEyLAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTQKKyAgICAweDEuMDAxMHAxNSwKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTUKKyAgICAweDEuMDA0MHAxNSwKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTYKKyAgICAweDEuMDAwNHAxNywKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDEyLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTcKKyAgICAweDEuMDAxMHAxNywKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDEyLAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAweDEuMjBwMTMsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAxMCwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDY1OQorICAgIDB4MS44MHAxMywKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDEyCisgIH0sCisgIHsgLy8gRW50cnkgNjYwCisgICAgMHgxLjA4cDE1LAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwMTIsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjEKKyAgICAweDEuMjBwMTUsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAxMiwKKyAgICAweDEuMHAxMgorICB9LAorICB7IC8vIEVudHJ5IDY2MgorICAgIDB4MS4wOHAxNSwKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNjYzCisgICAgMHgxLjIwcDE1LAorICAgIDB4MS4wcDUsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjQKKyAgICAweDEuMDJwMTcsCisgICAgMHgxLjBwNSwKKyAgICAweDEuMHAxMiwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDY2NQorICAgIDB4MS4wOHAxNywKKyAgICAweDEuMHA1LAorICAgIDB4MS4wcDEyLAorICAgIDB4MS4wcDEyCisgIH0sCisgIHsgLy8gRW50cnkgNjY2CisgICAgLTB4MS5mZmZmZTBwLTIxLAorICAgIC0weDEuMHAtMjAsCisgICAgLTB4MS4wcC0yMCwKKyAgICAtMHgxLjBwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNjY3CisgICAgMHgxLjAwMDAxMHAtMjAsCisgICAgLTB4MS4wcC0yMCwKKyAgICAtMHgxLjBwLTIwLAorICAgIDB4MS4wcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDY2OAorICAgIC0weDEuMDAwMDEwcC0yMCwKKyAgICAtMHgxLjBwLTIwLAorICAgIDB4MS4wcC0yMCwKKyAgICAtMHgxLjBwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNjY5CisgICAgMHgxLmZmZmZlMHAtMjEsCisgICAgLTB4MS4wcC0yMCwKKyAgICAweDEuMHAtMjAsCisgICAgMHgxLjBwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNjcwCisgICAgLTB4MS4wMDAwMTBwLTIwLAorICAgIDB4MS4wcC0yMCwKKyAgICAtMHgxLjBwLTIwLAorICAgIC0weDEuMHAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzEKKyAgICAweDEuZmZmZmUwcC0yMSwKKyAgICAweDEuMHAtMjAsCisgICAgLTB4MS4wcC0yMCwKKyAgICAweDEuMHAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzIKKyAgICAtMHgxLmZmZmZlMHAtMjEsCisgICAgMHgxLjBwLTIwLAorICAgIDB4MS4wcC0yMCwKKyAgICAtMHgxLjBwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNjczCisgICAgMHgxLjAwMDAxMHAtMjAsCisgICAgMHgxLjBwLTIwLAorICAgIDB4MS4wcC0yMCwKKyAgICAweDEuMHAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmVwLTIxLAorICAgIC0weDEuMHAtMTAsCisgICAgLTB4MS4wcC0xMCwKKyAgICAtMHgxLjBwLTEwMAorICB9LAorICB7IC8vIEVudHJ5IDY3NQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMXAtMjAsCisgICAgLTB4MS4wcC0xMCwKKyAgICAtMHgxLjBwLTEwLAorICAgIDB4MS4wcC0xMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzYKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAxcC0yMCwKKyAgICAtMHgxLjBwLTEwLAorICAgIDB4MS4wcC0xMCwKKyAgICAtMHgxLjBwLTEwMAorICB9LAorICB7IC8vIEVudHJ5IDY3NworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmVwLTIxLAorICAgIC0weDEuMHAtMTAsCisgICAgMHgxLjBwLTEwLAorICAgIDB4MS4wcC0xMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzgKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAxcC0yMCwKKyAgICAweDEuMHAtMTAsCisgICAgLTB4MS4wcC0xMCwKKyAgICAtMHgxLjBwLTEwMAorICB9LAorICB7IC8vIEVudHJ5IDY3OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmVwLTIxLAorICAgIDB4MS4wcC0xMCwKKyAgICAtMHgxLjBwLTEwLAorICAgIDB4MS4wcC0xMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmVwLTIxLAorICAgIDB4MS4wcC0xMCwKKyAgICAweDEuMHAtMTAsCisgICAgLTB4MS4wcC0xMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODEKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDFwLTIwLAorICAgIDB4MS4wcC0xMCwKKyAgICAweDEuMHAtMTAsCisgICAgMHgxLjBwLTEwMAorICB9LAorICB7IC8vIEVudHJ5IDY4MgorICAgIDB4MS5mMHAtMTEsCisgICAgLTB4MS4wcC01LAorICAgIC0weDEuMHAtNSwKKyAgICAtMHgxLjBwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNjgzCisgICAgMHgxLjA4cC0xMCwKKyAgICAtMHgxLjBwLTUsCisgICAgLTB4MS4wcC01LAorICAgIDB4MS4wcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDY4NAorICAgIC0weDEuMDhwLTEwLAorICAgIC0weDEuMHAtNSwKKyAgICAweDEuMHAtNSwKKyAgICAtMHgxLjBwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNjg1CisgICAgLTB4MS5mMHAtMTEsCisgICAgLTB4MS4wcC01LAorICAgIDB4MS4wcC01LAorICAgIDB4MS4wcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIC0weDEuMDhwLTEwLAorICAgIDB4MS4wcC01LAorICAgIC0weDEuMHAtNSwKKyAgICAtMHgxLjBwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNjg3CisgICAgLTB4MS5mMHAtMTEsCisgICAgMHgxLjBwLTUsCisgICAgLTB4MS4wcC01LAorICAgIDB4MS4wcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDY4OAorICAgIDB4MS5mMHAtMTEsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwLTUsCisgICAgLTB4MS4wcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDY4OQorICAgIDB4MS4wOHAtMTAsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwLTUsCisgICAgMHgxLjBwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNjkwCisgICAgMHgxLjY4cDYsCisgICAgLTB4MS40cDMsCisgICAgLTB4MS40cDMsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTEKKyAgICAweDEuYjhwNiwKKyAgICAtMHgxLjRwMywKKyAgICAtMHgxLjRwMywKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjkyCisgICAgLTB4MS5iOHA2LAorICAgIC0weDEuNHAzLAorICAgIDB4MS40cDMsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTMKKyAgICAtMHgxLjY4cDYsCisgICAgLTB4MS40cDMsCisgICAgMHgxLjRwMywKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjk0CisgICAgLTB4MS5iOHA2LAorICAgIDB4MS40cDMsCisgICAgLTB4MS40cDMsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTUKKyAgICAtMHgxLjY4cDYsCisgICAgMHgxLjRwMywKKyAgICAtMHgxLjRwMywKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjk2CisgICAgMHgxLjY4cDYsCisgICAgMHgxLjRwMywKKyAgICAweDEuNHAzLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjk3CisgICAgMHgxLmI4cDYsCisgICAgMHgxLjRwMywKKyAgICAweDEuNHAzLAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTgKKyAgICAwLjAsCisgICAgLTB4MS4wcDAsCisgICAgLTB4MS4wcDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTkKKyAgICAweDEucDEsCisgICAgLTB4MS4wcDAsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDcwMAorICAgIC0weDEucDEsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDcwMQorICAgIDAuMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDIKKyAgICAtMHgxLnAxLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wcDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDMKKyAgICAwLjAsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzA0CisgICAgMC4wLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDcwNQorICAgIDB4MS5wMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDcwNgorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDcKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDgKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzA5CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDcxMAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzExCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDcxMgorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzEzCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDcxNAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzE1CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTYKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTcKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzE4CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTkKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjAKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjEKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzIyCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzIzCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDcyNAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDcyNQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjYKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzI3CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjgKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjkKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDczMAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzMxCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzMyCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzMzCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDczNAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDczNQorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzYKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzcKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzM4CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDczOQorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzQwCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDc0MQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDc0MgorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDMKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDc0NAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzQ1CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzQ2CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDcKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDgKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDc0OQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDc1MAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDc1MQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTIKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzUzCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzU0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzU1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzU3CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzU5CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzYxCisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDc2MworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDc2NAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzY1CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDc2NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzcwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzcxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDc3MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDc3MworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzc1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzYKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzc3CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzc4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzc5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzgxCisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAwZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODIKKyAgICAweDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzgzCisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAwZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODQKKyAgICAweDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAwZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDc4NworICAgIDB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDc4OAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzg5CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDc5MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAwZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzk0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMGZmZmZmZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzk1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDc5NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDBmZmZmZmZwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDc5NworICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzk5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDAKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODAxCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODAyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODAzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwLTUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgODA2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODA3CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC01MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDgwOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDgwOQorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODExCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTIKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDgxMworICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODE1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODE2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC01MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDgxOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDgyMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwLTUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODIxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODIyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODIzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDgyNAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODI1CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDgyNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjgKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgODI5CisgICAgLTB4MS5wLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgODMwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODMxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzIKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODMzCisgICAgLTB4MS5wLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODM0CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDgzNQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODM2CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODM3CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDgzOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDAKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDg0MQorICAgIC0weDEucC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODQzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODQ0CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDUKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODQ2CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDcKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODQ4CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDg0OQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODUwCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODUxCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgODUyCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDg1MworICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg1NAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTUKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTYKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODU3CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDg1OAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODU5CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODYwCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjEKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjIKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjMKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgODY0CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODY1CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg2NgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDg2NworICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjgKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODY5CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzAKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODcxCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODcyCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg3MworICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODc0CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzUKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzYKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg3NworICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg3OAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODc5CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODgwCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODgxCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDg4MgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODgzCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDg4NAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODUKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg4NgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgODg3CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgODg4CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODkKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTAKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDg5MQorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDg5MgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDg5MworICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTQKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDg5NQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODk3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODk4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgODk5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDkwMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDkwMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTA0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDkwNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTA2CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgOTA3CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDkwOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgOTEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTEzCisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDkxNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDkxNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTE3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTgKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDkxOQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTIxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTIyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMGZmZmZmZnAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgOTIzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDkyNAorICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDBmZmZmZmZwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDkyNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAwZmZmZmZmcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTI4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDkyOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTMwCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgOTMxCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDkzMworICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzQKKyAgICAweDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDBmZmZmZmZwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgOTM2CisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTM3CisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAwZmZmZmZmcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDkzOAorICAgIDB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDkzOQorICAgIDB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMGZmZmZmZnAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDAKKyAgICAweDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTQxCisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDIKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDk0MworICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTQ1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTQ2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAtNTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC01MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDk0OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDk1MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwLTUxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTUxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTUyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTUzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDk1NAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDk1NQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgOTU2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTU4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwLTUxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDk2MQorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAtNTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDk2MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTYzCisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC01MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTY0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTY1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDk2NgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDk2NworICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgOTY4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTcwCisgICAgMHgxLnAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzEKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgOTcyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDk3MworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDk3NAorICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTc1CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDk3NgorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTc3CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDk3OAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzkKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDk4MgorICAgIDB4MS5wLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDk4MworICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgOTg0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTg2CisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTg3CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODgKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODkKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTkwCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTEKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTkyCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTMKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDk5NAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDk5NQorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTk2CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTk3CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTgKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTkKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAwCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEwMDEKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEwMDIKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAzCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwMDQKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTAwNQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTAwNgorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA3CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA4CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwMDkKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwMTAKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDEwMTEKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEyCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEwMTMKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTAxNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTAxNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE3CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwMTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwMjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMSwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTAyMQorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTAyMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTAyMworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEwMjQKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEwMjUKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTAyNgorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTAyOAorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEwMjkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTAzMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwMzEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTAzMgorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwMzMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTAzNAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMSwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM2CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM3CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEwMzgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTAzOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwNDAKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTA0MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTA0MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwNDMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwNDQKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTA0NQorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTA0NgorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ3CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ4CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTA0OQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTA1MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTA1MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEwNTMKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTA1NAorICAgIDB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTA1NgorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU3CisgICAgLTB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwNTgKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU5CisgICAgLTAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEwNjAKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEwNjEKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTA2NAorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTA2NworICAgIC0weDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTA2OAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY5CisgICAgLTAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcwCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDEwNzEKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEwNzIKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDczCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc0CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwNzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTA3NworICAgIC0weDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc4CisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwNzkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgwCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwODEKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTA4MgorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDEwODMKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTA4NAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTA4NQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwODcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg4CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEwODkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEwOTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkyCisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwOTMKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwOTQKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTA5NQorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTA5NgorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEwOTcKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEwOTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwOTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTEwMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAxCisgICAgLTB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDExMDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTEwMworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExMDQKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTEwNQorICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTA2CisgICAgLTAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTEwNworICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTA4CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTEwOQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTExMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTExMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEyCisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEzCisgICAgLTB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDExMTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTExNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExMTYKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExMTcKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTExOAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTExOQorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAwLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDExMjAKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTEyMQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDExMjIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI0CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTEyNQorICAgIC0weDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTEyNgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTEyNworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI4CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTEyOQorICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTEzMAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDExMzEKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDExMzIKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDExMzMKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTM0CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExMzUKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTEzNgorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTEzNworICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTM4CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTM5CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExNDAKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExNDEKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDExNDIKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQzCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDExNDQKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ1CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExNDYKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTE0NworICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTE0OAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ5CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUwCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExNTEKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExNTIKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDExNTMKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTU0CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTU1CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDExNTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTE1NworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExNTgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTU5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDExNjAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExNjIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExNjQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTE2NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMSwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTE2NgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDExNjcKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDExNjgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExNjkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTE3MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDExNzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTE3MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExNzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTE3NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExNzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTE3NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTc3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTc4CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTE3OQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTE4MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTE4MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDExODMKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTE4NAorICAgIDB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTE4NgorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg3CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExODgKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg5CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDExOTAKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTE5MQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDExOTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk0CisgICAgMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTE5NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExOTgKKyAgICAweDEucC0xMDc0LAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk5CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEyMDAKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAxCisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEyMDIKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAzCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjA0CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjA1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyMDYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTIwNworICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjA4CisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyMDkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEwCisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEyMTEKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTIxMgorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDEyMTMKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTIxNAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjE1CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTIxNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyMTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyMTgKKyAgICAweDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjE5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEyMjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyMjEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTIyMgorICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEyMjMKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTIyNAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDEyMjUKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTIyNgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEyMjcKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEyMjgKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyMjkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTIzMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMxCisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEyMzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTIzMworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyMzQKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTIzNQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjM2CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTIzNworICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjM4CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEyMzkKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI0MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI0MgorICAgIDB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEyNDMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTI0NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI0NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQ2CisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTI0NworICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQ4CisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTI0OQorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUwCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDAuMCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEyNTEKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI1MworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI1NAorICAgIDB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEyNTUKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEyNTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyNTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI1OAorICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEyNTkKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEyNjAKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYxCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYyCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0wLjAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYzCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEyNjQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI2NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyNjYKKyAgICAweDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTI2NworICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEyNjgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjY5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcwCisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEyNzEKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcyCisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDEyNzMKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEyNzQKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEyNzUKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI3NgorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI3NworICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTI3OAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEyNzkKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyODAKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgxCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgyCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTI4MworICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDEyODQKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTI4NQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTI4NgorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyODcKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI4OAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjg5CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkwCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyOTEKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyOTIKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTI5MworICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTI5NAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTI5NQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEyOTYKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTI5NworICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEyOTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjk5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAwCisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEzMDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDBmZmZmZmZwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEzMDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTMwMworICAgIDB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMGZmZmZmZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTMwNAorICAgIDB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzA1CisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAwZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzA2CisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzA3CisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTMwOAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTMwOQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEwCisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzMTEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMGZmZmZmZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTMxMworICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzE0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMGZmZmZmZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTMxNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzE2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMGZmZmZmZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTMxNworICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzE4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDEzMTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEzMjAKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEzMjEKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTMyMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTMyNAorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzI1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzI2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTMyNworICAgIC0weDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTMyOAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzI5CisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMwCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDEzMzEKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEzMzIKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMzCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzM0CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzM1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzMzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTMzNworICAgIC0weDEucC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzM4CisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzMzkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQwCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEzNDEKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTM0MgorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDEzNDMKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTM0NAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTM0NQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQ2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNDcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQ4CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEzNDkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEzNTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUyCisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEzNTMKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEzNTQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTM1NQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTM1NgorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEzNTcKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEzNTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTM2MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYxCisgICAgLTB4MS5wLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEzNjIKKyAgICAweDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTM2MworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNjQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTM2NQorICAgIC0weDEucC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzY2CisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTM2NworICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzY4CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzY5CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEzNzAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTM3MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNzIKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTM3MworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTM3NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNzUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNzYKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTM3NworICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTM3OAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzc5CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgwCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTM4MQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTM4MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTM4MworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzg0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEzODUKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTM4NgorICAgIDB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzg3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTM4OAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzg5CisgICAgLTB4MS5wLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEzOTAKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkxCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEzOTIKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkzCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzk0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzk1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzOTYKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEzOTcKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTM5OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzk5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQwMAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTQwMQorICAgIC0weDEucC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAyCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAzCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQwNAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDA1CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTQwNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MDcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MDgKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDA5CisgICAgLTB4MS5wLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDExCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MTIKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEzCisgICAgLTB4MS5wLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDE0CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQxNQorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQxNgorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTQxNworICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MTgKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQxOQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIwCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIxCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MjIKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MjMKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTQyNAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTQyNQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQyNgorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE0MjcKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTQyOAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MjkKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQzMAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMxCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMyCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MzMKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MzQKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTQzNQorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTQzNgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQzNworICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE0MzgKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE0MzkKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDBmZmZmZmZwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE0NDMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDBmZmZmZmZwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0NDUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDBmZmZmZmZwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE0NDcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTQ0OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQ5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUwCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1MQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1MworICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDU0CisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1NQorICAgIDB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMGZmZmZmZnAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDU2CisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1NworICAgIDB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMGZmZmZmZnAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDU4CisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTQ1OQorICAgIDB4MS5mZmZmZmZmZmZmZmZkMDAwMDAwMDAwMDAwMGZmZmZmZnAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYwCisgICAgMHgxLmZmZmZmZmZmZmZmZmQwMDAwMDAwMDAwMDAxcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE0NjEKKyAgICAweDEuZmZmZmZmZmZmZmZmZDAwMDAwMDAwMDAwMDFwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE0NjIKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYzCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDY0CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDY1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0NjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2NworICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDY4CisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0NjkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcwCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE0NzEKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3MgorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE0NzMKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3NAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDc1CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0NzcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0NzgKKyAgICAweDEucC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDc5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE0ODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0ODEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4MgorICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE0ODMKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4NAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE0ODUKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4NgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE0ODcKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE0ODgKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0ODkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkxCisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE0OTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5MworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0OTQKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5NQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDk2CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5NworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDk4CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE0OTkKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTUwMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTUwMgorICAgIDB4MS5wLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1MDMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTUwNAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTUwNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTA2CisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTUwNworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTA4CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTUwOQorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEwCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTUxMQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTUxMgorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTUxMworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTE0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1MTUKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTUxNgorICAgIDB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTE3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTUxOAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTE5CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE1MjAKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIxCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE1MjIKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTUyMworICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE1MjQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTI1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTI2CisgICAgMHgxLnAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTUyNworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTI4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTI5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE1MzAKKyAgICAweDEucC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMxCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE1MzIKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMzCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE1MzQKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTUzNQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE1MzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTM3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTM4CisgICAgMHgxLnAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTUzOQorICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTU0MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTU0MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQyCisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTU0MworICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTU0NAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE1NDUKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE1NDYKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE1NDcKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTU0OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQ5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTU1MAorICAgIDB4MS5wLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUxCisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTU1MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE1NTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE1NTQKKyAgICAweDEucC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTU1NQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE1NTYKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTU1NworICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTU1OAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTU1OQorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYwCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYxCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYyCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTU2MworICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTU2NAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE1NjUKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE1NjYKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTY3CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTU2OAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTY5CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcwCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTU3MQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcyCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1NzMKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1NzQKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTU3NQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTU3NgorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTc3CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTc4CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTc5CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTU4MAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgxCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTU4MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE1ODMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE1ODQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC01MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1ODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTg3CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC01MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE1ODgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTg5CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC01MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE1OTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTU5MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTU5MgorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTU5MworICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTk0CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE1OTUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTk2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAtNTEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTk3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTU5OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwLTUxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTU5OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2MDAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC01MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE2MDEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTYwMworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjA0CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjA1CisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE2MDYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTYwNworICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2MDgKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTYwOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTYxMAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2MTEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2MTIKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTYxMworICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTYxNAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjE1CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjE2CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTYxNworICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTYxOAorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTYxOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE2MjEKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTYyMgorICAgIDB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTYyNAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjI1CisgICAgLTB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE2MjYKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjI3CisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE2MjgKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE2MjkKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTYzMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTYzMgorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjM0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTYzNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTYzNgorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjM3CisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjM4CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE2MzkKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE2NDAKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQxCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQyCisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2NDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTY0NQorICAgIC0weDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQ2CisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2NDcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQ4CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE2NDkKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTY1MAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE2NTEKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTY1MgorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTY1MworICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjU0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2NTUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjU2CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE2NTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE2NTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjU5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYwCisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE2NjEKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE2NjIKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTY2MworICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTY2NAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE2NjUKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE2NjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2NjcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTY2OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjY5CisgICAgLTB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE2NzAKKyAgICAweDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTY3MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2NzIKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTY3MworICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjc0CisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTY3NQorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjc2CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTY3NworICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTY3OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTY3OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgwCisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgxCisgICAgLTB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE2ODIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTY4MworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2ODQKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE2ODUKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTY4NgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTY4NworICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAwLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE2ODgKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTY4OQorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE2OTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkyCisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTY5MworICAgIC0weDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTY5NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTY5NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjk2CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTY5NworICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTY5OAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE2OTkKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE3MDAKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE3MDEKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAyCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3MDMKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTcwNAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTcwNQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzA2CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzA3CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3MDgKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3MDkKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE3MTAKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzExCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE3MTIKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEzCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3MTQKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTcxNQorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTcxNgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzE3CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzE4CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3MTkKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3MjAKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE3MjEKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIyCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIzCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE3MjQKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTcyNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3MjYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC01MSwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE3MjcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzI4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAtNTEsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzI5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTczMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwLTUxLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTczMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3MzIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE3MzQKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzM1CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzM2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzM3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3MzgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE3MzkKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwLTUxLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQxCisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcC01MSwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTc0MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTc0MworICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAtNTEsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3NDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQ1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE3NDYKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQ3CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQ4CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQ5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3NTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTc1MQorICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUyCisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3NTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzU0CisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3NTUKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTc1NgorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE3NTcKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTc1OAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzU5CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTc2MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3NjEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3NjIKKyAgICAweDEucC0xMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE3NjQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3NjUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTc2NgorICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3NjcKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTc2OAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE3NjkKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTc3MAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE3NzEKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE3NzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3NzMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTc3NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzc1CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE3NzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTc3NworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3NzgKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTc3OQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgwCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTc4MQorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgyCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE3ODMKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzg0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTc4NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTc4NgorICAgIDB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE3ODcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTc4OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTc4OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkwCisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTc5MQorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkyCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTc5MworICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzk0CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTc5NQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTc5NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTc5NworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzk4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE3OTkKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTgwMAorICAgIDB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTgwMgorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAzCisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE4MDQKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODA1CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE4MDYKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTgwNworICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE4MDgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODA5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEwCisgICAgMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTgxMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE4MTQKKyAgICAweDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODE1CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE4MTYKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODE3CisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE4MTgKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTgxOQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE4MjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIyCisgICAgMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTgyMworICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTgyNAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTgyNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODI2CisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTgyNworICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTgyOAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE4MjkKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAwLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE4MzAKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTAuMCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE4MzEKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTgzMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTgzNAorICAgIDB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODM1CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTgzNgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE4MzcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE4MzgKKyAgICAweDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTgzOQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE4NDAKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTg0MQorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTg0MgorICAgIEhVR0VfVkFMLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTg0MworICAgIC1IVUdFX1ZBTCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQ0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE4NDUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQ2CisgICAgMHgxLnAtMTAyMiwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE4NDcKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQ4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg0OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg1MAorICAgIDB4MS5wLTEwNzQsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUxCisgICAgLTB4MS5wLTEwNzQsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTg1MgorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUzCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODU0CisgICAgSFVHRV9WQUwsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTg1NQorICAgIC1IVUdFX1ZBTCwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTg1NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg1NworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODU4CisgICAgMHgxLnAtMTAyMiwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODU5CisgICAgLTB4MS5wLTEwMjIsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE4NjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg2MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE4NjIKKyAgICAweDEucC0xMDc0LAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE4NjMKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTg2NAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTg2NQorICAgIC0wLjAsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODY2CisgICAgSFVHRV9WQUwsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTg2NworICAgIC1IVUdFX1ZBTCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTg2OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg2OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcwCisgICAgMHgxLnAtMTAyMiwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcxCisgICAgLTB4MS5wLTEwMjIsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE4NzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg3MworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE4NzQKKyAgICAweDEucC0xMDc0LAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE4NzUKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTg3NgorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTg3NworICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE4NzgKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTg3OQorICAgIC1IVUdFX1ZBTCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE4ODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgyCisgICAgMHgxLnAtMTAyMiwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTg4MworICAgIC0weDEucC0xMDIyLAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTg4NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg4NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODg2CisgICAgMHgxLnAtMTA3NCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTg4NworICAgIC0weDEucC0xMDc0LAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTg4OAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE4ODkKKyAgICAtMC4wLAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE4OTAKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkxCisgICAgLUhVR0VfVkFMLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE4OTQKKyAgICAweDEucC0xMDIyLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE4OTUKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTg5NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODk3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg5OAorICAgIDB4MS5wLTEwNzQsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTg5OQorICAgIC0weDEucC0xMDc0LAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAwCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAxCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTkwMgorICAgIEhVR0VfVkFMLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAzCisgICAgLUhVR0VfVkFMLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTkwNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5MDUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5MDYKKyAgICAweDEucC0xMDIyLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTA3CisgICAgLTB4MS5wLTEwMjIsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTA4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTA5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5MTAKKyAgICAweDEucC0xMDc0LAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTExCisgICAgLTB4MS5wLTEwNzQsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEyCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTkxMworICAgIC0wLjAsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTkxNAorICAgIEhVR0VfVkFMLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5MTUKKyAgICAtSFVHRV9WQUwsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5MTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5MTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTkxOAorICAgIDB4MS5wLTEwMjIsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTkxOQorICAgIC0weDEucC0xMDIyLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5MjEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIyCisgICAgMHgxLnAtMTA3NCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIzCisgICAgLTB4MS5wLTEwNzQsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE5MjQKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE5MjUKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTI2CisgICAgSFVHRV9WQUwsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5MjcKKyAgICAtSFVHRV9WQUwsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTI4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTkyOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTkzMAorICAgIDB4MS5wLTEwMjIsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE5MzEKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE5MzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5MzMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTkzNAorICAgIDB4MS5wLTEwNzQsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE5MzUKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE5MzYKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTM3CisgICAgLTAuMCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTM4CisgICAgSFVHRV9WQUwsCisgICAgMC4wLAorICAgIDAuMCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5MzkKKyAgICAtSFVHRV9WQUwsCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTk0MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTk0MgorICAgIDB4MS5wLTEwMjIsCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE5NDMKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE5NDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5NDUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTk0NgorICAgIDB4MS5wLTEwNzQsCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE5NDcKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE5NDgKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQ5CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE5NTAKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAsCisgICAgLTAuMCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5NTEKKyAgICAtSFVHRV9WQUwsCisgICAgMC4wLAorICAgIC0wLjAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTk1MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTk1NAorICAgIDB4MS5wLTEwMjIsCisgICAgMC4wLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTU1CisgICAgLTB4MS5wLTEwMjIsCisgICAgMC4wLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTk1NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAwLjAsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5NTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5NTgKKyAgICAweDEucC0xMDc0LAorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTk1OQorICAgIC0weDEucC0xMDc0LAorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE5NjAKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0wLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTk2MQorICAgIC0wLjAsCisgICAgMC4wLAorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE5NjIKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYzCisgICAgLUhVR0VfVkFMLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTY0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTY1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5NjYKKyAgICAweDEucC0xMDIyLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE5NjcKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTk2OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTY5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTk3MAorICAgIDB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTk3MQorICAgIC0weDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcyCisgICAgMC4wLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTczCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE5NzQKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTk3NQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5NzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTc3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTc4CisgICAgMHgxLnAtMTAyMiwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTk3OQorICAgIC0weDEucC0xMDIyLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTk4MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTk4MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgyCisgICAgMHgxLnAtMTA3NCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTk4MworICAgIC0weDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTk4NAorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE5ODUKKyAgICAwLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTk4NgorICAgIEhVR0VfVkFMLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTg3CisgICAgLUhVR0VfVkFMLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTk4OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5ODkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5OTAKKyAgICAweDEucC0xMDIyLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkxCisgICAgLTB4MS5wLTEwMjIsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5OTQKKyAgICAweDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTk1CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTk2CisgICAgMC4wLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTk5NworICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTk5OAorICAgIEhVR0VfVkFMLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTk5OQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwMDEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAyCisgICAgMHgxLnAtMTAyMiwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIwMDMKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDA0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjAwNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjAwNgorICAgIDB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDA3CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjAwOAorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDA5CisgICAgMC4wLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEwCisgICAgSFVHRV9WQUwsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwMTEKKyAgICAtSFVHRV9WQUwsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjAxMworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjAxNAorICAgIDB4MS5wLTEwMjIsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIwMTUKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIwMTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwMTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjAxOAorICAgIDB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIwMTkKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIwMjAKKyAgICAwLjAsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIxCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIyCisgICAgSFVHRV9WQUwsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIzCisgICAgLUhVR0VfVkFMLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwMjQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjAyNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwMjYKKyAgICAweDEucC0xMDIyLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjAyNworICAgIC0weDEucC0xMDIyLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIwMjgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDI5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMwCisgICAgMHgxLnAtMTA3NCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIwMzEKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMyCisgICAgMC4wLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIwMzMKKyAgICAwLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIwMzQKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjAzNQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwMzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDM3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDM4CisgICAgMHgxLnAtMTAyMiwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjAzOQorICAgIC0weDEucC0xMDIyLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjA0MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjA0MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQyCisgICAgMHgxLnAtMTA3NCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjA0MworICAgIC0weDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjA0NAorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIwNDUKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIwNDYKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwNDcKKyAgICAtSFVHRV9WQUwsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjA0OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQ5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjA1MAorICAgIDB4MS5wLTEwMjIsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUxCisgICAgLTB4MS5wLTEwMjIsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjA1MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwNTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwNTQKKyAgICAweDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjA1NQorICAgIC0weDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIwNTYKKyAgICAwLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjA1NworICAgIDAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjA1OAorICAgIEhVR0VfVkFMLAorICAgIC0wLjAsCisgICAgMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjA1OQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMC4wLAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTAuMCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwNjEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTAuMCwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYyCisgICAgMHgxLnAtMTAyMiwKKyAgICAtMC4wLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIwNjMKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMC4wLAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDY0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0wLjAsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjA2NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTAuMCwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjA2NgorICAgIDB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDY3CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjA2OAorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDY5CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjA3MAorICAgIEhVR0VfVkFMLAorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwNzEKKyAgICAtSFVHRV9WQUwsCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwNzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwNzMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjA3NAorICAgIDB4MS5wLTEwMjIsCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjA3NQorICAgIC0weDEucC0xMDIyLAorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDc2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwNzcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDc4CisgICAgMHgxLnAtMTA3NCwKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDc5CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIwODAKKyAgICAwLjAsCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIwODEKKyAgICAwLjAsCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgyCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgzCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwODQKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwODUKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIwODYKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDg3CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDg4CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjA4OQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjA5MAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIwOTEKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkyCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIwOTMKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwOTQKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDk1CisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwOTYKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjA5NworICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjA5OAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDk5CisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAwCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxMDEKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxMDIKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxMDMKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTA0CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIxMDUKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTA2CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxMDcKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjEwOAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjEwOQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEwCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTExCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxMTIKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxMTMKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxMTQKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTE1CisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIxMTYKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxMTcKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTE4CisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjExOQorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIwCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjEyMQorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIyCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjEyMworICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTI0CisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxMjUKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxMjYKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIxMjcKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjEyOAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjEyOQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjEzMAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIxMzEKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxMzIKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMzCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTM0CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjEzNQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxMzYKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjEzNworICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjEzOAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxMzkKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE0MAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQxCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQyCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxNDMKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxNDQKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE0NQorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE0NgorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjE0NworICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxNDgKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIxNDkKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE1MAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE1MQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjE1MgorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIxNTMKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxNTQKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTU1CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTU2CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE1NworICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxNTgKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjE1OQorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjE2MAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxNjEKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE2MgorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYzCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTY0CisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxNjUKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxNjYKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE2NworICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE2OAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjE2OQorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxNzAKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIxNzEKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE3MgorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE3MworICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjE3NAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIxNzUKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxNzYKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTc3CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTc4CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE3OQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxODAKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjE4MQorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjE4MgorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxODMKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE4NAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTg1CisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTg2CisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxODcKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxODgKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE4OQorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE5MAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjE5MQorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxOTIKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIxOTMKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTk0CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxOTUKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjE5NgorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjE5NworICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTk4CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTk5CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyMDAKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyMDEKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIyMDIKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAzCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIyMDQKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjA1CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyMDYKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjIwNworICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjIwOAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjA5CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEwCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyMTEKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyMTIKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIyMTMKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjE0CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIyMTUKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyMTYKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjE3CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjIxOAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjE5CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjIyMAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIxCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjIyMgorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIzCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIyMjQKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIyMjUKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjI2CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjI3CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjIyOAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIyMjkKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjIzMAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyMzEKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjIzMgorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyMzMKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjIzNAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjM1CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjM2CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjM3CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjIzOAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjM5CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIyNDAKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIyNDEKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI0MgorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI0MworICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQ0CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQ1CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQ2CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjI0NworICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQ4CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI0OQorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUwCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIyNTEKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIyNTIKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI1MworICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI1NAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjU1CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjU2CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjU3CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjI1OAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjI1OQorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNjAKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI2MQorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYyCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYzCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNjQKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNjUKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjI2NgorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjI2NworICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjI2OAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIyNjkKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjI3MAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNzEKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI3MgorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjczCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjc0CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNzUKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNzYKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjI3NworICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjI3OAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjI3OQorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIyODAKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIyODEKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgyCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyODMKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjI4NAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjI4NQorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjg2CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjg3CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyODgKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyODkKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIyOTAKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkxCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIyOTIKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkzCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyOTQKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjI5NQorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjI5NgorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjk3CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjk4CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyOTkKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIzMDAKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIzMDEKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9mbWFmX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9mbWFmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZjUwOWU2Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2ZtYWZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTM4MzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzNfdDxmbG9hdCwgZmxvYXQsIGZsb2F0LCBmbG9hdD4gZ19mbWFmX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS44MDAwMDJmZmZmZmZmZmZmZmQ4MHA3MywKKyAgICAtMHgxLjAwMDAwMnA3MiwKKyAgICAweDEuODBwMSwKKyAgICAweDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAtMHgxLmU2NjY2NnAwLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmNjY2NjY3AtMSwKKyAgICAtMHgxLmU2NjY2NnAwCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS4xNWYxNTNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5jY2NjY2NwLTEsCisgICAgMHgxLjE1ZjE1NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuMDAwMDA1ZmZmZmZmZmZmZmZmZmZmZmZmZmZmMGNjY2NwLTQxLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmU2NjY2NnAtMSwKKyAgICAweDEuMDAwMDA2cC00MQorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMHgxLmU2NjY2NWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS4wNzUwNzBwLTMsCisgICAgLTB4MS5lNjY2NjZwMAorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuMDAwMDA2MDAwMDAwMDAwMDAwMDAwMDAwMDAwMTQ0NDRwLTQxLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNDQ0NDI0cC00LAorICAgIDB4MS4wMDAwMDZwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS5jOTk5OTkwNjY2NjY4MHAwLAorICAgIDB4MS4wMDAwMDJwLTMsCisgICAgLTB4MS5jY2NjY2NwLTEsCisgICAgMHgxLmU2NjY2NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS44ODAxNTZmZmZmZmZmZmZlZmJiY3AxNCwKKyAgICAweDEuMDAwMGUwcDcsCisgICAgMHgxLjg4cDcsCisgICAgLTB4MS4wNDQ0cC01MAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEuMmIzMzM1cC00MywKKyAgICAweDEuMDhwLTQxLAorICAgIC0weDEuOGRmNmIwcC0xLAorICAgIDB4MS4xOHAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLjlhZjcwNDAwMDAwMXAtMSwKKyAgICAweDEuNDM5NjljcC0zLAorICAgIDB4MS42MmU0MmVwLTEsCisgICAgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLjdlZWQ5OTAwMDAwMDgwcC0xLAorICAgIDB4MS40Mzk2OWNwLTQsCisgICAgMHgxLjYyZTQyZXAtMSwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAtMHgxLjUyMjljYWZmZmZmZmZmZmM2ZGU0OThwNTksCisgICAgMHgxLjg4cDYwLAorICAgIC0weDEuYjlhZWMwcC0yLAorICAgIDB4MS5jOTBkYjRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS42NzhjOGRmZmZmZmZiMHAtMSwKKyAgICAweDEuYWUwZWY0cC03LAorICAgIDB4MS42MmU0MmVwLTEsCisgICAgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLmZmZmZlZTAwMDAxMHAtMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS5mZmZmZjAwMDAwMTBwLTEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5mZmZmZjQwMDAwMTBwLTEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjAwMDAwNmZmZmZmOHAwLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuMDAwMDA3ZmZmZmY4cDAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjAwMDAwOWZmZmZmOHAwLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5mZmZmZWUwMDAwMjBwLTIsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuZmZmZmYwMDAwMDIwcC0yLAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLmZmZmZmNDAwMDAyMHAtMiwKKyAgICAweDEuZmZmZmZjcDEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS5wLTEsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMC4wLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS4wMDAwMDZmZmZmZjBwLTEsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS4wMDAwMDdmZmZmZjBwLTEsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS4wMDAwMDlmZmZmZjBwLTEsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS5mZmZmZWUwMDAwMTBwLTIsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEuZmZmZmYwMDAwMDEwcC0yLAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLmZmZmZmNDAwMDAxMHAtMiwKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS5wLTEsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMC4wLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS4wMDAwMDZmZmZmZjhwLTEsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS4wMDAwMDdmZmZmZjhwLTEsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS4wMDAwMDlmZmZmZjhwLTEsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS5mZmZmZWVwLTIsCisgICAgMHgxLnAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuZmZmZmYwcC0yLAorICAgIDB4MS5wMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLmZmZmZmNHAtMiwKKyAgICAweDEucDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLnAxMjcsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS5wLTEsCisgICAgMHgxLnAxMjcsCisgICAgMC4wLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLnAxMjcsCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS4wMDAwMDdwLTEsCisgICAgMHgxLnAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS4wMDAwMDhwLTEsCisgICAgMHgxLnAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS4wMDAwMGFwLTEsCisgICAgMHgxLnAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS5mZmZmZjYwMDAwMTBwLTEsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuZmZmZmY4MDAwMDEwcC0xLAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEuZmZmZmZjMDAwMDEwcC0xLAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMC4wLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDAuMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIDB4MS4wMDAwMDJmZmZmZjhwMCwKKyAgICAweDEuZmZmZmZjcDEyNiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLjAwMDAwM2ZmZmZmOHAwLAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS4wMDAwMDVmZmZmZjhwMCwKKyAgICAweDEuZmZmZmZjcDEyNiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuZmZmZmY2MDAwMDA4cC0xLAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLmZmZmZmODAwMDAwOHAtMSwKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLmZmZmZmYzAwMDAwOHAtMSwKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDAuMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuMDAwMDAyZmZmZmZjcDAsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS4wMDAwMDNmZmZmZmNwMCwKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEuMDAwMDA1ZmZmZmZjcDAsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgMHgxLmZmZmZmNnAtMSwKKyAgICAweDEucDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS5mZmZmZjhwLTEsCisgICAgMHgxLnAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS5mZmZmZmNwLTEsCisgICAgMHgxLnAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAxMjcsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIDB4MS5wMCwKKyAgICAweDEucDEyNywKKyAgICAwLjAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAxMjcsCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgMHgxLjAwMDAwM3AwLAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuMDAwMDA0cDAsCisgICAgMHgxLnAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgMHgxLjAwMDAwNnAwLAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS5mZmZmZmMwMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLmZmZmZmYzAwMDAwMnAtMiwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEuZmZmZmZjMDAwMDAycC0yLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5wMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS4wMDAwMDBmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEuMDAwMDAwZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLjAwMDAwMGZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5wLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEucC0xLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEucC0xLAorICAgIDB4MS5wLTEsCisgICAgMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLnAtMSwKKyAgICAweDEucC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEucC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEucC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS4wMDAwMDBmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLjAwMDAwMGZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEuMDAwMDAwZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuMDAwMDA0MDAwMDAzZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS4wMDAwMDQwMDAwMDRwLTEsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLjAwMDAwNDAwMDAwNHAtMSwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuMDAwMDAxZmZmZmZkcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEuZmZmZmZlcC0yNAorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS4wMDAwMDIwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5wLTIzCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjAwMDAwMjAwMDAwOXAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuMDAwMDAyZmZmZmZjcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAtMSwKKyAgICAweDEuZmZmZmZlcC0yNAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS4wMDAwMDNwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucC0xLAorICAgIDB4MS5wLTIzCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjAwMDAwMzAwMDAwOHAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEuMDAwMDA0ZmZmZmZhcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuZmZmZmZlcC0yNAorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS4wMDAwMDRmZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5wLTIzCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLjAwMDAwNTAwMDAwNnAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuMDAwMDAyZmZmZmZjcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLjAwMDAwM3AtMSwKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEucC0yMworICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS4wMDAwMDMwMDAwMDhwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuMDAwMDAzZmZmZmZjcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmVwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjAwMDAwNHAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLnAtMSwKKyAgICAweDEucC0yMworICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS4wMDAwMDQwMDAwMDhwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuMDAwMDA1ZmZmZmZjcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLjAwMDAwNnAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEucC0yMworICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS4wMDAwMDYwMDAwMDhwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEuMDAwMDA0ZmZmZmZhcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjAwMDAwNGZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEucC0yMworICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS4wMDAwMDUwMDAwMDZwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEuMDAwMDA1ZmZmZmZjcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmVwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjAwMDAwNnAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAtMSwKKyAgICAweDEucC0yMworICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS4wMDAwMDYwMDAwMDhwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEuMDAwMDA4cC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLjAwMDAwODAwMDAwNHAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEucC0yMworICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS4wMDAwMDgwMDAwMGNwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuMDAwMDAxZmZmZmZkcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEuZmZmZmZlcC0yNAorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS4wMDAwMDIwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5wLTIzCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLjAwMDAwMjAwMDAwOXAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEuMDAwMDAyZmZmZmZjcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAtMSwKKyAgICAweDEuZmZmZmZlcC0yNAorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS4wMDAwMDNwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucC0xLAorICAgIDB4MS5wLTIzCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMHgxLjAwMDAwMzAwMDAwOHAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuMDAwMDA0ZmZmZmZhcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuZmZmZmZlcC0yNAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS4wMDAwMDRmZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5wLTIzCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLjAwMDAwNTAwMDAwNnAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuMDAwMDAyZmZmZmZjcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLjAwMDAwM3AtMSwKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEucC0yMworICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIDB4MS4wMDAwMDMwMDAwMDhwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuMDAwMDAzZmZmZmZjcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmVwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgMHgxLjAwMDAwNHAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLnAtMSwKKyAgICAweDEucC0yMworICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS4wMDAwMDQwMDAwMDhwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAweDEuMDAwMDA1ZmZmZmZjcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLjAwMDAwNnAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEucC0yMworICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS4wMDAwMDYwMDAwMDhwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuMDAwMDA0ZmZmZmZhcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgMHgxLjAwMDAwNGZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEucC0yMworICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS4wMDAwMDUwMDAwMDZwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAweDEuMDAwMDA1ZmZmZmZjcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmVwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLjAwMDAwNnAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAtMSwKKyAgICAweDEucC0yMworICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIDB4MS4wMDAwMDYwMDAwMDhwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuMDAwMDA4cC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTI0CisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgMHgxLjAwMDAwODAwMDAwNHAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEucC0yMworICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS4wMDAwMDgwMDAwMGNwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAweDEuMDAwMDBkZmZmZmYxcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEuZmZmZmZlcC0yMgorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS4wMDAwMGUwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5wLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMHgxLjAwMDAwZTAwMDAyMXAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEuMDAwMDBlZmZmZmYwcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAtMSwKKyAgICAweDEuZmZmZmZlcC0yMgorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIDB4MS4wMDAwMGZwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucC0xLAorICAgIDB4MS5wLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLjAwMDAwZjAwMDAyMHAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAweDEuMDAwMDEwZmZmZmVlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuZmZmZmZlcC0yMgorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS4wMDAwMTBmZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5wLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgMHgxLjAwMDAxMTAwMDAxZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuMDAwMDBlZmZmZmYwcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTIyCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgMHgxLjAwMDAwZnAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEucC0yMQorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS4wMDAwMGYwMDAwMjBwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAweDEuMDAwMDBmZmZmZmYwcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmVwLTIyCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLjAwMDAxMHAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLnAtMSwKKyAgICAweDEucC0yMQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIDB4MS4wMDAwMTAwMDAwMjBwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAweDEuMDAwMDExZmZmZmYwcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTIyCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMHgxLjAwMDAxMnAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEucC0yMQorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIDB4MS4wMDAwMTIwMDAwMjBwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuMDAwMDEwZmZmZmVlcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTIyCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLjAwMDAxMGZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEucC0yMQorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS4wMDAwMTEwMDAwMWVwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuMDAwMDExZmZmZmYwcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmVwLTIyCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLjAwMDAxMnAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAtMSwKKyAgICAweDEucC0yMQorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS4wMDAwMTIwMDAwMjBwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEuMDAwMDEzZmZmZmY0cC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTIyCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLjAwMDAxNDAwMDAwNHAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEucC0yMQorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIDB4MS4wMDAwMTQwMDAwMjRwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEuZmZmZmZlcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIDB4MS5mZmZmZmUwMDAwMDJwLTIsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5wLTI1CisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmZmZmZmZTAwMDAwNnAtMiwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAweDEuZmZmZmZmZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAtMSwKKyAgICAweDEuZmZmZmZlcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS5wLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucC0xLAorICAgIDB4MS5wLTI1CisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLjAwMDAwMDAwMDAwMnAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuMDAwMDAxZmZmZmZkcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuZmZmZmZlcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIDB4MS4wMDAwMDFmZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5wLTI1CisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAweDEuZmZmZmZmZmZmZmZlcC0yLAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgMHgxLnAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEucC0yNQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIDB4MS4wMDAwMDAwMDAwMDJwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuMDAwMDAwZmZmZmZmcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmVwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgMHgxLjAwMDAwMXAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLnAtMSwKKyAgICAweDEucC0yNQorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS4wMDAwMDEwMDAwMDJwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAweDEuMDAwMDAyZmZmZmZmcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLjAwMDAwM3AtMSwKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEucC0yNQorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIDB4MS4wMDAwMDMwMDAwMDJwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuMDAwMDAxZmZmZmZkcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgMHgxLjAwMDAwMWZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEucC0yNQorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEuMDAwMDAyZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmVwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLjAwMDAwM3AtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAtMSwKKyAgICAweDEucC0yNQorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDB4MS4wMDAwMDMwMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAweDEuMDAwMDA1MDAwMDAzcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLjAwMDAwNTAwMDAwNHAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEucC0yNQorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS4wMDAwMDUwMDAwMDZwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEuZmZmZmZjMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDB4MS5mZmZmZmMwMDAwMDJwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLmZmZmZmYzAwMDAwMnAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgLTB4MS5mZmZmZmVwMTAzLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEuZmZmZmZlcDEwNCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLmZmZmZmYTAwMDAwM2ZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAweDEuZmZmZmZlcDYzLAorICAgIDB4MS5mZmZmZmNwNjMsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5mZmZmZmEwMDAwMDRwMTI3LAorICAgIDB4MS5mZmZmZmVwNjMsCisgICAgMHgxLmZmZmZmY3A2MywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAweDEuZmZmZmZhMDAwMDA0cDEyNywKKyAgICAweDEuZmZmZmZlcDYzLAorICAgIDB4MS5mZmZmZmNwNjMsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLmZmZmZmYzAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAweDEuZmZmZmZlcDYzLAorICAgIDB4MS5mZmZmZmVwNjMsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS5mZmZmZmMwMDAwMDJwMTI3LAorICAgIDB4MS5mZmZmZmVwNjMsCisgICAgMHgxLmZmZmZmZXA2MywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuZmZmZmZjMDAwMDAycDEyNywKKyAgICAweDEuZmZmZmZlcDYzLAorICAgIDB4MS5mZmZmZmVwNjMsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAweDEuZmZmZmZlcDYzLAorICAgIDB4MS5wNjQsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwNjMsCisgICAgMHgxLnA2NCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDYzLAorICAgIDB4MS5wNjQsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgLTB4MS43ZmZmZmVwMTA1LAorICAgIDB4MS5mZmZmZmNwNjMsCisgICAgMHgxLmZmZmZmY3A2MywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAtMHgxLmZmZmZmZXAxMDQsCisgICAgMHgxLmZmZmZmY3A2MywKKyAgICAweDEuZmZmZmZlcDYzLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIC0weDEucDEwNCwKKyAgICAweDEuZmZmZmZjcDYzLAorICAgIDB4MS5wNjQsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgLTB4MS5mZmZmZmVwMTA0LAorICAgIDB4MS5mZmZmZmVwNjMsCisgICAgMHgxLmZmZmZmY3A2MywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAtMHgxLmZmZmZmZXAxMDMsCisgICAgMHgxLmZmZmZmZXA2MywKKyAgICAweDEuZmZmZmZlcDYzLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDYzLAorICAgIDB4MS5wNjQsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgLTB4MS5wMTA0LAorICAgIDB4MS5wNjQsCisgICAgMHgxLmZmZmZmY3A2MywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAwLjAsCisgICAgMHgxLnA2NCwKKyAgICAweDEuZmZmZmZlcDYzLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS5wMTA0LAorICAgIDB4MS5wNjQsCisgICAgMHgxLnA2NCwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAtMHgxLmZmZmZmOHAxMDMsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgLTB4MS4wMDAwMDJwMSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDB4MS5wMTA0LAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIC0weDEucDEsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAweDEuZmZmZmZlcDEwNCwKKyAgICAweDEuZmZmZmZjcDEyNiwKKyAgICAtMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgLTB4MS5mZmZmZmVwMTA0LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEuMDAwMDAycDEsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgLTB4MS5wMSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS5mZmZmZmVwMTAzLAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAtMHgxLjgwcDEwNSwKKyAgICAweDEucDEyNywKKyAgICAtMHgxLjAwMDAwMnAxLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgLTB4MS5wMTA0LAorICAgIDB4MS5wMTI3LAorICAgIC0weDEucDEsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAwLjAsCisgICAgMHgxLnAxMjcsCisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgLTB4MS4wMDAwMDJwMSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcDEyNiwKKyAgICAtMHgxLjAwMDAwMnAxLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgLTB4MS4wMDAwMDJwMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAtMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgLTB4MS5mZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIC0weDEucDEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgLTB4MS5wMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAtMHgxLmZmZmZmYTAwMDAwNHAxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgLTB4MS5mZmZmZmEwMDAwMDRwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIC0weDEuZmZmZmZlcDAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgLTB4MS5mZmZmZmEwMDAwMDNmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEuMDAwMDAycDEsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgLTB4MS4wMDAwMDJwMSwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEuMDAwMDAycDEsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEucDEsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAtMHgxLnAxLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEucDEsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgLTB4MS5mZmZmZmMwMDAwMDJwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEuZmZmZmZlcDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIC0weDEuZmZmZmZjMDAwMDAycDEyNywKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAtMHgxLmZmZmZmZXAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIC0weDEuZmZmZmZjMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIC0weDEuZmZmZmZlcDAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucDEyNywKKyAgICAtMHgxLjAwMDAwMnAxLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wMTI3LAorICAgIC0weDEuMDAwMDAycDEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucDEyNywKKyAgICAtMHgxLjAwMDAwMnAxLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAxMjcsCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucDEyNywKKyAgICAtMHgxLnAxLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAxMjcsCisgICAgLTB4MS5wMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAxMjcsCisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wMTI3LAorICAgIC0weDEuZmZmZmZlcDAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgMHgxLnAxMjcsCisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAweDEuN2ZmZmZjODAwMDAxcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNiwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmNwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLjdmZmZmZDgwMDAwMXAxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS43ZmZmZmU4MDAwMDFwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuN2ZmZmZkcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNiwKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmNwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLjdmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMHgxLnAtMSwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS43ZmZmZmZwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDB4MS5wLTEsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuN2ZmZmZkZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNiwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmNwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLjdmZmZmZWZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIDB4MS43ZmZmZmZmZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuN2ZmZmZkMDAwMDAwODBwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLmZmZmZmY3AxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuN2ZmZmZlMDAwMDAwODBwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLmZmZmZmZXAxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuN2ZmZmZmMDAwMDAwODBwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuN2ZmZmZkODBwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5wLTEsCisgICAgMHgxLmZmZmZmY3AxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuN2ZmZmZlODBwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5wLTEsCisgICAgMHgxLmZmZmZmZXAxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAweDEuN2ZmZmZmODBwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5wLTEsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEuN2ZmZmZlN2ZmZmZmcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmNwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgMHgxLjdmZmZmZjdmZmZmZnAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS44MDAwMDA3ZmZmZmZwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEuN2ZmZmZkODBwMTI3LAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLmZmZmZmY3AxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEuN2ZmZmZlODBwMTI3LAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLmZmZmZmZXAxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuN2ZmZmZmODBwMTI3LAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEuN2ZmZmZlcDEyNywKKyAgICAweDEucDEyNywKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmNwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgMHgxLjdmZmZmZnAxMjcsCisgICAgMHgxLnAxMjcsCisgICAgMHgxLnAtMSwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDB4MS44MHAxMjcsCisgICAgMHgxLnAxMjcsCisgICAgMHgxLnAtMSwKKyAgICAweDEucDEyNworICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIDB4MS43ZmZmZmZwMTI3LAorICAgIDB4MS5wMTI3LAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLmZmZmZmY3AxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuODBwMTI3LAorICAgIDB4MS5wMTI3LAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLmZmZmZmZXAxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAweDEuODAwMDAxcDEyNywKKyAgICAweDEucDEyNywKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5wMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMHgxLmZmZmZmYjAwMDAwMnAxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZjcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIDB4MS5mZmZmZmMwMDAwMDJwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuZmZmZmZkMDAwMDAycDEyNywKKyAgICAweDEuZmZmZmZjcDEyNiwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzA3CisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmNwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgMHgxLmZmZmZmZHAxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMHgxLmZmZmZmZGZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmNwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgMHgxLmZmZmZmZWZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucDEyNworICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS5mZmZmZmMwMDAwMDFwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmY3AxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuZmZmZmZkMDAwMDAxcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgMHgxLmZmZmZmZTAwMDAwMXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDEyNworICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS5mZmZmZmRwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZjcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEucDAsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAweDEuZmZmZmZlZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmY3AxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucDEyNworICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS5mZmZmZmRwMTI3LAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmY3AxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucDEyNywKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucDEyNywKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmY3AxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAxMjcsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5wMCwKKyAgICAweDEucDEyNworICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucDEyNywKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmY3AxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAxMjcsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wMTI3LAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucDEyNworICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIDB4MS5mZmZmZmIwMDAwMDJwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmY3AxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuZmZmZmZjMDAwMDAycDEyNywKKyAgICAweDEuZmZmZmZjcDEyNiwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgMHgxLmZmZmZmZDAwMDAwMnAxMjcsCisgICAgMHgxLmZmZmZmY3AxMjYsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDEyNworICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIDB4MS5mZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZjcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIDB4MS5mZmZmZmRwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDB4MS5wMCwKKyAgICAweDEucDEyNworICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIDB4MS5mZmZmZmRmZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZjcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDMzOAorICAgIDB4MS5mZmZmZmVmZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI2LAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcDEyNiwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAweDEuZmZmZmZjMDAwMDAxcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmNwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzQxCisgICAgMHgxLmZmZmZmZDAwMDAwMXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS5mZmZmZmUwMDAwMDFwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAweDEuZmZmZmZkcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmY3AxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZXAxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMHgxLmZmZmZmZWZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmNwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzQ3CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAweDEuZmZmZmZkcDEyNywKKyAgICAweDEucDEyNywKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmNwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzUwCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAxMjcsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucDEyNywKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAxMjcsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmNwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzUzCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDM1NAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucDEyNywKKyAgICAweDEucDAsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAxMjcsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmNwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wMTI3LAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDM1NworICAgIEhVR0VfVkFMRiwKKyAgICAweDEucDEyNywKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAweDEuZmZmZmZkMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAweDEuZmZmZmZlMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS4wMDAwMDAwMDAwMDA4MHAxLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIDB4MS5mZmZmZmZwMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAweDEuMDAwMDAwODBwMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEuZmZmZmZmZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIDB4MS4wMDAwMDA3ZmZmZmZwMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuMDAwMDAxN2ZmZmZmcDEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAweDEuZmZmZmZmcDAsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgMHgxLjAwMDAwMDgwcDEsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLmZmZmZmZnAwLAorICAgIDB4MS5wMCwKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIDB4MS5wMSwKKyAgICAweDEucDAsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIDB4MS4wMDAwMDFwMSwKKyAgICAweDEucDAsCisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIDB4MS4wMDAwMDA4MHAxLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS4wMDAwMDFwMSwKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIDB4MS5mZmZmZmZmZmZmZmVwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgMHgxLjAwMDAwMDdmZmZmZnAxLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS4wMDAwMDE3ZmZmZmZwMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAweDEuMDAwMDAwODBwMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODAKKyAgICAweDEuMDAwMDAxcDEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODEKKyAgICAweDEuMDAwMDAycDEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODIKKyAgICAweDEuMDAwMDAxODAwMDAycDEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgMHgxLjAwMDAwMjAwMDAwMnAxLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgMHgxLjAwMDAwMzAwMDAwMnAxLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzg1CisgICAgLTB4MS5mZmZmZmVwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgLTB4MS5mZmZmZmNwLTI1LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODcKKyAgICAweDEuMDAwMDAycC0yNCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzg5CisgICAgMHgxLnAtMjQsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIDB4MS44MHAtMjMsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS5mZmZmZmVwLTI1LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5MgorICAgIDB4MS5mZmZmZmZwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzkzCisgICAgMHgxLmZmZmZmZjgwcC0yMywKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIC0weDEuODBwLTIzLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAtMHgxLnAtMjMsCisgICAgMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgMC4wLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIC0weDEucC0yNCwKKyAgICAweDEucDAsCisgICAgLTB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMC4wLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIDB4MS5wLTIzLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDQwMAorICAgIDAuMCwKKyAgICAweDEucDAsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIDB4MS5wLTI0LAorICAgIDB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDIKKyAgICAweDEuODBwLTIzLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAtMHgxLjQwMDAwMXAtMjIsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIC0weDEuMDAwMDAxcC0yMiwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAtMHgxLjAwMDAwMnAtMjMsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgLTB4MS44MHAtMjMsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEucDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIC0weDEucC0yMywKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDgKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDA5CisgICAgLTB4MS5mZmZmZmVwLTI0LAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDEwCisgICAgLTB4MS5mZmZmZmNwLTI1LAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTEKKyAgICAweDEuMDAwMDAycC0yNCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMHgxLmZmZmZmYzAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDEzCisgICAgMHgxLmZmZmZmYzAwMDAwMnAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgMHgxLmZmZmZmYzAwMDAwMnAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDE1CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAwLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQxNworICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgMHgxLjAwMDAwMGZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIDB4MS4wMDAwMDBmZmZmZmVwMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjAKKyAgICAweDEuMDAwMDAwZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQyMworICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEucDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQyNQorICAgIDB4MS5wMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIDB4MS5wMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQyOQorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIDB4MS4wMDAwMDBmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAweDEuMDAwMDAwZmZmZmZlcDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgMHgxLjAwMDAwMGZmZmZmZXAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQzMworICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQzNQorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIDB4MS4wMDAwMDQwMDAwMDNmZmZmZmZmZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQzNworICAgIDB4MS4wMDAwMDQwMDAwMDRwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQzOAorICAgIDB4MS4wMDAwMDQwMDAwMDRwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQzOQorICAgIC0weDEuMDAwMDAwZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAtMHgxLjAwMDAwMGZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDEKKyAgICAtMHgxLjAwMDAwMGZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NAorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ0NQorICAgIC0weDEuZmZmZmZjMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIC0weDEuZmZmZmZjMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgLTB4MS5mZmZmZmMwMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIC0weDEuMDAwMDAycDAsCisgICAgMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIC0weDEuMDAwMDAycDAsCisgICAgMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgLTB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ1MQorICAgIC0weDEucDAsCisgICAgMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ1MgorICAgIC0weDEucDAsCisgICAgMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEucDAsCisgICAgLTB4MS5wMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTQKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDAsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ1NQorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTcKKyAgICAtMHgxLjAwMDAwNDAwMDAwNHAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTgKKyAgICAtMHgxLjAwMDAwNDAwMDAwNHAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ1OQorICAgIC0weDEuMDAwMDA0MDAwMDAzZmZmZmZmZmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjAKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjEKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLnAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ2MgorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5wMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICAtMHgxLjAwMDAwMGZmZmZmZXAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDY0CisgICAgLTB4MS4wMDAwMDBmZmZmZmVwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDY1CisgICAgLTB4MS4wMDAwMDBmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjYKKyAgICAweDEuMDAwZmZkZmZmMDAxcDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgNDY3CisgICAgMHgxLjAwMGZmZTAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucC0xMgorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIDB4MS4wMDBmZmUwMDIwMDFwMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLjAwMDAwMnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjkKKyAgICAweDEuMDAwZmZlZmZmMHAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgNDcwCisgICAgMHgxLjAwMGZmZnAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTEyCisgIH0sCisgIHsgLy8gRW50cnkgNDcxCisgICAgMHgxLjAwMGZmZjAwMjBwMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycC0xMgorICB9LAorICB7IC8vIEVudHJ5IDQ3MgorICAgIDB4MS4wMDEwMDBmZmVmZmVwMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0xMworICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIDB4MS4wMDEwMDBmZmZmZmVwMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucC0xMgorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIDB4MS4wMDEwMDEwMDFmZmVwMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycC0xMgorICB9LAorICB7IC8vIEVudHJ5IDQ3NQorICAgIDB4MS4wMDBmZmVmZmYwcDAsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAweDEuMDAwZmZmcDAsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAweDEuMDAwZmZmMDAyMHAwLAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgMHgxLjAwMGZmZmZmZjBwMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgNDc5CisgICAgMHgxLjAwMTBwMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTEyCisgIH0sCisgIHsgLy8gRW50cnkgNDgwCisgICAgMHgxLjAwMTAwMDAwMjBwMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgNDgxCisgICAgMHgxLjAwMTAwMWZmZjBwMCwKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgNDgyCisgICAgMHgxLjAwMTAwMnAwLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODMKKyAgICAweDEuMDAxMDAyMDAyMHAwLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODQKKyAgICAweDEuMDAxMDAwZmZlZmZlcDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAweDEuMDAxMDAwZmZmZmZlcDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODYKKyAgICAweDEuMDAxMDAxMDAxZmZlcDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLjAwMDAwMnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODcKKyAgICAweDEuMDAxMDAxZmZmMHAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAweDEuMDAxMDAycDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wMCwKKyAgICAweDEucC0xMgorICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIDB4MS4wMDEwMDIwMDIwcDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycC0xMgorICB9LAorICB7IC8vIEVudHJ5IDQ5MAorICAgIDB4MS4wMDEwMDNmZmYwMDRwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgNDkxCisgICAgMHgxLjAwMTAwNDAwMDAwNHAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTIKKyAgICAweDEuMDAxMDA0MDAyMDA0cDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycC0xMgorICB9LAorICB7IC8vIEVudHJ5IDQ5MworICAgIC0weDEuZmZlMDAyMDAxZmZjcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0xMworICB9LAorICB7IC8vIEVudHJ5IDQ5NAorICAgIC0weDEuZmZlMDAxZmZmZmZjcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEucC0xMgorICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIC0weDEuZmZlMDAxZmZiZmZjcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycC0xMgorICB9LAorICB7IC8vIEVudHJ5IDQ5NgorICAgIC0weDEuZmZkZmZlMDAyMHAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEucDAsCisgICAgMHgxLmZmZmZmZXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTcKKyAgICAtMHgxLmZmZGZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEucDAsCisgICAgMHgxLnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTgKKyAgICAtMHgxLmZmZGZmZGZmYzBwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgNDk5CisgICAgLTB4MS5mZmRmZmMwMDIwMDJwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xMworICB9LAorICB7IC8vIEVudHJ5IDUwMAorICAgIC0weDEuZmZkZmZjMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDEKKyAgICAtMHgxLmZmZGZmYmZmYzAwMnAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgLTB4MS5mZmUwMDQwMDIwcC0xLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgNTAzCisgICAgLTB4MS5mZmUwMDRwLTEsCisgICAgMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgMHgxLnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAtMHgxLmZmZTAwM2ZmYzBwLTEsCisgICAgMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAtMHgxLmZmZTAwMDAwMjBwLTEsCisgICAgMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgMHgxLmZmZmZmZXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDYKKyAgICAtMHgxLmZmZTBwLTEsCisgICAgMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgMHgxLnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAtMHgxLmZmZGZmZmZmYzBwLTEsCisgICAgMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgMHgxLjAwMDAwMnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDgKKyAgICAtMHgxLmZmZGZmZTAwMjBwLTEsCisgICAgMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgNTA5CisgICAgLTB4MS5mZmRmZmVwLTEsCisgICAgMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5wLTEyCisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgLTB4MS5mZmRmZmRmZmMwcC0xLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycC0xMgorICB9LAorICB7IC8vIEVudHJ5IDUxMQorICAgIC0weDEuZmZlMDA4MDAyMDA4cC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgNTEyCisgICAgLTB4MS5mZmUwMDgwMDAwMDhwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgMHgxLnAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTMKKyAgICAtMHgxLmZmZTAwN2ZmYzAwOHAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycC0xMgorICB9LAorICB7IC8vIEVudHJ5IDUxNAorICAgIC0weDEuZmZlMDA0MDAyMHAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xMworICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIC0weDEuZmZlMDA0cC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wLTEyCisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgLTB4MS5mZmUwMDNmZmMwcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgNTE3CisgICAgLTB4MS5mZmUwMDIwMDFmZmNwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgNTE4CisgICAgLTB4MS5mZmUwMDFmZmZmZmNwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5wLTEyCisgIH0sCisgIHsgLy8gRW50cnkgNTE5CisgICAgLTB4MS5mZmUwMDFmZmJmZmNwLTEsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgLTB4MS5mZmZmZmY4MHAwLAorICAgIDB4MS5mZmZmZmVwMjIsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDUyMQorICAgIC0weDEuZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmVwMjIsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAyMworICB9LAorICB7IC8vIEVudHJ5IDUyMgorICAgIC0weDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwMjIsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDUyMworICAgIC0weDEuODBwMCwKKyAgICAweDEuZmZmZmZlcDIyLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDUyNAorICAgIC0weDEucC0xLAorICAgIDB4MS5mZmZmZmVwMjIsCisgICAgMHgxLnAwLAorICAgIC0weDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTI1CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMjIsCisgICAgMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTI2CisgICAgLTB4MS4wMDAwMDJwLTEsCisgICAgMHgxLmZmZmZmZXAyMiwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjcKKyAgICAweDEuZmZmZmZjcC0yLAorICAgIDB4MS5mZmZmZmVwMjIsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcDIyLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDUyOQorICAgIC0weDEuODBwMCwKKyAgICAweDEucDIzLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS4wMDAwMDJwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAtMHgxLnAtMSwKKyAgICAweDEucDIzLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzEKKyAgICAwLjAsCisgICAgMHgxLnAyMywKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTMyCisgICAgLTB4MS5wMCwKKyAgICAweDEucDIzLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIDAuMCwKKyAgICAweDEucDIzLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAyMworICB9LAorICB7IC8vIEVudHJ5IDUzNAorICAgIDB4MS5wLTEsCisgICAgMHgxLnAyMywKKyAgICAweDEucDAsCisgICAgLTB4MS5mZmZmZmVwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAwLjAsCisgICAgMHgxLnAyMywKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzYKKyAgICAweDEucDAsCisgICAgMHgxLnAyMywKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5wMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzcKKyAgICAweDEuODBwMCwKKyAgICAweDEucDIzLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDUzOAorICAgIC0weDEuMDAwMDAycC0xLAorICAgIDB4MS4wMDAwMDJwMjMsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDUzOQorICAgIDB4MS5mZmZmZmNwLTIsCisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDIzLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDEKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEucDAsCisgICAgLTB4MS4wMDAwMDJwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEucDAsCisgICAgLTB4MS5wMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAweDEuODBwMCwKKyAgICAweDEuMDAwMDAycDIzLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDU0NAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycDIzLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDU0NQorICAgIDB4MS4wMDAwMDFwMSwKKyAgICAweDEuMDAwMDAycDIzLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLnAyMworICB9LAorICB7IC8vIEVudHJ5IDU0NgorICAgIDB4MS40MDAwMDFwMSwKKyAgICAweDEuMDAwMDAycDIzLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIDB4MS4wOHAtNSwKKyAgICAweDEucC01LAorICAgIDB4MS5wLTUsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIDB4MS4wMDQwcDAsCisgICAgMHgxLnAtNSwKKyAgICAweDEucC01LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIDB4MS5wLTQsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDAsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIDB4MS4wOHAwLAorICAgIDB4MS5wLTUsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU1MQorICAgIDB4MS5wLTQsCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTUsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDU1MgorICAgIDB4MS4wOHAwLAorICAgIDB4MS5wMCwKKyAgICAweDEucC01LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU1MworICAgIDB4MS4wOHAwLAorICAgIDB4MS5wMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS5wMSwKKyAgICAweDEucDAsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU1NQorICAgIDB4MS4yMHAtMiwKKyAgICAweDEucC01LAorICAgIDB4MS5wMywKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgNTU2CisgICAgMHgxLjQwcDAsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDMsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgMHgxLjA4cDAsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDUsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDU1OAorICAgIDB4MS5wMSwKKyAgICAweDEucC01LAorICAgIDB4MS5wNSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTkKKyAgICAweDEuMDFwMywKKyAgICAweDEucDAsCisgICAgMHgxLnAzLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjAKKyAgICAweDEuMjBwMywKKyAgICAweDEucDAsCisgICAgMHgxLnAzLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIDB4MS4wMDQwcDUsCisgICAgMHgxLnAwLAorICAgIDB4MS5wNSwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgNTYyCisgICAgMHgxLjA4cDUsCisgICAgMHgxLnAwLAorICAgIDB4MS5wNSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjMKKyAgICAweDEuMDA0MHA1LAorICAgIDB4MS5wLTUsCisgICAgMHgxLnAxMCwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgNTY0CisgICAgMHgxLjA4cDUsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDEwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU2NQorICAgIDB4MS4wMDEwcDcsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDEyLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjYKKyAgICAweDEuMDJwNywKKyAgICAweDEucC01LAorICAgIDB4MS5wMTIsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTY3CisgICAgMHgxLjAwMDJwMTAsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMTAsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDU2OAorICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS5wMCwKKyAgICAweDEucDEwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU2OQorICAgIDB4MS4wMDAwODBwMTIsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMTIsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDU3MAorICAgIDB4MS4wMDEwcDEyLAorICAgIDB4MS5wMCwKKyAgICAweDEucDEyLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIDB4MS4wMDA4cDMsCisgICAgMHgxLnAtNSwKKyAgICAweDEucC01LAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIDB4MS4wMDAycDUsCisgICAgMHgxLnAtNSwKKyAgICAweDEucC01LAorICAgIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDU3MworICAgIDB4MS4wMXAzLAorICAgIDB4MS5wLTUsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDU3NAorICAgIDB4MS4wMDQwcDUsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDAsCisgICAgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNTc1CisgICAgMHgxLjAxcDMsCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTUsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTc2CisgICAgMHgxLjAwNDBwNSwKKyAgICAweDEucDAsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzcKKyAgICAweDEuMjBwMywKKyAgICAweDEucDAsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDU3OAorICAgIDB4MS4wOHA1LAorICAgIDB4MS5wMCwKKyAgICAweDEucDAsCisgICAgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNTc5CisgICAgMHgxLjA4cDMsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDMsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTgwCisgICAgMHgxLjAycDUsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDMsCisgICAgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNTgxCisgICAgMHgxLjIwcDMsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDUsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgMHgxLjA4cDUsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDUsCisgICAgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNTgzCisgICAgMHgxLnA0LAorICAgIDB4MS5wMCwKKyAgICAweDEucDMsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTg0CisgICAgMHgxLjQwcDUsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMywKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODUKKyAgICAweDEuNDBwNSwKKyAgICAweDEucDAsCisgICAgMHgxLnA1LAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIDB4MS5wNiwKKyAgICAweDEucDAsCisgICAgMHgxLnA1LAorICAgIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDU4NworICAgIDB4MS40MHA1LAorICAgIDB4MS5wLTUsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODgKKyAgICAweDEucDYsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDEwLAorICAgIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDU4OQorICAgIDB4MS4xMHA3LAorICAgIDB4MS5wLTUsCisgICAgMHgxLnAxMiwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTAKKyAgICAweDEuNDBwNywKKyAgICAweDEucC01LAorICAgIDB4MS5wMTIsCisgICAgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNTkxCisgICAgMHgxLjAycDEwLAorICAgIDB4MS5wMCwKKyAgICAweDEucDEwLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDU5MgorICAgIDB4MS4wOHAxMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTMKKyAgICAweDEuMDA4MHAxMiwKKyAgICAweDEucDAsCisgICAgMHgxLnAxMiwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTQKKyAgICAweDEuMDJwMTIsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMTIsCisgICAgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNTk1CisgICAgMHgxLjAwMDAxMHAxMCwKKyAgICAweDEucC01LAorICAgIDB4MS5wLTUsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDU5NgorICAgIDB4MS4wMDAwMDRwMTIsCisgICAgMHgxLnAtNSwKKyAgICAweDEucC01LAorICAgIDB4MS5wMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAweDEuMDAwMnAxMCwKKyAgICAweDEucC01LAorICAgIDB4MS5wMCwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgNTk4CisgICAgMHgxLjAwMDA4MHAxMiwKKyAgICAweDEucC01LAorICAgIDB4MS5wMCwKKyAgICAweDEucDEyCisgIH0sCisgIHsgLy8gRW50cnkgNTk5CisgICAgMHgxLjAwMDJwMTAsCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTUsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDYwMAorICAgIDB4MS4wMDAwODBwMTIsCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTUsCisgICAgMHgxLnAxMgorICB9LAorICB7IC8vIEVudHJ5IDYwMQorICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS5wMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDYwMgorICAgIDB4MS4wMDEwcDEyLAorICAgIDB4MS5wMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAxMgorICB9LAorICB7IC8vIEVudHJ5IDYwMworICAgIDB4MS4wMDEwcDEwLAorICAgIDB4MS5wLTUsCisgICAgMHgxLnAzLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDQKKyAgICAweDEuMDAwNHAxMiwKKyAgICAweDEucC01LAorICAgIDB4MS5wMywKKyAgICAweDEucDEyCisgIH0sCisgIHsgLy8gRW50cnkgNjA1CisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDUsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDYwNgorICAgIDB4MS4wMDEwcDEyLAorICAgIDB4MS5wLTUsCisgICAgMHgxLnA1LAorICAgIDB4MS5wMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDcKKyAgICAweDEuMDJwMTAsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMywKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgNjA4CisgICAgMHgxLjAwODBwMTIsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMywKKyAgICAweDEucDEyCisgIH0sCisgIHsgLy8gRW50cnkgNjA5CisgICAgMHgxLjA4cDEwLAorICAgIDB4MS5wMCwKKyAgICAweDEucDUsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDYxMAorICAgIDB4MS4wMnAxMiwKKyAgICAweDEucDAsCisgICAgMHgxLnA1LAorICAgIDB4MS5wMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTEKKyAgICAweDEuMDhwMTAsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDEwLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTIKKyAgICAweDEuMDJwMTIsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDEwLAorICAgIDB4MS5wMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTMKKyAgICAweDEuMjBwMTAsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDEyLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTQKKyAgICAweDEuMDhwMTIsCisgICAgMHgxLnAtNSwKKyAgICAweDEucDEyLAorICAgIDB4MS5wMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAweDEucDExLAorICAgIDB4MS5wMCwKKyAgICAweDEucDEwLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTYKKyAgICAweDEuNDBwMTIsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMTAsCisgICAgMHgxLnAxMgorICB9LAorICB7IC8vIEVudHJ5IDYxNworICAgIDB4MS40MHAxMiwKKyAgICAweDEucDAsCisgICAgMHgxLnAxMiwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgNjE4CisgICAgMHgxLnAxMywKKyAgICAweDEucDAsCisgICAgMHgxLnAxMiwKKyAgICAweDEucDEyCisgIH0sCisgIHsgLy8gRW50cnkgNjE5CisgICAgMHgxLjAwMjBwNiwKKyAgICAweDEucDMsCisgICAgMHgxLnAzLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjAKKyAgICAweDEuMDRwNiwKKyAgICAweDEucDMsCisgICAgMHgxLnAzLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDYyMQorICAgIDB4MS4wMDA4cDgsCisgICAgMHgxLnAzLAorICAgIDB4MS5wNSwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgNjIyCisgICAgMHgxLjAxcDgsCisgICAgMHgxLnAzLAorICAgIDB4MS5wNSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjMKKyAgICAweDEuMDAwOHA4LAorICAgIDB4MS5wNSwKKyAgICAweDEucDMsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDYyNAorICAgIDB4MS4wMXA4LAorICAgIDB4MS5wNSwKKyAgICAweDEucDMsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjI1CisgICAgMHgxLjAwMDJwMTAsCisgICAgMHgxLnA1LAorICAgIDB4MS5wNSwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgNjI2CisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLnA1LAorICAgIDB4MS5wNSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjcKKyAgICAweDEuMjBwNiwKKyAgICAweDEucDMsCisgICAgMHgxLnAzLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDYyOAorICAgIDB4MS44MHA2LAorICAgIDB4MS5wMywKKyAgICAweDEucDMsCisgICAgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNjI5CisgICAgMHgxLjA4cDgsCisgICAgMHgxLnAzLAorICAgIDB4MS5wNSwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzAKKyAgICAweDEuMjBwOCwKKyAgICAweDEucDMsCisgICAgMHgxLnA1LAorICAgIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDYzMQorICAgIDB4MS4wOHA4LAorICAgIDB4MS5wNSwKKyAgICAweDEucDMsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjMyCisgICAgMHgxLjIwcDgsCisgICAgMHgxLnA1LAorICAgIDB4MS5wMywKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzMKKyAgICAweDEuMDJwMTAsCisgICAgMHgxLnA1LAorICAgIDB4MS5wNSwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzQKKyAgICAweDEuMDhwMTAsCisgICAgMHgxLnA1LAorICAgIDB4MS5wNSwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzUKKyAgICAweDEuMTBwMTAsCisgICAgMHgxLnAzLAorICAgIDB4MS5wMywKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgNjM2CisgICAgMHgxLjA0cDEyLAorICAgIDB4MS5wMywKKyAgICAweDEucDMsCisgICAgMHgxLnAxMgorICB9LAorICB7IC8vIEVudHJ5IDYzNworICAgIDB4MS40MHAxMCwKKyAgICAweDEucDMsCisgICAgMHgxLnA1LAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzgKKyAgICAweDEuMTBwMTIsCisgICAgMHgxLnAzLAorICAgIDB4MS5wNSwKKyAgICAweDEucDEyCisgIH0sCisgIHsgLy8gRW50cnkgNjM5CisgICAgMHgxLjQwcDEwLAorICAgIDB4MS5wNSwKKyAgICAweDEucDMsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDY0MAorICAgIDB4MS4xMHAxMiwKKyAgICAweDEucDUsCisgICAgMHgxLnAzLAorICAgIDB4MS5wMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDEKKyAgICAweDEucDExLAorICAgIDB4MS5wNSwKKyAgICAweDEucDUsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIDB4MS40MHAxMiwKKyAgICAweDEucDUsCisgICAgMHgxLnA1LAorICAgIDB4MS5wMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDMKKyAgICAweDEuMDAwMDQwcDEzLAorICAgIDB4MS5wMywKKyAgICAweDEucDEwLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDQKKyAgICAweDEuMDAwOHAxMywKKyAgICAweDEucDMsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDUKKyAgICAweDEuMDAwMDEwcDE1LAorICAgIDB4MS5wMywKKyAgICAweDEucDEyLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDYKKyAgICAweDEuMDAwMnAxNSwKKyAgICAweDEucDMsCisgICAgMHgxLnAxMiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDcKKyAgICAweDEuMDAwMDEwcDE1LAorICAgIDB4MS5wNSwKKyAgICAweDEucDEwLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDgKKyAgICAweDEuMDAwMnAxNSwKKyAgICAweDEucDUsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDkKKyAgICAweDEuMDAwMDA0cDE3LAorICAgIDB4MS5wNSwKKyAgICAweDEucDEyLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTAKKyAgICAweDEuMDAwMDgwcDE3LAorICAgIDB4MS5wNSwKKyAgICAweDEucDEyLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDY1MQorICAgIDB4MS4wMDQwcDEzLAorICAgIDB4MS5wMywKKyAgICAweDEucDEwLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDY1MgorICAgIDB4MS4wMXAxMywKKyAgICAweDEucDMsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTMKKyAgICAweDEuMDAxMHAxNSwKKyAgICAweDEucDMsCisgICAgMHgxLnAxMiwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTQKKyAgICAweDEuMDA0MHAxNSwKKyAgICAweDEucDMsCisgICAgMHgxLnAxMiwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTUKKyAgICAweDEuMDAxMHAxNSwKKyAgICAweDEucDUsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTYKKyAgICAweDEuMDA0MHAxNSwKKyAgICAweDEucDUsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTcKKyAgICAweDEuMDAwNHAxNywKKyAgICAweDEucDUsCisgICAgMHgxLnAxMiwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAweDEuMDAxMHAxNywKKyAgICAweDEucDUsCisgICAgMHgxLnAxMiwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTkKKyAgICAweDEuMjBwMTMsCisgICAgMHgxLnAzLAorICAgIDB4MS5wMTAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDY2MAorICAgIDB4MS44MHAxMywKKyAgICAweDEucDMsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDEyCisgIH0sCisgIHsgLy8gRW50cnkgNjYxCisgICAgMHgxLjA4cDE1LAorICAgIDB4MS5wMywKKyAgICAweDEucDEyLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjIKKyAgICAweDEuMjBwMTUsCisgICAgMHgxLnAzLAorICAgIDB4MS5wMTIsCisgICAgMHgxLnAxMgorICB9LAorICB7IC8vIEVudHJ5IDY2MworICAgIDB4MS4wOHAxNSwKKyAgICAweDEucDUsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgNjY0CisgICAgMHgxLjIwcDE1LAorICAgIDB4MS5wNSwKKyAgICAweDEucDEwLAorICAgIDB4MS5wMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjUKKyAgICAweDEuMDJwMTcsCisgICAgMHgxLnA1LAorICAgIDB4MS5wMTIsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDY2NgorICAgIDB4MS4wOHAxNywKKyAgICAweDEucDUsCisgICAgMHgxLnAxMiwKKyAgICAweDEucDEyCisgIH0sCisgIHsgLy8gRW50cnkgNjY3CisgICAgLTB4MS5mZmZmZTBwLTIxLAorICAgIC0weDEucC0yMCwKKyAgICAtMHgxLnAtMjAsCisgICAgLTB4MS5wLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNjY4CisgICAgMHgxLjAwMDAxMHAtMjAsCisgICAgLTB4MS5wLTIwLAorICAgIC0weDEucC0yMCwKKyAgICAweDEucC0yMAorICB9LAorICB7IC8vIEVudHJ5IDY2OQorICAgIC0weDEuMDAwMDEwcC0yMCwKKyAgICAtMHgxLnAtMjAsCisgICAgMHgxLnAtMjAsCisgICAgLTB4MS5wLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNjcwCisgICAgMHgxLmZmZmZlMHAtMjEsCisgICAgLTB4MS5wLTIwLAorICAgIDB4MS5wLTIwLAorICAgIDB4MS5wLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNjcxCisgICAgLTB4MS4wMDAwMTBwLTIwLAorICAgIDB4MS5wLTIwLAorICAgIC0weDEucC0yMCwKKyAgICAtMHgxLnAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzIKKyAgICAweDEuZmZmZmUwcC0yMSwKKyAgICAweDEucC0yMCwKKyAgICAtMHgxLnAtMjAsCisgICAgMHgxLnAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzMKKyAgICAtMHgxLmZmZmZlMHAtMjEsCisgICAgMHgxLnAtMjAsCisgICAgMHgxLnAtMjAsCisgICAgLTB4MS5wLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNjc0CisgICAgMHgxLjAwMDAxMHAtMjAsCisgICAgMHgxLnAtMjAsCisgICAgMHgxLnAtMjAsCisgICAgMHgxLnAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmVwLTIxLAorICAgIC0weDEucC0xMCwKKyAgICAtMHgxLnAtMTAsCisgICAgLTB4MS5wLTEwMAorICB9LAorICB7IC8vIEVudHJ5IDY3NgorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMXAtMjAsCisgICAgLTB4MS5wLTEwLAorICAgIC0weDEucC0xMCwKKyAgICAweDEucC0xMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzcKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAxcC0yMCwKKyAgICAtMHgxLnAtMTAsCisgICAgMHgxLnAtMTAsCisgICAgLTB4MS5wLTEwMAorICB9LAorICB7IC8vIEVudHJ5IDY3OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmVwLTIxLAorICAgIC0weDEucC0xMCwKKyAgICAweDEucC0xMCwKKyAgICAweDEucC0xMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAxcC0yMCwKKyAgICAweDEucC0xMCwKKyAgICAtMHgxLnAtMTAsCisgICAgLTB4MS5wLTEwMAorICB9LAorICB7IC8vIEVudHJ5IDY4MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmVwLTIxLAorICAgIDB4MS5wLTEwLAorICAgIC0weDEucC0xMCwKKyAgICAweDEucC0xMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmVwLTIxLAorICAgIDB4MS5wLTEwLAorICAgIDB4MS5wLTEwLAorICAgIC0weDEucC0xMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODIKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDFwLTIwLAorICAgIDB4MS5wLTEwLAorICAgIDB4MS5wLTEwLAorICAgIDB4MS5wLTEwMAorICB9LAorICB7IC8vIEVudHJ5IDY4MworICAgIDB4MS5mMHAtMTEsCisgICAgLTB4MS5wLTUsCisgICAgLTB4MS5wLTUsCisgICAgLTB4MS5wLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNjg0CisgICAgMHgxLjA4cC0xMCwKKyAgICAtMHgxLnAtNSwKKyAgICAtMHgxLnAtNSwKKyAgICAweDEucC0xNQorICB9LAorICB7IC8vIEVudHJ5IDY4NQorICAgIC0weDEuMDhwLTEwLAorICAgIC0weDEucC01LAorICAgIDB4MS5wLTUsCisgICAgLTB4MS5wLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNjg2CisgICAgLTB4MS5mMHAtMTEsCisgICAgLTB4MS5wLTUsCisgICAgMHgxLnAtNSwKKyAgICAweDEucC0xNQorICB9LAorICB7IC8vIEVudHJ5IDY4NworICAgIC0weDEuMDhwLTEwLAorICAgIDB4MS5wLTUsCisgICAgLTB4MS5wLTUsCisgICAgLTB4MS5wLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNjg4CisgICAgLTB4MS5mMHAtMTEsCisgICAgMHgxLnAtNSwKKyAgICAtMHgxLnAtNSwKKyAgICAweDEucC0xNQorICB9LAorICB7IC8vIEVudHJ5IDY4OQorICAgIDB4MS5mMHAtMTEsCisgICAgMHgxLnAtNSwKKyAgICAweDEucC01LAorICAgIC0weDEucC0xNQorICB9LAorICB7IC8vIEVudHJ5IDY5MAorICAgIDB4MS4wOHAtMTAsCisgICAgMHgxLnAtNSwKKyAgICAweDEucC01LAorICAgIDB4MS5wLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNjkxCisgICAgMHgxLjY4cDYsCisgICAgLTB4MS40MHAzLAorICAgIC0weDEuNDBwMywKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTIKKyAgICAweDEuYjhwNiwKKyAgICAtMHgxLjQwcDMsCisgICAgLTB4MS40MHAzLAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjkzCisgICAgLTB4MS5iOHA2LAorICAgIC0weDEuNDBwMywKKyAgICAweDEuNDBwMywKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTQKKyAgICAtMHgxLjY4cDYsCisgICAgLTB4MS40MHAzLAorICAgIDB4MS40MHAzLAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjk1CisgICAgLTB4MS5iOHA2LAorICAgIDB4MS40MHAzLAorICAgIC0weDEuNDBwMywKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTYKKyAgICAtMHgxLjY4cDYsCisgICAgMHgxLjQwcDMsCisgICAgLTB4MS40MHAzLAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjk3CisgICAgMHgxLjY4cDYsCisgICAgMHgxLjQwcDMsCisgICAgMHgxLjQwcDMsCisgICAgLTB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjk4CisgICAgMHgxLmI4cDYsCisgICAgMHgxLjQwcDMsCisgICAgMHgxLjQwcDMsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTkKKyAgICAwLjAsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDAKKyAgICAweDEucDEsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDcwMQorICAgIC0weDEucDEsCisgICAgLTB4MS5wMCwKKyAgICAweDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDcwMgorICAgIDAuMCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDMKKyAgICAtMHgxLnAxLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDQKKyAgICAwLjAsCisgICAgMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzA1CisgICAgMC4wLAorICAgIDB4MS5wMCwKKyAgICAweDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDcwNgorICAgIDB4MS5wMSwKKyAgICAweDEucDAsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDcwNworICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNzA4CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDcwOQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzEwCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTEKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTIKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDcxMworICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDcxNAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzE1CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzE2CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNzE3CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDcxOAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNzE5CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzIwCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDcyMQorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjIKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDcyMworICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjQKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDcyNQorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjYKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDcyNworICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNzI4CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNzI5CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDczMAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDczMQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDczMgorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzMKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNzM0CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzUKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzM2CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzcKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzM4CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzkKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDc0MAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDc0MQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNzQyCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDc0MworICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzQ0CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzQ1CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNzQ2CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDc0NworICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDc0OAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDkKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTAKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzUxCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDc1MgorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNzUzCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTQKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNzU1CisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3cDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTYKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzU3CisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycDEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDc1OAorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNzU5CisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDc2MAorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzYxCisgICAgMHgxLmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjIKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDc2MworICAgIDB4MS5mZmZmZmVwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDc2NAorICAgIDB4MS5mZmZmZmVwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjUKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjYKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDc2NworICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDc2OAorICAgIC0weDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzY5CisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNzcwCisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMnAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDc3MQorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDc3MgorICAgIC0weDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzMKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzQKKyAgICAtMHgxLmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDc3NQorICAgIC0weDEuZmZmZmZlcDEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNzc2CisgICAgLTB4MS5mZmZmZmVwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNzc3CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzgKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNzc5CisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3cDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODAKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzgxCisgICAgMHgxLmZmZmZmYTAwMDAwNDAwMDAwMDAwMDAwMDAwMDAwMDAycDEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDc4MgorICAgIDB4MS5mZmZmZmEwMDAwMDNmZmZmZmZmZmZmZmZmZmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNzgzCisgICAgMHgxLmZmZmZmYTAwMDAwNDAwMDAwMDAwMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDc4NAorICAgIDB4MS5mZmZmZmEwMDAwMDNmZmZmZmZmZmZmZmZmZmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzg1CisgICAgMHgxLmZmZmZmYTAwMDAwNHAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODYKKyAgICAweDEuZmZmZmZhMDAwMDAzZmZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDc4NworICAgIDB4MS5mZmZmZmEwMDAwMDRwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDc4OAorICAgIDB4MS5mZmZmZmEwMDAwMDRwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODkKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTAKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDc5MQorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDc5MgorICAgIC0weDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzkzCisgICAgLTB4MS5mZmZmZmEwMDAwMDNmZmZmZmZmZmZmZmZmZmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNzk0CisgICAgLTB4MS5mZmZmZmEwMDAwMDQwMDAwMDAwMDAwMDAwMDAwMDAwMnAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDc5NQorICAgIC0weDEuZmZmZmZhMDAwMDAzZmZmZmZmZmZmZmZmZmZmZmZmZmVwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDc5NgorICAgIC0weDEuZmZmZmZhMDAwMDA0MDAwMDAwMDAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTcKKyAgICAtMHgxLmZmZmZmYTAwMDAwM2ZmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTgKKyAgICAtMHgxLmZmZmZmYTAwMDAwNHAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDc5OQorICAgIC0weDEuZmZmZmZhMDAwMDA0cDEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODAwCisgICAgLTB4MS5mZmZmZmEwMDAwMDRwMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODAxCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDIKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODAzCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODA0CisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDgwNQorICAgIDB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMXAtMjIsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDgwNgorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMjIsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDcKKyAgICAweDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDBmZmZmZmVwLTIyLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDgKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmYwMDAwMDJwLTIyLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODA5CisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycC0yMiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgODEwCisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlcC0yMiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDgxMQorICAgIDB4MS5mZmZmZmVwLTIyLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODEyCisgICAgMHgxLmZmZmZmZXAtMjIsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODEzCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODE0CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTUKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTYKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTcKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmcC0yMiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDgxOAorICAgIC0weDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDFwLTIyLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDgxOQorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmYwMDAwMDJwLTIyLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODIwCisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMGZmZmZmZXAtMjIsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODIxCisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZXAtMjIsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjIKKyAgICAtMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycC0yMiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjMKKyAgICAtMHgxLmZmZmZmZXAtMjIsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODI0CisgICAgLTB4MS5mZmZmZmVwLTIyLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjUKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjYKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDgyNworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjgKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjkKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzAKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDgzMQorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDgzMgorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODMzCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgODM0CisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODM2CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzcKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODM4CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODM5CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDAKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODQxCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDg0MgorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDg0MworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDQKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDUKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgODQ2CisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgODQ3CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDgKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODQ5CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTAKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTEKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODUyCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDg1MworICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgODU0CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDg1NQorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODU2CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDg1NworICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgODU4CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTkKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjAKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODYxCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODYyCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDg2MworICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjQKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDg2NQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjYKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDg2NworICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjgKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDg2OQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODcwCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODcxCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzIKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODczCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzQKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzUKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzYKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgODc3CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODc4CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDg3OQorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDg4MAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODEKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODgyCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODMKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODQKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDg4NQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODg2CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODg3CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgODg4CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDg4OQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDg5MAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTEKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTIKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgODkzCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg5NAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODk1CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODk2CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTcKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTgKKyAgICAtMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3cDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDg5OQorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVwMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDkwMAorICAgIC0weDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDJwMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDEKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlcDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDIKKyAgICAtMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxcDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTAzCisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTA0CisgICAgLTB4MS5mZmZmZmVwMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDUKKyAgICAtMHgxLmZmZmZmZXAxLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDkwNgorICAgIC0weDEuZmZmZmZlcDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDkwNworICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDgKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDkKKyAgICAweDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTEwCisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTExCisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgOTEyCisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlcDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDkxMworICAgIDB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDkxNAorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZXAxLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTUKKyAgICAweDEuZmZmZmZlcDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTE2CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDkxNworICAgIDB4MS5mZmZmZmVwMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgOTE4CisgICAgMHgxLmZmZmZmZXAxLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgOTE5CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgOTIwCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjEKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjIKKyAgICAtMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3cDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDkyMworICAgIC0weDEuZmZmZmZhMDAwMDAzZmZmZmZmZmZmZmZmZmZmZmZmZmVwMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDkyNAorICAgIC0weDEuZmZmZmZhMDAwMDA0MDAwMDAwMDAwMDAwMDAwMDAwMDJwMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjUKKyAgICAtMHgxLmZmZmZmYTAwMDAwM2ZmZmZmZmZmZmZmZmZmZmZmZmZlcDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjYKKyAgICAtMHgxLmZmZmZmYTAwMDAwNDAwMDAwMDAwMDAwMDAwMDAwMDAxcDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTI3CisgICAgLTB4MS5mZmZmZmEwMDAwMDNmZmZmZmZmZmZmZmZmZmZmZmZmZnAxLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTI4CisgICAgLTB4MS5mZmZmZmEwMDAwMDRwMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjkKKyAgICAtMHgxLmZmZmZmYTAwMDAwNHAxLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDkzMAorICAgIC0weDEuZmZmZmZhMDAwMDA0cDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDkzMQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzIKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzMKKyAgICAweDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTM0CisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTM1CisgICAgMHgxLmZmZmZmYTAwMDAwNDAwMDAwMDAwMDAwMDAwMDAwMDAycDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgOTM2CisgICAgMHgxLmZmZmZmYTAwMDAwM2ZmZmZmZmZmZmZmZmZmZmZmZmZlcDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDkzNworICAgIDB4MS5mZmZmZmEwMDAwMDQwMDAwMDAwMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDkzOAorICAgIDB4MS5mZmZmZmEwMDAwMDNmZmZmZmZmZmZmZmZmZmZmZmZmZXAxLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzkKKyAgICAweDEuZmZmZmZhMDAwMDA0cDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTQwCisgICAgMHgxLmZmZmZmYTAwMDAwM2ZmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDk0MQorICAgIDB4MS5mZmZmZmEwMDAwMDRwMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgOTQyCisgICAgMHgxLmZmZmZmYTAwMDAwNHAxLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgOTQzCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgOTQ0CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDUKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDYKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDcKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmcC0yMiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDk0OAorICAgIC0weDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDFwLTIyLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDk0OQorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmYwMDAwMDJwLTIyLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTUwCisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMGZmZmZmZXAtMjIsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTUxCisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZXAtMjIsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTIKKyAgICAtMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycC0yMiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTMKKyAgICAtMHgxLmZmZmZmZXAtMjIsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgOTU0CisgICAgLTB4MS5mZmZmZmVwLTIyLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTUKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgOTU2CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgOTU3CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTgKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTkKKyAgICAweDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDFwLTIyLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDk2MAorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMjIsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDk2MQorICAgIDB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMGZmZmZmZXAtMjIsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTYyCisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmMDAwMDAycC0yMiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTYzCisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycC0yMiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjQKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVwLTIyLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjUKKyAgICAweDEuZmZmZmZlcC0yMiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgOTY2CisgICAgMHgxLmZmZmZmZXAtMjIsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjcKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgOTY4CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgOTY5CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzAKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTcxCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDk3MgorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDk3MworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzQKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzUKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTc2CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTc3CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzgKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgOTc5CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODAKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgOTgxCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTgyCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODMKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDk4NAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODUKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDk4NgorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODcKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDk4OAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODkKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTAKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgOTkxCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgOTkyCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTMKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTQKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTUKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgOTk2CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTk3CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDk5OAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDk5OQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAwCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEwMDEKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEwMDIKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAzCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwMDQKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwMDUKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwMDYKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA3CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA4CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTAwOQorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTAxMAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEwMTEKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEyCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEwMTMKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEwMTQKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTAxNQorICAgIDB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN3AxMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTAxNgorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE3CisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycDEsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwMTgKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVwMSwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwMTkKKyAgICAweDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTAyMAorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZXAxLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTAyMQorICAgIDB4MS5mZmZmZmVwMSwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTAyMgorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTAyMworICAgIDB4MS5mZmZmZmVwMSwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEwMjQKKyAgICAweDEuZmZmZmZlcDEsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTAyNQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEwMjYKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEwMjcKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI4CisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN3AxMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI5CisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZXAxLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTAzMAorICAgIC0weDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDJwMSwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMxCisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZXAxLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTAzMgorICAgIC0weDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMzCisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTAzNAorICAgIC0weDEuZmZmZmZlcDEsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTAzNQorICAgIC0weDEuZmZmZmZlcDEsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTAzNgorICAgIC0weDEuZmZmZmZlcDEsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEwMzcKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM4CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM5CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNDAKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNDEKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDRwLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwNDIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTA0MworICAgIDB4MS5mZmZmZmMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwOHAtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA0NAorICAgIC0weDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ1CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ2CisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTA0NworICAgIDAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTA0OAorICAgIDAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEwNDkKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTA1MAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEwNTEKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA1MgorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTA1NAorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDRwLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTA1NQorICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNTYKKyAgICAtMHgxLmZmZmZmYzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4cC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNTcKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEwNTgKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEwNTkKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MAorICAgIC0wLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEwNjIKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEwNjMKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA2NAorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA2NQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM3AtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTA2NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY3CisgICAgMHgxLmZmZmZmYzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3cC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY4CisgICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNjkKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFmZmZmZmNwLTE0OSwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEwNzAKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcxCisgICAgMC4wZiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcyCisgICAgMC4wZiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTA3MworICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc0CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTA3NQorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc2CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNzcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc4CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM3AtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc5CisgICAgMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA4MAorICAgIC0weDEuZmZmZmZjMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA4MQorICAgIDAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTA4MgorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFmZmZmZmNwLTE0OSwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTA4MworICAgIC0wLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg0CisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg1CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTA4NgorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTA4NworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg4CisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg5CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTA5MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkxCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA5MgorICAgIC0weDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkzCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0cC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDk0CisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTA5NQorICAgIDAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTA5NgorICAgIDAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEwOTcKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTA5OAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEwOTkKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTEwMAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTEwMgorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDExMDMKKyAgICAweDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTA0CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTEwNQorICAgIDAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTEwNgorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDRwLTE0OSwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTEwNworICAgIC0wLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTA4CisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTA5CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDExMTAKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTExCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEyCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDExMTMKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTExNAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDExMTUKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTExNgorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDExMTcKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTExOAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExMTkKKyAgICAwLjAsCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDExMjAKKyAgICAwLjAsCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIxCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIyCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDExMjMKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI0CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI1CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI2CisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDExMjcKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDExMjgKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTEyOQorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTEzMAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMxCisgICAgMC4wLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTEzMgorICAgIC0wLjAsCisgICAgMHgxLnAtMTI2LAorICAgIC0wLjBmLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTEzMworICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDExMzQKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTEzNQorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTEzNgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTEzNworICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDExMzgKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDExMzkKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQwCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQxCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTE0MgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDExNDMKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTE0NAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTE0NQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ2CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ3CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ4CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTE0OQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE1MAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDExNTEKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExNTIKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUzCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTE1NAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTU1CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTE1NgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTE1NworICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDExNTgKKyAgICAtMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3cDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDExNTkKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlcDEsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYwCisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMnAxLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDExNjEKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlcDEsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYyCisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDExNjMKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTY0CisgICAgLTB4MS5mZmZmZmVwMSwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTY1CisgICAgLTB4MS5mZmZmZmVwMSwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTY2CisgICAgLTB4MS5mZmZmZmVwMSwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTE2NworICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTY4CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTE2OQorICAgIDB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN3AxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcwCisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE3MQorICAgIDB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMnAxLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDExNzIKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVwMSwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTE3MworICAgIDB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDExNzQKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVwMSwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE3NQorICAgIDB4MS5mZmZmZmVwMSwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTc2CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExNzcKKyAgICAweDEuZmZmZmZlcDEsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDExNzgKKyAgICAweDEuZmZmZmZlcDEsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTc5CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDExODAKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgxCisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDExODIKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE4MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDExODQKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0cC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDExODUKKyAgICAweDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg2CisgICAgLTB4MS5mZmZmZmMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwOHAtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg3CisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg4CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg5CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDExOTAKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDExOTEKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDExOTIKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTE5MworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDExOTQKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE5NQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNHAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTE5NworICAgIDB4MS5mZmZmZmMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwOHAtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk4CisgICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE5OQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAwCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAxCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEyMDIKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEyMDMKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTIwNAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEyMDUKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTIwNgorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjA3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTIwOAorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNwLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTIwOQorICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEyMTAKKyAgICAtMHgxLmZmZmZmYzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3cC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEyMTEKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyMTIKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxZmZmZmZjcC0xNDksCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyMTMKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTIxNAorICAgIC0wLjBmLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTIxNQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTIxNgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjE3CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTIxOAorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjE5CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzcC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEyMjAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIxCisgICAgMHgxLmZmZmZmYzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3cC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEyMjIKKyAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIzCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxZmZmZmZjcC0xNDksCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyMjQKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyMjUKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTIyNgorICAgIDAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTIyNworICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjI4CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTIyOQorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMwCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyMzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMyCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTIzMworICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEyMzQKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjM1CisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjM2CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNHAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjM3CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEyMzgKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEyMzkKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEyNDAKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTI0MQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyNDIKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTI0MworICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTI0NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEyNDUKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEyNDYKKyAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQ3CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0cC0xNDksCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyNDgKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyNDkKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTI1MAorICAgIDAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTI1MQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTI1MgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUzCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTI1NAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTI1NQorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTI1NgorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjU3CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjU4CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEyNTkKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyNjAKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTI2MQorICAgIDAuMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEyNjIKKyAgICAtMC4wLAorICAgIC0weDEucC0xMjYsCisgICAgMC4wZiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEyNjMKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjY0CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjY1CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyNjYKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjY3CisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTI2OAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTI2OQorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEyNzAKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEyNzEKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcyCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjczCisgICAgMC4wLAorICAgIC0weDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEyNzQKKyAgICAwLjAsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEyNzUKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjc2CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjc3CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTI3OAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEyNzkKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTI4MAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEyODEKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTI4MgorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyODMKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTI4NAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjg1CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjg2CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTI4NworICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjg4CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjg5CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkwCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTI5MQorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTI5MgorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEyOTMKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyOTQKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjk1CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTI5NgorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjk3CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjk4CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEyOTkKKyAgICAweDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEzMDAKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTMwMQorICAgIDB4MS5mZmZmZmEwMDAwMDQwMDAwMDAwMDAwMDAwMDAwMDAwMnAxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAyCisgICAgMHgxLmZmZmZmYTAwMDAwM2ZmZmZmZmZmZmZmZmZmZmZmZmZlcDEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAzCisgICAgMHgxLmZmZmZmYTAwMDAwNDAwMDAwMDAwMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEzMDQKKyAgICAweDEuZmZmZmZhMDAwMDAzZmZmZmZmZmZmZmZmZmZmZmZmZmVwMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEzMDUKKyAgICAweDEuZmZmZmZhMDAwMDA0cDEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzMDYKKyAgICAweDEuZmZmZmZhMDAwMDAzZmZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzMDcKKyAgICAweDEuZmZmZmZhMDAwMDA0cDEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzA4CisgICAgMHgxLmZmZmZmYTAwMDAwNHAxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEzMDkKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEwCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzExCisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTMxMgorICAgIC0weDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTMxMworICAgIC0weDEuZmZmZmZhMDAwMDAzZmZmZmZmZmZmZmZmZmZmZmZmZmVwMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEzMTQKKyAgICAtMHgxLmZmZmZmYTAwMDAwNDAwMDAwMDAwMDAwMDAwMDAwMDAycDEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTMxNQorICAgIC0weDEuZmZmZmZhMDAwMDAzZmZmZmZmZmZmZmZmZmZmZmZmZmVwMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEzMTYKKyAgICAtMHgxLmZmZmZmYTAwMDAwNDAwMDAwMDAwMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTMxNworICAgIC0weDEuZmZmZmZhMDAwMDAzZmZmZmZmZmZmZmZmZmZmZmZmZmZwMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzMTgKKyAgICAtMHgxLmZmZmZmYTAwMDAwNHAxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzMTkKKyAgICAtMHgxLmZmZmZmYTAwMDAwNHAxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEzMjAKKyAgICAtMHgxLmZmZmZmYTAwMDAwNHAxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIxCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTMyMgorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTMyMworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzI0CisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzI1CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzcC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzI2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEzMjcKKyAgICAweDEuZmZmZmZjMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEzMjgKKyAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTMyOQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMWZmZmZmY3AtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTMzMAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzMzEKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEzMzIKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMzCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEzMzQKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzM1CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEzMzYKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTMzNworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEzMzgKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzcC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEzMzkKKyAgICAweDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQwCisgICAgLTB4MS5mZmZmZmMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQxCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQyCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMWZmZmZmY3AtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQzCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEzNDQKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEzNDUKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQ2CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQ3CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEzNDgKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEzNDkKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNwLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEzNTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTM1MQorICAgIDB4MS5mZmZmZmMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTM1MgorICAgIC0weDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUzCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxZmZmZmY4cC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzU0CisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTM1NQorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTM1NgorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEzNTcKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTM1OAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEzNTkKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTM2MAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTM2MgorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNwLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTM2MworICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEzNjQKKyAgICAtMHgxLmZmZmZmYzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3cC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEzNjUKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzNjYKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxZmZmZmY4cC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzNjcKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTM2OAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTM2OQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEzNzAKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEzNzEKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTM3MgorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTM3MworICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEzNzQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTM3NQorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEzNzYKKyAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTM3NworICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM3AtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTM3OAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzNzkKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEzODAKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgxCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEzODIKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgzCisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEzODQKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTM4NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEzODYKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzg3CisgICAgMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTM4OAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEzODkKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzOTAKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzcC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzOTEKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTM5MgorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTM5MworICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzk0CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTM5NQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTM5NgorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzk3CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEzOTgKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzk5CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE0MDAKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAxCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE0MDIKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAzCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDA0CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTQwNQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTQwNgorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDA3CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQwOAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQwOQorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTQxMAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDExCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEyCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE0MTMKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE0MTQKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTQxNQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE0MTYKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE0MTcKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDE4CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0MTkKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0MjAKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE0MjEKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIyCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIzCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQyNAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTQyNQorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE0MjYKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDI3CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE0MjgKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE0MjkKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQzMAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQzMQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTQzMgorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE0MzMKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE0MzQKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDM1CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDM2CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTQzNworICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE0MzgKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTQzOQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE0NDAKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE0NDEKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQyCisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN3AxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQzCisgICAgLTB4MS5mZmZmZmEwMDAwMDNmZmZmZmZmZmZmZmZmZmZmZmZmZXAxLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTQ0NAorICAgIC0weDEuZmZmZmZhMDAwMDA0MDAwMDAwMDAwMDAwMDAwMDAwMDJwMSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQ1CisgICAgLTB4MS5mZmZmZmEwMDAwMDNmZmZmZmZmZmZmZmZmZmZmZmZmZXAxLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ0NgorICAgIC0weDEuZmZmZmZhMDAwMDA0MDAwMDAwMDAwMDAwMDAwMDAwMDFwMSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQ3CisgICAgLTB4MS5mZmZmZmEwMDAwMDNmZmZmZmZmZmZmZmZmZmZmZmZmZnAxLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ0OAorICAgIC0weDEuZmZmZmZhMDAwMDA0cDEsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ0OQorICAgIC0weDEuZmZmZmZhMDAwMDA0cDEsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1MAorICAgIC0weDEuZmZmZmZhMDAwMDA0cDEsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE0NTEKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1MgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE0NTMKKyAgICAweDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ1NAorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0NTUKKyAgICAweDEuZmZmZmZhMDAwMDA0MDAwMDAwMDAwMDAwMDAwMDAwMDJwMSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDU2CisgICAgMHgxLmZmZmZmYTAwMDAwM2ZmZmZmZmZmZmZmZmZmZmZmZmZlcDEsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE0NTcKKyAgICAweDEuZmZmZmZhMDAwMDA0MDAwMDAwMDAwMDAwMDAwMDAwMDFwMSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDU4CisgICAgMHgxLmZmZmZmYTAwMDAwM2ZmZmZmZmZmZmZmZmZmZmZmZmZlcDEsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE0NTkKKyAgICAweDEuZmZmZmZhMDAwMDA0cDEsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2MAorICAgIDB4MS5mZmZmZmEwMDAwMDNmZmZmZmZmZmZmZmZmZmZmZmZmZnAxLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYxCisgICAgMHgxLmZmZmZmYTAwMDAwNHAxLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYyCisgICAgMHgxLmZmZmZmYTAwMDAwNHAxLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2MworICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDY0CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2NQorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDY2CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0NjcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDY4CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM3AtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDY5CisgICAgMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3MAorICAgIC0weDEuZmZmZmZjMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3MQorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3MgorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFmZmZmZmNwLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3MworICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDc0CisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDc1CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDc2CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE0NzcKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDc4CisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0NzkKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNwLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE0ODEKKyAgICAweDEuZmZmZmZjMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4MgorICAgIC0weDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE0ODMKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFmZmZmZmNwLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4NAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4NQorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDg2CisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDg3CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE0ODgKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDg5CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0OTAKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE0OTIKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzcC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE0OTMKKyAgICAweDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDk0CisgICAgLTB4MS5mZmZmZmMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDk1CisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDk2CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMWZmZmZmOHAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDk3CisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE0OTgKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE0OTkKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE1MDAKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTUwMQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1MDIKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTUwMworICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM3AtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTA0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTUwNQorICAgIDB4MS5mZmZmZmMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTA2CisgICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTUwNworICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMWZmZmZmOHAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTA4CisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTA5CisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE1MTAKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE1MTEKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTUxMgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE1MTMKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTUxNAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTE1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTUxNgorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1MTcKKyAgICAweDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTE4CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTUxOQorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTUyMAorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNwLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTUyMQorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIyCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIzCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTI0CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE1MjUKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTI2CisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1MjcKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1MjgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTI5CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMwCisgICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTUzMQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM3AtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMyCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMzCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE1MzQKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE1MzUKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE1MzYKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTUzNworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1MzgKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1MzkKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1NDAKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTU0MQorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTU0MgorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQzCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQ0CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE1NDUKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQ2CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQ3CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTU0OAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTU0OQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUwCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTU1MQorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1NTIKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1NTMKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTU0CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTU1CisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTU1NgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTU1NworICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTU4CisgICAgMC4wLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTU5CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTU2MAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTU2MQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1NjIKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYzCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1NjQKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTY1CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE1NjYKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTY3CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE1NjgKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTU2OQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTU3MAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE1NzEKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTU3MgorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTU3MworICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTU3NAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1NzUKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE1NzYKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTc3CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTc4CisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTU3OQorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE1ODAKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTU4MQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTU4MgorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgzCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTU4NAorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTg1CisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAxcC0yMiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTU4NgorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMjIsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTg3CisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwZmZmZmZlcC0yMiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTU4OAorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZjAwMDAwMnAtMjIsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTg5CisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycC0yMiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTU5MAorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZXAtMjIsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkxCisgICAgMHgxLmZmZmZmZXAtMjIsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkyCisgICAgMHgxLmZmZmZmZXAtMjIsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTU5MworICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE1OTQKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE1OTUKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTk2CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTU5NworICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTIyLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTU5OAorICAgIC0weDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDFwLTIyLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1OTkKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmMDAwMDAycC0yMiwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE2MDAKKyAgICAtMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwZmZmZmZlcC0yMiwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAxCisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZXAtMjIsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAyCisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMnAtMjIsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTYwMworICAgIC0weDEuZmZmZmZlcC0yMiwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjA0CisgICAgLTB4MS5mZmZmZmVwLTIyLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjA1CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTYwNgorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTYwNworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjA4CisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjA5CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTYxMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjExCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTYxMgorICAgIC0weDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEzCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0cC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjE0CisgICAgLTAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTYxNQorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTYxNgorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE2MTcKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTYxOAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE2MTkKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTYyMAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTYyMgorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE2MjMKKyAgICAweDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjI0CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTYyNQorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTYyNgorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDRwLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTYyNworICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjI4CisgICAgLTAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjI5CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTYzMAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTYzMQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMyCisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMzCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTYzNAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjM1CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTYzNgorICAgIC0weDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjM3CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzcC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjM4CisgICAgLTAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTYzOQorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTY0MAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE2NDEKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTY0MgorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE2NDMKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY0NAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQ1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTY0NgorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE2NDcKKyAgICAweDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQ4CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY0OQorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTY1MAorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNwLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTY1MQorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUyCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUzCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTY1NAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTY1NQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjU2CisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjU3CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTY1OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjU5CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY2MAorICAgIC0weDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYxCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTY2MgorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE2NjMKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE2NjQKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjY1CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE2NjYKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjY3CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE2NjgKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY2OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE2NzAKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcxCisgICAgMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY3MgorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE2NzMKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE2NzQKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjc1CisgICAgLTAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE2NzYKKyAgICAtMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE2NzcKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTY3OAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE2NzkKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDksCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE2ODAKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY4MQorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDksCisgICAgMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgyCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xNDksCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTY4MworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjg0CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY4NQorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjg2CisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTY4NworICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgMC4wZiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTY4OAorICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgMC4wZiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE2ODkKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE2OTAKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTY5MQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE2OTIKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE2OTMKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE2OTQKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTY5NQorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY5NgorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjk3CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjk4CisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE2OTkKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAwCisgICAgLTAuMCwKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAxCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTcwMgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAzCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzA0CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzA1CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTcwNgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTcwNworICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE3MDgKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3MDkKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEwCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTcxMQorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEyCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEzCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE3MTQKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE3MTUKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE3MTYKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzE3CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzE4CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTcxOQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTcyMAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3MjEKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIyCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE3MjMKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzI0CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzI1CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTcyNgorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE3MjcKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmcC0yMiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE3MjgKKyAgICAtMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAxcC0yMiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzI5CisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZjAwMDAwMnAtMjIsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMwCisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMGZmZmZmZXAtMjIsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTczMQorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVwLTIyLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTczMgorICAgIC0weDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDJwLTIyLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3MzMKKyAgICAtMHgxLmZmZmZmZXAtMjIsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTczNAorICAgIC0weDEuZmZmZmZlcC0yMiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTczNQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzM2CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTczNworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTczOAorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE3MzkKKyAgICAweDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDFwLTIyLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE3NDAKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTIyLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQxCisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwZmZmZmZlcC0yMiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQyCisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmMDAwMDAycC0yMiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTc0MworICAgIDB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMnAtMjIsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTc0NAorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZXAtMjIsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3NDUKKyAgICAweDEuZmZmZmZlcC0yMiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTc0NgorICAgIDB4MS5mZmZmZmVwLTIyLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTc0NworICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQ4CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTc0OQorICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUwCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE3NTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUyCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTc1MworICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE3NTQKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzU1CisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzU2CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNHAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzU3CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE3NTgKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE3NTkKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE3NjAKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTc2MQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE3NjIKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTc2MworICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTc2NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE3NjUKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE3NjYKKyAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzY3CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0cC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3NjgKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3NjkKKyAgICAwLjBmLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTc3MAorICAgIDAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTc3MQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcyCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTc3MworICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzc0CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE3NzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzc2CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTc3NworICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE3NzgKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzc5CisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgwCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM3AtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgxCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE3ODIKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE3ODMKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE3ODQKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTc4NQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE3ODYKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTc4NworICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTc4OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE3ODkKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE3OTAKKyAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkxCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzcC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3OTIKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3OTMKKyAgICAwLjBmLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTc5NAorICAgIDAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTc5NQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzk2CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTc5NworICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzk4CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE3OTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAwCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTgwMQorICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE4MDIKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAzCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODA0CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTgwNQorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODA2CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODA3CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODA4CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE4MDkKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEwCisgICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE4MTEKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE4MTIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEzCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODE0CisgICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTgxNQorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTgxNgorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTgxNworICAgIDAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODE4CisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODE5CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgMC4wZiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIwCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE4MjEKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIyCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIzCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDksCisgICAgMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODI0CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE4MjUKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE4MjYKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTgyNworICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTgyOAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODI5CisgICAgMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMC4wZiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTgzMAorICAgIC0wLjAsCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTgzMQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE4MzIKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE4MzMKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTgzNAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE4MzUKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODM2CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODM3CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTgzOAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTgzOQorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE4NDAKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE4NDEKKyAgICAwLjAsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTg0MgorICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTg0MworICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE4NDQKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE4NDUKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg0NgorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE4NDcKKyAgICAweDEucC0xMjYsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQ4CisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQ5CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg1MAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg1MQorICAgIDB4MS5wLTE0OSwKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE4NTIKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE4NTMKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTg1NAorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTg1NQorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODU2CisgICAgLUhVR0VfVkFMRiwKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTg1NworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg1OAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODU5CisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE4NjAKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYxCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE4NjIKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYzCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE4NjQKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODY1CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODY2CisgICAgLTAuMCwKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE4NjcKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZiwKKyAgICAweDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTg2OAorICAgIC1IVUdFX1ZBTEYsCisgICAgMC4wZiwKKyAgICAweDEucC0xMjYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE4NjkKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE4NzAKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg3MQorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcyCisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTg3MworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODc0CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg3NQorICAgIDB4MS5wLTE0OSwKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODc2CisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTg3NworICAgIDAuMCwKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTg3OAorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE4NzkKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE4ODAKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTg4MQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE4ODIKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE4ODMKKyAgICAweDEucC0xMjYsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE4ODQKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTg4NQorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg4NgorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODg3CisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODg4CisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE4ODkKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkwCisgICAgLTAuMCwKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkxCisgICAgSFVHRV9WQUxGLAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE4OTIKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkzCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODk0CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE4OTUKKyAgICAweDEucC0xMjYsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTg5NgorICAgIC0weDEucC0xMjYsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE4OTcKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg5OAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE4OTkKKyAgICAweDEucC0xNDksCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTkwMAorICAgIC0weDEucC0xNDksCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5MDEKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE5MDIKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAzCisgICAgSFVHRV9WQUxGLAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTA0CisgICAgLUhVR0VfVkFMRiwKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5MDUKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTA2CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTA3CisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTA4CisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE5MDkKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE5MTAKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTkxMQorICAgIDB4MS5wLTE0OSwKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTkxMgorICAgIC0weDEucC0xNDksCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEzCisgICAgMC4wLAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTkxNAorICAgIC0wLjAsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTkxNQorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTE2CisgICAgLUhVR0VfVkFMRiwKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTkxNworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTkxOAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTE5CisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE5MjAKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIxCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE5MjIKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIzCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5MjQKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTI1CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTI2CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTkyNworICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmLAorICAgIC0weDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTkyOAorICAgIC1IVUdFX1ZBTEYsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTI5CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTkzMAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTkzMQorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTkzMgorICAgIC0weDEucC0xMjYsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMzCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTM0CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE5MzUKKyAgICAweDEucC0xNDksCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5MzYKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTkzNworICAgIDAuMCwKKyAgICAwLjBmLAorICAgIC0weDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE5MzgKKyAgICAtMC4wLAorICAgIDAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE5MzkKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZiwKKyAgICAwLjBmLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5NDAKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYsCisgICAgMC4wZiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTk0MQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE5NDIKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE5NDMKKyAgICAweDEucC0xMjYsCisgICAgMC4wZiwKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE5NDQKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTk0NQorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTk0NgorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZiwKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQ3CisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQ4CisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmLAorICAgIDAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5NDkKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAwLjBmLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUwCisgICAgMC4wLAorICAgIDAuMGYsCisgICAgMC4wZiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE5NTEKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZiwKKyAgICAtMC4wZiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUyCisgICAgLUhVR0VfVkFMRiwKKyAgICAwLjBmLAorICAgIC0wLjBmLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUzCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE5NTQKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTU1CisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTk1NgorICAgIC0weDEucC0xMjYsCisgICAgMC4wZiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTk1NworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAwLjBmLAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE5NTgKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE5NTkKKyAgICAweDEucC0xNDksCisgICAgMC4wZiwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYwCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmLAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYxCisgICAgMC4wLAorICAgIDAuMGYsCisgICAgLTAuMGYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE5NjIKKyAgICAtMC4wLAorICAgIDAuMGYsCisgICAgLTAuMGYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYzCisgICAgSFVHRV9WQUxGLAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5NjQKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTY1CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTY2CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE5NjcKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTk2OAorICAgIC0weDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE5NjkKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTk3MAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE5NzEKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTk3MgorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5NzMKKyAgICAwLjAsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE5NzQKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTk3NQorICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTk3NgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTc3CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTk3OAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTk3OQorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTk4MAorICAgIC0weDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgxCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgyCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE5ODMKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5ODQKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTk4NQorICAgIDAuMCwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE5ODYKKyAgICAwLjAsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTk4NworICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTk4OAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTg5CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTk5MAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTk5MQorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTk5MgorICAgIC0weDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkzCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTk0CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE5OTUKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5OTYKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTk5NworICAgIDAuMCwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE5OTgKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE5OTkKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAwCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAxCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwMDIKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAzCisgICAgMHgxLnAtMTI2LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjAwNAorICAgIC0weDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjAwNQorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIwMDYKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIwMDcKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDA4CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDA5CisgICAgMC4wLAorICAgIC0wLjBmLAorICAgIC0weDEucC0xMjYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIwMTAKKyAgICAwLjAsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIwMTEKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIwMTIKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjAxMworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwMTQKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwMTUKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwMTYKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjAxNworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjAxOAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDE5CisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIwCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIwMjEKKyAgICAwLjAsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIyCisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIzCisgICAgSFVHRV9WQUxGLAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjAyNAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjAyNQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDI2CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjAyNworICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwMjgKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwMjkKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMwCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMxCisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjAzMgorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjAzMworICAgIDAuMCwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDM0CisgICAgMC4wLAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDM1CisgICAgSFVHRV9WQUxGLAorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDM2CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIwMzcKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDM4CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDM5CisgICAgMHgxLnAtMTI2LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQwCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwNDEKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIwNDIKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA0MworICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjA0NAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQ1CisgICAgMC4wLAorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjA0NgorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjA0NworICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIwNDgKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIwNDkKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA1MAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwNTEKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUyCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUzCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA1NAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA1NQorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIwNTYKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIwNTcKKyAgICAwLjAsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjA1OAorICAgIDAuMCwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjA1OQorICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZiwKKyAgICAwLjBmLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIwNjAKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmLAorICAgIDAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIwNjEKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA2MgorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwNjMKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYsCisgICAgMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDY0CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDY1CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmLAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA2NgorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA2NworICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIwNjgKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIDAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIwNjkKKyAgICAwLjAsCisgICAgLTAuMGYsCisgICAgMC4wZiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjA3MAorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgMC4wZiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIwNzEKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYsCisgICAgLTAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjA3MgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTAuMGYsCisgICAgLTAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIwNzMKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwNzQKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA3NQorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDc2CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjA3NworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZiwKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDc4CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA3OQorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgwCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjA4MQorICAgIDAuMCwKKyAgICAtMC4wZiwKKyAgICAtMC4wZiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjA4MgorICAgIDAuMCwKKyAgICAtMC4wZiwKKyAgICAtMC4wZiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIwODMKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDg0CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDg1CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA4NgorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwODcKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjA4OAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIwODkKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA5MAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIwOTEKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjA5MgorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkzCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDk0CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjA5NQorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDk2CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDk3CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDk4CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjA5OQorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjEwMAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMDEKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIxMDIKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAzCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjEwNAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTA1CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTA2CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMDcKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMDgKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIxMDkKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEwCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTExCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjExMgorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjExMworICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIxMTQKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTE1CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIxMTYKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIxMTcKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTE4CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMTkKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjEyMAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjEyMQorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIyCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIzCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIxMjQKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIxMjUKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIxMjYKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTI3CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjEyOAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjEyOQorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMzAKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMxCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIxMzIKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMzCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMzQKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTM1CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIxMzYKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjEzNworICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjEzOAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIxMzkKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE0MAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE0MQorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjE0MgorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIxNDMKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIxNDQKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQ1CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQ2CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjE0NworICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIxNDgKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjE0OQorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIxNTAKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxNTEKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUyCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjE1MworICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTU0CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE1NQorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTU2CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjE1NworICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTU4CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIxNTkKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIxNjAKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYxCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxNjIKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxNjMKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIxNjQKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTY1CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTY2CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE2NworICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjE2OAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIxNjkKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcwCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIxNzEKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcyCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTczCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE3NAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIxNzUKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjE3NgorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIxNzcKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE3OAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIxNzkKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjE4MAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgxCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgyCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjE4MworICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTg0CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTg1CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTg2CisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjE4NworICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE4OAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIxODkKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIxOTAKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkxCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjE5MgorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkzCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjE5NAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTk1CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTk2CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTk3CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjE5OAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE5OQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIyMDAKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIyMDEKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAyCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjIwMworICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjA0CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjA1CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyMDYKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyMDcKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIyMDgKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjA5CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEwCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjIxMQorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjIxMgorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIyMTMKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjE0CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIyMTUKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIyMTYKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjE3CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyMTgKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjIxOQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjIyMAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIxCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIyCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIyMjMKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIyMjQKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIyMjUKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjI2CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIyMjcKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjI4CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyMjkKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjIzMAorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjIzMQorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMyCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMzCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIyMzQKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIyMzUKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIyMzYKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjM3CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjIzOAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjM5CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQwCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQxCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjI0MgorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjI0MworICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIyNDQKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIyNDUKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQ2CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjI0NworICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQ4CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQ5CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyNTAKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyNTEKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIyNTIKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUzCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjU0CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjI1NQorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjI1NgorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIyNTcKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjU4CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIyNTkKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYwCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyNjEKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyNjIKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIyNjMKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjY0CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjY1CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjI2NgorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjI2NworICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIyNjgKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjY5CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIyNzAKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIyNzEKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjI3MgorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjI3MworICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjI3NAorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIyNzUKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIyNzYKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjc3CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjc4CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjI3OQorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIyODAKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjI4MQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIyODIKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjI4MworICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjI4NAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjI4NQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIyODYKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIyODcKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjg4CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjg5CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjI5MAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDIyOTEKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjI5MgorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjI5MworICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjk0CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjk1CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjk2CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjI5NworICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjI5OAorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIyOTkKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzMDAKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAxCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjMwMgorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9mbWF4X2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9mbWF4X2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNGJkMzhiCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2ZtYXhfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTA5MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMl90PGRvdWJsZSwgZG91YmxlLCBkb3VibGU+IGdfZm1heF9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEuNDBwMywKKyAgICAtMHgxLjRwMywKKyAgICAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuNDBwMywKKyAgICAtMHgxLjRwMywKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS40MHAzLAorICAgIDB4MS40cDMsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLjQwcDMsCisgICAgMHgxLjRwMywKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIC0weDEucC0xMDczLAorICAgIC0weDEuMHAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDczLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3MywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDczLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS5wLTEwNzMsCisgICAgLTB4MS4wcC0xMDczLAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEucC0xMDczLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLnAtMTA3MywKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLnAtMTA3MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLnAtMTA3MywKKyAgICAweDEuMHAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5wLTEwNzMsCisgICAgMHgxLjBwLTEwNzMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDczLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5wLTEwNzMsCisgICAgMHgxLjBwLTEwNzMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5wLTEwNzMsCisgICAgMHgxLjBwLTEwNzMsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDI0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDI0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDI0CisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEucC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDI0LAorICAgIDB4MS4wcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuMDAwMDAwMDAwMDAwMjBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS5wLTEwMjMsCisgICAgMHgxLjBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5wLTEwMjMsCisgICAgMHgxLjBwLTEwMjMsCisgICAgMHgxLjBwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS4wMDAwMDAwMDAwMDAyMHAtMTAyMywKKyAgICAweDEuMHAtMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcC0xMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDI0CisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuMDAwMDAwMDAwMDAwMjBwLTEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMsCisgICAgMHgxLjBwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS4wMDAwMDAwMDAwMDAyMHAtMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAtMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEucC01MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTEsCisgICAgMHgxLjBwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTUwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS5wLTUwLAorICAgIDB4MS4wcC01MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5wLTUwLAorICAgIDB4MS4wcC01MCwKKyAgICAweDEuMHAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtNTAsCisgICAgMHgxLjBwLTUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC01MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MCwKKyAgICAweDEuMHAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MAorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEucC0xMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEsCisgICAgMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS5wLTEwLAorICAgIDB4MS4wcC0xMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS5wLTEwLAorICAgIDB4MS4wcC0xMCwKKyAgICAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAsCisgICAgMHgxLjBwLTEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMCwKKyAgICAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS5wLTEsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS5wLTEsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAweDEuMHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEucDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5wMSwKKyAgICAweDEuMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS5wMSwKKyAgICAweDEuMHAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxLAorICAgIDB4MS4wcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEucDEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDksCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEucDEwLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS5wMTAsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMCwKKyAgICAweDEuMHAxMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMCwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS5wNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDksCisgICAgMHgxLjBwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0OSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLnA1MCwKKyAgICAweDEuMHA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0OQorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLnA1MCwKKyAgICAweDEuMHA1MCwKKyAgICAweDEuMHA1MAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDUwLAorICAgIDB4MS4wcDUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA1MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MCwKKyAgICAweDEuMHA1MAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS5wMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEucDEwMjMsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLnAxMDIzLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMDIzLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMjMsCisgICAgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIEhVR0VfVkFMLAorICAgIDAuMCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIEhVR0VfVkFMLAorICAgIC0wLjAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAweDEucC0xMDIyLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIDB4MS5wLTEwMjIsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEucC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgMHgxLnAtMTAyMiwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgMHgxLnAtMTA3NCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAweDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS5wLTEwNzQsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDAuMCwKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMC4wLAorICAgIC1IVUdFX1ZBTCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTAuMCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEucC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvZm1heGZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2ZtYXhmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMGY4MzE5Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2ZtYXhmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDExMDMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzJfdDxmbG9hdCwgZmxvYXQsIGZsb2F0PiBnX2ZtYXhmX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgMHgxLnAtMTQ4LAorICAgIDAuMCwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEuMDAwNjhlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS40MHAzLAorICAgIC0weDEuNDBwMywKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLjQwcDMsCisgICAgLTB4MS40MHAzLAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS40MHAzLAorICAgIDB4MS40MHAzLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuNDBwMywKKyAgICAweDEuNDBwMywKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAtMHgxLnAtMTQ4LAorICAgIC0weDEucC0xNDgsCisgICAgLTB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDgsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAwLjAsCisgICAgLTB4MS5wLTE0OCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDgsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEucC0xNDgsCisgICAgLTB4MS5wLTE0OCwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEucC0xNDksCisgICAgMC4wLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLnAtMTQ4LAorICAgIDAuMCwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ4LAorICAgIC0weDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDgsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuZmZmZmY4cC0xMjgsCisgICAgMHgxLmZmZmZmOHAtMTI4LAorICAgIDB4MS5mZmZmZjhwLTEyOAorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLnAtMTI3LAorICAgIDB4MS5mZmZmZjhwLTEyOCwKKyAgICAweDEucC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS4wMDAwMDRwLTEyNywKKyAgICAweDEuZmZmZmY4cC0xMjgsCisgICAgMHgxLjAwMDAwNHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEucC0xMjcsCisgICAgMHgxLnAtMTI3LAorICAgIDB4MS5mZmZmZjhwLTEyOAorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLnAtMTI3LAorICAgIDB4MS5wLTEyNywKKyAgICAweDEucC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS4wMDAwMDRwLTEyNywKKyAgICAweDEucC0xMjcsCisgICAgMHgxLjAwMDAwNHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEuMDAwMDA0cC0xMjcsCisgICAgMHgxLjAwMDAwNHAtMTI3LAorICAgIDB4MS5mZmZmZjhwLTEyOAorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLjAwMDAwNHAtMTI3LAorICAgIDB4MS4wMDAwMDRwLTEyNywKKyAgICAweDEucC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS4wMDAwMDRwLTEyNywKKyAgICAweDEuMDAwMDA0cC0xMjcsCisgICAgMHgxLjAwMDAwNHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuZmZmZmZlcC01MSwKKyAgICAweDEuZmZmZmZlcC01MSwKKyAgICAweDEuZmZmZmZlcC01MQorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLnAtNTAsCisgICAgMHgxLmZmZmZmZXAtNTEsCisgICAgMHgxLnAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS4wMDAwMDJwLTUwLAorICAgIDB4MS5mZmZmZmVwLTUxLAorICAgIDB4MS4wMDAwMDJwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEucC01MCwKKyAgICAweDEucC01MCwKKyAgICAweDEuZmZmZmZlcC01MQorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLnAtNTAsCisgICAgMHgxLnAtNTAsCisgICAgMHgxLnAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS4wMDAwMDJwLTUwLAorICAgIDB4MS5wLTUwLAorICAgIDB4MS4wMDAwMDJwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuMDAwMDAycC01MCwKKyAgICAweDEuMDAwMDAycC01MCwKKyAgICAweDEuZmZmZmZlcC01MQorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLjAwMDAwMnAtNTAsCisgICAgMHgxLjAwMDAwMnAtNTAsCisgICAgMHgxLnAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS4wMDAwMDJwLTUwLAorICAgIDB4MS4wMDAwMDJwLTUwLAorICAgIDB4MS4wMDAwMDJwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuZmZmZmZlcC0xMSwKKyAgICAweDEuZmZmZmZlcC0xMSwKKyAgICAweDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLnAtMTAsCisgICAgMHgxLmZmZmZmZXAtMTEsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS4wMDAwMDJwLTEwLAorICAgIDB4MS5mZmZmZmVwLTExLAorICAgIDB4MS4wMDAwMDJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEucC0xMCwKKyAgICAweDEucC0xMCwKKyAgICAweDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLnAtMTAsCisgICAgMHgxLnAtMTAsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS4wMDAwMDJwLTEwLAorICAgIDB4MS5wLTEwLAorICAgIDB4MS4wMDAwMDJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuMDAwMDAycC0xMCwKKyAgICAweDEuMDAwMDAycC0xMCwKKyAgICAweDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLjAwMDAwMnAtMTAsCisgICAgMHgxLjAwMDAwMnAtMTAsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS4wMDAwMDJwLTEwLAorICAgIDB4MS4wMDAwMDJwLTEwLAorICAgIDB4MS4wMDAwMDJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLnAtMSwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEucC0xLAorICAgIDB4MS5wLTEsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLnAtMSwKKyAgICAweDEucC0xLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLnAtMSwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLnAxLAorICAgIDB4MS5mZmZmZmVwMCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEucDEsCisgICAgMHgxLnAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLnAxLAorICAgIDB4MS5wMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAweDEucDEsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAweDEuMDAwMDAycDEsCisgICAgMHgxLjAwMDAwMnAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLjAwMDAwMnAxLAorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAweDEuMDAwMDAycDEsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEuZmZmZmZlcDksCisgICAgMHgxLmZmZmZmZXA5LAorICAgIDB4MS5mZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLnAxMCwKKyAgICAweDEuZmZmZmZlcDksCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLjAwMDAwMnAxMCwKKyAgICAweDEuZmZmZmZlcDksCisgICAgMHgxLjAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgMHgxLnAxMCwKKyAgICAweDEucDEwLAorICAgIDB4MS5mZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLnAxMCwKKyAgICAweDEucDEwLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS4wMDAwMDJwMTAsCisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuMDAwMDAycDEwLAorICAgIDB4MS4wMDAwMDJwMTAsCisgICAgMHgxLmZmZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuMDAwMDAycDEwLAorICAgIDB4MS4wMDAwMDJwMTAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLjAwMDAwMnAxMCwKKyAgICAweDEuMDAwMDAycDEwLAorICAgIDB4MS4wMDAwMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS5mZmZmZmVwNDksCisgICAgMHgxLmZmZmZmZXA0OSwKKyAgICAweDEuZmZmZmZlcDQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEucDUwLAorICAgIDB4MS5mZmZmZmVwNDksCisgICAgMHgxLnA1MAorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLjAwMDAwMnA1MCwKKyAgICAweDEuZmZmZmZlcDQ5LAorICAgIDB4MS4wMDAwMDJwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5wNTAsCisgICAgMHgxLnA1MCwKKyAgICAweDEuZmZmZmZlcDQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEucDUwLAorICAgIDB4MS5wNTAsCisgICAgMHgxLnA1MAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjAwMDAwMnA1MCwKKyAgICAweDEucDUwLAorICAgIDB4MS4wMDAwMDJwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS4wMDAwMDJwNTAsCisgICAgMHgxLjAwMDAwMnA1MCwKKyAgICAweDEuZmZmZmZlcDQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuMDAwMDAycDUwLAorICAgIDB4MS4wMDAwMDJwNTAsCisgICAgMHgxLnA1MAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLjAwMDAwMnA1MCwKKyAgICAweDEuMDAwMDAycDUwLAorICAgIDB4MS4wMDAwMDJwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS5wMTI3LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5wMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLjAwMDAwMnAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLjAwMDAwMnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEucDEyNywKKyAgICAweDEucDEyNywKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5wMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjAwMDAwMnAxMjcsCisgICAgMHgxLnAxMjcsCisgICAgMHgxLjAwMDAwMnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuMDAwMDAycDEyNywKKyAgICAweDEuMDAwMDAycDEyNywKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS4wMDAwMDJwMTI3LAorICAgIDB4MS4wMDAwMDJwMTI3LAorICAgIDB4MS5wMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjAwMDAwMnAxMjcsCisgICAgMHgxLjAwMDAwMnAxMjcsCisgICAgMHgxLjAwMDAwMnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMC4wLAorICAgIDAuMGYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIDAuMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMC4wLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2ZtaW5faW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2ZtaW5faW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEyNTM4ZjUKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvZm1pbl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxMDkzIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8yX3Q8ZG91YmxlLCBkb3VibGUsIGRvdWJsZT4gZ19mbWluX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS40MHAzLAorICAgIC0weDEuNHAzLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0weDEuNDBwMywKKyAgICAtMHgxLjRwMywKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIC0weDEuNDBwMywKKyAgICAweDEuNHAzLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS40MHAzLAorICAgIDB4MS40cDMsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMHgxLnAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzMsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIC0weDEucC0xMDczLAorICAgIC0weDEuMHAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgLTB4MS5wLTEwNzMsCisgICAgLTB4MS4wcC0xMDczLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgLTB4MS5wLTEwNzMsCisgICAgLTB4MS4wcC0xMDczLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIC0weDEucC0xMDczLAorICAgIC0weDEuMHAtMTA3MywKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAtMHgxLnAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIC0weDEucC0xMDczLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAtMHgxLnAtMTA3MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAtMHgxLnAtMTA3MywKKyAgICAweDEuMHAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDczLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3MywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDczLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDczLAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDI0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDI0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDI0CisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEuZmZmZmZmZmZmZmZmYzBwLTEwMjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQsCisgICAgMHgxLjBwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDI0LAorICAgIDB4MS4wcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDI0CisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEucC0xMDIzLAorICAgIDB4MS4wcC0xMDIzLAorICAgIDB4MS4wcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEucC0xMDIzLAorICAgIDB4MS4wcC0xMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuZmZmZmZmZmZmZmZmYzBwLTEwMjQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5wLTEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwLTEwMjMsCisgICAgMHgxLjBwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS4wMDAwMDAwMDAwMDAyMHAtMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAtMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01MSwKKyAgICAweDEuMHAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MAorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC01MSwKKyAgICAweDEuMHAtNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEucC01MCwKKyAgICAweDEuMHAtNTAsCisgICAgMHgxLjBwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEucC01MCwKKyAgICAweDEuMHAtNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5wLTUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MCwKKyAgICAweDEuMHAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MAorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTExLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMSwKKyAgICAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTExLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xMSwKKyAgICAweDEuMHAtMTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEucC0xMCwKKyAgICAweDEuMHAtMTAsCisgICAgMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEucC0xMCwKKyAgICAweDEuMHAtMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTExLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS5wLTEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMCwKKyAgICAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0yLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEucC0xLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEucC0xLAorICAgIDB4MS4wcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAweDEucDEsCisgICAgMHgxLjBwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEucDEsCisgICAgMHgxLjBwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS5wMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5LAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOSwKKyAgICAweDEuMHAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEucDEwLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEucDEwLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAweDEucDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA0OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0OQorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDQ5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQ5LAorICAgIDB4MS4wcDUwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA0OSwKKyAgICAweDEuMHA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0OQorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLnA1MCwKKyAgICAweDEuMHA1MCwKKyAgICAweDEuMHA1MAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLnA1MCwKKyAgICAweDEuMHA1MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MAorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDQ5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEucDUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwLAorICAgIDB4MS4wcDUwCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuMHAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjIsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLnAxMDIzLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS5wMTAyMywKKyAgICAweDEuMHAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEucDEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMywKKyAgICAweDEuMHAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLnAtMTAyMiwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS5wLTEwNzQsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAwLjAsCisgICAgSFVHRV9WQUwsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgLTAuMCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgLTB4MS5wLTEwNzQsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgLTB4MS5wLTEwMjIsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIC0weDEucC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIC0weDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0weDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS5wLTEwNzQsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIC0weDEucC0xMDIyLAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgLUhVR0VfVkFMLAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIC0weDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIC1IVUdFX1ZBTCwKKyAgICAtMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgLTB4MS5wLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvZm1pbmZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2ZtaW5mX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNTFhZTliCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2ZtaW5mX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDExMDMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzJfdDxmbG9hdCwgZmxvYXQsIGZsb2F0PiBnX2ZtaW5mX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLmZmZjJlMnAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmYyZTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS40MHAzLAorICAgIC0weDEuNDBwMywKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgLTB4MS40MHAzLAorICAgIC0weDEuNDBwMywKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMHgxLjQwcDMsCisgICAgMHgxLjQwcDMsCisgICAgLTB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS40MHAzLAorICAgIDB4MS40MHAzLAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIC0weDEucC0xNDgsCisgICAgLTB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIC0weDEucC0xNDgsCisgICAgLTB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIC0weDEucC0xNDgsCisgICAgLTB4MS5wLTE0OCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgLTB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgLTB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgLTB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAtMHgxLnAtMTQ4LAorICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAtMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAtMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ4LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLmZmZmZmOHAtMTI4LAorICAgIDB4MS5mZmZmZjhwLTEyOCwKKyAgICAweDEuZmZmZmY4cC0xMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS5mZmZmZjhwLTEyOCwKKyAgICAweDEuZmZmZmY4cC0xMjgsCisgICAgMHgxLnAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuZmZmZmY4cC0xMjgsCisgICAgMHgxLmZmZmZmOHAtMTI4LAorICAgIDB4MS4wMDAwMDRwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLmZmZmZmOHAtMTI4LAorICAgIDB4MS5wLTEyNywKKyAgICAweDEuZmZmZmY4cC0xMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS5wLTEyNywKKyAgICAweDEucC0xMjcsCisgICAgMHgxLnAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEucC0xMjcsCisgICAgMHgxLnAtMTI3LAorICAgIDB4MS4wMDAwMDRwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLmZmZmZmOHAtMTI4LAorICAgIDB4MS4wMDAwMDRwLTEyNywKKyAgICAweDEuZmZmZmY4cC0xMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS5wLTEyNywKKyAgICAweDEuMDAwMDA0cC0xMjcsCisgICAgMHgxLnAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuMDAwMDA0cC0xMjcsCisgICAgMHgxLjAwMDAwNHAtMTI3LAorICAgIDB4MS4wMDAwMDRwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLmZmZmZmZXAtNTEsCisgICAgMHgxLmZmZmZmZXAtNTEsCisgICAgMHgxLmZmZmZmZXAtNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS5mZmZmZmVwLTUxLAorICAgIDB4MS5mZmZmZmVwLTUxLAorICAgIDB4MS5wLTUwCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEuZmZmZmZlcC01MSwKKyAgICAweDEuZmZmZmZlcC01MSwKKyAgICAweDEuMDAwMDAycC01MAorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgMHgxLmZmZmZmZXAtNTEsCisgICAgMHgxLnAtNTAsCisgICAgMHgxLmZmZmZmZXAtNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIDB4MS5wLTUwLAorICAgIDB4MS5wLTUwLAorICAgIDB4MS5wLTUwCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEucC01MCwKKyAgICAweDEucC01MCwKKyAgICAweDEuMDAwMDAycC01MAorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLmZmZmZmZXAtNTEsCisgICAgMHgxLjAwMDAwMnAtNTAsCisgICAgMHgxLmZmZmZmZXAtNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS5wLTUwLAorICAgIDB4MS4wMDAwMDJwLTUwLAorICAgIDB4MS5wLTUwCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuMDAwMDAycC01MCwKKyAgICAweDEuMDAwMDAycC01MCwKKyAgICAweDEuMDAwMDAycC01MAorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmZmZmZmZXAtMTEsCisgICAgMHgxLmZmZmZmZXAtMTEsCisgICAgMHgxLmZmZmZmZXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS5mZmZmZmVwLTExLAorICAgIDB4MS5mZmZmZmVwLTExLAorICAgIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuZmZmZmZlcC0xMSwKKyAgICAweDEuZmZmZmZlcC0xMSwKKyAgICAweDEuMDAwMDAycC0xMAorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLmZmZmZmZXAtMTEsCisgICAgMHgxLnAtMTAsCisgICAgMHgxLmZmZmZmZXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS5wLTEwLAorICAgIDB4MS5wLTEwLAorICAgIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEucC0xMCwKKyAgICAweDEucC0xMCwKKyAgICAweDEuMDAwMDAycC0xMAorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLmZmZmZmZXAtMTEsCisgICAgMHgxLjAwMDAwMnAtMTAsCisgICAgMHgxLmZmZmZmZXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5wLTEwLAorICAgIDB4MS4wMDAwMDJwLTEwLAorICAgIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuMDAwMDAycC0xMCwKKyAgICAweDEuMDAwMDAycC0xMCwKKyAgICAweDEuMDAwMDAycC0xMAorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEucC0xLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS5wLTEsCisgICAgMHgxLnAtMSwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAweDEucC0xLAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMCwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5mZmZmZmVwMCwKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5wMSwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS5wMSwKKyAgICAweDEucDEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEucDEsCisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS5wMSwKKyAgICAweDEuMDAwMDAycDEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuMDAwMDAycDEsCisgICAgMHgxLjAwMDAwMnAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLmZmZmZmZXA5LAorICAgIDB4MS5mZmZmZmVwOSwKKyAgICAweDEuZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS5mZmZmZmVwOSwKKyAgICAweDEuZmZmZmZlcDksCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLmZmZmZmZXA5LAorICAgIDB4MS5mZmZmZmVwOSwKKyAgICAweDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEuZmZmZmZlcDksCisgICAgMHgxLnAxMCwKKyAgICAweDEuZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS5wMTAsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAweDEucDEwLAorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLmZmZmZmZXA5LAorICAgIDB4MS4wMDAwMDJwMTAsCisgICAgMHgxLmZmZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEucDEwLAorICAgIDB4MS4wMDAwMDJwMTAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLjAwMDAwMnAxMCwKKyAgICAweDEuMDAwMDAycDEwLAorICAgIDB4MS4wMDAwMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS5mZmZmZmVwNDksCisgICAgMHgxLmZmZmZmZXA0OSwKKyAgICAweDEuZmZmZmZlcDQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZmZmZmZlcDQ5LAorICAgIDB4MS5mZmZmZmVwNDksCisgICAgMHgxLnA1MAorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLmZmZmZmZXA0OSwKKyAgICAweDEuZmZmZmZlcDQ5LAorICAgIDB4MS4wMDAwMDJwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5mZmZmZmVwNDksCisgICAgMHgxLnA1MCwKKyAgICAweDEuZmZmZmZlcDQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEucDUwLAorICAgIDB4MS5wNTAsCisgICAgMHgxLnA1MAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLnA1MCwKKyAgICAweDEucDUwLAorICAgIDB4MS4wMDAwMDJwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS5mZmZmZmVwNDksCisgICAgMHgxLjAwMDAwMnA1MCwKKyAgICAweDEuZmZmZmZlcDQ5CisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEucDUwLAorICAgIDB4MS4wMDAwMDJwNTAsCisgICAgMHgxLnA1MAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLjAwMDAwMnA1MCwKKyAgICAweDEuMDAwMDAycDUwLAorICAgIDB4MS4wMDAwMDJwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5wMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLjAwMDAwMnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEucDEyNywKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5wMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLnAxMjcsCisgICAgMHgxLnAxMjcsCisgICAgMHgxLjAwMDAwMnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEuMDAwMDAycDEyNywKKyAgICAweDEuZmZmZmZlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5wMTI3LAorICAgIDB4MS4wMDAwMDJwMTI3LAorICAgIDB4MS5wMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjAwMDAwMnAxMjcsCisgICAgMHgxLjAwMDAwMnAxMjcsCisgICAgMHgxLjAwMDAwMnAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAwLjAsCisgICAgSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAtMC4wLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIC0weDEucC0xNDksCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAtMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAwLjAsCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAtMC4wLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMC4wLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDAuMCwKKyAgICAwLjBmLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIC0weDEucC0xNDksCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMC4wZiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDkKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9mbW9kX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9mbW9kX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMTVjNzdhCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2Ztb2RfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTMyOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMl90PGRvdWJsZSwgZG91YmxlLCBkb3VibGU+IGdfZm1vZF9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEuNTdlODkzMjQ5MmMwcC0xMCwKKyAgICAtMHgxLjIwMGFkNjg1ZTdmNDRwMywKKyAgICAtMHgxLjAwMDAxNGFiZDQ0NmRwMAorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAtMHgxLmQ3ZGJmNDg3ZmZkMHAtMTEsCisgICAgLTB4MS4zMzMzMzMzMzMzMzM0cC0xLAorICAgIDB4MS4xMGE4MzU4NTY0OWY2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS5wLTEwNzIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQxLAorICAgIDB4MS40cC0xMDcyCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS5wLTEwNzIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMTcsCisgICAgMHgxLjRwLTEwNzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLmZjODQyMGU4OGNiZnAxOCwKKyAgICAweDEuMTFmNzgzZWU4OWIwOHA5OSwKKyAgICAweDEuMGFiZTFhMjlkOGU4Y3AxOQorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuNTBwLTYxLAorICAgIDB4MS41NTU1NTU1NTU1NTUycC0xMiwKKyAgICAweDEuMTExMTExMTExMTEwNnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTExNywKKyAgICAtMHgxLjBwLTExNworICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTE3LAorICAgIDB4MS4wcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMC4wLAorICAgIDB4MS4wcC0xMTcsCisgICAgLTB4MS4wcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMC4wLAorICAgIDB4MS4wcC0xMTcsCisgICAgMHgxLjBwLTExNworICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgLTB4MS5wLTExNywKKyAgICAtMHgxLjBwLTExNywKKyAgICAweDEuMHAxNQorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgLTB4MS5wLTExNywKKyAgICAtMHgxLjBwLTExNywKKyAgICAweDEuMHAxNgorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLnAtMTE3LAorICAgIDB4MS4wcC0xMTcsCisgICAgMHgxLjBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5wLTExNywKKyAgICAweDEuMHAtMTE3LAorICAgIDB4MS4wcDE2CisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAtMHgxLnAtMTE3LAorICAgIC0weDEuMHAtMTE3LAorICAgIDB4MS4wcDExNworICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgLTB4MS5wLTExNywKKyAgICAtMHgxLjBwLTExNywKKyAgICAweDEuMHAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5wLTExNywKKyAgICAweDEuMHAtMTE3LAorICAgIDB4MS4wcDExNworICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLnAtMTE3LAorICAgIDB4MS4wcC0xMTcsCisgICAgMHgxLjBwMTE4CisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAwLjAsCisgICAgMHgxLjBwMTUsCisgICAgLTB4MS4wcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDAuMCwKKyAgICAweDEuMHAxNSwKKyAgICAweDEuMHAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAwLjAsCisgICAgMHgxLjBwMTYsCisgICAgLTB4MS4wcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDAuMCwKKyAgICAweDEuMHAxNiwKKyAgICAweDEuMHAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAwLjAsCisgICAgMHgxLjBwMTUsCisgICAgMHgxLjBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS5wMTUsCisgICAgMHgxLjBwMTUsCisgICAgMHgxLjBwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDAuMCwKKyAgICAweDEuMHAxNiwKKyAgICAweDEuMHAxNQorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMC4wLAorICAgIDB4MS4wcDE2LAorICAgIDB4MS4wcDE2CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEucDE1LAorICAgIDB4MS4wcDE1LAorICAgIDB4MS4wcDExNworICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLnAxNSwKKyAgICAweDEuMHAxNSwKKyAgICAweDEuMHAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5wMTYsCisgICAgMHgxLjBwMTYsCisgICAgMHgxLjBwMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEucDE2LAorICAgIDB4MS4wcDE2LAorICAgIDB4MS4wcDExOAorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMC4wLAorICAgIDB4MS4wcDExNywKKyAgICAtMHgxLjBwLTExNworICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMC4wLAorICAgIDB4MS4wcDExNywKKyAgICAweDEuMHAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAwLjAsCisgICAgMHgxLjBwMTE4LAorICAgIC0weDEuMHAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAwLjAsCisgICAgMHgxLjBwMTE4LAorICAgIDB4MS4wcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDAuMCwKKyAgICAweDEuMHAxMTcsCisgICAgMHgxLjBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDAuMCwKKyAgICAweDEuMHAxMTcsCisgICAgMHgxLjBwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDAuMCwKKyAgICAweDEuMHAxMTgsCisgICAgMHgxLjBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDAuMCwKKyAgICAweDEuMHAxMTgsCisgICAgMHgxLjBwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDAuMCwKKyAgICAweDEuMHAxMTcsCisgICAgMHgxLjBwMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEucDExNywKKyAgICAweDEuMHAxMTcsCisgICAgMHgxLjBwMTE4CisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAwLjAsCisgICAgMHgxLjBwMTE4LAorICAgIDB4MS4wcDExNworICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMC4wLAorICAgIDB4MS4wcDExOCwKKyAgICAweDEuMHAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDAuMCwKKyAgICAweDEuOXA2LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5wMCwKKyAgICAweDEuOXA2LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS5wMiwKKyAgICAweDEuOXA2LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5wMCwKKyAgICAweDEuOTQwcDYsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLnAxLAorICAgIDB4MS45NDBwNiwKKyAgICAweDEuNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuNDBwMiwKKyAgICAweDEuOTQwcDYsCisgICAgMHgxLjhwMworICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLnAxLAorICAgIDB4MS45ODBwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuODBwMSwKKyAgICAweDEuOTgwcDYsCisgICAgMHgxLjZwMworICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjgwcDIsCisgICAgMHgxLjk4MHA2LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS44MHAxLAorICAgIDB4MS45YzBwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEucDIsCisgICAgMHgxLjljMHA2LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS5jMHAyLAorICAgIDB4MS45YzBwNiwKKyAgICAweDEuOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEucDIsCisgICAgMHgxLmFwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuNDBwMiwKKyAgICAweDEuYXA2LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS5wMywKKyAgICAweDEuYXA2LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS40MHAyLAorICAgIDB4MS5hNDBwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuODBwMiwKKyAgICAweDEuYTQwcDYsCisgICAgMHgxLjZwMworICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLjIwcDMsCisgICAgMHgxLmE0MHA2LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS44MHAyLAorICAgIDB4MS5hODBwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuYzBwMiwKKyAgICAweDEuYTgwcDYsCisgICAgMHgxLjZwMworICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLjQwcDMsCisgICAgMHgxLmE4MHA2LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS5jMHAyLAorICAgIDB4MS5hYzBwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEucDMsCisgICAgMHgxLmFjMHA2LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS42MHAzLAorICAgIDB4MS5hYzBwNiwKKyAgICAweDEuOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEucDMsCisgICAgMHgxLmJwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEuMjBwMywKKyAgICAweDEuYnA2LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDAuMCwKKyAgICAweDEuYnA2LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS4yMHAzLAorICAgIDB4MS5iNDBwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuNDBwMywKKyAgICAweDEuYjQwcDYsCisgICAgMHgxLjZwMworICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLnAwLAorICAgIDB4MS5iNDBwNiwKKyAgICAweDEuOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAwLjAsCisgICAgMHgxLmI4MHA2LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDAuMCwKKyAgICAweDEuYjgwcDYsCisgICAgMHgxLjZwMworICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLnAxLAorICAgIDB4MS5iODBwNiwKKyAgICAweDEuOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLnAtNTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuODBwLTUyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgLTAuMCwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgLTB4MS5wLTUzLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIC0weDEuODBwLTUyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLnAtNTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAtMHgxLnAtNTMsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIC0wLjAsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5wMCwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAwLjAsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLnAtNTMsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLnAtNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS44MHAtNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLnAtNTMsCisgICAgMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDAuMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjgwcC01MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLnAtNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuODBwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTB4MS5wLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUxLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgLTB4MS5wLTIsCisgICAgLTB4MS4wcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTAuMCwKKyAgICAtMHgxLjBwNTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIC0weDEuMDAwMDAwMDAwMDAwMjBwLTEsCisgICAgLTB4MS4wcDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEuODBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDQwcC0yLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMHgxLnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLjAwMDAwMDAwMDAwMDQwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAweDEucC0xLAorICAgIDB4MS4wcDUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMC4wLAorICAgIDB4MS4wcDUyLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAweDEucC01MiwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUyLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuODBwLTUyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUzLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgLTB4MS5wLTUzLAorICAgIC0weDEuMHA1MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0wLjAsCisgICAgLTB4MS4wcDUzLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLnAtNTEsCisgICAgLTB4MS4wcDUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUyLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAtMHgxLjgwcC01MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIDB4MS44MHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLjAwMDAwMDAwMDAwMDQwcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAweDEucC0yLAorICAgIDB4MS4wcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMC4wLAorICAgIDB4MS4wcDUxLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAweDEuMDAwMDAwMDAwMDAwMjBwLTEsCisgICAgMHgxLjBwNTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS44MHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMHgxLjAwMDAwMDAwMDAwMDQwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEucC0xLAorICAgIDB4MS4wcDUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgMC4wLAorICAgIDB4MS4wcDUyLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEucC01MiwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUyLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTMsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAtMHgxLjgwcC01MiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTB4MS5wLTUxLAorICAgIC0weDEuMHA1MywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIC0wLjAsCisgICAgLTB4MS4wcDUzLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgLTB4MS5wLTUzLAorICAgIC0weDEuMHA1MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAtMHgxLjgwcC01MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MiwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIDAuMCwKKyAgICAwLjAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAtMHgxLjhmZDkwNDc5MDk0MzIwcC05NjQsCisgICAgLTB4MS4zOThkZDA2OTAxN2ZmcDc1OSwKKyAgICAtMHgxLmIxNDhlMzZmZGVjMmZwLTk2NAorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2Ztb2RmX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9mbW9kZl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzJiYTU4MwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9mbW9kZl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxMjk4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8yX3Q8ZmxvYXQsIGZsb2F0LCBmbG9hdD4gZ19mbW9kZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIDB4MS5mYnAtMTEsCisgICAgMHgxLjhlNzdiNnAxMiwKKyAgICAtMHgxLjAxNDBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0wLjAsCisgICAgLTB4MS5wLTExNywKKyAgICAtMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIC0wLjAsCisgICAgLTB4MS5wLTExNywKKyAgICAweDEucC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMC4wLAorICAgIDB4MS5wLTExNywKKyAgICAtMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDAuMCwKKyAgICAweDEucC0xMTcsCisgICAgMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIC0weDEucC0xMTcsCisgICAgLTB4MS5wLTExNywKKyAgICAweDEucDE1CisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIC0weDEucC0xMTcsCisgICAgLTB4MS5wLTExNywKKyAgICAweDEucDE2CisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS5wLTExNywKKyAgICAweDEucC0xMTcsCisgICAgMHgxLnAxNQorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEucC0xMTcsCisgICAgMHgxLnAtMTE3LAorICAgIDB4MS5wMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgLTB4MS5wLTExNywKKyAgICAtMHgxLnAtMTE3LAorICAgIDB4MS5wMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAtMHgxLnAtMTE3LAorICAgIC0weDEucC0xMTcsCisgICAgMHgxLnAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5wLTExNywKKyAgICAweDEucC0xMTcsCisgICAgMHgxLnAxMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5wLTExNywKKyAgICAweDEucC0xMTcsCisgICAgMHgxLnAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDAuMCwKKyAgICAweDEucDE1LAorICAgIC0weDEucC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDAuMCwKKyAgICAweDEucDE1LAorICAgIDB4MS5wLTExNworICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMC4wLAorICAgIDB4MS5wMTYsCisgICAgLTB4MS5wLTExNworICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMC4wLAorICAgIDB4MS5wMTYsCisgICAgMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAwLjAsCisgICAgMHgxLnAxNSwKKyAgICAweDEucDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEucDE1LAorICAgIDB4MS5wMTUsCisgICAgMHgxLnAxNgorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMC4wLAorICAgIDB4MS5wMTYsCisgICAgMHgxLnAxNQorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMC4wLAorICAgIDB4MS5wMTYsCisgICAgMHgxLnAxNgorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLnAxNSwKKyAgICAweDEucDE1LAorICAgIDB4MS5wMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEucDE1LAorICAgIDB4MS5wMTUsCisgICAgMHgxLnAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS5wMTYsCisgICAgMHgxLnAxNiwKKyAgICAweDEucDExNworICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLnAxNiwKKyAgICAweDEucDE2LAorICAgIDB4MS5wMTE4CisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAwLjAsCisgICAgMHgxLnAxMTcsCisgICAgLTB4MS5wLTExNworICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMC4wLAorICAgIDB4MS5wMTE3LAorICAgIDB4MS5wLTExNworICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMC4wLAorICAgIDB4MS5wMTE4LAorICAgIC0weDEucC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDAuMCwKKyAgICAweDEucDExOCwKKyAgICAweDEucC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDAuMCwKKyAgICAweDEucDExNywKKyAgICAweDEucDE1CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAwLjAsCisgICAgMHgxLnAxMTcsCisgICAgMHgxLnAxNgorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMC4wLAorICAgIDB4MS5wMTE4LAorICAgIDB4MS5wMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDAuMCwKKyAgICAweDEucDExOCwKKyAgICAweDEucDE2CisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAwLjAsCisgICAgMHgxLnAxMTcsCisgICAgMHgxLnAxMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS5wMTE3LAorICAgIDB4MS5wMTE3LAorICAgIDB4MS5wMTE4CisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAwLjAsCisgICAgMHgxLnAxMTgsCisgICAgMHgxLnAxMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDAuMCwKKyAgICAweDEucDExOCwKKyAgICAweDEucDExOAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMC4wLAorICAgIDB4MS45MHA2LAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEucDAsCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5wMiwKKyAgICAweDEuOTBwNiwKKyAgICAweDEuODBwMworICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLnAwLAorICAgIDB4MS45NHA2LAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEucDEsCisgICAgMHgxLjk0cDYsCisgICAgMHgxLjYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS40MHAyLAorICAgIDB4MS45NHA2LAorICAgIDB4MS44MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEucDEsCisgICAgMHgxLjk4cDYsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS44MHAxLAorICAgIDB4MS45OHA2LAorICAgIDB4MS42MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuODBwMiwKKyAgICAweDEuOThwNiwKKyAgICAweDEuODBwMworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLjgwcDEsCisgICAgMHgxLjljcDYsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS5wMiwKKyAgICAweDEuOWNwNiwKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLmMwcDIsCisgICAgMHgxLjljcDYsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS5wMiwKKyAgICAweDEuYTBwNiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjQwcDIsCisgICAgMHgxLmEwcDYsCisgICAgMHgxLjYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5wMywKKyAgICAweDEuYTBwNiwKKyAgICAweDEuODBwMworICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLjQwcDIsCisgICAgMHgxLmE0cDYsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS44MHAyLAorICAgIDB4MS5hNHA2LAorICAgIDB4MS42MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuMjBwMywKKyAgICAweDEuYTRwNiwKKyAgICAweDEuODBwMworICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLjgwcDIsCisgICAgMHgxLmE4cDYsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS5jMHAyLAorICAgIDB4MS5hOHA2LAorICAgIDB4MS42MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuNDBwMywKKyAgICAweDEuYThwNiwKKyAgICAweDEuODBwMworICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLmMwcDIsCisgICAgMHgxLmFjcDYsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS5wMywKKyAgICAweDEuYWNwNiwKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLjYwcDMsCisgICAgMHgxLmFjcDYsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS5wMywKKyAgICAweDEuYjBwNiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLjIwcDMsCisgICAgMHgxLmIwcDYsCisgICAgMHgxLjYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDAuMCwKKyAgICAweDEuYjBwNiwKKyAgICAweDEuODBwMworICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLjIwcDMsCisgICAgMHgxLmI0cDYsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS40MHAzLAorICAgIDB4MS5iNHA2LAorICAgIDB4MS42MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEucDAsCisgICAgMHgxLmI0cDYsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDAuMCwKKyAgICAweDEuYjhwNiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMC4wLAorICAgIDB4MS5iOHA2LAorICAgIDB4MS42MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAweDEucDEsCisgICAgMHgxLmI4cDYsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLnAtMjMsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAtMHgxLjgwcC0yMywKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTAuMCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEucC0yNCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLjgwcC0yMywKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEucC0yMywKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgLTB4MS5wLTI0LAorICAgIC0weDEucDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTAuMCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLnAwLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAwLjAsCisgICAgMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5wLTI0LAorICAgIDB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEucC0yMywKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjgwcC0yMywKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEucC0yNCwKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDAuMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLnAwLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuODBwLTIzLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLnAtMjMsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMC4wLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDAuMCwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIC0weDEuODBwLTEsCisgICAgLTB4MS4wMDAwMDJwMjIsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0weDEucC0xLAorICAgIC0weDEuMDAwMDAycDIyLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDJwMjIsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS5wLTIsCisgICAgLTB4MS5wMjIsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIC0wLjAsCisgICAgLTB4MS5wMjIsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS4wMDAwMDRwLTEsCisgICAgLTB4MS5wMjIsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAyMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS44MHAtMSwKKyAgICAtMHgxLmZmZmZmZXAyMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAtMHgxLjAwMDAwOHAtMiwKKyAgICAtMHgxLmZmZmZmZXAyMSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAyMiwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLnAtMSwKKyAgICAweDEuZmZmZmZlcDIyLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIDB4MS4wMDAwMDhwLTEsCisgICAgMHgxLmZmZmZmZXAyMiwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEucC0xLAorICAgIDB4MS5wMjMsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDAuMCwKKyAgICAweDEucDIzLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS5wLTIzLAorICAgIDB4MS5wMjMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuMDAwMDAycDIzLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAtMHgxLjgwcC0yMywKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAycDI0LAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEucC0yNCwKKyAgICAtMHgxLnAyNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgLTAuMCwKKyAgICAtMHgxLnAyNCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAtMHgxLnAtMjIsCisgICAgLTB4MS5wMjQsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAyMywKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAyMywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAtMHgxLjgwcC0yMiwKKyAgICAtMHgxLmZmZmZmZXAyMywKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAyMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgMHgxLjgwcC0xLAorICAgIDB4MS5mZmZmZmVwMjEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMHgxLjAwMDAwOHAtMiwKKyAgICAweDEuZmZmZmZlcDIxLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS5wLTIsCisgICAgMHgxLnAyMiwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgMC4wLAorICAgIDB4MS5wMjIsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLjAwMDAwNHAtMSwKKyAgICAweDEucDIyLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIDB4MS44MHAtMSwKKyAgICAweDEuMDAwMDAycDIyLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEucC0xLAorICAgIDB4MS4wMDAwMDJwMjIsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwMjIsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMjIsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIDB4MS5wLTEsCisgICAgMHgxLmZmZmZmZXAyMiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuMDAwMDA4cC0xLAorICAgIDB4MS5mZmZmZmVwMjIsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMHgxLnAtMSwKKyAgICAweDEucDIzLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAwLjAsCisgICAgMHgxLnAyMywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAweDEucC0yMywKKyAgICAweDEucDIzLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwMjMsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwMjMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS44MHAtMjMsCisgICAgLTB4MS4wMDAwMDJwMjQsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAtMHgxLnAtMjIsCisgICAgLTB4MS5wMjQsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0wLjAsCisgICAgLTB4MS5wMjQsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIC0weDEucC0yNCwKKyAgICAtMHgxLnAyNCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuODBwLTIyLAorICAgIC0weDEuZmZmZmZlcDIzLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDIzLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDIzLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDAuMCwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMC4wLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIC0wLjAsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAwLjAsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDAuMCwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIC0wLjAsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAtMC4wLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIC0wLjAsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDAuMCwKKyAgICAwLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2ZyZXhwX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9mcmV4cF9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2UyZTg3MwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9mcmV4cF9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxMTA4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV9pbnRfMV90PGRvdWJsZSwgZG91YmxlPiBnX2ZyZXhwX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgMHgxLnAtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuMTk5OTk5OTk5OTk5YTBwLTEsCisgICAgKGludCkweDEuOTRwNiwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMHgxLjMzMzMzMzMzMzMzMzQwcC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS40Y2NjY2NjY2NjY2NlMHAtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEuNjY2NjY2NjY2NjY2ODBwLTEsCisgICAgKGludCkweDEuOTRwNiwKKyAgICAweDEuNjY2NjY2NjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLjgwMDAwMDAwMDAwMDIwcC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS45OTk5OTk5OTk5OTljMHAtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuYjMzMzMzMzMzMzMzNjBwLTEsCisgICAgKGludCkweDEuOTRwNiwKKyAgICAweDEuYjMzMzMzMzMzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLmNjY2NjY2NjY2NjZHAtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuZTY2NjY2NjY2NjY2YTBwLTEsCisgICAgKGludCkweDEuOTRwNiwKKyAgICAweDEuZTY2NjY2NjY2NjY2YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuOThwNiwKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuOTJwNywKKyAgICAweDEuMHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS4xOTk5OTk5OTk5OTlhMHAtMSwKKyAgICAoaW50KTB4MS45MnA3LAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLjMzMzMzMzMzMzMzMzQwcC0xLAorICAgIChpbnQpMHgxLjkycDcsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEuNGNjY2NjY2NjY2NjZTBwLTEsCisgICAgKGludCkweDEuOTJwNywKKyAgICAweDEuNGNjY2NjY2NjY2NjZXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS42NjY2NjY2NjY2NjY4MHAtMSwKKyAgICAoaW50KTB4MS45MnA3LAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLjgwMDAwMDAwMDAwMDIwcC0xLAorICAgIChpbnQpMHgxLjkycDcsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuOTk5OTk5OTk5OTk5YzBwLTEsCisgICAgKGludCkweDEuOTJwNywKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3AyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS5iMzMzMzMzMzMzMzM2MHAtMSwKKyAgICAoaW50KTB4MS45MnA3LAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLmNjY2NjY2NjY2NjZHAtMSwKKyAgICAoaW50KTB4MS45MnA3LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLmU2NjY2NjY2NjY2NmEwcC0xLAorICAgIChpbnQpMHgxLjkycDcsCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEucC0xLAorICAgIChpbnQpMHgxLjk0cDcsCisgICAgMHgxLjBwMjAxCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEucC0xLAorICAgIChpbnQpMHgxLmY0ODBwOSwKKyAgICAweDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuMTk5OTk5OTk5OTk5YTBwLTEsCisgICAgKGludCkweDEuZjQ4MHA5LAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS4zMzMzMzMzMzMzMzM0MHAtMSwKKyAgICAoaW50KTB4MS5mNDgwcDksCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLjRjY2NjY2NjY2NjY2UwcC0xLAorICAgIChpbnQpMHgxLmY0ODBwOSwKKyAgICAweDEuNGNjY2NjY2NjY2NjZXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuNjY2NjY2NjY2NjY2ODBwLTEsCisgICAgKGludCkweDEuZjQ4MHA5LAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS44MDAwMDAwMDAwMDAyMHAtMSwKKyAgICAoaW50KTB4MS5mNDgwcDksCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLjk5OTk5OTk5OTk5OWMwcC0xLAorICAgIChpbnQpMHgxLmY0ODBwOSwKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3AxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuYjMzMzMzMzMzMzMzNjBwLTEsCisgICAgKGludCkweDEuZjQ4MHA5LAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5jY2NjY2NjY2NjY2RwLTEsCisgICAgKGludCkweDEuZjQ4MHA5LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS5lNjY2NjY2NjY2NjZhMHAtMSwKKyAgICAoaW50KTB4MS5mNDgwcDksCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLnAtMSwKKyAgICAoaW50KTB4MS5mNXA5LAorICAgIDB4MS4wcDEwMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIC0weDEucC0xLAorICAgIChpbnQpMHgxLjk4cDYsCisgICAgLTB4MS4wcDEwMQorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgLTB4MS5lNjY2NjY2NjY2NjY2MHAtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIC0weDEuZTY2NjY2NjY2NjY2NnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIC0weDEuY2NjY2NjY2NjY2NjYzBwLTEsCisgICAgKGludCkweDEuOTRwNiwKKyAgICAtMHgxLmNjY2NjY2NjY2NjY2NwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAtMHgxLmIzMzMzMzMzMzMzMzIwcC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgLTB4MS5iMzMzMzMzMzMzMzMycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgLTB4MS45OTk5OTk5OTk5OTk4MHAtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIC0weDEuOTk5OTk5OTk5OTk5OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIC0weDEuN2ZmZmZmZmZmZmZmZTBwLTEsCisgICAgKGludCkweDEuOTRwNiwKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmVwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAtMHgxLjY2NjY2NjY2NjY2NjQwcC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgLTB4MS42NjY2NjY2NjY2NjY0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgLTB4MS40Y2NjY2NjY2NjY2NhMHAtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIC0weDEuNGNjY2NjY2NjY2NjYXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIC0weDEuMzMzMzMzMzMzMzMzcC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgLTB4MS4zMzMzMzMzMzMzMzMwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgLTB4MS4xOTk5OTk5OTk5OTk2MHAtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIC0weDEuMTk5OTk5OTk5OTk5NnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIC0weDEucC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgLTB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgLTB4MS5wLTEsCisgICAgKGludCkweDEuOTRwNywKKyAgICAtMHgxLjBwMjAxCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAtMHgxLmU2NjY2NjY2NjY2NjYwcC0xLAorICAgIChpbnQpMHgxLjkycDcsCisgICAgLTB4MS5lNjY2NjY2NjY2NjY2cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTB4MS5jY2NjY2NjY2NjY2NjMHAtMSwKKyAgICAoaW50KTB4MS45MnA3LAorICAgIC0weDEuY2NjY2NjY2NjY2NjY3AyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0weDEuYjMzMzMzMzMzMzMzMjBwLTEsCisgICAgKGludCkweDEuOTJwNywKKyAgICAtMHgxLmIzMzMzMzMzMzMzMzJwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMHgxLjk5OTk5OTk5OTk5OTgwcC0xLAorICAgIChpbnQpMHgxLjkycDcsCisgICAgLTB4MS45OTk5OTk5OTk5OTk4cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS43ZmZmZmZmZmZmZmZlMHAtMSwKKyAgICAoaW50KTB4MS45MnA3LAorICAgIC0weDEuN2ZmZmZmZmZmZmZmZXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEuNjY2NjY2NjY2NjY2NDBwLTEsCisgICAgKGludCkweDEuOTJwNywKKyAgICAtMHgxLjY2NjY2NjY2NjY2NjRwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAtMHgxLjRjY2NjY2NjY2NjY2EwcC0xLAorICAgIChpbnQpMHgxLjkycDcsCisgICAgLTB4MS40Y2NjY2NjY2NjY2NhcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgLTB4MS4zMzMzMzMzMzMzMzNwLTEsCisgICAgKGludCkweDEuOTJwNywKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzBwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLjE5OTk5OTk5OTk5OTYwcC0xLAorICAgIChpbnQpMHgxLjkycDcsCisgICAgLTB4MS4xOTk5OTk5OTk5OTk2cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgLTB4MS5wLTEsCisgICAgKGludCkweDEuOTJwNywKKyAgICAtMHgxLjBwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLnAtMSwKKyAgICAoaW50KTB4MS5mNXA5LAorICAgIC0weDEuMHAxMDAxCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLmU2NjY2NjY2NjY2NjYwcC0xLAorICAgIChpbnQpMHgxLmY0ODBwOSwKKyAgICAtMHgxLmU2NjY2NjY2NjY2NjZwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgLTB4MS5jY2NjY2NjY2NjY2NjMHAtMSwKKyAgICAoaW50KTB4MS5mNDgwcDksCisgICAgLTB4MS5jY2NjY2NjY2NjY2NjcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIC0weDEuYjMzMzMzMzMzMzMzMjBwLTEsCisgICAgKGludCkweDEuZjQ4MHA5LAorICAgIC0weDEuYjMzMzMzMzMzMzMzMnAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLjk5OTk5OTk5OTk5OTgwcC0xLAorICAgIChpbnQpMHgxLmY0ODBwOSwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OThwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgLTB4MS43ZmZmZmZmZmZmZmZlMHAtMSwKKyAgICAoaW50KTB4MS5mNDgwcDksCisgICAgLTB4MS43ZmZmZmZmZmZmZmZlcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuNjY2NjY2NjY2NjY2NDBwLTEsCisgICAgKGludCkweDEuZjQ4MHA5LAorICAgIC0weDEuNjY2NjY2NjY2NjY2NHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAtMHgxLjRjY2NjY2NjY2NjY2EwcC0xLAorICAgIChpbnQpMHgxLmY0ODBwOSwKKyAgICAtMHgxLjRjY2NjY2NjY2NjY2FwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS4zMzMzMzMzMzMzMzNwLTEsCisgICAgKGludCkweDEuZjQ4MHA5LAorICAgIC0weDEuMzMzMzMzMzMzMzMzMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAtMHgxLjE5OTk5OTk5OTk5OTYwcC0xLAorICAgIChpbnQpMHgxLmY0ODBwOSwKKyAgICAtMHgxLjE5OTk5OTk5OTk5OTZwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgLTB4MS5wLTEsCisgICAgKGludCkweDEuZjQ4MHA5LAorICAgIC0weDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEucC0xLAorICAgIChpbnQpMHgxLjk4cDUsCisgICAgMHgxLjBwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS4xOTk5OTk5OTk5OTlhMHAtMSwKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuMzMzMzMzMzMzMzMzNDBwLTEsCisgICAgKGludCkweDEuOThwNSwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHA1MAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLjRjY2NjY2NjY2NjY2UwcC0xLAorICAgIChpbnQpMHgxLjk4cDUsCisgICAgMHgxLjRjY2NjY2NjY2NjY2VwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS42NjY2NjY2NjY2NjY4MHAtMSwKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuODAwMDAwMDAwMDAwMjBwLTEsCisgICAgKGludCkweDEuOThwNSwKKyAgICAweDEuODAwMDAwMDAwMDAwMnA1MAorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjk5OTk5OTk5OTk5OWMwcC0xLAorICAgIChpbnQpMHgxLjk4cDUsCisgICAgMHgxLjk5OTk5OTk5OTk5OWNwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS5iMzMzMzMzMzMzMzM2MHAtMSwKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuY2NjY2NjY2NjY2NkcC0xLAorICAgIChpbnQpMHgxLjk4cDUsCisgICAgMHgxLmNjY2NjY2NjY2NjZDBwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS5lNjY2NjY2NjY2NjZhMHAtMSwKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEucC0xLAorICAgIChpbnQpMHgxLmEwcDUsCisgICAgMHgxLjBwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuYTBwNSwKKyAgICAweDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLjE5OTk5OTk5OTk5OWEwcC0xLAorICAgIChpbnQpMHgxLmEwcDUsCisgICAgMHgxLjE5OTk5OTk5OTk5OWFwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS4zMzMzMzMzMzMzMzM0MHAtMSwKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cDUxCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuNGNjY2NjY2NjY2NjZTBwLTEsCisgICAgKGludCkweDEuYTBwNSwKKyAgICAweDEuNGNjY2NjY2NjY2NjZXA1MQorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLjY2NjY2NjY2NjY2NjgwcC0xLAorICAgIChpbnQpMHgxLmEwcDUsCisgICAgMHgxLjY2NjY2NjY2NjY2NjhwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS44MDAwMDAwMDAwMDAyMHAtMSwKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS44MDAwMDAwMDAwMDAycDUxCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEuOTk5OTk5OTk5OTk5YzBwLTEsCisgICAgKGludCkweDEuYTBwNSwKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3A1MQorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLmIzMzMzMzMzMzMzMzYwcC0xLAorICAgIChpbnQpMHgxLmEwcDUsCisgICAgMHgxLmIzMzMzMzMzMzMzMzZwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS5jY2NjY2NjY2NjY2RwLTEsCisgICAgKGludCkweDEuYTBwNSwKKyAgICAweDEuY2NjY2NjY2NjY2NkMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLmU2NjY2NjY2NjY2NmEwcC0xLAorICAgIChpbnQpMHgxLmEwcDUsCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuYThwNSwKKyAgICAweDEuMHA1MgorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLnAtMSwKKyAgICAoaW50KTB4MS5hOHA1LAorICAgIDB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuMTk5OTk5OTk5OTk5YTBwLTEsCisgICAgKGludCkweDEuYThwNSwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXA1MgorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLjMzMzMzMzMzMzMzMzQwcC0xLAorICAgIChpbnQpMHgxLmE4cDUsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS40Y2NjY2NjY2NjY2NlMHAtMSwKKyAgICAoaW50KTB4MS5hOHA1LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuNjY2NjY2NjY2NjY2ODBwLTEsCisgICAgKGludCkweDEuYThwNSwKKyAgICAweDEuNjY2NjY2NjY2NjY2OHA1MgorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLjgwMDAwMDAwMDAwMDIwcC0xLAorICAgIChpbnQpMHgxLmE4cDUsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS45OTk5OTk5OTk5OTljMHAtMSwKKyAgICAoaW50KTB4MS5hOHA1LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuYjMzMzMzMzMzMzMzNjBwLTEsCisgICAgKGludCkweDEuYThwNSwKKyAgICAweDEuYjMzMzMzMzMzMzMzNnA1MgorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLmNjY2NjY2NjY2NjZHAtMSwKKyAgICAoaW50KTB4MS5hOHA1LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuZTY2NjY2NjY2NjY2YTBwLTEsCisgICAgKGludCkweDEuYThwNSwKKyAgICAweDEuZTY2NjY2NjY2NjY2YXA1MgorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLnAtMSwKKyAgICAoaW50KTB4MS5iMHA1LAorICAgIDB4MS4wcDUzCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAweDEucC0xLAorICAgIChpbnQpMHgxLmIwcDUsCisgICAgMHgxLjBwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuMTk5OTk5OTk5OTk5YTBwLTEsCisgICAgKGludCkweDEuYjBwNSwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXA1MworICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS4zMzMzMzMzMzMzMzM0MHAtMSwKKyAgICAoaW50KTB4MS5iMHA1LAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLjRjY2NjY2NjY2NjY2UwcC0xLAorICAgIChpbnQpMHgxLmIwcDUsCisgICAgMHgxLjRjY2NjY2NjY2NjY2VwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuNjY2NjY2NjY2NjY2ODBwLTEsCisgICAgKGludCkweDEuYjBwNSwKKyAgICAweDEuNjY2NjY2NjY2NjY2OHA1MworICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS44MDAwMDAwMDAwMDAyMHAtMSwKKyAgICAoaW50KTB4MS5iMHA1LAorICAgIDB4MS44MDAwMDAwMDAwMDAycDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjk5OTk5OTk5OTk5OWMwcC0xLAorICAgIChpbnQpMHgxLmIwcDUsCisgICAgMHgxLjk5OTk5OTk5OTk5OWNwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuYjMzMzMzMzMzMzMzNjBwLTEsCisgICAgKGludCkweDEuYjBwNSwKKyAgICAweDEuYjMzMzMzMzMzMzMzNnA1MworICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5jY2NjY2NjY2NjY2RwLTEsCisgICAgKGludCkweDEuYjBwNSwKKyAgICAweDEuY2NjY2NjY2NjY2NkMHA1MworICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5lNjY2NjY2NjY2NjZhMHAtMSwKKyAgICAoaW50KTB4MS5iMHA1LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLnAtMSwKKyAgICAoaW50KTB4MS5iOHA1LAorICAgIDB4MS4wcDU0CisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLnAtMSwKKyAgICAoaW50KS0weDEuMDA0MHAxMCwKKyAgICAweDEuMHAtMTAyNgorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS5kMzMzMzMzMzMzMzM0MHAtMSwKKyAgICAoaW50KS0weDEuZmY4MHA5LAorICAgIDB4MS5kMzMzMzMzMzMzMzM0cC0xMDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLmIzMzMzMzMzMzMzMzQwcC0xLAorICAgIChpbnQpLTB4MS5mZnA5LAorICAgIDB4MS5iMzMzMzMzMzMzMzM0cC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLjNlNjY2NjY2NjY2NjcwcC0xLAorICAgIChpbnQpLTB4MS5mZTgwcDksCisgICAgMHgxLjNlNjY2NjY2NjY2NjdwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuYTMzMzMzMzMzMzMzNDBwLTEsCisgICAgKGludCktMHgxLmZlODBwOSwKKyAgICAweDEuYTMzMzMzMzMzMzMzNHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS4wNHAtMSwKKyAgICAoaW50KS0weDEuZmVwOSwKKyAgICAweDEuMDQwcC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjM2NjY2NjY2NjY2NjYwcC0xLAorICAgIChpbnQpLTB4MS5mZXA5LAorICAgIDB4MS4zNjY2NjY2NjY2NjY2cC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLjY4Y2NjY2NjY2NjY2MwcC0xLAorICAgIChpbnQpLTB4MS5mZXA5LAorICAgIDB4MS42OGNjY2NjY2NjY2NjcC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjliMzMzMzMzMzMzMzIwcC0xLAorICAgIChpbnQpLTB4MS5mZXA5LAorICAgIDB4MS45YjMzMzMzMzMzMzMycC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLmNkOTk5OTk5OTk5OTgwcC0xLAorICAgIChpbnQpLTB4MS5mZXA5LAorICAgIDB4MS5jZDk5OTk5OTk5OTk4cC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xLAorICAgIChpbnQpLTB4MS5mZXA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIChpbnQpMHgxLjk4cDUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEucC0xLAorICAgIChpbnQpMHgxLmEwcDUsCisgICAgMHgxLjBwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgKGludCkweDEuYTBwNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MQorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLnAtMSwKKyAgICAoaW50KTB4MS5hOHA1LAorICAgIDB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xLAorICAgIChpbnQpMHgxLmE4cDUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgKGludCkweDEuYThwNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MgorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuYjBwNSwKKyAgICAweDEuMHA1MworICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAoaW50KTB4MS5iMHA1LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0weDEucC0xLAorICAgIChpbnQpMHgxLmEwcDUsCisgICAgLTB4MS4wcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAoaW50KTB4MS45OHA1LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MAorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgKGludCkweDEuYThwNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAtMHgxLnAtMSwKKyAgICAoaW50KTB4MS5hOHA1LAorICAgIC0weDEuMHA1MgorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgKGludCkweDEuYTBwNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcC0xLAorICAgIChpbnQpMHgxLmIwcDUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS5wLTEsCisgICAgKGludCkweDEuYjBwNSwKKyAgICAtMHgxLjBwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIChpbnQpMHgxLmE4cDUsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUyCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIChpbnQpMHgxLnAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAoaW50KTB4MS5wMTAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgKGludCktMHgxLjgwcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEucC0xLAorICAgIChpbnQpLTB4MS40MHAyLAorICAgIDB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xLAorICAgIChpbnQpLTB4MS40MHAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIChpbnQpLTB4MS40MHAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMHgxLnAtMSwKKyAgICAoaW50KS0weDEucDIsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgKGludCktMHgxLnAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIChpbnQpLTB4MS5wMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS5wLTEsCisgICAgKGludCktMHgxLjgwcDEsCisgICAgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgKGludCktMHgxLjgwcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgKGludCktMHgxLjgwcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAweDEucC0xLAorICAgIChpbnQpLTB4MS5wMSwKKyAgICAweDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAoaW50KS0weDEucDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgKGludCktMHgxLnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLnAtMSwKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgKGludCktMHgxLnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIDB4MS5wLTEsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgKGludCkwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMHgxLnAtMSwKKyAgICAoaW50KS0weDEuMGM0MHAxMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAweDEucC0xLAorICAgIChpbnQpLTB4MS4wYzQwcDEwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIChpbnQpMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgMHgxLnAtMSwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEucDEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAoaW50KTB4MS5wMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIChpbnQpMHgxLnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAweDEucC0xLAorICAgIChpbnQpMHgxLjgwcDEsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAoaW50KTB4MS44MHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgKGludCkweDEuODBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLnAtMSwKKyAgICAoaW50KTB4MS5wMiwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xLAorICAgIChpbnQpMHgxLnAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgKGludCkweDEucDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuNDBwMiwKKyAgICAweDEuMHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xLAorICAgIChpbnQpMHgxLjQwcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAoaW50KTB4MS40MHAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEucC0xLAorICAgIChpbnQpMHgxLjgwcDIsCisgICAgMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAoaW50KTB4MS44MHAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgKGludCkweDEuODBwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLnAtMSwKKyAgICAoaW50KTB4MS5jMHAyLAorICAgIDB4MS4wcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgKGludCkweDEuYzBwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIChpbnQpMHgxLmMwcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEucDMsCisgICAgMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAoaW50KTB4MS5wMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA3CisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgSFVHRV9WQUwsCisgICAgKGludCkwLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgLUhVR0VfVkFMLAorICAgIChpbnQpMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIChpbnQpMHgxLnAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAoaW50KTB4MS5wMTAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEsCisgICAgKGludCkweDEucDEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xLAorICAgIChpbnQpMHgxLnAxMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS45MjFmYjU0NDQyZDE4MHAtMSwKKyAgICAoaW50KTB4MS5wMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS45MjFmYjU0NDQyZDE4MHAtMSwKKyAgICAoaW50KTB4MS5wMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIDB4MS45MjFmYjU0NDQyZDE4MHAtMSwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTB4MS45MjFmYjU0NDQyZDE4MHAtMSwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEucC0xLAorICAgIChpbnQpMHgxLnAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIChpbnQpMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEuOTIxZmI1NDQ0MmQxODBwLTEsCisgICAgKGludCkwLjAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTgwcC0xLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAoaW50KS0weDEuZmU4MHA5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAoaW50KS0weDEuZmU4MHA5LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDB4MS5wLTEsCisgICAgKGludCktMHgxLmZlODBwOSwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEucC0xLAorICAgIChpbnQpLTB4MS5mZTgwcDksCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xLAorICAgIChpbnQpLTB4MS5mZnA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMSwKKyAgICAoaW50KS0weDEuZmZwOSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuZmZmZmZmZmZmZmZmYzBwLTEsCisgICAgKGludCktMHgxLmZmcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcC0xLAorICAgIChpbnQpLTB4MS5mZnA5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIDB4MS5wLTEsCisgICAgKGludCktMHgxLjBjcDEwLAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgLTB4MS5wLTEsCisgICAgKGludCktMHgxLjBjcDEwLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS5wLTEsCisgICAgKGludCktMHgxLjBjNDBwMTAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAtMHgxLnAtMSwKKyAgICAoaW50KS0weDEuMGM0MHAxMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9mcmV4cGZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2ZyZXhwZl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGQ2YmE3ZAotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9mcmV4cGZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsODg4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV9pbnRfMV90PGZsb2F0LCBmbG9hdD4gZ19mcmV4cGZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAweDEucC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLjE5OTk5YXAtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIDB4MS4xOTk5OWFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS4zMzMzMzRwLTEsCisgICAgKGludCkweDEuOTRwNiwKKyAgICAweDEuMzMzMzM0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuNGNjY2NlcC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgMHgxLjRjY2NjZXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLjY2NjY2OHAtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIDB4MS42NjY2NjhwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS44MDAwMDJwLTEsCisgICAgKGludCkweDEuOTRwNiwKKyAgICAweDEuODAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuOTk5OTljcC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgMHgxLjk5OTk5Y3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLmIzMzMzNnAtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIDB4MS5iMzMzMzZwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS5jY2NjZDBwLTEsCisgICAgKGludCkweDEuOTRwNiwKKyAgICAweDEuY2NjY2QwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuZTY2NjZhcC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgMHgxLmU2NjY2YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuOThwNiwKKyAgICAweDEucDEwMQorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgLTB4MS5wLTEsCisgICAgKGludCkweDEuOThwNiwKKyAgICAtMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIC0weDEuZTY2NjY2cC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgLTB4MS5lNjY2NjZwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAtMHgxLmNjY2NjY3AtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIC0weDEuY2NjY2NjcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgLTB4MS5iMzMzMzJwLTEsCisgICAgKGludCkweDEuOTRwNiwKKyAgICAtMHgxLmIzMzMzMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIC0weDEuOTk5OTk4cC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgLTB4MS45OTk5OThwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAtMHgxLjdmZmZmZXAtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIC0weDEuN2ZmZmZlcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgLTB4MS42NjY2NjRwLTEsCisgICAgKGludCkweDEuOTRwNiwKKyAgICAtMHgxLjY2NjY2NHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIC0weDEuNGNjY2NhcC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgLTB4MS40Y2NjY2FwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAtMHgxLjMzMzMzMHAtMSwKKyAgICAoaW50KTB4MS45NHA2LAorICAgIC0weDEuMzMzMzMwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgLTB4MS4xOTk5OTZwLTEsCisgICAgKGludCkweDEuOTRwNiwKKyAgICAtMHgxLjE5OTk5NnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIC0weDEucC0xLAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgLTB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEucC0xLAorICAgIChpbnQpMHgxLjYwcDQsCisgICAgMHgxLnAyMQorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLjE5OTk5YXAtMSwKKyAgICAoaW50KTB4MS42MHA0LAorICAgIDB4MS4xOTk5OWFwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS4zMzMzMzRwLTEsCisgICAgKGludCkweDEuNjBwNCwKKyAgICAweDEuMzMzMzM0cDIxCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuNGNjY2NlcC0xLAorICAgIChpbnQpMHgxLjYwcDQsCisgICAgMHgxLjRjY2NjZXAyMQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLjY2NjY2OHAtMSwKKyAgICAoaW50KTB4MS42MHA0LAorICAgIDB4MS42NjY2NjhwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS44MDAwMDJwLTEsCisgICAgKGludCkweDEuNjBwNCwKKyAgICAweDEuODAwMDAycDIxCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuOTk5OTljcC0xLAorICAgIChpbnQpMHgxLjYwcDQsCisgICAgMHgxLjk5OTk5Y3AyMQorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLmIzMzMzNnAtMSwKKyAgICAoaW50KTB4MS42MHA0LAorICAgIDB4MS5iMzMzMzZwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5jY2NjZDBwLTEsCisgICAgKGludCkweDEuNjBwNCwKKyAgICAweDEuY2NjY2QwcDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuZTY2NjZhcC0xLAorICAgIChpbnQpMHgxLjYwcDQsCisgICAgMHgxLmU2NjY2YXAyMQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLnAtMSwKKyAgICAoaW50KTB4MS43MHA0LAorICAgIDB4MS5wMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuNzBwNCwKKyAgICAweDEucDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuMTk5OTlhcC0xLAorICAgIChpbnQpMHgxLjcwcDQsCisgICAgMHgxLjE5OTk5YXAyMgorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLjMzMzMzNHAtMSwKKyAgICAoaW50KTB4MS43MHA0LAorICAgIDB4MS4zMzMzMzRwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS40Y2NjY2VwLTEsCisgICAgKGludCkweDEuNzBwNCwKKyAgICAweDEuNGNjY2NlcDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuNjY2NjY4cC0xLAorICAgIChpbnQpMHgxLjcwcDQsCisgICAgMHgxLjY2NjY2OHAyMgorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLjgwMDAwMnAtMSwKKyAgICAoaW50KTB4MS43MHA0LAorICAgIDB4MS44MDAwMDJwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS45OTk5OWNwLTEsCisgICAgKGludCkweDEuNzBwNCwKKyAgICAweDEuOTk5OTljcDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuYjMzMzM2cC0xLAorICAgIChpbnQpMHgxLjcwcDQsCisgICAgMHgxLmIzMzMzNnAyMgorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLmNjY2NkMHAtMSwKKyAgICAoaW50KTB4MS43MHA0LAorICAgIDB4MS5jY2NjZDBwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5lNjY2NmFwLTEsCisgICAgKGludCkweDEuNzBwNCwKKyAgICAweDEuZTY2NjZhcDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEucC0xLAorICAgIChpbnQpMHgxLjgwcDQsCisgICAgMHgxLnAyMworICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLnAtMSwKKyAgICAoaW50KTB4MS44MHA0LAorICAgIDB4MS5wMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS4xOTk5OWFwLTEsCisgICAgKGludCkweDEuODBwNCwKKyAgICAweDEuMTk5OTlhcDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuMzMzMzM0cC0xLAorICAgIChpbnQpMHgxLjgwcDQsCisgICAgMHgxLjMzMzMzNHAyMworICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLjRjY2NjZXAtMSwKKyAgICAoaW50KTB4MS44MHA0LAorICAgIDB4MS40Y2NjY2VwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS42NjY2NjhwLTEsCisgICAgKGludCkweDEuODBwNCwKKyAgICAweDEuNjY2NjY4cDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuODAwMDAycC0xLAorICAgIChpbnQpMHgxLjgwcDQsCisgICAgMHgxLjgwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjk5OTk5Y3AtMSwKKyAgICAoaW50KTB4MS44MHA0LAorICAgIDB4MS45OTk5OWNwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5iMzMzMzZwLTEsCisgICAgKGludCkweDEuODBwNCwKKyAgICAweDEuYjMzMzM2cDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuY2NjY2QwcC0xLAorICAgIChpbnQpMHgxLjgwcDQsCisgICAgMHgxLmNjY2NkMHAyMworICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLmU2NjY2YXAtMSwKKyAgICAoaW50KTB4MS44MHA0LAorICAgIDB4MS5lNjY2NmFwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuOTBwNCwKKyAgICAweDEucDI0CisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEucC0xLAorICAgIChpbnQpMHgxLjkwcDQsCisgICAgMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLjE5OTk5YXAtMSwKKyAgICAoaW50KTB4MS45MHA0LAorICAgIDB4MS4xOTk5OWFwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS4zMzMzMzRwLTEsCisgICAgKGludCkweDEuOTBwNCwKKyAgICAweDEuMzMzMzM0cDI0CisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuNGNjY2NlcC0xLAorICAgIChpbnQpMHgxLjkwcDQsCisgICAgMHgxLjRjY2NjZXAyNAorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLjY2NjY2OHAtMSwKKyAgICAoaW50KTB4MS45MHA0LAorICAgIDB4MS42NjY2NjhwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS44MDAwMDJwLTEsCisgICAgKGludCkweDEuOTBwNCwKKyAgICAweDEuODAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuOTk5OTljcC0xLAorICAgIChpbnQpMHgxLjkwcDQsCisgICAgMHgxLjk5OTk5Y3AyNAorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLmIzMzMzNnAtMSwKKyAgICAoaW50KTB4MS45MHA0LAorICAgIDB4MS5iMzMzMzZwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS5jY2NjZDBwLTEsCisgICAgKGludCkweDEuOTBwNCwKKyAgICAweDEuY2NjY2QwcDI0CisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuZTY2NjZhcC0xLAorICAgIChpbnQpMHgxLjkwcDQsCisgICAgMHgxLmU2NjY2YXAyNAorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLnAtMSwKKyAgICAoaW50KTB4MS5hMHA0LAorICAgIDB4MS5wMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS5wLTEsCisgICAgKGludCktMHgxLjAycDcsCisgICAgMHgxLnAtMTMwCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEuZDMzMzMwcC0xLAorICAgIChpbnQpLTB4MS5mY3A2LAorICAgIDB4MS5kMzMzMzBwLTEyOAorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLmIzMzMzMHAtMSwKKyAgICAoaW50KS0weDEuZjhwNiwKKyAgICAweDEuYjMzMzMwcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS4zZTY2NjRwLTEsCisgICAgKGludCktMHgxLmY0cDYsCisgICAgMHgxLjNlNjY2NHAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuYTMzMzMwcC0xLAorICAgIChpbnQpLTB4MS5mNHA2LAorICAgIDB4MS5hMzMzMzBwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLjAzZmZmZXAtMSwKKyAgICAoaW50KS0weDEuZjBwNiwKKyAgICAweDEuMDNmZmZlcC0xMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS4zNjY2NjRwLTEsCisgICAgKGludCktMHgxLmYwcDYsCisgICAgMHgxLjM2NjY2NHAtMTI1CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEuNjhjY2NhcC0xLAorICAgIChpbnQpLTB4MS5mMHA2LAorICAgIDB4MS42OGNjY2FwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLjliMzMzMHAtMSwKKyAgICAoaW50KS0weDEuZjBwNiwKKyAgICAweDEuOWIzMzMwcC0xMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS5jZDk5OTZwLTEsCisgICAgKGludCktMHgxLmYwcDYsCisgICAgMHgxLmNkOTk5NnAtMTI1CisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuZmZmZmZjcC0xLAorICAgIChpbnQpLTB4MS5mMHA2LAorICAgIDB4MS5mZmZmZmNwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAoaW50KTB4MS42MHA0LAorICAgIDB4MS5mZmZmZmVwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuNzBwNCwKKyAgICAweDEucDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAweDEuMDAwMDAycC0xLAorICAgIChpbnQpMHgxLjcwcDQsCisgICAgMHgxLjAwMDAwMnAyMgorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAoaW50KTB4MS43MHA0LAorICAgIDB4MS5mZmZmZmVwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuODBwNCwKKyAgICAweDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEuMDAwMDAycC0xLAorICAgIChpbnQpMHgxLjgwcDQsCisgICAgMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAoaW50KTB4MS44MHA0LAorICAgIDB4MS5mZmZmZmVwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuOTBwNCwKKyAgICAweDEucDI0CisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEuMDAwMDAycC0xLAorICAgIChpbnQpMHgxLjkwcDQsCisgICAgMHgxLjAwMDAwMnAyNAorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTB4MS4wMDAwMDJwLTEsCisgICAgKGludCkweDEuNzBwNCwKKyAgICAtMHgxLjAwMDAwMnAyMgorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5wLTEsCisgICAgKGludCkweDEuNzBwNCwKKyAgICAtMHgxLnAyMgorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgKGludCkweDEuNjBwNCwKKyAgICAtMHgxLmZmZmZmZXAyMQorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS4wMDAwMDJwLTEsCisgICAgKGludCkweDEuODBwNCwKKyAgICAtMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgLTB4MS5wLTEsCisgICAgKGludCkweDEuODBwNCwKKyAgICAtMHgxLnAyMworICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgKGludCkweDEuNzBwNCwKKyAgICAtMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgLTB4MS4wMDAwMDJwLTEsCisgICAgKGludCkweDEuOTBwNCwKKyAgICAtMHgxLjAwMDAwMnAyNAorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgLTB4MS5wLTEsCisgICAgKGludCkweDEuOTBwNCwKKyAgICAtMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgKGludCkweDEuODBwNCwKKyAgICAtMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAoaW50KTB4MS5wNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgKGludCkweDEucDcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIChpbnQpLTB4MS44MHAyLAorICAgIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5wLTEsCisgICAgKGludCktMHgxLjQwcDIsCisgICAgMHgxLnAtNgorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAoaW50KS0weDEuNDBwMiwKKyAgICAweDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAoaW50KS0weDEuNDBwMiwKKyAgICAweDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLnAtMSwKKyAgICAoaW50KS0weDEucDIsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgKGludCktMHgxLnAyLAorICAgIDB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIChpbnQpLTB4MS5wMiwKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLnAtMSwKKyAgICAoaW50KS0weDEuODBwMSwKKyAgICAweDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAoaW50KS0weDEuODBwMSwKKyAgICAweDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAoaW50KS0weDEuODBwMSwKKyAgICAweDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLnAtMSwKKyAgICAoaW50KS0weDEucDEsCisgICAgMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgKGludCktMHgxLnAxLAorICAgIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIChpbnQpLTB4MS5wMSwKKyAgICAweDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLnAtMSwKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgKGludCktMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLnAtMSwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS5wLTEsCisgICAgKGludCktMHgxLjI4cDcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEucC0xLAorICAgIChpbnQpLTB4MS4yOHA3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEucDEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAoaW50KTB4MS5wMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIChpbnQpMHgxLnAxLAorICAgIDB4MS5mZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuODBwMSwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuMDAwMDAycC0xLAorICAgIChpbnQpMHgxLjgwcDEsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAoaW50KTB4MS44MHAxLAorICAgIDB4MS5mZmZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEucDIsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAoaW50KTB4MS5wMiwKKyAgICAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIChpbnQpMHgxLnAyLAorICAgIDB4MS5mZmZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuNDBwMiwKKyAgICAweDEucDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuMDAwMDAycC0xLAorICAgIChpbnQpMHgxLjQwcDIsCisgICAgMHgxLjAwMDAwMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAoaW50KTB4MS40MHAyLAorICAgIDB4MS5mZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuODBwMiwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEuMDAwMDAycC0xLAorICAgIChpbnQpMHgxLjgwcDIsCisgICAgMHgxLjAwMDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAoaW50KTB4MS44MHAyLAorICAgIDB4MS5mZmZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS5wLTEsCisgICAgKGludCkweDEuYzBwMiwKKyAgICAweDEucDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuMDAwMDAycC0xLAorICAgIChpbnQpMHgxLmMwcDIsCisgICAgMHgxLjAwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAoaW50KTB4MS5jMHAyLAorICAgIDB4MS5mZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEucDMsCisgICAgMHgxLnA3CisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAoaW50KTB4MS5wMywKKyAgICAweDEuMDAwMDAycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICBIVUdFX1ZBTEYsCisgICAgKGludCkwLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC1IVUdFX1ZBTEYsCisgICAgKGludCkwLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIChpbnQpMHgxLnA3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgKGludCkweDEucDcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLmZmZmZmY3AtMSwKKyAgICAoaW50KTB4MS5wNywKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0weDEuZmZmZmZjcC0xLAorICAgIChpbnQpMHgxLnA3LAorICAgIC0weDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS45MjFmYjZwLTEsCisgICAgKGludCkweDEucDEsCisgICAgMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS45MjFmYjZwLTEsCisgICAgKGludCkweDEucDEsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS45MjFmYjZwLTEsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS45MjFmYjZwLTEsCisgICAgKGludCkweDEucDAsCisgICAgLTB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS4wMDAwMDJwLTEsCisgICAgKGludCkweDEucDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS5wLTEsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS5wLTEsCisgICAgKGludCkweDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLjkyMWZiNnAtMSwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS45MjFmYjZwLTEsCisgICAgKGludCkwLjAsCisgICAgLTB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuMDAwMDAycC0xLAorICAgIChpbnQpLTB4MS5mNHA2LAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuMDAwMDAycC0xLAorICAgIChpbnQpLTB4MS5mNHA2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEucC0xLAorICAgIChpbnQpLTB4MS5mNHA2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEucC0xLAorICAgIChpbnQpLTB4MS5mNHA2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuZmZmZmZjcC0xLAorICAgIChpbnQpLTB4MS5mOHA2LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0weDEuZmZmZmZjcC0xLAorICAgIChpbnQpLTB4MS5mOHA2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuZmZmZmY4cC0xLAorICAgIChpbnQpLTB4MS5mOHA2LAorICAgIDB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuZmZmZmY4cC0xLAorICAgIChpbnQpLTB4MS5mOHA2LAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAweDEucC0xLAorICAgIChpbnQpLTB4MS4yNnA3LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEucC0xLAorICAgIChpbnQpLTB4MS4yNnA3LAorICAgIC0weDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAweDEucC0xLAorICAgIChpbnQpLTB4MS4yOHA3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEucC0xLAorICAgIChpbnQpLTB4MS4yOHA3LAorICAgIC0weDEucC0xNDkKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9oeXBvdF9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvaHlwb3RfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQxYmZkZGUKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvaHlwb3RfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMjc4OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMl90PGRvdWJsZSwgZG91YmxlLCBkb3VibGU+IGdfaHlwb3RfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAweDEuNzQzMzRmMjg3MmJmMzI0YThiNmMwZmZhZjJmNGVlM2RwMCwKKyAgICAtMHgxLjBiMjUwMmIzZjc2NTZwMCwKKyAgICAweDEuMDMyYTc0YzhlMmJiZHAwCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS4yMWM5MTIzZTZjYmJmODEyOTUzOTEwMzcxZTI3NWRjN3AzLAorICAgIC0weDEuMjFjOTEwN2IwZTQ4OHAzLAorICAgIDB4MS5mZjc3ZmZmZmZmZmZmcC05CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS5hZDA5ZDBjODVhOWI3MzhmYmViNTkwNDkyYzQ1MTA4ZnAtMjEsCisgICAgLTB4MS4zZGI1YWY3MmQ5MDc0cC0yMSwKKyAgICAweDEuMjA1NDk3NmU0NzE4NHAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLjZhMWY3YjU4NGUwNTI4MDBlNWQ1ZWIyYzg0MmRlZmE2cC0xLAorICAgIC0weDEuNDcyMDBkYjMyZjg4Y3AtMSwKKyAgICAtMHgxLjM2YTA0OWFiMWVlZTBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLjg5M2VmZjEwYTA0YWVkNjEzNThkM2Q1YjY0ODFlZWJjcC00MjUsCisgICAgLTB4MS41YTljOTQ1Mzk0MWEwcC00MjYsCisgICAgLTB4MS42MGZmN2I3MzI2NTEwcC00MjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLjk0YzU4M2FkYTViNTIxODk2MmU2ZWQxNTY4ZmVhZDEycDAsCisgICAgLTB4MS43ZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLjk3Y2ZlNmUyNWNkNDQ4Y2Y1ZGJjYjUyMjEzNjc5Nzk2cC0xMSwKKyAgICAtMHgxLjhlMzhlMzhlMzhlMzdwLTExLAorICAgIC0weDEuNWZhZDQwYTU3ZWIzOHAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLjllNjYxODI5ZTVlZTE3ZmZiYTFkMjJlY2YwNTgwODczcDQyMSwKKyAgICAtMHgxLjk4OTdmYmIwZmE3NDdwNDE4LAorICAgIDB4MS45YjNkNDU3NDBjMzRjcDQyMQorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEuYzc2NTNkNGU5ZTZjNzdmZTJlYjNmYzY3MjA1MDVkYjZwLTExLAorICAgIC0weDEuYmJiYmJiYmJiYmJiY3AtMTEsCisgICAgLTB4MS45OTk5OTk5OTk5YzMzcC0xMworICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuZGRmZmU2ZTVhM2E4Mzg0MDE2ZWQzNWYxMTViYzA5NWVwLTExLAorICAgIC0weDEuZTkxMzFhYmYwYjcxN3AtMTQsCisgICAgMHgxLmRhMTJmNjg0YmRhMjRwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEuNzE1OGI1MGNhMzM0ODgwMTJkNzk2ZWI2ZjFhNzU4OWJwMCwKKyAgICAtMHgxLmY1NzIzYmUwY2FmYjRwLTEsCisgICAgMHgxLjBmMzViNmQxZTRlMGZwMAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLjAwMDA3ZmZmZGZmZmY3ZmZlMjAwMGRmZmY2NDAwN2FmcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC05CisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuZmZmZmZmZmVwLTEwNDMsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZTBwLTEwNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS4xOTk5OTk5OTk5OTlhMHAwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMTk5OTk5OTk5OTk5YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEuYWFhYWFhYWFhYWFhYTBwMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmFhYWFhYWFhYWFhYWFwMAorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLmI4NzA2NWQyNGNlZTUyYjA4MGQzMjU0M2NhOWNmYzE5cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLAorICAgIC0weDEuNjY2NjY2NjY2NjY2OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLjQzNTk2ZmZhYTc0Nzg4NTU4ZDFmYmVmNWJjNjY1NGU1cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIsCisgICAgLTB4MS4zY2YzY2YzY2YzY2Y0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS40Y2NjY2NjY2NjY2QwODAwMDAwMDAwMDAwMDYyNzYyN3AtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMywKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzdwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS44MDE1NTRiZGE5OWM3MmQ4ZGU4ZThkMDgxMDUyM2Q1NnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01LAorICAgIDB4MS44MDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS43NGI1MGNlMjQ1NDMwODAxNTA0NWVlY2U5NDk0YWNmYnAtMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNywKKyAgICAtMHgxLjc0NWQxNzQ1ZDBlMThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS4yOGZmOTFhYjcyZDcyN2ZhY2Y5YmU4ZmJkMTI5ZTA1ZXAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDA4MHAtMywKKyAgICAweDEuMGMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuMDAwMDMzZDVhYjA5ZTgwMTdiOWZlODcwMjgwZDEyNDdwOSwKKyAgICAweDEuMDAwMDAwMDAwMGFlZXA5LAorICAgIDB4MS40NWQxNzQ1ZDE3NDVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS4wN2UwZjY3MGMxNmU0OGUxZTdjMjRlNTkzOWUzMWY1NXAtMywKKyAgICAweDEuMDAwMDAwMDk4ODBwLTMsCisgICAgMHgxLmZmZmZmZjhjZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS5iNTk2YjU4NzhlMjU4MDAwMDEwOTRkZmQyMTZjZjY5M3AtMSwKKyAgICAweDEuMDAwMDAwNDBlZDQzNXAtMSwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLjAwMDhmZmQ4MDk2Nzk4MWQwZWZkZjM0ZGU0MmJlNjU4cC00LAorICAgIDB4MS4wMDAwMDA3ZmZmZmRlcC0xMCwKKyAgICAweDEuMDAwMGZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLjZhMDllOGUxOTExNjA4MDk5NGFmMGVmYmRlMTU5ODM4cC0yMCwKKyAgICAweDEuMDAwMDAzN2ZmZmZkZnAtMjAsCisgICAgMHgxLjAwMDAwMDAwMTEwcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLjAwMDA5ZWM0NTJhOGM4MWM0OTBmOWJhMzg3NjhjZTdjcC0zLAorICAgIDB4MS4wMDAwMDQzZmZmZmRmcC0zLAorICAgIDB4MS4xOTQ1MzgwOGNhMjk2cC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLmI4NzliMmMzZmFhZTM3ZmU1ZDgyNTRjMWE5NDQzZmQ2cC0xLAorICAgIDB4MS4wMDBmZmZmZmZmNmM4cC0xLAorICAgIC0weDEuNjY2NjY2NjY2NjY2OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLjZiOTgyNGE1ZDlmZWZjNmZhYzNjMDZmMmJlYmE2ZDE2cDAsCisgICAgMHgxLjAwMXAwLAorICAgIDB4MS4wMjIyMjIyMjIyMjIzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS42YjFkYzIzM2MwOGFhY2YwNGQ0MmIzZDI5M2UxMmE0OXAwLAorICAgIDB4MS4wMDE2ZjVlNzRiZmRkcDAsCisgICAgLTB4MS4wMTZlYjY4NDE1YWIxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS43NzhkMjc2OTA1MThkZDQxYmQ3M2FkNDg4ZjJhMjE3NHAtMjcsCisgICAgMHgxLjAwYTQzNmU5NDQyZGRwLTI3LAorICAgIDB4MS4xMjJkYzQyZTEyNDkxcC0yNworICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLjZjOWVkNTZkM2UwOTM4MDAzMDBmMmMyMjliMzU5YTNkcDAsCisgICAgMHgxLjAxYjU5MzcyZDNkcDAsCisgICAgLTB4MS4wMWYxMWNhYTBkOGZhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS42MmU0NDgyM2Y2YzgyODAxOWQ5OWYyZWE2ZTQyYjQ0ZHAtMSwKKyAgICAweDEuMDYyNGRkNDFmYWM4N3AtMTAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS42MmU0NDgyM2Y2Yzk5ODAwMDBmYzBmODViM2M1NWE3OXAtMSwKKyAgICAweDEuMDYyNGRkNDljMzhjOXAtMTAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS4wODZiOTQ4YTEyZDhjODAwY2YxODA4YTEwYTUxNzRkOXAzLAorICAgIDB4MS4wODZhYzk4MDRjMTZmcDMsCisgICAgMHgxLjQ3YWUxNDdhZTE0ODhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS43NDMzNGYyODcyYmYzMjRhOGI2YzBmZmFmMmY0ZWUzZHAwLAorICAgIDB4MS4wYjI1MDJiM2Y3NjU2cDAsCisgICAgLTB4MS4wMzJhNzRjOGUyYmJkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS5iMTc0ZTI2NTU5ZGY2ODAxZTY3OTgyMTEwYzc5ZTkyMXAwLAorICAgIDB4MS4wZGFkZWM3NTQwN2QxcDAsCisgICAgMHgxLjUzNTk0ZDY1MzU5NTBwMAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLjBmYTZhYjU4N2JlM2Y4MTMxNmQxMDNkZDU2ODQ1MTg5cDIsCisgICAgMHgxLjBkYzI3YjdlZGFkNjFwMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZGZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS4wZTAwMDAwMDAxZTc3ODAwNzk1YjMzMTdjZGI4Y2Y0OHAtMSwKKyAgICAweDEuMGUwcC0xLAorICAgIDB4MS4wMDg4MHAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS4xZTY0M2EyNGRkZTkxODEwODcwMmE5NThhMzQ2NTliZHAxLAorICAgIDB4MS4xNzI2MWQxZmJlNzBmcDEsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuMDAwMDllYzQ1MmE4YzgxYzQ5MGY5YmEzODc2OGNlN2NwLTMsCisgICAgMHgxLjE5NDUzODA4Y2EyOTZwLTExLAorICAgIDB4MS4wMDAwMDQzZmZmZmRmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuMWY3NjQ4Y2I5YzI5MjgxMDJmMzAxYjRlMmE2ZGE3ZjhwMywKKyAgICAweDEuMWY2ZmI3ZGJlZGYzMXAzLAorICAgIC0weDEuZWI4NTFlYjg1MWViMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLjNmYzE2OGIxYmE2NWY3ZmVmY2JhOGM1MWM5ZGNlZWJlcDEsCisgICAgMHgxLjMzMzMzMzMzNDk1NWRwMSwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLmQ1NjFkYzZiYmM2OWI3ZmZmZWZkNGVlZjM2YmI0NWNlcC0xLAorICAgIDB4MS4zMzMzMzMzNmZmYjMzcC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuYjZkNjM0OTJkMjA4YjdmZTY2NzY5NjAwODUyYjEyZDhwNywKKyAgICAweDEuMzg0NTYzNjQyNTc2N3A3LAorICAgIDB4MS4zNDUzNDU2NDU2MWQ0cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5iNmQ2MzQ5MmNmNmRkZmZmN2E0YmYxNzlhOWYyZDZjYXA3LAorICAgIDB4MS4zODQ1NjM2NDI1Nzc2cDcsCisgICAgMHgxLjM0NTM0NTY0NTI2NzNwNworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLjg1M2EwZDUxMjJjZWY0NTZiMDVhMTUxMGZiZWFkNjQzcDYsCisgICAgMHgxLjNiYmQ5ZTFmYTI3YjRwNiwKKyAgICAweDEuYzczNzJiNmE1MTRiY3A1CisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuM2ZiYTBhZTRjZTA4YjgxMGU4ZjU2ZGRhZjEyYTdmNGZwMywKKyAgICAweDEuM2UxZjBmODdjM2RkMXAzLAorICAgIC0weDEuZmZmZmZmZmZmZmZkZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLmI3MWJlNDIxNWE1MzI4M2Q3MWY1YjExMGE4NzBlODk0cC0xMSwKKyAgICAweDEuNDg0ZTJhZmUwYmJjNnAtMTMsCisgICAgLTB4MS5hZjVlYmQ3YWY1ZWMwcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgMHgxLjU2ZDA3ZjlmZWI4MGQ4MDQ3ODFhZTQzMDUwNThiNjc2cDIsCisgICAgMHgxLjU1MGZlMTc3OWM1cDIsCisgICAgLTB4MS4xNGYyODA1Zjg1ZDI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuYTUyZGY1YzI0Yzg5NDg5ZDUwNTI4NTMzYTdmMzU3NjNwMiwKKyAgICAweDEuNTU1NTU1NTU1NTU1NnAwLAorICAgIDB4MS45YzcxYzcxYzcxYzY5cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5iOTkzY2M0NDgyYjQ0N2ZmNGY3NDAzMGU4YmExNDg3MHAtMSwKKyAgICAweDEuNTczNTQwNzFjNjQyNnAtMywKKyAgICAtMHgxLmIxMjkzZjZmNTM4ODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS5hN2UyYWJjNTdmMGUzODBhNzBjMjRkNjc1MjQxZjEyMHAwLAorICAgIDB4MS41YjJkOTZjYjY1YnAwLAorICAgIC0weDEuZTY2NjY2NjY2NjY2NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLmU0NGQyNjMwM2M4ZTcwMzI2MGFkYWMzNWJlYjAyMDFhcDQyMSwKKyAgICAweDEuNjAwZWMyM2I3YjYxZXA0MjEsCisgICAgLTB4MS40YzkyMTQ4Y2VmMTRhcDQyMQorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLmY4NjExNzAxOTY5Y2NmZmZmZjA0NWMzZjk5ZmU0OGY3cC0xLAorICAgIDB4MS42NjY2NjY2ZGFjMmZhcC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuNmNjOTNjNGQ2NTM2ODgwMjM0NTg0MmFmMjI4MmE1ZWFwMSwKKyAgICAweDEuNmNjOTNhNzU0MTMzZXAxLAorICAgIDB4MS4yNTc0MzAxMzlwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuNmNjOTNjNGQ2NTM2ODgwMjVjOTE0N2I1YjYwNDQxZTlwMSwKKyAgICAweDEuNmNjOTNhNzU0MTMzZXAxLAorICAgIDB4MS4yNTc0MzAxMzkwMGM4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgMHgxLjZjYzkzYzRkNjUzNjg4MDI1ZTJkMjkzMGRhYTMxM2Q1cDEsCisgICAgMHgxLjZjYzkzYTc1NDEzM2VwMSwKKyAgICAweDEuMjU3NDMwMTM5MDBkMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS5kNDg4YWM5NzA1M2YzN2ZiYmEyNzdkMDdhYzQzY2FkNXAtMjAsCisgICAgMHgxLjdwLTIwLAorICAgIDB4MS4yMjBwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuNDAwMDAwMDA0Y2NjYzgwMDA1MmYxYmM2YTZjMTdlODhwLTEsCisgICAgMHgxLjdmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLmZmZWU4ZGY5NTE3ZmY3ZmU3NTYwMGJiOTc1ZTVjZTYxcDAsCisgICAgMHgxLjgxNzkyOTEwYTVkYjFwLTEsCisgICAgLTB4MS5kYTQzYjVkY2UwYjE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS45YjBhNTczNjUxM2ZjN2ZmYWIwMzdhZTc1ZDA0ZTk5YXAyLAorICAgIDB4MS44OGE0NTIyOTE0ODgxcDIsCisgICAgMHgxLmU2NjY2NjY2NjY2NjdwMAorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLmE1ZmEwOGE3NTViNWM5MDBmMmQ1Y2M2NzUxZTFlY2Y5cDIsCisgICAgMHgxLjg4Y2IzYzk0ODRlMmFwMCwKKyAgICAweDEuOWE2NDQ5ZTU5YmI1ZHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuOGJlZmVmZWQwMjdlODdmZjZjNzAzMDhlMjA1YzJhMTlwNiwKKyAgICAweDEuOGJlZWE0ZTFhMDg3M3A2LAorICAgIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLjk2OTkxYTcyYmZkMDEwMDAwMDg2OGZmZTNlODMxMjc5cDEsCisgICAgMHgxLjhjY2NjY2NlM2JjYmRwMSwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLmJmN2NkOWQwMmM3ZTIyMGM2OTljYzgzNGZkZDRmYjQxcC00LAorICAgIDB4MS44ZGRmNDE1MjA2N2ZjcC00LAorICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtNQorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgMHgxLjc2ZTdiYThiYzc0NTI4MDA5NGE3MWRhZjEwZDRhNjhlcDI1LAorICAgIDB4MS45N2ZlMzg5NmM4MGYwcDIsCisgICAgMHgxLjc2ZTdiYThiYzc0MWJwMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS4wZWZhY2VmMmU0ZTgxZmZmZmVmZTU4N2YxYWU3ODNiNnAwLAorICAgIDB4MS45OTk5OTlhMGMwYTBicC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuNzE1ZTg2Nzg1OWE4NTgwMDAxMDQ4YTFlOWU5ZGZmN2NwLTEsCisgICAgMHgxLjk5OTk5OWI5Y2U3OTNwLTMsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS42NjkwY2Q3YzM5ZmE0ODAwMDEwNzQ1ZGMxZjkwMTkxOXAtMSwKKyAgICAweDEuOTk5OTk5ZGE4ZWQ3YXAtNCwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMHgxLmY2NTI5NGJhZWI3Nzg4MzMwZGVjZWZhNTk4ZTI3M2Q1cC0xMSwKKyAgICAweDEuOWRiY2M0ODY3NmY5NHAtMTUsCisgICAgMHgxLmY1YTgxNGFmZDZhMTFwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuYzI2Y2I3MzA4NjRkNjk4YzgyZGI1NzY5NTg2YmQ1MTlwMCwKKyAgICAweDEuYTI4ODJmNzY2MGMxOHAtMiwKKyAgICAweDEuYjYxYTY0NTAxODg4YXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEuMjA5ZjRmMmM1OTc5ZTgxNmJmOTllZmUxOGU2ZjFjZGFwMSwKKyAgICAweDEuYjhmMjJmMDMzYzg3MnAtMywKKyAgICAweDEuMWY0ZGI1MzNiY2RkY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEuNTAyMjU0NzlkNGIxNTdmZTc4NTU4ODU1N2NjNjZjZGVwLTEwLAorICAgIDB4MS5iZDhjYWFhZjk5MDkwcC0xMSwKKyAgICAtMHgxLmY3NmIyMzk4NmZmNDRwLTExCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuMDYwZGIwMDI0NWJmNzgxMDQ4YzUyOWU0ZWZmZjBhZmJwMjUsCisgICAgMHgxLmJmZmZmZmZmZmZmZmZwMjIsCisgICAgMHgxLjAwMDAwMjdmZmZmZGZwMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS5jOGMyNWI0NWFiYTE2OGYwMTg3YmI1YzNhYmJjM2QxNnAtMTEsCisgICAgMHgxLmMwNmIwOWU5MTlkOTRwLTExLAorICAgIC0weDEuNWI5MTEwNDhhMzMxMHAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS5mNTNiMjFiNWM0MDI0OWI5MmE5YzIyM2JhZTQzMzIzYnAwLAorICAgIDB4MS5jODFlNmY3ZmUzOTkzcC0yLAorICAgIC0weDEuZTgxNjdiNmRmMmVlMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAweDEuZjU5NTBmMDU2ZTM5ZTkwY2JhYWMxZjg5YWIzNmI0MGFwMiwKKyAgICAweDEuY2JhMmU4YmEyZThiN3AwLAorICAgIDB4MS5lODNlMGY4M2UwZjc2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS5kZGZmZTZlNWEzYTgzODQwMTZlZDM1ZjExNWJjMDk1ZXAtMTEsCisgICAgMHgxLmRhMTJmNjg0YmRhMjRwLTExLAorICAgIC0weDEuZTkxMzFhYmYwYjcxN3AtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS43OTQxYmIwNWEzOWNhN2ZmNWU0NTUzYjFmYzRkN2RiOXAtNDIzLAorICAgIDB4MS5mOGQ3YmJkN2NlOTIwcC00MjYsCisgICAgLTB4MS43M2YwZmQ0ZmQ5ZmQwcC00MjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS5iMTNmYWQ3Y2I3YzUwODAxZGVkZTE5MDVmM2YzNjZhMXA5LAorICAgIDB4MS5mOTFiOTFiOTFiOTA1cDIsCisgICAgMHgxLmIxM2IxM2IxM2IxMzBwOQorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLjY5ZmQ4NTg4Nzk0NzkwMDA3MWZiYzA4MTgzYjhhYjIzcDAsCisgICAgMHgxLmZjZjc2YzU0MGQ5NThwLTEsCisgICAgLTB4MS4wMTcwOThkODJmOTVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS4yMWM5MTIzZTZjYmJmODEyOTUzOTEwMzcxZTI3NWRjN3AzLAorICAgIDB4MS5mZjc3ZmZmZmZmZmZmcC05LAorICAgIC0weDEuMjFjOTEwN2IwZTQ4OHAzCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEuYzY2YWRkZmVjOTFjNDExZjM4ZTJhYWNiNmVhMDZhOTFwLTMsCisgICAgMHgxLmZmZWZmZmZmZmZmZmZwLTQsCisgICAgLTB4MS43Nzc3Nzc3Nzc3Nzc0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuNGViNTIyYjI0MTg2ZTgyNTQ1NzRjNzdiNWY5MTQ4NTVwLTEsCisgICAgMHgxLmZmZWZmZmZmZmZmZmZwLTQsCisgICAgMHgxLjQ4ODg4ODg4ODg4OGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS4wMDJjYWZmZTU5YjBhN2ZlZWRhNzQ3YTk0YjE3NmNjYXA0LAorICAgIDB4MS5mZmVmZmZmZmZmZmZmcDMsCisgICAgLTB4MS40ODg4ODg4ODg4ODg4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuZmZmMjhmNmYwMGU3OTdmZWM0M2ViMjVlMDhiODYxYWJwMywKKyAgICAweDEuZmZlZmZmZmZmZmZmZnAzLAorICAgIC0weDEuOTk5OTk5OTlhNzUwOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLjAwMDAwMDAxZmZmZmY3ZmUwMDA3ZjAwNDAwMTAwZmY2cDIwLAorICAgIDB4MS5mZmZmZmJmZmZmZmZmcDQsCisgICAgMHgxLjBwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS4wMDgyZGU5MTE5OGVlODE3MGJjZmYyOTAwODk1YjkyYXAyLAorICAgIDB4MS5mZmZmZmZmZmZmZGZmcC0zLAorICAgIDB4MS4wMDAyZmZmZmZmZmRmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS42YTA5ZTY2N2YzYzUxMjVhYjUwNDJiYTdiZTQzNmNiYnAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmN3AtMywKKyAgICAweDEuMDAwMDAwMDAwMDBjMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLmZmZmZmZmZmZmZmZmIwcDUwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmYnA1MDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS4zMzM1NzRlYjY2YTAwMjc5OGQyMGJiMmNhNzA4NjJlNHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMywKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMQorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTU3ZmZmZmZmZmZmZmM0MWFwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTI4LAorICAgIDB4MS43NDVkMTc0NWQxNzUwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmVmZmZwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMzIsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS43Nzc3Nzc3Nzc3NzgwMDAwMDE1ZDE3NDVkMTc0NWM2Y3AtNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtNDAsCisgICAgMHgxLjc3Nzc3Nzc3Nzc3ODBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS4wMWM1OTY3ZTQ5Y2I1ODFiMWNlMzg5NjU5ZDhmNjhlY3AyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEsCisgICAgLTB4MS5lMmJlMmJlMmJlMmMzcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEuMDA1OGQ0MjRmNDQ4ZTgyMDIyNWQyZTdhMjVhYmMwZWJwNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAzLAorICAgIC0weDEuYWFhYWFhYWFhYWFhOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLjZhMDllNjY3ZjNiY2RmYTk1MTYxOTJhMmI3MjYwODZkcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS42YTA5ZTY2N2YzYmNkNDU5MDIyZTUzMDRkMTBiMDQxMnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwMCwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAwLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLjZhMDllNjY3ZjNiY2MzNjA4YjYxNzM5N2Y3N2NhYWMxcDAsCisgICAgLTB4MS4wcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLjZhMDllNjY3ZjNiY2NlYjBkYTk0YjMzNWRlMWY3MmQycDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjZhMDllNjY3ZjNiY2MzNjA4YjYxNzM5N2Y3N2NhYWMxcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjZhMDllNjY3ZjNiY2JkYjg2M2M3ZDNjOTA0NGQzN2E2cDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS42YTA5ZTY2N2YzYmNjZWIwZGE5NGIzMzVkZTFmNzJkMnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLjZhMDllNjY3ZjNiY2Q0NTkwMjJlNTMwNGQxMGIwNDEycDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS42YTA5ZTY2N2YzYmNkZmE5NTE2MTkyYTJiNzI2MDg2ZHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAwLAorICAgIC0weDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLjZhMDllNjY3ZjNiY2JkYjg2M2M3ZDNjOTA0NGQzN2E2cDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLjZhMDllNjY3ZjNiY2MzNjA4YjYxNzM5N2Y3N2NhYWMxcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS42YTA5ZTY2N2YzYmNjZWIwZGE5NGIzMzVkZTFmNzJkMnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjZhMDllNjY3ZjNiY2MzNjA4YjYxNzM5N2Y3N2NhYWMxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEuNmEwOWU2NjdmM2JjYmRiODYzYzdkM2M5MDQ0ZDM3YTZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwMCwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS42YTA5ZTY2N2YzYmNjMzYwOGI2MTczOTdmNzdjYWFjMXAwLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLjZhMDllNjY3ZjNiY2RmYTk1MTYxOTJhMmI3MjYwODZkcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS42YTA5ZTY2N2YzYmNkNDU5MDIyZTUzMDRkMTBiMDQxMnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS42YTA5ZTY2N2YzYmNiZGI4NjNjN2QzYzkwNDRkMzdhNnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjZhMDllNjY3ZjNiY2MzNjA4YjYxNzM5N2Y3N2NhYWMxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS42YTA5ZTY2N2YzYmNjZWIwZGE5NGIzMzVkZTFmNzJkMnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLjZhMDllNjY3ZjNiY2Q0NTkwMjJlNTMwNGQxMGIwNDEycDAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLjZhMDllNjY3ZjNiY2NlYjBkYTk0YjMzNWRlMWY3MmQycDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS42YTA5ZTY2N2YzYmNkNDU5MDIyZTUzMDRkMTBiMDQxMnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS42YTA5ZTY2N2YzYmNkZmE5NTE2MTkyYTJiNzI2MDg2ZHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAwLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAwLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuMDFmZTAzZjYxYmFkMDRiMTA2ODU3MmZlYmM5MjVhZDFwMywKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuMDFmZTAzZjYxYmFkMDRiMTA2ODU3MmZlYmM5MjVhZDFwMywKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMywKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuMDAwMDFmZmZmZTAwMDAzZmZmZjYwMDAxYmZmZmFjcDksCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLjAwMDAwN2ZmZmZlMDAwMDBmZmZmZjYwMDAwNmZmZmZhcDEwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAweDEuMDAwN2ZmZTAwMGZmZjYwMDZmZmFjMDQxZmNhNjJjYWRwOSwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAweDEuMDAwMWZmZmUwMDAzZmZmNjAwMWJmZmFjMDEwN2ZjYTZwMTAsCisgICAgMHgxLjBwMywKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS5wMTAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLnAxMDEsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAweDEucDEwMCwKKyAgICAweDEuMHAzLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS5wMTAxLAorICAgIDB4MS4wcDMsCisgICAgMHgxLjBwMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgMHgxLjAwMDAxZmZmZmUwMDAwM2ZmZmY2MDAwMWJmZmZhY3A5LAorICAgIDB4MS4wcDksCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS4wMDA3ZmZlMDAwZmZmNjAwNmZmYWMwNDFmY2E2MmNhZHA5LAorICAgIDB4MS4wcDksCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIDB4MS4wMDAwMDdmZmZmZTAwMDAwZmZmZmY2MDAwMDZmZmZmYXAxMCwKKyAgICAweDEuMHAxMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLjAwMDFmZmZlMDAwM2ZmZjYwMDFiZmZhYzAxMDdmY2E2cDEwLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwOSwKKyAgICAweDEuMHA5LAorICAgIDB4MS4wcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuMWUzNzc5Yjk3ZjRhN2MxNWYzOWNjMDYwNWNlZGM4MzRwMTAsCisgICAgMHgxLjBwOSwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDB4MS4xZTM3NzliOTdmNGE3YzE1ZjM5Y2MwNjA1Y2VkYzgzNHAxMCwKKyAgICAweDEuMHAxMCwKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDEwLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgMHgxLnAxMDAsCisgICAgMHgxLjBwOSwKKyAgICAweDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEucDEwMSwKKyAgICAweDEuMHA5LAorICAgIDB4MS4wcDEwMQorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDB4MS5wMTAwLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS5wMTAxLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDEwMQorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIDB4MS5wMTAwLAorICAgIDB4MS4wcDEwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLnAxMDAsCisgICAgMHgxLjBwMTAwLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAweDEucDEwMSwKKyAgICAweDEuMHAxMDEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS5wMTAxLAorICAgIDB4MS4wcDEwMSwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgMHgxLnAxMDAsCisgICAgMHgxLjBwMTAwLAorICAgIDB4MS4wcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEucDEwMCwKKyAgICAweDEuMHAxMDAsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAweDEucDEwMSwKKyAgICAweDEuMHAxMDEsCisgICAgMHgxLjBwOQorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS5wMTAxLAorICAgIDB4MS4wcDEwMSwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAxMDAsCisgICAgMHgxLjBwMTAwLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS4xZTM3NzliOTdmNGE3YzE1ZjM5Y2MwNjA1Y2VkYzgzNHAxMDEsCisgICAgMHgxLjBwMTAwLAorICAgIDB4MS4wcDEwMQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIDB4MS4xZTM3NzliOTdmNGE3YzE1ZjM5Y2MwNjA1Y2VkYzgzNHAxMDEsCisgICAgMHgxLjBwMTAxLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAxMDEsCisgICAgMHgxLjBwMTAxLAorICAgIDB4MS4wcDEwMQorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDB4MS5hZDUzMzY5NjNlZWZhODNkNzVjZjg4OWJlM2EzNGQxNHAyLAorICAgIDB4MS43ZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLjdmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIDB4MS5hZDUzMzY5NjNlZWZhYmQxNWE4ODQwOTk5ZWQ5M2Q4OXAyLAorICAgIDB4MS43ZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIDB4MS5hZDUzMzY5NjNlZWZhZjY1M2Y0MGY4OTc1YTJkYjU5ZXAyLAorICAgIDB4MS43ZmZmZmZmZmZmZmZmcDIsCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS5hZDUzMzY5NjNlZWZiNjhkMDhiMjY4OTJkMDRkNDM3OHAyLAorICAgIDB4MS44cDIsCisgICAgMHgxLjdmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS5hZDUzMzY5NjNlZWZiYTIwZWQ2YjIwOTA4YjY0YWM0ZXAyLAorICAgIDB4MS44cDIsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS5hZDUzMzY5NjNlZWZiZGI0ZDIyM2Q4OGU0NjlhOWNjM3AyLAorICAgIDB4MS44cDIsCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIDB4MS5hZDUzMzY5NjNlZWZjNGRjOWI5NTQ4ODliZDE1YzE3ZHAyLAorICAgIDB4MS44MDAwMDAwMDAwMDAxcDIsCisgICAgMHgxLjdmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS5hZDUzMzY5NjNlZWZjODcwODA0ZTAwODc3ODBlYTJiMnAyLAorICAgIDB4MS44MDAwMDAwMDAwMDAxcDIsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIDB4MS5hZDUzMzY5NjNlZWZjYzA0NjUwNmI4ODUzMzI2MGI4N3AyLAorICAgIDB4MS44MDAwMDAwMDAwMDAxcDIsCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjZhMDllNjY3ZjNiYzliYzc3NjJlMTRlZjUxNzQ2NmRlcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjZhMDllNjY3ZjNiY2E3MTdjNTYxNTQ4ZDM3ZTllZGIzcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLjZhMDllNjY3ZjNiY2IyNjgxNDk0OTQyYjFlYjlmNzAxcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLjZhMDllNjY3ZjNiY2E3MTdjNTYxNTQ4ZDM3ZTllZGIzcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLjZhMDllNjY3ZjNiY2IyNjgxNDk0OTQyYjFlMDRmMjBlcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLjZhMDllNjY3ZjNiY2JkYjg2M2M3ZDNjOTA0N2E3OGUzcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLjZhMDllNjY3ZjNiY2IyNjgxNDk0OTQyYjFlYjlmNzAxcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjZhMDllNjY3ZjNiY2JkYjg2M2M3ZDNjOTA0N2E3OGUzcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLjZhMDllNjY3ZjNiY2JkYjg2M2M3ZDNjOTA0NGQzN2E2cDUxMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTExCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgMHgxLjZhMDllNjY3ZjNiY2JkYjg2M2M3ZDNjOTA0NGQzN2E2cDUxMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTExCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLjZhMDllNjY3ZjNiY2JkYjg2M2M3ZDNjOTA0NGQzN2E2cDUwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLjZhMDllNjY3ZjNiY2MzNjA4YjYxNzM5N2Y3N2NhYWMxcDUwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MDAsCisgICAgMHgxLjBwNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgMHgxLjZhMDllNjY3ZjNiY2NlYjBkYTk0YjMzNWRlMWY3MmQycDUwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLjZhMDllNjY3ZjNiY2MzNjA4YjYxNzM5N2Y3N2NhYWMxcDUwMSwKKyAgICAweDEuMHA1MDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDUwMSwKKyAgICAweDEuMHA1MDEsCisgICAgMHgxLjBwNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLjZhMDllNjY3ZjNiY2Q0NTkwMjJlNTMwNGQxMGIwNDEycDUwMSwKKyAgICAweDEuMHA1MDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgMHgxLjZhMDllNjY3ZjNiY2NlYjBkYTk0YjMzNWRlMWY3MmQycDUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLjZhMDllNjY3ZjNiY2Q0NTkwMjJlNTMwNGQxMGIwNDEycDUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MDEsCisgICAgMHgxLjBwNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgMHgxLjZhMDllNjY3ZjNiY2RmYTk1MTYxOTJhMmI3MjYwODZkcDUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgMHgxLjZhMDllNjY3ZjNiY2JkYjg2M2M3ZDNjOTA0NGQzN2E2cC01MDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTAyCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLjZhMDllNjY3ZjNiY2MzNjA4YjYxNzM5N2Y3N2NhYWMxcC01MDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUwMiwKKyAgICAweDEuMHAtNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLjZhMDllNjY3ZjNiY2NlYjBkYTk0YjMzNWRlMWY3MmQycC01MDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgMHgxLjZhMDllNjY3ZjNiY2MzNjA4YjYxNzM5N2Y3N2NhYWMxcC01MDEsCisgICAgMHgxLjBwLTUwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTAyCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC01MDEsCisgICAgMHgxLjBwLTUwMSwKKyAgICAweDEuMHAtNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLjZhMDllNjY3ZjNiY2Q0NTkwMjJlNTMwNGQxMGIwNDEycC01MDEsCisgICAgMHgxLjBwLTUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLjZhMDllNjY3ZjNiY2NlYjBkYTk0YjMzNWRlMWY3MmQycC01MDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTAyCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLjZhMDllNjY3ZjNiY2Q0NTkwMjJlNTMwNGQxMGIwNDEycC01MDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwMSwKKyAgICAweDEuMHAtNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLjZhMDllNjY3ZjNiY2RmYTk1MTYxOTJhMmI3MjYwODZkcC01MDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDUwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUwMgorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA1MDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTAwLAorICAgIDB4MS4wcC01MDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNTAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLnA1MDEsCisgICAgMHgxLjBwNTAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01MDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAweDEucDUwMSwKKyAgICAweDEuMHA1MDEsCisgICAgMHgxLjBwLTUwMQorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS5wNTAxLAorICAgIDB4MS4wcDUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUwMgorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA1MDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAxLAorICAgIDB4MS4wcC01MDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNTAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDUwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDUwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MDAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA1MDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLnA1MDEsCisgICAgMHgxLjBwNTAxLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS5wNTAxLAorICAgIDB4MS4wcDUwMSwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMHgxLnA1MDEsCisgICAgMHgxLjBwNTAxLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MDEsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MDEsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA1MDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAxLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC01MDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUwMiwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTUwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTAyLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTUwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTAyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMHgxLnAtNTAxLAorICAgIDB4MS4wcC01MDEsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLnAtNTAxLAorICAgIDB4MS4wcC01MDEsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS5wLTUwMSwKKyAgICAweDEuMHAtNTAxLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC01MDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwMSwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAxLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAxLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDUwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNTAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDUwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS5wNTAxLAorICAgIDB4MS4wcDUwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS5wNTAxLAorICAgIDB4MS4wcDUwMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgMHgxLnA1MDEsCisgICAgMHgxLjBwNTAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNTAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA1MDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAxLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNTAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01MDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUwMiwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIDB4MS4wcC01MDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTUwMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgMHgxLjBwLTUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDBmZmZmZmZmcDQ5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQ5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDEwcDQ5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQ5LAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMTBwNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN2ZmZmZmZnA1MCwKKyAgICAweDEuMHA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN2ZmZmZmZnA1MCwKKyAgICAweDEuMHA1MCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4cDUwLAorICAgIDB4MS4wcDUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDdmZmZmZmZwNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDdmZmZmZmZwNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwOHA1MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAzZmZmZmZmcDUwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDA0cDUwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDRwNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMWZmZmZmZnA1MSwKKyAgICAweDEuMHA1MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMWZmZmZmZnA1MSwKKyAgICAweDEuMHA1MSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycDUxLAorICAgIDB4MS4wcDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEuMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDFmZmZmZmZwNTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDFmZmZmZmZwNTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMnA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwZmZmZmZmcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAxcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDFwNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdmZmZmZnA1MiwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdmZmZmZnA1MiwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODBwNTIsCisgICAgMHgxLjBwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDdmZmZmZnA1MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIDB4MS4wMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDdmZmZmZnA1MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MiwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwODBwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMDNmZmZmZnA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMDQwcDUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUyLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDA0MHA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMWZmZmZmcDUzLAorICAgIDB4MS4wcDUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMWZmZmZmcDUzLAorICAgIDB4MS4wcDUzLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyMHA1MywKKyAgICAweDEuMHA1MywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMWZmZmZmcDUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMWZmZmZmcDUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUzLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAweDEuMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAyMHA1MywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwMGZmZmZmcDUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwMTBwNTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTMsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMDEwcDUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN2ZmZmZwNTQsCisgICAgMHgxLjBwNTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN2ZmZmZwNTQsCisgICAgMHgxLjBwNTQsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4cDU0LAorICAgIDB4MS4wcDU0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwN2ZmZmZwNTQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwN2ZmZmZwNTQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTQsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDA4cDU0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDU0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAweDEuNmEwOWU2NjdmM2JjYmRiODYzYzdkM2M5MDQ0ZDM3YTZwLTUwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01MDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwLTUwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTAxLAorICAgIDB4MS4wcC01MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwLTUwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwLTUwMCwKKyAgICAweDEuMHAtNTAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01MDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTUwMCwKKyAgICAweDEuMHAtNTAwLAorICAgIDB4MS4wcC01MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwLTUwMCwKKyAgICAweDEuMHAtNTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwLTUwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01MDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwLTUwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAwLAorICAgIDB4MS4wcC01MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAweDEuNmEwOWU2NjdmM2JjZGZhOTUxNjE5MmEyYjcyNjA4NmRwLTUwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuNmEwOWU2NjdmM2JjYmRiODYzYzdkM2M5MDQ0ZDM3YTZwLTYwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwLTYwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02MSwKKyAgICAweDEuMHAtNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwLTYwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwLTYwLAorICAgIDB4MS4wcC02MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTYwLAorICAgIDB4MS4wcC02MCwKKyAgICAweDEuMHAtNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwLTYwLAorICAgIDB4MS4wcC02MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwLTYwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwLTYwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02MCwKKyAgICAweDEuMHAtNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuNmEwOWU2NjdmM2JjZGZhOTUxNjE5MmEyYjcyNjA4NmRwLTYwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEuNmEwOWU2NjdmM2JjYmRiODYzYzdkM2M5MDQ0ZDM3YTZwLTEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwLTEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMSwKKyAgICAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwLTEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwLTEwLAorICAgIDB4MS4wcC0xMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTEwLAorICAgIDB4MS4wcC0xMCwKKyAgICAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwLTEwLAorICAgIDB4MS4wcC0xMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwLTEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwLTEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMCwKKyAgICAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuNmEwOWU2NjdmM2JjZGZhOTUxNjE5MmEyYjcyNjA4NmRwLTEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAweDEuNmEwOWU2NjdmM2JjYmRiODYzYzdkM2M5MDQ0ZDM3YTZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwLTEsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTEsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwLTEsCisgICAgMHgxLjBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuNmEwOWU2NjdmM2JjZGZhOTUxNjE5MmEyYjcyNjA4NmRwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzkKKyAgICAweDEuNmEwOWU2NjdmM2JjYmRiODYzYzdkM2M5MDQ0ZDM3YTZwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwMSwKKyAgICAweDEuMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMSwKKyAgICAweDEuMHAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwMSwKKyAgICAweDEuMHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuNmEwOWU2NjdmM2JjZGZhOTUxNjE5MmEyYjcyNjA4NmRwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDgKKyAgICAweDEuNmEwOWU2NjdmM2JjYmRiODYzYzdkM2M5MDQ0ZDM3YTZwMTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgMHgxLjZhMDllNjY3ZjNiY2MzNjA4YjYxNzM5N2Y3N2NhYWMxcDEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDksCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwMTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIDB4MS42YTA5ZTY2N2YzYmNjMzYwOGI2MTczOTdmNzdjYWFjMXAxMCwKKyAgICAweDEuMHAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDEwLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzUzCisgICAgMHgxLjZhMDllNjY3ZjNiY2Q0NTkwMjJlNTMwNGQxMGIwNDEycDEwLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgMHgxLjZhMDllNjY3ZjNiY2NlYjBkYTk0YjMzNWRlMWY3MmQycDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAweDEuNmEwOWU2NjdmM2JjZGZhOTUxNjE5MmEyYjcyNjA4NmRwMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAweDEuNmEwOWU2NjdmM2JjYmRiODYzYzdkM2M5MDQ0ZDM3YTZwNjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwNjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTksCisgICAgMHgxLjBwNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwNjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwNjAsCisgICAgMHgxLjBwNjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwNjAsCisgICAgMHgxLjBwNjAsCisgICAgMHgxLjBwNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwNjAsCisgICAgMHgxLjBwNjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwNjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwNjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNjAsCisgICAgMHgxLjBwNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAweDEuNmEwOWU2NjdmM2JjZGZhOTUxNjE5MmEyYjcyNjA4NmRwNjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuNmEwOWU2NjdmM2JjYmRiODYzYzdkM2M5MDQ0ZDM3YTZwNTAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQ5OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjcKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwNTAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQ5OSwKKyAgICAweDEuMHA1MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwNTAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQ5OSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc3Y2FhYzFwNTAwLAorICAgIDB4MS4wcDUwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzAKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwNTAwLAorICAgIDB4MS4wcDUwMCwKKyAgICAweDEuMHA1MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwNTAwLAorICAgIDB4MS4wcDUwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwNTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzMKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwNTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwMCwKKyAgICAweDEuMHA1MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAweDEuNmEwOWU2NjdmM2JjZGZhOTUxNjE5MmEyYjcyNjA4NmRwNTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzc4CisgICAgMHgxLnAxMDIzLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAweDEucDEwMjMsCisgICAgMHgxLjBwMTAyMywKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgMHgxLnAxMDIzLAorICAgIDB4MS4wcDEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDM4MQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODIKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIzLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODMKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODQKKyAgICAweDEuNzc4ZDI3NjkwNTE4YzcxZDhkNGQ3ODI4ODlmYzFjMzhwLTI3LAorICAgIDB4MS4wMGE0MzZlOTQ0MmVicC0yNywKKyAgICAweDEuMTIyZGM0MmUxMjQ4MnAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAweDEuNzc4ZDI3NjkwNTE4ZDJjYmViMWU0M2E5NGExOGRjYmJwLTI3LAorICAgIDB4MS4wMGE0MzZlOTQ0MmVicC0yNywKKyAgICAweDEuMTIyZGM0MmUxMjQ4M3AtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODYKKyAgICAweDEuNzc4ZDI3NjkwNTE4ZGU3YTQ4ZWYwZjJhMGE4NzFiYjNwLTI3LAorICAgIDB4MS4wMGE0MzZlOTQ0MmVicC0yNywKKyAgICAweDEuMTIyZGM0MmUxMjQ4NHAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODcKKyAgICAweDEuNzc4ZDI3NjkwNTE4ZDIwY2E1M2NiYzFkZjNmMmVmZjhwLTI3LAorICAgIDB4MS4wMGE0MzZlOTQ0MmVjcC0yNywKKyAgICAweDEuMTIyZGM0MmUxMjQ4MnAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODgKKyAgICAweDEuNzc4ZDI3NjkwNTE4ZGRiYjAzMGQ4NzllYjNiOGEwNjlwLTI3LAorICAgIDB4MS4wMGE0MzZlOTQ0MmVjcC0yNywKKyAgICAweDEuMTIyZGM0MmUxMjQ4M3AtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAweDEuNzc4ZDI3NjkwNTE4ZTk2OTYwZGU1MzFmNzNjZmNmNGZwLTI3LAorICAgIDB4MS4wMGE0MzZlOTQ0MmVjcC0yNywKKyAgICAweDEuMTIyZGM0MmUxMjQ4NHAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTAKKyAgICAweDEuNzc4ZDI3NjkwNTE4ZGNmYmJkMmMwMDEzNWU0NmM2ZDFwLTI3LAorICAgIDB4MS4wMGE0MzZlOTQ0MmVkcC0yNywKKyAgICAweDEuMTIyZGM0MmUxMjQ4MnAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTEKKyAgICAweDEuNzc4ZDI3NjkwNTE4ZThhYTFhZmNjYjk0MWRiNTY3MzFwLTI3LAorICAgIDB4MS4wMGE0MzZlOTQ0MmVkcC0yNywKKyAgICAweDEuMTIyZGM0MmUxMjQ4M3AtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAweDEuNzc4ZDI3NjkwNTE4ZjQ1ODc4Y2Q5NzE0ZGQ3NTg2MDVwLTI3LAorICAgIDB4MS4wMGE0MzZlOTQ0MmVkcC0yNywKKyAgICAweDEuMTIyZGM0MmUxMjQ4NHAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAweDEuNzQzMzRmMjg3MmJmMzFmMmJkNzhjOGQzMmFkMzg0YTZwMCwKKyAgICAweDEuMGIyNTAyYjNmNzY1NXAwLAorICAgIC0weDEuMDMyYTc0YzhlMmJiZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzk0CisgICAgMHgxLjc0MzM0ZjI4NzJiZjI2Y2VhYTZlOGQzNjA2NzA5M2ZmcDAsCisgICAgMHgxLjBiMjUwMmIzZjc2NTVwMCwKKyAgICAtMHgxLjAzMmE3NGM4ZTJiYmRwMAorICB9LAorICB7IC8vIEVudHJ5IDM5NQorICAgIDB4MS43NDMzNGYyODcyYmYxYmFhOTc2NDUxOThlMjY4NTg2OHAwLAorICAgIDB4MS4wYjI1MDJiM2Y3NjU1cDAsCisgICAgLTB4MS4wMzJhNzRjOGUyYmJjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAweDEuNzQzMzRmMjg3MmJmM2Q2ZTllNzY0Yjk4MTZmZmRmNWVwMCwKKyAgICAweDEuMGIyNTAyYjNmNzY1NnAwLAorICAgIC0weDEuMDMyYTc0YzhlMmJiZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzk3CisgICAgMHgxLjc0MzM0ZjI4NzJiZjMyNGE4YjZjMGZmYWYyZjRlZTNkcDAsCisgICAgMHgxLjBiMjUwMmIzZjc2NTZwMCwKKyAgICAtMHgxLjAzMmE3NGM4ZTJiYmRwMAorICB9LAorICB7IC8vIEVudHJ5IDM5OAorICAgIDB4MS43NDMzNGYyODcyYmYyNzI2Nzg2MWQ0NWRjZjQ0YjIyYnAwLAorICAgIDB4MS4wYjI1MDJiM2Y3NjU2cDAsCisgICAgLTB4MS4wMzJhNzRjOGUyYmJjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTkKKyAgICAweDEuNzQzMzRmMjg3MmJmNDhlYTdmNzNjZTVkMDM4MTk4YzlwMCwKKyAgICAweDEuMGIyNTAyYjNmNzY1N3AwLAorICAgIC0weDEuMDMyYTc0YzhlMmJiZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLjc0MzM0ZjI4NzJiZjNkYzY2YzY5OTJiZmRmY2VhNzJlcDAsCisgICAgMHgxLjBiMjUwMmIzZjc2NTdwMCwKKyAgICAtMHgxLjAzMmE3NGM4ZTJiYmRwMAorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIDB4MS43NDMzNGYyODcyYmYzMmEyNTk1ZjU3MjJiYzc2NmFhMnAwLAorICAgIDB4MS4wYjI1MDJiM2Y3NjU3cDAsCisgICAgLTB4MS4wMzJhNzRjOGUyYmJjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDIKKyAgICAweDEuYjZkNjM0OTJjZjZjNWYwZDRhOWU0MWE0ZWQ4ZjhiOTRwNywKKyAgICAweDEuMzg0NTYzNjQyNTc2M3A3LAorICAgIDB4MS4zNDUzNDU2NDUyNjY0cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAweDEuYjZkNjM0OTJjZjZjNmE0YjIwYmJhNDQxYTJjYTViYTNwNywKKyAgICAweDEuMzg0NTYzNjQyNTc2M3A3LAorICAgIDB4MS4zNDUzNDU2NDUyNjY1cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDQKKyAgICAweDEuYjZkNjM0OTJjZjZjNzU4OGY2ZDkwNmRlNTg1MGNhNTFwNywKKyAgICAweDEuMzg0NTYzNjQyNTc2M3A3LAorICAgIDB4MS4zNDUzNDU2NDUyNjY2cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAweDEuYjZkNjM0OTJjZjZjNmE2ZmY0ZWU4M2M4OWU3MWY4NmRwNywKKyAgICAweDEuMzg0NTYzNjQyNTc2NHA3LAorICAgIDB4MS4zNDUzNDU2NDUyNjY0cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDYKKyAgICAweDEuYjZkNjM0OTJjZjZjNzVhZGNiMGJlNjY1NTM2MjFlN2FwNywKKyAgICAweDEuMzg0NTYzNjQyNTc2NHA3LAorICAgIDB4MS4zNDUzNDU2NDUyNjY1cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICAweDEuYjZkNjM0OTJjZjZjODBlYmExMjk0OTAyMDg5ZGUzMjVwNywKKyAgICAweDEuMzg0NTYzNjQyNTc2NHA3LAorICAgIDB4MS4zNDUzNDU2NDUyNjY2cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDgKKyAgICAweDEuYjZkNjM0OTJjZjZjNzVkMjlmM2VjNWVjNGY5ZTFkYzVwNywKKyAgICAweDEuMzg0NTYzNjQyNTc2NXA3LAorICAgIDB4MS4zNDUzNDU2NDUyNjY0cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAweDEuYjZkNjM0OTJjZjZjODExMDc1NWMyODg5MDQ0Mzk5Y2ZwNywKKyAgICAweDEuMzg0NTYzNjQyNTc2NXA3LAorICAgIDB4MS4zNDUzNDU2NDUyNjY1cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAweDEuYjZkNjM0OTJjZjZjOGM0ZTRiNzk4YjI1YjkzNGI0NzdwNywKKyAgICAweDEuMzg0NTYzNjQyNTc2NXA3LAorICAgIDB4MS4zNDUzNDU2NDUyNjY2cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTEKKyAgICAweDEuYjZkNjM0OTJjZjZjOGM0ZTRiNzk4YjI1YjkzNGI0NzdwLTYsCisgICAgLTB4MS4zODQ1NjM2NDI1NzY1cC02LAorICAgIC0weDEuMzQ1MzQ1NjQ1MjY2NnAtNgorICB9LAorICB7IC8vIEVudHJ5IDQxMgorICAgIDB4MS5iNmQ2MzQ5MmNmNmM4MTEwNzU1YzI4ODkwNDQzOTljZnAtNiwKKyAgICAtMHgxLjM4NDU2MzY0MjU3NjVwLTYsCisgICAgLTB4MS4zNDUzNDU2NDUyNjY1cC02CisgIH0sCisgIHsgLy8gRW50cnkgNDEzCisgICAgMHgxLmI2ZDYzNDkyY2Y2Yzc1ZDI5ZjNlYzVlYzRmOWUxZGM1cC02LAorICAgIC0weDEuMzg0NTYzNjQyNTc2NXAtNiwKKyAgICAtMHgxLjM0NTM0NTY0NTI2NjRwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTQKKyAgICAweDEuYjZkNjM0OTJjZjZjODBlYmExMjk0OTAyMDg5ZGUzMjVwLTYsCisgICAgLTB4MS4zODQ1NjM2NDI1NzY0cC02LAorICAgIC0weDEuMzQ1MzQ1NjQ1MjY2NnAtNgorICB9LAorICB7IC8vIEVudHJ5IDQxNQorICAgIDB4MS5iNmQ2MzQ5MmNmNmM3NWFkY2IwYmU2NjU1MzYyMWU3YXAtNiwKKyAgICAtMHgxLjM4NDU2MzY0MjU3NjRwLTYsCisgICAgLTB4MS4zNDUzNDU2NDUyNjY1cC02CisgIH0sCisgIHsgLy8gRW50cnkgNDE2CisgICAgMHgxLmI2ZDYzNDkyY2Y2YzZhNmZmNGVlODNjODllNzFmODZkcC02LAorICAgIC0weDEuMzg0NTYzNjQyNTc2NHAtNiwKKyAgICAtMHgxLjM0NTM0NTY0NTI2NjRwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAweDEuYjZkNjM0OTJjZjZjNzU4OGY2ZDkwNmRlNTg1MGNhNTFwLTYsCisgICAgLTB4MS4zODQ1NjM2NDI1NzYzcC02LAorICAgIC0weDEuMzQ1MzQ1NjQ1MjY2NnAtNgorICB9LAorICB7IC8vIEVudHJ5IDQxOAorICAgIDB4MS5iNmQ2MzQ5MmNmNmM2YTRiMjBiYmE0NDFhMmNhNWJhM3AtNiwKKyAgICAtMHgxLjM4NDU2MzY0MjU3NjNwLTYsCisgICAgLTB4MS4zNDUzNDU2NDUyNjY1cC02CisgIH0sCisgIHsgLy8gRW50cnkgNDE5CisgICAgMHgxLmI2ZDYzNDkyY2Y2YzVmMGQ0YTllNDFhNGVkOGY4Yjk0cC02LAorICAgIC0weDEuMzg0NTYzNjQyNTc2M3AtNiwKKyAgICAtMHgxLjM0NTM0NTY0NTI2NjRwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjAKKyAgICAweDEuOWExMzQxODZhNDEzNjkxNWQ2YTJmNzE3MTgxMmRlZWZwLTE2LAorICAgIC0weDEuMzg0NTYzNjQyNTc2NXAtMTYsCisgICAgLTB4MS4wOWNjM2Q3ZjFjODgxcC0xNgorICB9LAorICB7IC8vIEVudHJ5IDQyMQorICAgIDB4MS45YTEzNDE4NmE0MTM1ZWI2ZjBjNTE5MDk3ZDc1MjQzZHAtMTYsCisgICAgLTB4MS4zODQ1NjM2NDI1NzY1cC0xNiwKKyAgICAtMHgxLjA5Y2MzZDdmMWM4ODBwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgNDIyCisgICAgMHgxLjlhMTM0MTg2YTQxMzU0NTgwYWU3M2FmYmUzMzQxNWNmcC0xNiwKKyAgICAtMHgxLjM4NDU2MzY0MjU3NjVwLTE2LAorICAgIC0weDEuMDljYzNkN2YxYzg3ZnAtMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAweDEuOWExMzQxODZhNDEzNWNlNmJmMjkxZDQwZmM2ZTQzOTJwLTE2LAorICAgIC0weDEuMzg0NTYzNjQyNTc2NHAtMTYsCisgICAgLTB4MS4wOWNjM2Q3ZjFjODgxcC0xNgorICB9LAorICB7IC8vIEVudHJ5IDQyNAorICAgIDB4MS45YTEzNDE4NmE0MTM1Mjg3ZDk0YjNmMzM2MTgxYTc1N3AtMTYsCisgICAgLTB4MS4zODQ1NjM2NDI1NzY0cC0xNiwKKyAgICAtMHgxLjA5Y2MzZDdmMWM4ODBwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgMHgxLjlhMTM0MTg2YTQxMzQ4MjhmMzZkNjEyNWM2ZjFiNzVmcC0xNiwKKyAgICAtMHgxLjM4NDU2MzY0MjU3NjRwLTE2LAorICAgIC0weDEuMDljYzNkN2YxYzg3ZnAtMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjYKKyAgICAweDEuOWExMzQxODZhNDEzNTBiN2E3YWY0MzZhZTEwY2NjN2FwLTE2LAorICAgIC0weDEuMzg0NTYzNjQyNTc2M3AtMTYsCisgICAgLTB4MS4wOWNjM2Q3ZjFjODgxcC0xNgorICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIDB4MS45YTEzNDE4NmE0MTM0NjU4YzFkMTY1NWQ0NWQxNGViNXAtMTYsCisgICAgLTB4MS4zODQ1NjM2NDI1NzYzcC0xNiwKKyAgICAtMHgxLjA5Y2MzZDdmMWM4ODBwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgNDI4CisgICAgMHgxLjlhMTM0MTg2YTQxMzNiZjlkYmYzODc0ZmFhZjI3ZDMycC0xNiwKKyAgICAtMHgxLjM4NDU2MzY0MjU3NjNwLTE2LAorICAgIC0weDEuMDljYzNkN2YxYzg3ZnAtMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEuNmEwOWU2NjdmM2JjZGZhOTUxNjE5MmEyYjcyNjA4NmRwLTYsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC02LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIDB4MS42YTA5ZTY2N2YzYmNkNDU5MDIyZTUzMDRkMTBiMDQxMnAtNiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTYsCisgICAgLTB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDMxCisgICAgMHgxLjZhMDllNjY3ZjNiY2NlYjBkYTk0YjMzNWRlMWY3MmQycC02LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzIKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDEwYjA0MTJwLTYsCisgICAgLTB4MS4wcC02LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDQzMworICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtNiwKKyAgICAtMHgxLjBwLTYsCisgICAgLTB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDM0CisgICAgMHgxLjZhMDllNjY3ZjNiY2MzNjA4YjYxNzM5N2Y3N2NhYWMxcC02LAorICAgIC0weDEuMHAtNiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGUxZjcyZDJwLTYsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC03LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIDB4MS42YTA5ZTY2N2YzYmNjMzYwOGI2MTczOTdmNzdjYWFjMXAtNiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTcsCisgICAgLTB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDM3CisgICAgMHgxLjZhMDllNjY3ZjNiY2JkYjg2M2M3ZDNjOTA0NGQzN2E2cC02LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzgKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQzOQorICAgIDB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgMHgxLnAtMTA3NCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIDAuMCwKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDMKKyAgICAweDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDQKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDQ2CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgMHgxLjFlMzc3OWI5N2Y0YTczMjQzN2NlZjQ2NjA5MGQxODk3cC00MDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNDAyCisgIH0sCisgIHsgLy8gRW50cnkgNDQ4CisgICAgMHgxLjFlMzc3OWI5N2Y0YTc0ZWUyYTJiNTA2NGU2YTYyODU3cC00MDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQwMSwKKyAgICAweDEuMHAtNDAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQ5CisgICAgMHgxLjFlMzc3OWI5N2Y0YTc4ODIwZWU0MDg2MmExZmFhMDZjcC00MDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNDAxCisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgMHgxLjFlMzc3OWI5N2Y0YTdhNGMwMTQwNjQ2MTdmNjAyYjRmcC00MDAsCisgICAgMHgxLjBwLTQwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNDAyCisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgMHgxLjFlMzc3OWI5N2Y0YTdjMTVmMzljYzA2MDVjZWRjODM0cC00MDAsCisgICAgMHgxLjBwLTQwMCwKKyAgICAweDEuMHAtNDAxCisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgMHgxLjFlMzc3OWI5N2Y0YTdmYTlkODU1Nzg1ZTE4MmI1YTkxcC00MDAsCisgICAgMHgxLjBwLTQwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNDAxCisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgMHgxLjFlMzc3OWI5N2Y0YTg4OWI5NDIzNDQ1ODZjMjhhOTUzcC00MDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNDAyCisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgMHgxLjFlMzc3OWI5N2Y0YThhNjU4NjdmYTA1NzQ5OWY2MDgwcC00MDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQwMCwKKyAgICAweDEuMHAtNDAxCisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgMHgxLjFlMzc3OWI5N2Y0YThkZjk2YjM4NTg1NTA0YWYyNzZkcC00MDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNDAxCisgIH0sCisgIHsgLy8gRW50cnkgNDU2CisgICAgMHgxLjFlMzc3OWI5N2Y0YTczMjQzN2NlZjQ2NjA5MGQxODk3cC01MTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTEyCisgIH0sCisgIHsgLy8gRW50cnkgNDU3CisgICAgMHgxLjFlMzc3OWI5N2Y0YTdhNGMwMTQwNjQ2MTdmNjAyYjRmcC01MTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxMywKKyAgICAweDEuMHAtNTExCisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgMHgxLjFlMzc3OWI5N2Y0YTg4OWI5NDIzNDQ1ODZjMjhhOTUzcC01MTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUxMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTExCisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgMHgxLjFlMzc3OWI5N2Y0YTc0ZWUyYTJiNTA2NGU2YTYyODU3cC01MTEsCisgICAgMHgxLjBwLTUxMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTEyCisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgMHgxLjFlMzc3OWI5N2Y0YTdjMTVmMzljYzA2MDVjZWRjODM0cC01MTEsCisgICAgMHgxLjBwLTUxMiwKKyAgICAweDEuMHAtNTExCisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgMHgxLjFlMzc3OWI5N2Y0YThhNjU4NjdmYTA1NzQ5OWY2MDgwcC01MTEsCisgICAgMHgxLjBwLTUxMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTExCisgIH0sCisgIHsgLy8gRW50cnkgNDYyCisgICAgMHgxLjFlMzc3OWI5N2Y0YTc4ODIwZWU0MDg2MmExZmFhMDZjcC01MTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUxMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTEyCisgIH0sCisgIHsgLy8gRW50cnkgNDYzCisgICAgMHgxLjFlMzc3OWI5N2Y0YTdmYTlkODU1Nzg1ZTE4MmI1YTkxcC01MTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUxMiwKKyAgICAweDEuMHAtNTExCisgIH0sCisgIHsgLy8gRW50cnkgNDY0CisgICAgMHgxLjFlMzc3OWI5N2Y0YThkZjk2YjM4NTg1NTA0YWYyNzZkcC01MTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUxMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTExCisgIH0sCisgIHsgLy8gRW50cnkgNDY1CisgICAgMHgxLjFlMzc3OWI5N2Y0YTczMjQzN2NlZjQ2NjA5MGQxODk3cDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIwCisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgMHgxLjFlMzc3OWI5N2Y0YTc0ZWUyYTJiNTA2NGU2YTYyODU3cDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMSwKKyAgICAweDEuMHAxMDIxCisgIH0sCisgIHsgLy8gRW50cnkgNDY3CisgICAgMHgxLjFlMzc3OWI5N2Y0YTc4ODIwZWU0MDg2MmExZmFhMDZjcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIxCisgIH0sCisgIHsgLy8gRW50cnkgNDY4CisgICAgMHgxLjFlMzc3OWI5N2Y0YTdhNGMwMTQwNjQ2MTdmNjAyYjRmcDEwMjIsCisgICAgMHgxLjBwMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIwCisgIH0sCisgIHsgLy8gRW50cnkgNDY5CisgICAgMHgxLjFlMzc3OWI5N2Y0YTdjMTVmMzljYzA2MDVjZWRjODM0cDEwMjIsCisgICAgMHgxLjBwMTAyMiwKKyAgICAweDEuMHAxMDIxCisgIH0sCisgIHsgLy8gRW50cnkgNDcwCisgICAgMHgxLjFlMzc3OWI5N2Y0YTdmYTlkODU1Nzg1ZTE4MmI1YTkxcDEwMjIsCisgICAgMHgxLjBwMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIxCisgIH0sCisgIHsgLy8gRW50cnkgNDcxCisgICAgMHgxLjFlMzc3OWI5N2Y0YTg4OWI5NDIzNDQ1ODZjMjhhOTUzcDEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIwCisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgMHgxLjFlMzc3OWI5N2Y0YThhNjU4NjdmYTA1NzQ5OWY2MDgwcDEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMiwKKyAgICAweDEuMHAxMDIxCisgIH0sCisgIHsgLy8gRW50cnkgNDczCisgICAgMHgxLjFlMzc3OWI5N2Y0YThkZjk2YjM4NTg1NTA0YWYyNzZkcDEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDIxCisgIH0sCisgIHsgLy8gRW50cnkgNDc0CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzUKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDc2CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ3OAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ3OQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODAKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODEKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODIKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ4MworICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDQ4NQorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDg2CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDg4CisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ5MQorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTIKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTcKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTgKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNDk5CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNTAwCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNTAxCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDIKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDUwNQorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDUwNgorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDUwNworICAgIEhVR0VfVkFMLAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDgKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDUwOQorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTAKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNTEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTMKKyAgICAweDEucC0xMDIyLAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDUxNAorICAgIDB4MS5wLTEwNzQsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTE1CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTYKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTcKKyAgICAweDEucC0xMDc0LAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICAweDEucC0xMDIyLAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjEKKyAgICAweDEucC0xMDIyLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjIKKyAgICAweDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjMKKyAgICAwLjAsCisgICAgLTAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjQKKyAgICAwLjAsCisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTI1CisgICAgMHgxLnAtMTA3NCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUyNgorICAgIDB4MS5wLTEwMjIsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjcKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjkKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDUzMAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTMxCisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTMyCisgICAgMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTMzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTM0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTM1CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTM2CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTM3CisgICAgMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDUzOAorICAgIDB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTQxCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU0MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDU0NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTQ1CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDU0NgorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdmZmZmZnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTAKKyAgICAweDEuNDBwMiwKKyAgICAweDEuOHAxLAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTEKKyAgICAweDEuNDBwMiwKKyAgICAweDEuOHAxLAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgMHgxLmEwcDMsCisgICAgMHgxLjRwMiwKKyAgICAweDEuOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTUzCisgICAgMHgxLmEwcDMsCisgICAgMHgxLjRwMiwKKyAgICAtMHgxLjhwMworICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2h5cG90Zl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvaHlwb3RmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZDQzMzRiCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2h5cG90Zl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwyMzczIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8yX3Q8ZmxvYXQsIGZsb2F0LCBmbG9hdD4gZ19oeXBvdGZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAweDEuODA0ZmEzMDAwYzdlYmRmNDc0MzRmMzk3ZWM4NGM3YTBwMywKKyAgICAtMHgxLjMzNzJhZXAzLAorICAgIDB4MS5jZDJjZmFwMgorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuNzVkMDQ2ZmZmNjMyNmRhMzRjYWRlMzAzOTE1NmQyZWNwMywKKyAgICAtMHgxLjMzNzJiMHAzLAorICAgIC0weDEuYTk0Mzg4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMHgxLjlhMTM0YjAwMjI4NjJlMjhiZTg0NTk1NDRjMGEwMTc5cC0xNiwKKyAgICAtMHgxLjM4NDU2Y3AtMTYsCisgICAgLTB4MS4wOWNjNDJwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS41NTU1NWUwMDAwMDAwMDAwMDAwMDAwMTI1ZmZmODg5MHAtMTAxLAorICAgIC0weDEuNTU1NTVlcC0xMDEsCisgICAgMHgxLmMwcC0xNDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLmY2YzY1ODAwMDAxZTFiZTE3MjQxNTZlODBlYTM5ZjU0cC00MSwKKyAgICAtMHgxLjVjcC02MiwKKyAgICAtMHgxLmY2YzY1OHAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLjc1Mjk4YjAwNmU0MDU0ZmQ4MTYxNmUyZjgyMGNiMThhcDQsCisgICAgLTB4MS42YjkxYjBwNCwKKyAgICAtMHgxLjUwNDZhZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS43ZmZmZmMwMDU1NTU1YTM4ZGEyYmZlZDBkYzgyY2Q3YXAwLAorICAgIC0weDEuN2ZmZmZjcDAsCisgICAgMHgxLjAwMDAwNnAtMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLmYxM2I1NmZjNDZiZWQyMzI1Y2NkMmM3Y2Q1ZTY5NjMycDIxLAorICAgIC0weDEuZjEyYnAyMSwKKyAgICAweDEuZmRkZmZlcDE1CisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS41NTU1NzBwLTIsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS41NTU1NzBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLjU1NTUzYXAxMDAsCisgICAgMHgxLnAwLAorICAgIDB4MS41NTU1M2FwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEuNmEwOWVhYTYxMTc2NWUxMDYzMTI3MGQ1ZGUwOGVlNmVwMTAwLAorICAgIDB4MS4wMDAwMDZwMTAwLAorICAgIDB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuNmEwOTllZmQxNDc0MGI3NGRlNDdkMzI4N2MzZWYxMDZwLTE5LAorICAgIDB4MS4wMDAwMjRwLTE5LAorICAgIDB4MS5mZmZlZWVwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuNmExNWU1MDA1Zjk4YTA4MTk0NzdlZTg2YzQwYzcwYTZwMCwKKyAgICAweDEuMDE0MmIycDAsCisgICAgLTB4MS5mZDk5ODJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS43YzAyYzMwMDA1NDA0Yzc2MmU1NjFkZjQ1ODg2OGRiOHA2LAorICAgIDB4MS4wNzdmNGNwNiwKKyAgICAweDEuMTFkMWVjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS5lYjc3MmVmYzQ4ZGIyNTY1ZWI5MWE4OTJiOTEwOWUxYXAyLAorICAgIDB4MS4xOThjYzBwMCwKKyAgICAtMHgxLmU2NjYyNnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuZmRlY2JkMDAwMDJjM2QyMDJlZTA1MWRkZmUwNzYzODdwOSwKKyAgICAweDEuMWJkODU2cDEsCisgICAgMHgxLmZkZWM2ZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEuODAwMDAwMDAxYWZmZmZmZmZmMGQwMDAwMDAxMTE1ZmZwLTIzLAorICAgIDB4MS4yMHAtNDAsCisgICAgMHgxLjgwcC0yMworICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLjIwMDRkNzAwMGM5ZTU5YjZjMzE5YTQwZjA2ODEzN2YxcDYsCisgICAgMHgxLjIwcDYsCisgICAgMHgxLmE2NjY3MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLjM4MDMxMzAwMDAwZmZmZDdhNDgwMGRjNmQ4YzEyN2M0cDEsCisgICAgMHgxLjMxNjBhY3AxLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuODE0Y2VlMDAyOThkOGZkYThiYTQ0M2ZhMjgyNmNjNzhwOSwKKyAgICAweDEuNDFmMDcwcDIsCisgICAgMHgxLjgxNGFkNHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuYmE4NmU4ZmYzYWJiNTdiYzYzZWQ2Mjg1NzZjYmY3MTlwMTAwLAorICAgIDB4MS42MHAxMDAsCisgICAgMHgxLjBjMzBjNHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS4yNzYyNzVwLTEwLAorICAgIDB4MS42Mjc2MjZwLTExLAorICAgIDB4MS5kODlkODhwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEuMzBlNDE4ZmM2ZThmMWUxMzQyYzEzZmM4M2NkNjc2MjFwMywKKyAgICAweDEuNzRhY2M2cC0xLAorICAgIC0weDEuMzBwMworICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLmZlMDFmMGZjMTA0NGM3Mzg5NTdhNzBmMDVmYzE1ZjQ4cDMsCisgICAgMHgxLjc1OGZjMnAtMiwKKyAgICAweDEuZmRkZmJjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS4wMDAwMDlwMCwKKyAgICAweDEuODBwLTEwLAorICAgIDB4MS5mZmZmZWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS40MDAwMDMwMDAwMDY2NjY2NTcwYTNkODUxZWI4NmY2OXAzLAorICAgIDB4MS44MDAwMGFwMiwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS44YmIzY2IwMDAwOTU0ZGRkMWJhNGJhM2QxYmU3YmNiM3AwLAorICAgIDB4MS44ODYwM2VwMCwKKyAgICAtMHgxLjk5OTk5YXAtMworICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLjA2OGMwNzAwMDAwNDgyNzlhYmRkN2UyY2I5OTcyN2FlcDEsCisgICAgMHgxLjhiYWI0YXAtMSwKKyAgICAtMHgxLmU2NjY3NHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuOGY4MjdiMDAxMTVkZWY0N2M0NTRiMzU5OTE0M2QyZWFwMTAsCisgICAgMHgxLjhmODI3YXAxMCwKKyAgICAweDEuYzQ1NGIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuYTY2NDVjZmMyYWIwMGU1ZjRhNzY4OTNlNzdjOTNlODBwMCwKKyAgICAweDEuOTI4N2UycDAsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS4xYmNmMGVmZmZmYzc5ZmJmZTQ2MzhlZDdjN2YyMGFkM3AxLAorICAgIDB4MS45MzhkMjhwLTEsCisgICAgMHgxLjA5NDU5MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuMTBkOGNlMDAwMDRkZTAwYjkyYzY2NjQxYjFhOTVmYzdwMCwKKyAgICAweDEuOWU4NzRhcC0xLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5mYzUxNmVmYzY5YTYyY2E0N2FhODJhNGMzMTBiYTZjM3AtMiwKKyAgICAweDEuYWYxOTQ4cC02LAorICAgIC0weDEuZmI5YTgwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEuZTllNmE0ZmMyZGRkZTg3NjM4YjQ2ODQ1NjRlMTRjZTZwLTMsCisgICAgMHgxLmI4MTI3MnAtNSwKKyAgICAtMHgxLmRkNjMzZXAtMworICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLjczOTZmNjAwMDdjMTgwNzVkOGVmZDRjODM4YjkxNTQ0cC0xLAorICAgIDB4MS5iODkwNjhwLTMsCisgICAgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLmMyYzNhY2ZjZjQwZDc1YTVlYTYwZTljMTE0NDQzOTUwcDEsCisgICAgMHgxLmMxYTA4OHAxLAorICAgIC0weDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEuYTQzZTk2MDAwNmRiYTAyZDZiZWIxZDJjMWVlYWVjZWFwLTEsCisgICAgMHgxLmMyMjUwY3AtMiwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuMWVmYjFiMDAwODIwNDAwNTM3ODAwNDFkYzZiMWYzMDdwMCwKKyAgICAweDEuYzMxN2EwcC0xLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS41OGUzNmQwMDAwMDE3YzBhYjMxZmI2MDhlYWM5MDczMXAzLAorICAgIDB4MS5jZTM4YmFwMiwKKyAgICAweDEuZmZmZmNjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5mY2VmNzZmYzkyNjgwNDcwYjFhMTdiZDliNGIzNWM0YXAtMSwKKyAgICAweDEuZDFlOTBhcC0xLAorICAgIC0weDEuOTk5OTU4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuZWQwNmIwZmMzZTA1ODZmZDYxNDI5ZjlmNzQzYzZkNDdwMCwKKyAgICAweDEuZGMxZWRjcDAsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS5hZjljMzEwMDAwMDEyZmFlNzU1ODhmN2MxNWRiOTg3M3AtMSwKKyAgICAweDEuZWI0ODIycC0yLAorICAgIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5mZmZjMDBmYzA1YjY1MTZhMTQwZmVkYTg3YjE5YTBhMXAyLAorICAgIDB4MS5mYmZmYmVwLTEwLAorICAgIDB4MS5mZmZjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5mZjdjYzJmYzI3ZTE3ZmVlZTc5Mzk3ZDEwMTliNDJmMnAxLAorICAgIDB4MS5mYmZmZmVwLTMsCisgICAgMHgxLmZlODA0MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuZmUwMWYwZmMxMDQ0YzczODk1N2E3MGYwNWZjMTVmNDhwMywKKyAgICAweDEuZmRkZmJjcDMsCisgICAgMHgxLjc1OGZjMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLmYxM2I1NmZjNDZiZWQyMzI1Y2NkMmM3Y2Q1ZTY5NjMycDIxLAorICAgIDB4MS5mZGRmZmVwMTUsCisgICAgLTB4MS5mMTJicDIxCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuYzQ4YTFjZmNkMTk5NmViZGE4MWIwMWFmMDhhZjIzZGZwMCwKKyAgICAweDEuZmY3ZmZlcC0zLAorICAgIDB4MS5jMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuZmY4N2ZiMDAwMDAxYzA3OTIwYzRkY2Y0ZjEyNmRlNzZwNywKKyAgICAweDEuZmY4ZmZlcDEsCisgICAgMHgxLmZmNzdmZXA3CisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEuZmZmZmZmZmY4MDA3ZmZmZmYwMDFmZmVmZmMwMGJmZjNwLTEyNywKKyAgICAweDEuZmZlMHAtMTM4LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgMHgxLjAxZmJmYjAwMDAwMDAxZmMwZmRhNzZjYjg4NmQ0OGE2cDIsCisgICAgMHgxLmZmZmJmZXAxLAorICAgIDB4MS5mZmY5ZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIDB4MS4xZTM3NmVmZGQ1ODI0Yzc1ZTlhMGIzYjdlYTRlNjBiY3AyMSwKKyAgICAweDEuZmZmZmMwcDIwLAorICAgIDB4MS4wMDAwNTBwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS4xZTM3NmVmZGQ0NjllNTQ1NTg3MTg4NTQ0NzY1MDNlNnAtMTksCisgICAgMHgxLmZmZmZjNnAtMjAsCisgICAgMHgxLjAwMDA0NHAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS5mZmZmZjBmZmZmZmZjMDAwMGUyMDAwNjllYzAzMWMyZXA2LAorICAgIDB4MS5mZmZmZjhwLTYsCisgICAgMHgxLmZmZmZmMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEuNmEwOWU0ZmRlOWQ3MTYxOWVhMWIwOTg2MGZjNDA0YzlwMCwKKyAgICAweDEuZmZmZmZjcC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLmZmZmZmOGZmZmZmZmMwMDAwMzIwMDAwYWVjMDAyNjllcC0yLAorICAgIDB4MS5mZmZmZmNwLTE0LAorICAgIDB4MS5mZmZmZjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIDB4MS44MDAwMDAwMDAwMDAwMDE1NTU1NTAwMDAwMDU1NTRiZHAtMjQsCisgICAgMHgxLmZmZmZmY3AtNTQsCisgICAgLTB4MS44MHAtMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS5mZmZmZmNmZmZmZmRjMDAwMDA5ZmZmZmZhYzAwMDAzNXAxMCwKKyAgICAweDEuZmZmZmZjcDEwLAorICAgIDB4MS5mZmZmZmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS5mZmZmZmQwMDAwMDFjMDAwMDJhMDAwMDMyYzAwMDI3NXAxMiwKKyAgICAweDEuZmZmZmZjcDEyLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS5mZmZmZmNmZmZmZmZjMDAwMDBhMDAwMDBlYzAwMDE3NnAxMiwKKyAgICAweDEuZmZmZmZjcDEyLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLjZhMDllOTNjMDc4OTk4ZjAyYzhkMjRjY2UwYmM0YjEzcDAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuNmEwOWU3ZDFmZGEzZTYwMTYyNDMxMTA1OWRmNzE1N2JwMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS42YTA5ZTcxY2Y4YjE5NDRkYjNjOGU0NjJiMDg4NjYwMXAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS42YTA5ZTdkMWZkYTNlNjAxNjI0MzExMDU5ZGY3MTU3YnAwLAorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuNmEwOWU1YjJlZWM5YzI1MDExN2EyZTIzNzUyODU3NWNwMCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEuNmEwOWU3MWNmOGIxOTQ0ZGIzYzhlNDYyYjA4ODY2MDFwMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEuNmEwOWU1YjJlZWM5YzI1MDExN2EyZTIzNzUyODU3NWNwMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEuNmEwOWU0ZmRlOWQ2NjExNGY2MzIwYWIzZWY4MjE2NTNwMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLjZhMDllNzFjZjhiMTk0NGRiM2M4ZTQ2MmIwODg2NjAxcDAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAweDEuNmEwOWU3ZDFmZGEzZTYwMTYyNDMxMTA1OWRmNzE1N2JwMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMHgxLjZhMDllOTNjMDc4OTk4ZjAyYzhkMjRjY2UwYmM0YjEzcDAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIDB4MS42YTA5ZTViMmVlYzljMjUwMTE3YTJlMjM3NTI4NTc1Y3AwLAorICAgIC0weDEucDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgLTB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS42YTA5ZTdkMWZkYTNlNjAxNjI0MzExMDU5ZGY3MTU3YnAwLAorICAgIC0weDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuNmEwOWU0ZmRlOWQ2NjExNGY2MzIwYWIzZWY4MjE2NTNwMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAweDEuNmEwOWU1YjJlZWM5YzI1MDExN2EyZTIzNzUyODU3NWNwMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS42YTA5ZTcxY2Y4YjE5NDRkYjNjOGU0NjJiMDg4NjYwMXAwLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLjZhMDllNzFjZjhiMTk0NGRiM2M4ZTQ2MmIwODg2NjAxcDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEuNmEwOWU1YjJlZWM5YzI1MDExN2EyZTIzNzUyODU3NWNwMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS42YTA5ZTRmZGU5ZDY2MTE0ZjYzMjBhYjNlZjgyMTY1M3AwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS42YTA5ZTdkMWZkYTNlNjAxNjI0MzExMDU5ZGY3MTU3YnAwLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKKyAgICAweDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLjZhMDllNWIyZWVjOWMyNTAxMTdhMmUyMzc1Mjg1NzVjcDAsCisgICAgMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEuNmEwOWU5M2MwNzg5OThmMDJjOGQyNGNjZTBiYzRiMTNwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLjZhMDllN2QxZmRhM2U2MDE2MjQzMTEwNTlkZjcxNTdicDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS42YTA5ZTcxY2Y4YjE5NDRkYjNjOGU0NjJiMDg4NjYwMXAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLjZhMDllNGZkZTlkNjYxMTRmNjMyMGFiM2VmODIxNjUzcDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAweDEuNmEwOWU1YjJlZWM5YzI1MDExN2EyZTIzNzUyODU3NWNwMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLjZhMDllNzFjZjhiMTk0NGRiM2M4ZTQ2MmIwODg2NjAxcDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS42YTA5ZTViMmVlYzljMjUwMTE3YTJlMjM3NTI4NTc1Y3AwLAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEuNmEwOWU3ZDFmZGEzZTYwMTYyNDMxMTA1OWRmNzE1N2JwMCwKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuNmEwOWU3MWNmOGIxOTQ0ZGIzYzhlNDYyYjA4ODY2MDFwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLjZhMDllN2QxZmRhM2U2MDE2MjQzMTEwNTlkZjcxNTdicDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLjZhMDllOTNjMDc4OTk4ZjAyYzhkMjRjY2UwYmM0YjEzcDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAwLAorICAgIDB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAwLAorICAgIDB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuMDFmZTAzZjYxYmFkMDRiMTA2ODU3MmZlYmM5MjVhZDFwMywKKyAgICAweDEucDAsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLjAxZmUwM2Y2MWJhZDA0YjEwNjg1NzJmZWJjOTI1YWQxcDMsCisgICAgMHgxLnAzLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAzLAorICAgIDB4MS5wMywKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuMDAwMDFmZmZmZTAwMDAzZmZmZjYwMDAxYmZmZmFjcDksCisgICAgMHgxLnAwLAorICAgIDB4MS5wOQorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS4wMDAwMDdmZmZmZTAwMDAwZmZmZmY2MDAwMDZmZmZmYXAxMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS4wMDA3ZmZlMDAwZmZmNjAwNmZmYWMwNDFmY2E2MmNhZHA5LAorICAgIDB4MS5wMywKKyAgICAweDEucDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuMDAwMWZmZmUwMDAzZmZmNjAwMWJmZmFjMDEwN2ZjYTZwMTAsCisgICAgMHgxLnAzLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEucDEwMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEucDEwMSwKKyAgICAweDEucDAsCisgICAgMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEucDEwMCwKKyAgICAweDEucDMsCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEucDEwMSwKKyAgICAweDEucDMsCisgICAgMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuMDAwMDFmZmZmZTAwMDAzZmZmZjYwMDAxYmZmZmFjcDksCisgICAgMHgxLnA5LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS4wMDA3ZmZlMDAwZmZmNjAwNmZmYWMwNDFmY2E2MmNhZHA5LAorICAgIDB4MS5wOSwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEuMDAwMDA3ZmZmZmUwMDAwMGZmZmZmNjAwMDA2ZmZmZmFwMTAsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuMDAwMWZmZmUwMDAzZmZmNjAwMWJmZmFjMDEwN2ZjYTZwMTAsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwOSwKKyAgICAweDEucDksCisgICAgMHgxLnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjFlMzc3OWI5N2Y0YTdjMTVmMzljYzA2MDVjZWRjODM0cDEwLAorICAgIDB4MS5wOSwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLjFlMzc3OWI5N2Y0YTdjMTVmMzljYzA2MDVjZWRjODM0cDEwLAorICAgIDB4MS5wMTAsCisgICAgMHgxLnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDEwLAorICAgIDB4MS5wMTAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS5wMTAwLAorICAgIDB4MS5wOSwKKyAgICAweDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS5wMTAxLAorICAgIDB4MS5wOSwKKyAgICAweDEucDEwMQorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS5wMTAwLAorICAgIDB4MS5wMTAsCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEucDEwMSwKKyAgICAweDEucDEwLAorICAgIDB4MS5wMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgMHgxLnAxMDAsCisgICAgMHgxLnAxMDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLnAxMDAsCisgICAgMHgxLnAxMDAsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLnAxMDEsCisgICAgMHgxLnAxMDEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLnAxMDEsCisgICAgMHgxLnAxMDEsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLnAxMDAsCisgICAgMHgxLnAxMDAsCisgICAgMHgxLnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLnAxMDAsCisgICAgMHgxLnAxMDAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS5wMTAxLAorICAgIDB4MS5wMTAxLAorICAgIDB4MS5wOQorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5wMTAxLAorICAgIDB4MS5wMTAxLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMTAwLAorICAgIDB4MS5wMTAwLAorICAgIDB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLjFlMzc3OWI5N2Y0YTdjMTVmMzljYzA2MDVjZWRjODM0cDEwMSwKKyAgICAweDEucDEwMCwKKyAgICAweDEucDEwMQorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIDB4MS4xZTM3NzliOTdmNGE3YzE1ZjM5Y2MwNjA1Y2VkYzgzNHAxMDEsCisgICAgMHgxLnAxMDEsCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMTAxLAorICAgIDB4MS5wMTAxLAorICAgIDB4MS5wMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMHgxLmFkNTMzNDU5Y2ZmYzQ3MjI1ODcyZjRhOTUxZTNlYjk0cDIsCisgICAgMHgxLjdmZmZmZXAyLAorICAgIDB4MS43ZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIDB4MS5hZDUzMzRjYzRjOTM5YjMxNGY5Y2E3MjgwYjdiMjIzMnAyLAorICAgIDB4MS43ZmZmZmVwMiwKKyAgICAweDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS5hZDUzMzUzZWM5MmI2OTVlYzYwZWYyMjU2Zjk2ZjZiY3AyLAorICAgIDB4MS43ZmZmZmVwMiwKKyAgICAweDEuODAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuYWQ1MzM2MjNjMjU4ZTAzMDc1OWE0ZWU2MWQxMGZjYzNwMiwKKyAgICAweDEuODBwMiwKKyAgICAweDEuN2ZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuYWQ1MzM2OTYzZWVmYmEyMGVkNmIyMDkwOGI2NGFjNGVwMiwKKyAgICAweDEuODBwMiwKKyAgICAweDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5hZDUzMzcwOGJiODcwZTJmZTQ0MzY5NjRmZWUwNzFkZXAyLAorICAgIDB4MS44MHAyLAorICAgIDB4MS44MDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIDB4MS5hZDUzMzdlZGI0YjVmMzVkMTBlNTJiYTQ2OTgwZjE3N3AyLAorICAgIDB4MS44MDAwMDJwMiwKKyAgICAweDEuN2ZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuYWQ1MzM4NjAzMTRjNTMyZjBhNDExMTIzOTJiOGY2MTBwMiwKKyAgICAweDEuODAwMDAycDIsCisgICAgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAweDEuYWQ1MzM4ZDJhZGUzMmQxZjgyNjM0Yzc3YzRlNTZkMDdwMiwKKyAgICAweDEuODAwMDAycDIsCisgICAgMHgxLjgwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMHgxLjZhMDllMGJmY2MyMzI5MzliZmQ2ZjA5YWZlNDdlMTkzcC0xMjYsCisgICAgMHgxLmZmZmZmOHAtMTI3LAorICAgIDB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS42YTA5ZTIyOWQ2MGE0NjMyNzFmMzAyMGMyOWI4OWViMHAtMTI2LAorICAgIDB4MS5mZmZmZjhwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAweDEuNmEwOWUzOTNkZmYyY2QzNTBiZTExMTFjYTI4YTc0OWJwLTEyNiwKKyAgICAweDEuZmZmZmY4cC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLjZhMDllMjI5ZDYwYTQ2MzI3MWYzMDIwYzI5Yjg5ZWIwcC0xMjYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS42YTA5ZTM5M2RmZWZmOTIxMzk2OTAyMDBmNDZlYWY2OXAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuNmEwOWU0ZmRlOWQ3MTYxOWVhMWIwOTg2MGZjNDA0YzlwLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgMHgxLjZhMDllMzkzZGZmMmNkMzUwYmUxMTExY2EyOGE3NDlicC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS42YTA5ZTRmZGU5ZDcxNjE5ZWExYjA5ODYwZmM0MDRjOXAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDB4MS42YTA5ZTRmZGU5ZDY2MTE0ZjYzMjBhYjNlZjgyMTY1M3A2NCwKKyAgICAweDEuZmZmZmZlcDYzLAorICAgIDB4MS5mZmZmZmVwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuNmEwOWU0ZmRlOWQ2NjExNGY2MzIwYWIzZWY4MjE2NTNwNjQsCisgICAgMHgxLmZmZmZmZXA2MywKKyAgICAweDEuZmZmZmZlcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgMHgxLjZhMDllNGZkZTlkNjYxMTRmNjMyMGFiM2VmODIxNjUzcDUzLAorICAgIDB4MS5mZmZmZmVwNTIsCisgICAgMHgxLmZmZmZmZXA1MgorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS42YTA5ZTViMmVlYzljMjUwMTE3YTJlMjM3NTI4NTc1Y3A1MywKKyAgICAweDEuZmZmZmZlcDUyLAorICAgIDB4MS5wNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEuNmEwOWU3MWNmOGIxOTQ0ZGIzYzhlNDYyYjA4ODY2MDFwNTMsCisgICAgMHgxLmZmZmZmZXA1MiwKKyAgICAweDEuMDAwMDAycDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLjZhMDllNWIyZWVjOWMyNTAxMTdhMmUyMzc1Mjg1NzVjcDUzLAorICAgIDB4MS5wNTMsCisgICAgMHgxLmZmZmZmZXA1MgorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXA1MywKKyAgICAweDEucDUzLAorICAgIDB4MS5wNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuNmEwOWU3ZDFmZGEzZTYwMTYyNDMxMTA1OWRmNzE1N2JwNTMsCisgICAgMHgxLnA1MywKKyAgICAweDEuMDAwMDAycDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgMHgxLjZhMDllNzFjZjhiMTk0NGRiM2M4ZTQ2MmIwODg2NjAxcDUzLAorICAgIDB4MS4wMDAwMDJwNTMsCisgICAgMHgxLmZmZmZmZXA1MgorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS42YTA5ZTdkMWZkYTNlNjAxNjI0MzExMDU5ZGY3MTU3YnA1MywKKyAgICAweDEuMDAwMDAycDUzLAorICAgIDB4MS5wNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAweDEuNmEwOWU5M2MwNzg5OThmMDJjOGQyNGNjZTBiYzRiMTNwNTMsCisgICAgMHgxLjAwMDAwMnA1MywKKyAgICAweDEuMDAwMDAycDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMHgxLjZhMDllNGZkZTlkNjYxMTRmNjMyMGFiM2VmODIxNjUzcC01MywKKyAgICAweDEuZmZmZmZlcC01NCwKKyAgICAweDEuZmZmZmZlcC01NAorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIDB4MS42YTA5ZTViMmVlYzljMjUwMTE3YTJlMjM3NTI4NTc1Y3AtNTMsCisgICAgMHgxLmZmZmZmZXAtNTQsCisgICAgMHgxLnAtNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuNmEwOWU3MWNmOGIxOTQ0ZGIzYzhlNDYyYjA4ODY2MDFwLTUzLAorICAgIDB4MS5mZmZmZmVwLTU0LAorICAgIDB4MS4wMDAwMDJwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMHgxLjZhMDllNWIyZWVjOWMyNTAxMTdhMmUyMzc1Mjg1NzVjcC01MywKKyAgICAweDEucC01MywKKyAgICAweDEuZmZmZmZlcC01NAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtNTMsCisgICAgMHgxLnAtNTMsCisgICAgMHgxLnAtNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAweDEuNmEwOWU3ZDFmZGEzZTYwMTYyNDMxMTA1OWRmNzE1N2JwLTUzLAorICAgIDB4MS5wLTUzLAorICAgIDB4MS4wMDAwMDJwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLjZhMDllNzFjZjhiMTk0NGRiM2M4ZTQ2MmIwODg2NjAxcC01MywKKyAgICAweDEuMDAwMDAycC01MywKKyAgICAweDEuZmZmZmZlcC01NAorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDB4MS42YTA5ZTdkMWZkYTNlNjAxNjI0MzExMDU5ZGY3MTU3YnAtNTMsCisgICAgMHgxLjAwMDAwMnAtNTMsCisgICAgMHgxLnAtNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuNmEwOWU5M2MwNzg5OThmMDJjOGQyNGNjZTBiYzRiMTNwLTUzLAorICAgIDB4MS4wMDAwMDJwLTUzLAorICAgIDB4MS4wMDAwMDJwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgMHgxLmZmZmZmZXA1MiwKKyAgICAweDEuZmZmZmZlcDUyLAorICAgIDB4MS5mZmZmZmVwLTU0CisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLmZmZmZmZXA1MiwKKyAgICAweDEuZmZmZmZlcDUyLAorICAgIDB4MS5wLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLmZmZmZmZXA1MiwKKyAgICAweDEuZmZmZmZlcDUyLAorICAgIDB4MS4wMDAwMDJwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLnA1MywKKyAgICAweDEucDUzLAorICAgIDB4MS5mZmZmZmVwLTU0CisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLnA1MywKKyAgICAweDEucDUzLAorICAgIDB4MS5wLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLnA1MywKKyAgICAweDEucDUzLAorICAgIDB4MS4wMDAwMDJwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLjAwMDAwMnA1MywKKyAgICAweDEuMDAwMDAycDUzLAorICAgIDB4MS5mZmZmZmVwLTU0CisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLjAwMDAwMnA1MywKKyAgICAweDEuMDAwMDAycDUzLAorICAgIDB4MS5wLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjAwMDAwMnA1MywKKyAgICAweDEuMDAwMDAycDUzLAorICAgIDB4MS4wMDAwMDJwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLmZmZmZmZXA1MiwKKyAgICAweDEuZmZmZmZlcDUyLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuZmZmZmZlcDUyLAorICAgIDB4MS5mZmZmZmVwNTIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmZmZmZmZXA1MiwKKyAgICAweDEuZmZmZmZlcDUyLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS5wNTMsCisgICAgMHgxLnA1MywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLnA1MywKKyAgICAweDEucDUzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS5wNTMsCisgICAgMHgxLnA1MywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuMDAwMDAycDUzLAorICAgIDB4MS4wMDAwMDJwNTMsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIDB4MS4wMDAwMDJwNTMsCisgICAgMHgxLjAwMDAwMnA1MywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuMDAwMDAycDUzLAorICAgIDB4MS4wMDAwMDJwNTMsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLmZmZmZmZXAtNTQsCisgICAgMHgxLmZmZmZmZXAtNTQsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5mZmZmZmVwLTU0LAorICAgIDB4MS5mZmZmZmVwLTU0LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIDB4MS5mZmZmZmVwLTU0LAorICAgIDB4MS5mZmZmZmVwLTU0LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIDB4MS5wLTUzLAorICAgIDB4MS5wLTUzLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAweDEucC01MywKKyAgICAweDEucC01MywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAweDEucC01MywKKyAgICAweDEucC01MywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAweDEuMDAwMDAycC01MywKKyAgICAweDEuMDAwMDAycC01MywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLjAwMDAwMnAtNTMsCisgICAgMHgxLjAwMDAwMnAtNTMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgMHgxLjAwMDAwMnAtNTMsCisgICAgMHgxLjAwMDAwMnAtNTMsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwM2ZmZmZmcDUyLAorICAgIDB4MS5mZmZmZmVwNTIsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDB4MS5mZmZmZmUwMDAwMDAwMDAwMDAwMDAwMDAwMDQwcDUyLAorICAgIDB4MS5mZmZmZmVwNTIsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwNDAwMDAxcDUyLAorICAgIDB4MS5mZmZmZmVwNTIsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMWZmZmZmcDUzLAorICAgIDB4MS5wNTMsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDFmZmZmZnA1MywKKyAgICAweDEucDUzLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDIwcDUzLAorICAgIDB4MS5wNTMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjAwMDAwMjAwMDAwMDAwMDAwMDAwMDAwMDAwMWZmZmZmcDUzLAorICAgIDB4MS4wMDAwMDJwNTMsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS4wMDAwMDIwMDAwMDAwMDAwMDAwMDAwMDAwMDFmZmZmZnA1MywKKyAgICAweDEuMDAwMDAycDUzLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS4wMDAwMDIwMDAwMDAwMDAwMDAwMDAwMDAwMDIwcDUzLAorICAgIDB4MS4wMDAwMDJwNTMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwM2ZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmVwLTU0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxZmZmZmZwMCwKKyAgICAweDEuZmZmZmZlcC01NCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAweDEuMDAwMDAyMDAwMDAwMDAwMDAwMDAwMDAwMDAxZmZmZmZwMCwKKyAgICAweDEuZmZmZmZlcC01NCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuZmZmZmZlMDAwMDAwMDAwMDAwMDAwMDAwMDA0MHAtMSwKKyAgICAweDEucC01MywKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMWZmZmZmcDAsCisgICAgMHgxLnAtNTMsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLjAwMDAwMjAwMDAwMDAwMDAwMDAwMDAwMDAwMWZmZmZmcDAsCisgICAgMHgxLnAtNTMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLmZmZmZmZTAwMDAwMDAwMDAwMDAwMDAwMDAwNDAwMDAxcC0xLAorICAgIDB4MS4wMDAwMDJwLTUzLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyMHAwLAorICAgIDB4MS4wMDAwMDJwLTUzLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDB4MS4wMDAwMDIwMDAwMDAwMDAwMDAwMDAwMDAwMDIwcDAsCisgICAgMHgxLjAwMDAwMnAtNTMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLmZmZmZmZTAwMDAzZmZmZmZiZmZmZmMwMDAwMDRwMjAsCisgICAgMHgxLmZmZmZmZXAyMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgMHgxLmZmZmZmZTAwMDA0MDAwMDAzZmZmZmMzZmZmZjQ0MHAyMCwKKyAgICAweDEuZmZmZmZlcDIwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS5mZmZmZmUwMDAwNDAwMDAxM2ZmZmZlM2ZmZmQ2M2ZmZnAyMCwKKyAgICAweDEuZmZmZmZlcDIwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIDB4MS4wMDAwMDAwMDAwMWZmZmZmYmZmZmZlMjAwMDA4cDIxLAorICAgIDB4MS5wMjEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS4wMDAwMDAwMDAwMWZmZmZmZmZmZmZlcDIxLAorICAgIDB4MS5wMjEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLjAwMDAwMDAwMDAyMDAwMDA3ZmZmZmU3ZmZmZjBwMjEsCisgICAgMHgxLnAyMSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAweDEuMDAwMDAyMDAwMDFmZmZmZjdmZmZmZjIwMDAxMWJmZmZwMjEsCisgICAgMHgxLjAwMDAwMnAyMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMHgxLjAwMDAwMjAwMDAxZmZmZmZiZmZmZmU4MDAwMGJwMjEsCisgICAgMHgxLjAwMDAwMnAyMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuMDAwMDAyMDAwMDIwMDAwMDNmZmZmZGZmZmZmY3AyMSwKKyAgICAweDEuMDAwMDAycDIxLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS5mZmZmZmUwMDAwMGZmZmZmZWZmZmZmYzAwMDAwNDBwMjEsCisgICAgMHgxLmZmZmZmZXAyMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgMHgxLmZmZmZmZTAwMDAxMDAwMDAwZmZmZmZjZmZmZmY1MHAyMSwKKyAgICAweDEuZmZmZmZlcDIxLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIDB4MS5mZmZmZmUwMDAwMTAwMDAwNTAwMDAwNGZmZmZkY2ZmZnAyMSwKKyAgICAweDEuZmZmZmZlcDIxLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS4wMDAwMDAwMDAwMDdmZmZmZWZmZmZmZTgwMDAwODBwMjIsCisgICAgMHgxLnAyMiwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgMHgxLjAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZlMHAyMiwKKyAgICAweDEucDIyLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS4wMDAwMDAwMDAwMDgwMDAwMWZmZmZmZmZmZmZlZmZmZnAyMiwKKyAgICAweDEucDIyLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIDB4MS4wMDAwMDIwMDAwMDdmZmZmZTAwMDAwMjgwMDAwYWZmZnAyMiwKKyAgICAweDEuMDAwMDAycDIyLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuMDAwMDAyMDAwMDA3ZmZmZmYwMDAwMDAwMDAwMDdmZmZwMjIsCisgICAgMHgxLjAwMDAwMnAyMiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAweDEuMDAwMDAyMDAwMDA4MDAwMDBmZmZmZmRmZmZmZmMwcDIyLAorICAgIDB4MS4wMDAwMDJwMjIsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLmZmZmZmZTAwMDAwM2ZmZmZmYmZmZmZmYzAwMDAwNHAyMiwKKyAgICAweDEuZmZmZmZlcDIyLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEuZmZmZmZlMDAwMDA0MDAwMDAzZmZmZmZmZmZmZmY3ZmZwMjIsCisgICAgMHgxLmZmZmZmZXAyMiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAweDEuZmZmZmZlMDAwMDA0MDAwMDE0MDAwMDFmZmZmZmY3ZmZwMjIsCisgICAgMHgxLmZmZmZmZXAyMiwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEuMDAwMDAwMDAwMDAxZmZmZmZjMDAwMDAwMDAwMDA3ZmZwMjMsCisgICAgMHgxLnAyMywKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLjAwMDAwMDAwMDAwMWZmZmZmZmZmZmZmZXAyMywKKyAgICAweDEucDIzLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS4wMDAwMDAwMDAwMDIwMDAwMDgwMDAwMDVmZmZmZWZmZnAyMywKKyAgICAweDEucDIzLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS4wMDAwMDIwMDAwMDFmZmZmZjgwMDAwMGZmZmZmZWZmZnAyMywKKyAgICAweDEuMDAwMDAycDIzLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEuMDAwMDAyMDAwMDAxZmZmZmZjMDAwMDA1ZmZmZmZiZmZwMjMsCisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuMDAwMDAyMDAwMDAyMDAwMDAzZmZmZmZkZmZmZmZjcDIzLAorICAgIDB4MS4wMDAwMDJwMjMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLmZmZmZmZTAwMDAwMGZmZmZmZWZmZmZmZmMwMDAwMDQwcDIzLAorICAgIDB4MS5mZmZmZmVwMjMsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDB4MS5mZmZmZmUwMDAwMDEwMDAwMDEwMDAwMDBjMDAwMDAzZnAyMywKKyAgICAweDEuZmZmZmZlcDIzLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDB4MS5mZmZmZmUwMDAwMDEwMDAwMDUwMDAwMDhjMDAwMDYzZnAyMywKKyAgICAweDEuZmZmZmZlcDIzLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS4wMDAwMDAwMDAwMDA3ZmZmZmYwMDAwMDA2MDAwMDA3ZnAyNCwKKyAgICAweDEucDI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEuMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZTBwMjQsCisgICAgMHgxLnAyNCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuMDAwMDAwMDAwMDAwODAwMDAyMDAwMDAxZGZmZmZlZmZwMjQsCisgICAgMHgxLnAyNCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEuMDAwMDAyMDAwMDAwN2ZmZmZlMDAwMDA0NWZmZmY4NDBwMjQsCisgICAgMHgxLjAwMDAwMnAyNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjAwMDAwMjAwMDAwMDdmZmZmZjAwMDAwMWRmZmZmY2MwcDI0LAorICAgIDB4MS4wMDAwMDJwMjQsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMHgxLjAwMDAwMjAwMDAwMDgwMDAwMGZmZmZmZmRmZmZmZmMwcDI0LAorICAgIDB4MS4wMDAwMDJwMjQsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgMHgxLmZmZmZmZTAwMDAwMDNmZmZmZmJmZmZmZmZjMDAwMDA0cDI0LAorICAgIDB4MS5mZmZmZmVwMjQsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIDB4MS5mZmZmZmUwMDAwMDA0MDAwMDA0MDAwMDAzYzAwMDAzNHAyNCwKKyAgICAweDEuZmZmZmZlcDI0LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS5mZmZmZmUwMDAwMDA0MDAwMDE0MDAwMDIzYzAwMDIxNHAyNCwKKyAgICAweDEuZmZmZmZlcDI0LAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIDB4MS4wMDAwMDAwMDAwMDAxZmZmZmZjMDAwMDAxZTAwMDAwN3AyNSwKKyAgICAweDEucDI1LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuMDAwMDAwMDAwMDAwMWZmZmZmZmZmZmZmZmVwMjUsCisgICAgMHgxLnAyNSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAweDEuMDAwMDAwMDAwMDAwMjAwMDAwODAwMDAwN2RmZmZmZWZwMjUsCisgICAgMHgxLnAyNSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuMDAwMDAyMDAwMDAwMWZmZmZmODAwMDAxMWRmZmZkZDRwMjUsCisgICAgMHgxLjAwMDAwMnAyNSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLjAwMDAwMjAwMDAwMDFmZmZmZmMwMDAwMDdkZmZmZjBjcDI1LAorICAgIDB4MS4wMDAwMDJwMjUsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLjAwMDAwMjAwMDAwMDIwMDAwMDNmZmZmZmZkZmZmZmZjcDI1LAorICAgIDB4MS4wMDAwMDJwMjUsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLjZhMDllNGZkZTlkNjYxMTRmNjMyMGFiM2VmODIxNjUzcC02MCwKKyAgICAweDEuZmZmZmZlcC02MSwKKyAgICAweDEuZmZmZmZlcC02MQorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS42YTA5ZTViMmVlYzljMjUwMTE3YTJlMjM3NTI4NTc1Y3AtNjAsCisgICAgMHgxLmZmZmZmZXAtNjEsCisgICAgMHgxLnAtNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuNmEwOWU3MWNmOGIxOTQ0ZGIzYzhlNDYyYjA4ODY2MDFwLTYwLAorICAgIDB4MS5mZmZmZmVwLTYxLAorICAgIDB4MS4wMDAwMDJwLTYwCisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLjZhMDllNWIyZWVjOWMyNTAxMTdhMmUyMzc1Mjg1NzVjcC02MCwKKyAgICAweDEucC02MCwKKyAgICAweDEuZmZmZmZlcC02MQorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtNjAsCisgICAgMHgxLnAtNjAsCisgICAgMHgxLnAtNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuNmEwOWU3ZDFmZGEzZTYwMTYyNDMxMTA1OWRmNzE1N2JwLTYwLAorICAgIDB4MS5wLTYwLAorICAgIDB4MS4wMDAwMDJwLTYwCisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLjZhMDllNzFjZjhiMTk0NGRiM2M4ZTQ2MmIwODg2NjAxcC02MCwKKyAgICAweDEuMDAwMDAycC02MCwKKyAgICAweDEuZmZmZmZlcC02MQorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS42YTA5ZTdkMWZkYTNlNjAxNjI0MzExMDU5ZGY3MTU3YnAtNjAsCisgICAgMHgxLjAwMDAwMnAtNjAsCisgICAgMHgxLnAtNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEuNmEwOWU5M2MwNzg5OThmMDJjOGQyNGNjZTBiYzRiMTNwLTYwLAorICAgIDB4MS4wMDAwMDJwLTYwLAorICAgIDB4MS4wMDAwMDJwLTYwCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLjZhMDllNGZkZTlkNjYxMTRmNjMyMGFiM2VmODIxNjUzcC0xMCwKKyAgICAweDEuZmZmZmZlcC0xMSwKKyAgICAweDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS42YTA5ZTViMmVlYzljMjUwMTE3YTJlMjM3NTI4NTc1Y3AtMTAsCisgICAgMHgxLmZmZmZmZXAtMTEsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuNmEwOWU3MWNmOGIxOTQ0ZGIzYzhlNDYyYjA4ODY2MDFwLTEwLAorICAgIDB4MS5mZmZmZmVwLTExLAorICAgIDB4MS4wMDAwMDJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjZhMDllNWIyZWVjOWMyNTAxMTdhMmUyMzc1Mjg1NzVjcC0xMCwKKyAgICAweDEucC0xMCwKKyAgICAweDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtMTAsCisgICAgMHgxLnAtMTAsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEuNmEwOWU3ZDFmZGEzZTYwMTYyNDMxMTA1OWRmNzE1N2JwLTEwLAorICAgIDB4MS5wLTEwLAorICAgIDB4MS4wMDAwMDJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLjZhMDllNzFjZjhiMTk0NGRiM2M4ZTQ2MmIwODg2NjAxcC0xMCwKKyAgICAweDEuMDAwMDAycC0xMCwKKyAgICAweDEuZmZmZmZlcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS42YTA5ZTdkMWZkYTNlNjAxNjI0MzExMDU5ZGY3MTU3YnAtMTAsCisgICAgMHgxLjAwMDAwMnAtMTAsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAweDEuNmEwOWU5M2MwNzg5OThmMDJjOGQyNGNjZTBiYzRiMTNwLTEwLAorICAgIDB4MS4wMDAwMDJwLTEwLAorICAgIDB4MS4wMDAwMDJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjZhMDllNGZkZTlkNjYxMTRmNjMyMGFiM2VmODIxNjUzcC0xLAorICAgIDB4MS5mZmZmZmVwLTIsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIDB4MS42YTA5ZTViMmVlYzljMjUwMTE3YTJlMjM3NTI4NTc1Y3AtMSwKKyAgICAweDEuZmZmZmZlcC0yLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAweDEuNmEwOWU3MWNmOGIxOTQ0ZGIzYzhlNDYyYjA4ODY2MDFwLTEsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgMHgxLjZhMDllNWIyZWVjOWMyNTAxMTdhMmUyMzc1Mjg1NzVjcC0xLAorICAgIDB4MS5wLTEsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtMSwKKyAgICAweDEucC0xLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuNmEwOWU3ZDFmZGEzZTYwMTYyNDMxMTA1OWRmNzE1N2JwLTEsCisgICAgMHgxLnAtMSwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgMHgxLjZhMDllNzFjZjhiMTk0NGRiM2M4ZTQ2MmIwODg2NjAxcC0xLAorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS42YTA5ZTdkMWZkYTNlNjAxNjI0MzExMDU5ZGY3MTU3YnAtMSwKKyAgICAweDEuMDAwMDAycC0xLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAweDEuNmEwOWU5M2MwNzg5OThmMDJjOGQyNGNjZTBiYzRiMTNwLTEsCisgICAgMHgxLjAwMDAwMnAtMSwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLjZhMDllNGZkZTlkNjYxMTRmNjMyMGFiM2VmODIxNjUzcDEsCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDB4MS42YTA5ZTViMmVlYzljMjUwMTE3YTJlMjM3NTI4NTc1Y3AxLAorICAgIDB4MS5mZmZmZmVwMCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEuNmEwOWU3MWNmOGIxOTQ0ZGIzYzhlNDYyYjA4ODY2MDFwMSwKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgMHgxLjZhMDllNWIyZWVjOWMyNTAxMTdhMmUyMzc1Mjg1NzVjcDEsCisgICAgMHgxLnAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAxLAorICAgIDB4MS5wMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuNmEwOWU3ZDFmZGEzZTYwMTYyNDMxMTA1OWRmNzE1N2JwMSwKKyAgICAweDEucDEsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMHgxLjZhMDllNzFjZjhiMTk0NGRiM2M4ZTQ2MmIwODg2NjAxcDEsCisgICAgMHgxLjAwMDAwMnAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS42YTA5ZTdkMWZkYTNlNjAxNjI0MzExMDU5ZGY3MTU3YnAxLAorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuNmEwOWU5M2MwNzg5OThmMDJjOGQyNGNjZTBiYzRiMTNwMSwKKyAgICAweDEuMDAwMDAycDEsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgMHgxLjZhMDllNGZkZTlkNjYxMTRmNjMyMGFiM2VmODIxNjUzcDEwLAorICAgIDB4MS5mZmZmZmVwOSwKKyAgICAweDEuZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuNmEwOWU1YjJlZWM5YzI1MDExN2EyZTIzNzUyODU3NWNwMTAsCisgICAgMHgxLmZmZmZmZXA5LAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAweDEuNmEwOWU3MWNmOGIxOTQ0ZGIzYzhlNDYyYjA4ODY2MDFwMTAsCisgICAgMHgxLmZmZmZmZXA5LAorICAgIDB4MS4wMDAwMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuNmEwOWU1YjJlZWM5YzI1MDExN2EyZTIzNzUyODU3NWNwMTAsCisgICAgMHgxLnAxMCwKKyAgICAweDEuZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMTAsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgMHgxLjZhMDllN2QxZmRhM2U2MDE2MjQzMTEwNTlkZjcxNTdicDEwLAorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIDB4MS42YTA5ZTcxY2Y4YjE5NDRkYjNjOGU0NjJiMDg4NjYwMXAxMCwKKyAgICAweDEuMDAwMDAycDEwLAorICAgIDB4MS5mZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS42YTA5ZTdkMWZkYTNlNjAxNjI0MzExMDU5ZGY3MTU3YnAxMCwKKyAgICAweDEuMDAwMDAycDEwLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAweDEuNmEwOWU5M2MwNzg5OThmMDJjOGQyNGNjZTBiYzRiMTNwMTAsCisgICAgMHgxLjAwMDAwMnAxMCwKKyAgICAweDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMHgxLjZhMDllNGZkZTlkNjYxMTRmNjMyMGFiM2VmODIxNjUzcDYwLAorICAgIDB4MS5mZmZmZmVwNTksCisgICAgMHgxLmZmZmZmZXA1OQorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIDB4MS42YTA5ZTViMmVlYzljMjUwMTE3YTJlMjM3NTI4NTc1Y3A2MCwKKyAgICAweDEuZmZmZmZlcDU5LAorICAgIDB4MS5wNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuNmEwOWU3MWNmOGIxOTQ0ZGIzYzhlNDYyYjA4ODY2MDFwNjAsCisgICAgMHgxLmZmZmZmZXA1OSwKKyAgICAweDEuMDAwMDAycDYwCisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgMHgxLjZhMDllNWIyZWVjOWMyNTAxMTdhMmUyMzc1Mjg1NzVjcDYwLAorICAgIDB4MS5wNjAsCisgICAgMHgxLmZmZmZmZXA1OQorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXA2MCwKKyAgICAweDEucDYwLAorICAgIDB4MS5wNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAweDEuNmEwOWU3ZDFmZGEzZTYwMTYyNDMxMTA1OWRmNzE1N2JwNjAsCisgICAgMHgxLnA2MCwKKyAgICAweDEuMDAwMDAycDYwCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLjZhMDllNzFjZjhiMTk0NGRiM2M4ZTQ2MmIwODg2NjAxcDYwLAorICAgIDB4MS4wMDAwMDJwNjAsCisgICAgMHgxLmZmZmZmZXA1OQorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIDB4MS42YTA5ZTdkMWZkYTNlNjAxNjI0MzExMDU5ZGY3MTU3YnA2MCwKKyAgICAweDEuMDAwMDAycDYwLAorICAgIDB4MS5wNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuNmEwOWU5M2MwNzg5OThmMDJjOGQyNGNjZTBiYzRiMTNwNjAsCisgICAgMHgxLjAwMDAwMnA2MCwKKyAgICAweDEuMDAwMDAycDYwCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLmZmZmZmZXAxMjYsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS5wMTI3LAorICAgIDB4MS5wMTI3LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEucDEyNywKKyAgICAweDEucDEyNywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAweDEucDEyNywKKyAgICAweDEucDEyNywKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEuMDAwMDAycDEyNywKKyAgICAweDEuMDAwMDAycDEyNywKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgMHgxLjAwMDAwMnAxMjcsCisgICAgMHgxLjAwMDAwMnAxMjcsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLjAwMDAwMnAxMjcsCisgICAgMHgxLjAwMDAwMnAxMjcsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgMHgxLjc3OGQyM2Q0NGI1NWM0ZTdiMTBkYjFiNzU3ZjZlZTU1cC0yNywKKyAgICAweDEuMDBhNDM0cC0yNywKKyAgICAweDEuMTIyZGMycC0yNworICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIDB4MS43NzhkMjU0YTE3MTExOGVmYjMyMDY0NzdkMDI1MGVjZHAtMjcsCisgICAgMHgxLjAwYTQzNHAtMjcsCisgICAgMHgxLjEyMmRjNHAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAweDEuNzc4ZDI2YmZlMmNkYjJmMTg2Y2U3ZDNiMTMwM2U0NDVwLTI3LAorICAgIDB4MS4wMGE0MzRwLTI3LAorICAgIDB4MS4xMjJkYzZwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgMHgxLjc3OGQyNTMyMmU1M2M1NzU3NzliZjg0NTNkZmEzZDFjcC0yNywKKyAgICAweDEuMDBhNDM2cC0yNywKKyAgICAweDEuMTIyZGMycC0yNworICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIDB4MS43NzhkMjZhN2ZhMGRiZDNkMzA4ZDg1YTJkZTUzMjliNXAtMjcsCisgICAgMHgxLjAwYTQzNnAtMjcsCisgICAgMHgxLjEyMmRjNHAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAweDEuNzc4ZDI4MWRjNWM4ZmFmZWJjYTAwNTFkODAxNDIzZjJwLTI3LAorICAgIDB4MS4wMGE0MzZwLTI3LAorICAgIDB4MS4xMjJkYzZwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLjc3OGQyNjkwMTE1MzNhMGZhNTczZWM3YWYwODZiYzMycC0yNywKKyAgICAweDEuMDBhNDM4cC0yNywKKyAgICAweDEuMTIyZGMycC0yNworICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIDB4MS43NzhkMjgwNWRkMGJkNTk3MTY1YWVjYzIzNzhiYWMxY3AtMjcsCisgICAgMHgxLjAwYTQzOHAtMjcsCisgICAgMHgxLjEyMmRjNHAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAweDEuNzc4ZDI5N2JhOGM1YjcxODViZTg2YjM3ZWQ3MWI3ZTdwLTI3LAorICAgIDB4MS4wMGE0MzhwLTI3LAorICAgIDB4MS4xMjJkYzZwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgMHgxLjc0MzM0ZTEwNmNiZWQ5YWU4NGJjOGM3NmRkNWM1NzEzcDAsCisgICAgMHgxLjBiMjVwMCwKKyAgICAtMHgxLjAzMmE3NnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgMHgxLjc0MzM0Y2FiZWE1YjhmNzRkNWQxNGM5NGUwYzc1OWUxcDAsCisgICAgMHgxLjBiMjVwMCwKKyAgICAtMHgxLjAzMmE3NHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgMHgxLjc0MzM0YjQ3NjdmOWIwMGY2MjY2Zjc5OGNlMDNmZTU2cDAsCisgICAgMHgxLjBiMjVwMCwKKyAgICAtMHgxLjAzMmE3MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMHgxLjc0MzM0ZjdmZThkYzkxNWY1Njk1NGNiNzMwZWM0ZWFjcDAsCisgICAgMHgxLjBiMjUwMnAwLAorICAgIC0weDEuMDMyYTc2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAweDEuNzQzMzRlMWI2NjdhYTcyM2JlZjhiZDk5OTdlMzE4ZGJwMCwKKyAgICAweDEuMGIyNTAycDAsCisgICAgLTB4MS4wMzJhNzRwMAorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS43NDMzNGNiNmU0MWEyN2JjNjQxOTJjNzYyM2M5MDk1ZXAwLAorICAgIDB4MS4wYjI1MDJwMCwKKyAgICAtMHgxLjAzMmE3MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQzCisgICAgMHgxLjc0MzM1MGVmNjRmYjllOGFmNjUzYzJjMzMwODI1MDRmcDAsCisgICAgMHgxLjBiMjUwNHAwLAorICAgIC0weDEuMDMyYTc2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuNzQzMzRmOGFlMjliMTQ0ZDc0OTVlOGYzZDM1NmJlN2ZwMCwKKyAgICAweDEuMGIyNTA0cDAsCisgICAgLTB4MS4wMzJhNzRwMAorICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIDB4MS43NDMzNGUyNjYwM2JmNGU0MzBkMTIwMjliZTdlOWU1MHAwLAorICAgIDB4MS4wYjI1MDRwMCwKKyAgICAtMHgxLjAzMmE3MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMHgxLmI2ZDYyZmM2ZjdhODFlYzk0OGExMTQxZWZjNjA1MmE3cDcsCisgICAgMHgxLjM4NDU2MHA3LAorICAgIDB4MS4zNDUzNDJwNworICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIDB4MS5iNmQ2MzEyZWIyNmM1YmM0ODZiOTJmOGNmNTU2OTRmMHA3LAorICAgIDB4MS4zODQ1NjBwNywKKyAgICAweDEuMzQ1MzQ0cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDgKKyAgICAweDEuYjZkNjMyOTY2ZDMxYzczYTQwNDFiYWRjMTg4ODIzN2RwNywKKyAgICAweDEuMzg0NTYwcDcsCisgICAgMHgxLjM0NTM0NnA3CisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgMHgxLmI2ZDYzMTMzNGNmMmMwZmYwNWQwZGUyNmZmNDAxNDc4cDcsCisgICAgMHgxLjM4NDU2MnA3LAorICAgIDB4MS4zNDUzNDJwNworICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS5iNmQ2MzI5YjA3YjVkMzUyMzc2NzZkMGVmNGI5ZjQyNnA3LAorICAgIDB4MS4zODQ1NjJwNywKKyAgICAweDEuMzQ1MzQ0cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAweDEuYjZkNjM0MDJjMjdhMTQxZmU1NWNlZjFlMzQ2NWFkNmRwNywKKyAgICAweDEuMzg0NTYycDcsCisgICAgMHgxLjM0NTM0NnA3CisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLmI2ZDYzMjlmYTIzZThhMTZiOWJiOTMyOTgyMzUwNDhjcDcsCisgICAgMHgxLjM4NDU2NHA3LAorICAgIDB4MS4zNDUzNDJwNworICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIDB4MS5iNmQ2MzQwNzVkMDA3MWMxZGZjZWMzNDE4OTg5ZTA1ZXA3LAorICAgIDB4MS4zODQ1NjRwNywKKyAgICAweDEuMzQ1MzQ0cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuYjZkNjM1NmYxN2MzODdlNzgzMmY2OWMxNmM4MWUwY2NwNywKKyAgICAweDEuMzg0NTY0cDcsCisgICAgMHgxLjM0NTM0NnA3CisgIH0sCisgIHsgLy8gRW50cnkgMzU1CisgICAgMHgxLmI2ZDYzNTZmMTdjMzg3ZTc4MzJmNjljMTZjODFlMGNjcC02LAorICAgIC0weDEuMzg0NTY0cC02LAorICAgIC0weDEuMzQ1MzQ2cC02CisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgMHgxLmI2ZDYzNDA3NWQwMDcxYzFkZmNlYzM0MTg5ODllMDVlcC02LAorICAgIC0weDEuMzg0NTY0cC02LAorICAgIC0weDEuMzQ1MzQ0cC02CisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgMHgxLmI2ZDYzMjlmYTIzZThhMTZiOWJiOTMyOTgyMzUwNDhjcC02LAorICAgIC0weDEuMzg0NTY0cC02LAorICAgIC0weDEuMzQ1MzQycC02CisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgMHgxLmI2ZDYzNDAyYzI3YTE0MWZlNTVjZWYxZTM0NjVhZDZkcC02LAorICAgIC0weDEuMzg0NTYycC02LAorICAgIC0weDEuMzQ1MzQ2cC02CisgIH0sCisgIHsgLy8gRW50cnkgMzU5CisgICAgMHgxLmI2ZDYzMjliMDdiNWQzNTIzNzY3NmQwZWY0YjlmNDI2cC02LAorICAgIC0weDEuMzg0NTYycC02LAorICAgIC0weDEuMzQ1MzQ0cC02CisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgMHgxLmI2ZDYzMTMzNGNmMmMwZmYwNWQwZGUyNmZmNDAxNDc4cC02LAorICAgIC0weDEuMzg0NTYycC02LAorICAgIC0weDEuMzQ1MzQycC02CisgIH0sCisgIHsgLy8gRW50cnkgMzYxCisgICAgMHgxLmI2ZDYzMjk2NmQzMWM3M2E0MDQxYmFkYzE4ODgyMzdkcC02LAorICAgIC0weDEuMzg0NTYwcC02LAorICAgIC0weDEuMzQ1MzQ2cC02CisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgMHgxLmI2ZDYzMTJlYjI2YzViYzQ4NmI5MmY4Y2Y1NTY5NGYwcC02LAorICAgIC0weDEuMzg0NTYwcC02LAorICAgIC0weDEuMzQ1MzQ0cC02CisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgMHgxLmI2ZDYyZmM2ZjdhODFlYzk0OGExMTQxZWZjNjA1MmE3cC02LAorICAgIC0weDEuMzg0NTYwcC02LAorICAgIC0weDEuMzQ1MzQycC02CisgIH0sCisgIHsgLy8gRW50cnkgMzY0CisgICAgMHgxLjlhMTM0MjUwZGQ1MDU4MmIzNjgwZDgyMzc1Yzk1NDg2cC0xNiwKKyAgICAtMHgxLjM4NDU2NHAtMTYsCisgICAgLTB4MS4wOWNjM2VwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgMHgxLjlhMTM0MTA1MDA5NTU4N2NlMGZmMmY2OTBhYmUzMTMwcC0xNiwKKyAgICAtMHgxLjM4NDU2NHAtMTYsCisgICAgLTB4MS4wOWNjM2NwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgMHgxLjlhMTMzZmI5MjNkYmNiN2Y5ZDY4ZGIzNjM2MWY3YTRjcC0xNiwKKyAgICAtMHgxLjM4NDU2NHAtMTYsCisgICAgLTB4MS4wOWNjM2FwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgMHgxLjlhMTM0MGNhZmE2MWEwZTYyNzc4OWI1ZTIwNDYzZDFmcC0xNiwKKyAgICAtMHgxLjM4NDU2MnAtMTYsCisgICAgLTB4MS4wOWNjM2VwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgMzY4CisgICAgMHgxLjlhMTMzZjdmMWRhNTY1YjFhOTM4YjViYzJhMDVhZDJicC0xNiwKKyAgICAtMHgxLjM4NDU2MnAtMTYsCisgICAgLTB4MS4wOWNjM2NwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgMHgxLjlhMTMzZTMzNDBlYTlkMmUzYzQ1ZTU0NmYyYjMwMTg4cC0xNiwKKyAgICAtMHgxLjM4NDU2MnAtMTYsCisgICAgLTB4MS4wOWNjM2FwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLjlhMTMzZjQ1MTc3M2Y2MzIyZGNkZjgzNzNlOTllZjc3cC0xNiwKKyAgICAtMHgxLjM4NDU2MHAtMTYsCisgICAgLTB4MS4wOWNjM2VwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgMHgxLjlhMTMzZGY5M2FiNjdmNzc4NTUxMzI5NzVhNmQzYWEycC0xNiwKKyAgICAtMHgxLjM4NDU2MHAtMTYsCisgICAgLTB4MS4wOWNjM2NwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgMzcyCisgICAgMHgxLjlhMTMzY2FkNWRmYTdiNmRlZDgzNDJjMmVkMjM1MDdlcC0xNiwKKyAgICAtMHgxLjM4NDU2MHAtMTYsCisgICAgLTB4MS4wOWNjM2FwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgMHgxLjZhMDllOTNjMDc4OTk4ZjAyYzhkMjRjY2UwYmM0YjEzcC02LAorICAgIC0weDEuMDAwMDAycC02LAorICAgIC0weDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMzc0CisgICAgMHgxLjZhMDllN2QxZmRhM2U2MDE2MjQzMTEwNTlkZjcxNTdicC02LAorICAgIC0weDEuMDAwMDAycC02LAorICAgIC0weDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgMHgxLjZhMDllNzFjZjhiMTk0NGRiM2M4ZTQ2MmIwODg2NjAxcC02LAorICAgIC0weDEuMDAwMDAycC02LAorICAgIC0weDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgMHgxLjZhMDllN2QxZmRhM2U2MDE2MjQzMTEwNTlkZjcxNTdicC02LAorICAgIC0weDEucC02LAorICAgIC0weDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC02LAorICAgIC0weDEucC02LAorICAgIC0weDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMzc4CisgICAgMHgxLjZhMDllNWIyZWVjOWMyNTAxMTdhMmUyMzc1Mjg1NzVjcC02LAorICAgIC0weDEucC02LAorICAgIC0weDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMzc5CisgICAgMHgxLjZhMDllNzFjZjhiMTk0NGRiM2M4ZTQ2MmIwODg2NjAxcC02LAorICAgIC0weDEuZmZmZmZlcC03LAorICAgIC0weDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgMHgxLjZhMDllNWIyZWVjOWMyNTAxMTdhMmUyMzc1Mjg1NzVjcC02LAorICAgIC0weDEuZmZmZmZlcC03LAorICAgIC0weDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgMHgxLjZhMDllNGZkZTlkNjYxMTRmNjMyMGFiM2VmODIxNjUzcC02LAorICAgIC0weDEuZmZmZmZlcC03LAorICAgIC0weDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAweDEucC0xNDksCisgICAgMC4wLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODYKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDM4NworICAgIDB4MS5wLTE0OSwKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTEKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDM5MgorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzk1CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDM5OAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNDAxCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDQKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDA4CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDQwOQorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTEKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTMKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDQxNQorICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTgKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDQyMQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNDIyCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNDIzCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgSFVHRV9WQUxGLAorICAgIDAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDQyNQorICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNDI2CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDMwCisgICAgMHgxLnAtMTI2LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNDMxCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgMC4wLAorICAgIDAuMGYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDQzMworICAgIDAuMCwKKyAgICAwLjBmLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNDM0CisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQzNQorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzYKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDQzNworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLnAtMTI2LAorICAgIC0wLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDQzOQorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAwLjAsCisgICAgLTAuMGYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDQ0MQorICAgIDAuMCwKKyAgICAtMC4wZiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgMHgxLnAtMTI2LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDQKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDUKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNDQ2CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNDQ4CisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTAKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDQ1MQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDQ1MworICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTQKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDQ1NQorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNDU2CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNDU3CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ2MQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDYzCisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDQ2NAorICAgIDB4MS4wMDAwMDAwMDAwMDFmZmZmZmZmZmZmZmVwLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDY1CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ2NgorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDY3CisgICAgMHgxLjQwcDIsCisgICAgMHgxLjgwcDEsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDY4CisgICAgMHgxLjQwcDIsCisgICAgMHgxLjgwcDEsCisgICAgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIDB4MS5hMHAzLAorICAgIDB4MS40MHAyLAorICAgIDB4MS44MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDcwCisgICAgMHgxLmEwcDMsCisgICAgMHgxLjQwcDIsCisgICAgLTB4MS44MHAzCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvaWxvZ2JfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2lsb2diX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MGEzYTdmCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2lsb2diX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDg5MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhX2ludF8xX3Q8ZG91YmxlPiBnX2lsb2diX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgKGludCkweDEuOTBwNiwKKyAgICAweDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgKGludCkweDEuOTBwNiwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgKGludCkweDEuOTBwNiwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgKGludCkweDEuOTBwNiwKKyAgICAweDEuNGNjY2NjY2NjY2NjZXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgKGludCkweDEuOTBwNiwKKyAgICAweDEuNjY2NjY2NjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgKGludCkweDEuOTBwNiwKKyAgICAweDEuODAwMDAwMDAwMDAwMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgKGludCkweDEuOTBwNiwKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgKGludCkweDEuOTBwNiwKKyAgICAweDEuYjMzMzMzMzMzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgKGludCkweDEuOTBwNiwKKyAgICAweDEuY2NjY2NjY2NjY2NkMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgKGludCkweDEuOTBwNiwKKyAgICAweDEuZTY2NjY2NjY2NjY2YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIChpbnQpMHgxLjk0cDYsCisgICAgMHgxLjBwMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAoaW50KTB4MS45MHA3LAorICAgIDB4MS4wcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgKGludCkweDEuOTBwNywKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIChpbnQpMHgxLjkwcDcsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAoaW50KTB4MS45MHA3LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgKGludCkweDEuOTBwNywKKyAgICAweDEuNjY2NjY2NjY2NjY2OHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIChpbnQpMHgxLjkwcDcsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAoaW50KTB4MS45MHA3LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgKGludCkweDEuOTBwNywKKyAgICAweDEuYjMzMzMzMzMzMzMzNnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIChpbnQpMHgxLjkwcDcsCisgICAgMHgxLmNjY2NjY2NjY2NjZDBwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAoaW50KTB4MS45MHA3LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgKGludCkweDEuOTJwNywKKyAgICAweDEuMHAyMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIChpbnQpMHgxLmY0cDksCisgICAgMHgxLjBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgKGludCkweDEuZjRwOSwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAoaW50KTB4MS5mNHA5LAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIChpbnQpMHgxLmY0cDksCisgICAgMHgxLjRjY2NjY2NjY2NjY2VwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgKGludCkweDEuZjRwOSwKKyAgICAweDEuNjY2NjY2NjY2NjY2OHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAoaW50KTB4MS5mNHA5LAorICAgIDB4MS44MDAwMDAwMDAwMDAycDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIChpbnQpMHgxLmY0cDksCisgICAgMHgxLjk5OTk5OTk5OTk5OWNwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgKGludCkweDEuZjRwOSwKKyAgICAweDEuYjMzMzMzMzMzMzMzNnAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAoaW50KTB4MS5mNHA5LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIChpbnQpMHgxLmY0cDksCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgKGludCkweDEuZjQ4MHA5LAorICAgIDB4MS4wcDEwMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIChpbnQpMHgxLjk0cDYsCisgICAgLTB4MS4wcDEwMQorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgKGludCkweDEuOTBwNiwKKyAgICAtMHgxLmU2NjY2NjY2NjY2NjZwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAoaW50KTB4MS45MHA2LAorICAgIC0weDEuY2NjY2NjY2NjY2NjY3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIChpbnQpMHgxLjkwcDYsCisgICAgLTB4MS5iMzMzMzMzMzMzMzMycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgKGludCkweDEuOTBwNiwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OThwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAoaW50KTB4MS45MHA2LAorICAgIC0weDEuN2ZmZmZmZmZmZmZmZXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIChpbnQpMHgxLjkwcDYsCisgICAgLTB4MS42NjY2NjY2NjY2NjY0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgKGludCkweDEuOTBwNiwKKyAgICAtMHgxLjRjY2NjY2NjY2NjY2FwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAoaW50KTB4MS45MHA2LAorICAgIC0weDEuMzMzMzMzMzMzMzMzMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIChpbnQpMHgxLjkwcDYsCisgICAgLTB4MS4xOTk5OTk5OTk5OTk2cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgKGludCkweDEuOTBwNiwKKyAgICAtMHgxLjBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAoaW50KTB4MS45MnA3LAorICAgIC0weDEuMHAyMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIChpbnQpMHgxLjkwcDcsCisgICAgLTB4MS5lNjY2NjY2NjY2NjY2cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgKGludCkweDEuOTBwNywKKyAgICAtMHgxLmNjY2NjY2NjY2NjY2NwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAoaW50KTB4MS45MHA3LAorICAgIC0weDEuYjMzMzMzMzMzMzMzMnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIChpbnQpMHgxLjkwcDcsCisgICAgLTB4MS45OTk5OTk5OTk5OTk4cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgKGludCkweDEuOTBwNywKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmVwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAoaW50KTB4MS45MHA3LAorICAgIC0weDEuNjY2NjY2NjY2NjY2NHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIChpbnQpMHgxLjkwcDcsCisgICAgLTB4MS40Y2NjY2NjY2NjY2NhcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgKGludCkweDEuOTBwNywKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzBwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAoaW50KTB4MS45MHA3LAorICAgIC0weDEuMTk5OTk5OTk5OTk5NnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIChpbnQpMHgxLjkwcDcsCisgICAgLTB4MS4wcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgKGludCkweDEuZjQ4MHA5LAorICAgIC0weDEuMHAxMDAxCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAoaW50KTB4MS5mNHA5LAorICAgIC0weDEuZTY2NjY2NjY2NjY2NnAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAoaW50KTB4MS5mNHA5LAorICAgIC0weDEuY2NjY2NjY2NjY2NjY3AxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAoaW50KTB4MS5mNHA5LAorICAgIC0weDEuYjMzMzMzMzMzMzMzMnAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAoaW50KTB4MS5mNHA5LAorICAgIC0weDEuOTk5OTk5OTk5OTk5OHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAoaW50KTB4MS5mNHA5LAorICAgIC0weDEuN2ZmZmZmZmZmZmZmZXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAoaW50KTB4MS5mNHA5LAorICAgIC0weDEuNjY2NjY2NjY2NjY2NHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAoaW50KTB4MS5mNHA5LAorICAgIC0weDEuNGNjY2NjY2NjY2NjYXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAoaW50KTB4MS5mNHA5LAorICAgIC0weDEuMzMzMzMzMzMzMzMzMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAoaW50KTB4MS5mNHA5LAorICAgIC0weDEuMTk5OTk5OTk5OTk5NnAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAoaW50KTB4MS5mNHA5LAorICAgIC0weDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAoaW50KTB4MS45MHA1LAorICAgIDB4MS4wcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAoaW50KTB4MS45MHA1LAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAoaW50KTB4MS45MHA1LAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cDUwCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAoaW50KTB4MS45MHA1LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAoaW50KTB4MS45MHA1LAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAoaW50KTB4MS45MHA1LAorICAgIDB4MS44MDAwMDAwMDAwMDAycDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAoaW50KTB4MS45MHA1LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAoaW50KTB4MS45MHA1LAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAoaW50KTB4MS45MHA1LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAoaW50KTB4MS45MHA1LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS4wcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS4wcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cDUxCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDUxCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDUxCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS44MDAwMDAwMDAwMDAycDUxCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDUxCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDUxCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDUxCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDUxCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS44MDAwMDAwMDAwMDAycDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAoaW50KTB4MS5hOHA1LAorICAgIDB4MS4wcDUzCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAoaW50KTB4MS5hOHA1LAorICAgIDB4MS4wcDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgKGludCkweDEuYThwNSwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXA1MworICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIChpbnQpMHgxLmE4cDUsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAoaW50KTB4MS5hOHA1LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgKGludCkweDEuYThwNSwKKyAgICAweDEuNjY2NjY2NjY2NjY2OHA1MworICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIChpbnQpMHgxLmE4cDUsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAoaW50KTB4MS5hOHA1LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgKGludCkweDEuYThwNSwKKyAgICAweDEuYjMzMzMzMzMzMzMzNnA1MworICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIChpbnQpMHgxLmE4cDUsCisgICAgMHgxLmNjY2NjY2NjY2NjZDBwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAoaW50KTB4MS5hOHA1LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgKGludCkweDEuYjBwNSwKKyAgICAweDEuMHA1NAorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIChpbnQpLTB4MS4wMDgwcDEwLAorICAgIDB4MS4wcC0xMDI2CisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgKGludCktMHgxLnAxMCwKKyAgICAweDEuZDMzMzMzMzMzMzMzNHAtMTAyNAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIChpbnQpLTB4MS5mZjgwcDksCisgICAgMHgxLmIzMzMzMzMzMzMzMzRwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAoaW50KS0weDEuZmZwOSwKKyAgICAweDEuM2U2NjY2NjY2NjY2N3AtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIChpbnQpLTB4MS5mZnA5LAorICAgIDB4MS5hMzMzMzMzMzMzMzM0cC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgKGludCktMHgxLmZlODBwOSwKKyAgICAweDEuMDQwcC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgKGludCktMHgxLmZlODBwOSwKKyAgICAweDEuMzY2NjY2NjY2NjY2NnAtMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIChpbnQpLTB4MS5mZTgwcDksCisgICAgMHgxLjY4Y2NjY2NjY2NjY2NwLTEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAoaW50KS0weDEuZmU4MHA5LAorICAgIDB4MS45YjMzMzMzMzMzMzMycC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgKGludCktMHgxLmZlODBwOSwKKyAgICAweDEuY2Q5OTk5OTk5OTk5OHAtMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIChpbnQpLTB4MS5mZTgwcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAoaW50KTB4MS45MHA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUwCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgKGludCkweDEuOThwNSwKKyAgICAweDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIChpbnQpMHgxLjk4cDUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAoaW50KTB4MS45OHA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgKGludCkweDEuYTBwNSwKKyAgICAweDEuMHA1MgorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIChpbnQpMHgxLmEwcDUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUyCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgKGludCkweDEuYThwNSwKKyAgICAweDEuMHA1MworICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIChpbnQpMHgxLmE4cDUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAoaW50KTB4MS45OHA1LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIChpbnQpMHgxLjk4cDUsCisgICAgLTB4MS4wcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgKGludCkweDEuOTBwNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAoaW50KTB4MS5hMHA1LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MgorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIChpbnQpMHgxLmEwcDUsCisgICAgLTB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgKGludCkweDEuOThwNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAoaW50KTB4MS5hOHA1LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MworICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIChpbnQpMHgxLmE4cDUsCisgICAgLTB4MS4wcDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgKGludCkweDEuYTBwNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAoaW50KTB4MS5mZjgwcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIChpbnQpMHgxLmZmODBwOSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIChpbnQpLTB4MS5jMHAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgKGludCktMHgxLjgwcDIsCisgICAgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAoaW50KS0weDEuODBwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIChpbnQpLTB4MS44MHAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgKGludCktMHgxLjQwcDIsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAoaW50KS0weDEuNDBwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIChpbnQpLTB4MS40MHAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgKGludCktMHgxLnAyLAorICAgIDB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgKGludCktMHgxLnAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgKGludCktMHgxLnAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgKGludCktMHgxLjgwcDEsCisgICAgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAoaW50KS0weDEuODBwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIChpbnQpLTB4MS44MHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgKGludCktMHgxLnAxLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgKGludCktMHgxLnAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgKGludCktMHgxLnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgKGludCktMHgxLnAwLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgKGludCktMHgxLnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgKGludCktMHgxLjBjODBwMTAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgKGludCktMHgxLmZmZmZmZmZjcDMwLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAoaW50KS0weDEuMGM4MHAxMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIChpbnQpMC4wLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgKGludCkweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIChpbnQpMHgxLnAxLAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAoaW50KTB4MS5wMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgKGludCkweDEucDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIChpbnQpMHgxLjgwcDEsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIChpbnQpMHgxLjgwcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMworICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIChpbnQpMHgxLjgwcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIChpbnQpMHgxLnAyLAorICAgIDB4MS4wcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAoaW50KTB4MS5wMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgKGludCkweDEucDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNAorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIChpbnQpMHgxLjQwcDIsCisgICAgMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIChpbnQpMHgxLjQwcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIChpbnQpMHgxLjQwcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIChpbnQpMHgxLjgwcDIsCisgICAgMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIChpbnQpMHgxLjgwcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIChpbnQpMHgxLjgwcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIChpbnQpMHgxLmMwcDIsCisgICAgMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIChpbnQpMHgxLmMwcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNworICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIChpbnQpMHgxLmZmZmZmZmZjcDMwLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgKGludCkweDEuZmZmZmZmZmNwMzAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgKGludCktMHgxLmZmZmZmZmZjcDMwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIChpbnQpLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgKGludCkweDEuZmY4MHA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAoaW50KTB4MS5mZjgwcDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAoaW50KTB4MS5mZjgwcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIChpbnQpMHgxLmZmODBwOSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIChpbnQpMC4wLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIChpbnQpLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAoaW50KS0weDEucDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgKGludCktMHgxLmZmcDksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAoaW50KS0weDEuZmZwOSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAoaW50KS0weDEuZmZwOSwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIChpbnQpLTB4MS5mZnA5LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIChpbnQpLTB4MS5mZjgwcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAoaW50KS0weDEuZmY4MHA5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIChpbnQpLTB4MS5mZjgwcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAoaW50KS0weDEuZmY4MHA5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIChpbnQpLTB4MS4wYzQwcDEwLAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgKGludCktMHgxLjBjNDBwMTAsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgKGludCktMHgxLjBjODBwMTAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAoaW50KS0weDEuMGM4MHAxMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9pbG9nYmZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2lsb2diZl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWYwOGZhMwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9pbG9nYmZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsNzE0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfaW50XzFfdDxmbG9hdD4gZ19pbG9nYmZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAoaW50KTB4MS45MHA2LAorICAgIDB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIChpbnQpMHgxLjkwcDYsCisgICAgMHgxLjE5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgKGludCkweDEuOTBwNiwKKyAgICAweDEuMzMzMzM0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAoaW50KTB4MS45MHA2LAorICAgIDB4MS40Y2NjY2VwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIChpbnQpMHgxLjkwcDYsCisgICAgMHgxLjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgKGludCkweDEuOTBwNiwKKyAgICAweDEuODAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAoaW50KTB4MS45MHA2LAorICAgIDB4MS45OTk5OWNwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIChpbnQpMHgxLjkwcDYsCisgICAgMHgxLmIzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgKGludCkweDEuOTBwNiwKKyAgICAweDEuY2NjY2QwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAoaW50KTB4MS45MHA2LAorICAgIDB4MS5lNjY2NmFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAoaW50KTB4MS45NHA2LAorICAgIDB4MS5wMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAoaW50KTB4MS45NHA2LAorICAgIC0weDEucDEwMQorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgKGludCkweDEuOTBwNiwKKyAgICAtMHgxLmU2NjY2NnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIChpbnQpMHgxLjkwcDYsCisgICAgLTB4MS5jY2NjY2NwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAoaW50KTB4MS45MHA2LAorICAgIC0weDEuYjMzMzMycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgKGludCkweDEuOTBwNiwKKyAgICAtMHgxLjk5OTk5OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIChpbnQpMHgxLjkwcDYsCisgICAgLTB4MS43ZmZmZmVwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAoaW50KTB4MS45MHA2LAorICAgIC0weDEuNjY2NjY0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgKGludCkweDEuOTBwNiwKKyAgICAtMHgxLjRjY2NjYXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIChpbnQpMHgxLjkwcDYsCisgICAgLTB4MS4zMzMzMzBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAoaW50KTB4MS45MHA2LAorICAgIC0weDEuMTk5OTk2cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgKGludCkweDEuOTBwNiwKKyAgICAtMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIChpbnQpMHgxLjUwcDQsCisgICAgMHgxLnAyMQorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgKGludCkweDEuNTBwNCwKKyAgICAweDEuMTk5OTlhcDIxCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAoaW50KTB4MS41MHA0LAorICAgIDB4MS4zMzMzMzRwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIChpbnQpMHgxLjUwcDQsCisgICAgMHgxLjRjY2NjZXAyMQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgKGludCkweDEuNTBwNCwKKyAgICAweDEuNjY2NjY4cDIxCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAoaW50KTB4MS41MHA0LAorICAgIDB4MS44MDAwMDJwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIChpbnQpMHgxLjUwcDQsCisgICAgMHgxLjk5OTk5Y3AyMQorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgKGludCkweDEuNTBwNCwKKyAgICAweDEuYjMzMzM2cDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAoaW50KTB4MS41MHA0LAorICAgIDB4MS5jY2NjZDBwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIChpbnQpMHgxLjUwcDQsCisgICAgMHgxLmU2NjY2YXAyMQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgKGludCkweDEuNjBwNCwKKyAgICAweDEucDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAoaW50KTB4MS42MHA0LAorICAgIDB4MS5wMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIChpbnQpMHgxLjYwcDQsCisgICAgMHgxLjE5OTk5YXAyMgorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgKGludCkweDEuNjBwNCwKKyAgICAweDEuMzMzMzM0cDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAoaW50KTB4MS42MHA0LAorICAgIDB4MS40Y2NjY2VwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIChpbnQpMHgxLjYwcDQsCisgICAgMHgxLjY2NjY2OHAyMgorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgKGludCkweDEuNjBwNCwKKyAgICAweDEuODAwMDAycDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAoaW50KTB4MS42MHA0LAorICAgIDB4MS45OTk5OWNwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIChpbnQpMHgxLjYwcDQsCisgICAgMHgxLmIzMzMzNnAyMgorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgKGludCkweDEuNjBwNCwKKyAgICAweDEuY2NjY2QwcDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAoaW50KTB4MS42MHA0LAorICAgIDB4MS5lNjY2NmFwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIChpbnQpMHgxLjcwcDQsCisgICAgMHgxLnAyMworICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgKGludCkweDEuNzBwNCwKKyAgICAweDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAoaW50KTB4MS43MHA0LAorICAgIDB4MS4xOTk5OWFwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIChpbnQpMHgxLjcwcDQsCisgICAgMHgxLjMzMzMzNHAyMworICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgKGludCkweDEuNzBwNCwKKyAgICAweDEuNGNjY2NlcDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAoaW50KTB4MS43MHA0LAorICAgIDB4MS42NjY2NjhwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIChpbnQpMHgxLjcwcDQsCisgICAgMHgxLjgwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgKGludCkweDEuNzBwNCwKKyAgICAweDEuOTk5OTljcDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAoaW50KTB4MS43MHA0LAorICAgIDB4MS5iMzMzMzZwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIChpbnQpMHgxLjcwcDQsCisgICAgMHgxLmNjY2NkMHAyMworICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgKGludCkweDEuNzBwNCwKKyAgICAweDEuZTY2NjZhcDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAoaW50KTB4MS44MHA0LAorICAgIDB4MS5wMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIChpbnQpMHgxLjgwcDQsCisgICAgMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgKGludCkweDEuODBwNCwKKyAgICAweDEuMTk5OTlhcDI0CisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAoaW50KTB4MS44MHA0LAorICAgIDB4MS4zMzMzMzRwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIChpbnQpMHgxLjgwcDQsCisgICAgMHgxLjRjY2NjZXAyNAorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgKGludCkweDEuODBwNCwKKyAgICAweDEuNjY2NjY4cDI0CisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAoaW50KTB4MS44MHA0LAorICAgIDB4MS44MDAwMDJwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIChpbnQpMHgxLjgwcDQsCisgICAgMHgxLjk5OTk5Y3AyNAorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgKGludCkweDEuODBwNCwKKyAgICAweDEuYjMzMzM2cDI0CisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAoaW50KTB4MS44MHA0LAorICAgIDB4MS5jY2NjZDBwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIChpbnQpMHgxLjgwcDQsCisgICAgMHgxLmU2NjY2YXAyNAorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgKGludCkweDEuOTBwNCwKKyAgICAweDEucDI1CisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAoaW50KS0weDEuMDRwNywKKyAgICAweDEucC0xMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIChpbnQpLTB4MS5wNywKKyAgICAweDEuZDMzMzMwcC0xMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIChpbnQpLTB4MS5mY3A2LAorICAgIDB4MS5iMzMzMzBwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgKGludCktMHgxLmY4cDYsCisgICAgMHgxLjNlNjY2NHAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAoaW50KS0weDEuZjhwNiwKKyAgICAweDEuYTMzMzMwcC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIChpbnQpLTB4MS5mNHA2LAorICAgIDB4MS4wM2ZmZmVwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgKGludCktMHgxLmY0cDYsCisgICAgMHgxLjM2NjY2NHAtMTI1CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAoaW50KS0weDEuZjRwNiwKKyAgICAweDEuNjhjY2NhcC0xMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIChpbnQpLTB4MS5mNHA2LAorICAgIDB4MS45YjMzMzBwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgKGludCktMHgxLmY0cDYsCisgICAgMHgxLmNkOTk5NnAtMTI1CisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAoaW50KS0weDEuZjRwNiwKKyAgICAweDEuZmZmZmZjcC0xMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIChpbnQpMHgxLjUwcDQsCisgICAgMHgxLmZmZmZmZXAyMQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgKGludCkweDEuNjBwNCwKKyAgICAweDEucDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAoaW50KTB4MS42MHA0LAorICAgIDB4MS4wMDAwMDJwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIChpbnQpMHgxLjYwcDQsCisgICAgMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgKGludCkweDEuNzBwNCwKKyAgICAweDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAoaW50KTB4MS43MHA0LAorICAgIDB4MS4wMDAwMDJwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIChpbnQpMHgxLjcwcDQsCisgICAgMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgKGludCkweDEuODBwNCwKKyAgICAweDEucDI0CisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAoaW50KTB4MS44MHA0LAorICAgIDB4MS4wMDAwMDJwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIChpbnQpMHgxLjYwcDQsCisgICAgLTB4MS4wMDAwMDJwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIChpbnQpMHgxLjYwcDQsCisgICAgLTB4MS5wMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIChpbnQpMHgxLjUwcDQsCisgICAgLTB4MS5mZmZmZmVwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIChpbnQpMHgxLjcwcDQsCisgICAgLTB4MS4wMDAwMDJwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIChpbnQpMHgxLjcwcDQsCisgICAgLTB4MS5wMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIChpbnQpMHgxLjYwcDQsCisgICAgLTB4MS5mZmZmZmVwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIChpbnQpMHgxLjgwcDQsCisgICAgLTB4MS4wMDAwMDJwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIChpbnQpMHgxLjgwcDQsCisgICAgLTB4MS5wMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIChpbnQpMHgxLjcwcDQsCisgICAgLTB4MS5mZmZmZmVwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIChpbnQpMHgxLmZjcDYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIChpbnQpMHgxLmZjcDYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAoaW50KS0weDEuYzBwMiwKKyAgICAweDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAoaW50KS0weDEuODBwMiwKKyAgICAweDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAoaW50KS0weDEuODBwMiwKKyAgICAweDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgKGludCktMHgxLjgwcDIsCisgICAgMHgxLmZmZmZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIChpbnQpLTB4MS40MHAyLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAoaW50KS0weDEuNDBwMiwKKyAgICAweDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgKGludCktMHgxLjQwcDIsCisgICAgMHgxLmZmZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIChpbnQpLTB4MS5wMiwKKyAgICAweDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgKGludCktMHgxLnAyLAorICAgIDB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAoaW50KS0weDEucDIsCisgICAgMHgxLmZmZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIChpbnQpLTB4MS44MHAxLAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAoaW50KS0weDEuODBwMSwKKyAgICAweDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgKGludCktMHgxLjgwcDEsCisgICAgMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIChpbnQpLTB4MS5wMSwKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgKGludCktMHgxLnAxLAorICAgIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAoaW50KS0weDEucDEsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgKGludCktMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAoaW50KS0weDEuMmFwNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgKGludCktMHgxLmZmZmZmZmZjcDMwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIChpbnQpLTB4MS4yYXA3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgKGludCkwLjAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgKGludCkwLjAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgKGludCkweDEucDAsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgKGludCkweDEucDAsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgKGludCkweDEucDAsCisgICAgMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgKGludCkweDEucDEsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgKGludCkweDEucDEsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgKGludCkweDEucDEsCisgICAgMHgxLmZmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgKGludCkweDEuODBwMSwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAoaW50KTB4MS44MHAxLAorICAgIDB4MS4wMDAwMDJwMworICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIChpbnQpMHgxLjgwcDEsCisgICAgMHgxLmZmZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgKGludCkweDEucDIsCisgICAgMHgxLnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgKGludCkweDEucDIsCisgICAgMHgxLjAwMDAwMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgKGludCkweDEucDIsCisgICAgMHgxLmZmZmZmZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgKGludCkweDEuNDBwMiwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAoaW50KTB4MS40MHAyLAorICAgIDB4MS4wMDAwMDJwNQorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIChpbnQpMHgxLjQwcDIsCisgICAgMHgxLmZmZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgKGludCkweDEuODBwMiwKKyAgICAweDEucDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAoaW50KTB4MS44MHAyLAorICAgIDB4MS4wMDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIChpbnQpMHgxLjgwcDIsCisgICAgMHgxLmZmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgKGludCkweDEuYzBwMiwKKyAgICAweDEucDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAoaW50KTB4MS5jMHAyLAorICAgIDB4MS4wMDAwMDJwNworICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIChpbnQpMHgxLmZmZmZmZmZjcDMwLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIChpbnQpMHgxLmZmZmZmZmZjcDMwLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAoaW50KS0weDEuZmZmZmZmZmNwMzAsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIChpbnQpLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIChpbnQpMHgxLmZjcDYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAoaW50KTB4MS5mY3A2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIChpbnQpMHgxLmZjcDYsCisgICAgMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAoaW50KTB4MS5mY3A2LAorICAgIC0weDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIChpbnQpMHgxLnAwLAorICAgIC0weDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAoaW50KTAuMCwKKyAgICAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgKGludCkwLjAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgKGludCkwLjAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIChpbnQpMC4wLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIChpbnQpMC4wLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIChpbnQpLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgKGludCktMHgxLmY4cDYsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgKGludCktMHgxLmY4cDYsCisgICAgLTB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIChpbnQpLTB4MS5mOHA2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIChpbnQpLTB4MS5mOHA2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAoaW50KS0weDEuZmNwNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAoaW50KS0weDEuZmNwNiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgKGludCktMHgxLmZjcDYsCisgICAgMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgKGludCktMHgxLmZjcDYsCisgICAgLTB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIChpbnQpLTB4MS4yOHA3LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIChpbnQpLTB4MS4yOHA3LAorICAgIC0weDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAoaW50KS0weDEuMmFwNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAoaW50KS0weDEuMmFwNywKKyAgICAtMHgxLnAtMTQ5CisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvbGRleHBfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2xkZXhwX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZDRhZDFhCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2xkZXhwX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDQzNDggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzJfdDxkb3VibGUsIGRvdWJsZSwgaW50PiBnX2xkZXhwX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgLTB4MS41NTU1NTU1NTU1NTU2MHAtMTAyNCwKKyAgICAtMHgxLjU1NTU1NTU1NTU1NTZwLTIsCisgICAgKGludCktMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAtMHgxLjZkYjZkYjZkYjZkYjcwcC0xMDIzLAorICAgIC0weDEuNmRiNmRiNmRiNmRiN3AtMSwKKyAgICAoaW50KS0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIC0weDEuOGUzOGUzOGUzOGUzOTBwLTEwMjMsCisgICAgLTB4MS44ZTM4ZTM4ZTM4ZTM5cC0xLAorICAgIChpbnQpLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KS00NworICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEucC0xMDY0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLnAtNTEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS4yOWU0MTI5ZTQxMjllMHAtMTAyNCwKKyAgICAweDEuMjllNDEyOWU0MTI5ZXAtNywKKyAgICAoaW50KS0xMDE3CisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuOGUxNDdhZTE0N2FlMXAwLAorICAgIChpbnQpMjE0NzQ4MzY0NworICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMC4wLAorICAgIDB4MS5kZGRkZGRkZGRkZGRkcC0yLAorICAgIChpbnQpLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5lMHAtNDgsCisgICAgMHgxLmVwLTEwNzEsCisgICAgKGludCkxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAwLjAsCisgICAgMHgxLmY3ZGY3ZGY3ZGY3ZGZwLTIsCisgICAgKGludCktMTA3MworICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmYwcC0yLAorICAgIChpbnQpLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAzMywKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMywKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDcwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpLTQ3CisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIChpbnQpMjE0NzQ4MzY0NworICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KTIxNDc0ODM2NDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIC0weDEucC0xMCwKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS5wLTksCisgICAgLTB4MS4wcDAsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgLTB4MS5wLTgsCisgICAgLTB4MS4wcDAsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgLTB4MS5wLTcsCisgICAgLTB4MS4wcDAsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgLTB4MS5wLTYsCisgICAgLTB4MS4wcDAsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgLTB4MS5wLTUsCisgICAgLTB4MS4wcDAsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgLTB4MS5wLTQsCisgICAgLTB4MS4wcDAsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgLTB4MS5wLTMsCisgICAgLTB4MS4wcDAsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgLTB4MS5wLTIsCisgICAgLTB4MS4wcDAsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgLTB4MS5wLTEsCisgICAgLTB4MS4wcDAsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIC0weDEucDEsCisgICAgLTB4MS4wcDAsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAtMHgxLnAyLAorICAgIC0weDEuMHAwLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgLTB4MS5wMywKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIC0weDEucDQsCisgICAgLTB4MS4wcDAsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAtMHgxLnA1LAorICAgIC0weDEuMHAwLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgLTB4MS5wNiwKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIC0weDEucDcsCisgICAgLTB4MS4wcDAsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAtMHgxLnA4LAorICAgIC0weDEuMHAwLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgLTB4MS5wOSwKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIC0weDEucDEwLAorICAgIC0weDEuMHAwLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTExLAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtMTAsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTksCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTgsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTcsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTYsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTUsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTQsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTMsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTIsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTEsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAwLAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwMSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcDIsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAzLAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwNCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcDUsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHA2LAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwNywKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcDgsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHA5LAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC0xMSwKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTEwLAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC05LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC04LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC03LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC02LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC01LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC00LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC0zLAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC0yLAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC0xLAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwMCwKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcDEsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHAyLAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwMywKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcDQsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHA1LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwNiwKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcDcsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHA4LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwOSwKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtMTEsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC0xMCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtOSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtOCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtNywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtNiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtNSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtNCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtMywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtMiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcDAsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAxLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIC0weDEuNzQ1ZDE3NDVkMTc0NTBwMiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcDMsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHA0LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcDUsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NTBwNiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHA3LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcDgsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NTBwOSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwLTExLAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwLTEwLAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAtOSwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwLTgsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcC03LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAtNiwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwLTUsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcC00LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAtMywKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwLTIsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcC0xLAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcDAsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwMSwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAyLAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcDMsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwNCwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHA1LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcDYsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwNywKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHA4LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcDksCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcC0xMSwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcC0xMCwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwLTksCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcC04LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAtNywKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwLTYsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcC01LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAtNCwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwLTMsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcC0yLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAtMSwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAwLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcDEsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwMiwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAzLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcDQsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwNSwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHA2LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcDcsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwOCwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHA5LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHAtMTIsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHAtMTEsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcC0xMCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTksCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcC04LAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHAtNywKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTYsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcC01LAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHAtNCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTMsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcC0yLAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcC0xLAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcDAsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwMSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHAyLAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcDMsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwNCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHA1LAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcDYsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwNywKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHA4LAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHAtMTIsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHAtMTEsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcC0xMCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTksCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcC04LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHAtNywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTYsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcC01LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHAtNCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTMsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcC0yLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcC0xLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcDAsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHAyLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcDMsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwNCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHA1LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcDYsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwNywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHA4LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwLTEyLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC0xMSwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzBwLTIsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC0xMCwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzBwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC05LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwLTgsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3AtNywKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzBwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC02LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwLTUsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3AtNCwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzBwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC0zLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwLTIsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC0xLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3AwLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3AxLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3AyLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3AzLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3A0LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3A1LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3A2LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3A3LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3A4LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAtMTMsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAtMTIsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcC0xMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTEwLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAtOSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTgsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcC03LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAtNiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTUsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcC00LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAtMywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAtMiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAtMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAwLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcDEsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwMiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAzLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcDQsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwNSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHA2LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcDcsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC0xNCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC0xMywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwLTEyLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtMTEsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC0xMCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwLTksCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC04LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtNywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwLTYsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC01LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtNCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtMywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtMiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAwLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcDEsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwMiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAzLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcDQsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwNSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHA2LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLjIwcC02MiwKKyAgICAweDEuMnAtNTIsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEuMjBwLTYxLAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjIwcC02MCwKKyAgICAweDEuMnAtNTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS4yMHAtNTksCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuMjBwLTU4LAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjIwcC01NywKKyAgICAweDEuMnAtNTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS4yMHAtNTYsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuMjBwLTU1LAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLjIwcC01NCwKKyAgICAweDEuMnAtNTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS4yMHAtNTMsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuMjBwLTUyLAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEuMjBwLTUxLAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuMjBwLTUwLAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuMjBwLTQ5LAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuMjBwLTQ4LAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuMjBwLTQ3LAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuMjBwLTQ2LAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEuMjBwLTQ1LAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuMjBwLTQ0LAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEuMjBwLTQzLAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEuMjBwLTQyLAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC0xNCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS43NDVkMTc0NWQxNzU4MHAtMTMsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS43NDVkMTc0NWQxNzU4MHAtMTIsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS43NDVkMTc0NWQxNzU4MHAtMTEsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIDB4MS43NDVkMTc0NWQxNzU4MHAtMTAsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIDB4MS43NDVkMTc0NWQxNzU4MHAtOSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC04LAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwLTcsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS43NDVkMTc0NWQxNzU4MHAtNiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC01LAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwLTQsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC0zLAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIDB4MS43NDVkMTc0NWQxNzU4MHAtMiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwLTEsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcDAsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcDEsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcDIsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcDMsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcDQsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcDUsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcDYsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS43NDVkMTc0NWQxNzRmMHAtMTMsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwLTEyLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwLTExLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwLTEwLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwLTksCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS43NDVkMTc0NWQxNzRmMHAtOCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC03LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwLTYsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIDB4MS43NDVkMTc0NWQxNzRmMHAtNSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC00LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwLTMsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC0yLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDB4MS43NDVkMTc0NWQxNzRmMHAtMSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwMCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwMSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwMiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwMywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwNCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwNSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwNiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwNywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcC0xMiwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtMTEsCisgICAgMHgxLjE3NDVkMTc0NWQxNzlwLTIsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtMTAsCisgICAgMHgxLjE3NDVkMTc0NWQxNzlwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtOSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcC04LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwLTcsCisgICAgMHgxLjE3NDVkMTc0NWQxNzlwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtNiwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcC01LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwLTQsCisgICAgMHgxLjE3NDVkMTc0NWQxNzlwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtMywKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcC0yLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtMSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwMCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwMSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwMiwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwMywKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwNCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwNSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwNiwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwNywKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwOCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcC0xMiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtMTEsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGFwLTIsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDMzOAorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtMTAsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGFwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtOSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcC04LAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwLTcsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGFwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtNiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMzQzCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcC01LAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwLTQsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGFwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtMywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcC0yLAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtMSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDgKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwMCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwMSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwMiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwMywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTIKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwNCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwNSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwNiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwNywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwOCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcC0xMiwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtMTEsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWNwLTIsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtMTAsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWNwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtOSwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMzYxCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcC04LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwLTcsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWNwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDM2MworICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtNiwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMzY0CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcC01LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwLTQsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWNwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtMywKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcC0yLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtMSwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwMCwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzAKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwMSwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwMiwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwMywKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzMKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwNCwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwNSwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzUKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwNiwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzYKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwNywKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwOCwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzc4CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC0xMSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDM3OQorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3MHAtMTAsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDM4MAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3MHAtOSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC04LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODIKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwLTcsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIDB4MS4xNzQ1ZDE3NDVkMTc3MHAtNiwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC01LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwLTQsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDM4NgorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3MHAtMywKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC0yLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODgKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwLTEsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMzg5CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcDAsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMzkwCisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcDEsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMzkxCisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcDIsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcDMsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgMzkzCisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcDQsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMzk0CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcDUsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMzk1CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcDYsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcDcsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMzk3CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcDgsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcDksCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTExLAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtMTAsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTksCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTgsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTcsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTYsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTUsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTQsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTMsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTIsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDQwOQorICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTEsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgNDEwCisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAwLAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIDB4MS40NWQxNzQ1ZDE3NDZwMSwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTIKKyAgICAweDEuNDVkMTc0NWQxNzQ2cDIsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgNDEzCisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAzLAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIDB4MS40NWQxNzQ1ZDE3NDZwNCwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTUKKyAgICAweDEuNDVkMTc0NWQxNzQ2cDUsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgNDE2CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnA2LAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDQxNworICAgIDB4MS40NWQxNzQ1ZDE3NDZwNywKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTgKKyAgICAweDEuNDVkMTc0NWQxNzQ2cDgsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgNDE5CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnA5LAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjAKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTExLAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDkwcC0xMCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgNDIyCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDkwcC05LAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTgsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDQyNAorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHAtNywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgMHgxLjc0NWQxNzQ1ZDE3NDkwcC02LAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjYKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTUsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIDB4MS43NDVkMTc0NWQxNzQ5MHAtNCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgNDI4CisgICAgMHgxLjc0NWQxNzQ1ZDE3NDkwcC0zLAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTIsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHAtMSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwMCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzIKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwMSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzMKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwMiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzQKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwMywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwNCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzYKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwNSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwNiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzgKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwNywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzkKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwOCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwOSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC0xMSwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIDB4MS5hMmU4YmEyZThiYTMyMHAtMTAsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDQ0MworICAgIDB4MS5hMmU4YmEyZThiYTMyMHAtOSwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC04LAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDUKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwLTcsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIDB4MS5hMmU4YmEyZThiYTMyMHAtNiwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC01LAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDgKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwLTQsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIDB4MS5hMmU4YmEyZThiYTMyMHAtMywKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC0yLAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTEKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwLTEsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgMHgxLmEyZThiYTJlOGJhMzIwcDAsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgMHgxLmEyZThiYTJlOGJhMzIwcDEsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcDIsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcDMsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNDU2CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcDQsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgNDU3CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcDUsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcDYsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcDcsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgMHgxLmEyZThiYTJlOGJhMzIwcDgsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgMHgxLmEyZThiYTJlOGJhMzIwcDksCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDQ2MgorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtMTEsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICAweDEuZDE3NDVkMTc0NWQxYjBwLTEwLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjQKKyAgICAweDEuZDE3NDVkMTc0NWQxYjBwLTksCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDQ2NQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtOCwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcC03LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjcKKyAgICAweDEuZDE3NDVkMTc0NWQxYjBwLTYsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtNSwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgNDY5CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcC00LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzAKKyAgICAweDEuZDE3NDVkMTc0NWQxYjBwLTMsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDQ3MQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtMiwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcC0xLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAwLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAxLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDQ3NQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAyLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDQ3NgorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAzLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDQ3NworICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHA0LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDQ3OAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHA1LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDQ3OQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHA2LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDQ4MAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHA3LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHA4LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDQ4MgorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHA5LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODMKKyAgICAweDEucC0xMCwKKyAgICAweDEuMHAwLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDg0CisgICAgMHgxLnAtOSwKKyAgICAweDEuMHAwLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAweDEucC04LAorICAgIDB4MS4wcDAsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIDB4MS5wLTcsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgMHgxLnAtNiwKKyAgICAweDEuMHAwLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAweDEucC01LAorICAgIDB4MS4wcDAsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIDB4MS5wLTQsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgMHgxLnAtMywKKyAgICAweDEuMHAwLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAweDEucC0yLAorICAgIDB4MS4wcDAsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDQ5MgorICAgIDB4MS5wLTEsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgNDkzCisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgMHgxLnAxLAorICAgIDB4MS4wcDAsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNDk1CisgICAgMHgxLnAyLAorICAgIDB4MS4wcDAsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgMHgxLnAzLAorICAgIDB4MS4wcDAsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgMHgxLnA0LAorICAgIDB4MS4wcDAsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNDk4CisgICAgMHgxLnA1LAorICAgIDB4MS4wcDAsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgNDk5CisgICAgMHgxLnA2LAorICAgIDB4MS4wcDAsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgNTAwCisgICAgMHgxLnA3LAorICAgIDB4MS4wcDAsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNTAxCisgICAgMHgxLnA4LAorICAgIDB4MS4wcDAsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgMHgxLnA5LAorICAgIDB4MS4wcDAsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgNTAzCisgICAgMHgxLnAxMCwKKyAgICAweDEuMHAwLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIChpbnQpLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIChpbnQpLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS0xMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNTA3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDI0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCktOTk5CisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDUwOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDE0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDUxMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDE1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDUxMQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDE2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDUxMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDE3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDUxMworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDE4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDUxNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDE5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDUxNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDUxNworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDUxOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgNTE5CisgICAgMHgxLnAtNTEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgMHgxLnAtNTIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTIxCisgICAgMHgxLnAtNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNTIyCisgICAgMHgxLnAtNzUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk5OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjMKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDUyNAorICAgIDB4MS5wLTEwNzMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNTI1CisgICAgMHgxLnAtMTA3MiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjYKKyAgICAweDEucC0xMDcxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIDB4MS5wLTEwNzAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgMHgxLnAtMTA2OSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjkKKyAgICAweDEucC0xMDY4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDUzMAorICAgIDB4MS5wLTEwNjcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNTMxCisgICAgMHgxLnAtMTA2NiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzIKKyAgICAweDEucC0xMDY1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIDB4MS5wLTEwNjQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDUzNAorICAgIDB4MS5wLTEwMjUsCisgICAgMHgxLjBwLTIsCisgICAgKGludCktMTAyMworICB9LAorICB7IC8vIEVudHJ5IDUzNQorICAgIDB4MS5wLTEwMjQsCisgICAgMHgxLjBwLTIsCisgICAgKGludCktMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDUzNgorICAgIDB4MS5wLTEwMjQsCisgICAgMHgxLjBwLTEsCisgICAgKGludCktMTAyMworICB9LAorICB7IC8vIEVudHJ5IDUzNworICAgIDB4MS5wLTEwMjMsCisgICAgMHgxLjBwLTEsCisgICAgKGludCktMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDUzOAorICAgIDB4MS44MHAtMTAyNCwKKyAgICAweDEuOHAtMSwKKyAgICAoaW50KS0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTM5CisgICAgMHgxLjgwcC0xMDIzLAorICAgIDB4MS44cC0xLAorICAgIChpbnQpLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDAKKyAgICAwLjAsCisgICAgMHgxLjBwLTIsCisgICAgKGludCktMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDU0MQorICAgIDAuMCwKKyAgICAweDEuMHAtMiwKKyAgICAoaW50KS0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNTQyCisgICAgMC4wLAorICAgIDB4MS4wcC0xLAorICAgIChpbnQpLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xLAorICAgIChpbnQpLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDQKKyAgICAwLjAsCisgICAgMHgxLjhwLTEsCisgICAgKGludCktMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDU0NQorICAgIDB4MS44MHAtMTA3NCwKKyAgICAweDEuOHAtMSwKKyAgICAoaW50KS0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgMHgxLnAxMDIzLAorICAgIDB4MS4wcDAsCisgICAgKGludCkxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTQ3CisgICAgMHgxLnAxMDIyLAorICAgIDB4MS4wcDAsCisgICAgKGludCkxMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTQ4CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDkKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIDB4MS5wLTEwNzIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgNTUxCisgICAgMHgxLnAtMTA3MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTIKKyAgICAweDEucC0xMDcwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDU1MworICAgIDB4MS5wLTEwNjksCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgNTU0CisgICAgMHgxLnAtMTA2OCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTUKKyAgICAweDEucC0xMDY3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIDB4MS5wLTEwNjYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgMHgxLnAtMTA2NSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTgKKyAgICAweDEucC0xMDY0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTkKKyAgICAweDEucC0xMDYzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjAKKyAgICAweDEucC0xMDYyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjEKKyAgICAweDEucC0xMDYxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjIKKyAgICAweDEucC0xMDYwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjMKKyAgICAweDEucC0xMDU5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjQKKyAgICAweDEucC0xMDU4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjUKKyAgICAweDEucC0xMDU3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjYKKyAgICAweDEucC0xMDU2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICAweDEucC0xMDU1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjgKKyAgICAweDEucC0xMDU0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjkKKyAgICAweDEucC0xMDUzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzAKKyAgICAweDEucC0xMDUyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzEKKyAgICAweDEucC0xMDUxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzIKKyAgICAweDEucC0xMDUwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzMKKyAgICAweDEucC0xMDQ5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzQKKyAgICAweDEucC0xMDQ4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzUKKyAgICAweDEucC0xMDQ3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzYKKyAgICAweDEucC0xMDQ2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzcKKyAgICAweDEucC0xMDQ1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzgKKyAgICAweDEucC0xMDQ0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzkKKyAgICAweDEucC0xMDQzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODAKKyAgICAweDEucC0xMDQyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODEKKyAgICAweDEucC0xMDQxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODIKKyAgICAweDEucC0xMDQwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODMKKyAgICAweDEucC0xMDM5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMzUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODQKKyAgICAweDEucC0xMDM4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMzYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODUKKyAgICAweDEucC0xMDM3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMzcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODYKKyAgICAweDEucC0xMDM2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMzgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODcKKyAgICAweDEucC0xMDM1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMzkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODgKKyAgICAweDEucC0xMDM0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODkKKyAgICAweDEucC0xMDMzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTAKKyAgICAweDEucC0xMDMyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTEKKyAgICAweDEucC0xMDMxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTIKKyAgICAweDEucC0xMDMwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTMKKyAgICAweDEucC0xMDI5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTQKKyAgICAweDEucC0xMDI4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTUKKyAgICAweDEucC0xMDI3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTYKKyAgICAweDEucC0xMDI2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAweDEucC0xMDI1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTgKKyAgICAweDEucC0xMDI0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTkKKyAgICAweDEucC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDAKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDEKKyAgICAweDEucC0xMDIxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDIKKyAgICAweDEucC0xMDIwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAweDEucC0xMDE5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDQKKyAgICAweDEucC0xMDE4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDUKKyAgICAweDEucC0xMDE3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDYKKyAgICAweDEucC0xMDE2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDcKKyAgICAweDEucC0xMDE1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDgKKyAgICAweDEucC0xMDE0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDkKKyAgICAweDEucC0xMDEzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTAKKyAgICAweDEucC0xMDEyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTEKKyAgICAweDEucC0xMDExLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTIKKyAgICAweDEucC0xMDEwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTMKKyAgICAweDEucC0xMDA5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTQKKyAgICAweDEucC0xMDA4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAweDEucC0xMDA3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTYKKyAgICAweDEucC0xMDA2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTcKKyAgICAweDEucC0xMDA1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTgKKyAgICAweDEucC0xMDA0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTkKKyAgICAweDEucC0xMDAzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjAKKyAgICAweDEucC0xMDAyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICAweDEucC0xMDAxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjIKKyAgICAweDEucC0xMDAwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjMKKyAgICAweDEucC05OTksCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk3NQorICB9LAorICB7IC8vIEVudHJ5IDYyNAorICAgIDB4MS5wLTk5OCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTc2CisgIH0sCisgIHsgLy8gRW50cnkgNjI1CisgICAgMHgxLnAtOTk3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNzcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjYKKyAgICAweDEucC05OTYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk3OAorICB9LAorICB7IC8vIEVudHJ5IDYyNworICAgIDB4MS5wLTk5NSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTc5CisgIH0sCisgIHsgLy8gRW50cnkgNjI4CisgICAgMHgxLnAtOTk0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpODAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjkKKyAgICAweDEucC05OTMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk4MQorICB9LAorICB7IC8vIEVudHJ5IDYzMAorICAgIDB4MS5wLTk5MiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTgyCisgIH0sCisgIHsgLy8gRW50cnkgNjMxCisgICAgMHgxLnAtOTkxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpODMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzIKKyAgICAweDEucC05OTAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk4NAorICB9LAorICB7IC8vIEVudHJ5IDYzMworICAgIDB4MS5wLTk4OSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTg1CisgIH0sCisgIHsgLy8gRW50cnkgNjM0CisgICAgMHgxLnAtOTg4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpODYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzUKKyAgICAweDEucC05ODcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk4NworICB9LAorICB7IC8vIEVudHJ5IDYzNgorICAgIDB4MS5wLTk4NiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTg4CisgIH0sCisgIHsgLy8gRW50cnkgNjM3CisgICAgMHgxLnAtOTg1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpODkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzgKKyAgICAweDEucC05ODQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk5MAorICB9LAorICB7IC8vIEVudHJ5IDYzOQorICAgIDB4MS5wLTk4MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTkxCisgIH0sCisgIHsgLy8gRW50cnkgNjQwCisgICAgMHgxLnAtOTgyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpOTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDEKKyAgICAweDEucC05ODEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk5MworICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIDB4MS5wLTk4MCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTk0CisgIH0sCisgIHsgLy8gRW50cnkgNjQzCisgICAgMHgxLnAtOTc5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpOTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDQKKyAgICAweDEucC05NzgsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk5NgorICB9LAorICB7IC8vIEVudHJ5IDY0NQorICAgIDB4MS5wLTk3NywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTk3CisgIH0sCisgIHsgLy8gRW50cnkgNjQ2CisgICAgMHgxLnAtOTc2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpOTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDcKKyAgICAweDEucC05NzUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk5OQorICB9LAorICB7IC8vIEVudHJ5IDY0OAorICAgIDB4MS5wLTk3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwMAorICB9LAorICB7IC8vIEVudHJ5IDY0OQorICAgIDB4MS5wLTk3MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwMQorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIDB4MS5wLTk3MiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwMgorICB9LAorICB7IC8vIEVudHJ5IDY1MQorICAgIDB4MS5wLTk3MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwMworICB9LAorICB7IC8vIEVudHJ5IDY1MgorICAgIDB4MS5wLTk3MCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwNAorICB9LAorICB7IC8vIEVudHJ5IDY1MworICAgIDB4MS5wLTk2OSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwNQorICB9LAorICB7IC8vIEVudHJ5IDY1NAorICAgIDB4MS5wLTk2OCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwNgorICB9LAorICB7IC8vIEVudHJ5IDY1NQorICAgIDB4MS5wLTk2NywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwNworICB9LAorICB7IC8vIEVudHJ5IDY1NgorICAgIDB4MS5wLTk2NiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwOAorICB9LAorICB7IC8vIEVudHJ5IDY1NworICAgIDB4MS5wLTk2NSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwOQorICB9LAorICB7IC8vIEVudHJ5IDY1OAorICAgIDB4MS5wLTk2NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTExMAorICB9LAorICB7IC8vIEVudHJ5IDY1OQorICAgIDB4MS5wLTk2MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTExMQorICB9LAorICB7IC8vIEVudHJ5IDY2MAorICAgIDB4MS5wLTk2MiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTExMgorICB9LAorICB7IC8vIEVudHJ5IDY2MQorICAgIDB4MS5wLTk2MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTExMworICB9LAorICB7IC8vIEVudHJ5IDY2MgorICAgIDB4MS5wLTk2MCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTExNAorICB9LAorICB7IC8vIEVudHJ5IDY2MworICAgIDB4MS5wLTk1OSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTExNQorICB9LAorICB7IC8vIEVudHJ5IDY2NAorICAgIDB4MS5wLTk1OCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTExNgorICB9LAorICB7IC8vIEVudHJ5IDY2NQorICAgIDB4MS5wLTk1NywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTExNworICB9LAorICB7IC8vIEVudHJ5IDY2NgorICAgIDB4MS5wLTk1NiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTExOAorICB9LAorICB7IC8vIEVudHJ5IDY2NworICAgIDB4MS5wLTk1NSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTExOQorICB9LAorICB7IC8vIEVudHJ5IDY2OAorICAgIDB4MS5wLTk1NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEyMAorICB9LAorICB7IC8vIEVudHJ5IDY2OQorICAgIDB4MS5wLTk1MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEyMQorICB9LAorICB7IC8vIEVudHJ5IDY3MAorICAgIDB4MS5wLTk1MiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEyMgorICB9LAorICB7IC8vIEVudHJ5IDY3MQorICAgIDB4MS5wLTk1MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEyMworICB9LAorICB7IC8vIEVudHJ5IDY3MgorICAgIDB4MS5wLTk1MCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEyNAorICB9LAorICB7IC8vIEVudHJ5IDY3MworICAgIDB4MS5wLTk0OSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEyNQorICB9LAorICB7IC8vIEVudHJ5IDY3NAorICAgIDB4MS5wLTk0OCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEyNgorICB9LAorICB7IC8vIEVudHJ5IDY3NQorICAgIDB4MS5wLTk0NywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEyNworICB9LAorICB7IC8vIEVudHJ5IDY3NgorICAgIDB4MS5wLTk0NiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEyOAorICB9LAorICB7IC8vIEVudHJ5IDY3NworICAgIDB4MS5wLTk0NSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEyOQorICB9LAorICB7IC8vIEVudHJ5IDY3OAorICAgIDB4MS5wLTk0NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEzMAorICB9LAorICB7IC8vIEVudHJ5IDY3OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNjgxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDY4MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNjg0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDE4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDY4NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAxNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNjg3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDE1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDY4OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAxNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDY5MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAxMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTExCisgIH0sCisgIHsgLy8gRW50cnkgNjkxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDExLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMworICB9LAorICB7IC8vIEVudHJ5IDY5MworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTE0CisgIH0sCisgIHsgLy8gRW50cnkgNjk0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDA4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMDcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxNgorICB9LAorICB7IC8vIEVudHJ5IDY5NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAwNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTE3CisgIH0sCisgIHsgLy8gRW50cnkgNjk3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMDQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxOQorICB9LAorICB7IC8vIEVudHJ5IDY5OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTIwCisgIH0sCisgIHsgLy8gRW50cnkgNzAwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkyMgorICB9LAorICB7IC8vIEVudHJ5IDcwMgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTIzCisgIH0sCisgIHsgLy8gRW50cnkgNzAzCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05OTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkyNAorICB9LAorICB7IC8vIEVudHJ5IDcwNAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTk4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk5NywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTI2CisgIH0sCisgIHsgLy8gRW50cnkgNzA2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05OTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkyNworICB9LAorICB7IC8vIEVudHJ5IDcwNworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTk1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk5NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTI5CisgIH0sCisgIHsgLy8gRW50cnkgNzA5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05OTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkzMAorICB9LAorICB7IC8vIEVudHJ5IDcxMAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTkyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk5MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTMyCisgIH0sCisgIHsgLy8gRW50cnkgNzEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05OTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkzMworICB9LAorICB7IC8vIEVudHJ5IDcxMworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTg5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk4OCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTM1CisgIH0sCisgIHsgLy8gRW50cnkgNzE1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05ODcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkzNgorICB9LAorICB7IC8vIEVudHJ5IDcxNgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTg2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMzcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk4NSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTM4CisgIH0sCisgIHsgLy8gRW50cnkgNzE4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05ODQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkzOQorICB9LAorICB7IC8vIEVudHJ5IDcxOQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTgzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk4MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTQxCisgIH0sCisgIHsgLy8gRW50cnkgNzIxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05ODEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk0MgorICB9LAorICB7IC8vIEVudHJ5IDcyMgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTgwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk3OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTQ0CisgIH0sCisgIHsgLy8gRW50cnkgNzI0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NzgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk0NQorICB9LAorICB7IC8vIEVudHJ5IDcyNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTc3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk3NiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTQ3CisgIH0sCisgIHsgLy8gRW50cnkgNzI3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NzUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk0OAorICB9LAorICB7IC8vIEVudHJ5IDcyOAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk3MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTUwCisgIH0sCisgIHsgLy8gRW50cnkgNzMwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NzIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk1MQorICB9LAorICB7IC8vIEVudHJ5IDczMQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTcxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk3MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTUzCisgIH0sCisgIHsgLy8gRW50cnkgNzMzCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NjksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk1NAorICB9LAorICB7IC8vIEVudHJ5IDczNAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTY4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk2NywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTU2CisgIH0sCisgIHsgLy8gRW50cnkgNzM2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NjYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk1NworICB9LAorICB7IC8vIEVudHJ5IDczNworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTY1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk2NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTU5CisgIH0sCisgIHsgLy8gRW50cnkgNzM5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk2MAorICB9LAorICB7IC8vIEVudHJ5IDc0MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTYyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk2MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTYyCisgIH0sCisgIHsgLy8gRW50cnkgNzQyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk2MworICB9LAorICB7IC8vIEVudHJ5IDc0MworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTU5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk1OCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTY1CisgIH0sCisgIHsgLy8gRW50cnkgNzQ1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk2NgorICB9LAorICB7IC8vIEVudHJ5IDc0NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTU2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk1NSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTY4CisgIH0sCisgIHsgLy8gRW50cnkgNzQ4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk2OQorICB9LAorICB7IC8vIEVudHJ5IDc0OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTcxCisgIH0sCisgIHsgLy8gRW50cnkgNzUxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk3MgorICB9LAorICB7IC8vIEVudHJ5IDc1MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTUwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk0OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTc0CisgIH0sCisgIHsgLy8gRW50cnkgNzU0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk3NQorICB9LAorICB7IC8vIEVudHJ5IDc1NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTQ3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNzYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk0NiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTc3CisgIH0sCisgIHsgLy8gRW50cnkgNzU3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NDUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk3OAorICB9LAorICB7IC8vIEVudHJ5IDc1OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTQ0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNzkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk0MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTgwCisgIH0sCisgIHsgLy8gRW50cnkgNzYwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk4MQorICB9LAorICB7IC8vIEVudHJ5IDc2MQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTQxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpODIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk0MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTgzCisgIH0sCisgIHsgLy8gRW50cnkgNzYzCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MzksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk4NAorICB9LAorICB7IC8vIEVudHJ5IDc2NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTM4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpODUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkzNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTg2CisgIH0sCisgIHsgLy8gRW50cnkgNzY2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MzYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk4NworICB9LAorICB7IC8vIEVudHJ5IDc2NworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTM1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpODgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkzNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTg5CisgIH0sCisgIHsgLy8gRW50cnkgNzY5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MzMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk5MAorICB9LAorICB7IC8vIEVudHJ5IDc3MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTMyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpOTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkzMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTkyCisgIH0sCisgIHsgLy8gRW50cnkgNzcyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MzAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk5MworICB9LAorICB7IC8vIEVudHJ5IDc3MworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTI5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpOTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkyOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTk1CisgIH0sCisgIHsgLy8gRW50cnkgNzc1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MjcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk5NgorICB9LAorICB7IC8vIEVudHJ5IDc3NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTI2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpOTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkyNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTk4CisgIH0sCisgIHsgLy8gRW50cnkgNzc4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk5OQorICB9LAorICB7IC8vIEVudHJ5IDc3OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNzgwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkyMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEwMgorICB9LAorICB7IC8vIEVudHJ5IDc4MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTIwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNzgzCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkxOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEwNQorICB9LAorICB7IC8vIEVudHJ5IDc4NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTE3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTA2CisgIH0sCisgIHsgLy8gRW50cnkgNzg2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkxNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEwOAorICB9LAorICB7IC8vIEVudHJ5IDc4OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTE0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTA5CisgIH0sCisgIHsgLy8gRW50cnkgNzg5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkxMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTExMQorICB9LAorICB7IC8vIEVudHJ5IDc5MQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTExLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTEyCisgIH0sCisgIHsgLy8gRW50cnkgNzkyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTExNAorICB9LAorICB7IC8vIEVudHJ5IDc5NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTA4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTE1CisgIH0sCisgIHsgLy8gRW50cnkgNzk1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MDcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkwNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTExNworICB9LAorICB7IC8vIEVudHJ5IDc5NworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTE4CisgIH0sCisgIHsgLy8gRW50cnkgNzk4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MDQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEyMAorICB9LAorICB7IC8vIEVudHJ5IDgwMAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTIxCisgIH0sCisgIHsgLy8gRW50cnkgODAxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEyMworICB9LAorICB7IC8vIEVudHJ5IDgwMworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtODk5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTI0CisgIH0sCisgIHsgLy8gRW50cnkgODA0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC04OTgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTg5NywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEyNgorICB9LAorICB7IC8vIEVudHJ5IDgwNgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtODk2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODA3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC04OTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTg5NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEyOQorICB9LAorICB7IC8vIEVudHJ5IDgwOQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtODkzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTMwCisgIH0sCisgIHsgLy8gRW50cnkgODEwCisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDgxMQorICAgIDB4MS5wLTEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxMDczCisgIH0sCisgIHsgLy8gRW50cnkgODEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDgxMworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTQKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTUKKyAgICAweDEucC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk3MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTUyCisgIH0sCisgIHsgLy8gRW50cnkgODE3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NzIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk1MQorICB9LAorICB7IC8vIEVudHJ5IDgxOAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODE5CisgICAgMHgxLnAtMTA3MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODIxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDgyMgorICAgIDAuMCwKKyAgICAwLjAsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODIzCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDgyNAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODI1CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDgyNgorICAgIDAuMCwKKyAgICAwLjAsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDgyNworICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODI4CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAoaW50KTEyNworICB9LAorICB7IC8vIEVudHJ5IDgyOQorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAoaW50KTEyNworICB9LAorICB7IC8vIEVudHJ5IDgzMAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgKGludCktMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODMxCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIChpbnQpLTEyNworICB9LAorICB7IC8vIEVudHJ5IDgzMgorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDgzMworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODM0CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODM2CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzcKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODM4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODM5CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDg0MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDEKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDg0MgorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDg0MworICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODQ0CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDg0NQorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDg0NgorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODQ3CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAoaW50KTEyNworICB9LAorICB7IC8vIEVudHJ5IDg0OAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIChpbnQpLTEyNworICB9LAorICB7IC8vIEVudHJ5IDg0OQorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgKGludCktMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODUwCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTEKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODUyCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDg1MworICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KTEyNworICB9LAorICB7IC8vIEVudHJ5IDg1NAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLAorICAgIChpbnQpNDAwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTUKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTQwMDAwCisgIH0sCisgIHsgLy8gRW50cnkgODU2CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAoaW50KTQwMDAwCisgIH0sCisgIHsgLy8gRW50cnkgODU3CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAoaW50KTQwMDAwCisgIH0sCisgIHsgLy8gRW50cnkgODU4CisgICAgMHgxLnAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODU5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDI0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjAKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDg2MQorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDI0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODYzCisgICAgLTB4MS5wLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS00MDAwMAorICB9LAorICB7IC8vIEVudHJ5IDg2NQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCktNDAwMDAKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9sZGV4cGZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2xkZXhwZl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjc0ZWQ5MwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9sZGV4cGZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsNDI4OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMl90PGZsb2F0LCBmbG9hdCwgaW50PiBnX2xkZXhwZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgLTB4MS41NTU1NTRwLTEyOCwKKyAgICAtMHgxLjU1NTU1NHAtMiwKKyAgICAoaW50KS0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS42ZGI2ZGNwLTEyOCwKKyAgICAtMHgxLjZkYjZkY3AtMSwKKyAgICAoaW50KS0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgLTB4MS44ZTM4ZTRwLTEyOCwKKyAgICAtMHgxLjhlMzhlNHAtMSwKKyAgICAoaW50KS0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuMjllNDEycC0xMjcsCisgICAgMHgxLjI5ZTQxMnAtNywKKyAgICAoaW50KS0xMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMC4wZiwKKyAgICAweDEuZGRkZGRlcC0yLAorICAgIChpbnQpLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmNjBwLTEyNywKKyAgICAoaW50KS0yMworICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmODRwLTEyNywKKyAgICAoaW50KS0yMworICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLmZmZmZmOHAtMTM3LAorICAgIDB4MS5mZmZmZjhwLTEyNywKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAoaW50KSgtMjE0NzQ4MzY0Ny0xKQorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpMjE0NzQ4MzY0NworICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgLTB4MS5wLTEwLAorICAgIC0weDEucDAsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIC0weDEucC05LAorICAgIC0weDEucDAsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgLTB4MS5wLTgsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAtMHgxLnAtNywKKyAgICAtMHgxLnAwLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIC0weDEucC02LAorICAgIC0weDEucDAsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgLTB4MS5wLTUsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAtMHgxLnAtNCwKKyAgICAtMHgxLnAwLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIC0weDEucC0zLAorICAgIC0weDEucDAsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgLTB4MS5wLTIsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAtMHgxLnAtMSwKKyAgICAtMHgxLnAwLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIC0weDEucDAsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIC0weDEucDEsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIC0weDEucDIsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIC0weDEucDMsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIC0weDEucDQsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIC0weDEucDUsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIC0weDEucDYsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEucDcsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIC0weDEucDgsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIC0weDEucDksCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIC0weDEucDEwLAorICAgIC0weDEucDAsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgLTB4MS5kMTc0NWNwLTExLAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAtMHgxLmQxNzQ1Y3AtMTAsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgLTB4MS5kMTc0NWNwLTksCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgLTB4MS5kMTc0NWNwLTgsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgLTB4MS5kMTc0NWNwLTcsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS5kMTc0NWNwLTYsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgLTB4MS5kMTc0NWNwLTUsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS5kMTc0NWNwLTQsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgLTB4MS5kMTc0NWNwLTMsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgLTB4MS5kMTc0NWNwLTIsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAtMHgxLmQxNzQ1Y3AwLAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTB4MS5kMTc0NWNwMSwKKyAgICAtMHgxLmQxNzQ1Y3AtMSwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0weDEuZDE3NDVjcDIsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMHgxLmQxNzQ1Y3AzLAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5kMTc0NWNwNCwKKyAgICAtMHgxLmQxNzQ1Y3AtMSwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEuZDE3NDVjcDUsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAtMHgxLmQxNzQ1Y3A2LAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgLTB4MS5kMTc0NWNwNywKKyAgICAtMHgxLmQxNzQ1Y3AtMSwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEuZDE3NDVjcDgsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAtMHgxLmQxNzQ1Y3A5LAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEuYTJlOGI4cC0xMSwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgLTB4MS5hMmU4YjhwLTEwLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEuYTJlOGI4cC05LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIC0weDEuYTJlOGI4cC04LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEuYTJlOGI4cC03LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEuYTJlOGI4cC02LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuYTJlOGI4cC01LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIC0weDEuYTJlOGI4cC00LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIC0weDEuYTJlOGI4cC0zLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEuYTJlOGI4cC0yLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS5hMmU4YjhwMCwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuYTJlOGI4cDEsCisgICAgLTB4MS5hMmU4YjhwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmEyZThiOHAyLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5hMmU4YjhwMywKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuYTJlOGI4cDQsCisgICAgLTB4MS5hMmU4YjhwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLmEyZThiOHA1LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgLTB4MS5hMmU4YjhwNiwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIC0weDEuYTJlOGI4cDcsCisgICAgLTB4MS5hMmU4YjhwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAtMHgxLmEyZThiOHA4LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5hMmU4YjhwOSwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLjc0NWQxNHAtMTEsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuNzQ1ZDE0cC0xMCwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAtMHgxLjc0NWQxNHAtOSwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLjc0NWQxNHAtOCwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAtMHgxLjc0NWQxNHAtNywKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLjc0NWQxNHAtNiwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLjc0NWQxNHAtNSwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLjc0NWQxNHAtNCwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAtMHgxLjc0NWQxNHAtMywKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLjc0NWQxNHAtMiwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuNzQ1ZDE0cDAsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLjc0NWQxNHAxLAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS43NDVkMTRwMiwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIC0weDEuNzQ1ZDE0cDMsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLjc0NWQxNHA0LAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgLTB4MS43NDVkMTRwNSwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIC0weDEuNzQ1ZDE0cDYsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAtMHgxLjc0NWQxNHA3LAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgLTB4MS43NDVkMTRwOCwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIC0weDEuNzQ1ZDE0cDksCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgLTB4MS40NWQxNzBwLTExLAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAtMHgxLjQ1ZDE3MHAtMTAsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLTB4MS40NWQxNzBwLTksCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIC0weDEuNDVkMTcwcC04LAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAtMHgxLjQ1ZDE3MHAtNywKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgLTB4MS40NWQxNzBwLTYsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuNDVkMTcwcC01LAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAtMHgxLjQ1ZDE3MHAtNCwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTB4MS40NWQxNzBwLTMsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIC0weDEuNDVkMTcwcC0yLAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMHgxLjQ1ZDE3MHAwLAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIC0weDEuNDVkMTcwcDEsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgLTB4MS40NWQxNzBwMiwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAtMHgxLjQ1ZDE3MHAzLAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIC0weDEuNDVkMTcwcDQsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgLTB4MS40NWQxNzBwNSwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAtMHgxLjQ1ZDE3MHA2LAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIC0weDEuNDVkMTcwcDcsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgLTB4MS40NWQxNzBwOCwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAtMHgxLjQ1ZDE3MHA5LAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAtMHgxLjE3NDVjY3AtMTEsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAtMHgxLjE3NDVjY3AtMTAsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIC0weDEuMTc0NWNjcC05LAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAtMHgxLjE3NDVjY3AtOCwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgLTB4MS4xNzQ1Y2NwLTcsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIC0weDEuMTc0NWNjcC02LAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAtMHgxLjE3NDVjY3AtNSwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgLTB4MS4xNzQ1Y2NwLTQsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIC0weDEuMTc0NWNjcC0zLAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAtMHgxLjE3NDVjY3AtMiwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgLTB4MS4xNzQ1Y2NwMCwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAtMHgxLjE3NDVjY3AxLAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0weDEuMTc0NWNjcDIsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgLTB4MS4xNzQ1Y2NwMywKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMHgxLjE3NDVjY3A0LAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIC0weDEuMTc0NWNjcDUsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS4xNzQ1Y2NwNiwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLjE3NDVjY3A3LAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEuMTc0NWNjcDgsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgLTB4MS4xNzQ1Y2NwOSwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTB4MS5kMTc0NTJwLTEyLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgLTB4MS5kMTc0NTJwLTExLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMHgxLmQxNzQ1MnAtMTAsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEuZDE3NDUycC05LAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLmQxNzQ1MnAtOCwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgLTB4MS5kMTc0NTJwLTcsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuZDE3NDUycC02LAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLmQxNzQ1MnAtNSwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS5kMTc0NTJwLTQsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIC0weDEuZDE3NDUycC0zLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMHgxLmQxNzQ1MnAtMSwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLmQxNzQ1MnAwLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIC0weDEuZDE3NDUycDEsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS5kMTc0NTJwMiwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAtMHgxLmQxNzQ1MnAzLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEuZDE3NDUycDQsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgLTB4MS5kMTc0NTJwNSwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLmQxNzQ1MnA2LAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIC0weDEuZDE3NDUycDcsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTB4MS5kMTc0NTJwOCwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgLTB4MS43NDVkMGNwLTEyLAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS43NDVkMGNwLTExLAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMHgxLjc0NWQwY3AtMTAsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuNzQ1ZDBjcC05LAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLjc0NWQwY3AtOCwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS43NDVkMGNwLTcsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuNzQ1ZDBjcC02LAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLjc0NWQwY3AtNSwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgLTB4MS43NDVkMGNwLTQsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuNzQ1ZDBjcC0zLAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLjc0NWQwY3AtMSwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAtMHgxLjc0NWQwY3AwLAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEuNzQ1ZDBjcDEsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgLTB4MS43NDVkMGNwMiwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAtMHgxLjc0NWQwY3AzLAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIC0weDEuNzQ1ZDBjcDQsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS43NDVkMGNwNSwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAtMHgxLjc0NWQwY3A2LAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuNzQ1ZDBjcDcsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgLTB4MS43NDVkMGNwOCwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTB4MS4xNzQ1YzZwLTEyLAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgLTB4MS4xNzQ1YzZwLTExLAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAtMHgxLjE3NDVjNnAtMTAsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIC0weDEuMTc0NWM2cC05LAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLjE3NDVjNnAtOCwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgLTB4MS4xNzQ1YzZwLTcsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuMTc0NWM2cC02LAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAtMHgxLjE3NDVjNnAtNSwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTB4MS4xNzQ1YzZwLTQsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIC0weDEuMTc0NWM2cC0zLAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMHgxLjE3NDVjNnAtMSwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLjE3NDVjNnAwLAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEuMTc0NWM2cDEsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS4xNzQ1YzZwMiwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLjE3NDVjNnAzLAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuMTc0NWM2cDQsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgLTB4MS4xNzQ1YzZwNSwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLjE3NDVjNnA2LAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEuMTc0NWM2cDcsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgLTB4MS4xNzQ1YzZwOCwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTB4MS43NDVkcC0xMywKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLjc0NWRwLTEyLAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgLTB4MS43NDVkcC0xMSwKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0weDEuNzQ1ZHAtMTAsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAtMHgxLjc0NWRwLTksCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLjc0NWRwLTgsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMHgxLjc0NWRwLTcsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAtMHgxLjc0NWRwLTYsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAtMHgxLjc0NWRwLTUsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAtMHgxLjc0NWRwLTQsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEuNzQ1ZHAtMiwKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgLTB4MS43NDVkcC0xLAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLjc0NWRwMCwKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgLTB4MS43NDVkcDEsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIC0weDEuNzQ1ZHAyLAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAtMHgxLjc0NWRwMywKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS43NDVkcDQsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0weDEuNzQ1ZHA1LAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLjc0NWRwNiwKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgLTB4MS43NDVkcDcsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLjc0NWNlOHAtMTQsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAtMHgxLjc0NWNlOHAtMTMsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0weDEuNzQ1Y2U4cC0xMiwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgLTB4MS43NDVjZThwLTExLAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMHgxLjc0NWNlOHAtMTAsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIC0weDEuNzQ1Y2U4cC05LAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAtMHgxLjc0NWNlOHAtOCwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgLTB4MS43NDVjZThwLTcsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIC0weDEuNzQ1Y2U4cC02LAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAtMHgxLjc0NWNlOHAtNSwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgLTB4MS43NDVjZThwLTMsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgLTB4MS43NDVjZThwLTIsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgLTB4MS43NDVjZThwLTEsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS43NDVjZThwMCwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAtMHgxLjc0NWNlOHAxLAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEuNzQ1Y2U4cDIsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgLTB4MS43NDVjZThwMywKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAtMHgxLjc0NWNlOHA0LAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIC0weDEuNzQ1Y2U4cDUsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTB4MS43NDVjZThwNiwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLjgwcC0zMywKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgMHgxLjgwcC0zMiwKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuODBwLTMxLAorICAgIDB4MS44MHAtMjMsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS44MHAtMzAsCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLjgwcC0yOSwKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuODBwLTI4LAorICAgIDB4MS44MHAtMjMsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS44MHAtMjcsCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLjgwcC0yNiwKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuODBwLTI1LAorICAgIDB4MS44MHAtMjMsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS44MHAtMjQsCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjgwcC0yMywKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS44MHAtMjIsCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuODBwLTIxLAorICAgIDB4MS44MHAtMjMsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjgwcC0yMCwKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS44MHAtMTksCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuODBwLTE4LAorICAgIDB4MS44MHAtMjMsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLjgwcC0xNywKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS44MHAtMTYsCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuODBwLTE1LAorICAgIDB4MS44MHAtMjMsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLjgwcC0xNCwKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS44MHAtMTMsCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLjc0NWQ0OHAtMTQsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS43NDVkNDhwLTEzLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS43NDVkNDhwLTEyLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS43NDVkNDhwLTExLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS43NDVkNDhwLTEwLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS43NDVkNDhwLTksCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLjc0NWQ0OHAtOCwKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEuNzQ1ZDQ4cC03LAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS43NDVkNDhwLTYsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLjc0NWQ0OHAtNSwKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLjc0NWQ0OHAtMywKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIDB4MS43NDVkNDhwLTIsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuNzQ1ZDQ4cC0xLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLjc0NWQ0OHAwLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLjc0NWQ0OHAxLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLjc0NWQ0OHAyLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjc0NWQ0OHAzLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjc0NWQ0OHA0LAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLjc0NWQ0OHA1LAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMHgxLjc0NWQ0OHA2LAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS43NDVkMzBwLTEzLAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuNzQ1ZDMwcC0xMiwKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuNzQ1ZDMwcC0xMSwKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuNzQ1ZDMwcC0xMCwKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuNzQ1ZDMwcC05LAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIDB4MS43NDVkMzBwLTgsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLjc0NWQzMHAtNywKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAweDEuNzQ1ZDMwcC02LAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS43NDVkMzBwLTUsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgMHgxLjc0NWQzMHAtNCwKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgMHgxLjc0NWQzMHAtMiwKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIDB4MS43NDVkMzBwLTEsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAweDEuNzQ1ZDMwcDAsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuNzQ1ZDMwcDEsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuNzQ1ZDMwcDIsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuNzQ1ZDMwcDMsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAweDEuNzQ1ZDMwcDQsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuNzQ1ZDMwcDUsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuNzQ1ZDMwcDYsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuNzQ1ZDMwcDcsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzA3CisgICAgMHgxLjE3NDVkZXAtMTIsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS4xNzQ1ZGVwLTExLAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIDB4MS4xNzQ1ZGVwLTEwLAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIDB4MS4xNzQ1ZGVwLTksCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgMHgxLjE3NDVkZXAtOCwKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuMTc0NWRlcC03LAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS4xNzQ1ZGVwLTYsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLjE3NDVkZXAtNSwKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAweDEuMTc0NWRlcC00LAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS4xNzQ1ZGVwLTMsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS4xNzQ1ZGVwLTEsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAweDEuMTc0NWRlcDAsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuMTc0NWRlcDEsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEuMTc0NWRlcDIsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEuMTc0NWRlcDMsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuMTc0NWRlcDQsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAweDEuMTc0NWRlcDUsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEuMTc0NWRlcDYsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEuMTc0NWRlcDcsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEuMTc0NWRlcDgsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgMHgxLjc0NWQyNHAtMTIsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIDB4MS43NDVkMjRwLTExLAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS43NDVkMjRwLTEwLAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIDB4MS43NDVkMjRwLTksCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgMHgxLjc0NWQyNHAtOCwKKyAgICAweDEuNzQ1ZDI0cC0yLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAweDEuNzQ1ZDI0cC03LAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIDB4MS43NDVkMjRwLTYsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgMHgxLjc0NWQyNHAtNSwKKyAgICAweDEuNzQ1ZDI0cC0yLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAweDEuNzQ1ZDI0cC00LAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIDB4MS43NDVkMjRwLTMsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAweDEuNzQ1ZDI0cC0yLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIDB4MS43NDVkMjRwLTEsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAweDEuNzQ1ZDI0cDAsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAweDEuNzQ1ZDI0cDEsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuNzQ1ZDI0cDIsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAweDEuNzQ1ZDI0cDMsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuNzQ1ZDI0cDQsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAweDEuNzQ1ZDI0cDUsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAweDEuNzQ1ZDI0cDYsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuNzQ1ZDI0cDcsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDgKKyAgICAweDEuNzQ1ZDI0cDgsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgMHgxLmQxNzQ2YXAtMTIsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS5kMTc0NmFwLTExLAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIDB4MS5kMTc0NmFwLTEwLAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIDB4MS5kMTc0NmFwLTksCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMzUzCisgICAgMHgxLmQxNzQ2YXAtOCwKKyAgICAweDEuZDE3NDZhcC0yLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuZDE3NDZhcC03LAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIDB4MS5kMTc0NmFwLTYsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgMHgxLmQxNzQ2YXAtNSwKKyAgICAweDEuZDE3NDZhcC0yLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAweDEuZDE3NDZhcC00LAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIDB4MS5kMTc0NmFwLTMsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU5CisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAweDEuZDE3NDZhcC0yLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS5kMTc0NmFwLTEsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAweDEuZDE3NDZhcDAsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuZDE3NDZhcDEsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAweDEuZDE3NDZhcDIsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEuZDE3NDZhcDMsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAweDEuZDE3NDZhcDQsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuZDE3NDZhcDUsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjcKKyAgICAweDEuZDE3NDZhcDYsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAweDEuZDE3NDZhcDcsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICAweDEuZDE3NDZhcDgsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLjE3NDVkOHAtMTEsCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIDB4MS4xNzQ1ZDhwLTEwLAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIDB4MS4xNzQ1ZDhwLTksCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgMHgxLjE3NDVkOHAtOCwKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAweDEuMTc0NWQ4cC03LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIDB4MS4xNzQ1ZDhwLTYsCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgMHgxLjE3NDVkOHAtNSwKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAweDEuMTc0NWQ4cC00LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS4xNzQ1ZDhwLTMsCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMzc5CisgICAgMHgxLjE3NDVkOHAtMiwKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODAKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgMHgxLjE3NDVkOHAwLAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgMHgxLjE3NDVkOHAxLAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgMHgxLjE3NDVkOHAyLAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgMHgxLjE3NDVkOHAzLAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgMzg1CisgICAgMHgxLjE3NDVkOHA0LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgMHgxLjE3NDVkOHA1LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgMHgxLjE3NDVkOHA2LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgMHgxLjE3NDVkOHA3LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMzg5CisgICAgMHgxLjE3NDVkOHA4LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMzkwCisgICAgMHgxLjE3NDVkOHA5LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS40NWQxN2NwLTExLAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAweDEuNDVkMTdjcC0xMCwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAweDEuNDVkMTdjcC05LAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIDB4MS40NWQxN2NwLTgsCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMzk1CisgICAgMHgxLjQ1ZDE3Y3AtNywKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAweDEuNDVkMTdjcC02LAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIDB4MS40NWQxN2NwLTUsCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMHgxLjQ1ZDE3Y3AtNCwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTkKKyAgICAweDEuNDVkMTdjcC0zLAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDQwMAorICAgIDB4MS40NWQxN2NwLTIsCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAxCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIDB4MS40NWQxN2NwMCwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIDB4MS40NWQxN2NwMSwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIDB4MS40NWQxN2NwMiwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIDB4MS40NWQxN2NwMywKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIDB4MS40NWQxN2NwNCwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIDB4MS40NWQxN2NwNSwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIDB4MS40NWQxN2NwNiwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDQwOQorICAgIDB4MS40NWQxN2NwNywKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIDB4MS40NWQxN2NwOCwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIDB4MS40NWQxN2NwOSwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTIKKyAgICAweDEuNzQ1ZDIwcC0xMSwKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDEzCisgICAgMHgxLjc0NWQyMHAtMTAsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgMHgxLjc0NWQyMHAtOSwKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTUKKyAgICAweDEuNzQ1ZDIwcC04LAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDQxNgorICAgIDB4MS43NDVkMjBwLTcsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgNDE3CisgICAgMHgxLjc0NWQyMHAtNiwKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTgKKyAgICAweDEuNzQ1ZDIwcC01LAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIDB4MS43NDVkMjBwLTQsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgMHgxLjc0NWQyMHAtMywKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjEKKyAgICAweDEuNzQ1ZDIwcC0yLAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDQyMgorICAgIDB4MS43NDVkMjBwLTEsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAweDEuNzQ1ZDIwcDAsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjQKKyAgICAweDEuNzQ1ZDIwcDEsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAweDEuNzQ1ZDIwcDIsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjYKKyAgICAweDEuNzQ1ZDIwcDMsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAweDEuNzQ1ZDIwcDQsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAweDEuNzQ1ZDIwcDUsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEuNzQ1ZDIwcDYsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzAKKyAgICAweDEuNzQ1ZDIwcDcsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAweDEuNzQ1ZDIwcDgsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzIKKyAgICAweDEuNzQ1ZDIwcDksCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgMHgxLmEyZThjNHAtMTEsCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS5hMmU4YzRwLTEwLAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDQzNQorICAgIDB4MS5hMmU4YzRwLTksCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgNDM2CisgICAgMHgxLmEyZThjNHAtOCwKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAweDEuYTJlOGM0cC03LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDQzOAorICAgIDB4MS5hMmU4YzRwLTYsCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgMHgxLmEyZThjNHAtNSwKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuYTJlOGM0cC00LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDQ0MQorICAgIDB4MS5hMmU4YzRwLTMsCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgNDQyCisgICAgMHgxLmEyZThjNHAtMiwKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDMKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgMHgxLmEyZThjNHAwLAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgMHgxLmEyZThjNHAxLAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgNDQ2CisgICAgMHgxLmEyZThjNHAyLAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgMHgxLmEyZThjNHAzLAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNDQ4CisgICAgMHgxLmEyZThjNHA0LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgNDQ5CisgICAgMHgxLmEyZThjNHA1LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgMHgxLmEyZThjNHA2LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgMHgxLmEyZThjNHA3LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgMHgxLmEyZThjNHA4LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgMHgxLmEyZThjNHA5LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NAorICAgIDB4MS5kMTc0NjhwLTExLAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAweDEuZDE3NDY4cC0xMCwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAweDEuZDE3NDY4cC05LAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIDB4MS5kMTc0NjhwLTgsCisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgMHgxLmQxNzQ2OHAtNywKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTkKKyAgICAweDEuZDE3NDY4cC02LAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDQ2MAorICAgIDB4MS5kMTc0NjhwLTUsCisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgMHgxLmQxNzQ2OHAtNCwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICAweDEuZDE3NDY4cC0zLAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDQ2MworICAgIDB4MS5kMTc0NjhwLTIsCisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgNDY0CisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDQ2NQorICAgIDB4MS5kMTc0NjhwMCwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDQ2NgorICAgIDB4MS5kMTc0NjhwMSwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIDB4MS5kMTc0NjhwMiwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIDB4MS5kMTc0NjhwMywKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIDB4MS5kMTc0NjhwNCwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIDB4MS5kMTc0NjhwNSwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDQ3MQorICAgIDB4MS5kMTc0NjhwNiwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDQ3MgorICAgIDB4MS5kMTc0NjhwNywKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIDB4MS5kMTc0NjhwOCwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIDB4MS5kMTc0NjhwOSwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzUKKyAgICAweDEucC0xMCwKKyAgICAweDEucDAsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAweDEucC05LAorICAgIDB4MS5wMCwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgNDc3CisgICAgMHgxLnAtOCwKKyAgICAweDEucDAsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDQ3OAorICAgIDB4MS5wLTcsCisgICAgMHgxLnAwLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzkKKyAgICAweDEucC02LAorICAgIDB4MS5wMCwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgNDgwCisgICAgMHgxLnAtNSwKKyAgICAweDEucDAsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIDB4MS5wLTQsCisgICAgMHgxLnAwLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODIKKyAgICAweDEucC0zLAorICAgIDB4MS5wMCwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgNDgzCisgICAgMHgxLnAtMiwKKyAgICAweDEucDAsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIDB4MS5wLTEsCisgICAgMHgxLnAwLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAweDEucDAsCisgICAgMHgxLnAwLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIDB4MS5wMSwKKyAgICAweDEucDAsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgMHgxLnAyLAorICAgIDB4MS5wMCwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAweDEucDMsCisgICAgMHgxLnAwLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIDB4MS5wNCwKKyAgICAweDEucDAsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgMHgxLnA1LAorICAgIDB4MS5wMCwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAweDEucDYsCisgICAgMHgxLnAwLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDQ5MgorICAgIDB4MS5wNywKKyAgICAweDEucDAsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNDkzCisgICAgMHgxLnA4LAorICAgIDB4MS5wMCwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTQKKyAgICAweDEucDksCisgICAgMHgxLnAwLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIDB4MS5wMTAsCisgICAgMHgxLnAwLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTYKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCktMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgMHgxLmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDQ5OAorICAgIDB4MS5mZmZmZmVwMTE3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDk5CisgICAgMHgxLmZmZmZmZXAxMTgsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDUwMAorICAgIDB4MS5mZmZmZmVwMTE5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDEKKyAgICAweDEuZmZmZmZlcDEyMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgMHgxLmZmZmZmZXAxMjEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDUwMworICAgIDB4MS5mZmZmZmVwMTIyLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAweDEuZmZmZmZlcDEyMywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgNTA1CisgICAgMHgxLmZmZmZmZXAxMjQsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDUwNgorICAgIDB4MS5mZmZmZmVwMTI1LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgNTA5CisgICAgMHgxLnAtMjIsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgMHgxLnAtMjMsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTIKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDUxMworICAgIDB4MS5wLTE0NywKKyAgICAweDEucC0xNDksCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgMHgxLnAtMTQ2LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTUKKyAgICAweDEucC0xNDUsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDUxNgorICAgIDB4MS5wLTE0NCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgNTE3CisgICAgMHgxLnAtMTQzLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICAweDEucC0xNDIsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDUxOQorICAgIDB4MS5wLTE0MSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgMHgxLnAtMTQwLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjEKKyAgICAweDEucC0xMzksCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjIKKyAgICAweDEucC0xMjksCisgICAgMHgxLnAtMiwKKyAgICAoaW50KS0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjMKKyAgICAweDEucC0xMjgsCisgICAgMHgxLnAtMiwKKyAgICAoaW50KS0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjQKKyAgICAweDEucC0xMjgsCisgICAgMHgxLnAtMSwKKyAgICAoaW50KS0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAweDEucC0xMjcsCisgICAgMHgxLnAtMSwKKyAgICAoaW50KS0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjYKKyAgICAweDEuODBwLTEyOCwKKyAgICAweDEuODBwLTEsCisgICAgKGludCktMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTI3CisgICAgMHgxLjgwcC0xMjcsCisgICAgMHgxLjgwcC0xLAorICAgIChpbnQpLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDUyOAorICAgIDAuMGYsCisgICAgMHgxLnAtMiwKKyAgICAoaW50KS0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjkKKyAgICAwLjBmLAorICAgIDB4MS5wLTIsCisgICAgKGludCktMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNTMwCisgICAgMC4wZiwKKyAgICAweDEucC0xLAorICAgIChpbnQpLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDUzMQorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xLAorICAgIChpbnQpLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIDAuMGYsCisgICAgMHgxLjgwcC0xLAorICAgIChpbnQpLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIDB4MS44MHAtMTQ5LAorICAgIDB4MS44MHAtMSwKKyAgICAoaW50KS0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzQKKyAgICAweDEucDEyNywKKyAgICAweDEucDAsCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAweDEucDEyNiwKKyAgICAweDEucDAsCisgICAgKGludCkxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzYKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDUzNworICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgMHgxLnAtMTQ3LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzkKKyAgICAweDEucC0xNDYsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDU0MAorICAgIDB4MS5wLTE0NSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNTQxCisgICAgMHgxLnAtMTQ0LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAweDEucC0xNDMsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDU0MworICAgIDB4MS5wLTE0MiwKKyAgICAweDEucC0xNDksCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNTQ0CisgICAgMHgxLnAtMTQxLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDUKKyAgICAweDEucC0xNDAsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDU0NgorICAgIDB4MS5wLTEzOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIDB4MS5wLTEzOCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMQorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIDB4MS5wLTEzNywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMgorICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIDB4MS5wLTEzNiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMworICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIDB4MS5wLTEzNSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxNAorICB9LAorICB7IC8vIEVudHJ5IDU1MQorICAgIDB4MS5wLTEzNCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxNQorICB9LAorICB7IC8vIEVudHJ5IDU1MgorICAgIDB4MS5wLTEzMywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxNgorICB9LAorICB7IC8vIEVudHJ5IDU1MworICAgIDB4MS5wLTEzMiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxNworICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS5wLTEzMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxOAorICB9LAorICB7IC8vIEVudHJ5IDU1NQorICAgIDB4MS5wLTEzMCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxOQorICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIDB4MS5wLTEyOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyMAorICB9LAorICB7IC8vIEVudHJ5IDU1NworICAgIDB4MS5wLTEyOCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyMQorICB9LAorICB7IC8vIEVudHJ5IDU1OAorICAgIDB4MS5wLTEyNywKKyAgICAweDEucC0xNDksCisgICAgKGludCkyMgorICB9LAorICB7IC8vIEVudHJ5IDU1OQorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyMworICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDB4MS5wLTEyNSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyNAorICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIDB4MS5wLTEyNCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyNQorICB9LAorICB7IC8vIEVudHJ5IDU2MgorICAgIDB4MS5wLTEyMywKKyAgICAweDEucC0xNDksCisgICAgKGludCkyNgorICB9LAorICB7IC8vIEVudHJ5IDU2MworICAgIDB4MS5wLTEyMiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyNworICB9LAorICB7IC8vIEVudHJ5IDU2NAorICAgIDB4MS5wLTEyMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyOAorICB9LAorICB7IC8vIEVudHJ5IDU2NQorICAgIDB4MS5wLTEyMCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyOQorICB9LAorICB7IC8vIEVudHJ5IDU2NgorICAgIDB4MS5wLTExOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzMAorICB9LAorICB7IC8vIEVudHJ5IDU2NworICAgIDB4MS5wLTExOCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzMQorICB9LAorICB7IC8vIEVudHJ5IDU2OAorICAgIDB4MS5wLTExNywKKyAgICAweDEucC0xNDksCisgICAgKGludCkzMgorICB9LAorICB7IC8vIEVudHJ5IDU2OQorICAgIDB4MS5wLTExNiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzMworICB9LAorICB7IC8vIEVudHJ5IDU3MAorICAgIDB4MS5wLTExNSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzNAorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIDB4MS5wLTExNCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzNQorICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIDB4MS5wLTExMywKKyAgICAweDEucC0xNDksCisgICAgKGludCkzNgorICB9LAorICB7IC8vIEVudHJ5IDU3MworICAgIDB4MS5wLTExMiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzNworICB9LAorICB7IC8vIEVudHJ5IDU3NAorICAgIDB4MS5wLTExMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzOAorICB9LAorICB7IC8vIEVudHJ5IDU3NQorICAgIDB4MS5wLTExMCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzOQorICB9LAorICB7IC8vIEVudHJ5IDU3NgorICAgIDB4MS5wLTEwOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0MAorICB9LAorICB7IC8vIEVudHJ5IDU3NworICAgIDB4MS5wLTEwOCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0MQorICB9LAorICB7IC8vIEVudHJ5IDU3OAorICAgIDB4MS5wLTEwNywKKyAgICAweDEucC0xNDksCisgICAgKGludCk0MgorICB9LAorICB7IC8vIEVudHJ5IDU3OQorICAgIDB4MS5wLTEwNiwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0MworICB9LAorICB7IC8vIEVudHJ5IDU4MAorICAgIDB4MS5wLTEwNSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0NAorICB9LAorICB7IC8vIEVudHJ5IDU4MQorICAgIDB4MS5wLTEwNCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0NQorICB9LAorICB7IC8vIEVudHJ5IDU4MgorICAgIDB4MS5wLTEwMywKKyAgICAweDEucC0xNDksCisgICAgKGludCk0NgorICB9LAorICB7IC8vIEVudHJ5IDU4MworICAgIDB4MS5wLTEwMiwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0NworICB9LAorICB7IC8vIEVudHJ5IDU4NAorICAgIDB4MS5wLTEwMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0OAorICB9LAorICB7IC8vIEVudHJ5IDU4NQorICAgIDB4MS5wLTEwMCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0OQorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIDB4MS5wLTk5LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTUwCisgIH0sCisgIHsgLy8gRW50cnkgNTg3CisgICAgMHgxLnAtOTgsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODgKKyAgICAweDEucC05NywKKyAgICAweDEucC0xNDksCisgICAgKGludCk1MgorICB9LAorICB7IC8vIEVudHJ5IDU4OQorICAgIDB4MS5wLTk2LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTUzCisgIH0sCisgIHsgLy8gRW50cnkgNTkwCisgICAgMHgxLnAtOTUsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTEKKyAgICAweDEucC05NCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk1NQorICB9LAorICB7IC8vIEVudHJ5IDU5MgorICAgIDB4MS5wLTkzLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTU2CisgIH0sCisgIHsgLy8gRW50cnkgNTkzCisgICAgMHgxLnAtOTIsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTQKKyAgICAweDEucC05MSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk1OAorICB9LAorICB7IC8vIEVudHJ5IDU5NQorICAgIDB4MS5wLTkwLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTU5CisgIH0sCisgIHsgLy8gRW50cnkgNTk2CisgICAgMHgxLnAtODksCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAweDEucC04OCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk2MQorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIDB4MS5wLTg3LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTYyCisgIH0sCisgIHsgLy8gRW50cnkgNTk5CisgICAgMHgxLnAtODYsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDAKKyAgICAweDEucC04NSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk2NAorICB9LAorICB7IC8vIEVudHJ5IDYwMQorICAgIDB4MS5wLTg0LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTY1CisgIH0sCisgIHsgLy8gRW50cnkgNjAyCisgICAgMHgxLnAtODMsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAweDEucC04MiwKKyAgICAweDEucC0xNDksCisgICAgKGludCk2NworICB9LAorICB7IC8vIEVudHJ5IDYwNAorICAgIDB4MS5wLTgxLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTY4CisgIH0sCisgIHsgLy8gRW50cnkgNjA1CisgICAgMHgxLnAtODAsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDYKKyAgICAweDEucC03OSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk3MAorICB9LAorICB7IC8vIEVudHJ5IDYwNworICAgIDB4MS5wLTc4LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTcxCisgIH0sCisgIHsgLy8gRW50cnkgNjA4CisgICAgMHgxLnAtNzcsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDkKKyAgICAweDEucC03NiwKKyAgICAweDEucC0xNDksCisgICAgKGludCk3MworICB9LAorICB7IC8vIEVudHJ5IDYxMAorICAgIDB4MS5wLTc1LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTc0CisgIH0sCisgIHsgLy8gRW50cnkgNjExCisgICAgMHgxLnAtNzQsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNzUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTIKKyAgICAweDEucC03MywKKyAgICAweDEucC0xNDksCisgICAgKGludCk3NgorICB9LAorICB7IC8vIEVudHJ5IDYxMworICAgIDB4MS5wLTcyLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTc3CisgIH0sCisgIHsgLy8gRW50cnkgNjE0CisgICAgMHgxLnAtNzEsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNzgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAweDEucC03MCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk3OQorICB9LAorICB7IC8vIEVudHJ5IDYxNgorICAgIDB4MS5wLTY5LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTgwCisgIH0sCisgIHsgLy8gRW50cnkgNjE3CisgICAgMHgxLnAtNjgsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpODEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTgKKyAgICAweDEucC02NywKKyAgICAweDEucC0xNDksCisgICAgKGludCk4MgorICB9LAorICB7IC8vIEVudHJ5IDYxOQorICAgIDB4MS5wLTY2LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTgzCisgIH0sCisgIHsgLy8gRW50cnkgNjIwCisgICAgMHgxLnAtNjUsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpODQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICAweDEucC02NCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk4NQorICB9LAorICB7IC8vIEVudHJ5IDYyMgorICAgIDB4MS5wLTYzLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTg2CisgIH0sCisgIHsgLy8gRW50cnkgNjIzCisgICAgMHgxLnAtNjIsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpODcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjQKKyAgICAweDEucC02MSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk4OAorICB9LAorICB7IC8vIEVudHJ5IDYyNQorICAgIDB4MS5wLTYwLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTg5CisgIH0sCisgIHsgLy8gRW50cnkgNjI2CisgICAgMHgxLnAtNTksCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpOTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjcKKyAgICAweDEucC01OCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk5MQorICB9LAorICB7IC8vIEVudHJ5IDYyOAorICAgIDB4MS5wLTU3LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTkyCisgIH0sCisgIHsgLy8gRW50cnkgNjI5CisgICAgMHgxLnAtNTYsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpOTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzAKKyAgICAweDEucC01NSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk5NAorICB9LAorICB7IC8vIEVudHJ5IDYzMQorICAgIDB4MS5wLTU0LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTk1CisgIH0sCisgIHsgLy8gRW50cnkgNjMyCisgICAgMHgxLnAtNTMsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpOTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzMKKyAgICAweDEucC01MiwKKyAgICAweDEucC0xNDksCisgICAgKGludCk5NworICB9LAorICB7IC8vIEVudHJ5IDYzNAorICAgIDB4MS5wLTUxLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTk4CisgIH0sCisgIHsgLy8gRW50cnkgNjM1CisgICAgMHgxLnAtNTAsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzYKKyAgICAweDEucC00OSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzcKKyAgICAweDEucC00OCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzgKKyAgICAweDEucC00NywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzkKKyAgICAweDEucC00NiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDAKKyAgICAweDEucC00NSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDEKKyAgICAweDEucC00NCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDIKKyAgICAweDEucC00MywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDMKKyAgICAweDEucC00MiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDQKKyAgICAweDEucC00MSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDUKKyAgICAweDEucC00MCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDYKKyAgICAweDEucC0zOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDcKKyAgICAweDEucC0zOCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDgKKyAgICAweDEucC0zNywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDkKKyAgICAweDEucC0zNiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTAKKyAgICAweDEucC0zNSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTEKKyAgICAweDEucC0zNCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTIKKyAgICAweDEucC0zMywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTMKKyAgICAweDEucC0zMiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTQKKyAgICAweDEucC0zMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTUKKyAgICAweDEucC0zMCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTYKKyAgICAweDEucC0yOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTcKKyAgICAweDEucC0yOCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAweDEucC0yNywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTkKKyAgICAweDEucC0yNiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjAKKyAgICAweDEucC0yNSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjEKKyAgICAweDEucC0yNCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjIKKyAgICAweDEucC0yMywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjMKKyAgICAweDEucC0yMiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjQKKyAgICAweDEucC0yMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjUKKyAgICAweDEucC0yMCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjYKKyAgICAweDEucC0xOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjcKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDY2OAorICAgIDB4MS5mZmZmZmNwLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNjY5CisgICAgMHgxLmZmZmZmY3AtMTI1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzAKKyAgICAweDEuZmZmZmZjcC0xMjQsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDY3MQorICAgIDB4MS5mZmZmZmNwLTEyMywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNjcyCisgICAgMHgxLmZmZmZmY3AtMTIyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzMKKyAgICAweDEuZmZmZmZjcC0xMjEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDY3NAorICAgIDB4MS5mZmZmZmNwLTEyMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNjc1CisgICAgMHgxLmZmZmZmY3AtMTE5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzYKKyAgICAweDEuZmZmZmZjcC0xMTgsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDY3NworICAgIDB4MS5mZmZmZmNwLTExNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDY3OAorICAgIDB4MS5mZmZmZmNwLTExNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMQorICB9LAorICB7IC8vIEVudHJ5IDY3OQorICAgIDB4MS5mZmZmZmNwLTExNSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMgorICB9LAorICB7IC8vIEVudHJ5IDY4MAorICAgIDB4MS5mZmZmZmNwLTExNCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMworICB9LAorICB7IC8vIEVudHJ5IDY4MQorICAgIDB4MS5mZmZmZmNwLTExMywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxNAorICB9LAorICB7IC8vIEVudHJ5IDY4MgorICAgIDB4MS5mZmZmZmNwLTExMiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxNQorICB9LAorICB7IC8vIEVudHJ5IDY4MworICAgIDB4MS5mZmZmZmNwLTExMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxNgorICB9LAorICB7IC8vIEVudHJ5IDY4NAorICAgIDB4MS5mZmZmZmNwLTExMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxNworICB9LAorICB7IC8vIEVudHJ5IDY4NQorICAgIDB4MS5mZmZmZmNwLTEwOSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxOAorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIDB4MS5mZmZmZmNwLTEwOCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxOQorICB9LAorICB7IC8vIEVudHJ5IDY4NworICAgIDB4MS5mZmZmZmNwLTEwNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyMAorICB9LAorICB7IC8vIEVudHJ5IDY4OAorICAgIDB4MS5mZmZmZmNwLTEwNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyMQorICB9LAorICB7IC8vIEVudHJ5IDY4OQorICAgIDB4MS5mZmZmZmNwLTEwNSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyMgorICB9LAorICB7IC8vIEVudHJ5IDY5MAorICAgIDB4MS5mZmZmZmNwLTEwNCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyMworICB9LAorICB7IC8vIEVudHJ5IDY5MQorICAgIDB4MS5mZmZmZmNwLTEwMywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyNAorICB9LAorICB7IC8vIEVudHJ5IDY5MgorICAgIDB4MS5mZmZmZmNwLTEwMiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyNQorICB9LAorICB7IC8vIEVudHJ5IDY5MworICAgIDB4MS5mZmZmZmNwLTEwMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyNgorICB9LAorICB7IC8vIEVudHJ5IDY5NAorICAgIDB4MS5mZmZmZmNwLTEwMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyNworICB9LAorICB7IC8vIEVudHJ5IDY5NQorICAgIDB4MS5mZmZmZmNwLTk5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTI4CisgIH0sCisgIHsgLy8gRW50cnkgNjk2CisgICAgMHgxLmZmZmZmY3AtOTgsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTcKKyAgICAweDEuZmZmZmZjcC05NywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkzMAorICB9LAorICB7IC8vIEVudHJ5IDY5OAorICAgIDB4MS5mZmZmZmNwLTk2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTMxCisgIH0sCisgIHsgLy8gRW50cnkgNjk5CisgICAgMHgxLmZmZmZmY3AtOTUsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDAKKyAgICAweDEuZmZmZmZjcC05NCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkzMworICB9LAorICB7IC8vIEVudHJ5IDcwMQorICAgIDB4MS5mZmZmZmNwLTkzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTM0CisgIH0sCisgIHsgLy8gRW50cnkgNzAyCisgICAgMHgxLmZmZmZmY3AtOTIsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMzUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDMKKyAgICAweDEuZmZmZmZjcC05MSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkzNgorICB9LAorICB7IC8vIEVudHJ5IDcwNAorICAgIDB4MS5mZmZmZmNwLTkwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTM3CisgIH0sCisgIHsgLy8gRW50cnkgNzA1CisgICAgMHgxLmZmZmZmY3AtODksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMzgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDYKKyAgICAweDEuZmZmZmZjcC04OCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkzOQorICB9LAorICB7IC8vIEVudHJ5IDcwNworICAgIDB4MS5mZmZmZmNwLTg3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTQwCisgIH0sCisgIHsgLy8gRW50cnkgNzA4CisgICAgMHgxLmZmZmZmY3AtODYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDkKKyAgICAweDEuZmZmZmZjcC04NSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk0MgorICB9LAorICB7IC8vIEVudHJ5IDcxMAorICAgIDB4MS5mZmZmZmNwLTg0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTQzCisgIH0sCisgIHsgLy8gRW50cnkgNzExCisgICAgMHgxLmZmZmZmY3AtODMsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTIKKyAgICAweDEuZmZmZmZjcC04MiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk0NQorICB9LAorICB7IC8vIEVudHJ5IDcxMworICAgIDB4MS5mZmZmZmNwLTgxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTQ2CisgIH0sCisgIHsgLy8gRW50cnkgNzE0CisgICAgMHgxLmZmZmZmY3AtODAsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTUKKyAgICAweDEuZmZmZmZjcC03OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk0OAorICB9LAorICB7IC8vIEVudHJ5IDcxNgorICAgIDB4MS5mZmZmZmNwLTc4LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzE3CisgICAgMHgxLmZmZmZmY3AtNzcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTgKKyAgICAweDEuZmZmZmZjcC03NiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk1MQorICB9LAorICB7IC8vIEVudHJ5IDcxOQorICAgIDB4MS5mZmZmZmNwLTc1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTUyCisgIH0sCisgIHsgLy8gRW50cnkgNzIwCisgICAgMHgxLmZmZmZmY3AtNzQsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjEKKyAgICAweDEuZmZmZmZjcC03MywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk1NAorICB9LAorICB7IC8vIEVudHJ5IDcyMgorICAgIDB4MS5mZmZmZmNwLTcyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTU1CisgIH0sCisgIHsgLy8gRW50cnkgNzIzCisgICAgMHgxLmZmZmZmY3AtNzEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjQKKyAgICAweDEuZmZmZmZjcC03MCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk1NworICB9LAorICB7IC8vIEVudHJ5IDcyNQorICAgIDB4MS5mZmZmZmNwLTY5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTU4CisgIH0sCisgIHsgLy8gRW50cnkgNzI2CisgICAgMHgxLmZmZmZmY3AtNjgsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjcKKyAgICAweDEuZmZmZmZjcC02NywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk2MAorICB9LAorICB7IC8vIEVudHJ5IDcyOAorICAgIDB4MS5mZmZmZmNwLTY2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTYxCisgIH0sCisgIHsgLy8gRW50cnkgNzI5CisgICAgMHgxLmZmZmZmY3AtNjUsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzAKKyAgICAweDEuZmZmZmZjcC02NCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk2MworICB9LAorICB7IC8vIEVudHJ5IDczMQorICAgIDB4MS5mZmZmZmNwLTYzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTY0CisgIH0sCisgIHsgLy8gRW50cnkgNzMyCisgICAgMHgxLmZmZmZmY3AtNjIsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzMKKyAgICAweDEuZmZmZmZjcC02MSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk2NgorICB9LAorICB7IC8vIEVudHJ5IDczNAorICAgIDB4MS5mZmZmZmNwLTYwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTY3CisgIH0sCisgIHsgLy8gRW50cnkgNzM1CisgICAgMHgxLmZmZmZmY3AtNTksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzYKKyAgICAweDEuZmZmZmZjcC01OCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk2OQorICB9LAorICB7IC8vIEVudHJ5IDczNworICAgIDB4MS5mZmZmZmNwLTU3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTcwCisgIH0sCisgIHsgLy8gRW50cnkgNzM4CisgICAgMHgxLmZmZmZmY3AtNTYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzkKKyAgICAweDEuZmZmZmZjcC01NSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk3MgorICB9LAorICB7IC8vIEVudHJ5IDc0MAorICAgIDB4MS5mZmZmZmNwLTU0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTczCisgIH0sCisgIHsgLy8gRW50cnkgNzQxCisgICAgMHgxLmZmZmZmY3AtNTMsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDIKKyAgICAweDEuZmZmZmZjcC01MiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk3NQorICB9LAorICB7IC8vIEVudHJ5IDc0MworICAgIDB4MS5mZmZmZmNwLTUxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTc2CisgIH0sCisgIHsgLy8gRW50cnkgNzQ0CisgICAgMHgxLmZmZmZmY3AtNTAsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNzcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDUKKyAgICAweDEuZmZmZmZjcC00OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk3OAorICB9LAorICB7IC8vIEVudHJ5IDc0NgorICAgIDB4MS5mZmZmZmNwLTQ4LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTc5CisgIH0sCisgIHsgLy8gRW50cnkgNzQ3CisgICAgMHgxLmZmZmZmY3AtNDcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpODAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDgKKyAgICAweDEuZmZmZmZjcC00NiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk4MQorICB9LAorICB7IC8vIEVudHJ5IDc0OQorICAgIDB4MS5mZmZmZmNwLTQ1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTgyCisgIH0sCisgIHsgLy8gRW50cnkgNzUwCisgICAgMHgxLmZmZmZmY3AtNDQsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpODMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTEKKyAgICAweDEuZmZmZmZjcC00MywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk4NAorICB9LAorICB7IC8vIEVudHJ5IDc1MgorICAgIDB4MS5mZmZmZmNwLTQyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTg1CisgIH0sCisgIHsgLy8gRW50cnkgNzUzCisgICAgMHgxLmZmZmZmY3AtNDEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpODYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTQKKyAgICAweDEuZmZmZmZjcC00MCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk4NworICB9LAorICB7IC8vIEVudHJ5IDc1NQorICAgIDB4MS5mZmZmZmNwLTM5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTg4CisgIH0sCisgIHsgLy8gRW50cnkgNzU2CisgICAgMHgxLmZmZmZmY3AtMzgsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpODkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTcKKyAgICAweDEuZmZmZmZjcC0zNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk5MAorICB9LAorICB7IC8vIEVudHJ5IDc1OAorICAgIDB4MS5mZmZmZmNwLTM2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTkxCisgIH0sCisgIHsgLy8gRW50cnkgNzU5CisgICAgMHgxLmZmZmZmY3AtMzUsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpOTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjAKKyAgICAweDEuZmZmZmZjcC0zNCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk5MworICB9LAorICB7IC8vIEVudHJ5IDc2MQorICAgIDB4MS5mZmZmZmNwLTMzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTk0CisgIH0sCisgIHsgLy8gRW50cnkgNzYyCisgICAgMHgxLmZmZmZmY3AtMzIsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpOTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjMKKyAgICAweDEuZmZmZmZjcC0zMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk5NgorICB9LAorICB7IC8vIEVudHJ5IDc2NAorICAgIDB4MS5mZmZmZmNwLTMwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTk3CisgIH0sCisgIHsgLy8gRW50cnkgNzY1CisgICAgMHgxLmZmZmZmY3AtMjksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpOTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjYKKyAgICAweDEuZmZmZmZjcC0yOCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk5OQorICB9LAorICB7IC8vIEVudHJ5IDc2NworICAgIDB4MS5mZmZmZmNwLTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwMAorICB9LAorICB7IC8vIEVudHJ5IDc2OAorICAgIDB4MS5mZmZmZmNwLTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwMQorICB9LAorICB7IC8vIEVudHJ5IDc2OQorICAgIDB4MS5mZmZmZmNwLTI1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwMgorICB9LAorICB7IC8vIEVudHJ5IDc3MAorICAgIDB4MS5mZmZmZmNwLTI0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwMworICB9LAorICB7IC8vIEVudHJ5IDc3MQorICAgIDB4MS5mZmZmZmNwLTIzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwNAorICB9LAorICB7IC8vIEVudHJ5IDc3MgorICAgIDB4MS5mZmZmZmNwLTIyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwNQorICB9LAorICB7IC8vIEVudHJ5IDc3MworICAgIDB4MS5mZmZmZmNwLTIxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwNgorICB9LAorICB7IC8vIEVudHJ5IDc3NAorICAgIDB4MS5mZmZmZmNwLTIwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwNworICB9LAorICB7IC8vIEVudHJ5IDc3NQorICAgIDB4MS5mZmZmZmNwLTE5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwOAorICB9LAorICB7IC8vIEVudHJ5IDc3NgorICAgIDB4MS5mZmZmZmNwLTE4LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwOQorICB9LAorICB7IC8vIEVudHJ5IDc3NworICAgIDB4MS5mZmZmZmNwLTE3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExMAorICB9LAorICB7IC8vIEVudHJ5IDc3OAorICAgIDB4MS5mZmZmZmNwLTE2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExMQorICB9LAorICB7IC8vIEVudHJ5IDc3OQorICAgIDB4MS5mZmZmZmNwLTE1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExMgorICB9LAorICB7IC8vIEVudHJ5IDc4MAorICAgIDB4MS5mZmZmZmNwLTE0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExMworICB9LAorICB7IC8vIEVudHJ5IDc4MQorICAgIDB4MS5mZmZmZmNwLTEzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExNAorICB9LAorICB7IC8vIEVudHJ5IDc4MgorICAgIDB4MS5mZmZmZmNwLTEyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExNQorICB9LAorICB7IC8vIEVudHJ5IDc4MworICAgIDB4MS5mZmZmZmNwLTExLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExNgorICB9LAorICB7IC8vIEVudHJ5IDc4NAorICAgIDB4MS5mZmZmZmNwLTEwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExNworICB9LAorICB7IC8vIEVudHJ5IDc4NQorICAgIDB4MS5mZmZmZmNwLTksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMTE4CisgIH0sCisgIHsgLy8gRW50cnkgNzg2CisgICAgMHgxLmZmZmZmY3AtOCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODcKKyAgICAweDEuZmZmZmZjcC03LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEyMAorICB9LAorICB7IC8vIEVudHJ5IDc4OAorICAgIDB4MS5mZmZmZmNwLTYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMTIxCisgIH0sCisgIHsgLy8gRW50cnkgNzg5CisgICAgMHgxLmZmZmZmY3AtNSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTAKKyAgICAweDEuZmZmZmZjcC00LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEyMworICB9LAorICB7IC8vIEVudHJ5IDc5MQorICAgIDB4MS5mZmZmZmNwLTMsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMTI0CisgIH0sCisgIHsgLy8gRW50cnkgNzkyCisgICAgMHgxLmZmZmZmY3AtMiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTMKKyAgICAweDEuZmZmZmZjcC0xLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEyNgorICB9LAorICB7IC8vIEVudHJ5IDc5NAorICAgIDB4MS5mZmZmZmNwMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTUKKyAgICAweDEuZmZmZmZjcDEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMTI4CisgIH0sCisgIHsgLy8gRW50cnkgNzk2CisgICAgMHgxLmZmZmZmY3AyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEyOQorICB9LAorICB7IC8vIEVudHJ5IDc5NworICAgIDB4MS5mZmZmZmNwMywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTgKKyAgICAweDEucDAsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzk5CisgICAgMHgxLnAtMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDAKKyAgICAweDEuZmZmZmZjcDIyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTE0OQorICB9LAorICB7IC8vIEVudHJ5IDgwMQorICAgIDB4MS5mZmZmZmNwMjEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgODAyCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTIzCisgIH0sCisgIHsgLy8gRW50cnkgODAzCisgICAgMHgxLnAtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTIyCisgIH0sCisgIHsgLy8gRW50cnkgODA0CisgICAgMHgxLmZmZmZmY3AtMTA0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTIzCisgIH0sCisgIHsgLy8gRW50cnkgODA1CisgICAgMHgxLmZmZmZmY3AtMTA1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTIyCisgIH0sCisgIHsgLy8gRW50cnkgODA2CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDcKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDgwOAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODA5CisgICAgMHgxLmZmZmZmY3AtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTAKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTEKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDgxMgorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDgxMworICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODE0CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDgxNQorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDgxNgorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODE3CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAoaW50KTEyNworICB9LAorICB7IC8vIEVudHJ5IDgxOAorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIChpbnQpLTEyNworICB9LAorICB7IC8vIEVudHJ5IDgxOQorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgKGludCktMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODIwCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjEKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjIKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDgyMworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODI0CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjUKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODI2CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDgyNworICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjgKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDgyOQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzAKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDgzMQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzIKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzMKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDgzNAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzUKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzYKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIChpbnQpLTEyNworICB9LAorICB7IC8vIEVudHJ5IDgzNworICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAoaW50KS0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzgKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODM5CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODQwCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODQxCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDIKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIChpbnQpNDAwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDMKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNDAwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDQKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgKGludCk0MDAwMAorICB9LAorICB7IC8vIEVudHJ5IDg0NQorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAoaW50KTQwMDAwCisgIH0sCisgIHsgLy8gRW50cnkgODQ2CisgICAgMHgxLnAtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODQ3CisgICAgMHgxLmZmZmZmY3AtMTI4LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODQ4CisgICAgMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDg0OQorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDg1MAorICAgIC0weDEuZmZmZmZjcC0xMjgsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODUxCisgICAgLTB4MS5wLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTIKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTQwMDAwCisgIH0sCisgIHsgLy8gRW50cnkgODUzCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTQwMDAwCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvbG9nMTBfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2xvZzEwX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZThhOWJkCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2xvZzEwX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDE0NzQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxkb3VibGUsIGRvdWJsZT4gZ19sb2cxMF9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEuYTdkOWE4ZWRiNDdiZTgwNTJlZTEwZDYxZjcyYmVkYjNwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgLTB4MS5iNjRjYjc2YTJjMTc2N2ZlMGNiMzgxZGE1YjljZTk2MnA2LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS5jZTYxY2Y4ZTkyMjdiN2ZmYmJjMjI1OGYwNmIwMDg0OHAtMSwKKyAgICAweDEuMDAwMDAwMDA3cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIC0weDEuY2U2MWNmOGU5MjI3YjdmZmQxMDllZmNiMjVkODk2MzJwMCwKKyAgICAweDEuMDAwMDAwMDBlcC02CisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS5kZDRmODU2NTg0MzE3ODAwMDNjOGQ3YmViZTUxZjgzNnAtMzMsCisgICAgMHgxLjAwMDAwMDAyMjU4NjNwMAorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAtMHgxLjgxNTE4MjQ3M2Y2MGQ4MDA0MzM4MzY4MzE1MzMzMmFhcDMsCisgICAgMHgxLjAwMDAwMDZwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIC0weDEuYzRiZmM1ZTA4ZjMwMDAwMTk2MTEzM2Q2N2E4YWU4ZjhwNSwKKyAgICAweDEuMDAwMDAxY3AtMTg4CisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIC0weDEuMzQyOGU1YTZkYjI2YjAwMjI2Mjk3MGNiMjk0ZjgxcDAsCisgICAgMHgxLjAwMzgwcC00CisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIC0weDEuOGE1OTNhYmI3YTEwMjgwMGY5NGU5OWVhMTc4ODY0ZWVwNywKKyAgICAweDEuMDAzODBwLTY1NQorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuZTFhOTVkMmQ5YmExZGZhNThiMmY4ZTVmZGYwYTFiNTRwNCwKKyAgICAweDEuMDA4MDQwMjAxMDA4MHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5mZGM5ZmM3YjlkMzI1ODY3NWI0OTQyNTZiNzkyOGZjNnAtMTEsCisgICAgMHgxLjAwOTJlNGI5MmU0YTBwMAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLjE1OWMxNzEyZTc0YzY4Mjc3ZmJhNThmZTcxMWY4MDI3cC0xMCwKKyAgICAweDEuMDBhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5iZDk0ZTUyMDI3OWFmODYyZmUzOWMwMDVmNDY4MjYzNXAtMTAsCisgICAgMHgxLjAxMDEwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS44MjhmODIwNzE1NjRlODRhZGI0YWY4ZWU5ZWVkN2I1ZXAtOSwKKyAgICAweDEuMDFiZThmMTBjZGFwMAorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLjlmYjhjZGNkYTZjMjY0NWUxNzQ1MzhlYTg4YWVkMjRhcC05LAorICAgIDB4MS4wMWUwNWU5NjE0MjEzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5hMzdhMDA1M2EwMWY5NTlkZmY5ZDdlZDhjMDczODIyM3AtOSwKKyAgICAweDEuMDFlNGI5NWE4ZDkzMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEuYTYwNTgwMWNiODVmMjc1MjViY2RhM2RhNWYyMDFhZDFwLTksCisgICAgMHgxLjAxZTdhY2ZjMDU3ZGFwMAorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLmE2MTljYzcxNjhmYWM1Njk3OTFjOTlkNzUxODAyNjVkcC05LAorICAgIDB4MS4wMWU3YzQ4NzBhNTZkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS5iYWZiOGRkY2Y2MTgyNzVmZTRiYTk3OWFmNTYwYTY2MHAtOSwKKyAgICAweDEuMDFmZmZlMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuY2YzZjRlMzI4NDdmNGZmY2RjYTllMWE4YTA4YTQ1NDdwMCwKKyAgICAweDEuMDIwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5iYWZkNDc3NGRiYzliNzFmYzAxYzliMjgxYjEyOTBkMXAtOSwKKyAgICAweDEuMDIwMDAwMDA2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS5iYmFhNDE1ODJiZDRiNzU1MTZiZjFlODZlZWY0YmJhOHAtOSwKKyAgICAweDEuMDIwMGM4YjQ2MTM1N3AwCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEuZWMwZDVhMDc0OTI2Mjg5ODZjYzE4ZjVkNmE2Njg4NjdwLTksCisgICAgMHgxLjAyMzhmMzkyYTIxMTBwMAorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLjRjOTc5NWZkMWY3ZTg4MDA5ZTMyNzNiZjc4MzVmMDg0cC03LAorICAgIDB4MS4wNjBkYWU4MTMxYmFhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS43OGI0ZWU0M2FmMWMwODAxMzlhNDM5MjYwNThhNmU0NnAtNywKKyAgICAweDEuMDZkZGY2YWI5NGVkY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAtMHgxLjkzY2E5NjQ1MmM4NTY4MDA0MWViZTMzOGY2M2QxMzlhcDIsCisgICAgMHgxLjA3Njg5OWQzOGNjMzBwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuYWIwOWY5MzIyMWY0MDAwMDE5NGM2NjNiZWJkNzhmNTVwLTcsCisgICAgMHgxLjA3Y2M2NDBmOTZhMThwMAorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLjY2NzFiMzY1ZDE1YmI3NmY1MDgwY2MzNjU4ZTI1MTllcC02LAorICAgIDB4MS4wZDM5ZjVmYzI0ZmEzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS42NzFhOWIxYmM2ZGE3ZmZmYzk0N2NmZGI0ZGQyNGUzYXAtNiwKKyAgICAweDEuMGQ0MDVhMWJmZTdwMAorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLmRkOWRlMmViZWU2NDg4MDEyNzI5MDBlNzg1Yzk5NmIzcC02LAorICAgIDB4MS4xMWM2MDJkOGExYjY0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS40YjU1Yjg0Yzc0Y2E4N2ZmM2QyM2IzYjgzMzQ3YzUwZnAtMSwKKyAgICAweDEuMWMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIC0weDEuOTg5N2U4NTE0OGQ3NWZmZmZmOTg4ZTA2ZGQ4ZWFlNWVwNCwKKyAgICAweDEuMWY4YjAyNjBjY2MwOHAtODUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIC0weDEuZmZiZmMyYmJjNzgwMzc1ODM3YzRiMGI4NGYzOGExNGFwLTMsCisgICAgMHgxLjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS5kZTI4ODQzNGMzNWM1ODI4MTdkZGIyNDU5NDlhNTlhN3AtNSwKKyAgICAweDEuMjRkMzU0MDIxN2IxNXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAtMHgxLmVlMzBlMDY1Mzc3ZWRkMjExYWU2N2Y0OWQxMTRhOGRlcC0zLAorICAgIDB4MS4yNWJkZThiMDliYzlmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAtMHgxLmJlZjI4NDEyYTlkODA4MDA4NzFjNTlhODQyNWQzYWE2cDAsCisgICAgMHgxLjI2MnAtNgorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLmYyNWQ2MjkxNzFhYWViMjI3NjkwNzE2N2E5YWVjZDZlcC01LAorICAgIDB4MS4yNjdlNGNmYzk5ZjkzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIC0weDEuOTA4MDg5MGUyZjE3OTgwMDNhN2YzMTY2Mjg5YTI1NTVwMiwKKyAgICAweDEuMjg4cC0yMQorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgLTB4MS5lNTYxMDY1YjAxOWM3YzhkNDk4ZThjNzg0NjQzMzBiYXAtMywKKyAgICAweDEuMjhhYTlmMjUxNWY4N3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS5hY2RjNjVhOTM1YTVlN2ZiZWIyYTA0MTRkYWUyOWRiNnAtMSwKKyAgICAweDEuMjlhNzRhMTM1ZDE3OHAtMworICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgLTB4MS5lZjBjNTUwOTA0NjZlN2ZjNWQyYmU4YjAxN2FhMWViNXA0LAorICAgIDB4MS4yOWJhMzNjMzNiYjU4cC0xMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIC0weDEuZDhkOWEyY2ZiNzlkMGIyY2U2ZGIwOWI0MDNmYmRlZjFwLTMsCisgICAgMHgxLjJjZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLjQ0NTM4ZWEwNjAzNWEwMDAwMDBlN2NjMTgyNWNhNDIycC00LAorICAgIDB4MS4zMzMzMzM1M2M4OWM1cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5wMCwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuOWM4OTlkZGI3Y2MzYTgwMTA2YmQ5MmQ5ZjMwNjA3YWRwLTQsCisgICAgMHgxLjQyZDE0YjRkYTkyMGNwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgLTB4MS43ZGRmYzViMjAwMjAzN2ZlYWI0NDYwZTY0NjY0YjA5ZHAzLAorICAgIDB4MS40ODBwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuYThlZWM2MDY1YmQ5OWZmZmZmZjIyOTNhMzRiMTkxN2RwLTIsCisgICAgMHgxLjRjY2NjY2Q2Y2VkYTdwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLmQyYjY0NDY2NWYxMGM3ZmZmZmYyZTFkMjQxODk5OGY1cC00LAorICAgIDB4MS40Y2NjY2NlY2E5MTlkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5kM2JkYjk4NDdiZjcwOWM0MzQ1Nzk2OGNhNmUyODY0NnAtNCwKKyAgICAweDEuNGNmZTFhOGMzMGVkNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuZDZjZjEzNjUzYjkxNDY0MzE5MjgyMDg4ZWVmZjRjOTdwLTQsCisgICAgMHgxLjRkOTEzZTM1YWVhNGVwMAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgLTB4MS5mMTIyNWFjNDM2NjIzN2ZkYjMwM2EwNTk3YTNjOGY0YXAtMiwKKyAgICAweDEuNGVkMzE4MjM2Yzg1YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLmYzNzE5NjQzMGMyYmVlYzI2YjFjMzFiZjM4ZDU3ZjQ4cC00LAorICAgIDB4MS41MmZhZjUxMGUwMjJkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS5mMzhjMGM4MzI1ZDg1YWQ2NTliMjE3NGEzZWJmNmY1NXAtNCwKKyAgICAweDEuNTMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS5mZmVkZWFjNGQxNzZmN2QyY2RlMzQ0YjdlYzcwZjE2NnAtNCwKKyAgICAweDEuNTU1ZTMwYmJkYTY5ZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuZWYzNWFhMWM2YjFhNzdmZDlkZTQ1YTFlMTcyYjAyYzZwMCwKKyAgICAweDEuNTdlZTk4MjQ3ZDk2NnA2CisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLmUyODBmZTliOGNmODU3ZmRjM2FkMGRjODEyZTU4ZDFkcC0yLAorICAgIDB4MS41YTA1ZDg1M2M3N2M5cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLmRhZTMzMTFkYTRjNDA4ODQ2NDhjNDFhODMwZGZlMzcycC0yLAorICAgIDB4MS42cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLmNiYWM4YmEzNTJkZTNiZTJhNWNjYThmYjk2NDAyODYycC0yLAorICAgIDB4MS42YzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS5kOTdlZGM2Y2IwOTZhODAwMDAwYzY2Njk5NTQyMDI1NnAtMiwKKyAgICAweDEuNzMzMzMzNDIxN2I5YXAxCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuNGZiNjg4MzhjY2ZhMjdmZjIzMTFlZWNiNTA4ZDU5MjhwLTMsCisgICAgMHgxLjc1NjNjMzg4N2RiMjhwMAorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLmY4ODcxYzE3NDc3OGM3ZmZmNTczMWFjZjJlYTQ0NjdjcDAsCisgICAgMHgxLjc2MDAwMDAwMDQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuZjJjMTRjMmY2YzVjOWRiZTdjODI4NGIxNWZlMDE3ODdwLTQsCisgICAgMHgxLjgyZDBiNDJkMGI0MjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIC0weDEuZGIxZDk5MGUxMTFlZTc2NmU5NjIxMDRmYmJmMGYwMDNwLTQsCisgICAgMHgxLjg3ZmQ2ZGE2MWMzZGJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIC0weDEuODhiZGNhMDI0ZjMyZTgwYTFkZTY2NzFiMjI1NjA3NTlwMiwKKyAgICAweDEuODgwcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgLTB4MS5kMDNiOGNlNjA1MWM5N2ZkZDQyNTY0N2YzNzM5ZDdhN3AtNCwKKyAgICAweDEuOGE2NTNkOTkyODJhYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgLTB4MS5jMmQ4MjZmNmFkNWZlODE2MjU5MmNjMDM2ZTA2OWNlZHAtNCwKKyAgICAweDEuOGQ2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAtMHgxLmMwMjYxOGUwNDQ3ZDI3ZjllYmI1MTQ2MmQ2OTc4ZjI1cC00LAorICAgIDB4MS44ZGZhNDNmZTVjOTFkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLmVlYWExOWZjMzRmODE3ZmRhMzQwYWViN2I2NTIwNzVicDMsCisgICAgMHgxLjkxNWM3ODJlMjBiN2NwLTUyCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLjk3N2Q5NTg3OWRhMDhmZmZmZmYxNjc0OWE5YmMxMDIxcC0yLAorICAgIDB4MS45OTk5OTlmNjFlMWFhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAtMHgxLjY1ZGY2NTEyZjc2ZDE3ZmZmZmVmYzcxNjg5Mzk1YWJlcC0xLAorICAgIDB4MS45OTk5OWE1OTQ0NTQycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAtMHgxLjY1ZGY2NGM0MzA1NTU4MDAwMDEwNzRiNjEzZjgzNTA4cC0xLAorICAgIDB4MS45OTk5OWFlYTYxN2NlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLmZmZmZmZWM4ZTRhZDY4MDAwMDEwNTgwOWZlZTdjNjhjcC0xLAorICAgIDB4MS45OTk5OWJkNmFlMDczcC00CisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEuYjg4MjQ1Zjg2ZGY4YWZmZmZmMjMxM2FmOGE5MTBmNmJwMCwKKyAgICAweDEuYTQ4ZjUxYzI3ZjNlZnA1CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEuYzAzZWM4MDVjNTJjOTI0NDcyNjhkNzk0OTU4OGU2MDhwLTMsCisgICAgMHgxLmE3Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuZTM3YWJlMDk1MzlhZDdmZGIyY2JiOWMxOTc1ZDFmYzJwNSwKKyAgICAweDEuYjFhZjI4NmJjYTIwOHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS5kN2Y1OWFiMmJjZDA1N2ZmZmZmZmI0YmI2MWVmZmI2ZnAtMywKKyAgICAweDEuYjMzMzMzMzk4ZTllNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuZDdmNTlhZTg5MDhhYTdmZmZmZWY3ZjNmMTc4MjMxNjJwLTMsCisgICAgMHgxLmIzMzMzMzUzZTUwN2NwMAorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLmU2N2I0NGJhNDg1MTg4ODk4MDEyYzA1MzZjNjA0YTE1cC0zLAorICAgIDB4MS5iYTVkMmU5NzRiYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAtMHgxLmQ1MWU3NGUyMjM1ZjkwMDFjOTAyZjQ5YjNkMzliZTg4cC01LAorICAgIDB4MS5jMGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEuYzI1MGI1MzdlNzRiYzgyNjVjN2IxYjBlYjNjYjc1NDFwLTUsCisgICAgMHgxLmMzMjBjODMyMGM4MzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS5jMTQ5N2FhM2VlNzdmN2ZjZjBiYzk2Yzc0MThmMDRiNnAwLAorICAgIDB4MS5jNzFjNzFjNzFjNzFlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS43OGQ4MzUxMTVhZTlmN2ZmMGMwNjgwNzgzODg5ZTZhMXAwLAorICAgIDB4MS5kYTZkMzY5YjRkYXA0CisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLmVlODQ0ZDIzMTIwZTZmZjRiOWQyN2Y4Y2UzMGIzY2MycC02LAorICAgIDB4MS5kZGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIC0weDEuYWY3YmNlYmExMDUwZDdmZWVhZDZlZjkxNjI1YjkxZGZwLTYsCisgICAgMHgxLmUxZGZmODYxODkxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuZTNkYmQwOTQzMWQwZDdmZGYyNzU1Yjg1YmU4YTE2NzZwNSwKKyAgICAweDEuZTNiMjFiYzE3NzllY3AyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIC0weDEuN2FlYTJhYWIxM2EwNDgwNzI5ZGVjNzQ4NjU4YjM0ZmRwLTYsCisgICAgMHgxLmU1NzJiOTVjYWU1NDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS5jOGRlMmZiYWZlMTg1ODAwMDNjZGFhNzc0YTczZDBjMHAwLAorICAgIDB4MS5lNzM5Y2U3MzljZTcwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuMGNlNDQ2ZTNjYTEwYzAwNGQ2M2ZiNzBmYWI2YTI2ZmZwLTYsCisgICAgMHgxLmVkMDM0MGQwMzQwZDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIC0weDEuZmNmNDU4ZjZmYWE0MzgwMDk3YWYxZGI0YjI5MTBjN2RwLTcsCisgICAgMHgxLmVlMDMzMDkyZmU2MjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIC0weDEuZmJlMDk5MDBmMmU5ZDdlM2JiYmUwYmQ0NTVjOTIwMzhwLTcsCisgICAgMHgxLmVlMGNjMzMwY2MzNDdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIC0weDEuZjk0NTRhZDhjNThhNjgwMTcyM2Q0ODkxNGJkYmM4MWJwLTcsCisgICAgMHgxLmVlMjNlZTVkZjc0NWRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS4yYzg1OGEyMzI2Y2VkODAwZGQzZWQzYWQwM2UwZWZlZHAtMSwKKyAgICAweDEuZWU4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS43ZjY5NGNjMzVhNGRhODAwZmI2ZTZmMTdhNTkwM2UxN3AxLAorICAgIDB4MS5lZWJiYWVlYmJhZWU4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIC0weDEuZTJjZmJiNDkzNDgwNmZlNjk4NjM4ZDkzMjVjZTBkZTZwLTcsCisgICAgMHgxLmVlZWJiYWVlYmJhZWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIC0weDEuYzNkMDgzNzc4M2NhYzgwMDUzNzQyMDllNjI0OGZiMjJwLTcsCisgICAgMHgxLmYwMDAwMDAwMDAwOGJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIC0weDEuNTE4MjRjNzU4N2VjYzRjYWUwZWJlMmE4ZWFlODk0YjBwLTcsCisgICAgMHgxLmYzZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIC0weDEuZDBlZjdkODNjNTBhNzdmZGYwYTlkZjc2MjUxNzRkZjZwMCwKKyAgICAweDEuZjQ2cC03CisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAtMHgxLjNjYWQyNjMzMDEwMjg3ZWM1MjFmM2ZiMWIwZTE2YzM0cC03LAorICAgIDB4MS5mNGJiODNmZjI1NDA4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAtMHgxLjMwMjYwZWNiZTVlNDg4MDE5MzA3MjFhMmU0Mjc4OTVhcC03LAorICAgIDB4MS5mNTJjNjkxMjUxOTE5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAweDEuNjkzN2UwNjc0ZGFlMzdmZWMwMjA0NzNkY2FkOGM3ZTVwNywKKyAgICAweDEuZjVhODE0YWZkNjlmNHA1OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAtMHgxLmY3ODg4N2E4ZDcwZGEwMDA5MmFjMDk2ZTBjMmE3NDhkcC04LAorICAgIDB4MS5mNzA1ODhmMTQ0ZDRlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS5mNmY4NDcyZTA2NTEyODAxNTAxMzcxY2VlYjY5MDJjMXAtOCwKKyAgICAweDEuZjcwODE1OWFhYjBmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIC0weDEuYzU3NWJjNzExZjU3ZjdiY2Q1ZTY1MjE5YjAxYzgxOWNwLTgsCisgICAgMHgxLmY3ZTg0OTg2OGM5MDdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAtMHgxLmMwM2E4MGFlNjA4MDg3YmNlYzRiOTViNDNjYzdjZjY4cC04LAorICAgIDB4MS5mN2ZmZmZmZmZmZjRjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjJkNTM2ZTQyODQ1Zjk3ZmU1NjBmYTdiNDUwODA0YjI2cDgsCisgICAgMHgxLmY5ZmU3ZjlmZTdmOWNwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIC0weDEuZjU2OGU3N2VkODRiMTM3MmM5NGNmZjVlN2UzOGU5ODVwLTEwLAorICAgIDB4MS5mZGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAtMHgxLmJlMjAyYmFiZDM4OTIxMjM1NjUyZGIyODc5MDdmNjM0cC0xMCwKKyAgICAweDEuZmRmZjYyNDVhMTJmMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIC0weDEuYmQ5NmExZDdkYTAzOTE1MjBlMTU5NWUwOTA0NzY4ZmZwLTEwLAorICAgIDB4MS5mZGZmZmZmZmZmZmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgLTB4MS5iZDk2YTFkN2Q5ZDliNjNlNWFhN2QwODJhMTQwZDczOHAtMTAsCisgICAgMHgxLmZkZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAtMHgxLmJkMjcwNDViZmQxZTI0NzY3ZWIxZmFkZGEzOGI4MmUycC0xMSwKKyAgICAweDEuZmVmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIC0weDEuYmQyNzA0NWJjNzdjNzc5ODUzYjZmYzdiNDE5YWNiNDlwLTExLAorICAgIDB4MS5mZjAwMDAwMDAwMWVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgLTB4MS5iZDI1ZTA1NmI2MzhkODEyYTgxZDQ4YmYyZGQ1YzA1NXAtMTEsCisgICAgMHgxLmZmMDAwMGE3YzViMmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAtMHgxLmJkMjI2NTI5YmZmYTc4MDFiNTRkMWU2OTVmOWNmNDZhcC0xMSwKKyAgICAweDEuZmYwMDAyYTdjNWIyYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIC0weDEuZDhjMWY4ZjI5ZDg2MjM4NzEzM2E3ODE0Y2IwNjFiNmRwLTEyLAorICAgIDB4MS5mZjc3ZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgLTB4MS43Yzg1NjU3Mjg5ZmJlODI3NWMxOTcxZTk1M2E2YWU3MXAtMTIsCisgICAgMHgxLmZmOTI4NWUxYWU5YzhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAtMHgxLmVhN2ViZWM1MTFhNjliMzdiOTcyZDQxYTUxN2NkODg0cC0xMywKKyAgICAweDEuZmZiOTZlNWI5NmU0MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIC0weDEuYzRlMjkzYjE0OGNlYzg0N2I0ZTIxNGM3NjY0MmNkNzNwLTEzLAorICAgIDB4MS5mZmJlZDczZWMyNjRlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgLTB4MS5iY2QzN2YxZWIwNmZmN2NjMTEwYThiZDBlZmMyODA0YnAtMTMsCisgICAgMHgxLmZmYmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAtMHgxLmJjZDM3ZjFlYjAwMGJiZjg0MWY1MTRlNzhiMGJlYzY3cC0xMywKKyAgICAweDEuZmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgLTB4MS44NTM2MDQ3ZmI5ZDRmM2I1Y2JhOTVjYWJhY2FlMjJhZXAtMTMsCisgICAgMHgxLmZmYzdmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuMzQzNTczZWZhNGM0YzAwMDA0NzY0OGQ0ZjM0OWRmY2VwLTEsCisgICAgMHgxLmZmZTRlZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIC0weDEuODUyMzY0MjdhMDg3MTdlZmM4OWViY2IxNTliMGI1NzhwLTE2LAorICAgIDB4MS5mZmY4ZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgLTB4MS5lOGRmNzQyMWYwNDFmZmZmZmU1YjA5NDk3NjFlYzY1N3A1LAorICAgIDB4MS5mZmZhM2JmZmZmZmZmcC0yMDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLmUyZWZiYzFkYzkyMzM3ZDdhNjc5YWI2Yzk4ZmFiNzM5cC0yMCwKKyAgICAweDEuZmZmZjc0ZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIC0weDEuMzQ0MTM2NTc4MTY1NzdmZDQzNmZjYmM0YWEzMmRlODhwLTIsCisgICAgMHgxLmZmZmZmZTdmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAtMHgxLmQwY2E1MWY5NWFjMTk3ZmUxYWRkNjRiNjExOWNiNDU0cDcsCisgICAgMHgxLmZmZmZmZjNmZmZmZmZwLTc3MworICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIC0weDEuZjAxOGYxNWMwYWI2MDk0MjA5ZmNmZTA4M2ViYzMwNmVwNCwKKyAgICAweDEuZmZmZmZmZmZmMWZmZnAtMTA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLjQ2NTEwNzI1OGQxZDE4MDAwNjJmZWU4MmJmZmJmZjRjcDYsCisgICAgMHgxLmZmZmZmZmZmZjlmZmZwMjcwCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgLTB4MS45YTlhZGJhNjQ2ZDhlN2ZmMzllYmU1YzViNjUxZWNiY3A3LAorICAgIDB4MS5mZmZmZmZmZmZkZmZmcC02ODMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAtMHgxLjE2YzBmNzc2ODM2ZDhmZmU1MTVkNjc5ZWQ4YTI1M2IxcDgsCisgICAgMHgxLmZmZmZmZmZmZmRmZmZwLTkyNworICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5kNTliNTZjZDJmM2NjODAyMDljZTgwNTZkMzQ3N2EwOHA3LAorICAgIDB4MS5mZmZmZmZmZmZkZmZmcDc3OQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0weDEuY2U2MWNmOGVmMzcyZjdmZTAzYjE5N2QwNWRlY2ZmMGVwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmOGZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAtMHgxLmM4NWM4OTg1YzE5OWM3ZmMxNGQ5NThiYTkyZTM5OWRicDcsCisgICAgMHgxLmZmZmZmZmZmZmZmZTBwLTc1OQorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEuYmNiN2IxNTI2ZTUxMWFjMTYwZTFhMzI5ODAxMGQ5NmRwLTUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgLTB4MS4zNDQxMzUwOWY3YTAwNTYyZDJiZjA1MDZlZjQ0ZTNhNXAtMywKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuOGUyNzFkYTQwNTZhNDM5OTNmZGIxMzQ4NzAzMWZiZDRwLTQsCisgICAgMHgxLjk5NTI1NWYyZDAwYWJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLjk3NjJiZTI2YzJjNTdkY2FlMDExOGUwY2NlZDZlNzVhcC01LAorICAgIDB4MS5jODlhYzU3ZGFjNThhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS5jNjk0YWNlMDhlNTEyNGY3MzI3Y2Q1ZGExZmM0ODBmNnAtOCwKKyAgICAweDEuZjdlMzM1MDg4OGE2OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS4wNjQ2NjRkMGRkNDdjYjA3ODRiMTE3ZDJlZmIwYWZiMnAtNSwKKyAgICAweDEuMTM5NWQyNDliMjdhNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLjE1OGJlZTFlNTZiZTk3NGMxNzg0NGQwNzM2OTI1YTgzcC00LAorICAgIDB4MS4yYjNhMGEwZjIwYTE0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAweDEuOWNkMTBiMDA4ZGRkNzM5ZGU5ZTZkODQzYjhmZjQwOTJwLTQsCisgICAgMHgxLjQyZGU0MWQ0OGVjODRwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIDB4MS4wZDQyZjg0Nzk4YjRiZTFkYjAyNDMxZjczYzcxMGI1ZnAtMywKKyAgICAweDEuNWE4Mjc5OTlmY2VmNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLjQ3ZjcwNjQ3NjQ0YTUzOGRkNzE3YzNmMGM5OWI0ZjUycC0zLAorICAgIDB4MS43MjI2YjE1ZjZiMTY0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAweDEuN2YwODU0OGUwOTkyNTUyMDU0YzgyZGVmZjY1YzVhN2VwLTMsCisgICAgMHgxLjg5Y2FlOTI0ZDkzZDRwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS5iMmUzN2JlZjAyY2E2NWE2YjY5ZWYwZWY2MDQ1ZmNhOXAtMywKKyAgICAweDEuYTE2ZjIwZWE0NzY0NHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMHgxLmUzZTMxZWI1NTg1ZDZkZWZiZWNmMTAwM2VkODU4NmRkcC0zLAorICAgIDB4MS5iOTEzNThhZmI1OGI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAweDEuMDkyOWQ1MDY4NTFiNzU5YWM4Yjk3MWEzNjViYjUzYmZwLTIsCisgICAgMHgxLmQwYjc5MDc1MjNiMjRwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS4xZjNiMTQ0ZDI5MDNhYTBlMTViNWQzYzY3ZDUzZjkxYnAtMiwKKyAgICAweDEuZTg1YmM4M2E5MWQ5NHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLjM0NDEzNTA5Zjc5ZmVmMzExZjEyYjM1ODE2ZjkyMmYwcC0yLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLjM0NDEzNTA5ZjdhMDA1NjJkMmJmMDUwNmVmNDRlM2E1cC0zLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgLTB4MS5lZGM3YjI4YzFjZGZmNjQ2YWZhMWJkY2Q0ZTZhMDJmMHAtNCwKKyAgICAweDEuODNlNjA5MjYzYzAxMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEuN2FmOTczNThiOWUwYTQyNGZhNzAyZTY5ZDRhYzNhOGNwLTQsCisgICAgMHgxLjlkYzIyYmU0ODQ0NTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLjBmMjE4ZWFjYjY0ODdkZDBjNjA2YzNlODE2ZTdjM2RhcC00LAorICAgIDB4MS5iNzllNGVhMmNjODlicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS41MmU4NDk1MGQ0YzMwN2Q5YmVkZWE0N2QzOTg3YzAxYnAtNSwKKyAgICAweDEuZDE3YTcxNjExNGNlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0weDEuMjUxOWI3ZjFjYjNkOTRkMzMyNDRhNmM3MDhmZmFlZmNwLTYsCisgICAgMHgxLmViNTY5NDFmNWQxMjVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAweDEuMWY4MTAyZmFhOWZkMzAxYWE1NGNkMTM1OTllZjE5ODBwLTgsCisgICAgMHgxLjAyOTk1YjZlZDJhYjVwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS5hMzBhOWQ2MDllZmM0NzUxZDlkMjAzNjNmYTg1MmU2M3AtNiwKKyAgICAweDEuMGY4NzZjY2RmNmNkOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgMHgxLjc3MDZlMTAwZTAxZDRkYTEzY2M1OTQ0NmRmNTk2OWQ5cC01LAorICAgIDB4MS4xYzc1N2UyZDFhZWZicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuMGE5NjVjYTNjNTlmYTY4NDNlYzM5YzE3Mjk4YjFhYWFwLTQsCisgICAgMHgxLjI5NjM4ZjhjM2YxMWVwMAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDB4MS41NjRiOWUxMzVkMWYwZjIzM2JkNjdlMDJiYzViZjZlYXAtNCwKKyAgICAweDEuMzY1MWEwZWI2MzM0MXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLjllZTk5M2I4MGYyMTM2Y2E2YmZiNjZiOWM3YjI1NDI4cC00LAorICAgIDB4MS40MzNmYjI0YTg3NTY0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAweDEuZTRhZTUzZWJiY2VmYmQwNDg4MmYxMGFhYTNkZTg2YjdwLTQsCisgICAgMHgxLjUwMmRjM2E5YWI3ODdwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDB4MS4xM2U4NzY2MWQ2NGY1MjQ2YjVhOGQ2OTIxNDc0NjMzMXAtMywKKyAgICAweDEuNWQxYmQ1MDhjZjlhYXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgMHgxLjM0NDEzNTA5Zjc5ZmQ4ZmY2YjY2NjFhOTNlYWQ2MjNicC0zLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLmZmYmZjMmJiYzc4MDM3NTgzN2M0YjBiODRmMzhhMTRhcC00LAorICAgIDB4MS44cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS41NjM0NjI2YjAyMTFjNDg3MzhiMzNmMDdkMTU5NDQzMXAtNCwKKyAgICAweDEuYTY2NjY2NjY2NjY2NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuNzZkODY5YjAyYTAzNWExMDc5Nzk1M2YwNThiNTJlY2FwLTUsCisgICAgMHgxLmNjY2NjY2NjY2NjY2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLjY4NGJmN2ZkYTk4YTFjNTllZmFhYzYyNzI5MzlkY2Q2cC03LAorICAgIDB4MS5mMzMzMzMzMzMzMzMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLjViMmE1Y2ExZjQ3YjE1YjY0NGIzM2M2NDA5MjNiZjM1cC02LAorICAgIDB4MS4wY2NjY2NjY2NjY2NjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAweDEuYTMwYTlkNjA5ZWZkZDY4MTIwMDhkZmJiODIzOWJmOGNwLTUsCisgICAgMHgxLjFmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS40NDUzOGRlM2IyN2U0YzhiY2QxMWU5MzRlNDE1ODNhYXAtNCwKKyAgICAweDEuMzMzMzMzMzMzMzMzMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgMHgxLmIwMmI3MjhmYjYxNjgwNDBlMmM0ZTVlN2ZiMzgwOWIxcC00LAorICAgIDB4MS40NjY2NjY2NjY2NjY1cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAweDEuMGFlYzZlNGEwMGZlYzMwNDhmZWI1MDUwNzBiYjRmMTRwLTMsCisgICAgMHgxLjU5OTk5OTk5OTk5OThwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDB4MS4zYjAzNDk5ZmZjYzdkN2IyOGEyNTRmNjEyMmE2YTRkNHAtMywKKyAgICAweDEuNmNjY2NjY2NjY2NjYnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMHgxLjY4YTI4OGI2MGI3Zjc4OTc4NGI1NTE0Njg4MGQ5Y2UxcC0zLAorICAgIDB4MS43ZmZmZmZmZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAwLjAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS5lMWE1ZTJkZjkyZTllNWJjYzA4ZDM4MzlhM2U1NDY5N3A0LAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS5lMjRmNmUzZmUzYWY1NDcyZjMzMmNhODViZGJiOWQ3N3A0LAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS5lMmVhMzY2ZDc2OWM2NGMyOThlNDJjN2I3YTdmNDY5M3A0LAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIDB4MS5lMzc4OTkyMzRlZmMzNTViOTkxOWZmZTM2N2E1MTIwOXA0LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS5lM2ZjNmQzOTc3MmU4NThkNGI4NjA3ZDU5YmI4ZDBkZHA0LAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIDB4MS5lNDc3MjdmMGZmMDBlNWQ2NmEwY2Q5ZDA2NmUyMjhjM3A0LAorICAgIDB4MS44MDAwMDAwMDAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS5lNGU5ZjYzMDMyNjNlNTU2OTc2MGUyNTg4M2EyMzc3M3A0LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIDB4MS5lNTU1Y2UxNGRlNjc3ZGE1OGM2Y2JlMjYwMzM0Y2YxYnA0LAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS5lNWJiN2I3ZWUyYjM2NGMzOGQ4NDllZDMzOGZhODA0ZHA0LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIDB4MS5lNjFiYTkzNThlYWFmNzAyOTU5YjJhNGJmZmZkY2EyOHA0LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS5lNjc2ZTdiM2JhYzg2NTc5ODUwOTgzMDcwNDQxMmIyM3A0LAorICAgIDB4MS4wcDEwMQorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS5lMWE1ZTJkZjkyZTllNWJjYzA4ZDM4MzlhM2U1NDY5N3A1LAorICAgIDB4MS4wcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS5lMWZhYTg4ZmJiNGM5ZDE3ZDllMDAxNWZiMGQwNzIwN3A1LAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS5lMjQ4MGNhNjg0YzMyNTNmYWNiOGIyNWE4ZjMyNDY5NXA1LAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS5lMjhmM2UwMTcwZjMwZDhjMmNkMzljMGU4NWM1MmM1MHA1LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIDB4MS5lMmQxMjgwYzg1MGMzNWE1MDYwOWEwMDc5ZmNmMGJiYXA1LAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS5lMzBlODU2ODQ4ZjU2NWM5OTU0ZDA5MDUwNTYzYjdhZHA1LAorICAgIDB4MS44MDAwMDAwMDAwMDAycDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIDB4MS5lMzQ3ZWM4N2UyYTZlNTg5YWJmNzBkNDkxM2MzYmYwNXA1LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5lMzdkZDg3YTM4YThiMWIxMjY3Y2ZiMmZkMzhkMGFkOXA1LAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIDB4MS5lM2IwYWYyZjNhY2VhNTQwMjcwOGViODY2ZTZmZTM3MnA1LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIDB4MS5lM2UwYzYwYTkwY2E2ZTVmYWIxNDMxNDJkMWYxODg2MHA1LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIDB4MS5lNDBlNjU0OWE2ZDkyNTliMjJjYjVkYTA1NDEzMzhkZHA1LAorICAgIDB4MS4wcDIwMQorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS4yZDA3YWRjYmJiZDIyZjk1Zjg1ODQzMjQwNjZmNGMxZXA4LAorICAgIDB4MS4wcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAweDEuMmQxMjQ2ODFjMGRlODY4MTViODI5YzQ4YzgwY2IxOGNwOCwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLjJkMWJmMzA0OWEwZDU3ODY1NWRkYjI2ODIzZDhlYzFlcDgsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIDB4MS4yZDI0ZDkyZmY3OTM1NDhmZTVlMTBmOWVhMmFiNDhkNXA4LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuMmQyZDE2NzE1YTE2Nzk5MzAxMDdkMDFkYzVlYzg0YzNwOCwKKyAgICAweDEuNjY2NjY2NjY2NjY2OHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgMHgxLjJkMzRjMjFjZDI5MzlmOTc5MmYwM2QzZDcyOWYxYTQxcDgsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS4yZDNiZWYwMGM1YzljZjhmOTVjNTdkYzVmNDZiMWIyY3A4LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEuMmQ0MmFjN2YxMDhhMDkxNDg1MTYzYjgyY2M2NDQ0YTZwOCwKKyAgICAweDEuYjMzMzMzMzMzMzMzNnAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLjJkNDkwNzU1YjBjZWM3ODY2NTI3Yjk4ZDlmYzA5ZmJhcDgsCisgICAgMHgxLmNjY2NjY2NjY2NjZDBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDB4MS4yZDRmMGEzMTFiOGU0MGFhNTVhOTIyNDUyYzMwZDQ1N3A4LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAweDEuMmQ1NGJlMThmZTUwMTc5MWM0YTAwN2QwZGM3NTBhNjdwOCwKKyAgICAweDEuMHAxMDAxCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgLTB4MS5iY2I3YmYzODJjNmZiM2RmMDAyOWUxZTZjMDRlNWIwNHAtMjIsCisgICAgMHgxLmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgLTB4MS4yODdhNzk0ZTI0NjQwZGU3OWZiNWRkMzkwMzNmMWMzYXAtMjMsCisgICAgMHgxLmZmZmZmNTU1NTU1NTVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEuMjg3YTczMWYyZmUwOGZlYTU1YTc4YjE1MDEzMDY4NTBwLTIzLAorICAgIDB4MS4wMDAwMDU1NTU1NTU1cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuYmNiN2EzNmNiMTVhOGNlYzBjMzliMGE3Y2YyZDc4NThwLTIyLAorICAgIDB4MS4wMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgLTB4MS5iY2I3YjE1NWU3YzA0NWQ4OGIyY2NkODc5ZDAwZGVkYXAtMzIsCisgICAgMHgxLmZmZmZmZmY4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIC0weDEuMjg3YTc4ODhhZWM5NTc0MGExNjZlZmFmODc1NmVhYTFwLTMzLAorICAgIDB4MS5mZmZmZmZmZDU1NTU1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMHgxLjI4N2E3MTk0NDRiNjFkYWEwOTY4Y2ExZjU1YTZiZTlhcC0zMywKKyAgICAweDEuMDAwMDAwMDE1NTU1NXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLmJjYjdiMTRlZjRlMTgwOGVkMWU5NDBhNjViMmQ1ZjBmcC0zMiwKKyAgICAweDEuMDAwMDAwMDQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAtMHgxLmJjYjdiMTUyNmYyZjNmMDMxM2VmMTIwZTJhYjg4ZTk5cC00MiwKKyAgICAweDEuZmZmZmZmZmZmZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAtMHgxLjI4ODNiYTBhYTYxZWZiNGI1ZWM1ODgyZDE0MjZhMTE4cC00MywKKyAgICAweDEuZmZmZmZmZmZmZjU1NXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDB4MS4yODY3ZWU4ZjkwOTU0NWQ2Y2Q0NDg0YTU4MjQ5NWExZnAtNDMsCisgICAgMHgxLjAwMDAwMDAwMDA1NTVwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS5iY2I3YjE1MjZkNzI4NzUxYzE4MGMxMmIwMDRkZDY2NXAtNDIsCisgICAgMHgxLjAwMDAwMDAwMDEwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLmJjYjdiMTUyNmU1MTFhYzE2MGUxYTMyOTgwMTBkOTZkcC01MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIC0weDEuNGQ4OWM0ZmRkMmJjYmEwMjQ1NDU2NWU4NWNjNDZmNWZwLTUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLmJjYjdiMTUyNmU1MGQ1NDRhZDJjYzFlY2QzZTJhMjQ5cC01NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMHgxLmJjYjdiMTUyNmU1MGFiOTM3NDhkMDc5NTQ3NDYzZWJmcC01MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLjM0NDEzNTA5Zjc5ZmVmMmRhNWEzNTBiMzNhNTc0ZWI1cDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIC0weDEuNDM0ZTY0MjBmNDM3M2U1ZjA1MTcxZDE5ZTQxODRkMjVwOCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIC0weDEuMzQ0MTM1MDlmN2EwMmNiMWExZjY1YmFmNjBjYjE1ZGZwLTMsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAtMHgxLjM0NDEzNTA5ZjdhMDA1NjJkMmJmMDUwNmVmNDRlM2E1cC0zLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTB4MS4zNDQxMzUwOWY3OWZkZTE0MDM4N2FlNWU3ZjdiNjkxZHAtMywKKyAgICAweDEuNmEwOWU2NjdmM2JjZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS4zNDQxMzUwOWY3OWZiMWIwOWMyZjBiMDBjZDI3MzAwMXAtMywKKyAgICAweDEuNmEwOWU2NjdmM2JjYnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLjM0NDEzNTA5Zjc5ZmQ4ZmY2YjY2NjFhOTNlYWQ2MjNicC0zLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEuMzQ0MTM1MDlmN2EwMDA0ZTNhOWRiODUxYWU3NmRjYzNwLTMsCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwMAorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEuMzQ0MTM1MDlmNzlmZmQxNmRjOWQ0NmNhOWU0YTBkM2NwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAtMHgxLjM0NDEzNTA5Zjc5ZmVmMzExZjEyYjM1ODE2ZjkyMmYwcC0yLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgLTB4MS4zNDQxMzUwOWY3OWZkMzY1YTNmZDhjNzMwOWE0ZDgxZHAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIC0weDEuZmZiZmMyYmJjNzgwODE3NmQ1NTI2ZGM1Y2JmNWFiYjBwLTQsCisgICAgMHgxLjdmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAtMHgxLmZmYmZjMmJiYzc4MDM3NTgzN2M0YjBiODRmMzhhMTRhcC00LAorICAgIDB4MS44cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgLTB4MS5mZmJmYzJiYmM3N2ZlZDM5OWEzNmYzYWFkNTkyMzJjOXAtNCwKKyAgICAweDEuODAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS42OGEyODhiNjBiN2Y5ZGE2ZDM3YzJmY2Q0N2Y3NzAwOHAtMywKKyAgICAweDEuN2ZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLjY4YTI4OGI2MGI3ZmMyYjYyMjQzMGU1NDA2NTVmNTNicC0zLAorICAgIDB4MS44cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEuNjhhMjg4YjYwYjdmZTdjNTcxMDllY2RhYzMyOTJjN2JwLTMsCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDB4MS4yODE3Y2U5MDg0MmMwZTVkOWNhNDQ0ZWU5M2MyZjJiMnAtMTAsCisgICAgMHgxLjAwYWFhYWFhYWFhYWFwMAorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS4yODE3Y2U5MDg0NDdjNzVkNWNhMDgxZDQ3NzE0YmM0Y3AtMTAsCisgICAgMHgxLjAwYWFhYWFhYWFhYWJwMAorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS4yODE3Y2U5MDg0NjM4MDVkMWM5Y2JlYjg5ZmZkN2E5OHAtMTAsCisgICAgMHgxLjAwYWFhYWFhYWFhYWNwMAorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS4zNDQxMzUwOWY3OWZlODNlNDA0ZDY5OWVkMzUwYWRjYXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgMHgxLjM0NDEzNTA5Zjc5ZmVmMzExZjEyYjM1ODE2ZjkyMmYwcC0xLAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEuMzQ0MTM1MDlmNzlmZmQxNmRjOWQ0NmNhOWRhMzQ4NTlwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDB4MS4zNDQxMzUwOWY3OWZlMTRiNjE4ODFmZTU4ZmE4MzhhNHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLjM0NDEzNTA5Zjc5ZmVmMzExZjEyYjM1ODE2ZjkyMmYwcC0yLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEuMzQ0MTM1MDlmN2EwMGFmYzlhMjdkYTNkMjQ0ZDZkYzNwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIC0weDEuYmNiN2IxNTI2ZTUwZWExZDQ5N2M5ZjE4OWUxOTcxNWVwLTU1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMC4wLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEuYmNiN2IxNTI2ZTUwZDU0NGFkMmNjMWVjZDNlMmEyNDlwLTU0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAtMHgxLjM0NDEzNTA5Zjc5ZmZkMTZkYzlkNDZjYTllNGEwZDNjcC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgLTB4MS4zNDQxMzUwOWY3OWZlZjMxMWYxMmIzNTgxNmY5MjJmMHAtMiwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIC0weDEuMzQ0MTM1MDlmNzlmZDM2NWEzZmQ4YzczMDlhNGQ4MWRwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAtMHgxLjM0NDEzNTA5Zjc5ZmY2MjNmZGQ3ZmQxMTVhYTE5ODE2cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgLTB4MS4zNDQxMzUwOWY3OWZlZjMxMWYxMmIzNTgxNmY5MjJmMHAtMSwKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIC0weDEuMzQ0MTM1MDlmNzlmZTE0YjYxODgxZmU1OTA0ZWZkODZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAtMHgxLmNlNjFjZjhlZjM2ZmVkYmM4ZDYxNTZiZDY2MWUyOThlcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgLTB4MS5jZTYxY2Y4ZWYzNmZlNmM5YWU5YzBkMDQyMjc1YjQ2OHAtMSwKKyAgICAweDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIC0weDEuY2U2MWNmOGVmMzZmZDhlM2YxMTE3OTkxOWJjYjhlZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAtMHgxLjM0NDEzNTA5Zjc5ZmYyYWE4ZTc1NTgzNGI4Y2Q1ZDgzcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAtMHgxLjM0NDEzNTA5Zjc5ZmVmMzExZjEyYjM1ODE2ZjkyMmYwcDAsCisgICAgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAtMHgxLjM0NDEzNTA5Zjc5ZmU4M2U0MDRkNjk5ZWQzYTQxMDNicDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAtMHgxLjgxNTE4MjRjNzU4N2VlNzZkNjNhMDUwYWJlOGJhNjNmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAtMHgxLjgxNTE4MjRjNzU4N2VhZmQ2NmQ3NjAyZTFjYjc2YmFjcDAsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAtMHgxLjgxNTE4MjRjNzU4N2U0MGE4ODEyMTY3NGQ5NjI1OGY3cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAtMHgxLmNlNjFjZjhlZjM2ZmVhNDMxZGZlYjFlMGM0NDllZWZicDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAtMHgxLmNlNjFjZjhlZjM2ZmU2YzlhZTljMGQwNDIyNzViNDY4cDAsCisgICAgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAtMHgxLmNlNjFjZjhlZjM2ZmRmZDZjZmQ2YzM0YWRmMjBhMWIzcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAtMHgxLjBkYjkwZTY4YjhhYmYzMDdiMmUxYWY1YjY1MDQxYmRicDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAtMHgxLjBkYjkwZTY4YjhhYmYxNGFmYjMwNWNlZDE0MTlmZTkycDEsCisgICAgMHgxLjBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAtMHgxLjBkYjkwZTY4YjhhYmVkZDE4YmNkYjgxMDcyNmY3NTM3cDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAtMHgxLjM0NDEzNTA5Zjc5ZmYwZWRkNmM0MDVjNjY3ZTM0MDM5cDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAtMHgxLjM0NDEzNTA5Zjc5ZmVmMzExZjEyYjM1ODE2ZjkyMmYwcDEsCisgICAgMHgxLjBwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAtMHgxLjM0NDEzNTA5Zjc5ZmViYjdhZmIwMGU3Yjc1NGU5OTk1cDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAtMHgxLjVhYzk1YmFiMzY5M2VlZDNmYWE2NWMzMTZhYzI2NDk3cDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgLTB4MS41YWM5NWJhYjM2OTNlZDE3NDJmNTA5YzMxOWQ4NDc0ZXAxLAorICAgIDB4MS4wcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgLTB4MS41YWM5NWJhYjM2OTNlOTlkZDM5MjY0ZTY3ODJkYmRmM3AxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgLTB4MS44MTUxODI0Yzc1ODdlY2JhMWU4OGIyOWM2ZGExODhmNXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIC0weDEuODE1MTgyNGM3NTg3ZWFmZDY2ZDc2MDJlMWNiNzZiYWNwMSwKKyAgICAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAtMHgxLjgxNTE4MjRjNzU4N2U3ODNmNzc0YmI1MTdiMGNlMjUycDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgLTB4MS5mNGU5ZjYzMDMyNjNlNjZjOGEyZmI1ZGQ3NjNlZjYwZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIC0weDEuZjRlOWY2MzAzMjYzZTRhZmQyN2U2MzZmMjU1NGQ4YzZwMSwKKyAgICAweDEuMHAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAtMHgxLmY0ZTlmNjMwMzI2M2UxMzY2MzFiYmU5MjgzYWE0ZjZjcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgLTB4MS5mNGU5ZjYzMDMyNjNlNjZjOGEyZmI1ZGQ3NjNlZjYwZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIC0weDEuZjRlOWY2MzAzMjYzZTRhZmQyN2U2MzZmMjU1NGQ4YzZwMSwKKyAgICAweDEuMHAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAtMHgxLmY0ZTlmNjMwMzI2M2UxMzY2MzFiYmU5MjgzYWE0ZjZjcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgLTB4MS5jZTYxY2Y4ZWYzNmZlZGJjOGQ2MTU2YmQ2NjFlMjk4ZXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIC0weDEuY2U2MWNmOGVmMzZmZTZjOWFlOWMwZDA0MjI3NWI0NjhwLTEsCisgICAgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAtMHgxLmNlNjFjZjhlZjM2ZmQ4ZTNmMTExNzk5MTliY2I4ZWZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgLTB4MS5kYjExZWQ3NjZhYmZjMjNkYWQ0NmZmNTg4NjQxMDk1ZHAtNSwKKyAgICAweDEuYmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIC0weDEuZGIxMWVkNzY2YWJmNDMyZGMzYzFiYjQxNjdhNmViNDdwLTUsCisgICAgMHgxLmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAtMHgxLmRiMTFlZDc2NmFiZWM0MWRkYTNjNzcyYTRkOTY4MzNlcC01LAorICAgIDB4MS5jMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgLTB4MS4zNDQxMzUwOWY3OWZmMmFhOGU3NTU4MzRiOGNkNWQ4M3AwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgLTB4MS4zNDQxMzUwOWY3OWZlZjMxMWYxMmIzNTgxNmY5MjJmMHAwLAorICAgIDB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgLTB4MS4zNDQxMzUwOWY3OWZlODNlNDA0ZDY5OWVkM2E0MTAzYnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgLTB4MS5jYjM4ZmNjZDhiZmVhM2M1Nzc4ZDI2YzNlNjkyOWIzNnAtNiwKKyAgICAweDEuZGZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIC0weDEuY2IzOGZjY2Q4YmZkYjY5NmIyOTQ2MzY1OGI5OTEyMzdwLTYsCisgICAgMHgxLmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAtMHgxLmNiMzhmY2NkOGJmY2M5NjdlZDliYTAwNzM4ODc3ZWI3cC02LAorICAgIDB4MS5lMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgLTB4MS44MTUxODI0Yzc1ODdlZTc2ZDYzYTA1MGFiZThiYTYzZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgLTB4MS44MTUxODI0Yzc1ODdlYWZkNjZkNzYwMmUxY2I3NmJhY3AwLAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgLTB4MS44MTUxODI0Yzc1ODdlNDBhODgxMjE2NzRkOTYyNThmN3AwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgLTB4MS5jM2QwODM3Nzg0YzVkNGRjMmI0NzBhMDg5YjhiNjEzN3AtNywKKyAgICAweDEuZWZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIC0weDEuYzNkMDgzNzc4NGM0MDljYmY4NWQ0ZGQ2MWQ0MjZlMWJwLTcsCisgICAgMHgxLmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAtMHgxLmMzZDA4Mzc3ODRjMjNlYmJjNTczOTFhM2FkYzg3NDYxcC03LAorICAgIDB4MS5mMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgLTB4MS5jZTYxY2Y4ZWYzNmZlYTQzMWRmZWIxZTBjNDQ5ZWVmYnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgLTB4MS5jZTYxY2Y4ZWYzNmZlNmM5YWU5YzBkMDQyMjc1YjQ2OHAwLAorICAgIDB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgLTB4MS5jZTYxY2Y4ZWYzNmZkZmQ2Y2ZkNmMzNGFkZjIwYTFiM3AwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgLTB4MS5jMDNhODBhZTVlMDhiZmJhZWIwMDFiYjNjYzBlMDAyMHAtOCwKKyAgICAweDEuZjdmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIC0weDEuYzAzYTgwYWU1ZTA1MzgyZDUxZjcxYjBmNjYwMmM3NmFwLTgsCisgICAgMHgxLmY4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0weDEuYzAzYTgwYWU1ZTAxYjA5ZmI4ZWUxYTZiMWNhNmI4MjNwLTgsCisgICAgMHgxLmY4MDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAtMHgxLjBkYjkwZTY4YjhhYmYzMDdiMmUxYWY1YjY1MDQxYmRicDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAtMHgxLjBkYjkwZTY4YjhhYmYxNGFmYjMwNWNlZDE0MTlmZTkycDEsCisgICAgMHgxLjBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAtMHgxLjBkYjkwZTY4YjhhYmVkZDE4YmNkYjgxMDcyNmY3NTM3cDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAtMHgxLmJlNzZiZDc3YjUwMzMxYjc1MWI0ZDhhZjg4ZmIwN2VjcC05LAorICAgIDB4MS5mYmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgLTB4MS5iZTc2YmQ3N2I0ZmMzMGQ2Y2I1ZTcyOWZjMGJkNWZhNXAtOSwKKyAgICAweDEuZmMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgLTB4MS5iZTc2YmQ3N2I0ZjUyZmY2NDUwODBjOTAzMGY3YWI3OXAtOSwKKyAgICAweDEuZmMwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIC0weDEuMzQ0MTM1MDlmNzlmZjBlZGQ2YzQwNWM2NjdlMzQwMzlwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtOQorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIC0weDEuMzQ0MTM1MDlmNzlmZWYzMTFmMTJiMzU4MTZmOTIyZjBwMSwKKyAgICAweDEuMHAtOAorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIC0weDEuMzQ0MTM1MDlmNzlmZWJiN2FmYjAwZTdiNzU0ZTk5OTVwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtOAorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIC0weDEuYmQ5NmExZDdkOWQ5YjYzZTVhYTdkMDgyYTE0MGQ3MzhwLTEwLAorICAgIDB4MS5mZGZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgLTB4MS5iZDk2YTFkN2Q5Y2JjMjhkMWVkODhlYjk4NzA0ODAzOHAtMTAsCisgICAgMHgxLmZlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIC0weDEuYmQ5NmExZDdkOWJkY2VkYmUzMDk0Y2YwZGNkNWMwYWRwLTEwLAorICAgIDB4MS5mZTAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgLTB4MS41YWM5NWJhYjM2OTNlZWQzZmFhNjVjMzE2YWMyNjQ5N3AxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIC0weDEuNWFjOTViYWIzNjkzZWQxNzQyZjUwOWMzMTlkODQ3NGVwMSwKKyAgICAweDEuMHAtOQorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIC0weDEuNWFjOTViYWIzNjkzZTk5ZGQzOTI2NGU2NzgyZGJkZjNwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtOQorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIC0weDEuYmQyNzA0NWJmZDFlMjQ3NjdlYjFmYWRkYTM4YjgyZTJwLTExLAorICAgIDB4MS5mZWZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgLTB4MS5iZDI3MDQ1YmZkMDI0YjBlYjVhNjkwMTk5ZjdkMzExZnAtMTEsCisgICAgMHgxLmZmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIC0weDEuYmQyNzA0NWJmY2U2NzFhNmVjOWIyNTU2N2FhOWJiMTNwLTExLAorICAgIDB4MS5mZjAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgLTB4MS44MTUxODI0Yzc1ODdlY2JhMWU4OGIyOWM2ZGExODhmNXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIC0weDEuODE1MTgyNGM3NTg3ZWFmZDY2ZDc2MDJlMWNiNzZiYWNwMSwKKyAgICAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAtMHgxLjgxNTE4MjRjNzU4N2U3ODNmNzc0YmI1MTdiMGNlMjUycDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgLTB4MS5iY2VmNTE4ZTI5OThiZjJmY2RlY2E2ZDBjN2QyNDNjM3AtMTIsCisgICAgMHgxLmZmN2ZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAtMHgxLmJjZWY1MThlMjk2MTFhNTA2YmM2NTMxZTk3NjU1NDE0cC0xMiwKKyAgICAweDEuZmY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgLTB4MS5iY2VmNTE4ZTI5Mjk3NTcxMDk5ZmZmNmUyNDhlYzUwZXAtMTIsCisgICAgMHgxLmZmODAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAtMHgxLmY0ZTlmNjMwMzI2M2U2NmM4YTJmYjVkZDc2M2VmNjBmcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgLTB4MS5mNGU5ZjYzMDMyNjNlNGFmZDI3ZTYzNmYyNTU0ZDhjNnAxLAorICAgIDB4MS4wcC0xMworICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIC0weDEuZjRlOWY2MzAzMjYzZTEzNjYzMWJiZTkyODNhYTRmNmNwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAtMHgxLmJjYmVhNDU2NDU4NDhhNGJlNDJlMmQ0YWM5MWM2ZDlmcC0xNSwKKyAgICAweDEuZmZlZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIC0weDEuYmNiZWE0NTY0M2M3YzRiNDY1MDNlMzBlNTliN2RkMjhwLTE1LAorICAgIDB4MS5mZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAtMHgxLmJjYmVhNDU2NDIwYWZmMWNlNWQ5OThkZmQwZWYzZDhicC0xNSwKKyAgICAweDEuZmZmMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0NAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMzQ1CisgICAgMHgxLjM0NDEzNTA5Zjc5ZmVmMmRhNWEzNTBiMzNhNTc0ZWI1cDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS4zNDQxMzUwOWY3OWZlZjJhMmMzM2VlMGU1ZGI1NWVhZnA4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuZmQxNGRiMzFiYTNiYWIyYjkxYTVhZTc4MmYyMDRkNGZwLTIsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDB4MS45MWE3NGM0Zjg1Mzc3N2Y0ZTUyNWY2NDAzMDRlNTRiZXAtMywKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgMHgxLmJjYjdiMTUyNmU1MGQ1NDRhZDJjYzFlY2QzZTJhMjQ5cC01NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzUwCisgICAgMC4wLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAtMHgxLmJjYjdiMTUyNmU1MGVhMWQ0OTdjOWYxODllMTk3MTVlcC01NSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIC0weDEuYWRiNjNiODhkNDEwY2NkYWIxZmVlMGRmZmI0N2UyNDRwLTQsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAtMHgxLjMzYTcxNDZmNzJhNDFmMzI5M2E0NjRiNGIxYWE1MTRjcDgsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAtMHgxLjMzYTcxNDZmNzJhNDFmMzk4NjgzMjlmZTZhZWRhNjVlcDgsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAtMHgxLjMzYTcxNDZmNzJhNDFmNDA3OTYxZWY0ODI0MzE2YTlmcDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAtMHgxLjMzYTcxNDZmNzJhNDFmNDc2YzQwYjQ5MWRkNzU5ZTBlcDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAtMHgxLjQzMDE1M2QzYjFiOTU2NjMzOGNmNTg2ZDBlMTI4ZWRjcDgsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAtMHgxLjQzNGU2NDIwZjQzNzNlNWYwNTE3MWQxOWU0MTg0ZDI1cDgsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAtSFVHRV9WQUwsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgLUhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAweDEucDAsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIDB4MS5wMSwKKyAgICAweDEuOXA2CisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgMHgxLjgwcDEsCisgICAgMHgxLmY0MHA5CisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvbG9nMTBmX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9sb2cxMGZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBmMWFjMjYKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvbG9nMTBmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDEyMjYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfbG9nMTBmX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS5mZThiZmRmZmZmMTNkZDQ3NTEyYzA0OGY0OTFmOWI0M3AzLAorICAgIDB4MS4wMDAwMjJwLTUzCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0weDEuODE1MTcwZWQ0ZTA4NmU3NTUxNzEwMDBhMjFlNDQxOGFwMiwKKyAgICAweDEuMDAwMGEwcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAtMHgxLmZlOGJlYWZmZjU3MzZjOTcxMzBjOWNlZDFmNTdkMWEzcDMsCisgICAgMHgxLjAwMDE4MHAtNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgLTB4MS4zNDNlMGVmZmUwYjJjZjVjNDI2MTE0MGY2N2JiYjlkYnAtMiwKKyAgICAweDEuMDAwMWQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS5iYzQxYjkwMDZmOWVhMTkxZjhkNzc5OTI5ODgxNDhlOHAtMTEsCisgICAgMHgxLjAwN2ZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS4yODZkNDhmMjMyOGQxYzUxYmI0MjY0OWYxZTM2ZjUxY3AtMTAsCisgICAgMHgxLjAwYWFkY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS4zYzM3MjRmZmY5YTY2YTFmYzg4YzYyNzUzYTAxYTA5M3AtMTAsCisgICAgMHgxLjAwYjY0OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS5iNDEwNjZhNzY1YzQ3YzY1MGUzZjJiNjUzODM4MzZjNXAtMTAsCisgICAgMHgxLjAwZmI4MHAwCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS5iNGVkZThhYjczODNiOGUxYWM2NDAzODQyYWIxMjVlMXAtMTAsCisgICAgMHgxLjAwZmNwMAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuYjYwNjQwOWE2NmFjZTI2NDRkNTY1YjNiYmU0OTViNGJwLTEwLAorICAgIDB4MS4wMGZjYTJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLjM2MTcwMmZmZjI3MjIwNjAzZmY1YTc0YjlhNzI3OGExcC0yLAorICAgIDB4MS4wMTBmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS4zMGVjZDZmZTk4MDNiMjY0NDNkMGE4Yzg0Y2Y4OGY0OXAtOSwKKyAgICAweDEuMDE2MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuYWQxNTYxMDQzZTIzOGE1NGYyOTY4MzA4YjViODRhMGFwLTksCisgICAgMHgxLjAxZWZkZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEuYWRkNjdiMDQ5YjllY2NiNTg5ZDU5ZjJlOTQwNDRkNGNwLTksCisgICAgMHgxLjAxZjBiZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEuYjQxODE3MjdlNTI1YWEzYzlmZTliYjgxYTFlYTMyZjJwLTksCisgICAgMHgxLjAxZjhwMAorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLmJhOTBhZjAzMDA1NDY3MTRjOTFlNjk4MDc3MTYyNDRicC05LAorICAgIDB4MS4wMWZmODJwMAorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLmJmNzVjNmZkZDM4N2NmYzMzZTE3OGM3MTQwZmY0YTQzcC05LAorICAgIDB4MS4wMjA1MzBwMAorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLmMxNjBmY2ZiM2YxMTI2M2RmNmM1NDc5YTdmYzFmOTZlcC05LAorICAgIDB4MS4wMjA3NmFwMAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLmMzYjM5NmZiN2NjMTc1NDgwOTRjZGVlZDgwNjgxMmQ3cC05LAorICAgIDB4MS4wMjBhMWNwMAorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjA0MWU1ZWZmZjg2MzdhMTgxY2FiNWE0ODdlNTM0ZjFjcDUsCisgICAgMHgxLjAyMjBwMTA4CisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuZGVhZjQxMDA5ZGRlNjRjYjg1ZjY4ZDA5ZDJlZGYxNzNwLTksCisgICAgMHgxLjAyMjk2ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuZWNmNDdlZmRhZWIxMGY1YWRlMjhmZjkzZjRmNDQ1MjdwLTksCisgICAgMHgxLjAyM2FwMAorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLmY1MTRmODk3NTZkNjY3YTIwOTRiOWFhNmY1NDI1YTk0cC04LAorICAgIDB4MS4wNDhjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIC0weDEuMzFhZGQzZmZjZjE5MWViNzViOTQ5ZDBjNGIyNTU2MmVwMCwKKyAgICAweDEuMDZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS41ZDVlYjhmZmZjZTEzZWY1NjEzZjVjMjYzNTBiM2VmM3AtNywKKyAgICAweDEuMDY1Y2QycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5iMDJhZmIwMDNkZWYzMDRhNTEzYzg0ZDgwOWYyMTIzOHAtNywKKyAgICAweDEuMDdlNGJjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS5lODI5NmIwMDJiYmEwNjJiNDJiMjU2NDIzODAxNTJlMnAtNywKKyAgICAweDEuMDhlZjEycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5lOWM1ZTkwMDIxZWMwMWMyOTdlNDc1YWJlNGJhNDJwLTcsCisgICAgMHgxLjA4ZjZjMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAtMHgxLjdkMmI1MGZmZmYwMTg2MzczMjg3YTk5ZjBjZWNkMjhlcDAsCisgICAgMHgxLjA5YmNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS4zYTYyY2JmZmZmMjgzNGQ3NWE3MDM2MGY2YjlkNjRjZnAwLAorICAgIDB4MS4wZTgzYTBwNAorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgLTB4MS43YWEyYmMwMDAyMjEwNTUyNzNiZmE3ZmVlNjJkMDM3OXAwLAorICAgIDB4MS4wZmRjcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuZDViYmQ0ZmZmZDM1YzQwM2JiMGE2NTJlOTMzNGYxZTRwMCwKKyAgICAweDEuMTE4MHA2CisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEuZWY0MjUyODdjMjFmZWVjOWM1NGUxNzhkODk0MzU0ZWRwLTYsCisgICAgMHgxLjEyNzRwMAorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgLTB4MS4yOTI5N2RmZmZmOTAxYmI4YWM1MTkwZWNhMTAxODZiOXAwLAorICAgIDB4MS4xYWRjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuODE3ZGM4ZmNjYmMwZmI1MDg3ZTg4ZjU1NGYxOTA4ZmRwLTUsCisgICAgMHgxLjFkNGNwMAorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLjk2YWFhY2ZlZmNmM2JiOGRjZjNkOGM5NGViMTQyM2NhcC01LAorICAgIDB4MS4xZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEuYTJkOTMzNGE2NzQxNzYzNTkxOGFhZjYxYTAwOTk0ZjBwLTUsCisgICAgMHgxLjFmZmNwMAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLmUzMmQzMmZhNWM5ZDM4NTA5YTdiYTNlMmJmYjkzNTc0cC01LAorICAgIDB4MS4yNTNkMjRwMAorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLjU1ODExZWZmYmUzMTEzMjViZTgxODUyYjA1NTYwMzJjcC0xLAorICAgIDB4MS4yOTRhNTBwMgorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS5kN2RhZTBmZmZlZTg1ZjYzOWM0NGQxZjk0Yjg4YTlhYXAtMywKKyAgICAweDEuMmQzNjNhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAtMHgxLjliYTcxYjAwMDFiY2I4OTEwNmU5NzVhNTczNWNjNTRjcDEsCisgICAgMHgxLjNlY2Y4NHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS5wMCwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLjg3OWVjZWZmZmZmOTk5MzYyZGUzZTU2YTJhNmVkMjM4cDIsCisgICAgMHgxLjQxMjY2OHAyMAorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLmMxMDM0MzA1N2YzNmJlODU3ZTg3MzhiNmRmZWNkNWRlcC00LAorICAgIDB4MS40OTgxNTJwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLmYyMzdiMzg5YjhhZmFhYzRjYWM0MGYyNjk1ZGY3MjA5cC00LAorICAgIDB4MS41MmJmMmFwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgLTB4MS5lMGU4ZjllNGIxN2U1MTdjMGE0NzQwNDEzMGU2ODgzOHAtMiwKKyAgICAweDEuNWI0M2UycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuYmNlOGIwMDAwMjEyYmQ1NjNhZGU5ZjkzMzQzNzc5ZmJwLTIsCisgICAgMHgxLjVjMTdwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgLTB4MS5kMzBmYTNkOTUxNzk2ODc2MjQxMDgwN2JlOWM3Y2I3ZXAtMiwKKyAgICAweDEuNjYzZmUwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEuY2EzZjk4ZmZmZmZlYTgwNjY0MGUwNzNjNWIxN2RhNzVwLTIsCisgICAgMHgxLjY2YjA2YXAxCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAtMHgxLjgxYmJjY2ZmZmViMTAwNzRkMGY4N2U5ZTZhYjY4ZjNmcC0xLAorICAgIDB4MS42OTVkcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAtMHgxLjM0NDI4OTExNTVmZWRjMTUzMWU1YzRhNTkzZjBlMmYwcC0zLAorICAgIDB4MS42YTA5NWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5mMjg0ODkwMDJkMzJmMjlmNzY2Mjc2ZTk2ZjdmMjFhYXA0LAorICAgIDB4MS42YWFhYWFwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAtMHgxLjdkOTcyMmZmZmZmZWUwNjgyOTUzNjU2MWYwZjEzZTA3cC0xLAorICAgIDB4MS43MDI4ZTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS5lMzllNDVkNTFjY2M1YmE3OTM1OThlMmE1Yjc5YTBkZnAtMiwKKyAgICAweDEuN2JiZjA2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIC0weDEuZmZiZmNiZmY5YjM4MWMzMWI4NzgzMDU5ZjBhY2YwNjJwLTQsCisgICAgMHgxLjdmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgLTB4MS5mZmJmYzJiYmM3ODAzNzU4MzdjNGIwYjg0ZjM4YTE0YXAtNCwKKyAgICAweDEuODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIC0weDEuYjQwZGQyMzgxODFiM2E5ZTBhYWNkMDQwMjhhZjRhODBwLTIsCisgICAgMHgxLjgwMWU4MnAtMgorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgLTB4MS5mOTA0MzMwMDAzM2EyZmRhMGM5ZThiNjY0ZDBkZmFlMnAtNCwKKyAgICAweDEuODE3NGM0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLjUzMGNjYjAwMDMwODE3YzM3ZDE4OTRmNjJjMDU1MTk0cDAsCisgICAgMHgxLjg0MjFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEuZTIyNzg4MjBiMzRjZDUxNjgxNWNjZDlhZjAwZWMzNmNwLTQsCisgICAgMHgxLjg2NzEyNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgLTB4MS5kYjExZWQ3NjZhYmY0MzJkYzNjMWJiNDE2N2E2ZWI0N3AtNCwKKyAgICAweDEuODhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS5lYjc2YTQzMTdmOTM1MDY2YTlkZDI1OGQ2OTQ5NWYzYnAtMywKKyAgICAweDEuYmNkOTQ2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIC0weDEuZTVhN2QyZmZmYmRlNWZhYmE5YWQxZGFmYTlmOGUyNWVwLTEsCisgICAgMHgxLmNkMWViNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS5lM2UyZTgwMDAwMDM3MDcwMTUzMzRlOGY2ZDRlMWJhZXAtMSwKKyAgICAweDEuZDBjZGI0cC00CisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAtMHgxLjQ2YjUyOGZmZjE5ZjBkYjkzYjMxY2U2NmM5NGQ0ZmFhcC0xLAorICAgIDB4MS5kNzM5Y2VwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuZmZkMTU4YmQwYjI4Mjc5MDRhZjZjZWM0YzZlMWJiZTRwLTYsCisgICAgMHgxLmRjNzcxMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgMHgxLmMwMDgwNmJiNTg0YTgxZDI0MjVhNGM0NDkyNzdhM2MwcC0xLAorICAgIDB4MS5kZmZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgLTB4MS5hMGVkMzRmZmZjNjY2ZGE0ZDUyZWMwMmFlYWZlYzMwNXAtNiwKKyAgICAweDEuZTJkYzlhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuZTYxMDAyZmZmZmMyZDFlMDk4Mzg1MWJmMjRjOWNlMjNwNCwKKyAgICAweDEuZTMzOWEycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS4zYTZhZThmZmZkMGZhZjRhY2ExMzQ1YTJiNDEyY2IxMXAtNiwKKyAgICAweDEuZTlkZTUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAtMHgxLjk3NzVhNmUzNTUzMmU5OWQwY2YyMzg0YWI4NmQ1NDczcC03LAorICAgIDB4MS5mMThjNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIC0weDEuODFmOTc3MDAyNjM0NDMyNjY1ZDY1ZDc4ZDI5NjhhNjVwMiwKKyAgICAweDEuZjQwZTVlcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgLTB4MS5mNjIyNTFmZmZmZmY5NjhkYjNlZGJkNjliY2Y1Y2ZkY3AxLAorICAgIDB4MS5mNGUyNmFwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLjE0ZjAzZWZmZTE3MjdhMGM0ZTQ5YjJhNmJhZDg4Njg5cC03LAorICAgIDB4MS5mNjIxZjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIC0weDEuZjdjM2Y4ZmZiZGFiMTNhNmNhYzNlMWUzMWRmNGViYmZwLTgsCisgICAgMHgxLmY3MDQ3Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5mNjNlZmFhZmI4ODgzZTk3OTM0OTA4NTBlNTk2ODljNXAtOCwKKyAgICAweDEuZjcwYjVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLmYzN2QxOGZmYjllZjNiMGZlZjU3NzIxN2VkMThlMDk3cC04LAorICAgIDB4MS5mNzE3ZDZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuZGVmMzY0YWQ5ZTUwMjk2YjQxZTY5YmJkOTNkNGI4OWRwLTgsCisgICAgMHgxLmY3NzRjZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgLTB4MS5kOTgwYTMwNjM1MDU1YjhkOWI1NGVkZDY3MmM4NThhM3AtMTAsCisgICAgMHgxLmZkZGZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgLTB4MS5iZTdjZDZmZmM5ZjYzOTc5YzYyNzYzYjc0MjRiOTFiOHAtMTAsCisgICAgMHgxLmZkZmVmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgLTB4MS5hMGQwZjI5NzFmOGMzMzU5ZjA3YTZiYjRmY2NhYjIxMHAtMTAsCisgICAgMHgxLmZlMjFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuYmQyYTdmODhmN2UyMmUxZmJlZGE3YzM0ZTc4YzVmYmZwLTExLAorICAgIDB4MS5mZWZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIC0weDEuYWQxN2VhZmZmM2U1ODVmMzJlOTZkMGU3YzY4OTdlYWVwLTExLAorICAgIDB4MS5mZjA5M2FwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIC0weDEuZTFiMjBlYWIwM2ZiM2E0YTNjMWNhNTg3MTZhYTA0ZDhwMiwKKyAgICAweDEuZmYxZmZlcC0yNgorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgLTB4MS5iZDQyYzhkZjMxZTNkNDQ3MjQ0Y2M3MjBiZDY3ZmFhZHAtMTIsCisgICAgMHgxLmZmN2ZlOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTB4MS5iZGIxZjZjZDQyYzdjNDZkNjk2N2JiMDAzMDE2ZTQ1YnAtMTMsCisgICAgMHgxLmZmYmZlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTB4MS5jYTc0OWM4NzA2ZGU4ZTQ2ZWUzY2Y1YmY5YTk2YWIxYnAtMTQsCisgICAgMHgxLmZmZGYwNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5jNjAwYmNiY2U2NDU5OTFkMTY5NzllZGJiYzBjMzExZnAtMTQsCisgICAgMHgxLmZmZGY1NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgLTB4MS5iZDM0Y2M4NGJlMjAwZjhjYjQ0OWMyNmMzZjY3NjNkMXAtMTQsCisgICAgMHgxLmZmZGZmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS5iY2UxNjRkYzMzOWY5MmMxN2NjMjJjYjlhMDc0NThkNnAtMTQsCisgICAgMHgxLmZmZGZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgLTB4MS4zNDQzZDBmZmM4YjRlOGIzMWVkMDU1ZTU3OTAyNGE4MHAtMSwKKyAgICAweDEuZmZmOWZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLjcyZGU4MDAwMDE1NDkwMzFhZjZjYTk2NzQ3YzExMjZmcDQsCisgICAgMHgxLmZmZmM3ZXAtNzgKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS4zNDQxMzRmZjhiNTFiN2EwMTNkMjM1OGUwMDg5ZDMwZHA1LAorICAgIDB4MS5mZmZmZmFwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAtMHgxLmJjYjdiMzBmMjYwNDg2OGRhYjgxZDc5ZTFmNDA0NDNjcC0yNSwKKyAgICAweDEuZmZmZmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAtMHgxLjM0NDEzNjA5NTljMmJmMTdhNTlhZjM3MzU3NjYzZjA5cC0zLAorICAgIDB4MS42YTA5ZTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIC0weDEuOGUyNzFkNmFiNWQ3ZWU4NDEwNmY0OGUzM2I4Y2I4ZTBwLTQsCisgICAgMHgxLjk5NTI1NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgLTB4MS45NzYyYmEyZjRhMjE5OGEyY2U4OTc0NDUwYmUxNjYxZnAtNSwKKyAgICAweDEuYzg5YWM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAtMHgxLmM2OTQ3NjQ2ODIwMDJmNzlhNzRiMjJiYjc1NzA0NzdlcC04LAorICAgIDB4MS5mN2UzMzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS4wNjQ2NjExOTczODFjNzFmMWE5ZjlhYzIxZTMxMzc0OXAtNSwKKyAgICAweDEuMTM5NWQycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS4xNThiZWRjNDY4NjFkMGQyN2MxMTQwMzNmM2RiOWE5NnAtNCwKKyAgICAweDEuMmIzYTBhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuOWNkMTBiZWZlNzJjYzhhOGVjZmVhY2Q3MGFlZDg3NGFwLTQsCisgICAgMHgxLjQyZGU0MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLjBkNDJmOTRkNzFlYWIxYTQ1YTRlMTlmNWExZDc4ZmNicC0zLAorICAgIDB4MS41YTgyN2FwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS40N2Y3MDdjOTQwYzY5YzBlMmI4MWE4ODNjN2ZjZjNlMnAtMywKKyAgICAweDEuNzIyNmIycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuN2YwODU2N2QwNTZhMTVhYzE4OTkyYTI1NzMwNzRmYzFwLTMsCisgICAgMHgxLjg5Y2FlYXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLmIyZTM3ZTNlYzFiZDYwYzc4ZWMwYjgyMWVhMzc2MDRkcC0zLAorICAgIDB4MS5hMTZmMjJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5lM2UzMjE1YjdhZmEzMzU1ZWY0ZWQ2M2M3MjY4NWZmM3AtMywKKyAgICAweDEuYjkxMzVhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuMDkyOWQ2ODA2MzI4OGVhZjE1OTQyNzhlYjdiMmZjOGVwLTIsCisgICAgMHgxLmQwYjc5MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLjFmM2IxNWVhMTIxZWQzNzg2MzhjNmU3NmIxYTMxMDhmcC0yLAorICAgIDB4MS5lODViY2FwMAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS4zNDQxMzUwOWY3OWZlZjMxMWYxMmIzNTgxNmY5MjJmMHAtMiwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAtMHgxLjM0NDEzNjA5NTljMmJmMTdhNTlhZjM3MzU3NjYzZjA5cC0zLAorICAgIDB4MS42YTA5ZTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAtMHgxLmVkYzdiN2QxNzI2YjlkM2EzMjk5Njc2MmQ0NWU3ODBhcC00LAorICAgIDB4MS44M2U2MDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAtMHgxLjdhZjk3YjdiY2U4YWZjNzcxMjJhZmIwMzc1YTJkYTUzcC00LAorICAgIDB4MS45ZGMyMmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAtMHgxLjBmMjE5OTU3Mzc1YTMxYmU0MWJlNGM0M2E2OTE2MTA0cC00LAorICAgIDB4MS5iNzllNGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLjUyZTg2MzI0ZDA4MzQ4ZGI2MmExYjMwYTE5Njc0YTVjcC01LAorICAgIDB4MS5kMTdhNmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAtMHgxLjI1MTlmM2E1NjY3YWVhNDBlMWY5NjJhMWY1ZDg1YzIxcC02LAorICAgIDB4MS5lYjU2OTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuMWY4MDY1NDU2N2M1YWEwN2UxZDk1NzhkZmRlNzViMWZwLTgsCisgICAgMHgxLjAyOTk1YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLmEzMGE4ODRiNDhjZWQxMDM3MmMzYzFmNzlkODEwNTVicC02LAorICAgIDB4MS4wZjg3NmNwMAorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS43NzA2ZGVjY2JlMTVkZjljOTEwMTY5MGNjOWI3MzZiMHAtNSwKKyAgICAweDEuMWM3NTdlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuMGE5NjVmNTgyYWQyZDJjYzM5NjIzNjRlNzJmYWJmNGJwLTQsCisgICAgMHgxLjI5NjM5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLjU2NGJhNDQ1MDQwMmI2ZDUxYjIyMjMxZWUzMDA1NmVjcC00LAorICAgIDB4MS4zNjUxYTJwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS45ZWU5OWQxZjgxY2VhNTI2MmU4ZTVmYTgzMDhhNGYxMHAtNCwKKyAgICAweDEuNDMzZmI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEuZTRhZTYwNDljNDU2MWJhMmU1YjU0ZTRhZWY3ZWMxZjdwLTQsCisgICAgMHgxLjUwMmRjNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjEzZTg3ZGYwMGJlNWM4ZTU4ZjVmNmJhYTAwYThlOWE4cC0zLAorICAgIDB4MS41ZDFiZDhwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS4zNDQxMzQwYTk1N2QxZjRhOTg4YTczM2NkNjhjMDZkN3AtMywKKyAgICAweDEuNmEwOWU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAtMHgxLmZmYmZjMmJiYzc4MDM3NTgzN2M0YjBiODRmMzhhMTRhcC00LAorICAgIDB4MS44MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIC0weDEuNTYzNDY0MWEzZmQ1MTY4MWYxMmQzZGY5MDcxOWFlZDBwLTQsCisgICAgMHgxLmE2NjY2NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIC0weDEuNzZkODZmZGQ2MWQwMjY1ZmQ4NDE2ZjcyOTdiZDQ5NGZwLTUsCisgICAgMHgxLmNjY2NjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIC0weDEuNjg0YzFhMzMyZDVkYzMzMDdkNzNjN2JhMjUxNjhkMGZwLTcsCisgICAgMHgxLmYzMzMzMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS41YjJhNDc3NGEyZGUyMTQzZDhmZjVmNjQ5YTUwODYzYnAtNiwKKyAgICAweDEuMGNjY2NjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuYTMwYTlkNjA5ZWZlOWMyODE5ODJkN2RmN2FlNjkyNTlwLTUsCisgICAgMHgxLjIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuNDQ1MzkyODU5YzU2MGMzYzllZDU2MTI1ZTIxYmE1ODRwLTQsCisgICAgMHgxLjMzMzMzNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLmIwMmI3YjQ4MDRkNmUzMzQ2ZTZmMzBmYjBlZDgwZWQ4cC00LAorICAgIDB4MS40NjY2NjhwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS4wYWVjNzQ3NzM4YzU1NzIxMWIyMTQxMDYyMWIyNmY4ZnAtMywKKyAgICAweDEuNTk5OTljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEuM2IwMzUxNmQ1MGIzNTQ0MTU4ZjU4OWM3NjhmOTQ2ZTZwLTMsCisgICAgMHgxLjZjY2NkMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLjY4YTI4OGI2MGI3ZmMyYjYyMjQzMGU1NDA2NTVmNTNicC0zLAorICAgIDB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMC4wLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIDB4MS5lMWE1ZTJkZjkyZTllNWJjYzA4ZDM4MzlhM2U1NDY5N3A0LAorICAgIDB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgMHgxLmUyNGY2ZTQyNmE4YmY4YTllNjdhNzc5OWY4YjE3NDUxcDQsCisgICAgMHgxLjE5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuZTJlYTM2NzIxODg2M2JjOGZkMmMwZDlhYzljNzYyM2NwNCwKKyAgICAweDEuMzMzMzM0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIDB4MS5lMzc4OTkyOWI5MDRlODFiYzZmMGU1MTU4ZjM2NTIwM3A0LAorICAgIDB4MS40Y2NjY2VwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLmUzZmM2ZDQxNjgyZDE4ZDhjNzAzZDYwMWRkYzFmYTIwcDQsCisgICAgMHgxLjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuZTQ3NzI3ZmE0MmQ0OTBjYzk2YmFkMjUzYTM2NTY0MzZwNCwKKyAgICAweDEuODAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS5lNGU5ZjYzYTllYjIwNGNkMmRjZDk0YjdjZWNhMjhhN3A0LAorICAgIDB4MS45OTk5OWNwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgMHgxLmU1NTVjZTIwNTA0ZWQ2OTE5NTRiYzEwZTE3NTg2N2E4cDQsCisgICAgMHgxLmIzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAweDEuZTViYjdiOGIzZDIyZjBhMjVhZmIzZjZjNjg3N2U0MTdwNCwKKyAgICAweDEuY2NjY2QwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS5lNjFiYTk0MmI5Mjg5NTZhZjBiYWZjMWFkMDRmMGIyMHA0LAorICAgIDB4MS5lNjY2NmFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLmU2NzZlN2IzYmFjODY1Nzk4NTA5ODMwNzA0NDEyYjIzcDQsCisgICAgMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAtMHgxLmJjYjdiZjM4MmM2ZmIzZGYwMDI5ZTFlNmMwNGU1YjA0cC0yMiwKKyAgICAweDEuZmZmZmUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS4xNWYyZDE4YTY0MDBhYjAzYmU5MGJmY2VhYTU0NDdmYnAtMjMsCisgICAgMHgxLmZmZmZmNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS40ZDg5YzExNTM1N2Q1MzVjOGY5NTMzMzM4ZTY4ODNlYXAtMjMsCisgICAgMHgxLjAwMDAwNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLmJjYjdhMzZjYjE1YThjZWMwYzM5YjBhN2NmMmQ3ODU4cC0yMiwKKyAgICAweDEuMDAwMDEwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLmJjYjdiMjMwY2EyYTIwOWVjZWIzOTI5YzVhMDJmZjU5cC0yNiwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgLTB4MS5iY2I3YjIzMGNhMmEyMDllY2ViMzkyOWM1YTAyZmY1OXAtMjYsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuYmNiN2IyMzBjYTJhMjA5ZWNlYjM5MjljNWEwMmZmNTlwLTI2LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAtMHgxLmJjYjdiMjMwY2EyYTIwOWVjZWIzOTI5YzVhMDJmZjU5cC0yNiwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS5iY2I3YjIzMGNhMmEyMDllY2ViMzkyOWM1YTAyZmY1OXAtMjYsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEuYmNiN2IyMzBjYTJhMjA5ZWNlYjM5MjljNWEwMmZmNTlwLTI2LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLmJjYjdiMjMwY2EyYTIwOWVjZWIzOTI5YzVhMDJmZjU5cC0yNiwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgLTB4MS5iY2I3YjIzMGNhMmEyMDllY2ViMzkyOWM1YTAyZmY1OXAtMjYsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuYmNiN2IyMzBjYTJhMjA5ZWNlYjM5MjljNWEwMmZmNTlwLTI2LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAtMHgxLmJjYjdiMjMwY2EyYTIwOWVjZWIzOTI5YzVhMDJmZjU5cC0yNiwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS5iY2I3YjIzMGNhMmEyMDllY2ViMzkyOWM1YTAyZmY1OXAtMjYsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEuYmNiN2IyMzBjYTJhMjA5ZWNlYjM5MjljNWEwMmZmNTlwLTI2LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAweDEuMzQ0MTM1MDY3ZTMwOGFjZjhhYmU3MjFhNzk5MWZkYjdwNSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIC0weDEuNjZkM2U3YmQ5YTQwMmM2ZjJlMmJjNGM0OGFiZTAyYWJwNSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLjM0NDEzYWYzMzNhZThjODZjMTM1YWI1Mjc4NDk0NDUycC0zLAorICAgIDB4MS42YTA5ZTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtMHgxLjM0NDEzNjA5NTljMmJmMTdhNTlhZjM3MzU3NjYzZjA5cC0zLAorICAgIDB4MS42YTA5ZTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLjM0NDEzMTFmN2ZkZGU0ODc1MzQ3N2Q2YjFhZjVkOTNkcC0zLAorICAgIDB4MS42YTA5ZThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuMzQ0MTJmMjBiYjkxNTFkYjdjZWZiYjVkYjVhOTAxOGVwLTMsCisgICAgMHgxLjZhMDllNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMHgxLjM0NDEzNDBhOTU3ZDFmNGE5ODhhNzMzY2Q2OGMwNmQ3cC0zLAorICAgIDB4MS42YTA5ZTZwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS4zNDQxMzhmNDZmNjFmOWRhZWFkZGU5NDUxMmZjNmNhM3AtMywKKyAgICAweDEuNmEwOWU4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLjM0NDEzNmM2YWY1MjFmZmI0OTMzNTIyNmNhOGJiZjRhcC0yLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAtMHgxLjM0NDEzNTA5Zjc5ZmVmMzExZjEyYjM1ODE2ZjkyMmYwcC0yLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLjM0NDEzMTkwODg0MGMzYzNkYjRmNTE1Mjg1YjExYzIycC0yLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLmZmYmZjYmZmOWIzODFjMzFiODc4MzA1OWYwYWNmMDYycC00LAorICAgIDB4MS43ZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAtMHgxLmZmYmZjMmJiYzc4MDM3NTgzN2M0YjBiODRmMzhhMTRhcC00LAorICAgIDB4MS44MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIC0weDEuZmZiZmI5NzdmM2Q0YWNlZTRlYjBiMzYwZGJjNmVjNDhwLTQsCisgICAgMHgxLjgwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS42OGEyODQxNDIxYTNkMDQ5NjFlOTRlODMzNTliY2RhZnAtMywKKyAgICAweDEuN2ZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuNjhhMjg4YjYwYjdmYzJiNjIyNDMwZTU0MDY1NWY1M2JwLTMsCisgICAgMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAweDEuNjhhMjhkNTdmNTU1ODdlYjE2Y2QwY2ZmYzAwZWNmYmNwLTMsCisgICAgMHgxLjgwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLjI4MTMyZmJiMzM2ZjdiY2IzNGI3MGIwMDg2N2RjOWQ1cC0xMCwKKyAgICAweDEuMDBhYWE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEuMjgxNmE2ZGIzMTMxYjZlZGE0MTRlNjllYWU0NDdjOWRwLTEwLAorICAgIDB4MS4wMGFhYWFwMAorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS4yODFhMWRmYjI4MGE0ZGQ5YWJjZGEzYTcwMmU1MjU4ZHAtMTAsCisgICAgMHgxLjAwYWFhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjM0NDEzNDJiOWJjNmQ2Y2MwYTAyNjNmMGJkMmZkNGMzcC0xLAorICAgIDB4MS5mZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS4zNDQxMzUwOWY3OWZlZjMxMWYxMmIzNTgxNmY5MjJmMHAtMSwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuMzQ0MTM2YzZhZjRmODRlN2MwZjQ2NDVhZGY5ZDI2NTdwLTEsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLjM0NDEzMzRkM2ZlZGJlNjZmNGYyMTQ4OTYzNjY4Njk2cC0yLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS4zNDQxMzUwOWY3OWZlZjMxMWYxMmIzNTgxNmY5MjJmMHAtMiwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuMzQ0MTM4ODM2NmZmMWE5ZTYyZDYxNTVkYTg0MTI5YmVwLTIsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTB4MS5iY2I3YjIzMGNhMmEyMDllY2ViMzkyOWM1YTAyZmY1OXAtMjYsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDAuMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAweDEuYmNiN2FmOTViNmExZTFiMTAyYzhhNDAzNjZkYzJmNzNwLTI1LAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0weDEuMzQ0MTM2YzZhZjUyMWZmYjQ5MzM1MjI2Y2E4YmJmNGFwLTIsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEuMzQ0MTM1MDlmNzlmZWYzMTFmMTJiMzU4MTZmOTIyZjBwLTIsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEuMzQ0MTMxOTA4ODQwYzNjM2RiNGY1MTUyODViMTFjMjJwLTIsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuMzQ0MTM1ZTg1Mzc5MDc5NjM0MjMwMmJmNzBjMjcxMWRwLTEsCisgICAgMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIC0weDEuMzQ0MTM1MDlmNzlmZWYzMTFmMTJiMzU4MTZmOTIyZjBwLTEsCisgICAgMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuMzQ0MTMzNGQzZmYwNTk3YTdkMzEwMjU1NGU1NTFmODlwLTEsCisgICAgMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0weDEuY2U2MWQwNmQ0ZjQ4ZmYyZWMzYWM1YzZiN2MzZjAyOTVwLTEsCisgICAgMHgxLmZmZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIC0weDEuY2U2MWNmOGVmMzZmZTZjOWFlOWMwZDA0MjI3NWI0NjhwLTEsCisgICAgMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEuY2U2MWNkZDIzYmMwNTExMzBjYmE1YzAxNTlkMWIxMDFwLTEsCisgICAgMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuMzQ0MTM1NzkyNThjN2I2M2E5OWFkYjBiYzNkZGNhMDZwMCwKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTB4MS4zNDQxMzUwOWY3OWZlZjMxMWYxMmIzNTgxNmY5MjJmMHAwLAorICAgIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLjM0NDEzNDJiOWJjODI0NTVjZTIxZGFkNmIyYTcyMTNjcDAsCisgICAgMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0weDEuODE1MTgyYmJhMzc0NzcyZmYxNWY4N2UxYzk5YzEyYzJwMCwKKyAgICAweDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgLTB4MS44MTUxODI0Yzc1ODdlYWZkNjZkNzYwMmUxY2I3NmJhY3AwLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAtMHgxLjgxNTE4MTZlMTliMDIwMjIxNWU2ODdhY2I4NjU2OWY4cDAsCisgICAgMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0weDEuY2U2MWNmZmUyMTVjNzJmYzM5MjQzNGI3Y2Y1YTViN2VwMCwKKyAgICAweDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgLTB4MS5jZTYxY2Y4ZWYzNmZlNmM5YWU5YzBkMDQyMjc1YjQ2OHAwLAorICAgIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAtMHgxLmNlNjFjZWIwOTc5ODFiZWU1ZGFiMzQ4MmJlMjNiMmI1cDAsCisgICAgMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIC0weDEuMGRiOTBlYTA0ZmEyMzc2NDQwNzQ3MGM2ZWE4YzUyMWRwMSwKKyAgICAweDEuZmZmZmZlcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS4wZGI5MGU2OGI4YWJmMTRhZmIzMDVjZWQxNDE5ZmU5MnAxLAorICAgIDB4MS5wLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAtMHgxLjBkYjkwZGY5OGFjMDBiZGQ1MmI3ZjBhYzYxZjBmZGI4cDEsCisgICAgMHgxLjAwMDAwMnAtNworICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEuMzQ0MTM1NDE4ZTk2MzU0YTY0NTZjNzMxZWQ2Yjc2N2JwMSwKKyAgICAweDEuZmZmZmZlcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgLTB4MS4zNDQxMzUwOWY3OWZlZjMxMWYxMmIzNTgxNmY5MjJmMHAxLAorICAgIDB4MS5wLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLjM0NDEzNDlhYzliNDA5YzM3NjlhNDcxNzY0ZDAyMjE2cDEsCisgICAgMHgxLjAwMDAwMnAtOAorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIC0weDEuNWFjOTViZTJjZDhhMzMzMDg4MzkxZDljZjA0YTlhZDlwMSwKKyAgICAweDEuZmZmZmZlcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIC0weDEuNWFjOTViYWIzNjkzZWQxNzQyZjUwOWMzMTlkODQ3NGVwMSwKKyAgICAweDEucC05CisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgLTB4MS41YWM5NWIzYzA4YTgwN2E5OWE3YzlkODI2N2FmNDY3NHAxLAorICAgIDB4MS4wMDAwMDJwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAtMHgxLjgxNTE4Mjg0MGM3ZTMxMTZhYzFiNzQwN2YzMjliZjM3cDEsCisgICAgMHgxLmZmZmZmZXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAtMHgxLjgxNTE4MjRjNzU4N2VhZmQ2NmQ3NjAyZTFjYjc2YmFjcDEsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLjgxNTE4MWRkNDc5YzA1OGZiZTVlZjNlZDZhOGU2YWQycDEsCisgICAgMHgxLjAwMDAwMnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAtMHgxLmY0ZTlmNjY3Yzk1YTJhYzkxN2MyNzc0OGZiYzcyYzUxcDEsCisgICAgMHgxLmZmZmZmZXAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLmY0ZTlmNjMwMzI2M2U0YWZkMjdlNjM2ZjI1NTRkOGM2cDEsCisgICAgMHgxLnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAtMHgxLmY0ZTlmNWMxMDQ3N2ZmNDIyYTA1ZjcyZTczMmJkN2VjcDEsCisgICAgMHgxLjAwMDAwMnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAtMHgxLmY0ZTlmNjY3Yzk1YTJhYzkxN2MyNzc0OGZiYzcyYzUxcDEsCisgICAgMHgxLmZmZmZmZXAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAtMHgxLmY0ZTlmNjMwMzI2M2U0YWZkMjdlNjM2ZjI1NTRkOGM2cDEsCisgICAgMHgxLnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMHgxLmY0ZTlmNWMxMDQ3N2ZmNDIyYTA1ZjcyZTczMmJkN2VjcDEsCisgICAgMHgxLjAwMDAwMnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAtMHgxLmNlNjFkMDZkNGY0OGZmMmVjM2FjNWM2YjdjM2YwMjk1cC0xLAorICAgIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAtMHgxLmNlNjFjZjhlZjM2ZmU2YzlhZTljMGQwNDIyNzViNDY4cC0xLAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAtMHgxLmNlNjFjZGQyM2JjMDUxMTMwY2JhNWMwMTU5ZDFiMTAxcC0xLAorICAgIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAtMHgxLmRiMTFmZDU4NjdmOGZmMWNjYTA0OWY0Y2I0ZmQ4Njk0cC01LAorICAgIDB4MS5iZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAtMHgxLmRiMTFlZDc2NmFiZjQzMmRjM2MxYmI0MTY3YTZlYjQ3cC01LAorICAgIDB4MS5jMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEuZGIxMWRkOTQ2ZDk3YWUxNmY1MWFkYThmMjViZDRjYzFwLTUsCisgICAgMHgxLmMwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIC0weDEuMzQ0MTM1NzkyNThjN2I2M2E5OWFkYjBiYzNkZGNhMDZwMCwKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgLTB4MS4zNDQxMzUwOWY3OWZlZjMxMWYxMmIzNTgxNmY5MjJmMHAwLAorICAgIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAtMHgxLjM0NDEzNDJiOWJjODI0NTVjZTIxZGFkNmIyYTcyMTNjcDAsCisgICAgMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIC0weDEuY2IzOTFhNzM2NGFjOWVlZDg4MzgxN2YxZmZjMjE1MGNwLTYsCisgICAgMHgxLmRmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIC0weDEuY2IzOGZjY2Q4YmZkYjY5NmIyOTQ2MzY1OGI5OTEyMzdwLTYsCisgICAgMHgxLmUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgLTB4MS5jYjM4ZGYyN2IzNmU2ZTE1ZGJmOWFhNmUyNmUwNTI3YnAtNiwKKyAgICAweDEuZTAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgLTB4MS44MTUxODJiYmEzNzQ3NzJmZjE1Zjg3ZTFjOTljMTJjMnAwLAorICAgIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAtMHgxLjgxNTE4MjRjNzU4N2VhZmQ2NmQ3NjAyZTFjYjc2YmFjcDAsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIC0weDEuODE1MTgxNmUxOWIwMjAyMjE1ZTY4N2FjYjg2NTY5ZjhwMCwKKyAgICAweDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTB4MS5jM2QwYmNkOThiM2VkZjQ1MjA1Y2ZkYmI2YWVkMTkxN3AtNywKKyAgICAweDEuZWZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgLTB4MS5jM2QwODM3Nzg0YzQwOWNiZjg1ZDRkZDYxZDQyNmUxYnAtNywKKyAgICAweDEuZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAtMHgxLmMzZDA0YTE1N2U4NDcwMzg1OWUxNDE3YThjMzI2MjEycC03LAorICAgIDB4MS5mMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAtMHgxLmNlNjFjZmZlMjE1YzcyZmMzOTI0MzRiN2NmNWE1YjdlcDAsCisgICAgMHgxLmZmZmZmZXAtNworICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIC0weDEuY2U2MWNmOGVmMzZmZTZjOWFlOWMwZDA0MjI3NWI0NjhwMCwKKyAgICAweDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgLTB4MS5jZTYxY2ViMDk3OTgxYmVlNWRhYjM0ODJiZTIzYjJiNXAwLAorICAgIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAtMHgxLmMwM2FmMWEwMTE1ZmI2OTRkZmM3ZTUzMDVlMzUwMjk3cC04LAorICAgIDB4MS5mN2ZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAtMHgxLmMwM2E4MGFlNWUwNTM4MmQ1MWY3MWIwZjY2MDJjNzZhcC04LAorICAgIDB4MS5mOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIC0weDEuYzAzYTBmYmNhYjFkNzY2YjdjMjY2NjA4MTI0Nzg2NzVwLTgsCisgICAgMHgxLmY4MDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIC0weDEuMGRiOTBlYTA0ZmEyMzc2NDQwNzQ3MGM2ZWE4YzUyMWRwMSwKKyAgICAweDEuZmZmZmZlcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgLTB4MS4wZGI5MGU2OGI4YWJmMTRhZmIzMDVjZWQxNDE5ZmU5MnAxLAorICAgIDB4MS5wLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAtMHgxLjBkYjkwZGY5OGFjMDBiZGQ1MmI3ZjBhYzYxZjBmZGI4cDEsCisgICAgMHgxLjAwMDAwMnAtNworICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIC0weDEuYmU3NzlkOTNjNjM3ZWQ4MTQyOTMwZDMyYzc2MDY3MmNwLTksCisgICAgMHgxLmZiZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIC0weDEuYmU3NmJkNzdiNGZjMzBkNmNiNWU3MjlmYzBiZDVmYTVwLTksCisgICAgMHgxLmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgLTB4MS5iZTc1ZGQ1YmE0YTI1M2ZjYmZjZGUyODkwNjc4MmY4MXAtOSwKKyAgICAweDEuZmMwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgLTB4MS4zNDQxMzU0MThlOTYzNTRhNjQ1NmM3MzFlZDZiNzY3YnAxLAorICAgIDB4MS5mZmZmZmVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAtMHgxLjM0NDEzNTA5Zjc5ZmVmMzExZjEyYjM1ODE2ZjkyMmYwcDEsCisgICAgMHgxLnAtOAorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIC0weDEuMzQ0MTM0OWFjOWI0MDljMzc2OWE0NzE3NjRkMDIyMTZwMSwKKyAgICAweDEuMDAwMDAycC04CisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgLTB4MS5iZDk4NjA0ZTAyMjVjNWY1YmNmY2FmMmQzMTdhOWNiOHAtMTAsCisgICAgMHgxLmZkZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIC0weDEuYmQ5NmExZDdkOWNiYzI4ZDFlZDg4ZWI5ODcwNDgwMzhwLTEwLAorICAgIDB4MS5mZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIC0weDEuYmQ5NGUzNjFiMzMxZjU4MjU4NzQ2ODNkMTZhNGZhMDJwLTEwLAorICAgIDB4MS5mZTAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAtMHgxLjVhYzk1YmUyY2Q4YTMzMzA4ODM5MWQ5Y2YwNGE5YWQ5cDEsCisgICAgMHgxLmZmZmZmZXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAtMHgxLjVhYzk1YmFiMzY5M2VkMTc0MmY1MDljMzE5ZDg0NzRlcDEsCisgICAgMHgxLnAtOQorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIC0weDEuNWFjOTViM2MwOGE4MDdhOTlhN2M5ZDgyNjdhZjQ2NzRwMSwKKyAgICAweDEuMDAwMDAycC05CisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgLTB4MS5iZDJhN2Y4OGY3ZTIyZTFmYmVkYTdjMzRlNzhjNWZiZnAtMTEsCisgICAgMHgxLmZlZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIC0weDEuYmQyNzA0NWJmZDAyNGIwZWI1YTY5MDE5OWY3ZDMxMWZwLTExLAorICAgIDB4MS5mZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIC0weDEuYmQyMzg5MmYwNTlmNTM2Yzg1NGM2YjEzYzVhM2I3YmZwLTExLAorICAgIDB4MS5mZjAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAtMHgxLjgxNTE4Mjg0MGM3ZTMxMTZhYzFiNzQwN2YzMjliZjM3cDEsCisgICAgMHgxLmZmZmZmZXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAtMHgxLjgxNTE4MjRjNzU4N2VhZmQ2NmQ3NjAyZTFjYjc2YmFjcDEsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAtMHgxLjgxNTE4MWRkNDc5YzA1OGZiZTVlZjNlZDZhOGU2YWQycDEsCisgICAgMHgxLjAwMDAwMnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAtMHgxLmJjZjY0NjJhMTkyMTExOGEzYjY2ZjkyZmI3YzYwNzk3cC0xMiwKKyAgICAweDEuZmY3ZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgLTB4MS5iY2VmNTE4ZTI5NjExYTUwNmJjNjUzMWU5NzY1NTQxNHAtMTIsCisgICAgMHgxLmZmODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAtMHgxLmJjZTg1Y2YyNDA5NzdjOTk0MTk5ODNhOTVkZmE4ZDI4cC0xMiwKKyAgICAweDEuZmY4MDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgLTB4MS5mNGU5ZjY2N2M5NWEyYWM5MTdjMjc3NDhmYmM3MmM1MXAxLAorICAgIDB4MS5mZmZmZmVwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgLTB4MS5mNGU5ZjYzMDMyNjNlNGFmZDI3ZTYzNmYyNTU0ZDhjNnAxLAorICAgIDB4MS5wLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgLTB4MS5mNGU5ZjVjMTA0NzdmZjQyMmEwNWY3MmU3MzJiZDdlY3AxLAorICAgIDB4MS4wMDAwMDJwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgLTB4MS5iY2Y2M2QwOTRmN2E0NWVmNGY5ZDJiY2RlNDVkZWQyZnAtMTUsCisgICAgMHgxLmZmZWZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIC0weDEuYmNiZWE0NTY0M2M3YzRiNDY1MDNlMzBlNTliN2RkMjhwLTE1LAorICAgIDB4MS5mZmYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgLTB4MS5iYzg3MGJhMzZmYWZiMzNjZGRjZjE3ZjA1NTQzNjQzN3AtMTUsCisgICAgMHgxLmZmZjAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuMzQ0MTM1MDY3ZTMwOGFjZjhhYmU3MjFhNzk5MWZkYjdwNSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIDB4MS4zNDQxMzUwMzA0YzEyMmY0ODcwMDk5MjE2OGYxYzQ3N3A1LAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMHgxLmZkMTRkYzAxNWEyNDQzZGM4ZDFjOWE3YTRlYWQ3YzQ0cC0yLAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS45MWE3NGRlZWM1MDhhOTU2ZGMxM2NlNDQ2ZjY4YjJhN3AtMywKKyAgICAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuYmNiN2FmOTViNmExZTFiMTAyYzhhNDAzNjZkYzJmNzNwLTI1LAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDAuMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAtMHgxLmJjYjdiMjMwY2EyYTIwOWVjZWIzOTI5YzVhMDJmZjU5cC0yNiwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgLTB4MS5hZGI2Mzg0YTU0NmU2YTE2YzQyMzMwZDc3ZDEzMjY3MXAtNCwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgLTB4MS4yZjcwMzAyZWRjZTJiMTFkODAwZWUxYzZhYjdhYWU1NnA1LAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIC0weDEuMmY3MDMwMzVjZmMxNmY3NDVhOTY2ODhhYjY5ZDNlNjRwNSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLjJmNzAzMDNjYzJhMDNiYjBmMmE4ODJjMTY0YTQ5Y2RkcDUsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgLTB4MS4yZjcwMzA0M2I1N2YxNWQzNDg3Y2M3NjE4NmEzNzhmNnA1LAorICAgIDB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEuNjQ2YjY1NTM4NjUwZWM5MGNiZWQ5ZjVkZGE5MDEwNjVwNSwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAtMHgxLjY2ZDNlN2JkOWE0MDJjNmYyZTJiYzRjNDhhYmUwMmFicDUsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgLUhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS5wMCwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDB4MS5wMSwKKyAgICAweDEuOTBwNgorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIDB4MS44MHAxLAorICAgIDB4MS5mNHA5CisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvbG9nMXBfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2xvZzFwX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMjExOGVhCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2xvZzFwX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDE0ODYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxkb3VibGUsIGRvdWJsZT4gZ19sb2cxcF9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwLTEwMjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0weDEuMDQxNWQ4OWU3NDQ0NjgwOWI1ZDdlMTZlOTBkY2ZiMTdwLTUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIC0weDEuMjY5NjIxMzM0ZGI5MjgwM2JlYjc2YTE2YjU1NDdkNGRwLTIsCisgICAgLTB4MS4wMDAwMDAxODBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgLTB4MS4wMDA4MDAwMDAwMDAwODAwODAwMjAwMDAwMDU1NWQ1NXAtNTIsCisgICAgLTB4MS4wMDA4MHAtNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgLTB4MS4wMDEwMDAwMDAwNDAwODAwNDAwMDE1NTk1NTk1NTZiMnAtNDEsCisgICAgLTB4MS4wMDFwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIC0weDEuNjU3MjRjMjExMGYzNTQxNmM5MzIyZGUxZmJjZTZlYTBwLTIsCisgICAgLTB4MS4yZGJhMjYyYTdjOGIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIC0weDEuNWFmNDE3OTAyOGViNzYzOGYxMTQ1YmQ0MzNkNmM4MzFwLTExLAorICAgIC0weDEuNWFkNmI1YWQ2YjViMHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgLTB4MS43NGZjMzZmMDZjZDViN2ZmZDc5YjBmZjkwYTY0YmI2ZXAtNiwKKyAgICAtMHgxLjcwYzU4ZTY3YjdhZWFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgLTB4MS5kNjJlMGNkNzM3MmFjMTFjZmIyZjI4NWQyNzlkYzNkNHAtMiwKKyAgICAtMHgxLjc5MDViODJhMTgzOWRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgLTB4MS43ZDljMWRlYmYwODJmN2ZlM2RmNDg3ZDBlNDgyMzY3NnAtNiwKKyAgICAtMHgxLjc5MzMzMWVlY2U1OTZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIC0weDEuZTE0OGExYTI3MjZjYmZiNDVmMzQzZDJlNzhiNzFhNTFwLTIsCisgICAgLTB4MS43ZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAtMHgxLjliYWY2MTEzNGMwNDg4MDFlMzczMTg4M2I2NTI5MGIzcC01LAorICAgIC0weDEuOTE4MmZkZTdlMzMxOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgLTB4MS5mZjkzY2NiZDMxMjQyMzdhNWIzY2YxNmM0N2M5MTVjOXAtMiwKKyAgICAtMHgxLjkyYTdmYzg2ZGNiZDlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIC0weDEuOGZlYjViYTNjNWIwZDdmZGRmZmUxYjkxMzNiZDM4MjdwMCwKKyAgICAtMHgxLjk0YTUyOTRhNTI5NGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIC0weDEuZTI2NWExZDk0ODMxNzgwMDI5MjJkZDk4NGQzM2YxOThwLTQsCisgICAgLTB4MS5jNzEyZDBkN2YwNDkwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAtMHgxLmNkNGU0YzAzYTU1NzA3ZTg2ODk5NDI2NTE3MGVlZmI4cC0xMCwKKyAgICAtMHgxLmNjZTY3MzM5OWNjZThwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAtMHgxLmU1ZGY3ZjliMzA3YWMwMDAxMTVmODQ3M2M5MGZiNTE1cC05LAorICAgIC0weDEuZTRmOTNlNGY5M2U1MHAtOQorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgLTB4MS5mOTZlZjQ4ZWNkNDAzN2ZlMjIwZmZhZTMzZmVmNWQwNHAtNSwKKyAgICAtMHgxLmVhMjgzMDI0MDM1ODBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIC0weDEuZmRkMDlmNzNkN2Y2ODhkZDU1MDhjNzcwZmU3YjdhOWZwLTUsCisgICAgLTB4MS5lZTQ2NzVkMGFjOWFhcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAtMHgxLmZmZmZmZmZmZmZlNGI3MmRkNWFjOTg3OTFhNzI4ZTFmcC01LAorICAgIC0weDEuZjA1NDA0MzhmZDQyOXAtNQorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgLTB4MS5mZjdmYWM5YmIxMTYwN2RhZjg2OTgwNDkyZjE0N2VlZHAtMTAsCisgICAgLTB4MS5mZjAwMDFmZmZmZmZlcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgLTB4MS5mZmU3ZmZmZmZmZmZmN2ZmNDAwNDdmZmZmZmFhYWFhYXAtNTQsCisgICAgLTB4MS5mZmU3ZmZmZmZmZmZmcC01NAorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS40Y2I5ZWQ1MGI2YmM3OWQ0NGQzMDE4MDFjZTBmZjZmM3A0LAorICAgIC0weDEuZmZmZmZmZjgwMWZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgLTB4MS41N2NkMGUzMDI2ODI3YmJjZDVkM2Q2YTUzMjUxNWJkMXA0LAorICAgIC0weDEuZmZmZmZmZmJmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgLTB4MS4wMDIwMDU1NDU1MDg3MzJkN2I1N2ExZWM4NmJkNWM3YXAtMTAsCisgICAgLTB4MS5mZmZmZmZmYzBwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAtMHgxLjA4NTk4YjU3YzE4MDYwMDFkYmI5OWMwYWViZjQ0YmRlcC00LAorICAgIC0weDEuZmZmZmZmZmMwMDAzZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgLTB4MS4wODU5OGI1OGUzYTA2MDAxYmY1MTM3NTAzMzFmYjI1Y3AtNCwKKyAgICAtMHgxLmZmZmZmZmZlMWZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIC0weDEuZmZmZmZmZmYwMDAwMDdmZmZmZmZmODAwMDAyYWFjYWFwLTU0LAorICAgIC0weDEuZmZmZmZmZmYwcC01NAorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgLTB4MS4wMDAwMDAwMDAwMWZmN2ZmZmZmZmY1NGQ1NTU1NTU0N3AtNDAsCisgICAgLTB4MS5mZmZmZmZmZmZmM2ZmcC00MQorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZWFhYWFhYXAtNTMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC01MworICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLmZmZmZmZmZmZmYwMDAwMDAwMDAwYWFhYWFhYWFhYTJhcC00MSwKKyAgICAweDEuMHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyMSwKKyAgICAweDEuMHAtMTIwCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWFhYWFhYXAtNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUxCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmY1NTU1NTVwLTUyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MgorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLjlmMzIzZWNiZjk4NTU0ODBiZTJjYmM0OTRmOTNkZjM2cC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDA3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEuZmZmZmZmZmZmZmMwMDAwMDAwMDAwYWFhYWFhYWFhYThwLTQyLAorICAgIDB4MS4wMDAwMDAwMDAwMnAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS5mZmZmZmZmZmZmZGZmZmZmZmZmZmZhYWFhYWFhYWFhZXAtNDIsCisgICAgMHgxLjAwMDAwMDAwMDAzcC00MQorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLmZmZTAwMmFlNmEzMTAwNjg3N2VkYjMzMjhiZDNhZTkxcC0xMiwKKyAgICAweDEuMDAwMDAwMDFmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS45ZjMyM2YwOTRjNjhhODAwMDAxMzkwMTA5MzQxMmRhNnAtMiwKKyAgICAweDEuMDAwMDAwMmRmZTJhZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLjlmMzIzZjA5NGM2OTI4MDAwMDBiZTViNDBlNjE1ZDJkcC0yLAorICAgIDB4MS4wMDAwMDAyZGZlMmI1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuMTkzZWE4MmFkMDMwODk3NmE0MjQzN2ZmYWJlNjI3NjJwMCwKKyAgICAweDEuMDAwMDAwY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuZjBiMjFiMGM5YTI3Zjc5NzMwOTJiZWYyYjhhMThkODBwLTUsCisgICAgMHgxLjAwMDgwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEuMWFjZTE2MzFmNjY4MDAxZjE3ZTU0MzA1MzdhOTRmOWZwNSwKKyAgICAweDEuMDAwODBwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS4wMDBmZmZmZmZmYmZmN2ZmYzAwMDE1NTk1NTk1NTZhMnAtNDEsCisgICAgMHgxLjAwMXAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5mMzFjZGVlYjNjZDRjN2MwYTNlOTQ1YWQ4NTZiZWZjYnA0LAorICAgIDB4MS4wMGNwNDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS4yMDYzNjBiN2U1Njk1ODdiMzYwMDlkN2M5NDJkNGYzY3A1LAorICAgIDB4MS4wMTRwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS5mMzMzYTVmNWVkYjFiNzZlMTY2ODRlNjBiNzE4MTcxOXAtNSwKKyAgICAweDEuMDE1Y2RmYzUxZjkxY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLjY0ODkyNTYzZjgwMjUwMDAwYjYwYWRhYWM2NzdlMmVhcC0xLAorICAgIDB4MS4wMWE1YTJiMTVmYzVjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS4wNDgyYWZjZjUyN2Q5ODAwMmJjNDFjNDBjZDNiNDRjNXAtMjMsCisgICAgMHgxLjA0ODJiMGQ4NmMzNjJwLTIzCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuMDQ1ZGNmMmNiMTVmNTdmZTNmMmVkMTUyMjI2MzY4YzhwLTUsCisgICAgMHgxLjA4OGM1OWFjOGM3ZDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS4wMTVlMDU4NzZlM2U2N2ZmZjA0N2M2OTZlYmE0NGJhMnAtNCwKKyAgICAweDEuMDlhcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuMGI2NTE1ZDgxZDk3MzI2OTRjZDdlYzUxMmZjNmYxYjRwLTExLAorICAgIDB4MS4wYjc2OGI1YWQ4MDE5cC0xMQorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLmIzNDZhMWQyOGY0NGQ3ZmRjZWU3YTBiZDA3NDA1ODQ1cC0yLAorICAgIDB4MS4wZjM1NTY2ZWQzY2MycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuYjNjY2U5YjcyMjE3NTdmZWI0M2RjZjUzMTA3MGM4OTRwMCwKKyAgICAweDEuMWYyN2MxNGU0MjViOXAyCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuZmJjMzc5YmQxM2E2YjAwMDkxZThkYTIzMDdhMzcxMmZwLTMsCisgICAgMHgxLjIwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLjIxNDBhMzNlZTRmNTM3ZmU0ZGUzOGJhZTQwNTZlMDk4cC01LAorICAgIDB4MS4yNjZiNzUzOTQ2NDQxcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuZDZiZmJlYTVhYjdmZDRjNDNiMzAzNDhkYTMyZTJhN2RwLTIsCisgICAgMHgxLjJhZDBjMDJmNjA0MDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS5jMDlkYTVhOGIzNzg3NmY2NjllZmFmZmQ5MzQxMmY5YXAwLAorICAgIDB4MS4zMTJlN2I3YmU2MmE1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS5lM2E5MWQ0ZDc1MTZjYjlkYjA4ZmQzYzNjZjdkNDBjYXAtMiwKKyAgICAweDEuMzUxYThkNDZhMzVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS5mMTI4ZjVmYWYwNmVjYjM1YzgzYjExMzFjZjVkNzNkNXAtMiwKKyAgICAweDEuNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLmYxZWUzMWYxNGQ0ZjE3ZmZkZTJmMmZlNzY2ZGZjMzE4cC0yLAorICAgIDB4MS40MGEwNTAyODE0MDgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEuNDFlM2U0NTBiNjA3MzAwMWM1MDJiMjJmZWMzYWI0ZDdwLTUsCisgICAgMHgxLjQ4NGM0M2FjYzE5NGNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS40ZDlmZjkzNGQ5OWYzN2ZmNDBmZDM5ZWI2MThkY2QzYXAtMjEsCisgICAgMHgxLjRkYXAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS5hMDcxMWY5YjQ3NTY4N2ZmZmZkMjk4MWI1YjQ5OTEwZXAyLAorICAgIDB4MS40ZTVmZmZmZjBwOQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLmUxOTA1MTc1NzExYTE3YzA5ZmQ0MDI1NGZhZDcyYWU4cDQsCisgICAgMHgxLjU2ZjMwNTI5MjBlZjBwNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS40ZjdlZjNiMTNlMWZhODAwMzYxYzQyNzdkZmExMDkyYXAtNCwKKyAgICAweDEuNWQ5ZTY4ODRkNmFjMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgMHgxLmU0NWMwMWU4YzIzM2NmZmU1YWMxMDhiYzZjMTIzYmZhcDAsCisgICAgMHgxLjY4OHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuYzM0MzY2MTc5ZDQyNTgwNDhlMGVjNTFjNmZlZmQ1OGNwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwMAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLmUyYWYxNjQ0NDMzYWM3YzAzMDk2ZGE1M2NmMjhjMThhcDQsCisgICAgMHgxLjZmZDFmZmIxNDA4NzhwNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS42MzkyYTUxMDAzMzI4N2ZmYzNkNDBkOGNlMzNkMTYyN3AtNCwKKyAgICAweDEuNzM3NjdmZDg1MzdiM3AtNAorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLmQzNmEzNWFhYWU3Njg4MDBmNzdiZTBiMmEyOWU0MGI3cC0xLAorICAgIDB4MS43ZGQ4OWU1MGUwNzhlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS44M2ZmZWQ5ZjgxMjkxODAwMzlmMGVhY2YyMzUwMWMzNHAtMjAsCisgICAgMHgxLjg0MHAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS44OTk2MzgxZWYyY2I2N2ZmMmMxYTAzMWQ4ZTg4ZmE4MXAtOCwKKyAgICAweDEuOGFjNTYyYjE1OGFjNHAtOAorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLjkyNjQ5OTI2NGZkODc3ZmU3N2JhYjg1ODgxZGJhYjc0cC00MywKKyAgICAweDEuOTI2NDk5MjY1cC00MworICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgMHgxLmU3MzdjYjIzODY1YzZiOTIxNTUyYWQ4MWQ1NzJiNzI5cC0xLAorICAgIDB4MS45NzBwMAorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLjU4OGMyZGU1ZTg4ZGIwMDAwMDBlYTRlNTk4NDdkMTVjcC0yLAorICAgIDB4MS45OTk5OWExMDMwZjlkcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAweDEuNTg4YzJkZjJjMDIwNTdmZmZmZWZjMzBmZjI1ZDc5ZGRwLTIsCisgICAgMHgxLjk5OTk5YTIyMmI5M2ZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS43NTY1MDFiZTNlMjQyODAwMDAxMDE5Y2Q3Y2Q3Y2UzZnAtMywKKyAgICAweDEuOTk5OTlhNTk4YzE1Y3AtMworICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLjc1NjUwMjI1N2RiZjUwMDAwMDBiYzBkZGM3MjE1NmZhcC0zLAorICAgIDB4MS45OTk5OWFkNTcyMDMzcC0zCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuODY2M2Y5OTAzZTEyZWZmZmZmZjAzOWZhZmM2YjVmNjdwLTQsCisgICAgMHgxLjk5OTk5YmM4ZWMzNzVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS45YmQ4YWJiMTUwZmJkMDA1YWE5ZTJlZDVhMDc0YTA4ZXAtMjEsCisgICAgMHgxLjliZDhiNjBiOTZlMmZwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEuOTk1NWJhZDFlMzY1MzdmZmQ3ZmQ4NDQ4ZDM5MmRlMjVwLTcsCisgICAgMHgxLjliZTZmOWJlNmY5YjFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS41YmEwNmUzZmIwMWEyZDEwN2VjNTIwMTIyM2YwMGJiYnAtMiwKKyAgICAweDEuOWRlYWQwODZhNThjZHAtMgorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLjVmMWE1NTdmNDFmMjZjYzY3M2RiNGY5MTY4NmEzNzU4cC0yLAorICAgIDB4MS5hMmNlOGRmNTU0YjJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEuNjI0MDVlYmQ2YWIzMzM4MzdjOGE3NzAyNmFiNGFhZThwLTIsCisgICAgMHgxLmE3NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLmY1ZjczZDY5MTE0YzJiODViM2IxNTFkNDVhMzNkMGU1cC0xLAorICAgIDB4MS5hYTZwMAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLmIyMjlmYmVjYTc3ODFmZmZlNmY1ZmRiOTdiNzI0MmM2cC01LAorICAgIDB4MS5iZGVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS5iYzIxYThjZmUwYzQxNzhiMzQ5OTBhNzMxZDNmYmQxNXAtNSwKKyAgICAweDEuYzg2NDMyMTkwYzhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS4wNzk1MjM2N2FmNWM4ODAwMDAxMDVlMmI1NGE1YTA2MnAwLAorICAgIDB4MS5jY2NjY2NlZDJlZDdlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS5jMWRlOGJjMzE4MWJhMDAxYzFiNjBjNDBlZmY5MDY1MHAtNSwKKyAgICAweDEuY2U3Mzc1YjUwMjNjNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLmQ1OWVmZGE2Nzc5NWE4MDBmZGRmOGM1YmJhNGE2MGIzcC00MywKKyAgICAweDEuZDU5ZWZkYTY3N2NiOHAtNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS5kODAxNThjNDA2OTA1N2ZmNzY4NzQwYWE4MGMwYmQ2NnAtNywKKyAgICAweDEuZGI2YmNmNTAyZjNlMHAtNworICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLmRmZWFiZTI5YjUxMDMxMmU4MzY3ZjQxNGIwNTExOTQ5cC0xMSwKKyAgICAweDEuZTAyMmZkOTMwZjg2YXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS44YTlhNTljYWYxMTk4MGE1OTE1ZDJiNmI3Y2YyNTUzZHAtMiwKKyAgICAweDEuZTE2YjI0ZDM4ZDFiMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLjhmMTFlODczNjYyYzc3ZTE3NjlkNTY5ODY4YTY1ZTcycC0yLAorICAgIDB4MS5lODBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5kZDE2NjEwNmU4N2YzNzYyMmFhYzJjOTA4ZDZhYWY5MXAtNSwKKyAgICAweDEuZWI0MGUxNTFmYWQ4MXAtNQorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLmVjODBmZmZmZmZjNGI3ZmU2ZmYwMDk4MjRkZGMyMzVhcC00MywKKyAgICAweDEuZWM4MGZmZmZmZmZmZnAtNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5lZGY1MmMyZTM0NzQwYjI0YjczNmRjYTQ1ZmI0YWU5ZXAtMTMsCisgICAgMHgxLmVlMDQxMGUzYjFkMjRwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAweDEuZjAyNzE3ZDg1NTU2OWZmZTg1YmI5ZjIyNDM1OGFmZWFwLTYsCisgICAgMHgxLmY3YmRkNjc4OWM2NzBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuZmJmZmZmZmZmZTA3ZTgwMDAwMDI5YWVhNTU1NTUxNzRwLTQwLAorICAgIDB4MS5mYmZmZmZmZmZmZmZmcC00MAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS5mYmZmZmZmZmZlMDdmODAwMDAwMjlhY2E5NTU1NTE3NHAtNDAsCisgICAgMHgxLmZjMHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuMzY3Nzk5ZGMzOWEyMzgwNjhlYWUwZDUzMzllYWZlZTJwNSwKKyAgICAweDEuZmMwMDAwMDAwMDAwNnA1NQorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS5mZmM3ZmZmZmZmMDAyN2ZjZjAwMGFhODJhZjBhNzFwLTQxLAorICAgIDB4MS5mZmM3ZmZmZmZmZmZmcC00MQorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS5mZmRmZmZmZmZmZmZlODAwZmZmODAwMDAwMGFhOWFhYnAtNTQsCisgICAgMHgxLmZmZGZmZmZmZmZmZmZwLTU0CisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLmZmZjdmZmZmZmVmZmY3ZmZmMDAwYWFiMmFhOGFhOWZmcC00MSwKKyAgICAweDEuZmZmN2ZmZmZmZmZmZnAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuZmZmN2ZmZmZmZmZmZTgwMDNmZmY4MDAwMDBhYWE2YWFwLTU0LAorICAgIDB4MS5mZmY3ZmZmZmZmZmZmcC01NAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5jNTUxNzkzOTVhMDAwODAwZGRjMzM0NzkwNDY5ZDRkZXA3LAorICAgIDB4MS5mZmZmZmUzZmZmZmZmcDMyNgorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5mZmMwMGFhNGFjMTBhYmQ0NDcwNmQ4OWNmMTI4OTJhM3AtMTEsCisgICAgMHgxLmZmZmZmZmZiZmZmZmZwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLmZmYzAwYWE3YWI1MGViYzQ0YmY1NjExMWNlMzMyMzc1cC0xMSwKKyAgICAweDEuZmZmZmZmZmYwcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS4yNWU0ZjdiMjczN2Y5ZmM0ODY2MTIxNzNjNjU5Njg5MnA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmY4cDUyCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLjYyZTQyZmVmYTM5ZWYzMzc5M2M3NjczMDA3ZTFlZDVlcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZjhwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS45ZjMyM2VjYmY5ODQ4OWQ2MTM4MjExOWVhZTY5MzQ4YnAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmYnAtMgorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS41Y2E3MmQxN2VkM2VhODAwODlhZTY1ZGZhZmMxZTJiMnA4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDUwMgorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS4xMWQxNGUxZmNiNzJlZGNiMjhhMDMyZTA4M2E2ZjE5OXAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS4yY2NhYzZjOGY0MWI3NGQ2YjczM2M5MTQxYzBiZWNlNXAtMSwKKyAgICAweDEuOTk1MjU1ZjJkMDBhYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS40NjZhOTI2OTcwNzM3NmU1MDE4NzI1OWVlMmIwNDgxOHAtMSwKKyAgICAweDEuYzg5YWM1N2RhYzU4YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS41ZWQxYTdkY2UxMWFjZTU1YTNjZGJlMzQxZWU4ODIyMnAtMSwKKyAgICAweDEuZjdlMzM1MDg4OGE2OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS43NjFjN2Q5ZGRkYzAxZDUwOWRjYjliNGViY2VjYTg0ZXAtMSwKKyAgICAweDEuMTM5NWQyNDliMjdhNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLjhjNjNkMjdkNGNhMDNkYWJhOGM5OGEyMzJiMjM4MGYwcC0xLAorICAgIDB4MS4yYjNhMGEwZjIwYTE0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuYTFiZDRjNzdkNTUzNjNhYjNiNjFkYzg5Zjc4MTJjNzFwLTEsCisgICAgMHgxLjQyZGU0MWQ0OGVjODRwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS5iNjNiZjdiYWY1ZWFhNmVhZGVjNjVlZDA0MDhmZjk2NHAtMSwKKyAgICAweDEuNWE4Mjc5OTlmY2VmNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLmM5ZjBhZDM0MWNiZWJkMWQ4NGFlMGMyNjc0YTM0OTgzcC0xLAorICAgIDB4MS43MjI2YjE1ZjZiMTY0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuZGNlYTY2MWI1OWU3ZjJhNjFmNjRiYzZkOTQzYWI1YWVwLTEsCisgICAgMHgxLjg5Y2FlOTI0ZDkzZDRwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5lZjM2ODA4ZTUwMWZmNWJjOTdkZTNiZTYxN2FkMDhiNXAtMSwKKyAgICAweDEuYTE2ZjIwZWE0NzY0NHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjAwNzA3YzI5YzQ2NDNlYTZmNTNmMmMwZWRjZjNmOTBlcDAsCisgICAgMHgxLmI5MTM1OGFmYjU4YjRwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS4wOGZhNGIxMjlkMzY1MTAzZDg2MTViMGZlZTgzMDc1M3AwLAorICAgIDB4MS5kMGI3OTA3NTIzYjI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEuMTEzZDhiYWNhODYwOGMxOTk3NGZmODljMjFjYzhkMTZwMCwKKyAgICAweDEuZTg1YmM4M2E5MWQ5NHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLjE5M2VhN2FhZDAzMGE5NzZhNDE5OGQ1NTA1M2I3Y2I1cDAsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS4xMWQxNGUxZmNiNzJlZGNiMjhhMDMyZTA4M2E2ZjE5OXAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS4yNjk5MGUwN2UyNTgyNWRlMjFjYjUyZTY1NTM5MGQ5YXAtMSwKKyAgICAweDEuOGUzZTE3MGJmMjgyZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS4zYTkxNGExZGI4Y2MzODU1ZDIwMGNhMzIwMmUyM2QwNHAtMSwKKyAgICAweDEuYjI3MjQ3YWZmMTQ4ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS40ZGM5OTdjYmYyZWQ2ODA2MzE1YzY5NjI2MTRiNDFmMnAtMSwKKyAgICAweDEuZDZhNjc4NTNmMDBlZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIDB4MS42MDRmZGI1MTU0NTE1MjZmY2Y2MzJlMjI1NWQ5N2VmMnAtMSwKKyAgICAweDEuZmFkYWE4ZjdlZWQ1MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS43MjMwODQ0N2M1MTY2NWVjOGY0MmY2YzFjMmY1MTI5NHAtMSwKKyAgICAweDEuMGY4NzZjY2RmNmNkOXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMHgxLjgzNzZiZmY0MDZmOTEzYTM1NzlhMjNmMmU5MzJkZjU3cC0xLAorICAgIDB4MS4yMWExODUxZmY2MzBhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuOTQyY2EzNWU4ZjE4ZjM1OTFhZGVkNDNhZGQyMjYwZGJwLTEsCisgICAgMHgxLjMzYmI5ZDcxZjU5M2JwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS5hNDViNGVjNDg1MjU5N2I0YWI4ZmRkNjI3NWE1YzFmN3AtMSwKKyAgICAweDEuNDVkNWI1YzNmNGY2Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLmI0MGIwYjlhNDg5ZjE2OGY1ZmZjMmM2MGFjNWJkMDZhcC0xLAorICAgIDB4MS41N2VmY2UxNWY0NTlkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuYzM0MzY2MTc5ZDQyNjU0NWNhZGJjMzk0MDk2ZTcxOWJwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2NwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS4xZTg1ZjVlNzA0MGQwM2RlYzU5YTVmM2UzYzZiZTVjZnAtMSwKKyAgICAweDEuOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIDB4MS4zNDAyNGFjNDdiNmZjZWJmOTk0YzY0MmVmN2E4ODJhZHAtMSwKKyAgICAweDEuYTY2NjY2NjY2NjY2NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS40OGExMTI5M2Q3ODViNTBjMmEzZmViMTRjMzY4MDUwMXAtMSwKKyAgICAweDEuY2NjY2NjY2NjY2NjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDB4MS41YzczNzYwYjNjMzYyZTUxODA2ZjZhMmZjYjU0MDJiM3AtMSwKKyAgICAweDEuZjMzMzMzMzMzMzMzMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS42Zjg4YjI4NmIyMmYwYTVmNzBiOGNlMzVkZjQyYzgwYXAtMSwKKyAgICAweDEuMGNjY2NjY2NjY2NjY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMHgxLjgxZWU2MGFmYjUwMThhYWEwMTgxYzk4ZmUzZDExZTU3cC0xLAorICAgIDB4MS4xZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAweDEuOTNiMGFlZTIxYzJjNmYxYWZiMjk2MzJjNzdmMDQzNGJwLTEsCisgICAgMHgxLjMzMzMzMzMzMzMzMzJwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS5hNGRhOTFjNjExZGJjZjE3ZDc0M2JhZDAxMTIxZTkxZHAtMSwKKyAgICAweDEuNDY2NjY2NjY2NjY2NXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLmI1NzVlZDA3NDM0OTJjOGFhY2ZmNjBkNTkyMGRmZmM0cC0xLAorICAgIDB4MS41OTk5OTk5OTk5OTk4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAweDEuYzU4YmI1YTYwOTc4YTE1MDk1ZmU1NTg2MWFjY2E3MzdwLTEsCisgICAgMHgxLjZjY2NjY2NjY2NjY2JwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS5kNTI0MGYwZTBlMDc2MDZlOTE4ZTQ5NjI2YzhmMDVlNnAtMSwKKyAgICAweDEuN2ZmZmZmZmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcC0xLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAweDEuN2JkZjM2MmU5NjY2ZTJkYzQ0MmJhZjRkYzYyNTgwN2RwLTEsCisgICAgMHgxLjE5OTk5OTk5OTk5OWFwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIDB4MS45M2IwYWVlMjFjMmM4YzMyNDBmYWQ3ODk4ZjYwNjUyNXAtMSwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLmFhNzMxMDg3MTdiNmIyNDAyNTBjNTM5M2IzNTZlNDBhcC0xLAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAweDEuYzAzZDcwMzczNWY4ZTE5MjA2MjdmNDMzNjA3M2ZlNzhwLTEsCisgICAgMHgxLjY2NjY2NjY2NjY2NjhwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS5kNTI0MGYwZTBlMDc5M2ExYzRjMTdjOTU5ZmMyMzkxOXAtMSwKKyAgICAweDEuODAwMDAwMDAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgMHgxLmU5MzhjYmNlYjE2ZGVmY2JiOTIxZmRkNThkNWRkNTY3cC0xLAorICAgIDB4MS45OTk5OTk5OTk5OTljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuZmM4YjdmMTM4YmRlYjkzZmVlMmU3OGI0ZmUzZTA4MzFwLTEsCisgICAgMHgxLmIzMzMzMzMzMzMzMzZwMAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDB4MS4wNzk1MjM1YzFlYTFjYThjMDU5MmVlNzViNDU3OWE4ZXAwLAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEuMTA5MGUyMDMxNTIxM2IyZGRiNDVjMzI4NDM1YzNjYTdwMCwKKyAgICAweDEuZTY2NjY2NjY2NjY2YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgMHgxLjE5M2VhN2FhZDAzMGE5NzZhNDE5OGQ1NTA1M2I3Y2I1cDAsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwLTEsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS4zMjE3YjBmZDJiMTE2OTA4ODk3Y2IxMDUwYmVlYTIwNXAtMSwKKyAgICAtMHgxLmNjY2NjY2NjY2NjY2RwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLjA1OGFlZmE4MTE0NTFmYzdjYzExODRkNzU5OTdkYzQ0cC0xLAorICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuYjkxZjI4MjEyYmEwMzc5ZjdhNjM3OWIyOGQxYmE5YjdwLTIsCisgICAgLTB4MS42NjY2NjY2NjY2NjY3cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgLTB4MS42ZDNjMzI0ZTEzZjRmZTliZWZhZDUwYTAyNzM0MTFjOHAtMiwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLjI2OTYyMTEzNGRiOTNjZDkxNDBjYmNjMTYwMzdmYjg2cC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIC0weDEuYzhmZjdjNzlhOWEyNGFjMjVkODFlZjJmZmMyYTI0YWVwLTMsCisgICAgLTB4MS45OTk5OTk5OTk5OTljcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS40Y2Q2Yjk3OTY0MTdiNWYxMWYxMGRlMjkwNDMwYjMyYnAtMywKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLmFmOGU4MjEwYTQxNjM2ZTYxMjgzZTA0MDBlNzJmMzgwcC00LAorICAgIC0weDEuOTk5OTk5OTk5OTk5ZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEuYTQzMWQ1YmNjMTk0MjgxNGU5NGY1NWVhMmUxNWQ1ZjRwLTUsCisgICAgLTB4MS45OTk5OTk5OTk5OWE0cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgLTB4MS40MDAwMDAwMDAwMDAwMzIwMDAwMDAwMDAwMDBhNmFhYXAtNTQsCisgICAgLTB4MS40cC01NAorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuOGZiMDYzZWYyYzdlOWNkZDRmNjkxNDI1MDkxZjgyMTJwLTUsCisgICAgMHgxLjk5OTk5OTk5OTk5OWFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuODY2M2Y3OTNjNDZjNmY4Zjk4MjcyNWI0ZjcxMDBhNjJwLTQsCisgICAgMHgxLjk5OTk5OTk5OTk5OWFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuMWUzYjgyNWRkMDVlYzNmYjUwMzUxNWJiMzQ2MzhkNDFwLTMsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAweDEuNzU2NTAxMWU0OTY3NjhlOWM5ODIzNDBkNjNmZDk5YmVwLTMsCisgICAgMHgxLjk5OTk5OTk5OTk5OWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuYzhmZjdjNzlhOWEyMWFjMjVkODFlZjJmZmI5YTI0YWVwLTMsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAweDEuMGNhOTM3YmUxYjlkYmI1ZTcyMTdhMzcyNmYxOTc4MzdwLTIsCisgICAgMHgxLjMzMzMzMzMzMzMzMzNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAweDEuMzM0ZTllNDdkMDdmNDRiNDQzMDcwNjk4MjdiNzk1ODRwLTIsCisgICAgMHgxLjY2NjY2NjY2NjY2NjZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEuNTg4YzJkOTEzMzQ4ZjM4MGVlYmNlYjc2YzQyOTZhZWFwLTIsCisgICAgMHgxLjk5OTk5OTk5OTk5OTlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuN2M3YjI4MmQwZDQ2YWRjMWE2YTJiOWQ3MTI1ODE0ODhwLTIsCisgICAgMHgxLmNjY2NjY2NjY2NjY2NwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAweDEuOWYzMjNlY2JmOTg0YjQ4MGJlMmNiYzQ5NWE2OTM0OGJwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAtMHgxLjdmNzQyN2I3M2UzOGY1MDNiOTlmODYyMzBiOWY4ZmE5cDEsCisgICAgLTB4MS5lNjY2NjY2NjY2NjY2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgLTB4MS4yNmJiMWJiYjU1NTEzODJkZDRhZGFjNTcwOWE2MTQ1MXAxLAorICAgIC0weDEuY2NjY2NjY2NjY2NjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIC0weDEuZTVhOWE3YzNhYzQxNDA5MGNmMjU3ZWYxMTIwM2EyOWRwMCwKKyAgICAtMHgxLmIzMzMzMzMzMzMzMzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAtMHgxLjljMDQxZjdlZDhkMmY2YWZkZjc3YTUxNjBmNTkzMWY0cDAsCisgICAgLTB4MS45OTk5OTk5OTk5OTk4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgLTB4MS42MmU0MmZlZmEzOWViMzU3OTNjNzY3MzAwZmU1ZWQ1ZXAwLAorICAgIC0weDEuN2ZmZmZmZmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuMzQzNzhmY2JkYTcxYzZlNTA1NDFjYjU5MGUxMGFiZWRwMCwKKyAgICAtMHgxLjY2NjY2NjY2NjY2NjRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAtMHgxLjBjYzEyNDhiNTZjYzc0YzA3Y2FhNzU3NmYxMjMzZjBjcDAsCisgICAgLTB4MS40Y2NjY2NjY2NjY2NhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS5kNTI0MGYwZTBlMDZmYTA4MmIyN2UyZmMxNmNjNzY4YXAtMSwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMHgxLjk4ZDYwMDMxYjgyMTJlMzQ1NjE3ZTMzODE5OTA0YmNlcC0xLAorICAgIC0weDEuMTk5OTk5OTk5OTk5NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwLTEsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgMHgxLjE1NDI0NTczMzdkNDJlMWM2YjczYzg5ZDg2NmJhMTcxcDYsCisgICAgMHgxLjBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLjE1YTNkZTcxMWNjNTQ5NGUyMGNlMmY3ZTM5NzRjNGVkcDYsCisgICAgMHgxLjE5OTk5OTk5OTk5OWFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLjE1ZmNmN2YzYzZmOGUxZjhlMDU4ODliNzhkMTIxMmU5cDYsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgMHgxLjE2NGVlZWFhZjVlZmNjMTU1M2JlN2RjYWQxNjdjYzU1cDYsCisgICAgMHgxLjRjY2NjY2NjY2NjY2VwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLjE2OWFkMWEwYzkwNzc3NWZlYzYyODU4OGZkMWFlYWRjcDYsCisgICAgMHgxLjY2NjY2NjY2NjY2NjhwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLjE2ZTE3N2IyMDNjZGIzMzBlYzMxZjU1OWNmYWQzNTUxcDYsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLjE3MjM4ZTE0ZGE0NjliNTViOTZjOTY3NDRlNjEyMDNhcDYsCisgICAgMHgxLjk5OTk5OTk5OTk5OWNwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgMHgxLjE3NjFhMjc2NWE2OTYwYWJlNWNmOTJjMDk1OWRhODM3cDYsCisgICAgMHgxLmIzMzMzMzMzMzMzMzZwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLjE3OWMyYTMyOTJmMjY2ZmYyODMzMjgzYWYyYzcxYmI4cDYsCisgICAgMHgxLmNjY2NjY2NjY2NjZDBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgMHgxLjE3ZDM4Nzk4NWY4MzNhMGQ0MDY5Zjc5YzFiOTcyNDJmcDYsCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgMHgxLjE4MDgwZGQzMTcxYjZjMDMxYTliNTc2YmU2NWI2ZDRjcDYsCisgICAgMHgxLjBwMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLjE1NDI0NTczMzdkNDJlMWM2YjczYzg5ZDg2MmJhMTcxcDcsCisgICAgMHgxLjBwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLjE1NzMxMWYyMmE0Y2JiYjU0NjIwZmMwZGRmYjMxYmU5cDcsCisgICAgMHgxLjE5OTk5OTk5OTk5OWFwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgMHgxLjE1OWY5ZWIzN2Y2Njg4MGFhNWU2MjkyYTg5ODQyZjgycDcsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjE1Yzg5YTBmMTZlMWZkMThkZjk5MjMzNDJiYjExOTU5cDcsCisgICAgMHgxLjRjY2NjY2NjY2NjY2VwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLjE1ZWU4YjhhMDA2ZGQyYmUyYmViMjcxMzQxOGM2YWI5cDcsCisgICAgMHgxLjY2NjY2NjY2NjY2NjhwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLjE2MTFkZTkyOWRkMGYwYTZhYmQyZGVmYmFhZDcxNjBjcDcsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLjE2MzJlOWM0MDkwZDY0YjkxMjcwMmY4OGVhMzI2MGQ2cDcsCisgICAgMHgxLjk5OTk5OTk5OTk5OWNwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLjE2NTFmM2Y0YzkxZWM3NjQyOGExYWRhZjBkZDFkMjAxcDcsCisgICAgMHgxLmIzMzMzMzMzMzMzMzZwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLjE2NmYzN2QyZTU2MzRhOGRjOWQzNzg2YzNjNjc5Nzc4cDcsCisgICAgMHgxLmNjY2NjY2NjY2NjZDBwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLjE2OGFlNjg1Y2JhYmI0MTRkNWVlZTAxY2QwZDA4YjNjcDcsCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMHgxLjE2YTUyOWEzMjc3N2NkMGZjMzA3OTAwNGI2MzM4NzVmcDcsCisgICAgMHgxLjBwMjAxCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLjVhOTJkNmQwMDVjOTM5YTM4NjUwYmFjNGU3YjY4OWNlcDksCisgICAgMHgxLjBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIDB4MS41YTlmMDllZmMyNjc1ZDA5YmNmYzA3YTBmZTE4Njg2Y3A5LAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuNWFhYTJkMjAxN2FkZDAxZjE0ZWQ1MmU4Mjg4Y2FkNTJwOSwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLjVhYjQ2YmY2ZmQ4Y2FkNjJhMzVhMTE2YTkxMTdlN2M4cDksCisgICAgMHgxLjRjY2NjY2NjY2NjY2VwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS41YWJkZTg1NWI3ZWZhMmNiZjY2ZTkyNjI1NjhlYmMyMHA5LAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAweDEuNWFjNmJkMTdkZjQ4NmE0NjE2Njg4MDVjNzBlMTY2ZjRwOSwKKyAgICAweDEuODAwMDAwMDAwMDAwMnAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMHgxLjVhY2VmZmU0M2ExNzg3NGFiMDBmZDQ3ZmMwYjgzOWE3cDksCisgICAgMHgxLjk5OTk5OTk5OTk5OWNwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIDB4MS41YWQ2YzI3MDZhMWJkZmY1NzU5YzM0MDk0OWEwMTVmMnA5LAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAweDEuNWFkZTEzNjdmMTJkMDBiZmRkZThhNmI4OTU0NTg3NTBwOSwKKyAgICAweDEuY2NjY2NjY2NjY2NkMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLjVhZTRmZjE0YWFiZjFiMjFhMGVmODBhNGJhNWZjNDQxcDksCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS41YWViOGZkYzAxYjIyMTYwNWMzNWFjOWViM2I4ODM0OXA5LAorICAgIDB4MS4wcDEwMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAweDEuNjJlNDJmZWZhMzllZjM1MzkzYzc2NzMwMDdlNWRkNWVwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgMHgxLjExZDE0ZTFmY2I3MmU0NmJjNzA2YjIxYzUwMDhiOWYxcC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLjExZDE0ZTFmY2I3MmVkY2IyOGEwMzJlMDgzYTZmMTk5cC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLjExZDE0ZTFmY2I3MmY3MmE4YTM5YjNhNGI3MTkzZDBlcC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgLTB4MS4zYTVhYmYwN2I3ODhmZjFiMDZlMDNjN2I3NDMwMWJiOHAwLAorICAgIC0weDEuNmEwOWU2NjdmM2JjZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIC0weDEuM2E1YWJmMDdiNzg4ZTNjYWI3YWNmY2RkOGUxODBjNWRwMCwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAtMHgxLjNhNWFiZjA3Yjc4OGM4N2E2ODc5YmQzZmFhZWEwNmU4cDAsCisgICAgLTB4MS42YTA5ZTY2N2YzYmNicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMHgxLmMzNDM2NjE3OWQ0MjU4MDQ4ZTBlYzUxYzZmZWZkNThjcC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAweDEuYzM0MzY2MTc5ZDQyNjU0NWNhZGJjMzk0MDk2ZTcxOWJwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2NwMAorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIDB4MS5jMzQzNjYxNzlkNDI3Mjg3MDdhOGMyMGJhMjk1MzU0NHAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjZHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgMHgxLjlmMzIzZWNiZjk4NGI0ODBiZTJjYmM0OTVhNjkzNDhicC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLjlmMzIzZWNiZjk4NGJmMmI2OGQ3NjZmNDA1MjIxODE5cC0yLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLjlmMzIzZWNiZjk4NGQ0ODBiZTJjYmM0OTVhM2U4OWUxcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLjFlODVmNWU3MDQwY2ZhYmEzMzUxM2FhYmYzMzI2ZGE1cC0xLAorICAgIDB4MS43ZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgMHgxLjFlODVmNWU3MDQwZDAzZGVjNTlhNWYzZTNjNmJlNWNmcC0xLAorICAgIDB4MS44cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLjFlODVmNWU3MDQwZDBkMDM1N2UzODNkMDg1N2I5MjM4cC0xLAorICAgIDB4MS44MDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgLTB4MS42MmU0MmZlZmEzOWYxMzU3OTNjNzY3MzAwOWU1ZWQ1ZXAwLAorICAgIC0weDEuODAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIC0weDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwMCwKKyAgICAtMHgxLjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWQzNTc5M2M3NjczMDA5ZTVlZDVlcDAsCisgICAgLTB4MS43ZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLmQ1MjQwZjBlMGUwNzZkM2I1ZTViMTYyZjM5ZDZiM2ZhcC0xLAorICAgIDB4MS43ZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuZDUyNDBmMGUwZTA3N2EwODJiMjdlMmZjMDZjYzc2OGFwLTEsCisgICAgMHgxLjhwMAorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS5kNTI0MGYwZTBlMDc4NmQ0ZjdmNGFmYzhkMzcwNGQ5NHAtMSwKKyAgICAweDEuODAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgLTB4MS4yNWU0ZjdiMjczN2ZhMTg0ODY2MTIxNzNjNjhhNjg5MnA1LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS45YzA0MWY3ZWQ4ZDMzMDQ5NzkxMTNlYWZhMGRlNTBhY3AwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEuOWMwNDFmN2VkOGQzMzZhZmRmNzdhNTE2MDc1OTMxZjRwMCwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjljMDQxZjdlZDhkMzQzN2NhYzQ0NzFlMmQzZDQxMzNicDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS4xOTNlYTdhYWQwMzBhNDIxNGVjNDM3ZmZhZmQ3ZWU3Y3AwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuMTkzZWE3YWFkMDMwYTk3NmE0MTk4ZDU1MDUzYjdjYjVwMCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjE5M2VhN2FhZDAzMGI0MjE0ZWM0MzdmZmFmYWQ0M2QycDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS42MmU0MmZlZmEzOWVlYjU3OTNjNzY3MzAwN2Q1ZWQ1ZXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIDB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAtMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLjYyZTQyZmVmYTM5ZjAzNTc5M2M3NjczMDA3YTVlZDVlcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAweDEuOWYzMjNlY2JmOTg0YjQ4MGJlMmNiYzQ5NWE2OTM0OGJwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuOWYzMjNlY2JmOTg0YmYyYjY4ZDc2NmY0MDUyMjE4MTlwLTIsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEuOWYzMjNlY2JmOTg0ZDQ4MGJlMmNiYzQ5NWEzZTg5ZTFwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuYzhmZjdjNzlhOWEyMGRmNTkwYjUyMjYzMmVjMzFhNzBwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuYzhmZjdjNzlhOWEyMWFjMjVkODFlZjJmZmI5YTI0YWVwLTMsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuYzhmZjdjNzlhOWEyMzQ1YmY3MWI4OGM5OTUwYWM4ODVwLTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuZTI3MDc2ZTJhZjJlNTA2NWM0ZjFjNTNjNWJhMjIwMjFwLTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuZTI3MDc2ZTJhZjJlNWU5ZWE4N2ZmZTFmZTllMTU1ZGJwLTQsCisgICAgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEuZTI3MDc2ZTJhZjJlN2IxMDZmOWM2ZmU3MDYzOWQ0NDdwLTQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuZjBhMzBjMDExNjJhNTcwOGJkODgwN2RmYTQxYzc4ZjhwLTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEuZjBhMzBjMDExNjJhNjYxN2NjOTcxNmVlYjMyZjEzMWFwLTUsCisgICAgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEuZjBhMzBjMDExNjJhODQzNWVhYjUzNTBjZDEzZjA0ZWVwLTUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEuZjgyOWIwZTc4MzJmZjU0YmFlYzhmZTZjNDRjNTExZmRwLTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuZjgyOWIwZTc4MzMwMDRjZjhmYzEzYzdiYzhhN2ViYWJwLTYsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuZjgyOWIwZTc4MzMwMjNkNzUxYjFiODlhZDA2MjU2NjVwLTYsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuZmMwYThiMGZjMDNlMmQzOGYxOTc4YzNiOWMxMzc5YjZwLTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAweDEuZmMwYThiMGZjMDNlM2NmOWVkYTc0ZDM3YWJkNTZkZjVwLTcsCisgICAgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuZmMwYThiMGZjMDNlNWM3YmU1YzZjZjJmY2I1Mzg1NThwLTcsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEuZmUwMmE2YjEwNjc4N2ZlMzM3MGYzYjE5Y2E3Mjc0NmVwLTgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuZmUwMmE2YjEwNjc4OGZjMzc2OTAzOTFkYzI4MmQyYjNwLTgsCisgICAgMHgxLjBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEuZmUwMmE2YjEwNjc4YWY4M2Y1OTIzNTI1YjJhMDliMWJwLTgsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAweDEuZmYwMGFhMmIxMGJiZjRiMDc2YzU1OWM0YzRjNzE5YThwLTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuZmYwMGFhMmIxMGJjMDRhMDg2YjU2OWI0ZDRiNzY5MTlwLTksCisgICAgMHgxLjBwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEuZmYwMGFhMmIxMGJjMjQ4MGE2OTU4OTk0ZjQ5NjhhZjZwLTksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAweDEuZmY4MDJhOWFiMTBlNTc5Mjc0ZWE1M2Y5NmMyYWM3M2JwLTEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS5mZjgwMmE5YWIxMGU2NzhhNzhlODU0ZjhlYzZhYzcyYnAtMTAsCisgICAgMHgxLjBwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuZmY4MDJhOWFiMTBlODc3YTgwZTQ1NmY3ZWNlYTA3Y2FwLTEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLmZmYzAwYWE4YWIxMGViYzQ0YzA1NTkxNGNkMzM2NGI5cC0xMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuZmZjMDBhYThhYjEwZmJjMDRkMDUxOTI0YzkzNDc0NzFwLTExLAorICAgIDB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS5mZmMwMGFhOGFiMTExYmI4NGYwNDk5NDRjMTM2MzQxMXAtMTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLmZmZjgwMDJhYTlhYWExMTE2NjYzOGIxMGFlYzNlMGE0cC0xNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEuZmZmODAwMmFhOWFhYjExMGU2Njc4YWYwYWZjM2RhYTRwLTE0LAorICAgIDB4MS4wcC0xMworICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDB4MS5mZmY4MDAyYWE5YWFkMTBmZTY2ZjhhYjBiMWMzYzJhNXAtMTQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgLTB4MS42MmU0MmZlZmEzOWYxMzU3OTNjNzY3MzAwOGU1ZWQ1ZXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcC0xLAorICAgIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIC0weDEuNjJlNDJmZWZhMzllZTM1NzkzYzc2NzMwMDgyNWVkNWVwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgLTB4MS4yNjk2MjExMzRkYjkzY2Q5MTQwY2JjYzE2MDM3ZmI4NnAtMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAtMHgxLjI2OTYyMTEzNGRiOTI3ODNiZWI3Njc2YzBhYTljMmEzcC0yLAorICAgIC0weDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIC0weDEuMjY5NjIxMTM0ZGI5MWNkOTE0MGNiY2MxNjAwZDUwZGJwLTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgLTB4MS4xMTc4ZTgyMjdlNDdkMDJjNWQ0NjY4ZWJjMDQ2MjhhZXAtMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAtMHgxLjExNzhlODIyN2U0N2JkZTMzOGI0MWZjNzJkZTgxZTNicC0zLAorICAgIC0weDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIC0weDEuMTE3OGU4MjI3ZTQ3YjRiZWE2NmFmYjM0ZTRjOGM1NmFwLTMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgLTB4MS4wODU5OGI1OWUzYTA3OTliNTBlYWQwNjE0NDhjZWM2Y3AtNCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAtMHgxLjA4NTk4YjU5ZTNhMDY4OGEzZmQ5YmY1MDMzNzJjMTJmcC00LAorICAgIC0weDEuMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIC0weDEuMDg1OThiNTllM2EwNjAwMWI3NTEzNmM3YWFlYzdmMzJwLTQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgLTB4MS4wNDE1ZDg5ZTc0NDQ1Nzg1OTRjZjlmNWUwY2FmMjk3MXAtNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAtMHgxLjA0MTVkODllNzQ0NDQ3MDE3M2M3NWQ0ZDg4ODlkZTBlcC01LAorICAgIC0weDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIC0weDEuMDQxNWQ4OWU3NDQ0M2ViZjYzNDMzYzQ1NDY3YTZhYjVwLTUsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgLTB4MS4wMjA1NjU4OTM1ODQ4NGUwMjdiMTQ2YmRkN2ZlYWVlMXAtNiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAtMHgxLjAyMDU2NTg5MzU4NDc0OWYyM2ExMDViOWM3YmI5YTZmcC02LAorICAgIC0weDEuMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIC0weDEuMDIwNTY1ODkzNTg0NmM3ZWExOThlNTM3YmY5YjljN2ZwLTYsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgLTB4MS4wMTAxNTc1ODhkZTcyMmFkMGNkYjg0ZmRlMjEyMThkOHAtNywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAtMHgxLjAxMDE1NzU4OGRlNzEyOGNjYzVhODJmOWRhMDBmNDhicC03LAorICAgIC0weDEuMHAtNworICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIC0weDEuMDEwMTU3NTg4ZGU3MGE3Y2FjMWEwMWY3ZDVmOTI1NmVwLTcsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC04CisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgLTB4MS4wMDgwNTU5NTg4YjM2N2Y1YThmMzRkOWRhZGM0MGIzYXAtOCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAtMHgxLjAwODA1NTk1ODhiMzU3ZTU5OGUzM2Q4ZDlkYjM3YTI5cC04LAorICAgIC0weDEuMHAtOAorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIC0weDEuMDA4MDU1OTU4OGIzNGZkZDkwZGIzNTg1OTVhYjkyNjFwLTgsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC05CisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgLTB4MS4wMDQwMTU1ZDU4ODllZTc4NmIyMGVmYzE0MDBmNWVhNHAtOSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAtMHgxLjAwNDAxNTVkNTg4OWRlNzA2NzFlZWVjMGJmY2VmZTUzcC05LAorICAgIC0weDEuMHAtOQorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIC0weDEuMDA0MDE1NWQ1ODg5ZDY2YzY1MWRlZTQwN2ZhZWZlNWJwLTksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIC0weDEuMDAyMDA1NTY1NTg4YTMzOTdkZDgyMjA0OGFiZTI3NTVwLTEwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAtMHgxLjAwMjAwNTU2NTU4ODkzMzU3Y2Q3ZTFmNDg2YmQwNzA1cC0xMCwKKyAgICAtMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgLTB4MS4wMDIwMDU1NjU1ODg4YjMzN2M1N2MxZWM4NGJjOGVlOXAtMTAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIC0weDEuMDAwNDAwMTU1NWQ1Njg4OTFkZTI3MDRiMDM4Y2E1OTZwLTEzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAtMHgxLjAwMDQwMDE1NTVkNTU4ODg5ZGRlNzAyYjAyOGM5OTk2cC0xMywKKyAgICAtMHgxLjBwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgLTB4MS4wMDA0MDAxNTU1ZDU1MDg4NWRkYzcwMWIwMjBjOTY5NnAtMTMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIDB4MS43MzI0MmQ0NTI2NzM3NmQzYTJhMGE4MjBjNDkwMjMzNXAtMSwKKyAgICAweDEuMTA4MmI1NzdkMzRlYXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgMHgxLjczMjQyZDQ1MjY3Mzg2NTNhZDRhNDFkNWZlN2VhNmMxcC0xLAorICAgIDB4MS4xMDgyYjU3N2QzNGVicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuNzMyNDJkNDUyNjczOTVkM2I3ZjNkYjhiMzdmNTA5YThwLTEsCisgICAgMHgxLjEwODJiNTc3ZDM0ZWNwMAorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS43MzI0MmQ0NTI2NzNhNTUzYzI5ZDc1NDA3MGYzNGJlYXAtMSwKKyAgICAweDEuMTA4MmI1NzdkMzRlZHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgMHgxLjczMjQyZDQ1MjY3M2I0ZDNjZDQ3MGVmNWE5Nzk2ZDg2cC0xLAorICAgIDB4MS4xMDgyYjU3N2QzNGVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuNzMyNDJkNDUyNjczYzQ1M2Q3ZjBhOGFhZTE4NzZlN2VwLTEsCisgICAgMHgxLjEwODJiNTc3ZDM0ZWZwMAorICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIDB4MS43MzI0MmQ0NTI2NzNkM2QzZTI5YTQyNjAxOTFkNGVjZnAtMSwKKyAgICAweDEuMTA4MmI1NzdkMzRmMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxOGFkZTBlOGNiNjg0ZTA4MzQ2OHAtNCwKKyAgICAtMHgxLmYwNTQwNDM4ZmQ1YzZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwMjljYjNkMGNjZGQ3M2VhODVhcC00LAorICAgIC0weDEuZjA1NDA0MzhmZDVjNXAtNQorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIC0weDEuMDAwMDAwMDAwMDAwMDdhNWI1OTE0ZTMzNjA3OWE0YTVwLTQsCisgICAgLTB4MS5mMDU0MDQzOGZkNWM0cC01CisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZTQzM2ZjYjFmMzFkMzcyNTI5MHAtNSwKKyAgICAtMHgxLmYwNTQwNDM4ZmQ1YzNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVkM2IxNDczYTFmY2U1ZmE2Yzg2cC01LAorICAgIC0weDEuZjA1NDA0MzhmZDVjMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZGMzMmU5MWMyNGM3Zjg4Yjk3MmNwLTUsCisgICAgLTB4MS5mMDU0MDQzOGZkNWMxcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjYjJhYmRjNGE3OTMwYjI1ZDI4MnAtNSwKKyAgICAtMHgxLmYwNTQwNDM4ZmQ1YzBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS42MmU0MmZlZmEzOWVmMzUzOTNjNzY3MzAwN2U1ZGQ1ZXA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAweDEuNjJlNDJmZWZhMzllZjM0ZjkzYzc2NzMwMDdlNWFkNWVwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgMHgxLjZiY2JlZDA5ZjAwYWVjZTJlYTgwMGI2YWYwZjI0YTBicDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIDB4MS5lMzcwM2RiMGFiMTE5YmVkM2U3NjNmNDM0ZGQ3YzRmYnAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMHgxLjYyZTQyZmVmYTM5ZjAzNTc5M2M3NjczMDA3YTVlZDVlcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM0OQorICAgIDB4MS42MmU0MmZlZmEzOWVlYjU3OTNjNzY3MzAwN2Q1ZWQ1ZXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIC0weDEuMjVlNGY3YjI3MzdmYTE4NDg2NjEyMTczYzY4YTY4OTJwNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAweDEuMjhjNmMzYTc5ZmUyOTVjN2NhNjRlZDk4MjY0MmFkY2ZwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTIKKyAgICAtMHgxLjg5ZjlmZjBjNzYxYmM1NDU0ZjE3ZWM1MzllODg3ZDM3cDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzUzCisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIDB4MS5mZmZmZmZmZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIC0weDEuZmZmZmZmZmZmZmZmYzBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzYxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDc0LAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgLTB4MS5wLTEwNzMsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzY0CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIC0wLjAsCisgICAgLTAuMAorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2xvZzFwZl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvbG9nMXBmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNTE5YTYzCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2xvZzFwZl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxMTgyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZmxvYXQsIGZsb2F0PiBnX2xvZzFwZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEuNjMwNDMwZWZhZTRhMWUwOGE1MmRkMjI4Zjc3NDc0N2FwLTEsCisgICAgLTB4MS4wMDEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0weDEuMGE2YTk1MDMyMGI4MTUzMDljZWU3NmM2YzM0NmFhOGFwLTYsCisgICAgLTB4MS4wODQzMTBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS40NTkyZjRkZjNjMjIzODBhOGE3YTZiZDI1NmEyMzFjOXAtMiwKKyAgICAtMHgxLjE2ZTQ4MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAtMHgxLjUzNjJiNmRlZWNlNTNlMjg5MzBlMGQ3NWYzYjBlOTY5cC0yLAorICAgIC0weDEuMjBlMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMHgxLjY2ZWEwZWRlYzI5Y2NhY2NiYmM5NDU5ZTU1NTgzODUycC0yLAorICAgIC0weDEuMmVjM3AtMgorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAtMHgxLmU1ZWUwMmVmNjQzNzQyYjQwNjkxY2ZiYmU1YzM0MjM1cC0xLAorICAgIC0weDEuMzljZTgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIC0weDEuZWUyYTE1NmI0MTNlNGZlOGI0OGUwNGExYTgxZDdkMWZwLTIsCisgICAgLTB4MS44OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAtMHgxLmFmODk2N2Q4OTBjZWI1YWUyYzI1YWMyMmJlM2Q1ZDE0cC00LAorICAgIC0weDEuOTk5NTAycC00CisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIC0weDEuYzUwZTllMDBjMDM0NmYwMjUzZTA4YTY4NGJiYjlhN2VwLTcsCisgICAgLTB4MS5jMWYwODBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgLTB4MS5kMjQwZWQwMTQwNGRlYmZjYTg0ODVmNDE1OTIzODY3OHAtNywKKyAgICAtMHgxLmNlZjNjMHAtNworICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgLTB4MS5lM2Q2ZmYwMTRmYjY1MGY0MGZjY2U4NDg4OTQyNGRhZHAtNywKKyAgICAtMHgxLmUwNDkwNnAtNworICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgLTB4MS5lM2RiY2IwMTIyNDlhNmQ5OWZhMmMyY2NkZGRkYWNjN3AtNywKKyAgICAtMHgxLmUwNGRjMHAtNworICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgLTB4MS5lOTkyNGIwMWE3NTNjZWNmZDMzZjJkNTM2Yjg0ZjAyZnAtNywKKyAgICAtMHgxLmU1ZWViMHAtNworICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgLTB4MS5mODJiYTBlNzhhYjIwNGY2NWExNzczNDkzMzczMjk4N3AtNiwKKyAgICAtMHgxLmYwN2VwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIC0weDEuZjljMTNiMDIwNzJkZDk2MThiOTgwM2VkN2RkZmJhYmVwLTcsCisgICAgLTB4MS5mNWRmMmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIC0weDEuZmEyZjVkMDFjODcxZDIyY2RlNzBjYzA4NWNlZDAyZWJwLTcsCisgICAgLTB4MS5mNjRiYTBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIC0weDEuZmIxMTc1MDIxY2MzZTEyNzJmM2M2YjEwMzI0OGZjMjlwLTcsCisgICAgLTB4MS5mNzJhNDBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIC0weDEuZmQ2OWY3MDIyN2I0ZmVhNjA2NzFlNjhkY2I0ZGVlNmNwLTcsCisgICAgLTB4MS5mOTc5ODRwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIC0weDEuNjJjNDJlZWZiOGYzYzhhNjgzNjBmYzM3MTg2MjEwZWRwLTEsCisgICAgLTB4MS5mZmRmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIC0weDEuZmZmZmZkZmZmZmZhYWFhYWE2YWFhYWIxMTExMTI2NjZwLTI0LAorICAgIC0weDEuZmZmZmZjcC0yNAorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLmZmODAyYTlhYjEwZTY3OGE3OGU4NTRmOGVjNmFjNzJicC0xMCwKKyAgICAweDEucC05CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuZmZjMDBhYThhYjEwZmJjMDRkMDUxOTI0YzkzNDc0NzFwLTExLAorICAgIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEuZmZmZmYwMDAwMGFhYWFhMmFhYWIxMTExMGJiYmJjMDRwLTIxLAorICAgIDB4MS5wLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuZmZmZmY4MDAwMDJhYWFhOWFhYWFiMTExMTBlNjY2NjdwLTIyLAorICAgIDB4MS5wLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjEsCisgICAgMHgxLnAtMTIwCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLmZjMGE4ZWZmZmY0MjFkYjYwMTQ5NTZjZjkzNmM1MjQ2cC03LAorICAgIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5mZmZmYzQwMDA5YWFhOGU5YWIwMTkwZmY4YzE0YjMxOXAtMTksCisgICAgMHgxLjAwMDAwMnAtMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS4wMDAwMDBmZmZmZmQ1NTU1NTc1NTU1NTg4ODg4N2RkZHAtMjMsCisgICAgMHgxLjAwMDAwMnAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS4wMDAwMDFmZmZmYmZmZmZmMDAwMDE0NTU1NWQ1NTU0ZXAtNDEsCisgICAgMHgxLjAwMDAwMnAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5lMjcwODUxYjkyYjY0NTU1ZmI0MjEyMDNhYTBiY2I1Y3AtNCwKKyAgICAweDEuMDAwMDA4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuMTkzZWFkMDAyNTc3YzVlODlkYzc2MDRiODlmYzdjZWJwMCwKKyAgICAweDEuMDAwMDA4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS4xOTNmM2NmZmY5ZjdkNmQ4OTY1ZTRlNmI4MThjYjYyMnAwLAorICAgIDB4MS4wMDAwZTBwMQorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLmZmZDAwNmE5OWFkOTA4ZDI5MzEyMjM0ZWYzMDFmOGE3cC0xMSwKKyAgICAweDEuMDAwOHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS5mMmE3YzcwMDAwNGIwMGYxY2I3NzU1MzZjNTg1NzI1MnAtNSwKKyAgICAweDEuMDExMjhjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEuY2FiYzE5MDAwMzExNDM3ODc5YWZjY2RiNmZjOTFhYWZwLTMsCisgICAgMHgxLjAxMTZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS4yMDc5NDcwMTU3OTI1MzY0N2E0M2NlY2QwNGMwOTNlMnA0LAorICAgIDB4MS4wMWZmZmVwMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS4wMmQ1OWJmZmZlYmJlZTNlYzBjMTU5YjIzOTE4OGM2OXAtNywKKyAgICAweDEuMDNkY3AtNworICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLmVhNWYxMTAwMGZjYTNmZjk0YmNlZWZkZGJlNjdiNTUzcC00LAorICAgIDB4MS4wNDc3NTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5iZTY5YzRmZmZmZWRkMmNiNWU1ZjA0NmU5NDkyNTFjYXAtMiwKKyAgICAweDEuMTdjNWYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuZjQwYWRlNzkwMjc3NDU1MjE5MjA4ZTZjYmNlMTJjODFwLTMsCisgICAgMHgxLjFiMzBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS5iMTdkNjE0NTQ4YjY5YTc0NTA5ZTlkMDAzYzA5NmFjZHAwLAorICAgIDB4MS4xY3AyCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuYzQwMTdlZmZmZWM4MzliOTZjZDFhMDQzZDU5ZTU3MzVwLTIsCisgICAgMHgxLjFjMWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS42ZmI2N2VmZmZiMjY1NzhhMDUyN2Y2MTM2MmFjOGZhOHAtOCwKKyAgICAweDEuNzBiZjE0cC04CisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuN2I5Yjk4MmIyN2Q4ZmQ2NWY3ODM2M2QzZGVkYzk3YjJwLTE0LAorICAgIDB4MS43YjlmZmVwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuNDQwMmMwZmZmZmZmZjFlZThmNjU5ZGE1ZWEzYWYyOTZwLTIsCisgICAgMHgxLjdkMjI4NnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLjQ1MzI1MmZmZmZmZjliOTQxZGZkMDdmYmZlMzY2ZTk4cDMsCisgICAgMHgxLjk0ZDRlYXAxNAorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLjk4MWViNjAwMDAxMWIwNWVjYjU5Yzc1NDVmZjkyOWZhcC00LAorICAgIDB4MS5hZDI1MGFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5mZjFlMWU3M2U3MTNkYzVhNDRlNDVmOWMzZjI4YjdjOHAtMSwKKyAgICAweDEuYjZhZTk0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS45OTAxOTNmZmZmZGQ2ZjlmZWUzN2Y4MDhjZDI2NjNhYnAtMywKKyAgICAweDEuYzRiNTI4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuY2QxNWZlZmZmNjk2NDBhZWEzNDUzNDEzNGM4ODRjZjVwLTE0LAorICAgIDB4MS5jZDFjN2NwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEuZDI5Yjg2NGMzNjc4ZGI5ZmFmYjkyOTU3MDNiYjJiYzFwLTcsCisgICAgMHgxLmQ1ZjIwZXAtNworICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLmRiOGJlN2M1MTFkMDBlMDA4NDE1Mjg4Y2U5YTI1MTYzcC04LAorICAgIDB4MS5kZDQ2YWFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS45YTM3Y2IwMDAwMDZjZjlhYzllM2IwZWVkZWM1NTNmZnAtMiwKKyAgICAweDEuZjg4Y2Y2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuMGIyMTQ4MDAwZDUyMTc1ZDgwYzU0ODg3YjBkNGE0NzBwMiwKKyAgICAweDEuZmZiZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIDB4MS5mYzA5MGVmZmZkMGRlZTZlYjAyZjJmYTViNWQzNTRhZnAtNywKKyAgICAweDEuZmZmZTdlcC03CisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuMTkzZTI3MDAwNTMwNjViZDgzNzhmYmJkM2I2MzdlYjZwMCwKKyAgICAweDEuZmZmZTdlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS5mODI5NzBlNzgzMTAwNGNmN2E2YmU3MTY3MzUyODk4OXAtNiwKKyAgICAweDEuZmZmZmJlcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuMTkzZWE1MDAyNTgyNzA5MzBmOGU3ZDdhZjI0NGRjZmZwMCwKKyAgICAweDEuZmZmZmY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS5mZmZmZjQwMDAwNGFhYWE4OGFhYWJiMTExMDhkMTExNXAtMjIsCisgICAgMHgxLmZmZmZmY3AtMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS4xMWQxNGRlMmU2YTc3MjgwODQxZTg5MmZhYzkwY2NmYXAtMSwKKyAgICAweDEuNmEwOWU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuMmNjYWM2ZDA0ODM0ZDAzYzUxM2EwZjAzZDRjODliODNwLTEsCisgICAgMHgxLjk5NTI1NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLjQ2NmE5MmFlNTQ1M2Q5NWIwYmE2NjMxNDk3Mzg4ZTkycC0xLAorICAgIDB4MS5jODlhYzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS41ZWQxYTg1OTk5YmE3YjhiNTQ0MGNlN2U1YTZiNTZmMnAtMSwKKyAgICAweDEuZjdlMzM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuNzYxYzdkNTZlMjVmM2Y3MzY5ZWIyZThkMzNiODIwOWNwLTEsCisgICAgMHgxLjEzOTVkMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEuOGM2M2QyNmY1OTdmMTcxZTRkNDRmZjRiMzAzNTY1NTVwLTEsCisgICAgMHgxLjJiM2EwYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEuYTFiZDRjOWU0MWRmMWRiYzliZGNmNTI1NDhmZTc1YjJwLTEsCisgICAgMHgxLjQyZGU0MnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEuYjYzYmY4MTFhNWYyYWM5M2E1ZDE3ZWM5MWJiNWRhYWJwLTEsCisgICAgMHgxLjVhODI3YXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuYzlmMGFkYjc2YjQxMTJhZmFjZDRlYmUyYTgyODUwYzZwLTEsCisgICAgMHgxLjcyMjZiMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAweDEuZGNlYTY2YzgwN2I4ZWQ5MmY0MWE0Yzc5NjhiNTU1OWZwLTEsCisgICAgMHgxLjg5Y2FlYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuZWYzNjgxNjE3NTlkNWE5YmIyZGE1MTgzM2QyYjUwMmJwLTEsCisgICAgMHgxLmExNmYyMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuMDA3MDdjYTU0NGZjYjUyMzE1ZWJhZmQ1NzhiODcyYjNwMCwKKyAgICAweDEuYjkxMzVhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS4wOGZhNGI5ZWRlOGEwYjU4YjRjYWQ5YzE4MmI1YmM3YXAwLAorICAgIDB4MS5kMGI3OTJwMAorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgMHgxLjExM2Q4YzQ4OWEwMjBiMTQ4NWFlYWRjYmQ4MzI4ZTM5cDAsCisgICAgMHgxLmU4NWJjYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuMTkzZWE3YWFkMDMwYTk3NmE0MTk4ZDU1MDUzYjdjYjVwMCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS4xMWQxNGRlMmU2YTc3MjgwODQxZTg5MmZhYzkwY2NmYXAtMSwKKyAgICAweDEuNmEwOWU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuMjY5OTBkNzEyYWNhZjM3N2RiOTk5YjdhNGQ2ZjBkNzdwLTEsCisgICAgMHgxLjhlM2UxNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLjNhOTE0OTM0MGRiMzE0ZWEzMjM1NmVjZWZhYzQ4MXAtMSwKKyAgICAweDEuYjI3MjQ2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEuNGRjOTk2OTU3MTBjNjViOWJjZjBiYjZiOGVkZDVkMjFwLTEsCisgICAgMHgxLmQ2YTY3NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLjYwNGZkOWQzNzE5ZGZlOTM1ZTMzZGRjN2Q2OTc5MTRicC0xLAorICAgIDB4MS5mYWRhYTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS43MjMwODM3ZmRlNmE4NDM4YjRhNDU3ZTIwYThlMDZmZXAtMSwKKyAgICAweDEuMGY4NzZjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS44Mzc2YmVlNWQwODhjNTBhOTQ1OGJjNmY3YWU5YTc4M3AtMSwKKyAgICAweDEuMjFhMTg0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS45NDJjYTIwZThjZGRkMWRiNDVmZDI4YTgxMjhiYTEyMnAtMSwKKyAgICAweDEuMzNiYjljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS5hNDViNGQzNmNmMzQ4NmM2MjI0NWZmM2ZhMjkxNWY2ZnAtMSwKKyAgICAweDEuNDVkNWI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS5iNDBiMDlkMjk4MmRkZTVmYTY3OWNmMzA3ZTU4NTdjMnAtMSwKKyAgICAweDEuNTdlZmNjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS5jMzQzNjQxOTU3YzUzNjg3ZGVhZmQxNWE0NDMyNmM2Y3AtMSwKKyAgICAweDEuNmEwOWU0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS4xZTg1ZjVlNzA0MGQwM2RlYzU5YTVmM2UzYzZiZTVjZnAtMSwKKyAgICAweDEuODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS4zNDAyNGE4YzVmNjFjODJhYzYxZTMxODA4NzkwOGRmNnAtMSwKKyAgICAweDEuYTY2NjY2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuNDhhMTEyMjgwZDZhYmRlOTZhYzY3YjFmYjVlY2IxNDZwLTEsCisgICAgMHgxLmNjY2NjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLjVjNzM3NTZmYjBkZWEyMDg3Y2Q5MGQ4YjdiYzk5N2E5cC0xLAorICAgIDB4MS5mMzMzMzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS42Zjg4YjFiZWU0MjI3MmZmMGE1N2RiNzUwOTZkNTg1ZXAtMSwKKyAgICAweDEuMGNjY2NjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS44MWVlNjBhZmI1MDE5OWI5MTA5MGQ4OWVmMzE4ZGU5MHAtMSwKKyAgICAweDEuMjBwMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjkzYjBhZjljNGFiODAxOWUyNzlmOWMzYmM4YTM3OTU1cC0xLAorICAgIDB4MS4zMzMzMzRwMAorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLmE0ZGE5MzJlMjg1Y2NjM2ZjMDdmMTE4NzAxMTQ1YTQxcC0xLAorICAgIDB4MS40NjY2NjhwMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLmI1NzVlZjEyMjgwYzRkMWI0ZjA2YTQ2ZTI1ZThhNGE2cC0xLAorICAgIDB4MS41OTk5OWNwMAorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLmM1OGJiODQ5YWE3NDU3YTlhYmJkYWMwNjM4MzNkNzI0cC0xLAorICAgIDB4MS42Y2NjZDBwMAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLmQ1MjQwZjBlMGUwNzdhMDgyYjI3ZTJmYzA2Y2M3NjhhcC0xLAorICAgIDB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwLTEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuN2JkZjM2OTAxYzdmMzUwMDQxZGE2ZWYxMzA0Mzk1Y2VwLTEsCisgICAgMHgxLjE5OTk5YXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAweDEuOTNiMGFmOWM0YWI4MDE5ZTI3OWY5YzNiYzhhMzc5NTVwLTEsCisgICAgMHgxLjMzMzMzNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmFhNzMxMTkyMzkxYTg4NjNmNGJmZTg0NTI5OTFjMTQxcC0xLAorICAgIDB4MS40Y2NjY2VwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS5jMDNkNzE4YzhiNGRhZmNhZTllOGJlNzhjZjgzY2JmNHAtMSwKKyAgICAweDEuNjY2NjY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuZDUyNDEwYTdhN2EwNmZjYWJhZGI2ZDkwYTRhMTk3OTNwLTEsCisgICAgMHgxLjgwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLmU5MzhjZGE3NGVmNmQwYmUxNzkzMDRiNTI2MTllYjgycC0xLAorICAgIDB4MS45OTk5OWNwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS5mYzhiODEyNjgyNjI0MjYxNGI0ODFkODNhYWVjM2NiZHAtMSwKKyAgICAweDEuYjMzMzM2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEuMDc5NTI0ODBiMGVhMzVhNjI1NmIyMDM3MTU4ZjM5ZmRwMCwKKyAgICAweDEuY2NjY2QwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuMTA5MGUzNDBlMDI5MzVlZGExNzcyOGI1N2RiYjI5NzRwMCwKKyAgICAweDEuZTY2NjZhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuMTkzZWE3YWFkMDMwYTk3NmE0MTk4ZDU1MDUzYjdjYjVwMCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcC0xLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgLTB4MS4zMjE3YjA0MmZjODVlNTEwZmZlZjMyMjQ0NzI4NjE2N3AtMSwKKyAgICAtMHgxLmNjY2NjY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIC0weDEuMDU4YWVlNTJiYmYwMzZlNDNkYTYwZmU3NDA0ODBlYzhwLTEsCisgICAgLTB4MS45OTk5OThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAtMHgxLmI5MWYyNDZmZjA4ZTJiZTIxZmY3OTM1NWQzNjNkZTc1cC0yLAorICAgIC0weDEuNjY2NjY0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgLTB4MS42ZDNjMmRiYmNhZDJmNmM1Yjk3MTFiZTNjOTVhY2Q4M3AtMiwKKyAgICAtMHgxLjMzMzMzMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIC0weDEuMjY5NjFkMTM0ZGJiMjc4M2JkNjIxMjE3YjU1NDZjODBwLTIsCisgICAgLTB4MS5mZmZmZmFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAtMHgxLmM4ZmY3NTc5YTlhNTJhYzI1YmI4OTlkYmQyNjRjZTg2cC0zLAorICAgIC0weDEuOTk5OTk0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS40Y2Q2YjM1YjQ1ZmJiOWVkOTJjY2ZkN2YxMGQyOWRmY3AtMywKKyAgICAtMHgxLjMzMzMyZXAtMworICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIC0weDEuYWY4ZTc3NjVmOTZlYmE3NDQ5ZDJlMzY5ZWRiODE1ZDhwLTQsCisgICAgLTB4MS45OTk5OTBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAtMHgxLmE0MzFjMTFiMTI3MWIzYzg1MDFjZmFmOWQzMzE5MDE1cC01LAorICAgIC0weDEuOTk5OTg2cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuOGZiMDY0NTBiMjk2ZjdiNjZhYjFhNTQ5YWU0ODI2YTJwLTUsCisgICAgMHgxLjk5OTk5YXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS44NjYzZjdmMGRiYjIzYTIzYjE4YTk5ZjEzYjA2ODM5YXAtNCwKKyAgICAweDEuOTk5OTlhcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjFlM2I4MzBmZTZhMTc5NzRjN2JkODRjNGUzZWFiODJjcC0zLAorICAgIDB4MS4zMzMzMzRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuNzU2NTAxNzM5ZWJjYjcyMmFkMTA3OTk1NGFiNjRhYmJwLTMsCisgICAgMHgxLjk5OTk5YXAtMworICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5jOGZmN2M3OWE5YTIxYWMyNWQ4MWVmMmZmYjlhMjRhZXAtMywKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjBjYTkzODViYTU3NjRmNDAyNjViODg0MjI3N2RlYzI3cC0yLAorICAgIDB4MS4zMzMzMzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuMzM0ZTlmNzczOGNhZjY5MWQ5MDI4ZjcwZDAwMzlmZWZwLTIsCisgICAgMHgxLjY2NjY2OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS41ODhjMmY0ODBlYjY1MzJkNTc1NTJkMjRhMjJjMThiOHAtMiwKKyAgICAweDEuOTk5OTljcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLjdjN2IyYTYyMDQ3MjNlMGFiNTJhOTYwYTIxZGJlNDYxcC0yLAorICAgIDB4MS5jY2NjZDBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuOWYzMjNlY2JmOTg0YmYyYjY4ZDc2NmY0MDUyMjE4MTlwLTIsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIC0weDEuN2Y3NDI1YjczZTNkMTUwM2FlZjRkYjk4NWNmNDdlOThwMSwKKyAgICAtMHgxLmU2NjY2NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0weDEuMjZiYjE5YmI1NTU1NTgyZGNhMDMwMWNjNWFmYjAzNDBwMSwKKyAgICAtMHgxLmNjY2NjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIC0weDEuZTVhOWEzYzNhYzQ5ODA5MGI5ZDAyOWRiYjRhZDgwN2FwMCwKKyAgICAtMHgxLmIzMzMzMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEuOWMwNDFiN2VkOGRiMzZhZmNhMjI1MDAwYjIwMzBmZDJwMCwKKyAgICAtMHgxLjk5OTk5OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIC0weDEuNjJlNDJiZWZhM2E2ZjM1NzdlNzIxMjFhYjI4ZmNiM2NwMCwKKyAgICAtMHgxLjdmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuMzQzNzhiY2JkYTdhMDZlNGVmZWM3NjQzYjBiYTg5Y2JwMCwKKyAgICAtMHgxLjY2NjY2NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIC0weDEuMGNjMTIwOGI1NmQ0YjRjMDY3NTUyMDYxOTNjZDFjZWFwMCwKKyAgICAtMHgxLjRjY2NjYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEuZDUyNDA3MGUwZTE3N2EwODAwN2QzOGQxNWMyMDMyNDVwLTEsCisgICAgLTB4MS4zMzMzMzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAtMHgxLjk4ZDVmODMxYjgzMWFlMzQyYjZkMzkwZDVlZTQwNzhhcC0xLAorICAgIC0weDEuMTk5OTk2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAtMSwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS4xNTQyNDU3MzM3ZDQyZTFjNmI3M2M4OWQ4NjZiYTE3MXA2LAorICAgIDB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgMHgxLjE1YTNkZTcyOTEyMjYwMzhmODliNzkwNzlkZTc0YjE1cDYsCisgICAgMHgxLjE5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuMTVmY2Y3ZjY3MWEzOGI5NTUyMjAwYjRjMTdmMDMyODRwNiwKKyAgICAweDEuMzMzMzM0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDB4MS4xNjRlZWVhZWE3MmFkZGQ3Mzg3YjVmZDg5MDk5NDQ4MXA2LAorICAgIDB4MS40Y2NjY2VwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLjE2OWFkMWE1NWI1MDk5MGM1NGUxZTY1MDAyOWZjOTVhcDYsCisgICAgMHgxLjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAweDEuMTZlMTc3Yjc1OTIzMDRhMmIzNTE5MDM3MDg5NDUxYzVwNiwKKyAgICAweDEuODAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS4xNzIzOGUxYWRhNDY5Njc1Yjk3MTE2NzQ0OTU1YTA0MHA2LAorICAgIDB4MS45OTk5OWNwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMHgxLjE3NjFhMjdjZjBmZmYxNmMxZTg2YjE4MzMxMDYzMWRmcDYsCisgICAgMHgxLmIzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuMTc5YzJhMzlhZjY0Mjc1N2E2YTYxYjAwYmJhMTYwYWVwNiwKKyAgICAweDEuY2NjY2QwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS4xN2QzODc5ZmYzYjkxNzczNWUzYmI5NDdhMWU1NDc2ZnA2LAorICAgIDB4MS5lNjY2NmFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLjE4MDgwZGQzMTcxYjZjMDMxYTliNTc2YmU2NWI2ZDRjcDYsCisgICAgMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAweDEuNjJlNDJmZWJhMzllZjE1NzkzYzYxMWRhYjE5MDk4MDhwNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLjExZDE0Y2I2ZmE3M2M2ZTNlMmIzMmZkYzJlMzkxODdjcC0xLAorICAgIDB4MS42YTA5ZTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAweDEuMTFkMTRkZTJlNmE3NzI4MDg0MWU4OTJmYWM5MGNjZmFwLTEsCisgICAgMHgxLjZhMDllNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS4xMWQxNGYwZWQyZGE2ZTZjNTg5ZmI1ZjQzMzJkNDc2ZnAtMSwKKyAgICAweDEuNmEwOWU4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS4zYTVhYzFjMDRjNWYzYjQ5MTNiNzk5ZGE5ZDczODE3M3AwLAorICAgIC0weDEuNmEwOWU4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgLTB4MS4zYTVhYmU1NjQyNzU1ZDIyMTVkMDY2NTZhYmIzOGM1ZHAwLAorICAgIC0weDEuNmEwOWU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTB4MS4zYTVhYmFlYzM4OTcyNzIyYTE1ZmQxZDVjMGE4OWMzNnAwLAorICAgIC0weDEuNmEwOWU0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLmMzNDM2NDE5NTdjNTM2ODdkZWFmZDE1YTQ0MzI2YzZjcC0xLAorICAgIDB4MS42YTA5ZTRwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIDB4MS5jMzQzNjVjMTdmNWZjZDVmMDgwMDA4M2M1ZjNmMmRlM3AtMSwKKyAgICAweDEuNmEwOWU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuYzM0MzY3NjlhNmY5MDRkNDk3NTk0NzFiY2ZjZTQ0OTBwLTEsCisgICAgMHgxLjZhMDllOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgMHgxLjlmMzIzZDc2YTQyZjMwZjI4NTNjODliN2Y1NTRhOTdicC0yLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEuOWYzMjNlY2JmOTg0YmYyYjY4ZDc2NmY0MDUyMjE4MTlwLTIsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIDB4MS45ZjMyNDE3NmE0MmU4NjQ3ZGIwM2E2Mjk4ZDA4Y2Y4M3AtMiwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMHgxLjFlODVmNGMyNzFjMzhiYjRmOWI5MzhhZTYyODU2YTc1cC0xLAorICAgIDB4MS43ZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAweDEuMWU4NWY1ZTcwNDBkMDNkZWM1OWE1ZjNlM2M2YmU1Y2ZwLTEsCisgICAgMHgxLjgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLjFlODVmNzBiOTY1NWQ0ZDk4YzQyMGRhNDJmNDU3YTZlcC0xLAorICAgIDB4MS44MDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLjYyZTQzM2VmYTNhNmYzNTdhOTFjYmNjNTVkM2MwZjgwcDAsCisgICAgLTB4MS44MDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDAsCisgICAgLTB4MS44MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEuNjJlNDJiZWZhM2E2ZjM1NzdlNzIxMjFhYjI4ZmNiM2NwMCwKKyAgICAtMHgxLjdmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS5kNTI0MGQ3NDc0NmQzYzk3ODZmOTc3MWY1MjA3NGVmM3AtMSwKKyAgICAweDEuN2ZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAweDEuZDUyNDBmMGUwZTA3N2EwODJiMjdlMmZjMDZjYzc2OGFwLTEsCisgICAgMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuZDUyNDEwYTdhN2EwNmZjYWJhZGI2ZDkwYTRhMTk3OTNwLTEsCisgICAgMHgxLjgwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS4wYTJiMjNmM2JhYjczNjgxYWVkNThkNjQwNWVjNzIwNnA0LAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLjljMDQxZWIyMGMwNjE3Zjc4ZDYwNmYyN2FjZjY5ZTI4cDAsCisgICAgMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLjljMDQxZjdlZDhkMzM2YWZkZjc3YTUxNjA3NTkzMWY0cDAsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLjljMDQyMTE4NzI2Yjg4OWI2NWYzZTNlMjhlM2U0ZTY2cDAsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLjE5M2VhNzAwMjU4NWM1ZTg2YjFjYjY2YjE4MzIwMTZjcDAsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLjE5M2VhN2FhZDAzMGE5NzZhNDE5OGQ1NTA1M2I3Y2I1cDAsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLjE5M2VhOTAwMjU4NTFiM2RjMTU1OTlmODkzNzQ2MTFicDAsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLjYyZTQyZWVmYTM5ZWIzNTc5M2IyMTFkYWFhOTA5ODA1cC0xLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAweDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwLTEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjYyZTQzMWVmYTM5ZGYzNTc5NDcyMTFkYTMyOTA5ODZmcC0xLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIDB4MS45ZjMyM2Q3NmE0MmYzMGYyODUzYzg5YjdmNTU0YTk3YnAtMiwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLjlmMzIzZWNiZjk4NGJmMmI2OGQ3NjZmNDA1MjIxODE5cC0yLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAweDEuOWYzMjQxNzZhNDJlODY0N2RiMDNhNjI5OGQwOGNmODNwLTIsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS5jOGZmN2FlMDEwMDg1ODMzMDE1MzgzNTM3YTcxMGJmN3AtMywKKyAgICAweDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLmM4ZmY3Yzc5YTlhMjFhYzI1ZDgxZWYyZmZiOWEyNGFlcC0zLAorICAgIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuYzhmZjdmYWNkY2Q0YWExZTg2YTM2MjhlZDI4MTZlNDlwLTMsCisgICAgMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIDB4MS5lMjcwNzUxYjkyYmM3ZTM5ODViYTJiNGVkYTI3ZTE3N3AtNCwKKyAgICAweDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLmUyNzA3NmUyYWYyZTVlOWVhODdmZmUxZmU5ZTE1NWRicC00LAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAweDEuZTI3MDdhNzBlODExODdiNGM4MjlkNzA3MzQ4NWMyNTRwLTQsCisgICAgMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5mMGEzMGExZjM0NDg3NjA5YTA0YzIwMWVkZDFmNjIyNHAtNSwKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLmYwYTMwYzAxMTYyYTY2MTdjYzk3MTZlZWIzMmYxMzFhcC01LAorICAgIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuZjBhMzBmYzRkOWVkZjEyYTY2YmQzMjY4ZjUzZWIyNDdwLTUsCisgICAgMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIDB4MS5mODI5YWVmNzA3MTBmNTg3ZGNkYzFlNDZmNWM4ZmMyOHAtNiwKKyAgICAweDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLmY4MjliMGU3ODMzMDA0Y2Y4ZmMxM2M3YmM4YTdlYmFicC02LAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAweDEuZjgyOWI0Yzg3YjZkZjYzYzY3MTc1MGIwZDQ5YmQwZDBwLTYsCisgICAgMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS5mYzBhODkxN2EwYmM0MGY5YWY5YjgxY2VmZmI2ODc2YXAtNywKKyAgICAweDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgMHgxLmZjMGE4YjBmYzAzZTNjZjllZGE3NGQzN2FiZDU2ZGY1cC03LAorICAgIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuZmMwYThlZmZmZjQyMWRiNjAxNDk1NmNmOTM2YzUyNDZwLTcsCisgICAgMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDB4MS5mZTAyYTRiNGZlODg2ZTBhZGZjZDliZjc3MDc5Njc5NXAtOCwKKyAgICAweDEuZmZmZmZlcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgMHgxLmZlMDJhNmIxMDY3ODhmYzM3NjkwMzkxZGMyODJkMmIzcC04LAorICAgIDB4MS5wLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEuZmUwMmFhYTkxNjU4Yzc2NDE1OTFjYmY3MTEzOTI3ODlwLTgsCisgICAgMHgxLjAwMDAwMnAtNworICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS5mZjAwYTgyZDBlYmUwMWE0ODFiYjYyMTQxZDFkNTNiNXAtOSwKKyAgICAweDEuZmZmZmZlcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgMHgxLmZmMDBhYTJiMTBiYzA0YTA4NmI1NjliNGQ0Yjc2OTE5cC05LAorICAgIDB4MS5wLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAweDEuZmYwMGFlMjcxNGI4MDRhNDdlYzE1ZjBlMzFmMzkwZWRwLTksCisgICAgMHgxLjAwMDAwMnAtOAorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS5mZjgwMjg5YmIwOGVhNmViMDg4MDk4YTQ5YTcxZDlkOXAtMTAsCisgICAgMHgxLmZmZmZmZXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuZmY4MDJhOWFiMTBlNjc4YTc4ZTg1NGY4ZWM2YWM3MmJwLTEwLAorICAgIDB4MS5wLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEuZmY4MDJlOThiMjBkZTVjYzU3Nzk0ZGIwYTE4NzkxODVwLTEwLAorICAgIDB4MS4wMDAwMDJwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuZmZjMDA4YTkyYWYxMDM3ZTZkNzhmZDIwZTRlNjJmNTZwLTExLAorICAgIDB4MS5mZmZmZmVwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLmZmYzAwYWE4YWIxMGZiYzA0ZDA1MTkyNGM5MzQ3NDcxcC0xMSwKKyAgICAweDEucC0xMAorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIDB4MS5mZmMwMGVhN2FiNTBlYWM0Y2JkNTY5NjRlNDI4NGNiNnAtMTEsCisgICAgMHgxLjAwMDAwMnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEuZmZmN2ZlMmFiOWFhMzEwY2U2Yzc4NWYwYmQxYWVmY2ZwLTE0LAorICAgIDB4MS5mZmZmZmVwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLmZmZjgwMDJhYTlhYWIxMTBlNjY3OGFmMGFmYzNkYWE0cC0xNCwKKyAgICAweDEucC0xMworICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIDB4MS5mZmY4MDQyYTg5YWJiMGU4ZThhNzcwZjMxNGVlYjI1ZHAtMTQsCisgICAgMHgxLjAwMDAwMnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAtMHgxLjYyZTQzM2VmYTNhMmYzNTc5OTFjYmM4ZDVkM2I0ZjgwcC0xLAorICAgIC0weDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAtMSwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0weDEuNjJlNDJkZWZhMzlmZjM1NzkzMWNiYzg1ZGQzYjQyNGRwLTEsCisgICAgLTB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLjI2OTYyM2JkZjg2NGI1YmNhMmFhYzMxM2JlY2ZhZmM3cC0yLAorICAgIC0weDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgLTB4MS4yNjk2MjExMzRkYjkyNzgzYmViNzY3NmMwYWE5YzJhM3AtMiwKKyAgICAtMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIC0weDEuMjY5NjFmYmRmODY0MGIxMWY3OGU1MTRjNzJmNTljYjVwLTIsCisgICAgLTB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAtMHgxLjExNzhlYTZiYTJkYTVhOWY0ZGE5ZWM4NzQxM2RhYTI5cC0zLAorICAgIC0weDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgLTB4MS4xMTc4ZTgyMjdlNDdiZGUzMzhiNDFmYzcyZGU4MWUzYnAtMywKKyAgICAtMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIC0weDEuMTE3OGU2ZmRlYmZlYWUzNmQwMzRiZjAwMjZlN2JhMjZwLTMsCisgICAgLTB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMHgxLjA4NTk4ZDdjMDVjMmFmMTUwZWYwNTM2ZDNhNmJlYzQzcC00LAorICAgIC0weDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgLTB4MS4wODU5OGI1OWUzYTA2ODhhM2ZkOWJmNTAzMzcyYzEyZnAtNCwKKyAgICAtMHgxLnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIC0weDEuMDg1OThhNDhkMjhmNjA5MzVhMDQ5NDBkNmQxNzMyNDZwLTQsCisgICAgLTB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAtMHgxLjA0MTVkYWFlZjg2NTYwNTAwOTdlMGFhMzlmN2ViNTNlcC01LAorICAgIC0weDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgLTB4MS4wNDE1ZDg5ZTc0NDQ0NzAxNzNjNzVkNGQ4ODg5ZGUwZXAtNSwKKyAgICAtMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIC0weDEuMDQxNWQ3OTYzMjMzYzcyMzhjZDFhOTc3OWRmYmQxMGZwLTUsCisgICAgLTB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAtMHgxLjAyMDU2NzkxNTYwNjg1MDEyZGQyMTY4NzMxMDY2NzBlcC02LAorICAgIC0weDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgLTB4MS4wMjA1NjU4OTM1ODQ3NDlmMjNhMTA1YjljN2JiOWE2ZnAtNiwKKyAgICAtMHgxLnAtNgorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0weDEuMDIwNTY0ODUyNTQzNzI5ZjQ0YTcyMGM1NzMwMDVjNWZwLTYsCisgICAgLTB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAtMHgxLjAxMDE1OTVjOTVmNzM2ZGQ3ZGRkZDRmNGE4NGZjMzBlcC03LAorICAgIC0weDEuMDAwMDAycC03CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS4wMTAxNTc1ODhkZTcxMjhjY2M1YTgyZjlkYTAwZjQ4YnAtNywKKyAgICAtMHgxLnAtNworICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIC0weDEuMDEwMTU2NTY4OWRmMDM3MDk3ZjlkMDVhMjAzOGE2ZmVwLTcsCisgICAgLTB4MS5mZmZmZmVwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAtMHgxLjAwODA1Nzk3OGFiNTViZWJhMGVkNGM0ZTY4OGIwZmRkcC04LAorICAgIC0weDEuMDAwMDAycC04CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgLTB4MS4wMDgwNTU5NTg4YjM1N2U1OThlMzNkOGQ5ZGIzN2EyOXAtOCwKKyAgICAtMHgxLnAtOAorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIC0weDEuMDA4MDU0OTQ4N2IyNTc2NTk5NjQzZWI5NDhkZGNlM2NwLTgsCisgICAgLTB4MS5mZmZmZmVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAtMHgxLjAwNDAxNzVlNTkwYTFmOTE3N2U3NzNiZTljOTcwZmJlcC05LAorICAgIC0weDEuMDAwMDAycC05CisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTB4MS4wMDQwMTU1ZDU4ODlkZTcwNjcxZWVlYzBiZmNlZmU1M3AtOSwKKyAgICAtMHgxLnAtOQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIC0weDEuMDA0MDE0NWNkODQ5YmVhMDlmNGIwY2JlNTVlMDUyMmFwLTksCisgICAgLTB4MS5mZmZmZmVwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgLTB4MS4wMDIwMDc1NmQ1YTg5YmI3YmQ3MDBhMjlkNDM4NzA5ZHAtMTAsCisgICAgLTB4MS4wMDAwMDJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgLTB4MS4wMDIwMDU1NjU1ODg5MzM1N2NkN2UxZjQ4NmJkMDcwNXAtMTAsCisgICAgLTB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgLTB4MS4wMDIwMDQ1NjE1Nzg4ZjU0OGM5ZGQzZWJjYzk1N2VjZnAtMTAsCisgICAgLTB4MS5mZmZmZmVwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgLTB4MS4wMDA0MDIxNTY1ZDVkODljOWVmZTdkMmMzNTRjODU3M3AtMTMsCisgICAgLTB4MS4wMDAwMDJwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgLTB4MS4wMDA0MDAxNTU1ZDU1ODg4OWRkZTcwMmIwMjhjOTk5NnAtMTMsCisgICAgLTB4MS5wLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgLTB4MS4wMDAzZmYxNTRkZDUxODhhOWUwZTcyYWIwOTM2NjQyY3AtMTMsCisgICAgLTB4MS5mZmZmZmVwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLjczMjQyNjA5MGNiODI4N2IyMDc2N2Y4MjJjZmYyMTNmcC0xLAorICAgIDB4MS4xMDgyYWVwMAorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS43MzI0MjdmOTBlMTM2ZGFlNDM2NDQzNzY0MzZkNDgzYXAtMSwKKyAgICAweDEuMTA4MmIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEuNzMyNDI5ZTkwZjZjZDI1ZWM3NGM4ODljMjhiYmViMGRwLTEsCisgICAgMHgxLjEwODJiMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjczMjQyYmQ5MTBjNDU2OGNhZmQyNGU4Y2JlYWQ0ZjhjcC0xLAorICAgIDB4MS4xMDgyYjRwMAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS43MzI0MmRjOTEyMTlmYTM4MDA5ODk0ZDY1NTQ1OWY5MnAtMSwKKyAgICAweDEuMTA4MmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuNzMyNDJmYjkxMzZkYmQ2MGJkNDI1YWZjYWFjYjExZjBwLTEsCisgICAgMHgxLjEwODJiOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjczMjQzMWE5MTRiZmEwMDZlOTcyYTA3OGViYzYxMzZicC0xLAorICAgIDB4MS4xMDgyYmFwMAorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIC0weDEuMDAwMDAzMTMzMmZiMzE3MGYxNDdiYmFiZDVhNWRiZTJwLTQsCisgICAgLTB4MS5mMDU0MGFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAtMHgxLjAwMDAwMjAyYjA0NThlNGVkMTA0MTQ5NmU3MzM1YTRkcC00LAorICAgIC0weDEuZjA1NDA4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgLTB4MS4wMDAwMDBmMjJkOGZmZDRlMTEwYWIyZTdhYmJmMDk4YnAtNCwKKyAgICAtMHgxLmYwNTQwNnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIC0weDEuZmZmZmZmYzM1NWI0ZmNkZDYyYjI1YTBlM2Y3OGExNzJwLTUsCisgICAgLTB4MS5mMDU0MDRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAtMHgxLmZmZmZmZGEyNTA0YTIzNjE2M2RhMzJiYzgwMzNiNjU3cC01LAorICAgIC0weDEuZjA1NDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgLTB4MS5mZmZmZmI4MTRhZGY2ZTI4MjU4ODFjYWMxNDgzMzBkN3AtNSwKKyAgICAtMHgxLmYwNTRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAtMHgxLmZmZmZmOTYwNDU3NGRkMzFhN2I3NDRhZWY4MzE3ODZlcC01LAorICAgIC0weDEuZjA1M2ZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS42MmU0MmZlYmEzOWVmMTU3OTNjNjExZGFiMTkwOTgwOHA2LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgMHgxLjYyZTQyZmU3YTM5ZWViNTc5M2JjYmM4NTRkM2I0MjlhcDYsCisgICAgMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuNmJjYmVkNjQ5OTEzN2E2ZDhjYjg4YTNiNDZmZTMxM2JwMCwKKyAgICAweDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEuZTM3MDNlNDJiOTJlNDRjYzRhMTZjNjQ3NTkzNDdiYTlwLTEsCisgICAgMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgMHgxLjYyZTQzMWVmYTM5ZGYzNTc5NDcyMTFkYTMyOTA5ODZmcC0xLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEuNjJlNDJlZWZhMzllYjM1NzkzYjIxMWRhYWE5MDk4MDVwLTEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIC0weDEuMGEyYjIzZjNiYWI3MzY4MWFlZDU4ZDY0MDVlYzcyMDZwNCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS4yOGM2YzQxMGM2ZTk3ZTg2YWM2NWNiYmFmOWJlNTZlMXAtMSwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgLTB4MS44OWZhMDBjMWRmYWQ4NzJhNWVmZTRjMzFlYjdkZGRiNXAwLAorICAgIC0weDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkcC0xMjYsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgLTB4MS4wMDAwMDIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMnAtMTI2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIC0weDEuZmZmZmZjMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLmZmZmZmN2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgLTB4MS5mZmZmZjgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM3AtMTI3LAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTE0OSwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAtMHgxLnAtMTQ4LAorICAgIC0weDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIDAuMCwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgLTAuMCwKKyAgICAtMC4wZgorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2xvZzJfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2xvZzJfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhhNGZiNzkKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvbG9nMl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxNDIyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZG91YmxlLCBkb3VibGU+IGdfbG9nMl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEuZmVmZmZmZmZmZmZmZmZmNDc1NWM0ZDZhM2U4MTUwOTlwOSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAtMHgxLmRmZmZmZmZmZmZhM2E3ZmZjMjY1YWFmMjI1NWI2OTI5cDMsCisgICAgMHgxLjAwMDAwMDAwMDIwMDFwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS4xNGZmNThiZTA2ZTRlYjBmNjNiYThlNzU3OWJhYjkxM3AtMzcsCisgICAgMHgxLjAwMDAwMDAwMDYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLjE0ZmY1YTE1NjZhOWE4MDAwMjA4YWY3MjA4MTIxNDg2cC0yNiwKKyAgICAweDEuMDAwMDAwMzAwMDAwNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS40MzI5ZTZmYWZlZDRlYzE3Njc0ZmIyMDEwN2VlNDczOHAtMjQsCisgICAgMHgxLjAwMDAwMGVwMAorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuZjJkOGZjODBkYWM5NzgwMDAwM2NiY2U2Nzk3YWM3MjVwLTIyLAorICAgIDB4MS4wMDAwMDU2NzE5NzY0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLmRjNDEzNzcxZDlmM2M4MDA1MGI3ZWYwOTEzNGJmYzY1cC0xMCwKKyAgICAweDEuMDA1Mjk0YTUyOTRhNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS5mOTRmNDZkYTI3MmFlODcyMTRmNjY3ODNkYzAwMTJhZXAtMTAsCisgICAgMHgxLjAwNTc5ZjNjOGE3MWRwMAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEuNWFmNDU3YzA2OTc2ZDg2OTM0ZTgxMmZjYWJkMDg2YTBwLTksCisgICAgMHgxLjAwNzg1YjBhZGRjZTlwMAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuOTAwMmUzNjFkNDg1Y2JlNDJmN2M1MjRlYjE5NGQ5MDRwNiwKKyAgICAweDEuMDA4MDQwMjAxMDA4MHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5lYmNjYzEwOTVjZmE4ODY2YWNlNzljZmMwMDU0NGM2M3AtOSwKKyAgICAweDEuMDBhYWFhYWFhYTlhYnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuNmZlNTBiNmVmMDg1MTdmOGUzN2IwMDE3OTRmNDQ0MWNwLTcsCisgICAgMHgxLjAyMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAtMHgxLmYxNWY2MjQ3ODZhOWZmZmZmZjc0ZGM2M2E4NTE2NDMwcC0xLAorICAgIDB4MS4wNTFlYjg1NjEzNGM4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEuZDczZTQ2MzQxMTQ4ZWZmZjMzZDgzZjA4YTMxMTNiYjFwLTYsCisgICAgMHgxLjA1MjdhY2M4YWQwYzBwMAorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLjA2ODQ0ZjMzMjljZjQ4MDE2MGM5MjA3YjBmZTk2ODZkcC01LAorICAgIDB4MS4wNWJmZmQ3MTc3ZjkwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS42ZDE2Y2NiZmU4MzEzMDAwNzFkMmUxMjdkY2FkYzYyY3AtNSwKKyAgICAweDEuMDgwODEzZDM5MmVlYXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEuYmQ3MzVlYjE4Y2Y1ZTgwMTE4NTIyMjk3MmZlN2Q3ZjdwLTUsCisgICAgMHgxLjA5ZDUzZTUwNzg1NjZwMAorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLjg4M2E1NzhhMjE0NGQ4MDAwMDA4MjIzNmJiOTc1YTdicDYsCisgICAgMHgxLjBhNGZlYTg5NGNlNjNwOTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS5lNTJiYjMyZGRlMGUzNzgzNWIwOTk3OWVlNDhlYjkxNXAtNSwKKyAgICAweDEuMGFiYTU3YzRjYTJkMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuOGM0ZDYwYTZmOTFjZmZmZmZmYzRkYjUyMWVjMjMwNTJwMSwKKyAgICAweDEuMTFhMmFkNTcwZmM4NHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuM2MxMDY1MmNkMmMwMzdiNzIyZDhjMzAxYTljYmI3ODdwLTMsCisgICAgMHgxLjFjZTczOWNlNzM5Y2RwMAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjI1YTU3ZWE1NDA2MGFmZmZmZDZlMmIzOGQ4YTZlNjgwcDMsCisgICAgMHgxLjIxNGU1MDMxYzljOThwOQorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS45NWQ4OTc2ZmEyYmVjN2ZmZmU0NGU3MWFiMzBkYTI3NXAtMSwKKyAgICAweDEuMjc5MGE3YTRhYzJlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLmFkNTMyY2Q3Y2ZjMGM4MDBmZWM5NzUyYjA3MjhjNWUxcC0zLAorICAgIDB4MS4yODA5NThhZGQ2NmU4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIC0weDEuOTJhMzIxYTcxOWUyZjdmZmZmYTQ2Yzk5NjJmMjEzZmNwLTEsCisgICAgMHgxLjI4ZGExMGZhYTc5MjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5mMDBkODgzYTUxNTRjODBiN2NkY2EwN2UxZjRjMDNiN3AtMywKKyAgICAweDEuMmVjYzVkOThiYjMxN3AwCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAtMHgxLjc5NTM4ZGUzMjdlYjAwMDAwMDhhMzFlZWVjNWI0NDc5cC0xLAorICAgIDB4MS4zMzMzMzMzNjNhZjE1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAtMHgxLjc5NTM4ZGQ5M2RmN2Q4MDAwMDg4MzNjYzlkMjMwZGVhcC0xLAorICAgIDB4MS4zMzMzMzMzYTVhNzI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuODM5ODhkMGRmYTNiNmZmZmZmN2MzMTVkOWViMzg4YTNwLTIsCisgICAgMHgxLjRjY2NjY2NkMzdjNTlwMAorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLjgzOTg4ZDFjYjVhZjJmZmZmZmZiMzY0MzUxOTczZGJmcC0yLAorICAgIDB4MS40Y2NjY2NkMDg5NjBhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS42MGU2MjM1MjgxZTEwZmZmZmY3MmMwN2I0N2Q1NjUzYXAwLAorICAgIDB4MS40Y2NjY2NkYWJlZjQ4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS4zMjVmZTIyMTQ0MTQ2ODAwMDAwNGRiZTQyN2ZmY2M2YXAxLAorICAgIDB4MS41MDQ5OTY0ODgyZjE2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIC0weDEuOTVjMDFhMzlmYmRmNTdmZmEyZWM2ZjY5Nzg4NmY2YWJwMCwKKyAgICAweDEuNTU1NTU1NTU1NTRkM3AtMgorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLmIyMTliNDA4YWM0MDY4MDEyOTdmOWMwZjMxM2EwYWJjcC0yLAorICAgIDB4MS41NzcxNWQ5YzYyYmUycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIC0weDEuMTRjNTYwZmU2OGFmODgwZTBhMGYzMzdkNTU1NjUyODFwLTEsCisgICAgMHgxLjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIC0weDEuNTE0MGNjZmJjOTRiYTdmYzE0Y2FlMjVhZjEzMjJlMTlwMywKKyAgICAweDEuNjA1N2ZmMTc0NTI5NHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS43YzQ0ZWVjYzc5ZDkwODAwMDA4ODRhODdjZTA5YTFlM3AwLAorICAgIDB4MS42NjY2NjY3NzEyMDI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS5mNDRjM2I4MGNlMWI3ZjUzMDc3ZTJkMGJhMmRmM2M1OHAtMiwKKyAgICAweDEuNjcyZWE0YzhlZDEzY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuN2UzZDU5Yjc2ZmVjZjgwMDAwMWYyNzZiZmM4MDFhZjVwMCwKKyAgICAweDEuNjg1MTMyYmZiN2JkNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAtMHgxLmEwMmI1ZWM0ZmM3Yzg3ZmY5Nzg0ZTE5YTg2YWNjYjllcDIsCisgICAgMHgxLjY5NnAtNworICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLmZmZmZmZmZmZmZmMzlkNDQ5NzljYzY3YmNmN2RlZGZhcC0yLAorICAgIDB4MS42YTA5ZTY2N2YzYjljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIC0weDEuZmZmZmZmZmZmZmUzZDVjYjA1ODVhMzg0MGM5MTUxNGNwLTIsCisgICAgMHgxLjZhMDllNjY3ZjNjM2JwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIC0weDEuZWJlNDc5NjBlM2MwODdmZTRlNTI2ODYyNWY1YTY5N2FwLTIsCisgICAgMHgxLjZmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgLTB4MS45ZTk3MTZkMWNiNzJjODAxMzNjNWYwZjM3M2NkOTdkMHAyLAorICAgIDB4MS42ZjliZTZmOWJlNmY4cC03CisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuMTgyZmZkY2NlZDcwYWZmZmY5ODQ2ZWFiNTNlNzY5ZGZwLTEsCisgICAgMHgxLjc2MTcwMmFjMTMxNGNwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgLTB4MS5jNTI3MjQ4NDM5OWQxZmZmYTc5YjhjNGFiODllYThiY3AtMiwKKyAgICAweDEuNzhjMDQ3NTc5OWI0MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTB4MS5jMWJhZTY4NjNjN2IxNzg3ODlmZWY4NzFhNTMzZjE3YXAtMiwKKyAgICAweDEuNzlhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAtMHgxLmI3ZmNlYzI1NjVlZTc3ZmJkMzZkNjk4MzdkZDk1NDIwcDEsCisgICAgMHgxLjdhMTc5NDQ4NzlmMDRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS45NWMwMWE0MTBhMWFmN2ZmZmZmZmZmMThhYzIwYmM0ZnAwLAorICAgIDB4MS44MDAwMDAwNzU2MDM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIC0weDEuYjVhMmE5MTAyNGEyMzdmYzI1MGQ0OGI3ZGZjNTc1ZjZwNiwKKyAgICAweDEuODFhNmE2NTc4NWRlNXAtMTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAtMHgxLjViMmMzZGExOTcyM2E4MGRiNmEwNDgwNTkyODEyNTk5cDAsCisgICAgMHgxLjlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIC0weDEuOTU5NmQ3NjFjM2MxZjAwMDk0MmE4Nzk2MGM0ZTZhY2FwMiwKKyAgICAweDEuOTU0cC03CisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAtMHgxLjM2MWY3YTBmNDBhY2Y4MDAwOGEzY2RiYjU2ZWY0M2EzcC0yLAorICAgIDB4MS45ZjBkMWM0YTg1ZGY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLmE2NGExNGVhMzFmZjI3ZmZmZmM2ZTA0OTFjMDBlY2UwcDEsCisgICAgMHgxLmEwMWY1NmQ1YzhiZjVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS4zNmJkYTcwMjhhNmMxODAwMDQzNmNjZWJkNjU0YjExMnAzLAorICAgIDB4MS5hMmY0NzA0YTdiN2ZjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEuOTE2MmM4YTdjODlkNmZmZjNiNjE2OTZjYzBjYjdiMDhwMiwKKyAgICAweDEuYTgycC03CisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLjNkZjVmMjdmMDgyMzhmZmYzZDkzMGIwYWE3YjY3ZTE5cDAsCisgICAgMHgxLmIwZWMzYjBlYzNiMGNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS5jMjBhMGQ4MGY3ZGM3MDAwYzI2Y2Y0ZjU1ODQ5ODFlNnAwLAorICAgIDB4MS5iMGVjM2IwZWMzYjBjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS5mMzJkNmM3M2ZlNGViMDAwMDA5OThmODAyZmQ4OTRhMnAyLAorICAgIDB4MS5iZDljZWMxYzcyYzkwcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEuNGY1NzViN2Q0MTYwODgwMTgyYzZmNjkzMDZkMDNjMjhwLTMsCisgICAgMHgxLmM5MTBlZjBkNmQ4OWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEuNGYyNzhhYmZmYjExMDgwMWEzZDdlZGNiNzllZTVmMzJwLTMsCisgICAgMHgxLmM5MTg1NGFmOWVlMjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuMjg1Mzc4ZGE5MGQ3ZTdmYjAwOGVlZGYwYTEwZmJhNDhwLTMsCisgICAgMHgxLmNmMjQzZmYxOTcxYTFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5iNzQ5NDkwMjBmNzg1ODAwMTA1Y2EzMTQwYWZiNTNiNXAtMSwKKyAgICAweDEuZDAwMDAwMDgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIC0weDEuMDIwZmJiNGFlMDFjNjdmYTg1ZjUxMjhlZWY4MDA2NzhwLTMsCisgICAgMHgxLmQ1MmRiOTYzMjhlZGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS43MzBhOGQyNDFlZmJiN2ZmZmZmMzJjZTk1YTY5NDk5M3AxLAorICAgIDB4MS5kZDRkNjQwN2MwNGMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuN2QwNmQyNjNjZjA2ZTgwMTM1MTkxOTdlZTMxMWQ3MGRwLTQsCisgICAgMHgxLmUwMDc0NDZkNTMxN2FwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEuNjUxYTA0M2U1OTkwODgwMTUxOGY5YWQ4YTczMGIwMDZwLTQsCisgICAgMHgxLmUxZjljZmU0ZGEzNjVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuYzMxNWFjZTgzZjZkODdmZmQ0N2VlMzQ4ODIxYmU5MzFwLTUsCisgICAgMHgxLmVjZDM5M2VlMmEyMmRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIC0weDEuYzFhMmRkMzBlOTJjOTdmZTFlOGE4OTI3YmNhODhkMDlwLTUsCisgICAgMHgxLmVjZTMwYTk5NzA4ZjNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEuMzE4MTE0MTRjOWY0NTdmZWRiMzM5YTJhNTlhYTZhMTVwLTUsCisgICAgMHgxLmYyZWY0NDE5NjZiMjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuZmY1NGQ0ZTAxOTA2NzAwMDgyNDc2Njg2ZjMzOWZlYjBwLTYsCisgICAgMHgxLmY1MGIwNjhjNjlhYjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIC0weDEuZmU0NzY0ZTAyNWE3YTgwMTBkYjFiNmNmMTNkYTE3YWZwLTYsCisgICAgMHgxLmY1MTBiY2FmYTUzNWJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuZTljOGZiOGE3YThmZjlmOWQ0ODJkNDNmODljOTEwZjFwLTYsCisgICAgMHgxLmY1OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS5jZmY5MjllZWU0NmYyODAxMmQ1NWJhNzJmOTEwNmEzZnAtNiwKKyAgICAweDEuZjYwYzQ1YjE3OGQ0ZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS5jZmJlMDk3M2QwMDlhODAxZjMyYTBiNDA1ZjY0YzhmYnAtNiwKKyAgICAweDEuZjYwZDg3MzBkYzA5YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5hZWYxM2RlMTE5N2Y5MmEyNDg5NzI5N2EzMzVkZjllN3AtNiwKKyAgICAweDEuZjZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLmEyNTUxYzhmMmFjNDY4MDBiYTg1YjFhMWVhZTBhNmUycC02LAorICAgIDB4MS5mNzA0YWRkODVlNGE1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMHgxLmEyMWZiZGZlZDVjNWE4MDFlMjI2OWRlNTE3ZmE3YWI2cC02LAorICAgIDB4MS5mNzA1ZDA5OGZmZDlkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAtMHgxLmEwYjkyMDE3NmJkYTU4MDBjMDQ0ZjZmOTA0ZjE1OTVjcC02LAorICAgIDB4MS5mNzBkNzI2MWMyYmEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLmM1ODdjZGIyYjVjYzY3Y2FlNDk5MGE2ZWFmNTBiYThjcC05LAorICAgIDB4MS5mZWM2MDM2ODJmNmI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAtMHgxLjdjMTZmZmUxY2NjYjQ3ZDUzNzlkYjI3ZjdiNDkwZGY1cC05LAorICAgIDB4MS5mZWY4Y2U3MDMwNmQ1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLjcxYjBlYTQyZTRlODE4NDQwZWNjN2U0NjdlMTI1ZDljcC05LAorICAgIDB4MS5mZjAwMDAwMDAwMDBjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLjcxYjBlYTQyYzk4ODM4ZDM5ODExYTFmODY5ZGE4MTdkcC05LAorICAgIDB4MS5mZjAwMDAwMDAwMTNicC0xCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLmZlMzY3MmUwZmMwYjE3YmU1NGU0Y2FmMjA0MzRhMTk4cC0xMCwKKyAgICAweDEuZmY0ZjRiMDBhNGY4ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgLTB4MS5mOTE0ZDUyM2YxNzg1NzZlZWI3MjUyN2YyYjcwYTI5Y3AtMTAsCisgICAgMHgxLmZmNTExMWE4MTA1ODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIC0weDEuZjkxNGQ1MjNlZTY2Nzc3Mjg2Y2NmZDQ5MTMyMzU1OTRwLTEwLAorICAgIDB4MS5mZjUxMTFhODEwNTkxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAtMHgxLmRlN2U4NjExNDRhYzk3ODMyYTRlM2E1ZDkyODU2ODA5cC0xMCwKKyAgICAweDEuZmY1YTQ1N2E1ZTEzZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5iNmQ1NzM2YWYwYWM5N2QyNjAyMDBiNmRlYTJlNGMxYnAtMTAsCisgICAgMHgxLmZmNjdmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIC0weDEuNTRjNmNmNzgxZmEwODdkMzMyNDFlYzE3YzQ4MzcyNTVwLTEwLAorICAgIDB4MS5mZjg5ZjJmMzI4ZWQycC0xCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAtMHgxLmZiMjQzMzUzYTkzYjU3NjIxYTg1MzhmMDU5ZDlhZTljcC0xMSwKKyAgICAweDEuZmZhODI2MDcwZjRjYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgLTB4MS5iODI2NjgyNTAwNTBkNzc4ZDg5OTNhMTBlODI4YzM5MHAtMTEsCisgICAgMHgxLmZmYjNiZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIC0weDEuYzAwNTBjY2FmOGI4OTgwMDAyYmQzNzllMmE2YzYyMTRwMiwKKyAgICAweDEuZmZlM2ZmZmZmYzA1MHAtOAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgLTB4MS43ZDQxMjA2NzEyNTc2ODAwMDVhODZkNjA2ZGNmMmYzMnAtMTQsCisgICAgMHgxLmZmZjdiZGYxN2JkZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIC0weDEuMDE4MDAwYjhhYWY1YTgwMDA3YjJkYjRjMTkyMjUzY2JwMTAsCisgICAgMHgxLmZmZmJmZmZmZjVlcC0xMDMxCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAtMHgxLjE0ZmY3MmI2MmJkZjRmZmU2NGZiMzRkNTlkZDUxZTc0cC0xOCwKKyAgICAweDEuZmZmZjlmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgLTB4MS5mODAwMDE3MTU0OGQ2ODAxODE3ZGM2Njk1YjFkN2JiMXA1LAorICAgIDB4MS5mZmZmY3AtNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIC0weDEuZmU0YTlhMDIzZjA1NzdmZGZmM2RiODRiNjJkOWYyZWFwLTIxLAorICAgIDB4MS5mZmZmZTllNGIwNjI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAtMHgxLmZhNGFjMGFiYTNjMmE3ZmMwMjQzOTY2MDcyMjhiYTlkcC0yMSwKKyAgICAweDEuZmZmZmVhMTEwYjM5ZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgLTB4MS5kNmE1YjQ3ZjRhZjBmN2ZkNGYzMDBjMGI2OTE4YzYzZnAtMjEsCisgICAgMHgxLmZmZmZlYjljNWIyZDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIC0weDEuNzE1NDc3YzlkMWY4MTkyM2Y4NzM4ZjU2ZmFmYjM5N2JwLTI5LAorICAgIDB4MS5mZmZmZmZlZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgLTB4MS44ODZhNzY2MjJiZTNjYWI2ZDIxMDNmYmVlMTMwNzY3NHAtMzYsCisgICAgMHgxLmZmZmZmZmZmZGRmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAtMHgxLjE1MDBjYTEyODNiNWE3ZmJiOWZhMjU1YTZiNWUzODJicC0zNywKKyAgICAweDEuZmZmZmZmZmZmM2ZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIC0weDEuODAwMDAwMDAwMGI4YjAwMDdiMzViZjJjNWU0MjAyY2VwMSwKKyAgICAweDEuZmZmZmZmZmZmZGZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuMDAwMDAwMDAwMDVjNTgwMDNkOWFkZjk2MmYyMTAxNjdwMiwKKyAgICAweDEuZmZmZmZmZmZmZGZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIC0weDEuNDAwMDAwMDAwMDVjNTgwMDNkOWFkZjk2MmYyMTAxNjdwMiwKKyAgICAweDEuZmZmZmZmZmZmZGZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIC0weDEuYzAwMDAwMDAwMDVjNTgwMDNkOWFkZjk2MmYyMTAxNjdwMiwKKyAgICAweDEuZmZmZmZmZmZmZGZmZnAtOAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS43ZmZmZmZmZmZmNDc0ZmZmODRjYTQwZDNhMWJkZmQzMXAxLAorICAgIDB4MS5mZmZmZmZmZmZkZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAtMHgxLjlmN2YwNTFkMGYzNjE4MTQ0OTZhMTM3ODhhYTFjZDVmcC01MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIC0weDEuMDAwMDAwMDAwMDAwMTI2ZThkMWVhN2RlODgzZTgzZGRwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAtMHgxLjU2MTQ2NDBjNmZiYzQ4NmNiMjk1YjEwZjhhYmQ2OTM5cC0yLAorICAgIDB4MS45NjJiNWY5NDM4ZDI1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgLTB4MS43YjY3ZTNkOGUxODc5YzUwNDA3ZThlMDljYTYyZDdjMnAtMywKKyAgICAweDEuYzI0Y2Q4YzA3ZGU3ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIC0weDEuOWNhYjk4NWZlMWQ4ZDk5NTgxZTA5YTk1YzNmYWM4ZTVwLTUsCisgICAgMHgxLmVlNmU1MWVjYzJmZDdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuMmFlMDRhNTFjOWJjMGIxODIxZWMzODY1MTY3OTJiMjZwLTQsCisgICAgMHgxLjBkNDdlNThjODQwOThwMAorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS43ZTIzNTE5MWNjNDZiZmFlZDk2MWJiYWQ2MDc1ZmNhY3AtMywKKyAgICAweDEuMjM1OGEyMjJhNjk0NHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLjJhZWJiNGVlZDM0YmY0MmJjNTQ0OGExODkwNzA4ODVhcC0yLAorICAgIDB4MS4zOTY5NWViOGM5MWYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuOGY2ZTdmZTk3NjRjMmU5MWNiNGZmZTVmMGJjOGM1YmRwLTIsCisgICAgMHgxLjRmN2ExYjRlZWJhOWNwMAorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS5lZDg5YTJkYzFiYjc4N2FiNzEwMjU5ODE5OWM0MzE0ZXAtMiwKKyAgICAweDEuNjU4YWQ3ZTUwZTM0OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLjIzMDBkMDFhMDJiMGY0YzQyMzM3NWY1ZjI3ZGM3MjY4cC0xLAorICAgIDB4MS43YjliOTQ3YjMwYmY0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuNGNiY2QxZGIwY2Q1MjYyNmM4OGMxMzVkZWY2ZmU5YWRwLTEsCisgICAgMHgxLjkxYWM1MTExNTM0YTBwMAorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS43NDNkNTMxNjhhNTI1MTM0ZTgzNDNlZWJjZjU5ZmUwZXAtMSwKKyAgICAweDEuYTdiZDBkYTc3NWQ0Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLjk5YmM2MDRlNTc0OGJiNTMyNzZlNDUzNDFlYjk4YTA2cC0xLAorICAgIDB4MS5iZGNkY2EzZDk4NWY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEuYmQ2YjlhZTY2NjFjODc5MDcxNTEzMTU4N2E3MDdmNjNwLTEsCisgICAgMHgxLmQzZGU4NmQzYmFlYTRwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5kZjc1YzZiODYxYjkzNTk5YWFlYjM3NzZiNjAxM2M3ZHAtMSwKKyAgICAweDEuZTllZjQzNjlkZDc1MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgMHgxLmZmZmZmZmZmZmZmZmEzYWFlMjZiNTFmNDAxZGNjZWUycC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEyNmU4ZDFlYTdkZTg4M2U4M2RkcC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgLTB4MS43MzMyNDZiOWEzMTdmMGJjYTgzMGEwYzU4OGMzMjc3YnAtMiwKKyAgICAweDEuOGUzZTE3MGJmMjgyZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIC0weDEuZTU0ZTM3YTljNGJkOTgwY2ZlNDUwNDE5YzZmODgzZmNwLTMsCisgICAgMHgxLmIyNzI0N2FmZjE0OGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAtMHgxLmYxOWRjYmNmODI3ZGU0ZjdkMzJiNDkyYjA0YTI0YzI3cC00LAorICAgIDB4MS5kNmE2Nzg1M2YwMGVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgLTB4MS5kZDg4YTI1OWY0NTFhODdiMDM4NjFiYjc2ODhmNDNjZXAtNywKKyAgICAweDEuZmFkYWE4ZjdlZWQ1MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS41YzAxYTM5ZmJkNjdlNjg1OTdiYmUxYWMyNmM2YmUyNXAtNCwKKyAgICAweDEuMGY4NzZjY2RmNmNkOXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLjZjYjBmNjg2NWM4ZTk3YzY5Y2ZjYTAyNTVlNjc3NmJhcC0zLAorICAgIDB4MS4yMWExODUxZmY2MzBhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEuMGZlODU3MmU1MjkzYzJhNDRlYTI1ODcyNjY5MWJjZGVwLTIsCisgICAgMHgxLjMzYmI5ZDcxZjU5M2JwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS42NDU5NGQxMzBjZmJiZjQ4OWNhM2ZhYWE4ZTZlZTkzN3AtMiwKKyAgICAweDEuNDVkNWI1YzNmNGY2Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLmI0MzkzMTBiNDE4N2VhNTE2ZmE0NzA4YzQyMjZhNjZkcC0yLAorICAgIDB4MS41N2VmY2UxNWY0NTlkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuZmZmZmZmZmZmZmZmZGIyMmU1YzJiMDQyZWY4MmY4NDRwLTIsCisgICAgMHgxLjZhMDllNjY3ZjNiY2NwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuYThmZjk3MTgxMGE1ZTE4MTdmZDNiN2Q3ZTVkMTQ4YmJwLTIsCisgICAgMHgxLjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLjFjMzFkZGQxYjNiZGI3ZTQ1YzY4ZmVjYTUyODc3ZmRkcC0yLAorICAgIDB4MS5hNjY2NjY2NjY2NjY2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS4zNzRkNjVkOWU2MDkzN2UxZTljM2FmNTNmMjQ2MDc4MXAtMywKKyAgICAweDEuY2NjY2NjY2NjY2NjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuMmIzODUwNWY4YTJhODQ5MTBmZTJkZWY2ZTA5OWMxYTRwLTUsCisgICAgMHgxLmYzMzMzMzMzMzMzMzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuMjA1MDhmNTQ3ZWRlNTQzNTc1ZDNkMWM1MjcxYzhhZWJwLTQsCisgICAgMHgxLjBjY2NjY2NjY2NjY2NwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS41YzAxYTM5ZmJkNjdkNWQ0NzZjNTQwOGIxYzY4NDUzNnAtMywKKyAgICAweDEuMWZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgMHgxLjBkNThlNDJiMWRhMTEyNDRjZmQ4MmEyNzQzZjA3YTQ2cC0yLAorICAgIDB4MS4zMzMzMzMzMzMzMzMycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuNjZlOGMwMTY0MWVkNjMyYWEzZTU2ZGU3NjQ4NDk5Y2RwLTIsCisgICAgMHgxLjQ2NjY2NjY2NjY2NjVwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDB4MS5iYjU5YjVmYWZjNTUzZTI4OTFkMmQzMWZlYTUzZmNiMHAtMiwKKyAgICAweDEuNTk5OTk5OTk5OTk5OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLjA1OWNjY2Y5OTg3MGE1OGFlNWJlZTc4N2I1ZGEzZTI2cC0xLAorICAgIDB4MS42Y2NjY2NjY2NjY2NicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAweDEuMmI4MDM0NzNmN2FjZDFiMTJjNWRiMDBjMGY5ZDg1ZjdwLTEsCisgICAgMHgxLjdmZmZmZmZmZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDAuMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMHgxLjE5OWI3MjhjYjlkMGMzMjU1MzZhYTIyOWE4ODk0ZmQycC0zLAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuMGQ1OGU0MmIxZGExYWMyODAxMjU0YzNiMzhkMWY2ZTVwLTIsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMAorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS44Mzk4OGQwYzFmNjExZWZjMjhlMzdiNmRlOGYwZDI1ZXAtMiwKKyAgICAweDEuNGNjY2NjY2NjY2NjZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLmYxMTNiYWVkMzA1ZTI2NmRmMTBlOGExNmQ1ZDFiNjA0cC0yLAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAweDEuMmI4MDM0NzNmN2FkNGNjZDUzY2U5ODFjMDU3MDA0ZmRwLTEsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS41YjJjM2RhMTk3MjNlZDRkOGNjZmNhOGU4OTg4OGYwMXAtMSwKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgMHgxLjg3ZjQyYjk3Mjk0YTIxMTEyYjY3NjNhNGM1YjE1YzVlcC0xLAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuYjIyY2E2ODk4NjdlMTg5ZWZiYzI4MDM4NGMwMjQzMGNwLTEsCisgICAgMHgxLmNjY2NjY2NjY2NjZDBwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDB4MS5kYTFjOTg4NWEwYzQyODE1Njg5Mzg1NmI5OWQ0Y2U1YXAtMSwKKyAgICAweDEuZTY2NjY2NjY2NjY2YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAweDEuOTBwNiwKKyAgICAweDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuOTA4Y2NkYjk0NjVjZTg2MTkyYTliNTUxMTRkNDQ0YTdwNiwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEuOTEwZDU4ZTQyYjFkYTFhYzI4MDEyNTRjM2IzOGQxZjZwNiwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEuOTE4Mzk4OGQwYzFmNjExZWZjMjhlMzdiNmRlOGYwZDJwNiwKKyAgICAweDEuNGNjY2NjY2NjY2NjZXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAweDEuOTFmMTEzYmFlZDMwNWUyNjZkZjEwZThhMTZkNWQxYjZwNiwKKyAgICAweDEuNjY2NjY2NjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuOTI1NzAwNjhlN2VmNWE5OTlhYTc5ZDMwMzgwYWUwMDlwNiwKKyAgICAweDEuODAwMDAwMDAwMDAwMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAweDEuOTJiNjU4N2I0MzJlNDdkYTliMTk5Zjk1MWQxMzExMWVwNiwKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEuOTMwZmU4NTcyZTUyOTQ0MjIyNTZjZWM3NDk4YjYyYjhwNiwKKyAgICAweDEuYjMzMzMzMzMzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAweDEuOTM2NDU5NGQxMzBjZmMzMTNkZjc4NTAwNzA5ODA0ODZwNiwKKyAgICAweDEuY2NjY2NjY2NjY2NkMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuOTNiNDM5MzEwYjQxODg1MDJhZDEyNzBhZDczM2E5OWNwNiwKKyAgICAweDEuZTY2NjY2NjY2NjY2YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAweDEuOTRwNiwKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuOTBwNywKKyAgICAweDEuMHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAweDEuOTA0NjY2ZGNhMzJlNzQzMGM5NTRkYWE4OGE2YTIyNTNwNywKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAweDEuOTA4NmFjNzIxNThlZDBkNjE0MDA5MmE2MWQ5YzY4ZmJwNywKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAweDEuOTBjMWNjNDY4NjBmYjA4ZjdlMTQ3MWJkYjZmNDc4NjlwNywKKyAgICAweDEuNGNjY2NjY2NjY2NjZXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAweDEuOTBmODg5ZGQ3Njk4MmYxMzM2Zjg4NzQ1MGI2YWU4ZGJwNywKKyAgICAweDEuNjY2NjY2NjY2NjY2OHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAweDEuOTEyYjgwMzQ3M2Y3YWQ0Y2NkNTNjZTk4MWMwNTcwMDRwNywKKyAgICAweDEuODAwMDAwMDAwMDAwMnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuOTE1YjJjM2RhMTk3MjNlZDRkOGNjZmNhOGU4OTg4OGZwNywKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3AyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuOTE4N2Y0MmI5NzI5NGEyMTExMmI2NzYzYTRjNWIxNWNwNywKKyAgICAweDEuYjMzMzMzMzMzMzMzNnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuOTFiMjJjYTY4OTg2N2UxODllZmJjMjgwMzg0YzAyNDNwNywKKyAgICAweDEuY2NjY2NjY2NjY2NkMHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAweDEuOTFkYTFjOTg4NWEwYzQyODE1Njg5Mzg1NmI5OWQ0Y2VwNywKKyAgICAweDEuZTY2NjY2NjY2NjY2YXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuOTJwNywKKyAgICAweDEuMHAyMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAweDEuZjRwOSwKKyAgICAweDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLmY0MTE5OWI3MjhjYjlkMGMzMjU1MzZhYTIyOWE4ODk0cDksCisgICAgMHgxLjE5OTk5OTk5OTk5OWFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIDB4MS5mNDIxYWIxYzg1NjNiNDM1ODUwMDI0YTk4NzY3MWEzZXA5LAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuZjQzMDczMTFhMTgzZWMyM2RmODUxYzZmNmRiZDFlMWFwOSwKKyAgICAweDEuNGNjY2NjY2NjY2NjZXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLmY0M2UyMjc3NWRhNjBiYzRjZGJlMjFkMTQyZGFiYTM2cDksCisgICAgMHgxLjY2NjY2NjY2NjY2NjhwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS5mNDRhZTAwZDFjZmRlYjUzMzM1NGYzYTYwNzAxNWMwMXA5LAorICAgIDB4MS44MDAwMDAwMDAwMDAycDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuZjQ1NmNiMGY2ODY1YzhmYjUzNjMzM2YyYTNhMjYyMjNwOSwKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3AxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmY0NjFmZDBhZTVjYTUyODg0NDRhZDlkOGU5MzE2YzU3cDksCisgICAgMHgxLmIzMzMzMzMzMzMzMzZwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS5mNDZjOGIyOWEyNjE5Zjg2MjdiZWYwYTAwZTEzMDA5MHA5LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuZjQ3Njg3MjYyMTY4MzEwYTA1NWEyNGUxNWFlNjc1MzNwOSwKKyAgICAweDEuZTY2NjY2NjY2NjY2YXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLmY0ODBwOSwKKyAgICAweDEuMHAxMDAxCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTB4MS43MTU0ODFkZDVjNWQ5MzY2MzI1NWVjYTdiYTgyYWViNnAtMjAsCisgICAgMHgxLmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS43MTU0N2MxODBhMjdmMzYyZDE3YTFmNTliZTFiYjU1ZHAtMjEsCisgICAgMHgxLmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMC4wLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAweDEuNzE1NDcwOGQ2Njc1NWQ5ZmUxMTllZDFlODVjMTNmNDBwLTIxLAorICAgIDB4MS4wMDAwMDgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEuNzE1NDZhYzgxNGY4NjdkN2E5OWFjMjQwZjE3N2QzNWZwLTIwLAorICAgIDB4MS4wMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS43MTU0NzY1NTlhZDhjZTI0OWYzMjM3YjU2MmExM2FmMHAtMzAsCisgICAgMHgxLmZmZmZmZmY4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIC0weDEuNzE1NDc2NTQyOTg0NTdjYzIxYjA3Y2RlZDIzMzNlYTZwLTMxLAorICAgIDB4MS5mZmZmZmZmYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAwLjAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS43MTU0NzY1MTQ2ZGI2YjI2YjE1MGI5ZWExMmMxNmExYXAtMzEsCisgICAgMHgxLjAwMDAwMDAyMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLjcxNTQ3NjRmZDU4NmY0ZDliZTcyYjFhOTQzZDI3YTE2cC0zMCwKKyAgICAweDEuMDAwMDAwMDQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAtMHgxLjcxNTQ3NjUyYjhlODhiYjJhNjZjOTBhZGI1NjllZDdjcC00MCwKKyAgICAweDEuZmZmZmZmZmZmZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLjcxNTQ3NjUyYjg4YzM2OTUxMWJlMjg2MDM5ZjVmYjIwcC00MSwKKyAgICAweDEuZmZmZmZmZmZmZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAwLjAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDB4MS43MTU0NzY1MmI3ZDM4YzU5ZTg2MjEwNmY3ZTM3NzMwYXAtNDEsCisgICAgMHgxLjAwMDAwMDAwMDA4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEuNzE1NDc2NTJiNzc3MzczYzUzYjQ2MGNjM2RlY2RjYzZwLTQwLAorICAgIDB4MS4wMDAwMDAwMDAxMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgLTB4MS43MTU0NzY1MmI4MzAwZmEyMGJkYTU0YTZkNjFiMmYyYXAtNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAtMHgxLjcxNTQ3NjUyYjgyZmY4OGNjNDc1MjkyM2QyM2U2NTgwcC01MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDAuMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjcxNTQ3NjUyYjgyZmNhNjIzNWFhZDIxZGQ2MGY3NWRlcC01MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLjcxNTQ3NjUyYjgyZmIzNGNlZTQ1YTY5YWRkYmQ0ZmU2cC01MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmEzYWFlMjZiNTFmNDA2MzBjcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuMGM4MHAxMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIC0weDEuMDAwMDAwMDAwMDAwMzMxMzg4OTliN2EzMjQwMWZiMWNwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEyNmU4ZDFlYTdkZTg4M2U4M2RkcC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMzkzMjM0NzMwMzNkYmQ4YzIyYXAtMiwKKyAgICAweDEuNmEwOWU2NjdmM2JjZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS5mZmZmZmZmZmZmZmY5OWQ4ZWVjYzkwYjliN2ZjMDljN3AtMiwKKyAgICAweDEuNmEwOWU2NjdmM2JjYnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLmZmZmZmZmZmZmZmZmRiMjJlNWMyYjA0MmVmODJmODQ0cC0yLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAweDEuMDAwMDAwMDAwMDAwMGUzNjZlNWM2N2U2MTIxMzllZWFwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwMAorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIC0weDEuMDAwMDAwMDAwMDAwMGI4YWEzYjI5NWMxN2YzOWU2NzdwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEucDAsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQxZDU3MTM1YThmYTA1NDI2NGQ0cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTB4MS5hOGZmOTcxODEwYTYxZjBmOTM4YzJiZGZlMjAyZDM1MXAtMiwKKyAgICAweDEuN2ZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIC0weDEuYThmZjk3MTgxMGE1ZTE4MTdmZDNiN2Q3ZTVkMTQ4YmJwLTIsCisgICAgMHgxLjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLmE4ZmY5NzE4MTBhNWEzZjM2YzFiNDNjZmVjMzA1NDRjcC0yLAorICAgIDB4MS44MDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMHgxLjJiODAzNDczZjdhY2YwNzgzNjM5ZWExMDBlZmU5NjU3cC0xLAorICAgIDB4MS43ZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAweDEuMmI4MDM0NzNmN2FkMGYzZjQwMTYyNDE0MGQxNzViYTJwLTEsCisgICAgMHgxLjhwMAorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS4yYjgwMzQ3M2Y3YWQyZTA2NDlmMjVlMTgwOWU3ZDVkOXAtMSwKKyAgICAweDEuODAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMHgxLmViY2NjMTA5OGFkODU4YzFmY2I4MjIzZWJjM2EyZDg5cC05LAorICAgIDB4MS4wMGFhYWFhYWFhYWFhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuZWJjY2MxMDk4YjA2NjQ5ZTM0M2Y3OGFjNzIyNTdkZTdwLTksCisgICAgMHgxLjAwYWFhYWFhYWFhYWJwMAorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS5lYmNjYzEwOThiMzQ3MDdhNmJjNmNmMTc0OTNjZWQ2M3AtOSwKKyAgICAweDEuMDBhYWFhYWFhYWFhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgMHgxLmZmZmZmZmZmZmZmZmY0NzU1YzRkNmEzZTgwYzYxOTg4cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIDB4MS5wMSwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLjAwMDAwMDAwMDAwMDBiOGFhM2IyOTVjMTdlYWY2NmNhcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDB4MS5mZmZmZmZmZmZmZmZlOGVhYjg5YWQ0N2QwMThjMzMxMXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEuMDAwMDAwMDAwMDAwMTcxNTQ3NjUyYjgyZmQ1ZWNkOTVwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgLTB4MS43MTU0NzY1MmI4MmZlNzNjY2VlOTQ4ODE5MWRmMjIwZnAtNTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAwLjAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIDB4MS43MTU0NzY1MmI4MmZkNWVjZDk1ZDY3ZGY1M2E5ZGQ1MHAtNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEuMDAwMDAwMDAwMDAwMGI4YWEzYjI5NWMxN2YzOWU2NzdwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIC0weDEucDAsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQxZDU3MTM1YThmYTA1NDI2NGQ0cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwNWM1NTFkOTRhZTBiZjljZjMzYnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTB4MS5wMSwKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZThlYWI4OWFkNDdkMDJhMTMyNmFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIC0weDEuODAwMDAwMDAwMDAwMDVjNTUxZDk0YWUwYmY5Y2YzM2JwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIC0weDEuODBwMSwKKyAgICAweDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIC0weDEuN2ZmZmZmZmZmZmZmZjQ3NTVjNGQ2YTNlODE1MDk5MzVwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIC0weDEuMDAwMDAwMDAwMDAwMDJlMmE4ZWNhNTcwNWZjZTc5OWRwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIC0weDEucDIsCisgICAgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmY0NzU1YzRkNmEzZTgxNTA5OTM1cDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAtMHgxLjQwMDAwMDAwMDAwMDAyZTJhOGVjYTU3MDVmY2U3OTlkcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAtMHgxLjQwcDIsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAtMHgxLjNmZmZmZmZmZmZmZmZhM2FhZTI2YjUxZjQwYTg0YzlhcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAtMHgxLjgwMDAwMDAwMDAwMDAyZTJhOGVjYTU3MDVmY2U3OTlkcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAtMHgxLjgwcDIsCisgICAgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmZhM2FhZTI2YjUxZjQwYTg0YzlhcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAtMHgxLmMwMDAwMDAwMDAwMDAyZTJhOGVjYTU3MDVmY2U3OTlkcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAtMHgxLmMwcDIsCisgICAgMHgxLjBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAtMHgxLmJmZmZmZmZmZmZmZmZhM2FhZTI2YjUxZjQwYTg0YzlhcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDAxNzE1NDc2NTJiODJmZTczY2NlcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAtMHgxLnAzLAorICAgIDB4MS4wcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmYTNhYWUyNmI1MWY0MGE4NGM5YXAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgLTB4MS4yMDAwMDAwMDAwMDAwMTcxNTQ3NjUyYjgyZmU3M2NjZXAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIC0weDEuMjBwMywKKyAgICAweDEuMHAtOQorICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIC0weDEuMWZmZmZmZmZmZmZmZmQxZDU3MTM1YThmYTA1NDI2NGRwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtOQorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIC0weDEuNDAwMDAwMDAwMDAwMDE3MTU0NzY1MmI4MmZlNzNjY2VwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAtMHgxLjQwcDMsCisgICAgMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgLTB4MS4zZmZmZmZmZmZmZmZmZDFkNTcxMzVhOGZhMDU0MjY0ZHAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIC0weDEuYTAwMDAwMDAwMDAwMDE3MTU0NzY1MmI4MmZlNzNjY2VwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAtMHgxLmEwcDMsCisgICAgMHgxLjBwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgLTB4MS45ZmZmZmZmZmZmZmZmZDFkNTcxMzVhOGZhMDU0MjY0ZHAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMworICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIC0weDEuYTAwMDAwMDAwMDAwMDE3MTU0NzY1MmI4MmZlNzNjY2VwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAtMHgxLmEwcDMsCisgICAgMHgxLjBwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgLTB4MS45ZmZmZmZmZmZmZmZmZDFkNTcxMzVhOGZhMDU0MjY0ZHAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMworICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIC0weDEuODAwMDAwMDAwMDAwMDVjNTUxZDk0YWUwYmY5Y2YzM2JwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIC0weDEuODBwMSwKKyAgICAweDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIC0weDEuN2ZmZmZmZmZmZmZmZjQ3NTVjNGQ2YTNlODE1MDk5MzVwMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIC0weDEuOGE4OTgwYWJmYmQzOGZlYzgyNjFjZTVhYzdiMmIzMTZwLTMsCisgICAgMHgxLmJmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAtMHgxLjhhODk4MGFiZmJkMzI2NjZhOWI3ZTJkZjYwZDJiZGM2cC0zLAorICAgIDB4MS5jcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgLTB4MS44YTg5ODBhYmZiZDJiY2UwZDEwZGY3NjNmZGI3OTAzMnAtMywKKyAgICAweDEuYzAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIC0weDEuMDAwMDAwMDAwMDAwMDJlMmE4ZWNhNTcwNWZjZTc5OWRwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIC0weDEucDIsCisgICAgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmY0NzU1YzRkNmEzZTgxNTA5OTM1cDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAtMHgxLjdkNjA0OTZjZmJiNThiNmQ4ZDA1YzYwYzFlNGRlZmEwcC00LAorICAgIDB4MS5kZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgLTB4MS43ZDYwNDk2Y2ZiYjRjNjczYjQ1MTFmOGMyYjRlNGZiN3AtNCwKKyAgICAweDEuZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIC0weDEuN2Q2MDQ5NmNmYmI0MDE3OWRiOWM3OTBjM2VkZjhjNWNwLTQsCisgICAgMHgxLmUwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAtMHgxLjQwMDAwMDAwMDAwMDAyZTJhOGVjYTU3MDVmY2U3OTlkcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAtMHgxLjQwcDIsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAtMHgxLjNmZmZmZmZmZmZmZmZhM2FhZTI2YjUxZjQwYTg0YzlhcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAtMHgxLjc3Mzk0YzlkOTU4ZWQzMWNjNWQ3YzViZjY1N2NlN2M3cC01LAorICAgIDB4MS5lZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgLTB4MS43NzM5NGM5ZDk1OGQ1NWRlNWMzODBmZTA4NzFkNzU3ZnAtNSwKKyAgICAweDEuZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIC0weDEuNzczOTRjOWQ5NThiZDg5ZmYyOTg1YTAxYjUwYTU5MzNwLTUsCisgICAgMHgxLmYwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLjgwMDAwMDAwMDAwMDAyZTJhOGVjYTU3MDVmY2U3OTlkcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAtMHgxLjgwcDIsCisgICAgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmZhM2FhZTI2YjUxZjQwYTg0YzlhcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAtMHgxLjc0M2VlODYxZjM1ODUxYzdiZWI1ODAwZmYwMjUyMjBhcC02LAorICAgIDB4MS5mN2ZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgLTB4MS43NDNlZTg2MWYzNTU2MzY1NDgzNjExZjdjMGJmMDU5ZnAtNiwKKyAgICAweDEuZjgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgLTB4MS43NDNlZTg2MWYzNTI3NTAyZDFiNmEzZGZhOTJiNDY1Y3AtNiwKKyAgICAweDEuZjgwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIC0weDEuYzAwMDAwMDAwMDAwMDJlMmE4ZWNhNTcwNWZjZTc5OWRwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtOAorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIC0weDEuYzBwMiwKKyAgICAweDEuMHAtNworICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0weDEuYmZmZmZmZmZmZmZmZmEzYWFlMjZiNTFmNDBhODRjOWFwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNworICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIC0weDEuNzJjN2JhMjBmNzM4NDZhOTkyNTExYzc5MThkZjFlM2VwLTcsCisgICAgMHgxLmZiZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAtMHgxLjcyYzdiYTIwZjczMjc1YjVkMTg0YTJjNjE1YjcwYWQ0cC03LAorICAgIDB4MS5mYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAtMHgxLjcyYzdiYTIwZjcyY2E0YzIxMGI4MjkxMzQxNzQ2MDQycC03LAorICAgIDB4MS5mYzAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMTcxNTQ3NjUyYjgyZmU3M2NjZXAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC05CisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgLTB4MS5wMywKKyAgICAweDEuMHAtOAorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEuZmZmZmZmZmZmZmZmZmEzYWFlMjZiNTFmNDBhODRjOWFwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtOAorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIC0weDEuNzIwZDljMDZhODQxODBhOGRlMTFkYjQxNWE5YzE5YmZwLTgsCisgICAgMHgxLmZkZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAtMHgxLjcyMGQ5YzA2YTgzNWVhNmVmMThmOTc3ZTVkOGEzN2FicC04LAorICAgIDB4MS5mZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAtMHgxLjcyMGQ5YzA2YTgyYTU0MzUwNTBkNTNiYmJkODczM2Q5cC04LAorICAgIDB4MS5mZTAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgLTB4MS4yMDAwMDAwMDAwMDAwMTcxNTQ3NjUyYjgyZmU3M2NjZXAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIC0weDEuMjBwMywKKyAgICAweDEuMHAtOQorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0weDEuMWZmZmZmZmZmZmZmZmQxZDU3MTM1YThmYTA1NDI2NGRwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtOQorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIC0weDEuNzFiMGVhNDJlNjE0YzMzOWFjZDEyNzRlODVjOTlmMTJwLTksCisgICAgMHgxLmZlZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAtMHgxLjcxYjBlYTQyZTVmZGEyNjFkYmJkMWE0OThmNTMzMzk4cC05LAorICAgIDB4MS5mZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAtMHgxLjcxYjBlYTQyZTVlNjgxOGEwYWE5MGQ0NTUyNDAzODVmcC05LAorICAgIDB4MS5mZjAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgLTB4MS40MDAwMDAwMDAwMDAwMTcxNTQ3NjUyYjgyZmU3M2NjZXAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIC0weDEuNDBwMywKKyAgICAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAtMHgxLjNmZmZmZmZmZmZmZmZkMWQ1NzEzNWE4ZmEwNTQyNjRkcDMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgLTB4MS43MTgyYTg5NGI2Y2E4ZjdiY2E4YzJmNzY3ZWFiYzU3MnAtMTAsCisgICAgMHgxLmZmN2ZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAtMHgxLjcxODJhODk0YjY5YzU5NWY3OTIwY2VhMTYxOWM2ZTU3cC0xMCwKKyAgICAweDEuZmY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgLTB4MS43MTgyYTg5NGI2NmUyMzQzMjdiNTZkY2RiNjlhN2QyMXAtMTAsCisgICAgMHgxLmZmODAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAtMHgxLmEwMDAwMDAwMDAwMDAxNzE1NDc2NTJiODJmZTczY2NlcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgLTB4MS5hMHAzLAorICAgIDB4MS4wcC0xMworICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIC0weDEuOWZmZmZmZmZmZmZmZmQxZDU3MTM1YThmYTA1NDI2NGRwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAtMHgxLjcxNWEzYmMzNWFhZWFkNGI3Y2U2NWQ0MzYzMmFmMGFkcC0xMywKKyAgICAweDEuZmZlZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIC0weDEuNzE1YTNiYzM1OTNkNGQ0YTJhMjM5NzQ1ZjY0Mjc0MjBwLTEzLAorICAgIDB4MS5mZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAtMHgxLjcxNWEzYmMzNTdjYmVkNDhkNzYwZDE1NDE0YjY1ZDBkcC0xMywKKyAgICAweDEuZmZmMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmEzYWFlMjZiNTFmNDA2MzBjcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmY0NzU1YzRkNmEzZTgwOTdlZXA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuYTZjODczNDk4ZGRmNzFhMzZmNDc3YTc3NmZiMzRlNGJwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgMHgxLjRkOTBlNjkzMWJiZWUzNDZkZThlZjRlZWRmNjY5Yzk2cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAweDEuNzE1NDc2NTJiODJmZDVlY2Q5NWQ2N2RmNTNhOWRkNTBwLTUyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAwLjAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIC0weDEuNzE1NDc2NTJiODJmZTczY2NlZTk0ODgxOTFkZjIyMGZwLTUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgLTB4MS42NGRlMzJkOWM4ODIzOTcyNDJlMjE2MjI0MTMyYzZkMnAtMiwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzOAorICAgIC0weDEuZmVmZmZmZmZmZmZmZmZmNDc1NWM0ZDZhM2U4MTUwOTlwOSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIC0weDEuZmZwOSwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIC0weDEuZmYwMDAwMDAwMDAwMDAwYjhhYTNiMjk1YzE3ZjY4MTFwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIC0weDEuZmYwMDAwMDAwMDAwMDAxNzE1NDc2NTJiODJmZjg4Y2NwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIC0weDEuMGM0MHAxMCwKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIC0weDEuMGM4MHAxMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDM0NAorICAgIC1IVUdFX1ZBTCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAtSFVHRV9WQUwsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS5mNHA2LAorICAgIDB4MS4wcDEyNQorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIC0weDEuZmNwNiwKKyAgICAweDEuMHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAweDEucDEsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIC0weDEucDAsCisgICAgMHgxLjBwLTEKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9sb2cyZl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvbG9nMmZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY2NmE4NGUKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvbG9nMmZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTE1MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGZsb2F0LCBmbG9hdD4gZ19sb2cyZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIDB4MS43MTU0MTlmZGI5NjIzMWJkMWZhMTVmMzdiZmE0MjkxMHAtMTcsCisgICAgMHgxLjAwMDA4MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS4xNGZlODhmZjU3NTNmYTU2ZGMyN2JjYTA1NjI4NTY3MnAtMTUsCisgICAgMHgxLjAwMDE4MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS43MTUzMDUwMDJlNGFlNDY2ZWQwNjRhMDFhZTU1MjA0ZXAtMTUsCisgICAgMHgxLjAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuNDMyN2IyMDQzMzgzN2EzZTJjNjEwYTM5MmJiZDI5NWFwLTE0LAorICAgIDB4MS4wMDAzODBwMAorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEuNjQ1MzFlZmZlZDE3ZWI5YjBhOTNiM2NjYWEyNGY4MmJwLTEzLAorICAgIDB4MS4wMDA3YjhwMAorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAtMHgxLmZmZTdhNGZmZmY1ZjEyNWNhZDdmMDQ2OGI1NWE4NzNjcDIsCisgICAgMHgxLjAwNDM5MHAtOAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAtMHgxLjRmZGQ2MzAwMmUwMDBlYTc0YTgwYzkxYjc3MWZlYjJlcDQsCisgICAgMHgxLjAxODFwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS42MTM4MmQwMTE2NmE1ZjY1NjYyODY3NmRkNTcyODdjM3AtNywKKyAgICAweDEuMDFlYjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLjY3ZWExYjA0MWFlZWY1ZDA2ZDI3ZGIxNzNjNGE4ZWMzcC03LAorICAgIDB4MS4wMWY0ZGFwMAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuNmYwODk3MDNmYThiODM2MjA5ZTgwNjM3NDAxNGVlZWFwLTcsCisgICAgMHgxLjAxZmVjY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEuZDhjNWI5MDAwMDcyODE0YmExMWRjMDdlM2U1NTczMGNwLTYsCisgICAgMHgxLjA1MmNwMAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLjY1YWQ3MzAwMzY5OGFlM2I2NjI5ZDQyZDZkOTY5ZDY1cC01LAorICAgIDB4MS4wN2RkYjRwMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLjY3MWI3MjAwMzFiZmYxOGMyMWQzYzY2ODBiNjA3YTk3cC01LAorICAgIDB4MS4wN2U1ZTBwMAorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgLTB4MS5iZDAxODIwMDEzZDJiZGYyZTcwOGEwM2I2M2NhZDg5NHAyLAorICAgIDB4MS4wODcwcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEuYmM4YTNmMDAyZDQ5ZmYyZmZmNjFiYmM4OGNhODQzNjZwLTUsCisgICAgMHgxLjA5ZDBwMAorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLmQxNWNmZDAwMGJhMThiODM0NjY4MjczZGI0M2E1NGY0cC01LAorICAgIDB4MS4wYTQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS4yNTQ1MDNmZmZmZjJjNzQ2OWYwYzU1MWM1ODYyOGM3NXAtNCwKKyAgICAweDEuMGQwNjg2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS44OTcyNDQ1ZGJlMjAxMWZiYWY3Njc3NGVjYWExODg2YnAtNCwKKyAgICAweDEuMTFhMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAtMHgxLjRlMGRkZGZmZmQxZmFkZmY4OTZjNzczYTk4M2NiMDY5cDQsCisgICAgMHgxLjE2ODRwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAtMHgxLjZkOWY0MzAwMDAwMTg4ZDVlMjhiZjllY2Q3ZWI0OGEzcDEsCisgICAgMHgxLjFhYzliY3AtMworICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLjNlODY2NmZlZDllMDkxOTA1NGQxNzIzYzdiZmEyYTJlcC0zLAorICAgIDB4MS4xZDI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIC0weDEuYTk5NjdkZmZmZGVhMmYyMmU4N2EzZDJjZmI0NjUzZTBwLTEsCisgICAgMHgxLjFmYzUzMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS5hYzdiNDMwMDAwMDAyYjE2YTgzNTI2MGQzNWY3M2YzYnAwLAorICAgIDB4MS40MGY1NzJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIC0weDEuNTBmZDM2ZmZmZjdiMWZlMjExYjJmMWU0NjdhODA4YzZwMSwKKyAgICAweDEuNGEzN2FhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAtMHgxLjY4ZTNlNzAwMDExZWVkMWM4YmRmNzhhNTAwNGVjODQ1cDQsCisgICAgMHgxLjVjNTc4MHAtMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIC0weDEuMTRjNTYwZmU2OGFmODgwZTBhMGYzMzdkNTU1NjUyODFwLTEsCisgICAgMHgxLjYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuZWVlMGY5ZTliZDU0MWMyMTYxZmJhYTYwMWFkNDRmOWRwLTIsCisgICAgMHgxLjY1ZGRmYXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuZmZmZjZiNzE1ZTIyOTE5MjA3NGRkNTIwZTgwMDUyM2RwLTIsCisgICAgMHgxLjZhMDljMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuZmZmZmI0ZTQ5OTg2ZDkyM2E0ZTU0MGYwM2IxZGEwZGFwLTIsCisgICAgMHgxLjZhMDlkNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAtMHgxLjAwMDAwOGZkNTY0YTg1MzIxOThmZDljNjAyNTk2MzUxcC0xLAorICAgIDB4MS42YTA5ZTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEuNWU3ZGY1ZmU1MzhhYjM0ZWZiNTE1YWM5M2I0NDNkNTVwMiwKKyAgICAweDEuNzBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS4zNzE5ZDhmZmRhOGVlMjdjMjBjYTVkMzZjZTQwYTE5YnAzLAorICAgIDB4MS5hNjNjNjBwOQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgLTB4MS45NTE1MmEwMDFjYjAwMDAyOTdhNDE4YmM1ODc0MWNkOHA2LAorICAgIDB4MS5hODZhNDBwLTEwMgorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgLTB4MS5hODZkNTIwMDAwMDBkZGU5Y2M4NTgyY2E2ZjRhZGYwMnAzLAorICAgIDB4MS5hYTkzMmNwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAtMHgxLmE2NWJmNGZmZmRjMmViNmUyYmJhMWUxNTU3MzE0ODVjcDMsCisgICAgMHgxLmJlMWRhY3AtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS4xOWU5NmFmZmZmZTQ2OTY5ZTA5MTMxOWFmMzliZjAxZHAzLAorICAgIDB4MS5jMGJlMDhwOAorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgLTB4MS42YjIxOTRmZmZiY2M0NzNlNmI0MDg1OThiMTFjMGI3NnAtMywKKyAgICAweDEuYzRjOTkwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAtMHgxLmIwNzQ3YWZmZjA5MTI5ZTdjMjc5ODE4MzIzNzFhMmI3cC00LAorICAgIDB4MS5kYmRlNmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIC0weDEuYTMxZDkwZmZmZGMwNmZhNjc0ZTZjNzdlMGQyNzMyNWVwMywKKyAgICAweDEuZGU5NjkwcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS43ZDYxZWJmZmY3MDdiYWYwYTRiYWJjN2E0NTVmZGVkYXAtNCwKKyAgICAweDEuZGZmZmRlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAtMHgxLjhiZTMzNTAwMDAxMjkwMjRmMTc0NmRmMDliMThlMWMwcDEsCisgICAgMHgxLmUwMTQ0OHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS4yZGFiNjhmZmZmNjUzYWEwZjUyMjExMGYxNjVmYzZjZHAtNCwKKyAgICAweDEuZTY4NGFlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAtMHgxLjFkZGMwNmZmZTQ5M2ViOWU4MzhiYzU3ZjE2OTJmMDcxcC01LAorICAgIDB4MS5mM2MzYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIC0weDEuZmU1YzI4YjUxNzYzZmQ5ZTU5N2I3NGI3N2VhZWYzNjNwLTYsCisgICAgMHgxLmY1MTA0Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgLTB4MS5mYjQ2YzhmZmIyOTdiYzhiMzZlYzcyYmY4Zjg0NWRhZnAtNiwKKyAgICAweDEuZjUyMTA4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAtMHgxLjgzYTQzODJiYzBjYTc2YmE1M2EwMmY1YzM5ZGQxMTA1cDEsCisgICAgMHgxLmY2MDBhOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTB4MS5jNTY4NWVmZmQ2ZGM2MGM0NjVmNmQ0NTY2NDAwZWExYnAtNiwKKyAgICAweDEuZjY0NWJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAtMHgxLmMwZGFhMmZmZTNmZGU0MmMyMjBkOWNkZDZkYmE2MzZicC02LAorICAgIDB4MS5mNjVlODJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIC0weDEuYTBhYjNlZmZiMjJiMmJhYTIzMGQwMWQzNjhmNDg2Y2ZwLTYsCisgICAgMHgxLmY3MGRiZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS45OTkzZTZiNWVlYmM2MGM2NDE2OTgyZGY5YmYwMjdjZHAtNiwKKyAgICAweDEuZjczNDYycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAtMHgxLjkwZGI0MGIzZDk4YmViZTZlMDY4YjcyNjQ2NTM2MjMzcC02LAorICAgIDB4MS5mNzYzZWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIC0weDEuODA1Y2U2ZDFlZWM0ZTU1NGMwNWQxMjc3YjdhNjFmMWVwLTYsCisgICAgMHgxLmY3YmRlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgLTB4MS43MWM1MjcwMDAzZTc0MDBhODI1NzFlMTRkMjExYjFhYnAtOSwKKyAgICAweDEuZmVmZmYycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLjRmZDA5NTAwMDBmOWVhMTYzZTNiNmIzNzliODA2YTI3cC05LAorICAgIDB4MS5mZjE3NzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIC0weDEuODAyZTJiZmZmZmZjMzNmMjc4ZmE1MjQwMjMyMGYxMGFwMSwKKyAgICAweDEuZmY4MDBjcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLjcxODg2N2MzOWFhYzVlZTM3Njg1Mzk0ZmU5YmZkNzQ5cC0xMywKKyAgICAweDEuZmZlZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLjcyYzY4NGU1Y2ZjMTQ2ZDIyNzUyMTA4MTJjMGM3ZjY4cC0xNiwKKyAgICAweDEuZmZmZGZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLjcxNTUyZWZkNmU3NWMxNTViZDRlNGVkOTRmNTlhMjZhcC0xNiwKKyAgICAweDEuZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgLTB4MS40OGVmNWUwMDUzNWQ5MTY1YmJiOWI5YThjMDU2Zjc5N3AtMTgsCisgICAgMHgxLmZmZmY4ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgLTB4MS43MTU0NzkzNTYxMjQzOGFhNmFmNmI1NDk1ODkyZTcxOXAtMjIsCisgICAgMHgxLmZmZmZmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgLTB4MS43MTU0NzdjNDBjYTgyMGEwNGQ5N2JlNGVmY2NkOTVhOXAtMjMsCisgICAgMHgxLmZmZmZmY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgLTB4MS43MTU0NzcwYjYyNmI4NWVmYmNjZGY2OGQyZTk3ODlmOXAtMjQsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgLTB4MS4wMDAwMDBkNDE3NWRkZWJhYTZjYzlkNjExMjM2NTIyOXAtMSwKKyAgICAweDEuNmEwOWU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLjU2MTQ2Mjg0NmQxNTM1MGVlNjI0OGVjZDRjMWIwMDJicC0yLAorICAgIDB4MS45NjJiNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEuN2I2N2RiYTg2ZTg5NmMwYTUzZDJjOTM5ZWYwZDI5YmZwLTMsCisgICAgMHgxLmMyNGNkYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgLTB4MS45Y2FiNjZjNTgxNDNmMmE4MDBlNjhkYmIwMmY1NDMzMXAtNSwKKyAgICAweDEuZWU2ZTU0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEuMmFlMDU0MzgwZDE2ZDhmNTk2NzNhN2UzOTI4MjQ2Y2RwLTQsCisgICAgMHgxLjBkNDdlNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEuN2UyMzUwMzI2NGM0YWQzNzFiOGYxNjNjNGY5YWVmMjZwLTMsCisgICAgMHgxLjIzNThhMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuMmFlYmIxODdjZTZlZTM2MmQzMTAzYTIyMDBiMjg2ZTJwLTIsCisgICAgMHgxLjM5Njk1ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAweDEuOGY2ZTdhMjY5N2I1MzBmYWQzZDEyYTlkNmE4ZjFkM2FwLTIsCisgICAgMHgxLjRmN2ExYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuZWQ4OTliMDdlYjljYjhhZjJjOTI3ZWNmMTJlYzdjYmVwLTIsCisgICAgMHgxLjY1OGFkNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuMjMwMGNiNDYwNjYxNWI3NDQ2NTNlMTY3ZDg2ZjI4MTNwLTEsCisgICAgMHgxLjdiOWI5MnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEuNGNiY2NjMzZkZWI1MGRkM2UwMGMxYTRlY2ExOGQ1N2VwLTEsCisgICAgMHgxLjkxYWM0ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEuNzQzZDRjYjdkOTI1NjJlMTQ4NGY4NjJiNjg4YTQ2ZmJwLTEsCisgICAgMHgxLmE3YmQwYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuOTliYzU5NDc5OTliMTkwY2NjNjdjZWYwNDEzMTEyODJwLTEsCisgICAgMHgxLmJkY2RjNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAweDEuYmQ2YjkzNDc3NWJlZjEzYTYzNTllMzMxZWZlNjdhMTFwLTEsCisgICAgMHgxLmQzZGU4MnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuZGY3NWJlOGVmNDM5Y2UzNjFlYmJiMTNmZmYzYTdiNTNwLTEsCisgICAgMHgxLmU5ZWYzZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAweDEuZmZmZmY3NTgwNTJkMTNiNjlkZDZjOGQ2NzQwYTMzNTdwLTEsCisgICAgMHgxLmZmZmZmYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAtMHgxLjAwMDAwMGQ0MTc1ZGRlYmFhNmNjOWQ2MTEyMzY1MjI5cC0xLAorICAgIDB4MS42YTA5ZTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEuNzMzMjRhOWI5ZDI4OTVkNzlkOGRkZjA3YTUwMmJlcC0yLAorICAgIDB4MS44ZTNlMTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEuZTU0ZTQzMjM2MTE4OWMzMzUzY2MwNmMyZGQyN2Q3MzZwLTMsCisgICAgMHgxLmIyNzI0NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS5mMTlkZTkwOWQ3ZTYzZmQyNjRhMmMzMTJkMGMxNzg5ZHAtNCwKKyAgICAweDEuZDZhNjc2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLmRkODliNzM4ZDIxZDAyMjFjOTA4YjhhMGMzMmYxMjEycC03LAorICAgIDB4MS5mYWRhYTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS41YzAxOTIxZDU5NGFjZTc0NzA5ZTEzNDQwOWQ0ZWQyNHAtNCwKKyAgICAweDEuMGY4NzZjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS42Y2IwZWIwY2MwMzMyNmNmYWJkYjY4ZWNlZTdhYmE0MHAtMywKKyAgICAweDEuMjFhMTg0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS4wZmU4NTAzZTQ2NzEwNmE2NTc4OGRkYjNhMTVmNTM3NXAtMiwKKyAgICAweDEuMzNiYjljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS42NDU5NDUxMWU2MzdlNmY5M2I1Y2IyOTEyYjk5YWJlZHAtMiwKKyAgICAweDEuNDVkNWI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS5iNDM5MjgxNWJmOTIxMTNlNzVlYjBkZDJiMjZmZDc0MHAtMiwKKyAgICAweDEuNTdlZmNjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS5mZmZmZjYyZTkyNWQ2MTY1MmM5MTQ1MDRkYzNlZTJjZXAtMiwKKyAgICAweDEuNmEwOWU0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIC0weDEuYThmZjk3MTgxMGE1ZTE4MTdmZDNiN2Q3ZTVkMTQ4YmJwLTIsCisgICAgMHgxLjgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAtMHgxLjFjMzFkZjM3ZDcxOTQzZWI3NzgyOWExZmViMzdiOTlhcC0yLAorICAgIDB4MS5hNjY2NjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIC0weDEuMzc0ZDZhZmIxMjU5NjhhMGM0OTNkZjE1YmY2OWU0MzhwLTMsCisgICAgMHgxLmNjY2NjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgLTB4MS4yYjM4NmNjODdmOWE0ZWVlNzg1ZDRhNWRiY2U4ODdiN3AtNSwKKyAgICAweDEuZjMzMzMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAweDEuMjA1MDdkYmUzMDExYmRkYjlhOWIxMjNjNDM0MWJjNGNwLTQsCisgICAgMHgxLjBjY2NjY3AwCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuNWMwMWEzOWZiZDY4NzlmYTAwYjEyMGEwNjhiYWRkMTJwLTMsCisgICAgMHgxLjIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS4wZDU4ZTgwM2ZlZGJhZDhmNTlkNTk0N2IyYTIxYTQyNXAtMiwKKyAgICAweDEuMzMzMzM0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS42NmU4Yzc1NDI2MWQwZWJkYTIwYzAwYWQ3NGU4NTA5MXAtMiwKKyAgICAweDEuNDY2NjY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS5iYjU5YzAzZDU0ZWI0YjEwYTM4NDA0NmMzOGVkMzlmZHAtMiwKKyAgICAweDEuNTk5OTljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS4wNTljZDM3NDU3MWViMzE4NTI2NDBiYjU1MzY3N2M4M3AtMSwKKyAgICAweDEuNmNjY2QwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS4yYjgwMzQ3M2Y3YWQwZjNmNDAxNjI0MTQwZDE3NWJhMnAtMSwKKyAgICAweDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDAuMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuMTk5Yjc2YmYyM2UyMjFhNjIzMWZjMzNiY2E0MWI2MDdwLTMsCisgICAgMHgxLjE5OTk5YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLjBkNThlODAzZmVkYmFkOGY1OWQ1OTQ3YjJhMjFhNDI1cC0yLAorICAgIDB4MS4zMzMzMzRwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS44Mzk4OTI1ZmNkNjFmYmYxYWE4MWVmNzk4YjA4YmIyY3AtMiwKKyAgICAweDEuNGNjY2NlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuZjExM2MxODU4ZGU0OTZkODE0YTY4ZTgyOTE5ZDY3M2JwLTIsCisgICAgMHgxLjY2NjY2OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjJiODAzODRjZDhlNjA1ZTk5YTVjZDk5ZjM0MjkzODg4cC0xLAorICAgIDB4MS44MDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS41YjJjNDFmNTk0ODM2MTM4M2Y0OThlMTc5YTZkZDM0N3AtMSwKKyAgICAweDEuOTk5OTljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuODdmNDMwNTdjNzA3ZWM4OWNhMDA4MzVmYjk1ZjY2ZDdwLTEsCisgICAgMHgxLmIzMzMzNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLmIyMmNhYmFhYjJjODk2NDkxMWFiZGUyMjBmNWY0MTVjcC0xLAorICAgIDB4MS5jY2NjZDBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS5kYTFjOWRmZDMxYTc3MDYxNDZlZjI2NmMxNmVkNjU1ZHAtMSwKKyAgICAweDEuZTY2NjZhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEucDAsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLjkwcDYsCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuOTA4Y2NkYmI1ZjkxZjExMGQzMTE4ZmUxOWRlNTIwZGJwNiwKKyAgICAweDEuMTk5OTlhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS45MTBkNThlODAzZmVkYmFkOGY1OWQ1OTQ3YjJhMjFhNHA2LAorICAgIDB4MS4zMzMzMzRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLjkxODM5ODkyNWZjZDYxZmJmMWFhODFlZjc5OGIwOGJicDYsCisgICAgMHgxLjRjY2NjZXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuOTFmMTEzYzE4NThkZTQ5NmQ4MTRhNjhlODI5MTlkNjdwNiwKKyAgICAweDEuNjY2NjY4cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS45MjU3MDA3MDk5YjFjYzBiZDMzNGI5YjMzZTY4NTI3MXA2LAorICAgIDB4MS44MDAwMDJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLjkyYjY1ODgzZWIyOTA2YzI3MDdlOTMxYzJmMzRkYmE2cDYsCisgICAgMHgxLjk5OTk5Y3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuOTMwZmU4NjBhZjhlMGZkOTEzOTQwMTA2YmY3MmJlY2RwNiwKKyAgICAweDEuYjMzMzM2cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS45MzY0NTk1NzU1NjU5MTJjOTIyMzU3YmM0NDFlYmU4MnA2LAorICAgIDB4MS5jY2NjZDBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLjkzYjQzOTNiZmE2MzRlZTBjMjhkZGU0Y2Q4MmRkYWNhcDYsCisgICAgMHgxLmU2NjY2YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEuOTRwNiwKKyAgICAweDEucDEwMQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIC0weDEuNzE1NDgxZGQ1YzVkOTM2NjMyNTVlY2E3YmE4MmFlYjZwLTIwLAorICAgIDB4MS5mZmZmZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLjcxNTQ3YzE4MGEyN2YzNjJkMTdhMWY1OWJlMWJiNTVkcC0yMSwKKyAgICAweDEuZmZmZmYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMC4wLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDB4MS43MTU0NzA4ZDY2NzU1ZDlmZTExOWVkMWU4NWMxM2Y0MHAtMjEsCisgICAgMHgxLjAwMDAwOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLjcxNTQ2YWM4MTRmODY3ZDdhOTlhYzI0MGYxNzdkMzVmcC0yMCwKKyAgICAweDEuMDAwMDEwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAtMHgxLjcxNTQ3NzBiNjI2Yjg1ZWZiY2NkZjY4ZDJlOTc4OWY5cC0yNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgLTB4MS43MTU0NzcwYjYyNmI4NWVmYmNjZGY2OGQyZTk3ODlmOXAtMjQsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIC0weDEuNzE1NDc3MGI2MjZiODVlZmJjY2RmNjhkMmU5Nzg5ZjlwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAtMHgxLjcxNTQ3NzBiNjI2Yjg1ZWZiY2NkZjY4ZDJlOTc4OWY5cC0yNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgLTB4MS43MTU0NzcwYjYyNmI4NWVmYmNjZGY2OGQyZTk3ODlmOXAtMjQsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIC0weDEuNzE1NDc3MGI2MjZiODVlZmJjY2RmNjhkMmU5Nzg5ZjlwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMHgxLjcxNTQ3NzBiNjI2Yjg1ZWZiY2NkZjY4ZDJlOTc4OWY5cC0yNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgLTB4MS43MTU0NzcwYjYyNmI4NWVmYmNjZGY2OGQyZTk3ODlmOXAtMjQsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuNzE1NDc3MGI2MjZiODVlZmJjY2RmNjhkMmU5Nzg5ZjlwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLjcxNTQ3NzBiNjI2Yjg1ZWZiY2NkZjY4ZDJlOTc4OWY5cC0yNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS43MTU0NzcwYjYyNmI4NWVmYmNjZGY2OGQyZTk3ODlmOXAtMjQsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuNzE1NDc3MGI2MjZiODVlZmJjY2RmNjhkMmU5Nzg5ZjlwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLjcxNTQ3NzBiNjI2Yjg1ZWZiY2NkZjY4ZDJlOTc4OWY5cC0yNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgLTB4MS43MTU0NzcwYjYyNmI4NWVmYmNjZGY2OGQyZTk3ODlmOXAtMjQsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuNzE1NDc3MGI2MjZiODVlZmJjY2RmNjhkMmU5Nzg5ZjlwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuZmZmZmZmZmEzYWFlMjNkMjc2NTFlODQxMGNjODI1Y2JwNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuMmFwNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAtMHgxLjAwMDAwNGU4YjZkMTRmNGQ2OWI3NWQ3ZDkxZTA4ZTk4cC0xLAorICAgIDB4MS42YTA5ZTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAtMHgxLjAwMDAwMGQ0MTc1ZGRlYmFhNmNjOWQ2MTEyMzY1MjI5cC0xLAorICAgIDB4MS42YTA5ZTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLmZmZmZmOTdlZWZlMDY2ZjM4MGZhMzcwNDk4N2I5ODExcC0yLAorICAgIDB4MS42YTA5ZThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAweDEuZmZmZmY2MmU5MjVkNjE2NTJjOTE0NTA0ZGMzZWUyY2VwLTIsCisgICAgMHgxLjZhMDllNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLmZmZmZmZTU3ZDE0NDQyOGFiMjY2YzUzZGRiOTM1YmFjcC0yLAorICAgIDB4MS42YTA5ZTZwMAorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS4wMDAwMDM0MDg4MGZjYzg2M2Y4MmU0N2RiM2MyMzNmN3AtMSwKKyAgICAweDEuNmEwOWU4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMHgxLjAwMDAwMTcxNTQ3NzBiNjI2Yjg1ZWZiY2NkZjY4ZDJlcDAsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEucDAsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIC0weDEuZmZmZmZhM2FhZTJjN2E3MTEyMTM0MDVmYzIwYTExYjhwLTEsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuYThmZjllYzlkMzIyMTEyZWQzMWYyNDRiY2ViMWVjODVwLTIsCisgICAgMHgxLjdmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0weDEuYThmZjk3MTgxMGE1ZTE4MTdmZDNiN2Q3ZTVkMTQ4YmJwLTIsCisgICAgMHgxLjgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS5hOGZmOGY2NjRlMzNmNDJjY2I0NjRjYzE5N2FkOGVlZnAtMiwKKyAgICAweDEuODAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLjJiODAzMDliMTY2ZWY3Njg5NjcwNmRkYTE4YTcwOWJkcC0xLAorICAgIDB4MS43ZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIDB4MS4yYjgwMzQ3M2Y3YWQwZjNmNDAxNjI0MTQwZDE3NWJhMnAtMSwKKyAgICAweDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS4yYjgwMzg0Y2Q4ZTYwNWU5OWE1Y2Q5OWYzNDI5Mzg4OHAtMSwKKyAgICAweDEuODAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEuZWJjNTE0NjRjY2Q2NmYxMGU3ZDIzNGEyYTBjZTIyNWZwLTksCisgICAgMHgxLjAwYWFhOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLmViY2FkNWUwNWQ1OGM2ZGRmZDZjMDljMTkzZmIzZTNlcC05LAorICAgIDB4MS4wMGFhYWFwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIDB4MS5lYmQwOTc1YmUyNWZjZjE4NDNmYWNhYmFhN2FhN2I1MXAtOSwKKyAgICAweDEuMDBhYWFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuZmZmZmZlOGVhYjg4ZjQ5ZDk0N2ExMDQzMzIwOTcyZDFwMCwKKyAgICAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAweDEucDEsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLjAwMDAwMTcxNTQ3NGUxNjNiYjdiMmZlODBmN2Q3YjkxcDEsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgMHgxLmZmZmZmZDFkNTcxMWU5M2IyOGY0MjA4NjY0MTJlNWEycC0xLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIDB4MS5wMCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAweDEuMDAwMDAyZTJhOGU5YzJjNzc2ZjY1ZmQwMWVmYWY3MjNwMCwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAtMHgxLjcxNTQ3NzBiNjI2Yjg1ZWZiY2NkZjY4ZDJlOTc4OWY5cC0yNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMC4wLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS43MTU0NzRlMTYzYmI3YjJmZTgwZjdkN2I5MWYxODUxY3AtMjMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS4wMDAwMDE3MTU0NzcwYjYyNmI4NWVmYmNjZGY2OGQyZXAwLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLmZmZmZmYTNhYWUyYzdhNzExMjEzNDA1ZmMyMGExMWI4cC0xLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLjAwMDAwMGI4YWEzYjg1YjEzNWMyZjdkZTY2ZmI0Njk3cDEsCisgICAgMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIC0weDEucDEsCisgICAgMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIC0weDEuZmZmZmZkMWQ1NzE2M2QzODg5MDlhMDJmZTEwNTA4ZGNwMCwKKyAgICAweDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS44MDAwMDBiOGFhM2I4NWIxMzVjMmY3ZGU2NmZiNDY5N3AxLAorICAgIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAtMHgxLjgwcDEsCisgICAgMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuN2ZmZmZlOGVhYjhiMWU5YzQ0ODRkMDE3ZjA4Mjg0NmVwMSwKKyAgICAweDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgLTB4MS4wMDAwMDA1YzU1MWRjMmQ4OWFlMTdiZWYzMzdkYTM0YnAyLAorICAgIDB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAtMHgxLnAyLAorICAgIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAtMHgxLmZmZmZmZThlYWI4YjFlOWM0NDg0ZDAxN2YwODI4NDZlcDEsCisgICAgMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIC0weDEuNDAwMDAwNWM1NTFkYzJkODlhZTE3YmVmMzM3ZGEzNGJwMiwKKyAgICAweDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgLTB4MS40MHAyLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLjNmZmZmZjQ3NTVjNThmNGUyMjQyNjgwYmY4NDE0MjM3cDIsCisgICAgMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIC0weDEuODAwMDAwNWM1NTFkYzJkODlhZTE3YmVmMzM3ZGEzNGJwMiwKKyAgICAweDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgLTB4MS44MHAyLAorICAgIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAtMHgxLjdmZmZmZjQ3NTVjNThmNGUyMjQyNjgwYmY4NDE0MjM3cDIsCisgICAgMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuYzAwMDAwNWM1NTFkYzJkODlhZTE3YmVmMzM3ZGEzNGJwMiwKKyAgICAweDEuZmZmZmZlcC04CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTB4MS5jMHAyLAorICAgIDB4MS5wLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAtMHgxLmJmZmZmZjQ3NTVjNThmNGUyMjQyNjgwYmY4NDE0MjM3cDIsCisgICAgMHgxLjAwMDAwMnAtNworICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0weDEuMDAwMDAwMmUyYThlZTE2YzRkNzBiZGY3OTliZWQxYTVwMywKKyAgICAweDEuZmZmZmZlcC05CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5wMywKKyAgICAweDEucC04CisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgLTB4MS5mZmZmZmY0NzU1YzU4ZjRlMjI0MjY4MGJmODQxNDIzN3AyLAorICAgIDB4MS4wMDAwMDJwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMHgxLjIwMDAwMDJlMmE4ZWUxNmM0ZDcwYmRmNzk5YmVkMWE1cDMsCisgICAgMHgxLmZmZmZmZXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLjIwcDMsCisgICAgMHgxLnAtOQorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuMWZmZmZmYTNhYWUyYzdhNzExMjEzNDA1ZmMyMGExMWJwMywKKyAgICAweDEuMDAwMDAycC05CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgLTB4MS40MDAwMDAyZTJhOGVlMTZjNGQ3MGJkZjc5OWJlZDFhNXAzLAorICAgIDB4MS5mZmZmZmVwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS40MHAzLAorICAgIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgLTB4MS4zZmZmZmZhM2FhZTJjN2E3MTEyMTM0MDVmYzIwYTExYnAzLAorICAgIDB4MS4wMDAwMDJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgLTB4MS5hMDAwMDAyZTJhOGVlMTZjNGQ3MGJkZjc5OWJlZDFhNXAzLAorICAgIDB4MS5mZmZmZmVwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTB4MS5hMHAzLAorICAgIDB4MS5wLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS45ZmZmZmZhM2FhZTJjN2E3MTEyMTM0MDVmYzIwYTExYnAzLAorICAgIDB4MS4wMDAwMDJwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgLTB4MS5hMDAwMDAyZTJhOGVlMTZjNGQ3MGJkZjc5OWJlZDFhNXAzLAorICAgIDB4MS5mZmZmZmVwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgLTB4MS5hMHAzLAorICAgIDB4MS5wLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgLTB4MS45ZmZmZmZhM2FhZTJjN2E3MTEyMTM0MDVmYzIwYTExYnAzLAorICAgIDB4MS4wMDAwMDJwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS44MDAwMDBiOGFhM2I4NWIxMzVjMmY3ZGU2NmZiNDY5N3AxLAorICAgIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMHgxLjgwcDEsCisgICAgMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuN2ZmZmZlOGVhYjhiMWU5YzQ0ODRkMDE3ZjA4Mjg0NmVwMSwKKyAgICAweDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgLTB4MS44YTg5OGRkY2I2ZWZlZDY1OTVlZmFmYzVlMDc3YTFjYnAtMywKKyAgICAweDEuYmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS44YTg5ODBhYmZiZDMyNjY2YTliN2UyZGY2MGQyYmRjNnAtMywKKyAgICAweDEuYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAtMHgxLjhhODk3MzdiNDBjNTcyODZiMTM0MDMxMTI2YzljN2VkcC0zLAorICAgIDB4MS5jMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAtMHgxLjAwMDAwMDVjNTUxZGMyZDg5YWUxN2JlZjMzN2RhMzRicDIsCisgICAgMHgxLmZmZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIC0weDEucDIsCisgICAgMHgxLnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0weDEuZmZmZmZlOGVhYjhiMWU5YzQ0ODRkMDE3ZjA4Mjg0NmVwMSwKKyAgICAweDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgLTB4MS43ZDYwNjIwYzM2ZDg3Y2ZjZDhiYWJmNzUxZWRjMGM4YnAtNCwKKyAgICAweDEuZGZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS43ZDYwNDk2Y2ZiYjRjNjczYjQ1MTFmOGMyYjRlNGZiN3AtNCwKKyAgICAweDEuZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAtMHgxLjdkNjAzMGNkYzBhYjUzNWNjYTFmZDUwNTUyMjM3YjFlcC00LAorICAgIDB4MS5lMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAtMHgxLjQwMDAwMDVjNTUxZGMyZDg5YWUxN2JlZjMzN2RhMzRicDIsCisgICAgMHgxLmZmZmZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0weDEuNDBwMiwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTB4MS4zZmZmZmY0NzU1YzU4ZjRlMjI0MjY4MGJmODQxNDIzN3AyLAorICAgIDB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAtMHgxLjc3Mzk3YzQ1NjJkOWU1NDY0MWY2MTVhNmNhMmIyN2JhcC01LAorICAgIDB4MS5lZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLjc3Mzk0YzlkOTU4ZDU1ZGU1YzM4MGZlMDg3MWQ3NTdmcC01LAorICAgIDB4MS5mMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIC0weDEuNzczOTFjZjVjODcxZjdjZTZhMGQ2MGMzZmNjOGMwYTNwLTUsCisgICAgMHgxLmYwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0weDEuODAwMDAwNWM1NTFkYzJkODlhZTE3YmVmMzM3ZGEzNGJwMiwKKyAgICAweDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgLTB4MS44MHAyLAorICAgIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMHgxLjdmZmZmZjQ3NTVjNThmNGUyMjQyNjgwYmY4NDE0MjM3cDIsCisgICAgMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIC0weDEuNzQzZjQ2MmU0MjU0ZjVlMmJlMjViODUwNjAyOGQwOGFwLTYsCisgICAgMHgxLmY3ZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIC0weDEuNzQzZWU4NjFmMzU1NjM2NTQ4MzYxMWY3YzBiZjA1OWZwLTYsCisgICAgMHgxLmY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgLTB4MS43NDNlOGE5NWE0YjUxYTVjNzRiZTBkNWFlNjVhYWIxYnAtNiwKKyAgICAweDEuZjgwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgLTB4MS5jMDAwMDA1YzU1MWRjMmQ4OWFlMTdiZWYzMzdkYTM0YnAyLAorICAgIDB4MS5mZmZmZmVwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAtMHgxLmMwcDIsCisgICAgMHgxLnAtNworICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEuYmZmZmZmNDc1NWM1OGY0ZTIyNDI2ODBiZjg0MTQyMzdwMiwKKyAgICAweDEuMDAwMDAycC03CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgLTB4MS43MmM4NzQzZjZmYTljZmJlMWUyODdhZDE5YWNhNmQ2N3AtNywKKyAgICAweDEuZmJmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgLTB4MS43MmM3YmEyMGY3MzI3NWI1ZDE4NGEyYzYxNWI3MGFkNHAtNywKKyAgICAweDEuZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAtMHgxLjcyYzcwMDAyN2Y3NmIxNTBlNTMwYTEyMzYwZDE1NjZhcC03LAorICAgIDB4MS5mYzAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAtMHgxLjAwMDAwMDJlMmE4ZWUxNmM0ZDcwYmRmNzk5YmVkMWE1cDMsCisgICAgMHgxLmZmZmZmZXAtOQorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIC0weDEucDMsCisgICAgMHgxLnAtOAorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEuZmZmZmZmNDc1NWM1OGY0ZTIyNDI2ODBiZjg0MTQyMzdwMiwKKyAgICAweDEuMDAwMDAycC04CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgLTB4MS43MjBmMGVjZGU2ODA1MGE0NGM5YTJlYjMwMDAyZWIwMnAtOCwKKyAgICAweDEuZmRmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS43MjBkOWMwNmE4MzVlYTZlZjE4Zjk3N2U1ZDhhMzdhYnAtOCwKKyAgICAweDEuZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAtMHgxLjcyMGMyOTNmNmI1ZmJmYjI5ZmQ2Y2IyOTQ0N2U2OTU3cC04LAorICAgIDB4MS5mZTAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAtMHgxLjIwMDAwMDJlMmE4ZWUxNmM0ZDcwYmRmNzk5YmVkMWE1cDMsCisgICAgMHgxLmZmZmZmZXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAtMHgxLjIwcDMsCisgICAgMHgxLnAtOQorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIC0weDEuMWZmZmZmYTNhYWUyYzdhNzExMjEzNDA1ZmMyMGExMWJwMywKKyAgICAweDEuMDAwMDAycC05CisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgLTB4MS43MWIzY2U1ZGUxOTJlYWUzZTgyMjU4NjI0OWVmMTAzMXAtOSwKKyAgICAweDEuZmVmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgLTB4MS43MWIwZWE0MmU1ZmRhMjYxZGJiZDFhNDk4ZjUzMzM5OHAtOSwKKyAgICAweDEuZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAtMHgxLjcxYWUwNjI3ZWQ0ZGU3YTBkMjVhZmZjOTVhMzE1MTE4cC05LAorICAgIDB4MS5mZjAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAtMHgxLjQwMDAwMDJlMmE4ZWUxNmM0ZDcwYmRmNzk5YmVkMWE1cDMsCisgICAgMHgxLmZmZmZmZXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAtMHgxLjQwcDMsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAtMHgxLjNmZmZmZmEzYWFlMmM3YTcxMTIxMzQwNWZjMjBhMTFicDMsCisgICAgMHgxLjAwMDAwMnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAtMHgxLjcxODg2ZjU4NDNhZGUwNDdiZDJkMDcyZTk2NDg0YTYxcC0xMCwKKyAgICAweDEuZmY3ZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgLTB4MS43MTgyYTg5NGI2OWM1OTVmNzkyMGNlYTE2MTljNmU1N3AtMTAsCisgICAgMHgxLmZmODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAtMHgxLjcxN2NlMWQxMmY1MzA4MGVjODY1ODdjMWVkNzYwMjlicC0xMCwKKyAgICAweDEuZmY4MDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgLTB4MS5hMDAwMDAyZTJhOGVlMTZjNGQ3MGJkZjc5OWJlZDFhNXAzLAorICAgIDB4MS5mZmZmZmVwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgLTB4MS5hMHAzLAorICAgIDB4MS5wLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgLTB4MS45ZmZmZmZhM2FhZTJjN2E3MTEyMTM0MDVmYzIwYTExYnAzLAorICAgIDB4MS4wMDAwMDJwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgLTB4MS43MTg4NjdjMzlhYWM1ZWUzNzY4NTM5NGZlOWJmZDc0OXAtMTMsCisgICAgMHgxLmZmZWZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIC0weDEuNzE1YTNiYzM1OTNkNGQ0YTJhMjM5NzQ1ZjY0Mjc0MjBwLTEzLAorICAgIDB4MS5mZmYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgLTB4MS43MTJjMGZjMzQ1ZmJhZDQ2YzJjOWYzODg0ZGY3MjMzZXAtMTMsCisgICAgMHgxLmZmZjAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuZmZmZmZmZmEzYWFlMjNkMjc2NTFlODQxMGNjODI1Y2JwNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS5mZmZmZmZmNDc1NWM0MWRmOWFiZWZhZmQ5MzQyMGQ4OHA2LAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLmE2Yzg3M2Y1ZmI5M2QyNzExNDE4Yzc2OWNjZjQ4MThhcDAsCisgICAgMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLjRkOTBlN2ViZjcyN2E0ZTIyODMxOGVkMzk5ZTkwMzE1cC0xLAorICAgIDB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS43MTU0NzRlMTYzYmI3YjJmZTgwZjdkN2I5MWYxODUxY3AtMjMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgMC4wLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIC0weDEuNzE1NDc3MGI2MjZiODVlZmJjY2RmNjhkMmU5Nzg5ZjlwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAtMHgxLjY0ZGUzMDI4MTFiMGI2M2JhZjljZTI1OGNjMmRmOWQ1cC0yLAorICAgIDB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAtMHgxLmY3ZmZmZmY0NzU1YzU4ZjRlMjI0MjY4MGJmODQxNDIzcDYsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgLTB4MS5mOHA2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIC0weDEuZjgwMDAwMGI4YWEzYmUyMDY1NDEwNTAyNmNiZGYyNzdwNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAtMHgxLmY4MDAwMDE3MTU0NzkzNTYxMjQzOGFhNmFmNmI1NDk1cDYsCisgICAgMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgLTB4MS4yOHA3LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIC0weDEuMmFwNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLmY0cDYsCisgICAgMHgxLnAxMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAtMHgxLmZjcDYsCisgICAgMHgxLnAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLnAwLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS5wMSwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wLTEKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9sb2dfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL2xvZ19pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTVhZTYwZQotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9sb2dfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTY1NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGRvdWJsZSwgZG91YmxlPiBnX2xvZ19pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIDB4MS5kNzdmZDEzZDI3ZmZlZmZmZmZmZmZmZmZiNWVkOTg0M3AtMTEsCisgICAgMHgxLjAwM2FmNmMzN2MxZDNwMAorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuNDExZWZkMjk3Yzc4MDgwMDAwMDAwMDAwMTZkNjE1YjJwLTYsCisgICAgMHgxLjA1MTEyNzkyOTM0YjNwMAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAweDEuZDQ4NDA2NjQ0NDZmYjgwMDAwMDAwMDAwMWY1NzRmZmNwLTYsCisgICAgMHgxLjA3NmQxZDhjNzVlYTZwMAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuZjZlNGMzY2VkN2M3MWZmZmZmZmZmZmZmZmVlOTQ3ZGFwLTMsCisgICAgMHgxLjQ3NDA4Y2I5NTgzY2VwMAorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEuMWEwNDA4NzEyZTAwOWZmZmZmZmZmZmZmZmVlNDYwMTJwLTIsCisgICAgMHgxLjUxMmIzMTI2NDU0ZjNwMAorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuOGI1MmMxNWVhOWMyMzdmZmZmZmZmZmZmZmU2MTM5NWNwLTIsCisgICAgMHgxLjc4OWU5NWIxMTU3OGNwMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuZDcwNzAyOWJiNTlkOGZmZmZmZmZmZmZmZmVjZjZlZjZwLTIsCisgICAgMHgxLjk1ODQ5N2Y3YjM1M2ZwMAorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuMDcyN2FmNWZlZThmNWZmZmZmZmZmZmZmZmVjNzAyMWZwLTEsCisgICAgMHgxLmFjMDMyYThkMmVjMjNwMAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEuMTJmY2NlMDJlZmIzMjAwMDAwMDAwMDAwMDE0MzViOTBwLTEsCisgICAgMHgxLmI2MDRlMTk0MjA5OGRwMAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuMTc4ZTZkM2VjYWNlOTgwMDAwMDAwMDAwMDEzMDBhY2NwLTEsCisgICAgMHgxLmI5ZjFmYTQ1ODc5NjdwMAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLjYyZjcxYzQ2NTZiNjBmZmZmZmZmZmZmZmZmN2YxNjhlcC0xLAorICAgIDB4MS4wMDA5NzY1ODFjZTRlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5kNjMzNmE4ODA3N2E5ZmZmZmZmZmZmZmZmZmUxZjgxN3AwLAorICAgIDB4MS45MWE4ZGZmNTQwZmY3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS4wMTZlODJjZWRhMzU4ZmZmZmZmZmZmZmZmZmFjYmY2MnAxLAorICAgIDB4MS5kZTM3ZmIzMWZkNWZjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS4xZTEyNmY1ZDk1ZjM4ODAwMDAwMDAwMDAwMDVkMzc2MXAxLAorICAgIDB4MS4yYjExOTllNDk3NzM5cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS4yZjM4MzJjYWQzZDVmMDAwMDAwMDAwMDAwMDc4ODAxY3AxLAorICAgIDB4MS41NWYwZWFhMWIyZmM4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS40MmVlM2M3ZGM0OTQ2MDAwMDAwMDAwMDAwMDRlYTU3ZnAxLAorICAgIDB4MS44ZWRlNDkyZDk2MDcycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS42YjVkZjdlM2NkNDIxODAwMDAwMDAwMDAwMDQ0NjEzYnAxLAorICAgIDB4MS4xMTg2NzYzN2NiZDAzcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS43ZTdmMDk1NzAzZWVlN2ZmZmZmZmZmZmZmZmFjZGMwNnAxLAorICAgIDB4MS4zZDlkN2Q1OTdhOWRkcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS45Njg3YzgzZmFmMDA2N2ZmZmZmZmZmZmZmZmI5Y2YzZnAxLAorICAgIDB4MS43ZjM4MjU3NzhhYWFmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS44M2Q0YmNkZWJiM2YzZmZmZmZmZmZmZmZmZmZmYWNjOXAyLAorICAgIDB4MS5hYzUwYjQwOWM4YWVlcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMGFhYWFhYXAtNTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjc2ZTdlNWQ3YjZlYWJmZmZmZmZmZmZmZmZmZjA2ZjgwcDMsCisgICAgMHgxLmRlN2NkNjc1MTAyOWFwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMGFhYWFhYXAtNTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgLTB4MS45MTU1MGMzNTdmODgzZmZmODk5ZGZmMzBkMGYzMDNlZXA4LAorICAgIDB4MS4wMDAwMDAwMDAwMDAzcC01NzkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS43ZmZmZmZmZmZmZmZiODAwMDAwMDAwMDAxMWZmZmZmZnAtNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDZwMAorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLmJmZmZmZmZmZmZmZTc4MDAwMDAwMDAwMWM5NTU1NTU1cC00OCwKKyAgICAweDEuMDAwMDAwMDAwMDAxY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuN2ZkZmZmZmZmZjcwMTdmZjAwMDA0N2VlMDE3ZmY1MmNwLTQxLAorICAgIDB4MS4wMDAwMDAwMDAwYmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS4wZmZmZmZmZmVkZjAwMDAwMDE5OTZhYWFhYTgxZTI4YXAtMzUsCisgICAgMHgxLjAwMDAwMDAwMjIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5mZmZmZmZmZjAwMDAwMDAwYWFhYWFhYWEyYWFhYWFhYnAtMzMsCisgICAgMHgxLjAwMDAwMDAxMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuN2ZmZmZmNzAwMDAwNDdmZmZmZDc4MDAwMTg0Y2NjYmRwLTI1LAorICAgIDB4MS4wMDAwMDBjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS4wYTJlYTNlNzdhZjA2MDAwNDAxMGM0ZjZiNDM3ZmI0NXAxLAorICAgIDB4MS4wMDA3MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuOTA0MTIwOTRkMzY3Zjk5ZjNjNjE1MjMxYWQ5OGJmM2RwLTEzLAorICAgIDB4MS4wMDBjODI1NzNmNWY5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5mZmUwMDJhYTZhYjExMDY2NzhhZDhiMzE4Y2IzODU0NXAtMTIsCisgICAgMHgxLjAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEuYmZjZjA3MjQyOTY5ZDE1ZGI0ZDJiM2VmZTFjMDM3ZTBwLTExLAorICAgIDB4MS4wMDM4MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuZDc3ZmQxM2QyN2ZmZWZmZmZmZmZmZmZmYjVlZDk4NDNwLTExLAorICAgIDB4MS4wMDNhZjZjMzdjMWQzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS5lYTA1NGNlODUwOGU0ODc0NDQyZTk1ZTQxNzE4YjBkZXAtMTAsCisgICAgMHgxLjAwN2E5ZWE3YTllODBwMAorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLmZmMDA0YTdhYjkwODNmOWUxNzE3ZDNhNGFhZWM4NjU3cC0xMCwKKyAgICAweDEuMDA3ZmRmZjdmZGZlMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuZmZkYTY1ZDQ0ZGNjYzg4OTExNWE0YTRmZjc1YzVhNzdwLTEwLAorICAgIDB4MS4wMDgwMTY5YTE2Y2Q1cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS5iOTU2OTg5ZDI1ODlkN2ZkNjgzOGU1N2E3MDJmMzhhY3AtOSwKKyAgICAweDEuMDBkZDBhODMxNzE3NnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuZmQwODE2ZDk3MTUyYzdmZWFkN2I4NDlmNzYxNGZiNDhwLTksCisgICAgMHgxLjAwZmYwMmJhOGE1NDNwMAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgLTB4MS4zNzkxNTU1NTc4NWIwN2ZjMTlkZDI2MzIwODhhMWU3ZnA5LAorICAgIDB4MS4wMGZmZmZmZmZmZmZmcC04OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS42NGEyYTliNmE0MDU4ODAxMDEwMjgwNzEzOGRmZjUwY3AwLAorICAgIDB4MS4wMWMwMDAwMDAwMGRjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5kNDY1OTU3MTA2YmQyODZiYWU2N2MwODI5NzE2M2VhM3AtOCwKKyAgICAweDEuMDFkNjEzMWQwOWRjNXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEuZmRmNjM5YmVhNWFkMzc2MmRmMjRhMjA4ZTJhMWNiZThwLTgsCisgICAgMHgxLjAxZmZmMzdhMzQwODRwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLmZkZjZlNGZjZjQ1Njk3NzIwNTIyODUzMGFjZDU3MTU1cC04LAorICAgIDB4MS4wMWZmZjQyNmM4Y2I2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5mZGY2ZTRmZDA0MjZmNzZkNmQ3YjgzOWI1ZjZjOGJhZnAtOCwKKyAgICAweDEuMDFmZmY0MjZjOGRiNXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuZmRmZTljNTdkZWJlMTc2MGZlNGZmMDg5OWJmOWU2ZGNwLTgsCisgICAgMHgxLjAxZmZmYmVkOTIyZTNwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgLTB4MS5kMTdiZTI0NTEyMjlmZmZmMTFlODUxODA0ZTk3Y2RkN3AzLAorICAgIDB4MS4wMjhwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEuNmRjYjJmZWQ3ZjI1ZDNmMjg2NzA3MjMwYmUxOTA3NjBwLTcsCisgICAgMHgxLjAyZGZhZmEwN2RmNmRwMAorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgMHgxLmZmMDkyYTg1ZWUwMmY3ZmU3ZmM1ZGMxZDQxNzE4NGMwcC03LAorICAgIDB4MS4wNDA2MTU0NjFmNmNhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIDB4MS4wYWE1M2NlYTNmMWFiZmZmMWRkZmI1YWY0YWM0OWFhZXAtNiwKKyAgICAweDEuMDQzMzRlZWM1YTY1ZHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEuNmVhMDcwMjFjMTMzNDgwMTc0ODM1ZDE0MmE0YjgzMWVwLTYsCisgICAgMHgxLjA1Y2IwOWJiOWZlZDdwMAorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLjcxOTlmOTg0ZjU2MDgwMDEzNWZmM2FlYzNhMDc5NmE4cC02LAorICAgIDB4MS4wNWQ3MzUxODQyNjFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS43Nzg4YmM5YzA4MzE4ODAxNTQ2YzAzNWNiZDlhMjY5YXAtNiwKKyAgICAweDEuMDVlZjdiZGVlN2JlMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuYzI2ODhlOTUyYTcyMzdmZGQ4NTYzMjk3ZGU2MjVhY2ZwLTYsCisgICAgMHgxLjA3MjJhMDU3MTE3NzhwMAorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmUwMjE1MTM1MjUxMmY3YzIzMGNjNGI4OTVkYzY4ZGQxcC02LAorICAgIDB4MS4wNzljZjAwZmUyNGY5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIC0weDEuM2UxZmVlNjk5YzZiYzdmYzAwMWEzNTllMGVmZTJkYjdwOCwKKyAgICAweDEuMDdjcC00NTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS5mMzFiNTZiOGI2ZjFhMjg2MjU4MmY1MjhiMzNjNGRlMnAtNiwKKyAgICAweDEuMDdlYjI1OWVlMDFiNXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLmQwODE5MDk1ZmNkNmM4MDA5MjRlY2QwMzA4ZWJlMjE4cDMsCisgICAgMHgxLjBhODU1MWY4ZmM3ZjhwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLjAyNjhkNDAwMDBjNzE4MDA1ZGEwMjQ5ZWJiMGEzMDI0cDEsCisgICAgMHgxLjBmZmY4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuNmI1ZGY3ZTNjZDQyMTgwMDAwMDAwMDAwMDA0NDYxM2JwMSwKKyAgICAweDEuMTE4Njc2MzdjYmQwM3A0CisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuNmI5NmNiNjZmNTVjMjgwMDE3MmQ4MWMxY2VmMzU3YjFwMSwKKyAgICAweDEuMTFmZmZmZmZmZmZmOHA0CisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAtMHgxLmY3YTIxM2E3Y2QzODBmZmZkZTQ5OGM0NTNmMTI1NTNkcDAsCisgICAgMHgxLjFlNnAtMworICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS5hMDc2NTg1M2RlYzA2ZmZlZGY0OTAwMmI1ZDMwMDhiZXA4LAorICAgIDB4MS4yMDY2NThkOWIwZjA1cC02MDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS4wZDdiNmZmNmUzYTI0N2ZmZmZmZWZiOTQ0OWZhZjhlNnA2LAorICAgIDB4MS4yNTE0NzM4ZTZkY2FkcDk3CisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEuMWVlMzg5OWY2ODE4ZTdmZmZmZDA5ZTZlYjQ4Nzk3MjVwMSwKKyAgICAweDEuMmNmYmI5ZTRhMTU5OXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAtMHgxLjMzMTUzMzM2NzkyODk3ZmQzOGY0YWY3YWI1YzAwNzY5cDYsCisgICAgMHgxLjJmMDYxNzAzN2U1OTBwLTExMQorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgLTB4MS4wNGMxZTZjZWM5NjM3N2ZlYmUxMTgzZTNiZDM3M2MzZXAzLAorICAgIDB4MS4yZjI5ZmQ0YjQyNTE1cC0xMgorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgLTB4MS4wNTc4YmM0YTE0M2Q2OTk4MDZmOTQ1ZDEzNTZkMDZhMnAtMSwKKyAgICAweDEuMzMzZTFmMDNhZjU1ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5mZDJhMWQ0ZGNmMjNkN2ZlNzVmN2VlZjk0OThmZGFhMnAtMiwKKyAgICAweDEuMzc2N2EwYWFmMTQ1MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgLTB4MS5mYjBjZTBlYzc5YmM5N2ZlOTUxNDFjZTIyN2VkNDdkMnAtMiwKKyAgICAweDEuMzgwYzY0MGU2MjQ2Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5lZTY5M2NhYTUwMWE5M2YzMDA2MmUyYTNjNDQ1YWM5Y3AtMiwKKyAgICAweDEuM2JlYzgzN2Q2MDFjMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgLTB4MS5lZDY3YjliMGYyZjhkNDIwYWRjZGY1MWY0MzI4MTdmYXAtMiwKKyAgICAweDEuM2MzYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS4yNTM5N2RjOWY4NWJkODAwMDAwYTNkNTViZDZkOGU1MHAxLAorICAgIDB4MS4zYzQxOWI5ZGI2NjJhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS45YzA0MWY3ZWQ4ZDMyOWUzMTJhYWQ4NDkzYTNhNzlhMnAwLAorICAgIDB4MS4zZmZmZmZmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS5jOGZmN2M3OWE5YTIxYWMyNWQ4MWVmMmZmYjlhMjRhZXAtMywKKyAgICAweDEuNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuZDQyYWRmZWMzNWQxNDdmZTA0ZmY3YjFiMDI3YzVmZGFwLTMsCisgICAgMHgxLjQxY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAweDEuZDc1Nzc0NzdiOWVhZDdmZTliMmJjNjk2MGE3NjYzMDNwLTMsCisgICAgMHgxLjQyM2ZjMjRkMDRmYzZwMAorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgLTB4MS5kMzYwZTkwYzM4NTBiMzZkNjExMDNmNTc1Yjk5MTg4MHAtMiwKKyAgICAweDEuNDQ2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLmNkZWFiZTAxYTg2YjJkNTBjOGVhM2JiMDMwYzY2YmJjcC0yLAorICAgIDB4MS40NjFjMTU5YTc2ZDRicC0xCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuZmI5MTg2ZDVlM2UyNDRlZTRlMjg1MzE1NjNiNjlhMmNwLTMsCisgICAgMHgxLjQ3ZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLmZiOTE4NmQ1ZTNlMmE4ZDU1NDY2YzM3OTRkMmNhMDkycC0zLAorICAgIDB4MS40ODBwMAorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLmZiOTIwNDY0ZjVmYzc3N2YzY2IwZDg0NDhjMzBlNzAxcC0zLAorICAgIDB4MS40ODAwMTQxYmVhODNmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS5mYjljMjc5MjA0NWU5ZTgyZWZmNDNlZjFjZTBiZWUwMnAtMywKKyAgICAweDEuNDgwMWIzYmY0MmE0YXAwCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuZmM0NjcxOGEyZGMyMmRkYmZhYmIyNTk4YTEzN2JhYTdwLTMsCisgICAgMHgxLjQ4MWNmYWRlOGE2NGRwMAorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgMHgxLmZmOWJkNzg1NWFhZWFiODE1ZmQ4NWQyY2IwNjk0MjMxcC0zLAorICAgIDB4MS40OGE1ZDBjN2FjNWI1cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS5mZmQ2NWYyOWJmZDRlZGY5OGVjODQ5YzkwMDMyZjMwMnAtMywKKyAgICAweDEuNDhhZjM1NjA4MWNhMXAwCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAweDEuZTczN2NiMjM4NjVjNmI5MjE1NTJhZDgxZDU3MmI3MjlwLTEsCisgICAgMHgxLjRiOHAxCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuOTBlZDUyZDFhMjNjNGZmZWQ4ZWU3NzI1YzUzMDM1ZDZwOCwKKyAgICAweDEuNTU2ZWU2MTFmYTMwOXA1NzgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIC0weDEuYjI1YjhkODYzYjNiNDgwMGZjZWM0ZWI1YzE0YTdjMmVwMywKKyAgICAweDEuNTVlcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLjE2NzU4YTkzZDI5YWY3ZmYxMDBhMGMxMDdmYjBjOWU3cDYsCisgICAgMHgxLjU5OTY2NTk5NjY1OThwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLjdlM2E5M2JmMzU0MGQ4MWUzZGJiYjU3NTg1ZWMxNjc0cC0yLAorICAgIDB4MS42MDgwNTRkZTc0NTgycC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuNTgzYTQxN2JlMjIxNmNiOTM2NjEwY2E5ODQzNTExZGJwLTIsCisgICAgMHgxLjY2NDliYjUxNTM1NGZwMAorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgLTB4MS40ZjdkYWMzZjFkN2YzZmZmZmZkZjUyMWNjZmM5ZGJjZHA1LAorICAgIDB4MS42OWIxMDkzNzdmN3AtNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS42MmU0MmZlZmEzODM3MzRhNzY5YmI0MTI1ODMxOWMxYXAtMiwKKyAgICAweDEuNmEwOWU2NjdmM2IzMXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAtMHgxLmU3YTJkZDAxNmRhYTg3ZmZhNzk1MjhlODliNjEwYzBhcDEsCisgICAgMHgxLjZiMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjczOWQ3ZjZiYmQwMDY5Y2UyNGM1M2ZhZDNlZjc5NmFicC0yLAorICAgIDB4MS43cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIC0weDEuNGMzYWY0Nzk3MjA2MjgwMDEzYzRkNDVhZjY5NmQ3Y2JwLTIsCisgICAgMHgxLjcyMjNjZWY3OGUyNWRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIC0weDEuNDhlNjVmZTJjMjMwNTdmZGViMjVjN2Y3YzQ4NTllOWNwLTIsCisgICAgMHgxLjczNTg3Y2U3NTM2ODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIC0weDEuNDA1N2IwMmJmZGQwOTdmZTU3Mzc5ODg4NzQwZDgxMDNwLTIsCisgICAgMHgxLjc2NzY0MDg3Mzk1ZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuNGE1ZjEyZWQ0MDdhNDAwMDgzNjQ1ZWZjYzY1OGVkYTZwOCwKKyAgICAweDEuOGFkOTM0YjgzOGJkYXA0NzYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAtMHgxLjgzZDBmOTA2OTBkMGY3ZmYyMDdiMWYwMDdmN2EzOTE3cDEsCisgICAgMHgxLjhiZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIC0weDEuZTM4NzU0NTczNTkzMTQwMGVkYjQ3ZWU0MjY1ZDcyOGVwLTEsCisgICAgMHgxLjhlNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuZmNjNTllMDEzNjk3NjgyNDNlY2E1OTllNTllNmE5MDlwLTMsCisgICAgMHgxLjhmNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIC0weDEuZWRkNjE0OWIzMzE1NjgyODc1MGJiM2E2MDhjNGRkYzFwLTMsCisgICAgMHgxLjkyNGM1N2Q2MjkwODJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEuY2ZiZTYxNjRhNzNmMTM2MTYwNDkyNmEwYTkwZjUxOWZwLTIsCisgICAgMHgxLjkyYTRjYjc5ODY2NGJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIC0weDEuYjQyODIxNmE1YzE1ODdmZGJmMmY5N2Q0YzI3MTQ4Y2NwNCwKKyAgICAweDEuOTgwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIC0weDEuZDA4MWYwZjI1ZDY2MzgwMDI3ZDU5YjZlYmRiOWJhYzlwLTMsCisgICAgMHgxLjk4MTlkMDI1NWJlNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMHgxLmNjMGQ2YTkyYjc5MTU3ZmU4MmJmYWQwYWRkZDA4NWE1cC0xLAorICAgIDB4MS5hMGVmODgzYmUyMTc3cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgLTB4MS44ZjYyZTJjYjY1ODYzODAwMDAzMGViMWEyODlmNzhlM3AtMywKKyAgICAweDEuYTU0OTMzNjMxMGU2ZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIC0weDEuMzY1MWQwZGUyMzY4ZDdmZWUzZDFkNmVlMmIyMjc3NDRwLTMsCisgICAgMHgxLmI4MDMwMGMwMzAxMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuMjBmMjVlNjg2ZTdmOTdmZWNlZmY5YTcyOTlmY2QxZWRwLTEsCisgICAgMHgxLmMyMjAyNGRjODI4OWNwMAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIC0weDEuOWUzMjdlYjZhYzJjMzdmN2EzOWFmMmM5ODhhYmUyYjZwLTEsCisgICAgMHgxLmM4MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIC0weDEuYjc2ZjNkMGFhZjBjOTdmYWRlZmI0ZjUzMzJkMzY1YTlwLTQsCisgICAgMHgxLmNiZWEyMmM4YTlhMTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAtMHgxLjkzMzVlNWQ1OTQ5OTE4MWZhMGYzMTJhOTg1NGQzMDQycC00LAorICAgIDB4MS5jZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMHgxLmI2Y2MyYjA1YzkwYTc3ZmU5YTBiYjMwMTlkOGE5YWVkcDIsCisgICAgMHgxLmRhZTE4OTRhMmRiZWRwOQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIC0weDEuZmM3MDJiOGQ5NmQwZDdkNDc5NGZkNTZjOWJlYzJjZTJwLTUsCisgICAgMHgxLmUxMzA0YzEzMDRjMTNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAtMHgxLmY2YzdmN2QwYjAzNTU3ZDFjMjY5MGZjMjE0YjNlZjQzcC01LAorICAgIDB4MS5lMTg1NjQ2YmM3ODU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgLTB4MS5lYjhkY2I3NjRlMDdlN2Q0ZjBlZjM2YzZlZTg4ZWFjYXAtNSwKKyAgICAweDEuZTIyZTczNDlmNmU5N3AtMQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIC0weDEuZDk0YTljMzIzZTc3YzdmZDQzZTJlMTNmNTQxMTQxY2JwLTUsCisgICAgMHgxLmUzNDFmMDU5MmMyYWJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAtMHgxLmNjYjEwNjA4NTM5NGY3YTA1ZTAzZGY4YWMyM2VhZTVkcC01LAorICAgIDB4MS5lNDAwNWRmZDY2YzMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgLTB4MS5hOWJkOGFmYzZkODRiN2VjN2JiYzgwY2M2ZjI5ODNmOHAtNSwKKyAgICAweDEuZTYxMjIyMjQxY2E3ZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIC0weDEuNzg3MzkyYTQ1ODg4ZDgwMDZiYjUzOGM3MjRjNDVmN2VwLTUsCisgICAgMHgxLmU5MDExMzNlMTYxZTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLjc5YTYzNGNkZmIyNTU4MDAwMDg2MDdiMGMyYzAxNTcwcDQsCisgICAgMHgxLmVkZGMwODIxYzc2YzFwLTM1CisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLjUxNzIxNTNkNWZlOWI3ZmYwZjI2YTg3YzA4NWI4N2Q3cC0xLAorICAgIDB4MS5lZWQ5MjA4YTZhMzQ5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAtMHgxLjEyYjIyNzI0NGZmOTc3ZDg3OGUxMTY2YzI5Zjc2YWE1cC01LAorICAgIDB4MS5lZjFkYmNlYTE5NWNkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgLTB4MS5mOGEzNGQyNTA1ZjgxN2Q4NDhmNGU4OTU5NzEzZmI3NnAtNiwKKyAgICAweDEuZjA3ODZmYTQ4YmQ5Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS4wNjg4NWQwM2MxOWMzODAwMDAwMmY5OTIwNWE2MGI1NHAxLAorICAgIDB4MS5mMWE5NDVhNDU3ZDk2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuYTI4Y2NjYjljNmYwZDdmZWRkODllOWM0ZDRiOWY2OGJwNiwKKyAgICAweDEuZjFmZmZmZmZmZmZmZnAxNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAtMHgxLmIwMzJkYTA5NTY3MWU3YzhkNDI3ZWI0MjI5Mjc2NGQycC02LAorICAgIDB4MS5mMmFiOWRlZTg0MWI1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgLTB4MS45ZDY2YWRhNjkwNTY0ODUzMjYxOTRlM2YxYzdiMTcwY3AtNiwKKyAgICAweDEuZjMzZTJhOTQ0YWM5NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0weDEuODhlN2E2YmYxYjViOTdmZGJmNGRkNWUwNTQ2N2MyNWRwLTYsCisgICAgMHgxLmYzZGUyNjgzOTRlOGRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAtMHgxLjg0ZTM2MmFkMjE3MDE3ZmU3ZWU2YzVlOTU4MGFhMWRkcC02LAorICAgIDB4MS5mM2ZkODZiMzkyODg0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS43NDRlZmY2ZDc3ZGRlN2QyYTE3OTY2OWUyMjU2OTllM3AtNiwKKyAgICAweDEuZjQ3ZjFlMWY1M2YyNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIC0weDEuNjhiNGY4NjQ5N2EwYTdmZTI0YzVmYmE3OGJmMTdhODhwMCwKKyAgICAweDEuZjQ4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS42ZjUxZTY4ZmNkN2NkN2ZhMWU2YWNkOWY0Yjk3OTM0MXAtNiwKKyAgICAweDEuZjRhNjIyZGY3NjBjOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIC0weDEuNmJhYjRmOTNhMzcyMDdkMjM3NjU5M2UxMmU4OTBkODBwLTYsCisgICAgMHgxLmY0YzJiMmE1YTVjMWRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLjY1YWU0ZGVlZGE3Yjc3ZmU5YzVkYWMyYzBjMGRlZGY0cC02LAorICAgIDB4MS5mNGYxOGZhYjVjM2I4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgLTB4MS40YzJhNjRjYjIyNDQxZmU3NGUyZjg2ODkzNGU5ZTQ5MXAtNiwKKyAgICAweDEuZjViOTZlNWI5NmViN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuNDNhZTZjNDRiOWY3NjdmMzRlYmY4YTJjYzM3NDRjOTRwLTYsCisgICAgMHgxLmY1ZmJmNWNlZGM0ODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAtMHgxLjQxZjc4MTIzMTBjOWIwMDE1Y2EzOTc4Y2FlYTJhZjQ5cC02LAorICAgIDB4MS5mNjA5NjhhNTk1MmQ5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS4zYjBjYjBiMTQ2OWRiODAwYjIwYWExMTY5ODhjYjZmMnAtNiwKKyAgICAweDEuZjYzZmFlNmJhZTMyMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEuMzExZTY3NTc1YjRmNTAwNjk5NGRmMzE1OGM3MzE2Y2NwLTYsCisgICAgMHgxLmY2OGRhMzY4ZGEzNjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLjAyMGRhNzAzZjJmOWQ3ZDg4YzIzNjFmOTMxMmM4MzgycC02LAorICAgIDB4MS5mN2ZmYmVmYzVkOWQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgLTB4MS4wMjA1NjU4OTM1Yjk0N2VjNTg3NDUzMDQ2ODE0NWFlN3AtNiwKKyAgICAweDEuZjdmZmZmZmZmZmZlNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuYWU4MjVmZTJlYjY3MDdmOTZhNmU0YzFkZDUzNWY5Y2NwLTcsCisgICAgMHgxLmY5NTEzOWM1NjExMzlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLjIzODUxYzgwZGRkZjI3ZmI4NDdjZGQyMzdkYjMyZTg2cC03LAorICAgIDB4MS5mYjc3MTc3ZmI1ZDM1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS43YzQ5OGViODdlZDY4N2Y1YWI2ZDAwZTM5OTQ2ZDNiZnAtOCwKKyAgICAweDEuZmQwOWEwYjViMTdmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIC0weDEuNTBkZDQxYWViNDg2NTcwMGM2OGY1ZGY0YTg0MzhlMGRwLTgsCisgICAgMHgxLmZkNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0weDEuMDhiOGJiYTVkYjNhODViNGUyNTJlZDEwMDNlMzQ4MWZwLTgsCisgICAgMHgxLmZkZWY5ZmU3ZjlmZTNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMHgxLjA3Yzk4OWFkZDlmNTg1ZTY1Yzc4ZmU5MTJjMWE4Y3AtOCwKKyAgICAweDEuZmRmMTdjNWYxN2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLjAwODA1NTk1OGUxMGI1NDJmNjQwYTk0ZWQ0NWY5YmMwcC04LAorICAgIDB4MS5mZGZmZmZmZmZmZjU1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgLTB4MS4xZjNlNDcxNzhmOTdjNzUzMzRhNjJhMmY3YWE2NmJjNXAtOSwKKyAgICAweDEuZmVlMTEyM2QwNWMxYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuZmY3ZmFhOWFiMTM2Nzc4YTc0M2JhYTRmNTI4MDNjNGVwLTEwLAorICAgIDB4MS5mZjAwN2ZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTB4MS5mZjM5ZWNiZTI2NzU5Nzc4ZjhiYmY2N2YxZTRhN2UwYXAtMTAsCisgICAgMHgxLmZmMDBhMmNkODhiNTVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLjYzNjM0Nzc2OThkMjU3ZmMxNzUyMmI1MGZmNTU1NTNjcDAsCisgICAgMHgxLmZmMDIwZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAtMHgxLmY3YTI0OGJmMjJmYTk3ZmFjYWRiOTQ2NjMwZTM5NjdjcC0xMCwKKyAgICAweDEuZmYwNDZjYmU2Y2JkZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEuZGFlNjBmZWU5ZmE5ZjdlMzQxZmU5MDU5Y2NmNjA5NzRwLTEwLAorICAgIDB4MS5mZjEyYzNmZjEyYzMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgLTB4MS5kMjA4YmM4NTg3Nzc2NzkxYzM4YTc2YTY3NWMxZWE0NXAtMTAsCisgICAgMHgxLmZmMTczMDlmZWZjZDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMHgxLmJhYmZmMjYzZWFiZjg3YWMyMTZlYWQ2NTU3NGFjZjAxcC0xMiwKKyAgICAweDEuZmZjOGFhZmY1MzRkNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIC0weDEuYzAwYzQwNzI1YjA2MTdkZTE3ZDdiNzRlNDkwOTFkNzRwLTEzLAorICAgIDB4MS5mZmUzZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS43OGJmYTUwMDQxNTMxNzNmMmY1MjI2Y2QyMzk0ODUxOHAtMTMsCisgICAgMHgxLmZmZTg3NDkwNGFiZDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMHgxLjExNDhkZmY5NTdlN2M3NDU2NDIyOWU5Y2I5YzRiODNjcC0xMywKKyAgICAweDEuZmZlZWViYmFlZWJiOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuNGFhMTk2YWFlMWVmOTdmZjE3MzA4OTc3OTllZTRmMDJwOCwKKyAgICAweDEuZmZmZmZiYmZmZmZmZnAtNDc4CisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLjhlOGY0M2QzODA0MGZmZmVkYTczMmM4ZDE2NGMxZWI1cDgsCisgICAgMHgxLmZmZmZmYmJmZmZmZmZwNTc0CisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS4wMDAwMDQwMTAwMDAwODAxNTU2NTY1NTc1NTk1NzU1OHAtMzEsCisgICAgMHgxLmZmZmZmZmZiZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtMHgxLmZmODA0MDAwN2ZjMDI3ZjgyYzhhYzJhMjEyZWY4ZTBlcC0zNCwKKyAgICAweDEuZmZmZmZmZmYwMDNmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIDB4MS44NmVmNWNjZGZhMWIxN2ZlNzhjODg2YTlkOGIyZmFhZXA3LAorICAgIDB4MS5mZmZmZmZmZmRkZmZmcDI4MQorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIC0weDEuMDAwODAwMDAwMDgwMDgwMDIwMDA1NTVkNTU5NTU2NDBwLTQwLAorICAgIDB4MS5mZmZmZmZmZmZkZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS4wMDIwMDAwMDAwMjAwODAwODAwMDA1NTc1NTk1NTgwMXAtNDIsCisgICAgMHgxLmZmZmZmZmZmZmY3ZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLjAwNDAwMDAwMDAxMDA4MDEwMDAwMDE1NjU1OTU1YWFhcC00MywKKyAgICAweDEuZmZmZmZmZmZmZmJmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIDB4MS4zMGZjMTkzMWYwOWM5N2ZmNDJmZjVjYWQ0Njc4OTdmZHA3LAorICAgIDB4MS5mZmZmZmZmZmZmZmVlcDIxOQorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIC0weDEuMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDE1NTU1NTVwLTUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDU1NTU1NXAtNTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLjAzZmU1NWEwNjFjNzU3ZmVkNmExZGEzMTdkYTUwYjFhcC0xLAorICAgIDB4MS4zNDIxODU3OThmNmQ2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS42MmU0MmZlZmEzOWYwY2U0ZTBkNTA3ODU3ODg5MjcyMXAtMiwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIC0weDEuZGEzOTFjOTA0M2EwZjE2YWJlMDU2ZTM4NGJmMDdmMjlwLTMsCisgICAgMHgxLjk2MmI1Zjk0MzhkMjVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLjA2ZmJlYzUyMDgyYmQyNTNlMjAyMTBiNTg4NjhlNTIxcC0zLAorICAgIDB4MS5jMjRjZDhjMDdkZTdlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgLTB4MS4xZTBhOGY2NzBjNTBhZDE3MmIyNjA4ZTRhNzhiNWU2MHAtNSwKKyAgICAweDEuZWU2ZTUxZWNjMmZkN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIDB4MS45ZTU0OGU3ZTNkZGU3YjBmMzQzODVmMDc1ZTg1MDEwNnAtNSwKKyAgICAweDEuMGQ0N2U1OGM4NDA5OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLjA4ZTBiYWU3M2FjMjM4ZDVkMGQxZmQ5YTA0NTc5NjMwcC0zLAorICAgIDB4MS4yMzU4YTIyMmE2OTQ0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEuOWU2NDYyMTg3YzM2YThkZGVlZDg5OWM0ZTM1OTY4OTZwLTMsCisgICAgMHgxLjM5Njk1ZWI4YzkxZjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS4xNGRkNmIwYWY5MzlhYzlmZDFjZjhkOGEzYTYzMGEwN3AtMiwKKyAgICAweDEuNGY3YTFiNGVlYmE5Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjU2MTgxZjE5ZDcxOTgwMzVjZjdjNWRmMDJkMTY2MDI2cC0yLAorICAgIDB4MS42NThhZDdlNTBlMzQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuOTM2YTgyZmFkY2Q4NWE3NjhhMTY1NWE4MDdhNWM1ZmRwLTIsCisgICAgMHgxLjdiOWI5NDdiMzBiZjRwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIDB4MS5jZDQ1YjBhOWYyNTAyMWU0YzZhYjg3NmU1NDFkZWZjOXAtMiwKKyAgICAweDEuOTFhYzUxMTE1MzRhMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLjAyMDQ0YzliNzA2MjczNTBmNWM2MTNiYTNlZmY3ZjE0cC0xLAorICAgIDB4MS5hN2JkMGRhNzc1ZDRjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAweDEuMWMwMWRhZDU5ZTcyZmEwNDdiNjFhYzI2YzUxZjRjMTdwLTEsCisgICAgMHgxLmJkY2RjYTNkOTg1ZjhwMAorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS4zNGJkZTliODIxZmUzMTEzNmU2NzQ1M2RmZWNmOWUzNHAtMSwKKyAgICAweDEuZDNkZTg2ZDNiYWVhNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLjRjNTYxZGJiYjIxZDlhOGZhYWI0NGY2Nzc3ZjkyOWY3cC0xLAorICAgIDB4MS5lOWVmNDM2OWRkNzUwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuNjJlNDJmZWZhMzllYjM1NzkzYzc2NzMwMDNlNWVkNWVwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuNjJlNDJmZWZhMzlmMGNlNGUwZDUwNzg1Nzg4OTI3MjFwLTIsCisgICAgMHgxLjZhMDllNjY3ZjNiY2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMHgxLjI0Y2ZjZTZmODBkOWI1N2JmNzExZThjN2JhMjFkZWY5cC0yLAorICAgIDB4MS44MGFhODRjZTcyZjg5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5kNDkwMjQ2ZGVmYTZjMjQwNzA0MjExNTdjOGJkYmFjNHAtMywKKyAgICAweDEuOTc0YjIzMzRmMjM0NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEuNjVkNTU4ZDRjZTAwYTQxODg3OTNmNzQ1MmE0MWM5ZDNwLTMsCisgICAgMHgxLmFkZWJjMTliNzE3MDNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMHgxLmY5OTFjNmNiM2IzNzZkM2UwNWMwNDQ5ZDk5NzhiOWJicC00LAorICAgIDB4MS5jNDhjNjAwMWYwYWMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgLTB4MS4zMWI5OTRkM2E0ZjgwNjQ2MTQ2YTM1NjFlMTY2ODIxM3AtNCwKKyAgICAweDEuZGIyY2ZlNjg2ZmU3ZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuY2NiNzNjZGRkYjJiM2I1Yjg0MWViMTUwYTNkNWUzNGRwLTYsCisgICAgMHgxLmYxY2Q5Y2NlZWYyM2FwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAweDEuMGI5NGY3YzE5NjE3NDg1YmNiNDM3NWIwYjgyZWQ3YWFwLTYsCisgICAgMHgxLjA0MzcxZDlhYjcyZmJwMAorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIDB4MS5lMjcwNzZlMmFmMmQ5MjM0NDAxMmZiNzQ2NGM3ODdjNnAtNSwKKyAgICAweDEuMGY4NzZjY2RmNmNkOXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLjk4NmQzMjI4MTgwYmUwOTI0YWMzYTE5YjcyODcwZTc5cC00LAorICAgIDB4MS4xYWQ3YmMwMTM2NmI3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAweDEuMWM4OThjMTY5OTlmMjkxNWFkNTFhMDA1YjY4ZGRjYzRwLTMsCisgICAgMHgxLjI2MjgwYjM0NzYwOTVwMAorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDB4MS42OWQ0NTkyYTAzNjIxYjJlNmNjY2MyMDM2ZjM5MzFmZnAtMywKKyAgICAweDEuMzE3ODVhNjdiNWE3M3AwCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgMHgxLmI0NGY3N2JjYzhmNTVhODg4NDQ5YmM1M2U5ZDliZjNlcC0zLAorICAgIDB4MS4zY2M4YTk5YWY1NDUxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEuZmMyZDZjZjQ3Y2YwYjJlMGI4OGY0ODgzMjQwMjQwOGNwLTMsCisgICAgMHgxLjQ4MThmOGNlMzRlMmZwMAorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIDB4MS4yMGNkY2QxOTJhYjY1MzBiMjRkNzVhYjQ0NTllM2JjM3AtMiwKKyAgICAweDEuNTM2OTQ4MDE3NDgwZHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLjQyNjE3NGRiZDUxNWQ2NDlkNjk5ODQ4MTZlNjg5NDBkcC0yLAorICAgIDB4MS41ZWI5OTczNGI0MWVicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAweDEuNjJlNDJmZWZhMzllNTIwNjkwNTJjYjczYmY3YzJkNWZwLTIsCisgICAgMHgxLjZhMDllNjY3ZjNiYzlwMAorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIC0weDEuMjY5NjIxMTM0ZGI5Mjc4M2JlYjc2NzZjMGFhOWMyYTNwLTIsCisgICAgMHgxLjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAtMHgxLjg5ZmE0NjVjYjkzYzM5MzAyZDdhNDNiZjhhODM0NWM4cC0zLAorICAgIDB4MS5hNjY2NjY2NjY2NjY2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgLTB4MS5hZjhlODIxMGE0MTY0OGFkMmVmNWE3NWM4MGFlOWIwMnAtNCwKKyAgICAweDEuY2NjY2NjY2NjY2NjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuOWVjZTk1NTMyMWI5MTExOWI2NGIwNDg2MTNkYmMwN2RwLTYsCisgICAgMHgxLmYzMzMzMzMzMzMzMzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuOGZiMDYzZWYyYzdkMTBhYzhjNWNlMzYxZjNhNTlhNzNwLTUsCisgICAgMHgxLjBjY2NjY2NjY2NjY2NwMAorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIDB4MS5lMjcwNzZlMmFmMmQ3YjEwNmY5YzZmZTcwMDAwZjBiOHAtNCwKKyAgICAweDEuMWZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLjc1NjUwMTFlNDk2NmUzOTQ3NDJjZGViODBhYWEwYjg1cC0zLAorICAgIDB4MS4zMzMzMzMzMzMzMzMycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEuZjE4ZGM0MWU4ZWYxNzA4ZGRhYzYxN2U3MmExNmEzNTFwLTMsCisgICAgMHgxLjQ2NjY2NjY2NjY2NjVwMAorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS4zMzRlOWU0N2QwN2VmZDk3ZDEzZmVhMjY1ZGNlYzJkMXAtMiwKKyAgICAweDEuNTk5OTk5OTk5OTk5OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLjZhYWMwNDE0NjE1MWZmMzY0NGYwZGE4NzkzZmU5MTFmcC0yLAorICAgIDB4MS42Y2NjY2NjY2NjY2NicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuOWYzMjNlY2JmOTg0NjlkNjEzODIxMTllYWMzZTg5ZTFwLTIsCisgICAgMHgxLjdmZmZmZmZmZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDAuMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLjg2NjNmNzkzYzQ2Y2M2ZDU2OTliODJjYzNiZDNiZTM4cC00LAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAweDEuNzU2NTAxMWU0OTY3YjhlOWM5ODIzNDBkNjIzODQ0NjlwLTMsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS4wY2E5MzdiZTFiOWRmOGU4NGFiNTJkNGIwYWVmZDAxMnAtMiwKKyAgICAweDEuNGNjY2NjY2NjY2NjZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLjU4OGMyZDkxMzM0OTQzODBlZWJjZWI3NmMxOTI4ZjdjcC0yLAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAweDEuOWYzMjNlY2JmOTg1MTQ4MGJlMmNiYzQ5NTZlOTM0OGJwLTIsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS5lMTQ4YTFhMjcyNmQzOTRkZjhjZGQ2YzgwZDdlYzg2NXAtMiwKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLjBmYWU4MTkxNGE5OTQ3YmQyZGU1MTE4N2E2MzA4ZmRicC0xLAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAweDEuMmNmMjVmYWQ4ZjFjNzE1ZTVmYWZjZWI2M2JmNjA3MDdwLTEsCisgICAgMHgxLmNjY2NjY2NjY2NjZDBwMAorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS40OGExMTI5M2Q3ODVmODZhN2IxNzdmNGFhNGU5Y2FkYnAtMSwKKyAgICAweDEuZTY2NjY2NjY2NjY2YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcC0xLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuMTU0MjQ1NzMzN2Q0MmUxYzZiNzNjODlkODYyYmExNzFwNiwKKyAgICAweDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAweDEuMTVhM2RlNzExY2M1NDk0ZTIwY2UyZjdlMzkzYTk2NjFwNiwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEuMTVmY2Y3ZjNjNmY4ZTFmOGUwNTg4OWI3OGNkY2JkOTRwNiwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuMTY0ZWVlYWFmNWVmY2MxNTUzYmU3ZGNhZDEzNjkxNDFwNiwKKyAgICAweDEuNGNjY2NjY2NjY2NjZXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEuMTY5YWQxYTBjOTA3Nzc1ZmVjNjI4NTg4ZmNlZDM0MDFwNiwKKyAgICAweDEuNjY2NjY2NjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEuMTZlMTc3YjIwM2NkYjMzMGVjMzFmNTU5Y2Y4MjhhYTZwNiwKKyAgICAweDEuODAwMDAwMDAwMDAwMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuMTcyMzhlMTRkYTQ2OWI1NWI5NmM5Njc0NGUzOTIwM2FwNiwKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAweDEuMTc2MWEyNzY1YTY5NjBhYmU1Y2Y5MmMwOTU3ODAyOTFwNiwKKyAgICAweDEuYjMzMzMzMzMzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEuMTc5YzJhMzI5MmYyNjZmZjI4MzMyODNhZjJhMzhkN2ZwNiwKKyAgICAweDEuY2NjY2NjY2NjY2NkMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEuMTdkMzg3OTg1ZjgzM2EwZDQwNjlmNzljMWI3NTc1MDdwNiwKKyAgICAweDEuZTY2NjY2NjY2NjY2YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAweDEuMTgwODBkZDMxNzFiNmMwMzFhOWI1NzZiZTYzYjZkNGNwNiwKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEuMTU0MjQ1NzMzN2Q0MmUxYzZiNzNjODlkODYyYmExNzFwNywKKyAgICAweDEuMHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEuMTU3MzExZjIyYTRjYmJiNTQ2MjBmYzBkZGZiMzFiZTlwNywKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAweDEuMTU5ZjllYjM3ZjY2ODgwYWE1ZTYyOTJhODk4NDJmODJwNywKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEuMTVjODlhMGYxNmUxZmQxOGRmOTkyMzM0MmJiMTE5NTlwNywKKyAgICAweDEuNGNjY2NjY2NjY2NjZXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEuMTVlZThiOGEwMDZkZDJiZTJiZWIyNzEzNDE4YzZhYjlwNywKKyAgICAweDEuNjY2NjY2NjY2NjY2OHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuMTYxMWRlOTI5ZGQwZjBhNmFiZDJkZWZiYWFkNzE2MGNwNywKKyAgICAweDEuODAwMDAwMDAwMDAwMnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEuMTYzMmU5YzQwOTBkNjRiOTEyNzAyZjg4ZWEzMjYwZDZwNywKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3AyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuMTY1MWYzZjRjOTFlYzc2NDI4YTFhZGFmMGRkMWQyMDFwNywKKyAgICAweDEuYjMzMzMzMzMzMzMzNnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuMTY2ZjM3ZDJlNTYzNGE4ZGM5ZDM3ODZjM2M2Nzk3NzhwNywKKyAgICAweDEuY2NjY2NjY2NjY2NkMHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEuMTY4YWU2ODVjYmFiYjQxNGQ1ZWVlMDFjZDBkMDhiM2NwNywKKyAgICAweDEuZTY2NjY2NjY2NjY2YXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEuMTZhNTI5YTMyNzc3Y2QwZmMzMDc5MDA0YjYzMzg3NWZwNywKKyAgICAweDEuMHAyMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuNWE5MmQ2ZDAwNWM5MzlhMzg2NTBiYWM0ZTdiNjg5Y2VwOSwKKyAgICAweDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgLTB4MS4wMDAwMDgwMDAwNTU1NTU5NTU1NTg4ODg4YjMzMzM1N3AtMjAsCisgICAgMHgxLmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgLTB4MS4wMDAwMDQwMDAwMTU1NTU1ZDU1NTU4ODg4ODlkZGRkZXAtMjEsCisgICAgMHgxLmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMC4wLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuZmZmZmY4MDAwMDJhYWFhOWFhYWFiMTExMTBlNjY2NjdwLTIyLAorICAgIDB4MS4wMDAwMDgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEuZmZmZmYwMDAwMGFhYWFhMmFhYWIxMTExMGJiYmJjMDRwLTIxLAorICAgIDB4MS4wMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgLTB4MS4wMDAwMDAwMjAwMDAwMDA1NTU1NTU1NjU1NTU1NTU4OHAtMzAsCisgICAgMHgxLmZmZmZmZmY4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIC0weDEuMDAwMDAwMDEwMDAwMDAwMTU1NTU1NTU3NTU1NTU1NThwLTMxLAorICAgIDB4MS5mZmZmZmZmYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAwLjAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS5mZmZmZmZmZTAwMDAwMDAyYWFhYWFhYTZhYWFhYWFiMXAtMzIsCisgICAgMHgxLjAwMDAwMDAyMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLmZmZmZmZmZjMDAwMDAwMGFhYWFhYWE4YWFhYWFhYjExcC0zMSwKKyAgICAweDEuMDAwMDAwMDQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAtMHgxLjAwMDAwMDAwMDA4MDAwMDAwMDAwNTU1NTU1NTU1NTk1cC00MCwKKyAgICAweDEuZmZmZmZmZmZmZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAtMHgxLjAwMDAwMDAwMDA0MDAwMDAwMDAwMTU1NTU1NTU1NTVkcC00MSwKKyAgICAweDEuZmZmZmZmZmZmZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAwLjAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS5mZmZmZmZmZmZmODAwMDAwMDAwMDJhYWFhYWFhYWE5YXAtNDIsCisgICAgMHgxLjAwMDAwMDAwMDA4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuZmZmZmZmZmZmZjAwMDAwMDAwMDBhYWFhYWFhYWFhMmFwLTQxLAorICAgIDB4MS4wMDAwMDAwMDAxMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgLTB4MS4wMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwNTU1NTU1NXAtNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAxNTU1NTU1cC01MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDAuMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAyYWFhYWFhcC01MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLmZmZmZmZmZmZmZmZmMwMDAwMDAwMDAwMDBhYWFhYWFhcC01MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLjYyZTQyZmVmYTM5ZWYzNTM5M2M3NjczMDA3ZTVkZDVlcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIC0weDEuNzQzODU0NDZkNzFjMzYzOTVhN2VhM2I5ZTA0OGE3NzVwOSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIC0weDEuNjJlNDJmZWZhMzlmM2EyNjFkYTIwNWZkMTNjYjUzZGZwLTIsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBjZTRlMGQ1MDc4NTc4ODkyNzIxcC0yLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgLTB4MS42MmU0MmZlZmEzOWVkZmEzYTQwODA5MGRkZjQ2ZmE2MnAtMiwKKyAgICAweDEuNmEwOWU2NjdmM2JjZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIDB4MS42MmU0MmZlZmEzOWVhYzg5MDllY2M4NjJmYzAwODZkZHAtMiwKKyAgICAweDEuNmEwOWU2NjdmM2JjYnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLjYyZTQyZmVmYTM5ZWQ5Y2E0NmI5YzZkYTk3NDJiMzlicC0yLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuNjJlNDJmZWZhMzlmMDcwYjgzODZjNTUyMzA4NGUwNWFwLTIsCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwMAorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIC0weDEuNjJlNDJmZWZhMzlmMDM1NzkzYzc2NzMwMDgyNWVkNWVwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcC0xLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgLTB4MS42MmU0MmZlZmEzOWVkMzU3OTNjNzY3MzAwOGU1ZWQ1ZXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIC0weDEuMjY5NjIxMTM0ZGI5NTIyZTY5NjIxMjE2YjYzN2ZiODZwLTIsCisgICAgMHgxLjdmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAtMHgxLjI2OTYyMTEzNGRiOTI3ODNiZWI3Njc2YzBhYTljMmEzcC0yLAorICAgIDB4MS44cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgLTB4MS4yNjk2MjExMzRkYjhmY2Q5MTQwY2JjYzE2MGUyYTYzMXAtMiwKKyAgICAweDEuODAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIDB4MS45ZjMyM2VjYmY5ODQ5NDgwYmUyY2JjNDk1OTkzZGYzNnAtMiwKKyAgICAweDEuN2ZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLjlmMzIzZWNiZjk4NGJmMmI2OGQ3NjZmNDA1MjIxODE5cC0yLAorICAgIDB4MS44cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuOWYzMjNlY2JmOTg0ZTlkNjEzODIxMTllYWVlOTM0OGJwLTIsCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS41NGUzYzBiMTBhMzY0MzRhYmFjMjc3MTYwMzExY2NiNHAtOSwKKyAgICAweDEuMDBhYWFhYWFhYWFhYXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLjU0ZTNjMGIxMGE1NjJlMDM5NGRiYmI5MzU5ZjQ3N2RkcC05LAorICAgIDB4MS4wMGFhYWFhYWFhYWFicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEuNTRlM2MwYjEwYTc2MThiYzZlZjUwMDBlYjM3ZjI1NjNwLTksCisgICAgMHgxLjAwYWFhYWFhYWFhYWNwMAorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDB4MS42MmU0MmZlZmEzOWVlYjU3OTNjNzY3MzAwN2M1ZWQ1ZXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwMCwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgMHgxLjYyZTQyZmVmYTM5ZjAzNTc5M2M3NjczMDA3NjVlZDVlcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIDB4MS42MmU0MmZlZmEzOWVlMzU3OTNjNzY3MzAwN2E1ZWQ1ZXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcC0xLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEuNjJlNDJmZWZhMzlmMTM1NzkzYzc2NzMwMDZlNWVkNWVwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIC0weDEuMDAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDAxNTU1NTVwLTUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgMC4wLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDBhYWFhYWFwLTUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjAzNTc5M2M3NjczMDA4MjVlZDVlcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAtMSwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIC0weDEuNjJlNDJmZWZhMzllZDM1NzkzYzc2NzMwMDhlNWVkNWVwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZiNTc5M2M3NjczMDA4MDVlZDVlcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDAsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWUzNTc5M2M3NjczMDA4NjVlZDVlcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAtMHgxLjBhMmIyM2YzYmFiNzNhODFhZWQ1OGQ2NDA1ZmM3MjA2cDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAtMHgxLjBhMmIyM2YzYmFiNzM2ODFhZWQ1OGQ2NDA1ZWM3MjA2cDEsCisgICAgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAtMHgxLjBhMmIyM2YzYmFiNzJlODFhZWQ1OGQ2NDA2MmM3MjA2cDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWY3NTc5M2M3NjczMDA3ZjVlZDVlcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDEsCisgICAgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWViNTc5M2M3NjczMDA4MjVlZDVlcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAtMHgxLmJiOWQzYmViOGM4NmI0MmQ3OGI5NDBmYzA5ZWY2OGI2cDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAtMHgxLmJiOWQzYmViOGM4NmIwMmQ3OGI5NDBmYzA5ZGY2OGI2cDEsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAtMHgxLmJiOWQzYmViOGM4NmE4MmQ3OGI5NDBmYzBhMWY2OGI2cDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAtMHgxLjBhMmIyM2YzYmFiNzM4ODFhZWQ1OGQ2NDA1ZjQ3MjA2cDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAtMHgxLjBhMmIyM2YzYmFiNzM2ODFhZWQ1OGQ2NDA1ZWM3MjA2cDIsCisgICAgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAtMHgxLjBhMmIyM2YzYmFiNzMyODFhZWQ1OGQ2NDA2MGM3MjA2cDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAtMHgxLjM2ODdhOWYxYWYyYjE2ZWNhMTRlN2E0YTA2ZjEyZmIycDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAtMHgxLjM2ODdhOWYxYWYyYjE0ZWNhMTRlN2E0YTA2ZTkyZmIycDIsCisgICAgMHgxLjBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAtMHgxLjM2ODdhOWYxYWYyYjEwZWNhMTRlN2E0YTA3MDkyZmIycDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWY1NTc5M2M3NjczMDA3ZWRlZDVlcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDIsCisgICAgMHgxLjBwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVmNTc5M2M3NjczMDA4MDVlZDVlcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAtMHgxLjhmNDBiNWVkOTgxMmQzYzI4NjQwNTQxNjA4ZWFhYjBhcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgLTB4MS44ZjQwYjVlZDk4MTJkMWMyODY0MDU0MTYwOGUyYWIwYXAyLAorICAgIDB4MS4wcC05CisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgLTB4MS44ZjQwYjVlZDk4MTJjZGMyODY0MDU0MTYwOTAyYWIwYXAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC05CisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgLTB4MS5iYjlkM2JlYjhjODZiMjJkNzhiOTQwZmMwOWU3NjhiNnAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIC0weDEuYmI5ZDNiZWI4Yzg2YjAyZDc4Yjk0MGZjMDlkZjY4YjZwMiwKKyAgICAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAtMHgxLmJiOWQzYmViOGM4NmFjMmQ3OGI5NDBmYzA5ZmY2OGI2cDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgLTB4MS4yMDU5NjZmMmI0ZjEyNmI3MjgxMjAzZDcwNjZlZDBkY3AzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIC0weDEuMjA1OTY2ZjJiNGYxMjViNzI4MTIwM2Q3MDY2YWQwZGNwMywKKyAgICAweDEuMHAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAtMHgxLjIwNTk2NmYyYjRmMTIzYjcyODEyMDNkNzA2N2FkMGRjcDMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgLTB4MS4yMDU5NjZmMmI0ZjEyNmI3MjgxMjAzZDcwNjZlZDBkY3AzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIC0weDEuMjA1OTY2ZjJiNGYxMjViNzI4MTIwM2Q3MDY2YWQwZGNwMywKKyAgICAweDEuMHAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAtMHgxLjIwNTk2NmYyYjRmMTIzYjcyODEyMDNkNzA2N2FkMGRjcDMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgLTB4MS4wYTJiMjNmM2JhYjczYTgxYWVkNThkNjQwNWZjNzIwNnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgLTB4MS4wYTJiMjNmM2JhYjczNjgxYWVkNThkNjQwNWVjNzIwNnAxLAorICAgIDB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgLTB4MS4wYTJiMjNmM2JhYjcyZTgxYWVkNThkNjQwNjJjNzIwNnAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzQxCisgICAgLTB4MS4xMTc4ZTgyMjdlNDgwNzA3Y2FmZDQ0NTk3ODViMGU4ZnAtMywKKyAgICAweDEuYmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIC0weDEuMTE3OGU4MjI3ZTQ3YmRlMzM4YjQxZmM3MmRlODFlM2JwLTMsCisgICAgMHgxLmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAtMHgxLjExNzhlODIyN2U0Nzc0YmVhNjZhZmIzNGU2MTFlOWZkcC0zLAorICAgIDB4MS5jMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgLTB4MS42MmU0MmZlZmEzOWVmNzU3OTNjNzY3MzAwN2Y1ZWQ1ZXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzQ1CisgICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAxLAorICAgIDB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgLTB4MS42MmU0MmZlZmEzOWVlYjU3OTNjNzY3MzAwODI1ZWQ1ZXAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzQ3CisgICAgLTB4MS4wODU5OGI1OWUzYTBmMTEyYzg2MjQ3ZDhiZTQxZDQ4N3AtNCwKKyAgICAweDEuZGZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIC0weDEuMDg1OThiNTllM2EwNjg4YTNmZDliZjUwMzM3MmMxMmZwLTQsCisgICAgMHgxLmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAtMHgxLjA4NTk4YjU5ZTM5ZmUwMDFiNzUxMzZjN2FkMzBjMzc2cC00LAorICAgIDB4MS5lMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzUwCisgICAgLTB4MS5iYjlkM2JlYjhjODZiNDJkNzhiOTQwZmMwOWVmNjhiNnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgLTB4MS5iYjlkM2JlYjhjODZiMDJkNzhiOTQwZmMwOWRmNjhiNnAxLAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgLTB4MS5iYjlkM2JlYjhjODZhODJkNzhiOTQwZmMwYTFmNjhiNnAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzUzCisgICAgLTB4MS4wNDE1ZDg5ZTc0NDU0ZjQzODQ0YjdlNTVjZWRkODM3YnAtNSwKKyAgICAweDEuZWZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1NAorICAgIC0weDEuMDQxNWQ4OWU3NDQ0NDcwMTczYzc1ZDRkODg4OWRlMGVwLTUsCisgICAgMHgxLmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAtMHgxLjA0MTVkODllNzQ0MzNlYmY2MzQzM2M0NTRhYmM3YjM5cC01LAorICAgIDB4MS5mMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgLTB4MS4wYTJiMjNmM2JhYjczODgxYWVkNThkNjQwNWY0NzIwNnAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgLTB4MS4wYTJiMjNmM2JhYjczNjgxYWVkNThkNjQwNWVjNzIwNnAyLAorICAgIDB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgLTB4MS4wYTJiMjNmM2JhYjczMjgxYWVkNThkNjQwNjBjNzIwNnAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzU5CisgICAgLTB4MS4wMjA1NjU4OTM1ODY3Y2JmYTVhOTI2M2JkODFkYTRhMHAtNiwKKyAgICAweDEuZjdmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIC0weDEuMDIwNTY1ODkzNTg0NzQ5ZjIzYTEwNWI5YzdiYjlhNmZwLTYsCisgICAgMHgxLmY4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIC0weDEuMDIwNTY1ODkzNTgyNmM3ZWExOThlNTM3YzdkY2EwOGZwLTYsCisgICAgMHgxLmY4MDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAtMHgxLjM2ODdhOWYxYWYyYjE2ZWNhMTRlN2E0YTA2ZjEyZmIycDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAtMHgxLjM2ODdhOWYxYWYyYjE0ZWNhMTRlN2E0YTA2ZTkyZmIycDIsCisgICAgMHgxLjBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAtMHgxLjM2ODdhOWYxYWYyYjEwZWNhMTRlN2E0YTA3MDkyZmIycDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAtMHgxLjAxMDE1NzU4OGRlYjFhOWNlYzliMDNmYmVlNDljNmIwcC03LAorICAgIDB4MS5mYmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgLTB4MS4wMTAxNTc1ODhkZTcxMjhjY2M1YTgyZjlkYTAwZjQ4YnAtNywKKyAgICAweDEuZmMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgLTB4MS4wMTAxNTc1ODhkZTMwYTdjYWMxYTAxZjdlNjM5YTY3MHAtNywKKyAgICAweDEuZmMwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIC0weDEuNjJlNDJmZWZhMzllZjU1NzkzYzc2NzMwMDdlZGVkNWVwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtOQorICB9LAorICB7IC8vIEVudHJ5IDM2OQorICAgIC0weDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwMiwKKyAgICAweDEuMHAtOAorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIC0weDEuNjJlNDJmZWZhMzllZWY1NzkzYzc2NzMwMDgwNWVkNWVwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtOAorICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIC0weDEuMDA4MDU1OTU4OGJiNWZlZGEwZWI0NTk1YzVmYmUyYjFwLTgsCisgICAgMHgxLmZkZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAtMHgxLjAwODA1NTk1ODhiMzU3ZTU5OGUzM2Q4ZDlkYjM3YTI5cC04LAorICAgIDB4MS5mZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzMKKyAgICAtMHgxLjAwODA1NTk1ODhhYjRmZGQ5MGRiMzU4NWI1ZWJkMmExcC04LAorICAgIDB4MS5mZTAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzc0CisgICAgLTB4MS44ZjQwYjVlZDk4MTJkM2MyODY0MDU0MTYwOGVhYWIwYXAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIC0weDEuOGY0MGI1ZWQ5ODEyZDFjMjg2NDA1NDE2MDhlMmFiMGFwMiwKKyAgICAweDEuMHAtOQorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIC0weDEuOGY0MGI1ZWQ5ODEyY2RjMjg2NDA1NDE2MDkwMmFiMGFwMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtOQorICB9LAorICB7IC8vIEVudHJ5IDM3NworICAgIC0weDEuMDA0MDE1NWQ1ODk5ZTY3NDY5MWZlZjQxNDAyZjNlN2JwLTksCisgICAgMHgxLmZlZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzgKKyAgICAtMHgxLjAwNDAxNTVkNTg4OWRlNzA2NzFlZWVjMGJmY2VmZTUzcC05LAorICAgIDB4MS5mZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAtMHgxLjAwNDAxNTVkNTg3OWQ2NmM2NTFkZWU0MGJmZWYxZTZicC05LAorICAgIDB4MS5mZjAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgLTB4MS5iYjlkM2JlYjhjODZiMjJkNzhiOTQwZmMwOWU3NjhiNnAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDM4MQorICAgIC0weDEuYmI5ZDNiZWI4Yzg2YjAyZDc4Yjk0MGZjMDlkZjY4YjZwMiwKKyAgICAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODIKKyAgICAtMHgxLmJiOWQzYmViOGM4NmFjMmQ3OGI5NDBmYzA5ZmY2OGI2cDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgLTB4MS4wMDIwMDU1NjU1YTg5YjM3N2Q1ODAxZmQwOGZkOWYyZHAtMTAsCisgICAgMHgxLmZmN2ZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODQKKyAgICAtMHgxLjAwMjAwNTU2NTU4ODkzMzU3Y2Q3ZTFmNDg2YmQwNzA1cC0xMCwKKyAgICAweDEuZmY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzg1CisgICAgLTB4MS4wMDIwMDU1NjU1Njg4YjMzN2M1N2MxZWQwNGZjOWVlZHAtMTAsCisgICAgMHgxLmZmODAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODYKKyAgICAtMHgxLjIwNTk2NmYyYjRmMTI2YjcyODEyMDNkNzA2NmVkMGRjcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgLTB4MS4yMDU5NjZmMmI0ZjEyNWI3MjgxMjAzZDcwNjZhZDBkY3AzLAorICAgIDB4MS4wcC0xMworICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIC0weDEuMjA1OTY2ZjJiNGYxMjNiNzI4MTIwM2Q3MDY3YWQwZGNwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAtMHgxLjAwMDQwMDE1NTZkNTYwODhkZGUwNzAzZjAzNGNhMDk2cC0xMywKKyAgICAweDEuZmZlZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIC0weDEuMDAwNDAwMTU1NWQ1NTg4ODlkZGU3MDJiMDI4Yzk5OTZwLTEzLAorICAgIDB4MS5mZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTEKKyAgICAtMHgxLjAwMDQwMDE1NTRkNTUwODg1ZGRjNzAxZjAyNGM5ODk2cC0xMywKKyAgICAweDEuZmZmMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5MgorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMzkzCisgICAgMHgxLjYyZTQyZmVmYTM5ZWYzNTM5M2M3NjczMDA3ZTVkZDVlcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIDB4MS42MmU0MmZlZmEzOWVmMzRmOTNjNzY3MzAwN2U1YWQ1ZXA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAweDEuMjUwZDA0OGU3YTFiY2RlZTQ5OWZhNWIwY2ExZGQyNDNwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgMHgxLmNlNmJiMjVhYTEzMTUxMDlmZWVmYzg2MzE4YWI2ZTUycC0yLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDBhYWFhYWFwLTUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTgKKyAgICAwLjAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIC0weDEuMDAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDAxNTU1NTVwLTUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgLTB4MS5lZWI5NWIwOTRjMTkyYjRhNTEzZTBiZjllZTQwZDhkNHAtMywKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIC0weDEuNjIzMmJkZDdhYmNkMjNkNWU3ZmQ4MzdjNmZlMjNhNjdwOSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIC0weDEuNjIzMmJkZDdhYmNkMjNkZGU3ZmQ4MzdjNmZlMWZhNjdwOSwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIC0weDEuNjIzMmJkZDdhYmNkMjNlNWU3ZmQ4MzdjNmZlMjNhNjdwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIC0weDEuNjIzMmJkZDdhYmNkMjNlZGU3ZmQ4MzdjNmZlMmZhNjdwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIC0weDEuNzNkZjliM2FkYjMzNGU3Yzg0OTliMWUwMTQ0NmFkZmFwOSwKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIC0weDEuNzQzODU0NDZkNzFjMzYzOTVhN2VhM2I5ZTA0OGE3NzVwOSwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIC1IVUdFX1ZBTCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDgKKyAgICAtSFVHRV9WQUwsCisgICAgLTAuMAorICB9LAorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9sb2diX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9sb2diX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NjU3MDE0Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL2xvZ2JfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsODk4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZG91YmxlLCBkb3VibGU+IGdfbG9nYl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEuMGM4MHAxMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgLTB4MS4wYzgwcDEwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS45MHA2LAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuOTBwNiwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLjkwcDYsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS45MHA2LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuOTBwNiwKKyAgICAweDEuNjY2NjY2NjY2NjY2OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLjkwcDYsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS45MHA2LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuOTBwNiwKKyAgICAweDEuYjMzMzMzMzMzMzMzNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS45MHA2LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLjkwcDYsCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuOTRwNiwKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS45MHA3LAorICAgIDB4MS4wcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLjkwcDcsCisgICAgMHgxLjE5OTk5OTk5OTk5OWFwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuOTBwNywKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS45MHA3LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLjkwcDcsCisgICAgMHgxLjY2NjY2NjY2NjY2NjhwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuOTBwNywKKyAgICAweDEuODAwMDAwMDAwMDAwMnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS45MHA3LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLjkwcDcsCisgICAgMHgxLmIzMzMzMzMzMzMzMzZwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuOTBwNywKKyAgICAweDEuY2NjY2NjY2NjY2NkMHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS45MHA3LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLjkycDcsCisgICAgMHgxLjBwMjAxCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuZjRwOSwKKyAgICAweDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuZjRwOSwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuZjRwOSwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuZjRwOSwKKyAgICAweDEuNGNjY2NjY2NjY2NjZXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuZjRwOSwKKyAgICAweDEuNjY2NjY2NjY2NjY2OHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuZjRwOSwKKyAgICAweDEuODAwMDAwMDAwMDAwMnAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuZjRwOSwKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3AxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuZjRwOSwKKyAgICAweDEuYjMzMzMzMzMzMzMzNnAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEuZjRwOSwKKyAgICAweDEuY2NjY2NjY2NjY2NkMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZTY2NjY2NjY2NjY2YXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuZjQ4MHA5LAorICAgIDB4MS4wcDEwMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS45NHA2LAorICAgIC0weDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS45MHA2LAorICAgIC0weDEuZTY2NjY2NjY2NjY2NnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS45MHA2LAorICAgIC0weDEuY2NjY2NjY2NjY2NjY3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS45MHA2LAorICAgIC0weDEuYjMzMzMzMzMzMzMzMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS45MHA2LAorICAgIC0weDEuOTk5OTk5OTk5OTk5OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS45MHA2LAorICAgIC0weDEuN2ZmZmZmZmZmZmZmZXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS45MHA2LAorICAgIC0weDEuNjY2NjY2NjY2NjY2NHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS45MHA2LAorICAgIC0weDEuNGNjY2NjY2NjY2NjYXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS45MHA2LAorICAgIC0weDEuMzMzMzMzMzMzMzMzMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS45MHA2LAorICAgIC0weDEuMTk5OTk5OTk5OTk5NnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS45MHA2LAorICAgIC0weDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS45MnA3LAorICAgIC0weDEuMHAyMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS45MHA3LAorICAgIC0weDEuZTY2NjY2NjY2NjY2NnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS45MHA3LAorICAgIC0weDEuY2NjY2NjY2NjY2NjY3AyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS45MHA3LAorICAgIC0weDEuYjMzMzMzMzMzMzMzMnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIDB4MS45MHA3LAorICAgIC0weDEuOTk5OTk5OTk5OTk5OHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS45MHA3LAorICAgIC0weDEuN2ZmZmZmZmZmZmZmZXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS45MHA3LAorICAgIC0weDEuNjY2NjY2NjY2NjY2NHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS45MHA3LAorICAgIC0weDEuNGNjY2NjY2NjY2NjYXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS45MHA3LAorICAgIC0weDEuMzMzMzMzMzMzMzMzMHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIDB4MS45MHA3LAorICAgIC0weDEuMTk5OTk5OTk5OTk5NnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS45MHA3LAorICAgIC0weDEuMHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS5mNDgwcDksCisgICAgLTB4MS4wcDEwMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS5mNHA5LAorICAgIC0weDEuZTY2NjY2NjY2NjY2NnAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuZjRwOSwKKyAgICAtMHgxLmNjY2NjY2NjY2NjY2NwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLmY0cDksCisgICAgLTB4MS5iMzMzMzMzMzMzMzMycDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS5mNHA5LAorICAgIC0weDEuOTk5OTk5OTk5OTk5OHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEuZjRwOSwKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmVwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgMHgxLmY0cDksCisgICAgLTB4MS42NjY2NjY2NjY2NjY0cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS5mNHA5LAorICAgIC0weDEuNGNjY2NjY2NjY2NjYXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEuZjRwOSwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgMHgxLmY0cDksCisgICAgLTB4MS4xOTk5OTk5OTk5OTk2cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS5mNHA5LAorICAgIC0weDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuOTBwNSwKKyAgICAweDEuMHA1MAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLjkwcDUsCisgICAgMHgxLjE5OTk5OTk5OTk5OWFwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS45MHA1LAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuOTBwNSwKKyAgICAweDEuNGNjY2NjY2NjY2NjZXA1MAorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjkwcDUsCisgICAgMHgxLjY2NjY2NjY2NjY2NjhwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS45MHA1LAorICAgIDB4MS44MDAwMDAwMDAwMDAycDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuOTBwNSwKKyAgICAweDEuOTk5OTk5OTk5OTk5Y3A1MAorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgMHgxLjkwcDUsCisgICAgMHgxLmIzMzMzMzMzMzMzMzZwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS45MHA1LAorICAgIDB4MS5jY2NjY2NjY2NjY2QwcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAweDEuOTBwNSwKKyAgICAweDEuZTY2NjY2NjY2NjY2YXA1MAorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLjk4cDUsCisgICAgMHgxLjBwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS45OHA1LAorICAgIDB4MS4wcDUxCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuOThwNSwKKyAgICAweDEuMTk5OTk5OTk5OTk5YXA1MQorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLjk4cDUsCisgICAgMHgxLjMzMzMzMzMzMzMzMzRwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS45OHA1LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDUxCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEuOThwNSwKKyAgICAweDEuNjY2NjY2NjY2NjY2OHA1MQorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLjk4cDUsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS45OHA1LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDUxCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuOThwNSwKKyAgICAweDEuYjMzMzMzMzMzMzMzNnA1MQorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLjk4cDUsCisgICAgMHgxLmNjY2NjY2NjY2NjZDBwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS45OHA1LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDUxCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuYTBwNSwKKyAgICAweDEuMHA1MgorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLmEwcDUsCisgICAgMHgxLjBwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS5hMHA1LAorICAgIDB4MS4xOTk5OTk5OTk5OTlhcDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuYTBwNSwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHA1MgorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLmEwcDUsCisgICAgMHgxLjRjY2NjY2NjY2NjY2VwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5hMHA1LAorICAgIDB4MS42NjY2NjY2NjY2NjY4cDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuYTBwNSwKKyAgICAweDEuODAwMDAwMDAwMDAwMnA1MgorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLmEwcDUsCisgICAgMHgxLjk5OTk5OTk5OTk5OWNwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS5hMHA1LAorICAgIDB4MS5iMzMzMzMzMzMzMzM2cDUyCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuYTBwNSwKKyAgICAweDEuY2NjY2NjY2NjY2NkMHA1MgorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmEwcDUsCisgICAgMHgxLmU2NjY2NjY2NjY2NmFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuYThwNSwKKyAgICAweDEuMHA1MworICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS5hOHA1LAorICAgIDB4MS4wcDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLmE4cDUsCisgICAgMHgxLjE5OTk5OTk5OTk5OWFwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuYThwNSwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHA1MworICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS5hOHA1LAorICAgIDB4MS40Y2NjY2NjY2NjY2NlcDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLmE4cDUsCisgICAgMHgxLjY2NjY2NjY2NjY2NjhwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuYThwNSwKKyAgICAweDEuODAwMDAwMDAwMDAwMnA1MworICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5hOHA1LAorICAgIDB4MS45OTk5OTk5OTk5OTljcDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLmE4cDUsCisgICAgMHgxLmIzMzMzMzMzMzMzMzZwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEuYThwNSwKKyAgICAweDEuY2NjY2NjY2NjY2NkMHA1MworICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS5hOHA1LAorICAgIDB4MS5lNjY2NjY2NjY2NjZhcDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLmIwcDUsCisgICAgMHgxLjBwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAtMHgxLjAwODBwMTAsCisgICAgMHgxLjBwLTEwMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLnAxMCwKKyAgICAweDEuZDMzMzMzMzMzMzMzNHAtMTAyNAorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIC0weDEuZmY4MHA5LAorICAgIDB4MS5iMzMzMzMzMzMzMzM0cC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS5mZnA5LAorICAgIDB4MS4zZTY2NjY2NjY2NjY3cC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgLTB4MS5mZnA5LAorICAgIDB4MS5hMzMzMzMzMzMzMzM0cC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgLTB4MS5mZTgwcDksCisgICAgMHgxLjA0MHAtMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIC0weDEuZmU4MHA5LAorICAgIDB4MS4zNjY2NjY2NjY2NjY2cC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgLTB4MS5mZTgwcDksCisgICAgMHgxLjY4Y2NjY2NjY2NjY2NwLTEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAtMHgxLmZlODBwOSwKKyAgICAweDEuOWIzMzMzMzMzMzMzMnAtMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIC0weDEuZmU4MHA5LAorICAgIDB4MS5jZDk5OTk5OTk5OTk4cC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgLTB4MS5mZTgwcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuOTBwNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MAorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS45OHA1LAorICAgIDB4MS4wcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjk4cDUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuOThwNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MQorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS5hMHA1LAorICAgIDB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLmEwcDUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuYTBwNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MgorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5hOHA1LAorICAgIDB4MS4wcDUzCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLmE4cDUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuOThwNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEuOThwNSwKKyAgICAtMHgxLjBwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuOTBwNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEuYTBwNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuYTBwNSwKKyAgICAtMHgxLjBwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuOThwNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuYThwNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuYThwNSwKKyAgICAtMHgxLjBwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAweDEuYTBwNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuZmY4MHA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuZmY4MHA5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS5jMHAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgLTB4MS44MHAyLAorICAgIDB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS44MHAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgLTB4MS44MHAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS40MHAyLAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS40MHAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS40MHAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgLTB4MS5wMiwKKyAgICAweDEuMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEucDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLnAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS44MHAxLAorICAgIDB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTB4MS44MHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS44MHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgLTB4MS5wMSwKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEucDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTB4MS5wMCwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIC0weDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAtMHgxLjBjODBwMTAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgLUhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAtMHgxLjBjODBwMTAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgMC4wLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgMHgxLnAxLAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAweDEucDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDB4MS5wMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMHgxLjgwcDEsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIDB4MS44MHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuODBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLnAyLAorICAgIDB4MS4wcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEucDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIDB4MS5wMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLjQwcDIsCisgICAgMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIDB4MS40MHAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuNDBwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjgwcDIsCisgICAgMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS44MHAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuODBwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmMwcDIsCisgICAgMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS5jMHAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS5mZjgwcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIDB4MS5mZjgwcDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuZmY4MHA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAweDEuZmY4MHA5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgMHgxLnAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAweDEucDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAwLjAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIDAuMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMC4wLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAwLjAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAtMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMHgxLnAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAtMHgxLmZmcDksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLmZmcDksCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgLTB4MS5mZnA5LAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgLTB4MS5mZnA5LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIC0weDEuZmY4MHA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS5mZjgwcDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgLTB4MS5mZjgwcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAtMHgxLmZmODBwOSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAtMHgxLjBjNDBwMTAsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLjBjNDBwMTAsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgLTB4MS4wYzgwcDEwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS4wYzgwcDEwLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIC1IVUdFX1ZBTCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAtSFVHRV9WQUwsCisgICAgLTAuMAorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL2xvZ2JmX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9sb2diZl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWFkM2MwMwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9sb2diZl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSw3MTQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfbG9nYmZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAweDEuOTBwNiwKKyAgICAweDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuOTBwNiwKKyAgICAweDEuMTk5OTlhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAweDEuOTBwNiwKKyAgICAweDEuMzMzMzM0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuOTBwNiwKKyAgICAweDEuNGNjY2NlcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEuOTBwNiwKKyAgICAweDEuNjY2NjY4cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuOTBwNiwKKyAgICAweDEuODAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTk5OTljcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuOTBwNiwKKyAgICAweDEuYjMzMzM2cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEuOTBwNiwKKyAgICAweDEuY2NjY2QwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuOTBwNiwKKyAgICAweDEuZTY2NjZhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLjk0cDYsCisgICAgMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS45NHA2LAorICAgIC0weDEucDEwMQorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLjkwcDYsCisgICAgLTB4MS5lNjY2NjZwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEuOTBwNiwKKyAgICAtMHgxLmNjY2NjY3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS45MHA2LAorICAgIC0weDEuYjMzMzMycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLjkwcDYsCisgICAgLTB4MS45OTk5OThwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEuOTBwNiwKKyAgICAtMHgxLjdmZmZmZXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS45MHA2LAorICAgIC0weDEuNjY2NjY0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLjkwcDYsCisgICAgLTB4MS40Y2NjY2FwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuOTBwNiwKKyAgICAtMHgxLjMzMzMzMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS45MHA2LAorICAgIC0weDEuMTk5OTk2cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjkwcDYsCisgICAgLTB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEuNTBwNCwKKyAgICAweDEucDIxCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuNTBwNCwKKyAgICAweDEuMTk5OTlhcDIxCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuNTBwNCwKKyAgICAweDEuMzMzMzM0cDIxCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuNTBwNCwKKyAgICAweDEuNGNjY2NlcDIxCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuNTBwNCwKKyAgICAweDEuNjY2NjY4cDIxCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuNTBwNCwKKyAgICAweDEuODAwMDAycDIxCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuNTBwNCwKKyAgICAweDEuOTk5OTljcDIxCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuNTBwNCwKKyAgICAweDEuYjMzMzM2cDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuNTBwNCwKKyAgICAweDEuY2NjY2QwcDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuNTBwNCwKKyAgICAweDEuZTY2NjZhcDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEuNjBwNCwKKyAgICAweDEucDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEuNjBwNCwKKyAgICAweDEucDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuNjBwNCwKKyAgICAweDEuMTk5OTlhcDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEuNjBwNCwKKyAgICAweDEuMzMzMzM0cDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEuNjBwNCwKKyAgICAweDEuNGNjY2NlcDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuNjBwNCwKKyAgICAweDEuNjY2NjY4cDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuNjBwNCwKKyAgICAweDEuODAwMDAycDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuNjBwNCwKKyAgICAweDEuOTk5OTljcDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuNjBwNCwKKyAgICAweDEuYjMzMzM2cDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuNjBwNCwKKyAgICAweDEuY2NjY2QwcDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuNjBwNCwKKyAgICAweDEuZTY2NjZhcDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEuNzBwNCwKKyAgICAweDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuNzBwNCwKKyAgICAweDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuNzBwNCwKKyAgICAweDEuMTk5OTlhcDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuNzBwNCwKKyAgICAweDEuMzMzMzM0cDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuNzBwNCwKKyAgICAweDEuNGNjY2NlcDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEuNzBwNCwKKyAgICAweDEuNjY2NjY4cDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuNzBwNCwKKyAgICAweDEuODAwMDAycDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuNzBwNCwKKyAgICAweDEuOTk5OTljcDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEuNzBwNCwKKyAgICAweDEuYjMzMzM2cDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuNzBwNCwKKyAgICAweDEuY2NjY2QwcDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEuNzBwNCwKKyAgICAweDEuZTY2NjZhcDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuODBwNCwKKyAgICAweDEucDI0CisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuODBwNCwKKyAgICAweDEucDI0CisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuODBwNCwKKyAgICAweDEuMTk5OTlhcDI0CisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuODBwNCwKKyAgICAweDEuMzMzMzM0cDI0CisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuODBwNCwKKyAgICAweDEuNGNjY2NlcDI0CisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuODBwNCwKKyAgICAweDEuNjY2NjY4cDI0CisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuODBwNCwKKyAgICAweDEuODAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuODBwNCwKKyAgICAweDEuOTk5OTljcDI0CisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEuODBwNCwKKyAgICAweDEuYjMzMzM2cDI0CisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuODBwNCwKKyAgICAweDEuY2NjY2QwcDI0CisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuODBwNCwKKyAgICAweDEuZTY2NjZhcDI0CisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEuOTBwNCwKKyAgICAweDEucDI1CisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAtMHgxLjA0cDcsCisgICAgMHgxLnAtMTMwCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLnA3LAorICAgIDB4MS5kMzMzMzBwLTEyOAorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgLTB4MS5mY3A2LAorICAgIDB4MS5iMzMzMzBwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5mOHA2LAorICAgIDB4MS4zZTY2NjRwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgLTB4MS5mOHA2LAorICAgIDB4MS5hMzMzMzBwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5mNHA2LAorICAgIDB4MS4wM2ZmZmVwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgLTB4MS5mNHA2LAorICAgIDB4MS4zNjY2NjRwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS5mNHA2LAorICAgIDB4MS42OGNjY2FwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS5mNHA2LAorICAgIDB4MS45YjMzMzBwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5mNHA2LAorICAgIDB4MS5jZDk5OTZwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgLTB4MS5mNHA2LAorICAgIDB4MS5mZmZmZmNwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLjUwcDQsCisgICAgMHgxLmZmZmZmZXAyMQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLjYwcDQsCisgICAgMHgxLnAyMgorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLjYwcDQsCisgICAgMHgxLjAwMDAwMnAyMgorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLjYwcDQsCisgICAgMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLjcwcDQsCisgICAgMHgxLnAyMworICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLjcwcDQsCisgICAgMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLjcwcDQsCisgICAgMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLjgwcDQsCisgICAgMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgMHgxLjgwcDQsCisgICAgMHgxLjAwMDAwMnAyNAorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLjYwcDQsCisgICAgLTB4MS4wMDAwMDJwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS42MHA0LAorICAgIC0weDEucDIyCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuNTBwNCwKKyAgICAtMHgxLmZmZmZmZXAyMQorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLjcwcDQsCisgICAgLTB4MS4wMDAwMDJwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS43MHA0LAorICAgIC0weDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEuNjBwNCwKKyAgICAtMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjgwcDQsCisgICAgLTB4MS4wMDAwMDJwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS44MHA0LAorICAgIC0weDEucDI0CisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuNzBwNCwKKyAgICAtMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLmZjcDYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5mY3A2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgLTB4MS5jMHAyLAorICAgIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIC0weDEuODBwMiwKKyAgICAweDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAtMHgxLjgwcDIsCisgICAgMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIC0weDEuODBwMiwKKyAgICAweDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS40MHAyLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAtMHgxLjQwcDIsCisgICAgMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuNDBwMiwKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgLTB4MS5wMiwKKyAgICAweDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTB4MS5wMiwKKyAgICAweDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgLTB4MS5wMiwKKyAgICAweDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgLTB4MS44MHAxLAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMHgxLjgwcDEsCisgICAgMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIC0weDEuODBwMSwKKyAgICAweDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgLTB4MS5wMSwKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgLTB4MS5wMSwKKyAgICAweDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgLTB4MS5wMSwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgLTB4MS5wMCwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgLTB4MS5wMCwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS4yYXA3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIC0weDEuMmFwNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAtMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAwLjAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEucDAsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEucDEsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS5wMSwKKyAgICAweDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuODBwMSwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuODBwMSwKKyAgICAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuODBwMSwKKyAgICAweDEuZmZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEucDIsCisgICAgMHgxLnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLnAyLAorICAgIDB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIDB4MS5wMiwKKyAgICAweDEuZmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuNDBwMiwKKyAgICAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEuNDBwMiwKKyAgICAweDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEuNDBwMiwKKyAgICAweDEuZmZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuODBwMiwKKyAgICAweDEucDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuODBwMiwKKyAgICAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuODBwMiwKKyAgICAweDEuZmZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAweDEuYzBwMiwKKyAgICAweDEucDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuYzBwMiwKKyAgICAweDEuMDAwMDAycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAweDEuZmNwNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS5mY3A2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS5mY3A2LAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMHgxLmZjcDYsCisgICAgLTB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLnAwLAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS5wMCwKKyAgICAtMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMC4wLAorICAgIDB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIDAuMCwKKyAgICAtMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIDAuMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMC4wLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDAuMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgLTB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIC0weDEucDAsCisgICAgMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEucDAsCisgICAgLTB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAtMHgxLmY4cDYsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS5mOHA2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMHgxLmY4cDYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS5mOHA2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLmZjcDYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS5mY3A2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtMHgxLmZjcDYsCisgICAgMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5mY3A2LAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAtMHgxLjI4cDcsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS4yOHA3LAorICAgIC0weDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLjJhcDcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS4yYXA3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvbG9nZl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvbG9nZl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjY5Nzc2YwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9sb2dmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDEzMDYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfbG9nZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEuYmI5ZDNhZWI4Yzg3YjAyZDc3NjNlYmE4YjQ4YTEwMmRwMSwKKyAgICAweDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS5mZmZmZmUwMDAwMDJhYWFhYTZhYWFhYjExMTExMDY2NnAtMjQsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIC0weDEuYzZiNDVjZWIwOWE1YTdjODJhYWNkMWNhZGY3MjUzZGNwNCwKKyAgICAweDEuMDAwMDA4cC00MQorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAtMHgxLmQxY2I3Y2VhODZkMDlmNjI0NzRiMTRjNDVmNGNiNjgwcDMsCisgICAgMHgxLjAwMDAxMHAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgLTB4MS5mZTI4MDBlODdjMzQ3ZDc4OGYzOTRlZjJlOTNkYjg2OHA1LAorICAgIDB4MS4wMDAwODBwLTkyCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS4xZmZmYWYwMDFlNWZmMzJmODVjNDM2ZTU5ZmU3M2IxZXAtMTcsCisgICAgMHgxLjAwMDA5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIC0weDEuMGEyN2EzZmZmYTdlMGQwMzFkOWE1NWQxNTdhMGU4YzhwMSwKKyAgICAweDEuMDAwN3AtMworICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuNTRkZTZlZTc4OTg5YTlhY2ZjODc1YzFkNDVlMTY0OTBwLTksCisgICAgMHgxLjAwYWFhOHAwCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS44ZjQ4MjZmZmY3ODdjNThmYWI1MjBlNTA1OTUyYmI1NXAtOSwKKyAgICAweDEuMDBjN2YycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgLTB4MS42MTUwY2VmZmZjODNiYTJkYTQzZDhkNzQ1NWVmMmZkZXAtMSwKKyAgICAweDEuMDBjYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLmNmMmUzZWIwOTI4YmRmNWNiZjA2NGEyN2M2NDIyYzg1cC05LAorICAgIDB4MS4wMGU4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5mMGVlOGE5YTY3YWIzNjU5N2ZmZDNjOTMzMDRkMGNjNXAtOSwKKyAgICAweDEuMDBmOGYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5mYmRmYzg5N2QyMzlmYjQ5ZGMxYzMxYWZlYWVhMWVhNXAtOSwKKyAgICAweDEuMDBmZTZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5mZGM1ZTQ4Zjg5M2U4ZjQ4OTY3ZWU0ZmYxZTg5NWRkNXAtOSwKKyAgICAweDEuMDBmZjYycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS5iZTc5YzcwMDU4ZWM4ZjlhNmMwNDA0M2Y1Mjc2M2MzMHAtOCwKKyAgICAweDEuMDFjMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuZTNhZmVmMDM2YzQ0MmJlYTQ2ZDEwNWY2ODY0ZWE2ZjNwLTgsCisgICAgMHgxLjAxZTU3YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEuZWI5MmRiMDNkODlmMjU3MTlhZjkwOGViYjZlN2U1MTBwLTgsCisgICAgMHgxLjAxZWQ2Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuZjg3M2I1MDJmOTQyN2NiMWExNDg3MjI2N2ZmYWUyZjhwLTgsCisgICAgMHgxLjAxZmE2NnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuZmMxMDg5MDNmY2Q0Y2Q0NDU4MDBjYjA2YzE2NGQwYjBwLTgsCisgICAgMHgxLjAxZmUwYXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuZmVhMTY4ZmFkNjI3NDIzMmFkMzk5OGMzZTM5ZTQzZDlwLTgsCisgICAgMHgxLjAyMDBhMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuMGNlNGM5ZmUzZWRkN2Y0NWRjMzhkMzBmNzYzMDU5MzFwLTcsCisgICAgMHgxLjAyMWNwMAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjBlZTA5NmUyNzY0ZjlmMWU2NDg0MDYwNzQzNmNjMDkzcC03LAorICAgIDB4MS4wMjIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5mYzA5OGVmZmZlNDlmZTMyYzM1NzZkZWY2ZjMwMzMzNXAtNywKKyAgICAweDEuMDNmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIC0weDEuNThmZWQ0MDAwMTVmZmY5NGFjM2JiOWViYmM4MWM4YWVwLTEsCisgICAgMHgxLjA0ZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIC0weDEuNThiMWYxZmZmZmE1NmI1NWI2YTcyMmUwYWIyYzVhZTZwLTEsCisgICAgMHgxLjA1MjYzNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLmU3MjBhMzAwM2QwOTk3MzFjODVjZTZkNjg5NTQ2YTc2cC02LAorICAgIDB4MS4wN2I5YzRwMAorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLmY1YTRjYjAwMzUzOTM3YWQ4YjFlMDdhNmE0NjkxODlmcC02LAorICAgIDB4MS4wN2Y1OWNwMAorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgLTB4MS5iMDA4MGZmZmQ1ODhlYzkxODgzNzE1NzM2YWFlMGY1MHA0LAorICAgIDB4MS4wOHAtMzkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS43ZjY0YTcwMDAwMmI1NGQ2ZmI1ZDY5YmMzNWM1ZTJjYXAtMSwKKyAgICAweDEuMGVhN2IwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS5jZjI4MjUwNzhkOGJkMjFmNWI1NTQzMzQyZTY2YjU0ZHAtNSwKKyAgICAweDEuMGVlNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuODQ1NjU3MDAwMzkxZjM0MGRhNzQ1ZDllNWQyODMxNjVwLTEsCisgICAgMHgxLjExNDhwMQorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgLTB4MS5iOTU5NDIwMDA0YjUxZmI4MGQ4MzI5MTcyZDg5MjJmNnAzLAorICAgIDB4MS4xMmM4cC0yMAorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgLTB4MS4zY2IyMjZjZWY5YTYxMGNmNzdkYzAwNjc5MDJiNDA5OXAtMSwKKyAgICAweDEuMTNkNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLjVlMWEyMmZjY2Q4N2Q0MGI2ZTdlYmMwMjI2Mzc0ZDYxcC00LAorICAgIDB4MS4xNmQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIC0weDEuMzVmYjc2ZGQ4YzdhMjExZjMzODQyYWY0MmM1OTkxMTRwLTEsCisgICAgMHgxLjE3NzhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIC0weDEuMzUwMjhhZDlkOGM4NWMxZmNhOTNmMzU1ZDQ3OTZiYzFwLTEsCisgICAgMHgxLjE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEuYTNmNzFjZmYxNGI4MTExYWRlZDk3NmMyNmQxODk2MGVwLTQsCisgICAgMHgxLjFiYTRwMAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgLTB4MS41NWEwNjFmZmY5MGZhNmRmNzU1ZjdhZWY1YWI5Zjk3OHAxLAorICAgIDB4MS4xYmY0cC00CisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAtMHgxLmNlNWZmZGU2NmE5YWY3ODNiODY0NDMyMDllY2VjMTY0cDMsCisgICAgMHgxLjFjZTBwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAtMHgxLmNlM2E1NWVhNWQ0NzMyMmJkYmJlMGZmZjU0NzljYTFlcDMsCisgICAgMHgxLjFlMzBwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuZTIzNzkyZWY1Mjk3MWZkNmM3MmE5OWY1OThhMGZiYWNwLTQsCisgICAgMHgxLjFmZmNwMAorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjhmZTBjODUzMTRiYTVlMDllMTE1NTI4YzAyZWY2ZTMxcDAsCisgICAgMHgxLjMxMmU3OHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAtMHgxLmZkZWRmYWRlNDY1ZDU3MzM2YTliOGEzNTYyZDNiMTc2cC0yLAorICAgIDB4MS4zNzJjMTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIC0weDEuZmQ5Yzk4ZGU3ZDg5YjllMjk1NDZhOWI3NjkyY2FjZGRwLTIsCisgICAgMHgxLjM3NDRkMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgLTB4MS5mZDU2NTZkZTBjNjZkNDdiN2I5Y2Y0ZmE2OGIzNTZlNHAtMiwKKyAgICAweDEuMzc1YTJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAtMHgxLmZjYTk4Y2RlMGNlYjE4ZDZkN2JhYjc3MDVkMTRkZTE3cC0yLAorICAgIDB4MS4zNzhlYmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIC0weDEuZmMwYTU4ZGU0ZWE3Yzk0MzJhYzAwZmYwYWRiNmRiN2VwLTIsCisgICAgMHgxLjM3YmYzMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgLTB4MS5lYmRlZGU1MWRlN2Q3YjM1OWFjYzIzZWMzMTJhZjJkNHAtMiwKKyAgICAweDEuM2NiNTZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMHgxLmRhZTBkZWRmZGRhMjU2OTM3OTYzMGFiZmZjYWZmZmYycC0yLAorICAgIDB4MS40MjAyMDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIC0weDEuZDkzMGNhNTNhZThlMDY5NWQxNGU0ODM3NmI1ODQ2NjhwLTIsCisgICAgMHgxLjQyOGEwNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLmVjMzY0OWM3MmMwNWEwNjljMmQwMDAwOTA4NTFjNjM5cC0zLAorICAgIDB4MS40NThjYmVwMAorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLmYzZTYzMjU3ZWNkMTJiMGQ5Y2NjOWZmMzRjM2YzZDZlcC0zLAorICAgIDB4MS40NmM2MjZwMAorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgLTB4MS42OTNjZmEzMGI2MzNiMWQwM2Y0ZWNkODhhNzUwYWM3OXAtMiwKKyAgICAweDEuNjdjZDNhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLjY5MmI1ZTQyMTA4YjczZDc1OTk1MTgwNzRjZTg2NzBhcC0yLAorICAgIDB4MS42N2QzNmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIC0weDEuNjNiYmJhMTc3MWI4MjA4ZDg1MWFiMzZjZDZkOTNmMzhwLTIsCisgICAgMHgxLjY5YmRiYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLjYyZTI1ZWVjODU3ODFlNjBjYjQ5YjRmMjFiZWNhYmRmcC0yLAorICAgIDB4MS42YTA5NDJwMAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLjYyZTNjZTllZjg2ZjY1MjQzNTFlZGQ4NzMxMGU4NzQzcC0yLAorICAgIDB4MS42YTA5YzRwMAorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgLTB4MS4zYzYwN2FkZWRiMTY4ZDlkODljNmIyMjY1YjRkZDBhNHAtMiwKKyAgICAweDEuNzdlYTM4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLjE5NDQzMmZmZmNiMDkyZDg5MTY3MGI3ZjhmNjI4ZmM0cDYsCisgICAgMHgxLjc3ZmZmZXAtMTAyCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuMTkzZWE1MDAyNTgyNzA5MzBmOGU3ZDdhZjI0NGRjZmZwMCwKKyAgICAweDEuN2ZmZmZjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEuZGFjMDhkZTFkMjZiMGY2OWUxZWQ1OGJkM2Q5ZmQ4MmJwMywKKyAgICAweDEuODJmZTkycC0yMgorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLmM4ZDcwZGUxMTdjYjJmZTQ1OWVkNjRjYzY3ZTVhYmM5cDMsCisgICAgMHgxLjgzMDYwOHAyMAorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLmYyMjcyYWUzMjVhNTc1NDZmNjk0OTZjZjI2MWJlMDQ2cDEsCisgICAgMHgxLjg4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS5jOWM1YWRlMzQ3NjNjMGI5YTE4MGQ4NjNiZmM3ZjEwNnAzLAorICAgIDB4MS44ZTc2ODZwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEuZjk5MWQxMDhhYmUxZmM5YzkxZTkxYWU3ZjcwN2JkNGZwLTMsCisgICAgMHgxLjhmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgLTB4MS44MjdkNGQwMDJlNWQxMzIxNWNlNWY4ZGU4NzU2NjkzM3AxLAorICAgIDB4MS44ZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEuZjMwNWJkMDU4YjNjOWU2NDEwMTQ3NmU1ZGU5MTFkODNwLTMsCisgICAgMHgxLjkxNDdlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgLTB4MS5lZTdlZTUwNjUwODc4YTg0ZTk3ZjRjZWM5NjczNmJjNXAtMywKKyAgICAweDEuOTIyYjMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuZGMwMzkxMDA1YmYwZmNjYjkyYzI2MmVlYjZhMzAwZTRwMCwKKyAgICAweDEuOWFlMjc4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEuMjY1MGI2MDAwMDBiZTBjNTkwMmM3YTE1NDk1MTYxYzVwMSwKKyAgICAweDEuOWFlZWEwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAtMHgxLjdiYTliN2ZmZmYzZDE4OWY1YTE3MTQ5Njk3YzEyY2UycDEsCisgICAgMHgxLmE1ZTk3MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS4yMDYxNzBmZmZjOWU4YTkzYzE5ODZlMjE3ODdiZWQ1YXAxLAorICAgIDB4MS5hZTZlZjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuZDczZDdmZmMxZTdhYmM0MjI1ZTM5ODc4ODI4Zjg2NjZwMywKKyAgICAweDEuYWZlMjZjcC0yMgorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS4yNTE3NDcwMDAwMDAwOGRkYmU3NTU3MzlkNjI2MzY0ZnAzLAorICAgIDB4MS5iOTdjNzBwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAtMHgxLjFjYTViNTAwMDM1ZmMwN2MzODlhOWU1Y2JmZDc4ZWRicDEsCisgICAgMHgxLmJiMmMyY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS4yNGIwZWJmZmZjYzMyZWUxYjliNzM5ZTJhNGM3ZDA1OXAzLAorICAgIDB4MS5iZjA5NzBwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLjY2OTkxNTAwMDIzMGQ3NGZhMmRhMmY0MGJiZGY0NDY5cDMsCisgICAgMHgxLmM3ZmZmZXAtMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuOTU0YWVlZGY0ZDVmNWZiN2M0NzRhMzU3MjNiNGU3MDdwLTEsCisgICAgMHgxLmNmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgLTB4MS45MmU3NmFmZmZjZDQ0OWIzYWM1ZDQxMmI2MjJmNzhhOHAtNCwKKyAgICAweDEuZDAwOGU0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLmZmYTI0ZjFjMTIzM2E5ZjhlOGFlNjg0ZWRmODkzMTNmcC01LAorICAgIDB4MS5lMTAwNDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEuMTE3ODg5ZmZmZmZiZGY4YTVjZDdjMzRmNzI0NmYzY2ZwMSwKKyAgICAweDEuZTM5YmI0cC00CisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLjg5NGFjMmRjZGRlNTQ5ZDBkMDkyMmI1YjRmNTRlMDI4cC01LAorICAgIDB4MS5lN2ZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIC0weDEuMzgxZDM2ZmZlNjBlYjFkZmIwNjg2NTc0MDc0MjIzZTdwLTUsCisgICAgMHgxLmVjZGMxY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLmQxNDk3M2VkYjM2NTZjNzcxZTE4ZWNhODRiYzk0Yzc2cDQsCisgICAgMHgxLmVmZmZmZXA0MQorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgLTB4MS5lZmVhMThmZmYxMTE1ZTgxNjM2ZjUzYjY1NjY1ZTE2ZXAtNiwKKyAgICAweDEuZjBiYzIwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLmE1YjU4NGZmZGFkMzExNDdkMTE0MGIxNjk0NzQwYWQ3cC02LAorICAgIDB4MS5mMmZkNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIC0weDEuNjJiMzVhZmZkZjBhMjQyOTI4NGIwMDZiNjgwYmQxYmVwLTYsCisgICAgMHgxLmY1MDhlNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS4wY2IxNDBmZmZmOWY4ZjFlMDZlN2Y5YWYwYTUzMWE1YnAxLAorICAgIDB4MS5mNjAwZGNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIC0weDEuMGJmZTcwZWI0NTFhZDA5YTdjYjc1YzFlZWRmYTYxNTBwMSwKKyAgICAweDEuZjhjMDEwcC00CisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAtMHgxLjcwYzhjNTBkY2UyNDZkZDZiY2IwNDYxZTdkYzQ5MzdlcC03LAorICAgIDB4MS5mYTQ1MjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIC0weDEuNDE2YTcxYjc3M2EyYzNlMzk4MGIxMWVmZDFhMTk3YjVwLTgsCisgICAgMHgxLmZkN2ViZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS5jMGM2NzQ2MjFjNWI0NzRhNDMwZTEzNTcwYzU4MDM4OHAtOSwKKyAgICAweDEuZmUzZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAtMHgxLjA0ODYzY2ZmZmJiZjdlZGIxNjdjYjYwZGYzZjNkNTk5cC05LAorICAgIDB4MS5mZWZiYmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIC0weDEuMGE1ZGRmMDAwMDRlYmYyYTZmZWVlOTlkNWJkZGRlMzRwMSwKKyAgICAweDEuZmYzNTNjcC00CisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAtMHgxLmQ4MDM2NjQ4NWI3NDcyNDdhNDViYjlhNDcwMTc5ZGYxcC0xNSwKKyAgICAweDEuZmZmOGEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAtMHgxLmQxY2I3ZmVhODZjNDlmNjMwNzRiMGQ0NDVmYjY1MDE0cDMsCisgICAgMHgxLmZmZmZmMHAtMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5kMWNiN2RlYTg2YmM5ZjYyZGNhMDYxOTliNTA1M2YwM3AzLAorICAgIDB4MS5mZmZmZjBwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIC0weDEuMDAwMDAyMDAwMDA1NTU1NTY1NTU1NTg4ODg4OTMzMzNwLTIyLAorICAgIDB4MS5mZmZmZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIC0weDEuMDAwMDAxMDAwMDAxNTU1NTU3NTU1NTU4ODg4ODhkZGRwLTIzLAorICAgIDB4MS5mZmZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIC0weDEuMDAwMDAwODAwMDAwNTU1NTU1OTU1NTU1ODg4ODg4YjNwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAtMHgxLjYyZTQzMTE1YThmYjQ3YzNhN2MyZTc2YTgwY2NhOWE1cC0yLAorICAgIDB4MS42YTA5ZTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAtMHgxLmRhMzkxYTcwZDI4YTI0NjQxNjI2ZjVlOTE1NTMyNGI1cC0zLAorICAgIDB4MS45NjJiNjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAtMHgxLjA2ZmJlNmE0ZTI1Mjk1ZjgwZmIyMjc0YWZlNmQzYmFjcC0zLAorICAgIDB4MS5jMjRjZGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAtMHgxLjFlMGE2ZDA1MzQyNWQzZDY1MjhhYTcxN2VjYzlhNTc4cC01LAorICAgIDB4MS5lZTZlNTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuOWU1NDljMzc3OWYwOTM0NTE4OTJhMWZlNGU2N2I1MGVwLTUsCisgICAgMHgxLjBkNDdlNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjA4ZTBiOWYzYTc5NDRiYWIzZWNiNTZkNmE3ZmYwM2I1cC0zLAorICAgIDB4MS4yMzU4YTJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS45ZTY0NWQ2MGZmMTk4OTg2NDc5MzQ2ZDE2NGVjYWQ3ZXAtMywKKyAgICAweDEuMzk2OTVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuMTRkZDY3MGNhYzAyMTI1MDZiZjcyZmI3NjJkOGE3ZGJwLTIsCisgICAgMHgxLjRmN2ExYXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjU2MTgxOWFjYTQ5ZGU2YjFkMWNjZGExMDk1Yzc0NTAycC0yLAorICAgIDB4MS42NThhZDZwMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS45MzZhN2M0OTZjM2UyMTQwNmFmOWY0YWM5YmVhYzZhNXAtMiwKKyAgICAweDEuN2I5YjkycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuY2Q0NWE4ZDdlMzQwM2Y1Mjc4ZDVlM2Q1NjYzNDlmNzVwLTIsCisgICAgMHgxLjkxYWM0ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLjAyMDQ0ODMxMjExZWQwMDY4ZWZhNGMyYThiOTg3MGJmcC0xLAorICAgIDB4MS5hN2JkMGFwMAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS4xYzAxZDVmNmQzYTUwZDMxYzQ1Y2JmZGRkMDI3Mjc2NXAtMSwKKyAgICAweDEuYmRjZGM2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEuMzRiZGU0NmZkODRmY2E0M2JhM2Y0Nzk5YWNhYjEwZmZwLTEsCisgICAgMHgxLmQzZGU4MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLjRjNTYxODEzNmEzMjIxZDg0NDc2Yjc4MzUzZmFiYzgwcC0xLAorICAgIDB4MS5lOWVmM2VwMAorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS42MmU0MjllZmEzOTVmMzU3ODFjNzY3MDc4N2U1OGMyYnAtMSwKKyAgICAweDEuZmZmZmZhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAtMHgxLjYyZTQzMTE1YThmYjQ3YzNhN2MyZTc2YTgwY2NhOWE1cC0yLAorICAgIDB4MS42YTA5ZTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAtMHgxLjI0Y2ZkMDk1MTRiYWU5ZTIxNTAxZDFhMjhjMzdkNTFlcC0yLAorICAgIDB4MS44MGFhODRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAtMHgxLmQ0OTAyYTdmNmExZDE4ZGEyNDFkZmZiNDJhMDgxOGVkcC0zLAorICAgIDB4MS45NzRiMjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAtMHgxLjY1ZDU2MDdjYzg1YmFiYTI2ZTJmYWY3ODg2NWRjOTkxcC0zLAorICAgIDB4MS5hZGViYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAtMHgxLmY5OTFkOGY2ZTJmMDExOTQzZDVhNmE2MGNkNjQ2MDAycC00LAorICAgIDB4MS5jNDhjNWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAtMHgxLjMxYjlhOTk1NTAyZDU5MjQxNTAwY2QxY2U5NTVmNWM0cC00LAorICAgIDB4MS5kYjJjZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAtMHgxLmNjYjc5OTRiZGE4MThjMjZjYzE1ZmNhNjYwZjM2NGVjcC02LAorICAgIDB4MS5mMWNkOWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuMGI5NDkyYmQ5OTU3MGU4YTJhMmY1YTdmNTk2NDRiNDJwLTYsCisgICAgMHgxLjA0MzcxY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLmUyNzA1ZTljYzU1NGQ4YjU2NTQzM2M4ZmFkMmRiMTY0cC01LAorICAgIDB4MS4wZjg3NmNwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDB4MS45ODZkMzIxNjg4YjA3NGEyMWViMjZiNDE2NzllZTMwOXAtNCwKKyAgICAweDEuMWFkN2JjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuMWM4OTkxOWZiMjA4ZWJkYTI3NWQ2ZmVlNzU1NzdhNDNwLTMsCisgICAgMHgxLjI2MjgwY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLjY5ZDQ2M2RiNWQwZDhjYmM1ZGE4YmQyYzFmNWQyOTUzcC0zLAorICAgIDB4MS4zMTc4NWNwMAorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS5iNDRmODczODE2MTFhYjI4MDZkNmYwMGQyMTNkZTJjZnAtMywKKyAgICAweDEuM2NjOGFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuZmMyZDgwZTUzMTFiM2Y3ZTA1ZjI2Yjk2MzA0NGVhMDhwLTMsCisgICAgMHgxLjQ4MThmY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLjIwY2RkOTI2MmM1OWE3NzI2Njg5ZjRmZTVmZmE1OGZlcC0yLAorICAgIDB4MS41MzY5NGNwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS40MjYxODJkYjIwZTIzZDBiNDczYWUxYzJkMTk3NWMzZnAtMiwKKyAgICAweDEuNWViOTljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuNjJlNDJlYzk5ZTQyOWVlYjdmY2JlNmY1OGVmZjMxMTdwLTIsCisgICAgMHgxLjZhMDllNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS4yNjk2MjExMzRkYjkyNzgzYmViNzY3NmMwYWE5YzJhM3AtMiwKKyAgICAweDEuODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAtMHgxLjg5ZmE0ODRkMzU1YjVlMTg2ZjU2NjJiM2RhM2U3NDVicC0zLAorICAgIDB4MS5hNjY2NjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMHgxLmFmOGU4OTJkMTVkZTg3ZTJlOWU1OWRmZjVjMDYzM2JlcC00LAorICAgIDB4MS5jY2NjY2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLjllY2ViY2I1OTdlYTFiYjQzZDg5NmY1ODQ3NTk3NDRhcC02LAorICAgIDB4MS5mMzMzMzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuOGZiMDRiOGRhNjVjZWI4NWEyZWRiN2QwZmYwYWQyZDNwLTUsCisgICAgMHgxLjBjY2NjY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLmUyNzA3NmUyYWYyZTVlOWVhODdmZmUxZmU5ZTE1NWRicC00LAorICAgIDB4MS4yMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLjc1NjUwNjczOWViYWYxY2Q1ODg1NWQyMzFlNzc3YTU5cC0zLAorICAgIDB4MS4zMzMzMzRwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5mMThkY2UyODk4ZjViYTkxOWQ4MjVkOTY5NmM2Yzc3NHAtMywKKyAgICAweDEuNDY2NjY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuMzM0ZWE1NjQ0MjQwMTNiNzczOWFmYmM5NDc4NzQxYjVwLTIsCisgICAgMHgxLjU5OTk5Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLjZhYWMwZDBmZTM4NzFhYjYwZDcwZDQxZTk1NGMyYmQzcC0yLAorICAgIDB4MS42Y2NjZDBwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDB4MS45ZjMyM2VjYmY5ODRiZjJiNjhkNzY2ZjQwNTIyMTgxOXAtMiwKKyAgICAweDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDAuMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAweDEuODY2M2ZkNjUzOGM4NzIzNDllYzFhODVlMDVlYzVmYjVwLTQsCisgICAgMHgxLjE5OTk5YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLjc1NjUwNjczOWViYWYxY2Q1ODg1NWQyMzFlNzc3YTU5cC0zLAorICAgIDB4MS4zMzMzMzRwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS4wY2E5M2I2ZjU2YWZiYWNkMDc5NzNiMGEzYzY3ZmM0N3AtMiwKKyAgICAweDEuNGNjY2NlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuNTg4YzMyMjM3YzZhZWZlOTZlMWRiMjdjNDY3MTBkMzlwLTIsCisgICAgMHgxLjY2NjY2OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgMHgxLjlmMzI0NDIxNGVkNjg2NDdkZGM3OTk4MjNlMDVhOWIxcC0yLAorICAgIDB4MS44MDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS5lMTQ4YTdhMjcyNjg1OTRkZmQ0ZGQ2YzMwMWZlY2U3OXAtMiwKKyAgICAweDEuOTk5OTljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAweDEuMGZhZTg0ZGM5NWUxYTdkOTg5NzQ3MmQ1NWE3NTYzZThwLTEsCisgICAgMHgxLmIzMzMzNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLjJjZjI2MzNiYzdmYzlkOWQ5OTI5MzE5YWE5MTg4MjJjcC0xLAorICAgIDB4MS5jY2NjZDBwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIDB4MS40OGExMTY1ZGYyNzRhYjc5NjNmODU1MGRjYmZiNmFlYnAtMSwKKyAgICAweDEuZTY2NjZhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwLTEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgMHgxLjE1NDI0NTczMzdkNDJlMWM2YjczYzg5ZDg2MmJhMTcxcDYsCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuMTVhM2RlNzI5MTIyNjAzOGY4OWI3OTA3OWRhZDFjODlwNiwKKyAgICAweDEuMTk5OTlhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIDB4MS4xNWZjZjdmNjcxYTM4Yjk1NTIyMDBiNGMxN2JhZGQyZnA2LAorICAgIDB4MS4zMzMzMzRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgMHgxLjE2NGVlZWFlYTcyYWRkZDczODdiNWZkODkwNjgwOTZlcDYsCisgICAgMHgxLjRjY2NjZXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEuMTY5YWQxYTU1YjUwOTkwYzU0ZTFlNjUwMDI3MjEyN2ZwNiwKKyAgICAweDEuNjY2NjY4cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS4xNmUxNzdiNzU5MjMwNGEyYjM1MTkwMzcwODY5YTcxYnA2LAorICAgIDB4MS44MDAwMDJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgMHgxLjE3MjM4ZTFhZGE0Njk2NzViOTcxMTY3NDQ5MmRhMDQwcDYsCisgICAgMHgxLjk5OTk5Y3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuMTc2MWEyN2NmMGZmZjE2YzFlODZiMTgzMzBlMDhjMzlwNiwKKyAgICAweDEuYjMzMzM2cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIDB4MS4xNzljMmEzOWFmNjQyNzU3YTZhNjFiMDBiYjdkZDI3NnA2LAorICAgIDB4MS5jY2NjZDBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLjE3ZDM4NzlmZjNiOTE3NzM1ZTNiYjk0N2ExYzM5ODQ3cDYsCisgICAgMHgxLmU2NjY2YXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAweDEuMTgwODBkZDMxNzFiNmMwMzFhOWI1NzZiZTYzYjZkNGNwNiwKKyAgICAweDEucDEwMQorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuMDAwMDA4MDAwMDU1NTU1OTU1NTU4ODg4OGIzMzMzNTdwLTIwLAorICAgIDB4MS5mZmZmZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLjAwMDAwNDAwMDAxNTU1NTVkNTU1NTg4ODg4OWRkZGRlcC0yMSwKKyAgICAweDEuZmZmZmYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMC4wLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIDB4MS5mZmZmZjgwMDAwMmFhYWE5YWFhYWIxMTExMGU2NjY2N3AtMjIsCisgICAgMHgxLjAwMDAwOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLmZmZmZmMDAwMDBhYWFhYTJhYWFiMTExMTBiYmJiYzA0cC0yMSwKKyAgICAweDEuMDAwMDEwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLjAwMDAwMDgwMDAwMDU1NTU1NTk1NTU1NTg4ODg4OGIzcC0yNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgLTB4MS4wMDAwMDA4MDAwMDA1NTU1NTU5NTU1NTU4ODg4ODhiM3AtMjQsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEuMDAwMDAwODAwMDAwNTU1NTU1OTU1NTU1ODg4ODg4YjNwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLjAwMDAwMDgwMDAwMDU1NTU1NTk1NTU1NTg4ODg4OGIzcC0yNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS4wMDAwMDA4MDAwMDA1NTU1NTU5NTU1NTU4ODg4ODhiM3AtMjQsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIC0weDEuMDAwMDAwODAwMDAwNTU1NTU1OTU1NTU1ODg4ODg4YjNwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLjAwMDAwMDgwMDAwMDU1NTU1NTk1NTU1NTg4ODg4OGIzcC0yNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgLTB4MS4wMDAwMDA4MDAwMDA1NTU1NTU5NTU1NTU4ODg4ODhiM3AtMjQsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuMDAwMDAwODAwMDAwNTU1NTU1OTU1NTU1ODg4ODg4YjNwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAtMHgxLjAwMDAwMDgwMDAwMDU1NTU1NTk1NTU1NTg4ODg4OGIzcC0yNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTB4MS4wMDAwMDA4MDAwMDA1NTU1NTU5NTU1NTU4ODg4ODhiM3AtMjQsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIC0weDEuMDAwMDAwODAwMDAwNTU1NTU1OTU1NTU1ODg4ODg4YjNwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAtMHgxLjAwMDAwMDgwMDAwMDU1NTU1NTk1NTU1NTg4ODg4OGIzcC0yNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgLTB4MS4wMDAwMDA4MDAwMDA1NTU1NTU5NTU1NTU4ODg4ODhiM3AtMjQsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0weDEuMDAwMDAwODAwMDAwNTU1NTU1OTU1NTU1ODg4ODg4YjNwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuNjJlNDJmZWJhMzllZjE1NzkzYzYxMWRhYjE5MDk4MDhwNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuOWQxZDlmY2NmNDc3MDc0M2YyMDYxZTFkZTkzMWE2NTBwNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAtMHgxLjYyZTQzNmJkZDA5YTg3NjE5NDk0MGI5NmNiMjhmZDdmcC0yLAorICAgIDB4MS42YTA5ZTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAtMHgxLjYyZTQzMTE1YThmYjQ3YzNhN2MyZTc2YTgwY2NhOWE1cC0yLAorICAgIDB4MS42YTA5ZTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAtMHgxLjYyZTQyYjZkODE2NDA4MjViZjg5ZDhiOGQ5ZDBmZjU4cC0yLAorICAgIDB4MS42YTA5ZThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAweDEuNjJlNDI5MjE3NmEzNWY0ZDkyZmFjMmM5NDRhMmRkM2RwLTIsCisgICAgMHgxLjZhMDllNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLjYyZTQyZWM5OWU0MjllZWI3ZmNiZTZmNThlZmYzMTE3cC0yLAorICAgIDB4MS42YTA5ZTZwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIDB4MS42MmU0MzQ3MWM1ZDlkZTg5NjgwNGY1YTczNWZhZGI2NXAtMiwKKyAgICAweDEuNmEwOWU4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAtMHgxLjYyZTQzMWVmYTM5ZmYzNTc5NDcyMTFkYjMyOTA5ODZmcC0xLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcC0xLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLjYyZTQyYmVmYTNhMmYzNTc4ZTcyMTFlMmIyOTA4YjNjcC0xLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLjI2OTYyNjY4YTMxMjBiMTFmYWM0MGJjN2IyMmI1YThkcC0yLAorICAgIDB4MS43ZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAtMHgxLjI2OTYyMTEzNGRiOTI3ODNiZWI3Njc2YzBhYTljMmEzcC0yLAorICAgIDB4MS44MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIC0weDEuMjY5NjFiYmRmODY3NjA2NzQ5YzczNGRkZDFjNjMxMGJwLTIsCisgICAgMHgxLjgwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS45ZjMyMzk3NmE0MmJkYjlkMmNjYWMyOTg1ZGEwODAyZnAtMiwKKyAgICAweDEuN2ZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAweDEuOWYzMjNlY2JmOTg0YmYyYjY4ZDc2NmY0MDUyMjE4MTlwLTIsCisgICAgMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuOWYzMjQ0MjE0ZWQ2ODY0N2RkYzc5OTgyM2UwNWE5YjFwLTIsCisgICAgMHgxLjgwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgMHgxLjU0ZGU2ZWU3ODk4OWE5YWNmYzg3NWMxZDQ1ZTE2NDkwcC05LAorICAgIDB4MS4wMGFhYThwMAorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS41NGUyNmMzZWFiNmVhMjQxMTVhNGVjYmM2YzIxYzNkZXAtOSwKKyAgICAweDEuMDBhYWFhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEuNTRlNjY5OTVjNTVlM2FkNDBjYjJiMDFkNzdiOGI2M2ZwLTksCisgICAgMHgxLjAwYWFhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLjYyZTQyZWVmYTM5ZTczNTc5MzcyMTFkYTcyOTA5N2Q1cDAsCisgICAgMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDAsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjYyZTQzMWVmYTM5Y2YzNTc5NjcyMTFkNmIyOTA5ZTZmcDAsCisgICAgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLjYyZTQyZGVmYTM5ZGYzNTc5MzFjYmM4NGRkM2I0MjRkcC0xLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAtMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEuNjJlNDMzZWZhMzlhZjM1Nzk5MWNiYzdkNWQzYjRmODBwLTEsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgLTB4MS4wMDAwMDA4MDAwMDA1NTU1NTU5NTU1NTU4ODg4ODhiM3AtMjQsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIDAuMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuZmZmZmZlMDAwMDAyYWFhYWE2YWFhYWIxMTExMTA2NjZwLTI0LAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0weDEuNjJlNDMxZWZhMzlmZjM1Nzk0NzIxMWRiMzI5MDk4NmZwLTEsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIC0weDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwLTEsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIC0weDEuNjJlNDJiZWZhM2EyZjM1NzhlNzIxMWUyYjI5MDhiM2NwLTEsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIC0weDEuNjJlNDMwZWZhMzlmNzM1Nzk0MWNiYzg1OWQzYjQyZTdwMCwKKyAgICAweDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAwLAorICAgIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAtMHgxLjYyZTQyZGVmYTNhMGYzNTc5MTFjYmM4OTVkM2IzYzRkcDAsCisgICAgMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIC0weDEuMGEyYjI0NzNiYWI3NzY4MWFmMDAzODBlZDA5NzFjY2JwMSwKKyAgICAweDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgLTB4MS4wYTJiMjNmM2JhYjczNjgxYWVkNThkNjQwNWVjNzIwNnAxLAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLjBhMmIyMmYzYmFiODM2ODFhZDgwMzgxMGIwOTcxOTdlcDEsCisgICAgMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIC0weDEuNjJlNDMwNmZhMzlmMzM1NzkzZjIxMWRhZDI5MDk4MjJwMSwKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAxLAorICAgIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAtMHgxLjYyZTQyZWVmYTM5ZmYzNTc5MjcyMTFkY2IyOTA5NGQ1cDEsCisgICAgMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIC0weDEuYmI5ZDNjNmI4Yzg2ZjAyZDc4ZTNlYmE2ZDQ4YTEzN2FwMSwKKyAgICAweDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgLTB4MS5iYjlkM2JlYjhjODZiMDJkNzhiOTQwZmMwOWRmNjhiNnAxLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAtMHgxLmJiOWQzYWViOGM4N2IwMmQ3NzYzZWJhOGI0OGExMDJkcDEsCisgICAgMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIC0weDEuMGEyYjI0MzNiYWI3NTY4MWFlZWFlMmI5NmI0MWM3NjlwMiwKKyAgICAweDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgLTB4MS4wYTJiMjNmM2JhYjczNjgxYWVkNThkNjQwNWVjNzIwNnAyLAorICAgIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAtMHgxLjBhMmIyMzczYmFiN2I2ODFhZTJhZTJiYTViNDFjNWMycDIsCisgICAgMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEuMzY4N2FhMzFhZjJiMzRlY2ExNjNjZjlmNmMzZTg1MTRwMiwKKyAgICAweDEuZmZmZmZlcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgLTB4MS4zNjg3YTlmMWFmMmIxNGVjYTE0ZTdhNGEwNmU5MmZiMnAyLAorICAgIDB4MS5wLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAtMHgxLjM2ODdhOTcxYWYyYjk0ZWNhMGEzY2ZhMDVjM2U4MzZlcDIsCisgICAgMHgxLjAwMDAwMnAtNworICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIC0weDEuNjJlNDMwMmZhMzlmMTM1NzkzZGNiYzg1NmQzYjQyYzBwMiwKKyAgICAweDEuZmZmZmZlcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAyLAorICAgIDB4MS5wLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAtMHgxLjYyZTQyZjZmYTM5ZjczNTc5MzFjYmM4NjVkM2I0MTFhcDIsCisgICAgMHgxLjAwMDAwMnAtOAorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEuOGY0MGI2MmQ5ODEyZjFjMjg2NTVhOTZiNmUzODAwNmNwMiwKKyAgICAweDEuZmZmZmZlcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIC0weDEuOGY0MGI1ZWQ5ODEyZDFjMjg2NDA1NDE2MDhlMmFiMGFwMiwKKyAgICAweDEucC05CisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS44ZjQwYjU2ZDk4MTM1MWMyODU5NWE5NmM1ZTM3ZmVjNnAyLAorICAgIDB4MS4wMDAwMDJwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAtMHgxLmJiOWQzYzJiOGM4NmQwMmQ3OGNlOTY1MTZmMzRiZTE4cDIsCisgICAgMHgxLmZmZmZmZXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAtMHgxLmJiOWQzYmViOGM4NmIwMmQ3OGI5NDBmYzA5ZGY2OGI2cDIsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAtMHgxLmJiOWQzYjZiOGM4NzMwMmQ3ODBlOTY1MjVmMzRiYzcxcDIsCisgICAgMHgxLjAwMDAwMnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAtMHgxLjIwNTk2NzEyYjRmMTM1YjcyODFjYWU4MWI5MTU3YjhkcDMsCisgICAgMHgxLmZmZmZmZXAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAtMHgxLjIwNTk2NmYyYjRmMTI1YjcyODEyMDNkNzA2NmFkMGRjcDMsCisgICAgMHgxLnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAtMHgxLjIwNTk2NmIyYjRmMTY1YjcyN2JjYWU4MjMxMTU3YWJhcDMsCisgICAgMHgxLjAwMDAwMnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAtMHgxLjIwNTk2NzEyYjRmMTM1YjcyODFjYWU4MWI5MTU3YjhkcDMsCisgICAgMHgxLmZmZmZmZXAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAtMHgxLjIwNTk2NmYyYjRmMTI1YjcyODEyMDNkNzA2NmFkMGRjcDMsCisgICAgMHgxLnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAtMHgxLjIwNTk2NmIyYjRmMTY1YjcyN2JjYWU4MjMxMTU3YWJhcDMsCisgICAgMHgxLjAwMDAwMnAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAtMHgxLjBhMmIyNDczYmFiNzc2ODFhZjAwMzgwZWQwOTcxY2NicDEsCisgICAgMHgxLmZmZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIC0weDEuMGEyYjIzZjNiYWI3MzY4MWFlZDU4ZDY0MDVlYzcyMDZwMSwKKyAgICAweDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgLTB4MS4wYTJiMjJmM2JhYjgzNjgxYWQ4MDM4MTBiMDk3MTk3ZXAxLAorICAgIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAtMHgxLjExNzhmMTQ3MTA5NjFiZWRhZjlmNzk5YTUzYWZjMzNkcC0zLAorICAgIDB4MS5iZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAtMHgxLjExNzhlODIyN2U0N2JkZTMzOGI0MWZjNzJkZTgxZTNicC0zLAorICAgIDB4MS5jMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIC0weDEuMTE3OGRlZmRlYzAzZDJjOTE1NjA0ODk3OTcxYjc2NThwLTMsCisgICAgMHgxLmMwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIC0weDEuNjJlNDMwNmZhMzlmMzM1NzkzZjIxMWRhZDI5MDk4MjJwMSwKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAxLAorICAgIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAtMHgxLjYyZTQyZWVmYTM5ZmYzNTc5MjcyMTFkY2IyOTA5NGQ1cDEsCisgICAgMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIC0weDEuMDg1OTljNmFmNGJhOTNjNjkzYjEzMTIyZjY4MjRhOGJwLTQsCisgICAgMHgxLmRmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIC0weDEuMDg1OThiNTllM2EwNjg4YTNmZDliZjUwMzM3MmMxMmZwLTQsCisgICAgMHgxLmUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgLTB4MS4wODU5N2E0OGQyOTg3MWE0NjQ5ZDBhNjZjY2JkNWVkYnAtNCwKKyAgICAweDEuZTAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgLTB4MS5iYjlkM2M2YjhjODZmMDJkNzhlM2ViYTZkNDhhMTM3YXAxLAorICAgIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAtMHgxLmJiOWQzYmViOGM4NmIwMmQ3OGI5NDBmYzA5ZGY2OGI2cDEsCisgICAgMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIC0weDEuYmI5ZDNhZWI4Yzg3YjAyZDc3NjNlYmE4YjQ4YTEwMmRwMSwKKyAgICAweDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgLTB4MS4wNDE1ZjlhNmI2NjVkN2E3Yjk5NThkN2QyOGY2MmE3NHAtNSwKKyAgICAweDEuZWZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgLTB4MS4wNDE1ZDg5ZTc0NDQ0NzAxNzNjNzVkNGQ4ODg5ZGUwZXAtNSwKKyAgICAweDEuZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAtMHgxLjA0MTViNzk2MzI0NGNmNjU5MTlhNTc4YjJkYWEyOWQ1cC01LAorICAgIDB4MS5mMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAtMHgxLjBhMmIyNDMzYmFiNzU2ODFhZWVhZTJiOTZiNDFjNzY5cDIsCisgICAgMHgxLmZmZmZmZXAtNworICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIC0weDEuMGEyYjIzZjNiYWI3MzY4MWFlZDU4ZDY0MDVlYzcyMDZwMiwKKyAgICAweDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgLTB4MS4wYTJiMjM3M2JhYjdiNjgxYWUyYWUyYmE1YjQxYzVjMnAyLAorICAgIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAtMHgxLjAyMDVhNjhkNDVlNjdlZDAxZTEwZTMyMmJkNDNhMTcwcC02LAorICAgIDB4MS5mN2ZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAtMHgxLjAyMDU2NTg5MzU4NDc0OWYyM2ExMDViOWM3YmI5YTZmcC02LAorICAgIDB4MS5mOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIC0weDEuMDIwNTI0ODUyNTY0NzZhZjZmNGRhYWJkMTM5YjVlNTdwLTYsCisgICAgMHgxLmY4MDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIC0weDEuMzY4N2FhMzFhZjJiMzRlY2ExNjNjZjlmNmMzZTg1MTRwMiwKKyAgICAweDEuZmZmZmZlcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgLTB4MS4zNjg3YTlmMWFmMmIxNGVjYTE0ZTdhNGEwNmU5MmZiMnAyLAorICAgIDB4MS5wLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAtMHgxLjM2ODdhOTcxYWYyYjk0ZWNhMGEzY2ZhMDVjM2U4MzZlcDIsCisgICAgMHgxLjAwMDAwMnAtNworICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIC0weDEuMDEwMWQ4NWE5MjMwMjViNTRjYmFhZTQ5OWQ1ZTQwYmZwLTcsCisgICAgMHgxLmZiZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIC0weDEuMDEwMTU3NTg4ZGU3MTI4Y2NjNWE4MmY5ZGEwMGY0OGJwLTcsCisgICAgMHgxLmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgLTB4MS4wMTAwZDY1NjhhMjAwNTc0NzQ1YjM5ZjBhYWUyNjY4NXAtNywKKyAgICAweDEuZmMwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgLTB4MS42MmU0MzAyZmEzOWYxMzU3OTNkY2JjODU2ZDNiNDJjMHAyLAorICAgIDB4MS5mZmZmZmVwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDIsCisgICAgMHgxLnAtOAorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIC0weDEuNjJlNDJmNmZhMzlmNzM1NzkzMWNiYzg2NWQzYjQxMWFwMiwKKyAgICAweDEuMDAwMDAycC04CisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgLTB4MS4wMDgxNTY5NjhhMzU1YTY4ZjJiZTliMDM1NzcyYzljM3AtOCwKKyAgICAweDEuZmRmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgLTB4MS4wMDgwNTU5NTg4YjM1N2U1OThlMzNkOGQ5ZGIzN2EyOXAtOCwKKyAgICAweDEuZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAtMHgxLjAwN2Y1NDk0ODgzMzU4NjY0NDBkZTdhMWYyMDg0NzM2cC04LAorICAgIDB4MS5mZTAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAtMHgxLjhmNDBiNjJkOTgxMmYxYzI4NjU1YTk2YjZlMzgwMDZjcDIsCisgICAgMHgxLmZmZmZmZXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAtMHgxLjhmNDBiNWVkOTgxMmQxYzI4NjQwNTQxNjA4ZTJhYjBhcDIsCisgICAgMHgxLnAtOQorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuOGY0MGI1NmQ5ODEzNTFjMjg1OTVhOTZjNWUzN2ZlYzZwMiwKKyAgICAweDEuMDAwMDAycC05CisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgLTB4MS4wMDQyMTY1ZGQ5Y2FmZjQxOWIxZWNjZGY3MjBhMzZkMnAtOSwKKyAgICAweDEuZmVmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgLTB4MS4wMDQwMTU1ZDU4ODlkZTcwNjcxZWVlYzBiZmNlZmU1M3AtOSwKKyAgICAweDEuZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAtMHgxLjAwM2UxNDVjZDk0YWJmMjAzM2JmNzFkYzMwMjg1MjBjcC05LAorICAgIDB4MS5mZjAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLmJiOWQzYzJiOGM4NmQwMmQ3OGNlOTY1MTZmMzRiZTE4cDIsCisgICAgMHgxLmZmZmZmZXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAtMHgxLmJiOWQzYmViOGM4NmIwMmQ3OGI5NDBmYzA5ZGY2OGI2cDIsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAtMHgxLmJiOWQzYjZiOGM4NzMwMmQ3ODBlOTY1MjVmMzRiYzcxcDIsCisgICAgMHgxLjAwMDAwMnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAtMHgxLjAwMjQwNjU2OTc5OTk3OTdmMzc3Y2I4NTI3NTAyNDBicC0xMCwKKyAgICAweDEuZmY3ZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgLTB4MS4wMDIwMDU1NjU1ODg5MzM1N2NkN2UxZjQ4NmJkMDcwNXAtMTAsCisgICAgMHgxLmZmODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAtMHgxLjAwMWMwNDU2MTc3OThmOTM0NjRjMDA2N2E3ZWFhZTRmcC0xMCwKKyAgICAweDEuZmY4MDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgLTB4MS4yMDU5NjcxMmI0ZjEzNWI3MjgxY2FlODFiOTE1N2I4ZHAzLAorICAgIDB4MS5mZmZmZmVwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgLTB4MS4yMDU5NjZmMmI0ZjEyNWI3MjgxMjAzZDcwNjZhZDBkY3AzLAorICAgIDB4MS5wLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgLTB4MS4yMDU5NjZiMmI0ZjE2NWI3MjdiY2FlODIzMTE1N2FiYXAzLAorICAgIDB4MS4wMDAwMDJwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgLTB4MS4wMDI0MDExNTZkZDY5OGExNGExOTM4NTdiNmIyZTJiZHAtMTMsCisgICAgMHgxLmZmZWZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIC0weDEuMDAwNDAwMTU1NWQ1NTg4ODlkZGU3MDJiMDI4Yzk5OTZwLTEzLAorICAgIDB4MS5mZmYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgLTB4MS5mZmM3ZmUyYWJiYWMzMTBmZTU0Nzg0MDE1ZDIzYTYxZHAtMTQsCisgICAgMHgxLmZmZjAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuNjJlNDJmZWJhMzllZjE1NzkzYzYxMWRhYjE5MDk4MDhwNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIDB4MS42MmU0MmZlN2EzOWVlYjU3OTNiY2JjODU0ZDNiNDI5YXA2LAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgMHgxLjI1MGQwNTA1ZmVjZTgzZjVmMzMyOGNjMzIyZjY1MTUzcDAsCisgICAgMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgMHgxLmNlNmJiNDM4YjNmYzI5MjhhNTNiNjRhYzdjMGQ2YTkxcC0yLAorICAgIDB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIDB4MS5mZmZmZmUwMDAwMDJhYWFhYTZhYWFhYjExMTExMDY2NnAtMjQsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgMC4wLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIC0weDEuMDAwMDAwODAwMDAwNTU1NTU1OTU1NTU1ODg4ODg4YjNwLTI0LAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAtMHgxLmVlYjk1NzRkMjY4MzdiMGQwNGE2ZDM2NzI3N2NlMDU2cC0zLAorICAgIDB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAtMHgxLjVkNTg5ZjI3ZTUxMDdmOGEzNTZkOWVlOGFkMWJhYWU0cDYsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgLTB4MS41ZDU4OWYyZmU1MTA3NzhhMzU3ODQ5OTM0N2M2NTVhOXA2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIC0weDEuNWQ1ODlmMzdlNTEwN2Y4YTM1ODJmNDNlMDI3MTAwNmRwNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAtMHgxLjVkNTg5ZjNmZTUxMDk3OGEzNWNkOWVlOTlkMWJhZTMxcDYsCisgICAgMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgLTB4MS45YTU3ZDc2ZDE1MmZjOTVkNDJkZThmNGY4OTIxZGE3NXA2LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIC0weDEuOWQxZDlmY2NmNDc3MDc0M2YyMDYxZTFkZTkzMWE2NTBwNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL21vZGZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL21vZGZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlhZjdlMWIKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvbW9kZl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxODU4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMl8xX3Q8ZG91YmxlLCBkb3VibGUsIGRvdWJsZT4gZ19tb2RmX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMHgxLnAtMTA3NCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0yLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEucC0xLAorICAgIDAuMCwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEsCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMC4wLAorICAgIDB4MS5wMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS5wLTUyLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMiwKKyAgICAweDEucDAsCisgICAgMHgxLjdmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLnAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLjhwMAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuODAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDAuMCwKKyAgICAweDEucDEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLnAtNTEsCisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5mZmZmZmZmZmZmZmY4MHAtMiwKKyAgICAweDEucDEsCisgICAgMHgxLjNmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLnAtMSwKKyAgICAweDEucDEsCisgICAgMHgxLjRwMQorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLjAwMDAwMDAwMDAwMDQwcC0xLAorICAgIDB4MS5wMSwKKyAgICAweDEuNDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuZmZmZmZmZmZmZmY4cC0xLAorICAgIDB4MS44Y3A2LAorICAgIDB4MS44ZmZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDAuMCwKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEucC00NiwKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuZmZmZmZmZmZmZmYwcC0yLAorICAgIDB4MS45MHA2LAorICAgIDB4MS45MWZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5wLTEsCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkyMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuMDAwMDAwMDAwMDA4cC0xLAorICAgIDB4MS45MHA2LAorICAgIDB4MS45MjAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS5mZmZmZmZmZmZmYzBwLTEsCisgICAgMHgxLmYzODBwOSwKKyAgICAweDEuZjNmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAwLjAsCisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0MHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEucC00MywKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjQwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuZmZmZmZmZmZmZjgwcC0yLAorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDNmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5wLTEsCisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0NHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuMDAwMDAwMDAwMDQwcC0xLAorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDQwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5jMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmODBwNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDAuMCwKKyAgICAweDEucDUwLAorICAgIDB4MS4wcDUwCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEucC0yLAorICAgIDB4MS5wNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS44MHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmYzBwNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDAuMCwKKyAgICAweDEucDUxLAorICAgIDB4MS4wcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEucC0xLAorICAgIDB4MS5wNTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS5wLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAwLjAsCisgICAgMHgxLnA1MiwKKyAgICAweDEuMHA1MgorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA1MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MgorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MgorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMC4wLAorICAgIDB4MS5wNTMsCisgICAgMHgxLjBwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDAuMCwKKyAgICAweDEucDU0LAorICAgIDB4MS4wcDU0CisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDU0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDU0CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMSwKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgLTB4MS5wLTEsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTIsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIC0weDEucC01MiwKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAtMC4wLAorICAgIC0weDEucDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEuMDAwMDAwMDAwMDAwMjBwLTEsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjgwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgLTB4MS5wLTEsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjhwMAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHAtMiwKKyAgICAtMHgxLnAwLAorICAgIC0weDEuN2ZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLnAtNTEsCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgLTAuMCwKKyAgICAtMHgxLnAxLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xLAorICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIC0weDEuMDAwMDAwMDAwMDAwNDBwLTEsCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjQwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgLTB4MS5wLTEsCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjRwMQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgLTB4MS5mZmZmZmZmZmZmZmY4MHAtMiwKKyAgICAtMHgxLnAxLAorICAgIC0weDEuM2ZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLnAtNDYsCisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAtMC4wLAorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjlwNgorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS5mZmZmZmZmZmZmZjhwLTEsCisgICAgLTB4MS44Y3A2LAorICAgIC0weDEuOGZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAtMHgxLjAwMDAwMDAwMDAwOHAtMSwKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS45MjAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEucC0xLAorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkyMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAtMHgxLmZmZmZmZmZmZmZmMHAtMiwKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS45MWZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEucC00MywKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDAwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIC0wLjAsCisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEuZmZmZmZmZmZmZmMwcC0xLAorICAgIC0weDEuZjM4MHA5LAorICAgIC0weDEuZjNmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAtMHgxLjAwMDAwMDAwMDA0MHAtMSwKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDQwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIC0weDEucC0xLAorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0NHA5CisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAtMHgxLmZmZmZmZmZmZmY4MHAtMiwKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDNmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIC0weDEucC0yLAorICAgIC0weDEucDUwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MAorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTAuMCwKKyAgICAtMHgxLnA1MCwKKyAgICAtMHgxLjBwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuYzBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmY4MHA0OSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIC0weDEucC0xLAorICAgIC0weDEucDUxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTAuMCwKKyAgICAtMHgxLnA1MSwKKyAgICAtMHgxLjBwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEuODBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHA1MCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA1MiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0wLjAsCisgICAgLTB4MS5wNTIsCisgICAgLTB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDUxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MQorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDUzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MworICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTAuMCwKKyAgICAtMHgxLnA1MywKKyAgICAtMHgxLjBwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA1MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA1NCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIC0wLjAsCisgICAgLTB4MS5wNTQsCisgICAgLTB4MS4wcDU0CisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwNTMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUzCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLmZmZmZmY3AtMSwKKyAgICAweDEuZmZmZmZmZjhwMjksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDAuMCwKKyAgICAweDEucDMwLAorICAgIDB4MS4wcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEucC0yMiwKKyAgICAweDEucDMwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZmZmZmU4cC0xLAorICAgIDB4MS5mZmZmZmZmNHAzMCwKKyAgICAweDEuZmZmZmZmZjdmZmZmZHAzMAorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLmZmZmZmMHAtMSwKKyAgICAweDEuZmZmZmZmZjRwMzAsCisgICAgMHgxLmZmZmZmZmY3ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5mZmZmZjhwLTEsCisgICAgMHgxLmZmZmZmZmY0cDMwLAorICAgIDB4MS5mZmZmZmZmN2ZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5wLTIyLAorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjgwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLnAtMjEsCisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuODBwLTIxLAorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjgwMDAwM3AzMAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmZmZmZkMHAtMiwKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmY5ZmZmZmRwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuZmZmZmUwcC0yLAorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjlmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS5mZmZmZjBwLTIsCisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmOWZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLnAtMSwKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmZhMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS4wMDAwMDhwLTEsCisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmYTAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjAwMDAxMHAtMSwKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmZhMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEuMDAwMDE4cC0xLAorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZmEwMDAwM3AzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5mZmZmZThwLTEsCisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmYmZmZmZkcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLmZmZmZmMHAtMSwKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmZiZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuZmZmZmY4cC0xLAorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZmJmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS5wLTIyLAorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS5wLTIxLAorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS44MHAtMjEsCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYzAwMDAzcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLmZmZmZkMHAtMiwKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZkZmZmZmRwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuZmZmZmUwcC0yLAorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmRmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS5mZmZmZjBwLTIsCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmZGZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLnAtMSwKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZlMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS4wMDAwMDhwLTEsCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmZTAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjAwMDAxMHAtMSwKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZlMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEuMDAwMDE4cC0xLAorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmUwMDAwM3AzMAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS5mZmZmZThwLTEsCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZkcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLmZmZmZmMHAtMSwKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEuZmZmZmY4cC0xLAorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDAuMCwKKyAgICAweDEucDMxLAorICAgIDB4MS4wcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLnAtMjEsCisgICAgMHgxLnAzMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDB4MS5wLTIwLAorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuODBwLTIwLAorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDNwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEuZmZmZmEwcC0yLAorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAwZmZmZmRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuZmZmZmMwcC0yLAorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAwZmZmZmVwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuZmZmZmUwcC0yLAorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAwZmZmZmZwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEucC0xLAorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAxMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS4wMDAwMTBwLTEsCisgICAgMHgxLnAzMSwKKyAgICAweDEuMDAwMDAwMDEwMDAwMXAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS4wMDAwMjBwLTEsCisgICAgMHgxLnAzMSwKKyAgICAweDEuMDAwMDAwMDEwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIDB4MS4wMDAwMzBwLTEsCisgICAgMHgxLnAzMSwKKyAgICAweDEuMDAwMDAwMDEwMDAwM3AzMQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZTBwMzAsCisgICAgMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmU0cDMwLAorICAgIDB4MS5mZmZmZmZlNDBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmU4cDMwLAorICAgIDB4MS5mZmZmZmZlODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmVjcDMwLAorICAgIDB4MS5mZmZmZmZlYzBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmYwcDMwLAorICAgIDB4MS5mZmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmNHAzMCwKKyAgICAweDEuZmZmZmZmZjQwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjgwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMC4wLAorICAgIDB4MS5wMzEsCisgICAgMHgxLjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDAwMjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAtMHgxLnAtMjIsCisgICAgLTB4MS5wMzAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTAuMCwKKyAgICAtMHgxLnAzMCwKKyAgICAtMHgxLjBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLmZmZmZmY3AtMSwKKyAgICAtMHgxLmZmZmZmZmY4cDI5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyOQorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEuODBwLTIxLAorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmODAwMDAzcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS5wLTIxLAorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmODAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS5wLTIyLAorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmODAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZjgwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS5mZmZmZjhwLTEsCisgICAgLTB4MS5mZmZmZmZmNHAzMCwKKyAgICAtMHgxLmZmZmZmZmY3ZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLmZmZmZmMHAtMSwKKyAgICAtMHgxLmZmZmZmZmY0cDMwLAorICAgIC0weDEuZmZmZmZmZjdmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuZmZmZmU4cC0xLAorICAgIC0weDEuZmZmZmZmZjRwMzAsCisgICAgLTB4MS5mZmZmZmZmN2ZmZmZkcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTB4MS4wMDAwMThwLTEsCisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmZhMDAwMDNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLjAwMDAxMHAtMSwKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZmEwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEuMDAwMDA4cC0xLAorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmYTAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS5wLTEsCisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmZhMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIC0weDEuZmZmZmYwcC0yLAorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmOWZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTB4MS5mZmZmZTBwLTIsCisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmY5ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAtMHgxLmZmZmZkMHAtMiwKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZjlmZmZmZHAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0weDEuODBwLTIxLAorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYzAwMDAzcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgLTB4MS5wLTIxLAorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYzAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS5wLTIyLAorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYzAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmMwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS5mZmZmZjhwLTEsCisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmZiZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtMHgxLmZmZmZmMHAtMSwKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZmJmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0weDEuZmZmZmU4cC0xLAorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmYmZmZmZkcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgLTB4MS4wMDAwMThwLTEsCisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZlMDAwMDNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLjAwMDAxMHAtMSwKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmUwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIC0weDEuMDAwMDA4cC0xLAorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmZTAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS5wLTEsCisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZlMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIC0weDEuZmZmZmYwcC0yLAorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmZGZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS5mZmZmZTBwLTIsCisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZkZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLmZmZmZkMHAtMiwKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmRmZmZmZHAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIC0weDEuODBwLTIwLAorICAgIC0weDEucDMxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwM3AzMQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIC0weDEucC0yMCwKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLnAtMjEsCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgLTAuMCwKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAtMHgxLmZmZmZmOHAtMSwKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIC0weDEuZmZmZmYwcC0xLAorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTB4MS5mZmZmZThwLTEsCisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAtMHgxLjAwMDAzMHAtMSwKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAxMDAwMDNwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAtMHgxLjAwMDAyMHAtMSwKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAxMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAtMHgxLjAwMDAxMHAtMSwKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAxMDAwMDFwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLnAtMSwKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAxMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIC0weDEuZmZmZmUwcC0yLAorICAgIC0weDEucDMxLAorICAgIC0weDEuMDAwMDAwMDBmZmZmZnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuZmZmZmMwcC0yLAorICAgIC0weDEucDMxLAorICAgIC0weDEuMDAwMDAwMDBmZmZmZXAzMQorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIC0weDEuZmZmZmEwcC0yLAorICAgIC0weDEucDMxLAorICAgIC0weDEuMDAwMDAwMDBmZmZmZHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmQwcDYxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZkcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHA2MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA2MQorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNjEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAwLjAsCisgICAgMHgxLnA2MiwKKyAgICAweDEuMHA2MgorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcDYyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAzMHA2MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwM3A2MgorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZDBwNjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmRwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDYyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA2MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2MgorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDAuMCwKKyAgICAweDEucDYzLAorICAgIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA2MywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2MworICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMjBwNjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDMwcDYzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAzcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZkMHA2MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZHA2MworICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwNjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDYzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMC4wLAorICAgIDB4MS5wNjQsCisgICAgMHgxLjBwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDY0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAyMHA2NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMzBwNjQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDNwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMzBwNjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAzcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDIwcDYyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnA2MgorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA2MiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMC4wLAorICAgIC0weDEucDYyLAorICAgIC0weDEuMHA2MgorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA2MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwNjEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwcDYxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZHA2MQorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAzMHA2MywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDNwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMjBwNjMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDYzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2MworICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIC0wLjAsCisgICAgLTB4MS5wNjMsCisgICAgLTB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDYyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2MgorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHA2MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZDBwNjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDMwcDY0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwM3A2NAorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAyMHA2NCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwNjQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTAuMCwKKyAgICAtMHgxLnA2NCwKKyAgICAtMHgxLjBwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwNjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDYzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXA2MworICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMHA2MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAwLjAsCisgICAgMHgxLnA2MiwKKyAgICAweDEuMHA2MgorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDAuMCwKKyAgICAweDEuNDBwNjIsCisgICAgMHgxLjRwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAwLjAsCisgICAgMHgxLjgwcDYyLAorICAgIDB4MS44cDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMC4wLAorICAgIDB4MS5jMHA2MiwKKyAgICAweDEuY3A2MgorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDAuMCwKKyAgICAweDEucDYzLAorICAgIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgMC4wLAorICAgIDB4MS5wNjMsCisgICAgMHgxLjBwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAwLjAsCisgICAgMHgxLjQwcDYzLAorICAgIDB4MS40cDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMC4wLAorICAgIDB4MS44MHA2MywKKyAgICAweDEuOHA2MworICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDAuMCwKKyAgICAweDEuYzBwNjMsCisgICAgMHgxLmNwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAwLjAsCisgICAgMHgxLnA2NCwKKyAgICAweDEuMHA2NAorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIC0wLjAsCisgICAgLTB4MS5wNjIsCisgICAgLTB4MS4wcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgLTAuMCwKKyAgICAtMHgxLjQwcDYyLAorICAgIC0weDEuNHA2MgorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIC0wLjAsCisgICAgLTB4MS44MHA2MiwKKyAgICAtMHgxLjhwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAtMC4wLAorICAgIC0weDEuYzBwNjIsCisgICAgLTB4MS5jcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgLTAuMCwKKyAgICAtMHgxLnA2MywKKyAgICAtMHgxLjBwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAtMC4wLAorICAgIC0weDEucDYzLAorICAgIC0weDEuMHA2MworICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIC0wLjAsCisgICAgLTB4MS40MHA2MywKKyAgICAtMHgxLjRwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAtMC4wLAorICAgIC0weDEuODBwNjMsCisgICAgLTB4MS44cDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgLTAuMCwKKyAgICAtMHgxLmMwcDYzLAorICAgIC0weDEuY3A2MworICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIC0wLjAsCisgICAgLTB4MS5wNjQsCisgICAgLTB4MS4wcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLmZmZmZmOHAtMSwKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmZiZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYzBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEucC0yMiwKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAtMHgxLnAtMjEsCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgLTAuMCwKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAtMHgxLmZmZmZmOHAtMSwKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMSwKKyAgICAweDEuODBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMC4wLAorICAgIDB4MS5wMiwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgMHgxLnAtNTAsCisgICAgMHgxLnAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuZmZmZmZmZmZmZmZmODBwLTEsCisgICAgMHgxLmMwcDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDAuMCwKKyAgICAweDEucDMsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS5wLTQ5LAorICAgIDB4MS5wMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZTBwMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMC4wLAorICAgIDB4MS5wNCwKKyAgICAweDEuMHA0CisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLnAtNDgsCisgICAgMHgxLnA0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuZmZmZmZmZmZmZmZlcC0xLAorICAgIDB4MS5mMHA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAwLjAsCisgICAgMHgxLnA1LAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEucC00NywKKyAgICAweDEucDUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS5mZmZmZmZmZmZmZmNwLTEsCisgICAgMHgxLmY4cDUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIDAuMCwKKyAgICAweDEucDYsCisgICAgMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS5wLTQ2LAorICAgIDB4MS5wNiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLmZmZmZmZmZmZmZmOHAtMSwKKyAgICAweDEuZmNwNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMC4wLAorICAgIDB4MS5wNywKKyAgICAweDEuMHA3CisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLnAtNDUsCisgICAgMHgxLnA3LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAweDEuZmZmZmZmZmZmZmYwcC0xLAorICAgIDB4MS5mZXA3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAwLjAsCisgICAgMHgxLnA4LAorICAgIDB4MS4wcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEucC00NCwKKyAgICAweDEucDgsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwOAorICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDB4MS5mZmZmZmZmZmZmZTBwLTEsCisgICAgMHgxLmZmcDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIDAuMCwKKyAgICAweDEucDksCisgICAgMHgxLjBwOQorICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS5wLTQzLAorICAgIDB4MS5wOSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLmZmZmZmZmZmZmZjMHAtMSwKKyAgICAweDEuZmY4MHA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAwLjAsCisgICAgMHgxLnAxMCwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDB4MS5wLTQyLAorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEuZmZmZmZmZmZmZjgwcC0xLAorICAgIDB4MS5mZmMwcDEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgMC4wLAorICAgIDB4MS5wMTEsCisgICAgMHgxLjBwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEucC00MSwKKyAgICAweDEucDExLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgMHgxLmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZTBwMTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAwLjAsCisgICAgMHgxLnAxMiwKKyAgICAweDEuMHAxMgorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS5wLTQwLAorICAgIDB4MS5wMTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuZmZmZmZmZmZmZmZmcC0yLAorICAgIDB4MS5wMiwKKyAgICAweDEuMWZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgMHgxLnAtMSwKKyAgICAweDEucDIsCisgICAgMHgxLjJwMgorICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIDB4MS4wMDAwMDAwMDAwMDA4MHAtMSwKKyAgICAweDEucDIsCisgICAgMHgxLjIwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIDB4MS5mZmZmZmZmZmZmZmVwLTIsCisgICAgMHgxLnAzLAorICAgIDB4MS4wZmZmZmZmZmZmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEucC0xLAorICAgIDB4MS5wMywKKyAgICAweDEuMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgMHgxLjAwMDAwMDAwMDAwMXAtMSwKKyAgICAweDEucDMsCisgICAgMHgxLjEwMDAwMDAwMDAwMDFwMworICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDB4MS5mZmZmZmZmZmZmZmNwLTIsCisgICAgMHgxLnA0LAorICAgIDB4MS4wN2ZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAweDEucC0xLAorICAgIDB4MS5wNCwKKyAgICAweDEuMDgwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuMDAwMDAwMDAwMDAycC0xLAorICAgIDB4MS5wNCwKKyAgICAweDEuMDgwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgMHgxLmZmZmZmZmZmZmZmOHAtMiwKKyAgICAweDEucDUsCisgICAgMHgxLjAzZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIDB4MS5wLTEsCisgICAgMHgxLnA1LAorICAgIDB4MS4wNDBwNQorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIDB4MS4wMDAwMDAwMDAwMDRwLTEsCisgICAgMHgxLnA1LAorICAgIDB4MS4wNDAwMDAwMDAwMDAxcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuZmZmZmZmZmZmZmYwcC0yLAorICAgIDB4MS5wNiwKKyAgICAweDEuMDFmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgMHgxLnAtMSwKKyAgICAweDEucDYsCisgICAgMHgxLjAyMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLjAwMDAwMDAwMDAwOHAtMSwKKyAgICAweDEucDYsCisgICAgMHgxLjAyMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIDB4MS5mZmZmZmZmZmZmZTBwLTIsCisgICAgMHgxLnA3LAorICAgIDB4MS4wMGZmZmZmZmZmZmZmcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAweDEucC0xLAorICAgIDB4MS5wNywKKyAgICAweDEuMDEwcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAweDEuMDAwMDAwMDAwMDEwcC0xLAorICAgIDB4MS5wNywKKyAgICAweDEuMDEwMDAwMDAwMDAwMXA3CisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMHgxLmZmZmZmZmZmZmZjMHAtMiwKKyAgICAweDEucDgsCisgICAgMHgxLjAwN2ZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIDB4MS5wLTEsCisgICAgMHgxLnA4LAorICAgIDB4MS4wMDhwOAorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDB4MS4wMDAwMDAwMDAwMjBwLTEsCisgICAgMHgxLnA4LAorICAgIDB4MS4wMDgwMDAwMDAwMDAxcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEuZmZmZmZmZmZmZjgwcC0yLAorICAgIDB4MS5wOSwKKyAgICAweDEuMDAzZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgMHgxLnAtMSwKKyAgICAweDEucDksCisgICAgMHgxLjAwNHA5CisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgMHgxLjAwMDAwMDAwMDA0MHAtMSwKKyAgICAweDEucDksCisgICAgMHgxLjAwNDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIDB4MS5mZmZmZmZmZmZmcC0yLAorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMWZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEucC0xLAorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS4wMDAwMDAwMDAwODBwLTEsCisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAyMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIDB4MS5mZmZmZmZmZmZmcC0yLAorICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS4wMDVmZmZmZmZmZmZmcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgMHgxLnAtMSwKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDA2cDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgMHgxLjAwMDAwMDAwMDA4MHAtMSwKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDA2MDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS5mZmZmZmZmZmZlcC0yLAorICAgIDB4MS5wMTEsCisgICAgMHgxLjAwMGZmZmZmZmZmZmZwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAweDEucC0xLAorICAgIDB4MS5wMTEsCisgICAgMHgxLjAwMXAxMQorICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIDB4MS4wMDAwMDAwMDAxcC0xLAorICAgIDB4MS5wMTEsCisgICAgMHgxLjAwMTAwMDAwMDAwMDFwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAweDEuZmZmZmZmZmZmY3AtMiwKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDA3ZmZmZmZmZmZmcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLnAtMSwKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDA4MHAxMgorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIDB4MS4wMDAwMDAwMDAycC0xLAorICAgIDB4MS5wMTIsCisgICAgMHgxLjAwMDgwMDAwMDAwMDFwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAwLjAsCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAtMC4wLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS4yMWZiNTQ0NDJkMThwLTMsCisgICAgMHgxLjgwcDEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIC0weDEuMjFmYjU0NDQyZDE4cC0zLAorICAgIC0weDEuODBwMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDM0NAorICAgIDB4MS4yNDNmNmE4ODg1YTNwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAtMHgxLjI0M2Y2YTg4ODVhM3AtMSwKKyAgICAtMHgxLnAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMHgxLnAtNTIsCisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAtMHgxLnAtNTIsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDAuMCwKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM0OQorICAgIC0wLjAsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLjkyMWZiNTQ0NDJkMTgwcC0xLAorICAgIDAuMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIC0weDEuOTIxZmI1NDQ0MmQxODBwLTEsCisgICAgLTAuMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEwMjIsCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzU1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIDB4MS5wLTEwMjIsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzU5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyMywKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIzLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgMHgxLnAtMTA3MywKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAtMHgxLnAtMTA3MywKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIDB4MS5wLTEwNzQsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvbW9kZmZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL21vZGZmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMjhmNWM5Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL21vZGZmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDE4NTggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8yXzFfdDxmbG9hdCwgZmxvYXQsIGZsb2F0PiBnX21vZGZmX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEucC0xLAorICAgIDAuMCwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS4wMDAwMDJwLTEsCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAwLjAsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEucC0yMywKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS5mZmZmZjhwLTIsCisgICAgMHgxLnAwLAorICAgIDB4MS43ZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLnAtMSwKKyAgICAweDEucDAsCisgICAgMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS4wMDAwMDRwLTEsCisgICAgMHgxLnAwLAorICAgIDB4MS44MDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLmZmZmZmY3AtMSwKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAwLjAsCisgICAgMHgxLnAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLnAtMjIsCisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLmZmZmZmMHAtMiwKKyAgICAweDEucDEsCisgICAgMHgxLjNmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEucC0xLAorICAgIDB4MS5wMSwKKyAgICAweDEuNDBwMQorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLjAwMDAwOHAtMSwKKyAgICAweDEucDEsCisgICAgMHgxLjQwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuZmZmZnAtMSwKKyAgICAweDEuOGNwNiwKKyAgICAweDEuOGZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDAuMCwKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTBwNgorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLnAtMTcsCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuZmZmZXAtMiwKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTFmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5wLTEsCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS4wMDAxcC0xLAorICAgIDB4MS45MHA2LAorICAgIDB4MS45MjAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLmZmZjhwLTEsCisgICAgMHgxLmYzODBwOSwKKyAgICAweDEuZjNmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDAuMCwKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjRwOQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLnAtMTQsCisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0MDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuZmZmMHAtMiwKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjQzZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5wLTEsCisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0NDBwOQorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLjAwMDhwLTEsCisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0NDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuYzBwLTEsCisgICAgMHgxLmZmZmZmMHAyMCwKKyAgICAweDEuZmZmZmZlcDIwCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAwLjAsCisgICAgMHgxLnAyMSwKKyAgICAweDEucDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEucC0yLAorICAgIDB4MS5wMjEsCisgICAgMHgxLjAwMDAwMnAyMQorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLjgwcC0xLAorICAgIDB4MS5mZmZmZjhwMjEsCisgICAgMHgxLmZmZmZmZXAyMQorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMC4wLAorICAgIDB4MS5wMjIsCisgICAgMHgxLnAyMgorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLnAtMSwKKyAgICAweDEucDIyLAorICAgIDB4MS4wMDAwMDJwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS5wLTEsCisgICAgMHgxLmZmZmZmY3AyMiwKKyAgICAweDEuZmZmZmZlcDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAwLjAsCisgICAgMHgxLnAyMywKKyAgICAweDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEuMDAwMDAycDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAyMywKKyAgICAweDEuZmZmZmZlcDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAwLjAsCisgICAgMHgxLnAyNCwKKyAgICAweDEucDI0CisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAyNCwKKyAgICAweDEuMDAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAyNCwKKyAgICAweDEuZmZmZmZlcDI0CisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAwLjAsCisgICAgMHgxLnAyNSwKKyAgICAweDEucDI1CisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAyNSwKKyAgICAweDEuMDAwMDAycDI1CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIC0weDEuMDAwMDAycC0xLAorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0weDEucC0xLAorICAgIC0wLjAsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIC0weDEuZmZmZmZlcC0yLAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIC0weDEucC0yMywKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0wLjAsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAtMHgxLjAwMDAwNHAtMSwKKyAgICAtMHgxLnAwLAorICAgIC0weDEuODAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEucC0xLAorICAgIC0weDEucDAsCisgICAgLTB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAtMHgxLmZmZmZmOHAtMiwKKyAgICAtMHgxLnAwLAorICAgIC0weDEuN2ZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEucC0yMiwKKyAgICAtMHgxLnAxLAorICAgIC0weDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIC0wLjAsCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLmZmZmZmY3AtMSwKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIC0weDEuMDAwMDA4cC0xLAorICAgIC0weDEucDEsCisgICAgLTB4MS40MDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgLTB4MS5wLTEsCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjQwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEuZmZmZmYwcC0yLAorICAgIC0weDEucDEsCisgICAgLTB4MS4zZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgLTB4MS5wLTE3LAorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAtMC4wLAorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIC0weDEuZmZmZnAtMSwKKyAgICAtMHgxLjhjcDYsCisgICAgLTB4MS44ZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgLTB4MS4wMDAxcC0xLAorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkyMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAtMHgxLnAtMSwKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS45MnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAtMHgxLmZmZmVwLTIsCisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTFmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEucC0xNCwKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDAwMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgLTAuMCwKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNHA5CisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAtMHgxLmZmZjhwLTEsCisgICAgLTB4MS5mMzgwcDksCisgICAgLTB4MS5mM2ZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgLTB4MS4wMDA4cC0xLAorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0NDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLnAtMSwKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuZmZmMHAtMiwKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDNmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS5wLTIsCisgICAgLTB4MS5wMjEsCisgICAgLTB4MS4wMDAwMDJwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIC0wLjAsCisgICAgLTB4MS5wMjEsCisgICAgLTB4MS5wMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuYzBwLTEsCisgICAgLTB4MS5mZmZmZjBwMjAsCisgICAgLTB4MS5mZmZmZmVwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIC0weDEucC0xLAorICAgIC0weDEucDIyLAorICAgIC0weDEuMDAwMDAycDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMC4wLAorICAgIC0weDEucDIyLAorICAgIC0weDEucDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAtMHgxLjgwcC0xLAorICAgIC0weDEuZmZmZmY4cDIxLAorICAgIC0weDEuZmZmZmZlcDIxCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAycDIzLAorICAgIC0weDEuMDAwMDAycDIzCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAtMC4wLAorICAgIC0weDEucDIzLAorICAgIC0weDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLnAtMSwKKyAgICAtMHgxLmZmZmZmY3AyMiwKKyAgICAtMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAtMHgxLjAwMDAwMnAyNAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTAuMCwKKyAgICAtMHgxLnAyNCwKKyAgICAtMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAyMywKKyAgICAtMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnAyNSwKKyAgICAtMHgxLjAwMDAwMnAyNQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTAuMCwKKyAgICAtMHgxLnAyNSwKKyAgICAtMHgxLnAyNQorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAyNCwKKyAgICAtMHgxLmZmZmZmZXAyNAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAyOSwKKyAgICAweDEuZmZmZmZlcDI5CisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAwLjAsCisgICAgMHgxLnAzMCwKKyAgICAweDEucDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAzMCwKKyAgICAweDEuMDAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmYXAzMCwKKyAgICAweDEuZmZmZmZhcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAzMCwKKyAgICAweDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAwLjAsCisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwNHAzMSwKKyAgICAweDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwNnAzMSwKKyAgICAweDEuMDAwMDA2cDMxCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmYXAzMCwKKyAgICAweDEuZmZmZmZhcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAwLjAsCisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDAuMCwKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwNnAzMSwKKyAgICAweDEuMDAwMDA2cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmFwMzAsCisgICAgMHgxLmZmZmZmYXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDAuMCwKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAzMCwKKyAgICAweDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMC4wLAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDAuMCwKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwNHAzMSwKKyAgICAweDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDZwMzEsCisgICAgMHgxLjAwMDAwNnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDAuMCwKKyAgICAweDEuZmZmZmZhcDMwLAorICAgIDB4MS5mZmZmZmFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDAuMCwKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDAuMCwKKyAgICAweDEuMDAwMDA2cDMxLAorICAgIDB4MS4wMDAwMDZwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmYXAzMCwKKyAgICAweDEuZmZmZmZhcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAwLjAsCisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDAuMCwKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwNnAzMSwKKyAgICAweDEuMDAwMDA2cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmFwMzAsCisgICAgMHgxLmZmZmZmYXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAzMCwKKyAgICAweDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMC4wLAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwNHAzMSwKKyAgICAweDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDZwMzEsCisgICAgMHgxLjAwMDAwNnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDAuMCwKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAwLjAsCisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMC4wLAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDAuMCwKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAwLjAsCisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMC4wLAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDAuMCwKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAwLjAsCisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMC4wLAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDAuMCwKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAycDMwLAorICAgIC0weDEuMDAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTAuMCwKKyAgICAtMHgxLnAzMCwKKyAgICAtMHgxLnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMjksCisgICAgLTB4MS5mZmZmZmVwMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDA2cDMxLAorICAgIC0weDEuMDAwMDA2cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMC4wLAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZhcDMwLAorICAgIC0weDEuZmZmZmZhcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwNnAzMSwKKyAgICAtMHgxLjAwMDAwNnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTAuMCwKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmYXAzMCwKKyAgICAtMHgxLmZmZmZmYXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDZwMzEsCisgICAgLTB4MS4wMDAwMDZwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIC0wLjAsCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmFwMzAsCisgICAgLTB4MS5mZmZmZmFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDA2cDMxLAorICAgIC0weDEuMDAwMDA2cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMC4wLAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZhcDMwLAorICAgIC0weDEuZmZmZmZhcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwNnAzMSwKKyAgICAtMHgxLjAwMDAwNnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgLTAuMCwKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmYXAzMCwKKyAgICAtMHgxLmZmZmZmYXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDZwMzEsCisgICAgLTB4MS4wMDAwMDZwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0wLjAsCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmFwMzAsCisgICAgLTB4MS5mZmZmZmFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAtMC4wLAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTAuMCwKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0wLjAsCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMC4wLAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTAuMCwKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0wLjAsCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMC4wLAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgLTAuMCwKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0wLjAsCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAtMC4wLAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmFwNjEsCisgICAgMHgxLmZmZmZmYXA2MQorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZjcDYxLAorICAgIDB4MS5mZmZmZmNwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXA2MSwKKyAgICAweDEuZmZmZmZlcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMC4wLAorICAgIDB4MS5wNjIsCisgICAgMHgxLnA2MgorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDAuMCwKKyAgICAweDEuMDAwMDAycDYyLAorICAgIDB4MS4wMDAwMDJwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwNHA2MiwKKyAgICAweDEuMDAwMDA0cDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDZwNjIsCisgICAgMHgxLjAwMDAwNnA2MgorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZhcDYyLAorICAgIDB4MS5mZmZmZmFwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmY3A2MiwKKyAgICAweDEuZmZmZmZjcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwNjIsCisgICAgMHgxLmZmZmZmZXA2MgorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDAuMCwKKyAgICAweDEucDYzLAorICAgIDB4MS5wNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnA2MywKKyAgICAweDEuMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDRwNjMsCisgICAgMHgxLjAwMDAwNHA2MworICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDAuMCwKKyAgICAweDEuMDAwMDA2cDYzLAorICAgIDB4MS4wMDAwMDZwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmYXA2MywKKyAgICAweDEuZmZmZmZhcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmNwNjMsCisgICAgMHgxLmZmZmZmY3A2MworICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDYzLAorICAgIDB4MS5mZmZmZmVwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAwLjAsCisgICAgMHgxLnA2NCwKKyAgICAweDEucDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwNjQsCisgICAgMHgxLjAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDAuMCwKKyAgICAweDEuMDAwMDA0cDY0LAorICAgIDB4MS4wMDAwMDRwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwNnA2NCwKKyAgICAweDEuMDAwMDA2cDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwNnA2MiwKKyAgICAtMHgxLjAwMDAwNnA2MgorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDRwNjIsCisgICAgLTB4MS4wMDAwMDRwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAycDYyLAorICAgIC0weDEuMDAwMDAycDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgLTAuMCwKKyAgICAtMHgxLnA2MiwKKyAgICAtMHgxLnA2MgorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwNjEsCisgICAgLTB4MS5mZmZmZmVwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZjcDYxLAorICAgIC0weDEuZmZmZmZjcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmYXA2MSwKKyAgICAtMHgxLmZmZmZmYXA2MQorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDZwNjMsCisgICAgLTB4MS4wMDAwMDZwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDA0cDYzLAorICAgIC0weDEuMDAwMDA0cDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnA2MywKKyAgICAtMHgxLjAwMDAwMnA2MworICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIC0wLjAsCisgICAgLTB4MS5wNjMsCisgICAgLTB4MS5wNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDYyLAorICAgIC0weDEuZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmY3A2MiwKKyAgICAtMHgxLmZmZmZmY3A2MgorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmFwNjIsCisgICAgLTB4MS5mZmZmZmFwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDA2cDY0LAorICAgIC0weDEuMDAwMDA2cDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwNHA2NCwKKyAgICAtMHgxLjAwMDAwNHA2NAorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDJwNjQsCisgICAgLTB4MS4wMDAwMDJwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAtMC4wLAorICAgIC0weDEucDY0LAorICAgIC0weDEucDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXA2MywKKyAgICAtMHgxLmZmZmZmZXA2MworICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmNwNjMsCisgICAgLTB4MS5mZmZmZmNwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZhcDYzLAorICAgIC0weDEuZmZmZmZhcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMC4wLAorICAgIDB4MS5wNjIsCisgICAgMHgxLnA2MgorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDAuMCwKKyAgICAweDEuNDBwNjIsCisgICAgMHgxLjQwcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgMC4wLAorICAgIDB4MS44MHA2MiwKKyAgICAweDEuODBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAwLjAsCisgICAgMHgxLmMwcDYyLAorICAgIDB4MS5jMHA2MgorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDAuMCwKKyAgICAweDEucDYzLAorICAgIDB4MS5wNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAwLjAsCisgICAgMHgxLnA2MywKKyAgICAweDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMC4wLAorICAgIDB4MS40MHA2MywKKyAgICAweDEuNDBwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAwLjAsCisgICAgMHgxLjgwcDYzLAorICAgIDB4MS44MHA2MworICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDAuMCwKKyAgICAweDEuYzBwNjMsCisgICAgMHgxLmMwcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMC4wLAorICAgIDB4MS5wNjQsCisgICAgMHgxLnA2NAorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIC0wLjAsCisgICAgLTB4MS5wNjIsCisgICAgLTB4MS5wNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAtMC4wLAorICAgIC0weDEuNDBwNjIsCisgICAgLTB4MS40MHA2MgorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIC0wLjAsCisgICAgLTB4MS44MHA2MiwKKyAgICAtMHgxLjgwcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgLTAuMCwKKyAgICAtMHgxLmMwcDYyLAorICAgIC0weDEuYzBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAtMC4wLAorICAgIC0weDEucDYzLAorICAgIC0weDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgLTAuMCwKKyAgICAtMHgxLnA2MywKKyAgICAtMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIC0wLjAsCisgICAgLTB4MS40MHA2MywKKyAgICAtMHgxLjQwcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgLTAuMCwKKyAgICAtMHgxLjgwcDYzLAorICAgIC0weDEuODBwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAtMC4wLAorICAgIC0weDEuYzBwNjMsCisgICAgLTB4MS5jMHA2MworICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIC0wLjAsCisgICAgLTB4MS5wNjQsCisgICAgLTB4MS5wNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDAuMCwKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgLTAuMCwKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuZmZmZmY4cC0xLAorICAgIDB4MS44MHAxLAorICAgIDB4MS5mZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDAuMCwKKyAgICAweDEucDIsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgMHgxLnAtMjEsCisgICAgMHgxLnAyLAorICAgIDB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS5mZmZmZjBwLTEsCisgICAgMHgxLmMwcDIsCisgICAgMHgxLmZmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMC4wLAorICAgIDB4MS5wMywKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEucC0yMCwKKyAgICAweDEucDMsCisgICAgMHgxLjAwMDAwMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLmZmZmZlMHAtMSwKKyAgICAweDEuZTBwMywKKyAgICAweDEuZmZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAwLjAsCisgICAgMHgxLnA0LAorICAgIDB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS5wLTE5LAorICAgIDB4MS5wNCwKKyAgICAweDEuMDAwMDAycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuZmZmZmMwcC0xLAorICAgIDB4MS5mMHA0LAorICAgIDB4MS5mZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIDAuMCwKKyAgICAweDEucDUsCisgICAgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLnAtMTgsCisgICAgMHgxLnA1LAorICAgIDB4MS4wMDAwMDJwNQorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS5mZmZmODBwLTEsCisgICAgMHgxLmY4cDUsCisgICAgMHgxLmZmZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMC4wLAorICAgIDB4MS5wNiwKKyAgICAweDEucDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEucC0xNywKKyAgICAweDEucDYsCisgICAgMHgxLjAwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLmZmZmZwLTEsCisgICAgMHgxLmZjcDYsCisgICAgMHgxLmZmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMC4wLAorICAgIDB4MS5wNywKKyAgICAweDEucDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEucC0xNiwKKyAgICAweDEucDcsCisgICAgMHgxLjAwMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMHgxLmZmZmVwLTEsCisgICAgMHgxLmZlcDcsCisgICAgMHgxLmZmZmZmZXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgMC4wLAorICAgIDB4MS5wOCwKKyAgICAweDEucDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEucC0xNSwKKyAgICAweDEucDgsCisgICAgMHgxLjAwMDAwMnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLmZmZmNwLTEsCisgICAgMHgxLmZmcDgsCisgICAgMHgxLmZmZmZmZXA4CisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgMC4wLAorICAgIDB4MS5wOSwKKyAgICAweDEucDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEucC0xNCwKKyAgICAweDEucDksCisgICAgMHgxLjAwMDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLmZmZjhwLTEsCisgICAgMHgxLmZmODBwOSwKKyAgICAweDEuZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAwLjAsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgMHgxLnAtMTMsCisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgMHgxLmZmZjBwLTEsCisgICAgMHgxLmZmYzBwMTAsCisgICAgMHgxLmZmZmZmZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIDAuMCwKKyAgICAweDEucDExLAorICAgIDB4MS5wMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEucC0xMiwKKyAgICAweDEucDExLAorICAgIDB4MS4wMDAwMDJwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuZmZlMHAtMSwKKyAgICAweDEuZmZlMHAxMSwKKyAgICAweDEuZmZmZmZlcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMC4wLAorICAgIDB4MS5wMTIsCisgICAgMHgxLnAxMgorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS5wLTExLAorICAgIDB4MS5wMTIsCisgICAgMHgxLjAwMDAwMnAxMgorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDB4MS5mZmZmZTBwLTIsCisgICAgMHgxLnAyLAorICAgIDB4MS4xZmZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIDB4MS5wLTEsCisgICAgMHgxLnAyLAorICAgIDB4MS4yMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLjAwMDAxMHAtMSwKKyAgICAweDEucDIsCisgICAgMHgxLjIwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMHgxLmZmZmZjMHAtMiwKKyAgICAweDEucDMsCisgICAgMHgxLjBmZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMHgxLnAtMSwKKyAgICAweDEucDMsCisgICAgMHgxLjEwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuMDAwMDIwcC0xLAorICAgIDB4MS5wMywKKyAgICAweDEuMTAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuZmZmZjgwcC0yLAorICAgIDB4MS5wNCwKKyAgICAweDEuMDdmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAweDEucC0xLAorICAgIDB4MS5wNCwKKyAgICAweDEuMDhwNAorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS4wMDAwNDBwLTEsCisgICAgMHgxLnA0LAorICAgIDB4MS4wODAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIDB4MS5mZmZmcC0yLAorICAgIDB4MS5wNSwKKyAgICAweDEuMDNmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEucC0xLAorICAgIDB4MS5wNSwKKyAgICAweDEuMDRwNQorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIDB4MS4wMDAwODBwLTEsCisgICAgMHgxLnA1LAorICAgIDB4MS4wNDAwMDJwNQorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDB4MS5mZmZlcC0yLAorICAgIDB4MS5wNiwKKyAgICAweDEuMDFmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAweDEucC0xLAorICAgIDB4MS5wNiwKKyAgICAweDEuMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIDB4MS4wMDAxcC0xLAorICAgIDB4MS5wNiwKKyAgICAweDEuMDIwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAweDEuZmZmY3AtMiwKKyAgICAweDEucDcsCisgICAgMHgxLjAwZmZmZXA3CisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLnAtMSwKKyAgICAweDEucDcsCisgICAgMHgxLjAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAweDEuMDAwMnAtMSwKKyAgICAweDEucDcsCisgICAgMHgxLjAxMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMHgxLmZmZjhwLTIsCisgICAgMHgxLnA4LAorICAgIDB4MS4wMDdmZmVwOAorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIDB4MS5wLTEsCisgICAgMHgxLnA4LAorICAgIDB4MS4wMDgwcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuMDAwNHAtMSwKKyAgICAweDEucDgsCisgICAgMHgxLjAwODAwMnA4CisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgMHgxLmZmZjBwLTIsCisgICAgMHgxLnA5LAorICAgIDB4MS4wMDNmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS5wLTEsCisgICAgMHgxLnA5LAorICAgIDB4MS4wMDQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuMDAwOHAtMSwKKyAgICAweDEucDksCisgICAgMHgxLjAwNDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgMHgxLmZmZTBwLTIsCisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAxZmZlcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgMHgxLnAtMSwKKyAgICAweDEucDEwLAorICAgIDB4MS4wMDIwcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgMHgxLjAwMTBwLTEsCisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAyMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLmZmZTBwLTIsCisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjAwNWZmZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIDB4MS5wLTEsCisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjAwNjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuMDAxMHAtMSwKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDA2MDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgMHgxLmZmYzBwLTIsCisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAwZmZlcDExCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgMHgxLnAtMSwKKyAgICAweDEucDExLAorICAgIDB4MS4wMDEwcDExCisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgMHgxLjAwMjBwLTEsCisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAxMDAycDExCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgMHgxLmZmODBwLTIsCisgICAgMHgxLnAxMiwKKyAgICAweDEuMDAwN2ZlcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLnAtMSwKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDA4cDEyCisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgMHgxLjAwNDBwLTEsCisgICAgMHgxLnAxMiwKKyAgICAweDEuMDAwODAycDEyCisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgMC4wLAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAtMC4wLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDMzOAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmNwMTI3LAorICAgIC0weDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS4yMWZiNjBwLTMsCisgICAgMHgxLjgwcDEsCisgICAgMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzQzCisgICAgLTB4MS4yMWZiNjBwLTMsCisgICAgLTB4MS44MHAxLAorICAgIC0weDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuMjQzZjZjcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAtMHgxLjI0M2Y2Y3AtMSwKKyAgICAtMHgxLnAwLAorICAgIC0weDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAweDEucC0yMywKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ3CisgICAgLTB4MS5wLTIzLAorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDAuMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgLTAuMCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIDB4MS45MjFmYjZwLTEsCisgICAgMC4wLAorICAgIDB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAtMHgxLjkyMWZiNnAtMSwKKyAgICAtMC4wLAorICAgIC0weDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgMHgxLjAwMDAwMnAtMTI2LAorICAgIDAuMCwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAtMHgxLjAwMDAwMnAtMTI2LAorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIDB4MS5wLTEyNiwKKyAgICAwLjAsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgMHgxLmZmZmZmOHAtMTI3LAorICAgIDAuMCwKKyAgICAweDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAtMHgxLmZmZmZmOHAtMTI3LAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIDB4MS5wLTE0OCwKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgLTB4MS5wLTE0OCwKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEucC0xNDksCisgICAgMC4wLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIC0weDEucC0xNDksCisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0wLjBmCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvbmVhcmJ5aW50X2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9uZWFyYnlpbnRfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ1MWNiZTQKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvbmVhcmJ5aW50X2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDEzMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxkb3VibGUsIGRvdWJsZT4gZ19uZWFyYnlpbnRfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAwLjAsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEucDAsCisgICAgMHgxLjdmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLnAxLAorICAgIDB4MS44cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5wMSwKKyAgICAweDEuODAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEucDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLnAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS5wMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEucDEsCisgICAgMHgxLjNmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLnAxLAorICAgIDB4MS40cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS44MHAxLAorICAgIDB4MS40MDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS45MHA2LAorICAgIDB4MS44ZmZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS45MHA2LAorICAgIDB4MS45cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS45MHA2LAorICAgIDB4MS45MDAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS45MHA2LAorICAgIDB4MS45MWZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS45MHA2LAorICAgIDB4MS45MjBwNgorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLjk0cDYsCisgICAgMHgxLjkyMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLmY0cDksCisgICAgMHgxLmYzZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0MHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjQwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjQzZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjQ0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS5mNDgwcDksCisgICAgMHgxLmY0NDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLnA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0OQorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLnA1MCwKKyAgICAweDEuMHA1MAorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLnA1MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MAorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLnA1MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLnA1MSwKKyAgICAweDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLnA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLnA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MQorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLnA1MiwKKyAgICAweDEuMHA1MgorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDUyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUyCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS5wNTMsCisgICAgMHgxLjBwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA1MywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MworICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUzCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEucDU0LAorICAgIDB4MS4wcDU0CisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNTQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEucDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAtMHgxLnAxLAorICAgIC0weDEuODAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLnAxLAorICAgIC0weDEuOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAtMHgxLnAwLAorICAgIC0weDEuN2ZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLnAxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLnAxLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLnAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS40MDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEucDEsCisgICAgLTB4MS40cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEucDEsCisgICAgLTB4MS4zZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS44ZmZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEuOTRwNiwKKyAgICAtMHgxLjkyMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTIwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkxZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDBwOQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjNmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAtMHgxLmY0ODBwOSwKKyAgICAtMHgxLmY0NDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQ0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0M2ZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS5wNTAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAtMHgxLnA1MCwKKyAgICAtMHgxLjBwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEucDUwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA0OQorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgLTB4MS5wNTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMHgxLnA1MSwKKyAgICAtMHgxLjBwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEucDUxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MAorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA1MiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEucDUyLAorICAgIC0weDEuMHA1MgorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS5wNTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDUzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MworICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS5wNTMsCisgICAgLTB4MS4wcDUzCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDUyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MgorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA1NCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIC0weDEucDU0LAorICAgIC0weDEuMHA1NAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA1MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLnAzMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyOQorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLnAzMCwKKyAgICAweDEuMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLnAzMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmN2ZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmY3ZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjgwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmY4MDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjgwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmOWZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmY5ZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZmEwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYTAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYTAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYzBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZkZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZkZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEucDMxLAorICAgIDB4MS5mZmZmZmZmZTBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEucDMxLAorICAgIDB4MS5mZmZmZmZmZTAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLnAzMSwKKyAgICAweDEuZmZmZmZmZmUwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS5wMzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEucDMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLnAzMSwKKyAgICAweDEuMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEucDMxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLnAzMSwKKyAgICAweDEuMDAwMDAwMDBmZmZmZXAzMQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAwZmZmZmZwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEucDMxLAorICAgIDB4MS4wMDAwMDAwMTBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuMDAwMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMDAxMDAwMDFwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEuMDAwMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMDAxMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEuZmZmZmZmZTBwMzAsCisgICAgMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuZmZmZmZmZTRwMzAsCisgICAgMHgxLmZmZmZmZmU0MHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5mZmZmZmZlOHAzMCwKKyAgICAweDEuZmZmZmZmZTgwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLmZmZmZmZmVjcDMwLAorICAgIDB4MS5mZmZmZmZlYzBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuZmZmZmZmZjBwMzAsCisgICAgMHgxLmZmZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEuZmZmZmZmZjRwMzAsCisgICAgMHgxLmZmZmZmZmY0MHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjgwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYzBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEucDMxLAorICAgIDB4MS4wcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLjAwMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDAwMjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAtMHgxLnAzMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMHgxLnAzMCwKKyAgICAtMHgxLjBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAtMHgxLnAzMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZjgwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmODAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmY4MHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmN2ZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmY3ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmEwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYTAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmZhMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmOWZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmY5ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmMwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYzAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZiZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLmZmZmZmZmZlMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLmZmZmZmZmZlMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLmZmZmZmZmZlMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmZGZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZkZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAtMHgxLjAwMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAwMDEwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0weDEuMDAwMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDAwMTAwMDAxcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMTBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwZmZmZmZwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwZmZmZmVwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHA2MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA2MQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA2MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2MQorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS5wNjIsCisgICAgMHgxLjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAweDEuMDAwMDAwMDAwMDAwMjBwNjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwNjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEucDYzLAorICAgIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDYzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcDYzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDYzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDYzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLnA2NCwKKyAgICAweDEuMHA2NAorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA2NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2NAorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS4wMDAwMDAwMDAwMDAyMHA2NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIC0weDEuMDAwMDAwMDAwMDAwMjBwNjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA2MiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMHgxLnA2MiwKKyAgICAtMHgxLjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDYxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2MQorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwNjEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAyMHA2MywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDYzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2MworICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEucDYzLAorICAgIC0weDEuMHA2MworICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwNjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHA2MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDIwcDY0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwNjQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTB4MS5wNjQsCisgICAgLTB4MS4wcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA2MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDYzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXA2MworICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIDB4MS5wNjIsCisgICAgMHgxLjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEucDYzLAorICAgIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS5wNjIsCisgICAgLTB4MS4wcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgLTB4MS5wNjMsCisgICAgLTB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYzBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEucDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS5wMiwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLnAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEucDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDB4MS5wMywKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLnAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAweDEucDQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS5wNCwKKyAgICAweDEuMHA0CisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLnA0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAweDEucDUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNAorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS5wNSwKKyAgICAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLnA1LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAweDEucDYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS5wNiwKKyAgICAweDEuMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLnA2LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEucDcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIDB4MS5wNywKKyAgICAweDEuMHA3CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLnA3LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEucDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNworICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS5wOCwKKyAgICAweDEuMHA4CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLnA4LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEucDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDB4MS5wOSwKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLnA5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEucDEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAweDEucDEwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDB4MS5wMTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAweDEucDExLAorICAgIDB4MS4wcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS5wMTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEucDEyLAorICAgIDB4MS4wcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLnAxMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMgorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDB4MS5wMiwKKyAgICAweDEuMWZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLnAyLAorICAgIDB4MS4ycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEuNDBwMiwKKyAgICAweDEuMjAwMDAwMDAwMDAwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLnAzLAorICAgIDB4MS4wZmZmZmZmZmZmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEucDMsCisgICAgMHgxLjFwMworICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS4yMHAzLAorICAgIDB4MS4xMDAwMDAwMDAwMDAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEucDQsCisgICAgMHgxLjA3ZmZmZmZmZmZmZmZwNAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS5wNCwKKyAgICAweDEuMDgwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuMTBwNCwKKyAgICAweDEuMDgwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLnA1LAorICAgIDB4MS4wM2ZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEucDUsCisgICAgMHgxLjA0MHA1CisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLjA4cDUsCisgICAgMHgxLjA0MDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS5wNiwKKyAgICAweDEuMDFmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLnA2LAorICAgIDB4MS4wMjBwNgorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS4wNHA2LAorICAgIDB4MS4wMjAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEucDcsCisgICAgMHgxLjAwZmZmZmZmZmZmZmZwNworICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS5wNywKKyAgICAweDEuMDEwcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuMDJwNywKKyAgICAweDEuMDEwMDAwMDAwMDAwMXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLnA4LAorICAgIDB4MS4wMDdmZmZmZmZmZmZmcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEucDgsCisgICAgMHgxLjAwOHA4CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLjAxcDgsCisgICAgMHgxLjAwODAwMDAwMDAwMDFwOAorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS5wOSwKKyAgICAweDEuMDAzZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgMHgxLnA5LAorICAgIDB4MS4wMDRwOQorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS4wMDgwcDksCisgICAgMHgxLjAwNDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMWZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEucDEwLAorICAgIDB4MS4wMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDAyMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS4wMDVmZmZmZmZmZmZmcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLjAwODBwMTAsCisgICAgMHgxLjAwNnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIDB4MS4wMDgwcDEwLAorICAgIDB4MS4wMDYwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAwZmZmZmZmZmZmZnAxMQorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS5wMTEsCisgICAgMHgxLjAwMXAxMQorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIDB4MS4wMDIwcDExLAorICAgIDB4MS4wMDEwMDAwMDAwMDAxcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLnAxMiwKKyAgICAweDEuMDAwN2ZmZmZmZmZmZnAxMgorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS5wMTIsCisgICAgMHgxLjAwMDgwcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjAwMTBwMTIsCisgICAgMHgxLjAwMDgwMDAwMDAwMDFwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS44MHAxLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEucDEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIC0weDEucDEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIC0weDEucDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDB4MS5wMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0weDEucDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS5wMSwKKyAgICAweDEuOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjhwMAorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS5wMSwKKyAgICAweDEuNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjRwMQorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAwLjAsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEucDEsCisgICAgMHgxLjgwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEucDAsCisgICAgMHgxLjdmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAtMHgxLnAxLAorICAgIC0weDEuODAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIC0weDEucDAsCisgICAgLTB4MS43ZmZmZnAwCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvbmVhcmJ5aW50Zl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvbmVhcmJ5aW50Zl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTkxN2I3NwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9uZWFyYnlpbnRmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDEzMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfbmVhcmJ5aW50Zl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0wLjAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDAuMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMC4wLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS5wMCwKKyAgICAweDEuN2ZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5wMSwKKyAgICAweDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLnAxLAorICAgIDB4MS44MDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLnAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLnAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLnAxLAorICAgIDB4MS4zZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLnAxLAorICAgIDB4MS40MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuODBwMSwKKyAgICAweDEuNDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS45MHA2LAorICAgIDB4MS44ZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS45MHA2LAorICAgIDB4MS45MDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkxZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTJwNgorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLjk0cDYsCisgICAgMHgxLjkyMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjNmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjQwMDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDNmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0NDBwOQorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLmY0ODBwOSwKKyAgICAweDEuZjQ0MDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5wMjEsCisgICAgMHgxLmZmZmZmZXAyMAorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLnAyMSwKKyAgICAweDEucDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEucDIxLAorICAgIDB4MS4wMDAwMDJwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS5wMjIsCisgICAgMHgxLmZmZmZmZXAyMQorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLnAyMiwKKyAgICAweDEucDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEucDIyLAorICAgIDB4MS4wMDAwMDJwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS5wMjMsCisgICAgMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLnAyMywKKyAgICAweDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMDAwMDAycDIzLAorICAgIDB4MS4wMDAwMDJwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5mZmZmZmVwMjMsCisgICAgMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLnAyNCwKKyAgICAweDEucDI0CisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuMDAwMDAycDI0LAorICAgIDB4MS4wMDAwMDJwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5mZmZmZmVwMjQsCisgICAgMHgxLmZmZmZmZXAyNAorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLnAyNSwKKyAgICAweDEucDI1CisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuMDAwMDAycDI1LAorICAgIDB4MS4wMDAwMDJwMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAtMC4wLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjgwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLnAxLAorICAgIC0weDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjdmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLnAxLAorICAgIC0weDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIC0weDEucDEsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS40MDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjQwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEucDEsCisgICAgLTB4MS4zZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjhmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAtMHgxLjk0cDYsCisgICAgLTB4MS45MjAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTJwNgorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTFmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0MDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNHA5CisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mM2ZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgLTB4MS5mNDgwcDksCisgICAgLTB4MS5mNDQwMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQ0MHA5CisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDNmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS5wMjEsCisgICAgLTB4MS4wMDAwMDJwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIC0weDEucDIxLAorICAgIC0weDEucDIxCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMHgxLnAyMSwKKyAgICAtMHgxLmZmZmZmZXAyMAorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgLTB4MS5wMjIsCisgICAgLTB4MS4wMDAwMDJwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEucDIyLAorICAgIC0weDEucDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAtMHgxLnAyMiwKKyAgICAtMHgxLmZmZmZmZXAyMQorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgLTB4MS4wMDAwMDJwMjMsCisgICAgLTB4MS4wMDAwMDJwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEucDIzLAorICAgIC0weDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLnAyMywKKyAgICAtMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgLTB4MS4wMDAwMDJwMjQsCisgICAgLTB4MS4wMDAwMDJwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIC0weDEucDI0LAorICAgIC0weDEucDI0CisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAtMHgxLmZmZmZmZXAyMywKKyAgICAtMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTB4MS4wMDAwMDJwMjUsCisgICAgLTB4MS4wMDAwMDJwMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIC0weDEucDI1LAorICAgIC0weDEucDI1CisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAtMHgxLmZmZmZmZXAyNCwKKyAgICAtMHgxLmZmZmZmZXAyNAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLmZmZmZmZXAyOSwKKyAgICAweDEuZmZmZmZlcDI5CisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEucDMwLAorICAgIDB4MS5wMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS4wMDAwMDJwMzAsCisgICAgMHgxLjAwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLjAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLmZmZmZmZXAzMCwKKyAgICAweDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAtMHgxLjAwMDAwMnAzMCwKKyAgICAtMHgxLjAwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEucDMwLAorICAgIC0weDEucDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgLTB4MS5mZmZmZmVwMjksCisgICAgLTB4MS5mZmZmZmVwMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIDB4MS5mZmZmZmNwNjEsCisgICAgMHgxLmZmZmZmY3A2MQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS5mZmZmZmVwNjEsCisgICAgMHgxLmZmZmZmZXA2MQorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS5wNjIsCisgICAgMHgxLnA2MgorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS4wMDAwMDJwNjIsCisgICAgMHgxLjAwMDAwMnA2MgorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIDB4MS4wMDAwMDRwNjIsCisgICAgMHgxLjAwMDAwNHA2MgorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS5mZmZmZmNwNjIsCisgICAgMHgxLmZmZmZmY3A2MgorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIDB4MS5mZmZmZmVwNjIsCisgICAgMHgxLmZmZmZmZXA2MgorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS5wNjMsCisgICAgMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIDB4MS4wMDAwMDJwNjMsCisgICAgMHgxLjAwMDAwMnA2MworICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS4wMDAwMDRwNjMsCisgICAgMHgxLjAwMDAwNHA2MworICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIDB4MS5mZmZmZmNwNjMsCisgICAgMHgxLmZmZmZmY3A2MworICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS5mZmZmZmVwNjMsCisgICAgMHgxLmZmZmZmZXA2MworICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS5wNjQsCisgICAgMHgxLnA2NAorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS4wMDAwMDJwNjQsCisgICAgMHgxLjAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS4wMDAwMDRwNjQsCisgICAgMHgxLjAwMDAwNHA2NAorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIC0weDEuMDAwMDA0cDYyLAorICAgIC0weDEuMDAwMDA0cDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS4wMDAwMDJwNjIsCisgICAgLTB4MS4wMDAwMDJwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMHgxLnA2MiwKKyAgICAtMHgxLnA2MgorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEuZmZmZmZlcDYxLAorICAgIC0weDEuZmZmZmZlcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgLTB4MS5mZmZmZmNwNjEsCisgICAgLTB4MS5mZmZmZmNwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMHgxLjAwMDAwNHA2MywKKyAgICAtMHgxLjAwMDAwNHA2MworICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIC0weDEuMDAwMDAycDYzLAorICAgIC0weDEuMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTB4MS5wNjMsCisgICAgLTB4MS5wNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAtMHgxLmZmZmZmZXA2MiwKKyAgICAtMHgxLmZmZmZmZXA2MgorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIC0weDEuZmZmZmZjcDYyLAorICAgIC0weDEuZmZmZmZjcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgLTB4MS4wMDAwMDRwNjQsCisgICAgLTB4MS4wMDAwMDRwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLjAwMDAwMnA2NCwKKyAgICAtMHgxLjAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIC0weDEucDY0LAorICAgIC0weDEucDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS5mZmZmZmVwNjMsCisgICAgLTB4MS5mZmZmZmVwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMHgxLmZmZmZmY3A2MywKKyAgICAtMHgxLmZmZmZmY3A2MworICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIDB4MS5wNjIsCisgICAgMHgxLnA2MgorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS5wNjMsCisgICAgMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0weDEucDYyLAorICAgIC0weDEucDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgLTB4MS5wNjMsCisgICAgLTB4MS5wNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEucDIsCisgICAgMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLnAyLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIDB4MS5wMiwKKyAgICAweDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEucDMsCisgICAgMHgxLmZmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLnAzLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS5wMywKKyAgICAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAweDEucDQsCisgICAgMHgxLmZmZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMHgxLnA0LAorICAgIDB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIDB4MS5wNCwKKyAgICAweDEuMDAwMDAycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAweDEucDUsCisgICAgMHgxLmZmZmZmZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLnA1LAorICAgIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS5wNSwKKyAgICAweDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAweDEucDYsCisgICAgMHgxLmZmZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgMHgxLnA2LAorICAgIDB4MS5wNgorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS5wNiwKKyAgICAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEucDcsCisgICAgMHgxLmZmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLnA3LAorICAgIDB4MS5wNworICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS5wNywKKyAgICAweDEuMDAwMDAycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEucDgsCisgICAgMHgxLmZmZmZmZXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMHgxLnA4LAorICAgIDB4MS5wOAorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIDB4MS5wOCwKKyAgICAweDEuMDAwMDAycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEucDksCisgICAgMHgxLmZmZmZmZXA4CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLnA5LAorICAgIDB4MS5wOQorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIDB4MS5wOSwKKyAgICAweDEuMDAwMDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEucDEwLAorICAgIDB4MS5mZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS5wMTAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDB4MS5wMTEsCisgICAgMHgxLmZmZmZmZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS5wMTEsCisgICAgMHgxLnAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS5wMTEsCisgICAgMHgxLjAwMDAwMnAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS5wMTIsCisgICAgMHgxLmZmZmZmZXAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS5wMTIsCisgICAgMHgxLnAxMgorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS5wMTIsCisgICAgMHgxLjAwMDAwMnAxMgorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDB4MS5wMiwKKyAgICAweDEuMWZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEucDIsCisgICAgMHgxLjIwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEuNDBwMiwKKyAgICAweDEuMjAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEucDMsCisgICAgMHgxLjBmZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLnAzLAorICAgIDB4MS4xMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLjIwcDMsCisgICAgMHgxLjEwMDAwMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLnA0LAorICAgIDB4MS4wN2ZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS5wNCwKKyAgICAweDEuMDhwNAorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS4xMHA0LAorICAgIDB4MS4wODAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIDB4MS5wNSwKKyAgICAweDEuMDNmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEucDUsCisgICAgMHgxLjA0cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuMDhwNSwKKyAgICAweDEuMDQwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEucDYsCisgICAgMHgxLjAxZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLnA2LAorICAgIDB4MS4wMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLjA0cDYsCisgICAgMHgxLjAyMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLnA3LAorICAgIDB4MS4wMGZmZmVwNworICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS5wNywKKyAgICAweDEuMDFwNworICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS4wMnA3LAorICAgIDB4MS4wMTAwMDJwNworICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS5wOCwKKyAgICAweDEuMDA3ZmZlcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEucDgsCisgICAgMHgxLjAwODBwOAorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS4wMXA4LAorICAgIDB4MS4wMDgwMDJwOAorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS5wOSwKKyAgICAweDEuMDAzZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEucDksCisgICAgMHgxLjAwNDBwOQorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS4wMDgwcDksCisgICAgMHgxLjAwNDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAxZmZlcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAyMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS4wMDIwMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDA1ZmZlcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLjAwODBwMTAsCisgICAgMHgxLjAwNjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAweDEuMDA4MHAxMCwKKyAgICAweDEuMDA2MDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAwZmZlcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAxMHAxMQorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIDB4MS4wMDIwcDExLAorICAgIDB4MS4wMDEwMDJwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDA3ZmVwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDA4cDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjAwMTBwMTIsCisgICAgMHgxLjAwMDgwMnAxMgorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuODBwMSwKKyAgICAweDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIDB4MS5wMSwKKyAgICAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLnAxLAorICAgIC0weDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIC0weDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDB4MS5wMCwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIDAuMCwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAwLjAsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDAuMCwKKyAgICAweDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgMC4wLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0wLjAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIDAuMCwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgLTAuMCwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS5wMSwKKyAgICAweDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIC0weDEucDEsCisgICAgLTB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMHgxLnAxLAorICAgIDB4MS40MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjQwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDAuMCwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgLTAuMCwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEucDEsCisgICAgMHgxLjgwMDAxMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLnAwLAorICAgIDB4MS43ZmZmZjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIC0weDEucDEsCisgICAgLTB4MS44MDAwMTBwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIC0weDEucDAsCisgICAgLTB4MS43ZmZmZjBwMAorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL25leHRhZnRlcl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvbmV4dGFmdGVyX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOTFkYmY2Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL25leHRhZnRlcl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwyMDg4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8yX3Q8ZG91YmxlLCBkb3VibGUsIGRvdWJsZT4gZ19uZXh0YWZ0ZXJfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgLTB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLnAtMTA3NCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5wMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLjBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEucDEsCisgICAgMHgxLjBwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMSwKKyAgICAweDEuMHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5wMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS5wMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLjBwMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLjBwMSwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLjBwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS5wMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEucDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAtMHgxLnAxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEucDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAwLAorICAgIC0weDEuMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAtMHgxLjBwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgLTB4MS4wcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLnAxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAtMHgxLnAxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDEsCisgICAgLTB4MS4wcDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIC0weDEucDEsCisgICAgLTB4MS4wcDEsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAtMHgxLjBwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS5wMTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOSwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLnAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOSwKKyAgICAweDEuMHAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEucDEwLAorICAgIDB4MS4wcDEwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMTAsCisgICAgMHgxLjBwMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMCwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOSwKKyAgICAtMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA5LAorICAgIDB4MS4wcDEwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDksCisgICAgMHgxLjBwMTAsCisgICAgLTB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOSwKKyAgICAweDEuMHAxMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAsCisgICAgLTB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEucDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAtMHgxLnAxMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIC0weDEucDEwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMCwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIC0weDEucDEwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwOSwKKyAgICAtMHgxLjBwMTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwOSwKKyAgICAtMHgxLjBwMTAsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDksCisgICAgLTB4MS4wcDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHA5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDksCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDEwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAtMHgxLnAxMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAsCisgICAgLTB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgLTB4MS5wMTAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAxMCwKKyAgICAtMHgxLjBwMTAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgLTB4MS5wMTAsCisgICAgLTB4MS4wcDEwLAorICAgIC0weDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwOSwKKyAgICAtMHgxLjBwMTAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAtMHgxLnAxMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAtMHgxLnAxMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOSwKKyAgICAtMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEucDEwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5OSwKKyAgICAweDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEucDEwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5OSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOTksCisgICAgMHgxLjBwMTAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDk5CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLnAxMDAsCisgICAgMHgxLjBwMTAwLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMDAsCisgICAgMHgxLjBwMTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS5wMTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5OQorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5wMTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMCwKKyAgICAweDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwOTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOTksCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHA5OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5OSwKKyAgICAtMHgxLjBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDk5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDk5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA5OQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA5OSwKKyAgICAweDEuMHAxMDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA5OSwKKyAgICAweDEuMHAxMDAsCisgICAgLTB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA5OSwKKyAgICAweDEuMHAxMDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDk5CisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLnAxMDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEucDEwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDAsCisgICAgLTB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS5wMTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMHgxLnAxMDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5OQorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIC0weDEucDEwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAwLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEucDEwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwOTksCisgICAgLTB4MS4wcDEwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5OQorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwOTksCisgICAgLTB4MS4wcDEwMCwKKyAgICAweDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDk5LAorICAgIC0weDEuMHAxMDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHA5OSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDk5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA5OSwKKyAgICAweDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDk5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA5OSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDEwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAtMHgxLnAxMDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMCwKKyAgICAtMHgxLjBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgLTB4MS5wMTAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDk5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAxMDAsCisgICAgLTB4MS4wcDEwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS5wMTAwLAorICAgIC0weDEuMHAxMDAsCisgICAgLTB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwOTksCisgICAgLTB4MS4wcDEwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMHgxLnAxMDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDk5LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLnAxMDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDk5LAorICAgIC0weDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDk5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA5OSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOTk5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDk5OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEucDEwMDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOTk5LAorICAgIDB4MS4wcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAweDEucDEwMDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOTk5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwOTk5LAorICAgIDB4MS4wcDEwMDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOTk5CisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgMHgxLnAxMDAwLAorICAgIDB4MS4wcDEwMDAsCisgICAgMHgxLjBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAxMDAwLAorICAgIDB4MS4wcDEwMDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDB4MS5wMTAwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDk5OQorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS5wMTAwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDAwLAorICAgIDB4MS4wcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMTAwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwOTk5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDk5OSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHA5OTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOTk5LAorICAgIC0weDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDk5OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5OTksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDk5OQorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA5OTksCisgICAgMHgxLjBwMTAwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA5OTksCisgICAgMHgxLjBwMTAwMCwKKyAgICAtMHgxLjBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA5OTksCisgICAgMHgxLjBwMTAwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOTk5CisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLnAxMDAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAweDEucDEwMDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAwMCwKKyAgICAtMHgxLjBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS5wMTAwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA5OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLnAxMDAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDk5OQorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIC0weDEucDEwMDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMDAsCisgICAgMHgxLjBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEucDEwMDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwOTk5LAorICAgIC0weDEuMHAxMDAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDk5OQorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwOTk5LAorICAgIC0weDEuMHAxMDAwLAorICAgIDB4MS4wcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDk5OSwKKyAgICAtMHgxLjBwMTAwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHA5OTksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDk5OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDk5OSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOTk5LAorICAgIDB4MS4wcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDk5OSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOTk5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDEwMDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAtMHgxLnAxMDAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDAwLAorICAgIC0weDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgLTB4MS5wMTAwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTAwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOTk5CisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAxMDAwLAorICAgIC0weDEuMHAxMDAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgLTB4MS5wMTAwMCwKKyAgICAtMHgxLjBwMTAwMCwKKyAgICAtMHgxLjBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwOTk5LAorICAgIC0weDEuMHAxMDAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA5OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAtMHgxLnAxMDAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA5OTksCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAtMHgxLnAxMDAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA5OTksCisgICAgLTB4MS4wcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDk5OSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwOTk5LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA5OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAweDEuZmZmZmZmZmZmZmZmZDBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLmZmZmZmZmZmZmZmZmQwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS5mZmZmZmZmZmZmZmZkMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZDBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIC0weDEuZmZmZmZmZmZmZmZmYzBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAweDEuZmZmZmZmZmZmZmZmZDBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS5mZmZmZmZmZmZmZmZkMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS5mZmZmZmZmZmZmZmZkMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZHAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLnAtMTA3NCwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAtMHgxLnAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAtMHgxLnAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAtMHgxLnAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIC0weDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAweDEuMDAwMDBmZmZmZmZmZTBwMSwKKyAgICAweDEuMDAwMDBmZmZmZmZmZXAxLAorICAgIDB4MS4wMDAwMGZmZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuMDAwMDBmZmZmZmZmZjBwMSwKKyAgICAweDEuMDAwMDBmZmZmZmZmZXAxLAorICAgIDB4MS4wMDAwMGZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEuMDAwMDBmZmZmZmZmZjBwMSwKKyAgICAweDEuMDAwMDBmZmZmZmZmZXAxLAorICAgIDB4MS4wMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLjAwMDAwZmZmZmZmZmUwcDEsCisgICAgMHgxLjAwMDAwZmZmZmZmZmZwMSwKKyAgICAweDEuMDAwMDBmZmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLjAwMDAwZmZmZmZmZmYwcDEsCisgICAgMHgxLjAwMDAwZmZmZmZmZmZwMSwKKyAgICAweDEuMDAwMDBmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLjAwMDAxMHAxLAorICAgIDB4MS4wMDAwMGZmZmZmZmZmcDEsCisgICAgMHgxLjAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuMDAwMDBmZmZmZmZmZjBwMSwKKyAgICAweDEuMDAwMDFwMSwKKyAgICAweDEuMDAwMDBmZmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLjAwMDAwZmZmZmZmZmYwcDEsCisgICAgMHgxLjAwMDAxcDEsCisgICAgMHgxLjAwMDAwZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS4wMDAwMTBwMSwKKyAgICAweDEuMDAwMDFwMSwKKyAgICAweDEuMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIEhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIEhVR0VfVkFMLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMzA3CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuZmZmZmZmZmZmZmZmYzBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuZmZmZmZmZmZmZmZmYzBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgMHgxLnAtMTA3MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgMHgxLnAtMTA3MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDB4MS5wLTEwNzMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS5wLTEwNzQsCisgICAgMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgMHgxLnAtMTA3NCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIDB4MS5wLTEwNzQsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgMHgxLnAtMTA3NCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAweDEucC0xMDc0LAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgLTAuMCwKKyAgICAwLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIC0weDEucC0xMDc0LAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgLTB4MS5wLTEwNzQsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIC0weDEucC0xMDc0LAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIC0weDEucC0xMDc0LAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAweDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM0NAorICAgIDB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIDB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIDAuMCwKKyAgICAtMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIC0weDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgLTB4MS5wLTEwNzQsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIC0weDEucC0xMDc0LAorICAgIC0wLjAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzU5CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAtMHgxLnAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgLTB4MS5wLTEwNzMsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIC0weDEucC0xMDczLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIC0weDEucC0xMDczLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIC0weDEuZmZmZmZmZmZmZmZmYzBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM2OQorICAgIC0weDEuZmZmZmZmZmZmZmZmYzBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzc0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM3NworICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDM3OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM4MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzg1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzg5CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMzkwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMzkxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC1IVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDA4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDA5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvbmV4dGFmdGVyZl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvbmV4dGFmdGVyZl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjQ3YmNlMgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9uZXh0YWZ0ZXJmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDE4NjMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzJfdDxmbG9hdCwgZmxvYXQsIGZsb2F0PiBnX25leHRhZnRlcmZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIC0wLjAsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEucC0xNDksCisgICAgMC4wLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMC4wLAorICAgIDB4MS5wLTE0OSwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEucDAsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuZmZmZmZjcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLmZmZmZmY3AtMSwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5mZmZmZmNwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIC0weDEuZmZmZmZjcC0xLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIC0weDEuZmZmZmZjcC0xLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgLTB4MS5mZmZmZmNwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIC0weDEucDAsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5mZmZmZmVwMCwKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEucDEsCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLnAxLAorICAgIDB4MS5mZmZmZmVwMCwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5mZmZmZmVwMCwKKyAgICAweDEucDEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEucDEsCisgICAgMHgxLnAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjAwMDAwMnAxLAorICAgIDB4MS5wMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5wMSwKKyAgICAweDEuMDAwMDAycDEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEucDEsCisgICAgMHgxLjAwMDAwMnAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLjAwMDAwMnAxLAorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS5mZmZmZmNwMCwKKyAgICAweDEuZmZmZmZlcDAsCisgICAgLTB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmZmZmZmY3AwLAorICAgIDB4MS5mZmZmZmVwMCwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuZmZmZmZjcDAsCisgICAgMHgxLmZmZmZmZXAwLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS5mZmZmZmVwMCwKKyAgICAweDEucDEsCisgICAgLTB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5wMSwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLnAxLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS5wMSwKKyAgICAweDEuMDAwMDAycDEsCisgICAgLTB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDJwMSwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEucDEsCisgICAgMHgxLjAwMDAwMnAxLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIC0weDEucDEsCisgICAgLTB4MS4wMDAwMDJwMSwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEucDEsCisgICAgLTB4MS4wMDAwMDJwMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEucDEsCisgICAgLTB4MS4wMDAwMDJwMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEuZmZmZmZlcDAsCisgICAgLTB4MS5wMSwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuZmZmZmZlcDAsCisgICAgLTB4MS5wMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIC0weDEuZmZmZmZlcDAsCisgICAgLTB4MS5wMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEuZmZmZmZjcDAsCisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuZmZmZmZjcDAsCisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIC0weDEuZmZmZmZjcDAsCisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuMDAwMDAycDEsCisgICAgLTB4MS4wMDAwMDJwMSwKKyAgICAtMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLnAxLAorICAgIC0weDEuMDAwMDAycDEsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjAwMDAwMnAxLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuMDAwMDAycDEsCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLnAxLAorICAgIC0weDEucDEsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAtMHgxLnAxLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEucDEsCisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAtMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLnAxLAorICAgIC0weDEuZmZmZmZlcDAsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAtMHgxLmZmZmZmZXAwLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS5mZmZmZmVwOSwKKyAgICAweDEuZmZmZmZlcDksCisgICAgMHgxLmZmZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEucDEwLAorICAgIDB4MS5mZmZmZmVwOSwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEucDEwLAorICAgIDB4MS5mZmZmZmVwOSwKKyAgICAweDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuZmZmZmZlcDksCisgICAgMHgxLnAxMCwKKyAgICAweDEuZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS5wMTAsCisgICAgMHgxLnAxMCwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuMDAwMDAycDEwLAorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAwMDAycDEwLAorICAgIDB4MS5mZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAwMDAycDEwLAorICAgIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS4wMDAwMDJwMTAsCisgICAgMHgxLjAwMDAwMnAxMCwKKyAgICAweDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuZmZmZmZjcDksCisgICAgMHgxLmZmZmZmZXA5LAorICAgIC0weDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEuZmZmZmZjcDksCisgICAgMHgxLmZmZmZmZXA5LAorICAgIC0weDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZmZmZmZjcDksCisgICAgMHgxLmZmZmZmZXA5LAorICAgIC0weDEuZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5mZmZmZmVwOSwKKyAgICAweDEucDEwLAorICAgIC0weDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuZmZmZmZlcDksCisgICAgMHgxLnAxMCwKKyAgICAtMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLmZmZmZmZXA5LAorICAgIDB4MS5wMTAsCisgICAgLTB4MS5mZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAwMDAycDEwLAorICAgIC0weDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEucDEwLAorICAgIDB4MS4wMDAwMDJwMTAsCisgICAgLTB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMDAwMnAxMCwKKyAgICAtMHgxLmZmZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAtMHgxLnAxMCwKKyAgICAtMHgxLjAwMDAwMnAxMCwKKyAgICAweDEuZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAtMHgxLnAxMCwKKyAgICAtMHgxLjAwMDAwMnAxMCwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS5wMTAsCisgICAgLTB4MS4wMDAwMDJwMTAsCisgICAgMHgxLjAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIC0weDEuZmZmZmZlcDksCisgICAgLTB4MS5wMTAsCisgICAgMHgxLmZmZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgLTB4MS5mZmZmZmVwOSwKKyAgICAtMHgxLnAxMCwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgLTB4MS5mZmZmZmVwOSwKKyAgICAtMHgxLnAxMCwKKyAgICAweDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTB4MS5mZmZmZmNwOSwKKyAgICAtMHgxLmZmZmZmZXA5LAorICAgIDB4MS5mZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIC0weDEuZmZmZmZjcDksCisgICAgLTB4MS5mZmZmZmVwOSwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgLTB4MS5mZmZmZmNwOSwKKyAgICAtMHgxLmZmZmZmZXA5LAorICAgIDB4MS4wMDAwMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMHgxLjAwMDAwMnAxMCwKKyAgICAtMHgxLjAwMDAwMnAxMCwKKyAgICAtMHgxLjAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIC0weDEucDEwLAorICAgIC0weDEuMDAwMDAycDEwLAorICAgIC0weDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgLTB4MS5wMTAsCisgICAgLTB4MS4wMDAwMDJwMTAsCisgICAgLTB4MS5mZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIC0weDEuMDAwMDAycDEwLAorICAgIC0weDEucDEwLAorICAgIC0weDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgLTB4MS5wMTAsCisgICAgLTB4MS5wMTAsCisgICAgLTB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLmZmZmZmZXA5LAorICAgIC0weDEucDEwLAorICAgIC0weDEuZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAtMHgxLnAxMCwKKyAgICAtMHgxLmZmZmZmZXA5LAorICAgIC0weDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS5wMTAsCisgICAgLTB4MS5mZmZmZmVwOSwKKyAgICAtMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIC0weDEuZmZmZmZlcDksCisgICAgLTB4MS5mZmZmZmVwOSwKKyAgICAtMHgxLmZmZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLmZmZmZmZXA5OSwKKyAgICAweDEuZmZmZmZlcDk5LAorICAgIDB4MS5mZmZmZmVwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEucDEwMCwKKyAgICAweDEuZmZmZmZlcDk5LAorICAgIDB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLnAxMDAsCisgICAgMHgxLmZmZmZmZXA5OSwKKyAgICAweDEuMDAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS5mZmZmZmVwOTksCisgICAgMHgxLnAxMDAsCisgICAgMHgxLmZmZmZmZXA5OQorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS5wMTAwLAorICAgIDB4MS5wMTAwLAorICAgIDB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjAwMDAwMnAxMDAsCisgICAgMHgxLnAxMDAsCisgICAgMHgxLjAwMDAwMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEucDEwMCwKKyAgICAweDEuMDAwMDAycDEwMCwKKyAgICAweDEuZmZmZmZlcDk5CisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLnAxMDAsCisgICAgMHgxLjAwMDAwMnAxMDAsCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEuMDAwMDAycDEwMCwKKyAgICAweDEuMDAwMDAycDEwMCwKKyAgICAweDEuMDAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS5mZmZmZmNwOTksCisgICAgMHgxLmZmZmZmZXA5OSwKKyAgICAtMHgxLjAwMDAwMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEuZmZmZmZjcDk5LAorICAgIDB4MS5mZmZmZmVwOTksCisgICAgLTB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLmZmZmZmY3A5OSwKKyAgICAweDEuZmZmZmZlcDk5LAorICAgIC0weDEuZmZmZmZlcDk5CisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLmZmZmZmZXA5OSwKKyAgICAweDEucDEwMCwKKyAgICAtMHgxLjAwMDAwMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuZmZmZmZlcDk5LAorICAgIDB4MS5wMTAwLAorICAgIC0weDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS5mZmZmZmVwOTksCisgICAgMHgxLnAxMDAsCisgICAgLTB4MS5mZmZmZmVwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEucDEwMCwKKyAgICAweDEuMDAwMDAycDEwMCwKKyAgICAtMHgxLjAwMDAwMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEucDEwMCwKKyAgICAweDEuMDAwMDAycDEwMCwKKyAgICAtMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEucDEwMCwKKyAgICAweDEuMDAwMDAycDEwMCwKKyAgICAtMHgxLmZmZmZmZXA5OQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEucDEwMCwKKyAgICAtMHgxLjAwMDAwMnAxMDAsCisgICAgMHgxLmZmZmZmZXA5OQorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIC0weDEucDEwMCwKKyAgICAtMHgxLjAwMDAwMnAxMDAsCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLnAxMDAsCisgICAgLTB4MS4wMDAwMDJwMTAwLAorICAgIDB4MS4wMDAwMDJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgLTB4MS5mZmZmZmVwOTksCisgICAgLTB4MS5wMTAwLAorICAgIDB4MS5mZmZmZmVwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLmZmZmZmZXA5OSwKKyAgICAtMHgxLnAxMDAsCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAtMHgxLmZmZmZmZXA5OSwKKyAgICAtMHgxLnAxMDAsCisgICAgMHgxLjAwMDAwMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMHgxLmZmZmZmY3A5OSwKKyAgICAtMHgxLmZmZmZmZXA5OSwKKyAgICAweDEuZmZmZmZlcDk5CisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgLTB4MS5mZmZmZmNwOTksCisgICAgLTB4MS5mZmZmZmVwOTksCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLmZmZmZmY3A5OSwKKyAgICAtMHgxLmZmZmZmZXA5OSwKKyAgICAweDEuMDAwMDAycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEuMDAwMDAycDEwMCwKKyAgICAtMHgxLjAwMDAwMnAxMDAsCisgICAgLTB4MS4wMDAwMDJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS5wMTAwLAorICAgIC0weDEuMDAwMDAycDEwMCwKKyAgICAtMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLnAxMDAsCisgICAgLTB4MS4wMDAwMDJwMTAwLAorICAgIC0weDEuZmZmZmZlcDk5CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS4wMDAwMDJwMTAwLAorICAgIC0weDEucDEwMCwKKyAgICAtMHgxLjAwMDAwMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAtMHgxLnAxMDAsCisgICAgLTB4MS5wMTAwLAorICAgIC0weDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0weDEuZmZmZmZlcDk5LAorICAgIC0weDEucDEwMCwKKyAgICAtMHgxLmZmZmZmZXA5OQorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEucDEwMCwKKyAgICAtMHgxLmZmZmZmZXA5OSwKKyAgICAtMHgxLjAwMDAwMnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLnAxMDAsCisgICAgLTB4MS5mZmZmZmVwOTksCisgICAgLTB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgLTB4MS5mZmZmZmVwOTksCisgICAgLTB4MS5mZmZmZmVwOTksCisgICAgLTB4MS5mZmZmZmVwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgLTB4MS5mZmZmZmNwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmYXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmNwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmY3AxMjcsCisgICAgLTB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5mZmZmZmFwMTI3LAorICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmYXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAtMHgxLmZmZmZmY3AxMjcsCisgICAgLTB4MS5mZmZmZmFwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmYXAxMjcsCisgICAgLTB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgLTB4MS5mZmZmZmFwMTI3LAorICAgIC0weDEuZmZmZmZhcDEyNywKKyAgICAtMHgxLmZmZmZmYXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAweDEuZmZmZmZhcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAweDEuZmZmZmZhcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAweDEuZmZmZmZhcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmYXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmYXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmYXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAtMHgxLmZmZmZmY3AxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTB4MS5mZmZmZmNwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAtMHgxLmZmZmZmYXAxMjcsCisgICAgLTB4MS5mZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgLTB4MS5mZmZmZmFwMTI3LAorICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0weDEuZmZmZmZhcDEyNywKKyAgICAtMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAtMHgxLmZmZmZmOHAxMjcsCisgICAgLTB4MS5mZmZmZmFwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgLTB4MS5mZmZmZjhwMTI3LAorICAgIC0weDEuZmZmZmZhcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIC0weDEuZmZmZmY4cDEyNywKKyAgICAtMHgxLmZmZmZmYXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAweDEuZmZmZmZhcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLmZmZmZmYXAxMjcsCisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgMHgxLmZmZmZmYXAxMjcsCisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIDB4MS5mZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5mZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIDB4MS5mZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAtMHgxLmZmZmZmY3AxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLmZmZmZmY3AxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgLTB4MS5mZmZmZmFwMTI3LAorICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTB4MS5mZmZmZmFwMTI3LAorICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLmZmZmZmYXAxMjcsCisgICAgLTB4MS5mZmZmZmNwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0weDEuZmZmZmY4cDEyNywKKyAgICAtMHgxLmZmZmZmYXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0weDEuZmZmZmY4cDEyNywKKyAgICAtMHgxLmZmZmZmYXAxMjcsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgLTB4MS5mZmZmZjhwMTI3LAorICAgIC0weDEuZmZmZmZhcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEucC0xNDksCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDB4MS5wLTE0OSwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAtMHgxLnAtMTQ4LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIC0weDEucC0xNDgsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmYXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmYXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMC4wLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmYXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS5mZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS5mZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDB4MS4wMDAwMDJwLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMHgxLjAwMDAwMnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xMjYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuZmZmZmY4cC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS5mZmZmZjhwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS5mZmZmZjhwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuZmZmZmY4cC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEuZmZmZmY4cC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuZmZmZmY4cC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEuZmZmZmY4cC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS5mZmZmZjhwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIDB4MS5wLTE0OSwKKyAgICAwLjBmLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS5wLTE0OSwKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgMC4wLAorICAgIDAuMGYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIC0wLjAsCisgICAgMC4wZiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIC0weDEucC0xNDksCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgLTB4MS5wLTE0OSwKKyAgICAwLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEucC0xNDksCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAweDEucC0xNDksCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIDB4MS5wLTE0OSwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAwLjAsCisgICAgLTAuMGYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIC0wLjAsCisgICAgLTB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0wLjAsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIC0wLjAsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgLTB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAtMHgxLnAtMTQ4LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIC0weDEucC0xNDgsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAtMHgxLnAtMTQ4LAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIC0weDEuZmZmZmY4cC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAtMHgxLmZmZmZmOHAtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAtMHgxLmZmZmZmOHAtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgLTB4MS5mZmZmZjhwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIC0weDEuZmZmZmY4cC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAtMHgxLmZmZmZmOHAtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIC0weDEuZmZmZmY4cC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIC0weDEuZmZmZmY4cC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEucC0xMjYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzQxCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIC0weDEuMDAwMDAycC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAtMHgxLjAwMDAwMnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgLTB4MS5mZmZmZmNwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgLTB4MS5mZmZmZmNwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAtMHgxLmZmZmZmY3AxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTIKKyAgICAtMHgxLmZmZmZmY3AxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAtMHgxLmZmZmZmY3AxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAtMHgxLmZmZmZmY3AxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvcG93X2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9wb3dfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFjOWY1YWYKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvcG93X2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDMyNzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzJfdDxkb3VibGUsIGRvdWJsZSwgZG91YmxlPiBnX3Bvd19pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjBwLTEwLCAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLnAwLAorICAgIC0weDEuMHAtMjAsIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLCAweDEuMDAwMDAwMDAwMDAwMXA1MgorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAxZmZmZmZmcDIwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMjEsIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTQxLCAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLjAwMDAwMDAwMDAwMGEwMDAwMDAwMDAwMDJkcC00MTAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC00MSwgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuOTI0MWI3MDdmNmRhZGZmOTU1ZmQ4OTE5M2I2N2QzMzFwLTc2LAorICAgIC0weDEuMDAwMDAwMDAwMDAwOXAwLCAtMHgxLjczNjRkOTM2NGQ5M2VwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLmZmZmZlMDAwMDBmZmZmZmFiYWFhYmVmZmZmYzNiMTExcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAxMHAwLCAtMHgxLjBwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgLTB4MS5mZmZmZmVmZmFjMDA0MDNiMGM2ZDQyNGFjZDkwMDk1M3A5NjQsCisgICAgLTB4MS4wMDAwMDAwMDIyMHAtMSwgLTB4MS5lMjhwOQorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuZmZlODhmODk4ZmFkNjgwNWVmNTQyNWNhMzU3MmYxZThwNzA1LAorICAgIC0weDEuMDAwMDA0NHAtMSwgLTB4MS42MTBwOQorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgLTB4MS5mZmYwMDA3ZmZjMDAxZmZmMDAwN2ZmYzAwMWZmZjBwNDAsCisgICAgLTB4MS4wMDA4MHAtNDEsIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuZmY2MDFiN2M5MDU5NTgyZTljNWNkNGJkZTAyMWY0NjJwNDA5LAorICAgIC0weDEuMDAwODBwLTQxLCAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgLTB4MS4wMDI4MDI4MDE0MDA1MDAwODBwMjAwLAorICAgIC0weDEuMDAwODBwNDAsIDB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5mZmEwMGE3ZjE0YzMzN2ZjZWNmZmMxMDcyNDRmOTZkZnAyNDUsCisgICAgLTB4MS4wMDA4MDAwMDAwZjE0cC00MSwgLTB4MS44cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS5mZjgwMTFmZDNiZTU3N2ZlYzg1ZmZjNWQ2MGIwMzM0ZXAtMzIxLAorICAgIC0weDEuMDAwODAwMDAwZTQ4NHA0MCwgLTB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS42YjNjNDY0MTU0MzBjMDA0ZTlmZDBiMzVmOGVjNmZkNXAtMSwKKyAgICAtMHgxLjA0NmU4YmZmZmZmYzJwMCwgLTB4MS40cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDAuMCwKKyAgICAtMHgxLjUxOHAtMTA2NSwgMHgxLjBwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLjIwMDAwMDYwMDAwMDA4cC04MSwKKyAgICAtMHgxLjgwMDAwMDRwLTQxLCAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuYzNkNmEyMTU3YjYyMzQwN2U4YzgyMTI4OWViYWMyYjZwLTEsCisgICAgLTB4MS5mZmZmZmJmZmZmZmZmcC0xLCAweDEuMHAyMAorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgLTB4MS4wMDAwMDA2MDAwMDAzMDAwMDAxMTAwMDAwNjMwMDAwMnAwLAorICAgIC0weDEuZmZmZmZmYmZmZmZmZnAtMSwgLTB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIC0weDEuMDAwMDAwZTAwMDAwYTgwMDAwNjIwMDAwMzNhMDAwMThwMzUsCisgICAgLTB4MS5mZmZmZmZiZmZmZmZmcC02LCAtMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgLTB4MS4wMDAwMDBlMDAwMDBhODAwMDA2MjAwMDAzM2EwMDAxOHAyODAsCisgICAgLTB4MS5mZmZmZmZiZmZmZmZmcC00MSwgLTB4MS5jcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIC0weDEuMDAwMDAwZTAwMDAwYTgwMDAwNjIwMDAwMzNhMDAwMThwLTI4NywKKyAgICAtMHgxLmZmZmZmZmJmZmZmZmZwNDAsIC0weDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAtMHgxLmZmZmZmZTQwMDAwMDM4MDAwMDMwZmZmZmY0OWZmZmZkcDI4NiwKKyAgICAtMHgxLmZmZmZmZmJmZmZmZmZwNDAsIDB4MS5jcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS5mZmZmZmY4MDAwMDAwOHAtMjEsCisgICAgLTB4MS5mZmZmZmZjcC0xMSwgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgLTB4MS4wMDAwMDAwMDAxMDAwODAwMDAwMTAwMTAwMDQwMDFwNDAsCisgICAgLTB4MS5mZmZmZmZmZmZkZmZmcC00MSwgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIC0weDEuMDAwMDAwMDAwMDBjOTgwMDAwMDAwMDllOWE0MHA0MCwKKyAgICAtMHgxLmZmZmZmZmZmZmZlNmRwLTQxLCAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgLTB4MS5mZmZmZmZmZGZmZmZlMDAxMDAwMDBmZmZhYWFhYWFhYXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEsIDB4MS4wMDAwMXAyMAorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDQwcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLCAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLCAweDEuMDAwMDAwMDAwMDAwMXA1MgorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLmZkYTZhMWJlM2U5ZDQ3ZmM4NDI5MzI4MWU3N2FhMjFhcC0xLAorICAgIDB4MS4wcC0yLCAweDEuYjJjYjJjYjJjYjJkMHAtOQorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMC4wLAorICAgIDB4MS4wcC01MTIsIDB4MS4wY2NwMQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLmY5YjNhMzgyMDk4MDkzODY4N2U4YmY3ZmYwNmJjNDJjcC05MTQsCisgICAgMHgxLjBwLTEwMzUsIDB4MS5jM2E4M2E4M2E4M2E1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsIDB4MS4wcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLjUxY2I0NTNiOTU0ZjUzMDVmZDhkNjFlNjUwZThkMGQ1cC05NjcsCisgICAgMHgxLjBwLTEwNzQsIDB4MS5jY2NjY2NjY2NjY2NjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEuZmZmZmZmZmQzYTM3YTAyMmE0YmRmOTQ4MjE3MWQ1NmZwMTAyMywKKyAgICAweDEuMHAxLCAweDEuZmZmZmZmZmZmZjBwOQorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZmZmZTBwLTUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwLCAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLmFlODlmOTk1YWQ1ODg3ZmY0NmRkMjM2MmJlNmE4ZjIzcC0yMDQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTI3MSwgMHgxLjdmZmZmZmZmZmZmZmRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS4yNjExMTg2YmFlNmEzODAwMDJlNjIwMmMzMWIwNGQxM3AtMzgsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQ2MiwgMHgxLjRmMjA5NGYyMDk0ZjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS42YTA5ZTY2N2YzZWNkMmFkYjY3MjIzZjk1NjRiMzQyMnAtMzkyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01MjIsIDB4MS43ZmZmZmZmZmZmZmZkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuOWZkZjhiY2NlNTQzNTQ3ZDYxMWVmMTM5MDQwMjJiOGJwLTQ5MywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNTQ3LCAweDEuY2NjY2NjY2NjY2NjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLjkxYjUwMWMyZGI1YzhmZmU4MWNjM2VmZmZmZTI4MmU4cC0yOTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTY0MywgMHgxLmNjY2NjY2NjY2NjY2FwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5hODMwZmQwNTQ3MjAyNDc5YzcwYzgwYjcyYTMyNWQyZnAtNDA4LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC03MzEsIDB4MS4xZDQxZDQxZDQxZDQ0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuYTkzMzVkZjM4ZTZlNjRjYmRhYTU3NzUwYTBjZmQ1ZWVwLTI5MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNzMzLCAweDEuOTU4MTA2MjRkZDJmN3AtMgorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLjZhMDllNjY3ZjNkMTkyYTI3YjczNTc3NDg0YTg2ZGNkcC03NjEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTg0NSwgMHgxLmNjY2NjY2NjY2NjY2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS5iZGI4Y2RhZGJlNjBhNTZkZDYxYzRlMDQzNTBjZmE5YXAtNTY5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC05NDcsIDB4MS4zMzMzMzMzMzMzMzMxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuNmEwOWU2NmQ3MmM5YzgwMTg0MDUzMjU3N2U2MDVlMDdwOTA0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDA1LCAtMHgxLmNjY2NjY2NjY2ZhODFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5mZmZmZmZmZmZmZmFlYTZlMDYyMmE0NWIzNTg5ZDc3MXAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsIDB4MS5mZmZmZmZmZmZmZmZkcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS5lNjEwMmJhNDY1MDQ0ODE0YjI4YTBhNDkyMTZlZjY2N3AtMzQ5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDY2MywgLTB4MS4wY2NjY2NjY2NjY2NmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuZmZmZmZmZmZmZmQ3NWI2ZDg1ZGU4ZmIzYTdlMmU4MjZwLTcwMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA5MzYsIC0weDEuODAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAxZmZmZmZmcC0xMDI0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwMjMsIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuZmZmZmZmZmZmZmZhZWE2ZTA2MjJhNDU3MzU4OWQ3NzFwMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAyLCAweDEuZmZmZmZmZmZmZmZmZHA4CisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDI5ZmZmZmZwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwNHAwLCAweDEuMDAwMDAwMDAwMDAwN3AtMworICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZjM5MjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwNHAwLCAweDEuZmZmZmZmZmZmZmNlOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmZmZmZmZmZmZmZmYWVhNmUwNjIyYTQ0ZjM1ODlkNzcxcDEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDRwNCwgMHgxLmZmZmZmZmZmZmZmZmRwNworICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLmZiOTU0MGQ5OTI1OGE4MGY4NmI3MTkyNWFhZjQ0MjFlcDgwLAorICAgIDB4MS4wMDAwMDAwMDAwMDA3cDEwMjMsIDB4MS40NDQ0NDQ0NDQ0NDMwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuZGY5MDVlZjhlMjUwN2ZkODUyNzEyZWQ2Y2VhOTg5NjNwODMzLAorICAgIDB4MS4wMDAwMDAwMDAwMDExcDEsIDB4MS5hMGYzZWEwNjk3YTBicDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS4wMDAwMDAwMDAwMDA5N2ZmZmZmZmZmZmZkMmUwcDMsCisgICAgMHgxLjAwMDAwMDAwMDAwMTNwNiwgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS4wMDAwMDAwMDAwMDBkN2ZmZmZmZmZmZmY3N2UwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMjFwMCwgMHgxLmEyZThiYTJlOGJhMmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS45NDc2NTA0YjliYWYzNDNlM2Y3NWEyYmQyZTRjYWRkYnA3MzgsCisgICAgMHgxLjAwMDAwMDAwMDAwODBwMCwgMHgxLjBwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS5mZmZmZjRlOTVlMWYzZmRjZGQ1ZTNkOTI4ZjNhNDdmNXAxMDIzLAorICAgIDB4MS4wMDAwMDAwMDAwMGZmcDEsIDB4MS5mZmZmZmZmYzBwOQorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLmZmZmZmZmZmOGU0ZGU4MDgzYWM2M2Y5NWJjYjUyNWZjcDEwMjMsCisgICAgMHgxLjAwMDAwMDAwMDAwZmZwMiwgMHgxLmZmZmZmZmZmZmZjcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS45NDc2NTA0YjQzMzU1MmFkYmYyNTNhZDVhOWU2MWU2OHA3MzgsCisgICAgMHgxLjAwMDAwMDAwMDA0cDAsIDB4MS4wcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuNjI0N2ViMDM1Nzg2MzdmZjJjYjkzYzkzZmUyZjI0NzNwLTEyOSwKKyAgICAweDEuMDAwMDAwMDAwMDdwMSwgLTB4MS4wMTFwNworICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLjg3Y2VhMmU1MDZkMmVhOWIyMTgyM2Q3NTU3NjYzZmJhcDQyNywKKyAgICAweDEuMDAwMDAwMDAwMjBwMTAyMywgMHgxLmFjMDgzMTI2ZTk3OGNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS5mZmZmZmYyYjAzMzgwODBiMjU3ZGYzMWJiMDJmZjcwYXA3NjcsCisgICAgMHgxLjAwMDAwMDAwMGZmZmZwLTEsIC0weDEuN2ZmZmZmZmZkNWNlMnA5CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEuZmZkOTMxMDM1YjM5NDA4NzE2NDUwMTQ3M2RmMjMwOTVwMTAyMywKKyAgICAweDEuMDAwMDAwMDAxcDEsIDB4MS5mZmZmZjFmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS45MTJiNmRkNjY1MmRmN2ZhMGZiYWZmYmM3YjMyZDYyYXA5NTMsCisgICAgMHgxLjAwMDAwMDAwMWIxZWZwLTEsIC0weDEuZGNkMmYzZWEwNjk5NXA5CisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAweDEuZmZmZmZmZjgwMDAwMDAyMGMwMDAzZjdiN2ZmZTgyMTZwLTEsCisgICAgMHgxLjAwMDAwMDA0MHAwLCAtMHgxLmZmZmZmZmZmY2ZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS5mZmZmZmZjMDAwMDAyN2ZmZmZmNzAwMDAwMzlmZmZmZXAtMTAyNCwKKyAgICAweDEuMDAwMDAwMWZmZmZmZnAxMDIzLCAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLjcwNWRmMzRmODRlMzEzODcxNDgxNTNjN2NmNzgzYTUzcC0xLAorICAgIDB4MS4wMDAwMDA0cDEsIC0weDEuZTY2NjY2NjY2NjY2YnAtMgorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjFhMTY3NDRjMmVjMGQ4MDQyNDEwYmYzZTNhOTAxNGFjcDEsCisgICAgMHgxLjAwMDAwMDRwMiwgMHgxLjIzZDcwYTNkNzBhM2JwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS5mZmY4MDAxMDAyYjQxN2VmNTg4ZTIxYzUwOTJlMjBjN3AxMDIzLAorICAgIDB4MS4wMDAwMDEwcC0xLCAtMHgxLmZmZmZmZmZmZmZmZjlwOQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLmExMmY4MDZjMzkxMDU4MDBkNWFjMzhmNmNiODhkMzc0cC0yLAorICAgIDB4MS4wMDAwMDFjcDMsIC0weDEuYmEyZThiYTJlOGJhMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgMHgxLmQ3MmY3ZjM1NGQ4NmQwMjA2YWQ3YzliZTliNDc4YzdjcC04ODUsCisgICAgMHgxLjAwMDAwNDRwLTEsIDB4MS5iYTBmNjFjOTEwN2M5cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS45MTVkMTk1NWIxNWZjMDgxOTFlMDAwYmM4YTljODI2MnA3MzgsCisgICAgMHgxLjAwMDIwcDAsIDB4MS4wMDAwMDQwcDI0CisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAweDEuZmZjMDA0M2NiYzVkYjdmZWQ5MDVlYTI2NzcyNGNkODZwNDcsCisgICAgMHgxLjAwMDIwMDAwMGMwZTRwLTMsIC0weDEuZmZmZmZmZmZmM2ZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEuMDM4NjFjMGYyNWYwYjdmZGQ3ZGI5ODhmYzUwZThhYzVwODk2LAorICAgIDB4MS4wMDA3MHA3LCAweDEuMDAwMDAwMDA4ODBwNworICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLjczNWY0Y2FlNmZkNWU3ZWM5ZWM5MzkyM2YzMzllOTUxcC0yNDIsCisgICAgMHgxLjAwMDdmZGVwMCwgLTB4MS40ZjFiNzdjMjc4ZGMwcDIwCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuYjZiZGNkYWZkNTU4MjgyM2I0ZDM2MWNiN2JmMDJmMGJwMCwKKyAgICAweDEuMDAwN2ZmZmZmZjE4Y3AtMywgLTB4MS4wOTRmMjA5NGYyMDk0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuZWU5ZGUzODE1NTg5ZjgwMjA0MjljODUwNTAyYTczY2VwMCwKKyAgICAweDEuMDAwODBwMSwgMHgxLmU2NjY2NjY2NjY2NjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS5mYzRlOTU3YWQzY2ZmODBkZjE0ZDUzODNiZDA5YTgzYXAxMDIzLAorICAgIDB4MS4wMDFmZWJlYmNjZDQycDAsIDB4MS42M2Q4YWE5ODZhOWVhcDIwCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEuZmJkZGY0NmQ2YjYyODgyYjRjNGU2NTliZjAyMTJkZjRwMTAyMywKKyAgICAweDEuMDAxZmVmMWNjNDE5M3AwLCAweDEuNjNiNTAwYzgzNjg5ZHAyMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLmZiYTdmOTMxOGM1ZGM4MWIxZTE3ODg2NTE0NzIwMmYzcDEwMjMsCisgICAgMHgxLjAwMWZmMDY5ZDJhNmJwMCwgMHgxLjYzYTY3NmM4NDkzZThwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS5mNjE2NjFiNzAwMGQzMmQxZjY5OGUwZmEyZjg4OWQzNXA2OSwKKyAgICAweDEuMDA4MDQwMjUyMTNkZXAtNywgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS5lMTA5YmRjY2EwMWZiN2ZmYmJlNGY1MGM4MmQwZWM2MnAxNSwKKyAgICAweDEuMDEwcC0xLCAtMHgxLmZmZmZmZmZmOWZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLjFlNDljNTE0NzNmZjM3ZGMxYWQyNzI2NDMxMmMzN2I1cC0xMDExLAorICAgIDB4MS4wMjFlZWFhNmQyNzBkcDEsIC0weDEuZjM3OTcxNzU4ZTI1N3A5CisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuZWI0MTMyMWUxMzZiMzdmZmZiYjk5MDI3ZmZjODUxNGJwLTIxLAorICAgIDB4MS4wMmYxNzhiYzVlMmMxcDMsIC0weDEuYTk5OTk5OTk5OTk5YXAyCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuMDgwZmZmZmZmNzljYjgwMGQ0ZmE0MzUxZDhlNjMxNzFwLTIsCisgICAgMHgxLjA0MHAtMSwgMHgxLjAwMDAwMDAwMDYwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS5jZjJiMTlhY2ZkNTM4ODIwY2Q2MmI5NzYyZmJkMDdkOHAtMTAxOCwKKyAgICAweDEuMDQ5M2NkYTdiZTQ1MnAxLCAtMHgxLmVmZTRiMjQyMDcxYWJwOQorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLjY2OTJjMDViMDliYWJhMmVhNDhkNzg1YWQ0YTQ1NzVkcDEzNSwKKyAgICAweDEuMDVlYmY4MjQ4YTczNHA5OSwgMHgxLjVlM2IzMmEyYTlmYjBwMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjgxMGYyZjUzOTgwNTc3ZjY2NjNhYmZhMWY3NzQyOTFicDcwLAorICAgIDB4MS4wYWFhYWFhYWFhYWFicDcsIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5mZmZlZTMzNTM2OGVhMDAwOGFhNmIzYjAwNjM1NDYyNXAtMSwKKyAgICAweDEuMGU0ZjkzOGMwZTBiYnAtNDgyLCAweDEuYjQ4MzhhYTcwZDAyNXAtMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5jZmM0NzBjYzkzOTIyN2ZhOTcwYjU4YjkxNTcyZjcyNHAtNDAsCisgICAgMHgxLjEzYmQxMWJjZmFhNTBwLTUsIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS5lYzMzZWE1NWFmZDMzYWQyMTlhYTJhZWMwODMzOTdkZnAtMSwKKyAgICAweDEuMTUwMWY0NDY1OWU1NHAwLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5mNjQ4YTBlYWQ4MmY2MDAxZGFmMGQ0NmFiZDAxOGI3N3AtMSwKKyAgICAweDEuMTU1NTU1NTU1NTU1NXAtMSwgMHgxLjAwMDAwMDAwMDAwMDdwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS5mZTdlYjY4NzM0YjVlODI1ZTk0ZDZkZTQ1NGNkZTE4ZXA2LAorICAgIDB4MS4xNzQ1ZDE3NDVkYTcxcC0xLCAtMHgxLjAwMDAwMDAwMDAwMDdwMworICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLmE1YTAwYzc3YzY1YmY1YjA1OTJhNjE0MDdiMmJjNzlmcC0zOSwKKyAgICAweDEuMTk3M2IxMDJmZmRkYnAtNiwgMHgxLmExZDg0ZjZhM2I5MzRwMgorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmU3ZTI2NzQ1ZjUwZmU4MDBkMTQxNDVmZjgwMTMzNzYxcC0yLAorICAgIDB4MS4xOWVlZGViMTAyZDg0cDIsIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS5hNzNmOWFjYmY0MTI1YTg5MDIwMTEwYTI5YzM5YmJkMnAxMDMsCisgICAgMHgxLjI0NzY1YTBjZGQ0NTRwNywgMHgxLmNkODFlZGZkNmQ1YjhwMworICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS40NDVhZTM5MGY0YjUzNjljMTQyNmY5ZmU4YjhhMTc1MXA2MTUsCisgICAgMHgxLjI0OTI0OTI0OTI0OTJwLTUsIC0weDEuZmZmZmZmZmZmZmZmOHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLmU0ZTA0NTIwNTUyN2YzM2YwYzk3NjhkY2I3ZjEzZmFicC02MTYsCisgICAgMHgxLjI0OTI0OTI0OTI0OTJwLTUsIDB4MS5mZmM3ZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuMmRkMTdkYzcyOTNkYzgwMDFlMTk4NmExNDg3NWJlOTVwMTIyLAorICAgIDB4MS4zMTUwYTEyZjI1YzhkcC00MSwgLTB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuNTJjNThjZGJhYzRjYjdmZWI3NjFlMjRiYmRlOTliODVwLTUzNCwKKyAgICAweDEuMzMzMzMzMzMzMzMzM3AtMiwgMHgxLjMzMzMzMzMzM2NlOTdwOAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5iYzdmMDU2ZWM3MWZmMDAwMDEwNDgwOGM5OTkwYWU5ZnAtMiwKKyAgICAweDEuMzMzMzMzNDZjZjhiYXAtMiwgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuYTJjOWRjN2JiMmU3MjRhZTc0NmM3YTBhMDc2YjEyOWJwLTI5MSwKKyAgICAweDEuMzhhYmY4MmVlNjk4NnAtMSwgMHgxLjk4MHA4CisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLmI0ZjYwZTU3OTViNWU4MDg4YzE4NjVhYjllMGUyNjk0cDAsCisgICAgMHgxLjNlYzk4NGNiMzY3MDFwMCwgMHgxLjM4MDE4ODc5YjJiYThwMQorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS44ZmNmMzAxYzJiNDY1MzJmZmZiNmEwNmNjNDNkZWM5MXAtNjY3LAorICAgIDB4MS40cC0xMDcwLCAweDEuM2VmMzY4ZWIwNDMyN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS4wMDAwM2Y2NWNjZTgwODAwMDBmZmVmNmUwMmJmZTUwOXAwLAorICAgIDB4MS40cDQsIDB4MS41MjlhMTU3NGMwYzcycC0yMAorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS45MDAwMDAwMDAwMDAyODAwMDAwMDAwMDAwMXA0LAorICAgIDB4MS40MDAwMDAwMDAwMDAxcDIsIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuNDMwMTVjZjc0ZDZlMDdmZjM2NjYzMDVkZGZmYjVmNGVwMSwKKyAgICAweDEuNDNlNzQzYmE3OWM0MXAtMSwgLTB4MS4wMmMzMGI4MGViNTE0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuYTM2ZTFjM2M3MDBiN2E0MTZmYWQ2NDFiZmMwMzFhZGJwLTEwLAorICAgIDB4MS40N2FlMTQ3YWUxNDdicC01LCAweDEuMDAwMDAxY3AxCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLmU1ZWNjZjFiM2EwNWRjZjdhZGNhOGQ0N2Y5MzdkYWM3cC05ODUsCisgICAgMHgxLjRlOTFiMGU5MWIwZjFwLTEsIDB4MS45MGM5NzE0ZmJjZDlicDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLjk1MzM1YmZiNzZjNmM3ZmUzODUyNmNkZTFjMTZlZGJkcC0zLAorICAgIDB4MS41MTUyYjdjMzczMzY4cC0yMiwgMHgxLmJiMzgyODhhMGE2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMHgxLmZmZmZmZmZmZmZmZmIwMWUyMWE0MDQ0MjllODhjZmQ2cC0xLAorICAgIDB4MS41MTc1ODc5MGI0MTgxcC00LCAweDEuMHAtNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEuNzAyZWJmYTFmZjIwMTNmMjQzOGNmZDE5MzViNzMwOTlwMTAxLAorICAgIDB4MS41NTU1NTU1NTU1NTU1cC0yLCAtMHgxLjAwMzgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEuYmEzMGExMjdmNmRkNWZkOWM2MGE3ZjAxMGQ5Y2ExMjVwMjAyLAorICAgIDB4MS41NTU1NTU1NTU1NTU1cC0yLCAtMHgxLmZmYzdmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS43ZmZmZmU4ZWRkYzQ5YTBiYjc0YzliMzk0MmU1ZWIwYnAxLAorICAgIDB4MS41NTU1NTU1NTU1NTU1cC0yLCAtMHgxLmZmZmZmZTNmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEuOGFhODgwODY0N2QwN2I4ODE5YjY4NmE0NDgxNzQwNzZwNTg2LAorICAgIDB4MS41NTU1NTU1NTU1NTU1cC01LCAtMHgxLmZmYzdmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS43YTBhOTEwOGUxZDE4ODRjNTg0YTlhYjgxZmMzZjNkMXAtMjk0LAorICAgIDB4MS41NTU1NTU1NTU1NTU1cC01LCAweDEuMDAwMDAwMDAwZTBwNgorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS5hZDNkNTAzMzIxN2EwNDdjMjYwMmVkOWIzYzBhOTY0NHAtNDYxLAorICAgIDB4MS41OGEyNjEyMWY0NmY2cC0yLCAweDEuMjRmNDVmNWZkNGY3OXA4CisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjExMDRmYjhjZjc4NmM4MDBmZmM3MzU4ODlhNTMxZmEzcDAsCisgICAgMHgxLjYxMzA5ODRjMDIwMTdwMCwgMHgxLjk5OTk5OTk5OTk5OWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuMWU5NTJiMTljYzMzNjcyZjFjZGQzZWM1MGUwYjNkZjJwLTEwMjMsCisgICAgMHgxLjYyMmU4YmEyZThiOWRwLTEsIDB4MS5lMGY4M2UwZjgzZTBjcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLmNlYWZkOGMwMzg1YmQ4YWJiZDU3NDQ3MDRiZjEzZDRlcC0xMDIzLAorICAgIDB4MS42NzExMTExMTExMTBjcC0xLCAweDEuZjMzMzMzMzMzMzMyNHAxMAorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDB4MS42YTA5ZTY2N2YzYmExMmY5MzI0N2E3NmQ3NDM3NDQxOHAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2I5ZXAtMSwgMHgxLmZmZmZmZmZmZmZmZjNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuYTg4NzI5M2ZkNmYzMGExMWU5ZjNhYWIxNjFiMGQ0MWZwMCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0NnAtMiwgLTB4MS5mZmZmZmZmZmZmZmY4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLjkxNzQ5OTkwMGZkYTA3ZmVkNDk3OTZkODI1NmNiZWFkcC00MCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0NnAtMywgMHgxLmZmZmZmZTNmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS5mNDZlOTY3OTgwZTA0OGM1OWZkMGZiZWExZTU3NzgxY3A5NjcsCisgICAgMHgxLjdhMHA3LCAweDEuZmZmZmZmZmVmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLjk5Y2U0NWI3ZTI4ZmM3ZmYyZDNjZmI0NjE3NzQyZDdhcC0xLAorICAgIDB4MS43YmYwYjIzNDhiMGE4cDIsIC0weDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5mZTlkM2ZhY2VjZGI0ODJlNTJhMjAyNmYwZDBmY2JhYnAwLAorICAgIDB4MS44cC0xLCAtMHgxLjMzMzMzMzMzMzMzYzBwMQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS45NmMzYTg2NGQ5MmNjODI0MmZhNmEwNTZiYjA4YjNjZnAtMSwKKyAgICAweDEuODVlODVlODVlODVlYXAtMSwgMHgxLmIwNzNlY2FkZTMwNTNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuZjJkODBjZjhjYzA4YjdmZmZmZWVhNzlmOTVjM2E5YmFwLTEsCisgICAgMHgxLjg3ZDg3MjQ0MWVhYmJwOSwgLTB4MS5mZmZmZmZmZmZmZmVlcC05CisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLmZmZmZmZmZmZmZmZjcwMWY4YWZiOWFhMDZiYWQzM2MxcC0xLAorICAgIDB4MS44OWUzNmVmODRmMTlkcDEsIC0weDEuMDAwMDAwMDAwMDAxMXAtNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmI3NTBmMDc1OTNhYzBmZWZwMCwKKyAgICAweDEuOGQ2MDBiNzY5Njg2MnAtOTYsIC0weDEuZWZhZTYxZjYwZjZlOHAtNTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEuZThmMTU1NjVlZDQzYTgyZTA1MjIzNmFjM2Y4YTFmMDlwNzcsCisgICAgMHgxLjk4ZDJmZTVjNTNmMzRwLTM5LCAtMHgxLjA0NGEwMDJkNTBhZDhwMQorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIDB4MS4wZjRiMTE4YTEwZTQ5ZmZmZmYwMGFlNzM1N2Q4N2M5NHAtMSwKKyAgICAweDEuOTk5OTk5YTYzN2YxMHAtMiwgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuZDI1MTVjNDlkNjQxNTdmZWY2MmVmZTM3YWE3ZDRlNTdwLTQ0LAorICAgIDB4MS45YzAxMzNjZGIwODU2cC01LCAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLmZiODVlOWYxM2YwNzY3NTM0NTBlMzE1Njk1ZDIzOWU5cC0xMDIzLAorICAgIDB4MS45ZjBlZDRmOTMwNTIycC0xLCAweDEuYTVkYjhhMTc1NWU5Y3AxMQorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIDB4MS4wMWFiOGYyNjcxYjZlODAwMDA5NjM0OWFiODk3NGVjNXAwLAorICAgIDB4MS45ZmNmZTdmM2ZhMTgxcC0xLCAtMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAweDEuNjljNzM4MjRmYmFiZjgwNjZjMGYzODQ4N2M2MDBjNzJwOSwKKyAgICAweDEuYTA0MzI3NGI3MDVjZXAzLCAweDEuNDg3ZTMxY2NlNjQ2OHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgMHgxLmQyMDA4OGY0ZWViOGE1MmZmMDI5ZmY3ZTQ3NmUzYjY3cC01ODIsCisgICAgMHgxLmE1ZDE3NDVkMTc0NmVwLTEsIDB4MS4wM2UwZjgzZTBmODNjcDExCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLmM0YmVlZGYzMTUxZTI4MDNlMDQ5YmI1MTYxZDEyNzJkcC0yNzIsCisgICAgMHgxLmFhNGNlOGVkNTI2YjFwLTEsIDB4MS4wMDg4MHAxMAorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDB4MS43MTczMDYyYjc0YzIxN2ZlYTZiNDFlNmE3ZmI0OGRkNnAtNzExLAorICAgIDB4MS5hYjk5ZDM2MDkxYmMwcDk3LCAtMHgxLmQxMzZlZThlNTk1NzNwMgorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS44NmMxYjQ5YTU1MTA5N2ZlNzgzOTljMDBkMDE1N2Q5MnAtMiwKKyAgICAweDEuYjc4MjIxOGMzZmRiNHAyLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAweDEuNWI2YTc0NDk5ZDYzNzgwNGI5YWEyOGY5Yjc2NmMzY2NwLTEsCisgICAgMHgxLmJjZWI3NzFhMDJiZGVwMiwgLTB4MS45OTk5OTk5OTk5OTlhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLmZkZGU2ZDdkOTkyZDRmZmNkMGEyNDQ2YTk1NzJiNzkxcC0xLAorICAgIDB4MS5iZmZmZmZmZmZmZmZkcC0xLCAweDEuZmZjN2ZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS4yNDkyNDkyNDkyNDkyZjA1Mzk3ODI5Y2JjMWFkZTY5ZnAtMTAyMywKKyAgICAweDEuYmZmZmZmZmZmZmZmZnAxMDIyLCAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS5jY2EzNGQ4ZDYwOTU0MjM1MmRmZWFhY2U1MjhjYjdhMXAtODE4LAorICAgIDB4MS5jcC0xMDMzLCAweDEuOTU1NTU1NTU1NTU1MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS41NWNiODA1ZDNiNmFiNWM3Njc1Y2UyODhkYjE3OWYyYnAtOTgxLAorICAgIDB4MS5jcC0xMDMzLCAweDEuZTY2NjY2NjY2NjY2MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS45N2EzZmNiYWNlYmU1ZDg2ZDRmOTY3NWQzYjgyMDhmOHA4NjEsCisgICAgMHgxLmNwLTEwNTksIC0weDEuYTBlYTBlYTBlYTBlYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIDB4MS5lOTI2ZjMzNDI3MjlkMTAwYmVhYjIyYjUwMjlmYTY5MnAtOTU2LAorICAgIDB4MS5jcC0xMDcxLCAweDEuYzhlYmQ0OGViZDQ5OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS5mMTY2OGE4NzdjMzAyMGM4NTA1YzQ1YWU5OTRiZDM1OHAtMTAwMiwKKyAgICAweDEuY3AtMTA3MSwgMHgxLmRlZWFiYjc4ODQ1NDlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAweDEuMjQ5MjQ5MjQ5MjQ1OTc4MjljYmMxNGYwZTkzYzc0NmVwLTEwMjMsCisgICAgMHgxLmMwMDAwMDAwMDAwNTdwMTAyMiwgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuYzY1YzJjZjM5NjJkYTgwMTNkNDBlZThjM2I0NmJmMWRwOTYsCisgICAgMHgxLmMyNWMyNjg0OTE2MTBwLTQ0LCAtMHgxLjFlZmVmZjVhMjczZWNwMQorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDB4MS45NzBjMTBkNmIwYTU5YTdmYWRmMWUyMWU1YWI2NzdiZXA3NywKKyAgICAweDEuYzI1YzI2ODQ5NzY4MnAtNDQsIC0weDEuY2M2YjkzYWJiYjA3NHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLjg1ODNjMjQ4OWE1MDM4MDAwNmM5YzcyMDViNWE1NGZlcC0xLAorICAgIDB4MS5jMmUxNzBiODVjOTk0cC0yLCAweDEuNTU1NTU1NTU1NTU1NXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIDB4MS43ZTQ1NzMwMTViYzYzYmQyNjc2NzlhYWIyY2Q4OWY2NnAtMSwKKyAgICAweDEuY2IzYzk0ODRlMmFkMHAwLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuN2UzZTcxOWNlNWI3OTdmZTg4NTgxNWJjM2IyNDU3ZjJwLTEsCisgICAgMHgxLmNiNGQ2OWViNGY0YjlwMCwgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMHgxLmZkNDI1MGE4NzFjN2ZlMDBkNWY1MTAzOWM1N2RkZTZmcC02MjQsCisgICAgMHgxLmNjYzRjMGZkNjNjYjZwLTEsIDB4MS4wcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLjVkYzI4NWQ1YjVmMTY4MDBmNmQ3ZGM1ZmZkY2Y4ZDE2cC0xLAorICAgIDB4MS5kMTc0NWQxNzQ5ODgzcC0xLCAweDEuZmZjN2ZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgMHgxLmZlYTU5NWQ1YzA0Zjg4MTQzOGY3ZjVmMTBkYmIwMjk3cC0yLAorICAgIDB4MS5kNTU1NTU1NTU1NTUycC0xLCAweDEuZmZjN2ZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLjAwMDAwMDAwMDAwMDdmZjA0YTI2Njc4YjYzM2ExMzNlcDAsCisgICAgMHgxLmQ4NzI0NDFlYzM5MDVwMiwgMHgxLjAwMDAwMDAwMDAwMTFwLTUwCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgMHgxLmE2M2Y0YmQ3OTdmODI4MDU5MTliMDlkMmI2MmRhMWUxcC0xLAorICAgIDB4MS5kYTYwYTFmMmVjNjA4cC0yLCAweDEuMDA3Y2Q5NTI0ZDNmNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS5hODJlMTQ2OTAyNWM4NTBjMTQ0OGExOWMyYWY2N2ZlNHAtNTAwLAorICAgIDB4MS5kYjZkYjZkYjZkYjcycC0yLCAweDEuYzMwYzMwYzMwYzNwOAorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIDB4MS43NzlhMDZiYzM4ODBlMmMzOWRmYzY3OTc0OWU0NzBhNXAtMiwKKyAgICAweDEuZGJiMGUwYWEyZGQwZXAyLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuZjU1YjQxYWI0YTY3NTQwNWI1NDI3MDNkOWIwMzdhZTdwLTQwOCwKKyAgICAweDEuZGRhOTVhOTVhOTViMXAtMSwgMHgxLmZjMHAxMQorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIDB4MS43NjdmYmFkMjE5YTIwODAxOGQ2YjgxZjdmM2EyMDUxYnAyLAorICAgIDB4MS5kZTdmMTU0ODM4NTM3cC02LCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuNzExZDYwMmZmYjI3ZjgwMjA5MDQzZDZkOGYyODNjZjhwLTEwLAorICAgIDB4MS5lNjY2NjY2NjY2NjZicC0xLCAweDEuZmZmZmZmZmZmZmZmOHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMHgxLmZmNTY5NzM5NmFmMTU3ZmZlYWQ3NDg4NTlhZTNjOWNicDEsCisgICAgMHgxLmVlZWVlZWVlZWVlZWVwMiwgMHgxLjVhYWFhYWFhYWFhYWJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAweDEuZmU5NjFhM2NjZDNjMjgxYWQwMzMzZDY4MDY5MjdiMmJwLTEsCisgICAgMHgxLmYwN2MxZjA3YzFmMDdwLTE0LCAweDEuNDBhNTdlYjUwMjk2ZHAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAweDEuZGFjMGM3Y2ZiZWYwNWJkNjVhMGU2ZWEyNDc3ZjQ3ZmFwNzc4LAorICAgIDB4MS5mMWExN2QwNzllMjRmcC0zLCAtMHgxLjdkOWMwYjVmM2E5NjBwOAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS42ZWE2OWJkODViNjdjYzg1YmU4M2ZhOTc3ZGMxMjNjYXAtMSwKKyAgICAweDEuZjMzMzMzMzMzMzMyNHAwLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAweDEuNzE1YmY5MmY0M2YwMGI0MDMwNDllMGMzZTUxMTUzZjhwLTE2LAorICAgIDB4MS5mNjY0OTg0YjhhMTUycC0yMSwgMHgxLjhiODUyY2UyMjE5ZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuNzQzNjgwOTRlZmJmYjM4MGJiMmRmMmUyMGUyYTdhMTdwLTg1LAorICAgIDB4MS5mNmRlZDhiYzNmYTQzcC03LCAweDEuYzA4MzU5NWMyYjFiY3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgMHgxLmIwZWY1NTYwMDYyMDc3MThkM2RhMDhhOTAxMzY3MjZkcDcyMSwKKyAgICAweDEuZjgzZTBmODNlMGI4YXAtMSwgLTB4MS4wMDAwMDAwMmI2NThlcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLmIwZWY0Y2Q5NGY4ZjhhOGU2MDNmZjY1OGY2MWZlZmIxcDcyMSwKKyAgICAweDEuZjgzZTBmODNlMGJhNXAtMSwgLTB4MS4wMDAwMDAwMDIyMWVmcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLmIwZWY0Y2Q4MmYxMzg3ZDc2NTgwYTllZWFiYTY1NmY2cDcyMSwKKyAgICAweDEuZjgzZTBmODNlMGJjZnAtMSwgLTB4MS4wMDAwMDAwMDIyMWVmcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLmIwZWY0Y2ZiMWNlYzM3ZDY0ZjM3ZWEzNzU1OTdiNzQwcDcyMSwKKyAgICAweDEuZjgzZTBmODNlMGJjZnAtMSwgLTB4MS4wMDAwMDAwMDJjYjA5cDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLmIwZWY1NTVlMjY5YzY3NzRhMThiNTZhZjM2OTQ3ZDgycDcyMSwKKyAgICAweDEuZjgzZTBmODNlMGJjZnAtMSwgLTB4MS4wMDAwMDAwMmI2NTczcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLmIxYzMwNDJmZTc2ZWM3NGViNjMxNzc2ZWE5MGMzY2M2cDcyMSwKKyAgICAweDEuZjgzZTBmODNlMGJjZnAtMSwgLTB4MS4wMDAwNDAwMDIyMWVmcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLmYyZTkyNDc3ZDY0Yzg2ZmE1NGY2MjE1ZWM4ZGU1ODk2cDgyNywKKyAgICAweDEuZjgzZTBmODNlMGJjZnAtMSwgLTB4MS4yNWFiNmY3YmNlZDkzcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLmIwZWY0YzA0YWI2Zjk3YTUyOTM1MDkxNTUwNGMwMDc0cDcyMSwKKyAgICAweDEuZjgzZTBmODNlMGJjZnAtMSwgLTB4MS5mZmZmZmZmZmM0M2RlcDE0CisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLmIwZWY1NTViMWRiZTk3ZDI3NmQxOTYzMDZiYTAwMDUxcDcyMSwKKyAgICAweDEuZjgzZTBmODNlMGMyNnAtMSwgLTB4MS4wMDAwMDAwMmI2MjBmcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLmIwZWY0Y2JlNmRlZTY4ZjY5N2ZjNTg4NWU0M2EzNTQ1cDcyMSwKKyAgICAweDEuZjgzZTBmODNlMGY4MHAtMSwgLTB4MS4wMDAwMDAwMDIyMHAxNQorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIDB4MS42NjFkYjI0MmUxM2Y3ODc2MGYzMzg1YzQ4ZGU2ZTE0ZHAtNzE2LAorICAgIDB4MS5mODRmMWI3N2FhNjFlcC0xLCAweDEuMDAwMDA0NHAxNQorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS42Y2MwNTY1OTNiMTg5N2ZlNzI5NDU1NmU4NWE3ZmNjYXAtMSwKKyAgICAweDEuZjg2OWIxMGUxNjQ2ZXAwLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAweDEuOTZlYzE5OWM4MjgzMjgwZGNkZTFiZjBhNmJkZjE4ZGRwLTMzLAorICAgIDB4MS5mODZkNmY2M2FhMDQ5cC0xLCAweDEuNzgwcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLjhkMzU3NWM1YTA4MjE3ZTk2ZDJiYWNjZDkyMTAyMTAxcDYxMiwKKyAgICAweDEuZjk2ODYwYWZjYjQ1MnAtMSwgLTB4MS4wMDAwMDQzZmZmZWVkcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLjhkMzU3NWM1MmVhMzFmZWEzZDA3OTlmOGNmODUyM2UzcDYxMiwKKyAgICAweDEuZjk2ODYwYWZjYjQ2OHAtMSwgLTB4MS4wMDAwMDQzZmZmZjg1cDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjhkMzU3NWM0NzJmMGM4NjNjMDZhOTc2ZTIyYTI1YzZkcDYxMiwKKyAgICAweDEuZjk2ODYwYWZjYjQ4OXAtMSwgLTB4MS4wMDAwMDQ0cDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgMHgxLjhkMzU3NWMzNWFhY2VmZWE5NWM4ODU0MzlkNDliZDk5cDYxMiwKKyAgICAweDEuZjk2ODYwYWZjYjRiYnAtMSwgLTB4MS4wMDAwMDQ0MDAwMGQ0cDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLjhkMzU3NWMwY2ZjNDYxYmJlNWVlMzY0NGNjNmQ3N2MycDYxMiwKKyAgICAweDEuZjk2ODYwYWZjYjUwNnAtMSwgLTB4MS4wMDAwMDQzZmZmYzc5cDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLjhkMzU3NWMxNjY3ZGYxMTYzOTc5ODI0ZDg2M2NjNTcxcDYxMiwKKyAgICAweDEuZjk2ODYwYWZjYjUwNnAtMSwgLTB4MS4wMDAwMDQ0MDAwMDIycDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgMHgxLjhkMzU3NWI0ZmVjNTg4ZTU2ZjFiYTRiYjJjZGUzZDM3cDYxMiwKKyAgICAweDEuZjk2ODYwYWZjYjcxNHAtMSwgLTB4MS4wMDAwMDQ0MDAwMzUzcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLjhkMzU3NWFjM2ZmNDllZTAwNDQwNDE5NTFkMjA3MDZicDYxMiwKKyAgICAweDEuZjk2ODYwYWZjYjg1OHAtMSwgLTB4MS4wMDAwMDQzZmZmZTZkcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLjY3MTk4NmRiZTUzZjU2YWNkMzZkZGFlZWM5NzI3N2FhcC00NiwKKyAgICAweDEuZjk4NWY3Y2JmMDA1OXAtNywgMHgxLmUzZmEzMDE4YmRlMDhwMgorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIDB4MS5lZWM3M2ViM2VkOTI0Nzk0MGU4Nzc1MGU3ZmM0OTQ3OXAxMDE5LAorICAgIDB4MS5mYTgxYTVlN2Q0MTJjcC0xLCAtMHgxLjAwMDAwN2ZmZWYwcDE2CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLjZhZmMyYjM2NjljYWZkOGIwNGJlMDc2MzdjYjhjZTVlcC0xLAorICAgIDB4MS5mZDU1NzAxOWYxY2QwcDAsIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIDB4MS5jNGY5MWQyNGU1YzNlODZmNzNlYTY4MTMyYmRhNGI4YXAxMDAyLAorICAgIDB4MS5mZGZmZmZmZmZmZmZmcC0zLCAtMHgxLmYzZmZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS42YTkzYjdmMDQ2OTRhZDY2YjlhYTY0Zjc2YmExZmEzOHAtMiwKKyAgICAweDEuZmU3YjBlZTZhZmEzY3AyLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAweDEuZTE3NzZiZGUxNjY0MzgwOGEzOGNhZjA1MGY1Y2I2MzBwLTk2NiwKKyAgICAweDEuZmYzZTlhZTMwMzNhZXAtMSwgMHgxLmJhNmMxM2JmMDA1ZWNwMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuZDRlZjVlY2Q3NTRjZDdmNmU3MDE2NDUzOTk0YzIxZDVwLTk0MywKKyAgICAweDEuZmY0MzNhMDJlYzk2NHAtMSwgMHgxLmJhN2EzNDdjZGZmZWJwMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAweDEuZmU5YmJkYzE2MWFiZDdmZDliMzJkYmJjMmQ3NDg0MzhwLTkxNSwKKyAgICAweDEuZmY0OGUyYjRhNWQ3ZXAtMSwgMHgxLmJhOGI4MTBmNTUwN2ZwMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEuZGU1MmFhNmE1ZWNhZjgwNjc3OTdjOWUyYTI4MWIyM2VwLTkwNSwKKyAgICAweDEuZmY0YWUwZTQ0MGZiNnAtMSwgMHgxLmJhOTE5OGFiMDNjZDRwMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEuNzZiYzUyZGM3NDMxZjgwMDAwMDUzNmE5NGJjM2QzMDVwMTMzLAorICAgIDB4MS5mZjc3ZmZmZmZmZmZmcDE1LCAweDEuMGIxZmRjZDc1OTBhYnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLjVjMWMyZGVkNzIxM2Q5OTE4MzZmZDJhYThkZmY0ZGY3cC0xMDIzLAorICAgIDB4MS5mZjdmZmZmZmZmZmZmcDAsIC0weDEuMDAwMDAwMDBjcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgMHgxLjdhMmI0ZDcyY2NmYWI3ZmViYjY4YWIzYWM0MjJjZGE3cC02MTMsCisgICAgMHgxLmZmODU3OTZlNGYwNjNwLTEsIDB4MS5iYjQ0Yjg2Y2EwOTI4cDE4CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjE4YTJmYWY4YjVmNmU4MDMyODM3ZTdkODdhYmNmYTU4cC00MTAsCisgICAgMHgxLmZmYWUxM2ViZjE4NzJwLTEsIDB4MS5iYmMwZDdjM2E4ODJjcDE4CisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLjM5ZTdkODRhODk1ODI4MjA1MzY2NmQ4YzQxOTM4NDY2cC03MzksCisgICAgMHgxLmZmZjAwMDAwMDYwNzFwLTEsIDB4MS4wMDAwMTQwcDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLmU2Y2U2ZjQ5ZWE2MDI4MDE2MDUwZjVmMzhhZWZjMjA0cDc5NSwKKyAgICAweDEuZmZmODAwMDAwZTQ4M3AxMDIzLCAweDEuOGRmNmIwZGY2YjBlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDB4MS45YWFhM2NkZDEyZGMwNWUyNDZiMjM0NjU0YjhkYzc2ZnAtNDQyLAorICAgIDB4MS5mZmZmZmU3ZmZmZmZlcC0xMDIzLCAweDEuYmEyZThiYTJlOGJhNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDB4MS5mNjYzMjc4ZjczMDQ0ODMyYTJjMWM1ODIwYzUxY2RlN3AtMSwKKyAgICAweDEuZmZmZmZmM2ZmZmZmZnAtOCwgMHgxLjAwMDAwMGVwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAweDEuZmZmZmZmY2Q1NTU1NDgwMWM3MjJiZjdmMzcxNTY0ZDdwLTEsCisgICAgMHgxLmZmZmZmZmJmZmZmZmZwLTEsIDB4MS45NTU1NTU1NTU1NTUycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLjYxYzUwYWM4ZTAyNTcwMDBjYTBkOGI5MzhkZmU3OWFicDU2NywKKyAgICAweDEuZmZmZmZmYmZmZmZmZnAxMDIzLCAweDEuMWJiYmJiYmJiYmJiOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS5mZmZmZmY4MDAwMDAwOHAtMTk5LAorICAgIDB4MS5mZmZmZmZjcC0xMDAsIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAweDEuZmZmZmZmODUyOTFjNjgwM2I4NTQ3MzMyZDAxZjYzYjFwMTAyMywKKyAgICAweDEuZmZmZmZmZmY4ZmZmZnA3LCAweDEuZmZmZmZmZmZlN2U0OXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLmZmZmZmZmM3ZmZmNDVmOTUxZjNhNzhkY2I1OWE3ZmE1cC04OTcsCisgICAgMHgxLmZmZmZmZmZmZWZmZmZwLTIsIDB4MS5iZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuN2IyOTM1OGQ0NWY0MWEyZjIzZWUyMmY4MGJiNmZkMDhwNTA4LAorICAgIDB4MS5mZmZmZmZmZmYzZmZlcC0xMDIzLCAtMHgxLmZkOGZkOGZkOGZkOGVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAweDEuZTM0MzdlNzBmZWMyNDU1OGMxMDc5Y2FkZTU2MWUyNzZwLTgxMCwKKyAgICAweDEuZmZmZmZmZmZmYmZmZXAtMTAyMywgMHgxLjk1NTU1NTU1NTU1NTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAweDEuZmZmZmZmZmZmZGZmZjdmZmZmZmVmZjk3ZmU2ZmZlZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmJmZmZwLTEsIDB4MS4wMDAwMDAwMDAwMDAzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgMHgxLmY2Njk3YzdhZmEwYWM4MjdkNDViNDI4YjljMTNlYTQ2cDc3LAorICAgIDB4MS5mZmZmZmZmZmZmMGQ2cDk1MiwgMHgxLjRmMjA5NGYyMDk0ZjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEuZmZmZmZmZmZmZmJjMzdmZmZmZmZmZjgyNDM2ZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZiNGJwLTEsIDB4MS5jY2NjY2NjY2NjY2NjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLmZmZmZmZmZmZmZjZmU3ZmZmZmZmZmZlMjMyY2ZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmY2Q2cC0xLCAweDEuZTY2NjY2NjY2NjY2NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5mZmZmZmZmZmZmZjM3N2ZmZmZmZmZmZGJkZmVmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmU2ZnAtMSwgMHgxLmZmZmZmZmZmZmZmZjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAweDEuMDAwMDAwMDAwMDAzYzdmZmZmZmZmZmViNDMxZmZmZmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmYwZXAtMSwgLTB4MS5mZmZmZmZmZmZmZTlicC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLjAwMDAwMDAwMDAxMmQ4MDAwMDAwMDBlY2I5ODBwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmMzdwMCwgLTB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAweDEuYWU4OWY5OTVhYWE5M2I4YWJlYTJjN2I3Y2JjZGM1ZTJwMzc4LAorICAgIDB4MS5mZmZmZmZmZmZmZjlmcDIsIDB4MS5mOGZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuMDAwMDAwMDAwMTkzNDgwMDAwMDEzZmQ2YjI0MDAwYWFwLTEwMTUsCisgICAgMHgxLmZmZmZmZmZmZmZmYTdwNiwgLTB4MS4yMjBwNworICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS5mZmZmZmZmZmZmZmQwN2ZmZmZmZmZmZmZlYzRmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZjZXAtMSwgMHgxLmU2NjY2NjY2NjY2NjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuZmZmZmZmZmZmZjFjZTQ4NWZkZjRhNWZkM2U2NzFlYTlwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZWZwLTUsIDB4MS5mZWZmZmZmZmZmZmZmcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAweDEuMDAwMDAwMDAwMDAwNDdmZmZmZmZmZmZmZmZmZmZmZmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmN3AtMSwgLTB4MS5mZmZmZmZmZmZmZmY3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLjAwMDAwMDAwMDAwMDI4MDAwMDAwMDAwMDA2NDBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmJwMTAyMiwgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZjgwMDAwMDZmZmZmZmZkMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMSwgMHgxLmZmZmZmZTNmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEuZmZmZmZmZmZmZmYxNzIxN2Y3ZDFjZjhkYTBjYzc3Y2JwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZHAwLCAweDEuMDAwMDAwMDAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIDB4MS5mZmZmZmZmZmZmZjhiOTBiZmJlOGU3YmY5MzI1OTZkZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZkcDEsIDB4MS4wMDAwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmZkZmZmZmZwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMSwgLTB4MS5mZmZmZmZmZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLjlmZGY4YmNjZTUzNDYwMDRjNWY4ZmUxZmU1MmIxMTE1cDU2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC02NCwgLTB4MS5jY2NjY2NjY2NjY2NkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLjMzNTQwNTM2MTM5NzU4MDFlMWYxOGM2MDdkOWY3Yzk2cC01NSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMjI0LCAweDEuZjZiMGRmNmIwZGY2YXAtMworICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS40MzM3Y2Q2YjExYmQ3N2ZmMWRmYjE2ZTc3NDQ3ZWY4ZXAxNTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTY0MiwgLTB4MS5mNmIwZGY2YjBkZjZjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLjlmZGY4YmNjZTU3MWZiM2M5NTYxZjMzN2M5YzQyN2Q0cDI3OCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtOTMwLCAtMHgxLjMzMzMzMzMzMzMzMzdwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEuZGRiNjgwMTE3YWI5NjgwNTc3OTZlODE5MTRlNzg1OTVwOTA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDEyLCAtMHgxLmNjY2NjY2NjY2NjY2RwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEuMjM4N2E2ZTc1NjIzMzAwMGI0OWMzYjBiZjljNTQ5ODJwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA0LCAweDEuZTY2NjY2NjY2NjY1Y3AtMworICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS5hNWFkYjhjOGUzMmMxODA3YTdkYTkyYjQzZjdjYzkwY3A1NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA3NSwgMHgxLjcwYTNkNzBhM2Q3MGZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEuZWMxZGVhYmJlM2E5ZWFlMjliZGU1NmY4OGU4ZWY0ZWVwNjI3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDgxMywgMHgxLjhhZjhhZjhhZjhhZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEuZmZmZmZmZmZmZjhmOWRjY2Q1MmQ0NzBhODgyNjY5YzNwNjQ3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDg2MywgMHgxLjdmZmZmZmZmZmZmZmRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuMDAwMDAwMDRkYTIwYTdkMjgyMWNkZmQ0ZjYzNDdkZDBwMTI4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zLCAtMHgxLjAwMDAwMDAwMGUwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEuNDRjZTU0MWI2MDM0NmM5ODA5NDQ0M2I5ZmFhODRhYmRwMTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywgMHgxLjRhZmQ2YTA1MmMwZTJwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuY2I3MjBkY2VmOTA2OTE1MDNjYmQxZTk0OWRiNzYxZDlwLTEsCisgICAgMHgxLjBwLTUsIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLnAtNSwKKyAgICAweDEuMHAtNSwgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS5wMCwKKyAgICAweDEuMHAwLCAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS5wMCwKKyAgICAweDEuMHAwLCAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLnAtNDAsCisgICAgMHgxLjBwLTUsIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEucC0xNjAsCisgICAgMHgxLjBwLTUsIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS5wMCwKKyAgICAweDEuMHAwLCAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgMC4wLAorICAgIDB4MS4wcC01LCAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIDAuMCwKKyAgICAweDEuMHAtNSwgMHgxLjBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgMHgxLjBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuMTEzMDFkMDEyNWI1MGE0ZWJiZjFhZWQ5MzE4Y2VhYzVwMCwKKyAgICAweDEuMHAzLCAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS5wMywKKyAgICAweDEuMHAzLCAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLjFkNDg3MzE2OGI5YWE3ODA1YjgwMjg5OTBmMDdhOThicDAsCisgICAgMHgxLjBwNSwgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEucDUsCisgICAgMHgxLjBwNSwgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS5wMjQsCisgICAgMHgxLjBwMywgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS5wOTYsCisgICAgMHgxLjBwMywgMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS5wNDAsCisgICAgMHgxLjBwNSwgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS5wMTYwLAorICAgIDB4MS4wcDUsIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAzLCAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcDMsIDB4MS4wcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwNSwgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHA1LCAweDEuMHAxMgorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS4zZGVhNjRjMTIzNDIyMzViNDEyMjNlMTNkNzczZmJhMnAwLAorICAgIDB4MS4wcDEwLCAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS5wMTAsCisgICAgMHgxLjBwMTAsIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuNGJmZGFkNTM2MmEyNzFkNDM5N2FmZWM0MmUyMGUwMzZwMCwKKyAgICAweDEuMHAxMiwgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEucDEyLAorICAgIDB4MS4wcDEyLCAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLnA4MCwKKyAgICAweDEuMHAxMCwgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIDB4MS5wMzIwLAorICAgIDB4MS4wcDEwLCAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLnA5NiwKKyAgICAweDEuMHAxMiwgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS5wMzg0LAorICAgIDB4MS4wcDEyLCAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLjAwMDAwMDAwMDAwMDE5OGQ0ZDBkYTA1NTcxZTlhZDQ3cDIsCisgICAgMHgxLjZhMDllNjY3ZjNiY2NwLTEsIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLmZmZmZmZmZmZmZmZmNjZTU2NWU0YmY1NTIxNDY3Mzg1cC0zLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xLCAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjAwMDAwMDAwMDAwMDE5OGQ0ZDBkYTA1NTcxZTlhZDQ3cC0yLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcDAsIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLmZmZmZmZmZmZmZmZmNjZTU2NWU0YmY1NTIxNDY3Mzg1cDEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2NwMCwgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIDB4MS4wMDAwMDAwMDAwMDAxOThkNGQwZGEwNTU3MWU5YWQ0N3AyLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xLCAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIDB4MS5mZmZmZmZmZmZmZmZjY2U1NjVlNGJmNTUyMTQ2NzM4NXAtMywKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtMSwgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS4wMDAwMDAwMDAwMDAxOThkNGQwZGEwNTU3MWU5YWQ0N3AtMiwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AwLCAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIDB4MS5mZmZmZmZmZmZmZmZjY2U1NjVlNGJmNTUyMTQ2NzM4NXAxLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcDAsIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuMDAxNjJmMzkwNDA1MWZhMmMxYjRlODUzNzQ2YjZmMDRwMCwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtMSwgLTB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIDB4MS5mZmQzYTU2NWVmYjY0ZWE4OGE4MGQ4YTUyNTU0YTNhMHAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AtMSwgMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgMHgxLmZmZDNhNTY1ZWZiNjRlYWVlZDQ2NzE4M2I4ZDQ2YTk2cC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcDAsIC0weDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAweDEuMDAxNjJmMzkwNDA1MWY5ZjhmYzQ2YjM3NDNmODVjYmVwMCwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AwLCAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEuOTQ4YjBmY2Q2ZTllMDY1MjJjM2YzNWJhNzgxOTQ4YjBwMSwKKyAgICAweDEuOHAtMSwgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAweDEuNDRwLTIsCisgICAgMHgxLjhwLTEsIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEuOTQ4YjBmY2Q2ZTllMDY1MjJjM2YzNWJhNzgxOTQ4YjBwLTMsCisgICAgMHgxLjhwMCwgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEuNDRwMiwKKyAgICAweDEuOHAwLCAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLjI3OWE3NDU5MDMzMWM0ZDIxOGY4MWU0YWZiMjU3ZDA2cDAsCisgICAgMHgxLjhwLTEsIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIDB4MS5iYjY3YWU4NTg0Y2FhNzNiMjU3NDJkNzA3OGI4M2I4OXAtMSwKKyAgICAweDEuOHAtMSwgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEuYTIwYmQ3MDBjMmMzZGZjMDQyY2MxYWVkNzg3MWRiNDVwLTEsCisgICAgMHgxLjhwMCwgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgMHgxLjM5ODhlMTQwOTIxMmU3ZDAzMjE5MTQzMjFhNTU2NDczcDAsCisgICAgMHgxLjhwMCwgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuMDAxMjZhMGI5M2RiMjk0Y2FiZTMzZGE3MzU0MzdmNTFwMCwKKyAgICAweDEuOHAtMSwgLTB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIDB4MS5mZmRiMmU4ZWQyYTFmZTcxYmQ1OWZkZDYxMDMxMzA0NnAtMSwKKyAgICAweDEuOHAtMSwgMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLmZmY2MxYzU5NzNiMjEyOWE1YjE0MjRlMGM4ODc4NmI4cC0xLAorICAgIDB4MS44cDAsIC0weDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAweDEuMDAxOWY0NzRhYTE5MDAzOGM2YWY3NzVkOTJmMWQ3MjVwMCwKKyAgICAweDEuOHAwLCAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDB4MS5wLTQsCisgICAgMHgxLjBwMSwgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAweDEucDQsCisgICAgMHgxLjBwMSwgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS5wMCwKKyAgICAweDEuMHAwLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTEsCisgICAgMHgxLjBwMSwgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgMHgxLjBwMSwgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgLTB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS5wMCwKKyAgICAweDEuMHAwLCAweDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuZmZhNzRlYTM4MWVmYzIxN2E3NzNmMTVjMDI1ZjdjMGRwLTEsCisgICAgMHgxLjBwMSwgLTB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIDB4MS4wMDJjNjA1ZTJlOGNlYzUwNmQyMWJmYzg5YTIzYTAxMHAwLAorICAgIDB4MS4wcDEsIDB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS5wNDAsCisgICAgMHgxLjBwLTEwLCAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIDB4MS5wLTQwLAorICAgIDB4MS4wcC0xMCwgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS5mZTAxM2Y2MDQ1ZTQwYTdjNDE0OTkyMjNiNGEzOGNlOHAtMSwKKyAgICAweDEuMDA0cDAsIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgMHgxLjAxMDA2MDEwMDFwMCwKKyAgICAweDEuMDA0cDAsIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEucDUsCisgICAgMHgxLjBwLTEwLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEucC01LAorICAgIDB4MS4wcC0xMCwgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEuZmZjMDBiZmQ4MDhiZTA4NzM2NTM2NDc0NDgyMjBmZGZwLTEsCisgICAgMHgxLjAwNHAwLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuMDAxZmZlMDAzZmY2MDFiZmFjMTA3Y2E2YjI5YTBjMzFwMCwKKyAgICAweDEuMDA0cDAsIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgMHgxLjAxYmQxZTc3MTcwYjQxNWU3NjI2NjIxZWI1YWFmZjYxcDAsCisgICAgMHgxLjBwLTEwLCAtMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgMHgxLmZjOGJjNDg2NmU4YWQyYjk2M2UxODI4YjA3NjFjYmM2cC0xLAorICAgIDB4MS4wcC0xMCwgMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgMHgxLmZmZmZlMDA0MDA1NTM1NTg0NDQ0M2RmODY4MGE4ZTA1cC0xLAorICAgIDB4MS4wMDRwMCwgLTB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIDB4MS4wMDAwMGZmZTAwZDUyNTYyODUzNDBlNGYzYWQzNjI4N3AwLAorICAgIDB4MS4wMDRwMCwgMHgxLjBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwNDBwLTEwMjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLCAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgMHgxLjNiMmM0N2JmZjgyNzE5NDQyNTYwNWE5MjMxMWFjY2VlcDEwMjAsCisgICAgMHgxLjBwLTEwNzQsIC0weDEuZTY2NjY2NjY2NjY2NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIDB4MS45ZmRmOGJjY2U1NDJmNTA4MTQwNTc4Mzc2NzdiYWY4MnAtMTAyMSwKKyAgICAweDEuMHAtMTA3NCwgMHgxLmU2NjY2NjY2NjY2NjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuMDAwMDAwMDAwMDA2NTE1OTFmOWRkNWNkYjExMGY2ZTNwLTM4NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNywgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIDB4MS5mZmZmZmZmZmZmZmMwMDAwMDAwMDAwMDNlZmZmZmZmZnAtMzg1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC03LCAweDEuMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLmZmZmZmZmZmZmZkYWJhOWI4MTg4YWE3NDI4NDExZGQ1cC0zODUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcsIDB4MS4wMDAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAweDEuMDAwMDAwMDAwMDA4NTE1OTFmOWRkNWRjNGJjMzM2MWZwLTM4NCwKKyAgICAweDEuMHAtNiwgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDB4MS5wLTM4NCwKKyAgICAweDEuMHAtNiwgMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIDB4MS5mZmZmZmZmZmZmZGViYTliODE4OGFhMmRlZDc4MjBlN3AtMzg1LAorICAgIDB4MS4wcC02LCAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgMHgxLjAwMDAwMDAwMDAwYzUxNTkxZjlkZDYwNTUxMjdiNDk2cC0zODQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYsIDB4MS5mZmZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzkKKyAgICAweDEuMDAwMDAwMDAwMDA0MDAwMDAwMDAwMDA3ZTBwLTM4NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNiwgMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIDB4MS5mZmZmZmZmZmZmZTZiYTliODE4OGE5YjkxN2U2MjcwOXAtMzg1LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02LCAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMzQxCisgICAgMHgxLjAwMDAwMDAwMDAwMjc3M2E3N2Q3MTkxMDZlOTM5NTgycC0xNjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYsIDB4MS5mZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwZjdmZmZmZmZwLTE2MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNiwgMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIDB4MS5mZmZmZmZmZmZmZjAyMzE2MjBhMzljMDkzZjE2ZjhjZXAtMTYxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02LCAweDEuMDAwMDAwMDAwMDAwMXA1CisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgMHgxLjAwMDAwMDAwMDAwMzc3M2E3N2Q3MTkxMzYxY2UwZDVhcC0xNjAsCisgICAgMHgxLjBwLTUsIDB4MS5mZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAweDEucC0xNjAsCisgICAgMHgxLjBwLTUsIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAweDEuZmZmZmZmZmZmZmYyMjMxNjIwYTM5YmZhOGEyZDE5NzJwLTE2MSwKKyAgICAweDEuMHAtNSwgMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIDB4MS4wMDAwMDAwMDAwMDU3NzNhNzdkNzE5MWMzMDQyZmQwOHAtMTYwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01LCAweDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgMHgxLjAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMWYwcC0xNjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUsIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAweDEuZmZmZmZmZmZmZmY2MjMxNjIwYTM5YmUyZjA1OTVhYjlwLTE2MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNSwgMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS4wMDAwMDAwMDAwMDBlMmU0MmZlZmEzOWY1OWUzNmJjYnAtNjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUsIDB4MS5mZmZmZmZmZmZmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAweDEuZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwM2JmZmZmZmZwLTY1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01LCAweDEuMHA0CisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLmZmZmZmZmZmZmZmOTc0NmY0MDQxNzE4ZWQ0NTk5MGEycC02NSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNSwgMHgxLjAwMDAwMDAwMDAwMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIDB4MS4wMDAwMDAwMDAwMDE2MmU0MmZlZmEzOWZlOTU1ODNjM3AtNjQsCisgICAgMHgxLjBwLTQsIDB4MS5mZmZmZmZmZmZmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEucC02NCwKKyAgICAweDEuMHAtNCwgMHgxLjBwNAorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIDB4MS5mZmZmZmZmZmZmZmE3NDZmNDA0MTcxOGJlMjkxMzBjM3AtNjUsCisgICAgMHgxLjBwLTQsIDB4MS4wMDAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAweDEuMDAwMDAwMDAwMDAyNjJlNDJmZWZhM2ExYmMzOWIzYjNwLTY0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC00LCAweDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgMHgxLjAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDc4cC02NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNCwgMHgxLjBwNAorICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIDB4MS5mZmZmZmZmZmZmZmM3NDZmNDA0MTcxODc2NzAwNzEwNHAtNjUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQsIDB4MS4wMDAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAweDEuMDAwMDAwMDAwMDAwNDUxNTkxZjlkZDViYTU5MzI4YWJwLTI0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC00LCAweDEuZmZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgMHgxLmZmZmZmZmZmZmZmZjgwMDAwMDAwMDAwMDBkZmZmZmZmcC0yNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNCwgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIDB4MS5mZmZmZmZmZmZmZmQ2YmE5YjgxODhhOTMzMmNmZTI0YXAtMjUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQsIDB4MS4wMDAwMDAwMDAwMDAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuMDAwMDAwMDAwMDAwODUxNTkxZjlkZDViYmRkODhkMmFwLTI0LAorICAgIDB4MS4wcC0zLCAweDEuZmZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgMHgxLnAtMjQsCisgICAgMHgxLjBwLTMsIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEuZmZmZmZmZmZmZmZkZWJhOWI4MTg4YTkyYTdiYTUwNTBwLTI1LAorICAgIDB4MS4wcC0zLCAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgMHgxLjAwMDAwMDAwMDAwMTA1MTU5MWY5ZGQ1YzE4NjM1NjI3cC0yNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMywgMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIDB4MS4wMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAxY3AtMjQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMsIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjcKKyAgICAweDEuZmZmZmZmZmZmZmZlZWJhOWI4MTg4YTkxZTU4ZjJjNWNwLTI1LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zLCAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzY4CisgICAgMHgxLjAwMDAwMDAwMDAwMDBjNWM4NWZkZjQ3M2RmMzc1OTc5cC04LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zLCAweDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgMHgxLmZmZmZmZmZmZmZmZmMwMDAwMDAwMDAwMDAyZmZmZmZmcC05LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zLCAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLmZmZmZmZmZmZmZmZjBlOGRlODA4MmUzMGJhNDIzNzFhcC05LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zLCAweDEuMDAwMDAwMDAwMDAwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgMHgxLjAwMDAwMDAwMDAwMDJjNWM4NWZkZjQ3M2UyNDJlYTM4cC04LAorICAgIDB4MS4wcC0yLCAweDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzcyCisgICAgMHgxLnAtOCwKKyAgICAweDEuMHAtMiwgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIDB4MS5mZmZmZmZmZmZmZmY0ZThkZTgwODJlMzBhNTEzZjQxYnAtOSwKKyAgICAweDEuMHAtMiwgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS4wMDAwMDAwMDAwMDA2YzVjODVmZGY0NzNmMTVhMGJiOHAtOCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMiwgMHgxLmZmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIDB4MS4wMDAwMDAwMDAwMDA0MDAwMDAwMDAwMDAwNnAtOCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMiwgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIDB4MS5mZmZmZmZmZmZmZmZjZThkZTgwODJlMzA4Y2I3NmUxZHAtOSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMiwgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDM3NworICAgIDB4MS5mZmZmZmZmZmZmZmZmNjJlNDJmZWZhMzllZmNkOTQwNHAtMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMiwgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMDgwcC0zLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLCAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzc5CisgICAgMHgxLmZmZmZmZmZmZmZmZmIzYTM3YTAyMGI4YzI0YzZkMWM2cC0zLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLCAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgMHgxLjAwMDAwMDAwMDAwMDBiMTcyMTdmN2QxY2Y3ZDgzYzFhcC0yLAorICAgIDB4MS4wcC0xLCAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgMHgxLnAtMiwKKyAgICAweDEuMHAtMSwgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIDB4MS5mZmZmZmZmZmZmZmZkM2EzN2EwMjBiOGMyMzgxMDk2N3AtMywKKyAgICAweDEuMHAtMSwgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIDB4MS4wMDAwMDAwMDAwMDAyYjE3MjE3ZjdkMWNmOTNiMjA0YXAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDM4NAorICAgIDB4MS4wMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMXAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM4NQorICAgIDB4MS4wMDAwMDAwMDAwMDAwOWQxYmQwMTA1YzYxMWZhYmM1M3AtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDM4NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMDdmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODcKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODgKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTAKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS5wMCwKKyAgICAweDEuMHAwLCAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmN2ZmZmZmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLCAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzk0CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDM5NQorICAgIDB4MS42YTA5ZTY2N2YzYmNiZjc0YzI5NzA0NDBkNmQyYTgzMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgMHgxLjZhMDllNjY3ZjNiY2MzNjA4YjYxNzM5N2Y3NjYwYTIzcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAweDEuNmEwOWU2NjdmM2JjY2IzODFjZjY1MjQ2MzhhZDZiNDNwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLCAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5OAorICAgIDB4MS42YTA5ZTY2N2YzYmNjNTFjZWEzMGE0MGZjOWM1MmFlY3AwLAorICAgIDB4MS4wcDEsIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgMHgxLjBwMSwgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDAKKyAgICAweDEuNmEwOWU2NjdmM2JjZDBlMDQ0OGZmMjE1MmM1NmJmMWZwMCwKKyAgICAweDEuMHAxLCAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIDB4MS42YTA5ZTY2N2YzYmNkMDZkMzk2M2UzYWRhZjY2NGU4OHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgMHgxLjZhMDllNjY3ZjNiY2Q0NTkwMjJlNTMwNGQwYjA4MTk5cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAweDEuNmEwOWU2NjdmM2JjZGMzMDkzYzMzMWIzMTM2NTg0ZjlwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLCAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIDB4MS42YTA5ZTY2N2YzYmNjMjQ4ZDY2M2Q0Mjg1MDQ5MTU3YnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEsIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDA1CisgICAgMHgxLjZhMDllNjY3ZjNiY2M2MzQ5ZjJlNDM3ZjcwZmFlZjljcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMSwgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDYKKyAgICAweDEuNmEwOWU2NjdmM2JjY2UwYzMwYzMyMjJkYjI3ZjQxMWRwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxLCAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIDB4MS42YTA5ZTY2N2YzYmNjNTFjZWEzMGE0MGZjOWM1MmFlY3AwLAorICAgIDB4MS4wcDIsIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDA4CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgMHgxLjBwMiwgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAweDEuNmEwOWU2NjdmM2JjZDBlMDQ0OGZmMjE1MmM1NmJmMWZwMCwKKyAgICAweDEuMHAyLCAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIDB4MS42YTA5ZTY2N2YzYmNjYWM1MTFjYTQzZGViYzhhNmM2YnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDIsIDB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDExCisgICAgMHgxLjZhMDllNjY3ZjNiY2NlYjBkYTk0YjMzNWRkOTdhZjFjcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMiwgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTIKKyAgICAweDEuNmEwOWU2NjdmM2JjZDY4ODZjMjk5MWU0MWZkMmQxYmRwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyLCAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIDB4MS40YmZkYWQ1MzYyYTI2ZGQ1ZTBiZDAyNTk0YjU4MTJjYnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIsIDB4MS5mZmZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgMHgxLjRiZmRhZDUzNjJhMjcwODgzYmNkYWI2MThiYWE4MjA0cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMiwgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTUKKyAgICAweDEuNGJmZGFkNTM2MmEyNzVlY2YxZWVmZDcyMGM2MDMzMjFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyLCAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDQxNgorICAgIDB4MS40YmZkYWQ1MzYyYTI2ZjIxZGU2YTU1YmJlZGMxNWViNHAwLAorICAgIDB4MS4wcDMsIDB4MS5mZmZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDE3CisgICAgMHgxLjRiZmRhZDUzNjJhMjcxZDQzOTdhZmVjNDJlMjBlMDM2cDAsCisgICAgMHgxLjBwMywgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTgKKyAgICAweDEuNGJmZGFkNTM2MmEyNzczOGVmOWM1MGQ0YWVmMGI1ZTRwMCwKKyAgICAweDEuMHAzLCAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIDB4MS40YmZkYWQ1MzYyYTI3MWI5ZDljNGZjODEzMjc4YmFiNnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMsIDB4MS5mZmZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgMHgxLjRiZmRhZDUzNjJhMjc0NmMzNGQ1YTU4OTcyZjI2MGM5cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMywgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjEKKyAgICAweDEuNGJmZGFkNTM2MmEyNzlkMGVhZjZmNzk5ZjNmNjdmOTlwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzLCAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDQyMgorICAgIDB4MS4zMDZmZTBhMzFiNzE1MGEwNGI1OGFkODAyN2NlYjA1MHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDMsIDB4MS5mZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDIzCisgICAgMHgxLjMwNmZlMGEzMWI3MTUyNDY1NTY5ZjRhMmEzZGE0M2Q0cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMywgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjQKKyAgICAweDEuMzA2ZmUwYTMxYjcxNTU5MjY5OGM4MmU3OWJmODQ2MTNwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzLCAweDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDQyNQorICAgIDB4MS4zMDZmZTBhMzFiNzE1MTM4ODM0OGZmMGRlMDc0YzVhM3AwLAorICAgIDB4MS4wcDQsIDB4MS5mZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDI2CisgICAgMHgxLjMwNmZlMGEzMWI3MTUyZGU4ZDVhNDYzMDVjODVlZGVjcDAsCisgICAgMHgxLjBwNCwgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAweDEuMzA2ZmUwYTMxYjcxNTYyYWExN2NkNDc1NTRhZjE5YjRwMCwKKyAgICAweDEuMHA0LCAweDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIDB4MS4zMDZmZTBhMzFiNzE1MjY4ZjMyOWEyMjk1MWIzOGY2MXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQsIDB4MS5mZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDI5CisgICAgMHgxLjMwNmZlMGEzMWI3MTU0MGVmZDNhZTk0YmNkY2ZlMTMzcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNCwgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzAKKyAgICAweDEuMzA2ZmUwYTMxYjcxNTc1YjExNWQ3NzkwYzYwZjYwMGRwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA0LCAweDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDQzMQorICAgIDB4MS4xZDQ4NzMxNjhiOWFhNjQxZGI5N2I0OTFhMzc5MzZhZXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQsIDB4MS5mZmZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgMHgxLjFkNDg3MzE2OGI5YWE3MzkwOTYzNjJmNjI4NWNiNTE2cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNCwgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzMKKyAgICAweDEuMWQ0ODczMTY4YjlhYTkyNzY0ZmFiZmJmMzIyNjM0NjJwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0LCAweDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS4xZDQ4NzMxNjhiOWFhNjg5MmRiNDdhMzQ4YTIxYjJjN3AwLAorICAgIDB4MS4wcDUsIDB4MS5mZmZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDM1CisgICAgMHgxLjFkNDg3MzE2OGI5YWE3ODA1YjgwMjg5OTBmMDdhOThicDAsCisgICAgMHgxLjBwNSwgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzYKKyAgICAweDEuMWQ0ODczMTY4YjlhYTk2ZWI3MTc4NTYyMThkNjE5OTBwMCwKKyAgICAweDEuMHA1LCAweDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDQzNworICAgIDB4MS4xZDQ4NzMxNjhiOWFhNzE3ZDFlZTA1N2E1NzZjMzBjNHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUsIDB4MS5mZmZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLjFkNDg3MzE2OGI5YWE4MGVmZmI5YjNkZWRjNTcxODQwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNSwgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzkKKyAgICAweDEuMWQ0ODczMTY4YjlhYTlmZDViNTExMGE3ZTYyZjY5YjZwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1LCAweDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ0MAorICAgIDB4MS4xMTMwMWQwMTI1YjUwOTllOTBlYTQzZDY1OTllZTJiYnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUsIDB4MS5mZmZmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgMHgxLjExMzAxZDAxMjViNTBhMmM5NWVlMGViNDdhZWIxYTc4cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNSwgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDIKKyAgICAweDEuMTEzMDFkMDEyNWI1MGI0ODlmZjVhNDcwYmQ4NDY3NzFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1LCAweDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ0MworICAgIDB4MS4xMTMwMWQwMTI1YjUwOWMwYjZlZGUzZmIxMDNmOTAxN3AwLAorICAgIDB4MS4wcDYsIDB4MS5mZmZmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgMHgxLjExMzAxZDAxMjViNTBhNGViYmYxYWVkOTMxOGNlYWM1cDAsCisgICAgMHgxLjBwNiwgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDUKKyAgICAweDEuMTEzMDFkMDEyNWI1MGI2YWM1Zjk0NDk1NzQyODdkOWZwMCwKKyAgICAweDEuMHA2LCAweDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIDB4MS4xMTMwMWQwMTI1YjUwYTA1MDJmNTI0NDQ3ZDdkYzQwZXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYsIDB4MS5mZmZmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgMHgxLjExMzAxZDAxMjViNTBhOTMwN2Y4ZWYyMjllY2Q2NDllcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNiwgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDgKKyAgICAweDEuMTEzMDFkMDEyNWI1MGJhZjEyMDA4NGRlZTE2ZDgzM2JwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2LCAweDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIDB4MS5mZmZmZmZmZmZmMjc0NmY0MDQxNzQ2MjU1Yzk5ZTkwYnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDAsIDB4MS5mZmZmZmZmZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTAKKyAgICAweDEuZmZmZmZmZmZmZjUzYTM3YTAyMGJhOTI0YjI2Y2ZjNTlwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAwLCAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgMHgxLmZmZmZmZmZmZmY4MDAwMDAwMDAwMGZmYmZmZmZmZmZlcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMCwgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTIKKyAgICAweDEuZmZmZmZmZmZmZmQ4YjkwYmZiZThlOTMyODI2NWQ4NTFwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAwLCAweDEuMDAwMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MworICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDAsIDB4MS4wMDAwMDAwMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgMHgxLmZmZmZmZmZmZmY2NzQ2ZjQwNDE3MmYwZDNiMWE2YmYycDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwgMHgxLmZmZmZmZmZmZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDQ1NQorICAgIDB4MS5mZmZmZmZmZmZmOTNhMzdhMDIwYjk3OWEyMWFkM2RjZHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsIDB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAweDEuZmZmZmZmZmZmZmMwMDAwMDAwMDAwM2ZlZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLCAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwgMHgxLjAwMDAwMDAwMDAwMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTkKKyAgICAweDEuZmZmZmZmZmZmZmE3NDZmNDA0MTcxZmYzMTk5YWVlZDdwMTAyMywKKyAgICAweDEuMHAxLCAweDEuZmZmZmZmZmZmZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgMHgxLmZmZmZmZmZmZmZkM2EzN2EwMjBiOGUwZDkwZWQ3ZjNmcDEwMjMsCisgICAgMHgxLjBwMSwgMHgxLmZmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDQ2MQorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcDEsIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDYyCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwMSwgMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAxLCAweDEuMDAwMDAwMDAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ2NAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsIDB4MS5mZmZmZmZmZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjUKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLCAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjcKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLCAweDEuMDAwMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsIDB4MS4wMDAwMDAwMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDY5CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMSwgMHgxLmZmZmZmZmZmZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDEsIDB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzEKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAxLCAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ3MgorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDEsIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDczCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMSwgMHgxLjAwMDAwMDAwMDAwMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMCwgLTB4MS4wY2MwMDAwMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDc1CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDAsIC0weDEuMGNjMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ3NgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAwLCAtMHgxLjBjY3AxMAorICB9LAorICB7IC8vIEVudHJ5IDQ3NworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAwLCAtMHgxLjBjYmZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMCwgLTB4MS4wY2JmZmZmZmZmZmZlcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDc5CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsIC0weDEuMGNjMDAwMDAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ4MAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLCAtMHgxLjBjYzAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODEKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwgLTB4MS4wY2NwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODIKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwgLTB4MS4wY2JmZmZmZmZmZmZmcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDgzCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsIC0weDEuMGNiZmZmZmZmZmZmZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIDAuMCwKKyAgICAweDEuMHAxLCAtMHgxLjBjYzAwMDAwMDAwMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAwLjAsCisgICAgMHgxLjBwMSwgLTB4MS4wY2MwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDg2CisgICAgMC4wLAorICAgIDB4MS4wcDEsIC0weDEuMGNjcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgMC4wLAorICAgIDB4MS4wcDEsIC0weDEuMGNiZmZmZmZmZmZmZnAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ4OAorICAgIDAuMCwKKyAgICAweDEuMHAxLCAtMHgxLjBjYmZmZmZmZmZmZmVwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODkKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwgLTB4MS4wY2MwMDAwMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsIC0weDEuMGNjMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ5MQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLCAtMHgxLjBjY3AxMAorICB9LAorICB7IC8vIEVudHJ5IDQ5MgorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLCAtMHgxLjBjYmZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwgLTB4MS4wY2JmZmZmZmZmZmZlcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDEsIC0weDEuMGNjMDAwMDAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnAxLCAtMHgxLjBjYzAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTYKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMSwgLTB4MS4wY2NwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTcKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMSwgLTB4MS4wY2JmZmZmZmZmZmZmcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDk4CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDEsIC0weDEuMGNiZmZmZmZmZmZmZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ5OQorICAgIDB4MS5hODJlMTQ2OTAyNTJlNWVhMmNmYTMwYjI1ZTk0N2NlZHAtNTAwLAorICAgIDB4MS5kYjZkYjZkYjZkYjcwcC0yLCAweDEuYzMwYzMwYzMwYzJmZXA4CisgIH0sCisgIHsgLy8gRW50cnkgNTAwCisgICAgMHgxLmE4MmUxNDY5MDIzZThlYTU2Nzg4M2ZjZDI3NDJlNGI3cC01MDAsCisgICAgMHgxLmRiNmRiNmRiNmRiNzBwLTIsIDB4MS5jMzBjMzBjMzBjMmZmcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDEKKyAgICAweDEuYTgyZTE0NjkwMjJhMzc2MGEyMTY0ZmUxYTRjZDNhYTJwLTUwMCwKKyAgICAweDEuZGI2ZGI2ZGI2ZGI3MHAtMiwgMHgxLmMzMGMzMGMzMGMzcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDIKKyAgICAweDEuYTgyZTE0NjkwMjE1ZTAxYmRjYTQ2MGVmZDczMzdlYWVwLTUwMCwKKyAgICAweDEuZGI2ZGI2ZGI2ZGI3MHAtMiwgMHgxLmMzMGMzMGMzMGMzMDFwOAorICB9LAorICB7IC8vIEVudHJ5IDUwMworICAgIDB4MS5hODJlMTQ2OTAyMDE4OGQ3MTczMjcyZjdiZTc1YjBkY3AtNTAwLAorICAgIDB4MS5kYjZkYjZkYjZkYjcwcC0yLCAweDEuYzMwYzMwYzMwYzMwMnA4CisgIH0sCisgIHsgLy8gRW50cnkgNTA0CisgICAgMHgxLmE4MmUxNDY5MDI2YzBjYmZlNjEzNWIzOGU3NmQzYTQ3cC01MDAsCisgICAgMHgxLmRiNmRiNmRiNmRiNzFwLTIsIDB4MS5jMzBjMzBjMzBjMmZlcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAweDEuYTgyZTE0NjkwMjU3YjU3YjIwYTE2OTFmZDBkODUzZDZwLTUwMCwKKyAgICAweDEuZGI2ZGI2ZGI2ZGI3MXAtMiwgMHgxLmMzMGMzMGMzMGMyZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDUwNgorICAgIDB4MS5hODJlMTQ2OTAyNDM1ZTM2NWIyZjc4MDA2ZjFmNWI4N3AtNTAwLAorICAgIDB4MS5kYjZkYjZkYjZkYjcxcC0yLCAweDEuYzMwYzMwYzMwYzNwOAorICB9LAorICB7IC8vIEVudHJ5IDUwNworICAgIDB4MS5hODJlMTQ2OTAyMmYwNmYxOTViZDg3ZGFjMjQyNTE1OXAtNTAwLAorICAgIDB4MS5kYjZkYjZkYjZkYjcxcC0yLCAweDEuYzMwYzMwYzMwYzMwMXA4CisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLmE4MmUxNDY5MDIxYWFmYWNkMDRiOThhZWNhNDEzNTRkcC01MDAsCisgICAgMHgxLmRiNmRiNmRiNmRiNzFwLTIsIDB4MS5jMzBjMzBjMzBjMzAycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDkKKyAgICAweDEuYTgyZTE0NjkwMjg1MzM5NTlmMmM4NzNjNjFjYWZiMThwLTUwMCwKKyAgICAweDEuZGI2ZGI2ZGI2ZGI3MnAtMiwgMHgxLmMzMGMzMGMzMGMyZmVwOAorICB9LAorICB7IC8vIEVudHJ5IDUxMAorICAgIDB4MS5hODJlMTQ2OTAyNzBkYzUwZDliYTkzZWY2YmYyYzY2ZHAtNTAwLAorICAgIDB4MS5kYjZkYjZkYjZkYjcycC0yLCAweDEuYzMwYzMwYzMwYzJmZnA4CisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgMHgxLmE4MmUxNDY5MDI1Yzg1MGMxNDQ4YTE5YzJhZjY3ZmU0cC01MDAsCisgICAgMHgxLmRiNmRiNmRiNmRiNzJwLTIsIDB4MS5jMzBjMzBjMzBjM3A4CisgIH0sCisgIHsgLy8gRW50cnkgNTEyCisgICAgMHgxLmE4MmUxNDY5MDI0ODJkYzc0ZWQ2YjA0MjllZDYyNzdjcC01MDAsCisgICAgMHgxLmRiNmRiNmRiNmRiNzJwLTIsIDB4MS5jMzBjMzBjMzBjMzAxcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTMKKyAgICAweDEuYTgyZTE0NjkwMjMzZDY4Mjg5NjRiZmUyYzc5MWJkMzVwLTUwMCwKKyAgICAweDEuZGI2ZGI2ZGI2ZGI3MnAtMiwgMHgxLmMzMGMzMGMzMGMzMDJwOAorICB9LAorICB7IC8vIEVudHJ5IDUxNAorICAgIDB4MS5hODJlMTQ2OTAyOWU1YTZiNTg0NWI0YmNjZGFkYmY2MnAtNTAwLAorICAgIDB4MS5kYjZkYjZkYjZkYjczcC0yLCAweDEuYzMwYzMwYzMwYzJmZXA4CisgIH0sCisgIHsgLy8gRW50cnkgNTE1CisgICAgMHgxLmE4MmUxNDY5MDI4YTAzMjY5MmQzYzAzYmY4OTIzYzdjcC01MDAsCisgICAgMHgxLmRiNmRiNmRiNmRiNzNwLTIsIDB4MS5jMzBjMzBjMzBjMmZmcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTYKKyAgICAweDEuYTgyZTE0NjkwMjc1YWJlMWNkNjFjY2I0ZDg1MmE3YjlwLTUwMCwKKyAgICAweDEuZGI2ZGI2ZGI2ZGI3M3AtMiwgMHgxLmMzMGMzMGMzMGMzcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTcKKyAgICAweDEuYTgyZTE0NjkwMjYxNTQ5ZDA3ZWZkYTI3NmNlZjAxMTZwLTUwMCwKKyAgICAweDEuZGI2ZGI2ZGI2ZGI3M3AtMiwgMHgxLmMzMGMzMGMzMGMzMDFwOAorICB9LAorICB7IC8vIEVudHJ5IDUxOAorICAgIDB4MS5hODJlMTQ2OTAyNGNmZDU4NDI3ZGU4OTNiNjY3NDg5NXAtNTAwLAorICAgIDB4MS5kYjZkYjZkYjZkYjczcC0yLCAweDEuYzMwYzMwYzMwYzMwMnA4CisgIH0sCisgIHsgLy8gRW50cnkgNTE5CisgICAgMHgxLmE4MmUxNDY5MDJiNzgxNDExMTVlZTNiYTJiMTU4NzIzcC01MDAsCisgICAgMHgxLmRiNmRiNmRiNmRiNzRwLTIsIDB4MS5jMzBjMzBjMzBjMmZlcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjAKKyAgICAweDEuYTgyZTE0NjkwMmEzMjlmYzRiZWNlZTA1NzZiNmI2MDNwLTUwMCwKKyAgICAweDEuZGI2ZGI2ZGI2ZGI3NHAtMiwgMHgxLmMzMGMzMGMzMGMyZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDUyMQorICAgIDB4MS5hODJlMTQ2OTAyOGVkMmI3ODY3YWY5NGE3NzMzZDMwNXAtNTAwLAorICAgIDB4MS5kYjZkYjZkYjZkYjc0cC0yLCAweDEuYzMwYzMwYzMwYzNwOAorICB9LAorICB7IC8vIEVudHJ5IDUyMgorICAgIDB4MS5hODJlMTQ2OTAyN2E3YjcyYzEwOTA1ODkyYzhjZGUyOXAtNTAwLAorICAgIDB4MS5kYjZkYjZkYjZkYjc0cC0yLCAweDEuYzMwYzMwYzMwYzMwMXA4CisgIH0sCisgIHsgLy8gRW50cnkgNTIzCisgICAgMHgxLmE4MmUxNDY5MDI2NjI0MmRmYjk3MTJjMTk2YzFkNzZkcC01MDAsCisgICAgMHgxLmRiNmRiNmRiNmRiNzRwLTIsIDB4MS5jMzBjMzBjMzBjMzAycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAxZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDUyNQorICAgIC0weDEucDAsCisgICAgLTB4MS4wcDAsIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTI2CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDQwcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLCAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcDEsIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwMiwgMHgxLjBwOQorICB9LAorICB7IC8vIEVudHJ5IDUyOQorICAgIDB4MS5mZmZmZmZmZmZmZWM1Yzg1ZmRmNDc0M2ZkNjEyYjI4YXAtMTAyNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMiwgMHgxLmZmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDUzMAorICAgIDB4MS5mZmZmZmZmZmZmYzAwMDAwMDAwMDAzZmVmZmZmZmZmZnAtMTAyNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMiwgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzEKKyAgICAweDEuZmZmZmZmZmZmZjY3NDZmNDA0MTcyZjA1M2IxYTZiZjJwLTEwMjUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNTMyCisgICAgMHgxLjAwMDAwMDAwMDAxNjJlNDJmZWZhM2FlNTMzNjkzODhjcC0xMDI0LAorICAgIDB4MS4wcC0xLCAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTMzCisgICAgMHgxLnAtMTAyNCwKKyAgICAweDEuMHAtMSwgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzQKKyAgICAweDEuZmZmZmZmZmZmZmE3NDZmNDA0MTcxZmYzMTk5YWVlZDdwLTEwMjUsCisgICAgMHgxLjBwLTEsIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNTM1CisgICAgMHgxLjAwMDAwMDAwMDA1NjJlNDJmZWZhNDg2Y2M0MjhmNzFjcC0xMDI0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLCAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTM2CisgICAgMHgxLjAwMDAwMDAwMDA0MDAwMDAwMDAwMDdmZXAtMTAyNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzcKKyAgICAweDEuMDAwMDAwMDAwMDEzYTM3YTAyMGI4Y2U0NmI0ZGZhNGVwLTEwMjQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgMHgxLjAwMDAwMDAwMDA3NDUxOWE1NjIzNTMzZGY4ZGNkMzUzcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LCAweDEuZmZmZmZmZmZmZmZmYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDUzOQorICAgIDB4MS4wMDAwMDAwMDAwNWQwZTE1MTFiNWQ3ZjcyYzYxMzY4YXAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwgMHgxLmZmZmZmZmZmZmZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDAKKyAgICAweDEuMDAwMDAwMDAwMDQ1Y2E4ZmNkNDg1ZWNkOTNhNmVjOWRwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsIDB4MS5mZmZmZmZmZmZmZmZkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTQxCisgICAgMHgxLjAwMDAwMDAwMDAyZTg3MGE4OGRhZTdjMTJlYWRmNThjcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LCAweDEuZmZmZmZmZmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU0MgorICAgIDB4MS4wMDAwMDAwMDAwMTc0Mzg1NDQ2ZDcyZDFmZDc2NTE1OHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LCAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ0CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LCAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ1CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LCAweDEuMDAwMDAwMDAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LCAweDEuMDAwMDAwMDAwMDAwM3AwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ3CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LCAweDEuMDAwMDAwMDAwMDAwNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ4CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LCAweDEuMDAwMDAwMDAwMDAwNXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ5CisgICAgMHgxLjAwMDAwMDAwMDA3NDM1ZTA4MjY0OWE2OGY2NGZlMzA2cC0xMDczLAorICAgIDB4MS4wcC0xMDczLCAweDEuZmZmZmZmZmZmZmZmYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIDB4MS4wMDAwMDAwMDAwNWNmN2U2Y2ViNmRkYjUyZTFiMDk5ZXAtMTA3MywKKyAgICAweDEuMHAtMTA3MywgMHgxLmZmZmZmZmZmZmZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTEKKyAgICAweDEuMDAwMDAwMDAwMDQ1YjllZDFiMDkyMzFkOTdjNTZjOWRwLTEwNzMsCisgICAgMHgxLjBwLTEwNzMsIDB4MS5mZmZmZmZmZmZmZmZkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgMHgxLjAwMDAwMDAwMDAyZTdiZjM2NzViNmFhMjMzNGYwYzAycC0xMDczLAorICAgIDB4MS4wcC0xMDczLCAweDEuZmZmZmZmZmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1MworICAgIDB4MS4wMDAwMDAwMDAwMTczZGY5YjNhZGI0NDMwMGI3ZTdjZXAtMTA3MywKKyAgICAweDEuMHAtMTA3MywgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTQKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDczLCAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU1CisgICAgMHgxLmZmZmZmZmZmZmZhMzA4MTkzMTQ5M2I5ZDI4NWJjYjJicC0xMDc0LAorICAgIDB4MS4wcC0xMDczLCAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU2CisgICAgMHgxLmZmZmZmZmZmZmY0NjEwMzI2MjkyODgxYmRmYjE3OTgzcC0xMDc0LAorICAgIDB4MS4wcC0xMDczLCAweDEuMDAwMDAwMDAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgMHgxLmZmZmZmZmZmZmVlOTE4NGI5M2RiZTU3YzI2MDEwYjA0cC0xMDc0LAorICAgIDB4MS4wcC0xMDczLCAweDEuMDAwMDAwMDAwMDAwM3AwCisgIH0sCisgIHsgLy8gRW50cnkgNTU4CisgICAgMHgxLmZmZmZmZmZmZmU4YzIwNjRjNTI1NTNiZGZiNGE3ZmFkcC0xMDc0LAorICAgIDB4MS4wcC0xMDczLCAweDEuMDAwMDAwMDAwMDAwNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU5CisgICAgMHgxLmZmZmZmZmZmZmUyZjI4N2RmNjZlZDJlMTVmOGRkNzdhcC0xMDc0LAorICAgIDB4MS4wcC0xMDczLCAweDEuMDAwMDAwMDAwMDAwNXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTYwCisgICAgMHgxLjgwMDAwMDAwMDBhZTM4N2NkMWU4ZjNmMzlmZTE1N2Y5cC0xMDczLAorICAgIDB4MS44cC0xMDczLCAweDEuZmZmZmZmZmZmZmZmYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIDB4MS44MDAwMDAwMDAwOGI2MDYzZGIyMGJjZDY3YjRmNWJhNXAtMTA3MywKKyAgICAweDEuOHAtMTA3MywgMHgxLmZmZmZmZmZmZmZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjIKKyAgICAweDEuODAwMDAwMDAwMDY4ODg0YWU0NTg4OGUyYmY2ZmQ0YWZwLTEwNzMsCisgICAgMHgxLjhwLTEwNzMsIDB4MS5mZmZmZmZmZmZmZmZkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTYzCisgICAgMHgxLjgwMDAwMDAwMDA0NWIwMzFlZDkwNTgxODZjNDJjMzE3cC0xMDczLAorICAgIDB4MS44cC0xMDczLCAweDEuZmZmZmZmZmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU2NAorICAgIDB4MS44MDAwMDAwMDAwMjJkODE4ZjZjODJhNzc4MWM4MjZkY3AtMTA3MywKKyAgICAweDEuOHAtMTA3MywgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjUKKyAgICAweDEuODBwLTEwNzMsCisgICAgMHgxLjhwLTEwNzMsIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjYKKyAgICAweDEuN2ZmZmZmZmZmZmJhNGZjZTEyNmZiNDhkMzY4NzEyNWRwLTEwNzMsCisgICAgMHgxLjhwLTEwNzMsIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICAweDEuN2ZmZmZmZmZmZjc0OWY5YzI0ZGY3NWMwMGZkN2ZhMmVwLTEwNzMsCisgICAgMHgxLjhwLTEwNzMsIDB4MS4wMDAwMDAwMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjgKKyAgICAweDEuN2ZmZmZmZmZmZjJlZWY2YTM3NGY0Mzk4OGJmMmI3NmVwLTEwNzMsCisgICAgMHgxLjhwLTEwNzMsIDB4MS4wMDAwMDAwMDAwMDAzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjkKKyAgICAweDEuN2ZmZmZmZmZmZWU5M2YzODQ5YmYxZTE2YWFkNzRhMWRwLTEwNzMsCisgICAgMHgxLjhwLTEwNzMsIDB4MS4wMDAwMDAwMDAwMDA0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzAKKyAgICAweDEuN2ZmZmZmZmZmZWEzOGYwNjVjMmYwNTNhNmM4NWIyMzdwLTEwNzMsCisgICAgMHgxLjhwLTEwNzMsIDB4MS4wMDAwMDAwMDAwMDA1cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzEKKyAgICAweDEuMDAwMDAwYTBjZjY1ZWIxODE3YTcwOTVkOWEwNDQzYTdwMCwKKyAgICAweDEuMHAtMjksIC0weDEuMHAtMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzIKKyAgICAweDEuZmZmZmZmNWYzMDlhNjBhYWQ1YzIzMDlmODFmOTBkZWZwLTEsCisgICAgMHgxLjBwLTI5LCAweDEuMHAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzMKKyAgICAweDEuZmZmZmZkOWUwN2NmMDc3NjdhNTVhZmJlOWFjYWU5M2VwLTEsCisgICAgMHgxLjBwNTUsIC0weDEuMHAtMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzQKKyAgICAweDEuMDAwMDAwOTg3ZTBjYzY2MzQ0ZDg5YjQ5NGUxZjQzYjNwMCwKKyAgICAweDEuMHA1NSwgMHgxLjBwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgNTc1CisgICAgMHgxLmZmZmZmZDY2OTQyN2NmMTU5NTE1ODczODg3YzE3Y2YycC0xLAorICAgIDB4MS4wcDYwLCAtMHgxLjBwLTI5CisgIH0sCisgIHsgLy8gRW50cnkgNTc2CisgICAgMHgxLjAwMDAwMGE2NWFmNmFlNjFiZTg4ZWEyNTU4NzkwY2Q3cDAsCisgICAgMHgxLjBwNjAsIDB4MS4wcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDU3NworICAgIDB4MS5mZmZmZmZmZmZlMDAwMDAwMDAwMGZmZjdmZmZmZmZhYXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwgMHgxLjBwMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzgKKyAgICAweDEuZmZmZmZmZmZmMDAwMDAwMDAwM2ZmZmJmZmZmZjU1NTdwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsIDB4MS4wcDE2CisgIH0sCisgIHsgLy8gRW50cnkgNTc5CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAsIDB4MS4wcDEzCisgIH0sCisgIHsgLy8gRW50cnkgNTgwCisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAsIDB4MS4wcDE2CisgIH0sCisgIHsgLy8gRW50cnkgNTgxCisgICAgMHgxLjAwMDAwMDAwMDIwMDAwMDAwMDAxZmZmMDAwMDAwMTU1cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwgMHgxLjBwMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODIKKyAgICAweDEuMDAwMDAwMDAxMDAwMDAwMDAwN2ZmZjgwMDAwMmFhYTJwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLCAweDEuMHAxNgorICB9LAorICB7IC8vIEVudHJ5IDU4MworICAgIDB4MS5mZmZmZmZjMDAwMDAwNDAwMDAwMWQ1NTU1NTE2YWFhYXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwgLTB4MS4wcDI1CisgIH0sCisgIHsgLy8gRW50cnkgNTg0CisgICAgMHgxLmZmZmZmZTAwMDAwMGZmZmZmZmJhYWFhYWIwMDAwMDAzcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODUKKyAgICAweDEucDAsCisgICAgLTB4MS4wcDAsIC0weDEuMHAyNQorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIDB4MS5wMCwKKyAgICAtMHgxLjBwMCwgLTB4MS4wcDI4CisgIH0sCisgIHsgLy8gRW50cnkgNTg3CisgICAgMHgxLjAwMDAwMDEwMDAwMDAwODAwMDAwNDJhYWFhYWViNTU1cDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLCAtMHgxLjBwMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODgKKyAgICAweDEuMDAwMDAwODAwMDAwMjAwMDAwMDc1NTU1NTdwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHAyOAorICB9LAorICB7IC8vIEVudHJ5IDU4OQorICAgIDB4MS4zNjhiMmZjNmY5NjBhNGMxZDlhYTYyOGZlM2YxM2ZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwgLTB4MS4wcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNTkwCisgICAgMHgxLjVmYzIxMDQxMDI3YjIzYjA1MTU2YjhhZWE4YjVlOTI1cC0xMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwgLTB4MS4wcDU1CisgIH0sCisgIHsgLy8gRW50cnkgNTkxCisgICAgMHgxLnAwLAorICAgIC0weDEuMHAwLCAtMHgxLjBwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTIKKyAgICAweDEucDAsCisgICAgLTB4MS4wcDAsIC0weDEuMHA1NQorICB9LAorICB7IC8vIEVudHJ5IDU5MworICAgIDB4MS40OGI1ZTNjM2U4MTg2N2JmMzFhNzdhODNjMzJjNDc0NHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwgLTB4MS4wcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNTk0CisgICAgMHgxLmI0YzkwMmUyNzNhNWExYzU2NzAxZTcxNWVkYWYyMTE1cDUsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLCAtMHgxLjBwNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTUKKyAgICAweDEuNWZjMjEwNDEwMjdiMjNiMDUxNTZiOGFlYThiNWU5MjVwLTEyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTYKKyAgICAweDEuOTY5ZDQ3MzIxZTRmZTdmOWJiOGM0M2E1ZTQ4NmI5YWVwLTkzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwNTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAweDEucDAsCisgICAgLTB4MS4wcDAsIC0weDEuMHA1NQorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjBwMCwgLTB4MS4wcDU4CisgIH0sCisgIHsgLy8gRW50cnkgNTk5CisgICAgMHgxLmI0YzkwMmUyNzNhNWExYzU2NzAxZTcxNWVkYWYyMTE1cDUsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLCAtMHgxLjBwNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDAKKyAgICAweDEuMWY0M2ZjYzRiNjYzNTc3YTQ1ZWE5YjQ5Y2NlOWVlNzNwNDYsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLCAtMHgxLjBwNTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDEKKyAgICAweDEuNDQxMDllZGIyMGE3NTZhZDc2N2QyNTE1Yzk0YTAwM2FwLTczOSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwgLTB4MS4wcDYxCisgIH0sCisgIHsgLy8gRW50cnkgNjAyCisgICAgMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAweDEucDAsCisgICAgLTB4MS4wcDAsIC0weDEuMHA2MQorICB9LAorICB7IC8vIEVudHJ5IDYwNAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjBwMCwgLTB4MS4wcDY0CisgIH0sCisgIHsgLy8gRW50cnkgNjA1CisgICAgMHgxLjQxYzdhODgxNGJmMGE4MDFjNTM1M2YzMDJhNDBjYzdmcDM2OSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHA2MQorICB9LAorICB7IC8vIEVudHJ5IDYwNgorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwgLTB4MS4wcDY0CisgIH0sCisgIHsgLy8gRW50cnkgNjA3CisgICAgMHgxLjAwMDAwMDEwMDAwMDAwODAwMDAwNDJhYWFhYWViNTU1cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHAyNQorICB9LAorICB7IC8vIEVudHJ5IDYwOAorICAgIDB4MS4wMDAwMDA4MDAwMDAyMDAwMDAwNzU1NTU1N3AwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLCAtMHgxLjBwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDkKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgLTB4MS4wcDI1CisgIH0sCisgIHsgLy8gRW50cnkgNjEwCisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAsIC0weDEuMHAyOAorICB9LAorICB7IC8vIEVudHJ5IDYxMQorICAgIDB4MS5mZmZmZmZjMDAwMDAwNDAwMDAwMWQ1NTU1NTE2YWFhYXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTIKKyAgICAweDEuZmZmZmZlMDAwMDAwZmZmZmZmYmFhYWFhYjAwMDAwMDNwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwgLTB4MS4wcDI4CisgIH0sCisgIHsgLy8gRW50cnkgNjEzCisgICAgMHgxLjQ4YjVlM2MzZTgxODY3YmYzMWE3N2E4M2MzMmM0NzQ0cDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDYxNAorICAgIDB4MS5iNGM5MDJlMjczYTVhMWM1NjcwMWU3MTVlZGFmMjExNXA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLCAtMHgxLjBwNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgLTB4MS4wcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNjE2CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAsIC0weDEuMHA1NQorICB9LAorICB7IC8vIEVudHJ5IDYxNworICAgIDB4MS4zNjhiMmZjNmY5NjBhNGMxZDlhYTYyOGZlM2YxM2ZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTgKKyAgICAweDEuNWZjMjEwNDEwMjdiMjNiMDUxNTZiOGFlYThiNWU5MjVwLTEyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsIC0weDEuMHA1NQorICB9LAorICB7IC8vIEVudHJ5IDYxOQorICAgIDB4MS5iNGM5MDJlMjczYTVhMWM1NjcwMWU3MTVlZGFmMjExNXA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLCAtMHgxLjBwNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjAKKyAgICAweDEuMWY0M2ZjYzRiNjYzNTc3YTQ1ZWE5YjQ5Y2NlOWVlNzNwNDYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHA1OAorICB9LAorICB7IC8vIEVudHJ5IDYyMQorICAgIDB4MS5wMCwKKyAgICAweDEuMHAwLCAtMHgxLjBwNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjIKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgLTB4MS4wcDU4CisgIH0sCisgIHsgLy8gRW50cnkgNjIzCisgICAgMHgxLjVmYzIxMDQxMDI3YjIzYjA1MTU2YjhhZWE4YjVlOTI1cC0xMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjQKKyAgICAweDEuOTY5ZDQ3MzIxZTRmZTdmOWJiOGM0M2E1ZTQ4NmI5YWVwLTkzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsIC0weDEuMHA1OAorICB9LAorICB7IC8vIEVudHJ5IDYyNQorICAgIDB4MS40MWM3YTg4MTRiZjBhODAxYzUzNTNmMzAyYTQwY2M3ZnAzNjksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHA2MQorICB9LAorICB7IC8vIEVudHJ5IDYyNgorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLCAtMHgxLjBwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjcKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgLTB4MS4wcDYxCisgIH0sCisgIHsgLy8gRW50cnkgNjI4CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAsIC0weDEuMHA2NAorICB9LAorICB7IC8vIEVudHJ5IDYyOQorICAgIDB4MS40NDEwOWVkYjIwYTc1NmFkNzY3ZDI1MTVjOTRhMDAzYXAtNzM5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsIC0weDEuMHA2MQorICB9LAorICB7IC8vIEVudHJ5IDYzMAorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzEKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwMTUsIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgNjMyCisgICAgSFVHRV9WQUwsCisgICAgMC4wLCAtMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDYzMworICAgIC1IVUdFX1ZBTCwKKyAgICAtMC4wLCAtMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDYzNAorICAgIEhVR0VfVkFMLAorICAgIDAuMCwgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzUKKyAgICAtSFVHRV9WQUwsCisgICAgLTAuMCwgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzYKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAsIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNjM3CisgICAgSFVHRV9WQUwsCisgICAgMC4wLCAtMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDYzOAorICAgIEhVR0VfVkFMLAorICAgIDAuMCwgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzkKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAsIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQwCisgICAgSFVHRV9WQUwsCisgICAgMC4wLCAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDEKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAsIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIEhVR0VfVkFMLAorICAgIDAuMCwgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNjQzCisgICAgSFVHRV9WQUwsCisgICAgLTAuMCwgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDQKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wLCAtMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDY0NQorICAgIEhVR0VfVkFMLAorICAgIC0wLjAsIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjQ2CisgICAgSFVHRV9WQUwsCisgICAgLTAuMCwgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDcKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wLCAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDgKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wLCAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDkKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wLCAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTAKKyAgICBIVUdFX1ZBTCwKKyAgICAwLjAsIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDY1MQorICAgIEhVR0VfVkFMLAorICAgIC0wLjAsIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDY1MgorICAgIDAuMCwKKyAgICAwLjAsIDB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTMKKyAgICAtMC4wLAorICAgIC0wLjAsIDB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTQKKyAgICAwLjAsCisgICAgMC4wLCAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjU1CisgICAgLTAuMCwKKyAgICAtMC4wLCAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjU2CisgICAgMC4wLAorICAgIDAuMCwgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTcKKyAgICAwLjAsCisgICAgMC4wLCAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNjU4CisgICAgMC4wLAorICAgIDAuMCwgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDY1OQorICAgIDAuMCwKKyAgICAwLjAsIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjAKKyAgICAwLjAsCisgICAgMC4wLCAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjYxCisgICAgMC4wLAorICAgIDAuMCwgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjIKKyAgICAwLjAsCisgICAgMC4wLCAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDY2MworICAgIDAuMCwKKyAgICAwLjAsIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNjY0CisgICAgMC4wLAorICAgIC0wLjAsIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNjY1CisgICAgMC4wLAorICAgIC0wLjAsIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjYKKyAgICAwLjAsCisgICAgLTAuMCwgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDY2NworICAgIDAuMCwKKyAgICAtMC4wLCAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjY4CisgICAgMC4wLAorICAgIC0wLjAsIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjkKKyAgICAwLjAsCisgICAgLTAuMCwgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzAKKyAgICAwLjAsCisgICAgLTAuMCwgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzEKKyAgICAwLjAsCisgICAgLTAuMCwgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzIKKyAgICAweDEucDAsCisgICAgLTB4MS4wcDAsIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNjczCisgICAgMHgxLnAwLAorICAgIC0weDEuMHAwLCAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzQKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzUKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNjc2CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAsIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzcKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzgKKyAgICAweDEucDAsCisgICAgLTB4MS4wcDAsIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzkKKyAgICAweDEucDAsCisgICAgLTB4MS4wcDAsIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNjgwCisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAsIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjgxCisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAsIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY4MgorICAgIDB4MS5wMCwKKyAgICAweDEuMHAwLCAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDY4MworICAgIDB4MS5wMCwKKyAgICAweDEuMHAwLCAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODQKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODUKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNjg2CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAsIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNjg3CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAsIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDY4OAorICAgIDB4MS5wMCwKKyAgICAweDEuMHAwLCAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODkKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDY5MAorICAgIDB4MS5wMCwKKyAgICBIVUdFX1ZBTCwgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNjkxCisgICAgMHgxLnAwLAorICAgIEhVR0VfVkFMLCAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNjkyCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDY5MworICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLCAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNjk0CisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xMDIyLCAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTUKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTEwMjIsIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTYKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTEwNzQsIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDY5NworICAgIDB4MS5wMCwKKyAgICAweDEuMHAtMTA3NCwgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDY5OAorICAgIDB4MS5wMCwKKyAgICAwLjAsIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDY5OQorICAgIDB4MS5wMCwKKyAgICAwLjAsIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDAKKyAgICAweDEucDAsCisgICAgLTAuMCwgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzAxCisgICAgMHgxLnAwLAorICAgIC0wLjAsIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDIKKyAgICAweDEucDAsCisgICAgLTB4MS4wcC0xMDc0LCAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDMKKyAgICAweDEucDAsCisgICAgLTB4MS4wcC0xMDc0LCAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzA0CisgICAgMHgxLnAwLAorICAgIC0weDEuMHAtMTAyMiwgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzA1CisgICAgMHgxLnAwLAorICAgIC0weDEuMHAtMTAyMiwgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDcwNgorICAgIDB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzA3CisgICAgMHgxLnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLCAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzA4CisgICAgMHgxLnAwLAorICAgIC1IVUdFX1ZBTCwgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzA5CisgICAgMHgxLnAwLAorICAgIC1IVUdFX1ZBTCwgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDcxMAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDIyLCAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTEKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzEyCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LCAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTMKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDcxNAorICAgIDAuMCwKKyAgICBIVUdFX1ZBTCwgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzE1CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDcxNgorICAgIDAuMCwKKyAgICAweDEuOHAwLCAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTcKKyAgICAwLjAsCisgICAgLTB4MS44cDAsIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDcxOAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzE5CisgICAgMC4wLAorICAgIC1IVUdFX1ZBTCwgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzIwCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLCBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDcyMQorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjIKKyAgICAwLjAsCisgICAgMC4wLCBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDcyMworICAgIDAuMCwKKyAgICAtMC4wLCBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDcyNAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQsIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzI1CisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMiwgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjYKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjcKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLCBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDcyOAorICAgIEhVR0VfVkFMLAorICAgIDB4MS44cDAsIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzI5CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS44cDAsIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzMwCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzMxCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLCBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDczMgorICAgIC0wLjAsCisgICAgLUhVR0VfVkFMLCAtMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDczMworICAgIC0wLjAsCisgICAgLUhVR0VfVkFMLCAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDczNAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwsIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDczNQorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwsIC0weDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzM2CisgICAgMC4wLAorICAgIC1IVUdFX1ZBTCwgLTB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzcKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMLCAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDczOAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwsIC0weDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzM5CisgICAgMC4wLAorICAgIC1IVUdFX1ZBTCwgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDAKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMLCAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDEKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMLCAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDIKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLCAweDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzQzCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwgMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDc0NAorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDUKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsIDB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDYKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDcKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDgKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsIDB4MS44cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDkKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTAKKyAgICBIVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzUxCisgICAgSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLCAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDc1MgorICAgIDAuMCwKKyAgICBIVUdFX1ZBTCwgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzUzCisgICAgMC4wLAorICAgIEhVR0VfVkFMLCAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTQKKyAgICAwLjAsCisgICAgSFVHRV9WQUwsIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzU1CisgICAgMC4wLAorICAgIEhVR0VfVkFMLCAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTYKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTcKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDc1OAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLCAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDc1OQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLCAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDc2MAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjEKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjIKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xMDIyLCAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzYzCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LCAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzY0CisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NCwgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDc2NQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLCAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc2NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmN2ZmZmZmZmZmZmZmZmVmZmZmZnA1MTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjcKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTEsCisgICAgMHgxLjBwLTEsIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzY4CisgICAgMHgxLnAtNTExLAorICAgIDB4MS4wcC0xMDIyLCAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc2OQorICAgIDB4MS5wLTUzNywKKyAgICAweDEuMHAtMTA3NCwgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzAKKyAgICAwLjAsCisgICAgMC4wLCAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc3MQorICAgIDAuMCwKKyAgICAtMC4wLCAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc3MgorICAgIEhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzMKKyAgICAwLjAsCisgICAgSFVHRV9WQUwsIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc3NAorICAgIDB4MS4wMDAwMDAwMDAwMDAwNDAwMDAwMDAwMDAwMDE4cC01MTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzc1CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgMHgxLjBwLTEsIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc3NgorICAgIDB4MS5wNTExLAorICAgIDB4MS4wcC0xMDIyLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzcKKyAgICAweDEucDUzNywKKyAgICAweDEuMHAtMTA3NCwgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzc4CisgICAgSFVHRV9WQUwsCisgICAgMC4wLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzkKKyAgICBIVUdFX1ZBTCwKKyAgICAtMC4wLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODAKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMLCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODEKKyAgICAwLjAsCisgICAgMHgxLjBwLTEsIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzgyCisgICAgMC4wLAorICAgIDB4MS4wcC0xLCAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzgzCisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xLAorICAgIDB4MS4wcC0xLCAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc4NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMSwgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEsIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzg2CisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xLCAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODcKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTEsIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODgKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTEsIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDc4OQorICAgIDB4MS5wMCwKKyAgICAweDEuMHAtMSwgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzkwCisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgMHgxLjBwLTEsIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc5MQorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xLCAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDc5MgorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xLCAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTMKKyAgICAwLjAsCisgICAgLTB4MS4wcC0xLCBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDc5NAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEsIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTUKKyAgICAweDEucDAsCisgICAgLTB4MS4wcC0xLCAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTYKKyAgICAweDEucDAsCisgICAgLTB4MS4wcC0xLCAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzk3CisgICAgSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xLCAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDc5OAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuMHAtMSwgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzk5CisgICAgMHgxLnAxLAorICAgIDB4MS4wcDIsIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODAwCisgICAgMHgxLjgwcDEsCisgICAgMHgxLjJwMywgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDEKKyAgICAweDEucDIsCisgICAgMHgxLjBwNCwgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDIKKyAgICAweDEucC0xLAorICAgIDB4MS4wcDIsIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDgwMworICAgIDB4MS5wLTIsCisgICAgMHgxLjBwNCwgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODA0CisgICAgMHgxLnAtMywKKyAgICAweDEuMHA2LCAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDUKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwgLTB4MS43NDkxMGQ1MmQzMDUycDYyCisgIH0sCisgIHsgLy8gRW50cnkgODA2CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLCAweDEuNzQ5MTBkNTJkMzA1MnA2MgorICB9LAorICB7IC8vIEVudHJ5IDgwNworICAgIDB4MS5wMiwKKyAgICAweDEuMHAxLCAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgODA4CisgICAgMHgxLnAtMiwKKyAgICAweDEuMHAxLCAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDgwOQorICAgIDB4MS5wMiwKKyAgICAtMHgxLjBwMSwgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDgxMAorICAgIDB4MS5wLTIsCisgICAgLTB4MS4wcDEsIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgODExCisgICAgMHgxLmIwcDQsCisgICAgMHgxLjhwMSwgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDgxMgorICAgIDB4MS44NmEwcDExLAorICAgIDB4MS40cDIsIDB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTMKKyAgICAweDEuOTIxZWUwcDE5LAorICAgIDB4MS5jcDIsIDB4MS5jcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTQKKyAgICAweDEuMmEwNWYycDMzLAorICAgIDB4MS40cDMsIDB4MS40cDMKKyAgfSwKK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvcG93Zl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvcG93Zl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2ExNzY1YgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9wb3dmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDI3NjYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzJfdDxmbG9hdCwgZmxvYXQsIGZsb2F0PiBnX3Bvd2ZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMCwgLTB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMC4wZiwKKyAgICAtMHgxLnAtNSwgMHgxLmUwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTMwLCAweDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEucDAsCisgICAgLTB4MS5wMCwgMHgxLjAwMDAwMnAzMgorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEucDAsCisgICAgLTB4MS4wMDAwMDJwLTQxLCAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLmQxYTAyOTEyODc3OGZjYTNmOWEyNjFiZTFjYjg2YmU3cC0xMjEsCisgICAgLTB4MS4wMDAwMDZwMCwgLTB4MS5iYzFlZTJwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLmRhNmUzZmYyMDJkYTc1MmRlNTIzZjk4NDYzMDNjMGI1cC0xMjQsCisgICAgLTB4MS4wMDAwMGFwMCwgLTB4MS4xMTExMTJwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLmViNzBhMmZiYjhiMjQ4OWI4ZDgzOGViNjVlZDY3NmFjcC05MSwKKyAgICAtMHgxLjAwMDAwYXAwLCAtMHgxLjhmODNlNHAyNgorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS4wMDAwMjhwMCwgMHgxLjIwcDQ0CisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS4wMDIwMDFwLTQsCisgICAgLTB4MS4wMDEwcC0yLCAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS4wMDIwMDFwLTgyLAorICAgIC0weDEuMDAxMHAtNDEsIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLjAwNDAwNHAtODIsCisgICAgLTB4MS4wMDIwcC00MSwgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuMDA2MDA5cC0xMiwKKyAgICAtMHgxLjAwMzBwLTYsIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgLTB4MS5mYjg1OWFkYmRiN2RmNjk3NGM1YzlhNTQ4OWU2OTcyYXA1MywKKyAgICAtMHgxLjAwNDBwLTYsIC0weDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLjAwODAxMHAtODIsCisgICAgLTB4MS4wMDQwcC00MSwgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuMDBlMDMxcC00MCwKKyAgICAtMHgxLjAwNzBwLTIwLCAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS4zMWU0NTJmZmZmZWM5NmEzZDVhODgyZmUyNDRmOGM2M3AtMSwKKyAgICAtMHgxLjA0NmVmNHAwLCAtMHgxLmUwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS4zM2U4ZjMwNHAtMzYsCisgICAgLTB4MS4wOHAtNiwgMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS5kODIwMDFmZTlkNmJkYmJhOTg2MzhkZWY4ZDM3ZTUwYnAtMTI0LAorICAgIC0weDEuMWVjMzhjcDAsIC0weDEuNzhwOQorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgLTB4MS40NWYzYmRlYWE1ZjYwZDEyMWMzZmE3NTFkYmQ3NThhZHAzNiwKKyAgICAtMHgxLmJmZmZmZXAtNiwgLTB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuZGY0MWFlN2VmNGUxNWU4YWQ0NWM3MjkzZGRjM2ZlN2RwNjEsCisgICAgLTB4MS5mZmZmZmFwLTEsIC0weDEuYzliMjQ0cDI3CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuZGY0NmYyNmYxZjEyOWE1NDkyMjAyMmY5YjY1M2E5OWZwNjEsCisgICAgLTB4MS5mZmZmZmFwLTEsIC0weDEuYzliMjYycDI3CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAtMHgxLjAwMDAwMzAwMDAwOTAwMDAxYjAwMDA1MTAwMDBmM3AyMSwKKyAgICAtMHgxLmZmZmZmYXAtMjIsIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIC0weDEuMDAwMDAzMDAwMDA5MDAwMDFiMDAwMDUxMDAwMGYzcC05OSwKKyAgICAtMHgxLmZmZmZmYXA5OCwgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgLTB4MS43OGI1NWVmOGFlY2IwYjdjNWI4ODY1ZTI3MTU3ZDgyNHAtMiwKKyAgICAtMHgxLmZmZmZmY3AtMSwgMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgLTB4MS5mZmZmZmVwLTQxLAorICAgIC0weDEuZmZmZmZlcC00MSwgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEucDcxLAorICAgIDB4MS5wLTIsIC0weDEuMWNwNQorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLmQ1ODA3MTBlMzg0NjNjM2RkNjJmY2U5OGYyMDNiNDcxcC0xLAorICAgIDB4MS5wLTIsIDB4MS4wMDA3cC00CisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEucC0xNSwKKyAgICAweDEucC0yLCAweDEuZTBwMgorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMC4wZiwKKyAgICAweDEucC0zLCAweDEuOGZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5wLTQwLAorICAgIDB4MS5wLTUsIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLnA0MCwKKyAgICAweDEucC0xMCwgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLmVjZmZmMGI0NDlkN2M5YTVkNDk0Yzg4NGM3MTdmOWNkcC04OCwKKyAgICAweDEucC0xNDQsIDB4MS4zNTg2ZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS5lY2ZmZjBiNDQ5ZDdjOWE1ZDQ5NGM4ODRjNzE3ZjljZHAtMTA2LAorICAgIDB4MS5wLTE0NCwgMHgxLjc1ODZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwgLTB4MS5jY2FjY2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xNDksIC0weDEuZTZlNjY2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEuZThlMTAxMzU1YmQ5NzViZmVjM2ZiNWVkMzc1Nzc3N2RwLTEsCisgICAgMHgxLjAwMDAwMnAtMiwgMHgxLjExMTFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS5kZGI2NDM0N2E1NWU0NTJlZDA0ZDZhMTczY2E1YjU2Y3A5OSwKKyAgICAweDEuMDAwMDAycC0xMTEsIC0weDEuY2NjY2NjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuNTU4ZTk5MDAwNGE4ZWJiM2U4MTc2Mjc1YmE5ZjEwNTJwNTIsCisgICAgMHgxLjAwMDAwMnAtMTEyLCAtMHgxLmRmM2I1YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLmZmZmZmZDAwMDAwNTNmZmZmNjYwMDAxMjBiZmZkZGI2cDkyLAorICAgIDB4MS4wMDAwMDJwLTEyNCwgLTB4MS44MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLmZmZmZmZmZmZmZmODAwMDAwODAwMDAwNTU1NTU0NTU1cC0xLAorICAgIDB4MS4wMDAwMDJwMCwgLTB4MS5wLTIzCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuZmZmZmZmZmZmZmY5MDAwMDA3MDAwMDAyZWFhYWEwMmFwLTEsCisgICAgMHgxLjAwMDAwMnAwLCAtMHgxLmMwcC0yNAorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLmRkYjY1MzBkNDg1YjdiYWRiNDQxYTQ0NjBjYTU0YzYycDksCisgICAgMHgxLjAwMDAwMnAxMSwgMHgxLmNjY2NjNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLmQ5MDE3OTBjZDlkMWI5ZDhjZGY2MTYyOTY0NzkwMjJmcC0xNCwKKyAgICAweDEuMDAwMDAycDE3LCAtMHgxLjhhZjhiMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLmU2ZDNmOTBkNDE0NDQ3YjJmMjQ2N2Q0YzIxNDQ5NmJkcDMwLAorICAgIDB4MS4wMDAwMDJwNDIsIDB4MS43OTA0YTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS4wMDAwMTJmZmZmZDY4MDA0ZmE3ZmIxNTkxMDhlYzk3ZHAwLAorICAgIDB4MS4wMDAwMWNwMCwgMHgxLjViNmRiYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLmQxNzQ4MTBlMWU0NTI3ZjAxMTU0N2RmYzRkYzZiNDhjcC0zLAorICAgIDB4MS4wMDAwMWNwMywgLTB4MS42Y2NjY2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS5kNTgxOTcwZThiNGNjYzlkYmMyODg5OWJkMTg0OGUyNHAtMSwKKyAgICAweDEuMDAwMDJlcC0yLCAweDEuZmZmZmNlcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEuMDAwNDU1MDAwMzEyY2M2ZTc5Y2VkNjUzYzM4ZDdlMmFwMCwKKyAgICAweDEuMDAwMDM4cC01MCwgLTB4MS5mZmY3N2VwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuMDA0ODA5MDBhODA3ZTAzZjAxNTAwNDgwMDkwMDA4cC04MSwKKyAgICAweDEuMDAwOHAtOSwgMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIDB4MS5mZmMwMDRmZmIwMDQ1ZmM4MDI5ZmUyMDE0OWYyNDA4ZXAzOSwKKyAgICAweDEuMDAwOHAtMTAsIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5mZWMxYmIzNWI1YTgyNjUyNjEwMWFkYWIwNjk1ZDFkM3AtMSwKKyAgICAweDEuMDBlMHAwLCAtMHgxLjZjY2NjZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLmZhZGJkZTE4N2FjYmE1YjNhNmM0Y2RlNzhlMWJiYjRhcDQ1LAorICAgIDB4MS4wMWZmZmNwMCwgMHgxLnAxMgorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLmZmMWZiNmZmNzlhNWUwMzkxYjFkN2RmYjE0ZGU3ZGU2cDIyLAorICAgIDB4MS4wMWZmZmVwMCwgMHgxLjAwMGNiNnAxMQorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjZjYmJjMmZmZjY0YzczYWFiMDAzM2RmNzU3ZjM4MDhkcDExLAorICAgIDB4MS4wMjIwcDAsIDB4MS5lMjk1ZjJwOQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmY4MWY1MzEyYmE0NDk0MjFiZDkzOTNhZDhkZjUzYWFlcC0xLAorICAgIDB4MS4wNHAwLCAtMHgxLjAwMDZwMAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLmZmZTg4YWZmZmZmZjMzZTkzM2NmYWFkNWYwZWUyNjc4cC0xLAorICAgIDB4MS4wOGM3ZWVwLTE2LCAweDEuMGY5NGIycC0xNgorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgMHgxLjAwMDBkY2ZmZmZjNmZlZTdlNGFhYzA5YTNkOWZiOWExcDAsCisgICAgMHgxLjBlcC0yMCwgLTB4MS4wMDBjZGNwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuNzBjZTA1ZTYyOTgwM2MwY2E0NzQ4MjM5MmE4ODJkZWJwLTMsCisgICAgMHgxLjBlcDMsIC0weDEuOWI5MWJhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuNWE4OTI2ZTQ3M2Y2MTQ4YTVhMzgzYmZhMWVkMGIzMzVwLTkwLAorICAgIDB4MS4wZmZmZmVwMCwgLTB4MS4wMDAwZmVwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS44ZWM1YjJlMTYwNjcyOGYyMWNmMmM5MGMyZTRkMmE5YnAtOTMsCisgICAgMHgxLjBmZmZmZXAwLCAtMHgxLjA3ZmZmZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLmE0N2RkNGZmZmZlMjU0ODYzMTQzNTE0MTM4MzdiMmZkcDQsCisgICAgMHgxLjE2MjRwLTQsIC0weDEuMzcyMGMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS40NDI0MDFwMCwKKyAgICAweDEuMjAxMHAwLCAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS5lN2FhZjJmZmZmYmNlODZhNGZkMmNmOWNiNTNkN2U1NXAtMSwKKyAgICAweDEuMjUzMjY0cDAsIC0weDEuNmY4MjZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuNGQ2MzI5MDA1MmQ0ZDJkODk0YjQ2MzVjYjliOTgxMzBwLTM5LAorICAgIDB4MS4yNzExYzhwLTYsIDB4MS5hYTgwNGVwMgorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLmIyMDE2OGRhMGZjMWZjYTZkM2MxYjhjMjNmZGNhZjM5cDQ5LAorICAgIDB4MS4yYWFhYWFwLTEsIC0weDEuZmZmMWZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS5lZTI2YzEyZWJmNWI2NDliZWY5NTQ4NGVjZTExMzAwN3AyLAorICAgIDB4MS4yZjdkYzBwLTIzLCAtMHgxLjA5NjdjMHAtMworICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgMHgxLmJjOTA1OTAwMDAwMDJlZTExNzYzYzZmZTI0MTg3MzBjcC0yLAorICAgIDB4MS4zMzQ0NzhwLTIsIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS44YzhjODMwMDMwOGNlZTdjMWE0MWIwOTI5NDMyM2NmYnAtODIsCisgICAgMHgxLjNmZmZmZXAtMSwgMHgxLmUwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS42NDNkNGVmZmZlNjA2ZTA1NmU0MDM1YjBiZWNjMjBmZHAtNSwKKyAgICAweDEuM2ZmZmZlcC00MCwgMHgxLmQyZjE5MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMHgxLmY4MTQ4OTE0ZDRlYTNhZjk0ZWU3MjQ1NzJmMmVlOGZmcC0xLAorICAgIDB4MS40MWQ0MjBwMjAsIC0weDEuMjJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuY2Q2ZTkxMDAwMzhjOTNhN2RjZTcyYTExM2NhNTZjNzBwLTIsCisgICAgMHgxLjQ0M2E0MnAtMiwgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLmY4OTU5MTBmMzkyZjNiOGZjYzY0MWFlODcxNjRkNjg0cC0xLAorICAgIDB4MS40NWEyYThwMSwgLTB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS5lM2RmZjhmZmY2ZTllZmQ0ZjE2N2E3YjkxZWI4ODJhZnAtMSwKKyAgICAweDEuNDVkMTc0cC0xLCAweDEuMDAwMDFjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuZDMzMmYwZmZmYzgzMTI4YTdmYzdiZDU2YmUyN2U3NTVwLTIsCisgICAgMHgxLjRhMTcwNHAtMiwgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgMHgxLmQ1YWU3OTAwMDNjYjE3Y2Y4M2RlYjVlMmNjMGVhMDFjcC0yLAorICAgIDB4MS40YzlmOTRwLTIsIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS5jYThlYzZlZDVkZjM5Zjk5MWY4MDhkOTRkZDVjODgzNHA4OCwKKyAgICAweDEuNGU5Y2MycC0zMCwgLTB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAweDEuZDliNjQ4ZmZmYzE2N2VkOGI5MTdiNjRmNzQ3ZTYyNzBwLTIsCisgICAgMHgxLjUwYmZjOHAtMiwgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLmRhOTUwNzAwMDFhMzc5OWZlZTAyZWEwMzQzNTdhOGMycC0yLAorICAgIDB4MS41MWE0NTBwLTIsIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS5mZTk1N2IzOGM1YjY5NTliYjBlYTgwZTQzYzcwOWVjYXAtMSwKKyAgICAweDEuNjc5Mjg2cC0xMSwgMHgxLjhlYTgyNHAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS5hY2E5MWI1ZjM4ODJmMzZkY2RhYjJhOGQ2NDFjMGFiNXAtNTYsCisgICAgMHgxLjc0NWQxOHAtNCwgMHgxLmZmMWZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuZjgyZWI3MTFmZjAwNjZlZTU5MTY1ODI1OGI2OTIzMzFwLTEsCisgICAgMHgxLjc3ZmZmZXAtMTIwLCAweDEuODViYzdhcC0xMworICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLmQ5OGM4MzAwMDAzZTgzZmQyNWI5NTM4MWY3MDIxNjFjcC0xLAorICAgIDB4MS43YTNkMGVwMCwgLTB4MS45OTk5OWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS5mODJjZWYxM2ExMWE1ZjVhMDU2MmZlNTJjODgyMDdiZHAtMSwKKyAgICAweDEuN2M5YTE2cC0yLCAweDEuZmRkZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuZDBkMDE0ZmZmZTcxNWUyNzMyYjZkMWNlZDk2YWRiNzZwMTksCisgICAgMHgxLjdlOWJiMHAtOCwgLTB4MS41Njk4MjhwMQorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgMHgxLjg1MThlMmZmZmRlYTMwMTA2MmFjNmEyOWM2ZTUzZGY2cC0xLAorICAgIDB4MS44NTFlYmFwLTEsIDB4MS4wMDBlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS4yZGExZThmZmZlMTM1MGU0ZGFmNTU1M2U3NWRjYTAyMHAtNCwKKyAgICAweDEuODYxODYycC00LCAweDEuMWNwMAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLmRkMDM3YTJjNTYxYmZlMTgyNHAtMTEsCisgICAgMHgxLjhjZTYzMnAtNCwgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS5mODFmYTcxM2QyYjIzZWFjNTJhMzZmNGIzYTMzMDIzZXAtMSwKKyAgICAweDEuOGY4NmFhcC0xLCAweDEuMDAwMGUwcC00CisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuMDNmMTRiMDk1YWU2ODc1MjVhN2UzNzdlMzUwNWU1ODdwMCwKKyAgICAweDEuOTBwNSwgMHgxLjAwMDhwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS4zNjM5NTEwMDAwNWNjNDExM2IyMjBkNmNlNjcyZTE2NXAwLAorICAgIDB4MS45NTU3OGVwMSwgMHgxLjU1NTU1NnAtMworICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLmY4MzI0OTEzNGU3N2EyMWJmODExMzUwYzZhOTMxYmVlcC0xLAorICAgIDB4MS45OHA1LCAtMHgxLjAwMDAwMnAtOAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjlmNjI4YjNjZmQwNmY0MTdmODZlMWNhOGVkYzE0NjllcDExNywKKyAgICAweDEuOTk5OTljcDMsIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLmQ0ODUxY2NlZGFmZGQxY2JjNzlhNmE2YjNkYmIxY2JlcDExOSwKKyAgICAweDEuOWE2NmQwcC0xNCwgLTB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuMjUzNjI3MDAwMWZhYjcwYTI5ZDY4ZTYwZmViMTEyMTFwLTExLAorICAgIDB4MS45ZmZmZmVwNDEsIC0weDEuMDk0ZjFjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuZDA4YWU4ZmZmZGM3MDI5ZTBiZDAyYzg3MTYwNmEwMWNwMCwKKyAgICAweDEuYTU3YmVjcDEsIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5iODM2MzhmZmIyMTU2MWEyM2VjOWI4YTdiMGJhN2I1MnAxNSwKKyAgICAweDEuYWFhYWFlcC0xLCAtMHgxLmUwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS5jMTk4ODYwMDAwMDAxYzFjZWUxNDZlNDUxMzY1ZWFlMXAtMTAsCisgICAgMHgxLmFkMWQxY3AtMTQsIDB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5jZDBjNmVlZmMzM2RmYzJlZjNkMmJlYjgxYWQ1NjhjYXAzMCwKKyAgICAweDEuYjEzYjFjcC0xLCAtMHgxLmZmZmYxZXA2CisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAweDEuNjIyOGU0ZmVmODgyNzY5YmEwNDAxNjRmYzRiY2EwY2JwLTgxLAorICAgIDB4MS5iN2ZmZDhwLTEsIDB4MS43MDUzOTRwOAorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS5hZTlkNzU2Yzg0YjQwNjNmMjM4ZGQxNTFiZWMzMGUwYnAtOTksCisgICAgMHgxLmJlMGQ3Y3AtMSwgMHgxLmVkZTQ0OHA4CisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLjkxM2Y2OGYxMDFlYmU0OTBkMjlkODczZDFlMGZkODI4cC04NSwKKyAgICAweDEuYmUwZjcwcC0xLCAweDEuYTgxNDdhcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuYjFlNzIxNWMxMjgwODJhYWI0OWVkYWIxNjQxOTE5YThwLTk5LAorICAgIDB4MS5iZTBmNzBwLTEsIDB4MS5lZGU1ZDhwOAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS5kYzU3NDE4M2YwM2Q3YTMzM2MxOGZjNjkxNmRhYTg1OXAtOTYsCisgICAgMHgxLmJmZjBkMHAtMSwgMHgxLmVkMmZiNHA4CisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLmRhNmZjZDAwMDIwZGE2NTllNGE1MGJhOTkzYTcxZDkycDYsCisgICAgMHgxLmJmZmZmZXAxLCAweDEuZTdmNzgycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmMyNWMyNnAtNDQsIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS45NTFkZmFmMGQwMzQxMDk3ZTUwZjhkNTFmYjViMGIyYXAtNzIsCisgICAgMHgxLmM0ZWM3NHAtMSwgMHgxLjkzNTIzNHA4CisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLmZiMWM2Y2ZmZmVmMTk5ODg0ZTc4YzI2ZmVmMDU3ZmMzcDQsCisgICAgMHgxLmM3NjM4MHAwLCAweDEuODAwODdjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuZDgyZDdkZmZmZmVmYzI2ZTFmMDllNmQ3M2EyNzZkODFwLTEwLAorICAgIDB4MS5jYzhkMDZwLTE0LCAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLjk5N2UwZWVmN2JiM2Q0ZWRhNDBkYzQzYzcyYTUzMTY3cC03MCwKKyAgICAweDEuZDFjZGNjcC0xLCAweDEuZmMyNjQwcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuZmU4MmRkMzgxYThkMzA1NmE0YzU1NGYxZTE3NjRmOWRwLTEsCisgICAgMHgxLmQ0MGE2NnAtMywgMHgxLjAyOTY0Y3AtOQorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS5mM2FiMTkzNzE2OWM5YWI3YWFjNjdiOTQ4OTRlZGUxMHAtMSwKKyAgICAweDEuZDU1NTUycC0yLCAweDEuMDAwMDM4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLmZlODA1ZjM3Yjg5YmMwYzhiMDE2M2RiN2MxMWY0OGYycC0xLAorICAgIDB4MS5kYTEyZjBwLTEsIDB4MS4zOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS5jMjc5MzcwMDBmNmMxNWE4NmY4ZWIwNDJhMDg5NTU2NnAtNzMsCisgICAgMHgxLmRmMGE4MnAtMSwgMHgxLjc3ZmJjMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLmM2NGIwZDAwMDAyN2RiZWZhMWUzMjMzZWY1MzYxOWI3cDEwNSwKKyAgICAweDEuZGZmZmZlcDUyLCAweDEuMDAwODdjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuMDg0N2IwODBlMTBhM2YzM2JhNTk5YTIxOGI2MzBmZmJwMCwKKyAgICAweDEuZTA2YjhjcC0xLCAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS5lZmY1NzE2ZmEwNTdjMGRiMDI5NzJlNWI1MWE5NTg5OXAtMSwKKyAgICAweDEuZTA2YjhjcC0xLCAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLjA4M2Y3ZjU4N2NkYjZjYzAwNWVlNzBhYmIxMjgwNjdjcDAsCisgICAgMHgxLmUwODk1NnAtMSwgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuZjAwNGQxODY2NTNkZjc0NmY0NmFjMWRhNTFlNjg4MTdwLTEsCisgICAgMHgxLmUwODk1NnAtMSwgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS4yZTc4OTg2Y2U3MTY5MDY4OWExN2IwOWUyZmQwMTI1NnAwLAorICAgIDB4MS5lMGVlOGFwLTEsIC0weDEuNTUxNXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLjM0ZTMwNmViZGFjYjNmYjI0OWVmYjkyYzVkZjUwYTMwcDAsCisgICAgMHgxLmUwZWU4YXAtMSwgLTB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLjFhMjJhMmIyODQ4NDNjZWY3MjlhYTc5MjMyMDA2MTZicDAsCisgICAgMHgxLmUwZWU4YXAtMSwgLTB4MS44ZDg5ZDhwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS4xZDhiZWZlZDAzZjllZDhkNjI4ZTcyYWNmZDU4NDZmMnAwLAorICAgIDB4MS5lMGVlOGFwLTEsIC0weDEuYmViMDUwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuZTllNTE4ZmIxNjE3ZWNlYjk3NmI0MjA5MzBhM2NlNTFwLTEsCisgICAgMHgxLmUwZWU4YXAtMSwgMHgxLjY4Zjg4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5hMGJkYmFlN2QxYjk1ZDFhZGIwNTkzOWFlZmNkMzVmMnAtOTMsCisgICAgMHgxLmUxM2QwZXAtMSwgMHgxLjAyMjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEuODc4OTI2OWMzZDczNjFmNjQ2NGYzNjliYWVjZDM1OGZwLTkwLAorICAgIDB4MS5lMWYwN2VwLTEsIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuZjY3ZGNiMGQwMzRlYzI4YTQzMDljNDQxNTU2NWY5ZWNwMSwKKyAgICAweDEuZTQwMDBlcDUsIDB4MS41NTU1NWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEuZTY1Nzg1OTg2ZmI3YWYxMjE5MjM0OTgwZGNhNGVmMzRwLTkzLAorICAgIDB4MS5lNmYzMTRwLTEsIDB4MS4zZTBmODBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuZTlhNTc2OTFmMDZhY2JkMzg5MzkwMWUzNzY4MzA1MzdwLTEyNSwKKyAgICAweDEuZTk3NDcwcC0xLCAweDEuZGQ2N2MwcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLjg2NmVjOTAwMDE3ZDY4OWNhNWRlYjE4YzQ3NjllZmZicC0yLAorICAgIDB4MS5mMDQwYzhwLTEsIDB4MS5lZGRiYWNwNAorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5mODM5ZDUxMDFiY2YzMDVlMDRjMTg3YWZiNTNhNmM1M3AtMSwKKyAgICAweDEuZjA5MWUycC0xLCAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLmEzNzRjMmIwMGI2MjE3MmNkNDY3OGRmNWU1MDNiNmYxcC0xMywKKyAgICAweDEuZjYwYzA0cC0xNCwgMHgxLmUyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS5mODQ3OWIxMTU1NjFmMTcwMjhiMjM2ZmI4ZjJjMTczZnAtMSwKKyAgICAweDEuZmYxNzRhcC0xLCAweDEuMTE5OTk2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEuZjk0N2NmMGRlYmIzZjUxNDlkZjY2ZTA4Mzk2ZjY1YzVwMywKKyAgICAweDEuZmYxZmZlcDMsIDB4MS5mZGRmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuZjNhZTZiMzZjMzE2M2NkMmQ0MmYxZWRkZjRlOTU4ODZwLTEsCisgICAgMHgxLmZmN2ZmZXAwLCAtMHgxLjIwM2M4OHAtNQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIDB4MS5mODQyYjUxMjdlNTYyYmY0Y2MyZmIyYWEzMDMxMjM5M3AtMSwKKyAgICAweDEuZmZiZmZlcC0xMCwgMHgxLjNmZmZmZXAtOQorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIDB4MS5mYzA0MmNmY2FiZDNkMDBjM2ZkN2U5ZDE2OGEyMDE4MnAtMSwKKyAgICAweDEuZmZjMHAtMSwgMHgxLmZmYzdmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgMHgxLmY4MzZjZDEyOTI3ZmUzZWEyZWI5ODEwNDYyYzIwOGRjcC0xLAorICAgIDB4MS5mZmY3N2VwMTAwLCAtMHgxLmNiMDk2OHAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuZmZmM2ZkMGMwNjA4YzYwZDhjM2M5ZjA3NjQ4NjA3ZDVwMTQsCisgICAgMHgxLmZmZjdmZXA5LCAweDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIDB4MS5mODExZDMxNDBkMTcyOTZkYzYzM2NkMDBiZmQ5NjM4N3AtMSwKKyAgICAweDEuZmZmOHAtMSwgMHgxLmZmODBwNworICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5mZTlkOTczOGQwY2E5ZjExZjk3YTcxYjFhMzY2MTQ1YXAtMSwKKyAgICAweDEuZmZmZWZlcDEsIC0weDEuZmZmZmY4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIDB4MS5mMjAyYjMwMDAwMzA2OWE3YTg4NmU0NGZiZjYwNzNjMnA3MiwKKyAgICAweDEuZmZmZjNlcDEyNywgMHgxLjIzZDcxNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS5iODM0YTE5Mjg3NWQ3MmFjODFiNzkxNWNmODk3OTY5MHAtOTYsCisgICAgMHgxLmZmZmZiZXAtMSwgMHgxLnAyNQorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDB4MS5mZmZmZWQwMDAwMjliZmZkZGVmNTQ5NWU1NjAzY2UzYnAtMSwKKyAgICAweDEuZmZmZmUycC0xLCAweDEuNDQ0NDNlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLmQ2YWI1ZDBlN2FlMDM0MzNhZDgyNDYxNmQwZGI4YjAzcDE1LAorICAgIDB4MS5mZmZmZWVwLTQwLCAtMHgxLmEwZWEwY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS4wMDAwMDJmZmZmZmZmZmZmZjI3ZmZmZTRmZmZmZWJjMHAwLAorICAgIDB4MS5mZmZmZmFwLTEsIC0weDEuZmZmZmZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLjAwMDAwMDAwMDAwNDAwMDAwNDAwMDAwZDU1NTU2ZDU1cDAsCisgICAgMHgxLmZmZmZmY3AtMSwgLTB4MS5wLTIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMHgxLjAwMDAwMDAwMDAwMzgwMDAwMzgwMDAwYWNhYWFiZGVhcDAsCisgICAgMHgxLmZmZmZmY3AtMSwgLTB4MS5jMHAtMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuZWU4ZmM5MzA5NTRkMjliM2UyOGM1YzFlYWZiOWY3ZmRwNCwKKyAgICAweDEuZmZmZmZjcC02NywgLTB4MS4zMzMzNGVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAweDEuNmEwYTBjZmZmM2ZmYTAwZTc1M2FmODRjMDEwMGZiZjBwMTMsCisgICAgMHgxLmZmZmZmY3AtMTA2LCAtMHgxLjA3NTA3OHAtMworICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS45YWFhYmNmZmYyYWUzZTdjODRlODcwODU2NDAzNTVlNHA0OCwKKyAgICAweDEuZmZmZmZjcC0xMjAsIC0weDEuYTJlOGJlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgMHgxLmY1Nzc3YWZmZmUyYjQ2YTRkYTk4NzU5MDQzZGU0ODYycC01MiwKKyAgICAweDEuZmZmZmZjcDgwLCAtMHgxLjQyOGY1OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS43M2QzMzIxZTdmMjQ3ZGVmMWVkNGM4MTZjODI0Yzc3ZHAtNjcsCisgICAgMHgxLmZmZmZmY3AxMTksIC0weDEuMWI5MWI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgMHgxLjAwMDAwMTAwMDAwMTAwMDAwMTAwMDAwMTAwMDAwMXAxMCwKKyAgICAweDEuZmZmZmZlcC0xMSwgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDB4MS5mZmZmZmVmZmZmZmZiZmZmZmZkZmZmZmZlYmZmZmZmMXAwLAorICAgIDB4MS5mZmZmZmVwMSwgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDB4MS5jYjVhMGQwMDAyZjUxNjlhMTNkZTM5ODYzYmI1ZjkxZHAtMiwKKyAgICAweDEuNDIxZWZhcC0yLCAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLmNiNzIwZGNlZjkwNjkxNTAzY2JkMWU5NDlkYjc2MWQ5cC0xLAorICAgIDB4MS5wLTUsIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAweDEucC01LAorICAgIDB4MS5wLTUsIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS5wMCwKKyAgICAweDEucDAsIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEucDAsCisgICAgMHgxLnAwLCAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEucC00MCwKKyAgICAweDEucC01LCAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAwLjBmLAorICAgIDB4MS5wLTUsIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDB4MS5wMCwKKyAgICAweDEucDAsIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIDB4MS5wMCwKKyAgICAweDEucDAsIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDAuMGYsCisgICAgMHgxLnAtNSwgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIDAuMGYsCisgICAgMHgxLnAtNSwgMHgxLnAxMgorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIDB4MS5wMCwKKyAgICAweDEucDAsIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAweDEucDAsCisgICAgMHgxLnAwLCAweDEucDEyCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLjExMzAxZDAxMjViNTBhNGViYmYxYWVkOTMxOGNlYWM1cDAsCisgICAgMHgxLnAzLCAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMHgxLnAzLAorICAgIDB4MS5wMywgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLjFkNDg3MzE2OGI5YWE3ODA1YjgwMjg5OTBmMDdhOThicDAsCisgICAgMHgxLnA1LCAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgMHgxLnA1LAorICAgIDB4MS5wNSwgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLnAyNCwKKyAgICAweDEucDMsIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDB4MS5wOTYsCisgICAgMHgxLnAzLCAweDEucDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEucDQwLAorICAgIDB4MS5wNSwgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wNSwgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wMywgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIEhVR0VfVkFMRiwKKyAgICAweDEucDMsIDB4MS5wMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnA1LCAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wNSwgMHgxLnAxMgorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS4zZGVhNjRjMTIzNDIyMzViNDEyMjNlMTNkNzczZmJhMnAwLAorICAgIDB4MS5wMTAsIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEucDEwLAorICAgIDB4MS5wMTAsIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS40YmZkYWQ1MzYyYTI3MWQ0Mzk3YWZlYzQyZTIwZTAzNnAwLAorICAgIDB4MS5wMTIsIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAweDEucDEyLAorICAgIDB4MS5wMTIsIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS5wODAsCisgICAgMHgxLnAxMCwgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wMTAsIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS5wOTYsCisgICAgMHgxLnAxMiwgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wMTIsIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS4wMDAwMDEyNjA1NWNmZDQ0M2M1Mzc2OTMwZDE2OWYzMnAyLAorICAgIDB4MS42YTA5ZTZwLTEsIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAweDEuZmZmZmZkYjNmNTQ4YThkODI3YjY1Yzg4cC0zLAorICAgIDB4MS42YTA5ZTZwLTEsIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS4wMDAwMDEyNjA1NWNmZDQ0M2M1Mzc2OTMwZDE2OWYzMnAtMiwKKyAgICAweDEuNmEwOWU2cDAsIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAweDEuZmZmZmZkYjNmNTQ4YThkODI3YjY1Yzg4cDEsCisgICAgMHgxLjZhMDllNnAwLCAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuMDAwMDAxMjYwNTVjZmQ0NDNjNTM3NjkzMGQxNjlmMzJwMiwKKyAgICAweDEuNmEwOWU2cC0xLCAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLmZmZmZmZGIzZjU0OGE4ZDgyN2I2NWM4OHAtMywKKyAgICAweDEuNmEwOWU2cC0xLCAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEuMDAwMDAxMjYwNTVjZmQ0NDNjNTM3NjkzMGQxNjlmMzJwLTIsCisgICAgMHgxLjZhMDllNnAwLCAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLmZmZmZmZGIzZjU0OGE4ZDgyN2I2NWM4OHAxLAorICAgIDB4MS42YTA5ZTZwMCwgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLjAwMTYyZjM5MTY2NzBkMTE5Njk3MTU0YWUzNTEyYzJkcDAsCisgICAgMHgxLjZhMDllNnAtMSwgLTB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgMHgxLmZmZDNhNTY1Y2FmOGQyMzBkYWUxMjUwNjkzYTU1ZjIzcC0xLAorICAgIDB4MS42YTA5ZTZwLTEsIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLmZmZDNhNTY2MTQ3M2NiMjY5Zjg5NGI0MGQ2Y2Y5YmFjcC0xLAorICAgIDB4MS42YTA5ZTZwMCwgLTB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgMHgxLjAwMTYyZjM4ZjFhMzMyMzBiYzM0MGJkMzc1MmZjMDk0cDAsCisgICAgMHgxLjZhMDllNnAwLCAweDEucC0xMAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS45NDhiMGZjZDZlOWUwNjUyMmMzZjM1YmE3ODE5NDhiMHAxLAorICAgIDB4MS44MHAtMSwgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIDB4MS40NHAtMiwKKyAgICAweDEuODBwLTEsIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDB4MS45NDhiMGZjZDZlOWUwNjUyMmMzZjM1YmE3ODE5NDhiMHAtMywKKyAgICAweDEuODBwMCwgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDB4MS40NHAyLAorICAgIDB4MS44MHAwLCAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEuMjc5YTc0NTkwMzMxYzRkMjE4ZjgxZTRhZmIyNTdkMDZwMCwKKyAgICAweDEuODBwLTEsIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLmJiNjdhZTg1ODRjYWE3M2IyNTc0MmQ3MDc4YjgzYjg5cC0xLAorICAgIDB4MS44MHAtMSwgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS5hMjBiZDcwMGMyYzNkZmMwNDJjYzFhZWQ3ODcxZGI0NXAtMSwKKyAgICAweDEuODBwMCwgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAweDEuMzk4OGUxNDA5MjEyZTdkMDMyMTkxNDMyMWE1NTY0NzNwMCwKKyAgICAweDEuODBwMCwgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDB4MS4wMDEyNmEwYjkzZGIyOTRjYWJlMzNkYTczNTQzN2Y1MXAwLAorICAgIDB4MS44MHAtMSwgLTB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLmZmZGIyZThlZDJhMWZlNzFiZDU5ZmRkNjEwMzEzMDQ2cC0xLAorICAgIDB4MS44MHAtMSwgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuZmZjYzFjNTk3M2IyMTI5YTViMTQyNGUwYzg4Nzg2YjhwLTEsCisgICAgMHgxLjgwcDAsIC0weDEucC0xMAorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDB4MS4wMDE5ZjQ3NGFhMTkwMDM4YzZhZjc3NWQ5MmYxZDcyNXAwLAorICAgIDB4MS44MHAwLCAweDEucC0xMAorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDB4MS5wMCwKKyAgICAweDEucDAsIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAweDEucDAsCisgICAgMHgxLnAwLCAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEucC00LAorICAgIDB4MS5wMSwgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS5wNCwKKyAgICAweDEucDEsIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS5wMCwKKyAgICAweDEucDAsIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLnAwLAorICAgIDB4MS5wMCwgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtMSwKKyAgICAweDEucDEsIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgMHgxLnAxLCAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLnAwLAorICAgIDB4MS5wMCwgLTB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgMHgxLnAwLAorICAgIDB4MS5wMCwgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEuZmZhNzRlYTM4MWVmYzIxN2E3NzNmMTVjMDI1ZjdjMGRwLTEsCisgICAgMHgxLnAxLCAtMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAweDEuMDAyYzYwNWUyZThjZWM1MDZkMjFiZmM4OWEyM2EwMTBwMCwKKyAgICAweDEucDEsIDB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMHgxLnA0MCwKKyAgICAweDEucC0xMCwgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS5wLTQwLAorICAgIDB4MS5wLTEwLCAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAweDEuZmUwMTNmNjA0NWU0MGE3YzQxNDk5MjIzYjRhMzhjZThwLTEsCisgICAgMHgxLjAwNDBwMCwgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS4wMTAwNjAxMDAxcDAsCisgICAgMHgxLjAwNDBwMCwgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgMHgxLnA1LAorICAgIDB4MS5wLTEwLCAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS5wLTUsCisgICAgMHgxLnAtMTAsIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuZmZjMDBiZmQ4MDhiZTA4NzM2NTM2NDc0NDgyMjBmZGZwLTEsCisgICAgMHgxLjAwNDBwMCwgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAweDEuMDAxZmZlMDAzZmY2MDFiZmFjMTA3Y2E2YjI5YTBjMzFwMCwKKyAgICAweDEuMDA0MHAwLCAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLjAxYmQxZTc3MTcwYjQxNWU3NjI2NjIxZWI1YWFmZjYxcDAsCisgICAgMHgxLnAtMTAsIC0weDEucC0xMAorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDB4MS5mYzhiYzQ4NjZlOGFkMmI5NjNlMTgyOGIwNzYxY2JjNnAtMSwKKyAgICAweDEucC0xMCwgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEuZmZmZmUwMDQwMDU1MzU1ODQ0NDQzZGY4NjgwYThlMDVwLTEsCisgICAgMHgxLjAwNDBwMCwgLTB4MS5wLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLjAwMDAwZmZlMDBkNTI1NjI4NTM0MGU0ZjNhZDM2Mjg3cDAsCisgICAgMHgxLjAwNDBwMCwgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuMDAwMDAxMDAwMDAxMDAwMDAxMDAwMDAxMDAwMDAxcC0xMjgsCisgICAgMHgxLmZmZmZmZXAxMjcsIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwgLTB4MS5lNjY2NjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEuNWRiNGVjYWIzZTFjYjk0MmZjOTBhMDAzZTc3ZGEyODJwLTE0MiwKKyAgICAweDEucC0xNDksIDB4MS5lNjY2NjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwLTcsIDB4MS5mZmZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAtNywgMHgxLnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcC03LCAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAwLjBmLAorICAgIDB4MS5wLTYsIDB4MS5mZmZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDAuMGYsCisgICAgMHgxLnAtNiwgMHgxLnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgMC4wZiwKKyAgICAweDEucC02LCAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAwLjBmLAorICAgIDB4MS4wMDAwMDJwLTYsIDB4MS5mZmZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDAuMGYsCisgICAgMHgxLjAwMDAwMnAtNiwgMHgxLnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMC4wZiwKKyAgICAweDEuMDAwMDAycC02LCAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwLTYsIDB4MS5mZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAtNiwgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcC02LCAweDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAwLjBmLAorICAgIDB4MS5wLTUsIDB4MS5mZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDAuMGYsCisgICAgMHgxLnAtNSwgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMC4wZiwKKyAgICAweDEucC01LCAweDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAwLjBmLAorICAgIDB4MS4wMDAwMDJwLTUsIDB4MS5mZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDAuMGYsCisgICAgMHgxLjAwMDAwMnAtNSwgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMC4wZiwKKyAgICAweDEuMDAwMDAycC01LCAweDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEuMDAwMDFjNWM4Nzk4MjNlM2FmMzliYWEyMjFkZjg0YjBwLTY0LAorICAgIDB4MS5mZmZmZmVwLTUsIDB4MS5mZmZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIDB4MS5mZmZmZTAwMDAwZWZmZmZiYTAwMDBlMzdmZmRkZTBwLTY1LAorICAgIDB4MS5mZmZmZmVwLTUsIDB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS5mZmZmMmU4ZTEyOGYwN2Y4YWE5NWZiOGIzNWQ3MmVhNHAtNjUsCisgICAgMHgxLmZmZmZmZXAtNSwgMHgxLjAwMDAwMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLjAwMDAyYzVjODlkNWVjNmNhNGQ3YzhhY2MwMTdiN2M5cC02NCwKKyAgICAweDEucC00LCAweDEuZmZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEucC02NCwKKyAgICAweDEucC00LCAweDEucDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEuZmZmZjRlOGUwNmM3ZThhMmE4NGRhZWQ4ZWM1NmQ2YzNwLTY1LAorICAgIDB4MS5wLTQsIDB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS4wMDAwNGM1YzkxMjE3ZTAyYTQ1OTJiYTdhZDVkZjMyZXAtNjQsCisgICAgMHgxLjAwMDAwMnAtNCwgMHgxLmZmZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLjAwMDAyMDAwMDFlMDAwMTE4MDAwNzFjMDAyMjIwMDA3cC02NCwKKyAgICAweDEuMDAwMDAycC00LCAweDEucDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuZmZmZjhlOGRmNGQ5YTgzNTEzMjBjMDVkM2Q4MTRmOWZwLTY1LAorICAgIDB4MS4wMDAwMDJwLTQsIDB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS4wMDAwMDhhMmIyNjg4NGYxMDY4YjgxODg5NDY3ZDY3ZnAtMjQsCisgICAgMHgxLmZmZmZmZXAtNCwgMHgxLmZmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLmZmZmZmMDAwMDAzN2ZmZmY5MDAwMDA4YmZmZmY5MHAtMjUsCisgICAgMHgxLmZmZmZmZXAtNCwgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgMHgxLmZmZmZhZDc1M2Q4MjVkZmNkZDY1ZTRlYTU0Y2NjZWI1cC0yNSwKKyAgICAweDEuZmZmZmZlcC00LCAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuMDAwMDEwYTJiMmM5OWE4NTcwN2U4ZjEzZGM2NDg3MTBwLTI0LAorICAgIDB4MS5wLTMsIDB4MS5mZmZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS5wLTI0LAorICAgIDB4MS5wLTMsIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS5mZmZmYmQ3NTNiNTYwN2RhMmMyNjAwNjQ4MjNiMzBhN3AtMjUsCisgICAgMHgxLnAtMywgMHgxLjAwMDAwMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLjAwMDAyMGEyYjQzM2M1YjkxNzI5ZmUwNDkzMzIxZDNmcC0yNCwKKyAgICAweDEuMDAwMDAycC0zLCAweDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuMDAwMDEwMDAwMDcwMDAwMWMwMDAwNDYwMDAwN3AtMjQsCisgICAgMHgxLjAwMDAwMnAtMywgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLmZmZmZkZDc1Mzg0ZDViNzE1ZTk0Mzc2OTk1MzQ4ODNicC0yNSwKKyAgICAweDEuMDAwMDAycC0zLCAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuMDAwMDAxOGI5MGMyZjAyYTgwZjNiYjgyYWExMmU5NWRwLTgsCisgICAgMHgxLmZmZmZmZXAtMywgMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLmZmZmZmODAwMDAwYmZmZmZmODAwMDAwMnAtOSwKKyAgICAweDEuZmZmZmZlcC0zLCAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuZmZmZmUxZDFiZGQwYmRjNmI0NmVhNjRhNDJiMWJhZDJwLTksCisgICAgMHgxLmZmZmZmZXAtMywgMHgxLjAwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLjAwMDAwNThiOTBjZjFlNmQ5N2Y5Y2ExNGRiY2MxNjI4cC04LAorICAgIDB4MS5wLTIsIDB4MS5mZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIDB4MS5wLTgsCisgICAgMHgxLnAtMiwgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLmZmZmZlOWQxYmQ3YzA0YmM0ODI1MTQ3YThjMGU2M2UzcC05LAorICAgIDB4MS5wLTIsIDB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS4wMDAwMGQ4YjkxMGI3YWY0NTFhNjQyZTZkMGI2NmIwNnAtOCwKKyAgICAweDEuMDAwMDAycC0yLCAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuMDAwMDA4MDAwMDE4MDAwMDIwMDAwMDEwcC04LAorICAgIDB4MS4wMDAwMDJwLTIsIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIDB4MS5mZmZmZjlkMWJkMWE5MmE1ZDExMDg4ZWQxNzQxN2Y0MXAtOSwKKyAgICAweDEuMDAwMDAycC0yLCAweDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAweDEuZmZmZmZlYzVjODYyM2ZiMjVkN2QwNmFjNjFhMzA2M2ZwLTMsCisgICAgMHgxLmZmZmZmZXAtMiwgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgMHgxLmZmZmZmYzAwMDAwMnAtMywKKyAgICAweDEuZmZmZmZlcC0yLCAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuZmZmZmY2NzQ2ZjRkMDg4Mjg5Yjg4MGZlMDJhZGJmZGVwLTMsCisgICAgMHgxLmZmZmZmZXAtMiwgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLjAwMDAwMTYyZTQzMGU1YTE4ZjYxMTllM2MwMjI4MmE1cC0yLAorICAgIDB4MS5wLTEsIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIDB4MS5wLTIsCisgICAgMHgxLnAtMSwgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgMHgxLmZmZmZmYTc0NmY0N2YxNjBmY2Y4OTBlM2I4MDFhZWRkcC0zLAorICAgIDB4MS5wLTEsIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIDB4MS4wMDAwMDU2MmU0MzY3MTMyNDZmN2EwMTM0YzgyODdlYXAtMiwKKyAgICAweDEuMDAwMDAycC0xLCAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEuMDAwMDA0MDAwMDA0cC0yLAorICAgIDB4MS4wMDAwMDJwLTEsIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDB4MS4wMDAwMDEzYTM3YTRlMThmMDUxOWE2MDM5NTRhNWIwYnAtMiwKKyAgICAweDEuMDAwMDAycC0xLCAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEuZmZmZmZlMDAwMDAxZmZmZmZmMDAwMDAwYWFhYWFhODBwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLmZmZmZmZGZmZmZmYzAwMDAwMjAwMDAwNGFhYWFhYWZmcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIDB4MS5wMCwKKyAgICAweDEucDAsIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAweDEucDAsCisgICAgMHgxLnAwLCAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAweDEucDAsCisgICAgMHgxLnAwLCAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuMDAwMDAxZmZmZmZkZmZmZmZlMDAwMDAzNTU1NTUzZmZwMCwKKyAgICAweDEuMDAwMDAycDAsIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwLCAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuMDAwMDAyMDAwMDA0MDAwMDA0MDAwMDA1NTU1NTU4cDAsCisgICAgMHgxLjAwMDAwMnAwLCAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAweDEuNmEwOWU1MzU3NWIxMjM2MjVjYzE5NjhhNjY1NTgxYTRwMCwKKyAgICAweDEuZmZmZmZlcDAsIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuNmEwOWU1YjJlZWM5NjdjZDk3YjJlZmY3NWY0NzE0OTNwMCwKKyAgICAweDEuZmZmZmZlcDAsIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuNmEwOWU2YWRlMGZhNzMxOTA1MmM0OTQ4ZGVhNDhhNzZwMCwKKyAgICAweDEuZmZmZmZlcDAsIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuNmEwOWU1ZWE3YWEzOTBkYmY4NjhiNzI3OGI3NDQ4MjlwMCwKKyAgICAweDEucDEsIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKKyAgICAweDEucDEsIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuNmEwOWU3NjJlNWVmYmJkNzIxNzAxODI1MGEzYWIxOTRwMCwKKyAgICAweDEucDEsIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAweDEuNmEwOWU3NTQ4NDg3NWM0N2MzY2VlMDFkOWYzNDhiZDhwMCwKKyAgICAweDEuMDAwMDAycDEsIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEuNmEwOWU3ZDFmZGEyN2JmNzdkNDUyNzJkZDJkODNhNGJwMCwKKyAgICAweDEuMDAwMDAycDEsIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAweDEuNmEwOWU4Y2NlZmQ5M2RjYmVjZjU0ZDIzM2VhODI2NWJwMCwKKyAgICAweDEuMDAwMDAycDEsIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuNmEwOWU1OGZmODJhNGVjZWRiNzNmNzY2ZDNkMDc1OGRwMCwKKyAgICAweDEuZmZmZmZlcDEsIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAweDEuNmEwOWU2MGQ3MTQzMGQxYWQ2MWI0NWQ1ZDFhYmRmMTVwMCwKKyAgICAweDEuZmZmZmZlcDEsIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuNmEwOWU3MDg2Mzc1MGMyN2MzZGQ1YzBlY2RjZTUyNzFwMCwKKyAgICAweDEuZmZmZmZlcDEsIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAweDEuNmEwOWU1ZWE3YWEzOTBkYmY4NjhiNzI3OGI3NDQ4MjlwMCwKKyAgICAweDEucDIsIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKKyAgICAweDEucDIsIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAweDEuNmEwOWU3NjJlNWVmYmJkNzIxNzAxODI1MGEzYWIxOTRwMCwKKyAgICAweDEucDIsIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuNmEwOWU2OWY3Zjk1NDk1MGExZmNlMGExYjJjMzYyZDBwMCwKKyAgICAweDEuMDAwMDAycDIsIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAweDEuNmEwOWU3MWNmOGFmNzUzZWRiOTcwMGFkOTA2YzljZDlwMCwKKyAgICAweDEuMDAwMDAycDIsIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuNmEwOWU4MTdlYWU0NGY5MDQ5ZDUzMmNkYTJhOTBjYjZwMCwKKyAgICAweDEuMDAwMDAycDIsIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEuNGJmZGFjZDM5NzhhZGY5ZjNiNjRmZTAxZjQwNTkzYWVwMCwKKyAgICAweDEuZmZmZmZlcDIsIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEuNGJmZGFkMjllMmVjYjU0MDA1YTZkYmVjNjdjNWU0MTNwMCwKKyAgICAweDEuZmZmZmZlcDIsIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuNGJmZGFkZDY3OWIwYTNjYzQwZWNiNjBhZmRjNGE1NTJwMCwKKyAgICAweDEuZmZmZmZlcDIsIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAweDEuNGJmZGFjZmQxNzQwNjdlYTRkNDNmOGIwOWY5NzRkODZwMCwKKyAgICAweDEucDMsIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEuNGJmZGFkNTM2MmEyNzFkNDM5N2FmZWM0MmUyMGUwMzZwMCwKKyAgICAweDEucDMsIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEuNGJmZGFkZmZmOTY2YzhmMmI4ZjQ0YjEzN2ZiZmFhOTZwMCwKKyAgICAweDEucDMsIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEuNGJmZGFkNTAxNmFiMGI5MTM0ZTA1NzRhYmNhNzhiN2FwMCwKKyAgICAweDEuMDAwMDAycDMsIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAweDEuNGJmZGFkYTY2MjBkN2UwZDY0ODdmZDliZTY0ODg3YTNwMCwKKyAgICAweDEuMDAwMDAycDMsIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuNGJmZGFlNTJmOGQyYTY1MDZiNzRjZTIzMmZkY2QyOTFwMCwKKyAgICAweDEuMDAwMDAycDMsIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzAKKyAgICAweDEuMzA2ZmUwNWI1MzMxMzFjMjc2MTJjZmZmN2EwZmZkYjBwMCwKKyAgICAweDEuZmZmZmZlcDMsIDB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAweDEuMzA2ZmUwOTAxNDczM2ZjMThmMmE4ZTViYzhhMzBjZGNwMCwKKyAgICAweDEuZmZmZmZlcDMsIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuMzA2ZmUwZjk5NmY3NzcyYzlhOTRjMTYwODM0NDYyNjJwMCwKKyAgICAweDEuZmZmZmZlcDMsIDB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAweDEuMzA2ZmUwNmU1YTJmMmU4YzYyMGY3ZTU1Y2M4MDNkYmFwMCwKKyAgICAweDEucDQsIDB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAweDEuMzA2ZmUwYTMxYjcxNTJkZThkNWE0NjMwNWM4NWVkZWNwMCwKKyAgICAweDEucDQsIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAweDEuMzA2ZmUxMGM5ZGY1YjZlZmJkNDAwYjc4MDYwMDVmYTlwMCwKKyAgICAweDEucDQsIDB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAweDEuMzA2ZmUwOTQ2ODJhZjI5YzhmZTlmNzM1ZmIxYzQwODFwMCwKKyAgICAweDEuMDAwMDAycDQsIDB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAweDEuMzA2ZmUwYzkyOTZkNDM5NGRmNWY5OWI5YmQxYTQ3ZDJwMCwKKyAgICAweDEuMDAwMDAycDQsIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuMzA2ZmUxMzJhYmYyMDBmMjU3YzYxMmUwN2YxNDlhYTNwMCwKKyAgICAweDEuMDAwMDAycDQsIDB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzkKKyAgICAweDEuMWQ0ODcyZWViYjlkYTAzYmJhYzVhZjc5YjBjZjk0MDlwMCwKKyAgICAweDEuZmZmZmZlcDQsIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAweDEuMWQ0ODczMGRhMTU3MGE3YTg1ZWExZmMxZmNmODhmZGRwMCwKKyAgICAweDEuZmZmZmZlcDQsIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAweDEuMWQ0ODczNGI2Y2M5ZTkwMjE0OGZhZmNlZmE5ZWFhMDZwMCwKKyAgICAweDEuZmZmZmZlcDQsIDB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuMWQ0ODcyZjdhNWUxMzM2MDFlZjNiNDk1ZjNmODlhMTJwMCwKKyAgICAweDEucDUsIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAweDEuMWQ0ODczMTY4YjlhYTc4MDViODAyODk5MGYwN2E5OGJwMCwKKyAgICAweDEucDUsIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuMWQ0ODczNTQ1NzBkOTljYWNjZmJkYjdlMzVmZjBkZjFwMCwKKyAgICAweDEucDUsIDB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAweDEuMWQ0ODczMDk3YTY4M2ZjMDEzMDhkNGE3MTYxNWI4MjBwMCwKKyAgICAweDEuMDAwMDAycDUsIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAweDEuMWQ0ODczMjg2MDIxYzdhMzMyNDk2ZWU0YWQ5MWFkZTlwMCwKKyAgICAweDEuMDAwMDAycDUsIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuMWQ0ODczNjYyYjk0ZTE3MzY5MzlhNTAzZDgzYzVlNDJwMCwKKyAgICAweDEuMDAwMDAycDUsIDB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDgKKyAgICAweDEuMTEzMDFjZWIyMDU0MWZmM2Y2NTVlM2JkMTIyNzFiM2VwMCwKKyAgICAweDEuZmZmZmZlcDUsIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAweDEuMTEzMDFjZmNlMGY0OTQzMDRlNjMwNzk5ZmM4YjE4MWZwMCwKKyAgICAweDEuZmZmZmZlcDUsIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAweDEuMTEzMDFkMjA2MjM1ODAxZWY1NTgwODk0MzU0ZjkwMGNwMCwKKyAgICAweDEuZmZmZmZlcDUsIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAweDEuMTEzMDFjZWY2NTE0OTE4NmEwZWNiNjA3MTM1NjViNDVwMCwKKyAgICAweDEucDYsIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTIKKyAgICAweDEuMTEzMDFkMDEyNWI1MGE0ZWJiZjFhZWQ5MzE4Y2VhYzVwMCwKKyAgICAweDEucDYsIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAweDEuMTEzMDFkMjRhNmY1ZmY1NGU4ZDgxMWE0Yjk3OGI1NGZwMCwKKyAgICAweDEucDYsIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuMTEzMDFjZjdlZTk1NjgxMGVkZDk0ZDFjNzY5N2YzNGJwMCwKKyAgICAweDEuMDAwMDAycDYsIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAweDEuMTEzMDFkMDlhZjM1ZTlmMDhlYzBiNjU2NGNmZDRkM2FwMCwKKyAgICAweDEuMDAwMDAycDYsIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAweDEuMTEzMDFkMmQzMDc2ZjEyNWM3NmY2OWJmMTA3ZjQwNTJwMCwKKyAgICAweDEuMDAwMDAycDYsIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAweDEuZmZmYzlkMWVhZmYxZTJiYzcwOGZiYjlmYzE0MWQxODZwMTI3LAorICAgIDB4MS5mZmZmZmNwMCwgMHgxLmZmZmZmY3A2CisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgMHgxLmZmZmQ0ZThmYjgzOTMzY2JmNWY4MjdlMjU4MWYyMGRjcDEyNywKKyAgICAweDEuZmZmZmZjcDAsIDB4MS5mZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIDB4MS5mZmZlMDAwMGZkZmZhY2E4MTQ1OGY4MGVjMzAxYTJjOHAxMjcsCisgICAgMHgxLmZmZmZmY3AwLCAweDEucDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAweDEuZmZmZjYyZTQ0MjBhNmIwNmQ3MDJmNGUyYWFmZmE0ZTVwMTI3LAorICAgIDB4MS5mZmZmZmNwMCwgMHgxLjAwMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMzYxCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwMCwgMHgxLjAwMDAwNHA3CisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgMHgxLmZmZmQ5ZDFkM2UwMGQ5OWJkZmUzNjE5ZjA1ZjJlY2MxcDEyNywKKyAgICAweDEuZmZmZmZlcDAsIDB4MS5mZmZmZmNwNgorICB9LAorICB7IC8vIEVudHJ5IDM2MworICAgIDB4MS5mZmZlNGU4ZWEwMDBjM2Y5OWQ4NGQ4ODZjMDM4MTFmYXAxMjcsCisgICAgMHgxLmZmZmZmZXAwLCAweDEuZmZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEuZmZmZjAwMDAzZjdmZjU5NTAxNDU4ZmEwNzYxNTg2OGJwMTI3LAorICAgIDB4MS5mZmZmZmVwMCwgMHgxLnA3CisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMCwgMHgxLjAwMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMCwgMHgxLjAwMDAwNHA3CisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgMHgxLmZmZmU5ZDFjNGIwZjM3ZjQxM2Q0NGM2NmMwNDgxODM0cDEyNywKKyAgICAweDEucDEsIDB4MS5mZmZmZmNwNgorICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS5mZmZmNGU4ZTA2YzdlOGEyYTg0ZGFlZDhlYzU2ZDZjM3AxMjcsCisgICAgMHgxLnAxLCAweDEuZmZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAxLCAweDEucDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzAKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAxLCAweDEuMDAwMDAycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAxLCAweDEuMDAwMDA0cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLjAwMDAwMnAxLCAweDEuZmZmZmZjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzMKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLjAwMDAwMnAxLCAweDEuZmZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLjAwMDAwMnAxLCAweDEucDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzUKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLjAwMDAwMnAxLCAweDEuMDAwMDAycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzYKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLjAwMDAwMnAxLCAweDEuMDAwMDA0cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLjAwMDAwNHAxLCAweDEuZmZmZmZjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzgKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLjAwMDAwNHAxLCAweDEuZmZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLjAwMDAwNHAxLCAweDEucDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODAKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLjAwMDAwNHAxLCAweDEuMDAwMDAycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODEKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLjAwMDAwNHAxLCAweDEuMDAwMDA0cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODIKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmNwMCwgLTB4MS4yYzAwMDRwNworICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIDAuMGYsCisgICAgMHgxLmZmZmZmY3AwLCAtMHgxLjJjMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcDAsIC0weDEuMmNwNworICB9LAorICB7IC8vIEVudHJ5IDM4NQorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmY3AwLCAtMHgxLjJiZmZmZXA3CisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcDAsIC0weDEuMmJmZmZjcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODcKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMCwgLTB4MS4yYzAwMDRwNworICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAwLCAtMHgxLjJjMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMzg5CisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDAsIC0weDEuMmNwNworICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAwLCAtMHgxLjJiZmZmZXA3CisgIH0sCisgIHsgLy8gRW50cnkgMzkxCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDAsIC0weDEuMmJmZmZjcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAwLjBmLAorICAgIDB4MS5wMSwgLTB4MS4yYzAwMDRwNworICB9LAorICB7IC8vIEVudHJ5IDM5MworICAgIDAuMGYsCisgICAgMHgxLnAxLCAtMHgxLjJjMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMzk0CisgICAgMC4wZiwKKyAgICAweDEucDEsIC0weDEuMmNwNworICB9LAorICB7IC8vIEVudHJ5IDM5NQorICAgIDAuMGYsCisgICAgMHgxLnAxLCAtMHgxLjJiZmZmZXA3CisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgMC4wZiwKKyAgICAweDEucDEsIC0weDEuMmJmZmZjcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAwLjBmLAorICAgIDB4MS4wMDAwMDJwMSwgLTB4MS4yYzAwMDRwNworICB9LAorICB7IC8vIEVudHJ5IDM5OAorICAgIDAuMGYsCisgICAgMHgxLjAwMDAwMnAxLCAtMHgxLjJjMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgMC4wZiwKKyAgICAweDEuMDAwMDAycDEsIC0weDEuMmNwNworICB9LAorICB7IC8vIEVudHJ5IDQwMAorICAgIDAuMGYsCisgICAgMHgxLjAwMDAwMnAxLCAtMHgxLjJiZmZmZXA3CisgIH0sCisgIHsgLy8gRW50cnkgNDAxCisgICAgMC4wZiwKKyAgICAweDEuMDAwMDAycDEsIC0weDEuMmJmZmZjcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDIKKyAgICAwLjBmLAorICAgIDB4MS4wMDAwMDRwMSwgLTB4MS4yYzAwMDRwNworICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIDAuMGYsCisgICAgMHgxLjAwMDAwNHAxLCAtMHgxLjJjMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgNDA0CisgICAgMC4wZiwKKyAgICAweDEuMDAwMDA0cDEsIC0weDEuMmNwNworICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIDAuMGYsCisgICAgMHgxLjAwMDAwNHAxLCAtMHgxLjJiZmZmZXA3CisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgMC4wZiwKKyAgICAweDEuMDAwMDA0cDEsIC0weDEuMmJmZmZjcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICAwLjBmLAorICAgIDB4MS5kYjZkYjJwLTIsIDB4MS5jMzBjMmNwOAorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIDAuMGYsCisgICAgMHgxLmRiNmRiMnAtMiwgMHgxLmMzMGMyZXA4CisgIH0sCisgIHsgLy8gRW50cnkgNDA5CisgICAgMC4wZiwKKyAgICAweDEuZGI2ZGIycC0yLCAweDEuYzMwYzMwcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAwLjBmLAorICAgIDB4MS5kYjZkYjJwLTIsIDB4MS5jMzBjMzJwOAorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIDAuMGYsCisgICAgMHgxLmRiNmRiMnAtMiwgMHgxLmMzMGMzNHA4CisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMC4wZiwKKyAgICAweDEuZGI2ZGI0cC0yLCAweDEuYzMwYzJjcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTMKKyAgICAwLjBmLAorICAgIDB4MS5kYjZkYjRwLTIsIDB4MS5jMzBjMmVwOAorICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIDAuMGYsCisgICAgMHgxLmRiNmRiNHAtMiwgMHgxLmMzMGMzMHA4CisgIH0sCisgIHsgLy8gRW50cnkgNDE1CisgICAgMC4wZiwKKyAgICAweDEuZGI2ZGI0cC0yLCAweDEuYzMwYzMycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAwLjBmLAorICAgIDB4MS5kYjZkYjRwLTIsIDB4MS5jMzBjMzRwOAorICB9LAorICB7IC8vIEVudHJ5IDQxNworICAgIDAuMGYsCisgICAgMHgxLmRiNmRiNnAtMiwgMHgxLmMzMGMyY3A4CisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgMC4wZiwKKyAgICAweDEuZGI2ZGI2cC0yLCAweDEuYzMwYzJlcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTkKKyAgICAwLjBmLAorICAgIDB4MS5kYjZkYjZwLTIsIDB4MS5jMzBjMzBwOAorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIDAuMGYsCisgICAgMHgxLmRiNmRiNnAtMiwgMHgxLmMzMGMzMnA4CisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgMC4wZiwKKyAgICAweDEuZGI2ZGI2cC0yLCAweDEuYzMwYzM0cDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAwLjBmLAorICAgIDB4MS5kYjZkYjhwLTIsIDB4MS5jMzBjMmNwOAorICB9LAorICB7IC8vIEVudHJ5IDQyMworICAgIDAuMGYsCisgICAgMHgxLmRiNmRiOHAtMiwgMHgxLmMzMGMyZXA4CisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgMC4wZiwKKyAgICAweDEuZGI2ZGI4cC0yLCAweDEuYzMwYzMwcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAwLjBmLAorICAgIDB4MS5kYjZkYjhwLTIsIDB4MS5jMzBjMzJwOAorICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIDAuMGYsCisgICAgMHgxLmRiNmRiOHAtMiwgMHgxLmMzMGMzNHA4CisgIH0sCisgIHsgLy8gRW50cnkgNDI3CisgICAgMC4wZiwKKyAgICAweDEuZGI2ZGJhcC0yLCAweDEuYzMwYzJjcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAwLjBmLAorICAgIDB4MS5kYjZkYmFwLTIsIDB4MS5jMzBjMmVwOAorICB9LAorICB7IC8vIEVudHJ5IDQyOQorICAgIDAuMGYsCisgICAgMHgxLmRiNmRiYXAtMiwgMHgxLmMzMGMzMHA4CisgIH0sCisgIHsgLy8gRW50cnkgNDMwCisgICAgMC4wZiwKKyAgICAweDEuZGI2ZGJhcC0yLCAweDEuYzMwYzMycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAwLjBmLAorICAgIDB4MS5kYjZkYmFwLTIsIDB4MS5jMzBjMzRwOAorICB9LAorICB7IC8vIEVudHJ5IDQzMgorICAgIC0weDEuZmZmZmZjMDAwMDA3ZmZmZmYwMDAwMDFmZmZmZmMwcC0xLAorICAgIC0weDEuMDAwMDAycDAsIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzMKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAsIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzQKKyAgICAtMHgxLjAwMDAwMTAwMDAwMTAwMDAwMTAwMDAwMTAwMDAwMXAwLAorICAgIC0weDEuZmZmZmZlcC0xLCAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDM1CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wMSwgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucDIsIDB4MS5wOQorICB9LAorICB7IC8vIEVudHJ5IDQzNworICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAtMiwgMHgxLmZmZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcC0yLCAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcC0yLCAweDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDQwCisgICAgMC4wZiwKKyAgICAweDEucC0xLCAweDEuZmZmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDEKKyAgICAwLjBmLAorICAgIDB4MS5wLTEsIDB4MS5wMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDIKKyAgICAwLjBmLAorICAgIDB4MS5wLTEsIDB4MS4wMDAwMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDMKKyAgICAwLjBmLAorICAgIDB4MS4wMDAwMDJwLTEsIDB4MS5mZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDQ0NAorICAgIDAuMGYsCisgICAgMHgxLjAwMDAwMnAtMSwgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NQorICAgIDAuMGYsCisgICAgMHgxLjAwMDAwMnAtMSwgMHgxLjAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIDB4MS4wMDAyMDQ2NzEwOTU0NzU3MmZhOGYzZjY1M2VkYTU0OHAtMTQ5LAorICAgIDB4MS5wLTE0OSwgMHgxLmZmZmZmNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0NworICAgIDB4MS4wMDAxOWQxZWVkMjFmNDQ4ZjJjNjIxN2VhYjNkOWM1NXAtMTQ5LAorICAgIDB4MS5wLTE0OSwgMHgxLmZmZmZmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIDB4MS4wMDAxMzVkNmYzNTk2ZTA4NmQ0NjMzNzZhOWRiZDFlMnAtMTQ5LAorICAgIDB4MS5wLTE0OSwgMHgxLmZmZmZmYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIDB4MS4wMDAwY2U4ZjIzM2JhM2M2NGFkYzU2NjdhN2IwYjI0NXAtMTQ5LAorICAgIDB4MS5wLTE0OSwgMHgxLmZmZmZmY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIDB4MS4wMDAwNjc0NzdjYzg4NGIzM2UwM2QwYmI3NzU3MTE1MHAtMTQ5LAorICAgIDB4MS5wLTE0OSwgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1MQorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MgorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LCAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTMKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OSwgMHgxLjAwMDAwNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgMC4wZiwKKyAgICAweDEucC0xNDksIDB4MS4wMDAwMDZwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NQorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LCAweDEuMDAwMDA4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OSwgMHgxLjAwMDAwYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDU3CisgICAgMHgxLjAwMDIwMGVmY2YyNWJhYjFjN2NkMjI4MjczNDFhYjYzcC0xNDgsCisgICAgMHgxLnAtMTQ4LCAweDEuZmZmZmY2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgMHgxLjAwMDE5YTU5MjA0YzgyZmUwNjBjZjZkMzIwZjE1NDMzcC0xNDgsCisgICAgMHgxLnAtMTQ4LCAweDEuZmZmZmY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgMHgxLjAwMDEzM2MyOWE4ZjY0ZjIwNGRhMTNiNzJlYmM1NmVkcC0xNDgsCisgICAgMHgxLnAtMTQ4LCAweDEuZmZmZmZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgMHgxLjAwMDBjZDJjM2RlZTUwMTQ4MDcyOTUwNjU5M2ZkNjhicC0xNDgsCisgICAgMHgxLnAtMTQ4LCAweDEuZmZmZmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgMHgxLjAwMDA2Njk2MGE2OTMzZWMzYmFlOGNhYjljY2ZkNTQzcC0xNDgsCisgICAgMHgxLnAtMTQ4LCAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDYyCisgICAgMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OCwgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDYzCisgICAgMHgxLmZmZmU2NWE4Y2QwMjFkZWRkNTVhNDBjMjcyZGM4YWNhcC0xNDksCisgICAgMHgxLnAtMTQ4LCAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjQKKyAgICAweDEuZmZmY2NiNTJlMmUxZjI2MDIwMjE4MjBhYjQ3MDM2ZmVwLTE0OSwKKyAgICAweDEucC0xNDgsIDB4MS4wMDAwMDRwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2NQorICAgIDB4MS5mZmZiMzBmZTQxOWU3NWM1NTJjMDc0Yjc1ZTllMTMyZHAtMTQ5LAorICAgIDB4MS5wLTE0OCwgMHgxLjAwMDAwNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgMHgxLmZmZjk5NmFhZTkzNmEwOGNiMmRlM2I4MzEzMjY4MzZjcC0xNDksCisgICAgMHgxLnAtMTQ4LCAweDEuMDAwMDA4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjcKKyAgICAweDEuZmZmN2ZjNThkOWE5NmIyNjU5NWRjMWI5MWFhYjEwNjVwLTE0OSwKKyAgICAweDEucC0xNDgsIDB4MS4wMDAwMGFwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIDB4MS44MDAyZmU1ZDMyNmUxOTEwZGNmNWFkYWRjNGZiODBiYXAtMTQ4LAorICAgIDB4MS44MHAtMTQ4LCAweDEuZmZmZmY2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDY5CisgICAgMHgxLjgwMDI2NTE2ZTEzMDQxMGNiYzM0ZDZiZTFmMzE0YWYzcC0xNDgsCisgICAgMHgxLjgwcC0xNDgsIDB4MS5mZmZmZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzAKKyAgICAweDEuODAwMWNiZDBjZDIwMDQ4ZGMwMDQxYWFlNjg1M2Y0MTRwLTE0OCwKKyAgICAweDEuODBwLTE0OCwgMHgxLmZmZmZmYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3MQorICAgIDB4MS44MDAxMzI4YWY2M2Q0YjI4YjkzYmFjMTY4ZDMyMzc3NnAtMTQ4LAorICAgIDB4MS44MHAtMTQ4LCAweDEuZmZmZmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgMHgxLjgwMDA5OTQ1NWM4N2ZjNzI4MjcyZDc5OTNjM2MwZWQycC0xNDgsCisgICAgMHgxLjgwcC0xNDgsIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzMKKyAgICAweDEuODBwLTE0OCwKKyAgICAweDEuODBwLTE0OCwgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDc0CisgICAgMHgxLjdmZmVjZDc1ZmU3NzljMzlkYTMxMmEwYWU2NTc1YWFlcC0xNDgsCisgICAgMHgxLjgwcC0xNDgsIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3NQorICAgIDB4MS43ZmZkOWFlY2YxYTM1YzdlMmQ2ZjY3YjkxNzdiOGJjOHAtMTQ4LAorICAgIDB4MS44MHAtMTQ4LCAweDEuMDAwMDA0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAweDEuN2ZmYzY4NjRkOTgyN2Q3NTdiNGI2MDAxZDBjODBhOWJwLTE0OCwKKyAgICAweDEuODBwLTE0OCwgMHgxLjAwMDAwNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDc3CisgICAgMHgxLjdmZmIzNWRkYjYxNDNiYzhlMTQ1YTZkNjE2YTFiNTUxcC0xNDgsCisgICAgMHgxLjgwcC0xNDgsIDB4MS4wMDAwMDhwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3OAorICAgIDB4MS43ZmZhMDM1Nzg3NTdkNDIyMThjZTQwYTU3OGM3NDQ3NnAtMTQ4LAorICAgIDB4MS44MHAtMTQ4LCAweDEuMDAwMDBhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzkKKyAgICAweDEuMDAwMDAwYTBjZjY1ZWIxODE3YTcwOTVkOWEwNDQzYTdwMCwKKyAgICAweDEucC0yOSwgLTB4MS5wLTI5CisgIH0sCisgIHsgLy8gRW50cnkgNDgwCisgICAgMHgxLmZmZmZmZjVmMzA5YTYwYWFkNWMyMzA5ZjgxZjkwZGVmcC0xLAorICAgIDB4MS5wLTI5LCAweDEucC0zMAorICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIDB4MS5mZmZmZmQ5ZTA3Y2YwNzc2N2E1NWFmYmU5YWNhZTkzZXAtMSwKKyAgICAweDEucDU1LCAtMHgxLnAtMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODIKKyAgICAweDEuMDAwMDAwOTg3ZTBjYzY2MzQ0ZDg5YjQ5NGUxZjQzYjNwMCwKKyAgICAweDEucDU1LCAweDEucC0zMAorICB9LAorICB7IC8vIEVudHJ5IDQ4MworICAgIDB4MS5mZmZmZmQ2Njk0MjdjZjE1OTUxNTg3Mzg4N2MxN2NmMnAtMSwKKyAgICAweDEucDYwLCAtMHgxLnAtMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODQKKyAgICAweDEuMDAwMDAwYTY1YWY2YWU2MWJlODhlYTI1NTg3OTBjZDdwMCwKKyAgICAweDEucDYwLCAweDEucC0zMAorICB9LAorICB7IC8vIEVudHJ5IDQ4NQorICAgIDB4MS5mZmMwMDNmZmI1NWFhYTRjZDM0ZjM0MzFlYTViNzdmMXAtMSwKKyAgICAweDEuZmZmZmZlcC0xLCAweDEucDEzCisgIH0sCisgIHsgLy8gRW50cnkgNDg2CisgICAgMHgxLmZlMDBmZmE5YzBmYjNiZjI4YzhhOWIyYjNkMmQ3ZGFhcC0xLAorICAgIDB4MS5mZmZmZmVwLTEsIDB4MS5wMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODcKKyAgICAweDEucDAsCisgICAgMHgxLnAwLCAweDEucDEzCisgIH0sCisgIHsgLy8gRW50cnkgNDg4CisgICAgMHgxLnAwLAorICAgIDB4MS5wMCwgMHgxLnAxNgorICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIDB4MS4wMDQwMDgwMDZhYTU1NDMzMmI4ZmVkMDlkOGVkMjlmM3AwLAorICAgIDB4MS4wMDAwMDJwMCwgMHgxLnAxMworICB9LAorICB7IC8vIEVudHJ5IDQ5MAorICAgIDB4MS4wMjAyMDE1M2ZjNDA1YjEyM2IzM2E3M2NiOTNhMzY0OHAwLAorICAgIDB4MS4wMDAwMDJwMCwgMHgxLnAxNgorICB9LAorICB7IC8vIEVudHJ5IDQ5MQorICAgIDB4MS4yYzE1NjAzMjY5NDA3MDA2YjhmMzVlOGU0ZjE0OTdiYXAtNiwKKyAgICAtMHgxLjAwMDAwMnAwLCAtMHgxLnAyNQorICB9LAorICB7IC8vIEVudHJ5IDQ5MgorICAgIDB4MS5jODQ2ODg3ZWUzNzljNWFmNjM3YzczNDlhZmM5ZjY5OXAtNDcsCisgICAgLTB4MS4wMDAwMDJwMCwgLTB4MS5wMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICAweDEucDAsCisgICAgLTB4MS5wMCwgLTB4MS5wMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTQKKyAgICAweDEucDAsCisgICAgLTB4MS5wMCwgLTB4MS5wMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTUKKyAgICAweDEuZDhlNjRkNjYzNDI4OTFjODZmYjNjODdkMWVkNmQ1YzVwMiwKKyAgICAtMHgxLmZmZmZmZXAtMSwgLTB4MS5wMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTYKKyAgICAweDEuMGYyZWM1ODNmNjExZTRiOGZjMWNjN2I1MGVmYmI3MzhwMjMsCisgICAgLTB4MS5mZmZmZmVwLTEsIC0weDEucDI4CisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgMHgxLmQ4ZTY0ZDY2MzQyODkxYzg2ZmIzYzg3ZDFlZDZkNWM1cDIsCisgICAgMHgxLmZmZmZmZXAtMSwgLTB4MS5wMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTgKKyAgICAweDEuMGYyZWM1ODNmNjExZTRiOGZjMWNjN2I1MGVmYmI3MzhwMjMsCisgICAgMHgxLmZmZmZmZXAtMSwgLTB4MS5wMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTkKKyAgICAweDEucDAsCisgICAgMHgxLnAwLCAtMHgxLnAyNQorICB9LAorICB7IC8vIEVudHJ5IDUwMAorICAgIDB4MS5wMCwKKyAgICAweDEucDAsIC0weDEucDI4CisgIH0sCisgIHsgLy8gRW50cnkgNTAxCisgICAgMHgxLjJjMTU2MDMyNjk0MDcwMDZiOGYzNWU4ZTRmMTQ5N2JhcC02LAorICAgIDB4MS4wMDAwMDJwMCwgLTB4MS5wMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDIKKyAgICAweDEuYzg0Njg4N2VlMzc5YzVhZjYzN2M3MzQ5YWZjOWY2OTlwLTQ3LAorICAgIDB4MS4wMDAwMDJwMCwgLTB4MS5wMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wMTUsIDB4MS5wNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZiwgLTB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTA1CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMC4wZiwgLTB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTA2CisgICAgSFVHRV9WQUxGLAorICAgIDAuMGYsIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmLCAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgSFVHRV9WQUxGLAorICAgIDAuMGYsIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDUwOQorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmLCAtMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTAKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZiwgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDUxMQorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmLCAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTEyCisgICAgSFVHRV9WQUxGLAorICAgIDAuMGYsIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTEzCisgICAgSFVHRV9WQUxGLAorICAgIDAuMGYsIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTQKKyAgICBIVUdFX1ZBTEYsCisgICAgMC4wZiwgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZiwgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgSFVHRV9WQUxGLAorICAgIC0wLjBmLCAtMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTcKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYsIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYsIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYsIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgSFVHRV9WQUxGLAorICAgIC0wLjBmLCAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTIxCisgICAgSFVHRV9WQUxGLAorICAgIC0wLjBmLCAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNTIyCisgICAgSFVHRV9WQUxGLAorICAgIDAuMGYsIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjMKKyAgICBIVUdFX1ZBTEYsCisgICAgLTAuMGYsIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjQKKyAgICAwLjAsCisgICAgMC4wZiwgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAtMC4wLAorICAgIC0wLjBmLCAweDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDUyNgorICAgIDAuMCwKKyAgICAwLjBmLCAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjcKKyAgICAtMC4wLAorICAgIC0wLjBmLCAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjgKKyAgICAwLjAsCisgICAgMC4wZiwgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNTI5CisgICAgMC4wLAorICAgIDAuMGYsIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTMwCisgICAgMC4wLAorICAgIDAuMGYsIDB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNTMxCisgICAgMC4wLAorICAgIDAuMGYsIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIDAuMCwKKyAgICAwLjBmLCAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzMKKyAgICAwLjAsCisgICAgMC4wZiwgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDUzNAorICAgIDAuMCwKKyAgICAwLjBmLCAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAwLjAsCisgICAgMC4wZiwgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNTM2CisgICAgMC4wLAorICAgIC0wLjBmLCBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzcKKyAgICAwLjAsCisgICAgLTAuMGYsIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgMC4wLAorICAgIC0wLjBmLCAweDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDUzOQorICAgIDAuMCwKKyAgICAtMC4wZiwgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgMC4wLAorICAgIC0wLjBmLCAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDEKKyAgICAwLjAsCisgICAgLTAuMGYsIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAwLjAsCisgICAgLTAuMGYsIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDU0MworICAgIDAuMCwKKyAgICAtMC4wZiwgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNTQ0CisgICAgMHgxLnAwLAorICAgIC0weDEucDAsIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDU0NQorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAwLCAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgMHgxLnAwLAorICAgIDB4MS5wMCwgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNTQ3CisgICAgMHgxLnAwLAorICAgIDB4MS5wMCwgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIDB4MS5wMCwKKyAgICAweDEucDAsIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTQ5CisgICAgMHgxLnAwLAorICAgIDB4MS5wMCwgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTUwCisgICAgMHgxLnAwLAorICAgIC0weDEucDAsIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTUxCisgICAgMHgxLnAwLAorICAgIC0weDEucDAsIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDU1MgorICAgIDB4MS5wMCwKKyAgICAweDEucDAsIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTMKKyAgICAweDEucDAsCisgICAgMHgxLnAwLCAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS5wMCwKKyAgICAweDEucDAsIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDU1NQorICAgIDB4MS5wMCwKKyAgICAweDEucDAsIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTYKKyAgICAweDEucDAsCisgICAgMHgxLnAwLCAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTcKKyAgICAweDEucDAsCisgICAgMHgxLnAwLCAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTU4CisgICAgMHgxLnAwLAorICAgIDB4MS5wMCwgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNTU5CisgICAgMHgxLnAwLAorICAgIDB4MS5wMCwgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDB4MS5wMCwKKyAgICAweDEucDAsIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjEKKyAgICAweDEucDAsCisgICAgMHgxLnAwLCAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDU2MgorICAgIDB4MS5wMCwKKyAgICBIVUdFX1ZBTEYsIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjMKKyAgICAweDEucDAsCisgICAgSFVHRV9WQUxGLCAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDU2NAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcDEyNywgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDU2NQorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcDEyNywgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjYKKyAgICAweDEucDAsCisgICAgMHgxLnAtMTI2LCAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNTY3CisgICAgMHgxLnAwLAorICAgIDB4MS5wLTEyNiwgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjgKKyAgICAweDEucDAsCisgICAgMHgxLnAtMTQ5LCAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNTY5CisgICAgMHgxLnAwLAorICAgIDB4MS5wLTE0OSwgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzAKKyAgICAweDEucDAsCisgICAgMC4wZiwgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIDB4MS5wMCwKKyAgICAwLjBmLCAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIDB4MS5wMCwKKyAgICAtMC4wZiwgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDU3MworICAgIDB4MS5wMCwKKyAgICAtMC4wZiwgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzQKKyAgICAweDEucDAsCisgICAgLTB4MS5wLTE0OSwgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDU3NQorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAtMTQ5LCAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDU3NgorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAtMTI2LCAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNTc3CisgICAgMHgxLnAwLAorICAgIC0weDEucC0xMjYsIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNTc4CisgICAgMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcDEyNywgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDU3OQorICAgIDB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNTgwCisgICAgMHgxLnAwLAorICAgIC1IVUdFX1ZBTEYsIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODEKKyAgICAweDEucDAsCisgICAgLUhVR0VfVkFMRiwgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODIKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LCAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNTgzCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDU4NAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LCAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNTg1CisgICAgSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODYKKyAgICAwLjAsCisgICAgSFVHRV9WQUxGLCAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNTg3CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LCAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNTg4CisgICAgMC4wLAorICAgIDB4MS44MHAwLCAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNTg5CisgICAgMC4wLAorICAgIC0weDEuODBwMCwgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDU5MAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTEKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMRiwgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDU5MgorICAgIDAuMCwKKyAgICAweDEucC0xMjYsIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDU5MworICAgIDAuMCwKKyAgICAweDEucC0xNDksIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDU5NAorICAgIDAuMCwKKyAgICAwLjBmLCBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTUKKyAgICAwLjAsCisgICAgLTAuMGYsIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDU5NgorICAgIDAuMCwKKyAgICAtMHgxLnAtMTQ5LCBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAwLjAsCisgICAgLTB4MS5wLTEyNiwgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNTk4CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNTk5CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LCBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDAKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLjgwcDAsIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDYwMQorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLjgwcDAsIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDYwMgorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDYwMworICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLCBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDQKKyAgICAtMC4wLAorICAgIC1IVUdFX1ZBTEYsIC0weDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDYwNQorICAgIC0wLjAsCisgICAgLUhVR0VfVkFMRiwgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDYwNgorICAgIDAuMCwKKyAgICAtSFVHRV9WQUxGLCAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNjA3CisgICAgMC4wLAorICAgIC1IVUdFX1ZBTEYsIC0weDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDgKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMRiwgLTB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDYwOQorICAgIDAuMCwKKyAgICAtSFVHRV9WQUxGLCAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTAKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMRiwgLTB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjExCisgICAgMC4wLAorICAgIC1IVUdFX1ZBTEYsIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTIKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMRiwgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDYxMworICAgIDAuMCwKKyAgICAtSFVHRV9WQUxGLCAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNjE0CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLCAweDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDYxNQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwgMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTYKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNjE3CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDYxOAorICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLCAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTkKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjAKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwgMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICBIVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjIyCisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDYyMworICAgIEhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLCAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjQKKyAgICAwLjAsCisgICAgSFVHRV9WQUxGLCAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNjI1CisgICAgMC4wLAorICAgIEhVR0VfVkFMRiwgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDYyNgorICAgIDAuMCwKKyAgICBIVUdFX1ZBTEYsIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDYyNworICAgIDAuMCwKKyAgICBIVUdFX1ZBTEYsIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjgKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLCBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjkKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLCAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDYzMAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDYzMQorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDYzMgorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzMKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNiwgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjM0CisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2LCAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzUKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OSwgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjM2CisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5LCAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzcKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLCAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjM4CisgICAgMHgxLmZmZmZmZWZmZmZmZmJmZmZmZmRmZmZmZmViZmZmZmYxcDYzLAorICAgIDB4MS5mZmZmZmVwMTI3LCAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjM5CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xLAorICAgIDB4MS5wLTEsIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDAKKyAgICAweDEucC02MywKKyAgICAweDEucC0xMjYsIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDEKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTc1LAorICAgIDB4MS5wLTE0OSwgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIDAuMCwKKyAgICAwLjBmLCAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQzCisgICAgMC4wLAorICAgIC0wLjBmLCAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQ0CisgICAgSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDUKKyAgICAwLjAsCisgICAgSFVHRV9WQUxGLCAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY0NgorICAgIDB4MS4wMDAwMDA4MDAwMDA2MDAwMDA1MDAwMDA0NjAwMDAzZnAtNjQsCisgICAgMHgxLmZmZmZmZXAxMjcsIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQ3CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgMHgxLnAtMSwgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDgKKyAgICAweDEucDYzLAorICAgIDB4MS5wLTEyNiwgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDkKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwNzQsCisgICAgMHgxLnAtMTQ5LCAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmLCAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY1MQorICAgIEhVR0VfVkFMRiwKKyAgICAtMC4wZiwgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTIKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMRiwgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTMKKyAgICAwLjAsCisgICAgMHgxLnAtMSwgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNjU0CisgICAgMC4wZiwKKyAgICAweDEucC0xLCAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDY1NQorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtMSwKKyAgICAweDEucC0xLCAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjU2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZhcC0xLAorICAgIDB4MS5wLTEsIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDY1NworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEucC0xLCAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAweDEucDAsCisgICAgMHgxLnAtMSwgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDY1OQorICAgIDB4MS5wMCwKKyAgICAweDEucC0xLCAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDY2MAorICAgIDB4MS5wMCwKKyAgICAweDEucC0xLCAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNjYxCisgICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAycDAsCisgICAgMHgxLnAtMSwgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDY2MgorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAwLAorICAgIDB4MS5wLTEsIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjYzCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTEsIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDY2NAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xLCAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNjY1CisgICAgMC4wLAorICAgIC0weDEucC0xLCBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjYKKyAgICAwLjBmLAorICAgIC0weDEucC0xLCAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDY2NworICAgIDB4MS5wMCwKKyAgICAtMHgxLnAtMSwgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDY2OAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAtMSwgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjkKKyAgICBIVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEsIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDY3MAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMSwgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDY3MQorICAgIDB4MS5wMSwKKyAgICAweDEucDIsIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzIKKyAgICAweDEuODBwMSwKKyAgICAweDEuMjBwMywgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY3MworICAgIDB4MS5wMiwKKyAgICAweDEucDQsIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzQKKyAgICAweDEucC0xLAorICAgIDB4MS5wMiwgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzUKKyAgICAweDEucC0yLAorICAgIDB4MS5wNCwgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzYKKyAgICAweDEucC0zLAorICAgIDB4MS5wNiwgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzcKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAtMSwgLTB4MS43NDkxMGNwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzgKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwLTEsIDB4MS43NDkxMGNwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzkKKyAgICAweDEucDIsCisgICAgMHgxLnAxLCAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODAKKyAgICAweDEucC0yLAorICAgIDB4MS5wMSwgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDY4MQorICAgIDB4MS5wMiwKKyAgICAtMHgxLnAxLCAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODIKKyAgICAweDEucC0yLAorICAgIC0weDEucDEsIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODMKKyAgICAweDEuYjBwNCwKKyAgICAweDEuODBwMSwgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODQKKyAgICAweDEuODZhMHAxMSwKKyAgICAweDEuNDBwMiwgMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODUKKyAgICAweDEuOTIxZWUwcDE5LAorICAgIDB4MS5jMHAyLCAweDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIDB4MS4yYTA1ZjJwMzMsCisgICAgMHgxLjQwcDMsIDB4MS40MHAzCisgIH0sCit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL3JlbWFpbmRlcl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvcmVtYWluZGVyX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MjE5NjE2Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL3JlbWFpbmRlcl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxMzA4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8yX3Q8ZG91YmxlLCBkb3VibGUsIGRvdWJsZT4gZ19yZW1haW5kZXJfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMHgxLnAtNTEsCisgICAgLTB4MS40cDEsCisgICAgLTB4MS4zZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLmMwcDQ2LAorICAgIC0weDEuODg4ODg4ODg4ODg4OHAxMDAsCisgICAgLTB4MS4xMTExMTExMTExMTExcDk1CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS4wYzZmN2EyMHAtMTYsCisgICAgLTB4MS5iMTU1NTU1NTU1NTU1cDksCisgICAgLTB4MS5iMTU1NTVkYjhkMTI2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTExNywKKyAgICAtMHgxLjBwLTExNworICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTE3LAorICAgIDB4MS4wcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMC4wLAorICAgIDB4MS4wcC0xMTcsCisgICAgLTB4MS4wcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMC4wLAorICAgIDB4MS4wcC0xMTcsCisgICAgMHgxLjBwLTExNworICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAtMHgxLnAtMTE3LAorICAgIC0weDEuMHAtMTE3LAorICAgIDB4MS4wcDE1CisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIC0weDEucC0xMTcsCisgICAgLTB4MS4wcC0xMTcsCisgICAgMHgxLjBwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLnAtMTE3LAorICAgIDB4MS4wcC0xMTcsCisgICAgMHgxLjBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5wLTExNywKKyAgICAweDEuMHAtMTE3LAorICAgIDB4MS4wcDE2CisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAtMHgxLnAtMTE3LAorICAgIC0weDEuMHAtMTE3LAorICAgIDB4MS4wcDExNworICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgLTB4MS5wLTExNywKKyAgICAtMHgxLjBwLTExNywKKyAgICAweDEuMHAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5wLTExNywKKyAgICAweDEuMHAtMTE3LAorICAgIDB4MS4wcDExNworICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLnAtMTE3LAorICAgIDB4MS4wcC0xMTcsCisgICAgMHgxLjBwMTE4CisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAwLjAsCisgICAgMHgxLjBwMTUsCisgICAgLTB4MS4wcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDAuMCwKKyAgICAweDEuMHAxNSwKKyAgICAweDEuMHAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAwLjAsCisgICAgMHgxLjBwMTYsCisgICAgLTB4MS4wcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDAuMCwKKyAgICAweDEuMHAxNiwKKyAgICAweDEuMHAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAwLjAsCisgICAgMHgxLjBwMTUsCisgICAgMHgxLjBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5wMTUsCisgICAgMHgxLjBwMTUsCisgICAgMHgxLjBwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDAuMCwKKyAgICAweDEuMHAxNiwKKyAgICAweDEuMHAxNQorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMC4wLAorICAgIDB4MS4wcDE2LAorICAgIDB4MS4wcDE2CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEucDE1LAorICAgIDB4MS4wcDE1LAorICAgIDB4MS4wcDExNworICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLnAxNSwKKyAgICAweDEuMHAxNSwKKyAgICAweDEuMHAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5wMTYsCisgICAgMHgxLjBwMTYsCisgICAgMHgxLjBwMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEucDE2LAorICAgIDB4MS4wcDE2LAorICAgIDB4MS4wcDExOAorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMC4wLAorICAgIDB4MS4wcDExNywKKyAgICAtMHgxLjBwLTExNworICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMC4wLAorICAgIDB4MS4wcDExNywKKyAgICAweDEuMHAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAwLjAsCisgICAgMHgxLjBwMTE4LAorICAgIC0weDEuMHAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAwLjAsCisgICAgMHgxLjBwMTE4LAorICAgIDB4MS4wcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDAuMCwKKyAgICAweDEuMHAxMTcsCisgICAgMHgxLjBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDAuMCwKKyAgICAweDEuMHAxMTcsCisgICAgMHgxLjBwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDAuMCwKKyAgICAweDEuMHAxMTgsCisgICAgMHgxLjBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDAuMCwKKyAgICAweDEuMHAxMTgsCisgICAgMHgxLjBwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDAuMCwKKyAgICAweDEuMHAxMTcsCisgICAgMHgxLjBwMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEucDExNywKKyAgICAweDEuMHAxMTcsCisgICAgMHgxLjBwMTE4CisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAwLjAsCisgICAgMHgxLjBwMTE4LAorICAgIDB4MS4wcDExNworICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMC4wLAorICAgIDB4MS4wcDExOCwKKyAgICAweDEuMHAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDAuMCwKKyAgICAweDEuOXA2LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS5wMCwKKyAgICAweDEuOXA2LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS5wMiwKKyAgICAweDEuOXA2LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5wMCwKKyAgICAweDEuOTQwcDYsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLnAxLAorICAgIDB4MS45NDBwNiwKKyAgICAweDEuNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuNDBwMiwKKyAgICAweDEuOTQwcDYsCisgICAgMHgxLjhwMworICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLnAxLAorICAgIDB4MS45ODBwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuODBwMSwKKyAgICAweDEuOTgwcDYsCisgICAgMHgxLjZwMworICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLjgwcDIsCisgICAgMHgxLjk4MHA2LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS44MHAxLAorICAgIDB4MS45YzBwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEucDIsCisgICAgMHgxLjljMHA2LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEuNDBwMiwKKyAgICAweDEuOWMwcDYsCisgICAgMHgxLjhwMworICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLnAyLAorICAgIDB4MS5hcDYsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLjQwcDIsCisgICAgMHgxLmFwNiwKKyAgICAweDEuNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLnAyLAorICAgIDB4MS5hcDYsCisgICAgMHgxLjhwMworICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjQwcDIsCisgICAgMHgxLmE0MHA2LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEuNDBwMiwKKyAgICAweDEuYTQwcDYsCisgICAgMHgxLjZwMworICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgLTB4MS44MHAxLAorICAgIDB4MS5hNDBwNiwKKyAgICAweDEuOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLnAyLAorICAgIDB4MS5hODBwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLnAyLAorICAgIDB4MS5hODBwNiwKKyAgICAweDEuNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLnAxLAorICAgIDB4MS5hODBwNiwKKyAgICAweDEuOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAtMHgxLjgwcDEsCisgICAgMHgxLmFjMHA2LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuODBwMSwKKyAgICAweDEuYWMwcDYsCisgICAgMHgxLjZwMworICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgLTB4MS5wMCwKKyAgICAweDEuYWMwcDYsCisgICAgMHgxLjhwMworICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS5wMSwKKyAgICAweDEuYnA2LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEucDEsCisgICAgMHgxLmJwNiwKKyAgICAweDEuNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAwLjAsCisgICAgMHgxLmJwNiwKKyAgICAweDEuOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAtMHgxLnAwLAorICAgIDB4MS5iNDBwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLnAwLAorICAgIDB4MS5iNDBwNiwKKyAgICAweDEuNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEucDAsCisgICAgMHgxLmI0MHA2LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDAuMCwKKyAgICAweDEuYjgwcDYsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMC4wLAorICAgIDB4MS5iODBwNiwKKyAgICAweDEuNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEucDEsCisgICAgMHgxLmI4MHA2LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIC0weDEucC01MiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS44MHAtNTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAweDEucC01MiwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgLTAuMCwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS5wLTUzLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLjgwcC01MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS5wLTUzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLjgwcC01MiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgLTB4MS5wLTUyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgLTB4MS5wLTUzLAorICAgIC0weDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMC4wLAorICAgIC0weDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS5wLTUyLAorICAgIC0weDEuMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEucC01MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLjgwcC01MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgLTB4MS44MHAtNTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIC0weDEucC01MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgLTB4MS5wLTUyLAorICAgIDB4MS4wcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDAuMCwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEucC01MywKKyAgICAweDEuMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS5wLTUyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS44MHAtNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIC0weDEucC01MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS44MHAtNTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS5wLTUzLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAwLjAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgLTB4MS5wLTUyLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS44MHAtNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5wLTUyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuZmZmZmZmZmZmZmZmYzBwLTMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS5wLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUxLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS5wLTIsCisgICAgLTB4MS4wcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTAuMCwKKyAgICAtMHgxLjBwNTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS5wLTEsCisgICAgLTB4MS4wcDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIDB4MS5wLTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDQwcC0yLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgLTB4MS5wLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuZmZmZmZmZmZmZmZmYzBwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTIsCisgICAgMHgxLjBwNTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAwLjAsCisgICAgMHgxLjBwNTIsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS5wLTUyLAorICAgIDB4MS4wcDUyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUyLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEuODBwLTUyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUzLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS5wLTUzLAorICAgIC0weDEuMHA1MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0wLjAsCisgICAgLTB4MS4wcDUzLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLnAtNTEsCisgICAgLTB4MS4wcDUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUyLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLjgwcC01MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIC0weDEucC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAweDEuMDAwMDAwMDAwMDAwNDBwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDB4MS5wLTIsCisgICAgMHgxLjBwNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAwLjAsCisgICAgMHgxLjBwNTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIC0weDEucC0xLAorICAgIDB4MS4wcDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcC0zLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMHgxLnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMiwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDAuMCwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMHgxLnAtNTIsCisgICAgMHgxLjBwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIC0weDEuZmZmZmZmZmZmZmZmYzBwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MywKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuODBwLTUyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAtMHgxLnAtNTEsCisgICAgLTB4MS4wcDUzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTAuMCwKKyAgICAtMHgxLjBwNTMsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAtMHgxLnAtNTMsCisgICAgLTB4MS4wcDUzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIC0weDEuODBwLTUxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUyLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMC4wLAorICAgIDAuMCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgLTB4MS5wMCwKKyAgICAweDEuOHAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEucDAsCisgICAgLTB4MS44cDEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIC0weDEucDAsCisgICAgMHgxLjhwMSwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS5wMCwKKyAgICAtMHgxLjhwMSwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDB4MS5wMCwKKyAgICAweDEuNHAyLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAtMHgxLnAwLAorICAgIC0weDEuNHAyLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEucDAsCisgICAgMHgxLjRwMiwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIC0weDEucDAsCisgICAgLTB4MS40cDIsCisgICAgLTB4MS4wcDEKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9yZW1haW5kZXJmX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9yZW1haW5kZXJmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NGM0YWY1Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL3JlbWFpbmRlcmZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTI5MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMl90PGZsb2F0LCBmbG9hdCwgZmxvYXQ+IGdfcmVtYWluZGVyZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0wLjAsCisgICAgLTB4MS5wLTExNywKKyAgICAtMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0wLjAsCisgICAgLTB4MS5wLTExNywKKyAgICAweDEucC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMC4wLAorICAgIDB4MS5wLTExNywKKyAgICAtMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDAuMCwKKyAgICAweDEucC0xMTcsCisgICAgMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIC0weDEucC0xMTcsCisgICAgLTB4MS5wLTExNywKKyAgICAweDEucDE1CisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIC0weDEucC0xMTcsCisgICAgLTB4MS5wLTExNywKKyAgICAweDEucDE2CisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS5wLTExNywKKyAgICAweDEucC0xMTcsCisgICAgMHgxLnAxNQorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEucC0xMTcsCisgICAgMHgxLnAtMTE3LAorICAgIDB4MS5wMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgLTB4MS5wLTExNywKKyAgICAtMHgxLnAtMTE3LAorICAgIDB4MS5wMTE3CisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIC0weDEucC0xMTcsCisgICAgLTB4MS5wLTExNywKKyAgICAweDEucDExOAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLnAtMTE3LAorICAgIDB4MS5wLTExNywKKyAgICAweDEucDExNworICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLnAtMTE3LAorICAgIDB4MS5wLTExNywKKyAgICAweDEucDExOAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMC4wLAorICAgIDB4MS5wMTUsCisgICAgLTB4MS5wLTExNworICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMC4wLAorICAgIDB4MS5wMTUsCisgICAgMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAwLjAsCisgICAgMHgxLnAxNiwKKyAgICAtMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAwLjAsCisgICAgMHgxLnAxNiwKKyAgICAweDEucC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDAuMCwKKyAgICAweDEucDE1LAorICAgIDB4MS5wMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS5wMTUsCisgICAgMHgxLnAxNSwKKyAgICAweDEucDE2CisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAwLjAsCisgICAgMHgxLnAxNiwKKyAgICAweDEucDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAwLjAsCisgICAgMHgxLnAxNiwKKyAgICAweDEucDE2CisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEucDE1LAorICAgIDB4MS5wMTUsCisgICAgMHgxLnAxMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS5wMTUsCisgICAgMHgxLnAxNSwKKyAgICAweDEucDExOAorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLnAxNiwKKyAgICAweDEucDE2LAorICAgIDB4MS5wMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEucDE2LAorICAgIDB4MS5wMTYsCisgICAgMHgxLnAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDAuMCwKKyAgICAweDEucDExNywKKyAgICAtMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAwLjAsCisgICAgMHgxLnAxMTcsCisgICAgMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAwLjAsCisgICAgMHgxLnAxMTgsCisgICAgLTB4MS5wLTExNworICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMC4wLAorICAgIDB4MS5wMTE4LAorICAgIDB4MS5wLTExNworICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMC4wLAorICAgIDB4MS5wMTE3LAorICAgIDB4MS5wMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDAuMCwKKyAgICAweDEucDExNywKKyAgICAweDEucDE2CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAwLjAsCisgICAgMHgxLnAxMTgsCisgICAgMHgxLnAxNQorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMC4wLAorICAgIDB4MS5wMTE4LAorICAgIDB4MS5wMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDAuMCwKKyAgICAweDEucDExNywKKyAgICAweDEucDExNworICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLnAxMTcsCisgICAgMHgxLnAxMTcsCisgICAgMHgxLnAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDAuMCwKKyAgICAweDEucDExOCwKKyAgICAweDEucDExNworICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMC4wLAorICAgIDB4MS5wMTE4LAorICAgIDB4MS5wMTE4CisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAwLjAsCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS5wMCwKKyAgICAweDEuOTBwNiwKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLnAyLAorICAgIDB4MS45MHA2LAorICAgIDB4MS44MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEucDAsCisgICAgMHgxLjk0cDYsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS5wMSwKKyAgICAweDEuOTRwNiwKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjQwcDIsCisgICAgMHgxLjk0cDYsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5wMSwKKyAgICAweDEuOThwNiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLjgwcDEsCisgICAgMHgxLjk4cDYsCisgICAgMHgxLjYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS44MHAyLAorICAgIDB4MS45OHA2LAorICAgIDB4MS44MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuODBwMSwKKyAgICAweDEuOWNwNiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLnAyLAorICAgIDB4MS45Y3A2LAorICAgIDB4MS42MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAtMHgxLjQwcDIsCisgICAgMHgxLjljcDYsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5wMiwKKyAgICAweDEuYTBwNiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgMHgxLjQwcDIsCisgICAgMHgxLmEwcDYsCisgICAgMHgxLjYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEucDIsCisgICAgMHgxLmEwcDYsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS40MHAyLAorICAgIDB4MS5hNHA2LAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAtMHgxLjQwcDIsCisgICAgMHgxLmE0cDYsCisgICAgMHgxLjYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEuODBwMSwKKyAgICAweDEuYTRwNiwKKyAgICAweDEuODBwMworICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgLTB4MS5wMiwKKyAgICAweDEuYThwNiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgLTB4MS5wMiwKKyAgICAweDEuYThwNiwKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgLTB4MS5wMSwKKyAgICAweDEuYThwNiwKKyAgICAweDEuODBwMworICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgLTB4MS44MHAxLAorICAgIDB4MS5hY3A2LAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLjgwcDEsCisgICAgMHgxLmFjcDYsCisgICAgMHgxLjYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEucDAsCisgICAgMHgxLmFjcDYsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEucDEsCisgICAgMHgxLmIwcDYsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEucDEsCisgICAgMHgxLmIwcDYsCisgICAgMHgxLjYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDAuMCwKKyAgICAweDEuYjBwNiwKKyAgICAweDEuODBwMworICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS5wMCwKKyAgICAweDEuYjRwNiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgLTB4MS5wMCwKKyAgICAweDEuYjRwNiwKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLnAwLAorICAgIDB4MS5iNHA2LAorICAgIDB4MS44MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAwLjAsCisgICAgMHgxLmI4cDYsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDAuMCwKKyAgICAweDEuYjhwNiwKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLnAxLAorICAgIDB4MS5iOHA2LAorICAgIDB4MS44MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgLTB4MS5wLTIzLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS44MHAtMjMsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLnAtMjMsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMC4wLAorICAgIC0weDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS5wLTI0LAorICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIDB4MS44MHAtMjMsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLnAtMjQsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgLTB4MS44MHAtMjMsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLnAtMjMsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEucC0yNCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIC0wLjAsCisgICAgLTB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS5wLTIzLAorICAgIC0weDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS5wLTI0LAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLjgwcC0yMywKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuODBwLTIzLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgLTB4MS5wLTI0LAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIC0weDEucC0yMywKKyAgICAweDEucDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMC4wLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEucC0yNCwKKyAgICAweDEucDAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDAuMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLnAtMjMsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS44MHAtMjMsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAtMHgxLnAtMjQsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIC0weDEuODBwLTIzLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAweDEucC0yNCwKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDAuMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS5wLTIzLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuODBwLTIzLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLnAtMjMsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDAuMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMC4wLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDAuMCwKKyAgICAwLjAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDAuMCwKKyAgICAwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS5mZmZmZjhwLTMsCisgICAgLTB4MS4wMDAwMDJwMjIsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIC0weDEucC0xLAorICAgIC0weDEuMDAwMDAycDIyLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDJwMjIsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgLTB4MS5wLTIsCisgICAgLTB4MS5wMjIsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0wLjAsCisgICAgLTB4MS5wMjIsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLnAtMSwKKyAgICAtMHgxLnAyMiwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDIxLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEucC0yLAorICAgIC0weDEuZmZmZmZlcDIxLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEuMDAwMDA4cC0yLAorICAgIC0weDEuZmZmZmZlcDIxLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDIyLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLnAtMSwKKyAgICAweDEuZmZmZmZlcDIyLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIC0weDEuZmZmZmY4cC0yLAorICAgIDB4MS5mZmZmZmVwMjIsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS5mZmZmZmNwLTIsCisgICAgMHgxLnAyMywKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMC4wLAorICAgIDB4MS5wMjMsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgMHgxLnAtMjMsCisgICAgMHgxLnAyMywKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAtMHgxLmZmZmZmOHAtMiwKKyAgICAweDEuMDAwMDAycDIzLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAtMHgxLjgwcC0yMywKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAycDI0LAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEucC0yNCwKKyAgICAtMHgxLnAyNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTAuMCwKKyAgICAtMHgxLnAyNCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLnAtMjIsCisgICAgLTB4MS5wMjQsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAyMywKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAyMywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLjgwcC0yMiwKKyAgICAtMHgxLmZmZmZmZXAyMywKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAyMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS5wLTIsCisgICAgMHgxLmZmZmZmZXAyMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuMDAwMDA4cC0yLAorICAgIDB4MS5mZmZmZmVwMjEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMHgxLnAtMiwKKyAgICAweDEucDIyLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAwLjAsCisgICAgMHgxLnAyMiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAtMHgxLnAtMSwKKyAgICAweDEucDIyLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEuZmZmZmY4cC0zLAorICAgIDB4MS4wMDAwMDJwMjIsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIDB4MS5wLTEsCisgICAgMHgxLjAwMDAwMnAyMiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAyMiwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAyMiwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgLTB4MS5wLTEsCisgICAgMHgxLmZmZmZmZXAyMiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLmZmZmZmOHAtMiwKKyAgICAweDEuZmZmZmZlcDIyLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIC0weDEuZmZmZmZjcC0yLAorICAgIDB4MS5wMjMsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIDAuMCwKKyAgICAweDEucDIzLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS5wLTIzLAorICAgIDB4MS5wMjMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS5mZmZmZjhwLTIsCisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwMjMsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwMjMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgLTB4MS44MHAtMjMsCisgICAgLTB4MS4wMDAwMDJwMjQsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLnAtMjIsCisgICAgLTB4MS5wMjQsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIC0wLjAsCisgICAgLTB4MS5wMjQsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEucC0yNCwKKyAgICAtMHgxLnAyNCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIC0weDEuODBwLTIyLAorICAgIC0weDEuZmZmZmZlcDIzLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDIzLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDIzLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIDAuMCwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMC4wLAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIC0wLjAsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMC4wLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAwLjAsCisgICAgMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAtMC4wLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIDAuMCwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIC0wLjAsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgMC4wLAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgLTB4MS5wMCwKKyAgICAweDEuODBwMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEucDAsCisgICAgLTB4MS44MHAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIC0weDEucDAsCisgICAgMHgxLjgwcDEsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS5wMCwKKyAgICAweDEuNDBwMiwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAtMHgxLnAwLAorICAgIC0weDEuNDBwMiwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEucDAsCisgICAgMHgxLjQwcDIsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIC0weDEucDAsCisgICAgLTB4MS40MHAyLAorICAgIC0weDEucDEKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9yZW1xdW9faW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL3JlbXF1b19pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTUzYjZlNgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9yZW1xdW9faW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTU4NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfaW50XzJfdDxkb3VibGUsIGRvdWJsZSwgZG91YmxlPiBnX3JlbXF1b19pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIDB4MS40Mjk2NzI2ODMxNWFwLTEzLAorICAgIChpbnQpLTB4MS5wMSwKKyAgICAtMHgxLjBwLTEwLAorICAgIDB4MS4yODUyY2U0ZDA2MmI0cC0xMQorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuMWFiNzU1MDQ0NjQ0NDBwMTQsCisgICAgKGludCkweDEuNmEzYjM2MThwMzAsCisgICAgMHgxLjAyOTVmYWQ0MGE1N2ZwMTE3LAorICAgIDB4MS40NWQxNzQ1ZDE3NDY1cDE1CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIC0weDEuZDFhNzc3MDgxODYxcDE4LAorICAgIChpbnQpLTB4MS4wZjYyZDRiOHAzMCwKKyAgICAweDEuMTFmNzgzZWU4OWIwOHA5OSwKKyAgICAtMHgxLmZkNmVmNDdkOTZmMWNwMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgLTB4MS5iMHAzLAorICAgIChpbnQpLTB4MS5hZmU1MDFiMHAyOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmYnAxMDIzLAorICAgIC0weDEuMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIC0weDEuN2Q5MTY1YzAwMDI0cDksCisgICAgKGludCkweDEuZGQwMDAwMzBwMjksCisgICAgMHgxLmZmZmZmZmZmZmZmZmJwMTAyMywKKyAgICAweDEuMDAwMDAwMDAwMDAwM3AxNAorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAtMHgxLnAtMTcsCisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmRwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAtMC4wLAorICAgIChpbnQpMHgxLnAwLAorICAgIC0weDEuMHAtMTE3LAorICAgIC0weDEuMHAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIC0wLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEuMHAtMTE3LAorICAgIDB4MS4wcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMC4wLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuMHAtMTE3LAorICAgIC0weDEuMHAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMHAtMTE3LAorICAgIDB4MS4wcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIC0weDEucC0xMTcsCisgICAgKGludCkwLjAsCisgICAgLTB4MS4wcC0xMTcsCisgICAgMHgxLjBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIC0weDEucC0xMTcsCisgICAgKGludCkwLjAsCisgICAgLTB4MS4wcC0xMTcsCisgICAgMHgxLjBwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5wLTExNywKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMHAtMTE3LAorICAgIDB4MS4wcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEucC0xMTcsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwLTExNywKKyAgICAweDEuMHAxNgorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgLTB4MS5wLTExNywKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLjBwLTExNywKKyAgICAweDEuMHAxMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIC0weDEucC0xMTcsCisgICAgKGludCkwLjAsCisgICAgLTB4MS4wcC0xMTcsCisgICAgMHgxLjBwMTE4CisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEucC0xMTcsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwLTExNywKKyAgICAweDEuMHAxMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS5wLTExNywKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMHAtMTE3LAorICAgIDB4MS4wcDExOAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wcDE1LAorICAgIC0weDEuMHAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwMTUsCisgICAgMHgxLjBwLTExNworICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wcDE2LAorICAgIC0weDEuMHAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwMTYsCisgICAgMHgxLjBwLTExNworICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMC4wLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS4wcDE1LAorICAgIDB4MS4wcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEucDE1LAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wcDE1LAorICAgIDB4MS4wcDE2CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAwLjAsCisgICAgKGludCkweDEucDEsCisgICAgMHgxLjBwMTYsCisgICAgMHgxLjBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMHAxNiwKKyAgICAweDEuMHAxNgorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLnAxNSwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMHAxNSwKKyAgICAweDEuMHAxMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5wMTUsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwMTUsCisgICAgMHgxLjBwMTE4CisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEucDE2LAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wcDE2LAorICAgIDB4MS4wcDExNworICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLnAxNiwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMHAxNiwKKyAgICAweDEuMHAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMHAxMTcsCisgICAgLTB4MS4wcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMHAxMTcsCisgICAgMHgxLjBwLTExNworICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wcDExOCwKKyAgICAtMHgxLjBwLTExNworICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wcDExOCwKKyAgICAweDEuMHAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwMTE3LAorICAgIDB4MS4wcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwMTE3LAorICAgIDB4MS4wcDE2CisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwMTE4LAorICAgIDB4MS4wcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwMTE4LAorICAgIDB4MS4wcDE2CisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAwLjAsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLjBwMTE3LAorICAgIDB4MS4wcDExNworICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLnAxMTcsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwMTE3LAorICAgIDB4MS4wcDExOAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMC4wLAorICAgIChpbnQpMHgxLnAxLAorICAgIDB4MS4wcDExOCwKKyAgICAweDEuMHAxMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMHAxMTgsCisgICAgMHgxLjBwMTE4CisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAwLjAsCisgICAgKGludCkweDEuNDBwMywKKyAgICAweDEuOXA2LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5wMCwKKyAgICAoaW50KTB4MS4yMHAzLAorICAgIDB4MS45cDYsCisgICAgMHgxLjZwMworICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLnAyLAorICAgIChpbnQpMHgxLnAzLAorICAgIDB4MS45cDYsCisgICAgMHgxLjhwMworICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLnAwLAorICAgIChpbnQpMHgxLjQwcDMsCisgICAgMHgxLjk0MHA2LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS5wMSwKKyAgICAoaW50KTB4MS4yMHAzLAorICAgIDB4MS45NDBwNiwKKyAgICAweDEuNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuNDBwMiwKKyAgICAoaW50KTB4MS5wMywKKyAgICAweDEuOTQwcDYsCisgICAgMHgxLjhwMworICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLnAxLAorICAgIChpbnQpMHgxLjQwcDMsCisgICAgMHgxLjk4MHA2LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS44MHAxLAorICAgIChpbnQpMHgxLjIwcDMsCisgICAgMHgxLjk4MHA2LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIDB4MS44MHAyLAorICAgIChpbnQpMHgxLnAzLAorICAgIDB4MS45ODBwNiwKKyAgICAweDEuOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEuODBwMSwKKyAgICAoaW50KTB4MS40MHAzLAorICAgIDB4MS45YzBwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEucDIsCisgICAgKGludCkweDEuMjBwMywKKyAgICAweDEuOWMwcDYsCisgICAgMHgxLjZwMworICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgLTB4MS40MHAyLAorICAgIChpbnQpMHgxLjIwcDMsCisgICAgMHgxLjljMHA2LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS5wMiwKKyAgICAoaW50KTB4MS40MHAzLAorICAgIDB4MS5hcDYsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLjQwcDIsCisgICAgKGludCkweDEuMjBwMywKKyAgICAweDEuYXA2LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIC0weDEucDIsCisgICAgKGludCkweDEuMjBwMywKKyAgICAweDEuYXA2LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS40MHAyLAorICAgIChpbnQpMHgxLjQwcDMsCisgICAgMHgxLmE0MHA2LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIC0weDEuNDBwMiwKKyAgICAoaW50KTB4MS40MHAzLAorICAgIDB4MS5hNDBwNiwKKyAgICAweDEuNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLjgwcDEsCisgICAgKGludCkweDEuMjBwMywKKyAgICAweDEuYTQwcDYsCisgICAgMHgxLjhwMworICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgLTB4MS5wMiwKKyAgICAoaW50KTB4MS42MHAzLAorICAgIDB4MS5hODBwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLnAyLAorICAgIChpbnQpMHgxLjQwcDMsCisgICAgMHgxLmE4MHA2LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIC0weDEucDEsCisgICAgKGludCkweDEuMjBwMywKKyAgICAweDEuYTgwcDYsCisgICAgMHgxLjhwMworICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS44MHAxLAorICAgIChpbnQpMHgxLjYwcDMsCisgICAgMHgxLmFjMHA2LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEuODBwMSwKKyAgICAoaW50KTB4MS40MHAzLAorICAgIDB4MS5hYzBwNiwKKyAgICAweDEuNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAtMHgxLnAwLAorICAgIChpbnQpMHgxLjIwcDMsCisgICAgMHgxLmFjMHA2LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEucDEsCisgICAgKGludCkweDEuNjBwMywKKyAgICAweDEuYnA2LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEucDEsCisgICAgKGludCkweDEuNDBwMywKKyAgICAweDEuYnA2LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDAuMCwKKyAgICAoaW50KTB4MS4yMHAzLAorICAgIDB4MS5icDYsCisgICAgMHgxLjhwMworICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5wMCwKKyAgICAoaW50KTB4MS42MHAzLAorICAgIDB4MS5iNDBwNiwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAtMHgxLnAwLAorICAgIChpbnQpMHgxLjQwcDMsCisgICAgMHgxLmI0MHA2LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIDB4MS5wMCwKKyAgICAoaW50KTB4MS4yMHAzLAorICAgIDB4MS5iNDBwNiwKKyAgICAweDEuOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAwLjAsCisgICAgKGludCkweDEuNjBwMywKKyAgICAweDEuYjgwcDYsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgMC4wLAorICAgIChpbnQpMHgxLjQwcDMsCisgICAgMHgxLmI4MHA2LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5wMSwKKyAgICAoaW50KTB4MS4yMHAzLAorICAgIDB4MS5iODBwNiwKKyAgICAweDEuOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMC4wLAorICAgIChpbnQpMHgxLnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLnAtNTIsCisgICAgKGludCkweDEucDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuODBwLTUyLAorICAgIChpbnQpMHgxLnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLnAtNTIsCisgICAgKGludCkweDEucDAsCisgICAgLTB4MS4wcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0wLjAsCisgICAgKGludCkweDEucDAsCisgICAgLTB4MS4wcDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEucC01MywKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS44MHAtNTIsCisgICAgKGludCkweDEucDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEucC01MywKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIC0wLjAsCisgICAgKGludCkweDEucDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgLTB4MS44MHAtNTIsCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLnAtNTIsCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIC0wLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEucC01MywKKyAgICAoaW50KS0weDEucDAsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIC0wLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS5wLTUyLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAtMC4wLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS5wLTUzLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjgwcC01MiwKKyAgICAoaW50KS0weDEucDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIC0weDEuODBwLTUyLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgLTB4MS5wLTUzLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMC4wLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIC0weDEucC01MiwKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMC4wLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuMHAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEucC01MywKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDAuMCwKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS5wLTUyLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLjgwcC01MiwKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAwLjAsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAtMHgxLnAtNTMsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIC0weDEuODBwLTUyLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEucC01MywKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMC4wLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIC0weDEucC01MiwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuODBwLTUyLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEucC01MiwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAwLjAsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgLTAuMCwKKyAgICAoaW50KS0weDEucDAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgLTAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMC4wLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgLTAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDAuMCwKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgLTB4MS5wLTEwNzQsCisgICAgKGludCkwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS5wLTEwNzQsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIC0weDEucC0xMDc0LAorICAgIChpbnQpMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5wLTEwNzQsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEucC0xMDc0LAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS5wLTEwNzQsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgLTAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAwLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMC4wLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgLTAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMywKKyAgICAoaW50KS0weDEucDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTB4MS5wLTEsCisgICAgKGludCkwLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUxLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgLTB4MS5wLTIsCisgICAgKGludCkwLjAsCisgICAgLTB4MS4wcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLjBwNTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5wLTEsCisgICAgKGludCkwLjAsCisgICAgLTB4MS4wcDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS5wLTIsCisgICAgKGludCkwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDQwcC0yLAorICAgIChpbnQpLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEucC0xLAorICAgIChpbnQpMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcC0yLAorICAgIChpbnQpMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0yLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS4wcDUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wcDUyLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAweDEucC01MiwKKyAgICAoaW50KTB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHAtMiwKKyAgICAoaW50KTB4MS5wMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIDAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MiwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAtMHgxLjgwcC01MiwKKyAgICAoaW50KS0weDEuODBwMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAtMC4wLAorICAgIChpbnQpLTB4MS5wMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTMsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAtMHgxLnAtNTMsCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEuMHA1MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTB4MS4wcDUzLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLnAtNTEsCisgICAgKGludCktMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuMHA1MywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAtMC4wLAorICAgIChpbnQpLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTIsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0weDEuODBwLTUxLAorICAgIChpbnQpLTB4MS5mZmZmZmZmNHAzMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEucC0yLAorICAgIChpbnQpMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEuMDAwMDAwMDAwMDAwNDBwLTIsCisgICAgKGludCkweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIDB4MS5wLTIsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwNTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0weDEucC0xLAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wcDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcC0zLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMHgxLnAtMSwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAtMHgxLnAtMSwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHAtMiwKKyAgICAoaW50KTB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMiwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMHA1MiwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLnAtNTIsCisgICAgKGludCkweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLjBwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIC0weDEuZmZmZmZmZmZmZmZmYzBwLTIsCisgICAgKGludCkweDEucDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAwLjAsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgLTAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAtMC4wLAorICAgIChpbnQpMHgxLnAxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MywKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIC0weDEuODBwLTUyLAorICAgIChpbnQpMHgxLjgwcDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIC0weDEucC01MSwKKyAgICAoaW50KTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLjBwNTMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuMHA1MywKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0weDEucC01MywKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLjBwNTMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgLTB4MS44MHAtNTEsCisgICAgKGludCkweDEuZmZmZmZmZjRwMzAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgLTAuMCwKKyAgICAoaW50KTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTIsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAoaW50KTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgKGludCkwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLnAtMTAyMiwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEucC0xMDIyLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIDB4MS5wLTEwMjIsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgLTB4MS5wLTEwMjIsCisgICAgKGludCkwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIDB4MS5wLTEwNzQsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAweDEucC0xMDc0LAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEucC0xMDc0LAorICAgIChpbnQpMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAtMC4wLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0wLjAsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMC4wLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDAuMCwKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0wLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMC4wLAorICAgIChpbnQpMHgxLnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgLTAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIDB4MS5wLTEwMjIsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIC0weDEucC0xMDIyLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLnAtMTAyMiwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0weDEucC0xMDIyLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS5wLTEwNzQsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIC0weDEucC0xMDc0LAorICAgIChpbnQpMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLnAtMTA3NCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIC0weDEucC0xMDc0LAorICAgIChpbnQpMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDAuMCwKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgLTAuMCwKKyAgICAoaW50KS0weDEucDAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgLTAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgLTAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLnAtMTA3NCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIC0weDEucC0xMDc0LAorICAgIChpbnQpMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS5wLTEwNzQsCisgICAgKGludCkwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgLTB4MS5wLTEwNzQsCisgICAgKGludCkwLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAwLjAsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAtMC4wLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAwLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIC0wLjAsCisgICAgKGludCkweDEucDAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0wLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAtMHgxLnAwLAorICAgIChpbnQpMHgxLnAxLAorICAgIDB4MS44cDEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDB4MS5wMCwKKyAgICAoaW50KS0weDEucDEsCisgICAgLTB4MS44cDEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIC0weDEucDAsCisgICAgKGludCktMHgxLnAxLAorICAgIDB4MS44cDEsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEucDAsCisgICAgKGludCkweDEucDEsCisgICAgLTB4MS44cDEsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEucDAsCisgICAgKGludCkweDEucDEsCisgICAgMHgxLjRwMiwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgLTB4MS5wMCwKKyAgICAoaW50KS0weDEucDEsCisgICAgLTB4MS40cDIsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIDB4MS5wMCwKKyAgICAoaW50KS0weDEucDEsCisgICAgMHgxLjRwMiwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIC0weDEucDAsCisgICAgKGludCkweDEucDEsCisgICAgLTB4MS40cDIsCisgICAgLTB4MS4wcDEKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9yZW1xdW9mX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9yZW1xdW9mX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZWViYmFlCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL3JlbXF1b2ZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTU3OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfaW50XzJfdDxmbG9hdCwgZmxvYXQsIGZsb2F0PiBnX3JlbXF1b2ZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAweDEuNzJjMmMwcDE4LAorICAgIChpbnQpLTB4MS5iMzdkMmI2MHAyOCwKKyAgICAtMHgxLjI4NTMwOHA5OSwKKyAgICAweDEuN2E0MTEwcDE5CisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0weDEuOTZkZmIwcDEzLAorICAgIChpbnQpMHgxLjIxMmQ1ZDU4cDMwLAorICAgIDB4MS4wMjk1ZmFwMTE3LAorICAgIDB4MS4wY2VkZTJwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMHgxLmZkMDAzMHAyMCwKKyAgICAoaW50KS0weDEuMDA3ZmY4cDIyLAorICAgIDB4MS5mZmZmZTZwMTI3LAorICAgIC0weDEuMDAwMDA2cDIyCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS40NzgyYjBwMiwKKyAgICAoaW50KTB4MS40MzIzYzE1OHAzMCwKKyAgICAweDEuZmZmZmY4cDEyNywKKyAgICAweDEuZGZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgLTB4MS5wLTExLAorICAgIChpbnQpMHgxLmZmZmZjMHAzMCwKKyAgICAweDEuZmZmZmZhcDEyNywKKyAgICAweDEuZmZmZmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIC0wLjAsCisgICAgKGludCkweDEucDAsCisgICAgLTB4MS5wLTExNywKKyAgICAtMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIC0wLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEucC0xMTcsCisgICAgMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDAuMCwKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLnAtMTE3LAorICAgIC0weDEucC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMC4wLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS5wLTExNywKKyAgICAweDEucC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgLTB4MS5wLTExNywKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLnAtMTE3LAorICAgIDB4MS5wMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIC0weDEucC0xMTcsCisgICAgKGludCkwLjAsCisgICAgLTB4MS5wLTExNywKKyAgICAweDEucDE2CisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEucC0xMTcsCisgICAgKGludCkwLjAsCisgICAgMHgxLnAtMTE3LAorICAgIDB4MS5wMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5wLTExNywKKyAgICAoaW50KTAuMCwKKyAgICAweDEucC0xMTcsCisgICAgMHgxLnAxNgorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgLTB4MS5wLTExNywKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLnAtMTE3LAorICAgIDB4MS5wMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAtMHgxLnAtMTE3LAorICAgIChpbnQpMC4wLAorICAgIC0weDEucC0xMTcsCisgICAgMHgxLnAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5wLTExNywKKyAgICAoaW50KTAuMCwKKyAgICAweDEucC0xMTcsCisgICAgMHgxLnAxMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5wLTExNywKKyAgICAoaW50KTAuMCwKKyAgICAweDEucC0xMTcsCisgICAgMHgxLnAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucDE1LAorICAgIC0weDEucC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucDE1LAorICAgIDB4MS5wLTExNworICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS5wMTYsCisgICAgLTB4MS5wLTExNworICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS5wMTYsCisgICAgMHgxLnAtMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAwLjAsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLnAxNSwKKyAgICAweDEucDE1CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEucDE1LAorICAgIChpbnQpMC4wLAorICAgIDB4MS5wMTUsCisgICAgMHgxLnAxNgorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMC4wLAorICAgIChpbnQpMHgxLnAxLAorICAgIDB4MS5wMTYsCisgICAgMHgxLnAxNQorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMC4wLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS5wMTYsCisgICAgMHgxLnAxNgorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLnAxNSwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucDE1LAorICAgIDB4MS5wMTE3CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEucDE1LAorICAgIChpbnQpMC4wLAorICAgIDB4MS5wMTUsCisgICAgMHgxLnAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5wMTYsCisgICAgKGludCkwLjAsCisgICAgMHgxLnAxNiwKKyAgICAweDEucDExNworICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLnAxNiwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucDE2LAorICAgIDB4MS5wMTE4CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLnAxMTcsCisgICAgLTB4MS5wLTExNworICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS5wMTE3LAorICAgIDB4MS5wLTExNworICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS5wMTE4LAorICAgIC0weDEucC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucDExOCwKKyAgICAweDEucC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucDExNywKKyAgICAweDEucDE1CisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLnAxMTcsCisgICAgMHgxLnAxNgorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS5wMTE4LAorICAgIDB4MS5wMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucDExOCwKKyAgICAweDEucDE2CisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAwLjAsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLnAxMTcsCisgICAgMHgxLnAxMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS5wMTE3LAorICAgIChpbnQpMC4wLAorICAgIDB4MS5wMTE3LAorICAgIDB4MS5wMTE4CisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAwLjAsCisgICAgKGludCkweDEucDEsCisgICAgMHgxLnAxMTgsCisgICAgMHgxLnAxMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEucDExOCwKKyAgICAweDEucDExOAorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMC4wLAorICAgIChpbnQpMHgxLjQwcDMsCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5wMCwKKyAgICAoaW50KTB4MS4yMHAzLAorICAgIDB4MS45MHA2LAorICAgIDB4MS42MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEucDIsCisgICAgKGludCkweDEucDMsCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS5wMCwKKyAgICAoaW50KTB4MS40MHAzLAorICAgIDB4MS45NHA2LAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEucDEsCisgICAgKGludCkweDEuMjBwMywKKyAgICAweDEuOTRwNiwKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLjQwcDIsCisgICAgKGludCkweDEucDMsCisgICAgMHgxLjk0cDYsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS5wMSwKKyAgICAoaW50KTB4MS40MHAzLAorICAgIDB4MS45OHA2LAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEuODBwMSwKKyAgICAoaW50KTB4MS4yMHAzLAorICAgIDB4MS45OHA2LAorICAgIDB4MS42MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuODBwMiwKKyAgICAoaW50KTB4MS5wMywKKyAgICAweDEuOThwNiwKKyAgICAweDEuODBwMworICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjgwcDEsCisgICAgKGludCkweDEuNDBwMywKKyAgICAweDEuOWNwNiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLnAyLAorICAgIChpbnQpMHgxLjIwcDMsCisgICAgMHgxLjljcDYsCisgICAgMHgxLjYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEuNDBwMiwKKyAgICAoaW50KTB4MS4yMHAzLAorICAgIDB4MS45Y3A2LAorICAgIDB4MS44MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEucDIsCisgICAgKGludCkweDEuNDBwMywKKyAgICAweDEuYTBwNiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjQwcDIsCisgICAgKGludCkweDEuMjBwMywKKyAgICAweDEuYTBwNiwKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgLTB4MS5wMiwKKyAgICAoaW50KTB4MS4yMHAzLAorICAgIDB4MS5hMHA2LAorICAgIDB4MS44MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuNDBwMiwKKyAgICAoaW50KTB4MS40MHAzLAorICAgIDB4MS5hNHA2LAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLjQwcDIsCisgICAgKGludCkweDEuNDBwMywKKyAgICAweDEuYTRwNiwKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgLTB4MS44MHAxLAorICAgIChpbnQpMHgxLjIwcDMsCisgICAgMHgxLmE0cDYsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEucDIsCisgICAgKGludCkweDEuNjBwMywKKyAgICAweDEuYThwNiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgLTB4MS5wMiwKKyAgICAoaW50KTB4MS40MHAzLAorICAgIDB4MS5hOHA2LAorICAgIDB4MS42MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLnAxLAorICAgIChpbnQpMHgxLjIwcDMsCisgICAgMHgxLmE4cDYsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIC0weDEuODBwMSwKKyAgICAoaW50KTB4MS42MHAzLAorICAgIDB4MS5hY3A2LAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLjgwcDEsCisgICAgKGludCkweDEuNDBwMywKKyAgICAweDEuYWNwNiwKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgLTB4MS5wMCwKKyAgICAoaW50KTB4MS4yMHAzLAorICAgIDB4MS5hY3A2LAorICAgIDB4MS44MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAtMHgxLnAxLAorICAgIChpbnQpMHgxLjYwcDMsCisgICAgMHgxLmIwcDYsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEucDEsCisgICAgKGludCkweDEuNDBwMywKKyAgICAweDEuYjBwNiwKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgMC4wLAorICAgIChpbnQpMHgxLjIwcDMsCisgICAgMHgxLmIwcDYsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIC0weDEucDAsCisgICAgKGludCkweDEuNjBwMywKKyAgICAweDEuYjRwNiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5wMCwKKyAgICAoaW50KTB4MS40MHAzLAorICAgIDB4MS5iNHA2LAorICAgIDB4MS42MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEucDAsCisgICAgKGludCkweDEuMjBwMywKKyAgICAweDEuYjRwNiwKKyAgICAweDEuODBwMworICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMC4wLAorICAgIChpbnQpMHgxLjYwcDMsCisgICAgMHgxLmI4cDYsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDAuMCwKKyAgICAoaW50KTB4MS40MHAzLAorICAgIDB4MS5iOHA2LAorICAgIDB4MS42MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEucDEsCisgICAgKGludCkweDEuMjBwMywKKyAgICAweDEuYjhwNiwKKyAgICAweDEuODBwMworICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEucC0yMywKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIC0weDEuODBwLTIzLAorICAgIChpbnQpMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS5wLTIzLAorICAgIChpbnQpMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgLTAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEucC0yNCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS5wLTI0LAorICAgIChpbnQpMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIC0wLjAsCisgICAgKGludCkweDEucDAsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIC0weDEuODBwLTIzLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIC0weDEucC0yMywKKyAgICAoaW50KS0weDEucDAsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIC0wLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAtMHgxLnAtMjQsCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTAuMCwKKyAgICAoaW50KS0weDEucDAsCisgICAgLTB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS5wLTIzLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAtMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTAuMCwKKyAgICAoaW50KS0weDEucDAsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLnAtMjQsCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KS0weDEucDAsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAtMHgxLjgwcC0yMywKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAtMHgxLnAtMjQsCisgICAgKGludCktMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMC4wLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAtMHgxLnAtMjMsCisgICAgKGludCktMHgxLnAwLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAwLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEucC0yNCwKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAwLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAweDEucC0yMywKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAwLjAsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgLTB4MS5wLTI0LAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgLTB4MS44MHAtMjMsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEucC0yNCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgLTB4MS5wLTIzLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLnAtMjMsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgLTAuMCwKKyAgICAoaW50KS0weDEucDAsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMC4wLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgLTAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMC4wLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAwLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgLTB4MS5wLTE0OSwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAtMHgxLnAtMTQ5LAorICAgIChpbnQpMC4wLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDAuMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEucC0xNDksCisgICAgKGludCkwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLnAtMTQ5LAorICAgIChpbnQpMC4wLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgLTB4MS5wLTE0OSwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMC4wLAorICAgIDB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgLTAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMC4wLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMC4wLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAtMC4wLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMC4wLAorICAgIChpbnQpMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuZmZmZmY4cC0zLAorICAgIChpbnQpLTB4MS4wMDAwMDRwMjIsCisgICAgLTB4MS4wMDAwMDJwMjIsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEucC0xLAorICAgIChpbnQpLTB4MS5wMjIsCisgICAgLTB4MS4wMDAwMDJwMjIsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTAuMCwKKyAgICAoaW50KS0weDEucDIyLAorICAgIC0weDEuMDAwMDAycDIyLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEucC0yLAorICAgIChpbnQpLTB4MS5wMjIsCisgICAgLTB4MS5wMjIsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0wLjAsCisgICAgKGludCktMHgxLnAyMiwKKyAgICAtMHgxLnAyMiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEucC0xLAorICAgIChpbnQpLTB4MS5wMjIsCisgICAgLTB4MS5wMjIsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgLTAuMCwKKyAgICAoaW50KS0weDEucDIyLAorICAgIC0weDEuZmZmZmZlcDIxLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEucC0yLAorICAgIChpbnQpLTB4MS5wMjIsCisgICAgLTB4MS5mZmZmZmVwMjEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgLTB4MS4wMDAwMDhwLTIsCisgICAgKGludCktMHgxLmZmZmZmOHAyMSwKKyAgICAtMHgxLmZmZmZmZXAyMSwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAwLjAsCisgICAgKGludCkweDEucDIzLAorICAgIDB4MS5mZmZmZmVwMjIsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEucC0xLAorICAgIChpbnQpMHgxLnAyMywKKyAgICAweDEuZmZmZmZlcDIyLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuZmZmZmY4cC0yLAorICAgIChpbnQpMHgxLmZmZmZmY3AyMiwKKyAgICAweDEuZmZmZmZlcDIyLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIC0weDEuZmZmZmZjcC0yLAorICAgIChpbnQpMHgxLjAwMDAwMnAyMywKKyAgICAweDEucDIzLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAwLjAsCisgICAgKGludCkweDEucDIzLAorICAgIDB4MS5wMjMsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLnAtMjMsCisgICAgKGludCkweDEuZmZmZmZjcDIyLAorICAgIDB4MS5wMjMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS5mZmZmZjhwLTIsCisgICAgKGludCkweDEuMDAwMDA0cDIzLAorICAgIDB4MS4wMDAwMDJwMjMsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDAuMCwKKyAgICAoaW50KTB4MS4wMDAwMDJwMjMsCisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAwLjAsCisgICAgKGludCkweDEucDIzLAorICAgIDB4MS4wMDAwMDJwMjMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgLTB4MS44MHAtMjMsCisgICAgKGludCktMHgxLjAwMDAwM3AyNCwKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTAuMCwKKyAgICAoaW50KS0weDEuMDAwMDAycDI0LAorICAgIC0weDEuMDAwMDAycDI0LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0wLjAsCisgICAgKGludCktMHgxLnAyNCwKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLnAtMjQsCisgICAgKGludCktMHgxLjAwMDAwMXAyNCwKKyAgICAtMHgxLnAyNCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgLTAuMCwKKyAgICAoaW50KS0weDEucDI0LAorICAgIC0weDEucDI0LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEucC0yMiwKKyAgICAoaW50KS0weDEuZmZmZmZjcDIzLAorICAgIC0weDEucDI0LAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIC0wLjAsCisgICAgKGludCktMHgxLnAyNCwKKyAgICAtMHgxLmZmZmZmZXAyMywKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTAuMCwKKyAgICAoaW50KS0weDEuZmZmZmZlcDIzLAorICAgIC0weDEuZmZmZmZlcDIzLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIC0weDEuODBwLTIyLAorICAgIChpbnQpLTB4MS5mZmZmZmFwMjMsCisgICAgLTB4MS5mZmZmZmVwMjMsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgMC4wLAorICAgIChpbnQpMHgxLnAyMiwKKyAgICAweDEuZmZmZmZlcDIxLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMHgxLnAtMiwKKyAgICAoaW50KTB4MS5wMjIsCisgICAgMHgxLmZmZmZmZXAyMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAweDEuMDAwMDA4cC0yLAorICAgIChpbnQpMHgxLmZmZmZmOHAyMSwKKyAgICAweDEuZmZmZmZlcDIxLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS5wLTIsCisgICAgKGludCkweDEucDIyLAorICAgIDB4MS5wMjIsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIDAuMCwKKyAgICAoaW50KTB4MS5wMjIsCisgICAgMHgxLnAyMiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtMHgxLnAtMSwKKyAgICAoaW50KTB4MS5wMjIsCisgICAgMHgxLnAyMiwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLmZmZmZmOHAtMywKKyAgICAoaW50KTB4MS4wMDAwMDRwMjIsCisgICAgMHgxLjAwMDAwMnAyMiwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLnAtMSwKKyAgICAoaW50KTB4MS5wMjIsCisgICAgMHgxLjAwMDAwMnAyMiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAwLjAsCisgICAgKGludCkweDEucDIyLAorICAgIDB4MS4wMDAwMDJwMjIsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMC4wLAorICAgIChpbnQpMHgxLnAyMywKKyAgICAweDEuZmZmZmZlcDIyLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLnAtMSwKKyAgICAoaW50KTB4MS5wMjMsCisgICAgMHgxLmZmZmZmZXAyMiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAtMHgxLmZmZmZmOHAtMiwKKyAgICAoaW50KTB4MS5mZmZmZmNwMjIsCisgICAgMHgxLmZmZmZmZXAyMiwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLmZmZmZmY3AtMiwKKyAgICAoaW50KTB4MS4wMDAwMDJwMjMsCisgICAgMHgxLnAyMywKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMC4wLAorICAgIChpbnQpMHgxLnAyMywKKyAgICAweDEucDIzLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIDB4MS5wLTIzLAorICAgIChpbnQpMHgxLmZmZmZmY3AyMiwKKyAgICAweDEucDIzLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIC0weDEuZmZmZmY4cC0yLAorICAgIChpbnQpMHgxLjAwMDAwNHAyMywKKyAgICAweDEuMDAwMDAycDIzLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAwLjAsCisgICAgKGludCkweDEuMDAwMDAycDIzLAorICAgIDB4MS4wMDAwMDJwMjMsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMC4wLAorICAgIChpbnQpMHgxLnAyMywKKyAgICAweDEuMDAwMDAycDIzLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0wLjAsCisgICAgKGludCkweDEucDI0LAorICAgIC0weDEuMDAwMDAycDI0LAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAtMC4wLAorICAgIChpbnQpMHgxLjAwMDAwMnAyNCwKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTB4MS44MHAtMjMsCisgICAgKGludCkweDEuMDAwMDAzcDI0LAorICAgIC0weDEuMDAwMDAycDI0LAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgLTB4MS5wLTIyLAorICAgIChpbnQpMHgxLmZmZmZmY3AyMywKKyAgICAtMHgxLnAyNCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTAuMCwKKyAgICAoaW50KTB4MS5wMjQsCisgICAgLTB4MS5wMjQsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIC0weDEucC0yNCwKKyAgICAoaW50KTB4MS4wMDAwMDFwMjQsCisgICAgLTB4MS5wMjQsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLjgwcC0yMiwKKyAgICAoaW50KTB4MS5mZmZmZmFwMjMsCisgICAgLTB4MS5mZmZmZmVwMjMsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIC0wLjAsCisgICAgKGludCkweDEuZmZmZmZlcDIzLAorICAgIC0weDEuZmZmZmZlcDIzLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAtMC4wLAorICAgIChpbnQpMHgxLnAyNCwKKyAgICAtMHgxLmZmZmZmZXAyMywKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS5wLTEyNiwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucC0xMjYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5wLTEyNiwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5wLTEyNiwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucC0xMjYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEucC0xMjYsCisgICAgKGludCkwLjAsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMC4wLAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLnAtMTQ5LAorICAgIChpbnQpMC4wLAorICAgIC0weDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMC4wLAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS5wLTE0OSwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMC4wZiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0wLjBmLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAwLjBmLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0wLjBmLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAwLjAsCisgICAgKGludCkweDEucDAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAwLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIC0wLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0wLjAsCisgICAgKGludCkweDEucDAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLnAtMTI2LAorICAgIChpbnQpMC4wLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIC0weDEucC0xMjYsCisgICAgKGludCkwLjAsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS5wLTEyNiwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS5wLTEyNiwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLnAtMTQ5LAorICAgIChpbnQpMC4wLAorICAgIC0weDEucC0xNDksCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEucC0xNDksCisgICAgKGludCkwLjAsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIC0weDEucC0xNDksCisgICAgKGludCkwLjAsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMC4wLAorICAgIChpbnQpMC4wLAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMC4wLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIC0wLjAsCisgICAgKGludCktMHgxLnAwLAorICAgIC0weDEucC0xMjYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgLTAuMCwKKyAgICAoaW50KTB4MS5wMCwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAwLjAsCisgICAgKGludCkweDEucDIzLAorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAwLjAsCisgICAgKGludCktMHgxLnAyMywKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIC0wLjAsCisgICAgKGludCktMHgxLnAyMywKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0wLjAsCisgICAgKGludCkweDEucDIzLAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS5wLTE0OSwKKyAgICAoaW50KTAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTAuMCwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEucC0xNDksCisgICAgKGludCkwLjAsCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDAuMGYsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAtMC4wZiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAwLjAsCisgICAgKGludCkwLjAsCisgICAgMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMC4wLAorICAgIChpbnQpMHgxLnAwLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAtMC4wLAorICAgIChpbnQpLTB4MS5wMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDAuMCwKKyAgICAoaW50KS0weDEucDAsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAtMC4wLAorICAgIChpbnQpMHgxLnAwLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDAuMCwKKyAgICAoaW50KTAuMCwKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMC4wLAorICAgIChpbnQpMC4wLAorICAgIDAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIC0wLjAsCisgICAgKGludCkwLjAsCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIC0weDEucDAsCisgICAgKGludCkweDEucDEsCisgICAgMHgxLjgwcDEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLnAwLAorICAgIChpbnQpLTB4MS5wMSwKKyAgICAtMHgxLjgwcDEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgLTB4MS5wMCwKKyAgICAoaW50KS0weDEucDEsCisgICAgMHgxLjgwcDEsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS5wMCwKKyAgICAoaW50KTB4MS5wMSwKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS5wMCwKKyAgICAoaW50KTB4MS5wMSwKKyAgICAweDEuNDBwMiwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAtMHgxLnAwLAorICAgIChpbnQpLTB4MS5wMSwKKyAgICAtMHgxLjQwcDIsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgMHgxLnAwLAorICAgIChpbnQpLTB4MS5wMSwKKyAgICAweDEuNDBwMiwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgLTB4MS5wMCwKKyAgICAoaW50KTB4MS5wMSwKKyAgICAtMHgxLjQwcDIsCisgICAgLTB4MS5wMQorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL3JpbnRfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL3JpbnRfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEwYWJmZjMKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvcmludF9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxMzM4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZG91YmxlLCBkb3VibGU+IGdfcmludF9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDAuMCwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS5wMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS5wMCwKKyAgICAweDEuN2ZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEucDEsCisgICAgMHgxLjhwMAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLnAxLAorICAgIDB4MS44MDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5wMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEucDEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5wMSwKKyAgICAweDEuM2ZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEucDEsCisgICAgMHgxLjRwMQorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLjgwcDEsCisgICAgMHgxLjQwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLjkwcDYsCisgICAgMHgxLjhmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjkwcDYsCisgICAgMHgxLjlwNgorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkxZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkyMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuOTRwNiwKKyAgICAweDEuOTIwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjNmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDAwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDNmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDRwOQorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLmY0ODBwOSwKKyAgICAweDEuZjQ0MDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEucDUwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEucDUwLAorICAgIDB4MS4wcDUwCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEucDUwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUwCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEucDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUwCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEucDUxLAorICAgIDB4MS4wcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEucDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEucDUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEucDUyLAorICAgIDB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MgorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLnA1MywKKyAgICAweDEuMHA1MworICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUzCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5wNTQsCisgICAgMHgxLjBwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA1NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1NAorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0wLjAsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEucDEsCisgICAgLTB4MS44MDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEucDEsCisgICAgLTB4MS44cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIC0weDEucDAsCisgICAgLTB4MS43ZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEucDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIC0weDEucDEsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEucDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIC0weDEuODBwMSwKKyAgICAtMHgxLjQwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjRwMQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjNmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS45cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjhmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgLTB4MS45NHA2LAorICAgIC0weDEuOTIwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS45MjBwNgorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTFmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDAwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0MHA5CisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mM2ZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuZjQ4MHA5LAorICAgIC0weDEuZjQ0MDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDRwOQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQzZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLnA1MCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIC0weDEucDUwLAorICAgIC0weDEuMHA1MAorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5wNTAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLnA1MSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEucDUxLAorICAgIC0weDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgLTB4MS5wNTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDUyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MgorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgLTB4MS5wNTIsCisgICAgLTB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLnA1MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwNTMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUzCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLnA1MywKKyAgICAtMHgxLjBwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwNTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUyCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDU0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1NAorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTB4MS5wNTQsCisgICAgLTB4MS4wcDU0CisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDUzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MworICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEucDMwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI5CisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEucDMwLAorICAgIDB4MS4wcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEucDMwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmY3ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjdmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjgwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmY5ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjlmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmYTBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZhMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZhMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZiZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZiZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmRmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmRmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS5wMzEsCisgICAgMHgxLmZmZmZmZmZlMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS5wMzEsCisgICAgMHgxLmZmZmZmZmZlMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEucDMxLAorICAgIDB4MS5mZmZmZmZmZTAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLnAzMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS5wMzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEucDMxLAorICAgIDB4MS4wcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMHgxLnAzMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEucDMxLAorICAgIDB4MS4wMDAwMDAwMGZmZmZlcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLnAzMSwKKyAgICAweDEuMDAwMDAwMDBmZmZmZnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAxMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS4wMDAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAwMDEwMDAwMXAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS4wMDAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAwMDEwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5mZmZmZmZlMHAzMCwKKyAgICAweDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS5mZmZmZmZlNHAzMCwKKyAgICAweDEuZmZmZmZmZTQwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLmZmZmZmZmU4cDMwLAorICAgIDB4MS5mZmZmZmZlODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEuZmZmZmZmZWNwMzAsCisgICAgMHgxLmZmZmZmZmVjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS5mZmZmZmZmMHAzMCwKKyAgICAweDEuZmZmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS5mZmZmZmZmNHAzMCwKKyAgICAweDEuZmZmZmZmZjQwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5wMzEsCisgICAgMHgxLjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEuMDAwMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMDAyMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIC0weDEucDMwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEucDMwLAorICAgIC0weDEuMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIC0weDEucDMwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyOQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmODAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmY4MDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZjgwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmY3ZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZjdmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYTAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZhMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZmEwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmY5ZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZjlmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYzAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZjMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmMwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZiZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmJmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEucDMxLAorICAgIC0weDEuZmZmZmZmZmUwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEucDMxLAorICAgIC0weDEuZmZmZmZmZmUwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIC0weDEucDMxLAorICAgIC0weDEuZmZmZmZmZmUwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZkZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmRmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEucDMxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEucDMxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEucDMxLAorICAgIC0weDEuMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIC0weDEucDMxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEucDMxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIC0weDEuMDAwMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDAwMTAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS4wMDAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMDAxMDAwMDFwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAxMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEucDMxLAorICAgIC0weDEuMDAwMDAwMDBmZmZmZnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIC0weDEucDMxLAorICAgIC0weDEuMDAwMDAwMDBmZmZmZXAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDYxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDYxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLnA2MiwKKyAgICAweDEuMHA2MgorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA2MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2MgorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIDB4MS4wMDAwMDAwMDAwMDAyMHA2MiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnA2MgorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHA2MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA2MgorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA2MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2MgorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS5wNjMsCisgICAgMHgxLjBwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuMDAwMDAwMDAwMDAwMjBwNjMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwNjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAweDEucDY0LAorICAgIDB4MS4wcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDY0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcDY0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTB4MS4wMDAwMDAwMDAwMDAyMHA2MiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDYyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2MgorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0weDEucDYyLAorICAgIC0weDEuMHA2MgorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwNjEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHA2MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDIwcDYzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnA2MworICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwNjMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTB4MS5wNjMsCisgICAgLTB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA2MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDYyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXA2MgorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEuMDAwMDAwMDAwMDAwMjBwNjQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA2NCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAtMHgxLnA2NCwKKyAgICAtMHgxLjBwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDYzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2MworICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwNjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLnA2MiwKKyAgICAweDEuMHA2MgorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS5wNjMsCisgICAgMHgxLjBwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLnA2MiwKKyAgICAtMHgxLjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMHgxLnA2MywKKyAgICAtMHgxLjBwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZiZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIC0weDEucDMxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzMQorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEucDMxLAorICAgIC0weDEuMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIC0weDEucDMxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS5wMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLnAyLAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAweDEucDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS5wMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLnAzLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAweDEucDMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMworICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS5wNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMHgxLnA0LAorICAgIDB4MS4wcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAweDEucDQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5wNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLnA1LAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAweDEucDUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS5wNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgMHgxLnA2LAorICAgIDB4MS4wcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAweDEucDYsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS5wNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLnA3LAorICAgIDB4MS4wcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEucDcsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNworICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDB4MS5wOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA3CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMHgxLnA4LAorICAgIDB4MS4wcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEucDgsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwOAorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS5wOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLnA5LAorICAgIDB4MS4wcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEucDksCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS5wMTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS5wMTAsCisgICAgMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEucDEwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLnAxMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS5wMTEsCisgICAgMHgxLjBwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEucDExLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgMHgxLnAxMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS5wMTIsCisgICAgMHgxLjBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLnAyLAorICAgIDB4MS4xZmZmZmZmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEucDIsCisgICAgMHgxLjJwMgorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS40MHAyLAorICAgIDB4MS4yMDAwMDAwMDAwMDAxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEucDMsCisgICAgMHgxLjBmZmZmZmZmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS5wMywKKyAgICAweDEuMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLjIwcDMsCisgICAgMHgxLjEwMDAwMDAwMDAwMDFwMworICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDB4MS5wNCwKKyAgICAweDEuMDdmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMHgxLnA0LAorICAgIDB4MS4wODBwNAorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS4xMHA0LAorICAgIDB4MS4wODAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEucDUsCisgICAgMHgxLjAzZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS5wNSwKKyAgICAweDEuMDQwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuMDhwNSwKKyAgICAweDEuMDQwMDAwMDAwMDAwMXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLnA2LAorICAgIDB4MS4wMWZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAweDEucDYsCisgICAgMHgxLjAyMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLjA0cDYsCisgICAgMHgxLjAyMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS5wNywKKyAgICAweDEuMDBmZmZmZmZmZmZmZnA3CisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLnA3LAorICAgIDB4MS4wMTBwNworICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS4wMnA3LAorICAgIDB4MS4wMTAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEucDgsCisgICAgMHgxLjAwN2ZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS5wOCwKKyAgICAweDEuMDA4cDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuMDFwOCwKKyAgICAweDEuMDA4MDAwMDAwMDAwMXA4CisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgMHgxLnA5LAorICAgIDB4MS4wMDNmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEucDksCisgICAgMHgxLjAwNHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLjAwODBwOSwKKyAgICAweDEuMDA0MDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAxZmZmZmZmZmZmZnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS4wMDIwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjAwNWZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuMDA4MHAxMCwKKyAgICAweDEuMDA2cDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjAwODBwMTAsCisgICAgMHgxLjAwNjAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEucDExLAorICAgIDB4MS4wMDBmZmZmZmZmZmZmcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAxcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLjAwMjBwMTEsCisgICAgMHgxLjAwMTAwMDAwMDAwMDFwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDA3ZmZmZmZmZmZmcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLnAxMiwKKyAgICAweDEuMDAwODBwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuMDAxMHAxMiwKKyAgICAweDEuMDAwODAwMDAwMDAwMXAxMgorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgMHgxLjgwcDEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIC0weDEuODBwMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIDB4MS5wMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIDB4MS5wMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgMHgxLnAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIDAuMCwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzA3CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLnAxLAorICAgIDB4MS44cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAtMHgxLnAxLAorICAgIC0weDEuOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMHgxLnAxLAorICAgIDB4MS40cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAtMHgxLnAxLAorICAgIC0weDEuNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgMC4wLAorICAgIDB4MS5mZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDAuMCwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS5wMSwKKyAgICAweDEuODAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIDB4MS5wMCwKKyAgICAweDEuN2ZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIC0weDEucDEsCisgICAgLTB4MS44MDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjdmZmZmcDAKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9yaW50Zl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvcmludGZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFlY2E4MzAKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvcmludGZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTM1OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGZsb2F0LCBmbG9hdD4gZ19yaW50Zl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0wLjAsCisgICAgLTB4MS42N2U5ZDhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLjAwMDAwOHAyMSwKKyAgICAweDEuMDAwMDA2cDIxCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS5mZmZkNDhwMjEsCisgICAgMHgxLmZmZmQ0NnAyMQorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuZmZmZmY4cDIxLAorICAgIDB4MS5mZmZmZjZwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMC4wLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAwLjAsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEucDAsCisgICAgMHgxLjdmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEucDEsCisgICAgMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5wMSwKKyAgICAweDEuODAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS5wMSwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS5wMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS5wMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5wMSwKKyAgICAweDEuM2ZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS5wMSwKKyAgICAweDEuNDBwMQorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLjgwcDEsCisgICAgMHgxLjQwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOGZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS45MHA2LAorICAgIDB4MS45MHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS45MHA2LAorICAgIDB4MS45MWZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS45NHA2LAorICAgIDB4MS45MjAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLmY0cDksCisgICAgMHgxLmYzZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjRwOQorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0MDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjQzZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS5mNDgwcDksCisgICAgMHgxLmY0NDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEucDIxLAorICAgIDB4MS5mZmZmZmVwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS5wMjEsCisgICAgMHgxLnAyMQorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLnAyMSwKKyAgICAweDEuMDAwMDAycDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEucDIyLAorICAgIDB4MS5mZmZmZmVwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5wMjIsCisgICAgMHgxLnAyMgorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLnAyMiwKKyAgICAweDEuMDAwMDAycDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEucDIzLAorICAgIDB4MS5mZmZmZmVwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5wMjMsCisgICAgMHgxLnAyMworICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEuMDAwMDAycDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuZmZmZmZlcDIzLAorICAgIDB4MS5mZmZmZmVwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5wMjQsCisgICAgMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLjAwMDAwMnAyNCwKKyAgICAweDEuMDAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuZmZmZmZlcDI0LAorICAgIDB4MS5mZmZmZmVwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5wMjUsCisgICAgMHgxLnAyNQorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgMHgxLjAwMDAwMnAyNSwKKyAgICAweDEuMDAwMDAycDI1CisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgLTAuMCwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEucDEsCisgICAgLTB4MS44MDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEucDAsCisgICAgLTB4MS43ZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLnAxLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIC0weDEucDEsCisgICAgLTB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS44MHAxLAorICAgIC0weDEuNDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEucDEsCisgICAgLTB4MS40MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAtMHgxLnAxLAorICAgIC0weDEuM2ZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS45MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS44ZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS45NHA2LAorICAgIC0weDEuOTIwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkxZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDAwMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjRwOQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjNmZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuZjQ4MHA5LAorICAgIC0weDEuZjQ0MDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0NDBwOQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQzZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEucDIxLAorICAgIC0weDEuMDAwMDAycDIxCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLnAyMSwKKyAgICAtMHgxLnAyMQorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgLTB4MS5wMjEsCisgICAgLTB4MS5mZmZmZmVwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEucDIyLAorICAgIC0weDEuMDAwMDAycDIyCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLnAyMiwKKyAgICAtMHgxLnAyMgorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS5wMjIsCisgICAgLTB4MS5mZmZmZmVwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIC0weDEuMDAwMDAycDIzLAorICAgIC0weDEuMDAwMDAycDIzCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLnAyMywKKyAgICAtMHgxLnAyMworICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTB4MS5wMjMsCisgICAgLTB4MS5mZmZmZmVwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuMDAwMDAycDI0LAorICAgIC0weDEuMDAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLnAyNCwKKyAgICAtMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS5mZmZmZmVwMjMsCisgICAgLTB4MS5mZmZmZmVwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIC0weDEuMDAwMDAycDI1LAorICAgIC0weDEuMDAwMDAycDI1CisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLnAyNSwKKyAgICAtMHgxLnAyNQorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgLTB4MS5mZmZmZmVwMjQsCisgICAgLTB4MS5mZmZmZmVwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5mZmZmZmVwMjksCisgICAgMHgxLmZmZmZmZXAyOQorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLnAzMCwKKyAgICAweDEucDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEuMDAwMDAycDMwLAorICAgIDB4MS4wMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLmZmZmZmZXAzMCwKKyAgICAweDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuMDAwMDA0cDMxLAorICAgIDB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLjAwMDAwMnAzMCwKKyAgICAtMHgxLjAwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEucDMwLAorICAgIC0weDEucDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTB4MS5mZmZmZmVwMjksCisgICAgLTB4MS5mZmZmZmVwMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS5mZmZmZmNwNjEsCisgICAgMHgxLmZmZmZmY3A2MQorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIDB4MS5mZmZmZmVwNjEsCisgICAgMHgxLmZmZmZmZXA2MQorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS5wNjIsCisgICAgMHgxLnA2MgorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIDB4MS4wMDAwMDJwNjIsCisgICAgMHgxLjAwMDAwMnA2MgorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS4wMDAwMDRwNjIsCisgICAgMHgxLjAwMDAwNHA2MgorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIDB4MS5mZmZmZmNwNjIsCisgICAgMHgxLmZmZmZmY3A2MgorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS5mZmZmZmVwNjIsCisgICAgMHgxLmZmZmZmZXA2MgorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS5wNjMsCisgICAgMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS4wMDAwMDJwNjMsCisgICAgMHgxLjAwMDAwMnA2MworICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIDB4MS4wMDAwMDRwNjMsCisgICAgMHgxLjAwMDAwNHA2MworICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS5mZmZmZmNwNjMsCisgICAgMHgxLmZmZmZmY3A2MworICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIDB4MS5mZmZmZmVwNjMsCisgICAgMHgxLmZmZmZmZXA2MworICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS5wNjQsCisgICAgMHgxLnA2NAorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIDB4MS4wMDAwMDJwNjQsCisgICAgMHgxLjAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS4wMDAwMDRwNjQsCisgICAgMHgxLjAwMDAwNHA2NAorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuMDAwMDA0cDYyLAorICAgIC0weDEuMDAwMDA0cDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgLTB4MS4wMDAwMDJwNjIsCisgICAgLTB4MS4wMDAwMDJwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLnA2MiwKKyAgICAtMHgxLnA2MgorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0weDEuZmZmZmZlcDYxLAorICAgIC0weDEuZmZmZmZlcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS5mZmZmZmNwNjEsCisgICAgLTB4MS5mZmZmZmNwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAtMHgxLjAwMDAwNHA2MywKKyAgICAtMHgxLjAwMDAwNHA2MworICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuMDAwMDAycDYzLAorICAgIC0weDEuMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTB4MS5wNjMsCisgICAgLTB4MS5wNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLmZmZmZmZXA2MiwKKyAgICAtMHgxLmZmZmZmZXA2MgorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0weDEuZmZmZmZjcDYyLAorICAgIC0weDEuZmZmZmZjcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgLTB4MS4wMDAwMDRwNjQsCisgICAgLTB4MS4wMDAwMDRwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAtMHgxLjAwMDAwMnA2NCwKKyAgICAtMHgxLjAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0weDEucDY0LAorICAgIC0weDEucDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgLTB4MS5mZmZmZmVwNjMsCisgICAgLTB4MS5mZmZmZmVwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAtMHgxLmZmZmZmY3A2MywKKyAgICAtMHgxLmZmZmZmY3A2MworICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS5wNjIsCisgICAgMHgxLnA2MgorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDB4MS5wNjMsCisgICAgMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIC0weDEucDYyLAorICAgIC0weDEucDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgLTB4MS5wNjMsCisgICAgLTB4MS5wNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAweDEucDIsCisgICAgMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgMHgxLnAyLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS5wMiwKKyAgICAweDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAweDEucDMsCisgICAgMHgxLmZmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMHgxLnAzLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS5wMywKKyAgICAweDEuMDAwMDAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAweDEucDQsCisgICAgMHgxLmZmZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgMHgxLnA0LAorICAgIDB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS5wNCwKKyAgICAweDEuMDAwMDAycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAweDEucDUsCisgICAgMHgxLmZmZmZmZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgMHgxLnA1LAorICAgIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIDB4MS5wNSwKKyAgICAweDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEucDYsCisgICAgMHgxLmZmZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgMHgxLnA2LAorICAgIDB4MS5wNgorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS5wNiwKKyAgICAweDEuMDAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEucDcsCisgICAgMHgxLmZmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMHgxLnA3LAorICAgIDB4MS5wNworICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDB4MS5wNywKKyAgICAweDEuMDAwMDAycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEucDgsCisgICAgMHgxLmZmZmZmZXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgMHgxLnA4LAorICAgIDB4MS5wOAorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS5wOCwKKyAgICAweDEuMDAwMDAycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEucDksCisgICAgMHgxLmZmZmZmZXA4CisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLnA5LAorICAgIDB4MS5wOQorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS5wOSwKKyAgICAweDEuMDAwMDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEucDEwLAorICAgIDB4MS5mZmZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS5wMTAsCisgICAgMHgxLnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMDAwMnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS5wMTEsCisgICAgMHgxLmZmZmZmZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDB4MS5wMTEsCisgICAgMHgxLnAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDB4MS5wMTEsCisgICAgMHgxLjAwMDAwMnAxMQorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS5wMTIsCisgICAgMHgxLmZmZmZmZXAxMQorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS5wMTIsCisgICAgMHgxLnAxMgorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS5wMTIsCisgICAgMHgxLjAwMDAwMnAxMgorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS5wMiwKKyAgICAweDEuMWZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEucDIsCisgICAgMHgxLjIwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAweDEuNDBwMiwKKyAgICAweDEuMjAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEucDMsCisgICAgMHgxLjBmZmZmZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLnAzLAorICAgIDB4MS4xMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgMHgxLjIwcDMsCisgICAgMHgxLjEwMDAwMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLnA0LAorICAgIDB4MS4wN2ZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS5wNCwKKyAgICAweDEuMDhwNAorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS4xMHA0LAorICAgIDB4MS4wODAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS5wNSwKKyAgICAweDEuMDNmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEucDUsCisgICAgMHgxLjA0cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuMDhwNSwKKyAgICAweDEuMDQwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEucDYsCisgICAgMHgxLjAxZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLnA2LAorICAgIDB4MS4wMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgMHgxLjA0cDYsCisgICAgMHgxLjAyMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLnA3LAorICAgIDB4MS4wMGZmZmVwNworICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS5wNywKKyAgICAweDEuMDFwNworICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS4wMnA3LAorICAgIDB4MS4wMTAwMDJwNworICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS5wOCwKKyAgICAweDEuMDA3ZmZlcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEucDgsCisgICAgMHgxLjAwODBwOAorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS4wMXA4LAorICAgIDB4MS4wMDgwMDJwOAorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS5wOSwKKyAgICAweDEuMDAzZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEucDksCisgICAgMHgxLjAwNDBwOQorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS4wMDgwcDksCisgICAgMHgxLjAwNDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAxZmZlcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAyMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS4wMDIwMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDA1ZmZlcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLjAwODBwMTAsCisgICAgMHgxLjAwNjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAweDEuMDA4MHAxMCwKKyAgICAweDEuMDA2MDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAwZmZlcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAxMHAxMQorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIDB4MS4wMDIwcDExLAorICAgIDB4MS4wMDEwMDJwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDA3ZmVwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDA4cDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLjAwMTBwMTIsCisgICAgMHgxLjAwMDgwMnAxMgorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIC0weDEuZmZmZmZjcDEyNywKKyAgICAtMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEuODBwMSwKKyAgICAweDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIDB4MS5wMSwKKyAgICAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAtMHgxLnAxLAorICAgIC0weDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIC0weDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIDB4MS5wMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIDB4MS5wMCwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIDAuMCwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAwLjAsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDAuMCwKKyAgICAweDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgMC4wLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIC0wLjAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIDAuMCwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgLTAuMCwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDB4MS5wMSwKKyAgICAweDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIC0weDEucDEsCisgICAgLTB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgMHgxLnAxLAorICAgIDB4MS40MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjQwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDAuMCwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgLTAuMCwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAweDEucDEsCisgICAgMHgxLjgwMDAxMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgMHgxLnAwLAorICAgIDB4MS43ZmZmZjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIC0weDEucDEsCisgICAgLTB4MS44MDAwMTBwMAorICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIC0weDEucDAsCisgICAgLTB4MS43ZmZmZjBwMAorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL3JvdW5kX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9yb3VuZF9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjJiODUwMgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9yb3VuZF9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxMzUwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZG91YmxlLCBkb3VibGU+IGdfcm91bmRfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLjAwMjBwMTEsCisgICAgMHgxLjAwMXAxMQorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAweDEuODBwMSwKKyAgICAweDEuNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS5wMCwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS5wMCwKKyAgICAweDEuN2ZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEucDEsCisgICAgMHgxLjhwMAorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLnAxLAorICAgIDB4MS44MDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5wMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEucDEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS5wMSwKKyAgICAweDEuM2ZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuODBwMSwKKyAgICAweDEuNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuODBwMSwKKyAgICAweDEuNDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOGZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTFmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuOTRwNiwKKyAgICAweDEuOTIwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS45NHA2LAorICAgIDB4MS45MjAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5mNHA5LAorICAgIDB4MS5mM2ZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDBwOQorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0MDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0M2ZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLmY0ODBwOSwKKyAgICAweDEuZjQ0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5mNDgwcDksCisgICAgMHgxLmY0NDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLnA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0OQorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLnA1MCwKKyAgICAweDEuMHA1MAorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLnA1MCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MAorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLnA1MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLnA1MSwKKyAgICAweDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcDUxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEucDUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEucDUyLAorICAgIDB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MgorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLnA1MywKKyAgICAweDEuMHA1MworICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUzCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS5wNTQsCisgICAgMHgxLjBwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA1NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1NAorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEucDAsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEucDEsCisgICAgLTB4MS44MDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIC0weDEucDEsCisgICAgLTB4MS44cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEucDAsCisgICAgLTB4MS43ZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIC0weDEucDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEucDEsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEucDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuODBwMSwKKyAgICAtMHgxLjQwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgLTB4MS44MHAxLAorICAgIC0weDEuNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLnAxLAorICAgIC0weDEuM2ZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS45MDAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjlwNgorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOGZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLjk0cDYsCisgICAgLTB4MS45MjAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIC0weDEuOTRwNiwKKyAgICAtMHgxLjkyMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS45MWZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0MDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmYzZmZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS5mNDgwcDksCisgICAgLTB4MS5mNDQwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIC0weDEuZjQ4MHA5LAorICAgIC0weDEuZjQ0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0M2ZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgLTB4MS5wNTAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMHgxLnA1MCwKKyAgICAtMHgxLjBwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEucDUwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA0OQorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgLTB4MS4wMDAwMDAwMDAwMDAyMHA1MSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEucDUxLAorICAgIC0weDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS5wNTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUwCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDUyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MgorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS5wNTIsCisgICAgLTB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAtMHgxLnA1MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwNTMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUzCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAtMHgxLnA1MywKKyAgICAtMHgxLjBwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwNTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUyCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDU0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1NAorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS5wNTQsCisgICAgLTB4MS4wcDU0CisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDUzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MworICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEucDMwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI5CisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAweDEucDMwLAorICAgIDB4MS4wcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEucDMwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmY3ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjdmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjgwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmOWZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmOWZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYTBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZhMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZhMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZiZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZiZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmRmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmRmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS5wMzEsCisgICAgMHgxLmZmZmZmZmZlMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS5wMzEsCisgICAgMHgxLmZmZmZmZmZlMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEucDMxLAorICAgIDB4MS5mZmZmZmZmZTAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMHgxLnAzMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS5wMzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEucDMxLAorICAgIDB4MS4wcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLnAzMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzMQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEucDMxLAorICAgIDB4MS4wMDAwMDAwMGZmZmZlcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLnAzMSwKKyAgICAweDEuMDAwMDAwMDBmZmZmZnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS4wMDAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAwMDEwcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgMHgxLjAwMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDAwMTAwMDAxcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLjAwMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDAwMTAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLmZmZmZmZmUwcDMwLAorICAgIDB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLmZmZmZmZmU0cDMwLAorICAgIDB4MS5mZmZmZmZlNDBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAweDEuZmZmZmZmZThwMzAsCisgICAgMHgxLmZmZmZmZmU4MHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS5mZmZmZmZlY3AzMCwKKyAgICAweDEuZmZmZmZmZWMwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLmZmZmZmZmYwcDMwLAorICAgIDB4MS5mZmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLmZmZmZmZmY0cDMwLAorICAgIDB4MS5mZmZmZmZmNDBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmY4MHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLnAzMSwKKyAgICAweDEuMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS4wMDAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAwMDIwcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS5wMzAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTB4MS5wMzAsCisgICAgLTB4MS4wcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS5wMzAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDI5CisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmY4MDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZjgwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZjdmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmN2ZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZhMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmEwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYTBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZjlmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmOWZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZjMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmMwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYzBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmJmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5mZmZmZmZmZTAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5mZmZmZmZmZTAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5mZmZmZmZmZTBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmRmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmZGZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS4wMDAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMDAxMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLjAwMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAwMDEwMDAwMXAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuMDAwMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDAwMTBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwZmZmZmZwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwZmZmZmVwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHA2MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA2MQorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA2MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2MQorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS5wNjIsCisgICAgMHgxLjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuMDAwMDAwMDAwMDAwMjBwNjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwNjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEucDYzLAorICAgIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDYzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcDYzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDYzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDYzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLnA2NCwKKyAgICAweDEuMHA2NAorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA2NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2NAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS4wMDAwMDAwMDAwMDAyMHA2NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEuMDAwMDAwMDAwMDAwMjBwNjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA2MiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMHgxLnA2MiwKKyAgICAtMHgxLjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDYxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2MQorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwNjEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgLTB4MS4wMDAwMDAwMDAwMDAyMHA2MywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDYzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2MworICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEucDYzLAorICAgIC0weDEuMHA2MworICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwNjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHA2MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDIwcDY0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnA2NAorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwNjQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgLTB4MS5wNjQsCisgICAgLTB4MS4wcDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA2MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDYzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXA2MworICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDB4MS5wNjIsCisgICAgMHgxLjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEucDYzLAorICAgIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgLTB4MS5wNjIsCisgICAgLTB4MS4wcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS5wNjMsCisgICAgLTB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYzBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEucDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDB4MS5wMiwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLnAyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAweDEucDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS5wMywKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLnAzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAweDEucDQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS5wNCwKKyAgICAweDEuMHA0CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLnA0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAweDEucDUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNAorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS5wNSwKKyAgICAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLnA1LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEucDYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIDB4MS5wNiwKKyAgICAweDEuMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLnA2LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEucDcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS5wNywKKyAgICAweDEuMHA3CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLnA3LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEucDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNworICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIDB4MS5wOCwKKyAgICAweDEuMHA4CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLnA4LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEucDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS5wOSwKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLnA5LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEucDEwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAweDEucDEwLAorICAgIDB4MS4wcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS5wMTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEucDExLAorICAgIDB4MS4wcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDB4MS5wMTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEucDEyLAorICAgIDB4MS4wcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMHgxLnAxMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMgorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS5wMiwKKyAgICAweDEuMWZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLjQwcDIsCisgICAgMHgxLjJwMgorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS40MHAyLAorICAgIDB4MS4yMDAwMDAwMDAwMDAxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEucDMsCisgICAgMHgxLjBmZmZmZmZmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS4yMHAzLAorICAgIDB4MS4xcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuMjBwMywKKyAgICAweDEuMTAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLnA0LAorICAgIDB4MS4wN2ZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEuMTBwNCwKKyAgICAweDEuMDgwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuMTBwNCwKKyAgICAweDEuMDgwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLnA1LAorICAgIDB4MS4wM2ZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAweDEuMDhwNSwKKyAgICAweDEuMDQwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuMDhwNSwKKyAgICAweDEuMDQwMDAwMDAwMDAwMXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLnA2LAorICAgIDB4MS4wMWZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuMDRwNiwKKyAgICAweDEuMDIwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuMDRwNiwKKyAgICAweDEuMDIwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLnA3LAorICAgIDB4MS4wMGZmZmZmZmZmZmZmcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuMDJwNywKKyAgICAweDEuMDEwcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuMDJwNywKKyAgICAweDEuMDEwMDAwMDAwMDAwMXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgMHgxLnA4LAorICAgIDB4MS4wMDdmZmZmZmZmZmZmcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuMDFwOCwKKyAgICAweDEuMDA4cDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEuMDFwOCwKKyAgICAweDEuMDA4MDAwMDAwMDAwMXA4CisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLnA5LAorICAgIDB4MS4wMDNmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEuMDA4MHA5LAorICAgIDB4MS4wMDRwOQorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS4wMDgwcDksCisgICAgMHgxLjAwNDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMWZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjAwMjAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDA1ZmZmZmZmZmZmZnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS4wMDgwcDEwLAorICAgIDB4MS4wMDZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuMDA4MHAxMCwKKyAgICAweDEuMDA2MDAwMDAwMDAwMXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS5wMTEsCisgICAgMHgxLjAwMGZmZmZmZmZmZmZwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAweDEuMDAyMHAxMSwKKyAgICAweDEuMDAxcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjAwMjBwMTEsCisgICAgMHgxLjAwMTAwMDAwMDAwMDFwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDA3ZmZmZmZmZmZmcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMHgxLjAwMTBwMTIsCisgICAgMHgxLjAwMDgwcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgMHgxLjAwMTBwMTIsCisgICAgMHgxLjAwMDgwMDAwMDAwMDFwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDB4MS44MHAxLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEucDEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIC0weDEucDEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIC0weDEucDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIDB4MS5wMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIC0weDEucDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIDB4MS5wMSwKKyAgICAweDEuOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjhwMAorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDB4MS44MHAxLAorICAgIDB4MS40cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS40cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIC0weDEucDAsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgMHgxLnAxLAorICAgIDB4MS44MDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgMHgxLnAwLAorICAgIDB4MS43ZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjgwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAtMHgxLnAwLAorICAgIC0weDEuN2ZmZmZwMAorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL3JvdW5kZl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvcm91bmRmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NjdjZGVmCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL3JvdW5kZl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSwxMzM4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZmxvYXQsIGZsb2F0PiBnX3JvdW5kZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0wLjAsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDAuMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLnAwLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS5wMCwKKyAgICAweDEuN2ZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5wMSwKKyAgICAweDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLnAxLAorICAgIDB4MS44MDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLnAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLnAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLnAxLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLnAxLAorICAgIDB4MS4zZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLjgwcDEsCisgICAgMHgxLjQwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS44MHAxLAorICAgIDB4MS40MDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLjkwcDYsCisgICAgMHgxLjhmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTBwNgorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTFmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS45NHA2LAorICAgIDB4MS45MnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuOTRwNiwKKyAgICAweDEuOTIwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mM2ZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDAwMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0M2ZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuZjQ4MHA5LAorICAgIDB4MS5mNDQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS5mNDgwcDksCisgICAgMHgxLmY0NDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEucDIxLAorICAgIDB4MS5mZmZmZmVwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS5wMjEsCisgICAgMHgxLnAyMQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLnAyMSwKKyAgICAweDEuMDAwMDAycDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEucDIyLAorICAgIDB4MS5mZmZmZmVwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS5wMjIsCisgICAgMHgxLnAyMgorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLjAwMDAwNHAyMiwKKyAgICAweDEuMDAwMDAycDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAweDEucDIzLAorICAgIDB4MS5mZmZmZmVwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS5wMjMsCisgICAgMHgxLnAyMworICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLjAwMDAwMnAyMywKKyAgICAweDEuMDAwMDAycDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuZmZmZmZlcDIzLAorICAgIDB4MS5mZmZmZmVwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS5wMjQsCisgICAgMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjAwMDAwMnAyNCwKKyAgICAweDEuMDAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuZmZmZmZlcDI0LAorICAgIDB4MS5mZmZmZmVwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5wMjUsCisgICAgMHgxLnAyNQorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLjAwMDAwMnAyNSwKKyAgICAweDEuMDAwMDAycDI1CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEucDEsCisgICAgLTB4MS44MDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIC0weDEucDAsCisgICAgLTB4MS43ZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLnAxLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEucDEsCisgICAgLTB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgLTB4MS44MHAxLAorICAgIC0weDEuNDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEuODBwMSwKKyAgICAtMHgxLjQwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEucDEsCisgICAgLTB4MS4zZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTAwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjhmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAtMHgxLjk0cDYsCisgICAgLTB4MS45MjAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgLTB4MS45NHA2LAorICAgIC0weDEuOTJwNgorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTFmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0MDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNHA5CisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mM2ZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgLTB4MS5mNDgwcDksCisgICAgLTB4MS5mNDQwMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5mNDgwcDksCisgICAgLTB4MS5mNDQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0M2ZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLnAyMSwKKyAgICAtMHgxLjAwMDAwMnAyMQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS5wMjEsCisgICAgLTB4MS5wMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEucDIxLAorICAgIC0weDEuZmZmZmZlcDIwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLjAwMDAwNHAyMiwKKyAgICAtMHgxLjAwMDAwMnAyMgorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS5wMjIsCisgICAgLTB4MS5wMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEucDIyLAorICAgIC0weDEuZmZmZmZlcDIxCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLjAwMDAwMnAyMywKKyAgICAtMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgLTB4MS5wMjMsCisgICAgLTB4MS5wMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEucDIzLAorICAgIC0weDEuZmZmZmZlcDIyCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgICAtMHgxLjAwMDAwMnAyNAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS5wMjQsCisgICAgLTB4MS5wMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIC0weDEuZmZmZmZlcDIzLAorICAgIC0weDEuZmZmZmZlcDIzCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLjAwMDAwMnAyNSwKKyAgICAtMHgxLjAwMDAwMnAyNQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTB4MS5wMjUsCisgICAgLTB4MS5wMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuZmZmZmZlcDI0LAorICAgIC0weDEuZmZmZmZlcDI0CisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuZmZmZmZlcDI5LAorICAgIDB4MS5mZmZmZmVwMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS5wMzAsCisgICAgMHgxLnAzMAorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLjAwMDAwMnAzMCwKKyAgICAweDEuMDAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAweDEuMDAwMDAycDMxLAorICAgIDB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuZmZmZmZlcDMwLAorICAgIDB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS4wMDAwMDRwMzEsCisgICAgMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIC0weDEuMDAwMDAycDMwLAorICAgIC0weDEuMDAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS5wMzAsCisgICAgLTB4MS5wMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAtMHgxLmZmZmZmZXAyOSwKKyAgICAtMHgxLmZmZmZmZXAyOQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgMHgxLmZmZmZmY3A2MSwKKyAgICAweDEuZmZmZmZjcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLmZmZmZmZXA2MSwKKyAgICAweDEuZmZmZmZlcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgMHgxLnA2MiwKKyAgICAweDEucDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLjAwMDAwMnA2MiwKKyAgICAweDEuMDAwMDAycDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLjAwMDAwNHA2MiwKKyAgICAweDEuMDAwMDA0cDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLmZmZmZmY3A2MiwKKyAgICAweDEuZmZmZmZjcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLmZmZmZmZXA2MiwKKyAgICAweDEuZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLnA2MywKKyAgICAweDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjAwMDAwMnA2MywKKyAgICAweDEuMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjAwMDAwNHA2MywKKyAgICAweDEuMDAwMDA0cDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLmZmZmZmY3A2MywKKyAgICAweDEuZmZmZmZjcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgMHgxLmZmZmZmZXA2MywKKyAgICAweDEuZmZmZmZlcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLnA2NCwKKyAgICAweDEucDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLjAwMDAwMnA2NCwKKyAgICAweDEuMDAwMDAycDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLjAwMDAwNHA2NCwKKyAgICAweDEuMDAwMDA0cDY0CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgLTB4MS4wMDAwMDRwNjIsCisgICAgLTB4MS4wMDAwMDRwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAtMHgxLjAwMDAwMnA2MiwKKyAgICAtMHgxLjAwMDAwMnA2MgorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0weDEucDYyLAorICAgIC0weDEucDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5mZmZmZmVwNjEsCisgICAgLTB4MS5mZmZmZmVwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAtMHgxLmZmZmZmY3A2MSwKKyAgICAtMHgxLmZmZmZmY3A2MQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuMDAwMDA0cDYzLAorICAgIC0weDEuMDAwMDA0cDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgLTB4MS4wMDAwMDJwNjMsCisgICAgLTB4MS4wMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLnA2MywKKyAgICAtMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0weDEuZmZmZmZlcDYyLAorICAgIC0weDEuZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS5mZmZmZmNwNjIsCisgICAgLTB4MS5mZmZmZmNwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAtMHgxLjAwMDAwNHA2NCwKKyAgICAtMHgxLjAwMDAwNHA2NAorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuMDAwMDAycDY0LAorICAgIC0weDEuMDAwMDAycDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTB4MS5wNjQsCisgICAgLTB4MS5wNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLmZmZmZmZXA2MywKKyAgICAtMHgxLmZmZmZmZXA2MworICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0weDEuZmZmZmZjcDYzLAorICAgIC0weDEuZmZmZmZjcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLnA2MiwKKyAgICAweDEucDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLnA2MywKKyAgICAweDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS5wNjIsCisgICAgLTB4MS5wNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMHgxLnA2MywKKyAgICAtMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDB4MS5wMzEsCisgICAgMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS5wMiwKKyAgICAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAweDEucDIsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgMHgxLnAyLAorICAgIDB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS5wMywKKyAgICAweDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAweDEucDMsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLnAzLAorICAgIDB4MS4wMDAwMDJwMworICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS5wNCwKKyAgICAweDEuZmZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEucDQsCisgICAgMHgxLnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLnA0LAorICAgIDB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5wNSwKKyAgICAweDEuZmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAweDEucDUsCisgICAgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLnA1LAorICAgIDB4MS4wMDAwMDJwNQorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS5wNiwKKyAgICAweDEuZmZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEucDYsCisgICAgMHgxLnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLnA2LAorICAgIDB4MS4wMDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS5wNywKKyAgICAweDEuZmZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAweDEucDcsCisgICAgMHgxLnA3CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLnA3LAorICAgIDB4MS4wMDAwMDJwNworICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDB4MS5wOCwKKyAgICAweDEuZmZmZmZlcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEucDgsCisgICAgMHgxLnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLnA4LAorICAgIDB4MS4wMDAwMDJwOAorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS5wOSwKKyAgICAweDEuZmZmZmZlcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAweDEucDksCisgICAgMHgxLnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLnA5LAorICAgIDB4MS4wMDAwMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS5wMTAsCisgICAgMHgxLmZmZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLnAxMCwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLnAxMSwKKyAgICAweDEuZmZmZmZlcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgMHgxLnAxMSwKKyAgICAweDEucDExCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAwMDAycDExCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgMHgxLnAxMiwKKyAgICAweDEuZmZmZmZlcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgMHgxLnAxMiwKKyAgICAweDEucDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLnAxMiwKKyAgICAweDEuMDAwMDAycDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLnAyLAorICAgIDB4MS4xZmZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDB4MS40MHAyLAorICAgIDB4MS4yMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMHgxLjQwcDIsCisgICAgMHgxLjIwMDAwMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLnAzLAorICAgIDB4MS4wZmZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS4yMHAzLAorICAgIDB4MS4xMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLjIwcDMsCisgICAgMHgxLjEwMDAwMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLnA0LAorICAgIDB4MS4wN2ZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS4xMHA0LAorICAgIDB4MS4wOHA0CisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgMHgxLjEwcDQsCisgICAgMHgxLjA4MDAwMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLnA1LAorICAgIDB4MS4wM2ZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS4wOHA1LAorICAgIDB4MS4wNHA1CisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLjA4cDUsCisgICAgMHgxLjA0MDAwMnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLnA2LAorICAgIDB4MS4wMWZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS4wNHA2LAorICAgIDB4MS4wMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLjA0cDYsCisgICAgMHgxLjAyMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLnA3LAorICAgIDB4MS4wMGZmZmVwNworICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS4wMnA3LAorICAgIDB4MS4wMXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLjAycDcsCisgICAgMHgxLjAxMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLnA4LAorICAgIDB4MS4wMDdmZmVwOAorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS4wMXA4LAorICAgIDB4MS4wMDgwcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuMDFwOCwKKyAgICAweDEuMDA4MDAycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEucDksCisgICAgMHgxLjAwM2ZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgMHgxLjAwODBwOSwKKyAgICAweDEuMDA0MHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLjAwODBwOSwKKyAgICAweDEuMDA0MDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEucDEwLAorICAgIDB4MS4wMDFmZmVwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDAyMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS4wMDQwcDEwLAorICAgIDB4MS4wMDIwMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDA1ZmZlcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLjAwODBwMTAsCisgICAgMHgxLjAwNjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAweDEuMDA4MHAxMCwKKyAgICAweDEuMDA2MDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAwZmZlcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLjAwMjBwMTEsCisgICAgMHgxLjAwMTBwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuMDAyMHAxMSwKKyAgICAweDEuMDAxMDAycDExCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLnAxMiwKKyAgICAweDEuMDAwN2ZlcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjAwMTBwMTIsCisgICAgMHgxLjAwMDhwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuMDAxMHAxMiwKKyAgICAweDEuMDAwODAycDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDB4MS5mZmZmZmNwMTI3LAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgLTB4MS5mZmZmZmNwMTI3LAorICAgIC0weDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS44MHAxLAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIC0weDEuODBwMSwKKyAgICAtMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLnAxLAorICAgIDB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIC0weDEucDEsCisgICAgLTB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAtMHgxLnAwLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgMHgxLnAwLAorICAgIDB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAtMHgxLnAwLAorICAgIC0weDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIC0wLjAsCisgICAgLTB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIDAuMCwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAtMC4wLAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzA3CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgMC4wLAorICAgIDB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIDAuMCwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAwLjAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMC4wLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAtMC4wLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLnAxLAorICAgIDB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuODBwMSwKKyAgICAweDEuNDBwMQorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIC0weDEuODBwMSwKKyAgICAtMHgxLjQwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDB4MS5wMCwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEucDEsCisgICAgMHgxLjgwMDAxMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLnAwLAorICAgIDB4MS43ZmZmZjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIC0weDEucDEsCisgICAgLTB4MS44MDAwMTBwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIC0weDEucDAsCisgICAgLTB4MS43ZmZmZjBwMAorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL3NjYWxiX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9zY2FsYl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmQ2YzFmNwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9zY2FsYl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSw0NjI4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8yX3Q8ZG91YmxlLCBkb3VibGUsIGRvdWJsZT4gZ19zY2FsYl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0weDEuNTU1NTU1NTU1NTU1NjBwLTEwMjQsCisgICAgLTB4MS41NTU1NTU1NTU1NTU2cC0yLAorICAgIC0weDEuZmYwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS42ZGI2ZGI2ZGI2ZGI3MHAtMTAyMywKKyAgICAtMHgxLjZkYjZkYjZkYjZkYjdwLTEsCisgICAgLTB4MS5mZjBwOQorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAtMHgxLjhlMzhlMzhlMzhlMzkwcC0xMDIzLAorICAgIC0weDEuOGUzOGUzOGUzOGUzOXAtMSwKKyAgICAtMHgxLmZmMHA5CisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0weDEuNzgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLnAtNTEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmZmOHA5CisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS41NDY0YTYwNjExMjg4MHAtMTAyNiwKKyAgICAweDEuNTQ2NGE2MDYxMTI4OHAtMiwKKyAgICAtMHgxLjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjhlMTQ3YWUxNDdhZTFwMCwKKyAgICAweDEuZmZmZmZmZmMwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAwLjAsCisgICAgMHgxLmRkZGRkZGRkZGRkZGRwLTIsCisgICAgLTB4MS4wYzRwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDAuMCwKKyAgICAweDEuZjdkZjdkZjdkZjdkZnAtMiwKKyAgICAtMHgxLjBjNHAxMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZjZwMzAsCisgICAgMHgxLjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAzMywKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMywKKyAgICAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTA3MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMHgxLjc4MHA1CisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmZmZmZmZmMwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmYzBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIC0weDEucC0xMCwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgLTB4MS5wLTksCisgICAgLTB4MS4wcDAsCisgICAgLTB4MS4ycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIC0weDEucC04LAorICAgIC0weDEuMHAwLAorICAgIC0weDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAtMHgxLnAtNywKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgLTB4MS5wLTYsCisgICAgLTB4MS4wcDAsCisgICAgLTB4MS44cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIC0weDEucC01LAorICAgIC0weDEuMHAwLAorICAgIC0weDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAtMHgxLnAtNCwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgLTB4MS5wLTMsCisgICAgLTB4MS4wcDAsCisgICAgLTB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIC0weDEucC0yLAorICAgIC0weDEuMHAwLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAtMHgxLnAtMSwKKyAgICAtMHgxLjBwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEucDEsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgLTB4MS5wMiwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAtMHgxLnAzLAorICAgIC0weDEuMHAwLAorICAgIDB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIC0weDEucDQsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgLTB4MS5wNSwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAtMHgxLnA2LAorICAgIC0weDEuMHAwLAorICAgIDB4MS44cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIC0weDEucDcsCisgICAgLTB4MS4wcDAsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgLTB4MS5wOCwKKyAgICAtMHgxLjBwMCwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAtMHgxLnA5LAorICAgIC0weDEuMHAwLAorICAgIDB4MS4ycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIC0weDEucDEwLAorICAgIC0weDEuMHAwLAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTExLAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtMTAsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIC0weDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcC05LAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtOCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgLTB4MS5jcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTcsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIC0weDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcC02LAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAtMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtNSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTQsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIC0weDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcC0zLAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwLTEsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAwLAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcDEsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwMiwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAzLAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcDQsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIDB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwNSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHA2LAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAweDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcDcsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwOCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHA5LAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC0xMSwKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTEwLAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAtMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHAtOSwKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgLTB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTgsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIC0weDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC03LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAtMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHAtNiwKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgLTB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTUsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC00LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAtMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHAtMywKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTIsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcC0xLAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwMCwKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHAxLAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcDIsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIDB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwMywKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHA0LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAweDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcDUsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIDB4MS44cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwNiwKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHA3LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcDgsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIDB4MS4ycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwOSwKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtMTEsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC0xMCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgLTB4MS4ycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NTBwLTksCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIC0weDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC04LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAtMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtNywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgLTB4MS44cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuNzQ1ZDE3NDVkMTc0NTBwLTYsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIC0weDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC01LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtNCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgLTB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NTBwLTMsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC0yLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAtMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcDAsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NTBwMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAyLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAweDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcDMsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIC0weDEuNzQ1ZDE3NDVkMTc0NTBwNCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHA1LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAweDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcDYsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIDB4MS5jcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcDcsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcDgsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIDB4MS4ycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcDksCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcC0xMSwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcC0xMCwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgLTB4MS4ycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcC05LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwLTgsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIC0weDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAtNywKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgLTB4MS44cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcC02LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAtMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwLTUsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAtNCwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgLTB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcC0zLAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwLTIsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAtMSwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAwLAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAxLAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAyLAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAweDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAzLAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHA0LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAweDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHA1LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAweDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHA2LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAweDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHA3LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHA4LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAweDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHA5LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAtMTEsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAtMTAsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIC0weDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAtOSwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgLTB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcC04LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAtMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwLTcsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIC0weDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAtNiwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgLTB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcC01LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwLTQsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIC0weDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAtMywKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcC0yLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwLTEsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwMCwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwMSwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwMiwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwMywKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwNCwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwNSwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwNiwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwNywKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwOCwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwOSwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTEyLAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTExLAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAtMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTEwLAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTksCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIC0weDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHAtOCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgLTB4MS44cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcC03LAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAtMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTYsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHAtNSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgLTB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcC00LAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTMsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHAtMiwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHAtMSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwMCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwMSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwMiwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwMywKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwNCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwNSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwNiwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwNywKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwOCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTEyLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTExLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAtMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTEwLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTksCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIC0weDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHAtOCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgLTB4MS44cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcC03LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAtMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTYsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHAtNSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgLTB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcC00LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTMsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHAtMiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHAtMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwMCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwMiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwMywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwNCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwNSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwNiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwNywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwOCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC0xMiwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzBwLTIsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3AtMTEsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIC0weDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwLTEwLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC05LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAtMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC04LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAtMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC03LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAtMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC02LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC01LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAtMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC00LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC0zLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC0yLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3AtMSwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzBwLTIsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cDAsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3AxLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAweDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwMiwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzBwLTIsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cDMsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIDB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3A0LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAweDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwNSwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzBwLTIsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cDYsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3A3LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAweDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwOCwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzBwLTIsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTEzLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTEyLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAtMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTExLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTEwLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAtMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTksCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIC0weDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAtOCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgLTB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcC03LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTYsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIC0weDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAtNSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcC00LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTMsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTIsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcC0xLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAwLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAweDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAxLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAyLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAweDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAzLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAweDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHA0LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAweDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHA1LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHA2LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAweDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHA3LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtMTQsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtMTMsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIC0weDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtMTIsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIC0weDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtMTEsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIC0weDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtMTAsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIC0weDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtOSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgLTB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC04LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwLTcsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIC0weDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtNiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC01LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwLTQsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwLTMsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC0yLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwMCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwMiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwMywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwNCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwNSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwNiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS4yMHAtNjIsCisgICAgMHgxLjJwLTUyLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLjIwcC02MSwKKyAgICAweDEuMnAtNTIsCisgICAgLTB4MS4ycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuMjBwLTYwLAorICAgIDB4MS4ycC01MiwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS4yMHAtNTksCisgICAgMHgxLjJwLTUyLAorICAgIC0weDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjIwcC01OCwKKyAgICAweDEuMnAtNTIsCisgICAgLTB4MS44cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAweDEuMjBwLTU3LAorICAgIDB4MS4ycC01MiwKKyAgICAtMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS4yMHAtNTYsCisgICAgMHgxLjJwLTUyLAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjIwcC01NSwKKyAgICAweDEuMnAtNTIsCisgICAgLTB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEuMjBwLTU0LAorICAgIDB4MS4ycC01MiwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIDB4MS4yMHAtNTMsCisgICAgMHgxLjJwLTUyLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLjIwcC01MiwKKyAgICAweDEuMnAtNTIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLjIwcC01MSwKKyAgICAweDEuMnAtNTIsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS4yMHAtNTAsCisgICAgMHgxLjJwLTUyLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEuMjBwLTQ5LAorICAgIDB4MS4ycC01MiwKKyAgICAweDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLjIwcC00OCwKKyAgICAweDEuMnAtNTIsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS4yMHAtNDcsCisgICAgMHgxLjJwLTUyLAorICAgIDB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuMjBwLTQ2LAorICAgIDB4MS4ycC01MiwKKyAgICAweDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgMHgxLjIwcC00NSwKKyAgICAweDEuMnAtNTIsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS4yMHAtNDQsCisgICAgMHgxLjJwLTUyLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEuMjBwLTQzLAorICAgIDB4MS4ycC01MiwKKyAgICAweDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgMHgxLjIwcC00MiwKKyAgICAweDEuMnAtNTIsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS43NDVkMTc0NWQxNzU4MHAtMTQsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwLTEzLAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIC0weDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC0xMiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS43NDVkMTc0NWQxNzU4MHAtMTEsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgLTB4MS5jcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwLTEwLAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIC0weDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC05LAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIC0weDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC04LAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC03LAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIC0weDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC02LAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC01LAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC00LAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS43NDVkMTc0NWQxNzU4MHAtMywKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC0yLAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwLTEsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIDB4MS43NDVkMTc0NWQxNzU4MHAwLAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwMSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAweDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcDIsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDB4MS43NDVkMTc0NWQxNzU4MHAzLAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIDB4MS5jcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwNCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcDUsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIDB4MS43NDVkMTc0NWQxNzU4MHA2LAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwLTEzLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC0xMiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAtMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS43NDVkMTc0NWQxNzRmMHAtMTEsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgLTB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwLTEwLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIC0weDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC05LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIC0weDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC04LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIC0weDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC03LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC02LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIC0weDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC01LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC00LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC0zLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIDB4MS43NDVkMTc0NWQxNzRmMHAtMiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC0xLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwMCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAweDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcDEsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIDB4MS43NDVkMTc0NWQxNzRmMHAyLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIDB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwMywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAweDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcDQsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIDB4MS43NDVkMTc0NWQxNzRmMHA1LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwNiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAweDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcDcsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtMTIsCisgICAgMHgxLjE3NDVkMTc0NWQxNzlwLTIsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwLTExLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIC0weDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcC0xMCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtOSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAtMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtOCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAtMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtNywKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAtMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtNiwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtNSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAtMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtNCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtMywKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtMiwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwLTEsCisgICAgMHgxLjE3NDVkMTc0NWQxNzlwLTIsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAwLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwMSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAweDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcDIsCisgICAgMHgxLjE3NDVkMTc0NWQxNzlwLTIsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAzLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIDB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwNCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAweDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcDUsCisgICAgMHgxLjE3NDVkMTc0NWQxNzlwLTIsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHA2LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwNywKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAweDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcDgsCisgICAgMHgxLjE3NDVkMTc0NWQxNzlwLTIsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtMTIsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGFwLTIsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwLTExLAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIC0weDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcC0xMCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtOSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAtMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDMzOAorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtOCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAtMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtNywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAtMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtNiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtNSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAtMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtNCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtMywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM0NAorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtMiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwLTEsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGFwLTIsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAwLAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwMSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAweDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcDIsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGFwLTIsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDM0OQorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAzLAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIDB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwNCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAweDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcDUsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGFwLTIsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIDB4MS43NDVkMTc0NWQxNzRhMHA2LAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwNywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAweDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcDgsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGFwLTIsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtMTIsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWNwLTIsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwLTExLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIC0weDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcC0xMCwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtOSwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAtMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtOCwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAtMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtNywKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAtMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtNiwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtNSwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAtMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDM2MworICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtNCwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtMywKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtMiwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwLTEsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWNwLTIsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAwLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwMSwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAweDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcDIsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWNwLTIsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAzLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIDB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwNCwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAweDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzcyCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcDUsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWNwLTIsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHA2LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwNywKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAweDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcDgsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWNwLTIsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3MHAtMTEsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwLTEwLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIC0weDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzc4CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC05LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIC0weDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzc5CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC04LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIC0weDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC03LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIC0weDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC02LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIC0weDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC01LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC00LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIC0weDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC0zLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzg1CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC0yLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC0xLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDM4NworICAgIDB4MS4xNzQ1ZDE3NDVkMTc3MHAwLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODgKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwMSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzg5CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcDIsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3MHAzLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTEKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwNCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAweDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcDUsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDM5MworICAgIDB4MS4xNzQ1ZDE3NDVkMTc3MHA2LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIDB4MS5jcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTQKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwNywKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzk1CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcDgsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDM5NgorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3MHA5LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAweDEuNDVkMTc0NWQxNzQ2cC0xMSwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDM5OAorICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTEwLAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIC0weDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtOSwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDQwMAorICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTgsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgLTB4MS5jcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAweDEuNDVkMTc0NWQxNzQ2cC03LAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIC0weDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtNiwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAtMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTUsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDQKKyAgICAweDEuNDVkMTc0NWQxNzQ2cC00LAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIC0weDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDA1CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtMywKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIDB4MS40NWQxNzQ1ZDE3NDZwLTIsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICAweDEuNDVkMTc0NWQxNzQ2cC0xLAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIDB4MS40NWQxNzQ1ZDE3NDZwMCwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDA5CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAxLAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAweDEuNDVkMTc0NWQxNzQ2cDIsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIDB4MS40NWQxNzQ1ZDE3NDZwMywKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMHgxLjQ1ZDE3NDVkMTc0NnA0LAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIDB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTMKKyAgICAweDEuNDVkMTc0NWQxNzQ2cDUsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIDB4MS40NWQxNzQ1ZDE3NDZwNiwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAweDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgNDE1CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnA3LAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAweDEuNDVkMTc0NWQxNzQ2cDgsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDQxNworICAgIDB4MS40NWQxNzQ1ZDE3NDZwOSwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgMHgxLjc0NWQxNzQ1ZDE3NDkwcC0xMSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHAtMTAsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgLTB4MS4ycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjAKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTksCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgLTB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjEKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTgsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgLTB4MS5jcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTcsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgLTB4MS44cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTYsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgLTB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjQKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTUsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTQsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgLTB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjYKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTMsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTIsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTEsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDI5CisgICAgMHgxLjc0NWQxNzQ1ZDE3NDkwcDAsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHAxLAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwMiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAweDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDkwcDMsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDQzMworICAgIDB4MS43NDVkMTc0NWQxNzQ5MHA0LAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIDB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzQKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwNSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAweDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDM1CisgICAgMHgxLjc0NWQxNzQ1ZDE3NDkwcDYsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHA3LAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwOCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAweDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLjc0NWQxNzQ1ZDE3NDkwcDksCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDQzOQorICAgIDB4MS5hMmU4YmEyZThiYTMyMHAtMTEsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgLTB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwLTEwLAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIC0weDEuMnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC05LAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIC0weDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDQyCisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC04LAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIC0weDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC03LAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIC0weDEuOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC02LAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIC0weDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC01LAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDQ2CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC00LAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIC0weDEuOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC0zLAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQ4CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC0yLAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ5CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC0xLAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIDB4MS5hMmU4YmEyZThiYTMyMHAwLAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTEKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwMSwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgMHgxLmEyZThiYTJlOGJhMzIwcDIsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDQ1MworICAgIDB4MS5hMmU4YmEyZThiYTMyMHAzLAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTQKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwNCwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAweDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcDUsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDQ1NgorICAgIDB4MS5hMmU4YmEyZThiYTMyMHA2LAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIDB4MS5jcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTcKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwNywKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcDgsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDQ1OQorICAgIDB4MS5hMmU4YmEyZThiYTMyMHA5LAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjAKKyAgICAweDEuZDE3NDVkMTc0NWQxYjBwLTExLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcC0xMCwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAtMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDQ2MgorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtOSwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDQ2MworICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtOCwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAtMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDQ2NAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtNywKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAtMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDQ2NQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtNiwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAtMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDQ2NgorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtNSwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtNCwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAtMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtMywKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtMiwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtMSwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzEKKyAgICAweDEuZDE3NDVkMTc0NWQxYjBwMCwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcDEsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAyLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIDB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzQKKyAgICAweDEuZDE3NDVkMTc0NWQxYjBwMywKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDc1CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcDQsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDQ3NgorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHA1LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIDB4MS44cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAweDEuZDE3NDVkMTc0NWQxYjBwNiwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAweDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcDcsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDQ3OQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHA4LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIDB4MS4ycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODAKKyAgICAweDEuZDE3NDVkMTc0NWQxYjBwOSwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDgxCisgICAgMHgxLnAtMTAsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDQ4MgorICAgIDB4MS5wLTksCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDQ4MworICAgIDB4MS5wLTgsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIDB4MS5wLTcsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDQ4NQorICAgIDB4MS5wLTYsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIDB4MS5wLTUsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDQ4NworICAgIDB4MS5wLTQsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDQ4OAorICAgIDB4MS5wLTMsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIDB4MS5wLTIsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDQ5MAorICAgIDB4MS5wLTEsCisgICAgMHgxLjBwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ5MQorICAgIDB4MS5wMCwKKyAgICAweDEuMHAwLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ5MgorICAgIDB4MS5wMSwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICAweDEucDIsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgMHgxLnAzLAorICAgIDB4MS4wcDAsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIDB4MS5wNCwKKyAgICAweDEuMHAwLAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTYKKyAgICAweDEucDUsCisgICAgMHgxLjBwMCwKKyAgICAweDEuNHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgMHgxLnA2LAorICAgIDB4MS4wcDAsCisgICAgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDQ5OAorICAgIDB4MS5wNywKKyAgICAweDEuMHAwLAorICAgIDB4MS5jcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTkKKyAgICAweDEucDgsCisgICAgMHgxLjBwMCwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTAwCisgICAgMHgxLnA5LAorICAgIDB4MS4wcDAsCisgICAgMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIDB4MS5wMTAsCisgICAgMHgxLjBwMCwKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmOHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTAzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLmZmMHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTA0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS5mNDBwOQorICB9LAorICB7IC8vIEVudHJ5IDUwNQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAyNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZjM4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAxMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTA3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDUwOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDE1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDkKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAxNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDUxMQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDE4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAxOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNTEzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDUxNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTcKKyAgICAweDEucC01MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmY4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICAweDEucC01MiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmYwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAweDEucC03NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZjQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjAKKyAgICAweDEucC03NSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZjM4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjEKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDUyMgorICAgIDB4MS5wLTEwNzMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDUyMworICAgIDB4MS5wLTEwNzIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwMQorICB9LAorICB7IC8vIEVudHJ5IDUyNAorICAgIDB4MS5wLTEwNzEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDUyNQorICAgIDB4MS5wLTEwNzAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDUyNgorICAgIDB4MS5wLTEwNjksCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjRwMgorICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIDB4MS5wLTEwNjgsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDUyOAorICAgIDB4MS5wLTEwNjcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmNwMgorICB9LAorICB7IC8vIEVudHJ5IDUyOQorICAgIDB4MS5wLTEwNjYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDUzMAorICAgIDB4MS5wLTEwNjUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDUzMQorICAgIDB4MS5wLTEwNjQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjRwMworICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIDB4MS5wLTEwMjUsCisgICAgMHgxLjBwLTIsCisgICAgLTB4MS5mZjhwOQorICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIDB4MS5wLTEwMjQsCisgICAgMHgxLjBwLTIsCisgICAgLTB4MS5mZjBwOQorICB9LAorICB7IC8vIEVudHJ5IDUzNAorICAgIDB4MS5wLTEwMjQsCisgICAgMHgxLjBwLTEsCisgICAgLTB4MS5mZjhwOQorICB9LAorICB7IC8vIEVudHJ5IDUzNQorICAgIDB4MS5wLTEwMjMsCisgICAgMHgxLjBwLTEsCisgICAgLTB4MS5mZjBwOQorICB9LAorICB7IC8vIEVudHJ5IDUzNgorICAgIDB4MS44MHAtMTAyNCwKKyAgICAweDEuOHAtMSwKKyAgICAtMHgxLmZmOHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTM3CisgICAgMHgxLjgwcC0xMDIzLAorICAgIDB4MS44cC0xLAorICAgIC0weDEuZmYwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzgKKyAgICAwLjAsCisgICAgMHgxLjBwLTIsCisgICAgLTB4MS4wYzhwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzkKKyAgICAwLjAsCisgICAgMHgxLjBwLTIsCisgICAgLTB4MS4wYzRwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDAKKyAgICAwLjAsCisgICAgMHgxLjBwLTEsCisgICAgLTB4MS4wYzhwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDEKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xLAorICAgIC0weDEuMGM0cDEwCisgIH0sCisgIHsgLy8gRW50cnkgNTQyCisgICAgMC4wLAorICAgIDB4MS44cC0xLAorICAgIC0weDEuMGM4cDEwCisgIH0sCisgIHsgLy8gRW50cnkgNTQzCisgICAgMHgxLjgwcC0xMDc0LAorICAgIDB4MS44cC0xLAorICAgIC0weDEuMGM0cDEwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ0CisgICAgMHgxLnAxMDIzLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmOHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTQ1CisgICAgMHgxLnAxMDIyLAorICAgIDB4MS4wcDAsCisgICAgMHgxLmZmMHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDcKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDgKKyAgICAweDEucC0xMDcyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDkKKyAgICAweDEucC0xMDcxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS44cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTAKKyAgICAweDEucC0xMDcwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTEKKyAgICAweDEucC0xMDY5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTIKKyAgICAweDEucC0xMDY4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS44cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTMKKyAgICAweDEucC0xMDY3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5jcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTQKKyAgICAweDEucC0xMDY2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTUKKyAgICAweDEucC0xMDY1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4ycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTYKKyAgICAweDEucC0xMDY0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS40cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTcKKyAgICAweDEucC0xMDYzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTgKKyAgICAweDEucC0xMDYyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS44cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTkKKyAgICAweDEucC0xMDYxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5hcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjAKKyAgICAweDEucC0xMDYwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5jcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjEKKyAgICAweDEucC0xMDU5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5lcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjIKKyAgICAweDEucC0xMDU4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjMKKyAgICAweDEucC0xMDU3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4xcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjQKKyAgICAweDEucC0xMDU2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4ycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjUKKyAgICAweDEucC0xMDU1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4zcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjYKKyAgICAweDEucC0xMDU0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS40cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICAweDEucC0xMDUzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS41cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjgKKyAgICAweDEucC0xMDUyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS42cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjkKKyAgICAweDEucC0xMDUxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS43cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzAKKyAgICAweDEucC0xMDUwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS44cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzEKKyAgICAweDEucC0xMDQ5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS45cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzIKKyAgICAweDEucC0xMDQ4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5hcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzMKKyAgICAweDEucC0xMDQ3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5icDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzQKKyAgICAweDEucC0xMDQ2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5jcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzUKKyAgICAweDEucC0xMDQ1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5kcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzYKKyAgICAweDEucC0xMDQ0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5lcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzcKKyAgICAweDEucC0xMDQzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzgKKyAgICAweDEucC0xMDQyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzkKKyAgICAweDEucC0xMDQxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wODBwNQorICB9LAorICB7IC8vIEVudHJ5IDU4MAorICAgIDB4MS5wLTEwNDAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjFwNQorICB9LAorICB7IC8vIEVudHJ5IDU4MQorICAgIDB4MS5wLTEwMzksCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjE4MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgMHgxLnAtMTAzOCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMnA1CisgIH0sCisgIHsgLy8gRW50cnkgNTgzCisgICAgMHgxLnAtMTAzNywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMjgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODQKKyAgICAweDEucC0xMDM2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4zcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODUKKyAgICAweDEucC0xMDM1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4zODBwNQorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIDB4MS5wLTEwMzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjRwNQorICB9LAorICB7IC8vIEVudHJ5IDU4NworICAgIDB4MS5wLTEwMzMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjQ4MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTg4CisgICAgMHgxLnAtMTAzMiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuNXA1CisgIH0sCisgIHsgLy8gRW50cnkgNTg5CisgICAgMHgxLnAtMTAzMSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuNTgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTAKKyAgICAweDEucC0xMDMwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS42cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTEKKyAgICAweDEucC0xMDI5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS42ODBwNQorICB9LAorICB7IC8vIEVudHJ5IDU5MgorICAgIDB4MS5wLTEwMjgsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjdwNQorICB9LAorICB7IC8vIEVudHJ5IDU5MworICAgIDB4MS5wLTEwMjcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjc4MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTk0CisgICAgMHgxLnAtMTAyNiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuOHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTk1CisgICAgMHgxLnAtMTAyNSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuODgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTYKKyAgICAweDEucC0xMDI0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS45cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAweDEucC0xMDIzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS45ODBwNQorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmFwNQorICB9LAorICB7IC8vIEVudHJ5IDU5OQorICAgIDB4MS5wLTEwMjEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmE4MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNjAwCisgICAgMHgxLnAtMTAyMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuYnA1CisgIH0sCisgIHsgLy8gRW50cnkgNjAxCisgICAgMHgxLnAtMTAxOSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuYjgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDIKKyAgICAweDEucC0xMDE4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5jcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAweDEucC0xMDE3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5jODBwNQorICB9LAorICB7IC8vIEVudHJ5IDYwNAorICAgIDB4MS5wLTEwMTYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmRwNQorICB9LAorICB7IC8vIEVudHJ5IDYwNQorICAgIDB4MS5wLTEwMTUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmQ4MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNjA2CisgICAgMHgxLnAtMTAxNCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZXA1CisgIH0sCisgIHsgLy8gRW50cnkgNjA3CisgICAgMHgxLnAtMTAxMywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZTgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDgKKyAgICAweDEucC0xMDEyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDkKKyAgICAweDEucC0xMDExLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mODBwNQorICB9LAorICB7IC8vIEVudHJ5IDYxMAorICAgIDB4MS5wLTEwMTAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDYxMQorICAgIDB4MS5wLTEwMDksCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjA0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjEyCisgICAgMHgxLnAtMTAwOCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMDgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTMKKyAgICAweDEucC0xMDA3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4wYzBwNgorICB9LAorICB7IC8vIEVudHJ5IDYxNAorICAgIDB4MS5wLTEwMDYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjFwNgorICB9LAorICB7IC8vIEVudHJ5IDYxNQorICAgIDB4MS5wLTEwMDUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjE0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjE2CisgICAgMHgxLnAtMTAwNCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMTgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTcKKyAgICAweDEucC0xMDAzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4xYzBwNgorICB9LAorICB7IC8vIEVudHJ5IDYxOAorICAgIDB4MS5wLTEwMDIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjJwNgorICB9LAorICB7IC8vIEVudHJ5IDYxOQorICAgIDB4MS5wLTEwMDEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjI0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjIwCisgICAgMHgxLnAtMTAwMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMjgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICAweDEucC05OTksCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjJjMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjIyCisgICAgMHgxLnAtOTk4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4zcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjMKKyAgICAweDEucC05OTcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjM0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjI0CisgICAgMHgxLnAtOTk2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS4zODBwNgorICB9LAorICB7IC8vIEVudHJ5IDYyNQorICAgIDB4MS5wLTk5NSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuM2MwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjYKKyAgICAweDEucC05OTQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjRwNgorICB9LAorICB7IC8vIEVudHJ5IDYyNworICAgIDB4MS5wLTk5MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuNDQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjgKKyAgICAweDEucC05OTIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjQ4MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjI5CisgICAgMHgxLnAtOTkxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS40YzBwNgorICB9LAorICB7IC8vIEVudHJ5IDYzMAorICAgIDB4MS5wLTk5MCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuNXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjMxCisgICAgMHgxLnAtOTg5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS41NDBwNgorICB9LAorICB7IC8vIEVudHJ5IDYzMgorICAgIDB4MS5wLTk4OCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuNTgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzMKKyAgICAweDEucC05ODcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjVjMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjM0CisgICAgMHgxLnAtOTg2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS42cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzUKKyAgICAweDEucC05ODUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjY0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjM2CisgICAgMHgxLnAtOTg0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS42ODBwNgorICB9LAorICB7IC8vIEVudHJ5IDYzNworICAgIDB4MS5wLTk4MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuNmMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzgKKyAgICAweDEucC05ODIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjdwNgorICB9LAorICB7IC8vIEVudHJ5IDYzOQorICAgIDB4MS5wLTk4MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuNzQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDAKKyAgICAweDEucC05ODAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjc4MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjQxCisgICAgMHgxLnAtOTc5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS43YzBwNgorICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIDB4MS5wLTk3OCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjQzCisgICAgMHgxLnAtOTc3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS44NDBwNgorICB9LAorICB7IC8vIEVudHJ5IDY0NAorICAgIDB4MS5wLTk3NiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuODgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDUKKyAgICAweDEucC05NzUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjhjMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjQ2CisgICAgMHgxLnAtOTc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS45cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDcKKyAgICAweDEucC05NzMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjk0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjQ4CisgICAgMHgxLnAtOTcyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS45ODBwNgorICB9LAorICB7IC8vIEVudHJ5IDY0OQorICAgIDB4MS5wLTk3MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuOWMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTAKKyAgICAweDEucC05NzAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmFwNgorICB9LAorICB7IC8vIEVudHJ5IDY1MQorICAgIDB4MS5wLTk2OSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuYTQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTIKKyAgICAweDEucC05NjgsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmE4MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjUzCisgICAgMHgxLnAtOTY3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5hYzBwNgorICB9LAorICB7IC8vIEVudHJ5IDY1NAorICAgIDB4MS5wLTk2NiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuYnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjU1CisgICAgMHgxLnAtOTY1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5iNDBwNgorICB9LAorICB7IC8vIEVudHJ5IDY1NgorICAgIDB4MS5wLTk2NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuYjgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTcKKyAgICAweDEucC05NjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmJjMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjU4CisgICAgMHgxLnAtOTYyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5jcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTkKKyAgICAweDEucC05NjEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmM0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjYwCisgICAgMHgxLnAtOTYwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5jODBwNgorICB9LAorICB7IC8vIEVudHJ5IDY2MQorICAgIDB4MS5wLTk1OSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuY2MwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjIKKyAgICAweDEucC05NTgsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmRwNgorICB9LAorICB7IC8vIEVudHJ5IDY2MworICAgIDB4MS5wLTk1NywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZDQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjQKKyAgICAweDEucC05NTYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmQ4MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjY1CisgICAgMHgxLnAtOTU1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5kYzBwNgorICB9LAorICB7IC8vIEVudHJ5IDY2NgorICAgIDB4MS5wLTk1NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjY3CisgICAgMHgxLnAtOTUzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5lNDBwNgorICB9LAorICB7IC8vIEVudHJ5IDY2OAorICAgIDB4MS5wLTk1MiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZTgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjkKKyAgICAweDEucC05NTEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmVjMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjcwCisgICAgMHgxLnAtOTUwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzEKKyAgICAweDEucC05NDksCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmY0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjcyCisgICAgMHgxLnAtOTQ4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIDB4MS5mODBwNgorICB9LAorICB7IC8vIEVudHJ5IDY3MworICAgIDB4MS5wLTk0NywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzQKKyAgICAweDEucC05NDYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDY3NQorICAgIDB4MS5wLTk0NSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMDIwcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzYKKyAgICAweDEucC05NDQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjA0MHA3CisgIH0sCisgIHsgLy8gRW50cnkgNjc3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDY3OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjc5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjhwMQorICB9LAorICB7IC8vIEVudHJ5IDY4MQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAxOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjgyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDE4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS40cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjhwMgorICB9LAorICB7IC8vIEVudHJ5IDY4NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAxNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuY3AyCisgIH0sCisgIHsgLy8gRW50cnkgNjg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDE1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjJwMworICB9LAorICB7IC8vIEVudHJ5IDY4NworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAxMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjg4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDEyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS42cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjhwMworICB9LAorICB7IC8vIEVudHJ5IDY5MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuYXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjkxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5jcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmVwMworICB9LAorICB7IC8vIEVudHJ5IDY5MworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAwNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNjk0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDA2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4xcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMDUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjJwNAorICB9LAorICB7IC8vIEVudHJ5IDY5NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAwNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuM3A0CisgIH0sCisgIHsgLy8gRW50cnkgNjk3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS40cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjVwNAorICB9LAorICB7IC8vIEVudHJ5IDY5OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuNnA0CisgIH0sCisgIHsgLy8gRW50cnkgNzAwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS43cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk5OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuOHA0CisgIH0sCisgIHsgLy8gRW50cnkgNzAyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05OTgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjlwNAorICB9LAorICB7IC8vIEVudHJ5IDcwMworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTk3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5hcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk5NiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuYnA0CisgIH0sCisgIHsgLy8gRW50cnkgNzA1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05OTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmNwNAorICB9LAorICB7IC8vIEVudHJ5IDcwNgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTk0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5kcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk5MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZXA0CisgIH0sCisgIHsgLy8gRW50cnkgNzA4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05OTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZwNAorICB9LAorICB7IC8vIEVudHJ5IDcwOQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTkxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk5MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMDgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk4OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMXA1CisgIH0sCisgIHsgLy8gRW50cnkgNzEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05ODgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjE4MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNzEzCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05ODcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjJwNQorICB9LAorICB7IC8vIEVudHJ5IDcxNAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTg2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4yODBwNQorICB9LAorICB7IC8vIEVudHJ5IDcxNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTg1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4zcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk4NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMzgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk4MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuNHA1CisgIH0sCisgIHsgLy8gRW50cnkgNzE4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05ODIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjQ4MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNzE5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05ODEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjVwNQorICB9LAorICB7IC8vIEVudHJ5IDcyMAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTgwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS41ODBwNQorICB9LAorICB7IC8vIEVudHJ5IDcyMQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTc5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS42cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk3OCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuNjgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk3NywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuN3A1CisgIH0sCisgIHsgLy8gRW50cnkgNzI0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NzYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjc4MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNzI1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NzUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjhwNQorICB9LAorICB7IC8vIEVudHJ5IDcyNgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS44ODBwNQorICB9LAorICB7IC8vIEVudHJ5IDcyNworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTczLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS45cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk3MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuOTgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk3MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuYXA1CisgIH0sCisgIHsgLy8gRW50cnkgNzMwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NzAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmE4MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNzMxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NjksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmJwNQorICB9LAorICB7IC8vIEVudHJ5IDczMgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTY4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5iODBwNQorICB9LAorICB7IC8vIEVudHJ5IDczMworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTY3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5jcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk2NiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuYzgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk2NSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZHA1CisgIH0sCisgIHsgLy8gRW50cnkgNzM2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmQ4MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNzM3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmVwNQorICB9LAorICB7IC8vIEVudHJ5IDczOAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTYyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5lODBwNQorICB9LAorICB7IC8vIEVudHJ5IDczOQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTYxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk2MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZjgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk1OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzQyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NTgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjA0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzQzCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjA4MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzQ0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBjMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzQ1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjFwNgorICB9LAorICB7IC8vIEVudHJ5IDc0NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTU0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4xNDBwNgorICB9LAorICB7IC8vIEVudHJ5IDc0NworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTUzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4xODBwNgorICB9LAorICB7IC8vIEVudHJ5IDc0OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4xYzBwNgorICB9LAorICB7IC8vIEVudHJ5IDc0OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4ycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMjQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk0OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMjgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk0OCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMmMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk0NywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuM3A2CisgIH0sCisgIHsgLy8gRW50cnkgNzU0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NDYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjM0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzU1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NDUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjM4MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzU2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NDQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjNjMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzU3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjRwNgorICB9LAorICB7IC8vIEVudHJ5IDc1OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTQyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS40NDBwNgorICB9LAorICB7IC8vIEVudHJ5IDc1OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTQxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS40ODBwNgorICB9LAorICB7IC8vIEVudHJ5IDc2MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTQwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS40YzBwNgorICB9LAorICB7IC8vIEVudHJ5IDc2MQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTM5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS41cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkzOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuNTQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkzNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuNTgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkzNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuNWMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkzNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuNnA2CisgIH0sCisgIHsgLy8gRW50cnkgNzY2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjY0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzY3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MzMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjY4MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzY4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MzIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjZjMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzY5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjdwNgorICB9LAorICB7IC8vIEVudHJ5IDc3MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTMwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS43NDBwNgorICB9LAorICB7IC8vIEVudHJ5IDc3MQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTI5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS43ODBwNgorICB9LAorICB7IC8vIEVudHJ5IDc3MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTI4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS43YzBwNgorICB9LAorICB7IC8vIEVudHJ5IDc3MworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTI3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS44cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkyNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuODQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkyNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuODgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkyNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuOGMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuOXA2CisgIH0sCisgIHsgLy8gRW50cnkgNzc4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjk0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzc5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MjEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjk4MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzgwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjljMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzgxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmFwNgorICB9LAorICB7IC8vIEVudHJ5IDc4MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTE4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5hNDBwNgorICB9LAorICB7IC8vIEVudHJ5IDc4MworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTE3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5hODBwNgorICB9LAorICB7IC8vIEVudHJ5IDc4NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTE2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5hYzBwNgorICB9LAorICB7IC8vIEVudHJ5IDc4NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTE1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5icDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkxNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuYjQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkxMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuYjgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkxMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuYmMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkxMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuY3A2CisgIH0sCisgIHsgLy8gRW50cnkgNzkwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmM0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzkxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmM4MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzkyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmNjMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzkzCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MDcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmRwNgorICB9LAorICB7IC8vIEVudHJ5IDc5NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTA2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5kNDBwNgorICB9LAorICB7IC8vIEVudHJ5IDc5NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5kODBwNgorICB9LAorICB7IC8vIEVudHJ5IDc5NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5kYzBwNgorICB9LAorICB7IC8vIEVudHJ5IDc5NworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5lcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkwMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZTQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZTgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZWMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTg5OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZnA2CisgIH0sCisgIHsgLy8gRW50cnkgODAyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC04OTgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmY0MHA2CisgIH0sCisgIHsgLy8gRW50cnkgODAzCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC04OTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmY4MHA2CisgIH0sCisgIHsgLy8gRW50cnkgODA0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC04OTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmZjMHA2CisgIH0sCisgIHsgLy8gRW50cnkgODA1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC04OTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBwNworICB9LAorICB7IC8vIEVudHJ5IDgwNgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtODk0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wMjBwNworICB9LAorICB7IC8vIEVudHJ5IDgwNworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtODkzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wNDBwNworICB9LAorICB7IC8vIEVudHJ5IDgwOAorICAgIDB4MS5wMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMGM4cDEwCisgIH0sCisgIHsgLy8gRW50cnkgODA5CisgICAgMHgxLnAtMSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMGM0cDEwCisgIH0sCisgIHsgLy8gRW50cnkgODEwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS4wYzhwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLjBjNHAxMAorICB9LAorICB7IC8vIEVudHJ5IDgxMgorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLmFwNQorICB9LAorICB7IC8vIEVudHJ5IDgxMworICAgIDB4MS5wLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjk4MHA1CisgIH0sCisgIHsgLy8gRW50cnkgODE0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgMHgxLmFwNQorICB9LAorICB7IC8vIEVudHJ5IDgxNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTcyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS45ODBwNQorICB9LAorICB7IC8vIEVudHJ5IDgxNgorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODE3CisgICAgMHgxLnAtMTA3MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgODE4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDgxOQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgODIwCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjEKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODIyCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjMKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODI0CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjUKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDgyNgorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODI3CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDgyOAorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjkKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODMwCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODMxCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDgzMgorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDgzMworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODM0CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODM1CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDgzNgorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzcKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODM4CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODM5CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODQwCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODQxCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDIKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDMKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODQ0CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODQ1CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDg0NgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg0NworICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDgKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDg0OQorICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTAKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg1MQorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDg1MgorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODUzCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgODU0CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTUKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTYKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODU3CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTgKKyAgICAwLjAsCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTkKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg2MAorICAgIDAuMCwKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODYxCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDg2MgorICAgIDAuMCwKKyAgICAwLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDg2MworICAgIC0wLjAsCisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODY0CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgODY1CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjYKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgODY3CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgODY4CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAweDEuZmMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjkKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgMHgxLmZjMHA2CisgIH0sCisgIHsgLy8gRW50cnkgODcwCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAtMHgxLmZjMHA2CisgIH0sCisgIHsgLy8gRW50cnkgODcxCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuZmMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzIKKyAgICAwLjAsCisgICAgMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODczCisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgODc0CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg3NQorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg3NgorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDg3NworICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODc4CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDg3OQorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDg4MAorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODEKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODIKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDg4MworICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODQKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODUKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIDB4MS5mYzBwNgorICB9LAorICB7IC8vIEVudHJ5IDg4NgorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMLAorICAgIC0weDEuZmMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODcKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODgKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg4OQorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDg5MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDg5MgorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODkzCisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODk0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDg5NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODk2CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTcKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTgKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODk5CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTAyCisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDkwMworICAgIC0weDEucC0xMDIyLAorICAgIC0weDEuMHAtMTAyMiwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTA0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDkwNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgOTA2CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTA3CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDgKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDkwOQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAweDEuZmMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTAKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuMHAtMTAyMiwKKyAgICAweDEuMzg4cDE1CisgIH0sCisgIHsgLy8gRW50cnkgOTExCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwNzQsCisgICAgMHgxLjM4OHAxNQorICB9LAorICB7IC8vIEVudHJ5IDkxMgorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgMHgxLjM4OHAxNQorICB9LAorICB7IC8vIEVudHJ5IDkxMworICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgMHgxLjM4OHAxNQorICB9LAorICB7IC8vIEVudHJ5IDkxNAorICAgIDB4MS5wLTEwMjMsCisgICAgMHgxLjBwLTEwMjIsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTYKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTcKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDkxOAorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTE5CisgICAgLTB4MS5wLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTIwCisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgLTB4MS4zODhwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjEKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIC0weDEuMzg4cDE1CisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvc2NhbGJmX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9zY2FsYmZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNkMWQ1ZWYKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvc2NhbGJmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDQ1ODggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzJfdDxmbG9hdCwgZmxvYXQsIGZsb2F0PiBnX3NjYWxiZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIC0weDEuNTU1NTU0cC0xMjgsCisgICAgLTB4MS41NTU1NTRwLTIsCisgICAgLTB4MS5mOHA2CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIC0weDEuNmRiNmRjcC0xMjgsCisgICAgLTB4MS42ZGI2ZGNwLTEsCisgICAgLTB4MS5mY3A2CisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIC0weDEuOGUzOGU0cC0xMjgsCisgICAgLTB4MS44ZTM4ZTRwLTEsCisgICAgLTB4MS5mY3A2CisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5LAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS41NDY0YjBwLTEzMCwKKyAgICAweDEuNTQ2NGIwcC0yLAorICAgIC0weDEucDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMC4wZiwKKyAgICAweDEuZGRkZGRlcC0yLAorICAgIC0weDEuMjhwNworICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEuZWNiN2U4cC0xMjksCisgICAgMHgxLmVjYjdlOHAtMSwKKyAgICAtMHgxLnA3CisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDAuMGYsCisgICAgMHgxLmZmZmY2MHAtMTI3LAorICAgIC0weDEuNzBwNAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMC4wZiwKKyAgICAweDEuZmZmZjg0cC0xMjcsCisgICAgLTB4MS43MHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuZmZmZmY4cC0xMzcsCisgICAgMHgxLmZmZmZmOHAtMTI3LAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAtMHgxLnAtMTAsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIC0weDEucC05LAorICAgIC0weDEucDAsCisgICAgLTB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAtMHgxLnAtOCwKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIC0weDEucC03LAorICAgIC0weDEucDAsCisgICAgLTB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAtMHgxLnAtNiwKKyAgICAtMHgxLnAwLAorICAgIC0weDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgLTB4MS5wLTUsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIC0weDEucC00LAorICAgIC0weDEucDAsCisgICAgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS5wLTMsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIC0weDEucC0yLAorICAgIC0weDEucDAsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgLTB4MS5wLTEsCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAtMHgxLnAxLAorICAgIC0weDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAtMHgxLnAyLAorICAgIC0weDEucDAsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAtMHgxLnAzLAorICAgIC0weDEucDAsCisgICAgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIC0weDEucDQsCisgICAgLTB4MS5wMCwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEucDUsCisgICAgLTB4MS5wMCwKKyAgICAweDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgLTB4MS5wNiwKKyAgICAtMHgxLnAwLAorICAgIDB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAtMHgxLnA3LAorICAgIC0weDEucDAsCisgICAgMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIC0weDEucDgsCisgICAgLTB4MS5wMCwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIC0weDEucDksCisgICAgLTB4MS5wMCwKKyAgICAweDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgLTB4MS5wMTAsCisgICAgLTB4MS5wMCwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgLTB4MS5kMTc0NWNwLTExLAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgLTB4MS5kMTc0NWNwLTEwLAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIC0weDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgLTB4MS5kMTc0NWNwLTksCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgLTB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS5kMTc0NWNwLTgsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgLTB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAtMHgxLmQxNzQ1Y3AtNywKKyAgICAtMHgxLmQxNzQ1Y3AtMSwKKyAgICAtMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIC0weDEuZDE3NDVjcC02LAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIC0weDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgLTB4MS5kMTc0NWNwLTUsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgLTB4MS5kMTc0NWNwLTQsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgLTB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAtMHgxLmQxNzQ1Y3AtMywKKyAgICAtMHgxLmQxNzQ1Y3AtMSwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAtMHgxLmQxNzQ1Y3AtMiwKKyAgICAtMHgxLmQxNzQ1Y3AtMSwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAtMHgxLmQxNzQ1Y3AtMSwKKyAgICAtMHgxLmQxNzQ1Y3AtMSwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0weDEuZDE3NDVjcDAsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMHgxLmQxNzQ1Y3AxLAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5kMTc0NWNwMiwKKyAgICAtMHgxLmQxNzQ1Y3AtMSwKKyAgICAweDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgLTB4MS5kMTc0NWNwMywKKyAgICAtMHgxLmQxNzQ1Y3AtMSwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIC0weDEuZDE3NDVjcDQsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEuZDE3NDVjcDUsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEuZDE3NDVjcDYsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIC0weDEuZDE3NDVjcDcsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLmQxNzQ1Y3A4LAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIDB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLmQxNzQ1Y3A5LAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLmEyZThiOHAtMTEsCisgICAgLTB4MS5hMmU4YjhwLTEsCisgICAgLTB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLmEyZThiOHAtMTAsCisgICAgLTB4MS5hMmU4YjhwLTEsCisgICAgLTB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLmEyZThiOHAtOSwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAtMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAtMHgxLmEyZThiOHAtOCwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAtMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuYTJlOGI4cC03LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIC0weDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgLTB4MS5hMmU4YjhwLTYsCisgICAgLTB4MS5hMmU4YjhwLTEsCisgICAgLTB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLmEyZThiOHAtNSwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAtMHgxLmEyZThiOHAtNCwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAtMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuYTJlOGI4cC0zLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEuYTJlOGI4cC0yLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuYTJlOGI4cC0xLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgLTB4MS5hMmU4YjhwMCwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEuYTJlOGI4cDEsCisgICAgLTB4MS5hMmU4YjhwLTEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAtMHgxLmEyZThiOHAyLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIDB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLmEyZThiOHAzLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgLTB4MS5hMmU4YjhwNCwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAweDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS5hMmU4YjhwNSwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAweDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS5hMmU4YjhwNiwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAweDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5hMmU4YjhwNywKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIC0weDEuYTJlOGI4cDgsCisgICAgLTB4MS5hMmU4YjhwLTEsCisgICAgMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuYTJlOGI4cDksCisgICAgLTB4MS5hMmU4YjhwLTEsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEuNzQ1ZDE0cC0xMSwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEuNzQ1ZDE0cC0xMCwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAtMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEuNzQ1ZDE0cC05LAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIC0weDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuNzQ1ZDE0cC04LAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIC0weDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgLTB4MS43NDVkMTRwLTcsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgLTB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLjc0NWQxNHAtNiwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAtMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIC0weDEuNzQ1ZDE0cC01LAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIC0weDEuNzQ1ZDE0cC00LAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIC0weDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgLTB4MS43NDVkMTRwLTMsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS43NDVkMTRwLTIsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAtMHgxLjc0NWQxNHAwLAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgLTB4MS43NDVkMTRwMSwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIC0weDEuNzQ1ZDE0cDIsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIC0weDEuNzQ1ZDE0cDMsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAtMHgxLjc0NWQxNHA0LAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIDB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAtMHgxLjc0NWQxNHA1LAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIDB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAtMHgxLjc0NWQxNHA2LAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIDB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAtMHgxLjc0NWQxNHA3LAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgLTB4MS43NDVkMTRwOCwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAweDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgLTB4MS43NDVkMTRwOSwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLTB4MS40NWQxNzBwLTExLAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIC0weDEuNDVkMTcwcC0xMCwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAtMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAtMHgxLjQ1ZDE3MHAtOSwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAtMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgLTB4MS40NWQxNzBwLTgsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgLTB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgLTB4MS40NWQxNzBwLTcsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgLTB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgLTB4MS40NWQxNzBwLTYsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgLTB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTB4MS40NWQxNzBwLTUsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIC0weDEuNDVkMTcwcC00LAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIC0weDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIC0weDEuNDVkMTcwcC0zLAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMHgxLjQ1ZDE3MHAtMiwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgLTB4MS40NWQxNzBwMCwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAtMHgxLjQ1ZDE3MHAxLAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIC0weDEuNDVkMTcwcDIsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLjQ1ZDE3MHAzLAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIC0weDEuNDVkMTcwcDQsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAtMHgxLjQ1ZDE3MHA1LAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIDB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgLTB4MS40NWQxNzBwNiwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAweDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIC0weDEuNDVkMTcwcDcsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgLTB4MS40NWQxNzBwOCwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAweDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIC0weDEuNDVkMTcwcDksCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAtMHgxLjE3NDVjY3AtMTEsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgLTB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgLTB4MS4xNzQ1Y2NwLTEwLAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIC0weDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIC0weDEuMTc0NWNjcC05LAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIC0weDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLjE3NDVjY3AtOCwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAtMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAtMHgxLjE3NDVjY3AtNywKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAtMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAtMHgxLjE3NDVjY3AtNiwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAtMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAtMHgxLjE3NDVjY3AtNSwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgLTB4MS4xNzQ1Y2NwLTQsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgLTB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgLTB4MS4xNzQ1Y2NwLTMsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIC0weDEuMTc0NWNjcC0yLAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLjE3NDVjY3AwLAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIC0weDEuMTc0NWNjcDEsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS4xNzQ1Y2NwMiwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAweDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIC0weDEuMTc0NWNjcDMsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS4xNzQ1Y2NwNCwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAweDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIC0weDEuMTc0NWNjcDUsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLjE3NDVjY3A2LAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIDB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgLTB4MS4xNzQ1Y2NwNywKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLjE3NDVjY3A4LAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIDB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgLTB4MS4xNzQ1Y2NwOSwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuZDE3NDUycC0xMiwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAtMHgxLmQxNzQ1MnAtMTEsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgLTB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS5kMTc0NTJwLTEwLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIC0weDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAtMHgxLmQxNzQ1MnAtOSwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAtMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAtMHgxLmQxNzQ1MnAtOCwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAtMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLmQxNzQ1MnAtNywKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAtMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAtMHgxLmQxNzQ1MnAtNiwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS5kMTc0NTJwLTUsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgLTB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS5kMTc0NTJwLTQsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEuZDE3NDUycC0zLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLmQxNzQ1MnAtMSwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAtMHgxLmQxNzQ1MnAwLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0weDEuZDE3NDUycDEsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLmQxNzQ1MnAyLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEuZDE3NDUycDMsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLmQxNzQ1MnA0LAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIDB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgLTB4MS5kMTc0NTJwNSwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAweDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZDE3NDUycDYsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgLTB4MS5kMTc0NTJwNywKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAweDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0weDEuZDE3NDUycDgsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMHgxLjc0NWQwY3AtMTIsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgLTB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS43NDVkMGNwLTExLAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIC0weDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIC0weDEuNzQ1ZDBjcC0xMCwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAtMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS43NDVkMGNwLTksCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgLTB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgLTB4MS43NDVkMGNwLTgsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgLTB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS43NDVkMGNwLTcsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgLTB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgLTB4MS43NDVkMGNwLTYsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuNzQ1ZDBjcC01LAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIC0weDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIC0weDEuNzQ1ZDBjcC00LAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLjc0NWQwY3AtMywKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS43NDVkMGNwLTEsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgLTB4MS43NDVkMGNwMCwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAtMHgxLjc0NWQwY3AxLAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIDB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgLTB4MS43NDVkMGNwMiwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLjc0NWQwY3AzLAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIDB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgLTB4MS43NDVkMGNwNCwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAweDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuNzQ1ZDBjcDUsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAtMHgxLjc0NWQwY3A2LAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuNzQ1ZDBjcDcsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAtMHgxLjc0NWQwY3A4LAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTB4MS4xNzQ1YzZwLTEyLAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIC0weDEuMTc0NWM2cC0xMSwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAtMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLjE3NDVjNnAtMTAsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgLTB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIC0weDEuMTc0NWM2cC05LAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIC0weDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuMTc0NWM2cC04LAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIC0weDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIC0weDEuMTc0NWM2cC03LAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIC0weDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuMTc0NWM2cC02LAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAtMHgxLjE3NDVjNnAtNSwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAtMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAtMHgxLjE3NDVjNnAtNCwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgLTB4MS4xNzQ1YzZwLTMsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEuMTc0NWM2cC0yLAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEuMTc0NWM2cC0xLAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuMTc0NWM2cDAsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgLTB4MS4xNzQ1YzZwMSwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAweDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuMTc0NWM2cDIsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgLTB4MS4xNzQ1YzZwMywKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAweDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIC0weDEuMTc0NWM2cDQsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAtMHgxLjE3NDVjNnA1LAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIDB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgLTB4MS4xNzQ1YzZwNiwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAtMHgxLjE3NDVjNnA3LAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIDB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS4xNzQ1YzZwOCwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0weDEuNzQ1ZHAtMTMsCisgICAgLTB4MS43NDVkcC0zLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0weDEuNzQ1ZHAtMTIsCisgICAgLTB4MS43NDVkcC0zLAorICAgIC0weDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIC0weDEuNzQ1ZHAtMTEsCisgICAgLTB4MS43NDVkcC0zLAorICAgIC0weDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLjc0NWRwLTEwLAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAtMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMHgxLjc0NWRwLTksCisgICAgLTB4MS43NDVkcC0zLAorICAgIC0weDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuNzQ1ZHAtOCwKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgLTB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgLTB4MS43NDVkcC03LAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS43NDVkcC02LAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAtMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAtMHgxLjc0NWRwLTUsCisgICAgLTB4MS43NDVkcC0zLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAtMHgxLjc0NWRwLTQsCisgICAgLTB4MS43NDVkcC0zLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgLTB4MS43NDVkcC0zLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0weDEuNzQ1ZHAtMiwKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgLTB4MS43NDVkcC0xLAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAtMHgxLjc0NWRwMCwKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAtMHgxLjc0NWRwMSwKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS43NDVkcDIsCisgICAgLTB4MS43NDVkcC0zLAorICAgIDB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgLTB4MS43NDVkcDMsCisgICAgLTB4MS43NDVkcC0zLAorICAgIDB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTB4MS43NDVkcDQsCisgICAgLTB4MS43NDVkcC0zLAorICAgIDB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgLTB4MS43NDVkcDUsCisgICAgLTB4MS43NDVkcC0zLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIC0weDEuNzQ1ZHA2LAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAweDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIC0weDEuNzQ1ZHA3LAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0weDEuNzQ1Y2U4cC0xNCwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAtMHgxLjc0NWNlOHAtMTMsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgLTB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgLTB4MS43NDVjZThwLTEyLAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIC0weDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAtMHgxLjc0NWNlOHAtMTEsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgLTB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTB4MS43NDVjZThwLTEwLAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIC0weDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIC0weDEuNzQ1Y2U4cC05LAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIC0weDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIC0weDEuNzQ1Y2U4cC04LAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAtMHgxLjc0NWNlOHAtNywKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAtMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAtMHgxLjc0NWNlOHAtNiwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgLTB4MS43NDVjZThwLTUsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIC0weDEuNzQ1Y2U4cC0zLAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIC0weDEuNzQ1Y2U4cC0yLAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIC0weDEuNzQ1Y2U4cC0xLAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIDB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgLTB4MS43NDVjZThwMCwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAtMHgxLjc0NWNlOHAxLAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIDB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS43NDVjZThwMiwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAweDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIC0weDEuNzQ1Y2U4cDMsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAtMHgxLjc0NWNlOHA0LAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIC0weDEuNzQ1Y2U4cDUsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAtMHgxLjc0NWNlOHA2LAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgMHgxLjgwcC0zMywKKyAgICAweDEuODBwLTIzLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS44MHAtMzIsCisgICAgMHgxLjgwcC0yMywKKyAgICAtMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuODBwLTMxLAorICAgIDB4MS44MHAtMjMsCisgICAgLTB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDB4MS44MHAtMzAsCisgICAgMHgxLjgwcC0yMywKKyAgICAtMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEuODBwLTI5LAorICAgIDB4MS44MHAtMjMsCisgICAgLTB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLjgwcC0yOCwKKyAgICAweDEuODBwLTIzLAorICAgIC0weDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS44MHAtMjcsCisgICAgMHgxLjgwcC0yMywKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLjgwcC0yNiwKKyAgICAweDEuODBwLTIzLAorICAgIC0weDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDB4MS44MHAtMjUsCisgICAgMHgxLjgwcC0yMywKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMHgxLjgwcC0yNCwKKyAgICAweDEuODBwLTIzLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuODBwLTIzLAorICAgIDB4MS44MHAtMjMsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjgwcC0yMiwKKyAgICAweDEuODBwLTIzLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS44MHAtMjEsCisgICAgMHgxLjgwcC0yMywKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuODBwLTIwLAorICAgIDB4MS44MHAtMjMsCisgICAgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuODBwLTE5LAorICAgIDB4MS44MHAtMjMsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjYxCisgICAgMHgxLjgwcC0xOCwKKyAgICAweDEuODBwLTIzLAorICAgIDB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLjgwcC0xNywKKyAgICAweDEuODBwLTIzLAorICAgIDB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLjgwcC0xNiwKKyAgICAweDEuODBwLTIzLAorICAgIDB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLjgwcC0xNSwKKyAgICAweDEuODBwLTIzLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS44MHAtMTQsCisgICAgMHgxLjgwcC0yMywKKyAgICAweDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS44MHAtMTMsCisgICAgMHgxLjgwcC0yMywKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS43NDVkNDhwLTE0LAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgLTB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLjc0NWQ0OHAtMTMsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAtMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEuNzQ1ZDQ4cC0xMiwKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIC0weDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuNzQ1ZDQ4cC0xMSwKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIC0weDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS43NDVkNDhwLTEwLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgLTB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLjc0NWQ0OHAtOSwKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIC0weDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS43NDVkNDhwLTgsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLjc0NWQ0OHAtNywKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIC0weDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS43NDVkNDhwLTYsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLjc0NWQ0OHAtNSwKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLjc0NWQ0OHAtMywKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS43NDVkNDhwLTIsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuNzQ1ZDQ4cC0xLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEuNzQ1ZDQ4cDAsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAweDEuNzQ1ZDQ4cDEsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAweDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIDB4MS43NDVkNDhwMiwKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIDB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLjc0NWQ0OHAzLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAweDEuNzQ1ZDQ4cDQsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuNzQ1ZDQ4cDUsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAweDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIDB4MS43NDVkNDhwNiwKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLjc0NWQzMHAtMTMsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuNzQ1ZDMwcC0xMiwKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIC0weDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS43NDVkMzBwLTExLAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgLTB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIDB4MS43NDVkMzBwLTEwLAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgLTB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLjc0NWQzMHAtOSwKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIC0weDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDB4MS43NDVkMzBwLTgsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAtMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEuNzQ1ZDMwcC03LAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIDB4MS43NDVkMzBwLTYsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAtMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEuNzQ1ZDMwcC01LAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIDB4MS43NDVkMzBwLTQsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS43NDVkMzBwLTIsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuNzQ1ZDMwcC0xLAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgMHgxLjc0NWQzMHAwLAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuNzQ1ZDMwcDEsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAweDEuNzQ1ZDMwcDIsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAweDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIDB4MS43NDVkMzBwMywKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIDB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgMHgxLjc0NWQzMHA0LAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuNzQ1ZDMwcDUsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAweDEuNzQ1ZDMwcDYsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAweDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS43NDVkMzBwNywKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgMHgxLjE3NDVkZXAtMTIsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEuMTc0NWRlcC0xMSwKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIC0weDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIDB4MS4xNzQ1ZGVwLTEwLAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgLTB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDB4MS4xNzQ1ZGVwLTksCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAtMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAweDEuMTc0NWRlcC04LAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgLTB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLjE3NDVkZXAtNywKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIC0weDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIDB4MS4xNzQ1ZGVwLTYsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLjE3NDVkZXAtNSwKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIC0weDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIDB4MS4xNzQ1ZGVwLTQsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMHgxLjE3NDVkZXAtMywKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgMHgxLjE3NDVkZXAtMSwKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDB4MS4xNzQ1ZGVwMCwKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS4xNzQ1ZGVwMSwKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIDB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgMHgxLjE3NDVkZXAyLAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgMHgxLjE3NDVkZXAzLAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEuMTc0NWRlcDQsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAweDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS4xNzQ1ZGVwNSwKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIDB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLjE3NDVkZXA2LAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgMHgxLjE3NDVkZXA3LAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuMTc0NWRlcDgsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS43NDVkMjRwLTEyLAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgLTB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgMHgxLjc0NWQyNHAtMTEsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAtMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuNzQ1ZDI0cC0xMCwKKyAgICAweDEuNzQ1ZDI0cC0yLAorICAgIC0weDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAweDEuNzQ1ZDI0cC05LAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgLTB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLjc0NWQyNHAtOCwKKyAgICAweDEuNzQ1ZDI0cC0yLAorICAgIC0weDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIDB4MS43NDVkMjRwLTcsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAtMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAweDEuNzQ1ZDI0cC02LAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIDB4MS43NDVkMjRwLTUsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAtMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuNzQ1ZDI0cC00LAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIDB4MS43NDVkMjRwLTMsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAweDEuNzQ1ZDI0cC0yLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIDB4MS43NDVkMjRwLTEsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuNzQ1ZDI0cDAsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAweDEuNzQ1ZDI0cDEsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAweDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDM0NAorICAgIDB4MS43NDVkMjRwMiwKKyAgICAweDEuNzQ1ZDI0cC0yLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIDB4MS43NDVkMjRwMywKKyAgICAweDEuNzQ1ZDI0cC0yLAorICAgIDB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMHgxLjc0NWQyNHA0LAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuNzQ1ZDI0cDUsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAweDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDB4MS43NDVkMjRwNiwKKyAgICAweDEuNzQ1ZDI0cC0yLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDM0OQorICAgIDB4MS43NDVkMjRwNywKKyAgICAweDEuNzQ1ZDI0cC0yLAorICAgIDB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzUwCisgICAgMHgxLjc0NWQyNHA4LAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAweDEuZDE3NDZhcC0xMiwKKyAgICAweDEuZDE3NDZhcC0yLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIDB4MS5kMTc0NmFwLTExLAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgLTB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzUzCisgICAgMHgxLmQxNzQ2YXAtMTAsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAtMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgMHgxLmQxNzQ2YXAtOSwKKyAgICAweDEuZDE3NDZhcC0yLAorICAgIC0weDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIDB4MS5kMTc0NmFwLTgsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAtMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAweDEuZDE3NDZhcC03LAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgLTB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgMHgxLmQxNzQ2YXAtNiwKKyAgICAweDEuZDE3NDZhcC0yLAorICAgIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAweDEuZDE3NDZhcC01LAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgLTB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzU5CisgICAgMHgxLmQxNzQ2YXAtNCwKKyAgICAweDEuZDE3NDZhcC0yLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAweDEuZDE3NDZhcC0zLAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuZDE3NDZhcC0xLAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgMHgxLmQxNzQ2YXAwLAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzY0CisgICAgMHgxLmQxNzQ2YXAxLAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAweDEuZDE3NDZhcDIsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuZDE3NDZhcDMsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAweDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIDB4MS5kMTc0NmFwNCwKKyAgICAweDEuZDE3NDZhcC0yLAorICAgIDB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzY4CisgICAgMHgxLmQxNzQ2YXA1LAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICAweDEuZDE3NDZhcDYsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzAKKyAgICAweDEuZDE3NDZhcDcsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAweDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIDB4MS5kMTc0NmFwOCwKKyAgICAweDEuZDE3NDZhcC0yLAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzcyCisgICAgMHgxLjE3NDVkOHAtMTEsCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzMKKyAgICAweDEuMTc0NWQ4cC0xMCwKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIC0weDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS4xNzQ1ZDhwLTksCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAtMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgMHgxLjE3NDVkOHAtOCwKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIC0weDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIDB4MS4xNzQ1ZDhwLTcsCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAtMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAweDEuMTc0NWQ4cC02LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgLTB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzc4CisgICAgMHgxLjE3NDVkOHAtNSwKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAweDEuMTc0NWQ4cC00LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgLTB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgMHgxLjE3NDVkOHAtMywKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODEKKyAgICAweDEuMTc0NWQ4cC0yLAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODMKKyAgICAweDEuMTc0NWQ4cDAsCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODQKKyAgICAweDEuMTc0NWQ4cDEsCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAweDEuMTc0NWQ4cDIsCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAweDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDM4NgorICAgIDB4MS4xNzQ1ZDhwMywKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDM4NworICAgIDB4MS4xNzQ1ZDhwNCwKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIDB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgMHgxLjE3NDVkOHA1LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAweDEuMTc0NWQ4cDYsCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAweDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIDB4MS4xNzQ1ZDhwNywKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS4xNzQ1ZDhwOCwKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIDB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgMHgxLjE3NDVkOHA5LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAweDEuNDVkMTdjcC0xMSwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIDB4MS40NWQxN2NwLTEwLAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgLTB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMzk1CisgICAgMHgxLjQ1ZDE3Y3AtOSwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIC0weDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAweDEuNDVkMTdjcC04LAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgLTB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzk3CisgICAgMHgxLjQ1ZDE3Y3AtNywKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIC0weDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDM5OAorICAgIDB4MS40NWQxN2NwLTYsCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAtMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTkKKyAgICAweDEuNDVkMTdjcC01LAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDQwMAorICAgIDB4MS40NWQxN2NwLTQsCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAtMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAweDEuNDVkMTdjcC0zLAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIDB4MS40NWQxN2NwLTIsCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDAzCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIDB4MS40NWQxN2NwMCwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIDB4MS40NWQxN2NwMSwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIDB4MS40NWQxN2NwMiwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIDB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDA3CisgICAgMHgxLjQ1ZDE3Y3AzLAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDA4CisgICAgMHgxLjQ1ZDE3Y3A0LAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAweDEuNDVkMTdjcDUsCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAweDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIDB4MS40NWQxN2NwNiwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIDB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDExCisgICAgMHgxLjQ1ZDE3Y3A3LAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMHgxLjQ1ZDE3Y3A4LAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTMKKyAgICAweDEuNDVkMTdjcDksCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIDB4MS43NDVkMjBwLTExLAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgLTB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDE1CisgICAgMHgxLjc0NWQyMHAtMTAsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAtMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAweDEuNzQ1ZDIwcC05LAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgLTB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDQxNworICAgIDB4MS43NDVkMjBwLTgsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAtMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTgKKyAgICAweDEuNzQ1ZDIwcC03LAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgLTB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDE5CisgICAgMHgxLjc0NWQyMHAtNiwKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIC0weDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIDB4MS43NDVkMjBwLTUsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgMHgxLjc0NWQyMHAtNCwKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIC0weDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDQyMgorICAgIDB4MS43NDVkMjBwLTMsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDIzCisgICAgMHgxLjc0NWQyMHAtMiwKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjQKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgMHgxLjc0NWQyMHAwLAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDI2CisgICAgMHgxLjc0NWQyMHAxLAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDI3CisgICAgMHgxLjc0NWQyMHAyLAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAweDEuNzQ1ZDIwcDMsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEuNzQ1ZDIwcDQsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAweDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIDB4MS43NDVkMjBwNSwKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIDB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDMxCisgICAgMHgxLjc0NWQyMHA2LAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzIKKyAgICAweDEuNzQ1ZDIwcDcsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzMKKyAgICAweDEuNzQ1ZDIwcDgsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAweDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS43NDVkMjBwOSwKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDM1CisgICAgMHgxLmEyZThjNHAtMTEsCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzYKKyAgICAweDEuYTJlOGM0cC0xMCwKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIC0weDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDQzNworICAgIDB4MS5hMmU4YzRwLTksCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAtMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLmEyZThjNHAtOCwKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIC0weDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDQzOQorICAgIDB4MS5hMmU4YzRwLTcsCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAtMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuYTJlOGM0cC02LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgLTB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgMHgxLmEyZThjNHAtNSwKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDIKKyAgICAweDEuYTJlOGM0cC00LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgLTB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgMHgxLmEyZThjNHAtMywKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDQKKyAgICAweDEuYTJlOGM0cC0yLAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NQorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDYKKyAgICAweDEuYTJlOGM0cDAsCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDcKKyAgICAweDEuYTJlOGM0cDEsCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDgKKyAgICAweDEuYTJlOGM0cDIsCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAweDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIDB4MS5hMmU4YzRwMywKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIDB4MS5hMmU4YzRwNCwKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIDB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgMHgxLmEyZThjNHA1LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTIKKyAgICAweDEuYTJlOGM0cDYsCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAweDEuYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDQ1MworICAgIDB4MS5hMmU4YzRwNywKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDQ1NAorICAgIDB4MS5hMmU4YzRwOCwKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIDB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgMHgxLmEyZThjNHA5LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAweDEuZDE3NDY4cC0xMSwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIDB4MS5kMTc0NjhwLTEwLAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgLTB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgMHgxLmQxNzQ2OHAtOSwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIC0weDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTkKKyAgICAweDEuZDE3NDY4cC04LAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgLTB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgMHgxLmQxNzQ2OHAtNywKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIC0weDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDQ2MQorICAgIDB4MS5kMTc0NjhwLTYsCisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAtMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICAweDEuZDE3NDY4cC01LAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDQ2MworICAgIDB4MS5kMTc0NjhwLTQsCisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAtMHgxLjgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjQKKyAgICAweDEuZDE3NDY4cC0zLAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDQ2NQorICAgIDB4MS5kMTc0NjhwLTIsCisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIDB4MS5kMTc0NjhwMCwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIDB4MS5kMTc0NjhwMSwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIDB4MS5kMTc0NjhwMiwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIDB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDcwCisgICAgMHgxLmQxNzQ2OHAzLAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDcxCisgICAgMHgxLmQxNzQ2OHA0LAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzIKKyAgICAweDEuZDE3NDY4cDUsCisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAweDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIDB4MS5kMTc0NjhwNiwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIDB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDc0CisgICAgMHgxLmQxNzQ2OHA3LAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDc1CisgICAgMHgxLmQxNzQ2OHA4LAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAweDEuZDE3NDY4cDksCisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDQ3NworICAgIDB4MS5wLTEwLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzgKKyAgICAweDEucC05LAorICAgIDB4MS5wMCwKKyAgICAtMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzkKKyAgICAweDEucC04LAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDgwCisgICAgMHgxLnAtNywKKyAgICAweDEucDAsCisgICAgLTB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDgxCisgICAgMHgxLnAtNiwKKyAgICAweDEucDAsCisgICAgLTB4MS44MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDgyCisgICAgMHgxLnAtNSwKKyAgICAweDEucDAsCisgICAgLTB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDgzCisgICAgMHgxLnAtNCwKKyAgICAweDEucDAsCisgICAgLTB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIDB4MS5wLTMsCisgICAgMHgxLnAwLAorICAgIC0weDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDQ4NQorICAgIDB4MS5wLTIsCisgICAgMHgxLnAwLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODYKKyAgICAweDEucC0xLAorICAgIDB4MS5wMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgMHgxLnAwLAorICAgIDB4MS5wMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAweDEucDEsCisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIDB4MS5wMiwKKyAgICAweDEucDAsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgMHgxLnAzLAorICAgIDB4MS5wMCwKKyAgICAweDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDQ5MQorICAgIDB4MS5wNCwKKyAgICAweDEucDAsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDkyCisgICAgMHgxLnA1LAorICAgIDB4MS5wMCwKKyAgICAweDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDQ5MworICAgIDB4MS5wNiwKKyAgICAweDEucDAsCisgICAgMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTQKKyAgICAweDEucDcsCisgICAgMHgxLnAwLAorICAgIDB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDk1CisgICAgMHgxLnA4LAorICAgIDB4MS5wMCwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTYKKyAgICAweDEucDksCisgICAgMHgxLnAwLAorICAgIDB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgMHgxLnAxMCwKKyAgICAweDEucDAsCisgICAgMHgxLjQwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTgKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mY3A2CisgIH0sCisgIHsgLy8gRW50cnkgNDk5CisgICAgMHgxLmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZjhwNgorICB9LAorICB7IC8vIEVudHJ5IDUwMAorICAgIDB4MS5mZmZmZmVwMTE3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIDB4MS5mZmZmZmVwMTE4LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuMjBwMworICB9LAorICB7IC8vIEVudHJ5IDUwMgorICAgIDB4MS5mZmZmZmVwMTE5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICAweDEuZmZmZmZlcDEyMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAweDEuZmZmZmZlcDEyMSwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAweDEuZmZmZmZlcDEyMiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLjQwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDYKKyAgICAweDEuZmZmZmZlcDEyMywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTA3CisgICAgMHgxLmZmZmZmZXAxMjQsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLmZmZmZmZXAxMjUsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDUwOQorICAgIDB4MS5mZmZmZmVwMTI2LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTAKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTEKKyAgICAweDEucC0yMiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmZjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTIKKyAgICAweDEucC0yMywKKyAgICAweDEucC0xNDksCisgICAgMHgxLmY4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTMKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDUxNAorICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTE1CisgICAgMHgxLnAtMTQ3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTYKKyAgICAweDEucC0xNDYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTE3CisgICAgMHgxLnAtMTQ1LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICAweDEucC0xNDQsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNTE5CisgICAgMHgxLnAtMTQzLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDUyMAorICAgIDB4MS5wLTE0MiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjEKKyAgICAweDEucC0xNDEsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDUyMgorICAgIDB4MS5wLTE0MCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjMKKyAgICAweDEucC0xMzksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTI0CisgICAgMHgxLnAtMTI5LAorICAgIDB4MS5wLTIsCisgICAgLTB4MS5mY3A2CisgIH0sCisgIHsgLy8gRW50cnkgNTI1CisgICAgMHgxLnAtMTI4LAorICAgIDB4MS5wLTIsCisgICAgLTB4MS5mOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNTI2CisgICAgMHgxLnAtMTI4LAorICAgIDB4MS5wLTEsCisgICAgLTB4MS5mY3A2CisgIH0sCisgIHsgLy8gRW50cnkgNTI3CisgICAgMHgxLnAtMTI3LAorICAgIDB4MS5wLTEsCisgICAgLTB4MS5mOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgMHgxLjgwcC0xMjgsCisgICAgMHgxLjgwcC0xLAorICAgIC0weDEuZmNwNgorICB9LAorICB7IC8vIEVudHJ5IDUyOQorICAgIDB4MS44MHAtMTI3LAorICAgIDB4MS44MHAtMSwKKyAgICAtMHgxLmY4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAwLjBmLAorICAgIDB4MS5wLTIsCisgICAgLTB4MS4yYXA3CisgIH0sCisgIHsgLy8gRW50cnkgNTMxCisgICAgMC4wZiwKKyAgICAweDEucC0yLAorICAgIC0weDEuMjhwNworICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIDAuMGYsCisgICAgMHgxLnAtMSwKKyAgICAtMHgxLjJhcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzMKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMSwKKyAgICAtMHgxLjI4cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzQKKyAgICAwLjBmLAorICAgIDB4MS44MHAtMSwKKyAgICAtMHgxLjJhcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAweDEuODBwLTE0OSwKKyAgICAweDEuODBwLTEsCisgICAgLTB4MS4yOHA3CisgIH0sCisgIHsgLy8gRW50cnkgNTM2CisgICAgMHgxLnAxMjcsCisgICAgMHgxLnAwLAorICAgIDB4MS5mY3A2CisgIH0sCisgIHsgLy8gRW50cnkgNTM3CisgICAgMHgxLnAxMjYsCisgICAgMHgxLnAwLAorICAgIDB4MS5mOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzkKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU0MAorICAgIDB4MS5wLTE0NywKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTQxCisgICAgMHgxLnAtMTQ2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuODBwMQorICB9LAorICB7IC8vIEVudHJ5IDU0MgorICAgIDB4MS5wLTE0NSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTQzCisgICAgMHgxLnAtMTQ0LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNDBwMgorICB9LAorICB7IC8vIEVudHJ5IDU0NAorICAgIDB4MS5wLTE0MywKKyAgICAweDEucC0xNDksCisgICAgMHgxLjgwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDUKKyAgICAweDEucC0xNDIsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5jMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgMHgxLnAtMTQxLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDcKKyAgICAweDEucC0xNDAsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTQ4CisgICAgMHgxLnAtMTM5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNDBwMworICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIDB4MS5wLTEzOCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLjYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTAKKyAgICAweDEucC0xMzcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS44MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTUxCisgICAgMHgxLnAtMTM2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuYTBwMworICB9LAorICB7IC8vIEVudHJ5IDU1MgorICAgIDB4MS5wLTEzNSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmMwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTMKKyAgICAweDEucC0xMzQsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5lMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNTU0CisgICAgMHgxLnAtMTMzLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTUKKyAgICAweDEucC0xMzIsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS4xMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNTU2CisgICAgMHgxLnAtMTMxLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMjBwNAorICB9LAorICB7IC8vIEVudHJ5IDU1NworICAgIDB4MS5wLTEzMCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLjMwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTgKKyAgICAweDEucC0xMjksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS40MHA0CisgIH0sCisgIHsgLy8gRW50cnkgNTU5CisgICAgMHgxLnAtMTI4LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNTBwNAorICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDB4MS5wLTEyNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLjYwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjEKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS43MHA0CisgIH0sCisgIHsgLy8gRW50cnkgNTYyCisgICAgMHgxLnAtMTI1LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuODBwNAorICB9LAorICB7IC8vIEVudHJ5IDU2MworICAgIDB4MS5wLTEyNCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLjkwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjQKKyAgICAweDEucC0xMjMsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5hMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNTY1CisgICAgMHgxLnAtMTIyLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuYjBwNAorICB9LAorICB7IC8vIEVudHJ5IDU2NgorICAgIDB4MS5wLTEyMSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmMwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICAweDEucC0xMjAsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5kMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNTY4CisgICAgMHgxLnAtMTE5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZTBwNAorICB9LAorICB7IC8vIEVudHJ5IDU2OQorICAgIDB4MS5wLTExOCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLmYwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzAKKyAgICAweDEucC0xMTcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIDB4MS5wLTExNiwKKyAgICAweDEucC0xNDksCisgICAgMHgxLjA4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzIKKyAgICAweDEucC0xMTUsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS4xMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTczCisgICAgMHgxLnAtMTE0LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMThwNQorICB9LAorICB7IC8vIEVudHJ5IDU3NAorICAgIDB4MS5wLTExMywKKyAgICAweDEucC0xNDksCisgICAgMHgxLjIwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzUKKyAgICAweDEucC0xMTIsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS4yOHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTc2CisgICAgMHgxLnAtMTExLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMzBwNQorICB9LAorICB7IC8vIEVudHJ5IDU3NworICAgIDB4MS5wLTExMCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLjM4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzgKKyAgICAweDEucC0xMDksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS40MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTc5CisgICAgMHgxLnAtMTA4LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNDhwNQorICB9LAorICB7IC8vIEVudHJ5IDU4MAorICAgIDB4MS5wLTEwNywKKyAgICAweDEucC0xNDksCisgICAgMHgxLjUwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODEKKyAgICAweDEucC0xMDYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS41OHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgMHgxLnAtMTA1LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNjBwNQorICB9LAorICB7IC8vIEVudHJ5IDU4MworICAgIDB4MS5wLTEwNCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLjY4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODQKKyAgICAweDEucC0xMDMsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS43MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTg1CisgICAgMHgxLnAtMTAyLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNzhwNQorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIDB4MS5wLTEwMSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLjgwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODcKKyAgICAweDEucC0xMDAsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS44OHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTg4CisgICAgMHgxLnAtOTksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS45MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTg5CisgICAgMHgxLnAtOTgsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS45OHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTkwCisgICAgMHgxLnAtOTcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5hMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTkxCisgICAgMHgxLnAtOTYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5hOHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTkyCisgICAgMHgxLnAtOTUsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5iMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTkzCisgICAgMHgxLnAtOTQsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5iOHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTk0CisgICAgMHgxLnAtOTMsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5jMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTk1CisgICAgMHgxLnAtOTIsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5jOHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTk2CisgICAgMHgxLnAtOTEsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5kMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTk3CisgICAgMHgxLnAtOTAsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5kOHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTk4CisgICAgMHgxLnAtODksCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5lMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNTk5CisgICAgMHgxLnAtODgsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5lOHA1CisgIH0sCisgIHsgLy8gRW50cnkgNjAwCisgICAgMHgxLnAtODcsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNjAxCisgICAgMHgxLnAtODYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5mOHA1CisgIH0sCisgIHsgLy8gRW50cnkgNjAyCisgICAgMHgxLnAtODUsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wNgorICB9LAorICB7IC8vIEVudHJ5IDYwMworICAgIDB4MS5wLTg0LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMDRwNgorICB9LAorICB7IC8vIEVudHJ5IDYwNAorICAgIDB4MS5wLTgzLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMDhwNgorICB9LAorICB7IC8vIEVudHJ5IDYwNQorICAgIDB4MS5wLTgyLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMGNwNgorICB9LAorICB7IC8vIEVudHJ5IDYwNgorICAgIDB4MS5wLTgxLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMTBwNgorICB9LAorICB7IC8vIEVudHJ5IDYwNworICAgIDB4MS5wLTgwLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMTRwNgorICB9LAorICB7IC8vIEVudHJ5IDYwOAorICAgIDB4MS5wLTc5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMThwNgorICB9LAorICB7IC8vIEVudHJ5IDYwOQorICAgIDB4MS5wLTc4LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMWNwNgorICB9LAorICB7IC8vIEVudHJ5IDYxMAorICAgIDB4MS5wLTc3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMjBwNgorICB9LAorICB7IC8vIEVudHJ5IDYxMQorICAgIDB4MS5wLTc2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMjRwNgorICB9LAorICB7IC8vIEVudHJ5IDYxMgorICAgIDB4MS5wLTc1LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMjhwNgorICB9LAorICB7IC8vIEVudHJ5IDYxMworICAgIDB4MS5wLTc0LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMmNwNgorICB9LAorICB7IC8vIEVudHJ5IDYxNAorICAgIDB4MS5wLTczLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMzBwNgorICB9LAorICB7IC8vIEVudHJ5IDYxNQorICAgIDB4MS5wLTcyLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMzRwNgorICB9LAorICB7IC8vIEVudHJ5IDYxNgorICAgIDB4MS5wLTcxLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMzhwNgorICB9LAorICB7IC8vIEVudHJ5IDYxNworICAgIDB4MS5wLTcwLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuM2NwNgorICB9LAorICB7IC8vIEVudHJ5IDYxOAorICAgIDB4MS5wLTY5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNDBwNgorICB9LAorICB7IC8vIEVudHJ5IDYxOQorICAgIDB4MS5wLTY4LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNDRwNgorICB9LAorICB7IC8vIEVudHJ5IDYyMAorICAgIDB4MS5wLTY3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNDhwNgorICB9LAorICB7IC8vIEVudHJ5IDYyMQorICAgIDB4MS5wLTY2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNGNwNgorICB9LAorICB7IC8vIEVudHJ5IDYyMgorICAgIDB4MS5wLTY1LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNTBwNgorICB9LAorICB7IC8vIEVudHJ5IDYyMworICAgIDB4MS5wLTY0LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNTRwNgorICB9LAorICB7IC8vIEVudHJ5IDYyNAorICAgIDB4MS5wLTYzLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNThwNgorICB9LAorICB7IC8vIEVudHJ5IDYyNQorICAgIDB4MS5wLTYyLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNWNwNgorICB9LAorICB7IC8vIEVudHJ5IDYyNgorICAgIDB4MS5wLTYxLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNjBwNgorICB9LAorICB7IC8vIEVudHJ5IDYyNworICAgIDB4MS5wLTYwLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNjRwNgorICB9LAorICB7IC8vIEVudHJ5IDYyOAorICAgIDB4MS5wLTU5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNjhwNgorICB9LAorICB7IC8vIEVudHJ5IDYyOQorICAgIDB4MS5wLTU4LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNmNwNgorICB9LAorICB7IC8vIEVudHJ5IDYzMAorICAgIDB4MS5wLTU3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNzBwNgorICB9LAorICB7IC8vIEVudHJ5IDYzMQorICAgIDB4MS5wLTU2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNzRwNgorICB9LAorICB7IC8vIEVudHJ5IDYzMgorICAgIDB4MS5wLTU1LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNzhwNgorICB9LAorICB7IC8vIEVudHJ5IDYzMworICAgIDB4MS5wLTU0LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuN2NwNgorICB9LAorICB7IC8vIEVudHJ5IDYzNAorICAgIDB4MS5wLTUzLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuODBwNgorICB9LAorICB7IC8vIEVudHJ5IDYzNQorICAgIDB4MS5wLTUyLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuODRwNgorICB9LAorICB7IC8vIEVudHJ5IDYzNgorICAgIDB4MS5wLTUxLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuODhwNgorICB9LAorICB7IC8vIEVudHJ5IDYzNworICAgIDB4MS5wLTUwLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuOGNwNgorICB9LAorICB7IC8vIEVudHJ5IDYzOAorICAgIDB4MS5wLTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuOTBwNgorICB9LAorICB7IC8vIEVudHJ5IDYzOQorICAgIDB4MS5wLTQ4LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuOTRwNgorICB9LAorICB7IC8vIEVudHJ5IDY0MAorICAgIDB4MS5wLTQ3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuOThwNgorICB9LAorICB7IC8vIEVudHJ5IDY0MQorICAgIDB4MS5wLTQ2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuOWNwNgorICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIDB4MS5wLTQ1LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuYTBwNgorICB9LAorICB7IC8vIEVudHJ5IDY0MworICAgIDB4MS5wLTQ0LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuYTRwNgorICB9LAorICB7IC8vIEVudHJ5IDY0NAorICAgIDB4MS5wLTQzLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuYThwNgorICB9LAorICB7IC8vIEVudHJ5IDY0NQorICAgIDB4MS5wLTQyLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuYWNwNgorICB9LAorICB7IC8vIEVudHJ5IDY0NgorICAgIDB4MS5wLTQxLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuYjBwNgorICB9LAorICB7IC8vIEVudHJ5IDY0NworICAgIDB4MS5wLTQwLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuYjRwNgorICB9LAorICB7IC8vIEVudHJ5IDY0OAorICAgIDB4MS5wLTM5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuYjhwNgorICB9LAorICB7IC8vIEVudHJ5IDY0OQorICAgIDB4MS5wLTM4LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuYmNwNgorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIDB4MS5wLTM3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuYzBwNgorICB9LAorICB7IC8vIEVudHJ5IDY1MQorICAgIDB4MS5wLTM2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuYzRwNgorICB9LAorICB7IC8vIEVudHJ5IDY1MgorICAgIDB4MS5wLTM1LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuYzhwNgorICB9LAorICB7IC8vIEVudHJ5IDY1MworICAgIDB4MS5wLTM0LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuY2NwNgorICB9LAorICB7IC8vIEVudHJ5IDY1NAorICAgIDB4MS5wLTMzLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZDBwNgorICB9LAorICB7IC8vIEVudHJ5IDY1NQorICAgIDB4MS5wLTMyLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZDRwNgorICB9LAorICB7IC8vIEVudHJ5IDY1NgorICAgIDB4MS5wLTMxLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZDhwNgorICB9LAorICB7IC8vIEVudHJ5IDY1NworICAgIDB4MS5wLTMwLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZGNwNgorICB9LAorICB7IC8vIEVudHJ5IDY1OAorICAgIDB4MS5wLTI5LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZTBwNgorICB9LAorICB7IC8vIEVudHJ5IDY1OQorICAgIDB4MS5wLTI4LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZTRwNgorICB9LAorICB7IC8vIEVudHJ5IDY2MAorICAgIDB4MS5wLTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZThwNgorICB9LAorICB7IC8vIEVudHJ5IDY2MQorICAgIDB4MS5wLTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZWNwNgorICB9LAorICB7IC8vIEVudHJ5IDY2MgorICAgIDB4MS5wLTI1LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZjBwNgorICB9LAorICB7IC8vIEVudHJ5IDY2MworICAgIDB4MS5wLTI0LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZjRwNgorICB9LAorICB7IC8vIEVudHJ5IDY2NAorICAgIDB4MS5wLTIzLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZjhwNgorICB9LAorICB7IC8vIEVudHJ5IDY2NQorICAgIDB4MS5wLTIyLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmNwNgorICB9LAorICB7IC8vIEVudHJ5IDY2NgorICAgIDB4MS5wLTIxLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjcKKyAgICAweDEucC0yMCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLjAycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjgKKyAgICAweDEucC0xOSwKKyAgICAweDEucC0xNDksCisgICAgMHgxLjA0cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjkKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDY3MAorICAgIDB4MS5mZmZmZmNwLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjcxCisgICAgMHgxLmZmZmZmY3AtMTI1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzIKKyAgICAweDEuZmZmZmZjcC0xMjQsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS44MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjczCisgICAgMHgxLmZmZmZmY3AtMTIzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzQKKyAgICAweDEuZmZmZmZjcC0xMjIsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS40MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjc1CisgICAgMHgxLmZmZmZmY3AtMTIxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuODBwMgorICB9LAorICB7IC8vIEVudHJ5IDY3NgorICAgIDB4MS5mZmZmZmNwLTEyMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzcKKyAgICAweDEuZmZmZmZjcC0xMTksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDY3OAorICAgIDB4MS5mZmZmZmNwLTExOCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjIwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzkKKyAgICAweDEuZmZmZmZjcC0xMTcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS40MHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjgwCisgICAgMHgxLmZmZmZmY3AtMTE2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDY4MQorICAgIDB4MS5mZmZmZmNwLTExNSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODIKKyAgICAweDEuZmZmZmZjcC0xMTQsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5hMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjgzCisgICAgMHgxLmZmZmZmY3AtMTEzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuYzBwMworICB9LAorICB7IC8vIEVudHJ5IDY4NAorICAgIDB4MS5mZmZmZmNwLTExMiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmUwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODUKKyAgICAweDEuZmZmZmZjcC0xMTEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIDB4MS5mZmZmZmNwLTExMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjEwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODcKKyAgICAweDEuZmZmZmZjcC0xMDksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS4yMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNjg4CisgICAgMHgxLmZmZmZmY3AtMTA4LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuMzBwNAorICB9LAorICB7IC8vIEVudHJ5IDY4OQorICAgIDB4MS5mZmZmZmNwLTEwNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjQwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTAKKyAgICAweDEuZmZmZmZjcC0xMDYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS41MHA0CisgIH0sCisgIHsgLy8gRW50cnkgNjkxCisgICAgMHgxLmZmZmZmY3AtMTA1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuNjBwNAorICB9LAorICB7IC8vIEVudHJ5IDY5MgorICAgIDB4MS5mZmZmZmNwLTEwNCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjcwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTMKKyAgICAweDEuZmZmZmZjcC0xMDMsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS44MHA0CisgIH0sCisgIHsgLy8gRW50cnkgNjk0CisgICAgMHgxLmZmZmZmY3AtMTAyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuOTBwNAorICB9LAorICB7IC8vIEVudHJ5IDY5NQorICAgIDB4MS5mZmZmZmNwLTEwMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmEwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTYKKyAgICAweDEuZmZmZmZjcC0xMDAsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5iMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNjk3CisgICAgMHgxLmZmZmZmY3AtOTksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5jMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNjk4CisgICAgMHgxLmZmZmZmY3AtOTgsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5kMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNjk5CisgICAgMHgxLmZmZmZmY3AtOTcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5lMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNzAwCisgICAgMHgxLmZmZmZmY3AtOTYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNzAxCisgICAgMHgxLmZmZmZmY3AtOTUsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDcwMgorICAgIDB4MS5mZmZmZmNwLTk0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuMDhwNQorICB9LAorICB7IC8vIEVudHJ5IDcwMworICAgIDB4MS5mZmZmZmNwLTkzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuMTBwNQorICB9LAorICB7IC8vIEVudHJ5IDcwNAorICAgIDB4MS5mZmZmZmNwLTkyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuMThwNQorICB9LAorICB7IC8vIEVudHJ5IDcwNQorICAgIDB4MS5mZmZmZmNwLTkxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuMjBwNQorICB9LAorICB7IC8vIEVudHJ5IDcwNgorICAgIDB4MS5mZmZmZmNwLTkwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuMjhwNQorICB9LAorICB7IC8vIEVudHJ5IDcwNworICAgIDB4MS5mZmZmZmNwLTg5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuMzBwNQorICB9LAorICB7IC8vIEVudHJ5IDcwOAorICAgIDB4MS5mZmZmZmNwLTg4LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuMzhwNQorICB9LAorICB7IC8vIEVudHJ5IDcwOQorICAgIDB4MS5mZmZmZmNwLTg3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuNDBwNQorICB9LAorICB7IC8vIEVudHJ5IDcxMAorICAgIDB4MS5mZmZmZmNwLTg2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuNDhwNQorICB9LAorICB7IC8vIEVudHJ5IDcxMQorICAgIDB4MS5mZmZmZmNwLTg1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuNTBwNQorICB9LAorICB7IC8vIEVudHJ5IDcxMgorICAgIDB4MS5mZmZmZmNwLTg0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuNThwNQorICB9LAorICB7IC8vIEVudHJ5IDcxMworICAgIDB4MS5mZmZmZmNwLTgzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuNjBwNQorICB9LAorICB7IC8vIEVudHJ5IDcxNAorICAgIDB4MS5mZmZmZmNwLTgyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuNjhwNQorICB9LAorICB7IC8vIEVudHJ5IDcxNQorICAgIDB4MS5mZmZmZmNwLTgxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuNzBwNQorICB9LAorICB7IC8vIEVudHJ5IDcxNgorICAgIDB4MS5mZmZmZmNwLTgwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuNzhwNQorICB9LAorICB7IC8vIEVudHJ5IDcxNworICAgIDB4MS5mZmZmZmNwLTc5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuODBwNQorICB9LAorICB7IC8vIEVudHJ5IDcxOAorICAgIDB4MS5mZmZmZmNwLTc4LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuODhwNQorICB9LAorICB7IC8vIEVudHJ5IDcxOQorICAgIDB4MS5mZmZmZmNwLTc3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuOTBwNQorICB9LAorICB7IC8vIEVudHJ5IDcyMAorICAgIDB4MS5mZmZmZmNwLTc2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuOThwNQorICB9LAorICB7IC8vIEVudHJ5IDcyMQorICAgIDB4MS5mZmZmZmNwLTc1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuYTBwNQorICB9LAorICB7IC8vIEVudHJ5IDcyMgorICAgIDB4MS5mZmZmZmNwLTc0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuYThwNQorICB9LAorICB7IC8vIEVudHJ5IDcyMworICAgIDB4MS5mZmZmZmNwLTczLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuYjBwNQorICB9LAorICB7IC8vIEVudHJ5IDcyNAorICAgIDB4MS5mZmZmZmNwLTcyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuYjhwNQorICB9LAorICB7IC8vIEVudHJ5IDcyNQorICAgIDB4MS5mZmZmZmNwLTcxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuYzBwNQorICB9LAorICB7IC8vIEVudHJ5IDcyNgorICAgIDB4MS5mZmZmZmNwLTcwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuYzhwNQorICB9LAorICB7IC8vIEVudHJ5IDcyNworICAgIDB4MS5mZmZmZmNwLTY5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZDBwNQorICB9LAorICB7IC8vIEVudHJ5IDcyOAorICAgIDB4MS5mZmZmZmNwLTY4LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZDhwNQorICB9LAorICB7IC8vIEVudHJ5IDcyOQorICAgIDB4MS5mZmZmZmNwLTY3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZTBwNQorICB9LAorICB7IC8vIEVudHJ5IDczMAorICAgIDB4MS5mZmZmZmNwLTY2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZThwNQorICB9LAorICB7IC8vIEVudHJ5IDczMQorICAgIDB4MS5mZmZmZmNwLTY1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZjBwNQorICB9LAorICB7IC8vIEVudHJ5IDczMgorICAgIDB4MS5mZmZmZmNwLTY0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZjhwNQorICB9LAorICB7IC8vIEVudHJ5IDczMworICAgIDB4MS5mZmZmZmNwLTYzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzQKKyAgICAweDEuZmZmZmZjcC02MiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjA0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzUKKyAgICAweDEuZmZmZmZjcC02MSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjA4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzYKKyAgICAweDEuZmZmZmZjcC02MCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjBjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzcKKyAgICAweDEuZmZmZmZjcC01OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjEwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzgKKyAgICAweDEuZmZmZmZjcC01OCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjE0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzkKKyAgICAweDEuZmZmZmZjcC01NywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjE4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDAKKyAgICAweDEuZmZmZmZjcC01NiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjFjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDEKKyAgICAweDEuZmZmZmZjcC01NSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjIwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDIKKyAgICAweDEuZmZmZmZjcC01NCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjI0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDMKKyAgICAweDEuZmZmZmZjcC01MywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjI4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDQKKyAgICAweDEuZmZmZmZjcC01MiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjJjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDUKKyAgICAweDEuZmZmZmZjcC01MSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDYKKyAgICAweDEuZmZmZmZjcC01MCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjM0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDcKKyAgICAweDEuZmZmZmZjcC00OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjM4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDgKKyAgICAweDEuZmZmZmZjcC00OCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjNjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDkKKyAgICAweDEuZmZmZmZjcC00NywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTAKKyAgICAweDEuZmZmZmZjcC00NiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjQ0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTEKKyAgICAweDEuZmZmZmZjcC00NSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjQ4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTIKKyAgICAweDEuZmZmZmZjcC00NCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjRjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTMKKyAgICAweDEuZmZmZmZjcC00MywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjUwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTQKKyAgICAweDEuZmZmZmZjcC00MiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjU0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTUKKyAgICAweDEuZmZmZmZjcC00MSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjU4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTYKKyAgICAweDEuZmZmZmZjcC00MCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjVjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTcKKyAgICAweDEuZmZmZmZjcC0zOSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjYwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTgKKyAgICAweDEuZmZmZmZjcC0zOCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjY0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTkKKyAgICAweDEuZmZmZmZjcC0zNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjY4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjAKKyAgICAweDEuZmZmZmZjcC0zNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjZjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjEKKyAgICAweDEuZmZmZmZjcC0zNSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjcwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjIKKyAgICAweDEuZmZmZmZjcC0zNCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjc0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjMKKyAgICAweDEuZmZmZmZjcC0zMywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjc4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjQKKyAgICAweDEuZmZmZmZjcC0zMiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjdjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjUKKyAgICAweDEuZmZmZmZjcC0zMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjgwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjYKKyAgICAweDEuZmZmZmZjcC0zMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjg0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjcKKyAgICAweDEuZmZmZmZjcC0yOSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjg4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjgKKyAgICAweDEuZmZmZmZjcC0yOCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjhjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjkKKyAgICAweDEuZmZmZmZjcC0yNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjkwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzAKKyAgICAweDEuZmZmZmZjcC0yNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjk0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzEKKyAgICAweDEuZmZmZmZjcC0yNSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjk4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzIKKyAgICAweDEuZmZmZmZjcC0yNCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjljcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzMKKyAgICAweDEuZmZmZmZjcC0yMywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmEwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzQKKyAgICAweDEuZmZmZmZjcC0yMiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmE0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzUKKyAgICAweDEuZmZmZmZjcC0yMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmE4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzYKKyAgICAweDEuZmZmZmZjcC0yMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmFjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzcKKyAgICAweDEuZmZmZmZjcC0xOSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmIwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzgKKyAgICAweDEuZmZmZmZjcC0xOCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmI0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzkKKyAgICAweDEuZmZmZmZjcC0xNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmI4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODAKKyAgICAweDEuZmZmZmZjcC0xNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmJjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODEKKyAgICAweDEuZmZmZmZjcC0xNSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODIKKyAgICAweDEuZmZmZmZjcC0xNCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmM0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODMKKyAgICAweDEuZmZmZmZjcC0xMywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmM4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODQKKyAgICAweDEuZmZmZmZjcC0xMiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmNjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODUKKyAgICAweDEuZmZmZmZjcC0xMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmQwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODYKKyAgICAweDEuZmZmZmZjcC0xMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmQ0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODcKKyAgICAweDEuZmZmZmZjcC05LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZDhwNgorICB9LAorICB7IC8vIEVudHJ5IDc4OAorICAgIDB4MS5mZmZmZmNwLTgsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5kY3A2CisgIH0sCisgIHsgLy8gRW50cnkgNzg5CisgICAgMHgxLmZmZmZmY3AtNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmUwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTAKKyAgICAweDEuZmZmZmZjcC02LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZTRwNgorICB9LAorICB7IC8vIEVudHJ5IDc5MQorICAgIDB4MS5mZmZmZmNwLTUsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5lOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzkyCisgICAgMHgxLmZmZmZmY3AtNCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmVjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTMKKyAgICAweDEuZmZmZmZjcC0zLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZjBwNgorICB9LAorICB7IC8vIEVudHJ5IDc5NAorICAgIDB4MS5mZmZmZmNwLTIsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mNHA2CisgIH0sCisgIHsgLy8gRW50cnkgNzk1CisgICAgMHgxLmZmZmZmY3AtMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmY4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTYKKyAgICAweDEuZmZmZmZjcDAsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mY3A2CisgIH0sCisgIHsgLy8gRW50cnkgNzk3CisgICAgMHgxLmZmZmZmY3AxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTgKKyAgICAweDEuZmZmZmZjcDIsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS4wMnA3CisgIH0sCisgIHsgLy8gRW50cnkgNzk5CisgICAgMHgxLmZmZmZmY3AzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuMDRwNworICB9LAorICB7IC8vIEVudHJ5IDgwMAorICAgIDB4MS5wMCwKKyAgICAweDEucC0xNDksCisgICAgMHgxLjJhcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDEKKyAgICAweDEucC0xLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuMjhwNworICB9LAorICB7IC8vIEVudHJ5IDgwMgorICAgIDB4MS5mZmZmZmNwMjIsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS4yYXA3CisgIH0sCisgIHsgLy8gRW50cnkgODAzCisgICAgMHgxLmZmZmZmY3AyMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjI4cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDQKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS43MHA0CisgIH0sCisgIHsgLy8gRW50cnkgODA1CisgICAgMHgxLnAtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuNjBwNAorICB9LAorICB7IC8vIEVudHJ5IDgwNgorICAgIDB4MS5mZmZmZmNwLTEwNCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLjcwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDcKKyAgICAweDEuZmZmZmZjcC0xMDUsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS42MHA0CisgIH0sCisgIHsgLy8gRW50cnkgODA4CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDkKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDgxMAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODExCisgICAgMHgxLmZmZmZmY3AtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTIKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDgxMworICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTQKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDgxNQorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTYKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDgxNworICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODE4CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTkKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xNDksCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODIwCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDgyMQorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjIKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjMKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODI0CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODI1CisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjYKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDgyNworICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjgKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODI5CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDgzMAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDgzMQorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDgzMgorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDgzMworICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODM0CisgICAgMC4wZiwKKyAgICAweDEucC0xMjYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODM1CisgICAgMC4wLAorICAgIDB4MS5wLTEyNiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODM2CisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODM3CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODM4CisgICAgMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODM5CisgICAgMC4wLAorICAgIDB4MS5wLTE0OSwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODQwCisgICAgMC4wLAorICAgIDAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDg0MQorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDg0MgorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODQzCisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ5LAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDQKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDg0NQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODQ2CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDcKKyAgICAtMC4wLAorICAgIC0weDEucC0xMjYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDg0OAorICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDkKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgODUwCisgICAgMC4wLAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTEKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODUyCisgICAgMC4wLAorICAgIDAuMGYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg1MworICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg1NAorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODU1CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg1NgorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDg1NworICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgODU4CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDg1OQorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDg2MAorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIDB4MS5mY3A2CisgIH0sCisgIHsgLy8gRW50cnkgODYxCisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAweDEuZmNwNgorICB9LAorICB7IC8vIEVudHJ5IDg2MgorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIC0weDEuZmNwNgorICB9LAorICB7IC8vIEVudHJ5IDg2MworICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgLTB4MS5mY3A2CisgIH0sCisgIHsgLy8gRW50cnkgODY0CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODY1CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjYKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODY3CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODY4CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODY5CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzAKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODcxCisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODcyCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzMKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgODc0CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgODc1CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzYKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mY3A2CisgIH0sCisgIHsgLy8gRW50cnkgODc3CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGLAorICAgIDB4MS5mY3A2CisgIH0sCisgIHsgLy8gRW50cnkgODc4CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzkKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mY3A2CisgIH0sCisgIHsgLy8gRW50cnkgODgwCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODEKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODgyCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg4MworICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODg0CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODg1CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg4NgorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg4NworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODgKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODkKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODkwCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTEKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTIKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg5MworICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg5NAorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODk1CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2LAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODk2CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgODk3CisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDg5OAorICAgIEhVR0VfVkFMRiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTkKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDAKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDEKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmNwNgorICB9LAorICB7IC8vIEVudHJ5IDkwMgorICAgIEhVR0VfVkFMRiwKKyAgICAweDEucC0xMjYsCisgICAgMHgxLjM4ODBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDMKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS4zODgwcDE1CisgIH0sCisgIHsgLy8gRW50cnkgOTA0CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTI2LAorICAgIDB4MS4zODgwcDE1CisgIH0sCisgIHsgLy8gRW50cnkgOTA1CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLnAtMTQ5LAorICAgIDB4MS4zODgwcDE1CisgIH0sCisgIHsgLy8gRW50cnkgOTA2CisgICAgMHgxLnAtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTA3CisgICAgMHgxLmZmZmZmY3AtMTI4LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTA4CisgICAgMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDkwOQorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDkxMAorICAgIC0weDEuZmZmZmZjcC0xMjgsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTExCisgICAgLTB4MS5wLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTIKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIC0weDEuMzg4MHAxNQorICB9LAorICB7IC8vIEVudHJ5IDkxMworICAgIC0wLjBmLAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLjM4ODBwMTUKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9zY2FsYm5faW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL3NjYWxibl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2I5NzUzMAotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9zY2FsYm5faW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsNDMzMyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMl90PGRvdWJsZSwgZG91YmxlLCBpbnQ+IGdfc2NhbGJuX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgLTB4MS41NTU1NTU1NTU1NTU2MHAtMTAyNCwKKyAgICAtMHgxLjU1NTU1NTU1NTU1NTZwLTIsCisgICAgKGludCktMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAtMHgxLjZkYjZkYjZkYjZkYjcwcC0xMDIzLAorICAgIC0weDEuNmRiNmRiNmRiNmRiN3AtMSwKKyAgICAoaW50KS0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIC0weDEuOGUzOGUzOGUzOGUzOTBwLTEwMjMsCisgICAgLTB4MS44ZTM4ZTM4ZTM4ZTM5cC0xLAorICAgIChpbnQpLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KS00NworICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEucC01MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLjI5ZTQxMjllNDEyOWUwcC0xMDI0LAorICAgIDB4MS4yOWU0MTI5ZTQxMjllcC03LAorICAgIChpbnQpLTEwMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjhlMTQ3YWUxNDdhZTFwMCwKKyAgICAoaW50KTIxNDc0ODM2NDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDAuMCwKKyAgICAweDEuZGRkZGRkZGRkZGRkZHAtMiwKKyAgICAoaW50KS0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAwLjAsCisgICAgMHgxLmY3ZGY3ZGY3ZGY3ZGZwLTIsCisgICAgKGludCktMTA3MworICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDMzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEuZmZmZmZmZmZmZmZmYzBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwNzAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCktNDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCkyMTQ3NDgzNjQ3CisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIChpbnQpMjE0NzQ4MzY0NworICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgLTB4MS5wLTEwLAorICAgIC0weDEuMHAwLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAtMHgxLnAtOSwKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAtMHgxLnAtOCwKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAtMHgxLnAtNywKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAtMHgxLnAtNiwKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAtMHgxLnAtNSwKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAtMHgxLnAtNCwKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAtMHgxLnAtMywKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAtMHgxLnAtMiwKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAtMHgxLnAtMSwKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAwLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEucDIsCisgICAgLTB4MS4wcDAsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAtMHgxLnAzLAorICAgIC0weDEuMHAwLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgLTB4MS5wNCwKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIC0weDEucDUsCisgICAgLTB4MS4wcDAsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAtMHgxLnA2LAorICAgIC0weDEuMHAwLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgLTB4MS5wNywKKyAgICAtMHgxLjBwMCwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIC0weDEucDgsCisgICAgLTB4MS4wcDAsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAtMHgxLnA5LAorICAgIC0weDEuMHAwLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgLTB4MS5wMTAsCisgICAgLTB4MS4wcDAsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtMTEsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcC0xMCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtOSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtOCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtNywKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtNiwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtNSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtNCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtMywKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAtMSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcDAsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHAxLAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwMiwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcDMsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHA0LAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwNSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcDYsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3MHA3LAorICAgIC0weDEuZDE3NDVkMTc0NWQxN3AtMSwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIC0weDEuZDE3NDVkMTc0NWQxNzBwOCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTdwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTcwcDksCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE3cC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTExLAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHAtMTAsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTksCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTgsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTcsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTYsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTUsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTQsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTMsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTIsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwLTEsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHAwLAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwMSwKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcDIsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHAzLAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwNCwKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcDUsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHA2LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEuYTJlOGJhMmU4YmEyZTBwNywKKyAgICAtMHgxLmEyZThiYTJlOGJhMmVwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLmEyZThiYTJlOGJhMmUwcDgsCisgICAgLTB4MS5hMmU4YmEyZThiYTJlcC0xLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgLTB4MS5hMmU4YmEyZThiYTJlMHA5LAorICAgIC0weDEuYTJlOGJhMmU4YmEyZXAtMSwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC0xMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NTBwLTEwLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC05LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC04LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC03LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC02LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC01LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC00LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC0zLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC0yLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcC0xLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NTBwMCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcDEsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHAyLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NTBwMywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcDQsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHA1LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NTBwNiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDUwcDcsCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1cC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NTBwOCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDVwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS43NDVkMTc0NWQxNzQ1MHA5LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0NXAtMSwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAtMTEsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAtMTAsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcC05LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAtOCwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwLTcsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcC02LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAtNSwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwLTQsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcC0zLAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAtMiwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwLTEsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwMCwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHAxLAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcDIsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwMywKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHA0LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcDUsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwNiwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjMHA3LAorICAgIC0weDEuNDVkMTc0NWQxNzQ1Y3AtMSwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWMwcDgsCisgICAgLTB4MS40NWQxNzQ1ZDE3NDVjcC0xLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIC0weDEuNDVkMTc0NWQxNzQ1YzBwOSwKKyAgICAtMHgxLjQ1ZDE3NDVkMTc0NWNwLTEsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwLTExLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwLTEwLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAtOSwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwLTgsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcC03LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAtNiwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwLTUsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcC00LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAtMywKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwLTIsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcC0xLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcDAsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwMSwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHAyLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcDMsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwNCwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHA1LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcDYsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MzBwNywKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzNwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczMHA4LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3M3AtMSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzMwcDksCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTczcC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcC0xMiwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcC0xMSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTEwLAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHAtOSwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTgsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcC03LAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHAtNiwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTUsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcC00LAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHAtMywKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTIsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwLTEsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwMCwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHAxLAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcDIsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwMywKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHA0LAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcDUsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEuZDE3NDVkMTc0NWQxNDBwNiwKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTRwLTIsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0MHA3LAorICAgIC0weDEuZDE3NDVkMTc0NWQxNHAtMiwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLmQxNzQ1ZDE3NDVkMTQwcDgsCisgICAgLTB4MS5kMTc0NWQxNzQ1ZDE0cC0yLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcC0xMiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcC0xMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTEwLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHAtOSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTgsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcC03LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHAtNiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTUsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcC00LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHAtMywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTIsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwLTEsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwMCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHAxLAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcDIsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwMywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHA0LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcDUsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIC0weDEuNzQ1ZDE3NDVkMTc0MjBwNiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDJwLTIsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgLTB4MS43NDVkMTc0NWQxNzQyMHA3LAorICAgIC0weDEuNzQ1ZDE3NDVkMTc0MnAtMiwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3NDIwcDgsCisgICAgLTB4MS43NDVkMTc0NWQxNzQycC0yLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3AtMTIsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwLTExLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwLTEwLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwLTksCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3AtOCwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzBwLTIsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC03LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwLTYsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3AtNSwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzBwLTIsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cC00LAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3MHAtMiwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwLTMsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLjE3NDVkMTc0NWQxN3AtMiwKKyAgICAtMHgxLjE3NDVkMTc0NWQxNzBwLTIsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTB4MS4xNzQ1ZDE3NDVkMTdwLTEsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cDAsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cDEsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cDIsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cDMsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cDQsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0weDEuMTc0NWQxNzQ1ZDE3cDUsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cDYsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cDcsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIC0weDEuMTc0NWQxNzQ1ZDE3cDgsCisgICAgLTB4MS4xNzQ1ZDE3NDVkMTcwcC0yLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcC0xMywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcC0xMiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTExLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAtMTAsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcC05LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAtOCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTcsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcC02LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAtNSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwLTQsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcC0zLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcC0yLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcC0xLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcDAsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHAyLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcDMsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwNCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgLTB4MS43NDVkMTc0NWQxNzNkMHA1LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczZHAtMywKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2QwcDYsCisgICAgLTB4MS43NDVkMTc0NWQxNzNkcC0zLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIC0weDEuNzQ1ZDE3NDVkMTczZDBwNywKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3M2RwLTMsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwLTE0LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwLTEzLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtMTIsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC0xMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwLTEwLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtOSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwLTgsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC03LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAtNiwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwLTUsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC00LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC0zLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC0yLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcC0xLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcDAsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwMSwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHAyLAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcDMsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIC0weDEuNzQ1ZDE3NDVkMTczNDBwNCwKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzRwLTQsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgLTB4MS43NDVkMTc0NWQxNzM0MHA1LAorICAgIC0weDEuNzQ1ZDE3NDVkMTczNHAtNCwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAtMHgxLjc0NWQxNzQ1ZDE3MzQwcDYsCisgICAgLTB4MS43NDVkMTc0NWQxNzM0cC00LAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuMjBwLTYyLAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS4yMHAtNjEsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEuMjBwLTYwLAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLjIwcC01OSwKKyAgICAweDEuMnAtNTIsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS4yMHAtNTgsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEuMjBwLTU3LAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMHgxLjIwcC01NiwKKyAgICAweDEuMnAtNTIsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS4yMHAtNTUsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEuMjBwLTU0LAorICAgIDB4MS4ycC01MiwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgMHgxLjIwcC01MywKKyAgICAweDEuMnAtNTIsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIDB4MS4yMHAtNTIsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS4yMHAtNTEsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS4yMHAtNTAsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS4yMHAtNDksCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS4yMHAtNDgsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS4yMHAtNDcsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS4yMHAtNDYsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS4yMHAtNDUsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS4yMHAtNDQsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS4yMHAtNDMsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS4yMHAtNDIsCisgICAgMHgxLjJwLTUyLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwLTE0LAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC0xMywKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC0xMiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC0xMSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC0xMCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC05LAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwLTgsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIDB4MS43NDVkMTc0NWQxNzU4MHAtNywKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC02LAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwLTUsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIDB4MS43NDVkMTc0NWQxNzU4MHAtNCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwLTMsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NThwLTQsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjc0NWQxNzQ1ZDE3NTgwcC0yLAorICAgIDB4MS43NDVkMTc0NWQxNzU4cC00LAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIDB4MS43NDVkMTc0NWQxNzU4MHAtMSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwMCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwMSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwMiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwMywKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwNCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwNSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuNzQ1ZDE3NDVkMTc1ODBwNiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc1OHAtNCwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC0xMywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIDB4MS43NDVkMTc0NWQxNzRmMHAtMTIsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDB4MS43NDVkMTc0NWQxNzRmMHAtMTEsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS43NDVkMTc0NWQxNzRmMHAtMTAsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIDB4MS43NDVkMTc0NWQxNzRmMHAtOSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC04LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwLTcsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIDB4MS43NDVkMTc0NWQxNzRmMHAtNiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC01LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwLTQsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIDB4MS43NDVkMTc0NWQxNzRmMHAtMywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZnAtMywKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuNzQ1ZDE3NDVkMTc0ZjBwLTIsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGZwLTMsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGYwcC0xLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIDB4MS43NDVkMTc0NWQxNzRmMHAwLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIDB4MS43NDVkMTc0NWQxNzRmMHAxLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDB4MS43NDVkMTc0NWQxNzRmMHAyLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIDB4MS43NDVkMTc0NWQxNzRmMHAzLAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS43NDVkMTc0NWQxNzRmMHA0LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIDB4MS43NDVkMTc0NWQxNzRmMHA1LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIDB4MS43NDVkMTc0NWQxNzRmMHA2LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIDB4MS43NDVkMTc0NWQxNzRmMHA3LAorICAgIDB4MS43NDVkMTc0NWQxNzRmcC0zLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwLTEyLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcC0xMSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcC0xMCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMzE1CisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcC05LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwLTgsCisgICAgMHgxLjE3NDVkMTc0NWQxNzlwLTIsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtNywKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcC02LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwLTUsCisgICAgMHgxLjE3NDVkMTc0NWQxNzlwLTIsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAtNCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OXAtMiwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcC0zLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEuMTc0NWQxNzQ1ZDE3OTBwLTIsCisgICAgMHgxLjE3NDVkMTc0NWQxNzlwLTIsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgMHgxLjE3NDVkMTc0NWQxNzkwcC0xLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAwLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAxLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAyLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHAzLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHA0LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHA1LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHA2LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHA3LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5MHA4LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc5cC0yLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwLTEyLAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcC0xMSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcC0xMCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcC05LAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwLTgsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGFwLTIsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDMzOAorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtNywKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcC02LAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwLTUsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGFwLTIsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAtNCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YXAtMiwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMzQyCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcC0zLAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAweDEuNzQ1ZDE3NDVkMTc0YTBwLTIsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NGFwLTIsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgMHgxLjc0NWQxNzQ1ZDE3NGEwcC0xLAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAwLAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAxLAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIDB4MS43NDVkMTc0NWQxNzRhMHAyLAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDB4MS43NDVkMTc0NWQxNzRhMHAzLAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDM0OQorICAgIDB4MS43NDVkMTc0NWQxNzRhMHA0LAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS43NDVkMTc0NWQxNzRhMHA1LAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIDB4MS43NDVkMTc0NWQxNzRhMHA2LAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIDB4MS43NDVkMTc0NWQxNzRhMHA3LAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIDB4MS43NDVkMTc0NWQxNzRhMHA4LAorICAgIDB4MS43NDVkMTc0NWQxNzRhcC0yLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwLTEyLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzU1CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcC0xMSwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcC0xMCwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcC05LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwLTgsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWNwLTIsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtNywKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcC02LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwLTUsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWNwLTIsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAtNCwKKyAgICAweDEuZDE3NDVkMTc0NWQxY3AtMiwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcC0zLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEuZDE3NDVkMTc0NWQxYzBwLTIsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWNwLTIsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWMwcC0xLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAwLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAxLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAyLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDM2OQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHAzLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHA0LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHA1LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHA2LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHA3LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjMHA4LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFjcC0yLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzUKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwLTExLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC0xMCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC05LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzgKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwLTgsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDM3OQorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3MHAtNywKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC02LAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODEKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwLTUsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3MHAtNCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgMHgxLjE3NDVkMTc0NWQxNzcwcC0zLAorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3cC0xLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODQKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwLTIsCisgICAgMHgxLjE3NDVkMTc0NWQxNzdwLTEsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDM4NQorICAgIDB4MS4xNzQ1ZDE3NDVkMTc3MHAtMSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODYKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwMCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODcKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwMSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODgKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwMiwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwMywKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTAKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwNCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTEKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwNSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwNiwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwNywKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTQKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwOCwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAweDEuMTc0NWQxNzQ1ZDE3NzBwOSwKKyAgICAweDEuMTc0NWQxNzQ1ZDE3N3AtMSwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtMTEsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAweDEuNDVkMTc0NWQxNzQ2cC0xMCwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtOSwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtOCwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtNywKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgNDAxCisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtNiwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtNSwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgNDAzCisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtNCwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgNDA0CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtMywKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgNDA1CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtMiwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAtMSwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICAweDEuNDVkMTc0NWQxNzQ2cDAsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNDA4CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnAxLAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDQwOQorICAgIDB4MS40NWQxNzQ1ZDE3NDZwMiwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAweDEuNDVkMTc0NWQxNzQ2cDMsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNDExCisgICAgMHgxLjQ1ZDE3NDVkMTc0NnA0LAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDQxMgorICAgIDB4MS40NWQxNzQ1ZDE3NDZwNSwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTMKKyAgICAweDEuNDVkMTc0NWQxNzQ2cDYsCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgMHgxLjQ1ZDE3NDVkMTc0NnA3LAorICAgIDB4MS40NWQxNzQ1ZDE3NDYwcC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDQxNQorICAgIDB4MS40NWQxNzQ1ZDE3NDZwOCwKKyAgICAweDEuNDVkMTc0NWQxNzQ2MHAtMSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAweDEuNDVkMTc0NWQxNzQ2cDksCisgICAgMHgxLjQ1ZDE3NDVkMTc0NjBwLTEsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDQxNworICAgIDB4MS43NDVkMTc0NWQxNzQ5MHAtMTEsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTgKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTEwLAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTkKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTksCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHAtOCwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDkwcC03LAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTYsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDQyMworICAgIDB4MS43NDVkMTc0NWQxNzQ5MHAtNSwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgMHgxLjc0NWQxNzQ1ZDE3NDkwcC00LAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OTBwLTMsCisgICAgMHgxLjc0NWQxNzQ1ZDE3NDlwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHAtMiwKKyAgICAweDEuNzQ1ZDE3NDVkMTc0OXAtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgNDI3CisgICAgMHgxLjc0NWQxNzQ1ZDE3NDkwcC0xLAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHAwLAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDQyOQorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHAxLAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHAyLAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDQzMQorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHAzLAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDQzMgorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHA0LAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDQzMworICAgIDB4MS43NDVkMTc0NWQxNzQ5MHA1LAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHA2LAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDQzNQorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHA3LAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIDB4MS43NDVkMTc0NWQxNzQ5MHA4LAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDQzNworICAgIDB4MS43NDVkMTc0NWQxNzQ5MHA5LAorICAgIDB4MS43NDVkMTc0NWQxNzQ5cC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzgKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwLTExLAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC0xMCwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgNDQwCisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC05LAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDEKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwLTgsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIDB4MS5hMmU4YmEyZThiYTMyMHAtNywKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC02LAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDQKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwLTUsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDQ0NQorICAgIDB4MS5hMmU4YmEyZThiYTMyMHAtNCwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgNDQ2CisgICAgMHgxLmEyZThiYTJlOGJhMzIwcC0zLAorICAgIDB4MS5hMmU4YmEyZThiYTMycC0xLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDcKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwLTIsCisgICAgMHgxLmEyZThiYTJlOGJhMzJwLTEsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIDB4MS5hMmU4YmEyZThiYTMyMHAtMSwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDkKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwMCwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTAKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwMSwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTEKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwMiwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTIKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwMywKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTMKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwNCwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTQKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwNSwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwNiwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwNywKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTcKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwOCwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTgKKyAgICAweDEuYTJlOGJhMmU4YmEzMjBwOSwKKyAgICAweDEuYTJlOGJhMmU4YmEzMnAtMSwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcC0xMSwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ2MAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtMTAsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDQ2MQorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtOSwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgNDYyCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcC04LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICAweDEuZDE3NDVkMTc0NWQxYjBwLTcsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDQ2NAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtNiwKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgNDY1CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcC01LAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjYKKyAgICAweDEuZDE3NDVkMTc0NWQxYjBwLTQsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIDB4MS5kMTc0NWQxNzQ1ZDFiMHAtMywKKyAgICAweDEuZDE3NDVkMTc0NWQxYnAtMSwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgNDY4CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcC0yLAorICAgIDB4MS5kMTc0NWQxNzQ1ZDFicC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjkKKyAgICAweDEuZDE3NDVkMTc0NWQxYjBwLTEsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgNDcwCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcDAsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNDcxCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcDEsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcDIsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgNDczCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcDMsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNDc0CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcDQsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgNDc1CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcDUsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgNDc2CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcDYsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNDc3CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcDcsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcDgsCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgNDc5CisgICAgMHgxLmQxNzQ1ZDE3NDVkMWIwcDksCisgICAgMHgxLmQxNzQ1ZDE3NDVkMWJwLTEsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDQ4MAorICAgIDB4MS5wLTEwLAorICAgIDB4MS4wcDAsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODEKKyAgICAweDEucC05LAorICAgIDB4MS4wcDAsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDQ4MgorICAgIDB4MS5wLTgsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgNDgzCisgICAgMHgxLnAtNywKKyAgICAweDEuMHAwLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODQKKyAgICAweDEucC02LAorICAgIDB4MS4wcDAsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDQ4NQorICAgIDB4MS5wLTUsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgNDg2CisgICAgMHgxLnAtNCwKKyAgICAweDEuMHAwLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODcKKyAgICAweDEucC0zLAorICAgIDB4MS4wcDAsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDQ4OAorICAgIDB4MS5wLTIsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgNDg5CisgICAgMHgxLnAtMSwKKyAgICAweDEuMHAwLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTAKKyAgICAweDEucDAsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAweDEucDEsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTIKKyAgICAweDEucDIsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICAweDEucDMsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTQKKyAgICAweDEucDQsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTUKKyAgICAweDEucDUsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTYKKyAgICAweDEucDYsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTcKKyAgICAweDEucDcsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTgKKyAgICAweDEucDgsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTkKKyAgICAweDEucDksCisgICAgMHgxLjBwMCwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDAKKyAgICAweDEucDEwLAorICAgIDB4MS4wcDAsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCktMTAyMworICB9LAorICB7IC8vIEVudHJ5IDUwMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCktMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDUwMworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIChpbnQpLTEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS05OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAxMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTA2CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgNTA3CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgNTA5CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMTgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgNTEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgNTEzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgNTE1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTYKKyAgICAweDEucC01MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTcKKyAgICAweDEucC01MiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICAweDEucC03NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAweDEucC03NSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTk5OQorICB9LAorICB7IC8vIEVudHJ5IDUyMAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgNTIxCisgICAgMHgxLnAtMTA3MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjIKKyAgICAweDEucC0xMDcyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDUyMworICAgIDB4MS5wLTEwNzEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgNTI0CisgICAgMHgxLnAtMTA3MCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAweDEucC0xMDY5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDUyNgorICAgIDB4MS5wLTEwNjgsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgNTI3CisgICAgMHgxLnAtMTA2NywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjgKKyAgICAweDEucC0xMDY2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDUyOQorICAgIDB4MS5wLTEwNjUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgNTMwCisgICAgMHgxLnAtMTA2NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgNTMxCisgICAgMHgxLnAtMTAyNSwKKyAgICAweDEuMHAtMiwKKyAgICAoaW50KS0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTMyCisgICAgMHgxLnAtMTAyNCwKKyAgICAweDEuMHAtMiwKKyAgICAoaW50KS0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTMzCisgICAgMHgxLnAtMTAyNCwKKyAgICAweDEuMHAtMSwKKyAgICAoaW50KS0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTM0CisgICAgMHgxLnAtMTAyMywKKyAgICAweDEuMHAtMSwKKyAgICAoaW50KS0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTM1CisgICAgMHgxLjgwcC0xMDI0LAorICAgIDB4MS44cC0xLAorICAgIChpbnQpLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzYKKyAgICAweDEuODBwLTEwMjMsCisgICAgMHgxLjhwLTEsCisgICAgKGludCktMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDUzNworICAgIDAuMCwKKyAgICAweDEuMHAtMiwKKyAgICAoaW50KS0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgMC4wLAorICAgIDB4MS4wcC0yLAorICAgIChpbnQpLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzkKKyAgICAwLjAsCisgICAgMHgxLjBwLTEsCisgICAgKGludCktMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDU0MAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEsCisgICAgKGludCktMTA3MworICB9LAorICB7IC8vIEVudHJ5IDU0MQorICAgIDAuMCwKKyAgICAweDEuOHAtMSwKKyAgICAoaW50KS0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTQyCisgICAgMHgxLjgwcC0xMDc0LAorICAgIDB4MS44cC0xLAorICAgIChpbnQpLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAweDEucDEwMjMsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDQKKyAgICAweDEucDEwMjIsCisgICAgMHgxLjBwMCwKKyAgICAoaW50KTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDUKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDU0NgorICAgIDB4MS5wLTEwNzMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNTQ3CisgICAgMHgxLnAtMTA3MiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDgKKyAgICAweDEucC0xMDcxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIDB4MS5wLTEwNzAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNTUwCisgICAgMHgxLnAtMTA2OSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTEKKyAgICAweDEucC0xMDY4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDU1MgorICAgIDB4MS5wLTEwNjcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNTUzCisgICAgMHgxLnAtMTA2NiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTQKKyAgICAweDEucC0xMDY1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDU1NQorICAgIDB4MS5wLTEwNjQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIDB4MS5wLTEwNjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxMQorICB9LAorICB7IC8vIEVudHJ5IDU1NworICAgIDB4MS5wLTEwNjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxMgorICB9LAorICB7IC8vIEVudHJ5IDU1OAorICAgIDB4MS5wLTEwNjEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxMworICB9LAorICB7IC8vIEVudHJ5IDU1OQorICAgIDB4MS5wLTEwNjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxNAorICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDB4MS5wLTEwNTksCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxNQorICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIDB4MS5wLTEwNTgsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxNgorICB9LAorICB7IC8vIEVudHJ5IDU2MgorICAgIDB4MS5wLTEwNTcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxNworICB9LAorICB7IC8vIEVudHJ5IDU2MworICAgIDB4MS5wLTEwNTYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxOAorICB9LAorICB7IC8vIEVudHJ5IDU2NAorICAgIDB4MS5wLTEwNTUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxOQorICB9LAorICB7IC8vIEVudHJ5IDU2NQorICAgIDB4MS5wLTEwNTQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkyMAorICB9LAorICB7IC8vIEVudHJ5IDU2NgorICAgIDB4MS5wLTEwNTMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkyMQorICB9LAorICB7IC8vIEVudHJ5IDU2NworICAgIDB4MS5wLTEwNTIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkyMgorICB9LAorICB7IC8vIEVudHJ5IDU2OAorICAgIDB4MS5wLTEwNTEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkyMworICB9LAorICB7IC8vIEVudHJ5IDU2OQorICAgIDB4MS5wLTEwNTAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkyNAorICB9LAorICB7IC8vIEVudHJ5IDU3MAorICAgIDB4MS5wLTEwNDksCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkyNQorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIDB4MS5wLTEwNDgsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkyNgorICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIDB4MS5wLTEwNDcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkyNworICB9LAorICB7IC8vIEVudHJ5IDU3MworICAgIDB4MS5wLTEwNDYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkyOAorICB9LAorICB7IC8vIEVudHJ5IDU3NAorICAgIDB4MS5wLTEwNDUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkyOQorICB9LAorICB7IC8vIEVudHJ5IDU3NQorICAgIDB4MS5wLTEwNDQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkzMAorICB9LAorICB7IC8vIEVudHJ5IDU3NgorICAgIDB4MS5wLTEwNDMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkzMQorICB9LAorICB7IC8vIEVudHJ5IDU3NworICAgIDB4MS5wLTEwNDIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkzMgorICB9LAorICB7IC8vIEVudHJ5IDU3OAorICAgIDB4MS5wLTEwNDEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkzMworICB9LAorICB7IC8vIEVudHJ5IDU3OQorICAgIDB4MS5wLTEwNDAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkzNAorICB9LAorICB7IC8vIEVudHJ5IDU4MAorICAgIDB4MS5wLTEwMzksCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkzNQorICB9LAorICB7IC8vIEVudHJ5IDU4MQorICAgIDB4MS5wLTEwMzgsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkzNgorICB9LAorICB7IC8vIEVudHJ5IDU4MgorICAgIDB4MS5wLTEwMzcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkzNworICB9LAorICB7IC8vIEVudHJ5IDU4MworICAgIDB4MS5wLTEwMzYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkzOAorICB9LAorICB7IC8vIEVudHJ5IDU4NAorICAgIDB4MS5wLTEwMzUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkzOQorICB9LAorICB7IC8vIEVudHJ5IDU4NQorICAgIDB4MS5wLTEwMzQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk0MAorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIDB4MS5wLTEwMzMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk0MQorICB9LAorICB7IC8vIEVudHJ5IDU4NworICAgIDB4MS5wLTEwMzIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk0MgorICB9LAorICB7IC8vIEVudHJ5IDU4OAorICAgIDB4MS5wLTEwMzEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk0MworICB9LAorICB7IC8vIEVudHJ5IDU4OQorICAgIDB4MS5wLTEwMzAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk0NAorICB9LAorICB7IC8vIEVudHJ5IDU5MAorICAgIDB4MS5wLTEwMjksCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk0NQorICB9LAorICB7IC8vIEVudHJ5IDU5MQorICAgIDB4MS5wLTEwMjgsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk0NgorICB9LAorICB7IC8vIEVudHJ5IDU5MgorICAgIDB4MS5wLTEwMjcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk0NworICB9LAorICB7IC8vIEVudHJ5IDU5MworICAgIDB4MS5wLTEwMjYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk0OAorICB9LAorICB7IC8vIEVudHJ5IDU5NAorICAgIDB4MS5wLTEwMjUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk0OQorICB9LAorICB7IC8vIEVudHJ5IDU5NQorICAgIDB4MS5wLTEwMjQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk1MAorICB9LAorICB7IC8vIEVudHJ5IDU5NgorICAgIDB4MS5wLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk1MQorICB9LAorICB7IC8vIEVudHJ5IDU5NworICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk1MgorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIDB4MS5wLTEwMjEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk1MworICB9LAorICB7IC8vIEVudHJ5IDU5OQorICAgIDB4MS5wLTEwMjAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk1NAorICB9LAorICB7IC8vIEVudHJ5IDYwMAorICAgIDB4MS5wLTEwMTksCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk1NQorICB9LAorICB7IC8vIEVudHJ5IDYwMQorICAgIDB4MS5wLTEwMTgsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk1NgorICB9LAorICB7IC8vIEVudHJ5IDYwMgorICAgIDB4MS5wLTEwMTcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk1NworICB9LAorICB7IC8vIEVudHJ5IDYwMworICAgIDB4MS5wLTEwMTYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk1OAorICB9LAorICB7IC8vIEVudHJ5IDYwNAorICAgIDB4MS5wLTEwMTUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk1OQorICB9LAorICB7IC8vIEVudHJ5IDYwNQorICAgIDB4MS5wLTEwMTQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk2MAorICB9LAorICB7IC8vIEVudHJ5IDYwNgorICAgIDB4MS5wLTEwMTMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk2MQorICB9LAorICB7IC8vIEVudHJ5IDYwNworICAgIDB4MS5wLTEwMTIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk2MgorICB9LAorICB7IC8vIEVudHJ5IDYwOAorICAgIDB4MS5wLTEwMTEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk2MworICB9LAorICB7IC8vIEVudHJ5IDYwOQorICAgIDB4MS5wLTEwMTAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk2NAorICB9LAorICB7IC8vIEVudHJ5IDYxMAorICAgIDB4MS5wLTEwMDksCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk2NQorICB9LAorICB7IC8vIEVudHJ5IDYxMQorICAgIDB4MS5wLTEwMDgsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk2NgorICB9LAorICB7IC8vIEVudHJ5IDYxMgorICAgIDB4MS5wLTEwMDcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk2NworICB9LAorICB7IC8vIEVudHJ5IDYxMworICAgIDB4MS5wLTEwMDYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk2OAorICB9LAorICB7IC8vIEVudHJ5IDYxNAorICAgIDB4MS5wLTEwMDUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk2OQorICB9LAorICB7IC8vIEVudHJ5IDYxNQorICAgIDB4MS5wLTEwMDQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk3MAorICB9LAorICB7IC8vIEVudHJ5IDYxNgorICAgIDB4MS5wLTEwMDMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk3MQorICB9LAorICB7IC8vIEVudHJ5IDYxNworICAgIDB4MS5wLTEwMDIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk3MgorICB9LAorICB7IC8vIEVudHJ5IDYxOAorICAgIDB4MS5wLTEwMDEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk3MworICB9LAorICB7IC8vIEVudHJ5IDYxOQorICAgIDB4MS5wLTEwMDAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk3NAorICB9LAorICB7IC8vIEVudHJ5IDYyMAorICAgIDB4MS5wLTk5OSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTc1CisgIH0sCisgIHsgLy8gRW50cnkgNjIxCisgICAgMHgxLnAtOTk4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNzYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjIKKyAgICAweDEucC05OTcsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk3NworICB9LAorICB7IC8vIEVudHJ5IDYyMworICAgIDB4MS5wLTk5NiwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTc4CisgIH0sCisgIHsgLy8gRW50cnkgNjI0CisgICAgMHgxLnAtOTk1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNzkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjUKKyAgICAweDEucC05OTQsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk4MAorICB9LAorICB7IC8vIEVudHJ5IDYyNgorICAgIDB4MS5wLTk5MywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTgxCisgIH0sCisgIHsgLy8gRW50cnkgNjI3CisgICAgMHgxLnAtOTkyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpODIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjgKKyAgICAweDEucC05OTEsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk4MworICB9LAorICB7IC8vIEVudHJ5IDYyOQorICAgIDB4MS5wLTk5MCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTg0CisgIH0sCisgIHsgLy8gRW50cnkgNjMwCisgICAgMHgxLnAtOTg5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpODUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzEKKyAgICAweDEucC05ODgsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk4NgorICB9LAorICB7IC8vIEVudHJ5IDYzMgorICAgIDB4MS5wLTk4NywKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTg3CisgIH0sCisgIHsgLy8gRW50cnkgNjMzCisgICAgMHgxLnAtOTg2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpODgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzQKKyAgICAweDEucC05ODUsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk4OQorICB9LAorICB7IC8vIEVudHJ5IDYzNQorICAgIDB4MS5wLTk4NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTkwCisgIH0sCisgIHsgLy8gRW50cnkgNjM2CisgICAgMHgxLnAtOTgzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpOTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzcKKyAgICAweDEucC05ODIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk5MgorICB9LAorICB7IC8vIEVudHJ5IDYzOAorICAgIDB4MS5wLTk4MSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTkzCisgIH0sCisgIHsgLy8gRW50cnkgNjM5CisgICAgMHgxLnAtOTgwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpOTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDAKKyAgICAweDEucC05NzksCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk5NQorICB9LAorICB7IC8vIEVudHJ5IDY0MQorICAgIDB4MS5wLTk3OCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTk2CisgIH0sCisgIHsgLy8gRW50cnkgNjQyCisgICAgMHgxLnAtOTc3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpOTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDMKKyAgICAweDEucC05NzYsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk5OAorICB9LAorICB7IC8vIEVudHJ5IDY0NAorICAgIDB4MS5wLTk3NSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTk5CisgIH0sCisgIHsgLy8gRW50cnkgNjQ1CisgICAgMHgxLnAtOTc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQ2CisgICAgMHgxLnAtOTczLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTAxCisgIH0sCisgIHsgLy8gRW50cnkgNjQ3CisgICAgMHgxLnAtOTcyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTAyCisgIH0sCisgIHsgLy8gRW50cnkgNjQ4CisgICAgMHgxLnAtOTcxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNjQ5CisgICAgMHgxLnAtOTcwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTA0CisgIH0sCisgIHsgLy8gRW50cnkgNjUwCisgICAgMHgxLnAtOTY5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTA1CisgIH0sCisgIHsgLy8gRW50cnkgNjUxCisgICAgMHgxLnAtOTY4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTA2CisgIH0sCisgIHsgLy8gRW50cnkgNjUyCisgICAgMHgxLnAtOTY3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTA3CisgIH0sCisgIHsgLy8gRW50cnkgNjUzCisgICAgMHgxLnAtOTY2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTA4CisgIH0sCisgIHsgLy8gRW50cnkgNjU0CisgICAgMHgxLnAtOTY1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTA5CisgIH0sCisgIHsgLy8gRW50cnkgNjU1CisgICAgMHgxLnAtOTY0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTEwCisgIH0sCisgIHsgLy8gRW50cnkgNjU2CisgICAgMHgxLnAtOTYzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTExCisgIH0sCisgIHsgLy8gRW50cnkgNjU3CisgICAgMHgxLnAtOTYyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTEyCisgIH0sCisgIHsgLy8gRW50cnkgNjU4CisgICAgMHgxLnAtOTYxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTEzCisgIH0sCisgIHsgLy8gRW50cnkgNjU5CisgICAgMHgxLnAtOTYwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTE0CisgIH0sCisgIHsgLy8gRW50cnkgNjYwCisgICAgMHgxLnAtOTU5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTE1CisgIH0sCisgIHsgLy8gRW50cnkgNjYxCisgICAgMHgxLnAtOTU4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTE2CisgIH0sCisgIHsgLy8gRW50cnkgNjYyCisgICAgMHgxLnAtOTU3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTE3CisgIH0sCisgIHsgLy8gRW50cnkgNjYzCisgICAgMHgxLnAtOTU2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTE4CisgIH0sCisgIHsgLy8gRW50cnkgNjY0CisgICAgMHgxLnAtOTU1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTE5CisgIH0sCisgIHsgLy8gRW50cnkgNjY1CisgICAgMHgxLnAtOTU0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTIwCisgIH0sCisgIHsgLy8gRW50cnkgNjY2CisgICAgMHgxLnAtOTUzLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTIxCisgIH0sCisgIHsgLy8gRW50cnkgNjY3CisgICAgMHgxLnAtOTUyLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTIyCisgIH0sCisgIHsgLy8gRW50cnkgNjY4CisgICAgMHgxLnAtOTUxLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTIzCisgIH0sCisgIHsgLy8gRW50cnkgNjY5CisgICAgMHgxLnAtOTUwLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTI0CisgIH0sCisgIHsgLy8gRW50cnkgNjcwCisgICAgMHgxLnAtOTQ5LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTI1CisgIH0sCisgIHsgLy8gRW50cnkgNjcxCisgICAgMHgxLnAtOTQ4LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNjcyCisgICAgMHgxLnAtOTQ3LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNjczCisgICAgMHgxLnAtOTQ2LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTI4CisgIH0sCisgIHsgLy8gRW50cnkgNjc0CisgICAgMHgxLnAtOTQ1LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTI5CisgIH0sCisgIHsgLy8gRW50cnkgNjc1CisgICAgMHgxLnAtOTQ0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMTMwCisgIH0sCisgIHsgLy8gRW50cnkgNjc2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDY3NworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgNjc5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDY4MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAxOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMTgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgNjgyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDE3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDY4MworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAxNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgNjg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDE0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAxMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgNjg3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDEyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMgorICB9LAorICB7IC8vIEVudHJ5IDY4OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEzCisgIH0sCisgIHsgLy8gRW50cnkgNjkwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxNQorICB9LAorICB7IC8vIEVudHJ5IDY5MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAwNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTE2CisgIH0sCisgIHsgLy8gRW50cnkgNjkzCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDA2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMDUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxOAorICB9LAorICB7IC8vIEVudHJ5IDY5NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAwNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTE5CisgIH0sCisgIHsgLy8gRW50cnkgNjk2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkyMQorICB9LAorICB7IC8vIEVudHJ5IDY5OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTIyCisgIH0sCisgIHsgLy8gRW50cnkgNjk5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk5OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTI0CisgIH0sCisgIHsgLy8gRW50cnkgNzAxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05OTgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkyNQorICB9LAorICB7IC8vIEVudHJ5IDcwMgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTk3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk5NiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTI3CisgIH0sCisgIHsgLy8gRW50cnkgNzA0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05OTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkyOAorICB9LAorICB7IC8vIEVudHJ5IDcwNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTk0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk5MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTMwCisgIH0sCisgIHsgLy8gRW50cnkgNzA3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05OTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkzMQorICB9LAorICB7IC8vIEVudHJ5IDcwOAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTkxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk5MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTMzCisgIH0sCisgIHsgLy8gRW50cnkgNzEwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05ODksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkzNAorICB9LAorICB7IC8vIEVudHJ5IDcxMQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTg4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMzUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk4NywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTM2CisgIH0sCisgIHsgLy8gRW50cnkgNzEzCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05ODYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkzNworICB9LAorICB7IC8vIEVudHJ5IDcxNAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTg1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMzgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk4NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTM5CisgIH0sCisgIHsgLy8gRW50cnkgNzE2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05ODMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk0MAorICB9LAorICB7IC8vIEVudHJ5IDcxNworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTgyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk4MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTQyCisgIH0sCisgIHsgLy8gRW50cnkgNzE5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05ODAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk0MworICB9LAorICB7IC8vIEVudHJ5IDcyMAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTc5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk3OCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTQ1CisgIH0sCisgIHsgLy8gRW50cnkgNzIyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NzcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk0NgorICB9LAorICB7IC8vIEVudHJ5IDcyMworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTc2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk3NSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNzI1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NzQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk0OQorICB9LAorICB7IC8vIEVudHJ5IDcyNgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTczLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk3MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTUxCisgIH0sCisgIHsgLy8gRW50cnkgNzI4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk1MgorICB9LAorICB7IC8vIEVudHJ5IDcyOQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTcwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk2OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTU0CisgIH0sCisgIHsgLy8gRW50cnkgNzMxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NjgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk1NQorICB9LAorICB7IC8vIEVudHJ5IDczMgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTY3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk2NiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTU3CisgIH0sCisgIHsgLy8gRW50cnkgNzM0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NjUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk1OAorICB9LAorICB7IC8vIEVudHJ5IDczNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTY0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk2MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTYwCisgIH0sCisgIHsgLy8gRW50cnkgNzM3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk2MQorICB9LAorICB7IC8vIEVudHJ5IDczOAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTYxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk2MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTYzCisgIH0sCisgIHsgLy8gRW50cnkgNzQwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk2NAorICB9LAorICB7IC8vIEVudHJ5IDc0MQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTU4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk1NywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTY2CisgIH0sCisgIHsgLy8gRW50cnkgNzQzCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk2NworICB9LAorICB7IC8vIEVudHJ5IDc0NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTU1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk1NCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTY5CisgIH0sCisgIHsgLy8gRW50cnkgNzQ2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk3MAorICB9LAorICB7IC8vIEVudHJ5IDc0NworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk1MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTcyCisgIH0sCisgIHsgLy8gRW50cnkgNzQ5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk3MworICB9LAorICB7IC8vIEVudHJ5IDc1MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTQ5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk0OCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTc1CisgIH0sCisgIHsgLy8gRW50cnkgNzUyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NDcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk3NgorICB9LAorICB7IC8vIEVudHJ5IDc1MworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTQ2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNzcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk0NSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTc4CisgIH0sCisgIHsgLy8gRW50cnkgNzU1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NDQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk3OQorICB9LAorICB7IC8vIEVudHJ5IDc1NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTQzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpODAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk0MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTgxCisgIH0sCisgIHsgLy8gRW50cnkgNzU4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05NDEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk4MgorICB9LAorICB7IC8vIEVudHJ5IDc1OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTQwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpODMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkzOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTg0CisgIH0sCisgIHsgLy8gRW50cnkgNzYxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MzgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk4NQorICB9LAorICB7IC8vIEVudHJ5IDc2MgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTM3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpODYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkzNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTg3CisgIH0sCisgIHsgLy8gRW50cnkgNzY0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MzUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk4OAorICB9LAorICB7IC8vIEVudHJ5IDc2NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTM0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpODkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkzMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTkwCisgIH0sCisgIHsgLy8gRW50cnkgNzY3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MzIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk5MQorICB9LAorICB7IC8vIEVudHJ5IDc2OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpOTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkzMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTkzCisgIH0sCisgIHsgLy8gRW50cnkgNzcwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MjksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk5NAorICB9LAorICB7IC8vIEVudHJ5IDc3MQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTI4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpOTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkyNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTk2CisgIH0sCisgIHsgLy8gRW50cnkgNzczCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MjYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCk5NworICB9LAorICB7IC8vIEVudHJ5IDc3NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTI1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpOTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkyNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTk5CisgIH0sCisgIHsgLy8gRW50cnkgNzc2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzcKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEwMQorICB9LAorICB7IC8vIEVudHJ5IDc3OAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTIxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTAyCisgIH0sCisgIHsgLy8gRW50cnkgNzc5CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkxOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEwNAorICB9LAorICB7IC8vIEVudHJ5IDc4MQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTE4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTA1CisgIH0sCisgIHsgLy8gRW50cnkgNzgyCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODMKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkxNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEwNworICB9LAorICB7IC8vIEVudHJ5IDc4NAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTE1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTA4CisgIH0sCisgIHsgLy8gRW50cnkgNzg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkxMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTExMAorICB9LAorICB7IC8vIEVudHJ5IDc4NworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTEyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTExCisgIH0sCisgIHsgLy8gRW50cnkgNzg4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTExMworICB9LAorICB7IC8vIEVudHJ5IDc5MAorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTA5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTE0CisgIH0sCisgIHsgLy8gRW50cnkgNzkxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTIKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkwNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTExNgorICB9LAorICB7IC8vIEVudHJ5IDc5MworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTA2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTE3CisgIH0sCisgIHsgLy8gRW50cnkgNzk0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MDUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkwNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTExOQorICB9LAorICB7IC8vIEVudHJ5IDc5NgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTAzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTIwCisgIH0sCisgIHsgLy8gRW50cnkgNzk3CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC05MDIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTkwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEyMgorICB9LAorICB7IC8vIEVudHJ5IDc5OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTIzCisgIH0sCisgIHsgLy8gRW50cnkgODAwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC04OTksCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTg5OCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEyNQorICB9LAorICB7IC8vIEVudHJ5IDgwMgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtODk3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTI2CisgIH0sCisgIHsgLy8gRW50cnkgODAzCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC04OTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTg5NSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTEyOAorICB9LAorICB7IC8vIEVudHJ5IDgwNQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtODk0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTI5CisgIH0sCisgIHsgLy8gRW50cnkgODA2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC04OTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDcKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCkxMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODA4CisgICAgMHgxLnAtMSwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDkKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODEwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDUwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpMTA3MworICB9LAorICB7IC8vIEVudHJ5IDgxMQorICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk1MgorICB9LAorICB7IC8vIEVudHJ5IDgxMgorICAgIDB4MS5wLTEwMjMsCisgICAgMHgxLjBwLTEwNzQsCisgICAgKGludCk1MQorICB9LAorICB7IC8vIEVudHJ5IDgxMworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtOTcxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTk3MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTUxCisgIH0sCisgIHsgLy8gRW50cnkgODE1CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTYKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDgxNworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODE5CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjAKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODIxCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjIKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODIzCisgICAgMC4wLAorICAgIDAuMCwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODI0CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjUKKyAgICAwLjAsCisgICAgMC4wLAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODI2CisgICAgLTAuMCwKKyAgICAtMC4wLAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODI3CisgICAgMC4wLAorICAgIDAuMCwKKyAgICAoaW50KS0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjgKKyAgICAtMC4wLAorICAgIC0wLjAsCisgICAgKGludCktMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODI5CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODMwCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzEKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDgzMgorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzMKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDgzNAorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NCwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzYKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODM3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDgzOAorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODM5CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODQwCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDEKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTCwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODQyCisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODQzCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDQKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMLAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODQ1CisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwsCisgICAgKGludCktMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODQ2CisgICAgLUhVR0VfVkFMLAorICAgIC1IVUdFX1ZBTCwKKyAgICAoaW50KS0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDcKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDg0OAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDkKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODUwCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODUxCisgICAgSFVHRV9WQUwsCisgICAgMHgxLjBwLTEwMjIsCisgICAgKGludCk0MDAwMAorICB9LAorICB7IC8vIEVudHJ5IDg1MgorICAgIEhVR0VfVkFMLAorICAgIDB4MS4wcC0xMDc0LAorICAgIChpbnQpNDAwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTMKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDIyLAorICAgIChpbnQpNDAwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTQKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS4wcC0xMDc0LAorICAgIChpbnQpNDAwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTUKKyAgICAweDEucC0xMDIzLAorICAgIDB4MS4wcC0xMDIyLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDg1NworICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NCwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODU4CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDg1OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjAKKyAgICAtMHgxLnAtMTAyMywKKyAgICAtMHgxLjBwLTEwMjIsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDg2MQorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICAgIChpbnQpLTQwMDAwCisgIH0sCisgIHsgLy8gRW50cnkgODYyCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgICAoaW50KS00MDAwMAorICB9Cit9OwpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9kYXRhL3NjYWxibmZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL3NjYWxibmZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExZmZlYzcKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvc2NhbGJuZl9pbnRlbF9kYXRhLmgKQEAgLTAsMCArMSw0Mjg4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8yX3Q8ZmxvYXQsIGZsb2F0LCBpbnQ+IGdfc2NhbGJuZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgLTB4MS41NTU1NTRwLTEyOCwKKyAgICAtMHgxLjU1NTU1NHAtMiwKKyAgICAoaW50KS0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS42ZGI2ZGNwLTEyOCwKKyAgICAtMHgxLjZkYjZkY3AtMSwKKyAgICAoaW50KS0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgLTB4MS44ZTM4ZTRwLTEyOCwKKyAgICAtMHgxLjhlMzhlNHAtMSwKKyAgICAoaW50KS0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuMjllNDEycC0xMjcsCisgICAgMHgxLjI5ZTQxMnAtNywKKyAgICAoaW50KS0xMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMC4wZiwKKyAgICAweDEuZGRkZGRlcC0yLAorICAgIChpbnQpLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmNjBwLTEyNywKKyAgICAoaW50KS0yMworICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmODRwLTEyNywKKyAgICAoaW50KS0yMworICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLmZmZmZmOHAtMTM3LAorICAgIDB4MS5mZmZmZjhwLTEyNywKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAoaW50KSgtMjE0NzQ4MzY0Ny0xKQorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpMjE0NzQ4MzY0NworICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgLTB4MS5wLTEwLAorICAgIC0weDEucDAsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIC0weDEucC05LAorICAgIC0weDEucDAsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgLTB4MS5wLTgsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAtMHgxLnAtNywKKyAgICAtMHgxLnAwLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIC0weDEucC02LAorICAgIC0weDEucDAsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgLTB4MS5wLTUsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAtMHgxLnAtNCwKKyAgICAtMHgxLnAwLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIC0weDEucC0zLAorICAgIC0weDEucDAsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgLTB4MS5wLTIsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAtMHgxLnAtMSwKKyAgICAtMHgxLnAwLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIC0weDEucDAsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIC0weDEucDEsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIC0weDEucDIsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIC0weDEucDMsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIC0weDEucDQsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIC0weDEucDUsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIC0weDEucDYsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEucDcsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIC0weDEucDgsCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIC0weDEucDksCisgICAgLTB4MS5wMCwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIC0weDEucDEwLAorICAgIC0weDEucDAsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgLTB4MS5kMTc0NWNwLTExLAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAtMHgxLmQxNzQ1Y3AtMTAsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgLTB4MS5kMTc0NWNwLTksCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgLTB4MS5kMTc0NWNwLTgsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgLTB4MS5kMTc0NWNwLTcsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS5kMTc0NWNwLTYsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgLTB4MS5kMTc0NWNwLTUsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS5kMTc0NWNwLTQsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgLTB4MS5kMTc0NWNwLTMsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgLTB4MS5kMTc0NWNwLTIsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAtMHgxLmQxNzQ1Y3AwLAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTB4MS5kMTc0NWNwMSwKKyAgICAtMHgxLmQxNzQ1Y3AtMSwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0weDEuZDE3NDVjcDIsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMHgxLmQxNzQ1Y3AzLAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5kMTc0NWNwNCwKKyAgICAtMHgxLmQxNzQ1Y3AtMSwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEuZDE3NDVjcDUsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAtMHgxLmQxNzQ1Y3A2LAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgLTB4MS5kMTc0NWNwNywKKyAgICAtMHgxLmQxNzQ1Y3AtMSwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEuZDE3NDVjcDgsCisgICAgLTB4MS5kMTc0NWNwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAtMHgxLmQxNzQ1Y3A5LAorICAgIC0weDEuZDE3NDVjcC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEuYTJlOGI4cC0xMSwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgLTB4MS5hMmU4YjhwLTEwLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEuYTJlOGI4cC05LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIC0weDEuYTJlOGI4cC04LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEuYTJlOGI4cC03LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEuYTJlOGI4cC02LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuYTJlOGI4cC01LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIC0weDEuYTJlOGI4cC00LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIC0weDEuYTJlOGI4cC0zLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEuYTJlOGI4cC0yLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS5hMmU4YjhwMCwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuYTJlOGI4cDEsCisgICAgLTB4MS5hMmU4YjhwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmEyZThiOHAyLAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5hMmU4YjhwMywKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuYTJlOGI4cDQsCisgICAgLTB4MS5hMmU4YjhwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLmEyZThiOHA1LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgLTB4MS5hMmU4YjhwNiwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIC0weDEuYTJlOGI4cDcsCisgICAgLTB4MS5hMmU4YjhwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAtMHgxLmEyZThiOHA4LAorICAgIC0weDEuYTJlOGI4cC0xLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5hMmU4YjhwOSwKKyAgICAtMHgxLmEyZThiOHAtMSwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLjc0NWQxNHAtMTEsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuNzQ1ZDE0cC0xMCwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAtMHgxLjc0NWQxNHAtOSwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLjc0NWQxNHAtOCwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAtMHgxLjc0NWQxNHAtNywKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLjc0NWQxNHAtNiwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLjc0NWQxNHAtNSwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLjc0NWQxNHAtNCwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAtMHgxLjc0NWQxNHAtMywKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLjc0NWQxNHAtMiwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuNzQ1ZDE0cDAsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLjc0NWQxNHAxLAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS43NDVkMTRwMiwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIC0weDEuNzQ1ZDE0cDMsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLjc0NWQxNHA0LAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgLTB4MS43NDVkMTRwNSwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIC0weDEuNzQ1ZDE0cDYsCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAtMHgxLjc0NWQxNHA3LAorICAgIC0weDEuNzQ1ZDE0cC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgLTB4MS43NDVkMTRwOCwKKyAgICAtMHgxLjc0NWQxNHAtMSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIC0weDEuNzQ1ZDE0cDksCisgICAgLTB4MS43NDVkMTRwLTEsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgLTB4MS40NWQxNzBwLTExLAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAtMHgxLjQ1ZDE3MHAtMTAsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLTB4MS40NWQxNzBwLTksCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIC0weDEuNDVkMTcwcC04LAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAtMHgxLjQ1ZDE3MHAtNywKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgLTB4MS40NWQxNzBwLTYsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuNDVkMTcwcC01LAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAtMHgxLjQ1ZDE3MHAtNCwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTB4MS40NWQxNzBwLTMsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIC0weDEuNDVkMTcwcC0yLAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMHgxLjQ1ZDE3MHAwLAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIC0weDEuNDVkMTcwcDEsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgLTB4MS40NWQxNzBwMiwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAtMHgxLjQ1ZDE3MHAzLAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIC0weDEuNDVkMTcwcDQsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgLTB4MS40NWQxNzBwNSwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAtMHgxLjQ1ZDE3MHA2LAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIC0weDEuNDVkMTcwcDcsCisgICAgLTB4MS40NWQxNzBwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgLTB4MS40NWQxNzBwOCwKKyAgICAtMHgxLjQ1ZDE3MHAtMSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAtMHgxLjQ1ZDE3MHA5LAorICAgIC0weDEuNDVkMTcwcC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAtMHgxLjE3NDVjY3AtMTEsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAtMHgxLjE3NDVjY3AtMTAsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIC0weDEuMTc0NWNjcC05LAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAtMHgxLjE3NDVjY3AtOCwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgLTB4MS4xNzQ1Y2NwLTcsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIC0weDEuMTc0NWNjcC02LAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAtMHgxLjE3NDVjY3AtNSwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgLTB4MS4xNzQ1Y2NwLTQsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIC0weDEuMTc0NWNjcC0zLAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAtMHgxLjE3NDVjY3AtMiwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgLTB4MS4xNzQ1Y2NwMCwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAtMHgxLjE3NDVjY3AxLAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0weDEuMTc0NWNjcDIsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgLTB4MS4xNzQ1Y2NwMywKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMHgxLjE3NDVjY3A0LAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIC0weDEuMTc0NWNjcDUsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS4xNzQ1Y2NwNiwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLjE3NDVjY3A3LAorICAgIC0weDEuMTc0NWNjcC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEuMTc0NWNjcDgsCisgICAgLTB4MS4xNzQ1Y2NwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgLTB4MS4xNzQ1Y2NwOSwKKyAgICAtMHgxLjE3NDVjY3AtMSwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTB4MS5kMTc0NTJwLTEyLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgLTB4MS5kMTc0NTJwLTExLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMHgxLmQxNzQ1MnAtMTAsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEuZDE3NDUycC05LAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLmQxNzQ1MnAtOCwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgLTB4MS5kMTc0NTJwLTcsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuZDE3NDUycC02LAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLmQxNzQ1MnAtNSwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS5kMTc0NTJwLTQsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIC0weDEuZDE3NDUycC0zLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMHgxLmQxNzQ1MnAtMSwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLmQxNzQ1MnAwLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIC0weDEuZDE3NDUycDEsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS5kMTc0NTJwMiwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAtMHgxLmQxNzQ1MnAzLAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEuZDE3NDUycDQsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgLTB4MS5kMTc0NTJwNSwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLmQxNzQ1MnA2LAorICAgIC0weDEuZDE3NDUycC0yLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIC0weDEuZDE3NDUycDcsCisgICAgLTB4MS5kMTc0NTJwLTIsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTB4MS5kMTc0NTJwOCwKKyAgICAtMHgxLmQxNzQ1MnAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgLTB4MS43NDVkMGNwLTEyLAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS43NDVkMGNwLTExLAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMHgxLjc0NWQwY3AtMTAsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuNzQ1ZDBjcC05LAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLjc0NWQwY3AtOCwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS43NDVkMGNwLTcsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuNzQ1ZDBjcC02LAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLjc0NWQwY3AtNSwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgLTB4MS43NDVkMGNwLTQsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuNzQ1ZDBjcC0zLAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLjc0NWQwY3AtMSwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAtMHgxLjc0NWQwY3AwLAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEuNzQ1ZDBjcDEsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgLTB4MS43NDVkMGNwMiwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAtMHgxLjc0NWQwY3AzLAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIC0weDEuNzQ1ZDBjcDQsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS43NDVkMGNwNSwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAtMHgxLjc0NWQwY3A2LAorICAgIC0weDEuNzQ1ZDBjcC0yLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuNzQ1ZDBjcDcsCisgICAgLTB4MS43NDVkMGNwLTIsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgLTB4MS43NDVkMGNwOCwKKyAgICAtMHgxLjc0NWQwY3AtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTB4MS4xNzQ1YzZwLTEyLAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgLTB4MS4xNzQ1YzZwLTExLAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAtMHgxLjE3NDVjNnAtMTAsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIC0weDEuMTc0NWM2cC05LAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLjE3NDVjNnAtOCwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgLTB4MS4xNzQ1YzZwLTcsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuMTc0NWM2cC02LAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAtMHgxLjE3NDVjNnAtNSwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTB4MS4xNzQ1YzZwLTQsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIC0weDEuMTc0NWM2cC0zLAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTEKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAtMHgxLjE3NDVjNnAtMSwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLjE3NDVjNnAwLAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEuMTc0NWM2cDEsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS4xNzQ1YzZwMiwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLjE3NDVjNnAzLAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuMTc0NWM2cDQsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgLTB4MS4xNzQ1YzZwNSwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLjE3NDVjNnA2LAorICAgIC0weDEuMTc0NWM2cC0yLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEuMTc0NWM2cDcsCisgICAgLTB4MS4xNzQ1YzZwLTIsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgLTB4MS4xNzQ1YzZwOCwKKyAgICAtMHgxLjE3NDVjNnAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgLTB4MS43NDVkcC0xMywKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLjc0NWRwLTEyLAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgLTB4MS43NDVkcC0xMSwKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIC0weDEuNzQ1ZHAtMTAsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAtMHgxLjc0NWRwLTksCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLjc0NWRwLTgsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMHgxLjc0NWRwLTcsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAtMHgxLjc0NWRwLTYsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAtMHgxLjc0NWRwLTUsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAtMHgxLjc0NWRwLTQsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEuNzQ1ZHAtMiwKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgLTB4MS43NDVkcC0xLAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLjc0NWRwMCwKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgLTB4MS43NDVkcDEsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIC0weDEuNzQ1ZHAyLAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAtMHgxLjc0NWRwMywKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS43NDVkcDQsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0weDEuNzQ1ZHA1LAorICAgIC0weDEuNzQ1ZHAtMywKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLjc0NWRwNiwKKyAgICAtMHgxLjc0NWRwLTMsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgLTB4MS43NDVkcDcsCisgICAgLTB4MS43NDVkcC0zLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLjc0NWNlOHAtMTQsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAtMHgxLjc0NWNlOHAtMTMsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0weDEuNzQ1Y2U4cC0xMiwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgLTB4MS43NDVjZThwLTExLAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMHgxLjc0NWNlOHAtMTAsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIC0weDEuNzQ1Y2U4cC05LAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAtMHgxLjc0NWNlOHAtOCwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgLTB4MS43NDVjZThwLTcsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIC0weDEuNzQ1Y2U4cC02LAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAtMHgxLjc0NWNlOHAtNSwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgLTB4MS43NDVjZThwLTMsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgLTB4MS43NDVjZThwLTIsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgLTB4MS43NDVjZThwLTEsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS43NDVjZThwMCwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAtMHgxLjc0NWNlOHAxLAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEuNzQ1Y2U4cDIsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgLTB4MS43NDVjZThwMywKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAtMHgxLjc0NWNlOHA0LAorICAgIC0weDEuNzQ1Y2U4cC00LAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIC0weDEuNzQ1Y2U4cDUsCisgICAgLTB4MS43NDVjZThwLTQsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTB4MS43NDVjZThwNiwKKyAgICAtMHgxLjc0NWNlOHAtNCwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLjgwcC0zMywKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgMHgxLjgwcC0zMiwKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEuODBwLTMxLAorICAgIDB4MS44MHAtMjMsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS44MHAtMzAsCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgMHgxLjgwcC0yOSwKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuODBwLTI4LAorICAgIDB4MS44MHAtMjMsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS44MHAtMjcsCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLjgwcC0yNiwKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuODBwLTI1LAorICAgIDB4MS44MHAtMjMsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS44MHAtMjQsCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjgwcC0yMywKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS44MHAtMjIsCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuODBwLTIxLAorICAgIDB4MS44MHAtMjMsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjgwcC0yMCwKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS44MHAtMTksCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuODBwLTE4LAorICAgIDB4MS44MHAtMjMsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLjgwcC0xNywKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS44MHAtMTYsCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuODBwLTE1LAorICAgIDB4MS44MHAtMjMsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLjgwcC0xNCwKKyAgICAweDEuODBwLTIzLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS44MHAtMTMsCisgICAgMHgxLjgwcC0yMywKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLjc0NWQ0OHAtMTQsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIDB4MS43NDVkNDhwLTEzLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS43NDVkNDhwLTEyLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS43NDVkNDhwLTExLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS43NDVkNDhwLTEwLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS43NDVkNDhwLTksCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLjc0NWQ0OHAtOCwKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAweDEuNzQ1ZDQ4cC03LAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS43NDVkNDhwLTYsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLjc0NWQ0OHAtNSwKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLjc0NWQ0OHAtMywKKyAgICAweDEuNzQ1ZDQ4cC00LAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIDB4MS43NDVkNDhwLTIsCisgICAgMHgxLjc0NWQ0OHAtNCwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEuNzQ1ZDQ4cC0xLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLjc0NWQ0OHAwLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLjc0NWQ0OHAxLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLjc0NWQ0OHAyLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjc0NWQ0OHAzLAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjc0NWQ0OHA0LAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLjc0NWQ0OHA1LAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMHgxLjc0NWQ0OHA2LAorICAgIDB4MS43NDVkNDhwLTQsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS43NDVkMzBwLTEzLAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuNzQ1ZDMwcC0xMiwKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuNzQ1ZDMwcC0xMSwKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuNzQ1ZDMwcC0xMCwKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuNzQ1ZDMwcC05LAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIDB4MS43NDVkMzBwLTgsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLjc0NWQzMHAtNywKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAweDEuNzQ1ZDMwcC02LAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS43NDVkMzBwLTUsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgMHgxLjc0NWQzMHAtNCwKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIDB4MS43NDVkMzBwLTMsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgMHgxLjc0NWQzMHAtMiwKKyAgICAweDEuNzQ1ZDMwcC0zLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIDB4MS43NDVkMzBwLTEsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAweDEuNzQ1ZDMwcDAsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuNzQ1ZDMwcDEsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuNzQ1ZDMwcDIsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuNzQ1ZDMwcDMsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAweDEuNzQ1ZDMwcDQsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuNzQ1ZDMwcDUsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuNzQ1ZDMwcDYsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuNzQ1ZDMwcDcsCisgICAgMHgxLjc0NWQzMHAtMywKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzA3CisgICAgMHgxLjE3NDVkZXAtMTIsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS4xNzQ1ZGVwLTExLAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIDB4MS4xNzQ1ZGVwLTEwLAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIDB4MS4xNzQ1ZGVwLTksCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgMHgxLjE3NDVkZXAtOCwKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuMTc0NWRlcC03LAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS4xNzQ1ZGVwLTYsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLjE3NDVkZXAtNSwKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAweDEuMTc0NWRlcC00LAorICAgIDB4MS4xNzQ1ZGVwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS4xNzQ1ZGVwLTMsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAweDEuMTc0NWRlcC0yLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS4xNzQ1ZGVwLTEsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAweDEuMTc0NWRlcDAsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuMTc0NWRlcDEsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEuMTc0NWRlcDIsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEuMTc0NWRlcDMsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuMTc0NWRlcDQsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAweDEuMTc0NWRlcDUsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEuMTc0NWRlcDYsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEuMTc0NWRlcDcsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEuMTc0NWRlcDgsCisgICAgMHgxLjE3NDVkZXAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgMHgxLjc0NWQyNHAtMTIsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIDB4MS43NDVkMjRwLTExLAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS43NDVkMjRwLTEwLAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIDB4MS43NDVkMjRwLTksCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgMHgxLjc0NWQyNHAtOCwKKyAgICAweDEuNzQ1ZDI0cC0yLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAweDEuNzQ1ZDI0cC03LAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIDB4MS43NDVkMjRwLTYsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgMHgxLjc0NWQyNHAtNSwKKyAgICAweDEuNzQ1ZDI0cC0yLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAweDEuNzQ1ZDI0cC00LAorICAgIDB4MS43NDVkMjRwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIDB4MS43NDVkMjRwLTMsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAweDEuNzQ1ZDI0cC0yLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDMzOQorICAgIDB4MS43NDVkMjRwLTEsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAweDEuNzQ1ZDI0cDAsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAweDEuNzQ1ZDI0cDEsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuNzQ1ZDI0cDIsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAweDEuNzQ1ZDI0cDMsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuNzQ1ZDI0cDQsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAweDEuNzQ1ZDI0cDUsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAweDEuNzQ1ZDI0cDYsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuNzQ1ZDI0cDcsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDgKKyAgICAweDEuNzQ1ZDI0cDgsCisgICAgMHgxLjc0NWQyNHAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgMHgxLmQxNzQ2YXAtMTIsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS5kMTc0NmFwLTExLAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDM1MQorICAgIDB4MS5kMTc0NmFwLTEwLAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIDB4MS5kMTc0NmFwLTksCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMzUzCisgICAgMHgxLmQxNzQ2YXAtOCwKKyAgICAweDEuZDE3NDZhcC0yLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAweDEuZDE3NDZhcC03LAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIDB4MS5kMTc0NmFwLTYsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgMHgxLmQxNzQ2YXAtNSwKKyAgICAweDEuZDE3NDZhcC0yLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAweDEuZDE3NDZhcC00LAorICAgIDB4MS5kMTc0NmFwLTIsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIDB4MS5kMTc0NmFwLTMsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU5CisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAweDEuZDE3NDZhcC0yLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS5kMTc0NmFwLTEsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAweDEuZDE3NDZhcDAsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuZDE3NDZhcDEsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAweDEuZDE3NDZhcDIsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEuZDE3NDZhcDMsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAweDEuZDE3NDZhcDQsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuZDE3NDZhcDUsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjcKKyAgICAweDEuZDE3NDZhcDYsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAweDEuZDE3NDZhcDcsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICAweDEuZDE3NDZhcDgsCisgICAgMHgxLmQxNzQ2YXAtMiwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLjE3NDVkOHAtMTEsCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIDB4MS4xNzQ1ZDhwLTEwLAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIDB4MS4xNzQ1ZDhwLTksCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgMHgxLjE3NDVkOHAtOCwKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAweDEuMTc0NWQ4cC03LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIDB4MS4xNzQ1ZDhwLTYsCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgMHgxLjE3NDVkOHAtNSwKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAweDEuMTc0NWQ4cC00LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS4xNzQ1ZDhwLTMsCisgICAgMHgxLjE3NDVkOHAtMSwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgMzc5CisgICAgMHgxLjE3NDVkOHAtMiwKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODAKKyAgICAweDEuMTc0NWQ4cC0xLAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgMHgxLjE3NDVkOHAwLAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgMHgxLjE3NDVkOHAxLAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgMHgxLjE3NDVkOHAyLAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgMHgxLjE3NDVkOHAzLAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgMzg1CisgICAgMHgxLjE3NDVkOHA0LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgMHgxLjE3NDVkOHA1LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgMHgxLjE3NDVkOHA2LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgMHgxLjE3NDVkOHA3LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgMzg5CisgICAgMHgxLjE3NDVkOHA4LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgMzkwCisgICAgMHgxLjE3NDVkOHA5LAorICAgIDB4MS4xNzQ1ZDhwLTEsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS40NWQxN2NwLTExLAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAweDEuNDVkMTdjcC0xMCwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAweDEuNDVkMTdjcC05LAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIDB4MS40NWQxN2NwLTgsCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgMzk1CisgICAgMHgxLjQ1ZDE3Y3AtNywKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAweDEuNDVkMTdjcC02LAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIDB4MS40NWQxN2NwLTUsCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMHgxLjQ1ZDE3Y3AtNCwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTkKKyAgICAweDEuNDVkMTdjcC0zLAorICAgIDB4MS40NWQxN2NwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDQwMAorICAgIDB4MS40NWQxN2NwLTIsCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAxCisgICAgMHgxLjQ1ZDE3Y3AtMSwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIDB4MS40NWQxN2NwMCwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIDB4MS40NWQxN2NwMSwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIDB4MS40NWQxN2NwMiwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIDB4MS40NWQxN2NwMywKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIDB4MS40NWQxN2NwNCwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIDB4MS40NWQxN2NwNSwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIDB4MS40NWQxN2NwNiwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDQwOQorICAgIDB4MS40NWQxN2NwNywKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIDB4MS40NWQxN2NwOCwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIDB4MS40NWQxN2NwOSwKKyAgICAweDEuNDVkMTdjcC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTIKKyAgICAweDEuNzQ1ZDIwcC0xMSwKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDEzCisgICAgMHgxLjc0NWQyMHAtMTAsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgMHgxLjc0NWQyMHAtOSwKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTUKKyAgICAweDEuNzQ1ZDIwcC04LAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgKGludCktNworICB9LAorICB7IC8vIEVudHJ5IDQxNgorICAgIDB4MS43NDVkMjBwLTcsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgNDE3CisgICAgMHgxLjc0NWQyMHAtNiwKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTgKKyAgICAweDEuNzQ1ZDIwcC01LAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgKGludCktNAorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIDB4MS43NDVkMjBwLTQsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgMHgxLjc0NWQyMHAtMywKKyAgICAweDEuNzQ1ZDIwcC0xLAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjEKKyAgICAweDEuNzQ1ZDIwcC0yLAorICAgIDB4MS43NDVkMjBwLTEsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDQyMgorICAgIDB4MS43NDVkMjBwLTEsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAweDEuNzQ1ZDIwcDAsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjQKKyAgICAweDEuNzQ1ZDIwcDEsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAweDEuNzQ1ZDIwcDIsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjYKKyAgICAweDEuNzQ1ZDIwcDMsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAweDEuNzQ1ZDIwcDQsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAweDEuNzQ1ZDIwcDUsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEuNzQ1ZDIwcDYsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzAKKyAgICAweDEuNzQ1ZDIwcDcsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAweDEuNzQ1ZDIwcDgsCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzIKKyAgICAweDEuNzQ1ZDIwcDksCisgICAgMHgxLjc0NWQyMHAtMSwKKyAgICAoaW50KTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgMHgxLmEyZThjNHAtMTEsCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAoaW50KS0xMAorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS5hMmU4YzRwLTEwLAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDQzNQorICAgIDB4MS5hMmU4YzRwLTksCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAoaW50KS04CisgIH0sCisgIHsgLy8gRW50cnkgNDM2CisgICAgMHgxLmEyZThjNHAtOCwKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAweDEuYTJlOGM0cC03LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDQzOAorICAgIDB4MS5hMmU4YzRwLTYsCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAoaW50KS01CisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgMHgxLmEyZThjNHAtNSwKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuYTJlOGM0cC00LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDQ0MQorICAgIDB4MS5hMmU4YzRwLTMsCisgICAgMHgxLmEyZThjNHAtMSwKKyAgICAoaW50KS0yCisgIH0sCisgIHsgLy8gRW50cnkgNDQyCisgICAgMHgxLmEyZThjNHAtMiwKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDMKKyAgICAweDEuYTJlOGM0cC0xLAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgMHgxLmEyZThjNHAwLAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgMHgxLmEyZThjNHAxLAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgNDQ2CisgICAgMHgxLmEyZThjNHAyLAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCkzCisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgMHgxLmEyZThjNHAzLAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNDQ4CisgICAgMHgxLmEyZThjNHA0LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgNDQ5CisgICAgMHgxLmEyZThjNHA1LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCk2CisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgMHgxLmEyZThjNHA2LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgMHgxLmEyZThjNHA3LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgMHgxLmEyZThjNHA4LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCk5CisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgMHgxLmEyZThjNHA5LAorICAgIDB4MS5hMmU4YzRwLTEsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NAorICAgIDB4MS5kMTc0NjhwLTExLAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAweDEuZDE3NDY4cC0xMCwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAweDEuZDE3NDY4cC05LAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIDB4MS5kMTc0NjhwLTgsCisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgMHgxLmQxNzQ2OHAtNywKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTkKKyAgICAweDEuZDE3NDY4cC02LAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDQ2MAorICAgIDB4MS5kMTc0NjhwLTUsCisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgMHgxLmQxNzQ2OHAtNCwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICAweDEuZDE3NDY4cC0zLAorICAgIDB4MS5kMTc0NjhwLTEsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDQ2MworICAgIDB4MS5kMTc0NjhwLTIsCisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgNDY0CisgICAgMHgxLmQxNzQ2OHAtMSwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDQ2NQorICAgIDB4MS5kMTc0NjhwMCwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDQ2NgorICAgIDB4MS5kMTc0NjhwMSwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpMgorICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIDB4MS5kMTc0NjhwMiwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIDB4MS5kMTc0NjhwMywKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIDB4MS5kMTc0NjhwNCwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpNQorICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIDB4MS5kMTc0NjhwNSwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDQ3MQorICAgIDB4MS5kMTc0NjhwNiwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDQ3MgorICAgIDB4MS5kMTc0NjhwNywKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpOAorICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIDB4MS5kMTc0NjhwOCwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIDB4MS5kMTc0NjhwOSwKKyAgICAweDEuZDE3NDY4cC0xLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzUKKyAgICAweDEucC0xMCwKKyAgICAweDEucDAsCisgICAgKGludCktMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAweDEucC05LAorICAgIDB4MS5wMCwKKyAgICAoaW50KS05CisgIH0sCisgIHsgLy8gRW50cnkgNDc3CisgICAgMHgxLnAtOCwKKyAgICAweDEucDAsCisgICAgKGludCktOAorICB9LAorICB7IC8vIEVudHJ5IDQ3OAorICAgIDB4MS5wLTcsCisgICAgMHgxLnAwLAorICAgIChpbnQpLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzkKKyAgICAweDEucC02LAorICAgIDB4MS5wMCwKKyAgICAoaW50KS02CisgIH0sCisgIHsgLy8gRW50cnkgNDgwCisgICAgMHgxLnAtNSwKKyAgICAweDEucDAsCisgICAgKGludCktNQorICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIDB4MS5wLTQsCisgICAgMHgxLnAwLAorICAgIChpbnQpLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODIKKyAgICAweDEucC0zLAorICAgIDB4MS5wMCwKKyAgICAoaW50KS0zCisgIH0sCisgIHsgLy8gRW50cnkgNDgzCisgICAgMHgxLnAtMiwKKyAgICAweDEucDAsCisgICAgKGludCktMgorICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIDB4MS5wLTEsCisgICAgMHgxLnAwLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAweDEucDAsCisgICAgMHgxLnAwLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIDB4MS5wMSwKKyAgICAweDEucDAsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgMHgxLnAyLAorICAgIDB4MS5wMCwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAweDEucDMsCisgICAgMHgxLnAwLAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIDB4MS5wNCwKKyAgICAweDEucDAsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgMHgxLnA1LAorICAgIDB4MS5wMCwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAweDEucDYsCisgICAgMHgxLnAwLAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDQ5MgorICAgIDB4MS5wNywKKyAgICAweDEucDAsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNDkzCisgICAgMHgxLnA4LAorICAgIDB4MS5wMCwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTQKKyAgICAweDEucDksCisgICAgMHgxLnAwLAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIDB4MS5wMTAsCisgICAgMHgxLnAwLAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTYKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCktMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgMHgxLmZmZmZmZXAxLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDQ5OAorICAgIDB4MS5mZmZmZmVwMTE3LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTEwCisgIH0sCisgIHsgLy8gRW50cnkgNDk5CisgICAgMHgxLmZmZmZmZXAxMTgsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCktOQorICB9LAorICB7IC8vIEVudHJ5IDUwMAorICAgIDB4MS5mZmZmZmVwMTE5LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDEKKyAgICAweDEuZmZmZmZlcDEyMCwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAoaW50KS03CisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgMHgxLmZmZmZmZXAxMjEsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCktNgorICB9LAorICB7IC8vIEVudHJ5IDUwMworICAgIDB4MS5mZmZmZmVwMTIyLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAweDEuZmZmZmZlcDEyMywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAoaW50KS00CisgIH0sCisgIHsgLy8gRW50cnkgNTA1CisgICAgMHgxLmZmZmZmZXAxMjQsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCktMworICB9LAorICB7IC8vIEVudHJ5IDUwNgorICAgIDB4MS5mZmZmZmVwMTI1LAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAweDEuZmZmZmZlcDEyNiwKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgNTA5CisgICAgMHgxLnAtMjIsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgMHgxLnAtMjMsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTIKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDUxMworICAgIDB4MS5wLTE0NywKKyAgICAweDEucC0xNDksCisgICAgKGludCkyCisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgMHgxLnAtMTQ2LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTUKKyAgICAweDEucC0xNDUsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNAorICB9LAorICB7IC8vIEVudHJ5IDUxNgorICAgIDB4MS5wLTE0NCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk1CisgIH0sCisgIHsgLy8gRW50cnkgNTE3CisgICAgMHgxLnAtMTQzLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICAweDEucC0xNDIsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNworICB9LAorICB7IC8vIEVudHJ5IDUxOQorICAgIDB4MS5wLTE0MSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk4CisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgMHgxLnAtMTQwLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjEKKyAgICAweDEucC0xMzksCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjIKKyAgICAweDEucC0xMjksCisgICAgMHgxLnAtMiwKKyAgICAoaW50KS0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjMKKyAgICAweDEucC0xMjgsCisgICAgMHgxLnAtMiwKKyAgICAoaW50KS0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjQKKyAgICAweDEucC0xMjgsCisgICAgMHgxLnAtMSwKKyAgICAoaW50KS0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAweDEucC0xMjcsCisgICAgMHgxLnAtMSwKKyAgICAoaW50KS0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjYKKyAgICAweDEuODBwLTEyOCwKKyAgICAweDEuODBwLTEsCisgICAgKGludCktMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTI3CisgICAgMHgxLjgwcC0xMjcsCisgICAgMHgxLjgwcC0xLAorICAgIChpbnQpLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDUyOAorICAgIDAuMGYsCisgICAgMHgxLnAtMiwKKyAgICAoaW50KS0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjkKKyAgICAwLjBmLAorICAgIDB4MS5wLTIsCisgICAgKGludCktMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNTMwCisgICAgMC4wZiwKKyAgICAweDEucC0xLAorICAgIChpbnQpLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDUzMQorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xLAorICAgIChpbnQpLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIDAuMGYsCisgICAgMHgxLjgwcC0xLAorICAgIChpbnQpLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIDB4MS44MHAtMTQ5LAorICAgIDB4MS44MHAtMSwKKyAgICAoaW50KS0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzQKKyAgICAweDEucDEyNywKKyAgICAweDEucDAsCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAweDEucDEyNiwKKyAgICAweDEucDAsCisgICAgKGludCkxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzYKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDUzNworICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgMHgxLnAtMTQ3LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzkKKyAgICAweDEucC0xNDYsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDU0MAorICAgIDB4MS5wLTE0NSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNTQxCisgICAgMHgxLnAtMTQ0LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAweDEucC0xNDMsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDU0MworICAgIDB4MS5wLTE0MiwKKyAgICAweDEucC0xNDksCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNTQ0CisgICAgMHgxLnAtMTQxLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDUKKyAgICAweDEucC0xNDAsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDU0NgorICAgIDB4MS5wLTEzOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIDB4MS5wLTEzOCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMQorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIDB4MS5wLTEzNywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMgorICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIDB4MS5wLTEzNiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMworICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIDB4MS5wLTEzNSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxNAorICB9LAorICB7IC8vIEVudHJ5IDU1MQorICAgIDB4MS5wLTEzNCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxNQorICB9LAorICB7IC8vIEVudHJ5IDU1MgorICAgIDB4MS5wLTEzMywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxNgorICB9LAorICB7IC8vIEVudHJ5IDU1MworICAgIDB4MS5wLTEzMiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxNworICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS5wLTEzMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxOAorICB9LAorICB7IC8vIEVudHJ5IDU1NQorICAgIDB4MS5wLTEzMCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxOQorICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIDB4MS5wLTEyOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyMAorICB9LAorICB7IC8vIEVudHJ5IDU1NworICAgIDB4MS5wLTEyOCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyMQorICB9LAorICB7IC8vIEVudHJ5IDU1OAorICAgIDB4MS5wLTEyNywKKyAgICAweDEucC0xNDksCisgICAgKGludCkyMgorICB9LAorICB7IC8vIEVudHJ5IDU1OQorICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyMworICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDB4MS5wLTEyNSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyNAorICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIDB4MS5wLTEyNCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyNQorICB9LAorICB7IC8vIEVudHJ5IDU2MgorICAgIDB4MS5wLTEyMywKKyAgICAweDEucC0xNDksCisgICAgKGludCkyNgorICB9LAorICB7IC8vIEVudHJ5IDU2MworICAgIDB4MS5wLTEyMiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyNworICB9LAorICB7IC8vIEVudHJ5IDU2NAorICAgIDB4MS5wLTEyMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyOAorICB9LAorICB7IC8vIEVudHJ5IDU2NQorICAgIDB4MS5wLTEyMCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkyOQorICB9LAorICB7IC8vIEVudHJ5IDU2NgorICAgIDB4MS5wLTExOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzMAorICB9LAorICB7IC8vIEVudHJ5IDU2NworICAgIDB4MS5wLTExOCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzMQorICB9LAorICB7IC8vIEVudHJ5IDU2OAorICAgIDB4MS5wLTExNywKKyAgICAweDEucC0xNDksCisgICAgKGludCkzMgorICB9LAorICB7IC8vIEVudHJ5IDU2OQorICAgIDB4MS5wLTExNiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzMworICB9LAorICB7IC8vIEVudHJ5IDU3MAorICAgIDB4MS5wLTExNSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzNAorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIDB4MS5wLTExNCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzNQorICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIDB4MS5wLTExMywKKyAgICAweDEucC0xNDksCisgICAgKGludCkzNgorICB9LAorICB7IC8vIEVudHJ5IDU3MworICAgIDB4MS5wLTExMiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzNworICB9LAorICB7IC8vIEVudHJ5IDU3NAorICAgIDB4MS5wLTExMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzOAorICB9LAorICB7IC8vIEVudHJ5IDU3NQorICAgIDB4MS5wLTExMCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkzOQorICB9LAorICB7IC8vIEVudHJ5IDU3NgorICAgIDB4MS5wLTEwOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0MAorICB9LAorICB7IC8vIEVudHJ5IDU3NworICAgIDB4MS5wLTEwOCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0MQorICB9LAorICB7IC8vIEVudHJ5IDU3OAorICAgIDB4MS5wLTEwNywKKyAgICAweDEucC0xNDksCisgICAgKGludCk0MgorICB9LAorICB7IC8vIEVudHJ5IDU3OQorICAgIDB4MS5wLTEwNiwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0MworICB9LAorICB7IC8vIEVudHJ5IDU4MAorICAgIDB4MS5wLTEwNSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0NAorICB9LAorICB7IC8vIEVudHJ5IDU4MQorICAgIDB4MS5wLTEwNCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0NQorICB9LAorICB7IC8vIEVudHJ5IDU4MgorICAgIDB4MS5wLTEwMywKKyAgICAweDEucC0xNDksCisgICAgKGludCk0NgorICB9LAorICB7IC8vIEVudHJ5IDU4MworICAgIDB4MS5wLTEwMiwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0NworICB9LAorICB7IC8vIEVudHJ5IDU4NAorICAgIDB4MS5wLTEwMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0OAorICB9LAorICB7IC8vIEVudHJ5IDU4NQorICAgIDB4MS5wLTEwMCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk0OQorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIDB4MS5wLTk5LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTUwCisgIH0sCisgIHsgLy8gRW50cnkgNTg3CisgICAgMHgxLnAtOTgsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODgKKyAgICAweDEucC05NywKKyAgICAweDEucC0xNDksCisgICAgKGludCk1MgorICB9LAorICB7IC8vIEVudHJ5IDU4OQorICAgIDB4MS5wLTk2LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTUzCisgIH0sCisgIHsgLy8gRW50cnkgNTkwCisgICAgMHgxLnAtOTUsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTEKKyAgICAweDEucC05NCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk1NQorICB9LAorICB7IC8vIEVudHJ5IDU5MgorICAgIDB4MS5wLTkzLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTU2CisgIH0sCisgIHsgLy8gRW50cnkgNTkzCisgICAgMHgxLnAtOTIsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTQKKyAgICAweDEucC05MSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk1OAorICB9LAorICB7IC8vIEVudHJ5IDU5NQorICAgIDB4MS5wLTkwLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTU5CisgIH0sCisgIHsgLy8gRW50cnkgNTk2CisgICAgMHgxLnAtODksCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAweDEucC04OCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk2MQorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIDB4MS5wLTg3LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTYyCisgIH0sCisgIHsgLy8gRW50cnkgNTk5CisgICAgMHgxLnAtODYsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDAKKyAgICAweDEucC04NSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk2NAorICB9LAorICB7IC8vIEVudHJ5IDYwMQorICAgIDB4MS5wLTg0LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTY1CisgIH0sCisgIHsgLy8gRW50cnkgNjAyCisgICAgMHgxLnAtODMsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAweDEucC04MiwKKyAgICAweDEucC0xNDksCisgICAgKGludCk2NworICB9LAorICB7IC8vIEVudHJ5IDYwNAorICAgIDB4MS5wLTgxLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTY4CisgIH0sCisgIHsgLy8gRW50cnkgNjA1CisgICAgMHgxLnAtODAsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDYKKyAgICAweDEucC03OSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk3MAorICB9LAorICB7IC8vIEVudHJ5IDYwNworICAgIDB4MS5wLTc4LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTcxCisgIH0sCisgIHsgLy8gRW50cnkgNjA4CisgICAgMHgxLnAtNzcsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDkKKyAgICAweDEucC03NiwKKyAgICAweDEucC0xNDksCisgICAgKGludCk3MworICB9LAorICB7IC8vIEVudHJ5IDYxMAorICAgIDB4MS5wLTc1LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTc0CisgIH0sCisgIHsgLy8gRW50cnkgNjExCisgICAgMHgxLnAtNzQsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNzUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTIKKyAgICAweDEucC03MywKKyAgICAweDEucC0xNDksCisgICAgKGludCk3NgorICB9LAorICB7IC8vIEVudHJ5IDYxMworICAgIDB4MS5wLTcyLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTc3CisgIH0sCisgIHsgLy8gRW50cnkgNjE0CisgICAgMHgxLnAtNzEsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNzgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAweDEucC03MCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk3OQorICB9LAorICB7IC8vIEVudHJ5IDYxNgorICAgIDB4MS5wLTY5LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTgwCisgIH0sCisgIHsgLy8gRW50cnkgNjE3CisgICAgMHgxLnAtNjgsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpODEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTgKKyAgICAweDEucC02NywKKyAgICAweDEucC0xNDksCisgICAgKGludCk4MgorICB9LAorICB7IC8vIEVudHJ5IDYxOQorICAgIDB4MS5wLTY2LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTgzCisgIH0sCisgIHsgLy8gRW50cnkgNjIwCisgICAgMHgxLnAtNjUsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpODQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICAweDEucC02NCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk4NQorICB9LAorICB7IC8vIEVudHJ5IDYyMgorICAgIDB4MS5wLTYzLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTg2CisgIH0sCisgIHsgLy8gRW50cnkgNjIzCisgICAgMHgxLnAtNjIsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpODcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjQKKyAgICAweDEucC02MSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk4OAorICB9LAorICB7IC8vIEVudHJ5IDYyNQorICAgIDB4MS5wLTYwLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTg5CisgIH0sCisgIHsgLy8gRW50cnkgNjI2CisgICAgMHgxLnAtNTksCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpOTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjcKKyAgICAweDEucC01OCwKKyAgICAweDEucC0xNDksCisgICAgKGludCk5MQorICB9LAorICB7IC8vIEVudHJ5IDYyOAorICAgIDB4MS5wLTU3LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTkyCisgIH0sCisgIHsgLy8gRW50cnkgNjI5CisgICAgMHgxLnAtNTYsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpOTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzAKKyAgICAweDEucC01NSwKKyAgICAweDEucC0xNDksCisgICAgKGludCk5NAorICB9LAorICB7IC8vIEVudHJ5IDYzMQorICAgIDB4MS5wLTU0LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTk1CisgIH0sCisgIHsgLy8gRW50cnkgNjMyCisgICAgMHgxLnAtNTMsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpOTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzMKKyAgICAweDEucC01MiwKKyAgICAweDEucC0xNDksCisgICAgKGludCk5NworICB9LAorICB7IC8vIEVudHJ5IDYzNAorICAgIDB4MS5wLTUxLAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTk4CisgIH0sCisgIHsgLy8gRW50cnkgNjM1CisgICAgMHgxLnAtNTAsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzYKKyAgICAweDEucC00OSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzcKKyAgICAweDEucC00OCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzgKKyAgICAweDEucC00NywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzkKKyAgICAweDEucC00NiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDAKKyAgICAweDEucC00NSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDEKKyAgICAweDEucC00NCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDIKKyAgICAweDEucC00MywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDMKKyAgICAweDEucC00MiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDQKKyAgICAweDEucC00MSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDUKKyAgICAweDEucC00MCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDYKKyAgICAweDEucC0zOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDcKKyAgICAweDEucC0zOCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDgKKyAgICAweDEucC0zNywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDkKKyAgICAweDEucC0zNiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTAKKyAgICAweDEucC0zNSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTEKKyAgICAweDEucC0zNCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTIKKyAgICAweDEucC0zMywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTMKKyAgICAweDEucC0zMiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTQKKyAgICAweDEucC0zMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTUKKyAgICAweDEucC0zMCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTYKKyAgICAweDEucC0yOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTcKKyAgICAweDEucC0yOCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAweDEucC0yNywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTkKKyAgICAweDEucC0yNiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjAKKyAgICAweDEucC0yNSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjEKKyAgICAweDEucC0yNCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjIKKyAgICAweDEucC0yMywKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjMKKyAgICAweDEucC0yMiwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjQKKyAgICAweDEucC0yMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjUKKyAgICAweDEucC0yMCwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjYKKyAgICAweDEucC0xOSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjcKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDY2OAorICAgIDB4MS5mZmZmZmNwLTEyNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgNjY5CisgICAgMHgxLmZmZmZmY3AtMTI1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzAKKyAgICAweDEuZmZmZmZjcC0xMjQsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMworICB9LAorICB7IC8vIEVudHJ5IDY3MQorICAgIDB4MS5mZmZmZmNwLTEyMywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk0CisgIH0sCisgIHsgLy8gRW50cnkgNjcyCisgICAgMHgxLmZmZmZmY3AtMTIyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzMKKyAgICAweDEuZmZmZmZjcC0xMjEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNgorICB9LAorICB7IC8vIEVudHJ5IDY3NAorICAgIDB4MS5mZmZmZmNwLTEyMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk3CisgIH0sCisgIHsgLy8gRW50cnkgNjc1CisgICAgMHgxLmZmZmZmY3AtMTE5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzYKKyAgICAweDEuZmZmZmZjcC0xMTgsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpOQorICB9LAorICB7IC8vIEVudHJ5IDY3NworICAgIDB4MS5mZmZmZmNwLTExNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMAorICB9LAorICB7IC8vIEVudHJ5IDY3OAorICAgIDB4MS5mZmZmZmNwLTExNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMQorICB9LAorICB7IC8vIEVudHJ5IDY3OQorICAgIDB4MS5mZmZmZmNwLTExNSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMgorICB9LAorICB7IC8vIEVudHJ5IDY4MAorICAgIDB4MS5mZmZmZmNwLTExNCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMworICB9LAorICB7IC8vIEVudHJ5IDY4MQorICAgIDB4MS5mZmZmZmNwLTExMywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxNAorICB9LAorICB7IC8vIEVudHJ5IDY4MgorICAgIDB4MS5mZmZmZmNwLTExMiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxNQorICB9LAorICB7IC8vIEVudHJ5IDY4MworICAgIDB4MS5mZmZmZmNwLTExMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxNgorICB9LAorICB7IC8vIEVudHJ5IDY4NAorICAgIDB4MS5mZmZmZmNwLTExMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxNworICB9LAorICB7IC8vIEVudHJ5IDY4NQorICAgIDB4MS5mZmZmZmNwLTEwOSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxOAorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIDB4MS5mZmZmZmNwLTEwOCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxOQorICB9LAorICB7IC8vIEVudHJ5IDY4NworICAgIDB4MS5mZmZmZmNwLTEwNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyMAorICB9LAorICB7IC8vIEVudHJ5IDY4OAorICAgIDB4MS5mZmZmZmNwLTEwNiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyMQorICB9LAorICB7IC8vIEVudHJ5IDY4OQorICAgIDB4MS5mZmZmZmNwLTEwNSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyMgorICB9LAorICB7IC8vIEVudHJ5IDY5MAorICAgIDB4MS5mZmZmZmNwLTEwNCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyMworICB9LAorICB7IC8vIEVudHJ5IDY5MQorICAgIDB4MS5mZmZmZmNwLTEwMywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyNAorICB9LAorICB7IC8vIEVudHJ5IDY5MgorICAgIDB4MS5mZmZmZmNwLTEwMiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyNQorICB9LAorICB7IC8vIEVudHJ5IDY5MworICAgIDB4MS5mZmZmZmNwLTEwMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyNgorICB9LAorICB7IC8vIEVudHJ5IDY5NAorICAgIDB4MS5mZmZmZmNwLTEwMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkyNworICB9LAorICB7IC8vIEVudHJ5IDY5NQorICAgIDB4MS5mZmZmZmNwLTk5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTI4CisgIH0sCisgIHsgLy8gRW50cnkgNjk2CisgICAgMHgxLmZmZmZmY3AtOTgsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTcKKyAgICAweDEuZmZmZmZjcC05NywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkzMAorICB9LAorICB7IC8vIEVudHJ5IDY5OAorICAgIDB4MS5mZmZmZmNwLTk2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTMxCisgIH0sCisgIHsgLy8gRW50cnkgNjk5CisgICAgMHgxLmZmZmZmY3AtOTUsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMzIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDAKKyAgICAweDEuZmZmZmZjcC05NCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkzMworICB9LAorICB7IC8vIEVudHJ5IDcwMQorICAgIDB4MS5mZmZmZmNwLTkzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTM0CisgIH0sCisgIHsgLy8gRW50cnkgNzAyCisgICAgMHgxLmZmZmZmY3AtOTIsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMzUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDMKKyAgICAweDEuZmZmZmZjcC05MSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkzNgorICB9LAorICB7IC8vIEVudHJ5IDcwNAorICAgIDB4MS5mZmZmZmNwLTkwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTM3CisgIH0sCisgIHsgLy8gRW50cnkgNzA1CisgICAgMHgxLmZmZmZmY3AtODksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMzgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDYKKyAgICAweDEuZmZmZmZjcC04OCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkzOQorICB9LAorICB7IC8vIEVudHJ5IDcwNworICAgIDB4MS5mZmZmZmNwLTg3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTQwCisgIH0sCisgIHsgLy8gRW50cnkgNzA4CisgICAgMHgxLmZmZmZmY3AtODYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDkKKyAgICAweDEuZmZmZmZjcC04NSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk0MgorICB9LAorICB7IC8vIEVudHJ5IDcxMAorICAgIDB4MS5mZmZmZmNwLTg0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTQzCisgIH0sCisgIHsgLy8gRW50cnkgNzExCisgICAgMHgxLmZmZmZmY3AtODMsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTIKKyAgICAweDEuZmZmZmZjcC04MiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk0NQorICB9LAorICB7IC8vIEVudHJ5IDcxMworICAgIDB4MS5mZmZmZmNwLTgxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTQ2CisgIH0sCisgIHsgLy8gRW50cnkgNzE0CisgICAgMHgxLmZmZmZmY3AtODAsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTUKKyAgICAweDEuZmZmZmZjcC03OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk0OAorICB9LAorICB7IC8vIEVudHJ5IDcxNgorICAgIDB4MS5mZmZmZmNwLTc4LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzE3CisgICAgMHgxLmZmZmZmY3AtNzcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTgKKyAgICAweDEuZmZmZmZjcC03NiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk1MQorICB9LAorICB7IC8vIEVudHJ5IDcxOQorICAgIDB4MS5mZmZmZmNwLTc1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTUyCisgIH0sCisgIHsgLy8gRW50cnkgNzIwCisgICAgMHgxLmZmZmZmY3AtNzQsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjEKKyAgICAweDEuZmZmZmZjcC03MywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk1NAorICB9LAorICB7IC8vIEVudHJ5IDcyMgorICAgIDB4MS5mZmZmZmNwLTcyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTU1CisgIH0sCisgIHsgLy8gRW50cnkgNzIzCisgICAgMHgxLmZmZmZmY3AtNzEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjQKKyAgICAweDEuZmZmZmZjcC03MCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk1NworICB9LAorICB7IC8vIEVudHJ5IDcyNQorICAgIDB4MS5mZmZmZmNwLTY5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTU4CisgIH0sCisgIHsgLy8gRW50cnkgNzI2CisgICAgMHgxLmZmZmZmY3AtNjgsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjcKKyAgICAweDEuZmZmZmZjcC02NywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk2MAorICB9LAorICB7IC8vIEVudHJ5IDcyOAorICAgIDB4MS5mZmZmZmNwLTY2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTYxCisgIH0sCisgIHsgLy8gRW50cnkgNzI5CisgICAgMHgxLmZmZmZmY3AtNjUsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzAKKyAgICAweDEuZmZmZmZjcC02NCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk2MworICB9LAorICB7IC8vIEVudHJ5IDczMQorICAgIDB4MS5mZmZmZmNwLTYzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTY0CisgIH0sCisgIHsgLy8gRW50cnkgNzMyCisgICAgMHgxLmZmZmZmY3AtNjIsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzMKKyAgICAweDEuZmZmZmZjcC02MSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk2NgorICB9LAorICB7IC8vIEVudHJ5IDczNAorICAgIDB4MS5mZmZmZmNwLTYwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTY3CisgIH0sCisgIHsgLy8gRW50cnkgNzM1CisgICAgMHgxLmZmZmZmY3AtNTksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzYKKyAgICAweDEuZmZmZmZjcC01OCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk2OQorICB9LAorICB7IC8vIEVudHJ5IDczNworICAgIDB4MS5mZmZmZmNwLTU3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTcwCisgIH0sCisgIHsgLy8gRW50cnkgNzM4CisgICAgMHgxLmZmZmZmY3AtNTYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzkKKyAgICAweDEuZmZmZmZjcC01NSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk3MgorICB9LAorICB7IC8vIEVudHJ5IDc0MAorICAgIDB4MS5mZmZmZmNwLTU0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTczCisgIH0sCisgIHsgLy8gRW50cnkgNzQxCisgICAgMHgxLmZmZmZmY3AtNTMsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDIKKyAgICAweDEuZmZmZmZjcC01MiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk3NQorICB9LAorICB7IC8vIEVudHJ5IDc0MworICAgIDB4MS5mZmZmZmNwLTUxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTc2CisgIH0sCisgIHsgLy8gRW50cnkgNzQ0CisgICAgMHgxLmZmZmZmY3AtNTAsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpNzcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDUKKyAgICAweDEuZmZmZmZjcC00OSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk3OAorICB9LAorICB7IC8vIEVudHJ5IDc0NgorICAgIDB4MS5mZmZmZmNwLTQ4LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTc5CisgIH0sCisgIHsgLy8gRW50cnkgNzQ3CisgICAgMHgxLmZmZmZmY3AtNDcsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpODAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDgKKyAgICAweDEuZmZmZmZjcC00NiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk4MQorICB9LAorICB7IC8vIEVudHJ5IDc0OQorICAgIDB4MS5mZmZmZmNwLTQ1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTgyCisgIH0sCisgIHsgLy8gRW50cnkgNzUwCisgICAgMHgxLmZmZmZmY3AtNDQsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpODMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTEKKyAgICAweDEuZmZmZmZjcC00MywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk4NAorICB9LAorICB7IC8vIEVudHJ5IDc1MgorICAgIDB4MS5mZmZmZmNwLTQyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTg1CisgIH0sCisgIHsgLy8gRW50cnkgNzUzCisgICAgMHgxLmZmZmZmY3AtNDEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpODYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTQKKyAgICAweDEuZmZmZmZjcC00MCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk4NworICB9LAorICB7IC8vIEVudHJ5IDc1NQorICAgIDB4MS5mZmZmZmNwLTM5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTg4CisgIH0sCisgIHsgLy8gRW50cnkgNzU2CisgICAgMHgxLmZmZmZmY3AtMzgsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpODkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTcKKyAgICAweDEuZmZmZmZjcC0zNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk5MAorICB9LAorICB7IC8vIEVudHJ5IDc1OAorICAgIDB4MS5mZmZmZmNwLTM2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTkxCisgIH0sCisgIHsgLy8gRW50cnkgNzU5CisgICAgMHgxLmZmZmZmY3AtMzUsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpOTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjAKKyAgICAweDEuZmZmZmZjcC0zNCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk5MworICB9LAorICB7IC8vIEVudHJ5IDc2MQorICAgIDB4MS5mZmZmZmNwLTMzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTk0CisgIH0sCisgIHsgLy8gRW50cnkgNzYyCisgICAgMHgxLmZmZmZmY3AtMzIsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpOTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjMKKyAgICAweDEuZmZmZmZjcC0zMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk5NgorICB9LAorICB7IC8vIEVudHJ5IDc2NAorICAgIDB4MS5mZmZmZmNwLTMwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTk3CisgIH0sCisgIHsgLy8gRW50cnkgNzY1CisgICAgMHgxLmZmZmZmY3AtMjksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpOTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjYKKyAgICAweDEuZmZmZmZjcC0yOCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCk5OQorICB9LAorICB7IC8vIEVudHJ5IDc2NworICAgIDB4MS5mZmZmZmNwLTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwMAorICB9LAorICB7IC8vIEVudHJ5IDc2OAorICAgIDB4MS5mZmZmZmNwLTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwMQorICB9LAorICB7IC8vIEVudHJ5IDc2OQorICAgIDB4MS5mZmZmZmNwLTI1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwMgorICB9LAorICB7IC8vIEVudHJ5IDc3MAorICAgIDB4MS5mZmZmZmNwLTI0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwMworICB9LAorICB7IC8vIEVudHJ5IDc3MQorICAgIDB4MS5mZmZmZmNwLTIzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwNAorICB9LAorICB7IC8vIEVudHJ5IDc3MgorICAgIDB4MS5mZmZmZmNwLTIyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwNQorICB9LAorICB7IC8vIEVudHJ5IDc3MworICAgIDB4MS5mZmZmZmNwLTIxLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwNgorICB9LAorICB7IC8vIEVudHJ5IDc3NAorICAgIDB4MS5mZmZmZmNwLTIwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwNworICB9LAorICB7IC8vIEVudHJ5IDc3NQorICAgIDB4MS5mZmZmZmNwLTE5LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwOAorICB9LAorICB7IC8vIEVudHJ5IDc3NgorICAgIDB4MS5mZmZmZmNwLTE4LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEwOQorICB9LAorICB7IC8vIEVudHJ5IDc3NworICAgIDB4MS5mZmZmZmNwLTE3LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExMAorICB9LAorICB7IC8vIEVudHJ5IDc3OAorICAgIDB4MS5mZmZmZmNwLTE2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExMQorICB9LAorICB7IC8vIEVudHJ5IDc3OQorICAgIDB4MS5mZmZmZmNwLTE1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExMgorICB9LAorICB7IC8vIEVudHJ5IDc4MAorICAgIDB4MS5mZmZmZmNwLTE0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExMworICB9LAorICB7IC8vIEVudHJ5IDc4MQorICAgIDB4MS5mZmZmZmNwLTEzLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExNAorICB9LAorICB7IC8vIEVudHJ5IDc4MgorICAgIDB4MS5mZmZmZmNwLTEyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExNQorICB9LAorICB7IC8vIEVudHJ5IDc4MworICAgIDB4MS5mZmZmZmNwLTExLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExNgorICB9LAorICB7IC8vIEVudHJ5IDc4NAorICAgIDB4MS5mZmZmZmNwLTEwLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTExNworICB9LAorICB7IC8vIEVudHJ5IDc4NQorICAgIDB4MS5mZmZmZmNwLTksCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMTE4CisgIH0sCisgIHsgLy8gRW50cnkgNzg2CisgICAgMHgxLmZmZmZmY3AtOCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODcKKyAgICAweDEuZmZmZmZjcC03LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEyMAorICB9LAorICB7IC8vIEVudHJ5IDc4OAorICAgIDB4MS5mZmZmZmNwLTYsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMTIxCisgIH0sCisgIHsgLy8gRW50cnkgNzg5CisgICAgMHgxLmZmZmZmY3AtNSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTAKKyAgICAweDEuZmZmZmZjcC00LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEyMworICB9LAorICB7IC8vIEVudHJ5IDc5MQorICAgIDB4MS5mZmZmZmNwLTMsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMTI0CisgIH0sCisgIHsgLy8gRW50cnkgNzkyCisgICAgMHgxLmZmZmZmY3AtMiwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTMKKyAgICAweDEuZmZmZmZjcC0xLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEyNgorICB9LAorICB7IC8vIEVudHJ5IDc5NAorICAgIDB4MS5mZmZmZmNwMCwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTUKKyAgICAweDEuZmZmZmZjcDEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMTI4CisgIH0sCisgIHsgLy8gRW50cnkgNzk2CisgICAgMHgxLmZmZmZmY3AyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEyOQorICB9LAorICB7IC8vIEVudHJ5IDc5NworICAgIDB4MS5mZmZmZmNwMywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkxMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTgKKyAgICAweDEucDAsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzk5CisgICAgMHgxLnAtMSwKKyAgICAweDEucC0xNDksCisgICAgKGludCkxNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDAKKyAgICAweDEuZmZmZmZjcDIyLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTE0OQorICB9LAorICB7IC8vIEVudHJ5IDgwMQorICAgIDB4MS5mZmZmZmNwMjEsCisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgODAyCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTIzCisgIH0sCisgIHsgLy8gRW50cnkgODAzCisgICAgMHgxLnAtMTI3LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTIyCisgIH0sCisgIHsgLy8gRW50cnkgODA0CisgICAgMHgxLmZmZmZmY3AtMTA0LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTIzCisgIH0sCisgIHsgLy8gRW50cnkgODA1CisgICAgMHgxLmZmZmZmY3AtMTA1LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTIyCisgIH0sCisgIHsgLy8gRW50cnkgODA2CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDcKKyAgICAweDEucC0xNDgsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDgwOAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODA5CisgICAgMHgxLmZmZmZmY3AtMTI2LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTAKKyAgICAwLjAsCisgICAgMC4wZiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTEKKyAgICAtMC4wLAorICAgIC0wLjBmLAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDgxMgorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDgxMworICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODE0CisgICAgMC4wLAorICAgIDAuMGYsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDgxNQorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDgxNgorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODE3CisgICAgLTAuMCwKKyAgICAtMC4wZiwKKyAgICAoaW50KTEyNworICB9LAorICB7IC8vIEVudHJ5IDgxOAorICAgIDAuMCwKKyAgICAwLjBmLAorICAgIChpbnQpLTEyNworICB9LAorICB7IC8vIEVudHJ5IDgxOQorICAgIC0wLjAsCisgICAgLTAuMGYsCisgICAgKGludCktMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODIwCisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjEKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAweDEuZmZmZmZlcDEyNywKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjIKKyAgICAweDEucC0xMjYsCisgICAgMHgxLnAtMTI2LAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDgyMworICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODI0CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OSwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjUKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDksCisgICAgKGludCkwCisgIH0sCisgIHsgLy8gRW50cnkgODI2CisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDgyNworICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjgKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpMAorICB9LAorICB7IC8vIEVudHJ5IDgyOQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAoaW50KTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzAKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIChpbnQpMQorICB9LAorICB7IC8vIEVudHJ5IDgzMQorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAoaW50KTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzIKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzMKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDgzNAorICAgIEhVR0VfVkFMRiwKKyAgICBIVUdFX1ZBTEYsCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzUKKyAgICAtSFVHRV9WQUxGLAorICAgIC1IVUdFX1ZBTEYsCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzYKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGLAorICAgIChpbnQpLTEyNworICB9LAorICB7IC8vIEVudHJ5IDgzNworICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRiwKKyAgICAoaW50KS0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzgKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODM5CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpMTI3CisgIH0sCisgIHsgLy8gRW50cnkgODQwCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCkxCisgIH0sCisgIHsgLy8gRW50cnkgODQxCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgKGludCkxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDIKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTI2LAorICAgIChpbnQpNDAwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDMKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLnAtMTQ5LAorICAgIChpbnQpNDAwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDQKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEucC0xMjYsCisgICAgKGludCk0MDAwMAorICB9LAorICB7IC8vIEVudHJ5IDg0NQorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5wLTE0OSwKKyAgICAoaW50KTQwMDAwCisgIH0sCisgIHsgLy8gRW50cnkgODQ2CisgICAgMHgxLnAtMTI3LAorICAgIDB4MS5wLTEyNiwKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODQ3CisgICAgMHgxLmZmZmZmY3AtMTI4LAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODQ4CisgICAgMC4wZiwKKyAgICAweDEucC0xNDksCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDg0OQorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDksCisgICAgKGludCktMQorICB9LAorICB7IC8vIEVudHJ5IDg1MAorICAgIC0weDEuZmZmZmZjcC0xMjgsCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAoaW50KS0xCisgIH0sCisgIHsgLy8gRW50cnkgODUxCisgICAgLTB4MS5wLTEyNywKKyAgICAtMHgxLnAtMTI2LAorICAgIChpbnQpLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTIKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTQwMDAwCisgIH0sCisgIHsgLy8gRW50cnkgODUzCisgICAgLTAuMGYsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICAgIChpbnQpLTQwMDAwCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvc2lnbmlmaWNhbmRfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL3NpZ25pZmljYW5kX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMDc2MjcyCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL3NpZ25pZmljYW5kX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDYzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGRvdWJsZSwgZG91YmxlPiBnX3NpZ25pZmljYW5kX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgMHgxLnAwLAorICAgIDB4MS4wcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuMmFhYWFhYWFhYWFhYjBwMCwKKyAgICAweDEuMmFhYWFhYWFhYWFhYnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMHgxLjU1NTU1NTU1NTU1NTYwcDAsCisgICAgMHgxLjU1NTU1NTU1NTU1NTZwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS44MDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS44MDAwMDAwMDAwMDAxcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEuYWFhYWFhYWFhYWFhYzBwMCwKKyAgICAweDEuYWFhYWFhYWFhYWFhY3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLmQ1NTU1NTU1NTU1NTcwcDAsCisgICAgMHgxLmQ1NTU1NTU1NTU1NTdwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS5wMCwKKyAgICAweDEuMHAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEuMmFhYWFhYWFhYWFhYjBwMCwKKyAgICAweDEuMmFhYWFhYWFhYWFhYnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLjU1NTU1NTU1NTU1NTYwcDAsCisgICAgMHgxLjU1NTU1NTU1NTU1NTZwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEuODAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuODAwMDAwMDAwMDAwMXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5hYWFhYWFhYWFhYWFjMHAwLAorICAgIDB4MS5hYWFhYWFhYWFhYWFjcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLmQ1NTU1NTU1NTU1NTcwcDAsCisgICAgMHgxLmQ1NTU1NTU1NTU1NTdwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEucDAsCisgICAgMHgxLjBwMjAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEucDAsCisgICAgMHgxLjBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLjJhYWFhYWFhYWFhYWIwcDAsCisgICAgMHgxLjJhYWFhYWFhYWFhYWJwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLjU1NTU1NTU1NTU1NTYwcDAsCisgICAgMHgxLjU1NTU1NTU1NTU1NTZwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLjgwMDAwMDAwMDAwMDEwcDAsCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLmFhYWFhYWFhYWFhYWMwcDAsCisgICAgMHgxLmFhYWFhYWFhYWFhYWNwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLmQ1NTU1NTU1NTU1NTcwcDAsCisgICAgMHgxLmQ1NTU1NTU1NTU1NTdwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLnAwLAorICAgIDB4MS4wcDEwMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIC0weDEucDAsCisgICAgLTB4MS4wcDEwMQorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS5kNTU1NTU1NTU1NTU1MHAwLAorICAgIC0weDEuZDU1NTU1NTU1NTU1NXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIC0weDEuYWFhYWFhYWFhYWFhYTBwMCwKKyAgICAtMHgxLmFhYWFhYWFhYWFhYWFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmYwcDAsCisgICAgLTB4MS43ZmZmZmZmZmZmZmZmcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgLTB4MS41NTU1NTU1NTU1NTU0MHAwLAorICAgIC0weDEuNTU1NTU1NTU1NTU1NHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIC0weDEuMmFhYWFhYWFhYWFhOTBwMCwKKyAgICAtMHgxLjJhYWFhYWFhYWFhYTlwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIC0weDEucDAsCisgICAgLTB4MS4wcDIwMQorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgLTB4MS5kNTU1NTU1NTU1NTU1MHAwLAorICAgIC0weDEuZDU1NTU1NTU1NTU1NXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEuYWFhYWFhYWFhYWFhYTBwMCwKKyAgICAtMHgxLmFhYWFhYWFhYWFhYWFwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmYwcDAsCisgICAgLTB4MS43ZmZmZmZmZmZmZmZmcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgLTB4MS41NTU1NTU1NTU1NTU0MHAwLAorICAgIC0weDEuNTU1NTU1NTU1NTU1NHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIC0weDEuMmFhYWFhYWFhYWFhOTBwMCwKKyAgICAtMHgxLjJhYWFhYWFhYWFhYTlwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIC0weDEucDAsCisgICAgLTB4MS4wcDEwMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIC0weDEuZDU1NTU1NTU1NTU1NTBwMCwKKyAgICAtMHgxLmQ1NTU1NTU1NTU1NTVwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgLTB4MS5hYWFhYWFhYWFhYWFhMHAwLAorICAgIC0weDEuYWFhYWFhYWFhYWFhYXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmYwcDAsCisgICAgLTB4MS43ZmZmZmZmZmZmZmZmcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIC0weDEuNTU1NTU1NTU1NTU1NDBwMCwKKyAgICAtMHgxLjU1NTU1NTU1NTU1NTRwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgLTB4MS4yYWFhYWFhYWFhYWE5MHAwLAorICAgIC0weDEuMmFhYWFhYWFhYWFhOXAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEucDAsCisgICAgMHgxLjBwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5wMCwKKyAgICAweDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEucDAsCisgICAgMHgxLjBwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS5wMCwKKyAgICAweDEuMHAtMTAyNgorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLmFlOGJhMmU4YmEyZTgwcDAsCisgICAgMHgxLmFlOGJhMmU4YmEyZThwLTEwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS44ZThiYTJlOGJhMmU4MHAwLAorICAgIDB4MS44ZThiYTJlOGJhMmU4cC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuMjJlOGJhMmU4YmEyZTBwMCwKKyAgICAweDEuMjJlOGJhMmU4YmEyZXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjdlOGJhMmU4YmEyZTgwcDAsCisgICAgMHgxLjdlOGJhMmU4YmEyZThwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5kYTJlOGJhMmU4YmEyMHAwLAorICAgIDB4MS5kYTJlOGJhMmU4YmEycC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuMWFlOGJhMmU4YmEyZTBwMCwKKyAgICAweDEuMWFlOGJhMmU4YmEyZXAtMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLjQ4YmEyZThiYTJlOGIwcDAsCisgICAgMHgxLjQ4YmEyZThiYTJlOGJwLTEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS43NjhiYTJlOGJhMmU4MHAwLAorICAgIDB4MS43NjhiYTJlOGJhMmU4cC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuYTQ1ZDE3NDVkMTc0NTBwMCwKKyAgICAweDEuYTQ1ZDE3NDVkMTc0NXAtMTAyMQorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLmQyMmU4YmEyZThiYTIwcDAsCisgICAgMHgxLmQyMmU4YmEyZThiYTJwLTEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MAorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5wMCwKKyAgICAweDEuMHA1MgorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUyCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEucDAsCisgICAgMHgxLjBwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUzCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUxCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MAorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MgorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIC0weDEucDAsCisgICAgLTB4MS4wcDUzCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUyCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLnAwLAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIDB4MS5wMCwKKyAgICAweDEuMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5wMCwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIC0weDEucDAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5wMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLnAwLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5wMCwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEucDAsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLnAwLAorICAgIDB4MS4wcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNAorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS5wMCwKKyAgICAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEucDAsCisgICAgMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLnAwLAorICAgIDB4MS4wcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA3CisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuOTIxZmI1NDQ0MmQxODBwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgLTB4MS45MjFmYjU0NDQyZDE4MHAwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLjkyMWZiNTQ0NDJkMTgwcDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIC0weDEuOTIxZmI1NDQ0MmQxODBwMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIC0weDEucDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuOTIxZmI1NDQ0MmQxODBwMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIC0weDEuOTIxZmI1NDQ0MmQxODBwMCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAweDEucDAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS5wMCwKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIC0weDEucDAsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgMHgxLnAwLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvc2lnbmlmaWNhbmRmX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9zaWduaWZpY2FuZGZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ3ODY5YjcKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvc2lnbmlmaWNhbmRmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDUyNiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGZsb2F0LCBmbG9hdD4gZ19zaWduaWZpY2FuZGZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAweDEucDAsCisgICAgMHgxLnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLjJhYWFhYXAwLAorICAgIDB4MS4yYWFhYWFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS41NTU1NTRwMCwKKyAgICAweDEuNTU1NTU0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuN2ZmZmZlcDAsCisgICAgMHgxLjdmZmZmZXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLmFhYWFhOHAwLAorICAgIDB4MS5hYWFhYThwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS5kNTU1NTJwMCwKKyAgICAweDEuZDU1NTUycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuZmZmZmZjcDAsCisgICAgMHgxLmZmZmZmY3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgLTB4MS5kNTU1NTZwMCwKKyAgICAtMHgxLmQ1NTU1NnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgLTB4MS5hYWFhYWNwMCwKKyAgICAtMHgxLmFhYWFhY3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIC0weDEuODAwMDAycDAsCisgICAgLTB4MS44MDAwMDJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAtMHgxLjU1NTU1OHAwLAorICAgIC0weDEuNTU1NTU4cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgLTB4MS4yYWFhYWVwMCwKKyAgICAtMHgxLjJhYWFhZXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIC0weDEuMDAwMDA0cDAsCisgICAgLTB4MS4wMDAwMDRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEucDAsCisgICAgMHgxLnAyMQorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLnAwLAorICAgIDB4MS5wMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5wMCwKKyAgICAweDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEucDAsCisgICAgMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLnAwLAorICAgIDB4MS5wLTEzMAorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLmFlOGJhMHAwLAorICAgIDB4MS5hZThiYTBwLTEyOAorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLjhlOGJhMHAwLAorICAgIDB4MS44ZThiYTBwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjIyZThiOHAwLAorICAgIDB4MS4yMmU4YjhwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLjdlOGJhMHAwLAorICAgIDB4MS43ZThiYTBwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLmRhMmU4OHAwLAorICAgIDB4MS5kYTJlODhwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLjFhZThiOHAwLAorICAgIDB4MS4xYWU4YjhwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLjQ4YmEyY3AwLAorICAgIDB4MS40OGJhMmNwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLjc2OGJhMHAwLAorICAgIDB4MS43NjhiYTBwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLmE0NWQxNHAwLAorICAgIDB4MS5hNDVkMTRwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLmQyMmU4OHAwLAorICAgIDB4MS5kMjJlODhwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLmZmZmZmY3AwLAorICAgIDB4MS5mZmZmZmNwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS5wMCwKKyAgICAweDEucDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAyMgorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS5wMCwKKyAgICAweDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS5wMCwKKyAgICAweDEucDI0CisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAyNAorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAyMgorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAyMgorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAtMHgxLmZmZmZmZXAyMQorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAyMworICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAyMworICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAtMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAyNAorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgLTB4MS5mZmZmZmVwMCwKKyAgICAtMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAtMHgxLmZmZmZmZXAwLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5wMCwKKyAgICAweDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS5wMCwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS5wMCwKKyAgICAweDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS5wMCwKKyAgICAweDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS5wMCwKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS5wMCwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEucDAsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLnAwLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgMHgxLnAwLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLnAwLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMgorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgMHgxLnAwLAorICAgIDB4MS5wMworICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMworICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLnAwLAorICAgIDB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgMHgxLnAwLAorICAgIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwNQorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwNQorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLnAwLAorICAgIDB4MS5wNgorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLmZmZmZmZXAwLAorICAgIDB4MS5mZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLnAwLAorICAgIDB4MS5wNworICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwNworICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIC0weDEuZmZmZmZlcDAsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAweDEuZmZmZmZjcDAsCisgICAgMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAtMHgxLmZmZmZmY3AwLAorICAgIC0weDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIDB4MS45MjFmYjZwMCwKKyAgICAweDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAtMHgxLjkyMWZiNnAwLAorICAgIC0weDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuOTIxZmI2cDAsCisgICAgMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgLTB4MS45MjFmYjZwMCwKKyAgICAtMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjAwMDAwMnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIC0weDEuMDAwMDAycDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEuZmZmZmZlcDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIC0weDEuZmZmZmZlcDAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuOTIxZmI2cDAsCisgICAgMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIC0weDEuOTIxZmI2cDAsCisgICAgLTB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEuMDAwMDAycDAsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgLTB4MS4wMDAwMDJwMCwKKyAgICAtMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMHgxLnAwLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIC0weDEucDAsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS5mZmZmZmNwMCwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAtMHgxLmZmZmZmY3AwLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEuZmZmZmY4cDAsCisgICAgMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgLTB4MS5mZmZmZjhwMCwKKyAgICAtMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLnAwLAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIC0weDEucDAsCisgICAgLTB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS5wMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAtMHgxLnAwLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAwLjAsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIC0wLjAsCisgICAgLTAuMGYKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9zaW5faW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL3Npbl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzM0MWNmZQotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9zaW5faW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsNTc3NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGRvdWJsZSwgZG91YmxlPiBnX3Npbl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIDB4MS45MjU5ZTM3MDhiZDM5ZmZmZmZmZmZmZmZmZmYxYmRiZXAtNSwKKyAgICAweDEuOTI4MzU4NjUwM2ZlMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAtMHgxLjkyNTllMzcwOGJkMzlmZmZmZmZmZmZmZmZmZjFiZGJlcC01LAorICAgIC0weDEuOTI4MzU4NjUwM2ZlMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAweDEuZDc3YjExN2YyMzBkNWZmZmZmZmZmZmZmZmZmMmFkYzdwLTUsCisgICAgMHgxLmQ3YmRjZDc3ODA0OWZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgLTB4MS5kNzdiMTE3ZjIzMGQ1ZmZmZmZmZmZmZmZmZmYyYWRjN3AtNSwKKyAgICAtMHgxLmQ3YmRjZDc3ODA0OWZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLmExNDkwYzhjMDZiYTZmZmZmZmZmZmZmZmZmYTk4NjExcC00LAorICAgIDB4MS5hMjAyYjNmYjg0Nzg4cC00CisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIC0weDEuYTE0OTBjOGMwNmJhNmZmZmZmZmZmZmZmZmZhOTg2MTFwLTQsCisgICAgLTB4MS5hMjAyYjNmYjg0Nzg4cC00CisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS5jYzQwYzM4MDUyMjlhN2ZmZmZmZmZmZmZmZjgzZTc2YnAtMywKKyAgICAweDEuZDAzN2NiMjdlZTZkZnAtMworICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAtMHgxLmNjNDBjMzgwNTIyOWE3ZmZmZmZmZmZmZmZmODNlNzZicC0zLAorICAgIC0weDEuZDAzN2NiMjdlZTZkZnAtMworICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEuZDBlZjc5OTAwMWJhOTAwMDAwMDAwMDAwMDA1ZWE0ZTlwLTMsCisgICAgMHgxLmQ1MDY0ZTZmZTgyYzVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgLTB4MS5kMGVmNzk5MDAxYmE5MDAwMDAwMDAwMDAwMDVlYTRlOXAtMywKKyAgICAtMHgxLmQ1MDY0ZTZmZTgyYzVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5lOTk1MDczMGM0Njk1ZmZmZmZmZmZmZmZmZmZmZmMyZXAtMiwKKyAgICAweDEuZmU3Njc3MzlkMGY2ZHAtMgorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgLTB4MS5lOTk1MDczMGM0Njk1ZmZmZmZmZmZmZmZmZmZmZmMyZXAtMiwKKyAgICAtMHgxLmZlNzY3NzM5ZDBmNmRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS45OGRjZDA5MzM3NzkyODAwMDAwMDAwMDAwMDE2N2RjN3AtMSwKKyAgICAweDEuZDk4YzRjNjEyNzE4ZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgLTB4MS45OGRjZDA5MzM3NzkyODAwMDAwMDAwMDAwMDE2N2RjN3AtMSwKKyAgICAtMHgxLmQ5OGM0YzYxMjcxOGRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWM4ODMxcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEuNzBhOWQ4MjViNTA2NDAwNDIyMTU1YWVjZDUxOWQ1NGNwLTEsCisgICAgLTB4MS4wMDAwMDAxZjhwNTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAtMHgxLjcwYTlkODI1YjUwNjQwMDQyMjE1NWFlY2Q1MTlkNTRjcC0xLAorICAgIDB4MS4wMDAwMDAxZjhwNTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAweDEuYmYzOTgwYzZjMWU5ZjQ0OTY3OTVmNGNlNTM1MDE2YjZwLTEsCisgICAgLTB4MS4wMGMwYmY4cDcwMAorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgLTB4MS5iZjM5ODBjNmMxZTlmNDQ5Njc5NWY0Y2U1MzUwMTZiNnAtMSwKKyAgICAweDEuMDBjMGJmOHA3MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5kNjI4OTlkNDhiNDM5N2ZiMjc1YmE0NDA5NTk3MTM2NHAtNCwKKyAgICAtMHgxLjEzZmZmZmZmZmZmODBwNgorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgLTB4MS5kNjI4OTlkNDhiNDM5N2ZiMjc1YmE0NDA5NTk3MTM2NHAtNCwKKyAgICAweDEuMTNmZmZmZmZmZmY4MHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAtMHgxLjE3YjdhNjBjZTFmMTQ4NTgyNDcxMTUyM2FiMGZkNmQxcC01LAorICAgIC0weDEuMTdjNTkyMDc2N2RmY3AtNQorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLjE3YjdhNjBjZTFmMTQ4NTgyNDcxMTUyM2FiMGZkNmQxcC01LAorICAgIDB4MS4xN2M1OTIwNzY3ZGZjcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuZjAxOTJiNzk0ZmJiZTAzMGZlMjVlZGY2NWE1ZGI5YmZwLTEsCisgICAgLTB4MS4xZDk5YmUwODcxM2NjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIC0weDEuZjAxOTJiNzk0ZmJiZTAzMGZlMjVlZGY2NWE1ZGI5YmZwLTEsCisgICAgMHgxLjFkOTliZTA4NzEzY2NwMgorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgLTB4MS41ZTYxMzI4YzAwMzRlYzNhMDVkMDUzYjcyZTJkNTk0NXAtMywKKyAgICAtMHgxLjFkZGJmZDY0ZmMwZDNwODEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS41ZTYxMzI4YzAwMzRlYzNhMDVkMDUzYjcyZTJkNTk0NXAtMywKKyAgICAweDEuMWRkYmZkNjRmYzBkM3A4MQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLmZiMDI4YzVkZjFkYjNlYjMyYjAwNjJjNmNkNGRlYTBicC0xLAorICAgIC0weDEuMWUyYTE1NjNlMDY4ZXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAtMHgxLmZiMDI4YzVkZjFkYjNlYjMyYjAwNjJjNmNkNGRlYTBicC0xLAorICAgIDB4MS4xZTJhMTU2M2UwNjhlcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEuMmNlZmIxOTZiYTIwNzdmZmZmZmQ0YmQ2NTA3MjJiZmJwLTMsCisgICAgLTB4MS4yZTA3YTkxMzE0ZHAtMworICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLjJjZWZiMTk2YmEyMDc3ZmZmZmZkNGJkNjUwNzIyYmZicC0zLAorICAgIDB4MS4yZTA3YTkxMzE0ZHAtMworICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLmI4MGY0ODlkM2VkZjQ4MzVkZTdkZWVlYjViYjM4YWQ5cC0yLAorICAgIC0weDEuM2JjZWMyNzA0NDRlMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAtMHgxLmI4MGY0ODlkM2VkZjQ4MzVkZTdkZWVlYjViYjM4YWQ5cC0yLAorICAgIDB4MS4zYmNlYzI3MDQ0NGUycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIC0weDEuNGZmZmZmZmZmZmEzODgwMDAwMDAwNGRkMjJjY2NjY2NwLTIwLAorICAgIC0weDEuNTAwMDAwMDAwMDA0MHAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS40ZmZmZmZmZmZmYTM4ODAwMDAwMDA0ZGQyMmNjY2NjY3AtMjAsCisgICAgMHgxLjUwMDAwMDAwMDAwNDBwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMzYKKyAgICAtMHgxLmQyOWRhNWI0NGY1MWI3ZmMwMTlmMTgzZTFkM2JkNTExcC0yLAorICAgIC0weDEuNTU5MDAxYTQyZDkwY3AxCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuZDI5ZGE1YjQ0ZjUxYjdmYzAxOWYxODNlMWQzYmQ1MTFwLTIsCisgICAgMHgxLjU1OTAwMWE0MmQ5MGNwMQorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgLTB4MS5mODVmNTI2MTQ3Zjc4N2ZmZmZmMTUyNDFlNzE5NzM0YnAtMSwKKyAgICAtMHgxLjU5N2JmM2U5Nzc2YjdwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5mODVmNTI2MTQ3Zjc4N2ZmZmZmMTUyNDFlNzE5NzM0YnAtMSwKKyAgICAweDEuNTk3YmYzZTk3NzZiN3A5OQorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgLTB4MS42ZDYxYjU4Yzk5YzQyZjEzOTZhZjRhNDIxNDhmNzNjNnAtNTksCisgICAgLTB4MS42YzZjYmM0NWRjOGRlcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIDB4MS42ZDYxYjU4Yzk5YzQyZjEzOTZhZjRhNDIxNDhmNzNjNnAtNTksCisgICAgMHgxLjZjNmNiYzQ1ZGM4ZGVwNworICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLmU1YzNjMDhhMjU4YTc3ZjFkMTJlZmE4YzMwMTY2NzA5cC0xLAorICAgIC0weDEuNzNkOGQxNzNmOTBkMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAtMHgxLmU1YzNjMDhhMjU4YTc3ZjFkMTJlZmE4YzMwMTY2NzA5cC0xLAorICAgIDB4MS43M2Q4ZDE3M2Y5MGQwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS5mZWIzNjgwNmNhNWZiN2VhNDQyMTE5YWY0MWJlMGY0ZnAtMSwKKyAgICAtMHgxLjhjMjAyZDNhMzE4MDJwNgorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgLTB4MS5mZWIzNjgwNmNhNWZiN2VhNDQyMTE5YWY0MWJlMGY0ZnAtMSwKKyAgICAweDEuOGMyMDJkM2EzMTgwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAtMHgxLjdjNmM3YjAxYjk4ZDk0N2NkOGFkZDVlNWQxYWUxMWNhcC0xLAorICAgIC0weDEuYWNkNTM4YjFhNmQ1ZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLjdjNmM3YjAxYjk4ZDk0N2NkOGFkZDVlNWQxYWUxMWNhcC0xLAorICAgIDB4MS5hY2Q1MzhiMWE2ZDVkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMHgxLjE5MWJlMjA1OWRjYjU3ZmVkODZkZDJjYzYyZWIxYTlmcC0xLAorICAgIC0weDEuYjc1MjVhYzk3ZTBkMnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuMTkxYmUyMDU5ZGNiNTdmZWQ4NmRkMmNjNjJlYjFhOWZwLTEsCisgICAgMHgxLmI3NTI1YWM5N2UwZDJwMgorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgLTB4MS5mODMwNTk5M2EyMTJjN2ZmZmZmYzE1YzJhZmE1ZTU3ZXAtMSwKKyAgICAtMHgxLmJlZTVmYThhODRiMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLmY4MzA1OTkzYTIxMmM3ZmZmZmZjMTVjMmFmYTVlNTdlcC0xLAorICAgIDB4MS5iZWU1ZmE4YTg0YjAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS5mZjNiMTM1MzBmZDcwZTcyYjc3ZjdjNjcyMWRhMTEzMXAtMSwKKyAgICAtMHgxLmMzOTM5NzlmZTU5MjFwOQorICB9LAorICB7IC8vIEVudHJ5IDUzCisgICAgLTB4MS5mZjNiMTM1MzBmZDcwZTcyYjc3ZjdjNjcyMWRhMTEzMXAtMSwKKyAgICAweDEuYzM5Mzk3OWZlNTkyMXA5CisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAtMHgxLmYxMTlkYTgxYTRkYTU3ZmZkOGJjYzVhMTI0N2Y1NTkwcC0xLAorICAgIC0weDEuYzQ4ZmZjNzI1NjNjOHAxOAorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmYxMTlkYTgxYTRkYTU3ZmZkOGJjYzVhMTI0N2Y1NTkwcC0xLAorICAgIDB4MS5jNDhmZmM3MjU2M2M4cDE4CisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLmZkNzNiODFlMDRjY2M3ZTlkNzY0ZWNhOGJiMDg1MTA5cC0xLAorICAgIC0weDEuYzc5NTQ4YmMzMTg1NnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuZmQ3M2I4MWUwNGNjYzdlOWQ3NjRlY2E4YmIwODUxMDlwLTEsCisgICAgMHgxLmM3OTU0OGJjMzE4NTZwMworICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgLTB4MS5jNzg4NWFlZjMzYTk0ZmZjNWFlMDZiZTk0NDRlZmFkNXAtMywKKyAgICAtMHgxLmNiNnAtMworICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLmM3ODg1YWVmMzNhOTRmZmM1YWUwNmJlOTQ0NGVmYWQ1cC0zLAorICAgIDB4MS5jYjZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEuZTY0OTQ5MTFlZWRkMDhkMTY1MGE0YjUxMzZjM2U2ZDZwLTcsCisgICAgLTB4MS5lNjRkZGFmN2JkNzJmcC03CisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuZTY0OTQ5MTFlZWRkMDhkMTY1MGE0YjUxMzZjM2U2ZDZwLTcsCisgICAgMHgxLmU2NGRkYWY3YmQ3MmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5lMTgwZWVmNWIxYzg4N2ZmZjU4NTU5NDk0OWI0NmU2Y3AtMSwKKyAgICAtMHgxLmVjZGQwZmJmMDc5NDJwNQorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS5lMTgwZWVmNWIxYzg4N2ZmZjU4NTU5NDk0OWI0NmU2Y3AtMSwKKyAgICAweDEuZWNkZDBmYmYwNzk0MnA1CisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAtMHgxLmZkOThkMjBjMWJlNDM4MDAwMDAwMWVlNTE1NjJkN2E4cC0xLAorICAgIC0weDEuZjA3M2EyMzI5MjMzN3AyCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEuZmQ5OGQyMGMxYmU0MzgwMDAwMDAxZWU1MTU2MmQ3YThwLTEsCisgICAgMHgxLmYwNzNhMjMyOTIzMzdwMgorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS43MjY4YzExMjI5N2M4N2QxNzYzM2JhYjcyMmYzMWEzZnAtNSwKKyAgICAtMHgxLmY1ZTRjNDEwZjRlZjhwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS43MjY4YzExMjI5N2M4N2QxNzYzM2JhYjcyMmYzMWEzZnAtNSwKKyAgICAweDEuZjVlNGM0MTBmNGVmOHAxNQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLjQyMDc5NjE0NjA3MGU2MjhjMTlkMzhkMWU5MGRmMjI4cC0xOCwKKyAgICAtMHgxLmY4MDAwMDAwMDAycDk1CisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAtMHgxLjQyMDc5NjE0NjA3MGU2MjhjMTlkMzhkMWU5MGRmMjI4cC0xOCwKKyAgICAweDEuZjgwMDAwMDAwMDJwOTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuZTRmNmRjNDk5ZDljYzgwMzU2MDdmYTNkNzZmOWY0YzVwLTIsCisgICAgLTB4MS5mOTM2NWQ3OTU0NmUxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuZTRmNmRjNDk5ZDljYzgwMzU2MDdmYTNkNzZmOWY0YzVwLTIsCisgICAgMHgxLmY5MzY1ZDc5NTQ2ZTFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS5iMmVmOTliMTQwZDY1MDQ2OGFlZDgyZmUwZDQ0MmFkYXAtMTQsCisgICAgLTB4MS5mZmZmZmZmZmZmZTdlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIC0weDEuYjJlZjk5YjE0MGQ2NTA0NjhhZWQ4MmZlMGQ0NDJhZGFwLTE0LAorICAgIDB4MS5mZmZmZmZmZmZmZTdlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5kYjBmZmMzZWNjNmUzYjhlMzczNTdjYTAwMmQ1NjI1YnAtMSwKKyAgICAweDEuMHAxNQorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5kYjBmZmMzZWNjNmUzYjhlMzczNTdjYTAwMmQ1NjI1YnAtMSwKKyAgICAtMHgxLjBwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIC0weDEuZTk4Zjg3MDk4YjYyNjk5YWQxNmUwMjU5YjBlODViMjRwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS5lOThmODcwOThiNjI2OTlhZDE2ZTAyNTliMGU4NWIyNHAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS4wNTNjMzUwNjhlMTBkNDVlZTUwZjJkMWRkY2FiY2YzZHAtNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MgorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgLTB4MS4wNTNjMzUwNjhlMTBkNDVlZTUwZjJkMWRkY2FiY2YzZHAtNCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS43MmQ0MjFiNjg4NGU1MDBiYmQzYTllZmMwZjBjZWQ5MnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuNzJkNDIxYjY4ODRlNTAwYmJkM2E5ZWZjMGYwY2VkOTJwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDIyOAorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLjc3ZmJhOTg3YzU2NTMzYTY2NWU4OGU1YTU5MmNhMTBjcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQ5MQorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS43N2ZiYTk4N2M1NjUzM2E2NjVlODhlNWE1OTJjYTEwY3AtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNDkxCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAtMHgxLjcyM2IyNjI1MzMxYWYyZTc5YTlmMDcxNDVhMWU1NzMxcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAzcDIxNQorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgMHgxLjcyM2IyNjI1MzMxYWYyZTc5YTlmMDcxNDVhMWU1NzMxcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwM3AyMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS5hZWQ1NDhmMDkwY2Y0N2ZlN2UzMjEwM2FiMTQwY2FmOHAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwNnAwCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAtMHgxLmFlZDU0OGYwOTBjZjQ3ZmU3ZTMyMTAzYWIxNDBjYWY4cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwNnAwCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLmZmOTgzMjA4YzdkYzk3ODA3OTE3NGI0NjFiMzgwOWYwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDA3cDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS5mZjk4MzIwOGM3ZGM5NzgwNzkxNzRiNDYxYjM4MDlmMHAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDdwOAorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLmZmZWYyOWRjMzg0NTJmZmVmNGE3NzlhMWY4NjcwN2RhcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDA3cDI3NQorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS5mZmVmMjlkYzM4NDUyZmZlZjRhNzc5YTFmODY3MDdkYXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDdwMjc1CisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAtMHgxLmZhODhjMzc1NzIzYzBkN2VhMWYyZDA4ZWJiMmY5NDA3cC04LAorICAgIDB4MS4wMDAwMDAwMDAwMDA3cDQ0OQorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLmZhODhjMzc1NzIzYzBkN2VhMWYyZDA4ZWJiMmY5NDA3cC04LAorICAgIC0weDEuMDAwMDAwMDAwMDAwN3A0NDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5mZmY1MzIyYzk0ZWFlMWIwYjUxMDg2YzA4ZmFhNTg1Y3AtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAxMXA2NDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIC0weDEuZmZmNTMyMmM5NGVhZTFiMGI1MTA4NmMwOGZhYTU4NWNwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDExcDY0NAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgLTB4MS5hNzM2MzBhZjhmMTViODAwMDA1NGRkZDk1MGJiYTEwN3AtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAxZnAxNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS5hNzM2MzBhZjhmMTViODAwMDA1NGRkZDk1MGJiYTEwN3AtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMWZwMTY0CisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuMWM1NDhmOTI0OWU0NDc0OTg4NjQ2Yjg2ODk0ZTk1ODFwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMzhwMzgwCisgIH0sCisgIHsgLy8gRW50cnkgOTkKKyAgICAtMHgxLjFjNTQ4ZjkyNDllNDQ3NDk4ODY0NmI4Njg5NGU5NTgxcC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAzOHAzODAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuY2E5NjViZDJjNGRmZWU0Nzc5Y2E4Yzc5NzgwNjI5MmRwLTMsCisgICAgMHgxLjAwMDAwMDAwMDAxMThwMzgwCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS5jYTk2NWJkMmM0ZGZlZTQ3NzljYThjNzk3ODA2MjkyZHAtMywKKyAgICAtMHgxLjAwMDAwMDAwMDAxMThwMzgwCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgLTB4MS44MzdiOWRkZGMyNGNmMmY3MjlhMzgxNDc3OTViMThkMnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDEyY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLjgzN2I5ZGRkYzI0Y2YyZjcyOWEzODE0Nzc5NWIxOGQycC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDEyY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLmQ4MmMxNzg0YzNlY2JmZWZiMDJkN2Q2YjU4NWY3M2M0cC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMWY4cDcwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIC0weDEuZDgyYzE3ODRjM2VjYmZlZmIwMmQ3ZDZiNTg1ZjczYzRwLTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMWY4cDcwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5mZmZlYWFhYWVmMmVlN2VlODc2ZjkwYjcwYjUxMjQ3NXAtOCwKKyAgICAweDEuMDAwMDAwMDAwMDJwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAtMHgxLmZmZmVhYWFhZWYyZWU3ZWU4NzZmOTBiNzBiNTEyNDc1cC04LAorICAgIC0weDEuMDAwMDAwMDAwMDJwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAtMHgxLjA4NzFiZGRkOTBmYzU4MzQwMzRlZTNmNmY4NmI0M2EzcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMnA0MAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS4wODcxYmRkZDkwZmM1ODM0MDM0ZWUzZjZmODZiNDNhM3AtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAycDQwCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLmZmZmVhYWFhZWYyZjA3ZWU0NzZmYTYwYzVkYmU0ODg2cC04LAorICAgIDB4MS4wMDAwMDAwMDAwMjAxcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgLTB4MS5mZmZlYWFhYWVmMmYwN2VlNDc2ZmE2MGM1ZGJlNDg4NnAtOCwKKyAgICAtMHgxLjAwMDAwMDAwMDAyMDFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuZmZmZWFhYWFlZjMzMDdlNjQ3NzI1MGI2YWI1MjRhYjdwLTgsCisgICAgMHgxLjAwMDAwMDAwMDAyMjFwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLmZmZmVhYWFhZWYzMzA3ZTY0NzcyNTBiNmFiNTI0YWI3cC04LAorICAgIC0weDEuMDAwMDAwMDAwMDIyMXAtNworICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS5mZmZlYWFhYWVmMzYyN2UwMDc3NDY2MGJiN2Q3YTg3Y3AtOCwKKyAgICAweDEuMDAwMDAwMDAwMDIzYXAtNworICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIC0weDEuZmZmZWFhYWFlZjM2MjdlMDA3NzQ2NjBiYjdkN2E4N2NwLTgsCisgICAgLTB4MS4wMDAwMDAwMDAwMjNhcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLmUwYzZlZGZhOTM2MDE1OTUzNGRlZjcxMzkyNWYxMjZmcC05LAorICAgIDB4MS4wMDAwMDAwMDA0MHA0NQorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIC0weDEuZTBjNmVkZmE5MzYwMTU5NTM0ZGVmNzEzOTI1ZjEyNmZwLTksCisgICAgLTB4MS4wMDAwMDAwMDA0MHA0NQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS5lYTFmNjE4MzU2ZGIwZDNhYjY2ZDBlZjY0OTNiYzkzZHAtNSwKKyAgICAweDEuMDAwMDAwMGMwcDQwCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgLTB4MS5lYTFmNjE4MzU2ZGIwZDNhYjY2ZDBlZjY0OTNiYzkzZHAtNSwKKyAgICAtMHgxLjAwMDAwMDBjMHA0MAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS5mYWFlZWQ3NTg3NTQxZmZmZmY5OTIyYmE2NjkwYjhiYXAtMywKKyAgICAweDEuMDAwMDAwMTNjODZmNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIC0weDEuZmFhZWVkNzU4NzU0MWZmZmZmOTkyMmJhNjY5MGI4YmFwLTMsCisgICAgLTB4MS4wMDAwMDAxM2M4NmY0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjU0MGJjNzc4NTY4MGFjMmNhMTY5ZmY5ZTNjYzRiMTUycC0xLAorICAgIDB4MS4wMDFwMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLjU0MGJjNzc4NTY4MGFjMmNhMTY5ZmY5ZTNjYzRiMTUycC0xLAorICAgIC0weDEuMDAxcDEzCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgLTB4MS4zN2E3Y2I5MDdhMmU1MDAxMDZiMDRkOWUzZjBiMWI4Y3AtMSwKKyAgICAweDEuMDAzcDY5OQorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDB4MS4zN2E3Y2I5MDdhMmU1MDAxMDZiMDRkOWUzZjBiMWI4Y3AtMSwKKyAgICAtMHgxLjAwM3A2OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAtMHgxLjI5ZTU4NDVmYzU0YjU4MDE0NTI3M2YyY2FmZTczYWI1cC0xLAorICAgIDB4MS4wMDM4MHA0MAorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS4yOWU1ODQ1ZmM1NGI1ODAxNDUyNzNmMmNhZmU3M2FiNXAtMSwKKyAgICAtMHgxLjAwMzgwcDQwCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLmZmZTVjYTQ2NTY0OTE3YTFlODEyYWVkZDQ4ZmUxMDdjcC0xLAorICAgIDB4MS4wMDdwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAtMHgxLmZmZTVjYTQ2NTY0OTE3YTFlODEyYWVkZDQ4ZmUxMDdjcC0xLAorICAgIC0weDEuMDA3cDEwCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLmVhNGRmODJkYjAxNGFjMGM5MTM0NjVkYTU3YjZhNjQzcC0xLAorICAgIDB4MS4wMDdwMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLmVhNGRmODJkYjAxNGFjMGM5MTM0NjVkYTU3YjZhNjQzcC0xLAorICAgIC0weDEuMDA3cDI1CisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLmZlNzU3YWVmMWM4MGM3ZWMxNjAwM2QzYWU1ZjBjZTE1cC0xLAorICAgIDB4MS4wMDdwNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMHgxLmZlNzU3YWVmMWM4MGM3ZWMxNjAwM2QzYWU1ZjBjZTE1cC0xLAorICAgIC0weDEuMDA3cDQxCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLmU5YjcxODA1ZWMwNjg1ZDQ4NGY2MjcwZjY0MTFkYzM2cC03LAorICAgIDB4MS4wMGNwNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMHgxLmU5YjcxODA1ZWMwNjg1ZDQ4NGY2MjcwZjY0MTFkYzM2cC03LAorICAgIC0weDEuMDBjcDQxCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLmIwYjZkMGE1NDA1ODI4MDAwOGU4MDQ4OGY4YWIxYmI3cC0xLAorICAgIDB4MS4wMWMwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS5iMGI2ZDBhNTQwNTgyODAwMDhlODA0ODhmOGFiMWJiN3AtMSwKKyAgICAtMHgxLjAxYzAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuZmVmMDA5MjYyNzAxMjgwYjkyYWFmOTI1ZGRhNjNiYmFwLTMsCisgICAgMHgxLjAyMzIyZTQ2ZGE5MTlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLmZlZjAwOTI2MjcwMTI4MGI5MmFhZjkyNWRkYTYzYmJhcC0zLAorICAgIC0weDEuMDIzMjJlNDZkYTkxOXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5mZmM5MDA1OTgwNGEwODJkOWIzZjQ2Yjc3ZWU4MTkzMnAtMywKKyAgICAweDEuMDJhMjM2NDc4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS5mZmM5MDA1OTgwNGEwODJkOWIzZjQ2Yjc3ZWU4MTkzMnAtMywKKyAgICAtMHgxLjAyYTIzNjQ3OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS5mZmQxMGE2YjU0MjllODI4YmVmNGQ5NDEzZWI5ZjZjMHAtMywKKyAgICAweDEuMDJhNjVkMDhjYTVlNXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuZmZkMTBhNmI1NDI5ZTgyOGJlZjRkOTQxM2ViOWY2YzBwLTMsCisgICAgLTB4MS4wMmE2NWQwOGNhNWU1cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLmZmZDEwYWIzMDJhM2Y3ZTBhMDQ4ZGI1ODYxZTdiMjBicC0zLAorICAgIDB4MS4wMmE2NWQyZGNlNDlhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS5mZmQxMGFiMzAyYTNmN2UwYTA0OGRiNTg2MWU3YjIwYnAtMywKKyAgICAtMHgxLjAyYTY1ZDJkY2U0OWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAweDEuZmZlMGIxNzY0Y2E0YzdkMjMyOTQzMzgyOGNkYzkwMWNwLTMsCisgICAgMHgxLjAyYWU3MjM4YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEuZmZlMGIxNzY0Y2E0YzdkMjMyOTQzMzgyOGNkYzkwMWNwLTMsCisgICAgLTB4MS4wMmFlNzIzOGFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAtMHgxLmY2OGYwZTI2YzBmNmFkNDRmNzE4NGQ1NmJlOTVlMWFlcC0zLAorICAgIDB4MS4wNTAxZDIyMjIxZGFjcDYyMQorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS5mNjhmMGUyNmMwZjZhZDQ0ZjcxODRkNTZiZTk1ZTFhZXAtMywKKyAgICAtMHgxLjA1MDFkMjIyMjFkYWNwNjIxCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLmI2M2M0MWYwOWViNzQ3ZjMwYzFhZjVmMjU0MzQwYTRjcC0xLAorICAgIDB4MS4wNmZmZmZmZmZmZmY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLmI2M2M0MWYwOWViNzQ3ZjMwYzFhZjVmMjU0MzQwYTRjcC0xLAorICAgIC0weDEuMDZmZmZmZmZmZmZmOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgLTB4MS5mZmRjMTczYWRhYmIxYWZkNThmY2I1NjQzY2Q4NjU2MnAtMSwKKyAgICAweDEuMDcwMjNkM2Q0NDIxNXAxMgorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIDB4MS5mZmRjMTczYWRhYmIxYWZkNThmY2I1NjQzY2Q4NjU2MnAtMSwKKyAgICAtMHgxLjA3MDIzZDNkNDQyMTVwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAweDEuMDg4OWUxMWJlZjEzNTdhODg3NDJhYjNhN2YxODA3ODZwLTUsCisgICAgMHgxLjA4OTVhN2EzZThhZTZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLjA4ODllMTFiZWYxMzU3YTg4NzQyYWIzYTdmMTgwNzg2cC01LAorICAgIC0weDEuMDg5NWE3YTNlOGFlNnAtNQorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS4wOGNhMDc3Yzc2NDQ1N2FhNmQ5NjhhZmMxZDFiMTdiM3AtNSwKKyAgICAweDEuMDhkNWQ2OTg0MDYwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIC0weDEuMDhjYTA3N2M3NjQ0NTdhYTZkOTY4YWZjMWQxYjE3YjNwLTUsCisgICAgLTB4MS4wOGQ1ZDY5ODQwNjAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgLTB4MS5mZjdmYmU1MTgwMjNlOTBiM2YyOGY4MWFiOTNlODcyZnAtMSwKKyAgICAweDEuMGUwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEuZmY3ZmJlNTE4MDIzZTkwYjNmMjhmODFhYjkzZTg3MmZwLTEsCisgICAgLTB4MS4wZTBwNgorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIC0weDEuZmQ2YzY4Yjg3N2FmZTgwM2FhYWIyYmQzMDEyNGVjZGZwLTEsCisgICAgMHgxLjEwN2JhNDljMzQ2ZTRwOQorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIDB4MS5mZDZjNjhiODc3YWZlODAzYWFhYjJiZDMwMTI0ZWNkZnAtMSwKKyAgICAtMHgxLjEwN2JhNDljMzQ2ZTRwOQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEuYTJiYTZiYzcwYmNlNDgwMWVhNGQxYzg1ZjExNjE5M2RwLTEsCisgICAgMHgxLjE0OTE1NDQ3NzQ0NDBwNzQ1CisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgMHgxLmEyYmE2YmM3MGJjZTQ4MDFlYTRkMWM4NWYxMTYxOTNkcC0xLAorICAgIC0weDEuMTQ5MTU0NDc3NDQ0MHA3NDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEuMTY1NjA5NzkwZjIzNDg0YTQ3MDFiNDQzOWQ0ZmU1MWZwLTUsCisgICAgMHgxLjE2NjNjMGU1MTgxODBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLjE2NTYwOTc5MGYyMzQ4NGE0NzAxYjQ0MzlkNGZlNTFmcC01LAorICAgIC0weDEuMTY2M2MwZTUxODE4MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuZmMwNTIzZmY5NGU0NGMwMTczMWU0NTk2MzAzNGNiYThwLTEsCisgICAgMHgxLjE3NDVkMTc0NWQxNzZwMjM4CisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgMHgxLmZjMDUyM2ZmOTRlNDRjMDE3MzFlNDU5NjMwMzRjYmE4cC0xLAorICAgIC0weDEuMTc0NWQxNzQ1ZDE3NnAyMzgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuZjM0YTcyOWM1ODRiY2M5NjY2NDAyY2ZkYjQ4ODM5ZmZwLTEsCisgICAgMHgxLjE3NDcyYTQwOGEzZTBwOTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLmYzNGE3MjljNTg0YmNjOTY2NjQwMmNmZGI0ODgzOWZmcC0xLAorICAgIC0weDEuMTc0NzJhNDA4YTNlMHA5NworICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS4xNzdmYWUxNjlmZGYwODU4YjFkNGU3YmFkNjk5ODFkY3AtNSwKKyAgICAweDEuMTc4ZDkxYjZiOTkyZHAtNQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEuMTc3ZmFlMTY5ZmRmMDg1OGIxZDRlN2JhZDY5OTgxZGNwLTUsCisgICAgLTB4MS4xNzhkOTFiNmI5OTJkcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLjE3N2ZhZTE2YTEyMGU4NTg0M2QxZGZlZjM2NzI2Y2VjcC01LAorICAgIDB4MS4xNzhkOTFiNmJhZDRlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS4xNzdmYWUxNmExMjBlODU4NDNkMWRmZWYzNjcyNmNlY3AtNSwKKyAgICAtMHgxLjE3OGQ5MWI2YmFkNGVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuMTc3ZmFlMTZhMWY3ODg1NjYzN2NjOWRhOGFhZjY0MzlwLTUsCisgICAgMHgxLjE3OGQ5MWI2YmJhYmFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAtMHgxLjE3N2ZhZTE2YTFmNzg4NTY2MzdjYzlkYThhYWY2NDM5cC01LAorICAgIC0weDEuMTc4ZDkxYjZiYmFiYXAtNQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS4xNzdmYWUxNmE0MGZlODU4ZGExZGRjYjU4M2JiOWYzYnAtNSwKKyAgICAweDEuMTc4ZDkxYjZiZGM0NXAtNQorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIC0weDEuMTc3ZmFlMTZhNDBmZTg1OGRhMWRkY2I1ODNiYjlmM2JwLTUsCisgICAgLTB4MS4xNzhkOTFiNmJkYzQ1cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLjI5N2M3NjhmMjQxMzA4MDAwMmVkY2I5YTkwNTk0NmFmcC0xLAorICAgIDB4MS4xOTc1MmRiZWU1ZjZhcDkzMworICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuMjk3Yzc2OGYyNDEzMDgwMDAyZWRjYjlhOTA1OTQ2YWZwLTEsCisgICAgLTB4MS4xOTc1MmRiZWU1ZjZhcDkzMworICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS5iODI2ZGY1Y2FmYWZhODI0Nzc5YmI4MDhkNjRkZTZmYnAtMiwKKyAgICAweDEuMWIzMDA5Y2ZlNGRiY3A4CisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTB4MS5iODI2ZGY1Y2FmYWZhODI0Nzc5YmI4MDhkNjRkZTZmYnAtMiwKKyAgICAtMHgxLjFiMzAwOWNmZTRkYmNwOAorICB9LAorICB7IC8vIEVudHJ5IDE4MgorICAgIDB4MS5iN2E1OTU2MjUwYjZhODM4ODIxMzNiYmUxNGM4NDdjY3AtMiwKKyAgICAweDEuMWY2NDc1ZDk1YmYxOHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTB4MS5iN2E1OTU2MjUwYjZhODM4ODIxMzNiYmUxNGM4NDdjY3AtMiwKKyAgICAtMHgxLjFmNjQ3NWQ5NWJmMThwMworICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS40ZGI2NTY2YjY0NTQ3N2ZmZWE5ZmFhZjhiZjQ2M2ExZXAtMSwKKyAgICAweDEuMjI5MTQ4YTQ1MjI5MXAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLjRkYjY1NjZiNjQ1NDc3ZmZlYTlmYWFmOGJmNDYzYTFlcC0xLAorICAgIC0weDEuMjI5MTQ4YTQ1MjI5MXAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuMTY4NmZlZTJjNDlhN2ZmZmI2OGRmNjgxYjJkYTdlNDlwLTEsCisgICAgMHgxLjI2OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuMTY4NmZlZTJjNDlhN2ZmZmI2OGRmNjgxYjJkYTdlNDlwLTEsCisgICAgLTB4MS4yNjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuMjJlYjIxYTQ0ZDYyNzgwMDAwMDMxYWU0M2M0NDg1MTFwLTIsCisgICAgMHgxLjI2ZmIzODQ0ZGQxOTBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAtMHgxLjIyZWIyMWE0NGQ2Mjc4MDAwMDAzMWFlNDNjNDQ4NTExcC0yLAorICAgIC0weDEuMjZmYjM4NDRkZDE5MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS5kNGEyMTZkODliMmIzN2Y0MGZmMDg3NTNlZDYwMGU3NHAtMSwKKyAgICAweDEuMjdmZmZmZmZmZTZiMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS5kNGEyMTZkODliMmIzN2Y0MGZmMDg3NTNlZDYwMGU3NHAtMSwKKyAgICAtMHgxLjI3ZmZmZmZmZmU2YjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIC0weDEuNzZjOWIwZjNhMjJmNzNjZmQ0NDUzZmNmN2IyMWUzNThwLTEsCisgICAgMHgxLjI4NGI4NDA0OGQ0ODFwMjA0CisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgMHgxLjc2YzliMGYzYTIyZjczY2ZkNDQ1M2ZjZjdiMjFlMzU4cC0xLAorICAgIC0weDEuMjg0Yjg0MDQ4ZDQ4MXAyMDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAtMHgxLmZmMDEyMjZmOTdkMzJkNmI1YzBkNWU0YTNhMmY1M2MzcC0xLAorICAgIDB4MS4yOTk5ZTMxMDljYWQ0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAweDEuZmYwMTIyNmY5N2QzMmQ2YjVjMGQ1ZTRhM2EyZjUzYzNwLTEsCisgICAgLTB4MS4yOTk5ZTMxMDljYWQ0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuMmE4ZjExZTdhZTgyYzBhMzc0ODU1YjUzYjM2MDVkM2JwLTUsCisgICAgMHgxLjJhYXAtNQorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuMmE4ZjExZTdhZTgyYzBhMzc0ODU1YjUzYjM2MDVkM2JwLTUsCisgICAgLTB4MS4yYWFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAweDEuMmIwM2QxYmY3NzNkZjdiNjk3ZDhhOTdlY2NlZmVjNTBwLTUsCisgICAgMHgxLjJiMTRkM2JlMGMyMzBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLjJiMDNkMWJmNzczZGY3YjY5N2Q4YTk3ZWNjZWZlYzUwcC01LAorICAgIC0weDEuMmIxNGQzYmUwYzIzMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEuZmZiOTBlZTY0MTc5MWU2OTlhYTdmYzcxMzliZjU4YjRwLTEsCisgICAgMHgxLjJiN2NiNDQ4NDk5ODFwMgorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIDB4MS5mZmI5MGVlNjQxNzkxZTY5OWFhN2ZjNzEzOWJmNThiNHAtMSwKKyAgICAtMHgxLjJiN2NiNDQ4NDk5ODFwMgorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIC0weDEuZmZmZmZmNzllNzFhM2RiMjIxMDljNmJiODdmOWMyMzdwLTEsCisgICAgMHgxLjJiZWNjODY4NTI1ODBwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgMHgxLmZmZmZmZjc5ZTcxYTNkYjIyMTA5YzZiYjg3ZjljMjM3cC0xLAorICAgIC0weDEuMmJlY2M4Njg1MjU4MHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMHgxLmZmZjllZGFmODViNzZmNmNiYjJmNWI3ZTM4NGNiYmM5cC0xLAorICAgIDB4MS4yY2ZhMTRjZTI3Y2Q1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEuZmZmOWVkYWY4NWI3NmY2Y2JiMmY1YjdlMzg0Y2JiYzlwLTEsCisgICAgLTB4MS4yY2ZhMTRjZTI3Y2Q1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuMmNiYWFhNGNlYmI1MTdmZTdiZDE0ZjA2MmFmZWMzOTBwLTQsCisgICAgMHgxLjJkMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0weDEuMmNiYWFhNGNlYmI1MTdmZTdiZDE0ZjA2MmFmZWMzOTBwLTQsCisgICAgLTB4MS4yZDBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMHgxLmZmZmZiYzE3N2UwMGZmODljYmI0ZjQ5YTA2NDNkYTc4cC0xLAorICAgIDB4MS4yZDc2ZDE4NzIxYmU4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEuZmZmZmJjMTc3ZTAwZmY4OWNiYjRmNDlhMDY0M2RhNzhwLTEsCisgICAgLTB4MS4yZDc2ZDE4NzIxYmU4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuNzQ1ODQzZGZhZmVmZDFiZjk2NTY4OTZhOGZiNWIwZTNwLTE4LAorICAgIDB4MS4zMDJhNDk0ZTA5MDkwcDk3CisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS43NDU4NDNkZmFmZWZkMWJmOTY1Njg5NmE4ZmI1YjBlM3AtMTgsCisgICAgLTB4MS4zMDJhNDk0ZTA5MDkwcDk3CisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLmZmY2M1NjhkNDIzNzY2YzkyZTljMTc1ZjkyMTBmMWY0cC0xLAorICAgIDB4MS4zMWNjNzMxY2M3MzFjcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAtMHgxLmZmY2M1NjhkNDIzNzY2YzkyZTljMTc1ZjkyMTBmMWY0cC0xLAorICAgIC0weDEuMzFjYzczMWNjNzMxY3AxMDAwCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLmI2NzYwNzdkNGZhZjc5MjdkYTFmODU4NTM5ZmFkMWZmcC0xLAorICAgIDB4MS4zMjg0NjNkNGY4Y2E2cDQ0MQorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0weDEuYjY3NjA3N2Q0ZmFmNzkyN2RhMWY4NTg1MzlmYWQxZmZwLTEsCisgICAgLTB4MS4zMjg0NjNkNGY4Y2E2cDQ0MQorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmYzNDcxZDhkYzA3MGQ1ZTZwLTEsCisgICAgMHgxLjMyY2U5MGIzMjE3MWVwMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmYzNDcxZDhkYzA3MGQ1ZTZwLTEsCisgICAgLTB4MS4zMmNlOTBiMzIxNzFlcDE4CisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgMHgxLjM1Y2JkMzI0MGQxNDg4NDVkMzllYmQ1NGIxNTU2Nzc5cC01LAorICAgIDB4MS4zNWRlYmQ3ZjAyMGVjcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS4zNWNiZDMyNDBkMTQ4ODQ1ZDM5ZWJkNTRiMTU1Njc3OXAtNSwKKyAgICAtMHgxLjM1ZGViZDdmMDIwZWNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAweDEuM2JiMjA4NjU1OWZhOTgyZTVjNmRhMTBkOGQ5YWM5MzFwLTcsCisgICAgMHgxLjNiYjM0ODc4OTM0MDVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLjNiYjIwODY1NTlmYTk4MmU1YzZkYTEwZDhkOWFjOTMxcC03LAorICAgIC0weDEuM2JiMzQ4Nzg5MzQwNXAtNworICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS4zYmIyMDg2NTU5ZmFiODJkZmIxOTI1ZWFjMmFiOGJjMXAtNywKKyAgICAweDEuM2JiMzQ4Nzg5MzQwN3AtNworICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIC0weDEuM2JiMjA4NjU1OWZhYjgyZGZiMTkyNWVhYzJhYjhiYzFwLTcsCisgICAgLTB4MS4zYmIzNDg3ODkzNDA3cC03CisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMHgxLmRmZjE5N2VkYzUxZDIzNWU0YTRjYzZlMzRiZDFmZDEwcC0xNiwKKyAgICAweDEuM2JiNjgxZDY1YWE2MHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjUKKyAgICAtMHgxLmRmZjE5N2VkYzUxZDIzNWU0YTRjYzZlMzRiZDFmZDEwcC0xNiwKKyAgICAtMHgxLjNiYjY4MWQ2NWFhNjBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgLTB4MS41ZDA4ZDNkYmI0MWFmODAwMDAwNTNiYTMwZTk1ZTcwOXAtMywKKyAgICAweDEuM2Y5YWE4NjI2MDQyZnA4MworICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS41ZDA4ZDNkYmI0MWFmODAwMDAwNTNiYTMwZTk1ZTcwOXAtMywKKyAgICAtMHgxLjNmOWFhODYyNjA0MmZwODMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuZmI1MDM5ODNmOTRiYjc0OWZjZTljY2NhNTZhMzVlYzZwLTMsCisgICAgMHgxLjNmZXAxOQorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIC0weDEuZmI1MDM5ODNmOTRiYjc0OWZjZTljY2NhNTZhMzVlYzZwLTMsCisgICAgLTB4MS4zZmVwMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAtMHgxLmQzODc2ZWFjYzllZTZlYzVhOTNlYTE0ZTAzMmY5YjAycC0xLAorICAgIDB4MS40Mjg1NDc4ZjFlM2M4cDU4CisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLmQzODc2ZWFjYzllZTZlYzVhOTNlYTE0ZTAzMmY5YjAycC0xLAorICAgIC0weDEuNDI4NTQ3OGYxZTNjOHA1OAorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS40MmI2NmQ1NGY2OWMwZmFiZTM3MWQ3MDNhMWQ3ZDdjOXAtNSwKKyAgICAweDEuNDJjYmNmNDVhMTY5ZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEuNDJiNjZkNTRmNjljMGZhYmUzNzFkNzAzYTFkN2Q3YzlwLTUsCisgICAgLTB4MS40MmNiY2Y0NWExNjllcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMHgxLmI0NWU5ZTk0Mjc1NTM4MDAwMDAxNWUxZGIwY2UxODhkcC0xLAorICAgIDB4MS40M2ZmZmZmZmZmZjZhcDU1NworICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0weDEuYjQ1ZTllOTQyNzU1MzgwMDAwMDE1ZTFkYjBjZTE4OGRwLTEsCisgICAgLTB4MS40M2ZmZmZmZmZmZjZhcDU1NworICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS40M2ZmZmZmZmVhNjAyODAwMDA2ZWQ3ODYyYjMyMjRhNnAtMTcsCisgICAgMHgxLjQ0MHAtMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAtMHgxLjQzZmZmZmZmZWE2MDI4MDAwMDZlZDc4NjJiMzIyNGE2cC0xNywKKyAgICAtMHgxLjQ0MHAtMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAtMHgxLjZhNGU5OGQyZDhiMWI3ZmI0M2ZlZjFiYzRlMzI0NWJicC0xLAorICAgIDB4MS40NzQ4YzA4ZGMwOTc2cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS42YTRlOThkMmQ4YjFiN2ZiNDNmZWYxYmM0ZTMyNDViYnAtMSwKKyAgICAtMHgxLjQ3NDhjMDhkYzA5NzZwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgLTB4MS5iNTdjYThhYWNmMmE5MzdhMjY5Y2NkZmE4YjM4YzhjMXAtMSwKKyAgICAweDEuNDc4ZmMwOHA0MworICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIDB4MS5iNTdjYThhYWNmMmE5MzdhMjY5Y2NkZmE4YjM4YzhjMXAtMSwKKyAgICAtMHgxLjQ3OGZjMDhwNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEuZmZlMzgwMDhlZjZiNDk1NmIyOTAyMDJkNDE0ZDU5YzNwLTEsCisgICAgMHgxLjRjZjM2ZDE3YzU5NmVwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTB4MS5mZmUzODAwOGVmNmI0OTU2YjI5MDIwMmQ0MTRkNTljM3AtMSwKKyAgICAtMHgxLjRjZjM2ZDE3YzU5NmVwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLmQ2NDU3YTNmMTJlNmM1MjdhODUzNDcwNDAxZDM1ZDJkcC0xLAorICAgIDB4MS40ZjBmMzA4cDQ4OAorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIC0weDEuZDY0NTdhM2YxMmU2YzUyN2E4NTM0NzA0MDFkMzVkMmRwLTEsCisgICAgLTB4MS40ZjBmMzA4cDQ4OAorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS40ZmZmZmZmZmZmOWY4ODAwMDAwMDA4NGYyMmNjY2NjY3AtMjAsCisgICAgMHgxLjVwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgLTB4MS40ZmZmZmZmZmZmOWY4ODAwMDAwMDA4NGYyMmNjY2NjY3AtMjAsCisgICAgLTB4MS41cC0yMAorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIC0weDEuY2JhZDA5NWY1MDNhMTgwMTlhN2IyNzE3MGY2YTRhY2ZwLTEsCisgICAgMHgxLjUxNDNlMjVhNDg4ZjFwMworICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDB4MS5jYmFkMDk1ZjUwM2ExODAxOWE3YjI3MTcwZjZhNGFjZnAtMSwKKyAgICAtMHgxLjUxNDNlMjVhNDg4ZjFwMworICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIC0weDEuZjk0MmQ2MjYyZTgyZGQ2ODM0ZGVkOGM5MGQwZjgyMTJwLTUsCisgICAgMHgxLjUxZjBmNDRkYTRkZjRwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLmY5NDJkNjI2MmU4MmRkNjgzNGRlZDhjOTBkMGY4MjEycC01LAorICAgIC0weDEuNTFmMGY0NGRhNGRmNHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAtMHgxLmZjNDY2Y2NhZWNlODA0YWFjMTRlNzlhYWJhNGI1YzFlcC0zLAorICAgIDB4MS41MmFkNmM1YTM2MDJmcDE2CisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLmZjNDY2Y2NhZWNlODA0YWFjMTRlNzlhYWJhNGI1YzFlcC0zLAorICAgIC0weDEuNTJhZDZjNWEzNjAyZnAxNgorICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDB4MS5kNjljM2NmNGVlY2RkOWI0MzcyNmEyYTdmYTQwNWMzMXAtMSwKKyAgICAweDEuNTJmMDBlMHA3OTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAtMHgxLmQ2OWMzY2Y0ZWVjZGQ5YjQzNzI2YTJhN2ZhNDA1YzMxcC0xLAorICAgIC0weDEuNTJmMDBlMHA3OTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuZTEyMDI5MmYzZDQ5NTY1NzlmOWMzMTY0Y2Q5NGJhZDZwLTEsCisgICAgMHgxLjU1NTU1NTU1NTU1NTZwMjM5CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgLTB4MS5lMTIwMjkyZjNkNDk1NjU3OWY5YzMxNjRjZDk0YmFkNnAtMSwKKyAgICAtMHgxLjU1NTU1NTU1NTU1NTZwMjM5CisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgLTB4MS5mZDFkODViN2VmMDAzN2ZjNGIxZDE3NjM4ODIwODVmMXAtMSwKKyAgICAweDEuNWEwMDAwMDA4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEuZmQxZDg1YjdlZjAwMzdmYzRiMWQxNzYzODgyMDg1ZjFwLTEsCisgICAgLTB4MS41YTAwMDAwMDhwNgorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS41YWZmOTY2NGIwN2UxYTJlMGYyNGIyNTcyZGRiZmY2NHAtNiwKKyAgICAweDEuNWIwNjNhZDJkZDA4ZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIC0weDEuNWFmZjk2NjRiMDdlMWEyZTBmMjRiMjU3MmRkYmZmNjRwLTYsCisgICAgLTB4MS41YjA2M2FkMmRkMDhmcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgLTB4MS44M2Y4YmJiNTlmMmY4Y2Q4ZWJiZDQ0YzQ1OWU0YzQ5M3AtMSwKKyAgICAweDEuNWIxNzlkNzVmYTI4NXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLjgzZjhiYmI1OWYyZjhjZDhlYmJkNDRjNDU5ZTRjNDkzcC0xLAorICAgIC0weDEuNWIxNzlkNzVmYTI4NXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLmZhODY1YjBkOTk0OTY4MzkwZjk0ODBjOWNhZjQ5Y2IxcC0xLAorICAgIDB4MS41YmI1OTY3NDAyZjljcDc5CisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgLTB4MS5mYTg2NWIwZDk5NDk2ODM5MGY5NDgwYzljYWY0OWNiMXAtMSwKKyAgICAtMHgxLjViYjU5Njc0MDJmOWNwNzkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEuZThhNTIzZmNlODg0ZDE4OWJkYjg3YzIwZWQ2MTU5NDRwLTIsCisgICAgMHgxLjViZWEwMTBwNDY4CisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgLTB4MS5lOGE1MjNmY2U4ODRkMTg5YmRiODdjMjBlZDYxNTk0NHAtMiwKKyAgICAtMHgxLjViZWEwMTBwNDY4CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgLTB4MS5mZjJhZDk0MWYwYTQwZWEzYmMyOWU2ZGQ5YzMzOWI2M3AtMSwKKyAgICAweDEuNWYxOWZiYzUwN2FmNnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgMHgxLmZmMmFkOTQxZjBhNDBlYTNiYzI5ZTZkZDljMzM5YjYzcC0xLAorICAgIC0weDEuNWYxOWZiYzUwN2FmNnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgLTB4MS43NWNlNGEwZDBiZDAzN2ZkNTMwNDJjYWI4MjQwNDk1M3AtMSwKKyAgICAweDEuNjBhNjEwYTY1OGRhOXA4ODkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEuNzVjZTRhMGQwYmQwMzdmZDUzMDQyY2FiODI0MDQ5NTNwLTEsCisgICAgLTB4MS42MGE2MTBhNjU4ZGE5cDg4OQorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIC0weDEuNzIxNTg2NTk0YWI0ODE4YWNkNGNiNDFmYWZjOTk0ODRwLTEsCisgICAgMHgxLjYyYWQ3Y2UxNzE0M2RwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEuNzIxNTg2NTk0YWI0ODE4YWNkNGNiNDFmYWZjOTk0ODRwLTEsCisgICAgLTB4MS42MmFkN2NlMTcxNDNkcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLmI4ZDI3MDE5ZDFiOWU4MzZiOTUzNjEzYzg3YWNmM2E5cC0yLAorICAgIDB4MS42NDU5MjZjYzExMzJjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAtMHgxLmI4ZDI3MDE5ZDFiOWU4MzZiOTUzNjEzYzg3YWNmM2E5cC0yLAorICAgIC0weDEuNjQ1OTI2Y2MxMTMyY3A5CisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLjY0N2UwOTA1OWMxZTk4MDAwMDEzNzE0Y2QwYzZhNDNkcC05LAorICAgIDB4MS42NDdlMjVkMzkxZjE3cC05CisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgLTB4MS42NDdlMDkwNTljMWU5ODAwMDAxMzcxNGNkMGM2YTQzZHAtOSwKKyAgICAtMHgxLjY0N2UyNWQzOTFmMTdwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAtMHgxLjhkM2I1M2ZmODVhODIzZDA2NTM3NDEzOTAxMjI5ZTQ1cC0xLAorICAgIDB4MS42NGVmNDM4cDE0MgorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS44ZDNiNTNmZjg1YTgyM2QwNjUzNzQxMzkwMTIyOWU0NXAtMSwKKyAgICAtMHgxLjY0ZWY0MzhwMTQyCisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgLTB4MS5mN2M4NjMwZTYyYTAxZmZkNGUwMjU3Nzk1NmU1NTIzZXAtMSwKKyAgICAweDEuNjU5OTY2NTk5NjY1OHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLmY3Yzg2MzBlNjJhMDFmZmQ0ZTAyNTc3OTU2ZTU1MjNlcC0xLAorICAgIC0weDEuNjU5OTY2NTk5NjY1OHAzCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjY3MDI4ZTM2MDIwMzQ4MDBmNDVhOTE1OGQyMGEzNDBjcC01LAorICAgIDB4MS42NzJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAtMHgxLjY3MDI4ZTM2MDIwMzQ4MDBmNDVhOTE1OGQyMGEzNDBjcC01LAorICAgIC0weDEuNjcycC01CisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLmJjNjBjOGMzM2NiNWViZjY5M2Q3MTY1MGNiZjE2NmY5cC0yLAorICAgIDB4MS42ODhhZTZjMTM4ZWE4cDI5OQorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIC0weDEuYmM2MGM4YzMzY2I1ZWJmNjkzZDcxNjUwY2JmMTY2ZjlwLTIsCisgICAgLTB4MS42ODhhZTZjMTM4ZWE4cDI5OQorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIC0weDEuZmMzYjRiYjhiMDEyZTgwNDJkM2ViY2VkMTJkZWYwYzlwLTEsCisgICAgMHgxLjZhYTc4cDE3CisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgMHgxLmZjM2I0YmI4YjAxMmU4MDQyZDNlYmNlZDEyZGVmMGM5cC0xLAorICAgIC0weDEuNmFhNzhwMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjVwLTEsCisgICAgMHgxLjZhYzViMjYyY2ExZmZwODQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiNXAtMSwKKyAgICAtMHgxLjZhYzViMjYyY2ExZmZwODQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgLTB4MS44MjMxNzgzNmE5N2M4Y2VhMWNkMmUzYTRkMGQ0OGYyOXAtMSwKKyAgICAweDEuNmQ4ODA4Mzc0OTQxMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLjgyMzE3ODM2YTk3YzhjZWExY2QyZTNhNGQwZDQ4ZjI5cC0xLAorICAgIC0weDEuNmQ4ODA4Mzc0OTQxMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLjZmNzgxYzc4Y2M4MmE3ZmZjZDIwYmE4MDFlNjY5MWIxcC02LAorICAgIDB4MS42ZjhwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLjZmNzgxYzc4Y2M4MmE3ZmZjZDIwYmE4MDFlNjY5MWIxcC02LAorICAgIC0weDEuNmY4cC02CisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgLTB4MS5mZGJlNTA4NTQ5NGFlN2ZlNDdmYTA2N2FhZWE3ZmRmOXAtMSwKKyAgICAweDEuNzI5YWE2ODU5ZDFmNHAzOTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEuZmRiZTUwODU0OTRhZTdmZTQ3ZmEwNjdhYWVhN2ZkZjlwLTEsCisgICAgLTB4MS43MjlhYTY4NTlkMWY0cDM5NgorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIC0weDEuZmZmZmZhZTg2MmI0ZmVjMWMyZjE3MTJhYTE2NTgwN2NwLTEsCisgICAgMHgxLjczZTJkYmU5YTJmODBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuZmZmZmZhZTg2MmI0ZmVjMWMyZjE3MTJhYTE2NTgwN2NwLTEsCisgICAgLTB4MS43M2UyZGJlOWEyZjgwcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMHgxLjc2OWFjNzQ0NTliMDU4NDU2YjMzMzIzODgzM2YxZDFhcC03LAorICAgIDB4MS43NjljZGUwYjkwYjgwcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgLTB4MS43NjlhYzc0NDU5YjA1ODQ1NmIzMzMyMzg4MzNmMWQxYXAtNywKKyAgICAtMHgxLjc2OWNkZTBiOTBiODBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAweDEuNzY5ZThhZmI2YTRlYmY5OWFkZTQ2NWQxOWJlODZhYzBwLTUsCisgICAgMHgxLjc2Y3AtNQorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0weDEuNzY5ZThhZmI2YTRlYmY5OWFkZTQ2NWQxOWJlODZhYzBwLTUsCisgICAgLTB4MS43NmNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuZmQ1NjI2MTFmNWJkNDgwMGRlNTAzZTQyMTBjYzdkZjRwLTEsCisgICAgMHgxLjc4MDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAtMHgxLmZkNTYyNjExZjViZDQ4MDBkZTUwM2U0MjEwY2M3ZGY0cC0xLAorICAgIC0weDEuNzgwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIDB4MS5mZGJhNzg0Y2EwMGYxN2ViY2MyYjViMTA5OGU4M2JmZnAtMSwKKyAgICAweDEuN2EwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAtMHgxLmZkYmE3ODRjYTAwZjE3ZWJjYzJiNWIxMDk4ZTgzYmZmcC0xLAorICAgIC0weDEuN2EwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuZjkzMGMyMjJhODY4MmQ3ZDE5MjBhMTJiNjg4NzBjMzZwLTUsCisgICAgMHgxLjdhYmQ4NzAzODFjMmRwMzgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAtMHgxLmY5MzBjMjIyYTg2ODJkN2QxOTIwYTEyYjY4ODcwYzM2cC01LAorICAgIC0weDEuN2FiZDg3MDM4MWMyZHAzOAorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS5mZmViMmZmMmI2OTIzNjdiYzU2NjBkYWI2OTYwYjU3ZHAtMSwKKyAgICAweDEuN2RjOTQ1YzIxMjQ4MHA5NQorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIC0weDEuZmZlYjJmZjJiNjkyMzY3YmM1NjYwZGFiNjk2MGI1N2RwLTEsCisgICAgLTB4MS43ZGM5NDVjMjEyNDgwcDk1CisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMHgxLmIyNzkxNTNjMjNmYjE4MDAwMGNlM2EwZDQ3ZDhjNDc2cC0yLAorICAgIDB4MS43ZjczZTE1OTRiNzBjcDk4CisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgLTB4MS5iMjc5MTUzYzIzZmIxODAwMDBjZTNhMGQ0N2Q4YzQ3NnAtMiwKKyAgICAtMHgxLjdmNzNlMTU5NGI3MGNwOTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAtMHgxLjU5OWZhZDM1Y2Y2MGFkNDM3NjBjZjNhOWRhM2Q5YzMwcC00MSwKKyAgICAweDEuN2Y3ZWY3N2U4M2YxYXAyMQorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIDB4MS41OTlmYWQzNWNmNjBhZDQzNzYwY2YzYTlkYTNkOWMzMHAtNDEsCisgICAgLTB4MS43ZjdlZjc3ZTgzZjFhcDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLmZlYjdhOWIyYzZkOGFkZTZlMTdmZGFjYWVmNGZkOTZjcC0xLAorICAgIDB4MS44cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAtMHgxLmZlYjdhOWIyYzZkOGFkZTZlMTdmZGFjYWVmNGZkOTZjcC0xLAorICAgIC0weDEuOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLmY3OThkMDFlYzYxNWI4ZWRlZGE0NzRlM2M2Y2QwYzkycC0xLAorICAgIDB4MS44cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAtMHgxLmY3OThkMDFlYzYxNWI4ZWRlZGE0NzRlM2M2Y2QwYzkycC0xLAorICAgIC0weDEuOHA2CisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMHgxLmZlZTFhMmE5NzdiY2VkMTc5ZjhhYjg0NTVhZGE1MjVmcC0xLAorICAgIDB4MS44MTMyY2ViMWM0ZjM5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAtMHgxLmZlZTFhMmE5NzdiY2VkMTc5ZjhhYjg0NTVhZGE1MjVmcC0xLAorICAgIC0weDEuODEzMmNlYjFjNGYzOXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgLTB4MS4yNDI0NWFmNGNkOTk0ZTliM2JiYTk5MmQwZjU3ZmMzZnAtNTIsCisgICAgMHgxLjgxYWUwZGZmYTNiMzNwOTU5CisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgMHgxLjI0MjQ1YWY0Y2Q5OTRlOWIzYmJhOTkyZDBmNTdmYzNmcC01MiwKKyAgICAtMHgxLjgxYWUwZGZmYTNiMzNwOTU5CisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgMHgxLjg1ZDQxYjBiZjMwOTA3ZmZmZmYxOTEzYTVjZWQ3NjQ1cC00LAorICAgIDB4MS44NWVjNWEzOTlhMmU2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAtMHgxLjg1ZDQxYjBiZjMwOTA3ZmZmZmYxOTEzYTVjZWQ3NjQ1cC00LAorICAgIC0weDEuODVlYzVhMzk5YTJlNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgMHgxLjFlNDJhZTNjZmJkYzYwOTc2ODg0MDg3Zjk3YTBmZGE5cC0yNCwKKyAgICAweDEuODZhMDA5Mjc1NDAyMnAxNgorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIC0weDEuMWU0MmFlM2NmYmRjNjA5NzY4ODQwODdmOTdhMGZkYTlwLTI0LAorICAgIC0weDEuODZhMDA5Mjc1NDAyMnAxNgorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIC0weDEuZGJmNGU1OTRjZWZlMTU0OGVmYzI0MDk4ZDYzMWU5NTBwLTEsCisgICAgMHgxLjg3MjA1ODhwMzkyCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLmRiZjRlNTk0Y2VmZTE1NDhlZmMyNDA5OGQ2MzFlOTUwcC0xLAorICAgIC0weDEuODcyMDU4OHAzOTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAweDEuNDQzMDJkNmE4MmQ0MDNiYWRmMWY5YjcxNDIwY2NkY2FwLTksCisgICAgMHgxLjg5MjkzNTRlYmM2YWFwNDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAtMHgxLjQ0MzAyZDZhODJkNDAzYmFkZjFmOWI3MTQyMGNjZGNhcC05LAorICAgIC0weDEuODkyOTM1NGViYzZhYXA0MworICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS44YTUyMTg5ZWMzNDg3N2JiNTk0NDQxM2UwMGFkNTJlZHAtNSwKKyAgICAweDEuOGE3OTFlNDc5MWU3NXAtNQorICB9LAorICB7IC8vIEVudHJ5IDMzMQorICAgIC0weDEuOGE1MjE4OWVjMzQ4NzdiYjU5NDQ0MTNlMDBhZDUyZWRwLTUsCisgICAgLTB4MS44YTc5MWU0NzkxZTc1cC01CisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgLTB4MS5mZTg1NjZlNTM4MTIyZGIzM2MxN2YxM2I4MzQ3NGEwNHAtMSwKKyAgICAweDEuOGJhNzYxNDM4ZjVlZHAxMQorICB9LAorICB7IC8vIEVudHJ5IDMzMworICAgIDB4MS5mZTg1NjZlNTM4MTIyZGIzM2MxN2YxM2I4MzQ3NGEwNHAtMSwKKyAgICAtMHgxLjhiYTc2MTQzOGY1ZWRwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAweDEuZmZmNDJhY2E0Y2I1YTgwMDAwMDU3ZjFhNDhhZjY1ZGVwLTEsCisgICAgMHgxLjhlYWYxNmRlNjM5MjBwMAorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIC0weDEuZmZmNDJhY2E0Y2I1YTgwMDAwMDU3ZjFhNDhhZjY1ZGVwLTEsCisgICAgLTB4MS44ZWFmMTZkZTYzOTIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAweDEuZmZmYjdkM2YzYTI1MmRhNTZkOTYzMjdjMTg2MjdmNTdwLTEsCisgICAgMHgxLjlwMAorICB9LAorICB7IC8vIEVudHJ5IDMzNworICAgIC0weDEuZmZmYjdkM2YzYTI1MmRhNTZkOTYzMjdjMTg2MjdmNTdwLTEsCisgICAgLTB4MS45cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAtMHgxLmU4MTU3NzA2NjdmZDg3Zjk1MjUxNTRlZGM4Njc2MDVmcC00LAorICAgIDB4MS45MWE1NjU3ZmI2YTlhcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzkKKyAgICAweDEuZTgxNTc3MDY2N2ZkODdmOTUyNTE1NGVkYzg2NzYwNWZwLTQsCisgICAgLTB4MS45MWE1NjU3ZmI2YTlhcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAtMHgxLmZmZmZmZmZkMzExZGM3ZWM1ZDBhZTU3MjhhNzk2MGZkcC0xLAorICAgIDB4MS45MjFmYjU0NDY4ODQ3cDM3CisgIH0sCisgIHsgLy8gRW50cnkgMzQxCisgICAgMHgxLmZmZmZmZmZkMzExZGM3ZWM1ZDBhZTU3MjhhNzk2MGZkcC0xLAorICAgIC0weDEuOTIxZmI1NDQ2ODg0N3AzNworICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS5mZmZmZmZmZjg3NWU1ZTQ0OTdkZDA3NjAzMzZlNjNmM3AtMTcsCisgICAgMHgxLjkyMWZmNTQ0NDJkMThwMgorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIC0weDEuZmZmZmZmZmY4NzVlNWU0NDk3ZGQwNzYwMzM2ZTYzZjNwLTE3LAorICAgIC0weDEuOTIxZmY1NDQ0MmQxOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgMHgxLjgxMmE1ZGEzNzc3Y2Q3ZjZlMTcyODg2MzhiNDBhYTA5cC04LAorICAgIDB4MS45MjhwMgorICB9LAorICB7IC8vIEVudHJ5IDM0NQorICAgIC0weDEuODEyYTVkYTM3NzdjZDdmNmUxNzI4ODYzOGI0MGFhMDlwLTgsCisgICAgLTB4MS45MjhwMgorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS5mZmY5YmU4ZDgyNTcyYzc0NmY5NDQ5MzRiYmYxYjY5N3AtMSwKKyAgICAweDEuOTRhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAtMHgxLmZmZjliZThkODI1NzJjNzQ2Zjk0NDkzNGJiZjFiNjk3cC0xLAorICAgIC0weDEuOTRhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDgKKyAgICAweDEuOTQ3YjBhY2UyMzVmMjg1MGIyN2IxNjRjNDkxMDJhNDlwLTUsCisgICAgMHgxLjk0YTUyOTRhNTFiZGVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAtMHgxLjk0N2IwYWNlMjM1ZjI4NTBiMjdiMTY0YzQ5MTAyYTQ5cC01LAorICAgIC0weDEuOTRhNTI5NGE1MWJkZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS5jMzRmNzBlNTVhNzA3YmJkMDUzYTcwZTc0OTEwNTE3NHAtMiwKKyAgICAweDEuOTRhNTI5NGE1Mjk0OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAtMHgxLmMzNGY3MGU1NWE3MDdiYmQwNTNhNzBlNzQ5MTA1MTc0cC0yLAorICAgIC0weDEuOTRhNTI5NGE1Mjk0OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTIKKyAgICAweDEuOTUwYmNmYzBmM2Q1MDg1MDk0MWE0MWQ2NmNmYTM3MjFwLTUsCisgICAgMHgxLjk1MzYxYjhmNzY5N2RwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAtMHgxLjk1MGJjZmMwZjNkNTA4NTA5NDFhNDFkNjZjZmEzNzIxcC01LAorICAgIC0weDEuOTUzNjFiOGY3Njk3ZHAtNQorICB9LAorICB7IC8vIEVudHJ5IDM1NAorICAgIDB4MS42YzU0OGJmY2NlNjk1M2YxOWE4ZDJkZDQ4MGQ5MzIwY3AtMSwKKyAgICAweDEuOTU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU1CisgICAgLTB4MS42YzU0OGJmY2NlNjk1M2YxOWE4ZDJkZDQ4MGQ5MzIwY3AtMSwKKyAgICAtMHgxLjk1NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIDB4MS5mZmVmZmRiZjY3Y2E2NzExYTU3YjdkODIxNDAwOTNjNnAtMSwKKyAgICAweDEuOTYycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAtMHgxLmZmZWZmZGJmNjdjYTY3MTFhNTdiN2Q4MjE0MDA5M2M2cC0xLAorICAgIC0weDEuOTYycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAweDEuOTcwODIxM2JmNjdmNDg1NzEzNTA3N2Q1MDgyNmY1ODhwLTUsCisgICAgMHgxLjk3MzMwZDJlYTE2ZDlwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAtMHgxLjk3MDgyMTNiZjY3ZjQ4NTcxMzUwNzdkNTA4MjZmNTg4cC01LAorICAgIC0weDEuOTczMzBkMmVhMTZkOXAtNQorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS45NzJiZjkyNzEzZDUwODU4ZTY0YzFiOWIyNmFlZWNkMHAtNSwKKyAgICAweDEuOTc1NmYwNzNiNmI2MXAtNQorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIC0weDEuOTcyYmY5MjcxM2Q1MDg1OGU2NGMxYjliMjZhZWVjZDBwLTUsCisgICAgLTB4MS45NzU2ZjA3M2I2YjYxcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgMHgxLjk3Njg0NWViZTcxMTg4NTgwZTQ2OGJhZDAwY2UyM2VjcC01LAorICAgIDB4MS45NzkzNTA1NWNlYzFicC01CisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgLTB4MS45NzY4NDVlYmU3MTE4ODU4MGU0NjhiYWQwMGNlMjNlY3AtNSwKKyAgICAtMHgxLjk3OTM1MDU1Y2VjMWJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEuOTc1MzVjZWU1MWE0MjgwNmUxNWY2Zjg3ODUyNGU1YjdwLTQsCisgICAgMHgxLjk4MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIC0weDEuOTc1MzVjZWU1MWE0MjgwNmUxNWY2Zjg3ODUyNGU1YjdwLTQsCisgICAgLTB4MS45ODBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuNmY0OTRjMzM1NjE3NzAwMDAwNjUwMmNkZmY5NzViMDhwLTEsCisgICAgMHgxLjk5OTk5OWE0MjE2MGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjcKKyAgICAtMHgxLjZmNDk0YzMzNTYxNzcwMDAwMDY1MDJjZGZmOTc1YjA4cC0xLAorICAgIC0weDEuOTk5OTk5YTQyMTYwY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS42ZjQ5NGMzN2VkZDZkODAwMDA2ZGM3NmFlZTRjYzhlNHAtMSwKKyAgICAweDEuOTk5OTk5YWFiOGY1MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM2OQorICAgIC0weDEuNmY0OTRjMzdlZGQ2ZDgwMDAwNmRjNzZhZWU0Y2M4ZTRwLTEsCisgICAgLTB4MS45OTk5OTlhYWI4ZjUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLjZmYTkxMmJkZWFhYjI4MDAwMDE2NGYxNmRkNjQ5MzU2cC0xLAorICAgIDB4MS45YTIzMjRiOWM2MzI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgLTB4MS42ZmE5MTJiZGVhYWIyODAwMDAxNjRmMTZkZDY0OTM1NnAtMSwKKyAgICAtMHgxLjlhMjMyNGI5YzYzMjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAweDEuNzBjN2VmNGVmOWIzNDdlZDIzNGNhNjEzMWJlMWI3ODZwLTEsCisgICAgMHgxLjliY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIC0weDEuNzBjN2VmNGVmOWIzNDdlZDIzNGNhNjEzMWJlMWI3ODZwLTEsCisgICAgLTB4MS45YmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAweDEuZmYyODE3NmFkMzE2M2VhMTY4Yzk5OTFmMTU1Zjg3NWJwLTEsCisgICAgMHgxLmEwZDFkODE3ZDZjNGFwMAorICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIC0weDEuZmYyODE3NmFkMzE2M2VhMTY4Yzk5OTFmMTU1Zjg3NWJwLTEsCisgICAgLTB4MS5hMGQxZDgxN2Q2YzRhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzYKKyAgICAweDEuNzQ5NDY4YTcyNDhkZDI2MTYxZTkzZDc4OTI4YzY2ZGVwLTEsCisgICAgMHgxLmExNDFjOWRlMTJmZGZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAtMHgxLjc0OTQ2OGE3MjQ4ZGQyNjE2MWU5M2Q3ODkyOGM2NmRlcC0xLAorICAgIC0weDEuYTE0MWM5ZGUxMmZkZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS43NTRlYmI3ZTczZjQ1MmFiNDljNjE1ZjBlODMwMGQ1Y3AtMSwKKyAgICAweDEuYTI1MWJjNjc2NmYyMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3OQorICAgIC0weDEuNzU0ZWJiN2U3M2Y0NTJhYjQ5YzYxNWYwZTgzMDBkNWNwLTEsCisgICAgLTB4MS5hMjUxYmM2NzY2ZjIwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgLTB4MS43YzNiZmVmYTc0YmQwN2ZlMjEzMzZjYWFjMzcyYTczZXAtMSwKKyAgICAweDEuYTI2ODlhZTFiODZkZHA2MgorICB9LAorICB7IC8vIEVudHJ5IDM4MQorICAgIDB4MS43YzNiZmVmYTc0YmQwN2ZlMjEzMzZjYWFjMzcyYTczZXAtMSwKKyAgICAtMHgxLmEyNjg5YWUxYjg2ZGRwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODIKKyAgICAtMHgxLmZmZmY0ZjM2NDhlMDJmOWY0OTRmNDJlYjgyMmYyNjJicC0xLAorICAgIDB4MS5hM2Y2NjE4MGM0NTUwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIDB4MS5mZmZmNGYzNjQ4ZTAyZjlmNDk0ZjQyZWI4MjJmMjYyYnAtMSwKKyAgICAtMHgxLmEzZjY2MTgwYzQ1NTBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgLTB4MS4xY2Y0NjM5ODNjMGUyODAyMzE2MWI3ZDBkMjkzOGUzN3AtMywKKyAgICAweDEuYTNmZGQyYTUyODZjM3AxCisgIH0sCisgIHsgLy8gRW50cnkgMzg1CisgICAgMHgxLjFjZjQ2Mzk4M2MwZTI4MDIzMTYxYjdkMGQyOTM4ZTM3cC0zLAorICAgIC0weDEuYTNmZGQyYTUyODZjM3AxCisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgMHgxLmZlYjc5NDhkMjI0ZDdlNzU5YTdjOWRkNzY4ZGVkNzI3cC0xLAorICAgIDB4MS5hNDRwMAorICB9LAorICB7IC8vIEVudHJ5IDM4NworICAgIC0weDEuZmViNzk0OGQyMjRkN2U3NTlhN2M5ZGQ3NjhkZWQ3MjdwLTEsCisgICAgLTB4MS5hNDRwMAorICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIDB4MS43ODgwMWUzZTExNjY0ODJkY2U2MjA4ZTk4ZDNjYzE0MnAtMSwKKyAgICAweDEuYTcwMWVmM2M3ZDU0YnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM4OQorICAgIC0weDEuNzg4MDFlM2UxMTY2NDgyZGNlNjIwOGU5OGQzY2MxNDJwLTEsCisgICAgLTB4MS5hNzAxZWYzYzdkNTRicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzkwCisgICAgLTB4MS5mZmYxMWU4NzFkNTljM2UxMzMzZGI1NDc1YmI1N2UyN3AtMSwKKyAgICAweDEuYThjMDFmZDQzYzBwNTM3CisgIH0sCisgIHsgLy8gRW50cnkgMzkxCisgICAgMHgxLmZmZjExZTg3MWQ1OWMzZTEzMzNkYjU0NzViYjU3ZTI3cC0xLAorICAgIC0weDEuYThjMDFmZDQzYzBwNTM3CisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgMHgxLmZkZmE0MzY2ZWI3MzM3ZTZkOTczYzRjYjhmMWEyNDRhcC0xLAorICAgIDB4MS5hOGUyOWI3NjAyZjNicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAtMHgxLmZkZmE0MzY2ZWI3MzM3ZTZkOTczYzRjYjhmMWEyNDRhcC0xLAorICAgIC0weDEuYThlMjliNzYwMmYzYnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzk0CisgICAgMHgxLmZkZTk4Yjk0ZTc5NDdhMDQyMjlkMjZlZWIyYmI0MjgwcC0xLAorICAgIDB4MS5hOTRwMAorICB9LAorICB7IC8vIEVudHJ5IDM5NQorICAgIC0weDEuZmRlOThiOTRlNzk0N2EwNDIyOWQyNmVlYjJiYjQyODBwLTEsCisgICAgLTB4MS5hOTRwMAorICB9LAorICB7IC8vIEVudHJ5IDM5NgorICAgIDB4MS43OTMxY2JhMTAwMDA4ODAwMDAwNjhmOTQwOTgwMThhN3AtMiwKKyAgICAweDEuYWE0NDVmY2U5M2I4MnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzk3CisgICAgLTB4MS43OTMxY2JhMTAwMDA4ODAwMDAwNjhmOTQwOTgwMThhN3AtMiwKKyAgICAtMHgxLmFhNDQ1ZmNlOTNiODJwMgorICB9LAorICB7IC8vIEVudHJ5IDM5OAorICAgIDB4MS43YWYzZjc2YzdhNzA4ODM0YjQwNzJmNTlhYzcxYTBiYXAtMSwKKyAgICAweDEuYWFhM2ZiYzM1OWZiZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIC0weDEuN2FmM2Y3NmM3YTcwODgzNGI0MDcyZjU5YWM3MWEwYmFwLTEsCisgICAgLTB4MS5hYWEzZmJjMzU5ZmJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLmZkNzRlNTNhZTMyZmNkODQ2N2JjZjUwZGExZDBmNTYzcC02LAorICAgIDB4MS5hYmRkM2RiZDRkODYwcDExOQorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIC0weDEuZmQ3NGU1M2FlMzJmY2Q4NDY3YmNmNTBkYTFkMGY1NjNwLTYsCisgICAgLTB4MS5hYmRkM2RiZDRkODYwcDExOQorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIDB4MS43ZDRhN2JmMTgzYTMzMjllZDQzNGMwYzRkZDc4YjFkOXAtMSwKKyAgICAweDEuYWUyMTY1YTBjOWY4ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIC0weDEuN2Q0YTdiZjE4M2EzMzI5ZWQ0MzRjMGM0ZGQ3OGIxZDlwLTEsCisgICAgLTB4MS5hZTIxNjVhMGM5ZjhlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDA0CisgICAgMHgxLmI4MTQxMGVkYzc5ZTA4Mzc1MDdhM2VlZjhkNTUzYmQ2cC0yLAorICAgIDB4MS5hZThkZmVmY2ZlMTNicDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAtMHgxLmI4MTQxMGVkYzc5ZTA4Mzc1MDdhM2VlZjhkNTUzYmQ2cC0yLAorICAgIC0weDEuYWU4ZGZlZmNmZTEzYnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgLTB4MS5mZjc1MTU2MWRjNTA5N2ZlZmU0OTkzMDFkMDM0YTBlZHAtMiwKKyAgICAweDEuYjU1OTdmOTUwZWU4Y3AyOQorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIDB4MS5mZjc1MTU2MWRjNTA5N2ZlZmU0OTkzMDFkMDM0YTBlZHAtMiwKKyAgICAtMHgxLmI1NTk3Zjk1MGVlOGNwMjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDgKKyAgICAweDEuMDI3ZDE4NGFmYjE5ODRjYTFkMjFiMWFjOTI4ZDUzOTFwLTUyLAorICAgIDB4MS5iYWI2MmVkNjU1MDE5cDk3MAorICB9LAorICB7IC8vIEVudHJ5IDQwOQorICAgIC0weDEuMDI3ZDE4NGFmYjE5ODRjYTFkMjFiMWFjOTI4ZDUzOTFwLTUyLAorICAgIC0weDEuYmFiNjJlZDY1NTAxOXA5NzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAweDEuYmM1NzJlNWU0MTNlMTdmY2IyMjQ2ZDQwMjQ5YTAwNWZwLTEwLAorICAgIDB4MS5iYzU3M2M0ZmZmZmZmcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIC0weDEuYmM1NzJlNWU0MTNlMTdmY2IyMjQ2ZDQwMjQ5YTAwNWZwLTEwLAorICAgIC0weDEuYmM1NzNjNGZmZmZmZnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTIKKyAgICAweDEuZmIzMDBmMWUzOWFmZTgwNDcxZjk5M2FiYjhjZmE0MjhwLTEsCisgICAgMHgxLmJlZjVjZDI1YWIxYWRwOQorICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIC0weDEuZmIzMDBmMWUzOWFmZTgwNDcxZjk5M2FiYjhjZmE0MjhwLTEsCisgICAgLTB4MS5iZWY1Y2QyNWFiMWFkcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTQKKyAgICAweDEuYjFiYWFmNjIyZDNhMjdmZDI3ZDA3MTZmN2QwOGQ5OTJwLTIsCisgICAgMHgxLmJmZGY2ZGYyYTI0YzFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTUKKyAgICAtMHgxLmIxYmFhZjYyMmQzYTI3ZmQyN2QwNzE2ZjdkMDhkOTkycC0yLAorICAgIC0weDEuYmZkZjZkZjJhMjRjMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQxNgorICAgIDB4MS44OGZiNzYyYzM1Y2UzN2ZlY2JiNDc0OGQwMWZlZmZjZXAtMSwKKyAgICAweDEuYmZmZmZmZGZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxNworICAgIC0weDEuODhmYjc2MmMzNWNlMzdmZWNiYjQ3NDhkMDFmZWZmY2VwLTEsCisgICAgLTB4MS5iZmZmZmZkZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgMHgxLmZlMGViZmY5OWFiOGM4MGNlNTkzOWYxZjA3MmMyZTkxcC0xLAorICAgIDB4MS5jMmI0ODk1MjBlMzc2cDkyMAorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIC0weDEuZmUwZWJmZjk5YWI4YzgwY2U1OTM5ZjFmMDcyYzJlOTFwLTEsCisgICAgLTB4MS5jMmI0ODk1MjBlMzc2cDkyMAorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIDB4MS5jZjdmNzQ5ZjJhODM1N2Y3ZmVhYjY4NWZmNmY4YjYyNHAtNCwKKyAgICAweDEuYzU0YmViMDA4NTQ3MHA1CisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgLTB4MS5jZjdmNzQ5ZjJhODM1N2Y3ZmVhYjY4NWZmNmY4YjYyNHAtNCwKKyAgICAtMHgxLmM1NGJlYjAwODU0NzBwNQorICB9LAorICB7IC8vIEVudHJ5IDQyMgorICAgIDB4MS5iNmZhY2Y2NjU4OTE0ODJlYThjNjFmNWNhMzJmMjgwZHAtMiwKKyAgICAweDEuYzVhZDM0ZjVmNDcyYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQyMworICAgIC0weDEuYjZmYWNmNjY1ODkxNDgyZWE4YzYxZjVjYTMyZjI4MGRwLTIsCisgICAgLTB4MS5jNWFkMzRmNWY0NzJhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgMHgxLmI4NTFjZDliODRlZTY4M2RjNmJkMzg5OWVhODFkYmY5cC0yLAorICAgIDB4MS5jNzI4ZmMyZjM0YmQ2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgLTB4MS5iODUxY2Q5Yjg0ZWU2ODNkYzZiZDM4OTllYTgxZGJmOXAtMiwKKyAgICAtMHgxLmM3MjhmYzJmMzRiZDZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjYKKyAgICAweDEuYmEyMWI1M2NmMmZmMjgzMjYwNmY2NWVlZWI0ZTNhYWZwLTIsCisgICAgMHgxLmM5MmIwZjYxMDUwODlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAtMHgxLmJhMjFiNTNjZjJmZjI4MzI2MDZmNjVlZWViNGUzYWFmcC0yLAorICAgIC0weDEuYzkyYjBmNjEwNTA4OXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIDB4MS5jOWEyYjY4ZTMwZWM3N2M0ZTc2Yzg4OTcwNDM5NGE1MHAtNSwKKyAgICAweDEuYzlkZmJiZTllYzcwNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQyOQorICAgIC0weDEuYzlhMmI2OGUzMGVjNzdjNGU3NmM4ODk3MDQzOTRhNTBwLTUsCisgICAgLTB4MS5jOWRmYmJlOWVjNzA0cC01CisgIH0sCisgIHsgLy8gRW50cnkgNDMwCisgICAgMHgxLmYzNzAxMTVjOWFiMzU3NDNlMTIyMTdjNjEyMmUxYTI4cC0xLAorICAgIDB4MS5jYWYzMWJkN2VlMjE3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAtMHgxLmYzNzAxMTVjOWFiMzU3NDNlMTIyMTdjNjEyMmUxYTI4cC0xLAorICAgIC0weDEuY2FmMzFiZDdlZTIxN3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgLTB4MS5kZDM4YTFmMWQyODliNjE3MzExNTcyMWJjNThlMjk4ZHAtNTQsCisgICAgMHgxLmNiNDRlODZiYzE5MmJwNjQ4CisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgMHgxLmRkMzhhMWYxZDI4OWI2MTczMTE1NzIxYmM1OGUyOThkcC01NCwKKyAgICAtMHgxLmNiNDRlODZiYzE5MmJwNjQ4CisgIH0sCisgIHsgLy8gRW50cnkgNDM0CisgICAgMHgxLmRkMzhhMWYxZDI4OWI2MTczMTE1NzIxYmM1NWE1NmE4cC01MywKKyAgICAweDEuY2I0NGU4NmJjMTkyYnA2NDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAtMHgxLmRkMzhhMWYxZDI4OWI2MTczMTE1NzIxYmM1NWE1NmE4cC01MywKKyAgICAtMHgxLmNiNDRlODZiYzE5MmJwNjQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDM2CisgICAgMHgxLmM3ODg1YWVmMzNhOTRmZmM1YWUwNmJlOTQ0NGVmYWQ1cC0zLAorICAgIDB4MS5jYjZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAtMHgxLmM3ODg1YWVmMzNhOTRmZmM1YWUwNmJlOTQ0NGVmYWQ1cC0zLAorICAgIC0weDEuY2I2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLmNkMjc5YWE2MTk2YjU3ZjliZTcxY2RmZmRkOWYxOTE5cC00LAorICAgIDB4MS5jZTIyNzFkMmY2NjJmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgLTB4MS5jZDI3OWFhNjE5NmI1N2Y5YmU3MWNkZmZkZDlmMTkxOXAtNCwKKyAgICAtMHgxLmNlMjI3MWQyZjY2MmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuOTMwYjcwNWY5ZmFkMTdmYjU2ODEzYTQ1OTczYThkNzJwLTEsCisgICAgMHgxLmQwMDAwMDAwMDA0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgLTB4MS45MzBiNzA1ZjlmYWQxN2ZiNTY4MTNhNDU5NzNhOGQ3MnAtMSwKKyAgICAtMHgxLmQwMDAwMDAwMDA0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDQyCisgICAgMHgxLjdlZjI0YzhlNjdkOWE4MDE3YTAzMWYzOGUyNGNjZTA2cC0xLAorICAgIDB4MS5kMDFwMTk5CisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgLTB4MS43ZWYyNGM4ZTY3ZDlhODAxN2EwMzFmMzhlMjRjY2UwNnAtMSwKKyAgICAtMHgxLmQwMXAxOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDQKKyAgICAweDEuZmZmZjEyNGMwMDFhYWZiMWYxNzVjY2I1MzFjMDUzYjBwLTEsCisgICAgMHgxLmQwMjRiYTZmOTUzY2ZwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NQorICAgIC0weDEuZmZmZjEyNGMwMDFhYWZiMWYxNzVjY2I1MzFjMDUzYjBwLTEsCisgICAgLTB4MS5kMDI0YmE2Zjk1M2NmcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDYKKyAgICAtMHgxLmY4M2EwOTgzZGQxNWQwMDMwMWUyZGYyMWUzYmVlNjM1cC0yLAorICAgIDB4MS5kNDA2N2M2MGY0NzFlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDcKKyAgICAweDEuZjgzYTA5ODNkZDE1ZDAwMzAxZTJkZjIxZTNiZWU2MzVwLTIsCisgICAgLTB4MS5kNDA2N2M2MGY0NzFlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDgKKyAgICAweDEuZDc5Yjk4OTZmZjU1NDg0ZDI1OTFiNjc3ZDU0ZWE0NmZwLTUsCisgICAgMHgxLmQ3ZGU2MjYzYmNhYWJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDkKKyAgICAtMHgxLmQ3OWI5ODk2ZmY1NTQ4NGQyNTkxYjY3N2Q1NGVhNDZmcC01LAorICAgIC0weDEuZDdkZTYyNjNiY2FhYnAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIDB4MS5lZDBiOTA4YTI5ODJmN2ZkOWM4MGJjMTA1MWRkNDA4MHAtMSwKKyAgICAweDEuZDgwMDAwMDAwMjI3NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgLTB4MS5lZDBiOTA4YTI5ODJmN2ZkOWM4MGJjMTA1MWRkNDA4MHAtMSwKKyAgICAtMHgxLmQ4MDAwMDAwMDIyNzRwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MgorICAgIC0weDEuZjJjMjE3Y2JjN2RjYzkxOTI0M2E3YzQzNGEyMDlmOWFwLTEsCisgICAgMHgxLmQ5NmUwNThwNDg4CisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgMHgxLmYyYzIxN2NiYzdkY2M5MTkyNDNhN2M0MzRhMjA5ZjlhcC0xLAorICAgIC0weDEuZDk2ZTA1OHA0ODgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTQKKyAgICAweDEuOThkY2QwOTMzNzc5MjgwMDAwMDAwMDAwMDAxNjdkYzdwLTEsCisgICAgMHgxLmQ5OGM0YzYxMjcxOGRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAtMHgxLjk4ZGNkMDkzMzc3OTI4MDAwMDAwMDAwMDAwMTY3ZGM3cC0xLAorICAgIC0weDEuZDk4YzRjNjEyNzE4ZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1NgorICAgIDB4MS5kYjNiYTg3NzVjYTI1N2RhM2JkNTQ0OWQzOTZhNjZlMnAtNSwKKyAgICAweDEuZGI4cC01CisgIH0sCisgIHsgLy8gRW50cnkgNDU3CisgICAgLTB4MS5kYjNiYTg3NzVjYTI1N2RhM2JkNTQ0OWQzOTZhNjZlMnAtNSwKKyAgICAtMHgxLmRiOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ1OAorICAgIC0weDEuOWZlZTM3Njk3ZDU4MjgwMzFhNmEyNjc5YzE0MzM0NTdwLTIsCisgICAgMHgxLmRlMzg2ZDYwOTAzMDNwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgMHgxLjlmZWUzNzY5N2Q1ODI4MDMxYTZhMjY3OWMxNDMzNDU3cC0yLAorICAgIC0weDEuZGUzODZkNjA5MDMwM3AyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjAKKyAgICAtMHgxLjUzNjFlZTY1NTMxODgwMzZlOWRmY2FiNDI4ZGViNGUxcC01MywKKyAgICAweDEuZGU1ZTUwNTRlOTIxYnAzNQorICB9LAorICB7IC8vIEVudHJ5IDQ2MQorICAgIDB4MS41MzYxZWU2NTUzMTg4MDM2ZTlkZmNhYjQyOGRlYjRlMXAtNTMsCisgICAgLTB4MS5kZTVlNTA1NGU5MjFicDM1CisgIH0sCisgIHsgLy8gRW50cnkgNDYyCisgICAgMHgxLmZlYzQ4ZDVlNzY5ZWJlMzc0NDhjMTBlMGE3YTBlY2IxcC0xLAorICAgIDB4MS5kZjc3ZGRmNzdkZGY0cDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDYzCisgICAgLTB4MS5mZWM0OGQ1ZTc2OWViZTM3NDQ4YzEwZTBhN2EwZWNiMXAtMSwKKyAgICAtMHgxLmRmNzdkZGY3N2RkZjRwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjQKKyAgICAtMHgxLjI5MDJhODNkNzI2MzI4MDAwMDNkMTE0OWI3ZTZjMGZicC0xLAorICAgIDB4MS5lMTU2MmIwNDQ4YTg2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjUKKyAgICAweDEuMjkwMmE4M2Q3MjYzMjgwMDAwM2QxMTQ5YjdlNmMwZmJwLTEsCisgICAgLTB4MS5lMTU2MmIwNDQ4YTg2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjYKKyAgICAweDEuOWUyNmM3YmM5NmI2ODgwMDAwMGQ0NzM2ZmYxMzIwMzVwLTEsCisgICAgMHgxLmUyNzAwY2RjODY2MzVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjcKKyAgICAtMHgxLjllMjZjN2JjOTZiNjg4MDAwMDBkNDczNmZmMTMyMDM1cC0xLAorICAgIC0weDEuZTI3MDBjZGM4NjYzNXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIDB4MS5lNjQ5NDkxMWVlZGQxOGQwZjE5MTVmZDRmNjQ5NTQ2OXAtNywKKyAgICAweDEuZTY0ZGRhZjdiZDczMHAtNworICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIC0weDEuZTY0OTQ5MTFlZWRkMThkMGYxOTE1ZmQ0ZjY0OTU0NjlwLTcsCisgICAgLTB4MS5lNjRkZGFmN2JkNzMwcC03CisgIH0sCisgIHsgLy8gRW50cnkgNDcwCisgICAgMHgxLmViMjZjNjkwYmRhMjQ4NGE2YzAyMGE5YzA1MmVhODQ2cC01LAorICAgIDB4MS5lYjcyMzliY2E4YWZhcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDcxCisgICAgLTB4MS5lYjI2YzY5MGJkYTI0ODRhNmMwMjBhOWMwNTJlYTg0NnAtNSwKKyAgICAtMHgxLmViNzIzOWJjYThhZmFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzIKKyAgICAweDEuYzczMjM4NzkwYTRjZTgwMWUwNDEwN2IyNTQ2YjRhZTNwLTMsCisgICAgMHgxLmVmN2I4M2Y3YmRlZjRwMworICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIC0weDEuYzczMjM4NzkwYTRjZTgwMWUwNDEwN2IyNTQ2YjRhZTNwLTMsCisgICAgLTB4MS5lZjdiODNmN2JkZWY0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzQKKyAgICAweDEuZWQxYjU3NWFjYjhjODgxMDgyY2UzMTUwNzRhOGE0MmFwLTMsCisgICAgMHgxLmYyMDAwMDAwMDEwOWJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzUKKyAgICAtMHgxLmVkMWI1NzVhY2I4Yzg4MTA4MmNlMzE1MDc0YThhNDJhcC0zLAorICAgIC0weDEuZjIwMDAwMDAwMTA5YnAtMworICB9LAorICB7IC8vIEVudHJ5IDQ3NgorICAgIDB4MS5jMWI1MGE1NmM4ODA5ODAwMDAwMjgyYTUxNmMxM2UyNXAtMSwKKyAgICAweDEuZjQwY2E2N2E5ZThkN3A5CisgIH0sCisgIHsgLy8gRW50cnkgNDc3CisgICAgLTB4MS5jMWI1MGE1NmM4ODA5ODAwMDAwMjgyYTUxNmMxM2UyNXAtMSwKKyAgICAtMHgxLmY0MGNhNjdhOWU4ZDdwOQorICB9LAorICB7IC8vIEVudHJ5IDQ3OAorICAgIDB4MS5lMzIxZmVhNjQzYTk2ODA4MzIwODc2OGU5ZTJjZDI4ZXAtMiwKKyAgICAweDEuZjcyMjRkMmM3NzU0MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ3OQorICAgIC0weDEuZTMyMWZlYTY0M2E5NjgwODMyMDg3NjhlOWUyY2QyOGVwLTIsCisgICAgLTB4MS5mNzIyNGQyYzc3NTQwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDgwCisgICAgMHgxLmMxMjY5YjAyMGExMDdmZmMwMDYxMmE1NjNhOTE5Njg2cC0zLAorICAgIDB4MS5mNzhhMGQwNWU2MGUycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODEKKyAgICAtMHgxLmMxMjY5YjAyMGExMDdmZmMwMDYxMmE1NjNhOTE5Njg2cC0zLAorICAgIC0weDEuZjc4YTBkMDVlNjBlMnA2CisgIH0sCisgIHsgLy8gRW50cnkgNDgyCisgICAgMHgxLmY3NmNhZTI4YTA3NzQ3ZmZmY2Q0NTNhMDE0MmMyZWMxcC01LAorICAgIDB4MS5mN2JkZWY3YmRmMDczcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDgzCisgICAgLTB4MS5mNzZjYWUyOGEwNzc0N2ZmZmNkNDUzYTAxNDJjMmVjMXAtNSwKKyAgICAtMHgxLmY3YmRlZjdiZGYwNzNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODQKKyAgICAweDEuZTQyYzEzOWRjMjA1MzgwN2I5NDQwZjFhMjhmN2M5YjlwLTIsCisgICAgMHgxLmY4NTAyZDU5NTU0NDNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAtMHgxLmU0MmMxMzlkYzIwNTM4MDdiOTQ0MGYxYTI4ZjdjOWI5cC0yLAorICAgIC0weDEuZjg1MDJkNTk1NTQ0M3AtMgorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIDB4MS4wZmE3NDllMDdmNjNmYzlkMDFjODM0ZGU0NzY1NGFjYnAtOSwKKyAgICAweDEuZjhmYzgyNGQyNjkzYnA2MQorICB9LAorICB7IC8vIEVudHJ5IDQ4NworICAgIC0weDEuMGZhNzQ5ZTA3ZjYzZmM5ZDAxYzgzNGRlNDc2NTRhY2JwLTksCisgICAgLTB4MS5mOGZjODI0ZDI2OTNicDYxCisgIH0sCisgIHsgLy8gRW50cnkgNDg4CisgICAgMHgxLmZmYTgwMzI0ZTJkOGViYzAyZjMyM2VkNDllYjk3YTZjcC0xLAorICAgIDB4MS5mOGZmZmZmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODkKKyAgICAtMHgxLmZmYTgwMzI0ZTJkOGViYzAyZjMyM2VkNDllYjk3YTZjcC0xLAorICAgIC0weDEuZjhmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgLTB4MS43Y2RmNzlkNWUzN2I4YjIxMmVmZjg2ZDJmZmUyMDQ0YnAtMSwKKyAgICAweDEuZmQ4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAweDEuN2NkZjc5ZDVlMzdiOGIyMTJlZmY4NmQyZmZlMjA0NGJwLTEsCisgICAgLTB4MS5mZDhwMQorICB9LAorICB7IC8vIEVudHJ5IDQ5MgorICAgIDB4MS5mZDNmNDg4NDdhMWQxMGE4ZTVmZjFkNGRiODRlZDI2ZHAtNSwKKyAgICAweDEuZmQ5MzY0ZDkzNjU5NnAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ5MworICAgIC0weDEuZmQzZjQ4ODQ3YTFkMTBhOGU1ZmYxZDRkYjg0ZWQyNmRwLTUsCisgICAgLTB4MS5mZDkzNjRkOTM2NTk2cC01CisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgMHgxLmY5M2FkNDcxZDI2MmY4MDMyZTkyZDU5Njc5N2Y5ZDQxcC0zLAorICAgIDB4MS5mZThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTUKKyAgICAtMHgxLmY5M2FkNDcxZDI2MmY4MDMyZTkyZDU5Njc5N2Y5ZDQxcC0zLAorICAgIC0weDEuZmU4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgMHgxLjgzYjMwNjI0MTQ5NzNkOTJjNDI3ODUwN2YwNDc0ZDY3cC0xLAorICAgIDB4MS5mZWJiNjQ2ZTJlZTU3cDEzCisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgLTB4MS44M2IzMDYyNDE0OTczZDkyYzQyNzg1MDdmMDQ3NGQ2N3AtMSwKKyAgICAtMHgxLmZlYmI2NDZlMmVlNTdwMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTgKKyAgICAweDEuM2I0NWJkNzQ0OTc3NTQ3ZmE0NjczZTQyZGZjOTk0MDJwLTEsCisgICAgMHgxLmZlZWZmZmZmZmZmYzZwOTk1CisgIH0sCisgIHsgLy8gRW50cnkgNDk5CisgICAgLTB4MS4zYjQ1YmQ3NDQ5Nzc1NDdmYTQ2NzNlNDJkZmM5OTQwMnAtMSwKKyAgICAtMHgxLmZlZWZmZmZmZmZmYzZwOTk1CisgIH0sCisgIHsgLy8gRW50cnkgNTAwCisgICAgLTB4MS5lZWZiNTlkMTQzNjQ1YTQwMDQxYmY3MjZkYzZmMmZhMHAtMSwKKyAgICAweDEuZmY4ZmZmZmZmZmZmZnA3CisgIH0sCisgIHsgLy8gRW50cnkgNTAxCisgICAgMHgxLmVlZmI1OWQxNDM2NDVhNDAwNDFiZjcyNmRjNmYyZmEwcC0xLAorICAgIC0weDEuZmY4ZmZmZmZmZmZmZnA3CisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgLTB4MS41NjQzM2YwYzZiY2VlOTg0ODc1MTYxMWM2ZjVhZGUxZnAtMSwKKyAgICAweDEuZmY4ZmZmZmZmZmZmZnA4NzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICAweDEuNTY0MzNmMGM2YmNlZTk4NDg3NTE2MTFjNmY1YWRlMWZwLTEsCisgICAgLTB4MS5mZjhmZmZmZmZmZmZmcDg3MAorICB9LAorICB7IC8vIEVudHJ5IDUwNAorICAgIC0weDEuOTMwMDA2MjQ2YTZjMDVkYWI3MmVhNjk3ZGFhYmE2OWRwLTIsCisgICAgMHgxLmZmY2ZmZjhwMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAweDEuOTMwMDA2MjQ2YTZjMDVkYWI3MmVhNjk3ZGFhYmE2OWRwLTIsCisgICAgLTB4MS5mZmNmZmY4cDE5CisgIH0sCisgIHsgLy8gRW50cnkgNTA2CisgICAgMHgxLmRlZDM3YTFmMGFhNmQwNWQ3ODJkNmFhYjQwY2I4NjcwcC0xLAorICAgIDB4MS5mZmNmZmY4cDM2NQorICB9LAorICB7IC8vIEVudHJ5IDUwNworICAgIC0weDEuZGVkMzdhMWYwYWE2ZDA1ZDc4MmQ2YWFiNDBjYjg2NzBwLTEsCisgICAgLTB4MS5mZmNmZmY4cDM2NQorICB9LAorICB7IC8vIEVudHJ5IDUwOAorICAgIC0weDEuOTNlNGQ5NmI2MjFlMDdiY2E4NjZjMWEyZTc3MTg4MWNwLTEsCisgICAgMHgxLmZmY2ZmZmZmZmZmNmNwNzIwCisgIH0sCisgIHsgLy8gRW50cnkgNTA5CisgICAgMHgxLjkzZTRkOTZiNjIxZTA3YmNhODY2YzFhMmU3NzE4ODFjcC0xLAorICAgIC0weDEuZmZjZmZmZmZmZmY2Y3A3MjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTAKKyAgICAweDEuOTA2OGI5MGU0MjYwNWUwNTAxMGUxNDcxMTA2ODhlNTJwLTEsCisgICAgMHgxLmZmY2ZmZmZmZmZmZjlwMzIwCisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgLTB4MS45MDY4YjkwZTQyNjA1ZTA1MDEwZTE0NzExMDY4OGU1MnAtMSwKKyAgICAtMHgxLmZmY2ZmZmZmZmZmZjlwMzIwCisgIH0sCisgIHsgLy8gRW50cnkgNTEyCisgICAgMHgxLmNmODE2NDJlNzQyMWM1NjUwN2ViODE4NzYxMWM4NGRicC0xLAorICAgIDB4MS5mZmNmZmZmZmZmZmZmcDEyCisgIH0sCisgIHsgLy8gRW50cnkgNTEzCisgICAgLTB4MS5jZjgxNjQyZTc0MjFjNTY1MDdlYjgxODc2MTFjODRkYnAtMSwKKyAgICAtMHgxLmZmY2ZmZmZmZmZmZmZwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTQKKyAgICAweDEuZmZmZmZmZTYxZmU2MTZiMjgyYzNhNjljYTIyNWMyZDJwLTEsCisgICAgMHgxLmZmY2ZmZmZmZmZmZmZwNDA0CisgIH0sCisgIHsgLy8gRW50cnkgNTE1CisgICAgLTB4MS5mZmZmZmZlNjFmZTYxNmIyODJjM2E2OWNhMjI1YzJkMnAtMSwKKyAgICAtMHgxLmZmY2ZmZmZmZmZmZmZwNDA0CisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgLTB4MS40MDZlZTlhZTkxZTE2ZjFkNThjOTZlYjcxNjVmNTk1YnAtMSwKKyAgICAweDEuZmZlZmZmZmZmZmZjY3A5OTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTcKKyAgICAweDEuNDA2ZWU5YWU5MWUxNmYxZDU4Yzk2ZWI3MTY1ZjU5NWJwLTEsCisgICAgLTB4MS5mZmVmZmZmZmZmZmNjcDk5NQorICB9LAorICB7IC8vIEVudHJ5IDUxOAorICAgIDB4MS5mYTlmNmNhMGVjNDRlMDAxMDAyNmYzODVjMGFiODY5MHAtMywKKyAgICAweDEuZmZlZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDUxOQorICAgIC0weDEuZmE5ZjZjYTBlYzQ0ZTAwMTAwMjZmMzg1YzBhYjg2OTBwLTMsCisgICAgLTB4MS5mZmVmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgMHgxLjZiNDkxZGI4YjY2ZDg4MDEyMWY4MzBkOGM3NTVhZTU0cC00LAorICAgIDB4MS5mZmVmZmZmZmZmZmZmcDU1CisgIH0sCisgIHsgLy8gRW50cnkgNTIxCisgICAgLTB4MS42YjQ5MWRiOGI2NmQ4ODAxMjFmODMwZDhjNzU1YWU1NHAtNCwKKyAgICAtMHgxLmZmZWZmZmZmZmZmZmZwNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjIKKyAgICAweDEuZmIwYWIxMDJjYjEyZmVmOWE0ZTRhODY5YTI5OWVkNDZwLTEsCisgICAgMHgxLmZmZWZmZmZmZmZmZmZwMTgwCisgIH0sCisgIHsgLy8gRW50cnkgNTIzCisgICAgLTB4MS5mYjBhYjEwMmNiMTJmZWY5YTRlNGE4NjlhMjk5ZWQ0NnAtMSwKKyAgICAtMHgxLmZmZWZmZmZmZmZmZmZwMTgwCisgIH0sCisgIHsgLy8gRW50cnkgNTI0CisgICAgMHgxLmU0MzE1ZWMwNDYzNWNkMzRiM2VmNjAzNzA1MTEyODFmcC0zLAorICAgIDB4MS5mZmVmZmZmZmZmZmZmcDcwNgorICB9LAorICB7IC8vIEVudHJ5IDUyNQorICAgIC0weDEuZTQzMTVlYzA0NjM1Y2QzNGIzZWY2MDM3MDUxMTI4MWZwLTMsCisgICAgLTB4MS5mZmVmZmZmZmZmZmZmcDcwNgorICB9LAorICB7IC8vIEVudHJ5IDUyNgorICAgIDB4MS5mZmZmYzM5OTk3ZWY2N2QyYjljN2U0ZWZhOGI3N2U1MHAtMSwKKyAgICAweDEuZmZmMWZmZmZmZmZmZnA0MQorICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIC0weDEuZmZmZmMzOTk5N2VmNjdkMmI5YzdlNGVmYThiNzdlNTBwLTEsCisgICAgLTB4MS5mZmYxZmZmZmZmZmZmcDQxCisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgMHgxLmZmZjE2Mzk5MjgzMWU4YzY4YjAyMzRiNDJlZmExZDBhcC03LAorICAgIDB4MS5mZmY2Yjg5ZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgNTI5CisgICAgLTB4MS5mZmYxNjM5OTI4MzFlOGM2OGIwMjM0YjQyZWZhMWQwYXAtNywKKyAgICAtMHgxLmZmZjZiODlmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAtMHgxLmQ5NzU3YTA1ZmNjNDJjNjY0ZjNhNjZiNTU3NmE5OGU0cC0xLAorICAgIDB4MS5mZmZkZmZmZjAwMDFmcDEwNQorICB9LAorICB7IC8vIEVudHJ5IDUzMQorICAgIDB4MS5kOTc1N2EwNWZjYzQyYzY2NGYzYTY2YjU1NzZhOThlNHAtMSwKKyAgICAtMHgxLmZmZmRmZmZmMDAwMWZwMTA1CisgIH0sCisgIHsgLy8gRW50cnkgNTMyCisgICAgLTB4MS44Mzc5MWZlNjNhMTdhODAyNThmMmM0NzljN2UxZDMzOXAtMSwKKyAgICAweDEuZmZmZjBjMDAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTMzCisgICAgMHgxLjgzNzkxZmU2M2ExN2E4MDI1OGYyYzQ3OWM3ZTFkMzM5cC0xLAorICAgIC0weDEuZmZmZjBjMDAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTM0CisgICAgLTB4MS5kOWQzYTg1YWNjNTBjODAwMDAwNWQxM2RkODJmNjFiNXAtMSwKKyAgICAweDEuZmZmZmMwMDAwMDA1NXAxNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAweDEuZDlkM2E4NWFjYzUwYzgwMDAwMDVkMTNkZDgyZjYxYjVwLTEsCisgICAgLTB4MS5mZmZmYzAwMDAwMDU1cDE1MAorICB9LAorICB7IC8vIEVudHJ5IDUzNgorICAgIC0weDEuZjI1ZDg1OGRjZGVlNzQxMmNmMDc2MGU5NTVjYjgzOTBwLTMsCisgICAgMHgxLmZmZmZlM2ZmZmZmZmZwNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzcKKyAgICAweDEuZjI1ZDg1OGRjZGVlNzQxMmNmMDc2MGU5NTVjYjgzOTBwLTMsCisgICAgLTB4MS5mZmZmZTNmZmZmZmZmcDQwCisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgMHgxLmQxOGY3YmZlNTU3ZWI4MDAwMTU1NzE0MmJkYTE4YmFlcC0xLAorICAgIDB4MS5mZmZmZWZmZmNmZmFlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzkKKyAgICAtMHgxLmQxOGY3YmZlNTU3ZWI4MDAwMTU1NzE0MmJkYTE4YmFlcC0xLAorICAgIC0weDEuZmZmZmVmZmZjZmZhZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgLTB4MS5iYzE0ZWJmNmJmYjUxZmZhNWU2ZjViMGIwYmY5ZTg5OXAtNCwKKyAgICAweDEuZmZmZmZiZmZmZmZmZnAyMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDEKKyAgICAweDEuYmMxNGViZjZiZmI1MWZmYTVlNmY1YjBiMGJmOWU4OTlwLTQsCisgICAgLTB4MS5mZmZmZmJmZmZmZmZmcDIyOAorICB9LAorICB7IC8vIEVudHJ5IDU0MgorICAgIDB4MS5iYjg4N2EwNmY2YzUwZmVmMDY1NGQzMDNjODJmMWE3OHAtMywKKyAgICAweDEuZmZmZmZiZmZmZmZmZnA3MzUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAtMHgxLmJiODg3YTA2ZjZjNTBmZWYwNjU0ZDMwM2M4MmYxYTc4cC0zLAorICAgIC0weDEuZmZmZmZiZmZmZmZmZnA3MzUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDQKKyAgICAweDEuZmZhYWFkZWY1NGUyZjBjNDA4MTg4MGI3YjllNzk0ZGZwLTUsCisgICAgMHgxLmZmZmZmZWZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDUKKyAgICAtMHgxLmZmYWFhZGVmNTRlMmYwYzQwODE4ODBiN2I5ZTc5NGRmcC01LAorICAgIC0weDEuZmZmZmZlZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDU0NgorICAgIDB4MS5kNGEzYzYyYzViZTA4YjEyMzg2OGU4YTQ2N2VmZjBjZXAtMSwKKyAgICAweDEuZmZmZmZmOHAxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDcKKyAgICAtMHgxLmQ0YTNjNjJjNWJlMDhiMTIzODY4ZThhNDY3ZWZmMGNlcC0xLAorICAgIC0weDEuZmZmZmZmOHAxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDgKKyAgICAweDEuY2VjMjBmMTk3NzAzZjRmZDQyMDQ4ZGRmODg5ZmU4NGFwLTMsCisgICAgMHgxLmZmZmZmZjhwMTkyCisgIH0sCisgIHsgLy8gRW50cnkgNTQ5CisgICAgLTB4MS5jZWMyMGYxOTc3MDNmNGZkNDIwNDhkZGY4ODlmZTg0YXAtMywKKyAgICAtMHgxLmZmZmZmZjhwMTkyCisgIH0sCisgIHsgLy8gRW50cnkgNTUwCisgICAgMHgxLmQzN2FhZGM3Yzg2NjI1MDE3NTFkYmY0ZTllNTcwMWFicC0yLAorICAgIDB4MS5mZmZmZmY4cDU0MworICB9LAorICB7IC8vIEVudHJ5IDU1MQorICAgIC0weDEuZDM3YWFkYzdjODY2MjUwMTc1MWRiZjRlOWU1NzAxYWJwLTIsCisgICAgLTB4MS5mZmZmZmY4cDU0MworICB9LAorICB7IC8vIEVudHJ5IDU1MgorICAgIDB4MS5mYThkMmE0ZDBhMjAyN2YwZjc0ZGYzMTM2Y2I3OGY3MnAtMSwKKyAgICAweDEuZmZmZmZmYzAwMThmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTUzCisgICAgLTB4MS5mYThkMmE0ZDBhMjAyN2YwZjc0ZGYzMTM2Y2I3OGY3MnAtMSwKKyAgICAtMHgxLmZmZmZmZmMwMDE4ZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS5mYThkMmEwMjlmOTc3ZmZlNzRjYjE0Y2IwOWRmMTc2ZHAtMSwKKyAgICAweDEuZmZmZmZmZmZlZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTU1CisgICAgLTB4MS5mYThkMmEwMjlmOTc3ZmZlNzRjYjE0Y2IwOWRmMTc2ZHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZWZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIC0weDEuMjc2M2YwMmEyZDFlOTgwMDAwMDE1ZGJmOTVkODlhYjJwLTQsCisgICAgMHgxLmZmZmZmZmZmZjgyNTBwOTQzCisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgMHgxLjI3NjNmMDJhMmQxZTk4MDAwMDAxNWRiZjk1ZDg5YWIycC00LAorICAgIC0weDEuZmZmZmZmZmZmODI1MHA5NDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTgKKyAgICAweDEuZmNmZjEyOGY3N2RkYTgxYzJhMGVjMDNlNGVkODA0MjJwLTEsCisgICAgMHgxLmZmZmZmZmZmZmUwOWRwMzIwCisgIH0sCisgIHsgLy8gRW50cnkgNTU5CisgICAgLTB4MS5mY2ZmMTI4Zjc3ZGRhODFjMmEwZWMwM2U0ZWQ4MDQyMnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmUwOWRwMzIwCisgIH0sCisgIHsgLy8gRW50cnkgNTYwCisgICAgLTB4MS5mY2MwYmZlZGQ4NGE1ODE2ZDk1OTZiOGY5ZmJiOWI0MXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZTZlM3A3MjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjEKKyAgICAweDEuZmNjMGJmZWRkODRhNTgxNmQ5NTk2YjhmOWZiYjliNDFwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZlNmUzcDcyMAorICB9LAorICB7IC8vIEVudHJ5IDU2MgorICAgIDB4MS5hZWQ1NDhmMDkwYzFkZmZlNmUwNDMyMmRjOGU4Y2JmYXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmU3ZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU2MworICAgIC0weDEuYWVkNTQ4ZjA5MGMxZGZmZTZlMDQzMjJkYzhlOGNiZmFwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZTdmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTY0CisgICAgLTB4MS5mNWUxMWRlZjk5ZDJiMjIwOTgyNDJhYzlmYjc1NmFkYnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmVmZnAyNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjUKKyAgICAweDEuZjVlMTFkZWY5OWQyYjIyMDk4MjQyYWM5ZmI3NTZhZGJwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZWZmcDI1MAorICB9LAorICB7IC8vIEVudHJ5IDU2NgorICAgIDB4MS44YTljYmY0OGZlYzlmMmEwZmRlOTUxZjMxM2I5MThjY3AtMSwKKyAgICAweDEuZmZmZmZmZmZmZmY3OHA5MjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICAtMHgxLjhhOWNiZjQ4ZmVjOWYyYTBmZGU5NTFmMzEzYjkxOGNjcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmY3OHA5MjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjgKKyAgICAtMHgxLjdlYmE1ODk0ODQ0Y2MwMGM4OGYzOWJkM2Q0MTk3ZDE0cC0zLAorICAgIDB4MS5mZmZmZmZmZmZmZjgzcDE1MAorICB9LAorICB7IC8vIEVudHJ5IDU2OQorICAgIDB4MS43ZWJhNTg5NDg0NGNjMDBjODhmMzliZDNkNDE5N2QxNHAtMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmODNwMTUwCisgIH0sCisgIHsgLy8gRW50cnkgNTcwCisgICAgMHgxLjkyYzRmMDZkMmNkZDE1ZDMwMjYwOWNhYTg3ODgyYWZhcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmQ1cDk5NQorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIC0weDEuOTJjNGYwNmQyY2RkMTVkMzAyNjA5Y2FhODc4ODJhZmFwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmQ1cDk5NQorICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIC0weDEuM2Q1ZjdkZWIxZDNiYWQ2M2ViMTczYjczZTg0MTEwYTBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZThwNzIwCisgIH0sCisgIHsgLy8gRW50cnkgNTczCisgICAgMHgxLjNkNWY3ZGViMWQzYmFkNjNlYjE3M2I3M2U4NDExMGEwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZlOHA3MjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzQKKyAgICAtMHgxLjkxMzQ5YjBhZTkwZTUzMTY1MzljMDdlZWE5YjRlNmIwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmVicDkyMAorICB9LAorICB7IC8vIEVudHJ5IDU3NQorICAgIDB4MS45MTM0OWIwYWU5MGU1MzE2NTM5YzA3ZWVhOWI0ZTZiMHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZWJwOTIwCisgIH0sCisgIHsgLy8gRW50cnkgNTc2CisgICAgLTB4MS44MzdiOWRkZGMxZTg3MzhkNzRiMmE3NGZhNDJkODAyZHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNTc3CisgICAgMHgxLjgzN2I5ZGRkYzFlODczOGQ3NGIyYTc0ZmE0MmQ4MDJkcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNTc4CisgICAgMHgxLjUxMGUwNjJlN2ZhMjAzN2QzODQyZGU5OTNjOWM1MDkwcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmYxcDI0NQorICB9LAorICB7IC8vIEVudHJ5IDU3OQorICAgIC0weDEuNTEwZTA2MmU3ZmEyMDM3ZDM4NDJkZTk5M2M5YzUwOTBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmYxcDI0NQorICB9LAorICB7IC8vIEVudHJ5IDU4MAorICAgIDB4MS5lYWVlODc0NGIwNWU0N2ZkZTA5MmUzYTE0ODk1ZDA2N3AtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmM3AtMgorICB9LAorICB7IC8vIEVudHJ5IDU4MQorICAgIC0weDEuZWFlZTg3NDRiMDVlNDdmZGUwOTJlM2ExNDg5NWQwNjdwLTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmYzcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgMHgxLjhhNGRlZThmNDA2Mjc5MTA3ODc2NmIwYTAxZGUzNjBkcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmY0cDg0NQorICB9LAorICB7IC8vIEVudHJ5IDU4MworICAgIC0weDEuOGE0ZGVlOGY0MDYyNzkxMDc4NzY2YjBhMDFkZTM2MGRwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmY0cDg0NQorICB9LAorICB7IC8vIEVudHJ5IDU4NAorICAgIDB4MS41MTE4ZDZiYmRlMDdlNGVlYmYyYTExZGY0ZGM3NGQ1NHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmNHAxMDIwCisgIH0sCisgIHsgLy8gRW50cnkgNTg1CisgICAgLTB4MS41MTE4ZDZiYmRlMDdlNGVlYmYyYTExZGY0ZGM3NGQ1NHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjRwMTAyMAorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIC0weDEuNWNkNWM1M2NmMzBhOTdmZjBlNDcxZDE0OWM0MDk1NWRwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZjhwNjE2CisgIH0sCisgIHsgLy8gRW50cnkgNTg3CisgICAgMHgxLjVjZDVjNTNjZjMwYTk3ZmYwZTQ3MWQxNDljNDA5NTVkcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmOHA2MTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODgKKyAgICAweDEuZmZmZmExZjBkN2RhZjY5M2E4MGEyYjgxN2IxNmYyNzdwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwNDc1CisgIH0sCisgIHsgLy8gRW50cnkgNTg5CisgICAgLTB4MS5mZmZmYTFmMGQ3ZGFmNjkzYTgwYTJiODE3YjE2ZjI3N3AtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwNDc1CisgIH0sCisgIHsgLy8gRW50cnkgNTkwCisgICAgMHgxLjUxZTlkODQwMTA2ZDczNDg0ZDQ0YTg2Zjc0YzNkNDFkcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDk3MAorICB9LAorICB7IC8vIEVudHJ5IDU5MQorICAgIC0weDEuNTFlOWQ4NDAxMDZkNzM0ODRkNDRhODZmNzRjM2Q0MWRwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDk3MAorICB9LAorICB7IC8vIEVudHJ5IDU5MgorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTkzCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTk0CisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNTk1CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTk2CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIDB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDU5OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNjAwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNjAxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAweDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDYwNQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDYwNgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNjA3CisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNjA4CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDkKKyAgICAweDEuOTk5OTk5NmRlOGNhMTk4YzI0YWI5NDQ5YmVlZTE2ZDVwLTEzLAorICAgIDB4MS45OTk5OTk5OTk5OTlhcC0xMworICB9LAorICB7IC8vIEVudHJ5IDYxMAorICAgIC0weDEuOTk5OTk5NmRlOGNhMTk4YzI0YWI5NDQ5YmVlZTE2ZDVwLTEzLAorICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTEKKyAgICAweDEuOTk5OTk4ZWFkNjViOTZmNzhhNGRiZmQ4MzljN2VmMmVwLTEyLAorICAgIDB4MS45OTk5OTk5OTk5OTlhcC0xMgorICB9LAorICB7IC8vIEVudHJ5IDYxMgorICAgIC0weDEuOTk5OTk4ZWFkNjViOTZmNzhhNGRiZmQ4MzljN2VmMmVwLTEyLAorICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTMKKyAgICAweDEuMzMzMzMyMGM0OWJhYmZmMTUxYjZkMDQyOTBlMmMzYTJwLTExLAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cC0xMQorICB9LAorICB7IC8vIEVudHJ5IDYxNAorICAgIC0weDEuMzMzMzMyMGM0OWJhYmZmMTUxYjZkMDQyOTBlMmMzYTJwLTExLAorICAgIC0weDEuMzMzMzMzMzMzMzMzNHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAweDEuOTk5OTk2ZGU4Y2EyODg0ZGEyZjA4ZjI1YmIwMjRkMDhwLTExLAorICAgIDB4MS45OTk5OTk5OTk5OTlhcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDYxNgorICAgIC0weDEuOTk5OTk2ZGU4Y2EyODg0ZGEyZjA4ZjI1YmIwMjRkMDhwLTExLAorICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTcKKyAgICAweDEuZmZmZmZhYWFhYWFlZWVlZWVkNGVkNGVkYWI0YzdiZDZwLTExLAorICAgIDB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDYxOAorICAgIC0weDEuZmZmZmZhYWFhYWFlZWVlZWVkNGVkNGVkYWI0YzdiZDZwLTExLAorICAgIC0weDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTkKKyAgICAweDEuMzMzMzJlOTc4ZDU1MmFmYzg4M2JkYjA0NzUxZTM4MzVwLTEwLAorICAgIDB4MS4zMzMzMzMzMzMzMzMzcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDYyMAorICAgIC0weDEuMzMzMzJlOTc4ZDU1MmFmYzg4M2JkYjA0NzUxZTM4MzVwLTEwLAorICAgIC0weDEuMzMzMzMzMzMzMzMzM3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICAweDEuNjY2NjVmMTUyOWFmZjhhMzgwOTI0NjY3MGE0MzZjM2NwLTEwLAorICAgIDB4MS42NjY2NjY2NjY2NjY2cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDYyMgorICAgIC0weDEuNjY2NjVmMTUyOWFmZjhhMzgwOTI0NjY3MGE0MzZjM2NwLTEwLAorICAgIC0weDEuNjY2NjY2NjY2NjY2NnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjMKKyAgICAweDEuOTk5OThlYWQ2NWNkZjgyZTE5NGMxMzM5OTdmMmZiNjhwLTEwLAorICAgIDB4MS45OTk5OTk5OTk5OTk5cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDYyNAorICAgIC0weDEuOTk5OThlYWQ2NWNkZjgyZTE5NGMxMzM5OTdmMmZiNjhwLTEwLAorICAgIC0weDEuOTk5OTk5OTk5OTk5OXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjUKKyAgICAweDEuY2NjY2JkM2Y3ZDE1ZDQyYWZmYjlmMDJiZjFkYzI1N2JwLTEwLAorICAgIDB4MS5jY2NjY2NjY2NjY2NjcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDYyNgorICAgIC0weDEuY2NjY2JkM2Y3ZDE1ZDQyYWZmYjlmMDJiZjFkYzI1N2JwLTEwLAorICAgIC0weDEuY2NjY2NjY2NjY2NjY3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjcKKyAgICAweDEuMDY2NWFlOWM3YjQ0ZWQyODAyMTZiZTIxMDRmMjhmMDJwLTcsCisgICAgMHgxLjA2NjY2NjY2NjY2NjZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjgKKyAgICAtMHgxLjA2NjVhZTljN2I0NGVkMjgwMjE2YmUyMTA0ZjI4ZjAycC03LAorICAgIC0weDEuMDY2NjY2NjY2NjY2NnAtNworICB9LAorICB7IC8vIEVudHJ5IDYyOQorICAgIDB4MS5jY2M4ZTk3YjU5ZjYxODg5OGM0YWMzYTBhZWRkZjcwOXAtNywKKyAgICAweDEuY2NjY2NjY2NjY2NjY3AtNworICB9LAorICB7IC8vIEVudHJ5IDYzMAorICAgIC0weDEuY2NjOGU5N2I1OWY2MTg4OThjNGFjM2EwYWVkZGY3MDlwLTcsCisgICAgLTB4MS5jY2NjY2NjY2NjY2NjcC03CisgIH0sCisgIHsgLy8gRW50cnkgNjMxCisgICAgMHgxLjQ5OTNlOGE4ZmY3OWIxMzIwNDZlZmE3ODU2YTk3NTM4cC02LAorICAgIDB4MS40OTk5OTk5OTk5OTk5cC02CisgIH0sCisgIHsgLy8gRW50cnkgNjMyCisgICAgLTB4MS40OTkzZThhOGZmNzliMTMyMDQ2ZWZhNzg1NmE5NzUzOHAtNiwKKyAgICAtMHgxLjQ5OTk5OTk5OTk5OTlwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzMKKyAgICAweDEuYWNjMDQ0YzU2ZGIwZTE5ZjgyYzljM2NmZjI0NmUyMDFwLTYsCisgICAgMHgxLmFjY2NjY2NjY2NjY2NwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzQKKyAgICAtMHgxLmFjYzA0NGM1NmRiMGUxOWY4MmM5YzNjZmYyNDZlMjAxcC02LAorICAgIC0weDEuYWNjY2NjY2NjY2NjY3AtNgorICB9LAorICB7IC8vIEVudHJ5IDYzNQorICAgIDB4MS4wN2Y0NGQ2N2NmNDFhZmJjMGM5NTEwOGI5OWY5MWIwMXAtNSwKKyAgICAweDEuMDgwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjM2CisgICAgLTB4MS4wN2Y0NGQ2N2NmNDFhZmJjMGM5NTEwOGI5OWY5MWIwMXAtNSwKKyAgICAtMHgxLjA4MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDYzNworICAgIDB4MS4zOTg1ZmU0NmYxYzg3MTRlYWExNDE4NTYxOTYzZTg5YnAtNSwKKyAgICAweDEuMzk5OTk5OTk5OTk5YXAtNQorICB9LAorICB7IC8vIEVudHJ5IDYzOAorICAgIC0weDEuMzk4NWZlNDZmMWM4NzE0ZWFhMTQxODU2MTk2M2U4OWJwLTUsCisgICAgLTB4MS4zOTk5OTk5OTk5OTlhcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjM5CisgICAgMHgxLjZiMTRiZGU5M2FjNWY3ZDI0NTQ0ZDBlY2Y4YmU3YWVlcC01LAorICAgIDB4MS42YjMzMzMzMzMzMzM0cC01CisgIH0sCisgIHsgLy8gRW50cnkgNjQwCisgICAgLTB4MS42YjE0YmRlOTNhYzVmN2QyNDU0NGQwZWNmOGJlN2FlZXAtNSwKKyAgICAtMHgxLjZiMzMzMzMzMzMzMzRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDEKKyAgICAweDEuOWNhMDE1M2VkODM5NmIwMmY4NjA1MjE5YTVmZTU5MTdwLTUsCisgICAgMHgxLjljY2NjY2NjY2NjY2VwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDIKKyAgICAtMHgxLjljYTAxNTNlZDgzOTZiMDJmODYwNTIxOWE1ZmU1OTE3cC01LAorICAgIC0weDEuOWNjY2NjY2NjY2NjZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDY0MworICAgIDB4MS5jZTI3OGQ0MDI3ZDM0Mzg3ZjE4NGQ0YWIyYWFmNTQ1ZnAtNSwKKyAgICAweDEuY2U2NjY2NjY2NjY2NnAtNQorICB9LAorICB7IC8vIEVudHJ5IDY0NAorICAgIC0weDEuY2UyNzhkNDAyN2QzNDM4N2YxODRkNGFiMmFhZjU0NWZwLTUsCisgICAgLTB4MS5jZTY2NjY2NjY2NjY2cC01CisgIH0sCisgIHsgLy8gRW50cnkgNjQ1CisgICAgMHgxLjQzYzFlOWMxNzFhNjY3YTBiOTI1MTlhMDRmYTVhOTFjcC0xLAorICAgIDB4MS41ZTdmYzQzNjliZGFkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQ2CisgICAgLTB4MS40M2MxZTljMTcxYTY2N2EwYjkyNTE5YTA0ZmE1YTkxY3AtMSwKKyAgICAtMHgxLjVlN2ZjNDM2OWJkYWRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDcKKyAgICAweDEuZWUzZDZiY2VhMDljYTE4YjFkMWNlN2VlMDRmZDg4NmZwLTEsCisgICAgMHgxLjRlN2ZjNDM2OWJkYWRwMAorICB9LAorICB7IC8vIEVudHJ5IDY0OAorICAgIC0weDEuZWUzZDZiY2VhMDljYTE4YjFkMWNlN2VlMDRmZDg4NmZwLTEsCisgICAgLTB4MS40ZTdmYzQzNjliZGFkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDkKKyAgICAweDEuZGY4ZTIyZWE4MDlkNjVjNmE2OWI5NmFjYTYwYmU0MzJwLTEsCisgICAgMHgxLmVkYmZhNjUxZTljODRwMAorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIC0weDEuZGY4ZTIyZWE4MDlkNjVjNmE2OWI5NmFjYTYwYmU0MzJwLTEsCisgICAgLTB4MS5lZGJmYTY1MWU5Yzg0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTEKKyAgICAweDEuMWQzNDc5ZWFjN2FlMzVlMmZiZWEwYWU2OTY0MzQ2OTJwLTEsCisgICAgMHgxLjQ2N2ZjNDM2OWJkYWRwMQorICB9LAorICB7IC8vIEVudHJ5IDY1MgorICAgIC0weDEuMWQzNDc5ZWFjN2FlMzVlMmZiZWEwYWU2OTY0MzQ2OTJwLTEsCisgICAgLTB4MS40NjdmYzQzNjliZGFkcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTMKKyAgICAtMHgxLmZmZWFhYWVlZWU4NGI0NGNjZWZlZjgzMjI1NGQyOGMwcC02LAorICAgIDB4MS45NjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTQKKyAgICAweDEuZmZlYWFhZWVlZTg0YjQ0Y2NlZmVmODMyMjU0ZDI4YzBwLTYsCisgICAgLTB4MS45NjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTUKKyAgICAtMHgxLjM3MzRkMzJkNDliZDBiOTQyNzcyYTc1NjdkNTE0MTQwcC0xLAorICAgIDB4MS5lNWJmYTY1MWU5YzgzcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTYKKyAgICAweDEuMzczNGQzMmQ0OWJkMGI5NDI3NzJhNzU2N2Q1MTQxNDBwLTEsCisgICAgLTB4MS5lNWJmYTY1MWU5YzgzcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTcKKyAgICAtMHgxLmU5ZDI1ZDE5OTExZTIwNWI2NTM1MjFmNDJiOWI4NjRmcC0xLAorICAgIDB4MS4xYWFmY2JhZmM4NWY3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAweDEuZTlkMjVkMTk5MTFlMjA1YjY1MzUyMWY0MmI5Yjg2NGZwLTEsCisgICAgLTB4MS4xYWFmY2JhZmM4NWY3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTkKKyAgICAtMHgxLmU0ZWNkYzVhNGU0NjU4OTk5MjhlYjlmYzk1ODI5ZDQ4cC0xLAorICAgIDB4MS40MjdmYzQzNjliZGFkcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjAKKyAgICAweDEuZTRlY2RjNWE0ZTQ2NTg5OTkyOGViOWZjOTU4MjlkNDhwLTEsCisgICAgLTB4MS40MjdmYzQzNjliZGFkcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjEKKyAgICAtMHgxLjJhNTlmMTAzNDQyNjE5N2ZhNmVlZTIyNzYyOTY3ZjI1cC0xLAorICAgIDB4MS42YTRmYmNiZDZmNTYycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjIKKyAgICAweDEuMmE1OWYxMDM0NDI2MTk3ZmE2ZWVlMjI3NjI5NjdmMjVwLTEsCisgICAgLTB4MS42YTRmYmNiZDZmNTYycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjMKKyAgICAtMHgxLjI2MzEyNDQzYmQzNWYxOTMxMmVhYzBhMWE2YjU2NTllcC0xLAorICAgIDB4MS42YWYyZWZmMGEyODk2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjQKKyAgICAweDEuMjYzMTI0NDNiZDM1ZjE5MzEyZWFjMGExYTZiNTY1OWVwLTEsCisgICAgLTB4MS42YWYyZWZmMGEyODk2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjUKKyAgICAtMHgxLmUxOGU2NjBhNWUyZmIzMTZlY2JiOWVkNzAxMjJlZmY1cC0xLAorICAgIDB4MS40M2M2MmE5ZDAyNDE0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjYKKyAgICAweDEuZTE4ZTY2MGE1ZTJmYjMxNmVjYmI5ZWQ3MDEyMmVmZjVwLTEsCisgICAgLTB4MS40M2M2MmE5ZDAyNDE0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjcKKyAgICAtMHgxLmVlMGU4M2EwMTk4YjZlMmVmN2M0OGU2NjI1MjkxYTBhcC0xLAorICAgIDB4MS4xYzk5NjU0OTYxZjkycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjgKKyAgICAweDEuZWUwZTgzYTAxOThiNmUyZWY3YzQ4ZTY2MjUyOTFhMGFwLTEsCisgICAgLTB4MS4xYzk5NjU0OTYxZjkycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjkKKyAgICAtMHgxLjQ3Mjc3NDczMzhlNDY1MzYxNmVhZGJkN2VjM2QwMmQzcC0xLAorICAgIDB4MS5lYWQ5M2ZlYjgzNjFmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzAKKyAgICAweDEuNDcyNzc0NzMzOGU0NjUzNjE2ZWFkYmQ3ZWMzZDAyZDNwLTEsCisgICAgLTB4MS5lYWQ5M2ZlYjgzNjFmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzEKKyAgICAtMHgxLjRiYTJmNzVkZGE1ZmU0MzQzMjA5MDVhNzE4NGZmMWFmcC00LAorICAgIDB4MS45YzdmYjU0NDQyZDFhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzIKKyAgICAweDEuNGJhMmY3NWRkYTVmZTQzNDMyMDkwNWE3MTg0ZmYxYWZwLTQsCisgICAgLTB4MS45YzdmYjU0NDQyZDFhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzMKKyAgICAweDEuMDM0YzRkNjMzYjRlZjBhOTA4OWI0Mzg5MmE0NjJhMjZwLTEsCisgICAgMHgxLjRlMjYyYTlkMDI0MTVwMQorICB9LAorICB7IC8vIEVudHJ5IDY3NAorICAgIC0weDEuMDM0YzRkNjMzYjRlZjBhOTA4OWI0Mzg5MmE0NjJhMjZwLTEsCisgICAgLTB4MS40ZTI2MmE5ZDAyNDE1cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzUKKyAgICAweDEuZDFlNGNkZTJmMzk0NGY0YzEzNGMwNWNjNGU1MzM5YTNwLTEsCisgICAgMHgxLmZmOTkzZmViODM2MjBwMAorICB9LAorICB7IC8vIEVudHJ5IDY3NgorICAgIC0weDEuZDFlNGNkZTJmMzk0NGY0YzEzNGMwNWNjNGU1MzM5YTNwLTEsCisgICAgLTB4MS5mZjk5M2ZlYjgzNjIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzcKKyAgICAweDEuZjc1MDIzNWM5NDk5MjZjNDhjOTBlNDFhOTE0NzRjMDZwLTEsCisgICAgMHgxLjYyZTYyYTlkMDI0MTZwMAorICB9LAorICB7IC8vIEVudHJ5IDY3OAorICAgIC0weDEuZjc1MDIzNWM5NDk5MjZjNDhjOTBlNDFhOTE0NzRjMDZwLTEsCisgICAgLTB4MS42MmU2MmE5ZDAyNDE2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzkKKyAgICAweDEuNjVmN2Q1NzEyNzliMGI4MDA1NTUyZmQ0N2EyZTc3YWVwLTEsCisgICAgMHgxLjhjNjYyYTlkMDI0MTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODAKKyAgICAtMHgxLjY1ZjdkNTcxMjc5YjBiODAwNTU1MmZkNDdhMmU3N2FlcC0xLAorICAgIC0weDEuOGM2NjJhOWQwMjQxOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY4MQorICAgIC0weDEuZmUwNDNmNTczNjlkNmE1MmZhMzNmMDExOWVjNGRhMTlwLTEsCisgICAgLTB4MS5hOGFhMWQxMWM0NGZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODIKKyAgICAweDEuZmUwNDNmNTczNjlkNmE1MmZhMzNmMDExOWVjNGRhMTlwLTEsCisgICAgMHgxLmE4YWExZDExYzQ0ZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDY4MworICAgIC0weDEuZmZmMThmMjRmM2U0Yjg3YmY4YzM3NjJjYjQ0ZjQ2ZDZwLTEsCisgICAgLTB4MS45NWVjOGI5ZTAzZDU0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODQKKyAgICAweDEuZmZmMThmMjRmM2U0Yjg3YmY4YzM3NjJjYjQ0ZjQ2ZDZwLTEsCisgICAgMHgxLjk1ZWM4YjllMDNkNTRwMAorICB9LAorICB7IC8vIEVudHJ5IDY4NQorICAgIC0weDEuZmYyMGQ5NjE2MjRlNzA2M2E3ODIwM2I4MTFmNTc5Y2FwLTEsCisgICAgLTB4MS44MzJlZmEyYTQzNWE5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODYKKyAgICAweDEuZmYyMGQ5NjE2MjRlNzA2M2E3ODIwM2I4MTFmNTc5Y2FwLTEsCisgICAgMHgxLjgzMmVmYTJhNDM1YTlwMAorICB9LAorICB7IC8vIEVudHJ5IDY4NworICAgIC0weDEuZmI5MzNjNDAxMDdmZDc3NTE4NWFjMTQ5MThjOGZiYWZwLTEsCisgICAgLTB4MS43MDcxNjhiNjgyZGZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODgKKyAgICAweDEuZmI5MzNjNDAxMDdmZDc3NTE4NWFjMTQ5MThjOGZiYWZwLTEsCisgICAgMHgxLjcwNzE2OGI2ODJkZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDY4OQorICAgIC0weDEuZjU0ZDk3MTg4MWFkNjg1Yjc4MmVmODhlNjM1MGY3Y2RwLTEsCisgICAgLTB4MS41ZGIzZDc0MmMyNjUzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTAKKyAgICAweDEuZjU0ZDk3MTg4MWFkNjg1Yjc4MmVmODhlNjM1MGY3Y2RwLTEsCisgICAgMHgxLjVkYjNkNzQyYzI2NTNwMAorICB9LAorICB7IC8vIEVudHJ5IDY5MQorICAgIC0weDEuZWM1ODgzYjdiNmNmNGQ4NTlhYjA0ZTE1ZDUzNjk4YzlwLTEsCisgICAgLTB4MS40YWY2NDVjZjAxZWE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTIKKyAgICAweDEuZWM1ODgzYjdiNmNmNGQ4NTlhYjA0ZTE1ZDUzNjk4YzlwLTEsCisgICAgMHgxLjRhZjY0NWNmMDFlYThwMAorICB9LAorICB7IC8vIEVudHJ5IDY5MworICAgIC0weDEuZTBjMDRhOTRlMTczMDljODA2YzFjNzhiZGRjMWQ2MDdwLTEsCisgICAgLTB4MS4zODM4YjQ1YjQxNmZkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTQKKyAgICAweDEuZTBjMDRhOTRlMTczMDljODA2YzFjNzhiZGRjMWQ2MDdwLTEsCisgICAgMHgxLjM4MzhiNDViNDE2ZmRwMAorICB9LAorICB7IC8vIEVudHJ5IDY5NQorICAgIC0weDEuZDI5NGQxZjk2YzdlYmRiOTg2OWRkOTdjZjU3NGRkYjlwLTEsCisgICAgLTB4MS4yNTdiMjJlNzgwZjUycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTYKKyAgICAweDEuZDI5NGQxZjk2YzdlYmRiOTg2OWRkOTdjZjU3NGRkYjlwLTEsCisgICAgMHgxLjI1N2IyMmU3ODBmNTJwMAorICB9LAorICB7IC8vIEVudHJ5IDY5NworICAgIC0weDEuYzFlOTg4MzM3M2Q3ZWNjNDhjOTJkYzg4NzU1MDVmN2VwLTEsCisgICAgLTB4MS4xMmJkOTE3M2MwN2FicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTgKKyAgICAweDEuYzFlOTg4MzM3M2Q3ZWNjNDhjOTJkYzg4NzU1MDVmN2VwLTEsCisgICAgMHgxLjEyYmQ5MTczYzA3YWJwMAorICB9LAorICB7IC8vIEVudHJ5IDY5OQorICAgIC0weDEuYTJjMjg5ZDlkMDU1YWMzNzdmNjdkN2E1NGEwYjMwMDVwLTEsCisgICAgLTB4MS5lYTVjM2VkNWIzODUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzAwCisgICAgMHgxLmEyYzI4OWQ5ZDA1NWFjMzc3ZjY3ZDdhNTRhMGIzMDA1cC0xLAorICAgIDB4MS5lYTVjM2VkNWIzODUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzAxCisgICAgLTB4MS45NWYwNTI1N2RiY2I1ZjRiMTI2MzZjNTg3OGVhNDA1YXAtMSwKKyAgICAtMHgxLmQ0Yjg3ZGFiNjcwYTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDIKKyAgICAweDEuOTVmMDUyNTdkYmNiNWY0YjEyNjM2YzU4NzhlYTQwNWFwLTEsCisgICAgMHgxLmQ0Yjg3ZGFiNjcwYTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDMKKyAgICAtMHgxLjg4NjQ3ZjI2YTZlMGY2YjI3MTVhNmMzNzk3ZWMxMWY1cC0xLAorICAgIC0weDEuYmYxNGJjODExYThmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwNAorICAgIDB4MS44ODY0N2YyNmE2ZTBmNmIyNzE1YTZjMzc5N2VjMTFmNXAtMSwKKyAgICAweDEuYmYxNGJjODExYThmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwNQorICAgIC0weDEuN2EyNTQxZGZkNGU3NTJkZTM4ZjA0YWJhMjFmYzlkOWZwLTEsCisgICAgLTB4MS5hOTcwZmI1NmNlMTQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzA2CisgICAgMHgxLjdhMjU0MWRmZDRlNzUyZGUzOGYwNGFiYTIxZmM5ZDlmcC0xLAorICAgIDB4MS5hOTcwZmI1NmNlMTQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzA3CisgICAgLTB4MS42YjM5MWUyNWJjMjZjYmJjZjdhMDE4NDA3MGFmOWMzOXAtMSwKKyAgICAtMHgxLjkzY2QzYTJjODE5OTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDgKKyAgICAweDEuNmIzOTFlMjViYzI2Y2JiY2Y3YTAxODQwNzBhZjljMzlwLTEsCisgICAgMHgxLjkzY2QzYTJjODE5OTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDkKKyAgICAtMHgxLjViYTZlNmE4ZTcwNjUzNWI5OGZjOTlkZmFlZjgyNGYxcC0xLAorICAgIC0weDEuN2UyOTc5MDIzNTFlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxMAorICAgIDB4MS41YmE2ZTZhOGU3MDY1MzViOThmYzk5ZGZhZWY4MjRmMXAtMSwKKyAgICAweDEuN2UyOTc5MDIzNTFlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxMQorICAgIC0weDEuNGI3NWJhMDk2ZmE1NDllYjkzNTk1ZDgxOTRhYjkxN2ZwLTEsCisgICAgLTB4MS42ODg1YjdkN2U4YTMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzEyCisgICAgMHgxLjRiNzViYTA5NmZhNTQ5ZWI5MzU5NWQ4MTk0YWI5MTdmcC0xLAorICAgIDB4MS42ODg1YjdkN2U4YTMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzEzCisgICAgLTB4MS4zYWFjZmY5NWEzMTIyYjE1ZjM3MmJmZDJmZGY5YTc1ZnAtMSwKKyAgICAtMHgxLjUyZTFmNmFkOWMyODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTQKKyAgICAweDEuM2FhY2ZmOTVhMzEyMmIxNWYzNzJiZmQyZmRmOWE3NWZwLTEsCisgICAgMHgxLjUyZTFmNmFkOWMyODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTUKKyAgICAtMHgxLjI5NTQ2M2U3NjkyODRhNWFlZDE3YTQ0MzM5MmYzOGYzcC0xLAorICAgIC0weDEuM2QzZTM1ODM0ZmFkMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxNgorICAgIDB4MS4yOTU0NjNlNzY5Mjg0YTVhZWQxN2E0NDMzOTJmMzhmM3AtMSwKKyAgICAweDEuM2QzZTM1ODM0ZmFkMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxNworICAgIC0weDEuZmM3NjliNzdlNTg4NDk1YTZmNjQyY2EyNGU0ZWQzZmNwLTIsCisgICAgLTB4MS4wYTBiMDI1MDFjNzk5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzE4CisgICAgMHgxLmZjNzY5Yjc3ZTU4ODQ5NWE2ZjY0MmNhMjRlNGVkM2ZjcC0yLAorICAgIDB4MS4wYTBiMDI1MDFjNzk5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzE5CisgICAgLTB4MS5jODUzYzc4NDYyZGU0NmI1NzQzMzE1NjEyZjhiNWE3Y3AtMiwKKyAgICAtMHgxLmQ4ZjcyMDhlNmI4MmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjAKKyAgICAweDEuYzg1M2M3ODQ2MmRlNDZiNTc0MzMxNTYxMmY4YjVhN2NwLTIsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjEKKyAgICAtMHgxLjkyYWJhOTBhYWYyNzI0OWRlNDljNzhmYzY0M2M4YjcycC0yLAorICAgIC0weDEuOWRkODNjN2M5ZTEyNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDcyMgorICAgIDB4MS45MmFiYTkwYWFmMjcyNDlkZTQ5Yzc4ZmM2NDNjOGI3MnAtMiwKKyAgICAweDEuOWRkODNjN2M5ZTEyNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDcyMworICAgIC0weDEuNWJhYzA2NDY1OGYzOTQ2MGM4MzExM2MwYTAwOTdhMGNwLTIsCisgICAgLTB4MS42MmI5NTg2YWQwYTIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzI0CisgICAgMHgxLjViYWMwNjQ2NThmMzk0NjBjODMxMTNjMGEwMDk3YTBjcC0yLAorICAgIDB4MS42MmI5NTg2YWQwYTIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzI1CisgICAgLTB4MS4yMzgzY2E4MDc4ZTU4NDc3Y2Q1ZmIxZDlkZTAzMWRjZXAtMiwKKyAgICAtMHgxLjI3OWE3NDU5MDMzMWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjYKKyAgICAweDEuMjM4M2NhODA3OGU1ODQ3N2NkNWZiMWQ5ZGUwMzFkY2VwLTIsCisgICAgMHgxLjI3OWE3NDU5MDMzMWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjcKKyAgICAtMHgxLmQ0YzViYzExZDIzNzFhZjJmZTI1ZWY1ZWRlMjc2NmEzcC0zLAorICAgIC0weDEuZDhmNzIwOGU2YjgyOXAtMworICB9LAorICB7IC8vIEVudHJ5IDcyOAorICAgIDB4MS5kNGM1YmMxMWQyMzcxYWYyZmUyNWVmNWVkZTI3NjZhM3AtMywKKyAgICAweDEuZDhmNzIwOGU2YjgyOXAtMworICB9LAorICB7IC8vIEVudHJ5IDcyOQorICAgIC0weDEuNjBmM2ZhYWY0MzAyM2QzYzc4NjNhZTA2ZDRkNTk3NzRwLTMsCisgICAgLTB4MS42MmI5NTg2YWQwYTFlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzMwCisgICAgMHgxLjYwZjNmYWFmNDMwMjNkM2M3ODYzYWUwNmQ0ZDU5Nzc0cC0zLAorICAgIDB4MS42MmI5NTg2YWQwYTFlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzMxCisgICAgLTB4MS5kN2VhM2RlNDVhOWQ2NTYzYWMwMDVjMGM1YmFkOGM1MHAtNCwKKyAgICAtMHgxLmQ4ZjcyMDhlNmI4MjZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzIKKyAgICAweDEuZDdlYTNkZTQ1YTlkNjU2M2FjMDA1YzBjNWJhZDhjNTBwLTQsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MjZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzMKKyAgICAtMHgxLmQ4YjNkZjQ4OTk4N2E2ZmUwZWVhZDAwOGU3MjBhYTIycC01LAorICAgIC0weDEuZDhmNzIwOGU2YjgyZHAtNQorICB9LAorICB7IC8vIEVudHJ5IDczNAorICAgIDB4MS5kOGIzZGY0ODk5ODdhNmZlMGVlYWQwMDhlNzIwYWEyMnAtNSwKKyAgICAweDEuZDhmNzIwOGU2YjgyZHAtNQorICB9LAorICB7IC8vIEVudHJ5IDczNQorICAgIDB4MS5kOGIzZGY0ODk5ODdhNmZlMGVlYWQwMDhlNzIwYWEyMnAtNSwKKyAgICAweDEuZDhmNzIwOGU2YjgyZHAtNQorICB9LAorICB7IC8vIEVudHJ5IDczNgorICAgIC0weDEuZDhiM2RmNDg5OTg3YTZmZTBlZWFkMDA4ZTcyMGFhMjJwLTUsCisgICAgLTB4MS5kOGY3MjA4ZTZiODJkcC01CisgIH0sCisgIHsgLy8gRW50cnkgNzM3CisgICAgMHgxLmQ3ZWEzZGU0NWE5ZGQ0YTRiY2NkMWE4YzA0OGZhZjRjcC00LAorICAgIDB4MS5kOGY3MjA4ZTZiODJkcC00CisgIH0sCisgIHsgLy8gRW50cnkgNzM4CisgICAgLTB4MS5kN2VhM2RlNDVhOWRkNGE0YmNjZDFhOGMwNDhmYWY0Y3AtNCwKKyAgICAtMHgxLmQ4ZjcyMDhlNmI4MmRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzkKKyAgICAweDEuNjBmM2ZhYWY0MzAyN2M0NzUyZjU2NGY5ZDA4MThmZThwLTMsCisgICAgMHgxLjYyYjk1ODZhZDBhMjJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDAKKyAgICAtMHgxLjYwZjNmYWFmNDMwMjdjNDc1MmY1NjRmOWQwODE4ZmU4cC0zLAorICAgIC0weDEuNjJiOTU4NmFkMGEyMnAtMworICB9LAorICB7IC8vIEVudHJ5IDc0MQorICAgIDB4MS5kNGM1YmMxMWQyMzc1OTQwMDY0MmU1YTFlZmRjMGY4NXAtMywKKyAgICAweDEuZDhmNzIwOGU2YjgyZHAtMworICB9LAorICB7IC8vIEVudHJ5IDc0MgorICAgIC0weDEuZDRjNWJjMTFkMjM3NTk0MDA2NDJlNWExZWZkYzBmODVwLTMsCisgICAgLTB4MS5kOGY3MjA4ZTZiODJkcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzQzCisgICAgMHgxLjIzODNjYTgwNzhlNWEzMjRkNTJjMTUzMDc0MmNkNGY1cC0yLAorICAgIDB4MS4yNzlhNzQ1OTAzMzFjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzQ0CisgICAgLTB4MS4yMzgzY2E4MDc4ZTVhMzI0ZDUyYzE1MzA3NDJjZDRmNXAtMiwKKyAgICAtMHgxLjI3OWE3NDU5MDMzMWNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDUKKyAgICAweDEuNWJhYzA2NDY1OGYzYjI3YTI4NTcyYmVhMjU2MTk1ZWZwLTIsCisgICAgMHgxLjYyYjk1ODZhZDBhMjJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDYKKyAgICAtMHgxLjViYWMwNjQ2NThmM2IyN2EyODU3MmJlYTI1NjE5NWVmcC0yLAorICAgIC0weDEuNjJiOTU4NmFkMGEyMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDc0NworICAgIDB4MS45MmFiYTkwYWFmMjc0MjA5ZWZhZWQwOGUzNDA3MWUzYnAtMiwKKyAgICAweDEuOWRkODNjN2M5ZTEyOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc0OAorICAgIC0weDEuOTJhYmE5MGFhZjI3NDIwOWVmYWVkMDhlMzQwNzFlM2JwLTIsCisgICAgLTB4MS45ZGQ4M2M3YzllMTI4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzQ5CisgICAgMHgxLmM4NTNjNzg0NjJkZTYzNWIxMGEyYjkzYWZkNzVkYTI2cC0yLAorICAgIDB4MS5kOGY3MjA4ZTZiODJlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzUwCisgICAgLTB4MS5jODUzYzc4NDYyZGU2MzViMTBhMmI5M2FmZDc1ZGEyNnAtMiwKKyAgICAtMHgxLmQ4ZjcyMDhlNmI4MmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTEKKyAgICAweDEuZmM3NjliNzdlNTg4NDk1YTZmNjQyY2EyNGU0ZWQzZmNwLTIsCisgICAgMHgxLjBhMGIwMjUwMWM3OTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTIKKyAgICAtMHgxLmZjNzY5Yjc3ZTU4ODQ5NWE2ZjY0MmNhMjRlNGVkM2ZjcC0yLAorICAgIC0weDEuMGEwYjAyNTAxYzc5OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDc1MworICAgIDB4MS4yOTU0NjNlNzY5MjgxNjQwYWUwMjZmNTBmYzQ1ZTMwMXAtMSwKKyAgICAweDEuM2QzZTM1ODM0ZmFjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDc1NAorICAgIC0weDEuMjk1NDYzZTc2OTI4MTY0MGFlMDI2ZjUwZmM0NWUzMDFwLTEsCisgICAgLTB4MS4zZDNlMzU4MzRmYWNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzU1CisgICAgMHgxLjNhYWNmZjk1YTMxMWY4OTlhMGUyNzk1MzVlODFjNGVjcC0xLAorICAgIDB4MS41MmUxZjZhZDljMjdjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzU2CisgICAgLTB4MS4zYWFjZmY5NWEzMTFmODk5YTBlMjc5NTM1ZTgxYzRlY3AtMSwKKyAgICAtMHgxLjUyZTFmNmFkOWMyN2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTcKKyAgICAweDEuNGI3NWJhMDk2ZmE1MTkyNDQyYjc5NTBmOTYwZjgwMDZwLTEsCisgICAgMHgxLjY4ODViN2Q3ZThhMmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTgKKyAgICAtMHgxLjRiNzViYTA5NmZhNTE5MjQ0MmI3OTUwZjk2MGY4MDA2cC0xLAorICAgIC0weDEuNjg4NWI3ZDdlOGEyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDc1OQorICAgIDB4MS41YmE2ZTZhOGU3MDYyNDVmOTdlMjhhZjNkZGI3MDBmNnAtMSwKKyAgICAweDEuN2UyOTc5MDIzNTFkY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDc2MAorICAgIC0weDEuNWJhNmU2YThlNzA2MjQ1Zjk3ZTI4YWYzZGRiNzAwZjZwLTEsCisgICAgLTB4MS43ZTI5NzkwMjM1MWRjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzYxCisgICAgMHgxLjZiMzkxZTI1YmMyNjllYTFjMWE0MGRlNjJmYmMwM2I0cC0xLAorICAgIDB4MS45M2NkM2EyYzgxOThjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzYyCisgICAgLTB4MS42YjM5MWUyNWJjMjY5ZWExYzFhNDBkZTYyZmJjMDNiNHAtMSwKKyAgICAtMHgxLjkzY2QzYTJjODE5OGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjMKKyAgICAweDEuN2EyNTQxZGZkNGU3MjdiODZkZDMwOTY2NDE4NmVjNmJwLTEsCisgICAgMHgxLmE5NzBmYjU2Y2UxM2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjQKKyAgICAtMHgxLjdhMjU0MWRmZDRlNzI3Yjg2ZGQzMDk2NjQxODZlYzZicC0xLAorICAgIC0weDEuYTk3MGZiNTZjZTEzY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDc2NQorICAgIDB4MS44ODY0N2YyNmE2ZTBjZDk1Y2I5OTFmN2ZmZTYxYTAyZXAtMSwKKyAgICAweDEuYmYxNGJjODExYThlY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDc2NgorICAgIC0weDEuODg2NDdmMjZhNmUwY2Q5NWNiOTkxZjdmZmU2MWEwMmVwLTEsCisgICAgLTB4MS5iZjE0YmM4MTFhOGVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzY3CisgICAgMHgxLjk1ZjA1MjU3ZGJjYjM4NGE1ZTMyNjg1NzM3NmRkODAxcC0xLAorICAgIDB4MS5kNGI4N2RhYjY3MDljcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzY4CisgICAgLTB4MS45NWYwNTI1N2RiY2IzODRhNWUzMjY4NTczNzZkZDgwMXAtMSwKKyAgICAtMHgxLmQ0Yjg3ZGFiNjcwOWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjkKKyAgICAweDEuYTJjMjg5ZDlkMDU1ODc2NDkyMWE0ZGUzNTVmOTQ0OGNwLTEsCisgICAgMHgxLmVhNWMzZWQ1YjM4NGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzAKKyAgICAtMHgxLmEyYzI4OWQ5ZDA1NTg3NjQ5MjFhNGRlMzU1Zjk0NDhjcC0xLAorICAgIC0weDEuZWE1YzNlZDViMzg0Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDc3MQorICAgIDB4MS5jMWU5ODgzMzczZDdlY2M0OGM5MmRjODg3NTUwNWY3ZXAtMSwKKyAgICAweDEuMTJiZDkxNzNjMDdhYnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzcyCisgICAgLTB4MS5jMWU5ODgzMzczZDdlY2M0OGM5MmRjODg3NTUwNWY3ZXAtMSwKKyAgICAtMHgxLjEyYmQ5MTczYzA3YWJwMAorICB9LAorICB7IC8vIEVudHJ5IDc3MworICAgIDB4MS5kMjk0ZDFmOTZjN2VmMjZlMjAzYzViMzA5YTU1NjcxZnAtMSwKKyAgICAweDEuMjU3YjIyZTc4MGY1NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzc0CisgICAgLTB4MS5kMjk0ZDFmOTZjN2VmMjZlMjAzYzViMzA5YTU1NjcxZnAtMSwKKyAgICAtMHgxLjI1N2IyMmU3ODBmNTZwMAorICB9LAorICB7IC8vIEVudHJ5IDc3NQorICAgIDB4MS5lMGMwNGE5NGUxNzMzNWQwNzMwNTJhMDM5NGI5ZTFjM3AtMSwKKyAgICAweDEuMzgzOGI0NWI0MTcwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzc2CisgICAgLTB4MS5lMGMwNGE5NGUxNzMzNWQwNzMwNTJhMDM5NGI5ZTFjM3AtMSwKKyAgICAtMHgxLjM4MzhiNDViNDE3MDFwMAorICB9LAorICB7IC8vIEVudHJ5IDc3NworICAgIDB4MS5lYzU4ODNiN2I2Y2Y3MGE1NzdkZDkxNjBkMGY4ZTlkNXAtMSwKKyAgICAweDEuNGFmNjQ1Y2YwMWVhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNzc4CisgICAgLTB4MS5lYzU4ODNiN2I2Y2Y3MGE1NzdkZDkxNjBkMGY4ZTlkNXAtMSwKKyAgICAtMHgxLjRhZjY0NWNmMDFlYWNwMAorICB9LAorICB7IC8vIEVudHJ5IDc3OQorICAgIDB4MS5mNTRkOTcxODgxYWQ4MjYyOWJkODRkMjE0MTk0ZThkZHAtMSwKKyAgICAweDEuNWRiM2Q3NDJjMjY1N3AwCisgIH0sCisgIHsgLy8gRW50cnkgNzgwCisgICAgLTB4MS5mNTRkOTcxODgxYWQ4MjYyOWJkODRkMjE0MTk0ZThkZHAtMSwKKyAgICAtMHgxLjVkYjNkNzQyYzI2NTdwMAorICB9LAorICB7IC8vIEVudHJ5IDc4MQorICAgIDB4MS5mYjkzM2M0MDEwN2ZlODNmZDE2YzE3ODllMjdmNjlmN3AtMSwKKyAgICAweDEuNzA3MTY4YjY4MmUwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzgyCisgICAgLTB4MS5mYjkzM2M0MDEwN2ZlODNmZDE2YzE3ODllMjdmNjlmN3AtMSwKKyAgICAtMHgxLjcwNzE2OGI2ODJlMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDc4MworICAgIDB4MS5mZjIwZDk2MTYyNGU3N2RhZWYzMjliNDAyOWMzNjJkZXAtMSwKKyAgICAweDEuODMyZWZhMmE0MzVhZHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzg0CisgICAgLTB4MS5mZjIwZDk2MTYyNGU3N2RhZWYzMjliNDAyOWMzNjJkZXAtMSwKKyAgICAtMHgxLjgzMmVmYTJhNDM1YWRwMAorICB9LAorICB7IC8vIEVudHJ5IDc4NQorICAgIDB4MS5mZmYxOGYyNGYzZTRiNjk1OTIyOTRmMjA2ZDdiMzJjMnAtMSwKKyAgICAweDEuOTVlYzhiOWUwM2Q1OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzg2CisgICAgLTB4MS5mZmYxOGYyNGYzZTRiNjk1OTIyOTRmMjA2ZDdiMzJjMnAtMSwKKyAgICAtMHgxLjk1ZWM4YjllMDNkNThwMAorICB9LAorICB7IC8vIEVudHJ5IDc4NworICAgIDB4MS5mZTA0M2Y1NzM2OWQ2YTUyZmEzM2YwMTE5ZWM0ZGExOXAtMSwKKyAgICAweDEuYThhYTFkMTFjNDRmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzg4CisgICAgLTB4MS5mZTA0M2Y1NzM2OWQ2YTUyZmEzM2YwMTE5ZWM0ZGExOXAtMSwKKyAgICAtMHgxLmE4YWExZDExYzQ0ZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDc4OQorICAgIDB4MS5iM2QzNjk1YWNjNDEzNmIyZDQ0NzE0ZjliMzg0MTliNHAtMSwKKyAgICAweDEuMDRhZmY2ZDMzMDk0MnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzkwCisgICAgLTB4MS5iM2QzNjk1YWNjNDEzNmIyZDQ0NzE0ZjliMzg0MTliNHAtMSwKKyAgICAtMHgxLjA0YWZmNmQzMzA5NDJwMAorICB9LAorICB7IC8vIEVudHJ5IDc5MQorICAgIDB4MS5iM2Q0MTk3MmRjODA2Mzk5NGY2MzQxM2Q1ZTRkOGU0YnAtMSwKKyAgICAweDEuMDRiMDllOThkY2RiNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzkyCisgICAgLTB4MS5iM2Q0MTk3MmRjODA2Mzk5NGY2MzQxM2Q1ZTRkOGU0YnAtMSwKKyAgICAtMHgxLjA0YjA5ZTk4ZGNkYjRwMAorICB9LAorICB7IC8vIEVudHJ5IDc5MworICAgIDB4MS5iM2Q0Yzk4YTMxOGZiNjZmODIxZDcyODZhZTdkY2U3YnAtMSwKKyAgICAweDEuMDRiMTQ2NWU4OTIyNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzk0CisgICAgLTB4MS5iM2Q0Yzk4YTMxOGZiNjZmODIxZDcyODZhZTdkY2U3YnAtMSwKKyAgICAtMHgxLjA0YjE0NjVlODkyMjZwMAorICB9LAorICB7IC8vIEVudHJ5IDc5NQorICAgIDB4MS5iM2Q1NzlhMGNiNmVlMzkzZmY3NWI1OGZmZTE2ZDEzZnAtMSwKKyAgICAweDEuMDRiMWVlMjQzNTY5OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzk2CisgICAgLTB4MS5iM2Q1NzlhMGNiNmVlMzkzZmY3NWI1OGZmZTE2ZDEzZnAtMSwKKyAgICAtMHgxLjA0YjFlZTI0MzU2OThwMAorICB9LAorICB7IC8vIEVudHJ5IDc5NworICAgIDB4MS5iM2Q2MjliNmFhMWQ5ZjY1YWFkMWEyZmM5MzJjOGJjYnAtMSwKKyAgICAweDEuMDRiMjk1ZTllMWIwYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzk4CisgICAgLTB4MS5iM2Q2MjliNmFhMWQ5ZjY1YWFkMWEyZmM5MzJjOGJjYnAtMSwKKyAgICAtMHgxLjA0YjI5NWU5ZTFiMGFwMAorICB9LAorICB7IC8vIEVudHJ5IDc5OQorICAgIDB4MS5iM2Q2ZDljYmNkOWI5ZTQzYjdmYzdmZDQyOGE0NGRkOHAtMSwKKyAgICAweDEuMDRiMzNkYWY4ZGY3Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgODAwCisgICAgLTB4MS5iM2Q2ZDljYmNkOWI5ZTQzYjdmYzdmZDQyOGE0NGRkOHAtMSwKKyAgICAtMHgxLjA0YjMzZGFmOGRmN2NwMAorICB9LAorICB7IC8vIEVudHJ5IDgwMQorICAgIDB4MS5iM2Q3ODllMDM1ZTg5NDhkYWIyNzVkZmU1NDZjNWIwOHAtMSwKKyAgICAweDEuMDRiM2U1NzUzYTNlZXAwCisgIH0sCisgIHsgLy8gRW50cnkgODAyCisgICAgLTB4MS5iM2Q3ODllMDM1ZTg5NDhkYWIyNzVkZmU1NDZjNWIwOHAtMSwKKyAgICAtMHgxLjA0YjNlNTc1M2EzZWVwMAorICB9LAorICB7IC8vIEVudHJ5IDgwMworICAgIDB4MS5iM2Q4MzlmM2UzMDQzNmEzNThlOTNjYmRjYjJiYjM2N3AtMSwKKyAgICAweDEuMDRiNDhkM2FlNjg2MHAwCisgIH0sCisgIHsgLy8gRW50cnkgODA0CisgICAgLTB4MS5iM2Q4MzlmM2UzMDQzNmEzNThlOTNjYmRjYjJiYjM2N3AtMSwKKyAgICAtMHgxLjA0YjQ4ZDNhZTY4NjBwMAorICB9LAorICB7IC8vIEVudHJ5IDgwNQorICAgIDB4MS5iM2Q4ZWEwNmQ0ZWUwNjg0ZjU3NDFlYzc3N2VkODhlMHAtMSwKKyAgICAweDEuMDRiNTM1MDA5MmNjZnAwCisgIH0sCisgIHsgLy8gRW50cnkgODA2CisgICAgLTB4MS5iM2Q4ZWEwNmQ0ZWUwNjg0ZjU3NDFlYzc3N2VkODhlMHAtMSwKKyAgICAtMHgxLjA0YjUzNTAwOTJjY2ZwMAorICB9LAorICB7IC8vIEVudHJ5IDgwNworICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODA4CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODA5CisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgODEwCisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgODExCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTIKKyAgICAweDEuMTc3M2Q1NjFmZDUwNjVkMGU5NjA3YTcyOGEzOWVlZDJwLTEsCisgICAgMHgxLjI3OWE3NDU5MDMzMWJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTMKKyAgICAtMHgxLjE3NzNkNTYxZmQ1MDY1ZDBlOTYwN2E3MjhhMzllZWQycC0xLAorICAgIC0weDEuMjc5YTc0NTkwMzMxYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDgxNAorICAgIDB4MS4xNzczZDU2MWZkNTA3MzM4ZmY5YzA4OGQ4MGM2ODBkYnAtMSwKKyAgICAweDEuMjc5YTc0NTkwMzMxY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDgxNQorICAgIC0weDEuMTc3M2Q1NjFmZDUwNzMzOGZmOWMwODhkODBjNjgwZGJwLTEsCisgICAgLTB4MS4yNzlhNzQ1OTAzMzFjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODE2CisgICAgMHgxLjE3NzNkNTYxZmQ1MDgwYTExNWQ3OTZhODc3MGQzNWVmcC0xLAorICAgIDB4MS4yNzlhNzQ1OTAzMzFkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODE3CisgICAgLTB4MS4xNzczZDU2MWZkNTA4MGExMTVkNzk2YTg3NzBkMzVlZnAtMSwKKyAgICAtMHgxLjI3OWE3NDU5MDMzMWRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTgKKyAgICAweDEuZjk1YjhlNzEwNzQxOGMxMWM5NGQ0YTU0YTlkYTliN2FwLTEsCisgICAgMHgxLmJiNjdhZTg1ODRjYTlwMAorICB9LAorICB7IC8vIEVudHJ5IDgxOQorICAgIC0weDEuZjk1YjhlNzEwNzQxOGMxMWM5NGQ0YTU0YTlkYTliN2FwLTEsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2E5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjAKKyAgICAweDEuZjk1YjhlNzEwNzQxODZlZTgxZDVmZjg5ZDhmYWU1NDVwLTEsCisgICAgMHgxLmJiNjdhZTg1ODRjYWFwMAorICB9LAorICB7IC8vIEVudHJ5IDgyMQorICAgIC0weDEuZjk1YjhlNzEwNzQxODZlZTgxZDVmZjg5ZDhmYWU1NDVwLTEsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2FhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjIKKyAgICAweDEuZjk1YjhlNzEwNzQxODFjYjNhNWViNGJmMDYyMWQzODFwLTEsCisgICAgMHgxLmJiNjdhZTg1ODRjYWJwMAorICB9LAorICB7IC8vIEVudHJ5IDgyMworICAgIC0weDEuZjk1YjhlNzEwNzQxODFjYjNhNWViNGJmMDYyMWQzODFwLTEsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2FicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjQKKyAgICAweDEuYjFkODMwNTMyMTYxNWFjOTM4Y2ZmMDJiZTlmMjUwODVwLTIsCisgICAgMHgxLmJmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjUKKyAgICAtMHgxLmIxZDgzMDUzMjE2MTVhYzkzOGNmZjAyYmU5ZjI1MDg1cC0yLAorICAgIC0weDEuYmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDgyNgorICAgIDB4MS5iMWQ4MzA1MzIxNjE2OTQ3NmY0ZDE5ODJiOWIxNGFiMXAtMiwKKyAgICAweDEuY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDgyNworICAgIC0weDEuYjFkODMwNTMyMTYxNjk0NzZmNGQxOTgyYjliMTRhYjFwLTIsCisgICAgLTB4MS5jcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODI4CisgICAgMHgxLmIxZDgzMDUzMjE2MTc3YzVhNWNhNDJkOTg5NTUyNzVhcC0yLAorICAgIDB4MS5jMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODI5CisgICAgLTB4MS5iMWQ4MzA1MzIxNjE3N2M1YTVjYTQyZDk4OTU1Mjc1YXAtMiwKKyAgICAtMHgxLmMwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzAKKyAgICAweDEuNDRlYjM4MWNmMzg2OWVhNzFjY2IzNjg2M2U0ZWE2NWJwLTEsCisgICAgMHgxLjVmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzEKKyAgICAtMHgxLjQ0ZWIzODFjZjM4NjllYTcxY2NiMzY4NjNlNGVhNjVicC0xLAorICAgIC0weDEuNWZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDgzMgorICAgIDB4MS40NGViMzgxY2YzODZhYjA0YTRmODY1NmFiZWE4MGI4M3AtMSwKKyAgICAweDEuNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDgzMworICAgIC0weDEuNDRlYjM4MWNmMzg2YWIwNGE0Zjg2NTZhYmVhODBiODNwLTEsCisgICAgLTB4MS42cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODM0CisgICAgMHgxLjQ0ZWIzODFjZjM4NmI3NjIyZDI1OTQ0ZjNlYjAzNWRjcC0xLAorICAgIDB4MS42MDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODM1CisgICAgLTB4MS40NGViMzgxY2YzODZiNzYyMmQyNTk0NGYzZWIwMzVkY3AtMSwKKyAgICAtMHgxLjYwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzYKKyAgICAweDEuZGFkOTAyZmE4YWM4NjRmZDhhZmEwYmRjNjA5ZGVkMTlwLTEsCisgICAgMHgxLjJmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDgzNworICAgIC0weDEuZGFkOTAyZmE4YWM4NjRmZDhhZmEwYmRjNjA5ZGVkMTlwLTEsCisgICAgLTB4MS4yZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzgKKyAgICAweDEuZGFkOTAyZmE4YWM4NzBmNTJmMWI4NDNhYzgzYmMzZWRwLTEsCisgICAgMHgxLjNwMAorICB9LAorICB7IC8vIEVudHJ5IDgzOQorICAgIC0weDEuZGFkOTAyZmE4YWM4NzBmNTJmMWI4NDNhYzgzYmMzZWRwLTEsCisgICAgLTB4MS4zcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDAKKyAgICAweDEuZGFkOTAyZmE4YWM4N2NlY2QzM2NmYzk5MmRmZWMxYmVwLTEsCisgICAgMHgxLjMwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDg0MQorICAgIC0weDEuZGFkOTAyZmE4YWM4N2NlY2QzM2NmYzk5MmRmZWMxYmVwLTEsCisgICAgLTB4MS4zMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDIKKyAgICAweDEuNGI3MDdhN2FjZGVjZjkwYTE4OGQwMjMwZmFkM2FkNThwLTEsCisgICAgMHgxLjM3ZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDg0MworICAgIC0weDEuNGI3MDdhN2FjZGVjZjkwYTE4OGQwMjMwZmFkM2FkNThwLTEsCisgICAgLTB4MS4zN2ZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDQKKyAgICAweDEuNGI3MDdhN2FjZGVjYzg0MjM5NDYzZTc4YjMxMmZhMTBwLTEsCisgICAgMHgxLjM4MHAxCisgIH0sCisgIHsgLy8gRW50cnkgODQ1CisgICAgLTB4MS40YjcwN2E3YWNkZWNjODQyMzk0NjNlNzhiMzEyZmExMHAtMSwKKyAgICAtMHgxLjM4MHAxCisgIH0sCisgIHsgLy8gRW50cnkgODQ2CisgICAgMHgxLjRiNzA3YTdhY2RlYzk3N2E1OWZmN2FjMDY2MjQ4NGRkcC0xLAorICAgIDB4MS4zODAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDcKKyAgICAtMHgxLjRiNzA3YTdhY2RlYzk3N2E1OWZmN2FjMDY2MjQ4NGRkcC0xLAorICAgIC0weDEuMzgwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgODQ4CisgICAgMHgxLjA2NmU3ZWI3NmY1YzY2NzhmZDgzMjVhODFmMTkyNWM2cC00LAorICAgIDB4MS4wNjljOGI0NmIzNzkycC00CisgIH0sCisgIHsgLy8gRW50cnkgODQ5CisgICAgLTB4MS4wNjZlN2ViNzZmNWM2Njc4ZmQ4MzI1YTgxZjE5MjVjNnAtNCwKKyAgICAtMHgxLjA2OWM4YjQ2YjM3OTJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTAKKyAgICAweDEuMDVlNDc2MWFiOGQ4ZjBhN2RiYTgzNDAwMGYyMzY2NTBwLTMsCisgICAgMHgxLjA2OWM4YjQ2YjM3OTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTEKKyAgICAtMHgxLjA1ZTQ3NjFhYjhkOGYwYTdkYmE4MzQwMDBmMjM2NjUwcC0zLAorICAgIC0weDEuMDY5YzhiNDZiMzc5MnAtMworICB9LAorICB7IC8vIEVudHJ5IDg1MgorICAgIDB4MS44NzdlMmNkNGY2ZmQ5YmE0OThlMzI3MDUzMDMyNzM0ZnAtMywKKyAgICAweDEuODllYWQwZWEwZDM1YnAtMworICB9LAorICB7IC8vIEVudHJ5IDg1MworICAgIC0weDEuODc3ZTJjZDRmNmZkOWJhNDk4ZTMyNzA1MzAzMjczNGZwLTMsCisgICAgLTB4MS44OWVhZDBlYTBkMzVicC0zCisgIH0sCisgIHsgLy8gRW50cnkgODU0CisgICAgMHgxLjAzYmUwNmY5N2NiZWU0NzY5ODUzOWY5NzdjYWRiZTdlcC0yLAorICAgIDB4MS4wNjljOGI0NmIzNzkycC0yCisgIH0sCisgIHsgLy8gRW50cnkgODU1CisgICAgLTB4MS4wM2JlMDZmOTdjYmVlNDc2OTg1MzlmOTc3Y2FkYmU3ZXAtMiwKKyAgICAtMHgxLjA2OWM4YjQ2YjM3OTJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTYKKyAgICAweDEuNDJhYmJhOGM3MmZiYjhjYTk2Zjc5YWE0YmIwMzU4NGVwLTIsCisgICAgMHgxLjQ4NDNhZTE4NjA1NzZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTcKKyAgICAtMHgxLjQyYWJiYThjNzJmYmI4Y2E5NmY3OWFhNGJiMDM1ODRlcC0yLAorICAgIC0weDEuNDg0M2FlMTg2MDU3NnAtMgorICB9LAorICB7IC8vIEVudHJ5IDg1OAorICAgIDB4MS44MDQ1ZmU2NGU2MmRjM2Q2ODZkOTc2ZDdkNWE3YzY4OXAtMiwKKyAgICAweDEuODllYWQwZWEwZDM1YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDg1OQorICAgIC0weDEuODA0NWZlNjRlNjJkYzNkNjg2ZDk3NmQ3ZDVhN2M2ODlwLTIsCisgICAgLTB4MS44OWVhZDBlYTBkMzVhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODYwCisgICAgMHgxLmJjNGMwNGQ3MWFiYmVlYTVhYjA2NGVjZmJmNTRjNjEzcC0yLAorICAgIDB4MS5jYjkxZjNiYmJhMTNlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODYxCisgICAgLTB4MS5iYzRjMDRkNzFhYmJlZWE1YWIwNjRlY2ZiZjU0YzYxM3AtMiwKKyAgICAtMHgxLmNiOTFmM2JiYmExM2VwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjIKKyAgICAweDEuZjY3ZWE5NzViODZhMDE1MTBlNmJkZTM3NzgxMzg5MzRwLTIsCisgICAgMHgxLjA2OWM4YjQ2YjM3OTFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjMKKyAgICAtMHgxLmY2N2VhOTc1Yjg2YTAxNTEwZTZiZGUzNzc4MTM4OTM0cC0yLAorICAgIC0weDEuMDY5YzhiNDZiMzc5MXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg2NAorICAgIDB4MS4xNzUwNTliZjBkNDI1MjRlY2IwYmY0MjQzYjU1OTczZHAtMSwKKyAgICAweDEuMjc3MDFjYWY4OWU4M3AtMQorICB9LAorICB7IC8vIEVudHJ5IDg2NQorICAgIC0weDEuMTc1MDU5YmYwZDQyNTI0ZWNiMGJmNDI0M2I1NTk3M2RwLTEsCisgICAgLTB4MS4yNzcwMWNhZjg5ZTgzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODY2CisgICAgMHgxLjMyM2I4YjFmYjRiYTIxZGQxMmNjZTgyMGUxNTZhNGZjcC0xLAorICAgIDB4MS40ODQzYWUxODYwNTc1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODY3CisgICAgLTB4MS4zMjNiOGIxZmI0YmEyMWRkMTJjY2U4MjBlMTU2YTRmY3AtMSwKKyAgICAtMHgxLjQ4NDNhZTE4NjA1NzVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjgKKyAgICAweDEuNGJlNDk3OWM1ZWZiMzA2YzFhNzcwMjQwMzI4NDliNTJwLTEsCisgICAgMHgxLjY5MTczZjgxMzZjNjdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjkKKyAgICAtMHgxLjRiZTQ5NzljNWVmYjMwNmMxYTc3MDI0MDMyODQ5YjUycC0xLAorICAgIC0weDEuNjkxNzNmODEzNmM2N3AtMQorICB9LAorICB7IC8vIEVudHJ5IDg3MAorICAgIDB4MS42NDMwODBkNjdhY2MxMzMyYzY0YTg1NjEyY2FjYWZiOXAtMSwKKyAgICAweDEuODllYWQwZWEwZDM1OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg3MQorICAgIC0weDEuNjQzMDgwZDY3YWNjMTMzMmM2NGE4NTYxMmNhY2FmYjlwLTEsCisgICAgLTB4MS44OWVhZDBlYTBkMzU5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODcyCisgICAgMHgxLjdiMDViN2I2YzYxMmU1YjA4ZDVlZmU0OWE0NmUyMWExcC0xLAorICAgIDB4MS5hYWJlNjI1MmUzYTRicC0xCisgIH0sCisgIHsgLy8gRW50cnkgODczCisgICAgLTB4MS43YjA1YjdiNmM2MTJlNWIwOGQ1ZWZlNDlhNDZlMjFhMXAtMSwKKyAgICAtMHgxLmFhYmU2MjUyZTNhNGJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzQKKyAgICAweDEuOTA0YzM3NTA1ZGU0OGZhOGU3NjI4Nzk2MGZkNDQ1OTRwLTEsCisgICAgMHgxLmNiOTFmM2JiYmExM2RwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzUKKyAgICAtMHgxLjkwNGMzNzUwNWRlNDhmYThlNzYyODc5NjBmZDQ0NTk0cC0xLAorICAgIC0weDEuY2I5MWYzYmJiYTEzZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDg3NgorICAgIDB4MS5hM2VkOWUyNTI5MzhhMTRjNzljNTc1NjM5YzE1YTkxZHAtMSwKKyAgICAweDEuZWM2NTg1MjQ5MDgyZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDg3NworICAgIC0weDEuYTNlZDllMjUyOTM4YTE0Yzc5YzU3NTYzOWMxNWE5MWRwLTEsCisgICAgLTB4MS5lYzY1ODUyNDkwODJmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODc4CisgICAgMHgxLmI1ZDU0NWIxMDliZjkzNTU5NDAzNjc5OGNmNDBjOWIwcC0xLAorICAgIDB4MS4wNjljOGI0NmIzNzkxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzkKKyAgICAtMHgxLmI1ZDU0NWIxMDliZjkzNTU5NDAzNjc5OGNmNDBjOWIwcC0xLAorICAgIC0weDEuMDY5YzhiNDZiMzc5MXAwCisgIH0sCisgIHsgLy8gRW50cnkgODgwCisgICAgMHgxLmM1ZjA1ODIzMGU3ZmQxNGQzZTVlMzE1MzQ5ZjY5OWVmcC0xLAorICAgIDB4MS4xNzA2NTNmYjFlYjBhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODEKKyAgICAtMHgxLmM1ZjA1ODIzMGU3ZmQxNGQzZTVlMzE1MzQ5ZjY5OWVmcC0xLAorICAgIC0weDEuMTcwNjUzZmIxZWIwYXAwCisgIH0sCisgIHsgLy8gRW50cnkgODgyCisgICAgMHgxLmQ0MmRlNDJkY2UxMzQ2YTAzZDFmNmFiZjBlYmE5MDIycC0xLAorICAgIDB4MS4yNzcwMWNhZjg5ZTgzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODMKKyAgICAtMHgxLmQ0MmRlNDJkY2UxMzQ2YTAzZDFmNmFiZjBlYmE5MDIycC0xLAorICAgIC0weDEuMjc3MDFjYWY4OWU4M3AwCisgIH0sCisgIHsgLy8gRW50cnkgODg0CisgICAgMHgxLmUwN2VlZWRhMTA5Y2I1MDRhZmNjYTg2MGQ0YjVkZDMycC0xLAorICAgIDB4MS4zN2Q5ZTU2M2Y1MWZjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODUKKyAgICAtMHgxLmUwN2VlZWRhMTA5Y2I1MDRhZmNjYTg2MGQ0YjVkZDMycC0xLAorICAgIC0weDEuMzdkOWU1NjNmNTFmY3AwCisgIH0sCisgIHsgLy8gRW50cnkgODg2CisgICAgMHgxLmVhZDY4MzQ5MDliOTMzNzFmYWYzYmVhZGRiZDYwZWRkcC0xLAorICAgIDB4MS40ODQzYWUxODYwNTc1cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODcKKyAgICAtMHgxLmVhZDY4MzQ5MDliOTMzNzFmYWYzYmVhZGRiZDYwZWRkcC0xLAorICAgIC0weDEuNDg0M2FlMTg2MDU3NXAwCisgIH0sCisgIHsgLy8gRW50cnkgODg4CisgICAgMHgxLmYzMjljMDU1OGU5NjdlNGNhYjU4ZDBmYTU3MmQ2MmQycC0xLAorICAgIDB4MS41OGFkNzZjY2NiOGVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODkKKyAgICAtMHgxLmYzMjljMDU1OGU5NjdlNGNhYjU4ZDBmYTU3MmQ2MmQycC0xLAorICAgIC0weDEuNThhZDc2Y2NjYjhlZXAwCisgIH0sCisgIHsgLy8gRW50cnkgODkwCisgICAgMHgxLmY5NmZlNDA1ZjFhYzVkYzljZjM0MzUwODA2N2JmY2FlcC0xLAorICAgIDB4MS42OTE3M2Y4MTM2YzY3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTEKKyAgICAtMHgxLmY5NmZlNDA1ZjFhYzVkYzljZjM0MzUwODA2N2JmY2FlcC0xLAorICAgIC0weDEuNjkxNzNmODEzNmM2N3AwCisgIH0sCisgIHsgLy8gRW50cnkgODkyCisgICAgMHgxLmZkYTI1NGMyN2EwMWY0Nzg2YzE0OWQ2YTc3NzljYzNhcC0xLAorICAgIDB4MS43OTgxMDgzNWExZmUwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTMKKyAgICAtMHgxLmZkYTI1NGMyN2EwMWY0Nzg2YzE0OWQ2YTc3NzljYzNhcC0xLAorICAgIC0weDEuNzk4MTA4MzVhMWZlMHAwCisgIH0sCisgIHsgLy8gRW50cnkgODk0CisgICAgMHgxLmZmYmNhODQ2YzRmYzk5N2YxYTM4MTQyMDIwODg4NGUwcC0xLAorICAgIDB4MS44OWVhZDBlYTBkMzU5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTUKKyAgICAtMHgxLmZmYmNhODQ2YzRmYzk5N2YxYTM4MTQyMDIwODg4NGUwcC0xLAorICAgIC0weDEuODllYWQwZWEwZDM1OXAwCisgIH0sCisgIHsgLy8gRW50cnkgODk2CisgICAgMHgxLmZmYmNhODQ2YzRmYzlmMzBiZmI0NThlZjIwOTFjOGVlcC0xLAorICAgIDB4MS45YTU0OTk5ZTc4NmQycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTcKKyAgICAtMHgxLmZmYmNhODQ2YzRmYzlmMzBiZmI0NThlZjIwOTFjOGVlcC0xLAorICAgIC0weDEuOWE1NDk5OWU3ODZkMnAwCisgIH0sCisgIHsgLy8gRW50cnkgODk4CisgICAgMHgxLmZkYTI1NGMyN2EwMjA1ODc1ZjI3MTQzNWY4MjcxNjBjcC0xLAorICAgIDB4MS5hYWJlNjI1MmUzYTRicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTkKKyAgICAtMHgxLmZkYTI1NGMyN2EwMjA1ODc1ZjI3MTQzNWY4MjcxNjBjcC0xLAorICAgIC0weDEuYWFiZTYyNTJlM2E0YnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTAwCisgICAgMHgxLmY5NmZlNDA1ZjFhYzdhMjQxZTAyZTU4YjBjYmYzYWU3cC0xLAorICAgIDB4MS5iYjI4MmIwNzRlZGM0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDEKKyAgICAtMHgxLmY5NmZlNDA1ZjFhYzdhMjQxZTAyZTU4YjBjYmYzYWU3cC0xLAorICAgIC0weDEuYmIyODJiMDc0ZWRjNHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTAyCisgICAgMHgxLmYzMjljMDU1OGU5NmE1ZDQ4MjcyYWQ0YzQ5ZWM1M2I4cC0xLAorICAgIDB4MS5jYjkxZjNiYmJhMTNkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDMKKyAgICAtMHgxLmYzMjljMDU1OGU5NmE1ZDQ4MjcyYWQ0YzQ5ZWM1M2I4cC0xLAorICAgIC0weDEuY2I5MWYzYmJiYTEzZHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTA0CisgICAgMHgxLmVhZDY4MzQ5MDliOTY1ZmRjNGIwY2VmZmMwZjI4NWM2cC0xLAorICAgIDB4MS5kYmZiYmM3MDI1NGI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDUKKyAgICAtMHgxLmVhZDY4MzQ5MDliOTY1ZmRjNGIwY2VmZmMwZjI4NWM2cC0xLAorICAgIC0weDEuZGJmYmJjNzAyNTRiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTA2CisgICAgMHgxLmUwN2VlZWRhMTA5Y2YyNWY0MDBjZDVmNDZhY2VjODg3cC0xLAorICAgIDB4MS5lYzY1ODUyNDkwODJmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDcKKyAgICAtMHgxLmUwN2VlZWRhMTA5Y2YyNWY0MDBjZDVmNDZhY2VjODg3cC0xLAorICAgIC0weDEuZWM2NTg1MjQ5MDgyZnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTA4CisgICAgMHgxLmQ0MmRlNDJkY2UxMzhlODkwOTM5ZTU2YzQzOWRlZDkwcC0xLAorICAgIDB4MS5mY2NmNGRkOGZiYmE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDkKKyAgICAtMHgxLmQ0MmRlNDJkY2UxMzhlODkwOTM5ZTU2YzQzOWRlZDkwcC0xLAorICAgIC0weDEuZmNjZjRkZDhmYmJhOHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTEwCisgICAgMHgxLmM1ZjA1ODIzMGU4MDE0YWI4M2VjZTBjM2E2MzhjMDc5cC0xLAorICAgIDB4MS4wNjljOGI0NmIzNzkxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTEKKyAgICAtMHgxLmM1ZjA1ODIzMGU4MDE0YWI4M2VjZTBjM2E2MzhjMDc5cC0xLAorICAgIC0weDEuMDY5YzhiNDZiMzc5MXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTEyCisgICAgMHgxLmI1ZDU0NWIxMDliZmNlM2ZjNGQ3NzAwMWFmZTJmMmI2cC0xLAorICAgIDB4MS4wZWQxNmZhMGU5MTRlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTMKKyAgICAtMHgxLmI1ZDU0NWIxMDliZmNlM2ZjNGQ3NzAwMWFmZTJmMmI2cC0xLAorICAgIC0weDEuMGVkMTZmYTBlOTE0ZXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTE0CisgICAgMHgxLmEzZWQ5ZTI1MjkzOGQ5MmE1NTUzYjNjMDlkMmJkZGQzcC0xLAorICAgIDB4MS4xNzA2NTNmYjFlYjBicDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTUKKyAgICAtMHgxLmEzZWQ5ZTI1MjkzOGQ5MmE1NTUzYjNjMDlkMmJkZGQzcC0xLAorICAgIC0weDEuMTcwNjUzZmIxZWIwYnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTE2CisgICAgMHgxLjkwNGMzNzUwNWRlNGI4OTc1ZGQyNzMwZTE5NmRkZmMzcC0xLAorICAgIDB4MS4xZjNiMzg1NTU0NGM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTcKKyAgICAtMHgxLjkwNGMzNzUwNWRlNGI4OTc1ZGQyNzMwZTE5NmRkZmMzcC0xLAorICAgIC0weDEuMWYzYjM4NTU1NDRjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTE4CisgICAgMHgxLjdiMDViN2I2YzYxMmZjNGZkYTM4MTJiMWYxMzQ4Mzg5cC0xLAorICAgIDB4MS4yNzcwMWNhZjg5ZTg1cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTkKKyAgICAtMHgxLjdiMDViN2I2YzYxMmZjNGZkYTM4MTJiMWYxMzQ4Mzg5cC0xLAorICAgIC0weDEuMjc3MDFjYWY4OWU4NXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTIwCisgICAgMHgxLjY0MzA4MGQ2N2FjYzE0NjIwNjcyZGRhNjI0MWVhMzA1cC0xLAorICAgIDB4MS4yZmE1MDEwOWJmODQycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjEKKyAgICAtMHgxLjY0MzA4MGQ2N2FjYzE0NjIwNjcyZGRhNjI0MWVhMzA1cC0xLAorICAgIC0weDEuMmZhNTAxMDliZjg0MnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTIyCisgICAgMHgxLjRiZTQ5NzljNWVmYjE5NGZjODJhYzM2N2ZlZGY5M2JjcC0xLAorICAgIDB4MS4zN2Q5ZTU2M2Y1MWZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjMKKyAgICAtMHgxLjRiZTQ5NzljNWVmYjE5NGZjODJhYzM2N2ZlZGY5M2JjcC0xLAorICAgIC0weDEuMzdkOWU1NjNmNTFmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTI0CisgICAgMHgxLjMyM2I4YjFmYjRiOWVmZTUwNzVlZGU4MDQ5YTg1YzNkcC0xLAorICAgIDB4MS40MDBlYzliZTJhYmJjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjUKKyAgICAtMHgxLjMyM2I4YjFmYjRiOWVmZTUwNzVlZGU4MDQ5YTg1YzNkcC0xLAorICAgIC0weDEuNDAwZWM5YmUyYWJiY3AxCisgIH0sCisgIHsgLy8gRW50cnkgOTI2CisgICAgMHgxLjE3NTA1OWJmMGQ0MjAzM2JiY2Y1OThjODhiMTc2ZTYxcC0xLAorICAgIDB4MS40ODQzYWUxODYwNTc5cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjcKKyAgICAtMHgxLjE3NTA1OWJmMGQ0MjAzM2JiY2Y1OThjODhiMTc2ZTYxcC0xLAorICAgIC0weDEuNDg0M2FlMTg2MDU3OXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTI4CisgICAgMHgxLmY2N2VhOTc1Yjg2OTI1MjFmNzdkNjc1NGIzMDJjNWM0cC0yLAorICAgIDB4MS41MDc4OTI3Mjk1ZjM2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjkKKyAgICAtMHgxLmY2N2VhOTc1Yjg2OTI1MjFmNzdkNjc1NGIzMDJjNWM0cC0yLAorICAgIC0weDEuNTA3ODkyNzI5NWYzNnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTMwCisgICAgMHgxLmJjNGMwNGQ3MWFiYWQxNGVmYzI5YTY2MzQyYWRhNzIzcC0yLAorICAgIDB4MS41OGFkNzZjY2NiOGYzcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzEKKyAgICAtMHgxLmJjNGMwNGQ3MWFiYWQxNGVmYzI5YTY2MzQyYWRhNzIzcC0yLAorICAgIC0weDEuNThhZDc2Y2NjYjhmM3AxCisgIH0sCisgIHsgLy8gRW50cnkgOTMyCisgICAgMHgxLjgwNDVmZTY0ZTYyYzYyZjU3ZjA3N2VhMjUxZTJmMmRjcC0yLAorICAgIDB4MS42MGUyNWIyNzAxMmIwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzMKKyAgICAtMHgxLjgwNDVmZTY0ZTYyYzYyZjU3ZjA3N2VhMjUxZTJmMmRjcC0yLAorICAgIC0weDEuNjBlMjViMjcwMTJiMHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTM0CisgICAgMHgxLjQyYWJiYThjNzJmYTEyYmU5MjBiMzE2NjI3NTEyZTQxcC0yLAorICAgIDB4MS42OTE3M2Y4MTM2YzZkcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzUKKyAgICAtMHgxLjQyYWJiYThjNzJmYTEyYmU5MjBiMzE2NjI3NTEyZTQxcC0yLAorICAgIC0weDEuNjkxNzNmODEzNmM2ZHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTM2CisgICAgMHgxLjAzYmUwNmY5N2NiY2Y4NjYwMjFlNWE1YzYyYzZiMDdlcC0yLAorICAgIDB4MS43MTRjMjNkYjZjNjJhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzcKKyAgICAtMHgxLjAzYmUwNmY5N2NiY2Y4NjYwMjFlNWE1YzYyYzZiMDdlcC0yLAorICAgIC0weDEuNzE0YzIzZGI2YzYyYXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTM4CisgICAgMHgxLjg3N2UyY2Q0ZjZmOTQ3MTBmMjc3Njc3NWIwMWM3M2RicC0zLAorICAgIDB4MS43OTgxMDgzNWExZmU3cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzkKKyAgICAtMHgxLjg3N2UyY2Q0ZjZmOTQ3MTBmMjc3Njc3NWIwMWM3M2RicC0zLAorICAgIC0weDEuNzk4MTA4MzVhMWZlN3AxCisgIH0sCisgIHsgLy8gRW50cnkgOTQwCisgICAgMHgxLjA1ZTQ3NjFhYjhkNDIxNzE5NTY3NzE3Zjc2NzEyODY3cC0zLAorICAgIDB4MS44MWI1ZWM4ZmQ3OWE0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDEKKyAgICAtMHgxLjA1ZTQ3NjFhYjhkNDIxNzE5NTY3NzE3Zjc2NzEyODY3cC0zLAorICAgIC0weDEuODFiNWVjOGZkNzlhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTQyCisgICAgMHgxLjA2NmU3ZWI3NmY1ZGQyZWExOWI2OTkxZThhMWEzNjM0cC00LAorICAgIDB4MS44OWVhZDBlYTBkMzVicDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDMKKyAgICAtMHgxLjA2NmU3ZWI3NmY1ZGQyZWExOWI2OTkxZThhMWEzNjM0cC00LAorICAgIC0weDEuODllYWQwZWEwZDM1YnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTQ0CisgICAgMHgxLjAzYmUwNmY5N2NiZjA5Y2MwYmFkYmRhZTgwM2Q3YjRlcC0yLAorICAgIC0weDEuODFiNWVjOGZkNzk5ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTQ1CisgICAgLTB4MS4wM2JlMDZmOTdjYmYwOWNjMGJhZGJkYWU4MDNkN2I0ZXAtMiwKKyAgICAweDEuODFiNWVjOGZkNzk5ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTQ2CisgICAgMHgxLmY2N2VhOTc1Yjg2YTIyZjIzNDg3Nzg4MjRmOTVkODRhcC0yLAorICAgIC0weDEuNzE0YzIzZGI2YzYyNnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTQ3CisgICAgLTB4MS5mNjdlYTk3NWI4NmEyMmYyMzQ4Nzc4ODI0Zjk1ZDg0YXAtMiwKKyAgICAweDEuNzE0YzIzZGI2YzYyNnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTQ4CisgICAgMHgxLjY0MzA4MGQ2N2FjYzIxMGZhMjdlOTI0N2E4Mjg2MjIwcC0xLAorICAgIC0weDEuNjBlMjViMjcwMTJhZHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTQ5CisgICAgLTB4MS42NDMwODBkNjdhY2MyMTBmYTI3ZTkyNDdhODI4NjIyMHAtMSwKKyAgICAweDEuNjBlMjViMjcwMTJhZHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTUwCisgICAgMHgxLmI1ZDU0NWIxMDliZjk1MGI0MTk3MDI5NzJiOTRmOGZhcC0xLAorICAgIC0weDEuNTA3ODkyNzI5NWYzNHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTUxCisgICAgLTB4MS5iNWQ1NDViMTA5YmY5NTBiNDE5NzAyOTcyYjk0ZjhmYXAtMSwKKyAgICAweDEuNTA3ODkyNzI5NWYzNHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTUyCisgICAgMHgxLmVhZDY4MzQ5MDliOTM0NjIzNGRiYjYwMWQwNDg2Y2YycC0xLAorICAgIC0weDEuNDAwZWM5YmUyYWJiYnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTUzCisgICAgLTB4MS5lYWQ2ODM0OTA5YjkzNDYyMzRkYmI2MDFkMDQ4NmNmMnAtMSwKKyAgICAweDEuNDAwZWM5YmUyYWJiYnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTU0CisgICAgMHgxLmZmYmNhODQ2YzRmYzk5OWEyOWRjMWQ2YjJkN2NiNDEzcC0xLAorICAgIC0weDEuMmZhNTAxMDliZjg0MnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTU1CisgICAgLTB4MS5mZmJjYTg0NmM0ZmM5OTlhMjlkYzFkNmIyZDdjYjQxM3AtMSwKKyAgICAweDEuMmZhNTAxMDliZjg0MnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTU2CisgICAgMHgxLmYzMjljMDU1OGU5NmE1MThhMmFmM2FlNzgwMGE1YjY1cC0xLAorICAgIC0weDEuMWYzYjM4NTU1NDRjOXAyCisgIH0sCisgIHsgLy8gRW50cnkgOTU3CisgICAgLTB4MS5mMzI5YzA1NThlOTZhNTE4YTJhZjNhZTc4MDBhNWI2NXAtMSwKKyAgICAweDEuMWYzYjM4NTU1NDRjOXAyCisgIH0sCisgIHsgLy8gRW50cnkgOTU4CisgICAgMHgxLmM1ZjA1ODIzMGU4MDIxZjIxYmQwYWMyYzBmNjgwOWE5cC0xLAorICAgIC0weDEuMGVkMTZmYTBlOTE1MHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTU5CisgICAgLTB4MS5jNWYwNTgyMzBlODAyMWYyMWJkMGFjMmMwZjY4MDlhOXAtMSwKKyAgICAweDEuMGVkMTZmYTBlOTE1MHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTYwCisgICAgMHgxLjdiMDViN2I2YzYxMzY1YTlhYzllOTA4YjhlNWQzY2U0cC0xLAorICAgIC0weDEuZmNjZjRkZDhmYmJhZXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTYxCisgICAgLTB4MS43YjA1YjdiNmM2MTM2NWE5YWM5ZTkwOGI4ZTVkM2NlNHAtMSwKKyAgICAweDEuZmNjZjRkZDhmYmJhZXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTYyCisgICAgMHgxLjE3NTA1OWJmMGQ0MmYxZDZiMzkxZjA3Zjk2ZjIzNTNkcC0xLAorICAgIC0weDEuZGJmYmJjNzAyNTRiY3AxCisgIH0sCisgIHsgLy8gRW50cnkgOTYzCisgICAgLTB4MS4xNzUwNTliZjBkNDJmMWQ2YjM5MWYwN2Y5NmYyMzUzZHAtMSwKKyAgICAweDEuZGJmYmJjNzAyNTRiY3AxCisgIH0sCisgIHsgLy8gRW50cnkgOTY0CisgICAgMHgxLjQyYWJiYThjNzJmZDIyMTk0NzkzMjQ2YjhkMTk5NjBhcC0yLAorICAgIC0weDEuYmIyODJiMDc0ZWRjYXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTY1CisgICAgLTB4MS40MmFiYmE4YzcyZmQyMjE5NDc5MzI0NmI4ZDE5OTYwYXAtMiwKKyAgICAweDEuYmIyODJiMDc0ZWRjYXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTY2CisgICAgMHgxLjA2NmU3ZWI3NmY2MmI1ZjQ1NjNkZTI2ZGNhODkwMDE3cC00LAorICAgIC0weDEuOWE1NDk5OWU3ODZkOHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTY3CisgICAgLTB4MS4wNjZlN2ViNzZmNjJiNWY0NTYzZGUyNmRjYTg5MDAxN3AtNCwKKyAgICAweDEuOWE1NDk5OWU3ODZkOHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTY4CisgICAgLTB4MS44NzdlMmNkNGY2ZmE0MjU4Njg3NWM1MjUwYTE2OWU0OHAtMywKKyAgICAtMHgxLjc5ODEwODM1YTFmZTZwMQorICB9LAorICB7IC8vIEVudHJ5IDk2OQorICAgIDB4MS44NzdlMmNkNGY2ZmE0MjU4Njg3NWM1MjUwYTE2OWU0OHAtMywKKyAgICAweDEuNzk4MTA4MzVhMWZlNnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTcwCisgICAgLTB4MS5iYzRjMDRkNzFhYmE1ZGZjMDk4Mjc4ZjE2OGJiZDk2MnAtMiwKKyAgICAtMHgxLjU4YWQ3NmNjY2I4ZjRwMQorICB9LAorICB7IC8vIEVudHJ5IDk3MQorICAgIDB4MS5iYzRjMDRkNzFhYmE1ZGZjMDk4Mjc4ZjE2OGJiZDk2MnAtMiwKKyAgICAweDEuNThhZDc2Y2NjYjhmNHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTcyCisgICAgLTB4MS40YmU0OTc5YzVlZmE4NzFkMzBhZTFjZmE2NjM4OTE5OXAtMSwKKyAgICAtMHgxLjM3ZDllNTYzZjUyMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDk3MworICAgIDB4MS40YmU0OTc5YzVlZmE4NzFkMzBhZTFjZmE2NjM4OTE5OXAtMSwKKyAgICAweDEuMzdkOWU1NjNmNTIwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTc0CisgICAgLTB4MS5hM2VkOWUyNTI5MzgyMjE2ODk1OGNjZTFlMDlmN2MxMXAtMSwKKyAgICAtMHgxLjE3MDY1M2ZiMWViMTBwMQorICB9LAorICB7IC8vIEVudHJ5IDk3NQorICAgIDB4MS5hM2VkOWUyNTI5MzgyMjE2ODk1OGNjZTFlMDlmN2MxMXAtMSwKKyAgICAweDEuMTcwNjUzZmIxZWIxMHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTc2CisgICAgLTB4MS5lMDdlZWVkYTEwOWM2MmIzNDBkYzM2ZTkyMTY5NjQ4ZHAtMSwKKyAgICAtMHgxLmVjNjU4NTI0OTA4M2NwMAorICB9LAorICB7IC8vIEVudHJ5IDk3NworICAgIDB4MS5lMDdlZWVkYTEwOWM2MmIzNDBkYzM2ZTkyMTY5NjQ4ZHAtMSwKKyAgICAweDEuZWM2NTg1MjQ5MDgzY3AwCisgIH0sCisgIHsgLy8gRW50cnkgOTc4CisgICAgLTB4MS5mZGEyNTRjMjdhMDFkZDk1NGRiM2FlYTUwNWU0OTQ1M3AtMSwKKyAgICAtMHgxLmFhYmU2MjUyZTNhNThwMAorICB9LAorICB7IC8vIEVudHJ5IDk3OQorICAgIDB4MS5mZGEyNTRjMjdhMDFkZDk1NGRiM2FlYTUwNWU0OTQ1M3AtMSwKKyAgICAweDEuYWFiZTYyNTJlM2E1OHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTgwCisgICAgLTB4MS5mOTZmZTQwNWYxYWNhMDJlOGY0ZmQ0MzNlNTlhYTk3M3AtMSwKKyAgICAtMHgxLjY5MTczZjgxMzZjNzRwMAorICB9LAorICB7IC8vIEVudHJ5IDk4MQorICAgIDB4MS5mOTZmZTQwNWYxYWNhMDJlOGY0ZmQ0MzNlNTlhYTk3M3AtMSwKKyAgICAweDEuNjkxNzNmODEzNmM3NHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTgyCisgICAgLTB4MS5kNDJkZTQyZGNlMTNlZjA0MGJiMTA0MGUzMTQ4ZDdkZXAtMSwKKyAgICAtMHgxLjI3NzAxY2FmODllOTBwMAorICB9LAorICB7IC8vIEVudHJ5IDk4MworICAgIDB4MS5kNDJkZTQyZGNlMTNlZjA0MGJiMTA0MGUzMTQ4ZDdkZXAtMSwKKyAgICAweDEuMjc3MDFjYWY4OWU5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTg0CisgICAgLTB4MS45MDRjMzc1MDVkZTU5MzA4MTJlM2EyYTk0ZmVhYTUxYnAtMSwKKyAgICAtMHgxLmNiOTFmM2JiYmExNTdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODUKKyAgICAweDEuOTA0YzM3NTA1ZGU1OTMwODEyZTNhMmE5NGZlYWE1MWJwLTEsCisgICAgMHgxLmNiOTFmM2JiYmExNTdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODYKKyAgICAtMHgxLjMyM2I4YjFmYjRiYjYyNmRkNDBjYWNkNzQ5NjNhYzZjcC0xLAorICAgIC0weDEuNDg0M2FlMTg2MDU4ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDk4NworICAgIDB4MS4zMjNiOGIxZmI0YmI2MjZkZDQwY2FjZDc0OTYzYWM2Y3AtMSwKKyAgICAweDEuNDg0M2FlMTg2MDU4ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDk4OAorICAgIC0weDEuODA0NWZlNjRlNjMwOGJiNWM2Y2UzNWY4MzRiOTNjNjNwLTIsCisgICAgLTB4MS44OWVhZDBlYTBkMzhhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTg5CisgICAgMHgxLjgwNDVmZTY0ZTYzMDhiYjVjNmNlMzVmODM0YjkzYzYzcC0yLAorICAgIDB4MS44OWVhZDBlYTBkMzhhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTkwCisgICAgLTB4MS4wNWU0NzYxYWI4ZGVjNDRlZDBmYTMwZDMzNTA0OWM0MHAtMywKKyAgICAtMHgxLjA2OWM4YjQ2YjM3ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTEKKyAgICAweDEuMDVlNDc2MWFiOGRlYzQ0ZWQwZmEzMGQzMzUwNDljNDBwLTMsCisgICAgMHgxLjA2OWM4YjQ2YjM3ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTIKKyAgICAweDEuMDVlNDc2MWFiOGQzMWQwMGU2NTYzNzJjNWMwNGFhNmVwLTMsCisgICAgMHgxLjA2OWM4YjQ2YjM3MzRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTMKKyAgICAtMHgxLjA1ZTQ3NjFhYjhkMzFkMDBlNjU2MzcyYzVjMDRhYTZlcC0zLAorICAgIC0weDEuMDY5YzhiNDZiMzczNHAtMworICB9LAorICB7IC8vIEVudHJ5IDk5NAorICAgIDB4MS44MDQ1ZmU2NGU2MmIxOWEwOTQzOTk1MDJhZmI3NmU1Y3AtMiwKKyAgICAweDEuODllYWQwZWEwZDMyY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDk5NQorICAgIC0weDEuODA0NWZlNjRlNjJiMTlhMDk0Mzk5NTAyYWZiNzZlNWNwLTIsCisgICAgLTB4MS44OWVhZDBlYTBkMzJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTk2CisgICAgMHgxLjMyM2I4YjFmYjRiOTA3YzQxNmQyM2IwNGUwZWMwZTcycC0xLAorICAgIDB4MS40ODQzYWUxODYwNTVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTk3CisgICAgLTB4MS4zMjNiOGIxZmI0YjkwN2M0MTZkMjNiMDRlMGVjMGU3MnAtMSwKKyAgICAtMHgxLjQ4NDNhZTE4NjA1NWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTgKKyAgICAweDEuOTA0YzM3NTA1ZGUzYmUyYWNlMTdjYTU0ODc3NTAyMzFwLTEsCisgICAgMHgxLmNiOTFmM2JiYmExMjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTkKKyAgICAtMHgxLjkwNGMzNzUwNWRlM2JlMmFjZTE3Y2E1NDg3NzUwMjMxcC0xLAorICAgIC0weDEuY2I5MWYzYmJiYTEyOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMDAKKyAgICAweDEuZDQyZGU0MmRjZTEyYjgyNDY2ZjJmY2I2M2IyOTQ3NTFwLTEsCisgICAgMHgxLjI3NzAxY2FmODllNzhwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMDEKKyAgICAtMHgxLmQ0MmRlNDJkY2UxMmI4MjQ2NmYyZmNiNjNiMjk0NzUxcC0xLAorICAgIC0weDEuMjc3MDFjYWY4OWU3OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAwMgorICAgIDB4MS5mOTZmZTQwNWYxYWMyNTliZjE5MmZkMWNmNjRlMmYxMnAtMSwKKyAgICAweDEuNjkxNzNmODEzNmM1Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTAwMworICAgIC0weDEuZjk2ZmU0MDVmMWFjMjU5YmYxOTJmZDFjZjY0ZTJmMTJwLTEsCisgICAgLTB4MS42OTE3M2Y4MTM2YzVjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA0CisgICAgMHgxLmZkYTI1NGMyN2EwMjI3NTQzMmQ3N2RkNmY5NzA0NjQ0cC0xLAorICAgIDB4MS5hYWJlNjI1MmUzYTQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA1CisgICAgLTB4MS5mZGEyNTRjMjdhMDIyNzU0MzJkNzdkZDZmOTcwNDY0NHAtMSwKKyAgICAtMHgxLmFhYmU2MjUyZTNhNDBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMDYKKyAgICAweDEuZTA3ZWVlZGExMDlkNmJmMGM5MzVmYTEwYjEyODBjNmRwLTEsCisgICAgMHgxLmVjNjU4NTI0OTA4MjRwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMDcKKyAgICAtMHgxLmUwN2VlZWRhMTA5ZDZiZjBjOTM1ZmExMGIxMjgwYzZkcC0xLAorICAgIC0weDEuZWM2NTg1MjQ5MDgyNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAwOAorICAgIDB4MS5hM2VkOWUyNTI5MzlkOTc5M2ZiMmY2Zjc1ZTVjNzZlN3AtMSwKKyAgICAweDEuMTcwNjUzZmIxZWIwNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTAwOQorICAgIC0weDEuYTNlZDllMjUyOTM5ZDk3OTNmYjJmNmY3NWU1Yzc2ZTdwLTEsCisgICAgLTB4MS4xNzA2NTNmYjFlYjA0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEwCisgICAgMHgxLjRiZTQ5NzljNWVmY2NmZTc4ZWEwYjZhZmIwY2JiYTM3cC0xLAorICAgIDB4MS4zN2Q5ZTU2M2Y1MWY2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDExCisgICAgLTB4MS40YmU0OTc5YzVlZmNjZmU3OGVhMGI2YWZiMGNiYmEzN3AtMSwKKyAgICAtMHgxLjM3ZDllNTYzZjUxZjZwMQorICB9LAorICB7IC8vIEVudHJ5IDEwMTIKKyAgICAweDEuYmM0YzA0ZDcxYWJmYzVkZjY5NTg5YTQ1ZDVlMzE5NmVwLTIsCisgICAgMHgxLjU4YWQ3NmNjY2I4ZThwMQorICB9LAorICB7IC8vIEVudHJ5IDEwMTMKKyAgICAtMHgxLmJjNGMwNGQ3MWFiZmM1ZGY2OTU4OWE0NWQ1ZTMxOTZlcC0yLAorICAgIC0weDEuNThhZDc2Y2NjYjhlOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTAxNAorICAgIDB4MS44NzdlMmNkNGY3MDYwOWIxZjA2MjI5NWI2NGFlZDRiZHAtMywKKyAgICAweDEuNzk4MTA4MzVhMWZkYXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTAxNQorICAgIC0weDEuODc3ZTJjZDRmNzA2MDliMWYwNjIyOTViNjRhZWQ0YmRwLTMsCisgICAgLTB4MS43OTgxMDgzNWExZmRhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE2CisgICAgLTB4MS4wNjZlN2ViNzZmNGFjMjkzZjQ2NDg2ZGMzMjhkNDUwYnAtNCwKKyAgICAweDEuOWE1NDk5OWU3ODZjY3AxCisgIH0sCisgIHsgLy8gRW50cnkgMTAxNworICAgIDB4MS4wNjZlN2ViNzZmNGFjMjkzZjQ2NDg2ZGMzMjhkNDUwYnAtNCwKKyAgICAtMHgxLjlhNTQ5OTllNzg2Y2NwMQorICB9LAorICB7IC8vIEVudHJ5IDEwMTgKKyAgICAtMHgxLjQyYWJiYThjNzJmNzcwNTk1ZmZlMzEzNWEwZTBhZDgzcC0yLAorICAgIDB4MS5iYjI4MmIwNzRlZGJlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE5CisgICAgMHgxLjQyYWJiYThjNzJmNzcwNTk1ZmZlMzEzNWEwZTBhZDgzcC0yLAorICAgIC0weDEuYmIyODJiMDc0ZWRiZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTAyMAorICAgIC0weDEuMTc1MDU5YmYwZDQwNmUyZmUwMTRlODgwZGQyOWNmYWNwLTEsCisgICAgMHgxLmRiZmJiYzcwMjU0YjBwMQorICB9LAorICB7IC8vIEVudHJ5IDEwMjEKKyAgICAweDEuMTc1MDU5YmYwZDQwNmUyZmUwMTRlODgwZGQyOWNmYWNwLTEsCisgICAgLTB4MS5kYmZiYmM3MDI1NGIwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIyCisgICAgLTB4MS43YjA1YjdiNmM2MTE2MTU1ZjBkYzU1MWUzMTZlMWUwYnAtMSwKKyAgICAweDEuZmNjZjRkZDhmYmJhMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTAyMworICAgIDB4MS43YjA1YjdiNmM2MTE2MTU1ZjBkYzU1MWUzMTZlMWUwYnAtMSwKKyAgICAtMHgxLmZjY2Y0ZGQ4ZmJiYTJwMQorICB9LAorICB7IC8vIEVudHJ5IDEwMjQKKyAgICAtMHgxLmM1ZjA1ODIzMGU3ZWJlYjc2MTY3NzllMTZmYTliNTM3cC0xLAorICAgIDB4MS4wZWQxNmZhMGU5MTRhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI1CisgICAgMHgxLmM1ZjA1ODIzMGU3ZWJlYjc2MTY3NzllMTZmYTliNTM3cC0xLAorICAgIC0weDEuMGVkMTZmYTBlOTE0YXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTAyNgorICAgIC0weDEuZjMyOWMwNTU4ZTk1ZmEzMzNkNWQyZDQ0ZDY1NDc3N2NwLTEsCisgICAgMHgxLjFmM2IzODU1NTQ0YzNwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMjcKKyAgICAweDEuZjMyOWMwNTU4ZTk1ZmEzMzNkNWQyZDQ0ZDY1NDc3N2NwLTEsCisgICAgLTB4MS4xZjNiMzg1NTU0NGMzcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI4CisgICAgLTB4MS5mZmJjYTg0NmM0ZmNiMjM3YzI5NDdiMzViMDM3YTJwLTEsCisgICAgMHgxLjJmYTUwMTA5YmY4M2NwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMjkKKyAgICAweDEuZmZiY2E4NDZjNGZjYjIzN2MyOTQ3YjM1YjAzN2EycC0xLAorICAgIC0weDEuMmZhNTAxMDliZjgzY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTAzMAorICAgIC0weDEuZWFkNjgzNDkwOWJhMGVlNjliMzFlMTk3MGRmMWJiOGJwLTEsCisgICAgMHgxLjQwMGVjOWJlMmFiYjVwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMzEKKyAgICAweDEuZWFkNjgzNDkwOWJhMGVlNjliMzFlMTk3MGRmMWJiOGJwLTEsCisgICAgLTB4MS40MDBlYzliZTJhYmI1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMyCisgICAgLTB4MS5iNWQ1NDViMTA5YzEyMzJiNjFkZDI4ZDgwMzVkOTVjYnAtMSwKKyAgICAweDEuNTA3ODkyNzI5NWYyZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTAzMworICAgIDB4MS5iNWQ1NDViMTA5YzEyMzJiNjFkZDI4ZDgwMzVkOTVjYnAtMSwKKyAgICAtMHgxLjUwNzg5MjcyOTVmMmVwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMzQKKyAgICAtMHgxLjY0MzA4MGQ2N2FjZTQ4YzBkZDFmZTNhMDZiYmM0YmY1cC0xLAorICAgIDB4MS42MGUyNWIyNzAxMmE3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM1CisgICAgMHgxLjY0MzA4MGQ2N2FjZTQ4YzBkZDFmZTNhMDZiYmM0YmY1cC0xLAorICAgIC0weDEuNjBlMjViMjcwMTJhN3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTAzNgorICAgIC0weDEuZjY3ZWE5NzViODZmNWQ0YWE5MjcxNmNjMDc3NDczYTdwLTIsCisgICAgMHgxLjcxNGMyM2RiNmM2MjBwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMzcKKyAgICAweDEuZjY3ZWE5NzViODZmNWQ0YWE5MjcxNmNjMDc3NDczYTdwLTIsCisgICAgLTB4MS43MTRjMjNkYjZjNjIwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM4CisgICAgLTB4MS4wM2JlMDZmOTdjYzRkNzhmZGNjYmNhMWQ0MGU4NjAxMXAtMiwKKyAgICAweDEuODFiNWVjOGZkNzk5OXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTAzOQorICAgIDB4MS4wM2JlMDZmOTdjYzRkNzhmZGNjYmNhMWQ0MGU4NjAxMXAtMiwKKyAgICAtMHgxLjgxYjVlYzhmZDc5OTlwMgorICB9LAorICB7IC8vIEVudHJ5IDEwNDAKKyAgICAweDEuZWZiMjZlZjkzMGM0YzNmYTMyNDU5NjNjMWRjZWMwYTZwLTUsCisgICAgMHgxLmVmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQxCisgICAgLTB4MS5lZmIyNmVmOTMwYzRjM2ZhMzI0NTk2M2MxZGNlYzBhNnAtNSwKKyAgICAtMHgxLmVmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQyCisgICAgMHgxLmVmYjI2ZWY5MzBjNGQzZjJiMGRiZTE5MzFiYTVhZTY0cC01LAorICAgIDB4MS5mcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA0MworICAgIC0weDEuZWZiMjZlZjkzMGM0ZDNmMmIwZGJlMTkzMWJhNWFlNjRwLTUsCisgICAgLTB4MS5mcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA0NAorICAgIDB4MS5lZmIyNmVmOTMwYzRlM2ViMmY3MjJjZWExOTdjMjAzNnAtNSwKKyAgICAweDEuZjAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwNDUKKyAgICAtMHgxLmVmYjI2ZWY5MzBjNGUzZWIyZjcyMmNlYTE5N2MyMDM2cC01LAorICAgIC0weDEuZjAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwNDYKKyAgICAweDEuZjZiYWFhMTMxZGU2MzNhZDRlMGU3ZDY0NjVkMTJhMDVwLTQsCisgICAgMHgxLmY3ZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ3CisgICAgLTB4MS5mNmJhYWExMzFkZTYzM2FkNGUwZTdkNjQ2NWQxMmEwNXAtNCwKKyAgICAtMHgxLmY3ZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ4CisgICAgMHgxLmY2YmFhYTEzMWRlNjQzOGU1NjExMjc5ODY0ZmU3NjYzcC00LAorICAgIDB4MS5mODBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ5CisgICAgLTB4MS5mNmJhYWExMzFkZTY0MzhlNTYxMTI3OTg2NGZlNzY2M3AtNCwKKyAgICAtMHgxLmY4MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwNTAKKyAgICAweDEuZjZiYWFhMTMxZGU2NTM2ZjVlMTNkMWNjNjQyOWNjMDdwLTQsCisgICAgMHgxLmY4MDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUxCisgICAgLTB4MS5mNmJhYWExMzFkZTY1MzZmNWUxM2QxY2M2NDI5Y2MwN3AtNCwKKyAgICAtMHgxLmY4MDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUyCisgICAgMHgxLjRhOGMzYjRlOWM3ZmYwMGEzNmUwNjFhMGQyMjk1MDkzcC0zLAorICAgIDB4MS40YmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA1MworICAgIC0weDEuNGE4YzNiNGU5YzdmZjAwYTM2ZTA2MWEwZDIyOTUwOTNwLTMsCisgICAgLTB4MS40YmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA1NAorICAgIDB4MS40YThjM2I0ZTljN2ZmZmQ0ODMwNWY0NGE0MmY1ZjUwZnAtMywKKyAgICAweDEuNGMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA1NQorICAgIC0weDEuNGE4YzNiNGU5YzdmZmZkNDgzMDVmNDRhNDJmNWY1MGZwLTMsCisgICAgLTB4MS40YzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU2CisgICAgMHgxLjRhOGMzYjRlOWM4MDBmOWVjZjJiODZmM2IzYmQ2ZjVhcC0zLAorICAgIDB4MS40YzAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA1NworICAgIC0weDEuNGE4YzNiNGU5YzgwMGY5ZWNmMmI4NmYzYjNiZDZmNWFwLTMsCisgICAgLTB4MS40YzAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA1OAorICAgIDB4MS4yZTljZDk1YmFiYTMyNWZlNjA2NzIzM2Q0NDk2YWFhY3AtMiwKKyAgICAweDEuMzMzMzMzMzMzMzMzMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwNTkKKyAgICAtMHgxLjJlOWNkOTViYWJhMzI1ZmU2MDY3MjMzZDQ0OTZhYWFjcC0yLAorICAgIC0weDEuMzMzMzMzMzMzMzMzMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwNjAKKyAgICAweDEuMmU5Y2Q5NWJhYmEzMzU0NzZmNTEzYWMyMjFkMDc4YzdwLTIsCisgICAgMHgxLjMzMzMzMzMzMzMzMzNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYxCisgICAgLTB4MS4yZTljZDk1YmFiYTMzNTQ3NmY1MTNhYzIyMWQwNzhjN3AtMiwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYyCisgICAgMHgxLjJlOWNkOTViYWJhMzQ0OTA3ZTNiNTI0NmZlZjc1ZDE1cC0yLAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MworICAgIC0weDEuMmU5Y2Q5NWJhYmEzNDQ5MDdlM2I1MjQ2ZmVmNzVkMTVwLTIsCisgICAgLTB4MS4zMzMzMzMzMzMzMzM0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTA2NAorICAgIDB4MS4zZmFlZmM3YTU0NjZlZjMwNDVjM2YxYmU3MTZhZDU2OHAtMSwKKyAgICAweDEuNTk0MzE3YWNjNGVmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNjUKKyAgICAtMHgxLjNmYWVmYzdhNTQ2NmVmMzA0NWMzZjFiZTcxNmFkNTY4cC0xLAorICAgIC0weDEuNTk0MzE3YWNjNGVmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNjYKKyAgICAweDEuM2ZhZWZjN2E1NDY2ZmJhZmJjYTAyN2I2ZThkYjhjMDRwLTEsCisgICAgMHgxLjU5NDMxN2FjYzRlZjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY3CisgICAgLTB4MS4zZmFlZmM3YTU0NjZmYmFmYmNhMDI3YjZlOGRiOGMwNHAtMSwKKyAgICAtMHgxLjU5NDMxN2FjYzRlZjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY4CisgICAgMHgxLjNmYWVmYzdhNTQ2NzA4MmYzMzdjNWRhZjVmZmM1NmUycC0xLAorICAgIDB4MS41OTQzMTdhY2M0ZWZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA2OQorICAgIC0weDEuM2ZhZWZjN2E1NDY3MDgyZjMzN2M1ZGFmNWZmYzU2ZTJwLTEsCisgICAgLTB4MS41OTQzMTdhY2M0ZWZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA3MAorICAgIDB4MS42ODg4YTRlMTM0YjJkZWY1YmVhNTFmNGNkN2Q2NDdjNnAtMSwKKyAgICAweDEuOGZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNzEKKyAgICAtMHgxLjY4ODhhNGUxMzRiMmRlZjViZWE1MWY0Y2Q3ZDY0N2M2cC0xLAorICAgIC0weDEuOGZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNzIKKyAgICAweDEuNjg4OGE0ZTEzNGIyZWE1MjBiMjI2ZWNhODY5NGIzYTJwLTEsCisgICAgMHgxLjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDczCisgICAgLTB4MS42ODg4YTRlMTM0YjJlYTUyMGIyMjZlY2E4Njk0YjNhMnAtMSwKKyAgICAtMHgxLjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc0CisgICAgMHgxLjY4ODhhNGUxMzRiMmY1YWU1NzlmYmU0ODM0ZjhmZDU1cC0xLAorICAgIDB4MS45MDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA3NQorICAgIC0weDEuNjg4OGE0ZTEzNGIyZjVhZTU3OWZiZTQ4MzRmOGZkNTVwLTEsCisgICAgLTB4MS45MDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA3NgorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTA3NworICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEwNzgKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc5CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTA4MAorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTA4MQorICAgIDB4MS45MWY2NWYxMGRkODEyYTBiOTVmZjcxODcxYWI0ODIwN3AtNSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AtNQorICB9LAorICB7IC8vIEVudHJ5IDEwODIKKyAgICAtMHgxLjkxZjY1ZjEwZGQ4MTJhMGI5NWZmNzE4NzFhYjQ4MjA3cC01LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtNQorICB9LAorICB7IC8vIEVudHJ5IDEwODMKKyAgICAweDEuOTFmNjVmMTBkZDgxM2EwNmE2ZjEyZTNkZDlhNmE0MWVwLTUsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg0CisgICAgLTB4MS45MWY2NWYxMGRkODEzYTA2YTZmMTJlM2RkOWE2YTQxZXAtNSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg1CisgICAgMHgxLjkxZjY1ZjEwZGQ4MTRhMDFiN2UyZWFmNDk4OTg2MWI3cC01LAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA4NgorICAgIC0weDEuOTFmNjVmMTBkZDgxNGEwMWI3ZTJlYWY0OTg5ODYxYjdwLTUsCisgICAgLTB4MS45MjFmYjU0NDQyZDE5cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA4NworICAgIDB4MS45MTdhNmJjMjliNDJhOWNkMmU3ODdlZTAwY2E4ZjhlM3AtNCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AtNAorICB9LAorICB7IC8vIEVudHJ5IDEwODgKKyAgICAtMHgxLjkxN2E2YmMyOWI0MmE5Y2QyZTc4N2VlMDBjYThmOGUzcC00LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtNAorICB9LAorICB7IC8vIEVudHJ5IDEwODkKKyAgICAweDEuOTE3YTZiYzI5YjQyYjliOTc1NGE2NzcyOWY3OTM0NmJwLTQsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkwCisgICAgLTB4MS45MTdhNmJjMjliNDJiOWI5NzU0YTY3NzI5Zjc5MzQ2YnAtNCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkxCisgICAgMHgxLjkxN2E2YmMyOWI0MmM5YTViYzFjNTAwNTMyNDdkZTc4cC00LAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA5MgorICAgIC0weDEuOTE3YTZiYzI5YjQyYzlhNWJjMWM1MDA1MzI0N2RlNzhwLTQsCisgICAgLTB4MS45MjFmYjU0NDQyZDE5cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA5MworICAgIDB4MS44ZjhiODNjNjlhNjA5NzVmOTg0NTM4ODZmOTUzYTBlNXAtMywKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AtMworICB9LAorICB7IC8vIEVudHJ5IDEwOTQKKyAgICAtMHgxLjhmOGI4M2M2OWE2MDk3NWY5ODQ1Mzg4NmY5NTNhMGU1cC0zLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtMworICB9LAorICB7IC8vIEVudHJ5IDEwOTUKKyAgICAweDEuOGY4YjgzYzY5YTYwYTcxMGU0MmQzNDM1NTE2ZGRhY2NwLTMsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDk2CisgICAgLTB4MS44ZjhiODNjNjlhNjBhNzEwZTQyZDM0MzU1MTZkZGFjY3AtMywKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDk3CisgICAgMHgxLjhmOGI4M2M2OWE2MGI2YzIzMDE1MmZlM2E5ODFkNjg2cC0zLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA5OAorICAgIC0weDEuOGY4YjgzYzY5YTYwYjZjMjMwMTUyZmUzYTk4MWQ2ODZwLTMsCisgICAgLTB4MS45MjFmYjU0NDQyZDE5cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTA5OQorICAgIDB4MS44N2RlMmE2YWVhOTYxYTNlOWRlZGVhNTdmZTdlNjUxNHAtMiwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AtMgorICB9LAorICB7IC8vIEVudHJ5IDExMDAKKyAgICAtMHgxLjg3ZGUyYTZhZWE5NjFhM2U5ZGVkZWE1N2ZlN2U2NTE0cC0yLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtMgorICB9LAorICB7IC8vIEVudHJ5IDExMDEKKyAgICAweDEuODdkZTJhNmFlYTk2MjkwNmQzZDU4MzllYTFhNWJjZjBwLTIsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAyCisgICAgLTB4MS44N2RlMmE2YWVhOTYyOTA2ZDNkNTgzOWVhMWE1YmNmMHAtMiwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAzCisgICAgMHgxLjg3ZGUyYTZhZWE5NjM3Y2YwOWJkMWNlNTQ0YjQ5NmVhcC0yLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTEwNAorICAgIC0weDEuODdkZTJhNmFlYTk2MzdjZjA5YmQxY2U1NDRiNDk2ZWFwLTIsCisgICAgLTB4MS45MjFmYjU0NDQyZDE5cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTEwNQorICAgIDB4MS42YTA5ZTY2N2YzYmNiYTk5YWZiMDEzNTcyOTQ1Nzg3NHAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDExMDYKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2JhOTlhZmIwMTM1NzI5NDU3ODc0cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDExMDcKKyAgICAweDEuNmEwOWU2NjdmM2JjYzVlOWZlZTM1MmY1MGZkM2Y0ZTlwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTA4CisgICAgLTB4MS42YTA5ZTY2N2YzYmNjNWU5ZmVlMzUyZjUwZmQzZjRlOXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTA5CisgICAgMHgxLjZhMDllNjY3ZjNiY2QxM2E0ZTE2OTI5MmY2MDdlZWU1cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTExMAorICAgIC0weDEuNmEwOWU2NjdmM2JjZDEzYTRlMTY5MjkyZjYwN2VlZTVwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTExMQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTVmNTZmZnAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTExMgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWM4ODMxcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTE0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDExMTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3OWI5NjNwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwMAorICB9LAorICB7IC8vIEVudHJ5IDExMTYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzliOTYzcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTExNworICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDliZmFlZWQ0MnAtNTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwMQorICB9LAorICB7IC8vIEVudHJ5IDExMTgKKyAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWJmYWVlZDQycC01MSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwMQorICB9LAorICB7IC8vIEVudHJ5IDExMTkKKyAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQzNmUyZWRwLTUzLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIwCisgICAgLTB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwNDM2ZTJlZHAtNTMsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIxCisgICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3ZDViYmM1Y3AtNTIsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwMQorICB9LAorICB7IC8vIEVudHJ5IDExMjIKKyAgICAweDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZjN2Q1YmJjNWNwLTUyLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTEyMworICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ5YmI4N2NlMWJwLTUwLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI0CisgICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWJiODdjZTFicC01MCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwMgorICB9LAorICB7IC8vIEVudHJ5IDExMjUKKyAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0MGJmMDAzcC01MiwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTEyNgorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwNDBiZjAwM3AtNTIsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI3CisgICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzdiZDZiZjRkcC01MSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTEyOAorICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZjN2JkNmJmNGRwLTUxLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTEyOQorICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ5YWFlYjUxODJwLTQ5LAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMwCisgICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWFhZWI1MTgycC00OSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwMworICB9LAorICB7IC8vIEVudHJ5IDExMzEKKyAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzAzNjAyNDVjcC01MSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTEzMgorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwMzYwMjQ1Y3AtNTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMzCisgICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2Yzc1YzJjYjBlcC01MCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTEzNAorICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZjNzVjMmNiMGVwLTUwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTEzNQorICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ5Njg3OTVmMWNwLTQ4LAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTM2CisgICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OTY4Nzk1ZjFjcC00OCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwNAorICB9LAorICB7IC8vIEVudHJ5IDExMzcKKyAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzAwYjBmNWJmcC01MCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEzOAorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwMGIwZjViZnAtNTAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTM5CisgICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzVkNzJmYTExcC00OSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTE0MAorICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZjNWQ3MmZhMTFwLTQ5LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTE0MQorICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ4NWViMTk1ODRwLTQ3LAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQyCisgICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0ODVlYjE5NTg0cC00NywKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwNQorICB9LAorICB7IC8vIEVudHJ5IDExNDMKKyAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNmY1ZjQzYjRjcC00OSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA1CisgIH0sCisgIHsgLy8gRW50cnkgMTE0NAorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjZmNWY0M2I0Y3AtNDksCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ1CisgICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YmZjMzNiNjFmcC00OCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOXA1CisgIH0sCisgIHsgLy8gRW50cnkgMTE0NgorICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZiZmMzM2I2MWZwLTQ4LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA1CisgIH0sCisgIHsgLy8gRW50cnkgMTE0NworICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ0Mzc5MjZmMjVwLTQ2LAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ4CisgICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0NDM3OTI2ZjI1cC00NiwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwNgorICB9LAorICB7IC8vIEVudHJ5IDExNDkKKyAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNmNiMDE1MTdkcC00OCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTE1MAorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjZjYjAxNTE3ZHAtNDgsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUxCisgICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YTc3MzZhNjU4cC00NywKKyAgICAweDEuOTIxZmI1NDQ0MmQxOXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTE1MgorICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZhNzczNmE2NThwLTQ3LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTE1MworICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDMzOWIxNWQ1YWFwLTQ1LAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTU0CisgICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjAzMzliMTVkNWFhcC00NSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwNworICB9LAorICB7IC8vIEVudHJ5IDExNTUKKyAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNjFmMzVhYTQzcC00NywKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA3CisgIH0sCisgIHsgLy8gRW50cnkgMTE1NgorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjYxZjM1YWE0M3AtNDcsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTU3CisgICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2NDYzNDI2NzNhcC00NiwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOXA3CisgIH0sCisgIHsgLy8gRW50cnkgMTE1OAorICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjY0NjM0MjY3M2FwLTQ2LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA3CisgIH0sCisgIHsgLy8gRW50cnkgMTE1OQorICAgIDB4MS42YTA5ZTY2N2YzYmNmZmE2MGMwZjUzMzQwZmQyNDkwNHAtMSwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTE2MAorICAgIC0weDEuNmEwOWU2NjdmM2JjZmZhNjBjMGY1MzM0MGZkMjQ5MDRwLTEsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYxCisgICAgMHgxLjZhMDllNjY3ZjNiY2QyNjRjZjQyNTRiYzdhYjBjOWZhcC0xLAorICAgIDB4MS4yZDk3YzdmMzMyMWQycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYyCisgICAgLTB4MS42YTA5ZTY2N2YzYmNkMjY0Y2Y0MjU0YmM3YWIwYzlmYXAtMSwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDJwMQorICB9LAorICB7IC8vIEVudHJ5IDExNjMKKyAgICAweDEuNmEwOWU2NjdmM2JjYTUyMzkyNzU1NjQ0ZGZlNzIzNTdwLTEsCisgICAgMHgxLjJkOTdjN2YzMzIxZDNwMQorICB9LAorICB7IC8vIEVudHJ5IDExNjQKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2E1MjM5Mjc1NTY0NGRmZTcyMzU3cC0xLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkM3AxCisgIH0sCisgIHsgLy8gRW50cnkgMTE2NQorICAgIC0weDEuNmEwOWU2NjdmM2JjOGMyZGYxYjc1MmI2MDZhMGE0NzJwLTEsCisgICAgMHgxLmY2YTdhMjk1NTM4NWRwMQorICB9LAorICB7IC8vIEVudHJ5IDExNjYKKyAgICAweDEuNmEwOWU2NjdmM2JjOGMyZGYxYjc1MmI2MDZhMGE0NzJwLTEsCisgICAgLTB4MS5mNmE3YTI5NTUzODVkcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTY3CisgICAgLTB4MS42YTA5ZTY2N2YzYmNiOTZmMmU4NDUxMmRhNDg4ZmYyZHAtMSwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTE2OAorICAgIDB4MS42YTA5ZTY2N2YzYmNiOTZmMmU4NDUxMmRhNDg4ZmYyZHAtMSwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWVwMQorICB9LAorICB7IC8vIEVudHJ5IDExNjkKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2U2YjA2YjUxNGZhNTNjYzkzMjRmcC0xLAorICAgIDB4MS5mNmE3YTI5NTUzODVmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcwCisgICAgMHgxLjZhMDllNjY3ZjNiY2U2YjA2YjUxNGZhNTNjYzkzMjRmcC0xLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTE3MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZThiMjdiNmFwLTEsCisgICAgMHgxLjJkOTdjN2YzMzIxZDFwMgorICB9LAorICB7IC8vIEVudHJ5IDExNzIKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZThiMjdiNmFwLTEsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTczCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjUwYzliZHAtMSwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE3NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjUwYzliZHAtMSwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDJwMgorICB9LAorICB7IC8vIEVudHJ5IDExNzUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1ZWYxODEwcC0xLAorICAgIDB4MS4yZDk3YzdmMzMyMWQzcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTc2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1ZWYxODEwcC0xLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkM3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTE3NworICAgIC0weDEuNmEwOWU2NjdmM2JkMzk2MjE5M2I1MzczMDY5YmEwYzJwLTEsCisgICAgMHgxLjVmZGJiZTliYmE3NzRwMgorICB9LAorICB7IC8vIEVudHJ5IDExNzgKKyAgICAweDEuNmEwOWU2NjdmM2JkMzk2MjE5M2I1MzczMDY5YmEwYzJwLTEsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTc5CisgICAgLTB4MS42YTA5ZTY2N2YzYmNkZWRmOWZhMTU2ODNlNTFmN2U2MHAtMSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE4MAorICAgIDB4MS42YTA5ZTY2N2YzYmNkZWRmOWZhMTU2ODNlNTFmN2U2MHAtMSwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzVwMgorICB9LAorICB7IC8vIEVudHJ5IDExODEKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzg0NWQyNjA3NTk5NGFkMDJiZDk4cC0xLAorICAgIDB4MS41ZmRiYmU5YmJhNzc2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgyCisgICAgMHgxLjZhMDllNjY3ZjNiYzg0NWQyNjA3NTk5NGFkMDJiZDk4cC0xLAorICAgIC0weDEuNWZkYmJlOWJiYTc3NnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE4MworICAgIDB4MS42YTA5ZTY2N2YzYmM1MjcxZTQ4YjUyNzZmNDM4NTc5ZnAtMSwKKyAgICAweDEuYzQ2M2FiZWNjYjJiYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE4NAorICAgIC0weDEuNmEwOWU2NjdmM2JjNTI3MWU0OGI1Mjc2ZjQzODU3OWZwLTEsCisgICAgLTB4MS5jNDYzYWJlY2NiMmJhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg1CisgICAgMHgxLjZhMDllNjY3ZjNiY2FjZjQ1ZTI1NGY2NjM4Y2ZlOGM2cC0xLAorICAgIDB4MS5jNDYzYWJlY2NiMmJicDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg2CisgICAgLTB4MS42YTA5ZTY2N2YzYmNhY2Y0NWUyNTRmNjYzOGNmZThjNnAtMSwKKyAgICAtMHgxLmM0NjNhYmVjY2IyYmJwMgorICB9LAorICB7IC8vIEVudHJ5IDExODcKKyAgICAweDEuNmEwOWU2NjdmM2JkMDc3NmQ3YmY0YzU1NjZjNmRiODdwLTEsCisgICAgMHgxLmM0NjNhYmVjY2IyYmNwMgorICB9LAorICB7IC8vIEVudHJ5IDExODgKKyAgICAtMHgxLjZhMDllNjY3ZjNiZDA3NzZkN2JmNGM1NTY2YzZkYjg3cC0xLAorICAgIC0weDEuYzQ2M2FiZWNjYjJiY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMTE4OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlMzExNzRmNXAtMSwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE5MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTMxMTc0ZjVwLTEsCisgICAgLTB4MS5mNmE3YTI5NTUzODVkcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlMTk0Y2Q0cC0xLAorICAgIDB4MS5mNmE3YTI5NTUzODVlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTE5NGNkNHAtMSwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWVwMgorICB9LAorICB7IC8vIEVudHJ5IDExOTMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjkyMTI0YjRwLTEsCisgICAgMHgxLmY2YTdhMjk1NTM4NWZwMgorICB9LAorICB7IC8vIEVudHJ5IDExOTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5MjEyNGI0cC0xLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE5NQorICAgIDB4MS42YTA5ZTY2N2YzYmRmYWUxZGNjZTRmMTg2NjU2ODFjNnAtMSwKKyAgICAweDEuMTQ3NWNjOWVlZGVmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE5NgorICAgIC0weDEuNmEwOWU2NjdmM2JkZmFlMWRjY2U0ZjE4NjY1NjgxYzZwLTEsCisgICAgLTB4MS4xNDc1Y2M5ZWVkZWZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk3CisgICAgMHgxLjZhMDllNjY3ZjNiZDQ1ZGNlOTlhNTUzYTZkN2Q4MDY1cC0xLAorICAgIDB4MS4xNDc1Y2M5ZWVkZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE5OAorICAgIC0weDEuNmEwOWU2NjdmM2JkNDVkY2U5OWE1NTNhNmQ3ZDgwNjVwLTEsCisgICAgLTB4MS4xNDc1Y2M5ZWVkZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTE5OQorICAgIDB4MS42YTA5ZTY2N2YzYmM5MGQ3ZjY2NjViNWMxYTIyMDU2YXAtMSwKKyAgICAweDEuMTQ3NWNjOWVlZGYwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIwMAorICAgIC0weDEuNmEwOWU2NjdmM2JjOTBkN2Y2NjY1YjVjMWEyMjA1NmFwLTEsCisgICAgLTB4MS4xNDc1Y2M5ZWVkZjAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAxCisgICAgMHgxLjM0ZjI3Mjk5M2QxNDE0YTJiMzliZDgzNzNlMGQ2Yjk0cC00OSwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIwMgorICAgIC0weDEuMzRmMjcyOTkzZDE0MTRhMmIzOWJkODM3M2UwZDZiOTRwLTQ5LAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIwMworICAgIDB4MS5hNzkzOTRjOWU4YTBhNTE1OWNkZWMxYmE4NWE2ODhiZHAtNTIsCisgICAgMHgxLjJkOTdjN2YzMzIxZDJwMworICB9LAorICB7IC8vIEVudHJ5IDEyMDQKKyAgICAtMHgxLmE3OTM5NGM5ZThhMGE1MTU5Y2RlYzFiYTg1YTY4OGJkcC01MiwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDJwMworICB9LAorICB7IC8vIEVudHJ5IDEyMDUKKyAgICAtMHgxLjk2MWIxYWNkODVkN2Q2YmE5OGM4NGY5MTUzYzBjYzE2cC01MCwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkM3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTIwNgorICAgIDB4MS45NjFiMWFjZDg1ZDdkNmJhOThjODRmOTE1M2MwY2MxNnAtNTAsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQzcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjA3CisgICAgLTB4MS42YTA5ZTY2N2YzYmI5MGYyMjBmODU2ZDBiMWE0MDZjM3AtMSwKKyAgICAweDEuNDZiOWMzNDc3NjRhMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIwOAorICAgIDB4MS42YTA5ZTY2N2YzYmI5MGYyMjBmODU2ZDBiMWE0MDZjM3AtMSwKKyAgICAtMHgxLjQ2YjljMzQ3NzY0YTJwMworICB9LAorICB7IC8vIEVudHJ5IDEyMDkKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzQ1ZjcxNDJjNTBhZjg0ZjI2Yzc1cC0xLAorICAgIDB4MS40NmI5YzM0Nzc2NGEzcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEwCisgICAgMHgxLjZhMDllNjY3ZjNiYzQ1ZjcxNDJjNTBhZjg0ZjI2Yzc1cC0xLAorICAgIC0weDEuNDZiOWMzNDc3NjRhM3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTIxMQorICAgIC0weDEuNmEwOWU2NjdmM2JjZmFmYzA3NjA0YThkZmRiZTU4OGRwLTEsCisgICAgMHgxLjQ2YjljMzQ3NzY0YTRwMworICB9LAorICB7IC8vIEVudHJ5IDEyMTIKKyAgICAweDEuNmEwOWU2NjdmM2JjZmFmYzA3NjA0YThkZmRiZTU4OGRwLTEsCisgICAgLTB4MS40NmI5YzM0Nzc2NGE0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5ZDYzNGU5ZnAtMSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIxNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5ZDYzNGU5ZnAtMSwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzRwMworICB9LAorICB7IC8vIEVudHJ5IDEyMTUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjNDYxMTc4cC0xLAorICAgIDB4MS41ZmRiYmU5YmJhNzc1cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjE2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjNDYxMTc4cC0xLAorICAgIC0weDEuNWZkYmJlOWJiYTc3NXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIxNworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGIyOGQ0NTFwLTEsCisgICAgMHgxLjVmZGJiZTliYmE3NzZwMworICB9LAorICB7IC8vIEVudHJ5IDEyMTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGIyOGQ0NTFwLTEsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjE5CisgICAgLTB4MS42YTA5ZTY2N2YzYmUwNzVjYWQyZDUwZGZjNjhjZDg4ZnAtMSwKKyAgICAweDEuNzhmZGI5ZWZmZWE0NXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIyMAorICAgIDB4MS42YTA5ZTY2N2YzYmUwNzVjYWQyZDUwZGZjNjhjZDg4ZnAtMSwKKyAgICAtMHgxLjc4ZmRiOWVmZmVhNDVwMworICB9LAorICB7IC8vIEVudHJ5IDEyMjEKKyAgICAtMHgxLjZhMDllNjY3ZjNiZDUyNTdiOWY5NTcwMWQzZjEzZjVkcC0xLAorICAgIDB4MS43OGZkYjllZmZlYTQ2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIyCisgICAgMHgxLjZhMDllNjY3ZjNiZDUyNTdiOWY5NTcwMWQzZjEzZjVkcC0xLAorICAgIC0weDEuNzhmZGI5ZWZmZWE0NnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIyMworICAgIC0weDEuNmEwOWU2NjdmM2JjOWQ1MmM2YzU1ZDIzODZkMzJjOTJwLTEsCisgICAgMHgxLjc4ZmRiOWVmZmVhNDdwMworICB9LAorICB7IC8vIEVudHJ5IDEyMjQKKyAgICAweDEuNmEwOWU2NjdmM2JjOWQ1MmM2YzU1ZDIzODZkMzJjOTJwLTEsCisgICAgLTB4MS43OGZkYjllZmZlYTQ3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjI1CisgICAgMHgxLjZhMDllNjY3ZjNiYjg0Nzc1MDk5NTUwOTNiYjI5MmJlcC0xLAorICAgIDB4MS5hYjQxYjA5ODg2ZmU4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjI2CisgICAgLTB4MS42YTA5ZTY2N2YzYmI4NDc3NTA5OTU1MDkzYmIyOTJiZXAtMSwKKyAgICAtMHgxLmFiNDFiMDk4ODZmZThwMworICB9LAorICB7IC8vIEVudHJ5IDEyMjcKKyAgICAweDEuNmEwOWU2NjdmM2JjMzk3YzQzY2Q0ZWU4MTUzZTYwYTBwLTEsCisgICAgMHgxLmFiNDFiMDk4ODZmZTlwMworICB9LAorICB7IC8vIEVudHJ5IDEyMjgKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzM5N2M0M2NkNGVlODE1M2U2MGEwcC0xLAorICAgIC0weDEuYWI0MWIwOTg4NmZlOXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIyOQorICAgIDB4MS42YTA5ZTY2N2YzYmNlZTgxMzcwMTQ4YzY5NDQ3YjRlN3AtMSwKKyAgICAweDEuYWI0MWIwOTg4NmZlYXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIzMAorICAgIC0weDEuNmEwOWU2NjdmM2JjZWU4MTM3MDE0OGM2OTQ0N2I0ZTdwLTEsCisgICAgLTB4MS5hYjQxYjA5ODg2ZmVhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjkyMjE0MWI0cC0xLAorICAgIDB4MS5jNDYzYWJlY2NiMmJhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5MjIxNDFiNHAtMSwKKyAgICAtMHgxLmM0NjNhYmVjY2IyYmFwMworICB9LAorICB7IC8vIEVudHJ5IDEyMzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjlkNzE3YTdwLTEsCisgICAgMHgxLmM0NjNhYmVjY2IyYmJwMworICB9LAorICB7IC8vIEVudHJ5IDEyMzQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5ZDcxN2E3cC0xLAorICAgIC0weDEuYzQ2M2FiZWNjYjJiYnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTIzNQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlMThjZWQ5YXAtMSwKKyAgICAweDEuYzQ2M2FiZWNjYjJiY3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTIzNgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTE4Y2VkOWFwLTEsCisgICAgLTB4MS5jNDYzYWJlY2NiMmJjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjM3CisgICAgMHgxLjZhMDllNjY3ZjNiZTEzZDc3ZDhjNTJhNzI2NTUwZWFjcC0xLAorICAgIDB4MS5kZDg1YTc0MTBmNThicDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjM4CisgICAgLTB4MS42YTA5ZTY2N2YzYmUxM2Q3N2Q4YzUyYTcyNjU1MGVhY3AtMSwKKyAgICAtMHgxLmRkODVhNzQxMGY1OGJwMworICB9LAorICB7IC8vIEVudHJ5IDEyMzkKKyAgICAweDEuNmEwOWU2NjdmM2JkNWVkMjhhNTg1OGM5MzlmNmRkYWFwLTEsCisgICAgMHgxLmRkODVhNzQxMGY1OGNwMworICB9LAorICB7IC8vIEVudHJ5IDEyNDAKKyAgICAtMHgxLjZhMDllNjY3ZjNiZDVlZDI4YTU4NThjOTM5ZjZkZGFhcC0xLAorICAgIC0weDEuZGQ4NWE3NDEwZjU4Y3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTI0MQorICAgIDB4MS42YTA5ZTY2N2YzYmNhOWNkOTcyNDVlZWFmMzE2MzMwZXAtMSwKKyAgICAweDEuZGQ4NWE3NDEwZjU4ZHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTI0MgorICAgIC0weDEuNmEwOWU2NjdmM2JjYTljZDk3MjQ1ZWVhZjMxNjMzMGVwLTEsCisgICAgLTB4MS5kZDg1YTc0MTBmNThkcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQzCisgICAgMHgxLjU4M2ViZWZmNjVjYzIyNjQ4MGFlNjg1YzE3NjVkZWMxcC00OSwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTI0NAorICAgIC0weDEuNTgzZWJlZmY2NWNjMjI2NDgwYWU2ODVjMTc2NWRlYzFwLTQ5LAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTI0NQorICAgIDB4MS42MGZhZmJmZDk3MzA4OTkyMDJiOWExNzBjMzk3MWU4NnAtNTEsCisgICAgMHgxLmY2YTdhMjk1NTM4NWVwMworICB9LAorICB7IC8vIEVudHJ5IDEyNDYKKyAgICAtMHgxLjYwZmFmYmZkOTczMDg5OTIwMmI5YTE3MGMzOTcxZTg2cC01MSwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWVwMworICB9LAorICB7IC8vIEVudHJ5IDEyNDcKKyAgICAtMHgxLjRmODI4MjAxMzQ2N2JiMzZmZWEzMmY0Nzk3NTNmZTdhcC01MCwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTI0OAorICAgIDB4MS40ZjgyODIwMTM0NjdiYjM2ZmVhMzJmNDc5NzUzZmU3YXAtNTAsCisgICAgLTB4MS5mNmE3YTI5NTUzODVmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQ5CisgICAgLTB4MS42YTA5ZTY2N2YzYmEwZGYyOTlkMjVmODJmNjM5MjUxZnAtMSwKKyAgICAweDEuMDdlNGNlZjRjYmQ5NnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI1MAorICAgIDB4MS42YTA5ZTY2N2YzYmEwZGYyOTlkMjVmODJmNjM5MjUxZnAtMSwKKyAgICAtMHgxLjA3ZTRjZWY0Y2JkOTZwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNTEKKyAgICAtMHgxLjZhMDllNjY3ZjNiYjc3ZmM4MDNhNTM0MWM1NTJmZTBmcC0xLAorICAgIDB4MS4wN2U0Y2VmNGNiZDk3cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUyCisgICAgMHgxLjZhMDllNjY3ZjNiYjc3ZmM4MDNhNTM0MWM1NTJmZTBmcC0xLAorICAgIC0weDEuMDdlNGNlZjRjYmQ5N3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTI1MworICAgIC0weDEuNmEwOWU2NjdmM2JjZTIwNjY2YTI0NmZmMmE2MmYwOTdwLTEsCisgICAgMHgxLjA3ZTRjZWY0Y2JkOThwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNTQKKyAgICAweDEuNmEwOWU2NjdmM2JjZTIwNjY2YTI0NmZmMmE2MmYwOTdwLTEsCisgICAgLTB4MS4wN2U0Y2VmNGNiZDk4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjU1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQyNTMxYTQzZHAtMSwKKyAgICAweDEuMTQ3NWNjOWVlZGVmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI1NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQyNTMxYTQzZHAtMSwKKyAgICAtMHgxLjE0NzVjYzllZWRlZmZwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjg2NDM3NjU2cC0xLAorICAgIDB4MS4xNDc1Y2M5ZWVkZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI1OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4NjQzNzY1NnAtMSwKKyAgICAtMHgxLjE0NzVjYzllZWRmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjU5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNzU1NDg2ZnAtMSwKKyAgICAweDEuMTQ3NWNjOWVlZGYwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI2MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNzU1NDg2ZnAtMSwKKyAgICAtMHgxLjE0NzVjYzllZWRmMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNjEKKyAgICAtMHgxLjZhMDllNjY3ZjNiZWQ1NTc0MTFmNGU0YzExNGQ3MzU3cC0xLAorICAgIDB4MS4yMTA2Y2E0OTEwMDY4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYyCisgICAgMHgxLjZhMDllNjY3ZjNiZWQ1NTc0MTFmNGU0YzExNGQ3MzU3cC0xLAorICAgIC0weDEuMjEwNmNhNDkxMDA2OHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI2MworICAgIC0weDEuNmEwOWU2NjdmM2JkNmI0ZDVhYjc1YTkwOWY4ZTViNGNwLTEsCisgICAgMHgxLjIxMDZjYTQ5MTAwNjlwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNjQKKyAgICAweDEuNmEwOWU2NjdmM2JkNmI0ZDVhYjc1YTkwOWY4ZTViNGNwLTEsCisgICAgLTB4MS4yMTA2Y2E0OTEwMDY5cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjY1CisgICAgLTB4MS42YTA5ZTY2N2YzYmMwMTQzNzQ0ZjY2ZDNjM2M1NWNkOXAtMSwKKyAgICAweDEuMjEwNmNhNDkxMDA2YXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI2NgorICAgIDB4MS42YTA5ZTY2N2YzYmMwMTQzNzQ0ZjY2ZDNjM2M1NWNkOXAtMSwKKyAgICAtMHgxLjIxMDZjYTQ5MTAwNmFwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNjcKKyAgICAtMHgxLjM0ZjI3Mjk5M2QxNDE0YTJiMzliZDgzNzA1Y2VjMTIwcC00OCwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI2OAorICAgIDB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4MzcwNWNlYzEyMHAtNDgsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjY5CisgICAgLTB4MS5hNzkzOTRjOWU4YTBhNTE1OWNkZWMxYmE4MzYyYjk2OHAtNTEsCisgICAgMHgxLjJkOTdjN2YzMzIxZDJwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNzAKKyAgICAweDEuYTc5Mzk0YzllOGEwYTUxNTljZGVjMWJhODM2MmI5NjhwLTUxLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI3MQorICAgIDB4MS45NjFiMWFjZDg1ZDdkNmJhOThjODRmOTEzM2QxMGFiZXAtNDksCisgICAgMHgxLjJkOTdjN2YzMzIxZDNwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNzIKKyAgICAtMHgxLjk2MWIxYWNkODVkN2Q2YmE5OGM4NGY5MTMzZDEwYWJlcC00OSwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDNwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNzMKKyAgICAweDEuNmEwOWU2NjdmM2JhMDE3N2M5NzM1ZGJiNzJmMDlmNjVwLTEsCisgICAgMHgxLjNhMjhjNTlkNTQzMzlwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNzQKKyAgICAtMHgxLjZhMDllNjY3ZjNiYTAxNzdjOTczNWRiYjcyZjA5ZjY1cC0xLAorICAgIC0weDEuM2EyOGM1OWQ1NDMzOXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI3NQorICAgIDB4MS42YTA5ZTY2N2YzYmI2YjgxYWZkYjUxN2E0ZTg1NDhiNHAtMSwKKyAgICAweDEuM2EyOGM1OWQ1NDMzYXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI3NgorICAgIC0weDEuNmEwOWU2NjdmM2JiNmI4MWFmZGI1MTdhNGU4NTQ4YjRwLTEsCisgICAgLTB4MS4zYTI4YzU5ZDU0MzNhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjc3CisgICAgMHgxLjZhMDllNjY3ZjNiY2Q1OGI5NjQzNDUzN2MwMTAwYjlicC0xLAorICAgIDB4MS4zYTI4YzU5ZDU0MzNicDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjc4CisgICAgLTB4MS42YTA5ZTY2N2YzYmNkNThiOTY0MzQ1MzdjMDEwMGI5YnAtMSwKKyAgICAtMHgxLjNhMjhjNTlkNTQzM2JwNAorICB9LAorICB7IC8vIEVudHJ5IDEyNzkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkMDcxMWY0MzdwLTEsCisgICAgMHgxLjQ2YjljMzQ3NzY0YTJwNAorICB9LAorICB7IC8vIEVudHJ5IDEyODAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDA3MTFmNDM3cC0xLAorICAgIC0weDEuNDZiOWMzNDc3NjRhMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI4MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3OWM5ZWM4M3AtMSwKKyAgICAweDEuNDZiOWMzNDc3NjRhM3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTI4MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzljOWVjODNwLTEsCisgICAgLTB4MS40NmI5YzM0Nzc2NGEzcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODFlNGNmcC0xLAorICAgIDB4MS40NmI5YzM0Nzc2NGE0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjg0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzgxZTRjZnAtMSwKKyAgICAtMHgxLjQ2YjljMzQ3NzY0YTRwNAorICB9LAorICB7IC8vIEVudHJ5IDEyODUKKyAgICAweDEuNmEwOWU2NjdmM2JlZTFkMjExN2U1MDEzNjlmYmZmZWZwLTEsCisgICAgMHgxLjUzNGFjMGYxOTg2MGJwNAorICB9LAorICB7IC8vIEVudHJ5IDEyODYKKyAgICAtMHgxLjZhMDllNjY3ZjNiZWUxZDIxMTdlNTAxMzY5ZmJmZmVmcC0xLAorICAgIC0weDEuNTM0YWMwZjE5ODYwYnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI4NworICAgIDB4MS42YTA5ZTY2N2YzYmQ3N2M4MmIxNjVjNTgwNGI3Yjg0M3AtMSwKKyAgICAweDEuNTM0YWMwZjE5ODYwY3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTI4OAorICAgIC0weDEuNmEwOWU2NjdmM2JkNzdjODJiMTY1YzU4MDRiN2I4NDNwLTEsCisgICAgLTB4MS41MzRhYzBmMTk4NjBjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjg5CisgICAgMHgxLjZhMDllNjY3ZjNiYzBkYmU0NGFlNjg5YjM1Njk4YTJmcC0xLAorICAgIDB4MS41MzRhYzBmMTk4NjBkcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkwCisgICAgLTB4MS42YTA5ZTY2N2YzYmMwZGJlNDRhZTY4OWIzNTY5OGEyZnAtMSwKKyAgICAtMHgxLjUzNGFjMGYxOTg2MGRwNAorICB9LAorICB7IC8vIEVudHJ5IDEyOTEKKyAgICAweDEuM2RjNTg1YjJjNzQyMTgxMzI2ZTA3YzQwMzc1NDY0ZGVwLTQ4LAorICAgIDB4MS41ZmRiYmU5YmJhNzc0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkyCisgICAgLTB4MS4zZGM1ODViMmM3NDIxODEzMjZlMDdjNDAzNzU0NjRkZXAtNDgsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkzCisgICAgMHgxLmVlMmMyZDk2M2ExMGMwOTkzNzAzZTIwNDQyYWQ3YjhkcC01MSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI5NAorICAgIC0weDEuZWUyYzJkOTYzYTEwYzA5OTM3MDNlMjA0NDJhZDdiOGRwLTUxLAorICAgIC0weDEuNWZkYmJlOWJiYTc3NXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTI5NQorICAgIC0weDEuODQ3NGY0OWE3MTdiY2ZkOWIyM2YwNzdlYzhkZDE3NWJwLTQ5LAorICAgIDB4MS41ZmRiYmU5YmJhNzc2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjk2CisgICAgMHgxLjg0NzRmNDlhNzE3YmNmZDliMjNmMDc3ZWM4ZGQxNzVicC00OSwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzZwNAorICB9LAorICB7IC8vIEVudHJ5IDEyOTcKKyAgICAtMHgxLjZhMDllNjY3ZjNiOWY0ZmNmOTE0NWJmM2VmMzlmOTAxcC0xLAorICAgIDB4MS42YzZjYmM0NWRjOGRjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjk4CisgICAgMHgxLjZhMDllNjY3ZjNiOWY0ZmNmOTE0NWJmM2VmMzlmOTAxcC0xLAorICAgIC0weDEuNmM2Y2JjNDVkYzhkY3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTI5OQorICAgIC0weDEuNmEwOWU2NjdmM2JiNWYwNmRmN2M0ZmIyZDc0OTcyYWVwLTEsCisgICAgMHgxLjZjNmNiYzQ1ZGM4ZGRwNAorICB9LAorICB7IC8vIEVudHJ5IDEzMDAKKyAgICAweDEuNmEwOWU2NjdmM2JiNWYwNmRmN2M0ZmIyZDc0OTcyYWVwLTEsCisgICAgLTB4MS42YzZjYmM0NWRjOGRkcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAxCisgICAgLTB4MS42YTA5ZTY2N2YzYmNjOTEwYzVlNDQzNzA1NTRmMDVmNHAtMSwKKyAgICAweDEuNmM2Y2JjNDVkYzhkZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTMwMgorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTEwYzVlNDQzNzA1NTRmMDVmNHAtMSwKKyAgICAtMHgxLjZjNmNiYzQ1ZGM4ZGVwNAorICB9LAorICB7IC8vIEVudHJ5IDEzMDMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2U4NTY4NWJkcC0xLAorICAgIDB4MS43OGZkYjllZmZlYTQ1cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzA0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2U4NTY4NWJkcC0xLAorICAgIC0weDEuNzhmZGI5ZWZmZWE0NXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTMwNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNmNiNGE0M2RwLTEsCisgICAgMHgxLjc4ZmRiOWVmZmVhNDZwNAorICB9LAorICB7IC8vIEVudHJ5IDEzMDYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNmNiNGE0M2RwLTEsCisgICAgLTB4MS43OGZkYjllZmZlYTQ2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzA3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTEyYzJiY3AtMSwKKyAgICAweDEuNzhmZGI5ZWZmZWE0N3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTMwOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTEyYzJiY3AtMSwKKyAgICAtMHgxLjc4ZmRiOWVmZmVhNDdwNAorICB9LAorICB7IC8vIEVudHJ5IDEzMDkKKyAgICAtMHgxLjZhMDllNjY3ZjNiZWVlNGNlMWRkNTFkYWMyM2M2YmRjcC0xLAorICAgIDB4MS44NThlYjc5YTIwYmFlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEwCisgICAgMHgxLjZhMDllNjY3ZjNiZWVlNGNlMWRkNTFkYWMyM2M2YmRjcC0xLAorICAgIC0weDEuODU4ZWI3OWEyMGJhZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTMxMQorICAgIC0weDEuNmEwOWU2NjdmM2JkODQ0MmZiNzU1ZTFmNjk3MmY0OGZwLTEsCisgICAgMHgxLjg1OGViNzlhMjBiYWZwNAorICB9LAorICB7IC8vIEVudHJ5IDEzMTIKKyAgICAweDEuNmEwOWU2NjdmM2JkODQ0MmZiNzU1ZTFmNjk3MmY0OGZwLTEsCisgICAgLTB4MS44NThlYjc5YTIwYmFmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEzCisgICAgLTB4MS42YTA5ZTY2N2YzYmMxYTM5MTUwZDZhNjJhNjlmOTZkYXAtMSwKKyAgICAweDEuODU4ZWI3OWEyMGJiMHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTMxNAorICAgIDB4MS42YTA5ZTY2N2YzYmMxYTM5MTUwZDZhNjJhNjlmOTZkYXAtMSwKKyAgICAtMHgxLjg1OGViNzlhMjBiYjBwNAorICB9LAorICB7IC8vIEVudHJ5IDEzMTUKKyAgICAweDEuZmE3Mjk5YjE3NTczZDM3M2M2MTUwOTY1NzJhMGRlMDRwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzE2CisgICAgLTB4MS5mYTcyOTliMTc1NzNkMzczYzYxNTA5NjU3MmEwZGUwNHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzE3CisgICAgMHgxLmZmZjZkZmQ0MmRjNTQ0MzBiYzA1NzZiMDBhODhiZDk0cC0xLAorICAgIDB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTMxOAorICAgIC0weDEuZmZmNmRmZDQyZGM1NDQzMGJjMDU3NmIwMGE4OGJkOTRwLTEsCisgICAgLTB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTMxOQorICAgIDB4MS5lNDU2YjgxOGU3Mzk2YjQ1OTg5OTc4ZDRiN2ViZjdiM3AtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2MworICB9LAorICB7IC8vIEVudHJ5IDEzMjAKKyAgICAtMHgxLmU0NTZiODE4ZTczOTZiNDU5ODk5NzhkNGI3ZWJmN2IzcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2MworICB9LAorICB7IC8vIEVudHJ5IDEzMjEKKyAgICAtMHgxLjg2ZGNjYTBkNjg5ZTdiNTZlZjc5NDgxYmU0YTY0NWM2cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI2CisgIH0sCisgIHsgLy8gRW50cnkgMTMyMgorICAgIDB4MS44NmRjY2EwZDY4OWU3YjU2ZWY3OTQ4MWJlNGE2NDVjNnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIzCisgICAgLTB4MS44NmRjYzliYWJiMGE0MGVlODc1Y2FiM2I5ZTg5Mjc1N3AtMSwKKyAgICAweDEuMHAyNworICB9LAorICB7IC8vIEVudHJ5IDEzMjQKKyAgICAweDEuODZkY2M5YmFiYjBhNDBlZTg3NWNhYjNiOWU4OTI3NTdwLTEsCisgICAgLTB4MS4wcDI3CisgIH0sCisgIHsgLy8gRW50cnkgMTMyNQorICAgIC0weDEuODZkY2M5MTU1ZmUxODJkNDUxNTU5OTQyNmJiMTRiOTRwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzI2CisgICAgMHgxLjg2ZGNjOTE1NWZlMTgyZDQ1MTU1OTk0MjZiYjE0Yjk0cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyNworICB9LAorICB7IC8vIEVudHJ5IDEzMjcKKyAgICAtMHgxLjhmMjJmODRkNDJkYTFmNTc0NjlkZmFhYzQ0YThiNzNhcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTMyOAorICAgIDB4MS44ZjIyZjg0ZDQyZGExZjU3NDY5ZGZhYWM0NGE4YjczYXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzI5CisgICAgLTB4MS44ZjIyZjg0MzNkNmVkZmU5YTRhZmY5NjIyNTE3Y2FhOXAtMSwKKyAgICAweDEuMHAyNAorICB9LAorICB7IC8vIEVudHJ5IDEzMzAKKyAgICAweDEuOGYyMmY4NDMzZDZlZGZlOWE0YWZmOTYyMjUxN2NhYTlwLTEsCisgICAgLTB4MS4wcDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTMzMQorICAgIC0weDEuOGYyMmY4MmYzMjk4NWZlMzA2OTljNmUxMmQ5ZGZjZTJwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMyCisgICAgMHgxLjhmMjJmODJmMzI5ODVmZTMwNjk5YzZlMTJkOWRmY2UycC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyNAorICB9LAorICB7IC8vIEVudHJ5IDEzMzMKKyAgICAtMHgxLjgzN2I5ZGRkYzFlYWJkMzc5ZDcyOWY1NzVmYzExNDRjcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzM0CisgICAgMHgxLjgzN2I5ZGRkYzFlYWJkMzc5ZDcyOWY1NzVmYzExNDRjcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTMzNQorICAgIC0weDEuODM3YjlkZGRjMWVhZTcwY2U5ODA1NWEwZTQ1MGQ5M2NwLTEsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDEzMzYKKyAgICAweDEuODM3YjlkZGRjMWVhZTcwY2U5ODA1NWEwZTQ1MGQ5M2NwLTEsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzM3CisgICAgLTB4MS44MzdiOWRkZGMxZWIzYWI3ODE5YmMyMzNkYjQ2OTdiNXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTMzOAorICAgIDB4MS44MzdiOWRkZGMxZWIzYWI3ODE5YmMyMzNkYjQ2OTdiNXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDEzMzkKKyAgICAweDEuZDE4ZjZlYWQxYjQ0NmI0YmNiNzNjMjM5MGIzMzBkNzVwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNDAKKyAgICAtMHgxLmQxOGY2ZWFkMWI0NDZiNGJjYjczYzIzOTBiMzMwZDc1cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM0MQorICAgIDB4MS5kMThmNmVhZDFiNDQ1ZGZhYjg0ODE4ODAwOWM5YmI5NXAtMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTM0MgorICAgIC0weDEuZDE4ZjZlYWQxYjQ0NWRmYWI4NDgxODgwMDljOWJiOTVwLTEsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQzCisgICAgMHgxLmQxOGY2ZWFkMWI0NDQzNTg5MWYwYzUwZTAxODI2OTg4cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQ0CisgICAgLTB4MS5kMThmNmVhZDFiNDQ0MzU4OTFmMGM1MGUwMTgyNjk4OHAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDEzNDUKKyAgICAweDEuYWVkNTQ4ZjA5MGNlZDc5Yzc5Y2JmNzkwNDQxZjgxOTdwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQ2CisgICAgLTB4MS5hZWQ1NDhmMDkwY2VkNzljNzljYmY3OTA0NDFmODE5N3AtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQ3CisgICAgMHgxLmFlZDU0OGYwOTBjZWUwNDE4ZGQzZDIxMzhhMWU3ODY1cC0xLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQ4CisgICAgLTB4MS5hZWQ1NDhmMDkwY2VlMDQxOGRkM2QyMTM4YTFlNzg2NXAtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNDkKKyAgICAweDEuYWVkNTQ4ZjA5MGNlZjE4YmI1ZTM4NzFhMTRkOTQ2MDlwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNTAKKyAgICAtMHgxLmFlZDU0OGYwOTBjZWYxOGJiNWUzODcxYTE0ZDk0NjA5cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM1MQorICAgIDB4MS5lYWVlODc0NGIwNWVmMDdjZDBiOTA4OTEzMDU5ODMxNHAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDEzNTIKKyAgICAtMHgxLmVhZWU4NzQ0YjA1ZWYwN2NkMGI5MDg5MTMwNTk4MzE0cC0yLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDEzNTMKKyAgICAweDEuZWFlZTg3NDRiMDVlZmU4NzY0YmMzNjRmZDgzN2I2NjZwLTIsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzU0CisgICAgLTB4MS5lYWVlODc0NGIwNWVmZTg3NjRiYzM2NGZkODM3YjY2NnAtMiwKKyAgICAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzU1CisgICAgMHgxLmVhZWU4NzQ0YjA1ZjFhOWM4Y2MyOTFjZDI3OTgxMDUxcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM1NgorICAgIC0weDEuZWFlZTg3NDRiMDVmMWE5YzhjYzI5MWNkMjc5ODEwNTFwLTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM1NworICAgIDB4MS5mYWFlZWQ0ZjMxNTc1YzI3ZjM5YzFkN2MwMTJhNDQxM3AtMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDEzNTgKKyAgICAtMHgxLmZhYWVlZDRmMzE1NzVjMjdmMzljMWQ3YzAxMmE0NDEzcC0zLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDEzNTkKKyAgICAweDEuZmFhZWVkNGYzMTU3NmJhODlkZWJkYzczNTFlOGIxYWVwLTMsCisgICAgMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYwCisgICAgLTB4MS5mYWFlZWQ0ZjMxNTc2YmE4OWRlYmRjNzM1MWU4YjFhZXAtMywKKyAgICAtMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYxCisgICAgMHgxLmZhYWVlZDRmMzE1NzhhYTlmMjhiNWE2MWYzNGRjY2IxcC0zLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTM2MgorICAgIC0weDEuZmFhZWVkNGYzMTU3OGFhOWYyOGI1YTYxZjM0ZGNjYjFwLTMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTM2MworICAgIDB4MS5mZWFhZWVlODZlZTM0Y2MwNWVmZjI4NzQwZWU3YjQ2OXAtNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDEzNjQKKyAgICAtMHgxLmZlYWFlZWU4NmVlMzRjYzA1ZWZmMjg3NDBlZTdiNDY5cC00LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDEzNjUKKyAgICAweDEuZmVhYWVlZTg2ZWUzNWNhMDY5YTg2NzIxZjg5Zjg1YTVwLTQsCisgICAgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzY2CisgICAgLTB4MS5mZWFhZWVlODZlZTM1Y2EwNjlhODY3MjFmODlmODVhNXAtNCwKKyAgICAtMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzY3CisgICAgMHgxLmZlYWFlZWU4NmVlMzdjNjA3ZWZhZTQ3ZGNjMDkyYzFjcC00LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTM2OAorICAgIC0weDEuZmVhYWVlZTg2ZWUzN2M2MDdlZmFlNDdkY2MwOTJjMWNwLTQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTM2OQorICAgIDB4MS5mZmFhYWVlZWQ0ZWQ5YjUzYTQwOGMwZjJiYzAyYzhmOXAtNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEzNzAKKyAgICAtMHgxLmZmYWFhZWVlZDRlZDliNTNhNDA4YzBmMmJjMDJjOGY5cC01LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEzNzEKKyAgICAweDEuZmZhYWFlZWVkNGVkYWI0YmE0YjM2NWVkMjVhOTU5NWZwLTUsCisgICAgMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcyCisgICAgLTB4MS5mZmFhYWVlZWQ0ZWRhYjRiYTRiMzY1ZWQyNWE5NTk1ZnAtNSwKKyAgICAtMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzczCisgICAgMHgxLmZmYWFhZWVlZDRlZGNiM2JhNjA4YWZlMWY4ZjRmYTZicC01LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTM3NAorICAgIC0weDEuZmZhYWFlZWVkNGVkY2IzYmE2MDhhZmUxZjhmNGZhNmJwLTUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTM3NQorICAgIDB4MS5mZmVhYWFlZWVlODZkOGNjZmUzNjhjZDk1ZTM4ZjAwM3AtNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEzNzYKKyAgICAtMHgxLmZmZWFhYWVlZWU4NmQ4Y2NmZTM2OGNkOTVlMzhmMDAzcC02LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEzNzcKKyAgICAweDEuZmZlYWFhZWVlZTg2ZThjYWZlNDEzNzZkNDc5MTk1NzlwLTYsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzc4CisgICAgLTB4MS5mZmVhYWFlZWVlODZlOGNhZmU0MTM3NmQ0NzkxOTU3OXAtNiwKKyAgICAtMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzc5CisgICAgMHgxLmZmZWFhYWVlZWU4NzA4YzZmZTU2OGM5NTFhNDI4MDY5cC02LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTM4MAorICAgIC0weDEuZmZlYWFhZWVlZTg3MDhjNmZlNTY4Yzk1MWE0MjgwNjlwLTYsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTM4MQorICAgIDB4MS5mZmZhYWFhZWVlZWQzZWQ1YzljNWFiNjUzOGY5Y2NlMHAtNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDEzODIKKyAgICAtMHgxLmZmZmFhYWFlZWVlZDNlZDVjOWM1YWI2NTM4ZjljY2UwcC03LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDEzODMKKyAgICAweDEuZmZmYWFhYWVlZWVkNGVkNTQ5YzY1NjBmODg5ZWU1MzFwLTcsCisgICAgMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzg0CisgICAgLTB4MS5mZmZhYWFhZWVlZWQ0ZWQ1NDljNjU2MGY4ODllZTUzMXAtNywKKyAgICAtMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzg1CisgICAgMHgxLmZmZmFhYWFlZWVlZDZlZDQ0OWM3YWI2NDI3ZThmZGQ0cC03LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTM4NgorICAgIC0weDEuZmZmYWFhYWVlZWVkNmVkNDQ5YzdhYjY0MjdlOGZkZDRwLTcsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTM4NworICAgIDB4MS5mZmZmZmZmYWFhYWE5YWFlZWVlZjZlZWQ0ZWQ0NDJhNHAtMTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgMTM4OAorICAgIC0weDEuZmZmZmZmZmFhYWFhOWFhZWVlZWY2ZWVkNGVkNDQyYTRwLTE1LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzg5CisgICAgMHgxLmZmZmZmZmZhYWFhYWFhYWVlZWVlZWVlZDRlZDRlZDRmcC0xNSwKKyAgICAweDEuMHAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkwCisgICAgLTB4MS5mZmZmZmZmYWFhYWFhYWFlZWVlZWVlZWQ0ZWQ0ZWQ0ZnAtMTUsCisgICAgLTB4MS4wcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDEzOTEKKyAgICAweDEuZmZmZmZmZmFhYWFhY2FhZWVlZWRlZWVkNGVkNjQyYTRwLTE1LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDEzOTIKKyAgICAtMHgxLmZmZmZmZmZhYWFhYWNhYWVlZWVkZWVlZDRlZDY0MmE0cC0xNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTM5MworICAgIDB4MS5mZmZmZmZmZmZmZmZlZWFhYWFhYWFhYWFhYWNhZWVlZXAtMjgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMTM5NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZWVhYWFhYWFhYWFhYWFjYWVlZWVwLTI4LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzk1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZlYWFhYWFhYWFhYWFhYWFlZWVlcC0yOCwKKyAgICAweDEuMHAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzk2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZWFhYWFhYWFhYWFhYWFhZWVlZXAtMjgsCisgICAgLTB4MS4wcC0yNworICB9LAorICB7IC8vIEVudHJ5IDEzOTcKKyAgICAweDEuMDAwMDAwMDAwMDAwMGY1NTU1NTU1NTU1NTUzNTc3NzdwLTI3LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yNworICB9LAorICB7IC8vIEVudHJ5IDEzOTgKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmNTU1NTU1NTU1NTU1MzU3Nzc3cC0yNywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTM5OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZhYWFhYWFhYWFhYWFiMmFhZXAtMzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQwMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmYWFhYWFhYWFhYWFhYjJhYWVwLTMxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmFhYWFhYWFhYWFhYWFhYWFlcC0zMSwKKyAgICAweDEuMHAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZhYWFhYWFhYWFhYWFhYWFhZXAtMzEsCisgICAgLTB4MS4wcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDE0MDMKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZDU1NTU1NTU1NTU1NGQ1NTdwLTMwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDE0MDQKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmQ1NTU1NTU1NTU1NTRkNTU3cC0zMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQwNQorICAgIC0weDEuNDUyZmM5OGIzNGU5NmI2MTEzOWIwOWE3Yzg0YTQ0YmRwLTgsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDA2CisgICAgMHgxLjQ1MmZjOThiMzRlOTZiNjExMzliMDlhN2M4NGE0NGJkcC04LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDA3CisgICAgMHgxLjQ1MmZjOThiMzRlOTZiNjExMzliMDlhN2M4NGE0NGJkcC04LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDA4CisgICAgLTB4MS40NTJmYzk4YjM0ZTk2YjYxMTM5YjA5YTdjODRhNDRiZHAtOCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MDkKKyAgICAweDEuNDUyZmM5OGIzNGU5NmI2MTEzOWIwOWE3Yzg0YTQ0YmRwLTgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MTAKKyAgICAtMHgxLjQ1MmZjOThiMzRlOTZiNjExMzliMDlhN2M4NGE0NGJkcC04LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQxMQorICAgIDB4MS5kYWEzNjc3YzZlZThhMjJlYjZjNGIxMmNhMTBjZTAyMXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQxMgorICAgIC0weDEuZGFhMzY3N2M2ZWU4YTIyZWI2YzRiMTJjYTEwY2UwMjFwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEzCisgICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0MzZlMmVkcC01MywKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQxNAorICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQzNmUyZWRwLTUzLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQxNQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQxNgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzFwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDE3CisgICAgMHgxLmFlZDU0OGYwOTBjZWYxOGJiNWUzODcxYTE0ZDk0NjA5cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDE4CisgICAgLTB4MS5hZWQ1NDhmMDkwY2VmMThiYjVlMzg3MWExNGQ5NDYwOXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MTkKKyAgICAweDEuYWVkNTQ4ZjA5MGNlZTA0MThkZDNkMjEzOGExZTc4NjVwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE0MjAKKyAgICAtMHgxLmFlZDU0OGYwOTBjZWUwNDE4ZGQzZDIxMzhhMWU3ODY1cC0xLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQyMQorICAgIDB4MS5hZWQ1NDhmMDkwY2VkNzljNzljYmY3OTA0NDFmODE5N3AtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MjIKKyAgICAtMHgxLmFlZDU0OGYwOTBjZWQ3OWM3OWNiZjc5MDQ0MWY4MTk3cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MjMKKyAgICAweDEuNmEwOWU2NjdmM2JjYzVlOWZlZTM1MmY1MGZkM2Y0ZTlwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDI0CisgICAgLTB4MS42YTA5ZTY2N2YzYmNjNWU5ZmVlMzUyZjUwZmQzZjRlOXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDI1CisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTQyNgorICAgIC0weDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTQyNworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE0MjgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE0MjkKKyAgICAweDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMxCisgICAgMHgxLmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQzMgorICAgIC0weDEuZmZmZmZmZmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTQzMworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTA3NCwKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDE0MzQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDc0LAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDE0MzUKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDM2CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDM3CisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDE0MzgKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvc2luY29zX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9zaW5jb3NfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjcxYmE2YjEKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvc2luY29zX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDQ3NjMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8yXzFfdDxkb3VibGUsIGRvdWJsZSwgZG91YmxlPiBnX3NpbmNvc19pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEuY2U5YTk0ZWE5YzJhZDk1NTk3YjExOTNiMjMwMGQxOWFwLTEsCisgICAgLTB4MS5iNmQzMDU3Nzc2ZGMzODMzNWIxNjc0NWYyZDc1NmFiNnAtMiwKKyAgICAtMHgxLjAxYzAwMDAwM3AxLAorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuY2U5YTk0ZWE5YzJhZDk1NTk3YjExOTNiMjMwMGQxOWFwLTEsCisgICAgLTB4MS5iNmQzMDU3Nzc2ZGMzODMzNWIxNjc0NWYyZDc1NmFiNnAtMiwKKyAgICAweDEuMDFjMDAwMDAzcDEsCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIC0weDEuY2UyY2FkMmY5MjE1NzE1M2I0YTllMDEyZTM0NjFkMGFwLTEsCisgICAgLTB4MS5iOGExNGM3NDViZDRjODMyYmFlOTc4NTY1NWM5MWI2MHAtMiwKKyAgICAtMHgxLjAxZmZmYzA4MHAxLAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuY2UyY2FkMmY5MjE1NzE1M2I0YTllMDEyZTM0NjFkMGFwLTEsCisgICAgLTB4MS5iOGExNGM3NDViZDRjODMyYmFlOTc4NTY1NWM5MWI2MHAtMiwKKyAgICAweDEuMDFmZmZjMDgwcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIC0weDEuMWE3NDQ0NzI2ZjVlOWRjMmVlMDY5ZGMzZTUwMGFiNGZwLTIsCisgICAgMHgxLmVjMjMxODAyOTE3YmRmZmE2MjdhYjZhNTlhYmUzZjdkcC0xLAorICAgIC0weDEuMWUyYTE1NjNlMDY4ZXAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLjFhNzQ0NDcyNmY1ZTlkYzJlZTA2OWRjM2U1MDBhYjRmcC0yLAorICAgIDB4MS5lYzIzMTgwMjkxN2JkZmZhNjI3YWI2YTU5YWJlM2Y3ZHAtMSwKKyAgICAweDEuMWUyYTE1NjNlMDY4ZXAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgLTB4MS5lZmRhYjVlNjVjOGZkNTUwZDQ2ODhiNjI3OTFmZTY5NHAtMSwKKyAgICAweDEuZmU0MTIzZDI2NmNhMzdmYWVlZTgyMjEzOGViMzMxZDNwLTMsCisgICAgLTB4MS44M2VmMjE5NmY5MmYwcDg3LAorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuZWZkYWI1ZTY1YzhmZDU1MGQ0Njg4YjYyNzkxZmU2OTRwLTEsCisgICAgMHgxLmZlNDEyM2QyNjZjYTM3ZmFlZWU4MjIxMzhlYjMzMWQzcC0zLAorICAgIDB4MS44M2VmMjE5NmY5MmYwcDg3LAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAtMHgxLmVmZjVlZGIxYWQ0MTZjYjZjYTMxMDlmMWMwZGZjMzRhcC0xLAorICAgIDB4MS5mYzk5MzVhNzQ4MTcxN2ZhOGFlY2E3YTljNTgzMzA4NHAtMywKKyAgICAtMHgxLmE0ODZkNzk3NjRmYjhwODYsCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS5lZmY1ZWRiMWFkNDE2Y2I2Y2EzMTA5ZjFjMGRmYzM0YXAtMSwKKyAgICAweDEuZmM5OTM1YTc0ODE3MTdmYThhZWNhN2E5YzU4MzMwODRwLTMsCisgICAgMHgxLmE0ODZkNzk3NjRmYjhwODYsCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAtMHgxLmI3OGYyYzk3Yzg4MDI4Mzk2ZWM5NGJhOWVhNThkZDY4cC0yLAorICAgIDB4MS5jZTZkZWE2Nzg4ZmRlNDI1ZjY4ZmUzM2IwZmZjYzI0NHAtMSwKKyAgICAtMHgxLmM2NTE3MzU1NmNjZmJwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuYjc4ZjJjOTdjODgwMjgzOTZlYzk0YmE5ZWE1OGRkNjhwLTIsCisgICAgMHgxLmNlNmRlYTY3ODhmZGU0MjVmNjhmZTMzYjBmZmNjMjQ0cC0xLAorICAgIDB4MS5jNjUxNzM1NTZjY2ZicC0yLAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgLTB4MS5jNzg4NWFlZjMzYTk0ZmZjNWFlMDZiZTk0NDRlZmFkNXAtMywKKyAgICAweDEuZjMyYzg3OTIwMDYzNDliMzNiMDlmZTU3ZjgwZDllZDFwLTEsCisgICAgLTB4MS5jYjZwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEuYzc4ODVhZWYzM2E5NGZmYzVhZTA2YmU5NDQ0ZWZhZDVwLTMsCisgICAgMHgxLmYzMmM4NzkyMDA2MzQ5YjMzYjA5ZmU1N2Y4MGQ5ZWQxcC0xLAorICAgIDB4MS5jYjZwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAtMHgxLmY3NGE5N2FiYjQ3YmM4MjNlOTJlYjlkNjZmMWQ4YjU0cC0zLAorICAgIDB4MS5mMDRjODU5ZTA2MmI5MjAyYWEyYjliZjA0ODZiNWFmZHAtMSwKKyAgICAtMHgxLmZjN2ZmZmZmZmZmZmVwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuZjc0YTk3YWJiNDdiYzgyM2U5MmViOWQ2NmYxZDhiNTRwLTMsCisgICAgMHgxLmYwNGM4NTllMDYyYjkyMDJhYTJiOWJmMDQ4NmI1YWZkcC0xLAorICAgIDB4MS5mYzdmZmZmZmZmZmZlcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLjAwMDAwMDAwMDAwMDJmZmZkNTU1NTU1NTU1NTUzZDU1cC0zMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmEwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAzcC0zMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIC0weDEuMDAwMDAwMDAwMDAwMmZmZmQ1NTU1NTU1NTU1NTNkNTVwLTMyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmYTBwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAzcC0zMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS5kMThmNmVhZDE5OWEzYjk1NDMwZDU1MTZlOTNjOGQ3YnAtMSwKKyAgICAtMHgxLmFhMjI2NTc1M2U2Njg3ZmRlNzYyNjllZTkyYTc4NGIwcC0yLAorICAgIDB4MS4wMDAwMDAwMDAxMHAxLAorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgLTB4MS5kMThmNmVhZDE5OWEzYjk1NDMwZDU1MTZlOTNjOGQ3YnAtMSwKKyAgICAtMHgxLmFhMjI2NTc1M2U2Njg3ZmRlNzYyNjllZTkyYTc4NGIwcC0yLAorICAgIC0weDEuMDAwMDAwMDAwMTBwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS5iNjRkNTlkZDhhNTI0OWUwMTExM2Y0Y2IzN2QxM2M0MHAtMSwKKyAgICAtMHgxLjA4YTQ0NWFkNDczN2U4MDA2MGNmM2E1ZmY5NGQzMDY3cC0xLAorICAgIDB4MS4wMDFwNTU3LAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgLTB4MS5iNjRkNTlkZDhhNTI0OWUwMTExM2Y0Y2IzN2QxM2M0MHAtMSwKKyAgICAtMHgxLjA4YTQ0NWFkNDczN2U4MDA2MGNmM2E1ZmY5NGQzMDY3cC0xLAorICAgIC0weDEuMDAxcDU1NywKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS5jZTc3ZjI0ZmQ0ZDlhNzkwMTI1ZmY1MjkwYTYyYjdmMXAtMSwKKyAgICAtMHgxLmI3NjRmNDBjOTcxNmI4MzRiYjcyNTg5MzQ4Y2ZhNGI4cC0yLAorICAgIDB4MS4wMWQ0MzEzNzU3NDgycDEsCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAtMHgxLmNlNzdmMjRmZDRkOWE3OTAxMjVmZjUyOTBhNjJiN2YxcC0xLAorICAgIC0weDEuYjc2NGY0MGM5NzE2YjgzNGJiNzI1ODkzNDhjZmE0YjhwLTIsCisgICAgLTB4MS4wMWQ0MzEzNzU3NDgycDEsCisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuY2UzOWI3ZGY3ZjRhY2I4MWUzN2M1MzI2MzhmOWJmNDlwLTEsCisgICAgLTB4MS5iODZhOTA4ZjA1YzBhODM5ZTE5ZDRhYTYzMTU2ZDMyYnAtMiwKKyAgICAweDEuMDFmODY3ZDQ0YmM4MnAxLAorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgLTB4MS5jZTM5YjdkZjdmNGFjYjgxZTM3YzUzMjYzOGY5YmY0OXAtMSwKKyAgICAtMHgxLmI4NmE5MDhmMDVjMGE4MzllMTlkNGFhNjMxNTZkMzJicC0yLAorICAgIC0weDEuMDFmODY3ZDQ0YmM4MnAxLAorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLmNlNzAwNDZhY2I4MGRlNzVlOTAzNDY4Y2VhOGFiNDI3cC0xLAorICAgIC0weDEuYjc4NjU0NzY2Yzc2NDgzY2U5MGEwYmMyYWM5NTdiNTlwLTIsCisgICAgMHgxLjA5ODYwZThlZDFlOTBwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIC0weDEuY2U3MDA0NmFjYjgwZGU3NWU5MDM0NjhjZWE4YWI0MjdwLTEsCisgICAgLTB4MS5iNzg2NTQ3NjZjNzY0ODNjZTkwYTBiYzJhYzk1N2I1OXAtMiwKKyAgICAtMHgxLjA5ODYwZThlZDFlOTBwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS5jZTY4NTY0ZTI1MWYxNjI4NWQ2MDRlMDQ2NTdmMzBlNnAtMSwKKyAgICAtMHgxLmI3YTZhNTZmNTc5NjY4M2M1OGUwMWI1YjcwNjFjMTZjcC0yLAorICAgIDB4MS4wOTg3MmNjZTUxZmJkcDMsCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAtMHgxLmNlNjg1NjRlMjUxZjE2Mjg1ZDYwNGUwNDY1N2YzMGU2cC0xLAorICAgIC0weDEuYjdhNmE1NmY1Nzk2NjgzYzU4ZTAxYjViNzA2MWMxNmNwLTIsCisgICAgLTB4MS4wOTg3MmNjZTUxZmJkcDMsCisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAtMHgxLmNlOGFiMzJmM2IwMDIwNjVmMmQ5OWU1N2ExMDcyNzA1cC0xLAorICAgIC0weDEuYjcxNWY3NjljZjFlNTgyZTIzYTE1ZThiODBhNzA0ODZwLTIsCisgICAgMHgxLjExM2IxM2IxM2IyMjRwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS5jZThhYjMyZjNiMDAyMDY1ZjJkOTllNTdhMTA3MjcwNXAtMSwKKyAgICAtMHgxLmI3MTVmNzY5Y2YxZTU4MmUyM2ExNWU4YjgwYTcwNDg2cC0yLAorICAgIC0weDEuMTEzYjEzYjEzYjIyNHAyLAorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLmMyZGY1NzE4OGQzMDk5ZTFiYWY3ZjcyMWQ3MzE4YmQ5cC0xLAorICAgIDB4MS5lNTM2YWUzOTVkZmNlMDAxNDU3OTcwYzhhYWFjM2IxZnAtMiwKKyAgICAweDEuMTNjcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAtMHgxLmMyZGY1NzE4OGQzMDk5ZTFiYWY3ZjcyMWQ3MzE4YmQ5cC0xLAorICAgIDB4MS5lNTM2YWUzOTVkZmNlMDAxNDU3OTcwYzhhYWFjM2IxZnAtMiwKKyAgICAtMHgxLjEzY3AwLAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLmI3ZGNkN2M4NWM4MjA4MzhlZWNmYTUzZTUyMDc4YjJicC0yLAorICAgIC0weDEuY2U1YjczNzIwNDZlYWE0NjdmNDllMWRlYmUzNjYyZGZwLTEsCisgICAgMHgxLjFmNjI4YzU2MTA3MTdwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIC0weDEuYjdkY2Q3Yzg1YzgyMDgzOGVlY2ZhNTNlNTIwNzhiMmJwLTIsCisgICAgLTB4MS5jZTViNzM3MjA0NmVhYTQ2N2Y0OWUxZGViZTM2NjJkZnAtMSwKKyAgICAtMHgxLjFmNjI4YzU2MTA3MTdwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS5mZjM0NjZiMWVjOGJlZDk3OGY3YzI3MDE4YmMwOTY3OHAtMSwKKyAgICAweDEuYzg2Y2FhMDQ5Mjk4NTdjMjgxNmQzMDY5M2ZjZWFiMzZwLTUsCisgICAgMHgxLjFmNjk5ZDcwOGQ0OTdwMTYsCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAtMHgxLmZmMzQ2NmIxZWM4YmVkOTc4ZjdjMjcwMThiYzA5Njc4cC0xLAorICAgIDB4MS5jODZjYWEwNDkyOTg1N2MyODE2ZDMwNjkzZmNlYWIzNnAtNSwKKyAgICAtMHgxLjFmNjk5ZDcwOGQ0OTdwMTYsCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuYjYxZDZhZmY3NTRjMjgzNTY5N2I1YWE1MzM5YjYzNWNwLTIsCisgICAgLTB4MS5jZWM1OWIyZDIzMGE4M2E4NjgwNDczMGFmZGYxYmVjZnAtMSwKKyAgICAweDEuMWY3MjA2NDYyMGVmNHAzLAorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS5iNjFkNmFmZjc1NGMyODM1Njk3YjVhYTUzMzliNjM1Y3AtMiwKKyAgICAtMHgxLmNlYzU5YjJkMjMwYTgzYTg2ODA0NzMwYWZkZjFiZWNmcC0xLAorICAgIC0weDEuMWY3MjA2NDYyMGVmNHAzLAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLmNkZjYwNDgzOGU0OTliZDVkOWQyNzEyMzk3YjIzYzA3cC0xLAorICAgIDB4MS5iOTg2NTZiODViYzI2ODMyMTZhOTQ3MzM1ZWE2ODlmYnAtMiwKKyAgICAweDEuMWZmZmZmZGNlZmU0MHAwLAorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS5jZGY2MDQ4MzhlNDk5YmQ1ZDlkMjcxMjM5N2IyM2MwN3AtMSwKKyAgICAweDEuYjk4NjU2Yjg1YmMyNjgzMjE2YTk0NzMzNWVhNjg5ZmJwLTIsCisgICAgLTB4MS4xZmZmZmZkY2VmZTQwcDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuY2U5MTMzMjk2OTZjZDNmYTQ3MWM3YjAwODkxMDc1ZDRwLTEsCisgICAgMHgxLmI2ZmE5MmU1ZjU3NmM4MzRmYzE1ZDg5OThmY2NjNzI4cC0yLAorICAgIDB4MS4yMGI0NzhjNGFhOWVkcDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAtMHgxLmNlOTEzMzI5Njk2Y2QzZmE0NzFjN2IwMDg5MTA3NWQ0cC0xLAorICAgIDB4MS5iNmZhOTJlNWY1NzZjODM0ZmMxNWQ4OTk4ZmNjYzcyOHAtMiwKKyAgICAtMHgxLjIwYjQ3OGM0YWE5ZWRwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS5jZWFiYzAyNWVkM2Q1NzMyM2ZjYTUxNjI2ZDJiZjI4Y3AtMSwKKyAgICAweDEuYjY4YTk4ODYwNGE3ZTgzY2QzODJmZGYzMjlkMGQ3NmVwLTIsCisgICAgMHgxLjIwZDM3NDU2ZTc0NTNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIC0weDEuY2VhYmMwMjVlZDNkNTczMjNmY2E1MTYyNmQyYmYyOGNwLTEsCisgICAgMHgxLmI2OGE5ODg2MDRhN2U4M2NkMzgyZmRmMzI5ZDBkNzZlcC0yLAorICAgIC0weDEuMjBkMzc0NTZlNzQ1M3AwLAorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLmNlYjAyMmI2YjVhZTA3YTI2N2YwZTdkYzZhMTRhMjE0cC0xLAorICAgIDB4MS5iNjc4MTZiODBlZDBhODJkMTFhZWU3YWFhODAwOGZlZHAtMiwKKyAgICAweDEuMjBkODkzMGNkZjYwMnAwLAorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgLTB4MS5jZWIwMjJiNmI1YWUwN2EyNjdmMGU3ZGM2YTE0YTIxNHAtMSwKKyAgICAweDEuYjY3ODE2YjgwZWQwYTgyZDExYWVlN2FhYTgwMDhmZWRwLTIsCisgICAgLTB4MS4yMGQ4OTMwY2RmNjAycDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMHgxLjllNjJhY2E1M2M2NjA4MDFiNjI2MDQwMThhOWQxOWRkcC00LAorICAgIC0weDEuZmQ1ZjgzMGY4NjBmMzMzZGU0OTBhNDJjMmYwNDUwMTJwLTEsCisgICAgMHgxLjMwZDVmOGU1NGI2ZDhwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS45ZTYyYWNhNTNjNjYwODAxYjYyNjA0MDE4YTlkMTlkZHAtNCwKKyAgICAtMHgxLmZkNWY4MzBmODYwZjMzM2RlNDkwYTQyYzJmMDQ1MDEycC0xLAorICAgIC0weDEuMzBkNWY4ZTU0YjZkOHAzLAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjNlZDJhZWVmZWFmYzk3ZjBlZTBmYjNmYTRmYjQ2MDUycC0zLAorICAgIDB4MS5mOWMyMDFlNGViNjVmZDVlNWRiZDk3NjYyNTA1ZmY2ZnAtMSwKKyAgICAweDEuNDAycC0zLAorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTB4MS4zZWQyYWVlZmVhZmM5N2YwZWUwZmIzZmE0ZmI0NjA1MnAtMywKKyAgICAweDEuZjljMjAxZTRlYjY1ZmQ1ZTVkYmQ5NzY2MjUwNWZmNmZwLTEsCisgICAgLTB4MS40MDJwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAtMHgxLmZmNjVkMmZmNGE4Y2M0MWNiOGJiNmRmMzA2ZTA3YmU3cC0xLAorICAgIC0weDEuOGQzODIyZWYyNjBhNTdiMzg1NjExZjA4NTc3Yjc1ZDlwLTUsCisgICAgMHgxLjRhNDBlYzE0OWE2NmZwMTYsCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEuZmY2NWQyZmY0YThjYzQxY2I4YmI2ZGYzMDZlMDdiZTdwLTEsCisgICAgLTB4MS44ZDM4MjJlZjI2MGE1N2IzODU2MTFmMDg1NzdiNzVkOXAtNSwKKyAgICAtMHgxLjRhNDBlYzE0OWE2NmZwMTYsCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuNGZmZmZmZmZmZjlmODgwMDAwMDAwODRmMjJjY2NjY2NwLTIwLAorICAgIDB4MS5mZmZmZmZmZmZlNDcwMDAwMDAwMDNmNGViZmZmZmZmY3AtMSwKKyAgICAweDEuNXAtMjAsCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLjRmZmZmZmZmZmY5Zjg4MDAwMDAwMDg0ZjIyY2NjY2NjcC0yMCwKKyAgICAweDEuZmZmZmZmZmZmZTQ3MDAwMDAwMDAzZjRlYmZmZmZmZmNwLTEsCisgICAgLTB4MS41cC0yMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS43OWM1OTllMWU5MWFmODA5ZjllNjk3NzE3OTZjZDUwN3AtMSwKKyAgICAtMHgxLjU5OTcwNjVjYjk2NTM3MDJkNGM5ZDliNmJjNThmNzY4cC0xLAorICAgIDB4MS41Mjk0YTUyOTRhNTI4cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLjc5YzU5OWUxZTkxYWY4MDlmOWU2OTc3MTc5NmNkNTA3cC0xLAorICAgIC0weDEuNTk5NzA2NWNiOTY1MzcwMmQ0YzlkOWI2YmM1OGY3NjhwLTEsCisgICAgLTB4MS41Mjk0YTUyOTRhNTI4cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLmZmNzk5NjA3M2JiYTZjNmVkZTQ2ZjUyZDQ0NTYyM2M5cC0xLAorICAgIDB4MS43MmU3NDM3OTEwY2MwODNmYWM0ZjZmNjJhMmViMzhhZnAtNSwKKyAgICAweDEuNTc0MzFhYWNmNWM1OHAxNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS5mZjc5OTYwNzNiYmE2YzZlZGU0NmY1MmQ0NDU2MjNjOXAtMSwKKyAgICAweDEuNzJlNzQzNzkxMGNjMDgzZmFjNGY2ZjYyYTJlYjM4YWZwLTUsCisgICAgLTB4MS41NzQzMWFhY2Y1YzU4cDE2LAorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLmY4MWM0ZjlhNTE4MTQ2MmFlNzM1ZTIxMjIyZDQ5OGM0cC0xLAorICAgIDB4MS42NjIzZDJlYjZhZGQxZmZjMzk4YTNjMjA0NDdmOWQwNnAtMywKKyAgICAweDEuNjUycDAsCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLmY4MWM0ZjlhNTE4MTQ2MmFlNzM1ZTIxMjIyZDQ5OGM0cC0xLAorICAgIDB4MS42NjIzZDJlYjZhZGQxZmZjMzk4YTNjMjA0NDdmOWQwNnAtMywKKyAgICAtMHgxLjY1MnAwLAorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgLTB4MS5jNDJhMDkxMDI2ZjQ1Mjg2ZDA2MTA4NWM1YzlmZGRiN3AtMSwKKyAgICAweDEuZTA2MTk5NjBhMTFjNjgwMWU4MGFiMGM5ZTI1Zjg5ZDBwLTIsCisgICAgMHgxLjZmN2JkZWY3YmRlZjRwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIDB4MS5jNDJhMDkxMDI2ZjQ1Mjg2ZDA2MTA4NWM1YzlmZGRiN3AtMSwKKyAgICAweDEuZTA2MTk5NjBhMTFjNjgwMWU4MGFiMGM5ZTI1Zjg5ZDBwLTIsCisgICAgLTB4MS42ZjdiZGVmN2JkZWY0cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAtMHgxLmY5YzQzNjRiYTE5OGY3ZTMyYjY3MjM2NmMzNGI4YjdkcC0yLAorICAgIDB4MS5iZDMwOWYzZGZjZDQ4OTEyOGU1ZWNiYzMxNjgwYzRhNXAtMSwKKyAgICAweDEuNzExcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAweDEuZjljNDM2NGJhMTk4ZjdlMzJiNjcyMzY2YzM0YjhiN2RwLTIsCisgICAgMHgxLmJkMzA5ZjNkZmNkNDg5MTI4ZTVlY2JjMzE2ODBjNGE1cC0xLAorICAgIC0weDEuNzExcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAtMHgxLmJlNmU1YmVhMWE0ZDg4MzMxZmQ4ZTQ2MGNkNjc3MjQ1cC0yLAorICAgIDB4MS5jY2M3ZDk5YjU3YWI1NGYwNGVkOTE4ZWMxNGEyNTA3ZHAtMSwKKyAgICAweDEuNzU0MGFhNTg4MmRjMnAyLAorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgMHgxLmJlNmU1YmVhMWE0ZDg4MzMxZmQ4ZTQ2MGNkNjc3MjQ1cC0yLAorICAgIDB4MS5jY2M3ZDk5YjU3YWI1NGYwNGVkOTE4ZWMxNGEyNTA3ZHAtMSwKKyAgICAtMHgxLjc1NDBhYTU4ODJkYzJwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS5jOTBjODQxZDE0OTRjMDc1N2U4ZWJiMTY3MjVkODcxOHAtMywKKyAgICAtMHgxLmYzMTY1YTBiMzA2YjFmZmNmOGQxMTkwOWZmZmJhMTY3cC0xLAorICAgIDB4MS43NTUwZDI4ZmZjY2M0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAtMHgxLmM5MGM4NDFkMTQ5NGMwNzU3ZThlYmIxNjcyNWQ4NzE4cC0zLAorICAgIC0weDEuZjMxNjVhMGIzMDZiMWZmY2Y4ZDExOTA5ZmZmYmExNjdwLTEsCisgICAgLTB4MS43NTUwZDI4ZmZjY2M0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAtMHgxLmI2NDlkNTc3ZTFiMmE4MzlkMjVkMTk4MDdlYjJjNTY0cC0yLAorICAgIDB4MS5jZWJiMTc1ZDM2YjkzNGJjMDk5NWEwYmUzNWNkZTFlZXAtMSwKKyAgICAweDEuNzVkMTFmYTBkNjI0MnAyLAorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgMHgxLmI2NDlkNTc3ZTFiMmE4MzlkMjVkMTk4MDdlYjJjNTY0cC0yLAorICAgIDB4MS5jZWJiMTc1ZDM2YjkzNGJjMDk5NWEwYmUzNWNkZTFlZXAtMSwKKyAgICAtMHgxLjc1ZDExZmEwZDYyNDJwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS5iNzg3MzBkMTFkODQwODMyMGQyMWNhNmFkMmJlMzM2OHAtMiwKKyAgICAtMHgxLmNlNmZkMDBlZDE2NTAxY2IxM2I5MDg0NzdlMTAyODExcC0xLAorICAgIDB4MS5iYzUwNDQ0ZWU2Mjg2cDksCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLmI3ODczMGQxMWQ4NDA4MzIwZDIxY2E2YWQyYmUzMzY4cC0yLAorICAgIC0weDEuY2U2ZmQwMGVkMTY1MDFjYjEzYjkwODQ3N2UxMDI4MTFwLTEsCisgICAgLTB4MS5iYzUwNDQ0ZWU2Mjg2cDksCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuYjZiMGIwOTk2ZTdlNjgzNWFjZGIzNmU1NWEwOGJmMTVwLTIsCisgICAgMHgxLmNlYTJiOGNjNTUyMTgxZDBiMGFlYWQyN2U5NGE5MTY4cC0xLAorICAgIDB4MS5jNTViMmJmMTljZTU0cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5iNmIwYjA5OTZlN2U2ODM1YWNkYjM2ZTU1YTA4YmYxNXAtMiwKKyAgICAweDEuY2VhMmI4Y2M1NTIxODFkMGIwYWVhZDI3ZTk0YTkxNjhwLTEsCisgICAgLTB4MS5jNTViMmJmMTljZTU0cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLmI2ZmFjZjY2NTg5MTQ4MmVhOGM2MWY1Y2EzMmYyODBkcC0yLAorICAgIDB4MS5jZTkxMjRjZWM0MTUwNTU5ZDk0N2E1MjZhZDk4ZjJmNHAtMSwKKyAgICAweDEuYzVhZDM0ZjVmNDcyYXAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuYjZmYWNmNjY1ODkxNDgyZWE4YzYxZjVjYTMyZjI4MGRwLTIsCisgICAgMHgxLmNlOTEyNGNlYzQxNTA1NTlkOTQ3YTUyNmFkOThmMmY0cC0xLAorICAgIC0weDEuYzVhZDM0ZjVmNDcyYXAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEuZjgzYTA5ODNkZDE1ZDAwMzAxZTJkZjIxZTNiZWU2MzVwLTIsCisgICAgLTB4MS5iZGEwNTk2ZGYwNjAwMDRkNTc5NTYzYWQ4YzY3ZDE1MXAtMSwKKyAgICAweDEuZDQwNjdjNjBmNDcxZXAxLAorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLmY4M2EwOTgzZGQxNWQwMDMwMWUyZGYyMWUzYmVlNjM1cC0yLAorICAgIC0weDEuYmRhMDU5NmRmMDYwMDA0ZDU3OTU2M2FkOGM2N2QxNTFwLTEsCisgICAgLTB4MS5kNDA2N2M2MGY0NzFlcDEsCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuOWNiNmE5YmJjZTY0YTNlOTdhNzI2N2ZkZWMyNWM4M2JwLTEsCisgICAgMHgxLjJmMDExMzI2NDIwZTUwMDIxNzJkYjI0NWZkOTA2M2UycC0xLAorICAgIDB4MS5kZmZmZmZmZmZmZmZmcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS45Y2I2YTliYmNlNjRhM2U5N2E3MjY3ZmRlYzI1YzgzYnAtMSwKKyAgICAweDEuMmYwMTEzMjY0MjBlNTAwMjE3MmRiMjQ1ZmQ5MDYzZTJwLTEsCisgICAgLTB4MS5kZmZmZmZmZmZmZmZmcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLmY1ZjBiZTI4NTY1YzVhZDc2M2MxMDNkOTgxZmM1YzRlcC01LAorICAgIDB4MS5mZjA5YmFiYjA3NmU0ODAzZTU3ZTY4MjA0NTcwZmQ1YnAtMSwKKyAgICAweDEuZjY0MTQ3ZDhhZGQ4NHAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIC0weDEuZjVmMGJlMjg1NjVjNWFkNzYzYzEwM2Q5ODFmYzVjNGVwLTUsCisgICAgMHgxLmZmMDliYWJiMDc2ZTQ4MDNlNTdlNjgyMDQ1NzBmZDVicC0xLAorICAgIC0weDEuZjY0MTQ3ZDhhZGQ4NHAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIC0weDEuZDRkYTVmNTY4ODhlMjAwZmRhNGViYWM3ZGIxY2RiZWZwLTEsCisgICAgMHgxLjliNzBjZDMyODRlMTU3ZmI4NDQ5MWQ1ODFjYjg2YmQzcC0yLAorICAgIDB4MS5mZTYxODNlZmEzOTdjcDgzLAorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgMHgxLmQ0ZGE1ZjU2ODg4ZTIwMGZkYTRlYmFjN2RiMWNkYmVmcC0xLAorICAgIDB4MS45YjcwY2QzMjg0ZTE1N2ZiODQ0OTFkNTgxY2I4NmJkM3AtMiwKKyAgICAtMHgxLmZlNjE4M2VmYTM5N2NwODMsCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuZmE5ZjZjYTBlYzQ0ZTAwMTAwMjZmMzg1YzBhYjg2OTBwLTMsCisgICAgMHgxLmYwMTY0NzRiNzU2Njc0MjRhMDUwZDc5MDE0ZmQyMzg1cC0xLAorICAgIDB4MS5mZmVmZmZmZmZmZmZmcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5mYTlmNmNhMGVjNDRlMDAxMDAyNmYzODVjMGFiODY5MHAtMywKKyAgICAweDEuZjAxNjQ3NGI3NTY2NzQyNGEwNTBkNzkwMTRmZDIzODVwLTEsCisgICAgLTB4MS5mZmVmZmZmZmZmZmZmcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgLTB4MS5mZjQ4NjhkZGFiYTZiYTMyYzZiNzE0YWVmOTlmZjJmN3AtMSwKKyAgICAtMHgxLmIxNmYwZWIyNWFlNDY3YzJhMTg1ZTUxNmYxMTg4YjIwcC01LAorICAgIDB4MS5mZmY3ZmY4MDAwMDFmcDE1LAorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLmZmNDg2OGRkYWJhNmJhMzJjNmI3MTRhZWY5OWZmMmY3cC0xLAorICAgIC0weDEuYjE2ZjBlYjI1YWU0NjdjMmExODVlNTE2ZjExODhiMjBwLTUsCisgICAgLTB4MS5mZmY3ZmY4MDAwMDFmcDE1LAorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgLTB4MS5mZjRmMWU5YzI0ODkxMjY0ODcwMTgxOGQwNzViMzk1M3AtMSwKKyAgICAtMHgxLmE5NzFlM2I2NGQwOGQ3YzNmMzdkMjk5YjQzNjE2ZWI0cC01LAorICAgIDB4MS5mZmY3ZmZmZmZmY3AxNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIDB4MS5mZjRmMWU5YzI0ODkxMjY0ODcwMTgxOGQwNzViMzk1M3AtMSwKKyAgICAtMHgxLmE5NzFlM2I2NGQwOGQ3YzNmMzdkMjk5YjQzNjE2ZWI0cC01LAorICAgIC0weDEuZmZmN2ZmZmZmZmNwMTUsCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZDE5NjE2ZmM3ZWU0NjA1MzQ1YzI1NjA2Y2ZjOTMyMzVwLTEsCisgICAgLTB4MS5hYTA1NGM0OTA5Mzg0ODExYTA2MzI3MzExMjYwNGMzMXAtMiwKKyAgICAweDEuZmZmODBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIC0weDEuZDE5NjE2ZmM3ZWU0NjA1MzQ1YzI1NjA2Y2ZjOTMyMzVwLTEsCisgICAgLTB4MS5hYTA1NGM0OTA5Mzg0ODExYTA2MzI3MzExMjYwNGMzMXAtMiwKKyAgICAtMHgxLmZmZjgwcDAsCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuY2UzNTA5NzUxYzQ2MTQ4MzdmYTRiMzQ5NjNjNmY1ZDhwLTEsCisgICAgMHgxLmI4N2UzNzEwMTY1NDQ4MjE0NGQ3MWQwNDk3MjI2N2Q4cC0yLAorICAgIDB4MS5mZmZmYmZmZTNmZmZmcDE0LAorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgLTB4MS5jZTM1MDk3NTFjNDYxNDgzN2ZhNGIzNDk2M2M2ZjVkOHAtMSwKKyAgICAweDEuYjg3ZTM3MTAxNjU0NDgyMTQ0ZDcxZDA0OTcyMjY3ZDhwLTIsCisgICAgLTB4MS5mZmZmYmZmZTNmZmZmcDE0LAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLmQxOGY3NmZmYzZlNGJhMGEzMTM0ZTViZTIxYjViYzhmcC0xLAorICAgIC0weDEuYWEyMjQxMTYwMjI3ODk2YzY4ZWYxNzgzOWYxN2RjZTVwLTIsCisgICAgMHgxLmZmZmZmNjBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIC0weDEuZDE4Zjc2ZmZjNmU0YmEwYTMxMzRlNWJlMjFiNWJjOGZwLTEsCisgICAgLTB4MS5hYTIyNDExNjAyMjc4OTZjNjhlZjE3ODM5ZjE3ZGNlNXAtMiwKKyAgICAtMHgxLmZmZmZmNjBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIC0weDEuODM3Yjk5NGE2ZDhmZjdmMjc1MDc1NWRmNTg0M2U4NGRwLTEsCisgICAgLTB4MS40ZWFhNjViOWUyZWNjMzA4ZmQ4MmY2NWUwOWQwNmJlNHAtMSwKKyAgICAweDEuZmZmZmZlM2ZmZmZmZnAxLAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLjgzN2I5OTRhNmQ4ZmY3ZjI3NTA3NTVkZjU4NDNlODRkcC0xLAorICAgIC0weDEuNGVhYTY1YjllMmVjYzMwOGZkODJmNjVlMDlkMDZiZTRwLTEsCisgICAgLTB4MS5mZmZmZmUzZmZmZmZmcDEsCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmFlZDU0OGYwOTBjMWRmZmU2ZTA0MzIyZGM4ZThjYmZhcC0xLAorICAgIDB4MS4xNGEyODBmYjUwN2NmODk5OWExYjI5MTk5NTY0NjE1MnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmU3ZnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAtMHgxLmFlZDU0OGYwOTBjMWRmZmU2ZTA0MzIyZGM4ZThjYmZhcC0xLAorICAgIDB4MS4xNGEyODBmYjUwN2NmODk5OWExYjI5MTk5NTY0NjE1MnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZlN2ZwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcC0xMDc0LAorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEwNzQsCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgLTAuMCwKKyAgICAweDEucDAsCisgICAgLTAuMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xMDc0LAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTA3NCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIsCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwLTEwMjIsCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMTAyMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIC0weDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xMDIyLAorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTAyMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyLAorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIC0weDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEuOTk5OTk5NmRlOGNhMTk4YzI0YWI5NDQ5YmVlZTE2ZDVwLTEzLAorICAgIDB4MS5mZmZmZmY1YzI4ZjVjYjRjNTI3MjA2MTI4MTIxMTEyMHAtMSwKKyAgICAweDEuOTk5OTk5OTk5OTk5YXAtMTMsCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgLTB4MS45OTk5OTk2ZGU4Y2ExOThjMjRhYjk0NDliZWVlMTZkNXAtMTMsCisgICAgMHgxLmZmZmZmZjVjMjhmNWNiNGM1MjcyMDYxMjgxMjExMTIwcC0xLAorICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTMsCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLjk5OTk5OGVhZDY1Yjk2Zjc4YTRkYmZkODM5YzdlZjJlcC0xMiwKKyAgICAweDEuZmZmZmZkNzBhM2Q3OTYwY2Q1Njk1YTA2ZmRiODBlNzRwLTEsCisgICAgMHgxLjk5OTk5OTk5OTk5OWFwLTEyLAorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIC0weDEuOTk5OTk4ZWFkNjViOTZmNzhhNGRiZmQ4MzljN2VmMmVwLTEyLAorICAgIDB4MS5mZmZmZmQ3MGEzZDc5NjBjZDU2OTVhMDZmZGI4MGU3NHAtMSwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OWFwLTEyLAorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS4zMzMzMzIwYzQ5YmFiZmYxNTFiNmQwNDI5MGUyYzNhMnAtMTEsCisgICAgMHgxLmZmZmZmYTNkNzBhNjlhZDQyYjM5ZDg2OTY2MzJmODU2cC0xLAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cC0xMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAtMHgxLjMzMzMzMjBjNDliYWJmZjE1MWI2ZDA0MjkwZTJjM2EycC0xMSwKKyAgICAweDEuZmZmZmZhM2Q3MGE2OWFkNDJiMzlkODY5NjYzMmY4NTZwLTEsCisgICAgLTB4MS4zMzMzMzMzMzMzMzM0cC0xMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEuOTk5OTk2ZGU4Y2EyODg0ZGEyZjA4ZjI1YmIwMjRkMDhwLTExLAorICAgIDB4MS5mZmZmZjVjMjhmNjRlNWVjMGRhMGE0ZjdmNDM4ODA1MnAtMSwKKyAgICAweDEuOTk5OTk5OTk5OTk5YXAtMTEsCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgLTB4MS45OTk5OTZkZThjYTI4ODRkYTJmMDhmMjViYjAyNGQwOHAtMTEsCisgICAgMHgxLmZmZmZmNWMyOGY2NGU1ZWMwZGEwYTRmN2Y0Mzg4MDUycC0xLAorICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTEsCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLmZmZmZmYWFhYWFhZWVlZWVlZDRlZDRlZGFiNGM3YmQ2cC0xMSwKKyAgICAweDEuZmZmZmYwMDAwMDE1NTU1NTQ5ZjQ5ZjRkMzRkMzRjYTBwLTEsCisgICAgMHgxLjBwLTEwLAorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIC0weDEuZmZmZmZhYWFhYWFlZWVlZWVkNGVkNGVkYWI0YzdiZDZwLTExLAorICAgIDB4MS5mZmZmZjAwMDAwMTU1NTU1NDlmNDlmNGQzNGQzNGNhMHAtMSwKKyAgICAtMHgxLjBwLTEwLAorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS4zMzMzMmU5NzhkNTUyYWZjODgzYmRiMDQ3NTFlMzgzNXAtMTAsCisgICAgMHgxLmZmZmZlOGY1YzJiYjk4YzdjMTAzZDJmZjc5ZjE1ZDZhcC0xLAorICAgIDB4MS4zMzMzMzMzMzMzMzMzcC0xMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAtMHgxLjMzMzMyZTk3OGQ1NTJhZmM4ODNiZGIwNDc1MWUzODM1cC0xMCwKKyAgICAweDEuZmZmZmU4ZjVjMmJiOThjN2MxMDNkMmZmNzlmMTVkNmFwLTEsCisgICAgLTB4MS4zMzMzMzMzMzMzMzMzcC0xMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEuNjY2NjVmMTUyOWFmZjhhMzgwOTI0NjY3MGE0MzZjM2NwLTEwLAorICAgIDB4MS5mZmZmZTBhM2Q3NWMzMWIyNjQ1MTE2NmQ2ZjM5OGFiZHAtMSwKKyAgICAweDEuNjY2NjY2NjY2NjY2NnAtMTAsCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgLTB4MS42NjY2NWYxNTI5YWZmOGEzODA5MjQ2NjcwYTQzNmMzY3AtMTAsCisgICAgMHgxLmZmZmZlMGEzZDc1YzMxYjI2NDUxMTY2ZDZmMzk4YWJkcC0xLAorICAgIC0weDEuNjY2NjY2NjY2NjY2NnAtMTAsCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLjk5OTk4ZWFkNjVjZGY4MmUxOTRjMTMzOTk3ZjJmYjY4cC0xMCwKKyAgICAweDEuZmZmZmQ3MGEzZGZjNzMzYjMzMzFkODM4MmIxZTlkZjVwLTEsCisgICAgMHgxLjk5OTk5OTk5OTk5OTlwLTEwLAorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIC0weDEuOTk5OThlYWQ2NWNkZjgyZTE5NGMxMzM5OTdmMmZiNjhwLTEwLAorICAgIDB4MS5mZmZmZDcwYTNkZmM3MzNiMzMzMWQ4MzgyYjFlOWRmNXAtMSwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OTlwLTEwLAorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIDB4MS5jY2NjYmQzZjdkMTVkNDJhZmZiOWYwMmJmMWRjMjU3YnAtMTAsCisgICAgMHgxLmZmZmZjYzI4ZjZhMjgyM2YzNzY1YjUwNjU5ZWNiMGUycC0xLAorICAgIDB4MS5jY2NjY2NjY2NjY2NjcC0xMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLmNjY2NiZDNmN2QxNWQ0MmFmZmI5ZjAyYmYxZGMyNTdicC0xMCwKKyAgICAweDEuZmZmZmNjMjhmNmEyODIzZjM3NjViNTA2NTllY2IwZTJwLTEsCisgICAgLTB4MS5jY2NjY2NjY2NjY2NjcC0xMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuMDY2NWFlOWM3YjQ0ZWQyODAyMTZiZTIxMDRmMjhmMDJwLTcsCisgICAgMHgxLmZmZmJjYzJhNmU4NmZlZjdkMmFmMTU4MGJkOGU2Njk5cC0xLAorICAgIDB4MS4wNjY2NjY2NjY2NjY2cC03LAorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuMDY2NWFlOWM3YjQ0ZWQyODAyMTZiZTIxMDRmMjhmMDJwLTcsCisgICAgMHgxLmZmZmJjYzJhNmU4NmZlZjdkMmFmMTU4MGJkOGU2Njk5cC0xLAorICAgIC0weDEuMDY2NjY2NjY2NjY2NnAtNywKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuY2NjOGU5N2I1OWY2MTg4OThjNGFjM2EwYWVkZGY3MDlwLTcsCisgICAgMHgxLmZmZjMwYTRiNmZjYzE0MDVlMThmYmY3MzM1ZDJmNzg5cC0xLAorICAgIDB4MS5jY2NjY2NjY2NjY2NjcC03LAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIC0weDEuY2NjOGU5N2I1OWY2MTg4OThjNGFjM2EwYWVkZGY3MDlwLTcsCisgICAgMHgxLmZmZjMwYTRiNmZjYzE0MDVlMThmYmY3MzM1ZDJmNzg5cC0xLAorICAgIC0weDEuY2NjY2NjY2NjY2NjY3AtNywKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuNDk5M2U4YThmZjc5YjEzMjA0NmVmYTc4NTZhOTc1MzhwLTYsCisgICAgMHgxLmZmZTU3YTc4MGYzOGMwZGIzNzA1MWZhOGM4ZDYwZmJjcC0xLAorICAgIDB4MS40OTk5OTk5OTk5OTk5cC02LAorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEuNDk5M2U4YThmZjc5YjEzMjA0NmVmYTc4NTZhOTc1MzhwLTYsCisgICAgMHgxLmZmZTU3YTc4MGYzOGMwZGIzNzA1MWZhOGM4ZDYwZmJjcC0xLAorICAgIC0weDEuNDk5OTk5OTk5OTk5OXAtNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAweDEuYWNjMDQ0YzU2ZGIwZTE5ZjgyYzljM2NmZjI0NmUyMDFwLTYsCisgICAgMHgxLmZmZDMxY2QwZTFkNjJjMDVkMmNkZWQyMWFkZDhiZDMzcC0xLAorICAgIDB4MS5hY2NjY2NjY2NjY2NjcC02LAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEuYWNjMDQ0YzU2ZGIwZTE5ZjgyYzljM2NmZjI0NmUyMDFwLTYsCisgICAgMHgxLmZmZDMxY2QwZTFkNjJjMDVkMmNkZWQyMWFkZDhiZDMzcC0xLAorICAgIC0weDEuYWNjY2NjY2NjY2NjY3AtNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAweDEuMDdmNDRkNjdjZjQxYWZiYzBjOTUxMDhiOTlmOTFiMDFwLTUsCisgICAgMHgxLmZmYmJmMTgyMDc1NDJlZjgxMzkwZDczYzNiYTg5YzFhcC0xLAorICAgIDB4MS4wODBwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgLTB4MS4wN2Y0NGQ2N2NmNDFhZmJjMGM5NTEwOGI5OWY5MWIwMXAtNSwKKyAgICAweDEuZmZiYmYxODIwNzU0MmVmODEzOTBkNzNjM2JhODljMWFwLTEsCisgICAgLTB4MS4wODBwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMHgxLjM5ODVmZTQ2ZjFjODcxNGVhYTE0MTg1NjE5NjNlODlicC01LAorICAgIDB4MS5mZjlmZjhjMzI5OWY1NDQ1N2JiYWY4YzEyMTczYjQ2YnAtMSwKKyAgICAweDEuMzk5OTk5OTk5OTk5YXAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAtMHgxLjM5ODVmZTQ2ZjFjODcxNGVhYTE0MTg1NjE5NjNlODlicC01LAorICAgIDB4MS5mZjlmZjhjMzI5OWY1NDQ1N2JiYWY4YzEyMTczYjQ2YnAtMSwKKyAgICAtMHgxLjM5OTk5OTk5OTk5OWFwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgMHgxLjZiMTRiZGU5M2FjNWY3ZDI0NTQ0ZDBlY2Y4YmU3YWVlcC01LAorICAgIDB4MS5mZjdmMzJkNzdjNWIxYzQyZjE2NjBjOWI2ZjJlZjY0ZnAtMSwKKyAgICAweDEuNmIzMzMzMzMzMzMzNHAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAtMHgxLjZiMTRiZGU5M2FjNWY3ZDI0NTQ0ZDBlY2Y4YmU3YWVlcC01LAorICAgIDB4MS5mZjdmMzJkNzdjNWIxYzQyZjE2NjBjOWI2ZjJlZjY0ZnAtMSwKKyAgICAtMHgxLjZiMzMzMzMzMzMzMzRwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgMHgxLjljYTAxNTNlZDgzOTZiMDJmODYwNTIxOWE1ZmU1OTE3cC01LAorICAgIDB4MS5mZjU5YTAwZGJjNDA4OTZiYjVlNGFjOGFkMjkzYWZiNHAtMSwKKyAgICAweDEuOWNjY2NjY2NjY2NjZXAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAtMHgxLjljYTAxNTNlZDgzOTZiMDJmODYwNTIxOWE1ZmU1OTE3cC01LAorICAgIDB4MS5mZjU5YTAwZGJjNDA4OTZiYjVlNGFjOGFkMjkzYWZiNHAtMSwKKyAgICAtMHgxLjljY2NjY2NjY2NjY2VwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgMHgxLmNlMjc4ZDQwMjdkMzQzODdmMTg0ZDRhYjJhYWY1NDVmcC01LAorICAgIDB4MS5mZjJmNDBjMDJlNjBmNjFkNmRjZmMzOWI2YzJiZTA4N3AtMSwKKyAgICAweDEuY2U2NjY2NjY2NjY2NnAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAtMHgxLmNlMjc4ZDQwMjdkMzQzODdmMTg0ZDRhYjJhYWY1NDVmcC01LAorICAgIDB4MS5mZjJmNDBjMDJlNjBmNjFkNmRjZmMzOWI2YzJiZTA4N3AtMSwKKyAgICAtMHgxLmNlNjY2NjY2NjY2NjZwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgMHgxLjQzYzFlOWMxNzFhNjY3YTBiOTI1MTlhMDRmYTVhOTFjcC0xLAorICAgIDB4MS44Y2E0NmM3ZDg5NzVlNTdhMTQ4NGYwNWMzNzM4ZDgzYnAtMSwKKyAgICAweDEuNWU3ZmM0MzY5YmRhZHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAtMHgxLjQzYzFlOWMxNzFhNjY3YTBiOTI1MTlhMDRmYTVhOTFjcC0xLAorICAgIDB4MS44Y2E0NmM3ZDg5NzVlNTdhMTQ4NGYwNWMzNzM4ZDgzYnAtMSwKKyAgICAtMHgxLjVlN2ZjNDM2OWJkYWRwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgMHgxLmVlM2Q2YmNlYTA5Y2ExOGIxZDFjZTdlZTA0ZmQ4ODZmcC0xLAorICAgIDB4MS4wYjVkMzgwMmZjNzk5MTE0MDE2OGYyOTRlZWRkNzkwNHAtMiwKKyAgICAweDEuNGU3ZmM0MzY5YmRhZHAwLAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIC0weDEuZWUzZDZiY2VhMDljYTE4YjFkMWNlN2VlMDRmZDg4NmZwLTEsCisgICAgMHgxLjBiNWQzODAyZmM3OTkxMTQwMTY4ZjI5NGVlZGQ3OTA0cC0yLAorICAgIC0weDEuNGU3ZmM0MzY5YmRhZHAwLAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDB4MS5kZjhlMjJlYTgwOWQ2NWM2YTY5Yjk2YWNhNjBiZTQzMnAtMSwKKyAgICAtMHgxLjY2Yjk2ZjUzMzIzYWYxZDdlMzFhNzE2MmFiMThhNzVicC0yLAorICAgIDB4MS5lZGJmYTY1MWU5Yzg0cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgLTB4MS5kZjhlMjJlYTgwOWQ2NWM2YTY5Yjk2YWNhNjBiZTQzMnAtMSwKKyAgICAtMHgxLjY2Yjk2ZjUzMzIzYWYxZDdlMzFhNzE2MmFiMThhNzVicC0yLAorICAgIC0weDEuZWRiZmE2NTFlOWM4NHAwLAorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIDB4MS4xZDM0NzllYWM3YWUzNWUyZmJlYTBhZTY5NjQzNDY5MnAtMSwKKyAgICAtMHgxLmE5MzU1NDg4OGMzMmZhNTdmMjJhOTUyOWEzMjBjMWNicC0xLAorICAgIDB4MS40NjdmYzQzNjliZGFkcDEsCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgLTB4MS4xZDM0NzllYWM3YWUzNWUyZmJlYTBhZTY5NjQzNDY5MnAtMSwKKyAgICAtMHgxLmE5MzU1NDg4OGMzMmZhNTdmMjJhOTUyOWEzMjBjMWNicC0xLAorICAgIC0weDEuNDY3ZmM0MzY5YmRhZHAxLAorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuZmZlYWFhZWVlZTg0YjQ0Y2NlZmVmODMyMjU0ZDI4YzBwLTYsCisgICAgLTB4MS5mZmMwMDE1NTUyN2QyYjlmZGEyYWU4OTM5NmUwOTcyN3AtMSwKKyAgICAweDEuOTYxZmI1NDQ0MmQxOHAxLAorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS5mZmVhYWFlZWVlODRiNDRjY2VmZWY4MzIyNTRkMjhjMHAtNiwKKyAgICAtMHgxLmZmYzAwMTU1NTI3ZDJiOWZkYTJhZTg5Mzk2ZTA5NzI3cC0xLAorICAgIC0weDEuOTYxZmI1NDQ0MmQxOHAxLAorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuMzczNGQzMmQ0OWJkMGI5NDI3NzJhNzU2N2Q1MTQxNDBwLTEsCisgICAgLTB4MS45NjkwN2M1YzdjMjViODhlMzRhZGRmZjFmYmVmNjZlNHAtMSwKKyAgICAweDEuZTViZmE2NTFlOWM4M3AxLAorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIDB4MS4zNzM0ZDMyZDQ5YmQwYjk0Mjc3MmE3NTY3ZDUxNDE0MHAtMSwKKyAgICAtMHgxLjk2OTA3YzVjN2MyNWI4OGUzNGFkZGZmMWZiZWY2NmU0cC0xLAorICAgIC0weDEuZTViZmE2NTFlOWM4M3AxLAorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0weDEuZTlkMjVkMTk5MTFlMjA1YjY1MzUyMWY0MmI5Yjg2NGZwLTEsCisgICAgLTB4MS4yYTFlNWE1MGY5NDhjZDQ4N2M1MzA5NjgyYjExMGE1M3AtMiwKKyAgICAweDEuMWFhZmNiYWZjODVmN3AyLAorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS5lOWQyNWQxOTkxMWUyMDViNjUzNTIxZjQyYjliODY0ZnAtMSwKKyAgICAtMHgxLjJhMWU1YTUwZjk0OGNkNDg3YzUzMDk2ODJiMTEwYTUzcC0yLAorICAgIC0weDEuMWFhZmNiYWZjODVmN3AyLAorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuZTRlY2RjNWE0ZTQ2NTg5OTkyOGViOWZjOTU4MjlkNDhwLTEsCisgICAgMHgxLjQ4OTRmNjk1ZGM1NmJjZThiMjczZTU1MjRmMTgxMjY0cC0yLAorICAgIDB4MS40MjdmYzQzNjliZGFkcDIsCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLmU0ZWNkYzVhNGU0NjU4OTk5MjhlYjlmYzk1ODI5ZDQ4cC0xLAorICAgIDB4MS40ODk0ZjY5NWRjNTZiY2U4YjI3M2U1NTI0ZjE4MTI2NHAtMiwKKyAgICAtMHgxLjQyN2ZjNDM2OWJkYWRwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLjJhNTlmMTAzNDQyNjE5N2ZhNmVlZTIyNzYyOTY3ZjI1cC0xLAorICAgIDB4MS5hMDE2ZWEzYTY5MmNlMGMzMjFiNzdmMTY4ZGUzOTEyMnAtMSwKKyAgICAweDEuNmE0ZmJjYmQ2ZjU2MnAyLAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS4yYTU5ZjEwMzQ0MjYxOTdmYTZlZWUyMjc2Mjk2N2YyNXAtMSwKKyAgICAweDEuYTAxNmVhM2E2OTJjZTBjMzIxYjc3ZjE2OGRlMzkxMjJwLTEsCisgICAgLTB4MS42YTRmYmNiZDZmNTYycDIsCisgIH0sCisgIHsgLy8gRW50cnkgMTczCisgICAgLTB4MS4yNjMxMjQ0M2JkMzVmMTkzMTJlYWMwYTFhNmI1NjU5ZXAtMSwKKyAgICAweDEuYTMwYTY5ZjU1MzdlYmMyMmYwODcwYzJiZDI2ZWYyODRwLTEsCisgICAgMHgxLjZhZjJlZmYwYTI4OTZwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuMjYzMTI0NDNiZDM1ZjE5MzEyZWFjMGExYTZiNTY1OWVwLTEsCisgICAgMHgxLmEzMGE2OWY1NTM3ZWJjMjJmMDg3MGMyYmQyNmVmMjg0cC0xLAorICAgIC0weDEuNmFmMmVmZjBhMjg5NnAyLAorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIC0weDEuZTE4ZTY2MGE1ZTJmYjMxNmVjYmI5ZWQ3MDEyMmVmZjVwLTEsCisgICAgMHgxLjViZDYyZThiMDRhZDU5MTVlNjYyNDIzNDliNzU2ZTExcC0yLAorICAgIDB4MS40M2M2MmE5ZDAyNDE0cDIsCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLmUxOGU2NjBhNWUyZmIzMTZlY2JiOWVkNzAxMjJlZmY1cC0xLAorICAgIDB4MS41YmQ2MmU4YjA0YWQ1OTE1ZTY2MjQyMzQ5Yjc1NmUxMXAtMiwKKyAgICAtMHgxLjQzYzYyYTlkMDI0MTRwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLmVlMGU4M2EwMTk4YjZlMmVmN2M0OGU2NjI1MjkxYTBhcC0xLAorICAgIC0weDEuMGNiNzFmNjcxZTYzNDEwOTY2ZTc4ZDIwMDljMDYxNmZwLTIsCisgICAgMHgxLjFjOTk2NTQ5NjFmOTJwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuZWUwZTgzYTAxOThiNmUyZWY3YzQ4ZTY2MjUyOTFhMGFwLTEsCisgICAgLTB4MS4wY2I3MWY2NzFlNjM0MTA5NjZlNzhkMjAwOWMwNjE2ZnAtMiwKKyAgICAtMHgxLjFjOTk2NTQ5NjFmOTJwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAtMHgxLjQ3Mjc3NDczMzhlNDY1MzYxNmVhZGJkN2VjM2QwMmQzcC0xLAorICAgIC0weDEuODlkODZhYTg1MjFjMTFiNzRmOGIxOTU0YzA4ZjliMzZwLTEsCisgICAgMHgxLmVhZDkzZmViODM2MWZwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAweDEuNDcyNzc0NzMzOGU0NjUzNjE2ZWFkYmQ3ZWMzZDAyZDNwLTEsCisgICAgLTB4MS44OWQ4NmFhODUyMWMxMWI3NGY4YjE5NTRjMDhmOWIzNnAtMSwKKyAgICAtMHgxLmVhZDkzZmViODM2MWZwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAtMHgxLjRiYTJmNzVkZGE1ZmU0MzQzMjA5MDVhNzE4NGZmMWFmcC00LAorICAgIC0weDEuZmU1MWFjNTU0YTE2YWQ4MTk0ZjE4MTA4NWY4YTE3ZjJwLTEsCisgICAgMHgxLjljN2ZiNTQ0NDJkMWFwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuNGJhMmY3NWRkYTVmZTQzNDMyMDkwNWE3MTg0ZmYxYWZwLTQsCisgICAgLTB4MS5mZTUxYWM1NTRhMTZhZDgxOTRmMTgxMDg1ZjhhMTdmMnAtMSwKKyAgICAtMHgxLjljN2ZiNTQ0NDJkMWFwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAweDEuMDM0YzRkNjMzYjRlZjBhOTA4OWI0Mzg5MmE0NjJhMjZwLTEsCisgICAgLTB4MS5iOTdjMDRkMDhiYzVkNzY1YjM0MWEyMmIyYzcyMGI2ZnAtMSwKKyAgICAweDEuNGUyNjJhOWQwMjQxNXAxLAorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIC0weDEuMDM0YzRkNjMzYjRlZjBhOTA4OWI0Mzg5MmE0NjJhMjZwLTEsCisgICAgLTB4MS5iOTdjMDRkMDhiYzVkNzY1YjM0MWEyMmIyYzcyMGI2ZnAtMSwKKyAgICAtMHgxLjRlMjYyYTlkMDI0MTVwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuZDFlNGNkZTJmMzk0NGY0YzEzNGMwNWNjNGU1MzM5YTNwLTEsCisgICAgLTB4MS5hOGFjOGEzZTU4ZjZjYTk1MjM5MDI5OWQyZThiMTg3ZnAtMiwKKyAgICAweDEuZmY5OTNmZWI4MzYyMHAwLAorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIC0weDEuZDFlNGNkZTJmMzk0NGY0YzEzNGMwNWNjNGU1MzM5YTNwLTEsCisgICAgLTB4MS5hOGFjOGEzZTU4ZjZjYTk1MjM5MDI5OWQyZThiMTg3ZnAtMiwKKyAgICAtMHgxLmZmOTkzZmViODM2MjBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAweDEuZjc1MDIzNWM5NDk5MjZjNDhjOTBlNDFhOTE0NzRjMDZwLTEsCisgICAgMHgxLjc3YThiOWIzZDI1NGE5ZTM5ZDAyYjNlYjNlMjM5MGU3cC0zLAorICAgIDB4MS42MmU2MmE5ZDAyNDE2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgLTB4MS5mNzUwMjM1Yzk0OTkyNmM0OGM5MGU0MWE5MTQ3NGMwNnAtMSwKKyAgICAweDEuNzdhOGI5YjNkMjU0YTllMzlkMDJiM2ViM2UyMzkwZTdwLTMsCisgICAgLTB4MS42MmU2MmE5ZDAyNDE2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLjY1ZjdkNTcxMjc5YjBiODAwNTU1MmZkNDdhMmU3N2FlcC0xLAorICAgIDB4MS42ZTEwNjEyMDVkZDc5MDUxYzExMmQzMGEwNTA5N2M2MXAtMSwKKyAgICAweDEuOGM2NjJhOWQwMjQxOXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAtMHgxLjY1ZjdkNTcxMjc5YjBiODAwNTU1MmZkNDdhMmU3N2FlcC0xLAorICAgIDB4MS42ZTEwNjEyMDVkZDc5MDUxYzExMmQzMGEwNTA5N2M2MXAtMSwKKyAgICAtMHgxLjhjNjYyYTlkMDI0MTlwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS5mZTA0M2Y1NzM2OWQ2YTUyZmEzM2YwMTE5ZWM0ZGExOXAtMSwKKyAgICAtMHgxLjY4MmYzY2MzYzdhMDhkYTJjZTAyYTQxY2RjN2JlZDg2cC00LAorICAgIC0weDEuYThhYTFkMTFjNDRmZnAwLAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS5mZTA0M2Y1NzM2OWQ2YTUyZmEzM2YwMTE5ZWM0ZGExOXAtMSwKKyAgICAtMHgxLjY4MmYzY2MzYzdhMDhkYTJjZTAyYTQxY2RjN2JlZDg2cC00LAorICAgIDB4MS5hOGFhMWQxMWM0NGZmcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5mZmYxOGYyNGYzZTRiODdiZjhjMzc2MmNiNDRmNDZkNnAtMSwKKyAgICAtMHgxLmU2NjY5YTI3MGMzNmQ0ODc5YjQyOGRkYmE5NmNkODdicC03LAorICAgIC0weDEuOTVlYzhiOWUwM2Q1NHAwLAorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5mZmYxOGYyNGYzZTRiODdiZjhjMzc2MmNiNDRmNDZkNnAtMSwKKyAgICAtMHgxLmU2NjY5YTI3MGMzNmQ0ODc5YjQyOGRkYmE5NmNkODdicC03LAorICAgIDB4MS45NWVjOGI5ZTAzZDU0cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS5mZjIwZDk2MTYyNGU3MDYzYTc4MjAzYjgxMWY1NzljYXAtMSwKKyAgICAweDEuZGRkMWVjMjVlMjA5ZjFiYmY3ZTE3ZWY2Yzg0NTBjZDdwLTUsCisgICAgLTB4MS44MzJlZmEyYTQzNWE5cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLmZmMjBkOTYxNjI0ZTcwNjNhNzgyMDNiODExZjU3OWNhcC0xLAorICAgIDB4MS5kZGQxZWMyNWUyMDlmMWJiZjdlMTdlZjZjODQ1MGNkN3AtNSwKKyAgICAweDEuODMyZWZhMmE0MzVhOXAwLAorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuZmI5MzNjNDAxMDdmZDc3NTE4NWFjMTQ5MThjOGZiYWZwLTEsCisgICAgMHgxLjBjYWI5MTE1NjQwZDk5MzA4MmE3MzQzYmI1YWZmZWEycC0zLAorICAgIC0weDEuNzA3MTY4YjY4MmRmZXAwLAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS5mYjkzM2M0MDEwN2ZkNzc1MTg1YWMxNDkxOGM4ZmJhZnAtMSwKKyAgICAweDEuMGNhYjkxMTU2NDBkOTkzMDgyYTczNDNiYjVhZmZlYTJwLTMsCisgICAgMHgxLjcwNzE2OGI2ODJkZmVwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLmY1NGQ5NzE4ODFhZDY4NWI3ODJlZjg4ZTYzNTBmN2NkcC0xLAorICAgIDB4MS5hMDcyM2E5NTQ5MmVkZWU1ZGM5ODM5NGU0NWY5NmQ4OHAtMywKKyAgICAtMHgxLjVkYjNkNzQyYzI2NTNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAweDEuZjU0ZDk3MTg4MWFkNjg1Yjc4MmVmODhlNjM1MGY3Y2RwLTEsCisgICAgMHgxLmEwNzIzYTk1NDkyZWRlZTVkYzk4Mzk0ZTQ1Zjk2ZDg4cC0zLAorICAgIDB4MS41ZGIzZDc0MmMyNjUzcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgLTB4MS5lYzU4ODNiN2I2Y2Y0ZDg1OWFiMDRlMTVkNTM2OThjOXAtMSwKKyAgICAweDEuMThmZWU5NmExYTU4NTkyOGE5NGNkYTdlM2Q5MTZmZTFwLTIsCisgICAgLTB4MS40YWY2NDVjZjAxZWE4cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLmVjNTg4M2I3YjZjZjRkODU5YWIwNGUxNWQ1MzY5OGM5cC0xLAorICAgIDB4MS4xOGZlZTk2YTFhNTg1OTI4YTk0Y2RhN2UzZDkxNmZlMXAtMiwKKyAgICAweDEuNGFmNjQ1Y2YwMWVhOHAwLAorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0weDEuZTBjMDRhOTRlMTczMDljODA2YzFjNzhiZGRjMWQ2MDdwLTEsCisgICAgMHgxLjYwNDM2MjFiMTNiZTJmZjA3MDg1ZjgyNzg1OThlNTY2cC0yLAorICAgIC0weDEuMzgzOGI0NWI0MTZmZHAwLAorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS5lMGMwNGE5NGUxNzMwOWM4MDZjMWM3OGJkZGMxZDYwN3AtMSwKKyAgICAweDEuNjA0MzYyMWIxM2JlMmZmMDcwODVmODI3ODU5OGU1NjZwLTIsCisgICAgMHgxLjM4MzhiNDViNDE2ZmRwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAtMHgxLmQyOTRkMWY5NmM3ZWJkYjk4NjlkZDk3Y2Y1NzRkZGI5cC0xLAorICAgIDB4MS5hNWE0Y2NmNDBkOWQ5YmE5N2ZhYTRlMjNlY2NlOWUzYXAtMiwKKyAgICAtMHgxLjI1N2IyMmU3ODBmNTJwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuZDI5NGQxZjk2YzdlYmRiOTg2OWRkOTdjZjU3NGRkYjlwLTEsCisgICAgMHgxLmE1YTRjY2Y0MGQ5ZDliYTk3ZmFhNGUyM2VjY2U5ZTNhcC0yLAorICAgIDB4MS4yNTdiMjJlNzgwZjUycDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS5jMWU5ODgzMzczZDdlY2M0OGM5MmRjODg3NTUwNWY3ZXAtMSwKKyAgICAweDEuZThjNDA1ZjM2Zjg1YjdmNWQ2YTM4ZGZkNGE2OTIzNDFwLTIsCisgICAgLTB4MS4xMmJkOTE3M2MwN2FicDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLmMxZTk4ODMzNzNkN2VjYzQ4YzkyZGM4ODc1NTA1ZjdlcC0xLAorICAgIDB4MS5lOGM0MDVmMzZmODViN2Y1ZDZhMzhkZmQ0YTY5MjM0MXAtMiwKKyAgICAweDEuMTJiZDkxNzNjMDdhYnAwLAorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuYTJjMjg5ZDlkMDU1YWMzNzdmNjdkN2E1NGEwYjMwMDVwLTEsCisgICAgMHgxLjI2OTc2YTZjNGUwZjg2NjMzMzI3ZjFjZWVjYjUwOGFlcC0xLAorICAgIC0weDEuZWE1YzNlZDViMzg1MHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuYTJjMjg5ZDlkMDU1YWMzNzdmNjdkN2E1NGEwYjMwMDVwLTEsCisgICAgMHgxLjI2OTc2YTZjNGUwZjg2NjMzMzI3ZjFjZWVjYjUwOGFlcC0xLAorICAgIDB4MS5lYTVjM2VkNWIzODUwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuOTVmMDUyNTdkYmNiNWY0YjEyNjM2YzU4NzhlYTQwNWFwLTEsCisgICAgMHgxLjM4MDVhMTg4MjAwOWYyODQzZGE4MDhlOTU5ZjE3ODYxcC0xLAorICAgIC0weDEuZDRiODdkYWI2NzBhMHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuOTVmMDUyNTdkYmNiNWY0YjEyNjM2YzU4NzhlYTQwNWFwLTEsCisgICAgMHgxLjM4MDVhMTg4MjAwOWYyODQzZGE4MDhlOTU5ZjE3ODYxcC0xLAorICAgIDB4MS5kNGI4N2RhYjY3MGEwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIC0weDEuODg2NDdmMjZhNmUwZjZiMjcxNWE2YzM3OTdlYzExZjVwLTEsCisgICAgMHgxLjQ4ZTUyZTBhNjViY2IzY2Q0NjQ1NWM0ZDIzMzhiZGYycC0xLAorICAgIC0weDEuYmYxNGJjODExYThmMHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAweDEuODg2NDdmMjZhNmUwZjZiMjcxNWE2YzM3OTdlYzExZjVwLTEsCisgICAgMHgxLjQ4ZTUyZTBhNjViY2IzY2Q0NjQ1NWM0ZDIzMzhiZGYycC0xLAorICAgIDB4MS5iZjE0YmM4MTFhOGYwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0weDEuN2EyNTQxZGZkNGU3NTJkZTM4ZjA0YWJhMjFmYzlkOWZwLTEsCisgICAgMHgxLjU5MmU1OGVhMGE5ZWVjMGIzNTdlYjRlOWE4M2IwZWE1cC0xLAorICAgIC0weDEuYTk3MGZiNTZjZTE0MHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAweDEuN2EyNTQxZGZkNGU3NTJkZTM4ZjA0YWJhMjFmYzlkOWZwLTEsCisgICAgMHgxLjU5MmU1OGVhMGE5ZWVjMGIzNTdlYjRlOWE4M2IwZWE1cC0xLAorICAgIDB4MS5hOTcwZmI1NmNlMTQwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIC0weDEuNmIzOTFlMjViYzI2Y2JiY2Y3YTAxODQwNzBhZjljMzlwLTEsCisgICAgMHgxLjY4ZDlhZmUwNTJkMWYwZTkzMjRhZTg3Njk2MWJjZGIxcC0xLAorICAgIC0weDEuOTNjZDNhMmM4MTk5MHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuNmIzOTFlMjViYzI2Y2JiY2Y3YTAxODQwNzBhZjljMzlwLTEsCisgICAgMHgxLjY4ZDlhZmUwNTJkMWYwZTkzMjRhZTg3Njk2MWJjZGIxcC0xLAorICAgIDB4MS45M2NkM2EyYzgxOTkwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEuNWJhNmU2YThlNzA2NTM1Yjk4ZmM5OWRmYWVmODI0ZjFwLTEsCisgICAgMHgxLjc3ZTAwOGQwNzc1ZTc0NGViMTZhMmM0ZWM3MTg0YzQzcC0xLAorICAgIC0weDEuN2UyOTc5MDIzNTFlMHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAweDEuNWJhNmU2YThlNzA2NTM1Yjk4ZmM5OWRmYWVmODI0ZjFwLTEsCisgICAgMHgxLjc3ZTAwOGQwNzc1ZTc0NGViMTZhMmM0ZWM3MTg0YzQzcC0xLAorICAgIDB4MS43ZTI5NzkwMjM1MWUwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIC0weDEuNGI3NWJhMDk2ZmE1NDllYjkzNTk1ZDgxOTRhYjkxN2ZwLTEsCisgICAgMHgxLjg2M2E4NTBlNDM4ZmUwMjkzMDJhYmEwZjVmMTI3NjE2cC0xLAorICAgIC0weDEuNjg4NWI3ZDdlOGEzMHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEuNGI3NWJhMDk2ZmE1NDllYjkzNTk1ZDgxOTRhYjkxN2ZwLTEsCisgICAgMHgxLjg2M2E4NTBlNDM4ZmUwMjkzMDJhYmEwZjVmMTI3NjE2cC0xLAorICAgIDB4MS42ODg1YjdkN2U4YTMwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIC0weDEuM2FhY2ZmOTVhMzEyMmIxNWYzNzJiZmQyZmRmOWE3NWZwLTEsCisgICAgMHgxLjkzZTI5NDgyMzNmY2U4MTQ0MzllZDUxZmQyNTQ4OTIwcC0xLAorICAgIC0weDEuNTJlMWY2YWQ5YzI4MHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAweDEuM2FhY2ZmOTVhMzEyMmIxNWYzNzJiZmQyZmRmOWE3NWZwLTEsCisgICAgMHgxLjkzZTI5NDgyMzNmY2U4MTQ0MzllZDUxZmQyNTQ4OTIwcC0xLAorICAgIDB4MS41MmUxZjZhZDljMjgwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0weDEuMjk1NDYzZTc2OTI4NGE1YWVkMTdhNDQzMzkyZjM4ZjNwLTEsCisgICAgMHgxLmEwZDFmOGE5YTc5MWQ0YjU2OTRjYTY4YTQyZmU2YzlicC0xLAorICAgIC0weDEuM2QzZTM1ODM0ZmFkMHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAweDEuMjk1NDYzZTc2OTI4NGE1YWVkMTdhNDQzMzkyZjM4ZjNwLTEsCisgICAgMHgxLmEwZDFmOGE5YTc5MWQ0YjU2OTRjYTY4YTQyZmU2YzlicC0xLAorICAgIDB4MS4zZDNlMzU4MzRmYWQwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIC0weDEuZmM3NjliNzdlNTg4NDk1YTZmNjQyY2EyNGU0ZWQzZmNwLTIsCisgICAgMHgxLmJjNmJkODYxZTEzZGUzMDk0MjhlMDBmN2JlZjZjM2VjcC0xLAorICAgIC0weDEuMGEwYjAyNTAxYzc5OXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuZmM3NjliNzdlNTg4NDk1YTZmNjQyY2EyNGU0ZWQzZmNwLTIsCisgICAgMHgxLmJjNmJkODYxZTEzZGUzMDk0MjhlMDBmN2JlZjZjM2VjcC0xLAorICAgIDB4MS4wYTBiMDI1MDFjNzk5cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIC0weDEuYzg1M2M3ODQ2MmRlNDZiNTc0MzMxNTYxMmY4YjVhN2NwLTIsCisgICAgMHgxLmNhNTljNmZhM2Q5Y2UyMzhhMjI3MzkzYjZiMDc1YmM1cC0xLAorICAgIC0weDEuZDhmNzIwOGU2YjgyY3AtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuYzg1M2M3ODQ2MmRlNDZiNTc0MzMxNTYxMmY4YjVhN2NwLTIsCisgICAgMHgxLmNhNTljNmZhM2Q5Y2UyMzhhMjI3MzkzYjZiMDc1YmM1cC0xLAorICAgIDB4MS5kOGY3MjA4ZTZiODJjcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIC0weDEuOTJhYmE5MGFhZjI3MjQ5ZGU0OWM3OGZjNjQzYzhiNzJwLTIsCisgICAgMHgxLmQ2YzBiMTI1NzkxY2ZmY2U4M2UzMjU2NDcxMmI3OGM2cC0xLAorICAgIC0weDEuOWRkODNjN2M5ZTEyNnAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEuOTJhYmE5MGFhZjI3MjQ5ZGU0OWM3OGZjNjQzYzhiNzJwLTIsCisgICAgMHgxLmQ2YzBiMTI1NzkxY2ZmY2U4M2UzMjU2NDcxMmI3OGM2cC0xLAorICAgIDB4MS45ZGQ4M2M3YzllMTI2cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEuNWJhYzA2NDY1OGYzOTQ2MGM4MzExM2MwYTAwOTdhMGNwLTIsCisgICAgMHgxLmUxOTYwMjYxODI5ODU4MzkxNjQ1YmJlMTIwMTllNThhcC0xLAorICAgIC0weDEuNjJiOTU4NmFkMGEyMHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEuNWJhYzA2NDY1OGYzOTQ2MGM4MzExM2MwYTAwOTdhMGNwLTIsCisgICAgMHgxLmUxOTYwMjYxODI5ODU4MzkxNjQ1YmJlMTIwMTllNThhcC0xLAorICAgIDB4MS42MmI5NTg2YWQwYTIwcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0weDEuMjM4M2NhODA3OGU1ODQ3N2NkNWZiMWQ5ZGUwMzFkY2VwLTIsCisgICAgMHgxLmVhZDA3Y2M2MzU2OTY0ZTI3YTEwMzZkMmY4YjE1OGY3cC0xLAorICAgIC0weDEuMjc5YTc0NTkwMzMxYXAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuMjM4M2NhODA3OGU1ODQ3N2NkNWZiMWQ5ZGUwMzFkY2VwLTIsCisgICAgMHgxLmVhZDA3Y2M2MzU2OTY0ZTI3YTEwMzZkMmY4YjE1OGY3cC0xLAorICAgIDB4MS4yNzlhNzQ1OTAzMzFhcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDIzNworICAgIC0weDEuZDRjNWJjMTFkMjM3MWFmMmZlMjVlZjVlZGUyNzY2YTNwLTMsCisgICAgMHgxLmYyNjg0MGU3YjIxODhmN2EwY2M2NjFhMGVkZTM3MjhicC0xLAorICAgIC0weDEuZDhmNzIwOGU2YjgyOXAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEuZDRjNWJjMTFkMjM3MWFmMmZlMjVlZjVlZGUyNzY2YTNwLTMsCisgICAgMHgxLmYyNjg0MGU3YjIxODhmN2EwY2M2NjFhMGVkZTM3MjhicC0xLAorICAgIDB4MS5kOGY3MjA4ZTZiODI5cC0zLAorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIC0weDEuNjBmM2ZhYWY0MzAyM2QzYzc4NjNhZTA2ZDRkNTk3NzRwLTMsCisgICAgMHgxLmY4NTZkNDhkYjc5N2RlYzBiNzllMTM1MzQwOWRjM2YycC0xLAorICAgIC0weDEuNjJiOTU4NmFkMGExZXAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAweDEuNjBmM2ZhYWY0MzAyM2QzYzc4NjNhZTA2ZDRkNTk3NzRwLTMsCisgICAgMHgxLmY4NTZkNDhkYjc5N2RlYzBiNzllMTM1MzQwOWRjM2YycC0xLAorICAgIDB4MS42MmI5NTg2YWQwYTFlcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIC0weDEuZDdlYTNkZTQ1YTlkNjU2M2FjMDA1YzBjNWJhZDhjNTBwLTQsCisgICAgMHgxLmZjOTcyODNhNDI0Nzk3MjE1ZjhhOGQxOTY3NzM2YzlicC0xLAorICAgIC0weDEuZDhmNzIwOGU2YjgyNnAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEuZDdlYTNkZTQ1YTlkNjU2M2FjMDA1YzBjNWJhZDhjNTBwLTQsCisgICAgMHgxLmZjOTcyODNhNDI0Nzk3MjE1ZjhhOGQxOTY3NzM2YzlicC0xLAorICAgIDB4MS5kOGY3MjA4ZTZiODI2cC00LAorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIC0weDEuZDhiM2RmNDg5OTg3YTZmZTBlZWFkMDA4ZTcyMGFhMjJwLTUsCisgICAgMHgxLmZmMjU5YjdhYjlmNGY5YThjYjlmMWMzMzMyNzJlNDA5cC0xLAorICAgIC0weDEuZDhmNzIwOGU2YjgyZHAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEuZDhiM2RmNDg5OTg3YTZmZTBlZWFkMDA4ZTcyMGFhMjJwLTUsCisgICAgMHgxLmZmMjU5YjdhYjlmNGY5YThjYjlmMWMzMzMyNzJlNDA5cC0xLAorICAgIDB4MS5kOGY3MjA4ZTZiODJkcC01LAorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS5kOGIzZGY0ODk5ODdhNmZlMGVlYWQwMDhlNzIwYWEyMnAtNSwKKyAgICAweDEuZmYyNTliN2FiOWY0ZjlhOGNiOWYxYzMzMzI3MmU0MDlwLTEsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgLTB4MS5kOGIzZGY0ODk5ODdhNmZlMGVlYWQwMDhlNzIwYWEyMnAtNSwKKyAgICAweDEuZmYyNTliN2FiOWY0ZjlhOGNiOWYxYzMzMzI3MmU0MDlwLTEsCisgICAgLTB4MS5kOGY3MjA4ZTZiODJkcC01LAorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS5kN2VhM2RlNDVhOWRkNGE0YmNjZDFhOGMwNDhmYWY0Y3AtNCwKKyAgICAweDEuZmM5NzI4M2E0MjQ3OTU4NDcyOTQ2NTRhMWQ4YTA4ZWRwLTEsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgLTB4MS5kN2VhM2RlNDVhOWRkNGE0YmNjZDFhOGMwNDhmYWY0Y3AtNCwKKyAgICAweDEuZmM5NzI4M2E0MjQ3OTU4NDcyOTQ2NTRhMWQ4YTA4ZWRwLTEsCisgICAgLTB4MS5kOGY3MjA4ZTZiODJkcC00LAorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDB4MS42MGYzZmFhZjQzMDI3YzQ3NTJmNTY0ZjlkMDgxOGZlOHAtMywKKyAgICAweDEuZjg1NmQ0OGRiNzk3ZGJmZWNmYThiNGNkM2JlNDQwMjdwLTEsCisgICAgMHgxLjYyYjk1ODZhZDBhMjJwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgLTB4MS42MGYzZmFhZjQzMDI3YzQ3NTJmNTY0ZjlkMDgxOGZlOHAtMywKKyAgICAweDEuZjg1NmQ0OGRiNzk3ZGJmZWNmYThiNGNkM2JlNDQwMjdwLTEsCisgICAgLTB4MS42MmI5NTg2YWQwYTIycC0zLAorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS5kNGM1YmMxMWQyMzc1OTQwMDY0MmU1YTFlZmRjMGY4NXAtMywKKyAgICAweDEuZjI2ODQwZTdiMjE4OGJkMDgxNGUzZGZjN2Y2ZjNmODdwLTEsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgLTB4MS5kNGM1YmMxMWQyMzc1OTQwMDY0MmU1YTFlZmRjMGY4NXAtMywKKyAgICAweDEuZjI2ODQwZTdiMjE4OGJkMDgxNGUzZGZjN2Y2ZjNmODdwLTEsCisgICAgLTB4MS5kOGY3MjA4ZTZiODJkcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS4yMzgzY2E4MDc4ZTVhMzI0ZDUyYzE1MzA3NDJjZDRmNXAtMiwKKyAgICAweDEuZWFkMDdjYzYzNTY5NjA1NDZhZTYzNGVmNjI2MjFmYjJwLTEsCisgICAgMHgxLjI3OWE3NDU5MDMzMWNwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgLTB4MS4yMzgzY2E4MDc4ZTVhMzI0ZDUyYzE1MzA3NDJjZDRmNXAtMiwKKyAgICAweDEuZWFkMDdjYzYzNTY5NjA1NDZhZTYzNGVmNjI2MjFmYjJwLTEsCisgICAgLTB4MS4yNzlhNzQ1OTAzMzFjcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS41YmFjMDY0NjU4ZjNiMjdhMjg1NzJiZWEyNTYxOTVlZnAtMiwKKyAgICAweDEuZTE5NjAyNjE4Mjk4NTJjYTY2MmNhMjdkNTE4YzJmYTlwLTEsCisgICAgMHgxLjYyYjk1ODZhZDBhMjJwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgLTB4MS41YmFjMDY0NjU4ZjNiMjdhMjg1NzJiZWEyNTYxOTVlZnAtMiwKKyAgICAweDEuZTE5NjAyNjE4Mjk4NTJjYTY2MmNhMjdkNTE4YzJmYTlwLTEsCisgICAgLTB4MS42MmI5NTg2YWQwYTIycC0yLAorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIDB4MS45MmFiYTkwYWFmMjc0MjA5ZWZhZWQwOGUzNDA3MWUzYnAtMiwKKyAgICAweDEuZDZjMGIxMjU3OTFjZjk4M2Q1M2VmYWE3ZDQ1ZTI5MWVwLTEsCisgICAgMHgxLjlkZDgzYzdjOWUxMjhwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgLTB4MS45MmFiYTkwYWFmMjc0MjA5ZWZhZWQwOGUzNDA3MWUzYnAtMiwKKyAgICAweDEuZDZjMGIxMjU3OTFjZjk4M2Q1M2VmYWE3ZDQ1ZTI5MWVwLTEsCisgICAgLTB4MS45ZGQ4M2M3YzllMTI4cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIDB4MS5jODUzYzc4NDYyZGU2MzViMTBhMmI5M2FmZDc1ZGEyNnAtMiwKKyAgICAweDEuY2E1OWM2ZmEzZDljZGIxNzUzMDkyN2FmZjFiMzNhYmJwLTEsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MmVwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgLTB4MS5jODUzYzc4NDYyZGU2MzViMTBhMmI5M2FmZDc1ZGEyNnAtMiwKKyAgICAweDEuY2E1OWM2ZmEzZDljZGIxNzUzMDkyN2FmZjFiMzNhYmJwLTEsCisgICAgLTB4MS5kOGY3MjA4ZTZiODJlcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS5mYzc2OWI3N2U1ODg0OTVhNmY2NDJjYTI0ZTRlZDNmY3AtMiwKKyAgICAweDEuYmM2YmQ4NjFlMTNkZTMwOTQyOGUwMGY3YmVmNmMzZWNwLTEsCisgICAgMHgxLjBhMGIwMjUwMWM3OTlwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgLTB4MS5mYzc2OWI3N2U1ODg0OTVhNmY2NDJjYTI0ZTRlZDNmY3AtMiwKKyAgICAweDEuYmM2YmQ4NjFlMTNkZTMwOTQyOGUwMGY3YmVmNmMzZWNwLTEsCisgICAgLTB4MS4wYTBiMDI1MDFjNzk5cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS4yOTU0NjNlNzY5MjgxNjQwYWUwMjZmNTBmYzQ1ZTMwMXAtMSwKKyAgICAweDEuYTBkMWY4YTlhNzkxZjlkZmY1Yzk5M2FmNDkwODI2NGRwLTEsCisgICAgMHgxLjNkM2UzNTgzNGZhY2NwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgLTB4MS4yOTU0NjNlNzY5MjgxNjQwYWUwMjZmNTBmYzQ1ZTMwMXAtMSwKKyAgICAweDEuYTBkMWY4YTlhNzkxZjlkZmY1Yzk5M2FmNDkwODI2NGRwLTEsCisgICAgLTB4MS4zZDNlMzU4MzRmYWNjcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS4zYWFjZmY5NWEzMTFmODk5YTBlMjc5NTM1ZTgxYzRlY3AtMSwKKyAgICAweDEuOTNlMjk0ODIzM2ZkMGY2OWUzOTE4OTgyMTQ4ZjgyNjVwLTEsCisgICAgMHgxLjUyZTFmNmFkOWMyN2NwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgLTB4MS4zYWFjZmY5NWEzMTFmODk5YTBlMjc5NTM1ZTgxYzRlY3AtMSwKKyAgICAweDEuOTNlMjk0ODIzM2ZkMGY2OWUzOTE4OTgyMTQ4ZjgyNjVwLTEsCisgICAgLTB4MS41MmUxZjZhZDljMjdjcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS40Yjc1YmEwOTZmYTUxOTI0NDJiNzk1MGY5NjBmODAwNnAtMSwKKyAgICAweDEuODYzYTg1MGU0MzkwMDk5N2U3NmJlODA0MDU0MzczNzdwLTEsCisgICAgMHgxLjY4ODViN2Q3ZThhMmNwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgLTB4MS40Yjc1YmEwOTZmYTUxOTI0NDJiNzk1MGY5NjBmODAwNnAtMSwKKyAgICAweDEuODYzYTg1MGU0MzkwMDk5N2U3NmJlODA0MDU0MzczNzdwLTEsCisgICAgLTB4MS42ODg1YjdkN2U4YTJjcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS41YmE2ZTZhOGU3MDYyNDVmOTdlMjhhZjNkZGI3MDBmNnAtMSwKKyAgICAweDEuNzdlMDA4ZDA3NzVlOWZjMzhlM2Y0OTJmOGU5M2ZmNTFwLTEsCisgICAgMHgxLjdlMjk3OTAyMzUxZGNwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgLTB4MS41YmE2ZTZhOGU3MDYyNDVmOTdlMjhhZjNkZGI3MDBmNnAtMSwKKyAgICAweDEuNzdlMDA4ZDA3NzVlOWZjMzhlM2Y0OTJmOGU5M2ZmNTFwLTEsCisgICAgLTB4MS43ZTI5NzkwMjM1MWRjcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIDB4MS42YjM5MWUyNWJjMjY5ZWExYzFhNDBkZTYyZmJjMDNiNHAtMSwKKyAgICAweDEuNjhkOWFmZTA1MmQyMWU1MDU2MGY5ZmZiNmNjMWI5NDVwLTEsCisgICAgMHgxLjkzY2QzYTJjODE5OGNwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgLTB4MS42YjM5MWUyNWJjMjY5ZWExYzFhNDBkZTYyZmJjMDNiNHAtMSwKKyAgICAweDEuNjhkOWFmZTA1MmQyMWU1MDU2MGY5ZmZiNmNjMWI5NDVwLTEsCisgICAgLTB4MS45M2NkM2EyYzgxOThjcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS43YTI1NDFkZmQ0ZTcyN2I4NmRkMzA5NjY0MTg2ZWM2YnAtMSwKKyAgICAweDEuNTkyZTU4ZWEwYTlmMWI0ZmRkYmFhZjg2OGZlNDc5MTFwLTEsCisgICAgMHgxLmE5NzBmYjU2Y2UxM2NwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgLTB4MS43YTI1NDFkZmQ0ZTcyN2I4NmRkMzA5NjY0MTg2ZWM2YnAtMSwKKyAgICAweDEuNTkyZTU4ZWEwYTlmMWI0ZmRkYmFhZjg2OGZlNDc5MTFwLTEsCisgICAgLTB4MS5hOTcwZmI1NmNlMTNjcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI3NQorICAgIDB4MS44ODY0N2YyNmE2ZTBjZDk1Y2I5OTFmN2ZmZTYxYTAyZXAtMSwKKyAgICAweDEuNDhlNTJlMGE2NWJjZTRkOWQ2MmEzMTI5M2Y3ZDQxYzFwLTEsCisgICAgMHgxLmJmMTRiYzgxMWE4ZWNwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgLTB4MS44ODY0N2YyNmE2ZTBjZDk1Y2I5OTFmN2ZmZTYxYTAyZXAtMSwKKyAgICAweDEuNDhlNTJlMGE2NWJjZTRkOWQ2MmEzMTI5M2Y3ZDQxYzFwLTEsCisgICAgLTB4MS5iZjE0YmM4MTFhOGVjcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIDB4MS45NWYwNTI1N2RiY2IzODRhNWUzMjY4NTczNzZkZDgwMXAtMSwKKyAgICAweDEuMzgwNWExODgyMDBhMjU0MjQ3ZjMwNDYyYzM2YWNmNmFwLTEsCisgICAgMHgxLmQ0Yjg3ZGFiNjcwOWNwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgLTB4MS45NWYwNTI1N2RiY2IzODRhNWUzMjY4NTczNzZkZDgwMXAtMSwKKyAgICAweDEuMzgwNWExODgyMDBhMjU0MjQ3ZjMwNDYyYzM2YWNmNmFwLTEsCisgICAgLTB4MS5kNGI4N2RhYjY3MDljcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS5hMmMyODlkOWQwNTU4NzY0OTIxYTRkZTM1NWY5NDQ4Y3AtMSwKKyAgICAweDEuMjY5NzZhNmM0ZTBmYmFiYjg0NjMyYmQ5OWZlZWM5YzZwLTEsCisgICAgMHgxLmVhNWMzZWQ1YjM4NGNwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgLTB4MS5hMmMyODlkOWQwNTU4NzY0OTIxYTRkZTM1NWY5NDQ4Y3AtMSwKKyAgICAweDEuMjY5NzZhNmM0ZTBmYmFiYjg0NjMyYmQ5OWZlZWM5YzZwLTEsCisgICAgLTB4MS5lYTVjM2VkNWIzODRjcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS5jMWU5ODgzMzczZDdlY2M0OGM5MmRjODg3NTUwNWY3ZXAtMSwKKyAgICAweDEuZThjNDA1ZjM2Zjg1YjdmNWQ2YTM4ZGZkNGE2OTIzNDFwLTIsCisgICAgMHgxLjEyYmQ5MTczYzA3YWJwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAtMHgxLmMxZTk4ODMzNzNkN2VjYzQ4YzkyZGM4ODc1NTA1ZjdlcC0xLAorICAgIDB4MS5lOGM0MDVmMzZmODViN2Y1ZDZhMzhkZmQ0YTY5MjM0MXAtMiwKKyAgICAtMHgxLjEyYmQ5MTczYzA3YWJwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuZDI5NGQxZjk2YzdlZjI2ZTIwM2M1YjMwOWE1NTY3MWZwLTEsCisgICAgMHgxLmE1YTRjY2Y0MGQ5Y2IyNWYxNmFkOTdlNDgwYzRiNDgzcC0yLAorICAgIDB4MS4yNTdiMjJlNzgwZjU2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgLTB4MS5kMjk0ZDFmOTZjN2VmMjZlMjAzYzViMzA5YTU1NjcxZnAtMSwKKyAgICAweDEuYTVhNGNjZjQwZDljYjI1ZjE2YWQ5N2U0ODBjNGI0ODNwLTIsCisgICAgLTB4MS4yNTdiMjJlNzgwZjU2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMHgxLmUwYzA0YTk0ZTE3MzM1ZDA3MzA1MmEwMzk0YjllMWMzcC0xLAorICAgIDB4MS42MDQzNjIxYjEzYmQzZjkwNGIzYjg3NmRmNWIyYzZmNHAtMiwKKyAgICAweDEuMzgzOGI0NWI0MTcwMXAwLAorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIC0weDEuZTBjMDRhOTRlMTczMzVkMDczMDUyYTAzOTRiOWUxYzNwLTEsCisgICAgMHgxLjYwNDM2MjFiMTNiZDNmOTA0YjNiODc2ZGY1YjJjNmY0cC0yLAorICAgIC0weDEuMzgzOGI0NWI0MTcwMXAwLAorICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIDB4MS5lYzU4ODNiN2I2Y2Y3MGE1NzdkZDkxNjBkMGY4ZTlkNXAtMSwKKyAgICAweDEuMThmZWU5NmExYTU3NjJmYzY3NzBmZjE2OGUwNmFiM2VwLTIsCisgICAgMHgxLjRhZjY0NWNmMDFlYWNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAtMHgxLmVjNTg4M2I3YjZjZjcwYTU3N2RkOTE2MGQwZjhlOWQ1cC0xLAorICAgIDB4MS4xOGZlZTk2YTFhNTc2MmZjNjc3MGZmMTY4ZTA2YWIzZXAtMiwKKyAgICAtMHgxLjRhZjY0NWNmMDFlYWNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuZjU0ZDk3MTg4MWFkODI2MjliZDg0ZDIxNDE5NGU4ZGRwLTEsCisgICAgMHgxLmEwNzIzYTk1NDkyY2U5OTg0NTdmYjdhMGQwOWE2Mzg1cC0zLAorICAgIDB4MS41ZGIzZDc0MmMyNjU3cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgLTB4MS5mNTRkOTcxODgxYWQ4MjYyOWJkODRkMjE0MTk0ZThkZHAtMSwKKyAgICAweDEuYTA3MjNhOTU0OTJjZTk5ODQ1N2ZiN2EwZDA5YTYzODVwLTMsCisgICAgLTB4MS41ZGIzZDc0MmMyNjU3cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgMHgxLmZiOTMzYzQwMTA3ZmU4M2ZkMTZjMTc4OWUyN2Y2OWY3cC0xLAorICAgIDB4MS4wY2FiOTExNTY0MGI5ZDlkNDY2NzIzYmJkNWQ1ODliZXAtMywKKyAgICAweDEuNzA3MTY4YjY4MmUwMnAwLAorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIC0weDEuZmI5MzNjNDAxMDdmZTgzZmQxNmMxNzg5ZTI3ZjY5ZjdwLTEsCisgICAgMHgxLjBjYWI5MTE1NjQwYjlkOWQ0NjY3MjNiYmQ1ZDU4OWJlcC0zLAorICAgIC0weDEuNzA3MTY4YjY4MmUwMnAwLAorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDB4MS5mZjIwZDk2MTYyNGU3N2RhZWYzMjliNDAyOWMzNjJkZXAtMSwKKyAgICAweDEuZGRkMWVjMjVlMjAxZjUzODkyNWJmNWJjZjdjN2RmNmVwLTUsCisgICAgMHgxLjgzMmVmYTJhNDM1YWRwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAtMHgxLmZmMjBkOTYxNjI0ZTc3ZGFlZjMyOWI0MDI5YzM2MmRlcC0xLAorICAgIDB4MS5kZGQxZWMyNWUyMDFmNTM4OTI1YmY1YmNmN2M3ZGY2ZXAtNSwKKyAgICAtMHgxLjgzMmVmYTJhNDM1YWRwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEuZmZmMThmMjRmM2U0YjY5NTkyMjk0ZjIwNmQ3YjMyYzJwLTEsCisgICAgLTB4MS5lNjY2OWEyNzBjNTZkM2EwOGQ5MWNjMjcyMWY5MmZlMXAtNywKKyAgICAweDEuOTVlYzhiOWUwM2Q1OHAwLAorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIC0weDEuZmZmMThmMjRmM2U0YjY5NTkyMjk0ZjIwNmQ3YjMyYzJwLTEsCisgICAgLTB4MS5lNjY2OWEyNzBjNTZkM2EwOGQ5MWNjMjcyMWY5MmZlMXAtNywKKyAgICAtMHgxLjk1ZWM4YjllMDNkNThwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuZmUwNDNmNTczNjlkNmE1MmZhMzNmMDExOWVjNGRhMTlwLTEsCisgICAgLTB4MS42ODJmM2NjM2M3YTA4ZGEyY2UwMmE0MWNkYzdiZWQ4NnAtNCwKKyAgICAweDEuYThhYTFkMTFjNDRmZnAwLAorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIC0weDEuZmUwNDNmNTczNjlkNmE1MmZhMzNmMDExOWVjNGRhMTlwLTEsCisgICAgLTB4MS42ODJmM2NjM2M3YTA4ZGEyY2UwMmE0MWNkYzdiZWQ4NnAtNCwKKyAgICAtMHgxLmE4YWExZDExYzQ0ZmZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAweDEuYjNkMzY5NWFjYzQxMzZiMmQ0NDcxNGY5YjM4NDE5YjRwLTEsCisgICAgMHgxLjBjYjM0NjlhMjllYTY2ZDQwMzFiZTc2OTcwMmFhZDVjcC0xLAorICAgIDB4MS4wNGFmZjZkMzMwOTQycDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgLTB4MS5iM2QzNjk1YWNjNDEzNmIyZDQ0NzE0ZjliMzg0MTliNHAtMSwKKyAgICAweDEuMGNiMzQ2OWEyOWVhNjZkNDAzMWJlNzY5NzAyYWFkNWNwLTEsCisgICAgLTB4MS4wNGFmZjZkMzMwOTQycDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgMHgxLmIzZDQxOTcyZGM4MDYzOTk0ZjYzNDEzZDVlNGQ4ZTRicC0xLAorICAgIDB4MS4wY2IyMjhmYTdmODExN2M4MmU2MWNmNTM5MzM0MWM2NHAtMSwKKyAgICAweDEuMDRiMDllOThkY2RiNHAwLAorICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIC0weDEuYjNkNDE5NzJkYzgwNjM5OTRmNjM0MTNkNWU0ZDhlNGJwLTEsCisgICAgMHgxLjBjYjIyOGZhN2Y4MTE3YzgyZTYxY2Y1MzkzMzQxYzY0cC0xLAorICAgIC0weDEuMDRiMDllOThkY2RiNHAwLAorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIDB4MS5iM2Q0Yzk4YTMxOGZiNjZmODIxZDcyODZhZTdkY2U3YnAtMSwKKyAgICAweDEuMGNiMTBiNWE2MWIwNWE3M2U3OGEzZTQ0NDdiYWY1MTRwLTEsCisgICAgMHgxLjA0YjE0NjVlODkyMjZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAtMHgxLmIzZDRjOThhMzE4ZmI2NmY4MjFkNzI4NmFlN2RjZTdicC0xLAorICAgIDB4MS4wY2IxMGI1YTYxYjA1YTczZTc4YTNlNDQ0N2JhZjUxNHAtMSwKKyAgICAtMHgxLjA0YjE0NjVlODkyMjZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAweDEuYjNkNTc5YTBjYjZlZTM5M2ZmNzViNThmZmUxNmQxM2ZwLTEsCisgICAgMHgxLjBjYWZlZGI5ZDA3OGE5ODQwODY5MjhhYTQwZDJlNGE1cC0xLAorICAgIDB4MS4wNGIxZWUyNDM1Njk4cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgLTB4MS5iM2Q1NzlhMGNiNmVlMzkzZmY3NWI1OGZmZTE2ZDEzZnAtMSwKKyAgICAweDEuMGNhZmVkYjlkMDc4YTk4NDA4NjkyOGFhNDBkMmU0YTVwLTEsCisgICAgLTB4MS4wNGIxZWUyNDM1Njk4cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzA3CisgICAgMHgxLmIzZDYyOWI2YWExZDlmNjVhYWQxYTJmYzkzMmM4YmNicC0xLAorICAgIDB4MS4wY2FlZDAxOGNiZGE3ZmE1OWM2MzFjZDU1YjMxYWE4ZHAtMSwKKyAgICAweDEuMDRiMjk1ZTllMWIwYXAwLAorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIC0weDEuYjNkNjI5YjZhYTFkOWY2NWFhZDFhMmZjOTMyYzhiY2JwLTEsCisgICAgMHgxLjBjYWVkMDE4Y2JkYTdmYTU5YzYzMWNkNTViMzFhYThkcC0xLAorICAgIC0weDEuMDRiMjk1ZTllMWIwYXAwLAorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIDB4MS5iM2Q2ZDljYmNkOWI5ZTQzYjdmYzdmZDQyOGE0NGRkOHAtMSwKKyAgICAweDEuMGNhZGIyNzc1M2Q2NTc4NWUwNmQwZTQ2NDAwNjE0OWVwLTEsCisgICAgMHgxLjA0YjMzZGFmOGRmN2NwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAtMHgxLmIzZDZkOWNiY2Q5YjllNDNiN2ZjN2ZkNDI4YTQ0ZGQ4cC0xLAorICAgIDB4MS4wY2FkYjI3NzUzZDY1Nzg1ZTA2ZDBlNDY0MDA2MTQ5ZXAtMSwKKyAgICAtMHgxLjA0YjMzZGFmOGRmN2NwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAweDEuYjNkNzg5ZTAzNWU4OTQ4ZGFiMjc1ZGZlNTQ2YzViMDhwLTEsCisgICAgMHgxLjBjYWM5NGQ1Njg2Y2FiZDI0MzBjMjBmZGYyODU1YjQ3cC0xLAorICAgIDB4MS4wNGIzZTU3NTNhM2VlcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgLTB4MS5iM2Q3ODllMDM1ZTg5NDhkYWIyNzVkZmU1NDZjNWIwOHAtMSwKKyAgICAweDEuMGNhYzk0ZDU2ODZjYWJkMjQzMGMyMGZkZjI4NTViNDdwLTEsCisgICAgLTB4MS4wNGIzZTU3NTNhM2VlcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgMHgxLmIzZDgzOWYzZTMwNDM2YTM1OGU5M2NiZGNiMmJiMzY3cC0xLAorICAgIDB4MS4wY2FiNzczMzA5OWRmNzM4NjQ1NTc0Y2Q0ODJlZjRiMnAtMSwKKyAgICAweDEuMDRiNDhkM2FlNjg2MHAwLAorICB9LAorICB7IC8vIEVudHJ5IDMxNAorICAgIC0weDEuYjNkODM5ZjNlMzA0MzZhMzU4ZTkzY2JkY2IyYmIzNjdwLTEsCisgICAgMHgxLjBjYWI3NzMzMDk5ZGY3Mzg2NDU1NzRjZDQ4MmVmNGIycC0xLAorICAgIC0weDEuMDRiNDhkM2FlNjg2MHAwLAorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIDB4MS5iM2Q4ZWEwNmQ0ZWUwNjg0ZjU3NDFlYzc3N2VkODhlMHAtMSwKKyAgICAweDEuMGNhYTU5OTAzNzZiMDYxZWMxY2YzODkwZjFiOGUxZTNwLTEsCisgICAgMHgxLjA0YjUzNTAwOTJjY2ZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAtMHgxLmIzZDhlYTA2ZDRlZTA2ODRmNTc0MWVjNzc3ZWQ4OGUwcC0xLAorICAgIDB4MS4wY2FhNTk5MDM3NmIwNjFlYzFjZjM4OTBmMWI4ZTFlM3AtMSwKKyAgICAtMHgxLjA0YjUzNTAwOTJjY2ZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwLTEwNzQsCisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMTA3NCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAtMC4wLAorICAgIDB4MS5wMCwKKyAgICAtMC4wLAorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEwNzQsCisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcC0xMDc0LAorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS4xNzczZDU2MWZkNTA2NWQwZTk2MDdhNzI4YTM5ZWVkMnAtMSwKKyAgICAweDEuYWQwMmM3NzFjMzVlZDVmMDEwODlhMDBjNmEyN2UwY2ZwLTEsCisgICAgMHgxLjI3OWE3NDU5MDMzMWJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgLTB4MS4xNzczZDU2MWZkNTA2NWQwZTk2MDdhNzI4YTM5ZWVkMnAtMSwKKyAgICAweDEuYWQwMmM3NzFjMzVlZDVmMDEwODlhMDBjNmEyN2UwY2ZwLTEsCisgICAgLTB4MS4yNzlhNzQ1OTAzMzFicC0xLAorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIDB4MS4xNzczZDU2MWZkNTA3MzM4ZmY5YzA4OGQ4MGM2ODBkYnAtMSwKKyAgICAweDEuYWQwMmM3NzFjMzVlY2QzNDcxZGU5MDIxZTZjM2I5MmJwLTEsCisgICAgMHgxLjI3OWE3NDU5MDMzMWNwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgLTB4MS4xNzczZDU2MWZkNTA3MzM4ZmY5YzA4OGQ4MGM2ODBkYnAtMSwKKyAgICAweDEuYWQwMmM3NzFjMzVlY2QzNDcxZGU5MDIxZTZjM2I5MmJwLTEsCisgICAgLTB4MS4yNzlhNzQ1OTAzMzFjcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS4xNzczZDU2MWZkNTA4MGExMTVkNzk2YTg3NzBkMzVlZnAtMSwKKyAgICAweDEuYWQwMmM3NzFjMzVlYzQ3OGQzMzM4MDM3NjJmNDUwZDVwLTEsCisgICAgMHgxLjI3OWE3NDU5MDMzMWRwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgLTB4MS4xNzczZDU2MWZkNTA4MGExMTVkNzk2YTg3NzBkMzVlZnAtMSwKKyAgICAweDEuYWQwMmM3NzFjMzVlYzQ3OGQzMzM4MDM3NjJmNDUwZDVwLTEsCisgICAgLTB4MS4yNzlhNzQ1OTAzMzFkcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIDB4MS5mOTViOGU3MTA3NDE4YzExYzk0ZDRhNTRhOWRhOWI3YXAtMSwKKyAgICAtMHgxLjQ4ZDFkZGQyYjJiM2Y4YzIxYjk0MjFlNjViMzgwNzM1cC0zLAorICAgIDB4MS5iYjY3YWU4NTg0Y2E5cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzI5CisgICAgLTB4MS5mOTViOGU3MTA3NDE4YzExYzk0ZDRhNTRhOWRhOWI3YXAtMSwKKyAgICAtMHgxLjQ4ZDFkZGQyYjJiM2Y4YzIxYjk0MjFlNjViMzgwNzM1cC0zLAorICAgIC0weDEuYmI2N2FlODU4NGNhOXAwLAorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS5mOTViOGU3MTA3NDE4NmVlODFkNWZmODlkOGZhZTU0NXAtMSwKKyAgICAtMHgxLjQ4ZDFkZGQyYjJiNDc3MThmZjMwNjNiNmJkOTgxMDk5cC0zLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FhcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgLTB4MS5mOTViOGU3MTA3NDE4NmVlODFkNWZmODlkOGZhZTU0NXAtMSwKKyAgICAtMHgxLjQ4ZDFkZGQyYjJiNDc3MThmZjMwNjNiNmJkOTgxMDk5cC0zLAorICAgIC0weDEuYmI2N2FlODU4NGNhYXAwLAorICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIDB4MS5mOTViOGU3MTA3NDE4MWNiM2E1ZWI0YmYwNjIxZDM4MXAtMSwKKyAgICAtMHgxLjQ4ZDFkZGQyYjJiNGY1NmZlMmNjYTU4NzFlYWY0ODIwcC0zLAorICAgIDB4MS5iYjY3YWU4NTg0Y2FicDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgLTB4MS5mOTViOGU3MTA3NDE4MWNiM2E1ZWI0YmYwNjIxZDM4MXAtMSwKKyAgICAtMHgxLjQ4ZDFkZGQyYjJiNGY1NmZlMmNjYTU4NzFlYWY0ODIwcC0zLAorICAgIC0weDEuYmI2N2FlODU4NGNhYnAwLAorICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIDB4MS5iMWQ4MzA1MzIxNjE1YWM5MzhjZmYwMmJlOWYyNTA4NXAtMiwKKyAgICAweDEuY2ZjNmNmYTUyYWQ5Zjk5MTFkYjRjYTBkNDVmZGIwYjNwLTEsCisgICAgMHgxLmJmZmZmZmZmZmZmZmZwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzM1CisgICAgLTB4MS5iMWQ4MzA1MzIxNjE1YWM5MzhjZmYwMmJlOWYyNTA4NXAtMiwKKyAgICAweDEuY2ZjNmNmYTUyYWQ5Zjk5MTFkYjRjYTBkNDVmZGIwYjNwLTEsCisgICAgLTB4MS5iZmZmZmZmZmZmZmZmcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDB4MS5iMWQ4MzA1MzIxNjE2OTQ3NmY0ZDE5ODJiOWIxNGFiMXAtMiwKKyAgICAweDEuY2ZjNmNmYTUyYWQ5ZjYyZDZkNTQyM2NhODMzOWEwMGFwLTEsCisgICAgMHgxLmNwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgLTB4MS5iMWQ4MzA1MzIxNjE2OTQ3NmY0ZDE5ODJiOWIxNGFiMXAtMiwKKyAgICAweDEuY2ZjNmNmYTUyYWQ5ZjYyZDZkNTQyM2NhODMzOWEwMGFwLTEsCisgICAgLTB4MS5jcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDMzOAorICAgIDB4MS5iMWQ4MzA1MzIxNjE3N2M1YTVjYTQyZDk4OTU1Mjc1YXAtMiwKKyAgICAweDEuY2ZjNmNmYTUyYWQ5ZjJjOWJjZjM3ZDg3YzA1ODkyZjVwLTEsCisgICAgMHgxLmMwMDAwMDAwMDAwMDFwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgLTB4MS5iMWQ4MzA1MzIxNjE3N2M1YTVjYTQyZDk4OTU1Mjc1YXAtMiwKKyAgICAweDEuY2ZjNmNmYTUyYWQ5ZjJjOWJjZjM3ZDg3YzA1ODkyZjVwLTEsCisgICAgLTB4MS5jMDAwMDAwMDAwMDAxcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIDB4MS40NGViMzgxY2YzODY5ZWE3MWNjYjM2ODYzZTRlYTY1YnAtMSwKKyAgICAweDEuOGJiMTA1YTVkYzkwMTA0MDUxZDA4Y2I5NjU2MzE4MDdwLTEsCisgICAgMHgxLjVmZmZmZmZmZmZmZmZwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzQxCisgICAgLTB4MS40NGViMzgxY2YzODY5ZWE3MWNjYjM2ODYzZTRlYTY1YnAtMSwKKyAgICAweDEuOGJiMTA1YTVkYzkwMTA0MDUxZDA4Y2I5NjU2MzE4MDdwLTEsCisgICAgLTB4MS41ZmZmZmZmZmZmZmZmcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS40NGViMzgxY2YzODZhYjA0YTRmODY1NmFiZWE4MGI4M3AtMSwKKyAgICAweDEuOGJiMTA1YTVkYzkwMDYxOGY4MGZhNTFkMzAzYzY5cC0xLAorICAgIDB4MS42cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM0MworICAgIC0weDEuNDRlYjM4MWNmMzg2YWIwNGE0Zjg2NTZhYmVhODBiODNwLTEsCisgICAgMHgxLjhiYjEwNWE1ZGM5MDA2MThmODBmYTUxZDMwM2M2OXAtMSwKKyAgICAtMHgxLjZwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgMHgxLjQ0ZWIzODFjZjM4NmI3NjIyZDI1OTQ0ZjNlYjAzNWRjcC0xLAorICAgIDB4MS44YmIxMDVhNWRjOGZmYmYxOWU0ZWJkODBmYWIyY2RiOHAtMSwKKyAgICAweDEuNjAwMDAwMDAwMDAwMXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAtMHgxLjQ0ZWIzODFjZjM4NmI3NjIyZDI1OTQ0ZjNlYjAzNWRjcC0xLAorICAgIDB4MS44YmIxMDVhNWRjOGZmYmYxOWU0ZWJkODBmYWIyY2RiOHAtMSwKKyAgICAtMHgxLjYwMDAwMDAwMDAwMDFwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMHgxLmRhZDkwMmZhOGFjODY0ZmQ4YWZhMGJkYzYwOWRlZDE5cC0xLAorICAgIDB4MS43ZWY0ODQyZjBiY2QxMTY4NmFhZjZmMjFjOWFhODM1NHAtMiwKKyAgICAweDEuMmZmZmZmZmZmZmZmZnAwLAorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIC0weDEuZGFkOTAyZmE4YWM4NjRmZDhhZmEwYmRjNjA5ZGVkMTlwLTEsCisgICAgMHgxLjdlZjQ4NDJmMGJjZDExNjg2YWFmNmYyMWM5YWE4MzU0cC0yLAorICAgIC0weDEuMmZmZmZmZmZmZmZmZnAwLAorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDB4MS5kYWQ5MDJmYThhYzg3MGY1MmYxYjg0M2FjODNiYzNlZHAtMSwKKyAgICAweDEuN2VmNDg0MmYwYmNjZDYwZDRhNTAxZGM4YmM0YjU3YjNwLTIsCisgICAgMHgxLjNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAtMHgxLmRhZDkwMmZhOGFjODcwZjUyZjFiODQzYWM4M2JjM2VkcC0xLAorICAgIDB4MS43ZWY0ODQyZjBiY2NkNjBkNGE1MDFkYzhiYzRiNTdiM3AtMiwKKyAgICAtMHgxLjNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAweDEuZGFkOTAyZmE4YWM4N2NlY2QzM2NmYzk5MmRmZWMxYmVwLTEsCisgICAgMHgxLjdlZjQ4NDJmMGJjYzlhYjIyOWYwY2M2ZmFkNmQzNzhkcC0yLAorICAgIDB4MS4zMDAwMDAwMDAwMDAxcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgLTB4MS5kYWQ5MDJmYThhYzg3Y2VjZDMzY2ZjOTkyZGZlYzFiZXAtMSwKKyAgICAweDEuN2VmNDg0MmYwYmNjOWFiMjI5ZjBjYzZmYWQ2ZDM3OGRwLTIsCisgICAgLTB4MS4zMDAwMDAwMDAwMDAxcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLjRiNzA3YTdhY2RlY2Y5MGExODhkMDIzMGZhZDNhZDU4cC0xLAorICAgIC0weDEuODYzZWZhMzYxZGMyMjk0ZTkyOWI5NTE1ZmIzNGY5YmFwLTEsCisgICAgMHgxLjM3ZmZmZmZmZmZmZmZwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAtMHgxLjRiNzA3YTdhY2RlY2Y5MGExODhkMDIzMGZhZDNhZDU4cC0xLAorICAgIC0weDEuODYzZWZhMzYxZGMyMjk0ZTkyOWI5NTE1ZmIzNGY5YmFwLTEsCisgICAgLTB4MS4zN2ZmZmZmZmZmZmZmcDEsCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgMHgxLjRiNzA3YTdhY2RlY2M4NDIzOTQ2M2U3OGIzMTJmYTEwcC0xLAorICAgIC0weDEuODYzZWZhMzYxZGMyNTJiY2ExZWFlZWQzOTc0OWJlZDdwLTEsCisgICAgMHgxLjM4MHAxLAorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIC0weDEuNGI3MDdhN2FjZGVjYzg0MjM5NDYzZTc4YjMxMmZhMTBwLTEsCisgICAgLTB4MS44NjNlZmEzNjFkYzI1MmJjYTFlYWVlZDM5NzQ5YmVkN3AtMSwKKyAgICAtMHgxLjM4MHAxLAorICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIDB4MS40YjcwN2E3YWNkZWM5NzdhNTlmZjdhYzA2NjI0ODRkZHAtMSwKKyAgICAtMHgxLjg2M2VmYTM2MWRjMjdjMmFiMTNhNDg5MTJkNDU4ODBicC0xLAorICAgIDB4MS4zODAwMDAwMDAwMDAxcDEsCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgLTB4MS40YjcwN2E3YWNkZWM5NzdhNTlmZjdhYzA2NjI0ODRkZHAtMSwKKyAgICAtMHgxLjg2M2VmYTM2MWRjMjdjMmFiMTNhNDg5MTJkNDU4ODBicC0xLAorICAgIC0weDEuMzgwMDAwMDAwMDAwMXAxLAorICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIDB4MS4wNjZlN2ViNzZmNWM2Njc4ZmQ4MzI1YTgxZjE5MjVjNnAtNCwKKyAgICAweDEuZmVmMmIyZDIxY2Y2YzEwNmU4NmZmOTM5NWY4MjA0YTBwLTEsCisgICAgMHgxLjA2OWM4YjQ2YjM3OTJwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgMzU5CisgICAgLTB4MS4wNjZlN2ViNzZmNWM2Njc4ZmQ4MzI1YTgxZjE5MjVjNnAtNCwKKyAgICAweDEuZmVmMmIyZDIxY2Y2YzEwNmU4NmZmOTM5NWY4MjA0YTBwLTEsCisgICAgLTB4MS4wNjljOGI0NmIzNzkycC00LAorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS4wNWU0NzYxYWI4ZDhmMGE3ZGJhODM0MDAwZjIzNjY1MHAtMywKKyAgICAweDEuZmJjYmU2OTNiZDhlYzg1NzIzYjZjYjU1ZTRmNWU3OGZwLTEsCisgICAgMHgxLjA2OWM4YjQ2YjM3OTJwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgMzYxCisgICAgLTB4MS4wNWU0NzYxYWI4ZDhmMGE3ZGJhODM0MDAwZjIzNjY1MHAtMywKKyAgICAweDEuZmJjYmU2OTNiZDhlYzg1NzIzYjZjYjU1ZTRmNWU3OGZwLTEsCisgICAgLTB4MS4wNjljOGI0NmIzNzkycC0zLAorICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIDB4MS44NzdlMmNkNGY2ZmQ5YmE0OThlMzI3MDUzMDMyNzM0ZnAtMywKKyAgICAweDEuZjY4ZWViZmNiYjVlODQxOTAwZTI1NDJmN2MyNGJhYjBwLTEsCisgICAgMHgxLjg5ZWFkMGVhMGQzNWJwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgLTB4MS44NzdlMmNkNGY2ZmQ5YmE0OThlMzI3MDUzMDMyNzM0ZnAtMywKKyAgICAweDEuZjY4ZWViZmNiYjVlODQxOTAwZTI1NDJmN2MyNGJhYjBwLTEsCisgICAgLTB4MS44OWVhZDBlYTBkMzVicC0zLAorICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIDB4MS4wM2JlMDZmOTdjYmVlNDc2OTg1MzlmOTc3Y2FkYmU3ZXAtMiwKKyAgICAweDEuZWY0MTQ1YjRhZWNmZmJkYWFmZmI3OGZmYjQ5YWM5YmRwLTEsCisgICAgMHgxLjA2OWM4YjQ2YjM3OTJwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgLTB4MS4wM2JlMDZmOTdjYmVlNDc2OTg1MzlmOTc3Y2FkYmU3ZXAtMiwKKyAgICAweDEuZWY0MTQ1YjRhZWNmZmJkYWFmZmI3OGZmYjQ5YWM5YmRwLTEsCisgICAgLTB4MS4wNjljOGI0NmIzNzkycC0yLAorICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIDB4MS40MmFiYmE4YzcyZmJiOGNhOTZmNzlhYTRiYjAzNTg0ZXAtMiwKKyAgICAweDEuZTVlYWEyODZmYmJjNjcwZGJmNjM5MmQ3Yzk4YWIwYTBwLTEsCisgICAgMHgxLjQ4NDNhZTE4NjA1NzZwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgLTB4MS40MmFiYmE4YzcyZmJiOGNhOTZmNzlhYTRiYjAzNTg0ZXAtMiwKKyAgICAweDEuZTVlYWEyODZmYmJjNjcwZGJmNjM5MmQ3Yzk4YWIwYTBwLTEsCisgICAgLTB4MS40ODQzYWUxODYwNTc2cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS44MDQ1ZmU2NGU2MmRjM2Q2ODZkOTc2ZDdkNWE3YzY4OXAtMiwKKyAgICAweDEuZGE5NGQ1NGRkNGMwODc2ZTE4ZWU5N2M3MGQxYTRhOTRwLTEsCisgICAgMHgxLjg5ZWFkMGVhMGQzNWFwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgLTB4MS44MDQ1ZmU2NGU2MmRjM2Q2ODZkOTc2ZDdkNWE3YzY4OXAtMiwKKyAgICAweDEuZGE5NGQ1NGRkNGMwODc2ZTE4ZWU5N2M3MGQxYTRhOTRwLTEsCisgICAgLTB4MS44OWVhZDBlYTBkMzVhcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIDB4MS5iYzRjMDRkNzFhYmJlZWE1YWIwNjRlY2ZiZjU0YzYxM3AtMiwKKyAgICAweDEuY2Q0YmNhOWNiNWM3MTUzMDIwMDFlNDQ2Y2M5M2E3YmNwLTEsCisgICAgMHgxLmNiOTFmM2JiYmExM2VwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgLTB4MS5iYzRjMDRkNzFhYmJlZWE1YWIwNjRlY2ZiZjU0YzYxM3AtMiwKKyAgICAweDEuY2Q0YmNhOWNiNWM3MTUzMDIwMDFlNDQ2Y2M5M2E3YmNwLTEsCisgICAgLTB4MS5jYjkxZjNiYmJhMTNlcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIDB4MS5mNjdlYTk3NWI4NmEwMTUxMGU2YmRlMzc3ODEzODkzNHAtMiwKKyAgICAweDEuYmUxZDdjMzUzNGM0MDMzMWZkZGYyNDNkOGEwYTU2YjBwLTEsCisgICAgMHgxLjA2OWM4YjQ2YjM3OTFwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgLTB4MS5mNjdlYTk3NWI4NmEwMTUxMGU2YmRlMzc3ODEzODkzNHAtMiwKKyAgICAweDEuYmUxZDdjMzUzNGM0MDMzMWZkZGYyNDNkOGEwYTU2YjBwLTEsCisgICAgLTB4MS4wNjljOGI0NmIzNzkxcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS4xNzUwNTliZjBkNDI1MjRlY2IwYmY0MjQzYjU1OTczZHAtMSwKKyAgICAweDEuYWQxOWUyNTM1YWE5Njc4YmQ1ZmRhZmM2ODgxNzcwMGJwLTEsCisgICAgMHgxLjI3NzAxY2FmODllODNwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgLTB4MS4xNzUwNTliZjBkNDI1MjRlY2IwYmY0MjQzYjU1OTczZHAtMSwKKyAgICAweDEuYWQxOWUyNTM1YWE5Njc4YmQ1ZmRhZmM2ODgxNzcwMGJwLTEsCisgICAgLTB4MS4yNzcwMWNhZjg5ZTgzcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIDB4MS4zMjNiOGIxZmI0YmEyMWRkMTJjY2U4MjBlMTU2YTRmY3AtMSwKKyAgICAweDEuOWE1MmUyZTBmYmNiM2EzZjRiZGU2ZjZlYzI3NzY3YTlwLTEsCisgICAgMHgxLjQ4NDNhZTE4NjA1NzVwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgLTB4MS4zMjNiOGIxZmI0YmEyMWRkMTJjY2U4MjBlMTU2YTRmY3AtMSwKKyAgICAweDEuOWE1MmUyZTBmYmNiM2EzZjRiZGU2ZjZlYzI3NzY3YTlwLTEsCisgICAgLTB4MS40ODQzYWUxODYwNTc1cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS40YmU0OTc5YzVlZmIzMDZjMWE3NzAyNDAzMjg0OWI1MnAtMSwKKyAgICAweDEuODVkYzNlYTFiYmNlOWE4MDg1ZjY2NTkzYTg3YjdlMmVwLTEsCisgICAgMHgxLjY5MTczZjgxMzZjNjdwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzc5CisgICAgLTB4MS40YmU0OTc5YzVlZmIzMDZjMWE3NzAyNDAzMjg0OWI1MnAtMSwKKyAgICAweDEuODVkYzNlYTFiYmNlOWE4MDg1ZjY2NTkzYTg3YjdlMmVwLTEsCisgICAgLTB4MS42OTE3M2Y4MTM2YzY3cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM4MAorICAgIDB4MS42NDMwODBkNjdhY2MxMzMyYzY0YTg1NjEyY2FjYWZiOXAtMSwKKyAgICAweDEuNmZjYjdjNmI4YjkxOWFmM2RkYTUzMDk0YzlhMjdhYWJwLTEsCisgICAgMHgxLjg5ZWFkMGVhMGQzNTlwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgLTB4MS42NDMwODBkNjdhY2MxMzMyYzY0YTg1NjEyY2FjYWZiOXAtMSwKKyAgICAweDEuNmZjYjdjNmI4YjkxOWFmM2RkYTUzMDk0YzlhMjdhYWJwLTEsCisgICAgLTB4MS44OWVhZDBlYTBkMzU5cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIDB4MS43YjA1YjdiNmM2MTJlNWIwOGQ1ZWZlNDlhNDZlMjFhMXAtMSwKKyAgICAweDEuNTgzN2QyODE3Y2YzMDNlZjZkYWU2OWZhZWIwZjAxNWVwLTEsCisgICAgMHgxLmFhYmU2MjUyZTNhNGJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgLTB4MS43YjA1YjdiNmM2MTJlNWIwOGQ1ZWZlNDlhNDZlMjFhMXAtMSwKKyAgICAweDEuNTgzN2QyODE3Y2YzMDNlZjZkYWU2OWZhZWIwZjAxNWVwLTEsCisgICAgLTB4MS5hYWJlNjI1MmUzYTRicC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM4NAorICAgIDB4MS45MDRjMzc1MDVkZTQ4ZmE4ZTc2Mjg3OTYwZmQ0NDU5NHAtMSwKKyAgICAweDEuM2YzYTBlMjhiZWRkNDA0NDU4NThmODIzZTE1MDI2NGJwLTEsCisgICAgMHgxLmNiOTFmM2JiYmExM2RwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzg1CisgICAgLTB4MS45MDRjMzc1MDVkZTQ4ZmE4ZTc2Mjg3OTYwZmQ0NDU5NHAtMSwKKyAgICAweDEuM2YzYTBlMjhiZWRkNDA0NDU4NThmODIzZTE1MDI2NGJwLTEsCisgICAgLTB4MS5jYjkxZjNiYmJhMTNkcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM4NgorICAgIDB4MS5hM2VkOWUyNTI5MzhhMTRjNzljNTc1NjM5YzE1YTkxZHAtMSwKKyAgICAweDEuMjRlYzc5OTE3MTY0MmRiZDI0ZDI1OTAwNTgyMmJkMjVwLTEsCisgICAgMHgxLmVjNjU4NTI0OTA4MmZwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgLTB4MS5hM2VkOWUyNTI5MzhhMTRjNzljNTc1NjM5YzE1YTkxZHAtMSwKKyAgICAweDEuMjRlYzc5OTE3MTY0MmRiZDI0ZDI1OTAwNTgyMmJkMjVwLTEsCisgICAgLTB4MS5lYzY1ODUyNDkwODJmcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIDB4MS5iNWQ1NDViMTA5YmY5MzU1OTQwMzY3OThjZjQwYzliMHAtMSwKKyAgICAweDEuMDk2YWMwMmVjNDJjODViN2IxMGFmZWQ5MjAyNzg1YjlwLTEsCisgICAgMHgxLjA2OWM4YjQ2YjM3OTFwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAtMHgxLmI1ZDU0NWIxMDliZjkzNTU5NDAzNjc5OGNmNDBjOWIwcC0xLAorICAgIDB4MS4wOTZhYzAyZWM0MmM4NWI3YjEwYWZlZDkyMDI3ODViOXAtMSwKKyAgICAtMHgxLjA2OWM4YjQ2YjM3OTFwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTAKKyAgICAweDEuYzVmMDU4MjMwZTdmZDE0ZDNlNWUzMTUzNDlmNjk5ZWZwLTEsCisgICAgMHgxLmQ5YTNhMzM2ZWRiNzYxM2RmMDYyZTg2YTMyZDA5ZmUxcC0yLAorICAgIDB4MS4xNzA2NTNmYjFlYjBhcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzkxCisgICAgLTB4MS5jNWYwNTgyMzBlN2ZkMTRkM2U1ZTMxNTM0OWY2OTllZnAtMSwKKyAgICAweDEuZDlhM2EzMzZlZGI3NjEzZGYwNjJlODZhMzJkMDlmZTFwLTIsCisgICAgLTB4MS4xNzA2NTNmYjFlYjBhcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgMHgxLmQ0MmRlNDJkY2UxMzQ2YTAzZDFmNmFiZjBlYmE5MDIycC0xLAorICAgIDB4MS45ZTdmODY1MmI0NzU4MmFmZDI5NzQ0MjkzMTcwYzA3Y3AtMiwKKyAgICAweDEuMjc3MDFjYWY4OWU4M3AwLAorICB9LAorICB7IC8vIEVudHJ5IDM5MworICAgIC0weDEuZDQyZGU0MmRjZTEzNDZhMDNkMWY2YWJmMGViYTkwMjJwLTEsCisgICAgMHgxLjllN2Y4NjUyYjQ3NTgyYWZkMjk3NDQyOTMxNzBjMDdjcC0yLAorICAgIC0weDEuMjc3MDFjYWY4OWU4M3AwLAorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIDB4MS5lMDdlZWVkYTEwOWNiNTA0YWZjY2E4NjBkNGI1ZGQzMnAtMSwKKyAgICAweDEuNjFhNzYwNzdhZWUwN2JiMzQ5Y2E3NmNmNzAwOTEzZDFwLTIsCisgICAgMHgxLjM3ZDllNTYzZjUxZmNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAtMHgxLmUwN2VlZWRhMTA5Y2I1MDRhZmNjYTg2MGQ0YjVkZDMycC0xLAorICAgIDB4MS42MWE3NjA3N2FlZTA3YmIzNDljYTc2Y2Y3MDA5MTNkMXAtMiwKKyAgICAtMHgxLjM3ZDllNTYzZjUxZmNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAweDEuZWFkNjgzNDkwOWI5MzM3MWZhZjNiZWFkZGJkNjBlZGRwLTEsCisgICAgMHgxLjIzNWIzMzFkOGY3NDhlMjBmYjZkZGI2YTcwOGRiYTEwcC0yLAorICAgIDB4MS40ODQzYWUxODYwNTc1cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzk3CisgICAgLTB4MS5lYWQ2ODM0OTA5YjkzMzcxZmFmM2JlYWRkYmQ2MGVkZHAtMSwKKyAgICAweDEuMjM1YjMzMWQ4Zjc0OGUyMGZiNmRkYjZhNzA4ZGJhMTBwLTIsCisgICAgLTB4MS40ODQzYWUxODYwNTc1cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgMHgxLmYzMjljMDU1OGU5NjdlNGNhYjU4ZDBmYTU3MmQ2MmQycC0xLAorICAgIDB4MS5jN2I5MGUzMDI0NTkzZGE4NDQ5OTYzY2ZlMDhkZGU4NXAtMywKKyAgICAweDEuNThhZDc2Y2NjYjhlZXAwLAorICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIC0weDEuZjMyOWMwNTU4ZTk2N2U0Y2FiNThkMGZhNTcyZDYyZDJwLTEsCisgICAgMHgxLmM3YjkwZTMwMjQ1OTNkYTg0NDk5NjNjZmUwOGRkZTg1cC0zLAorICAgIC0weDEuNThhZDc2Y2NjYjhlZXAwLAorICB9LAorICB7IC8vIEVudHJ5IDQwMAorICAgIDB4MS5mOTZmZTQwNWYxYWM1ZGM5Y2YzNDM1MDgwNjdiZmNhZXAtMSwKKyAgICAweDEuNDZkYzRmNGNlODNkYTcyN2VhMDQ4Y2M3ZDJmMjc2ZDFwLTMsCisgICAgMHgxLjY5MTczZjgxMzZjNjdwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAtMHgxLmY5NmZlNDA1ZjFhYzVkYzljZjM0MzUwODA2N2JmY2FlcC0xLAorICAgIDB4MS40NmRjNGY0Y2U4M2RhNzI3ZWEwNDhjYzdkMmYyNzZkMXAtMywKKyAgICAtMHgxLjY5MTczZjgxMzZjNjdwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDIKKyAgICAweDEuZmRhMjU0YzI3YTAxZjQ3ODZjMTQ5ZDZhNzc3OWNjM2FwLTEsCisgICAgMHgxLjg5NGY3MGJlZmJiOTlhYjdkZjlkMTc5MGEyOGY0OGFkcC00LAorICAgIDB4MS43OTgxMDgzNWExZmUwcDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDAzCisgICAgLTB4MS5mZGEyNTRjMjdhMDFmNDc4NmMxNDlkNmE3Nzc5Y2MzYXAtMSwKKyAgICAweDEuODk0ZjcwYmVmYmI5OWFiN2RmOWQxNzkwYTI4ZjQ4YWRwLTQsCisgICAgLTB4MS43OTgxMDgzNWExZmUwcDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDA0CisgICAgMHgxLmZmYmNhODQ2YzRmYzk5N2YxYTM4MTQyMDIwODg4NGUwcC0xLAorICAgIDB4MS4wNjkxMDdhZTkzMzJmOTVmYTJjNWNlZWFkZmIyOWY3N3AtNSwKKyAgICAweDEuODllYWQwZWEwZDM1OXAwLAorICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIC0weDEuZmZiY2E4NDZjNGZjOTk3ZjFhMzgxNDIwMjA4ODg0ZTBwLTEsCisgICAgMHgxLjA2OTEwN2FlOTMzMmY5NWZhMmM1Y2VlYWRmYjI5Zjc3cC01LAorICAgIC0weDEuODllYWQwZWEwZDM1OXAwLAorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIDB4MS5mZmJjYTg0NmM0ZmM5ZjMwYmZiNDU4ZWYyMDkxYzhlZXAtMSwKKyAgICAtMHgxLjA2OTEwN2FlOTMyN2UwNzMxYTc0OGMyMWYwM2I1ZWZjcC01LAorICAgIDB4MS45YTU0OTk5ZTc4NmQycDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDA3CisgICAgLTB4MS5mZmJjYTg0NmM0ZmM5ZjMwYmZiNDU4ZWYyMDkxYzhlZXAtMSwKKyAgICAtMHgxLjA2OTEwN2FlOTMyN2UwNzMxYTc0OGMyMWYwM2I1ZWZjcC01LAorICAgIC0weDEuOWE1NDk5OWU3ODZkMnAwLAorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIDB4MS5mZGEyNTRjMjdhMDIwNTg3NWYyNzE0MzVmODI3MTYwY3AtMSwKKyAgICAtMHgxLjg5NGY3MGJlZmJiNDE0MTdkZmY4NDNlODFmYWMzODhicC00LAorICAgIDB4MS5hYWJlNjI1MmUzYTRicDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDA5CisgICAgLTB4MS5mZGEyNTRjMjdhMDIwNTg3NWYyNzE0MzVmODI3MTYwY3AtMSwKKyAgICAtMHgxLjg5NGY3MGJlZmJiNDE0MTdkZmY4NDNlODFmYWMzODhicC00LAorICAgIC0weDEuYWFiZTYyNTJlM2E0YnAwLAorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIDB4MS5mOTZmZTQwNWYxYWM3YTI0MWUwMmU1OGIwY2JmM2FlN3AtMSwKKyAgICAtMHgxLjQ2ZGM0ZjRjZTgzYWU5YWIxY2MxYjIzNjdjYjc1M2VicC0zLAorICAgIDB4MS5iYjI4MmIwNzRlZGM0cDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDExCisgICAgLTB4MS5mOTZmZTQwNWYxYWM3YTI0MWUwMmU1OGIwY2JmM2FlN3AtMSwKKyAgICAtMHgxLjQ2ZGM0ZjRjZTgzYWU5YWIxY2MxYjIzNjdjYjc1M2VicC0zLAorICAgIC0weDEuYmIyODJiMDc0ZWRjNHAwLAorICB9LAorICB7IC8vIEVudHJ5IDQxMgorICAgIDB4MS5mMzI5YzA1NThlOTZhNWQ0ODI3MmFkNGM0OWVjNTNiOHAtMSwKKyAgICAtMHgxLmM3YjkwZTMwMjQ1Njg4ZTA5OTg2MGU4ZDRmZmY2MDFjcC0zLAorICAgIDB4MS5jYjkxZjNiYmJhMTNkcDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDEzCisgICAgLTB4MS5mMzI5YzA1NThlOTZhNWQ0ODI3MmFkNGM0OWVjNTNiOHAtMSwKKyAgICAtMHgxLmM3YjkwZTMwMjQ1Njg4ZTA5OTg2MGU4ZDRmZmY2MDFjcC0zLAorICAgIC0weDEuY2I5MWYzYmJiYTEzZHAwLAorICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIDB4MS5lYWQ2ODM0OTA5Yjk2NWZkYzRiMGNlZmZjMGYyODVjNnAtMSwKKyAgICAtMHgxLjIzNWIzMzFkOGY3MzM5ODQxYTUxNzMxMmQwZDM0N2ZicC0yLAorICAgIDB4MS5kYmZiYmM3MDI1NGI2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDE1CisgICAgLTB4MS5lYWQ2ODM0OTA5Yjk2NWZkYzRiMGNlZmZjMGYyODVjNnAtMSwKKyAgICAtMHgxLjIzNWIzMzFkOGY3MzM5ODQxYTUxNzMxMmQwZDM0N2ZicC0yLAorICAgIC0weDEuZGJmYmJjNzAyNTRiNnAwLAorICB9LAorICB7IC8vIEVudHJ5IDQxNgorICAgIDB4MS5lMDdlZWVkYTEwOWNmMjVmNDAwY2Q1ZjQ2YWNlYzg4N3AtMSwKKyAgICAtMHgxLjYxYTc2MDc3YWVkZjJlNDNhY2E0MThmN2EyZTEzMjRkcC0yLAorICAgIDB4MS5lYzY1ODUyNDkwODJmcDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDE3CisgICAgLTB4MS5lMDdlZWVkYTEwOWNmMjVmNDAwY2Q1ZjQ2YWNlYzg4N3AtMSwKKyAgICAtMHgxLjYxYTc2MDc3YWVkZjJlNDNhY2E0MThmN2EyZTEzMjRkcC0yLAorICAgIC0weDEuZWM2NTg1MjQ5MDgyZnAwLAorICB9LAorICB7IC8vIEVudHJ5IDQxOAorICAgIDB4MS5kNDJkZTQyZGNlMTM4ZTg5MDkzOWU1NmM0MzlkZWQ5MHAtMSwKKyAgICAtMHgxLjllN2Y4NjUyYjQ3NDNkY2MzYzM1NjhiYWZmOGJmOWVicC0yLAorICAgIDB4MS5mY2NmNGRkOGZiYmE4cDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDE5CisgICAgLTB4MS5kNDJkZTQyZGNlMTM4ZTg5MDkzOWU1NmM0MzlkZWQ5MHAtMSwKKyAgICAtMHgxLjllN2Y4NjUyYjQ3NDNkY2MzYzM1NjhiYWZmOGJmOWVicC0yLAorICAgIC0weDEuZmNjZjRkZDhmYmJhOHAwLAorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIDB4MS5jNWYwNTgyMzBlODAxNGFiODNlY2UwYzNhNjM4YzA3OXAtMSwKKyAgICAtMHgxLmQ5YTNhMzM2ZWRiNjVlZmEzMGUxYTY2NzlhYTA2NGMycC0yLAorICAgIDB4MS4wNjljOGI0NmIzNzkxcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgLTB4MS5jNWYwNTgyMzBlODAxNGFiODNlY2UwYzNhNjM4YzA3OXAtMSwKKyAgICAtMHgxLmQ5YTNhMzM2ZWRiNjVlZmEzMGUxYTY2NzlhYTA2NGMycC0yLAorICAgIC0weDEuMDY5YzhiNDZiMzc5MXAxLAorICB9LAorICB7IC8vIEVudHJ5IDQyMgorICAgIDB4MS5iNWQ1NDViMTA5YmZjZTNmYzRkNzcwMDFhZmUyZjJiNnAtMSwKKyAgICAtMHgxLjA5NmFjMDJlYzQyYzI0ODgwYTU5NTE3ODhjYjM4M2M4cC0xLAorICAgIDB4MS4wZWQxNmZhMGU5MTRlcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDIzCisgICAgLTB4MS5iNWQ1NDViMTA5YmZjZTNmYzRkNzcwMDFhZmUyZjJiNnAtMSwKKyAgICAtMHgxLjA5NmFjMDJlYzQyYzI0ODgwYTU5NTE3ODhjYjM4M2M4cC0xLAorICAgIC0weDEuMGVkMTZmYTBlOTE0ZXAxLAorICB9LAorICB7IC8vIEVudHJ5IDQyNAorICAgIDB4MS5hM2VkOWUyNTI5MzhkOTJhNTU1M2IzYzA5ZDJiZGRkM3AtMSwKKyAgICAtMHgxLjI0ZWM3OTkxNzE2M2RkYTY1YWZkODEwOWY1OWNiNDY1cC0xLAorICAgIDB4MS4xNzA2NTNmYjFlYjBicDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgLTB4MS5hM2VkOWUyNTI5MzhkOTJhNTU1M2IzYzA5ZDJiZGRkM3AtMSwKKyAgICAtMHgxLjI0ZWM3OTkxNzE2M2RkYTY1YWZkODEwOWY1OWNiNDY1cC0xLAorICAgIC0weDEuMTcwNjUzZmIxZWIwYnAxLAorICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIDB4MS45MDRjMzc1MDVkZTRiODk3NWRkMjczMGUxOTZkZGZjM3AtMSwKKyAgICAtMHgxLjNmM2EwZTI4YmVkZDBjZjBjNGJmYmQ4YzgyYTNiYWFmcC0xLAorICAgIDB4MS4xZjNiMzg1NTU0NGM4cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDI3CisgICAgLTB4MS45MDRjMzc1MDVkZTRiODk3NWRkMjczMGUxOTZkZGZjM3AtMSwKKyAgICAtMHgxLjNmM2EwZTI4YmVkZDBjZjBjNGJmYmQ4YzgyYTNiYWFmcC0xLAorICAgIC0weDEuMWYzYjM4NTU1NDRjOHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIDB4MS43YjA1YjdiNmM2MTJmYzRmZGEzODEyYjFmMTM0ODM4OXAtMSwKKyAgICAtMHgxLjU4MzdkMjgxN2NmMmViMDY5MDM1NTUyZGMzYWU4MzRjcC0xLAorICAgIDB4MS4yNzcwMWNhZjg5ZTg1cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDI5CisgICAgLTB4MS43YjA1YjdiNmM2MTJmYzRmZGEzODEyYjFmMTM0ODM4OXAtMSwKKyAgICAtMHgxLjU4MzdkMjgxN2NmMmViMDY5MDM1NTUyZGMzYWU4MzRjcC0xLAorICAgIC0weDEuMjc3MDFjYWY4OWU4NXAxLAorICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIDB4MS42NDMwODBkNjdhY2MxNDYyMDY3MmRkYTYyNDFlYTMwNXAtMSwKKyAgICAtMHgxLjZmY2I3YzZiOGI5MTk5Y2UyZjE3ZGQzZWU4NmIzYjlhcC0xLAorICAgIDB4MS4yZmE1MDEwOWJmODQycDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDMxCisgICAgLTB4MS42NDMwODBkNjdhY2MxNDYyMDY3MmRkYTYyNDFlYTMwNXAtMSwKKyAgICAtMHgxLjZmY2I3YzZiOGI5MTk5Y2UyZjE3ZGQzZWU4NmIzYjlhcC0xLAorICAgIC0weDEuMmZhNTAxMDliZjg0MnAxLAorICB9LAorICB7IC8vIEVudHJ5IDQzMgorICAgIDB4MS40YmU0OTc5YzVlZmIxOTRmYzgyYWMzNjdmZWRmOTNiY3AtMSwKKyAgICAtMHgxLjg1ZGMzZWExYmJjZWFlMmQyOTQ0MjFlOGM3MzUwZjhjcC0xLAorICAgIDB4MS4zN2Q5ZTU2M2Y1MWZmcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgLTB4MS40YmU0OTc5YzVlZmIxOTRmYzgyYWMzNjdmZWRmOTNiY3AtMSwKKyAgICAtMHgxLjg1ZGMzZWExYmJjZWFlMmQyOTQ0MjFlOGM3MzUwZjhjcC0xLAorICAgIC0weDEuMzdkOWU1NjNmNTFmZnAxLAorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS4zMjNiOGIxZmI0YjllZmU1MDc1ZWRlODA0OWE4NWMzZHAtMSwKKyAgICAtMHgxLjlhNTJlMmUwZmJjYjVmOGEzZjU1YzI3NGY5ZWM3NTRicC0xLAorICAgIDB4MS40MDBlYzliZTJhYmJjcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDM1CisgICAgLTB4MS4zMjNiOGIxZmI0YjllZmU1MDc1ZWRlODA0OWE4NWMzZHAtMSwKKyAgICAtMHgxLjlhNTJlMmUwZmJjYjVmOGEzZjU1YzI3NGY5ZWM3NTRicC0xLAorICAgIC0weDEuNDAwZWM5YmUyYWJiY3AxLAorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIDB4MS4xNzUwNTliZjBkNDIwMzNiYmNmNTk4Yzg4YjE3NmU2MXAtMSwKKyAgICAtMHgxLmFkMTllMjUzNWFhOTliMDQ5YWMwYjU4NThjNWQzODFmcC0xLAorICAgIDB4MS40ODQzYWUxODYwNTc5cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDM3CisgICAgLTB4MS4xNzUwNTliZjBkNDIwMzNiYmNmNTk4Yzg4YjE3NmU2MXAtMSwKKyAgICAtMHgxLmFkMTllMjUzNWFhOTliMDQ5YWMwYjU4NThjNWQzODFmcC0xLAorICAgIC0weDEuNDg0M2FlMTg2MDU3OXAxLAorICB9LAorICB7IC8vIEVudHJ5IDQzOAorICAgIDB4MS5mNjdlYTk3NWI4NjkyNTIxZjc3ZDY3NTRiMzAyYzVjNHAtMiwKKyAgICAtMHgxLmJlMWQ3YzM1MzRjNDQxMzJhYjFjNDEzMGNiZTlkZmEwcC0xLAorICAgIDB4MS41MDc4OTI3Mjk1ZjM2cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgLTB4MS5mNjdlYTk3NWI4NjkyNTIxZjc3ZDY3NTRiMzAyYzVjNHAtMiwKKyAgICAtMHgxLmJlMWQ3YzM1MzRjNDQxMzJhYjFjNDEzMGNiZTlkZmEwcC0xLAorICAgIC0weDEuNTA3ODkyNzI5NWYzNnAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ0MAorICAgIDB4MS5iYzRjMDRkNzFhYmFkMTRlZmMyOWE2NjM0MmFkYTcyM3AtMiwKKyAgICAtMHgxLmNkNGJjYTljYjVjNzU5ZTRkNmRjODYwMWVjM2Q4NGI2cC0xLAorICAgIDB4MS41OGFkNzZjY2NiOGYzcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgLTB4MS5iYzRjMDRkNzFhYmFkMTRlZmMyOWE2NjM0MmFkYTcyM3AtMiwKKyAgICAtMHgxLmNkNGJjYTljYjVjNzU5ZTRkNmRjODYwMWVjM2Q4NGI2cC0xLAorICAgIC0weDEuNThhZDc2Y2NjYjhmM3AxLAorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIDB4MS44MDQ1ZmU2NGU2MmM2MmY1N2YwNzdlYTI1MWUyZjJkY3AtMiwKKyAgICAtMHgxLmRhOTRkNTRkZDRjMGNlZGNjZDczNjg0OTk0NDIyNzQwcC0xLAorICAgIDB4MS42MGUyNWIyNzAxMmIwcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgLTB4MS44MDQ1ZmU2NGU2MmM2MmY1N2YwNzdlYTI1MWUyZjJkY3AtMiwKKyAgICAtMHgxLmRhOTRkNTRkZDRjMGNlZGNjZDczNjg0OTk0NDIyNzQwcC0xLAorICAgIC0weDEuNjBlMjViMjcwMTJiMHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ0NAorICAgIDB4MS40MmFiYmE4YzcyZmExMmJlOTIwYjMxNjYyNzUxMmU0MXAtMiwKKyAgICAtMHgxLmU1ZWFhMjg2ZmJiY2FkMWU0YTYzNzMzOTJlNjc5NjY5cC0xLAorICAgIDB4MS42OTE3M2Y4MTM2YzZkcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgLTB4MS40MmFiYmE4YzcyZmExMmJlOTIwYjMxNjYyNzUxMmU0MXAtMiwKKyAgICAtMHgxLmU1ZWFhMjg2ZmJiY2FkMWU0YTYzNzMzOTJlNjc5NjY5cC0xLAorICAgIC0weDEuNjkxNzNmODEzNmM2ZHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIDB4MS4wM2JlMDZmOTdjYmNmODY2MDIxZTVhNWM2MmM2YjA3ZXAtMiwKKyAgICAtMHgxLmVmNDE0NWI0YWVkMDNjNWYxZDM5NzYzYjFlZWU2ZWQ4cC0xLAorICAgIDB4MS43MTRjMjNkYjZjNjJhcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgLTB4MS4wM2JlMDZmOTdjYmNmODY2MDIxZTVhNWM2MmM2YjA3ZXAtMiwKKyAgICAtMHgxLmVmNDE0NWI0YWVkMDNjNWYxZDM5NzYzYjFlZWU2ZWQ4cC0xLAorICAgIC0weDEuNzE0YzIzZGI2YzYyYXAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIDB4MS44NzdlMmNkNGY2Zjk0NzEwZjI3NzY3NzViMDFjNzNkYnAtMywKKyAgICAtMHgxLmY2OGVlYmZjYmI1ZWJhMTI0ZDhjYzQ4ZmQxYmViMDRkcC0xLAorICAgIDB4MS43OTgxMDgzNWExZmU3cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDQ5CisgICAgLTB4MS44NzdlMmNkNGY2Zjk0NzEwZjI3NzY3NzViMDFjNzNkYnAtMywKKyAgICAtMHgxLmY2OGVlYmZjYmI1ZWJhMTI0ZDhjYzQ4ZmQxYmViMDRkcC0xLAorICAgIC0weDEuNzk4MTA4MzVhMWZlN3AxLAorICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIDB4MS4wNWU0NzYxYWI4ZDQyMTcxOTU2NzcxN2Y3NjcxMjg2N3AtMywKKyAgICAtMHgxLmZiY2JlNjkzYmQ4ZWYwMDZmNWZmMDIyMTBkZmUwNjE5cC0xLAorICAgIDB4MS44MWI1ZWM4ZmQ3OWE0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgLTB4MS4wNWU0NzYxYWI4ZDQyMTcxOTU2NzcxN2Y3NjcxMjg2N3AtMywKKyAgICAtMHgxLmZiY2JlNjkzYmQ4ZWYwMDZmNWZmMDIyMTBkZmUwNjE5cC0xLAorICAgIC0weDEuODFiNWVjOGZkNzlhNHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ1MgorICAgIDB4MS4wNjZlN2ViNzZmNWRkMmVhMTliNjk5MWU4YTFhMzYzNHAtNCwKKyAgICAtMHgxLmZlZjJiMmQyMWNmNmJlMWEyYzdlYTY2NWVmMWY4NzRlcC0xLAorICAgIDB4MS44OWVhZDBlYTBkMzVicDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgLTB4MS4wNjZlN2ViNzZmNWRkMmVhMTliNjk5MWU4YTFhMzYzNHAtNCwKKyAgICAtMHgxLmZlZjJiMmQyMWNmNmJlMWEyYzdlYTY2NWVmMWY4NzRlcC0xLAorICAgIC0weDEuODllYWQwZWEwZDM1YnAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ1NAorICAgIDB4MS4wM2JlMDZmOTdjYmYwOWNjMGJhZGJkYWU4MDNkN2I0ZXAtMiwKKyAgICAweDEuZWY0MTQ1YjRhZWNmZjZmNThlZGVjZjI0OTU1NDI4YzFwLTEsCisgICAgLTB4MS44MWI1ZWM4ZmQ3OTlmcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgLTB4MS4wM2JlMDZmOTdjYmYwOWNjMGJhZGJkYWU4MDNkN2I0ZXAtMiwKKyAgICAweDEuZWY0MTQ1YjRhZWNmZjZmNThlZGVjZjI0OTU1NDI4YzFwLTEsCisgICAgMHgxLjgxYjVlYzhmZDc5OWZwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAweDEuZjY3ZWE5NzViODZhMjJmMjM0ODc3ODgyNGY5NWQ4NGFwLTIsCisgICAgMHgxLmJlMWQ3YzM1MzRjM2Y5YjliMzU2MTkyODAwNDlkZTg1cC0xLAorICAgIC0weDEuNzE0YzIzZGI2YzYyNnAyLAorICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIC0weDEuZjY3ZWE5NzViODZhMjJmMjM0ODc3ODgyNGY5NWQ4NGFwLTIsCisgICAgMHgxLmJlMWQ3YzM1MzRjM2Y5YjliMzU2MTkyODAwNDlkZTg1cC0xLAorICAgIDB4MS43MTRjMjNkYjZjNjI2cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgMHgxLjY0MzA4MGQ2N2FjYzIxMGZhMjdlOTI0N2E4Mjg2MjIwcC0xLAorICAgIDB4MS42ZmNiN2M2YjhiOTE4ZDg2ZmM4M2Q2MTJhNjU4N2VkZHAtMSwKKyAgICAtMHgxLjYwZTI1YjI3MDEyYWRwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTkKKyAgICAtMHgxLjY0MzA4MGQ2N2FjYzIxMGZhMjdlOTI0N2E4Mjg2MjIwcC0xLAorICAgIDB4MS42ZmNiN2M2YjhiOTE4ZDg2ZmM4M2Q2MTJhNjU4N2VkZHAtMSwKKyAgICAweDEuNjBlMjViMjcwMTJhZHAyLAorICB9LAorICB7IC8vIEVudHJ5IDQ2MAorICAgIDB4MS5iNWQ1NDViMTA5YmY5NTBiNDE5NzAyOTcyYjk0ZjhmYXAtMSwKKyAgICAweDEuMDk2YWMwMmVjNDJjODJlNWIyMjUxODViZDZjNzU3ZDVwLTEsCisgICAgLTB4MS41MDc4OTI3Mjk1ZjM0cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgLTB4MS5iNWQ1NDViMTA5YmY5NTBiNDE5NzAyOTcyYjk0ZjhmYXAtMSwKKyAgICAweDEuMDk2YWMwMmVjNDJjODJlNWIyMjUxODViZDZjNzU3ZDVwLTEsCisgICAgMHgxLjUwNzg5MjcyOTVmMzRwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICAweDEuZWFkNjgzNDkwOWI5MzQ2MjM0ZGJiNjAxZDA0ODZjZjJwLTEsCisgICAgMHgxLjIzNWIzMzFkOGY3NDg3Y2UyZGI5NzgxOWZhZTc3NzdjcC0yLAorICAgIC0weDEuNDAwZWM5YmUyYWJiYnAyLAorICB9LAorICB7IC8vIEVudHJ5IDQ2MworICAgIC0weDEuZWFkNjgzNDkwOWI5MzQ2MjM0ZGJiNjAxZDA0ODZjZjJwLTEsCisgICAgMHgxLjIzNWIzMzFkOGY3NDg3Y2UyZGI5NzgxOWZhZTc3NzdjcC0yLAorICAgIDB4MS40MDBlYzliZTJhYmJicDIsCisgIH0sCisgIHsgLy8gRW50cnkgNDY0CisgICAgMHgxLmZmYmNhODQ2YzRmYzk5OWEyOWRjMWQ2YjJkN2NiNDEzcC0xLAorICAgIDB4MS4wNjkxMDdhZTkzMzJjNGExY2QyZGMwMzNiOGQ1MDU5OHAtNSwKKyAgICAtMHgxLjJmYTUwMTA5YmY4NDJwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjUKKyAgICAtMHgxLmZmYmNhODQ2YzRmYzk5OWEyOWRjMWQ2YjJkN2NiNDEzcC0xLAorICAgIDB4MS4wNjkxMDdhZTkzMzJjNGExY2QyZGMwMzNiOGQ1MDU5OHAtNSwKKyAgICAweDEuMmZhNTAxMDliZjg0MnAyLAorICB9LAorICB7IC8vIEVudHJ5IDQ2NgorICAgIDB4MS5mMzI5YzA1NThlOTZhNTE4YTJhZjNhZTc4MDBhNWI2NXAtMSwKKyAgICAtMHgxLmM3YjkwZTMwMjQ1Njk1YmQxZWMxNzBmNDVmZWViMWZmcC0zLAorICAgIC0weDEuMWYzYjM4NTU1NDRjOXAyLAorICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIC0weDEuZjMyOWMwNTU4ZTk2YTUxOGEyYWYzYWU3ODAwYTViNjVwLTEsCisgICAgLTB4MS5jN2I5MGUzMDI0NTY5NWJkMWVjMTcwZjQ1ZmVlYjFmZnAtMywKKyAgICAweDEuMWYzYjM4NTU1NDRjOXAyLAorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIDB4MS5jNWYwNTgyMzBlODAyMWYyMWJkMGFjMmMwZjY4MDlhOXAtMSwKKyAgICAtMHgxLmQ5YTNhMzM2ZWRiNjJjMTU0MWI4NTg0Y2Q2YzAwZjg3cC0yLAorICAgIC0weDEuMGVkMTZmYTBlOTE1MHAyLAorICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIC0weDEuYzVmMDU4MjMwZTgwMjFmMjFiZDBhYzJjMGY2ODA5YTlwLTEsCisgICAgLTB4MS5kOWEzYTMzNmVkYjYyYzE1NDFiODU4NGNkNmMwMGY4N3AtMiwKKyAgICAweDEuMGVkMTZmYTBlOTE1MHAyLAorICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIDB4MS43YjA1YjdiNmM2MTM2NWE5YWM5ZTkwOGI4ZTVkM2NlNHAtMSwKKyAgICAtMHgxLjU4MzdkMjgxN2NmMjc3MDVjYWM3ODgxZmI1NjlmZmM3cC0xLAorICAgIC0weDEuZmNjZjRkZDhmYmJhZXAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ3MQorICAgIC0weDEuN2IwNWI3YjZjNjEzNjVhOWFjOWU5MDhiOGU1ZDNjZTRwLTEsCisgICAgLTB4MS41ODM3ZDI4MTdjZjI3NzA1Y2FjNzg4MWZiNTY5ZmZjN3AtMSwKKyAgICAweDEuZmNjZjRkZDhmYmJhZXAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ3MgorICAgIDB4MS4xNzUwNTliZjBkNDJmMWQ2YjM5MWYwN2Y5NmYyMzUzZHAtMSwKKyAgICAtMHgxLmFkMTllMjUzNWFhOGZmYjQwMDY2ZDc4YWVmNzFmYWJkcC0xLAorICAgIC0weDEuZGJmYmJjNzAyNTRiY3AxLAorICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIC0weDEuMTc1MDU5YmYwZDQyZjFkNmIzOTFmMDdmOTZmMjM1M2RwLTEsCisgICAgLTB4MS5hZDE5ZTI1MzVhYThmZmI0MDA2NmQ3OGFlZjcxZmFiZHAtMSwKKyAgICAweDEuZGJmYmJjNzAyNTRiY3AxLAorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIDB4MS40MmFiYmE4YzcyZmQyMjE5NDc5MzI0NmI4ZDE5OTYwYXAtMiwKKyAgICAtMHgxLmU1ZWFhMjg2ZmJiYzJiMTI5MjM4MTYwZGYzMGNlNzA0cC0xLAorICAgIC0weDEuYmIyODJiMDc0ZWRjYXAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ3NQorICAgIC0weDEuNDJhYmJhOGM3MmZkMjIxOTQ3OTMyNDZiOGQxOTk2MGFwLTIsCisgICAgLTB4MS5lNWVhYTI4NmZiYmMyYjEyOTIzODE2MGRmMzBjZTcwNHAtMSwKKyAgICAweDEuYmIyODJiMDc0ZWRjYXAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ3NgorICAgIDB4MS4wNjZlN2ViNzZmNjJiNWY0NTYzZGUyNmRjYTg5MDAxN3AtNCwKKyAgICAtMHgxLmZlZjJiMmQyMWNmNmI0MGZmM2I1MzBjZThkYzBkOGE3cC0xLAorICAgIC0weDEuOWE1NDk5OWU3ODZkOHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ3NworICAgIC0weDEuMDY2ZTdlYjc2ZjYyYjVmNDU2M2RlMjZkY2E4OTAwMTdwLTQsCisgICAgLTB4MS5mZWYyYjJkMjFjZjZiNDBmZjNiNTMwY2U4ZGMwZDhhN3AtMSwKKyAgICAweDEuOWE1NDk5OWU3ODZkOHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ3OAorICAgIC0weDEuODc3ZTJjZDRmNmZhNDI1ODY4NzVjNTI1MGExNjllNDhwLTMsCisgICAgLTB4MS5mNjhlZWJmY2JiNWVhZGQ2NWMyNjFjZDgwMzk5MGFlMXAtMSwKKyAgICAtMHgxLjc5ODEwODM1YTFmZTZwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzkKKyAgICAweDEuODc3ZTJjZDRmNmZhNDI1ODY4NzVjNTI1MGExNjllNDhwLTMsCisgICAgLTB4MS5mNjhlZWJmY2JiNWVhZGQ2NWMyNjFjZDgwMzk5MGFlMXAtMSwKKyAgICAweDEuNzk4MTA4MzVhMWZlNnAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ4MAorICAgIC0weDEuYmM0YzA0ZDcxYWJhNWRmYzA5ODI3OGYxNjhiYmQ5NjJwLTIsCisgICAgLTB4MS5jZDRiY2E5Y2I1Yzc3NWE5OTcyOWY3YWQ5NWI3ZGNlM3AtMSwKKyAgICAtMHgxLjU4YWQ3NmNjY2I4ZjRwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODEKKyAgICAweDEuYmM0YzA0ZDcxYWJhNWRmYzA5ODI3OGYxNjhiYmQ5NjJwLTIsCisgICAgLTB4MS5jZDRiY2E5Y2I1Yzc3NWE5OTcyOWY3YWQ5NWI3ZGNlM3AtMSwKKyAgICAweDEuNThhZDc2Y2NjYjhmNHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ4MgorICAgIC0weDEuNGJlNDk3OWM1ZWZhODcxZDMwYWUxY2ZhNjYzODkxOTlwLTEsCisgICAgLTB4MS44NWRjM2VhMWJiY2YyYWEyZTIxZWM1ODZkNTQ5N2UzNXAtMSwKKyAgICAtMHgxLjM3ZDllNTYzZjUyMDJwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODMKKyAgICAweDEuNGJlNDk3OWM1ZWZhODcxZDMwYWUxY2ZhNjYzODkxOTlwLTEsCisgICAgLTB4MS44NWRjM2VhMWJiY2YyYWEyZTIxZWM1ODZkNTQ5N2UzNXAtMSwKKyAgICAweDEuMzdkOWU1NjNmNTIwMnAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIC0weDEuYTNlZDllMjUyOTM4MjIxNjg5NThjY2UxZTA5ZjdjMTFwLTEsCisgICAgLTB4MS4yNGVjNzk5MTcxNjRlNDFhZGRkNGJhY2Q0NDIwZjlmYnAtMSwKKyAgICAtMHgxLjE3MDY1M2ZiMWViMTBwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAweDEuYTNlZDllMjUyOTM4MjIxNjg5NThjY2UxZTA5ZjdjMTFwLTEsCisgICAgLTB4MS4yNGVjNzk5MTcxNjRlNDFhZGRkNGJhY2Q0NDIwZjlmYnAtMSwKKyAgICAweDEuMTcwNjUzZmIxZWIxMHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIC0weDEuZTA3ZWVlZGExMDljNjJiMzQwZGMzNmU5MjE2OTY0OGRwLTEsCisgICAgLTB4MS42MWE3NjA3N2FlZTIzYjExZjBjNjczZjYzODAwM2IwYXAtMiwKKyAgICAtMHgxLmVjNjU4NTI0OTA4M2NwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODcKKyAgICAweDEuZTA3ZWVlZGExMDljNjJiMzQwZGMzNmU5MjE2OTY0OGRwLTEsCisgICAgLTB4MS42MWE3NjA3N2FlZTIzYjExZjBjNjczZjYzODAwM2IwYXAtMiwKKyAgICAweDEuZWM2NTg1MjQ5MDgzY3AwLAorICB9LAorICB7IC8vIEVudHJ5IDQ4OAorICAgIC0weDEuZmRhMjU0YzI3YTAxZGQ5NTRkYjNhZWE1MDVlNDk0NTNwLTEsCisgICAgLTB4MS44OTRmNzBiZWZiYzEwNGI3MDZlODVjZjRjMWM5NmE1MnAtNCwKKyAgICAtMHgxLmFhYmU2MjUyZTNhNThwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODkKKyAgICAweDEuZmRhMjU0YzI3YTAxZGQ5NTRkYjNhZWE1MDVlNDk0NTNwLTEsCisgICAgLTB4MS44OTRmNzBiZWZiYzEwNGI3MDZlODVjZjRjMWM5NmE1MnAtNCwKKyAgICAweDEuYWFiZTYyNTJlM2E1OHAwLAorICB9LAorICB7IC8vIEVudHJ5IDQ5MAorICAgIC0weDEuZjk2ZmU0MDVmMWFjYTAyZThmNGZkNDMzZTU5YWE5NzNwLTEsCisgICAgMHgxLjQ2ZGM0ZjRjZTgzNzNjN2M0NGYxM2I1NzM2M2VkZDNicC0zLAorICAgIC0weDEuNjkxNzNmODEzNmM3NHAwLAorICB9LAorICB7IC8vIEVudHJ5IDQ5MQorICAgIDB4MS5mOTZmZTQwNWYxYWNhMDJlOGY0ZmQ0MzNlNTlhYTk3M3AtMSwKKyAgICAweDEuNDZkYzRmNGNlODM3M2M3YzQ0ZjEzYjU3MzYzZWRkM2JwLTMsCisgICAgMHgxLjY5MTczZjgxMzZjNzRwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTIKKyAgICAtMHgxLmQ0MmRlNDJkY2UxM2VmMDQwYmIxMDQwZTMxNDhkN2RlcC0xLAorICAgIDB4MS45ZTdmODY1MmI0NzI4OWU1M2ZjY2Q1NDk1NWRiNDU1MnAtMiwKKyAgICAtMHgxLjI3NzAxY2FmODllOTBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICAweDEuZDQyZGU0MmRjZTEzZWYwNDBiYjEwNDBlMzE0OGQ3ZGVwLTEsCisgICAgMHgxLjllN2Y4NjUyYjQ3Mjg5ZTUzZmNjZDU0OTU1ZGI0NTUycC0yLAorICAgIDB4MS4yNzcwMWNhZjg5ZTkwcDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgLTB4MS45MDRjMzc1MDVkZTU5MzA4MTJlM2EyYTk0ZmVhYTUxYnAtMSwKKyAgICAweDEuM2YzYTBlMjhiZWRiZmIwNjZiNjdhYmQ5YzMzODQwOWVwLTEsCisgICAgLTB4MS5jYjkxZjNiYmJhMTU3cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIDB4MS45MDRjMzc1MDVkZTU5MzA4MTJlM2EyYTk0ZmVhYTUxYnAtMSwKKyAgICAweDEuM2YzYTBlMjhiZWRiZmIwNjZiNjdhYmQ5YzMzODQwOWVwLTEsCisgICAgMHgxLmNiOTFmM2JiYmExNTdwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgLTB4MS4zMjNiOGIxZmI0YmI2MjZkZDQwY2FjZDc0OTYzYWM2Y3AtMSwKKyAgICAweDEuOWE1MmUyZTBmYmNhNGIwMGM3MmRhYTNjZGFjYTI1N2NwLTEsCisgICAgLTB4MS40ODQzYWUxODYwNThlcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDQ5NworICAgIDB4MS4zMjNiOGIxZmI0YmI2MjZkZDQwY2FjZDc0OTYzYWM2Y3AtMSwKKyAgICAweDEuOWE1MmUyZTBmYmNhNGIwMGM3MmRhYTNjZGFjYTI1N2NwLTEsCisgICAgMHgxLjQ4NDNhZTE4NjA1OGVwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNDk4CisgICAgLTB4MS44MDQ1ZmU2NGU2MzA4YmI1YzZjZTM1ZjgzNGI5M2M2M3AtMiwKKyAgICAweDEuZGE5NGQ1NGRkNGJmZjc1M2Q5ODhjMTc1NWUyZmZjMDRwLTEsCisgICAgLTB4MS44OWVhZDBlYTBkMzhhcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDQ5OQorICAgIDB4MS44MDQ1ZmU2NGU2MzA4YmI1YzZjZTM1ZjgzNGI5M2M2M3AtMiwKKyAgICAweDEuZGE5NGQ1NGRkNGJmZjc1M2Q5ODhjMTc1NWUyZmZjMDRwLTEsCisgICAgMHgxLjg5ZWFkMGVhMGQzOGFwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgNTAwCisgICAgLTB4MS4wNWU0NzYxYWI4ZGVjNDRlZDBmYTMwZDMzNTA0OWM0MHAtMywKKyAgICAweDEuZmJjYmU2OTNiZDhlOTg0MjMyMDdlMzY1ODdkOTQyYjdwLTEsCisgICAgLTB4MS4wNjljOGI0NmIzN2YwcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIDB4MS4wNWU0NzYxYWI4ZGVjNDRlZDBmYTMwZDMzNTA0OWM0MHAtMywKKyAgICAweDEuZmJjYmU2OTNiZDhlOTg0MjMyMDdlMzY1ODdkOTQyYjdwLTEsCisgICAgMHgxLjA2OWM4YjQ2YjM3ZjBwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgMHgxLjA1ZTQ3NjFhYjhkMzFkMDBlNjU2MzcyYzVjMDRhYTZlcC0zLAorICAgIDB4MS5mYmNiZTY5M2JkOGVmODZjMTU2NWIzNDUzMDM2ZTU1ZXAtMSwKKyAgICAweDEuMDY5YzhiNDZiMzczNHAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICAtMHgxLjA1ZTQ3NjFhYjhkMzFkMDBlNjU2MzcyYzVjMDRhYTZlcC0zLAorICAgIDB4MS5mYmNiZTY5M2JkOGVmODZjMTU2NWIzNDUzMDM2ZTU1ZXAtMSwKKyAgICAtMHgxLjA2OWM4YjQ2YjM3MzRwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgNTA0CisgICAgMHgxLjgwNDVmZTY0ZTYyYjE5YTA5NDM5OTUwMmFmYjc2ZTVjcC0yLAorICAgIDB4MS5kYTk0ZDU0ZGQ0YzExMTg3NDA1YWRhN2YwNGU1YjE3MXAtMSwKKyAgICAweDEuODllYWQwZWEwZDMyY3AtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAtMHgxLjgwNDVmZTY0ZTYyYjE5YTA5NDM5OTUwMmFmYjc2ZTVjcC0yLAorICAgIDB4MS5kYTk0ZDU0ZGQ0YzExMTg3NDA1YWRhN2YwNGU1YjE3MXAtMSwKKyAgICAtMHgxLjg5ZWFkMGVhMGQzMmNwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgNTA2CisgICAgMHgxLjMyM2I4YjFmYjRiOTA3YzQxNmQyM2IwNGUwZWMwZTcycC0xLAorICAgIDB4MS45YTUyZTJlMGZiY2MwY2M4M2I4NDNiYWU1OGM2Y2RmOHAtMSwKKyAgICAweDEuNDg0M2FlMTg2MDU1ZnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAtMHgxLjMyM2I4YjFmYjRiOTA3YzQxNmQyM2IwNGUwZWMwZTcycC0xLAorICAgIDB4MS45YTUyZTJlMGZiY2MwY2M4M2I4NDNiYWU1OGM2Y2RmOHAtMSwKKyAgICAtMHgxLjQ4NDNhZTE4NjA1NWZwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLjkwNGMzNzUwNWRlM2JlMmFjZTE3Y2E1NDg3NzUwMjMxcC0xLAorICAgIDB4MS4zZjNhMGUyOGJlZGU0NmY2NWNhNWI1YzE5YWQ5OWRkN3AtMSwKKyAgICAweDEuY2I5MWYzYmJiYTEyOHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDkKKyAgICAtMHgxLjkwNGMzNzUwNWRlM2JlMmFjZTE3Y2E1NDg3NzUwMjMxcC0xLAorICAgIDB4MS4zZjNhMGUyOGJlZGU0NmY2NWNhNWI1YzE5YWQ5OWRkN3AtMSwKKyAgICAtMHgxLmNiOTFmM2JiYmExMjhwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgMHgxLmQ0MmRlNDJkY2UxMmI4MjQ2NmYyZmNiNjNiMjk0NzUxcC0xLAorICAgIDB4MS45ZTdmODY1MmI0NzgwNjZlZWM1NjNmODM1MDk3ZjE0OHAtMiwKKyAgICAweDEuMjc3MDFjYWY4OWU3OHAwLAorICB9LAorICB7IC8vIEVudHJ5IDUxMQorICAgIC0weDEuZDQyZGU0MmRjZTEyYjgyNDY2ZjJmY2I2M2IyOTQ3NTFwLTEsCisgICAgMHgxLjllN2Y4NjUyYjQ3ODA2NmVlYzU2M2Y4MzUwOTdmMTQ4cC0yLAorICAgIC0weDEuMjc3MDFjYWY4OWU3OHAwLAorICB9LAorICB7IC8vIEVudHJ5IDUxMgorICAgIDB4MS5mOTZmZTQwNWYxYWMyNTliZjE5MmZkMWNmNjRlMmYxMnAtMSwKKyAgICAweDEuNDZkYzRmNGNlODQzMTUxYjlkMTRlNTYxODc5ZTVmZTNwLTMsCisgICAgMHgxLjY5MTczZjgxMzZjNWNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTMKKyAgICAtMHgxLmY5NmZlNDA1ZjFhYzI1OWJmMTkyZmQxY2Y2NGUyZjEycC0xLAorICAgIDB4MS40NmRjNGY0Y2U4NDMxNTFiOWQxNGU1NjE4NzllNWZlM3AtMywKKyAgICAtMHgxLjY5MTczZjgxMzZjNWNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTQKKyAgICAweDEuZmRhMjU0YzI3YTAyMjc1NDMyZDc3ZGQ2Zjk3MDQ2NDRwLTEsCisgICAgLTB4MS44OTRmNzBiZWZiYTkyMTFiMGRjYWE0ZGNhNDUwNjcwZnAtNCwKKyAgICAweDEuYWFiZTYyNTJlM2E0MHAwLAorICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIC0weDEuZmRhMjU0YzI3YTAyMjc1NDMyZDc3ZGQ2Zjk3MDQ2NDRwLTEsCisgICAgLTB4MS44OTRmNzBiZWZiYTkyMTFiMGRjYWE0ZGNhNDUwNjcwZnAtNCwKKyAgICAtMHgxLmFhYmU2MjUyZTNhNDBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTYKKyAgICAweDEuZTA3ZWVlZGExMDlkNmJmMGM5MzVmYTEwYjEyODBjNmRwLTEsCisgICAgLTB4MS42MWE3NjA3N2FlZGM5OTk1MjQzODQyMWY4MjBhMmJlZnAtMiwKKyAgICAweDEuZWM2NTg1MjQ5MDgyNHAwLAorICB9LAorICB7IC8vIEVudHJ5IDUxNworICAgIC0weDEuZTA3ZWVlZGExMDlkNmJmMGM5MzVmYTEwYjEyODBjNmRwLTEsCisgICAgLTB4MS42MWE3NjA3N2FlZGM5OTk1MjQzODQyMWY4MjBhMmJlZnAtMiwKKyAgICAtMHgxLmVjNjU4NTI0OTA4MjRwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICAweDEuYTNlZDllMjUyOTM5ZDk3OTNmYjJmNmY3NWU1Yzc2ZTdwLTEsCisgICAgLTB4MS4yNGVjNzk5MTcxNjI2ZTM2NzA5Y2ZjZjdjNzc1MjMzMnAtMSwKKyAgICAweDEuMTcwNjUzZmIxZWIwNHAxLAorICB9LAorICB7IC8vIEVudHJ5IDUxOQorICAgIC0weDEuYTNlZDllMjUyOTM5ZDk3OTNmYjJmNmY3NWU1Yzc2ZTdwLTEsCisgICAgLTB4MS4yNGVjNzk5MTcxNjI2ZTM2NzA5Y2ZjZjdjNzc1MjMzMnAtMSwKKyAgICAtMHgxLjE3MDY1M2ZiMWViMDRwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjAKKyAgICAweDEuNGJlNDk3OWM1ZWZjY2ZlNzhlYTBiNmFmYjBjYmJhMzdwLTEsCisgICAgLTB4MS44NWRjM2VhMWJiY2QzOGNiZmViNDM3MGQ1NDA1ZWViYXAtMSwKKyAgICAweDEuMzdkOWU1NjNmNTFmNnAxLAorICB9LAorICB7IC8vIEVudHJ5IDUyMQorICAgIC0weDEuNGJlNDk3OWM1ZWZjY2ZlNzhlYTBiNmFmYjBjYmJhMzdwLTEsCisgICAgLTB4MS44NWRjM2VhMWJiY2QzOGNiZmViNDM3MGQ1NDA1ZWViYXAtMSwKKyAgICAtMHgxLjM3ZDllNTYzZjUxZjZwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjIKKyAgICAweDEuYmM0YzA0ZDcxYWJmYzVkZjY5NTg5YTQ1ZDVlMzE5NmVwLTIsCisgICAgLTB4MS5jZDRiY2E5Y2I1YzYyODcwOTM4OGEzOWZjODQ1OTFkMXAtMSwKKyAgICAweDEuNThhZDc2Y2NjYjhlOHAxLAorICB9LAorICB7IC8vIEVudHJ5IDUyMworICAgIC0weDEuYmM0YzA0ZDcxYWJmYzVkZjY5NTg5YTQ1ZDVlMzE5NmVwLTIsCisgICAgLTB4MS5jZDRiY2E5Y2I1YzYyODcwOTM4OGEzOWZjODQ1OTFkMXAtMSwKKyAgICAtMHgxLjU4YWQ3NmNjY2I4ZThwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjQKKyAgICAweDEuODc3ZTJjZDRmNzA2MDliMWYwNjIyOTViNjRhZWQ0YmRwLTMsCisgICAgLTB4MS5mNjhlZWJmY2JiNWUxYjA3MGI1NjQwMzdmNTU3MWEzOXAtMSwKKyAgICAweDEuNzk4MTA4MzVhMWZkYXAxLAorICB9LAorICB7IC8vIEVudHJ5IDUyNQorICAgIC0weDEuODc3ZTJjZDRmNzA2MDliMWYwNjIyOTViNjRhZWQ0YmRwLTMsCisgICAgLTB4MS5mNjhlZWJmY2JiNWUxYjA3MGI1NjQwMzdmNTU3MWEzOXAtMSwKKyAgICAtMHgxLjc5ODEwODM1YTFmZGFwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjYKKyAgICAtMHgxLjA2NmU3ZWI3NmY0YWMyOTNmNDY0ODZkYzMyOGQ0NTBicC00LAorICAgIC0weDEuZmVmMmIyZDIxY2Y2ZTU0NGFiNzc5NWFlZDEwZDlmYTdwLTEsCisgICAgMHgxLjlhNTQ5OTllNzg2Y2NwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjcKKyAgICAweDEuMDY2ZTdlYjc2ZjRhYzI5M2Y0NjQ4NmRjMzI4ZDQ1MGJwLTQsCisgICAgLTB4MS5mZWYyYjJkMjFjZjZlNTQ0YWI3Nzk1YWVkMTBkOWZhN3AtMSwKKyAgICAtMHgxLjlhNTQ5OTllNzg2Y2NwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjgKKyAgICAtMHgxLjQyYWJiYThjNzJmNzcwNTk1ZmZlMzEzNWEwZTBhZDgzcC0yLAorICAgIC0weDEuZTVlYWEyODZmYmJkMWQxMzVlMjE2YzQ5YTlmN2U1ZGFwLTEsCisgICAgMHgxLmJiMjgyYjA3NGVkYmVwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjkKKyAgICAweDEuNDJhYmJhOGM3MmY3NzA1OTVmZmUzMTM1YTBlMGFkODNwLTIsCisgICAgLTB4MS5lNWVhYTI4NmZiYmQxZDEzNWUyMTZjNDlhOWY3ZTVkYXAtMSwKKyAgICAtMHgxLmJiMjgyYjA3NGVkYmVwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAtMHgxLjE3NTA1OWJmMGQ0MDZlMmZlMDE0ZTg4MGRkMjljZmFjcC0xLAorICAgIC0weDEuYWQxOWUyNTM1YWFhYTJhYzg3MDU2YjZkNzc3NmU5N2FwLTEsCisgICAgMHgxLmRiZmJiYzcwMjU0YjBwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzEKKyAgICAweDEuMTc1MDU5YmYwZDQwNmUyZmUwMTRlODgwZGQyOWNmYWNwLTEsCisgICAgLTB4MS5hZDE5ZTI1MzVhYWFhMmFjODcwNTZiNmQ3Nzc2ZTk3YXAtMSwKKyAgICAtMHgxLmRiZmJiYzcwMjU0YjBwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzIKKyAgICAtMHgxLjdiMDViN2I2YzYxMTYxNTVmMGRjNTUxZTMxNmUxZTBicC0xLAorICAgIC0weDEuNTgzN2QyODE3Y2Y0YWY4ZTVlNTliMTNiNGFhOWI1ZTNwLTEsCisgICAgMHgxLmZjY2Y0ZGQ4ZmJiYTJwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzMKKyAgICAweDEuN2IwNWI3YjZjNjExNjE1NWYwZGM1NTFlMzE2ZTFlMGJwLTEsCisgICAgLTB4MS41ODM3ZDI4MTdjZjRhZjhlNWU1OWIxM2I0YWE5YjVlM3AtMSwKKyAgICAtMHgxLmZjY2Y0ZGQ4ZmJiYTJwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzQKKyAgICAtMHgxLmM1ZjA1ODIzMGU3ZWJlYjc2MTY3NzllMTZmYTliNTM3cC0xLAorICAgIC0weDEuZDlhM2EzMzZlZGJiN2RlNjRhMjE4M2NiMjdiZTRiNWJwLTIsCisgICAgMHgxLjBlZDE2ZmEwZTkxNGFwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAweDEuYzVmMDU4MjMwZTdlYmViNzYxNjc3OWUxNmZhOWI1MzdwLTEsCisgICAgLTB4MS5kOWEzYTMzNmVkYmI3ZGU2NGEyMTgzY2IyN2JlNGI1YnAtMiwKKyAgICAtMHgxLjBlZDE2ZmEwZTkxNGFwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzYKKyAgICAtMHgxLmYzMjljMDU1OGU5NWZhMzMzZDVkMmQ0NGQ2NTQ3NzdjcC0xLAorICAgIC0weDEuYzdiOTBlMzAyNDYyNDhiN2EwYzJjODdhM2RkMjUyMjRwLTMsCisgICAgMHgxLjFmM2IzODU1NTQ0YzNwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzcKKyAgICAweDEuZjMyOWMwNTU4ZTk1ZmEzMzNkNWQyZDQ0ZDY1NDc3N2NwLTEsCisgICAgLTB4MS5jN2I5MGUzMDI0NjI0OGI3YTBjMmM4N2EzZGQyNTIyNHAtMywKKyAgICAtMHgxLjFmM2IzODU1NTQ0YzNwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzgKKyAgICAtMHgxLmZmYmNhODQ2YzRmY2IyMzdjMjk0N2IzNWIwMzdhMnAtMSwKKyAgICAweDEuMDY5MTA3YWU5MzAyY2FmMjA2OGI0ODg0MmFmZGYwNTFwLTUsCisgICAgMHgxLjJmYTUwMTA5YmY4M2NwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzkKKyAgICAweDEuZmZiY2E4NDZjNGZjYjIzN2MyOTQ3YjM1YjAzN2EycC0xLAorICAgIDB4MS4wNjkxMDdhZTkzMDJjYWYyMDY4YjQ4ODQyYWZkZjA1MXAtNSwKKyAgICAtMHgxLjJmYTUwMTA5YmY4M2NwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDAKKyAgICAtMHgxLmVhZDY4MzQ5MDliYTBlZTY5YjMxZTE5NzBkZjFiYjhicC0xLAorICAgIDB4MS4yMzViMzMxZDhmNmVjNzRhYTNkZTVhZWQxNWZhM2Y2OHAtMiwKKyAgICAweDEuNDAwZWM5YmUyYWJiNXAyLAorICB9LAorICB7IC8vIEVudHJ5IDU0MQorICAgIDB4MS5lYWQ2ODM0OTA5YmEwZWU2OWIzMWUxOTcwZGYxYmI4YnAtMSwKKyAgICAweDEuMjM1YjMzMWQ4ZjZlYzc0YWEzZGU1YWVkMTVmYTNmNjhwLTIsCisgICAgLTB4MS40MDBlYzliZTJhYmI1cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNTQyCisgICAgLTB4MS5iNWQ1NDViMTA5YzEyMzJiNjFkZDI4ZDgwMzVkOTVjYnAtMSwKKyAgICAweDEuMDk2YWMwMmVjNDI5ZjIyNWM5OWI4OWJiNGM5ZTVkM2VwLTEsCisgICAgMHgxLjUwNzg5MjcyOTVmMmVwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAweDEuYjVkNTQ1YjEwOWMxMjMyYjYxZGQyOGQ4MDM1ZDk1Y2JwLTEsCisgICAgMHgxLjA5NmFjMDJlYzQyOWYyMjVjOTliODliYjRjOWU1ZDNlcC0xLAorICAgIC0weDEuNTA3ODkyNzI5NWYyZXAyLAorICB9LAorICB7IC8vIEVudHJ5IDU0NAorICAgIC0weDEuNjQzMDgwZDY3YWNlNDhjMGRkMWZlM2EwNmJiYzRiZjVwLTEsCisgICAgMHgxLjZmY2I3YzZiOGI4Zjc3M2UzYjQyMWRkZWQ2ZmMxZjI2cC0xLAorICAgIDB4MS42MGUyNWIyNzAxMmE3cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNTQ1CisgICAgMHgxLjY0MzA4MGQ2N2FjZTQ4YzBkZDFmZTNhMDZiYmM0YmY1cC0xLAorICAgIDB4MS42ZmNiN2M2YjhiOGY3NzNlM2I0MjFkZGVkNmZjMWYyNnAtMSwKKyAgICAtMHgxLjYwZTI1YjI3MDEyYTdwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDYKKyAgICAtMHgxLmY2N2VhOTc1Yjg2ZjVkNGFhOTI3MTZjYzA3NzQ3M2E3cC0yLAorICAgIDB4MS5iZTFkN2MzNTM0YzI4MGRhYjQzZGNlZDY3MDMzMGI2M3AtMSwKKyAgICAweDEuNzE0YzIzZGI2YzYyMHAyLAorICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIDB4MS5mNjdlYTk3NWI4NmY1ZDRhYTkyNzE2Y2MwNzc0NzNhN3AtMiwKKyAgICAweDEuYmUxZDdjMzUzNGMyODBkYWI0M2RjZWQ2NzAzMzBiNjNwLTEsCisgICAgLTB4MS43MTRjMjNkYjZjNjIwcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNTQ4CisgICAgLTB4MS4wM2JlMDZmOTdjYzRkNzhmZGNjYmNhMWQ0MGU4NjAxMXAtMiwKKyAgICAweDEuZWY0MTQ1YjRhZWNmMzQyNzA5YTNiMTkzMjBkMWIxOTRwLTEsCisgICAgMHgxLjgxYjVlYzhmZDc5OTlwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDkKKyAgICAweDEuMDNiZTA2Zjk3Y2M0ZDc4ZmRjY2JjYTFkNDBlODYwMTFwLTIsCisgICAgMHgxLmVmNDE0NWI0YWVjZjM0MjcwOWEzYjE5MzIwZDFiMTk0cC0xLAorICAgIC0weDEuODFiNWVjOGZkNzk5OXAyLAorICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIDB4MS5lZmIyNmVmOTMwYzRjM2ZhMzI0NTk2M2MxZGNlYzBhNnAtNSwKKyAgICAweDEuZmYwZmQyYzk2YWRmYmFlNTc2OTgxZWU0YjM0NzY5ZGVwLTEsCisgICAgMHgxLmVmZmZmZmZmZmZmZmZwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgNTUxCisgICAgLTB4MS5lZmIyNmVmOTMwYzRjM2ZhMzI0NTk2M2MxZGNlYzBhNnAtNSwKKyAgICAweDEuZmYwZmQyYzk2YWRmYmFlNTc2OTgxZWU0YjM0NzY5ZGVwLTEsCisgICAgLTB4MS5lZmZmZmZmZmZmZmZmcC01LAorICB9LAorICB7IC8vIEVudHJ5IDU1MgorICAgIDB4MS5lZmIyNmVmOTMwYzRkM2YyYjBkYmUxOTMxYmE1YWU2NHAtNSwKKyAgICAweDEuZmYwZmQyYzk2YWRmYmFkNWY5MDRhNzFiMmQyMTBhMmFwLTEsCisgICAgMHgxLmZwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgNTUzCisgICAgLTB4MS5lZmIyNmVmOTMwYzRkM2YyYjBkYmUxOTMxYmE1YWU2NHAtNSwKKyAgICAweDEuZmYwZmQyYzk2YWRmYmFkNWY5MDRhNzFiMmQyMTBhMmFwLTEsCisgICAgLTB4MS5mcC01LAorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS5lZmIyNmVmOTMwYzRlM2ViMmY3MjJjZWExOTdjMjAzNnAtNSwKKyAgICAweDEuZmYwZmQyYzk2YWRmYmFjNjdiNzEyZjUxYTZmYTJhYjNwLTEsCisgICAgMHgxLmYwMDAwMDAwMDAwMDFwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgNTU1CisgICAgLTB4MS5lZmIyNmVmOTMwYzRlM2ViMmY3MjJjZWExOTdjMjAzNnAtNSwKKyAgICAweDEuZmYwZmQyYzk2YWRmYmFjNjdiNzEyZjUxYTZmYTJhYjNwLTEsCisgICAgLTB4MS5mMDAwMDAwMDAwMDAxcC01LAorICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIDB4MS5mNmJhYWExMzFkZTYzM2FkNGUwZTdkNjQ2NWQxMmEwNXAtNCwKKyAgICAweDEuZmMyMTAwNTU0NjdmZTVjOGY3NmU3NWZkNzA4MzgxOGNwLTEsCisgICAgMHgxLmY3ZmZmZmZmZmZmZmZwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgLTB4MS5mNmJhYWExMzFkZTYzM2FkNGUwZTdkNjQ2NWQxMmEwNXAtNCwKKyAgICAweDEuZmMyMTAwNTU0NjdmZTVjOGY3NmU3NWZkNzA4MzgxOGNwLTEsCisgICAgLTB4MS5mN2ZmZmZmZmZmZmZmcC00LAorICB9LAorICB7IC8vIEVudHJ5IDU1OAorICAgIDB4MS5mNmJhYWExMzFkZTY0MzhlNTYxMTI3OTg2NGZlNzY2M3AtNCwKKyAgICAweDEuZmMyMTAwNTU0NjdmZTU4YTIwMTkzMzk5YjNiYzBkZDJwLTEsCisgICAgMHgxLmY4MHAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTkKKyAgICAtMHgxLmY2YmFhYTEzMWRlNjQzOGU1NjExMjc5ODY0ZmU3NjYzcC00LAorICAgIDB4MS5mYzIxMDA1NTQ2N2ZlNThhMjAxOTMzOTliM2JjMGRkMnAtMSwKKyAgICAtMHgxLmY4MHAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjAKKyAgICAweDEuZjZiYWFhMTMxZGU2NTM2ZjVlMTNkMWNjNjQyOWNjMDdwLTQsCisgICAgMHgxLmZjMjEwMDU1NDY3ZmU1NGI0OGMzZjEzNWY2ZjI5ZGY3cC0xLAorICAgIDB4MS5mODAwMDAwMDAwMDAxcC00LAorICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIC0weDEuZjZiYWFhMTMxZGU2NTM2ZjVlMTNkMWNjNjQyOWNjMDdwLTQsCisgICAgMHgxLmZjMjEwMDU1NDY3ZmU1NGI0OGMzZjEzNWY2ZjI5ZGY3cC0xLAorICAgIC0weDEuZjgwMDAwMDAwMDAwMXAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjIKKyAgICAweDEuNGE4YzNiNGU5YzdmZjAwYTM2ZTA2MWEwZDIyOTUwOTNwLTMsCisgICAgMHgxLmY5NDk4NGIyNTUyZTE5ZTczMjk0MTNiOGMyZThkYzUxcC0xLAorICAgIDB4MS40YmZmZmZmZmZmZmZmcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDU2MworICAgIC0weDEuNGE4YzNiNGU5YzdmZjAwYTM2ZTA2MWEwZDIyOTUwOTNwLTMsCisgICAgMHgxLmY5NDk4NGIyNTUyZTE5ZTczMjk0MTNiOGMyZThkYzUxcC0xLAorICAgIC0weDEuNGJmZmZmZmZmZmZmZnAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjQKKyAgICAweDEuNGE4YzNiNGU5YzdmZmZkNDgzMDVmNDRhNDJmNWY1MGZwLTMsCisgICAgMHgxLmY5NDk4NGIyNTUyZTE5NDFlYzc2NmM2YTgyZWNlNGEzcC0xLAorICAgIDB4MS40YzBwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgNTY1CisgICAgLTB4MS40YThjM2I0ZTljN2ZmZmQ0ODMwNWY0NGE0MmY1ZjUwZnAtMywKKyAgICAweDEuZjk0OTg0YjI1NTJlMTk0MWVjNzY2YzZhODJlY2U0YTNwLTEsCisgICAgLTB4MS40YzBwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgNTY2CisgICAgMHgxLjRhOGMzYjRlOWM4MDBmOWVjZjJiODZmM2IzYmQ2ZjVhcC0zLAorICAgIDB4MS5mOTQ5ODRiMjU1MmUxODljYTY1OGM1MWM0MmU5MDdjZXAtMSwKKyAgICAweDEuNGMwMDAwMDAwMDAwMXAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICAtMHgxLjRhOGMzYjRlOWM4MDBmOWVjZjJiODZmM2IzYmQ2ZjVhcC0zLAorICAgIDB4MS5mOTQ5ODRiMjU1MmUxODljYTY1OGM1MWM0MmU5MDdjZXAtMSwKKyAgICAtMHgxLjRjMDAwMDAwMDAwMDFwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgNTY4CisgICAgMHgxLjJlOWNkOTViYWJhMzI1ZmU2MDY3MjMzZDQ0OTZhYWFjcC0yLAorICAgIDB4MS5lOTIxZGQ0MmYwOWJhODY4NjAzZWEzNzZmNmUyZDAxMnAtMSwKKyAgICAweDEuMzMzMzMzMzMzMzMzMnAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjkKKyAgICAtMHgxLjJlOWNkOTViYWJhMzI1ZmU2MDY3MjMzZDQ0OTZhYWFjcC0yLAorICAgIDB4MS5lOTIxZGQ0MmYwOWJhODY4NjAzZWEzNzZmNmUyZDAxMnAtMSwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzJwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgNTcwCisgICAgMHgxLjJlOWNkOTViYWJhMzM1NDc2ZjUxM2FjMjIxZDA3OGM3cC0yLAorICAgIDB4MS5lOTIxZGQ0MmYwOWJhNjBiMjY4YmVjMWZiMDg3OGE0MnAtMSwKKyAgICAweDEuMzMzMzMzMzMzMzMzM3AtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzEKKyAgICAtMHgxLjJlOWNkOTViYWJhMzM1NDc2ZjUxM2FjMjIxZDA3OGM3cC0yLAorICAgIDB4MS5lOTIxZGQ0MmYwOWJhNjBiMjY4YmVjMWZiMDg3OGE0MnAtMSwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzNwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgNTcyCisgICAgMHgxLjJlOWNkOTViYWJhMzQ0OTA3ZTNiNTI0NmZlZjc1ZDE1cC0yLAorICAgIDB4MS5lOTIxZGQ0MmYwOWJhM2FkZWNkOTM0Yzg2YTBkYjI1NHAtMSwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzMKKyAgICAtMHgxLjJlOWNkOTViYWJhMzQ0OTA3ZTNiNTI0NmZlZjc1ZDE1cC0yLAorICAgIDB4MS5lOTIxZGQ0MmYwOWJhM2FkZWNkOTM0Yzg2YTBkYjI1NHAtMSwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzRwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgNTc0CisgICAgMHgxLjNmYWVmYzdhNTQ2NmVmMzA0NWMzZjFiZTcxNmFkNTY4cC0xLAorICAgIDB4MS44ZmVlZGI4NmJmMGVmMzE1OGY4YTFkY2JlZjQ5ZDEyM3AtMSwKKyAgICAweDEuNTk0MzE3YWNjNGVmOHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzUKKyAgICAtMHgxLjNmYWVmYzdhNTQ2NmVmMzA0NWMzZjFiZTcxNmFkNTY4cC0xLAorICAgIDB4MS44ZmVlZGI4NmJmMGVmMzE1OGY4YTFkY2JlZjQ5ZDEyM3AtMSwKKyAgICAtMHgxLjU5NDMxN2FjYzRlZjhwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNTc2CisgICAgMHgxLjNmYWVmYzdhNTQ2NmZiYWZiY2EwMjdiNmU4ZGI4YzA0cC0xLAorICAgIDB4MS44ZmVlZGI4NmJmMGVlOTE4MTdhNjRiMjhiNzllNTExOXAtMSwKKyAgICAweDEuNTk0MzE3YWNjNGVmOXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzcKKyAgICAtMHgxLjNmYWVmYzdhNTQ2NmZiYWZiY2EwMjdiNmU4ZGI4YzA0cC0xLAorICAgIDB4MS44ZmVlZGI4NmJmMGVlOTE4MTdhNjRiMjhiNzllNTExOXAtMSwKKyAgICAtMHgxLjU5NDMxN2FjYzRlZjlwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNTc4CisgICAgMHgxLjNmYWVmYzdhNTQ2NzA4MmYzMzdjNWRhZjVmZmM1NmUycC0xLAorICAgIDB4MS44ZmVlZGI4NmJmMGVkZjFhOWZjMjc4ODU3ZjhlZDU1OXAtMSwKKyAgICAweDEuNTk0MzE3YWNjNGVmYXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzkKKyAgICAtMHgxLjNmYWVmYzdhNTQ2NzA4MmYzMzdjNWRhZjVmZmM1NmUycC0xLAorICAgIDB4MS44ZmVlZGI4NmJmMGVkZjFhOWZjMjc4ODU3ZjhlZDU1OXAtMSwKKyAgICAtMHgxLjU5NDMxN2FjYzRlZmFwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNTgwCisgICAgMHgxLjY4ODhhNGUxMzRiMmRlZjViZWE1MWY0Y2Q3ZDY0N2M2cC0xLAorICAgIDB4MS42Yjg5OGZhOWVmYjVkZDZmOWUxN2UzNDQyZDU5YjI0MXAtMSwKKyAgICAweDEuOGZmZmZmZmZmZmZmZnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODEKKyAgICAtMHgxLjY4ODhhNGUxMzRiMmRlZjViZWE1MWY0Y2Q3ZDY0N2M2cC0xLAorICAgIDB4MS42Yjg5OGZhOWVmYjVkZDZmOWUxN2UzNDQyZDU5YjI0MXAtMSwKKyAgICAtMHgxLjhmZmZmZmZmZmZmZmZwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgMHgxLjY4ODhhNGUxMzRiMmVhNTIwYjIyNmVjYTg2OTRiM2EycC0xLAorICAgIDB4MS42Yjg5OGZhOWVmYjVkMjJiNThmMGQ5OWU5NjM0OTMxYXAtMSwKKyAgICAweDEuOXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODMKKyAgICAtMHgxLjY4ODhhNGUxMzRiMmVhNTIwYjIyNmVjYTg2OTRiM2EycC0xLAorICAgIDB4MS42Yjg5OGZhOWVmYjVkMjJiNThmMGQ5OWU5NjM0OTMxYXAtMSwKKyAgICAtMHgxLjlwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNTg0CisgICAgMHgxLjY4ODhhNGUxMzRiMmY1YWU1NzlmYmU0ODM0ZjhmZDU1cC0xLAorICAgIDB4MS42Yjg5OGZhOWVmYjVjNmU3MTNjOWNmZjhmZWI0OTE4ZnAtMSwKKyAgICAweDEuOTAwMDAwMDAwMDAwMXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODUKKyAgICAtMHgxLjY4ODhhNGUxMzRiMmY1YWU1NzlmYmU0ODM0ZjhmZDU1cC0xLAorICAgIDB4MS42Yjg5OGZhOWVmYjVjNmU3MTNjOWNmZjhmZWI0OTE4ZnAtMSwKKyAgICAtMHgxLjkwMDAwMDAwMDAwMDFwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNTg2CisgICAgLTAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcC0xMDc0LAorICB9LAorICB7IC8vIEVudHJ5IDU4NworICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwLTEwNzQsCisgIH0sCisgIHsgLy8gRW50cnkgNTg4CisgICAgLTAuMCwKKyAgICAweDEucDAsCisgICAgLTAuMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODkKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcC0xMDc0LAorICB9LAorICB7IC8vIEVudHJ5IDU5MAorICAgIC0wLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAtMTA3NCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTEKKyAgICAweDEuOTFmNjVmMTBkZDgxMmEwYjk1ZmY3MTg3MWFiNDgyMDdwLTUsCisgICAgMHgxLmZmNjIxZTM3OTZkN2RlNGE4YWI3ZDdjZDg0ODhmNDk5cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cC01LAorICB9LAorICB7IC8vIEVudHJ5IDU5MgorICAgIC0weDEuOTFmNjVmMTBkZDgxMmEwYjk1ZmY3MTg3MWFiNDgyMDdwLTUsCisgICAgMHgxLmZmNjIxZTM3OTZkN2RlNGE4YWI3ZDdjZDg0ODhmNDk5cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTMKKyAgICAweDEuOTFmNjVmMTBkZDgxM2EwNmE2ZjEyZTNkZDlhNmE0MWVwLTUsCisgICAgMHgxLmZmNjIxZTM3OTZkN2RlM2RmYjA0ZGY0Njk4N2Y2NDUwcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC01LAorICB9LAorICB7IC8vIEVudHJ5IDU5NAorICAgIC0weDEuOTFmNjVmMTBkZDgxM2EwNmE2ZjEyZTNkZDlhNmE0MWVwLTUsCisgICAgMHgxLmZmNjIxZTM3OTZkN2RlM2RmYjA0ZGY0Njk4N2Y2NDUwcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTUKKyAgICAweDEuOTFmNjVmMTBkZDgxNGEwMWI3ZTJlYWY0OTg5ODYxYjdwLTUsCisgICAgMHgxLmZmNjIxZTM3OTZkN2RlMzE2YjUxZTZiZmFjNzU1NDJmcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC01LAorICB9LAorICB7IC8vIEVudHJ5IDU5NgorICAgIC0weDEuOTFmNjVmMTBkZDgxNGEwMWI3ZTJlYWY0OTg5ODYxYjdwLTUsCisgICAgMHgxLmZmNjIxZTM3OTZkN2RlMzE2YjUxZTZiZmFjNzU1NDJmcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAweDEuOTE3YTZiYzI5YjQyYTljZDJlNzg3ZWUwMGNhOGY4ZTNwLTQsCisgICAgMHgxLmZkODhkYTNkMTI1MjVhMjA4ODk4Y2Y1OGRlZDBlZWIzcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cC00LAorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIC0weDEuOTE3YTZiYzI5YjQyYTljZDJlNzg3ZWUwMGNhOGY4ZTNwLTQsCisgICAgMHgxLmZkODhkYTNkMTI1MjVhMjA4ODk4Y2Y1OGRlZDBlZWIzcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTkKKyAgICAweDEuOTE3YTZiYzI5YjQyYjliOTc1NGE2NzcyOWY3OTM0NmJwLTQsCisgICAgMHgxLmZkODhkYTNkMTI1MjU5ZWU1OTRiNTcwNTc2N2FiNjQ5cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC00LAorICB9LAorICB7IC8vIEVudHJ5IDYwMAorICAgIC0weDEuOTE3YTZiYzI5YjQyYjliOTc1NGE2NzcyOWY3OTM0NmJwLTQsCisgICAgMHgxLmZkODhkYTNkMTI1MjU5ZWU1OTRiNTcwNTc2N2FiNjQ5cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDEKKyAgICAweDEuOTE3YTZiYzI5YjQyYzlhNWJjMWM1MDA1MzI0N2RlNzhwLTQsCisgICAgMHgxLmZkODhkYTNkMTI1MjU5YmMyOWZkZGViMjBlMjI4MDU2cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC00LAorICB9LAorICB7IC8vIEVudHJ5IDYwMgorICAgIC0weDEuOTE3YTZiYzI5YjQyYzlhNWJjMWM1MDA1MzI0N2RlNzhwLTQsCisgICAgMHgxLmZkODhkYTNkMTI1MjU5YmMyOWZkZGViMjBlMjI4MDU2cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAweDEuOGY4YjgzYzY5YTYwOTc1Zjk4NDUzODg2Zjk1M2EwZTVwLTMsCisgICAgMHgxLmY2Mjk3Y2ZmNzVjYjAzYWIxZmNlZDYzMzdlMzVhMjQ1cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cC0zLAorICB9LAorICB7IC8vIEVudHJ5IDYwNAorICAgIC0weDEuOGY4YjgzYzY5YTYwOTc1Zjk4NDUzODg2Zjk1M2EwZTVwLTMsCisgICAgMHgxLmY2Mjk3Y2ZmNzVjYjAzYWIxZmNlZDYzMzdlMzVhMjQ1cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDUKKyAgICAweDEuOGY4YjgzYzY5YTYwYTcxMGU0MmQzNDM1NTE2ZGRhY2NwLTMsCisgICAgMHgxLmY2Mjk3Y2ZmNzVjYjAyZTM1YTBjZjJlNjRkZTYwNjI2cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0zLAorICB9LAorICB7IC8vIEVudHJ5IDYwNgorICAgIC0weDEuOGY4YjgzYzY5YTYwYTcxMGU0MmQzNDM1NTE2ZGRhY2NwLTMsCisgICAgMHgxLmY2Mjk3Y2ZmNzVjYjAyZTM1YTBjZjJlNjRkZTYwNjI2cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDcKKyAgICAweDEuOGY4YjgzYzY5YTYwYjZjMjMwMTUyZmUzYTk4MWQ2ODZwLTMsCisgICAgMHgxLmY2Mjk3Y2ZmNzVjYjAyMWI5NDRiMGY5OTFkOGU5MTYxcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC0zLAorICB9LAorICB7IC8vIEVudHJ5IDYwOAorICAgIC0weDEuOGY4YjgzYzY5YTYwYjZjMjMwMTUyZmUzYTk4MWQ2ODZwLTMsCisgICAgMHgxLmY2Mjk3Y2ZmNzVjYjAyMWI5NDRiMGY5OTFkOGU5MTYxcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDkKKyAgICAweDEuODdkZTJhNmFlYTk2MWEzZTlkZWRlYTU3ZmU3ZTY1MTRwLTIsCisgICAgMHgxLmQ5MDZiY2YzMjhkNDY2NzJkOWMxYTg2NTg5OGU1OTY2cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDYxMAorICAgIC0weDEuODdkZTJhNmFlYTk2MWEzZTlkZWRlYTU3ZmU3ZTY1MTRwLTIsCisgICAgMHgxLmQ5MDZiY2YzMjhkNDY2NzJkOWMxYTg2NTg5OGU1OTY2cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTEKKyAgICAweDEuODdkZTJhNmFlYTk2MjkwNmQzZDU4MzllYTFhNWJjZjBwLTIsCisgICAgMHgxLmQ5MDZiY2YzMjhkNDYzNjMxZDZjZDI5MDVkNGIxM2Y1cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDYxMgorICAgIC0weDEuODdkZTJhNmFlYTk2MjkwNmQzZDU4MzllYTFhNWJjZjBwLTIsCisgICAgMHgxLmQ5MDZiY2YzMjhkNDYzNjMxZDZjZDI5MDVkNGIxM2Y1cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTMKKyAgICAweDEuODdkZTJhNmFlYTk2MzdjZjA5YmQxY2U1NDRiNDk2ZWFwLTIsCisgICAgMHgxLmQ5MDZiY2YzMjhkNDYwNTM2MTE3ZmNiYjMwZWEzZTE3cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDYxNAorICAgIC0weDEuODdkZTJhNmFlYTk2MzdjZjA5YmQxY2U1NDRiNDk2ZWFwLTIsCisgICAgMHgxLmQ5MDZiY2YzMjhkNDYwNTM2MTE3ZmNiYjMwZWEzZTE3cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAweDEuNmEwOWU2NjdmM2JjYmE5OWFmYjAxMzU3Mjk0NTc4NzRwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2Q3NzdiNjQ2MTM3NmFiNTIzMjQycC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDYxNgorICAgIC0weDEuNmEwOWU2NjdmM2JjYmE5OWFmYjAxMzU3Mjk0NTc4NzRwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2Q3NzdiNjQ2MTM3NmFiNTIzMjQycC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTcKKyAgICAweDEuNmEwOWU2NjdmM2JjYzVlOWZlZTM1MmY1MGZkM2Y0ZTlwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2NjMjc2NzEyZDNkOGM1NTAyMzg3cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDYxOAorICAgIC0weDEuNmEwOWU2NjdmM2JjYzVlOWZlZTM1MmY1MGZkM2Y0ZTlwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2NjMjc2NzEyZDNkOGM1NTAyMzg3cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTkKKyAgICAweDEuNmEwOWU2NjdmM2JjZDEzYTRlMTY5MjkyZjYwN2VlZTVwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2MwZDcxN2RmOTQzYWRlZjM5MjUzcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDYyMAorICAgIC0weDEuNmEwOWU2NjdmM2JjZDEzYTRlMTY5MjkyZjYwN2VlZTVwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2MwZDcxN2RmOTQzYWRlZjM5MjUzcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZwLTEsCisgICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWMwYjhiNTBicC01MiwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AwLAorICB9LAorICB7IC8vIEVudHJ5IDYyMgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZwLTEsCisgICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWMwYjhiNTBicC01MiwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzFwLTEsCisgICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0NDE5ZmE4cC01NCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwLAorICB9LAorICB7IC8vIEVudHJ5IDYyNAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzFwLTEsCisgICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0NDE5ZmE4cC01NCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3OWI5NjNwLTEsCisgICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3ZGJjZmJhMHAtNTMsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzliOTYzcC0xLAorICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZjN2RiY2ZiYTBwLTUzLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAwLAorICB9LAorICB7IC8vIEVudHJ5IDYyNworICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDliZmFlZWQ0MnAtNTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTdkNWJmZnAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AxLAorICB9LAorICB7IC8vIEVudHJ5IDYyOAorICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ5YmZhZWVkNDJwLTUxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjk3ZDViZmZwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNjI5CisgICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0MzZlMmVkcC01MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNjMwCisgICAgLTB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwNDM2ZTJlZHAtNTMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzEKKyAgICAtMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzdkNWJiYzVjcC01MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNjMyCisgICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzdkNWJiYzVjcC01MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAxLAorICB9LAorICB7IC8vIEVudHJ5IDYzMworICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ5YmI4N2NlMWJwLTUwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNWY1NmZmZXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AyLAorICB9LAorICB7IC8vIEVudHJ5IDYzNAorICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDliYjg3Y2UxYnAtNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZlcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AyLAorICB9LAorICB7IC8vIEVudHJ5IDYzNQorICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQwYmYwMDNwLTUyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWM4ODMxN3AtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAyLAorICB9LAorICB7IC8vIEVudHJ5IDYzNgorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwNDBiZjAwM3AtNTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzE3cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAyLAorICB9LAorICB7IC8vIEVudHJ5IDYzNworICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3YmQ2YmY0ZHAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3OWI5NjMxcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjM4CisgICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3YmQ2YmY0ZHAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3OWI5NjMxcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAyLAorICB9LAorICB7IC8vIEVudHJ5IDYzOQorICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ5YWFlYjUxODJwLTQ5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5N2Q1YmZmOHAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3AzLAorICB9LAorICB7IC8vIEVudHJ5IDY0MAorICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDlhYWViNTE4MnAtNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjk3ZDViZmY4cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AzLAorICB9LAorICB7IC8vIEVudHJ5IDY0MQorICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDM2MDI0NWNwLTUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1ZXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAzLAorICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwMzYwMjQ1Y3AtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiMjIwYzVlcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAzLAorICB9LAorICB7IC8vIEVudHJ5IDY0MworICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3NWMyY2IwZXAtNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRlNmU1OGM0cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNjQ0CisgICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3NWMyY2IwZXAtNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRlNmU1OGM0cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAzLAorICB9LAorICB7IC8vIEVudHJ5IDY0NQorICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ5Njg3OTVmMWNwLTQ4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZlMXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3A0LAorICB9LAorICB7IC8vIEVudHJ5IDY0NgorICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDk2ODc5NWYxY3AtNDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTVmNTZmZmUxcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3A0LAorICB9LAorICB7IC8vIEVudHJ5IDY0NworICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDBiMGY1YmZwLTUwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzE3YXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA0LAorICB9LAorICB7IC8vIEVudHJ5IDY0OAorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwMGIwZjViZnAtNTAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMTdhcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA0LAorICB9LAorICB7IC8vIEVudHJ5IDY0OQorICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM1ZDcyZmExMXAtNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5Yjk2MzEzcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNjUwCisgICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM1ZDcyZmExMXAtNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5Yjk2MzEzcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA0LAorICB9LAorICB7IC8vIEVudHJ5IDY1MQorICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ4NWViMTk1ODRwLTQ3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjk3ZDViZmY4N3AtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3A1LAorICB9LAorICB7IC8vIEVudHJ5IDY1MgorICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDg1ZWIxOTU4NHAtNDcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTdkNWJmZjg3cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3A1LAorICB9LAorICB7IC8vIEVudHJ5IDY1MworICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI2ZjVmNDNiNGNwLTQ5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiMjIwYzVlOXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA1LAorICB9LAorICB7IC8vIEVudHJ5IDY1NAorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjZmNWY0M2I0Y3AtNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNWU5cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA1LAorICB9LAorICB7IC8vIEVudHJ5IDY1NQorICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmJmYzMzYjYxZnAtNDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGU2ZTU4YzRjcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cDUsCisgIH0sCisgIHsgLy8gRW50cnkgNjU2CisgICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmJmYzMzYjYxZnAtNDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGU2ZTU4YzRjcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA1LAorICB9LAorICB7IC8vIEVudHJ5IDY1NworICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ0Mzc5MjZmMjVwLTQ2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTVmNTZmZmUxZHAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3A2LAorICB9LAorICB7IC8vIEVudHJ5IDY1OAorICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDQzNzkyNmYyNXAtNDYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNWY1NmZmZTFkcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3A2LAorICB9LAorICB7IC8vIEVudHJ5IDY1OQorICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI2Y2IwMTUxN2RwLTQ4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMTdhN3AtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA2LAorICB9LAorICB7IC8vIEVudHJ5IDY2MAorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjZjYjAxNTE3ZHAtNDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWM4ODMxN2E3cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA2LAorICB9LAorICB7IC8vIEVudHJ5IDY2MQorICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmE3NzM2YTY1OHAtNDcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzliOTYzMTMxcC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cDYsCisgIH0sCisgIHsgLy8gRW50cnkgNjYyCisgICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmE3NzM2YTY1OHAtNDcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzliOTYzMTMxcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA2LAorICB9LAorICB7IC8vIEVudHJ5IDY2MworICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDMzOWIxNWQ1YWFwLTQ1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTdkNWJmZjg3NHAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxN3A3LAorICB9LAorICB7IC8vIEVudHJ5IDY2NAorICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwMzM5YjE1ZDVhYXAtNDUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5N2Q1YmZmODc0cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3A3LAorICB9LAorICB7IC8vIEVudHJ5IDY2NQorICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI2MWYzNWFhNDNwLTQ3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNWU5ZHAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA3LAorICB9LAorICB7IC8vIEVudHJ5IDY2NgorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjYxZjM1YWE0M3AtNDcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1ZTlkcC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA3LAorICB9LAorICB7IC8vIEVudHJ5IDY2NworICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNjQ2MzQyNjczYXAtNDYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjNGM2cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cDcsCisgIH0sCisgIHsgLy8gRW50cnkgNjY4CisgICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNjQ2MzQyNjczYXAtNDYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjNGM2cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA3LAorICB9LAorICB7IC8vIEVudHJ5IDY2OQorICAgIDB4MS42YTA5ZTY2N2YzYmNmZmE2MGMwZjUzMzQwZmQyNDkwNHAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzkyNmI1OWU2ZDM5OWJkMWI5MDZjcC0xLAorICAgIDB4MS4yZDk3YzdmMzMyMWQxcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNjcwCisgICAgLTB4MS42YTA5ZTY2N2YzYmNmZmE2MGMwZjUzMzQwZmQyNDkwNHAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzkyNmI1OWU2ZDM5OWJkMWI5MDZjcC0xLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXAxLAorICB9LAorICB7IC8vIEVudHJ5IDY3MQorICAgIDB4MS42YTA5ZTY2N2YzYmNkMjY0Y2Y0MjU0YmM3YWIwYzlmYXAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2JmYWM5NmIzZDIxMTVhM2MzZTIxcC0xLAorICAgIDB4MS4yZDk3YzdmMzMyMWQycDEsCisgIH0sCisgIHsgLy8gRW50cnkgNjcyCisgICAgLTB4MS42YTA5ZTY2N2YzYmNkMjY0Y2Y0MjU0YmM3YWIwYzlmYXAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2JmYWM5NmIzZDIxMTVhM2MzZTIxcC0xLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMnAxLAorICB9LAorICB7IC8vIEVudHJ5IDY3MworICAgIDB4MS42YTA5ZTY2N2YzYmNhNTIzOTI3NTU2NDRkZmU3MjM1N3AtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2VjZWRkMzgwZDA4OGYxYjRjNDNjcC0xLAorICAgIDB4MS4yZDk3YzdmMzMyMWQzcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNjc0CisgICAgLTB4MS42YTA5ZTY2N2YzYmNhNTIzOTI3NTU2NDRkZmU3MjM1N3AtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2VjZWRkMzgwZDA4OGYxYjRjNDNjcC0xLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkM3AxLAorICB9LAorICB7IC8vIEVudHJ5IDY3NQorICAgIC0weDEuNmEwOWU2NjdmM2JjOGMyZGYxYjc1MmI2MDZhMGE0NzJwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmQwNWUzNzQzZWQ0MTdjNDRmYmE0NnAtMSwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZHAxLAorICB9LAorICB7IC8vIEVudHJ5IDY3NgorICAgIDB4MS42YTA5ZTY2N2YzYmM4YzJkZjFiNzUyYjYwNmEwYTQ3MnAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiZDA1ZTM3NDNlZDQxN2M0NGZiYTQ2cC0xLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZHAxLAorICB9LAorICB7IC8vIEVudHJ5IDY3NworICAgIC0weDEuNmEwOWU2NjdmM2JjYjk2ZjJlODQ1MTJkYTQ4OGZmMmRwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmNkOGEyMzc3MWQ1YTAyZmY1ZTg0M3AtMSwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZXAxLAorICB9LAorICB7IC8vIEVudHJ5IDY3OAorICAgIDB4MS42YTA5ZTY2N2YzYmNiOTZmMmU4NDUxMmRhNDg4ZmYyZHAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2Q4YTIzNzcxZDVhMDJmZjVlODQzcC0xLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZXAxLAorICB9LAorICB7IC8vIEVudHJ5IDY3OQorICAgIC0weDEuNmEwOWU2NjdmM2JjZTZiMDZiNTE0ZmE1M2NjOTMyNGZwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmNhYjYwZmFhNGQ3Mjg5NWYzZWVhNXAtMSwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZnAxLAorICB9LAorICB7IC8vIEVudHJ5IDY4MAorICAgIDB4MS42YTA5ZTY2N2YzYmNlNmIwNmI1MTRmYTUzY2M5MzI0ZnAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2FiNjBmYWE0ZDcyODk1ZjNlZWE1cC0xLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZnAxLAorICB9LAorICB7IC8vIEVudHJ5IDY4MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZThiMjdiNmFwLTEsCisgICAgLTB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4Mzc0YzFkMTYzMXAtNTAsCisgICAgMHgxLjJkOTdjN2YzMzIxZDFwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODIKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZThiMjdiNmFwLTEsCisgICAgLTB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4Mzc0YzFkMTYzMXAtNTAsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQxcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjgzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjUwYzliZHAtMSwKKyAgICAtMHgxLmE3OTM5NGM5ZThhMGE1MTU5Y2RlYzFiYTg2Mzc3YzkycC01MywKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMnAyLAorICB9LAorICB7IC8vIEVudHJ5IDY4NAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjUwYzliZHAtMSwKKyAgICAtMHgxLmE3OTM5NGM5ZThhMGE1MTU5Y2RlYzFiYTg2Mzc3YzkycC01MywKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDJwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1ZWYxODEwcC0xLAorICAgIDB4MS45NjFiMWFjZDg1ZDdkNmJhOThjODRmOTE1YmJjYmM2Y3AtNTEsCisgICAgMHgxLjJkOTdjN2YzMzIxZDNwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjVlZjE4MTBwLTEsCisgICAgMHgxLjk2MWIxYWNkODVkN2Q2YmE5OGM4NGY5MTViYmNiYzZjcC01MSwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDNwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODcKKyAgICAtMHgxLjZhMDllNjY3ZjNiZDM5NjIxOTNiNTM3MzA2OWJhMGMycC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmM1OGFmNGNiYWQzNWFhYmIyMDBmNHAtMSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NHAyLAorICB9LAorICB7IC8vIEVudHJ5IDY4OAorICAgIDB4MS42YTA5ZTY2N2YzYmQzOTYyMTkzYjUzNzMwNjliYTBjMnAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjNThhZjRjYmFkMzVhYWJiMjAwZjRwLTEsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc0cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjg5CisgICAgLTB4MS42YTA5ZTY2N2YzYmNkZWRmOWZhMTU2ODNlNTFmN2U2MHAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjYjMzMWM2NTRkMDQ5ZWViYTM4MGZwLTEsCisgICAgMHgxLjVmZGJiZTliYmE3NzVwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTAKKyAgICAweDEuNmEwOWU2NjdmM2JjZGVkZjlmYTE1NjgzZTUxZjdlNjBwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2IzMzFjNjU0ZDA0OWVlYmEzODBmcC0xLAorICAgIC0weDEuNWZkYmJlOWJiYTc3NXAyLAorICB9LAorICB7IC8vIEVudHJ5IDY5MQorICAgIC0weDEuNmEwOWU2NjdmM2JjODQ1ZDI2MDc1OTk0YWQwMmJkOThwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiZDBkYjQzZmVlY2QzOTFiMjFkMGM0cC0xLAorICAgIDB4MS41ZmRiYmU5YmJhNzc2cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjkyCisgICAgMHgxLjZhMDllNjY3ZjNiYzg0NWQyNjA3NTk5NGFkMDJiZDk4cC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmQwZGI0M2ZlZWNkMzkxYjIxZDBjNHAtMSwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzZwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTMKKyAgICAweDEuNmEwOWU2NjdmM2JjNTI3MWU0OGI1Mjc2ZjQzODU3OWZwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiZDNmOWY4MTZhZDQ1NmJhMWE1NGE5cC0xLAorICAgIDB4MS5jNDYzYWJlY2NiMmJhcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjk0CisgICAgLTB4MS42YTA5ZTY2N2YzYmM1MjcxZTQ4YjUyNzZmNDM4NTc5ZnAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JkM2Y5ZjgxNmFkNDU2YmExYTU0YTlwLTEsCisgICAgLTB4MS5jNDYzYWJlY2NiMmJhcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjk1CisgICAgMHgxLjZhMDllNjY3ZjNiY2FjZjQ1ZTI1NGY2NjM4Y2ZlOGM2cC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNlNTFkMDdkMGQ3Njc5YTJkOGM1M3AtMSwKKyAgICAweDEuYzQ2M2FiZWNjYjJiYnAyLAorICB9LAorICB7IC8vIEVudHJ5IDY5NgorICAgIC0weDEuNmEwOWU2NjdmM2JjYWNmNDVlMjU0ZjY2MzhjZmU4YzZwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2U1MWQwN2QwZDc2NzlhMmQ4YzUzcC0xLAorICAgIC0weDEuYzQ2M2FiZWNjYjJiYnAyLAorICB9LAorICB7IC8vIEVudHJ5IDY5NworICAgIDB4MS42YTA5ZTY2N2YzYmQwNzc2ZDdiZjRjNTU2NmM2ZGI4N3AtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjOGE5YThlMzZkYTc4NjNhMDI1OTdwLTEsCisgICAgMHgxLmM0NjNhYmVjY2IyYmNwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTgKKyAgICAtMHgxLjZhMDllNjY3ZjNiZDA3NzZkN2JmNGM1NTY2YzZkYjg3cC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmM4YTlhOGUzNmRhNzg2M2EwMjU5N3AtMSwKKyAgICAtMHgxLmM0NjNhYmVjY2IyYmNwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTMxMTc0ZjVwLTEsCisgICAgMHgxLjU4M2ViZWZmNjVjYzIyNjQ4MGFlNjg1YzJhZDlhZmRhcC01MCwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZHAyLAorICB9LAorICB7IC8vIEVudHJ5IDcwMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTMxMTc0ZjVwLTEsCisgICAgMHgxLjU4M2ViZWZmNjVjYzIyNjQ4MGFlNjg1YzJhZDlhZmRhcC01MCwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWRwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmUxOTRjZDRwLTEsCisgICAgMHgxLjYwZmFmYmZkOTczMDg5OTIwMmI5YTE3MGM0ZTZhODQ5cC01MiwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZXAyLAorICB9LAorICB7IC8vIEVudHJ5IDcwMgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmUxOTRjZDRwLTEsCisgICAgMHgxLjYwZmFmYmZkOTczMDg5OTIwMmI5YTE3MGM0ZTZhODQ5cC01MiwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWVwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjkyMTI0YjRwLTEsCisgICAgLTB4MS40ZjgyODIwMTM0NjdiYjM2ZmVhMzJmNDc5YmQ0OGY0YXAtNTEsCisgICAgMHgxLmY2YTdhMjk1NTM4NWZwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5MjEyNGI0cC0xLAorICAgIC0weDEuNGY4MjgyMDEzNDY3YmIzNmZlYTMyZjQ3OWJkNDhmNGFwLTUxLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZnAyLAorICB9LAorICB7IC8vIEVudHJ5IDcwNQorICAgIDB4MS42YTA5ZTY2N2YzYmRmYWUxZGNjZTRmMTg2NjU2ODFjNnAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiYjk3MmY4OTI3ZDdiNDZjNzM3NDg1cC0xLAorICAgIDB4MS4xNDc1Y2M5ZWVkZWZmcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzA2CisgICAgLTB4MS42YTA5ZTY2N2YzYmRmYWUxZGNjZTRmMTg2NjU2ODFjNnAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiYjk3MmY4OTI3ZDdiNDZjNzM3NDg1cC0xLAorICAgIC0weDEuMTQ3NWNjOWVlZGVmZnAzLAorICB9LAorICB7IC8vIEVudHJ5IDcwNworICAgIDB4MS42YTA5ZTY2N2YzYmQ0NWRjZTk5YTU1M2E2ZDdkODA2NXAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzRjMzQ3YzViZDE5MzNjYTMyNjFmcC0xLAorICAgIDB4MS4xNDc1Y2M5ZWVkZnAzLAorICB9LAorICB7IC8vIEVudHJ5IDcwOAorICAgIC0weDEuNmEwOWU2NjdmM2JkNDVkY2U5OWE1NTNhNmQ3ZDgwNjVwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmM0YzM0N2M1YmQxOTMzY2EzMjYxZnAtMSwKKyAgICAtMHgxLjE0NzVjYzllZWRmcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzA5CisgICAgMHgxLjZhMDllNjY3ZjNiYzkwZDdmNjY2NWI1YzFhMjIwNTZhcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JkMDEzOTZmOGZjYjcxYjI1MDVlMWZwLTEsCisgICAgMHgxLjE0NzVjYzllZWRmMDFwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTAKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzkwZDdmNjY2NWI1YzFhMjIwNTZhcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JkMDEzOTZmOGZjYjcxYjI1MDVlMWZwLTEsCisgICAgLTB4MS4xNDc1Y2M5ZWVkZjAxcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzExCisgICAgMHgxLjM0ZjI3Mjk5M2QxNDE0YTJiMzliZDgzNzNlMGQ2Yjk0cC00OSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmEyYzllZGE4cC0xLAorICAgIDB4MS4yZDk3YzdmMzMyMWQxcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzEyCisgICAgLTB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4MzczZTBkNmI5NHAtNDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZhMmM5ZWRhOHAtMSwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDFwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTMKKyAgICAweDEuYTc5Mzk0YzllOGEwYTUxNTljZGVjMWJhODVhNjg4YmRwLTUyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQ0MzI2ZjVwLTEsCisgICAgMHgxLjJkOTdjN2YzMzIxZDJwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTQKKyAgICAtMHgxLmE3OTM5NGM5ZThhMGE1MTU5Y2RlYzFiYTg1YTY4OGJkcC01MiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkNDMyNmY1cC0xLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMnAzLAorICB9LAorICB7IC8vIEVudHJ5IDcxNQorICAgIC0weDEuOTYxYjFhY2Q4NWQ3ZDZiYTk4Yzg0ZjkxNTNjMGNjMTZwLTUwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDdiYzYwNDFwLTEsCisgICAgMHgxLjJkOTdjN2YzMzIxZDNwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTYKKyAgICAweDEuOTYxYjFhY2Q4NWQ3ZDZiYTk4Yzg0ZjkxNTNjMGNjMTZwLTUwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDdiYzYwNDFwLTEsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQzcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzE3CisgICAgLTB4MS42YTA5ZTY2N2YzYmI5MGYyMjBmODU2ZDBiMWE0MDZjM3AtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiZTAxMWY0NGZkY2ZmYzE2N2Y3MTQwcC0xLAorICAgIDB4MS40NmI5YzM0Nzc2NGEycDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzE4CisgICAgMHgxLjZhMDllNjY3ZjNiYjkwZjIyMGY4NTZkMGIxYTQwNmMzcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JlMDExZjQ0ZmRjZmZjMTY3ZjcxNDBwLTEsCisgICAgLTB4MS40NmI5YzM0Nzc2NGEycDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzE5CisgICAgLTB4MS42YTA5ZTY2N2YzYmM0NWY3MTQyYzUwYWY4NGYyNmM3NXAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiZDRjMWE1MWM5ZDYxZTIwYzUyM2Y3cC0xLAorICAgIDB4MS40NmI5YzM0Nzc2NGEzcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzIwCisgICAgMHgxLjZhMDllNjY3ZjNiYzQ1ZjcxNDJjNTBhZjg0ZjI2Yzc1cC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JkNGMxYTUxYzlkNjFlMjBjNTIzZjdwLTEsCisgICAgLTB4MS40NmI5YzM0Nzc2NGEzcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzIxCisgICAgLTB4MS42YTA5ZTY2N2YzYmNmYWZjMDc2MDRhOGRmZGJlNTg4ZHAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzk3MTU1ZTk1ZGMzZmQwODg1ZDE0cC0xLAorICAgIDB4MS40NmI5YzM0Nzc2NGE0cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzIyCisgICAgMHgxLjZhMDllNjY3ZjNiY2ZhZmMwNzYwNGE4ZGZkYmU1ODhkcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JjOTcxNTVlOTVkYzNmZDA4ODVkMTRwLTEsCisgICAgLTB4MS40NmI5YzM0Nzc2NGE0cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzIzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5ZDYzNGU5ZnAtMSwKKyAgICAtMHgxLjNkYzU4NWIyYzc0MjE4MTMyNmUwN2M0MDc0ODg3M2JicC00OSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NHAzLAorICB9LAorICB7IC8vIEVudHJ5IDcyNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5ZDYzNGU5ZnAtMSwKKyAgICAtMHgxLjNkYzU4NWIyYzc0MjE4MTMyNmUwN2M0MDc0ODg3M2JicC00OSwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzRwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjNDYxMTc4cC0xLAorICAgIC0weDEuZWUyYzJkOTYzYTEwYzA5OTM3MDNlMjA0NDY0NjMzMDFwLTUyLAorICAgIDB4MS41ZmRiYmU5YmJhNzc1cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzI2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjNDYxMTc4cC0xLAorICAgIC0weDEuZWUyYzJkOTYzYTEwYzA5OTM3MDNlMjA0NDY0NjMzMDFwLTUyLAorICAgIC0weDEuNWZkYmJlOWJiYTc3NXAzLAorICB9LAorICB7IC8vIEVudHJ5IDcyNworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGIyOGQ0NTFwLTEsCisgICAgMHgxLjg0NzRmNDlhNzE3YmNmZDliMjNmMDc3ZWU0ZDA5MGNmcC01MCwKKyAgICAweDEuNWZkYmJlOWJiYTc3NnAzLAorICB9LAorICB7IC8vIEVudHJ5IDcyOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkYjI4ZDQ1MXAtMSwKKyAgICAweDEuODQ3NGY0OWE3MTdiY2ZkOWIyM2YwNzdlZTRkMDkwY2ZwLTUwLAorICAgIC0weDEuNWZkYmJlOWJiYTc3NnAzLAorICB9LAorICB7IC8vIEVudHJ5IDcyOQorICAgIC0weDEuNmEwOWU2NjdmM2JlMDc1Y2FkMmQ1MGRmYzY4Y2Q4OGZwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiYjhhYjRiOGM4ZDVlY2Y2YjkxMGQ2cC0xLAorICAgIDB4MS43OGZkYjllZmZlYTQ1cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzMwCisgICAgMHgxLjZhMDllNjY3ZjNiZTA3NWNhZDJkNTBkZmM2OGNkODhmcC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmI4YWI0YjhjOGQ1ZWNmNmI5MTBkNnAtMSwKKyAgICAtMHgxLjc4ZmRiOWVmZmVhNDVwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzEKKyAgICAtMHgxLjZhMDllNjY3ZjNiZDUyNTdiOWY5NTcwMWQzZjEzZjVkcC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmMzZmI5YWJmY2NmY2JjZDI2MmFhMHAtMSwKKyAgICAweDEuNzhmZGI5ZWZmZWE0NnAzLAorICB9LAorICB7IC8vIEVudHJ5IDczMgorICAgIDB4MS42YTA5ZTY2N2YzYmQ1MjU3YjlmOTU3MDFkM2YxM2Y1ZHAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjM2ZiOWFiZmNjZmNiY2QyNjJhYTBwLTEsCisgICAgLTB4MS43OGZkYjllZmZlYTQ2cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzMzCisgICAgLTB4MS42YTA5ZTY2N2YzYmM5ZDUyYzZjNTVkMjM4NmQzMmM5MnAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjZjRiZTlmMzBjOWFhNDkxMGNhY2ZwLTEsCisgICAgMHgxLjc4ZmRiOWVmZmVhNDdwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzQKKyAgICAweDEuNmEwOWU2NjdmM2JjOWQ1MmM2YzU1ZDIzODZkMzJjOTJwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2Y0YmU5ZjMwYzlhYTQ5MTBjYWNmcC0xLAorICAgIC0weDEuNzhmZGI5ZWZmZWE0N3AzLAorICB9LAorICB7IC8vIEVudHJ5IDczNQorICAgIDB4MS42YTA5ZTY2N2YzYmI4NDc3NTA5OTU1MDkzYmIyOTJiZXAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JlMGQ5YTE1NWNkMWMzNzY3ZWI3YjNwLTEsCisgICAgMHgxLmFiNDFiMDk4ODZmZThwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzYKKyAgICAtMHgxLjZhMDllNjY3ZjNiYjg0Nzc1MDk5NTUwOTNiYjI5MmJlcC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmUwZDlhMTU1Y2QxYzM3NjdlYjdiM3AtMSwKKyAgICAtMHgxLmFiNDFiMDk4ODZmZThwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzcKKyAgICAweDEuNmEwOWU2NjdmM2JjMzk3YzQzY2Q0ZWU4MTUzZTYwYTBwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiZDU4OTUyMjI4ZDdlNTg3MDFkMjk5cC0xLAorICAgIDB4MS5hYjQxYjA5ODg2ZmU5cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzM4CisgICAgLTB4MS42YTA5ZTY2N2YzYmMzOTdjNDNjZDRlZTgxNTNlNjBhMHAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JkNTg5NTIyMjhkN2U1ODcwMWQyOTlwLTEsCisgICAgLTB4MS5hYjQxYjA5ODg2ZmU5cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzM5CisgICAgMHgxLjZhMDllNjY3ZjNiY2VlODEzNzAxNDhjNjk0NDdiNGU3cC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNhMzkwMmVmNGRlMDczZDAyNzNlNnAtMSwKKyAgICAweDEuYWI0MWIwOTg4NmZlYXAzLAorICB9LAorICB7IC8vIEVudHJ5IDc0MAorICAgIC0weDEuNmEwOWU2NjdmM2JjZWU4MTM3MDE0OGM2OTQ0N2I0ZTdwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2EzOTAyZWY0ZGUwNzNkMDI3M2U2cC0xLAorICAgIC0weDEuYWI0MWIwOTg4NmZlYXAzLAorICB9LAorICB7IC8vIEVudHJ5IDc0MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5MjIxNDFiNHAtMSwKKyAgICAweDEuNGY2YmFiZTVkYjllMWVmNDBkNjljNDUyZTEzNTU5MWRwLTQ5LAorICAgIDB4MS5jNDYzYWJlY2NiMmJhcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzQyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5MjIxNDFiNHAtMSwKKyAgICAweDEuNGY2YmFiZTVkYjllMWVmNDBkNjljNDUyZTEzNTU5MWRwLTQ5LAorICAgIC0weDEuYzQ2M2FiZWNjYjJiYXAzLAorICB9LAorICB7IC8vIEVudHJ5IDc0MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOWQ3MTdhN3AtMSwKKyAgICAweDEuM2RhZWFmOTc2ZTc4N2JkMDM1YTcxMTRiZTM4N2I1YzNwLTUxLAorICAgIDB4MS5jNDYzYWJlY2NiMmJicDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzQ0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOWQ3MTdhN3AtMSwKKyAgICAweDEuM2RhZWFmOTc2ZTc4N2JkMDM1YTcxMTRiZTM4N2I1YzNwLTUxLAorICAgIC0weDEuYzQ2M2FiZWNjYjJiYnAzLAorICB9LAorICB7IC8vIEVudHJ5IDc0NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlMThjZWQ5YXAtMSwKKyAgICAtMHgxLjYxMjhhODM0NDhjM2MyMTdlNTJjNzc1YTA2OThkMjZhcC01MCwKKyAgICAweDEuYzQ2M2FiZWNjYjJiY3AzLAorICB9LAorICB7IC8vIEVudHJ5IDc0NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTE4Y2VkOWFwLTEsCisgICAgLTB4MS42MTI4YTgzNDQ4YzNjMjE3ZTUyYzc3NWEwNjk4ZDI2YXAtNTAsCisgICAgLTB4MS5jNDYzYWJlY2NiMmJjcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzQ3CisgICAgMHgxLjZhMDllNjY3ZjNiZTEzZDc3ZDhjNTJhNzI2NTUwZWFjcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JiN2UzOWU4NjlkNDI1ODA5MDhjN2NwLTEsCisgICAgMHgxLmRkODVhNzQxMGY1OGJwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDgKKyAgICAtMHgxLjZhMDllNjY3ZjNiZTEzZDc3ZDhjNTJhNzI2NTUwZWFjcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JiN2UzOWU4NjlkNDI1ODA5MDhjN2NwLTEsCisgICAgLTB4MS5kZDg1YTc0MTBmNThicDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzQ5CisgICAgMHgxLjZhMDllNjY3ZjNiZDVlZDI4YTU4NThjOTM5ZjZkZGFhcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JjMzMzZWRiOWRjZTA0NWQzYjBlNzVwLTEsCisgICAgMHgxLmRkODVhNzQxMGY1OGNwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTAKKyAgICAtMHgxLjZhMDllNjY3ZjNiZDVlZDI4YTU4NThjOTM5ZjZkZGFhcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JjMzMzZWRiOWRjZTA0NWQzYjBlNzVwLTEsCisgICAgLTB4MS5kZDg1YTc0MTBmNThjcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzUxCisgICAgMHgxLjZhMDllNjY3ZjNiY2E5Y2Q5NzI0NWVlYWYzMTYzMzBlcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JjZTg0M2NlZDFjN2UyZGY2MzE2ZDRwLTEsCisgICAgMHgxLmRkODVhNzQxMGY1OGRwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTIKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2E5Y2Q5NzI0NWVlYWYzMTYzMzBlcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JjZTg0M2NlZDFjN2UyZGY2MzE2ZDRwLTEsCisgICAgLTB4MS5kZDg1YTc0MTBmNThkcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzUzCisgICAgMHgxLjU4M2ViZWZmNjVjYzIyNjQ4MGFlNjg1YzE3NjVkZWMxcC00OSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhjNDVkM2Q0cC0xLAorICAgIDB4MS5mNmE3YTI5NTUzODVkcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzU0CisgICAgLTB4MS41ODNlYmVmZjY1Y2MyMjY0ODBhZTY4NWMxNzY1ZGVjMXAtNDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4YzQ1ZDNkNHAtMSwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWRwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTUKKyAgICAweDEuNjBmYWZiZmQ5NzMwODk5MjAyYjlhMTcwYzM5NzFlODZwLTUxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjg2NTMzNTNwLTEsCisgICAgMHgxLmY2YTdhMjk1NTM4NWVwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTYKKyAgICAtMHgxLjYwZmFmYmZkOTczMDg5OTIwMmI5YTE3MGMzOTcxZTg2cC01MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4NjUzMzUzcC0xLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZXAzLAorICB9LAorICB7IC8vIEVudHJ5IDc1NworICAgIC0weDEuNGY4MjgyMDEzNDY3YmIzNmZlYTMyZjQ3OTc1M2ZlN2FwLTUwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTQ4NDkyZDNwLTEsCisgICAgMHgxLmY2YTdhMjk1NTM4NWZwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTgKKyAgICAweDEuNGY4MjgyMDEzNDY3YmIzNmZlYTMyZjQ3OTc1M2ZlN2FwLTUwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTQ4NDkyZDNwLTEsCisgICAgLTB4MS5mNmE3YTI5NTUzODVmcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzU5CisgICAgLTB4MS42YTA5ZTY2N2YzYmEwZGYyOTlkMjVmODJmNjM5MjUxZnAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiZjg0MWVjYzIzYzc0NTk5MDc2YTgxcC0xLAorICAgIDB4MS4wN2U0Y2VmNGNiZDk2cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzYwCisgICAgMHgxLjZhMDllNjY3ZjNiYTBkZjI5OWQyNWY4MmY2MzkyNTFmcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JmODQxZWNjMjNjNzQ1OTkwNzZhODFwLTEsCisgICAgLTB4MS4wN2U0Y2VmNGNiZDk2cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzYxCisgICAgLTB4MS42YTA5ZTY2N2YzYmI3N2ZjODAzYTUzNDFjNTUyZmUwZnAtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiZTFhMTRlNWJiZDM4YWQ2MGZkZDdicC0xLAorICAgIDB4MS4wN2U0Y2VmNGNiZDk3cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzYyCisgICAgMHgxLjZhMDllNjY3ZjNiYjc3ZmM4MDNhNTM0MWM1NTJmZTBmcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JlMWExNGU1YmJkMzhhZDYwZmRkN2JwLTEsCisgICAgLTB4MS4wN2U0Y2VmNGNiZDk3cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzYzCisgICAgLTB4MS42YTA5ZTY2N2YzYmNlMjA2NjZhMjQ2ZmYyYTYyZjA5N3AtMSwKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2IwMGFmZjUzZGZjZWE5MGU2YTBjcC0xLAorICAgIDB4MS4wN2U0Y2VmNGNiZDk4cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzY0CisgICAgMHgxLjZhMDllNjY3ZjNiY2UyMDY2NmEyNDZmZjJhNjJmMDk3cC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JjYjAwYWZmNTNkZmNlYTkwZTZhMGNwLTEsCisgICAgLTB4MS4wN2U0Y2VmNGNiZDk4cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzY1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQyNTMxYTQzZHAtMSwKKyAgICAtMHgxLmIwODhlOTBjNzdmZDEyZWE3OWY5ODYzMWU2ZjBiNzRicC00OCwKKyAgICAweDEuMTQ3NWNjOWVlZGVmZnA0LAorICB9LAorICB7IC8vIEVudHJ5IDc2NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQyNTMxYTQzZHAtMSwKKyAgICAtMHgxLmIwODhlOTBjNzdmZDEyZWE3OWY5ODYzMWU2ZjBiNzRicC00OCwKKyAgICAtMHgxLjE0NzVjYzllZWRlZmZwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjg2NDM3NjU2cC0xLAorICAgIC0weDEuNjExMWQyMThlZmZhMjVkNGYzZjMwYzY1NGQ3YzM2YTFwLTQ5LAorICAgIDB4MS4xNDc1Y2M5ZWVkZnA0LAorICB9LAorICB7IC8vIEVudHJ5IDc2OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4NjQzNzY1NnAtMSwKKyAgICAtMHgxLjYxMTFkMjE4ZWZmYTI1ZDRmM2YzMGM2NTRkN2MzNmExcC00OSwKKyAgICAtMHgxLjE0NzVjYzllZWRmcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzY5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNzU1NDg2ZnAtMSwKKyAgICAweDEuM2RkYzViY2UyMDBiYjQ1NjE4MTllNzM1MjdmNWE2ZDdwLTUwLAorICAgIDB4MS4xNDc1Y2M5ZWVkZjAxcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzcwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU3NTU0ODZmcC0xLAorICAgIDB4MS4zZGRjNWJjZTIwMGJiNDU2MTgxOWU3MzUyN2Y1YTZkN3AtNTAsCisgICAgLTB4MS4xNDc1Y2M5ZWVkZjAxcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzcxCisgICAgLTB4MS42YTA5ZTY2N2YzYmVkNTU3NDExZjRlNGMxMTRkNzM1N3AtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JhYmNiYTI0ZDZkODdlY2M4ZjgzYjRwLTEsCisgICAgMHgxLjIxMDZjYTQ5MTAwNjhwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzIKKyAgICAweDEuNmEwOWU2NjdmM2JlZDU1NzQxMWY0ZTRjMTE0ZDczNTdwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiYWJjYmEyNGQ2ZDg3ZWNjOGY4M2I0cC0xLAorICAgIC0weDEuMjEwNmNhNDkxMDA2OHA0LAorICB9LAorICB7IC8vIEVudHJ5IDc3MworICAgIC0weDEuNmEwOWU2NjdmM2JkNmI0ZDVhYjc1YTkwOWY4ZTViNGNwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiYzI2YzQwYjNlY2MzY2VjZTFkMWEwcC0xLAorICAgIDB4MS4yMTA2Y2E0OTEwMDY5cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzc0CisgICAgMHgxLjZhMDllNjY3ZjNiZDZiNGQ1YWI3NWE5MDlmOGU1YjRjcC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmMyNmM0MGIzZWNjM2NlY2UxZDFhMHAtMSwKKyAgICAtMHgxLjIxMDZjYTQ5MTAwNjlwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzUKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzAxNDM3NDRmNjZkM2MzYzU1Y2Q5cC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmQ5MGNkZjFhNmJmZjlhMzJhMzkyM3AtMSwKKyAgICAweDEuMjEwNmNhNDkxMDA2YXA0LAorICB9LAorICB7IC8vIEVudHJ5IDc3NgorICAgIDB4MS42YTA5ZTY2N2YzYmMwMTQzNzQ0ZjY2ZDNjM2M1NWNkOXAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JkOTBjZGYxYTZiZmY5YTMyYTM5MjNwLTEsCisgICAgLTB4MS4yMTA2Y2E0OTEwMDZhcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzc3CisgICAgLTB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4MzcwNWNlYzEyMHAtNDgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZThiMjdiNmEycC0xLAorICAgIDB4MS4yZDk3YzdmMzMyMWQxcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzc4CisgICAgMHgxLjM0ZjI3Mjk5M2QxNDE0YTJiMzliZDgzNzA1Y2VjMTIwcC00OCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlOGIyN2I2YTJwLTEsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQxcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzc5CisgICAgLTB4MS5hNzkzOTRjOWU4YTBhNTE1OWNkZWMxYmE4MzYyYjk2OHAtNTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1MGM5YmQ0cC0xLAorICAgIDB4MS4yZDk3YzdmMzMyMWQycDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzgwCisgICAgMHgxLmE3OTM5NGM5ZThhMGE1MTU5Y2RlYzFiYTgzNjJiOTY4cC01MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjUwYzliZDRwLTEsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQycDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzgxCisgICAgMHgxLjk2MWIxYWNkODVkN2Q2YmE5OGM4NGY5MTMzZDEwYWJlcC00OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNWVmMTgxMDdwLTEsCisgICAgMHgxLjJkOTdjN2YzMzIxZDNwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODIKKyAgICAtMHgxLjk2MWIxYWNkODVkN2Q2YmE5OGM4NGY5MTMzZDEwYWJlcC00OSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNWVmMTgxMDdwLTEsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQzcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzgzCisgICAgMHgxLjZhMDllNjY3ZjNiYTAxNzdjOTczNWRiYjcyZjA5ZjY1cC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmY5MDk5OWM4MmM5MGNlYmFmOWYzZnAtMSwKKyAgICAweDEuM2EyOGM1OWQ1NDMzOXA0LAorICB9LAorICB7IC8vIEVudHJ5IDc4NAorICAgIC0weDEuNmEwOWU2NjdmM2JhMDE3N2M5NzM1ZGJiNzJmMDlmNjVwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiZjkwOTk5YzgyYzkwY2ViYWY5ZjNmcC0xLAorICAgIC0weDEuM2EyOGM1OWQ1NDMzOXA0LAorICB9LAorICB7IC8vIEVudHJ5IDc4NQorICAgIDB4MS42YTA5ZTY2N2YzYmI2YjgxYWZkYjUxN2E0ZTg1NDhiNHAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JlMjY4ZmI2MWFkNTUyMzUzMmUyOThwLTEsCisgICAgMHgxLjNhMjhjNTlkNTQzM2FwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODYKKyAgICAtMHgxLjZhMDllNjY3ZjNiYjZiODFhZmRiNTE3YTRlODU0OGI0cC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmUyNjhmYjYxYWQ1NTIzNTMyZTI5OHAtMSwKKyAgICAtMHgxLjNhMjhjNTlkNTQzM2FwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODcKKyAgICAweDEuNmEwOWU2NjdmM2JjZDU4Yjk2NDM0NTM3YzAxMDBiOWJwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JjODVjZmIyZTE5NjE0YWMzZjg4cC0xLAorICAgIDB4MS4zYTI4YzU5ZDU0MzNicDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzg4CisgICAgLTB4MS42YTA5ZTY2N2YzYmNkNThiOTY0MzQ1MzdjMDEwMGI5YnAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjYmM4NWNmYjJlMTk2MTRhYzNmODhwLTEsCisgICAgLTB4MS4zYTI4YzU5ZDU0MzNicDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzg5CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDA3MTFmNDM3cC0xLAorICAgIDB4MS5iOTViZmMyNjAyMmIxNjVhZWQzZTJhM2IxMjM4MjQ3OXAtNDgsCisgICAgMHgxLjQ2YjljMzQ3NzY0YTJwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDA3MTFmNDM3cC0xLAorICAgIDB4MS5iOTViZmMyNjAyMmIxNjVhZWQzZTJhM2IxMjM4MjQ3OXAtNDgsCisgICAgLTB4MS40NmI5YzM0Nzc2NGEycDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzkxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5YzllYzgzcC0xLAorICAgIDB4MS43MmI3Zjg0YzA0NTYyY2I1ZGE3YzU0NzdiOTU3YWRlYnAtNDksCisgICAgMHgxLjQ2YjljMzQ3NzY0YTNwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5YzllYzgzcC0xLAorICAgIDB4MS43MmI3Zjg0YzA0NTYyY2I1ZGE3YzU0NzdiOTU3YWRlYnAtNDksCisgICAgLTB4MS40NmI5YzM0Nzc2NGEzcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzkzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODFlNGNmcC0xLAorICAgIC0weDEuMWE5MDBmNjdmNzUzYTY5NDRiMDc1NzEwNDhmMWNhZDJwLTUwLAorICAgIDB4MS40NmI5YzM0Nzc2NGE0cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzk0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzgxZTRjZnAtMSwKKyAgICAtMHgxLjFhOTAwZjY3Zjc1M2E2OTQ0YjA3NTcxMDQ4ZjFjYWQycC01MCwKKyAgICAtMHgxLjQ2YjljMzQ3NzY0YTRwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTUKKyAgICAweDEuNmEwOWU2NjdmM2JlZTFkMjExN2U1MDEzNjlmYmZmZWZwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmFiMDNmNTQ3N2Q2Yjc0ZjRkNTVkNXAtMSwKKyAgICAweDEuNTM0YWMwZjE5ODYwYnA0LAorICB9LAorICB7IC8vIEVudHJ5IDc5NgorICAgIC0weDEuNmEwOWU2NjdmM2JlZTFkMjExN2U1MDEzNjlmYmZmZWZwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmFiMDNmNTQ3N2Q2Yjc0ZjRkNTVkNXAtMSwKKyAgICAtMHgxLjUzNGFjMGYxOTg2MGJwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTcKKyAgICAweDEuNmEwOWU2NjdmM2JkNzdjODJiMTY1YzU4MDRiN2I4NDNwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmMxYTQ5M2FkZmNhNzU3YzFhNzQxZnAtMSwKKyAgICAweDEuNTM0YWMwZjE5ODYwY3A0LAorICB9LAorICB7IC8vIEVudHJ5IDc5OAorICAgIC0weDEuNmEwOWU2NjdmM2JkNzdjODJiMTY1YzU4MDRiN2I4NDNwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmMxYTQ5M2FkZmNhNzU3YzFhNzQxZnAtMSwKKyAgICAtMHgxLjUzNGFjMGYxOTg2MGNwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTkKKyAgICAweDEuNmEwOWU2NjdmM2JjMGRiZTQ0YWU2ODliMzU2OThhMmZwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmQ4NDUzMjE0N2JlMzIzZWRkYWMwMXAtMSwKKyAgICAweDEuNTM0YWMwZjE5ODYwZHA0LAorICB9LAorICB7IC8vIEVudHJ5IDgwMAorICAgIC0weDEuNmEwOWU2NjdmM2JjMGRiZTQ0YWU2ODliMzU2OThhMmZwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmQ4NDUzMjE0N2JlMzIzZWRkYWMwMXAtMSwKKyAgICAtMHgxLjUzNGFjMGYxOTg2MGRwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDEKKyAgICAweDEuM2RjNTg1YjJjNzQyMTgxMzI2ZTA3YzQwMzc1NDY0ZGVwLTQ4LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNzU4ZDNhN2NwLTEsCisgICAgMHgxLjVmZGJiZTliYmE3NzRwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDIKKyAgICAtMHgxLjNkYzU4NWIyYzc0MjE4MTMyNmUwN2M0MDM3NTQ2NGRlcC00OCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTc1OGQzYTdjcC0xLAorICAgIC0weDEuNWZkYmJlOWJiYTc3NHA0LAorICB9LAorICB7IC8vIEVudHJ5IDgwMworICAgIDB4MS5lZTJjMmQ5NjNhMTBjMDk5MzcwM2UyMDQ0MmFkN2I4ZHAtNTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTE4NDVlMXAtMSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NXA0LAorICB9LAorICB7IC8vIEVudHJ5IDgwNAorICAgIC0weDEuZWUyYzJkOTYzYTEwYzA5OTM3MDNlMjA0NDJhZDdiOGRwLTUxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjExODQ1ZTFwLTEsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc1cDQsCisgIH0sCisgIHsgLy8gRW50cnkgODA1CisgICAgLTB4MS44NDc0ZjQ5YTcxN2JjZmQ5YjIzZjA3N2VjOGRkMTc1YnAtNDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2Y2EzNTE0N3AtMSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NnA0LAorICB9LAorICB7IC8vIEVudHJ5IDgwNgorICAgIDB4MS44NDc0ZjQ5YTcxN2JjZmQ5YjIzZjA3N2VjOGRkMTc1YnAtNDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2Y2EzNTE0N3AtMSwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzZwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDcKKyAgICAtMHgxLjZhMDllNjY3ZjNiOWY0ZmNmOTE0NWJmM2VmMzlmOTAxcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JmOWQxNDZjZTFjYWQ0M2RlOWIzNTJwLTEsCisgICAgMHgxLjZjNmNiYzQ1ZGM4ZGNwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDgKKyAgICAweDEuNmEwOWU2NjdmM2I5ZjRmY2Y5MTQ1YmYzZWYzOWY5MDFwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmY5ZDE0NmNlMWNhZDQzZGU5YjM1MnAtMSwKKyAgICAtMHgxLjZjNmNiYzQ1ZGM4ZGNwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDkKKyAgICAtMHgxLjZhMDllNjY3ZjNiYjVmMDZkZjdjNGZiMmQ3NDk3MmFlcC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JlMzMwYTg2NzlkNzE5OTNlN2M3MDlwLTEsCisgICAgMHgxLjZjNmNiYzQ1ZGM4ZGRwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTAKKyAgICAweDEuNmEwOWU2NjdmM2JiNWYwNmRmN2M0ZmIyZDc0OTcyYWVwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmUzMzBhODY3OWQ3MTk5M2U3YzcwOXAtMSwKKyAgICAtMHgxLjZjNmNiYzQ1ZGM4ZGRwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTEKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2M5MTBjNWU0NDM3MDU1NGYwNWY0cC0xLAorICAgIC0weDEuNmEwOWU2NjdmM2JjYzkwMGEwMTFlMzVkN2ZkYmY0NTlwLTEsCisgICAgMHgxLjZjNmNiYzQ1ZGM4ZGVwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTIKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkxMGM1ZTQ0MzcwNTU0ZjA1ZjRwLTEsCisgICAgLTB4MS42YTA5ZTY2N2YzYmNjOTAwYTAxMWUzNWQ3ZmRiZjQ1OXAtMSwKKyAgICAtMHgxLjZjNmNiYzQ1ZGM4ZGVwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2U4NTY4NWJkcC0xLAorICAgIC0weDEuYzIyZjBmM2Y4YzU5MTljYjYwODJjZTQ0M2NmOTUwMjJwLTQ4LAorICAgIDB4MS43OGZkYjllZmZlYTQ1cDQsCisgIH0sCisgIHsgLy8gRW50cnkgODE0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2U4NTY4NWJkcC0xLAorICAgIC0weDEuYzIyZjBmM2Y4YzU5MTljYjYwODJjZTQ0M2NmOTUwMjJwLTQ4LAorICAgIC0weDEuNzhmZGI5ZWZmZWE0NXA0LAorICB9LAorICB7IC8vIEVudHJ5IDgxNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNmNiNGE0M2RwLTEsCisgICAgLTB4MS44NDVlMWU3ZjE4YjIzMzk2YzEwNTljOGEyNGMyNjA5Y3AtNDksCisgICAgMHgxLjc4ZmRiOWVmZmVhNDZwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNmNiNGE0M2RwLTEsCisgICAgLTB4MS44NDVlMWU3ZjE4YjIzMzk2YzEwNTljOGEyNGMyNjA5Y3AtNDksCisgICAgLTB4MS43OGZkYjllZmZlYTQ2cDQsCisgIH0sCisgIHsgLy8gRW50cnkgODE3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTEyYzJiY3AtMSwKKyAgICAweDEuZWU4Nzg2MDM5ZDM3MzFhNGZiZTk4ZGQ2ZDMyZmY2MmFwLTUxLAorICAgIDB4MS43OGZkYjllZmZlYTQ3cDQsCisgIH0sCisgIHsgLy8gRW50cnkgODE4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxMTJjMmJjcC0xLAorICAgIDB4MS5lZTg3ODYwMzlkMzczMWE0ZmJlOThkZDZkMzJmZjYyYXAtNTEsCisgICAgLTB4MS43OGZkYjllZmZlYTQ3cDQsCisgIH0sCisgIHsgLy8gRW50cnkgODE5CisgICAgLTB4MS42YTA5ZTY2N2YzYmVlZTRjZTFkZDUxZGFjMjNjNmJkY3AtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JhYTNjNDg0MThkNGVmZDE5ZDA3NGFwLTEsCisgICAgMHgxLjg1OGViNzlhMjBiYWVwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjAKKyAgICAweDEuNmEwOWU2NjdmM2JlZWU0Y2UxZGQ1MWRhYzIzYzZiZGNwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiYWEzYzQ4NDE4ZDRlZmQxOWQwNzRhcC0xLAorICAgIC0weDEuODU4ZWI3OWEyMGJhZXA0LAorICB9LAorICB7IC8vIEVudHJ5IDgyMQorICAgIC0weDEuNmEwOWU2NjdmM2JkODQ0MmZiNzU1ZTFmNjk3MmY0OGZwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiYzBkY2U2YTgwYzhhZTBhZTRmNWYzcC0xLAorICAgIDB4MS44NThlYjc5YTIwYmFmcDQsCisgIH0sCisgIHsgLy8gRW50cnkgODIyCisgICAgMHgxLjZhMDllNjY3ZjNiZDg0NDJmYjc1NWUxZjY5NzJmNDhmcC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmMwZGNlNmE4MGM4YWUwYWU0ZjVmM3AtMSwKKyAgICAtMHgxLjg1OGViNzlhMjBiYWZwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjMKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzFhMzkxNTBkNmE2MmE2OWY5NmRhcC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmQ3N2Q4NTBlOGJjNmFkYTIyZmUzNHAtMSwKKyAgICAweDEuODU4ZWI3OWEyMGJiMHA0LAorICB9LAorICB7IC8vIEVudHJ5IDgyNAorICAgIDB4MS42YTA5ZTY2N2YzYmMxYTM5MTUwZDZhNjJhNjlmOTZkYXAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JkNzdkODUwZThiYzZhZGEyMmZlMzRwLTEsCisgICAgLTB4MS44NThlYjc5YTIwYmIwcDQsCisgIH0sCisgIHsgLy8gRW50cnkgODI1CisgICAgMHgxLmZhNzI5OWIxNzU3M2QzNzNjNjE1MDk2NTcyYTBkZTA0cC0xLAorICAgIC0weDEuMmNjYWY2NDFkNDI2MWVhM2NjZDhkMmExMDJkYzMwNjZwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNjIsCisgIH0sCisgIHsgLy8gRW50cnkgODI2CisgICAgLTB4MS5mYTcyOTliMTc1NzNkMzczYzYxNTA5NjU3MmEwZGUwNHAtMSwKKyAgICAtMHgxLjJjY2FmNjQxZDQyNjFlYTNjY2Q4ZDJhMTAyZGMzMDY2cC0zLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2MiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjcKKyAgICAweDEuZmZmNmRmZDQyZGM1NDQzMGJjMDU3NmIwMGE4OGJkOTRwLTEsCisgICAgMHgxLjgyYWEzNzViM2MzM2U3MDY2MzczMWJhYjRiZWI2ZWQzcC03LAorICAgIDB4MS4wcDYzLAorICB9LAorICB7IC8vIEVudHJ5IDgyOAorICAgIC0weDEuZmZmNmRmZDQyZGM1NDQzMGJjMDU3NmIwMGE4OGJkOTRwLTEsCisgICAgMHgxLjgyYWEzNzViM2MzM2U3MDY2MzczMWJhYjRiZWI2ZWQzcC03LAorICAgIC0weDEuMHA2MywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjkKKyAgICAweDEuZTQ1NmI4MThlNzM5NmI0NTk4OTk3OGQ0YjdlYmY3YjNwLTEsCisgICAgMHgxLjRjMDYyMmE2ZTM1ZGRlZmQ1ZjJiNzcwMDcxNmE1ODFmcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYzLAorICB9LAorICB7IC8vIEVudHJ5IDgzMAorICAgIC0weDEuZTQ1NmI4MThlNzM5NmI0NTk4OTk3OGQ0YjdlYmY3YjNwLTEsCisgICAgMHgxLjRjMDYyMmE2ZTM1ZGRlZmQ1ZjJiNzcwMDcxNmE1ODFmcC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2MywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzEKKyAgICAtMHgxLjg2ZGNjYTBkNjg5ZTdiNTZlZjc5NDgxYmU0YTY0NWM2cC0xLAorICAgIDB4MS40YWI2NTBiOGM2MDczNDM4NTM3NWUyMjYwM2ZjZGIxMHAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzIKKyAgICAweDEuODZkY2NhMGQ2ODllN2I1NmVmNzk0ODFiZTRhNjQ1YzZwLTEsCisgICAgMHgxLjRhYjY1MGI4YzYwNzM0Mzg1Mzc1ZTIyNjAzZmNkYjEwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzMKKyAgICAtMHgxLjg2ZGNjOWJhYmIwYTQwZWU4NzVjYWIzYjllODkyNzU3cC0xLAorICAgIDB4MS40YWI2NTExYTdkMzlhZDNjYzg4ZGVkMWU3NzVjYTE0N3AtMSwKKyAgICAweDEuMHAyNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzQKKyAgICAweDEuODZkY2M5YmFiYjBhNDBlZTg3NWNhYjNiOWU4OTI3NTdwLTEsCisgICAgMHgxLjRhYjY1MTFhN2QzOWFkM2NjODhkZWQxZTc3NWNhMTQ3cC0xLAorICAgIC0weDEuMHAyNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzUKKyAgICAtMHgxLjg2ZGNjOTE1NWZlMTgyZDQ1MTU1OTk0MjZiYjE0Yjk0cC0xLAorICAgIDB4MS40YWI2NTFkZGViOWU2MTQzODM4MmYwMjE2N2FkZTRhZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzYKKyAgICAweDEuODZkY2M5MTU1ZmUxODJkNDUxNTU5OTQyNmJiMTRiOTRwLTEsCisgICAgMHgxLjRhYjY1MWRkZWI5ZTYxNDM4MzgyZjAyMTY3YWRlNGFmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzcKKyAgICAtMHgxLjhmMjJmODRkNDJkYTFmNTc0NjlkZmFhYzQ0YThiNzNhcC0xLAorICAgIDB4MS40MGFkNjdlNzc3YjFkZjAxOTUxODlmNTBhOGMyNjM0NXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzgKKyAgICAweDEuOGYyMmY4NGQ0MmRhMWY1NzQ2OWRmYWFjNDRhOGI3M2FwLTEsCisgICAgMHgxLjQwYWQ2N2U3NzdiMWRmMDE5NTE4OWY1MGE4YzI2MzQ1cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzkKKyAgICAtMHgxLjhmMjJmODQzM2Q2ZWRmZTlhNGFmZjk2MjI1MTdjYWE5cC0xLAorICAgIDB4MS40MGFkNjdmM2YwYzlhMTQzOTYzYzljOTZkYmNlM2Y4YXAtMSwKKyAgICAweDEuMHAyNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDAKKyAgICAweDEuOGYyMmY4NDMzZDZlZGZlOWE0YWZmOTYyMjUxN2NhYTlwLTEsCisgICAgMHgxLjQwYWQ2N2YzZjBjOWExNDM5NjNjOWM5NmRiY2UzZjhhcC0xLAorICAgIC0weDEuMHAyNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDEKKyAgICAtMHgxLjhmMjJmODJmMzI5ODVmZTMwNjk5YzZlMTJkOWRmY2UycC0xLAorICAgIDB4MS40MGFkNjgwY2UyZjkyNGQ3MTY3NjlkMTA2NGJjOGRlZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDIKKyAgICAweDEuOGYyMmY4MmYzMjk4NWZlMzA2OTljNmUxMmQ5ZGZjZTJwLTEsCisgICAgMHgxLjQwYWQ2ODBjZTJmOTI0ZDcxNjc2OWQxMDY0YmM4ZGVmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDMKKyAgICAtMHgxLjgzN2I5ZGRkYzFlYWJkMzc5ZDcyOWY1NzVmYzExNDRjcC0xLAorICAgIC0weDEuNGVhYTYwNmRiMjRjM2NiNWUxNWQ3YjE5ZDVlZTczYTFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDQKKyAgICAweDEuODM3YjlkZGRjMWVhYmQzNzlkNzI5ZjU3NWZjMTE0NGNwLTEsCisgICAgLTB4MS40ZWFhNjA2ZGIyNGMzY2I1ZTE1ZDdiMTlkNWVlNzNhMXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDUKKyAgICAtMHgxLjgzN2I5ZGRkYzFlYWU3MGNlOTgwNTVhMGU0NTBkOTNjcC0xLAorICAgIC0weDEuNGVhYTYwNmRiMjRjMGM0NjZkYTFjMmRjN2JhYTJiMzJwLTEsCisgICAgMHgxLjBwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDYKKyAgICAweDEuODM3YjlkZGRjMWVhZTcwY2U5ODA1NWEwZTQ1MGQ5M2NwLTEsCisgICAgLTB4MS40ZWFhNjA2ZGIyNGMwYzQ2NmRhMWMyZGM3YmFhMmIzMnAtMSwKKyAgICAtMHgxLjBwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDcKKyAgICAtMHgxLjgzN2I5ZGRkYzFlYjNhYjc4MTliYzIzM2RiNDY5N2I1cC0xLAorICAgIC0weDEuNGVhYTYwNmRiMjRiYWI2Nzg2MmE1MjYxYjc3MTlkY2ZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDgKKyAgICAweDEuODM3YjlkZGRjMWViM2FiNzgxOWJjMjMzZGI0Njk3YjVwLTEsCisgICAgLTB4MS40ZWFhNjA2ZGIyNGJhYjY3ODYyYTUyNjFiNzcxOWRjZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDkKKyAgICAweDEuZDE4ZjZlYWQxYjQ0NmI0YmNiNzNjMjM5MGIzMzBkNzVwLTEsCisgICAgLTB4MS5hYTIyNjU3NTM3MjAxMDExNDUyMzA5NTJlNjFjNmYyY3AtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAwLAorICB9LAorICB7IC8vIEVudHJ5IDg1MAorICAgIC0weDEuZDE4ZjZlYWQxYjQ0NmI0YmNiNzNjMjM5MGIzMzBkNzVwLTEsCisgICAgLTB4MS5hYTIyNjU3NTM3MjAxMDExNDUyMzA5NTJlNjFjNmYyY3AtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTEKKyAgICAweDEuZDE4ZjZlYWQxYjQ0NWRmYWI4NDgxODgwMDljOWJiOTVwLTEsCisgICAgLTB4MS5hYTIyNjU3NTM3MjA0YTQzMzJmOGFjYmI3MmIwZDc2OHAtMiwKKyAgICAweDEuMHAxLAorICB9LAorICB7IC8vIEVudHJ5IDg1MgorICAgIC0weDEuZDE4ZjZlYWQxYjQ0NWRmYWI4NDgxODgwMDljOWJiOTVwLTEsCisgICAgLTB4MS5hYTIyNjU3NTM3MjA0YTQzMzJmOGFjYmI3MmIwZDc2OHAtMiwKKyAgICAtMHgxLjBwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTMKKyAgICAweDEuZDE4ZjZlYWQxYjQ0NDM1ODkxZjBjNTBlMDE4MjY5ODhwLTEsCisgICAgLTB4MS5hYTIyNjU3NTM3MjBiZWE3MGVhM2YzOGM4NmRiNDBhZnAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAorICB9LAorICB7IC8vIEVudHJ5IDg1NAorICAgIC0weDEuZDE4ZjZlYWQxYjQ0NDM1ODkxZjBjNTBlMDE4MjY5ODhwLTEsCisgICAgLTB4MS5hYTIyNjU3NTM3MjBiZWE3MGVhM2YzOGM4NmRiNDBhZnAtMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTUKKyAgICAweDEuYWVkNTQ4ZjA5MGNlZDc5Yzc5Y2JmNzkwNDQxZjgxOTdwLTEsCisgICAgMHgxLjE0YTI4MGZiNTA2OGM2OWEyZWQ0NWZiNTQ3YzJmMjcxcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDg1NgorICAgIC0weDEuYWVkNTQ4ZjA5MGNlZDc5Yzc5Y2JmNzkwNDQxZjgxOTdwLTEsCisgICAgMHgxLjE0YTI4MGZiNTA2OGM2OWEyZWQ0NWZiNTQ3YzJmMjcxcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTcKKyAgICAweDEuYWVkNTQ4ZjA5MGNlZTA0MThkZDNkMjEzOGExZTc4NjVwLTEsCisgICAgMHgxLjE0YTI4MGZiNTA2OGI5MjM4NDhjZGIyZWQwZTM3YTUzcC0xLAorICAgIDB4MS4wcDAsCisgIH0sCisgIHsgLy8gRW50cnkgODU4CisgICAgLTB4MS5hZWQ1NDhmMDkwY2VlMDQxOGRkM2QyMTM4YTFlNzg2NXAtMSwKKyAgICAweDEuMTRhMjgwZmI1MDY4YjkyMzg0OGNkYjJlZDBlMzdhNTNwLTEsCisgICAgLTB4MS4wcDAsCisgIH0sCisgIHsgLy8gRW50cnkgODU5CisgICAgMHgxLmFlZDU0OGYwOTBjZWYxOGJiNWUzODcxYTE0ZDk0NjA5cC0xLAorICAgIDB4MS4xNGEyODBmYjUwNjg5ZTM2MmZmZGQyMjFlMjU1MTAzNXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAorICB9LAorICB7IC8vIEVudHJ5IDg2MAorICAgIC0weDEuYWVkNTQ4ZjA5MGNlZjE4YmI1ZTM4NzFhMTRkOTQ2MDlwLTEsCisgICAgMHgxLjE0YTI4MGZiNTA2ODllMzYyZmZkZDIyMWUyNTUxMDM1cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAorICB9LAorICB7IC8vIEVudHJ5IDg2MQorICAgIDB4MS5lYWVlODc0NGIwNWVmMDdjZDBiOTA4OTEzMDU5ODMxNHAtMiwKKyAgICAweDEuYzE1MjgwNjViN2Q0ZmRiMTU4YzljNGE2YjNlNGI3NDBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgODYyCisgICAgLTB4MS5lYWVlODc0NGIwNWVmMDdjZDBiOTA4OTEzMDU5ODMxNHAtMiwKKyAgICAweDEuYzE1MjgwNjViN2Q0ZmRiMTU4YzljNGE2YjNlNGI3NDBwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDg2MworICAgIDB4MS5lYWVlODc0NGIwNWVmZTg3NjRiYzM2NGZkODM3YjY2NnAtMiwKKyAgICAweDEuYzE1MjgwNjViN2Q0ZjlkYjdiYmIzYjQ1ZjVmNWIzMGFwLTEsCisgICAgMHgxLjBwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgODY0CisgICAgLTB4MS5lYWVlODc0NGIwNWVmZTg3NjRiYzM2NGZkODM3YjY2NnAtMiwKKyAgICAweDEuYzE1MjgwNjViN2Q0ZjlkYjdiYmIzYjQ1ZjVmNWIzMGFwLTEsCisgICAgLTB4MS4wcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDg2NQorICAgIDB4MS5lYWVlODc0NGIwNWYxYTljOGNjMjkxY2QyNzk4MTA1MXAtMiwKKyAgICAweDEuYzE1MjgwNjViN2Q0ZjIyZmMxOWUyODg0NzljMzZiMjdwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgODY2CisgICAgLTB4MS5lYWVlODc0NGIwNWYxYTljOGNjMjkxY2QyNzk4MTA1MXAtMiwKKyAgICAweDEuYzE1MjgwNjViN2Q0ZjIyZmMxOWUyODg0NzljMzZiMjdwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDg2NworICAgIDB4MS5mYWFlZWQ0ZjMxNTc1YzI3ZjM5YzFkN2MwMTJhNDQxM3AtMywKKyAgICAweDEuZjAxNTQ5ZjdkZWVhMTg0YzVmMWQyMTBiNmFkYmU1NmNwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgODY4CisgICAgLTB4MS5mYWFlZWQ0ZjMxNTc1YzI3ZjM5YzFkN2MwMTJhNDQxM3AtMywKKyAgICAweDEuZjAxNTQ5ZjdkZWVhMTg0YzVmMWQyMTBiNmFkYmU1NmNwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDg2OQorICAgIDB4MS5mYWFlZWQ0ZjMxNTc2YmE4OWRlYmRjNzM1MWU4YjFhZXAtMywKKyAgICAweDEuZjAxNTQ5ZjdkZWVhMTc0ZjA3YTY3OTcyYmYyOWYxNDhwLTEsCisgICAgMHgxLjBwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgODcwCisgICAgLTB4MS5mYWFlZWQ0ZjMxNTc2YmE4OWRlYmRjNzM1MWU4YjFhZXAtMywKKyAgICAweDEuZjAxNTQ5ZjdkZWVhMTc0ZjA3YTY3OTcyYmYyOWYxNDhwLTEsCisgICAgLTB4MS4wcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDg3MQorICAgIDB4MS5mYWFlZWQ0ZjMxNTc4YWE5ZjI4YjVhNjFmMzRkY2NiMXAtMywKKyAgICAweDEuZjAxNTQ5ZjdkZWVhMTU1NDU4YjkyYTQxNjdhZWM3ZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgODcyCisgICAgLTB4MS5mYWFlZWQ0ZjMxNTc4YWE5ZjI4YjVhNjFmMzRkY2NiMXAtMywKKyAgICAweDEuZjAxNTQ5ZjdkZWVhMTU1NDU4YjkyYTQxNjdhZWM3ZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDg3MworICAgIDB4MS5mZWFhZWVlODZlZTM0Y2MwNWVmZjI4NzQwZWU3YjQ2OXAtNCwKKyAgICAweDEuZmMwMTU1MjdkNWJkMzcxYTEyMzIwMjQ5Y2E0ZGFmZDdwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgODc0CisgICAgLTB4MS5mZWFhZWVlODZlZTM0Y2MwNWVmZjI4NzQwZWU3YjQ2OXAtNCwKKyAgICAweDEuZmMwMTU1MjdkNWJkMzcxYTEyMzIwMjQ5Y2E0ZGFmZDdwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC00LAorICB9LAorICB7IC8vIEVudHJ5IDg3NQorICAgIDB4MS5mZWFhZWVlODZlZTM1Y2EwNjlhODY3MjFmODlmODVhNXAtNCwKKyAgICAweDEuZmMwMTU1MjdkNWJkMzZkYTNjZDQyNTNiZWRlMzE5Y2FwLTEsCisgICAgMHgxLjBwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgODc2CisgICAgLTB4MS5mZWFhZWVlODZlZTM1Y2EwNjlhODY3MjFmODlmODVhNXAtNCwKKyAgICAweDEuZmMwMTU1MjdkNWJkMzZkYTNjZDQyNTNiZWRlMzE5Y2FwLTEsCisgICAgLTB4MS4wcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDg3NworICAgIDB4MS5mZWFhZWVlODZlZTM3YzYwN2VmYWU0N2RjYzA5MmMxY3AtNCwKKyAgICAweDEuZmMwMTU1MjdkNWJkMzY1YTkyMTg2YjIwMzUwN2Y5YWRwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgODc4CisgICAgLTB4MS5mZWFhZWVlODZlZTM3YzYwN2VmYWU0N2RjYzA5MmMxY3AtNCwKKyAgICAweDEuZmMwMTU1MjdkNWJkMzY1YTkyMTg2YjIwMzUwN2Y5YWRwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDg3OQorICAgIDB4MS5mZmFhYWVlZWQ0ZWQ5YjUzYTQwOGMwZjJiYzAyYzhmOXAtNSwKKyAgICAweDEuZmYwMDE1NTQ5ZjRkMzRkYTBiNzQ1ZGM3NDMzMTQ1ZWZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgODgwCisgICAgLTB4MS5mZmFhYWVlZWQ0ZWQ5YjUzYTQwOGMwZjJiYzAyYzhmOXAtNSwKKyAgICAweDEuZmYwMDE1NTQ5ZjRkMzRkYTBiNzQ1ZGM3NDMzMTQ1ZWZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC01LAorICB9LAorICB7IC8vIEVudHJ5IDg4MQorICAgIDB4MS5mZmFhYWVlZWQ0ZWRhYjRiYTRiMzY1ZWQyNWE5NTk1ZnAtNSwKKyAgICAweDEuZmYwMDE1NTQ5ZjRkMzRjYTBlMWVlNjUwOWJjNDJiNzFwLTEsCisgICAgMHgxLjBwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgODgyCisgICAgLTB4MS5mZmFhYWVlZWQ0ZWRhYjRiYTRiMzY1ZWQyNWE5NTk1ZnAtNSwKKyAgICAweDEuZmYwMDE1NTQ5ZjRkMzRjYTBlMWVlNjUwOWJjNDJiNzFwLTEsCisgICAgLTB4MS4wcC00LAorICB9LAorICB7IC8vIEVudHJ5IDg4MworICAgIDB4MS5mZmFhYWVlZWQ0ZWRjYjNiYTYwOGFmZTFmOGY0ZmE2YnAtNSwKKyAgICAweDEuZmYwMDE1NTQ5ZjRkMzRhYTEzNzNmNzYzNGNlODc3MzdwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgODg0CisgICAgLTB4MS5mZmFhYWVlZWQ0ZWRjYjNiYTYwOGFmZTFmOGY0ZmE2YnAtNSwKKyAgICAweDEuZmYwMDE1NTQ5ZjRkMzRhYTEzNzNmNzYzNGNlODc3MzdwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC00LAorICB9LAorICB7IC8vIEVudHJ5IDg4NQorICAgIDB4MS5mZmVhYWFlZWVlODZkOGNjZmUzNjhjZDk1ZTM4ZjAwM3AtNiwKKyAgICAweDEuZmZjMDAxNTU1MjdkMmIxNmFlYjA5ZmI3MDYzNmExMGFwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYsCisgIH0sCisgIHsgLy8gRW50cnkgODg2CisgICAgLTB4MS5mZmVhYWFlZWVlODZkOGNjZmUzNjhjZDk1ZTM4ZjAwM3AtNiwKKyAgICAweDEuZmZjMDAxNTU1MjdkMmIxNmFlYjA5ZmI3MDYzNmExMGFwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC02LAorICB9LAorICB7IC8vIEVudHJ5IDg4NworICAgIDB4MS5mZmVhYWFlZWVlODZlOGNhZmU0MTM3NmQ0NzkxOTU3OXAtNiwKKyAgICAweDEuZmZjMDAxNTU1MjdkMmIxMmFlZGI0OWQ5MjkyOGRmNzJwLTEsCisgICAgMHgxLjBwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgODg4CisgICAgLTB4MS5mZmVhYWFlZWVlODZlOGNhZmU0MTM3NmQ0NzkxOTU3OXAtNiwKKyAgICAweDEuZmZjMDAxNTU1MjdkMmIxMmFlZGI0OWQ5MjkyOGRmNzJwLTEsCisgICAgLTB4MS4wcC01LAorICB9LAorICB7IC8vIEVudHJ5IDg4OQorICAgIDB4MS5mZmVhYWFlZWVlODcwOGM2ZmU1NjhjOTUxYTQyODA2OXAtNiwKKyAgICAweDEuZmZjMDAxNTU1MjdkMmIwYWFmMzA5ZTFkNmYwY2ZjNGVwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgODkwCisgICAgLTB4MS5mZmVhYWFlZWVlODcwOGM2ZmU1NjhjOTUxYTQyODA2OXAtNiwKKyAgICAweDEuZmZjMDAxNTU1MjdkMmIwYWFmMzA5ZTFkNmYwY2ZjNGVwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC01LAorICB9LAorICB7IC8vIEVudHJ5IDg5MQorICAgIDB4MS5mZmZhYWFhZWVlZWQzZWQ1YzljNWFiNjUzOGY5Y2NlMHAtNywKKyAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMzhhMjU2M2VmMzQ0YzNmZjRwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcsCisgIH0sCisgIHsgLy8gRW50cnkgODkyCisgICAgLTB4MS5mZmZhYWFhZWVlZWQzZWQ1YzljNWFiNjUzOGY5Y2NlMHAtNywKKyAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMzhhMjU2M2VmMzQ0YzNmZjRwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC03LAorICB9LAorICB7IC8vIEVudHJ5IDg5MworICAgIDB4MS5mZmZhYWFhZWVlZWQ0ZWQ1NDljNjU2MGY4ODllZTUzMXAtNywKKyAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMjhhMjgwZTk3YmNkNTljOGFwLTEsCisgICAgMHgxLjBwLTYsCisgIH0sCisgIHsgLy8gRW50cnkgODk0CisgICAgLTB4MS5mZmZhYWFhZWVlZWQ0ZWQ1NDljNjU2MGY4ODllZTUzMXAtNywKKyAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMjhhMjgwZTk3YmNkNTljOGFwLTEsCisgICAgLTB4MS4wcC02LAorICB9LAorICB7IC8vIEVudHJ5IDg5NQorICAgIDB4MS5mZmZhYWFhZWVlZWQ2ZWQ0NDljN2FiNjQyN2U4ZmRkNHAtNywKKyAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMDhhMmQ2M2U4Y2RlODNkYjVwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYsCisgIH0sCisgIHsgLy8gRW50cnkgODk2CisgICAgLTB4MS5mZmZhYWFhZWVlZWQ2ZWQ0NDljN2FiNjQyN2U4ZmRkNHAtNywKKyAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMDhhMmQ2M2U4Y2RlODNkYjVwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC02LAorICB9LAorICB7IC8vIEVudHJ5IDg5NworICAgIDB4MS5mZmZmZmZmYWFhYWE5YWFlZWVlZjZlZWQ0ZWQ0NDJhNHAtMTUsCisgICAgMHgxLmZmZmZmZmYwMDAwMDAwMTU1NTU2NTU0OWY0OWM5ZjRkcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTgKKyAgICAtMHgxLmZmZmZmZmZhYWFhYTlhYWVlZWVmNmVlZDRlZDQ0MmE0cC0xNSwKKyAgICAweDEuZmZmZmZmZjAwMDAwMDAxNTU1NTY1NTQ5ZjQ5YzlmNGRwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTkKKyAgICAweDEuZmZmZmZmZmFhYWFhYWFhZWVlZWVlZWVkNGVkNGVkNGZwLTE1LAorICAgIDB4MS5mZmZmZmZmMDAwMDAwMDE1NTU1NTU1NDlmNDlmNDlmN3AtMSwKKyAgICAweDEuMHAtMTQsCisgIH0sCisgIHsgLy8gRW50cnkgOTAwCisgICAgLTB4MS5mZmZmZmZmYWFhYWFhYWFlZWVlZWVlZWQ0ZWQ0ZWQ0ZnAtMTUsCisgICAgMHgxLmZmZmZmZmYwMDAwMDAwMTU1NTU1NTU0OWY0OWY0OWY3cC0xLAorICAgIC0weDEuMHAtMTQsCisgIH0sCisgIHsgLy8gRW50cnkgOTAxCisgICAgMHgxLmZmZmZmZmZhYWFhYWNhYWVlZWVkZWVlZDRlZDY0MmE0cC0xNSwKKyAgICAweDEuZmZmZmZmZjAwMDAwMDAxNTU1NTM1NTQ5ZjRhNDlmNGRwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTE0LAorICB9LAorICB7IC8vIEVudHJ5IDkwMgorICAgIC0weDEuZmZmZmZmZmFhYWFhY2FhZWVlZWRlZWVkNGVkNjQyYTRwLTE1LAorICAgIDB4MS5mZmZmZmZmMDAwMDAwMDE1NTU1MzU1NDlmNGE0OWY0ZHAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTE0LAorICB9LAorICB7IC8vIEVudHJ5IDkwMworICAgIDB4MS5mZmZmZmZmZmZmZmZlZWFhYWFhYWFhYWFhYWNhZWVlZXAtMjgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZjMDAwMDAwMDAwMDAwNDE1NTU1cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yOCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVlYWFhYWFhYWFhYWFhY2FlZWVlcC0yOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmMwMDAwMDAwMDAwMDA0MTU1NTVwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0yOCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmVhYWFhYWFhYWFhYWFhYWVlZWVwLTI4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmYzAwMDAwMDAwMDAwMDAxNTU1NXAtMSwKKyAgICAweDEuMHAtMjcsCisgIH0sCisgIHsgLy8gRW50cnkgOTA2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZWFhYWFhYWFhYWFhYWFhZWVlZXAtMjgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZjMDAwMDAwMDAwMDAwMDE1NTU1cC0xLAorICAgIC0weDEuMHAtMjcsCisgIH0sCisgIHsgLy8gRW50cnkgOTA3CisgICAgMHgxLjAwMDAwMDAwMDAwMDBmNTU1NTU1NTU1NTU1MzU3Nzc3cC0yNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmY4MTU1NTVwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTI3LAorICB9LAorICB7IC8vIEVudHJ5IDkwOAorICAgIC0weDEuMDAwMDAwMDAwMDAwMGY1NTU1NTU1NTU1NTUzNTc3NzdwLTI3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmYmZmZmZmZmZmZmZmZjgxNTU1NXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTI3LAorICB9LAorICB7IC8vIEVudHJ5IDkwOQorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZhYWFhYWFhYWFhYWFiMmFhZXAtMzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDEwMDE1cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmFhYWFhYWFhYWFhYWIyYWFlcC0zMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMTAwMTVwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0zMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmYWFhYWFhYWFhYWFhYWFhYWVwLTMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwMDAxNXAtMSwKKyAgICAweDEuMHAtMzAsCisgIH0sCisgIHsgLy8gRW50cnkgOTEyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZhYWFhYWFhYWFhYWFhYWFhZXAtMzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDAwMDE1cC0xLAorICAgIC0weDEuMHAtMzAsCisgIH0sCisgIHsgLy8gRW50cnkgOTEzCisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmQ1NTU1NTU1NTU1NTRkNTU3cC0zMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZTAwMTVwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMwLAorICB9LAorICB7IC8vIEVudHJ5IDkxNAorICAgIC0weDEuMDAwMDAwMDAwMDAwMGZmZDU1NTU1NTU1NTU1NGQ1NTdwLTMwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZlMDAxNXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMwLAorICB9LAorICB7IC8vIEVudHJ5IDkxNQorICAgIC0weDEuNDUyZmM5OGIzNGU5NmI2MTEzOWIwOWE3Yzg0YTQ0YmRwLTgsCisgICAgLTB4MS5mZmZlNjJlY2ZhYjc1M2MwNzFiMjY4MGUxZTI2YmJjZXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTYKKyAgICAweDEuNDUyZmM5OGIzNGU5NmI2MTEzOWIwOWE3Yzg0YTQ0YmRwLTgsCisgICAgLTB4MS5mZmZlNjJlY2ZhYjc1M2MwNzFiMjY4MGUxZTI2YmJjZXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICB9LAorICB7IC8vIEVudHJ5IDkxNworICAgIDB4MS40NTJmYzk4YjM0ZTk2YjYxMTM5YjA5YTdjODRhNDRiZHAtOCwKKyAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgIH0sCisgIHsgLy8gRW50cnkgOTE4CisgICAgLTB4MS40NTJmYzk4YjM0ZTk2YjYxMTM5YjA5YTdjODRhNDRiZHAtOCwKKyAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICB9LAorICB7IC8vIEVudHJ5IDkxOQorICAgIDB4MS40NTJmYzk4YjM0ZTk2YjYxMTM5YjA5YTdjODRhNDRiZHAtOCwKKyAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCisgIH0sCisgIHsgLy8gRW50cnkgOTIwCisgICAgLTB4MS40NTJmYzk4YjM0ZTk2YjYxMTM5YjA5YTdjODRhNDRiZHAtOCwKKyAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAorICB9LAorICB7IC8vIEVudHJ5IDkyMQorICAgIDB4MS5kYWEzNjc3YzZlZThhMjJlYjZjNGIxMmNhMTBjZTAyMXAtMSwKKyAgICAweDEuN2ZmZGZiNGM1MzA4Zjc3N2NmNzc0YzczM2IyNTY2OTVwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjIKKyAgICAtMHgxLmRhYTM2NzdjNmVlOGEyMmViNmM0YjEyY2ExMGNlMDIxcC0xLAorICAgIDB4MS43ZmZkZmI0YzUzMDhmNzc3Y2Y3NzRjNzMzYjI1NjY5NXAtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjMKKyAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQzNmUyZWRwLTUzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiMjIwYzVwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjQKKyAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0MzZlMmVkcC01MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAxLAorICB9LAorICB7IC8vIEVudHJ5IDkyNQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMXAtMSwKKyAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQ0MTlmYThwLTU0LAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAsCisgIH0sCisgIHsgLy8gRW50cnkgOTI2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMXAtMSwKKyAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQ0MTlmYThwLTU0LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwLAorICB9LAorICB7IC8vIEVudHJ5IDkyNworICAgIDB4MS5hZWQ1NDhmMDkwY2VmMThiYjVlMzg3MWExNGQ5NDYwOXAtMSwKKyAgICAweDEuMTRhMjgwZmI1MDY4OWUzNjJmZmRkMjIxZTI1NTEwMzVwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjgKKyAgICAtMHgxLmFlZDU0OGYwOTBjZWYxOGJiNWUzODcxYTE0ZDk0NjA5cC0xLAorICAgIDB4MS4xNGEyODBmYjUwNjg5ZTM2MmZmZGQyMjFlMjU1MTAzNXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjkKKyAgICAweDEuYWVkNTQ4ZjA5MGNlZTA0MThkZDNkMjEzOGExZTc4NjVwLTEsCisgICAgMHgxLjE0YTI4MGZiNTA2OGI5MjM4NDhjZGIyZWQwZTM3YTUzcC0xLAorICAgIDB4MS4wcDAsCisgIH0sCisgIHsgLy8gRW50cnkgOTMwCisgICAgLTB4MS5hZWQ1NDhmMDkwY2VlMDQxOGRkM2QyMTM4YTFlNzg2NXAtMSwKKyAgICAweDEuMTRhMjgwZmI1MDY4YjkyMzg0OGNkYjJlZDBlMzdhNTNwLTEsCisgICAgLTB4MS4wcDAsCisgIH0sCisgIHsgLy8gRW50cnkgOTMxCisgICAgMHgxLmFlZDU0OGYwOTBjZWQ3OWM3OWNiZjc5MDQ0MWY4MTk3cC0xLAorICAgIDB4MS4xNGEyODBmYjUwNjhjNjlhMmVkNDVmYjU0N2MyZjI3MXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzIKKyAgICAtMHgxLmFlZDU0OGYwOTBjZWQ3OWM3OWNiZjc5MDQ0MWY4MTk3cC0xLAorICAgIDB4MS4xNGEyODBmYjUwNjhjNjlhMmVkNDVmYjU0N2MyZjI3MXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgOTMzCisgICAgMHgxLjZhMDllNjY3ZjNiY2M1ZTlmZWUzNTJmNTBmZDNmNGU5cC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjYzI3NjcxMmQzZDhjNTUwMjM4N3AtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzQKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2M1ZTlmZWUzNTJmNTBmZDNmNGU5cC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjYzI3NjcxMmQzZDhjNTUwMjM4N3AtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgOTM1CisgICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzYKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIsCisgIH0sCisgIHsgLy8gRW50cnkgOTM3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMTAyMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwLTEwMjIsCisgIH0sCisgIHsgLy8gRW50cnkgOTM5CisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCisgIH0sCisgIHsgLy8gRW50cnkgOTQxCisgICAgMHgxLmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMsCisgIH0sCisgIHsgLy8gRW50cnkgOTQzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMTA3MywKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDc0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwLTEwNzMsCisgIH0sCisgIHsgLy8gRW50cnkgOTQ1CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAtMTA3NCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDYKKyAgICAtMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBwLTEwNzQsCisgIH0sCisgIHsgLy8gRW50cnkgOTQ3CisgICAgMC4wLAorICAgIDB4MS5wMCwKKyAgICAwLjAsCisgIH0sCisgIHsgLy8gRW50cnkgOTQ4CisgICAgLTAuMCwKKyAgICAweDEucDAsCisgICAgLTAuMCwKKyAgfSwKK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvc2luY29zZl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvc2luY29zZl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWIxYjUzNQotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9zaW5jb3NmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDQ2MzMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8yXzFfdDxmbG9hdCwgZmxvYXQsIGZsb2F0PiBnX3NpbmNvc2ZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMHgxLmI2YTdhYmZmYWY1OWE1YWMxODFlM2UxYWJmOTYxNjk4cC0xLAorICAgIDB4MS4wODBlNzRjMTE2ODYzY2ZhYjgyYTBmZDU5YzcxYjM2M3AtMSwKKyAgICAtMHgxLjA3NjhwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLmI2YTdhYmZmYWY1OWE1YWMxODFlM2UxYWJmOTYxNjk4cC0xLAorICAgIDB4MS4wODBlNzRjMTE2ODYzY2ZhYjgyYTBmZDU5YzcxYjM2M3AtMSwKKyAgICAweDEuMDc2OHAwLAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAweDEuNzYyZGE2NjQ4ZmRlMDBlMzk4NDYyZTcxNjMwOTRkNTJwLTIsCisgICAgMHgxLmRjOTgwMmZmZmZmZmUwY2JmYzU3ZWYyODdkM2M4M2FmcC0xLAorICAgIC0weDEuOGYyMTljcDUsCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIC0weDEuNzYyZGE2NjQ4ZmRlMDBlMzk4NDYyZTcxNjMwOTRkNTJwLTIsCisgICAgMHgxLmRjOTgwMmZmZmZmZmUwY2JmYzU3ZWYyODdkM2M4M2FmcC0xLAorICAgIDB4MS44ZjIxOWNwNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgLTB4MS40OTNiNmE3ZDNmNWI3YmY2NmZhMzJhMDE1MTVkNmM0M3AtMSwKKyAgICAtMHgxLjg4MWMyNmZkMjVkMGJmNmQ2ZWEzODcwOGEwOTc2YjM1cC0xLAorICAgIC0weDEuZDNhNTFhcDgwLAorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuNDkzYjZhN2QzZjViN2JmNjZmYTMyYTAxNTE1ZDZjNDNwLTEsCisgICAgLTB4MS44ODFjMjZmZDI1ZDBiZjZkNmVhMzg3MDhhMDk3NmIzNXAtMSwKKyAgICAweDEuZDNhNTFhcDgwLAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAtMHgxLmUwZDFkYzAwNmU4NTgzNWIwMzk0YWJlOTdkZTc3ZmJjcC00LAorICAgIDB4MS5mYzc1Y2E2MzEzZWY3NjYwMTJkYjNjYTk5YTFhNTJkMXAtMSwKKyAgICAtMHgxLmUxZWU1MnAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLmUwZDFkYzAwNmU4NTgzNWIwMzk0YWJlOTdkZTc3ZmJjcC00LAorICAgIDB4MS5mYzc1Y2E2MzEzZWY3NjYwMTJkYjNjYTk5YTFhNTJkMXAtMSwKKyAgICAweDEuZTFlZTUycC00LAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAtMHgxLjJiNmE5Y2EzZGY2MjJlZmUyYWEzMTU0YTYzNTJiYzcwcC0xLAorICAgIC0weDEuOWY1MmRlZjU1ZDg5ZTkyZTdkZjIwZWMyMTE2MWRlYjhwLTEsCisgICAgLTB4MS5mM2ZmZTJwMjQsCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS4yYjZhOWNhM2RmNjIyZWZlMmFhMzE1NGE2MzUyYmM3MHAtMSwKKyAgICAtMHgxLjlmNTJkZWY1NWQ4OWU5MmU3ZGYyMGVjMjExNjFkZWI4cC0xLAorICAgIDB4MS5mM2ZmZTJwMjQsCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEuYTM0MjJhZjEzYjJjZmI3OGQwY2M0NThkOWFjNmJkZTlwLTEsCisgICAgLTB4MS4yNWUxYWExZDkzODNjMWYyNzAyN2NmNjliNjk0NzdmZHAtMSwKKyAgICAtMHgxLmZmMjExZXAyNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIC0weDEuYTM0MjJhZjEzYjJjZmI3OGQwY2M0NThkOWFjNmJkZTlwLTEsCisgICAgLTB4MS4yNWUxYWExZDkzODNjMWYyNzAyN2NmNjliNjk0NzdmZHAtMSwKKyAgICAweDEuZmYyMTFlcDI0LAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLmZmZmZmZmFhYWFhYWFlZWVlZWVlZDRlZDRlZDU0OWM2cC0xMywKKyAgICAweDEuZmZmZmZmMDAwMDAwMTU1NTU1NTQ5ZjQ5ZjRhMjhhMjhwLTEsCisgICAgMHgxLnAtMTIsCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAtMHgxLmZmZmZmZmFhYWFhYWFlZWVlZWVlZDRlZDRlZDU0OWM2cC0xMywKKyAgICAweDEuZmZmZmZmMDAwMDAwMTU1NTU1NTQ5ZjQ5ZjRhMjhhMjhwLTEsCisgICAgLTB4MS5wLTEyLAorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLjAwMDAwMWQ1NTU1NDU3Nzc3NThjYmZjYWZjMDllZjdlcC0xMiwKKyAgICAweDEuZmZmZmZlZmZmZmZjMTU1NTUxZmY0OWY2OTZjNGFlY2FwLTEsCisgICAgMHgxLjAwMDAwMnAtMTIsCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAtMHgxLjAwMDAwMWQ1NTU1NDU3Nzc3NThjYmZjYWZjMDllZjdlcC0xMiwKKyAgICAweDEuZmZmZmZlZmZmZmZjMTU1NTUxZmY0OWY2OTZjNGFlY2FwLTEsCisgICAgLTB4MS4wMDAwMDJwLTEyLAorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLjAwMDAwMWZmZmZmZmZmZmZkNTU1NTQ1NTU1NTM1NTU1cC0zMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZWZmZmZmYmZmZmZmY3AtMSwKKyAgICAweDEuMDAwMDAycC0zMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmZmQ1NTU1NDU1NTU1MzU1NTVwLTMyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZlZmZmZmZiZmZmZmZjcC0xLAorICAgIC0weDEuMDAwMDAycC0zMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS5lYWYwZDUwMDhmMmRiODk5ZTI0ODdkYTlkM2I5Y2RlN3AtMiwKKyAgICAweDEuYzE1MWRmNGYxMmIxOTdhNjY1YTI5MDdlNDkzM2ExZWZwLTEsCisgICAgMHgxLjAwMDE1MHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIC0weDEuZWFmMGQ1MDA4ZjJkYjg5OWUyNDg3ZGE5ZDNiOWNkZTdwLTIsCisgICAgMHgxLmMxNTFkZjRmMTJiMTk3YTY2NWEyOTA3ZTQ5MzNhMWVmcC0xLAorICAgIC0weDEuMDAwMTUwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLmVhZjc3ZWZmZjY1OTAyMWJjODI3YmJkNTY5NmFkMTllcC0yLAorICAgIDB4MS5jMTUwMGQ0OTRlZDJjYzUwMDJjMjdjYzVjYTNkOTZmOHAtMSwKKyAgICAweDEuMDAwNTFjcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgLTB4MS5lYWY3N2VmZmY2NTkwMjFiYzgyN2JiZDU2OTZhZDE5ZXAtMiwKKyAgICAweDEuYzE1MDBkNDk0ZWQyY2M1MDAyYzI3Y2M1Y2EzZDk2ZjhwLTEsCisgICAgLTB4MS4wMDA1MWNwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAtMHgxLjVhYTUzYzFjMTMxN2YzMGI0YzEwODcyMmUyYjY0NjEycC0xLAorICAgIDB4MS43OGNkYjZmZmE2YmZmODk5ZTE3MjNlZDAxMzljNDhjYnAtMSwKKyAgICAweDEuMDAwZmRlcDgwLAorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLjVhYTUzYzFjMTMxN2YzMGI0YzEwODcyMmUyYjY0NjEycC0xLAorICAgIDB4MS43OGNkYjZmZmE2YmZmODk5ZTE3MjNlZDAxMzljNDhjYnAtMSwKKyAgICAtMHgxLjAwMGZkZXA4MCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS5hZWYzODgyMmU2NDMxMTQ0NTU0NTk4MGZiYzViNTZmYXAtMSwKKyAgICAweDEuMTQ3MzVmZmZkNTUxMjBhNDQ4MGI3YzkxYTFkNzhkNmVwLTEsCisgICAgMHgxLjAwMWNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIC0weDEuYWVmMzg4MjJlNjQzMTE0NDU1NDU5ODBmYmM1YjU2ZmFwLTEsCisgICAgMHgxLjE0NzM1ZmZmZDU1MTIwYTQ0ODBiN2M5MWExZDc4ZDZlcC0xLAorICAgIC0weDEuMDAxY3AwLAorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgLTB4MS43ZTEyYWVlMGM4NjJiMTcwOWJkNTAyMDViYmEzMjE2N3AtMSwKKyAgICAtMHgxLjU0ZDQyOTAwMTBhNjg4MjZhODgyZTdjODdkNjY5NGQycC0xLAorICAgIDB4MS4wMDI3YjhwNDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuN2UxMmFlZTBjODYyYjE3MDliZDUwMjA1YmJhMzIxNjdwLTEsCisgICAgLTB4MS41NGQ0MjkwMDEwYTY4ODI2YTg4MmU3Yzg3ZDY2OTRkMnAtMSwKKyAgICAtMHgxLjAwMjdiOHA0MCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIC0weDEuYmQ2OTQ0ZWY0ZGQxYjQzOTYyZTJkMzQ4MDQxMGZkODdwLTEsCisgICAgMHgxLmY4ZmM4ZWZmZjY3ZDgzNGY2ODc4YWI0ZTQ0ZmE4OWI1cC0yLAorICAgIDB4MS4wMDQ4NDBwNjgsCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuYmQ2OTQ0ZWY0ZGQxYjQzOTYyZTJkMzQ4MDQxMGZkODdwLTEsCisgICAgMHgxLmY4ZmM4ZWZmZjY3ZDgzNGY2ODc4YWI0ZTQ0ZmE4OWI1cC0yLAorICAgIC0weDEuMDA0ODQwcDY4LAorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLmY0ZTIzZTAwMTY1YTQ5MDdhNjU2YTdjZjUzMmJiZGU0cC0yLAorICAgIDB4MS5iZTkxNjAxZTQ3YmVkNmQ0NWU4MzcyNjg3YjM3M2MwY3AtMSwKKyAgICAweDEuMDViMHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIC0weDEuZjRlMjNlMDAxNjVhNDkwN2E2NTZhN2NmNTMyYmJkZTRwLTIsCisgICAgMHgxLmJlOTE2MDFlNDdiZWQ2ZDQ1ZTgzNzI2ODdiMzczYzBjcC0xLAorICAgIC0weDEuMDViMHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5iNmE3YWJmZmFmNTlhNWFjMTgxZTNlMWFiZjk2MTY5OHAtMSwKKyAgICAweDEuMDgwZTc0YzExNjg2M2NmYWI4MmEwZmQ1OWM3MWIzNjNwLTEsCisgICAgMHgxLjA3NjhwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIC0weDEuYjZhN2FiZmZhZjU5YTVhYzE4MWUzZTFhYmY5NjE2OThwLTEsCisgICAgMHgxLjA4MGU3NGMxMTY4NjNjZmFiODJhMGZkNTljNzFiMzYzcC0xLAorICAgIC0weDEuMDc2OHAwLAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLmJjYjhhYWZmZmZmZDY5ZDI4NjVhYWYzZjRjNTA3NGU4cC0xLAorICAgIDB4MS5mYjY5YTZkYzUxM2JjYmE1OWQ1ZGM2OGQzZDU5YTA1Y3AtMiwKKyAgICAweDEuMGQ2N2E0cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAtMHgxLmJjYjhhYWZmZmZmZDY5ZDI4NjVhYWYzZjRjNTA3NGU4cC0xLAorICAgIDB4MS5mYjY5YTZkYzUxM2JjYmE1OWQ1ZGM2OGQzZDU5YTA1Y3AtMiwKKyAgICAtMHgxLjBkNjdhNHAwLAorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLmJmNjgzY2ZmZmZlYzZlODY3MmE0OWYwOGFhZTQ5YzQ2cC0xLAorICAgIDB4MS5mMWUwZjY1M2Q2OTU5NzdjY2QyNDBmZjZiOTI5NzM5M3AtMiwKKyAgICAweDEuMTAyNHAwLAorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgLTB4MS5iZjY4M2NmZmZmZWM2ZTg2NzJhNDlmMDhhYWU0OWM0NnAtMSwKKyAgICAweDEuZjFlMGY2NTNkNjk1OTc3Y2NkMjQwZmY2YjkyOTczOTNwLTIsCisgICAgLTB4MS4xMDI0cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuOGIxZThlMWMxNmE4ZDk3MGE3OGEyMzkxZWVhNjU3NWNwLTEsCisgICAgLTB4MS40NTlkNDUwMDAwMDA5MmI0YjgzMDdjNjUyZWU2MzlhN3AtMSwKKyAgICAweDEuMjE0OTdlcDEsCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAtMHgxLjhiMWU4ZTFjMTZhOGQ5NzBhNzhhMjM5MWVlYTY1NzVjcC0xLAorICAgIC0weDEuNDU5ZDQ1MDAwMDAwOTJiNGI4MzA3YzY1MmVlNjM5YTdwLTEsCisgICAgLTB4MS4yMTQ5N2VwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS42OTkxZTBmZmU3ZjljOWIzZWY3YjMwMTdkMjM2MzlmYXAtMSwKKyAgICAtMHgxLjZhODFjNDEzM2RiNzNlMjc2Yzg5ZTcyNGM2ZmU5NzVicC0xLAorICAgIDB4MS4yZGMyMzBwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIC0weDEuNjk5MWUwZmZlN2Y5YzliM2VmN2IzMDE3ZDIzNjM5ZmFwLTEsCisgICAgLTB4MS42YTgxYzQxMzNkYjczZTI3NmM4OWU3MjRjNmZlOTc1YnAtMSwKKyAgICAtMHgxLjJkYzIzMHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLjQxZjZiZDAwMDBkMTNiYTJiZDdhNjNiZjZkOTUwODY1cC0xLAorICAgIC0weDEuOGUxOTdmZTRmYWM5OTAxZGMwN2EyODc4YmFmMTVjN2FwLTEsCisgICAgMHgxLjM0NDI0OHAxOCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIC0weDEuNDFmNmJkMDAwMGQxM2JhMmJkN2E2M2JmNmQ5NTA4NjVwLTEsCisgICAgLTB4MS44ZTE5N2ZlNGZhYzk5MDFkYzA3YTI4NzhiYWYxNWM3YXAtMSwKKyAgICAtMHgxLjM0NDI0OHAxOCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS4zN2Y4ZGVmZmZmZmY2MWNhMTVjMzY2YjNhZGQ4ZjM3M3AtMSwKKyAgICAtMHgxLjk1ZmEyMGQyMzBmZGY5ZThjY2NjNTkyMWU2MWYwM2FkcC0xLAorICAgIDB4MS4zZTQycDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAtMHgxLjM3ZjhkZWZmZmZmZjYxY2ExNWMzNjZiM2FkZDhmMzczcC0xLAorICAgIC0weDEuOTVmYTIwZDIzMGZkZjllOGNjY2M1OTIxZTYxZjAzYWRwLTEsCisgICAgLTB4MS4zZTQycDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuMmVkN2NlNTE4ZjQ2NjBjY2U0OTU1Njg1Njc4NDk3MGNwLTEsCisgICAgMHgxLjljZDRmMzAwMDAwMjI2NGFmMmIzMmViZTVkODI0M2MwcC0xLAorICAgIDB4MS40NDBjM2FwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAtMHgxLjJlZDdjZTUxOGY0NjYwY2NlNDk1NTY4NTY3ODQ5NzBjcC0xLAorICAgIDB4MS45Y2Q0ZjMwMDAwMDIyNjRhZjJiMzJlYmU1ZDgyNDNjMHAtMSwKKyAgICAtMHgxLjQ0MGMzYXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS40NzVmYzkzNzc1MGJkZjJmNzA0MTc3NjEyZDMxZGMxZnAtMSwKKyAgICAweDEuODlhOTk5MDAwMDEyYzA0N2U0YjI0MTgxZDYxNTg2NDBwLTEsCisgICAgMHgxLjYzMmY2YXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIC0weDEuNDc1ZmM5Mzc3NTBiZGYyZjcwNDE3NzYxMmQzMWRjMWZwLTEsCisgICAgMHgxLjg5YTk5OTAwMDAxMmMwNDdlNGIyNDE4MWQ2MTU4NjQwcC0xLAorICAgIC0weDEuNjMyZjZhcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgLTB4MS44YWNlMWNmY2MwYTc2NmIzNWQwZThmNDhmMzE2OWU4YXAtMSwKKyAgICAtMHgxLjQ1ZmVjOTVhNDA2MTk4MTllMzMwN2FlYmUwY2I1ZTg5cC0xLAorICAgIDB4MS42ZThmMThwMjQsCisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAweDEuOGFjZTFjZmNjMGE3NjZiMzVkMGU4ZjQ4ZjMxNjllOGFwLTEsCisgICAgLTB4MS40NWZlYzk1YTQwNjE5ODE5ZTMzMDdhZWJlMGNiNWU4OXAtMSwKKyAgICAtMHgxLjZlOGYxOHAyNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS43YzZiOTJmZjI0ZmYwMjhlYTM1YzQ1OWU1ZWJlYjJjZHAtMSwKKyAgICAweDEuNTZhYzJhZTU0Y2M5YTUyMTBhZTY3M2VhMWNlMzFkNDdwLTEsCisgICAgMHgxLjc5NTg0MHAyMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEuN2M2YjkyZmYyNGZmMDI4ZWEzNWM0NTllNWViZWIyY2RwLTEsCisgICAgMHgxLjU2YWMyYWU1NGNjOWE1MjEwYWU2NzNlYTFjZTMxZDQ3cC0xLAorICAgIC0weDEuNzk1ODQwcDIzLAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjY5N2NmNGZmZWE5MjQ0ZTg1Y2VhNjQwZDEzYzZmYmI1cC0xLAorICAgIC0weDEuNmE5NmExMDZhY2UyMTYxMGFiNTI5YzkwNDdjN2U2ZTJwLTEsCisgICAgMHgxLjdmZTdmZXAzNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEuNjk3Y2Y0ZmZlYTkyNDRlODVjZWE2NDBkMTNjNmZiYjVwLTEsCisgICAgLTB4MS42YTk2YTEwNmFjZTIxNjEwYWI1MjljOTA0N2M3ZTZlMnAtMSwKKyAgICAtMHgxLjdmZTdmZXAzNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS45YzZjZjJmZmZmZmU4NTg4NTEyZWEzYzgwOGIwZmE5ZnAtMSwKKyAgICAweDEuMmY2NTYwZTBmMTRjZDVkNjg5MjBiZWMwZTBjMjUzNTRwLTEsCisgICAgMHgxLmNlMTAyNnAyLAorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgLTB4MS45YzZjZjJmZmZmZmU4NTg4NTEyZWEzYzgwOGIwZmE5ZnAtMSwKKyAgICAweDEuMmY2NTYwZTBmMTRjZDVkNjg5MjBiZWMwZTBjMjUzNTRwLTEsCisgICAgLTB4MS5jZTEwMjZwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIC0weDEuMDdmYWMwNGM2ZTczZjQ4NTA5NmJkYWEzZTY1MDQ0ZDlwLTEsCisgICAgLTB4MS5iNmIzODdmZmNlYjY3YTE4YzE1ZTg2ODU1MGI5NjQ2MnAtMSwKKyAgICAweDEuZDc3NWQwcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuMDdmYWMwNGM2ZTczZjQ4NTA5NmJkYWEzZTY1MDQ0ZDlwLTEsCisgICAgLTB4MS5iNmIzODdmZmNlYjY3YTE4YzE1ZTg2ODU1MGI5NjQ2MnAtMSwKKyAgICAtMHgxLmQ3NzVkMHAxLAorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLjlhOGM2MmY0YjJhOTQ5YjA2OTI0NjYyZDk0MzZiZjE3cC0xLAorICAgIDB4MS4zMWVlNzA3NGUzZWJjNWEzMGYwMDkyZWM2YzVkOGI4MHAtMSwKKyAgICAweDEuZGZlYWFhcDEwOCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuOWE4YzYyZjRiMmE5NDliMDY5MjQ2NjJkOTQzNmJmMTdwLTEsCisgICAgMHgxLjMxZWU3MDc0ZTNlYmM1YTMwZjAwOTJlYzZjNWQ4YjgwcC0xLAorICAgIC0weDEuZGZlYWFhcDEwOCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5kNGRlOGFmZmZmZmZkOTZmODNiYTQ0MmZkZjJmNzEwMXAtMiwKKyAgICAweDEuYzcyY2Q0ZTFkNmM3ODU0N2QzMTcwN2JlODBiNGIwYWVwLTEsCisgICAgMHgxLmU3MDYxZXAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MworICAgIC0weDEuZDRkZThhZmZmZmZmZDk2ZjgzYmE0NDJmZGYyZjcxMDFwLTIsCisgICAgMHgxLmM3MmNkNGUxZDZjNzg1NDdkMzE3MDdiZTgwYjRiMGFlcC0xLAorICAgIC0weDEuZTcwNjFlcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgLTB4MS40ODM0NDVkNDE5NDgxMzE2OGExYWM2M2VlZTE5NDNmOXAtMSwKKyAgICAweDEuODhmODgyZmNiYzgxZmZkZjcyMGE0YmIxYjJmY2E3MWRwLTEsCisgICAgMHgxLmU4OWIyYXA4MCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS40ODM0NDVkNDE5NDgxMzE2OGExYWM2M2VlZTE5NDNmOXAtMSwKKyAgICAweDEuODhmODgyZmNiYzgxZmZkZjcyMGE0YmIxYjJmY2E3MWRwLTEsCisgICAgLTB4MS5lODliMmFwODAsCisgIH0sCisgIHsgLy8gRW50cnkgNjYKKyAgICAweDEuNTY1ZTQxMDAxNDkxNmZhNjU1MGU2MDZlZDU4OGM2YjhwLTEsCisgICAgMHgxLjdjYjFiMzRhZjg1NTg5YmRhZjdjMDc5M2FmMzBiNjgycC0xLAorICAgIDB4MS5mZTgyNzBwMTgsCisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLjU2NWU0MTAwMTQ5MTZmYTY1NTBlNjA2ZWQ1ODhjNmI4cC0xLAorICAgIDB4MS43Y2IxYjM0YWY4NTU4OWJkYWY3YzA3OTNhZjMwYjY4MnAtMSwKKyAgICAtMHgxLmZlODI3MHAxOCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIC0weDEuODM1NmZiYWVhMDQ1NGJjZTM5ODNkOWEwZTAyNTBjNTVwLTEsCisgICAgLTB4MS40ZWQ0YzVmZmM4MDE4NzQxODcwOTQ5NzY3ZmY4ZGFmYXAtMSwKKyAgICAweDEuZmZmMWZlcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAweDEuODM1NmZiYWVhMDQ1NGJjZTM5ODNkOWEwZTAyNTBjNTVwLTEsCisgICAgLTB4MS40ZWQ0YzVmZmM4MDE4NzQxODcwOTQ5NzY3ZmY4ZGFmYXAtMSwKKyAgICAtMHgxLmZmZjFmZXAxLAorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMHgxLmZhOWQ2YmZiMzNhNzdiMmUzYjMyODkxNjhjZWQ2ZGNhcC0xLAorICAgIC0weDEuMjg0MDZhMDAyNTU0NWM5YTU2OGRhY2Q0NTUxOGRkNjVwLTMsCisgICAgMHgxLmZmZjFmZXAyLAorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5mYTlkNmJmYjMzYTc3YjJlM2IzMjg5MTY4Y2VkNmRjYXAtMSwKKyAgICAtMHgxLjI4NDA2YTAwMjU1NDVjOWE1NjhkYWNkNDU1MThkZDY1cC0zLAorICAgIC0weDEuZmZmMWZlcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEuZDE4Zjc2ZmZjNmU0YmEwYTMxMzRlNWJlMjFiNWJjOGZwLTEsCisgICAgLTB4MS5hYTIyNDExNjAyMjc4OTZjNjhlZjE3ODM5ZjE3ZGNlNXAtMiwKKyAgICAweDEuZmZmZmY2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLmQxOGY3NmZmYzZlNGJhMGEzMTM0ZTViZTIxYjViYzhmcC0xLAorICAgIC0weDEuYWEyMjQxMTYwMjI3ODk2YzY4ZWYxNzgzOWYxN2RjZTVwLTIsCisgICAgLTB4MS5mZmZmZjZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5mZmZmZmFhYWFhYjJlZWVlZGMzZGMzZjFlZTdiNDFmZXAtMTIsCisgICAgMHgxLmZmZmZmYzAwMDAxMTU1NTUzYTdkMjdmNGEyODlmMzE5cC0xLAorICAgIDB4MS5mZmZmZmNwLTEyLAorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5mZmZmZmFhYWFhYjJlZWVlZGMzZGMzZjFlZTdiNDFmZXAtMTIsCisgICAgMHgxLmZmZmZmYzAwMDAxMTU1NTUzYTdkMjdmNGEyODlmMzE5cC0xLAorICAgIC0weDEuZmZmZmZjcC0xMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnAtMTQ5LAorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLnAtMTQ5LAorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMC4wLAorICAgIDB4MS5wMCwKKyAgICAwLjAsCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEucC0xNDksCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5wLTE0OSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDJwLTEyNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAycC0xMjYsCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEucC0xMjYsCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLnAtMTI2LAorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLnAtMTI2LAorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnAtMTI2LAorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDJwLTEyNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDJwLTEyNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS45OTk5OTlkNDRmMzA1OGM3ODkwMTRiN2QwZTIyZmVjM3AtMTMsCisgICAgMHgxLmZmZmZmZjVjMjhmNTc5NjBjZDU2ZWJmZTk0ODJhNjFmcC0xLAorICAgIDB4MS45OTk5OWFwLTEzLAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgLTB4MS45OTk5OTlkNDRmMzA1OGM3ODkwMTRiN2QwZTIyZmVjM3AtMTMsCisgICAgMHgxLmZmZmZmZjVjMjhmNTc5NjBjZDU2ZWJmZTk0ODJhNjFmcC0xLAorICAgIC0weDEuOTk5OTlhcC0xMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS45OTk5OTk1MTNjYzE3M2U1MWJiOTk1NWIwNjZmMWRiOHAtMTIsCisgICAgMHgxLmZmZmZmZDcwYTNkNjRlNWVjMTY1Y2Q0MzA3YWQxMzI2cC0xLAorICAgIDB4MS45OTk5OWFwLTEyLAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgLTB4MS45OTk5OTk1MTNjYzE3M2U1MWJiOTk1NWIwNjZmMWRiOHAtMTIsCisgICAgMHgxLmZmZmZmZDcwYTNkNjRlNWVjMTY1Y2Q0MzA3YWQxMzI2cC0xLAorICAgIC0weDEuOTk5OTlhcC0xMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIDB4MS4zMzMzMzJkOTE2ODUzMjFlNWZjMzk3ZDIwYTVhZjFlNnAtMTEsCisgICAgMHgxLmZmZmZmYTNkNzA5ZWVjYmZiNWEzODViMGYzZTBjYjhmcC0xLAorICAgIDB4MS4zMzMzMzRwLTExLAorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgLTB4MS4zMzMzMzJkOTE2ODUzMjFlNWZjMzk3ZDIwYTVhZjFlNnAtMTEsCisgICAgMHgxLmZmZmZmYTNkNzA5ZWVjYmZiNWEzODViMGYzZTBjYjhmcC0xLAorICAgIC0weDEuMzMzMzM0cC0xMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS45OTk5OTc0NGYzMDZkYzAzZTllZjcwODk3Zjc4Mjk5ZXAtMTEsCisgICAgMHgxLmZmZmZmNWMyOGY1ZmM3MzNjNDIwMmFhMGJkYTkyZjk3cC0xLAorICAgIDB4MS45OTk5OWFwLTExLAorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIC0weDEuOTk5OTk3NDRmMzA2ZGMwM2U5ZWY3MDg5N2Y3ODI5OWVwLTExLAorICAgIDB4MS5mZmZmZjVjMjhmNWZjNzMzYzQyMDJhYTBiZGE5MmY5N3AtMSwKKyAgICAtMHgxLjk5OTk5YXAtMTEsCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLmZmZmZmYWFhYWFhZWVlZWVlZDRlZDRlZGFiNGM3YmQ2cC0xMSwKKyAgICAweDEuZmZmZmYwMDAwMDE1NTU1NTQ5ZjQ5ZjRkMzRkMzRjYTBwLTEsCisgICAgMHgxLnAtMTAsCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgLTB4MS5mZmZmZmFhYWFhYWVlZWVlZWQ0ZWQ0ZWRhYjRjN2JkNnAtMTEsCisgICAgMHgxLmZmZmZmMDAwMDAxNTU1NTU0OWY0OWY0ZDM0ZDM0Y2EwcC0xLAorICAgIC0weDEucC0xMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuMzMzMzJmNjQ1YTE4YzNiMGNjZmMwYTNjZjdiMmU5MWJwLTEwLAorICAgIDB4MS5mZmZmZThmNWMyOWNlMDc2NDBiZDVmNmQ4YmIxZWE2YnAtMSwKKyAgICAweDEuMzMzMzM0cC0xMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAtMHgxLjMzMzMyZjY0NWExOGMzYjBjY2ZjMGEzY2Y3YjJlOTFicC0xMCwKKyAgICAweDEuZmZmZmU4ZjVjMjljZTA3NjQwYmQ1ZjZkOGJiMWVhNmJwLTEsCisgICAgLTB4MS4zMzMzMzRwLTEwLAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS42NjY2NjBhZWMzMzA4MjFjN2ExMDBjZjQ4OGMzODBlYnAtMTAsCisgICAgMHgxLmZmZmZlMGEzZDcxNDgzOWYzNjAxMTQ3YWRhNzNmOGQ5cC0xLAorICAgIDB4MS42NjY2NjhwLTEwLAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIC0weDEuNjY2NjYwYWVjMzMwODIxYzdhMTAwY2Y0ODhjMzgwZWJwLTEwLAorICAgIDB4MS5mZmZmZTBhM2Q3MTQ4MzlmMzYwMTE0N2FkYTczZjhkOXAtMSwKKyAgICAtMHgxLjY2NjY2OHAtMTAsCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLjk5OTk5MTEzY2MwMzQxNDRmZGJkYzhhMWRjNzEzMjUzcC0xMCwKKyAgICAweDEuZmZmZmQ3MGEzZDgxOTFmNjZkZTU0MDhmYjJiOTk1YTBwLTEsCisgICAgMHgxLjk5OTk5Y3AtMTAsCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgLTB4MS45OTk5OTExM2NjMDM0MTQ0ZmRiZGM4YTFkYzcxMzI1M3AtMTAsCisgICAgMHgxLmZmZmZkNzBhM2Q4MTkxZjY2ZGU1NDA4ZmIyYjk5NWEwcC0xLAorICAgIC0weDEuOTk5OTljcC0xMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEuY2NjY2JjNzJiMDVkZDA5NTFhOWM1ZTY1NTYwYzU2ZTNwLTEwLAorICAgIDB4MS5mZmZmY2MyOGY2ZDA5NmI4N2Q2ZDE5YTA2ZTk2OTk5YnAtMSwKKyAgICAweDEuY2NjY2NjcC0xMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAtMHgxLmNjY2NiYzcyYjA1ZGQwOTUxYTljNWU2NTU2MGM1NmUzcC0xMCwKKyAgICAweDEuZmZmZmNjMjhmNmQwOTZiODdkNmQxOWEwNmU5Njk5OWJwLTEsCisgICAgLTB4MS5jY2NjY2NwLTEwLAorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS4wNjY1YWUzNjE1YjViN2RlNTI3OTgwNjRkZmM1OWIyOXAtNywKKyAgICAweDEuZmZmYmNjMmE3MWNlYWFiZjU1ODJiNmRhMWZjMzA1MzFwLTEsCisgICAgMHgxLjA2NjY2NnAtNywKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAtMHgxLjA2NjVhZTM2MTViNWI3ZGU1Mjc5ODA2NGRmYzU5YjI5cC03LAorICAgIDB4MS5mZmZiY2MyYTcxY2VhYWJmNTU4MmI2ZGExZmMzMDUzMXAtMSwKKyAgICAtMHgxLjA2NjY2NnAtNywKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEuY2NjOGU4YWU5MjU4NmQ4ZDY2YjZhZDBhZWRjYjBkOTRwLTcsCisgICAgMHgxLmZmZjMwYTRiN2I1MTE5ZDhlMjk5ZjcxN2VjMGVjZTE2cC0xLAorICAgIDB4MS5jY2NjY2NwLTcsCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgLTB4MS5jY2M4ZThhZTkyNTg2ZDhkNjZiNmFkMGFlZGNiMGQ5NHAtNywKKyAgICAweDEuZmZmMzBhNGI3YjUxMTlkOGUyOTlmNzE3ZWMwZWNlMTZwLTEsCisgICAgLTB4MS5jY2NjY2NwLTcsCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMHgxLjQ5OTNlNzBmN2IxN2MxMGFmOWY5N2ZjN2IzM2I4MjJicC02LAorICAgIDB4MS5mZmU1N2E3ODUxMjMyMjZjMWUyZWZiNDExMzUzZWRjOXAtMSwKKyAgICAweDEuNDk5OTk4cC02LAorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIC0weDEuNDk5M2U3MGY3YjE3YzEwYWY5Zjk3ZmM3YjMzYjgyMmJwLTYsCisgICAgMHgxLmZmZTU3YTc4NTEyMzIyNmMxZTJlZmI0MTEzNTNlZGM5cC0xLAorICAgIC0weDEuNDk5OTk4cC02LAorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIDB4MS5hY2MwNDNmOGIyZDg5YWQ1MTQzYzAzMGU5NzY2ZmMxMXAtNiwKKyAgICAweDEuZmZkMzFjZDEwY2I2MzJkOTczM2FjNWY1ZjMyN2E1ZjlwLTEsCisgICAgMHgxLmFjY2NjY3AtNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAtMHgxLmFjYzA0M2Y4YjJkODlhZDUxNDNjMDMwZTk3NjZmYzExcC02LAorICAgIDB4MS5mZmQzMWNkMTBjYjYzMmQ5NzMzYWM1ZjVmMzI3YTVmOXAtMSwKKyAgICAtMHgxLmFjY2NjY3AtNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEuMDdmNDRkNjdjZjQxYWZiYzBjOTUxMDhiOTlmOTFiMDFwLTUsCisgICAgMHgxLmZmYmJmMTgyMDc1NDJlZjgxMzkwZDczYzNiYTg5YzFhcC0xLAorICAgIDB4MS4wOHAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAtMHgxLjA3ZjQ0ZDY3Y2Y0MWFmYmMwYzk1MTA4Yjk5ZjkxYjAxcC01LAorICAgIDB4MS5mZmJiZjE4MjA3NTQyZWY4MTM5MGQ3M2MzYmE4OWMxYXAtMSwKKyAgICAtMHgxLjA4cC01LAorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS4zOTg1ZmVhZDQ0ZmEyYjg1MWU2NTFhY2JhMzY5ZDc2OXAtNSwKKyAgICAweDEuZmY5ZmY4YzJlYWVhZWUzMGZiMjExNzY1YWY4MzUxNzFwLTEsCisgICAgMHgxLjM5OTk5YXAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAtMHgxLjM5ODVmZWFkNDRmYTJiODUxZTY1MWFjYmEzNjlkNzY5cC01LAorICAgIDB4MS5mZjlmZjhjMmVhZWFlZTMwZmIyMTE3NjVhZjgzNTE3MXAtMSwKKyAgICAtMHgxLjM5OTk5YXAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuNmIxNGJlYjVkNDBkNzQ1MDk2MjQ3ZTU5YjYyMjgyOGJwLTUsCisgICAgMHgxLmZmN2YzMmQ2ZWIxZjljZjkwMjI2ZWMyOTFjOWUwOTIycC0xLAorICAgIDB4MS42YjMzMzRwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgLTB4MS42YjE0YmViNWQ0MGQ3NDUwOTYyNDdlNTliNjIyODI4YnAtNSwKKyAgICAweDEuZmY3ZjMyZDZlYjFmOWNmOTAyMjZlYzI5MWM5ZTA5MjJwLTEsCisgICAgLTB4MS42YjMzMzRwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjljYTAxNjcxYTc5OTVmYzk3Y2ViZDY5NzI5Y2M0MzA5cC01LAorICAgIDB4MS5mZjU5YTAwY2M0YWQ0OTJjYTI1OTc0OTU0MTI5OThlZHAtMSwKKyAgICAweDEuOWNjY2NlcC01LAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIC0weDEuOWNhMDE2NzFhNzk5NWZjOTdjZWJkNjk3MjljYzQzMDlwLTUsCisgICAgMHgxLmZmNTlhMDBjYzRhZDQ5MmNhMjU5NzQ5NTQxMjk5OGVkcC0xLAorICAgIC0weDEuOWNjY2NlcC01LAorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS5jZTI3OGNkOWViMmNiZDBjNmE0ZTEyNzlmNjkwZTg1NnAtNSwKKyAgICAweDEuZmYyZjQwYzA4YWNmNDU4MGE4ZDEzMzgwZDkwNzMzOThwLTEsCisgICAgMHgxLmNlNjY2NnAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAtMHgxLmNlMjc4Y2Q5ZWIyY2JkMGM2YTRlMTI3OWY2OTBlODU2cC01LAorICAgIDB4MS5mZjJmNDBjMDhhY2Y0NTgwYThkMTMzODBkOTA3MzM5OHAtMSwKKyAgICAtMHgxLmNlNjY2NnAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuNDNjMWU5OTcyMzkxYWE4ZWNkOGE5Y2NiYTkwNzkyMGFwLTEsCisgICAgMHgxLjhjYTQ2Y2EwMTE3NzFiZmFlMGQ5ZWRiZjFkYWNiNDAycC0xLAorICAgIDB4MS41ZTdmYzRwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgLTB4MS40M2MxZTk5NzIzOTFhYThlY2Q4YTljY2JhOTA3OTIwYXAtMSwKKyAgICAweDEuOGNhNDZjYTAxMTc3MWJmYWUwZDllZGJmMWRhY2I0MDJwLTEsCisgICAgLTB4MS41ZTdmYzRwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLmVlM2Q2YmIyMWM2NGIyMzgyZWZjZmYwY2RmMzBjZTBicC0xLAorICAgIDB4MS4wYjVkMzhkNWQ4MmU0YTc2MjRkYWM0ZTEwY2UxNTljMnAtMiwKKyAgICAweDEuNGU3ZmM0cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgLTB4MS5lZTNkNmJiMjFjNjRiMjM4MmVmY2ZmMGNkZjMwY2UwYnAtMSwKKyAgICAweDEuMGI1ZDM4ZDVkODJlNGE3NjI0ZGFjNGUxMGNlMTU5YzJwLTIsCisgICAgLTB4MS40ZTdmYzRwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEuZGY4ZTIzMjNlNGJmMWE1MzhhMTAwZWMxYmYzNDk0YTlwLTEsCisgICAgLTB4MS42NmI5NmUyMDRlNjljZGE4ZTljZjUwOTk2NDMyNTM5ZXAtMiwKKyAgICAweDEuZWRiZmE2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgLTB4MS5kZjhlMjMyM2U0YmYxYTUzOGExMDBlYzFiZjM0OTRhOXAtMSwKKyAgICAtMHgxLjY2Yjk2ZTIwNGU2OWNkYThlOWNmNTA5OTY0MzI1MzllcC0yLAorICAgIC0weDEuZWRiZmE2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMHgxLjFkMzQ3YWEwMmZlYjNiYjE3NTBkMjU1MDk0MzVkYTg4cC0xLAorICAgIC0weDEuYTkzNTU0MGVkZWNhNGMyMjBlZDkxZGM1NDgxZTRkOWJwLTEsCisgICAgMHgxLjQ2N2ZjNHAxLAorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIC0weDEuMWQzNDdhYTAyZmViM2JiMTc1MGQyNTUwOTQzNWRhODhwLTEsCisgICAgLTB4MS5hOTM1NTQwZWRlY2E0YzIyMGVkOTFkYzU0ODFlNGQ5YnAtMSwKKyAgICAtMHgxLjQ2N2ZjNHAxLAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEuZmZlYTA4ZTFjOTdmNGM0ZGUwMTk2MWNjM2U3YjA0ZGNwLTYsCisgICAgLTB4MS5mZmMwMDE3ZGQ5MjA5ZGQ4ODkxZjE3ZmU0YzllZWU0NnAtMSwKKyAgICAweDEuOTYxZmI0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLmZmZWEwOGUxYzk3ZjRjNGRlMDE5NjFjYzNlN2IwNGRjcC02LAorICAgIC0weDEuZmZjMDAxN2RkOTIwOWRkODg5MWYxN2ZlNGM5ZWVlNDZwLTEsCisgICAgLTB4MS45NjFmYjRwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLjM3MzRjYmNlZDljMGY0ODRlNWY3NjJlMDAyMTZlNjIwcC0xLAorICAgIC0weDEuOTY5MDgyMDA3NzMzZDc4N2Y0YzM2YmEwZjk0MjU2OTRwLTEsCisgICAgMHgxLmU1YmZhNHAxLAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS4zNzM0Y2JjZWQ5YzBmNDg0ZTVmNzYyZTAwMjE2ZTYyMHAtMSwKKyAgICAtMHgxLjk2OTA4MjAwNzczM2Q3ODdmNGMzNmJhMGY5NDI1Njk0cC0xLAorICAgIC0weDEuZTViZmE0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS5lOWQyNTkyYmVjMTBjM2FjYjE1YzU4NTIyMzlhMmFhOHAtMSwKKyAgICAtMHgxLjJhMWU3NDIyM2Q5YmRkYjdkYjU5Zjc4MWY5NmI2NWVjcC0yLAorICAgIDB4MS4xYWFmY2FwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuZTlkMjU5MmJlYzEwYzNhY2IxNWM1ODUyMjM5YTJhYThwLTEsCisgICAgLTB4MS4yYTFlNzQyMjNkOWJkZGI3ZGI1OWY3ODFmOTZiNjVlY3AtMiwKKyAgICAtMHgxLjFhYWZjYXAyLAorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuZTRlY2UyMDhkMGM0OTEzYWIwMTljYWIwY2U5Yzc4NWVwLTEsCisgICAgMHgxLjQ4OTRkNTBiODRkYmM5ODExMzRhNTkxYWM0MTY1ZDllcC0yLAorICAgIDB4MS40MjdmYzJwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDQKKyAgICAweDEuZTRlY2UyMDhkMGM0OTEzYWIwMTljYWIwY2U5Yzc4NWVwLTEsCisgICAgMHgxLjQ4OTRkNTBiODRkYmM5ODExMzRhNTkxYWM0MTY1ZDllcC0yLAorICAgIC0weDEuNDI3ZmMycDIsCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS4yYTVhMDJkMzkyYjU0ZjY0MWEwZDg4YmQ0YWM2YzJlMXAtMSwKKyAgICAweDEuYTAxNmRkNzQ4MGExZWVhNGQ0OWVmYjU4NWZhNDljODZwLTEsCisgICAgMHgxLjZhNGZiYXAyLAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS4yYTVhMDJkMzkyYjU0ZjY0MWEwZDg4YmQ0YWM2YzJlMXAtMSwKKyAgICAweDEuYTAxNmRkNzQ4MGExZWVhNGQ0OWVmYjU4NWZhNDljODZwLTEsCisgICAgLTB4MS42YTRmYmFwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAtMHgxLjI2MzEyM2RmMjJkMTNlZDMyOWM2NjVjODNjMGU3MWU4cC0xLAorICAgIDB4MS5hMzBhNmEzYmY0YTNlMmI3ZTI3NjY2ZDNhOWMzYjc0YnAtMSwKKyAgICAweDEuNmFmMmYwcDIsCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLjI2MzEyM2RmMjJkMTNlZDMyOWM2NjVjODNjMGU3MWU4cC0xLAorICAgIDB4MS5hMzBhNmEzYmY0YTNlMmI3ZTI3NjY2ZDNhOWMzYjc0YnAtMSwKKyAgICAtMHgxLjZhZjJmMHAyLAorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0weDEuZTE4ZTY3YjUwOGZmYzllNDJmNmM5ZTcyZjhlNTQ1ZjNwLTEsCisgICAgMHgxLjViZDYyNTUwNDAxNWNjYzEwMWU0ZjQzNDBkNGI3NjJicC0yLAorICAgIDB4MS40M2M2MmFwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuZTE4ZTY3YjUwOGZmYzllNDJmNmM5ZTcyZjhlNTQ1ZjNwLTEsCisgICAgMHgxLjViZDYyNTUwNDAxNWNjYzEwMWU0ZjQzNDBkNGI3NjJicC0yLAorICAgIC0weDEuNDNjNjJhcDIsCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS5lZTBlODBlYzlkMTU2MmMxN2E2Y2Y2MDhhZjliMGVkNHAtMSwKKyAgICAtMHgxLjBjYjczMzQ0OGMzMGVlM2RkZmZiNGRhNjlmMGIzODQycC0yLAorICAgIDB4MS4xYzk5NjRwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAweDEuZWUwZTgwZWM5ZDE1NjJjMTdhNmNmNjA4YWY5YjBlZDRwLTEsCisgICAgLTB4MS4wY2I3MzM0NDhjMzBlZTNkZGZmYjRkYTY5ZjBiMzg0MnAtMiwKKyAgICAtMHgxLjFjOTk2NHAyLAorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuNDcyNzY4NjM3ZWE4ODY2YTY1MjA5OGE0M2FhNjg4YTZwLTEsCisgICAgLTB4MS44OWQ4NzRhZDMwZTNmYjQ2MjQ0ZGFhMjQ0NTE2OTBkN3AtMSwKKyAgICAweDEuZWFkOTNjcDEsCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLjQ3Mjc2ODYzN2VhODg2NmE2NTIwOThhNDNhYTY4OGE2cC0xLAorICAgIC0weDEuODlkODc0YWQzMGUzZmI0NjI0NGRhYTI0NDUxNjkwZDdwLTEsCisgICAgLTB4MS5lYWQ5M2NwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLjRiYTI0ZjYzMjVmMjE0MjBlN2M0OGQ0ZjkxZTI4MDY0cC00LAorICAgIC0weDEuZmU1MWFlMDlmMGQzOWVkNTU0ZTY4YmVmM2UyZjhhMDNwLTEsCisgICAgMHgxLjljN2ZiMHAxLAorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS40YmEyNGY2MzI1ZjIxNDIwZTdjNDhkNGY5MWUyODA2NHAtNCwKKyAgICAtMHgxLmZlNTFhZTA5ZjBkMzllZDU1NGU2OGJlZjNlMmY4YTAzcC0xLAorICAgIC0weDEuOWM3ZmIwcDEsCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgMHgxLjAzNGM2NDMyOTUxNTNhYWZmZTVkOWEwZjI5ZTkyODQ0cC0xLAorICAgIC0weDEuYjk3YmY3NmFlNzY1ZWI2OWNmNTVlODBhYWU5NzczMDNwLTEsCisgICAgMHgxLjRlMjYyNHAxLAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIC0weDEuMDM0YzY0MzI5NTE1M2FhZmZlNWQ5YTBmMjllOTI4NDRwLTEsCisgICAgLTB4MS5iOTdiZjc2YWU3NjVlYjY5Y2Y1NWU4MGFhZTk3NzMwM3AtMSwKKyAgICAtMHgxLjRlMjYyNHAxLAorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDB4MS5kMWU0ZDk2ZWFjOTE3NTc0Yjk0OGU0ZWE5ZTM3YjM2ZHAtMSwKKyAgICAtMHgxLmE4YWM1NzkzZTMyNjI5YjEzMTk4NGVjZmZkMmQwZjMxcC0yLAorICAgIDB4MS5mZjk5MzJwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAtMHgxLmQxZTRkOTZlYWM5MTc1NzRiOTQ4ZTRlYTllMzdiMzZkcC0xLAorICAgIC0weDEuYThhYzU3OTNlMzI2MjliMTMxOTg0ZWNmZmQyZDBmMzFwLTIsCisgICAgLTB4MS5mZjk5MzJwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAweDEuZjc1MDFlMDAyYmNhZmI4OTdmOTMxOTMxZDNhNTdhZmRwLTEsCisgICAgMHgxLjc3YTkyY2EwMWJjNzljMTk1ZGRhMzM3MzY4MDdmOTg2cC0zLAorICAgIDB4MS42MmU2MWNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAtMHgxLmY3NTAxZTAwMmJjYWZiODk3ZjkzMTkzMWQzYTU3YWZkcC0xLAorICAgIDB4MS43N2E5MmNhMDFiYzc5YzE5NWRkYTMzNzM2ODA3Zjk4NnAtMywKKyAgICAtMHgxLjYyZTYxY3AwLAorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIDB4MS42NWY3ZDY2ZWY2NTkxY2ZjNTFhYjI5ZGMyMDg2ZDNlN3AtMSwKKyAgICAweDEuNmUxMDYwMjgyYzE0ODhkOWFiZDgzZGExZDY4Y2QwZjdwLTEsCisgICAgMHgxLjhjNjYyY3AtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLjY1ZjdkNjZlZjY1OTFjZmM1MWFiMjlkYzIwODZkM2U3cC0xLAorICAgIDB4MS42ZTEwNjAyODJjMTQ4OGQ5YWJkODNkYTFkNjhjZDBmN3AtMSwKKyAgICAtMHgxLjhjNjYyY3AtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAtMHgxLmZlMDQzZjg3NWM2ZWQ0YTJjMWI4ZDY5YTA5ZmNmNTc4cC0xLAorICAgIC0weDEuNjgyZjJiYjg3YThmNTAxMTczNTA5NDE3NmM5YjZkYWNwLTQsCisgICAgLTB4MS5hOGFhMWNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuZmUwNDNmODc1YzZlZDRhMmMxYjhkNjlhMDlmY2Y1NzhwLTEsCisgICAgLTB4MS42ODJmMmJiODdhOGY1MDExNzM1MDk0MTc2YzliNmRhY3AtNCwKKyAgICAweDEuYThhYTFjcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5mZmYxOGYzMTNlNjZmMWFlMjVmODlhNWY3YTFmODRjNHAtMSwKKyAgICAtMHgxLmU2NjVjYjJhZjg0MmJlNWJhNWY2NTk2MDU5OWE5N2VjcC03LAorICAgIC0weDEuOTVlYzhhcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLmZmZjE4ZjMxM2U2NmYxYWUyNWY4OWE1ZjdhMWY4NGM0cC0xLAorICAgIC0weDEuZTY2NWNiMmFmODQyYmU1YmE1ZjY1OTYwNTk5YTk3ZWNwLTcsCisgICAgMHgxLjk1ZWM4YXAwLAorICB9LAorICB7IC8vIEVudHJ5IDE2OQorICAgIC0weDEuZmYyMGQ5MjBiOWU5YzIzMTU0Zjk3ZTJmMzQyYTI4ODRwLTEsCisgICAgMHgxLmRkZDIzMTUwMWIxMmZjZjJiYzIwNjMzYmU0ZDUxZTUxcC01LAorICAgIC0weDEuODMyZWY4cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLmZmMjBkOTIwYjllOWMyMzE1NGY5N2UyZjM0MmEyODg0cC0xLAorICAgIDB4MS5kZGQyMzE1MDFiMTJmY2YyYmMyMDYzM2JlNGQ1MWU1MXAtNSwKKyAgICAweDEuODMyZWY4cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS5mYjkzM2I4OWQ3ZGIzMjg2ZWVkMGNmZWFiZWU5ODg3NXAtMSwKKyAgICAweDEuMGNhYmE2OTk3NjkxYWIxOTcwZDQzYzc0MTllZDUxZTFwLTMsCisgICAgLTB4MS43MDcxNjZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAweDEuZmI5MzNiODlkN2RiMzI4NmVlZDBjZmVhYmVlOTg4NzVwLTEsCisgICAgMHgxLjBjYWJhNjk5NzY5MWFiMTk3MGQ0M2M3NDE5ZWQ1MWUxcC0zLAorICAgIDB4MS43MDcxNjZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLmY1NGQ5NWM1MDU4YjdkYzk5NzJhYjZmOTkyOGNhMDQzcC0xLAorICAgIDB4MS5hMDcyNTQxZmQ2ZWFmOGI2NWE4NzRjNThkNmNjNTczOXAtMywKKyAgICAtMHgxLjVkYjNkNHAwLAorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIDB4MS5mNTRkOTVjNTA1OGI3ZGM5OTcyYWI2Zjk5MjhjYTA0M3AtMSwKKyAgICAweDEuYTA3MjU0MWZkNmVhZjhiNjVhODc0YzU4ZDZjYzU3MzlwLTMsCisgICAgMHgxLjVkYjNkNHAwLAorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIC0weDEuZWM1ODgxYTA5YzQ2YWFlMDIwY2Q5MDM2MDk4YTE5NmVwLTEsCisgICAgMHgxLjE4ZmVmODEwNmJlYTYzYjllOTZhN2FkZjUzOGM2MTk0cC0yLAorICAgIC0weDEuNGFmNjQycDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLmVjNTg4MWEwOWM0NmFhZTAyMGNkOTAzNjA5OGExOTZlcC0xLAorICAgIDB4MS4xOGZlZjgxMDZiZWE2M2I5ZTk2YTdhZGY1MzhjNjE5NHAtMiwKKyAgICAweDEuNGFmNjQycDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS5lMGMwNDc5NTkxOWQ5NjFhNWU4M2U1MDVkZjMxYzYyNHAtMSwKKyAgICAweDEuNjA0MzcyNzdkNDgwNjdlODUyMzBiY2UxODgzZWFhYmFwLTIsCisgICAgLTB4MS4zODM4YjBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuZTBjMDQ3OTU5MTlkOTYxYTVlODNlNTA1ZGYzMWM2MjRwLTEsCisgICAgMHgxLjYwNDM3Mjc3ZDQ4MDY3ZTg1MjMwYmNlMTg4M2VhYWJhcC0yLAorICAgIDB4MS4zODM4YjBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAtMHgxLmQyOTRjZGVmN2NjMTYxNjMzYTAyZDNlNjIwNThiZTBlcC0xLAorICAgIDB4MS5hNWE0ZGVkNDkyYmVkZmU4Y2Y1YzM0Y2FkZDc4ZGY3NXAtMiwKKyAgICAtMHgxLjI1N2IxZXAwLAorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS5kMjk0Y2RlZjdjYzE2MTYzM2EwMmQzZTYyMDU4YmUwZXAtMSwKKyAgICAweDEuYTVhNGRlZDQ5MmJlZGZlOGNmNWMzNGNhZGQ3OGRmNzVwLTIsCisgICAgMHgxLjI1N2IxZXAwLAorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuYzFlOTg4Yjk1NjE0YWJkNjVkM2Q4MTFmNWM4ODAzOWJwLTEsCisgICAgMHgxLmU4YzQwNDA2NzhkMmVmNzM2MzMzYTQ1MzdhMTExM2ExcC0yLAorICAgIC0weDEuMTJiZDkycDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLmMxZTk4OGI5NTYxNGFiZDY1ZDNkODExZjVjODgwMzlicC0xLAorICAgIDB4MS5lOGM0MDQwNjc4ZDJlZjczNjMzM2E0NTM3YTExMTNhMXAtMiwKKyAgICAweDEuMTJiZDkycDAsCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTB4MS5hMmMyODk1ZWRiMGQ0YmE1MWNkYmQ1MzkwY2FjNDY4ZnAtMSwKKyAgICAweDEuMjY5NzZiMWIxNmQxOTA5MWMwOTI1OTc2NWM0YjM4NzJwLTEsCisgICAgLTB4MS5lYTVjM2VwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLmEyYzI4OTVlZGIwZDRiYTUxY2RiZDUzOTBjYWM0NjhmcC0xLAorICAgIDB4MS4yNjk3NmIxYjE2ZDE5MDkxYzA5MjU5NzY1YzRiMzg3MnAtMSwKKyAgICAweDEuZWE1YzNlcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0weDEuOTVmMDUxNTM2NDRkNjBiOTRkMmYyZTcwMGRmZDNhMzdwLTEsCisgICAgMHgxLjM4MDVhMmRhZmRhN2Y4NTU0YWVjNjVkYWIzNDhhNzE0cC0xLAorICAgIC0weDEuZDRiODdjcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS45NWYwNTE1MzY0NGQ2MGI5NGQyZjJlNzAwZGZkM2EzN3AtMSwKKyAgICAweDEuMzgwNWEyZGFmZGE3Zjg1NTRhZWM2NWRhYjM0OGE3MTRwLTEsCisgICAgMHgxLmQ0Yjg3Y3AtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAtMHgxLjg4NjQ3ZDhhZDJlNDFmYjdjMGFmMGY2NDYxNGM5OTkzcC0xLAorICAgIDB4MS40OGU1MmZmNWJiZTc5NDYxOGI4NTE5MGI4NjQxMTgyNHAtMSwKKyAgICAtMHgxLmJmMTRiYXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuODg2NDdkOGFkMmU0MWZiN2MwYWYwZjY0NjE0Yzk5OTNwLTEsCisgICAgMHgxLjQ4ZTUyZmY1YmJlNzk0NjE4Yjg1MTkwYjg2NDExODI0cC0xLAorICAgIDB4MS5iZjE0YmFwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTB4MS43YTI1M2Y5Zjg5YTdkM2U0ZjljNTQ2Mzg0MThlOTdmNnAtMSwKKyAgICAweDEuNTkyZTViNjE1ZWY1YWU0NjM5NzZkMzExNDFkYmFjZjBwLTEsCisgICAgLTB4MS5hOTcwZjhwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjdhMjUzZjlmODlhN2QzZTRmOWM1NDYzODQxOGU5N2Y2cC0xLAorICAgIDB4MS41OTJlNWI2MTVlZjVhZTQ2Mzk3NmQzMTE0MWRiYWNmMHAtMSwKKyAgICAweDEuYTk3MGY4cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuNmIzOTFiMzRhYWI4MjhmYmU3Y2Q3ZGNhZjllZjNiZDZwLTEsCisgICAgMHgxLjY4ZDliMmQ2NTdlNDMwN2QzMzFlYjdiZDM1ZWUxODc5cC0xLAorICAgIC0weDEuOTNjZDM2cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS42YjM5MWIzNGFhYjgyOGZiZTdjZDdkY2FmOWVmM2JkNnAtMSwKKyAgICAweDEuNjhkOWIyZDY1N2U0MzA3ZDMzMWViN2JkMzVlZTE4NzlwLTEsCisgICAgMHgxLjkzY2QzNnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLjViYTZlMmZiOTgwZDQ4MmNmMDBlZGU4MGY1NTk3ZmIycC0xLAorICAgIDB4MS43N2UwMGMzNzE4NTI4YzM2ZjcyMmU2MzA5NmMyNjQ2YnAtMSwKKyAgICAtMHgxLjdlMjk3NHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEuNWJhNmUyZmI5ODBkNDgyY2YwMGVkZTgwZjU1OTdmYjJwLTEsCisgICAgMHgxLjc3ZTAwYzM3MTg1MjhjMzZmNzIyZTYzMDk2YzI2NDZicC0xLAorICAgIDB4MS43ZTI5NzRwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS40Yjc1YjU5NTRlNzE4MDIwOTAwNzE5ZTI1YTdlYTkzYnAtMSwKKyAgICAweDEuODYzYTg4ZDZiMDY0ZjM2ZjM0MzcwNzIyZDM2MWNlOWZwLTEsCisgICAgLTB4MS42ODg1YjJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLjRiNzViNTk1NGU3MTgwMjA5MDA3MTllMjVhN2VhOTNicC0xLAorICAgIDB4MS44NjNhODhkNmIwNjRmMzZmMzQzNzA3MjJkMzYxY2U5ZnAtMSwKKyAgICAweDEuNjg4NWIycC0xLAorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuM2FhY2ZhNTEwODEwMDU0YzUyYWUwYjY3ZDExNmViNDBwLTEsCisgICAgMHgxLjkzZTI5ODljZWU2MDg0ZTM0YjUzM2IxZWI5Mjc0NmRhcC0xLAorICAgIC0weDEuNTJlMWYwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS4zYWFjZmE1MTA4MTAwNTRjNTJhZTBiNjdkMTE2ZWI0MHAtMSwKKyAgICAweDEuOTNlMjk4OWNlZTYwODRlMzRiNTMzYjFlYjkyNzQ2ZGFwLTEsCisgICAgMHgxLjUyZTFmMHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLjI5NTQ2NDRjZWI4ZTNhMjQ3OWM4M2FlODRhZjU3ZDNlcC0xLAorICAgIDB4MS5hMGQxZjg2MTNlYmM2MGM3ZWU2NTAyZWUxODNjODllN3AtMSwKKyAgICAtMHgxLjNkM2UzNnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAweDEuMjk1NDY0NGNlYjhlM2EyNDc5YzgzYWU4NGFmNTdkM2VwLTEsCisgICAgMHgxLmEwZDFmODYxM2ViYzYwYzdlZTY1MDJlZTE4M2M4OWU3cC0xLAorICAgIDB4MS4zZDNlMzZwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgLTB4MS5mYzc2OWFlY2QyNjVjZmVhMDhlMGZmMzBjMmZiY2FjZHAtMiwKKyAgICAweDEuYmM2YmQ4ODlhOGE1OWRiYjU2ZTU0NmEzN2FlNzk4ZjVwLTEsCisgICAgLTB4MS4wYTBiMDJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLmZjNzY5YWVjZDI2NWNmZWEwOGUwZmYzMGMyZmJjYWNkcC0yLAorICAgIDB4MS5iYzZiZDg4OWE4YTU5ZGJiNTZlNTQ2YTM3YWU3OThmNXAtMSwKKyAgICAweDEuMGEwYjAycC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0weDEuYzg1M2M3MDRlM2I5NDMyMjAzMWQ2YjQ3YWVmODUzYzlwLTIsCisgICAgMHgxLmNhNTljNzE5Zjk2MDc1ZGQ2YjdhMGZmNDQzYWQ1OWRjcC0xLAorICAgIC0weDEuZDhmNzIwcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS5jODUzYzcwNGUzYjk0MzIyMDMxZDZiNDdhZWY4NTNjOXAtMiwKKyAgICAweDEuY2E1OWM3MTlmOTYwNzVkZDZiN2EwZmY0NDNhZDU5ZGNwLTEsCisgICAgMHgxLmQ4ZjcyMHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAtMHgxLjkyYWJhODk4MWIyNWRlZGE0Y2MxODE3MjUxNzIzYTFicC0yLAorICAgIDB4MS5kNmMwYjEzZGY5OTYxM2E0OTMwNmI0ZGM2YzU3YWEwM3AtMSwKKyAgICAtMHgxLjlkZDgzY3AtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuOTJhYmE4OTgxYjI1ZGVkYTRjYzE4MTcyNTE3MjNhMWJwLTIsCisgICAgMHgxLmQ2YzBiMTNkZjk5NjEzYTQ5MzA2YjRkYzZjNTdhYTAzcC0xLAorICAgIDB4MS45ZGQ4M2NwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS41YmFjMDVlMWUwYTdjMmRlMjgwZmNiOTNiZTY3YTRkYXAtMiwKKyAgICAweDEuZTE5NjAyNzNhNGFhYTFiZDE5ZWYwY2NhYTg4NzQxODNwLTEsCisgICAgLTB4MS42MmI5NThwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLjViYWMwNWUxZTBhN2MyZGUyODBmY2I5M2JlNjdhNGRhcC0yLAorICAgIDB4MS5lMTk2MDI3M2E0YWFhMWJkMTllZjBjY2FhODg3NDE4M3AtMSwKKyAgICAweDEuNjJiOTU4cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuMjM4M2NhMmIyNDk4MDdkOTUwMDVkOTZjZmRhZWNkNmNwLTIsCisgICAgMHgxLmVhZDA3Y2QyZTBmN2YxOTY3OTY0NjM2MmJiYzBlYjgwcC0xLAorICAgIC0weDEuMjc5YTc0cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS4yMzgzY2EyYjI0OTgwN2Q5NTAwNWQ5NmNmZGFlY2Q2Y3AtMiwKKyAgICAweDEuZWFkMDdjZDJlMGY3ZjE5Njc5NjQ2MzYyYmJjMGViODBwLTEsCisgICAgMHgxLjI3OWE3NHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTEKKyAgICAtMHgxLmQ0YzViYjg3MmVhNTM3NTgzNGNhMGJjYTA4OGQxZDc1cC0zLAorICAgIDB4MS5mMjY4NDBlZmQ4NmNlZWEyM2YzODhiNmExMTAyZWE0ZHAtMSwKKyAgICAtMHgxLmQ4ZjcyMHAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuZDRjNWJiODcyZWE1Mzc1ODM0Y2EwYmNhMDg4ZDFkNzVwLTMsCisgICAgMHgxLmYyNjg0MGVmZDg2Y2VlYTIzZjM4OGI2YTExMDJlYTRkcC0xLAorICAgIDB4MS5kOGY3MjBwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgLTB4MS42MGYzZmE0NjBiODU4MTFkMmFlNzEwY2Q2OWVjMzY5MHAtMywKKyAgICAweDEuZjg1NmQ0OTI1MWJkMzdjNTRmMDA5NDI3MGVlY2JkMThwLTEsCisgICAgLTB4MS42MmI5NThwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLjYwZjNmYTQ2MGI4NTgxMWQyYWU3MTBjZDY5ZWMzNjkwcC0zLAorICAgIDB4MS5mODU2ZDQ5MjUxYmQzN2M1NGYwMDk0MjcwZWVjYmQxOHAtMSwKKyAgICAweDEuNjJiOTU4cC0zLAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0weDEuZDdlYTNkNTZlMWU2MjQ0Yzg3ODZkNzRmMTg5ZDk4YWNwLTQsCisgICAgMHgxLmZjOTcyODNjNGY1YmQxZjc5MzIwMTk3MmI4ZGI1NTFmcC0xLAorICAgIC0weDEuZDhmNzIwcC00LAorICB9LAorICB7IC8vIEVudHJ5IDIxNgorICAgIDB4MS5kN2VhM2Q1NmUxZTYyNDRjODc4NmQ3NGYxODlkOThhY3AtNCwKKyAgICAweDEuZmM5NzI4M2M0ZjViZDFmNzkzMjAxOTcyYjhkYjU1MWZwLTEsCisgICAgMHgxLmQ4ZjcyMHAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAtMHgxLmQ4YjNkZWJhNmFjNDkzYjA0YjIxMDNhMGRiYWVmMDJmcC01LAorICAgIDB4MS5mZjI1OWI3YjNkNzIxZWRmMDYzYTViZjZlN2ExZjkzY3AtMSwKKyAgICAtMHgxLmQ4ZjcyMHAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuZDhiM2RlYmE2YWM0OTNiMDRiMjEwM2EwZGJhZWYwMmZwLTUsCisgICAgMHgxLmZmMjU5YjdiM2Q3MjFlZGYwNjNhNWJmNmU3YTFmOTNjcC0xLAorICAgIDB4MS5kOGY3MjBwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLmQ4YjNkZWJhNmFjNDkzYjA0YjIxMDNhMGRiYWVmMDJmcC01LAorICAgIDB4MS5mZjI1OWI3YjNkNzIxZWRmMDYzYTViZjZlN2ExZjkzY3AtMSwKKyAgICAweDEuZDhmNzIwcC01LAorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIC0weDEuZDhiM2RlYmE2YWM0OTNiMDRiMjEwM2EwZGJhZWYwMmZwLTUsCisgICAgMHgxLmZmMjU5YjdiM2Q3MjFlZGYwNjNhNWJmNmU3YTFmOTNjcC0xLAorICAgIC0weDEuZDhmNzIwcC01LAorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS5kN2VhM2Q1NmUxZTYyNDRjODc4NmQ3NGYxODlkOThhY3AtNCwKKyAgICAweDEuZmM5NzI4M2M0ZjViZDFmNzkzMjAxOTcyYjhkYjU1MWZwLTEsCisgICAgMHgxLmQ4ZjcyMHAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAtMHgxLmQ3ZWEzZDU2ZTFlNjI0NGM4Nzg2ZDc0ZjE4OWQ5OGFjcC00LAorICAgIDB4MS5mYzk3MjgzYzRmNWJkMWY3OTMyMDE5NzJiOGRiNTUxZnAtMSwKKyAgICAtMHgxLmQ4ZjcyMHAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAweDEuNjBmM2ZhNDYwYjg1ODExZDJhZTcxMGNkNjllYzM2OTBwLTMsCisgICAgMHgxLmY4NTZkNDkyNTFiZDM3YzU0ZjAwOTQyNzBlZWNiZDE4cC0xLAorICAgIDB4MS42MmI5NThwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgLTB4MS42MGYzZmE0NjBiODU4MTFkMmFlNzEwY2Q2OWVjMzY5MHAtMywKKyAgICAweDEuZjg1NmQ0OTI1MWJkMzdjNTRmMDA5NDI3MGVlY2JkMThwLTEsCisgICAgLTB4MS42MmI5NThwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLmQ0YzViYjg3MmVhNTM3NTgzNGNhMGJjYTA4OGQxZDc1cC0zLAorICAgIDB4MS5mMjY4NDBlZmQ4NmNlZWEyM2YzODhiNmExMTAyZWE0ZHAtMSwKKyAgICAweDEuZDhmNzIwcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIC0weDEuZDRjNWJiODcyZWE1Mzc1ODM0Y2EwYmNhMDg4ZDFkNzVwLTMsCisgICAgMHgxLmYyNjg0MGVmZDg2Y2VlYTIzZjM4OGI2YTExMDJlYTRkcC0xLAorICAgIC0weDEuZDhmNzIwcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS4yMzgzY2EyYjI0OTgwN2Q5NTAwNWQ5NmNmZGFlY2Q2Y3AtMiwKKyAgICAweDEuZWFkMDdjZDJlMGY3ZjE5Njc5NjQ2MzYyYmJjMGViODBwLTEsCisgICAgMHgxLjI3OWE3NHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAtMHgxLjIzODNjYTJiMjQ5ODA3ZDk1MDA1ZDk2Y2ZkYWVjZDZjcC0yLAorICAgIDB4MS5lYWQwN2NkMmUwZjdmMTk2Nzk2NDYzNjJiYmMwZWI4MHAtMSwKKyAgICAtMHgxLjI3OWE3NHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAweDEuNWJhYzA1ZTFlMGE3YzJkZTI4MGZjYjkzYmU2N2E0ZGFwLTIsCisgICAgMHgxLmUxOTYwMjczYTRhYWExYmQxOWVmMGNjYWE4ODc0MTgzcC0xLAorICAgIDB4MS42MmI5NThwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgLTB4MS41YmFjMDVlMWUwYTdjMmRlMjgwZmNiOTNiZTY3YTRkYXAtMiwKKyAgICAweDEuZTE5NjAyNzNhNGFhYTFiZDE5ZWYwY2NhYTg4NzQxODNwLTEsCisgICAgLTB4MS42MmI5NThwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgMHgxLjkyYWJhODk4MWIyNWRlZGE0Y2MxODE3MjUxNzIzYTFicC0yLAorICAgIDB4MS5kNmMwYjEzZGY5OTYxM2E0OTMwNmI0ZGM2YzU3YWEwM3AtMSwKKyAgICAweDEuOWRkODNjcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIC0weDEuOTJhYmE4OTgxYjI1ZGVkYTRjYzE4MTcyNTE3MjNhMWJwLTIsCisgICAgMHgxLmQ2YzBiMTNkZjk5NjEzYTQ5MzA2YjRkYzZjNTdhYTAzcC0xLAorICAgIC0weDEuOWRkODNjcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIDB4MS5jODUzYzcwNGUzYjk0MzIyMDMxZDZiNDdhZWY4NTNjOXAtMiwKKyAgICAweDEuY2E1OWM3MTlmOTYwNzVkZDZiN2EwZmY0NDNhZDU5ZGNwLTEsCisgICAgMHgxLmQ4ZjcyMHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAtMHgxLmM4NTNjNzA0ZTNiOTQzMjIwMzFkNmI0N2FlZjg1M2M5cC0yLAorICAgIDB4MS5jYTU5YzcxOWY5NjA3NWRkNmI3YTBmZjQ0M2FkNTlkY3AtMSwKKyAgICAtMHgxLmQ4ZjcyMHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEuZmM3NjlhZWNkMjY1Y2ZlYTA4ZTBmZjMwYzJmYmNhY2RwLTIsCisgICAgMHgxLmJjNmJkODg5YThhNTlkYmI1NmU1NDZhMzdhZTc5OGY1cC0xLAorICAgIDB4MS4wYTBiMDJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgLTB4MS5mYzc2OWFlY2QyNjVjZmVhMDhlMGZmMzBjMmZiY2FjZHAtMiwKKyAgICAweDEuYmM2YmQ4ODlhOGE1OWRiYjU2ZTU0NmEzN2FlNzk4ZjVwLTEsCisgICAgLTB4MS4wYTBiMDJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLjI5NTQ2NDRjZWI4ZTNhMjQ3OWM4M2FlODRhZjU3ZDNlcC0xLAorICAgIDB4MS5hMGQxZjg2MTNlYmM2MGM3ZWU2NTAyZWUxODNjODllN3AtMSwKKyAgICAweDEuM2QzZTM2cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIC0weDEuMjk1NDY0NGNlYjhlM2EyNDc5YzgzYWU4NGFmNTdkM2VwLTEsCisgICAgMHgxLmEwZDFmODYxM2ViYzYwYzdlZTY1MDJlZTE4M2M4OWU3cC0xLAorICAgIC0weDEuM2QzZTM2cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS4zYWFkMDBhMDkyNjhhMzlkZjE2NTNjNzBkYjkxZjE1N3AtMSwKKyAgICAweDEuOTNlMjkzYjIzYTZhYTFhZTUzNzMyMTRlYjhmYjllOTZwLTEsCisgICAgMHgxLjUyZTFmOHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAtMHgxLjNhYWQwMGEwOTI2OGEzOWRmMTY1M2M3MGRiOTFmMTU3cC0xLAorICAgIDB4MS45M2UyOTNiMjNhNmFhMWFlNTM3MzIxNGViOGZiOWU5NnAtMSwKKyAgICAtMHgxLjUyZTFmOHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEuNGI3NWJiYWUzODhhN2YzNDY2ZTdmMmQ2YmRjZjcyYmJwLTEsCisgICAgMHgxLjg2M2E4M2E4ZDk4MjZjNjEzNTUwOTQwNmViZTA1YzBmcC0xLAorICAgIDB4MS42ODg1YmFwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgLTB4MS40Yjc1YmJhZTM4OGE3ZjM0NjZlN2YyZDZiZGNmNzJiYnAtMSwKKyAgICAweDEuODYzYTgzYThkOTgyNmM2MTM1NTA5NDA2ZWJlMDVjMGZwLTEsCisgICAgLTB4MS42ODg1YmFwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgMHgxLjViYTZlOGRiMTgzMzQ3NTcxMmI5YTQyYTFhZDBkMmMycC0xLAorICAgIDB4MS43N2UwMDZjODdjYmFkZWQ2NmVjNWI5NjBjOTNjNTY4YXAtMSwKKyAgICAweDEuN2UyOTdjcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIC0weDEuNWJhNmU4ZGIxODMzNDc1NzEyYjlhNDJhMWFkMGQyYzJwLTEsCisgICAgMHgxLjc3ZTAwNmM4N2NiYWRlZDY2ZWM1Yjk2MGM5M2M1NjhhcC0xLAorICAgIC0weDEuN2UyOTdjcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS42YjM5MjBkODExNzgyODkyOGZlMTBhYzcwYmE2OWU3NnAtMSwKKyAgICAweDEuNjhkOWFkMjk3MzZjMTcwNGNhZWE2YTJkYjZlNzEyMjNwLTEsCisgICAgMHgxLjkzY2QzZXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAtMHgxLjZiMzkyMGQ4MTE3ODI4OTI4ZmUxMGFjNzBiYTY5ZTc2cC0xLAorICAgIDB4MS42OGQ5YWQyOTczNmMxNzA0Y2FlYTZhMmRiNmU3MTIyM3AtMSwKKyAgICAtMHgxLjkzY2QzZXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEuN2EyNTQ1MDQ0MzA5ODgzNmM1MjAyMzc1ZGI0Yjg0NjJwLTEsCisgICAgMHgxLjU5MmU1NTc4YzllYzY2YWNjZWRkZDRkYzZjZTY2YjI2cC0xLAorICAgIDB4MS5hOTcxcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIC0weDEuN2EyNTQ1MDQ0MzA5ODgzNmM1MjAyMzc1ZGI0Yjg0NjJwLTEsCisgICAgMHgxLjU5MmU1NTc4YzllYzY2YWNjZWRkZDRkYzZjZTY2YjI2cC0xLAorICAgIC0weDEuYTk3MXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuODg2NDgyYWU2Nzk3YjM4MzY0ZjVjNzJjZTlhM2I3NmZwLTEsCisgICAgMHgxLjQ4ZTUyOWQ0MjllNzIxZWM4YmIxZTAxNGY5NGQ0OGYxcC0xLAorICAgIDB4MS5iZjE0YzJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgLTB4MS44ODY0ODJhZTY3OTdiMzgzNjRmNWM3MmNlOWEzYjc2ZnAtMSwKKyAgICAweDEuNDhlNTI5ZDQyOWU3MjFlYzhiYjFlMDE0Zjk0ZDQ4ZjFwLTEsCisgICAgLTB4MS5iZjE0YzJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLjk1ZjA1NjMzN2FjYzFkMmQ1NTc1MjUyMzJlOTE1NDY3cC0xLAorICAgIDB4MS4zODA1OWM4MzNjNThlYTk3MGY3Yjk2ZDZhZGEzZDljNHAtMSwKKyAgICAweDEuZDRiODg0cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIC0weDEuOTVmMDU2MzM3YWNjMWQyZDU1NzUyNTIzMmU5MTU0NjdwLTEsCisgICAgMHgxLjM4MDU5YzgzM2M1OGVhOTcwZjdiOTZkNmFkYTNkOWM0cC0xLAorICAgIC0weDEuZDRiODg0cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIDB4MS5hMmMyODk1ZWRiMGQ0YmE1MWNkYmQ1MzkwY2FjNDY4ZnAtMSwKKyAgICAweDEuMjY5NzZiMWIxNmQxOTA5MWMwOTI1OTc2NWM0YjM4NzJwLTEsCisgICAgMHgxLmVhNWMzZXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAtMHgxLmEyYzI4OTVlZGIwZDRiYTUxY2RiZDUzOTBjYWM0NjhmcC0xLAorICAgIDB4MS4yNjk3NmIxYjE2ZDE5MDkxYzA5MjU5NzY1YzRiMzg3MnAtMSwKKyAgICAtMHgxLmVhNWMzZXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAweDEuYzFlOTg4Yjk1NjE0YWJkNjVkM2Q4MTFmNWM4ODAzOWJwLTEsCisgICAgMHgxLmU4YzQwNDA2NzhkMmVmNzM2MzMzYTQ1MzdhMTExM2ExcC0yLAorICAgIDB4MS4xMmJkOTJwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAtMHgxLmMxZTk4OGI5NTYxNGFiZDY1ZDNkODExZjVjODgwMzlicC0xLAorICAgIDB4MS5lOGM0MDQwNjc4ZDJlZjczNjMzM2E0NTM3YTExMTNhMXAtMiwKKyAgICAtMHgxLjEyYmQ5MnAwLAorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIDB4MS5kMjk0ZDJlMDZiM2QxMGE0ZGUyNjMxNzJkNTBmNDQ5N3AtMSwKKyAgICAweDEuYTVhNGM4ZjU5OGZhMDA3ODk3MTMxNmViNDkwN2Y5N2JwLTIsCisgICAgMHgxLjI1N2IyNHAwLAorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIC0weDEuZDI5NGQyZTA2YjNkMTBhNGRlMjYzMTcyZDUwZjQ0OTdwLTEsCisgICAgMHgxLmE1YTRjOGY1OThmYTAwNzg5NzEzMTZlYjQ5MDdmOTdicC0yLAorICAgIC0weDEuMjU3YjI0cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLmUwYzA0YmI2NWJkMzMwMTJiZTcyYTM0MGRmMmMwNDRicC0xLAorICAgIDB4MS42MDQzNWJlZWQxMGNhMDU3NjlmMGEzZDg2YTVhMjBmM3AtMiwKKyAgICAweDEuMzgzOGI2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgLTB4MS5lMGMwNGJiNjViZDMzMDEyYmU3MmEzNDBkZjJjMDQ0YnAtMSwKKyAgICAweDEuNjA0MzViZWVkMTBjYTA1NzY5ZjBhM2Q4NmE1YTIwZjNwLTIsCisgICAgLTB4MS4zODM4YjZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAweDEuZWM1ODg0ZWI5OTBjM2RlYWFlZWJkM2YwZjg0ZDY5NjJwLTEsCisgICAgMHgxLjE4ZmVlMGZjNDVjMzFhNzliMmI5NDc4YjFmNzJhOWVicC0yLAorICAgIDB4MS40YWY2NDhwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAtMHgxLmVjNTg4NGViOTkwYzNkZWFhZWViZDNmMGY4NGQ2OTYycC0xLAorICAgIDB4MS4xOGZlZTBmYzQ1YzMxYTc5YjJiOTQ3OGIxZjcyYTllYnAtMiwKKyAgICAtMHgxLjRhZjY0OHAwLAorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS5mNTRkOTgzNWIwZTY2ZTE3NjEyMTYwMjcyNTIxZjNiMHAtMSwKKyAgICAweDEuYTA3MjI1MjA5MGMzMzgyODc2N2FlZTNlMDQwY2NkZGZwLTMsCisgICAgMHgxLjVkYjNkYXAwLAorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIC0weDEuZjU0ZDk4MzViMGU2NmUxNzYxMjE2MDI3MjUyMWYzYjBwLTEsCisgICAgMHgxLmEwNzIyNTIwOTBjMzM4Mjg3NjdhZWUzZTA0MGNjZGRmcC0zLAorICAgIC0weDEuNWRiM2RhcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLmZiOTMzZDFjZDkzMTY4NWU5MDJlNDAzYTFiYWFlY2ZkcC0xLAorICAgIDB4MS4wY2FiNzcwM2E4ZTlkYWNjNGFkMDExODhiNDQzY2ZlZXAtMywKKyAgICAweDEuNzA3MTZjcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgLTB4MS5mYjkzM2QxY2Q5MzE2ODVlOTAyZTQwM2ExYmFhZWNmZHAtMSwKKyAgICAweDEuMGNhYjc3MDNhOGU5ZGFjYzRhZDAxMTg4YjQ0M2NmZWVwLTMsCisgICAgLTB4MS43MDcxNmNwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEuZmYyMGQ5ZDNlODk4NGZlYzMzOTgyZTQyZjU4ODRmMmNwLTEsCisgICAgMHgxLmRkZDE3MWEzYzk4NTFlNzgxOWI1ZTRmNmY5MGU3NjNkcC01LAorICAgIDB4MS44MzJlZmVwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAtMHgxLmZmMjBkOWQzZTg5ODRmZWMzMzk4MmU0MmY1ODg0ZjJjcC0xLAorICAgIDB4MS5kZGQxNzFhM2M5ODUxZTc4MTliNWU0ZjZmOTBlNzYzZHAtNSwKKyAgICAtMHgxLjgzMmVmZXAwLAorICB9LAorICB7IC8vIEVudHJ5IDI2OQorICAgIDB4MS5mZmYxOGYwM2E0YjdlNmFhY2Y1MWY4MzkzMWU4NTA0MnAtMSwKKyAgICAtMHgxLmU2NjhjYjE1NGVlYTY4YmJjN2Y4MTU0ZjQ2YjJlNTM2cC03LAorICAgIDB4MS45NWVjOTBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAtMHgxLmZmZjE4ZjAzYTRiN2U2YWFjZjUxZjgzOTMxZTg1MDQycC0xLAorICAgIC0weDEuZTY2OGNiMTU0ZWVhNjhiYmM3ZjgxNTRmNDZiMmU1MzZwLTcsCisgICAgLTB4MS45NWVjOTBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEuZmUwNDNmODc1YzZlZDRhMmMxYjhkNjlhMDlmY2Y1NzhwLTEsCisgICAgLTB4MS42ODJmMmJiODdhOGY1MDExNzM1MDk0MTc2YzliNmRhY3AtNCwKKyAgICAweDEuYThhYTFjcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgLTB4MS5mZTA0M2Y4NzVjNmVkNGEyYzFiOGQ2OWEwOWZjZjU3OHAtMSwKKyAgICAtMHgxLjY4MmYyYmI4N2E4ZjUwMTE3MzUwOTQxNzZjOWI2ZGFjcC00LAorICAgIC0weDEuYThhYTFjcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgMHgxLmIzZDM2YTk2ODgwY2Y2OWQ5ODg0YTQ5ZjUzODFlOTE3cC0xLAorICAgIDB4MS4wY2IzNDQ5YTBkMGE5ZTA2NDNkNDFmNGE1YjBmN2RiN3AtMSwKKyAgICAweDEuMDRhZmY4cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgLTB4MS5iM2QzNmE5Njg4MGNmNjlkOTg4NGE0OWY1MzgxZTkxN3AtMSwKKyAgICAweDEuMGNiMzQ0OWEwZDBhOWUwNjQzZDQxZjRhNWIwZjdkYjdwLTEsCisgICAgLTB4MS4wNGFmZjhwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuYjNkNDFhZWJjZjM5MWMzMGMzZDJmMWVlN2I3OTcxMGNwLTEsCisgICAgMHgxLjBjYjIyNjk3MTUzYmNmMWY4YTYzYWNkZGQ5NmM1NGNicC0xLAorICAgIDB4MS4wNGIwYTBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAtMHgxLmIzZDQxYWViY2YzOTFjMzBjM2QyZjFlZTdiNzk3MTBjcC0xLAorICAgIDB4MS4wY2IyMjY5NzE1M2JjZjFmOGE2M2FjZGRkOTZjNTRjYnAtMSwKKyAgICAtMHgxLjA0YjBhMHAwLAorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIDB4MS5iM2Q0Y2I0MDVhYjMyOTJiZTdkZjViMWI5ODAzMmZiZXAtMSwKKyAgICAweDEuMGNiMTA4OTNhOWI1NDcxYTQ0MzU2MDcyY2IzM2IzOTVwLTEsCisgICAgMHgxLjA0YjE0OHAwLAorICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIC0weDEuYjNkNGNiNDA1YWIzMjkyYmU3ZGY1YjFiOTgwMzJmYmVwLTEsCisgICAgMHgxLjBjYjEwODkzYTliNTQ3MWE0NDM1NjA3MmNiMzNiMzk1cC0xLAorICAgIC0weDEuMDRiMTQ4cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLmIzZDU3Yjk0MmE3YWQxOWU5Yjk4OTJjOTMxOWUxYmU2cC0xLAorICAgIDB4MS4wY2FmZWE4ZmNhNzc4MTIzNmE1N2U1YjFjOGFlZDM5Y3AtMSwKKyAgICAweDEuMDRiMWYwcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgLTB4MS5iM2Q1N2I5NDJhN2FkMTllOWI5ODkyYzkzMTllMWJlNnAtMSwKKyAgICAweDEuMGNhZmVhOGZjYTc3ODEyMzZhNTdlNWIxYzhhZWQzOWNwLTEsCisgICAgLTB4MS4wNGIxZjBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEuYjNkNjJiZTczZThmYzk5OGM2YzJkZjY1OTA0MjU2MTNwLTEsCisgICAgMHgxLjBjYWVjYzhiNzc4MmY4NjgyN2FmOTJiMGIyMzc0NTEwcC0xLAorICAgIDB4MS4wNGIyOThwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAtMHgxLmIzZDYyYmU3M2U4ZmM5OThjNmMyZGY2NTkwNDI1NjEzcC0xLAorICAgIDB4MS4wY2FlY2M4Yjc3ODJmODY4MjdhZjkyYjBiMjM3NDUxMHAtMSwKKyAgICAtMHgxLjA0YjI5OHAwLAorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIDB4MS5iM2Q2ZGMzOTk2ZjFjNTJhYTFmODNiZGVlMWQwZTAyM3AtMSwKKyAgICAweDEuMGNhZGFlODZiMGQ4MjgxNWQ4ZjYzMmU2N2M3ZTFhOTlwLTEsCisgICAgMHgxLjA0YjM0MHAwLAorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIC0weDEuYjNkNmRjMzk5NmYxYzUyYWExZjgzYmRlZTFkMGUwMjNwLTEsCisgICAgMHgxLjBjYWRhZTg2YjBkODI4MTVkOGY2MzJlNjdjN2UxYTk5cC0xLAorICAgIC0weDEuMDRiMzQwcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMHgxLmIzZDc4YzhiMzNhMDc4NjRiNmE4Nzg1NzNkYjM0YmNhcC0xLAorICAgIDB4MS4wY2FjOTA4MTc2Nzc4YjVhMGNiYWQyMWVlNzVjZTc2NXAtMSwKKyAgICAweDEuMDRiM2U4cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgLTB4MS5iM2Q3OGM4YjMzYTA3ODY0YjZhODc4NTczZGIzNGJjYXAtMSwKKyAgICAweDEuMGNhYzkwODE3Njc3OGI1YTBjYmFkMjFlZTc1Y2U3NjVwLTEsCisgICAgLTB4MS4wNGIzZThwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuYjNkODNjZGMxNDliOTc1N2RmMTk1YWQ4ODVhYjUyMDFwLTEsCisgICAgMHgxLjBjYWI3MjdiYzg2MTlkNjI4MzYxODc2ZTFmMzBhNjMzcC0xLAorICAgIDB4MS4wNGI0OTBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAtMHgxLmIzZDgzY2RjMTQ5Yjk3NTdkZjE5NWFkODg1YWI1MjAxcC0xLAorICAgIDB4MS4wY2FiNzI3YmM4NjE5ZDYyODM2MTg3NmUxZjMwYTYzM3AtMSwKKyAgICAtMHgxLjA0YjQ5MHAwLAorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIDB4MS5iM2Q4ZThmOTkwODM2MGIzOGNkMTNmY2JmNjIyNGQ5M3AtMSwKKyAgICAweDEuMGNhYTViNDUwYTQzMjRmMjA0YTU1NmIwNzJkYTEyNGFwLTEsCisgICAgMHgxLjA0YjUzNHAwLAorICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIC0weDEuYjNkOGU4Zjk5MDgzNjBiMzhjZDEzZmNiZjYyMjRkOTNwLTEsCisgICAgMHgxLjBjYWE1YjQ1MGE0MzI0ZjIwNGE1NTZiMDcyZGExMjRhcC0xLAorICAgIC0weDEuMDRiNTM0cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgLTAuMGYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEucC0xNDksCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLnAtMTQ5LAorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDAuMCwKKyAgICAweDEucDAsCisgICAgMC4wLAorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDAuMGYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5wLTE0OSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5wLTE0OSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEuMTc3M2QzNmE2NGRmNjFkNjcxNWU2MGFmMDYzNTU5ZjRwLTEsCisgICAgMHgxLmFkMDJjOGI5Y2M5M2Y0NDhlZjRlYjA2OGE4ODkyMmEzcC0xLAorICAgIDB4MS4yNzlhNzJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgLTB4MS4xNzczZDM2YTY0ZGY2MWQ2NzE1ZTYwYWYwNjM1NTlmNHAtMSwKKyAgICAweDEuYWQwMmM4YjljYzkzZjQ0OGVmNGViMDY4YTg4OTIyYTNwLTEsCisgICAgLTB4MS4yNzlhNzJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMHgxLjE3NzNkNTE3NjdhNzhmZTkxYjU1ZjZiN2U1ZmQ0NGMycC0xLAorICAgIDB4MS5hZDAyYzdhMjU4YmZiMzYyYWJiZTg2ZmI0OGY0ZTk4YnAtMSwKKyAgICAweDEuMjc5YTc0cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIC0weDEuMTc3M2Q1MTc2N2E3OGZlOTFiNTVmNmI3ZTVmZDQ0YzJwLTEsCisgICAgMHgxLmFkMDJjN2EyNThiZmIzNjJhYmJlODZmYjQ4ZjRlOThicC0xLAorICAgIC0weDEuMjc5YTc0cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDB4MS4xNzczZDZjNDZhNmVhNjg3ZjAzNjI1MTk0ZDI1YmI1MnAtMSwKKyAgICAweDEuYWQwMmM2OGFlNGU5YzU3OWEwOGMwNGNlNTliZTQwMDJwLTEsCisgICAgMHgxLjI3OWE3NnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAtMHgxLjE3NzNkNmM0NmE2ZWE2ODdmMDM2MjUxOTRkMjViYjUycC0xLAorICAgIDB4MS5hZDAyYzY4YWU0ZTljNTc5YTA4YzA0Y2U1OWJlNDAwMnAtMSwKKyAgICAtMHgxLjI3OWE3NnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAweDEuZjk1YjhmNDA1MDEwNTdhYzQ5YWNlZjEzOTkzYjBjNTVwLTEsCisgICAgLTB4MS40OGQxYzllOThiNmMwODc4NGYxMDA0MGY0N2ExMjE5MXAtMywKKyAgICAweDEuYmI2N2FjcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgLTB4MS5mOTViOGY0MDUwMTA1N2FjNDlhY2VmMTM5OTNiMGM1NXAtMSwKKyAgICAtMHgxLjQ4ZDFjOWU5OGI2YzA4Nzg0ZjEwMDQwZjQ3YTEyMTkxcC0zLAorICAgIC0weDEuYmI2N2FjcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMHgxLmY5NWI4ZTliZTcyNzcwMmY3NTk1YWUxMDAwYTE0YTFhcC0xLAorICAgIC0weDEuNDhkMWQ5YjQ2N2UzNzk1NTMzNzMxMWRlY2QwOWZjNzRwLTMsCisgICAgMHgxLmJiNjdhZXAwLAorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIC0weDEuZjk1YjhlOWJlNzI3NzAyZjc1OTVhZTEwMDBhMTRhMWFwLTEsCisgICAgLTB4MS40OGQxZDliNDY3ZTM3OTU1MzM3MzExZGVjZDA5ZmM3NHAtMywKKyAgICAtMHgxLmJiNjdhZXAwLAorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDB4MS5mOTViOGRmNzdlMzZhMzQ0NjcwZWQwNzE0OTE5MWE1OHAtMSwKKyAgICAtMHgxLjQ4ZDFlOTdmNDQ1NWM2ZWFiMTA0ODAyMjIzOGIyYmQwcC0zLAorICAgIDB4MS5iYjY3YjBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAtMHgxLmY5NWI4ZGY3N2UzNmEzNDQ2NzBlZDA3MTQ5MTkxYTU4cC0xLAorICAgIC0weDEuNDhkMWU5N2Y0NDU1YzZlYWIxMDQ4MDIyMjM4YjJiZDBwLTMsCisgICAgLTB4MS5iYjY3YjBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuYjFkODJlODM1YTkxOGRlMThmNWZkYWRjOGIxMjQwY2ZwLTIsCisgICAgMHgxLmNmYzZkMDExYTBlNWQwZmNlYmI1NGI1ZmVkNjcyOTQwcC0xLAorICAgIDB4MS5iZmZmZmVwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgLTB4MS5iMWQ4MmU4MzVhOTE4ZGUxOGY1ZmRhZGM4YjEyNDBjZnAtMiwKKyAgICAweDEuY2ZjNmQwMTFhMGU1ZDBmY2ViYjU0YjVmZWQ2NzI5NDBwLTEsCisgICAgLTB4MS5iZmZmZmVwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMHgxLmIxZDgzMDUzMjE2MTY5NDc2ZjRkMTk4MmI5YjE0YWIxcC0yLAorICAgIDB4MS5jZmM2Y2ZhNTJhZDlmNjJkNmQ1NDIzY2E4MzM5YTAwYXAtMSwKKyAgICAweDEuYzBwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgLTB4MS5iMWQ4MzA1MzIxNjE2OTQ3NmY0ZDE5ODJiOWIxNGFiMXAtMiwKKyAgICAweDEuY2ZjNmNmYTUyYWQ5ZjYyZDZkNTQyM2NhODMzOWEwMGFwLTEsCisgICAgLTB4MS5jMHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuYjFkODMyMjJlODMwZDgzNzQzMjU4ZmQwOTA0MGVlNTZwLTIsCisgICAgMHgxLmNmYzZjZjM4YjRjZGE3NmMzYjA5YjE3ZTlkZWIxOWVhcC0xLAorICAgIDB4MS5jMDAwMDJwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgLTB4MS5iMWQ4MzIyMmU4MzBkODM3NDMyNThmZDA5MDQwZWU1NnAtMiwKKyAgICAweDEuY2ZjNmNmMzhiNGNkYTc2YzNiMDliMTdlOWRlYjE5ZWFwLTEsCisgICAgLTB4MS5jMDAwMDJwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLjQ0ZWIzNjkxNDI4MDYyYjI3OTI1YzU4NWFkNTlkNjJhcC0xLAorICAgIDB4MS44YmIxMDZlYWM3Yzc1ZDMzZmJiMTk0NDYzMTNlY2MyZnAtMSwKKyAgICAweDEuNWZmZmZlcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIC0weDEuNDRlYjM2OTE0MjgwNjJiMjc5MjVjNTg1YWQ1OWQ2MmFwLTEsCisgICAgMHgxLjhiYjEwNmVhYzdjNzVkMzNmYmIxOTQ0NjMxM2VjYzJmcC0xLAorICAgIC0weDEuNWZmZmZlcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS40NGViMzgxY2YzODZhYjA0YTRmODY1NmFiZWE4MGI4M3AtMSwKKyAgICAweDEuOGJiMTA1YTVkYzkwMDYxOGY4MGZhNTFkMzAzYzY5cC0xLAorICAgIDB4MS42MHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAtMHgxLjQ0ZWIzODFjZjM4NmFiMDRhNGY4NjU2YWJlYTgwYjgzcC0xLAorICAgIDB4MS44YmIxMDVhNWRjOTAwNjE4ZjgwZmE1MWQzMDNjNjlwLTEsCisgICAgLTB4MS42MHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuNDRlYjM5YThhNDhiYWU2Yjk4YWUxMWM5NDAwNTM1ZTVwLTEsCisgICAgMHgxLjhiYjEwNDYwZjE1NzIzNGNlZWM3ZDk2NDRhMWE3OGU1cC0xLAorICAgIDB4MS42MDAwMDJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgLTB4MS40NGViMzlhOGE0OGJhZTZiOThhZTExYzk0MDA1MzVlNXAtMSwKKyAgICAweDEuOGJiMTA0NjBmMTU3MjM0Y2VlYzdkOTY0NGExYTc4ZTVwLTEsCisgICAgLTB4MS42MDAwMDJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgMHgxLmRhZDkwMTdiOTY0MDhjMzc1ZDRmYWYwZTQ3NzZkMWZjcC0xLAorICAgIDB4MS43ZWY0OGI5YTZmZDVjMjRmNWVjMzk4MzllMTcyOWI3OHAtMiwKKyAgICAweDEuMmZmZmZlcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzIxCisgICAgLTB4MS5kYWQ5MDE3Yjk2NDA4YzM3NWQ0ZmFmMGU0Nzc2ZDFmY3AtMSwKKyAgICAweDEuN2VmNDhiOWE2ZmQ1YzI0ZjVlYzM5ODM5ZTE3MjliNzhwLTIsCisgICAgLTB4MS4yZmZmZmVwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEuZGFkOTAyZmE4YWM4NzBmNTJmMWI4NDNhYzgzYmMzZWRwLTEsCisgICAgMHgxLjdlZjQ4NDJmMGJjY2Q2MGQ0YTUwMWRjOGJjNGI1N2IzcC0yLAorICAgIDB4MS4zMHAwLAorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIC0weDEuZGFkOTAyZmE4YWM4NzBmNTJmMWI4NDNhYzgzYmMzZWRwLTEsCisgICAgMHgxLjdlZjQ4NDJmMGJjY2Q2MGQ0YTUwMWRjOGJjNGI1N2IzcC0yLAorICAgIC0weDEuMzBwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAweDEuZGFkOTA0Nzk3ZjQ4ZWE0ZWY0ZmQyZTQ3ZmU0ZDUyYmRwLTEsCisgICAgMHgxLjdlZjQ3Y2MzYTdiZGVkZjkyNTIwNzQyNjNkOGE0NTk2cC0yLAorICAgIDB4MS4zMDAwMDJwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAtMHgxLmRhZDkwNDc5N2Y0OGVhNGVmNGZkMmU0N2ZlNGQ1MmJkcC0xLAorICAgIDB4MS43ZWY0N2NjM2E3YmRlZGY5MjUyMDc0MjYzZDhhNDU5NnAtMiwKKyAgICAtMHgxLjMwMDAwMnAwLAorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIDB4MS40YjcwODA5M2M5Y2I0NTM1NWU3ODIxZTVhYWQ5OGNlOHAtMSwKKyAgICAtMHgxLjg2M2VmNTA4NWJjYzM1OGQyYWU4NTI1YmYzOWYwYzQwcC0xLAorICAgIDB4MS4zN2ZmZmVwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAtMHgxLjRiNzA4MDkzYzljYjQ1MzU1ZTc4MjFlNWFhZDk4Y2U4cC0xLAorICAgIC0weDEuODYzZWY1MDg1YmNjMzU4ZDJhZTg1MjViZjM5ZjBjNDBwLTEsCisgICAgLTB4MS4zN2ZmZmVwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAweDEuNGI3MDdhN2FjZGVjYzg0MjM5NDYzZTc4YjMxMmZhMTBwLTEsCisgICAgLTB4MS44NjNlZmEzNjFkYzI1MmJjYTFlYWVlZDM5NzQ5YmVkN3AtMSwKKyAgICAweDEuMzhwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAtMHgxLjRiNzA3YTdhY2RlY2M4NDIzOTQ2M2U3OGIzMTJmYTEwcC0xLAorICAgIC0weDEuODYzZWZhMzYxZGMyNTJiY2ExZWFlZWQzOTc0OWJlZDdwLTEsCisgICAgLTB4MS4zOHAxLAorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS40YjcwNzQ2MWQxZjk5NDQ3NmM2NzdjNWFkNWRkYjI2NHAtMSwKKyAgICAtMHgxLjg2M2VmZjYzZGZhMDBiZmM3NThiYWY0Njk0NjlkNzQxcC0xLAorICAgIDB4MS4zODAwMDJwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAtMHgxLjRiNzA3NDYxZDFmOTk0NDc2YzY3N2M1YWQ1ZGRiMjY0cC0xLAorICAgIC0weDEuODYzZWZmNjNkZmEwMGJmYzc1OGJhZjQ2OTQ2OWQ3NDFwLTEsCisgICAgLTB4MS4zODAwMDJwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuMDY2ZTdmNzA1YTZjYTJiOWUxMDdmN2RjOWYzYjI2ZTZwLTQsCisgICAgMHgxLmZlZjJiMmQwYTEwZTI3MzljNTY2OTM2NDgwYTE0NzlicC0xLAorICAgIDB4MS4wNjljOGNwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgLTB4MS4wNjZlN2Y3MDVhNmNhMmI5ZTEwN2Y3ZGM5ZjNiMjZlNnAtNCwKKyAgICAweDEuZmVmMmIyZDBhMTBlMjczOWM1NjY5MzY0ODBhMTQ3OWJwLTEsCisgICAgLTB4MS4wNjljOGNwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLjA1ZTQ3NmQyN2ZlYmM4YjdlOTY5MDAwOWIzNjdjMzI3cC0zLAorICAgIDB4MS5mYmNiZTY4ZGQxMGJhZDBhMjI5Y2NiYjU4MGNjNTQzNnAtMSwKKyAgICAweDEuMDY5YzhjcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIC0weDEuMDVlNDc2ZDI3ZmViYzhiN2U5NjkwMDA5YjM2N2MzMjdwLTMsCisgICAgMHgxLmZiY2JlNjhkZDEwYmFkMGEyMjljY2JiNTgwY2M1NDM2cC0xLAorICAgIC0weDEuMDY5YzhjcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDB4MS44NzdlMmRlNWM5YTA2NmI4ZGI1OTVhZGMxNDlhZjBjMHAtMywKKyAgICAweDEuZjY4ZWViZWY3MmU3ZjYxMjZiM2YzZGRlNjQ2YTc1NWNwLTEsCisgICAgMHgxLjg5ZWFkMnAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAtMHgxLjg3N2UyZGU1YzlhMDY2YjhkYjU5NWFkYzE0OWFmMGMwcC0zLAorICAgIDB4MS5mNjhlZWJlZjcyZTdmNjEyNmIzZjNkZGU2NDZhNzU1Y3AtMSwKKyAgICAtMHgxLjg5ZWFkMnAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuMDNiZTA3YWNiOWRhYjcxOWI0MzQzYTMzYjlmYTZhZmVwLTIsCisgICAgMHgxLmVmNDE0NTlkMmU5MGVhMWI3ZmFhZDdmYWJkMWZkNDQ0cC0xLAorICAgIDB4MS4wNjljOGNwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgLTB4MS4wM2JlMDdhY2I5ZGFiNzE5YjQzNDNhMzNiOWZhNmFmZXAtMiwKKyAgICAweDEuZWY0MTQ1OWQyZTkwZWExYjdmYWFkN2ZhYmQxZmQ0NDRwLTEsCisgICAgLTB4MS4wNjljOGNwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMHgxLjQyYWJiYzViM2IyZjkxZThlY2U0NmU1ZWZmZDI4MzY5cC0yLAorICAgIDB4MS5lNWVhYTIzYTI3ZmU4ZDY4OTBhM2VkYWNlMWM2MTk5OHAtMSwKKyAgICAweDEuNDg0M2IwcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIC0weDEuNDJhYmJjNWIzYjJmOTFlOGVjZTQ2ZTVlZmZkMjgzNjlwLTIsCisgICAgMHgxLmU1ZWFhMjNhMjdmZThkNjg5MGEzZWRhY2UxYzYxOTk4cC0xLAorICAgIC0weDEuNDg0M2IwcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS44MDQ2MDE0MTFkOTNmNDc1MDkxOTY3MDA2MWRlMDdkOXAtMiwKKyAgICAweDEuZGE5NGQ0Yjk5YzNhOWE1ZTBkMWZjODZkNTMzNjlhODRwLTEsCisgICAgMHgxLjg5ZWFkNHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAtMHgxLjgwNDYwMTQxMWQ5M2Y0NzUwOTE5NjcwMDYxZGUwN2Q5cC0yLAorICAgIDB4MS5kYTk0ZDRiOTljM2E5YTVlMGQxZmM4NmQ1MzM2OWE4NHAtMSwKKyAgICAtMHgxLjg5ZWFkNHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuYmM0YzA4YWYzNTYwODhiMTY5NDk5NWJmYWY4YTI5N2JwLTIsCisgICAgMHgxLmNkNGJjOWFmYzAxMjMwYjJmOTgyZjY5NjhkYWI3ZjA1cC0xLAorICAgIDB4MS5jYjkxZjhwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzQ1CisgICAgLTB4MS5iYzRjMDhhZjM1NjA4OGIxNjk0OTk1YmZhZjhhMjk3YnAtMiwKKyAgICAweDEuY2Q0YmM5YWZjMDEyMzBiMmY5ODJmNjk2OGRhYjdmMDVwLTEsCisgICAgLTB4MS5jYjkxZjhwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMHgxLmY2N2VhZTM0ZGMwYjQyYjQ2NWZkMmEzZmIwNzU2NGE0cC0yLAorICAgIDB4MS5iZTFkN2FkZjA3N2RlZjJhMzYwZmVjMjNkYmJjZWYwOXAtMSwKKyAgICAweDEuMDY5YzhlcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIC0weDEuZjY3ZWFlMzRkYzBiNDJiNDY1ZmQyYTNmYjA3NTY0YTRwLTIsCisgICAgMHgxLmJlMWQ3YWRmMDc3ZGVmMmEzNjBmZWMyM2RiYmNlZjA5cC0xLAorICAgIC0weDEuMDY5YzhlcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDB4MS4xNzUwNWM4NjIzMTg5OGZkODZiMThkMjI4MmQ5M2VlZHAtMSwKKyAgICAweDEuYWQxOWUwODQ3ZDI1ZjNhYTE0MjI4OWRhYjU1N2JmOTZwLTEsCisgICAgMHgxLjI3NzAyMHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAtMHgxLjE3NTA1Yzg2MjMxODk4ZmQ4NmIxOGQyMjgyZDkzZWVkcC0xLAorICAgIDB4MS5hZDE5ZTA4NDdkMjVmM2FhMTQyMjg5ZGFiNTU3YmY5NnAtMSwKKyAgICAtMHgxLjI3NzAyMHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAweDEuMzIzYjhlNDBkMTY1NzVlNTBkYzdiNmU1NjdiYjUwODRwLTEsCisgICAgMHgxLjlhNTJlMDhiMTkxYmQ1NTUxMmM4MzY1MDc0ZjE5ODdmcC0xLAorICAgIDB4MS40ODQzYjJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgLTB4MS4zMjNiOGU0MGQxNjU3NWU1MGRjN2I2ZTU2N2JiNTA4NHAtMSwKKyAgICAweDEuOWE1MmUwOGIxOTFiZDU1NTEyYzgzNjUwNzRmMTk4N2ZwLTEsCisgICAgLTB4MS40ODQzYjJwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLjRiZTQ5YjA4YTFlMTYyOWNiZGFhNTA3ZTE4MjU1Y2Q4cC0xLAorICAgIDB4MS44NWRjM2JiN2MyZTlhYmI1Y2NjYjZkOTZkMTJkMzljNHAtMSwKKyAgICAweDEuNjkxNzQ0cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIC0weDEuNGJlNDliMDhhMWUxNjI5Y2JkYWE1MDdlMTgyNTVjZDhwLTEsCisgICAgMHgxLjg1ZGMzYmI3YzJlOWFiYjVjY2NiNmQ5NmQxMmQzOWM0cC0xLAorICAgIC0weDEuNjkxNzQ0cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM1NAorICAgIDB4MS42NDMwODQ3ZGJiYmZkNDZjYmViYmM2ZDVmNTFjN2M0OXAtMSwKKyAgICAweDEuNmZjYjc4ZTFjZDY1ZDJlNGZkZTcxMThjYWFjNzlkNmRwLTEsCisgICAgMHgxLjg5ZWFkNnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAtMHgxLjY0MzA4NDdkYmJiZmQ0NmNiZWJiYzZkNWY1MWM3YzQ5cC0xLAorICAgIDB4MS42ZmNiNzhlMWNkNjVkMmU0ZmRlNzExOGNhYWM3OWQ2ZHAtMSwKKyAgICAtMHgxLjg5ZWFkNnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAweDEuN2IwNWJiODdiMzg4NDRlNTYwMDNjNDFlZjgwNGIyNzNwLTEsCisgICAgMHgxLjU4MzdjZTRkYzgzNWQ0YTU0NTRlYzBhMWJiMzk0MDgxcC0xLAorICAgIDB4MS5hYWJlNjhwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgLTB4MS43YjA1YmI4N2IzODg0NGU1NjAwM2M0MWVmODA0YjI3M3AtMSwKKyAgICAweDEuNTgzN2NlNGRjODM1ZDRhNTQ1NGVjMGExYmIzOTQwODFwLTEsCisgICAgLTB4MS5hYWJlNjhwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgMHgxLjkwNGMzYjM4OWQ1NWQzZGVkZGIzOWQwNWViMzY2NTcxcC0xLAorICAgIDB4MS4zZjNhMDk0Mjc5NjZlOTUxODgwMmRlZTNiZjQ0M2E5NXAtMSwKKyAgICAweDEuY2I5MWZhcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIC0weDEuOTA0YzNiMzg5ZDU1ZDNkZWRkYjM5ZDA1ZWIzNjY1NzFwLTEsCisgICAgMHgxLjNmM2EwOTQyNzk2NmU5NTE4ODAyZGVlM2JmNDQzYTk1cC0xLAorICAgIC0weDEuY2I5MWZhcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS5hM2VkYTIxMTc5OGE4MjY5N2Q2MjQzMWY5YWU0NmNjNHAtMSwKKyAgICAweDEuMjRlYzczZjFhZWVmNDk0MGJiOGRhMTlhODJiYmM0OWZwLTEsCisgICAgMHgxLmVjNjU4Y3AtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAtMHgxLmEzZWRhMjExNzk4YTgyNjk3ZDYyNDMxZjlhZTQ2Y2M0cC0xLAorICAgIDB4MS4yNGVjNzNmMWFlZWY0OTQwYmI4ZGExOWE4MmJiYzQ5ZnAtMSwKKyAgICAtMHgxLmVjNjU4Y3AtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuYjVkNTQ4ODNmY2I2MTIzYmMyOGFhYzkxZjA4NWU0ZWVwLTEsCisgICAgMHgxLjA5NmFiYjg2MmY5YmQ1NTE1OTgyYzI4MThjMzMyZmY5cC0xLAorICAgIDB4MS4wNjljOGVwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAtMHgxLmI1ZDU0ODgzZmNiNjEyM2JjMjhhYWM5MWYwODVlNGVlcC0xLAorICAgIDB4MS4wOTZhYmI4NjJmOWJkNTUxNTk4MmMyODE4YzMzMmZmOXAtMSwKKyAgICAtMHgxLjA2OWM4ZXAwLAorICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIDB4MS5jNWYwNWEwMTM1ZDQ4ODJjNzY4Y2RmMThlMmUxMTEyY3AtMSwKKyAgICAweDEuZDlhMzljMGRkZGM2NTRjNzE3ZTMwMzZkYTVkZDY4NWNwLTIsCisgICAgMHgxLjE3MDY1NnAwLAorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIC0weDEuYzVmMDVhMDEzNWQ0ODgyYzc2OGNkZjE4ZTJlMTExMmNwLTEsCisgICAgMHgxLmQ5YTM5YzBkZGRjNjU0YzcxN2UzMDM2ZGE1ZGQ2ODVjcC0yLAorICAgIC0weDEuMTcwNjU2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgMHgxLmQ0MmRlNTNlMzE1YzgzOWNlMTg4ZTIwMTIwNWU5OWRlcC0xLAorICAgIDB4MS45ZTdmODE4NDBjMGJiZDBmMWIxMzczMzA2MTA2MmQzNHAtMiwKKyAgICAweDEuMjc3MDFlcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgLTB4MS5kNDJkZTUzZTMxNWM4MzljZTE4OGUyMDEyMDVlOTlkZXAtMSwKKyAgICAweDEuOWU3ZjgxODQwYzBiYmQwZjFiMTM3MzMwNjEwNjJkMzRwLTIsCisgICAgLTB4MS4yNzcwMWVwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAweDEuZTA3ZWVmNDVkOTFlZWE4YTZjYzczNjlhYTBlNTUzODhwLTEsCisgICAgMHgxLjYxYTc1ZTJkZWI1OTY3MzFjOGNkNDVlM2Q5Nzk0NTI2cC0yLAorICAgIDB4MS4zN2Q5ZTZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICAtMHgxLmUwN2VlZjQ1ZDkxZWVhOGE2Y2M3MzY5YWEwZTU1Mzg4cC0xLAorICAgIDB4MS42MWE3NWUyZGViNTk2NzMxYzhjZDQ1ZTNkOTc5NDUyNnAtMiwKKyAgICAtMHgxLjM3ZDllNnAwLAorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIDB4MS5lYWQ2ODMzYjJhYTAwMmJhYTFjMmIxOWEzOGRjOWI3OXAtMSwKKyAgICAweDEuMjM1YjMzN2IwOTFjZGQ4YWMwNjM5MGFiYzY4MTZiODJwLTIsCisgICAgMHgxLjQ4NDNhZXAwLAorICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIC0weDEuZWFkNjgzM2IyYWEwMDJiYWExYzJiMTlhMzhkYzliNzlwLTEsCisgICAgMHgxLjIzNWIzMzdiMDkxY2RkOGFjMDYzOTBhYmM2ODE2YjgycC0yLAorICAgIC0weDEuNDg0M2FlcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzcyCisgICAgMHgxLmYzMjliZmZhNmEyMDg1OTFlZWNiNjkwNWQ3NTk0ZTNicC0xLAorICAgIDB4MS5jN2I5MTQ2ZDZkMTA4MjRmZjY1MmRjMzkwYmEyZDdmOXAtMywKKyAgICAweDEuNThhZDc2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgLTB4MS5mMzI5YmZmYTZhMjA4NTkxZWVjYjY5MDVkNzU5NGUzYnAtMSwKKyAgICAweDEuYzdiOTE0NmQ2ZDEwODI0ZmY2NTJkYzM5MGJhMmQ3ZjlwLTMsCisgICAgLTB4MS41OGFkNzZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAweDEuZjk2ZmUzOGFmYmQ5NWI1ZmNkMDg2MDgxMTBlOTM4MWZwLTEsCisgICAgMHgxLjQ2ZGM1YjJmMWRlOTc3ZWZmZjdjMjc4YjVhZGIyYTc1cC0zLAorICAgIDB4MS42OTE3M2VwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzUKKyAgICAtMHgxLmY5NmZlMzhhZmJkOTViNWZjZDA4NjA4MTEwZTkzODFmcC0xLAorICAgIDB4MS40NmRjNWIyZjFkZTk3N2VmZmY3YzI3OGI1YWRiMmE3NXAtMywKKyAgICAtMHgxLjY5MTczZXAwLAorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIDB4MS5mZGEyNTQ1NWQ5NTY3NzcyZjIwZjI1ZDE1ZWZjNjc3NXAtMSwKKyAgICAweDEuODk0ZjkzZWY0OWM0NTc1ODAwYmJkNjQ2YTNhMzFkMmFwLTQsCisgICAgMHgxLjc5ODEwNnAwLAorICB9LAorICB7IC8vIEVudHJ5IDM3NworICAgIC0weDEuZmRhMjU0NTVkOTU2Nzc3MmYyMGYyNWQxNWVmYzY3NzVwLTEsCisgICAgMHgxLjg5NGY5M2VmNDljNDU3NTgwMGJiZDY0NmEzYTMxZDJhcC00LAorICAgIC0weDEuNzk4MTA2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzc4CisgICAgMHgxLmZmYmNhODE2ZjFmMTUxNmVjNWQ3NTdiMGRiNTRhZTM0cC0xLAorICAgIDB4MS4wNjkxNjRlM2Y1Y2VlOTRkODY1ZmI1MmUzMTZkZmY2YnAtNSwKKyAgICAweDEuODllYWNlcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzc5CisgICAgLTB4MS5mZmJjYTgxNmYxZjE1MTZlYzVkNzU3YjBkYjU0YWUzNHAtMSwKKyAgICAweDEuMDY5MTY0ZTNmNWNlZTk0ZDg2NWZiNTJlMzE2ZGZmNmJwLTUsCisgICAgLTB4MS44OWVhY2VwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODAKKyAgICAweDEuZmZiY2E4ODIyOGIxNjMxODlhYjhkNjM3ZGI5OWJkMmRwLTEsCisgICAgLTB4MS4wNjkwOTNlZWMwZWQwNjZlYzgzZGQwMzQ0OThlZjhiZnAtNSwKKyAgICAweDEuOWE1NDk2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgLTB4MS5mZmJjYTg4MjI4YjE2MzE4OWFiOGQ2MzdkYjk5YmQyZHAtMSwKKyAgICAtMHgxLjA2OTA5M2VlYzBlZDA2NmVjODNkZDAzNDQ5OGVmOGJmcC01LAorICAgIC0weDEuOWE1NDk2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgMHgxLmZkYTI1NTk3MGNjZGRiOWQxMjdlY2Y2MzQwM2MyYmY3cC0xLAorICAgIC0weDEuODk0ZjJiZTI5NzlkZDljZWQ4M2NjYzYwY2Y0OWNkNDRwLTQsCisgICAgMHgxLmFhYmU1ZXAwLAorICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIC0weDEuZmRhMjU1OTcwY2NkZGI5ZDEyN2VjZjYzNDAzYzJiZjdwLTEsCisgICAgLTB4MS44OTRmMmJlMjk3OWRkOWNlZDgzY2NjNjBjZjQ5Y2Q0NHAtNCwKKyAgICAtMHgxLmFhYmU1ZXAwLAorICB9LAorICB7IC8vIEVudHJ5IDM4NAorICAgIDB4MS5mOTZmZTVhMGRhMjQ0NDg5ZmIyZjRiOTdiM2U0ODc1N3AtMSwKKyAgICAtMHgxLjQ2ZGMyNzk2NzM1MTk1YTE1YzgwZTViNzE5ZTJmYzQycC0zLAorICAgIDB4MS5iYjI4MjZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAtMHgxLmY5NmZlNWEwZGEyNDQ0ODlmYjJmNGI5N2IzZTQ4NzU3cC0xLAorICAgIC0weDEuNDZkYzI3OTY3MzUxOTVhMTVjODBlNWI3MTllMmZjNDJwLTMsCisgICAgLTB4MS5iYjI4MjZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODYKKyAgICAweDEuZjMyOWMyZTJjMWEzOWJhZDhlY2RjYjg3OTYxYmE0NGFwLTEsCisgICAgLTB4MS5jN2I4ZTE3OGI3ZThjMDFkOWYzMjA0NjZjYzdhNjhkNHAtMywKKyAgICAweDEuY2I5MWVlcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgLTB4MS5mMzI5YzJlMmMxYTM5YmFkOGVjZGNiODc5NjFiYTQ0YXAtMSwKKyAgICAtMHgxLmM3YjhlMTc4YjdlOGMwMWQ5ZjMyMDQ2NmNjN2E2OGQ0cC0zLAorICAgIC0weDEuY2I5MWVlcDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgMHgxLmVhZDY4NmYyZWM1NzJjODNlZDM0YTAxZjc2NGQxOTNlcC0xLAorICAgIC0weDEuMjM1YjFhNmQ3NjdlNGIzNjJjNjQ1NzFhYzk3YjRhMWNwLTIsCisgICAgMHgxLmRiZmJiNnAwLAorICB9LAorICB7IC8vIEVudHJ5IDM4OQorICAgIC0weDEuZWFkNjg2ZjJlYzU3MmM4M2VkMzRhMDFmNzY0ZDE5M2VwLTEsCisgICAgLTB4MS4yMzViMWE2ZDc2N2U0YjM2MmM2NDU3MWFjOTdiNGExY3AtMiwKKyAgICAtMHgxLmRiZmJiNnAwLAorICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIDB4MS5lMDdlZjNjOTFiZDUwMGEwZGUyMzBhZDU3MzE2MzE2M3AtMSwKKyAgICAtMHgxLjYxYTc0NWE3N2I3ZTgzYzJmOGEyZjliMDkxZTg5YWFhcC0yLAorICAgIDB4MS5lYzY1N2VwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTEKKyAgICAtMHgxLmUwN2VmM2M5MWJkNTAwYTBkZTIzMGFkNTczMTYzMTYzcC0xLAorICAgIC0weDEuNjFhNzQ1YTc3YjdlODNjMmY4YTJmOWIwOTFlODlhYWFwLTIsCisgICAgLTB4MS5lYzY1N2VwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAweDEuZDQyZGVhODgzNWM4OGFkYjljZGUxNzM0N2Y5MzRlMjVwLTEsCisgICAgLTB4MS45ZTdmNjk5ZThiOWFhZjhlZDUxYzcxYzhmNzNiMGI3NHAtMiwKKyAgICAweDEuZmNjZjQ2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzkzCisgICAgLTB4MS5kNDJkZWE4ODM1Yzg4YWRiOWNkZTE3MzQ3ZjkzNGUyNXAtMSwKKyAgICAtMHgxLjllN2Y2OTllOGI5YWFmOGVkNTFjNzFjOGY3M2IwYjc0cC0yLAorICAgIC0weDEuZmNjZjQ2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgMzk0CisgICAgMHgxLmM1ZjA1ZTMyYzgwZmIwZmU2MDMwMzNlYzAyOGE0YzMycC0xLAorICAgIC0weDEuZDlhMzhiZmEzMTk1YmExY2FhN2ZiNjliYzFkMDRlNDJwLTIsCisgICAgMHgxLjA2OWM4OHAxLAorICB9LAorICB7IC8vIEVudHJ5IDM5NQorICAgIC0weDEuYzVmMDVlMzJjODBmYjBmZTYwMzAzM2VjMDI4YTRjMzJwLTEsCisgICAgLTB4MS5kOWEzOGJmYTMxOTViYTFjYWE3ZmI2OWJjMWQwNGU0MnAtMiwKKyAgICAtMHgxLjA2OWM4OHAxLAorICB9LAorICB7IC8vIEVudHJ5IDM5NgorICAgIDB4MS5iNWQ1NGQzNzMyZDNiMmU3OWQ0OTA3ZTExNTQwMWRkYXAtMSwKKyAgICAtMHgxLjA5NmFiM2M1NWM5MWYzNmUyMzU5ZWQxYzVhODM0MmRmcC0xLAorICAgIDB4MS4wZWQxNmNwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAtMHgxLmI1ZDU0ZDM3MzJkM2IyZTc5ZDQ5MDdlMTE1NDAxZGRhcC0xLAorICAgIC0weDEuMDk2YWIzYzU1YzkxZjM2ZTIzNTllZDFjNWE4MzQyZGZwLTEsCisgICAgLTB4MS4wZWQxNmNwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTgKKyAgICAweDEuYTNlZGE3NDE2MWQwNmI4M2VjMmM4ZGMzOTZkODEzYjlwLTEsCisgICAgLTB4MS4yNGVjNmM4MjA2ZTc0NDMyMmQ5OWY0N2U5ZTQxYmVjZXAtMSwKKyAgICAweDEuMTcwNjUwcDEsCisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgLTB4MS5hM2VkYTc0MTYxZDA2YjgzZWMyYzhkYzM5NmQ4MTNiOXAtMSwKKyAgICAtMHgxLjI0ZWM2YzgyMDZlNzQ0MzIyZDk5ZjQ3ZTllNDFiZWNlcC0xLAorICAgIC0weDEuMTcwNjUwcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLjkwNGM0MjFlZmNlNThmNGU4MTcwZDM2ZGNkYThlMDJjcC0xLAorICAgIC0weDEuM2YzYTAwOWI4MmI1YjgyMzRlMTI5NmRkNzNjZmY0OWRwLTEsCisgICAgMHgxLjFmM2IzNHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIC0weDEuOTA0YzQyMWVmY2U1OGY0ZTgxNzBkMzZkY2RhOGUwMmNwLTEsCisgICAgLTB4MS4zZjNhMDA5YjgyYjViODIzNGUxMjk2ZGQ3M2NmZjQ5ZHAtMSwKKyAgICAtMHgxLjFmM2IzNHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIDB4MS43YjA1YzQ1MDkzOTQ0ZDZhZmIwYzkwZDJmOWNiMjE3ZnAtMSwKKyAgICAtMHgxLjU4MzdjNGExODRjY2Y3ZWQ1N2MxODlmMmFkZGYzMmM1cC0xLAorICAgIDB4MS4yNzcwMThwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAtMHgxLjdiMDVjNDUwOTM5NDRkNmFmYjBjOTBkMmY5Y2IyMTdmcC0xLAorICAgIC0weDEuNTgzN2M0YTE4NGNjZjdlZDU3YzE4OWYyYWRkZjMyYzVwLTEsCisgICAgLTB4MS4yNzcwMThwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDQKKyAgICAweDEuNjQzMDhmNTA2ZmZkYWYxMzI2ZDEwYjMzODAyNzhlOThwLTEsCisgICAgLTB4MS42ZmNiNmU2Njg1ZTcyZmI0MDc0ZTcwY2QzMTYyZDNiYXAtMSwKKyAgICAweDEuMmZhNGZjcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDA1CisgICAgLTB4MS42NDMwOGY1MDZmZmRhZjEzMjZkMTBiMzM4MDI3OGU5OHAtMSwKKyAgICAtMHgxLjZmY2I2ZTY2ODVlNzJmYjQwNzRlNzBjZDMxNjJkM2JhcC0xLAorICAgIC0weDEuMmZhNGZjcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgMHgxLjRiZTRhODA3NmMxMzVhNDhmM2YxYTFhYWEzNjI0NzVmcC0xLAorICAgIC0weDEuODVkYzMwYTc5ZjI2NzU0YWIxMzcwMzM4ZWU3YmZkMTFwLTEsCisgICAgMHgxLjM3ZDllMHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIC0weDEuNGJlNGE4MDc2YzEzNWE0OGYzZjFhMWFhYTM2MjQ3NWZwLTEsCisgICAgLTB4MS44NWRjMzBhNzlmMjY3NTRhYjEzNzAzMzhlZTdiZmQxMXAtMSwKKyAgICAtMHgxLjM3ZDllMHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIDB4MS4zMjNiOWQ4ODhkNGRhNzdhNjEwODkzNzM1ZWVlZDFjYnAtMSwKKyAgICAtMHgxLjlhNTJkNTIzYjE1MzJlNGVkNDc3ZTI3ZGM2MDUxYzEycC0xLAorICAgIDB4MS40MDBlYzRwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAtMHgxLjMyM2I5ZDg4OGQ0ZGE3N2E2MTA4OTM3MzVlZWVkMWNicC0xLAorICAgIC0weDEuOWE1MmQ1MjNiMTUzMmU0ZWQ0NzdlMjdkYzYwNTFjMTJwLTEsCisgICAgLTB4MS40MDBlYzRwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAweDEuMTc1MDZlMmRmYjYwM2QzNGI5YWYzOWIxMmMxZGI3MzVwLTEsCisgICAgLTB4MS5hZDE5ZDUwNjY0YWJmMGMwMTQxMTM3ZDJjYTUwOWYyMXAtMSwKKyAgICAweDEuNDg0M2E4cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDExCisgICAgLTB4MS4xNzUwNmUyZGZiNjAzZDM0YjlhZjM5YjEyYzFkYjczNXAtMSwKKyAgICAtMHgxLmFkMTlkNTA2NjRhYmYwYzAxNDExMzdkMmNhNTA5ZjIxcC0xLAorICAgIC0weDEuNDg0M2E4cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMHgxLmY2N2VkNjY3MzUyZDQ4Mjc0NTAwMTNmMTVlMzIxYmZicC0yLAorICAgIC0weDEuYmUxZDZmOGQ1MTdkYjVjMmNmN2RlMGZhZjA4MDhkMzBwLTEsCisgICAgMHgxLjUwNzg4Y3AxLAorICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIC0weDEuZjY3ZWQ2NjczNTJkNDgyNzQ1MDAxM2YxNWUzMjFiZmJwLTIsCisgICAgLTB4MS5iZTFkNmY4ZDUxN2RiNWMyY2Y3ZGUwZmFmMDgwOGQzMHAtMSwKKyAgICAtMHgxLjUwNzg4Y3AxLAorICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIDB4MS5iYzRjMzVkYTUxZTM0Yjc3NmU1ZTA0ZGE1OGYyMzQ0MXAtMiwKKyAgICAtMHgxLmNkNGJiZWNmN2YyNzA1ZDRmZDAwZGQ0NjM3ODBmNDVlcC0xLAorICAgIDB4MS41OGFkNzBwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTUKKyAgICAtMHgxLmJjNGMzNWRhNTFlMzRiNzc2ZTVlMDRkYTU4ZjIzNDQxcC0yLAorICAgIC0weDEuY2Q0YmJlY2Y3ZjI3MDVkNGZkMDBkZDQ2Mzc4MGY0NWVwLTEsCisgICAgLTB4MS41OGFkNzBwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAweDEuODA0NjMzNmU2ODQyN2NmNzU2MDU2ZDNmNGVkYmI2NjJwLTIsCisgICAgLTB4MS5kYTk0Y2E5MTVkYTNjZGQxZmZmODM5ZDg1ZWVjMzllMnAtMSwKKyAgICAweDEuNjBlMjU0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDE3CisgICAgLTB4MS44MDQ2MzM2ZTY4NDI3Y2Y3NTYwNTZkM2Y0ZWRiYjY2MnAtMiwKKyAgICAtMHgxLmRhOTRjYTkxNWRhM2NkZDFmZmY4MzlkODVlZWMzOWUycC0xLAorICAgIC0weDEuNjBlMjU0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgMHgxLjQyYWJmMzg3MjkwNWU2MzJmMjA0YzQxYjI0YWY5MGI2cC0yLAorICAgIC0weDEuZTVlYTk5MTE2YjM5MzYxYWM5MjZkZDlmZGMyMDg5ZDFwLTEsCisgICAgMHgxLjY5MTczOHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIC0weDEuNDJhYmYzODcyOTA1ZTYzMmYyMDRjNDFiMjRhZjkwYjZwLTIsCisgICAgLTB4MS5lNWVhOTkxMTZiMzkzNjFhYzkyNmRkOWZkYzIwODlkMXAtMSwKKyAgICAtMHgxLjY5MTczOHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIDB4MS4wM2JlNDNjNjk5ZjM1MzY5OTBkY2Y1YTY2NjVhYzIzOXAtMiwKKyAgICAtMHgxLmVmNDEzZGJiZGEyODU5ZmZiMGQxYWI4NDM0MmZkMjM1cC0xLAorICAgIDB4MS43MTRjMWNwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjEKKyAgICAtMHgxLjAzYmU0M2M2OTlmMzUzNjk5MGRjZjVhNjY2NWFjMjM5cC0yLAorICAgIC0weDEuZWY0MTNkYmJkYTI4NTlmZmIwZDFhYjg0MzQyZmQyMzVwLTEsCisgICAgLTB4MS43MTRjMWNwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAweDEuODc3ZWFkYzJmZGZjMmYwZGIxZThiNzhjZDNmYmZiZDJwLTMsCisgICAgLTB4MS5mNjhlZTViNWJmMzU2YjEwMjMwOTQ0YTE4ZTcwOTI1Y3AtMSwKKyAgICAweDEuNzk4MXAxLAorICB9LAorICB7IC8vIEVudHJ5IDQyMworICAgIC0weDEuODc3ZWFkYzJmZGZjMmYwZGIxZThiNzhjZDNmYmZiZDJwLTMsCisgICAgLTB4MS5mNjhlZTViNWJmMzU2YjEwMjMwOTQ0YTE4ZTcwOTI1Y3AtMSwKKyAgICAtMHgxLjc5ODFwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjQKKyAgICAweDEuMDVlNGZkZjg0NjYzMmE4MjA4ZDkwZGU3MmQzYTZkYThwLTMsCisgICAgLTB4MS5mYmNiZTIzMjk2ZmM2MWI5NmYzODJmMzVlYTE1Yzc2OHAtMSwKKyAgICAweDEuODFiNWU0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgLTB4MS4wNWU0ZmRmODQ2NjMyYTgyMDhkOTBkZTcyZDNhNmRhOHAtMywKKyAgICAtMHgxLmZiY2JlMjMyOTZmYzYxYjk2ZjM4MmYzNWVhMTVjNzY4cC0xLAorICAgIC0weDEuODFiNWU0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDI2CisgICAgMHgxLjA2NmY5YjYzMGI3MmRmZjE2NDUwZTg5YWZkZjdlMDQ4cC00LAorICAgIC0weDEuZmVmMmIwODk0MzE5N2NkM2E4YmE4NjEwOTUyMjdjNDhwLTEsCisgICAgMHgxLjg5ZWFjOHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIC0weDEuMDY2ZjliNjMwYjcyZGZmMTY0NTBlODlhZmRmN2UwNDhwLTQsCisgICAgLTB4MS5mZWYyYjA4OTQzMTk3Y2QzYThiYTg2MTA5NTIyN2M0OHAtMSwKKyAgICAtMHgxLjg5ZWFjOHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIDB4MS4wM2JkZjBiNzljY2Y3Mzk1MjlkNTRkNDIyODYxMDQ2Y3AtMiwKKyAgICAweDEuZWY0MTQ4OWZjMmZlODAxYTZmYzhhZTc5MTQzOGViNzhwLTEsCisgICAgLTB4MS44MWI1ZWVwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAtMHgxLjAzYmRmMGI3OWNjZjczOTUyOWQ1NGQ0MjI4NjEwNDZjcC0yLAorICAgIDB4MS5lZjQxNDg5ZmMyZmU4MDFhNmZjOGFlNzkxNDM4ZWI3OHAtMSwKKyAgICAweDEuODFiNWVlcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNDMwCisgICAgMHgxLmY2N2U4Yjk1ZjU0NjBlYTM2OWE4MDM4MzdiNzIxYWJkcC0yLAorICAgIDB4MS5iZTFkODQ5ZWM2NDliNzk3MzIwZTk4NWQwYjgyYWU4NXAtMSwKKyAgICAtMHgxLjcxNGMyNnAyLAorICB9LAorICB7IC8vIEVudHJ5IDQzMQorICAgIC0weDEuZjY3ZThiOTVmNTQ2MGVhMzY5YTgwMzgzN2I3MjFhYmRwLTIsCisgICAgMHgxLmJlMWQ4NDllYzY0OWI3OTczMjBlOTg1ZDBiODJhZTg1cC0xLAorICAgIDB4MS43MTRjMjZwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzIKKyAgICAweDEuNjQzMDcwNzkxNzUxZGMwNjM2ZDE4NTRkMmJkYmM1ZDRwLTEsCisgICAgMHgxLjZmY2I4YzQ0YmQzMGRkNjY4MTQ4NjA1OTY5YjFjMTYxcC0xLAorICAgIC0weDEuNjBlMjVlcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgLTB4MS42NDMwNzA3OTE3NTFkYzA2MzZkMTg1NGQyYmRiYzVkNHAtMSwKKyAgICAweDEuNmZjYjhjNDRiZDMwZGQ2NjgxNDg2MDU5NjliMWMxNjFwLTEsCisgICAgMHgxLjYwZTI1ZXAyLAorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS5iNWQ1MzZmNTkxMTNhNDNhZjMwZThjOWRiOGE5NTFhNXAtMSwKKyAgICAweDEuMDk2YWQ4N2MzMjY2MjJjNDJkZTM0ZjkyODE0Y2ZhODRwLTEsCisgICAgLTB4MS41MDc4OTZwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAtMHgxLmI1ZDUzNmY1OTExM2E0M2FmMzBlOGM5ZGI4YTk1MWE1cC0xLAorICAgIDB4MS4wOTZhZDg3YzMyNjYyMmM0MmRlMzRmOTI4MTRjZmE4NHAtMSwKKyAgICAweDEuNTA3ODk2cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNDM2CisgICAgMHgxLmVhZDY3OTk4NTU0OTE0MDMxODM0OWY1MTJkY2E3YTZicC0xLAorICAgIDB4MS4yMzViNzQ2YTJhMmVmZjJiZjY0MGRkOGMwNGQzNWE1YnAtMiwKKyAgICAtMHgxLjQwMGVjZXAyLAorICB9LAorICB7IC8vIEVudHJ5IDQzNworICAgIC0weDEuZWFkNjc5OTg1NTQ5MTQwMzE4MzQ5ZjUxMmRjYTdhNmJwLTEsCisgICAgMHgxLjIzNWI3NDZhMmEyZWZmMmJmNjQwZGQ4YzA0ZDM1YTVicC0yLAorICAgIDB4MS40MDBlY2VwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzgKKyAgICAweDEuZmZiY2E3MDEwZTBiMDQ1MmY1NjA3NWNmZDU5ODI4ODBwLTEsCisgICAgMHgxLjA2OTM4MjdiNDZjZWUzYjY2MWFjMTcxMTRiNWZlMGZicC01LAorICAgIC0weDEuMmZhNTA2cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgLTB4MS5mZmJjYTcwMTBlMGIwNDUyZjU2MDc1Y2ZkNTk4Mjg4MHAtMSwKKyAgICAweDEuMDY5MzgyN2I0NmNlZTNiNjYxYWMxNzExNGI1ZmUwZmJwLTUsCisgICAgMHgxLjJmYTUwNnAyLAorICB9LAorICB7IC8vIEVudHJ5IDQ0MAorICAgIDB4MS5mMzI5Y2E2YmZjNzQyNWQ4OWMyYjRiOWFkNzNhYjEwOHAtMSwKKyAgICAtMHgxLmM3Yjg1ZDY2OGUyYWJjYzQ2NTQyY2E4NTI3ZjBiODAxcC0zLAorICAgIC0weDEuMWYzYjNlcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgLTB4MS5mMzI5Y2E2YmZjNzQyNWQ4OWMyYjRiOWFkNzNhYjEwOHAtMSwKKyAgICAtMHgxLmM3Yjg1ZDY2OGUyYWJjYzQ2NTQyY2E4NTI3ZjBiODAxcC0zLAorICAgIDB4MS4xZjNiM2VwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDIKKyAgICAweDEuYzVmMDZmYjY5NDI3YWMwZjJkNjk0MjhkODJiNWU2NjlwLTEsCisgICAgLTB4MS5kOWEzNDhkNGY0MzYzYmE0NTYyMTEwZGIwMWVlODRlOHAtMiwKKyAgICAtMHgxLjBlZDE3NnAyLAorICB9LAorICB7IC8vIEVudHJ5IDQ0MworICAgIC0weDEuYzVmMDZmYjY5NDI3YWMwZjJkNjk0MjhkODJiNWU2NjlwLTEsCisgICAgLTB4MS5kOWEzNDhkNGY0MzYzYmE0NTYyMTEwZGIwMWVlODRlOHAtMiwKKyAgICAweDEuMGVkMTc2cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgMHgxLjdiMDVkODY0ZWM5ODAyYWRiYzRiNTU3N2MyMzM4MzZhcC0xLAorICAgIC0weDEuNTgzN2FlODU2OWM5NTg0NmU2MTY0ZDk2MzY1NDYxMjBwLTEsCisgICAgLTB4MS5mY2NmNWFwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDUKKyAgICAtMHgxLjdiMDVkODY0ZWM5ODAyYWRiYzRiNTU3N2MyMzM4MzZhcC0xLAorICAgIC0weDEuNTgzN2FlODU2OWM5NTg0NmU2MTY0ZDk2MzY1NDYxMjBwLTEsCisgICAgMHgxLmZjY2Y1YXAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIDB4MS4xNzUwODA4MTg1YTk5OGJiY2VjYzNhNmFjMGNiMjkwN3AtMSwKKyAgICAtMHgxLmFkMTljOTE4ODgzMDAwYjBiNzAyZWMwODBjZjAxMjJlcC0xLAorICAgIC0weDEuZGJmYmM4cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgLTB4MS4xNzUwODA4MTg1YTk5OGJiY2VjYzNhNmFjMGNiMjkwN3AtMSwKKyAgICAtMHgxLmFkMTljOTE4ODgzMDAwYjBiNzAyZWMwODBjZjAxMjJlcC0xLAorICAgIDB4MS5kYmZiYzhwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDgKKyAgICAweDEuNDJhYzBkZDk0OTUyMTE4MTZiZjA0Y2E1M2JjZTRiZWFwLTIsCisgICAgLTB4MS5lNWVhOTRiMmNmMDdhZGQzZDBkOTVhYjNhMzBhZDRhYnAtMSwKKyAgICAtMHgxLmJiMjgzNnAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIC0weDEuNDJhYzBkZDk0OTUyMTE4MTZiZjA0Y2E1M2JjZTRiZWFwLTIsCisgICAgLTB4MS5lNWVhOTRiMmNmMDdhZGQzZDBkOTVhYjNhMzBhZDRhYnAtMSwKKyAgICAweDEuYmIyODM2cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgMHgxLjA2NmZjYTM5YTcwYjUyZDA2ZjJjZDdlYWI2OWMzMWYycC00LAorICAgIC0weDEuZmVmMmIwMjkwODU1OWY5MmRlODkyZDI0MGEyYjBiNDlwLTEsCisgICAgLTB4MS45YTU0YTRwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTEKKyAgICAtMHgxLjA2NmZjYTM5YTcwYjUyZDA2ZjJjZDdlYWI2OWMzMWYycC00LAorICAgIC0weDEuZmVmMmIwMjkwODU1OWY5MmRlODkyZDI0MGEyYjBiNDlwLTEsCisgICAgMHgxLjlhNTRhNHAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ1MgorICAgIC0weDEuODc3ZDkzMTI5OGU2ZmJjNjU0ZjA2NTUzNmNmZjJiNTRwLTMsCisgICAgLTB4MS5mNjhlZjM3OTJlNTkyYzNjZWZiY2UxZDVkZWQ2NGE5MnAtMSwKKyAgICAtMHgxLjc5ODExMnAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ1MworICAgIDB4MS44NzdkOTMxMjk4ZTZmYmM2NTRmMDY1NTM2Y2ZmMmI1NHAtMywKKyAgICAtMHgxLmY2OGVmMzc5MmU1OTJjM2NlZmJjZTFkNWRlZDY0YTkycC0xLAorICAgIDB4MS43OTgxMTJwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTQKKyAgICAtMHgxLmJjNGJjMjg3NWViNmQzOGVkYTNiNDljYjIzMjBiNTYxcC0yLAorICAgIC0weDEuY2Q0YmRhOTQzZWVhMTM2MzBmOGU1MDhmODc0NGYyZjJwLTEsCisgICAgLTB4MS41OGFkODBwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAweDEuYmM0YmMyODc1ZWI2ZDM4ZWRhM2I0OWNiMjMyMGI1NjFwLTIsCisgICAgLTB4MS5jZDRiZGE5NDNlZWExMzYzMGY4ZTUwOGY4NzQ0ZjJmMnAtMSwKKyAgICAweDEuNThhZDgwcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDU2CisgICAgLTB4MS40YmU0N2Q2MzU0YzRjZWQ1Mzc4MGIxYjUxOWFjZGVjMnAtMSwKKyAgICAtMHgxLjg1ZGM1NGY0OWYzMjRiZGZjNzFkNTc0OTQ4M2IzMzE4cC0xLAorICAgIC0weDEuMzdkOWVlcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDU3CisgICAgMHgxLjRiZTQ3ZDYzNTRjNGNlZDUzNzgwYjFiNTE5YWNkZWMycC0xLAorICAgIC0weDEuODVkYzU0ZjQ5ZjMyNGJkZmM3MWQ1NzQ5NDgzYjMzMThwLTEsCisgICAgMHgxLjM3ZDllZXAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ1OAorICAgIC0weDEuYTNlZDhiY2IzNWNiY2Y4YzYwODlmODJhOTFjMzFkNWJwLTEsCisgICAgLTB4MS4yNGVjOTNlMDRkNGJkYjU0ZTIwYmVhZjM4MzUxOWFmOHAtMSwKKyAgICAtMHgxLjE3MDY1Y3AxLAorICB9LAorICB7IC8vIEVudHJ5IDQ1OQorICAgIDB4MS5hM2VkOGJjYjM1Y2JjZjhjNjA4OWY4MmE5MWMzMWQ1YnAtMSwKKyAgICAtMHgxLjI0ZWM5M2UwNGQ0YmRiNTRlMjBiZWFmMzgzNTE5YWY4cC0xLAorICAgIDB4MS4xNzA2NWNwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjAKKyAgICAtMHgxLmUwN2VlNDk2ZWExMDk2NTRjNDJlMTcxZmRjNDUzN2M0cC0xLAorICAgIC0weDEuNjFhNzk4M2Q0YzE2YzQ1MWI2OGJmMmY1YjcwZjNiNmFwLTIsCisgICAgLTB4MS5lYzY1OTRwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjEKKyAgICAweDEuZTA3ZWU0OTZlYTEwOTY1NGM0MmUxNzFmZGM0NTM3YzRwLTEsCisgICAgLTB4MS42MWE3OTgzZDRjMTZjNDUxYjY4YmYyZjViNzBmM2I2YXAtMiwKKyAgICAweDEuZWM2NTk0cDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDYyCisgICAgLTB4MS5mZGEyNTIyMjE5Njg5ZDBlODA2OWQ5MGY1Yzk2OWI5MnAtMSwKKyAgICAtMHgxLjg5NTA0YThkZTZjOWVjYWM2NjNlNjc1ODNjYWI0N2U4cC00LAorICAgIC0weDEuYWFiZTcwcDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDYzCisgICAgMHgxLmZkYTI1MjIyMTk2ODlkMGU4MDY5ZDkwZjVjOTY5YjkycC0xLAorICAgIC0weDEuODk1MDRhOGRlNmM5ZWNhYzY2M2U2NzU4M2NhYjQ3ZThwLTQsCisgICAgMHgxLmFhYmU3MHAwLAorICB9LAorICB7IC8vIEVudHJ5IDQ2NAorICAgIC0weDEuZjk2ZmU4MDJmZTU3MDM3MmQwZmNiNmU5MzRiNDMwNjFwLTEsCisgICAgMHgxLjQ2ZGJlYzllYTNhNWYwOGJhNzNhYTY5ZTdlMjJkZTFjcC0zLAorICAgIC0weDEuNjkxNzRjcDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDY1CisgICAgMHgxLmY5NmZlODAyZmU1NzAzNzJkMGZjYjZlOTM0YjQzMDYxcC0xLAorICAgIDB4MS40NmRiZWM5ZWEzYTVmMDhiYTczYWE2OWU3ZTIyZGUxY3AtMywKKyAgICAweDEuNjkxNzRjcDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgLTB4MS5kNDJkZWQ1NmFlODhhNmUxY2YyNzBhZjI3ZTZmMTgwNHAtMSwKKyAgICAweDEuOWU3ZjVjZjA3NWQxZWM0ZWY2OWM5YzY3YjYyYzI3Y2JwLTIsCisgICAgLTB4MS4yNzcwMjhwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjcKKyAgICAweDEuZDQyZGVkNTZhZTg4YTZlMWNmMjcwYWYyN2U2ZjE4MDRwLTEsCisgICAgMHgxLjllN2Y1Y2YwNzVkMWVjNGVmNjljOWM2N2I2MmMyN2NicC0yLAorICAgIDB4MS4yNzcwMjhwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjgKKyAgICAtMHgxLjkwNGM0NTMyNmQ2ZGRlMjI0MzgxZDFkNTkwYWRhNDFjcC0xLAorICAgIDB4MS4zZjM5ZmNjMDE3NjUzZDI2MzY4MzdhNTVmZGY2ZDJkNHAtMSwKKyAgICAtMHgxLmNiOTIwYXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjkKKyAgICAweDEuOTA0YzQ1MzI2ZDZkZGUyMjQzODFkMWQ1OTBhZGE0MWNwLTEsCisgICAgMHgxLjNmMzlmY2MwMTc2NTNkMjYzNjgzN2E1NWZkZjZkMmQ0cC0xLAorICAgIDB4MS5jYjkyMGFwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNDcwCisgICAgLTB4MS4zMjNiOWNhZGJiMTllNzVhNDQ0ODNmYjY0YWQ4ZGRmNnAtMSwKKyAgICAweDEuOWE1MmQ1YzcwMGRhYTNkYzhjZjhmNWE3MWYyZGYyODlwLTEsCisgICAgLTB4MS40ODQzYzRwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNDcxCisgICAgMHgxLjMyM2I5Y2FkYmIxOWU3NWE0NDQ4M2ZiNjRhZDhkZGY2cC0xLAorICAgIDB4MS45YTUyZDVjNzAwZGFhM2RjOGNmOGY1YTcxZjJkZjI4OXAtMSwKKyAgICAweDEuNDg0M2M0cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDQ3MgorICAgIC0weDEuODA0NjI2NTRiZGU3NjZmYWY0N2YzMTQwZTI5MDk5NmRwLTIsCisgICAgMHgxLmRhOTRjZDM4M2RkN2EzYjkxYTJmYzg4ZmY5MDVhNmEwcC0xLAorICAgIC0weDEuODllYWZjcC0yLAorICB9LAorICB7IC8vIEVudHJ5IDQ3MworICAgIDB4MS44MDQ2MjY1NGJkZTc2NmZhZjQ3ZjMxNDBlMjkwOTk2ZHAtMiwKKyAgICAweDEuZGE5NGNkMzgzZGQ3YTNiOTFhMmZjODhmZjkwNWE2YTBwLTEsCisgICAgMHgxLjg5ZWFmY3AtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzQKKyAgICAtMHgxLjA1ZTRjYTIxZjM4NmE4MmJjMmU0ZWZjZGViYjE5NjJicC0zLAorICAgIDB4MS5mYmNiZTNkZTU4ZTY2YzMyODNiYzgxMGQxNmM0NTgzM3AtMSwKKyAgICAtMHgxLjA2OWNlMHAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzUKKyAgICAweDEuMDVlNGNhMjFmMzg2YTgyYmMyZTRlZmNkZWJiMTk2MmJwLTMsCisgICAgMHgxLmZiY2JlM2RlNThlNjZjMzI4M2JjODEwZDE2YzQ1ODMzcC0xLAorICAgIDB4MS4wNjljZTBwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgNDc2CisgICAgMHgxLjA1ZTQyMzgzMGJlMDFmOWZlM2M1N2QwNjg2N2UwMDU2cC0zLAorICAgIDB4MS5mYmNiZTkzZDQ4NTYzZDUxYjZlOWQ2ZWZkYjYyNDk1Y3AtMSwKKyAgICAweDEuMDY5YzM4cC0zLAorICB9LAorICB7IC8vIEVudHJ5IDQ3NworICAgIC0weDEuMDVlNDIzODMwYmUwMWY5ZmUzYzU3ZDA2ODY3ZTAwNTZwLTMsCisgICAgMHgxLmZiY2JlOTNkNDg1NjNkNTFiNmU5ZDZlZmRiNjI0OTVjcC0xLAorICAgIC0weDEuMDY5YzM4cC0zLAorICB9LAorICB7IC8vIEVudHJ5IDQ3OAorICAgIDB4MS44MDQ1ZDg3ODUyZjEzMDdmZWE2ZGM3NTFjNGQxNTk5MnAtMiwKKyAgICAweDEuZGE5NGRjZmIxY2QxNTg1M2NlODQ4ZmZiMDI2NGFkMDhwLTEsCisgICAgMHgxLjg5ZWFhOHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzkKKyAgICAtMHgxLjgwNDVkODc4NTJmMTMwN2ZlYTZkYzc1MWM0ZDE1OTkycC0yLAorICAgIDB4MS5kYTk0ZGNmYjFjZDE1ODUzY2U4NDhmZmIwMjY0YWQwOHAtMSwKKyAgICAtMHgxLjg5ZWFhOHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODAKKyAgICAweDEuMzIzYjdiMDRlZTg4Y2ZmOThiMmExNjIwZTFmNjFhMDFwLTEsCisgICAgMHgxLjlhNTJlZWU1ZTM1Mzc3ZDU1NGFjZTg4MWJkYzQ3MjVicC0xLAorICAgIDB4MS40ODQzOWFwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNDgxCisgICAgLTB4MS4zMjNiN2IwNGVlODhjZmY5OGIyYTE2MjBlMWY2MWEwMXAtMSwKKyAgICAweDEuOWE1MmVlZTVlMzUzNzdkNTU0YWNlODgxYmRjNDcyNWJwLTEsCisgICAgLTB4MS40ODQzOWFwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNDgyCisgICAgMHgxLjkwNGMyYjAyYWE1OTUyOGNlMDQ0YmYyMjEzYzk2ODU5cC0xLAorICAgIDB4MS4zZjNhMWQ5NjU3ZmY2YWE0OThjNDZmNmZhYWYwM2I5MHAtMSwKKyAgICAweDEuY2I5MWUwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDQ4MworICAgIC0weDEuOTA0YzJiMDJhYTU5NTI4Y2UwNDRiZjIyMTNjOTY4NTlwLTEsCisgICAgMHgxLjNmM2ExZDk2NTdmZjZhYTQ5OGM0NmY2ZmFhZjAzYjkwcC0xLAorICAgIC0weDEuY2I5MWUwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIDB4MS5kNDJkZGQyNWIzNzk3ZTZhNjc5Zjc2ZTA1ZTZjM2UwOHAtMSwKKyAgICAweDEuOWU3ZmE2MTdhMWEzYTQwMGE3ZjU5YWE4NzkwODhlMzFwLTIsCisgICAgMHgxLjI3NzAxNHAwLAorICB9LAorICB7IC8vIEVudHJ5IDQ4NQorICAgIC0weDEuZDQyZGRkMjViMzc5N2U2YTY3OWY3NmUwNWU2YzNlMDhwLTEsCisgICAgMHgxLjllN2ZhNjE3YTFhM2E0MDBhN2Y1OWFhODc5MDg4ZTMxcC0yLAorICAgIC0weDEuMjc3MDE0cDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDg2CisgICAgMHgxLmY5NmZlMWEwYjEyZDBhZDRmYThjODJkOGFmOTg5YzVhcC0xLAorICAgIDB4MS40NmRjOGE5MTliMjc4NDBjZGE2ZTE4YTA3OWRhNDU5Y3AtMywKKyAgICAweDEuNjkxNzM4cDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDg3CisgICAgLTB4MS5mOTZmZTFhMGIxMmQwYWQ0ZmE4YzgyZDhhZjk4OWM1YXAtMSwKKyAgICAweDEuNDZkYzhhOTE5YjI3ODQwY2RhNmUxOGEwNzlkYTQ1OWNwLTMsCisgICAgLTB4MS42OTE3MzhwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAweDEuZmRhMjU1Zjk2MDk0ZDhmZTRlODU5YzRjZjBkZDY4YTVwLTEsCisgICAgLTB4MS44OTRmMGMwODcyNDE1NjYzYjdmOWU0ZTQ4MDFkZWFmMHAtNCwKKyAgICAweDEuYWFiZTVjcDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDg5CisgICAgLTB4MS5mZGEyNTVmOTYwOTRkOGZlNGU4NTljNGNmMGRkNjhhNXAtMSwKKyAgICAtMHgxLjg5NGYwYzA4NzI0MTU2NjNiN2Y5ZTRlNDgwMWRlYWYwcC00LAorICAgIC0weDEuYWFiZTVjcDAsCisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgMHgxLmUwN2VmMjY3NzQ4Yjk4Mjc3OGY4ZDUwZDI5ODFiYjNhcC0xLAorICAgIC0weDEuNjFhNzRkMjk3NzRhZTRlM2JjNTUzM2EyZWEwOGExNGFwLTIsCisgICAgMHgxLmVjNjU4MHAwLAorICB9LAorICB7IC8vIEVudHJ5IDQ5MQorICAgIC0weDEuZTA3ZWYyNjc3NDhiOTgyNzc4ZjhkNTBkMjk4MWJiM2FwLTEsCisgICAgLTB4MS42MWE3NGQyOTc3NGFlNGUzYmM1NTMzYTJlYTA4YTE0YXAtMiwKKyAgICAtMHgxLmVjNjU4MHAwLAorICB9LAorICB7IC8vIEVudHJ5IDQ5MgorICAgIDB4MS5hM2VkYTJhZGIwMTE0M2ZiMjE0NTNiMjBiZDE3NDhmZXAtMSwKKyAgICAtMHgxLjI0ZWM3MzExYmQ3YjIyNTVmOWI4OTBiM2ZmNTg5OWY0cC0xLAorICAgIDB4MS4xNzA2NTJwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICAtMHgxLmEzZWRhMmFkYjAxMTQzZmIyMTQ1M2IyMGJkMTc0OGZlcC0xLAorICAgIC0weDEuMjRlYzczMTFiZDdiMjI1NWY5Yjg5MGIzZmY1ODk5ZjRwLTEsCisgICAgLTB4MS4xNzA2NTJwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTQKKyAgICAweDEuNGJlNDliZDg4YTY0YTBiYjQxNGRkYWNhYzRmYThkZTlwLTEsCisgICAgLTB4MS44NWRjM2IwNmM0MzVmNTI0Yzg3M2Q5YjVlYmEzZGVmOHAtMSwKKyAgICAweDEuMzdkOWU0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDk1CisgICAgLTB4MS40YmU0OWJkODhhNjRhMGJiNDE0ZGRhY2FjNGZhOGRlOXAtMSwKKyAgICAtMHgxLjg1ZGMzYjA2YzQzNWY1MjRjODczZDliNWViYTNkZWY4cC0xLAorICAgIC0weDEuMzdkOWU0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgMHgxLmJjNGMwYTliMzc4MmUyMjBhZTU1Nzg2MzY5Y2NmMTkwcC0yLAorICAgIC0weDEuY2Q0YmM5Mzk0N2U4NjY3MWFjN2YwZWFjZDk1MjEzNzdwLTEsCisgICAgMHgxLjU4YWQ3NnAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ5NworICAgIC0weDEuYmM0YzBhOWIzNzgyZTIyMGFlNTU3ODYzNjljY2YxOTBwLTIsCisgICAgLTB4MS5jZDRiYzkzOTQ3ZTg2NjcxYWM3ZjBlYWNkOTUyMTM3N3AtMSwKKyAgICAtMHgxLjU4YWQ3NnAxLAorICB9LAorICB7IC8vIEVudHJ5IDQ5OAorICAgIDB4MS44NzdlMzAxZjQzY2FmZmZlNjY0NGE4OTU4ZjEwODcyOXAtMywKKyAgICAtMHgxLmY2OGVlYmQzYjhmMTJmOTQzM2U2ZDcyMjQ5ODljMTBlcC0xLAorICAgIDB4MS43OTgxMDhwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTkKKyAgICAtMHgxLjg3N2UzMDFmNDNjYWZmZmU2NjQ0YTg5NThmMTA4NzI5cC0zLAorICAgIC0weDEuZjY4ZWViZDNiOGYxMmY5NDMzZTZkNzIyNDk4OWMxMGVwLTEsCisgICAgLTB4MS43OTgxMDhwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDAKKyAgICAtMHgxLjA2NmU4YWUxZjgyNGE2OTgxN2U2YTgwNmU2MzE3ZTI4cC00LAorICAgIC0weDEuZmVmMmIyYjkxZTQwMDIxYTJmZWU3NGZjNjE4MTIxNTdwLTEsCisgICAgMHgxLjlhNTQ5YXAxLAorICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIDB4MS4wNjZlOGFlMWY4MjRhNjk4MTdlNmE4MDZlNjMxN2UyOHAtNCwKKyAgICAtMHgxLmZlZjJiMmI5MWU0MDAyMWEyZmVlNzRmYzYxODEyMTU3cC0xLAorICAgIC0weDEuOWE1NDlhcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgLTB4MS40MmFiYzFlY2ExMWEwYWQxMmNhNmVlZmYxOTczMThhYXAtMiwKKyAgICAtMHgxLmU1ZWFhMTRkODYxNjhiNjk5MThjMjJmMzcxNmE2N2VhcC0xLAorICAgIDB4MS5iYjI4MmNwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICAweDEuNDJhYmMxZWNhMTFhMGFkMTJjYTZlZWZmMTk3MzE4YWFwLTIsCisgICAgLTB4MS5lNWVhYTE0ZDg2MTY4YjY5OTE4YzIyZjM3MTZhNjdlYXAtMSwKKyAgICAtMHgxLmJiMjgyY3AxLAorICB9LAorICB7IC8vIEVudHJ5IDUwNAorICAgIC0weDEuMTc1MDVlZmI4MTE5NzczYzY0NzQ2OGJlMWRmZWU0NWVwLTEsCisgICAgLTB4MS5hZDE5ZGVlYWQwZWFlMmY3MmQwNDE2NWUwOWU0YTQzZHAtMSwKKyAgICAweDEuZGJmYmJlcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNTA1CisgICAgMHgxLjE3NTA1ZWZiODExOTc3M2M2NDc0NjhiZTFkZmVlNDVlcC0xLAorICAgIC0weDEuYWQxOWRlZWFkMGVhZTJmNzJkMDQxNjVlMDllNGE0M2RwLTEsCisgICAgLTB4MS5kYmZiYmVwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDYKKyAgICAtMHgxLjdiMDViZDgwOTFjZDc5ZGZmMzU5Yzg0MTJiMGRlMWE5cC0xLAorICAgIC0weDEuNTgzN2NjMjFkZGE0NGYzYWI3ZmQ5NmY1N2MwMTRlMTlwLTEsCisgICAgMHgxLmZjY2Y1MHAxLAorICB9LAorICB7IC8vIEVudHJ5IDUwNworICAgIDB4MS43YjA1YmQ4MDkxY2Q3OWRmZjM1OWM4NDEyYjBkZTFhOXAtMSwKKyAgICAtMHgxLjU4MzdjYzIxZGRhNDRmM2FiN2ZkOTZmNTdjMDE0ZTE5cC0xLAorICAgIC0weDEuZmNjZjUwcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgLTB4MS5jNWYwNTk4MmVhYmYwMjI3NDg5NjA5NjE2NjZkNTQwZHAtMSwKKyAgICAtMHgxLmQ5YTM5ZGYyMDcxMzlmOTllYmU5YjU2ZGFmYjIzNGI3cC0yLAorICAgIDB4MS4wZWQxNzBwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDkKKyAgICAweDEuYzVmMDU5ODJlYWJmMDIyNzQ4OTYwOTYxNjY2ZDU0MGRwLTEsCisgICAgLTB4MS5kOWEzOWRmMjA3MTM5Zjk5ZWJlOWI1NmRhZmIyMzRiN3AtMiwKKyAgICAtMHgxLjBlZDE3MHAyLAorICB9LAorICB7IC8vIEVudHJ5IDUxMAorICAgIC0weDEuZjMyOWJmYmRhODEyMmY4M2UzYTFlYTAyNDJlYjc2YWFwLTEsCisgICAgLTB4MS5jN2I5MTg5NjM4MTI4YmMwYWUzM2ZkZjI3MjljYzk4N3AtMywKKyAgICAweDEuMWYzYjM4cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgMHgxLmYzMjliZmJkYTgxMjJmODNlM2ExZWEwMjQyZWI3NmFhcC0xLAorICAgIC0weDEuYzdiOTE4OTYzODEyOGJjMGFlMzNmZGYyNzI5Y2M5ODdwLTMsCisgICAgLTB4MS4xZjNiMzhwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTIKKyAgICAtMHgxLmZmYmNhODhhZTkwZjA5MDBiNmQzYWQ4OWVkZGQyYzgwcC0xLAorICAgIDB4MS4wNjkwODJlMDRiMjVlOWQyZWE5ZTI2M2I1MGQwOGIzNHAtNSwKKyAgICAweDEuMmZhNXAyLAorICB9LAorICB7IC8vIEVudHJ5IDUxMworICAgIDB4MS5mZmJjYTg4YWU5MGYwOTAwYjZkM2FkODllZGRkMmM4MHAtMSwKKyAgICAweDEuMDY5MDgyZTA0YjI1ZTlkMmVhOWUyNjNiNTBkMDhiMzRwLTUsCisgICAgLTB4MS4yZmE1cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgLTB4MS5lYWQ2ODc0MDljOTVkY2FmNjFhZjk4NTEzNTE3ZjUwN3AtMSwKKyAgICAweDEuMjM1YjE4NjFmMjFhYTg2ZGNlMjU5ZTRlNWI0ZWYzOTVwLTIsCisgICAgMHgxLjQwMGVjOHAyLAorICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIDB4MS5lYWQ2ODc0MDljOTVkY2FmNjFhZjk4NTEzNTE3ZjUwN3AtMSwKKyAgICAweDEuMjM1YjE4NjFmMjFhYTg2ZGNlMjU5ZTRlNWI0ZWYzOTVwLTIsCisgICAgLTB4MS40MDBlYzhwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTYKKyAgICAtMHgxLmI1ZDU0ZmQ3OTM3MmI5MGQ1ZDRjN2FjZjdhZGFlZDQycC0xLAorICAgIDB4MS4wOTZhYWY3MDM0MTQ4NTA2MmY0NDNjODBhOTBhM2JlM3AtMSwKKyAgICAweDEuNTA3ODkwcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNTE3CisgICAgMHgxLmI1ZDU0ZmQ3OTM3MmI5MGQ1ZDRjN2FjZjdhZGFlZDQycC0xLAorICAgIDB4MS4wOTZhYWY3MDM0MTQ4NTA2MmY0NDNjODBhOTBhM2JlM3AtMSwKKyAgICAtMHgxLjUwNzg5MHAyLAorICB9LAorICB7IC8vIEVudHJ5IDUxOAorICAgIC0weDEuNjQzMDkyZjQyYWU3OTczNzU1MzE0MjBjMDA1Y2EyY2ZwLTEsCisgICAgMHgxLjZmY2I2YWUwMzEwN2JlNDU4ZDA3MzYxMzcxZWZhYmI0cC0xLAorICAgIDB4MS42MGUyNThwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAweDEuNjQzMDkyZjQyYWU3OTczNzU1MzE0MjBjMDA1Y2EyY2ZwLTEsCisgICAgMHgxLjZmY2I2YWUwMzEwN2JlNDU4ZDA3MzYxMzcxZWZhYmI0cC0xLAorICAgIC0weDEuNjBlMjU4cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgLTB4MS5mNjdlZGYzYjdiZWU4NTU0ZDU0ZDg0ZWE4M2Y2Y2IyMXAtMiwKKyAgICAweDEuYmUxZDZkMTBkNWM4Y2VlYjhiZjlhZWI3YTlmNjkwYjlwLTEsCisgICAgMHgxLjcxNGMyMHAyLAorICB9LAorICB7IC8vIEVudHJ5IDUyMQorICAgIDB4MS5mNjdlZGYzYjdiZWU4NTU0ZDU0ZDg0ZWE4M2Y2Y2IyMXAtMiwKKyAgICAweDEuYmUxZDZkMTBkNWM4Y2VlYjhiZjlhZWI3YTlmNjkwYjlwLTEsCisgICAgLTB4MS43MTRjMjBwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjIKKyAgICAtMHgxLjAzYmU0ZDkzZDk0OTMyNTM0MGIyZjQ2NDIwMTU0NWE3cC0yLAorICAgIDB4MS5lZjQxM2M3MmQ5ODhiYjUzOTM3OTc1ZTRmZDRmY2M3YXAtMSwKKyAgICAweDEuODFiNWU4cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNTIzCisgICAgMHgxLjAzYmU0ZDkzZDk0OTMyNTM0MGIyZjQ2NDIwMTU0NWE3cC0yLAorICAgIDB4MS5lZjQxM2M3MmQ5ODhiYjUzOTM3OTc1ZTRmZDRmY2M3YXAtMSwKKyAgICAtMHgxLjgxYjVlOHAyLAorICB9LAorICB7IC8vIEVudHJ5IDUyNAorICAgIDB4MS5lZmIyNmNmYTIwZjIwOThmZjdlOWU0MmYwMjYwZWIwMXAtNSwKKyAgICAweDEuZmYwZmQyY2I1YTkyMjhjZmExZTAxNjA1ZDA2MjZjODRwLTEsCisgICAgMHgxLmVmZmZmZXAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAtMHgxLmVmYjI2Y2ZhMjBmMjA5OGZmN2U5ZTQyZjAyNjBlYjAxcC01LAorICAgIDB4MS5mZjBmZDJjYjVhOTIyOGNmYTFlMDE2MDVkMDYyNmM4NHAtMSwKKyAgICAtMHgxLmVmZmZmZXAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjYKKyAgICAweDEuZWZiMjZlZjkzMGM0ZDNmMmIwZGJlMTkzMWJhNWFlNjRwLTUsCisgICAgMHgxLmZmMGZkMmM5NmFkZmJhZDVmOTA0YTcxYjJkMjEwYTJhcC0xLAorICAgIDB4MS5mMHAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjcKKyAgICAtMHgxLmVmYjI2ZWY5MzBjNGQzZjJiMGRiZTE5MzFiYTVhZTY0cC01LAorICAgIDB4MS5mZjBmZDJjOTZhZGZiYWQ1ZjkwNGE3MWIyZDIxMGEyYXAtMSwKKyAgICAtMHgxLmYwcC01LAorICB9LAorICB7IC8vIEVudHJ5IDUyOAorICAgIDB4MS5lZmIyNzBmODQwOTc5YzY1Yjc1ZWU1YzY3MDE2YTg2NnAtNSwKKyAgICAweDEuZmYwZmQyYzc3YjJkNGFkZDQwNTY2ZWM1YWEyNGZjNmVwLTEsCisgICAgMHgxLmYwMDAwMnAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjkKKyAgICAtMHgxLmVmYjI3MGY4NDA5NzljNjViNzVlZTVjNjcwMTZhODY2cC01LAorICAgIDB4MS5mZjBmZDJjNzdiMmQ0YWRkNDA1NjZlYzVhYTI0ZmM2ZXAtMSwKKyAgICAtMHgxLmYwMDAwMnAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAweDEuZjZiYWE4MTZmY2U1ZWE1YTYwZDhjOWZkMmEyODkzODBwLTQsCisgICAgMHgxLmZjMjEwMDVkMjE2YTg5ZGU1NWIxOTIwOTZmYzZiN2JhcC0xLAorICAgIDB4MS5mN2ZmZmVwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgNTMxCisgICAgLTB4MS5mNmJhYTgxNmZjZTVlYTVhNjBkOGM5ZmQyYTI4OTM4MHAtNCwKKyAgICAweDEuZmMyMTAwNWQyMTZhODlkZTU1YjE5MjA5NmZjNmI3YmFwLTEsCisgICAgLTB4MS5mN2ZmZmVwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgNTMyCisgICAgMHgxLmY2YmFhYTEzMWRlNjQzOGU1NjExMjc5ODY0ZmU3NjYzcC00LAorICAgIDB4MS5mYzIxMDA1NTQ2N2ZlNThhMjAxOTMzOTliM2JjMGRkMnAtMSwKKyAgICAweDEuZjhwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgNTMzCisgICAgLTB4MS5mNmJhYWExMzFkZTY0MzhlNTYxMTI3OTg2NGZlNzY2M3AtNCwKKyAgICAweDEuZmMyMTAwNTU0NjdmZTU4YTIwMTkzMzk5YjNiYzBkZDJwLTEsCisgICAgLTB4MS5mOHAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzQKKyAgICAweDEuZjZiYWFjMGYzZWU2OTRlNzYwYTEzOGJjMDZjOGJlM2RwLTQsCisgICAgMHgxLmZjMjEwMDRkNmI5NTM5NDU2NjdmODAwZmY4MWRlMGVicC0xLAorICAgIDB4MS5mODAwMDJwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgNTM1CisgICAgLTB4MS5mNmJhYWMwZjNlZTY5NGU3NjBhMTM4YmMwNmM4YmUzZHAtNCwKKyAgICAweDEuZmMyMTAwNGQ2Yjk1Mzk0NTY2N2Y4MDBmZjgxZGUwZWJwLTEsCisgICAgLTB4MS5mODAwMDJwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgNTM2CisgICAgMHgxLjRhOGMzOTU1NTJmYjQzMmFmMzE3ODBlODgzYzk4ZjcxcC0zLAorICAgIDB4MS5mOTQ5ODRjNmZkZjFiZTYxNjg1MDlmZjFlMzVmNjJkZXAtMSwKKyAgICAweDEuNGJmZmZlcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDUzNworICAgIC0weDEuNGE4YzM5NTU1MmZiNDMyYWYzMTc4MGU4ODNjOThmNzFwLTMsCisgICAgMHgxLmY5NDk4NGM2ZmRmMWJlNjE2ODUwOWZmMWUzNWY2MmRlcC0xLAorICAgIC0weDEuNGJmZmZlcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDUzOAorICAgIDB4MS40YThjM2I0ZTljN2ZmZmQ0ODMwNWY0NGE0MmY1ZjUwZnAtMywKKyAgICAweDEuZjk0OTg0YjI1NTJlMTk0MWVjNzY2YzZhODJlY2U0YTNwLTEsCisgICAgMHgxLjRjcC0zLAorICB9LAorICB7IC8vIEVudHJ5IDUzOQorICAgIC0weDEuNGE4YzNiNGU5YzdmZmZkNDgzMDVmNDRhNDJmNWY1MGZwLTMsCisgICAgMHgxLmY5NDk4NGIyNTUyZTE5NDFlYzc2NmM2YTgyZWNlNGEzcC0xLAorICAgIC0weDEuNGNwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgMHgxLjRhOGMzZDQ3ZTYwNGE3ZDU0ZjNmN2RlNDAyNDA5ZTJjcC0zLAorICAgIDB4MS5mOTQ5ODQ5ZGFjNmE1NDhkZDg1MTEzOTA0MTEwNjMxNnAtMSwKKyAgICAweDEuNGMwMDAycC0zLAorICB9LAorICB7IC8vIEVudHJ5IDU0MQorICAgIC0weDEuNGE4YzNkNDdlNjA0YTdkNTRmM2Y3ZGU0MDI0MDllMmNwLTMsCisgICAgMHgxLmY5NDk4NDlkYWM2YTU0OGRkODUxMTM5MDQxMTA2MzE2cC0xLAorICAgIC0weDEuNGMwMDAycC0zLAorICB9LAorICB7IC8vIEVudHJ5IDU0MgorICAgIDB4MS4yZTljZDgzNjMwZWIzNWMxMmVmY2ZiODQxMzU4Mzk5OHAtMiwKKyAgICAweDEuZTkyMWRkNzA1NGVmNWQ0ZjcyN2Q5MzhjZTEwYTA1M2NwLTEsCisgICAgMHgxLjMzMzMzMnAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAtMHgxLjJlOWNkODM2MzBlYjM1YzEyZWZjZmI4NDEzNTgzOTk4cC0yLAorICAgIDB4MS5lOTIxZGQ3MDU0ZWY1ZDRmNzI3ZDkzOGNlMTBhMDUzY3AtMSwKKyAgICAtMHgxLjMzMzMzMnAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDQKKyAgICAweDEuMmU5Y2RhMWY1MmM4ODA0MjgzM2YyMzZmZjBmOWQ0ODZwLTIsCisgICAgMHgxLmU5MjFkZDI0YWRiOTEyOWVmYzA1M2Y5YWNkNGQyNDQ0cC0xLAorICAgIDB4MS4zMzMzMzRwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgNTQ1CisgICAgLTB4MS4yZTljZGExZjUyYzg4MDQyODMzZjIzNmZmMGY5ZDQ4NnAtMiwKKyAgICAweDEuZTkyMWRkMjRhZGI5MTI5ZWZjMDUzZjlhY2Q0ZDI0NDRwLTEsCisgICAgLTB4MS4zMzMzMzRwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgMHgxLjJlOWNkYzA4NzRhNTdmMWNhMGY5NzZhOWIwMWU0YTcxcC0yLAorICAgIDB4MS5lOTIxZGNkOTA2ODI0ZGE2MGU0M2MwM2E3Nzc0YjE3MXAtMSwKKyAgICAweDEuMzMzMzM2cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIC0weDEuMmU5Y2RjMDg3NGE1N2YxY2EwZjk3NmE5YjAxZTRhNzFwLTIsCisgICAgMHgxLmU5MjFkY2Q5MDY4MjRkYTYwZTQzYzAzYTc3NzRiMTcxcC0xLAorICAgIC0weDEuMzMzMzM2cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIDB4MS4zZmFlZmIyYjY4ZTY3ODZlYjY5MmJkNGU0MDQ1MjEzZXAtMSwKKyAgICAweDEuOGZlZWRjOTI3NjRiZmJkY2I0MTM4OWU4MjA2M2VkNmVwLTEsCisgICAgMHgxLjU5NDMxNnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDkKKyAgICAtMHgxLjNmYWVmYjJiNjhlNjc4NmViNjkyYmQ0ZTQwNDUyMTNlcC0xLAorICAgIDB4MS44ZmVlZGM5Mjc2NGJmYmRjYjQxMzg5ZTgyMDYzZWQ2ZXAtMSwKKyAgICAtMHgxLjU5NDMxNnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTAKKyAgICAweDEuM2ZhZWZjYmI1N2MyNmIwZDg0YjYzZGJmYjcyYjQxM2JwLTEsCisgICAgMHgxLjhmZWVkYjUyYzc1MDA4N2M1Zjg3MjdlMDI3OWU1ZjY2cC0xLAorICAgIDB4MS41OTQzMThwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNTUxCisgICAgLTB4MS4zZmFlZmNiYjU3YzI2YjBkODRiNjNkYmZiNzJiNDEzYnAtMSwKKyAgICAweDEuOGZlZWRiNTJjNzUwMDg3YzVmODcyN2UwMjc5ZTVmNjZwLTEsCisgICAgLTB4MS41OTQzMThwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgMHgxLjNmYWVmZTRiNDY5ZDFkZmQ1NjFlNjY2ZWRkYTdjNmU2cC0xLAorICAgIDB4MS44ZmVlZGExMzE4NTI4NTJkMmZhN2ZlODg0N2IwNTk3M3AtMSwKKyAgICAweDEuNTk0MzFhcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDU1MworICAgIC0weDEuM2ZhZWZlNGI0NjlkMWRmZDU2MWU2NjZlZGRhN2M2ZTZwLTEsCisgICAgMHgxLjhmZWVkYTEzMTg1Mjg1MmQyZmE3ZmU4ODQ3YjA1OTczcC0xLAorICAgIC0weDEuNTk0MzFhcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS42ODg4YTM3NWFiMjI4YzFlMDMxYzQwMDU3Njk1MDlmOXAtMSwKKyAgICAweDEuNmI4OTkxMTI3ODU5ZmQ5YjQzY2ExZDA4YjkyYWE0MDFwLTEsCisgICAgMHgxLjhmZmZmZXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTUKKyAgICAtMHgxLjY4ODhhMzc1YWIyMjhjMWUwMzFjNDAwNTc2OTUwOWY5cC0xLAorICAgIDB4MS42Yjg5OTExMjc4NTlmZDliNDNjYTFkMDhiOTJhYTQwMXAtMSwKKyAgICAtMHgxLjhmZmZmZXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTYKKyAgICAweDEuNjg4OGE0ZTEzNGIyZWE1MjBiMjI2ZWNhODY5NGIzYTJwLTEsCisgICAgMHgxLjZiODk4ZmE5ZWZiNWQyMmI1OGYwZDk5ZTk2MzQ5MzFhcC0xLAorICAgIDB4MS45MHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTcKKyAgICAtMHgxLjY4ODhhNGUxMzRiMmVhNTIwYjIyNmVjYTg2OTRiM2EycC0xLAorICAgIDB4MS42Yjg5OGZhOWVmYjVkMjJiNThmMGQ5OWU5NjM0OTMxYXAtMSwKKyAgICAtMHgxLjkwcC0xLAorICB9LAorICB7IC8vIEVudHJ5IDU1OAorICAgIDB4MS42ODg4YTY0Y2JlNDFkZmZkNmU0NzY4ZGNjYTRkYjUzYnAtMSwKKyAgICAweDEuNmI4OThlNDE2NzEwM2IzMWRlNmRhNjdlYmY1ZTlmZTZwLTEsCisgICAgMHgxLjkwMDAwMnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTkKKyAgICAtMHgxLjY4ODhhNjRjYmU0MWRmZmQ2ZTQ3NjhkY2NhNGRiNTNicC0xLAorICAgIDB4MS42Yjg5OGU0MTY3MTAzYjMxZGU2ZGE2N2ViZjVlOWZlNnAtMSwKKyAgICAtMHgxLjkwMDAwMnAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjAKKyAgICAtMC4wZiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5wLTE0OSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjEKKyAgICAwLjBmLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEucC0xNDksCisgIH0sCisgIHsgLy8gRW50cnkgNTYyCisgICAgMC4wLAorICAgIDB4MS5wMCwKKyAgICAwLjAsCisgIH0sCisgIHsgLy8gRW50cnkgNTYzCisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLnAtMTQ5LAorICB9LAorICB7IC8vIEVudHJ5IDU2NAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnAtMTQ5LAorICB9LAorICB7IC8vIEVudHJ5IDU2NQorICAgIDB4MS45MWY2NWRjY2ZlYWQzNTNkOGRiOWMzMmYxMjI2MjczMHAtNSwKKyAgICAweDEuZmY2MjFlMzg5NTZhM2IzYmU5MjAyNTZkZGI2MDM0Y2RwLTEsCisgICAgMHgxLjkyMWZiNHAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjYKKyAgICAtMHgxLjkxZjY1ZGNjZmVhZDM1M2Q4ZGI5YzMyZjEyMjYyNzMwcC01LAorICAgIDB4MS5mZjYyMWUzODk1NmEzYjNiZTkyMDI1NmRkYjYwMzRjZHAtMSwKKyAgICAtMHgxLjkyMWZiNHAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICAweDEuOTFmNjVmY2M2MGNiNmQwOWZjYzVjMzVkZDZhNzk4YzhwLTUsCisgICAgMHgxLmZmNjIxZTM3MDM3M2RjNmYzOTYzZDQyODk2ZWRlMDc4cC0xLAorICAgIDB4MS45MjFmYjZwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgNTY4CisgICAgLTB4MS45MWY2NWZjYzYwY2I2ZDA5ZmNjNWMzNWRkNmE3OThjOHAtNSwKKyAgICAweDEuZmY2MjFlMzcwMzczZGM2ZjM5NjNkNDI4OTZlZGUwNzhwLTEsCisgICAgLTB4MS45MjFmYjZwLTUsCisgIH0sCisgIHsgLy8gRW50cnkgNTY5CisgICAgMHgxLjkxZjY2MWNiYzJlOWEzNDQ3NTcxZjcyYmNmYmMyMWUycC01LAorICAgIDB4MS5mZjYyMWUzNTcxN2Q3YmEzMjc4OTRiZGZkZTlmNDc4N3AtMSwKKyAgICAweDEuOTIxZmI4cC01LAorICB9LAorICB7IC8vIEVudHJ5IDU3MAorICAgIC0weDEuOTFmNjYxY2JjMmU5YTM0NDc1NzFmNzJiY2ZiYzIxZTJwLTUsCisgICAgMHgxLmZmNjIxZTM1NzE3ZDdiYTMyNzg5NGJkZmRlOWY0Nzg3cC0xLAorICAgIC0weDEuOTIxZmI4cC01LAorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIDB4MS45MTdhNmE3ZmU4Mjk3YmYwYTExMjVmYjAyYjIwMzhhZXAtNCwKKyAgICAweDEuZmQ4OGRhNDEwYjYxY2Q1NTIyMWQ5YmViOTk2ZDRkOTlwLTEsCisgICAgMHgxLjkyMWZiNHAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzIKKyAgICAtMHgxLjkxN2E2YTdmZTgyOTdiZjBhMTEyNWZiMDJiMjAzOGFlcC00LAorICAgIDB4MS5mZDg4ZGE0MTBiNjFjZDU1MjIxZDliZWI5OTZkNGQ5OXAtMSwKKyAgICAtMHgxLjkyMWZiNHAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzMKKyAgICAweDEuOTE3YTZjN2Q3MTAzYjlkOTBlMDk2MTUxNjQ0NDljNmJwLTQsCisgICAgMHgxLmZkODhkYTNhYzU3ODFmNWE2ZmMzMmU0MGVkNTEyMmIwcC0xLAorICAgIDB4MS45MjFmYjZwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgNTc0CisgICAgLTB4MS45MTdhNmM3ZDcxMDNiOWQ5MGUwOTYxNTE2NDQ0OWM2YnAtNCwKKyAgICAweDEuZmQ4OGRhM2FjNTc4MWY1YTZmYzMyZTQwZWQ1MTIyYjBwLTEsCisgICAgLTB4MS45MjFmYjZwLTQsCisgIH0sCisgIHsgLy8gRW50cnkgNTc1CisgICAgMHgxLjkxN2E2ZTdhZjlkZGYxN2I5MTRlNmQyZThlODNiMzNlcC00LAorICAgIDB4MS5mZDg4ZGEzNDdmOGU2OTY5OTlmZmQ1ODA2MGJhMzU2OXAtMSwKKyAgICAweDEuOTIxZmI4cC00LAorICB9LAorICB7IC8vIEVudHJ5IDU3NgorICAgIC0weDEuOTE3YTZlN2FmOWRkZjE3YjkxNGU2ZDJlOGU4M2IzM2VwLTQsCisgICAgMHgxLmZkODhkYTM0N2Y4ZTY5Njk5OWZmZDU4MDYwYmEzNTY5cC0xLAorICAgIC0weDEuOTIxZmI4cC00LAorICB9LAorICB7IC8vIEVudHJ5IDU3NworICAgIDB4MS44ZjhiODI4ODkyOTZiNWNmNzkwNGRiMWU3NGIzNDY2YnAtMywKKyAgICAweDEuZjYyOTdkMGY0NjcxZGE1ODBkZmVjZGQ0ZGIyOWY0NzNwLTEsCisgICAgMHgxLjkyMWZiNHAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzgKKyAgICAtMHgxLjhmOGI4Mjg4OTI5NmI1Y2Y3OTA0ZGIxZTc0YjM0NjZicC0zLAorICAgIDB4MS5mNjI5N2QwZjQ2NzFkYTU4MGRmZWNkZDRkYjI5ZjQ3M3AtMSwKKyAgICAtMHgxLjkyMWZiNHAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzkKKyAgICAweDEuOGY4Yjg0N2ViYzEzYjg5OThlYzViMzdlNzA2NTM0MWVwLTMsCisgICAgMHgxLmY2Mjk3Y2Y2NGRiOWEyMWQ5OGFiMzk0MGZjOGE4NmYwcC0xLAorICAgIDB4MS45MjFmYjZwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgNTgwCisgICAgLTB4MS44ZjhiODQ3ZWJjMTNiODk5OGVjNWIzN2U3MDY1MzQxZXAtMywKKyAgICAweDEuZjYyOTdjZjY0ZGI5YTIxZDk4YWIzOTQwZmM4YTg2ZjBwLTEsCisgICAgLTB4MS45MjFmYjZwLTMsCisgIH0sCisgIHsgLy8gRW50cnkgNTgxCisgICAgMHgxLjhmOGI4Njc0ZTU5MGEyNmFlYzNlYTAxZDMwYWVkNDg2cC0zLAorICAgIDB4MS5mNjI5N2NkZDU1MDE0YTgwOGI4ODNmZDE4M2YzMThhY3AtMSwKKyAgICAweDEuOTIxZmI4cC0zLAorICB9LAorICB7IC8vIEVudHJ5IDU4MgorICAgIC0weDEuOGY4Yjg2NzRlNTkwYTI2YWVjM2VhMDFkMzBhZWQ0ODZwLTMsCisgICAgMHgxLmY2Mjk3Y2RkNTUwMTRhODA4Yjg4M2ZkMTgzZjMxOGFjcC0xLAorICAgIC0weDEuOTIxZmI4cC0zLAorICB9LAorICB7IC8vIEVudHJ5IDU4MworICAgIDB4MS44N2RlMjkzZjU2OTcxN2E0MmEzYmRiMDFhZWFlMjA2M3AtMiwKKyAgICAweDEuZDkwNmJkMzEzNDQzMDA3ZGNiMGJkNGUzZDYzMjg0YzBwLTEsCisgICAgMHgxLjkyMWZiNHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODQKKyAgICAtMHgxLjg3ZGUyOTNmNTY5NzE3YTQyYTNiZGIwMWFlYWUyMDYzcC0yLAorICAgIDB4MS5kOTA2YmQzMTM0NDMwMDdkY2IwYmQ0ZTNkNjMyODRjMHAtMSwKKyAgICAtMHgxLjkyMWZiNHAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODUKKyAgICAweDEuODdkZTJiMTg1ZDU0MTdkY2E4MDBiODVjYTEzMTkwNDNwLTIsCisgICAgMHgxLmQ5MDZiY2NmM2NiODc1ODc0ZGEzZGE0YzAxMTA0YmFmcC0xLAorICAgIDB4MS45MjFmYjZwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgNTg2CisgICAgLTB4MS44N2RlMmIxODVkNTQxN2RjYTgwMGI4NWNhMTMxOTA0M3AtMiwKKyAgICAweDEuZDkwNmJjY2YzY2I4NzU4NzRkYTNkYTRjMDExMDRiYWZwLTEsCisgICAgLTB4MS45MjFmYjZwLTIsCisgIH0sCisgIHsgLy8gRW50cnkgNTg3CisgICAgMHgxLjg3ZGUyY2YxNjQxMGI2MWQ5YWZmN2U2MjhmYzg1M2IycC0yLAorICAgIDB4MS5kOTA2YmM2ZDQ1MmQ3NDRmMjEwODEwODYxMTAyZjJkYXAtMSwKKyAgICAweDEuOTIxZmI4cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDU4OAorICAgIC0weDEuODdkZTJjZjE2NDEwYjYxZDlhZmY3ZTYyOGZjODUzYjJwLTIsCisgICAgMHgxLmQ5MDZiYzZkNDUyZDc0NGYyMTA4MTA4NjExMDJmMmRhcC0xLAorICAgIC0weDEuOTIxZmI4cC0yLAorICB9LAorICB7IC8vIEVudHJ5IDU4OQorICAgIDB4MS42YTA5ZTU4MmFhMzk0NTQ2MWI1YThhMDc4N2Q1YWI1YnAtMSwKKyAgICAweDEuNmEwOWU3NGQzZDNmYmI5NGQ5NDI3NGYzNzc2OWY2ZWFwLTEsCisgICAgMHgxLjkyMWZiNHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTAKKyAgICAtMHgxLjZhMDllNTgyYWEzOTQ1NDYxYjVhOGEwNzg3ZDVhYjVicC0xLAorICAgIDB4MS42YTA5ZTc0ZDNkM2ZiYjk0ZDk0Mjc0ZjM3NzY5ZjZlYXAtMSwKKyAgICAtMHgxLjkyMWZiNHAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTEKKyAgICAweDEuNmEwOWU2ZWNiNDFmZGQ3ZTY4MTg3MmM4NTQ4ODcwMTlwLTEsCisgICAgMHgxLjZhMDllNWUzMzM1OTgzZTVhYzkyZTczM2UzZjI0YjQycC0xLAorICAgIDB4MS45MjFmYjZwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNTkyCisgICAgLTB4MS42YTA5ZTZlY2I0MWZkZDdlNjgxODcyYzg1NDg4NzAxOXAtMSwKKyAgICAweDEuNmEwOWU1ZTMzMzU5ODNlNWFjOTJlNzMzZTNmMjRiNDJwLTEsCisgICAgLTB4MS45MjFmYjZwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgNTkzCisgICAgMHgxLjZhMDllODU2YmUwNTBiYWNjZGU5YTc2OTYxZTg0YWE3cC0xLAorICAgIDB4MS42YTA5ZTQ3OTI5NzFlMjJjOWEwMDI2MWFlYWMwNzBkYXAtMSwKKyAgICAweDEuOTIxZmI4cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDU5NAorICAgIC0weDEuNmEwOWU4NTZiZTA1MGJhY2NkZTlhNzY5NjFlODRhYTdwLTEsCisgICAgMHgxLjZhMDllNDc5Mjk3MWUyMmM5YTAwMjYxYWVhYzA3MGRhcC0xLAorICAgIC0weDEuOTIxZmI4cC0xLAorICB9LAorICB7IC8vIEVudHJ5IDU5NQorICAgIDB4MS5mZmZmZmZmZmZmZmU2NTQ2Y2MzODIxMWMyNmRhYmVlYnAtMSwKKyAgICAweDEuNDQ0MmQxODQ2OTg5MzYxMDI4MWEwZjliMGU4ZDBlZWZwLTI0LAorICAgIDB4MS45MjFmYjRwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZTY1NDZjYzM4MjExYzI2ZGFiZWVicC0xLAorICAgIDB4MS40NDQyZDE4NDY5ODkzNjEwMjgxYTBmOWIwZThkMGVlZnAtMjQsCisgICAgLTB4MS45MjFmYjRwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAweDEuZmZmZmZmZmZmZmZmNzY1MjEyNDljNzQyMjkzMGVkODJwLTEsCisgICAgLTB4MS43NzdhNWNmNzJjZWNjNGNkZTNhMzFlN2Q1YTAyNjE0MnAtMjUsCisgICAgMHgxLjkyMWZiNnAwLAorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIC0weDEuZmZmZmZmZmZmZmZmNzY1MjEyNDljNzQyMjkzMGVkODJwLTEsCisgICAgLTB4MS43NzdhNWNmNzJjZWNjNGNkZTNhMzFlN2Q1YTAyNjE0MnAtMjUsCisgICAgLTB4MS45MjFmYjZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTkKKyAgICAweDEuZmZmZmZmZmZmZmY4ODc1ZDU4NWI2ZDZjZmNlOTdkOWNwLTEsCisgICAgLTB4MS41ZGRlOTczZGNiMzk4NWY0YThlNzZhMWZlY2EyOWUxZHAtMjMsCisgICAgMHgxLjkyMWZiOHAwLAorICB9LAorICB7IC8vIEVudHJ5IDYwMAorICAgIC0weDEuZmZmZmZmZmZmZmY4ODc1ZDU4NWI2ZDZjZmNlOTdkOWNwLTEsCisgICAgLTB4MS41ZGRlOTczZGNiMzk4NWY0YThlNzZhMWZlY2EyOWUxZHAtMjMsCisgICAgLTB4MS45MjFmYjhwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDEKKyAgICAweDEuNDQ0MmQxODQ2OTg4MzFmMTViNjMxNWJmYTZiNWFlNzVwLTIzLAorICAgIC0weDEuZmZmZmZmZmZmZmY5OTUxYjMwZTA4NDczMmU2MGJiODVwLTEsCisgICAgMHgxLjkyMWZiNHAxLAorICB9LAorICB7IC8vIEVudHJ5IDYwMgorICAgIC0weDEuNDQ0MmQxODQ2OTg4MzFmMTViNjMxNWJmYTZiNWFlNzVwLTIzLAorICAgIC0weDEuZmZmZmZmZmZmZmY5OTUxYjMwZTA4NDczMmU2MGJiODVwLTEsCisgICAgLTB4MS45MjFmYjRwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAtMHgxLjc3N2E1Y2Y3MmNlYzVmZDYxODk2Y2I0ZjQwZDFkZTc5cC0yNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZGQ5NDg0OTI3MWQwOGVlY2Y1NGExcC0xLAorICAgIDB4MS45MjFmYjZwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDQKKyAgICAweDEuNzc3YTVjZjcyY2VjNWZkNjE4OTZjYjRmNDBkMWRlNzlwLTI0LAorICAgIC0weDEuZmZmZmZmZmZmZmZkZDk0ODQ5MjcxZDA4ZWVjZjU0YTFwLTEsCisgICAgLTB4MS45MjFmYjZwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDUKKyAgICAtMHgxLjVkZGU5NzNkY2IzNDZhZmE0NjIwM2NkZGM2ZjdmZTk3cC0yMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZlMjFkNzU2MTZkYjVlYmM1NjQwNWY1cC0xLAorICAgIDB4MS45MjFmYjhwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDYKKyAgICAweDEuNWRkZTk3M2RjYjM0NmFmYTQ2MjAzY2RkYzZmN2ZlOTdwLTIyLAorICAgIC0weDEuZmZmZmZmZmZmZmUyMWQ3NTYxNmRiNWViYzU2NDA1ZjVwLTEsCisgICAgLTB4MS45MjFmYjhwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDcKKyAgICAtMHgxLjQ0NDJkMTg0Njk4NDIxNzYyODg3MmU1NmViNThiNGMxcC0yMiwKKyAgICAweDEuZmZmZmZmZmZmZmU2NTQ2Y2MzODIxMWY1ZThkZWViOTdwLTEsCisgICAgMHgxLjkyMWZiNHAyLAorICB9LAorICB7IC8vIEVudHJ5IDYwOAorICAgIDB4MS40NDQyZDE4NDY5ODQyMTc2Mjg4NzJlNTZlYjU4YjRjMXAtMjIsCisgICAgMHgxLmZmZmZmZmZmZmZlNjU0NmNjMzgyMTFmNWU4ZGVlYjk3cC0xLAorICAgIC0weDEuOTIxZmI0cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjA5CisgICAgMHgxLjc3N2E1Y2Y3MmNlYWNiZjZlYzY1N2U5NzdlZjc3MWYxcC0yMywKKyAgICAweDEuZmZmZmZmZmZmZmY3NjUyMTI0OWM3NDI4NWJmNzNjMDdwLTEsCisgICAgMHgxLjkyMWZiNnAyLAorICB9LAorICB7IC8vIEVudHJ5IDYxMAorICAgIC0weDEuNzc3YTVjZjcyY2VhY2JmNmVjNjU3ZTk3N2VmNzcxZjFwLTIzLAorICAgIDB4MS5mZmZmZmZmZmZmZjc2NTIxMjQ5Yzc0Mjg1YmY3M2MwN3AtMSwKKyAgICAtMHgxLjkyMWZiNnAyLAorICB9LAorICB7IC8vIEVudHJ5IDYxMQorICAgIDB4MS41ZGRlOTczZGNiMWZmZjEwYmIwMzg4NDc5ZTgyZjRiYnAtMjEsCisgICAgMHgxLmZmZmZmZmZmZmY4ODc1ZDU4NWI2ZGIyYzMxNzExMDA0cC0xLAorICAgIDB4MS45MjFmYjhwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTIKKyAgICAtMHgxLjVkZGU5NzNkY2IxZmZmMTBiYjAzODg0NzllODJmNGJicC0yMSwKKyAgICAweDEuZmZmZmZmZmZmZjg4NzVkNTg1YjZkYjJjMzE3MTEwMDRwLTEsCisgICAgLTB4MS45MjFmYjhwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTMKKyAgICAtMHgxLjQ0NDJkMTg0Njk3M2RmODk1ZDE3OTEwMjNkZWQ1MTNjcC0yMSwKKyAgICAweDEuZmZmZmZmZmZmZjk5NTFiMzBlMDg0YTZhOTkzYjg2NzVwLTEsCisgICAgMHgxLjkyMWZiNHAzLAorICB9LAorICB7IC8vIEVudHJ5IDYxNAorICAgIDB4MS40NDQyZDE4NDY5NzNkZjg5NWQxNzkxMDIzZGVkNTEzY3AtMjEsCisgICAgMHgxLmZmZmZmZmZmZmY5OTUxYjMwZTA4NGE2YTk5M2I4Njc1cC0xLAorICAgIC0weDEuOTIxZmI0cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNjE1CisgICAgMHgxLjc3N2E1Y2Y3MmNlNDdjN2EzYmEwNGJjMmE2MDdhOWE3cC0yMiwKKyAgICAweDEuZmZmZmZmZmZmZmRkOTQ4NDkyNzFkMGViN2I3Yjg4NGJwLTEsCisgICAgMHgxLjkyMWZiNnAzLAorICB9LAorICB7IC8vIEVudHJ5IDYxNgorICAgIC0weDEuNzc3YTVjZjcyY2U0N2M3YTNiYTA0YmMyYTYwN2E5YTdwLTIyLAorICAgIDB4MS5mZmZmZmZmZmZmZGQ5NDg0OTI3MWQwZWI3YjdiODg0YnAtMSwKKyAgICAtMHgxLjkyMWZiNnAzLAorICB9LAorICB7IC8vIEVudHJ5IDYxNworICAgIDB4MS41ZGRlOTczZGNhY2U0ZjZhOGU5MGJkMTVlMDA2MTBmOHAtMjAsCisgICAgMHgxLmZmZmZmZmZmZmUyMWQ3NTYxNmRiYTQ4MjgzZDNjMmY3cC0xLAorICAgIDB4MS45MjFmYjhwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTgKKyAgICAtMHgxLjVkZGU5NzNkY2FjZTRmNmE4ZTkwYmQxNWUwMDYxMGY4cC0yMCwKKyAgICAweDEuZmZmZmZmZmZmZTIxZDc1NjE2ZGJhNDgyODNkM2MyZjdwLTEsCisgICAgLTB4MS45MjFmYjhwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTkKKyAgICAtMHgxLjQ0NDJkMTg0NjkzMmQ3ZDYyZjU5MjA5Mzg4YzdmN2NhcC0yMCwKKyAgICAweDEuZmZmZmZmZmZmZTY1NDZjYzM4MjE1MmQ5YzBlYjliNDdwLTEsCisgICAgMHgxLjkyMWZiNHA0LAorICB9LAorICB7IC8vIEVudHJ5IDYyMAorICAgIDB4MS40NDQyZDE4NDY5MzJkN2Q2MmY1OTIwOTM4OGM3ZjdjYXAtMjAsCisgICAgMHgxLmZmZmZmZmZmZmU2NTQ2Y2MzODIxNTJkOWMwZWI5YjQ3cC0xLAorICAgIC0weDEuOTIxZmI0cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNjIxCisgICAgMHgxLjc3N2E1Y2Y3MmNjYjNlODc3ODhiODExMjI5ZTcyNWJjcC0yMSwKKyAgICAweDEuZmZmZmZmZmZmZjc2NTIxMjQ5Yzc0ODRlYTdkN2E0MDlwLTEsCisgICAgMHgxLjkyMWZiNnA0LAorICB9LAorICB7IC8vIEVudHJ5IDYyMgorICAgIC0weDEuNzc3YTVjZjcyY2NiM2U4Nzc4OGI4MTEyMjllNzI1YmNwLTIxLAorICAgIDB4MS5mZmZmZmZmZmZmNzY1MjEyNDljNzQ4NGVhN2Q3YTQwOXAtMSwKKyAgICAtMHgxLjkyMWZiNnA0LAorICB9LAorICB7IC8vIEVudHJ5IDYyMworICAgIDB4MS41ZGRlOTczZGM5ODc5MGQxZGNjNjAyYmQxYjg2YmNjYXAtMTksCisgICAgMHgxLmZmZmZmZmZmZjg4NzVkNTg1YjcyMGYyNWYwNDczOTQzcC0xLAorICAgIDB4MS45MjFmYjhwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjQKKyAgICAtMHgxLjVkZGU5NzNkYzk4NzkwZDFkY2M2MDJiZDFiODZiY2NhcC0xOSwKKyAgICAweDEuZmZmZmZmZmZmODg3NWQ1ODViNzIwZjI1ZjA0NzM5NDNwLTEsCisgICAgLTB4MS45MjFmYjhwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjUKKyAgICAtMHgxLjQ0NDJkMTg0NjgyZWI5MDk3ODVmYWQxOGJjYjVkYmZjcC0xOSwKKyAgICAweDEuZmZmZmZmZmZmOTk1MWIzMGUwODdkZTVjYzM4NjgzYjhwLTEsCisgICAgMHgxLjkyMWZiNHA1LAorICB9LAorICB7IC8vIEVudHJ5IDYyNgorICAgIDB4MS40NDQyZDE4NDY4MmViOTA5Nzg1ZmFkMThiY2I1ZGJmY3AtMTksCisgICAgMHgxLmZmZmZmZmZmZjk5NTFiMzBlMDg3ZGU1Y2MzODY4M2I4cC0xLAorICAgIC0weDEuOTIxZmI0cDUsCisgIH0sCisgIHsgLy8gRW50cnkgNjI3CisgICAgMHgxLjc3N2E1Y2Y3MmM2NjQ2YmM2YzM4NjA3ZWIzNGVlYTEzcC0yMCwKKyAgICAweDEuZmZmZmZmZmZmZGQ5NDg0OTI3MWQ2YjQ2M2RmNmJkZGZwLTEsCisgICAgMHgxLjkyMWZiNnA1LAorICB9LAorICB7IC8vIEVudHJ5IDYyOAorICAgIC0weDEuNzc3YTVjZjcyYzY2NDZiYzZjMzg2MDdlYjM0ZWVhMTNwLTIwLAorICAgIDB4MS5mZmZmZmZmZmZkZDk0ODQ5MjcxZDZiNDYzZGY2YmRkZnAtMSwKKyAgICAtMHgxLjkyMWZiNnA1LAorICB9LAorICB7IC8vIEVudHJ5IDYyOQorICAgIDB4MS41ZGRlOTczZGM0NmM5NjZmMTVhMjQwM2Q2MGNkMTRkMHAtMTgsCisgICAgMHgxLmZmZmZmZmZmZTIxZDc1NjE2ZTAwMGU1NWQwOWY4NzU3cC0xLAorICAgIDB4MS45MjFmYjhwNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzAKKyAgICAtMHgxLjVkZGU5NzNkYzQ2Yzk2NmYxNWEyNDAzZDYwY2QxNGQwcC0xOCwKKyAgICAweDEuZmZmZmZmZmZlMjFkNzU2MTZlMDAwZTU1ZDA5Zjg3NTdwLTEsCisgICAgLTB4MS45MjFmYjhwNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzEKKyAgICAtMHgxLjQ0NDJkMTg0NjQxZTNkZDY5YzdlYzMyZTE0YTIwOWE1cC0xOCwKKyAgICAweDEuZmZmZmZmZmZlNjU0NmNjMzgyNDhhOGNmMGI5YjU3OTVwLTEsCisgICAgMHgxLjkyMWZiNHA2LAorICB9LAorICB7IC8vIEVudHJ5IDYzMgorICAgIDB4MS40NDQyZDE4NDY0MWUzZGQ2OWM3ZWMzMmUxNGEyMDlhNXAtMTgsCisgICAgMHgxLmZmZmZmZmZmZTY1NDZjYzM4MjQ4YThjZjBiOWI1Nzk1cC0xLAorICAgIC0weDEuOTIxZmI0cDYsCisgIH0sCisgIHsgLy8gRW50cnkgNjMzCisgICAgMHgxLjc3N2E1Y2Y3MmFkMjY3OTAzYWVjODExODc3OGIzYjVhcC0xOSwKKyAgICAweDEuZmZmZmZmZmZmNzY1MjEyNDljN2E0ZGQyZTE1ZGQxYzRwLTEsCisgICAgMHgxLjkyMWZiNnA2LAorICB9LAorICB7IC8vIEVudHJ5IDYzNAorICAgIC0weDEuNzc3YTVjZjcyYWQyNjc5MDNhZWM4MTE4Nzc4YjNiNWFwLTE5LAorICAgIDB4MS5mZmZmZmZmZmY3NjUyMTI0OWM3YTRkZDJlMTVkZDFjNHAtMSwKKyAgICAtMHgxLjkyMWZiNnA2LAorICB9LAorICB7IC8vIEVudHJ5IDYzNQorICAgIDB4MS41ZGRlOTczZGIwMDBhY2UzZjk4NWE0NzNlYTFmYzAzOXAtMTcsCisgICAgMHgxLmZmZmZmZmZmODg3NWQ1ODViYjdkNTUzODNhOWIzOWE0cC0xLAorICAgIDB4MS45MjFmYjhwNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzYKKyAgICAtMHgxLjVkZGU5NzNkYjAwMGFjZTNmOTg1YTQ3M2VhMWZjMDM5cC0xNywKKyAgICAweDEuZmZmZmZmZmY4ODc1ZDU4NWJiN2Q1NTM4M2E5YjM5YTRwLTEsCisgICAgLTB4MS45MjFmYjhwNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzcKKyAgICAtMHgxLjQ0NDJkMTg0NTNkYzUxMGIyZDQ5NWI4YmY3OWJkMWNlcC0xNywKKyAgICAweDEuZmZmZmZmZmY5OTUxYjMwZTBiYjU5OGZjMDY3OWE2ZjdwLTEsCisgICAgMHgxLjkyMWZiNHA3LAorICB9LAorICB7IC8vIEVudHJ5IDYzOAorICAgIDB4MS40NDQyZDE4NDUzZGM1MTBiMmQ0OTViOGJmNzliZDFjZXAtMTcsCisgICAgMHgxLmZmZmZmZmZmOTk1MWIzMGUwYmI1OThmYzA2NzlhNmY3cC0xLAorICAgIC0weDEuOTIxZmI0cDcsCisgIH0sCisgIHsgLy8gRW50cnkgNjM5CisgICAgMHgxLjc3N2E1Y2Y3MjQ4MmVhZGY3NWM3MzFmOTcyNTA3NzE4cC0xOCwKKyAgICAweDEuZmZmZmZmZmZkZDk0ODQ5MjcyMzM0MmVhMWRhNDliYWNwLTEsCisgICAgMHgxLjkyMWZiNnA3LAorICB9LAorICB7IC8vIEVudHJ5IDY0MAorICAgIC0weDEuNzc3YTVjZjcyNDgyZWFkZjc1YzczMWY5NzI1MDc3MThwLTE4LAorICAgIDB4MS5mZmZmZmZmZmRkOTQ4NDkyNzIzMzQyZWExZGE0OWJhY3AtMSwKKyAgICAtMHgxLjkyMWZiNnA3LAorICB9LAorICB7IC8vIEVudHJ5IDY0MQorICAgIDB4MS41ZGRlOTczZDVlNTEwNmI3OTAzYTE4YTU1MmFlZmM2ZXAtMTYsCisgICAgMHgxLmZmZmZmZmZlMjFkNzU2MTcyNWM3MTJmMDY4ZmM5NzE4cC0xLAorICAgIDB4MS45MjFmYjhwNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDIKKyAgICAtMHgxLjVkZGU5NzNkNWU1MTA2Yjc5MDNhMThhNTUyYWVmYzZlcC0xNiwKKyAgICAweDEuZmZmZmZmZmUyMWQ3NTYxNzI1YzcxMmYwNjhmYzk3MThwLTEsCisgICAgLTB4MS45MjFmYjhwNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDMKKyAgICAweDEuNmEwOWYxOTQwYjgwYzhlMjVjZmM4YzEwZDQyNTc2YzZwLTEsCisgICAgLTB4MS42YTA5ZGIzYmRiYTA4NjhhMzFlNzY2MzU5YTg0MDZjYXAtMSwKKyAgICAweDEuMmQ5N2M0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNjQ0CisgICAgLTB4MS42YTA5ZjE5NDBiODBjOGUyNWNmYzhjMTBkNDI1NzZjNnAtMSwKKyAgICAtMHgxLjZhMDlkYjNiZGJhMDg2OGEzMWU3NjYzNTlhODQwNmNhcC0xLAorICAgIC0weDEuMmQ5N2M0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNjQ1CisgICAgMHgxLjZhMDllYmViZTQwODg5MjQ1ZDU3YzVjOWQ5MGE2ZDgycC0xLAorICAgIC0weDEuNmEwOWUwZTQwMzViODY2OTRjMTY1MzRlNDJmYmUxMTFwLTEsCisgICAgMHgxLjJkOTdjNnAxLAorICB9LAorICB7IC8vIEVudHJ5IDY0NgorICAgIC0weDEuNmEwOWViZWJlNDA4ODkyNDVkNTdjNWM5ZDkwYTZkODJwLTEsCisgICAgLTB4MS42YTA5ZTBlNDAzNWI4NjY5NGMxNjUzNGU0MmZiZTExMXAtMSwKKyAgICAtMHgxLjJkOTdjNnAxLAorICB9LAorICB7IC8vIEVudHJ5IDY0NworICAgIDB4MS42YTA5ZTY0M2JjNzlhOGM3OWVmNGJmMTg3NzI3ZTI2OXAtMSwKKyAgICAtMHgxLjZhMDllNjhjMmFmZmU1YWE1ODA1MGFjY2IwNWM2MjQ4cC0xLAorICAgIDB4MS4yZDk3YzhwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDgKKyAgICAtMHgxLjZhMDllNjQzYmM3OWE4Yzc5ZWY0YmYxODc3MjdlMjY5cC0xLAorICAgIC0weDEuNmEwOWU2OGMyYWZmZTVhYTU4MDUwYWNjYjA1YzYyNDhwLTEsCisgICAgLTB4MS4yZDk3YzhwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDkKKyAgICAtMHgxLjZhMDlkZjE5NzA0Y2YxNDEwOGUwOTAwMGZmNjM3NGJmcC0xLAorICAgIC0weDEuNmEwOWVkYjY3NzA2ZTA5OTcxMjFkMTJhMGM4N2JhZThwLTEsCisgICAgMHgxLmY2YTdhMHAxLAorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIDB4MS42YTA5ZGYxOTcwNGNmMTQxMDhlMDkwMDBmZjYzNzRiZnAtMSwKKyAgICAtMHgxLjZhMDllZGI2NzcwNmUwOTk3MTIxZDEyYTBjODdiYWU4cC0xLAorICAgIC0weDEuZjZhN2EwcDEsCisgIH0sCisgIHsgLy8gRW50cnkgNjUxCisgICAgLTB4MS42YTA5ZTRjMTk3Zjg3YWNlMWM4MWI0MzAyMmJlMzliMXAtMSwKKyAgICAtMHgxLjZhMDllODBlNGY3ZjJhODhkZWJlZDM3ZmFhOTNlOGM4cC0xLAorICAgIDB4MS5mNmE3YTJwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTIKKyAgICAweDEuNmEwOWU0YzE5N2Y4N2FjZTFjODFiNDMwMjJiZTM5YjFwLTEsCisgICAgLTB4MS42YTA5ZTgwZTRmN2YyYTg4ZGViZWQzN2ZhYTkzZThjOHAtMSwKKyAgICAtMHgxLmY2YTdhMnAxLAorICB9LAorICB7IC8vIEVudHJ5IDY1MworICAgIC0weDEuNmEwOWVhNjliZjhkNjNiY2U0MDk1OGY1YzRiNGYxNTVwLTEsCisgICAgLTB4MS42YTA5ZTI2NjI3ZTBkM2Q5Y2I3NmRlMDBjYjkwMmJlY3AtMSwKKyAgICAweDEuZjZhN2E0cDEsCisgIH0sCisgIHsgLy8gRW50cnkgNjU0CisgICAgMHgxLjZhMDllYTY5YmY4ZDYzYmNlNDA5NThmNWM0YjRmMTU1cC0xLAorICAgIC0weDEuNmEwOWUyNjYyN2UwZDNkOWNiNzZkZTAwY2I5MDJiZWNwLTEsCisgICAgLTB4MS5mNmE3YTRwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTUKKyAgICAtMHgxLmZmZmZmZmZmZmYwNjVjYjI0MGJiOGY5NTE5ZDJjNmYxcC0xLAorICAgIC0weDEuZjk5OTBlOTFhNzQxNjhiOTBiZDY4ZGZhYjc3NWM5Y2FwLTIxLAorICAgIDB4MS4yZDk3YzRwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTYKKyAgICAweDEuZmZmZmZmZmZmZjA2NWNiMjQwYmI4Zjk1MTlkMmM2ZjFwLTEsCisgICAgLTB4MS5mOTk5MGU5MWE3NDE2OGI5MGJkNjhkZmFiNzc1YzljYXAtMjEsCisgICAgLTB4MS4yZDk3YzRwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTcKKyAgICAtMHgxLmZmZmZmZmZmZmZjMzI5Mzk4OThmNDY0YWFmYzJlNzRhcC0xLAorICAgIC0weDEuZjMzMjFkMjM0ZjEzNjNkMTg3ZGQwOTUyOGI2N2IyMTVwLTIyLAorICAgIDB4MS4yZDk3YzZwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAweDEuZmZmZmZmZmZmZmMzMjkzOTg5OGY0NjRhYWZjMmU3NGFwLTEsCisgICAgLTB4MS5mMzMyMWQyMzRmMTM2M2QxODdkZDA5NTI4YjY3YjIxNXAtMjIsCisgICAgLTB4MS4yZDk3YzZwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmY1YzBkMjYzMGVlMGExZmI0ZTdicC0xLAorICAgIDB4MS45OWJjNWI5NjFiMWFjYWNhMThkOTcxZjY4YWU5OWRhOXAtMjcsCisgICAgMHgxLjJkOTdjOHAyLAorICB9LAorICB7IC8vIEVudHJ5IDY2MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmNWMwZDI2MzBlZTBhMWZiNGU3YnAtMSwKKyAgICAweDEuOTliYzViOTYxYjFhY2FjYTE4ZDk3MWY2OGFlOTlkYTlwLTI3LAorICAgIC0weDEuMmQ5N2M4cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjYxCisgICAgLTB4MS42YTA5ZjUyOTMxNmNkZTVhMTkwZDIzNWNjNGNjYjgyNXAtMSwKKyAgICAweDEuNmEwOWQ3YTZiNTcyYzJjODI0ZDEzN2QwNDA1ZDgxODhwLTEsCisgICAgMHgxLjVmZGJiY3AyLAorICB9LAorICB7IC8vIEVudHJ5IDY2MgorICAgIDB4MS42YTA5ZjUyOTMxNmNkZTVhMTkwZDIzNWNjNGNjYjgyNXAtMSwKKyAgICAweDEuNmEwOWQ3YTZiNTcyYzJjODI0ZDEzN2QwNDA1ZDgxODhwLTEsCisgICAgLTB4MS41ZmRiYmNwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjMKKyAgICAtMHgxLjZhMDllOWQ4ZTI4MjY3NzA1NjdlYTgxOGIyZTg5OTYwcC0xLAorICAgIDB4MS42YTA5ZTJmNzA0ZWVjYjE4MWUzZjVlY2U5YmUwY2EwZnAtMSwKKyAgICAweDEuNWZkYmJlcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjY0CisgICAgMHgxLjZhMDllOWQ4ZTI4MjY3NzA1NjdlYTgxOGIyZTg5OTYwcC0xLAorICAgIDB4MS42YTA5ZTJmNzA0ZWVjYjE4MWUzZjVlY2U5YmUwY2EwZnAtMSwKKyAgICAtMHgxLjVmZGJiZXAyLAorICB9LAorICB7IC8vIEVudHJ5IDY2NQorICAgIC0weDEuNmEwOWRlODg5MzNkNmUwYzFkYjc4ZTFkN2NkMTUxNzNwLTEsCisgICAgMHgxLjZhMDllZTQ3NTQxMDUwZWY1OWVjNGJmY2U5MzVjYzFhcC0xLAorICAgIDB4MS41ZmRiYzBwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjYKKyAgICAweDEuNmEwOWRlODg5MzNkNmUwYzFkYjc4ZTFkN2NkMTUxNzNwLTEsCisgICAgMHgxLjZhMDllZTQ3NTQxMDUwZWY1OWVjNGJmY2U5MzVjYzFhcC0xLAorICAgIC0weDEuNWZkYmMwcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjY3CisgICAgMHgxLjZhMDlkMDMzZmE3MTVhNDA3YTZmMDNkMDFiOTExMTNmcC0xLAorICAgIDB4MS42YTA5ZmM5YmViYWJhMjA4YzgxZWMwYjFjZDMwNzU4OXAtMSwKKyAgICAweDEuYzQ2M2E4cDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjY4CisgICAgLTB4MS42YTA5ZDAzM2ZhNzE1YTQwN2E2ZjAzZDAxYjkxMTEzZnAtMSwKKyAgICAweDEuNmEwOWZjOWJlYmFiYTIwOGM4MWVjMGIxY2QzMDc1ODlwLTEsCisgICAgLTB4MS5jNDYzYThwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjkKKyAgICAweDEuNmEwOWRiODQ0YTI4Zjg2MzU4NTFmZGY4ODE4NTE1ZWZwLTEsCisgICAgMHgxLjZhMDlmMTRiOWNmY2MwZjYyMjdkMzg2Y2MzNzA0YTA1cC0xLAorICAgIDB4MS5jNDYzYWFwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzAKKyAgICAtMHgxLjZhMDlkYjg0NGEyOGY4NjM1ODUxZmRmODgxODUxNWVmcC0xLAorICAgIDB4MS42YTA5ZjE0YjljZmNjMGY2MjI3ZDM4NmNjMzcwNGEwNXAtMSwKKyAgICAtMHgxLmM0NjNhYXAyLAorICB9LAorICB7IC8vIEVudHJ5IDY3MQorICAgIDB4MS42YTA5ZTZkNDk5ODYxNDBmNTUyMjZmYzU4NjcyNjEyY3AtMSwKKyAgICAweDEuNmEwOWU1ZmI0ZGYzNWQ2NzI5ZjQ3MmRhMzQxM2U0MDRwLTEsCisgICAgMHgxLmM0NjNhY3AyLAorICB9LAorICB7IC8vIEVudHJ5IDY3MgorICAgIC0weDEuNmEwOWU2ZDQ5OTg2MTQwZjU1MjI2ZmM1ODY3MjYxMmNwLTEsCisgICAgMHgxLjZhMDllNWZiNGRmMzVkNjcyOWY0NzJkYTM0MTNlNDA0cC0xLAorICAgIC0weDEuYzQ2M2FjcDIsCisgIH0sCisgIHsgLy8gRW50cnkgNjczCisgICAgMHgxLmZmZmZmZmZmZmY5NTM5NzkzNGNhYzFmMjg1MzJkM2QzcC0xLAorICAgIDB4MS40YWE5YzJmMmMxZGVmYjg3MjhmMGQyZGExMjE3YWFlMXAtMjEsCisgICAgMHgxLmY2YTdhMHAyLAorICB9LAorICB7IC8vIEVudHJ5IDY3NAorICAgIC0weDEuZmZmZmZmZmZmZjk1Mzk3OTM0Y2FjMWYyODUzMmQzZDNwLTEsCisgICAgMHgxLjRhYTljMmYyYzFkZWZiODcyOGYwZDJkYTEyMTdhYWUxcC0yMSwKKyAgICAtMHgxLmY2YTdhMHAyLAorICB9LAorICB7IC8vIEVudHJ5IDY3NQorICAgIDB4MS5mZmZmZmZmZmZmZmE4ZTVhYWUyYmI5M2FlNTkwZjk4NHAtMSwKKyAgICAweDEuMmFhNzBiY2IwN2Q2ZDBmMzZiNzc3Y2IzODBhODQ1ZDlwLTIzLAorICAgIDB4MS5mNmE3YTJwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzYKKyAgICAtMHgxLmZmZmZmZmZmZmZmYThlNWFhZTJiYjkzYWU1OTBmOTg0cC0xLAorICAgIDB4MS4yYWE3MGJjYjA3ZDZkMGYzNmI3NzdjYjM4MGE4NDVkOXAtMjMsCisgICAgLTB4MS5mNmE3YTJwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzcKKyAgICAweDEuZmZmZmZmZmZmZmRmZTMzYzI3OGNiNDhhNTllZTNlZjJwLTEsCisgICAgLTB4MS42YWFjN2ExYTdjMGM3YWZjNWZjYjIzMTNhN2VjYTIyOXAtMjIsCisgICAgMHgxLmY2YTdhNHAyLAorICB9LAorICB7IC8vIEVudHJ5IDY3OAorICAgIC0weDEuZmZmZmZmZmZmZmRmZTMzYzI3OGNiNDhhNTllZTNlZjJwLTEsCisgICAgLTB4MS42YWFjN2ExYTdjMGM3YWZjNWZjYjIzMTNhN2VjYTIyOXAtMjIsCisgICAgLTB4MS5mNmE3YTRwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzkKKyAgICAweDEuNmEwYTA0MGVhNWMzMmJhNGFmYmViODZhNjE0YzVkMTZwLTEsCisgICAgLTB4MS42YTA5YzhjMTNmNDhiN2FhZDg1MWY5ZDY0NzRiY2IzMXAtMSwKKyAgICAweDEuMTQ3NWNhcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNjgwCisgICAgLTB4MS42YTBhMDQwZWE1YzMyYmE0YWZiZWI4NmE2MTRjNWQxNnAtMSwKKyAgICAtMHgxLjZhMDljOGMxM2Y0OGI3YWFkODUxZjlkNjQ3NGJjYjMxcC0xLAorICAgIC0weDEuMTQ3NWNhcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNjgxCisgICAgMHgxLjZhMDllZDZlMDg4MjEyYjFlMjYwYTUxMzJkNjk1OWI3cC0xLAorICAgIC0weDEuNmEwOWRmNjFkZWQ0OWQxZWU0ZmNhNGJhNjE0MGQxNzlwLTEsCisgICAgMHgxLjE0NzVjY3AzLAorICB9LAorICB7IC8vIEVudHJ5IDY4MgorICAgIC0weDEuNmEwOWVkNmUwODgyMTJiMWUyNjBhNTEzMmQ2OTU5YjdwLTEsCisgICAgLTB4MS42YTA5ZGY2MWRlZDQ5ZDFlZTRmY2E0YmE2MTQwZDE3OXAtMSwKKyAgICAtMHgxLjE0NzVjY3AzLAorICB9LAorICB7IC8vIEVudHJ5IDY4MworICAgIDB4MS42YTA5ZDZjZDY5ZDZlZmQxYTZmYTJkZDRjNjE3Y2JiZXAtMSwKKyAgICAtMHgxLjZhMDlmNjAyN2NmNjc4YjM4ZmM4OTkyY2Q5OTkwMzAycC0xLAorICAgIDB4MS4xNDc1Y2VwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODQKKyAgICAtMHgxLjZhMDlkNmNkNjlkNmVmZDFhNmZhMmRkNGM2MTdjYmJlcC0xLAorICAgIC0weDEuNmEwOWY2MDI3Y2Y2NzhiMzhmYzg5OTJjZDk5OTAzMDJwLTEsCisgICAgLTB4MS4xNDc1Y2VwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODUKKyAgICAweDEuZjk5OTBlOTFhNjRhZTQ4Njc1Nzg3OGJkZmVlMGY3MDNwLTIwLAorICAgIC0weDEuZmZmZmZmZmZmYzE5NzJjOTAyZWYzMWMzN2NiNTQ4MTdwLTEsCisgICAgMHgxLjJkOTdjNHAzLAorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIC0weDEuZjk5OTBlOTFhNjRhZTQ4Njc1Nzg3OGJkZmVlMGY3MDNwLTIwLAorICAgIC0weDEuZmZmZmZmZmZmYzE5NzJjOTAyZWYzMWMzN2NiNTQ4MTdwLTEsCisgICAgLTB4MS4yZDk3YzRwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODcKKyAgICAweDEuZjMzMjFkMjM0ZWQ4MTI4YWFiYjA0OTlhNDNiNGRlZjJwLTIxLAorICAgIC0weDEuZmZmZmZmZmZmZjBjYTRlNjI2M2QyN2EwMjA0Mzg5ZGZwLTEsCisgICAgMHgxLjJkOTdjNnAzLAorICB9LAorICB7IC8vIEVudHJ5IDY4OAorICAgIC0weDEuZjMzMjFkMjM0ZWQ4MTI4YWFiYjA0OTlhNDNiNGRlZjJwLTIxLAorICAgIC0weDEuZmZmZmZmZmZmZjBjYTRlNjI2M2QyN2EwMjA0Mzg5ZGZwLTEsCisgICAgLTB4MS4yZDk3YzZwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODkKKyAgICAtMHgxLjk5YmM1Yjk2MWIxYWMyOTZkYmUxOTgwZmQyYzg5MGEwcC0yNiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQ3MDM0OThjM2I4Mjg4NTYzOTE1cC0xLAorICAgIDB4MS4yZDk3YzhwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTAKKyAgICAweDEuOTliYzViOTYxYjFhYzI5NmRiZTE5ODBmZDJjODkwYTBwLTI2LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZDcwMzQ5OGMzYjgyODg1NjM5MTVwLTEsCisgICAgLTB4MS4yZDk3YzhwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTEKKyAgICAtMHgxLjZhMDljMTRlODNmOGRiMDgwZDEyMjNmODg3Y2MxMmVjcC0xLAorICAgIC0weDEuNmEwYTBiODE1ZmIzN2IyZDAxNTUxZTA3Y2IzMDA5ZDFwLTEsCisgICAgMHgxLjQ2YjljMHAzLAorICB9LAorICB7IC8vIEVudHJ5IDY5MgorICAgIDB4MS42YTA5YzE0ZTgzZjhkYjA4MGQxMjIzZjg4N2NjMTJlY3AtMSwKKyAgICAtMHgxLjZhMGEwYjgxNWZiMzdiMmQwMTU1MWUwN2NiMzAwOWQxcC0xLAorICAgIC0weDEuNDZiOWMwcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNjkzCisgICAgLTB4MS42YTA5ZDdlZjIzZmJlYzFlZDgxMmU4MDdiZWIwNDkyZnAtMSwKKyAgICAtMHgxLjZhMDlmNGUwYzJlOThkZWI3ODY0MmI2MDMyYTczZDQ2cC0xLAorICAgIDB4MS40NmI5YzJwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTQKKyAgICAweDEuNmEwOWQ3ZWYyM2ZiZWMxZWQ4MTJlODA3YmViMDQ5MmZwLTEsCisgICAgLTB4MS42YTA5ZjRlMGMyZTk4ZGViNzg2NDJiNjAzMmE3M2Q0NnAtMSwKKyAgICAtMHgxLjQ2YjljMnAzLAorICB9LAorICB7IC8vIEVudHJ5IDY5NQorICAgIC0weDEuNmEwOWVlOGZjMjk0ZjM1ZGIzZWZjZTU2NTM2NWFmODlwLTEsCisgICAgLTB4MS42YTA5ZGU0MDI0YjU5NmI1MGViMDZkNTYyZGI4Yzc3N3AtMSwKKyAgICAweDEuNDZiOWM0cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNjk2CisgICAgMHgxLjZhMDllZThmYzI5NGYzNWRiM2VmY2U1NjUzNjVhZjg5cC0xLAorICAgIC0weDEuNmEwOWRlNDAyNGI1OTZiNTBlYjA2ZDU2MmRiOGM3NzdwLTEsCisgICAgLTB4MS40NmI5YzRwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTcKKyAgICAtMHgxLmZmZmZmZmZmZmU0Yzk2YjM5N2Q5NTFjYjIxODYxYzk1cC0xLAorICAgIC0weDEuNGRkZDNiYTllZGNkODk4Yjk5NDZmZGQyMGFmMjJhNjhwLTIwLAorICAgIDB4MS41ZmRiYmNwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTgKKyAgICAweDEuZmZmZmZmZmZmZTRjOTZiMzk3ZDk1MWNiMjE4NjFjOTVwLTEsCisgICAgLTB4MS40ZGRkM2JhOWVkY2Q4OThiOTk0NmZkZDIwYWYyMmE2OHAtMjAsCisgICAgLTB4MS41ZmRiYmNwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTkKKyAgICAtMHgxLmZmZmZmZmZmZmZlODUxMmFlYmI1NmM5ZTc1YjQxOTQxcC0xLAorICAgIC0weDEuMzc3NGVlYTdiOGFiZThmYThjMzgwMTQyYjk3YWY0YjZwLTIyLAorICAgIDB4MS41ZmRiYmVwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDAKKyAgICAweDEuZmZmZmZmZmZmZmU4NTEyYWViYjU2YzllNzViNDE5NDFwLTEsCisgICAgLTB4MS4zNzc0ZWVhN2I4YWJlOGZhOGMzODAxNDJiOTdhZjRiNnAtMjIsCisgICAgLTB4MS41ZmRiYmVwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDEKKyAgICAtMHgxLmZmZmZmZmZmZmY4NDBiYTIzZjkxYzljYjQ5YTEwYjI3cC0xLAorICAgIDB4MS42NDQ1ODhhYzIzOGFlNDkzZmEzMjQzNWJhNTEzMjliZnAtMjEsCisgICAgMHgxLjVmZGJjMHAzLAorICB9LAorICB7IC8vIEVudHJ5IDcwMgorICAgIDB4MS5mZmZmZmZmZmZmODQwYmEyM2Y5MWM5Y2I0OWExMGIyN3AtMSwKKyAgICAweDEuNjQ0NTg4YWMyMzhhZTQ5M2ZhMzI0MzViYTUxMzI5YmZwLTIxLAorICAgIC0weDEuNWZkYmMwcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzAzCisgICAgLTB4MS42YTBhMTJmNDE5N2M5MGEwZWU0YTA5NGI2Mzc3YWEyM3AtMSwKKyAgICAweDEuNmEwOWI5ZGJjODgxYzQ1OGU3NDc5MDhjYWYyYWE1ZTFwLTEsCisgICAgMHgxLjc4ZmRiNnAzLAorICB9LAorICB7IC8vIEVudHJ5IDcwNAorICAgIDB4MS42YTBhMTJmNDE5N2M5MGEwZWU0YTA5NGI2Mzc3YWEyM3AtMSwKKyAgICAweDEuNmEwOWI5ZGJjODgxYzQ1OGU3NDc5MDhjYWYyYWE1ZTFwLTEsCisgICAgLTB4MS43OGZkYjZwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDUKKyAgICAtMHgxLjZhMDlmYzUzN2QyOWNmMTMxZDY3MTA5OTFiZWJhYmVkcC0xLAorICAgIDB4MS42YTA5ZDA3YzY4ZmMwMTBmZmNmZDNiMTlmMWVlNGY0NHAtMSwKKyAgICAweDEuNzhmZGI4cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzA2CisgICAgMHgxLjZhMDlmYzUzN2QyOWNmMTMxZDY3MTA5OTFiZWJhYmVkcC0xLAorICAgIDB4MS42YTA5ZDA3YzY4ZmMwMTBmZmNmZDNiMTlmMWVlNGY0NHAtMSwKKyAgICAtMHgxLjc4ZmRiOHAzLAorICB9LAorICB7IC8vIEVudHJ5IDcwNworICAgIC0weDEuNmEwOWU1YjJkZjZkMDM4OGY5MDcwYzQzNDBmM2U2NjlwLTEsCisgICAgMHgxLjZhMDllNzFkMDgwYzMzZjY5NjRhMDdkMWEwYmY1OTgwcC0xLAorICAgIDB4MS43OGZkYmFwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDgKKyAgICAweDEuNmEwOWU1YjJkZjZkMDM4OGY5MDcwYzQzNDBmM2U2NjlwLTEsCisgICAgMHgxLjZhMDllNzFkMDgwYzMzZjY5NjRhMDdkMWEwYmY1OTgwcC0xLAorICAgIC0weDEuNzhmZGJhcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzA5CisgICAgMHgxLjZhMDljOTA5YWRkNGRiZjMyMjUzYTM5ZDVjMzA2MzA4cC0xLAorICAgIDB4MS42YTBhMDNjNjM3NDJkNjI4MDJkMTYzZDVjZmIzYjdkNXAtMSwKKyAgICAweDEuYWI0MWFlcDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzEwCisgICAgLTB4MS42YTA5YzkwOWFkZDRkYmYzMjI1M2EzOWQ1YzMwNjMwOHAtMSwKKyAgICAweDEuNmEwYTAzYzYzNzQyZDYyODAyZDE2M2Q1Y2ZiM2I3ZDVwLTEsCisgICAgLTB4MS5hYjQxYWVwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTEKKyAgICAweDEuNmEwOWRmYWE0ZDVjM2E3ZjA1NmYzZTYxYTM2NWIyOWVwLTEsCisgICAgMHgxLjZhMDllZDI1OTlmZDM2NGM5NzY2MGNjYTY2NTJjMGEzcC0xLAorICAgIDB4MS5hYjQxYjBwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTIKKyAgICAtMHgxLjZhMDlkZmFhNGQ1YzNhN2YwNTZmM2U2MWEzNjViMjllcC0xLAorICAgIDB4MS42YTA5ZWQyNTk5ZmQzNjRjOTc2NjBjY2E2NjUyYzBhM3AtMSwKKyAgICAtMHgxLmFiNDFiMHAzLAorICB9LAorICB7IC8vIEVudHJ5IDcxMworICAgIDB4MS42YTA5ZjY0YWViNzk4ZjJiM2UzZDliMTZlOGUzYzQxMnAtMSwKKyAgICAweDEuNmEwOWQ2ODRmYjRkOGM4NDA2NjBkNmI0MmVjODMwMzlwLTEsCisgICAgMHgxLmFiNDFiMnAzLAorICB9LAorICB7IC8vIEVudHJ5IDcxNAorICAgIC0weDEuNmEwOWY2NGFlYjc5OGYyYjNlM2Q5YjE2ZThlM2M0MTJwLTEsCisgICAgMHgxLjZhMDlkNjg0ZmI0ZDhjODQwNjYwZDZiNDJlYzgzMDM5cC0xLAorICAgIC0weDEuYWI0MWIycDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzE1CisgICAgMHgxLmZmZmZmZmZmZmMyNjBkNmZmYjhmNGNkOGFiM2ZkMDIwcC0xLAorICAgIDB4MS5mNjY1OTVkYTdhMWFlMzA4ZDI2YTE4ZGU0YzJlZDNhM3AtMjAsCisgICAgMHgxLmM0NjNhOHAzLAorICB9LAorICB7IC8vIEVudHJ5IDcxNgorICAgIC0weDEuZmZmZmZmZmZmYzI2MGQ2ZmZiOGY0Y2Q4YWIzZmQwMjBwLTEsCisgICAgMHgxLmY2NjU5NWRhN2ExYWUzMDhkMjZhMThkZTRjMmVkM2EzcC0yMCwKKyAgICAtMHgxLmM0NjNhOHAzLAorICB9LAorICB7IC8vIEVudHJ5IDcxNworICAgIDB4MS5mZmZmZmZmZmZmMTJkODliYjA4NGRkNzYyODQ4YjNkNnAtMSwKKyAgICAweDEuZWNjYjJiYjRmNjZlYTg2MTI0MWZhMDljYTlkOGEwMzRwLTIxLAorICAgIDB4MS5jNDYzYWFwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTgKKyAgICAtMHgxLmZmZmZmZmZmZmYxMmQ4OWJiMDg0ZGQ3NjI4NDhiM2Q2cC0xLAorICAgIDB4MS5lY2NiMmJiNGY2NmVhODYxMjQxZmEwOWNhOWQ4YTAzNHAtMjEsCisgICAgLTB4MS5jNDYzYWFwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTkKKyAgICAweDEuZmZmZmZmZmZmZmZmYTNjNzY1N2I4NWU1YjQ0YmJkNDRwLTEsCisgICAgLTB4MS4zMzRkNDRiMDk0NTQwN2IxMThiMzYxYWI3ODE3MWY2N3AtMjUsCisgICAgMHgxLmM0NjNhY3AzLAorICB9LAorICB7IC8vIEVudHJ5IDcyMAorICAgIC0weDEuZmZmZmZmZmZmZmZmYTNjNzY1N2I4NWU1YjQ0YmJkNDRwLTEsCisgICAgLTB4MS4zMzRkNDRiMDk0NTQwN2IxMThiMzYxYWI3ODE3MWY2N3AtMjUsCisgICAgLTB4MS5jNDYzYWNwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjEKKyAgICAweDEuNmEwYTBiMzhmMTM0YTMyOTVhMGIzODZlNDJmMWNhN2FwLTEsCisgICAgLTB4MS42YTA5YzE5NmYyODY3Y2M5MTZhZTJiN2U2YzlkOTljMXAtMSwKKyAgICAweDEuZGQ4NWE0cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzIyCisgICAgLTB4MS42YTBhMGIzOGYxMzRhMzI5NWEwYjM4NmU0MmYxY2E3YXAtMSwKKyAgICAtMHgxLjZhMDljMTk2ZjI4NjdjYzkxNmFlMmI3ZTZjOWQ5OWMxcC0xLAorICAgIC0weDEuZGQ4NWE0cDMsCisgIH0sCisgIHsgLy8gRW50cnkgNzIzCisgICAgMHgxLjZhMDlmNDk4NTQ2NjJlZmYxYjM1NzU1YTEyOTA0NGE3cC0xLAorICAgIC0weDEuNmEwOWQ4Mzc5Mjg1MDZmN2NmZjc2ZjA5NGI0ZTAzNzdwLTEsCisgICAgMHgxLmRkODVhNnAzLAorICB9LAorICB7IC8vIEVudHJ5IDcyNAorICAgIC0weDEuNmEwOWY0OTg1NDY2MmVmZjFiMzU3NTVhMTI5MDQ0YTdwLTEsCisgICAgLTB4MS42YTA5ZDgzNzkyODUwNmY3Y2ZmNzZmMDk0YjRlMDM3N3AtMSwKKyAgICAtMHgxLmRkODVhNnAzLAorICB9LAorICB7IC8vIEVudHJ5IDcyNQorICAgIDB4MS42YTA5ZGRmN2I2MmRiMGUwNDQwYjZhNDI2MjIwM2IxMXAtMSwKKyAgICAtMHgxLjZhMDllZWQ4MzExOTg3NGU1MWFlNGJiOGFlZGRjMWYycC0xLAorICAgIDB4MS5kZDg1YThwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjYKKyAgICAtMHgxLjZhMDlkZGY3YjYyZGIwZTA0NDBiNmE0MjYyMjAzYjExcC0xLAorICAgIC0weDEuNmEwOWVlZDgzMTE5ODc0ZTUxYWU0YmI4YWVkZGMxZjJwLTEsCisgICAgLTB4MS5kZDg1YThwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjcKKyAgICAweDEuNGFhOWMyZjJjMTlhMDYyYjE4YTAxN2JjZDU0MjRmZWFwLTIwLAorICAgIC0weDEuZmZmZmZmZmZmZTU0ZTVlNGQzMmIzNDUzMTY2MDYwYjNwLTEsCisgICAgMHgxLmY2YTdhMHAzLAorICB9LAorICB7IC8vIEVudHJ5IDcyOAorICAgIC0weDEuNGFhOWMyZjJjMTlhMDYyYjE4YTAxN2JjZDU0MjRmZWFwLTIwLAorICAgIC0weDEuZmZmZmZmZmZmZTU0ZTVlNGQzMmIzNDUzMTY2MDYwYjNwLTEsCisgICAgLTB4MS5mNmE3YTBwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjkKKyAgICAweDEuMmFhNzBiY2IwN2QzYTQwNzgxNTEwZDIxMzY1MmU0M2FwLTIyLAorICAgIC0weDEuZmZmZmZmZmZmZmVhMzk2YWI4YWVlNTA5MzkyYzc1NWRwLTEsCisgICAgMHgxLmY2YTdhMnAzLAorICB9LAorICB7IC8vIEVudHJ5IDczMAorICAgIC0weDEuMmFhNzBiY2IwN2QzYTQwNzgxNTEwZDIxMzY1MmU0M2FwLTIyLAorICAgIC0weDEuZmZmZmZmZmZmZmVhMzk2YWI4YWVlNTA5MzkyYzc1NWRwLTEsCisgICAgLTB4MS5mNmE3YTJwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzEKKyAgICAtMHgxLjZhYWM3YTFhN2JmNWJiZDQ5NTcyZmZiOGQ3NzQ5OTIycC0yMSwKKyAgICAtMHgxLmZmZmZmZmZmZmY3ZjhjZjA5ZTMyZDYzMDliZWE4NWNhcC0xLAorICAgIDB4MS5mNmE3YTRwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzIKKyAgICAweDEuNmFhYzdhMWE3YmY1YmJkNDk1NzJmZmI4ZDc3NDk5MjJwLTIxLAorICAgIC0weDEuZmZmZmZmZmZmZjdmOGNmMDllMzJkNjMwOWJlYTg1Y2FwLTEsCisgICAgLTB4MS5mNmE3YTRwMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzMKKyAgICAtMHgxLjZhMDlhMzgzOTUzMTI0MDk2ODk4MzQwZjkxNjhiOWQ1cC0xLAorICAgIC0weDEuNmEwYTI5NGM0NWVjNzQ3YTQ3NzExYTQ5OTRkMmM1ZTRwLTEsCisgICAgMHgxLjA3ZTRjY3A0LAorICB9LAorICB7IC8vIEVudHJ5IDczNAorICAgIDB4MS42YTA5YTM4Mzk1MzEyNDA5Njg5ODM0MGY5MTY4YjlkNXAtMSwKKyAgICAtMHgxLjZhMGEyOTRjNDVlYzc0N2E0NzcxMWE0OTk0ZDJjNWU0cC0xLAorICAgIC0weDEuMDdlNGNjcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzM1CisgICAgLTB4MS42YTA5ZDBjNGQ3ODY5OTYxYzQ3YTliMGI5NjhjYzkxMHAtMSwKKyAgICAtMHgxLjZhMDlmYzBiMGVhN2VkOWZiNWRkNTBhMGM4YWYxOWNicC0xLAorICAgIDB4MS4wN2U0Y2VwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzYKKyAgICAweDEuNmEwOWQwYzRkNzg2OTk2MWM0N2E5YjBiOTY4Y2M5MTBwLTEsCisgICAgLTB4MS42YTA5ZmMwYjBlYTdlZDlmYjVkZDUwYTBjOGFmMTljYnAtMSwKKyAgICAtMHgxLjA3ZTRjZXA0LAorICB9LAorICB7IC8vIEVudHJ5IDczNworICAgIC0weDEuNmEwOWZlMDYxNDMzZTc3NzBkMDBjYTU5ZDVhNTYyNTFwLTEsCisgICAgLTB4MS42YTA5Y2VjOWQxYmIzZWQ0ZjgxMGM5Zjk3ODZkNjEwZXAtMSwKKyAgICAweDEuMDdlNGQwcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzM4CisgICAgMHgxLjZhMDlmZTA2MTQzM2U3NzcwZDAwY2E1OWQ1YTU2MjUxcC0xLAorICAgIC0weDEuNmEwOWNlYzlkMWJiM2VkNGY4MTBjOWY5Nzg2ZDYxMGVwLTEsCisgICAgLTB4MS4wN2U0ZDBwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzkKKyAgICAtMHgxLmZmZmZmZmZmZjkyMTlkYWU1ZmVkYTFiNTM5MzM1ODAzcC0xLAorICAgIC0weDEuNGY3NmY4MDU4MmM3M2ZjMGNjMDkwM2VkOGNhN2Q2YjNwLTE5LAorICAgIDB4MS4xNDc1Y2FwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDAKKyAgICAweDEuZmZmZmZmZmZmOTIxOWRhZTVmZWRhMWI1MzkzMzU4MDNwLTEsCisgICAgLTB4MS40Zjc2ZjgwNTgyYzczZmMwY2MwOTAzZWQ4Y2E3ZDZiM3AtMTksCisgICAgLTB4MS4xNDc1Y2FwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDEKKyAgICAtMHgxLmZmZmZmZmZmZmY5ZDU1NmU4YzBiZjBhODBkNjEwODA4cC0xLAorICAgIC0weDEuM2RkYmUwMTYxMTA4YjY5MGVlZDcwYTdmNTlkZTc1MWNwLTIxLAorICAgIDB4MS4xNDc1Y2NwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDIKKyAgICAweDEuZmZmZmZmZmZmZjlkNTU2ZThjMGJmMGE4MGQ2MTA4MDhwLTEsCisgICAgLTB4MS4zZGRiZTAxNjExMDhiNjkwZWVkNzBhN2Y1OWRlNzUxY3AtMjEsCisgICAgLTB4MS4xNDc1Y2NwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDMKKyAgICAtMHgxLmZmZmZmZmZmZmUxOTBkMmViODJlNzRlZmQyMDkzMjE1cC0xLAorICAgIDB4MS42MTEyMGZmNGY3MDE4MGIwZDU1YzNhZTBmNjk1ODVjYXAtMjAsCisgICAgMHgxLjE0NzVjZXA0LAorICB9LAorICB7IC8vIEVudHJ5IDc0NAorICAgIDB4MS5mZmZmZmZmZmZlMTkwZDJlYjgyZTc0ZWZkMjA5MzIxNXAtMSwKKyAgICAweDEuNjExMjBmZjRmNzAxODBiMGQ1NWMzYWUwZjY5NTg1Y2FwLTIwLAorICAgIC0weDEuMTQ3NWNlcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzQ1CisgICAgLTB4MS42YTBhMWExZTY0YTI4ZWVlMjM4ZGM4NTI4NDZhYWNkNXAtMSwKKyAgICAweDEuNmEwOWIyYjE3Yjc0MTA1MGE2Y2ZkNjRiODFjNzY0ODVwLTEsCisgICAgMHgxLjIxMDZjOHA0LAorICB9LAorICB7IC8vIEVudHJ5IDc0NgorICAgIDB4MS42YTBhMWExZTY0YTI4ZWVlMjM4ZGM4NTI4NDZhYWNkNXAtMSwKKyAgICAweDEuNmEwOWIyYjE3Yjc0MTA1MGE2Y2ZkNjRiODFjNzY0ODVwLTEsCisgICAgLTB4MS4yMTA2YzhwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDcKKyAgICAtMHgxLjZhMDllY2RkMmI3ODRiNjk5MDM0ZWU4MTAyNjcwZTI3cC0xLAorICAgIDB4MS42YTA5ZGZmMmJiZTNjOTYxNmEzNTc2YzU1ZTc3MzIwN3AtMSwKKyAgICAweDEuMjEwNmNhcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzQ4CisgICAgMHgxLjZhMDllY2RkMmI3ODRiNjk5MDM0ZWU4MTAyNjcwZTI3cC0xLAorICAgIDB4MS42YTA5ZGZmMmJiZTNjOTYxNmEzNTc2YzU1ZTc3MzIwN3AtMSwKKyAgICAtMHgxLjIxMDZjYXA0LAorICB9LAorICB7IC8vIEVudHJ5IDc0OQorICAgIC0weDEuNmEwOWJmOWJlY2E1ZTAzMTg4MzAxNjM5YzA5ZWQ1NzRwLTEsCisgICAgMHgxLjZhMGEwZDMzZjZhYjVhZjI2MmFkNmFkMThhYzFjZTlmcC0xLAorICAgIDB4MS4yMTA2Y2NwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTAKKyAgICAweDEuNmEwOWJmOWJlY2E1ZTAzMTg4MzAxNjM5YzA5ZWQ1NzRwLTEsCisgICAgMHgxLjZhMGEwZDMzZjZhYjVhZjI2MmFkNmFkMThhYzFjZTlmcC0xLAorICAgIC0weDEuMjEwNmNjcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzUxCisgICAgLTB4MS5mOTk5MGU5MWEyNzBkM2JjMWMwMmY0ZjY5ZjQ4ZTY3NXAtMTksCisgICAgMHgxLmZmZmZmZmZmZjA2NWNiMjQwYmNiZmRmZjQ5NzdkZGY4cC0xLAorICAgIDB4MS4yZDk3YzRwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTIKKyAgICAweDEuZjk5OTBlOTFhMjcwZDNiYzFjMDJmNGY2OWY0OGU2NzVwLTE5LAorICAgIDB4MS5mZmZmZmZmZmYwNjVjYjI0MGJjYmZkZmY0OTc3ZGRmOHAtMSwKKyAgICAtMHgxLjJkOTdjNHA0LAorICB9LAorICB7IC8vIEVudHJ5IDc1MworICAgIC0weDEuZjMzMjFkMjM0ZGVhY2Q2ZjNhZmQ3NTAzOTY4NTAxMmZwLTIwLAorICAgIDB4MS5mZmZmZmZmZmZjMzI5Mzk4OThmNTg1ZDY5NDhjZjJkMXAtMSwKKyAgICAweDEuMmQ5N2M2cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzU0CisgICAgMHgxLmYzMzIxZDIzNGRlYWNkNmYzYWZkNzUwMzk2ODUwMTJmcC0yMCwKKyAgICAweDEuZmZmZmZmZmZmYzMyOTM5ODk4ZjU4NWQ2OTQ4Y2YyZDFwLTEsCisgICAgLTB4MS4yZDk3YzZwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTUKKyAgICAweDEuOTliYzViOTYxYjFhYTFjOWU4MDIzMDc0ZjM0MDZmZDlwLTI1LAorICAgIDB4MS5mZmZmZmZmZmZmZmY1YzBkMjYzMGVlMGEyN2U4ZDZkMXAtMSwKKyAgICAweDEuMmQ5N2M4cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzU2CisgICAgLTB4MS45OWJjNWI5NjFiMWFhMWM5ZTgwMjMwNzRmMzQwNmZkOXAtMjUsCisgICAgMHgxLmZmZmZmZmZmZmZmZjVjMGQyNjMwZWUwYTI3ZThkNmQxcC0xLAorICAgIC0weDEuMmQ5N2M4cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzU3CisgICAgMHgxLjZhMDk5NDllMWNlMWVjNTAxYWZjYjM1ZDczMWJmNjJjcC0xLAorICAgIDB4MS42YTBhMzgzMWI4MWQ5NDk2NmFkOGRmNGQzNzg4MjRmOXAtMSwKKyAgICAweDEuM2EyOGMycDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzU4CisgICAgLTB4MS42YTA5OTQ5ZTFjZTFlYzUwMWFmY2IzNWQ3MzFiZjYyY3AtMSwKKyAgICAweDEuNmEwYTM4MzFiODFkOTQ5NjZhZDhkZjRkMzc4ODI0ZjlwLTEsCisgICAgLTB4MS4zYTI4YzJwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTkKKyAgICAweDEuNmEwOWMxZGY2MTE0MTAwYzY1ZDFmZjZjNTU3NTVlNzJwLTEsCisgICAgMHgxLjZhMGEwYWYwODJiNWJjYTdmNTU2OWY0ZGE2ODgzZjY0cC0xLAorICAgIDB4MS4zYTI4YzRwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjAKKyAgICAtMHgxLjZhMDljMWRmNjExNDEwMGM2NWQxZmY2YzU1NzU1ZTcycC0xLAorICAgIDB4MS42YTBhMGFmMDgyYjViY2E3ZjU1NjlmNGRhNjg4M2Y2NHAtMSwKKyAgICAtMHgxLjNhMjhjNHA0LAorICB9LAorICB7IC8vIEVudHJ5IDc2MQorICAgIDB4MS42YTA5ZWYyMDlmOWUwY2MxMzMyNGRkZjJiMzYxNTUzZnAtMSwKKyAgICAweDEuNmEwOWRkYWY0N2E1YmM4ZGJkY2I2YjEzODQ0OTAyYWVwLTEsCisgICAgMHgxLjNhMjhjNnA0LAorICB9LAorICB7IC8vIEVudHJ5IDc2MgorICAgIC0weDEuNmEwOWVmMjA5ZjllMGNjMTMzMjRkZGYyYjM2MTU1M2ZwLTEsCisgICAgMHgxLjZhMDlkZGFmNDdhNWJjOGRiZGNiNmIxMzg0NDkwMmFlcC0xLAorICAgIC0weDEuM2EyOGM2cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzYzCisgICAgMHgxLmZmZmZmZmZmZjUzZjQ3NmVjNGY1OWYyNmM0YmNkZmEwcC0xLAorICAgIDB4MS5hM2JiMjUxZGM3ZWZhYTFlMjEzN2JiMzdlZDY2NTRkYnAtMTksCisgICAgMHgxLjQ2YjljMHA0LAorICB9LAorICB7IC8vIEVudHJ5IDc2NAorICAgIC0weDEuZmZmZmZmZmZmNTNmNDc2ZWM0ZjU5ZjI2YzRiY2RmYTBwLTEsCisgICAgMHgxLmEzYmIyNTFkYzdlZmFhMWUyMTM3YmIzN2VkNjY1NGRicC0xOSwKKyAgICAtMHgxLjQ2YjljMHA0LAorICB9LAorICB7IC8vIEVudHJ5IDc2NQorICAgIDB4MS5mZmZmZmZmZmZlNWQyMDk3YjM0MzM0YWQ2NzlkZDdhNHAtMSwKKyAgICAweDEuNDc3NjRhM2I5NTY2NzU4ZTViYWEyZTMwMjlmMWFiYmFwLTIwLAorICAgIDB4MS40NmI5YzJwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjYKKyAgICAtMHgxLmZmZmZmZmZmZmU1ZDIwOTdiMzQzMzRhZDY3OWRkN2E0cC0xLAorICAgIDB4MS40Nzc2NGEzYjk1NjY3NThlNWJhYTJlMzAyOWYxYWJiYXAtMjAsCisgICAgLTB4MS40NmI5YzJwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjcKKyAgICAweDEuZmZmZmZmZmZmZjdhZjljMGExOWEwMDVjNTY1YzZhZjdwLTEsCisgICAgLTB4MS43MTEzNmI4OGQ0NjA4NDkwZjJkZGZlOTAxMDExMTJhZXAtMjEsCisgICAgMHgxLjQ2YjljNHA0LAorICB9LAorICB7IC8vIEVudHJ5IDc2OAorICAgIC0weDEuZmZmZmZmZmZmZjdhZjljMGExOWEwMDVjNTY1YzZhZjdwLTEsCisgICAgLTB4MS43MTEzNmI4OGQ0NjA4NDkwZjJkZGZlOTAxMDExMTJhZXAtMjEsCisgICAgLTB4MS40NmI5YzRwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjkKKyAgICAweDEuNmEwYTI5MDNkNzczOTI1YjA1MmZiMDA2YWM2NzBjMjNwLTEsCisgICAgLTB4MS42YTA5YTNjYzAzYzRiYmFkMjIyMmRmZTViZTMxNzU2NXAtMSwKKyAgICAweDEuNTM0YWJlcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzcwCisgICAgLTB4MS42YTBhMjkwM2Q3NzM5MjViMDUyZmIwMDZhYzY3MGMyM3AtMSwKKyAgICAtMHgxLjZhMDlhM2NjMDNjNGJiYWQyMjIyZGZlNWJlMzE3NTY1cC0xLAorICAgIC0weDEuNTM0YWJlcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzcxCisgICAgMHgxLjZhMDlmYmMyYTAyNWZkYWU5MTg0NjZmYTAwMTQyMTQzcC0xLAorICAgIC0weDEuNmEwOWQxMGQ0NjExMjMzNWQwZTQzZDczODM4N2RlOGNwLTEsCisgICAgMHgxLjUzNGFjMHA0LAorICB9LAorICB7IC8vIEVudHJ5IDc3MgorICAgIC0weDEuNmEwOWZiYzJhMDI1ZmRhZTkxODQ2NmZhMDAxNDIxNDNwLTEsCisgICAgLTB4MS42YTA5ZDEwZDQ2MTEyMzM1ZDBlNDNkNzM4Mzg3ZGU4Y3AtMSwKKyAgICAtMHgxLjUzNGFjMHA0LAorICB9LAorICB7IC8vIEVudHJ5IDc3MworICAgIDB4MS42YTA5Y2U4MTYzMzA0MTEzMTM1YTY4YWU5M2QzZmEwZXAtMSwKKyAgICAtMHgxLjZhMDlmZTRlODJiNTYzN2E0YThmMzkyYzMzMDFiZTk0cC0xLAorICAgIDB4MS41MzRhYzJwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzQKKyAgICAtMHgxLjZhMDljZTgxNjMzMDQxMTMxMzVhNjhhZTkzZDNmYTBlcC0xLAorICAgIC0weDEuNmEwOWZlNGU4MmI1NjM3YTRhOGYzOTJjMzMwMWJlOTRwLTEsCisgICAgLTB4MS41MzRhYzJwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzUKKyAgICAweDEuNGRkZDNiYTllY2IxOWQ2YmI2ZWExNjExMjBlNDQ3YjlwLTE5LAorICAgIC0weDEuZmZmZmZmZmZmOTMyNWFjZTVmNjgyYmJiOGIxMjJhMDlwLTEsCisgICAgMHgxLjVmZGJiY3A0LAorICB9LAorICB7IC8vIEVudHJ5IDc3NgorICAgIC0weDEuNGRkZDNiYTllY2IxOWQ2YmI2ZWExNjExMjBlNDQ3YjlwLTE5LAorICAgIC0weDEuZmZmZmZmZmZmOTMyNWFjZTVmNjgyYmJiOGIxMjJhMDlwLTEsCisgICAgLTB4MS41ZmRiYmNwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzcKKyAgICAweDEuMzc3NGVlYTdiODlkODBkZjc4MTZmZTIwOGVjNjlmYzBwLTIxLAorICAgIC0weDEuZmZmZmZmZmZmZmExNDRhYmFlZDViNGFhYjg4MDYzNWRwLTEsCisgICAgMHgxLjVmZGJiZXA0LAorICB9LAorICB7IC8vIEVudHJ5IDc3OAorICAgIC0weDEuMzc3NGVlYTdiODlkODBkZjc4MTZmZTIwOGVjNjlmYzBwLTIxLAorICAgIC0weDEuZmZmZmZmZmZmZmExNDRhYmFlZDViNGFhYjg4MDYzNWRwLTEsCisgICAgLTB4MS41ZmRiYmVwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzkKKyAgICAtMHgxLjY0NDU4OGFjMjMzNGEzZDU0NTJkOTk2MDI4MmNmODBkcC0yMCwKKyAgICAtMHgxLmZmZmZmZmZmZmUxMDJlODhmZTQ3NjMzMWUxZGRlZmFmcC0xLAorICAgIDB4MS41ZmRiYzBwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODAKKyAgICAweDEuNjQ0NTg4YWMyMzM0YTNkNTQ1MmQ5OTYwMjgyY2Y4MGRwLTIwLAorICAgIC0weDEuZmZmZmZmZmZmZTEwMmU4OGZlNDc2MzMxZTFkZGVmYWZwLTEsCisgICAgLTB4MS41ZmRiYzBwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODEKKyAgICAtMHgxLjZhMDliMmY5ZWEwNDllODU1ZTM1Y2E5Y2U3ZTBkODlhcC0xLAorICAgIC0weDEuNmEwYTE5ZDVmNjI2YTM1ZWUxMTJhMzQ2MzhlMDc4MDhwLTEsCisgICAgMHgxLjZjNmNiYXA0LAorICB9LAorICB7IC8vIEVudHJ5IDc4MgorICAgIDB4MS42YTA5YjJmOWVhMDQ5ZTg1NWUzNWNhOWNlN2UwZDg5YXAtMSwKKyAgICAtMHgxLjZhMGExOWQ1ZjYyNmEzNWVlMTEyYTM0NjM4ZTA3ODA4cC0xLAorICAgIC0weDEuNmM2Y2JhcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzgzCisgICAgLTB4MS42YTA5ZTAzYjJhNmI0OWM2MTM0YzY3YjQyYmFlZTY2OHAtMSwKKyAgICAtMHgxLjZhMDllYzk0YmNmMzUyMDhjY2QwMzA2ODRkNWRkZDljcC0xLAorICAgIDB4MS42YzZjYmNwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODQKKyAgICAweDEuNmEwOWUwM2IyYTZiNDljNjEzNGM2N2I0MmJhZWU2NjhwLTEsCisgICAgLTB4MS42YTA5ZWM5NGJjZjM1MjA4Y2NkMDMwNjg0ZDVkZGQ5Y3AtMSwKKyAgICAtMHgxLjZjNmNiY3A0LAorICB9LAorICB7IC8vIEVudHJ5IDc4NQorICAgIC0weDEuNmEwYTBkN2M2NTI5Y2Q4NWRiYmIzYTVjMmNkM2ZhZTVwLTEsCisgICAgLTB4MS42YTA5YmY1MzdlMTdkOTAwNjU5YmQyZmEyNGMzYThjOHAtMSwKKyAgICAweDEuNmM2Y2JlcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzg2CisgICAgMHgxLjZhMGEwZDdjNjUyOWNkODVkYmJiM2E1YzJjZDNmYWU1cC0xLAorICAgIC0weDEuNmEwOWJmNTM3ZTE3ZDkwMDY1OWJkMmZhMjRjM2E4YzhwLTEsCisgICAgLTB4MS42YzZjYmVwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODcKKyAgICAtMHgxLmZmZmZmZmZmZjA3ZjBhYjEyYWE4ZjQxZjI5YzE1MzkycC0xLAorICAgIC0weDEuZjdmZjUyMzYwYzYyMmIzZjk0ZDljNzI1MGJmYWQ4ZDRwLTE5LAorICAgIDB4MS43OGZkYjZwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODgKKyAgICAweDEuZmZmZmZmZmZmMDdmMGFiMTJhYThmNDFmMjljMTUzOTJwLTEsCisgICAgLTB4MS5mN2ZmNTIzNjBjNjIyYjNmOTRkOWM3MjUwYmZhZDhkNHAtMTksCisgICAgLTB4MS43OGZkYjZwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODkKKyAgICAtMHgxLmZmZmZmZmZmZmMzZjA1NDJkYjIxZGNiY2I4NDdkYWMzcC0xLAorICAgIC0weDEuZWZmZWE0NmMyMWJhYTNkYTdjMjY2Yzk1M2EwMTM1OThwLTIwLAorICAgIDB4MS43OGZkYjhwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTAKKyAgICAweDEuZmZmZmZmZmZmYzNmMDU0MmRiMjFkY2JjYjg0N2RhYzNwLTEsCisgICAgLTB4MS5lZmZlYTQ2YzIxYmFhM2RhN2MyNjZjOTUzYTAxMzU5OHAtMjAsCisgICAgLTB4MS43OGZkYjhwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZWZmZDQ4YmFjNzNlZmU2MGM3ZmNmcC0xLAorICAgIDB4MS4wMDE1YjkzZGQwZjA5NWJlMWViMGE1Yjg3ZmU1ZTMzZXAtMjQsCisgICAgMHgxLjc4ZmRiYXA0LAorICB9LAorICB7IC8vIEVudHJ5IDc5MgorICAgIDB4MS5mZmZmZmZmZmZmZmVmZmQ0OGJhYzczZWZlNjBjN2ZjZnAtMSwKKyAgICAweDEuMDAxNWI5M2RkMGYwOTViZTFlYjBhNWI4N2ZlNWUzM2VwLTI0LAorICAgIC0weDEuNzhmZGJhcDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzkzCisgICAgLTB4MS42YTBhMzdlOTQ5YTdhZDY5OGEzMjIzNGM3M2U1YWZiYXAtMSwKKyAgICAweDEuNmEwOTk0ZTY4Yjc4N2VlNGZkNjgzMGIyODgyMjU3NDVwLTEsCisgICAgMHgxLjg1OGViNHA0LAorICB9LAorICB7IC8vIEVudHJ5IDc5NAorICAgIDB4MS42YTBhMzdlOTQ5YTdhZDY5OGEzMjIzNGM3M2U1YWZiYXAtMSwKKyAgICAweDEuNmEwOTk0ZTY4Yjc4N2VlNGZkNjgzMGIyODgyMjU3NDVwLTEsCisgICAgLTB4MS44NThlYjRwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTUKKyAgICAtMHgxLjZhMGEwYWE4MTQzNmM3YThkMzNhMzhkNzA0MDMwZDE0cC0xLAorICAgIDB4MS42YTA5YzIyN2NmYTE5NGQxZmE3YWI5OTA5ZGU1MDgzY3AtMSwKKyAgICAweDEuODU4ZWI2cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzk2CisgICAgMHgxLjZhMGEwYWE4MTQzNmM3YThkMzNhMzhkNzA0MDMwZDE0cC0xLAorICAgIDB4MS42YTA5YzIyN2NmYTE5NGQxZmE3YWI5OTA5ZGU1MDgzY3AtMSwKKyAgICAtMHgxLjg1OGViNnA0LAorICB9LAorICB7IC8vIEVudHJ5IDc5NworICAgIC0weDEuNmEwOWRkNjZkOTFkYjliZDdiZjM1NWZhZmYwOGYxOTRwLTEsCisgICAgMHgxLjZhMDllZjY5MGUyMjgzYjY1ODUwOWVkMzE5NDgzODM5cC0xLAorICAgIDB4MS44NThlYjhwNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTgKKyAgICAweDEuNmEwOWRkNjZkOTFkYjliZDdiZjM1NWZhZmYwOGYxOTRwLTEsCisgICAgMHgxLjZhMDllZjY5MGUyMjgzYjY1ODUwOWVkMzE5NDgzODM5cC0xLAorICAgIC0weDEuODU4ZWI4cDQsCisgIH0sCisgIHsgLy8gRW50cnkgNzk5CisgICAgMHgxLmMwNDhiMzhhOGJiZjU5ZjQxNGZlYzcwNzkyMDk5MjZlcC0zLAorICAgIC0weDEuZjM5NTdiYWQ3MGUwNzQxZjFkM2Q2NzUxMjQ2Y2UyMWFwLTEsCisgICAgMHgxLmZmZmZmZXA2MiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDAKKyAgICAtMHgxLmMwNDhiMzhhOGJiZjU5ZjQxNGZlYzcwNzkyMDk5MjZlcC0zLAorICAgIC0weDEuZjM5NTdiYWQ3MGUwNzQxZjFkM2Q2NzUxMjQ2Y2UyMWFwLTEsCisgICAgLTB4MS5mZmZmZmVwNjIsCisgIH0sCisgIHsgLy8gRW50cnkgODAxCisgICAgMHgxLmZmZjZkZmQ0MmRjNTQ0MzBiYzA1NzZiMDBhODhiZDk0cC0xLAorICAgIDB4MS44MmFhMzc1YjNjMzNlNzA2NjM3MzFiYWI0YmViNmVkM3AtNywKKyAgICAweDEucDYzLAorICB9LAorICB7IC8vIEVudHJ5IDgwMgorICAgIC0weDEuZmZmNmRmZDQyZGM1NDQzMGJjMDU3NmIwMGE4OGJkOTRwLTEsCisgICAgMHgxLjgyYWEzNzViM2MzM2U3MDY2MzczMWJhYjRiZWI2ZWQzcC03LAorICAgIC0weDEucDYzLAorICB9LAorICB7IC8vIEVudHJ5IDgwMworICAgIC0weDEuZDY2MzdkMDcwMzQ3ZWU5NGU4MzA0NDVlNzY0ODY3MjdwLTEsCisgICAgMHgxLjk0NWU2YzY5YTU4MGZiN2JiMjdkMDJjMGZlMGY4YTcxcC0yLAorICAgIDB4MS4wMDAwMDJwNjMsCisgIH0sCisgIHsgLy8gRW50cnkgODA0CisgICAgMHgxLmQ2NjM3ZDA3MDM0N2VlOTRlODMwNDQ1ZTc2NDg2NzI3cC0xLAorICAgIDB4MS45NDVlNmM2OWE1ODBmYjdiYjI3ZDAyYzBmZTBmOGE3MXAtMiwKKyAgICAtMHgxLjAwMDAwMnA2MywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDUKKyAgICAtMHgxLjBlNTI4MzY2MWRmMGNhMGY1NWFiNjE2N2UxNDUxNGExcC0xLAorICAgIC0weDEuYjJkMjU1ZjJiZDA0MjNlMjllMmE1NDg3MjhmMDM0YWJwLTEsCisgICAgMHgxLmZmZmZmZXAyNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDYKKyAgICAweDEuMGU1MjgzNjYxZGYwY2EwZjU1YWI2MTY3ZTE0NTE0YTFwLTEsCisgICAgLTB4MS5iMmQyNTVmMmJkMDQyM2UyOWUyYTU0ODcyOGYwMzRhYnAtMSwKKyAgICAtMHgxLmZmZmZmZXAyNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDcKKyAgICAtMHgxLjg2ZGNjOWJhYmIwYTQwZWU4NzVjYWIzYjllODkyNzU3cC0xLAorICAgIDB4MS40YWI2NTExYTdkMzlhZDNjYzg4ZGVkMWU3NzVjYTE0N3AtMSwKKyAgICAweDEucDI3LAorICB9LAorICB7IC8vIEVudHJ5IDgwOAorICAgIDB4MS44NmRjYzliYWJiMGE0MGVlODc1Y2FiM2I5ZTg5Mjc1N3AtMSwKKyAgICAweDEuNGFiNjUxMWE3ZDM5YWQzY2M4OGRlZDFlNzc1Y2ExNDdwLTEsCisgICAgLTB4MS5wMjcsCisgIH0sCisgIHsgLy8gRW50cnkgODA5CisgICAgMHgxLjE3MTk5OWI2MjlmZDViNjM1N2M2ZGZmNGQ3ODI3ZDk1cC0xLAorICAgIC0weDEuYWQzZDgwYzgyZjQ0NTJiMDc2NTgxZGUyNDY0ODQzNWJwLTEsCisgICAgMHgxLjAwMDAwMnAyNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTAKKyAgICAtMHgxLjE3MTk5OWI2MjlmZDViNjM1N2M2ZGZmNGQ3ODI3ZDk1cC0xLAorICAgIC0weDEuYWQzZDgwYzgyZjQ0NTJiMDc2NTgxZGUyNDY0ODQzNWJwLTEsCisgICAgLTB4MS4wMDAwMDJwMjcsCisgIH0sCisgIHsgLy8gRW50cnkgODExCisgICAgLTB4MS5lNTdlYzA5MjIxOTczNTUwZDFlNTc5OGRjZjBjZDI1ZHAtMSwKKyAgICAtMHgxLjQ1MzJjMzcyMWVkNDM0M2FkODhlZWE4OTA4YTk4OGNicC0yLAorICAgIDB4MS5mZmZmZmVwMjMsCisgIH0sCisgIHsgLy8gRW50cnkgODEyCisgICAgMHgxLmU1N2VjMDkyMjE5NzM1NTBkMWU1Nzk4ZGNmMGNkMjVkcC0xLAorICAgIC0weDEuNDUzMmMzNzIxZWQ0MzQzYWQ4OGVlYTg5MDhhOTg4Y2JwLTIsCisgICAgLTB4MS5mZmZmZmVwMjMsCisgIH0sCisgIHsgLy8gRW50cnkgODEzCisgICAgLTB4MS44ZjIyZjg0MzNkNmVkZmU5YTRhZmY5NjIyNTE3Y2FhOXAtMSwKKyAgICAweDEuNDBhZDY3ZjNmMGM5YTE0Mzk2M2M5Yzk2ZGJjZTNmOGFwLTEsCisgICAgMHgxLnAyNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTQKKyAgICAweDEuOGYyMmY4NDMzZDZlZGZlOWE0YWZmOTYyMjUxN2NhYTlwLTEsCisgICAgMHgxLjQwYWQ2N2YzZjBjOWExNDM5NjNjOWM5NmRiY2UzZjhhcC0xLAorICAgIC0weDEucDI0LAorICB9LAorICB7IC8vIEVudHJ5IDgxNQorICAgIDB4MS5jOWIwYzcyNjVjNTQzZjgwZmFmMDE3NDFjNjQ1ODU2MHAtMSwKKyAgICAweDEuY2FmODUzN2MzZTQ0MmNhOGFjYTg2YzE1Njc3Mzg1M2FwLTIsCisgICAgMHgxLjAwMDAwMnAyNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTYKKyAgICAtMHgxLmM5YjBjNzI2NWM1NDNmODBmYWYwMTc0MWM2NDU4NTYwcC0xLAorICAgIDB4MS5jYWY4NTM3YzNlNDQyY2E4YWNhODZjMTU2NzczODUzYXAtMiwKKyAgICAtMHgxLjAwMDAwMnAyNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTcKKyAgICAtMHgxLjgzN2I5OGEzMTg1ZDE0NjZkODUyZjBhN2RjMWQyNDhlcC0xLAorICAgIC0weDEuNGVhYTY2N2JhMGI5MGRmYjA1YWIzZDljMjQ3Y2RlZTdwLTEsCisgICAgMHgxLmZmZmZmZXAxLAorICB9LAorICB7IC8vIEVudHJ5IDgxOAorICAgIDB4MS44MzdiOThhMzE4NWQxNDY2ZDg1MmYwYTdkYzFkMjQ4ZXAtMSwKKyAgICAtMHgxLjRlYWE2NjdiYTBiOTBkZmIwNWFiM2Q5YzI0N2NkZWU3cC0xLAorICAgIC0weDEuZmZmZmZlcDEsCisgIH0sCisgIHsgLy8gRW50cnkgODE5CisgICAgLTB4MS44MzdiOWRkZGMxZWFlNzBjZTk4MDU1YTBlNDUwZDkzY3AtMSwKKyAgICAtMHgxLjRlYWE2MDZkYjI0YzBjNDY2ZGExYzJkYzdiYWEyYjMycC0xLAorICAgIDB4MS5wMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjAKKyAgICAweDEuODM3YjlkZGRjMWVhZTcwY2U5ODA1NWEwZTQ1MGQ5M2NwLTEsCisgICAgLTB4MS40ZWFhNjA2ZGIyNGMwYzQ2NmRhMWMyZGM3YmFhMmIzMnAtMSwKKyAgICAtMHgxLnAyLAorICB9LAorICB7IC8vIEVudHJ5IDgyMQorICAgIC0weDEuODM3YmE4NTMxNGJkZTUyYjFlOWMyYzhlZDI3MTJjNzJwLTEsCisgICAgLTB4MS40ZWFhNTQ1MWQ1MzM0OGViODlkYzQ3OGQ0ZDExYmUwMnAtMSwKKyAgICAweDEuMDAwMDAycDIsCisgIH0sCisgIHsgLy8gRW50cnkgODIyCisgICAgMHgxLjgzN2JhODUzMTRiZGU1MmIxZTljMmM4ZWQyNzEyYzcycC0xLAorICAgIC0weDEuNGVhYTU0NTFkNTMzNDhlYjg5ZGM0NzhkNGQxMWJlMDJwLTEsCisgICAgLTB4MS4wMDAwMDJwMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjMKKyAgICAweDEuZDE4ZjcwNTczZGE2MzAxMmZhMWMwZTNkMmViYmU1OWNwLTEsCisgICAgLTB4MS5hYTIyNWUyZWY5NjI0MTkxNWI2ZmQyMTc1MjI4MTRmNXAtMiwKKyAgICAweDEuZmZmZmZlcDAsCisgIH0sCisgIHsgLy8gRW50cnkgODI0CisgICAgLTB4MS5kMThmNzA1NzNkYTYzMDEyZmExYzBlM2QyZWJiZTU5Y3AtMSwKKyAgICAtMHgxLmFhMjI1ZTJlZjk2MjQxOTE1YjZmZDIxNzUyMjgxNGY1cC0yLAorICAgIC0weDEuZmZmZmZlcDAsCisgIH0sCisgIHsgLy8gRW50cnkgODI1CisgICAgMHgxLmQxOGY2ZWFkMWI0NDVkZmFiODQ4MTg4MDA5YzliYjk1cC0xLAorICAgIC0weDEuYWEyMjY1NzUzNzIwNGE0MzMyZjhhY2JiNzJiMGQ3NjhwLTIsCisgICAgMHgxLnAxLAorICB9LAorICB7IC8vIEVudHJ5IDgyNgorICAgIC0weDEuZDE4ZjZlYWQxYjQ0NWRmYWI4NDgxODgwMDljOWJiOTVwLTEsCisgICAgLTB4MS5hYTIyNjU3NTM3MjA0YTQzMzJmOGFjYmI3MmIwZDc2OHAtMiwKKyAgICAtMHgxLnAxLAorICB9LAorICB7IC8vIEVudHJ5IDgyNworICAgIDB4MS5kMThmNmI1OGQ2NmFlNzExMGIyYjZmN2NmZmJhNmVjMXAtMSwKKyAgICAtMHgxLmFhMjI3NDAxYjI4ODYyMGEwMzcyZDVhOTYwODQ5MTVkcC0yLAorICAgIDB4MS4wMDAwMDJwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjgKKyAgICAtMHgxLmQxOGY2YjU4ZDY2YWU3MTEwYjJiNmY3Y2ZmYmE2ZWMxcC0xLAorICAgIC0weDEuYWEyMjc0MDFiMjg4NjIwYTAzNzJkNWE5NjA4NDkxNWRwLTIsCisgICAgLTB4MS4wMDAwMDJwMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjkKKyAgICAweDEuYWVkNTQ3ZGJlZTRkMGQ4NjgwZDA4MTNkMWU0ZTIxZDBwLTEsCisgICAgMHgxLjE0YTI4MmFhMjViMTFmNjMxMmE3YTY1MTgwZTdjM2Q0cC0xLAorICAgIDB4MS5mZmZmZmVwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgODMwCisgICAgLTB4MS5hZWQ1NDdkYmVlNGQwZDg2ODBkMDgxM2QxZTRlMjFkMHAtMSwKKyAgICAweDEuMTRhMjgyYWEyNWIxMWY2MzEyYTdhNjUxODBlN2MzZDRwLTEsCisgICAgLTB4MS5mZmZmZmVwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgODMxCisgICAgMHgxLmFlZDU0OGYwOTBjZWUwNDE4ZGQzZDIxMzhhMWU3ODY1cC0xLAorICAgIDB4MS4xNGEyODBmYjUwNjhiOTIzODQ4Y2RiMmVkMGUzN2E1M3AtMSwKKyAgICAweDEucDAsCisgIH0sCisgIHsgLy8gRW50cnkgODMyCisgICAgLTB4MS5hZWQ1NDhmMDkwY2VlMDQxOGRkM2QyMTM4YTFlNzg2NXAtMSwKKyAgICAweDEuMTRhMjgwZmI1MDY4YjkyMzg0OGNkYjJlZDBlMzdhNTNwLTEsCisgICAgLTB4MS5wMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzMKKyAgICAweDEuYWVkNTRiMTlkNWNkNzkzN2NiZjQxZWQ0MDhjYTBhNTJwLTEsCisgICAgMHgxLjE0YTI3ZDlkYTVkNGFlYmNlNzE0MjhmOTA1N2IwOGRhcC0xLAorICAgIDB4MS4wMDAwMDJwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzQKKyAgICAtMHgxLmFlZDU0YjE5ZDVjZDc5MzdjYmY0MWVkNDA4Y2EwYTUycC0xLAorICAgIDB4MS4xNGEyN2Q5ZGE1ZDRhZWJjZTcxNDI4ZjkwNTdiMDhkYXAtMSwKKyAgICAtMHgxLjAwMDAwMnAwLAorICB9LAorICB7IC8vIEVudHJ5IDgzNQorICAgIDB4MS5lYWVlODU4MzVkZGU1YjcxYmVlYzdkOGQ5ODA1MjExMnAtMiwKKyAgICAweDEuYzE1MjgwZTA3Mzc2OTJkZDQzNjkwOGZkYzhlNmUyZTFwLTEsCisgICAgMHgxLmZmZmZmZXAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzYKKyAgICAtMHgxLmVhZWU4NTgzNWRkZTViNzFiZWVjN2Q4ZDk4MDUyMTEycC0yLAorICAgIDB4MS5jMTUyODBlMDczNzY5MmRkNDM2OTA4ZmRjOGU2ZTJlMXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzcKKyAgICAweDEuZWFlZTg3NDRiMDVlZmU4NzY0YmMzNjRmZDgzN2I2NjZwLTIsCisgICAgMHgxLmMxNTI4MDY1YjdkNGY5ZGI3YmJiM2I0NWY1ZjViMzBhcC0xLAorICAgIDB4MS5wLTEsCisgIH0sCisgIHsgLy8gRW50cnkgODM4CisgICAgLTB4MS5lYWVlODc0NGIwNWVmZTg3NjRiYzM2NGZkODM3YjY2NnAtMiwKKyAgICAweDEuYzE1MjgwNjViN2Q0ZjlkYjdiYmIzYjQ1ZjVmNWIzMGFwLTEsCisgICAgLTB4MS5wLTEsCisgIH0sCisgIHsgLy8gRW50cnkgODM5CisgICAgMHgxLmVhZWU4YWM3NTU1ZWQ0N2ZjYTc3Y2VlZDE3NGM4ZWEwcC0yLAorICAgIDB4MS5jMTUyN2Y3MDQwOTA3NmRhMGMzMjA0ZGYxZTA5OWE4M3AtMSwKKyAgICAweDEuMDAwMDAycC0xLAorICB9LAorICB7IC8vIEVudHJ5IDg0MAorICAgIC0weDEuZWFlZThhYzc1NTVlZDQ3ZmNhNzdjZWVkMTc0YzhlYTBwLTIsCisgICAgMHgxLmMxNTI3ZjcwNDA5MDc2ZGEwYzMyMDRkZjFlMDk5YTgzcC0xLAorICAgIC0weDEuMDAwMDAycC0xLAorICB9LAorICB7IC8vIEVudHJ5IDg0MQorICAgIDB4MS5mYWFlZWI1ZjFjMGQ2M2Y0M2M2ZjNlYzQ2MDExNjkwZnAtMywKKyAgICAweDEuZjAxNTRhMTc4OWQ4ZGNjMTcyY2QyMDkyZDA1ZjYzOTRwLTEsCisgICAgMHgxLmZmZmZmZXAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDIKKyAgICAtMHgxLmZhYWVlYjVmMWMwZDYzZjQzYzZmM2VjNDYwMTE2OTBmcC0zLAorICAgIDB4MS5mMDE1NGExNzg5ZDhkY2MxNzJjZDIwOTJkMDVmNjM5NHAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDMKKyAgICAweDEuZmFhZWVkNGYzMTU3NmJhODlkZWJkYzczNTFlOGIxYWVwLTMsCisgICAgMHgxLmYwMTU0OWY3ZGVlYTE3NGYwN2E2Nzk3MmJmMjlmMTQ4cC0xLAorICAgIDB4MS5wLTIsCisgIH0sCisgIHsgLy8gRW50cnkgODQ0CisgICAgLTB4MS5mYWFlZWQ0ZjMxNTc2YmE4OWRlYmRjNzM1MWU4YjFhZXAtMywKKyAgICAweDEuZjAxNTQ5ZjdkZWVhMTc0ZjA3YTY3OTcyYmYyOWYxNDhwLTEsCisgICAgLTB4MS5wLTIsCisgIH0sCisgIHsgLy8gRW50cnkgODQ1CisgICAgMHgxLmZhYWVmMTJmNWJlYjFjMTA5NDQ3M2QzYzMzNjViOWUxcC0zLAorICAgIDB4MS5mMDE1NDliODg5MGMyZjY2MzM3Y2FjMTVhNzIzN2M4ZXAtMSwKKyAgICAweDEuMDAwMDAycC0yLAorICB9LAorICB7IC8vIEVudHJ5IDg0NgorICAgIC0weDEuZmFhZWYxMmY1YmViMWMxMDk0NDczZDNjMzM2NWI5ZTFwLTMsCisgICAgMHgxLmYwMTU0OWI4ODkwYzJmNjYzMzdjYWMxNWE3MjM3YzhlcC0xLAorICAgIC0weDEuMDAwMDAycC0yLAorICB9LAorICB7IC8vIEVudHJ5IDg0NworICAgIDB4MS5mZWFhZWNlYzZkOGUzMGNkNTY5NTBlYjJlYmRjZWJkNHAtNCwKKyAgICAweDEuZmMwMTU1MmZkMDY4ZWU4M2Y1Yjc0MmMwNTI0NWU4YjJwLTEsCisgICAgMHgxLmZmZmZmZXAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDgKKyAgICAtMHgxLmZlYWFlY2VjNmQ4ZTMwY2Q1Njk1MGViMmViZGNlYmQ0cC00LAorICAgIDB4MS5mYzAxNTUyZmQwNjhlZTgzZjViNzQyYzA1MjQ1ZThiMnAtMSwKKyAgICAtMHgxLmZmZmZmZXAtNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDkKKyAgICAweDEuZmVhYWVlZTg2ZWUzNWNhMDY5YTg2NzIxZjg5Zjg1YTVwLTQsCisgICAgMHgxLmZjMDE1NTI3ZDViZDM2ZGEzY2Q0MjUzYmVkZTMxOWNhcC0xLAorICAgIDB4MS5wLTMsCisgIH0sCisgIHsgLy8gRW50cnkgODUwCisgICAgLTB4MS5mZWFhZWVlODZlZTM1Y2EwNjlhODY3MjFmODlmODVhNXAtNCwKKyAgICAweDEuZmMwMTU1MjdkNWJkMzZkYTNjZDQyNTNiZWRlMzE5Y2FwLTEsCisgICAgLTB4MS5wLTMsCisgIH0sCisgIHsgLy8gRW50cnkgODUxCisgICAgMHgxLmZlYWFmMmUwNzE4ZDljNTY4Yzk0NDJjODE1NDVjZDYycC00LAorICAgIDB4MS5mYzAxNTUxN2UwNjVhZmI2YmIxMDJjMThmNTkxOTgyMHAtMSwKKyAgICAweDEuMDAwMDAycC0zLAorICB9LAorICB7IC8vIEVudHJ5IDg1MgorICAgIC0weDEuZmVhYWYyZTA3MThkOWM1NjhjOTQ0MmM4MTU0NWNkNjJwLTQsCisgICAgMHgxLmZjMDE1NTE3ZTA2NWFmYjZiYjEwMmMxOGY1OTE5ODIwcC0xLAorICAgIC0weDEuMDAwMDAycC0zLAorICB9LAorICB7IC8vIEVudHJ5IDg1MworICAgIDB4MS5mZmFhYWNlZmQ0ZDg1NWFjODIyNzc5OWYzZTI2M2Q3YXAtNSwKKyAgICAweDEuZmYwMDE1NTY5ZWY3ZTJiOTYzMDFlNmY3NTJjMDE5ZDRwLTEsCisgICAgMHgxLmZmZmZmZXAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTQKKyAgICAtMHgxLmZmYWFhY2VmZDRkODU1YWM4MjI3Nzk5ZjNlMjYzZDdhcC01LAorICAgIDB4MS5mZjAwMTU1NjllZjdlMmI5NjMwMWU2Zjc1MmMwMTlkNHAtMSwKKyAgICAtMHgxLmZmZmZmZXAtNSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTUKKyAgICAweDEuZmZhYWFlZWVkNGVkYWI0YmE0YjM2NWVkMjVhOTU5NWZwLTUsCisgICAgMHgxLmZmMDAxNTU0OWY0ZDM0Y2EwZTFlZTY1MDliYzQyYjcxcC0xLAorICAgIDB4MS5wLTQsCisgIH0sCisgIHsgLy8gRW50cnkgODU2CisgICAgLTB4MS5mZmFhYWVlZWQ0ZWRhYjRiYTRiMzY1ZWQyNWE5NTk1ZnAtNSwKKyAgICAweDEuZmYwMDE1NTQ5ZjRkMzRjYTBlMWVlNjUwOWJjNDJiNzFwLTEsCisgICAgLTB4MS5wLTQsCisgIH0sCisgIHsgLy8gRW50cnkgODU3CisgICAgMHgxLmZmYWFiMmVjZDUxODUwOGFlOWJjNzMwYTE2NWE4ZWFkcC01LAorICAgIDB4MS5mZjAwMTU1MDlmZjdkMmVlNjQxOGU5MjRmMGRlNWU5N3AtMSwKKyAgICAweDEuMDAwMDAycC00LAorICB9LAorICB7IC8vIEVudHJ5IDg1OAorICAgIC0weDEuZmZhYWIyZWNkNTE4NTA4YWU5YmM3MzBhMTY1YThlYWRwLTUsCisgICAgMHgxLmZmMDAxNTUwOWZmN2QyZWU2NDE4ZTkyNGYwZGU1ZTk3cC0xLAorICAgIC0weDEuMDAwMDAycC00LAorICB9LAorICB7IC8vIEVudHJ5IDg1OQorICAgIDB4MS5mZmVhYThlZjJlODU5MzM4ODNjMGRjMzM0NjIzODdiNXAtNiwKKyAgICAweDEuZmZjMDAxNTVkMjc3ZDU4ZTcyN2NkOTVjNDNmNzU5Y2ZwLTEsCisgICAgMHgxLmZmZmZmZXAtNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjAKKyAgICAtMHgxLmZmZWFhOGVmMmU4NTkzMzg4M2MwZGMzMzQ2MjM4N2I1cC02LAorICAgIDB4MS5mZmMwMDE1NWQyNzdkNThlNzI3Y2Q5NWM0M2Y3NTljZnAtMSwKKyAgICAtMHgxLmZmZmZmZXAtNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjEKKyAgICAweDEuZmZlYWFhZWVlZTg2ZThjYWZlNDEzNzZkNDc5MTk1NzlwLTYsCisgICAgMHgxLmZmYzAwMTU1NTI3ZDJiMTJhZWRiNDlkOTI5MjhkZjcycC0xLAorICAgIDB4MS5wLTUsCisgIH0sCisgIHsgLy8gRW50cnkgODYyCisgICAgLTB4MS5mZmVhYWFlZWVlODZlOGNhZmU0MTM3NmQ0NzkxOTU3OXAtNiwKKyAgICAweDEuZmZjMDAxNTU1MjdkMmIxMmFlZGI0OWQ5MjkyOGRmNzJwLTEsCisgICAgLTB4MS5wLTUsCisgIH0sCisgIHsgLy8gRW50cnkgODYzCisgICAgMHgxLmZmZWFhZWVlNmU4OTkyNzAwMzQxM2FiZTY0ZTlkYzIxcC02LAorICAgIDB4MS5mZmMwMDE1NDUyODdkNDliNTc5NzJhZjUxNDU2NjNhMHAtMSwKKyAgICAweDEuMDAwMDAycC01LAorICB9LAorICB7IC8vIEVudHJ5IDg2NAorICAgIC0weDEuZmZlYWFlZWU2ZTg5OTI3MDAzNDEzYWJlNjRlOWRjMjFwLTYsCisgICAgMHgxLmZmYzAwMTU0NTI4N2Q0OWI1Nzk3MmFmNTE0NTY2M2EwcC0xLAorICAgIC0weDEuMDAwMDAycC01LAorICB9LAorICB7IC8vIEVudHJ5IDg2NQorICAgIDB4MS5mZmZhYThhZWZlZWQzOTZmZmZmYzYzNjMxM2QwYmE2ZHAtNywKKyAgICAweDEuZmZmMDAwMTU3NTQ5OWYzZDc5OTZlMmRhMTFjZGViMjRwLTEsCisgICAgMHgxLmZmZmZmZXAtNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjYKKyAgICAtMHgxLmZmZmFhOGFlZmVlZDM5NmZmZmZjNjM2MzEzZDBiYTZkcC03LAorICAgIDB4MS5mZmYwMDAxNTc1NDk5ZjNkNzk5NmUyZGExMWNkZWIyNHAtMSwKKyAgICAtMHgxLmZmZmZmZXAtNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjcKKyAgICAweDEuZmZmYWFhYWVlZWVkNGVkNTQ5YzY1NjBmODg5ZWU1MzFwLTcsCisgICAgMHgxLmZmZjAwMDE1NTU0OWY0YTI4YTI4MGU5N2JjZDU5YzhhcC0xLAorICAgIDB4MS5wLTYsCisgIH0sCisgIHsgLy8gRW50cnkgODY4CisgICAgLTB4MS5mZmZhYWFhZWVlZWQ0ZWQ1NDljNjU2MGY4ODllZTUzMXAtNywKKyAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMjhhMjgwZTk3YmNkNTljOGFwLTEsCisgICAgLTB4MS5wLTYsCisgIH0sCisgIHsgLy8gRW50cnkgODY5CisgICAgMHgxLmZmZmFhZWFlY2VlZDc5M2ZkZTVhMWE5Y2E1YmIxZWU2cC03LAorICAgIDB4MS5mZmYwMDAxNTE1NGE5ZjBjYWU0YTYyMTUxNTAxY2QwYXAtMSwKKyAgICAweDEuMDAwMDAycC02LAorICB9LAorICB7IC8vIEVudHJ5IDg3MAorICAgIC0weDEuZmZmYWFlYWVjZWVkNzkzZmRlNWExYTljYTViYjFlZTZwLTcsCisgICAgMHgxLmZmZjAwMDE1MTU0YTlmMGNhZTRhNjIxNTE1MDFjZDBhcC0xLAorICAgIC0weDEuMDAwMDAycC02LAorICB9LAorICB7IC8vIEVudHJ5IDg3MQorICAgIDB4MS5mZmZmZmRmYWFhYWFiYWFlZWVkZWQ5OTdmZWZmYTM1YXAtMTUsCisgICAgMHgxLmZmZmZmZmYwMDAwMDIwMTU1NTQ0ZmZmNDlmY2EzOGU2cC0xLAorICAgIDB4MS5mZmZmZmVwLTE1LAorICB9LAorICB7IC8vIEVudHJ5IDg3MgorICAgIC0weDEuZmZmZmZkZmFhYWFhYmFhZWVlZGVkOTk3ZmVmZmEzNWFwLTE1LAorICAgIDB4MS5mZmZmZmZmMDAwMDAyMDE1NTU0NGZmZjQ5ZmNhMzhlNnAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMTUsCisgIH0sCisgIHsgLy8gRW50cnkgODczCisgICAgMHgxLmZmZmZmZmZhYWFhYWFhYWVlZWVlZWVlZDRlZDRlZDRmcC0xNSwKKyAgICAweDEuZmZmZmZmZjAwMDAwMDAxNTU1NTU1NTQ5ZjQ5ZjQ5ZjdwLTEsCisgICAgMHgxLnAtMTQsCisgIH0sCisgIHsgLy8gRW50cnkgODc0CisgICAgLTB4MS5mZmZmZmZmYWFhYWFhYWFlZWVlZWVlZWQ0ZWQ0ZWQ0ZnAtMTUsCisgICAgMHgxLmZmZmZmZmYwMDAwMDAwMTU1NTU1NTU0OWY0OWY0OWY3cC0xLAorICAgIC0weDEucC0xNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzUKKyAgICAweDEuMDAwMDAxZmQ1NTU1NDU1Nzc3NTc4Y2NiZTdiZmMwOWNwLTE0LAorICAgIDB4MS5mZmZmZmZlZmZmZmZjMDE1NTUxNWZmZjRhMTQ5NmMxY3AtMSwKKyAgICAweDEuMDAwMDAycC0xNCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzYKKyAgICAtMHgxLjAwMDAwMWZkNTU1NTQ1NTc3NzU3OGNjYmU3YmZjMDljcC0xNCwKKyAgICAweDEuZmZmZmZmZWZmZmZmYzAxNTU1MTVmZmY0YTE0OTZjMWNwLTEsCisgICAgLTB4MS4wMDAwMDJwLTE0LAorICB9LAorICB7IC8vIEVudHJ5IDg3NworICAgIDB4MS5mZmZmZmRmZmZmZmZmZWFhYWFhZWFhYWFhNmFhZWVmMHAtMjgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZjMDAwMDA3ZmZmZmZjMDE1NTU1cC0xLAorICAgIDB4MS5mZmZmZmVwLTI4LAorICB9LAorICB7IC8vIEVudHJ5IDg3OAorICAgIC0weDEuZmZmZmZkZmZmZmZmZmVhYWFhYWVhYWFhYTZhYWVlZjBwLTI4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmYzAwMDAwN2ZmZmZmYzAxNTU1NXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMjgsCisgIH0sCisgIHsgLy8gRW50cnkgODc5CisgICAgMHgxLmZmZmZmZmZmZmZmZmZlYWFhYWFhYWFhYWFhYWFlZWVlcC0yOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmMwMDAwMDAwMDAwMDAwMTU1NTVwLTEsCisgICAgMHgxLnAtMjcsCisgIH0sCisgIHsgLy8gRW50cnkgODgwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZWFhYWFhYWFhYWFhYWFhZWVlZXAtMjgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZjMDAwMDAwMDAwMDAwMDE1NTU1cC0xLAorICAgIC0weDEucC0yNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODEKKyAgICAweDEuMDAwMDAxZmZmZmZmZmY1NTU1NTE1NTU1NGQ1NTc3NzJwLTI3LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmYmZmZmZlZmZmZmZmMDAxNTU1NXAtMSwKKyAgICAweDEuMDAwMDAycC0yNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODIKKyAgICAtMHgxLjAwMDAwMWZmZmZmZmZmNTU1NTUxNTU1NTRkNTU3NzcycC0yNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZmJmZmZmZWZmZmZmZjAwMTU1NTVwLTEsCisgICAgLTB4MS4wMDAwMDJwLTI3LAorICB9LAorICB7IC8vIEVudHJ5IDg4MworICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZhYWFhYWJhYWFhYTlhYWFhZXAtMzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZjAwMDAwMWZmZmZmZjAwMDE1cC0xLAorICAgIDB4MS5mZmZmZmVwLTMxLAorICB9LAorICB7IC8vIEVudHJ5IDg4NAorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmYWFhYWFiYWFhYWE5YWFhYWVwLTMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmYwMDAwMDFmZmZmZmYwMDAxNXAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMzEsCisgIH0sCisgIHsgLy8gRW50cnkgODg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmFhYWFhYWFhYWFhYWFhYWFlcC0zMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMDAwMTVwLTEsCisgICAgMHgxLnAtMzAsCisgIH0sCisgIHsgLy8gRW50cnkgODg2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZhYWFhYWFhYWFhYWFhYWFhZXAtMzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDAwMDE1cC0xLAorICAgIC0weDEucC0zMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODcKKyAgICAweDEuMDAwMDAxZmZmZmZmZmZmZDU1NTU0NTU1NTUzNTU1NTdwLTMwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmVmZmZmZmJmZmZmZmMwMDAxNXAtMSwKKyAgICAweDEuMDAwMDAycC0zMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODgKKyAgICAtMHgxLjAwMDAwMWZmZmZmZmZmZmQ1NTU1NDU1NTU1MzU1NTU3cC0zMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZlZmZmZmZiZmZmZmZjMDAwMTVwLTEsCisgICAgLTB4MS4wMDAwMDJwLTMwLAorICB9LAorICB7IC8vIEVudHJ5IDg4OQorICAgIDB4MS4wYjMzNjY1MDg5NTc1MjBkOWRjODhkN2MwOTMzN2UyNHAtMSwKKyAgICAweDEuYjRiZjJjNzliZGZjZGFhNTNlZDZjMDEzZjY1ZTA5NjNwLTEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICB9LAorICB7IC8vIEVudHJ5IDg5MAorICAgIC0weDEuMGIzMzY2NTA4OTU3NTIwZDlkYzg4ZDdjMDkzMzdlMjRwLTEsCisgICAgMHgxLmI0YmYyYzc5YmRmY2RhYTUzZWQ2YzAxM2Y2NWUwOTYzcC0xLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICB9LAorICB7IC8vIEVudHJ5IDg5MQorICAgIC0weDEuMGIzMzY2NTA4OTU3NTIwZDlkYzg4ZDdjMDkzMzdlMjRwLTEsCisgICAgMHgxLmI0YmYyYzc5YmRmY2RhYTUzZWQ2YzAxM2Y2NWUwOTYzcC0xLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICB9LAorICB7IC8vIEVudHJ5IDg5MgorICAgIDB4MS4wYjMzNjY1MDg5NTc1MjBkOWRjODhkN2MwOTMzN2UyNHAtMSwKKyAgICAweDEuYjRiZjJjNzliZGZjZGFhNTNlZDZjMDEzZjY1ZTA5NjNwLTEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICB9LAorICB7IC8vIEVudHJ5IDg5MworICAgIC0weDEuMGIzMzY2NTA4OTU3NTIwZDlkYzg4ZDdjMDkzMzdlMjRwLTEsCisgICAgMHgxLmI0YmYyYzc5YmRmY2RhYTUzZWQ2YzAxM2Y2NWUwOTYzcC0xLAorICAgIDB4MS5mZmZmZmVwMTI3LAorICB9LAorICB7IC8vIEVudHJ5IDg5NAorICAgIDB4MS4wYjMzNjY1MDg5NTc1MjBkOWRjODhkN2MwOTMzN2UyNHAtMSwKKyAgICAweDEuYjRiZjJjNzliZGZjZGFhNTNlZDZjMDEzZjY1ZTA5NjNwLTEsCisgICAgLTB4MS5mZmZmZmVwMTI3LAorICB9LAorICB7IC8vIEVudHJ5IDg5NQorICAgIC0weDEuNDhjZTU3NTIwMmVmZDkzYzYyZjdiODgxMDZlYTFkNGRwLTEsCisgICAgLTB4MS44ODc3YTI5ZTNkN2I2ZGVmY2I1MjhlODZmNGMzZTA5YXAtMSwKKyAgICAweDEuZmZmZmZjcDEyNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTYKKyAgICAweDEuNDhjZTU3NTIwMmVmZDkzYzYyZjdiODgxMDZlYTFkNGRwLTEsCisgICAgLTB4MS44ODc3YTI5ZTNkN2I2ZGVmY2I1MjhlODZmNGMzZTA5YXAtMSwKKyAgICAtMHgxLmZmZmZmY3AxMjcsCisgIH0sCisgIHsgLy8gRW50cnkgODk3CisgICAgLTB4MS43NzdhNWNmNzJjZWM1ZmQ2MTg5NmNiNGY0MGQxZGU3OXAtMjQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmRkOTQ4NDkyNzFkMDhlZWNmNTRhMXAtMSwKKyAgICAweDEuOTIxZmI2cDEsCisgIH0sCisgIHsgLy8gRW50cnkgODk4CisgICAgMHgxLjc3N2E1Y2Y3MmNlYzVmZDYxODk2Y2I0ZjQwZDFkZTc5cC0yNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZGQ5NDg0OTI3MWQwOGVlY2Y1NGExcC0xLAorICAgIC0weDEuOTIxZmI2cDEsCisgIH0sCisgIHsgLy8gRW50cnkgODk5CisgICAgMHgxLmZmZmZmZmZmZmZmZjc2NTIxMjQ5Yzc0MjI5MzBlZDgycC0xLAorICAgIC0weDEuNzc3YTVjZjcyY2VjYzRjZGUzYTMxZTdkNWEwMjYxNDJwLTI1LAorICAgIDB4MS45MjFmYjZwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjc2NTIxMjQ5Yzc0MjI5MzBlZDgycC0xLAorICAgIC0weDEuNzc3YTVjZjcyY2VjYzRjZGUzYTMxZTdkNWEwMjYxNDJwLTI1LAorICAgIC0weDEuOTIxZmI2cDAsCisgIH0sCisgIHsgLy8gRW50cnkgOTAxCisgICAgMHgxLmFlZDU0YjE5ZDVjZDc5MzdjYmY0MWVkNDA4Y2EwYTUycC0xLAorICAgIDB4MS4xNGEyN2Q5ZGE1ZDRhZWJjZTcxNDI4ZjkwNTdiMDhkYXAtMSwKKyAgICAweDEuMDAwMDAycDAsCisgIH0sCisgIHsgLy8gRW50cnkgOTAyCisgICAgLTB4MS5hZWQ1NGIxOWQ1Y2Q3OTM3Y2JmNDFlZDQwOGNhMGE1MnAtMSwKKyAgICAweDEuMTRhMjdkOWRhNWQ0YWViY2U3MTQyOGY5MDU3YjA4ZGFwLTEsCisgICAgLTB4MS4wMDAwMDJwMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDMKKyAgICAweDEuYWVkNTQ4ZjA5MGNlZTA0MThkZDNkMjEzOGExZTc4NjVwLTEsCisgICAgMHgxLjE0YTI4MGZiNTA2OGI5MjM4NDhjZGIyZWQwZTM3YTUzcC0xLAorICAgIDB4MS5wMCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDQKKyAgICAtMHgxLmFlZDU0OGYwOTBjZWUwNDE4ZGQzZDIxMzhhMWU3ODY1cC0xLAorICAgIDB4MS4xNGEyODBmYjUwNjhiOTIzODQ4Y2RiMmVkMGUzN2E1M3AtMSwKKyAgICAtMHgxLnAwLAorICB9LAorICB7IC8vIEVudHJ5IDkwNQorICAgIDB4MS5hZWQ1NDdkYmVlNGQwZDg2ODBkMDgxM2QxZTRlMjFkMHAtMSwKKyAgICAweDEuMTRhMjgyYWEyNWIxMWY2MzEyYTdhNjUxODBlN2MzZDRwLTEsCisgICAgMHgxLmZmZmZmZXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDYKKyAgICAtMHgxLmFlZDU0N2RiZWU0ZDBkODY4MGQwODEzZDFlNGUyMWQwcC0xLAorICAgIDB4MS4xNGEyODJhYTI1YjExZjYzMTJhN2E2NTE4MGU3YzNkNHAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMSwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDcKKyAgICAweDEuNmEwOWU2ZWNiNDFmZGQ3ZTY4MTg3MmM4NTQ4ODcwMTlwLTEsCisgICAgMHgxLjZhMDllNWUzMzM1OTgzZTVhYzkyZTczM2UzZjI0YjQycC0xLAorICAgIDB4MS45MjFmYjZwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgOTA4CisgICAgLTB4MS42YTA5ZTZlY2I0MWZkZDdlNjgxODcyYzg1NDg4NzAxOXAtMSwKKyAgICAweDEuNmEwOWU1ZTMzMzU5ODNlNWFjOTJlNzMzZTNmMjRiNDJwLTEsCisgICAgLTB4MS45MjFmYjZwLTEsCisgIH0sCisgIHsgLy8gRW50cnkgOTA5CisgICAgMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDJwLTEyNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTAKKyAgICAtMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAycC0xMjYsCisgIH0sCisgIHsgLy8gRW50cnkgOTExCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5wLTEyNiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEucC0xMjYsCisgIH0sCisgIHsgLy8gRW50cnkgOTEzCisgICAgMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTQKKyAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZjcC0xMjcsCisgIH0sCisgIHsgLy8gRW50cnkgOTE1CisgICAgMHgxLmZmZmZmN2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZjhwLTEyNywKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTYKKyAgICAtMHgxLmZmZmZmN2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmY4cC0xMjcsCisgIH0sCisgIHsgLy8gRW50cnkgOTE3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5wLTE0OCwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEucC0xNDgsCisgIH0sCisgIHsgLy8gRW50cnkgOTE5CisgICAgMC4wZiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLnAtMTQ5LAorICB9LAorICB7IC8vIEVudHJ5IDkyMAorICAgIC0wLjBmLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnAtMTQ5LAorICB9LAorICB7IC8vIEVudHJ5IDkyMQorICAgIDAuMCwKKyAgICAweDEucDAsCisgICAgMC4wZiwKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjIKKyAgICAtMC4wLAorICAgIDB4MS5wMCwKKyAgICAtMC4wZiwKKyAgfSwKK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvc2luZl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvc2luZl9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWNkYTBmZAotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9zaW5mX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDQzNzQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfc2luZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEuMDAwM2ZmZmZmZmY1NTRkNTUzNTU1MmNjY2Y3NzhjY2RwLTIxLAorICAgIC0weDEuMDAwNHAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgMHgxLjAwMDNmZmZmZmZmNTU0ZDU1MzU1NTJjY2NmNzc4Y2NkcC0yMSwKKyAgICAweDEuMDAwNHAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS5kMzBjYTcwMDhhZjI0ZWYwNDhhN2EwNWVlY2RlMjEyMHAtNCwKKyAgICAtMHgxLjAwY2JmMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuZDMwY2E3MDA4YWYyNGVmMDQ4YTdhMDVlZWNkZTIxMjBwLTQsCisgICAgMHgxLjAwY2JmMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAweDEuOGQ2NjVkMDAwMDIwMGVmYzQ0NzgwMDg2NThjNjE3YzdwLTEsCisgICAgLTB4MS4wMWVlMzRwMgorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAtMHgxLjhkNjY1ZDAwMDAyMDBlZmM0NDc4MDA4NjU4YzYxN2M3cC0xLAorICAgIDB4MS4wMWVlMzRwMgorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuZWMwNDJmZjk3MmU0MmMyM2YyOGYyZGE0ZmI3NWY4NTFwLTEsCisgICAgLTB4MS4xOGYxZjRwNAorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAtMHgxLmVjMDQyZmY5NzJlNDJjMjNmMjhmMmRhNGZiNzVmODUxcC0xLAorICAgIDB4MS4xOGYxZjRwNAorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEuZjBkMzg0MjQwYWQ5ZjJkYmE0N2I5NmIwODI3MWI0MWZwLTEsCisgICAgLTB4MS4xZGY5MDZwMgorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAtMHgxLmYwZDM4NDI0MGFkOWYyZGJhNDdiOTZiMDgyNzFiNDFmcC0xLAorICAgIDB4MS4xZGY5MDZwMgorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgLTB4MS40NjE2ZGFmOWNkM2NlNGU5MjE4NmU3ZDhlYzNkM2VmMHAtNSwKKyAgICAtMHgxLjNhcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS40NjE2ZGFmOWNkM2NlNGU5MjE4NmU3ZDhlYzNkM2VmMHAtNSwKKyAgICAweDEuM2FwNgorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLmRmMDRjNWY5ZGUzNDMyMzVmNGY4YjE3OTcyODY4NzJicC0xLAorICAgIC0weDEuNDRiMDk2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIC0weDEuZGYwNGM1ZjlkZTM0MzIzNWY0ZjhiMTc5NzI4Njg3MmJwLTEsCisgICAgMHgxLjQ0YjA5NnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAtMHgxLmZlZmZiZDczMzRjNzA0M2I5MGE2YmMyZDc2ZGRhN2M4cC0xLAorICAgIC0weDEuODIxY2Y2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5mZWZmYmQ3MzM0YzcwNDNiOTBhNmJjMmQ3NmRkYTdjOHAtMSwKKyAgICAweDEuODIxY2Y2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5lYmFjNTZmZmU2ZjI3ODkzYzY5ZjY4ZDFkN2I0YTQ0OHAtMywKKyAgICAtMHgxLjgyOWI4NnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAtMHgxLmViYWM1NmZmZTZmMjc4OTNjNjlmNjhkMWQ3YjRhNDQ4cC0zLAorICAgIDB4MS44MjliODZwMgorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLmI3MjVjY2VmNjViMTM5MDkxMmEwZjVlYWFiMGU3MjAycC02LAorICAgIC0weDEuODU4MGZlcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIC0weDEuYjcyNWNjZWY2NWIxMzkwOTEyYTBmNWVhYWIwZTcyMDJwLTYsCisgICAgMHgxLjg1ODBmZXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuMGIzMzY2NTA4OTU3NTIwZDlkYzg4ZDdjMDkzMzdlMjRwLTEsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAtMHgxLjBiMzM2NjUwODk1NzUyMGQ5ZGM4OGQ3YzA5MzM3ZTI0cC0xLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgLTB4MS5mODNkZTdjMDY4M2QzYmQ5MGE3NjlmNjJhNDFhYzFjM3AtMSwKKyAgICAweDEuMDAwMDAycDUyCisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAweDEuZjgzZGU3YzA2ODNkM2JkOTBhNzY5ZjYyYTQxYWMxYzNwLTEsCisgICAgLTB4MS4wMDAwMDJwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIC0weDEuN2RiZDExZmZkZTRjMjBkYmIzNzYwMTlmMWM2NTRiYjBwLTIsCisgICAgMHgxLjAwMDAyMnA2MgorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLjdkYmQxMWZmZGU0YzIwZGJiMzc2MDE5ZjFjNjU0YmIwcC0yLAorICAgIC0weDEuMDAwMDIycDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuZWFmMGQ1MDA4ZjJkYjg5OWUyNDg3ZGE5ZDNiOWNkZTdwLTIsCisgICAgMHgxLjAwMDE1MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgLTB4MS5lYWYwZDUwMDhmMmRiODk5ZTI0ODdkYTlkM2I5Y2RlN3AtMiwKKyAgICAtMHgxLjAwMDE1MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgMHgxLmZmYWU4Y2ZlZmE4MTNkYTg3NDk4ZGY5ODhjM2Q4ZjVlcC01LAorICAgIDB4MS4wMDAxZjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIC0weDEuZmZhZThjZmVmYTgxM2RhODc0OThkZjk4OGMzZDhmNWVwLTUsCisgICAgLTB4MS4wMDAxZjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS44OWM3ZDYwODdhODYxYmI2ZmU3OTQxNDhjMzQyNTM0OHAtMSwKKyAgICAweDEuMDAwM3A0MAorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgLTB4MS44OWM3ZDYwODdhODYxYmI2ZmU3OTQxNDhjMzQyNTM0OHAtMSwKKyAgICAtMHgxLjAwMDNwNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIC0weDEuNTllMWY1MTllZjhiNzIyZWFlMTJhNDA0Y2FkOTM3ZWJwLTEsCisgICAgMHgxLjAwMDM4MHAxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS41OWUxZjUxOWVmOGI3MjJlYWUxMmE0MDRjYWQ5MzdlYnAtMSwKKyAgICAtMHgxLjAwMDM4MHAxMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS4wMDAzZmZmZmZmZjU1NGQ1NTM1NTUyY2NjZjc3OGNjZHAtMjEsCisgICAgMHgxLjAwMDRwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAtMHgxLjAwMDNmZmZmZmZmNTU0ZDU1MzU1NTJjY2NmNzc4Y2NkcC0yMSwKKyAgICAtMHgxLjAwMDRwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMzgzMDY1MDI3ZWM0ZjIwYWIxYzAwMjdkOTkxYjgwNWFwLTYsCisgICAgMHgxLjAwMDdjMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAtMHgxLjM4MzA2NTAyN2VjNGYyMGFiMWMwMDI3ZDk5MWI4MDVhcC02LAorICAgIC0weDEuMDAwN2MwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS5lYjAzOTcwMDJmZGZiYWUyMjZmMDY5ZDZjZDUzYzQwZnAtMiwKKyAgICAweDEuMDAwY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS5lYjAzOTcwMDJmZGZiYWUyMjZmMDY5ZDZjZDUzYzQwZnAtMiwKKyAgICAtMHgxLjAwMGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5mZWRjOGIwMDAxZjdkYWNlZTA5MGM1ZWRjM2JmYTU0N3AtNCwKKyAgICAweDEuMDAxOXAtMworICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgLTB4MS5mZWRjOGIwMDAxZjdkYWNlZTA5MGM1ZWRjM2JmYTU0N3AtNCwKKyAgICAtMHgxLjAwMTlwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS5hYjQ3MWFmMjZmZmVhMjNkNzY0M2NmNjE0Yzg2MGIxOHAtMTAsCisgICAgMHgxLjAwMzgyMHA2OAorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgLTB4MS5hYjQ3MWFmMjZmZmVhMjNkNzY0M2NmNjE0Yzg2MGIxOHAtMTAsCisgICAgLTB4MS4wMDM4MjBwNjgKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS5mZjI5ZWVmZGRlMzA0MWZjNWM3NWExZjgyMmE1NDIxZHAtNCwKKyAgICAweDEuMDA0MHAtMworICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgLTB4MS5mZjI5ZWVmZGRlMzA0MWZjNWM3NWExZjgyMmE1NDIxZHAtNCwKKyAgICAtMHgxLjAwNDBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS4yOTA3MDE3NTIwNmIzZjE5OGM4OTNlMTliNGJkNmNiOHAtMTMsCisgICAgMHgxLjAxZjBwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAtMHgxLjI5MDcwMTc1MjA2YjNmMTk4Yzg5M2UxOWI0YmQ2Y2I4cC0xMywKKyAgICAtMHgxLjAxZjBwMTAzCisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmFhZmJlNTNkZTc0MjMxOTU0NzA5cC0xLAorICAgIDB4MS4wNGNjYmNwMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS5mZmZmZmZmZmZmZmZhYWZiZTUzZGU3NDIzMTk1NDcwOXAtMSwKKyAgICAtMHgxLjA0Y2NiY3AxOAorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLmY0ZjcyY2FkNWY1ZmIxN2VjNjA4ZWM3YWMxY2JjYThicC0yLAorICAgIDB4MS4wNWJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLmY0ZjcyY2FkNWY1ZmIxN2VjNjA4ZWM3YWMxY2JjYThicC0yLAorICAgIC0weDEuMDViY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLmY4OTZjNjY4OWQ3ZTc1ZTM1MWVjYzg1NzMxMjU0Y2QzcC0xLAorICAgIDB4MS4wN2MxZjhwMTE5CisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLmY4OTZjNjY4OWQ3ZTc1ZTM1MWVjYzg1NzMxMjU0Y2QzcC0xLAorICAgIC0weDEuMDdjMWY4cDExOQorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgLTB4MS4yNjc1OTNmNGQ1OWM3ZGU2MTcwMDkwYTZhMDg0Y2RjYXAtMTQsCisgICAgMHgxLjA4MDE4MHAyMworICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgMHgxLjI2NzU5M2Y0ZDU5YzdkZTYxNzAwOTBhNmEwODRjZGNhcC0xNCwKKyAgICAtMHgxLjA4MDE4MHAyMworICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLmZjODYzNzJhODQxNTQ5NDEwYzEyZGJlYzZmZTgwZGM1cC0yLAorICAgIDB4MS4wYTE0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLmZjODYzNzJhODQxNTQ5NDEwYzEyZGJlYzZmZTgwZGM1cC0yLAorICAgIC0weDEuMGExNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLmJjYTI4ZjAwMDQzMTZiYWU4ZGY2YTIzNTJjY2ExMzgycC0xLAorICAgIDB4MS4wYjc3MGFwMQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgLTB4MS5iY2EyOGYwMDA0MzE2YmFlOGRmNmEyMzUyY2NhMTM4MnAtMSwKKyAgICAtMHgxLjBiNzcwYXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAtMHgxLmZhZGU5YWJkNjc1MjZkMzcxODlkZjAwNGI1MWQ5ZDVhcC0xLAorICAgIDB4MS4wZGRjcDk2CisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuZmFkZTlhYmQ2NzUyNmQzNzE4OWRmMDA0YjUxZDlkNWFwLTEsCisgICAgLTB4MS4wZGRjcDk2CisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuYmY2ODNjZmZmZmVjNmU4NjcyYTQ5ZjA4YWFlNDljNDZwLTEsCisgICAgMHgxLjEwMjRwMAorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgLTB4MS5iZjY4M2NmZmZmZWM2ZTg2NzJhNDlmMDhhYWU0OWM0NnAtMSwKKyAgICAtMHgxLjEwMjRwMAorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgLTB4MS5mMTQ0MDdmNjQ0MWU5MmY0ODBkMmUyMjg1OWQ2N2EzOXAtMSwKKyAgICAweDEuMTA5Y2M0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS5mMTQ0MDdmNjQ0MWU5MmY0ODBkMmUyMjg1OWQ2N2EzOXAtMSwKKyAgICAtMHgxLjEwOWNjNHA0CisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmZmN2U3Yjk5ODNhN2MyZWJlY2ZhYjFhMGIwYWYzYzRkcC0xLAorICAgIDB4MS4xM2JmYjJwNAorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLmZmN2U3Yjk5ODNhN2MyZWJlY2ZhYjFhMGIwYWYzYzRkcC0xLAorICAgIC0weDEuMTNiZmIycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS5jNDk0MmIxZTllYzE3NWFhN2QzZmQ3NWYyZTM3ZTU2NnAtMSwKKyAgICAweDEuMTU5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLmM0OTQyYjFlOWVjMTc1YWE3ZDNmZDc1ZjJlMzdlNTY2cC0xLAorICAgIC0weDEuMTU5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzIKKyAgICAweDEuZmZmOGQzNjg2NmZhYWFjOGMxN2UxMjY3NDk4YmQxMzJwLTEsCisgICAgMHgxLjE4cDg1CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLmZmZjhkMzY4NjZmYWFhYzhjMTdlMTI2NzQ5OGJkMTMycC0xLAorICAgIC0weDEuMThwODUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5jNzhkOTYyNTQ2Y2U1MWI4ODJjOTA1NGVjY2Q4MjliMXAtMSwKKyAgICAweDEuMThjOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMHgxLmM3OGQ5NjI1NDZjZTUxYjg4MmM5MDU0ZWNjZDgyOWIxcC0xLAorICAgIC0weDEuMThjOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuYzdjYjk5YTExMWYyNjUyN2I4MDU3MzQ5NjJmYjEyYTBwLTEsCisgICAgMHgxLjE5MGNwMAorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS5jN2NiOTlhMTExZjI2NTI3YjgwNTczNDk2MmZiMTJhMHAtMSwKKyAgICAtMHgxLjE5MGNwMAorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgLTB4MS43MDg5ODEwMDA1NTk0Mzg5OGFhNzA1MzAxN2VjYmE2OXAtMSwKKyAgICAweDEuMWU4ZjE0cDYyCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAweDEuNzA4OTgxMDAwNTU5NDM4OThhYTcwNTMwMTdlY2JhNjlwLTEsCisgICAgLTB4MS4xZThmMTRwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS5jZGVmMWU0ZWIzN2U5ZjIyNDk2NTZjMjdkNjJiMTg5NXAtMSwKKyAgICAweDEuMWZmOHAwCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLmNkZWYxZTRlYjM3ZTlmMjI0OTY1NmMyN2Q2MmIxODk1cC0xLAorICAgIC0weDEuMWZmOHAwCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLjVkZjBkZDYwZjEyMmJmNzlkMWRkY2YyOTVjMzRjYjBlcC0xLAorICAgIDB4MS4yMjQ0YTZwNTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS41ZGYwZGQ2MGYxMjJiZjc5ZDFkZGNmMjk1YzM0Y2IwZXAtMSwKKyAgICAtMHgxLjIyNDRhNnA1OQorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgLTB4MS5mYjhkZDc0ZjFiMDkxYTdiMGY5ZjlkNDRkYjg0NjYxY3AtMywKKyAgICAweDEuMjg3YWUwcDEzCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAweDEuZmI4ZGQ3NGYxYjA5MWE3YjBmOWY5ZDQ0ZGI4NDY2MWNwLTMsCisgICAgLTB4MS4yODdhZTBwMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZjVjMGQyNjMwZWUwYTFmYjRlN2JwLTEsCisgICAgMHgxLjJkOTdjOHAyCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAweDEuZmZmZmZmZmZmZmZmZjVjMGQyNjMwZWUwYTFmYjRlN2JwLTEsCisgICAgLTB4MS4yZDk3YzhwMgorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgLTB4MS45OWJjNWI5NjFiMWFjMjk2ZGJlMTk4MGZkMmM4OTBhMHAtMjYsCisgICAgMHgxLjJkOTdjOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuOTliYzViOTYxYjFhYzI5NmRiZTE5ODBmZDJjODkwYTBwLTI2LAorICAgIC0weDEuMmQ5N2M4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS5mZmQ1MTU4YjgxOTQ0ZmY2YjQ4MzNmZGYxZmFhOTI4MXAtMSwKKyAgICAweDEuMzJjZGM2cDE4CisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLmZmZDUxNThiODE5NDRmZjZiNDgzM2ZkZjFmYWE5MjgxcC0xLAorICAgIC0weDEuMzJjZGM2cDE4CisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZTE5MWU3N2Y1OGY0NzliNTY0ZWM1MzhiNjcxZjk4YWZwLTE0LAorICAgIDB4MS4zN2VmZDhwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgOTMKKyAgICAtMHgxLmUxOTFlNzdmNThmNDc5YjU2NGVjNTM4YjY3MWY5OGFmcC0xNCwKKyAgICAtMHgxLjM3ZWZkOHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS5mZmZlOTc0ZGNlYjEwZDQ4NzdhNzViYzc3ODcwZmZlYnAtMSwKKyAgICAweDEuMzhwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIC0weDEuZmZmZTk3NGRjZWIxMGQ0ODc3YTc1YmM3Nzg3MGZmZWJwLTEsCisgICAgLTB4MS4zOHAxMQorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgLTB4MS5iNjNmMmMzZjUzN2IxMGVlYzJmYmYzNDBlNDg5ODY0NHAtMTgsCisgICAgMHgxLjNkNzJiOHAxNQorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLmI2M2YyYzNmNTM3YjEwZWVjMmZiZjM0MGU0ODk4NjQ0cC0xOCwKKyAgICAtMHgxLjNkNzJiOHAxNQorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgLTB4MS5lMDIwOGNmZjE3ZjkxODYyMTg5NDVhZjkyNTZkNzM2Y3AtMSwKKyAgICAweDEuNDQ0YjIwcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS5lMDIwOGNmZjE3ZjkxODYyMTg5NDVhZjkyNTZkNzM2Y3AtMSwKKyAgICAtMHgxLjQ0NGIyMHA3CisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmZmZmZmOTAwMmNmODdkYWRlNmY2MmViNzA5ZGMyYWE3cC0xLAorICAgIDB4MS40NmI3MWVwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIC0weDEuZmZmZmY5MDAyY2Y4N2RhZGU2ZjYyZWI3MDlkYzJhYTdwLTEsCisgICAgLTB4MS40NmI3MWVwNAorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS5jODc1NTgxYTc2MjIxMWRkNWNhYWY5YWJkZTVjZjY1NnAtMjEsCisgICAgMHgxLjRkMDI0MnA3CisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgLTB4MS5jODc1NTgxYTc2MjIxMWRkNWNhYWY5YWJkZTVjZjY1NnAtMjEsCisgICAgLTB4MS40ZDAyNDJwNworICB9LAorICB7IC8vIEVudHJ5IDEwNAorICAgIC0weDEuNmE2Zjc5MDAwMDUzYTM4NDI1NjZmMWUwMThkNjM1OWZwLTEsCisgICAgMHgxLjUxMWU4ZXAyOAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS42YTZmNzkwMDAwNTNhMzg0MjU2NmYxZTAxOGQ2MzU5ZnAtMSwKKyAgICAtMHgxLjUxMWU4ZXAyOAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5mZmZlOWZmYTZiNTY5ZGQ4YzcyMGQ2OGU4MGJkOWE2M3AtMSwKKyAgICAweDEuNTM1NGQwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIC0weDEuZmZmZTlmZmE2YjU2OWRkOGM3MjBkNjhlODBiZDlhNjNwLTEsCisgICAgLTB4MS41MzU0ZDBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjNiNGQ1OGZmZmZmMjkxMjY0NjBmMjU4ZWM0NDIzZTlhcC0xLAorICAgIDB4MS41M2FkNWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAtMHgxLjNiNGQ1OGZmZmZmMjkxMjY0NjBmMjU4ZWM0NDIzZTlhcC0xLAorICAgIC0weDEuNTNhZDVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgLTB4MS5mZmZlYjc2MmU5M2VhZDVhYzcwZjg1MDY0ZmM3OWNmZnAtMSwKKyAgICAweDEuNjBwMworICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIDB4MS5mZmZlYjc2MmU5M2VhZDVhYzcwZjg1MDY0ZmM3OWNmZnAtMSwKKyAgICAtMHgxLjYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIKKyAgICAweDEuMTc3MjM3N2ZmZTViMWY0MzZjMDE0OWUzMjg0NDZmNzRwLTIwLAorICAgIDB4MS42YzZjYmNwNgorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIC0weDEuMTc3MjM3N2ZmZTViMWY0MzZjMDE0OWUzMjg0NDZmNzRwLTIwLAorICAgIC0weDEuNmM2Y2JjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuNzdmZmZkZmZmZmZmZjc4ZDA1NzdkOTU1MjY2M2VhM2VwLTI2LAorICAgIDB4MS43N2ZmZmVwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS43N2ZmZmRmZmZmZmZmNzhkMDU3N2Q5NTUyNjYzZWEzZXAtMjYsCisgICAgLTB4MS43N2ZmZmVwLTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgLTB4MS5mZjA0OTc5Mzg1OTQ2ZDA1NjhjMTUzYmY5ZTEyNWZjY3AtMSwKKyAgICAweDEuNzdmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEuZmYwNDk3OTM4NTk0NmQwNTY4YzE1M2JmOWUxMjVmY2NwLTEsCisgICAgLTB4MS43N2ZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS5mZWI3YTk2YTU3N2Y3MTVmYTdhZDg3ODgyOTRjMDQ1YnAtMSwKKyAgICAweDEuN2ZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAtMHgxLmZlYjdhOTZhNTc3ZjcxNWZhN2FkODc4ODI5NGMwNDVicC0xLAorICAgIC0weDEuN2ZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuZmViN2ViNTQ2NTM1MDk2MTdmYWYzMjY4MzQ0NDM3ZmNwLTEsCisgICAgMHgxLjgwMDFkMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgLTB4MS5mZWI3ZWI1NDY1MzUwOTYxN2ZhZjMyNjgzNDQ0MzdmY3AtMSwKKyAgICAtMHgxLjgwMDFkMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLmZmNjUzNTk5OGVhMDA0ZDQ4NzYzNTk3YjZkZjljZDY1cC0xLAorICAgIDB4MS44MDdmZmVwMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLmZmNjUzNTk5OGVhMDA0ZDQ4NzYzNTk3YjZkZjljZDY1cC0xLAorICAgIC0weDEuODA3ZmZlcDEzCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLmZmNzZlZDlhMTkyZTlhMjEyNmJjZmMwZjMwNjI0MGQ0cC0xLAorICAgIDB4MS44NjZhNDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIC0weDEuZmY3NmVkOWExOTJlOWEyMTI2YmNmYzBmMzA2MjQwZDRwLTEsCisgICAgLTB4MS44NjZhNDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS5hY2U4NDRmMWViNmMzMDc3Mjc3OTI5ZmY0YWRlM2Y0MXAtNSwKKyAgICAweDEuODg2NHAzNQorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIC0weDEuYWNlODQ0ZjFlYjZjMzA3NzI3NzkyOWZmNGFkZTNmNDFwLTUsCisgICAgLTB4MS44ODY0cDM1CisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLmUwZDEwOGYxOTZmZDNjYmNiN2MyYzc2YWVlNzM4MjA1cC01LAorICAgIDB4MS44YTliNTZwMQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIC0weDEuZTBkMTA4ZjE5NmZkM2NiY2I3YzJjNzZhZWU3MzgyMDVwLTUsCisgICAgLTB4MS44YTliNTZwMQorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIC0weDEuNmEwOWFmMDAwNmZlMGI0N2M4MWQ4Njk1YzAxN2E4ZGZwLTEsCisgICAgMHgxLjhlOTZlZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLjZhMDlhZjAwMDZmZTBiNDdjODFkODY5NWMwMTdhOGRmcC0xLAorICAgIC0weDEuOGU5NmVlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAtMHgxLmRkNTlkY2VlY2YzZmJkMDE1ZTllMjliMzdhYWY1MTFhcC05LAorICAgIDB4MS45MWU0MGFwMgorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIDB4MS5kZDU5ZGNlZWNmM2ZiZDAxNWU5ZTI5YjM3YWFmNTExYXAtOSwKKyAgICAtMHgxLjkxZTQwYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgLTB4MS5mYjczZjExODdlNTA1M2JhY2I3NTJiODljNmEzZGU1N3AtOSwKKyAgICAweDEuOTFmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAweDEuZmI3M2YxMTg3ZTUwNTNiYWNiNzUyYjg5YzZhM2RlNTdwLTksCisgICAgLTB4MS45MWZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIC0weDEuNzc3YTVjZjcyY2VjNWZkNjE4OTZjYjRmNDBkMWRlNzlwLTI0LAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS43NzdhNWNmNzJjZWM1ZmQ2MTg5NmNiNGY0MGQxZGU3OXAtMjQsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuZmZmZmZmNzlkYjkxNzI2NWU2NzU1NzRiOGQ4M2ZhNmVwLTEsCisgICAgMHgxLjk0ZmQ3Y3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuZmZmZmZmNzlkYjkxNzI2NWU2NzU1NzRiOGQ4M2ZhNmVwLTEsCisgICAgLTB4MS45NGZkN2NwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgMHgxLmZmZmZmZmZmZmZkN2U4MzY3OGEzODMyOWMxZTA5M2I1cC0xLAorICAgIDB4MS45ODY4MzRwNgorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuZmZmZmZmZmZmZmQ3ZTgzNjc4YTM4MzI5YzFlMDkzYjVwLTEsCisgICAgLTB4MS45ODY4MzRwNgorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS4xNmFlMjkxNDRkM2FlYjBlZjc0MWMzZTJhYmEzNDA3OHAtMjQsCisgICAgMHgxLjlhNDhkZXAxNworICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuMTZhZTI5MTQ0ZDNhZWIwZWY3NDFjM2UyYWJhMzQwNzhwLTI0LAorICAgIC0weDEuOWE0OGRlcDE3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLmZmN2FkMzk4ZmQ1ODk1MjhiYjA3ZGIxZTBiZGQ0MGY1cC0xLAorICAgIDB4MS45ZGFhMzhwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuZmY3YWQzOThmZDU4OTUyOGJiMDdkYjFlMGJkZDQwZjVwLTEsCisgICAgLTB4MS45ZGFhMzhwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS45ZGY1ZjEwMDAwMDAyZjRiNzQyMWRmZTllOTU1YjYwZHAtNCwKKyAgICAweDEuOWVhYjJlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS45ZGY1ZjEwMDAwMDAyZjRiNzQyMWRmZTllOTU1YjYwZHAtNCwKKyAgICAtMHgxLjllYWIyZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS43NmRjZjcwMDAwNTNjNDI4ZTMwZWY5OWQ5Y2Y5MWFjY3AtMSwKKyAgICAweDEuYTQ5OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0weDEuNzZkY2Y3MDAwMDUzYzQyOGUzMGVmOTlkOWNmOTFhY2NwLTEsCisgICAgLTB4MS5hNDk5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLmE5ZDQ1MTAwMDBhMmE4MmMzOTFhOWIzNjE4NmVhZDY1cC01LAorICAgIDB4MS5hYTA1NzhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLmE5ZDQ1MTAwMDBhMmE4MmMzOTFhOWIzNjE4NmVhZDY1cC01LAorICAgIC0weDEuYWEwNTc4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLjZhMDk3ZGNjOGIxMzU2NzEyZmMyMGY4MmM0Zjg3ZTRkcC0xLAorICAgIDB4MS5iNGFlNzBwNgorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuNmEwOTdkY2M4YjEzNTY3MTJmYzIwZjgyYzRmODdlNGRwLTEsCisgICAgLTB4MS5iNGFlNzBwNgorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDB4MS44NDk5MjZmZmZmZWI5NTg2MDI2MmE5OTc3MGE4YzljM3AtMSwKKyAgICAweDEuYjkzNmRhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS44NDk5MjZmZmZmZWI5NTg2MDI2MmE5OTc3MGE4YzljM3AtMSwKKyAgICAtMHgxLmI5MzZkYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIC0weDEuZGFjNDBlZjFlMDQwMzE1ZjA3NTE5YTk5YzIwMzRmZmZwLTUsCisgICAgMHgxLmJhMjc4NHA4MgorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIDB4MS5kYWM0MGVmMWUwNDAzMTVmMDc1MTlhOTljMjAzNGZmZnAtNSwKKyAgICAtMHgxLmJhMjc4NHA4MgorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS44MTA3NGIwMzQ2ZjA3MzkwMzk1YjRlZTJiNTBiM2Y5NHAtMTQsCisgICAgMHgxLmJkYjQ0YXAxMDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMHgxLjgxMDc0YjAzNDZmMDczOTAzOTViNGVlMmI1MGIzZjk0cC0xNCwKKyAgICAtMHgxLmJkYjQ0YXAxMDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEuMjM1ZGViYjcyN2I5NWRhYWVjMTgzYmZhNGU3MjhiZTFwLTksCisgICAgMHgxLmJkYmVmZXAxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAtMHgxLjIzNWRlYmI3MjdiOTVkYWFlYzE4M2JmYTRlNzI4YmUxcC05LAorICAgIC0weDEuYmRiZWZlcDExOQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEuOTk2NjNkYTk0ZGI1MjkwNzMwYjAyOTUxMzM3MGU4NjNwLTIzLAorICAgIDB4MS5iZWVlZWVwODAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAweDEuOTk2NjNkYTk0ZGI1MjkwNzMwYjAyOTUxMzM3MGU4NjNwLTIzLAorICAgIC0weDEuYmVlZWVlcDgwCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgLTB4MS42MmZhYTBmZmRjNTVhNGM1NGYxMjI5ZmMwMzAyYmQ1ZnAtMiwKKyAgICAweDEuYmY2ZmQwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAweDEuNjJmYWEwZmZkYzU1YTRjNTRmMTIyOWZjMDMwMmJkNWZwLTIsCisgICAgLTB4MS5iZjZmZDBwMQorICB9LAorICB7IC8vIEVudHJ5IDE2NgorICAgIC0weDEuYzZkNDQ0ZGU2YjkwYzdiOGI0MzQwMmVmNzQ5YTRjM2RwLTUsCisgICAgMHgxLmJmZmZmZXA0NQorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIDB4MS5jNmQ0NDRkZTZiOTBjN2I4YjQzNDAyZWY3NDlhNGMzZHAtNSwKKyAgICAtMHgxLmJmZmZmZXA0NQorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS5mZmZmZmZmZmZmZmZhM2M3NjU3Yjg1ZTViNDRiYmQ0NHAtMSwKKyAgICAweDEuYzQ2M2FjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmEzYzc2NTdiODVlNWI0NGJiZDQ0cC0xLAorICAgIC0weDEuYzQ2M2FjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAweDEuOTEzNjQ4ZmZmZjllMjM3ODdmNWRkYjc1ZGM1NWVlYzhwLTEsCisgICAgMHgxLmNkMGEwY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEuOTEzNjQ4ZmZmZjllMjM3ODdmNWRkYjc1ZGM1NWVlYzhwLTEsCisgICAgLTB4MS5jZDBhMGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAtMHgxLmExZDQ3Y2ZkMjgyNWYxYzNlMjgzNWU5NDNiOTY2OWVmcC01LAorICAgIDB4MS5kNDE4MThwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAweDEuYTFkNDdjZmQyODI1ZjFjM2UyODM1ZTk0M2I5NjY5ZWZwLTUsCisgICAgLTB4MS5kNDE4MThwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuNmEyMmRiMDAwMDM2YTk1OTJkYjcyMmUyZDliZTQ4NjlwLTEsCisgICAgMHgxLmU2Mjk0NHA4CisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS42YTIyZGIwMDAwMzZhOTU5MmRiNzIyZTJkOWJlNDg2OXAtMSwKKyAgICAtMHgxLmU2Mjk0NHA4CisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLmQ0ZGU4YWZmZmZmZmQ5NmY4M2JhNDQyZmRmMmY3MTAxcC0yLAorICAgIDB4MS5lNzA2MWVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLmQ0ZGU4YWZmZmZmZmQ5NmY4M2JhNDQyZmRmMmY3MTAxcC0yLAorICAgIC0weDEuZTcwNjFlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgLTB4MS5lM2NlMDRmMWI5NGUxZDgyZjAwMDFjYjk5ZmVkOTI3NXAtNSwKKyAgICAweDEuZTdmZmZlcDk1CisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLmUzY2UwNGYxYjk0ZTFkODJmMDAwMWNiOTlmZWQ5Mjc1cC01LAorICAgIC0weDEuZTdmZmZlcDk1CisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLmU5NzM2MmZmZmY1ZDQ2ZTFlOThjOGE4Yzk0NDc4YTQ0cC01LAorICAgIDB4MS5lOWJlMGVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAtMHgxLmU5NzM2MmZmZmY1ZDQ2ZTFlOThjOGE4Yzk0NDc4YTQ0cC01LAorICAgIC0weDEuZTliZTBlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgLTB4MS41Nzk3NWNmZWZkN2U3MDVmM2ViMDNhOWU4ZTQ4YTE4Y3AtMSwKKyAgICAweDEuZWIxZGJlcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjU3OTc1Y2ZlZmQ3ZTcwNWYzZWIwM2E5ZThlNDhhMThjcC0xLAorICAgIC0weDEuZWIxZGJlcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgLTB4MS42YTEwMTJlNGI2OWIwODZjM2RjMDQyN2FiYTgwYmM5NnAtMSwKKyAgICAweDEuZWIxZThhcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgMHgxLjZhMTAxMmU0YjY5YjA4NmMzZGMwNDI3YWJhODBiYzk2cC0xLAorICAgIC0weDEuZWIxZThhcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMTg2CisgICAgLTB4MS45ZjQyZTRmNDY3Njk2YWQzNmE3MGFjOGI3MGUwY2QzMnAtMSwKKyAgICAweDEuZWZmYzhhcDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTg3CisgICAgMHgxLjlmNDJlNGY0Njc2OTZhZDM2YTcwYWM4YjcwZTBjZDMycC0xLAorICAgIC0weDEuZWZmYzhhcDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLmNiYWRiOGVmOGYzZTM1OGQyYjhiZTQ5M2MxMWI1N2IxcC02LAorICAgIDB4MS5mNWMxYzRwMworICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuY2JhZGI4ZWY4ZjNlMzU4ZDJiOGJlNDkzYzExYjU3YjFwLTYsCisgICAgLTB4MS5mNWMxYzRwMworICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS41YWVlMmNmZmYwODdlNTlkZmNkODU2Y2JmZTQ1NDRkY3AtMiwKKyAgICAweDEuZjdmZmZlcDExMQorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuNWFlZTJjZmZmMDg3ZTU5ZGZjZDg1NmNiZmU0NTQ0ZGNwLTIsCisgICAgLTB4MS5mN2ZmZmVwMTExCisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLjI2ZGI3ZDAwYmIwNjc0M2ZlZTU4MWE4ODhlMjM3OGY4cC0xLAorICAgIDB4MS5mOTI1MThwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLjI2ZGI3ZDAwYmIwNjc0M2ZlZTU4MWE4ODhlMjM3OGY4cC0xLAorICAgIC0weDEuZjkyNTE4cDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZlYmNjZjc4YTQzMmE2Nzg1OGJicC0xLAorICAgIDB4MS5mOWNiZTJwNworICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmViY2NmNzhhNDMyYTY3ODU4YmJwLTEsCisgICAgLTB4MS5mOWNiZTJwNworICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIC0weDEuMWZhM2JiOWEwN2U3N2ZkNjY3ZjQ5MzYyMmM5MDI5ZmZwLTI3LAorICAgIDB4MS5mOWNiZTJwOAorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIDB4MS4xZmEzYmI5YTA3ZTc3ZmQ2NjdmNDkzNjIyYzkwMjlmZnAtMjcsCisgICAgLTB4MS5mOWNiZTJwOAorICB9LAorICB7IC8vIEVudHJ5IDE5OAorICAgIDB4MS45ZWMyOWFmMWUxNWRkNjdmMTdlMzIwNDdkOWZmOGRiN3AtMSwKKyAgICAweDEuZmFkMTYwcDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS45ZWMyOWFmMWUxNWRkNjdmMTdlMzIwNDdkOWZmOGRiN3AtMSwKKyAgICAtMHgxLmZhZDE2MHAyNAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS5mYmMyNzgwZjRiZjhiYzI0ZDNmY2NjMTdmOWU3N2YzMnAtMSwKKyAgICAweDEuZmVlNWJhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLmZiYzI3ODBmNGJmOGJjMjRkM2ZjY2MxN2Y5ZTc3ZjMycC0xLAorICAgIC0weDEuZmVlNWJhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuYThkN2MxMDAwNWFkYThmN2Q0OTEyYmY2MDNhMzE1ZmVwLTEsCisgICAgMHgxLmZmMGNhZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0weDEuYThkN2MxMDAwNWFkYThmN2Q0OTEyYmY2MDNhMzE1ZmVwLTEsCisgICAgLTB4MS5mZjBjYWVwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAtMHgxLjU2YjAyZDAwMDQ1ZGExNDZlODU1ZDM3NzBjOTY0NmZhcC0xLAorICAgIDB4MS5mZjg0MDZwODAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEuNTZiMDJkMDAwNDVkYTE0NmU4NTVkMzc3MGM5NjQ2ZmFwLTEsCisgICAgLTB4MS5mZjg0MDZwODAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuYzAyNzQ5ZmY0YzRjOGZjYmI0NzE2MTA4ODRkOGUwYmRwLTMsCisgICAgMHgxLmZmOWZmZXA0MAorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0weDEuYzAyNzQ5ZmY0YzRjOGZjYmI0NzE2MTA4ODRkOGUwYmRwLTMsCisgICAgLTB4MS5mZjlmZmVwNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAtMHgxLjM4OGU3MTAwNTgzNDJhYTViNjlhZmUzZTIwOTBhNDU3cC0xLAorICAgIDB4MS5mZmJkNThwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAweDEuMzg4ZTcxMDA1ODM0MmFhNWI2OWFmZTNlMjA5MGE0NTdwLTEsCisgICAgLTB4MS5mZmJkNThwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuOWU4MDVhZWYzMjgyZDRjZWQ0MDI3MjcwMmYxNzRmNTNwLTYsCisgICAgMHgxLmZmZGQ3ZXA3MgorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuOWU4MDVhZWYzMjgyZDRjZWQ0MDI3MjcwMmYxNzRmNTNwLTYsCisgICAgLTB4MS5mZmRkN2VwNzIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAtMHgxLmZiM2FlZjAxNmI4Y2U2NjM3MGFiNjE5NzRlOGVlMGIycC02LAorICAgIDB4MS5mZmRmZmVwOTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAweDEuZmIzYWVmMDE2YjhjZTY2MzcwYWI2MTk3NGU4ZWUwYjJwLTYsCisgICAgLTB4MS5mZmRmZmVwOTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAtMHgxLmU0MzE0OGRhNTNmNDIyMzU2ZWRkM2JkYmFlZjNiMmZhcC0zLAorICAgIDB4MS5mZmY3N2VwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEuZTQzMTQ4ZGE1M2Y0MjIzNTZlZGQzYmRiYWVmM2IyZmFwLTMsCisgICAgLTB4MS5mZmY3N2VwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAweDEuZDZlMTg2NDc2NGQyNGI0ZGUxOGNiNGMxOTAzYTc5NTdwLTEsCisgICAgMHgxLmZmZmUzZXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS5kNmUxODY0NzY0ZDI0YjRkZTE4Y2I0YzE5MDNhNzk1N3AtMSwKKyAgICAtMHgxLmZmZmUzZXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgLTB4MS5mZmZmNDljNTJmNTg1ZTY3MmQ3MTg1NDQ4ZDQ2ZTk3N3AtMSwKKyAgICAweDEuZmZmZTNlcDQxCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgMHgxLmZmZmY0OWM1MmY1ODVlNjcyZDcxODU0NDhkNDZlOTc3cC0xLAorICAgIC0weDEuZmZmZTNlcDQxCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLmFmYzZhOTljYmFkZTgzYjZiZTkyYjJjYTQ1MTY3OTg4cC01LAorICAgIDB4MS5mZmZlM2VwNDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLmFmYzZhOTljYmFkZTgzYjZiZTkyYjJjYTQ1MTY3OTg4cC01LAorICAgIC0weDEuZmZmZTNlcDQ1CisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgLTB4MS41M2EyOWU1NGI0YjE0MjgzMGRjNzk2YzllZDVmYzU5YnAtOSwKKyAgICAweDEuZmZmZTdlcDEwMworICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIDB4MS41M2EyOWU1NGI0YjE0MjgzMGRjNzk2YzllZDVmYzU5YnAtOSwKKyAgICAtMHgxLmZmZmU3ZXAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAtMHgxLjQ3ZTg5ZmQ1MDQ3YzRjOTRiNWMwZjYxZTM3NWYyODQ5cC0xMSwKKyAgICAweDEuZmZmZTdlcDEyNgorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS40N2U4OWZkNTA0N2M0Yzk0YjVjMGY2MWUzNzVmMjg0OXAtMTEsCisgICAgLTB4MS5mZmZlN2VwMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLmE0MjU2YzkwYzM3NDEwY2U5NTdjMGIyNTAxOTM3NjE4cC04LAorICAgIDB4MS5mZmZmOGVwNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMHgxLmE0MjU2YzkwYzM3NDEwY2U5NTdjMGIyNTAxOTM3NjE4cC04LAorICAgIC0weDEuZmZmZjhlcDQwCisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgLTB4MS5kMmJkODRmNTAxOGY0MGM5NGM3ZjZlNDU1MmVmOGU5MXAtMywKKyAgICAweDEuZmZmZmE0cDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLmQyYmQ4NGY1MDE4ZjQwYzk0YzdmNmU0NTUyZWY4ZTkxcC0zLAorICAgIC0weDEuZmZmZmE0cDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgMHgxLmZmYWE4Y2ZmZDM4MWViZTdiMmQ2YTNlNjliZGEzODg3cC01LAorICAgIDB4MS5mZmZmZGVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAtMHgxLmZmYWE4Y2ZmZDM4MWViZTdiMmQ2YTNlNjliZGEzODg3cC01LAorICAgIC0weDEuZmZmZmRlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLmZhOGQzY2EyM2JlMmE4NGQzN2YwYzA0ZTk3YmFiNWU1cC0xLAorICAgIDB4MS5mZmZmZjBwMgorICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEuZmE4ZDNjYTIzYmUyYTg0ZDM3ZjBjMDRlOTdiYWI1ZTVwLTEsCisgICAgLTB4MS5mZmZmZjBwMgorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIC0weDEuZmY5NzhlY2QzMjBhZDJkNzBjMjAwODI0ZTQwMTA4NDNwLTEsCisgICAgMHgxLmZmZmZmMHA3CisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLmZmOTc4ZWNkMzIwYWQyZDcwYzIwMDgyNGU0MDEwODQzcC0xLAorICAgIC0weDEuZmZmZmYwcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuZDE4Zjc2ZmZjNmU0YmEwYTMxMzRlNWJlMjFiNWJjOGZwLTEsCisgICAgMHgxLmZmZmZmNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS5kMThmNzZmZmM2ZTRiYTBhMzEzNGU1YmUyMWI1YmM4ZnAtMSwKKyAgICAtMHgxLmZmZmZmNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLmVhZWU4MjAwYjhkYmE1MTM4ZjlhZGE0MmEyMmFiMzE5cC0yLAorICAgIDB4MS5mZmZmZmFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAtMHgxLmVhZWU4MjAwYjhkYmE1MTM4ZjlhZGE0MmEyMmFiMzE5cC0yLAorICAgIC0weDEuZmZmZmZhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgLTB4MS4wYjMzNjY1MDg5NTc1MjBkOWRjODhkN2MwOTMzN2UyNHAtMSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIDB4MS4wYjMzNjY1MDg5NTc1MjBkOWRjODhkN2MwOTMzN2UyNHAtMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgLTB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNiwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIC0weDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI2LAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNiwKKyAgICAtMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLjk5OTk5OWQ0NGYzMDU4Yzc4OTAxNGI3ZDBlMjJmZWMzcC0xMywKKyAgICAweDEuOTk5OTlhcC0xMworICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIC0weDEuOTk5OTk5ZDQ0ZjMwNThjNzg5MDE0YjdkMGUyMmZlYzNwLTEzLAorICAgIC0weDEuOTk5OTlhcC0xMworICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS45OTk5OTk1MTNjYzE3M2U1MWJiOTk1NWIwNjZmMWRiOHAtMTIsCisgICAgMHgxLjk5OTk5YXAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAtMHgxLjk5OTk5OTUxM2NjMTczZTUxYmI5OTU1YjA2NmYxZGI4cC0xMiwKKyAgICAtMHgxLjk5OTk5YXAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAweDEuMzMzMzMyZDkxNjg1MzIxZTVmYzM5N2QyMGE1YWYxZTZwLTExLAorICAgIDB4MS4zMzMzMzRwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgLTB4MS4zMzMzMzJkOTE2ODUzMjFlNWZjMzk3ZDIwYTVhZjFlNnAtMTEsCisgICAgLTB4MS4zMzMzMzRwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgMHgxLjk5OTk5NzQ0ZjMwNmRjMDNlOWVmNzA4OTdmNzgyOTllcC0xMSwKKyAgICAweDEuOTk5OTlhcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI2NgorICAgIC0weDEuOTk5OTk3NDRmMzA2ZGMwM2U5ZWY3MDg5N2Y3ODI5OWVwLTExLAorICAgIC0weDEuOTk5OTlhcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS5mZmZmZmFhYWFhYWVlZWVlZWQ0ZWQ0ZWRhYjRjN2JkNnAtMTEsCisgICAgMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAtMHgxLmZmZmZmYWFhYWFhZWVlZWVlZDRlZDRlZGFiNGM3YmQ2cC0xMSwKKyAgICAtMHgxLnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEuMzMzMzJmNjQ1YTE4YzNiMGNjZmMwYTNjZjdiMmU5MWJwLTEwLAorICAgIDB4MS4zMzMzMzRwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgLTB4MS4zMzMzMmY2NDVhMThjM2IwY2NmYzBhM2NmN2IyZTkxYnAtMTAsCisgICAgLTB4MS4zMzMzMzRwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLjY2NjY2MGFlYzMzMDgyMWM3YTEwMGNmNDg4YzM4MGVicC0xMCwKKyAgICAweDEuNjY2NjY4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIC0weDEuNjY2NjYwYWVjMzMwODIxYzdhMTAwY2Y0ODhjMzgwZWJwLTEwLAorICAgIC0weDEuNjY2NjY4cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS45OTk5OTExM2NjMDM0MTQ0ZmRiZGM4YTFkYzcxMzI1M3AtMTAsCisgICAgMHgxLjk5OTk5Y3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAtMHgxLjk5OTk5MTEzY2MwMzQxNDRmZGJkYzhhMWRjNzEzMjUzcC0xMCwKKyAgICAtMHgxLjk5OTk5Y3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuY2NjY2JjNzJiMDVkZDA5NTFhOWM1ZTY1NTYwYzU2ZTNwLTEwLAorICAgIDB4MS5jY2NjY2NwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgLTB4MS5jY2NjYmM3MmIwNWRkMDk1MWE5YzVlNjU1NjBjNTZlM3AtMTAsCisgICAgLTB4MS5jY2NjY2NwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjA2NjVhZTM2MTViNWI3ZGU1Mjc5ODA2NGRmYzU5YjI5cC03LAorICAgIDB4MS4wNjY2NjZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAtMHgxLjA2NjVhZTM2MTViNWI3ZGU1Mjc5ODA2NGRmYzU5YjI5cC03LAorICAgIC0weDEuMDY2NjY2cC03CisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLmNjYzhlOGFlOTI1ODZkOGQ2NmI2YWQwYWVkY2IwZDk0cC03LAorICAgIDB4MS5jY2NjY2NwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAtMHgxLmNjYzhlOGFlOTI1ODZkOGQ2NmI2YWQwYWVkY2IwZDk0cC03LAorICAgIC0weDEuY2NjY2NjcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLjQ5OTNlNzBmN2IxN2MxMGFmOWY5N2ZjN2IzM2I4MjJicC02LAorICAgIDB4MS40OTk5OThwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAtMHgxLjQ5OTNlNzBmN2IxN2MxMGFmOWY5N2ZjN2IzM2I4MjJicC02LAorICAgIC0weDEuNDk5OTk4cC02CisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLmFjYzA0M2Y4YjJkODlhZDUxNDNjMDMwZTk3NjZmYzExcC02LAorICAgIDB4MS5hY2NjY2NwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAtMHgxLmFjYzA0M2Y4YjJkODlhZDUxNDNjMDMwZTk3NjZmYzExcC02LAorICAgIC0weDEuYWNjY2NjcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgMHgxLjA3ZjQ0ZDY3Y2Y0MWFmYmMwYzk1MTA4Yjk5ZjkxYjAxcC01LAorICAgIDB4MS4wOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIC0weDEuMDdmNDRkNjdjZjQxYWZiYzBjOTUxMDhiOTlmOTFiMDFwLTUsCisgICAgLTB4MS4wOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIDB4MS4zOTg1ZmVhZDQ0ZmEyYjg1MWU2NTFhY2JhMzY5ZDc2OXAtNSwKKyAgICAweDEuMzk5OTlhcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgLTB4MS4zOTg1ZmVhZDQ0ZmEyYjg1MWU2NTFhY2JhMzY5ZDc2OXAtNSwKKyAgICAtMHgxLjM5OTk5YXAtNQorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIDB4MS42YjE0YmViNWQ0MGQ3NDUwOTYyNDdlNTliNjIyODI4YnAtNSwKKyAgICAweDEuNmIzMzM0cC01CisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgLTB4MS42YjE0YmViNWQ0MGQ3NDUwOTYyNDdlNTliNjIyODI4YnAtNSwKKyAgICAtMHgxLjZiMzMzNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIDB4MS45Y2EwMTY3MWE3OTk1ZmM5N2NlYmQ2OTcyOWNjNDMwOXAtNSwKKyAgICAweDEuOWNjY2NlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgLTB4MS45Y2EwMTY3MWE3OTk1ZmM5N2NlYmQ2OTcyOWNjNDMwOXAtNSwKKyAgICAtMHgxLjljY2NjZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDB4MS5jZTI3OGNkOWViMmNiZDBjNmE0ZTEyNzlmNjkwZTg1NnAtNSwKKyAgICAweDEuY2U2NjY2cC01CisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgLTB4MS5jZTI3OGNkOWViMmNiZDBjNmE0ZTEyNzlmNjkwZTg1NnAtNSwKKyAgICAtMHgxLmNlNjY2NnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIDB4MS40M2MxZTk5NzIzOTFhYThlY2Q4YTljY2JhOTA3OTIwYXAtMSwKKyAgICAweDEuNWU3ZmM0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgLTB4MS40M2MxZTk5NzIzOTFhYThlY2Q4YTljY2JhOTA3OTIwYXAtMSwKKyAgICAtMHgxLjVlN2ZjNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIDB4MS5lZTNkNmJiMjFjNjRiMjM4MmVmY2ZmMGNkZjMwY2UwYnAtMSwKKyAgICAweDEuNGU3ZmM0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAtMHgxLmVlM2Q2YmIyMWM2NGIyMzgyZWZjZmYwY2RmMzBjZTBicC0xLAorICAgIC0weDEuNGU3ZmM0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAweDEuZGY4ZTIzMjNlNGJmMWE1MzhhMTAwZWMxYmYzNDk0YTlwLTEsCisgICAgMHgxLmVkYmZhNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgLTB4MS5kZjhlMjMyM2U0YmYxYTUzOGExMDBlYzFiZjM0OTRhOXAtMSwKKyAgICAtMHgxLmVkYmZhNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgMHgxLjFkMzQ3YWEwMmZlYjNiYjE3NTBkMjU1MDk0MzVkYTg4cC0xLAorICAgIDB4MS40NjdmYzRwMQorICB9LAorICB7IC8vIEVudHJ5IDMwMgorICAgIC0weDEuMWQzNDdhYTAyZmViM2JiMTc1MGQyNTUwOTQzNWRhODhwLTEsCisgICAgLTB4MS40NjdmYzRwMQorICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIC0weDEuZmZlYTA4ZTFjOTdmNGM0ZGUwMTk2MWNjM2U3YjA0ZGNwLTYsCisgICAgMHgxLjk2MWZiNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMHgxLmZmZWEwOGUxYzk3ZjRjNGRlMDE5NjFjYzNlN2IwNGRjcC02LAorICAgIC0weDEuOTYxZmI0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAtMHgxLjM3MzRjYmNlZDljMGY0ODRlNWY3NjJlMDAyMTZlNjIwcC0xLAorICAgIDB4MS5lNWJmYTRwMQorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDB4MS4zNzM0Y2JjZWQ5YzBmNDg0ZTVmNzYyZTAwMjE2ZTYyMHAtMSwKKyAgICAtMHgxLmU1YmZhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzA3CisgICAgLTB4MS5lOWQyNTkyYmVjMTBjM2FjYjE1YzU4NTIyMzlhMmFhOHAtMSwKKyAgICAweDEuMWFhZmNhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuZTlkMjU5MmJlYzEwYzNhY2IxNWM1ODUyMjM5YTJhYThwLTEsCisgICAgLTB4MS4xYWFmY2FwMgorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIC0weDEuZTRlY2UyMDhkMGM0OTEzYWIwMTljYWIwY2U5Yzc4NWVwLTEsCisgICAgMHgxLjQyN2ZjMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMHgxLmU0ZWNlMjA4ZDBjNDkxM2FiMDE5Y2FiMGNlOWM3ODVlcC0xLAorICAgIC0weDEuNDI3ZmMycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAtMHgxLjJhNWEwMmQzOTJiNTRmNjQxYTBkODhiZDRhYzZjMmUxcC0xLAorICAgIDB4MS42YTRmYmFwMgorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDB4MS4yYTVhMDJkMzkyYjU0ZjY0MWEwZDg4YmQ0YWM2YzJlMXAtMSwKKyAgICAtMHgxLjZhNGZiYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgLTB4MS4yNjMxMjNkZjIyZDEzZWQzMjljNjY1YzgzYzBlNzFlOHAtMSwKKyAgICAweDEuNmFmMmYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuMjYzMTIzZGYyMmQxM2VkMzI5YzY2NWM4M2MwZTcxZThwLTEsCisgICAgLTB4MS42YWYyZjBwMgorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIC0weDEuZTE4ZTY3YjUwOGZmYzllNDJmNmM5ZTcyZjhlNTQ1ZjNwLTEsCisgICAgMHgxLjQzYzYyYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLmUxOGU2N2I1MDhmZmM5ZTQyZjZjOWU3MmY4ZTU0NWYzcC0xLAorICAgIC0weDEuNDNjNjJhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAtMHgxLmVlMGU4MGVjOWQxNTYyYzE3YTZjZjYwOGFmOWIwZWQ0cC0xLAorICAgIDB4MS4xYzk5NjRwMgorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS5lZTBlODBlYzlkMTU2MmMxN2E2Y2Y2MDhhZjliMGVkNHAtMSwKKyAgICAtMHgxLjFjOTk2NHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgLTB4MS40NzI3Njg2MzdlYTg4NjZhNjUyMDk4YTQzYWE2ODhhNnAtMSwKKyAgICAweDEuZWFkOTNjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuNDcyNzY4NjM3ZWE4ODY2YTY1MjA5OGE0M2FhNjg4YTZwLTEsCisgICAgLTB4MS5lYWQ5M2NwMQorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIC0weDEuNGJhMjRmNjMyNWYyMTQyMGU3YzQ4ZDRmOTFlMjgwNjRwLTQsCisgICAgMHgxLjljN2ZiMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgMHgxLjRiYTI0ZjYzMjVmMjE0MjBlN2M0OGQ0ZjkxZTI4MDY0cC00LAorICAgIC0weDEuOWM3ZmIwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAweDEuMDM0YzY0MzI5NTE1M2FhZmZlNWQ5YTBmMjllOTI4NDRwLTEsCisgICAgMHgxLjRlMjYyNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgLTB4MS4wMzRjNjQzMjk1MTUzYWFmZmU1ZDlhMGYyOWU5Mjg0NHAtMSwKKyAgICAtMHgxLjRlMjYyNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgMHgxLmQxZTRkOTZlYWM5MTc1NzRiOTQ4ZTRlYTllMzdiMzZkcC0xLAorICAgIDB4MS5mZjk5MzJwMAorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIC0weDEuZDFlNGQ5NmVhYzkxNzU3NGI5NDhlNGVhOWUzN2IzNmRwLTEsCisgICAgLTB4MS5mZjk5MzJwMAorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIDB4MS5mNzUwMWUwMDJiY2FmYjg5N2Y5MzE5MzFkM2E1N2FmZHAtMSwKKyAgICAweDEuNjJlNjFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAtMHgxLmY3NTAxZTAwMmJjYWZiODk3ZjkzMTkzMWQzYTU3YWZkcC0xLAorICAgIC0weDEuNjJlNjFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuNjVmN2Q2NmVmNjU5MWNmYzUxYWIyOWRjMjA4NmQzZTdwLTEsCisgICAgMHgxLjhjNjYyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIC0weDEuNjVmN2Q2NmVmNjU5MWNmYzUxYWIyOWRjMjA4NmQzZTdwLTEsCisgICAgLTB4MS44YzY2MmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAtMHgxLmZlMDQzZjg3NWM2ZWQ0YTJjMWI4ZDY5YTA5ZmNmNTc4cC0xLAorICAgIC0weDEuYThhYTFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuZmUwNDNmODc1YzZlZDRhMmMxYjhkNjlhMDlmY2Y1NzhwLTEsCisgICAgMHgxLmE4YWExY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgLTB4MS5mZmYxOGYzMTNlNjZmMWFlMjVmODlhNWY3YTFmODRjNHAtMSwKKyAgICAtMHgxLjk1ZWM4YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLmZmZjE4ZjMxM2U2NmYxYWUyNWY4OWE1ZjdhMWY4NGM0cC0xLAorICAgIDB4MS45NWVjOGFwMAorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIC0weDEuZmYyMGQ5MjBiOWU5YzIzMTU0Zjk3ZTJmMzQyYTI4ODRwLTEsCisgICAgLTB4MS44MzJlZjhwMAorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIDB4MS5mZjIwZDkyMGI5ZTljMjMxNTRmOTdlMmYzNDJhMjg4NHAtMSwKKyAgICAweDEuODMyZWY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAtMHgxLmZiOTMzYjg5ZDdkYjMyODZlZWQwY2ZlYWJlZTk4ODc1cC0xLAorICAgIC0weDEuNzA3MTY2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuZmI5MzNiODlkN2RiMzI4NmVlZDBjZmVhYmVlOTg4NzVwLTEsCisgICAgMHgxLjcwNzE2NnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgLTB4MS5mNTRkOTVjNTA1OGI3ZGM5OTcyYWI2Zjk5MjhjYTA0M3AtMSwKKyAgICAtMHgxLjVkYjNkNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMHgxLmY1NGQ5NWM1MDU4YjdkYzk5NzJhYjZmOTkyOGNhMDQzcC0xLAorICAgIDB4MS41ZGIzZDRwMAorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIC0weDEuZWM1ODgxYTA5YzQ2YWFlMDIwY2Q5MDM2MDk4YTE5NmVwLTEsCisgICAgLTB4MS40YWY2NDJwMAorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIDB4MS5lYzU4ODFhMDljNDZhYWUwMjBjZDkwMzYwOThhMTk2ZXAtMSwKKyAgICAweDEuNGFmNjQycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAtMHgxLmUwYzA0Nzk1OTE5ZDk2MWE1ZTgzZTUwNWRmMzFjNjI0cC0xLAorICAgIC0weDEuMzgzOGIwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuZTBjMDQ3OTU5MTlkOTYxYTVlODNlNTA1ZGYzMWM2MjRwLTEsCisgICAgMHgxLjM4MzhiMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ1CisgICAgLTB4MS5kMjk0Y2RlZjdjYzE2MTYzM2EwMmQzZTYyMDU4YmUwZXAtMSwKKyAgICAtMHgxLjI1N2IxZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ2CisgICAgMHgxLmQyOTRjZGVmN2NjMTYxNjMzYTAyZDNlNjIwNThiZTBlcC0xLAorICAgIDB4MS4yNTdiMWVwMAorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIC0weDEuYzFlOTg4Yjk1NjE0YWJkNjVkM2Q4MTFmNWM4ODAzOWJwLTEsCisgICAgLTB4MS4xMmJkOTJwMAorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDB4MS5jMWU5ODhiOTU2MTRhYmQ2NWQzZDgxMWY1Yzg4MDM5YnAtMSwKKyAgICAweDEuMTJiZDkycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAtMHgxLmEyYzI4OTVlZGIwZDRiYTUxY2RiZDUzOTBjYWM0NjhmcC0xLAorICAgIC0weDEuZWE1YzNlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzUwCisgICAgMHgxLmEyYzI4OTVlZGIwZDRiYTUxY2RiZDUzOTBjYWM0NjhmcC0xLAorICAgIDB4MS5lYTVjM2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAtMHgxLjk1ZjA1MTUzNjQ0ZDYwYjk0ZDJmMmU3MDBkZmQzYTM3cC0xLAorICAgIC0weDEuZDRiODdjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzUyCisgICAgMHgxLjk1ZjA1MTUzNjQ0ZDYwYjk0ZDJmMmU3MDBkZmQzYTM3cC0xLAorICAgIDB4MS5kNGI4N2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAtMHgxLjg4NjQ3ZDhhZDJlNDFmYjdjMGFmMGY2NDYxNGM5OTkzcC0xLAorICAgIC0weDEuYmYxNGJhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgMHgxLjg4NjQ3ZDhhZDJlNDFmYjdjMGFmMGY2NDYxNGM5OTkzcC0xLAorICAgIDB4MS5iZjE0YmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAtMHgxLjdhMjUzZjlmODlhN2QzZTRmOWM1NDYzODQxOGU5N2Y2cC0xLAorICAgIC0weDEuYTk3MGY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgMHgxLjdhMjUzZjlmODlhN2QzZTRmOWM1NDYzODQxOGU5N2Y2cC0xLAorICAgIDB4MS5hOTcwZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAtMHgxLjZiMzkxYjM0YWFiODI4ZmJlN2NkN2RjYWY5ZWYzYmQ2cC0xLAorICAgIC0weDEuOTNjZDM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzU4CisgICAgMHgxLjZiMzkxYjM0YWFiODI4ZmJlN2NkN2RjYWY5ZWYzYmQ2cC0xLAorICAgIDB4MS45M2NkMzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAtMHgxLjViYTZlMmZiOTgwZDQ4MmNmMDBlZGU4MGY1NTk3ZmIycC0xLAorICAgIC0weDEuN2UyOTc0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgMHgxLjViYTZlMmZiOTgwZDQ4MmNmMDBlZGU4MGY1NTk3ZmIycC0xLAorICAgIDB4MS43ZTI5NzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAtMHgxLjRiNzViNTk1NGU3MTgwMjA5MDA3MTllMjVhN2VhOTNicC0xLAorICAgIC0weDEuNjg4NWIycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgMHgxLjRiNzViNTk1NGU3MTgwMjA5MDA3MTllMjVhN2VhOTNicC0xLAorICAgIDB4MS42ODg1YjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAtMHgxLjNhYWNmYTUxMDgxMDA1NGM1MmFlMGI2N2QxMTZlYjQwcC0xLAorICAgIC0weDEuNTJlMWYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY0CisgICAgMHgxLjNhYWNmYTUxMDgxMDA1NGM1MmFlMGI2N2QxMTZlYjQwcC0xLAorICAgIDB4MS41MmUxZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAtMHgxLjI5NTQ2NDRjZWI4ZTNhMjQ3OWM4M2FlODRhZjU3ZDNlcC0xLAorICAgIC0weDEuM2QzZTM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgMHgxLjI5NTQ2NDRjZWI4ZTNhMjQ3OWM4M2FlODRhZjU3ZDNlcC0xLAorICAgIDB4MS4zZDNlMzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjcKKyAgICAtMHgxLmZjNzY5YWVjZDI2NWNmZWEwOGUwZmYzMGMyZmJjYWNkcC0yLAorICAgIC0weDEuMGEwYjAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY4CisgICAgMHgxLmZjNzY5YWVjZDI2NWNmZWEwOGUwZmYzMGMyZmJjYWNkcC0yLAorICAgIDB4MS4wYTBiMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICAtMHgxLmM4NTNjNzA0ZTNiOTQzMjIwMzFkNmI0N2FlZjg1M2M5cC0yLAorICAgIC0weDEuZDhmNzIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLmM4NTNjNzA0ZTNiOTQzMjIwMzFkNmI0N2FlZjg1M2M5cC0yLAorICAgIDB4MS5kOGY3MjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICAtMHgxLjkyYWJhODk4MWIyNWRlZGE0Y2MxODE3MjUxNzIzYTFicC0yLAorICAgIC0weDEuOWRkODNjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzcyCisgICAgMHgxLjkyYWJhODk4MWIyNWRlZGE0Y2MxODE3MjUxNzIzYTFicC0yLAorICAgIDB4MS45ZGQ4M2NwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzMKKyAgICAtMHgxLjViYWMwNWUxZTBhN2MyZGUyODBmY2I5M2JlNjdhNGRhcC0yLAorICAgIC0weDEuNjJiOTU4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzc0CisgICAgMHgxLjViYWMwNWUxZTBhN2MyZGUyODBmY2I5M2JlNjdhNGRhcC0yLAorICAgIDB4MS42MmI5NThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzUKKyAgICAtMHgxLjIzODNjYTJiMjQ5ODA3ZDk1MDA1ZDk2Y2ZkYWVjZDZjcC0yLAorICAgIC0weDEuMjc5YTc0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgMHgxLjIzODNjYTJiMjQ5ODA3ZDk1MDA1ZDk2Y2ZkYWVjZDZjcC0yLAorICAgIDB4MS4yNzlhNzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAtMHgxLmQ0YzViYjg3MmVhNTM3NTgzNGNhMGJjYTA4OGQxZDc1cC0zLAorICAgIC0weDEuZDhmNzIwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzc4CisgICAgMHgxLmQ0YzViYjg3MmVhNTM3NTgzNGNhMGJjYTA4OGQxZDc1cC0zLAorICAgIDB4MS5kOGY3MjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAtMHgxLjYwZjNmYTQ2MGI4NTgxMWQyYWU3MTBjZDY5ZWMzNjkwcC0zLAorICAgIC0weDEuNjJiOTU4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgMHgxLjYwZjNmYTQ2MGI4NTgxMWQyYWU3MTBjZDY5ZWMzNjkwcC0zLAorICAgIDB4MS42MmI5NThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODEKKyAgICAtMHgxLmQ3ZWEzZDU2ZTFlNjI0NGM4Nzg2ZDc0ZjE4OWQ5OGFjcC00LAorICAgIC0weDEuZDhmNzIwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgMHgxLmQ3ZWEzZDU2ZTFlNjI0NGM4Nzg2ZDc0ZjE4OWQ5OGFjcC00LAorICAgIDB4MS5kOGY3MjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODMKKyAgICAtMHgxLmQ4YjNkZWJhNmFjNDkzYjA0YjIxMDNhMGRiYWVmMDJmcC01LAorICAgIC0weDEuZDhmNzIwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzg0CisgICAgMHgxLmQ4YjNkZWJhNmFjNDkzYjA0YjIxMDNhMGRiYWVmMDJmcC01LAorICAgIDB4MS5kOGY3MjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAweDEuZDhiM2RlYmE2YWM0OTNiMDRiMjEwM2EwZGJhZWYwMmZwLTUsCisgICAgMHgxLmQ4ZjcyMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDM4NgorICAgIC0weDEuZDhiM2RlYmE2YWM0OTNiMDRiMjEwM2EwZGJhZWYwMmZwLTUsCisgICAgLTB4MS5kOGY3MjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODcKKyAgICAweDEuZDdlYTNkNTZlMWU2MjQ0Yzg3ODZkNzRmMTg5ZDk4YWNwLTQsCisgICAgMHgxLmQ4ZjcyMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIC0weDEuZDdlYTNkNTZlMWU2MjQ0Yzg3ODZkNzRmMTg5ZDk4YWNwLTQsCisgICAgLTB4MS5kOGY3MjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODkKKyAgICAweDEuNjBmM2ZhNDYwYjg1ODExZDJhZTcxMGNkNjllYzM2OTBwLTMsCisgICAgMHgxLjYyYjk1OHAtMworICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIC0weDEuNjBmM2ZhNDYwYjg1ODExZDJhZTcxMGNkNjllYzM2OTBwLTMsCisgICAgLTB4MS42MmI5NThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTEKKyAgICAweDEuZDRjNWJiODcyZWE1Mzc1ODM0Y2EwYmNhMDg4ZDFkNzVwLTMsCisgICAgMHgxLmQ4ZjcyMHAtMworICB9LAorICB7IC8vIEVudHJ5IDM5MgorICAgIC0weDEuZDRjNWJiODcyZWE1Mzc1ODM0Y2EwYmNhMDg4ZDFkNzVwLTMsCisgICAgLTB4MS5kOGY3MjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAweDEuMjM4M2NhMmIyNDk4MDdkOTUwMDVkOTZjZmRhZWNkNmNwLTIsCisgICAgMHgxLjI3OWE3NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIC0weDEuMjM4M2NhMmIyNDk4MDdkOTUwMDVkOTZjZmRhZWNkNmNwLTIsCisgICAgLTB4MS4yNzlhNzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAweDEuNWJhYzA1ZTFlMGE3YzJkZTI4MGZjYjkzYmU2N2E0ZGFwLTIsCisgICAgMHgxLjYyYjk1OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM5NgorICAgIC0weDEuNWJhYzA1ZTFlMGE3YzJkZTI4MGZjYjkzYmU2N2E0ZGFwLTIsCisgICAgLTB4MS42MmI5NThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAweDEuOTJhYmE4OTgxYjI1ZGVkYTRjYzE4MTcyNTE3MjNhMWJwLTIsCisgICAgMHgxLjlkZDgzY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDM5OAorICAgIC0weDEuOTJhYmE4OTgxYjI1ZGVkYTRjYzE4MTcyNTE3MjNhMWJwLTIsCisgICAgLTB4MS45ZGQ4M2NwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTkKKyAgICAweDEuYzg1M2M3MDRlM2I5NDMyMjAzMWQ2YjQ3YWVmODUzYzlwLTIsCisgICAgMHgxLmQ4ZjcyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQwMAorICAgIC0weDEuYzg1M2M3MDRlM2I5NDMyMjAzMWQ2YjQ3YWVmODUzYzlwLTIsCisgICAgLTB4MS5kOGY3MjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAweDEuZmM3NjlhZWNkMjY1Y2ZlYTA4ZTBmZjMwYzJmYmNhY2RwLTIsCisgICAgMHgxLjBhMGIwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIC0weDEuZmM3NjlhZWNkMjY1Y2ZlYTA4ZTBmZjMwYzJmYmNhY2RwLTIsCisgICAgLTB4MS4wYTBiMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAweDEuMjk1NDY0NGNlYjhlM2EyNDc5YzgzYWU4NGFmNTdkM2VwLTEsCisgICAgMHgxLjNkM2UzNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwNAorICAgIC0weDEuMjk1NDY0NGNlYjhlM2EyNDc5YzgzYWU4NGFmNTdkM2VwLTEsCisgICAgLTB4MS4zZDNlMzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAweDEuM2FhZDAwYTA5MjY4YTM5ZGYxNjUzYzcwZGI5MWYxNTdwLTEsCisgICAgMHgxLjUyZTFmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIC0weDEuM2FhZDAwYTA5MjY4YTM5ZGYxNjUzYzcwZGI5MWYxNTdwLTEsCisgICAgLTB4MS41MmUxZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDcKKyAgICAweDEuNGI3NWJiYWUzODhhN2YzNDY2ZTdmMmQ2YmRjZjcyYmJwLTEsCisgICAgMHgxLjY4ODViYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIC0weDEuNGI3NWJiYWUzODhhN2YzNDY2ZTdmMmQ2YmRjZjcyYmJwLTEsCisgICAgLTB4MS42ODg1YmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAweDEuNWJhNmU4ZGIxODMzNDc1NzEyYjlhNDJhMWFkMGQyYzJwLTEsCisgICAgMHgxLjdlMjk3Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIC0weDEuNWJhNmU4ZGIxODMzNDc1NzEyYjlhNDJhMWFkMGQyYzJwLTEsCisgICAgLTB4MS43ZTI5N2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTEKKyAgICAweDEuNmIzOTIwZDgxMTc4Mjg5MjhmZTEwYWM3MGJhNjllNzZwLTEsCisgICAgMHgxLjkzY2QzZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxMgorICAgIC0weDEuNmIzOTIwZDgxMTc4Mjg5MjhmZTEwYWM3MGJhNjllNzZwLTEsCisgICAgLTB4MS45M2NkM2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTMKKyAgICAweDEuN2EyNTQ1MDQ0MzA5ODgzNmM1MjAyMzc1ZGI0Yjg0NjJwLTEsCisgICAgMHgxLmE5NzFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTQKKyAgICAtMHgxLjdhMjU0NTA0NDMwOTg4MzZjNTIwMjM3NWRiNGI4NDYycC0xLAorICAgIC0weDEuYTk3MXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxNQorICAgIDB4MS44ODY0ODJhZTY3OTdiMzgzNjRmNWM3MmNlOWEzYjc2ZnAtMSwKKyAgICAweDEuYmYxNGMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDE2CisgICAgLTB4MS44ODY0ODJhZTY3OTdiMzgzNjRmNWM3MmNlOWEzYjc2ZnAtMSwKKyAgICAtMHgxLmJmMTRjMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxNworICAgIDB4MS45NWYwNTYzMzdhY2MxZDJkNTU3NTI1MjMyZTkxNTQ2N3AtMSwKKyAgICAweDEuZDRiODg0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgLTB4MS45NWYwNTYzMzdhY2MxZDJkNTU3NTI1MjMyZTkxNTQ2N3AtMSwKKyAgICAtMHgxLmQ0Yjg4NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIDB4MS5hMmMyODk1ZWRiMGQ0YmE1MWNkYmQ1MzkwY2FjNDY4ZnAtMSwKKyAgICAweDEuZWE1YzNlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgLTB4MS5hMmMyODk1ZWRiMGQ0YmE1MWNkYmQ1MzkwY2FjNDY4ZnAtMSwKKyAgICAtMHgxLmVhNWMzZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQyMQorICAgIDB4MS5jMWU5ODhiOTU2MTRhYmQ2NWQzZDgxMWY1Yzg4MDM5YnAtMSwKKyAgICAweDEuMTJiZDkycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAtMHgxLmMxZTk4OGI5NTYxNGFiZDY1ZDNkODExZjVjODgwMzlicC0xLAorICAgIC0weDEuMTJiZDkycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAweDEuZDI5NGQyZTA2YjNkMTBhNGRlMjYzMTcyZDUwZjQ0OTdwLTEsCisgICAgMHgxLjI1N2IyNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgLTB4MS5kMjk0ZDJlMDZiM2QxMGE0ZGUyNjMxNzJkNTBmNDQ5N3AtMSwKKyAgICAtMHgxLjI1N2IyNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgMHgxLmUwYzA0YmI2NWJkMzMwMTJiZTcyYTM0MGRmMmMwNDRicC0xLAorICAgIDB4MS4zODM4YjZwMAorICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIC0weDEuZTBjMDRiYjY1YmQzMzAxMmJlNzJhMzQwZGYyYzA0NGJwLTEsCisgICAgLTB4MS4zODM4YjZwMAorICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIDB4MS5lYzU4ODRlYjk5MGMzZGVhYWVlYmQzZjBmODRkNjk2MnAtMSwKKyAgICAweDEuNGFmNjQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAtMHgxLmVjNTg4NGViOTkwYzNkZWFhZWViZDNmMGY4NGQ2OTYycC0xLAorICAgIC0weDEuNGFmNjQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEuZjU0ZDk4MzViMGU2NmUxNzYxMjE2MDI3MjUyMWYzYjBwLTEsCisgICAgMHgxLjVkYjNkYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDMwCisgICAgLTB4MS5mNTRkOTgzNWIwZTY2ZTE3NjEyMTYwMjcyNTIxZjNiMHAtMSwKKyAgICAtMHgxLjVkYjNkYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDMxCisgICAgMHgxLmZiOTMzZDFjZDkzMTY4NWU5MDJlNDAzYTFiYWFlY2ZkcC0xLAorICAgIDB4MS43MDcxNmNwMAorICB9LAorICB7IC8vIEVudHJ5IDQzMgorICAgIC0weDEuZmI5MzNkMWNkOTMxNjg1ZTkwMmU0MDNhMWJhYWVjZmRwLTEsCisgICAgLTB4MS43MDcxNmNwMAorICB9LAorICB7IC8vIEVudHJ5IDQzMworICAgIDB4MS5mZjIwZDlkM2U4OTg0ZmVjMzM5ODJlNDJmNTg4NGYyY3AtMSwKKyAgICAweDEuODMyZWZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzQKKyAgICAtMHgxLmZmMjBkOWQzZTg5ODRmZWMzMzk4MmU0MmY1ODg0ZjJjcC0xLAorICAgIC0weDEuODMyZWZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAweDEuZmZmMThmMDNhNGI3ZTZhYWNmNTFmODM5MzFlODUwNDJwLTEsCisgICAgMHgxLjk1ZWM5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDM2CisgICAgLTB4MS5mZmYxOGYwM2E0YjdlNmFhY2Y1MWY4MzkzMWU4NTA0MnAtMSwKKyAgICAtMHgxLjk1ZWM5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDM3CisgICAgMHgxLmZlMDQzZjg3NWM2ZWQ0YTJjMWI4ZDY5YTA5ZmNmNTc4cC0xLAorICAgIDB4MS5hOGFhMWNwMAorICB9LAorICB7IC8vIEVudHJ5IDQzOAorICAgIC0weDEuZmUwNDNmODc1YzZlZDRhMmMxYjhkNjlhMDlmY2Y1NzhwLTEsCisgICAgLTB4MS5hOGFhMWNwMAorICB9LAorICB7IC8vIEVudHJ5IDQzOQorICAgIDB4MS5iM2QzNmE5Njg4MGNmNjlkOTg4NGE0OWY1MzgxZTkxN3AtMSwKKyAgICAweDEuMDRhZmY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAtMHgxLmIzZDM2YTk2ODgwY2Y2OWQ5ODg0YTQ5ZjUzODFlOTE3cC0xLAorICAgIC0weDEuMDRhZmY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDEKKyAgICAweDEuYjNkNDFhZWJjZjM5MWMzMGMzZDJmMWVlN2I3OTcxMGNwLTEsCisgICAgMHgxLjA0YjBhMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQyCisgICAgLTB4MS5iM2Q0MWFlYmNmMzkxYzMwYzNkMmYxZWU3Yjc5NzEwY3AtMSwKKyAgICAtMHgxLjA0YjBhMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgMHgxLmIzZDRjYjQwNWFiMzI5MmJlN2RmNWIxYjk4MDMyZmJlcC0xLAorICAgIDB4MS4wNGIxNDhwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NAorICAgIC0weDEuYjNkNGNiNDA1YWIzMjkyYmU3ZGY1YjFiOTgwMzJmYmVwLTEsCisgICAgLTB4MS4wNGIxNDhwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NQorICAgIDB4MS5iM2Q1N2I5NDJhN2FkMTllOWI5ODkyYzkzMTllMWJlNnAtMSwKKyAgICAweDEuMDRiMWYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDYKKyAgICAtMHgxLmIzZDU3Yjk0MmE3YWQxOWU5Yjk4OTJjOTMxOWUxYmU2cC0xLAorICAgIC0weDEuMDRiMWYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDcKKyAgICAweDEuYjNkNjJiZTczZThmYzk5OGM2YzJkZjY1OTA0MjU2MTNwLTEsCisgICAgMHgxLjA0YjI5OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ4CisgICAgLTB4MS5iM2Q2MmJlNzNlOGZjOTk4YzZjMmRmNjU5MDQyNTYxM3AtMSwKKyAgICAtMHgxLjA0YjI5OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ5CisgICAgMHgxLmIzZDZkYzM5OTZmMWM1MmFhMWY4M2JkZWUxZDBlMDIzcC0xLAorICAgIDB4MS4wNGIzNDBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIC0weDEuYjNkNmRjMzk5NmYxYzUyYWExZjgzYmRlZTFkMGUwMjNwLTEsCisgICAgLTB4MS4wNGIzNDBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MQorICAgIDB4MS5iM2Q3OGM4YjMzYTA3ODY0YjZhODc4NTczZGIzNGJjYXAtMSwKKyAgICAweDEuMDRiM2U4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTIKKyAgICAtMHgxLmIzZDc4YzhiMzNhMDc4NjRiNmE4Nzg1NzNkYjM0YmNhcC0xLAorICAgIC0weDEuMDRiM2U4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTMKKyAgICAweDEuYjNkODNjZGMxNDliOTc1N2RmMTk1YWQ4ODVhYjUyMDFwLTEsCisgICAgMHgxLjA0YjQ5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgLTB4MS5iM2Q4M2NkYzE0OWI5NzU3ZGYxOTVhZDg4NWFiNTIwMXAtMSwKKyAgICAtMHgxLjA0YjQ5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgMHgxLmIzZDhlOGY5OTA4MzYwYjM4Y2QxM2ZjYmY2MjI0ZDkzcC0xLAorICAgIDB4MS4wNGI1MzRwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NgorICAgIC0weDEuYjNkOGU4Zjk5MDgzNjBiMzhjZDEzZmNiZjYyMjRkOTNwLTEsCisgICAgLTB4MS4wNGI1MzRwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIC0wLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTgKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ1OQorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjAKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ2MQorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICAweDEuMTc3M2QzNmE2NGRmNjFkNjcxNWU2MGFmMDYzNTU5ZjRwLTEsCisgICAgMHgxLjI3OWE3MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ2MworICAgIC0weDEuMTc3M2QzNmE2NGRmNjFkNjcxNWU2MGFmMDYzNTU5ZjRwLTEsCisgICAgLTB4MS4yNzlhNzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjQKKyAgICAweDEuMTc3M2Q1MTc2N2E3OGZlOTFiNTVmNmI3ZTVmZDQ0YzJwLTEsCisgICAgMHgxLjI3OWE3NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ2NQorICAgIC0weDEuMTc3M2Q1MTc2N2E3OGZlOTFiNTVmNmI3ZTVmZDQ0YzJwLTEsCisgICAgLTB4MS4yNzlhNzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjYKKyAgICAweDEuMTc3M2Q2YzQ2YTZlYTY4N2YwMzYyNTE5NGQyNWJiNTJwLTEsCisgICAgMHgxLjI3OWE3NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIC0weDEuMTc3M2Q2YzQ2YTZlYTY4N2YwMzYyNTE5NGQyNWJiNTJwLTEsCisgICAgLTB4MS4yNzlhNzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjgKKyAgICAweDEuZjk1YjhmNDA1MDEwNTdhYzQ5YWNlZjEzOTkzYjBjNTVwLTEsCisgICAgMHgxLmJiNjdhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDY5CisgICAgLTB4MS5mOTViOGY0MDUwMTA1N2FjNDlhY2VmMTM5OTNiMGM1NXAtMSwKKyAgICAtMHgxLmJiNjdhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDcwCisgICAgMHgxLmY5NWI4ZTliZTcyNzcwMmY3NTk1YWUxMDAwYTE0YTFhcC0xLAorICAgIDB4MS5iYjY3YWVwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3MQorICAgIC0weDEuZjk1YjhlOWJlNzI3NzAyZjc1OTVhZTEwMDBhMTRhMWFwLTEsCisgICAgLTB4MS5iYjY3YWVwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3MgorICAgIDB4MS5mOTViOGRmNzdlMzZhMzQ0NjcwZWQwNzE0OTE5MWE1OHAtMSwKKyAgICAweDEuYmI2N2IwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzMKKyAgICAtMHgxLmY5NWI4ZGY3N2UzNmEzNDQ2NzBlZDA3MTQ5MTkxYTU4cC0xLAorICAgIC0weDEuYmI2N2IwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzQKKyAgICAweDEuYjFkODJlODM1YTkxOGRlMThmNWZkYWRjOGIxMjQwY2ZwLTIsCisgICAgMHgxLmJmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ3NQorICAgIC0weDEuYjFkODJlODM1YTkxOGRlMThmNWZkYWRjOGIxMjQwY2ZwLTIsCisgICAgLTB4MS5iZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAweDEuYjFkODMwNTMyMTYxNjk0NzZmNGQxOTgyYjliMTRhYjFwLTIsCisgICAgMHgxLmMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDc3CisgICAgLTB4MS5iMWQ4MzA1MzIxNjE2OTQ3NmY0ZDE5ODJiOWIxNGFiMXAtMiwKKyAgICAtMHgxLmMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgMHgxLmIxZDgzMjIyZTgzMGQ4Mzc0MzI1OGZkMDkwNDBlZTU2cC0yLAorICAgIDB4MS5jMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzkKKyAgICAtMHgxLmIxZDgzMjIyZTgzMGQ4Mzc0MzI1OGZkMDkwNDBlZTU2cC0yLAorICAgIC0weDEuYzAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDgwCisgICAgMHgxLjQ0ZWIzNjkxNDI4MDYyYjI3OTI1YzU4NWFkNTlkNjJhcC0xLAorICAgIDB4MS41ZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODEKKyAgICAtMHgxLjQ0ZWIzNjkxNDI4MDYyYjI3OTI1YzU4NWFkNTlkNjJhcC0xLAorICAgIC0weDEuNWZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgyCisgICAgMHgxLjQ0ZWIzODFjZjM4NmFiMDRhNGY4NjU2YWJlYTgwYjgzcC0xLAorICAgIDB4MS42MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4MworICAgIC0weDEuNDRlYjM4MWNmMzg2YWIwNGE0Zjg2NTZhYmVhODBiODNwLTEsCisgICAgLTB4MS42MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIDB4MS40NGViMzlhOGE0OGJhZTZiOThhZTExYzk0MDA1MzVlNXAtMSwKKyAgICAweDEuNjAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDg1CisgICAgLTB4MS40NGViMzlhOGE0OGJhZTZiOThhZTExYzk0MDA1MzVlNXAtMSwKKyAgICAtMHgxLjYwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIDB4MS5kYWQ5MDE3Yjk2NDA4YzM3NWQ0ZmFmMGU0Nzc2ZDFmY3AtMSwKKyAgICAweDEuMmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODcKKyAgICAtMHgxLmRhZDkwMTdiOTY0MDhjMzc1ZDRmYWYwZTQ3NzZkMWZjcC0xLAorICAgIC0weDEuMmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAweDEuZGFkOTAyZmE4YWM4NzBmNTJmMWI4NDNhYzgzYmMzZWRwLTEsCisgICAgMHgxLjMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODkKKyAgICAtMHgxLmRhZDkwMmZhOGFjODcwZjUyZjFiODQzYWM4M2JjM2VkcC0xLAorICAgIC0weDEuMzBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ5MAorICAgIDB4MS5kYWQ5MDQ3OTdmNDhlYTRlZjRmZDJlNDdmZTRkNTJiZHAtMSwKKyAgICAweDEuMzAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAtMHgxLmRhZDkwNDc5N2Y0OGVhNGVmNGZkMmU0N2ZlNGQ1MmJkcC0xLAorICAgIC0weDEuMzAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTIKKyAgICAweDEuNGI3MDgwOTNjOWNiNDUzNTVlNzgyMWU1YWFkOThjZThwLTEsCisgICAgMHgxLjM3ZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNDkzCisgICAgLTB4MS40YjcwODA5M2M5Y2I0NTM1NWU3ODIxZTVhYWQ5OGNlOHAtMSwKKyAgICAtMHgxLjM3ZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgMHgxLjRiNzA3YTdhY2RlY2M4NDIzOTQ2M2U3OGIzMTJmYTEwcC0xLAorICAgIDB4MS4zOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDk1CisgICAgLTB4MS40YjcwN2E3YWNkZWNjODQyMzk0NjNlNzhiMzEyZmExMHAtMSwKKyAgICAtMHgxLjM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTYKKyAgICAweDEuNGI3MDc0NjFkMWY5OTQ0NzZjNjc3YzVhZDVkZGIyNjRwLTEsCisgICAgMHgxLjM4MDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgLTB4MS40YjcwNzQ2MWQxZjk5NDQ3NmM2NzdjNWFkNWRkYjI2NHAtMSwKKyAgICAtMHgxLjM4MDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDk4CisgICAgMHgxLjA2NmU3ZjcwNWE2Y2EyYjllMTA3ZjdkYzlmM2IyNmU2cC00LAorICAgIDB4MS4wNjljOGNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTkKKyAgICAtMHgxLjA2NmU3ZjcwNWE2Y2EyYjllMTA3ZjdkYzlmM2IyNmU2cC00LAorICAgIC0weDEuMDY5YzhjcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTAwCisgICAgMHgxLjA1ZTQ3NmQyN2ZlYmM4YjdlOTY5MDAwOWIzNjdjMzI3cC0zLAorICAgIDB4MS4wNjljOGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDEKKyAgICAtMHgxLjA1ZTQ3NmQyN2ZlYmM4YjdlOTY5MDAwOWIzNjdjMzI3cC0zLAorICAgIC0weDEuMDY5YzhjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgMHgxLjg3N2UyZGU1YzlhMDY2YjhkYjU5NWFkYzE0OWFmMGMwcC0zLAorICAgIDB4MS44OWVhZDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICAtMHgxLjg3N2UyZGU1YzlhMDY2YjhkYjU5NWFkYzE0OWFmMGMwcC0zLAorICAgIC0weDEuODllYWQycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTA0CisgICAgMHgxLjAzYmUwN2FjYjlkYWI3MTliNDM0M2EzM2I5ZmE2YWZlcC0yLAorICAgIDB4MS4wNjljOGNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAtMHgxLjAzYmUwN2FjYjlkYWI3MTliNDM0M2EzM2I5ZmE2YWZlcC0yLAorICAgIC0weDEuMDY5YzhjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTA2CisgICAgMHgxLjQyYWJiYzViM2IyZjkxZThlY2U0NmU1ZWZmZDI4MzY5cC0yLAorICAgIDB4MS40ODQzYjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAtMHgxLjQyYWJiYzViM2IyZjkxZThlY2U0NmU1ZWZmZDI4MzY5cC0yLAorICAgIC0weDEuNDg0M2IwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLjgwNDYwMTQxMWQ5M2Y0NzUwOTE5NjcwMDYxZGUwN2Q5cC0yLAorICAgIDB4MS44OWVhZDRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDkKKyAgICAtMHgxLjgwNDYwMTQxMWQ5M2Y0NzUwOTE5NjcwMDYxZGUwN2Q5cC0yLAorICAgIC0weDEuODllYWQ0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgMHgxLmJjNGMwOGFmMzU2MDg4YjE2OTQ5OTViZmFmOGEyOTdicC0yLAorICAgIDB4MS5jYjkxZjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTEKKyAgICAtMHgxLmJjNGMwOGFmMzU2MDg4YjE2OTQ5OTViZmFmOGEyOTdicC0yLAorICAgIC0weDEuY2I5MWY4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTEyCisgICAgMHgxLmY2N2VhZTM0ZGMwYjQyYjQ2NWZkMmEzZmIwNzU2NGE0cC0yLAorICAgIDB4MS4wNjljOGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTMKKyAgICAtMHgxLmY2N2VhZTM0ZGMwYjQyYjQ2NWZkMmEzZmIwNzU2NGE0cC0yLAorICAgIC0weDEuMDY5YzhlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgMHgxLjE3NTA1Yzg2MjMxODk4ZmQ4NmIxOGQyMjgyZDkzZWVkcC0xLAorICAgIDB4MS4yNzcwMjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTUKKyAgICAtMHgxLjE3NTA1Yzg2MjMxODk4ZmQ4NmIxOGQyMjgyZDkzZWVkcC0xLAorICAgIC0weDEuMjc3MDIwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgMHgxLjMyM2I4ZTQwZDE2NTc1ZTUwZGM3YjZlNTY3YmI1MDg0cC0xLAorICAgIDB4MS40ODQzYjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTcKKyAgICAtMHgxLjMyM2I4ZTQwZDE2NTc1ZTUwZGM3YjZlNTY3YmI1MDg0cC0xLAorICAgIC0weDEuNDg0M2IycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTE4CisgICAgMHgxLjRiZTQ5YjA4YTFlMTYyOWNiZGFhNTA3ZTE4MjU1Y2Q4cC0xLAorICAgIDB4MS42OTE3NDRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAtMHgxLjRiZTQ5YjA4YTFlMTYyOWNiZGFhNTA3ZTE4MjU1Y2Q4cC0xLAorICAgIC0weDEuNjkxNzQ0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgMHgxLjY0MzA4NDdkYmJiZmQ0NmNiZWJiYzZkNWY1MWM3YzQ5cC0xLAorICAgIDB4MS44OWVhZDZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjEKKyAgICAtMHgxLjY0MzA4NDdkYmJiZmQ0NmNiZWJiYzZkNWY1MWM3YzQ5cC0xLAorICAgIC0weDEuODllYWQ2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTIyCisgICAgMHgxLjdiMDViYjg3YjM4ODQ0ZTU2MDAzYzQxZWY4MDRiMjczcC0xLAorICAgIDB4MS5hYWJlNjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjMKKyAgICAtMHgxLjdiMDViYjg3YjM4ODQ0ZTU2MDAzYzQxZWY4MDRiMjczcC0xLAorICAgIC0weDEuYWFiZTY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTI0CisgICAgMHgxLjkwNGMzYjM4OWQ1NWQzZGVkZGIzOWQwNWViMzY2NTcxcC0xLAorICAgIDB4MS5jYjkxZmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAtMHgxLjkwNGMzYjM4OWQ1NWQzZGVkZGIzOWQwNWViMzY2NTcxcC0xLAorICAgIC0weDEuY2I5MWZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTI2CisgICAgMHgxLmEzZWRhMjExNzk4YTgyNjk3ZDYyNDMxZjlhZTQ2Y2M0cC0xLAorICAgIDB4MS5lYzY1OGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjcKKyAgICAtMHgxLmEzZWRhMjExNzk4YTgyNjk3ZDYyNDMxZjlhZTQ2Y2M0cC0xLAorICAgIC0weDEuZWM2NThjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgMHgxLmI1ZDU0ODgzZmNiNjEyM2JjMjhhYWM5MWYwODVlNGVlcC0xLAorICAgIDB4MS4wNjljOGVwMAorICB9LAorICB7IC8vIEVudHJ5IDUyOQorICAgIC0weDEuYjVkNTQ4ODNmY2I2MTIzYmMyOGFhYzkxZjA4NWU0ZWVwLTEsCisgICAgLTB4MS4wNjljOGVwMAorICB9LAorICB7IC8vIEVudHJ5IDUzMAorICAgIDB4MS5jNWYwNWEwMTM1ZDQ4ODJjNzY4Y2RmMThlMmUxMTEyY3AtMSwKKyAgICAweDEuMTcwNjU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzEKKyAgICAtMHgxLmM1ZjA1YTAxMzVkNDg4MmM3NjhjZGYxOGUyZTExMTJjcC0xLAorICAgIC0weDEuMTcwNjU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzIKKyAgICAweDEuZDQyZGU1M2UzMTVjODM5Y2UxODhlMjAxMjA1ZTk5ZGVwLTEsCisgICAgMHgxLjI3NzAxZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTMzCisgICAgLTB4MS5kNDJkZTUzZTMxNWM4MzljZTE4OGUyMDEyMDVlOTlkZXAtMSwKKyAgICAtMHgxLjI3NzAxZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTM0CisgICAgMHgxLmUwN2VlZjQ1ZDkxZWVhOGE2Y2M3MzY5YWEwZTU1Mzg4cC0xLAorICAgIDB4MS4zN2Q5ZTZwMAorICB9LAorICB7IC8vIEVudHJ5IDUzNQorICAgIC0weDEuZTA3ZWVmNDVkOTFlZWE4YTZjYzczNjlhYTBlNTUzODhwLTEsCisgICAgLTB4MS4zN2Q5ZTZwMAorICB9LAorICB7IC8vIEVudHJ5IDUzNgorICAgIDB4MS5lYWQ2ODMzYjJhYTAwMmJhYTFjMmIxOWEzOGRjOWI3OXAtMSwKKyAgICAweDEuNDg0M2FlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzcKKyAgICAtMHgxLmVhZDY4MzNiMmFhMDAyYmFhMWMyYjE5YTM4ZGM5Yjc5cC0xLAorICAgIC0weDEuNDg0M2FlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzgKKyAgICAweDEuZjMyOWJmZmE2YTIwODU5MWVlY2I2OTA1ZDc1OTRlM2JwLTEsCisgICAgMHgxLjU4YWQ3NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTM5CisgICAgLTB4MS5mMzI5YmZmYTZhMjA4NTkxZWVjYjY5MDVkNzU5NGUzYnAtMSwKKyAgICAtMHgxLjU4YWQ3NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgMHgxLmY5NmZlMzhhZmJkOTViNWZjZDA4NjA4MTEwZTkzODFmcC0xLAorICAgIDB4MS42OTE3M2VwMAorICB9LAorICB7IC8vIEVudHJ5IDU0MQorICAgIC0weDEuZjk2ZmUzOGFmYmQ5NWI1ZmNkMDg2MDgxMTBlOTM4MWZwLTEsCisgICAgLTB4MS42OTE3M2VwMAorICB9LAorICB7IC8vIEVudHJ5IDU0MgorICAgIDB4MS5mZGEyNTQ1NWQ5NTY3NzcyZjIwZjI1ZDE1ZWZjNjc3NXAtMSwKKyAgICAweDEuNzk4MTA2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAtMHgxLmZkYTI1NDU1ZDk1Njc3NzJmMjBmMjVkMTVlZmM2Nzc1cC0xLAorICAgIC0weDEuNzk4MTA2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDQKKyAgICAweDEuZmZiY2E4MTZmMWYxNTE2ZWM1ZDc1N2IwZGI1NGFlMzRwLTEsCisgICAgMHgxLjg5ZWFjZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ1CisgICAgLTB4MS5mZmJjYTgxNmYxZjE1MTZlYzVkNzU3YjBkYjU0YWUzNHAtMSwKKyAgICAtMHgxLjg5ZWFjZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgMHgxLmZmYmNhODgyMjhiMTYzMTg5YWI4ZDYzN2RiOTliZDJkcC0xLAorICAgIDB4MS45YTU0OTZwMAorICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIC0weDEuZmZiY2E4ODIyOGIxNjMxODlhYjhkNjM3ZGI5OWJkMmRwLTEsCisgICAgLTB4MS45YTU0OTZwMAorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIDB4MS5mZGEyNTU5NzBjY2RkYjlkMTI3ZWNmNjM0MDNjMmJmN3AtMSwKKyAgICAweDEuYWFiZTVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDkKKyAgICAtMHgxLmZkYTI1NTk3MGNjZGRiOWQxMjdlY2Y2MzQwM2MyYmY3cC0xLAorICAgIC0weDEuYWFiZTVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTAKKyAgICAweDEuZjk2ZmU1YTBkYTI0NDQ4OWZiMmY0Yjk3YjNlNDg3NTdwLTEsCisgICAgMHgxLmJiMjgyNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUxCisgICAgLTB4MS5mOTZmZTVhMGRhMjQ0NDg5ZmIyZjRiOTdiM2U0ODc1N3AtMSwKKyAgICAtMHgxLmJiMjgyNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgMHgxLmYzMjljMmUyYzFhMzliYWQ4ZWNkY2I4Nzk2MWJhNDRhcC0xLAorICAgIDB4MS5jYjkxZWVwMAorICB9LAorICB7IC8vIEVudHJ5IDU1MworICAgIC0weDEuZjMyOWMyZTJjMWEzOWJhZDhlY2RjYjg3OTYxYmE0NGFwLTEsCisgICAgLTB4MS5jYjkxZWVwMAorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS5lYWQ2ODZmMmVjNTcyYzgzZWQzNGEwMWY3NjRkMTkzZXAtMSwKKyAgICAweDEuZGJmYmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTUKKyAgICAtMHgxLmVhZDY4NmYyZWM1NzJjODNlZDM0YTAxZjc2NGQxOTNlcC0xLAorICAgIC0weDEuZGJmYmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTYKKyAgICAweDEuZTA3ZWYzYzkxYmQ1MDBhMGRlMjMwYWQ1NzMxNjMxNjNwLTEsCisgICAgMHgxLmVjNjU3ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgLTB4MS5lMDdlZjNjOTFiZDUwMGEwZGUyMzBhZDU3MzE2MzE2M3AtMSwKKyAgICAtMHgxLmVjNjU3ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU4CisgICAgMHgxLmQ0MmRlYTg4MzVjODhhZGI5Y2RlMTczNDdmOTM0ZTI1cC0xLAorICAgIDB4MS5mY2NmNDZwMAorICB9LAorICB7IC8vIEVudHJ5IDU1OQorICAgIC0weDEuZDQyZGVhODgzNWM4OGFkYjljZGUxNzM0N2Y5MzRlMjVwLTEsCisgICAgLTB4MS5mY2NmNDZwMAorICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDB4MS5jNWYwNWUzMmM4MGZiMGZlNjAzMDMzZWMwMjhhNGMzMnAtMSwKKyAgICAweDEuMDY5Yzg4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjEKKyAgICAtMHgxLmM1ZjA1ZTMyYzgwZmIwZmU2MDMwMzNlYzAyOGE0YzMycC0xLAorICAgIC0weDEuMDY5Yzg4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjIKKyAgICAweDEuYjVkNTRkMzczMmQzYjJlNzlkNDkwN2UxMTU0MDFkZGFwLTEsCisgICAgMHgxLjBlZDE2Y3AxCisgIH0sCisgIHsgLy8gRW50cnkgNTYzCisgICAgLTB4MS5iNWQ1NGQzNzMyZDNiMmU3OWQ0OTA3ZTExNTQwMWRkYXAtMSwKKyAgICAtMHgxLjBlZDE2Y3AxCisgIH0sCisgIHsgLy8gRW50cnkgNTY0CisgICAgMHgxLmEzZWRhNzQxNjFkMDZiODNlYzJjOGRjMzk2ZDgxM2I5cC0xLAorICAgIDB4MS4xNzA2NTBwMQorICB9LAorICB7IC8vIEVudHJ5IDU2NQorICAgIC0weDEuYTNlZGE3NDE2MWQwNmI4M2VjMmM4ZGMzOTZkODEzYjlwLTEsCisgICAgLTB4MS4xNzA2NTBwMQorICB9LAorICB7IC8vIEVudHJ5IDU2NgorICAgIDB4MS45MDRjNDIxZWZjZTU4ZjRlODE3MGQzNmRjZGE4ZTAyY3AtMSwKKyAgICAweDEuMWYzYjM0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICAtMHgxLjkwNGM0MjFlZmNlNThmNGU4MTcwZDM2ZGNkYThlMDJjcC0xLAorICAgIC0weDEuMWYzYjM0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjgKKyAgICAweDEuN2IwNWM0NTA5Mzk0NGQ2YWZiMGM5MGQyZjljYjIxN2ZwLTEsCisgICAgMHgxLjI3NzAxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTY5CisgICAgLTB4MS43YjA1YzQ1MDkzOTQ0ZDZhZmIwYzkwZDJmOWNiMjE3ZnAtMSwKKyAgICAtMHgxLjI3NzAxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTcwCisgICAgMHgxLjY0MzA4ZjUwNmZmZGFmMTMyNmQxMGIzMzgwMjc4ZTk4cC0xLAorICAgIDB4MS4yZmE0ZmNwMQorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIC0weDEuNjQzMDhmNTA2ZmZkYWYxMzI2ZDEwYjMzODAyNzhlOThwLTEsCisgICAgLTB4MS4yZmE0ZmNwMQorICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIDB4MS40YmU0YTgwNzZjMTM1YTQ4ZjNmMWExYWFhMzYyNDc1ZnAtMSwKKyAgICAweDEuMzdkOWUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzMKKyAgICAtMHgxLjRiZTRhODA3NmMxMzVhNDhmM2YxYTFhYWEzNjI0NzVmcC0xLAorICAgIC0weDEuMzdkOWUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzQKKyAgICAweDEuMzIzYjlkODg4ZDRkYTc3YTYxMDg5MzczNWVlZWQxY2JwLTEsCisgICAgMHgxLjQwMGVjNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTc1CisgICAgLTB4MS4zMjNiOWQ4ODhkNGRhNzdhNjEwODkzNzM1ZWVlZDFjYnAtMSwKKyAgICAtMHgxLjQwMGVjNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTc2CisgICAgMHgxLjE3NTA2ZTJkZmI2MDNkMzRiOWFmMzliMTJjMWRiNzM1cC0xLAorICAgIDB4MS40ODQzYThwMQorICB9LAorICB7IC8vIEVudHJ5IDU3NworICAgIC0weDEuMTc1MDZlMmRmYjYwM2QzNGI5YWYzOWIxMmMxZGI3MzVwLTEsCisgICAgLTB4MS40ODQzYThwMQorICB9LAorICB7IC8vIEVudHJ5IDU3OAorICAgIDB4MS5mNjdlZDY2NzM1MmQ0ODI3NDUwMDEzZjE1ZTMyMWJmYnAtMiwKKyAgICAweDEuNTA3ODhjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzkKKyAgICAtMHgxLmY2N2VkNjY3MzUyZDQ4Mjc0NTAwMTNmMTVlMzIxYmZicC0yLAorICAgIC0weDEuNTA3ODhjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODAKKyAgICAweDEuYmM0YzM1ZGE1MWUzNGI3NzZlNWUwNGRhNThmMjM0NDFwLTIsCisgICAgMHgxLjU4YWQ3MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTgxCisgICAgLTB4MS5iYzRjMzVkYTUxZTM0Yjc3NmU1ZTA0ZGE1OGYyMzQ0MXAtMiwKKyAgICAtMHgxLjU4YWQ3MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgMHgxLjgwNDYzMzZlNjg0MjdjZjc1NjA1NmQzZjRlZGJiNjYycC0yLAorICAgIDB4MS42MGUyNTRwMQorICB9LAorICB7IC8vIEVudHJ5IDU4MworICAgIC0weDEuODA0NjMzNmU2ODQyN2NmNzU2MDU2ZDNmNGVkYmI2NjJwLTIsCisgICAgLTB4MS42MGUyNTRwMQorICB9LAorICB7IC8vIEVudHJ5IDU4NAorICAgIDB4MS40MmFiZjM4NzI5MDVlNjMyZjIwNGM0MWIyNGFmOTBiNnAtMiwKKyAgICAweDEuNjkxNzM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODUKKyAgICAtMHgxLjQyYWJmMzg3MjkwNWU2MzJmMjA0YzQxYjI0YWY5MGI2cC0yLAorICAgIC0weDEuNjkxNzM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODYKKyAgICAweDEuMDNiZTQzYzY5OWYzNTM2OTkwZGNmNWE2NjY1YWMyMzlwLTIsCisgICAgMHgxLjcxNGMxY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNTg3CisgICAgLTB4MS4wM2JlNDNjNjk5ZjM1MzY5OTBkY2Y1YTY2NjVhYzIzOXAtMiwKKyAgICAtMHgxLjcxNGMxY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNTg4CisgICAgMHgxLjg3N2VhZGMyZmRmYzJmMGRiMWU4Yjc4Y2QzZmJmYmQycC0zLAorICAgIDB4MS43OTgxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODkKKyAgICAtMHgxLjg3N2VhZGMyZmRmYzJmMGRiMWU4Yjc4Y2QzZmJmYmQycC0zLAorICAgIC0weDEuNzk4MXAxCisgIH0sCisgIHsgLy8gRW50cnkgNTkwCisgICAgMHgxLjA1ZTRmZGY4NDY2MzJhODIwOGQ5MGRlNzJkM2E2ZGE4cC0zLAorICAgIDB4MS44MWI1ZTRwMQorICB9LAorICB7IC8vIEVudHJ5IDU5MQorICAgIC0weDEuMDVlNGZkZjg0NjYzMmE4MjA4ZDkwZGU3MmQzYTZkYThwLTMsCisgICAgLTB4MS44MWI1ZTRwMQorICB9LAorICB7IC8vIEVudHJ5IDU5MgorICAgIDB4MS4wNjZmOWI2MzBiNzJkZmYxNjQ1MGU4OWFmZGY3ZTA0OHAtNCwKKyAgICAweDEuODllYWM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTMKKyAgICAtMHgxLjA2NmY5YjYzMGI3MmRmZjE2NDUwZTg5YWZkZjdlMDQ4cC00LAorICAgIC0weDEuODllYWM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTQKKyAgICAweDEuMDNiZGYwYjc5Y2NmNzM5NTI5ZDU0ZDQyMjg2MTA0NmNwLTIsCisgICAgLTB4MS44MWI1ZWVwMgorICB9LAorICB7IC8vIEVudHJ5IDU5NQorICAgIC0weDEuMDNiZGYwYjc5Y2NmNzM5NTI5ZDU0ZDQyMjg2MTA0NmNwLTIsCisgICAgMHgxLjgxYjVlZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNTk2CisgICAgMHgxLmY2N2U4Yjk1ZjU0NjBlYTM2OWE4MDM4MzdiNzIxYWJkcC0yLAorICAgIC0weDEuNzE0YzI2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAtMHgxLmY2N2U4Yjk1ZjU0NjBlYTM2OWE4MDM4MzdiNzIxYWJkcC0yLAorICAgIDB4MS43MTRjMjZwMgorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIDB4MS42NDMwNzA3OTE3NTFkYzA2MzZkMTg1NGQyYmRiYzVkNHAtMSwKKyAgICAtMHgxLjYwZTI1ZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNTk5CisgICAgLTB4MS42NDMwNzA3OTE3NTFkYzA2MzZkMTg1NGQyYmRiYzVkNHAtMSwKKyAgICAweDEuNjBlMjVlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDAKKyAgICAweDEuYjVkNTM2ZjU5MTEzYTQzYWYzMGU4YzlkYjhhOTUxYTVwLTEsCisgICAgLTB4MS41MDc4OTZwMgorICB9LAorICB7IC8vIEVudHJ5IDYwMQorICAgIC0weDEuYjVkNTM2ZjU5MTEzYTQzYWYzMGU4YzlkYjhhOTUxYTVwLTEsCisgICAgMHgxLjUwNzg5NnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjAyCisgICAgMHgxLmVhZDY3OTk4NTU0OTE0MDMxODM0OWY1MTJkY2E3YTZicC0xLAorICAgIC0weDEuNDAwZWNlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAtMHgxLmVhZDY3OTk4NTU0OTE0MDMxODM0OWY1MTJkY2E3YTZicC0xLAorICAgIDB4MS40MDBlY2VwMgorICB9LAorICB7IC8vIEVudHJ5IDYwNAorICAgIDB4MS5mZmJjYTcwMTBlMGIwNDUyZjU2MDc1Y2ZkNTk4Mjg4MHAtMSwKKyAgICAtMHgxLjJmYTUwNnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjA1CisgICAgLTB4MS5mZmJjYTcwMTBlMGIwNDUyZjU2MDc1Y2ZkNTk4Mjg4MHAtMSwKKyAgICAweDEuMmZhNTA2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDYKKyAgICAweDEuZjMyOWNhNmJmYzc0MjVkODljMmI0YjlhZDczYWIxMDhwLTEsCisgICAgLTB4MS4xZjNiM2VwMgorICB9LAorICB7IC8vIEVudHJ5IDYwNworICAgIC0weDEuZjMyOWNhNmJmYzc0MjVkODljMmI0YjlhZDczYWIxMDhwLTEsCisgICAgMHgxLjFmM2IzZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjA4CisgICAgMHgxLmM1ZjA2ZmI2OTQyN2FjMGYyZDY5NDI4ZDgyYjVlNjY5cC0xLAorICAgIC0weDEuMGVkMTc2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDkKKyAgICAtMHgxLmM1ZjA2ZmI2OTQyN2FjMGYyZDY5NDI4ZDgyYjVlNjY5cC0xLAorICAgIDB4MS4wZWQxNzZwMgorICB9LAorICB7IC8vIEVudHJ5IDYxMAorICAgIDB4MS43YjA1ZDg2NGVjOTgwMmFkYmM0YjU1NzdjMjMzODM2YXAtMSwKKyAgICAtMHgxLmZjY2Y1YXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjExCisgICAgLTB4MS43YjA1ZDg2NGVjOTgwMmFkYmM0YjU1NzdjMjMzODM2YXAtMSwKKyAgICAweDEuZmNjZjVhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTIKKyAgICAweDEuMTc1MDgwODE4NWE5OThiYmNlY2MzYTZhYzBjYjI5MDdwLTEsCisgICAgLTB4MS5kYmZiYzhwMQorICB9LAorICB7IC8vIEVudHJ5IDYxMworICAgIC0weDEuMTc1MDgwODE4NWE5OThiYmNlY2MzYTZhYzBjYjI5MDdwLTEsCisgICAgMHgxLmRiZmJjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjE0CisgICAgMHgxLjQyYWMwZGQ5NDk1MjExODE2YmYwNGNhNTNiY2U0YmVhcC0yLAorICAgIC0weDEuYmIyODM2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAtMHgxLjQyYWMwZGQ5NDk1MjExODE2YmYwNGNhNTNiY2U0YmVhcC0yLAorICAgIDB4MS5iYjI4MzZwMQorICB9LAorICB7IC8vIEVudHJ5IDYxNgorICAgIDB4MS4wNjZmY2EzOWE3MGI1MmQwNmYyY2Q3ZWFiNjljMzFmMnAtNCwKKyAgICAtMHgxLjlhNTRhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjE3CisgICAgLTB4MS4wNjZmY2EzOWE3MGI1MmQwNmYyY2Q3ZWFiNjljMzFmMnAtNCwKKyAgICAweDEuOWE1NGE0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTgKKyAgICAtMHgxLjg3N2Q5MzEyOThlNmZiYzY1NGYwNjU1MzZjZmYyYjU0cC0zLAorICAgIC0weDEuNzk4MTEycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTkKKyAgICAweDEuODc3ZDkzMTI5OGU2ZmJjNjU0ZjA2NTUzNmNmZjJiNTRwLTMsCisgICAgMHgxLjc5ODExMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjIwCisgICAgLTB4MS5iYzRiYzI4NzVlYjZkMzhlZGEzYjQ5Y2IyMzIwYjU2MXAtMiwKKyAgICAtMHgxLjU4YWQ4MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjIxCisgICAgMHgxLmJjNGJjMjg3NWViNmQzOGVkYTNiNDljYjIzMjBiNTYxcC0yLAorICAgIDB4MS41OGFkODBwMQorICB9LAorICB7IC8vIEVudHJ5IDYyMgorICAgIC0weDEuNGJlNDdkNjM1NGM0Y2VkNTM3ODBiMWI1MTlhY2RlYzJwLTEsCisgICAgLTB4MS4zN2Q5ZWVwMQorICB9LAorICB7IC8vIEVudHJ5IDYyMworICAgIDB4MS40YmU0N2Q2MzU0YzRjZWQ1Mzc4MGIxYjUxOWFjZGVjMnAtMSwKKyAgICAweDEuMzdkOWVlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjQKKyAgICAtMHgxLmEzZWQ4YmNiMzVjYmNmOGM2MDg5ZjgyYTkxYzMxZDVicC0xLAorICAgIC0weDEuMTcwNjVjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjUKKyAgICAweDEuYTNlZDhiY2IzNWNiY2Y4YzYwODlmODJhOTFjMzFkNWJwLTEsCisgICAgMHgxLjE3MDY1Y3AxCisgIH0sCisgIHsgLy8gRW50cnkgNjI2CisgICAgLTB4MS5lMDdlZTQ5NmVhMTA5NjU0YzQyZTE3MWZkYzQ1MzdjNHAtMSwKKyAgICAtMHgxLmVjNjU5NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjI3CisgICAgMHgxLmUwN2VlNDk2ZWExMDk2NTRjNDJlMTcxZmRjNDUzN2M0cC0xLAorICAgIDB4MS5lYzY1OTRwMAorICB9LAorICB7IC8vIEVudHJ5IDYyOAorICAgIC0weDEuZmRhMjUyMjIxOTY4OWQwZTgwNjlkOTBmNWM5NjliOTJwLTEsCisgICAgLTB4MS5hYWJlNzBwMAorICB9LAorICB7IC8vIEVudHJ5IDYyOQorICAgIDB4MS5mZGEyNTIyMjE5Njg5ZDBlODA2OWQ5MGY1Yzk2OWI5MnAtMSwKKyAgICAweDEuYWFiZTcwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzAKKyAgICAtMHgxLmY5NmZlODAyZmU1NzAzNzJkMGZjYjZlOTM0YjQzMDYxcC0xLAorICAgIC0weDEuNjkxNzRjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzEKKyAgICAweDEuZjk2ZmU4MDJmZTU3MDM3MmQwZmNiNmU5MzRiNDMwNjFwLTEsCisgICAgMHgxLjY5MTc0Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjMyCisgICAgLTB4MS5kNDJkZWQ1NmFlODhhNmUxY2YyNzBhZjI3ZTZmMTgwNHAtMSwKKyAgICAtMHgxLjI3NzAyOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjMzCisgICAgMHgxLmQ0MmRlZDU2YWU4OGE2ZTFjZjI3MGFmMjdlNmYxODA0cC0xLAorICAgIDB4MS4yNzcwMjhwMAorICB9LAorICB7IC8vIEVudHJ5IDYzNAorICAgIC0weDEuOTA0YzQ1MzI2ZDZkZGUyMjQzODFkMWQ1OTBhZGE0MWNwLTEsCisgICAgLTB4MS5jYjkyMGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzUKKyAgICAweDEuOTA0YzQ1MzI2ZDZkZGUyMjQzODFkMWQ1OTBhZGE0MWNwLTEsCisgICAgMHgxLmNiOTIwYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDYzNgorICAgIC0weDEuMzIzYjljYWRiYjE5ZTc1YTQ0NDgzZmI2NGFkOGRkZjZwLTEsCisgICAgLTB4MS40ODQzYzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzcKKyAgICAweDEuMzIzYjljYWRiYjE5ZTc1YTQ0NDgzZmI2NGFkOGRkZjZwLTEsCisgICAgMHgxLjQ4NDNjNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDYzOAorICAgIC0weDEuODA0NjI2NTRiZGU3NjZmYWY0N2YzMTQwZTI5MDk5NmRwLTIsCisgICAgLTB4MS44OWVhZmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzkKKyAgICAweDEuODA0NjI2NTRiZGU3NjZmYWY0N2YzMTQwZTI5MDk5NmRwLTIsCisgICAgMHgxLjg5ZWFmY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDY0MAorICAgIC0weDEuMDVlNGNhMjFmMzg2YTgyYmMyZTRlZmNkZWJiMTk2MmJwLTMsCisgICAgLTB4MS4wNjljZTBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDEKKyAgICAweDEuMDVlNGNhMjFmMzg2YTgyYmMyZTRlZmNkZWJiMTk2MmJwLTMsCisgICAgMHgxLjA2OWNlMHAtMworICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIDB4MS4wNWU0MjM4MzBiZTAxZjlmZTNjNTdkMDY4NjdlMDA1NnAtMywKKyAgICAweDEuMDY5YzM4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjQzCisgICAgLTB4MS4wNWU0MjM4MzBiZTAxZjlmZTNjNTdkMDY4NjdlMDA1NnAtMywKKyAgICAtMHgxLjA2OWMzOHAtMworICB9LAorICB7IC8vIEVudHJ5IDY0NAorICAgIDB4MS44MDQ1ZDg3ODUyZjEzMDdmZWE2ZGM3NTFjNGQxNTk5MnAtMiwKKyAgICAweDEuODllYWE4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjQ1CisgICAgLTB4MS44MDQ1ZDg3ODUyZjEzMDdmZWE2ZGM3NTFjNGQxNTk5MnAtMiwKKyAgICAtMHgxLjg5ZWFhOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDY0NgorICAgIDB4MS4zMjNiN2IwNGVlODhjZmY5OGIyYTE2MjBlMWY2MWEwMXAtMSwKKyAgICAweDEuNDg0MzlhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQ3CisgICAgLTB4MS4zMjNiN2IwNGVlODhjZmY5OGIyYTE2MjBlMWY2MWEwMXAtMSwKKyAgICAtMHgxLjQ4NDM5YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY0OAorICAgIDB4MS45MDRjMmIwMmFhNTk1MjhjZTA0NGJmMjIxM2M5Njg1OXAtMSwKKyAgICAweDEuY2I5MWUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQ5CisgICAgLTB4MS45MDRjMmIwMmFhNTk1MjhjZTA0NGJmMjIxM2M5Njg1OXAtMSwKKyAgICAtMHgxLmNiOTFlMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIDB4MS5kNDJkZGQyNWIzNzk3ZTZhNjc5Zjc2ZTA1ZTZjM2UwOHAtMSwKKyAgICAweDEuMjc3MDE0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTEKKyAgICAtMHgxLmQ0MmRkZDI1YjM3OTdlNmE2NzlmNzZlMDVlNmMzZTA4cC0xLAorICAgIC0weDEuMjc3MDE0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTIKKyAgICAweDEuZjk2ZmUxYTBiMTJkMGFkNGZhOGM4MmQ4YWY5ODljNWFwLTEsCisgICAgMHgxLjY5MTczOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjUzCisgICAgLTB4MS5mOTZmZTFhMGIxMmQwYWQ0ZmE4YzgyZDhhZjk4OWM1YXAtMSwKKyAgICAtMHgxLjY5MTczOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjU0CisgICAgMHgxLmZkYTI1NWY5NjA5NGQ4ZmU0ZTg1OWM0Y2YwZGQ2OGE1cC0xLAorICAgIDB4MS5hYWJlNWNwMAorICB9LAorICB7IC8vIEVudHJ5IDY1NQorICAgIC0weDEuZmRhMjU1Zjk2MDk0ZDhmZTRlODU5YzRjZjBkZDY4YTVwLTEsCisgICAgLTB4MS5hYWJlNWNwMAorICB9LAorICB7IC8vIEVudHJ5IDY1NgorICAgIDB4MS5lMDdlZjI2Nzc0OGI5ODI3NzhmOGQ1MGQyOTgxYmIzYXAtMSwKKyAgICAweDEuZWM2NTgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTcKKyAgICAtMHgxLmUwN2VmMjY3NzQ4Yjk4Mjc3OGY4ZDUwZDI5ODFiYjNhcC0xLAorICAgIC0weDEuZWM2NTgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAweDEuYTNlZGEyYWRiMDExNDNmYjIxNDUzYjIwYmQxNzQ4ZmVwLTEsCisgICAgMHgxLjE3MDY1MnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjU5CisgICAgLTB4MS5hM2VkYTJhZGIwMTE0M2ZiMjE0NTNiMjBiZDE3NDhmZXAtMSwKKyAgICAtMHgxLjE3MDY1MnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjYwCisgICAgMHgxLjRiZTQ5YmQ4OGE2NGEwYmI0MTRkZGFjYWM0ZmE4ZGU5cC0xLAorICAgIDB4MS4zN2Q5ZTRwMQorICB9LAorICB7IC8vIEVudHJ5IDY2MQorICAgIC0weDEuNGJlNDliZDg4YTY0YTBiYjQxNGRkYWNhYzRmYThkZTlwLTEsCisgICAgLTB4MS4zN2Q5ZTRwMQorICB9LAorICB7IC8vIEVudHJ5IDY2MgorICAgIDB4MS5iYzRjMGE5YjM3ODJlMjIwYWU1NTc4NjM2OWNjZjE5MHAtMiwKKyAgICAweDEuNThhZDc2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjMKKyAgICAtMHgxLmJjNGMwYTliMzc4MmUyMjBhZTU1Nzg2MzY5Y2NmMTkwcC0yLAorICAgIC0weDEuNThhZDc2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjQKKyAgICAweDEuODc3ZTMwMWY0M2NhZmZmZTY2NDRhODk1OGYxMDg3MjlwLTMsCisgICAgMHgxLjc5ODEwOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjY1CisgICAgLTB4MS44NzdlMzAxZjQzY2FmZmZlNjY0NGE4OTU4ZjEwODcyOXAtMywKKyAgICAtMHgxLjc5ODEwOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjY2CisgICAgLTB4MS4wNjZlOGFlMWY4MjRhNjk4MTdlNmE4MDZlNjMxN2UyOHAtNCwKKyAgICAweDEuOWE1NDlhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjcKKyAgICAweDEuMDY2ZThhZTFmODI0YTY5ODE3ZTZhODA2ZTYzMTdlMjhwLTQsCisgICAgLTB4MS45YTU0OWFwMQorICB9LAorICB7IC8vIEVudHJ5IDY2OAorICAgIC0weDEuNDJhYmMxZWNhMTFhMGFkMTJjYTZlZWZmMTk3MzE4YWFwLTIsCisgICAgMHgxLmJiMjgyY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNjY5CisgICAgMHgxLjQyYWJjMWVjYTExYTBhZDEyY2E2ZWVmZjE5NzMxOGFhcC0yLAorICAgIC0weDEuYmIyODJjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzAKKyAgICAtMHgxLjE3NTA1ZWZiODExOTc3M2M2NDc0NjhiZTFkZmVlNDVlcC0xLAorICAgIDB4MS5kYmZiYmVwMQorICB9LAorICB7IC8vIEVudHJ5IDY3MQorICAgIDB4MS4xNzUwNWVmYjgxMTk3NzNjNjQ3NDY4YmUxZGZlZTQ1ZXAtMSwKKyAgICAtMHgxLmRiZmJiZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjcyCisgICAgLTB4MS43YjA1YmQ4MDkxY2Q3OWRmZjM1OWM4NDEyYjBkZTFhOXAtMSwKKyAgICAweDEuZmNjZjUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzMKKyAgICAweDEuN2IwNWJkODA5MWNkNzlkZmYzNTljODQxMmIwZGUxYTlwLTEsCisgICAgLTB4MS5mY2NmNTBwMQorICB9LAorICB7IC8vIEVudHJ5IDY3NAorICAgIC0weDEuYzVmMDU5ODJlYWJmMDIyNzQ4OTYwOTYxNjY2ZDU0MGRwLTEsCisgICAgMHgxLjBlZDE3MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjc1CisgICAgMHgxLmM1ZjA1OTgyZWFiZjAyMjc0ODk2MDk2MTY2NmQ1NDBkcC0xLAorICAgIC0weDEuMGVkMTcwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzYKKyAgICAtMHgxLmYzMjliZmJkYTgxMjJmODNlM2ExZWEwMjQyZWI3NmFhcC0xLAorICAgIDB4MS4xZjNiMzhwMgorICB9LAorICB7IC8vIEVudHJ5IDY3NworICAgIDB4MS5mMzI5YmZiZGE4MTIyZjgzZTNhMWVhMDI0MmViNzZhYXAtMSwKKyAgICAtMHgxLjFmM2IzOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjc4CisgICAgLTB4MS5mZmJjYTg4YWU5MGYwOTAwYjZkM2FkODllZGRkMmM4MHAtMSwKKyAgICAweDEuMmZhNXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjc5CisgICAgMHgxLmZmYmNhODhhZTkwZjA5MDBiNmQzYWQ4OWVkZGQyYzgwcC0xLAorICAgIC0weDEuMmZhNXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjgwCisgICAgLTB4MS5lYWQ2ODc0MDljOTVkY2FmNjFhZjk4NTEzNTE3ZjUwN3AtMSwKKyAgICAweDEuNDAwZWM4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODEKKyAgICAweDEuZWFkNjg3NDA5Yzk1ZGNhZjYxYWY5ODUxMzUxN2Y1MDdwLTEsCisgICAgLTB4MS40MDBlYzhwMgorICB9LAorICB7IC8vIEVudHJ5IDY4MgorICAgIC0weDEuYjVkNTRmZDc5MzcyYjkwZDVkNGM3YWNmN2FkYWVkNDJwLTEsCisgICAgMHgxLjUwNzg5MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjgzCisgICAgMHgxLmI1ZDU0ZmQ3OTM3MmI5MGQ1ZDRjN2FjZjdhZGFlZDQycC0xLAorICAgIC0weDEuNTA3ODkwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODQKKyAgICAtMHgxLjY0MzA5MmY0MmFlNzk3Mzc1NTMxNDIwYzAwNWNhMmNmcC0xLAorICAgIDB4MS42MGUyNThwMgorICB9LAorICB7IC8vIEVudHJ5IDY4NQorICAgIDB4MS42NDMwOTJmNDJhZTc5NzM3NTUzMTQyMGMwMDVjYTJjZnAtMSwKKyAgICAtMHgxLjYwZTI1OHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjg2CisgICAgLTB4MS5mNjdlZGYzYjdiZWU4NTU0ZDU0ZDg0ZWE4M2Y2Y2IyMXAtMiwKKyAgICAweDEuNzE0YzIwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODcKKyAgICAweDEuZjY3ZWRmM2I3YmVlODU1NGQ1NGQ4NGVhODNmNmNiMjFwLTIsCisgICAgLTB4MS43MTRjMjBwMgorICB9LAorICB7IC8vIEVudHJ5IDY4OAorICAgIC0weDEuMDNiZTRkOTNkOTQ5MzI1MzQwYjJmNDY0MjAxNTQ1YTdwLTIsCisgICAgMHgxLjgxYjVlOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjg5CisgICAgMHgxLjAzYmU0ZDkzZDk0OTMyNTM0MGIyZjQ2NDIwMTU0NWE3cC0yLAorICAgIC0weDEuODFiNWU4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTAKKyAgICAweDEuZWZiMjZjZmEyMGYyMDk4ZmY3ZTllNDJmMDI2MGViMDFwLTUsCisgICAgMHgxLmVmZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDY5MQorICAgIC0weDEuZWZiMjZjZmEyMGYyMDk4ZmY3ZTllNDJmMDI2MGViMDFwLTUsCisgICAgLTB4MS5lZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTIKKyAgICAweDEuZWZiMjZlZjkzMGM0ZDNmMmIwZGJlMTkzMWJhNWFlNjRwLTUsCisgICAgMHgxLmYwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjkzCisgICAgLTB4MS5lZmIyNmVmOTMwYzRkM2YyYjBkYmUxOTMxYmE1YWU2NHAtNSwKKyAgICAtMHgxLmYwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjk0CisgICAgMHgxLmVmYjI3MGY4NDA5NzljNjViNzVlZTVjNjcwMTZhODY2cC01LAorICAgIDB4MS5mMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTUKKyAgICAtMHgxLmVmYjI3MGY4NDA5NzljNjViNzVlZTVjNjcwMTZhODY2cC01LAorICAgIC0weDEuZjAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgNjk2CisgICAgMHgxLmY2YmFhODE2ZmNlNWVhNWE2MGQ4YzlmZDJhMjg5MzgwcC00LAorICAgIDB4MS5mN2ZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTcKKyAgICAtMHgxLmY2YmFhODE2ZmNlNWVhNWE2MGQ4YzlmZDJhMjg5MzgwcC00LAorICAgIC0weDEuZjdmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjk4CisgICAgMHgxLmY2YmFhYTEzMWRlNjQzOGU1NjExMjc5ODY0ZmU3NjYzcC00LAorICAgIDB4MS5mOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDY5OQorICAgIC0weDEuZjZiYWFhMTMxZGU2NDM4ZTU2MTEyNzk4NjRmZTc2NjNwLTQsCisgICAgLTB4MS5mOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDcwMAorICAgIDB4MS5mNmJhYWMwZjNlZTY5NGU3NjBhMTM4YmMwNmM4YmUzZHAtNCwKKyAgICAweDEuZjgwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgNzAxCisgICAgLTB4MS5mNmJhYWMwZjNlZTY5NGU3NjBhMTM4YmMwNmM4YmUzZHAtNCwKKyAgICAtMHgxLmY4MDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDcwMgorICAgIDB4MS40YThjMzk1NTUyZmI0MzJhZjMxNzgwZTg4M2M5OGY3MXAtMywKKyAgICAweDEuNGJmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzAzCisgICAgLTB4MS40YThjMzk1NTUyZmI0MzJhZjMxNzgwZTg4M2M5OGY3MXAtMywKKyAgICAtMHgxLjRiZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDcwNAorICAgIDB4MS40YThjM2I0ZTljN2ZmZmQ0ODMwNWY0NGE0MmY1ZjUwZnAtMywKKyAgICAweDEuNGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDUKKyAgICAtMHgxLjRhOGMzYjRlOWM3ZmZmZDQ4MzA1ZjQ0YTQyZjVmNTBmcC0zLAorICAgIC0weDEuNGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDYKKyAgICAweDEuNGE4YzNkNDdlNjA0YTdkNTRmM2Y3ZGU0MDI0MDllMmNwLTMsCisgICAgMHgxLjRjMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDcwNworICAgIC0weDEuNGE4YzNkNDdlNjA0YTdkNTRmM2Y3ZGU0MDI0MDllMmNwLTMsCisgICAgLTB4MS40YzAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDgKKyAgICAweDEuMmU5Y2Q4MzYzMGViMzVjMTJlZmNmYjg0MTM1ODM5OThwLTIsCisgICAgMHgxLjMzMzMzMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDcwOQorICAgIC0weDEuMmU5Y2Q4MzYzMGViMzVjMTJlZmNmYjg0MTM1ODM5OThwLTIsCisgICAgLTB4MS4zMzMzMzJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTAKKyAgICAweDEuMmU5Y2RhMWY1MmM4ODA0MjgzM2YyMzZmZjBmOWQ0ODZwLTIsCisgICAgMHgxLjMzMzMzNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDcxMQorICAgIC0weDEuMmU5Y2RhMWY1MmM4ODA0MjgzM2YyMzZmZjBmOWQ0ODZwLTIsCisgICAgLTB4MS4zMzMzMzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTIKKyAgICAweDEuMmU5Y2RjMDg3NGE1N2YxY2EwZjk3NmE5YjAxZTRhNzFwLTIsCisgICAgMHgxLjMzMzMzNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDcxMworICAgIC0weDEuMmU5Y2RjMDg3NGE1N2YxY2EwZjk3NmE5YjAxZTRhNzFwLTIsCisgICAgLTB4MS4zMzMzMzZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTQKKyAgICAweDEuM2ZhZWZiMmI2OGU2Nzg2ZWI2OTJiZDRlNDA0NTIxM2VwLTEsCisgICAgMHgxLjU5NDMxNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxNQorICAgIC0weDEuM2ZhZWZiMmI2OGU2Nzg2ZWI2OTJiZDRlNDA0NTIxM2VwLTEsCisgICAgLTB4MS41OTQzMTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTYKKyAgICAweDEuM2ZhZWZjYmI1N2MyNmIwZDg0YjYzZGJmYjcyYjQxM2JwLTEsCisgICAgMHgxLjU5NDMxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxNworICAgIC0weDEuM2ZhZWZjYmI1N2MyNmIwZDg0YjYzZGJmYjcyYjQxM2JwLTEsCisgICAgLTB4MS41OTQzMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTgKKyAgICAweDEuM2ZhZWZlNGI0NjlkMWRmZDU2MWU2NjZlZGRhN2M2ZTZwLTEsCisgICAgMHgxLjU5NDMxYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxOQorICAgIC0weDEuM2ZhZWZlNGI0NjlkMWRmZDU2MWU2NjZlZGRhN2M2ZTZwLTEsCisgICAgLTB4MS41OTQzMWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjAKKyAgICAweDEuNjg4OGEzNzVhYjIyOGMxZTAzMWM0MDA1NzY5NTA5ZjlwLTEsCisgICAgMHgxLjhmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcyMQorICAgIC0weDEuNjg4OGEzNzVhYjIyOGMxZTAzMWM0MDA1NzY5NTA5ZjlwLTEsCisgICAgLTB4MS44ZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjIKKyAgICAweDEuNjg4OGE0ZTEzNGIyZWE1MjBiMjI2ZWNhODY5NGIzYTJwLTEsCisgICAgMHgxLjkwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzIzCisgICAgLTB4MS42ODg4YTRlMTM0YjJlYTUyMGIyMjZlY2E4Njk0YjNhMnAtMSwKKyAgICAtMHgxLjkwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzI0CisgICAgMHgxLjY4ODhhNjRjYmU0MWRmZmQ2ZTQ3NjhkY2NhNGRiNTNicC0xLAorICAgIDB4MS45MDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjUKKyAgICAtMHgxLjY4ODhhNjRjYmU0MWRmZmQ2ZTQ3NjhkY2NhNGRiNTNicC0xLAorICAgIC0weDEuOTAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzI2CisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDcyNworICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzI4CisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDcyOQorICAgIDAuMGYsCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzMwCisgICAgLTAuMGYsCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDczMQorICAgIDB4MS45MWY2NWRjY2ZlYWQzNTNkOGRiOWMzMmYxMjI2MjczMHAtNSwKKyAgICAweDEuOTIxZmI0cC01CisgIH0sCisgIHsgLy8gRW50cnkgNzMyCisgICAgLTB4MS45MWY2NWRjY2ZlYWQzNTNkOGRiOWMzMmYxMjI2MjczMHAtNSwKKyAgICAtMHgxLjkyMWZiNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDczMworICAgIDB4MS45MWY2NWZjYzYwY2I2ZDA5ZmNjNWMzNWRkNmE3OThjOHAtNSwKKyAgICAweDEuOTIxZmI2cC01CisgIH0sCisgIHsgLy8gRW50cnkgNzM0CisgICAgLTB4MS45MWY2NWZjYzYwY2I2ZDA5ZmNjNWMzNWRkNmE3OThjOHAtNSwKKyAgICAtMHgxLjkyMWZiNnAtNQorICB9LAorICB7IC8vIEVudHJ5IDczNQorICAgIDB4MS45MWY2NjFjYmMyZTlhMzQ0NzU3MWY3MmJjZmJjMjFlMnAtNSwKKyAgICAweDEuOTIxZmI4cC01CisgIH0sCisgIHsgLy8gRW50cnkgNzM2CisgICAgLTB4MS45MWY2NjFjYmMyZTlhMzQ0NzU3MWY3MmJjZmJjMjFlMnAtNSwKKyAgICAtMHgxLjkyMWZiOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDczNworICAgIDB4MS45MTdhNmE3ZmU4Mjk3YmYwYTExMjVmYjAyYjIwMzhhZXAtNCwKKyAgICAweDEuOTIxZmI0cC00CisgIH0sCisgIHsgLy8gRW50cnkgNzM4CisgICAgLTB4MS45MTdhNmE3ZmU4Mjk3YmYwYTExMjVmYjAyYjIwMzhhZXAtNCwKKyAgICAtMHgxLjkyMWZiNHAtNAorICB9LAorICB7IC8vIEVudHJ5IDczOQorICAgIDB4MS45MTdhNmM3ZDcxMDNiOWQ5MGUwOTYxNTE2NDQ0OWM2YnAtNCwKKyAgICAweDEuOTIxZmI2cC00CisgIH0sCisgIHsgLy8gRW50cnkgNzQwCisgICAgLTB4MS45MTdhNmM3ZDcxMDNiOWQ5MGUwOTYxNTE2NDQ0OWM2YnAtNCwKKyAgICAtMHgxLjkyMWZiNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDc0MQorICAgIDB4MS45MTdhNmU3YWY5ZGRmMTdiOTE0ZTZkMmU4ZTgzYjMzZXAtNCwKKyAgICAweDEuOTIxZmI4cC00CisgIH0sCisgIHsgLy8gRW50cnkgNzQyCisgICAgLTB4MS45MTdhNmU3YWY5ZGRmMTdiOTE0ZTZkMmU4ZTgzYjMzZXAtNCwKKyAgICAtMHgxLjkyMWZiOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDc0MworICAgIDB4MS44ZjhiODI4ODkyOTZiNWNmNzkwNGRiMWU3NGIzNDY2YnAtMywKKyAgICAweDEuOTIxZmI0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzQ0CisgICAgLTB4MS44ZjhiODI4ODkyOTZiNWNmNzkwNGRiMWU3NGIzNDY2YnAtMywKKyAgICAtMHgxLjkyMWZiNHAtMworICB9LAorICB7IC8vIEVudHJ5IDc0NQorICAgIDB4MS44ZjhiODQ3ZWJjMTNiODk5OGVjNWIzN2U3MDY1MzQxZXAtMywKKyAgICAweDEuOTIxZmI2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzQ2CisgICAgLTB4MS44ZjhiODQ3ZWJjMTNiODk5OGVjNWIzN2U3MDY1MzQxZXAtMywKKyAgICAtMHgxLjkyMWZiNnAtMworICB9LAorICB7IC8vIEVudHJ5IDc0NworICAgIDB4MS44ZjhiODY3NGU1OTBhMjZhZWMzZWEwMWQzMGFlZDQ4NnAtMywKKyAgICAweDEuOTIxZmI4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzQ4CisgICAgLTB4MS44ZjhiODY3NGU1OTBhMjZhZWMzZWEwMWQzMGFlZDQ4NnAtMywKKyAgICAtMHgxLjkyMWZiOHAtMworICB9LAorICB7IC8vIEVudHJ5IDc0OQorICAgIDB4MS44N2RlMjkzZjU2OTcxN2E0MmEzYmRiMDFhZWFlMjA2M3AtMiwKKyAgICAweDEuOTIxZmI0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzUwCisgICAgLTB4MS44N2RlMjkzZjU2OTcxN2E0MmEzYmRiMDFhZWFlMjA2M3AtMiwKKyAgICAtMHgxLjkyMWZiNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc1MQorICAgIDB4MS44N2RlMmIxODVkNTQxN2RjYTgwMGI4NWNhMTMxOTA0M3AtMiwKKyAgICAweDEuOTIxZmI2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzUyCisgICAgLTB4MS44N2RlMmIxODVkNTQxN2RjYTgwMGI4NWNhMTMxOTA0M3AtMiwKKyAgICAtMHgxLjkyMWZiNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDc1MworICAgIDB4MS44N2RlMmNmMTY0MTBiNjFkOWFmZjdlNjI4ZmM4NTNiMnAtMiwKKyAgICAweDEuOTIxZmI4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzU0CisgICAgLTB4MS44N2RlMmNmMTY0MTBiNjFkOWFmZjdlNjI4ZmM4NTNiMnAtMiwKKyAgICAtMHgxLjkyMWZiOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc1NQorICAgIDB4MS42YTA5ZTU4MmFhMzk0NTQ2MWI1YThhMDc4N2Q1YWI1YnAtMSwKKyAgICAweDEuOTIxZmI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzU2CisgICAgLTB4MS42YTA5ZTU4MmFhMzk0NTQ2MWI1YThhMDc4N2Q1YWI1YnAtMSwKKyAgICAtMHgxLjkyMWZiNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc1NworICAgIDB4MS42YTA5ZTZlY2I0MWZkZDdlNjgxODcyYzg1NDg4NzAxOXAtMSwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzU4CisgICAgLTB4MS42YTA5ZTZlY2I0MWZkZDdlNjgxODcyYzg1NDg4NzAxOXAtMSwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDc1OQorICAgIDB4MS42YTA5ZTg1NmJlMDUwYmFjY2RlOWE3Njk2MWU4NGFhN3AtMSwKKyAgICAweDEuOTIxZmI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzYwCisgICAgLTB4MS42YTA5ZTg1NmJlMDUwYmFjY2RlOWE3Njk2MWU4NGFhN3AtMSwKKyAgICAtMHgxLjkyMWZiOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc2MQorICAgIDB4MS5mZmZmZmZmZmZmZmU2NTQ2Y2MzODIxMWMyNmRhYmVlYnAtMSwKKyAgICAweDEuOTIxZmI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZTY1NDZjYzM4MjExYzI2ZGFiZWVicC0xLAorICAgIC0weDEuOTIxZmI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjMKKyAgICAweDEuZmZmZmZmZmZmZmZmNzY1MjEyNDljNzQyMjkzMGVkODJwLTEsCisgICAgMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzY0CisgICAgLTB4MS5mZmZmZmZmZmZmZmY3NjUyMTI0OWM3NDIyOTMwZWQ4MnAtMSwKKyAgICAtMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzY1CisgICAgMHgxLmZmZmZmZmZmZmZmODg3NWQ1ODViNmQ2Y2ZjZTk3ZDljcC0xLAorICAgIDB4MS45MjFmYjhwMAorICB9LAorICB7IC8vIEVudHJ5IDc2NgorICAgIC0weDEuZmZmZmZmZmZmZmY4ODc1ZDU4NWI2ZDZjZmNlOTdkOWNwLTEsCisgICAgLTB4MS45MjFmYjhwMAorICB9LAorICB7IC8vIEVudHJ5IDc2NworICAgIDB4MS40NDQyZDE4NDY5ODgzMWYxNWI2MzE1YmZhNmI1YWU3NXAtMjMsCisgICAgMHgxLjkyMWZiNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzY4CisgICAgLTB4MS40NDQyZDE4NDY5ODgzMWYxNWI2MzE1YmZhNmI1YWU3NXAtMjMsCisgICAgLTB4MS45MjFmYjRwMQorICB9LAorICB7IC8vIEVudHJ5IDc2OQorICAgIC0weDEuNzc3YTVjZjcyY2VjNWZkNjE4OTZjYjRmNDBkMWRlNzlwLTI0LAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDc3MAorICAgIDB4MS43NzdhNWNmNzJjZWM1ZmQ2MTg5NmNiNGY0MGQxZGU3OXAtMjQsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDc3MQorICAgIC0weDEuNWRkZTk3M2RjYjM0NmFmYTQ2MjAzY2RkYzZmN2ZlOTdwLTIyLAorICAgIDB4MS45MjFmYjhwMQorICB9LAorICB7IC8vIEVudHJ5IDc3MgorICAgIDB4MS41ZGRlOTczZGNiMzQ2YWZhNDYyMDNjZGRjNmY3ZmU5N3AtMjIsCisgICAgLTB4MS45MjFmYjhwMQorICB9LAorICB7IC8vIEVudHJ5IDc3MworICAgIC0weDEuNDQ0MmQxODQ2OTg0MjE3NjI4ODcyZTU2ZWI1OGI0YzFwLTIyLAorICAgIDB4MS45MjFmYjRwMgorICB9LAorICB7IC8vIEVudHJ5IDc3NAorICAgIDB4MS40NDQyZDE4NDY5ODQyMTc2Mjg4NzJlNTZlYjU4YjRjMXAtMjIsCisgICAgLTB4MS45MjFmYjRwMgorICB9LAorICB7IC8vIEVudHJ5IDc3NQorICAgIDB4MS43NzdhNWNmNzJjZWFjYmY2ZWM2NTdlOTc3ZWY3NzFmMXAtMjMsCisgICAgMHgxLjkyMWZiNnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzc2CisgICAgLTB4MS43NzdhNWNmNzJjZWFjYmY2ZWM2NTdlOTc3ZWY3NzFmMXAtMjMsCisgICAgLTB4MS45MjFmYjZwMgorICB9LAorICB7IC8vIEVudHJ5IDc3NworICAgIDB4MS41ZGRlOTczZGNiMWZmZjEwYmIwMzg4NDc5ZTgyZjRiYnAtMjEsCisgICAgMHgxLjkyMWZiOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzc4CisgICAgLTB4MS41ZGRlOTczZGNiMWZmZjEwYmIwMzg4NDc5ZTgyZjRiYnAtMjEsCisgICAgLTB4MS45MjFmYjhwMgorICB9LAorICB7IC8vIEVudHJ5IDc3OQorICAgIC0weDEuNDQ0MmQxODQ2OTczZGY4OTVkMTc5MTAyM2RlZDUxM2NwLTIxLAorICAgIDB4MS45MjFmYjRwMworICB9LAorICB7IC8vIEVudHJ5IDc4MAorICAgIDB4MS40NDQyZDE4NDY5NzNkZjg5NWQxNzkxMDIzZGVkNTEzY3AtMjEsCisgICAgLTB4MS45MjFmYjRwMworICB9LAorICB7IC8vIEVudHJ5IDc4MQorICAgIDB4MS43NzdhNWNmNzJjZTQ3YzdhM2JhMDRiYzJhNjA3YTlhN3AtMjIsCisgICAgMHgxLjkyMWZiNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNzgyCisgICAgLTB4MS43NzdhNWNmNzJjZTQ3YzdhM2JhMDRiYzJhNjA3YTlhN3AtMjIsCisgICAgLTB4MS45MjFmYjZwMworICB9LAorICB7IC8vIEVudHJ5IDc4MworICAgIDB4MS41ZGRlOTczZGNhY2U0ZjZhOGU5MGJkMTVlMDA2MTBmOHAtMjAsCisgICAgMHgxLjkyMWZiOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzg0CisgICAgLTB4MS41ZGRlOTczZGNhY2U0ZjZhOGU5MGJkMTVlMDA2MTBmOHAtMjAsCisgICAgLTB4MS45MjFmYjhwMworICB9LAorICB7IC8vIEVudHJ5IDc4NQorICAgIC0weDEuNDQ0MmQxODQ2OTMyZDdkNjJmNTkyMDkzODhjN2Y3Y2FwLTIwLAorICAgIDB4MS45MjFmYjRwNAorICB9LAorICB7IC8vIEVudHJ5IDc4NgorICAgIDB4MS40NDQyZDE4NDY5MzJkN2Q2MmY1OTIwOTM4OGM3ZjdjYXAtMjAsCisgICAgLTB4MS45MjFmYjRwNAorICB9LAorICB7IC8vIEVudHJ5IDc4NworICAgIDB4MS43NzdhNWNmNzJjY2IzZTg3Nzg4YjgxMTIyOWU3MjViY3AtMjEsCisgICAgMHgxLjkyMWZiNnA0CisgIH0sCisgIHsgLy8gRW50cnkgNzg4CisgICAgLTB4MS43NzdhNWNmNzJjY2IzZTg3Nzg4YjgxMTIyOWU3MjViY3AtMjEsCisgICAgLTB4MS45MjFmYjZwNAorICB9LAorICB7IC8vIEVudHJ5IDc4OQorICAgIDB4MS41ZGRlOTczZGM5ODc5MGQxZGNjNjAyYmQxYjg2YmNjYXAtMTksCisgICAgMHgxLjkyMWZiOHA0CisgIH0sCisgIHsgLy8gRW50cnkgNzkwCisgICAgLTB4MS41ZGRlOTczZGM5ODc5MGQxZGNjNjAyYmQxYjg2YmNjYXAtMTksCisgICAgLTB4MS45MjFmYjhwNAorICB9LAorICB7IC8vIEVudHJ5IDc5MQorICAgIC0weDEuNDQ0MmQxODQ2ODJlYjkwOTc4NWZhZDE4YmNiNWRiZmNwLTE5LAorICAgIDB4MS45MjFmYjRwNQorICB9LAorICB7IC8vIEVudHJ5IDc5MgorICAgIDB4MS40NDQyZDE4NDY4MmViOTA5Nzg1ZmFkMThiY2I1ZGJmY3AtMTksCisgICAgLTB4MS45MjFmYjRwNQorICB9LAorICB7IC8vIEVudHJ5IDc5MworICAgIDB4MS43NzdhNWNmNzJjNjY0NmJjNmMzODYwN2ViMzRlZWExM3AtMjAsCisgICAgMHgxLjkyMWZiNnA1CisgIH0sCisgIHsgLy8gRW50cnkgNzk0CisgICAgLTB4MS43NzdhNWNmNzJjNjY0NmJjNmMzODYwN2ViMzRlZWExM3AtMjAsCisgICAgLTB4MS45MjFmYjZwNQorICB9LAorICB7IC8vIEVudHJ5IDc5NQorICAgIDB4MS41ZGRlOTczZGM0NmM5NjZmMTVhMjQwM2Q2MGNkMTRkMHAtMTgsCisgICAgMHgxLjkyMWZiOHA1CisgIH0sCisgIHsgLy8gRW50cnkgNzk2CisgICAgLTB4MS41ZGRlOTczZGM0NmM5NjZmMTVhMjQwM2Q2MGNkMTRkMHAtMTgsCisgICAgLTB4MS45MjFmYjhwNQorICB9LAorICB7IC8vIEVudHJ5IDc5NworICAgIC0weDEuNDQ0MmQxODQ2NDFlM2RkNjljN2VjMzJlMTRhMjA5YTVwLTE4LAorICAgIDB4MS45MjFmYjRwNgorICB9LAorICB7IC8vIEVudHJ5IDc5OAorICAgIDB4MS40NDQyZDE4NDY0MWUzZGQ2OWM3ZWMzMmUxNGEyMDlhNXAtMTgsCisgICAgLTB4MS45MjFmYjRwNgorICB9LAorICB7IC8vIEVudHJ5IDc5OQorICAgIDB4MS43NzdhNWNmNzJhZDI2NzkwM2FlYzgxMTg3NzhiM2I1YXAtMTksCisgICAgMHgxLjkyMWZiNnA2CisgIH0sCisgIHsgLy8gRW50cnkgODAwCisgICAgLTB4MS43NzdhNWNmNzJhZDI2NzkwM2FlYzgxMTg3NzhiM2I1YXAtMTksCisgICAgLTB4MS45MjFmYjZwNgorICB9LAorICB7IC8vIEVudHJ5IDgwMQorICAgIDB4MS41ZGRlOTczZGIwMDBhY2UzZjk4NWE0NzNlYTFmYzAzOXAtMTcsCisgICAgMHgxLjkyMWZiOHA2CisgIH0sCisgIHsgLy8gRW50cnkgODAyCisgICAgLTB4MS41ZGRlOTczZGIwMDBhY2UzZjk4NWE0NzNlYTFmYzAzOXAtMTcsCisgICAgLTB4MS45MjFmYjhwNgorICB9LAorICB7IC8vIEVudHJ5IDgwMworICAgIC0weDEuNDQ0MmQxODQ1M2RjNTEwYjJkNDk1YjhiZjc5YmQxY2VwLTE3LAorICAgIDB4MS45MjFmYjRwNworICB9LAorICB7IC8vIEVudHJ5IDgwNAorICAgIDB4MS40NDQyZDE4NDUzZGM1MTBiMmQ0OTViOGJmNzliZDFjZXAtMTcsCisgICAgLTB4MS45MjFmYjRwNworICB9LAorICB7IC8vIEVudHJ5IDgwNQorICAgIDB4MS43NzdhNWNmNzI0ODJlYWRmNzVjNzMxZjk3MjUwNzcxOHAtMTgsCisgICAgMHgxLjkyMWZiNnA3CisgIH0sCisgIHsgLy8gRW50cnkgODA2CisgICAgLTB4MS43NzdhNWNmNzI0ODJlYWRmNzVjNzMxZjk3MjUwNzcxOHAtMTgsCisgICAgLTB4MS45MjFmYjZwNworICB9LAorICB7IC8vIEVudHJ5IDgwNworICAgIDB4MS41ZGRlOTczZDVlNTEwNmI3OTAzYTE4YTU1MmFlZmM2ZXAtMTYsCisgICAgMHgxLjkyMWZiOHA3CisgIH0sCisgIHsgLy8gRW50cnkgODA4CisgICAgLTB4MS41ZGRlOTczZDVlNTEwNmI3OTAzYTE4YTU1MmFlZmM2ZXAtMTYsCisgICAgLTB4MS45MjFmYjhwNworICB9LAorICB7IC8vIEVudHJ5IDgwOQorICAgIDB4MS42YTA5ZjE5NDBiODBjOGUyNWNmYzhjMTBkNDI1NzZjNnAtMSwKKyAgICAweDEuMmQ5N2M0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTAKKyAgICAtMHgxLjZhMDlmMTk0MGI4MGM4ZTI1Y2ZjOGMxMGQ0MjU3NmM2cC0xLAorICAgIC0weDEuMmQ5N2M0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTEKKyAgICAweDEuNmEwOWViZWJlNDA4ODkyNDVkNTdjNWM5ZDkwYTZkODJwLTEsCisgICAgMHgxLjJkOTdjNnAxCisgIH0sCisgIHsgLy8gRW50cnkgODEyCisgICAgLTB4MS42YTA5ZWJlYmU0MDg4OTI0NWQ1N2M1YzlkOTBhNmQ4MnAtMSwKKyAgICAtMHgxLjJkOTdjNnAxCisgIH0sCisgIHsgLy8gRW50cnkgODEzCisgICAgMHgxLjZhMDllNjQzYmM3OWE4Yzc5ZWY0YmYxODc3MjdlMjY5cC0xLAorICAgIDB4MS4yZDk3YzhwMQorICB9LAorICB7IC8vIEVudHJ5IDgxNAorICAgIC0weDEuNmEwOWU2NDNiYzc5YThjNzllZjRiZjE4NzcyN2UyNjlwLTEsCisgICAgLTB4MS4yZDk3YzhwMQorICB9LAorICB7IC8vIEVudHJ5IDgxNQorICAgIC0weDEuNmEwOWRmMTk3MDRjZjE0MTA4ZTA5MDAwZmY2Mzc0YmZwLTEsCisgICAgMHgxLmY2YTdhMHAxCisgIH0sCisgIHsgLy8gRW50cnkgODE2CisgICAgMHgxLjZhMDlkZjE5NzA0Y2YxNDEwOGUwOTAwMGZmNjM3NGJmcC0xLAorICAgIC0weDEuZjZhN2EwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTcKKyAgICAtMHgxLjZhMDllNGMxOTdmODdhY2UxYzgxYjQzMDIyYmUzOWIxcC0xLAorICAgIDB4MS5mNmE3YTJwMQorICB9LAorICB7IC8vIEVudHJ5IDgxOAorICAgIDB4MS42YTA5ZTRjMTk3Zjg3YWNlMWM4MWI0MzAyMmJlMzliMXAtMSwKKyAgICAtMHgxLmY2YTdhMnAxCisgIH0sCisgIHsgLy8gRW50cnkgODE5CisgICAgLTB4MS42YTA5ZWE2OWJmOGQ2M2JjZTQwOTU4ZjVjNGI0ZjE1NXAtMSwKKyAgICAweDEuZjZhN2E0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjAKKyAgICAweDEuNmEwOWVhNjliZjhkNjNiY2U0MDk1OGY1YzRiNGYxNTVwLTEsCisgICAgLTB4MS5mNmE3YTRwMQorICB9LAorICB7IC8vIEVudHJ5IDgyMQorICAgIC0weDEuZmZmZmZmZmZmZjA2NWNiMjQwYmI4Zjk1MTlkMmM2ZjFwLTEsCisgICAgMHgxLjJkOTdjNHAyCisgIH0sCisgIHsgLy8gRW50cnkgODIyCisgICAgMHgxLmZmZmZmZmZmZmYwNjVjYjI0MGJiOGY5NTE5ZDJjNmYxcC0xLAorICAgIC0weDEuMmQ5N2M0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjMKKyAgICAtMHgxLmZmZmZmZmZmZmZjMzI5Mzk4OThmNDY0YWFmYzJlNzRhcC0xLAorICAgIDB4MS4yZDk3YzZwMgorICB9LAorICB7IC8vIEVudHJ5IDgyNAorICAgIDB4MS5mZmZmZmZmZmZmYzMyOTM5ODk4ZjQ2NGFhZmMyZTc0YXAtMSwKKyAgICAtMHgxLjJkOTdjNnAyCisgIH0sCisgIHsgLy8gRW50cnkgODI1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmNWMwZDI2MzBlZTBhMWZiNGU3YnAtMSwKKyAgICAweDEuMmQ5N2M4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjVjMGQyNjMwZWUwYTFmYjRlN2JwLTEsCisgICAgLTB4MS4yZDk3YzhwMgorICB9LAorICB7IC8vIEVudHJ5IDgyNworICAgIC0weDEuNmEwOWY1MjkzMTZjZGU1YTE5MGQyMzVjYzRjY2I4MjVwLTEsCisgICAgMHgxLjVmZGJiY3AyCisgIH0sCisgIHsgLy8gRW50cnkgODI4CisgICAgMHgxLjZhMDlmNTI5MzE2Y2RlNWExOTBkMjM1Y2M0Y2NiODI1cC0xLAorICAgIC0weDEuNWZkYmJjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjkKKyAgICAtMHgxLjZhMDllOWQ4ZTI4MjY3NzA1NjdlYTgxOGIyZTg5OTYwcC0xLAorICAgIDB4MS41ZmRiYmVwMgorICB9LAorICB7IC8vIEVudHJ5IDgzMAorICAgIDB4MS42YTA5ZTlkOGUyODI2NzcwNTY3ZWE4MThiMmU4OTk2MHAtMSwKKyAgICAtMHgxLjVmZGJiZXAyCisgIH0sCisgIHsgLy8gRW50cnkgODMxCisgICAgLTB4MS42YTA5ZGU4ODkzM2Q2ZTBjMWRiNzhlMWQ3Y2QxNTE3M3AtMSwKKyAgICAweDEuNWZkYmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzIKKyAgICAweDEuNmEwOWRlODg5MzNkNmUwYzFkYjc4ZTFkN2NkMTUxNzNwLTEsCisgICAgLTB4MS41ZmRiYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDgzMworICAgIDB4MS42YTA5ZDAzM2ZhNzE1YTQwN2E2ZjAzZDAxYjkxMTEzZnAtMSwKKyAgICAweDEuYzQ2M2E4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzQKKyAgICAtMHgxLjZhMDlkMDMzZmE3MTVhNDA3YTZmMDNkMDFiOTExMTNmcC0xLAorICAgIC0weDEuYzQ2M2E4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzUKKyAgICAweDEuNmEwOWRiODQ0YTI4Zjg2MzU4NTFmZGY4ODE4NTE1ZWZwLTEsCisgICAgMHgxLmM0NjNhYXAyCisgIH0sCisgIHsgLy8gRW50cnkgODM2CisgICAgLTB4MS42YTA5ZGI4NDRhMjhmODYzNTg1MWZkZjg4MTg1MTVlZnAtMSwKKyAgICAtMHgxLmM0NjNhYXAyCisgIH0sCisgIHsgLy8gRW50cnkgODM3CisgICAgMHgxLjZhMDllNmQ0OTk4NjE0MGY1NTIyNmZjNTg2NzI2MTJjcC0xLAorICAgIDB4MS5jNDYzYWNwMgorICB9LAorICB7IC8vIEVudHJ5IDgzOAorICAgIC0weDEuNmEwOWU2ZDQ5OTg2MTQwZjU1MjI2ZmM1ODY3MjYxMmNwLTEsCisgICAgLTB4MS5jNDYzYWNwMgorICB9LAorICB7IC8vIEVudHJ5IDgzOQorICAgIDB4MS5mZmZmZmZmZmZmOTUzOTc5MzRjYWMxZjI4NTMyZDNkM3AtMSwKKyAgICAweDEuZjZhN2EwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDAKKyAgICAtMHgxLmZmZmZmZmZmZmY5NTM5NzkzNGNhYzFmMjg1MzJkM2QzcC0xLAorICAgIC0weDEuZjZhN2EwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDEKKyAgICAweDEuZmZmZmZmZmZmZmZhOGU1YWFlMmJiOTNhZTU5MGY5ODRwLTEsCisgICAgMHgxLmY2YTdhMnAyCisgIH0sCisgIHsgLy8gRW50cnkgODQyCisgICAgLTB4MS5mZmZmZmZmZmZmZmE4ZTVhYWUyYmI5M2FlNTkwZjk4NHAtMSwKKyAgICAtMHgxLmY2YTdhMnAyCisgIH0sCisgIHsgLy8gRW50cnkgODQzCisgICAgMHgxLmZmZmZmZmZmZmZkZmUzM2MyNzhjYjQ4YTU5ZWUzZWYycC0xLAorICAgIDB4MS5mNmE3YTRwMgorICB9LAorICB7IC8vIEVudHJ5IDg0NAorICAgIC0weDEuZmZmZmZmZmZmZmRmZTMzYzI3OGNiNDhhNTllZTNlZjJwLTEsCisgICAgLTB4MS5mNmE3YTRwMgorICB9LAorICB7IC8vIEVudHJ5IDg0NQorICAgIDB4MS42YTBhMDQwZWE1YzMyYmE0YWZiZWI4NmE2MTRjNWQxNnAtMSwKKyAgICAweDEuMTQ3NWNhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDYKKyAgICAtMHgxLjZhMGEwNDBlYTVjMzJiYTRhZmJlYjg2YTYxNGM1ZDE2cC0xLAorICAgIC0weDEuMTQ3NWNhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDcKKyAgICAweDEuNmEwOWVkNmUwODgyMTJiMWUyNjBhNTEzMmQ2OTU5YjdwLTEsCisgICAgMHgxLjE0NzVjY3AzCisgIH0sCisgIHsgLy8gRW50cnkgODQ4CisgICAgLTB4MS42YTA5ZWQ2ZTA4ODIxMmIxZTI2MGE1MTMyZDY5NTliN3AtMSwKKyAgICAtMHgxLjE0NzVjY3AzCisgIH0sCisgIHsgLy8gRW50cnkgODQ5CisgICAgMHgxLjZhMDlkNmNkNjlkNmVmZDFhNmZhMmRkNGM2MTdjYmJlcC0xLAorICAgIDB4MS4xNDc1Y2VwMworICB9LAorICB7IC8vIEVudHJ5IDg1MAorICAgIC0weDEuNmEwOWQ2Y2Q2OWQ2ZWZkMWE2ZmEyZGQ0YzYxN2NiYmVwLTEsCisgICAgLTB4MS4xNDc1Y2VwMworICB9LAorICB7IC8vIEVudHJ5IDg1MQorICAgIDB4MS5mOTk5MGU5MWE2NGFlNDg2NzU3ODc4YmRmZWUwZjcwM3AtMjAsCisgICAgMHgxLjJkOTdjNHAzCisgIH0sCisgIHsgLy8gRW50cnkgODUyCisgICAgLTB4MS5mOTk5MGU5MWE2NGFlNDg2NzU3ODc4YmRmZWUwZjcwM3AtMjAsCisgICAgLTB4MS4yZDk3YzRwMworICB9LAorICB7IC8vIEVudHJ5IDg1MworICAgIDB4MS5mMzMyMWQyMzRlZDgxMjhhYWJiMDQ5OWE0M2I0ZGVmMnAtMjEsCisgICAgMHgxLjJkOTdjNnAzCisgIH0sCisgIHsgLy8gRW50cnkgODU0CisgICAgLTB4MS5mMzMyMWQyMzRlZDgxMjhhYWJiMDQ5OWE0M2I0ZGVmMnAtMjEsCisgICAgLTB4MS4yZDk3YzZwMworICB9LAorICB7IC8vIEVudHJ5IDg1NQorICAgIC0weDEuOTliYzViOTYxYjFhYzI5NmRiZTE5ODBmZDJjODkwYTBwLTI2LAorICAgIDB4MS4yZDk3YzhwMworICB9LAorICB7IC8vIEVudHJ5IDg1NgorICAgIDB4MS45OWJjNWI5NjFiMWFjMjk2ZGJlMTk4MGZkMmM4OTBhMHAtMjYsCisgICAgLTB4MS4yZDk3YzhwMworICB9LAorICB7IC8vIEVudHJ5IDg1NworICAgIC0weDEuNmEwOWMxNGU4M2Y4ZGIwODBkMTIyM2Y4ODdjYzEyZWNwLTEsCisgICAgMHgxLjQ2YjljMHAzCisgIH0sCisgIHsgLy8gRW50cnkgODU4CisgICAgMHgxLjZhMDljMTRlODNmOGRiMDgwZDEyMjNmODg3Y2MxMmVjcC0xLAorICAgIC0weDEuNDZiOWMwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTkKKyAgICAtMHgxLjZhMDlkN2VmMjNmYmVjMWVkODEyZTgwN2JlYjA0OTJmcC0xLAorICAgIDB4MS40NmI5YzJwMworICB9LAorICB7IC8vIEVudHJ5IDg2MAorICAgIDB4MS42YTA5ZDdlZjIzZmJlYzFlZDgxMmU4MDdiZWIwNDkyZnAtMSwKKyAgICAtMHgxLjQ2YjljMnAzCisgIH0sCisgIHsgLy8gRW50cnkgODYxCisgICAgLTB4MS42YTA5ZWU4ZmMyOTRmMzVkYjNlZmNlNTY1MzY1YWY4OXAtMSwKKyAgICAweDEuNDZiOWM0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjIKKyAgICAweDEuNmEwOWVlOGZjMjk0ZjM1ZGIzZWZjZTU2NTM2NWFmODlwLTEsCisgICAgLTB4MS40NmI5YzRwMworICB9LAorICB7IC8vIEVudHJ5IDg2MworICAgIC0weDEuZmZmZmZmZmZmZTRjOTZiMzk3ZDk1MWNiMjE4NjFjOTVwLTEsCisgICAgMHgxLjVmZGJiY3AzCisgIH0sCisgIHsgLy8gRW50cnkgODY0CisgICAgMHgxLmZmZmZmZmZmZmU0Yzk2YjM5N2Q5NTFjYjIxODYxYzk1cC0xLAorICAgIC0weDEuNWZkYmJjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjUKKyAgICAtMHgxLmZmZmZmZmZmZmZlODUxMmFlYmI1NmM5ZTc1YjQxOTQxcC0xLAorICAgIDB4MS41ZmRiYmVwMworICB9LAorICB7IC8vIEVudHJ5IDg2NgorICAgIDB4MS5mZmZmZmZmZmZmZTg1MTJhZWJiNTZjOWU3NWI0MTk0MXAtMSwKKyAgICAtMHgxLjVmZGJiZXAzCisgIH0sCisgIHsgLy8gRW50cnkgODY3CisgICAgLTB4MS5mZmZmZmZmZmZmODQwYmEyM2Y5MWM5Y2I0OWExMGIyN3AtMSwKKyAgICAweDEuNWZkYmMwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjgKKyAgICAweDEuZmZmZmZmZmZmZjg0MGJhMjNmOTFjOWNiNDlhMTBiMjdwLTEsCisgICAgLTB4MS41ZmRiYzBwMworICB9LAorICB7IC8vIEVudHJ5IDg2OQorICAgIC0weDEuNmEwYTEyZjQxOTdjOTBhMGVlNGEwOTRiNjM3N2FhMjNwLTEsCisgICAgMHgxLjc4ZmRiNnAzCisgIH0sCisgIHsgLy8gRW50cnkgODcwCisgICAgMHgxLjZhMGExMmY0MTk3YzkwYTBlZTRhMDk0YjYzNzdhYTIzcC0xLAorICAgIC0weDEuNzhmZGI2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzEKKyAgICAtMHgxLjZhMDlmYzUzN2QyOWNmMTMxZDY3MTA5OTFiZWJhYmVkcC0xLAorICAgIDB4MS43OGZkYjhwMworICB9LAorICB7IC8vIEVudHJ5IDg3MgorICAgIDB4MS42YTA5ZmM1MzdkMjljZjEzMWQ2NzEwOTkxYmViYWJlZHAtMSwKKyAgICAtMHgxLjc4ZmRiOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODczCisgICAgLTB4MS42YTA5ZTViMmRmNmQwMzg4ZjkwNzBjNDM0MGYzZTY2OXAtMSwKKyAgICAweDEuNzhmZGJhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzQKKyAgICAweDEuNmEwOWU1YjJkZjZkMDM4OGY5MDcwYzQzNDBmM2U2NjlwLTEsCisgICAgLTB4MS43OGZkYmFwMworICB9LAorICB7IC8vIEVudHJ5IDg3NQorICAgIDB4MS42YTA5YzkwOWFkZDRkYmYzMjI1M2EzOWQ1YzMwNjMwOHAtMSwKKyAgICAweDEuYWI0MWFlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzYKKyAgICAtMHgxLjZhMDljOTA5YWRkNGRiZjMyMjUzYTM5ZDVjMzA2MzA4cC0xLAorICAgIC0weDEuYWI0MWFlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzcKKyAgICAweDEuNmEwOWRmYWE0ZDVjM2E3ZjA1NmYzZTYxYTM2NWIyOWVwLTEsCisgICAgMHgxLmFiNDFiMHAzCisgIH0sCisgIHsgLy8gRW50cnkgODc4CisgICAgLTB4MS42YTA5ZGZhYTRkNWMzYTdmMDU2ZjNlNjFhMzY1YjI5ZXAtMSwKKyAgICAtMHgxLmFiNDFiMHAzCisgIH0sCisgIHsgLy8gRW50cnkgODc5CisgICAgMHgxLjZhMDlmNjRhZWI3OThmMmIzZTNkOWIxNmU4ZTNjNDEycC0xLAorICAgIDB4MS5hYjQxYjJwMworICB9LAorICB7IC8vIEVudHJ5IDg4MAorICAgIC0weDEuNmEwOWY2NGFlYjc5OGYyYjNlM2Q5YjE2ZThlM2M0MTJwLTEsCisgICAgLTB4MS5hYjQxYjJwMworICB9LAorICB7IC8vIEVudHJ5IDg4MQorICAgIDB4MS5mZmZmZmZmZmZjMjYwZDZmZmI4ZjRjZDhhYjNmZDAyMHAtMSwKKyAgICAweDEuYzQ2M2E4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODIKKyAgICAtMHgxLmZmZmZmZmZmZmMyNjBkNmZmYjhmNGNkOGFiM2ZkMDIwcC0xLAorICAgIC0weDEuYzQ2M2E4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODMKKyAgICAweDEuZmZmZmZmZmZmZjEyZDg5YmIwODRkZDc2Mjg0OGIzZDZwLTEsCisgICAgMHgxLmM0NjNhYXAzCisgIH0sCisgIHsgLy8gRW50cnkgODg0CisgICAgLTB4MS5mZmZmZmZmZmZmMTJkODliYjA4NGRkNzYyODQ4YjNkNnAtMSwKKyAgICAtMHgxLmM0NjNhYXAzCisgIH0sCisgIHsgLy8gRW50cnkgODg1CisgICAgMHgxLmZmZmZmZmZmZmZmZmEzYzc2NTdiODVlNWI0NGJiZDQ0cC0xLAorICAgIDB4MS5jNDYzYWNwMworICB9LAorICB7IC8vIEVudHJ5IDg4NgorICAgIC0weDEuZmZmZmZmZmZmZmZmYTNjNzY1N2I4NWU1YjQ0YmJkNDRwLTEsCisgICAgLTB4MS5jNDYzYWNwMworICB9LAorICB7IC8vIEVudHJ5IDg4NworICAgIDB4MS42YTBhMGIzOGYxMzRhMzI5NWEwYjM4NmU0MmYxY2E3YXAtMSwKKyAgICAweDEuZGQ4NWE0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODgKKyAgICAtMHgxLjZhMGEwYjM4ZjEzNGEzMjk1YTBiMzg2ZTQyZjFjYTdhcC0xLAorICAgIC0weDEuZGQ4NWE0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODkKKyAgICAweDEuNmEwOWY0OTg1NDY2MmVmZjFiMzU3NTVhMTI5MDQ0YTdwLTEsCisgICAgMHgxLmRkODVhNnAzCisgIH0sCisgIHsgLy8gRW50cnkgODkwCisgICAgLTB4MS42YTA5ZjQ5ODU0NjYyZWZmMWIzNTc1NWExMjkwNDRhN3AtMSwKKyAgICAtMHgxLmRkODVhNnAzCisgIH0sCisgIHsgLy8gRW50cnkgODkxCisgICAgMHgxLjZhMDlkZGY3YjYyZGIwZTA0NDBiNmE0MjYyMjAzYjExcC0xLAorICAgIDB4MS5kZDg1YThwMworICB9LAorICB7IC8vIEVudHJ5IDg5MgorICAgIC0weDEuNmEwOWRkZjdiNjJkYjBlMDQ0MGI2YTQyNjIyMDNiMTFwLTEsCisgICAgLTB4MS5kZDg1YThwMworICB9LAorICB7IC8vIEVudHJ5IDg5MworICAgIDB4MS40YWE5YzJmMmMxOWEwNjJiMThhMDE3YmNkNTQyNGZlYXAtMjAsCisgICAgMHgxLmY2YTdhMHAzCisgIH0sCisgIHsgLy8gRW50cnkgODk0CisgICAgLTB4MS40YWE5YzJmMmMxOWEwNjJiMThhMDE3YmNkNTQyNGZlYXAtMjAsCisgICAgLTB4MS5mNmE3YTBwMworICB9LAorICB7IC8vIEVudHJ5IDg5NQorICAgIDB4MS4yYWE3MGJjYjA3ZDNhNDA3ODE1MTBkMjEzNjUyZTQzYXAtMjIsCisgICAgMHgxLmY2YTdhMnAzCisgIH0sCisgIHsgLy8gRW50cnkgODk2CisgICAgLTB4MS4yYWE3MGJjYjA3ZDNhNDA3ODE1MTBkMjEzNjUyZTQzYXAtMjIsCisgICAgLTB4MS5mNmE3YTJwMworICB9LAorICB7IC8vIEVudHJ5IDg5NworICAgIC0weDEuNmFhYzdhMWE3YmY1YmJkNDk1NzJmZmI4ZDc3NDk5MjJwLTIxLAorICAgIDB4MS5mNmE3YTRwMworICB9LAorICB7IC8vIEVudHJ5IDg5OAorICAgIDB4MS42YWFjN2ExYTdiZjViYmQ0OTU3MmZmYjhkNzc0OTkyMnAtMjEsCisgICAgLTB4MS5mNmE3YTRwMworICB9LAorICB7IC8vIEVudHJ5IDg5OQorICAgIC0weDEuNmEwOWEzODM5NTMxMjQwOTY4OTgzNDBmOTE2OGI5ZDVwLTEsCisgICAgMHgxLjA3ZTRjY3A0CisgIH0sCisgIHsgLy8gRW50cnkgOTAwCisgICAgMHgxLjZhMDlhMzgzOTUzMTI0MDk2ODk4MzQwZjkxNjhiOWQ1cC0xLAorICAgIC0weDEuMDdlNGNjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDEKKyAgICAtMHgxLjZhMDlkMGM0ZDc4Njk5NjFjNDdhOWIwYjk2OGNjOTEwcC0xLAorICAgIDB4MS4wN2U0Y2VwNAorICB9LAorICB7IC8vIEVudHJ5IDkwMgorICAgIDB4MS42YTA5ZDBjNGQ3ODY5OTYxYzQ3YTliMGI5NjhjYzkxMHAtMSwKKyAgICAtMHgxLjA3ZTRjZXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTAzCisgICAgLTB4MS42YTA5ZmUwNjE0MzNlNzc3MGQwMGNhNTlkNWE1NjI1MXAtMSwKKyAgICAweDEuMDdlNGQwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDQKKyAgICAweDEuNmEwOWZlMDYxNDMzZTc3NzBkMDBjYTU5ZDVhNTYyNTFwLTEsCisgICAgLTB4MS4wN2U0ZDBwNAorICB9LAorICB7IC8vIEVudHJ5IDkwNQorICAgIC0weDEuZmZmZmZmZmZmOTIxOWRhZTVmZWRhMWI1MzkzMzU4MDNwLTEsCisgICAgMHgxLjE0NzVjYXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTA2CisgICAgMHgxLmZmZmZmZmZmZjkyMTlkYWU1ZmVkYTFiNTM5MzM1ODAzcC0xLAorICAgIC0weDEuMTQ3NWNhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDcKKyAgICAtMHgxLmZmZmZmZmZmZmY5ZDU1NmU4YzBiZjBhODBkNjEwODA4cC0xLAorICAgIDB4MS4xNDc1Y2NwNAorICB9LAorICB7IC8vIEVudHJ5IDkwOAorICAgIDB4MS5mZmZmZmZmZmZmOWQ1NTZlOGMwYmYwYTgwZDYxMDgwOHAtMSwKKyAgICAtMHgxLjE0NzVjY3A0CisgIH0sCisgIHsgLy8gRW50cnkgOTA5CisgICAgLTB4MS5mZmZmZmZmZmZlMTkwZDJlYjgyZTc0ZWZkMjA5MzIxNXAtMSwKKyAgICAweDEuMTQ3NWNlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTAKKyAgICAweDEuZmZmZmZmZmZmZTE5MGQyZWI4MmU3NGVmZDIwOTMyMTVwLTEsCisgICAgLTB4MS4xNDc1Y2VwNAorICB9LAorICB7IC8vIEVudHJ5IDkxMQorICAgIC0weDEuNmEwYTFhMWU2NGEyOGVlZTIzOGRjODUyODQ2YWFjZDVwLTEsCisgICAgMHgxLjIxMDZjOHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTEyCisgICAgMHgxLjZhMGExYTFlNjRhMjhlZWUyMzhkYzg1Mjg0NmFhY2Q1cC0xLAorICAgIC0weDEuMjEwNmM4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTMKKyAgICAtMHgxLjZhMDllY2RkMmI3ODRiNjk5MDM0ZWU4MTAyNjcwZTI3cC0xLAorICAgIDB4MS4yMTA2Y2FwNAorICB9LAorICB7IC8vIEVudHJ5IDkxNAorICAgIDB4MS42YTA5ZWNkZDJiNzg0YjY5OTAzNGVlODEwMjY3MGUyN3AtMSwKKyAgICAtMHgxLjIxMDZjYXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTE1CisgICAgLTB4MS42YTA5YmY5YmVjYTVlMDMxODgzMDE2MzljMDllZDU3NHAtMSwKKyAgICAweDEuMjEwNmNjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTYKKyAgICAweDEuNmEwOWJmOWJlY2E1ZTAzMTg4MzAxNjM5YzA5ZWQ1NzRwLTEsCisgICAgLTB4MS4yMTA2Y2NwNAorICB9LAorICB7IC8vIEVudHJ5IDkxNworICAgIC0weDEuZjk5OTBlOTFhMjcwZDNiYzFjMDJmNGY2OWY0OGU2NzVwLTE5LAorICAgIDB4MS4yZDk3YzRwNAorICB9LAorICB7IC8vIEVudHJ5IDkxOAorICAgIDB4MS5mOTk5MGU5MWEyNzBkM2JjMWMwMmY0ZjY5ZjQ4ZTY3NXAtMTksCisgICAgLTB4MS4yZDk3YzRwNAorICB9LAorICB7IC8vIEVudHJ5IDkxOQorICAgIC0weDEuZjMzMjFkMjM0ZGVhY2Q2ZjNhZmQ3NTAzOTY4NTAxMmZwLTIwLAorICAgIDB4MS4yZDk3YzZwNAorICB9LAorICB7IC8vIEVudHJ5IDkyMAorICAgIDB4MS5mMzMyMWQyMzRkZWFjZDZmM2FmZDc1MDM5Njg1MDEyZnAtMjAsCisgICAgLTB4MS4yZDk3YzZwNAorICB9LAorICB7IC8vIEVudHJ5IDkyMQorICAgIDB4MS45OWJjNWI5NjFiMWFhMWM5ZTgwMjMwNzRmMzQwNmZkOXAtMjUsCisgICAgMHgxLjJkOTdjOHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTIyCisgICAgLTB4MS45OWJjNWI5NjFiMWFhMWM5ZTgwMjMwNzRmMzQwNmZkOXAtMjUsCisgICAgLTB4MS4yZDk3YzhwNAorICB9LAorICB7IC8vIEVudHJ5IDkyMworICAgIDB4MS42YTA5OTQ5ZTFjZTFlYzUwMWFmY2IzNWQ3MzFiZjYyY3AtMSwKKyAgICAweDEuM2EyOGMycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjQKKyAgICAtMHgxLjZhMDk5NDllMWNlMWVjNTAxYWZjYjM1ZDczMWJmNjJjcC0xLAorICAgIC0weDEuM2EyOGMycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjUKKyAgICAweDEuNmEwOWMxZGY2MTE0MTAwYzY1ZDFmZjZjNTU3NTVlNzJwLTEsCisgICAgMHgxLjNhMjhjNHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTI2CisgICAgLTB4MS42YTA5YzFkZjYxMTQxMDBjNjVkMWZmNmM1NTc1NWU3MnAtMSwKKyAgICAtMHgxLjNhMjhjNHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTI3CisgICAgMHgxLjZhMDllZjIwOWY5ZTBjYzEzMzI0ZGRmMmIzNjE1NTNmcC0xLAorICAgIDB4MS4zYTI4YzZwNAorICB9LAorICB7IC8vIEVudHJ5IDkyOAorICAgIC0weDEuNmEwOWVmMjA5ZjllMGNjMTMzMjRkZGYyYjM2MTU1M2ZwLTEsCisgICAgLTB4MS4zYTI4YzZwNAorICB9LAorICB7IC8vIEVudHJ5IDkyOQorICAgIDB4MS5mZmZmZmZmZmY1M2Y0NzZlYzRmNTlmMjZjNGJjZGZhMHAtMSwKKyAgICAweDEuNDZiOWMwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzAKKyAgICAtMHgxLmZmZmZmZmZmZjUzZjQ3NmVjNGY1OWYyNmM0YmNkZmEwcC0xLAorICAgIC0weDEuNDZiOWMwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzEKKyAgICAweDEuZmZmZmZmZmZmZTVkMjA5N2IzNDMzNGFkNjc5ZGQ3YTRwLTEsCisgICAgMHgxLjQ2YjljMnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTMyCisgICAgLTB4MS5mZmZmZmZmZmZlNWQyMDk3YjM0MzM0YWQ2NzlkZDdhNHAtMSwKKyAgICAtMHgxLjQ2YjljMnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTMzCisgICAgMHgxLmZmZmZmZmZmZmY3YWY5YzBhMTlhMDA1YzU2NWM2YWY3cC0xLAorICAgIDB4MS40NmI5YzRwNAorICB9LAorICB7IC8vIEVudHJ5IDkzNAorICAgIC0weDEuZmZmZmZmZmZmZjdhZjljMGExOWEwMDVjNTY1YzZhZjdwLTEsCisgICAgLTB4MS40NmI5YzRwNAorICB9LAorICB7IC8vIEVudHJ5IDkzNQorICAgIDB4MS42YTBhMjkwM2Q3NzM5MjViMDUyZmIwMDZhYzY3MGMyM3AtMSwKKyAgICAweDEuNTM0YWJlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzYKKyAgICAtMHgxLjZhMGEyOTAzZDc3MzkyNWIwNTJmYjAwNmFjNjcwYzIzcC0xLAorICAgIC0weDEuNTM0YWJlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzcKKyAgICAweDEuNmEwOWZiYzJhMDI1ZmRhZTkxODQ2NmZhMDAxNDIxNDNwLTEsCisgICAgMHgxLjUzNGFjMHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTM4CisgICAgLTB4MS42YTA5ZmJjMmEwMjVmZGFlOTE4NDY2ZmEwMDE0MjE0M3AtMSwKKyAgICAtMHgxLjUzNGFjMHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTM5CisgICAgMHgxLjZhMDljZTgxNjMzMDQxMTMxMzVhNjhhZTkzZDNmYTBlcC0xLAorICAgIDB4MS41MzRhYzJwNAorICB9LAorICB7IC8vIEVudHJ5IDk0MAorICAgIC0weDEuNmEwOWNlODE2MzMwNDExMzEzNWE2OGFlOTNkM2ZhMGVwLTEsCisgICAgLTB4MS41MzRhYzJwNAorICB9LAorICB7IC8vIEVudHJ5IDk0MQorICAgIDB4MS40ZGRkM2JhOWVjYjE5ZDZiYjZlYTE2MTEyMGU0NDdiOXAtMTksCisgICAgMHgxLjVmZGJiY3A0CisgIH0sCisgIHsgLy8gRW50cnkgOTQyCisgICAgLTB4MS40ZGRkM2JhOWVjYjE5ZDZiYjZlYTE2MTEyMGU0NDdiOXAtMTksCisgICAgLTB4MS41ZmRiYmNwNAorICB9LAorICB7IC8vIEVudHJ5IDk0MworICAgIDB4MS4zNzc0ZWVhN2I4OWQ4MGRmNzgxNmZlMjA4ZWM2OWZjMHAtMjEsCisgICAgMHgxLjVmZGJiZXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTQ0CisgICAgLTB4MS4zNzc0ZWVhN2I4OWQ4MGRmNzgxNmZlMjA4ZWM2OWZjMHAtMjEsCisgICAgLTB4MS41ZmRiYmVwNAorICB9LAorICB7IC8vIEVudHJ5IDk0NQorICAgIC0weDEuNjQ0NTg4YWMyMzM0YTNkNTQ1MmQ5OTYwMjgyY2Y4MGRwLTIwLAorICAgIDB4MS41ZmRiYzBwNAorICB9LAorICB7IC8vIEVudHJ5IDk0NgorICAgIDB4MS42NDQ1ODhhYzIzMzRhM2Q1NDUyZDk5NjAyODJjZjgwZHAtMjAsCisgICAgLTB4MS41ZmRiYzBwNAorICB9LAorICB7IC8vIEVudHJ5IDk0NworICAgIC0weDEuNmEwOWIyZjllYTA0OWU4NTVlMzVjYTljZTdlMGQ4OWFwLTEsCisgICAgMHgxLjZjNmNiYXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTQ4CisgICAgMHgxLjZhMDliMmY5ZWEwNDllODU1ZTM1Y2E5Y2U3ZTBkODlhcC0xLAorICAgIC0weDEuNmM2Y2JhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDkKKyAgICAtMHgxLjZhMDllMDNiMmE2YjQ5YzYxMzRjNjdiNDJiYWVlNjY4cC0xLAorICAgIDB4MS42YzZjYmNwNAorICB9LAorICB7IC8vIEVudHJ5IDk1MAorICAgIDB4MS42YTA5ZTAzYjJhNmI0OWM2MTM0YzY3YjQyYmFlZTY2OHAtMSwKKyAgICAtMHgxLjZjNmNiY3A0CisgIH0sCisgIHsgLy8gRW50cnkgOTUxCisgICAgLTB4MS42YTBhMGQ3YzY1MjljZDg1ZGJiYjNhNWMyY2QzZmFlNXAtMSwKKyAgICAweDEuNmM2Y2JlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTIKKyAgICAweDEuNmEwYTBkN2M2NTI5Y2Q4NWRiYmIzYTVjMmNkM2ZhZTVwLTEsCisgICAgLTB4MS42YzZjYmVwNAorICB9LAorICB7IC8vIEVudHJ5IDk1MworICAgIC0weDEuZmZmZmZmZmZmMDdmMGFiMTJhYThmNDFmMjljMTUzOTJwLTEsCisgICAgMHgxLjc4ZmRiNnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTU0CisgICAgMHgxLmZmZmZmZmZmZjA3ZjBhYjEyYWE4ZjQxZjI5YzE1MzkycC0xLAorICAgIC0weDEuNzhmZGI2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTUKKyAgICAtMHgxLmZmZmZmZmZmZmMzZjA1NDJkYjIxZGNiY2I4NDdkYWMzcC0xLAorICAgIDB4MS43OGZkYjhwNAorICB9LAorICB7IC8vIEVudHJ5IDk1NgorICAgIDB4MS5mZmZmZmZmZmZjM2YwNTQyZGIyMWRjYmNiODQ3ZGFjM3AtMSwKKyAgICAtMHgxLjc4ZmRiOHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTU3CisgICAgLTB4MS5mZmZmZmZmZmZmZmVmZmQ0OGJhYzczZWZlNjBjN2ZjZnAtMSwKKyAgICAweDEuNzhmZGJhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTgKKyAgICAweDEuZmZmZmZmZmZmZmZlZmZkNDhiYWM3M2VmZTYwYzdmY2ZwLTEsCisgICAgLTB4MS43OGZkYmFwNAorICB9LAorICB7IC8vIEVudHJ5IDk1OQorICAgIC0weDEuNmEwYTM3ZTk0OWE3YWQ2OThhMzIyMzRjNzNlNWFmYmFwLTEsCisgICAgMHgxLjg1OGViNHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTYwCisgICAgMHgxLjZhMGEzN2U5NDlhN2FkNjk4YTMyMjM0YzczZTVhZmJhcC0xLAorICAgIC0weDEuODU4ZWI0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjEKKyAgICAtMHgxLjZhMGEwYWE4MTQzNmM3YThkMzNhMzhkNzA0MDMwZDE0cC0xLAorICAgIDB4MS44NThlYjZwNAorICB9LAorICB7IC8vIEVudHJ5IDk2MgorICAgIDB4MS42YTBhMGFhODE0MzZjN2E4ZDMzYTM4ZDcwNDAzMGQxNHAtMSwKKyAgICAtMHgxLjg1OGViNnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTYzCisgICAgLTB4MS42YTA5ZGQ2NmQ5MWRiOWJkN2JmMzU1ZmFmZjA4ZjE5NHAtMSwKKyAgICAweDEuODU4ZWI4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjQKKyAgICAweDEuNmEwOWRkNjZkOTFkYjliZDdiZjM1NWZhZmYwOGYxOTRwLTEsCisgICAgLTB4MS44NThlYjhwNAorICB9LAorICB7IC8vIEVudHJ5IDk2NQorICAgIDB4MS5jMDQ4YjM4YThiYmY1OWY0MTRmZWM3MDc5MjA5OTI2ZXAtMywKKyAgICAweDEuZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgOTY2CisgICAgLTB4MS5jMDQ4YjM4YThiYmY1OWY0MTRmZWM3MDc5MjA5OTI2ZXAtMywKKyAgICAtMHgxLmZmZmZmZXA2MgorICB9LAorICB7IC8vIEVudHJ5IDk2NworICAgIDB4MS5mZmY2ZGZkNDJkYzU0NDMwYmMwNTc2YjAwYTg4YmQ5NHAtMSwKKyAgICAweDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgOTY4CisgICAgLTB4MS5mZmY2ZGZkNDJkYzU0NDMwYmMwNTc2YjAwYTg4YmQ5NHAtMSwKKyAgICAtMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDk2OQorICAgIC0weDEuZDY2MzdkMDcwMzQ3ZWU5NGU4MzA0NDVlNzY0ODY3MjdwLTEsCisgICAgMHgxLjAwMDAwMnA2MworICB9LAorICB7IC8vIEVudHJ5IDk3MAorICAgIDB4MS5kNjYzN2QwNzAzNDdlZTk0ZTgzMDQ0NWU3NjQ4NjcyN3AtMSwKKyAgICAtMHgxLjAwMDAwMnA2MworICB9LAorICB7IC8vIEVudHJ5IDk3MQorICAgIC0weDEuMGU1MjgzNjYxZGYwY2EwZjU1YWI2MTY3ZTE0NTE0YTFwLTEsCisgICAgMHgxLmZmZmZmZXAyNgorICB9LAorICB7IC8vIEVudHJ5IDk3MgorICAgIDB4MS4wZTUyODM2NjFkZjBjYTBmNTVhYjYxNjdlMTQ1MTRhMXAtMSwKKyAgICAtMHgxLmZmZmZmZXAyNgorICB9LAorICB7IC8vIEVudHJ5IDk3MworICAgIC0weDEuODZkY2M5YmFiYjBhNDBlZTg3NWNhYjNiOWU4OTI3NTdwLTEsCisgICAgMHgxLnAyNworICB9LAorICB7IC8vIEVudHJ5IDk3NAorICAgIDB4MS44NmRjYzliYWJiMGE0MGVlODc1Y2FiM2I5ZTg5Mjc1N3AtMSwKKyAgICAtMHgxLnAyNworICB9LAorICB7IC8vIEVudHJ5IDk3NQorICAgIDB4MS4xNzE5OTliNjI5ZmQ1YjYzNTdjNmRmZjRkNzgyN2Q5NXAtMSwKKyAgICAweDEuMDAwMDAycDI3CisgIH0sCisgIHsgLy8gRW50cnkgOTc2CisgICAgLTB4MS4xNzE5OTliNjI5ZmQ1YjYzNTdjNmRmZjRkNzgyN2Q5NXAtMSwKKyAgICAtMHgxLjAwMDAwMnAyNworICB9LAorICB7IC8vIEVudHJ5IDk3NworICAgIC0weDEuZTU3ZWMwOTIyMTk3MzU1MGQxZTU3OThkY2YwY2QyNWRwLTEsCisgICAgMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDk3OAorICAgIDB4MS5lNTdlYzA5MjIxOTczNTUwZDFlNTc5OGRjZjBjZDI1ZHAtMSwKKyAgICAtMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDk3OQorICAgIC0weDEuOGYyMmY4NDMzZDZlZGZlOWE0YWZmOTYyMjUxN2NhYTlwLTEsCisgICAgMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDk4MAorICAgIDB4MS44ZjIyZjg0MzNkNmVkZmU5YTRhZmY5NjIyNTE3Y2FhOXAtMSwKKyAgICAtMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDk4MQorICAgIDB4MS5jOWIwYzcyNjVjNTQzZjgwZmFmMDE3NDFjNjQ1ODU2MHAtMSwKKyAgICAweDEuMDAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgOTgyCisgICAgLTB4MS5jOWIwYzcyNjVjNTQzZjgwZmFmMDE3NDFjNjQ1ODU2MHAtMSwKKyAgICAtMHgxLjAwMDAwMnAyNAorICB9LAorICB7IC8vIEVudHJ5IDk4MworICAgIC0weDEuODM3Yjk4YTMxODVkMTQ2NmQ4NTJmMGE3ZGMxZDI0OGVwLTEsCisgICAgMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTg0CisgICAgMHgxLjgzN2I5OGEzMTg1ZDE0NjZkODUyZjBhN2RjMWQyNDhlcC0xLAorICAgIC0weDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODUKKyAgICAtMHgxLjgzN2I5ZGRkYzFlYWU3MGNlOTgwNTVhMGU0NTBkOTNjcC0xLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDk4NgorICAgIDB4MS44MzdiOWRkZGMxZWFlNzBjZTk4MDU1YTBlNDUwZDkzY3AtMSwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgOTg3CisgICAgLTB4MS44MzdiYTg1MzE0YmRlNTJiMWU5YzJjOGVkMjcxMmM3MnAtMSwKKyAgICAweDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODgKKyAgICAweDEuODM3YmE4NTMxNGJkZTUyYjFlOWMyYzhlZDI3MTJjNzJwLTEsCisgICAgLTB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDk4OQorICAgIDB4MS5kMThmNzA1NzNkYTYzMDEyZmExYzBlM2QyZWJiZTU5Y3AtMSwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTAKKyAgICAtMHgxLmQxOGY3MDU3M2RhNjMwMTJmYTFjMGUzZDJlYmJlNTljcC0xLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTEKKyAgICAweDEuZDE4ZjZlYWQxYjQ0NWRmYWI4NDgxODgwMDljOWJiOTVwLTEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTkyCisgICAgLTB4MS5kMThmNmVhZDFiNDQ1ZGZhYjg0ODE4ODAwOWM5YmI5NXAtMSwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgOTkzCisgICAgMHgxLmQxOGY2YjU4ZDY2YWU3MTEwYjJiNmY3Y2ZmYmE2ZWMxcC0xLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDk5NAorICAgIC0weDEuZDE4ZjZiNThkNjZhZTcxMTBiMmI2ZjdjZmZiYTZlYzFwLTEsCisgICAgLTB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDk5NQorICAgIDB4MS5hZWQ1NDdkYmVlNGQwZDg2ODBkMDgxM2QxZTRlMjFkMHAtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTk2CisgICAgLTB4MS5hZWQ1NDdkYmVlNGQwZDg2ODBkMDgxM2QxZTRlMjFkMHAtMSwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDk5NworICAgIDB4MS5hZWQ1NDhmMDkwY2VlMDQxOGRkM2QyMTM4YTFlNzg2NXAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTgKKyAgICAtMHgxLmFlZDU0OGYwOTBjZWUwNDE4ZGQzZDIxMzhhMWU3ODY1cC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTkKKyAgICAweDEuYWVkNTRiMTlkNWNkNzkzN2NiZjQxZWQ0MDhjYTBhNTJwLTEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAwMAorICAgIC0weDEuYWVkNTRiMTlkNWNkNzkzN2NiZjQxZWQ0MDhjYTBhNTJwLTEsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMDEKKyAgICAweDEuZWFlZTg1ODM1ZGRlNWI3MWJlZWM3ZDhkOTgwNTIxMTJwLTIsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwMDIKKyAgICAtMHgxLmVhZWU4NTgzNWRkZTViNzFiZWVjN2Q4ZDk4MDUyMTEycC0yLAorICAgIC0weDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTAwMworICAgIDB4MS5lYWVlODc0NGIwNWVmZTg3NjRiYzM2NGZkODM3YjY2NnAtMiwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAwNAorICAgIC0weDEuZWFlZTg3NDRiMDVlZmU4NzY0YmMzNjRmZDgzN2I2NjZwLTIsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA1CisgICAgMHgxLmVhZWU4YWM3NTU1ZWQ0N2ZjYTc3Y2VlZDE3NGM4ZWEwcC0yLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA2CisgICAgLTB4MS5lYWVlOGFjNzU1NWVkNDdmY2E3N2NlZWQxNzRjOGVhMHAtMiwKKyAgICAtMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMDcKKyAgICAweDEuZmFhZWViNWYxYzBkNjNmNDNjNmYzZWM0NjAxMTY5MGZwLTMsCisgICAgMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDEwMDgKKyAgICAtMHgxLmZhYWVlYjVmMWMwZDYzZjQzYzZmM2VjNDYwMTE2OTBmcC0zLAorICAgIC0weDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTAwOQorICAgIDB4MS5mYWFlZWQ0ZjMxNTc2YmE4OWRlYmRjNzM1MWU4YjFhZXAtMywKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTAxMAorICAgIC0weDEuZmFhZWVkNGYzMTU3NmJhODlkZWJkYzczNTFlOGIxYWVwLTMsCisgICAgLTB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDExCisgICAgMHgxLmZhYWVmMTJmNWJlYjFjMTA5NDQ3M2QzYzMzNjViOWUxcC0zLAorICAgIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEyCisgICAgLTB4MS5mYWFlZjEyZjViZWIxYzEwOTQ0NzNkM2MzMzY1YjllMXAtMywKKyAgICAtMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwMTMKKyAgICAweDEuZmVhYWVjZWM2ZDhlMzBjZDU2OTUwZWIyZWJkY2ViZDRwLTQsCisgICAgMHgxLmZmZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMTQKKyAgICAtMHgxLmZlYWFlY2VjNmQ4ZTMwY2Q1Njk1MGViMmViZGNlYmQ0cC00LAorICAgIC0weDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTAxNQorICAgIDB4MS5mZWFhZWVlODZlZTM1Y2EwNjlhODY3MjFmODlmODVhNXAtNCwKKyAgICAweDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTAxNgorICAgIC0weDEuZmVhYWVlZTg2ZWUzNWNhMDY5YTg2NzIxZjg5Zjg1YTVwLTQsCisgICAgLTB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE3CisgICAgMHgxLmZlYWFmMmUwNzE4ZDljNTY4Yzk0NDJjODE1NDVjZDYycC00LAorICAgIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE4CisgICAgLTB4MS5mZWFhZjJlMDcxOGQ5YzU2OGM5NDQyYzgxNTQ1Y2Q2MnAtNCwKKyAgICAtMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDEwMTkKKyAgICAweDEuZmZhYWFjZWZkNGQ4NTVhYzgyMjc3OTlmM2UyNjNkN2FwLTUsCisgICAgMHgxLmZmZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwMjAKKyAgICAtMHgxLmZmYWFhY2VmZDRkODU1YWM4MjI3Nzk5ZjNlMjYzZDdhcC01LAorICAgIC0weDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTAyMQorICAgIDB4MS5mZmFhYWVlZWQ0ZWRhYjRiYTRiMzY1ZWQyNWE5NTk1ZnAtNSwKKyAgICAweDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMTAyMgorICAgIC0weDEuZmZhYWFlZWVkNGVkYWI0YmE0YjM2NWVkMjVhOTU5NWZwLTUsCisgICAgLTB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIzCisgICAgMHgxLmZmYWFiMmVjZDUxODUwOGFlOWJjNzMwYTE2NWE4ZWFkcC01LAorICAgIDB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI0CisgICAgLTB4MS5mZmFhYjJlY2Q1MTg1MDhhZTliYzczMGExNjVhOGVhZHAtNSwKKyAgICAtMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMjUKKyAgICAweDEuZmZlYWE4ZWYyZTg1OTMzODgzYzBkYzMzNDYyMzg3YjVwLTYsCisgICAgMHgxLmZmZmZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwMjYKKyAgICAtMHgxLmZmZWFhOGVmMmU4NTkzMzg4M2MwZGMzMzQ2MjM4N2I1cC02LAorICAgIC0weDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTAyNworICAgIDB4MS5mZmVhYWFlZWVlODZlOGNhZmU0MTM3NmQ0NzkxOTU3OXAtNiwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgMTAyOAorICAgIC0weDEuZmZlYWFhZWVlZTg2ZThjYWZlNDEzNzZkNDc5MTk1NzlwLTYsCisgICAgLTB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI5CisgICAgMHgxLmZmZWFhZWVlNmU4OTkyNzAwMzQxM2FiZTY0ZTlkYzIxcC02LAorICAgIDB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMwCisgICAgLTB4MS5mZmVhYWVlZTZlODk5MjcwMDM0MTNhYmU2NGU5ZGMyMXAtNiwKKyAgICAtMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwMzEKKyAgICAweDEuZmZmYWE4YWVmZWVkMzk2ZmZmZmM2MzYzMTNkMGJhNmRwLTcsCisgICAgMHgxLmZmZmZmZXAtNworICB9LAorICB7IC8vIEVudHJ5IDEwMzIKKyAgICAtMHgxLmZmZmFhOGFlZmVlZDM5NmZmZmZjNjM2MzEzZDBiYTZkcC03LAorICAgIC0weDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTAzMworICAgIDB4MS5mZmZhYWFhZWVlZWQ0ZWQ1NDljNjU2MGY4ODllZTUzMXAtNywKKyAgICAweDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgMTAzNAorICAgIC0weDEuZmZmYWFhYWVlZWVkNGVkNTQ5YzY1NjBmODg5ZWU1MzFwLTcsCisgICAgLTB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM1CisgICAgMHgxLmZmZmFhZWFlY2VlZDc5M2ZkZTVhMWE5Y2E1YmIxZWU2cC03LAorICAgIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM2CisgICAgLTB4MS5mZmZhYWVhZWNlZWQ3OTNmZGU1YTFhOWNhNWJiMWVlNnAtNywKKyAgICAtMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwMzcKKyAgICAweDEuZmZmZmZkZmFhYWFhYmFhZWVlZGVkOTk3ZmVmZmEzNWFwLTE1LAorICAgIDB4MS5mZmZmZmVwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgMTAzOAorICAgIC0weDEuZmZmZmZkZmFhYWFhYmFhZWVlZGVkOTk3ZmVmZmEzNWFwLTE1LAorICAgIC0weDEuZmZmZmZlcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDEwMzkKKyAgICAweDEuZmZmZmZmZmFhYWFhYWFhZWVlZWVlZWVkNGVkNGVkNGZwLTE1LAorICAgIDB4MS5wLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTA0MAorICAgIC0weDEuZmZmZmZmZmFhYWFhYWFhZWVlZWVlZWVkNGVkNGVkNGZwLTE1LAorICAgIC0weDEucC0xNAorICB9LAorICB7IC8vIEVudHJ5IDEwNDEKKyAgICAweDEuMDAwMDAxZmQ1NTU1NDU1Nzc3NTc4Y2NiZTdiZmMwOWNwLTE0LAorICAgIDB4MS4wMDAwMDJwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTA0MgorICAgIC0weDEuMDAwMDAxZmQ1NTU1NDU1Nzc3NTc4Y2NiZTdiZmMwOWNwLTE0LAorICAgIC0weDEuMDAwMDAycC0xNAorICB9LAorICB7IC8vIEVudHJ5IDEwNDMKKyAgICAweDEuZmZmZmZkZmZmZmZmZmVhYWFhYWVhYWFhYTZhYWVlZjBwLTI4LAorICAgIDB4MS5mZmZmZmVwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMTA0NAorICAgIC0weDEuZmZmZmZkZmZmZmZmZmVhYWFhYWVhYWFhYTZhYWVlZjBwLTI4LAorICAgIC0weDEuZmZmZmZlcC0yOAorICB9LAorICB7IC8vIEVudHJ5IDEwNDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmVhYWFhYWFhYWFhYWFhYWVlZWVwLTI4LAorICAgIDB4MS5wLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA0NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmVhYWFhYWFhYWFhYWFhYWVlZWVwLTI4LAorICAgIC0weDEucC0yNworICB9LAorICB7IC8vIEVudHJ5IDEwNDcKKyAgICAweDEuMDAwMDAxZmZmZmZmZmY1NTU1NTE1NTU1NGQ1NTc3NzJwLTI3LAorICAgIDB4MS4wMDAwMDJwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA0OAorICAgIC0weDEuMDAwMDAxZmZmZmZmZmY1NTU1NTE1NTU1NGQ1NTc3NzJwLTI3LAorICAgIC0weDEuMDAwMDAycC0yNworICB9LAorICB7IC8vIEVudHJ5IDEwNDkKKyAgICAweDEuZmZmZmZkZmZmZmZmZmZmYWFhYWFiYWFhYWE5YWFhYWVwLTMxLAorICAgIDB4MS5mZmZmZmVwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMTA1MAorICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmYWFhYWFiYWFhYWE5YWFhYWVwLTMxLAorICAgIC0weDEuZmZmZmZlcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDEwNTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmYWFhYWFhYWFhYWFhYWFhYWVwLTMxLAorICAgIDB4MS5wLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmYWFhYWFhYWFhYWFhYWFhYWVwLTMxLAorICAgIC0weDEucC0zMAorICB9LAorICB7IC8vIEVudHJ5IDEwNTMKKyAgICAweDEuMDAwMDAxZmZmZmZmZmZmZDU1NTU0NTU1NTUzNTU1NTdwLTMwLAorICAgIDB4MS4wMDAwMDJwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA1NAorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmZDU1NTU0NTU1NTUzNTU1NTdwLTMwLAorICAgIC0weDEuMDAwMDAycC0zMAorICB9LAorICB7IC8vIEVudHJ5IDEwNTUKKyAgICAweDEuMGIzMzY2NTA4OTU3NTIwZDlkYzg4ZDdjMDkzMzdlMjRwLTEsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA1NgorICAgIC0weDEuMGIzMzY2NTA4OTU3NTIwZDlkYzg4ZDdjMDkzMzdlMjRwLTEsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU3CisgICAgLTB4MS4wYjMzNjY1MDg5NTc1MjBkOWRjODhkN2MwOTMzN2UyNHAtMSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNTgKKyAgICAweDEuMGIzMzY2NTA4OTU3NTIwZDlkYzg4ZDdjMDkzMzdlMjRwLTEsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA1OQorICAgIC0weDEuMGIzMzY2NTA4OTU3NTIwZDlkYzg4ZDdjMDkzMzdlMjRwLTEsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYwCisgICAgMHgxLjBiMzM2NjUwODk1NzUyMGQ5ZGM4OGQ3YzA5MzM3ZTI0cC0xLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNjEKKyAgICAtMHgxLjQ4Y2U1NzUyMDJlZmQ5M2M2MmY3Yjg4MTA2ZWExZDRkcC0xLAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA2MgorICAgIDB4MS40OGNlNTc1MjAyZWZkOTNjNjJmN2I4ODEwNmVhMWQ0ZHAtMSwKKyAgICAtMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYzCisgICAgLTB4MS43NzdhNWNmNzJjZWM1ZmQ2MTg5NmNiNGY0MGQxZGU3OXAtMjQsCisgICAgMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTA2NAorICAgIDB4MS43NzdhNWNmNzJjZWM1ZmQ2MTg5NmNiNGY0MGQxZGU3OXAtMjQsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDEwNjUKKyAgICAweDEuZmZmZmZmZmZmZmZmNzY1MjEyNDljNzQyMjkzMGVkODJwLTEsCisgICAgMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2NgorICAgIC0weDEuZmZmZmZmZmZmZmZmNzY1MjEyNDljNzQyMjkzMGVkODJwLTEsCisgICAgLTB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNjcKKyAgICAweDEuYWVkNTRiMTlkNWNkNzkzN2NiZjQxZWQ0MDhjYTBhNTJwLTEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2OAorICAgIC0weDEuYWVkNTRiMTlkNWNkNzkzN2NiZjQxZWQ0MDhjYTBhNTJwLTEsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNjkKKyAgICAweDEuYWVkNTQ4ZjA5MGNlZTA0MThkZDNkMjEzOGExZTc4NjVwLTEsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA3MAorICAgIC0weDEuYWVkNTQ4ZjA5MGNlZTA0MThkZDNkMjEzOGExZTc4NjVwLTEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDEwNzEKKyAgICAweDEuYWVkNTQ3ZGJlZTRkMGQ4NjgwZDA4MTNkMWU0ZTIxZDBwLTEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNzIKKyAgICAtMHgxLmFlZDU0N2RiZWU0ZDBkODY4MGQwODEzZDFlNGUyMWQwcC0xLAorICAgIC0weDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA3MworICAgIDB4MS42YTA5ZTZlY2I0MWZkZDdlNjgxODcyYzg1NDg4NzAxOXAtMSwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA3NAorICAgIC0weDEuNmEwOWU2ZWNiNDFmZGQ3ZTY4MTg3MmM4NTQ4ODcwMTlwLTEsCisgICAgLTB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc1CisgICAgMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjYsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTA3NgorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNiwKKyAgICAtMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTA3NworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwNzgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwNzkKKyAgICAweDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgwCisgICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgxCisgICAgMHgxLmZmZmZmN2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA4MgorICAgIC0weDEuZmZmZmY3ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA4MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTQ5LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDEwODQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xNDksCisgICAgLTB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDEwODUKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEwODYKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMTA4NworICAgIDAuMCwKKyAgICAwLjBmCisgIH0sCisgIHsgLy8gRW50cnkgMTA4OAorICAgIC0wLjAsCisgICAgLTAuMGYKKyAgfSwKK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvc2luaF9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvc2luaF9pbnRlbF9kYXRhLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmViYzE5MgotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL21hdGhfZGF0YS9zaW5oX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDMwNTQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxkb3VibGUsIGRvdWJsZT4gZ19zaW5oX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS4yMDAwMDAwMDAwMGYzMDAwMDAwMDAwM2Q4MjY2NjY2NnAtMjEsCisgICAgLTB4MS4ycC0yMQorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuMjAwMDAwMDAwMDBmMzAwMDAwMDAwMDNkODI2NjY2NjZwLTIxLAorICAgIDB4MS4ycC0yMQorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAtMHgxLmY5MjI1ZjdlMzE5M2M4MDE1NmUyOTM3OGMzNGIyM2QzcDgzMSwKKyAgICAtMHgxLjIwYjA2NTlkOGE3ZTFwOQorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuZjkyMjVmN2UzMTkzYzgwMTU2ZTI5Mzc4YzM0YjIzZDNwODMxLAorICAgIDB4MS4yMGIwNjU5ZDhhN2UxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgLTB4MS42NTNhOWMwYzA4YjAwZjNhMmZkNWVjOWZiMTA5M2ZmOXA1MiwKKyAgICAtMHgxLjI4OGY1YzI4ZjVjMjhwNQorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAweDEuNjUzYTljMGMwOGIwMGYzYTJmZDVlYzlmYjEwOTNmZjlwNTIsCisgICAgMHgxLjI4OGY1YzI4ZjVjMjhwNQorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAtMHgxLjQ1Zjc3NTU0NmE3N2Q3N2ZlNjIzNGFiNWQ0YWIxMDM2cC0xLAorICAgIC0weDEuMzMzMzMzMzMzMzMzM3AtMQorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuNDVmNzc1NTQ2YTc3ZDc3ZmU2MjM0YWI1ZDRhYjEwMzZwLTEsCisgICAgMHgxLjMzMzMzMzMzMzMzMzNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgLTB4MS5lMTI4ZDNhOTljNGIyODIxNjUxMWE3YWQ5OGQxMDZmMHA5MTEsCisgICAgLTB4MS4zYzY0MHA5CisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS5lMTI4ZDNhOTljNGIyODIxNjUxMWE3YWQ5OGQxMDZmMHA5MTEsCisgICAgMHgxLjNjNjQwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIC0weDEuNDFhYjlkOGJjMGNiZjgxZWFjMGUyYmJiYmJlYWI5NmNwLTUsCisgICAgLTB4MS40MTk2NzgwMzMxMmFmcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuNDFhYjlkOGJjMGNiZjgxZWFjMGUyYmJiYmJlYWI5NmNwLTUsCisgICAgMHgxLjQxOTY3ODAzMzEyYWZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIC0weDEuZjVmNjJkNDQ0ZjI0YzNiZWU4YWViNzVhNDEzYjgxMDFwOTQxLAorICAgIC0weDEuNDZjZjFhNGU4ZWZmOHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEuZjVmNjJkNDQ0ZjI0YzNiZWU4YWViNzVhNDEzYjgxMDFwOTQxLAorICAgIDB4MS40NmNmMWE0ZThlZmY4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIC0weDEuZmQwZDI3ZjRjZmU5ODgwMWQxNWZhMmQ0OGU1YTU0YzBwOTUyLAorICAgIC0weDEuNGFhMGQ5NjcxOWZjNnA5CisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEuZmQwZDI3ZjRjZmU5ODgwMWQxNWZhMmQ0OGU1YTU0YzBwOTUyLAorICAgIDB4MS40YWEwZDk2NzE5ZmM2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIC0weDEuZjc2Njc1OTk3MjhhMTdmZjA3NjY3ZmU0MTUxMGFjNmNwMTMsCisgICAgLTB4MS40YzJiMjkxY2ZhZGQycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS5mNzY2NzU5OTcyOGExN2ZmMDc2NjdmZTQxNTEwYWM2Y3AxMywKKyAgICAweDEuNGMyYjI5MWNmYWRkMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAtMHgxLmViMzRmMGE5MmVlNzI4MDEyOGMxMTRmMDdkMzU1Nzc2cDk1OCwKKyAgICAtMHgxLjRjYjA5ZTY1ZWI5MzBwOQorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLmViMzRmMGE5MmVlNzI4MDEyOGMxMTRmMDdkMzU1Nzc2cDk1OCwKKyAgICAweDEuNGNiMDllNjVlYjkzMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAtMHgxLmQyMTA4ZTlhYTFiMTI0MTY4OTYwYTY3ZjFjYjI4YjA3cDk2MCwKKyAgICAtMHgxLjRkNWI1NmQ1YjU1YWNwOQorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLmQyMTA4ZTlhYTFiMTI0MTY4OTYwYTY3ZjFjYjI4YjA3cDk2MCwKKyAgICAweDEuNGQ1YjU2ZDViNTVhY3A5CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAtMHgxLmY2OGQ3Y2YzMGUwMTIzYzIxNjRjMTM2OGQyMTNmOWI1cDk3MCwKKyAgICAtMHgxLjUwZGMzNzM5ZGRlOGVwOQorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLmY2OGQ3Y2YzMGUwMTIzYzIxNjRjMTM2OGQyMTNmOWI1cDk3MCwKKyAgICAweDEuNTBkYzM3MzlkZGU4ZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAtMHgxLmZkNzk5NDMwNDQzZjA4MDBlZjJmY2YyY2Q5ZGE5Njk3cDk3NSwKKyAgICAtMHgxLjUyOTk5NGJiMTU3OTVwOQorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLmZkNzk5NDMwNDQzZjA4MDBlZjJmY2YyY2Q5ZGE5Njk3cDk3NSwKKyAgICAweDEuNTI5OTk0YmIxNTc5NXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAtMHgxLmU3YjM2ZWIxZjFlNjk4MDE3ZDkwNWM5MWUyNWRmNjE2cDEwMDUsCisgICAgLTB4MS41Y2Y5YWNlMjdkMTIwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS5lN2IzNmViMWYxZTY5ODAxN2Q5MDVjOTFlMjVkZjYxNnAxMDA1LAorICAgIDB4MS41Y2Y5YWNlMjdkMTIwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIC0weDEuOTlkMThlZGM1NzIwYTgwMThkMGM4YmZiZjdkOThmOWFwMTAxMSwKKyAgICAtMHgxLjVlZjdiZGVmN2MyZWVwOQorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLjk5ZDE4ZWRjNTcyMGE4MDE4ZDBjOGJmYmY3ZDk4ZjlhcDEwMTEsCisgICAgMHgxLjVlZjdiZGVmN2MyZWVwOQorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgLTB4MS5mM2FlNmU2YWQ2Y2YzM2Y5NTJiOGQ3ZDI2YWJjZDk0NnAxMDEzLAorICAgIC0weDEuNWZjMjkwN2JiZmI1M3A5CisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuZjNhZTZlNmFkNmNmMzNmOTUyYjhkN2QyNmFiY2Q5NDZwMTAxMywKKyAgICAweDEuNWZjMjkwN2JiZmI1M3A5CisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAtMHgxLmZmZmZmZmZmZmViMmExYjBlMjYzYWM2ODA3NmVkNGUwcDEwMjIsCisgICAgLTB4MS42MmU0MmZlZmEzOWVhcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS5mZmZmZmZmZmZlYjJhMWIwZTI2M2FjNjgwNzZlZDRlMHAxMDIyLAorICAgIDB4MS42MmU0MmZlZmEzOWVhcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIC0weDEuOTRmOGU0MmMyMTkwOTdmZmJmNTMyM2EyOGY3ZDcxNWNwLTIsCisgICAgLTB4MS44YjE4OTZkOWU1MzQzcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEuOTRmOGU0MmMyMTkwOTdmZmJmNTMyM2EyOGY3ZDcxNWNwLTIsCisgICAgMHgxLjhiMTg5NmQ5ZTUzNDNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIC0weDEuOTBwLTEwNjksCisgICAgLTB4MS45cC0xMDY5CisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuOTBwLTEwNjksCisgICAgMHgxLjlwLTEwNjkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIC0weDEuYTQ1YzRiZmM0MTMyYzhlOGRkNGU0NGU5MThmZWY1MDJwLTIsCisgICAgLTB4MS45OTVlNmVlNDkzZmU1cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAweDEuYTQ1YzRiZmM0MTMyYzhlOGRkNGU0NGU5MThmZWY1MDJwLTIsCisgICAgMHgxLjk5NWU2ZWU0OTNmZTVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIC0weDEuYzdhMTAzMzc5ODA5YjM4MTMyMzUwY2E3NjZjYmE0NGJwLTEsCisgICAgLTB4MS45YTQ5NWVhNDQ3ODUycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuYzdhMTAzMzc5ODA5YjM4MTMyMzUwY2E3NjZjYmE0NGJwLTEsCisgICAgMHgxLjlhNDk1ZWE0NDc4NTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIC0weDEuOWJmYTM0MDNmOGQ0NTdmZmZhMjQ2ZDg4MGVmODE0ZjFwLTUsCisgICAgLTB4MS45YmNkY2M0MDhjZWQzcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAweDEuOWJmYTM0MDNmOGQ0NTdmZmZhMjQ2ZDg4MGVmODE0ZjFwLTUsCisgICAgMHgxLjliY2RjYzQwOGNlZDNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIC0weDEuYWE4YzNkNGNiNWJkOWZmZmZlNWU1NTljNTYzZDY2OWNwLTUsCisgICAgLTB4MS5hYTVhZjU0NWFlODgwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAweDEuYWE4YzNkNGNiNWJkOWZmZmZlNWU1NTljNTYzZDY2OWNwLTUsCisgICAgMHgxLmFhNWFmNTQ1YWU4ODBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIC0weDEuZTE3ZTMyZWI4ZTZjZThmNmRhZDZhNzM4ZmE1ZjBiOGFwLTIsCisgICAgLTB4MS5kMTUwMzdmMmViZTNjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuZTE3ZTMyZWI4ZTZjZThmNmRhZDZhNzM4ZmE1ZjBiOGFwLTIsCisgICAgMHgxLmQxNTAzN2YyZWJlM2NwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIC0weDEuZmZmZmZmZmZmZmZmYzBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuZmZmZmZmZmZmZmZmYzBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwMDAwMDAwMGFhYWFhYWFhYWFhcC00MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEuMDAwMDAwMDAwMDAwMTAwMDAwMDAwYWFhYWFhYWFhYWFwLTQxLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS40MWM3YTg4MTRjNzg2ODNjZGJjMTY1NTk3Y2E2MWQyM3AzNjgsCisgICAgMHgxLjAwMDAwMDAwMDAwMDdwOAorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgLTB4MS40MWM3YTg4MTRjNzg2ODNjZGJjMTY1NTk3Y2E2MWQyM3AzNjgsCisgICAgLTB4MS4wMDAwMDAwMDAwMDA3cDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS4xZjQzZmViYjZkNWVkN2Y3OTA3M2M5ZGVhODUwNTBmZXA0NSwKKyAgICAweDEuMDAwMDAwMGUwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEuMWY0M2ZlYmI2ZDVlZDdmNzkwNzNjOWRlYTg1MDUwZmVwNDUsCisgICAgLTB4MS4wMDAwMDAwZTBwNQorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLjc0OWVhNWNmMjRjMmE4MDEwMTRiMjRkOTY4NmZmMzA2cDEwLAorICAgIDB4MS4wMDAwMDAwZmZlMDE3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEuNzQ5ZWE1Y2YyNGMyYTgwMTAxNGIyNGQ5Njg2ZmYzMDZwMTAsCisgICAgLTB4MS4wMDAwMDAwZmZlMDE3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS4wZjJlYmUxOWFlYmJjZmZlMTExMTRmZGUyMGE4YjI1ZHAyMiwKKyAgICAweDEuMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAtMHgxLjBmMmViZTE5YWViYmNmZmUxMTExNGZkZTIwYThiMjVkcDIyLAorICAgIC0weDEuMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEuZDAzZDA1NDdlYjVhZjdmZjkyODdiZmU5ZWYwOGQwMmNwMSwKKyAgICAweDEuMDAwMDA0MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLmQwM2QwNTQ3ZWI1YWY3ZmY5Mjg3YmZlOWVmMDhkMDJjcDEsCisgICAgLTB4MS4wMDAwMDQwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS45NGRiZGZiYjY2YmM2NTFlZTc2NTcyMTE5ZDljMWM0Y3A3MzcsCisgICAgMHgxLjAwMDAyMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgLTB4MS45NGRiZGZiYjY2YmM2NTFlZTc2NTcyMTE5ZDljMWM0Y3A3MzcsCisgICAgLTB4MS4wMDAwMjAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS4yMDNmYzY1YTAzNGQwN2ZmZGE4OTFlZjA3OWVlNjMyZHA0NSwKKyAgICAweDEuMDAwNzBwNQorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgLTB4MS4yMDNmYzY1YTAzNGQwN2ZmZGE4OTFlZjA3OWVlNjMyZHA0NSwKKyAgICAtMHgxLjAwMDcwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS4wNDMyMDNjNjNjYTM0ODAwMGMyZDUwZTAwNGVhYjlkZnAtMywKKyAgICAweDEuMDM4MDFiYmE1M2Q1ZnAtMworICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS4wNDMyMDNjNjNjYTM0ODAwMGMyZDUwZTAwNGVhYjlkZnAtMywKKyAgICAtMHgxLjAzODAxYmJhNTNkNWZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS5kOWNlYjZmYjNhZjIyODAwZWJhMDcwOWFiNTUwZWI4M3A0LAorICAgIDB4MS4wNTM5YTlkYjAwZmIwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIC0weDEuZDljZWI2ZmIzYWYyMjgwMGViYTA3MDlhYjU1MGViODNwNCwKKyAgICAtMHgxLjA1MzlhOWRiMDBmYjBwMgorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjE5ZDlkYjc2OWIzMDczZGI1Njk0NDY0NTQ3OTgwYWIzcC0xLAorICAgIDB4MS4wZDQ0MTIxOTUyMzEzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLjE5ZDlkYjc2OWIzMDczZGI1Njk0NDY0NTQ3OTgwYWIzcC0xLAorICAgIC0weDEuMGQ0NDEyMTk1MjMxM3AtMQorICB9LAorICB7IC8vIEVudHJ5IDc0CisgICAgMHgxLjExYWE4NzQ5MzdmNjU3ZmVmZWIyMmYxMDY1NzY3NWIycC0zLAorICAgIDB4MS4xMGRiYjE2MzQyM2NmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMHgxLjExYWE4NzQ5MzdmNjU3ZmVmZWIyMmYxMDY1NzY3NWIycC0zLAorICAgIC0weDEuMTBkYmIxNjM0MjNjZnAtMworICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLmE0ZTQ2OTM0MTNiOTk3MDc1NWMxNTYzM2FmMjVmOTZicDM5OSwKKyAgICAweDEuMTVjMThkZTg3NzU2M3A4CisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMHgxLmE0ZTQ2OTM0MTNiOTk3MDc1NWMxNTYzM2FmMjVmOTZicDM5OSwKKyAgICAtMHgxLjE1YzE4ZGU4Nzc1NjNwOAorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLjFmYWUzZDkyMjBkZDI4MDEwMmMwMjJiMTJiYzNmNmZlcC0yLAorICAgIDB4MS4xYzA2NTgwMmIyNmVhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLjFmYWUzZDkyMjBkZDI4MDEwMmMwMjJiMTJiYzNmNmZlcC0yLAorICAgIC0weDEuMWMwNjU4MDJiMjZlYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLjIwMDAwMDAwMDAwZjMwMDAwMDAwMDAzZDgyNjY2NjY2cC0yMSwKKyAgICAweDEuMnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuMjAwMDAwMDAwMDBmMzAwMDAwMDAwMDNkODI2NjY2NjZwLTIxLAorICAgIC0weDEuMnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS4zNWE5MjU3YTVhMWNiN2ZlY2ZhMjkxNzE0ZmFjOWY4OXAtMSwKKyAgICAweDEuMjU1ODllNjQ1M2E3OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS4zNWE5MjU3YTVhMWNiN2ZlY2ZhMjkxNzE0ZmFjOWY4OXAtMSwKKyAgICAtMHgxLjI1NTg5ZTY0NTNhNzlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS5lYWE1MjFlZGYxYmMyODAxNDYwMjE5MWNlNjE4YzA1ZnA4NDUsCisgICAgMHgxLjI1ODZjYTljZjQxMWJwOQorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTB4MS5lYWE1MjFlZGYxYmMyODAxNDYwMjE5MWNlNjE4YzA1ZnA4NDUsCisgICAgLTB4MS4yNTg2Y2E5Y2Y0MTFicDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS42YTA5ZTY2N2YzYmM5YjYxMTMwYmMwNTZkNDc4ZDgzNHAyNSwKKyAgICAweDEuMjVlNGY3YjI3MzdmYXA0CisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAtMHgxLjZhMDllNjY3ZjNiYzliNjExMzBiYzA1NmQ0NzhkODM0cDI1LAorICAgIC0weDEuMjVlNGY3YjI3MzdmYXA0CisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAweDEuMmE5YmJmNTQ1ZjA5ZjdmZmZjMmZkNDczZmMyZjhhOWVwLTIsCisgICAgMHgxLjI2ODdjZTdiZDczNTNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIC0weDEuMmE5YmJmNTQ1ZjA5ZjdmZmZjMmZkNDczZmMyZjhhOWVwLTIsCisgICAgLTB4MS4yNjg3Y2U3YmQ3MzUzcC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuMmU2YWUwMDhhZTA3MTczMWFiOTgyOWY0NTFhNjRlZGNwLTIsCisgICAgMHgxLjJhMmY3OTVkNmI1MTRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIC0weDEuMmU2YWUwMDhhZTA3MTczMWFiOTgyOWY0NTFhNjRlZGNwLTIsCisgICAgLTB4MS4yYTJmNzk1ZDZiNTE0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZmZmZmZmZmZmZmY4NGRjMzY5ZjgxZGZkYmMzODMzMzJwMjUsCisgICAgMHgxLjJiNzA4ODcyMzIwZGVwNAorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgLTB4MS5mZmZmZmZmZmZmZjg0ZGMzNjlmODFkZmRiYzM4MzMzMnAyNSwKKyAgICAtMHgxLjJiNzA4ODcyMzIwZGVwNAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLjdjMTJiOGQ1N2ZkY2Y3ZmZmYTljZTVlOTlhNDE2M2RlcDAsCisgICAgMHgxLjJmYWM2NGE0MmNlZWZwMAorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgLTB4MS43YzEyYjhkNTdmZGNmN2ZmZmE5Y2U1ZTk5YTQxNjNkZXAwLAorICAgIC0weDEuMmZhYzY0YTQyY2VlZnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTYKKyAgICAweDEuZGM4NTFhNTU2ODZkNDgwMTJhZGQzYzAyYTU0Y2M0ZDlwODc1LAorICAgIDB4MS4yZmU4YmNkMTgzMjk5cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NworICAgIC0weDEuZGM4NTFhNTU2ODZkNDgwMTJhZGQzYzAyYTU0Y2M0ZDlwODc1LAorICAgIC0weDEuMmZlOGJjZDE4MzI5OXA5CisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuNDI1NDY3MzdlMDlkNjgwMTRlYzliYWRkOWRmOGZlZTNwLTEsCisgICAgMHgxLjMwMjA4Yjc0ZDE3NjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIC0weDEuNDI1NDY3MzdlMDlkNjgwMTRlYzliYWRkOWRmOGZlZTNwLTEsCisgICAgLTB4MS4zMDIwOGI3NGQxNzYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmZmMTJmNzI5NmIwNDA4MDE3ZWFhZjQ4ZmJmMjgwMzk5cDg3NywKKyAgICAweDEuMzBhMzI0ZDYwMzNiNXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS5mZjEyZjcyOTZiMDQwODAxN2VhYWY0OGZiZjI4MDM5OXA4NzcsCisgICAgLTB4MS4zMGEzMjRkNjAzM2I1cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuNDZjNDYxMThmNzlhZDNlM2E1OGNmZmU5MGFlNmMyMjhwLTEsCisgICAgMHgxLjMzZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuNDZjNDYxMThmNzlhZDNlM2E1OGNmZmU5MGFlNmMyMjhwLTEsCisgICAgLTB4MS4zM2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuNDcxNTczNmM5NDk3ZDNjMmJhNmZlY2M2NzljMjY0OTlwLTEsCisgICAgMHgxLjM0MjQ1NDc4N2UwZWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAtMHgxLjQ3MTU3MzZjOTQ5N2QzYzJiYTZmZWNjNjc5YzI2NDk5cC0xLAorICAgIC0weDEuMzQyNDU0Nzg3ZTBlYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS44YjJlODM0ODYxMzMwODI4NjBmNjVkMGI1NGEzZmY0Y3AwLAorICAgIDB4MS4zODBwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIC0weDEuOGIyZTgzNDg2MTMzMDgyODYwZjY1ZDBiNTRhM2ZmNGNwMCwKKyAgICAtMHgxLjM4MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjk0NzQzYzFkZjUxYjQ4MDA1NzM1MmYzZGJjM2EyMDZkcDAsCisgICAgMHgxLjNkMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgLTB4MS45NDc0M2MxZGY1MWI0ODAwNTczNTJmM2RiYzNhMjA2ZHAwLAorICAgIC0weDEuM2QwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuNDNmMzc2N2Y1MmEzYTg2MDMxNDRlYzA2YjhmYzg5YTJwLTIsCisgICAgMHgxLjNlYzZmNDczOGVmNzVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAtMHgxLjQzZjM3NjdmNTJhM2E4NjAzMTQ0ZWMwNmI4ZmM4OWEycC0yLAorICAgIC0weDEuM2VjNmY0NzM4ZWY3NXAtMgorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS40MTFiZDY4Y2YxZjY2ODJhZDY2Njk1OGM0MzdiYzdkNnAtNSwKKyAgICAweDEuNDEwNmNkNGY3NjA4NnAtNQorICB9LAorICB7IC8vIEVudHJ5IDExMworICAgIC0weDEuNDExYmQ2OGNmMWY2NjgyYWQ2NjY5NThjNDM3YmM3ZDZwLTUsCisgICAgLTB4MS40MTA2Y2Q0Zjc2MDg2cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLmYxZWY5YzhhNGZkYWU4MDFiMTlmOGU0MmVmZjJjNGE4cDkyOSwKKyAgICAweDEuNDJhNTY1ZTQ1NmUwNHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS5mMWVmOWM4YTRmZGFlODAxYjE5ZjhlNDJlZmYyYzRhOHA5MjksCisgICAgLTB4MS40MmE1NjVlNDU2ZTA0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEuNTlhZTZjZmIwNjUwNTNkMTJhN2VlMjgyOWU1MGNiYzBwLTEsCisgICAgMHgxLjQzYWY1YWE0NTc4MzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAtMHgxLjU5YWU2Y2ZiMDY1MDUzZDEyYTdlZTI4MjllNTBjYmMwcC0xLAorICAgIC0weDEuNDNhZjVhYTQ1NzgzMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS41YTE2YWEzNTk0YzlkM2M2NDAxMzM2NGVjMmMwMDQ0N3AtMSwKKyAgICAweDEuNDQwNWJhZjM0MDQwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIC0weDEuNWExNmFhMzU5NGM5ZDNjNjQwMTMzNjRlYzJjMDA0NDdwLTEsCisgICAgLTB4MS40NDA1YmFmMzQwNDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLmY0ZWM0NDE5NGI2NDI4MDFhNGFmZDRjNTA2MzNlOGFhcDkzNywKKyAgICAweDEuNDU2YmYyM2UwMjQyOHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgLTB4MS5mNGVjNDQxOTRiNjQyODAxYTRhZmQ0YzUwNjMzZThhYXA5MzcsCisgICAgLTB4MS40NTZiZjIzZTAyNDI4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEuZWE5MWQ5NTMzYjM5NDgwMWJmM2QzZWM4Zjg4ZGU1NjhwOTM4LAorICAgIDB4MS40NWMxZmVlZjgwODZjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLmVhOTFkOTUzM2IzOTQ4MDFiZjNkM2VjOGY4OGRlNTY4cDkzOCwKKyAgICAtMHgxLjQ1YzFmZWVmODA4NmNwOQorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS41Yzk4YTQ5ZTY1MDNhYzE5OGVjMmJmOThkNGRmMGNlMnAtMSwKKyAgICAweDEuNDYxOGZlNDA4YjU3ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIC0weDEuNWM5OGE0OWU2NTAzYWMxOThlYzJiZjk4ZDRkZjBjZTJwLTEsCisgICAgLTB4MS40NjE4ZmU0MDhiNTdlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLjRmMTRlMDhjODg1MDE4MjdjYmU4MDM3OWM3ZTdjOGMzcC0yLAorICAgIDB4MS40OTVmNjFiMmM4MDZjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgLTB4MS40ZjE0ZTA4Yzg4NTAxODI3Y2JlODAzNzljN2U3YzhjM3AtMiwKKyAgICAtMHgxLjQ5NWY2MWIyYzgwNmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuNTAwMDAwMDAwMDYwNzgwMDAwMDAwODRmMjJjY2NjY2RwLTIwLAorICAgIDB4MS41cC0yMAorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIC0weDEuNTAwMDAwMDAwMDYwNzgwMDAwMDAwODRmMjJjY2NjY2RwLTIwLAorICAgIC0weDEuNXAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuNmU4MWM3ZDE3ZDFkZjNiZWI0NTQxNGNhNTNiYzNmMjhwLTEsCisgICAgMHgxLjU0YzgzNGMzOTgzNWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLjZlODFjN2QxN2QxZGYzYmViNDU0MTRjYTUzYmMzZjI4cC0xLAorICAgIC0weDEuNTRjODM0YzM5ODM1Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS45NTQ4ZTk2ODhmYjJlODAwYzQ2NmU3ZDg5MzMyOGY2OHA5OTEsCisgICAgMHgxLjU4MDdkYzc4N2E1ZDVwOQorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEuOTU0OGU5Njg4ZmIyZTgwMGM0NjZlN2Q4OTMzMjhmNjhwOTkxLAorICAgIC0weDEuNTgwN2RjNzg3YTVkNXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLjg1NDQyYTI5NjlhY2U0YTcxNzU3YzFjZGQ2YWIxYjgycDEwMDcsCisgICAgMHgxLjVkOGU0M2NkNjc4NWRwOQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuODU0NDJhMjk2OWFjZTRhNzE3NTdjMWNkZDZhYjFiODJwMTAwNywKKyAgICAtMHgxLjVkOGU0M2NkNjc4NWRwOQorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIDB4MS5mMmEzYzI5ZmM2ZDcyM2E2M2UzNDliYmNkNzg5NGE4YXAxMDA3LAorICAgIDB4MS41ZGFkZjVkMWU0NTJjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLmYyYTNjMjlmYzZkNzIzYTYzZTM0OWJiY2Q3ODk0YThhcDEwMDcsCisgICAgLTB4MS41ZGFkZjVkMWU0NTJjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuNjQ4N2FhNmUzNGNiNTdmZWZiYzRmNGVmN2I3MjgxZWZwLTIsCisgICAgMHgxLjVkYjE3YzRhNjBmZTRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLjY0ODdhYTZlMzRjYjU3ZmVmYmM0ZjRlZjdiNzI4MWVmcC0yLAorICAgIC0weDEuNWRiMTdjNGE2MGZlNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5lZGNiMTQ4Nzk2MTNlODAxNzYwODdjMWE3NmRlYzk3Y3AxMDA4LAorICAgIDB4MS41ZTA1NmVkNDBlNTZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMHgxLmVkY2IxNDg3OTYxM2U4MDE3NjA4N2MxYTc2ZGVjOTdjcDEwMDgsCisgICAgLTB4MS41ZTA1NmVkNDBlNTZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuNjA5M2Q1YmYyNTgwZjAwYmNkYzZjODhhYzM1ZDI2NDBwLTYsCisgICAgMHgxLjYwOGNkZWIzZWMxMTFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLjYwOTNkNWJmMjU4MGYwMGJjZGM2Yzg4YWMzNWQyNjQwcC02LAorICAgIC0weDEuNjA4Y2RlYjNlYzExMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS42MTRlODFhZjMxMTMzMDBkZmJkZjFlZDYwNDU0NzYwZHAtNiwKKyAgICAweDEuNjE0NzdmOGU2OTkyOHAtNgorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuNjE0ZTgxYWYzMTEzMzAwZGZiZGYxZWQ2MDQ1NDc2MGRwLTYsCisgICAgLTB4MS42MTQ3N2Y4ZTY5OTI4cC02CisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLjk2ZmFhODcyYTA2YWEzMDAzZjUxNThkZTljNTcwMzAycDEwMjMsCisgICAgMHgxLjYzMWY4NmFjMDYxMWJwOQorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEuOTZmYWE4NzJhMDZhYTMwMDNmNTE1OGRlOWM1NzAzMDJwMTAyMywKKyAgICAtMHgxLjYzMWY4NmFjMDYxMWJwOQorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS5iZjY2OGZjNmY0ZjlkMzFmNzUzYzQwODI2MWJiMDJiNHAxMDIzLAorICAgIDB4MS42MzJiYTU4ZWFlMDcxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDkKKyAgICAtMHgxLmJmNjY4ZmM2ZjRmOWQzMWY3NTNjNDA4MjYxYmIwMmI0cDEwMjMsCisgICAgLTB4MS42MzJiYTU4ZWFlMDcxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuZmZmZmZmZmZiY2QzYWU1OTUzMDNlNzRhYmIzZmQ3NWRwMTAyMywKKyAgICAweDEuNjMzY2U4ZmI5Zjc3MXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS5mZmZmZmZmZmJjZDNhZTU5NTMwM2U3NGFiYjNmZDc1ZHAxMDIzLAorICAgIC0weDEuNjMzY2U4ZmI5Zjc3MXA5CisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLmZmZmZmZmZmZjA5M2FlNTk0ZWQ3NTA4YTAyNDI5NDM2cDEwMjMsCisgICAgMHgxLjYzM2NlOGZiOWY4NDBwOQorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuZmZmZmZmZmZmMDkzYWU1OTRlZDc1MDhhMDI0Mjk0MzZwMTAyMywKKyAgICAtMHgxLjYzM2NlOGZiOWY4NDBwOQorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDB4MS5mZmZmZmZmZmY3MTNhZTU5NGVhZmMwODBhNDgyODlmOXAxMDIzLAorICAgIDB4MS42MzNjZThmYjlmODVhcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTUKKyAgICAtMHgxLmZmZmZmZmZmZjcxM2FlNTk0ZWFmYzA4MGE0ODI4OWY5cDEwMjMsCisgICAgLTB4MS42MzNjZThmYjlmODVhcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuNjNjZWFlMDljYjQ5OGZlZmVlODk3ZDlkMDlmMGYxMDFwLTYsCisgICAgMHgxLjYzYzc4NThjOWU1MjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLjYzY2VhZTA5Y2I0OThmZWZlZTg5N2Q5ZDA5ZjBmMTAxcC02LAorICAgIC0weDEuNjNjNzg1OGM5ZTUyMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS42NTA1MDY3MTJhZjM3ZmY1NGY4MWRiODgzMmE3OTdlOXAtNiwKKyAgICAweDEuNjRmZGNiMjk0NjVhOXAtNgorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuNjUwNTA2NzEyYWYzN2ZmNTRmODFkYjg4MzJhNzk3ZTlwLTYsCisgICAgLTB4MS42NGZkY2IyOTQ2NWE5cC02CisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLjg0NjUxNTNkZTdjMDA3ZmZmZGVjMWNlYmM0MDg0MWY3cC0xLAorICAgIDB4MS42NjY2NjY2NmQ1ZGEzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS44NDY1MTUzZGU3YzAwN2ZmZmRlYzFjZWJjNDA4NDFmN3AtMSwKKyAgICAtMHgxLjY2NjY2NjY2ZDVkYTNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuZjIwNTZhODc1MmMwYTU0ZDA4MDNhOWYwYzAwYmFmNWVwMCwKKyAgICAweDEuNmI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAtMHgxLmYyMDU2YTg3NTJjMGE1NGQwODAzYTlmMGMwMGJhZjVlcDAsCisgICAgLTB4MS42YjRwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIDB4MS5mNTRmOGVhZmZjNDM0OGRhODMwNWFlZjE2NGMzYmE5NHAwLAorICAgIDB4MS42Y2NwMAorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuZjU0ZjhlYWZmYzQzNDhkYTgzMDVhZWYxNjRjM2JhOTRwMCwKKyAgICAtMHgxLjZjY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgMHgxLjcxZTIwMmMwMGMyMzE5MjI5YTViODZmMGYyNmNhYmIxcC03LAorICAgIDB4MS43MWVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLjcxZTIwMmMwMGMyMzE5MjI5YTViODZmMGYyNmNhYmIxcC03LAorICAgIC0weDEuNzFlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLjc3MzI1M2RkM2YzMTE4NzRhMmYwYzgwNzY0YWJmNDJkcC04LAorICAgIDB4MS43NzMxY2Q4Yjc0NjQxcC04CisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS43NzMyNTNkZDNmMzExODc0YTJmMGM4MDc2NGFiZjQyZHAtOCwKKyAgICAtMHgxLjc3MzFjZDhiNzQ2NDFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAweDEuYTA4YTg5ZTkwNDYyOTg1ZmY1Y2RiZWY1YmUyYzE0M2VwLTEsCisgICAgMHgxLjdjODc0NDIzYjQ2NTVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAtMHgxLmEwOGE4OWU5MDQ2Mjk4NWZmNWNkYmVmNWJlMmMxNDNlcC0xLAorICAgIC0weDEuN2M4NzQ0MjNiNDY1NXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS44MDhmZDdmNTA1OWU0N2ZlZDNiZTBlYWYxYjk4MTViZHAtNCwKKyAgICAweDEuN2ZmZmM3ZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEuODA4ZmQ3ZjUwNTllNDdmZWQzYmUwZWFmMWI5ODE1YmRwLTQsCisgICAgLTB4MS43ZmZmYzdmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMHgxLjgwNGJmNWI0MGQzNGU3ZDE0M2FlNDI3NjcwYTFjMTE1cC01LAorICAgIDB4MS44MDI3ZTk3NTdiZjMxcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS44MDRiZjViNDBkMzRlN2QxNDNhZTQyNzY3MGExYzExNXAtNSwKKyAgICAtMHgxLjgwMjdlOTc1N2JmMzFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuZjBlM2U1YjZjMTdjMDJhNzk5YzMwNmRiYzFiMWE4ZWNwNTU1LAorICAgIDB4MS44MjBkOTJmYzRiNDJhcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAtMHgxLmYwZTNlNWI2YzE3YzAyYTc5OWMzMDZkYmMxYjFhOGVjcDU1NSwKKyAgICAtMHgxLjgyMGQ5MmZjNGI0MmFwOAorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS44ODY2NWZmYWFkYTkzN2RkOTM0OTE0OThmMmVlOWRlZnAtNSwKKyAgICAweDEuODg0cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgLTB4MS44ODY2NWZmYWFkYTkzN2RkOTM0OTE0OThmMmVlOWRlZnAtNSwKKyAgICAtMHgxLjg4NHAtNQorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS5iNDY5OGQ5MjQwNDA1N2ZmOTcyNDEyMjYyMjA4Mjg2M3AtMSwKKyAgICAweDEuOGJjYmY3MDQ2OWE0Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuYjQ2OThkOTI0MDQwNTdmZjk3MjQxMjI2MjIwODI4NjNwLTEsCisgICAgLTB4MS44YmNiZjcwNDY5YTRjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLmY2MTJjMGMzMmEwYzcwMGQzMmFkZGM0YzZjMmI3NmMzcDcsCisgICAgMHgxLjhlMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTB4MS5mNjEyYzBjMzJhMGM3MDBkMzJhZGRjNGM2YzJiNzZjM3A3LAorICAgIC0weDEuOGUwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuYmM5ODcxNWFlYzU2YzczMTE4NmI4YWI4ZGViMTQ1MTBwLTEsCisgICAgMHgxLjkyMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0weDEuYmM5ODcxNWFlYzU2YzczMTE4NmI4YWI4ZGViMTQ1MTBwLTEsCisgICAgLTB4MS45MjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuOTQ2MThmYTlmZTJkZGNlOWE1ODIwZWFjZDczZWE0NDdwLTgsCisgICAgMHgxLjk0NjBlNzdmZWJhNDBwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAtMHgxLjk0NjE4ZmE5ZmUyZGRjZTlhNTgyMGVhY2Q3M2VhNDQ3cC04LAorICAgIC0weDEuOTQ2MGU3N2ZlYmE0MHAtOAorICB9LAorICB7IC8vIEVudHJ5IDE4OAorICAgIDB4MS5jNmI1ZDNjYTYwZTY0ZmZmZmU1NGU3YTlkMTc2YTgwMnAtMSwKKyAgICAweDEuOTk5OTk5OWExMGQ1NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuYzZiNWQzY2E2MGU2NGZmZmZlNTRlN2E5ZDE3NmE4MDJwLTEsCisgICAgLTB4MS45OTk5OTk5YTEwZDU0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjljNTYwY2QzZmM0NGJmZmZmZTM2NmRmNThlZDk2YmVjcC0zLAorICAgIDB4MS45OTk5OTk5YTMzY2UycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS45YzU2MGNkM2ZjNDRiZmZmZmUzNjZkZjU4ZWQ5NmJlY3AtMywKKyAgICAtMHgxLjk5OTk5OTlhMzNjZTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuOWE0ODczMzg3MTQzNDgwMDAyMGNmMjk5ODVlNDlmMzBwLTQsCisgICAgMHgxLjk5OTk5OTlhNTQ1MjhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLjlhNDg3MzM4NzE0MzQ4MDAwMjBjZjI5OTg1ZTQ5ZjMwcC00LAorICAgIC0weDEuOTk5OTk5OWE1NDUyOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5jNmI1ZDNjYjExMjM5ODAwMDIwZWZjODgyMTYzM2JkZXAtMSwKKyAgICAweDEuOTk5OTk5OWE5NDliN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuYzZiNWQzY2IxMTIzOTgwMDAyMGVmYzg4MjE2MzNiZGVwLTEsCisgICAgLTB4MS45OTk5OTk5YTk0OWI3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgMHgxLjljNTYwY2Q0ODFlNjM3ZmZmZTAxZmJmZGFkODM2ZDJmcC0zLAorICAgIDB4MS45OTk5OTk5YWI2Y2VhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgLTB4MS45YzU2MGNkNDgxZTYzN2ZmZmUwMWZiZmRhZDgzNmQyZnAtMywKKyAgICAtMHgxLjk5OTk5OTlhYjZjZWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAweDEuOWM1NjBjZDY0YWMwMmZmZmZlNTM2NjI0YjNhYTg4NWZwLTMsCisgICAgMHgxLjk5OTk5OTljNzZhYmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLjljNTYwY2Q2NGFjMDJmZmZmZTUzNjYyNGIzYWE4ODVmcC0zLAorICAgIC0weDEuOTk5OTk5OWM3NmFiZXAtMworICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS45YzU2MGNkNmVjNWM3MDAwMDE3MWVlNGFmYTYxNjYyOXAtMywKKyAgICAweDEuOTk5OTk5OWQxNTFhNHAtMworICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuOWM1NjBjZDZlYzVjNzAwMDAxNzFlZTRhZmE2MTY2MjlwLTMsCisgICAgLTB4MS45OTk5OTk5ZDE1MWE0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMHgxLmE1NTczZjBlMjBmMWE5MDVhZGQ4NzlmOTkwNDEwMTlmcC0yLAorICAgIDB4MS45YTQ2OGI0ZWY0NGZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS5hNTU3M2YwZTIwZjFhOTA1YWRkODc5Zjk5MDQxMDE5ZnAtMiwKKyAgICAtMHgxLjlhNDY4YjRlZjQ0ZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDQKKyAgICAweDEuZmZmZmZmZmZmZmVkNDU3YTQyZTE2MTQ1NmNmODYyYjJwNTkwLAorICAgIDB4MS45YTU3ZDc2ZDE1MmZjcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAtMHgxLmZmZmZmZmZmZmZlZDQ1N2E0MmUxNjE0NTZjZjg2MmIycDU5MCwKKyAgICAtMHgxLjlhNTdkNzZkMTUyZmNwOAorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS5hZWJkYzYyMDhjMTI0OGIyZmZiYmE1Zjc4M2I5MmExYnAtMiwKKyAgICAweDEuYTJmNDZlYTVmOTA0OXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0weDEuYWViZGM2MjA4YzEyNDhiMmZmYmJhNWY3ODNiOTJhMWJwLTIsCisgICAgLTB4MS5hMmY0NmVhNWY5MDQ5cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgMHgxLmQ2NGEzYzJiZmRmMDg4NTY1ZGFkNmFhOGQ2ZTU4ZjA0cC0xLAorICAgIDB4MS5hNTI5NGE1Mjk0YTUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgLTB4MS5kNjRhM2MyYmZkZjA4ODU2NWRhZDZhYThkNmU1OGYwNHAtMSwKKyAgICAtMHgxLmE1Mjk0YTUyOTRhNTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuYjAwMDAwMDAwMGNkMDgwMDAwMDAxZDMxNjM5OTk5OWJwLTIwLAorICAgIDB4MS5icC0yMAorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuYjAwMDAwMDAwMGNkMDgwMDAwMDAxZDMxNjM5OTk5OWJwLTIwLAorICAgIC0weDEuYnAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAweDEuYjYyMDZhMzZhZmY0ZTdmM2JlMTk2N2RlZTZjMTljMmRwLTMsCisgICAgMHgxLmIyZGEwZDk5MTM1ODlwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAtMHgxLmI2MjA2YTM2YWZmNGU3ZjNiZTE5NjdkZWU2YzE5YzJkcC0zLAorICAgIC0weDEuYjJkYTBkOTkxMzU4OXAtMworICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIDB4MS5iZDI4YjI3MjgzNGEyZmYzZDc5ZmIxMmUzN2ExODcxNHAtNiwKKyAgICAweDEuYmQxYWFlMjMyMzUxMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIC0weDEuYmQyOGIyNzI4MzRhMmZmM2Q3OWZiMTJlMzdhMTg3MTRwLTYsCisgICAgLTB4MS5iZDFhYWUyMzIzNTEwcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLmY4YzI1MDgxZDI1ZDE5ZDBkNzNiZjQ2NjU1NWJlZjA0cC0xLAorICAgIDB4MS5iZTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAtMHgxLmY4YzI1MDgxZDI1ZDE5ZDBkNzNiZjQ2NjU1NWJlZjA0cC0xLAorICAgIC0weDEuYmUycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgMHgxLmNjOGYyNWY5NDMyMzI4NGY2ZDY0NTRkM2YzNjk5MDg4cC0yLAorICAgIDB4MS5iZTRiOTQ5Nzk5OTAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS5jYzhmMjVmOTQzMjMyODRmNmQ2NDU0ZDNmMzY5OTA4OHAtMiwKKyAgICAtMHgxLmJlNGI5NDk3OTk5MDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjAKKyAgICAweDEuMDY4ZjFiNmZkOTdhOTdmZmM1NTRmMmRiMTg4ZjkxMTdwNCwKKyAgICAweDEuYmVmODk3NzViNWU4OHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTB4MS4wNjhmMWI2ZmQ5N2E5N2ZmYzU1NGYyZGIxODhmOTExN3A0LAorICAgIC0weDEuYmVmODk3NzViNWU4OHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgMHgxLmNhNzNhZDE3ZDFmMGFmZmY4YjZkYTBkNTIwNzQxYjI2cC00LAorICAgIDB4MS5jOThwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLmNhNzNhZDE3ZDFmMGFmZmY4YjZkYTBkNTIwNzQxYjI2cC00LAorICAgIC0weDEuYzk4cC00CisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMHgxLjc0Mjc2OGNjODJkM2I4MDQ2MGY5NWMyMGY1MzE3MWMzcDEsCisgICAgMHgxLmM5ZWNhMGYzMjViNDJwMAorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0weDEuNzQyNzY4Y2M4MmQzYjgwNDYwZjk1YzIwZjUzMTcxYzNwMSwKKyAgICAtMHgxLmM5ZWNhMGYzMjViNDJwMAorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS5kYzBhYTAwMjViNjJiN2ZlNWIwYzEzYjdjYzY1YmJjNnAtMiwKKyAgICAweDEuY2M2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgLTB4MS5kYzBhYTAwMjViNjJiN2ZlNWIwYzEzYjdjYzY1YmJjNnAtMiwKKyAgICAtMHgxLmNjNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDB4MS4wNmM5Y2NkNjI2Y2Q4ODAwMDIwZWI5ZTU0NDQ5MGY2YXAwLAorICAgIDB4MS5jY2NjY2NjZDY5NDUxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTB4MS4wNmM5Y2NkNjI2Y2Q4ODAwMDIwZWI5ZTU0NDQ5MGY2YXAwLAorICAgIC0weDEuY2NjY2NjY2Q2OTQ1MXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS5kODYyZWI1Y2RlNGIwODAwZjViNDYwMDhhNDM4NGYyZXAtNSwKKyAgICAweDEuZDgycC01CisgIH0sCisgIHsgLy8gRW50cnkgMjMxCisgICAgLTB4MS5kODYyZWI1Y2RlNGIwODAwZjViNDYwMDhhNDM4NGYyZXAtNSwKKyAgICAtMHgxLmQ4MnAtNQorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS43YjE1MDkwOTE0MTM5N2ZmMDBjZDJjYjVkY2RmYzc5OHAzNDQsCisgICAgMHgxLmRmMGU4NDQzNDkyYjRwNworICB9LAorICB7IC8vIEVudHJ5IDIzMworICAgIC0weDEuN2IxNTA5MDkxNDEzOTdmZjAwY2QyY2I1ZGNkZmM3OThwMzQ0LAorICAgIC0weDEuZGYwZTg0NDM0OTJiNHA3CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMHgxLmYzNzBjY2U5NTJhNjI4MzVjYTI5ZTEyYjI4NDRjYTgycC0yLAorICAgIDB4MS5lMThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAtMHgxLmYzNzBjY2U5NTJhNjI4MzVjYTI5ZTEyYjI4NDRjYTgycC0yLAorICAgIC0weDEuZTE4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMHgxLmU2MTIzZjEyZGI5MjY4MDI4MjkyMDc0NmI2N2I5NDg5cC02LAorICAgIDB4MS5lNjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAtMHgxLmU2MTIzZjEyZGI5MjY4MDI4MjkyMDc0NmI2N2I5NDg5cC02LAorICAgIC0weDEuZTYwcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLmZjNTk3MDBmMjNmYzg4MDU5NWIyODZkOTRjYjExNjFkcC0yLAorICAgIDB4MS5lOTdlNGNhMDljZGU3cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgLTB4MS5mYzU5NzAwZjIzZmM4ODA1OTViMjg2ZDk0Y2IxMTYxZHAtMiwKKyAgICAtMHgxLmU5N2U0Y2EwOWNkZTdwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAweDEuYThhMzU4MjM2MWQ4MjgwMDAwNWVjMDcxOGE1ZThlN2NwMSwKKyAgICAweDEuZWExMWIxYWZkYzkwN3AwCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS5hOGEzNTgyMzYxZDgyODAwMDA1ZWMwNzE4YTVlOGU3Y3AxLAorICAgIC0weDEuZWExMWIxYWZkYzkwN3AwCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLmY0NTkyYjJkZGU4Y2YzODEzYjgxNzM1OGUyNzFlOTgwcC0zLAorICAgIDB4MS5lZjhwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAtMHgxLmY0NTkyYjJkZGU4Y2YzODEzYjgxNzM1OGUyNzFlOTgwcC0zLAorICAgIC0weDEuZWY4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjQ0CisgICAgMHgxLjQ4ZjYwOWU3YjZhZWNmMDU5YTRiOGM0ODRjM2JjNDM1cDIxLAorICAgIDB4MS5lZmZmZmZmZmZmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAtMHgxLjQ4ZjYwOWU3YjZhZWNmMDU5YTRiOGM0ODRjM2JjNDM1cDIxLAorICAgIC0weDEuZWZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjQ2CisgICAgMHgxLmRiY2E5MjYzZjg0MGZjYTQ4NDUwZTQwOGZhMzZiNTZicDE3NywKKyAgICAweDEuZWZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgLTB4MS5kYmNhOTI2M2Y4NDBmY2E0ODQ1MGU0MDhmYTM2YjU2YnAxNzcsCisgICAgLTB4MS5lZmZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuZDM3NjQxNjdkODRjMjYxNDZmMTA5NzE0ZWRhOWExOWVwNzE1LAorICAgIDB4MS5mMGU1NDBlYTAyMjcycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAtMHgxLmQzNzY0MTY3ZDg0YzI2MTQ2ZjEwOTcxNGVkYTlhMTllcDcxNSwKKyAgICAtMHgxLmYwZTU0MGVhMDIyNzJwOAorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS5mNDRmN2NkNzhjMGM4ZDBjZmRkMzgyNjhiNGMxYjIxYXAtNSwKKyAgICAweDEuZjNmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIC0weDEuZjQ0ZjdjZDc4YzBjOGQwY2ZkZDM4MjY4YjRjMWIyMWFwLTUsCisgICAgLTB4MS5mM2ZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLmY0ZTRmZTQ0YTIwZTczYmJjZGRjYmEwZTljNDZlODAzcC03LAorICAgIDB4MS5mNGVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAtMHgxLmY0ZTRmZTQ0YTIwZTczYmJjZGRjYmEwZTljNDZlODAzcC03LAorICAgIC0weDEuZjRlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLmY0ZmQ0NDRlZjRjMDIyNzNlMGMwYjU2YzNiNmIxOGY0cC0xMSwKKyAgICAweDEuZjRmZDNmNGZkM2Y0MXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAtMHgxLmY0ZmQ0NDRlZjRjMDIyNzNlMGMwYjU2YzNiNmIxOGY0cC0xMSwKKyAgICAtMHgxLmY0ZmQzZjRmZDNmNDFwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgMHgxLmY3NzZjMjU3YTU2Yjc4MDE4N2JmOTA1ZTgwNDE4Mjc5cC05LAorICAgIDB4MS5mNzc2NzEzNGY0YzcycC05CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgLTB4MS5mNzc2YzI1N2E1NmI3ODAxODdiZjkwNWU4MDQxODI3OXAtOSwKKyAgICAtMHgxLmY3NzY3MTM0ZjRjNzJwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEuZjc4ZTA1MTJlMTEyYjFjOTE1ZjMzYjZkMDA5NGNiZGZwLTExLAorICAgIDB4MS5mNzhkZmZmZmZmZmZmcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDI1OQorICAgIC0weDEuZjc4ZTA1MTJlMTEyYjFjOTE1ZjMzYjZkMDA5NGNiZGZwLTExLAorICAgIC0weDEuZjc4ZGZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuZmQxYTQ3MDNmZmM4ZTJjMDllZTJkMzE0MmQ4NzlkNTNwLTMsCisgICAgMHgxLmY3ZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAtMHgxLmZkMWE0NzAzZmZjOGUyYzA5ZWUyZDMxNDJkODc5ZDUzcC0zLAorICAgIC0weDEuZjdmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIDB4MS5mZDJiMTMyMTY4OTk5M2Q5ZTdhNGY1Y2M0MmU0MTdlMHAtMywKKyAgICAweDEuZjgxMDRkMTgwZWYxM3AtMworICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIC0weDEuZmQyYjEzMjE2ODk5OTNkOWU3YTRmNWNjNDJlNDE3ZTBwLTMsCisgICAgLTB4MS5mODEwNGQxODBlZjEzcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLmZhODI0N2M4MzQyMzAxZmRiZjkxOTQzMjYwMGVlZjZicC0xMSwKKyAgICAweDEuZmE4MjQyOWU1NDg2N3AtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAtMHgxLmZhODI0N2M4MzQyMzAxZmRiZjkxOTQzMjYwMGVlZjZicC0xMSwKKyAgICAtMHgxLmZhODI0MjllNTQ4NjdwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLmY2MTdhMjdlMjUwY2UxYjA2NDg4ZTUxNjdjMDg0OWE4cDkwLAorICAgIDB4MS5mZGZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAtMHgxLmY2MTdhMjdlMjUwY2UxYjA2NDg4ZTUxNjdjMDg0OWE4cDkwLAorICAgIC0weDEuZmRmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLmZlZjU0Y2RlMTE4NTFkNGRiNzkzOGVlNTdlMDgwNDg2cC03LAorICAgIDB4MS5mZWVmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgLTB4MS5mZWY1NGNkZTExODUxZDRkYjc5MzhlZTU3ZTA4MDQ4NnAtNywKKyAgICAtMHgxLmZlZWZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuMGE4ZGRjZjE3N2QxZWI3ZGE5MDUyZDRiNjgwYzkzZTRwLTEsCisgICAgMHgxLmZmOGZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAtMHgxLjBhOGRkY2YxNzdkMWViN2RhOTA1MmQ0YjY4MGM5M2U0cC0xLAorICAgIC0weDEuZmY4ZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS5mZmI1NDk5Yjk5ZjUwM2I4NzZjOTIzMzE0NmI4ODYxMHAtNiwKKyAgICAweDEuZmY5ZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIC0weDEuZmZiNTQ5OWI5OWY1MDNiODc2YzkyMzMxNDZiODg2MTBwLTYsCisgICAgLTB4MS5mZjlmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLmZmZDAwNTUzZDU3ZDg2NzlmYWFmYmI0MTc5MjkwMzdicC0xMSwKKyAgICAweDEuZmZjZmZmZmZmZmZmZnAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAtMHgxLmZmZDAwNTUzZDU3ZDg2NzlmYWFmYmI0MTc5MjkwMzdicC0xMSwKKyAgICAtMHgxLmZmY2ZmZmZmZmZmZmZwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLjczODc5NmM3NmRkZDExYTRmYWQ2N2JkYTZhODVjMGEzcDEwLAorICAgIDB4MS5mZmNmZmZmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAtMHgxLjczODc5NmM3NmRkZDExYTRmYWQ2N2JkYTZhODVjMGEzcDEwLAorICAgIC0weDEuZmZjZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLjNmZDc1MmNmY2E0ODFmZjc5Njc5ZjcxYzhhYWQ2MjM0cDkxLAorICAgIDB4MS5mZmVmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAtMHgxLjNmZDc1MmNmY2E0ODFmZjc5Njc5ZjcxYzhhYWQ2MjM0cDkxLAorICAgIC0weDEuZmZlZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLmZmZmMxMTU0ZDUxYTg4ZWQwODU4NjBkY2U0NWNkMGY2cC0xMCwKKyAgICAweDEuZmZmYmZiZmZmZmZmZnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAtMHgxLmZmZmMxMTU0ZDUxYTg4ZWQwODU4NjBkY2U0NWNkMGY2cC0xMCwKKyAgICAtMHgxLmZmZmJmYmZmZmZmZmZwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjBhY2IwN2QxOWYyZWVjMTIyYTA2ZTA1ZjJjNGEwZGU0cC0xLAorICAgIDB4MS5mZmZjN2ZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgLTB4MS4wYWNiMDdkMTlmMmVlYzEyMmEwNmUwNWYyYzRhMGRlNHAtMSwKKyAgICAtMHgxLmZmZmM3ZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEuMDBhOTA5NGVlODgwOTdmZjNkNTY3MzU1MmJjMmVhYjZwLTMsCisgICAgMHgxLmZmZmM3ZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAtMHgxLjAwYTkwOTRlZTg4MDk3ZmYzZDU2NzM1NTJiYzJlYWI2cC0zLAorICAgIC0weDEuZmZmYzdmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIDB4MS43NDk1ZTk3NzIwMjE3N2VjNjg1MDhmNmY1YTViOTE2NXAxMCwKKyAgICAweDEuZmZmZTdmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgLTB4MS43NDk1ZTk3NzIwMjE3N2VjNjg1MDhmNmY1YTViOTE2NXAxMCwKKyAgICAtMHgxLmZmZmU3ZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDI4OAorICAgIDB4MS5iNGEwMTY1ZDYxOGJjN2ZlNGZkNWFhNmZjYWMzMDJjMXA0LAorICAgIDB4MS5mZmZlZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAtMHgxLmI0YTAxNjVkNjE4YmM3ZmU0ZmQ1YWE2ZmNhYzMwMmMxcDQsCisgICAgLTB4MS5mZmZlZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuOTVlNDgxNmI2MGE4ZDc2OTcyNGI1ODZlNGRlYjNiMWJwMTgzLAorICAgIDB4MS5mZmZmZmRmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAtMHgxLjk1ZTQ4MTZiNjBhOGQ3Njk3MjRiNTg2ZTRkZWIzYjFicDE4MywKKyAgICAtMHgxLmZmZmZmZGZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIDB4MS4xZjQzZmNjNDQxODAwODAwZmNmMWQ4MzZkMmM2MmY3MnA0NSwKKyAgICAweDEuZmZmZmZmZmZmOTdkNnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgLTB4MS4xZjQzZmNjNDQxODAwODAwZmNmMWQ4MzZkMmM2MmY3MnA0NSwKKyAgICAtMHgxLmZmZmZmZmZmZjk3ZDZwNAorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEuZmZmZmZmZmZmZmZmYzBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLjk0NzY1MDRiYTgyMDU3ZjY5MzEwNjA4YzMwZTc2Y2VicDczNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA4CisgIH0sCisgIHsgLy8gRW50cnkgMjk3CisgICAgLTB4MS45NDc2NTA0YmE4MjA1N2Y2OTMxMDYwOGMzMGU3NmNlYnA3MzcsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgMHgxLjI0ZDFmZGIwZmRjNDlmYTFlZDJkMzNiZTZkODQwYzc1cC00LAorICAgIDB4MS4yNDkyNDkyNDkyNDkycC00CisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgLTB4MS4yNGQxZmRiMGZkYzQ5ZmExZWQyZDMzYmU2ZDg0MGM3NXAtNCwKKyAgICAtMHgxLjI0OTI0OTI0OTI0OTJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuMjU5MTRkNDc1NGFlY2E1ODg1YmE5NTNkYmFjODhkOGZwLTMsCisgICAgMHgxLjI0OTI0OTI0OTI0OTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAtMHgxLjI1OTE0ZDQ3NTRhZWNhNTg4NWJhOTUzZGJhYzg4ZDhmcC0zLAorICAgIC0weDEuMjQ5MjQ5MjQ5MjQ5MnAtMworICB9LAorICB7IC8vIEVudHJ5IDMwMworICAgIDB4MS5iYTM5MzRkZTI5MzA2OGU4MjIyMGMzNzA0YzU3NTBiN3AtMywKKyAgICAweDEuYjZkYjZkYjZkYjZkYnAtMworICB9LAorICB7IC8vIEVudHJ5IDMwNAorICAgIC0weDEuYmEzOTM0ZGUyOTMwNjhlODIyMjBjMzcwNGM1NzUwYjdwLTMsCisgICAgLTB4MS5iNmRiNmRiNmRiNmRicC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgMHgxLjI4OTE3YTM1ZjU5Yjg5OTA5MTFiMDVlZGJjNmY2YmExcC0yLAorICAgIDB4MS4yNDkyNDkyNDkyNDkycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgLTB4MS4yODkxN2EzNWY1OWI4OTkwOTExYjA1ZWRiYzZmNmJhMXAtMiwKKyAgICAtMHgxLjI0OTI0OTI0OTI0OTJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAweDEuNzU4OWRlZTZkZTBhMmVjNjQ4ODUyNDkwZTlhZTU0ZTJwLTIsCisgICAgMHgxLjZkYjZkYjZkYjZkYjZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAtMHgxLjc1ODlkZWU2ZGUwYTJlYzY0ODg1MjQ5MGU5YWU1NGUycC0yLAorICAgIC0weDEuNmRiNmRiNmRiNmRiNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIDB4MS5jNDZhNWJjZDNjMmMzNjhjMjU5MWI4YmJhN2UyNDI1NnAtMiwKKyAgICAweDEuYjZkYjZkYjZkYjZkYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDMxMAorICAgIC0weDEuYzQ2YTViY2QzYzJjMzY4YzI1OTFiOGJiYTdlMjQyNTZwLTIsCisgICAgLTB4MS5iNmRiNmRiNmRiNmRhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgMHgxLjBhY2QwMGZlNjNiOTVhOTg5NjAzMmM3OGRlMjMyM2M2cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgLTB4MS4wYWNkMDBmZTYzYjk1YTk4OTYwMzJjNzhkZTIzMjNjNnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAweDEuMGFjZDAwZmU2M2I5NmNhMzU3ODk1NzYxYWU2NjIyNGFwLTEsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAtMHgxLjBhY2QwMGZlNjNiOTZjYTM1Nzg5NTc2MWFlNjYyMjRhcC0xLAorICAgIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIDB4MS4zNGMxNzM3ZjI2MjUwMDU4ZGYxN2FhMGRhODlhYTVmY3AtMSwKKyAgICAweDEuMjQ5MjQ5MjQ5MjQ5MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIC0weDEuMzRjMTczN2YyNjI1MDA1OGRmMTdhYTBkYTg5YWE1ZmNwLTEsCisgICAgLTB4MS4yNDkyNDkyNDkyNDkycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgMHgxLjYwNDk1N2I2ZTkyMjNhYjlmMGFjZDVjZDA4N2Q5ZDRicC0xLAorICAgIDB4MS40OTI0OTI0OTI0OTI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgLTB4MS42MDQ5NTdiNmU5MjIzYWI5ZjBhY2Q1Y2QwODdkOWQ0YnAtMSwKKyAgICAtMHgxLjQ5MjQ5MjQ5MjQ5MjRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTkKKyAgICAweDEuOGQ5ZDhmMWY5ZWNiOTI5ZTA5MTAzZjE5MDE0OTQzM2RwLTEsCisgICAgMHgxLjZkYjZkYjZkYjZkYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAtMHgxLjhkOWQ4ZjFmOWVjYjkyOWUwOTEwM2YxOTAxNDk0MzNkcC0xLAorICAgIC0weDEuNmRiNmRiNmRiNmRiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIDB4MS5iY2Y5NTRiMjUwMzgyMDg1N2Y0ZGJlZmEwMzZmOGU1ZXAtMSwKKyAgICAweDEuOTI0OTI0OTI0OTI0OHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIC0weDEuYmNmOTU0YjI1MDM4MjA4NTdmNGRiZWZhMDM2ZjhlNWVwLTEsCisgICAgLTB4MS45MjQ5MjQ5MjQ5MjQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgMHgxLmVlOWE4YTRjM2M3MmJjYWJjYjdiMjkyNGQzMTRlZmEycC0xLAorICAgIDB4MS5iNmRiNmRiNmRiNmRhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgLTB4MS5lZTlhOGE0YzNjNzJiY2FiY2I3YjI5MjRkMzE0ZWZhMnAtMSwKKyAgICAtMHgxLmI2ZGI2ZGI2ZGI2ZGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEuMTE2MTA0YzU4NzhkNGNmNTNmZTJjMWYzODk2ZWM2NzJwMCwKKyAgICAweDEuZGI2ZGI2ZGI2ZGI2Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIC0weDEuMTE2MTA0YzU4NzhkNGNmNTNmZTJjMWYzODk2ZWM2NzJwMCwKKyAgICAtMHgxLmRiNmRiNmRiNmRiNmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEuMmNkOWZjNDRlYjk4MGNmNzhjZjc2ZTg5YjY5YTNlODhwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIC0weDEuMmNkOWZjNDRlYjk4MGNmNzhjZjc2ZTg5YjY5YTNlODhwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgMHgxLjE4ZTFlMDQ3MjI3NGU2NzY1NGQwZjg1NWMzNmU4NjFkcC02LAorICAgIDB4MS4xOGRlNWFiMjc3ZjQ1cC02CisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgLTB4MS4xOGUxZTA0NzIyNzRlNjc2NTRkMGY4NTVjMzZlODYxZHAtNiwKKyAgICAtMHgxLjE4ZGU1YWIyNzdmNDVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuMThlYzcxMmRkNDlhNzU4M2NmZTgxYzVkY2NmZDk5YjRwLTUsCisgICAgMHgxLjE4ZGU1YWIyNzdmNDVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAtMHgxLjE4ZWM3MTJkZDQ5YTc1ODNjZmU4MWM1ZGNjZmQ5OWI0cC01LAorICAgIC0weDEuMThkZTVhYjI3N2Y0NXAtNQorICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIDB4MS5hNTdkMTRkMGZjYzA2YzI5N2I1MTFlYjEwNWMzOWI1MXAtNSwKKyAgICAweDEuYTU0ZDg4MGJiM2VlOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIC0weDEuYTU3ZDE0ZDBmY2MwNmMyOTdiNTExZWIxMDVjMzliNTFwLTUsCisgICAgLTB4MS5hNTRkODgwYmIzZWU4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgMHgxLjE5MTZiNzJiMjY0OGQ2NWYwNDJlNzAxYjE0YTM3MWRkcC00LAorICAgIDB4MS4xOGRlNWFiMjc3ZjQ1cC00CisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgLTB4MS4xOTE2YjcyYjI2NDhkNjVmMDQyZTcwMWIxNGEzNzFkZHAtNCwKKyAgICAtMHgxLjE4ZGU1YWIyNzdmNDVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuNWY4NDA5YjRlMmQxOGFkYTU1ODQ4Mjk2ZjcxNDg0YjJwLTQsCisgICAgMHgxLjVmMTVmMTVmMTVmMTZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzkKKyAgICAtMHgxLjVmODQwOWI0ZTJkMThhZGE1NTg0ODI5NmY3MTQ4NGIycC00LAorICAgIC0weDEuNWYxNWYxNWYxNWYxNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIDB4MS5hNjBiY2U3MzAyNGIwZWYzNzE3NWQzMWFhNWE5NDFlNnAtNCwKKyAgICAweDEuYTU0ZDg4MGJiM2VlN3AtNAorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIC0weDEuYTYwYmNlNzMwMjRiMGVmMzcxNzVkMzFhYTVhOTQxZTZwLTQsCisgICAgLTB4MS5hNTRkODgwYmIzZWU3cC00CisgIH0sCisgIHsgLy8gRW50cnkgMzQyCisgICAgMHgxLmVjYjM1M2QwMmQ1ZmMwNTZjZWIyY2U5ZTA4YjhmOGQ1cC00LAorICAgIDB4MS5lYjg1MWViODUxZWI4cC00CisgIH0sCisgIHsgLy8gRW50cnkgMzQzCisgICAgLTB4MS5lY2IzNTNkMDJkNWZjMDU2Y2ViMmNlOWUwOGI4ZjhkNXAtNCwKKyAgICAtMHgxLmViODUxZWI4NTFlYjhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuZWNiMzUzZDAyZDVmYzA1NmNlYjJjZTllMDhiOGY4ZDVwLTQsCisgICAgMHgxLmViODUxZWI4NTFlYjhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAtMHgxLmVjYjM1M2QwMmQ1ZmMwNTZjZWIyY2U5ZTA4YjhmOGQ1cC00LAorICAgIC0weDEuZWI4NTFlYjg1MWViOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS4wMjI0M2NlMDU0OWY5ODBkYzdjN2QzMmM1NjY4N2I2MXAtMywKKyAgICAweDEuMDE3NjdkY2U0MzRhYXAtMworICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIC0weDEuMDIyNDNjZTA1NDlmOTgwZGM3YzdkMzJjNTY2ODdiNjFwLTMsCisgICAgLTB4MS4wMTc2N2RjZTQzNGFhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgMHgxLjBkZjBmODQxZmQ0YTY5OTk4NzAzZDJmZmJmMGUxNTQ0cC0zLAorICAgIDB4MS4wZDJhNmM0MDVkOWY4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgLTB4MS4wZGYwZjg0MWZkNGE2OTk5ODcwM2QyZmZiZjBlMTU0NHAtMywKKyAgICAtMHgxLjBkMmE2YzQwNWQ5ZjhwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAweDEuMTliZmY1NGQ0ZDFjYTI1MjQzOGJmY2FkNDQ4NWJiZWVwLTMsCisgICAgMHgxLjE4ZGU1YWIyNzdmNDZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAtMHgxLjE5YmZmNTRkNGQxY2EyNTI0MzhiZmNhZDQ0ODViYmVlcC0zLAorICAgIC0weDEuMThkZTVhYjI3N2Y0NnAtMworICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIDB4MS4yNTkxNGQ0NzU0YWVlYWFjNDFhODU0M2MwZTVmODRiZnAtMywKKyAgICAweDEuMjQ5MjQ5MjQ5MjQ5NHAtMworICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIC0weDEuMjU5MTRkNDc1NGFlZWFhYzQxYTg1NDNjMGU1Zjg0YmZwLTMsCisgICAgLTB4MS4yNDkyNDkyNDkyNDk0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgMHgxLjMxNjUxOTdhMmVkOWNiMGRjOTBmOWJiMTM2YTk5MDU3cC0zLAorICAgIDB4MS4zMDQ2Mzc5NmFjOWUycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzU1CisgICAgLTB4MS4zMTY1MTk3YTJlZDljYjBkYzkwZjliYjEzNmE5OTA1N3AtMywKKyAgICAtMHgxLjMwNDYzNzk2YWM5ZTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAweDEuM2QzYjczMzUzNmQzZjllNDhjMTYyNjc3NmMxODQ1MGZwLTMsCisgICAgMHgxLjNiZmEyNjA4YzZmMzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAtMHgxLjNkM2I3MzM1MzZkM2Y5ZTQ4YzE2MjY3NzZjMTg0NTBmcC0zLAorICAgIC0weDEuM2JmYTI2MDhjNmYzMHAtMworICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIDB4MS40OTE0NzNjZDNlNWJiNjAxMTY4MGUxYzQxMmI3NTIyNnAtMywKKyAgICAweDEuNDdhZTE0N2FlMTQ3YnAtMworICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIC0weDEuNDkxNDczY2QzZTViYjYwMTE2ODBlMWM0MTJiNzUyMjZwLTMsCisgICAgLTB4MS40N2FlMTQ3YWUxNDdicC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzYwCisgICAgMHgxLjQ5MTQ3M2NkM2U1YmI2MDExNjgwZTFjNDEyYjc1MjI2cC0zLAorICAgIDB4MS40N2FlMTQ3YWUxNDdicC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzYxCisgICAgLTB4MS40OTE0NzNjZDNlNWJiNjAxMTY4MGUxYzQxMmI3NTIyNnAtMywKKyAgICAtMHgxLjQ3YWUxNDdhZTE0N2JwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjIKKyAgICAweDEuMjI3YjJmMjdlNmVmZTAzZDcyYjJjMzExZDI5Yzc4ODRwLTIsCisgICAgMHgxLjFlYjg1MWViODUxZWNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjMKKyAgICAtMHgxLjIyN2IyZjI3ZTZlZmUwM2Q3MmIyYzMxMWQyOWM3ODg0cC0yLAorICAgIC0weDEuMWViODUxZWI4NTFlY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIDB4MS5hNDljNDFmODUwZWQyNjgwZWU5NGRhMzE4M2M4OWE1MnAtMiwKKyAgICAweDEuOTk5OTk5OTk5OTk5YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIC0weDEuYTQ5YzQxZjg1MGVkMjY4MGVlOTRkYTMxODNjODlhNTJwLTIsCisgICAgLTB4MS45OTk5OTk5OTk5OTlhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzY2CisgICAgMHgxLjE2NjZkZDhjMTdhYzk5ODZkM2NkNDAxODM2NGZjMmVjcC0xLAorICAgIDB4MS4wYTNkNzBhM2Q3MGE0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgLTB4MS4xNjY2ZGQ4YzE3YWM5OTg2ZDNjZDQwMTgzNjRmYzJlY3AtMSwKKyAgICAtMHgxLjBhM2Q3MGEzZDcwYTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjgKKyAgICAweDEuNWU4MzIyNzU2OTFmMjljNzU0YTY5ZjA4YTBiZGEwNjBwLTEsCisgICAgMHgxLjQ3YWUxNDdhZTE0N2JwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjkKKyAgICAtMHgxLjVlODMyMjc1NjkxZjI5Yzc1NGE2OWYwOGEwYmRhMDYwcC0xLAorICAgIC0weDEuNDdhZTE0N2FlMTQ3YnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIDB4MS5hYmFkMTU1YjY3NTFhNjk3MTMwZDhmYWFmZTlkNTEyY3AtMSwKKyAgICAweDEuODUxZWI4NTFlYjg1MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIC0weDEuYWJhZDE1NWI2NzUxYTY5NzEzMGQ4ZmFhZmU5ZDUxMmNwLTEsCisgICAgLTB4MS44NTFlYjg1MWViODUycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzcyCisgICAgMHgxLmZmMDE4MmEwNjJjODU1OTI2ZmU2MzczZjliM2FmZDU4cC0xLAorICAgIDB4MS5jMjhmNWMyOGY1YzI5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgLTB4MS5mZjAxODJhMDYyYzg1NTkyNmZlNjM3M2Y5YjNhZmQ1OHAtMSwKKyAgICAtMHgxLmMyOGY1YzI4ZjVjMjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzQKKyAgICAweDEuMmNkOWZjNDRlYjk4MjVhODAyNDk0ODdmMDY0ZmZkNWNwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgLTB4MS4yY2Q5ZmM0NGViOTgyNWE4MDI0OTQ4N2YwNjRmZmQ1Y3AwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzc2CisgICAgMHgxLjJjZDlmYzQ0ZWI5ODI1YTgwMjQ5NDg3ZjA2NGZmZDVjcDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM3NworICAgIC0weDEuMmNkOWZjNDRlYjk4MjVhODAyNDk0ODdmMDY0ZmZkNWNwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS5jMDM0YTdjZDZjZTlhZGU0ZjYxMWZkZDA1ZDEwOWNmNnA3LAorICAgIDB4MS44NmJjODhjYmYxYjY3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAtMHgxLmMwMzRhN2NkNmNlOWFkZTRmNjExZmRkMDVkMTA5Y2Y2cDcsCisgICAgLTB4MS44NmJjODhjYmYxYjY3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODAKKyAgICAweDEuMjBhZjZjYjk4NTllYjIzZTkxZTYzYzI4ZDE4YjBkMGFwMTUsCisgICAgMHgxLjY2YmM4OGNiZjFiNjdwMworICB9LAorICB7IC8vIEVudHJ5IDM4MQorICAgIC0weDEuMjBhZjZjYjk4NTllYjIzZTkxZTYzYzI4ZDE4YjBkMGFwMTUsCisgICAgLTB4MS42NmJjODhjYmYxYjY3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODIKKyAgICAweDEuNzNlMDk2Y2Y1N2FmY2U3YWRmOWYxYjJhMjE2YTVkYjVwMjIsCisgICAgMHgxLjA1MGQ2Njk4ZjU0OGRwNAorICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIC0weDEuNzNlMDk2Y2Y1N2FmY2U3YWRmOWYxYjJhMjE2YTVkYjVwMjIsCisgICAgLTB4MS4wNTBkNjY5OGY1NDhkcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODQKKyAgICAweDEuZGYwYjEzYTg0NTEzZTJjZWIxODA1MDdjNTRjNWI5MDRwMjksCisgICAgMHgxLjU2YmM4OGNiZjFiNjdwNAorICB9LAorICB7IC8vIEVudHJ5IDM4NQorICAgIC0weDEuZGYwYjEzYTg0NTEzZTJjZWIxODA1MDdjNTRjNWI5MDRwMjksCisgICAgLTB4MS41NmJjODhjYmYxYjY3cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODYKKyAgICAweDEuMzQ4YmMxZTAxOGJjNTkzY2UyZjlkMWJjMGYzN2UxNGZwMzcsCisgICAgMHgxLmE4NmJhYWZlZWUyNDFwNAorICB9LAorICB7IC8vIEVudHJ5IDM4NworICAgIC0weDEuMzQ4YmMxZTAxOGJjNTkzY2UyZjlkMWJjMGYzN2UxNGZwMzcsCisgICAgLTB4MS5hODZiYWFmZWVlMjQxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODgKKyAgICAweDEuOGQ3NjFhMzM5ODk0MjQ0OGVhNzk2YzY1NzQ4YTg2OWVwNDQsCisgICAgMHgxLmZhMWFjZDMxZWE5MWJwNAorICB9LAorICB7IC8vIEVudHJ5IDM4OQorICAgIC0weDEuOGQ3NjFhMzM5ODk0MjQ0OGVhNzk2YzY1NzQ4YTg2OWVwNDQsCisgICAgLTB4MS5mYTFhY2QzMWVhOTFicDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTAKKyAgICAweDEuZmZmZmZmZmZmZmZmOWVkZTY3YjdhMzBlNjYxYzc5ZTJwNTEsCisgICAgMHgxLjI1ZTRmN2IyNzM3ZmFwNQorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIC0weDEuZmZmZmZmZmZmZmZmOWVkZTY3YjdhMzBlNjYxYzc5ZTJwNTEsCisgICAgLTB4MS4yNWU0ZjdiMjczN2ZhcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAweDEuZmZmZmZmZmRmZmZlY2E4NmMzODg1Nzg2YTJiMjMwNmZwMTQsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwMworICB9LAorICB7IC8vIEVudHJ5IDM5MworICAgIC0weDEuZmZmZmZmZmRmZmZlY2E4NmMzODg1Nzg2YTJiMjMwNmZwMTQsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTQKKyAgICAweDEuZmZmZmZmZmRmZmZmY2E4NmMzODk1Nzg2NDdmNTkyMzRwMTQsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwMworICB9LAorICB7IC8vIEVudHJ5IDM5NQorICAgIC0weDEuZmZmZmZmZmRmZmZmY2E4NmMzODk1Nzg2NDdmNTkyMzRwMTQsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAweDEuZmZmZmZmZmUwMDAwY2E4NmMzOGE1Nzg2NmQzOGYzZjhwMTQsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwMworICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIC0weDEuZmZmZmZmZmUwMDAwY2E4NmMzOGE1Nzg2NmQzOGYzZjhwMTQsCisgICAgLTB4MS42MmU0MmZlZmEzOWYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTgKKyAgICAweDEuZmZmZGZmZmZmZmZmNjU0MmM3MDgyODQ0OWViMjFjZDBwNiwKKyAgICAweDEuNjJlNDJmZWZhMzllZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgLTB4MS5mZmZkZmZmZmZmZmY2NTQyYzcwODI4NDQ5ZWIyMWNkMHA2LAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLmZmZmRmZmZmZmZmZmU1NDM0NzA4Mjg0NDg4MDMwYmYxcDYsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwMgorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIC0weDEuZmZmZGZmZmZmZmZmZTU0MzQ3MDgyODQ0ODgwMzBiZjFwNiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZwMgorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIDB4MS5mZmZlMDAwMDAwMDA2NTQzYzcwODI4NDQ5MTUzZGIxMXA2LAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAtMHgxLmZmZmUwMDAwMDAwMDY1NDNjNzA4Mjg0NDkxNTNkYjExcDYsCisgICAgLTB4MS42MmU0MmZlZmEzOWYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDQKKyAgICAweDEuZmRmZmZmZmZmZmZmYjI1NDUyOTM0NWEzMjYxYjUxZWVwMiwKKyAgICAweDEuNjJlNDJmZWZhMzllZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNDA1CisgICAgLTB4MS5mZGZmZmZmZmZmZmZiMjU0NTI5MzQ1YTMyNjFiNTFlZXAyLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgMHgxLmZkZmZmZmZmZmZmZmYyOTQ1MjkzNDVhMzIwNzUzM2Q0cDIsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwMQorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIC0weDEuZmRmZmZmZmZmZmZmZjI5NDUyOTM0NWEzMjA3NTMzZDRwMiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZwMQorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIDB4MS5mZTAwMDAwMDAwMDAzMmQ0NTI5MzQ1YTMyMmM3MTViYXAyLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAtMHgxLmZlMDAwMDAwMDAwMDMyZDQ1MjkzNDVhMzIyYzcxNWJhcDIsCisgICAgLTB4MS42MmU0MmZlZmEzOWYwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAweDEuZGZmZmZmZmZmZmZmZDZlNWU1Zjg0NGI5ZjA5NjIzOWVwMCwKKyAgICAweDEuNjJlNDJmZWZhMzllZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDExCisgICAgLTB4MS5kZmZmZmZmZmZmZmZkNmU1ZTVmODQ0YjlmMDk2MjM5ZXAwLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMHgxLmRmZmZmZmZmZmZmZmY4ZTVlNWY4NDRiOWVmNDFlMDRjcDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwMAorICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIC0weDEuZGZmZmZmZmZmZmZmZjhlNWU1Zjg0NGI5ZWY0MWUwNGNwMCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZwMAorICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIDB4MS5lMDAwMDAwMDAwMDAxYWU1ZTVmODQ0YjllZmNkOWNmYnAwLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTUKKyAgICAtMHgxLmUwMDAwMDAwMDAwMDFhZTVlNWY4NDRiOWVmY2Q5Y2ZicDAsCisgICAgLTB4MS42MmU0MmZlZmEzOWYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAweDEuN2ZmZmZmZmZmZmZmZTdkMjg3NDZiZjAzZjY2NmJjZTRwLTEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAtMHgxLjdmZmZmZmZmZmZmZmU3ZDI4NzQ2YmYwM2Y2NjZiY2U0cC0xLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxOAorICAgIDB4MS43ZmZmZmZmZmZmZmZmYmQyODc0NmJmMDNmNjIyYWY2ZXAtMSwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIC0weDEuN2ZmZmZmZmZmZmZmZmJkMjg3NDZiZjAzZjYyMmFmNmVwLTEsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgMHgxLjgwMDAwMDAwMDAwMDBmZDI4NzQ2YmYwM2Y2M2VhMWY3cC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgLTB4MS44MDAwMDAwMDAwMDAwZmQyODc0NmJmMDNmNjNlYTFmN3AtMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAweDEuNmEwOWU2NjdmM2JjYjQ4NGMyMjM4Y2U0ODEzODRjNDRwLTIsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2I0ODRjMjIzOGNlNDgxMzg0YzQ0cC0yLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQyNAorICAgIDB4MS42YTA5ZTY2N2YzYmNjNTdkMzhmMDZjNTE1YTk0YWE2MHAtMiwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQyNQorICAgIC0weDEuNmEwOWU2NjdmM2JjYzU3ZDM4ZjA2YzUxNWE5NGFhNjBwLTIsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDI2CisgICAgMHgxLjZhMDllNjY3ZjNiY2Q2NzVhZmJkNGJiZTM0MDdhOTFicC0yLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDI3CisgICAgLTB4MS42YTA5ZTY2N2YzYmNkNjc1YWZiZDRiYmUzNDA3YTkxYnAtMiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAweDEuNjRhYjhmNjExMzRmOGMwNzMzNWFlMDE0M2YxYWE5ZTdwLTMsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAtMHgxLjY0YWI4ZjYxMTM0ZjhjMDczMzVhZTAxNDNmMWFhOWU3cC0zLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAtMworICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIDB4MS42NGFiOGY2MTEzNGY5YzQ0ZGE0NjRmYTRiNTA1NGNjNnAtMywKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMworICB9LAorICB7IC8vIEVudHJ5IDQzMQorICAgIC0weDEuNjRhYjhmNjExMzRmOWM0NGRhNDY0ZmE0YjUwNTRjYzZwLTMsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgMHgxLjY0YWI4ZjYxMTM0ZmFjODI4MTMxYmYzNTJhZjU4MjUzcC0zLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgLTB4MS42NGFiOGY2MTEzNGZhYzgyODEzMWJmMzUyYWY1ODI1M3AtMywKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzQKKyAgICAweDEuNjM1NWU2ZmZiZjliOTE4ZjEwMThjNjg2NGM5MTJjMGJwLTQsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAtMHgxLjYzNTVlNmZmYmY5YjkxOGYxMDE4YzY4NjRjOTEyYzBicC00LAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIDB4MS42MzU1ZTZmZmJmOWJhMTllNzI2ZTQ0MTgyYmM4MTY2NnAtNCwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDQzNworICAgIC0weDEuNjM1NWU2ZmZiZjliYTE5ZTcyNmU0NDE4MmJjODE2NjZwLTQsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDM4CisgICAgMHgxLjYzNTVlNmZmYmY5YmIxYWRkNGMzYzFhYTBiMDA2NDE4cC00LAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDM5CisgICAgLTB4MS42MzU1ZTZmZmJmOWJiMWFkZDRjM2MxYWEwYjAwNjQxOHAtNCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuNjMwMDliYTc0MGEyOGM3NGM1ZTM5YWJiY2I2ZDNlNTRwLTUsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDEKKyAgICAtMHgxLjYzMDA5YmE3NDBhMjhjNzRjNWUzOWFiYmNiNmQzZTU0cC01LAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIDB4MS42MzAwOWJhNzQwYTI5Yzc4OWUwMmMwYTQ4OTdmYWZhNHAtNSwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ0MworICAgIC0weDEuNjMwMDliYTc0MGEyOWM3ODllMDJjMGE0ODk3ZmFmYTRwLTUsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDQ0CisgICAgMHgxLjYzMDA5YmE3NDBhMmFjN2M3NjIxZTY4ZDQ3OTI3OWIzcC01LAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgLTB4MS42MzAwOWJhNzQwYTJhYzdjNzYyMWU2OGQ0NzkyNzliM3AtNSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDYKKyAgICAweDEuNjJlYjRhYmNjNWE3ZmIyNzQ4YjAxMTRkYTgzMjE2YzhwLTYsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDcKKyAgICAtMHgxLjYyZWI0YWJjYzVhN2ZiMjc0OGIwMTE0ZGE4MzIxNmM4cC02LAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIDB4MS42MmViNGFiY2M1YTgwYjI4M2ViMDc3YTFiMjY5NGVkMnAtNiwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIC0weDEuNjJlYjRhYmNjNWE4MGIyODNlYjA3N2ExYjI2OTRlZDJwLTYsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgMHgxLjYyZWI0YWJjYzVhODFiMjkzNGIwZGRmNWJjYTA5ZDBicC02LAorICAgIDB4MS42MmU0MmZlZmEzOWYwcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgLTB4MS42MmViNGFiY2M1YTgxYjI5MzRiMGRkZjViY2EwOWQwYnAtNiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTIKKyAgICAtMHgxLjAwMDAwMDAwMDAwMGNhODVjMzg5OGNmZmQxYmU2ZTYxcDMxLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgMHgxLjAwMDAwMDAwMDAwMGNhODVjMzg5OGNmZmQxYmU2ZTYxcDMxLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjk1MGI4NzEzMTlmZjBlNmQ1NWIwcDMwLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgMHgxLmZmZmZmZmZmZmZmZjk1MGI4NzEzMTlmZjBlNmQ1NWIwcDMwLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZDk1MGI4NzEzMWEwMDc5NWRjZTlkcDMwLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXA0CisgIH0sCisgIHsgLy8gRW50cnkgNDU3CisgICAgMHgxLmZmZmZmZmZmZmZmZDk1MGI4NzEzMWEwMDc5NWRjZTlkcDMwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTgKKyAgICAtMHgxLmZmZmZmZmZlMDAwMGNhODZjMzhhNTc4NjZkMzhmM2Y4cDE0LAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgMHgxLmZmZmZmZmZlMDAwMGNhODZjMzhhNTc4NjZkMzhmM2Y4cDE0LAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjAKKyAgICAtMHgxLmZmZmZmZmZkZmZmZmNhODZjMzg5NTc4NjQ3ZjU5MjM0cDE0LAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDYxCisgICAgMHgxLmZmZmZmZmZkZmZmZmNhODZjMzg5NTc4NjQ3ZjU5MjM0cDE0LAorICAgIDB4MS42MmU0MmZlZmEzOWVmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICAtMHgxLmZmZmZmZmZkZmZmZWNhODZjMzg4NTc4NmEyYjIzMDZmcDE0LAorICAgIC0weDEuNjJlNDJmZWZhMzllZXAzCisgIH0sCisgIHsgLy8gRW50cnkgNDYzCisgICAgMHgxLmZmZmZmZmZkZmZmZWNhODZjMzg4NTc4NmEyYjIzMDZmcDE0LAorICAgIDB4MS42MmU0MmZlZmEzOWVlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjQKKyAgICAtMHgxLmZmZmUwMDAwMDAwMDY1NDNjNzA4Mjg0NDkxNTNkYjExcDYsCisgICAgLTB4MS42MmU0MmZlZmEzOWYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjUKKyAgICAweDEuZmZmZTAwMDAwMDAwNjU0M2M3MDgyODQ0OTE1M2RiMTFwNiwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgLTB4MS5mZmZkZmZmZmZmZmZlNTQzNDcwODI4NDQ4ODAzMGJmMXA2LAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDY3CisgICAgMHgxLmZmZmRmZmZmZmZmZmU1NDM0NzA4Mjg0NDg4MDMwYmYxcDYsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwMgorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIC0weDEuZmZmZGZmZmZmZmZmNjU0MmM3MDgyODQ0OWViMjFjZDBwNiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwMgorICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIDB4MS5mZmZkZmZmZmZmZmY2NTQyYzcwODI4NDQ5ZWIyMWNkMHA2LAorICAgIDB4MS42MmU0MmZlZmEzOWVlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzAKKyAgICAtMHgxLmZlMDAwMDAwMDAwMDMyZDQ1MjkzNDVhMzIyYzcxNWJhcDIsCisgICAgLTB4MS42MmU0MmZlZmEzOWYwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzEKKyAgICAweDEuZmUwMDAwMDAwMDAwMzJkNDUyOTM0NWEzMjJjNzE1YmFwMiwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgLTB4MS5mZGZmZmZmZmZmZmZmMjk0NTI5MzQ1YTMyMDc1MzNkNHAyLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDczCisgICAgMHgxLmZkZmZmZmZmZmZmZmYyOTQ1MjkzNDVhMzIwNzUzM2Q0cDIsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIC0weDEuZmRmZmZmZmZmZmZmYjI1NDUyOTM0NWEzMjYxYjUxZWVwMiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NQorICAgIDB4MS5mZGZmZmZmZmZmZmZiMjU0NTI5MzQ1YTMyNjFiNTFlZXAyLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAtMHgxLmUwMDAwMDAwMDAwMDFhZTVlNWY4NDRiOWVmY2Q5Y2ZicDAsCisgICAgLTB4MS42MmU0MmZlZmEzOWYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAweDEuZTAwMDAwMDAwMDAwMWFlNWU1Zjg0NGI5ZWZjZDljZmJwMCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgLTB4MS5kZmZmZmZmZmZmZmZmOGU1ZTVmODQ0YjllZjQxZTA0Y3AwLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDc5CisgICAgMHgxLmRmZmZmZmZmZmZmZmY4ZTVlNWY4NDRiOWVmNDFlMDRjcDAsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4MAorICAgIC0weDEuZGZmZmZmZmZmZmZmZDZlNWU1Zjg0NGI5ZjA5NjIzOWVwMCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIDB4MS5kZmZmZmZmZmZmZmZkNmU1ZTVmODQ0YjlmMDk2MjM5ZXAwLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODIKKyAgICAtMHgxLjgwMDAwMDAwMDAwMDBmZDI4NzQ2YmYwM2Y2M2VhMWY3cC0xLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4MworICAgIDB4MS44MDAwMDAwMDAwMDAwZmQyODc0NmJmMDNmNjNlYTFmN3AtMSwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4NAorICAgIC0weDEuN2ZmZmZmZmZmZmZmZmJkMjg3NDZiZjAzZjYyMmFmNmVwLTEsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDg1CisgICAgMHgxLjdmZmZmZmZmZmZmZmZiZDI4NzQ2YmYwM2Y2MjJhZjZlcC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDg2CisgICAgLTB4MS43ZmZmZmZmZmZmZmZlN2QyODc0NmJmMDNmNjY2YmNlNHAtMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODcKKyAgICAweDEuN2ZmZmZmZmZmZmZmZTdkMjg3NDZiZjAzZjY2NmJjZTRwLTEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAtMHgxLjZhMDllNjY3ZjNiY2Q2NzVhZmJkNGJiZTM0MDdhOTFicC0yLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIDB4MS42YTA5ZTY2N2YzYmNkNjc1YWZiZDRiYmUzNDA3YTkxYnAtMiwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ5MAorICAgIC0weDEuNmEwOWU2NjdmM2JjYzU3ZDM4ZjA2YzUxNWE5NGFhNjBwLTIsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDkxCisgICAgMHgxLjZhMDllNjY3ZjNiY2M1N2QzOGYwNmM1MTVhOTRhYTYwcC0yLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDkyCisgICAgLTB4MS42YTA5ZTY2N2YzYmNiNDg0YzIyMzhjZTQ4MTM4NGM0NHAtMiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICAweDEuNmEwOWU2NjdmM2JjYjQ4NGMyMjM4Y2U0ODEzODRjNDRwLTIsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTQKKyAgICAtMHgxLjY0YWI4ZjYxMTM0ZmFjODI4MTMxYmYzNTJhZjU4MjUzcC0zLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtMworICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIDB4MS42NGFiOGY2MTEzNGZhYzgyODEzMWJmMzUyYWY1ODI1M3AtMywKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtMworICB9LAorICB7IC8vIEVudHJ5IDQ5NgorICAgIC0weDEuNjRhYjhmNjExMzRmOWM0NGRhNDY0ZmE0YjUwNTRjYzZwLTMsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgMHgxLjY0YWI4ZjYxMTM0ZjljNDRkYTQ2NGZhNGI1MDU0Y2M2cC0zLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDk4CisgICAgLTB4MS42NGFiOGY2MTEzNGY4YzA3MzM1YWUwMTQzZjFhYTllN3AtMywKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTkKKyAgICAweDEuNjRhYjhmNjExMzRmOGMwNzMzNWFlMDE0M2YxYWE5ZTdwLTMsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDAKKyAgICAtMHgxLjYzNTVlNmZmYmY5YmIxYWRkNGMzYzFhYTBiMDA2NDE4cC00LAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIDB4MS42MzU1ZTZmZmJmOWJiMWFkZDRjM2MxYWEwYjAwNjQxOHAtNCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDUwMgorICAgIC0weDEuNjM1NWU2ZmZiZjliYTE5ZTcyNmU0NDE4MmJjODE2NjZwLTQsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTAzCisgICAgMHgxLjYzNTVlNmZmYmY5YmExOWU3MjZlNDQxODJiYzgxNjY2cC00LAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTA0CisgICAgLTB4MS42MzU1ZTZmZmJmOWI5MThmMTAxOGM2ODY0YzkxMmMwYnAtNCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAweDEuNjM1NWU2ZmZiZjliOTE4ZjEwMThjNjg2NGM5MTJjMGJwLTQsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDYKKyAgICAtMHgxLjYzMDA5YmE3NDBhMmFjN2M3NjIxZTY4ZDQ3OTI3OWIzcC01LAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDUwNworICAgIDB4MS42MzAwOWJhNzQwYTJhYzdjNzYyMWU2OGQ0NzkyNzliM3AtNSwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDUwOAorICAgIC0weDEuNjMwMDliYTc0MGEyOWM3ODllMDJjMGE0ODk3ZmFmYTRwLTUsCisgICAgLTB4MS42MmU0MmZlZmEzOWVmcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTA5CisgICAgMHgxLjYzMDA5YmE3NDBhMjljNzg5ZTAyYzBhNDg5N2ZhZmE0cC01LAorICAgIDB4MS42MmU0MmZlZmEzOWVmcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgLTB4MS42MzAwOWJhNzQwYTI4Yzc0YzVlMzlhYmJjYjZkM2U1NHAtNSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTEKKyAgICAweDEuNjMwMDliYTc0MGEyOGM3NGM1ZTM5YWJiY2I2ZDNlNTRwLTUsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTIKKyAgICAweDEuYmZlYjMyMDY5NTg0NjFlMGNkOTQ5Yjc0MDM5NzM3NGJwMjYyLAorICAgIDB4MS42ZGI2ZGI2ZGI2ZGI3cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTMKKyAgICAtMHgxLmJmZWIzMjA2OTU4NDYxZTBjZDk0OWI3NDAzOTczNzRicDI2MiwKKyAgICAtMHgxLjZkYjZkYjZkYjZkYjdwNworICB9LAorICB7IC8vIEVudHJ5IDUxNAorICAgIDB4MS5lZTRhZGZmYzQ4MTZjMTk2Y2M4NWM1NzliNDliNzEzY3AzNDEsCisgICAgMHgxLmRiNmRiNmRiNmRiNmVwNworICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIC0weDEuZWU0YWRmZmM0ODE2YzE5NmNjODVjNTc5YjQ5YjcxM2NwMzQxLAorICAgIC0weDEuZGI2ZGI2ZGI2ZGI2ZXA3CisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgMHgxLjEwYmJkMzA0ZTRkNTMzMTcxOTFkYjgwMTY4ZjQxZTg4cDQyMSwKKyAgICAweDEuMjQ5MjQ5MjQ5MjQ5MnA4CisgIH0sCisgIHsgLy8gRW50cnkgNTE3CisgICAgLTB4MS4xMGJiZDMwNGU0ZDUzMzE3MTkxZGI4MDE2OGY0MWU4OHA0MjEsCisgICAgLTB4MS4yNDkyNDkyNDkyNDkycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICAweDEuMmNmODYyMWFhM2VhY2JjZTNjNWM2YWFjN2E1MmU4NzJwNTAwLAorICAgIDB4MS41YjZkYjZkYjZkYjZkcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAtMHgxLjJjZjg2MjFhYTNlYWNiY2UzYzVjNmFhYzdhNTJlODcycDUwMCwKKyAgICAtMHgxLjViNmRiNmRiNmRiNmRwOAorICB9LAorICB7IC8vIEVudHJ5IDUyMAorICAgIDB4MS40YzIxNTM5NTcyYzE5YjU5ZmM2MjkxMjlkMzA3ZDliMXA1NzksCisgICAgMHgxLjkyNDkyNDkyNDkyNDhwOAorICB9LAorICB7IC8vIEVudHJ5IDUyMQorICAgIC0weDEuNGMyMTUzOTU3MmMxOWI1OWZjNjI5MTI5ZDMwN2Q5YjFwNTc5LAorICAgIC0weDEuOTI0OTI0OTI0OTI0OHA4CisgIH0sCisgIHsgLy8gRW50cnkgNTIyCisgICAgMHgxLjZlODQyMmI0ZGIzM2I2MjkzY2Q0NGNkMWM2NTU4NWIycDY1OCwKKyAgICAweDEuYzkyNDkyNDkyNDkyM3A4CisgIH0sCisgIHsgLy8gRW50cnkgNTIzCisgICAgLTB4MS42ZTg0MjJiNGRiMzNiNjI5M2NkNDRjZDFjNjU1ODViMnA2NTgsCisgICAgLTB4MS5jOTI0OTI0OTI0OTIzcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjQKKyAgICAweDEuNmRkZTRjODU1ZjMzOTdjZDA1ZjM4M2UyYWQ1ZWYyMTlwOTM1LAorICAgIDB4MS40NDkyNDkyNDkyNDkycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAtMHgxLjZkZGU0Yzg1NWYzMzk3Y2QwNWYzODNlMmFkNWVmMjE5cDkzNSwKKyAgICAtMHgxLjQ0OTI0OTI0OTI0OTJwOQorICB9LAorICB7IC8vIEVudHJ5IDUyNgorICAgIDB4MS5hMTc4ZDI1M2ZjMzVhMGI5ODAyZDljZDVmNjdjYjdlZnA5NDgsCisgICAgMHgxLjQ5MjQ5MjQ5MjQ5MjRwOQorICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIC0weDEuYTE3OGQyNTNmYzM1YTBiOTgwMmQ5Y2Q1ZjY3Y2I3ZWZwOTQ4LAorICAgIC0weDEuNDkyNDkyNDkyNDkyNHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgMHgxLmRjNWE5Yzk3ZWExM2EwMDYyODI4Mzg2ZGMyNDYwYWMycDk2MSwKKyAgICAweDEuNGRiNmRiNmRiNmRiNnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTI5CisgICAgLTB4MS5kYzVhOWM5N2VhMTNhMDA2MjgyODM4NmRjMjQ2MGFjMnA5NjEsCisgICAgLTB4MS40ZGI2ZGI2ZGI2ZGI2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAweDEuMGZjNTNjNzI3MTU1ZDlkZDAwMTczM2Q0MjU4ZTMyMDNwOTc1LAorICAgIDB4MS41MjQ5MjQ5MjQ5MjQ4cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzEKKyAgICAtMHgxLjBmYzUzYzcyNzE1NWQ5ZGQwMDE3MzNkNDI1OGUzMjAzcDk3NSwKKyAgICAtMHgxLjUyNDkyNDkyNDkyNDhwOQorICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIDB4MS4zNjFhMjJmNTg3OWExNTgxMDZiZWUxZTg5ZWEyYTRkN3A5ODgsCisgICAgMHgxLjU2ZGI2ZGI2ZGI2ZGFwOQorICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIC0weDEuMzYxYTIyZjU4NzlhMTU4MTA2YmVlMWU4OWVhMmE0ZDdwOTg4LAorICAgIC0weDEuNTZkYjZkYjZkYjZkYXA5CisgIH0sCisgIHsgLy8gRW50cnkgNTM0CisgICAgMHgxLjYxZDcxNmVjYTkzODExZjhkODI4ODY0OWRjMmNlZTY1cDEwMDEsCisgICAgMHgxLjViNmRiNmRiNmRiNmNwOQorICB9LAorICB7IC8vIEVudHJ5IDUzNQorICAgIC0weDEuNjFkNzE2ZWNhOTM4MTFmOGQ4Mjg4NjQ5ZGMyY2VlNjVwMTAwMSwKKyAgICAtMHgxLjViNmRiNmRiNmRiNmNwOQorICB9LAorICB7IC8vIEVudHJ5IDUzNgorICAgIEhVR0VfVkFMLAorICAgIDB4MS43NmRiNmRiNmRiNmRicDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzcKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS43NmRiNmRiNmRiNmRicDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzgKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuOGRiNmRiNmRiNmRiNnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTM5CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuOGRiNmRiNmRiNmRiNnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgSFVHRV9WQUwsCisgICAgMHgxLmE0OTI0OTI0OTI0OTFwOQorICB9LAorICB7IC8vIEVudHJ5IDU0MQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmE0OTI0OTI0OTI0OTFwOQorICB9LAorICB7IC8vIEVudHJ5IDU0MgorICAgIEhVR0VfVkFMLAorICAgIDB4MS5iYjZkYjZkYjZkYjZjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5iYjZkYjZkYjZkYjZjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDQKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZDI0OTI0OTI0OTI0N3A5CisgIH0sCisgIHsgLy8gRW50cnkgNTQ1CisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZDI0OTI0OTI0OTI0N3A5CisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmU5MjQ5MjQ5MjQ5MjJwOQorICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmU5MjQ5MjQ5MjQ5MjJwOQorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIC0weDEuOTNiZjRlYzI4MmVmYjMyMGE1N2Y5YWUwMmUwMWFlNTFwMTAxNCwKKyAgICAtMHgxLjZwOQorICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIDB4MS45M2JmNGVjMjgyZWZiMzIwYTU3ZjlhZTAyZTAxYWU1MXAxMDE0LAorICAgIDB4MS42cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTAKKyAgICAtMHgxLjYxZDcxNmVjYTk5MDg3YmU5MzUyZGY1ZDEzMWE1ZGQycDEwMDEsCisgICAgLTB4MS41YjZkYjZkYjZkYjZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTEKKyAgICAweDEuNjFkNzE2ZWNhOTkwODdiZTkzNTJkZjVkMTMxYTVkZDJwMTAwMSwKKyAgICAweDEuNWI2ZGI2ZGI2ZGI2ZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgLTB4MS4zNjFhMjJmNTg3ZTc5YzA5YzQyMGQyMWVjZmZjMDBjZHA5ODgsCisgICAgLTB4MS41NmRiNmRiNmRiNmRjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTMKKyAgICAweDEuMzYxYTIyZjU4N2U3OWMwOWM0MjBkMjFlY2ZmYzAwY2RwOTg4LAorICAgIDB4MS41NmRiNmRiNmRiNmRjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTQKKyAgICAtMHgxLjBmYzUzYzcyNzE5OWNiMmMxY2IzOTFjOGM2YjFjYjVicDk3NSwKKyAgICAtMHgxLjUyNDkyNDkyNDkyNGFwOQorICB9LAorICB7IC8vIEVudHJ5IDU1NQorICAgIDB4MS4wZmM1M2M3MjcxOTljYjJjMWNiMzkxYzhjNmIxY2I1YnA5NzUsCisgICAgMHgxLjUyNDkyNDkyNDkyNGFwOQorICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIC0weDEuZGM1YTljOTdlYThhYjZhZDRlMjJjYzM4OThiNGQ0MjJwOTYxLAorICAgIC0weDEuNGRiNmRiNmRiNmRiOHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgMHgxLmRjNWE5Yzk3ZWE4YWI2YWQ0ZTIyY2MzODk4YjRkNDIycDk2MSwKKyAgICAweDEuNGRiNmRiNmRiNmRiOHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTU4CisgICAgLTB4MS5hMTc4ZDI1M2ZjOWRmZWVlMTUyY2I3NDllYjZmNjMzOXA5NDgsCisgICAgLTB4MS40OTI0OTI0OTI0OTI2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTkKKyAgICAweDEuYTE3OGQyNTNmYzlkZmVlZTE1MmNiNzQ5ZWI2ZjYzMzlwOTQ4LAorICAgIDB4MS40OTI0OTI0OTI0OTI2cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjAKKyAgICAtMHgxLjZkZGU0Yzg1NWY4ZjBmNjAyNzRiNWMzNzkzMDQ5OWY1cDkzNSwKKyAgICAtMHgxLjQ0OTI0OTI0OTI0OTRwOQorICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIDB4MS42ZGRlNGM4NTVmOGYwZjYwMjc0YjVjMzc5MzA0OTlmNXA5MzUsCisgICAgMHgxLjQ0OTI0OTI0OTI0OTRwOQorICB9LAorICB7IC8vIEVudHJ5IDU2MgorICAgIC0weDEuNDBhNGI5YzI3MWM4YzQyNzFmYmNjM2RmMzM2ZTBlZGJwOTIyLAorICAgIC0weDEuNDAwMDAwMDAwMDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTYzCisgICAgMHgxLjQwYTRiOWMyNzFjOGM0MjcxZmJjYzNkZjMzNmUwZWRicDkyMiwKKyAgICAweDEuNDAwMDAwMDAwMDAwMnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTY0CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNTY1CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDU2NgorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDU2NworICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjgKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjkKKyAgICAweDEuZWNiMzUzZDAyZDVmYjAzOTQ3ZTMyMGM1YmNjYWFjM2ZwLTQsCisgICAgMHgxLmViODUxZWI4NTFlYjdwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzAKKyAgICAtMHgxLmVjYjM1M2QwMmQ1ZmIwMzk0N2UzMjBjNWJjY2FhYzNmcC00LAorICAgIC0weDEuZWI4NTFlYjg1MWViN3AtNAorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIDB4MS5lY2IzNTNkMDJkNWZjMDU2Y2ViMmNlOWUwOGI4ZjhkNXAtNCwKKyAgICAweDEuZWI4NTFlYjg1MWViOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIC0weDEuZWNiMzUzZDAyZDVmYzA1NmNlYjJjZTllMDhiOGY4ZDVwLTQsCisgICAgLTB4MS5lYjg1MWViODUxZWI4cC00CisgIH0sCisgIHsgLy8gRW50cnkgNTczCisgICAgMHgxLmVjYjM1M2QwMmQ1ZmQwNzQ1NTgyN2M3NjU0YTkzMjFmcC00LAorICAgIDB4MS5lYjg1MWViODUxZWI5cC00CisgIH0sCisgIHsgLy8gRW50cnkgNTc0CisgICAgLTB4MS5lY2IzNTNkMDJkNWZkMDc0NTU4MjdjNzY1NGE5MzIxZnAtNCwKKyAgICAtMHgxLmViODUxZWI4NTFlYjlwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzUKKyAgICAweDEuMGFjZDAwZmU2M2I5NjM5ZGY2YzY0MWVkNDYzYzRjYTBwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzYKKyAgICAtMHgxLjBhY2QwMGZlNjNiOTYzOWRmNmM2NDFlZDQ2M2M0Y2EwcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDU3NworICAgIDB4MS4wYWNkMDBmZTYzYjk2Y2EzNTc4OTU3NjFhZTY2MjI0YXAtMSwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU3OAorICAgIC0weDEuMGFjZDAwZmU2M2I5NmNhMzU3ODk1NzYxYWU2NjIyNGFwLTEsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTc5CisgICAgMHgxLjBhY2QwMGZlNjNiOTdlYWUxOTBmODI0YTdlZWJkNDBkcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTgwCisgICAgLTB4MS4wYWNkMDBmZTYzYjk3ZWFlMTkwZjgyNGE3ZWViZDQwZHAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODEKKyAgICAweDEuMmNkOWZjNDRlYjk4MTk0ZmM3YTA1Yjg0NWU0ZjgyYjNwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU4MgorICAgIC0weDEuMmNkOWZjNDRlYjk4MTk0ZmM3YTA1Yjg0NWU0ZjgyYjNwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODMKKyAgICAweDEuMmNkOWZjNDRlYjk4MjVhODAyNDk0ODdmMDY0ZmZkNWNwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTg0CisgICAgLTB4MS4yY2Q5ZmM0NGViOTgyNWE4MDI0OTQ4N2YwNjRmZmQ1Y3AwLAorICAgIC0weDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTg1CisgICAgMHgxLjJjZDlmYzQ0ZWI5ODNlNTg3NzliMjI3NDU3MzI5NjJkcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIC0weDEuMmNkOWZjNDRlYjk4M2U1ODc3OWIyMjc0NTczMjk2MmRwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDU4NworICAgIDB4MS5hYjVhZGI5YzQzNWU0Y2JlNzI0MTU3MTNhNjRmNjZhMXAzMCwKKyAgICAweDEuNWZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNTg4CisgICAgLTB4MS5hYjVhZGI5YzQzNWU0Y2JlNzI0MTU3MTNhNjRmNjZhMXAzMCwKKyAgICAtMHgxLjVmZmZmZmZmZmZmZmZwNAorICB9LAorICB7IC8vIEVudHJ5IDU4OQorICAgIDB4MS5hYjVhZGI5YzQzNWZmODE5NGRkZDlhNzJjOGMwMTE4M3AzMCwKKyAgICAweDEuNnA0CisgIH0sCisgIHsgLy8gRW50cnkgNTkwCisgICAgLTB4MS5hYjVhZGI5YzQzNWZmODE5NGRkZDlhNzJjOGMwMTE4M3AzMCwKKyAgICAtMHgxLjZwNAorICB9LAorICB7IC8vIEVudHJ5IDU5MQorICAgIDB4MS5hYjVhZGI5YzQzNjFhMzc0Mjk3OWRkZDM5NjhiOTgwMXAzMCwKKyAgICAweDEuNjAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNTkyCisgICAgLTB4MS5hYjVhZGI5YzQzNjFhMzc0Mjk3OWRkZDM5NjhiOTgwMXAzMCwKKyAgICAtMHgxLjYwMDAwMDAwMDAwMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDU5MworICAgIDB4MS4yMjZhZjMzYjFmZGFlN2VjNTkzYjhiNDVlODBlNTRkMnAzMiwKKyAgICAweDEuNmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNTk0CisgICAgLTB4MS4yMjZhZjMzYjFmZGFlN2VjNTkzYjhiNDVlODBlNTRkMnAzMiwKKyAgICAtMHgxLjZmZmZmZmZmZmZmZmZwNAorICB9LAorICB7IC8vIEVudHJ5IDU5NQorICAgIDB4MS4yMjZhZjMzYjFmZGMwYTU3NGM3NmFiMjE2MTMwOTg4MHAzMiwKKyAgICAweDEuN3A0CisgIH0sCisgIHsgLy8gRW50cnkgNTk2CisgICAgLTB4MS4yMjZhZjMzYjFmZGMwYTU3NGM3NmFiMjE2MTMwOTg4MHAzMiwKKyAgICAtMHgxLjdwNAorICB9LAorICB7IC8vIEVudHJ5IDU5NworICAgIDB4MS4yMjZhZjMzYjFmZGQyY2MyM2ZiMWNhZmRmY2JkY2Y2OXAzMiwKKyAgICAweDEuNzAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNTk4CisgICAgLTB4MS4yMjZhZjMzYjFmZGQyY2MyM2ZiMWNhZmRmY2JkY2Y2OXAzMiwKKyAgICAtMHgxLjcwMDAwMDAwMDAwMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDU5OQorICAgIDB4MS5mZmZmZmZmZmZmZmI5ZWRlNjdiN2EzMTMyODVmYWE3M3A1MSwKKyAgICAweDEuMjVlNGY3YjI3MzdmOXA1CisgIH0sCisgIHsgLy8gRW50cnkgNjAwCisgICAgLTB4MS5mZmZmZmZmZmZmZmI5ZWRlNjdiN2EzMTMyODVmYWE3M3A1MSwKKyAgICAtMHgxLjI1ZTRmN2IyNzM3ZjlwNQorICB9LAorICB7IC8vIEVudHJ5IDYwMQorICAgIDB4MS5mZmZmZmZmZmZmZmY5ZWRlNjdiN2EzMGU2NjFjNzllMnA1MSwKKyAgICAweDEuMjVlNGY3YjI3MzdmYXA1CisgIH0sCisgIHsgLy8gRW50cnkgNjAyCisgICAgLTB4MS5mZmZmZmZmZmZmZmY5ZWRlNjdiN2EzMGU2NjFjNzllMnA1MSwKKyAgICAtMHgxLjI1ZTRmN2IyNzM3ZmFwNQorICB9LAorICB7IC8vIEVudHJ5IDYwMworICAgIDB4MS4wMDAwMDAwMDAwMDFjZjZmMzNkYmQxODhkMWVjYTRhOXA1MiwKKyAgICAweDEuMjVlNGY3YjI3MzdmYnA1CisgIH0sCisgIHsgLy8gRW50cnkgNjA0CisgICAgLTB4MS4wMDAwMDAwMDAwMDFjZjZmMzNkYmQxODhkMWVjYTRhOXA1MiwKKyAgICAtMHgxLjI1ZTRmN2IyNzM3ZmJwNQorICB9LAorICB7IC8vIEVudHJ5IDYwNQorICAgIDB4MS42YTA5ZTY2N2YzYjczYjJlOWIxMzJkNTE0MmYzZTViM3A1MiwKKyAgICAweDEuMjhhYWMwMTI1MmM2Y3A1CisgIH0sCisgIHsgLy8gRW50cnkgNjA2CisgICAgLTB4MS42YTA5ZTY2N2YzYjczYjJlOWIxMzJkNTE0MmYzZTViM3A1MiwKKyAgICAtMHgxLjI4YWFjMDEyNTJjNmNwNQorICB9LAorICB7IC8vIEVudHJ5IDYwNworICAgIDB4MS42YTA5ZTY2N2YzYmEwZjQyNjdlMzE0YzI4ZDY0ZThhOXA1MiwKKyAgICAweDEuMjhhYWMwMTI1MmM2ZHA1CisgIH0sCisgIHsgLy8gRW50cnkgNjA4CisgICAgLTB4MS42YTA5ZTY2N2YzYmEwZjQyNjdlMzE0YzI4ZDY0ZThhOXA1MiwKKyAgICAtMHgxLjI4YWFjMDEyNTJjNmRwNQorICB9LAorICB7IC8vIEVudHJ5IDYwOQorICAgIDB4MS42YTA5ZTY2N2YzYmNlMzU2MzRiMmZjMzk3ZmZkODUzZnA1MiwKKyAgICAweDEuMjhhYWMwMTI1MmM2ZXA1CisgIH0sCisgIHsgLy8gRW50cnkgNjEwCisgICAgLTB4MS42YTA5ZTY2N2YzYmNlMzU2MzRiMmZjMzk3ZmZkODUzZnA1MiwKKyAgICAtMHgxLjI4YWFjMDEyNTJjNmVwNQorICB9LAorICB7IC8vIEVudHJ5IDYxMQorICAgIDB4MS5mZmZmZmZmZmZmOTNhZTU5NGU5YmU0MjVhMDEwYmRlY3AxMDIzLAorICAgIDB4MS42MzNjZThmYjlmODdjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTIKKyAgICAtMHgxLmZmZmZmZmZmZmY5M2FlNTk0ZTliZTQyNWEwMTBiZGVjcDEwMjMsCisgICAgLTB4MS42MzNjZThmYjlmODdjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTMKKyAgICAweDEuZmZmZmZmZmZmZmQzYWU1OTRlOWJkYTliNmIzYTkxNjhwMTAyMywKKyAgICAweDEuNjMzY2U4ZmI5Zjg3ZHA5CisgIH0sCisgIHsgLy8gRW50cnkgNjE0CisgICAgLTB4MS5mZmZmZmZmZmZmZDNhZTU5NGU5YmRhOWI2YjNhOTE2OHAxMDIzLAorICAgIC0weDEuNjMzY2U4ZmI5Zjg3ZHA5CisgIH0sCisgIHsgLy8gRW50cnkgNjE1CisgICAgSFVHRV9WQUwsCisgICAgMHgxLjYzM2NlOGZiOWY4N2VwOQorICB9LAorICB7IC8vIEVudHJ5IDYxNgorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjYzM2NlOGZiOWY4N2VwOQorICB9LAorICB7IC8vIEVudHJ5IDYxNworICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLjYzM2NlOGZiOWY4N2VwOQorICB9LAorICB7IC8vIEVudHJ5IDYxOAorICAgIEhVR0VfVkFMLAorICAgIDB4MS42MzNjZThmYjlmODdlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTkKKyAgICAtMHgxLmZmZmZmZmZmZmZkM2FlNTk0ZTliZGE5YjZiM2E5MTY4cDEwMjMsCisgICAgLTB4MS42MzNjZThmYjlmODdkcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjAKKyAgICAweDEuZmZmZmZmZmZmZmQzYWU1OTRlOWJkYTliNmIzYTkxNjhwMTAyMywKKyAgICAweDEuNjMzY2U4ZmI5Zjg3ZHA5CisgIH0sCisgIHsgLy8gRW50cnkgNjIxCisgICAgLTB4MS5mZmZmZmZmZmZmOTNhZTU5NGU5YmU0MjVhMDEwYmRlY3AxMDIzLAorICAgIC0weDEuNjMzY2U4ZmI5Zjg3Y3A5CisgIH0sCisgIHsgLy8gRW50cnkgNjIyCisgICAgMHgxLmZmZmZmZmZmZmY5M2FlNTk0ZTliZTQyNWEwMTBiZGVjcDEwMjMsCisgICAgMHgxLjYzM2NlOGZiOWY4N2NwOQorICB9LAorICB7IC8vIEVudHJ5IDYyMworICAgIDB4MS5mZmZmZmZmZmZmZmZmMDA1NTU1NTU1NTU1NTU0ZDU1OXAtMzEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgNjI0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMDA1NTU1NTU1NTU1NTU0ZDU1OXAtMzEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDYyNQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMDAyYWFhYWFhYWFhYWFhYWFhY3AtMzAsCisgICAgMHgxLjBwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgNjI2CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDAyYWFhYWFhYWFhYWFhYWFhY3AtMzAsCisgICAgLTB4MS4wcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDYyNworICAgIDB4MS4wMDAwMDAwMDAwMDAxMDAyYWFhYWFhYWFhYWFiMmFhY3AtMzAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgNjI4CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMDAyYWFhYWFhYWFhYWFiMmFhY3AtMzAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDYyOQorICAgIDB4MS4wMDAwMDAwMGFhYWFhMmFhY2NjY2JjY2NkMDBjZmI3YXAtMTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE2CisgIH0sCisgIHsgLy8gRW50cnkgNjMwCisgICAgLTB4MS4wMDAwMDAwMGFhYWFhMmFhY2NjY2JjY2NkMDBjZmI3YXAtMTUsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xNgorICB9LAorICB7IC8vIEVudHJ5IDYzMQorICAgIDB4MS4wMDAwMDAwMGFhYWFhYWFhY2NjY2NjY2NkMDBkMDBkMHAtMTUsCisgICAgMHgxLjBwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNjMyCisgICAgLTB4MS4wMDAwMDAwMGFhYWFhYWFhY2NjY2NjY2NkMDBkMDBkMHAtMTUsCisgICAgLTB4MS4wcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDYzMworICAgIDB4MS4wMDAwMDAwMGFhYWFiYWFhY2NjY2VjY2NkMDBkMGI3YXAtMTUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNjM0CisgICAgLTB4MS4wMDAwMDAwMGFhYWFiYWFhY2NjY2VjY2NkMDBkMGI3YXAtMTUsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDYzNQorICAgIDB4MS4wMDAyYWFhY2NjY2Q5NGQ5YmJkODUyN2M1OTlhOGJjN3AtNiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDYzNgorICAgIC0weDEuMDAwMmFhYWNjY2NkOTRkOWJiZDg1MjdjNTk5YThiYzdwLTYsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC03CisgIH0sCisgIHsgLy8gRW50cnkgNjM3CisgICAgMHgxLjAwMDJhYWFjY2NjZDljZDlmYmQ4YTdkMWRjNzJjNDRicC02LAorICAgIDB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgNjM4CisgICAgLTB4MS4wMDAyYWFhY2NjY2Q5Y2Q5ZmJkOGE3ZDFkYzcyYzQ0YnAtNiwKKyAgICAtMHgxLjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzkKKyAgICAweDEuMDAwMmFhYWNjY2NkYWNkYTdiZDk1MjdjZTIyMzQxNTJwLTYsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDAKKyAgICAtMHgxLjAwMDJhYWFjY2NjZGFjZGE3YmQ5NTI3Y2UyMjM0MTUycC02LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDY0MQorICAgIDB4MS4wMDBhYWFjY2NkMDBjODNhM2NhY2U4OWUxOTc3NzI0ZHAtNSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIC0weDEuMDAwYWFhY2NjZDAwYzgzYTNjYWNlODllMTk3NzcyNGRwLTUsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC02CisgIH0sCisgIHsgLy8gRW50cnkgNjQzCisgICAgMHgxLjAwMGFhYWNjY2QwMGQwM2IzY2IyM2RmZWNmOGZjYmRjcC01LAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjQ0CisgICAgLTB4MS4wMDBhYWFjY2NkMDBkMDNiM2NiMjNkZmVjZjhmY2JkY3AtNSwKKyAgICAtMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDUKKyAgICAweDEuMDAwYWFhY2NjZDAwZTAzZDNjYmNlOGMwM2JjMGFlZmNwLTUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDYKKyAgICAtMHgxLjAwMGFhYWNjY2QwMGUwM2QzY2JjZThjMDNiYzBhZWZjcC01LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDY0NworICAgIDB4MS4wMDJhYWNjY2Q5Y2RjMzEyMDAyYmY1NjE1MTExNWMxMXAtNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDY0OAorICAgIC0weDEuMDAyYWFjY2NkOWNkYzMxMjAwMmJmNTYxNTExMTVjMTFwLTQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjQ5CisgICAgMHgxLjAwMmFhY2NjZDljZGNiMTYwMDgxNGQ4ZWUwZWE1ZTk4cC00LAorICAgIDB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjUwCisgICAgLTB4MS4wMDJhYWNjY2Q5Y2RjYjE2MDA4MTRkOGVlMGVhNWU5OHAtNCwKKyAgICAtMHgxLjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTEKKyAgICAweDEuMDAyYWFjY2NkOWNkZGIxZTAxMmJmZGVhMDA5ZDIzYzdwLTQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTIKKyAgICAtMHgxLjAwMmFhY2NjZDljZGRiMWUwMTJiZmRlYTAwOWQyM2M3cC00LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDY1MworICAgIDB4MS4wMGFhY2NkMDBkMmYwNTcyYjU4NzY4MjkwY2NhMjRjM3AtMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDY1NAorICAgIC0weDEuMDBhYWNjZDAwZDJmMDU3MmI1ODc2ODI5MGNjYTI0YzNwLTMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjU1CisgICAgMHgxLjAwYWFjY2QwMGQyZjBkODJiYWRkNzM5NmM0MzkwOTFlcC0zLAorICAgIDB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjU2CisgICAgLTB4MS4wMGFhY2NkMDBkMmYwZDgyYmFkZDczOTZjNDM5MDkxZXAtMywKKyAgICAtMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTcKKyAgICAweDEuMDBhYWNjZDAwZDJmMWRhMmM1ODk4YTcyMzMxOWQzZDVwLTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAtMHgxLjAwYWFjY2QwMGQyZjFkYTJjNTg5OGE3MjMzMTlkM2Q1cC0zLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDY1OQorICAgIDB4MS4wMmFjY2Q5ZDA4MTAxNjI2MWY0YjBlY2JlYmI1ZGQ4ZnAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDY2MAorICAgIC0weDEuMDJhY2NkOWQwODEwMTYyNjFmNGIwZWNiZWJiNWRkOGZwLTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjYxCisgICAgMHgxLjAyYWNjZDlkMDgxMDFlNjY3NGNkZjNmYzhlYWFiZjJhcC0yLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjYyCisgICAgLTB4MS4wMmFjY2Q5ZDA4MTAxZTY2NzRjZGYzZmM4ZWFhYmYyYXAtMiwKKyAgICAtMHgxLjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjMKKyAgICAweDEuMDJhY2NkOWQwODEwMmVlNzFmZDNiZTVkZDRhMGEyN2FwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjQKKyAgICAtMHgxLjAyYWNjZDlkMDgxMDJlZTcxZmQzYmU1ZGQ0YTBhMjdhcC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDY2NQorICAgIDB4MS5kMDNjZjYzYjZlMTlkOGRhNTI3MjM5YmM2NGM4NWNlYXAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjYKKyAgICAtMHgxLmQwM2NmNjNiNmUxOWQ4ZGE1MjcyMzliYzY0Yzg1Y2VhcDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjcKKyAgICAweDEuZDAzY2Y2M2I2ZTE5ZjZmMzRjODAyYzk2MjAwOTcwZWZwMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjY4CisgICAgLTB4MS5kMDNjZjYzYjZlMTlmNmYzNGM4MDJjOTYyMDA5NzBlZnAxLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjY5CisgICAgMHgxLmQwM2NmNjNiNmUxYTMzMjU0MDljMTI0OTliZmM0ZmRhcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDY3MAorICAgIC0weDEuZDAzY2Y2M2I2ZTFhMzMyNTQwOWMxMjQ5OWJmYzRmZGFwMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDY3MQorICAgIDB4MS5iNGEzODAzNzAzNjJkNWYyMTY1MGE1NWMzMWIzNDhiNHA0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzIKKyAgICAtMHgxLmI0YTM4MDM3MDM2MmQ1ZjIxNjUwYTU1YzMxYjM0OGI0cDQsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzMKKyAgICAweDEuYjRhMzgwMzcwMzYzMGM4ZmU3MDI2MWQ5MmU1NjNhODhwNCwKKyAgICAweDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjc0CisgICAgLTB4MS5iNGEzODAzNzAzNjMwYzhmZTcwMjYxZDkyZTU2M2E4OHA0LAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjc1CisgICAgMHgxLmI0YTM4MDM3MDM2Mzc5Y2I4ODY1ZGFkMzNjMTNjODMzcDQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDY3NgorICAgIC0weDEuYjRhMzgwMzcwMzYzNzljYjg4NjVkYWQzM2MxM2M4MzNwNCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDY3NworICAgIDB4MS43NDllYTUxNGVjYTVmZmRmM2ZkMThiNzYyN2NkYmRjOHAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjc4CisgICAgLTB4MS43NDllYTUxNGVjYTVmZmRmM2ZkMThiNzYyN2NkYmRjOHAxMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMgorICB9LAorICB7IC8vIEVudHJ5IDY3OQorICAgIDB4MS43NDllYTUxNGVjYTY1ZDA2ZWE3Njg4YWZmNDZjZmUwOXAxMCwKKyAgICAweDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjgwCisgICAgLTB4MS43NDllYTUxNGVjYTY1ZDA2ZWE3Njg4YWZmNDZjZmUwOXAxMCwKKyAgICAtMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDY4MQorICAgIDB4MS43NDllYTUxNGVjYTcxNzU2M2ZjMDgzMjNkMzg5M2Q3ZXAxMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjgyCisgICAgLTB4MS43NDllYTUxNGVjYTcxNzU2M2ZjMDgzMjNkMzg5M2Q3ZXAxMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMworICB9LAorICB7IC8vIEVudHJ5IDY4MworICAgIDB4MS4wZjJlYmQwYTdmZmRiNjRmNGUwZTVmY2MwYzU5MzEwMXAyMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjg0CisgICAgLTB4MS4wZjJlYmQwYTdmZmRiNjRmNGUwZTVmY2MwYzU5MzEwMXAyMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDY4NQorICAgIDB4MS4wZjJlYmQwYTdmZmUzZGU2YWM5MzlmY2VkMDEyMjcwN3AyMiwKKyAgICAweDEuMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNjg2CisgICAgLTB4MS4wZjJlYmQwYTdmZmUzZGU2YWM5MzlmY2VkMDEyMjcwN3AyMiwKKyAgICAtMHgxLjBwNAorICB9LAorICB7IC8vIEVudHJ5IDY4NworICAgIDB4MS4wZjJlYmQwYTdmZmY0ZDE1Njk5ZTFmZDUyMmU3MjBkY3AyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNjg4CisgICAgLTB4MS4wZjJlYmQwYTdmZmY0ZDE1Njk5ZTFmZDUyMmU3MjBkY3AyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNAorICB9LAorICB7IC8vIEVudHJ5IDY4OQorICAgIDB4MS4xZjQzZmNjNGI2NjFhODk0NGFjMzg5YTdjN2FlN2I5ZHA0NSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjkwCisgICAgLTB4MS4xZjQzZmNjNGI2NjFhODk0NGFjMzg5YTdjN2FlN2I5ZHA0NSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNAorICB9LAorICB7IC8vIEVudHJ5IDY5MQorICAgIDB4MS4xZjQzZmNjNGI2NjJjN2Q4NDc4ODQwMDlmZmU0YzRjM3A0NSwKKyAgICAweDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNjkyCisgICAgLTB4MS4xZjQzZmNjNGI2NjJjN2Q4NDc4ODQwMDlmZmU0YzRjM3A0NSwKKyAgICAtMHgxLjBwNQorICB9LAorICB7IC8vIEVudHJ5IDY5MworICAgIDB4MS4xZjQzZmNjNGI2NjUwNjYwNDExMWFjZDFjZTFkNGQ1ZHA0NSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1CisgIH0sCisgIHsgLy8gRW50cnkgNjk0CisgICAgLTB4MS4xZjQzZmNjNGI2NjUwNjYwNDExMWFjZDFjZTFkNGQ1ZHA0NSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDY5NQorICAgIDB4MS40MjU5ODJjZjU5N2E0ZDUyYzg5ZWE4NTdiYmFhODA3YXA5MSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1CisgIH0sCisgIHsgLy8gRW50cnkgNjk2CisgICAgLTB4MS40MjU5ODJjZjU5N2E0ZDUyYzg5ZWE4NTdiYmFhODA3YXA5MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNQorICB9LAorICB7IC8vIEVudHJ5IDY5NworICAgIDB4MS40MjU5ODJjZjU5N2NkMjA1Y2UzZDViNGVkYjAzMTc1NnA5MSwKKyAgICAweDEuMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjk4CisgICAgLTB4MS40MjU5ODJjZjU5N2NkMjA1Y2UzZDViNGVkYjAzMTc1NnA5MSwKKyAgICAtMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDY5OQorICAgIDB4MS40MjU5ODJjZjU5ODFkYjZiZDk3YWMxNGMzNWU2NjZjNnA5MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgNzAwCisgICAgLTB4MS40MjU5ODJjZjU5ODFkYjZiZDk3YWMxNGMzNWU2NjZjNnA5MSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDcwMQorICAgIDB4MS45NWU1NGM1ZGQ0MWIyMDYwMGRkNjAxYTBhZTY3MmZmNHAxODMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDcwMgorICAgIC0weDEuOTVlNTRjNWRkNDFiMjA2MDBkZDYwMWEwYWU2NzJmZjRwMTgzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2CisgIH0sCisgIHsgLy8gRW50cnkgNzAzCisgICAgMHgxLjk1ZTU0YzVkZDQyMTc3ZjUzZjRkNTIxOWRmMTFjYTNicDE4MywKKyAgICAweDEuMHA3CisgIH0sCisgIHsgLy8gRW50cnkgNzA0CisgICAgLTB4MS45NWU1NGM1ZGQ0MjE3N2Y1M2Y0ZDUyMTlkZjExY2EzYnAxODMsCisgICAgLTB4MS4wcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDUKKyAgICAweDEuOTVlNTRjNWRkNDJlMjcxZmEyM2JmMzU4NWI2NTUwNjBwMTgzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDYKKyAgICAtMHgxLjk1ZTU0YzVkZDQyZTI3MWZhMjNiZjM1ODViNjU1MDYwcDE4MywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNworICB9LAorICB7IC8vIEVudHJ5IDcwNworICAgIDB4MS40MWM3YTg4MTRiZTE5MmE1ZGYyNWIwNDJhZjgyNGVmZHAzNjgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNworICB9LAorICB7IC8vIEVudHJ5IDcwOAorICAgIC0weDEuNDFjN2E4ODE0YmUxOTJhNWRmMjViMDQyYWY4MjRlZmRwMzY4LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA3CisgIH0sCisgIHsgLy8gRW50cnkgNzA5CisgICAgMHgxLjQxYzdhODgxNGJlYmEwZTMyMzMwMGY3NzdkYTY1ODU0cDM2OCwKKyAgICAweDEuMHA4CisgIH0sCisgIHsgLy8gRW50cnkgNzEwCisgICAgLTB4MS40MWM3YTg4MTRiZWJhMGUzMjMzMDBmNzc3ZGE2NTg1NHAzNjgsCisgICAgLTB4MS4wcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTEKKyAgICAweDEuNDFjN2E4ODE0YmZmYmQ1ZGFiNDRjZWQyNmZhY2NiZmJwMzY4LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTIKKyAgICAtMHgxLjQxYzdhODgxNGJmZmJkNWRhYjQ0Y2VkMjZmYWNjYmZicDM2OCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwOAorICB9LAorICB7IC8vIEVudHJ5IDcxMworICAgIDB4MS45NDc2NTA0YmE4Mzk5ZjViOTdjYWUzNWJlYjc4YzNjNXA3MzcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwOAorICB9LAorICB7IC8vIEVudHJ5IDcxNAorICAgIC0weDEuOTQ3NjUwNGJhODM5OWY1Yjk3Y2FlMzViZWI3OGMzYzVwNzM3LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA4CisgIH0sCisgIHsgLy8gRW50cnkgNzE1CisgICAgMHgxLjk0NzY1MDRiYTg1MmU2YzA5Yzg1NjdjMDFjNWE2NjQ4cDczNywKKyAgICAweDEuMHA5CisgIH0sCisgIHsgLy8gRW50cnkgNzE2CisgICAgLTB4MS45NDc2NTA0YmE4NTJlNmMwOWM4NTY3YzAxYzVhNjY0OHA3MzcsCisgICAgLTB4MS4wcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTcKKyAgICAweDEuOTQ3NjUwNGJhODg1NzU4YWE1ZmE3NTQ1ZTEwZThlNDZwNzM3LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTgKKyAgICAtMHgxLjk0NzY1MDRiYTg4NTc1OGFhNWZhNzU0NWUxMGU4ZTQ2cDczNywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDcxOQorICAgIC1IVUdFX1ZBTCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDcyMAorICAgIEhVR0VfVkFMLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjEKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzIyCisgICAgLUhVR0VfVkFMLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzIzCisgICAgSFVHRV9WQUwsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjQKKyAgICBIVUdFX1ZBTCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzI1CisgICAgSFVHRV9WQUwsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDcyNgorICAgIDB4MS43MThmNDVkNzJlNjcxNTVjZWNiMDAxNzE3OWQxMjdlNnAzLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjcKKyAgICAweDEuMjY5MGY2NjFkZDgxZmZkMjQ0ZTAyYjk0YTVjNTFkMzlwMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzI4CisgICAgMHgxLjJjZDlmYzQ0ZWI5ODNlNTg3NzliMjI3NDU3MzI5NjJkcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDcyOQorICAgIDB4MS4yY2Q5ZmM0NGViOTgyNWE4MDI0OTQ4N2YwNjRmZmQ1Y3AwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzAKKyAgICAweDEuMmNkOWZjNDRlYjk4MTk0ZmM3YTA1Yjg0NWU0ZjgyYjNwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDczMQorICAgIDB4MS5iY2MyNzBiNTIyNzM2NWI4NWU0M2IzNjM5NzIyNGQ5NHAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDczMgorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDczMworICAgIDB4MS5wLTEwMjIsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzQKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzUKKyAgICAweDEuZmZmZmZmZmZmZmZmYzBwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzYKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNzM3CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDczOAorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzkKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDAKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDEKKyAgICAtMHgxLnAtMTA3MywKKyAgICAtMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDc0MworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzQ0CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzQ1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDYKKyAgICAtMHgxLmJjYzI3MGI1MjI3MzY1Yjg1ZTQzYjM2Mzk3MjI0ZDk0cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc0NworICAgIC0weDEuMmNkOWZjNDRlYjk4MTk0ZmM3YTA1Yjg0NWU0ZjgyYjNwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDgKKyAgICAtMHgxLjJjZDlmYzQ0ZWI5ODI1YTgwMjQ5NDg3ZjA2NGZmZDVjcDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDkKKyAgICAtMHgxLjJjZDlmYzQ0ZWI5ODNlNTg3NzliMjI3NDU3MzI5NjJkcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTAKKyAgICAtMHgxLjI2OTBmNjYxZGQ4MWZmZDI0NGUwMmI5NGE1YzUxZDM5cDEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTEKKyAgICAtMHgxLjcxOGY0NWQ3MmU2NzE1NWNlY2IwMDE3MTc5ZDEyN2U2cDMsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTIKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTMKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTQKKyAgICAtSFVHRV9WQUwsCisgICAgLUhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgNzU1CisgICAgMHgxLmZmZmZmZmZmZmZkM2FlNTk0ZTliZGE5YjZiM2E5MTY4cDEwMjMsCisgICAgMHgxLjYzM2NlOGZiOWY4N2RwOQorICB9LAorICB7IC8vIEVudHJ5IDc1NgorICAgIC0weDEuZmZmZmZmZmZmZmQzYWU1OTRlOWJkYTliNmIzYTkxNjhwMTAyMywKKyAgICAtMHgxLjYzM2NlOGZiOWY4N2RwOQorICB9LAorICB7IC8vIEVudHJ5IDc1NworICAgIEhVR0VfVkFMLAorICAgIDB4MS42MzNjZThmYjlmODdlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTgKKyAgICAtSFVHRV9WQUwsCisgICAgLTB4MS42MzNjZThmYjlmODdlcDkKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9zaW5oZl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvc2luaGZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMwYWZjMWUKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvc2luaGZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMjQ5NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGZsb2F0LCBmbG9hdD4gZ19zaW5oZl9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIC0weDEuMDAwMDAwMDAwMDBhYWFhYWFhYWFhYWNjY2NjY2NjY2NwLTIxLAorICAgIC0weDEucC0yMQorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuMDAwMDAwMDAwMDBhYWFhYWFhYWFhYWNjY2NjY2NjY2NwLTIxLAorICAgIDB4MS5wLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIC0weDEuMTc3MGMwZmZmZWUzMWRiN2EzMTY2NGRlNDAxYTU3Y2RwLTEsCisgICAgLTB4MS4wYjI2ZWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLjE3NzBjMGZmZmVlMzFkYjdhMzE2NjRkZTQwMWE1N2NkcC0xLAorICAgIDB4MS4wYjI2ZWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgLTB4MS4yMDRmZDAwMDAwMDAwMDAwMDAwZjNjYTNlODFjMDNhZnAtMzcsCisgICAgLTB4MS4yMDRmZDBwLTM3CisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS4yMDRmZDAwMDAwMDAwMDAwMDAwZjNjYTNlODFjMDNhZnAtMzcsCisgICAgMHgxLjIwNGZkMHAtMzcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgLTB4MS40MzUxMDA1NWYzODMzNTFiYTllYzRjZGY1YjFiMWZhNXAtMTIsCisgICAgLTB4MS40MzUxcC0xMgorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuNDM1MTAwNTVmMzgzMzUxYmE5ZWM0Y2RmNWIxYjFmYTVwLTEyLAorICAgIDB4MS40MzUxcC0xMgorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAtMHgxLjRmMWZlNmZmZmQwNTU0MDNhMGFmYTVmNjFmN2FkNDU2cDEyMiwKKyAgICAtMHgxLjU2MWIxMHA2CisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS40ZjFmZTZmZmZkMDU1NDAzYTBhZmE1ZjYxZjdhZDQ1NnAxMjIsCisgICAgMHgxLjU2MWIxMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAtMHgxLjc2MzM5ZDA0OGM0MTAxMGRiOTUzMTFiZjM4ODI0ZjdmcC0yLAorICAgIC0weDEuNmU1NjRlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuNzYzMzlkMDQ4YzQxMDEwZGI5NTMxMWJmMzg4MjRmN2ZwLTIsCisgICAgMHgxLjZlNTY0ZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgLTB4MS5hNjM5OWIwMDAzMWFlN2UyZDEwYzRkNWNhOGI4NWJiNnAtMiwKKyAgICAtMHgxLjliMTdkOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLmE2Mzk5YjAwMDMxYWU3ZTJkMTBjNGQ1Y2E4Yjg1YmI2cC0yLAorICAgIDB4MS45YjE3ZDhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIC0weDEuZWQ5YzZiMDQ1Y2Y4ODZhNzE5NTUzYjIzOWVjZWQzOWFwLTEsCisgICAgLTB4MS5iNjI0OTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5lZDljNmIwNDVjZjg4NmE3MTk1NTNiMjM5ZWNlZDM5YXAtMSwKKyAgICAweDEuYjYyNDkycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAtMHgxLmZmYjFiMmY4ZDg3MmFjOGNiMmM4YWU3ODA3Mzg3NGNlcC0xLAorICAgIC0weDEuYzMwYzA2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuZmZiMWIyZjhkODcyYWM4Y2IyYzhhZTc4MDczODc0Y2VwLTEsCisgICAgMHgxLmMzMGMwNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgLTB4MS40OTBlM2VmZmQxN2NjNWU1Y2ViYjcxNTBhNDU1MzBiMHA5LAorICAgIC0weDEuY2JhZTcwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS40OTBlM2VmZmQxN2NjNWU1Y2ViYjcxNTBhNDU1MzBiMHA5LAorICAgIDB4MS5jYmFlNzBwMgorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgLTB4MS5kMzczNTUwM2MzMTYwMWQ4YTIzMWU0Mjc2NGRjYTc2YnAtMTIsCisgICAgLTB4MS5kMzczNTRwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuZDM3MzU1MDNjMzE2MDFkOGEyMzFlNDI3NjRkY2E3NmJwLTEyLAorICAgIDB4MS5kMzczNTRwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAtMHgxLmQzNzUwMTAzYzVkZjg5MTQ2MTA0ODYyYmM4ZWI5NTExcC0xMiwKKyAgICAtMHgxLmQzNzVwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuZDM3NTAxMDNjNWRmODkxNDYxMDQ4NjJiYzhlYjk1MTFwLTEyLAorICAgIDB4MS5kMzc1cC0xMgorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgLTB4MS5kNGJjMDhmZTU0NTIyNDkyYTE4ZWQ3NjNmNTkwNWEzY3AtNiwKKyAgICAtMHgxLmQ0YWJhY3AtNgorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLmQ0YmMwOGZlNTQ1MjI0OTJhMThlZDc2M2Y1OTA1YTNjcC02LAorICAgIDB4MS5kNGFiYWNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIC0weDEuYjQ5NWQ4Zjk2YWQyNTA3YzM2ZTI4OGY0MmVkNjljNjVwNCwKKyAgICAtMHgxLmZmZmNwMQorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLmI0OTVkOGY5NmFkMjUwN2MzNmUyODhmNDJlZDY5YzY1cDQsCisgICAgMHgxLmZmZmNwMQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLjBhY2QwMGZlNjNiOTZjYTM1Nzg5NTc2MWFlNjYyMjRhcC0xLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIC0weDEuMGFjZDAwZmU2M2I5NmNhMzU3ODk1NzYxYWU2NjIyNGFwLTEsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS4wMDAwMDAwMDAwMGFhYWFhYWFhYWFhY2NjY2NjY2NjY3AtMjEsCisgICAgMHgxLnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIC0weDEuMDAwMDAwMDAwMDBhYWFhYWFhYWFhYWNjY2NjY2NjY2NwLTIxLAorICAgIC0weDEucC0yMQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuMDAwMDAyMDAwMDAwMDAwMDAwMDAwYWFhYWFlYWFhYWJwLTQxLAorICAgIDB4MS4wMDAwMDJwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAtMHgxLjAwMDAwMjAwMDAwMDAwMDAwMDAwMGFhYWFhZWFhYWFicC00MSwKKyAgICAtMHgxLjAwMDAwMnAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS4wMGFhZTUwMDFkMzViMmNjOWYxYmY1MDI0YWFkM2ZjN3AtMywKKyAgICAweDEuMDAwMDE4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAtMHgxLjAwYWFlNTAwMWQzNWIyY2M5ZjFiZjUwMjRhYWQzZmM3cC0zLAorICAgIC0weDEuMDAwMDE4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMmNkYzRjZDEzZGJhYWVhOTcxY2Y0YzZkZjhkMDJkYjFwMCwKKyAgICAweDEuMDAwMTgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIC0weDEuMmNkYzRjZDEzZGJhYWVhOTcxY2Y0YzZkZjhkMDJkYjFwMCwKKyAgICAtMHgxLjAwMDE4MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuMDAwMjIwMDAwMDAwMDAwMDAwMDAyYWFiYmFhY2VjYWNwLTQwLAorICAgIDB4MS4wMDAyMjBwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAtMHgxLjAwMDIyMDAwMDAwMDAwMDAwMDAwMmFhYmJhYWNlY2FjcC00MCwKKyAgICAtMHgxLjAwMDIyMHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS43NWI2ODRmYmIyMWUzZmFkZmQ3Njk0OGE3NGZmNjE5Y3AxMCwKKyAgICAweDEuMDAxOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAtMHgxLjc1YjY4NGZiYjIxZTNmYWRmZDc2OTQ4YTc0ZmY2MTljcDEwLAorICAgIC0weDEuMDAxOHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuMGFmMTE3MDZkYzkzNWU2YjhkOTg4OWZmZDlkN2Y5ZWVwLTEsCisgICAgMHgxLjAwMjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIC0weDEuMGFmMTE3MDZkYzkzNWU2YjhkOTg4OWZmZDlkN2Y5ZWVwLTEsCisgICAgLTB4MS4wMDIwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuMmRlNTM1MDAxMTJiNDhiNTQ0MTZmZDNhYzBmZDVkMzVwMCwKKyAgICAweDEuMDBhZHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAtMHgxLjJkZTUzNTAwMTEyYjQ4YjU0NDE2ZmQzYWMwZmQ1ZDM1cDAsCisgICAgLTB4MS4wMGFkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS5kMzExNTkwMDk0YjcxNjkyNTcyMjJmMjkxNTljNTI3NHAxLAorICAgIDB4MS4wMGMwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIC0weDEuZDMxMTU5MDA5NGI3MTY5MjU3MjIyZjI5MTU5YzUyNzRwMSwKKyAgICAtMHgxLjAwYzBwMQorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLmJiOGJlMGY5MjhmYTQ4MmQyNjRhZWM4MDkwMzBjYjk4cDQsCisgICAgMHgxLjAxMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTB4MS5iYjhiZTBmOTI4ZmE0ODJkMjY0YWVjODA5MDMwY2I5OHA0LAorICAgIC0weDEuMDEwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuZDY1MDljZmZmMWI4ODdjZDUwZDNjN2IzM2E0OTBhZjVwMSwKKyAgICAweDEuMDE5YnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLmQ2NTA5Y2ZmZjFiODg3Y2Q1MGQzYzdiMzNhNDkwYWY1cDEsCisgICAgLTB4MS4wMTlicDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS5kOTllZjEwMWRmMjNjMTNkZTUzNjhlNTVlYmI0Yzk1MnA0NSwKKyAgICAweDEuMDRwNQorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgLTB4MS5kOTllZjEwMWRmMjNjMTNkZTUzNjhlNTVlYmI0Yzk1MnA0NSwKKyAgICAtMHgxLjA0cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIDB4MS5iNjFlNWNhM2E1ZTMwYjJmMGEwM2YyOTJmOWNlMDA4NHA5MiwKKyAgICAweDEuMDRwNgorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgLTB4MS5iNjFlNWNhM2E1ZTMwYjJmMGEwM2YyOTJmOWNlMDA4NHA5MiwKKyAgICAtMHgxLjA0cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIDB4MS4wZjUzYzUwMGRhYjMxMTVlYzgzZDBhODdmMzg5ZWZhNXAtMSwKKyAgICAweDEuMDQwMWMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAtMHgxLjBmNTNjNTAwZGFiMzExNWVjODNkMGE4N2YzODllZmE1cC0xLAorICAgIC0weDEuMDQwMWMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuMDdhNDNkNzgwY2QwMmFhMzI2OTk3NDMwY2I3MmVjNmVwLTIsCisgICAgMHgxLjA0ZDBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuMDdhNDNkNzgwY2QwMmFhMzI2OTk3NDMwY2I3MmVjNmVwLTIsCisgICAgLTB4MS4wNGQwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEuMDcwYjkxMDAwNTg1ZTkyZWNlYmE3ZjFkMTA2ODY3ODNwLTUsCisgICAgMHgxLjA3cC01CisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLjA3MGI5MTAwMDU4NWU5MmVjZWJhN2YxZDEwNjg2NzgzcC01LAorICAgIC0weDEuMDdwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS4wYWVmMmRmYTZmMDlhZjc1OGNmYWMzZWM3YmJlNjU4MHAtMiwKKyAgICAweDEuMDhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuMGFlZjJkZmE2ZjA5YWY3NThjZmFjM2VjN2JiZTY1ODBwLTIsCisgICAgLTB4MS4wOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgMHgxLjBhYjhjMTAzZDIxMGVjYzk5OWRlYTJmYjFlNjAxZGZmcC03LAorICAgIDB4MS4wYWI4cC03CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLjBhYjhjMTAzZDIxMGVjYzk5OWRlYTJmYjFlNjAxZGZmcC03LAorICAgIC0weDEuMGFiOHAtNworICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS4wYmQ4MjJwODUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS4wYmQ4MjJwODUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS4xYjBiZDlmZmY0MzRmYTk5ZWI5MzRmMTJjZmNkZTQwZHAtMSwKKyAgICAweDEuMGU1MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS4xYjBiZDlmZmY0MzRmYTk5ZWI5MzRmMTJjZmNkZTQwZHAtMSwKKyAgICAtMHgxLjBlNTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS4xM2EwZDUwMGQyZjhlODRlMjljZjdlMGI0NzU5M2Q2YnAtNywKKyAgICAweDEuMTNhMHAtNworICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS4xM2EwZDUwMGQyZjhlODRlMjljZjdlMGI0NzU5M2Q2YnAtNywKKyAgICAtMHgxLjEzYTBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS4xNDYzNWFmZjA3OTI4ZjZiODJiNmVmZDA0NmQ4NTYxMXAtNiwKKyAgICAweDEuMTQ2MHAtNgorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS4xNDYzNWFmZjA3OTI4ZjZiODJiNmVmZDA0NmQ4NTYxMXAtNiwKKyAgICAtMHgxLjE0NjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS4xODM3ZDcwMTljMjlhYzQyNjFkODNkYmRkOTU0MDc3MHAtNCwKKyAgICAweDEuMThwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEuMTgzN2Q3MDE5YzI5YWM0MjYxZDgzZGJkZDk1NDA3NzBwLTQsCisgICAgLTB4MS4xOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLjFlOWE2NmZmZmY2Nzg4OGUyMjI2YWRjOTc5MjQyMDUwcC0yLAorICAgIDB4MS4xYWZjYzBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEuMWU5YTY2ZmZmZjY3ODg4ZTIyMjZhZGM5NzkyNDIwNTBwLTIsCisgICAgLTB4MS4xYWZjYzBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIDB4MS41ODUxYjU4MWFiNTc3NGI2YmMyMmZlODA0YTYwOTk3NHAwLAorICAgIDB4MS4xYjA4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuNTg1MWI1ODFhYjU3NzRiNmJjMjJmZTgwNGE2MDk5NzRwMCwKKyAgICAtMHgxLjFiMDhwMAorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLjFmYzA5NDk2YjY1NWFiNWY1NzFhMTRmYzUzODc0MGYzcC0yLAorICAgIDB4MS4xYzE4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLjFmYzA5NDk2YjY1NWFiNWY1NzFhMTRmYzUzODc0MGYzcC0yLAorICAgIC0weDEuMWMxOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLjFjNGZhNmZmZmUyMzA4ZDYwNTk4MTZjMjhjYTY4YjkzcC02LAorICAgIDB4MS4xYzRjcC02CisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLjFjNGZhNmZmZmUyMzA4ZDYwNTk4MTZjMjhjYTY4YjkzcC02LAorICAgIC0weDEuMWM0Y3AtNgorICB9LAorICB7IC8vIEVudHJ5IDg2CisgICAgMHgxLjFlZjBmMDUyNDVkNTY0ZWI2MjFiYzM1ODBlODEwZWNicC03LAorICAgIDB4MS4xZWYwcC03CisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAtMHgxLjFlZjBmMDUyNDVkNTY0ZWI2MjFiYzM1ODBlODEwZWNicC03LAorICAgIC0weDEuMWVmMHAtNworICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLjVlZjU5ZjRmYjg0NTQ4NThjNzBjY2UwYjc2ZjBkMWMxcDAsCisgICAgMHgxLjFlZjhwMAorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS41ZWY1OWY0ZmI4NDU0ODU4YzcwY2NlMGI3NmYwZDFjMXAwLAorICAgIC0weDEuMWVmOHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuNzkyMmQyZjZhNjIwY2MxNzYxOTZlZTYxOWUzOGNlZGVwMCwKKyAgICAweDEuMmUwNzNhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIC0weDEuNzkyMmQyZjZhNjIwY2MxNzYxOTZlZTYxOWUzOGNlZGVwMCwKKyAgICAtMHgxLjJlMDczYXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuNDNiMzgxZmZmNzdjMGVmYmFjN2VlODlmZmZiODNkYjNwLTEsCisgICAgMHgxLjMxNDk3ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgLTB4MS40M2IzODFmZmY3N2MwZWZiYWM3ZWU4OWZmZmI4M2RiM3AtMSwKKyAgICAtMHgxLjMxNDk3ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLjMyYjQzMjAwMDAwMjJiZTI2OWE3ZTA4NDRlOGZiNDI3cC0zLAorICAgIDB4MS4zMTkxYTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIC0weDEuMzJiNDMyMDAwMDAyMmJlMjY5YTdlMDg0NGU4ZmI0MjdwLTMsCisgICAgLTB4MS4zMTkxYTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS44MWUyYjBmODY1ZjdkNjg5NjA5MDhkZWE4ZGJmZjY1MnAwLAorICAgIDB4MS4zMmU3NGNwMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgLTB4MS44MWUyYjBmODY1ZjdkNjg5NjA5MDhkZWE4ZGJmZjY1MnAwLAorICAgIC0weDEuMzJlNzRjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS42ODRmOTMwMDA0OTk5Njk2M2UyNzU1M2I1MjVkNzg1Y3AyLAorICAgIDB4MS4zNmVhNWNwMQorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLTB4MS42ODRmOTMwMDA0OTk5Njk2M2UyNzU1M2I1MjVkNzg1Y3AyLAorICAgIC0weDEuMzZlYTVjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuM2U4YzVhNTIzNDRjNWZjMDVkZTdjZjM5M2ZkODBiYWNwLTEyLAorICAgIDB4MS4zZThjNWFwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS4zZThjNWE1MjM0NGM1ZmMwNWRlN2NmMzkzZmQ4MGJhY3AtMTIsCisgICAgLTB4MS4zZThjNWFwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLjNlYmMwMDUyNTkzNTRmMzdlY2ZhYmFmYWIxNjQ0MzlkcC0xMiwKKyAgICAweDEuM2ViY3AtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAtMHgxLjNlYmMwMDUyNTkzNTRmMzdlY2ZhYmFmYWIxNjQ0MzlkcC0xMiwKKyAgICAtMHgxLjNlYmNwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLjNlYzY2ZTUyNjE0YjBiNDVkMzRmNTQ1OGJkMmI2ZDRhcC0xMiwKKyAgICAweDEuM2VjNjZlcC0xMgorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIC0weDEuM2VjNjZlNTI2MTRiMGI0NWQzNGY1NDU4YmQyYjZkNGFwLTEyLAorICAgIC0weDEuM2VjNjZlcC0xMgorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS45YTg1NmQwMDQzNjQyODc1NDc4NGY4MzhhYTUzZGNkZXAwLAorICAgIDB4MS40MDNhNDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIC0weDEuOWE4NTZkMDA0MzY0Mjg3NTQ3ODRmODM4YWE1M2RjZGVwMCwKKyAgICAtMHgxLjQwM2E0MnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLjQ2NzQ2OTAwMDNiNWMzM2U3ZmQwOWE2YmZmYWNhYzAycC0yLAorICAgIDB4MS40MTI5ZDZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAtMHgxLjQ2NzQ2OTAwMDNiNWMzM2U3ZmQwOWE2YmZmYWNhYzAycC0yLAorICAgIC0weDEuNDEyOWQ2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLjQ0MjU1NjU2OWQ0YTgxZTJkOTlmMzE2Y2Q3MDQ5ODhicC0xMiwKKyAgICAweDEuNDQyNTU2cC0xMgorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIC0weDEuNDQyNTU2NTY5ZDRhODFlMmQ5OWYzMTZjZDcwNDk4OGJwLTEyLAorICAgIC0weDEuNDQyNTU2cC0xMgorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS5mODk3ZjA3ZTUwNzYwZTUyMTNmNjEyMTk0MGNlNzI3N3AxMTUsCisgICAgMHgxLjQ0NTVhOHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgLTB4MS5mODk3ZjA3ZTUwNzYwZTUyMTNmNjEyMTk0MGNlNzI3N3AxMTUsCisgICAgLTB4MS40NDU1YThwNgorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS5mN2M2MDFjMjZhMGFhYjA3YWNiM2FlZDEyOTUyOTg2MHAxMTYsCisgICAgMHgxLjQ3MTljNnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS5mN2M2MDFjMjZhMGFhYjA3YWNiM2FlZDEyOTUyOTg2MHAxMTYsCisgICAgLTB4MS40NzE5YzZwNgorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS44ZmQxNDJmZmZiZjA3YmNkOWM2NjA3YjAyZmM1NWI3NHAxMTcsCisgICAgMHgxLjQ4ZjJlNHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgLTB4MS44ZmQxNDJmZmZiZjA3YmNkOWM2NjA3YjAyZmM1NWI3NHAxMTcsCisgICAgLTB4MS40OGYyZTRwNgorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS41NGUyYzUwMDA4YjczZDhlNGQ3ZWQ2Y2E0YzE1NWRiY3AtMywKKyAgICAweDEuNTM1NGMycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgLTB4MS41NGUyYzUwMDA4YjczZDhlNGQ3ZWQ2Y2E0YzE1NWRiY3AtMywKKyAgICAtMHgxLjUzNTRjMnAtMworICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS43ZmY3ZjY5MzI0NDVkMmUzMWYxYjdjMjBkN2M3ZDg3NXAxMjUsCisgICAgMHgxLjVlZjdiY3A2CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgLTB4MS43ZmY3ZjY5MzI0NDVkMmUzMWYxYjdjMjBkN2M3ZDg3NXAxMjUsCisgICAgLTB4MS41ZWY3YmNwNgorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5mMTM0MDg3OTQxNzFkOThlMTRmOTUyNDVhMzQwYWIwNnAxMjUsCisgICAgMHgxLjYwMDA2MHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgLTB4MS5mMTM0MDg3OTQxNzFkOThlMTRmOTUyNDVhMzQwYWIwNnAxMjUsCisgICAgLTB4MS42MDAwNjBwNgorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5mOTE2NDY3MzQ5YjA1OGI5YzM4OTA2OTExYjg1NjA1NnAxMjUsCisgICAgMHgxLjYwMTA3Y3A2CisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgLTB4MS5mOTE2NDY3MzQ5YjA1OGI5YzM4OTA2OTExYjg1NjA1NnAxMjUsCisgICAgLTB4MS42MDEwN2NwNgorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS42OTE4NDEwMDAwYzVhZTU2NTY4ODJlN2NlYTY0ZjI1YnAtMiwKKyAgICAweDEuNjIwMDU0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgLTB4MS42OTE4NDEwMDAwYzVhZTU2NTY4ODJlN2NlYTY0ZjI1YnAtMiwKKyAgICAtMHgxLjYyMDA1NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS4wMDIxMDYzODM2YjQ5ZGNjODllNGM1YWFiNWU5MTFkMXAxMjcsCisgICAgMHgxLjYyZTRiNHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgLTB4MS4wMDIxMDYzODM2YjQ5ZGNjODllNGM1YWFiNWU5MTFkMXAxMjcsCisgICAgLTB4MS42MmU0YjRwNgorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5mNDBhMmM2YzdlNGVlYzRjMGVkMWZhZTMyZDI1NWUyM3AxMjcsCisgICAgMHgxLjY1OTFjNHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgLTB4MS5mNDBhMmM2YzdlNGVlYzRjMGVkMWZhZTMyZDI1NWUyM3AxMjcsCisgICAgLTB4MS42NTkxYzRwNgorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS5mZjA3MTRkNDRmYzg3MWZmMGMwODYwOTZmMWJmMGFlMHAxMjcsCisgICAgMHgxLjY1YTgwNnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgLTB4MS5mZjA3MTRkNDRmYzg3MWZmMGMwODYwOTZmMWJmMGFlMHAxMjcsCisgICAgLTB4MS42NWE4MDZwNgorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS5mZjcwZWM0MDBiOWMyZDhkZWU4NzhlMzBiNTYzMzliZXAxMjcsCisgICAgMHgxLjY1YThkYXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS5mZjcwZWM0MDBiOWMyZDhkZWU4NzhlMzBiNTYzMzliZXAxMjcsCisgICAgLTB4MS42NWE4ZGFwNgorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIDB4MS5mZmYyZDg2OWQwN2QxMWQ2YzY0ZDg5NmYxMTdmMDA5NHAxMjcsCisgICAgMHgxLjY1YTlkZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS5mZmYyZDg2OWQwN2QxMWQ2YzY0ZDg5NmYxMTdmMDA5NHAxMjcsCisgICAgLTB4MS42NWE5ZGVwNgorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS42ZTQ0NDEwM2JjODk0NTMxMTM1OGRkZTdhNjZiZGIzOHAtMiwKKyAgICAweDEuNjZkZmZhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgLTB4MS42ZTQ0NDEwM2JjODk0NTMxMTM1OGRkZTdhNjZiZGIzOHAtMiwKKyAgICAtMHgxLjY2ZGZmYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS42N2NmMDEwMDAwNTJjYjhjMDdmY2JlNmNiNjhkY2MzZHAtNiwKKyAgICAweDEuNjdjNzlhcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS42N2NmMDEwMDAwNTJjYjhjMDdmY2JlNmNiNjhkY2MzZHAtNiwKKyAgICAtMHgxLjY3Yzc5YXAtNgorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS43ODAwODUyZmI3MTczZjNjMzAwY2FjYTY3MDhmMGQ2ZnAtOCwKKyAgICAweDEuNzdmZmZlcC04CisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS43ODAwODUyZmI3MTczZjNjMzAwY2FjYTY3MDhmMGQ2ZnAtOCwKKyAgICAtMHgxLjc3ZmZmZXAtOAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS44MDAwMDkwMDAwMTAzMzMzNDExNWYxNjYwNzUwNzc0Y3AtMTAsCisgICAgMHgxLjgwcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIC0weDEuODAwMDA5MDAwMDEwMzMzMzQxMTVmMTY2MDc1MDc3NGNwLTEwLAorICAgIC0weDEuODBwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgMHgxLjVkZjkxY2ZmOWFjZTI2ZGY1NzJkNTI4YThkN2U0ZDk5cDE2LAorICAgIDB4MS44MzEzZWFwMworICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEuNWRmOTFjZmY5YWNlMjZkZjU3MmQ1MjhhOGQ3ZTRkOTlwMTYsCisgICAgLTB4MS44MzEzZWFwMworICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS4xNmMzNzBmYzQwYTBlZjMxODBmOGE2MWM4YjI1MTU3Y3AxLAorICAgIDB4MS44NTNjNTZwMAorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0weDEuMTZjMzcwZmM0MGEwZWYzMTgwZjhhNjFjOGIyNTE1N2NwMSwKKyAgICAtMHgxLjg1M2M1NnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLjg4MDAwMDk5MzA1NTY3NGFlOThhOWE0NGFhNjI0NTA5cC0xMiwKKyAgICAweDEuODhwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS44ODAwMDA5OTMwNTU2NzRhZTk4YTlhNDRhYTYyNDUwOXAtMTIsCisgICAgLTB4MS44OHAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAweDEuZGFiNzdkMDNkOWNlZWE0ODM4N2M3YTNlNWViZGU2MTJwMTYsCisgICAgMHgxLjhjZDU1OHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS5kYWI3N2QwM2Q5Y2VlYTQ4Mzg3YzdhM2U1ZWJkZTYxMnAxNiwKKyAgICAtMHgxLjhjZDU1OHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLmIzNmJlNGY2MDZkMGNkNDM3NzhmMGI1NmQ2Yzc4YzY5cDMsCisgICAgMHgxLmE3MGNhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS5iMzZiZTRmNjA2ZDBjZDQzNzc4ZjBiNTZkNmM3OGM2OXAzLAorICAgIC0weDEuYTcwY2E0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuOWZjNzY4ZjYzZTIxOTlkNDE2MWFkNTJjNDJjNDM5OTNwOCwKKyAgICAweDEuYWU0YTk2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLjlmYzc2OGY2M2UyMTk5ZDQxNjFhZDUyYzQyYzQzOTkzcDgsCisgICAgLTB4MS5hZTRhOTZwMgorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS5mZGRjYjUwMjhmM2M1ZjJmOTA1N2IyNzVmZGE5NjNiNXAtMSwKKyAgICAweDEuYzFjMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZmRkY2I1MDI4ZjNjNWYyZjkwNTdiMjc1ZmRhOTYzYjVwLTEsCisgICAgLTB4MS5jMWMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLmM5ZDc4MzE3YWFlNTg4NjFiZmEwMTc0N2UwNWFhYTIxcC0zLAorICAgIDB4MS5jNjFjOGVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAtMHgxLmM5ZDc4MzE3YWFlNTg4NjFiZmEwMTc0N2UwNWFhYTIxcC0zLAorICAgIC0weDEuYzYxYzhlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLjE3ZDQ2ZDAwZTdhYTJiZDMxMWM5ZDA2ZmFmMzFjZDBmcDQsCisgICAgMHgxLmM3MWM3OHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS4xN2Q0NmQwMGU3YWEyYmQzMTFjOWQwNmZhZjMxY2QwZnA0LAorICAgIC0weDEuYzcxYzc4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEuZDAwZmRlZmVkYmRjODZkODJlMzRhMTcyNmNlNmZkNWVwLTYsCisgICAgMHgxLmNmZmZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuZDAwZmRlZmVkYmRjODZkODJlMzRhMTcyNmNlNmZkNWVwLTYsCisgICAgLTB4MS5jZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuZDEyZjExMDAwMDY4YjI5ZjEzOTBmNzYwMTlkMTkxZTlwLTEyLAorICAgIDB4MS5kMTJmMTBwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTB4MS5kMTJmMTEwMDAwNjhiMjlmMTM5MGY3NjAxOWQxOTFlOXAtMTIsCisgICAgLTB4MS5kMTJmMTBwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLmUxNjE0MzAwMDNmNjM1ZWZhNDZjMWI5M2I0MGQxMjRhcC0yLAorICAgIDB4MS5kMTM2MDhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLmUxNjE0MzAwMDNmNjM1ZWZhNDZjMWI5M2I0MGQxMjRhcC0yLAorICAgIC0weDEuZDEzNjA4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLmU1MThmMTAwMTZkNDIzMzUzOWE2YTg2YjQ2ZGUzMDVkcDksCisgICAgMHgxLmU0ODU3MHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS5lNTE4ZjEwMDE2ZDQyMzM1MzlhNmE4NmI0NmRlMzA1ZHA5LAorICAgIC0weDEuZTQ4NTcwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAweDEuZjg4MmY4ZmZmZjhjMmM5NzA1MmZmZjc3YjBmZTA1Y2FwLTIsCisgICAgMHgxLmU2MGRhNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEuZjg4MmY4ZmZmZjhjMmM5NzA1MmZmZjc3YjBmZTA1Y2FwLTIsCisgICAgLTB4MS5lNjBkYTZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuYTY1NjVhZjY2Y2MwMDM2N2NkNGI0NGFjZWY4ZmUzYjRwMSwKKyAgICAweDEuZThiY2UwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAtMHgxLmE2NTY1YWY2NmNjMDAzNjdjZDRiNDRhY2VmOGZlM2I0cDEsCisgICAgLTB4MS5lOGJjZTBwMAorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS5lZTJmYTVmZmZmZmZkNDc4YTEwOTIxNzA1OWRkYjNhOXAtNCwKKyAgICAweDEuZWNmZWI2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS5lZTJmYTVmZmZmZmZkNDc4YTEwOTIxNzA1OWRkYjNhOXAtNCwKKyAgICAtMHgxLmVjZmViNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS5iNTRmNzRmNjViYWIxMjgzMGY5NTlhM2UyZDdlMWM2MXAxLAorICAgIDB4MS5mMTQ5MTBwMAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuYjU0Zjc0ZjY1YmFiMTI4MzBmOTU5YTNlMmQ3ZTFjNjFwMSwKKyAgICAtMHgxLmYxNDkxMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLmI1NmE5NmY2ZmJiYjgwNDVhZjYyYjA3ZDVkNTZiNjU2cDEsCisgICAgMHgxLmYxNTg0ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgLTB4MS5iNTZhOTZmNmZiYmI4MDQ1YWY2MmIwN2Q1ZDU2YjY1NnAxLAorICAgIC0weDEuZjE1ODRlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuZjZlNDJlMDAwMDQ3NjIzZWMyYTgzYTQ2MWU5OGRlYzdwLTMsCisgICAgMHgxLmYxZjg1MnAtMworICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIC0weDEuZjZlNDJlMDAwMDQ3NjIzZWMyYTgzYTQ2MWU5OGRlYzdwLTMsCisgICAgLTB4MS5mMWY4NTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuZjZlYzE0NThmYjM0ODdhYWM0YmZlZWM0YjY4MTI2NzBwLTMsCisgICAgMHgxLmYxZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0weDEuZjZlYzE0NThmYjM0ODdhYWM0YmZlZWM0YjY4MTI2NzBwLTMsCisgICAgLTB4MS5mMWZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuZjJmZGE2ZmRmYTk4YTM1YjY2ZTUxMDRmZGFjZDJiZDVwLTksCisgICAgMHgxLmYyZmQ1OHAtOQorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuZjJmZGE2ZmRmYTk4YTM1YjY2ZTUxMDRmZGFjZDJiZDVwLTksCisgICAgLTB4MS5mMmZkNThwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuZjg1MjFkZmZmZmNkNDE0NjJiMGQ3MzU2OWIxZDM4MTlwLTMsCisgICAgMHgxLmYzNWJhY3AtMworICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuZjg1MjFkZmZmZmNkNDE0NjJiMGQ3MzU2OWIxZDM4MTlwLTMsCisgICAgLTB4MS5mMzViYWNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuZjRkZGE4ZmUyZWMzMDNmYzdmNzU2ODQ3NTU0NTEzOWNwLTExLAorICAgIDB4MS5mNGRkYTRwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMTkxCisgICAgLTB4MS5mNGRkYThmZTJlYzMwM2ZjN2Y3NTY4NDc1NTQ1MTM5Y3AtMTEsCisgICAgLTB4MS5mNGRkYTRwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLmY1MWE3ZDAwMDBhYzUwYWQ1NDAyYzk0OWJhODJlOGEzcC0xMSwKKyAgICAweDEuZjUxYTc4cC0xMQorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEuZjUxYTdkMDAwMGFjNTBhZDU0MDJjOTQ5YmE4MmU4YTNwLTExLAorICAgIC0weDEuZjUxYTc4cC0xMQorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIDB4MS5hNjY0ZGNlZDdjYjk4YzY4ZjJiOTczZDY1YzY3NmEzNXAyMSwKKyAgICAweDEuZjdmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMHgxLmE2NjRkY2VkN2NiOThjNjhmMmI5NzNkNjVjNjc2YTM1cDIxLAorICAgIC0weDEuZjdmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuZjliNjU4ZmZmZjNjZTM5OTY1ZTFiMjkxYWJjOWVmYjhwLTQsCisgICAgMHgxLmY4NmZhY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuZjliNjU4ZmZmZjNjZTM5OTY1ZTFiMjkxYWJjOWVmYjhwLTQsCisgICAgLTB4MS5mODZmYWNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAweDEuMjhjM2ZiMDAxNmJlNGZkODAyZTgzYzliZTBkOWNhZDFwMCwKKyAgICAweDEuZmFhZWU4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS4yOGMzZmIwMDE2YmU0ZmQ4MDJlODNjOWJlMGQ5Y2FkMXAwLAorICAgIC0weDEuZmFhZWU4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLjI5YjE1MzAwMDAwMDRhMzcyMmFlMTExN2MyNzg3MTUycDAsCisgICAgMHgxLmZiZTRiMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuMjliMTUzMDAwMDAwNGEzNzIyYWUxMTE3YzI3ODcxNTJwMCwKKyAgICAtMHgxLmZiZTRiMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDB4MS5mYzE0ZDQ5NjEwMzlkYzg1N2M3OTZmNTZiMzRhZjNiM3AtNiwKKyAgICAweDEuZmJmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgLTB4MS5mYzE0ZDQ5NjEwMzlkYzg1N2M3OTZmNTZiMzRhZjNiM3AtNiwKKyAgICAtMHgxLmZiZmZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS5mYzRkN2ZkMmQ4ZTcwZWNiNjZlMDI4MTM3ZGE4YmE5ZHAtNywKKyAgICAweDEuZmM0ODQ4cC03CisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgLTB4MS5mYzRkN2ZkMmQ4ZTcwZWNiNjZlMDI4MTM3ZGE4YmE5ZHAtNywKKyAgICAtMHgxLmZjNDg0OHAtNworICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS5mY2U2MTNjYWEwNDY5ZTY4YzcyMGM3Njk2Y2YzNWMzZHAtOSwKKyAgICAweDEuZmNlNWMwcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjA3CisgICAgLTB4MS5mY2U2MTNjYWEwNDY5ZTY4YzcyMGM3Njk2Y2YzNWMzZHAtOSwKKyAgICAtMHgxLmZjZTVjMHAtOQorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIDB4MS5mZGY1MGZlMDE5NDMzMGNmY2VjYjI5MzViMDlkMDlhM3AtNiwKKyAgICAweDEuZmRkZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgLTB4MS5mZGY1MGZlMDE5NDMzMGNmY2VjYjI5MzViMDlkMDlhM3AtNiwKKyAgICAtMHgxLmZkZGZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS5mZjkyMTk4MjcyMjk5ZTlkZDVhNDMxNTM3Mjk0N2JiN3AtNCwKKyAgICAweDEuZmUzZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS5mZjkyMTk4MjcyMjk5ZTlkZDVhNDMxNTM3Mjk0N2JiN3AtNCwKKyAgICAtMHgxLmZlM2ZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDIxMgorICAgIDB4MS5mZWQ0OTgxOGE4NmM5ZTVkMzU3MzQ4Y2M4NjU1MmVjZnAtNSwKKyAgICAweDEuZmU3ZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgLTB4MS5mZWQ0OTgxOGE4NmM5ZTVkMzU3MzQ4Y2M4NjU1MmVjZnAtNSwKKyAgICAtMHgxLmZlN2ZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIDB4MS4zZDU5ZDJkOGIyMmI0MWMyYmI2MzM0YzliZTdiZTkwMnA5MSwKKyAgICAweDEuZmZkZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLjNkNTlkMmQ4YjIyYjQxYzJiYjYzMzRjOWJlN2JlOTAycDkxLAorICAgIC0weDEuZmZkZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTYKKyAgICAweDEuZmZmNzdmNTU0NDUxZTFmNThiMmQ1ZTFlY2M0MDdhNjZwLTEyLAorICAgIDB4MS5mZmY3N2VwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS5mZmY3N2Y1NTQ0NTFlMWY1OGIyZDVlMWVjYzQwN2E2NnAtMTIsCisgICAgLTB4MS5mZmY3N2VwLTEyCisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgMHgxLjc0NzRjMmY5MTQ0ZjAwM2FjZDY2ZTYwZDU4NjQzZjA3cDEwLAorICAgIDB4MS5mZmY4Y2VwMgorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIC0weDEuNzQ3NGMyZjkxNDRmMDAzYWNkNjZlNjBkNTg2NDNmMDdwMTAsCisgICAgLTB4MS5mZmY4Y2VwMgorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS5iNDk1ZDhmOTZhZDI1MDdjMzZlMjg4ZjQyZWQ2OWM2NXA0LAorICAgIDB4MS5mZmZjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLmI0OTVkOGY5NmFkMjUwN2MzNmUyODhmNDJlZDY5YzY1cDQsCisgICAgLTB4MS5mZmZjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEuMmNkNzQ3NmVkZTBhYWMyYzNiZTRkODFlZmMxZmFlMmJwMCwKKyAgICAweDEuZmZmYzdlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgLTB4MS4yY2Q3NDc2ZWRlMGFhYzJjM2JlNGQ4MWVmYzFmYWUyYnAwLAorICAgIC0weDEuZmZmYzdlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMHgxLmQwM2E5MGZmZmZhNzJhZmZhMzBhYWUyMTI2NDEwZmQzcDEsCisgICAgMHgxLmZmZmViYXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgLTB4MS5kMDNhOTBmZmZmYTcyYWZmYTMwYWFlMjEyNjQxMGZkM3AxLAorICAgIC0weDEuZmZmZWJhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAweDEuYjRhMGU5ZmY3Njc4NmJmNmVjMmVhNGY1M2E0MmExMThwNCwKKyAgICAweDEuZmZmZjNlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMHgxLmI0YTBlOWZmNzY3ODZiZjZlYzJlYTRmNTNhNDJhMTE4cDQsCisgICAgLTB4MS5mZmZmM2VwMQorICB9LAorICB7IC8vIEVudHJ5IDIyOAorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjkKKyAgICAweDEuMjRkMWZlOGNmYWQ3Zjk4ZmNkYmVhNTg4MmFmOGUzMmRwLTQsCisgICAgMHgxLjI0OTI0YXAtNAorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIC0weDEuMjRkMWZlOGNmYWQ3Zjk4ZmNkYmVhNTg4MmFmOGUzMmRwLTQsCisgICAgLTB4MS4yNDkyNGFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAweDEuMjU5MTRlMjUwMDkyZTVjM2NkZGYyMDQwYWZkNzljNjVwLTMsCisgICAgMHgxLjI0OTI0YXAtMworICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIC0weDEuMjU5MTRlMjUwMDkyZTVjM2NkZGYyMDQwYWZkNzljNjVwLTMsCisgICAgLTB4MS4yNDkyNGFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuYmEzOTM3MzRjYTI1ZjZmNDE5N2NjNDE4NDRmZjZlN2RwLTMsCisgICAgMHgxLmI2ZGI3MHAtMworICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIC0weDEuYmEzOTM3MzRjYTI1ZjZmNDE5N2NjNDE4NDRmZjZlN2RwLTMsCisgICAgLTB4MS5iNmRiNzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEuMjg5MTdiMWE2N2M0MzllZjJhMjgzMzdlYmVmNmRjM2NwLTIsCisgICAgMHgxLjI0OTI0YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIC0weDEuMjg5MTdiMWE2N2M0MzllZjJhMjgzMzdlYmVmNmRjM2NwLTIsCisgICAgLTB4MS4yNDkyNGFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAweDEuNzU4OWRmODI5NTAzZmEyMGVkODc3NGMzMWU2YTMzMmNwLTIsCisgICAgMHgxLjZkYjZkY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIC0weDEuNzU4OWRmODI5NTAzZmEyMGVkODc3NGMzMWU2YTMzMmNwLTIsCisgICAgLTB4MS42ZGI2ZGNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEuYzQ2YTVjMWQzMmQ0ODYwYjgxMTU1YWVmODA4ZjdkMGZwLTIsCisgICAgMHgxLmI2ZGI2ZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIC0weDEuYzQ2YTVjMWQzMmQ0ODYwYjgxMTU1YWVmODA4ZjdkMGZwLTIsCisgICAgLTB4MS5iNmRiNmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDEKKyAgICAweDEuMGFjZDAwZmU2M2I5NmNhMzU3ODk1NzYxYWU2NjIyNGFwLTEsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIC0weDEuMGFjZDAwZmU2M2I5NmNhMzU3ODk1NzYxYWU2NjIyNGFwLTEsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDMKKyAgICAweDEuMGFjZDAwZmU2M2I5NmNhMzU3ODk1NzYxYWU2NjIyNGFwLTEsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIC0weDEuMGFjZDAwZmU2M2I5NmNhMzU3ODk1NzYxYWU2NjIyNGFwLTEsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAweDEuMzRjMTc0N2Y2MzVkZmMxNmMxZDg4ZTU5MTAyMzlmZThwLTEsCisgICAgMHgxLjI0OTI0YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIC0weDEuMzRjMTc0N2Y2MzVkZmMxNmMxZDg4ZTU5MTAyMzlmZThwLTEsCisgICAgLTB4MS4yNDkyNGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEuNjA0OTU5Y2I5ZGNhNjZhNmM2YjFkNTIyMTRiODg5MDFwLTEsCisgICAgMHgxLjQ5MjQ5NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIC0weDEuNjA0OTU5Y2I5ZGNhNjZhNmM2YjFkNTIyMTRiODg5MDFwLTEsCisgICAgLTB4MS40OTI0OTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAweDEuOGQ5ZDkyNjExOTM1ZWU4YmNjOWU5YzFiYmNiNGVjMGRwLTEsCisgICAgMHgxLjZkYjZkZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIC0weDEuOGQ5ZDkyNjExOTM1ZWU4YmNjOWU5YzFiYmNiNGVjMGRwLTEsCisgICAgLTB4MS42ZGI2ZGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTEKKyAgICAweDEuYmNmOTU5M2QyZWNjMTJlMzgzNmQxNWExMDY3YTc4OTZwLTEsCisgICAgMHgxLjkyNDkyOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIC0weDEuYmNmOTU5M2QyZWNjMTJlMzgzNmQxNWExMDY3YTc4OTZwLTEsCisgICAgLTB4MS45MjQ5MjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEuZWU5YTkwNDFiMmU3N2RjODY0NWIwN2NkMzViZjEzMzNwLTEsCisgICAgMHgxLmI2ZGI3MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIC0weDEuZWU5YTkwNDFiMmU3N2RjODY0NWIwN2NkMzViZjEzMzNwLTEsCisgICAgLTB4MS5iNmRiNzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAweDEuMTE2MTA4ODg5YWJkM2ZkNmRmOWE5MDlhZjViNGIzYWJwMCwKKyAgICAweDEuZGI2ZGJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU2CisgICAgLTB4MS4xMTYxMDg4ODlhYmQzZmQ2ZGY5YTkwOWFmNWI0YjNhYnAwLAorICAgIC0weDEuZGI2ZGJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjJjZDlmYzQ0ZWI5ODI1YTgwMjQ5NDg3ZjA2NGZmZDVjcDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgLTB4MS4yY2Q5ZmM0NGViOTgyNWE4MDI0OTQ4N2YwNjRmZmQ1Y3AwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMHgxLjE4ZTFkZjk0YTNjOWVlYzYxNmYzYzMzZTExNmZmMTM2cC02LAorICAgIDB4MS4xOGRlNWFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAtMHgxLjE4ZTFkZjk0YTNjOWVlYzYxNmYzYzMzZTExNmZmMTM2cC02LAorICAgIC0weDEuMThkZTVhcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLjE4ZWM3MDdiNDFjYjA1NzU3ZjcwMmIyZTdiYzgxNjhmcC01LAorICAgIDB4MS4xOGRlNWFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAtMHgxLjE4ZWM3MDdiNDFjYjA1NzU3ZjcwMmIyZTdiYzgxNjhmcC01LAorICAgIC0weDEuMThkZTVhcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLmE1N2QxNGM1NDRkYjZmNzljY2IyOWNmNjQ3ZWMzYmQ2cC01LAorICAgIDB4MS5hNTRkODhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAtMHgxLmE1N2QxNGM1NDRkYjZmNzljY2IyOWNmNjQ3ZWMzYmQ2cC01LAorICAgIC0weDEuYTU0ZDg4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLjE5MTZiNjc4NDJkZmYxMDI1ZTc5ZTA2ODY0YmFkODA1cC00LAorICAgIDB4MS4xOGRlNWFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAtMHgxLjE5MTZiNjc4NDJkZmYxMDI1ZTc5ZTA2ODY0YmFkODA1cC00LAorICAgIC0weDEuMThkZTVhcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLjVmODQwODU0ODI4Mjc1ZTA3YjUyMTQ3YTBiMzRjZWMycC00LAorICAgIDB4MS41ZjE1ZjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAtMHgxLjVmODQwODU0ODI4Mjc1ZTA3YjUyMTQ3YTBiMzRjZWMycC00LAorICAgIC0weDEuNWYxNWYwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgMHgxLmE2MGJjYzY0ODg4YjVkMWE3MzM4YjFhMGY5MjQzZjFlcC00LAorICAgIDB4MS5hNTRkODZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAtMHgxLmE2MGJjYzY0ODg4YjVkMWE3MzM4YjFhMGY5MjQzZjFlcC00LAorICAgIC0weDEuYTU0ZDg2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLmVjYjM1MTEyZDY3NGQwNTc4NWVjMDAwNjZjMmIzZWM4cC00LAorICAgIDB4MS5lYjg1MWNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAtMHgxLmVjYjM1MTEyZDY3NGQwNTc4NWVjMDAwNjZjMmIzZWM4cC00LAorICAgIC0weDEuZWI4NTFjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjc0CisgICAgMHgxLmVjYjM1MzE2ODc0ZWJmNzNhYmE5MjQ5MWE0NGUwNzlmcC00LAorICAgIDB4MS5lYjg1MWVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAtMHgxLmVjYjM1MzE2ODc0ZWJmNzNhYmE5MjQ5MWE0NGUwNzlmcC00LAorICAgIC0weDEuZWI4NTFlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLjAyMjQzZDEyNzYxNDMxMDY0MDRmYTRjYjNmY2FkZjMzcC0zLAorICAgIDB4MS4wMTc2N2VwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAtMHgxLjAyMjQzZDEyNzYxNDMxMDY0MDRmYTRjYjNmY2FkZjMzcC0zLAorICAgIC0weDEuMDE3NjdlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLjBkZjBmODAxMTEyNjU5M2VmZWRkYTA0NWM4ZmEwZTA5cC0zLAorICAgIDB4MS4wZDJhNmNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAtMHgxLjBkZjBmODAxMTEyNjU5M2VmZWRkYTA0NWM4ZmEwZTA5cC0zLAorICAgIC0weDEuMGQyYTZjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLjE5YmZmNDk5MjZkNDg3MGM0Y2FlMWY0MDc2YjhlMzdhcC0zLAorICAgIDB4MS4xOGRlNWFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAtMHgxLjE5YmZmNDk5MjZkNDg3MGM0Y2FlMWY0MDc2YjhlMzdhcC0zLAorICAgIC0weDEuMThkZTVhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjI1OTE0YzFmYzRkNDBiMjM2YTIxOGY4NThjNzBmYjUzcC0zLAorICAgIDB4MS4yNDkyNDhwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAtMHgxLjI1OTE0YzFmYzRkNDBiMjM2YTIxOGY4NThjNzBmYjUzcC0zLAorICAgIC0weDEuMjQ5MjQ4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLjMxNjUxN2RmMDMxOTRlNjJjZGMzOWMzMDNiODEwNWZmcC0zLAorICAgIDB4MS4zMDQ2MzZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAtMHgxLjMxNjUxN2RmMDMxOTRlNjJjZGMzOWMzMDNiODEwNWZmcC0zLAorICAgIC0weDEuMzA0NjM2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgMHgxLjNkM2I3MTI2MzlmNjE1OTg2NzcxYTkxMGQzNDQ2MTdlcC0zLAorICAgIDB4MS4zYmZhMjRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAtMHgxLjNkM2I3MTI2MzlmNjE1OTg2NzcxYTkxMGQzNDQ2MTdlcC0zLAorICAgIC0weDEuM2JmYTI0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLjQ5MTQ3MTRhMzg0MzAyMjhlZGI1NWU3OTQ5YzMwYTk2cC0zLAorICAgIDB4MS40N2FlMTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAtMHgxLjQ5MTQ3MTRhMzg0MzAyMjhlZGI1NWU3OTQ5YzMwYTk2cC0zLAorICAgIC0weDEuNDdhZTEycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgMHgxLjQ5MTQ3MzUwYzk5MGI4NzMxYjVhYTA2YjM3NWU5YWQwcC0zLAorICAgIDB4MS40N2FlMTRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAtMHgxLjQ5MTQ3MzUwYzk5MGI4NzMxYjVhYTA2YjM3NWU5YWQwcC0zLAorICAgIC0weDEuNDdhZTE0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLjIyN2IyZjNkMzBhZjFkNGUyMjQ0NGM4ZTdmMzM4NDYwcC0yLAorICAgIDB4MS4xZWI4NTJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLjIyN2IyZjNkMzBhZjFkNGUyMjQ0NGM4ZTdmMzM4NDYwcC0yLAorICAgIC0weDEuMWViODUycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgMHgxLmE0OWM0MjY3MDQ5NzAyNTk5NmE4YjNmZjQyYTQ5YzZmcC0yLAorICAgIDB4MS45OTk5OWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAtMHgxLmE0OWM0MjY3MDQ5NzAyNTk5NmE4YjNmZjQyYTQ5YzZmcC0yLAorICAgIC0weDEuOTk5OTlhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgMHgxLjE2NjZkY2QxOThmZjkyYjQ2ZGE2YmZhYjhhYmE1NmEwcC0xLAorICAgIDB4MS4wYTNkNzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAtMHgxLjE2NjZkY2QxOThmZjkyYjQ2ZGE2YmZhYjhhYmE1NmEwcC0xLAorICAgIC0weDEuMGEzZDcwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjk4CisgICAgMHgxLjVlODMyMWUwN2U3NmQwOGUxZTk4NWFiM2NkN2RhNWI2cC0xLAorICAgIDB4MS40N2FlMTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAtMHgxLjVlODMyMWUwN2U3NmQwOGUxZTk4NWFiM2NkN2RhNWI2cC0xLAorICAgIC0weDEuNDdhZTE0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgMHgxLmFiYWQxNGYwYWEwN2EyZmQ1Y2M4NmY2MDk4YThjZjgwcC0xLAorICAgIDB4MS44NTFlYjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAtMHgxLmFiYWQxNGYwYWEwN2EyZmQ1Y2M4NmY2MDk4YThjZjgwcC0xLAorICAgIC0weDEuODUxZWI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMHgxLmZmMDE4MjY2ODQxMTUzOWQzZGI5YjhmZDlhZjExZmQwcC0xLAorICAgIDB4MS5jMjhmNWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAtMHgxLmZmMDE4MjY2ODQxMTUzOWQzZGI5YjhmZDlhZjExZmQwcC0xLAorICAgIC0weDEuYzI4ZjVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMHgxLjJjZDlmYzQ0ZWI5ODI1YTgwMjQ5NDg3ZjA2NGZmZDVjcDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgLTB4MS4yY2Q5ZmM0NGViOTgyNWE4MDI0OTQ4N2YwNjRmZmQ1Y3AwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuMmNkOWZjNDRlYjk4MjVhODAyNDk0ODdmMDY0ZmZkNWNwMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAtMHgxLjJjZDlmYzQ0ZWI5ODI1YTgwMjQ5NDg3ZjA2NGZmZDVjcDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDMwOAorICAgIDB4MS45NTUyNWU0YTJlZjcxOGViMDc1NDY0Mjg2NmI1YTdkNHAzLAorICAgIDB4MS45ZGU4MjZwMQorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIC0weDEuOTU1MjVlNGEyZWY3MThlYjA3NTQ2NDI4NjZiNWE3ZDRwMywKKyAgICAtMHgxLjlkZTgyNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMHgxLmQ5YTBlZWU1OGJiZDM3NzA2ZjkzMDdlZGFkN2RhN2VjcDYsCisgICAgMHgxLjVkZTgyNnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgLTB4MS5kOWEwZWVlNThiYmQzNzcwNmY5MzA3ZWRhZDdkYTdlY3A2LAorICAgIC0weDEuNWRlODI2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAweDEuMTQ0ZGE4MGEyZTM1MTMyNDFmZWRhY2FiNzA5NTQ2MzFwMTAsCisgICAgMHgxLmVjZGMzOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgLTB4MS4xNDRkYTgwYTJlMzUxMzI0MWZlZGFjYWI3MDk1NDYzMXAxMCwKKyAgICAtMHgxLmVjZGMzOHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLjQyNWYyYTNlYjA3NzFkNzc0YzNlNzkwY2QwZjQwYzYzcDEzLAorICAgIDB4MS4zZGU4MjZwMworICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIC0weDEuNDI1ZjJhM2ViMDc3MWQ3NzRjM2U3OTBjZDBmNDBjNjNwMTMsCisgICAgLTB4MS4zZGU4MjZwMworICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS43ODFmMDAxYjdjYzQ1ZThjMDU3ZDA5OGQzMDBhNzNkMXAxNiwKKyAgICAweDEuODU2MjMwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAtMHgxLjc4MWYwMDFiN2NjNDVlOGMwNTdkMDk4ZDMwMGE3M2QxcDE2LAorICAgIC0weDEuODU2MjMwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuYjZkNTA2YzU5ZDhjYmU1YzU0ZjdmODkyN2M1OTdmODRwMTksCisgICAgMHgxLmNjZGMzYXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgLTB4MS5iNmQ1MDZjNTlkOGNiZTVjNTRmN2Y4OTI3YzU5N2Y4NHAxOSwKKyAgICAtMHgxLmNjZGMzYXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgMHgxLmZmZmZjMTg4YWNlNmIxMTBhODBmZTQ5NjE1OTEwZmYycDIyLAorICAgIDB4MS4wYTJiMjJwNAorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIC0weDEuZmZmZmMxODhhY2U2YjExMGE4MGZlNDk2MTU5MTBmZjJwMjIsCisgICAgLTB4MS4wYTJiMjJwNAorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDB4MS5mZmZmYzEwM2M5ZjAxNThkMjJkOTYzZTViNzY0Yzc1MHAxNCwKKyAgICAweDEuNjJlNDJjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjMKKyAgICAtMHgxLmZmZmZjMTAzYzlmMDE1OGQyMmQ5NjNlNWI3NjRjNzUwcDE0LAorICAgIC0weDEuNjJlNDJjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAweDEuZmZmZmUxMDNjNzAwOTIxMjAzNGIzODk3NTlhOTNmZGRwMTQsCisgICAgMHgxLjYyZTQyZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgLTB4MS5mZmZmZTEwM2M3MDA5MjEyMDM0YjM4OTc1OWE5M2ZkZHAxNCwKKyAgICAtMHgxLjYyZTQyZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgMHgxLjAwMDAwMDgxZTMwODg3M2JmM2MyMWM0MmRiMDM1NGM3cDE1LAorICAgIDB4MS42MmU0MzBwMworICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIC0weDEuMDAwMDAwODFlMzA4ODczYmYzYzIxYzQyZGIwMzU0YzdwMTUsCisgICAgLTB4MS42MmU0MzBwMworICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIDB4MS5mZmZkZTA4MmM0ODMyOWQ5MjBhZTNkODNjNDAwODg0MHA2LAorICAgIDB4MS42MmU0MmNwMgorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIC0weDEuZmZmZGUwODJjNDgzMjlkOTIwYWUzZDgzYzQwMDg4NDBwNiwKKyAgICAtMHgxLjYyZTQyY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgMHgxLmZmZmRmMDgyZDNjNzQxYjFjNmRmZGFlZWRiYzFjZjhlcDYsCisgICAgMHgxLjYyZTQyZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgLTB4MS5mZmZkZjA4MmQzYzc0MWIxYzZkZmRhZWVkYmMxY2Y4ZXA2LAorICAgIC0weDEuNjJlNDJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuZmZmZTAwODJlMzhiNTkwNjhkYzY2Y2Q1MDdlMDI3ZWRwNiwKKyAgICAweDEuNjJlNDMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAtMHgxLmZmZmUwMDgyZTM4YjU5MDY4ZGM2NmNkNTA3ZTAyN2VkcDYsCisgICAgLTB4MS42MmU0MzBwMgorICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIDB4MS5mZGZmZjAzMWIzMzM3MTdkYTEwNzdjNGE1MGI1Y2M2NnAyLAorICAgIDB4MS42MmU0MmNwMQorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIC0weDEuZmRmZmYwMzFiMzMzNzE3ZGExMDc3YzRhNTBiNWNjNjZwMiwKKyAgICAtMHgxLjYyZTQyY3AxCisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgMHgxLmZkZmZmODM5YjMwNGE2M2U3YjkzZTY4ZWNjYjhiOGU0cDIsCisgICAgMHgxLjYyZTQyZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgLTB4MS5mZGZmZjgzOWIzMDRhNjNlN2I5M2U2OGVjY2I4YjhlNHAyLAorICAgIC0weDEuNjJlNDJlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuZmUwMDAwNDFiMmY1YmFmZWQ5YmI4MTQ4MmNhMmI4YzRwMiwKKyAgICAweDEuNjJlNDMwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzkKKyAgICAtMHgxLmZlMDAwMDQxYjJmNWJhZmVkOWJiODE0ODJjYTJiOGM0cDIsCisgICAgLTB4MS42MmU0MzBwMQorICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIDB4MS5kZmZmZjdhMmM0NWNjMTJiZWIyMDY1MTgxZjBkMjQ5NXAwLAorICAgIDB4MS42MmU0MmNwMAorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIC0weDEuZGZmZmY3YTJjNDVjYzEyYmViMjA2NTE4MWYwZDI0OTVwMCwKKyAgICAtMHgxLjYyZTQyY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMzQyCisgICAgMHgxLmRmZmZmYmUyYzQ1MWJlODY2YTE2ZDBlY2RkOWIxNjdlcDAsCisgICAgMHgxLjYyZTQyZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQzCisgICAgLTB4MS5kZmZmZmJlMmM0NTFiZTg2NmExNmQwZWNkZDliMTY3ZXAwLAorICAgIC0weDEuNjJlNDJlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuZTAwMDAwMjJjNDRlM2JlMGQ4OTg0ZTBiMTY0MmFiNDVwMCwKKyAgICAweDEuNjJlNDMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAtMHgxLmUwMDAwMDIyYzQ0ZTNiZTBkODk4NGUwYjE2NDJhYjQ1cDAsCisgICAgLTB4MS42MmU0MzBwMAorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS43ZmZmZmIxNDczN2MzNzdhMjMwZDE0YTRjMWQxNDNiZHAtMSwKKyAgICAweDEuNjJlNDJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQ3CisgICAgLTB4MS43ZmZmZmIxNDczN2MzNzdhMjMwZDE0YTRjMWQxNDNiZHAtMSwKKyAgICAtMHgxLjYyZTQyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIDB4MS43ZmZmZmQ5NDczN2EwM2JmNmVhMmU0MGZmMjhmNDA2YnAtMSwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgLTB4MS43ZmZmZmQ5NDczN2EwM2JmNmVhMmU0MGZmMjhmNDA2YnAtMSwKKyAgICAtMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIDB4MS44MDAwMDAxNDczNzk1MDA0YjdjZDI2ZjU0NzBjYWI4OXAtMSwKKyAgICAweDEuNjJlNDMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgLTB4MS44MDAwMDAxNDczNzk1MDA0YjdjZDI2ZjU0NzBjYWI4OXAtMSwKKyAgICAtMHgxLjYyZTQzMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIDB4MS42YTA5ZTIzYjMwN2NhODJjMWIxZjZkZDRhMGQxZWQ5NHAtMiwKKyAgICAweDEuNjJlNDJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzUzCisgICAgLTB4MS42YTA5ZTIzYjMwN2NhODJjMWIxZjZkZDRhMGQxZWQ5NHAtMiwKKyAgICAtMHgxLjYyZTQyY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDM1NAorICAgIDB4MS42YTA5ZTQ1YTNmNTViZjNhNjhlNDkyMTQyZjBlN2FjZnAtMiwKKyAgICAweDEuNjJlNDJlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzU1CisgICAgLTB4MS42YTA5ZTQ1YTNmNTViZjNhNjhlNDkyMTQyZjBlN2FjZnAtMiwKKyAgICAtMHgxLjYyZTQyZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIDB4MS42YTA5ZTY3OTRlMmYzMGNiMmZjMDQ2MjkyZWZjNWExZHAtMiwKKyAgICAweDEuNjJlNDMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgLTB4MS42YTA5ZTY3OTRlMmYzMGNiMmZjMDQ2MjkyZWZjNWExZHAtMiwKKyAgICAtMHgxLjYyZTQzMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIDB4MS42NGFiOGI2MjQ1MDBkY2M3NGRjNWRlOTdhMDcyMGFhYnAtMywKKyAgICAweDEuNjJlNDJjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzU5CisgICAgLTB4MS42NGFiOGI2MjQ1MDBkY2M3NGRjNWRlOTdhMDcyMGFhYnAtMywKKyAgICAtMHgxLjYyZTQyY3AtMworICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS42NGFiOGQ2OWY5ZGUyOWZmYTJhNTk0NGNmMjYzNzRmYXAtMywKKyAgICAweDEuNjJlNDJlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzYxCisgICAgLTB4MS42NGFiOGQ2OWY5ZGUyOWZmYTJhNTk0NGNmMjYzNzRmYXAtMywKKyAgICAtMHgxLjYyZTQyZXAtMworICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIDB4MS42NGFiOGY3MWFlYmI4ZDgyYjA1YmU5YTAyNzEyOTI2OXAtMywKKyAgICAweDEuNjJlNDMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgLTB4MS42NGFiOGY3MWFlYmI4ZDgyYjA1YmU5YTAyNzEyOTI2OXAtMywKKyAgICAtMHgxLjYyZTQzMHAtMworICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIDB4MS42MzU1ZTMwYzUzMjI4NTM3MzliODcxMjVlYzIyYmRlY3AtNCwKKyAgICAweDEuNjJlNDJjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgLTB4MS42MzU1ZTMwYzUzMjI4NTM3MzliODcxMjVlYzIyYmRlY3AtNCwKKyAgICAtMHgxLjYyZTQyY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIDB4MS42MzU1ZTUwZTNmNmQyY2MyZGQ2ZTc0N2Y2MWJiOGM2NXAtNCwKKyAgICAweDEuNjJlNDJlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgLTB4MS42MzU1ZTUwZTNmNmQyY2MyZGQ2ZTc0N2Y2MWJiOGM2NXAtNCwKKyAgICAtMHgxLjYyZTQyZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS42MzU1ZTcxMDJiYjdkOWRiZDhiOGIwZDY4YzA5NDAxYnAtNCwKKyAgICAweDEuNjJlNDMwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgLTB4MS42MzU1ZTcxMDJiYjdkOWRiZDhiOGIwZDY4YzA5NDAxYnAtNCwKKyAgICAtMHgxLjYyZTQzMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIDB4MS42MzAwOTdiNmFhZWEzNmQ5MDVhMWU3NGEzMzJiMDEwMnAtNSwKKyAgICAweDEuNjJlNDJjcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgLTB4MS42MzAwOTdiNmFhZWEzNmQ5MDVhMWU3NGEzMzJiMDEwMnAtNSwKKyAgICAtMHgxLjYyZTQyY3AtNQorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIDB4MS42MzAwOTliNzI1ZWUxOThjZjQ4ZjQzOWUyODA3YmYwN3AtNSwKKyAgICAweDEuNjJlNDJlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgLTB4MS42MzAwOTliNzI1ZWUxOThjZjQ4ZjQzOWUyODA3YmYwN3AtNSwKKyAgICAtMHgxLjYyZTQyZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS42MzAwOWJiN2EwZjFmZGEzZTQxNjU3MTgwYWZlMjc5N3AtNSwKKyAgICAweDEuNjJlNDMwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgLTB4MS42MzAwOWJiN2EwZjFmZGEzZTQxNjU3MTgwYWZlMjc5N3AtNSwKKyAgICAtMHgxLjYyZTQzMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIDB4MS42MmViNDZjY2U1ODQ4ZWZjMGE4ODg0OTk3NDJiZmQ0Y3AtNiwKKyAgICAweDEuNjJlNDJjcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgLTB4MS42MmViNDZjY2U1ODQ4ZWZjMGE4ODg0OTk3NDJiZmQ0Y3AtNiwKKyAgICAtMHgxLjYyZTQyY3AtNgorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS42MmViNDhjZDA0NDQ5YjQ0NDk2Y2VlZmY1NzQ5MDA3NXAtNiwKKyAgICAweDEuNjJlNDJlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzc5CisgICAgLTB4MS42MmViNDhjZDA0NDQ5YjQ0NDk2Y2VlZmY1NzQ5MDA3NXAtNiwKKyAgICAtMHgxLjYyZTQyZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDM4MAorICAgIDB4MS42MmViNGFjZDIzMDRhN2U1NDMyMzhjYTY0YjhjZDY4OXAtNiwKKyAgICAweDEuNjJlNDMwcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgLTB4MS42MmViNGFjZDIzMDRhN2U1NDMyMzhjYTY0YjhjZDY4OXAtNiwKKyAgICAtMHgxLjYyZTQzMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIC0weDEuMDAwMDAxMDVjNjExNTA1YzdmNzRhNTE5Zjk0MTcxYjBwMzEsCisgICAgLTB4MS42MmU0MzBwNAorICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIDB4MS4wMDAwMDEwNWM2MTE1MDVjN2Y3NGE1MTlmOTQxNzFiMHAzMSwKKyAgICAweDEuNjJlNDMwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODQKKyAgICAtMHgxLmZmZmZjMjBiOGZlMTJmMGUxNzQwNmVhMWRjNTk4YWEwcDMwLAorICAgIC0weDEuNjJlNDJlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAweDEuZmZmZmMyMGI4ZmUxMmYwZTE3NDA2ZWExZGM1OThhYTBwMzAsCisgICAgMHgxLjYyZTQyZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgLTB4MS5mZmZmODIwYjliOWZiYzZiNWRkOWMyNzY1NjljOWU3N3AzMCwKKyAgICAtMHgxLjYyZTQyY3A0CisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgMHgxLmZmZmY4MjBiOWI5ZmJjNmI1ZGQ5YzI3NjU2OWM5ZTc3cDMwLAorICAgIDB4MS42MmU0MmNwNAorICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIC0weDEuMDAwMDAwODFlMzA4ODczYmYzYzIxYzQyZGIwMzU0YzdwMTUsCisgICAgLTB4MS42MmU0MzBwMworICB9LAorICB7IC8vIEVudHJ5IDM4OQorICAgIDB4MS4wMDAwMDA4MWUzMDg4NzNiZjNjMjFjNDJkYjAzNTRjN3AxNSwKKyAgICAweDEuNjJlNDMwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTAKKyAgICAtMHgxLmZmZmZlMTAzYzcwMDkyMTIwMzRiMzg5NzU5YTkzZmRkcDE0LAorICAgIC0weDEuNjJlNDJlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTEKKyAgICAweDEuZmZmZmUxMDNjNzAwOTIxMjAzNGIzODk3NTlhOTNmZGRwMTQsCisgICAgMHgxLjYyZTQyZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgLTB4MS5mZmZmYzEwM2M5ZjAxNThkMjJkOTYzZTViNzY0Yzc1MHAxNCwKKyAgICAtMHgxLjYyZTQyY3AzCisgIH0sCisgIHsgLy8gRW50cnkgMzkzCisgICAgMHgxLmZmZmZjMTAzYzlmMDE1OGQyMmQ5NjNlNWI3NjRjNzUwcDE0LAorICAgIDB4MS42MmU0MmNwMworICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIC0weDEuZmZmZTAwODJlMzhiNTkwNjhkYzY2Y2Q1MDdlMDI3ZWRwNiwKKyAgICAtMHgxLjYyZTQzMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzk1CisgICAgMHgxLmZmZmUwMDgyZTM4YjU5MDY4ZGM2NmNkNTA3ZTAyN2VkcDYsCisgICAgMHgxLjYyZTQzMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzk2CisgICAgLTB4MS5mZmZkZjA4MmQzYzc0MWIxYzZkZmRhZWVkYmMxY2Y4ZXA2LAorICAgIC0weDEuNjJlNDJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAweDEuZmZmZGYwODJkM2M3NDFiMWM2ZGZkYWVlZGJjMWNmOGVwNiwKKyAgICAweDEuNjJlNDJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTgKKyAgICAtMHgxLmZmZmRlMDgyYzQ4MzI5ZDkyMGFlM2Q4M2M0MDA4ODQwcDYsCisgICAgLTB4MS42MmU0MmNwMgorICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIDB4MS5mZmZkZTA4MmM0ODMyOWQ5MjBhZTNkODNjNDAwODg0MHA2LAorICAgIDB4MS42MmU0MmNwMgorICB9LAorICB7IC8vIEVudHJ5IDQwMAorICAgIC0weDEuZmUwMDAwNDFiMmY1YmFmZWQ5YmI4MTQ4MmNhMmI4YzRwMiwKKyAgICAtMHgxLjYyZTQzMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDAxCisgICAgMHgxLmZlMDAwMDQxYjJmNWJhZmVkOWJiODE0ODJjYTJiOGM0cDIsCisgICAgMHgxLjYyZTQzMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgLTB4MS5mZGZmZjgzOWIzMDRhNjNlN2I5M2U2OGVjY2I4YjhlNHAyLAorICAgIC0weDEuNjJlNDJlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAweDEuZmRmZmY4MzliMzA0YTYzZTdiOTNlNjhlY2NiOGI4ZTRwMiwKKyAgICAweDEuNjJlNDJlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDQKKyAgICAtMHgxLmZkZmZmMDMxYjMzMzcxN2RhMTA3N2M0YTUwYjVjYzY2cDIsCisgICAgLTB4MS42MmU0MmNwMQorICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIDB4MS5mZGZmZjAzMWIzMzM3MTdkYTEwNzdjNGE1MGI1Y2M2NnAyLAorICAgIDB4MS42MmU0MmNwMQorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIC0weDEuZTAwMDAwMjJjNDRlM2JlMGQ4OTg0ZTBiMTY0MmFiNDVwMCwKKyAgICAtMHgxLjYyZTQzMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDA3CisgICAgMHgxLmUwMDAwMDIyYzQ0ZTNiZTBkODk4NGUwYjE2NDJhYjQ1cDAsCisgICAgMHgxLjYyZTQzMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDA4CisgICAgLTB4MS5kZmZmZmJlMmM0NTFiZTg2NmExNmQwZWNkZDliMTY3ZXAwLAorICAgIC0weDEuNjJlNDJlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAweDEuZGZmZmZiZTJjNDUxYmU4NjZhMTZkMGVjZGQ5YjE2N2VwMCwKKyAgICAweDEuNjJlNDJlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAtMHgxLmRmZmZmN2EyYzQ1Y2MxMmJlYjIwNjUxODFmMGQyNDk1cDAsCisgICAgLTB4MS42MmU0MmNwMAorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIDB4MS5kZmZmZjdhMmM0NWNjMTJiZWIyMDY1MTgxZjBkMjQ5NXAwLAorICAgIDB4MS42MmU0MmNwMAorICB9LAorICB7IC8vIEVudHJ5IDQxMgorICAgIC0weDEuODAwMDAwMTQ3Mzc5NTAwNGI3Y2QyNmY1NDcwY2FiODlwLTEsCisgICAgLTB4MS42MmU0MzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTMKKyAgICAweDEuODAwMDAwMTQ3Mzc5NTAwNGI3Y2QyNmY1NDcwY2FiODlwLTEsCisgICAgMHgxLjYyZTQzMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIC0weDEuN2ZmZmZkOTQ3MzdhMDNiZjZlYTJlNDBmZjI4ZjQwNmJwLTEsCisgICAgLTB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTUKKyAgICAweDEuN2ZmZmZkOTQ3MzdhMDNiZjZlYTJlNDBmZjI4ZjQwNmJwLTEsCisgICAgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxNgorICAgIC0weDEuN2ZmZmZiMTQ3MzdjMzc3YTIzMGQxNGE0YzFkMTQzYmRwLTEsCisgICAgLTB4MS42MmU0MmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAweDEuN2ZmZmZiMTQ3MzdjMzc3YTIzMGQxNGE0YzFkMTQzYmRwLTEsCisgICAgMHgxLjYyZTQyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQxOAorICAgIC0weDEuNmEwOWU2Nzk0ZTJmMzBjYjJmYzA0NjI5MmVmYzVhMWRwLTIsCisgICAgLTB4MS42MmU0MzBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTkKKyAgICAweDEuNmEwOWU2Nzk0ZTJmMzBjYjJmYzA0NjI5MmVmYzVhMWRwLTIsCisgICAgMHgxLjYyZTQzMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIC0weDEuNmEwOWU0NWEzZjU1YmYzYTY4ZTQ5MjE0MmYwZTdhY2ZwLTIsCisgICAgLTB4MS42MmU0MmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjEKKyAgICAweDEuNmEwOWU0NWEzZjU1YmYzYTY4ZTQ5MjE0MmYwZTdhY2ZwLTIsCisgICAgMHgxLjYyZTQyZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQyMgorICAgIC0weDEuNmEwOWUyM2IzMDdjYTgyYzFiMWY2ZGQ0YTBkMWVkOTRwLTIsCisgICAgLTB4MS42MmU0MmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjMKKyAgICAweDEuNmEwOWUyM2IzMDdjYTgyYzFiMWY2ZGQ0YTBkMWVkOTRwLTIsCisgICAgMHgxLjYyZTQyY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDQyNAorICAgIC0weDEuNjRhYjhmNzFhZWJiOGQ4MmIwNWJlOWEwMjcxMjkyNjlwLTMsCisgICAgLTB4MS42MmU0MzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjUKKyAgICAweDEuNjRhYjhmNzFhZWJiOGQ4MmIwNWJlOWEwMjcxMjkyNjlwLTMsCisgICAgMHgxLjYyZTQzMHAtMworICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIC0weDEuNjRhYjhkNjlmOWRlMjlmZmEyYTU5NDRjZjI2Mzc0ZmFwLTMsCisgICAgLTB4MS42MmU0MmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAweDEuNjRhYjhkNjlmOWRlMjlmZmEyYTU5NDRjZjI2Mzc0ZmFwLTMsCisgICAgMHgxLjYyZTQyZXAtMworICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIC0weDEuNjRhYjhiNjI0NTAwZGNjNzRkYzVkZTk3YTA3MjBhYWJwLTMsCisgICAgLTB4MS42MmU0MmNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEuNjRhYjhiNjI0NTAwZGNjNzRkYzVkZTk3YTA3MjBhYWJwLTMsCisgICAgMHgxLjYyZTQyY3AtMworICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIC0weDEuNjM1NWU3MTAyYmI3ZDlkYmQ4YjhiMGQ2OGMwOTQwMWJwLTQsCisgICAgLTB4MS42MmU0MzBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAweDEuNjM1NWU3MTAyYmI3ZDlkYmQ4YjhiMGQ2OGMwOTQwMWJwLTQsCisgICAgMHgxLjYyZTQzMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQzMgorICAgIC0weDEuNjM1NWU1MGUzZjZkMmNjMmRkNmU3NDdmNjFiYjhjNjVwLTQsCisgICAgLTB4MS42MmU0MmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzMKKyAgICAweDEuNjM1NWU1MGUzZjZkMmNjMmRkNmU3NDdmNjFiYjhjNjVwLTQsCisgICAgMHgxLjYyZTQyZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIC0weDEuNjM1NWUzMGM1MzIyODUzNzM5Yjg3MTI1ZWMyMmJkZWNwLTQsCisgICAgLTB4MS42MmU0MmNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAweDEuNjM1NWUzMGM1MzIyODUzNzM5Yjg3MTI1ZWMyMmJkZWNwLTQsCisgICAgMHgxLjYyZTQyY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIC0weDEuNjMwMDliYjdhMGYxZmRhM2U0MTY1NzE4MGFmZTI3OTdwLTUsCisgICAgLTB4MS42MmU0MzBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAweDEuNjMwMDliYjdhMGYxZmRhM2U0MTY1NzE4MGFmZTI3OTdwLTUsCisgICAgMHgxLjYyZTQzMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQzOAorICAgIC0weDEuNjMwMDk5YjcyNWVlMTk4Y2Y0OGY0MzllMjgwN2JmMDdwLTUsCisgICAgLTB4MS42MmU0MmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzkKKyAgICAweDEuNjMwMDk5YjcyNWVlMTk4Y2Y0OGY0MzllMjgwN2JmMDdwLTUsCisgICAgMHgxLjYyZTQyZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ0MAorICAgIC0weDEuNjMwMDk3YjZhYWVhMzZkOTA1YTFlNzRhMzMyYjAxMDJwLTUsCisgICAgLTB4MS42MmU0MmNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDEKKyAgICAweDEuNjMwMDk3YjZhYWVhMzZkOTA1YTFlNzRhMzMyYjAxMDJwLTUsCisgICAgMHgxLjYyZTQyY3AtNQorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ0MworICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDQKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDQ1CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQ0NworICAgIDB4MS5lY2IzNTExMmQ2NzRkMDU3ODVlYzAwMDY2YzJiM2VjOHAtNCwKKyAgICAweDEuZWI4NTFjcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDQ4CisgICAgLTB4MS5lY2IzNTExMmQ2NzRkMDU3ODVlYzAwMDY2YzJiM2VjOHAtNCwKKyAgICAtMHgxLmViODUxY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIDB4MS5lY2IzNTMxNjg3NGViZjczYWJhOTI0OTFhNDRlMDc5ZnAtNCwKKyAgICAweDEuZWI4NTFlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgLTB4MS5lY2IzNTMxNjg3NGViZjczYWJhOTI0OTFhNDRlMDc5ZnAtNCwKKyAgICAtMHgxLmViODUxZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ1MQorICAgIDB4MS5lY2IzNTUxYTM4MjhiNjQyOWViMmEzM2ExNzcxMzAxNHAtNCwKKyAgICAweDEuZWI4NTIwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgLTB4MS5lY2IzNTUxYTM4MjhiNjQyOWViMmEzM2ExNzcxMzAxNHAtNCwKKyAgICAtMHgxLmViODUyMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQ1MworICAgIDB4MS4wYWNjZmZkZGI3YTEyYjRlNmE5NmQ3MmFmMzk2MWY1M3AtMSwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgLTB4MS4wYWNjZmZkZGI3YTEyYjRlNmE5NmQ3MmFmMzk2MWY1M3AtMSwKKyAgICAtMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ1NQorICAgIDB4MS4wYWNkMDBmZTYzYjk2Y2EzNTc4OTU3NjFhZTY2MjI0YXAtMSwKKyAgICAweDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDU2CisgICAgLTB4MS4wYWNkMDBmZTYzYjk2Y2EzNTc4OTU3NjFhZTY2MjI0YXAtMSwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIDB4MS4wYWNkMDMzZmJiZWFiNzY2ZjI3NTRkYTA1YWFkZTkzMHAtMSwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgLTB4MS4wYWNkMDMzZmJiZWFiNzY2ZjI3NTRkYTA1YWFkZTkzMHAtMSwKKyAgICAtMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ1OQorICAgIDB4MS4yY2Q5ZmFiOWU0NDM5ZTc1YWIyNTI0ZmZjZTAyODNlOXAwLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjAKKyAgICAtMHgxLjJjZDlmYWI5ZTQ0MzllNzVhYjI1MjRmZmNlMDI4M2U5cDAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjEKKyAgICAweDEuMmNkOWZjNDRlYjk4MjVhODAyNDk0ODdmMDY0ZmZkNWNwMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICAtMHgxLjJjZDlmYzQ0ZWI5ODI1YTgwMjQ5NDg3ZjA2NGZmZDVjcDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDQ2MworICAgIDB4MS4yY2Q5ZmY1YWZhNDRiYTlhYTZlYjU5OWJlNzI1YzliYXAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2NAorICAgIC0weDEuMmNkOWZmNWFmYTQ0YmE5YWE2ZWI1OTliZTcyNWM5YmFwMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDY1CisgICAgMHgxLmFiNWFhNjMwZWI0MzI1NDBlYTdhMTFkOTQ1NWU1YjY1cDMwLAorICAgIDB4MS41ZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDQ2NgorICAgIC0weDEuYWI1YWE2MzBlYjQzMjU0MGVhN2ExMWQ5NDU1ZTViNjVwMzAsCisgICAgLTB4MS41ZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIDB4MS5hYjVhZGI5YzQzNWZmODE5NGRkZDlhNzJjOGMwMTE4M3AzMCwKKyAgICAweDEuNjBwNAorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIC0weDEuYWI1YWRiOWM0MzVmZjgxOTRkZGQ5YTcyYzhjMDExODNwMzAsCisgICAgLTB4MS42MHA0CisgIH0sCisgIHsgLy8gRW50cnkgNDY5CisgICAgMHgxLmFiNWIxMTA3YTIyYTM2NjAyMjUwZGNiYjJiN2VlZDgxcDMwLAorICAgIDB4MS42MDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIC0weDEuYWI1YjExMDdhMjJhMzY2MDIyNTBkY2JiMmI3ZWVkODFwMzAsCisgICAgLTB4MS42MDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDQ3MQorICAgIDB4MS4yMjZhY2VlZGMzYjk3YzJhMGRkN2U4M2JmMTZkNWFiZHAzMiwKKyAgICAweDEuNmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzIKKyAgICAtMHgxLjIyNmFjZWVkYzNiOTdjMmEwZGQ3ZTgzYmYxNmQ1YWJkcDMyLAorICAgIC0weDEuNmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzMKKyAgICAweDEuMjI2YWYzM2IxZmRjMGE1NzRjNzZhYjIxNjEzMDk4ODBwMzIsCisgICAgMHgxLjcwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzQKKyAgICAtMHgxLjIyNmFmMzNiMWZkYzBhNTc0Yzc2YWIyMTYxMzA5ODgwcDMyLAorICAgIC0weDEuNzBwNAorICB9LAorICB7IC8vIEVudHJ5IDQ3NQorICAgIDB4MS4yMjZiMTc4ODgwODg0NDUxNzc5NjYxNjk3Mjc0ODY0OHAzMiwKKyAgICAweDEuNzAwMDAycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzYKKyAgICAtMHgxLjIyNmIxNzg4ODA4ODQ0NTE3Nzk2NjE2OTcyNzQ4NjQ4cDMyLAorICAgIC0weDEuNzAwMDAycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAweDEuZmZmZjgxODhiOGI1OWFjYmI4YTM2YzlmMWRlNGFkYzdwMjIsCisgICAgMHgxLjBhMmIyMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgLTB4MS5mZmZmODE4OGI4YjU5YWNiYjhhMzZjOWYxZGU0YWRjN3AyMiwKKyAgICAtMHgxLjBhMmIyMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNDc5CisgICAgMHgxLmZmZmZjMTg4YWNlNmIxMTBhODBmZTQ5NjE1OTEwZmYycDIyLAorICAgIDB4MS4wYTJiMjJwNAorICB9LAorICB7IC8vIEVudHJ5IDQ4MAorICAgIC0weDEuZmZmZmMxODhhY2U2YjExMGE4MGZlNDk2MTU5MTBmZjJwMjIsCisgICAgLTB4MS4wYTJiMjJwNAorICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIDB4MS4wMDAwMDBjNDU0OGJlMzJkZGQxOTUwZmRkMzlmNGM0OXAyMywKKyAgICAweDEuMGEyYjI0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODIKKyAgICAtMHgxLjAwMDAwMGM0NTQ4YmUzMmRkZDE5NTBmZGQzOWY0YzQ5cDIzLAorICAgIC0weDEuMGEyYjI0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODMKKyAgICAweDEuZmZmZmJlYzQ1ODM0ZjcxZjYyYzQ3MTU1OTY1ODIzOGFwMTAsCisgICAgMHgxLjBhMmIyMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDg0CisgICAgLTB4MS5mZmZmYmVjNDU4MzRmNzFmNjJjNDcxNTU5NjU4MjM4YXAxMCwKKyAgICAtMHgxLjBhMmIyMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNDg1CisgICAgMHgxLmZmZmZkZWM0NTU2MTNjOGY1MTJkMzRiZWMyMTEzM2U0cDEwLAorICAgIDB4MS4wYTJiMjJwMworICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIC0weDEuZmZmZmRlYzQ1NTYxM2M4ZjUxMmQzNGJlYzIxMTMzZTRwMTAsCisgICAgLTB4MS4wYTJiMjJwMworICB9LAorICB7IC8vIEVudHJ5IDQ4NworICAgIDB4MS5mZmZmZmVjNDU0OGQ4MWRlMDNlYjg0MGYyNTAxMjMzZHAxMCwKKyAgICAweDEuMGEyYjI0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODgKKyAgICAtMHgxLmZmZmZmZWM0NTQ4ZDgxZGUwM2ViODQwZjI1MDEyMzNkcDEwLAorICAgIC0weDEuMGEyYjI0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODkKKyAgICAweDEuZmZmZWQ4M2VlMjUzMmFjODQ2YmRmZjA5N2NkMmY0M2JwMTI3LAorICAgIDB4MS42NWE5ZjZwNgorICB9LAorICB7IC8vIEVudHJ5IDQ5MAorICAgIC0weDEuZmZmZWQ4M2VlMjUzMmFjODQ2YmRmZjA5N2NkMmY0M2JwMTI3LAorICAgIC0weDEuNjVhOWY2cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAweDEuZmZmZmQ4M2U4ZTcyODFhNDVlNDMyYmQ1OGNiYmMzOGFwMTI3LAorICAgIDB4MS42NWE5ZjhwNgorICB9LAorICB7IC8vIEVudHJ5IDQ5MgorICAgIC0weDEuZmZmZmQ4M2U4ZTcyODFhNDVlNDMyYmQ1OGNiYmMzOGFwMTI3LAorICAgIC0weDEuNjVhOWY4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICBIVUdFX1ZBTEYsCisgICAgMHgxLjY1YTlmYXA2CisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLjY1YTlmYXA2CisgIH0sCisgIHsgLy8gRW50cnkgNDk1CisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLjY1YTlmYXA2CisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS42NWE5ZmFwNgorICB9LAorICB7IC8vIEVudHJ5IDQ5NworICAgIC0weDEuZmZmZmQ4M2U4ZTcyODFhNDVlNDMyYmQ1OGNiYmMzOGFwMTI3LAorICAgIC0weDEuNjVhOWY4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTgKKyAgICAweDEuZmZmZmQ4M2U4ZTcyODFhNDVlNDMyYmQ1OGNiYmMzOGFwMTI3LAorICAgIDB4MS42NWE5ZjhwNgorICB9LAorICB7IC8vIEVudHJ5IDQ5OQorICAgIC0weDEuZmZmZWQ4M2VlMjUzMmFjODQ2YmRmZjA5N2NkMmY0M2JwMTI3LAorICAgIC0weDEuNjVhOWY2cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDAKKyAgICAweDEuZmZmZWQ4M2VlMjUzMmFjODQ2YmRmZjA5N2NkMmY0M2JwMTI3LAorICAgIDB4MS42NWE5ZjZwNgorICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIDB4MS5mZmZmZmUwMDAwMDAwMDA1NTU1NTQ1NTU1NTY1NTU1OXAtMzEsCisgICAgMHgxLmZmZmZmZXAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDIKKyAgICAtMHgxLmZmZmZmZTAwMDAwMDAwMDU1NTU1NDU1NTU1NjU1NTU5cC0zMSwKKyAgICAtMHgxLmZmZmZmZXAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICAweDEuMDAwMDAwMDAwMDAwMDAwMmFhYWFhYWFhYWFhYWFhYWNwLTMwLAorICAgIDB4MS5wLTMwCisgIH0sCisgIHsgLy8gRW50cnkgNTA0CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDAyYWFhYWFhYWFhYWFhYWFhY3AtMzAsCisgICAgLTB4MS5wLTMwCisgIH0sCisgIHsgLy8gRW50cnkgNTA1CisgICAgMHgxLjAwMDAwMjAwMDAwMDAwMDJhYWFhYmFhYWFhY2FhYWFjcC0zMCwKKyAgICAweDEuMDAwMDAycC0zMAorICB9LAorICB7IC8vIEVudHJ5IDUwNgorICAgIC0weDEuMDAwMDAyMDAwMDAwMDAwMmFhYWFiYWFhYWFjYWFhYWNwLTMwLAorICAgIC0weDEuMDAwMDAycC0zMAorICB9LAorICB7IC8vIEVudHJ5IDUwNworICAgIDB4MS5mZmZmZmUwMTU1NTU1MTU1OTk5ZDk4NDQ0OTcyMDE3MnAtMTYsCisgICAgMHgxLmZmZmZmZXAtMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDgKKyAgICAtMHgxLmZmZmZmZTAxNTU1NTUxNTU5OTlkOTg0NDQ5NzIwMTcycC0xNiwKKyAgICAtMHgxLmZmZmZmZXAtMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDkKKyAgICAweDEuMDAwMDAwMDBhYWFhYWFhYWNjY2NjY2NjZDAwZDAwZDBwLTE1LAorICAgIDB4MS5wLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgLTB4MS4wMDAwMDAwMGFhYWFhYWFhY2NjY2NjY2NkMDBkMDBkMHAtMTUsCisgICAgLTB4MS5wLTE1CisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgMHgxLjAwMDAwMjAwYWFhYWFlYWFjY2Q0Y2UyMjJhYmQwMGZkcC0xNSwKKyAgICAweDEuMDAwMDAycC0xNQorICB9LAorICB7IC8vIEVudHJ5IDUxMgorICAgIC0weDEuMDAwMDAyMDBhYWFhYWVhYWNjZDRjZTIyMmFiZDAwZmRwLTE1LAorICAgIC0weDEuMDAwMDAycC0xNQorICB9LAorICB7IC8vIEVudHJ5IDUxMworICAgIDB4MS4wMDAyYTlhY2M0Y2Q5MjM3NGI5MmYzM2QwZDhlNDRmN3AtNiwKKyAgICAweDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgLTB4MS4wMDAyYTlhY2M0Y2Q5MjM3NGI5MmYzM2QwZDhlNDRmN3AtNiwKKyAgICAtMHgxLmZmZmZmZXAtNworICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIDB4MS4wMDAyYWFhY2NjY2Q5Y2Q5ZmJkOGE3ZDFkYzcyYzQ0YnAtNiwKKyAgICAweDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgLTB4MS4wMDAyYWFhY2NjY2Q5Y2Q5ZmJkOGE3ZDFkYzcyYzQ0YnAtNiwKKyAgICAtMHgxLnAtNgorICB9LAorICB7IC8vIEVudHJ5IDUxNworICAgIDB4MS4wMDAyYWNhY2RjY2RiMjRmNWNlNDIxNjI2MGM5ZDczZXAtNiwKKyAgICAweDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgNTE4CisgICAgLTB4MS4wMDAyYWNhY2RjY2RiMjRmNWNlNDIxNjI2MGM5ZDczZXAtNiwKKyAgICAtMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDUxOQorICAgIDB4MS4wMDBhYTljY2FkMDAyNWFmMjc0NDgwYmE4NGIwZmJiY3AtNSwKKyAgICAweDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgLTB4MS4wMDBhYTljY2FkMDAyNWFmMjc0NDgwYmE4NGIwZmJiY3AtNSwKKyAgICAtMHgxLmZmZmZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDUyMQorICAgIDB4MS4wMDBhYWFjY2NkMDBkMDNiM2NiMjNkZmVjZjhmY2JkY3AtNSwKKyAgICAweDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgNTIyCisgICAgLTB4MS4wMDBhYWFjY2NkMDBkMDNiM2NiMjNkZmVjZjhmY2JkY3AtNSwKKyAgICAtMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDUyMworICAgIDB4MS4wMDBhYWNjZDBkMDIyNjEzNmY4ZTEyMjkyNjE0NGY5MHAtNSwKKyAgICAweDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgNTI0CisgICAgLTB4MS4wMDBhYWNjZDBkMDIyNjEzNmY4ZTEyMjkyNjE0NGY5MHAtNSwKKyAgICAtMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDUyNQorICAgIDB4MS4wMDJhYWJjYzU5YzMyMDkwNjNkYzY0ZWEyZTAzYmY3MHAtNCwKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTI2CisgICAgLTB4MS4wMDJhYWJjYzU5YzMyMDkwNjNkYzY0ZWEyZTAzYmY3MHAtNCwKKyAgICAtMHgxLmZmZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIDB4MS4wMDJhYWNjY2Q5Y2RjYjE2MDA4MTRkOGVlMGVhNWU5OHAtNCwKKyAgICAweDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgLTB4MS4wMDJhYWNjY2Q5Y2RjYjE2MDA4MTRkOGVlMGVhNWU5OHAtNCwKKyAgICAtMHgxLnAtNAorICB9LAorICB7IC8vIEVudHJ5IDUyOQorICAgIDB4MS4wMDJhYWVjZGQ5ZTMyMzIxYjlkMjg1ZTViYWM0YTRiZHAtNCwKKyAgICAweDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgNTMwCisgICAgLTB4MS4wMDJhYWVjZGQ5ZTMyMzIxYjlkMjg1ZTViYWM0YTRiZHAtNCwKKyAgICAtMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDUzMQorICAgIDB4MS4wMGFhY2JjZTBjODQ0ZTE2NTk4ODdiMWFhM2E5NWU4NHAtMywKKyAgICAweDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTMyCisgICAgLTB4MS4wMGFhY2JjZTBjODQ0ZTE2NTk4ODdiMWFhM2E5NWU4NHAtMywKKyAgICAtMHgxLmZmZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIDB4MS4wMGFhY2NkMDBkMmYwZDgyYmFkZDczOTZjNDM5MDkxZXAtMywKKyAgICAweDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTM0CisgICAgLTB4MS4wMGFhY2NkMDBkMmYwZDgyYmFkZDczOTZjNDM5MDkxZXAtMywKKyAgICAtMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDUzNQorICAgIDB4MS4wMGFhY2VkNDBlODQ5ODYzN2YyNTJkMmZlNTBjM2RmM3AtMywKKyAgICAweDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTM2CisgICAgLTB4MS4wMGFhY2VkNDBlODQ5ODYzN2YyNTJkMmZlNTBjM2RmM3AtMywKKyAgICAtMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDUzNworICAgIDB4MS4wMmFjY2M5NGZkNWZjOWQ1YzZkOTNmNDFmZTc4MGQ0N3AtMiwKKyAgICAweDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgLTB4MS4wMmFjY2M5NGZkNWZjOWQ1YzZkOTNmNDFmZTc4MGQ0N3AtMiwKKyAgICAtMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDUzOQorICAgIDB4MS4wMmFjY2Q5ZDA4MTAxZTY2NzRjZGYzZmM4ZWFhYmYyYXAtMiwKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgLTB4MS4wMmFjY2Q5ZDA4MTAxZTY2NzRjZGYzZmM4ZWFhYmYyYXAtMiwKKyAgICAtMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDU0MQorICAgIDB4MS4wMmFjY2ZhZDFkNzBmODA4Mzc1NTRmOWZiYjRmYmJiOXAtMiwKKyAgICAweDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTQyCisgICAgLTB4MS4wMmFjY2ZhZDFkNzBmODA4Mzc1NTRmOWZiYjRmYmJiOXAtMiwKKyAgICAtMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDU0MworICAgIDB4MS5kMDNjZjI3ODRlZGJkOTExZmVlZmNkYTRkNjU3OTlmOXAxLAorICAgIDB4MS5mZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDU0NAorICAgIC0weDEuZDAzY2YyNzg0ZWRiZDkxMWZlZWZjZGE0ZDY1Nzk5ZjlwMSwKKyAgICAtMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ1CisgICAgMHgxLmQwM2NmNjNiNmUxOWY2ZjM0YzgwMmM5NjIwMDk3MGVmcDEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgLTB4MS5kMDNjZjYzYjZlMTlmNmYzNGM4MDJjOTYyMDA5NzBlZnAxLAorICAgIC0weDEucDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDcKKyAgICAweDEuZDAzY2ZkYzFhY2FiZjU5MTgxNzY5MGNkMDMxZDJjYzdwMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDgKKyAgICAtMHgxLmQwM2NmZGMxYWNhYmY1OTE4MTc2OTBjZDAzMWQyY2M3cDEsCisgICAgLTB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIDB4MS5iNGEzNzk2MzQ5NWE3YTFjMzY4NDViMDM0NjU5OTkxNnA0LAorICAgIDB4MS5mZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIC0weDEuYjRhMzc5NjM0OTVhN2ExYzM2ODQ1YjAzNDY1OTk5MTZwNCwKKyAgICAtMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNTUxCisgICAgMHgxLmI0YTM4MDM3MDM2MzBjOGZlNzAyNjFkOTJlNTYzYTg4cDQsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgLTB4MS5iNGEzODAzNzAzNjMwYzhmZTcwMjYxZDkyZTU2M2E4OHA0LAorICAgIC0weDEucDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTMKKyAgICAweDEuYjRhMzhkZGU3N2M2MTAxZmJmOGFiNGMyNGNlNmFjMjdwNCwKKyAgICAweDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTQKKyAgICAtMHgxLmI0YTM4ZGRlNzdjNjEwMWZiZjhhYjRjMjRjZTZhYzI3cDQsCisgICAgLTB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDU1NQorICAgIDB4MS43NDllOTk2ZmY3ODA1MTMzZDVkNmI0NDAyYmQ1MmYzNHAxMCwKKyAgICAweDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTYKKyAgICAtMHgxLjc0OWU5OTZmZjc4MDUxMzNkNWQ2YjQ0MDJiZDUyZjM0cDEwLAorICAgIC0weDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTcKKyAgICAweDEuNzQ5ZWE1MTRlY2E2NWQwNmVhNzY4OGFmZjQ2Y2ZlMDlwMTAsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTU4CisgICAgLTB4MS43NDllYTUxNGVjYTY1ZDA2ZWE3Njg4YWZmNDZjZmUwOXAxMCwKKyAgICAtMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTU5CisgICAgMHgxLjc0OWViYzVlZDgwOWViYWJjY2E1MTRmNGE0ODZjNWE4cDEwLAorICAgIDB4MS4wMDAwMDJwMworICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIC0weDEuNzQ5ZWJjNWVkODA5ZWJhYmNjYTUxNGY0YTQ4NmM1YThwMTAsCisgICAgLTB4MS4wMDAwMDJwMworICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIDB4MS4wZjJlYWMxNzk0YjUyZDQyMDFmODgzMTQxNzAxMmNjMXAyMiwKKyAgICAweDEuZmZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjIKKyAgICAtMHgxLjBmMmVhYzE3OTRiNTJkNDIwMWY4ODMxNDE3MDEyY2MxcDIyLAorICAgIC0weDEuZmZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjMKKyAgICAweDEuMGYyZWJkMGE3ZmZlM2RlNmFjOTM5ZmNlZDAxMjI3MDdwMjIsCisgICAgMHgxLnA0CisgIH0sCisgIHsgLy8gRW50cnkgNTY0CisgICAgLTB4MS4wZjJlYmQwYTdmZmUzZGU2YWM5MzlmY2VkMDEyMjcwN3AyMiwKKyAgICAtMHgxLnA0CisgIH0sCisgIHsgLy8gRW50cnkgNTY1CisgICAgMHgxLjBmMmVkZWYwNTliZGViNzgxNDM2NzAwOTA4OWIyNTVhcDIyLAorICAgIDB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDU2NgorICAgIC0weDEuMGYyZWRlZjA1OWJkZWI3ODE0MzY3MDA5MDg5YjI1NWFwMjIsCisgICAgLTB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDU2NworICAgIDB4MS4xZjQzZDhkYzM5MDhiOGVkODdhNWFiYzZjM2VkMmM3M3A0NSwKKyAgICAweDEuZmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjgKKyAgICAtMHgxLjFmNDNkOGRjMzkwOGI4ZWQ4N2E1YWJjNmMzZWQyYzczcDQ1LAorICAgIC0weDEuZmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjkKKyAgICAweDEuMWY0M2ZjYzRiNjYyYzdkODQ3ODg0MDA5ZmZlNGM0YzNwNDUsCisgICAgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNTcwCisgICAgLTB4MS4xZjQzZmNjNGI2NjJjN2Q4NDc4ODQwMDlmZmU0YzRjM3A0NSwKKyAgICAtMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNTcxCisgICAgMHgxLjFmNDQ0NDk1YmU4ZTE2MTZhMWU1ZTM3YTM1NmNkNjIycDQ1LAorICAgIDB4MS4wMDAwMDJwNQorICB9LAorICB7IC8vIEVudHJ5IDU3MgorICAgIC0weDEuMWY0NDQ0OTViZThlMTYxNmExZTVlMzdhMzU2Y2Q2MjJwNDUsCisgICAgLTB4MS4wMDAwMDJwNQorICB9LAorICB7IC8vIEVudHJ5IDU3MworICAgIDB4MS40MjU5MzIzOTAyZGJjNmU2MmUzZTA3Y2UyNmNkOTA0Y3A5MSwKKyAgICAweDEuZmZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzQKKyAgICAtMHgxLjQyNTkzMjM5MDJkYmM2ZTYyZTNlMDdjZTI2Y2Q5MDRjcDkxLAorICAgIC0weDEuZmZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzUKKyAgICAweDEuNDI1OTgyY2Y1OTdjZDIwNWNlM2Q1YjRlZGIwMzE3NTZwOTEsCisgICAgMHgxLnA2CisgIH0sCisgIHsgLy8gRW50cnkgNTc2CisgICAgLTB4MS40MjU5ODJjZjU5N2NkMjA1Y2UzZDViNGVkYjAzMTc1NnA5MSwKKyAgICAtMHgxLnA2CisgIH0sCisgIHsgLy8gRW50cnkgNTc3CisgICAgMHgxLjQyNWEyM2ZjNDMyZmI1ZDU1NjAwNmE0ZDhlN2VlMTFicDkxLAorICAgIDB4MS4wMDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDU3OAorICAgIC0weDEuNDI1YTIzZmM0MzJmYjVkNTU2MDA2YTRkOGU3ZWUxMWJwOTEsCisgICAgLTB4MS4wMDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDU3OQorICAgIC1IVUdFX1ZBTEYsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTgwCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTgxCisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODMKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgNTg0CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTg1CisgICAgSFVHRV9WQUxGLAorICAgIDB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTg2CisgICAgMHgxLjcxOGY0N2Y3M2YyNmQ3MzUwYzgzZjRjNzFlMmQzMzVlcDMsCisgICAgMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTg3CisgICAgMHgxLjI2OTBmNzRkNjY4Y2UyYjNhNzU1ZmNjNWQwM2QwMDFhcDEsCisgICAgMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTg4CisgICAgMHgxLjJjZDlmZjVhZmE0NGJhOWFhNmViNTk5YmU3MjVjOWJhcDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTg5CisgICAgMHgxLjJjZDlmYzQ0ZWI5ODI1YTgwMjQ5NDg3ZjA2NGZmZDVjcDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTkwCisgICAgMHgxLjJjZDlmYWI5ZTQ0MzllNzVhYjI1MjRmZmNlMDI4M2U5cDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU5MQorICAgIDB4MS5iY2MyNzFhZGQwYmFiMTU2YThkMGEwZGY1NmIwZGI5M3AtMSwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTkyCisgICAgMHgxLjAwMDAwMnAtMTI2LAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDU5MworICAgIDB4MS5wLTEyNiwKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTQKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTk1CisgICAgMHgxLmZmZmZmOHAtMTI3LAorICAgIDB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDU5NgorICAgIDB4MS5wLTE0OCwKKyAgICAweDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNTk4CisgICAgMC4wLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTkKKyAgICAtMC4wLAorICAgIC0wLjBmCisgIH0sCisgIHsgLy8gRW50cnkgNjAwCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNjAxCisgICAgLTB4MS5wLTE0OCwKKyAgICAtMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNjAyCisgICAgLTB4MS5mZmZmZjhwLTEyNywKKyAgICAtMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNjAzCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNjA0CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNjA1CisgICAgLTB4MS4wMDAwMDJwLTEyNiwKKyAgICAtMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNjA2CisgICAgLTB4MS5iY2MyNzFhZGQwYmFiMTU2YThkMGEwZGY1NmIwZGI5M3AtMSwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDYwNworICAgIC0weDEuMmNkOWZhYjllNDQzOWU3NWFiMjUyNGZmY2UwMjgzZTlwMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDYwOAorICAgIC0weDEuMmNkOWZjNDRlYjk4MjVhODAyNDk0ODdmMDY0ZmZkNWNwMCwKKyAgICAtMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjA5CisgICAgLTB4MS4yY2Q5ZmY1YWZhNDRiYTlhYTZlYjU5OWJlNzI1YzliYXAwLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTAKKyAgICAtMHgxLjI2OTBmNzRkNjY4Y2UyYjNhNzU1ZmNjNWQwM2QwMDFhcDEsCisgICAgLTB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDYxMQorICAgIC0weDEuNzE4ZjQ3ZjczZjI2ZDczNTBjODNmNGM3MWUyZDMzNWVwMywKKyAgICAtMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjEyCisgICAgLUhVR0VfVkFMRiwKKyAgICAtMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTMKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDYxNAorICAgIC1IVUdFX1ZBTEYsCisgICAgLUhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDYxNQorICAgIDB4MS5mZmZmZDgzZThlNzI4MWE0NWU0MzJiZDU4Y2JiYzM4YXAxMjcsCisgICAgMHgxLjY1YTlmOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjE2CisgICAgLTB4MS5mZmZmZDgzZThlNzI4MWE0NWU0MzJiZDU4Y2JiYzM4YXAxMjcsCisgICAgLTB4MS42NWE5ZjhwNgorICB9LAorICB7IC8vIEVudHJ5IDYxNworICAgIEhVR0VfVkFMRiwKKyAgICAweDEuNjVhOWZhcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTgKKyAgICAtSFVHRV9WQUxGLAorICAgIC0weDEuNjVhOWZhcDYKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9zcXJ0X2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS9zcXJ0X2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jMzQxN2I4Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL3NxcnRfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsNzE4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZG91YmxlLCBkb3VibGU+IGdfc3FydF9pbnRlbF9kYXRhW10gPSB7CisgIHsgLy8gRW50cnkgMAorICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZmUwcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZmUwcC01LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDIKKyAgICAweDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmZlMHAtMjAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS42YTA5ZTY2N2YzYmNkNDU5MDIyZTUzMDRkMGIwODE5OXAtNTExLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZmUwcC01MTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZmZmZTBwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNgorICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZmUwcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmY4MHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLjZhMDllNjY3ZjNiY2VhZjlhMDk0ZDI0MDliZDcwMmUycC0zLAorICAgIDB4MS4wMDAwMDAwMDAwMDAzcC01CisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS42YTA5ZTY2N2YzYmNlYWY5YTA5NGQyNDA5YmQ3MDJlMnAtNTExLAorICAgIDB4MS4wMDAwMDAwMDAwMDAzcC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEuMDAwMDAwMDAwMDAwMTdmZmZmZmZmZmZmZmVlMHAtNTExLAorICAgIDB4MS4wMDAwMDAwMDAwMDAzcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuNmEwOWU2NjdmM2JjZWFmOWEwOTRkMjQwOWJkNzAyZTJwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwM3AxCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEuMDAwMDAwMDAwMDAwMzdmZmZmZmZmZmZmZjllMHAtMywKKyAgICAweDEuMDAwMDAwMDAwMDAwN3AtNgorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLjAwMDAwMDAwMDAwMDM3ZmZmZmZmZmZmZmY5ZTBwLTUxMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwN3AtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgMHgxLjAwMDAwMDAwMDAwMDc3ZmZmZmZmZmZmZmUzZTBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMGZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS42YTA5ZTY2N2Y0MGJmYjMzMTliODVjMDk2N2Q5Njc3N3AtMjEsCisgICAgMHgxLjAwMDAwMDAwMDA3cC00MQorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgMHgxLjAwMDAwMDNmZmZmZmY4MDAwMDAxZmZmZmZmNjBwLTEwLAorICAgIDB4MS4wMDAwMDA4cC0yMAorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLjAwMDAwMDdmZmZmZmUwMDAwMDBmZmZmZmY2MDAwMDA2cC0yMCwKKyAgICAweDEuMDAwMDAxMHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS4wMDAwMDBmZmZmZWY3ODAwMTA4N2ZmNjZkM2UxYWE3NHAtNTAzLAorICAgIDB4MS4wMDAwMDFmZmZmZGZmcC0xMDA2CisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuMDAwMDAwZmZmZmVmODAwMDEwN2ZmZjY3NjAwMWE4ZGZwLTUwOSwKKyAgICAweDEuMDAwMDAxZmZmZmVwLTEwMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS4wMDAwMDFmZmZmZmUwMDAwMDNmZmZmZjYwMDAwMWJmZnA1MCwKKyAgICAweDEuMDAwMDA0MHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS4wMDAwMDFmZmZmZmU4ODAwMDJlZmZmZjkwYmUwMTIzOHAtMTAsCisgICAgMHgxLjAwMDAwNDAwMDAwMTFwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEuNmEwYTQwZGI3ZDUxZjAwMDM4YmI0ZDE3MTYyNmMxMjNwLTUwMCwKKyAgICAweDEuMDAwMDdmZWFmcC05OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS42YTJiZDViZTY4ODMwMDI5M2YzNGMwOWE4NjQzNDhhN3AtNTExLAorICAgIDB4MS4wMDNwLTEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS42YTY1MjFiMTcxMzg2YjNlOWM5NzA4YzE4MDk0ZjgxZXAxLAorICAgIDB4MS4wMDgxMTU5ZWI3NTMxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS42YjIwMDE4NTc3ZTgzYTU0OGUxNWFlNzI1MTZhNDVlNXAxLAorICAgIDB4MS4wMTg5ZTQyODcxYjY3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS4wMzBkYzRlYjg3ODRiODAwMDA2YjMxMzkzZGVmNGI3OHAtNSwKKyAgICAweDEuMDYyNGRkMzIyYjliZHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIDB4MS4wMzBkYzRmMTY4NGEzMDAwMDAyYTIxMThiOWZmNGZjM3AtNSwKKyAgICAweDEuMDYyNGRkM2UxMTBkNHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIDB4MS4wMzBkYzRmMTY5NmY5N2ZmZmZkYmY4NWM3MGFmN2EzMnAtNSwKKyAgICAweDEuMDYyNGRkM2UxMzVmMXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS4wMzBkYzRmY2UyNjc4MDAwMDAwMDhhNmQyNjdkNDQ3ZnAtNSwKKyAgICAweDEuMDYyNGRkNTU0YjYwYXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS42ZTliMjY3NWE2NjI2N2ZmYzUwMWEyYTM1MmQ4MGNhZHAtMTEsCisgICAgMHgxLjA2OHAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS42ZTliMjY3NWE2NjI2N2ZmYzUwMWEyYTM1MmQ4MGNhZHAtMTgsCisgICAgMHgxLjA2OHAtMzUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS42ZWRlMjliMDI1YWFmMDAxMWMzMTllYmFjOGRjZTlmYXAtMTEsCisgICAgMHgxLjA2ZXAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS43MTc5ODM4OTBiNmE5N2ZmZmZmMWM5ZTZkYjQzZGMzN3A0OCwKKyAgICAweDEuMGE5ZmMzNmY1NzA1ZHA5NworICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLjc1MmRlYjAxZTFhYTQ4MDAyZGNmNWE0ZjU1YWRhYmY3cC00LAorICAgIDB4MS4wZmZmNmI4N2Y5MHAtNworICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLjc2MzU2MDIwODg1Y2NhNTM5ODkzNzJhODA0OWM2Y2NicC0xMSwKKyAgICAweDEuMTE4cC0yMQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLjdiNjM5NDVhN2M0Y2I0MDAyN2FjNGQ3OTY0YmRmZGZmcC0xMSwKKyAgICAweDEuMTkycC0yMQorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLjgzODIxYzllYzliMmE4MDAzYjY0OWVjNTc1NGZhMmU2cC02LAorICAgIDB4MS4yNTQ5NTI1NDk1MjUxcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgMHgxLjhhYzQwODY4ZjkyYzE3ZmYwZWNmOWU2YzgwMmMwMDBhcC0xMSwKKyAgICAweDEuMzA2cC0yMQorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLjFhOWRjOGY2ZGYxMDM4MGViOThmOWM4ZjhhZGEyZGMzcC0xMCwKKyAgICAweDEuMzgwcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLjFhOWRjOGY2ZGYxMDM4MGViOThmOWM4ZjhhZGEyZGMzcC0yMCwKKyAgICAweDEuMzgwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjFkNDNhZDFjMjY3Mzk3ZmYwMDAzNjZlNTA0ZWMwOTA0cDAsCisgICAgMHgxLjNkZGZjMTU0YmY2ODlwMAorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLjJkNGQyYWE2Njc3OTc0MDQ0MGE3YWM2ODNjYTkyYmU3cDAsCisgICAgMHgxLjYyOWU4ZDhkZmU4OGVwMAorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLmFlODlmOTk1YWQzYWIzZmVkMjlmM2NkZGU2Njk1NjVjcC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmM5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuYmI2N2FlODU4NGNhYTczYjI1NzQyZDcwNzhiODNiODlwLTUzNywKKyAgICAweDEuOHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLmJiNjdhZTg2YWJiMzA3ZmZmZjk0NTAyMjI0MDNjZTNmcDAsCisgICAgMHgxLjgwMDAwMDAxZmVjYjlwMQorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLjQwNGI5MmZkNmE4MTIwMDAxY2MyYTIxZWI4MmRjMzgzcC0xLAorICAgIDB4MS45MGJkMDVjOGZmMjU0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuNDNkMTM2M2Q2MWFlYzgwMDAwNmIwN2ZlMGZlZmRmYTJwLTIsCisgICAgMHgxLjk5OTk5OWQ4ODAzNjhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIDB4MS40ZTc4YWMyMmM2ZjVlODAwZmZjMTIxYjBkZWY5MzJjMHA1LAorICAgIDB4MS5iNGZmMWEwYzkzODJmcDEwCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAweDEuNTAxNDRiMWM3MmRkMTdmZjAwMTJlYmM1ODZmNGUxMGZwLTUxOSwKKyAgICAweDEuYjkzNTQ2YzY4cC0xMDM4CisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuZGZkMDUyZGJlNzY4NTdmZjBiMTU4N2NlNzlhMThhNzNwNywKKyAgICAweDEuYzFhNjlmY2NkNjExMXAxNQorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLmU0ODI2NDY4NTQ1ZDMxZjY2Y2JkMjFkYjlmNjI0OWI3cC0xLAorICAgIDB4MS5jYTdlYTcwYTUwMmJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuZTk2OTQ4ZDIyNGYwNTg1YzBmN2E4NWQzMDkzMjEyNmRwMSwKKyAgICAweDEuZDNkMWIxYmZkMTFiYnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEuZWU1MWRhMjAzMTJiZmU4YTQ3MjJiNmMwODU5MDEyOTdwLTUxMiwKKyAgICAweDEuZGQzZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjVmNzQ0MTU5ZjdlNWVmZmYxMDZkMWM1ZDVkNjRhYThkcC0xMCwKKyAgICAweDEuZTI4cC0yMAorICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgMHgxLmZkY2VjYzZmM2Q0OWU3OWUzZDM3NWIyMmUwYjlmNGIxcC0xMSwKKyAgICAweDEuZmJhcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLmZlMzVhMDU1ZmM0YmU3ZmM1ZjdkNTdkMjhlN2JkMWE3cDAsCisgICAgMHgxLmZjNmNkYjA5MzBhMjRwMQorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgMHgxLmZlYWRkMjI3OTlhYzQ4MDFmODE1OWVlOGE2ZGI1ZWYycC0xLAorICAgIDB4MS5mZDVjODNhZGJmMmE5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuZmZiZmZiZmY4MDA4MDAwMDAwMDIwMDMwMGEwMjIwNWNwLTUsCisgICAgMHgxLmZmODAwMDAwMDAzODBwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIDB4MS5mZmVmZmZiZmZkZmZkYmZlOWZlZjdmMmJmNGFiNjE5N3AtNTEyLAorICAgIDB4MS5mZmRmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuZmZmZjdmZmZlZmZmZjNmZmZjYmZmZWNmZmY3NWZmYzBwLTIxLAorICAgIDB4MS5mZmZlZmZmZmZmZmZmcC00MQorICB9LAorICB7IC8vIEVudHJ5IDYxCisgICAgMHgxLmZmZmZmM2ZmZmZkYmY3ZmYyN2NmZjlhYTRmYmFjNzFkcC0yMSwKKyAgICAweDEuZmZmZmU3ZmZmZmZmZnAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5mZmZmZjNmZmZmZGJmN2ZmMjdjZmY5YWE0ZmJhYzcxZHAtMjMsCisgICAgMHgxLmZmZmZlN2ZmZmZmZmZwLTQ1CisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAweDEuZmZmZmZmODAwMDAwZTAwMDAwMzdmZmZmZGNmZmZmZGVwLTQ4OCwKKyAgICAweDEuZmZmZmZmMDAwMDAxZXAtOTc1CisgIH0sCisgIHsgLy8gRW50cnkgNjQKKyAgICAweDEuZmZmZmZmODAwMDAxMDAwMDAwM2ZmZmZmY2ZmZmZmZDRwLTI2LAorICAgIDB4MS5mZmZmZmYwMDAwMDIycC01MQorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgMHgxLmZmZmZmZmY5ZmZmZmY3ZjZmZmZmZTdlNGZmZWY5MzlhcC0yMSwKKyAgICAweDEuZmZmZmZmZjNmZmZmZnAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS5mZmZmZmZmZTAwMDAxN2ZmMDAwMDE3ZmVmZjcwMjNmZXAtNSwKKyAgICAweDEuZmZmZmZmZmMwMDAwM3AtOQorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgMHgxLmZmZmZmZmZlMDAwMDE3ZmYwMDAwMTdmZWZmNzAyM2ZlcC02LAorICAgIDB4MS5mZmZmZmZmYzAwMDAzcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgMHgxLmZmZmZmZmZlMDAwMDE3ZmYwMDAwMTdmZWZmNzAyM2ZlcC0yMSwKKyAgICAweDEuZmZmZmZmZmMwMDAwM3AtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS5mZmZmZmZmZTAwMDAxN2ZmMDAwMDE3ZmVmZjcwMjNmZXAtMTU2LAorICAgIDB4MS5mZmZmZmZmYzAwMDAzcC0zMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS5mZmZmZmZmZTAwMDAxN2ZmMDAwMDE3ZmVmZjcwMjNmZXAtNTExLAorICAgIDB4MS5mZmZmZmZmYzAwMDAzcC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAweDEuZmZmZmZmZmUzZmZmZjdmZjNiZmZmOGZmNTQ2ZmY2Y2ZwLTIxLAorICAgIDB4MS5mZmZmZmZmYzdmZmZmcC00MQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgMHgxLjZhMDllNjY3ZjNiODU4MDE5YjVjOTllMzA5YjkwODBhcC0zLAorICAgIDB4MS5mZmZmZmZmZmZmZjM3cC02CisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAweDEuZmZmZmZmZmZmZmZkNzdmZmZmZmZmZmZlNjVlZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmYWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5mZmZmZmZmZmZmZmQ3N2ZmZmZmZmZmZmU2NWVmZmZmZnAtNSwKKyAgICAweDEuZmZmZmZmZmZmZmZhZnAtOQorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgMHgxLmZmZmZmZmZmZmZmZDc3ZmZmZmZmZmZmZTY1ZWZmZmZmcC01MTEsCisgICAgMHgxLmZmZmZmZmZmZmZmYWZwLTEwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS5mZmZmZmZmZmZmZmYzN2ZmZmZmZmZmZmZkOGVmZmZmZnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmU3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmJmZmZmZnAtNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtNworICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmYmZmZmZmcC0yMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmJmZmZmZnAtNTExLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIxCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjdmZmZmZmZmZmZmZmZlZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmN2ZmZmZmZmZmZmZmZmVmZmZmZnAtNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLmZmZmZmZmZmZmZmZmY3ZmZmZmZmZmZmZmZmZWZmZmZmcC0yMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS5mZmZmZmZmZmZmZmZmN2ZmZmZmZmZmZmZmZmVmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NAorICAgIDB4MS4zMDZmZTBhMzFiNzE0MTlkZGVjNzg4Nzg5ZmI0NTgwYXAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgMHgxLjMwNmZlMGEzMWI3MTQ4NTgwNmFkZGYyZDhiNWE4YjYwcC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNicC0yCisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAweDEuMzA2ZmUwYTMxYjcxNGYxMjJlOTQzNWUyNzZkYWIwYjlwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2NwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIDB4MS4zMDZmZTBhMzFiNzE1NWNjNTY3YThjOTc2MjM0YzgxN3AtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjZHAtMgorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLjMwNmZlMGEzMWI3MTVjODY3ZTYwZTM0YzRkNjhkMTc5cC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAweDEuYWU4OWY5OTVhZDNhYmQ4MjUxYTQ1NWI5NzFhNTM4ZGJwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2FwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS5hZTg5Zjk5NWFkM2FjNzA1ZDBhOTZlOTRmY2FiNGExYXAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLmFlODlmOTk1YWQzYWQwODk0ZmFlODc3MDg3N2I4YTFicC0xLAorICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuYWU4OWY5OTVhZDNhZGEwY2NlYjNhMDRjMTIxNWY4ZGRwLTEsCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5hZTg5Zjk5NWFkM2FlMzkwNGRiOGI5Mjc5YzdhOTY1ZnAtMSwKKyAgICAweDEuNmEwOWU2NjdmM2JjZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLjMwNmZlMGEzMWI3MTQxOWRkZWM3ODg3ODlmYjQ1ODBhcDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2FwMAorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgMHgxLjMwNmZlMGEzMWI3MTQ4NTgwNmFkZGYyZDhiNWE4YjYwcDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2JwMAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjMwNmZlMGEzMWI3MTRmMTIyZTk0MzVlMjc2ZGFiMGI5cDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2NwMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgMHgxLjMwNmZlMGEzMWI3MTU1Y2M1NjdhOGM5NzYyMzRjODE3cDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwMAorICB9LAorICB7IC8vIEVudHJ5IDk4CisgICAgMHgxLjMwNmZlMGEzMWI3MTVjODY3ZTYwZTM0YzRkNjhkMTc5cDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2VwMAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmFlODlmOTk1YWQzYWJkODI1MWE0NTViOTcxYTUzOGRicDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2FwMQorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS5hZTg5Zjk5NWFkM2FjNzA1ZDBhOTZlOTRmY2FiNGExYXAwLAorICAgIDB4MS42YTA5ZTY2N2YzYmNicDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuYWU4OWY5OTVhZDNhZDA4OTRmYWU4NzcwODc3YjhhMWJwMCwKKyAgICAweDEuNmEwOWU2NjdmM2JjY3AxCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLmFlODlmOTk1YWQzYWRhMGNjZWIzYTA0YzEyMTVmOGRkcDAsCisgICAgMHgxLjZhMDllNjY3ZjNiY2RwMQorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIDB4MS5hZTg5Zjk5NWFkM2FlMzkwNGRiOGI5Mjc5YzdhOTY1ZnAwLAorICAgIDB4MS42YTA5ZTY2N2YzYmNlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuZmZmZmZmZmZmZmZmZjdmZmZmZmZmZmZmZmZlZmZmZmZwLTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEucC0zLAorICAgIDB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZmZmZTBwLTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc2NjBhMjNwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTMsCisgICAgMHgxLjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDBiMDgxOTlwLTMsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjdmZmZmZmZmZmZmZmZlZmZmZmZwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEucC0yLAorICAgIDB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZmZmZTBwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc2NjBhMjNwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTIsCisgICAgMHgxLjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDBiMDgxOTlwLTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjdmZmZmZmZmZmZmZmZlZmZmZmZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAweDEucC0xLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZmZmZTBwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc2NjBhMjNwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTEsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDBiMDgxOTlwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjdmZmZmZmZmZmZmZmZlZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZmUwcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIDB4MS42YTA5ZTY2N2YzYmNjMzYwOGI2MTczOTdmNzY2MGEyM3AwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLjZhMDllNjY3ZjNiY2Q0NTkwMjJlNTMwNGQwYjA4MTk5cDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmN2ZmZmZmZmZmZmZmZmVmZmZmZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEucDEsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZmUwcDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIDB4MS5wLTUzNywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZmJmZmZmZnAtNTEyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLnAtNTExLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgMHgxLjAwMDAwMDAwMDAwMDA3ZmZmZmZmZmZmZmZmZTBwLTUxMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEzNgorICAgIDB4MS5wLTUzNywKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIDB4MS4yNzlhNzQ1OTAzMzFkNzRiYzAzZGFlN2UxNmRlZDE1YnAtNTEyLAorICAgIDB4MS41NTU1NTU1NTU1NTU4cC0xMDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLmEyMGJkNzAwYzJjM2U2NDg3MjI4MWRmODg3ZTNjYmYxcC01MTIsCisgICAgMHgxLjU1NTU1NTU1NTU1NTZwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZiZmZmZmZwLTUxMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5mZmZmZmZmZmVjZTA5ZmZmZmZhNDk0ZjllNmZjOTVlZHAtMSwKKyAgICAweDEuZmZmZmZmZmZkOWMxNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIDB4MS5mZmZmZmZmZmVjZTBhN2ZmZmZhNDk1NDY2NDZjOTVmMXAtMSwKKyAgICAweDEuZmZmZmZmZmZkOWMxNXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS5mZmZmZmZmZmVjZTBhZmZmZmZhNDk1OTJlMWJjOTVmNXAtMSwKKyAgICAweDEuZmZmZmZmZmZkOWMxNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIDB4MS5mZmZmZmZmZmVjZTBiN2ZmZmZhNDk1ZGY1ZWVjOTVmYXAtMSwKKyAgICAweDEuZmZmZmZmZmZkOWMxN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS5mZmZmZmZmZmVjZTBiZmZmZmZhNDk2MmJkYmZjOTVmZXAtMSwKKyAgICAweDEuZmZmZmZmZmZkOWMxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS5mZmZmZmZmZmVhZTM1ZmZmZmY5MDkyYTMyNmZiNjdjOHAtMSwKKyAgICAweDEuZmZmZmZmZmZkNWM2Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS5mZmZmZmZmZmVhZTM2N2ZmZmY5MDkyZjc5OTZiNjdjZXAtMSwKKyAgICAweDEuZmZmZmZmZmZkNWM2ZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIDB4MS5mZmZmZmZmZmVhZTM2ZmZmZmY5MDkzNGMwYmJiNjdkM3AtMSwKKyAgICAweDEuZmZmZmZmZmZkNWM2ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS5mZmZmZmZmZmVhZTM3N2ZmZmY5MDkzYTA3ZGViNjdkOHAtMSwKKyAgICAweDEuZmZmZmZmZmZkNWM2ZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIDB4MS5mZmZmZmZmZmVhZTM3ZmZmZmY5MDkzZjRlZmZiNjdkZHAtMSwKKyAgICAweDEuZmZmZmZmZmZkNWM3MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmN2ZmZmZmZmZmZmZmZmVmZmZmZnA1MTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIEhVR0VfVkFMLAorICAgIEhVR0VfVkFMCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLmZmZmZmZmZmZmZmZmY3ZmZmZmZmZmZmZmZmZWZmZmZmcDUxMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgMHgxLmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZmYmZmZmZmcDUxMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLmM1YmY4OTFiNGVmNmE3ZmM3ZGMxMWNjZjk1NTk1MzZlcDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDB4MS40MGQ5MzFmZjYyNzA1N2EyZGRkZjdjODdlZGI2MzY2NHAwLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmZlMHAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS5mZmZmZmZmZmZmZmZmN2ZmZmZmZmZmZmZmZmVmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIDB4MS5jNWJmODkxYjRlZjZhN2ZjN2RjMTFjY2Y5NTU5NTM2ZXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZmUwcC01MTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAweDEucC01MTEsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZiZmZmZmZwLTUxMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIDB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZWZmZmZmZnAtNTEyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC01MzcsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjUKKyAgICAweDEucC01MzcsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgMHgxLnAxLAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAweDEucDIsCisgICAgMHgxLjBwNAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS44MHAxLAorICAgIDB4MS4ycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAweDEuNDBwMiwKKyAgICAweDEuOXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLnAtMSwKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIDB4MS5jMHAyLAorICAgIDB4MS44ODBwNQorICB9LAorICB7IC8vIEVudHJ5IDE3NAorICAgIDB4MS40MHAzLAorICAgIDB4MS45cDYKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS9zcXJ0Zl9pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvc3FydGZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJkMDcxNDMKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvc3FydGZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsNzEwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworc3RhdGljIGRhdGFfMV8xX3Q8ZmxvYXQsIGZsb2F0PiBnX3NxcnRmX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgMHgxLnAtMSwKKyAgICAweDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS5wLTEwLAorICAgIDB4MS5wLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDB4MS4wMDAwMDBmZmZmZmY4MDAwMDA3ZmZmZmY2MDAwMDBkZnAtMSwKKyAgICAweDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS4wMDAwMDBmZmZmZmY4MDAwMDA3ZmZmZmY2MDAwMDBkZnAtMjAsCisgICAgMHgxLjAwMDAwMnAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMHgxLjAwMDAwMGZmZmZmZjgwMDAwMDdmZmZmZjYwMDAwMGRmcC02MywKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLjZhMDllYWE2MTE2OWEzYjc2Zjk5ZWEwZDM2NGVmZDkxcC02MywKKyAgICAweDEuMDAwMDA2cC0xMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgMHgxLjZhMGEwNTg0Y2MzMzdhYmM4NzQwMjUzZGI0NWExMmY2cC0zLAorICAgIDB4MS4wMDAwMmNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLjZhMGExZWY5N2I1MWE4ZGVmNDNkYmI1ZGM3ZjM3ZmYwcC0xMSwKKyAgICAweDEuMDAwMDUwcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDgKKyAgICAweDEuNmEwYTFlZjk3YjUxYThkZWY0M2RiYjVkYzdmMzdmZjBwLTE4LAorICAgIDB4MS4wMDAwNTBwLTM1CisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS42YTBhMzU5YTE1N2EwYjliZDRmZjI4NmEyZWFiMmVkZnAtMjEsCisgICAgMHgxLjAwMDA3MHAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS42YTBhOTg5OGE3NGEwMTlhN2NjMTgxNTc4MTRlMzlkOXAtNiwKKyAgICAweDEuMDAwMGZjcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLjZhMGE5ODk4YTc0YTAxOWE3Y2MxODE1NzgxNGUzOWQ5cC01OSwKKyAgICAweDEuMDAwMGZjcC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIDB4MS42YTBhOTg5OGE3NGEwMTlhN2NjMTgxNTc4MTRlMzlkOXAtNjEsCisgICAgMHgxLjAwMDBmY3AtMTIxCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEuNmEwYTk4OThhNzRhMDE5YTdjYzE4MTU3ODE0ZTM5ZDlwMSwKKyAgICAweDEuMDAwMGZjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNAorICAgIDB4MS42YTBhYjM3NzU1MmFkZjcxNDEzYmRjNWZkZjJkM2UwZHA2MywKKyAgICAweDEuMDAwMTIycDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLjZhMGIxZDg3ZjAwZTk5ODUxYTlkY2I2ZmI5YzJkNTZlcC0zLAorICAgIDB4MS4wMDAxYjhwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS42YTBiYTk4OTMwYzVjYjU4NzIyZjA2ZTE1YzMzMGY5NXAtMSwKKyAgICAweDEuMDAwMjdlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEuNmEwYmVhOTZhMTQ0YmYyYTljODk5MzgwZjExMDM5ZDFwMCwKKyAgICAweDEuMDAwMmRhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS42YTBkM2M5MzVmYjc3NzY0YjRjYzNmMzRlMTE3YTg5MXAtNDksCisgICAgMHgxLjAwMDRiOHAtOTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS42YTBkNjcwMDIyMjMyN2YxMDUzZTRhNDI5YWRiMDE1ZXAtMywKKyAgICAweDEuMDAwNGY0cC01CisgIH0sCisgIHsgLy8gRW50cnkgMjAKKyAgICAweDEuNmEwZGM4OTNjZTcwNWFjMzViODViYjQ5ZTNhYTFiYWRwMCwKKyAgICAweDEuMDAwNTdlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS4wMDFmZmUwMDNmZjYwMWJmYWMxMDdjYTZiMjlhMGMzMXAtMjAsCisgICAgMHgxLjAwNDBwLTQwCisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEuNmEzNzI0ZDEwNzYyYzg2YTcxZmU1NTdkMTMzMzYxMTFwLTIxLAorICAgIDB4MS4wMDQwcC00MQorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLjZhMzhhOTg4NDU1N2RhNTUxZjNlYzIxZjc4NTc3OWQ3cDYsCisgICAgMHgxLjAwNDIyNnAxMworICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgMHgxLjZhYmJlYjgyZGJmZDhmMjBmNTkyM2FiMzg5ZWVmN2YzcC0xMSwKKyAgICAweDEuMDBmY3AtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS4wMDg1ZGQwMDRmNzFmNTM2MmRkNmE1ZTA5YTljZWU3NHAtMTAsCisgICAgMHgxLjAxMGNwLTIwCisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAweDEuMDA4NWRkMDA0ZjcxZjUzNjJkZDZhNWUwOWE5Y2VlNzRwLTIwLAorICAgIDB4MS4wMTBjcC00MAorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLjZjZGI3MDdlMDI3M2NjOGUyYTFkOTlhYTNhZDY3YjY2cDAsCisgICAgMHgxLjA0MDA2MnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuNmUxNGZiMzNhZjVkMTk5NDUxYTQ0YzU5MmQxOGY5ZTFwLTExLAorICAgIDB4MS4wNWMwcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgMHgxLjZlM2VlZGZmZjJmOWQ4OGNjODM3ZDM2YjE3YmNlNTQ4cC0xMSwKKyAgICAweDEuMDVmY3AtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS43MDg3MTNiYjMxYzE3NjI3NDg5OTgzYTYzOTdmZjUyOXAtMSwKKyAgICAweDEuMDk0MjUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuNzIxNGMxMjVjYjhiMjI4NDQ1OWRhYTIzMGE0N2I5ZGZwLTExLAorICAgIDB4MS4wYjgwcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgMHgxLjc1MjhjZTY5NGM2OTJjZTZlY2YzNDBmOTZlN2FjNDEwcC05LAorICAgIDB4MS4wZmY3ZjhwLTE3CisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEuNzUyYjkyNjM1ODJhMmUzYWIyYTM2ZWU5OGVkMzRhMTlwLTExLAorICAgIDB4MS4wZmZjcC0yMQorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLjc1MmI5MjYzNTgyYTJlM2FiMmEzNmVlOThlZDM0YTE5cC00OSwKKyAgICAweDEuMGZmY3AtOTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS43NTJiOTI2MzU4MmEyZTNhYjJhMzZlZTk4ZWQzNGExOXAtNjMsCisgICAgMHgxLjBmZmNwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLjc1MmI5MjYzNTgyYTJlM2FiMmEzNmVlOThlZDM0YTE5cC02OCwKKyAgICAweDEuMGZmY3AtMTM1CisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEuNzUyYmNkNjI5YzgzZTQzNzhlNzdlOGZiMDllMGRmYjhwMCwKKyAgICAweDEuMGZmYzU2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS43NTJjZGJhYzJlYzZmZGRiNjljYzJlMDBiZGYxZmQwMnA0LAorICAgIDB4MS4wZmZkZTBwOQorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgMHgxLjc1MmNmNDVlNjY1YzM3YjdkNzdjOGM5ZmI1MGNkNjc4cC00LAorICAgIDB4MS4wZmZlMDRwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS43NTJjZjQ1ZTY2NWMzN2I3ZDc3YzhjOWZiNTBjZDY3OHAtNjMsCisgICAgMHgxLjBmZmUwNHAtMTI1CisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuNzUyY2Y0NWU2NjVjMzdiN2Q3N2M4YzlmYjUwY2Q2NzhwMSwKKyAgICAweDEuMGZmZTA0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS43NTJkNmE1Yzc1Y2YzYjE2ZTVkZTlhMjI4ZjNlZjRkYXAxLAorICAgIDB4MS4wZmZlYjBwMworICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLjc1MmQ2YTVjNzVjZjNiMTZlNWRlOWEyMjhmM2VmNGRhcDI4LAorICAgIDB4MS4wZmZlYjBwNTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS43NTJlMTA1ZjcwMTg5NjI4YjBkMmQ2ZTE3Y2EyYjljNXAxLAorICAgIDB4MS4wZmZmYTJwMworICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLjc1MmU0YjVlNGY5NWY2YTQ1YmNmZDg3MjFjY2JmOTUwcC00LAorICAgIDB4MS4wZmZmZjhwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIDB4MS43NTJlNGI1ZTRmOTVmNmE0NWJjZmQ4NzIxY2NiZjk1MHAtNTMsCisgICAgMHgxLjBmZmZmOHAtMTA1CisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAweDEuNzUyZTRiNWU0Zjk1ZjZhNDViY2ZkODcyMWNjYmY5NTBwLTYxLAorICAgIDB4MS4wZmZmZjhwLTEyMQorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLjc1MmU0YjVlNGY5NWY2YTQ1YmNmZDg3MjFjY2JmOTUwcC02MiwKKyAgICAweDEuMGZmZmY4cC0xMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS43NTJlNGI1ZTRmOTVmNmE0NWJjZmQ4NzIxY2NiZjk1MHAxLAorICAgIDB4MS4wZmZmZjhwMworICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLjc4NDIyMDUwMWMxZmM5NWQ3ZTIwNDMzMzlkMzU0NTg4cC0xLAorICAgIDB4MS4xNDgxMjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIDB4MS43OGNjMGEwMDA1NGQ3NjgzMTY1ZWEyODE1YjZiOGQxNHAtMTEsCisgICAgMHgxLjE1NGNwLTIxCisgIH0sCisgIHsgLy8gRW50cnkgNTIKKyAgICAweDEuN2VhODMzNmUwZjI2OGY2ZDA1ZjA5MzRhNjdiNDg0MGFwLTMyLAorICAgIDB4MS4xZGZkMzRwLTYzCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEuMGVjMTI3MDAxNGQ0MmU1NDI0YTc3ODBiNjdiNDk3NGNwLTEwLAorICAgIDB4MS4xZTVjcC0yMAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLjBmN2EzOTc0YzBhMDM2ZWFkNDVhMDAxN2Q0NzgyZTFhcC0xMCwKKyAgICAweDEuMWZlNHAtMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIDB4MS4xMDIwN2YwMDAwNzdmMWFiOTA5ZmI3YjUzMTRmODM3ZnAtMSwKKyAgICAweDEuMjE0NTEycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuOGM0NDg3MDAwMDQyZGQyODEzZGQ3MzBkMWE3ZjNjYWJwMSwKKyAgICAweDEuMzJiMjBhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIDB4MS44ZGM0MTUzN2YwYjYzOWNiMzdhZWRmYThkNTMxZDRjZnAtNTEsCisgICAgMHgxLjM1MDRlMHAtMTAxCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuOGZhZTBjMTVhZDM4OWUyNDg1MjQ5N2U4MDkzNWU0YjVwLTYzLAorICAgIDB4MS4zOHAtMTI1CisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuOTViOGMwZmZmZjg2ODk5NGY5Y2UxNGIxMWFhMWNmZDVwLTIsCisgICAgMHgxLjQxODEwY3AtMworICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLmE2NDRmZTAwMDYwZWM4M2E1MzkzYzNjM2NkMzlmYzk1cC0xLAorICAgIDB4MS41YzQzYzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIDB4MS5iNzA3MDQwNmE0NTI3NTQzZTdlMWE5M2MzNGEyZDZmN3AtMSwKKyAgICAweDEuNzg3NDg4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEuMzgzNmIyZmZmZjg2M2NiYjU4YTBmYjJiY2FkODU0NzRwLTEsCisgICAgMHgxLjdjYzU2MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgMHgxLmJiNjdhZDVkZWE1NWViYWYyMWZhYTliYjEwZWFiZGYxcC0yMSwKKyAgICAweDEuN2ZmZmZlcC00MQorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLmNlN2U5NjAwMDAwN2JmZDBlZDk3MTMwMzYwYzI5OGRkcC0xLAorICAgIDB4MS5hMWM2OTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIDB4MS5kMTBkNzNmODA1OTRkM2Q3M2ZhZTFmMmQ2YTEzMDI0N3AwLAorICAgIDB4MS5hNjY4ZjBwMQorICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgMHgxLmQ5NGMwOTBhZmViMDJiOTJlNzQxYmIyMzYxODZiYzg2cC0xLAorICAgIDB4MS5iNTg1MDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIDB4MS5kZTQzMTUwMDAwMTMwMDhiZjEyZTQ1NGQ2NzJmZmJkZnAtMiwKKyAgICAweDEuYmViZjRhcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAweDEuZTc2OGQyOGNmMWUzOTgxNTcwZTg3NWFmMTEzNTQ2YzdwLTIxLAorICAgIDB4MS5jZmZmZmVwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAweDEuZTdmMGNjNWE3N2E3ODNiZTMzNmY5YjUxMjc3MDlhY2VwLTEsCisgICAgMHgxLmQxMDMwNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgMHgxLmYzMTY5MDI5Yzk4NjdmMTAxNDI3NTBkYzUxZDU4NDNkcC0xLAorICAgIDB4MS5lNjgwN2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIDB4MS5mNmViNjJkMjc3MzBjYWZmODlhOGQ3OGM3MzE0OTM0YXAtNjAsCisgICAgMHgxLmVlcC0xMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS5mOGYzOTM1ZDJlY2M3MjU2YTE0ZDdjODgxNjI3NWM2MHAtMjEsCisgICAgMHgxLmYxZmZmZXAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIDB4MS5mOTRhOGU4NTI0ZWNlODYyMzQzMmFjZTc1NTcxNzg1ZXAtMSwKKyAgICAweDEuZjJhYjllcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuZmFhMHAtMSwKKyAgICAweDEuZjU0ZTcycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAweDEuZmVlZmI2OThmYzAyZTcxYzIzNzdkZWIyMjU4MzdhODdwLTYzLAorICAgIDB4MS5mZGRmZmVwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLmZmZmZmY2ZmZmZmZGJmZmZmYzlmZmZmOWFiZmZmMmI1cC0xLAorICAgIDB4MS5mZmZmZmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIDB4MS5mZmZmZmRmZmZmZmVmZmZmZmVmZmZmZmViZmZmZmUzZnAtNCwKKyAgICAweDEuZmZmZmZjcC03CisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAweDEuZmZmZmZkZmZmZmZlZmZmZmZlZmZmZmZlYmZmZmZlM2ZwLTIxLAorICAgIDB4MS5mZmZmZmNwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAweDEuZmZmZmZkZmZmZmZlZmZmZmZlZmZmZmZlYmZmZmZlM2ZwLTYzLAorICAgIDB4MS5mZmZmZmNwLTEyNQorICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLmZmZmZmZWZmZmZmZmJmZmZmZmRmZmZmZmViZmZmZmYxcC00LAorICAgIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIDB4MS5mZmZmZmVmZmZmZmZiZmZmZmZkZmZmZmZlYmZmZmZmMXAwLAorICAgIDB4MS5mZmZmZmVwMQorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLjMwNmZkZWM4ZGM5YWQzMmI1NTFlOTI1ODViNzA5NGYzcC0xLAorICAgIDB4MS42YTA5ZTJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIDB4MS4zMDZmZGZhMDIxOThhMTNkOTQ2YWQ4MThlYzYxNTU0N3AtMSwKKyAgICAweDEuNmEwOWU0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuMzA2ZmUwNzc2Njk1ZDcxN2UxZTExOTU4ZDU2NTQxY2ZwLTEsCisgICAgMHgxLjZhMDllNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgMHgxLjMwNmZlMTRlYWI5Mjc0YmEzZWM0M2Q5NjY5NTlmNDdjcC0xLAorICAgIDB4MS42YTA5ZThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS4zMDZmZTIyNWYwOGU3YTI0YWM1NzJjNGI4NTc5Nzg1ZnAtMSwKKyAgICAweDEuNmEwOWVhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAweDEuYWU4OWY2ZjZmZTA4N2FjMzAyMTMxZjM4NDBkYTdhOTBwLTEsCisgICAgMHgxLjZhMDllMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLmFlODlmODI3NmRlYThjN2FjY2I4MjMzOTk3M2YyYWY5cC0xLAorICAgIDB4MS42YTA5ZTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS5hZTg5Zjk1N2RkY2JjNmVkOTg2Y2YxYTBlNzU0ZDE3MHAtMSwKKyAgICAweDEuNmEwOWU2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuYWU4OWZhODg0ZGFjMmExYjY2ZmEzMjQzOTRkM2M1OTBwLTEsCisgICAgMHgxLjZhMDllOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgMHgxLmFlODlmYmI4YmQ4YmI2MDQzYTI4OGNmMGI0ZWVmMGFlcC0xLAorICAgIDB4MS42YTA5ZWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS4zMDZmZGVjOGRjOWFkMzJiNTUxZTkyNTg1YjcwOTRmM3AwLAorICAgIDB4MS42YTA5ZTJwMAorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLjMwNmZkZmEwMjE5OGExM2Q5NDZhZDgxOGVjNjE1NTQ3cDAsCisgICAgMHgxLjZhMDllNHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEuMzA2ZmUwNzc2Njk1ZDcxN2UxZTExOTU4ZDU2NTQxY2ZwMCwKKyAgICAweDEuNmEwOWU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS4zMDZmZTE0ZWFiOTI3NGJhM2VjNDNkOTY2OTU5ZjQ3Y3AwLAorICAgIDB4MS42YTA5ZThwMAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjMwNmZlMjI1ZjA4ZTdhMjRhYzU3MmM0Yjg1Nzk3ODVmcDAsCisgICAgMHgxLjZhMDllYXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuYWU4OWY2ZjZmZTA4N2FjMzAyMTMxZjM4NDBkYTdhOTBwMCwKKyAgICAweDEuNmEwOWUycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5hZTg5ZjgyNzZkZWE4YzdhY2NiODIzMzk5NzNmMmFmOXAwLAorICAgIDB4MS42YTA5ZTRwMQorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmFlODlmOTU3ZGRjYmM2ZWQ5ODZjZjFhMGU3NTRkMTcwcDAsCisgICAgMHgxLjZhMDllNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmFlODlmYTg4NGRhYzJhMWI2NmZhMzI0Mzk0ZDNjNTkwcDAsCisgICAgMHgxLjZhMDllOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLmFlODlmYmI4YmQ4YmI2MDQzYTI4OGNmMGI0ZWVmMGFlcDAsCisgICAgMHgxLjZhMDllYXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLmZmZmZmZWZmZmZmZmJmZmZmZmRmZmZmZmViZmZmZmYxcC00LAorICAgIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEucC0zLAorICAgIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuMDAwMDAwZmZmZmZmODAwMDAwN2ZmZmZmNjAwMDAwZGZwLTMsCisgICAgMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS42YTA5ZTViMmVlYzk2N2NkOTdiMmVmZjc1ZjQ3MTQ5M3AtMywKKyAgICAweDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0zLAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAweDEuNmEwOWU3ZDFmZGEyN2JmNzdkNDUyNzJkZDJkODNhNGJwLTMsCisgICAgMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5mZmZmZmVmZmZmZmZiZmZmZmZkZmZmZmZlYmZmZmZmMXAtMywKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLnAtMiwKKyAgICAweDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLjAwMDAwMGZmZmZmZjgwMDAwMDdmZmZmZjYwMDAwMGRmcC0yLAorICAgIDB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuNmEwOWU1YjJlZWM5NjdjZDk3YjJlZmY3NWY0NzE0OTNwLTIsCisgICAgMHgxLmZmZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtMiwKKyAgICAweDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLjZhMDllN2QxZmRhMjdiZjc3ZDQ1MjcyZGQyZDgzYTRicC0yLAorICAgIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuZmZmZmZlZmZmZmZmYmZmZmZmZGZmZmZmZWJmZmZmZjFwLTIsCisgICAgMHgxLmZmZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS5wLTEsCisgICAgMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS4wMDAwMDBmZmZmZmY4MDAwMDA3ZmZmZmY2MDAwMDBkZnAtMSwKKyAgICAweDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLjZhMDllNWIyZWVjOTY3Y2Q5N2IyZWZmNzVmNDcxNDkzcC0xLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTEsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS42YTA5ZTdkMWZkYTI3YmY3N2Q0NTI3MmRkMmQ4M2E0YnAtMSwKKyAgICAweDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLmZmZmZmZWZmZmZmZmJmZmZmZmRmZmZmZmViZmZmZmYxcC0xLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLjAwMDAwMGZmZmZmZjgwMDAwMDdmZmZmZjYwMDAwMGRmcDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgMHgxLjZhMDllNWIyZWVjOTY3Y2Q5N2IyZWZmNzVmNDcxNDkzcDAsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLjZhMDllN2QxZmRhMjdiZjc3ZDQ1MjcyZGQyZDgzYTRicDAsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLmZmZmZmZWZmZmZmZmJmZmZmZmRmZmZmZmViZmZmZmYxcDAsCisgICAgMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLnAxLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDEyOAorICAgIDB4MS4wMDAwMDBmZmZmZmY4MDAwMDA3ZmZmZmY2MDAwMDBkZnAxLAorICAgIDB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTc1LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIDB4MS5mZmZmZmRmZmZmZmVmZmZmZmVmZmZmZmViZmZmZmUzZnAtNjQsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLnAtNjMsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLjAwMDAwMGZmZmZmZjgwMDAwMDdmZmZmZjYwMDAwMGRmcC02MywKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTc1LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIDB4MS4yNzlhNzU4MDlkYTU4YTA4MTEyNDNjMDQ4NDliY2NiMnAtNjQsCisgICAgMHgxLjU1NTU1OHAtMTI4CisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLmEyMGJkNjJmYmNkODJiMWQ2NWUyMDFiNjE2MGJiOTdmcC02NCwKKyAgICAweDEuNTU1NTU0cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuZmZmZmZkZmZmZmZlZmZmZmZlZmZmZmZlYmZmZmZlM2ZwLTY0LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIDB4MS5mZmZmZmNmZmZmZmRiZmZmZmM5ZmZmZjlhYmZmZjJiNXAtMSwKKyAgICAweDEuZmZmZmZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM5CisgICAgMHgxLmZmZmZmZGZmZmZmZWZmZmZmZWZmZmZmZWJmZmZmZTNmcC0xLAorICAgIDB4MS5mZmZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDAKKyAgICAweDEuZmZmZmZlZmZmZmZmYmZmZmZmZGZmZmZmZWJmZmZmZjFwLTEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIDB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAweDEuMDAwMDAwZmZmZmZmODAwMDAwN2ZmZmZmNjAwMDAwZGZwMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAweDEuZmZmZmZjZmZmZmZkYmZmZmZjOWZmZmY5YWJmZmYyYjVwLTEsCisgICAgMHgxLmZmZmZmYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS5mZmZmZmRmZmZmZmVmZmZmZmVmZmZmZmViZmZmZmUzZnAtMSwKKyAgICAweDEuZmZmZmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgMHgxLmZmZmZmZWZmZmZmZmJmZmZmZmRmZmZmZmViZmZmZmYxcC0xLAorICAgIDB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMHgxLjAwMDAwMGZmZmZmZjgwMDAwMDdmZmZmZjYwMDAwMGRmcDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLmZmZmZmZWZmZmZmZmJmZmZmZmRmZmZmZmViZmZmZmYxcDYzLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgSFVHRV9WQUxGLAorICAgIEhVR0VfVkFMRgorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS5mZmZmZmVmZmZmZmZiZmZmZmZkZmZmZmZlYmZmZmZmMXA2MywKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIDB4MS5mZmZmZmRmZmZmZmVmZmZmZmVmZmZmZmViZmZmZmUzZnA2MywKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS5jNWJmODk4NTNhOTRkNDczYzg4ZjBkYzg1ZjE4N2E2ZXAwLAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIDB4MS40MGQ5MzI0YTQ4MTM3YmI0NWU4OTFlMWJkZmZlNjRjMnAwLAorICAgIDB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDB4MS4wMDAwMDBmZmZmZmY4MDAwMDA3ZmZmZmY2MDAwMDBkZnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIDB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuZmZmZmZlZmZmZmZmYmZmZmZmZGZmZmZmZWJmZmZmZjFwLTEsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NworICAgIDB4MS5jNWJmODk4NTNhOTRkNDczYzg4ZjBkYzg1ZjE4N2E2ZXAtMSwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgMHgxLjAwMDAwMGZmZmZmZjgwMDAwMDdmZmZmZjYwMDAwMGRmcC02MywKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAweDEucC02MywKKyAgICAweDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEuZmZmZmZkZmZmZmZlZmZmZmZlZmZmZmZlYmZmZmZlM2ZwLTY0LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIDB4MS5mZmZmZmJmZmZmZmJmZmZmZjdmZmZmZWJmZmZmYzdmZnAtNjQsCisgICAgMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLnAtNzQsCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC03NSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAwLjAsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0wLjAsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEucDEsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTY3CisgICAgMHgxLnAyLAorICAgIDB4MS5wNAorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS44MHAxLAorICAgIDB4MS4yMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgMHgxLjQwcDIsCisgICAgMHgxLjkwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzAKKyAgICAweDEucC0xLAorICAgIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzEKKyAgICAweDEuYzBwMiwKKyAgICAweDEuODhwNQorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS40MHAzLAorICAgIDB4MS45MHA2CisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvdGFuX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS90YW5faW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMyZDczM2UKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvdGFuX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDUxODIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxkb3VibGUsIGRvdWJsZT4gZ190YW5faW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAweDEuNTA3OGNlYmZmOWM3MjgwMDAwMDAwMDAwMDAwMjRkZjhwLTUsCisgICAgMHgxLjUwNDg2YjJmODcwMTRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgLTB4MS41MDc4Y2ViZmY5YzcyODAwMDAwMDAwMDAwMDAyNGRmOHAtNSwKKyAgICAtMHgxLjUwNDg2YjJmODcwMTRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMHgxLjUzODllNmRmNDE5NzhmZmZmZmZmZmZmZmZmYzYxZjU0cC00LAorICAgIDB4MS41MmMzOWVmMDcwY2FkcC00CisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIC0weDEuNTM4OWU2ZGY0MTk3OGZmZmZmZmZmZmZmZmZjNjFmNTRwLTQsCisgICAgLTB4MS41MmMzOWVmMDcwY2FkcC00CisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIDB4MS5hOTMzZmUxNzZiMzc1MDAwMDAwMDAwMDAwMDBhNDA2NXAtMywKKyAgICAweDEuYTMzZjMyYWM1Y2ViNXAtMworICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAtMHgxLmE5MzNmZTE3NmIzNzUwMDAwMDAwMDAwMDAwMGE0MDY1cC0zLAorICAgIC0weDEuYTMzZjMyYWM1Y2ViNXAtMworICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAweDEuZmFjNzFjZDM0ZWVhNjgwMDAwMDAwMDAwMDA5YTBjMTBwLTIsCisgICAgMHgxLmQ2OTZiZmE5ODhkYjlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgLTB4MS5mYWM3MWNkMzRlZWE2ODAwMDAwMDAwMDAwMDlhMGMxMHAtMiwKKyAgICAtMHgxLmQ2OTZiZmE5ODhkYjlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLjdiYTQ5ZjczOTgyOWVmZmZmZmZmZmZmZmZmZTdlOWJlcC0xLAorICAgIDB4MS40NmFjMzcyMjQzNTM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIC0weDEuN2JhNDlmNzM5ODI5ZWZmZmZmZmZmZmZmZmZlN2U5YmVwLTEsCisgICAgLTB4MS40NmFjMzcyMjQzNTM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMQorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIC0weDEuOGYwNDg4MzIxNDRiNzAwMjFjY2Q3YTUyNDZjYjBiMjBwMCwKKyAgICAtMHgxLjAwMTgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS44ZjA0ODgzMjE0NGI3MDAyMWNjZDdhNTI0NmNiMGIyMHAwLAorICAgIDB4MS4wMDE4MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAtMHgxLjhlODg0YjI0MzEzYWU4MDJkYjQ3ODk5ZmFkMTVhNmM2cDAsCisgICAgLTB4MS4wOTBjY2ExOGE1NTY1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS44ZTg4NGIyNDMxM2FlODAyZGI0Nzg5OWZhZDE1YTZjNnAwLAorICAgIDB4MS4wOTBjY2ExOGE1NTY1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIC0weDEuY2ExODY1NGIzNTY5NzI5NjdhNGYxZTg0MDRiOWY5NzJwMCwKKyAgICAtMHgxLjBmYWE3NjUwZGYxNDRwMAorICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgMHgxLmNhMTg2NTRiMzU2OTcyOTY3YTRmMWU4NDA0YjlmOTcycDAsCisgICAgMHgxLjBmYWE3NjUwZGYxNDRwMAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgLTB4MS5lNTJmYWZhMjJlZjE0ODFkNDM3ZTdlZDMyY2JhMDNiMXAtMiwKKyAgICAtMHgxLjE4MDAwMDAwMDAwNDBwNQorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLmU1MmZhZmEyMmVmMTQ4MWQ0MzdlN2VkMzJjYmEwM2IxcC0yLAorICAgIDB4MS4xODAwMDAwMDAwMDQwcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIC0weDEuYTNjYTQyMWRjMzBmMWM1NzYwYTFhZTA3Mzk2ZmVjMzNwLTMsCisgICAgLTB4MS40MDAwNTI3YWNhMzg4cDk5CisgIH0sCisgIHsgLy8gRW50cnkgMjEKKyAgICAweDEuYTNjYTQyMWRjMzBmMWM1NzYwYTFhZTA3Mzk2ZmVjMzNwLTMsCisgICAgMHgxLjQwMDA1MjdhY2EzODhwOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIDB4MS4xZjNiN2QxOTc4NjA5ODAwYTE2MjhlMWRmOTU1OGRmNnAxLAorICAgIC0weDEuNDg2YzM2MzQ3NTFlY3AyCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAtMHgxLjFmM2I3ZDE5Nzg2MDk4MDBhMTYyOGUxZGY5NTU4ZGY2cDEsCisgICAgMHgxLjQ4NmMzNjM0NzUxZWNwMgorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgLTB4MS43ZWI4NzMzNDNmYTdhYjVkOWVmOWE3OGFmZDMzZDUwMXAtMSwKKyAgICAtMHgxLjQ4YTcxODAwYjU3MTNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS43ZWI4NzMzNDNmYTdhYjVkOWVmOWE3OGFmZDMzZDUwMXAtMSwKKyAgICAweDEuNDhhNzE4MDBiNTcxM3AtMQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLmJlMDcxNTcyZjY0ZTg4MDQ3YzM5MzliYTQ2NjI2YTI1cC0xLAorICAgIC0weDEuNDlhZjAzMTRlZWEzY3AyOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNworICAgIC0weDEuYmUwNzE1NzJmNjRlODgwNDdjMzkzOWJhNDY2MjZhMjVwLTEsCisgICAgMHgxLjQ5YWYwMzE0ZWVhM2NwMjk5CisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuZmZiYjI2NDdmNTdhMTgxYmQxMjk2ZmFmMzNjMDRlM2VwLTEsCisgICAgLTB4MS41ZmUwMGM4MTRmZmQ2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIC0weDEuZmZiYjI2NDdmNTdhMTgxYmQxMjk2ZmFmMzNjMDRlM2VwLTEsCisgICAgMHgxLjVmZTAwYzgxNGZmZDZwMgorICB9LAorICB7IC8vIEVudHJ5IDMwCisgICAgLTB4MS5hOGViMTQyYjJmNDI3NTZlNmRlZGZmMDkyNjdhNjJjNnAtMSwKKyAgICAtMHgxLjYyYWMyNDFmNzk0MzlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS5hOGViMTQyYjJmNDI3NTZlNmRlZGZmMDkyNjdhNjJjNnAtMSwKKyAgICAweDEuNjJhYzI0MWY3OTQzOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgLTB4MS43ZDFkMzU1OWRkYWM4ODVlZTMwNjMyYzc2MDk5OGM4ZXAtNCwKKyAgICAtMHgxLjdjMDUxYjQ3NmNhOGRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS43ZDFkMzU1OWRkYWM4ODVlZTMwNjMyYzc2MDk5OGM4ZXAtNCwKKyAgICAweDEuN2MwNTFiNDc2Y2E4ZHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgLTB4MS4wZTFkMDMwNWI3YjcyN2ZmMTkzZDlkMGI4ZWFmZjE4MXAyLAorICAgIC0weDEuN2U0M2M4ODAwNzRjNnA5OTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNQorICAgIDB4MS4wZTFkMDMwNWI3YjcyN2ZmMTkzZDlkMGI4ZWFmZjE4MXAyLAorICAgIDB4MS43ZTQzYzg4MDA3NGM2cDk5NgorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgLTB4MS44MTJiZGZlMDI0NmJiZjJhN2FiNjQ3N2E1Y2JiMzUyYnAtNCwKKyAgICAtMHgxLjgwMGFjMzYzMzk4YzRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS44MTJiZGZlMDI0NmJiZjJhN2FiNjQ3N2E1Y2JiMzUyYnAtNCwKKyAgICAweDEuODAwYWMzNjMzOThjNHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM4CisgICAgLTB4MS44NTBlNTU0NGIwYzc5N2IzNjAzNGM5OGUxNmYzZmFmYnAtNCwKKyAgICAtMHgxLjgzZTQ2YWVkYmZmMzZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS44NTBlNTU0NGIwYzc5N2IzNjAzNGM5OGUxNmYzZmFmYnAtNCwKKyAgICAweDEuODNlNDZhZWRiZmYzNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLmU2YjVkOTFiYmE5MzM3ZmMwY2ViNjg2YzYwY2QyOWJkcC0yLAorICAgIC0weDEuODNlY2Y0MmU5MjY1YXAzCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAtMHgxLmU2YjVkOTFiYmE5MzM3ZmMwY2ViNjg2YzYwY2QyOWJkcC0yLAorICAgIDB4MS44M2VjZjQyZTkyNjVhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIC0weDEuZjM2ODhiYzI1OTRlMjAxMDI1NzNjZmY0ODE5MGFjMjhwLTEsCisgICAgLTB4MS44YmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5mMzY4OGJjMjU5NGUyMDEwMjU3M2NmZjQ4MTkwYWMyOHAtMSwKKyAgICAweDEuOGJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuZWMwZDBmYWNkZDA4Yjc3M2ExZDkzNDg0ZTJkNjZjNDVwLTIsCisgICAgLTB4MS44ZDJmZmZmZmZmZmQxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIC0weDEuZWMwZDBmYWNkZDA4Yjc3M2ExZDkzNDg0ZTJkNjZjNDVwLTIsCisgICAgMHgxLjhkMmZmZmZmZmZmZDFwOQorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLmVjMDMzNmQ1MzkyNTk3Njg5YjY0MGJmMDQ5MjI3MzM4cC0yLAorICAgIC0weDEuOGQzMDAwZmZmZmZkMXA5CisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAtMHgxLmVjMDMzNmQ1MzkyNTk3Njg5YjY0MGJmMDQ5MjI3MzM4cC0yLAorICAgIDB4MS44ZDMwMDBmZmZmZmQxcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OAorICAgIC0weDEuZjgwOTNhMDE3MDIxZjgxYzAxYzEzMTQ3NWU1MGU0OWJwLTEsCisgICAgLTB4MS5iYWVlZTZmNmZhNTM4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OQorICAgIDB4MS5mODA5M2EwMTcwMjFmODFjMDFjMTMxNDc1ZTUwZTQ5YnAtMSwKKyAgICAweDEuYmFlZWU2ZjZmYTUzOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNTAKKyAgICAweDEuZGVhZjM0OTk0YjdlNzdmZDUyYTQwOGYwYzY3N2VhZTFwMywKKyAgICAtMHgxLmM2ODY3ZTA3NDU1ZWFwMworICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTB4MS5kZWFmMzQ5OTRiN2U3N2ZkNTJhNDA4ZjBjNjc3ZWFlMXAzLAorICAgIDB4MS5jNjg2N2UwNzQ1NWVhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEuZjI5YWE4N2Q0ZTFkZDgxYjdiNjlhYmU5NzkwZWUwYWJwLTEsCisgICAgLTB4MS5kMjdmZmZmZmZlMHA3CisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAweDEuZjI5YWE4N2Q0ZTFkZDgxYjdiNjlhYmU5NzkwZWUwYWJwLTEsCisgICAgMHgxLmQyN2ZmZmZmZmUwcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS43NjJmYjQ3YTE5MjU5N2ZmZmZmZmVlZWRiMjZmYjk3OHAtMywKKyAgICAtMHgxLmYwZGYzODAyOWM5ZWZwMworICB9LAorICB7IC8vIEVudHJ5IDU1CisgICAgLTB4MS43NjJmYjQ3YTE5MjU5N2ZmZmZmZmVlZWRiMjZmYjk3OHAtMywKKyAgICAweDEuZjBkZjM4MDI5YzllZnAzCisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAtMHgxLjhlYjIzZWYyMTI2YmI3ZmZmZDE1M2M3ZmY5MGU5ZjZjcDAsCisgICAgLTB4MS5mZmZmZmMwMDAwZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAweDEuOGViMjNlZjIxMjZiYjdmZmZkMTUzYzdmZjkwZTlmNmNwMCwKKyAgICAweDEuZmZmZmZjMDAwMGZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgLTB4MS5kMjk5ZDI4NWJmMDE4NDIzZmJjMTRlZmMwMGVkNTc5OXAtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgMHgxLmQyOTlkMjg1YmYwMTg0MjNmYmMxNGVmYzAwZWQ1Nzk5cC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgLTB4MS44MmJlZTU3MmUyYWM4Yzc2ZDY5MDljNjZiMjgyZTk2MnAtNiwKKyAgICAweDEuMHA2NAorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgMHgxLjgyYmVlNTcyZTJhYzhjNzZkNjkwOWM2NmIyODJlOTYycC02LAorICAgIC0weDEuMHA2NAorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLmY1M2E4ZDA1YWZjZjZjNGJmMmUxZTUyMDhiMzRkNWM2cDQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuZjUzYThkMDVhZmNmNmM0YmYyZTFlNTIwOGIzNGQ1YzZwNCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEuNmIzNzFkZjU5ODBjZDNkYjM2NzY4ZTM2MDQ2YTRhODFwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAxNworICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgMHgxLjZiMzcxZGY1OTgwY2QzZGIzNjc2OGUzNjA0NmE0YTgxcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxMDE3CisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmIzMmU3OGY0OWEwYzgzYzdmNjBhM2RjM2VmOGVjZjFmcDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDNwMworICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgMHgxLmIzMmU3OGY0OWEwYzgzYzdmNjBhM2RjM2VmOGVjZjFmcDIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAzcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS45OGFmYmQyNDI2NGJjM2E5ZDE4MzgwNzRhM2RhYTVlNXAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwM3AyMQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS45OGFmYmQyNDI2NGJjM2E5ZDE4MzgwNzRhM2RhYTVlNXAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDNwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS5iNjY3YTJhYmUzNmMyODAzMTVjNjJhMWY5NzRlNzYxMXAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAzcDUxMQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS5iNjY3YTJhYmUzNmMyODAzMTVjNjJhMWY5NzRlNzYxMXAwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwM3A1MTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS4yMDRjMjZhNDI3ODYxZmZlZmI3Mzc5NmJjZjFmZDcyNHAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwM3A3MTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuMjA0YzI2YTQyNzg2MWZmZWZiNzM3OTZiY2YxZmQ3MjRwLTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAzcDcxNgorICB9LAorICB7IC8vIEVudHJ5IDc2CisgICAgMHgxLjkxYzhmMjkzODI2MmNlMmU5YWQ5OWFiMTdlNDZhYmQ2cDQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDdwOAorICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS45MWM4ZjI5MzgyNjJjZTJlOWFkOTlhYjE3ZTQ2YWJkNnA0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwN3A4CisgIH0sCisgIHsgLy8gRW50cnkgNzgKKyAgICAtMHgxLjI3ZjdmMDg4MDAzMWZlNDJlZDFkNWZlZGM0OTZkMTRlcC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDM4cDM4MAorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLjI3ZjdmMDg4MDAzMWZlNDJlZDFkNWZlZGM0OTZkMTRlcC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAzOHAzODAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MAorICAgIC0weDEuZDY4OTBjYzMyNzExZDRiMDQ2OTAzYWQ4ODUxYTQxYmJwLTMsCisgICAgMHgxLjAwMDAwMDAwMDAxMThwMzgwCisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAweDEuZDY4OTBjYzMyNzExZDRiMDQ2OTAzYWQ4ODUxYTQxYmJwLTMsCisgICAgLTB4MS4wMDAwMDAwMDAwMTE4cDM4MAorICB9LAorICB7IC8vIEVudHJ5IDgyCisgICAgMHgxLjlhZjBlNmY3MmY5MTI3ZmZmZmMwMjAwZWE3ZjQwNmY0cC0zLAorICAgIDB4MS4wMDAwMDAwMDAwOTA4cDUwMAorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS45YWYwZTZmNzJmOTEyN2ZmZmZjMDIwMGVhN2Y0MDZmNHAtMywKKyAgICAtMHgxLjAwMDAwMDAwMDA5MDhwNTAwCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuMTdiNGY1YmY0NDA5NzgwMDJkNjZmMWJkMzcwMzI1MzJwLTEsCisgICAgMHgxLjAwMDAwMDAwMGMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLjE3YjRmNWJmNDQwOTc4MDAyZDY2ZjFiZDM3MDMyNTMycC0xLAorICAgIC0weDEuMDAwMDAwMDAwYzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIC0weDEuMTdlYjIyZTRkYmE3MjgwMGQyYTAwMDY5ODI2M2Q1ODJwMCwKKyAgICAweDEuMDAwMDAwMDFjcDQwCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAweDEuMTdlYjIyZTRkYmE3MjgwMGQyYTAwMDY5ODI2M2Q1ODJwMCwKKyAgICAtMHgxLjAwMDAwMDAxY3A0MAorICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLmY2ZjAzY2U1NjkwYTZlMzg4MGI5NWZkOGIyYzgzNjNlcC0xLAorICAgIDB4MS4wMDAwMDAxcDI1MAorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS5mNmYwM2NlNTY5MGE2ZTM4ODBiOTVmZDhiMmM4MzYzZXAtMSwKKyAgICAtMHgxLjAwMDAwMDFwMjUwCisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEuZTIzYjc4MjgyYTc1ZDBkZDZkYTM1NjkyZDE0MmJjNjNwLTEsCisgICAgMHgxLjAwMDAwMDk4OHAyNworICB9LAorICB7IC8vIEVudHJ5IDkxCisgICAgLTB4MS5lMjNiNzgyODJhNzVkMGRkNmRhMzU2OTJkMTQyYmM2M3AtMSwKKyAgICAtMHgxLjAwMDAwMDk4OHAyNworICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgLTB4MS45ODFiNjU3ZTFjYTI3MDA5ZDgyZDhlMTgzMTQyNDBiNXAtMywKKyAgICAweDEuMDAwMDBjMHA0MjkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS45ODFiNjU3ZTFjYTI3MDA5ZDgyZDhlMTgzMTQyNDBiNXAtMywKKyAgICAtMHgxLjAwMDAwYzBwNDI5CisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAtMHgxLjQ1NWEyMTg0ZjRjM2RmZmIwOTg2OTE5Y2VjZTY4M2E0cC0xLAorICAgIDB4MS4wMDAwMGZjcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS40NTVhMjE4NGY0YzNkZmZiMDk4NjkxOWNlY2U2ODNhNHAtMSwKKyAgICAtMHgxLjAwMDAwZmNwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjhlZTY2OTYyZjIxMGM4MDAwMDA1NjhjN2RhYWQzYTI4cDAsCisgICAgMHgxLjAwMGYzNzFiN2EwMDZwMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgLTB4MS44ZWU2Njk2MmYyMTBjODAwMDAwNTY4YzdkYWFkM2EyOHAwLAorICAgIC0weDEuMDAwZjM3MWI3YTAwNnAwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAtMHgxLmVjZDc1Y2Y2ZDQ2NjNiZWUxYzk2ZjAzMTg0ZmFlMDg2cC0zLAorICAgIDB4MS4wMDFwMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIDB4MS5lY2Q3NWNmNmQ0NjYzYmVlMWM5NmYwMzE4NGZhZTA4NnAtMywKKyAgICAtMHgxLjAwMXAxNQorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS4xN2Q0MjAzMzI3N2NjODI0NGNjYjZlNTE1NDQ4MjEwNXAtMSwKKyAgICAweDEuMDAxN2ZmZmZmZmZmZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIC0weDEuMTdkNDIwMzMyNzdjYzgyNDRjY2I2ZTUxNTQ0ODIxMDVwLTEsCisgICAgLTB4MS4wMDE3ZmZmZmZmZmZkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLjhmMDQ4ODMyMTQ0YjcwMDIxY2NkN2E1MjQ2Y2IwYjIwcDAsCisgICAgMHgxLjAwMTgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAtMHgxLjhmMDQ4ODMyMTQ0YjcwMDIxY2NkN2E1MjQ2Y2IwYjIwcDAsCisgICAgLTB4MS4wMDE4MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgLTB4MS4xODI3M2NjM2U3NjM5MDA3NDM3MDQwMjhjZmIxMTRhNXAtMiwKKyAgICAweDEuMDAxZmZmZXA1MDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEuMTgyNzNjYzNlNzYzOTAwNzQzNzA0MDI4Y2ZiMTE0YTVwLTIsCisgICAgLTB4MS4wMDFmZmZlcDUwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIC0weDEuZDhmOTBjYWQzMDU0NmNlNWI4MjY4YjMzMGNlNTBhNmZwLTIsCisgICAgMHgxLjAxOHA0MAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5kOGY5MGNhZDMwNTQ2Y2U1YjgyNjhiMzMwY2U1MGE2ZnAtMiwKKyAgICAtMHgxLjAxOHA0MAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5iMDc5ZWEwZDE0YTRhN2ZmYzA0YmQ2ZmJmNDUxYmIzNHAtMiwKKyAgICAweDEuMDFiOGE0ODRhYzBiNnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgLTB4MS5iMDc5ZWEwZDE0YTRhN2ZmYzA0YmQ2ZmJmNDUxYmIzNHAtMiwKKyAgICAtMHgxLjAxYjhhNDg0YWMwYjZwNAorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIC0weDEuYTQwYzI2MmY2YWI5OTdmZWY0M2JmNTRhZjNjNWE3NjVwLTEsCisgICAgMHgxLjAyNmFjMGVmMzJkNDBwMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEKKyAgICAweDEuYTQwYzI2MmY2YWI5OTdmZWY0M2JmNTRhZjNjNWE3NjVwLTEsCisgICAgLTB4MS4wMjZhYzBlZjMyZDQwcDI4CisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLjAzYjhjMWYzMjk2NjU3YzY1MWExM2ViNWIxMDBmYzc4cC00LAorICAgIDB4MS4wMzVmZGNkMDhhNTk2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgLTB4MS4wM2I4YzFmMzI5NjY1N2M2NTFhMTNlYjViMTAwZmM3OHAtNCwKKyAgICAtMHgxLjAzNWZkY2QwOGE1OTZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuMDQ0OTc5ZDEzNGVkOTdjNzhiZmU1OGE5MDAzYmZhYzVwLTQsCisgICAgMHgxLjAzZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIC0weDEuMDQ0OTc5ZDEzNGVkOTdjNzhiZmU1OGE5MDAzYmZhYzVwLTQsCisgICAgLTB4MS4wM2ZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAtMHgxLmU3MTdkZTdkYTJjZTgzMTA2NmJhZDFkZjVlODhhMDMwcDAsCisgICAgMHgxLjA3MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLmU3MTdkZTdkYTJjZTgzMTA2NmJhZDFkZjVlODhhMDMwcDAsCisgICAgLTB4MS4wNzBwMQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIC0weDEuOGM4OTZmNjA3ZmY1MmJiYWU4NmY2M2UxOWE5ODhkMmJwLTEsCisgICAgMHgxLjA3MHAzMAorICB9LAorICB7IC8vIEVudHJ5IDExOQorICAgIDB4MS44Yzg5NmY2MDdmZjUyYmJhZTg2ZjYzZTE5YTk4OGQyYnAtMSwKKyAgICAtMHgxLjA3MHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyMAorICAgIDB4MS5mZmZmZmZmZmY1ZDg0NmFmNmYwMTcyNjJjOWM4MWRlNHAtMSwKKyAgICAweDEuMDdlNGNlZjRjYmIwZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgLTB4MS5mZmZmZmZmZmY1ZDg0NmFmNmYwMTcyNjJjOWM4MWRlNHAtMSwKKyAgICAtMHgxLjA3ZTRjZWY0Y2JiMGVwNAorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5iNDc2ZDMyYzFiNzQ1N2ZmZmY2NmVkYjNmNzhhNzAwM3AwLAorICAgIDB4MS4wYTUzYTc4YjEzYWIycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAtMHgxLmI0NzZkMzJjMWI3NDU3ZmZmZjY2ZWRiM2Y3OGE3MDAzcDAsCisgICAgLTB4MS4wYTUzYTc4YjEzYWIycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQKKyAgICAweDEuZjJkZjdjMDJkMjBjZDgxYjMzMTE3YzAwNTQ1ZjdhNmJwLTEsCisgICAgMHgxLjBhZmJjMjY4Yjk4NDhwNgorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIC0weDEuZjJkZjdjMDJkMjBjZDgxYjMzMTE3YzAwNTQ1ZjdhNmJwLTEsCisgICAgLTB4MS4wYWZiYzI2OGI5ODQ4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAtMHgxLmI1NzFhZjU2MmYwOGE1YTAzZGQ4NDkzOTkwYjI5ZGIxcDAsCisgICAgMHgxLjBjZDVkNDM1YmVhNmRwMQorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS5iNTcxYWY1NjJmMDhhNWEwM2RkODQ5Mzk5MGIyOWRiMXAwLAorICAgIC0weDEuMGNkNWQ0MzViZWE2ZHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgLTB4MS5hYzczZDI5MjBhNzk1NTMzNmFiMmEzNDM2Yzc3YzI3NnAwLAorICAgIDB4MS4wZTBwMQorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIDB4MS5hYzczZDI5MjBhNzk1NTMzNmFiMmEzNDM2Yzc3YzI3NnAwLAorICAgIC0weDEuMGUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAtMHgxLjEyNmRjZThhYzdjODE4MDAwY2ZjZjNkZjA2NmE0YTJkcC0xLAorICAgIDB4MS4xMDg2MjEwODQyMTA4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEuMTI2ZGNlOGFjN2M4MTgwMDBjZmNmM2RmMDY2YTRhMmRwLTEsCisgICAgLTB4MS4xMDg2MjEwODQyMTA4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAtMHgxLjk2ODBjMDI2MDEwNDZjYTUwNmMwZTNmNzQ0ZGIxZDBhcDAsCisgICAgMHgxLjExMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTMzCisgICAgMHgxLjk2ODBjMDI2MDEwNDZjYTUwNmMwZTNmNzQ0ZGIxZDBhcDAsCisgICAgLTB4MS4xMTBwMQorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIDB4MS5kMWU3MTY5MzQ0NjliMmJjMDJmYTgzNWFlMDE0OWY1OHAwLAorICAgIDB4MS4xMThwMAorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIC0weDEuZDFlNzE2OTM0NDY5YjJiYzAyZmE4MzVhZTAxNDlmNThwMCwKKyAgICAtMHgxLjExOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTB4MS42YWE3MzEwMTQzMDgzN2ZmZmZmZWJhYWZkNDVmN2VmYXAtMSwKKyAgICAweDEuMTlkZjM4OWYzOWUwYXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgMHgxLjZhYTczMTAxNDMwODM3ZmZmZmZlYmFhZmQ0NWY3ZWZhcC0xLAorICAgIC0weDEuMTlkZjM4OWYzOWUwYXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLmNiOWE5OTIyN2JkYzk3MmNkNDE0NTk2OWMzZGMzOGMxcDEsCisgICAgMHgxLjFjMzU5ODIxMTAxM2FwMgorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuY2I5YTk5MjI3YmRjOTcyY2Q0MTQ1OTY5YzNkYzM4YzFwMSwKKyAgICAtMHgxLjFjMzU5ODIxMTAxM2FwMgorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIC0weDEuYmMxMDljM2U2MTcyNDUwYTUzMDhiNGM2ZWIyODk4Y2FwNywKKyAgICAweDEuMWQ2NWFhNDIyNGMzMHAxMTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAweDEuYmMxMDljM2U2MTcyNDUwYTUzMDhiNGM2ZWIyODk4Y2FwNywKKyAgICAtMHgxLjFkNjVhYTQyMjRjMzBwMTE4CisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgLTB4MS4wOWIzOTNmNDhiMmM2N2ZmZmYzYmQ1NTljNjMyNmU2MHAtMSwKKyAgICAweDEuMWU0NjU4MjcyZGM2ZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgMHgxLjA5YjM5M2Y0OGIyYzY3ZmZmZjNiZDU1OWM2MzI2ZTYwcC0xLAorICAgIC0weDEuMWU0NjU4MjcyZGM2ZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLjIwMDAwMDAwMDAwNzk4MDAwMDAwMDAzZDgyNjY2NjY2cC0yMiwKKyAgICAweDEuMnAtMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAtMHgxLjIwMDAwMDAwMDAwNzk4MDAwMDAwMDAzZDgyNjY2NjY2cC0yMiwKKyAgICAtMHgxLjJwLTIyCisgIH0sCisgIHsgLy8gRW50cnkgMTQ2CisgICAgLTB4MS4wMmEzMzViMDA3MDdhN2ZmZmZiZTQ1NWFkYWI3ZTgxNHAwLAorICAgIDB4MS4yMTI3NDA5NjIwY2FjcDk1CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgMHgxLjAyYTMzNWIwMDcwN2E3ZmZmZmJlNDU1YWRhYjdlODE0cDAsCisgICAgLTB4MS4yMTI3NDA5NjIwY2FjcDk1CisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgMHgxLjI1MDhiOWMxMjczYWMwMzRjM2M3OWM0MDg4ZTJhY2ZkcC00LAorICAgIDB4MS4yNDg5MjI0ODkyMjQ4cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS4yNTA4YjljMTI3M2FjMDM0YzNjNzljNDA4OGUyYWNmZHAtNCwKKyAgICAtMHgxLjI0ODkyMjQ4OTIyNDhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuZmRlZDVmNTNkMTMyZDI2YTgyNDRhNjNmOWJjZGYxNTNwMiwKKyAgICAweDEuMmE1MmQxMTlkYTA2MXAyMzcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLmZkZWQ1ZjUzZDEzMmQyNmE4MjQ0YTYzZjliY2RmMTUzcDIsCisgICAgLTB4MS4yYTUyZDExOWRhMDYxcDIzNworICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS4yZGU1NmE2ZWY5YzVkN2U5YzcxMDMwNDA3NTMwZjFkN3AtNCwKKyAgICAweDEuMmQ1OWViYWI4ZGFlNHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE1MworICAgIC0weDEuMmRlNTZhNmVmOWM1ZDdlOWM3MTAzMDQwNzUzMGYxZDdwLTQsCisgICAgLTB4MS4yZDU5ZWJhYjhkYWU0cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLjMxNjY1ZWIxOTFmYmE4MDBiN2U3MTVmZDExNzE2YzhjcC00LAorICAgIDB4MS4zMGQ1ZjhlNTRiNmQ4cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS4zMTY2NWViMTkxZmJhODAwYjdlNzE1ZmQxMTcxNmM4Y3AtNCwKKyAgICAtMHgxLjMwZDVmOGU1NGI2ZDhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAweDEuM2NjMWQ0ZDI4YmZkMTdmZGVkOWFlNTA0MDc1OTBmM2ZwLTIsCisgICAgMHgxLjMzMzI3NWQ2M2VjNTBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLjNjYzFkNGQyOGJmZDE3ZmRlZDlhZTUwNDA3NTkwZjNmcC0yLAorICAgIC0weDEuMzMzMjc1ZDYzZWM1MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIDB4MS4zY2MyMzdjMGM3ZGNiZmZmMTA0NmFkOWEwNjhhZjUxMHAtMiwKKyAgICAweDEuMzMzMmQwMjBiNmRhOXAtMgorICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuM2NjMjM3YzBjN2RjYmZmZjEwNDZhZDlhMDY4YWY1MTBwLTIsCisgICAgLTB4MS4zMzMyZDAyMGI2ZGE5cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTYwCisgICAgMHgxLjVlNDcyZTE2OTk5ZGYwMDAwMGZjMDZlZTQ3NGZiZmM5cC0xLAorICAgIDB4MS4zMzMzMzM0MDFlNjZicC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS41ZTQ3MmUxNjk5OWRmMDAwMDBmYzA2ZWU0NzRmYmZjOXAtMSwKKyAgICAtMHgxLjMzMzMzMzQwMWU2NmJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuYjVlZDFjMjA4MGE5ODdmYzg0ZjI2ZWM5NThiMmFjNDdwLTEsCisgICAgMHgxLjM4ZjEzN2NiOWRiZmNwOQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuYjVlZDFjMjA4MGE5ODdmYzg0ZjI2ZWM5NThiMmFjNDdwLTEsCisgICAgLTB4MS4zOGYxMzdjYjlkYmZjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEuMDFhYTIyZTIxMzNkMzdmZmZmZjJhMGMwODA5MzM1OGVwMSwKKyAgICAweDEuMzlhMzgzZjNmYTAwM3A4NQorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuMDFhYTIyZTIxMzNkMzdmZmZmZjJhMGMwODA5MzM1OGVwMSwKKyAgICAtMHgxLjM5YTM4M2YzZmEwMDNwODUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuZmZmZmZmZmZmZjU4MjM2MzIyODE5ZDA2MGViNjdjM2NwLTEsCisgICAgMHgxLjNhMjhjNTlkNTQzMTFwNAorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0weDEuZmZmZmZmZmZmZjU4MjM2MzIyODE5ZDA2MGViNjdjM2NwLTEsCisgICAgLTB4MS4zYTI4YzU5ZDU0MzExcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuNzE2NjY4OWQ0ODAzZTgzZDJiNmIxZDE1ZjVhY2EyNmVwLTEsCisgICAgMHgxLjQwMDAwMDAwMDNmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLjcxNjY2ODlkNDgwM2U4M2QyYjZiMWQxNWY1YWNhMjZlcC0xLAorICAgIC0weDEuNDAwMDAwMDAwM2ZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIC0weDEuZmY3ZDI3YjM3ZWJhMDgxOTE5OWU1MzNjYzUwMTZmMGRwLTEsCisgICAgMHgxLjQwNzI0YTQ0NzE0Y2ZwNQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIDB4MS5mZjdkMjdiMzdlYmEwODE5MTk5ZTUzM2NjNTAxNmYwZHAtMSwKKyAgICAtMHgxLjQwNzI0YTQ0NzE0Y2ZwNQorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS40NTNhN2QyOWRhZGFkN2MwZGRhNzhhNzM5OGJlMDg3M3AtNCwKKyAgICAweDEuNDQ4YzJkNmUxZTFhZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEuNDUzYTdkMjlkYWRhZDdjMGRkYTc4YTczOThiZTA4NzNwLTQsCisgICAgLTB4MS40NDhjMmQ2ZTFlMWFmcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgLTB4MS5hNTBmNzYwMTQxM2U1M2FiMWM1YTJmMGQ2NzZjMzk3Y3AwLAorICAgIDB4MS40NzhmYzA4cDQzCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgMHgxLmE1MGY3NjAxNDEzZTUzYWIxYzVhMmYwZDY3NmMzOTdjcDAsCisgICAgLTB4MS40NzhmYzA4cDQzCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgLTB4MS5hOTk5MWFjYjc2MzZiZWVlNWIxYTVkMzVhOGE4OTkxN3AtNCwKKyAgICAweDEuNGU5M2JlZTcyYjU2NXA2MgorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIDB4MS5hOTk5MWFjYjc2MzZiZWVlNWIxYTVkMzVhOGE4OTkxN3AtNCwKKyAgICAtMHgxLjRlOTNiZWU3MmI1NjVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuMjk1MjM5Njk0NTk0N2I3MjZlYmYwMjVhOGJhMDcwOTNwMSwKKyAgICAweDEuNGYwZjMwOHA0ODgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAtMHgxLjI5NTIzOTY5NDU5NDdiNzI2ZWJmMDI1YThiYTA3MDkzcDEsCisgICAgLTB4MS40ZjBmMzA4cDQ4OAorICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS41MDc4Y2ViZmY5YzcyODAwMDAwMDAwMDAwMDAyNGRmOHAtNSwKKyAgICAweDEuNTA0ODZiMmY4NzAxNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuNTA3OGNlYmZmOWM3MjgwMDAwMDAwMDAwMDAwMjRkZjhwLTUsCisgICAgLTB4MS41MDQ4NmIyZjg3MDE0cC01CisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgLTB4MS4xYzkyOWI2ZWRlOWVlODAwMDA0MGEzZDFjYTkwYTlmNHAtMSwKKyAgICAweDEuNTEzMGQ1NTJmMTAzNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgMHgxLjFjOTI5YjZlZGU5ZWU4MDAwMDQwYTNkMWNhOTBhOWY0cC0xLAorICAgIC0weDEuNTEzMGQ1NTJmMTAzNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTg0CisgICAgMHgxLjJhYjMxODllMmQ0YWU0MWMxYWZmM2NjMzBjZmVkZDMwcDEsCisgICAgMHgxLjUyZjAwZTBwNzkzCisgIH0sCisgIHsgLy8gRW50cnkgMTg1CisgICAgLTB4MS4yYWIzMTg5ZTJkNGFlNDFjMWFmZjNjYzMwY2ZlZGQzMHAxLAorICAgIC0weDEuNTJmMDBlMHA3OTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAtMHgxLjdkMmU2M2ZiOTg4OTA3YTEwOTA5MWQxMzBmOWYyMGQxcDAsCisgICAgMHgxLjUzNzE2ODRlNWZiMzRwMgorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS43ZDJlNjNmYjk4ODkwN2ExMDkwOTFkMTMwZjlmMjBkMXAwLAorICAgIC0weDEuNTM3MTY4NGU1ZmIzNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgLTB4MS5mOWY0ZjBkYTRkZTU0NDk5MjgzYThhYzJmNTVmNzI1OHAtMSwKKyAgICAweDEuNTRlZjIyMDg5NTZwMjM5CisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgMHgxLmY5ZjRmMGRhNGRlNTQ0OTkyODNhOGFjMmY1NWY3MjU4cC0xLAorICAgIC0weDEuNTRlZjIyMDg5NTZwMjM5CisgIH0sCisgIHsgLy8gRW50cnkgMTkwCisgICAgMHgxLjE0ODMwNzMxNDJlNjA4MDA4Zjg4NDlkYWY1ZjhjNThkcDIsCisgICAgMHgxLjU3ZTU5MGFmMDkwMTRwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuMTQ4MzA3MzE0MmU2MDgwMDhmODg0OWRhZjVmOGM1OGRwMiwKKyAgICAtMHgxLjU3ZTU5MGFmMDkwMTRwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MgorICAgIDB4MS45OTcyZDQwMjFjOTcxNTYzOTM2MDU1ZDhjMWVhYWUwYXAtMSwKKyAgICAweDEuNTk2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS45OTcyZDQwMjFjOTcxNTYzOTM2MDU1ZDhjMWVhYWUwYXAtMSwKKyAgICAtMHgxLjU5NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEuZTUwMWZmZDNhNjhjMzgzMzZkOTc3ZjYzNDMyNmEzNDJwLTIsCisgICAgMHgxLjU5ODEyOTM3ODNlMWZwMQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIDB4MS5lNTAxZmZkM2E2OGMzODMzNmQ5NzdmNjM0MzI2YTM0MnAtMiwKKyAgICAtMHgxLjU5ODEyOTM3ODNlMWZwMQorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIDB4MS4xNjA0Y2MzZGZjNDE4MWMzZTk0ODE1NTg0NjdhODVmZXAtMSwKKyAgICAweDEuNWJlYTAxMHA0NjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLjE2MDRjYzNkZmM0MTgxYzNlOTQ4MTU1ODQ2N2E4NWZlcC0xLAorICAgIC0weDEuNWJlYTAxMHA0NjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAtMHgxLmY3NmNhNTBiYmJhZWIwMTJiZWFkZTJhMzI4ZTVmYzAzcC0xLAorICAgIDB4MS42MDY2MWMxOTY5NjY2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAweDEuZjc2Y2E1MGJiYmFlYjAxMmJlYWRlMmEzMjhlNWZjMDNwLTEsCisgICAgLTB4MS42MDY2MWMxOTY5NjY2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAweDEuY2Q4YjczYzk0MzBmZWY3NWRjNzEwZmZkZmUwOTFiNDJwMCwKKyAgICAweDEuNjJjNWE4NTBhMTQyYXA1OQorICB9LAorICB7IC8vIEVudHJ5IDIwMQorICAgIC0weDEuY2Q4YjczYzk0MzBmZWY3NWRjNzEwZmZkZmUwOTFiNDJwMCwKKyAgICAtMHgxLjYyYzVhODUwYTE0MmFwNTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAweDEuM2FjY2ZkNDUzZWU2NzI5NjA4ODM3OGY1ODJlYWNiMDJwMCwKKyAgICAweDEuNjRlZjQzOHAxNDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDMKKyAgICAtMHgxLjNhY2NmZDQ1M2VlNjcyOTYwODgzNzhmNTgyZWFjYjAycDAsCisgICAgLTB4MS42NGVmNDM4cDE0MgorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIC0weDEuYWNkOTMwMmQ3MmRlNGJkOGRkYThmNTY1MGI3N2U3MzJwLTEsCisgICAgMHgxLjY1OHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgMHgxLmFjZDkzMDJkNzJkZTRiZDhkZGE4ZjU2NTBiNzdlNzMycC0xLAorICAgIC0weDEuNjU4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuZjAwNGY4NzVjMmU3MzgxNTljN2Q3NWEzOTgwY2FmZDdwLTEsCisgICAgMHgxLjY2MDNjNjVkMzQ4ZDJwNQorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0weDEuZjAwNGY4NzVjMmU3MzgxNTljN2Q3NWEzOTgwY2FmZDdwLTEsCisgICAgLTB4MS42NjAzYzY1ZDM0OGQycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAweDEuZjUzNDk2ZTZkN2Y3MTgxYTYyZmVjNGM4YTcxMDkwMGVwLTEsCisgICAgMHgxLjY2MGU2YmYyZTA5MmFwNQorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIC0weDEuZjUzNDk2ZTZkN2Y3MTgxYTYyZmVjNGM4YTcxMDkwMGVwLTEsCisgICAgLTB4MS42NjBlNmJmMmUwOTJhcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTAKKyAgICAweDEuYjY0ZWUyNGYwMTE5YzgwMGQ1ZDBiYjEwYTM5YWNhNGVwLTEsCisgICAgMHgxLjZhOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuYjY0ZWUyNGYwMTE5YzgwMGQ1ZDBiYjEwYTM5YWNhNGVwLTEsCisgICAgLTB4MS42YThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAtMHgxLmQ5YmE5YTc5NzU2MzVhM2FjYzMyNGU2YWVkYTQ1MTMzcDYwLAorICAgIDB4MS42YWM1YjI2MmNhMWZmcDg0OQorICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIDB4MS5kOWJhOWE3OTc1NjM1YTNhY2MzMjRlNmFlZGE0NTEzM3A2MCwKKyAgICAtMHgxLjZhYzViMjYyY2ExZmZwODQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLmI2ZjU1N2I5OTllMjJlMGRiMTBhOTJiOTA4ZTg3N2Y2cC0xLAorICAgIDB4MS42YWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLmI2ZjU1N2I5OTllMjJlMGRiMTBhOTJiOTA4ZTg3N2Y2cC0xLAorICAgIC0weDEuNmFlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLmMxZTFkNWM0YzBmMDc3ZmM4NzFkNGJkMGEwM2M2NDMxcC0xLAorICAgIDB4MS42Y2RiMzZjZGIzNmM5cDIzOQorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIC0weDEuYzFlMWQ1YzRjMGYwNzdmYzg3MWQ0YmQwYTAzYzY0MzFwLTEsCisgICAgLTB4MS42Y2RiMzZjZGIzNmM5cDIzOQorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS45NWJjZTRmNTc4Njk3ODA3OGMzMTAyMTBkY2VkNmYzZnAtMSwKKyAgICAweDEuNmYxYWYxNjEyMjcwYXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS45NWJjZTRmNTc4Njk3ODA3OGMzMTAyMTBkY2VkNmYzZnAtMSwKKyAgICAtMHgxLjZmMWFmMTYxMjI3MGFwNgorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS43MTFlOGY1ZmZmYmExZjU5OTU5NWZiYWFjNWI3MGUwYnAtNCwKKyAgICAweDEuNzAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgLTB4MS43MTFlOGY1ZmZmYmExZjU5OTU5NWZiYWFjNWI3MGUwYnAtNCwKKyAgICAtMHgxLjcwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS5mYjU4OThmMjliYjI1N2ZkYTZmMmJlZGZjNDkxYWJhZXAyLAorICAgIDB4MS43MjBwMAorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIC0weDEuZmI1ODk4ZjI5YmIyNTdmZGE2ZjJiZWRmYzQ5MWFiYWVwMiwKKyAgICAtMHgxLjcyMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgLTB4MS5mZjliNzcxMjg0ZDIzMjkwY2RkODM3MTdjYzkwNTc3M3AxLAorICAgIDB4MS43MzQ4YzM0N2RkYzIwcDIzOQorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS5mZjliNzcxMjg0ZDIzMjkwY2RkODM3MTdjYzkwNTc3M3AxLAorICAgIC0weDEuNzM0OGMzNDdkZGMyMHAyMzkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAweDEuZjcyZDQ3YTAwODBlMmQzZDA0MDg2M2Q1NmRiYjU2N2VwLTIsCisgICAgMHgxLjczOWNlNzM5Y2U3MzhwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgLTB4MS5mNzJkNDdhMDA4MGUyZDNkMDQwODYzZDU2ZGJiNTY3ZXAtMiwKKyAgICAtMHgxLjczOWNlNzM5Y2U3MzhwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgMHgxLjc2NDQxZTdmOGVhNWY4MDAwMDAxZDFjNWM4NGYxMDRlcC00LAorICAgIDB4MS43NTNhY2MzZDNmZjM1cC00CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgLTB4MS43NjQ0MWU3ZjhlYTVmODAwMDAwMWQxYzVjODRmMTA0ZXAtNCwKKyAgICAtMHgxLjc1M2FjYzNkM2ZmMzVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuY2UzZjY0MmUxNWFmM2M5MjFkZDcxMjlkYjVlMzkzNDJwLTEsCisgICAgMHgxLjc3ZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzEKKyAgICAtMHgxLmNlM2Y2NDJlMTVhZjNjOTIxZGQ3MTI5ZGI1ZTM5MzQycC0xLAorICAgIC0weDEuNzdmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS5mNDI1MDAyYTU0OGViNDA1NDUwOTcwYTM1M2QzMDdmN3A0MiwKKyAgICAweDEuNzhmZGI5ZWZmZWEyNnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgLTB4MS5mNDI1MDAyYTU0OGViNDA1NDUwOTcwYTM1M2QzMDdmN3A0MiwKKyAgICAtMHgxLjc4ZmRiOWVmZmVhMjZwNAorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIC0weDEuZGJjODBkZTdkZDA0MmE5MzcxZTFiNDU3MThlNTFiYWJwLTEsCisgICAgMHgxLjdhNWY3NDYwN2U4NTFwMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEuZGJjODBkZTdkZDA0MmE5MzcxZTFiNDU3MThlNTFiYWJwLTEsCisgICAgLTB4MS43YTVmNzQ2MDdlODUxcDE5CisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMHgxLjdiM2JiM2QwYjNjYTQyZjEzMjA3ODQyODk5ZTBiYTcxcDQyLAorICAgIDB4MS43ZjdlZjc3ZTgzZjFhcDE5CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS43YjNiYjNkMGIzY2E0MmYxMzIwNzg0Mjg5OWUwYmE3MXA0MiwKKyAgICAtMHgxLjdmN2VmNzdlODNmMWFwMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEuZTdmMDViNzFjZDJkMGZiNGRmNmE0MzM3NWNkOGY2NzBwMzMsCisgICAgMHgxLjdmN2YxMGEwN2Y0NWVwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAtMHgxLmU3ZjA1YjcxY2QyZDBmYjRkZjZhNDMzNzVjZDhmNjcwcDMzLAorICAgIC0weDEuN2Y3ZjEwYTA3ZjQ1ZXAyMAorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIDB4MS44MDAwMDAwMDAwMDAzODAwMDAwMDAwMDAwNzMzMzMzM3AtMjUsCisgICAgMHgxLjdmZmZmZmZmZmZmZmZwLTI1CisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS44MDAwMDAwMDAwMDAzODAwMDAwMDAwMDAwNzMzMzMzM3AtMjUsCisgICAgLTB4MS43ZmZmZmZmZmZmZmZmcC0yNQorICB9LAorICB7IC8vIEVudHJ5IDI0MgorICAgIDB4MS44MDAwMDAwMDAwMDA2ODAwMDAwMDAwMDAyMjMzMzMzM3AtMjUsCisgICAgMHgxLjgwMDAwMDAwMDAwMDJwLTI1CisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgLTB4MS44MDAwMDAwMDAwMDA2ODAwMDAwMDAwMDAyMjMzMzMzM3AtMjUsCisgICAgLTB4MS44MDAwMDAwMDAwMDAycC0yNQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS4yNDI0NWFmNGNkOTk0ZTliM2JiYTk5MmQxMDE2MzY1YnAtNTIsCisgICAgMHgxLjgxYWUwZGZmYTNiMzNwOTU5CisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgLTB4MS4yNDI0NWFmNGNkOTk0ZTliM2JiYTk5MmQxMDE2MzY1YnAtNTIsCisgICAgLTB4MS44MWFlMGRmZmEzYjMzcDk1OQorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS5kNzIyNjFkOThlMjZiN2ZmYTMwMGQ4OWZkNDZmYjc3NXAtMSwKKyAgICAweDEuODQ2YmQ3YTRkY2U1NXA2OTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAtMHgxLmQ3MjI2MWQ5OGUyNmI3ZmZhMzAwZDg5ZmQ0NmZiNzc1cC0xLAorICAgIC0weDEuODQ2YmQ3YTRkY2U1NXA2OTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEuNDJkOGExYmE0NDFhZDQwMjhhYzdmMWE2YTVlZTBjNTRwMSwKKyAgICAweDEuODcyMDU4OHAzOTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDkKKyAgICAtMHgxLjQyZDhhMWJhNDQxYWQ0MDI4YWM3ZjFhNmE1ZWUwYzU0cDEsCisgICAgLTB4MS44NzIwNTg4cDM5MgorICB9LAorICB7IC8vIEVudHJ5IDI1MAorICAgIDB4MS5lYTdiNDQ0Y2Q3OThkN2ZhZWVmZjA5M2YxZDk5NzFhZHAtMSwKKyAgICAweDEuODcyMmE2N2VhMTRhY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIC0weDEuZWE3YjQ0NGNkNzk4ZDdmYWVlZmYwOTNmMWQ5OTcxYWRwLTEsCisgICAgLTB4MS44NzIyYTY3ZWExNGFjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgLTB4MS5jN2RjN2YwOGRiYmEwODlmMmQ3ZTg5MDAyMWJlZGNiN3AtMSwKKyAgICAweDEuODk5MzZjODgyOGQzOHAyOTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEuYzdkYzdmMDhkYmJhMDg5ZjJkN2U4OTAwMjFiZWRjYjdwLTEsCisgICAgLTB4MS44OTkzNmM4ODI4ZDM4cDI5OQorICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDB4MS41Njk2NTNlMzE5YmJhODAwMDAwYzgzNjMyZTQzYWJkZXAxLAorICAgIDB4MS44YTY5MTA2ZmI5Nzk4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAtMHgxLjU2OTY1M2UzMTliYmE4MDAwMDBjODM2MzJlNDNhYmRlcDEsCisgICAgLTB4MS44YTY5MTA2ZmI5Nzk4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAweDEuZjJkYjIxNDY5ZjNkNTgxOWZhOWJhOGRjY2JmZjkxNGFwLTEsCisgICAgMHgxLjhiNzc3ZTFkMjMwOGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAtMHgxLmYyZGIyMTQ2OWYzZDU4MTlmYTliYThkY2NiZmY5MTRhcC0xLAorICAgIC0weDEuOGI3NzdlMWQyMzA4Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDI1OAorICAgIDB4MS5mMzY4OGJjMjU5NGUyMDEwMjU3M2NmZjQ4MTkwYWMyOHAtMSwKKyAgICAweDEuOGJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgLTB4MS5mMzY4OGJjMjU5NGUyMDEwMjU3M2NmZjQ4MTkwYWMyOHAtMSwKKyAgICAtMHgxLjhiY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS44ZDNhMjU0NDU2NmRmN2I1NTliNGFjNDhlMTJlYWM3MXAtNCwKKyAgICAweDEuOGJmZDIyNzRkODUxYXAtNAorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIC0weDEuOGQzYTI1NDQ1NjZkZjdiNTU5YjRhYzQ4ZTEyZWFjNzFwLTQsCisgICAgLTB4MS44YmZkMjI3NGQ4NTFhcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjYyCisgICAgMHgxLmY0NTc1Y2M0ZTQ3N2YwMTlkYWI1ZDAxMDNhYWY5MWNmcC0xLAorICAgIDB4MS44YzNhNDUwMDcxZGQ5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgLTB4MS5mNDU3NWNjNGU0NzdmMDE5ZGFiNWQwMTAzYWFmOTFjZnAtMSwKKyAgICAtMHgxLjhjM2E0NTAwNzFkZDlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAtMHgxLjFlMDlmNjZjNDI1MGI5NGU5MDMwY2FkZDAwODUxMTU4cDExLAorICAgIDB4MS44Y2MwZGQyYjBmNGI4cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS4xZTA5ZjY2YzQyNTBiOTRlOTAzMGNhZGQwMDg1MTE1OHAxMSwKKyAgICAtMHgxLjhjYzBkZDJiMGY0YjhwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLmY3MTQ5NmNiOTIxZTVhNGQyZjM5MDQ2YTYyOGI2NTA5cC0xLAorICAgIDB4MS44ZGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAtMHgxLmY3MTQ5NmNiOTIxZTVhNGQyZjM5MDQ2YTYyOGI2NTA5cC0xLAorICAgIC0weDEuOGRhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLmY3MWI0YTY1OTExNjk4MTk0NzZlNmI3NTljN2FhZTUycC0xLAorICAgIDB4MS44ZGEzNjhkYTM2OGQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgLTB4MS5mNzFiNGE2NTkxMTY5ODE5NDc2ZTZiNzU5YzdhYWU1MnAtMSwKKyAgICAtMHgxLjhkYTM2OGRhMzY4ZDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzAKKyAgICAweDEuZmY5YjY4Y2NhZGIyZmY2MmMyNjg2NDI4OGVkNmE0ZGZwLTEsCisgICAgMHgxLjkxZWQ2NGI5NzdhOWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAtMHgxLmZmOWI2OGNjYWRiMmZmNjJjMjY4NjQyODhlZDZhNGRmcC0xLAorICAgIC0weDEuOTFlZDY0Yjk3N2E5YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS4wMDAwMDAwMDI5MDQ4NDc3OWZhNDkxYzcyOGFlZjk0NXAxOCwKKyAgICAweDEuOTIxZjc1NDQ0MmQxOXAwCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgLTB4MS4wMDAwMDAwMDI5MDQ4NDc3OWZhNDkxYzcyOGFlZjk0NXAxOCwKKyAgICAtMHgxLjkyMWY3NTQ0NDJkMTlwMAorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIDB4MS5lZWYwNjdhZmQzMjhmMzExY2UyYzdhMWY0MjBhNTk4M3A0OCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgLTB4MS5lZWYwNjdhZmQzMjhmMzExY2UyYzdhMWY0MjBhNTk4M3A0OCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTBwMAorICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS4wMDAwMDAwMDAzYWYyZjIyM2ViMWU3MDljYmEwMGVjM3AtMTcsCisgICAgMHgxLjkyMWZmNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIC0weDEuMDAwMDAwMDAwM2FmMmYyMjNlYjFlNzA5Y2JhMDBlYzNwLTE3LAorICAgIC0weDEuOTIxZmY1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgLTB4MS5iNjc3MmNiNjY3ZGMxODdiN2QwMTlkMWQ3MjMyYzllN3AxNywKKyAgICAweDEuOTIycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzkKKyAgICAweDEuYjY3NzJjYjY2N2RjMTg3YjdkMDE5ZDFkNzIzMmM5ZTdwMTcsCisgICAgLTB4MS45MjJwMAorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIC0weDEuZmZmZmZmZmNlZWVmZTc5MWJlMjA3NDc3OWZkMWRkOWVwLTEsCisgICAgMHgxLjkyMjA3MWMzMWZjOTlwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEuZmZmZmZmZmNlZWVmZTc5MWJlMjA3NDc3OWZkMWRkOWVwLTEsCisgICAgLTB4MS45MjIwNzFjMzFmYzk5cDIwCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgMHgxLjlkN2MxMzU0YmE2Zjc4MWM4YjA0NDA4MDk0ZjQ1Mjg0cC0zLAorICAgIDB4MS45N2ZmZmZmZmZmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgLTB4MS45ZDdjMTM1NGJhNmY3ODFjOGIwNDQwODA5NGY0NTI4NHAtMywKKyAgICAtMHgxLjk3ZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAweDEuOWFmODg3N2JiNDVlNDdmZmZmZTk2MTA4NGIyYzBiZWFwLTQsCisgICAgMHgxLjk5OTk5OWExMGExM2NwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODUKKyAgICAtMHgxLjlhZjg4NzdiYjQ1ZTQ3ZmZmZmU5NjEwODRiMmMwYmVhcC00LAorICAgIC0weDEuOTk5OTk5YTEwYTEzY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIC0weDEuYjZjZTEyODU4N2NkMDdmZmZmNzU3YWJkYTI5NGMxNTFwNCwKKyAgICAweDEuOWI3NDQ0NmVkMDVkY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgMHgxLmI2Y2UxMjg1ODdjZDA3ZmZmZjc1N2FiZGEyOTRjMTUxcDQsCisgICAgLTB4MS45Yjc0NDQ2ZWQwNWRjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAweDEuZmY2NWFlZjU0YzhmYzgwNDI4NDEwNzFiNDViNmQ3ZDlwLTEsCisgICAgMHgxLjllYWU0OTRkMmIyNzVwNAorICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuZmY2NWFlZjU0YzhmYzgwNDI4NDEwNzFiNDViNmQ3ZDlwLTEsCisgICAgLTB4MS45ZWFlNDk0ZDJiMjc1cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAweDEuNjE3NzZhYTQwN2E0MzdmNjE3ZmNhZGIxNWM3ZjYxYzJwLTMsCisgICAgMHgxLmE4MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgLTB4MS42MTc3NmFhNDA3YTQzN2Y2MTdmY2FkYjE1YzdmNjFjMnAtMywKKyAgICAtMHgxLmE4MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjkyCisgICAgMHgxLmI2MDAxZGUxM2FkOTU4MDA3M2FjYmE0YWE0MjNlMmQ5cC0zLAorICAgIDB4MS5hZjhwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAtMHgxLmI2MDAxZGUxM2FkOTU4MDA3M2FjYmE0YWE0MjNlMmQ5cC0zLAorICAgIC0weDEuYWY4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgMHgxLmI1YTA1MDNhZTM1NGI3YTE2ZjdjNTBmOGIzYmVmMmNhcC00LAorICAgIDB4MS5iM2Y4ZWE3YjFmOTFicC00CisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgLTB4MS5iNWEwNTAzYWUzNTRiN2ExNmY3YzUwZjhiM2JlZjJjYXAtNCwKKyAgICAtMHgxLmIzZjhlYTdiMWY5MWJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEuYjVhMDUwM2FlNGM3Yjc5MjUzNzMyN2Y0MjQ1YWM2ZmJwLTQsCisgICAgMHgxLmIzZjhlYTdiMjEwMDhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAtMHgxLmI1YTA1MDNhZTRjN2I3OTI1MzczMjdmNDI0NWFjNmZicC00LAorICAgIC0weDEuYjNmOGVhN2IyMTAwOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIDB4MS4wNTc1ODRjNDI5YjNhNmVhMGE2NWNhZmY5ODYzNDQ5MHA1OSwKKyAgICAweDEuYjk1MWYxNTcyZWJhNXAyMworICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIC0weDEuMDU3NTg0YzQyOWIzYTZlYTBhNjVjYWZmOTg2MzQ0OTBwNTksCisgICAgLTB4MS5iOTUxZjE1NzJlYmE1cDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgLTB4MS45YTI4MmZhMWZmN2Q5ODAzOWJlM2JmNWIzOWNjNmQ4OXAyLAorICAgIDB4MS5iOWNwMAorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIDB4MS45YTI4MmZhMWZmN2Q5ODAzOWJlM2JmNWIzOWNjNmQ4OXAyLAorICAgIC0weDEuYjljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAtMHgxLjAyN2QxODRhZmIxOTg0Y2ExZDIxYjFhYzkzMTExODg3cC01MiwKKyAgICAweDEuYmFiNjJlZDY1NTAxOXA5NzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAweDEuMDI3ZDE4NGFmYjE5ODRjYTFkMjFiMWFjOTMxMTE4ODdwLTUyLAorICAgIC0weDEuYmFiNjJlZDY1NTAxOXA5NzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAweDEuY2E2ZWZkZjg0NWQ2YzdmZmZlYmFlYTFhZmJmN2U5NjFwMiwKKyAgICAweDEuYmVhMWIzNWYzY2I2ZHA4NAorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIC0weDEuY2E2ZWZkZjg0NWQ2YzdmZmZlYmFlYTFhZmJmN2U5NjFwMiwKKyAgICAtMHgxLmJlYTFiMzVmM2NiNmRwODQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAweDEuZmQ4N2IzNDc0N2I3NDZiOGI2NTdjYWM3OTdjMDg3MGRwNDIsCisgICAgMHgxLmM0NjNhYmVjY2IyN2JwMworICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0weDEuZmQ4N2IzNDc0N2I3NDZiOGI2NTdjYWM3OTdjMDg3MGRwNDIsCisgICAgLTB4MS5jNDYzYWJlY2NiMjdicDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAweDEuZmZmZmZmZmZmZmZmYjA5NDU0MWEyNDYxZTczNGRhZWVwLTEsCisgICAgMHgxLmM0NjNhYmVjY2IyYmJwMgorICB9LAorICB7IC8vIEVudHJ5IDMwOQorICAgIC0weDEuZmZmZmZmZmZmZmZmYjA5NDU0MWEyNDYxZTczNGRhZWVwLTEsCisgICAgLTB4MS5jNDYzYWJlY2NiMmJicDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAweDEuZmIwNTcwMjlhY2ZkMTdmZmZmZmE1YWM4MjA0ZjA4MDNwLTEsCisgICAgMHgxLmM2Y2JlMjZiN2I0NWZwODYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAtMHgxLmZiMDU3MDI5YWNmZDE3ZmZmZmZhNWFjODIwNGYwODAzcC0xLAorICAgIC0weDEuYzZjYmUyNmI3YjQ1ZnA4NgorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDB4MS5jOGQ1YTA4YmU0MGMyMHAtMTE3LAorICAgIDB4MS5jOGQ1YTA4YmU0MGMycC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAtMHgxLmM4ZDVhMDhiZTQwYzIwcC0xMTcsCisgICAgLTB4MS5jOGQ1YTA4YmU0MGMycC0xMTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAweDEuZTVkZmZkN2YwNmNiMzc1NDkzM2NlYTU3OGRlYWFkMzZwLTIsCisgICAgMHgxLmNhZDRlOTgyN2EyYmVwMQorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIC0weDEuZTVkZmZkN2YwNmNiMzc1NDkzM2NlYTU3OGRlYWFkMzZwLTIsCisgICAgLTB4MS5jYWQ0ZTk4MjdhMmJlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAweDEuZTZiZTM3OGIxYjRlYjc2NThlODVhZDBhZjMzODM2YTlwLTIsCisgICAgMHgxLmNhZWI5NDBlNGI5OTdwMQorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIC0weDEuZTZiZTM3OGIxYjRlYjc2NThlODVhZDBhZjMzODM2YTlwLTIsCisgICAgLTB4MS5jYWViOTQwZTRiOTk3cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTgKKyAgICAweDEuZTcyYmQwMjVhMWZkNTc2NWY4NTM0NjlhODVhZTdiN2RwLTIsCisgICAgMHgxLmNhZjZjMDRlY2QwMzRwMQorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIC0weDEuZTcyYmQwMjVhMWZkNTc2NWY4NTM0NjlhODVhZTdiN2RwLTIsCisgICAgLTB4MS5jYWY2YzA0ZWNkMDM0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAweDEuZTg0NGIzZDdjYmU0Mzc1YzI4ZTMyMmRhNmJhNWQ3ZDhwLTIsCisgICAgMHgxLmNiMTM1ZWMxYzk1NmVwMQorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIC0weDEuZTg0NGIzZDdjYmU0Mzc1YzI4ZTMyMmRhNmJhNWQ3ZDhwLTIsCisgICAgLTB4MS5jYjEzNWVjMWM5NTZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAweDEuZGQzOGExZjFkMjg5YjYxNzMxMTU3MjFiYzVjMWZjNzJwLTU0LAorICAgIDB4MS5jYjQ0ZTg2YmMxOTJicDY0OAorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIC0weDEuZGQzOGExZjFkMjg5YjYxNzMxMTU3MjFiYzVjMWZjNzJwLTU0LAorICAgIC0weDEuY2I0NGU4NmJjMTkyYnA2NDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjQKKyAgICAweDEuZGQzOGExZjFkMjg5YjYxNzMxMTU3MjFiYzYyOWEyM2RwLTUzLAorICAgIDB4MS5jYjQ0ZTg2YmMxOTJicDY0OQorICB9LAorICB7IC8vIEVudHJ5IDMyNQorICAgIC0weDEuZGQzOGExZjFkMjg5YjYxNzMxMTU3MjFiYzYyOWEyM2RwLTUzLAorICAgIC0weDEuY2I0NGU4NmJjMTkyYnA2NDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAtMHgxLmZmZjZlNzU1MzIwZWQ3OGRiNGQ2ZWZmNGJmNmE2YjEwcDEsCisgICAgMHgxLmNiNjFhZmVkYjJiM2NwMTE5CisgIH0sCisgIHsgLy8gRW50cnkgMzI3CisgICAgMHgxLmZmZjZlNzU1MzIwZWQ3OGRiNGQ2ZWZmNGJmNmE2YjEwcDEsCisgICAgLTB4MS5jYjYxYWZlZGIyYjNjcDExOQorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIDB4MS5jY2RmNGFhNmMyMjhmODA0MWJlOTFhMTQyZTBlMjcxYnAtNywKKyAgICAweDEuY2NkNzgzNGJhMzgwNHAtNworICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIC0weDEuY2NkZjRhYTZjMjI4ZjgwNDFiZTkxYTE0MmUwZTI3MWJwLTcsCisgICAgLTB4MS5jY2Q3ODM0YmEzODA0cC03CisgIH0sCisgIHsgLy8gRW50cnkgMzMwCisgICAgMHgxLmNlZTUwMDE2ZmMyZDg4MzcyODZiZjZmZDQzMWE3YjNicC00LAorICAgIDB4MS5jY2YwNTk5ZGE0NzhlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgLTB4MS5jZWU1MDAxNmZjMmQ4ODM3Mjg2YmY2ZmQ0MzFhN2IzYnAtNCwKKyAgICAtMHgxLmNjZjA1OTlkYTQ3OGVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzIKKyAgICAweDEuNDRjZjNlZThhNzVhODdjYzY2NTdlNjJmOTRhOTNlNmZwMCwKKyAgICAweDEuY2U4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzMzCisgICAgLTB4MS40NGNmM2VlOGE3NWE4N2NjNjY1N2U2MmY5NGE5M2U2ZnAwLAorICAgIC0weDEuY2U4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM0CisgICAgMHgxLjQ1YWExMmZmOTgxNTI4MDAwMDFmYmQ4Nzk5YTk2YTJjcDAsCisgICAgMHgxLmNmMjc2YzljYjlhZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAtMHgxLjQ1YWExMmZmOTgxNTI4MDAwMDFmYmQ4Nzk5YTk2YTJjcDAsCisgICAgLTB4MS5jZjI3NmM5Y2I5YWYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM2CisgICAgMHgxLmY5YmM3NDRmNjFlMGVkODUzODI5ZTJmNzY1YjhhMTJjcC00LAorICAgIDB4MS5kMmU5NzkxNDhhNDU4cDYxCisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgLTB4MS5mOWJjNzQ0ZjYxZTBlZDg1MzgyOWUyZjc2NWI4YTEyY3AtNCwKKyAgICAtMHgxLmQyZTk3OTE0OGE0NThwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzgKKyAgICAweDEuNmU3MGY5ZWRiZDFhMDgyYWU2ZjkwYzYyZWY0ZjMxZGRwLTIsCisgICAgMHgxLmQ2YjVhZDZiNWFiNjhwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgLTB4MS42ZTcwZjllZGJkMWEwODJhZTZmOTBjNjJlZjRmMzFkZHAtMiwKKyAgICAtMHgxLmQ2YjVhZDZiNWFiNjhwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQwCisgICAgMHgxLjEzZTljNmEzNDhlNGE3YmVkZTgyNzI0NTA1MjY5ZjY4cDIsCisgICAgMHgxLmQ5NmUwNThwNDg4CisgIH0sCisgIHsgLy8gRW50cnkgMzQxCisgICAgLTB4MS4xM2U5YzZhMzQ4ZTRhN2JlZGU4MjcyNDUwNTI2OWY2OHAyLAorICAgIC0weDEuZDk2ZTA1OHA0ODgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAtMHgxLmQzNTU0NjNjMjMwMzU4MmZhMzFhMzIzOGRjYmU1NjBlcC01LAorICAgIDB4MS5kZDEwZjI1MTcxYmM5cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAweDEuZDM1NTQ2M2MyMzAzNTgyZmEzMWEzMjM4ZGNiZTU2MGVwLTUsCisgICAgLTB4MS5kZDEwZjI1MTcxYmM5cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDQKKyAgICAweDEuZGRmMjFlYmY2ZmM5MjdmZmZmZmJiM2VjYzBjZmY2NmVwLTYsCisgICAgMHgxLmRkY2Y2ZTU2Njk2YTRwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAtMHgxLmRkZjIxZWJmNmZjOTI3ZmZmZmZiYjNlY2MwY2ZmNjZlcC02LAorICAgIC0weDEuZGRjZjZlNTY2OTZhNHAtNgorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIDB4MS41Y2IwYmZjMTU1ODAwN2UwYzVkMDk1ZjcyOWUzNDI3YnAwLAorICAgIDB4MS5lcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQ3CisgICAgLTB4MS41Y2IwYmZjMTU1ODAwN2UwYzVkMDk1ZjcyOWUzNDI3YnAwLAorICAgIC0weDEuZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIC0weDEuOTdiNWU4YWU5YTIxYzdmNDgyMTkyMmJjNWIzNzgyY2NwMSwKKyAgICAweDEuZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ5CisgICAgMHgxLjk3YjVlOGFlOWEyMWM3ZjQ4MjE5MjJiYzViMzc4MmNjcDEsCisgICAgLTB4MS5lcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAtMHgxLmY4YmY2OGQwYzIzZjM3NDFlZmI4YmQ5OTg1M2JhZThhcDAsCisgICAgMHgxLmU3NzlkZTc3OWRlNzFwMTE4CisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgMHgxLmY4YmY2OGQwYzIzZjM3NDFlZmI4YmQ5OTg1M2JhZThhcDAsCisgICAgLTB4MS5lNzc5ZGU3NzlkZTcxcDExOAorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIC0weDEuZmZmZmZmZmZmZDcxY2Y5MzRlZjNlNWRmNDAwODY2NWZwLTEsCisgICAgMHgxLmViMDU2N2JlZDFmNzFwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAweDEuZmZmZmZmZmZmZDcxY2Y5MzRlZjNlNWRmNDAwODY2NWZwLTEsCisgICAgLTB4MS5lYjA1NjdiZWQxZjcxcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMzU0CisgICAgMHgxLmVlNzg4ZDFjYzc5NTQ4NDE4Nzg0NzNhYTVkMjYxNWE1cC00LAorICAgIDB4MS5lYzE2ZjMwYTM0ZmJjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzU1CisgICAgLTB4MS5lZTc4OGQxY2M3OTU0ODQxODc4NDczYWE1ZDI2MTVhNXAtNCwKKyAgICAtMHgxLmVjMTZmMzBhMzRmYmNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTYKKyAgICAweDEuZWZkYWQ5MzhiNGIwZTgzNDAxNGJmNTZhNzA4NDY3NWRwLTQsCisgICAgMHgxLmVkNzQyNGJhMmFhNGVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAtMHgxLmVmZGFkOTM4YjRiMGU4MzQwMTRiZjU2YTcwODQ2NzVkcC00LAorICAgIC0weDEuZWQ3NDI0YmEyYWE0ZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIDB4MS5kYTM0NzYwNzk0OGY0N2ZmZWYyMTY5NzE2MWZkM2NkZHAtMSwKKyAgICAweDEuZWU5ZWRhNTg5MDM5MHA0OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAtMHgxLmRhMzQ3NjA3OTQ4ZjQ3ZmZlZjIxNjk3MTYxZmQzY2RkcC0xLAorICAgIC0weDEuZWU5ZWRhNTg5MDM5MHA0OTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAweDEuZjY4MmQyN2E4YmU4N2Y3ODNkNDk0ODU3YjZmMzBlMDVwMCwKKyAgICAweDEuZjRmZjBkN2IzYWMxMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAtMHgxLmY2ODJkMjdhOGJlODdmNzgzZDQ5NDg1N2I2ZjMwZTA1cDAsCisgICAgLTB4MS5mNGZmMGQ3YjNhYzEwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIC0weDEuZmZkMzZhNzUzY2VkOTAyN2M5Mzg0NWFkZGUwNDYyNDZwLTEsCisgICAgMHgxLmY1YTgxNGFmZDY5ZjVwMTE5CisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgMHgxLmZmZDM2YTc1M2NlZDkwMjdjOTM4NDVhZGRlMDQ2MjQ2cC0xLAorICAgIC0weDEuZjVhODE0YWZkNjlmNXAxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAtMHgxLjBmYTc3MDFkMDU5YjUxZGUwNWRmNThhZGUyNmJlYzVjcC05LAorICAgIDB4MS5mOGZjODI0ZDI2OTNicDYxCisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgMHgxLjBmYTc3MDFkMDU5YjUxZGUwNWRmNThhZGUyNmJlYzVjcC05LAorICAgIC0weDEuZjhmYzgyNGQyNjkzYnA2MQorICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIC0weDEuYWZlMzg3NWJkM2FmZTgwMWYxNDlkMGE5YWQzNmY0NTNwLTQsCisgICAgMHgxLmY5YmU2ZjliZTZmOThwOQorICB9LAorICB7IC8vIEVudHJ5IDM2NworICAgIDB4MS5hZmUzODc1YmQzYWZlODAxZjE0OWQwYTlhZDM2ZjQ1M3AtNCwKKyAgICAtMHgxLmY5YmU2ZjliZTZmOThwOQorICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS5mZDEwMzJlODJkZWFiN2JhYmE5OWM5MTNkZWUxMGI5YXAtNCwKKyAgICAweDEuZmE3NzVjZDI2NGY0M3AtNAorICB9LAorICB7IC8vIEVudHJ5IDM2OQorICAgIC0weDEuZmQxMDMyZTgyZGVhYjdiYWJhOTljOTEzZGVlMTBiOWFwLTQsCisgICAgLTB4MS5mYTc3NWNkMjY0ZjQzcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzcwCisgICAgMHgxLmZlYThjNjdkZDQ2Y2E4M2NhNDlhYjllY2QwMzYwNzM5cC00LAorICAgIDB4MS5mYzA5YjQ3NDAyZDgycC00CisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgLTB4MS5mZWE4YzY3ZGQ0NmNhODNjYTQ5YWI5ZWNkMDM2MDczOXAtNCwKKyAgICAtMHgxLmZjMDliNDc0MDJkODJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAtMHgxLjkwMjBjYWYxOGE4NzQzODEyN2E4NWQxZjBhM2Q0MjA1cC0xLAorICAgIDB4MS5mZWVmZmZmZmZmZmM2cDk5NQorICB9LAorICB7IC8vIEVudHJ5IDM3MworICAgIDB4MS45MDIwY2FmMThhODc0MzgxMjdhODVkMWYwYTNkNDIwNXAtMSwKKyAgICAtMHgxLmZlZWZmZmZmZmZmYzZwOTk1CisgIH0sCisgIHsgLy8gRW50cnkgMzc0CisgICAgMHgxLmFmMTM1YmViMGYyODE3ZmJhNzcyMDRhNWIxYjY3NjZicDAsCisgICAgMHgxLmZmMDFmZmZmZmZmZmZwNworICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIC0weDEuYWYxMzViZWIwZjI4MTdmYmE3NzIwNGE1YjFiNjc2NmJwMCwKKyAgICAtMHgxLmZmMDFmZmZmZmZmZmZwNworICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIC0weDEuZmQ5NzUzMmVmZDg5YjI2YmMyOTRiMjdlMGExOTU2YjlwMywKKyAgICAweDEuZmY4ZmZmZmZmZmZmZnA1NDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzcKKyAgICAweDEuZmQ5NzUzMmVmZDg5YjI2YmMyOTRiMjdlMGExOTU2YjlwMywKKyAgICAtMHgxLmZmOGZmZmZmZmZmZmZwNTQwCisgIH0sCisgIHsgLy8gRW50cnkgMzc4CisgICAgLTB4MS5jYzMyY2I5MzM4MTgxMTFlNmRkZjAwYzVjNzljYmM4OHAtMSwKKyAgICAweDEuZmY4ZmZmZmZmZmZmZnA4NzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAweDEuY2MzMmNiOTMzODE4MTExZTZkZGYwMGM1Yzc5Y2JjODhwLTEsCisgICAgLTB4MS5mZjhmZmZmZmZmZmZmcDg3MAorICB9LAorICB7IC8vIEVudHJ5IDM4MAorICAgIC0weDEuODY1OWQzZTJiNTJiODgwNjY4YWM4YjRiOWZhZTk1MzhwLTEsCisgICAgMHgxLmZmYzEwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODEKKyAgICAweDEuODY1OWQzZTJiNTJiODgwNjY4YWM4YjRiOWZhZTk1MzhwLTEsCisgICAgLTB4MS5mZmMxMHA5CisgIH0sCisgIHsgLy8gRW50cnkgMzgyCisgICAgLTB4MS5iNjYwNjZmYjgxMmVlMjdkYmI2MjNhMWExMzUzZTA2MnAtMiwKKyAgICAweDEuZmZjZmZmOHAxOQorICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIDB4MS5iNjYwNjZmYjgxMmVlMjdkYmI2MjNhMWExMzUzZTA2MnAtMiwKKyAgICAtMHgxLmZmY2ZmZjhwMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODQKKyAgICAtMHgxLjUyMGViZDMyZTFkOGVjZDM4YmZjZDZhNTdlMWEzNzdmcDEsCisgICAgMHgxLmZmY2ZmZjhwMzY1CisgIH0sCisgIHsgLy8gRW50cnkgMzg1CisgICAgMHgxLjUyMGViZDMyZTFkOGVjZDM4YmZjZDZhNTdlMWEzNzdmcDEsCisgICAgLTB4MS5mZmNmZmY4cDM2NQorICB9LAorICB7IC8vIEVudHJ5IDM4NgorICAgIDB4MS40ODk4MTNjMjRkMTNiMDBhYjY5NjI3ZDg1OGJiNjNiNXAwLAorICAgIDB4MS5mZmNmZmZmZmZmZjZjcDcyMAorICB9LAorICB7IC8vIEVudHJ5IDM4NworICAgIC0weDEuNDg5ODEzYzI0ZDEzYjAwYWI2OTYyN2Q4NThiYjYzYjVwMCwKKyAgICAtMHgxLmZmY2ZmZmZmZmZmNmNwNzIwCisgIH0sCisgIHsgLy8gRW50cnkgMzg4CisgICAgMHgxLjQxM2U2M2Y3ZGQ2MDdlZjNjODQyMmE0OTBhZjJkYzMwcDAsCisgICAgMHgxLmZmY2ZmZmZmZmZmZjlwMzIwCisgIH0sCisgIHsgLy8gRW50cnkgMzg5CisgICAgLTB4MS40MTNlNjNmN2RkNjA3ZWYzYzg0MjJhNDkwYWYyZGMzMHAwLAorICAgIC0weDEuZmZjZmZmZmZmZmZmOXAzMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTAKKyAgICAtMHgxLmZjMzkyOGEzOWI2NTI4NGQ0YzdlZjNiNmEyZWRjOGYxcC0yLAorICAgIDB4MS5mZmNmZmZmZmZmZmZmcDk5MAorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIDB4MS5mYzM5MjhhMzliNjUyODRkNGM3ZWYzYjZhMmVkYzhmMXAtMiwKKyAgICAtMHgxLmZmY2ZmZmZmZmZmZmZwOTkwCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgLTB4MS45YWQ3MGQyODRmMTZkNTlkY2FhMGFiOWZiNzdkNzQ5MHAtMSwKKyAgICAweDEuZmZlZmZmZmZmZmZjY3A5OTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTMKKyAgICAweDEuOWFkNzBkMjg0ZjE2ZDU5ZGNhYTBhYjlmYjc3ZDc0OTBwLTEsCisgICAgLTB4MS5mZmVmZmZmZmZmZmNjcDk5NQorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIDB4MS5hYWQ2ZWZmY2I2NzgzODI2ZGU3YjI0ZGJhNTAxYzExY3AtMywKKyAgICAweDEuZmZlZmZmZmZmZmZmZHAzNjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTUKKyAgICAtMHgxLmFhZDZlZmZjYjY3ODM4MjZkZTdiMjRkYmE1MDFjMTFjcC0zLAorICAgIC0weDEuZmZlZmZmZmZmZmZmZHAzNjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAweDEuYzg4NjQ1ZjlkMTE5ZWMyMDMwNzI0YTRjZTRlNmViYmFwMiwKKyAgICAweDEuZmZlZmZmZmZmZmZmZnAxODAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAtMHgxLmM4ODY0NWY5ZDExOWVjMjAzMDcyNGE0Y2U0ZTZlYmJhcDIsCisgICAgLTB4MS5mZmVmZmZmZmZmZmZmcDE4MAorICB9LAorICB7IC8vIEVudHJ5IDM5OAorICAgIDB4MS4xMzFhYTdiOWQ0YWEwN2ZmNTg0MGFjMWU4ZmI0MjM2MHAyLAorICAgIDB4MS5mZmVmZmZmZmZmZmZmcDIzMQorICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIC0weDEuMTMxYWE3YjlkNGFhMDdmZjU4NDBhYzFlOGZiNDIzNjBwMiwKKyAgICAtMHgxLmZmZWZmZmZmZmZmZmZwMjMxCisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLmY2NzE3MTliZTUwZDFkNGRlYmU4NWM5MjJlMWUyOTEzcC0zLAorICAgIDB4MS5mZmVmZmZmZmZmZmZmcDEwMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDEKKyAgICAtMHgxLmY2NzE3MTliZTUwZDFkNGRlYmU4NWM5MjJlMWUyOTEzcC0zLAorICAgIC0weDEuZmZlZmZmZmZmZmZmZnAxMDE5CisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgMHgxLmZmMDc4YTJkMmQ4NzFhYzFmMzI3NjVlOWRiNjQ0ZWIxcC0xLAorICAgIDB4MS5mZmYxZmZmZmZmZmZmcDQwCisgIH0sCisgIHsgLy8gRW50cnkgNDAzCisgICAgLTB4MS5mZjA3OGEyZDJkODcxYWMxZjMyNzY1ZTlkYjY0NGViMXAtMSwKKyAgICAtMHgxLmZmZjFmZmZmZmZmZmZwNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDQKKyAgICAweDEuMDc4NGIwNGZjNDJhNTllNzdmODVkOTk2N2RhNjc3NWRwOSwKKyAgICAweDEuZmZmMWZmZmZmZmZmZnA0MQorICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIC0weDEuMDc4NGIwNGZjNDJhNTllNzdmODVkOTk2N2RhNjc3NWRwOSwKKyAgICAtMHgxLmZmZjFmZmZmZmZmZmZwNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDYKKyAgICAweDEuOGViMjJkZDE2N2EzN2FkMjFkZGYxZTY5NzM0ZTljZTJwMCwKKyAgICAweDEuZmZmZmYxZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIC0weDEuOGViMjJkZDE2N2EzN2FkMjFkZGYxZTY5NzM0ZTljZTJwMCwKKyAgICAtMHgxLmZmZmZmMWZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDgKKyAgICAtMHgxLjIyZTczNDZmZDNkZGE1NTNiMTQ2YzM3ZjYxMTI3YTRjcDEsCisgICAgMHgxLmZmZmZmZjhwMTE5CisgIH0sCisgIHsgLy8gRW50cnkgNDA5CisgICAgMHgxLjIyZTczNDZmZDNkZGE1NTNiMTQ2YzM3ZjYxMTI3YTRjcDEsCisgICAgLTB4MS5mZmZmZmY4cDExOQorICB9LAorICB7IC8vIEVudHJ5IDQxMAorICAgIC0weDEuZGIwYjNiMDE5ZjE3NWJlZDViY2YxYTU2MDJkYjAwYWZwLTMsCisgICAgMHgxLmZmZmZmZjhwMTkyCisgIH0sCisgIHsgLy8gRW50cnkgNDExCisgICAgMHgxLmRiMGIzYjAxOWYxNzViZWQ1YmNmMWE1NjAyZGIwMGFmcC0zLAorICAgIC0weDEuZmZmZmZmOHAxOTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTIKKyAgICAweDEuMDZiNmJlZGU5MTAyNTdmMzE1YTUwODNhOWFiMmI2NTBwLTEsCisgICAgMHgxLmZmZmZmZjhwNTQzCisgIH0sCisgIHsgLy8gRW50cnkgNDEzCisgICAgLTB4MS4wNmI2YmVkZTkxMDI1N2YzMTVhNTA4M2E5YWIyYjY1MHAtMSwKKyAgICAtMHgxLmZmZmZmZjhwNTQzCisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgLTB4MS40MGYwMmExNWRmYTNkN2ZmM2UyYTQ1NTNmMTljYjJkMHAxLAorICAgIDB4MS5mZmZmZmZmZmJiZmZmcDQwCisgIH0sCisgIHsgLy8gRW50cnkgNDE1CisgICAgMHgxLjQwZjAyYTE1ZGZhM2Q3ZmYzZTJhNDU1M2YxOWNiMmQwcDEsCisgICAgLTB4MS5mZmZmZmZmZmJiZmZmcDQwCisgIH0sCisgIHsgLy8gRW50cnkgNDE2CisgICAgMHgxLmFiNjAxMTJlZjRmZGRmZjNmNWEyNjkwYzdkM2VhNmVmcC0yLAorICAgIDB4MS5mZmZmZmZmZmY3ZmZmcDIzMQorICB9LAorICB7IC8vIEVudHJ5IDQxNworICAgIC0weDEuYWI2MDExMmVmNGZkZGZmM2Y1YTI2OTBjN2QzZWE2ZWZwLTIsCisgICAgLTB4MS5mZmZmZmZmZmY3ZmZmcDIzMQorICB9LAorICB7IC8vIEVudHJ5IDQxOAorICAgIDB4MS4zNWE5OTI5ZWVhZmQ3MGYwNzEyYWJlMmE1MTE4NTRhMXAwLAorICAgIDB4MS5mZmZmZmZmZmZmZjc4cDkyMAorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIC0weDEuMzVhOTkyOWVlYWZkNzBmMDcxMmFiZTJhNTExODU0YTFwMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmNzhwOTIwCisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgMHgxLjQ2MzAyOThmM2I5OTMyODcyMDVkYzBiODliMDYwMWUwcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZDVwOTk1CisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgLTB4MS40NjMwMjk4ZjNiOTkzMjg3MjA1ZGMwYjg5YjA2MDFlMHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZkNXA5OTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjIKKyAgICAtMHgxLjk0NzJlMDQ1MTI5ZmRiYTYzNzkxNzEyNDE2ZWM5NjEzcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmU4cDcyMAorICB9LAorICB7IC8vIEVudHJ5IDQyMworICAgIDB4MS45NDcyZTA0NTEyOWZkYmE2Mzc5MTcxMjQxNmVjOTYxM3AtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZThwNzIwCisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgMHgxLjQyZTU4NmRhYTFiNDI4ZmMwNTgwODg4ZjJmYzQ2ODkzcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZWJwOTIwCisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgLTB4MS40MmU1ODZkYWExYjQyOGZjMDU4MDg4OGYyZmM0Njg5M3AwLAorICAgIC0weDEuZmZmZmZmZmZmZmZlYnA5MjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjYKKyAgICAtMHgxLmJmYzQzNmI5NDM3NGI1ZjE2YjYwZWE2OWNkODgzOTkycC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmYxcDI0NQorICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIDB4MS5iZmM0MzZiOTQzNzRiNWYxNmI2MGVhNjljZDg4Mzk5MnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjFwMjQ1CisgIH0sCisgIHsgLy8gRW50cnkgNDI4CisgICAgMHgxLjM1MTE3ZDRhNGYxZTRiYjIyZmRkMDMxNjRhMzY0Y2NmcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZjRwODQ1CisgIH0sCisgIHsgLy8gRW50cnkgNDI5CisgICAgLTB4MS4zNTExN2Q0YTRmMWU0YmIyMmZkZDAzMTY0YTM2NGNjZnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmNHA4NDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzAKKyAgICAtMHgxLmJmZGQ5MjkyNzk4YWFhNzg5YzNkZjBkZjc3Mjk4MzVhcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmY0cDEwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAweDEuYmZkZDkyOTI3OThhYWE3ODljM2RmMGRmNzcyOTgzNWFwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmY0cDEwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzIKKyAgICAtMHgxLjliNzY4Y2NkYWU2ZWJiNzBiNDVhYzE0ZTkyYjNkNWM4cDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwNDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzMKKyAgICAweDEuOWI3NjhjY2RhZTZlYmI3MGI0NWFjMTRlOTJiM2Q1YzhwOSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwNDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzQKKyAgICAweDEuZmVjYTA0N2YyNzMwZjczOTVkOTVmNDY5Y2NiNWE1ZDNwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwNDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDM1CisgICAgLTB4MS5mZWNhMDQ3ZjI3MzBmNzM5NWQ5NWY0NjljY2I1YTVkM3AtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwNDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDM2CisgICAgLTB4MS40NDlmMTVjYzk0NTU5N2ZmNThmMjQyNmFjYmZmOWM2MnAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmY3A5NzYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAweDEuNDQ5ZjE1Y2M5NDU1OTdmZjU4ZjI0MjZhY2JmZjljNjJwLTIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZjcDk3NgorICB9LAorICB7IC8vIEVudHJ5IDQzOAorICAgIDB4MS5mZmZjNThkYTA3OTUxY2JlMjJjOTZkNzNiMTI4OWUxZXAtMiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA4ODEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzkKKyAgICAtMHgxLmZmZmM1OGRhMDc5NTFjYmUyMmM5NmQ3M2IxMjg5ZTFlcC0yLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXA4ODEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAtMHgxLmMxYzkxOTVlYzIzYWE2NGRmMTQ1ZGQyNjljZDg5NWU4cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDk3MAorICB9LAorICB7IC8vIEVudHJ5IDQ0MQorICAgIDB4MS5jMWM5MTk1ZWMyM2FhNjRkZjE0NWRkMjY5Y2Q4OTVlOHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwOTcwCisgIH0sCisgIHsgLy8gRW50cnkgNDQyCisgICAgMHgxLjNjYzFlZDM5MDZkMmY3ZmRkNjMzY2Y0ZWIwNmYzZjE5cC0yLAorICAgIDB4MS4zMzMyOGMxYjM3MzIxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDQzCisgICAgLTB4MS4zY2MxZWQzOTA2ZDJmN2ZkZDYzM2NmNGViMDZmM2YxOXAtMiwKKyAgICAtMHgxLjMzMzI4YzFiMzczMjFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDQKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDUKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDQ2CisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwLTEwMjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDUwCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDUxCisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDUyCisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDQ1MworICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDU1CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDU2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTcKKyAgICAweDEucC0xMDIyLAorICAgIDB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDU4CisgICAgLTB4MS5wLTEwMjIsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcC0xMDIyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjEKKyAgICAweDEuOTk5OTk5ZjBmYjM4YzYxMjJhMWZhOGUwNDNiYjA3YzJwLTEzLAorICAgIDB4MS45OTk5OTk5OTk5OTlhcC0xMworICB9LAorICB7IC8vIEVudHJ5IDQ2MgorICAgIC0weDEuOTk5OTk5ZjBmYjM4YzYxMjJhMWZhOGUwNDNiYjA3YzJwLTEzLAorICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICAweDEuOTk5OTlhZjcyMDE3NDRiODIzZTViMjcwZmQxYWEzOWRwLTEyLAorICAgIDB4MS45OTk5OTk5OTk5OTlhcC0xMgorICB9LAorICB7IC8vIEVudHJ5IDQ2NAorICAgIC0weDEuOTk5OTlhZjcyMDE3NDRiODIzZTViMjcwZmQxYWEzOWRwLTEyLAorICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjUKKyAgICAweDEuMzMzMzM1ODEwNjJhMzhmMDRkZjAyNDE0MmRkYWEwNWRwLTExLAorICAgIDB4MS4zMzMzMzMzMzMzMzM0cC0xMQorICB9LAorICB7IC8vIEVudHJ5IDQ2NgorICAgIC0weDEuMzMzMzM1ODEwNjJhMzhmMDRkZjAyNDE0MmRkYWEwNWRwLTExLAorICAgIC0weDEuMzMzMzMzMzMzMzMzNHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjcKKyAgICAweDEuOTk5OTlmMGZiM2EwZjlkODg3MzhiZTJmZjdhZjlhYWFwLTExLAorICAgIDB4MS45OTk5OTk5OTk5OTlhcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIC0weDEuOTk5OTlmMGZiM2EwZjlkODg3MzhiZTJmZjdhZjlhYWFwLTExLAorICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjkKKyAgICAweDEuMDAwMDA1NTU1NTc3Nzc3ODU0ODU0ZGVkYzI4ZWFkNTFwLTEwLAorICAgIDB4MS4wcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIC0weDEuMDAwMDA1NTU1NTc3Nzc3ODU0ODU0ZGVkYzI4ZWFkNTFwLTEwLAorICAgIC0weDEuMHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzEKKyAgICAweDEuMzMzMzNjNmE3ZjRlYzczODUzMTUxY2Q3NmI3OWUxMzVwLTEwLAorICAgIDB4MS4zMzMzMzMzMzMzMzMzcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ3MgorICAgIC0weDEuMzMzMzNjNmE3ZjRlYzczODUzMTUxY2Q3NmI3OWUxMzVwLTEwLAorICAgIC0weDEuMzMzMzMzMzMzMzMzM3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzMKKyAgICAweDEuNjY2Njc1MDhlMGExYjUwMjI4NzAzNGQzNmJmNGUzZDVwLTEwLAorICAgIDB4MS42NjY2NjY2NjY2NjY2cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ3NAorICAgIC0weDEuNjY2Njc1MDhlMGExYjUwMjI4NzAzNGQzNmJmNGUzZDVwLTEwLAorICAgIC0weDEuNjY2NjY2NjY2NjY2NnAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzUKKyAgICAweDEuOTk5OWFmNzIwMmMzNjZmMWUwYjU0OGEzMWM0MWQyMTBwLTEwLAorICAgIDB4MS45OTk5OTk5OTk5OTk5cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ3NgorICAgIC0weDEuOTk5OWFmNzIwMmMzNjZmMWUwYjU0OGEzMWM0MWQyMTBwLTEwLAorICAgIC0weDEuOTk5OTk5OTk5OTk5OXAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAweDEuY2NjY2ViZTc2ZjEwMmZmNjMzYzVmMDJhMzQwNzY2ODdwLTEwLAorICAgIDB4MS5jY2NjY2NjY2NjY2NjcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDQ3OAorICAgIC0weDEuY2NjY2ViZTc2ZjEwMmZmNjMzYzVmMDJhMzQwNzY2ODdwLTEwLAorICAgIC0weDEuY2NjY2NjY2NjY2NjY3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzkKKyAgICAweDEuMDY2N2Q1ZmNmM2QwNzhmOTQwNjg3ZWI5NzQzMTBmYjlwLTcsCisgICAgMHgxLjA2NjY2NjY2NjY2NjZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODAKKyAgICAtMHgxLjA2NjdkNWZjZjNkMDc4Zjk0MDY4N2ViOTc0MzEwZmI5cC03LAorICAgIC0weDEuMDY2NjY2NjY2NjY2NnAtNworICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIDB4MS5jY2Q0OTM5ZDBjY2Q3NjQ2YjNmODFiNzU1MzY3NWMyM3AtNywKKyAgICAweDEuY2NjY2NjY2NjY2NjY3AtNworICB9LAorICB7IC8vIEVudHJ5IDQ4MgorICAgIC0weDEuY2NkNDkzOWQwY2NkNzY0NmIzZjgxYjc1NTM2NzVjMjNwLTcsCisgICAgLTB4MS5jY2NjY2NjY2NjY2NjcC03CisgIH0sCisgIHsgLy8gRW50cnkgNDgzCisgICAgMHgxLjQ5YTRmYzAyYWQxOTNlOGU5NGM0YjI0MjkxOTBiNWIycC02LAorICAgIDB4MS40OTk5OTk5OTk5OTk5cC02CisgIH0sCisgIHsgLy8gRW50cnkgNDg0CisgICAgLTB4MS40OWE0ZmMwMmFkMTkzZThlOTRjNGIyNDI5MTkwYjViMnAtNiwKKyAgICAtMHgxLjQ5OTk5OTk5OTk5OTlwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAweDEuYWNlNWRlZDVmNmJlNjk4ZjU2Njk3YWM3NjFmM2RjNjlwLTYsCisgICAgMHgxLmFjY2NjY2NjY2NjY2NwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODYKKyAgICAtMHgxLmFjZTVkZWQ1ZjZiZTY5OGY1NjY5N2FjNzYxZjNkYzY5cC02LAorICAgIC0weDEuYWNjY2NjY2NjY2NjY3AtNgorICB9LAorICB7IC8vIEVudHJ5IDQ4NworICAgIDB4MS4wODE3NjdmZDNjYjY4NWY3YjA2OTE0NmNlMzMzMzg1MXAtNSwKKyAgICAweDEuMDgwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDg4CisgICAgLTB4MS4wODE3NjdmZDNjYjY4NWY3YjA2OTE0NmNlMzMzMzg1MXAtNSwKKyAgICAtMHgxLjA4MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIDB4MS4zOWMwZDZkZWE2NmZiNmQyODZkNDAzYzI5MjUyNzM1NnAtNSwKKyAgICAweDEuMzk5OTk5OTk5OTk5YXAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ5MAorICAgIC0weDEuMzljMGQ2ZGVhNjZmYjZkMjg2ZDQwM2MyOTI1MjczNTZwLTUsCisgICAgLTB4MS4zOTk5OTk5OTk5OTlhcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDkxCisgICAgMHgxLjZiNzAyYjk1NGJjMWQ1ODNjNGE0Njc3M2MyYzJhMTVkcC01LAorICAgIDB4MS42YjMzMzMzMzMzMzM0cC01CisgIH0sCisgIHsgLy8gRW50cnkgNDkyCisgICAgLTB4MS42YjcwMmI5NTRiYzFkNTgzYzRhNDY3NzNjMmMyYTE1ZHAtNSwKKyAgICAtMHgxLjZiMzMzMzMzMzMzMzRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICAweDEuOWQyNjU2MThkZDBjNjg4ZTA0OWM2MTA5MGQzZTNmZTJwLTUsCisgICAgMHgxLjljY2NjY2NjY2NjY2VwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTQKKyAgICAtMHgxLjlkMjY1NjE4ZGQwYzY4OGUwNDljNjEwOTBkM2UzZmUycC01LAorICAgIC0weDEuOWNjY2NjY2NjY2NjZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ5NQorICAgIDB4MS5jZWU0NDZlNGNmZDRiZTY5MDBmNGI5MDZjYTk3MjViMXAtNSwKKyAgICAweDEuY2U2NjY2NjY2NjY2NnAtNQorICB9LAorICB7IC8vIEVudHJ5IDQ5NgorICAgIC0weDEuY2VlNDQ2ZTRjZmQ0YmU2OTAwZjRiOTA2Y2E5NzI1YjFwLTUsCisgICAgLTB4MS5jZTY2NjY2NjY2NjY2cC01CisgIH0sCisgIHsgLy8gRW50cnkgNDk3CisgICAgMHgxLmExZWFlZGQ1YTQzMTNlOWQwOGJjN2JiMTdhMjI1MzFmcC0xLAorICAgIDB4MS41ZTdmYzQzNjliZGFkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDk4CisgICAgLTB4MS5hMWVhZWRkNWE0MzEzZTlkMDhiYzdiYjE3YTIyNTMxZnAtMSwKKyAgICAtMHgxLjVlN2ZjNDM2OWJkYWRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTkKKyAgICAweDEuZDkzYjhhYWQ0MjRkZTBlNDNmYjA0ZDY3ODFiZTgxYTNwMSwKKyAgICAweDEuNGU3ZmM0MzY5YmRhZHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTAwCisgICAgLTB4MS5kOTNiOGFhZDQyNGRlMGU0M2ZiMDRkNjc4MWJlODFhM3AxLAorICAgIC0weDEuNGU3ZmM0MzY5YmRhZHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTAxCisgICAgLTB4MS41NjNhY2YxNThjMmViNjc4ZDcxYmUzMWUwZjM0NzU0ZHAxLAorICAgIDB4MS5lZGJmYTY1MWU5Yzg0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDIKKyAgICAweDEuNTYzYWNmMTU4YzJlYjY3OGQ3MWJlMzFlMGYzNDc1NGRwMSwKKyAgICAtMHgxLmVkYmZhNjUxZTljODRwMAorICB9LAorICB7IC8vIEVudHJ5IDUwMworICAgIC0weDEuNTc2Yjc3NjA5ZjA4OTAzMTNjMzcxYTBhMmM1ODIxNDVwLTEsCisgICAgMHgxLjQ2N2ZjNDM2OWJkYWRwMQorICB9LAorICB7IC8vIEVudHJ5IDUwNAorICAgIDB4MS41NzZiNzc2MDlmMDg5MDMxM2MzNzFhMGEyYzU4MjE0NXAtMSwKKyAgICAtMHgxLjQ2N2ZjNDM2OWJkYWRwMQorICB9LAorICB7IC8vIEVudHJ5IDUwNQorICAgIDB4MS4wMDE1NTc3N2FlYmY2YWQ0MWIzOWE4MDhlZDVjMzM4NHAtNSwKKyAgICAweDEuOTYxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTA2CisgICAgLTB4MS4wMDE1NTc3N2FlYmY2YWQ0MWIzOWE4MDhlZDVjMzM4NHAtNSwKKyAgICAtMHgxLjk2MWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDUwNworICAgIDB4MS44N2U5OTY2ZTdkMjJkMzQ4ZmVjNmM5NWY4NTE3NzVmNHAtMSwKKyAgICAweDEuZTViZmE2NTFlOWM4M3AxCisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgLTB4MS44N2U5OTY2ZTdkMjJkMzQ4ZmVjNmM5NWY4NTE3NzVmNHAtMSwKKyAgICAtMHgxLmU1YmZhNjUxZTljODNwMQorICB9LAorICB7IC8vIEVudHJ5IDUwOQorICAgIDB4MS5hNDllN2Q4OTg3ODUwZjljYTViOTMzMmUzOWRjZDg4ZnAxLAorICAgIDB4MS4xYWFmY2JhZmM4NWY3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTAKKyAgICAtMHgxLmE0OWU3ZDg5ODc4NTBmOWNhNWI5MzMyZTM5ZGNkODhmcDEsCisgICAgLTB4MS4xYWFmY2JhZmM4NWY3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTEKKyAgICAtMHgxLjc5Y2VkODE1NmQwNDBlZGRlNWE2YWI2MjI1NWUyMjYxcDEsCisgICAgMHgxLjQyN2ZjNDM2OWJkYWRwMgorICB9LAorICB7IC8vIEVudHJ5IDUxMgorICAgIDB4MS43OWNlZDgxNTZkMDQwZWRkZTVhNmFiNjIyNTVlMjI2MXAxLAorICAgIC0weDEuNDI3ZmM0MzY5YmRhZHAyCisgIH0sCisgIHsgLy8gRW50cnkgNTEzCisgICAgLTB4MS42ZjFmNjVjZDFlOTFiNWU1ZWMxZTEyMGU5ZTBkZGMwYXAtMSwKKyAgICAweDEuNmE0ZmJjYmQ2ZjU2MnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgMHgxLjZmMWY2NWNkMWU5MWI1ZTVlYzFlMTIwZTllMGRkYzBhcC0xLAorICAgIC0weDEuNmE0ZmJjYmQ2ZjU2MnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTE1CisgICAgLTB4MS42Nzc0N2Q1Zjg0NGUxYjBjNTAzZDUxZTdiYTAzMmZmY3AtMSwKKyAgICAweDEuNmFmMmVmZjBhMjg5NnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgMHgxLjY3NzQ3ZDVmODQ0ZTFiMGM1MDNkNTFlN2JhMDMyZmZjcC0xLAorICAgIC0weDEuNmFmMmVmZjBhMjg5NnAyCisgIH0sCisgIHsgLy8gRW50cnkgNTE3CisgICAgLTB4MS42MjZhMjU4ODE1ZDE4MjM1MDZkMTcwNjkxMzBlYjlmYnAxLAorICAgIDB4MS40M2M2MmE5ZDAyNDE0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICAweDEuNjI2YTI1ODgxNWQxODIzNTA2ZDE3MDY5MTMwZWI5ZmJwMSwKKyAgICAtMHgxLjQzYzYyYTlkMDI0MTRwMgorICB9LAorICB7IC8vIEVudHJ5IDUxOQorICAgIDB4MS5kNmFkYWY4MGY4YjA1MWZiYzdhYjlmMmUwOWU4ZTYwOHAxLAorICAgIDB4MS4xYzk5NjU0OTYxZjkycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjAKKyAgICAtMHgxLmQ2YWRhZjgwZjhiMDUxZmJjN2FiOWYyZTA5ZThlNjA4cDEsCisgICAgLTB4MS4xYzk5NjU0OTYxZjkycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjEKKyAgICAweDEuYTk0ZDFiMjEzNzBkNTJiZmNkOWVjNDE3ZTQxZDZlNWJwLTEsCisgICAgMHgxLmVhZDkzZmViODM2MWZwMQorICB9LAorICB7IC8vIEVudHJ5IDUyMgorICAgIC0weDEuYTk0ZDFiMjEzNzBkNTJiZmNkOWVjNDE3ZTQxZDZlNWJwLTEsCisgICAgLTB4MS5lYWQ5M2ZlYjgzNjFmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjMKKyAgICAweDEuNGNiYTllNzgyMjIzNDBjYTQ5M2Y4MDNiYmM5NDc2NTlwLTQsCisgICAgMHgxLjljN2ZiNTQ0NDJkMWFwMQorICB9LAorICB7IC8vIEVudHJ5IDUyNAorICAgIC0weDEuNGNiYTllNzgyMjIzNDBjYTQ5M2Y4MDNiYmM5NDc2NTlwLTQsCisgICAgLTB4MS45YzdmYjU0NDQyZDFhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAtMHgxLjJjYjZkMDI2MzQ1MzFhNjgzOWJmODk4Y2MxZjkxOGRlcC0xLAorICAgIDB4MS40ZTI2MmE5ZDAyNDE1cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjYKKyAgICAweDEuMmNiNmQwMjYzNDUzMWE2ODM5YmY4OThjYzFmOTE4ZGVwLTEsCisgICAgLTB4MS40ZTI2MmE5ZDAyNDE1cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjcKKyAgICAtMHgxLjE4ZDkxMTIzMDhkNWI4OTdiYTQ0Y2ZjNWM0NDM3MzE3cDEsCisgICAgMHgxLmZmOTkzZmViODM2MjBwMAorICB9LAorICB7IC8vIEVudHJ5IDUyOAorICAgIDB4MS4xOGQ5MTEyMzA4ZDViODk3YmE0NGNmYzVjNDQzNzMxN3AxLAorICAgIC0weDEuZmY5OTNmZWI4MzYyMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTI5CisgICAgMHgxLjU2ZmUwMTQ1Y2YyOTAxOTc1ODI5ZGRjM2ZjNzg2ZGYwcDIsCisgICAgMHgxLjYyZTYyYTlkMDI0MTZwMAorICB9LAorICB7IC8vIEVudHJ5IDUzMAorICAgIC0weDEuNTZmZTAxNDVjZjI5MDE5NzU4MjlkZGMzZmM3ODZkZjBwMiwKKyAgICAtMHgxLjYyZTYyYTlkMDI0MTZwMAorICB9LAorICB7IC8vIEVudHJ5IDUzMQorICAgIDB4MS5mNGFkMzUzYWNhNDUzZjYyYmVhZTAxY2Q1YjEzZDUwZHAtMSwKKyAgICAweDEuOGM2NjJhOWQwMjQxOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIC0weDEuZjRhZDM1M2FjYTQ1M2Y2MmJlYWUwMWNkNWIxM2Q1MGRwLTEsCisgICAgLTB4MS44YzY2MmE5ZDAyNDE5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTMzCisgICAgMHgxLjZhN2UxZjY0MDdlZTYxMzk3ZDAxNmQ2OTFiYjYxZDE3cDMsCisgICAgLTB4MS5hOGFhMWQxMWM0NGZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzQKKyAgICAtMHgxLjZhN2UxZjY0MDdlZTYxMzk3ZDAxNmQ2OTFiYjYxZDE3cDMsCisgICAgMHgxLmE4YWExZDExYzQ0ZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDUzNQorICAgIDB4MS4wZDcxOGNmYzgyNDY0NTM2YmZkNjIxYmU0MTlmMDA3Y3A2LAorICAgIC0weDEuOTVlYzhiOWUwM2Q1NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTM2CisgICAgLTB4MS4wZDcxOGNmYzgyNDY0NTM2YmZkNjIxYmU0MTlmMDA3Y3A2LAorICAgIDB4MS45NWVjOGI5ZTAzZDU0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzcKKyAgICAtMHgxLjExZDg3MTQ2YzJkNWExODMyYzI0ZjNkODcwNTJkN2VicDQsCisgICAgLTB4MS44MzJlZmEyYTQzNWE5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzgKKyAgICAweDEuMTFkODcxNDZjMmQ1YTE4MzJjMjRmM2Q4NzA1MmQ3ZWJwNCwKKyAgICAweDEuODMyZWZhMmE0MzVhOXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTM5CisgICAgLTB4MS5lM2EzNzI5YjNlODZlMjIyMWZhNWYwNGFiZjY5OWU2ZXAyLAorICAgIC0weDEuNzA3MTY4YjY4MmRmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQwCisgICAgMHgxLmUzYTM3MjliM2U4NmUyMjIxZmE1ZjA0YWJmNjk5ZTZlcDIsCisgICAgMHgxLjcwNzE2OGI2ODJkZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDU0MQorICAgIC0weDEuMzQyOWU2MWE1ZDFmMmU4MGZiZDEzNzBkNGE3YzJiMTBwMiwKKyAgICAtMHgxLjVkYjNkNzQyYzI2NTNwMAorICB9LAorICB7IC8vIEVudHJ5IDU0MgorICAgIDB4MS4zNDI5ZTYxYTVkMWYyZTgwZmJkMTM3MGQ0YTdjMmIxMHAyLAorICAgIDB4MS41ZGIzZDc0MmMyNjUzcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDMKKyAgICAtMHgxLmMwOGNhZWM1Y2Y5OTcyNWU1N2MzMjc2NmZiMDg0YzVmcDEsCisgICAgLTB4MS40YWY2NDVjZjAxZWE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDQKKyAgICAweDEuYzA4Y2FlYzVjZjk5NzI1ZTU3YzMyNzY2ZmIwODRjNWZwMSwKKyAgICAweDEuNGFmNjQ1Y2YwMWVhOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ1CisgICAgLTB4MS41ZDYwM2Q3NTE3NjdlZTcwZTlhMmZmNTQ5NTlmYTRhN3AxLAorICAgIC0weDEuMzgzOGI0NWI0MTZmZHAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgMHgxLjVkNjAzZDc1MTc2N2VlNzBlOWEyZmY1NDk1OWZhNGE3cDEsCisgICAgMHgxLjM4MzhiNDViNDE2ZmRwMAorICB9LAorICB7IC8vIEVudHJ5IDU0NworICAgIC0weDEuMWI0OGEzNWIxYjI3N2VmZmFiZDcyNzhiNTI1NzA4ZWRwMSwKKyAgICAtMHgxLjI1N2IyMmU3ODBmNTJwMAorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIDB4MS4xYjQ4YTM1YjFiMjc3ZWZmYWJkNzI3OGI1MjU3MDhlZHAxLAorICAgIDB4MS4yNTdiMjJlNzgwZjUycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDkKKyAgICAtMHgxLmQ3NGNhZjk5MTJkYzdkOTY2OWIwMDkyNmFhMWFkZTExcDAsCisgICAgLTB4MS4xMmJkOTE3M2MwN2FicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTAKKyAgICAweDEuZDc0Y2FmOTkxMmRjN2Q5NjY5YjAwOTI2YWExYWRlMTFwMCwKKyAgICAweDEuMTJiZDkxNzNjMDdhYnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUxCisgICAgLTB4MS42YmU3MDJlMWY2Y2Q2MGJmZDg2YWQ4NjE4MGQxODQ5MHAwLAorICAgIC0weDEuZWE1YzNlZDViMzg1MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1MgorICAgIDB4MS42YmU3MDJlMWY2Y2Q2MGJmZDg2YWQ4NjE4MGQxODQ5MHAwLAorICAgIDB4MS5lYTVjM2VkNWIzODUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTUzCisgICAgLTB4MS40ZDBkZjFmYzFkMzQ4NGIwMjc1MzdkODExN2EzOTVmNHAwLAorICAgIC0weDEuZDRiODdkYWI2NzBhMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS40ZDBkZjFmYzFkMzQ4NGIwMjc1MzdkODExN2EzOTVmNHAwLAorICAgIDB4MS5kNGI4N2RhYjY3MGEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTU1CisgICAgLTB4MS4zMTZjOGIwNjhhN2FmMjU3ZjFlNWE1MTk0MzgzNGYzZXAwLAorICAgIC0weDEuYmYxNGJjODExYThmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIDB4MS4zMTZjOGIwNjhhN2FmMjU3ZjFlNWE1MTk0MzgzNGYzZXAwLAorICAgIDB4MS5iZjE0YmM4MTFhOGYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgLTB4MS4xODcyYTFhYWE3ZTI2Y2Y0MTdlNjMzMTYxN2VhN2RkMHAwLAorICAgIC0weDEuYTk3MGZiNTZjZTE0MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1OAorICAgIDB4MS4xODcyYTFhYWE3ZTI2Y2Y0MTdlNjMzMTYxN2VhN2RkMHAwLAorICAgIDB4MS5hOTcwZmI1NmNlMTQwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTU5CisgICAgLTB4MS4wMWFlZWVkMDRjYmIwZGZhY2QxZDAwYzY1N2QwOGIxOXAwLAorICAgIC0weDEuOTNjZDNhMmM4MTk5MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDB4MS4wMWFlZWVkMDRjYmIwZGZhY2QxZDAwYzY1N2QwOGIxOXAwLAorICAgIDB4MS45M2NkM2EyYzgxOTkwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTYxCisgICAgLTB4MS5kOThlNDA4YWMyMDg1YzRlMDU4OGRmMTBiYTdmYjAyM3AtMSwKKyAgICAtMHgxLjdlMjk3OTAyMzUxZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjIKKyAgICAweDEuZDk4ZTQwOGFjMjA4NWM0ZTA1ODhkZjEwYmE3ZmIwMjNwLTEsCisgICAgMHgxLjdlMjk3OTAyMzUxZTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjMKKyAgICAtMHgxLmIyZTQ3NTA2MzFjNTNjNTRmNTgzMGZkNDE3NTNkNDI3cC0xLAorICAgIC0weDEuNjg4NWI3ZDdlOGEzMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU2NAorICAgIDB4MS5iMmU0NzUwNjMxYzUzYzU0ZjU4MzBmZDQxNzUzZDQyN3AtMSwKKyAgICAweDEuNjg4NWI3ZDdlOGEzMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU2NQorICAgIC0weDEuOGVlOTE2MzkyZTA0NTkwY2U5ODhkODJjYzM5NTkwMjFwLTEsCisgICAgLTB4MS41MmUxZjZhZDljMjgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTY2CisgICAgMHgxLjhlZTkxNjM5MmUwNDU5MGNlOTg4ZDgyY2MzOTU5MDIxcC0xLAorICAgIDB4MS41MmUxZjZhZDljMjgwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTY3CisgICAgLTB4MS42ZDM5NWU0OTVmNzdlNzA5ODQyNTkyZTIyNjYwN2I1M3AtMSwKKyAgICAtMHgxLjNkM2UzNTgzNGZhZDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjgKKyAgICAweDEuNmQzOTVlNDk1Zjc3ZTcwOTg0MjU5MmUyMjY2MDdiNTNwLTEsCisgICAgMHgxLjNkM2UzNTgzNGZhZDBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjkKKyAgICAtMHgxLjI0ZTNlMDE3YTA5OGVjZjRkZTQ4YmNlZWIwMjY3NDNhcC0xLAorICAgIC0weDEuMGEwYjAyNTAxYzc5OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU3MAorICAgIDB4MS4yNGUzZTAxN2EwOThlY2Y0ZGU0OGJjZWViMDI2NzQzYXAtMSwKKyAgICAweDEuMGEwYjAyNTAxYzc5OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIC0weDEuZmRiZDVmMDU5NmJkYzZlZjhkYTUzZWU2NTJiNTdjZjdwLTIsCisgICAgLTB4MS5kOGY3MjA4ZTZiODJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTcyCisgICAgMHgxLmZkYmQ1ZjA1OTZiZGM2ZWY4ZGE1M2VlNjUyYjU3Y2Y3cC0yLAorICAgIDB4MS5kOGY3MjA4ZTZiODJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTczCisgICAgLTB4MS5iNWYzZDZhZmJlNmYyNTlhZjM3YzRlNjMzYWI1ZmRmYXAtMiwKKyAgICAtMHgxLjlkZDgzYzdjOWUxMjZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzQKKyAgICAweDEuYjVmM2Q2YWZiZTZmMjU5YWYzN2M0ZTYzM2FiNWZkZmFwLTIsCisgICAgMHgxLjlkZDgzYzdjOWUxMjZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzUKKyAgICAtMHgxLjcxYTBmOTgwODFlYTk4YjVmMzBhMTU5M2UzZmM2MzczcC0yLAorICAgIC0weDEuNjJiOTU4NmFkMGEyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDU3NgorICAgIDB4MS43MWEwZjk4MDgxZWE5OGI1ZjMwYTE1OTNlM2ZjNjM3M3AtMiwKKyAgICAweDEuNjJiOTU4NmFkMGEyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDU3NworICAgIC0weDEuMzAxOTA5YTJjMzZlODlhNjc1MjhhMzhjNzdhYzllNDNwLTIsCisgICAgLTB4MS4yNzlhNzQ1OTAzMzFhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTc4CisgICAgMHgxLjMwMTkwOWEyYzM2ZTg5YTY3NTI4YTM4Yzc3YWM5ZTQzcC0yLAorICAgIDB4MS4yNzlhNzQ1OTAzMzFhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTc5CisgICAgLTB4MS5lMThlOTQxY2M3ZmQ1MTllY2M0MDU0OGE4NmQyYTNlZHAtMywKKyAgICAtMHgxLmQ4ZjcyMDhlNmI4MjlwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODAKKyAgICAweDEuZTE4ZTk0MWNjN2ZkNTE5ZWNjNDA1NDhhODZkMmEzZWRwLTMsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MjlwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODEKKyAgICAtMHgxLjY2NTA3ODRiYmRjYzAyZjMzOTAyNjJjZjY4YmFkM2M2cC0zLAorICAgIC0weDEuNjJiOTU4NmFkMGExZXAtMworICB9LAorICB7IC8vIEVudHJ5IDU4MgorICAgIDB4MS42NjUwNzg0YmJkY2MwMmYzMzkwMjYyY2Y2OGJhZDNjNnAtMywKKyAgICAweDEuNjJiOTU4NmFkMGExZXAtMworICB9LAorICB7IC8vIEVudHJ5IDU4MworICAgIC0weDEuZGIxNDI0NjhjZGFmYzU2ZWNmZGY4YjEwNTJiMDllNjNwLTQsCisgICAgLTB4MS5kOGY3MjA4ZTZiODI2cC00CisgIH0sCisgIHsgLy8gRW50cnkgNTg0CisgICAgMHgxLmRiMTQyNDY4Y2RhZmM1NmVjZmRmOGIxMDUyYjA5ZTYzcC00LAorICAgIDB4MS5kOGY3MjA4ZTZiODI2cC00CisgIH0sCisgIHsgLy8gRW50cnkgNTg1CisgICAgLTB4MS5kOTdkZDZkMmU1M2YyN2UwZmUxZjNiZDJiMDM1NjYyYXAtNSwKKyAgICAtMHgxLmQ4ZjcyMDhlNmI4MmRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODYKKyAgICAweDEuZDk3ZGQ2ZDJlNTNmMjdlMGZlMWYzYmQyYjAzNTY2MmFwLTUsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODcKKyAgICAweDEuZDk3ZGQ2ZDJlNTNmMjdlMGZlMWYzYmQyYjAzNTY2MmFwLTUsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODgKKyAgICAtMHgxLmQ5N2RkNmQyZTUzZjI3ZTBmZTFmM2JkMmIwMzU2NjJhcC01LAorICAgIC0weDEuZDhmNzIwOGU2YjgyZHAtNQorICB9LAorICB7IC8vIEVudHJ5IDU4OQorICAgIDB4MS5kYjE0MjQ2OGNkYjAzNmYwODc4M2Q5MzZiMTkzNDhmNnAtNCwKKyAgICAweDEuZDhmNzIwOGU2YjgyZHAtNAorICB9LAorICB7IC8vIEVudHJ5IDU5MAorICAgIC0weDEuZGIxNDI0NjhjZGIwMzZmMDg3ODNkOTM2YjE5MzQ4ZjZwLTQsCisgICAgLTB4MS5kOGY3MjA4ZTZiODJkcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTkxCisgICAgMHgxLjY2NTA3ODRiYmRjYzQ0ZThiZTJjMjIwZTFkNjczZmZicC0zLAorICAgIDB4MS42MmI5NTg2YWQwYTIycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTkyCisgICAgLTB4MS42NjUwNzg0YmJkY2M0NGU4YmUyYzIyMGUxZDY3M2ZmYnAtMywKKyAgICAtMHgxLjYyYjk1ODZhZDBhMjJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTMKKyAgICAweDEuZTE4ZTk0MWNjN2ZkOTUyOGE1NTg1MTU3YWM2NWU2MTVwLTMsCisgICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTQKKyAgICAtMHgxLmUxOGU5NDFjYzdmZDk1MjhhNTU4NTE1N2FjNjVlNjE1cC0zLAorICAgIC0weDEuZDhmNzIwOGU2YjgyZHAtMworICB9LAorICB7IC8vIEVudHJ5IDU5NQorICAgIDB4MS4zMDE5MDlhMmMzNmVhYzc4ZWMxYjRlNzExMzE2ZDBjNHAtMiwKKyAgICAweDEuMjc5YTc0NTkwMzMxY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDU5NgorICAgIC0weDEuMzAxOTA5YTJjMzZlYWM3OGVjMWI0ZTcxMTMxNmQwYzRwLTIsCisgICAgLTB4MS4yNzlhNzQ1OTAzMzFjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTk3CisgICAgMHgxLjcxYTBmOTgwODFlYWJjZTE1NWYzMTAyODhjNDI0NWVhcC0yLAorICAgIDB4MS42MmI5NTg2YWQwYTIycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTk4CisgICAgLTB4MS43MWEwZjk4MDgxZWFiY2UxNTVmMzEwMjg4YzQyNDVlYXAtMiwKKyAgICAtMHgxLjYyYjk1ODZhZDBhMjJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTkKKyAgICAweDEuYjVmM2Q2YWZiZTZmNGI3NTY4NDJiOGVlZTVjODVhMzFwLTIsCisgICAgMHgxLjlkZDgzYzdjOWUxMjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDAKKyAgICAtMHgxLmI1ZjNkNmFmYmU2ZjRiNzU2ODQyYjhlZWU1Yzg1YTMxcC0yLAorICAgIC0weDEuOWRkODNjN2M5ZTEyOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDYwMQorICAgIDB4MS5mZGJkNWYwNTk2YmRlZWRkODJkNTIyM2MzYzFiMTkyNXAtMiwKKyAgICAweDEuZDhmNzIwOGU2YjgyZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDYwMgorICAgIC0weDEuZmRiZDVmMDU5NmJkZWVkZDgyZDUyMjNjM2MxYjE5MjVwLTIsCisgICAgLTB4MS5kOGY3MjA4ZTZiODJlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjAzCisgICAgMHgxLjI0ZTNlMDE3YTA5OGVjZjRkZTQ4YmNlZWIwMjY3NDNhcC0xLAorICAgIDB4MS4wYTBiMDI1MDFjNzk5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjA0CisgICAgLTB4MS4yNGUzZTAxN2EwOThlY2Y0ZGU0OGJjZWViMDI2NzQzYXAtMSwKKyAgICAtMHgxLjBhMGIwMjUwMWM3OTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDUKKyAgICAweDEuNmQzOTVlNDk1Zjc3ODY3OGI5ZWEwZDQ4MDhjNzIyMGFwLTEsCisgICAgMHgxLjNkM2UzNTgzNGZhY2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDYKKyAgICAtMHgxLjZkMzk1ZTQ5NWY3Nzg2NzhiOWVhMGQ0ODA4YzcyMjBhcC0xLAorICAgIC0weDEuM2QzZTM1ODM0ZmFjY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDYwNworICAgIDB4MS44ZWU5MTYzOTJlMDNmMjMzNTAzM2E0MWIzYjAyMDZlNHAtMSwKKyAgICAweDEuNTJlMWY2YWQ5YzI3Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDYwOAorICAgIC0weDEuOGVlOTE2MzkyZTAzZjIzMzUwMzNhNDFiM2IwMjA2ZTRwLTEsCisgICAgLTB4MS41MmUxZjZhZDljMjdjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjA5CisgICAgMHgxLmIyZTQ3NTA2MzFjNGNlMjgzZWY4NzUzZmExZWRmMzI0cC0xLAorICAgIDB4MS42ODg1YjdkN2U4YTJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjEwCisgICAgLTB4MS5iMmU0NzUwNjMxYzRjZTI4M2VmODc1M2ZhMWVkZjMyNHAtMSwKKyAgICAtMHgxLjY4ODViN2Q3ZThhMmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTEKKyAgICAweDEuZDk4ZTQwOGFjMjA3ZTU4ZTE1ZjAxODVkNGIxMGNmNzFwLTEsCisgICAgMHgxLjdlMjk3OTAyMzUxZGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTIKKyAgICAtMHgxLmQ5OGU0MDhhYzIwN2U1OGUxNWYwMTg1ZDRiMTBjZjcxcC0xLAorICAgIC0weDEuN2UyOTc5MDIzNTFkY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDYxMworICAgIDB4MS4wMWFlZWVkMDRjYmFjZDhlYjZiYzA5NDY2NGRiNzc2M3AwLAorICAgIDB4MS45M2NkM2EyYzgxOThjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjE0CisgICAgLTB4MS4wMWFlZWVkMDRjYmFjZDhlYjZiYzA5NDY2NGRiNzc2M3AwLAorICAgIC0weDEuOTNjZDNhMmM4MTk4Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDYxNQorICAgIDB4MS4xODcyYTFhYWE3ZTIyNjhjYjk0NmZjZWI4M2YwZWE1ZXAwLAorICAgIDB4MS5hOTcwZmI1NmNlMTNjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjE2CisgICAgLTB4MS4xODcyYTFhYWE3ZTIyNjhjYjk0NmZjZWI4M2YwZWE1ZXAwLAorICAgIC0weDEuYTk3MGZiNTZjZTEzY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDYxNworICAgIDB4MS4zMTZjOGIwNjhhN2FhNGNiNzdiYzNmMzk5MjFjMmM4ZHAwLAorICAgIDB4MS5iZjE0YmM4MTFhOGVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjE4CisgICAgLTB4MS4zMTZjOGIwNjhhN2FhNGNiNzdiYzNmMzk5MjFjMmM4ZHAwLAorICAgIC0weDEuYmYxNGJjODExYThlY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDYxOQorICAgIDB4MS40ZDBkZjFmYzFkMzQyZTg2N2U0OWYxZjZkZGFjZWRhYXAwLAorICAgIDB4MS5kNGI4N2RhYjY3MDljcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjIwCisgICAgLTB4MS40ZDBkZjFmYzFkMzQyZTg2N2U0OWYxZjZkZGFjZWRhYXAwLAorICAgIC0weDEuZDRiODdkYWI2NzA5Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDYyMQorICAgIDB4MS42YmU3MDJlMWY2Y2QwMDE2YmExNjc3YTljZDMzZjEzOXAwLAorICAgIDB4MS5lYTVjM2VkNWIzODRjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjIyCisgICAgLTB4MS42YmU3MDJlMWY2Y2QwMDE2YmExNjc3YTljZDMzZjEzOXAwLAorICAgIC0weDEuZWE1YzNlZDViMzg0Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDYyMworICAgIDB4MS5kNzRjYWY5OTEyZGM3ZDk2NjliMDA5MjZhYTFhZGUxMXAwLAorICAgIDB4MS4xMmJkOTE3M2MwN2FicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjQKKyAgICAtMHgxLmQ3NGNhZjk5MTJkYzdkOTY2OWIwMDkyNmFhMWFkZTExcDAsCisgICAgLTB4MS4xMmJkOTE3M2MwN2FicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjUKKyAgICAweDEuMWI0OGEzNWIxYjI4M2JiYzgyYmIwNDRlOTljNGQ5YjFwMSwKKyAgICAweDEuMjU3YjIyZTc4MGY1NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjI2CisgICAgLTB4MS4xYjQ4YTM1YjFiMjgzYmJjODJiYjA0NGU5OWM0ZDliMXAxLAorICAgIC0weDEuMjU3YjIyZTc4MGY1NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjI3CisgICAgMHgxLjVkNjAzZDc1MTc2OGZjZDhhZjgyYjM4NzQ2ODg4NTMwcDEsCisgICAgMHgxLjM4MzhiNDViNDE3MDFwMAorICB9LAorICB7IC8vIEVudHJ5IDYyOAorICAgIC0weDEuNWQ2MDNkNzUxNzY4ZmNkOGFmODJiMzg3NDY4ODg1MzBwMSwKKyAgICAtMHgxLjM4MzhiNDViNDE3MDFwMAorICB9LAorICB7IC8vIEVudHJ5IDYyOQorICAgIDB4MS5jMDhjYWVjNWNmOWIxYjU0YjA0NTIyOGIzZWViMjQ2OXAxLAorICAgIDB4MS40YWY2NDVjZjAxZWFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzAKKyAgICAtMHgxLmMwOGNhZWM1Y2Y5YjFiNTRiMDQ1MjI4YjNlZWIyNDY5cDEsCisgICAgLTB4MS40YWY2NDVjZjAxZWFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzEKKyAgICAweDEuMzQyOWU2MWE1ZDIwYjE3NWQ0NWMyYTY3NWEzODZiYTNwMiwKKyAgICAweDEuNWRiM2Q3NDJjMjY1N3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjMyCisgICAgLTB4MS4zNDI5ZTYxYTVkMjBiMTc1ZDQ1YzJhNjc1YTM4NmJhM3AyLAorICAgIC0weDEuNWRiM2Q3NDJjMjY1N3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjMzCisgICAgMHgxLmUzYTM3MjliM2U4YTgzZDQ0YTc2ZTM0MmQ2YjNmY2JmcDIsCisgICAgMHgxLjcwNzE2OGI2ODJlMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDYzNAorICAgIC0weDEuZTNhMzcyOWIzZThhODNkNDRhNzZlMzQyZDZiM2ZjYmZwMiwKKyAgICAtMHgxLjcwNzE2OGI2ODJlMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDYzNQorICAgIDB4MS4xMWQ4NzE0NmMyZGEzOTQwOGU4NjA4M2JmMTQ3MWM4YnA0LAorICAgIDB4MS44MzJlZmEyYTQzNWFkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzYKKyAgICAtMHgxLjExZDg3MTQ2YzJkYTM5NDA4ZTg2MDgzYmYxNDcxYzhicDQsCisgICAgLTB4MS44MzJlZmEyYTQzNWFkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzcKKyAgICAtMHgxLjBkNzE4Y2ZjODIzNDhhYjk3NTRmM2Q2YjVlMGVhNDk5cDYsCisgICAgMHgxLjk1ZWM4YjllMDNkNThwMAorICB9LAorICB7IC8vIEVudHJ5IDYzOAorICAgIDB4MS4wZDcxOGNmYzgyMzQ4YWI5NzU0ZjNkNmI1ZTBlYTQ5OXA2LAorICAgIC0weDEuOTVlYzhiOWUwM2Q1OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjM5CisgICAgLTB4MS42YTdlMWY2NDA3ZWU2MTM5N2QwMTZkNjkxYmI2MWQxN3AzLAorICAgIDB4MS5hOGFhMWQxMWM0NGZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDAKKyAgICAweDEuNmE3ZTFmNjQwN2VlNjEzOTdkMDE2ZDY5MWJiNjFkMTdwMywKKyAgICAtMHgxLmE4YWExZDExYzQ0ZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDY0MQorICAgIDB4MS45ZjM5ZWE1YmJlNDc0OWU5NjJhODA3YzJkYzExYzgyNXAwLAorICAgIDB4MS4wNGFmZjZkMzMwOTQycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDIKKyAgICAtMHgxLjlmMzllYTViYmU0NzQ5ZTk2MmE4MDdjMmRjMTFjODI1cDAsCisgICAgLTB4MS4wNGFmZjZkMzMwOTQycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDMKKyAgICAweDEuOWYzYzRiODQ2OWY4NTNiODUwNzQ1NTcxNzMyN2MzMTFwMCwKKyAgICAweDEuMDRiMDllOThkY2RiNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQ0CisgICAgLTB4MS45ZjNjNGI4NDY5Zjg1M2I4NTA3NDU1NzE3MzI3YzMxMXAwLAorICAgIC0weDEuMDRiMDllOThkY2RiNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQ1CisgICAgMHgxLjlmM2VhY2IyMjRjMjA4NmVmMzkxYjBkZmFkMmYxMDEwcDAsCisgICAgMHgxLjA0YjE0NjVlODkyMjZwMAorICB9LAorICB7IC8vIEVudHJ5IDY0NgorICAgIC0weDEuOWYzZWFjYjIyNGMyMDg2ZWYzOTFiMGRmYWQyZjEwMTBwMCwKKyAgICAtMHgxLjA0YjE0NjVlODkyMjZwMAorICB9LAorICB7IC8vIEVudHJ5IDY0NworICAgIDB4MS45ZjQxMGRlNGVlYjY5NTkwY2FlZTg1ZTg4NmY0NzhhOHAwLAorICAgIDB4MS4wNGIxZWUyNDM1Njk4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDgKKyAgICAtMHgxLjlmNDEwZGU0ZWViNjk1OTBjYWVlODVlODg2ZjQ3OGE4cDAsCisgICAgLTB4MS4wNGIxZWUyNDM1Njk4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDkKKyAgICAweDEuOWY0MzZmMWNjN2U4MjhmNzUyODE5YWYxZTJmNGI2YTJwMCwKKyAgICAweDEuMDRiMjk1ZTllMWIwYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjUwCisgICAgLTB4MS45ZjQzNmYxY2M3ZTgyOGY3NTI4MTlhZjFlMmY0YjZhMnAwLAorICAgIC0weDEuMDRiMjk1ZTllMWIwYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjUxCisgICAgMHgxLjlmNDVkMDU5YjA2OGYwZDIwNTQ4NWFkNjQ4MjIzZTZkcDAsCisgICAgMHgxLjA0YjMzZGFmOGRmN2NwMAorICB9LAorICB7IC8vIEVudHJ5IDY1MgorICAgIC0weDEuOWY0NWQwNTliMDY4ZjBkMjA1NDg1YWQ2NDgyMjNlNmRwMCwKKyAgICAtMHgxLjA0YjMzZGFmOGRmN2NwMAorICB9LAorICB7IC8vIEVudHJ5IDY1MworICAgIDB4MS45ZjQ4MzE5YmE4NGIxYmE2NWY0NTJjZmU2NWUwMmQwZXAwLAorICAgIDB4MS4wNGIzZTU3NTNhM2VlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTQKKyAgICAtMHgxLjlmNDgzMTliYTg0YjFiYTY1ZjQ1MmNmZTY1ZTAyZDBlcDAsCisgICAgLTB4MS4wNGIzZTU3NTNhM2VlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTUKKyAgICAweDEuOWY0YTkyZTJhZmEwZDg0ZmRmN2RkYmFhZDMwMmYxNTBwMCwKKyAgICAweDEuMDRiNDhkM2FlNjg2MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjU2CisgICAgLTB4MS45ZjRhOTJlMmFmYTBkODRmZGY3ZGRiYWFkMzAyZjE1MHAwLAorICAgIC0weDEuMDRiNDhkM2FlNjg2MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjU3CisgICAgMHgxLjlmNGNmNDJlYzY3YmE3YWQwZGIyYmUyNDhhODcwYmZlcDAsCisgICAgMHgxLjA0YjUzNTAwOTJjY2ZwMAorICB9LAorICB7IC8vIEVudHJ5IDY1OAorICAgIC0weDEuOWY0Y2Y0MmVjNjdiYTdhZDBkYjJiZTI0OGE4NzBiZmVwMCwKKyAgICAtMHgxLjA0YjUzNTAwOTJjY2ZwMAorICB9LAorICB7IC8vIEVudHJ5IDY1OQorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDY2MAorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjEKKyAgICAtMC4wLAorICAgIC0wLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjIKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNjYzCisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNjY0CisgICAgMHgxLjRkODJiNjhjYWMxOWU2ZDA2NWM1ZjFhYTc2MjFjMDhjcC0xLAorICAgIDB4MS4yNzlhNzQ1OTAzMzFicC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjY1CisgICAgLTB4MS40ZDgyYjY4Y2FjMTllNmQwNjVjNWYxYWE3NjIxYzA4Y3AtMSwKKyAgICAtMHgxLjI3OWE3NDU5MDMzMWJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjYKKyAgICAweDEuNGQ4MmI2OGNhYzE5ZmQ5YTViMGM5MTJkOTA5M2FhNGFwLTEsCisgICAgMHgxLjI3OWE3NDU5MDMzMWNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjcKKyAgICAtMHgxLjRkODJiNjhjYWMxOWZkOWE1YjBjOTEyZDkwOTNhYTRhcC0xLAorICAgIC0weDEuMjc5YTc0NTkwMzMxY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDY2OAorICAgIDB4MS40ZDgyYjY4Y2FjMWExNDY0NTA1MzMwYjBhYmYzMTZiZnAtMSwKKyAgICAweDEuMjc5YTc0NTkwMzMxZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY2OQorICAgIC0weDEuNGQ4MmI2OGNhYzFhMTQ2NDUwNTMzMGIwYWJmMzE2YmZwLTEsCisgICAgLTB4MS4yNzlhNzQ1OTAzMzFkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjcwCisgICAgLTB4MS44OTcxMmVlY2EzMmJlOTdkYmEyY2EzZjliODM3OTE1NHAyLAorICAgIDB4MS5iYjY3YWU4NTg0Y2E5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzEKKyAgICAweDEuODk3MTJlZWNhMzJiZTk3ZGJhMmNhM2Y5YjgzNzkxNTRwMiwKKyAgICAtMHgxLmJiNjdhZTg1ODRjYTlwMAorICB9LAorICB7IC8vIEVudHJ5IDY3MgorICAgIC0weDEuODk3MTJlZWNhMzJiNGU1MjhkMjU2MzVhNDI5M2JlMWRwMiwKKyAgICAweDEuYmI2N2FlODU4NGNhYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNjczCisgICAgMHgxLjg5NzEyZWVjYTMyYjRlNTI4ZDI1NjM1YTQyOTNiZTFkcDIsCisgICAgLTB4MS5iYjY3YWU4NTg0Y2FhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzQKKyAgICAtMHgxLjg5NzEyZWVjYTMyYWIzMjc2MDFlMjJiYjQ0MmNkYzM3cDIsCisgICAgMHgxLmJiNjdhZTg1ODRjYWJwMAorICB9LAorICB7IC8vIEVudHJ5IDY3NQorICAgIDB4MS44OTcxMmVlY2EzMmFiMzI3NjAxZTIyYmI0NDJjZGMzN3AyLAorICAgIC0weDEuYmI2N2FlODU4NGNhYnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjc2CisgICAgMHgxLmRlZjQ5ZWFhYjM3YTAwZjkwY2I0NDU0NzEwZTRlNTQ1cC0yLAorICAgIDB4MS5iZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjc3CisgICAgLTB4MS5kZWY0OWVhYWIzN2EwMGY5MGNiNDQ1NDcxMGU0ZTU0NXAtMiwKKyAgICAtMHgxLmJmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzgKKyAgICAweDEuZGVmNDllYWFiMzdhMTQ3OTIzMWU4OTk1MDllY2YyNmNwLTIsCisgICAgMHgxLmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzkKKyAgICAtMHgxLmRlZjQ5ZWFhYjM3YTE0NzkyMzFlODk5NTA5ZWNmMjZjcC0yLAorICAgIC0weDEuY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDY4MAorICAgIDB4MS5kZWY0OWVhYWIzN2EyN2Y5Mzk4OGNkZTMwMzNkZjcyY3AtMiwKKyAgICAweDEuYzAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDY4MQorICAgIC0weDEuZGVmNDllYWFiMzdhMjdmOTM5ODhjZGUzMDMzZGY3MmNwLTIsCisgICAgLTB4MS5jMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjgyCisgICAgMHgxLmE0NmNiMmJlNmEwYjAyZTJkZmZmYzk1ZTZkY2IyODQycC0xLAorICAgIDB4MS41ZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjgzCisgICAgLTB4MS5hNDZjYjJiZTZhMGIwMmUyZGZmZmM5NWU2ZGNiMjg0MnAtMSwKKyAgICAtMHgxLjVmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODQKKyAgICAweDEuYTQ2Y2IyYmU2YTBiMWRhY2IzNjI2OWM0MWE0YTkxNDdwLTEsCisgICAgMHgxLjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODUKKyAgICAtMHgxLmE0NmNiMmJlNmEwYjFkYWNiMzYyNjljNDFhNGE5MTQ3cC0xLAorICAgIC0weDEuNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY4NgorICAgIDB4MS5hNDZjYjJiZTZhMGIzODc2ODZjNTBhMjljODI5ZWU0MnAtMSwKKyAgICAweDEuNjAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY4NworICAgIC0weDEuYTQ2Y2IyYmU2YTBiMzg3Njg2YzUwYTI5YzgyOWVlNDJwLTEsCisgICAgLTB4MS42MDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjg4CisgICAgMHgxLjNkNmRjOTU2ZWFjNzlhODViNDc0NTZmYTBjOTQ2YjEzcDEsCisgICAgMHgxLjJmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDY4OQorICAgIC0weDEuM2Q2ZGM5NTZlYWM3OWE4NWI0NzQ1NmZhMGM5NDZiMTNwMSwKKyAgICAtMHgxLjJmZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDY5MAorICAgIDB4MS4zZDZkYzk1NmVhYzdkM2I4ZDZlYjIxNzQxMTBkMWRkY3AxLAorICAgIDB4MS4zcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTEKKyAgICAtMHgxLjNkNmRjOTU2ZWFjN2QzYjhkNmViMjE3NDExMGQxZGRjcDEsCisgICAgLTB4MS4zcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTIKKyAgICAweDEuM2Q2ZGM5NTZlYWM4MGNlYmY5NjFlYmVlMjc0MTA3cDEsCisgICAgMHgxLjMwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDY5MworICAgIC0weDEuM2Q2ZGM5NTZlYWM4MGNlYmY5NjFlYmVlMjc0MTA3cDEsCisgICAgLTB4MS4zMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTQKKyAgICAtMHgxLmIyZDg5YTkzODI5NTM2Y2M5MjgzY2ZjN2UwMWZlMmEzcC0xLAorICAgIDB4MS4zN2ZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTUKKyAgICAweDEuYjJkODlhOTM4Mjk1MzZjYzkyODNjZmM3ZTAxZmUyYTNwLTEsCisgICAgLTB4MS4zN2ZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTYKKyAgICAtMHgxLmIyZDg5YTkzODI5NGM4YTI2MDRkYjlmN2FhNTZhMGY4cC0xLAorICAgIDB4MS4zODBwMQorICB9LAorICB7IC8vIEVudHJ5IDY5NworICAgIDB4MS5iMmQ4OWE5MzgyOTRjOGEyNjA0ZGI5ZjdhYTU2YTBmOHAtMSwKKyAgICAtMHgxLjM4MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjk4CisgICAgLTB4MS5iMmQ4OWE5MzgyOTQ1YTc4MmUxN2E0Mjc4YmYxNzczNnAtMSwKKyAgICAweDEuMzgwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjk5CisgICAgMHgxLmIyZDg5YTkzODI5NDVhNzgyZTE3YTQyNzhiZjE3NzM2cC0xLAorICAgIC0weDEuMzgwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzAwCisgICAgMHgxLjA2ZjhkMDE0YmYwODNjZDM2NjUwZTk0NjZkYzA4NmRjcC00LAorICAgIDB4MS4wNjljOGI0NmIzNzkycC00CisgIH0sCisgIHsgLy8gRW50cnkgNzAxCisgICAgLTB4MS4wNmY4ZDAxNGJmMDgzY2QzNjY1MGU5NDY2ZGMwODZkY3AtNCwKKyAgICAtMHgxLjA2OWM4YjQ2YjM3OTJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDIKKyAgICAweDEuMDgwZjczYjA3MDUxZTM3YjIzZGEzMzM3YzBhZWQzNTNwLTMsCisgICAgMHgxLjA2OWM4YjQ2YjM3OTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDMKKyAgICAtMHgxLjA4MGY3M2IwNzA1MWUzN2IyM2RhMzMzN2MwYWVkMzUzcC0zLAorICAgIC0weDEuMDY5YzhiNDZiMzc5MnAtMworICB9LAorICB7IC8vIEVudHJ5IDcwNAorICAgIDB4MS44ZWQ5MTQyZmM5MTg4ODhlMjk0ZDNmZjVkMDE0OTQxNXAtMywKKyAgICAweDEuODllYWQwZWEwZDM1YnAtMworICB9LAorICB7IC8vIEVudHJ5IDcwNQorICAgIC0weDEuOGVkOTE0MmZjOTE4ODg4ZTI5NGQzZmY1ZDAxNDk0MTVwLTMsCisgICAgLTB4MS44OWVhZDBlYTBkMzVicC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzA2CisgICAgMHgxLjBjODY0MDgzZDFlN2NhNTU1MWJjZTI0OTcyODc4MTI3cC0yLAorICAgIDB4MS4wNjljOGI0NmIzNzkycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzA3CisgICAgLTB4MS4wYzg2NDA4M2QxZTdjYTU1NTFiY2UyNDk3Mjg3ODEyN3AtMiwKKyAgICAtMHgxLjA2OWM4YjQ2YjM3OTJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDgKKyAgICAweDEuNTNmZGNkZmQzN2YwNDM3NWQ5ZmZiNmFlYmFmZTdkZjhwLTIsCisgICAgMHgxLjQ4NDNhZTE4NjA1NzZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDkKKyAgICAtMHgxLjUzZmRjZGZkMzdmMDQzNzVkOWZmYjZhZWJhZmU3ZGY4cC0yLAorICAgIC0weDEuNDg0M2FlMTg2MDU3NnAtMgorICB9LAorICB7IC8vIEVudHJ5IDcxMAorICAgIDB4MS45ZTkyNTdlNmI2MmEwYThkZTU2NTBjODM3ZjdmNjIyN3AtMiwKKyAgICAweDEuODllYWQwZWEwZDM1YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDcxMQorICAgIC0weDEuOWU5MjU3ZTZiNjJhMGE4ZGU1NjUwYzgzN2Y3ZjYyMjdwLTIsCisgICAgLTB4MS44OWVhZDBlYTBkMzVhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzEyCisgICAgMHgxLmVkMjFlNTk5NzJiMDdjNzA1M2Y0ZjM1ZGQ1NTAyNDkzcC0yLAorICAgIDB4MS5jYjkxZjNiYmJhMTNlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzEzCisgICAgLTB4MS5lZDIxZTU5OTcyYjA3YzcwNTNmNGYzNWRkNTUwMjQ5M3AtMiwKKyAgICAtMHgxLmNiOTFmM2JiYmExM2VwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTQKKyAgICAweDEuMjA1YTYwMDlkNWUzZGRlMjVkNmRlYjdkNTIxZmYxNDBwLTEsCisgICAgMHgxLjA2OWM4YjQ2YjM3OTFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTUKKyAgICAtMHgxLjIwNWE2MDA5ZDVlM2RkZTI1ZDZkZWI3ZDUyMWZmMTQwcC0xLAorICAgIC0weDEuMDY5YzhiNDZiMzc5MXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxNgorICAgIDB4MS40ZDQ2NmFjY2FkNDhkZDk1OGFiMTY4ZjVjZmM2Yzk5Y3AtMSwKKyAgICAweDEuMjc3MDFjYWY4OWU4M3AtMQorICB9LAorICB7IC8vIEVudHJ5IDcxNworICAgIC0weDEuNGQ0NjZhY2NhZDQ4ZGQ5NThhYjE2OGY1Y2ZjNmM5OWNwLTEsCisgICAgLTB4MS4yNzcwMWNhZjg5ZTgzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzE4CisgICAgMHgxLjdlMWQ5MzZmNGQ2MTUyZmI3NDgwOTU5NTcxN2ZhMDZkcC0xLAorICAgIDB4MS40ODQzYWUxODYwNTc1cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzE5CisgICAgLTB4MS43ZTFkOTM2ZjRkNjE1MmZiNzQ4MDk1OTU3MTdmYTA2ZHAtMSwKKyAgICAtMHgxLjQ4NDNhZTE4NjA1NzVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjAKKyAgICAweDEuYjNkZjM4NmYxODIyN2ViY2VlOTA1ZmRjNTFjZGNiZTJwLTEsCisgICAgMHgxLjY5MTczZjgxMzZjNjdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjEKKyAgICAtMHgxLmIzZGYzODZmMTgyMjdlYmNlZTkwNWZkYzUxY2RjYmUycC0xLAorICAgIC0weDEuNjkxNzNmODEzNmM2N3AtMQorICB9LAorICB7IC8vIEVudHJ5IDcyMgorICAgIDB4MS5lZmQ4Mjc0MmQ3NzhjMThhOGM5NjliZTBjZjA5MDJiM3AtMSwKKyAgICAweDEuODllYWQwZWEwZDM1OXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcyMworICAgIC0weDEuZWZkODI3NDJkNzc4YzE4YThjOTY5YmUwY2YwOTAyYjNwLTEsCisgICAgLTB4MS44OWVhZDBlYTBkMzU5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzI0CisgICAgMHgxLjE5ZTI2YjVlY2Q1YzA0MGExZDgwYzE1ODNmNzhmN2Q3cDAsCisgICAgMHgxLmFhYmU2MjUyZTNhNGJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjUKKyAgICAtMHgxLjE5ZTI2YjVlY2Q1YzA0MGExZDgwYzE1ODNmNzhmN2Q3cDAsCisgICAgLTB4MS5hYWJlNjI1MmUzYTRicC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzI2CisgICAgMHgxLjQxMDM4YjcwYmUwZmExNDc4Zjk4YTJlOWYyNjY1NTBhcDAsCisgICAgMHgxLmNiOTFmM2JiYmExM2RwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjcKKyAgICAtMHgxLjQxMDM4YjcwYmUwZmExNDc4Zjk4YTJlOWYyNjY1NTBhcDAsCisgICAgLTB4MS5jYjkxZjNiYmJhMTNkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzI4CisgICAgMHgxLjZlZmVjOGMxZTQ5M2I1MTdlZmU1ZWI5MjQ2NGZkZjQycDAsCisgICAgMHgxLmVjNjU4NTI0OTA4MmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjkKKyAgICAtMHgxLjZlZmVjOGMxZTQ5M2I1MTdlZmU1ZWI5MjQ2NGZkZjQycDAsCisgICAgLTB4MS5lYzY1ODUyNDkwODJmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzMwCisgICAgMHgxLmE2NGM3YzlkNjUzNDYyZDhkZWQzZTY1OGZlNGVmYmNicDAsCisgICAgMHgxLjA2OWM4YjQ2YjM3OTFwMAorICB9LAorICB7IC8vIEVudHJ5IDczMQorICAgIC0weDEuYTY0YzdjOWQ2NTM0NjJkOGRlZDNlNjU4ZmU0ZWZiY2JwMCwKKyAgICAtMHgxLjA2OWM4YjQ2YjM3OTFwMAorICB9LAorICB7IC8vIEVudHJ5IDczMgorICAgIDB4MS5lYWI0M2UwZTVlODdjMjZmZDQzMmUwNjMwMWUxOWUxNXAwLAorICAgIDB4MS4xNzA2NTNmYjFlYjBhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzMKKyAgICAtMHgxLmVhYjQzZTBlNWU4N2MyNmZkNDMyZTA2MzAxZTE5ZTE1cDAsCisgICAgLTB4MS4xNzA2NTNmYjFlYjBhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzQKKyAgICAweDEuMjEyNzdiOTdjMDEzNzZlMzYxOTg4MjUwYjU2MzY0Y2ZwMSwKKyAgICAweDEuMjc3MDFjYWY4OWU4M3AwCisgIH0sCisgIHsgLy8gRW50cnkgNzM1CisgICAgLTB4MS4yMTI3N2I5N2MwMTM3NmUzNjE5ODgyNTBiNTYzNjRjZnAxLAorICAgIC0weDEuMjc3MDFjYWY4OWU4M3AwCisgIH0sCisgIHsgLy8gRW50cnkgNzM2CisgICAgMHgxLjViZDEzZGRhMDc3Y2NlMjQ5ZGIyNzk0ZDY5NDA3NTA0cDEsCisgICAgMHgxLjM3ZDllNTYzZjUxZmNwMAorICB9LAorICB7IC8vIEVudHJ5IDczNworICAgIC0weDEuNWJkMTNkZGEwNzdjY2UyNDlkYjI3OTRkNjk0MDc1MDRwMSwKKyAgICAtMHgxLjM3ZDllNTYzZjUxZmNwMAorICB9LAorICB7IC8vIEVudHJ5IDczOAorICAgIDB4MS5hZjQ2NDNlOTM3MWY4OGU3OGMyNGQ4M2JkNmI4ZTIzZXAxLAorICAgIDB4MS40ODQzYWUxODYwNTc1cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzkKKyAgICAtMHgxLmFmNDY0M2U5MzcxZjg4ZTc4YzI0ZDgzYmQ2YjhlMjNlcDEsCisgICAgLTB4MS40ODQzYWUxODYwNTc1cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDAKKyAgICAweDEuMTg2NmZlODQ1ZTc1OWQxNGRhNDc4YzZjZjZmMmJlNjVwMiwKKyAgICAweDEuNThhZDc2Y2NjYjhlZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzQxCisgICAgLTB4MS4xODY2ZmU4NDVlNzU5ZDE0ZGE0NzhjNmNmNmYyYmU2NXAyLAorICAgIC0weDEuNThhZDc2Y2NjYjhlZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzQyCisgICAgMHgxLjhiZGNkNTRiZDU5ODBiM2E4MGNlZmM5MTRjNDgxNDc1cDIsCisgICAgMHgxLjY5MTczZjgxMzZjNjdwMAorICB9LAorICB7IC8vIEVudHJ5IDc0MworICAgIC0weDEuOGJkY2Q1NGJkNTk4MGIzYTgwY2VmYzkxNGM0ODE0NzVwMiwKKyAgICAtMHgxLjY5MTczZjgxMzZjNjdwMAorICB9LAorICB7IC8vIEVudHJ5IDc0NAorICAgIDB4MS40YmI2YTY0ZTA2MjViOTc0Y2RlZDYxNTA1NmZmZDYxY3AzLAorICAgIDB4MS43OTgxMDgzNWExZmUwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDUKKyAgICAtMHgxLjRiYjZhNjRlMDYyNWI5NzRjZGVkNjE1MDU2ZmZkNjFjcDMsCisgICAgLTB4MS43OTgxMDgzNWExZmUwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDYKKyAgICAweDEuZjJmMDVjZmI2NTZhMzlmNmYyYTkwZjc5MTFiMjQwNTFwNCwKKyAgICAweDEuODllYWQwZWEwZDM1OXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzQ3CisgICAgLTB4MS5mMmYwNWNmYjY1NmEzOWY2ZjJhOTBmNzkxMWIyNDA1MXA0LAorICAgIC0weDEuODllYWQwZWEwZDM1OXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzQ4CisgICAgLTB4MS5mMmYwNWNmYjY1N2Y1NWYyYmM2ZDIwNDM3N2E2ODU0M3A0LAorICAgIDB4MS45YTU0OTk5ZTc4NmQycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDkKKyAgICAweDEuZjJmMDVjZmI2NTdmNTVmMmJjNmQyMDQzNzdhNjg1NDNwNCwKKyAgICAtMHgxLjlhNTQ5OTllNzg2ZDJwMAorICB9LAorICB7IC8vIEVudHJ5IDc1MAorICAgIC0weDEuNGJiNmE2NGUwNjJhNmRhMzU4NzBjZmIzMzU5NWZiZTZwMywKKyAgICAweDEuYWFiZTYyNTJlM2E0YnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzUxCisgICAgMHgxLjRiYjZhNjRlMDYyYTZkYTM1ODcwY2ZiMzM1OTVmYmU2cDMsCisgICAgLTB4MS5hYWJlNjI1MmUzYTRicDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTIKKyAgICAtMHgxLjhiZGNkNTRiZDU5YjczMDI4ZTVmMjc2NDljYTY3Y2JhcDIsCisgICAgMHgxLmJiMjgyYjA3NGVkYzRwMAorICB9LAorICB7IC8vIEVudHJ5IDc1MworICAgIDB4MS44YmRjZDU0YmQ1OWI3MzAyOGU1ZjI3NjQ5Y2E2N2NiYXAyLAorICAgIC0weDEuYmIyODJiMDc0ZWRjNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzU0CisgICAgLTB4MS4xODY2ZmU4NDVlNzc1ZDhjOGY4YmY5MTY1NjQ3ZjZjYnAyLAorICAgIDB4MS5jYjkxZjNiYmJhMTNkcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTUKKyAgICAweDEuMTg2NmZlODQ1ZTc3NWQ4YzhmOGJmOTE2NTY0N2Y2Y2JwMiwKKyAgICAtMHgxLmNiOTFmM2JiYmExM2RwMAorICB9LAorICB7IC8vIEVudHJ5IDc1NgorICAgIC0weDEuYWY0NjQzZTkzNzIxYWQ4MDk1ZGQyN2YwODI3ZTEzZTBwMSwKKyAgICAweDEuZGJmYmJjNzAyNTRiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzU3CisgICAgMHgxLmFmNDY0M2U5MzcyMWFkODA5NWRkMjdmMDgyN2UxM2UwcDEsCisgICAgLTB4MS5kYmZiYmM3MDI1NGI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NTgKKyAgICAtMHgxLjViZDEzZGRhMDc3ZTQyN2QwYzlkYzZjMGU1ZDNiMWI1cDEsCisgICAgMHgxLmVjNjU4NTI0OTA4MmZwMAorICB9LAorICB7IC8vIEVudHJ5IDc1OQorICAgIDB4MS41YmQxM2RkYTA3N2U0MjdkMGM5ZGM2YzBlNWQzYjFiNXAxLAorICAgIC0weDEuZWM2NTg1MjQ5MDgyZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzYwCisgICAgLTB4MS4yMTI3N2I5N2MwMTQ4NWYxN2JhY2RiODA0Mzc1ZWJjZHAxLAorICAgIDB4MS5mY2NmNGRkOGZiYmE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjEKKyAgICAweDEuMjEyNzdiOTdjMDE0ODVmMTdiYWNkYjgwNDM3NWViY2RwMSwKKyAgICAtMHgxLmZjY2Y0ZGQ4ZmJiYThwMAorICB9LAorICB7IC8vIEVudHJ5IDc2MgorICAgIC0weDEuZWFiNDNlMGU1ZTg5MTZkNGMwODM0OWFiZTllMmFiZDNwMCwKKyAgICAweDEuMDY5YzhiNDZiMzc5MXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzYzCisgICAgMHgxLmVhYjQzZTBlNWU4OTE2ZDRjMDgzNDlhYmU5ZTJhYmQzcDAsCisgICAgLTB4MS4wNjljOGI0NmIzNzkxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjQKKyAgICAtMHgxLmE2NGM3YzlkNjUzNTM2NGQ2MDViYjllNTMxNTA3MmZmcDAsCisgICAgMHgxLjBlZDE2ZmEwZTkxNGVwMQorICB9LAorICB7IC8vIEVudHJ5IDc2NQorICAgIDB4MS5hNjRjN2M5ZDY1MzUzNjRkNjA1YmI5ZTUzMTUwNzJmZnAwLAorICAgIC0weDEuMGVkMTZmYTBlOTE0ZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzY2CisgICAgLTB4MS42ZWZlYzhjMWU0OTQ0YTQyNTU0MTIxOTM2NGExNTA3OHAwLAorICAgIDB4MS4xNzA2NTNmYjFlYjBicDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NjcKKyAgICAweDEuNmVmZWM4YzFlNDk0NGE0MjU1NDEyMTkzNjRhMTUwNzhwMCwKKyAgICAtMHgxLjE3MDY1M2ZiMWViMGJwMQorICB9LAorICB7IC8vIEVudHJ5IDc2OAorICAgIC0weDEuNDEwMzhiNzBiZTBmZjViN2M0ZDhmMDZiMGQ0Y2Y1MjVwMCwKKyAgICAweDEuMWYzYjM4NTU1NDRjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzY5CisgICAgMHgxLjQxMDM4YjcwYmUwZmY1YjdjNGQ4ZjA2YjBkNGNmNTI1cDAsCisgICAgLTB4MS4xZjNiMzg1NTU0NGM4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzAKKyAgICAtMHgxLjE5ZTI2YjVlY2Q1YzI5NDM0OGJhMTdmZWM1NDU0NzkycDAsCisgICAgMHgxLjI3NzAxY2FmODllODVwMQorICB9LAorICB7IC8vIEVudHJ5IDc3MQorICAgIDB4MS4xOWUyNmI1ZWNkNWMyOTQzNDhiYTE3ZmVjNTQ1NDc5MnAwLAorICAgIC0weDEuMjc3MDFjYWY4OWU4NXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzcyCisgICAgLTB4MS5lZmQ4Mjc0MmQ3NzhjNGJjYTA3ZTFlODZjYmM2MDRiMHAtMSwKKyAgICAweDEuMmZhNTAxMDliZjg0MnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzczCisgICAgMHgxLmVmZDgyNzQyZDc3OGM0YmNhMDdlMWU4NmNiYzYwNGIwcC0xLAorICAgIC0weDEuMmZhNTAxMDliZjg0MnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzc0CisgICAgLTB4MS5iM2RmMzg2ZjE4MjI0YTY0MDNlNTVjMTZiMzZlZjE3ZnAtMSwKKyAgICAweDEuMzdkOWU1NjNmNTFmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzc1CisgICAgMHgxLmIzZGYzODZmMTgyMjRhNjQwM2U1NWMxNmIzNmVmMTdmcC0xLAorICAgIC0weDEuMzdkOWU1NjNmNTFmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzc2CisgICAgLTB4MS43ZTFkOTM2ZjRkNjBmMWU2Zjg4YjRhMjRkZjljNjVmNHAtMSwKKyAgICAweDEuNDAwZWM5YmUyYWJiY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNzc3CisgICAgMHgxLjdlMWQ5MzZmNGQ2MGYxZTZmODhiNGEyNGRmOWM2NWY0cC0xLAorICAgIC0weDEuNDAwZWM5YmUyYWJiY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNzc4CisgICAgLTB4MS40ZDQ2NmFjY2FkNDg1NzQxODg4MzUxMzBlNjhlOWJhZHAtMSwKKyAgICAweDEuNDg0M2FlMTg2MDU3OXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzc5CisgICAgMHgxLjRkNDY2YWNjYWQ0ODU3NDE4ODgzNTEzMGU2OGU5YmFkcC0xLAorICAgIC0weDEuNDg0M2FlMTg2MDU3OXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzgwCisgICAgLTB4MS4yMDVhNjAwOWQ1ZTMzNzc0ZmE5OGY5ZjYxNmFjYzgwZnAtMSwKKyAgICAweDEuNTA3ODkyNzI5NWYzNnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzgxCisgICAgMHgxLjIwNWE2MDA5ZDVlMzM3NzRmYTk4ZjlmNjE2YWNjODBmcC0xLAorICAgIC0weDEuNTA3ODkyNzI5NWYzNnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzgyCisgICAgLTB4MS5lZDIxZTU5OTcyYWVmNjRhMDZlNTUzZjE4ZDY0NjA5M3AtMiwKKyAgICAweDEuNThhZDc2Y2NjYjhmM3AxCisgIH0sCisgIHsgLy8gRW50cnkgNzgzCisgICAgMHgxLmVkMjFlNTk5NzJhZWY2NGEwNmU1NTNmMThkNjQ2MDkzcC0yLAorICAgIC0weDEuNThhZDc2Y2NjYjhmM3AxCisgIH0sCisgIHsgLy8gRW50cnkgNzg0CisgICAgLTB4MS45ZTkyNTdlNmI2Mjg0ZjczY2QxZTJlYWUzMjIwZjMxM3AtMiwKKyAgICAweDEuNjBlMjViMjcwMTJiMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzg1CisgICAgMHgxLjllOTI1N2U2YjYyODRmNzNjZDFlMmVhZTMyMjBmMzEzcC0yLAorICAgIC0weDEuNjBlMjViMjcwMTJiMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzg2CisgICAgLTB4MS41M2ZkY2RmZDM3ZWU1NWJjMWNkMTYwNGI2YWIxM2I1ZnAtMiwKKyAgICAweDEuNjkxNzNmODEzNmM2ZHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzg3CisgICAgMHgxLjUzZmRjZGZkMzdlZTU1YmMxY2QxNjA0YjZhYjEzYjVmcC0yLAorICAgIC0weDEuNjkxNzNmODEzNmM2ZHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzg4CisgICAgLTB4MS4wYzg2NDA4M2QxZTVhYWE2ODE1YTg1ZTI1YzY2MmU5N3AtMiwKKyAgICAweDEuNzE0YzIzZGI2YzYyYXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzg5CisgICAgMHgxLjBjODY0MDgzZDFlNWFhYTY4MTVhODVlMjVjNjYyZTk3cC0yLAorICAgIC0weDEuNzE0YzIzZGI2YzYyYXAxCisgIH0sCisgIHsgLy8gRW50cnkgNzkwCisgICAgLTB4MS44ZWQ5MTQyZmM5MTNmNDUwZGNjZGJkZDI3ZWQxMWE0MHAtMywKKyAgICAweDEuNzk4MTA4MzVhMWZlN3AxCisgIH0sCisgIHsgLy8gRW50cnkgNzkxCisgICAgMHgxLjhlZDkxNDJmYzkxM2Y0NTBkY2NkYmRkMjdlZDExYTQwcC0zLAorICAgIC0weDEuNzk4MTA4MzVhMWZlN3AxCisgIH0sCisgIHsgLy8gRW50cnkgNzkyCisgICAgLTB4MS4wODBmNzNiMDcwNGNmNTcwODE4YTY1ZDFhMTJkNWJlMXAtMywKKyAgICAweDEuODFiNWVjOGZkNzlhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzkzCisgICAgMHgxLjA4MGY3M2IwNzA0Y2Y1NzA4MThhNjVkMWExMmQ1YmUxcC0zLAorICAgIC0weDEuODFiNWVjOGZkNzlhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzk0CisgICAgLTB4MS4wNmY4ZDAxNGJmMDlhYjg1ZjJhMTlkODBkYTVhMmMwYnAtNCwKKyAgICAweDEuODllYWQwZWEwZDM1YnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzk1CisgICAgMHgxLjA2ZjhkMDE0YmYwOWFiODVmMmExOWQ4MGRhNWEyYzBicC00LAorICAgIC0weDEuODllYWQwZWEwZDM1YnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzk2CisgICAgMHgxLjBjODY0MDgzZDFlN2YzOTU1YjEyMDcxZTA2NDQ0MThicC0yLAorICAgIC0weDEuODFiNWVjOGZkNzk5ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzk3CisgICAgLTB4MS4wYzg2NDA4M2QxZTdmMzk1NWIxMjA3MWUwNjQ0NDE4YnAtMiwKKyAgICAweDEuODFiNWVjOGZkNzk5ZnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzk4CisgICAgMHgxLjIwNWE2MDA5ZDVlM2Y3NGRhM2EzNzJhYzE1NzIxZWY2cC0xLAorICAgIC0weDEuNzE0YzIzZGI2YzYyNnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzk5CisgICAgLTB4MS4yMDVhNjAwOWQ1ZTNmNzRkYTNhMzcyYWMxNTcyMWVmNnAtMSwKKyAgICAweDEuNzE0YzIzZGI2YzYyNnAyCisgIH0sCisgIHsgLy8gRW50cnkgODAwCisgICAgMHgxLmVmZDgyNzQyZDc3OGU2ZjA0YWRlZmMzZDIxZjhiZTk2cC0xLAorICAgIC0weDEuNjBlMjViMjcwMTJhZHAyCisgIH0sCisgIHsgLy8gRW50cnkgODAxCisgICAgLTB4MS5lZmQ4Mjc0MmQ3NzhlNmYwNGFkZWZjM2QyMWY4YmU5NnAtMSwKKyAgICAweDEuNjBlMjViMjcwMTJhZHAyCisgIH0sCisgIHsgLy8gRW50cnkgODAyCisgICAgMHgxLmE2NGM3YzlkNjUzNDY4ZmJjNTI2MGRjYTUwMWRkYjgxcDAsCisgICAgLTB4MS41MDc4OTI3Mjk1ZjM0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDMKKyAgICAtMHgxLmE2NGM3YzlkNjUzNDY4ZmJjNTI2MGRjYTUwMWRkYjgxcDAsCisgICAgMHgxLjUwNzg5MjcyOTVmMzRwMgorICB9LAorICB7IC8vIEVudHJ5IDgwNAorICAgIDB4MS5hZjQ2NDNlOTM3MWY5MzE2ZDMyNTRiODYxOWVkYTQ4NHAxLAorICAgIC0weDEuNDAwZWM5YmUyYWJiYnAyCisgIH0sCisgIHsgLy8gRW50cnkgODA1CisgICAgLTB4MS5hZjQ2NDNlOTM3MWY5MzE2ZDMyNTRiODYxOWVkYTQ4NHAxLAorICAgIDB4MS40MDBlYzliZTJhYmJicDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDYKKyAgICAweDEuZjJmMDVjZmI2NTZhOWU0YTA4NWIwMjdkMTg2MDMyMzBwNCwKKyAgICAtMHgxLjJmYTUwMTA5YmY4NDJwMgorICB9LAorICB7IC8vIEVudHJ5IDgwNworICAgIC0weDEuZjJmMDVjZmI2NTZhOWU0YTA4NWIwMjdkMTg2MDMyMzBwNCwKKyAgICAweDEuMmZhNTAxMDliZjg0MnAyCisgIH0sCisgIHsgLy8gRW50cnkgODA4CisgICAgLTB4MS4xODY2ZmU4NDVlNzc1NTM5MmEwYWRmZjU2YTY4OGVhYXAyLAorICAgIC0weDEuMWYzYjM4NTU1NDRjOXAyCisgIH0sCisgIHsgLy8gRW50cnkgODA5CisgICAgMHgxLjE4NjZmZTg0NWU3NzU1MzkyYTBhZGZmNTZhNjg4ZWFhcDIsCisgICAgMHgxLjFmM2IzODU1NTQ0YzlwMgorICB9LAorICB7IC8vIEVudHJ5IDgxMAorICAgIC0weDEuZWFiNDNlMGU1ZTg5NTllOGY1YWM2YzRmOWQ5YTgzM2JwMCwKKyAgICAtMHgxLjBlZDE2ZmEwZTkxNTBwMgorICB9LAorICB7IC8vIEVudHJ5IDgxMQorICAgIDB4MS5lYWI0M2UwZTVlODk1OWU4ZjVhYzZjNGY5ZDlhODMzYnAwLAorICAgIDB4MS4wZWQxNmZhMGU5MTUwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTIKKyAgICAtMHgxLjE5ZTI2YjVlY2Q1Y2Q2OWMzMGMzZGM1ZDlmZmRlOTg2cDAsCisgICAgLTB4MS5mY2NmNGRkOGZiYmFlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTMKKyAgICAweDEuMTllMjZiNWVjZDVjZDY5YzMwYzNkYzVkOWZmZGU5ODZwMCwKKyAgICAweDEuZmNjZjRkZDhmYmJhZXAxCisgIH0sCisgIHsgLy8gRW50cnkgODE0CisgICAgLTB4MS40ZDQ2NmFjY2FkNDllYzk2OTM1Y2FhMmEzNWU0MzlmMHAtMSwKKyAgICAtMHgxLmRiZmJiYzcwMjU0YmNwMQorICB9LAorICB7IC8vIEVudHJ5IDgxNQorICAgIDB4MS40ZDQ2NmFjY2FkNDllYzk2OTM1Y2FhMmEzNWU0MzlmMHAtMSwKKyAgICAweDEuZGJmYmJjNzAyNTRiY3AxCisgIH0sCisgIHsgLy8gRW50cnkgODE2CisgICAgLTB4MS41M2ZkY2RmZDM3ZjFlYTIxNmU4MTU3NThlZDAyYTU1N3AtMiwKKyAgICAtMHgxLmJiMjgyYjA3NGVkY2FwMQorICB9LAorICB7IC8vIEVudHJ5IDgxNworICAgIDB4MS41M2ZkY2RmZDM3ZjFlYTIxNmU4MTU3NThlZDAyYTU1N3AtMiwKKyAgICAweDEuYmIyODJiMDc0ZWRjYXAxCisgIH0sCisgIHsgLy8gRW50cnkgODE4CisgICAgLTB4MS4wNmY4ZDAxNGJmMGU5NjRlNjM0ZjM3YmNkYmY2NDQ5MXAtNCwKKyAgICAtMHgxLjlhNTQ5OTllNzg2ZDhwMQorICB9LAorICB7IC8vIEVudHJ5IDgxOQorICAgIDB4MS4wNmY4ZDAxNGJmMGU5NjRlNjM0ZjM3YmNkYmY2NDQ5MXAtNCwKKyAgICAweDEuOWE1NDk5OWU3ODZkOHAxCisgIH0sCisgIHsgLy8gRW50cnkgODIwCisgICAgMHgxLjhlZDkxNDJmYzkxNGZlMDY3Yjk5MWQxMWQ3MDg1OWI4cC0zLAorICAgIC0weDEuNzk4MTA4MzVhMWZlNnAxCisgIH0sCisgIHsgLy8gRW50cnkgODIxCisgICAgLTB4MS44ZWQ5MTQyZmM5MTRmZTA2N2I5OTFkMTFkNzA4NTliOHAtMywKKyAgICAweDEuNzk4MTA4MzVhMWZlNnAxCisgIH0sCisgIHsgLy8gRW50cnkgODIyCisgICAgMHgxLmVkMjFlNTk5NzJhZTU4OWFhYTRlZTNkODBjM2I3ZGVmcC0yLAorICAgIC0weDEuNThhZDc2Y2NjYjhmNHAxCisgIH0sCisgIHsgLy8gRW50cnkgODIzCisgICAgLTB4MS5lZDIxZTU5OTcyYWU1ODlhYWE0ZWUzZDgwYzNiN2RlZnAtMiwKKyAgICAweDEuNThhZDc2Y2NjYjhmNHAxCisgIH0sCisgIHsgLy8gRW50cnkgODI0CisgICAgMHgxLmIzZGYzODZmMTgyMGZmM2RmMjkwZjAzNmRiNDZmMTNicC0xLAorICAgIC0weDEuMzdkOWU1NjNmNTIwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgODI1CisgICAgLTB4MS5iM2RmMzg2ZjE4MjBmZjNkZjI5MGYwMzZkYjQ2ZjEzYnAtMSwKKyAgICAweDEuMzdkOWU1NjNmNTIwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgODI2CisgICAgMHgxLjZlZmVjOGMxZTQ5MjYxNmZlMmZlYzBiNzY0ZmE2ZWI0cDAsCisgICAgLTB4MS4xNzA2NTNmYjFlYjEwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjcKKyAgICAtMHgxLjZlZmVjOGMxZTQ5MjYxNmZlMmZlYzBiNzY0ZmE2ZWI0cDAsCisgICAgMHgxLjE3MDY1M2ZiMWViMTBwMQorICB9LAorICB7IC8vIEVudHJ5IDgyOAorICAgIDB4MS41YmQxM2RkYTA3N2FkYTkxOTI3YWI3M2NlZGFhODI4ZHAxLAorICAgIC0weDEuZWM2NTg1MjQ5MDgzY3AwCisgIH0sCisgIHsgLy8gRW50cnkgODI5CisgICAgLTB4MS41YmQxM2RkYTA3N2FkYTkxOTI3YWI3M2NlZGFhODI4ZHAxLAorICAgIDB4MS5lYzY1ODUyNDkwODNjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzAKKyAgICAweDEuNGJiNmE2NGUwNjFmNjljZjc0MDk5MzEzODNjYzgwYTFwMywKKyAgICAtMHgxLmFhYmU2MjUyZTNhNThwMAorICB9LAorICB7IC8vIEVudHJ5IDgzMQorICAgIC0weDEuNGJiNmE2NGUwNjFmNjljZjc0MDk5MzEzODNjYzgwYTFwMywKKyAgICAweDEuYWFiZTYyNTJlM2E1OHAwCisgIH0sCisgIHsgLy8gRW50cnkgODMyCisgICAgLTB4MS44YmRjZDU0YmQ1YTAwNGFjZjkyMmM0OWE4ZDVlMjhhMnAyLAorICAgIC0weDEuNjkxNzNmODEzNmM3NHAwCisgIH0sCisgIHsgLy8gRW50cnkgODMzCisgICAgMHgxLjhiZGNkNTRiZDVhMDA0YWNmOTIyYzQ5YThkNWUyOGEycDIsCisgICAgMHgxLjY5MTczZjgxMzZjNzRwMAorICB9LAorICB7IC8vIEVudHJ5IDgzNAorICAgIC0weDEuMjEyNzdiOTdjMDE1ZjE5ZGU3YjIzODI1MmU1NmU2M2ZwMSwKKyAgICAtMHgxLjI3NzAxY2FmODllOTBwMAorICB9LAorICB7IC8vIEVudHJ5IDgzNQorICAgIDB4MS4yMTI3N2I5N2MwMTVmMTlkZTdiMjM4MjUyZTU2ZTYzZnAxLAorICAgIDB4MS4yNzcwMWNhZjg5ZTkwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzYKKyAgICAtMHgxLjQxMDM4YjcwYmUxMWI4NTc5OGEyNzFhYzNkMjA5ZWE3cDAsCisgICAgLTB4MS5jYjkxZjNiYmJhMTU3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgODM3CisgICAgMHgxLjQxMDM4YjcwYmUxMWI4NTc5OGEyNzFhYzNkMjA5ZWE3cDAsCisgICAgMHgxLmNiOTFmM2JiYmExNTdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzgKKyAgICAtMHgxLjdlMWQ5MzZmNGQ2M2MxYzc4MDY2NTdkOGI4Mzg4MzZlcC0xLAorICAgIC0weDEuNDg0M2FlMTg2MDU4ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDgzOQorICAgIDB4MS43ZTFkOTM2ZjRkNjNjMWM3ODA2NjU3ZDhiODM4ODM2ZXAtMSwKKyAgICAweDEuNDg0M2FlMTg2MDU4ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg0MAorICAgIC0weDEuOWU5MjU3ZTZiNjJkODg2Zjc0ZTM0OGJkYzE0MjU5OWNwLTIsCisgICAgLTB4MS44OWVhZDBlYTBkMzhhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODQxCisgICAgMHgxLjllOTI1N2U2YjYyZDg4NmY3NGUzNDhiZGMxNDI1OTljcC0yLAorICAgIDB4MS44OWVhZDBlYTBkMzhhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODQyCisgICAgLTB4MS4wODBmNzNiMDcwNTdkYzdiZjBkZjZkZTFkM2FlMWEzYnAtMywKKyAgICAtMHgxLjA2OWM4YjQ2YjM3ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDMKKyAgICAweDEuMDgwZjczYjA3MDU3ZGM3YmYwZGY2ZGUxZDNhZTFhM2JwLTMsCisgICAgMHgxLjA2OWM4YjQ2YjM3ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDQKKyAgICAweDEuMDgwZjczYjA3MDRiZWE3YTU2ZDRmODhlY2YzZDVjZDNwLTMsCisgICAgMHgxLjA2OWM4YjQ2YjM3MzRwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDUKKyAgICAtMHgxLjA4MGY3M2IwNzA0YmVhN2E1NmQ0Zjg4ZWNmM2Q1Y2QzcC0zLAorICAgIC0weDEuMDY5YzhiNDZiMzczNHAtMworICB9LAorICB7IC8vIEVudHJ5IDg0NgorICAgIDB4MS45ZTkyNTdlNmI2MjZiMWViMTEzNmJkNzg1MzMxMTU0M3AtMiwKKyAgICAweDEuODllYWQwZWEwZDMyY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDg0NworICAgIC0weDEuOWU5MjU3ZTZiNjI2YjFlYjExMzZiZDc4NTMzMTE1NDNwLTIsCisgICAgLTB4MS44OWVhZDBlYTBkMzJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgODQ4CisgICAgMHgxLjdlMWQ5MzZmNGQ1ZjJlZWJiYmYzZDYyOTYzMTA2YWZhcC0xLAorICAgIDB4MS40ODQzYWUxODYwNTVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODQ5CisgICAgLTB4MS43ZTFkOTM2ZjRkNWYyZWViYmJmM2Q2Mjk2MzEwNmFmYXAtMSwKKyAgICAtMHgxLjQ4NDNhZTE4NjA1NWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTAKKyAgICAweDEuNDEwMzhiNzBiZTBkZjExZDEyMjQ2ODNjNmY4NjU1ODRwMCwKKyAgICAweDEuY2I5MWYzYmJiYTEyOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDg1MQorICAgIC0weDEuNDEwMzhiNzBiZTBkZjExZDEyMjQ2ODNjNmY4NjU1ODRwMCwKKyAgICAtMHgxLmNiOTFmM2JiYmExMjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTIKKyAgICAweDEuMjEyNzdiOTdjMDExNWRjZjY2NDdhZDY4ZjRjYjRhZDBwMSwKKyAgICAweDEuMjc3MDFjYWY4OWU3OHAwCisgIH0sCisgIHsgLy8gRW50cnkgODUzCisgICAgLTB4MS4yMTI3N2I5N2MwMTE1ZGNmNjY0N2FkNjhmNGNiNGFkMHAxLAorICAgIC0weDEuMjc3MDFjYWY4OWU3OHAwCisgIH0sCisgIHsgLy8gRW50cnkgODU0CisgICAgMHgxLjhiZGNkNTRiZDU5MTRiZDlhNGQ2ZGQ2NTljMmY2NjA2cDIsCisgICAgMHgxLjY5MTczZjgxMzZjNWNwMAorICB9LAorICB7IC8vIEVudHJ5IDg1NQorICAgIC0weDEuOGJkY2Q1NGJkNTkxNGJkOWE0ZDZkZDY1OWMyZjY2MDZwMiwKKyAgICAtMHgxLjY5MTczZjgxMzZjNWNwMAorICB9LAorICB7IC8vIEVudHJ5IDg1NgorICAgIC0weDEuNGJiNmE2NGUwNjMzYmZhNTY4Nzk2NjA2NTVjMzg3NjdwMywKKyAgICAweDEuYWFiZTYyNTJlM2E0MHAwCisgIH0sCisgIHsgLy8gRW50cnkgODU3CisgICAgMHgxLjRiYjZhNjRlMDYzM2JmYTU2ODc5NjYwNjU1YzM4NzY3cDMsCisgICAgLTB4MS5hYWJlNjI1MmUzYTQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTgKKyAgICAtMHgxLjViZDEzZGRhMDc4MTI0NDQ0Yzk0MGYwMTNiZTdjNDAycDEsCisgICAgMHgxLmVjNjU4NTI0OTA4MjRwMAorICB9LAorICB7IC8vIEVudHJ5IDg1OQorICAgIDB4MS41YmQxM2RkYTA3ODEyNDQ0NGM5NDBmMDEzYmU3YzQwMnAxLAorICAgIC0weDEuZWM2NTg1MjQ5MDgyNHAwCisgIH0sCisgIHsgLy8gRW50cnkgODYwCisgICAgLTB4MS42ZWZlYzhjMWU0OTZmNjljMjg2YWRjNjZiZDU4NmVhZnAwLAorICAgIDB4MS4xNzA2NTNmYjFlYjA0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjEKKyAgICAweDEuNmVmZWM4YzFlNDk2ZjY5YzI4NmFkYzY2YmQ1ODZlYWZwMCwKKyAgICAtMHgxLjE3MDY1M2ZiMWViMDRwMQorICB9LAorICB7IC8vIEVudHJ5IDg2MgorICAgIC0weDEuYjNkZjM4NmYxODI2MmJkNjM3ZTI5ZmJiMzA4MDZiMmNwLTEsCisgICAgMHgxLjM3ZDllNTYzZjUxZjZwMQorICB9LAorICB7IC8vIEVudHJ5IDg2MworICAgIDB4MS5iM2RmMzg2ZjE4MjYyYmQ2MzdlMjlmYmIzMDgwNmIyY3AtMSwKKyAgICAtMHgxLjM3ZDllNTYzZjUxZjZwMQorICB9LAorICB7IC8vIEVudHJ5IDg2NAorICAgIC0weDEuZWQyMWU1OTk3MmI1YmNkMzAxNWMyNTBlZmYxYzY5YjlwLTIsCisgICAgMHgxLjU4YWQ3NmNjY2I4ZThwMQorICB9LAorICB7IC8vIEVudHJ5IDg2NQorICAgIDB4MS5lZDIxZTU5OTcyYjViY2QzMDE1YzI1MGVmZjFjNjliOXAtMiwKKyAgICAtMHgxLjU4YWQ3NmNjY2I4ZThwMQorICB9LAorICB7IC8vIEVudHJ5IDg2NgorICAgIC0weDEuOGVkOTE0MmZjOTIxNzI4OWVkMjE5NDBkZWFhZmU4NzhwLTMsCisgICAgMHgxLjc5ODEwODM1YTFmZGFwMQorICB9LAorICB7IC8vIEVudHJ5IDg2NworICAgIDB4MS44ZWQ5MTQyZmM5MjE3Mjg5ZWQyMTk0MGRlYWFmZTg3OHAtMywKKyAgICAtMHgxLjc5ODEwODM1YTFmZGFwMQorICB9LAorICB7IC8vIEVudHJ5IDg2OAorICAgIDB4MS4wNmY4ZDAxNGJlZjY3Y2ZiMmRiNTYwZjVhNDE0Yzg4YnAtNCwKKyAgICAweDEuOWE1NDk5OWU3ODZjY3AxCisgIH0sCisgIHsgLy8gRW50cnkgODY5CisgICAgLTB4MS4wNmY4ZDAxNGJlZjY3Y2ZiMmRiNTYwZjVhNDE0Yzg4YnAtNCwKKyAgICAtMHgxLjlhNTQ5OTllNzg2Y2NwMQorICB9LAorICB7IC8vIEVudHJ5IDg3MAorICAgIDB4MS41M2ZkY2RmZDM3ZWI0MGNkOWU1MDRkZjQzMWI1MDJkMHAtMiwKKyAgICAweDEuYmIyODJiMDc0ZWRiZXAxCisgIH0sCisgIHsgLy8gRW50cnkgODcxCisgICAgLTB4MS41M2ZkY2RmZDM3ZWI0MGNkOWU1MDRkZjQzMWI1MDJkMHAtMiwKKyAgICAtMHgxLmJiMjgyYjA3NGVkYmVwMQorICB9LAorICB7IC8vIEVudHJ5IDg3MgorICAgIDB4MS40ZDQ2NmFjY2FkNDVhNzJlNWY3MzVlYjJmNmFkZjlmZnAtMSwKKyAgICAweDEuZGJmYmJjNzAyNTRiMHAxCisgIH0sCisgIHsgLy8gRW50cnkgODczCisgICAgLTB4MS40ZDQ2NmFjY2FkNDVhNzJlNWY3MzVlYjJmNmFkZjlmZnAtMSwKKyAgICAtMHgxLmRiZmJiYzcwMjU0YjBwMQorICB9LAorICB7IC8vIEVudHJ5IDg3NAorICAgIDB4MS4xOWUyNmI1ZWNkNTk4NTA3ZWNkMDBkODFlYzc3NTY4M3AwLAorICAgIDB4MS5mY2NmNGRkOGZiYmEycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzUKKyAgICAtMHgxLjE5ZTI2YjVlY2Q1OTg1MDdlY2QwMGQ4MWVjNzc1NjgzcDAsCisgICAgLTB4MS5mY2NmNGRkOGZiYmEycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzYKKyAgICAweDEuZWFiNDNlMGU1ZTgyNTcwNzNhZmFlY2FiMzg2MTU0YTFwMCwKKyAgICAweDEuMGVkMTZmYTBlOTE0YXAyCisgIH0sCisgIHsgLy8gRW50cnkgODc3CisgICAgLTB4MS5lYWI0M2UwZTVlODI1NzA3M2FmYWVjYWIzODYxNTRhMXAwLAorICAgIC0weDEuMGVkMTZmYTBlOTE0YXAyCisgIH0sCisgIHsgLy8gRW50cnkgODc4CisgICAgMHgxLjE4NjZmZTg0NWU2ZmMyNzA2NGUyYjEyM2E3NzI0ZTc1cDIsCisgICAgMHgxLjFmM2IzODU1NTQ0YzNwMgorICB9LAorICB7IC8vIEVudHJ5IDg3OQorICAgIC0weDEuMTg2NmZlODQ1ZTZmYzI3MDY0ZTJiMTIzYTc3MjRlNzVwMiwKKyAgICAtMHgxLjFmM2IzODU1NTQ0YzNwMgorICB9LAorICB7IC8vIEVudHJ5IDg4MAorICAgIC0weDEuZjJmMDVjZmI2NWM1ZTA2YjFhZTg4YzQ4YjRiNzU1Y2VwNCwKKyAgICAweDEuMmZhNTAxMDliZjgzY3AyCisgIH0sCisgIHsgLy8gRW50cnkgODgxCisgICAgMHgxLmYyZjA1Y2ZiNjVjNWUwNmIxYWU4OGM0OGI0Yjc1NWNlcDQsCisgICAgLTB4MS4yZmE1MDEwOWJmODNjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODIKKyAgICAtMHgxLmFmNDY0M2U5MzcyOGQ2YmZkNzAyYzMzNDA1ZGNjZTdkcDEsCisgICAgMHgxLjQwMGVjOWJlMmFiYjVwMgorICB9LAorICB7IC8vIEVudHJ5IDg4MworICAgIDB4MS5hZjQ2NDNlOTM3MjhkNmJmZDcwMmMzMzQwNWRjY2U3ZHAxLAorICAgIC0weDEuNDAwZWM5YmUyYWJiNXAyCisgIH0sCisgIHsgLy8gRW50cnkgODg0CisgICAgLTB4MS5hNjRjN2M5ZDY1MzlmZGVjMjdhZmMzODBiOWY3NTJjMHAwLAorICAgIDB4MS41MDc4OTI3Mjk1ZjJlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODUKKyAgICAweDEuYTY0YzdjOWQ2NTM5ZmRlYzI3YWZjMzgwYjlmNzUyYzBwMCwKKyAgICAtMHgxLjUwNzg5MjcyOTVmMmVwMgorICB9LAorICB7IC8vIEVudHJ5IDg4NgorICAgIC0weDEuZWZkODI3NDJkNzdlYjczYzgxYTAwZjU2ODYyMWY2M2NwLTEsCisgICAgMHgxLjYwZTI1YjI3MDEyYTdwMgorICB9LAorICB7IC8vIEVudHJ5IDg4NworICAgIDB4MS5lZmQ4Mjc0MmQ3N2ViNzNjODFhMDBmNTY4NjIxZjYzY3AtMSwKKyAgICAtMHgxLjYwZTI1YjI3MDEyYTdwMgorICB9LAorICB7IC8vIEVudHJ5IDg4OAorICAgIC0weDEuMjA1YTYwMDlkNWU3ZWFlNjNkYTFjYmQ1NzEyOWVlZmZwLTEsCisgICAgMHgxLjcxNGMyM2RiNmM2MjBwMgorICB9LAorICB7IC8vIEVudHJ5IDg4OQorICAgIDB4MS4yMDVhNjAwOWQ1ZTdlYWU2M2RhMWNiZDU3MTI5ZWVmZnAtMSwKKyAgICAtMHgxLjcxNGMyM2RiNmM2MjBwMgorICB9LAorICB7IC8vIEVudHJ5IDg5MAorICAgIC0weDEuMGM4NjQwODNkMWVlNWQzNGRlMjA2MGM4NjI5ZDQ5NTFwLTIsCisgICAgMHgxLjgxYjVlYzhmZDc5OTlwMgorICB9LAorICB7IC8vIEVudHJ5IDg5MQorICAgIDB4MS4wYzg2NDA4M2QxZWU1ZDM0ZGUyMDYwYzg2MjlkNDk1MXAtMiwKKyAgICAtMHgxLjgxYjVlYzhmZDc5OTlwMgorICB9LAorICB7IC8vIEVudHJ5IDg5MgorICAgIDB4MS5mMDliNjNhYTgxZmMzNmRhNTA5YzNlNDEwNjA3ZmZlN3AtNSwKKyAgICAweDEuZWZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDg5MworICAgIC0weDEuZjA5YjYzYWE4MWZjMzZkYTUwOWMzZTQxMDYwN2ZmZTdwLTUsCisgICAgLTB4MS5lZmZmZmZmZmZmZmZmcC01CisgIH0sCisgIHsgLy8gRW50cnkgODk0CisgICAgMHgxLmYwOWI2M2FhODFmYzQ2ZTk1ZTA2NDA1YjQxZThiNGNjcC01LAorICAgIDB4MS5mcC01CisgIH0sCisgIHsgLy8gRW50cnkgODk1CisgICAgLTB4MS5mMDliNjNhYTgxZmM0NmU5NWUwNjQwNWI0MWU4YjRjY3AtNSwKKyAgICAtMHgxLmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTYKKyAgICAweDEuZjA5YjYzYWE4MWZjNTZmODZiNzA0Mjc1N2RjYTYyZThwLTUsCisgICAgMHgxLmYwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTcKKyAgICAtMHgxLmYwOWI2M2FhODFmYzU2Zjg2YjcwNDI3NTdkY2E2MmU4cC01LAorICAgIC0weDEuZjAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDg5OAorICAgIDB4MS5mYThmMjFjOGEzM2FlY2Y0YWY3Nzc1NGVmOTBhNjdiOHAtNCwKKyAgICAweDEuZjdmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDg5OQorICAgIC0weDEuZmE4ZjIxYzhhMzNhZWNmNGFmNzc3NTRlZjkwYTY3YjhwLTQsCisgICAgLTB4MS5mN2ZmZmZmZmZmZmZmcC00CisgIH0sCisgIHsgLy8gRW50cnkgOTAwCisgICAgMHgxLmZhOGYyMWM4YTMzYWZkMzM1NTE5OGU4ZDc3MTZhODExcC00LAorICAgIDB4MS5mODBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDEKKyAgICAtMHgxLmZhOGYyMWM4YTMzYWZkMzM1NTE5OGU4ZDc3MTZhODExcC00LAorICAgIC0weDEuZjgwcC00CisgIH0sCisgIHsgLy8gRW50cnkgOTAyCisgICAgMHgxLmZhOGYyMWM4YTMzYjBkNzFmYWJiYTdjYmY1MjZlZDA3cC00LAorICAgIDB4MS5mODAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgOTAzCisgICAgLTB4MS5mYThmMjFjOGEzM2IwZDcxZmFiYmE3Y2JmNTI2ZWQwN3AtNCwKKyAgICAtMHgxLmY4MDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDQKKyAgICAweDEuNGVmMDZjYjRmMGE4NjllZjAwZGY4ZWM1NTgyZGZhMzFwLTMsCisgICAgMHgxLjRiZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDUKKyAgICAtMHgxLjRlZjA2Y2I0ZjBhODY5ZWYwMGRmOGVjNTU4MmRmYTMxcC0zLAorICAgIC0weDEuNGJmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDkwNgorICAgIDB4MS40ZWYwNmNiNGYwYTg3YTVjOGVlZWViY2ViMTJhMjJiNHAtMywKKyAgICAweDEuNGMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgOTA3CisgICAgLTB4MS40ZWYwNmNiNGYwYTg3YTVjOGVlZWViY2ViMTJhMjJiNHAtMywKKyAgICAtMHgxLjRjMHAtMworICB9LAorICB7IC8vIEVudHJ5IDkwOAorICAgIDB4MS40ZWYwNmNiNGYwYTg4YWNhMWNmZTQ4ZDgwYTMxMGE2NXAtMywKKyAgICAweDEuNGMwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDkwOQorICAgIC0weDEuNGVmMDZjYjRmMGE4OGFjYTFjZmU0OGQ4MGEzMTBhNjVwLTMsCisgICAgLTB4MS40YzAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgOTEwCisgICAgMHgxLjNjYzJhNDRlMjk5OTY2OGNiMDkyYTA5YjczYjJkZTUwcC0yLAorICAgIDB4MS4zMzMzMzMzMzMzMzMycC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTExCisgICAgLTB4MS4zY2MyYTQ0ZTI5OTk2NjhjYjA5MmEwOWI3M2IyZGU1MHAtMiwKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTIKKyAgICAweDEuM2NjMmE0NGUyOTk5NzgxNGExYWMzZjAyMTFjNzY0MWZwLTIsCisgICAgMHgxLjMzMzMzMzMzMzMzMzNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTMKKyAgICAtMHgxLjNjYzJhNDRlMjk5OTc4MTRhMWFjM2YwMjExYzc2NDFmcC0yLAorICAgIC0weDEuMzMzMzMzMzMzMzMzM3AtMgorICB9LAorICB7IC8vIEVudHJ5IDkxNAorICAgIDB4MS4zY2MyYTQ0ZTI5OTk4OTljOTJjNWRkNjhiMDA3NGMzMXAtMiwKKyAgICAweDEuMzMzMzMzMzMzMzMzNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDkxNQorICAgIC0weDEuM2NjMmE0NGUyOTk5ODk5YzkyYzVkZDY4YjAwNzRjMzFwLTIsCisgICAgLTB4MS4zMzMzMzMzMzMzMzM0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTE2CisgICAgMHgxLjk5NDM3MTFkYzJjZTgzZDIxY2RiMjg1YWNlZDgxN2FkcC0xLAorICAgIDB4MS41OTQzMTdhY2M0ZWY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTE3CisgICAgLTB4MS45OTQzNzExZGMyY2U4M2QyMWNkYjI4NWFjZWQ4MTdhZHAtMSwKKyAgICAtMHgxLjU5NDMxN2FjYzRlZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTgKKyAgICAweDEuOTk0MzcxMWRjMmNlOWUwYjNmMWZmZTVhZWMwYWMyMGRwLTEsCisgICAgMHgxLjU5NDMxN2FjYzRlZjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTkKKyAgICAtMHgxLjk5NDM3MTFkYzJjZTllMGIzZjFmZmU1YWVjMGFjMjBkcC0xLAorICAgIC0weDEuNTk0MzE3YWNjNGVmOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkyMAorICAgIDB4MS45OTQzNzExZGMyY2ViODQ0NjE2NGQ0NWIwYThjY2RlZXAtMSwKKyAgICAweDEuNTk0MzE3YWNjNGVmYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkyMQorICAgIC0weDEuOTk0MzcxMWRjMmNlYjg0NDYxNjRkNDViMGE4Y2NkZWVwLTEsCisgICAgLTB4MS41OTQzMTdhY2M0ZWZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTIyCisgICAgMHgxLmZiYzUxMWRmNTkxN2Q1N2QyMzFkN2FkNDM0ZGE1Zjk0cC0xLAorICAgIDB4MS44ZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTIzCisgICAgLTB4MS5mYmM1MTFkZjU5MTdkNTdkMjMxZDdhZDQzNGRhNWY5NHAtMSwKKyAgICAtMHgxLjhmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjQKKyAgICAweDEuZmJjNTExZGY1OTE3ZjUzOWJiY2Y3NzhiYzFhMjIyNDlwLTEsCisgICAgMHgxLjlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjUKKyAgICAtMHgxLmZiYzUxMWRmNTkxN2Y1MzliYmNmNzc4YmMxYTIyMjQ5cC0xLAorICAgIC0weDEuOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkyNgorICAgIDB4MS5mYmM1MTFkZjU5MTgxNGY2NTQ4MTc0NDM1MDYxN2M4NXAtMSwKKyAgICAweDEuOTAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDkyNworICAgIC0weDEuZmJjNTExZGY1OTE4MTRmNjU0ODE3NDQzNTA2MTdjODVwLTEsCisgICAgLTB4MS45MDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTI4CisgICAgLTB4MS5wLTEwNzQsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgOTI5CisgICAgMHgxLnAtMTA3NCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDkzMAorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDkzMQorICAgIDB4MS5wLTEwNzQsCisgICAgMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzIKKyAgICAtMHgxLnAtMTA3NCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzMKKyAgICAweDEuOTI3Mjc4YTNiMTE2MGJiZjhlMGJiMzA5ZGE0MjQ3YzVwLTUsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzQKKyAgICAtMHgxLjkyNzI3OGEzYjExNjBiYmY4ZTBiYjMwOWRhNDI0N2M1cC01LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtNQorICB9LAorICB7IC8vIEVudHJ5IDkzNQorICAgIDB4MS45MjcyNzhhM2IxMTYxYmM5NzBiYThiNTBlNTc1Zjk3ZnAtNSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDkzNgorICAgIC0weDEuOTI3Mjc4YTNiMTE2MWJjOTcwYmE4YjUwZTU3NWY5N2ZwLTUsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC01CisgIH0sCisgIHsgLy8gRW50cnkgOTM3CisgICAgMHgxLjkyNzI3OGEzYjExNjJiZDM1MzY5NjM5N2YwYWE3NGVlcC01LAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC01CisgIH0sCisgIHsgLy8gRW50cnkgOTM4CisgICAgLTB4MS45MjcyNzhhM2IxMTYyYmQzNTM2OTYzOTdmMGFhNzRlZXAtNSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzkKKyAgICAweDEuOTM2YmI4YzViMmRhMTE4MzA2ZmE5YjVkNmQ4ZWQyYzFwLTQsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDAKKyAgICAtMHgxLjkzNmJiOGM1YjJkYTExODMwNmZhOWI1ZDZkOGVkMmMxcC00LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtNAorICB9LAorICB7IC8vIEVudHJ5IDk0MQorICAgIDB4MS45MzZiYjhjNWIyZGEyMWFhYzJiZmVjODQyOTNlNWQ0ZHAtNCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDk0MgorICAgIC0weDEuOTM2YmI4YzViMmRhMjFhYWMyYmZlYzg0MjkzZTVkNGRwLTQsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC00CisgIH0sCisgIHsgLy8gRW50cnkgOTQzCisgICAgMHgxLjkzNmJiOGM1YjJkYTMxZDI3ZTg1M2RhYWU0ZjExNjg0cC00LAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC00CisgIH0sCisgIHsgLy8gRW50cnkgOTQ0CisgICAgLTB4MS45MzZiYjhjNWIyZGEzMWQyN2U4NTNkYWFlNGYxMTY4NHAtNCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDUKKyAgICAweDEuOTc1ZjVlMDU1MzE1NmI0MzhjYTdkNzUyZDM3ZDA4NzNwLTMsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDYKKyAgICAtMHgxLjk3NWY1ZTA1NTMxNTZiNDM4Y2E3ZDc1MmQzN2QwODczcC0zLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtMworICB9LAorICB7IC8vIEVudHJ5IDk0NworICAgIDB4MS45NzVmNWUwNTUzMTU3YmU1OWNiZmY2NDhmZGVmMmMwOHAtMywKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMworICB9LAorICB7IC8vIEVudHJ5IDk0OAorICAgIC0weDEuOTc1ZjVlMDU1MzE1N2JlNTljYmZmNjQ4ZmRlZjJjMDhwLTMsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgOTQ5CisgICAgMHgxLjk3NWY1ZTA1NTMxNThjODdhY2Q4MTUzZjI4NmU4YjhhcC0zLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC0zCisgIH0sCisgIHsgLy8gRW50cnkgOTUwCisgICAgLTB4MS45NzVmNWUwNTUzMTU4Yzg3YWNkODE1M2YyODZlOGI4YXAtMywKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTEKKyAgICAweDEuYTgyNzk5OWZjZWYzMGMzOGIyZTUzOTdlYTdjMTBlYWRwLTIsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTIKKyAgICAtMHgxLmE4Mjc5OTlmY2VmMzBjMzhiMmU1Mzk3ZWE3YzEwZWFkcC0yLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtMgorICB9LAorICB7IC8vIEVudHJ5IDk1MworICAgIDB4MS5hODI3OTk5ZmNlZjMxZWY3NzYxODNiMDcwZTZmYzg0ZXAtMiwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDk1NAorICAgIC0weDEuYTgyNzk5OWZjZWYzMWVmNzc2MTgzYjA3MGU2ZmM4NGVwLTIsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTU1CisgICAgMHgxLmE4Mjc5OTlmY2VmMzMxYjYzOTRiM2M4Zjc1NWM5ZmEzcC0yLAorICAgIDB4MS45MjFmYjU0NDQyZDE5cC0yCisgIH0sCisgIHsgLy8gRW50cnkgOTU2CisgICAgLTB4MS5hODI3OTk5ZmNlZjMzMWI2Mzk0YjNjOGY3NTVjOWZhM3AtMiwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZDcyY2VjZTY3NWQxZmUzMDM1YmJwLTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmQ3MmNlY2U2NzVkMWZlMzAzNWJicC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDk1OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmNzJjZWNlNjc1ZDFmY2EzMDQ4OXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDk2MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjcyY2VjZTY3NWQxZmNhMzA0ODlwLTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTYxCisgICAgMHgxLjAwMDAwMDAwMDAwMDBiOTY3NjczM2FlOGZlOGFlOWFjcDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjIKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBiOTY3NjczM2FlOGZlOGFlOWFjcDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTYzCisgICAgMHgxLjkxNTNkOTQ0M2VkMGIzYjQzZGRhYjZhZTU3M2FhMjNkcDUxLAorICAgIDB4MS45MjFmYjU0NDQyZDE3cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjQKKyAgICAtMHgxLjkxNTNkOTQ0M2VkMGIzYjQzZGRhYjZhZTU3M2FhMjNkcDUxLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AwCisgIH0sCisgIHsgLy8gRW50cnkgOTY1CisgICAgMHgxLmQwMjk2N2MzMWNkYjRlMGMzOGQwMWI2NTVkNWUwYWFmcDUzLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjYKKyAgICAtMHgxLmQwMjk2N2MzMWNkYjRlMGMzOGQwMWI2NTVkNWUwYWFmcDUzLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTY3CisgICAgLTB4MS42MTdhMTU0OTQ3NjdhMDQ4ODJjMzIwMzE3ZjNlNGNlY3A1MiwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTY4CisgICAgMHgxLjYxN2ExNTQ5NDc2N2EwNDg4MmMzMjAzMTdmM2U0Y2VjcDUyLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAwCisgIH0sCisgIHsgLy8gRW50cnkgOTY5CisgICAgLTB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDljM2Q2MGM2OHAtNTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwMQorICB9LAorICB7IC8vIEVudHJ5IDk3MAorICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDljM2Q2MGM2OHAtNTEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzEKKyAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0NjFkNWQ3cC01MywKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgOTcyCisgICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0NjFkNWQ3cC01MywKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDk3MworICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3ZWUwYjk2Y3AtNTIsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwMQorICB9LAorICB7IC8vIEVudHJ5IDk3NAorICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZjN2VlMGI5NmNwLTUyLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAxCisgIH0sCisgIHsgLy8gRW50cnkgOTc1CisgICAgLTB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDljYzI0NGFiNXAtNTAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwMgorICB9LAorICB7IC8vIEVudHJ5IDk3NgorICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDljYzI0NGFiNXAtNTAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzcKKyAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0YjdiYmFicC01MiwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAyCisgIH0sCisgIHsgLy8gRW50cnkgOTc4CisgICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0YjdiYmFicC01MiwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMgorICB9LAorICB7IC8vIEVudHJ5IDk3OQorICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM4MWVhYjM4Y3AtNTEsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwMgorICB9LAorICB7IC8vIEVudHJ5IDk4MAorICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZjODFlYWIzOGNwLTUxLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAyCisgIH0sCisgIHsgLy8gRW50cnkgOTgxCisgICAgLTB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDllZDVkNDNlOHAtNDksCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwMworICB9LAorICB7IC8vIEVudHJ5IDk4MgorICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDllZDVkNDNlOHAtNDksCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODMKKyAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA2MGY1MmY5cC01MSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAzCisgIH0sCisgIHsgLy8gRW50cnkgOTg0CisgICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA2MGY1MmY5cC01MSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMworICB9LAorICB7IC8vIEVudHJ5IDk4NQorICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM4ZTEyOWMwYXAtNTAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwMworICB9LAorICB7IC8vIEVudHJ5IDk4NgorICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZjOGUxMjljMGFwLTUwLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAzCisgIH0sCisgIHsgLy8gRW50cnkgOTg3CisgICAgLTB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNGE3MjQxMjhiNHAtNDgsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwNAorICB9LAorICB7IC8vIEVudHJ5IDk4OAorICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNGE3MjQxMjhiNHAtNDgsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODkKKyAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzBiNmRiMDMzcC01MCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTkwCisgICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzBiNmRiMDMzcC01MCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwNAorICB9LAorICB7IC8vIEVudHJ5IDk5MQorICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmNiZWIyM2UwM3AtNDksCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwNAorICB9LAorICB7IC8vIEVudHJ5IDk5MgorICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZjYmViMjNlMDNwLTQ5LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTkzCisgICAgLTB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNGM4NWQwYmJlM3AtNDcsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwNQorICB9LAorICB7IC8vIEVudHJ5IDk5NAorICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNGM4NWQwYmJlM3AtNDcsCisgICAgLTB4MS45MjFmYjU0NDQyZDE3cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTUKKyAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzIwZTcyNTFhcC00OSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHA1CisgIH0sCisgIHsgLy8gRW50cnkgOTk2CisgICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzIwZTcyNTFhcC00OSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwNQorICB9LAorICB7IC8vIEVudHJ5IDk5NworICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmQ4MTMwYzVlN3AtNDgsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTlwNQorICB9LAorICB7IC8vIEVudHJ5IDk5OAorICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZkODEzMGM1ZTdwLTQ4LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA1CisgIH0sCisgIHsgLy8gRW50cnkgOTk5CisgICAgLTB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNTRkNDBmMDhhMHAtNDYsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwNgorICB9LAorICB7IC8vIEVudHJ5IDEwMDAKKyAgICAweDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDU0ZDQwZjA4YTBwLTQ2LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3A2CisgIH0sCisgIHsgLy8gRW50cnkgMTAwMQorICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3NzZjY2Y4YjdwLTQ4LAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAyCisgICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzc2Y2NmOGI3cC00OCwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwNgorICB9LAorICB7IC8vIEVudHJ5IDEwMDMKKyAgICAweDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjcwOGIyYWU1NzZwLTQ3LAorICAgIDB4MS45MjFmYjU0NDQyZDE5cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA0CisgICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNzA4YjJhZTU3NnAtNDcsCisgICAgLTB4MS45MjFmYjU0NDQyZDE5cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA1CisgICAgLTB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNzYwZDA4M2I5N3AtNDUsCisgICAgMHgxLjkyMWZiNTQ0NDJkMTdwNworICB9LAorICB7IC8vIEVudHJ5IDEwMDYKKyAgICAweDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDc2MGQwODNiOTdwLTQ1LAorICAgIC0weDEuOTIxZmI1NDQ0MmQxN3A3CisgIH0sCisgIHsgLy8gRW50cnkgMTAwNworICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI4Y2U2NDQ3MmJwLTQ3LAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA4CisgICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyOGNlNjQ0NzJicC00NywKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwNworICB9LAorICB7IC8vIEVudHJ5IDEwMDkKKyAgICAweDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjdjYjMxMzYzYjFwLTQ2LAorICAgIDB4MS45MjFmYjU0NDQyZDE5cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEwCisgICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmN2NiMzEzNjNiMXAtNDYsCisgICAgLTB4MS45MjFmYjU0NDQyZDE5cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDExCisgICAgLTB4MS4wMDAwMDAwMDAwMDA0ZDNjOWNhNjRmNDUxMGNmNmYzMXAwLAorICAgIDB4MS4yZDk3YzdmMzMyMWQxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEyCisgICAgMHgxLjAwMDAwMDAwMDAwMDRkM2M5Y2E2NGY0NTEwY2Y2ZjMxcDAsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEzCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwZDNjOWNhNjRmNDUwNTgwNDgwOHAwLAorICAgIDB4MS4yZDk3YzdmMzMyMWQycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE0CisgICAgMHgxLjAwMDAwMDAwMDAwMDBkM2M5Y2E2NGY0NTA1ODA0ODA4cDAsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE1CisgICAgLTB4MS5mZmZmZmZmZmZmZmY5YTc5Mzk0YzllOGExNDYyNDFiZHAtMSwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkM3AxCisgIH0sCisgIHsgLy8gRW50cnkgMTAxNgorICAgIDB4MS5mZmZmZmZmZmZmZmY5YTc5Mzk0YzllOGExNDYyNDFiZHAtMSwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDNwMQorICB9LAorICB7IC8vIEVudHJ5IDEwMTcKKyAgICAweDEuZmZmZmZmZmZmZmZmNTNlMGEwODA0ZDFhMGJiYzRhYjNwLTEsCisgICAgMHgxLmY2YTdhMjk1NTM4NWRwMQorICB9LAorICB7IC8vIEVudHJ5IDEwMTgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjUzZTBhMDgwNGQxYTBiYmM0YWIzcC0xLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTAxOQorICAgIDB4MS5mZmZmZmZmZmZmZmZkM2UwYTA4MDRkMTlmMGI0NzJkM3AtMSwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTAyMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZDNlMGEwODA0ZDE5ZjBiNDcyZDNwLTEsCisgICAgLTB4MS5mNmE3YTI5NTUzODVlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIxCisgICAgMHgxLjAwMDAwMDAwMDAwMDI5ZjA1MDQwMjY4Y2ZhZDY0ZDc5cDAsCisgICAgMHgxLmY2YTdhMjk1NTM4NWZwMQorICB9LAorICB7IC8vIEVudHJ5IDEwMjIKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDI5ZjA1MDQwMjY4Y2ZhZDY0ZDc5cDAsCisgICAgLTB4MS5mNmE3YTI5NTUzODVmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIzCisgICAgMHgxLmE4NDEwMDg3MjYyZTNmNDE4NTlmYTczNTY3ZjkyNDRkcDQ5LAorICAgIDB4MS4yZDk3YzdmMzMyMWQxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI0CisgICAgLTB4MS5hODQxMDA4NzI2MmUzZjQxODU5ZmE3MzU2N2Y5MjQ0ZHA0OSwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDFwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMjUKKyAgICAweDEuMzU3MGVmZDc2ODkyMzQwODI1ZTAxMjQzOTM1NTQ2OTdwNTIsCisgICAgMHgxLjJkOTdjN2YzMzIxZDJwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMjYKKyAgICAtMHgxLjM1NzBlZmQ3Njg5MjM0MDgyNWUwMTI0MzkzNTU0Njk3cDUyLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTAyNworICAgIC0weDEuNDJjMGQ2NGQ1ZGU1MTc4YWZlMDY0NTJhMWExYjg2NjdwNTAsCisgICAgMHgxLjJkOTdjN2YzMzIxZDNwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMjgKKyAgICAweDEuNDJjMGQ2NGQ1ZGU1MTc4YWZlMDY0NTJhMWExYjg2NjdwNTAsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQzcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI5CisgICAgLTB4MS4wMDAwMDAwMDAwMDA5ZWUyYzJkOTYzYTEzZDU3ZWMyMHAwLAorICAgIDB4MS41ZmRiYmU5YmJhNzc0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMwCisgICAgMHgxLjAwMDAwMDAwMDAwMDllZTJjMmQ5NjNhMTNkNTdlYzIwcDAsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMxCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxZWUyYzJkOTYzYTEwZGU2OGFiNHAwLAorICAgIDB4MS41ZmRiYmU5YmJhNzc1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMyCisgICAgMHgxLjAwMDAwMDAwMDAwMDFlZTJjMmQ5NjNhMTBkZTY4YWI0cDAsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMzCisgICAgLTB4MS5mZmZmZmZmZmZmZmYzZGM1ODViMmM3NDIzY2VhNTI4ZXAtMSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTAzNAorICAgIDB4MS5mZmZmZmZmZmZmZmYzZGM1ODViMmM3NDIzY2VhNTI4ZXAtMSwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzZwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMzUKKyAgICAweDEuZmZmZmZmZmZmZmZlYjA5NDU0MWEyNDYyNGVlYWIwZTFwLTEsCisgICAgMHgxLmM0NjNhYmVjY2IyYmFwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMzYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZWIwOTQ1NDFhMjQ2MjRlZWFiMGUxcC0xLAorICAgIC0weDEuYzQ2M2FiZWNjYjJiYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTAzNworICAgIDB4MS5mZmZmZmZmZmZmZmZiMDk0NTQxYTI0NjFlNzM0ZGFlZXAtMSwKKyAgICAweDEuYzQ2M2FiZWNjYjJiYnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTAzOAorICAgIC0weDEuZmZmZmZmZmZmZmZmYjA5NDU0MWEyNDYxZTczNGRhZWVwLTEsCisgICAgLTB4MS5jNDYzYWJlY2NiMmJicDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM5CisgICAgMHgxLjAwMDAwMDAwMDAwMDU4NGEyYTBkMTIzMGZmYmY4MjdkcDAsCisgICAgMHgxLmM0NjNhYmVjY2IyYmNwMgorICB9LAorICB7IC8vIEVudHJ5IDEwNDAKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDU4NGEyYTBkMTIzMGZmYmY4MjdkcDAsCisgICAgLTB4MS5jNDYzYWJlY2NiMmJjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQxCisgICAgMHgxLjdjYzA4MGY4OTU4NTY3ZjA1YzQwYWM1ZjZkMzEwZGU4cDQ5LAorICAgIDB4MS5mNmE3YTI5NTUzODVkcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQyCisgICAgLTB4MS43Y2MwODBmODk1ODU2N2YwNWM0MGFjNWY2ZDMxMGRlOHA0OSwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWRwMgorICB9LAorICB7IC8vIEVudHJ5IDEwNDMKKyAgICAweDEuNzM1NDUzMDI3ZDdjM2U3MDJkNzM0OTFkZTM2OTUzNmZwNTEsCisgICAgMHgxLmY2YTdhMjk1NTM4NWVwMgorICB9LAorICB7IC8vIEVudHJ5IDEwNDQKKyAgICAtMHgxLjczNTQ1MzAyN2Q3YzNlNzAyZDczNDkxZGUzNjk1MzZmcDUxLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTA0NQorICAgIC0weDEuODZhYTRhM2ExMjdhM2FkZDlhOGU3Njk5MzczM2I0YTdwNTAsCisgICAgMHgxLmY2YTdhMjk1NTM4NWZwMgorICB9LAorICB7IC8vIEVudHJ5IDEwNDYKKyAgICAweDEuODZhYTRhM2ExMjdhM2FkZDlhOGU3Njk5MzczM2I0YTdwNTAsCisgICAgLTB4MS5mNmE3YTI5NTUzODVmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ3CisgICAgLTB4MS4wMDAwMDAwMDAwMDFiMDg4ZTkwYzc3ZmU4MDUxYTdkYXAwLAorICAgIDB4MS4xNDc1Y2M5ZWVkZWZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ4CisgICAgMHgxLjAwMDAwMDAwMDAwMWIwODhlOTBjNzdmZTgwNTFhN2RhcDAsCisgICAgLTB4MS4xNDc1Y2M5ZWVkZWZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ5CisgICAgLTB4MS4wMDAwMDAwMDAwMDBiMDg4ZTkwYzc3ZmQ0ZmM4YmVjZXAwLAorICAgIDB4MS4xNDc1Y2M5ZWVkZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA1MAorICAgIDB4MS4wMDAwMDAwMDAwMDBiMDg4ZTkwYzc3ZmQ0ZmM4YmVjZXAwLAorICAgIC0weDEuMTQ3NWNjOWVlZGZwMworICB9LAorICB7IC8vIEVudHJ5IDEwNTEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjYxMTFkMjE4ZWZmYTNlN2ZhYjgzcC0xLAorICAgIDB4MS4xNDc1Y2M5ZWVkZjAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUyCisgICAgMHgxLmZmZmZmZmZmZmZmZjYxMTFkMjE4ZWZmYTNlN2ZhYjgzcC0xLAorICAgIC0weDEuMTQ3NWNjOWVlZGYwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA1MworICAgIC0weDEuMzRmMjcyOTkzZDE0MTRhMmIzOWJkODM3NzY0YzE2MDhwLTQ5LAorICAgIDB4MS4yZDk3YzdmMzMyMWQxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU0CisgICAgMHgxLjM0ZjI3Mjk5M2QxNDE0YTJiMzliZDgzNzc2NGMxNjA4cC00OSwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDFwMworICB9LAorICB7IC8vIEVudHJ5IDEwNTUKKyAgICAtMHgxLmE3OTM5NGM5ZThhMGE1MTU5Y2RlYzFiYTg3ZWE1ODExcC01MiwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA1NgorICAgIDB4MS5hNzkzOTRjOWU4YTBhNTE1OWNkZWMxYmE4N2VhNTgxMXAtNTIsCisgICAgLTB4MS4yZDk3YzdmMzMyMWQycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU3CisgICAgMHgxLjk2MWIxYWNkODVkN2Q2YmE5OGM4NGY5MTczYjA4ZDZmcC01MCwKKyAgICAweDEuMmQ5N2M3ZjMzMjFkM3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTA1OAorICAgIC0weDEuOTYxYjFhY2Q4NWQ3ZDZiYTk4Yzg0ZjkxNzNiMDhkNmZwLTUwLAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkM3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTA1OQorICAgIDB4MS5mZmZmZmZmZmZmZmM4ZDQ4MDdiM2ZiYWNjYzM4MzE0YnAtMSwKKyAgICAweDEuNDZiOWMzNDc3NjRhMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA2MAorICAgIC0weDEuZmZmZmZmZmZmZmZjOGQ0ODA3YjNmYmFjY2MzODMxNGJwLTEsCisgICAgLTB4MS40NmI5YzM0Nzc2NGEycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYxCisgICAgMHgxLmZmZmZmZmZmZmZmZThkNDgwN2IzZmJhYTU5ODAzOGZmcC0xLAorICAgIDB4MS40NmI5YzM0Nzc2NGEzcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYyCisgICAgLTB4MS5mZmZmZmZmZmZmZmU4ZDQ4MDdiM2ZiYWE1OTgwMzhmZnAtMSwKKyAgICAtMHgxLjQ2YjljMzQ3NzY0YTNwMworICB9LAorICB7IC8vIEVudHJ5IDEwNjMKKyAgICAweDEuMDAwMDAwMDAwMDAwNDZhNDAzZDlmZGQ0ZjM2NDIwNTlwMCwKKyAgICAweDEuNDZiOWMzNDc3NjRhNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA2NAorICAgIC0weDEuMDAwMDAwMDAwMDAwNDZhNDAzZDlmZGQ0ZjM2NDIwNTlwMCwKKyAgICAtMHgxLjQ2YjljMzQ3NzY0YTRwMworICB9LAorICB7IC8vIEVudHJ5IDEwNjUKKyAgICAweDEuOWM3OGVlYTc4YmFhNmUxM2VjY2M5NGM0MjFjNGY1YWNwNDgsCisgICAgMHgxLjVmZGJiZTliYmE3NzRwMworICB9LAorICB7IC8vIEVudHJ5IDEwNjYKKyAgICAtMHgxLjljNzhlZWE3OGJhYTZlMTNlY2NjOTRjNDIxYzRmNWFjcDQ4LAorICAgIC0weDEuNWZkYmJlOWJiYTc3NHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA2NworICAgIDB4MS4wOTNjM2I0YWViZWIwODA2ZmJlNGExZjBjNjYwYmEzYnA1MSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA2OAorICAgIC0weDEuMDkzYzNiNGFlYmViMDgwNmZiZTRhMWYwYzY2MGJhM2JwNTEsCisgICAgLTB4MS41ZmRiYmU5YmJhNzc1cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY5CisgICAgLTB4MS41MTZhYzk2MTQyMTg1NWZiNzU5ZmMyZmFjYjRlOWY1YnA0OSwKKyAgICAweDEuNWZkYmJlOWJiYTc3NnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA3MAorICAgIDB4MS41MTZhYzk2MTQyMTg1NWZiNzU5ZmMyZmFjYjRlOWY1YnA0OSwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzZwMworICB9LAorICB7IC8vIEVudHJ5IDEwNzEKKyAgICAtMHgxLjAwMDAwMDAwMDAwMWMyMmYwZjNmOGM1YWE1YTAxZGEzcDAsCisgICAgMHgxLjc4ZmRiOWVmZmVhNDVwMworICB9LAorICB7IC8vIEVudHJ5IDEwNzIKKyAgICAweDEuMDAwMDAwMDAwMDAxYzIyZjBmM2Y4YzVhYTVhMDFkYTNwMCwKKyAgICAtMHgxLjc4ZmRiOWVmZmVhNDVwMworICB9LAorICB7IC8vIEVudHJ5IDEwNzMKKyAgICAtMHgxLjAwMDAwMDAwMDAwMGMyMmYwZjNmOGM1OTYzNzEwZTY0cDAsCisgICAgMHgxLjc4ZmRiOWVmZmVhNDZwMworICB9LAorICB7IC8vIEVudHJ5IDEwNzQKKyAgICAweDEuMDAwMDAwMDAwMDAwYzIyZjBmM2Y4YzU5NjM3MTBlNjRwMCwKKyAgICAtMHgxLjc4ZmRiOWVmZmVhNDZwMworICB9LAorICB7IC8vIEVudHJ5IDEwNzUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjg0NWUxZTdmMThiMjQyODNmZTQ5cC0xLAorICAgIDB4MS43OGZkYjllZmZlYTQ3cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc2CisgICAgMHgxLmZmZmZmZmZmZmZmZjg0NWUxZTdmMThiMjQyODNmZTQ5cC0xLAorICAgIC0weDEuNzhmZGI5ZWZmZWE0N3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTA3NworICAgIDB4MS5mZmZmZmZmZmZmZmM2OWZiYmI0ZGQyZjRmYzg4ZmZhMXAtMSwKKyAgICAweDEuYWI0MWIwOTg4NmZlOHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA3OAorICAgIC0weDEuZmZmZmZmZmZmZmZjNjlmYmJiNGRkMmY0ZmM4OGZmYTFwLTEsCisgICAgLTB4MS5hYjQxYjA5ODg2ZmU4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc5CisgICAgMHgxLmZmZmZmZmZmZmZmZTY5ZmJiYjRkZDJmMjY2ODRiYWVlcC0xLAorICAgIDB4MS5hYjQxYjA5ODg2ZmU5cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgwCisgICAgLTB4MS5mZmZmZmZmZmZmZmU2OWZiYmI0ZGQyZjI2Njg0YmFlZXAtMSwKKyAgICAtMHgxLmFiNDFiMDk4ODZmZTlwMworICB9LAorICB7IC8vIEVudHJ5IDEwODEKKyAgICAweDEuMDAwMDAwMDAwMDAwMzRmZGRkYTZlOTc4ZTg0MDNiMWVwMCwKKyAgICAweDEuYWI0MWIwOTg4NmZlYXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA4MgorICAgIC0weDEuMDAwMDAwMDAwMDAwMzRmZGRkYTZlOTc4ZTg0MDNiMWVwMCwKKyAgICAtMHgxLmFiNDFiMDk4ODZmZWFwMworICB9LAorICB7IC8vIEVudHJ5IDEwODMKKyAgICAweDEuODZjNGUzMzNiM2M5ZjYyNzM4OTZhYmEyMDE3Njc5MTJwNDgsCisgICAgMHgxLmM0NjNhYmVjY2IyYmFwMworICB9LAorICB7IC8vIEVudHJ5IDEwODQKKyAgICAtMHgxLjg2YzRlMzMzYjNjOWY2MjczODk2YWJhMjAxNzY3OTEycDQ4LAorICAgIC0weDEuYzQ2M2FiZWNjYjJiYXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA4NQorICAgIDB4MS45Yzk2OTUxZjM2MTg0NTYwMzI4MDE4NWExNmQ2MDI2Y3A1MCwKKyAgICAweDEuYzQ2M2FiZWNjYjJiYnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA4NgorICAgIC0weDEuOWM5Njk1MWYzNjE4NDU2MDMyODAxODVhMTZkNjAyNmNwNTAsCisgICAgLTB4MS5jNDYzYWJlY2NiMmJicDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg3CisgICAgLTB4MS43MzI0NGQzNjllMGI2ZWIyZjVkNzNjY2E3MzQ0ZTg3YXA0OSwKKyAgICAweDEuYzQ2M2FiZWNjYjJiY3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTA4OAorICAgIDB4MS43MzI0NGQzNjllMGI2ZWIyZjVkNzNjY2E3MzQ0ZTg3YXA0OSwKKyAgICAtMHgxLmM0NjNhYmVjY2IyYmNwMworICB9LAorICB7IC8vIEVudHJ5IDEwODkKKyAgICAtMHgxLjAwMDAwMDAwMDAwMWQzZDUzNTcyYTBiNmNjMjYxMDU1cDAsCisgICAgMHgxLmRkODVhNzQxMGY1OGJwMworICB9LAorICB7IC8vIEVudHJ5IDEwOTAKKyAgICAweDEuMDAwMDAwMDAwMDAxZDNkNTM1NzJhMGI2Y2MyNjEwNTVwMCwKKyAgICAtMHgxLmRkODVhNzQxMGY1OGJwMworICB9LAorICB7IC8vIEVudHJ5IDEwOTEKKyAgICAtMHgxLjAwMDAwMDAwMDAwMGQzZDUzNTcyYTBiNTc4NTBkYWUycDAsCisgICAgMHgxLmRkODVhNzQxMGY1OGNwMworICB9LAorICB7IC8vIEVudHJ5IDEwOTIKKyAgICAweDEuMDAwMDAwMDAwMDAwZDNkNTM1NzJhMGI1Nzg1MGRhZTJwMCwKKyAgICAtMHgxLmRkODVhNzQxMGY1OGNwMworICB9LAorICB7IC8vIEVudHJ5IDEwOTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmE3YWE2YWU1NDE2YTQ4Zjc0YWRmcC0xLAorICAgIDB4MS5kZDg1YTc0MTBmNThkcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDk0CisgICAgMHgxLmZmZmZmZmZmZmZmZmE3YWE2YWU1NDE2YTQ4Zjc0YWRmcC0xLAorICAgIC0weDEuZGQ4NWE3NDEwZjU4ZHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA5NQorICAgIC0weDEuNTgzZWJlZmY2NWNjMjI2NDgwYWU2ODVjNjUzNTIzMjVwLTQ5LAorICAgIDB4MS5mNmE3YTI5NTUzODVkcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDk2CisgICAgMHgxLjU4M2ViZWZmNjVjYzIyNjQ4MGFlNjg1YzY1MzUyMzI1cC00OSwKKyAgICAtMHgxLmY2YTdhMjk1NTM4NWRwMworICB9LAorICB7IC8vIEVudHJ5IDEwOTcKKyAgICAtMHgxLjYwZmFmYmZkOTczMDg5OTIwMmI5YTE3MGM4ZDU0NTkxcC01MSwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZXAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA5OAorICAgIDB4MS42MGZhZmJmZDk3MzA4OTkyMDJiOWExNzBjOGQ1NDU5MXAtNTEsCisgICAgLTB4MS5mNmE3YTI5NTUzODVlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDk5CisgICAgMHgxLjRmODI4MjAxMzQ2N2JiMzZmZWEzMmY0N2E5NTY0MWJhcC01MCwKKyAgICAweDEuZjZhN2EyOTU1Mzg1ZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTEwMAorICAgIC0weDEuNGY4MjgyMDEzNDY3YmIzNmZlYTMyZjQ3YTk1NjQxYmFwLTUwLAorICAgIC0weDEuZjZhN2EyOTU1Mzg1ZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTEwMQorICAgIDB4MS5mZmZmZmZmZmZmZjg0NmFmNmVlN2FhNDhhMWU5ZTlmN3AtMSwKKyAgICAweDEuMDdlNGNlZjRjYmQ5NnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEwMgorICAgIC0weDEuZmZmZmZmZmZmZmY4NDZhZjZlZTdhYTQ4YTFlOWU5ZjdwLTEsCisgICAgLTB4MS4wN2U0Y2VmNGNiZDk2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAzCisgICAgMHgxLmZmZmZmZmZmZmZmYzQ2YWY2ZWU3YWEzZDJmNDhjN2M3cC0xLAorICAgIDB4MS4wN2U0Y2VmNGNiZDk3cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTA0CisgICAgLTB4MS5mZmZmZmZmZmZmZmM0NmFmNmVlN2FhM2QyZjQ4YzdjN3AtMSwKKyAgICAtMHgxLjA3ZTRjZWY0Y2JkOTdwNAorICB9LAorICB7IC8vIEVudHJ5IDExMDUKKyAgICAweDEuMDAwMDAwMDAwMDAwMjM1N2I3NzNkNTFjZGU1M2QyY2JwMCwKKyAgICAweDEuMDdlNGNlZjRjYmQ5OHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEwNgorICAgIC0weDEuMDAwMDAwMDAwMDAwMjM1N2I3NzNkNTFjZGU1M2QyY2JwMCwKKyAgICAtMHgxLjA3ZTRjZWY0Y2JkOThwNAorICB9LAorICB7IC8vIEVudHJ5IDExMDcKKyAgICAweDEuMmYwODQyMzg5ZTViYzAxNGQwZmJlODQzY2NhNmRkZjNwNDcsCisgICAgMHgxLjE0NzVjYzllZWRlZmZwNAorICB9LAorICB7IC8vIEVudHJ5IDExMDgKKyAgICAtMHgxLjJmMDg0MjM4OWU1YmMwMTRkMGZiZTg0M2NjYTZkZGYzcDQ3LAorICAgIC0weDEuMTQ3NWNjOWVlZGVmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEwOQorICAgIDB4MS43MzNjNGU4ZWY5YzUwY2I1OTI5ZjZiYjY3NGJlYzY3ZnA0OCwKKyAgICAweDEuMTQ3NWNjOWVlZGZwNAorICB9LAorICB7IC8vIEVudHJ5IDExMTAKKyAgICAtMHgxLjczM2M0ZThlZjljNTBjYjU5MjlmNmJiNjc0YmVjNjdmcDQ4LAorICAgIC0weDEuMTQ3NWNjOWVlZGZwNAorICB9LAorICB7IC8vIEVudHJ5IDExMTEKKyAgICAtMHgxLjljNWI0YzcyODk4OTg5MWRmYjg3MTBhZGYzODc4NDNjcDQ5LAorICAgIDB4MS4xNDc1Y2M5ZWVkZjAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTEyCisgICAgMHgxLjljNWI0YzcyODk4OTg5MWRmYjg3MTBhZGYzODc4NDNjcDQ5LAorICAgIC0weDEuMTQ3NWNjOWVlZGYwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTExMworICAgIC0weDEuMDAwMDAwMDAwMDAyZTU3YjViYTViNTE1NTk1ZWRiOTRwMCwKKyAgICAweDEuMjEwNmNhNDkxMDA2OHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTExNAorICAgIDB4MS4wMDAwMDAwMDAwMDJlNTdiNWJhNWI1MTU1OTVlZGI5NHAwLAorICAgIC0weDEuMjEwNmNhNDkxMDA2OHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTExNQorICAgIC0weDEuMDAwMDAwMDAwMDAwZTU3YjViYTViNTExOGU2ODI0NDlwMCwKKyAgICAweDEuMjEwNmNhNDkxMDA2OXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTExNgorICAgIDB4MS4wMDAwMDAwMDAwMDBlNTdiNWJhNWI1MTE4ZTY4MjQ0OXAwLAorICAgIC0weDEuMjEwNmNhNDkxMDA2OXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTExNworICAgIC0weDEuZmZmZmZmZmZmZmZkY2FmNmI3NGI2YTIzODZlMmQ5ZmJwLTEsCisgICAgMHgxLjIxMDZjYTQ5MTAwNmFwNAorICB9LAorICB7IC8vIEVudHJ5IDExMTgKKyAgICAweDEuZmZmZmZmZmZmZmZkY2FmNmI3NGI2YTIzODZlMmQ5ZmJwLTEsCisgICAgLTB4MS4yMTA2Y2E0OTEwMDZhcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTE5CisgICAgLTB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4MzdlNmM5NmFmMHAtNDgsCisgICAgMHgxLjJkOTdjN2YzMzIxZDFwNAorICB9LAorICB7IC8vIEVudHJ5IDExMjAKKyAgICAweDEuMzRmMjcyOTkzZDE0MTRhMmIzOWJkODM3ZTZjOTZhZjBwLTQ4LAorICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEyMQorICAgIC0weDEuYTc5Mzk0YzllOGEwYTUxNTljZGVjMWJhOGM3MWY2YmFwLTUxLAorICAgIDB4MS4yZDk3YzdmMzMyMWQycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTIyCisgICAgMHgxLmE3OTM5NGM5ZThhMGE1MTU5Y2RlYzFiYThjNzFmNmJhcC01MSwKKyAgICAtMHgxLjJkOTdjN2YzMzIxZDJwNAorICB9LAorICB7IC8vIEVudHJ5IDExMjMKKyAgICAweDEuOTYxYjFhY2Q4NWQ3ZDZiYTk4Yzg0ZjkxYjM5MDEwMWZwLTQ5LAorICAgIDB4MS4yZDk3YzdmMzMyMWQzcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI0CisgICAgLTB4MS45NjFiMWFjZDg1ZDdkNmJhOThjODRmOTFiMzkwMTAxZnAtNDksCisgICAgLTB4MS4yZDk3YzdmMzMyMWQzcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI1CisgICAgMHgxLmZmZmZmZmZmZmZmODIzNjMyMjgxODE5MTFkYjE0NGJhcC0xLAorICAgIDB4MS4zYTI4YzU5ZDU0MzM5cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTI2CisgICAgLTB4MS5mZmZmZmZmZmZmZjgyMzYzMjI4MTgxOTExZGIxNDRiYXAtMSwKKyAgICAtMHgxLjNhMjhjNTlkNTQzMzlwNAorICB9LAorICB7IC8vIEVudHJ5IDExMjcKKyAgICAweDEuZmZmZmZmZmZmZmZjMjM2MzIyODE4MTg1NjQ3Nzg5YmRwLTEsCisgICAgMHgxLjNhMjhjNTlkNTQzM2FwNAorICB9LAorICB7IC8vIEVudHJ5IDExMjgKKyAgICAtMHgxLmZmZmZmZmZmZmZmYzIzNjMyMjgxODE4NTY0Nzc4OWJkcC0xLAorICAgIC0weDEuM2EyOGM1OWQ1NDMzYXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEyOQorICAgIDB4MS4wMDAwMDAwMDAwMDAxMWIxOTE0MGMwYzBkNTllZTc2MHAwLAorICAgIDB4MS4zYTI4YzU5ZDU0MzNicDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMwCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMWIxOTE0MGMwYzBkNTllZTc2MHAwLAorICAgIC0weDEuM2EyOGM1OWQ1NDMzYnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEzMQorICAgIDB4MS4yOGY5MzQzMTVlNWViOWI0NWE2MDNhNWY3ODhkZTEzMXA0NywKKyAgICAweDEuNDZiOWMzNDc3NjRhMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEzMgorICAgIC0weDEuMjhmOTM0MzE1ZTVlYjliNDVhNjAzYTVmNzg4ZGUxMzFwNDcsCisgICAgLTB4MS40NmI5YzM0Nzc2NGEycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMzCisgICAgMHgxLjYxOGZkYjdmMjFjMTNjMjM2YTRjNDU1MWZmMTM5ZjVkcDQ4LAorICAgIDB4MS40NmI5YzM0Nzc2NGEzcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTM0CisgICAgLTB4MS42MThmZGI3ZjIxYzEzYzIzNmE0YzQ1NTFmZjEzOWY1ZHA0OCwKKyAgICAtMHgxLjQ2YjljMzQ3NzY0YTNwNAorICB9LAorICB7IC8vIEVudHJ5IDExMzUKKyAgICAtMHgxLmNmZGU2MTIxOGFiOWU3OWZmZThmMDQ2YWZkZjAwZGUzcDQ5LAorICAgIDB4MS40NmI5YzM0Nzc2NGE0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTM2CisgICAgMHgxLmNmZGU2MTIxOGFiOWU3OWZmZThmMDQ2YWZkZjAwZGUzcDQ5LAorICAgIC0weDEuNDZiOWMzNDc3NjRhNHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEzNworICAgIC0weDEuMDAwMDAwMDAwMDAyZjcyMTgxZDhjOTcxOTNmOWVlNDlwMCwKKyAgICAweDEuNTM0YWMwZjE5ODYwYnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEzOAorICAgIDB4MS4wMDAwMDAwMDAwMDJmNzIxODFkOGM5NzE5M2Y5ZWU0OXAwLAorICAgIC0weDEuNTM0YWMwZjE5ODYwYnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTEzOQorICAgIC0weDEuMDAwMDAwMDAwMDAwZjcyMTgxZDhjOTZkYTViNmVhOThwMCwKKyAgICAweDEuNTM0YWMwZjE5ODYwY3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTE0MAorICAgIDB4MS4wMDAwMDAwMDAwMDBmNzIxODFkOGM5NmRhNWI2ZWE5OHAwLAorICAgIC0weDEuNTM0YWMwZjE5ODYwY3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTE0MQorICAgIC0weDEuZmZmZmZmZmZmZmZkZWU0MzAzYjE5MmRiNmVlN2NkY2RwLTEsCisgICAgMHgxLjUzNGFjMGYxOTg2MGRwNAorICB9LAorICB7IC8vIEVudHJ5IDExNDIKKyAgICAweDEuZmZmZmZmZmZmZmZkZWU0MzAzYjE5MmRiNmVlN2NkY2RwLTEsCisgICAgLTB4MS41MzRhYzBmMTk4NjBkcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQzCisgICAgLTB4MS4zZGM1ODViMmM3NDIxODEzMjZlMDdjNDEyYzI0YTA1MnAtNDgsCisgICAgMHgxLjVmZGJiZTliYmE3NzRwNAorICB9LAorICB7IC8vIEVudHJ5IDExNDQKKyAgICAweDEuM2RjNTg1YjJjNzQyMTgxMzI2ZTA3YzQxMmMyNGEwNTJwLTQ4LAorICAgIC0weDEuNWZkYmJlOWJiYTc3NHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTE0NQorICAgIC0weDEuZWUyYzJkOTYzYTEwYzA5OTM3MDNlMjA0NTExMDU5NWVwLTUxLAorICAgIDB4MS41ZmRiYmU5YmJhNzc1cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ2CisgICAgMHgxLmVlMmMyZDk2M2ExMGMwOTkzNzAzZTIwNDUxMTA1OTVlcC01MSwKKyAgICAtMHgxLjVmZGJiZTliYmE3NzVwNAorICB9LAorICB7IC8vIEVudHJ5IDExNDcKKyAgICAweDEuODQ3NGY0OWE3MTdiY2ZkOWIyM2YwNzdmMzhhYWZkMmFwLTQ5LAorICAgIDB4MS41ZmRiYmU5YmJhNzc2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ4CisgICAgLTB4MS44NDc0ZjQ5YTcxN2JjZmQ5YjIzZjA3N2YzOGFhZmQyYXAtNDksCisgICAgLTB4MS41ZmRiYmU5YmJhNzc2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQ5CisgICAgMHgxLmZmZmZmZmZmZmZmODAwMTZkNjFiNThkOTliZTc5OTRlcC0xLAorICAgIDB4MS42YzZjYmM0NWRjOGRjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTUwCisgICAgLTB4MS5mZmZmZmZmZmZmZjgwMDE2ZDYxYjU4ZDk5YmU3OTk0ZXAtMSwKKyAgICAtMHgxLjZjNmNiYzQ1ZGM4ZGNwNAorICB9LAorICB7IC8vIEVudHJ5IDExNTEKKyAgICAweDEuZmZmZmZmZmZmZmZjMDAxNmQ2MWI1OGNkOWMxNTQ1ODVwLTEsCisgICAgMHgxLjZjNmNiYzQ1ZGM4ZGRwNAorICB9LAorICB7IC8vIEVudHJ5IDExNTIKKyAgICAtMHgxLmZmZmZmZmZmZmZmYzAwMTZkNjFiNThjZDljMTU0NTg1cC0xLAorICAgIC0weDEuNmM2Y2JjNDVkYzhkZHA0CisgIH0sCisgIHsgLy8gRW50cnkgMTE1MworICAgIDB4MS4wMDAwMDAwMDAwMDAwMDBiNmIwZGFjNjRjZTIxNzhkZHAwLAorICAgIDB4MS42YzZjYmM0NWRjOGRlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTU0CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDBiNmIwZGFjNjRjZTIxNzhkZHAwLAorICAgIC0weDEuNmM2Y2JjNDVkYzhkZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTE1NQorICAgIDB4MS4yMzI2ZjRlOGYyYmIxODBlNWJmMDQxN2Q3NWVhNWQ5ZXA0NywKKyAgICAweDEuNzhmZGI5ZWZmZWE0NXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTE1NgorICAgIC0weDEuMjMyNmY0ZThmMmJiMTgwZTViZjA0MTdkNzVlYTVkOWVwNDcsCisgICAgLTB4MS43OGZkYjllZmZlYTQ1cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTU3CisgICAgMHgxLjUxN2VhMDg3MDhiYTY5ZGEzMzNhOGM4NWYzYmM2NjA5cDQ4LAorICAgIDB4MS43OGZkYjllZmZlYTQ2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTU4CisgICAgLTB4MS41MTdlYTA4NzA4YmE2OWRhMzMzYThjODVmM2JjNjYwOXA0OCwKKyAgICAtMHgxLjc4ZmRiOWVmZmVhNDZwNAorICB9LAorICB7IC8vIEVudHJ5IDExNTkKKyAgICAtMHgxLjA5MGIzZDUxNjE3ODVhYzJkMzE2NjNmN2U1ZDZiZWQ0cDUwLAorICAgIDB4MS43OGZkYjllZmZlYTQ3cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYwCisgICAgMHgxLjA5MGIzZDUxNjE3ODVhYzJkMzE2NjNmN2U1ZDZiZWQ0cDUwLAorICAgIC0weDEuNzhmZGI5ZWZmZWE0N3A0CisgIH0sCisgIHsgLy8gRW50cnkgMTE2MQorICAgIC0weDEuMDAwMDAwMDAwMDAzMDhjN2E4MGJkZGNkY2ZjYzdkZTdwMCwKKyAgICAweDEuODU4ZWI3OWEyMGJhZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTE2MgorICAgIDB4MS4wMDAwMDAwMDAwMDMwOGM3YTgwYmRkY2RjZmNjN2RlN3AwLAorICAgIC0weDEuODU4ZWI3OWEyMGJhZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMTE2MworICAgIC0weDEuMDAwMDAwMDAwMDAxMDhjN2E4MGJkZGM5YmUzZDJkY2ZwMCwKKyAgICAweDEuODU4ZWI3OWEyMGJhZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTE2NAorICAgIDB4MS4wMDAwMDAwMDAwMDEwOGM3YTgwYmRkYzliZTNkMmRjZnAwLAorICAgIC0weDEuODU4ZWI3OWEyMGJhZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMTE2NQorICAgIC0weDEuZmZmZmZmZmZmZmZlMTE4ZjUwMTdiYjkzNTk1YmJiNmZwLTEsCisgICAgMHgxLjg1OGViNzlhMjBiYjBwNAorICB9LAorICB7IC8vIEVudHJ5IDExNjYKKyAgICAweDEuZmZmZmZmZmZmZmZlMTE4ZjUwMTdiYjkzNTk1YmJiNmZwLTEsCisgICAgLTB4MS44NThlYjc5YTIwYmIwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTY3CisgICAgLTB4MS5hZjA3OTIwMDFmODU2MzM1YTM4MDEwYTZhNjgzMmU2YnAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTE2OAorICAgIDB4MS5hZjA3OTIwMDFmODU2MzM1YTM4MDEwYTZhNjgzMmU2YnAyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2MgorICB9LAorICB7IC8vIEVudHJ5IDExNjkKKyAgICAweDEuNTJmNTBlNzU3OTQxY2JmZjViN2MyZTA2YTFhYjdlOWRwNiwKKyAgICAweDEuMHA2MworICB9LAorICB7IC8vIEVudHJ5IDExNzAKKyAgICAtMHgxLjUyZjUwZTc1Nzk0MWNiZmY1YjdjMmUwNmExYWI3ZTlkcDYsCisgICAgLTB4MS4wcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTE3MQorICAgIDB4MS43NTcwNjY3ZDAzMmVjYThlZjc4MGFkNTlkM2UyN2U0YnAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTE3MgorICAgIC0weDEuNzU3MDY2N2QwMzJlY2E4ZWY3ODBhZDU5ZDNlMjdlNGJwMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTczCisgICAgLTB4MS4yZThmYzI0OGU3Yjg1NGZlNWMyZGM5ZDI4N2RlMGNkM3AwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI2CisgIH0sCisgIHsgLy8gRW50cnkgMTE3NAorICAgIDB4MS4yZThmYzI0OGU3Yjg1NGZlNWMyZGM5ZDI4N2RlMGNkM3AwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyNgorICB9LAorICB7IC8vIEVudHJ5IDExNzUKKyAgICAtMHgxLjJlOGZjMWFmODFkOGJhYTg4OTlhMzMyNTIwMGMwZGNicDAsCisgICAgMHgxLjBwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTc2CisgICAgMHgxLjJlOGZjMWFmODFkOGJhYTg4OTlhMzMyNTIwMGMwZGNicDAsCisgICAgLTB4MS4wcDI3CisgIH0sCisgIHsgLy8gRW50cnkgMTE3NworICAgIC0weDEuMmU4ZmMwN2NiNjFhOTVlZjVlNWQ4ZDY0MTY2NTJjN2FwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyNworICB9LAorICB7IC8vIEVudHJ5IDExNzgKKyAgICAweDEuMmU4ZmMwN2NiNjFhOTVlZjVlNWQ4ZDY0MTY2NTJjN2FwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTc5CisgICAgLTB4MS4zZWEyODI4NjBlN2ZiZTE3NjU2MDdjMmZkYjMyNDgxZnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTE4MAorICAgIDB4MS4zZWEyODI4NjBlN2ZiZTE3NjU2MDdjMmZkYjMyNDgxZnAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyMworICB9LAorICB7IC8vIEVudHJ5IDExODEKKyAgICAtMHgxLjNlYTI4MjcxYTliZWEzNmU3NDRmOWNlNTM3YmE0YjU5cDAsCisgICAgMHgxLjBwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgyCisgICAgMHgxLjNlYTI4MjcxYTliZWEzNmU3NDRmOWNlNTM3YmE0YjU5cDAsCisgICAgLTB4MS4wcDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTE4MworICAgIC0weDEuM2VhMjgyNDhlMDNjNzJkZWY3MGU3ZWZiNGM0M2YwM2VwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyNAorICB9LAorICB7IC8vIEVudHJ5IDExODQKKyAgICAweDEuM2VhMjgyNDhlMDNjNzJkZWY3MGU3ZWZiNGM0M2YwM2VwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg1CisgICAgMHgxLjI4NjZmOWJlNGRlMGVjMjdlZmE5MDQ5YWI4MGJiZDZjcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMQorICB9LAorICB7IC8vIEVudHJ5IDExODYKKyAgICAtMHgxLjI4NjZmOWJlNGRlMGVjMjdlZmE5MDQ5YWI4MGJiZDZjcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg3CisgICAgMHgxLjI4NjZmOWJlNGRlMTM3MGRiOTA3ODYwNzAxMmNiMDdicDAsCisgICAgMHgxLjBwMgorICB9LAorICB7IC8vIEVudHJ5IDExODgKKyAgICAtMHgxLjI4NjZmOWJlNGRlMTM3MGRiOTA3ODYwNzAxMmNiMDdicDAsCisgICAgLTB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTg5CisgICAgMHgxLjI4NjZmOWJlNGRlMWNjZDk0YmM0ODhkZmQ0Nzg3M2FmcDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDExOTAKKyAgICAtMHgxLjI4NjZmOWJlNGRlMWNjZDk0YmM0ODhkZmQ0Nzg3M2FmcDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkxCisgICAgLTB4MS4xN2FmNjJlMDk1MGZiMWU3MDFjNjQyZWY4NzM3ZjUxNnAxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkyCisgICAgMHgxLjE3YWY2MmUwOTUwZmIxZTcwMWM2NDJlZjg3MzdmNTE2cDEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkzCisgICAgLTB4MS4xN2FmNjJlMDk1MGY4M2I1MDk5MDg3YWFmNjdhZjljMXAxLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk0CisgICAgMHgxLjE3YWY2MmUwOTUwZjgzYjUwOTkwODdhYWY2N2FmOWMxcDEsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk1CisgICAgLTB4MS4xN2FmNjJlMDk1MGYyNzUxMTkyNTExMjFmYWRiMTdiYXAxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk2CisgICAgMHgxLjE3YWY2MmUwOTUwZjI3NTExOTI1MTEyMWZhZGIxN2JhcDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk3CisgICAgMHgxLjhlYjI0NWNiZWUzYTQwMjM1NjEzZTc1NzUwMjBkMzBkcDAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTk4CisgICAgLTB4MS44ZWIyNDVjYmVlM2E0MDIzNTYxM2U3NTc1MDIwZDMwZHAwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExOTkKKyAgICAweDEuOGViMjQ1Y2JlZTNhNWI4YWNjN2Q0MTMyMzE0MGIzYjVwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIwMAorICAgIC0weDEuOGViMjQ1Y2JlZTNhNWI4YWNjN2Q0MTMyMzE0MGIzYjVwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMDEKKyAgICAweDEuOGViMjQ1Y2JlZTNhOTI1OWI5NGZmNGU3ZmI4MTExZWNwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIwMgorICAgIC0weDEuOGViMjQ1Y2JlZTNhOTI1OWI5NGZmNGU3ZmI4MTExZWNwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEyMDMKKyAgICAweDEuMTdiNGY1YmYzNDc0OTljZTQxODU1ZGVlNDM0NGJkMWRwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjA0CisgICAgLTB4MS4xN2I0ZjViZjM0NzQ5OWNlNDE4NTVkZWU0MzQ0YmQxZHAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjA1CisgICAgMHgxLjE3YjRmNWJmMzQ3NGE0MzE3OTY0ODA3ODgyNDQ0Y2M4cC0xLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIwNgorICAgIC0weDEuMTdiNGY1YmYzNDc0YTQzMTc5NjQ4MDc4ODI0NDRjYzhwLTEsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTIwNworICAgIDB4MS4xN2I0ZjViZjM0NzRiOGY3ZTkyMmM1OGQwMGNiOWRkMnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyMDgKKyAgICAtMHgxLjE3YjRmNWJmMzQ3NGI4ZjdlOTIyYzU4ZDAwY2I5ZGQycC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyMDkKKyAgICAweDEuMDU3ODVhNDNjNGM1NTVkZTBjYjEzNzFmMTBkYjMxYWZwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEwCisgICAgLTB4MS4wNTc4NWE0M2M0YzU1NWRlMGNiMTM3MWYxMGRiMzFhZnAtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjExCisgICAgMHgxLjA1Nzg1YTQzYzRjNTVlNjM5NDAxODg5NjVjMjhiZDBmcC0yLAorICAgIDB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTIxMgorICAgIC0weDEuMDU3ODVhNDNjNGM1NWU2Mzk0MDE4ODk2NWMyOGJkMGZwLTIsCisgICAgLTB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTIxMworICAgIDB4MS4wNTc4NWE0M2M0YzU2ZjZlYTJhMjJiODRmMmRkZjAzZnAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyMTQKKyAgICAtMHgxLjA1Nzg1YTQzYzRjNTZmNmVhMmEyMmI4NGYyZGRmMDNmcC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyMTUKKyAgICAweDEuMDE1NzdhZjE1MTFhNDVlNDAzZGQ2MGM4ZDgyNTkwZDBwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjE2CisgICAgLTB4MS4wMTU3N2FmMTUxMWE0NWU0MDNkZDYwYzhkODI1OTBkMHAtMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjE3CisgICAgMHgxLjAxNTc3YWYxNTExYTRlMDQ1OWY1Yjg3MmQ0ZmYzNGZkcC0zLAorICAgIDB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTIxOAorICAgIC0weDEuMDE1NzdhZjE1MTFhNGUwNDU5ZjViODcyZDRmZjM0ZmRwLTMsCisgICAgLTB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTIxOQorICAgIDB4MS4wMTU3N2FmMTUxMWE1ZTQ1MDYyNjY3YzZjZWI4OWRjNHAtMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDEyMjAKKyAgICAtMHgxLjAxNTc3YWYxNTExYTVlNDUwNjI2NjdjNmNlYjg5ZGM0cC0zLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMworICB9LAorICB7IC8vIEVudHJ5IDEyMjEKKyAgICAweDEuMDA1NTc3ODU0ZGYwMDAyYThlNjYwNmY2YzYxOGQ5ODhwLTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIyCisgICAgLTB4MS4wMDU1Nzc4NTRkZjAwMDJhOGU2NjA2ZjZjNjE4ZDk4OHAtNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjIzCisgICAgMHgxLjAwNTU3Nzg1NGRmMDA4MzI5M2JlNjM5MDU3YjBjNjgxcC00LAorICAgIDB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTIyNAorICAgIC0weDEuMDA1NTc3ODU0ZGYwMDgzMjkzYmU2MzkwNTdiMGM2ODFwLTQsCisgICAgLTB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTIyNQorICAgIDB4MS4wMDU1Nzc4NTRkZjAxODQyOWU2ZjFjYzM3YWUyMjI3NHAtNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDEyMjYKKyAgICAtMHgxLjAwNTU3Nzg1NGRmMDE4NDI5ZTZmMWNjMzdhZTIyMjc0cC00LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNAorICB9LAorICB7IC8vIEVudHJ5IDEyMjcKKyAgICAweDEuMDAxNTU3NzdhZWMwN2Q3YjIyNzQxZDEyZWU1M2E5ZmNwLTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjI4CisgICAgLTB4MS4wMDE1NTc3N2FlYzA3ZDdiMjI3NDFkMTJlZTUzYTlmY3AtNSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjI5CisgICAgMHgxLjAwMTU1Nzc3YWVjMDg1N2QyMmM5N2U4MDk4NjAyODhkcC01LAorICAgIDB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTIzMAorICAgIC0weDEuMDAxNTU3NzdhZWMwODU3ZDIyYzk3ZTgwOTg2MDI4OGRwLTUsCisgICAgLTB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTIzMQorICAgIDB4MS4wMDE1NTc3N2FlYzA5NTgxMjM3NDQxNWJlYzc5ODVjZXAtNSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEyMzIKKyAgICAtMHgxLjAwMTU1Nzc3YWVjMDk1ODEyMzc0NDE1YmVjNzk4NWNlcC01LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNQorICB9LAorICB7IC8vIEVudHJ5IDEyMzMKKyAgICAweDEuMDAwNTU1Nzc3ODU0ODJlMTM1ZjBhZmVlYmU4MDVhZGJwLTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjM0CisgICAgLTB4MS4wMDA1NTU3Nzc4NTQ4MmUxMzVmMGFmZWViZTgwNWFkYnAtNiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjM1CisgICAgMHgxLjAwMDU1NTc3Nzg1NDhhZTFiNWY2MDU3NDcwNmU4MjM4cC02LAorICAgIDB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTIzNgorICAgIC0weDEuMDAwNTU1Nzc3ODU0OGFlMWI1ZjYwNTc0NzA2ZTgyMzhwLTYsCisgICAgLTB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTIzNworICAgIDB4MS4wMDA1NTU3Nzc4NTQ5YWUyYjYwMGIwN2ZkNDRhZThmM3AtNiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDEyMzgKKyAgICAtMHgxLjAwMDU1NTc3Nzg1NDlhZTJiNjAwYjA3ZmQ0NGFlOGYzcC02LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNgorICB9LAorICB7IC8vIEVudHJ5IDEyMzkKKyAgICAweDEuMDAwMDAwMDU1NTU1NGQ3Nzc3NzZmODU0ODU0MzA0YzlwLTE0LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDEyNDAKKyAgICAtMHgxLjAwMDAwMDA1NTU1NTRkNzc3Nzc2Zjg1NDg1NDMwNGM5cC0xNCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgMTI0MQorICAgIDB4MS4wMDAwMDAwNTU1NTU1NTc3Nzc3Nzc4NTQ4NTQ4NWExZXAtMTQsCisgICAgMHgxLjBwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTI0MgorICAgIC0weDEuMDAwMDAwMDU1NTU1NTU3Nzc3Nzc3ODU0ODU0ODVhMWVwLTE0LAorICAgIC0weDEuMHAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQzCisgICAgMHgxLjAwMDAwMDA1NTU1NTY1Nzc3Nzc4Nzg1NDg1NTMwNGM5cC0xNCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQ0CisgICAgLTB4MS4wMDAwMDAwNTU1NTU2NTc3Nzc3ODc4NTQ4NTUzMDRjOXAtMTQsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDEyNDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZjJhYWFhYWFhYWFhYWE2ZWVlZWVwLTI4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yOAorICB9LAorICB7IC8vIEVudHJ5IDEyNDYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYyYWFhYWFhYWFhYWFhNmVlZWVlcC0yOCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMTI0NworICAgIDB4MS4wMDAwMDAwMDAwMDAwMTU1NTU1NTU1NTU1NTU3Nzc3N3AtMjcsCisgICAgMHgxLjBwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTI0OAorICAgIC0weDEuMDAwMDAwMDAwMDAwMDE1NTU1NTU1NTU1NTU1Nzc3NzdwLTI3LAorICAgIC0weDEuMHAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjQ5CisgICAgMHgxLjAwMDAwMDAwMDAwMDExNTU1NTU1NTU1NTU1OTc3Nzc3cC0yNywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUwCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMTU1NTU1NTU1NTU1NTk3Nzc3N3AtMjcsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yNworICB9LAorICB7IC8vIEVudHJ5IDEyNTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZjAwYWFhYWFhYWFhYWFhOWFhZWVwLTMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDEyNTIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwMGFhYWFhYWFhYWFhYTlhYWVlcC0zMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMTI1MworICAgIDB4MS4wMDAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1NTU3N3AtMzAsCisgICAgMHgxLjBwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMTI1NAorICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTU1NzdwLTMwLAorICAgIC0weDEuMHAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjU1CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwMDU1NTU1NTU1NTU1NTY1NTc3cC0zMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjU2CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMDA1NTU1NTU1NTU1NTU2NTU3N3AtMzAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDEyNTcKKyAgICAweDEuNDUzMGNmZTcyOTQ4M2I4ZGExZjcxMDFlMTZjZDc0YjdwLTgsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjU4CisgICAgLTB4MS40NTMwY2ZlNzI5NDgzYjhkYTFmNzEwMWUxNmNkNzRiN3AtOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI1OQorICAgIC0weDEuNDUzMGNmZTcyOTQ4M2I4ZGExZjcxMDFlMTZjZDc0YjdwLTgsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyNjAKKyAgICAweDEuNDUzMGNmZTcyOTQ4M2I4ZGExZjcxMDFlMTZjZDc0YjdwLTgsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYxCisgICAgLTB4MS40NTMwY2ZlNzI5NDgzYjhkYTFmNzEwMWUxNmNkNzRiN3AtOCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI2MgorICAgIDB4MS40NTMwY2ZlNzI5NDgzYjhkYTFmNzEwMWUxNmNkNzRiN3AtOCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyNjMKKyAgICAweDEuM2M2ZTk5NzBmNzhiODRmYzgyMjc1MTdmZDUyMTAxN2JwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI2NAorICAgIC0weDEuM2M2ZTk5NzBmNzhiODRmYzgyMjc1MTdmZDUyMTAxN2JwMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyNjUKKyAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0NjFkNWQ3cC01MywKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTI2NgorICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwNDYxZDVkN3AtNTMsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjY3CisgICAgMHgxLmQwMjk2N2MzMWNkYjRlMGMzOGQwMWI2NTVkNWUwYWFmcDUzLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjY4CisgICAgLTB4MS5kMDI5NjdjMzFjZGI0ZTBjMzhkMDFiNjU1ZDVlMGFhZnA1MywKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNjkKKyAgICAweDEuOGViMjQ1Y2JlZTNhOTI1OWI5NGZmNGU3ZmI4MTExZWNwMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI3MAorICAgIC0weDEuOGViMjQ1Y2JlZTNhOTI1OWI5NGZmNGU3ZmI4MTExZWNwMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNzEKKyAgICAweDEuOGViMjQ1Y2JlZTNhNWI4YWNjN2Q0MTMyMzE0MGIzYjVwMCwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI3MgorICAgIC0weDEuOGViMjQ1Y2JlZTNhNWI4YWNjN2Q0MTMyMzE0MGIzYjVwMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNzMKKyAgICAweDEuOGViMjQ1Y2JlZTNhNDAyMzU2MTNlNzU3NTAyMGQzMGRwMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNzQKKyAgICAtMHgxLjhlYjI0NWNiZWUzYTQwMjM1NjEzZTc1NzUwMjBkMzBkcDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTI3NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmNzJjZWNlNjc1ZDFmY2EzMDQ4OXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNzYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmY3MmNlY2U2NzVkMWZjYTMwNDg5cC0xLAorICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDEyNzcKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjc4CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjc5CisgICAgMHgxLnAtMTAyMiwKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDEyODAKKyAgICAtMHgxLnAtMTAyMiwKKyAgICAtMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgxCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI4MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMTI4MworICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyODQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDEyODUKKyAgICAweDEucC0xMDczLAorICAgIDB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgMTI4NgorICAgIC0weDEucC0xMDczLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDEyODcKKyAgICAweDEucC0xMDc0LAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMTI4OAorICAgIC0weDEucC0xMDc0LAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDEyODkKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMTI5MAorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS90YW5mX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS90YW5mX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNjY5MTE1Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL3RhbmZfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsNDQzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGZsb2F0LCBmbG9hdD4gZ190YW5mX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTB4MS4wMDAwMDAwMDAwMTU1NTU1NTU1NTU3Nzc3Nzc3Nzc3N3AtMjEsCisgICAgLTB4MS5wLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS4wMDAwMDAwMDAwMTU1NTU1NTU1NTU3Nzc3Nzc3Nzc3N3AtMjEsCisgICAgMHgxLnAtMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS5wLTE0OSwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMworICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgLTB4MS4wMDAwMDIwMDAwMDAwMDAwMDAwMDE1NTU1NWQ1NTU1NnAtNDEsCisgICAgLTB4MS4wMDAwMDJwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS4wMDAwMDIwMDAwMDAwMDAwMDAwMDE1NTU1NWQ1NTU1NnAtNDEsCisgICAgMHgxLjAwMDAwMnAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgLTB4MS5mZmI3ZWIwMDRiN2UxMmIzNjkzODhmYWFhMDM0MmY2Y3AtMywKKyAgICAtMHgxLjI3Y2NhNnA3CisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS5mZmI3ZWIwMDRiN2UxMmIzNjkzODhmYWFhMDM0MmY2Y3AtMywKKyAgICAweDEuMjdjY2E2cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgLTB4MS4zYjdkZGFmZmRjOWEyZmFkMzlmMzI5NzQzZmJmNDllNXA0LAorICAgIC0weDEuMmE1OTk2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLjNiN2RkYWZmZGM5YTJmYWQzOWYzMjk3NDNmYmY0OWU1cDQsCisgICAgMHgxLjJhNTk5NnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTAKKyAgICAweDEuODE5ZjMyZmZkOTdiMWVkNjY3YmMxNDMzODcwMzdkZGVwLTEsCisgICAgLTB4MS4zZjdmMjJwMQorICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgLTB4MS44MTlmMzJmZmQ5N2IxZWQ2NjdiYzE0MzM4NzAzN2RkZXAtMSwKKyAgICAweDEuM2Y3ZjIycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIC0weDEuNDA1ZjkwMDAwMDAwMDAwMDAwMGE3NDAyODQ2NTgzZDBwLTM4LAorICAgIC0weDEuNDA1ZjkwcC0zOAorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLjQwNWY5MDAwMDAwMDAwMDAwMDBhNzQwMjg0NjU4M2QwcC0zOCwKKyAgICAweDEuNDA1ZjkwcC0zOAorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgLTB4MS44Y2Q3OTk5NTM0NGM3OTQzYzdiM2UwMjE2MDdkYTNjYnAtMiwKKyAgICAtMHgxLjQ5NmU4MHA5NgorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLjhjZDc5OTk1MzQ0Yzc5NDNjN2IzZTAyMTYwN2RhM2NicC0yLAorICAgIDB4MS40OTZlODBwOTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5lMTQ0NDcxZWEyYjQ5YjZjMWZkY2VmZjhjY2NlZWE3YnAxMCwKKyAgICAtMHgxLjVmZTBwMworICB9LAorICB7IC8vIEVudHJ5IDE3CisgICAgLTB4MS5lMTQ0NDcxZWEyYjQ5YjZjMWZkY2VmZjhjY2NlZWE3YnAxMCwKKyAgICAweDEuNWZlMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAtMHgxLmNhMGY0YzIzMTVhYjVhOTcyOWU2YWZhODU3Njc3YjNmcC0xLAorICAgIC0weDEuNzVhZWYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTkKKyAgICAweDEuY2EwZjRjMjMxNWFiNWE5NzI5ZTZhZmE4NTc2NzdiM2ZwLTEsCisgICAgMHgxLjc1YWVmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgLTB4MS5jMzNlZDUwYjg4Nzc3NWE1ZDYxM2MwOGM0ODhmYmI5Y3AzLAorICAgIC0weDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLmMzM2VkNTBiODg3Nzc1YTVkNjEzYzA4YzQ4OGZiYjljcDMsCisgICAgMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMgorICAgIC0weDEuYzM0NTEzZWU3MTQwZmRiODIxN2U4M2RjMmQ2ZDZmNTNwMywKKyAgICAtMHgxLjgwMDA0MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuYzM0NTEzZWU3MTQwZmRiODIxN2U4M2RjMmQ2ZDZmNTNwMywKKyAgICAweDEuODAwMDQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIDB4MS40ZTZiOGE0ODE2NGI5ZTFkODE3NWU0NTEyYWIyMmZmMXAwLAorICAgIC0weDEuOGUzNTYwcDk4CisgIH0sCisgIHsgLy8gRW50cnkgMjUKKyAgICAtMHgxLjRlNmI4YTQ4MTY0YjllMWQ4MTc1ZTQ1MTJhYjIyZmYxcDAsCisgICAgMHgxLjhlMzU2MHA5OAorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgLTB4MS5kMDE3ZTAyMTRhOTUzMjY1ZDhkZDVjMGExMWVhNjFkMXAtMSwKKyAgICAtMHgxLjlkZTdkNHA0CisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuZDAxN2UwMjE0YTk1MzI2NWQ4ZGQ1YzBhMTFlYTYxZDFwLTEsCisgICAgMHgxLjlkZTdkNHA0CisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAtMHgxLmQwNDczZjAyMjcwYzBlZWM4ODNlNzUzZTUwODAwNjcwcC0xLAorICAgIC0weDEuOWRlOGE0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOQorICAgIDB4MS5kMDQ3M2YwMjI3MGMwZWVjODgzZTc1M2U1MDgwMDY3MHAtMSwKKyAgICAweDEuOWRlOGE0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5kMGFhZGEyMmFhNWUzZGMzNWI1MDYzYzYzOTA0N2RmNXAtMSwKKyAgICAtMHgxLmJlN2U1YXA1CisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAtMHgxLmQwYWFkYTIyYWE1ZTNkYzM1YjUwNjNjNjM5MDQ3ZGY1cC0xLAorICAgIDB4MS5iZTdlNWFwNQorICB9LAorICB7IC8vIEVudHJ5IDMyCisgICAgLTB4MS5lZTk0OTUwMDBhMTkwY2RiNmRiM2U4M2QyYzA1ZWYzOHAtMiwKKyAgICAtMHgxLmNjYmViMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDMzCisgICAgMHgxLmVlOTQ5NTAwMGExOTBjZGI2ZGIzZTgzZDJjMDVlZjM4cC0yLAorICAgIDB4MS5jY2JlYjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIDB4MS5kYzMyZWJhNjM4ZDEzNDU4YzdiMjlkOTZhYmZmZTFjYXAtNywKKyAgICAtMHgxLmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAtMHgxLmRjMzJlYmE2MzhkMTM0NThjN2IyOWQ5NmFiZmZlMWNhcC03LAorICAgIDB4MS5mZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLjAwMDAwMDAwMDAxNTU1NTU1NTU1NTc3Nzc3Nzc3Nzc3cC0yMSwKKyAgICAweDEucC0yMQorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgLTB4MS4wMDAwMDAwMDAwMTU1NTU1NTU1NTU3Nzc3Nzc3Nzc3N3AtMjEsCisgICAgLTB4MS5wLTIxCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEucC0xMzEsCisgICAgMHgxLnAtMTMxCisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAtMHgxLnAtMTMxLAorICAgIC0weDEucC0xMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MAorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MQorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLjUyZjUwZTc1Nzk0MWNiZmY1YjdjMmUwNmExYWI3ZTlkcDYsCisgICAgMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgLTB4MS41MmY1MGU3NTc5NDFjYmZmNWI3YzJlMDZhMWFiN2U5ZHA2LAorICAgIC0weDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuMDAwMDAyMDAwMDAwMDAwMDAwMDAxNTU1NTVkNTU1NTZwLTQxLAorICAgIDB4MS4wMDAwMDJwLTQxCisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAtMHgxLjAwMDAwMjAwMDAwMDAwMDAwMDAwMTU1NTU1ZDU1NTU2cC00MSwKKyAgICAtMHgxLjAwMDAwMnAtNDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NgorICAgIC0weDEuYWRiN2ViNmQ4Y2ViYmUzNjJmMTk3ZGJlZGE1YzExM2NwLTEsCisgICAgMHgxLjAwMDAwMnA1MQorICB9LAorICB7IC8vIEVudHJ5IDQ3CisgICAgMHgxLmFkYjdlYjZkOGNlYmJlMzYyZjE5N2RiZWRhNWMxMTNjcC0xLAorICAgIC0weDEuMDAwMDAycDUxCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEuZjc3NjJiNzUyYjAwNjcxNWQ5MGMzODlhMTE4MjZkNmJwMSwKKyAgICAweDEuMDAwMDA0cDEyNworICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5mNzc2MmI3NTJiMDA2NzE1ZDkwYzM4OWExMTgyNmQ2YnAxLAorICAgIC0weDEuMDAwMDA0cDEyNworICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgLTB4MS4wOWNmZjEwMDAwNjcxOTEyYzg0NzYyZjE4YzI4NTQ3MHAwLAorICAgIDB4MS4wMDAwOTBwNworICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgMHgxLjA5Y2ZmMTAwMDA2NzE5MTJjODQ3NjJmMThjMjg1NDcwcDAsCisgICAgLTB4MS4wMDAwOTBwNworICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLjAxNTkwMTAxN2VkYjY3YWE3ZTUyYWU2OTRlOTkwYTE5cC0zLAorICAgIDB4MS4wMDAxODBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEuMDE1OTAxMDE3ZWRiNjdhYTdlNTJhZTY5NGU5OTBhMTlwLTMsCisgICAgLTB4MS4wMDAxODBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIDB4MS4wMDAyMjAwMDAwMDAwMDAwMDAwMDU1NTc3NTU5ZDk1OHAtNDAsCisgICAgMHgxLjAwMDIyMHAtNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEuMDAwMjIwMDAwMDAwMDAwMDAwMDA1NTU3NzU1OWQ5NThwLTQwLAorICAgIC0weDEuMDAwMjIwcC00MAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLjZkNTM3OTZjZGQ0MDFlM2RkYzA5ZTgzNWI4ZWE2NjBhcDMsCisgICAgMHgxLjAwMDM4MHAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEuNmQ1Mzc5NmNkZDQwMWUzZGRjMDllODM1YjhlYTY2MGFwMywKKyAgICAtMHgxLjAwMDM4MHAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIC0weDEuYjA3MGUzYTY5Njg0NjNhZjZlOWRiOTIyZTc4NDU1MjRwLTcsCisgICAgMHgxLjAwMDg4MHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTkKKyAgICAweDEuYjA3MGUzYTY5Njg0NjNhZjZlOWRiOTIyZTc4NDU1MjRwLTcsCisgICAgLTB4MS4wMDA4ODBwOQorICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgLTB4MS5mYTYxZGNmZmEzZWZlMzI1YjMyNzA0ZmM0MTI0NjJjZnAxLAorICAgIDB4MS4wMDIwcDYyCisgIH0sCisgIHsgLy8gRW50cnkgNjEKKyAgICAweDEuZmE2MWRjZmZhM2VmZTMyNWIzMjcwNGZjNDEyNDYyY2ZwMSwKKyAgICAtMHgxLjAwMjBwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5mZmZkODI1YTNmMzc3ZjAxMjIwOTk4MmEwMGMzNDZmMHAtMiwKKyAgICAweDEuMDA2MHA5MAorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS5mZmZkODI1YTNmMzc3ZjAxMjIwOTk4MmEwMGMzNDZmMHAtMiwKKyAgICAtMHgxLjAwNjBwOTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS4wMTNjNjhmZmYwNGI2OTgxNjVkZmRmOWQ0ODQ0NGE5NXAtNiwKKyAgICAweDEuMDEzN3AtNgorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgLTB4MS4wMTNjNjhmZmYwNGI2OTgxNjVkZmRmOWQ0ODQ0NGE5NXAtNiwKKyAgICAtMHgxLjAxMzdwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS45MzJjOTk0ZjYxZDgwNGEwODRmMjBkOTc1YTYxN2M1MHAwLAorICAgIDB4MS4wMTRjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuOTMyYzk5NGY2MWQ4MDRhMDg0ZjIwZDk3NWE2MTdjNTBwMCwKKyAgICAtMHgxLjAxNGNwMAorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgLTB4MS5jMzRlYzIwNTMzZTc2MDU2NWNiNzYyYjE1YzE4ZDZmY3AxLAorICAgIDB4MS4wMjA0NDZwNTgKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OQorICAgIDB4MS5jMzRlYzIwNTMzZTc2MDU2NWNiNzYyYjE1YzE4ZDZmY3AxLAorICAgIC0weDEuMDIwNDQ2cDU4CisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuOWZmNzE3NjdlYTA1MWU0ZTljYzAwMDg5MjJiMTExMjlwMCwKKyAgICAweDEuMDRlNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLjlmZjcxNzY3ZWEwNTFlNGU5Y2MwMDA4OTIyYjExMTI5cDAsCisgICAgLTB4MS4wNGU0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS4wN2M5YzUwMDE2NTkwNzk3MjJmOGU5MTkwZmZlNmVjNnAtMywKKyAgICAweDEuMDY1OHAtMworICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS4wN2M5YzUwMDE2NTkwNzk3MjJmOGU5MTkwZmZlNmVjNnAtMywKKyAgICAtMHgxLjA2NThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS5mZDYxMTA3MmE1MDM1N2U2MjY2NzY4YjJjZGYwMTk0Y3AtMywKKyAgICAweDEuMGFjNzEwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5mZDYxMTA3MmE1MDM1N2U2MjY2NzY4YjJjZGYwMTk0Y3AtMywKKyAgICAtMHgxLjBhYzcxMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIDB4MS4wZGRiYjUwMDAyNDRjNGZiOTcyZWI3MmRlMDA4OTZjMHAtMywKKyAgICAweDEuMGM1MHAtMworICB9LAorICB7IC8vIEVudHJ5IDc3CisgICAgLTB4MS4wZGRiYjUwMDAyNDRjNGZiOTcyZWI3MmRlMDA4OTZjMHAtMywKKyAgICAtMHgxLjBjNTBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIC0weDEuYzBhZWI1Zjg0YmU5NWRhNWFiMDcxNmRmYmEyMDVlMjhwMiwKKyAgICAweDEuMGRkY3A5NgorICB9LAorICB7IC8vIEVudHJ5IDc5CisgICAgMHgxLmMwYWViNWY4NGJlOTVkYTVhYjA3MTZkZmJhMjA1ZTI4cDIsCisgICAgLTB4MS4wZGRjcDk2CisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuMzQwNzU0ZmZmZmZlYjc4MDc2MWU4NjMzN2YwYzU1ZWZwMSwKKyAgICAweDEuMGUyOGE2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuMzQwNzU0ZmZmZmZlYjc4MDc2MWU4NjMzN2YwYzU1ZWZwMSwKKyAgICAtMHgxLjBlMjhhNnA0CisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEuMzQ5ZDk1ZmZlZTQ3MmVjN2MxMDkzNDU3MGQzYmE0ODZwLTEsCisgICAgMHgxLjE1YmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIC0weDEuMzQ5ZDk1ZmZlZTQ3MmVjN2MxMDkzNDU3MGQzYmE0ODZwLTEsCisgICAgLTB4MS4xNWJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAweDEuZWVjNzI0MDNhNGZkMjRkMGM5ZTJhZjA4OGEwNWZiODVwMCwKKyAgICAweDEuMTdlNHAwCisgIH0sCisgIHsgLy8gRW50cnkgODUKKyAgICAtMHgxLmVlYzcyNDAzYTRmZDI0ZDBjOWUyYWYwODhhMDVmYjg1cDAsCisgICAgLTB4MS4xN2U0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS5lZjRiZDdhMjE1MjM3YjMwNjVkNTY5ZmQ0YzVmNWE0N3AwLAorICAgIDB4MS4xOHAwCisgIH0sCisgIHsgLy8gRW50cnkgODcKKyAgICAtMHgxLmVmNGJkN2EyMTUyMzdiMzA2NWQ1NjlmZDRjNWY1YTQ3cDAsCisgICAgLTB4MS4xOHAwCisgIH0sCisgIHsgLy8gRW50cnkgODgKKyAgICAtMHgxLmZlNzkzOTAwMTM4Yzk5NDE4MzZiNGZjYmM5YjIyNjBkcC00LAorICAgIDB4MS4xOHA2NAorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLmZlNzkzOTAwMTM4Yzk5NDE4MzZiNGZjYmM5YjIyNjBkcC00LAorICAgIC0weDEuMThwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS5mMDhmMDg3M2M1ODE5YTlmN2NjNmJiZjNjNTI5MWNjMHAwLAorICAgIDB4MS4xODQ0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MQorICAgIC0weDEuZjA4ZjA4NzNjNTgxOWE5ZjdjYzZiYmYzYzUyOTFjYzBwMCwKKyAgICAtMHgxLjE4NDRwMAorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjVjNTFjYzE4ZjA5MWJjNGI1NGVlODM2MjM0MzhjOWE3cDExLAorICAgIDB4MS4xOGZmZmVwMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIC0weDEuNWM1MWNjMThmMDkxYmM0YjU0ZWU4MzYyMzQzOGM5YTdwMTEsCisgICAgLTB4MS4xOGZmZmVwMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS4yNjMzNTY3ODk4ZTY5MWVlYjg3YWQwMjZiZDE2YTdlNHAtMiwKKyAgICAweDEuMWU3Y3AtMgorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgLTB4MS4yNjMzNTY3ODk4ZTY5MWVlYjg3YWQwMjZiZDE2YTdlNHAtMiwKKyAgICAtMHgxLjFlN2NwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS5mZmZmZWRmNTU4YmZiMzEwMGY2MTEyNWYyOTZiOGJhZHAxLAorICAgIDB4MS4xZWJlcDE4CisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAtMHgxLmZmZmZlZGY1NThiZmIzMTAwZjYxMTI1ZjI5NmI4YmFkcDEsCisgICAgLTB4MS4xZWJlcDE4CisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuMGU1NTFiMDAwMDdmYWUxNzIzNjQyMWE3NmU4NjFjNzVwMSwKKyAgICAweDEuMjBlYTljcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OQorICAgIC0weDEuMGU1NTFiMDAwMDdmYWUxNzIzNjQyMWE3NmU4NjFjNzVwMSwKKyAgICAtMHgxLjIwZWE5Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLmMwN2RmYjA1NTJiYTYwYjcxYzdkZjZiZDdjYTQwOWQ2cDIwLAorICAgIDB4MS4yMTA2Y2FwNQorICB9LAorICB7IC8vIEVudHJ5IDEwMQorICAgIC0weDEuYzA3ZGZiMDU1MmJhNjBiNzFjN2RmNmJkN2NhNDA5ZDZwMjAsCisgICAgLTB4MS4yMTA2Y2FwNQorICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIC0weDEuZmQyM2ZkNjRhNGJmY2ZiNTk3YzQ2OTMzNjQ5ZjVhZTJwLTIsCisgICAgMHgxLjIxOWRjNnAxMTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuZmQyM2ZkNjRhNGJmY2ZiNTk3YzQ2OTMzNjQ5ZjVhZTJwLTIsCisgICAgLTB4MS4yMTlkYzZwMTE5CisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgLTB4MS5iOTNjMTMwMDBkMDE2ZDE0ZTc1NmMyNWU0MjMwMmQ5ZnAtMywKKyAgICAweDEuMjZjZDZhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUKKyAgICAweDEuYjkzYzEzMDAwZDAxNmQxNGU3NTZjMjVlNDIzMDJkOWZwLTMsCisgICAgLTB4MS4yNmNkNmFwMworICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIC0weDEuZWJjYmNiMTM4YjI3NGNiY2JlNjFhZjUxMTNkYTgzZWNwLTQsCisgICAgMHgxLjI5YzRlMHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLmViY2JjYjEzOGIyNzRjYmNiZTYxYWY1MTEzZGE4M2VjcC00LAorICAgIC0weDEuMjljNGUwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuOTliYzViOTYxYjFiMjRmZGI3N2ZjZWUwOGJhMmY3MjBwLTI1LAorICAgIDB4MS4yZDk3YzhwNAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIC0weDEuOTliYzViOTYxYjFiMjRmZGI3N2ZjZWUwOGJhMmY3MjBwLTI1LAorICAgIC0weDEuMmQ5N2M4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAKKyAgICAtMHgxLmVkMThhZjBiMGJhODBkZmE2ZThlZTFiM2IzMWRmYzYwcC0xLAorICAgIDB4MS4zMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLmVkMThhZjBiMGJhODBkZmE2ZThlZTFiM2IzMWRmYzYwcC0xLAorICAgIC0weDEuMzBwMQorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS45YWIyNDExMWNmYzYyZGY0ZGJjYTMyMDIxNmI5NDY1MXAtNCwKKyAgICAweDEuMzBjYTcwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLjlhYjI0MTExY2ZjNjJkZjRkYmNhMzIwMjE2Yjk0NjUxcC00LAorICAgIC0weDEuMzBjYTcwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuMzM3ZDhmZmZmZmZlZGU2MmYwNTBlOThiM2I5NTk2ZTFwLTMsCisgICAgMHgxLjMxMzVmMHAtMworICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIC0weDEuMzM3ZDhmZmZmZmZlZGU2MmYwNTBlOThiM2I5NTk2ZTFwLTMsCisgICAgLTB4MS4zMTM1ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEuMzQ4ZTY1MDAwMDAwMmVmM2E3NjViOTQxNmQxMmNmN2VwLTMsCisgICAgMHgxLjMyNDBiY3AtMworICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIC0weDEuMzQ4ZTY1MDAwMDAwMmVmM2E3NjViOTQxNmQxMmNmN2VwLTMsCisgICAgLTB4MS4zMjQwYmNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTgKKyAgICAtMHgxLmI5ZTU4YWVjNjFhNDRhYjUzM2MyYjgzNzI2MzY3ZTE3cC04LAorICAgIDB4MS4zMmQ1M2NwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEuYjllNThhZWM2MWE0NGFiNTMzYzJiODM3MjYzNjdlMTdwLTgsCisgICAgLTB4MS4zMmQ1M2NwMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAtMHgxLmUxZmQ2OGVkZWE0NGZiNzg3ODBlZDYyZTczYzZlMDE3cC02LAorICAgIDB4MS4zYTBhYThwNgorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIDB4MS5lMWZkNjhlZGVhNDRmYjc4NzgwZWQ2MmU3M2M2ZTAxN3AtNiwKKyAgICAtMHgxLjNhMGFhOHA2CisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgLTB4MS42MmEyODEwMDAwMTM5MzA4MGY2NzMzZGZhZjljNzZmY3AtMSwKKyAgICAweDEuNDQ5NWJhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjMKKyAgICAweDEuNjJhMjgxMDAwMDEzOTMwODBmNjczM2RmYWY5Yzc2ZmNwLTEsCisgICAgLTB4MS40NDk1YmFwMQorICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5iOTIzYzNiYTBiYzBjNTAwYmE0YzI0NTMwMWJhZDIwN3AxLAorICAgIDB4MS40OWQ0MmFwMAorICB9LAorICB7IC8vIEVudHJ5IDEyNQorICAgIC0weDEuYjkyM2MzYmEwYmMwYzUwMGJhNGMyNDUzMDFiYWQyMDdwMSwKKyAgICAtMHgxLjQ5ZDQyYXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLjU0MWYzZjAwMDIyYWMyNWNjOGE5MDg1NWFiNmJiODA4cC0zLAorICAgIDB4MS41MTBiYmNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjcKKyAgICAtMHgxLjU0MWYzZjAwMDIyYWMyNWNjOGE5MDg1NWFiNmJiODA4cC0zLAorICAgIC0weDEuNTEwYmJjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLjc2ZjNlZmZmZmYzMDU3MTIyZTZlN2NlNTBkMTJjYmNlcC0zLAorICAgIDB4MS41NDk1MjBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgLTB4MS43NmYzZWZmZmZmMzA1NzEyMmU2ZTdjZTUwZDEyY2JjZXAtMywKKyAgICAtMHgxLjU0OTUyMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuNGNhYzAzMDA2NDNlMTJjNDYyMDNiNDdkM2VlZWQ0ZmZwLTksCisgICAgMHgxLjU0YzRiYXAyNAorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0weDEuNGNhYzAzMDA2NDNlMTJjNDYyMDNiNDdkM2VlZWQ0ZmZwLTksCisgICAgLTB4MS41NGM0YmFwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAtMHgxLjcwZDU0NTAwMDAwNTg5NzRjMjBiOTdiYTk2ZmRhZTAzcC0zLAorICAgIDB4MS41YTc1N2VwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAweDEuNzBkNTQ1MDAwMDA1ODk3NGMyMGI5N2JhOTZmZGFlMDNwLTMsCisgICAgLTB4MS41YTc1N2VwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAtMHgxLmZmZmZlOWJiYTdmMTMyMWZhZTE5Mjk0M2EzZTg0OGMwcC0xLAorICAgIDB4MS41ZmRiYzBwMgorICB9LAorICB7IC8vIEVudHJ5IDEzNQorICAgIDB4MS5mZmZmZTliYmE3ZjEzMjFmYWUxOTI5NDNhM2U4NDhjMHAtMSwKKyAgICAtMHgxLjVmZGJjMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgLTB4MS5mZmI2OGYwMDUwZGFiZTVjZTcxOTIwMjYxMGZjYWMyZXAtMSwKKyAgICAweDEuNWZlMDU2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAweDEuZmZiNjhmMDA1MGRhYmU1Y2U3MTkyMDI2MTBmY2FjMmVwLTEsCisgICAgLTB4MS41ZmUwNTZwMgorICB9LAorICB7IC8vIEVudHJ5IDEzOAorICAgIC0weDEuZGFiYjQ2ZTM5MzdlNmM1MDVhYjIwNjIyMzIzMzlhMTZwLTcsCisgICAgMHgxLjY0OTNkNHA5NQorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIDB4MS5kYWJiNDZlMzkzN2U2YzUwNWFiMjA2MjIzMjMzOWExNnAtNywKKyAgICAtMHgxLjY0OTNkNHA5NQorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5jODMyMTYyNDgxZTFjZTRmMDE3MzZiYjk3YTMwMTliOXAtMSwKKyAgICAweDEuNzRhNTY2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS5jODMyMTYyNDgxZTFjZTRmMDE3MzZiYjk3YTMwMTliOXAtMSwKKyAgICAtMHgxLjc0YTU2NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS43YjJmYTQwMDAwMDM4ZDU2OTIyNjUxMmM3Nzk3NmZmNXAtMywKKyAgICAweDEuNzZmMGIycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS43YjJmYTQwMDAwMDM4ZDU2OTIyNjUxMmM3Nzk3NmZmNXAtMywKKyAgICAtMHgxLjc2ZjBiMnAtMworICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEuNGYzNzVhZDlkZWU1ZmQ2MDRmYjI5NDM1ZjMyZWZlNTdwMSwKKyAgICAweDEuNzhiM2ZhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NQorICAgIDB4MS40ZjM3NWFkOWRlZTVmZDYwNGZiMjk0MzVmMzJlZmU1N3AxLAorICAgIC0weDEuNzhiM2ZhcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIC0weDEuMDAwMDVlZmZmYmU3M2U3YmFmZWFiN2Y3NmM4YTkzZWZwMCwKKyAgICAweDEuNzhmZGI0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDcKKyAgICAweDEuMDAwMDVlZmZmYmU3M2U3YmFmZWFiN2Y3NmM4YTkzZWZwMCwKKyAgICAtMHgxLjc4ZmRiNHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ4CisgICAgLTB4MS5mYzNhY2UwMDAwMjljMzMxNjkyYWE5ZmU0ZTQyZjAwNHAtMSwKKyAgICAweDEuNzkxY3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgMHgxLmZjM2FjZTAwMDAyOWMzMzE2OTJhYTlmZTRlNDJmMDA0cC0xLAorICAgIC0weDEuNzkxY3AzCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgMHgxLmRjZmEzMjU0YjUzYjZhNzBjZWM0NDczYWJlODUwMTAycC0xLAorICAgIDB4MS43ZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLmRjZmEzMjU0YjUzYjZhNzBjZWM0NDczYWJlODUwMTAycC0xLAorICAgIC0weDEuN2ZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTUyCisgICAgMHgxLmMzM2VkNTBiODg3Nzc1YTVkNjEzYzA4YzQ4OGZiYjljcDMsCisgICAgMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAtMHgxLmMzM2VkNTBiODg3Nzc1YTVkNjEzYzA4YzQ4OGZiYjljcDMsCisgICAgLTB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTU0CisgICAgMHgxLjgwMDhwLTEzMCwKKyAgICAweDEuODAwOHAtMTMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS44MDA4cC0xMzAsCisgICAgLTB4MS44MDA4cC0xMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTYKKyAgICAtMHgxLmY5NjM3MGVjNDgyZDJiYjBlYjhlYTdhNTMwMTM5ZmNmcC01LAorICAgIDB4MS44MTgwcDgzCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgMHgxLmY5NjM3MGVjNDgyZDJiYjBlYjhlYTdhNTMwMTM5ZmNmcC01LAorICAgIC0weDEuODE4MHA4MworICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIC0weDEuZmZmNjY0ZmFhNmY4NmZhOGI0ZTVlMjcxOWQyMTk1Y2ZwLTEsCisgICAgMHgxLjg5ZTA5MHA5CisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgMHgxLmZmZjY2NGZhYTZmODZmYThiNGU1ZTI3MTlkMjE5NWNmcC0xLAorICAgIC0weDEuODllMDkwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEuMWMwNTExMDE2NDNiZTc0MDc4MmZlMGRmYzlkY2QxY2NwMCwKKyAgICAweDEuOGM2MzFlcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTYxCisgICAgLTB4MS4xYzA1MTEwMTY0M2JlNzQwNzgyZmUwZGZjOWRjZDFjY3AwLAorICAgIC0weDEuOGM2MzFlcDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgMHgxLmJiMmU4OGYyNmI5MzYzZjlhODUyNjY1ZjM0MTNkOTk0cDEzLAorICAgIDB4MS44YzY3ZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS5iYjJlODhmMjZiOTM2M2Y5YTg1MjY2NWYzNDEzZDk5NHAxMywKKyAgICAtMHgxLjhjNjdmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAtMHgxLmYwZTRlYzEzMzU4NWNiMzBlNjdjZmNiYjM2ZmFhZDhlcDEsCisgICAgMHgxLjkxZDg1OHAxMgorICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIDB4MS5mMGU0ZWMxMzM1ODVjYjMwZTY3Y2ZjYmIzNmZhYWQ4ZXAxLAorICAgIC0weDEuOTFkODU4cDEyCisgIH0sCisgIHsgLy8gRW50cnkgMTY2CisgICAgLTB4MS41ZDE0OTQ2ZGM5ODk3NWQ2NDIxYTU1Mjg0ZmUwMjBhMXAyNCwKKyAgICAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAweDEuNWQxNDk0NmRjOTg5NzVkNjQyMWE1NTI4NGZlMDIwYTFwMjQsCisgICAgLTB4MS45MjFmYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS45ODBlZTBjZmJmMGYxZWJjOWQ0ZmQyNGNjZTNjZGZlN3AxNSwKKyAgICAweDEuOTIyOTIycDE1CisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS45ODBlZTBjZmJmMGYxZWJjOWQ0ZmQyNGNjZTNjZGZlN3AxNSwKKyAgICAtMHgxLjkyMjkyMnAxNQorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIC0weDEuZmQ0M2Y4ZTg5MWUyMjdkZGFkMmZiMmU1NTIwZDRmZjJwLTEsCisgICAgMHgxLjkyMzBmZXAxNQorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIDB4MS5mZDQzZjhlODkxZTIyN2RkYWQyZmIyZTU1MjBkNGZmMnAtMSwKKyAgICAtMHgxLjkyMzBmZXAxNQorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS5jZjM4ZjYyMTJlN2U2Mjc2ZjRhZGQ1NDg3OGYxYTdkYnAtMSwKKyAgICAweDEuOTUxMGM4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLmNmMzhmNjIxMmU3ZTYyNzZmNGFkZDU0ODc4ZjFhN2RicC0xLAorICAgIC0weDEuOTUxMGM4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuZDAzZDQ1MDI0YzNjYTRhMmM0ZTFhOTE4NTYxMzUwNDZwLTEsCisgICAgMHgxLjk1MTFlNnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS5kMDNkNDUwMjRjM2NhNGEyYzRlMWE5MTg1NjEzNTA0NnAtMSwKKyAgICAtMHgxLjk1MTFlNnA2CisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLjA1NTRlYjVjYmQzOTNlNGYwNzcwYzg2NTI4ZjM5ZWUxcDE3LAorICAgIDB4MS45NzlmMjRwOQorICB9LAorICB7IC8vIEVudHJ5IDE3NworICAgIC0weDEuMDU1NGViNWNiZDM5M2U0ZjA3NzBjODY1MjhmMzllZTFwMTcsCisgICAgLTB4MS45NzlmMjRwOQorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS5mYWQ1ZGY5M2RlMzA1MWNmMDE4YWIzMmMwYjMyMzU3MXAtMSwKKyAgICAweDEuYTFlODYycDExOQorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuZmFkNWRmOTNkZTMwNTFjZjAxOGFiMzJjMGIzMjM1NzFwLTEsCisgICAgLTB4MS5hMWU4NjJwMTE5CisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLmZmOTgxYjE1MzRmNzgwMTZiZWE0ZDk1ODgyNTRlOTk2cDMsCisgICAgMHgxLmFkMWZwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAtMHgxLmZmOTgxYjE1MzRmNzgwMTZiZWE0ZDk1ODgyNTRlOTk2cDMsCisgICAgLTB4MS5hZDFmcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgLTB4MS5mZmY0YTFkYjFlMWUzOGM0MzhkZGQzOGJiOTRmNmQzMXAxLAorICAgIDB4MS5hZGEzZGFwMzkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAweDEuZmZmNGExZGIxZTFlMzhjNDM4ZGRkMzhiYjk0ZjZkMzFwMSwKKyAgICAtMHgxLmFkYTNkYXAzOQorICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS5kMDE1MjkwMjNkOTUxMzkwMjAwYTQyNTJmMDM4YjRhZnAtMSwKKyAgICAweDEuYjEyNWJhcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLmQwMTUyOTAyM2Q5NTEzOTAyMDBhNDI1MmYwMzhiNGFmcC0xLAorICAgIC0weDEuYjEyNWJhcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuZDY3ZmExMDVmNzY4Njg2MTJjODRmNzRhMWYzOGYwYWNwLTIsCisgICAgMHgxLmI5MGEwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuZDY3ZmExMDVmNzY4Njg2MTJjODRmNzRhMWYzOGYwYWNwLTIsCisgICAgLTB4MS5iOTBhMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuOTk2NjNkYTk0ZGJkNTcxOTljYjhlM2RhZTcwMTgzNThwLTIzLAorICAgIDB4MS5iZWVlZWVwODAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAtMHgxLjk5NjYzZGE5NGRiZDU3MTk5Y2I4ZTNkYWU3MDE4MzU4cC0yMywKKyAgICAtMHgxLmJlZWVlZXA4MAorICB9LAorICB7IC8vIEVudHJ5IDE5MAorICAgIDB4MS5lYjk2NTcxZWI5ZGExMzM3ZTcwM2NjMjBlNDFlOTcxOXAtMTMsCisgICAgMHgxLmMzYWJmMHAyNAorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuZWI5NjU3MWViOWRhMTMzN2U3MDNjYzIwZTQxZTk3MTlwLTEzLAorICAgIC0weDEuYzNhYmYwcDI0CisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgMHgxLmUxOThjNDhiZWY5NTQxNTFlZTA3NTgxNWQ4NWM1MzYzcDAsCisgICAgMHgxLmM3MWM3NHAxMTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLmUxOThjNDhiZWY5NTQxNTFlZTA3NTgxNWQ4NWM1MzYzcDAsCisgICAgLTB4MS5jNzFjNzRwMTE2CisgIH0sCisgIHsgLy8gRW50cnkgMTk0CisgICAgLTB4MS5lNTBlNTI0NjEwNzI4Y2ZiMjM5Y2M2MzA1YjIxMmZkNnAtMSwKKyAgICAweDEuY2MzMjUycDE4CisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgMHgxLmU1MGU1MjQ2MTA3MjhjZmIyMzljYzYzMDViMjEyZmQ2cC0xLAorICAgIC0weDEuY2MzMjUycDE4CisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgLTB4MS42YTY5ZTdiYjIxYjUyMDMwOTY0YmMyMWNlZDA3N2M3MXAxOSwKKyAgICAweDEuZDM4YTJhcDE5CisgIH0sCisgIHsgLy8gRW50cnkgMTk3CisgICAgMHgxLjZhNjllN2JiMjFiNTIwMzA5NjRiYzIxY2VkMDc3YzcxcDE5LAorICAgIC0weDEuZDM4YTJhcDE5CisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLjY1MjliZjgxYjk1OGNhNzgxY2RhYWM3Y2VjNmU2MzZlcDAsCisgICAgMHgxLmRmMDY0OHAyNAorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIC0weDEuNjUyOWJmODFiOTU4Y2E3ODFjZGFhYzdjZWM2ZTYzNmVwMCwKKyAgICAtMHgxLmRmMDY0OHAyNAorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIDB4MS42NTllNDNiNDMxNWYyMWJhNWU3MDQ4YjFkOGQ3ODE1Y3AwLAorICAgIDB4MS5kZjIyMDRwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLjY1OWU0M2I0MzE1ZjIxYmE1ZTcwNDhiMWQ4ZDc4MTVjcDAsCisgICAgLTB4MS5kZjIyMDRwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAtMHgxLjcxYTU4MGZmYzRlMTY3YWUwZWY4YjAyZDVkMjdjOTlkcC0xLAorICAgIDB4MS5kZjM0cDI0CisgIH0sCisgIHsgLy8gRW50cnkgMjAzCisgICAgMHgxLjcxYTU4MGZmYzRlMTY3YWUwZWY4YjAyZDVkMjdjOTlkcC0xLAorICAgIC0weDEuZGYzNHAyNAorICB9LAorICB7IC8vIEVudHJ5IDIwNAorICAgIDB4MS5lY2YxMTkwMDAwMTdhMmNhZWY0MjkwYjRkNmM2Mzc4NXAtNCwKKyAgICAweDEuZWE5NTFhcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgLTB4MS5lY2YxMTkwMDAwMTdhMmNhZWY0MjkwYjRkNmM2Mzc4NXAtNCwKKyAgICAtMHgxLmVhOTUxYXAtNAorICB9LAorICB7IC8vIEVudHJ5IDIwNgorICAgIDB4MS5jY2Q1NTgyMWZhZDY5NzU1YzJkODI0YmUyYmZkNGM2NHAtMSwKKyAgICAweDEuZWZlZGM2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLmNjZDU1ODIxZmFkNjk3NTVjMmQ4MjRiZTJiZmQ0YzY0cC0xLAorICAgIC0weDEuZWZlZGM2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAweDEuZDY5ODFlZmZmZmYyNTQ5NjM0Njg2YTI0ZGZkYTc3Y2VwLTEsCisgICAgMHgxLmYxNDNhMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgLTB4MS5kNjk4MWVmZmZmZjI1NDk2MzQ2ODZhMjRkZmRhNzdjZXAtMSwKKyAgICAtMHgxLmYxNDNhMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLmRiYTRkMTEyNGE3OGE2ODAzYTA5NjVhZjBhYjc5Zjg4cDMsCisgICAgMHgxLmYyNWIwNnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgLTB4MS5kYmE0ZDExMjRhNzhhNjgwM2EwOTY1YWYwYWI3OWY4OHAzLAorICAgIC0weDEuZjI1YjA2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTIKKyAgICAtMHgxLjZkZmNiYWZmZDc4MDIzZWNmYWJiZjdjY2YwYTBlNGI0cC0xLAorICAgIDB4MS5mMzIyMThwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAweDEuNmRmY2JhZmZkNzgwMjNlY2ZhYmJmN2NjZjBhMGU0YjRwLTEsCisgICAgLTB4MS5mMzIyMThwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTQKKyAgICAtMHgxLmVjMzVjZjAwMDA2MTA3OTI5NWVhZDcxNDg5MmRiMWNhcDEsCisgICAgMHgxLmY0NGRiY3A1OAorICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS5lYzM1Y2YwMDAwNjEwNzkyOTVlYWQ3MTQ4OTJkYjFjYXAxLAorICAgIC0weDEuZjQ0ZGJjcDU4CisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLmRiMDZjMTBkMmE5NTk3MTViYzBhMmU3NWU2ZGEwOTNicDQsCisgICAgMHgxLmY0N2ZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS5kYjA2YzEwZDJhOTU5NzE1YmMwYTJlNzVlNmRhMDkzYnA0LAorICAgIC0weDEuZjQ3ZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuZmZmZmViNTU2NDNiOWE2NDhjMjcyMGJkZTFkMjI3NjRwLTEsCisgICAgMHgxLmY2YTdhMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjE5CisgICAgLTB4MS5mZmZmZWI1NTY0M2I5YTY0OGMyNzIwYmRlMWQyMjc2NHAtMSwKKyAgICAtMHgxLmY2YTdhMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLmMwYTU3MGZmZmZkMzc5ZDA5NzJlYTc4Y2QwNDBjMzA0cC0zLAorICAgIDB4MS5mNmRlZDhwOAorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIC0weDEuYzBhNTcwZmZmZmQzNzlkMDk3MmVhNzhjZDA0MGMzMDRwLTMsCisgICAgLTB4MS5mNmRlZDhwOAorICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIC0weDEuY2RmMThkMDEyMzQ4MDlhNjg5NTMxNWU5ZGU1OWQ4NjRwLTEsCisgICAgMHgxLmY3ZmZiZXAxNQorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIDB4MS5jZGYxOGQwMTIzNDgwOWE2ODk1MzE1ZTlkZTU5ZDg2NHAtMSwKKyAgICAtMHgxLmY3ZmZiZXAxNQorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIC0weDEuODJmMTk2ZmI2MGE4MWRjM2I0ZGNiYmM4MzFhYjhmODVwLTEsCisgICAgMHgxLmY3ZmZmZXA0NworICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS44MmYxOTZmYjYwYTgxZGMzYjRkY2JiYzgzMWFiOGY4NXAtMSwKKyAgICAtMHgxLmY3ZmZmZXA0NworICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS42YzAzNTkwZjNmZTNiN2QyOWU4OWVlMGU2NWZjOWIxZXAwLAorICAgIDB4MS5mODdkNThwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAtMHgxLjZjMDM1OTBmM2ZlM2I3ZDI5ZTg5ZWUwZTY1ZmM5YjFlcDAsCisgICAgLTB4MS5mODdkNThwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAtMHgxLmM3YWU2ZTljMTQ1YjhkNTRmNzcxOTg5M2ZhMDM4NDlmcDI3LAorICAgIDB4MS5mOWNiZTJwNworICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS5jN2FlNmU5YzE0NWI4ZDU0Zjc3MTk4OTNmYTAzODQ5ZnAyNywKKyAgICAtMHgxLmY5Y2JlMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgMHgxLjZkMjkxMDAwNTE2MWIyYmZhNjExMzRkMGZiYzllOWMwcDAsCisgICAgMHgxLmZkODZiY3AyNAorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIC0weDEuNmQyOTEwMDA1MTYxYjJiZmE2MTEzNGQwZmJjOWU5YzBwMCwKKyAgICAtMHgxLmZkODZiY3AyNAorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIDB4MS42YzhmOGQwYzNhZDRiYmI2MzlhM2YzYTk0MjM3ZjY5ZnAwLAorICAgIDB4MS5mZWZhNGFwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAtMHgxLjZjOGY4ZDBjM2FkNGJiYjYzOWEzZjNhOTQyMzdmNjlmcDAsCisgICAgLTB4MS5mZWZhNGFwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAweDEuMDBlNWI1ZmZmYTEzZjdkOWM0YjBiNTJmZTExYTMzOWJwLTMsCisgICAgMHgxLmZmMWZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0weDEuMDBlNWI1ZmZmYTEzZjdkOWM0YjBiNTJmZTExYTMzOWJwLTMsCisgICAgLTB4MS5mZjFmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuZmYzZjQxZjAxYzViMzYwY2NlNzViNjc4NzdmZmQ2NzdwMCwKKyAgICAweDEuZmY3ZmZlcDQxCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS5mZjNmNDFmMDFjNWIzNjBjY2U3NWI2Nzg3N2ZmZDY3N3AwLAorICAgIC0weDEuZmY3ZmZlcDQxCisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgLTB4MS44NmRkNWUwMGQ3ZWRjNzI2Njk2OWJmNTE5ODQzOGJhYnAwLAorICAgIDB4MS5mZjlmZmVwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzkKKyAgICAweDEuODZkZDVlMDBkN2VkYzcyNjY5NjliZjUxOTg0MzhiYWJwMCwKKyAgICAtMHgxLmZmOWZmZXAxMgorICB9LAorICB7IC8vIEVudHJ5IDI0MAorICAgIC0weDEuZjhmZTQ1NzlmZGVlMjQ5MWM3ZDg1NzJlYTUxMmZlOTNwNSwKKyAgICAweDEuZmZmYmZlcDQ1CisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLmY4ZmU0NTc5ZmRlZTI0OTFjN2Q4NTcyZWE1MTJmZTkzcDUsCisgICAgLTB4MS5mZmZiZmVwNDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAtMHgxLjg1ZmY0NjJmMGY4NmZmNDQ2NDEzMDVkYTE4ZWE4ZmM4cC0xMywKKyAgICAweDEuZmZmZGYycDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgMHgxLjg1ZmY0NjJmMGY4NmZmNDQ2NDEzMDVkYTE4ZWE4ZmM4cC0xMywKKyAgICAtMHgxLmZmZmRmMnAyMworICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS4zMzkyZTJmZmJjYjI1ZmMxYjAxNmI5MTM2ZTY5YzAwYnAtMiwKKyAgICAweDEuZmZmZGZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAtMHgxLjMzOTJlMmZmYmNiMjVmYzFiMDE2YjkxMzZlNjljMDBicC0yLAorICAgIC0weDEuZmZmZGZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAtMHgxLjJmNmM0YmQyNjA1ZjAzN2Y4NjA5ODE5Zjg2NWE4ZGNicDgsCisgICAgMHgxLmZmZmUzZXA0MQorICB9LAorICB7IC8vIEVudHJ5IDI0NworICAgIDB4MS4yZjZjNGJkMjYwNWYwMzdmODYwOTgxOWY4NjVhOGRjYnA4LAorICAgIC0weDEuZmZmZTNlcDQxCisgIH0sCisgIHsgLy8gRW50cnkgMjQ4CisgICAgLTB4MS41M2EyZTkwZTgxNzcyNzI1NWU2ZGRmNjRlMjhjMDE5Y3AtOSwKKyAgICAweDEuZmZmZTdlcDEwMworICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIDB4MS41M2EyZTkwZTgxNzcyNzI1NWU2ZGRmNjRlMjhjMDE5Y3AtOSwKKyAgICAtMHgxLmZmZmU3ZXAxMDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAtMHgxLmIzNDY3NmYwOTViNWIxYTMyNTQyNmNkZjQyYzA0Nzk5cDIsCisgICAgMHgxLmZmZmY3ZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLmIzNDY3NmYwOTViNWIxYTMyNTQyNmNkZjQyYzA0Nzk5cDIsCisgICAgLTB4MS5mZmZmN2VwMgorICB9LAorICB7IC8vIEVudHJ5IDI1MgorICAgIDB4MS5mNjQwZDk0ZTYyNDFkYjQzNDllMzNiZWQ2N2NiZDNkYnAtMSwKKyAgICAweDEuZmZmZjdlcDExOQorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIC0weDEuZjY0MGQ5NGU2MjQxZGI0MzQ5ZTMzYmVkNjdjYmQzZGJwLTEsCisgICAgLTB4MS5mZmZmN2VwMTE5CisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLjUyNmMyNjliZGRhOGE4OWQ5MDcwNjg3MGYzODAxZWFmcC0xLAorICAgIDB4MS5mZmZmZWVwNAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIC0weDEuNTI2YzI2OWJkZGE4YTg5ZDkwNzA2ODcwZjM4MDFlYWZwLTEsCisgICAgLTB4MS5mZmZmZWVwNAorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIC0weDEuYTM3NTkzYzEwNWUxNDYyYzJhMzcyNjA2MDM0ODNkYTZwMSwKKyAgICAweDEuZmZmZmZjcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLmEzNzU5M2MxMDVlMTQ2MmMyYTM3MjYwNjAzNDgzZGE2cDEsCisgICAgLTB4MS5mZmZmZmNwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTkKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMjYwCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAtMHgxLjAwMDAwMnAtMTI2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjQKKyAgICAweDEuMDAwMDAycC0xMjYsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjY1CisgICAgLTB4MS5wLTEyNiwKKyAgICAtMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIC0weDEuZmZmZmZjcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIDB4MS5mZmZmZmNwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEuZmZmZmZjcC0xMjcsCisgICAgMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgLTB4MS5mZmZmZmNwLTEyNywKKyAgICAtMHgxLmZmZmZmY3AtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIC0weDEucC0xMjYsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS4wMDAwMDJwLTEyNiwKKyAgICAweDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAtMHgxLjAwMDAwMnAtMTI2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuOTk5OTlhNTc2MTlmNjc5YjYxOTNhZjhhMGE3YTg3NzhwLTEzLAorICAgIDB4MS45OTk5OWFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgLTB4MS45OTk5OWE1NzYxOWY2NzliNjE5M2FmOGEwYTdhODc3OHAtMTMsCisgICAgLTB4MS45OTk5OWFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjk5OTk5YjVkODY3ZWFhZGQwMzA1NTg3Mzk5OTA1MzExcC0xMiwKKyAgICAweDEuOTk5OTlhcC0xMgorICB9LAorICB7IC8vIEVudHJ5IDI3OAorICAgIC0weDEuOTk5OTliNWQ4NjdlYWFkZDAzMDU1ODczOTk5MDUzMTFwLTEyLAorICAgIC0weDEuOTk5OTlhcC0xMgorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS4zMzMzMzY0ZGQyZmI5NDk2NDViZWE5OThjYmMxZWU3MnAtMTEsCisgICAgMHgxLjMzMzMzNHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAtMHgxLjMzMzMzNjRkZDJmYjk0OTY0NWJlYTk5OGNiYzFlZTcycC0xMSwKKyAgICAtMHgxLjMzMzMzNHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAweDEuOTk5OTlmNzYxYTBiNzI2YzE4YjAwYzY0OTZjYmUxMGRwLTExLAorICAgIDB4MS45OTk5OWFwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgLTB4MS45OTk5OWY3NjFhMGI3MjZjMThiMDBjNjQ5NmNiZTEwZHAtMTEsCisgICAgLTB4MS45OTk5OWFwLTExCisgIH0sCisgIHsgLy8gRW50cnkgMjgzCisgICAgMHgxLjAwMDAwNTU1NTU3Nzc3Nzg1NDg1NGRlZGMyOGVhZDUxcC0xMCwKKyAgICAweDEucC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI4NAorICAgIC0weDEuMDAwMDA1NTU1NTc3Nzc3ODU0ODU0ZGVkYzI4ZWFkNTFwLTEwLAorICAgIC0weDEucC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIDB4MS4zMzMzM2QzNzRjMmUwNWQxMDgxNjEzNzgzODlmYzg0ZnAtMTAsCisgICAgMHgxLjMzMzMzNHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAtMHgxLjMzMzMzZDM3NGMyZTA1ZDEwODE2MTM3ODM4OWZjODRmcC0xMCwKKyAgICAtMHgxLjMzMzMzNHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAweDEuNjY2Njc2YTI3YTZkODIxNGQxOThiMjMyMWVmOWE5ZGNwLTEwLAorICAgIDB4MS42NjY2NjhwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgLTB4MS42NjY2NzZhMjdhNmQ4MjE0ZDE5OGIyMzIxZWY5YTlkY3AtMTAsCisgICAgLTB4MS42NjY2NjhwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgMHgxLjk5OTliMWQ4Njk4YzI0Y2ZlM2I5MGZmZDAwNmZmZGNhcC0xMCwKKyAgICAweDEuOTk5OTljcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIC0weDEuOTk5OWIxZDg2OThjMjRjZmUzYjkwZmZkMDA2ZmZkY2FwLTEwLAorICAgIC0weDEuOTk5OTljcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIDB4MS5jY2NjZWIxYWEyMTlmNzFiYjE5MjA4ZDc0YTczOWJiMXAtMTAsCisgICAgMHgxLmNjY2NjY3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAtMHgxLmNjY2NlYjFhYTIxOWY3MWJiMTkyMDhkNzRhNzM5YmIxcC0xMCwKKyAgICAtMHgxLmNjY2NjY3AtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTMKKyAgICAweDEuMDY2N2Q1OTY4YmJiYmU0MDM3MDI0YjljOTNmN2IwNDlwLTcsCisgICAgMHgxLjA2NjY2NnAtNworICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIC0weDEuMDY2N2Q1OTY4YmJiYmU0MDM3MDI0YjljOTNmN2IwNDlwLTcsCisgICAgLTB4MS4wNjY2NjZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEuY2NkNDkyZDAzNWEyMjc3NThiOGMzMGQ3OWIxNjg4MjZwLTcsCisgICAgMHgxLmNjY2NjY3AtNworICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIC0weDEuY2NkNDkyZDAzNWEyMjc3NThiOGMzMGQ3OWIxNjg4MjZwLTcsCisgICAgLTB4MS5jY2NjY2NwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuNDlhNGZhNjhlOTBkMjI4ZjQ0NTAyNmViMjlhZGNlZmRwLTYsCisgICAgMHgxLjQ5OTk5OHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIC0weDEuNDlhNGZhNjhlOTBkMjI4ZjQ0NTAyNmViMjlhZGNlZmRwLTYsCisgICAgLTB4MS40OTk5OThwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAweDEuYWNlNWRlMDkwNjAzZmRhOGY1MTlhZmVjZTA1YzE3ZWFwLTYsCisgICAgMHgxLmFjY2NjY3AtNgorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIC0weDEuYWNlNWRlMDkwNjAzZmRhOGY1MTlhZmVjZTA1YzE3ZWFwLTYsCisgICAgLTB4MS5hY2NjY2NwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAweDEuMDgxNzY3ZmQzY2I2ODVmN2IwNjkxNDZjZTMzMzM4NTFwLTUsCisgICAgMHgxLjA4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgLTB4MS4wODE3NjdmZDNjYjY4NWY3YjA2OTE0NmNlMzMzMzg1MXAtNSwKKyAgICAtMHgxLjA4cC01CisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgMHgxLjM5YzBkNzQ1MzM0YTMzODdkNjcyZTRhMDU2MjRiY2E1cC01LAorICAgIDB4MS4zOTk5OWFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAtMHgxLjM5YzBkNzQ1MzM0YTMzODdkNjcyZTRhMDU2MjRiY2E1cC01LAorICAgIC0weDEuMzk5OTlhcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzA1CisgICAgMHgxLjZiNzAyYzYyN2ZjMDBiNzc3ZWE4NjYxY2NlMzYwNjFjcC01LAorICAgIDB4MS42YjMzMzRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDYKKyAgICAtMHgxLjZiNzAyYzYyN2ZjMDBiNzc3ZWE4NjYxY2NlMzYwNjFjcC01LAorICAgIC0weDEuNmIzMzM0cC01CisgIH0sCisgIHsgLy8gRW50cnkgMzA3CisgICAgMHgxLjlkMjY1NzRjZDg0NzU5YmZmZjUxZDhiYjE4NTM4YTBkcC01LAorICAgIDB4MS45Y2NjY2VwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAtMHgxLjlkMjY1NzRjZDg0NzU5YmZmZjUxZDhiYjE4NTM4YTBkcC01LAorICAgIC0weDEuOWNjY2NlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgMHgxLmNlZTQ0NjdlMTViYjdlZjU5NjU4YThlZGRjMTk1MTY3cC01LAorICAgIDB4MS5jZTY2NjZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAtMHgxLmNlZTQ0NjdlMTViYjdlZjU5NjU4YThlZGRjMTk1MTY3cC01LAorICAgIC0weDEuY2U2NjY2cC01CisgIH0sCisgIHsgLy8gRW50cnkgMzExCisgICAgMHgxLmExZWFlZDdhYTYyYTc0MGMwYjJlMDliY2QwZjczNWI1cC0xLAorICAgIDB4MS41ZTdmYzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTIKKyAgICAtMHgxLmExZWFlZDdhYTYyYTc0MGMwYjJlMDliY2QwZjczNWI1cC0xLAorICAgIC0weDEuNWU3ZmM0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgMHgxLmQ5M2I4OTFjYmNiMTVhYWM4YjU3OTZhMGExNmJmMjllcDEsCisgICAgMHgxLjRlN2ZjNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgLTB4MS5kOTNiODkxY2JjYjE1YWFjOGI1Nzk2YTBhMTZiZjI5ZXAxLAorICAgIC0weDEuNGU3ZmM0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAtMHgxLjU2M2FkMDYzNDg2Yzc5NzY1M2E2ODk1NWMwYmIxYzBicDEsCisgICAgMHgxLmVkYmZhNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLjU2M2FkMDYzNDg2Yzc5NzY1M2E2ODk1NWMwYmIxYzBicDEsCisgICAgLTB4MS5lZGJmYTZwMAorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIC0weDEuNTc2Yjc4OWQ1NDRiNmQwMzdjM2I3MTE5ZmQ2ZGQ2cC0xLAorICAgIDB4MS40NjdmYzRwMQorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS41NzZiNzg5ZDU0NGI2ZDAzN2MzYjcxMTlmZDZkZDZwLTEsCisgICAgLTB4MS40NjdmYzRwMQorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIDB4MS4wMDE1MDY1MmIyZDc5MzFlMGM4Nzg4NzViOWY0YmE4MnAtNSwKKyAgICAweDEuOTYxZmI0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjAKKyAgICAtMHgxLjAwMTUwNjUyYjJkNzkzMWUwYzg3ODg3NWI5ZjRiYTgycC01LAorICAgIC0weDEuOTYxZmI0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEuODdlOTg3YjZlNTA3MWRiZDNmNzU1YTc2YTI3ZDhmYzhwLTEsCisgICAgMHgxLmU1YmZhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgLTB4MS44N2U5ODdiNmU1MDcxZGJkM2Y3NTVhNzZhMjdkOGZjOHAtMSwKKyAgICAtMHgxLmU1YmZhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgMHgxLmE0OWU1NWJjZTFjODk5MTIzMjM4N2VjZDExMjQ2OThhcDEsCisgICAgMHgxLjFhYWZjYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgLTB4MS5hNDllNTViY2UxYzg5OTEyMzIzODdlY2QxMTI0Njk4YXAxLAorICAgIC0weDEuMWFhZmNhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAtMHgxLjc5Y2YwMzEzNWE5MzY3OWQ1YWEyZTFkY2M1YWRlZGFmcDEsCisgICAgMHgxLjQyN2ZjMnAyCisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgMHgxLjc5Y2YwMzEzNWE5MzY3OWQ1YWEyZTFkY2M1YWRlZGFmcDEsCisgICAgLTB4MS40MjdmYzJwMgorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIC0weDEuNmYxZjg2ZmRiMjBiYzk5MjM2MjdiOTRkNzcxZjUzODhwLTEsCisgICAgMHgxLjZhNGZiYXAyCisgIH0sCisgIHsgLy8gRW50cnkgMzI4CisgICAgMHgxLjZmMWY4NmZkYjIwYmM5OTIzNjI3Yjk0ZDc3MWY1Mzg4cC0xLAorICAgIC0weDEuNmE0ZmJhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAtMHgxLjY3NzQ3Y2E4MDI4MjFjNjZjODdhMDg2NjM4ZjI4ZDM2cC0xLAorICAgIDB4MS42YWYyZjBwMgorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIDB4MS42Nzc0N2NhODAyODIxYzY2Yzg3YTA4NjYzOGYyOGQzNnAtMSwKKyAgICAtMHgxLjZhZjJmMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgLTB4MS42MjZhMzAyOThkZjBjNDJjMmNmN2E4ZjljMTY2ZDU1ZHAxLAorICAgIDB4MS40M2M2MmFwMgorICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIDB4MS42MjZhMzAyOThkZjBjNDJjMmNmN2E4ZjljMTY2ZDU1ZHAxLAorICAgIC0weDEuNDNjNjJhcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAweDEuZDZhZDhhMjJhNDQwN2NjNjhkZjIwY2RhMWVhMWM2YWFwMSwKKyAgICAweDEuMWM5OTY0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAtMHgxLmQ2YWQ4YTIyYTQ0MDdjYzY4ZGYyMGNkYTFlYTFjNmFhcDEsCisgICAgLTB4MS4xYzk5NjRwMgorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIDB4MS5hOTRkMDBhMTcxMGQ5YmNjN2I4MDQ4MWY0Mjg1N2QwNXAtMSwKKyAgICAweDEuZWFkOTNjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzYKKyAgICAtMHgxLmE5NGQwMGExNzEwZDliY2M3YjgwNDgxZjQyODU3ZDA1cC0xLAorICAgIC0weDEuZWFkOTNjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAweDEuNGNiOWY0ZDMxNWE5OTViMjhiZmJkNmU2YTA5MDU3MzhwLTQsCisgICAgMHgxLjljN2ZiMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgLTB4MS40Y2I5ZjRkMzE1YTk5NWIyOGJmYmQ2ZTZhMDkwNTczOHAtNCwKKyAgICAtMHgxLjljN2ZiMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzM5CisgICAgLTB4MS4yY2I2ZjNiYTUxY2Q0Y2EzODVkN2Y0YTc1NjdjM2EwYnAtMSwKKyAgICAweDEuNGUyNjI0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAweDEuMmNiNmYzYmE1MWNkNGNhMzg1ZDdmNGE3NTY3YzNhMGJwLTEsCisgICAgLTB4MS40ZTI2MjRwMQorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIC0weDEuMThkOTM5OWE4MjkwYjNmOGI0MmE0YWZjMWY0YjIxZGVwMSwKKyAgICAweDEuZmY5OTMycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDIKKyAgICAweDEuMThkOTM5OWE4MjkwYjNmOGI0MmE0YWZjMWY0YjIxZGVwMSwKKyAgICAtMHgxLmZmOTkzMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzQzCisgICAgMHgxLjU2ZmQ5NGIwYzA2ODE2MTNkMzgzMTYwODQ1N2Y1YmY2cDIsCisgICAgMHgxLjYyZTYxY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgLTB4MS41NmZkOTRiMGMwNjgxNjEzZDM4MzE2MDg0NTdmNWJmNnAyLAorICAgIC0weDEuNjJlNjFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAweDEuZjRhZDM3ZjEzZTgxODY0MWZjMTU1NWJmNzhlMGU5NDJwLTEsCisgICAgMHgxLjhjNjYyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIC0weDEuZjRhZDM3ZjEzZTgxODY0MWZjMTU1NWJmNzhlMGU5NDJwLTEsCisgICAgLTB4MS44YzY2MmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuNmE3ZTMwYWQ4NDYwZjFhNzEwNDc5ZTJkYjk0OTVjOWNwMywKKyAgICAtMHgxLmE4YWExY3AwCisgIH0sCisgIHsgLy8gRW50cnkgMzQ4CisgICAgLTB4MS42YTdlMzBhZDg0NjBmMWE3MTA0NzllMmRiOTQ5NWM5Y3AzLAorICAgIDB4MS5hOGFhMWNwMAorICB9LAorICB7IC8vIEVudHJ5IDM0OQorICAgIDB4MS4wZDcxZmZhYzFkNWU2YWE3NTNjZjgwNGEyYThjMWY1YnA2LAorICAgIC0weDEuOTVlYzhhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTAKKyAgICAtMHgxLjBkNzFmZmFjMWQ1ZTZhYTc1M2NmODA0YTJhOGMxZjVicDYsCisgICAgMHgxLjk1ZWM4YXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgLTB4MS4xMWQ4NDk4MDczZTFmNGI3NzZmZTU2NzJhYmIxZjU0YXA0LAorICAgIC0weDEuODMyZWY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTIKKyAgICAweDEuMTFkODQ5ODA3M2UxZjRiNzc2ZmU1NjcyYWJiMWY1NGFwNCwKKyAgICAweDEuODMyZWY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAtMHgxLmUzYTM0YjMyNzA4ODgzYTg1Nzg4MDVmODRlYTAzYzZhcDIsCisgICAgLTB4MS43MDcxNjZwMAorICB9LAorICB7IC8vIEVudHJ5IDM1NAorICAgIDB4MS5lM2EzNGIzMjcwODg4M2E4NTc4ODA1Zjg0ZWEwM2M2YXAyLAorICAgIDB4MS43MDcxNjZwMAorICB9LAorICB7IC8vIEVudHJ5IDM1NQorICAgIC0weDEuMzQyOWQyNjM0MDU0ZWFhZTNiZGJlZTk0YTZjZWMxN2ZwMiwKKyAgICAtMHgxLjVkYjNkNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgMHgxLjM0MjlkMjYzNDA1NGVhYWUzYmRiZWU5NGE2Y2VjMTdmcDIsCisgICAgMHgxLjVkYjNkNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgLTB4MS5jMDhjOTU3YmJiNDVhY2FmYTg1NmJmZDc5MmNiZjY2M3AxLAorICAgIC0weDEuNGFmNjQycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTgKKyAgICAweDEuYzA4Yzk1N2JiYjQ1YWNhZmE4NTZiZmQ3OTJjYmY2NjNwMSwKKyAgICAweDEuNGFmNjQycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAtMHgxLjVkNjAyYjBkMGJkZGE4MjUyMjFhNTMzNjljNTMzOGQ3cDEsCisgICAgLTB4MS4zODM4YjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS41ZDYwMmIwZDBiZGRhODI1MjIxYTUzMzY5YzUzMzhkN3AxLAorICAgIDB4MS4zODM4YjBwMAorICB9LAorICB7IC8vIEVudHJ5IDM2MQorICAgIC0weDEuMWI0ODk0ZTQ5ODcyMGVjMDE3MzVhMDJlNTVlZWZhZDhwMSwKKyAgICAtMHgxLjI1N2IxZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgMHgxLjFiNDg5NGU0OTg3MjBlYzAxNzM1YTAyZTU1ZWVmYWQ4cDEsCisgICAgMHgxLjI1N2IxZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgLTB4MS5kNzRjYjIwMGFiNTkwNDAyOTA2MjdhOWIyZmZlMjljZnAwLAorICAgIC0weDEuMTJiZDkycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjQKKyAgICAweDEuZDc0Y2IyMDBhYjU5MDQwMjkwNjI3YTliMmZmZTI5Y2ZwMCwKKyAgICAweDEuMTJiZDkycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjUKKyAgICAtMHgxLjZiZTcwMTlmMzRkMzRmMjVjYjBjMTRkMGM3YmM3YjMycDAsCisgICAgLTB4MS5lYTVjM2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAweDEuNmJlNzAxOWYzNGQzNGYyNWNiMGMxNGQwYzdiYzdiMzJwMCwKKyAgICAweDEuZWE1YzNlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgLTB4MS40ZDBkZWZiY2I0OGFhNzVjZTEzZTFiODJmMWZjYjA0OXAwLAorICAgIC0weDEuZDRiODdjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzY4CisgICAgMHgxLjRkMGRlZmJjYjQ4YWE3NWNlMTNlMWI4MmYxZmNiMDQ5cDAsCisgICAgMHgxLmQ0Yjg3Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM2OQorICAgIC0weDEuMzE2Yzg3ZmRiNzU5OWNiNTczNTRlNGI5OWYzOGQ3ZmZwMCwKKyAgICAtMHgxLmJmMTRiYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIDB4MS4zMTZjODdmZGI3NTk5Y2I1NzM1NGU0Yjk5ZjM4ZDdmZnAwLAorICAgIDB4MS5iZjE0YmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzEKKyAgICAtMHgxLjE4NzI5ZGZlNTFkZmNmNzY3Zjc5ZjM5YjY4OWFlOTVlcDAsCisgICAgLTB4MS5hOTcwZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAweDEuMTg3MjlkZmU1MWRmY2Y3NjdmNzlmMzliNjg5YWU5NWVwMCwKKyAgICAweDEuYTk3MGY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgLTB4MS4wMWFlZWE5Y2JlOWE4ZmI0Y2NlZjk5YWQ5NjFiNmFkOHAwLAorICAgIC0weDEuOTNjZDM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzc0CisgICAgMHgxLjAxYWVlYTljYmU5YThmYjRjY2VmOTlhZDk2MWI2YWQ4cDAsCisgICAgMHgxLjkzY2QzNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3NQorICAgIC0weDEuZDk4ZTM3M2ZhYWQ3ZGEzZDZjODg2NWE3ZmY5YmE3ZjNwLTEsCisgICAgLTB4MS43ZTI5NzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzYKKyAgICAweDEuZDk4ZTM3M2ZhYWQ3ZGEzZDZjODg2NWE3ZmY5YmE3ZjNwLTEsCisgICAgMHgxLjdlMjk3NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3NworICAgIC0weDEuYjJlNDZhZjcwNGViNzVkMWZhYjA3NjZhZmM3NDcwM2ZwLTEsCisgICAgLTB4MS42ODg1YjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzgKKyAgICAweDEuYjJlNDZhZjcwNGViNzVkMWZhYjA3NjZhZmM3NDcwM2ZwLTEsCisgICAgMHgxLjY4ODViMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM3OQorICAgIC0weDEuOGVlOTBiN2RjODliMWY5OTlhZTZkYmI0MWJhY2ViMGRwLTEsCisgICAgLTB4MS41MmUxZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODAKKyAgICAweDEuOGVlOTBiN2RjODliMWY5OTlhZTZkYmI0MWJhY2ViMGRwLTEsCisgICAgMHgxLjUyZTFmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM4MQorICAgIC0weDEuNmQzOTVmMDU4MjBiNDJmNTEyMjNkYWI4ODQzNjdlNzFwLTEsCisgICAgLTB4MS4zZDNlMzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODIKKyAgICAweDEuNmQzOTVmMDU4MjBiNDJmNTEyMjNkYWI4ODQzNjdlNzFwLTEsCisgICAgMHgxLjNkM2UzNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIC0weDEuMjRlM2RmYWQ0Y2UxNDkzY2FhMTIzODY0Y2I0ZjQ1ZDNwLTEsCisgICAgLTB4MS4wYTBiMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODQKKyAgICAweDEuMjRlM2RmYWQ0Y2UxNDkzY2FhMTIzODY0Y2I0ZjQ1ZDNwLTEsCisgICAgMHgxLjBhMGIwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDM4NQorICAgIC0weDEuZmRiZDVlNTNlMGE2ZmM5YzhiODAzMjg5ZjFjM2RiYjdwLTIsCisgICAgLTB4MS5kOGY3MjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODYKKyAgICAweDEuZmRiZDVlNTNlMGE2ZmM5YzhiODAzMjg5ZjFjM2RiYjdwLTIsCisgICAgMHgxLmQ4ZjcyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM4NworICAgIC0weDEuYjVmM2Q2MWM1NGVlNGY2NTg1ZTliZmY0ODljMDAxODJwLTIsCisgICAgLTB4MS45ZGQ4M2NwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODgKKyAgICAweDEuYjVmM2Q2MWM1NGVlNGY2NTg1ZTliZmY0ODljMDAxODJwLTIsCisgICAgMHgxLjlkZDgzY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDM4OQorICAgIC0weDEuNzFhMGY5MDdjNjYxZGFmNDkwM2I3YmJjMDE1YzVjMTRwLTIsCisgICAgLTB4MS42MmI5NThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTAKKyAgICAweDEuNzFhMGY5MDdjNjYxZGFmNDkwM2I3YmJjMDE1YzVjMTRwLTIsCisgICAgMHgxLjYyYjk1OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM5MQorICAgIC0weDEuMzAxOTA5NDFlNjk5ZmRiMjExNWE5ZWY2YmY4MmQ0NTVwLTIsCisgICAgLTB4MS4yNzlhNzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTIKKyAgICAweDEuMzAxOTA5NDFlNjk5ZmRiMjExNWE5ZWY2YmY4MmQ0NTVwLTIsCisgICAgMHgxLjI3OWE3NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM5MworICAgIC0weDEuZTE4ZTkzODY3Y2FmNjdlZmNhYTE5ODIxODk4ZDUwY2FwLTMsCisgICAgLTB4MS5kOGY3MjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTQKKyAgICAweDEuZTE4ZTkzODY3Y2FmNjdlZmNhYTE5ODIxODk4ZDUwY2FwLTMsCisgICAgMHgxLmQ4ZjcyMHAtMworICB9LAorICB7IC8vIEVudHJ5IDM5NQorICAgIC0weDEuNjY1MDc3ZGRhODIyYjE4OWE1NmEwMmUxNWMwNGQ1ZDRwLTMsCisgICAgLTB4MS42MmI5NThwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAweDEuNjY1MDc3ZGRhODIyYjE4OWE1NmEwMmUxNWMwNGQ1ZDRwLTMsCisgICAgMHgxLjYyYjk1OHAtMworICB9LAorICB7IC8vIEVudHJ5IDM5NworICAgIC0weDEuZGIxNDIzZDg3N2IyNTBhZjZlYTU1NDY5NjA3NDNkNzJwLTQsCisgICAgLTB4MS5kOGY3MjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTgKKyAgICAweDEuZGIxNDIzZDg3N2IyNTBhZjZlYTU1NDY5NjA3NDNkNzJwLTQsCisgICAgMHgxLmQ4ZjcyMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM5OQorICAgIC0weDEuZDk3ZGQ2NDNmZmVlZjU3ZDBhMjI1MDUxOTc4ZWM4YWRwLTUsCisgICAgLTB4MS5kOGY3MjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDAKKyAgICAweDEuZDk3ZGQ2NDNmZmVlZjU3ZDBhMjI1MDUxOTc4ZWM4YWRwLTUsCisgICAgMHgxLmQ4ZjcyMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIDB4MS5kOTdkZDY0M2ZmZWVmNTdkMGEyMjUwNTE5NzhlYzhhZHAtNSwKKyAgICAweDEuZDhmNzIwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDAyCisgICAgLTB4MS5kOTdkZDY0M2ZmZWVmNTdkMGEyMjUwNTE5NzhlYzhhZHAtNSwKKyAgICAtMHgxLmQ4ZjcyMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIDB4MS5kYjE0MjNkODc3YjI1MGFmNmVhNTU0Njk2MDc0M2Q3MnAtNCwKKyAgICAweDEuZDhmNzIwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDA0CisgICAgLTB4MS5kYjE0MjNkODc3YjI1MGFmNmVhNTU0Njk2MDc0M2Q3MnAtNCwKKyAgICAtMHgxLmQ4ZjcyMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDQwNQorICAgIDB4MS42NjUwNzdkZGE4MjJiMTg5YTU2YTAyZTE1YzA0ZDVkNHAtMywKKyAgICAweDEuNjJiOTU4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgLTB4MS42NjUwNzdkZGE4MjJiMTg5YTU2YTAyZTE1YzA0ZDVkNHAtMywKKyAgICAtMHgxLjYyYjk1OHAtMworICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIDB4MS5lMThlOTM4NjdjYWY2N2VmY2FhMTk4MjE4OThkNTBjYXAtMywKKyAgICAweDEuZDhmNzIwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDA4CisgICAgLTB4MS5lMThlOTM4NjdjYWY2N2VmY2FhMTk4MjE4OThkNTBjYXAtMywKKyAgICAtMHgxLmQ4ZjcyMHAtMworICB9LAorICB7IC8vIEVudHJ5IDQwOQorICAgIDB4MS4zMDE5MDk0MWU2OTlmZGIyMTE1YTllZjZiZjgyZDQ1NXAtMiwKKyAgICAweDEuMjc5YTc0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDEwCisgICAgLTB4MS4zMDE5MDk0MWU2OTlmZGIyMTE1YTllZjZiZjgyZDQ1NXAtMiwKKyAgICAtMHgxLjI3OWE3NHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQxMQorICAgIDB4MS43MWEwZjkwN2M2NjFkYWY0OTAzYjdiYmMwMTVjNWMxNHAtMiwKKyAgICAweDEuNjJiOTU4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgLTB4MS43MWEwZjkwN2M2NjFkYWY0OTAzYjdiYmMwMTVjNWMxNHAtMiwKKyAgICAtMHgxLjYyYjk1OHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIDB4MS5iNWYzZDYxYzU0ZWU0ZjY1ODVlOWJmZjQ4OWMwMDE4MnAtMiwKKyAgICAweDEuOWRkODNjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDE0CisgICAgLTB4MS5iNWYzZDYxYzU0ZWU0ZjY1ODVlOWJmZjQ4OWMwMDE4MnAtMiwKKyAgICAtMHgxLjlkZDgzY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDQxNQorICAgIDB4MS5mZGJkNWU1M2UwYTZmYzljOGI4MDMyODlmMWMzZGJiN3AtMiwKKyAgICAweDEuZDhmNzIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDE2CisgICAgLTB4MS5mZGJkNWU1M2UwYTZmYzljOGI4MDMyODlmMWMzZGJiN3AtMiwKKyAgICAtMHgxLmQ4ZjcyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDQxNworICAgIDB4MS4yNGUzZGZhZDRjZTE0OTNjYWExMjM4NjRjYjRmNDVkM3AtMSwKKyAgICAweDEuMGEwYjAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgLTB4MS4yNGUzZGZhZDRjZTE0OTNjYWExMjM4NjRjYjRmNDVkM3AtMSwKKyAgICAtMHgxLjBhMGIwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIDB4MS42ZDM5NWYwNTgyMGI0MmY1MTIyM2RhYjg4NDM2N2U3MXAtMSwKKyAgICAweDEuM2QzZTM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIwCisgICAgLTB4MS42ZDM5NWYwNTgyMGI0MmY1MTIyM2RhYjg4NDM2N2U3MXAtMSwKKyAgICAtMHgxLjNkM2UzNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQyMQorICAgIDB4MS44ZWU5MTg1OGZiYWFmMmEzNGEzMmRkOTQ3ZmQ3ZTA3NnAtMSwKKyAgICAweDEuNTJlMWY4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDIyCisgICAgLTB4MS44ZWU5MTg1OGZiYWFmMmEzNGEzMmRkOTQ3ZmQ3ZTA3NnAtMSwKKyAgICAtMHgxLjUyZTFmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQyMworICAgIDB4MS5iMmU0NzhiYzliYTczOGRiOTBiMmE0YmMyOTRlY2Y0ZnAtMSwKKyAgICAweDEuNjg4NWJhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDI0CisgICAgLTB4MS5iMmU0NzhiYzliYTczOGRiOTBiMmE0YmMyOTRlY2Y0ZnAtMSwKKyAgICAtMHgxLjY4ODViYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQyNQorICAgIDB4MS5kOThlNDYxN2E4YmQxYTFiYjllMmU5ODlkOGFkMzVjY3AtMSwKKyAgICAweDEuN2UyOTdjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDI2CisgICAgLTB4MS5kOThlNDYxN2E4YmQxYTFiYjllMmU5ODlkOGFkMzVjY3AtMSwKKyAgICAtMHgxLjdlMjk3Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQyNworICAgIDB4MS4wMWFlZjJhYTQxNjU0NWUzOTAwODY0ZjJiMzVkODZhNnAwLAorICAgIDB4MS45M2NkM2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjgKKyAgICAtMHgxLjAxYWVmMmFhNDE2NTQ1ZTM5MDA4NjRmMmIzNWQ4NmE2cDAsCisgICAgLTB4MS45M2NkM2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEuMTg3MmE2Y2IzZGJhMTU2ZGI4ZGM3ODRlOTVkOTZhNDZwMCwKKyAgICAweDEuYTk3MXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIC0weDEuMTg3MmE2Y2IzZGJhMTU2ZGI4ZGM3ODRlOTVkOTZhNDZwMCwKKyAgICAtMHgxLmE5NzFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAweDEuMzE2YzkxYWY0NmIwMTVhOWM5MzFhODE2ZmVkODkwOTJwMCwKKyAgICAweDEuYmYxNGMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDMyCisgICAgLTB4MS4zMTZjOTFhZjQ2YjAxNWE5YzkzMWE4MTZmZWQ4OTA5MnAwLAorICAgIC0weDEuYmYxNGMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgMHgxLjRkMGRmYTgxZTljYzgwNmMxMDE5NGZiYTZiNzY3NzYxcDAsCisgICAgMHgxLmQ0Yjg4NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIC0weDEuNGQwZGZhODFlOWNjODA2YzEwMTk0ZmJhNmI3Njc3NjFwMCwKKyAgICAtMHgxLmQ0Yjg4NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQzNQorICAgIDB4MS42YmU3MDE5ZjM0ZDM0ZjI1Y2IwYzE0ZDBjN2JjN2IzMnAwLAorICAgIDB4MS5lYTVjM2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzYKKyAgICAtMHgxLjZiZTcwMTlmMzRkMzRmMjVjYjBjMTRkMGM3YmM3YjMycDAsCisgICAgLTB4MS5lYTVjM2VwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAweDEuZDc0Y2IyMDBhYjU5MDQwMjkwNjI3YTliMmZmZTI5Y2ZwMCwKKyAgICAweDEuMTJiZDkycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzgKKyAgICAtMHgxLmQ3NGNiMjAwYWI1OTA0MDI5MDYyN2E5YjJmZmUyOWNmcDAsCisgICAgLTB4MS4xMmJkOTJwMAorICB9LAorICB7IC8vIEVudHJ5IDQzOQorICAgIDB4MS4xYjQ4YTY5NjRjMDI0NjQ4ZjE4NmJiNmIxZWJkZWVjMnAxLAorICAgIDB4MS4yNTdiMjRwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0MAorICAgIC0weDEuMWI0OGE2OTY0YzAyNDY0OGYxODZiYjZiMWViZGVlYzJwMSwKKyAgICAtMHgxLjI1N2IyNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgMHgxLjVkNjA0NDY2YzVhZWU4ZjFhMWQ4NDcwZjdmZjU3OWNmcDEsCisgICAgMHgxLjM4MzhiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQyCisgICAgLTB4MS41ZDYwNDQ2NmM1YWVlOGYxYTFkODQ3MGY3ZmY1NzljZnAxLAorICAgIC0weDEuMzgzOGI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDMKKyAgICAweDEuYzA4Y2JkNTJkMmIwMTJmMGNiNDdiY2IzZmY1MTNjNmRwMSwKKyAgICAweDEuNGFmNjQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDQKKyAgICAtMHgxLmMwOGNiZDUyZDJiMDEyZjBjYjQ3YmNiM2ZmNTEzYzZkcDEsCisgICAgLTB4MS40YWY2NDhwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NQorICAgIDB4MS4zNDI5ZjZhYTM0NDZkNzAzZTZlZjk2ZTBiNTY0ZmMwY3AyLAorICAgIDB4MS41ZGIzZGFwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIC0weDEuMzQyOWY2YWEzNDQ2ZDcwM2U2ZWY5NmUwYjU2NGZjMGNwMiwKKyAgICAtMHgxLjVkYjNkYXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgMHgxLmUzYTNhMjViMjYwNjQxOGExMzk3MDk3MWJlZWY0MWQ2cDIsCisgICAgMHgxLjcwNzE2Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDQ4CisgICAgLTB4MS5lM2EzYTI1YjI2MDY0MThhMTM5NzA5NzFiZWVmNDFkNnAyLAorICAgIC0weDEuNzA3MTZjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDkKKyAgICAweDEuMTFkOGI3YmE0MTY5NDY1ODExMWFmNDg5MjViYmFkNjhwNCwKKyAgICAweDEuODMyZWZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTAKKyAgICAtMHgxLjExZDhiN2JhNDE2OTQ2NTgxMTFhZjQ4OTI1YmJhZDY4cDQsCisgICAgLTB4MS44MzJlZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MQorICAgIC0weDEuMGQ3MDU2MzE5M2ZlMjE5ZjNmZDMxYTI4NWY0ZDY2MzhwNiwKKyAgICAweDEuOTVlYzkwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTIKKyAgICAweDEuMGQ3MDU2MzE5M2ZlMjE5ZjNmZDMxYTI4NWY0ZDY2MzhwNiwKKyAgICAtMHgxLjk1ZWM5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgLTB4MS42YTdlMzBhZDg0NjBmMWE3MTA0NzllMmRiOTQ5NWM5Y3AzLAorICAgIDB4MS5hOGFhMWNwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NAorICAgIDB4MS42YTdlMzBhZDg0NjBmMWE3MTA0NzllMmRiOTQ5NWM5Y3AzLAorICAgIC0weDEuYThhYTFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAweDEuOWYzOWVlOWZlZGIyMzc1ZWMwNWQ2ZGE3YTI4OGM2YmRwMCwKKyAgICAweDEuMDRhZmY4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTYKKyAgICAtMHgxLjlmMzllZTlmZWRiMjM3NWVjMDVkNmRhN2EyODhjNmJkcDAsCisgICAgLTB4MS4wNGFmZjhwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NworICAgIDB4MS45ZjNjNTA5YzZhN2Q3NWU0NTEwODgzNTljODhkZWY4OHAwLAorICAgIDB4MS4wNGIwYTBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1OAorICAgIC0weDEuOWYzYzUwOWM2YTdkNzVlNDUxMDg4MzU5Yzg4ZGVmODhwMCwKKyAgICAtMHgxLjA0YjBhMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgMHgxLjlmM2ViMjlkZjllNmEyMDQ2NzQ3NGUyNGQ4YmYzNWJhcDAsCisgICAgMHgxLjA0YjE0OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgLTB4MS45ZjNlYjI5ZGY5ZTZhMjA0Njc0NzRlMjRkOGJmMzViYXAwLAorICAgIC0weDEuMDRiMTQ4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjEKKyAgICAweDEuOWY0MTE0YTQ5YmZmZmMzZjVhMTgzZDM2MDAwYWE3ODVwMCwKKyAgICAweDEuMDRiMWYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjIKKyAgICAtMHgxLjlmNDExNGE0OWJmZmZjM2Y1YTE4M2QzNjAwMGFhNzg1cDAsCisgICAgLTB4MS4wNGIxZjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2MworICAgIDB4MS45ZjQzNzZiMDUwZGJjNTZiZjU1OTYwODMxOTIwNzdiNXAwLAorICAgIDB4MS4wNGIyOThwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2NAorICAgIC0weDEuOWY0Mzc2YjA1MGRiYzU2YmY1NTk2MDgzMTkyMDc3YjVwMCwKKyAgICAtMHgxLjA0YjI5OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDY1CisgICAgMHgxLjlmNDVkOGMxMTg4YzNlYjc3YmNhMmM0YTg0YzdlYWRkcDAsCisgICAgMHgxLjA0YjM0MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgLTB4MS45ZjQ1ZDhjMTE4OGMzZWI3N2JjYTJjNGE4NGM3ZWFkZHAwLAorICAgIC0weDEuMDRiMzQwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjcKKyAgICAweDEuOWY0ODNhZDZmMzIzYTlhNWE5MGQ0YWUwN2EyM2QyNjZwMCwKKyAgICAweDEuMDRiM2U4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjgKKyAgICAtMHgxLjlmNDgzYWQ2ZjMyM2E5YTVhOTBkNGFlMDdhMjNkMjY2cDAsCisgICAgLTB4MS4wNGIzZThwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIDB4MS45ZjRhOWNmMWUwYjQ0ODEwYjNhYTdjY2E0NWQ3MWNjOXAwLAorICAgIDB4MS4wNGI0OTBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIC0weDEuOWY0YTljZjFlMGI0NDgxMGIzYWE3Y2NhNDVkNzFjYzlwMCwKKyAgICAtMHgxLjA0YjQ5MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDcxCisgICAgMHgxLjlmNGNmMDhhZjZjNjBlZDZlMmJhZGQ1YTdiNWMxZTg3cDAsCisgICAgMHgxLjA0YjUzNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgLTB4MS45ZjRjZjA4YWY2YzYwZWQ2ZTJiYWRkNWE3YjVjMWU4N3AwLAorICAgIC0weDEuMDRiNTM0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzMKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzQKKyAgICAweDEucC0xNDksCisgICAgMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgNDc1CisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ3NgorICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzgKKyAgICAweDEuNGQ4MmIzMzRhNTgyYTU2YTgwMmY5NmIzYjk2ZmViODFwLTEsCisgICAgMHgxLjI3OWE3MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3OQorICAgIC0weDEuNGQ4MmIzMzRhNTgyYTU2YTgwMmY5NmIzYjk2ZmViODFwLTEsCisgICAgLTB4MS4yNzlhNzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODAKKyAgICAweDEuNGQ4MmI2MGRlNDI4ZjkyYWE4Yzk2YTRhN2ZlODg5NDVwLTEsCisgICAgMHgxLjI3OWE3NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4MQorICAgIC0weDEuNGQ4MmI2MGRlNDI4ZjkyYWE4Yzk2YTRhN2ZlODg5NDVwLTEsCisgICAgLTB4MS4yNzlhNzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODIKKyAgICAweDEuNGQ4MmI4ZTcyMmQzMDJmNWFhOTM5YTU2M2IxMmIxYTFwLTEsCisgICAgMHgxLjI3OWE3NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4MworICAgIC0weDEuNGQ4MmI4ZTcyMmQzMDJmNWFhOTM5YTU2M2IxMmIxYTFwLTEsCisgICAgLTB4MS4yNzlhNzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODQKKyAgICAtMHgxLjg5NzE0NzYwZThmZWQ5YWYwM2E5MWNmMTUyN2NlYWFkcDIsCisgICAgMHgxLmJiNjdhY3AwCisgIH0sCisgIHsgLy8gRW50cnkgNDg1CisgICAgMHgxLjg5NzE0NzYwZThmZWQ5YWYwM2E5MWNmMTUyN2NlYWFkcDIsCisgICAgLTB4MS5iYjY3YWNwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4NgorICAgIC0weDEuODk3MTMzZmI4MWYzMTY5YjMxNjFkNTBiNTBjY2MxYTdwMiwKKyAgICAweDEuYmI2N2FlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODcKKyAgICAweDEuODk3MTMzZmI4MWYzMTY5YjMxNjFkNTBiNTBjY2MxYTdwMiwKKyAgICAtMHgxLmJiNjdhZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNDg4CisgICAgLTB4MS44OTcxMjA5NjFjYzQ0NzVlYjNiODA2MWRmMDQwOTQzMHAyLAorICAgIDB4MS5iYjY3YjBwMAorICB9LAorICB7IC8vIEVudHJ5IDQ4OQorICAgIDB4MS44OTcxMjA5NjFjYzQ0NzVlYjNiODA2MWRmMDQwOTQzMHAyLAorICAgIC0weDEuYmI2N2IwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTAKKyAgICAweDEuZGVmNDljM2FiMGFkNWRkZTkzYmEzNGM1NGRiNzE0YzdwLTIsCisgICAgMHgxLmJmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ5MQorICAgIC0weDEuZGVmNDljM2FiMGFkNWRkZTkzYmEzNGM1NGRiNzE0YzdwLTIsCisgICAgLTB4MS5iZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTIKKyAgICAweDEuZGVmNDllYWFiMzdhMTQ3OTIzMWU4OTk1MDllY2YyNmNwLTIsCisgICAgMHgxLmMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDkzCisgICAgLTB4MS5kZWY0OWVhYWIzN2ExNDc5MjMxZTg5OTUwOWVjZjI2Y3AtMiwKKyAgICAtMHgxLmMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgMHgxLmRlZjRhMTFhYjY0N2VlZjIxMmIxOTk3ZDNiNTE0MDVhcC0yLAorICAgIDB4MS5jMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTUKKyAgICAtMHgxLmRlZjRhMTFhYjY0N2VlZjIxMmIxOTk3ZDNiNTE0MDVhcC0yLAorICAgIC0weDEuYzAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgMHgxLmE0NmNhZjY1MmZhMTg5ODdlNGQwYTc5ZjgxNDVkZDVicC0xLAorICAgIDB4MS41ZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTcKKyAgICAtMHgxLmE0NmNhZjY1MmZhMTg5ODdlNGQwYTc5ZjgxNDVkZDVicC0xLAorICAgIC0weDEuNWZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDk4CisgICAgMHgxLmE0NmNiMmJlNmEwYjFkYWNiMzYyNjljNDFhNGE5MTQ3cC0xLAorICAgIDB4MS42MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ5OQorICAgIC0weDEuYTQ2Y2IyYmU2YTBiMWRhY2IzNjI2OWM0MWE0YTkxNDdwLTEsCisgICAgLTB4MS42MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDUwMAorICAgIDB4MS5hNDZjYjYxN2E0N2EzMWExNTZkYzAwMDViNGU2ZWJwLTEsCisgICAgMHgxLjYwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDUwMQorICAgIC0weDEuYTQ2Y2I2MTdhNDdhMzFhMTU2ZGMwMDA1YjRlNmVicC0xLAorICAgIC0weDEuNjAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgMHgxLjNkNmRjMjMwODY5YzcwZDU5MzdmZWRjOTJkNDI0ZGYycDEsCisgICAgMHgxLjJmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTAzCisgICAgLTB4MS4zZDZkYzIzMDg2OWM3MGQ1OTM3ZmVkYzkyZDQyNGRmMnAxLAorICAgIC0weDEuMmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAweDEuM2Q2ZGM5NTZlYWM3ZDNiOGQ2ZWIyMTc0MTEwZDFkZGNwMSwKKyAgICAweDEuMzBwMAorICB9LAorICB7IC8vIEVudHJ5IDUwNQorICAgIC0weDEuM2Q2ZGM5NTZlYWM3ZDNiOGQ2ZWIyMTc0MTEwZDFkZGNwMSwKKyAgICAtMHgxLjMwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDYKKyAgICAweDEuM2Q2ZGQwN2Q0ZjNhMjM3NTg5YWQ1YzQxYzM4MDFjYjRwMSwKKyAgICAweDEuMzAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAtMHgxLjNkNmRkMDdkNGYzYTIzNzU4OWFkNWM0MWMzODAxY2I0cDEsCisgICAgLTB4MS4zMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDUwOAorICAgIC0weDEuYjJkOGE4NThjOTBhNTM4ZDFkYWFkNzgwNDBlNjliOThwLTEsCisgICAgMHgxLjM3ZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNTA5CisgICAgMHgxLmIyZDhhODU4YzkwYTUzOGQxZGFhZDc4MDQwZTY5Yjk4cC0xLAorICAgIC0weDEuMzdmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTAKKyAgICAtMHgxLmIyZDg5YTkzODI5NGM4YTI2MDRkYjlmN2FhNTZhMGY4cC0xLAorICAgIDB4MS4zOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTExCisgICAgMHgxLmIyZDg5YTkzODI5NGM4YTI2MDRkYjlmN2FhNTZhMGY4cC0xLAorICAgIC0weDEuMzhwMQorICB9LAorICB7IC8vIEVudHJ5IDUxMgorICAgIC0weDEuYjJkODhjY2UzYzdjY2UxNzQyNjY0MzlkYTMwOWNmNjBwLTEsCisgICAgMHgxLjM4MDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTEzCisgICAgMHgxLmIyZDg4Y2NlM2M3Y2NlMTc0MjY2NDM5ZGEzMDljZjYwcC0xLAorICAgIC0weDEuMzgwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTQKKyAgICAweDEuMDZmOGQwY2VjZjE2OWIwNjQ2N2U0YWEwMzZjZjgyNzlwLTQsCisgICAgMHgxLjA2OWM4Y3AtNAorICB9LAorICB7IC8vIEVudHJ5IDUxNQorICAgIC0weDEuMDZmOGQwY2VjZjE2OWIwNjQ2N2U0YWEwMzZjZjgyNzlwLTQsCisgICAgLTB4MS4wNjljOGNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTYKKyAgICAweDEuMDgwZjc0NmNkMTczOTdiNjBmOTA4ZTJiZTAxZjdiYTdwLTMsCisgICAgMHgxLjA2OWM4Y3AtMworICB9LAorICB7IC8vIEVudHJ5IDUxNworICAgIC0weDEuMDgwZjc0NmNkMTczOTdiNjBmOTA4ZTJiZTAxZjdiYTdwLTMsCisgICAgLTB4MS4wNjljOGNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTgKKyAgICAweDEuOGVkOTE1NTA0NjlkMGViMDhhYWUyMDY1ODk1ODA0M2JwLTMsCisgICAgMHgxLjg5ZWFkMnAtMworICB9LAorICB7IC8vIEVudHJ5IDUxOQorICAgIC0weDEuOGVkOTE1NTA0NjlkMGViMDhhYWUyMDY1ODk1ODA0M2JwLTMsCisgICAgLTB4MS44OWVhZDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjAKKyAgICAweDEuMGM4NjQxNDlkYzY4Mjc2ZGYyOTkyODJkMDRmNjlhZjZwLTIsCisgICAgMHgxLjA2OWM4Y3AtMgorICB9LAorICB7IC8vIEVudHJ5IDUyMQorICAgIC0weDEuMGM4NjQxNDlkYzY4Mjc2ZGYyOTkyODJkMDRmNjlhZjZwLTIsCisgICAgLTB4MS4wNjljOGNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjIKKyAgICAweDEuNTNmZGQwMWE5OGYwN2YyMDg1NTVjYzY0NDI3NmVmMmNwLTIsCisgICAgMHgxLjQ4NDNiMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDUyMworICAgIC0weDEuNTNmZGQwMWE5OGYwN2YyMDg1NTVjYzY0NDI3NmVmMmNwLTIsCisgICAgLTB4MS40ODQzYjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjQKKyAgICAweDEuOWU5MjViN2UyMzdiODhhYzYwOThiNTEzYzM3MTc1N2NwLTIsCisgICAgMHgxLjg5ZWFkNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDUyNQorICAgIC0weDEuOWU5MjViN2UyMzdiODhhYzYwOThiNTEzYzM3MTc1N2NwLTIsCisgICAgLTB4MS44OWVhZDRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjYKKyAgICAweDEuZWQyMWVhZGIwOGU0N2RiOGIyZjExODgwZmJiNTI4NzlwLTIsCisgICAgMHgxLmNiOTFmOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDUyNworICAgIC0weDEuZWQyMWVhZGIwOGU0N2RiOGIyZjExODgwZmJiNTI4NzlwLTIsCisgICAgLTB4MS5jYjkxZjhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjgKKyAgICAweDEuMjA1YTYzYTA0ZTMxZTE4NTJhZjNkYTIyZTlmNjlhMTlwLTEsCisgICAgMHgxLjA2OWM4ZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDUyOQorICAgIC0weDEuMjA1YTYzYTA0ZTMxZTE4NTJhZjNkYTIyZTlmNjlhMTlwLTEsCisgICAgLTB4MS4wNjljOGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAweDEuNGQ0NjZmODRhMzI4ODUxNWFiNjk5ZGQxY2VjMzQ1ZDNwLTEsCisgICAgMHgxLjI3NzAyMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDUzMQorICAgIC0weDEuNGQ0NjZmODRhMzI4ODUxNWFiNjk5ZGQxY2VjMzQ1ZDNwLTEsCisgICAgLTB4MS4yNzcwMjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzIKKyAgICAweDEuN2UxZDk5ODNiNTg3NTRhMjkwMTJlMTdhMjZmMjc3ZDdwLTEsCisgICAgMHgxLjQ4NDNiMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDUzMworICAgIC0weDEuN2UxZDk5ODNiNTg3NTRhMjkwMTJlMTdhMjZmMjc3ZDdwLTEsCisgICAgLTB4MS40ODQzYjJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzQKKyAgICAweDEuYjNkZjQwMmZlNDk4NDJhNDE2NGNmMzgwZmZhNWRjcC0xLAorICAgIDB4MS42OTE3NDRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAtMHgxLmIzZGY0MDJmZTQ5ODQyYTQxNjRjZjM4MGZmYTVkY3AtMSwKKyAgICAtMHgxLjY5MTc0NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDUzNgorICAgIDB4MS5lZmQ4MzExZGRmMmNjMzkzZjIwZWE3NjdjN2IyMjY0YXAtMSwKKyAgICAweDEuODllYWQ2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTM3CisgICAgLTB4MS5lZmQ4MzExZGRmMmNjMzkzZjIwZWE3NjdjN2IyMjY0YXAtMSwKKyAgICAtMHgxLjg5ZWFkNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDUzOAorICAgIDB4MS4xOWUyNzFhNjQ0NGZmMzRhYTJmNzNjODUwMTQ5NzFjOXAwLAorICAgIDB4MS5hYWJlNjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzkKKyAgICAtMHgxLjE5ZTI3MWE2NDQ0ZmYzNGFhMmY3M2M4NTAxNDk3MWM5cDAsCisgICAgLTB4MS5hYWJlNjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDAKKyAgICAweDEuNDEwMzkzODAyYzFhMjIzODI5MTRhYmYwOTZhZmJlZTlwMCwKKyAgICAweDEuY2I5MWZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTQxCisgICAgLTB4MS40MTAzOTM4MDJjMWEyMjM4MjkxNGFiZjA5NmFmYmVlOXAwLAorICAgIC0weDEuY2I5MWZhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTQyCisgICAgMHgxLjZlZmVkMzNiNzE0MDQ1ZmU5OWNmYTU5NDcxZTFlOWZkcDAsCisgICAgMHgxLmVjNjU4Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDU0MworICAgIC0weDEuNmVmZWQzM2I3MTQwNDVmZTk5Y2ZhNTk0NzFlMWU5ZmRwMCwKKyAgICAtMHgxLmVjNjU4Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDU0NAorICAgIDB4MS5hNjRjODZjMDJlN2E3ZDk2ZTkxZjk2YTU1ODQxMjlmNHAwLAorICAgIDB4MS4wNjljOGVwMAorICB9LAorICB7IC8vIEVudHJ5IDU0NQorICAgIC0weDEuYTY0Yzg2YzAyZTdhN2Q5NmU5MWY5NmE1NTg0MTI5ZjRwMCwKKyAgICAtMHgxLjA2OWM4ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ2CisgICAgMHgxLmVhYjQ0NzdlNWIyMjZkYzUyNzBiYWU5NzIwZWExM2UzcDAsCisgICAgMHgxLjE3MDY1NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ3CisgICAgLTB4MS5lYWI0NDc3ZTViMjI2ZGM1MjcwYmFlOTcyMGVhMTNlM3AwLAorICAgIC0weDEuMTcwNjU2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDgKKyAgICAweDEuMjEyNzdmOWE3ZDJmNjZiYjEzMWNmZjMyZjI2NjI5Y2RwMSwKKyAgICAweDEuMjc3MDFlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDkKKyAgICAtMHgxLjIxMjc3ZjlhN2QyZjY2YmIxMzFjZmYzMmYyNjYyOWNkcDEsCisgICAgLTB4MS4yNzcwMWVwMAorICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIDB4MS41YmQxNDA2ODI1YjNmZmViYTQ4MjIxYWQ2YThmNTQxNHAxLAorICAgIDB4MS4zN2Q5ZTZwMAorICB9LAorICB7IC8vIEVudHJ5IDU1MQorICAgIC0weDEuNWJkMTQwNjgyNWIzZmZlYmE0ODIyMWFkNmE4ZjU0MTRwMSwKKyAgICAtMHgxLjM3ZDllNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgMHgxLmFmNDY0MzUyYTk4OWY4MDI4MjQxNTJjYWQwYWZlOGI3cDEsCisgICAgMHgxLjQ4NDNhZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUzCisgICAgLTB4MS5hZjQ2NDM1MmE5ODlmODAyODI0MTUyY2FkMGFmZThiN3AxLAorICAgIC0weDEuNDg0M2FlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTQKKyAgICAweDEuMTg2NmZhN2E2MDFiODdiYjZmMzc4YjM0MzhlM2ZjMjZwMiwKKyAgICAweDEuNThhZDc2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTUKKyAgICAtMHgxLjE4NjZmYTdhNjAxYjg3YmI2ZjM3OGIzNDM4ZTNmYzI2cDIsCisgICAgLTB4MS41OGFkNzZwMAorICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIDB4MS44YmRjYzY4NzE4YTcwMTE4ODYwYTFiOTQ1NDM3ZmQ5MHAyLAorICAgIDB4MS42OTE3M2VwMAorICB9LAorICB7IC8vIEVudHJ5IDU1NworICAgIC0weDEuOGJkY2M2ODcxOGE3MDExODg2MGExYjk0NTQzN2ZkOTBwMiwKKyAgICAtMHgxLjY5MTczZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU4CisgICAgMHgxLjRiYjY4ODU5ZDNlYWZiMmExMzBiNzNiYTA3ZTQ4ZThhcDMsCisgICAgMHgxLjc5ODEwNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTU5CisgICAgLTB4MS40YmI2ODg1OWQzZWFmYjJhMTMwYjczYmEwN2U0OGU4YXAzLAorICAgIC0weDEuNzk4MTA2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjAKKyAgICAweDEuZjJlZmFiYWViMzIyZWM1Y2E5ZDMzODY5Mjk1YzYwNjNwNCwKKyAgICAweDEuODllYWNlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjEKKyAgICAtMHgxLmYyZWZhYmFlYjMyMmVjNWNhOWQzMzg2OTI5NWM2MDYzcDQsCisgICAgLTB4MS44OWVhY2VwMAorICB9LAorICB7IC8vIEVudHJ5IDU2MgorICAgIC0weDEuZjJmMTM5MjkzMjNlZjhmNThkYjE1MjE0M2U2NWJjYjdwNCwKKyAgICAweDEuOWE1NDk2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjMKKyAgICAweDEuZjJmMTM5MjkzMjNlZjhmNThkYjE1MjE0M2U2NWJjYjdwNCwKKyAgICAtMHgxLjlhNTQ5NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTY0CisgICAgLTB4MS40YmI2ZTBlYzAyY2FkNWMxMTBhNGQ3MDAzOWRiNGQxY3AzLAorICAgIDB4MS5hYWJlNWVwMAorICB9LAorICB7IC8vIEVudHJ5IDU2NQorICAgIDB4MS40YmI2ZTBlYzAyY2FkNWMxMTBhNGQ3MDAzOWRiNGQxY3AzLAorICAgIC0weDEuYWFiZTVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjYKKyAgICAtMHgxLjhiZGQwNmE2NTVkZmEyZjMxOTVhY2E0ODc5OGU1Yzg2cDIsCisgICAgMHgxLmJiMjgyNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTY3CisgICAgMHgxLjhiZGQwNmE2NTVkZmEyZjMxOTVhY2E0ODc5OGU1Yzg2cDIsCisgICAgLTB4MS5iYjI4MjZwMAorICB9LAorICB7IC8vIEVudHJ5IDU2OAorICAgIC0weDEuMTg2NzFiNzZjZmNjZjk4YTZlZGJjMWZkNWI4NjQ3YjdwMiwKKyAgICAweDEuY2I5MWVlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjkKKyAgICAweDEuMTg2NzFiNzZjZmNjZjk4YTZlZGJjMWZkNWI4NjQ3YjdwMiwKKyAgICAtMHgxLmNiOTFlZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTcwCisgICAgLTB4MS5hZjQ2NmJhYzgwZGM5ZGY2NjhkMWUwZTliNDQyYmYwZXAxLAorICAgIDB4MS5kYmZiYjZwMAorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIDB4MS5hZjQ2NmJhYzgwZGM5ZGY2NjhkMWUwZTliNDQyYmYwZXAxLAorICAgIC0weDEuZGJmYmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzIKKyAgICAtMHgxLjViZDE1YmNiM2QwNjkwNmNlZjVmM2IyZWMzYWI0YWI5cDEsCisgICAgMHgxLmVjNjU3ZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTczCisgICAgMHgxLjViZDE1YmNiM2QwNjkwNmNlZjVmM2IyZWMzYWI0YWI5cDEsCisgICAgLTB4MS5lYzY1N2VwMAorICB9LAorICB7IC8vIEVudHJ5IDU3NAorICAgIC0weDEuMjEyNzkzOGE1NDZkM2M0MjgyOTJiYTUzZWU2ZjY3Y2NwMSwKKyAgICAweDEuZmNjZjQ2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzUKKyAgICAweDEuMjEyNzkzOGE1NDZkM2M0MjgyOTJiYTUzZWU2ZjY3Y2NwMSwKKyAgICAtMHgxLmZjY2Y0NnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTc2CisgICAgLTB4MS5lYWI0NWNhZWQ3MDZjNGRiNjIyYzkwZmUzZThkMTZjMnAwLAorICAgIDB4MS4wNjljODhwMQorICB9LAorICB7IC8vIEVudHJ5IDU3NworICAgIDB4MS5lYWI0NWNhZWQ3MDZjNGRiNjIyYzkwZmUzZThkMTZjMnAwLAorICAgIC0weDEuMDY5Yzg4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzgKKyAgICAtMHgxLmE2NGM5NzllYjcwM2Q4MmNiNDgwODA0NGU4YWJmOTNmcDAsCisgICAgMHgxLjBlZDE2Y3AxCisgIH0sCisgIHsgLy8gRW50cnkgNTc5CisgICAgMHgxLmE2NGM5NzllYjcwM2Q4MmNiNDgwODA0NGU4YWJmOTNmcDAsCisgICAgLTB4MS4wZWQxNmNwMQorICB9LAorICB7IC8vIEVudHJ5IDU4MAorICAgIC0weDEuNmVmZWUxMTUwMDI2M2MxMGMxZDFiYjU5MDQyNDRkZTZwMCwKKyAgICAweDEuMTcwNjUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODEKKyAgICAweDEuNmVmZWUxMTUwMDI2M2MxMGMxZDFiYjU5MDQyNDRkZTZwMCwKKyAgICAtMHgxLjE3MDY1MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgLTB4MS40MTAzYTFiYzBmNjU3NmE3NjBkNDlkYTNiZmU1NTg3NHAwLAorICAgIDB4MS4xZjNiMzRwMQorICB9LAorICB7IC8vIEVudHJ5IDU4MworICAgIDB4MS40MTAzYTFiYzBmNjU3NmE3NjBkNDlkYTNiZmU1NTg3NHAwLAorICAgIC0weDEuMWYzYjM0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODQKKyAgICAtMHgxLjE5ZTI4MDFhYTI0ZWUwYWRjZDk0OTFlNGQ3YWYyNTZmcDAsCisgICAgMHgxLjI3NzAxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTg1CisgICAgMHgxLjE5ZTI4MDFhYTI0ZWUwYWRjZDk0OTFlNGQ3YWYyNTZmcDAsCisgICAgLTB4MS4yNzcwMThwMQorICB9LAorICB7IC8vIEVudHJ5IDU4NgorICAgIC0weDEuZWZkODRlNTA2NTJjMWI3YzcxOTcyYWQ4ZWU3YzAxOGFwLTEsCisgICAgMHgxLjJmYTRmY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNTg3CisgICAgMHgxLmVmZDg0ZTUwNjUyYzFiN2M3MTk3MmFkOGVlN2MwMThhcC0xLAorICAgIC0weDEuMmZhNGZjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODgKKyAgICAtMHgxLmIzZGY1ZDlmNTRlMmM3NDhjZjAyMjdlZTA5NzRlYTJlcC0xLAorICAgIDB4MS4zN2Q5ZTBwMQorICB9LAorICB7IC8vIEVudHJ5IDU4OQorICAgIDB4MS5iM2RmNWQ5ZjU0ZTJjNzQ4Y2YwMjI3ZWUwOTc0ZWEyZXAtMSwKKyAgICAtMHgxLjM3ZDllMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTkwCisgICAgLTB4MS43ZTFkYjczMzc2OWExMTI2YTJiMGFjN2ZhMTRhNDAyY3AtMSwKKyAgICAweDEuNDAwZWM0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTEKKyAgICAweDEuN2UxZGI3MzM3NjlhMTEyNmEyYjBhYzdmYTE0YTQwMmNwLTEsCisgICAgLTB4MS40MDBlYzRwMQorICB9LAorICB7IC8vIEVudHJ5IDU5MgorICAgIC0weDEuNGQ0NjhkODJjMWE4NGZlZjcyNzlmYzVmYjI0NDE5YjJwLTEsCisgICAgMHgxLjQ4NDNhOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTkzCisgICAgMHgxLjRkNDY4ZDgyYzFhODRmZWY3Mjc5ZmM1ZmIyNDQxOWIycC0xLAorICAgIC0weDEuNDg0M2E4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTQKKyAgICAtMHgxLjIwNWE4MjAyNTQ1MjAyZDg5MWNlODliZmE2Y2QxNDc2cC0xLAorICAgIDB4MS41MDc4OGNwMQorICB9LAorICB7IC8vIEVudHJ5IDU5NQorICAgIDB4MS4yMDVhODIwMjU0NTIwMmQ4OTFjZTg5YmZhNmNkMTQ3NnAtMSwKKyAgICAtMHgxLjUwNzg4Y3AxCisgIH0sCisgIHsgLy8gRW50cnkgNTk2CisgICAgLTB4MS5lZDIyMjg5ZDg5MWVkNzhjZGM4MThhNGNkZTZkZTkxOHAtMiwKKyAgICAweDEuNThhZDcwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTcKKyAgICAweDEuZWQyMjI4OWQ4OTFlZDc4Y2RjODE4YTRjZGU2ZGU5MThwLTIsCisgICAgLTB4MS41OGFkNzBwMQorICB9LAorICB7IC8vIEVudHJ5IDU5OAorICAgIC0weDEuOWU5MjlhN2ZhZGY4M2I2ZjllOGZiODUxZjUxMmI0NGJwLTIsCisgICAgMHgxLjYwZTI1NHAxCisgIH0sCisgIHsgLy8gRW50cnkgNTk5CisgICAgMHgxLjllOTI5YTdmYWRmODNiNmY5ZThmYjg1MWY1MTJiNDRicC0yLAorICAgIC0weDEuNjBlMjU0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDAKKyAgICAtMHgxLjUzZmUxMGE1NDdhNmVjY2U1Y2FkZGMyMDA1ZGI4MjJicC0yLAorICAgIDB4MS42OTE3MzhwMQorICB9LAorICB7IC8vIEVudHJ5IDYwMQorICAgIDB4MS41M2ZlMTBhNTQ3YTZlY2NlNWNhZGRjMjAwNWRiODIyYnAtMiwKKyAgICAtMHgxLjY5MTczOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjAyCisgICAgLTB4MS4wYzg2ODNiMWJjNjgyNzU5ZTI4NDQxZWY5N2M4ODU0YnAtMiwKKyAgICAweDEuNzE0YzFjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDMKKyAgICAweDEuMGM4NjgzYjFiYzY4Mjc1OWUyODQ0MWVmOTdjODg1NGJwLTIsCisgICAgLTB4MS43MTRjMWNwMQorICB9LAorICB7IC8vIEVudHJ5IDYwNAorICAgIC0weDEuOGVkOTljODU0NjAwOGJlNDY2MTRlYTY2YzdkZGQ3ZTZwLTMsCisgICAgMHgxLjc5ODFwMQorICB9LAorICB7IC8vIEVudHJ5IDYwNQorICAgIDB4MS44ZWQ5OWM4NTQ2MDA4YmU0NjYxNGVhNjZjN2RkZDdlNnAtMywKKyAgICAtMHgxLjc5ODFwMQorICB9LAorICB7IC8vIEVudHJ5IDYwNgorICAgIC0weDEuMDgwZmZlZjRlZGEwMjcxZDgxNjU4ZDU4YWUyODA3OTJwLTMsCisgICAgMHgxLjgxYjVlNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjA3CisgICAgMHgxLjA4MGZmZWY0ZWRhMDI3MWQ4MTY1OGQ1OGFlMjgwNzkycC0zLAorICAgIC0weDEuODFiNWU0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDgKKyAgICAtMHgxLjA2ZjllZTgzNjg2YWE2MTk0YzAzZGU3MWE2YjUyZjc1cC00LAorICAgIDB4MS44OWVhYzhwMQorICB9LAorICB7IC8vIEVudHJ5IDYwOQorICAgIDB4MS4wNmY5ZWU4MzY4NmFhNjE5NGMwM2RlNzFhNmI1MmY3NXAtNCwKKyAgICAtMHgxLjg5ZWFjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjEwCisgICAgMHgxLjBjODYyN2VjM2JjMmU4ZjBlNmRmNDRmODA5ZjM3MGZkcC0yLAorICAgIC0weDEuODFiNWVlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTEKKyAgICAtMHgxLjBjODYyN2VjM2JjMmU4ZjBlNmRmNDRmODA5ZjM3MGZkcC0yLAorICAgIDB4MS44MWI1ZWVwMgorICB9LAorICB7IC8vIEVudHJ5IDYxMgorICAgIDB4MS4yMDVhNDk3NTNiYjg5ZThjOTcxYzZjZDI4NDJlZGFmMHAtMSwKKyAgICAtMHgxLjcxNGMyNnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjEzCisgICAgLTB4MS4yMDVhNDk3NTNiYjg5ZThjOTcxYzZjZDI4NDJlZGFmMHAtMSwKKyAgICAweDEuNzE0YzI2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTQKKyAgICAweDEuZWZkN2ZiMWQyOGI4YTA2MDJiMjVmYWRmZTllMDI3N2FwLTEsCisgICAgLTB4MS42MGUyNWVwMgorICB9LAorICB7IC8vIEVudHJ5IDYxNQorICAgIC0weDEuZWZkN2ZiMWQyOGI4YTA2MDJiMjVmYWRmZTllMDI3N2FwLTEsCisgICAgMHgxLjYwZTI1ZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjE2CisgICAgMHgxLmE2NGM0N2JjZmI1ZjljYmRiNDkzNjBhNjU1NDhmZDZkcDAsCisgICAgLTB4MS41MDc4OTZwMgorICB9LAorICB7IC8vIEVudHJ5IDYxNworICAgIC0weDEuYTY0YzQ3YmNmYjVmOWNiZGI0OTM2MGE2NTU0OGZkNmRwMCwKKyAgICAweDEuNTA3ODk2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTgKKyAgICAweDEuYWY0NWRhYmQzNGI3NTU5N2ZmNzAwNzliM2RlOTg2ZmRwMSwKKyAgICAtMHgxLjQwMGVjZXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjE5CisgICAgLTB4MS5hZjQ1ZGFiZDM0Yjc1NTk3ZmY3MDA3OWIzZGU5ODZmZHAxLAorICAgIDB4MS40MDBlY2VwMgorICB9LAorICB7IC8vIEVudHJ5IDYyMAorICAgIDB4MS5mMmViYTU4M2ZmZjlmOGRmMzY5M2ZmZDk2OTM5NWRlN3A0LAorICAgIC0weDEuMmZhNTA2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICAtMHgxLmYyZWJhNTgzZmZmOWY4ZGYzNjkzZmZkOTY5Mzk1ZGU3cDQsCisgICAgMHgxLjJmYTUwNnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjIyCisgICAgLTB4MS4xODY3NzBmNWNlZjE1MmE0ZWM3NWZlOWE3MDMxYTU2YXAyLAorICAgIC0weDEuMWYzYjNlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjMKKyAgICAweDEuMTg2NzcwZjVjZWYxNTJhNGVjNzVmZTlhNzAzMWE1NmFwMiwKKyAgICAweDEuMWYzYjNlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjQKKyAgICAtMHgxLmVhYjRiNTJlNmNjZTE2MGE1YjlhMjNhNGI5MjlkMDFkcDAsCisgICAgLTB4MS4wZWQxNzZwMgorICB9LAorICB7IC8vIEVudHJ5IDYyNQorICAgIDB4MS5lYWI0YjUyZTZjY2UxNjBhNWI5YTIzYTRiOTI5ZDAxZHAwLAorICAgIDB4MS4wZWQxNzZwMgorICB9LAorICB7IC8vIEVudHJ5IDYyNgorICAgIC0weDEuMTllMmExMjRiYzNkZWVmNjQ4MzM4Mjc0NjI3Y2MzNzFwMCwKKyAgICAtMHgxLmZjY2Y1YXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjI3CisgICAgMHgxLjE5ZTJhMTI0YmMzZGVlZjY0ODMzODI3NDYyN2NjMzcxcDAsCisgICAgMHgxLmZjY2Y1YXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjI4CisgICAgLTB4MS40ZDQ2YWNhNDhkZTQ3ZjVmZDkwYzkwMDBjMTU0MjVkOHAtMSwKKyAgICAtMHgxLmRiZmJjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjI5CisgICAgMHgxLjRkNDZhY2E0OGRlNDdmNWZkOTBjOTAwMGMxNTQyNWQ4cC0xLAorICAgIDB4MS5kYmZiYzhwMQorICB9LAorICB7IC8vIEVudHJ5IDYzMAorICAgIC0weDEuNTNmZTJmNmZjOWQwMjM3NzRhMjEwNWM4MjEzZTRkNWVwLTIsCisgICAgLTB4MS5iYjI4MzZwMQorICB9LAorICB7IC8vIEVudHJ5IDYzMQorICAgIDB4MS41M2ZlMmY2ZmM5ZDAyMzc3NGEyMTA1YzgyMTNlNGQ1ZXAtMiwKKyAgICAweDEuYmIyODM2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzIKKyAgICAtMHgxLjA2ZmExZGE0M2IyNmNkNTgwY2U1YTViODljZjJlZmYzcC00LAorICAgIC0weDEuOWE1NGE0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzMKKyAgICAweDEuMDZmYTFkYTQzYjI2Y2Q1ODBjZTVhNWI4OWNmMmVmZjNwLTQsCisgICAgMHgxLjlhNTRhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjM0CisgICAgMHgxLjhlZDg3MTk4ZjQxM2QzYTEyMjY1ODI4N2FhN2ZjMzNlcC0zLAorICAgIC0weDEuNzk4MTEycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzUKKyAgICAtMHgxLjhlZDg3MTk4ZjQxM2QzYTEyMjY1ODI4N2FhN2ZjMzNlcC0zLAorICAgIDB4MS43OTgxMTJwMQorICB9LAorICB7IC8vIEVudHJ5IDYzNgorICAgIDB4MS5lZDIxOGFlZTJkZjRlODBlMzkzNDBiMGM0ZWMzYjFkNXAtMiwKKyAgICAtMHgxLjU4YWQ4MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjM3CisgICAgLTB4MS5lZDIxOGFlZTJkZjRlODBlMzkzNDBiMGM0ZWMzYjFkNXAtMiwKKyAgICAweDEuNThhZDgwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzgKKyAgICAweDEuYjNkZWZkMDk5MWU2MzE1MzY5ZGJkNWUyZGUyZDE0ZmVwLTEsCisgICAgLTB4MS4zN2Q5ZWVwMQorICB9LAorICB7IC8vIEVudHJ5IDYzOQorICAgIC0weDEuYjNkZWZkMDk5MWU2MzE1MzY5ZGJkNWUyZGUyZDE0ZmVwLTEsCisgICAgMHgxLjM3ZDllZXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjQwCisgICAgMHgxLjZlZmU5N2MyM2YyMDY4MjZiNGYwMDE5ZjI3NWQzYTQ0cDAsCisgICAgLTB4MS4xNzA2NWNwMQorICB9LAorICB7IC8vIEVudHJ5IDY0MQorICAgIC0weDEuNmVmZTk3YzIzZjIwNjgyNmI0ZjAwMTlmMjc1ZDNhNDRwMCwKKyAgICAweDEuMTcwNjVjcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDIKKyAgICAweDEuNWJkMGZmOTI1Yzk0ZjdkNjA4Yjg4NDg0ZjkwODFmMmNwMSwKKyAgICAtMHgxLmVjNjU5NHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQzCisgICAgLTB4MS41YmQwZmY5MjVjOTRmN2Q2MDhiODg0ODRmOTA4MWYyY3AxLAorICAgIDB4MS5lYzY1OTRwMAorICB9LAorICB7IC8vIEVudHJ5IDY0NAorICAgIDB4MS40YmI1ZWNlNjU3YmVlMjkyYTgyYTNmZGE2YjgxMmFhZHAzLAorICAgIC0weDEuYWFiZTcwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDUKKyAgICAtMHgxLjRiYjVlY2U2NTdiZWUyOTJhODJhM2ZkYTZiODEyYWFkcDMsCisgICAgMHgxLmFhYmU3MHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjQ2CisgICAgLTB4MS44YmRkNGZlZWYxOGJmYThhNmMyM2RlNmE3MjFmMjQzNnAyLAorICAgIC0weDEuNjkxNzRjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDcKKyAgICAweDEuOGJkZDRmZWVmMThiZmE4YTZjMjNkZTZhNzIxZjI0MzZwMiwKKyAgICAweDEuNjkxNzRjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDgKKyAgICAtMHgxLjIxMjc5ZTFlOGJmNGJkMzk4M2EzNjc3MjY3ZTU1ODA5cDEsCisgICAgLTB4MS4yNzcwMjhwMAorICB9LAorICB7IC8vIEVudHJ5IDY0OQorICAgIDB4MS4yMTI3OWUxZThiZjRiZDM5ODNhMzY3NzI2N2U1NTgwOXAxLAorICAgIDB4MS4yNzcwMjhwMAorICB9LAorICB7IC8vIEVudHJ5IDY1MAorICAgIC0weDEuNDEwM2E4MTQ3Y2E4MzYxMzZjYzk4ZGI5YmM2ZGRmMzBwMCwKKyAgICAtMHgxLmNiOTIwYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY1MQorICAgIDB4MS40MTAzYTgxNDdjYTgzNjEzNmNjOThkYjliYzZkZGYzMHAwLAorICAgIDB4MS5jYjkyMGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTIKKyAgICAtMHgxLjdlMWRiNThhNTVkNmExMmE2NDU3ZTNjNTkyOWFjMmM3cC0xLAorICAgIC0weDEuNDg0M2M0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjUzCisgICAgMHgxLjdlMWRiNThhNTVkNmExMmE2NDU3ZTNjNTkyOWFjMmM3cC0xLAorICAgIDB4MS40ODQzYzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTQKKyAgICAtMHgxLjllOTI4YTBjOGU3OTAyMzIwMDE2NGVkMjQwY2FhZDA1cC0yLAorICAgIC0weDEuODllYWZjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjU1CisgICAgMHgxLjllOTI4YTBjOGU3OTAyMzIwMDE2NGVkMjQwY2FhZDA1cC0yLAorICAgIDB4MS44OWVhZmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTYKKyAgICAtMHgxLjA4MGZjOWQyNGZiZTk4NzZiMzFiMGFhMjlkZDIzOGVhcC0zLAorICAgIC0weDEuMDY5Y2UwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjU3CisgICAgMHgxLjA4MGZjOWQyNGZiZTk4NzZiMzFiMGFhMjlkZDIzOGVhcC0zLAorICAgIDB4MS4wNjljZTBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAweDEuMDgwZjFmMDc1NDBmZDAzYjgyZDRiMzcwZDIzN2ZhM2RwLTMsCisgICAgMHgxLjA2OWMzOHAtMworICB9LAorICB7IC8vIEVudHJ5IDY1OQorICAgIC0weDEuMDgwZjFmMDc1NDBmZDAzYjgyZDRiMzcwZDIzN2ZhM2RwLTMsCisgICAgLTB4MS4wNjljMzhwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjAKKyAgICAweDEuOWU5MjI4NDdlMmIxYjZhNzJkNDg2NzAwZTE4YzA1ZjJwLTIsCisgICAgMHgxLjg5ZWFhOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDY2MQorICAgIC0weDEuOWU5MjI4NDdlMmIxYjZhNzJkNDg2NzAwZTE4YzA1ZjJwLTIsCisgICAgLTB4MS44OWVhYThwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjIKKyAgICAweDEuN2UxZDc0MjU4Y2JjOTY0YjU2MWQ5OWM5YTY2ZjhjN2VwLTEsCisgICAgMHgxLjQ4NDM5YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDY2MworICAgIC0weDEuN2UxZDc0MjU4Y2JjOTY0YjU2MWQ5OWM5YTY2ZjhjN2VwLTEsCisgICAgLTB4MS40ODQzOWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjQKKyAgICAweDEuNDEwMzcyMGYyY2EzZTA1ODBmYmExNTg0OTM5OGE0ZTlwMCwKKyAgICAweDEuY2I5MWUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjY1CisgICAgLTB4MS40MTAzNzIwZjJjYTNlMDU4MGZiYTE1ODQ5Mzk4YTRlOXAwLAorICAgIC0weDEuY2I5MWUwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjY2CisgICAgMHgxLjIxMjc2MTE2NzNjY2M3NTMxZjVhZjVhZWRhMzQxMmM1cDEsCisgICAgMHgxLjI3NzAxNHAwCisgIH0sCisgIHsgLy8gRW50cnkgNjY3CisgICAgLTB4MS4yMTI3NjExNjczY2NjNzUzMWY1YWY1YWVkYTM0MTJjNXAxLAorICAgIC0weDEuMjc3MDE0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjgKKyAgICAweDEuOGJkYzhiYTNkODI3NzIxM2M1Yjc0ZWY4MDZlZjQ2NmJwMiwKKyAgICAweDEuNjkxNzM4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjkKKyAgICAtMHgxLjhiZGM4YmEzZDgyNzcyMTNjNWI3NGVmODA2ZWY0NjZicDIsCisgICAgLTB4MS42OTE3MzhwMAorICB9LAorICB7IC8vIEVudHJ5IDY3MAorICAgIC0weDEuNGJiNmZjMDkyYmMxNjUzMDIxNjIwOWE5MTJhYWRhMzdwMywKKyAgICAweDEuYWFiZTVjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzEKKyAgICAweDEuNGJiNmZjMDkyYmMxNjUzMDIxNjIwOWE5MTJhYWRhMzdwMywKKyAgICAtMHgxLmFhYmU1Y3AwCisgIH0sCisgIHsgLy8gRW50cnkgNjcyCisgICAgLTB4MS41YmQxNTM2OGY4NGJlMGJkYThmMTM1YTVmNzlhZWFjYnAxLAorICAgIDB4MS5lYzY1ODBwMAorICB9LAorICB7IC8vIEVudHJ5IDY3MworICAgIDB4MS41YmQxNTM2OGY4NGJlMGJkYThmMTM1YTVmNzlhZWFjYnAxLAorICAgIC0weDEuZWM2NTgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzQKKyAgICAtMHgxLjZlZmVkNGRjODk0NmUxYzM2MjBkNzliYjBkNjU0MzM4cDAsCisgICAgMHgxLjE3MDY1MnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjc1CisgICAgMHgxLjZlZmVkNGRjODk0NmUxYzM2MjBkNzliYjBkNjU0MzM4cDAsCisgICAgLTB4MS4xNzA2NTJwMQorICB9LAorICB7IC8vIEVudHJ5IDY3NgorICAgIC0weDEuYjNkZjQyMDZkMjMyNzk0ZDU3NjE5OTJkODhjNWEzOTRwLTEsCisgICAgMHgxLjM3ZDllNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjc3CisgICAgMHgxLmIzZGY0MjA2ZDIzMjc5NGQ1NzYxOTkyZDg4YzVhMzk0cC0xLAorICAgIC0weDEuMzdkOWU0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzgKKyAgICAtMHgxLmVkMjFlZDdiYzRiNTk2OGJkYjBjZDZkYTI2OWNkNTVmcC0yLAorICAgIDB4MS41OGFkNzZwMQorICB9LAorICB7IC8vIEVudHJ5IDY3OQorICAgIDB4MS5lZDIxZWQ3YmM0YjU5NjhiZGIwY2Q2ZGEyNjljZDU1ZnAtMiwKKyAgICAtMHgxLjU4YWQ3NnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjgwCisgICAgLTB4MS44ZWQ5MTdhYTc0ZTczM2I5MTk0ZDUzN2M4ZGYzM2M2NHAtMywKKyAgICAweDEuNzk4MTA4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODEKKyAgICAweDEuOGVkOTE3YWE3NGU3MzNiOTE5NGQ1MzdjOGRmMzNjNjRwLTMsCisgICAgLTB4MS43OTgxMDhwMQorICB9LAorICB7IC8vIEVudHJ5IDY4MgorICAgIDB4MS4wNmY4ZGM1MjhlYTAxODgyMDY0ZWUyNDJmNThhMmI4OHAtNCwKKyAgICAweDEuOWE1NDlhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODMKKyAgICAtMHgxLjA2ZjhkYzUyOGVhMDE4ODIwNjRlZTI0MmY1OGEyYjg4cC00LAorICAgIC0weDEuOWE1NDlhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODQKKyAgICAweDEuNTNmZGQ2OWUxNDM3ZGI5NTdjNjJlOGNjNTU3NDJiZWVwLTIsCisgICAgMHgxLmJiMjgyY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNjg1CisgICAgLTB4MS41M2ZkZDY5ZTE0MzdkYjk1N2M2MmU4Y2M1NTc0MmJlZXAtMiwKKyAgICAtMHgxLmJiMjgyY3AxCisgIH0sCisgIHsgLy8gRW50cnkgNjg2CisgICAgMHgxLjRkNDY3M2IxYzc2MzVjYzg5M2UxYzhkMmNhNTdiM2U5cC0xLAorICAgIDB4MS5kYmZiYmVwMQorICB9LAorICB7IC8vIEVudHJ5IDY4NworICAgIC0weDEuNGQ0NjczYjFjNzYzNWNjODkzZTFjOGQyY2E1N2IzZTlwLTEsCisgICAgLTB4MS5kYmZiYmVwMQorICB9LAorICB7IC8vIEVudHJ5IDY4OAorICAgIDB4MS4xOWUyNzRlNGZkZWM5ZTc4ZWY2ODcyMDgxYjU1NzJjZnAwLAorICAgIDB4MS5mY2NmNTBwMQorICB9LAorICB7IC8vIEVudHJ5IDY4OQorICAgIC0weDEuMTllMjc0ZTRmZGVjOWU3OGVmNjg3MjA4MWI1NTcyY2ZwMCwKKyAgICAtMHgxLmZjY2Y1MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjkwCisgICAgMHgxLmVhYjQ0NTAwM2E3YjU0MmEyZDRkODdhODg3OTNiYjY3cDAsCisgICAgMHgxLjBlZDE3MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjkxCisgICAgLTB4MS5lYWI0NDUwMDNhN2I1NDJhMmQ0ZDg3YTg4NzkzYmI2N3AwLAorICAgIC0weDEuMGVkMTcwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTIKKyAgICAweDEuMTg2NmY3YzkxNjYwZDljOWY0YjJkMTRlOTEzNzU3MzJwMiwKKyAgICAweDEuMWYzYjM4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTMKKyAgICAtMHgxLjE4NjZmN2M5MTY2MGQ5YzlmNGIyZDE0ZTkxMzc1NzMycDIsCisgICAgLTB4MS4xZjNiMzhwMgorICB9LAorICB7IC8vIEVudHJ5IDY5NAorICAgIC0weDEuZjJmMTU5OWIyOWE3ZGU5NTJiOGJhMTg3N2Q5ZjVlNjFwNCwKKyAgICAweDEuMmZhNXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjk1CisgICAgMHgxLmYyZjE1OTliMjlhN2RlOTUyYjhiYTE4NzdkOWY1ZTYxcDQsCisgICAgLTB4MS4yZmE1cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTYKKyAgICAtMHgxLmFmNDY2ZWY3YjE1NjQ1NDU1ZTE1ZmJiYWU2YmI0YmM2cDEsCisgICAgMHgxLjQwMGVjOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjk3CisgICAgMHgxLmFmNDY2ZWY3YjE1NjQ1NDU1ZTE1ZmJiYWU2YmI0YmM2cDEsCisgICAgLTB4MS40MDBlYzhwMgorICB9LAorICB7IC8vIEVudHJ5IDY5OAorICAgIC0weDEuYTY0Y2ExMGJmZWZkMmIwNGJiNmExYmI3MDhjMjg5NjdwMCwKKyAgICAweDEuNTA3ODkwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTkKKyAgICAweDEuYTY0Y2ExMGJmZWZkMmIwNGJiNmExYmI3MDhjMjg5NjdwMCwKKyAgICAtMHgxLjUwNzg5MHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzAwCisgICAgLTB4MS5lZmQ4NTgyMWVjOTI3ZjJhODllYzQxYWNlZTU4NzIzMHAtMSwKKyAgICAweDEuNjBlMjU4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDEKKyAgICAweDEuZWZkODU4MjFlYzkyN2YyYTg5ZWM0MWFjZWU1ODcyMzBwLTEsCisgICAgLTB4MS42MGUyNThwMgorICB9LAorICB7IC8vIEVudHJ5IDcwMgorICAgIC0weDEuMjA1YTg4YWVjNjRjYWQzNWQ3NzUyYzczNjIwYzIxMzlwLTEsCisgICAgMHgxLjcxNGMyMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzAzCisgICAgMHgxLjIwNWE4OGFlYzY0Y2FkMzVkNzc1MmM3MzYyMGMyMTM5cC0xLAorICAgIC0weDEuNzE0YzIwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDQKKyAgICAtMHgxLjBjODY4ZTg2MzU0M2ZkOTg5NDc2YzhjZGVmZmE5M2VhcC0yLAorICAgIDB4MS44MWI1ZThwMgorICB9LAorICB7IC8vIEVudHJ5IDcwNQorICAgIDB4MS4wYzg2OGU4NjM1NDNmZDk4OTQ3NmM4Y2RlZmZhOTNlYXAtMiwKKyAgICAtMHgxLjgxYjVlOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzA2CisgICAgMHgxLmYwOWI2MWE4YTA0ZjA4OTg4NTFmMWQ3NjA0ZmExM2M4cC01LAorICAgIDB4MS5lZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MDcKKyAgICAtMHgxLmYwOWI2MWE4YTA0ZjA4OTg4NTFmMWQ3NjA0ZmExM2M4cC01LAorICAgIC0weDEuZWZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgNzA4CisgICAgMHgxLmYwOWI2M2FhODFmYzQ2ZTk1ZTA2NDA1YjQxZThiNGNjcC01LAorICAgIDB4MS5mMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDcwOQorICAgIC0weDEuZjA5YjYzYWE4MWZjNDZlOTVlMDY0MDViNDFlOGI0Y2NwLTUsCisgICAgLTB4MS5mMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDcxMAorICAgIDB4MS5mMDliNjVhYzYzYTk4OTFmMTQxOGM0MzM4YzFlNDE5ZXAtNSwKKyAgICAweDEuZjAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgNzExCisgICAgLTB4MS5mMDliNjVhYzYzYTk4OTFmMTQxOGM0MzM4YzFlNDE5ZXAtNSwKKyAgICAtMHgxLmYwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDcxMgorICAgIDB4MS5mYThmMWZjMGNlODZjMjE0YmY3NjVmZDU5ZTg3OThhNXAtNCwKKyAgICAweDEuZjdmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNzEzCisgICAgLTB4MS5mYThmMWZjMGNlODZjMjE0YmY3NjVmZDU5ZTg3OThhNXAtNCwKKyAgICAtMHgxLmY3ZmZmZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDcxNAorICAgIDB4MS5mYThmMjFjOGEzM2FmZDMzNTUxOThlOGQ3NzE2YTgxMXAtNCwKKyAgICAweDEuZjhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTUKKyAgICAtMHgxLmZhOGYyMWM4YTMzYWZkMzM1NTE5OGU4ZDc3MTZhODExcC00LAorICAgIC0weDEuZjhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTYKKyAgICAweDEuZmE4ZjIzZDA3N2VmNDg2NDVlZmY5YTUxOTYyOGIzYTlwLTQsCisgICAgMHgxLmY4MDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDcxNworICAgIC0weDEuZmE4ZjIzZDA3N2VmNDg2NDVlZmY5YTUxOTYyOGIzYTlwLTQsCisgICAgLTB4MS5mODAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTgKKyAgICAweDEuNGVmMDZhYTczZWU2YTQzOWMwYzlmNDUwNDZiMjU5NzhwLTMsCisgICAgMHgxLjRiZmZmZXAtMworICB9LAorICB7IC8vIEVudHJ5IDcxOQorICAgIC0weDEuNGVmMDZhYTczZWU2YTQzOWMwYzlmNDUwNDZiMjU5NzhwLTMsCisgICAgLTB4MS40YmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjAKKyAgICAweDEuNGVmMDZjYjRmMGE4N2E1YzhlZWVlYmNlYjEyYTIyYjRwLTMsCisgICAgMHgxLjRjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzIxCisgICAgLTB4MS40ZWYwNmNiNGYwYTg3YTVjOGVlZWViY2ViMTJhMjJiNHAtMywKKyAgICAtMHgxLjRjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzIyCisgICAgMHgxLjRlZjA2ZWMyYTI2YTdiN2MxNzIxZmZhZmI5M2MwMjgxcC0zLAorICAgIDB4MS40YzAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjMKKyAgICAtMHgxLjRlZjA2ZWMyYTI2YTdiN2MxNzIxZmZhZmI5M2MwMjgxcC0zLAorICAgIC0weDEuNGMwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzI0CisgICAgMHgxLjNjYzJhMmZkOTExZTE1NTdkNTdiNDRhYmYyOGM0Y2NhcC0yLAorICAgIDB4MS4zMzMzMzJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjUKKyAgICAtMHgxLjNjYzJhMmZkOTExZTE1NTdkNTdiNDRhYmYyOGM0Y2NhcC0yLAorICAgIC0weDEuMzMzMzMycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzI2CisgICAgMHgxLjNjYzJhNTJlOGY0MTM3Y2EyN2QxZGMwNTY3MTk1NDQzcC0yLAorICAgIDB4MS4zMzMzMzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjcKKyAgICAtMHgxLjNjYzJhNTJlOGY0MTM3Y2EyN2QxZGMwNTY3MTk1NDQzcC0yLAorICAgIC0weDEuMzMzMzM0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzI4CisgICAgMHgxLjNjYzJhNzVmOGQ2NTA3YzU4OWJmMDhlMDM3MTM5NGJjcC0yLAorICAgIDB4MS4zMzMzMzZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjkKKyAgICAtMHgxLjNjYzJhNzVmOGQ2NTA3YzU4OWJmMDhlMDM3MTM5NGJjcC0yLAorICAgIC0weDEuMzMzMzM2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzMwCisgICAgMHgxLjk5NDM2ZTVmMDdiNzNkZGExZWY2MWE4MDBhYWRmZGQzcC0xLAorICAgIDB4MS41OTQzMTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzEKKyAgICAtMHgxLjk5NDM2ZTVmMDdiNzNkZGExZWY2MWE4MDBhYWRmZGQzcC0xLAorICAgIC0weDEuNTk0MzE2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzMyCisgICAgMHgxLjk5NDM3MWE2MmJmZTEzZWIxYzc1NWNiNWJlNDZmODUzcC0xLAorICAgIDB4MS41OTQzMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzMKKyAgICAtMHgxLjk5NDM3MWE2MmJmZTEzZWIxYzc1NWNiNWJlNDZmODUzcC0xLAorICAgIC0weDEuNTk0MzE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzM0CisgICAgMHgxLjk5NDM3NGVkNTA0YTI3ODIyNjU3MzU2MmI2MGVjYTlhcC0xLAorICAgIDB4MS41OTQzMWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzUKKyAgICAtMHgxLjk5NDM3NGVkNTA0YTI3ODIyNjU3MzU2MmI2MGVjYTlhcC0xLAorICAgIC0weDEuNTk0MzFhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzM2CisgICAgMHgxLmZiYzUwZGU3YzYwNWE0ZDFkMGYxMTE5YjEyOTRiNmYwcC0xLAorICAgIDB4MS44ZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MzcKKyAgICAtMHgxLmZiYzUwZGU3YzYwNWE0ZDFkMGYxMTE5YjEyOTRiNmYwcC0xLAorICAgIC0weDEuOGZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzM4CisgICAgMHgxLmZiYzUxMWRmNTkxN2Y1MzliYmNmNzc4YmMxYTIyMjQ5cC0xLAorICAgIDB4MS45MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDczOQorICAgIC0weDEuZmJjNTExZGY1OTE3ZjUzOWJiY2Y3NzhiYzFhMjIyNDlwLTEsCisgICAgLTB4MS45MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc0MAorICAgIDB4MS5mYmM1MTVkNmVjMzIyM2ZmYmVkNGJiNzUxNTRmZGEwZnAtMSwKKyAgICAweDEuOTAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzQxCisgICAgLTB4MS5mYmM1MTVkNmVjMzIyM2ZmYmVkNGJiNzUxNTRmZGEwZnAtMSwKKyAgICAtMHgxLjkwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDc0MgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDc0MworICAgIDB4MS5wLTE0OSwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NDQKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzQ1CisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDc0NgorICAgIC0weDEucC0xNDksCisgICAgLTB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDc0NworICAgIDB4MS45MjcyNzc1ZWE1ZWNmZjRlNDNlY2RlZjNkODVlYzIyNnAtNSwKKyAgICAweDEuOTIxZmI0cC01CisgIH0sCisgIHsgLy8gRW50cnkgNzQ4CisgICAgLTB4MS45MjcyNzc1ZWE1ZWNmZjRlNDNlY2RlZjNkODVlYzIyNnAtNSwKKyAgICAtMHgxLjkyMWZiNHAtNQorICB9LAorICB7IC8vIEVudHJ5IDc0OQorICAgIDB4MS45MjcyNzk1ZmUyNDJkOWViOTM5M2E3NDQ2NjIwYzM5NHAtNSwKKyAgICAweDEuOTIxZmI2cC01CisgIH0sCisgIHsgLy8gRW50cnkgNzUwCisgICAgLTB4MS45MjcyNzk1ZmUyNDJkOWViOTM5M2E3NDQ2NjIwYzM5NHAtNSwKKyAgICAtMHgxLjkyMWZiNnAtNQorICB9LAorICB7IC8vIEVudHJ5IDc1MQorICAgIDB4MS45MjcyN2I2MTFlOThiN2FmYjk3OTc3NTUxZDFjNWYzOHAtNSwKKyAgICAweDEuOTIxZmI4cC01CisgIH0sCisgIHsgLy8gRW50cnkgNzUyCisgICAgLTB4MS45MjcyN2I2MTFlOThiN2FmYjk3OTc3NTUxZDFjNWYzOHAtNSwKKyAgICAtMHgxLjkyMWZiOHAtNQorICB9LAorICB7IC8vIEVudHJ5IDc1MworICAgIDB4MS45MzZiYjc3ZTRhYzg1OWJjNjliYzRhYmM5ZTkxZjAyNXAtNCwKKyAgICAweDEuOTIxZmI0cC00CisgIH0sCisgIHsgLy8gRW50cnkgNzU0CisgICAgLTB4MS45MzZiYjc3ZTRhYzg1OWJjNjliYzRhYmM5ZTkxZjAyNXAtNCwKKyAgICAtMHgxLjkyMWZiNHAtNAorICB9LAorICB7IC8vIEVudHJ5IDc1NQorICAgIDB4MS45MzZiYjk4MzQyNDEwMjJlY2QwNzBiOTA2NDYzMjcyMXAtNCwKKyAgICAweDEuOTIxZmI2cC00CisgIH0sCisgIHsgLy8gRW50cnkgNzU2CisgICAgLTB4MS45MzZiYjk4MzQyNDEwMjJlY2QwNzBiOTA2NDYzMjcyMXAtNCwKKyAgICAtMHgxLjkyMWZiNnAtNAorICB9LAorICB7IC8vIEVudHJ5IDc1NworICAgIDB4MS45MzZiYmI4ODM5YjliNzViZGNjNWY2ODcwMjY3YTYwOXAtNCwKKyAgICAweDEuOTIxZmI4cC00CisgIH0sCisgIHsgLy8gRW50cnkgNzU4CisgICAgLTB4MS45MzZiYmI4ODM5YjliNzViZGNjNWY2ODcwMjY3YTYwOXAtNCwKKyAgICAtMHgxLjkyMWZiOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDc1OQorICAgIDB4MS45NzVmNWNiNDNiZDk1MWFhMmU4OWEwNWNiZjVlNzBmZnAtMywKKyAgICAweDEuOTIxZmI0cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzYwCisgICAgLTB4MS45NzVmNWNiNDNiZDk1MWFhMmU4OWEwNWNiZjVlNzBmZnAtMywKKyAgICAtMHgxLjkyMWZiNHAtMworICB9LAorICB7IC8vIEVudHJ5IDc2MQorICAgIDB4MS45NzVmNWVjODdkZGM0ZTdhMzU3MDU5ZjcxYTlmMDViMnAtMywKKyAgICAweDEuOTIxZmI2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzYyCisgICAgLTB4MS45NzVmNWVjODdkZGM0ZTdhMzU3MDU5ZjcxYTlmMDViMnAtMywKKyAgICAtMHgxLjkyMWZiNnAtMworICB9LAorICB7IC8vIEVudHJ5IDc2MworICAgIDB4MS45NzVmNjBkY2JmZGY4MDM5ZjAxZWI3ODY0YmMwOWUxM3AtMywKKyAgICAweDEuOTIxZmI4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzY0CisgICAgLTB4MS45NzVmNjBkY2JmZGY4MDM5ZjAxZWI3ODY0YmMwOWUxM3AtMywKKyAgICAtMHgxLjkyMWZiOHAtMworICB9LAorICB7IC8vIEVudHJ5IDc2NQorICAgIDB4MS5hODI3OTgyM2U5YmEzMGVlNjIzYTU0MDJhNDg1OTBmY3AtMiwKKyAgICAweDEuOTIxZmI0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzY2CisgICAgLTB4MS5hODI3OTgyM2U5YmEzMGVlNjIzYTU0MDJhNDg1OTBmY3AtMiwKKyAgICAtMHgxLjkyMWZiNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc2NworICAgIDB4MS5hODI3OWE3YmMyMjA2ZmZmM2FmYTUyZjE2OGM1ZjhmMnAtMiwKKyAgICAweDEuOTIxZmI2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzY4CisgICAgLTB4MS5hODI3OWE3YmMyMjA2ZmZmM2FmYTUyZjE2OGM1ZjhmMnAtMiwKKyAgICAtMHgxLjkyMWZiNnAtMgorICB9LAorICB7IC8vIEVudHJ5IDc2OQorICAgIDB4MS5hODI3OWNkMzlhODdhNzg2ZTE0MDUzN2RiNzJmZjMzNHAtMiwKKyAgICAweDEuOTIxZmI4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgNzcwCisgICAgLTB4MS5hODI3OWNkMzlhODdhNzg2ZTE0MDUzN2RiNzJmZjMzNHAtMiwKKyAgICAtMHgxLjkyMWZiOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDc3MQorICAgIDB4MS5mZmZmZmQ3NzdhNWU5MWU2MWY1MzgwZmI4MDhkMzI3MnAtMSwKKyAgICAweDEuOTIxZmI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzcyCisgICAgLTB4MS5mZmZmZmQ3NzdhNWU5MWU2MWY1MzgwZmI4MDhkMzI3MnAtMSwKKyAgICAtMHgxLjkyMWZiNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDc3MworICAgIDB4MS4wMDAwMDBiYmJkMmVjMDZkNmQ2ZmZmMzY1NWEzNDZhY3AwLAorICAgIDB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzQKKyAgICAtMHgxLjAwMDAwMGJiYmQyZWMwNmQ2ZDZmZmYzNjU1YTM0NmFjcDAsCisgICAgLTB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NzUKKyAgICAweDEuMDAwMDAyYmJiZDMyMzdlN2QxMTQyNzZlZDMyOWFmNWJwMCwKKyAgICAweDEuOTIxZmI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzc2CisgICAgLTB4MS4wMDAwMDJiYmJkMzIzN2U3ZDExNDI3NmVkMzI5YWY1YnAwLAorICAgIC0weDEuOTIxZmI4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzc3CisgICAgMHgxLjk0MzdiMzM2YjZiMGM0NzliMjI4MDk5OWIxOTU3NWM3cDIzLAorICAgIDB4MS45MjFmYjRwMAorICB9LAorICB7IC8vIEVudHJ5IDc3OAorICAgIC0weDEuOTQzN2IzMzZiNmIwYzQ3OWIyMjgwOTk5YjE5NTc1YzdwMjMsCisgICAgLTB4MS45MjFmYjRwMAorICB9LAorICB7IC8vIEVudHJ5IDc3OQorICAgIC0weDEuNWQxNDk0NmRjOTg5NzVkNjQyMWE1NTI4NGZlMDIwYTFwMjQsCisgICAgMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgNzgwCisgICAgMHgxLjVkMTQ5NDZkYzk4OTc1ZDY0MjFhNTUyODRmZTAyMGExcDI0LAorICAgIC0weDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODEKKyAgICAtMHgxLjc2YTE5MGViMmIwNzE4ZDhkYjU1ZjdkMmFiZWIwN2QycDIyLAorICAgIDB4MS45MjFmYjhwMAorICB9LAorICB7IC8vIEVudHJ5IDc4MgorICAgIDB4MS43NmExOTBlYjJiMDcxOGQ4ZGI1NWY3ZDJhYmViMDdkMnAyMiwKKyAgICAtMHgxLjkyMWZiOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzgzCisgICAgLTB4MS40NDQyZDE4NDY5OGM0MjZjOGUzZWZkMzU2Y2JlYmUwYXAtMjMsCisgICAgMHgxLjkyMWZiNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzg0CisgICAgMHgxLjQ0NDJkMTg0Njk4YzQyNmM4ZTNlZmQzNTZjYmViZTBhcC0yMywKKyAgICAtMHgxLjkyMWZiNHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzg1CisgICAgMHgxLjc3N2E1Y2Y3MmNlZGYzYjU0NGM4MTgwOGI1MTVmMWY5cC0yNCwKKyAgICAweDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODYKKyAgICAtMHgxLjc3N2E1Y2Y3MmNlZGYzYjU0NGM4MTgwOGI1MTVmMWY5cC0yNCwKKyAgICAtMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgNzg3CisgICAgMHgxLjVkZGU5NzNkY2I0OGQ2ZTNkMTNjZjJhNTE1NTBlOTExcC0yMiwKKyAgICAweDEuOTIxZmI4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3ODgKKyAgICAtMHgxLjVkZGU5NzNkY2I0OGQ2ZTNkMTNjZjJhNTE1NTBlOTExcC0yMiwKKyAgICAtMHgxLjkyMWZiOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzg5CisgICAgLTB4MS40NDQyZDE4NDY5OTQ2MzYyZjNmNmNjN2M0Mzg1NzY2MXAtMjIsCisgICAgMHgxLjkyMWZiNHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzkwCisgICAgMHgxLjQ0NDJkMTg0Njk5NDYzNjJmM2Y2Y2M3YzQzODU3NjYxcC0yMiwKKyAgICAtMHgxLjkyMWZiNHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzkxCisgICAgMHgxLjc3N2E1Y2Y3MmNmMTFiNzM5ZDJhYjE4NzdlODFhOWM3cC0yMywKKyAgICAweDEuOTIxZmI2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTIKKyAgICAtMHgxLjc3N2E1Y2Y3MmNmMTFiNzM5ZDJhYjE4NzdlODFhOWM3cC0yMywKKyAgICAtMHgxLjkyMWZiNnAyCisgIH0sCisgIHsgLy8gRW50cnkgNzkzCisgICAgMHgxLjVkZGU5NzNkY2I3MWFlYjZlNzc2NjY4YmJiM2RlMjUzcC0yMSwKKyAgICAweDEuOTIxZmI4cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTQKKyAgICAtMHgxLjVkZGU5NzNkY2I3MWFlYjZlNzc2NjY4YmJiM2RlMjUzcC0yMSwKKyAgICAtMHgxLjkyMWZiOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNzk1CisgICAgLTB4MS40NDQyZDE4NDY5YjRlNzNjOGFkNjBlN2I5ZjI4OGM1Y3AtMjEsCisgICAgMHgxLjkyMWZiNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzk2CisgICAgMHgxLjQ0NDJkMTg0NjliNGU3M2M4YWQ2MGU3YjlmMjg4YzVjcC0yMSwKKyAgICAtMHgxLjkyMWZiNHAzCisgIH0sCisgIHsgLy8gRW50cnkgNzk3CisgICAgMHgxLjc3N2E1Y2Y3MmNmZGJhNmNmZWI1MTgyNThiY2YyNjNjcC0yMiwKKyAgICAweDEuOTIxZmI2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OTgKKyAgICAtMHgxLjc3N2E1Y2Y3MmNmZGJhNmNmZWI1MTgyNThiY2YyNjNjcC0yMiwKKyAgICAtMHgxLjkyMWZiNnAzCisgIH0sCisgIHsgLy8gRW50cnkgNzk5CisgICAgMHgxLjVkZGU5NzNkY2MxNTBlMDM0MDVjYTg5NDg4NjYwMmMycC0yMCwKKyAgICAweDEuOTIxZmI4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDAKKyAgICAtMHgxLjVkZGU5NzNkY2MxNTBlMDM0MDVjYTg5NDg4NjYwMmMycC0yMCwKKyAgICAtMHgxLjkyMWZiOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODAxCisgICAgLTB4MS40NDQyZDE4NDZhMzZmNmEyZTY1MzY0YjkxNjM4MmU5YnAtMjAsCisgICAgMHgxLjkyMWZiNHA0CisgIH0sCisgIHsgLy8gRW50cnkgODAyCisgICAgMHgxLjQ0NDJkMTg0NmEzNmY2YTJlNjUzNjRiOTE2MzgyZTlicC0yMCwKKyAgICAtMHgxLjkyMWZiNHA0CisgIH0sCisgIHsgLy8gRW50cnkgODAzCisgICAgMHgxLjc3N2E1Y2Y3MmQzMDM2NTI4NGRlYmNjYzNhZWVlYzE3cC0yMSwKKyAgICAweDEuOTIxZmI2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDQKKyAgICAtMHgxLjc3N2E1Y2Y3MmQzMDM2NTI4NGRlYmNjYzNhZWVlYzE3cC0yMSwKKyAgICAtMHgxLjkyMWZiNnA0CisgIH0sCisgIHsgLy8gRW50cnkgODA1CisgICAgMHgxLjVkZGU5NzNkY2VhMjhiMzRhM2ZjZDc5YjE0NGE1MDUwcC0xOSwKKyAgICAweDEuOTIxZmI4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MDYKKyAgICAtMHgxLjVkZGU5NzNkY2VhMjhiMzRhM2ZjZDc5YjE0NGE1MDUwcC0xOSwKKyAgICAtMHgxLjkyMWZiOHA0CisgIH0sCisgIHsgLy8gRW50cnkgODA3CisgICAgLTB4MS40NDQyZDE4NDZjM2YzNDNjNTQ0ZGExYWY3YWFiNjkwY3AtMTksCisgICAgMHgxLjkyMWZiNHA1CisgIH0sCisgIHsgLy8gRW50cnkgODA4CisgICAgMHgxLjQ0NDJkMTg0NmMzZjM0M2M1NDRkYTFhZjdhYWI2OTBjcC0xOSwKKyAgICAtMHgxLjkyMWZiNHA1CisgIH0sCisgIHsgLy8gRW50cnkgODA5CisgICAgMHgxLjc3N2E1Y2Y3MmRmYTI1ZTg5ZDg1ZjI0ZTk2MGI0NDU1cC0yMCwKKyAgICAweDEuOTIxZmI2cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTAKKyAgICAtMHgxLjc3N2E1Y2Y3MmRmYTI1ZTg5ZDg1ZjI0ZTk2MGI0NDU1cC0yMCwKKyAgICAtMHgxLjkyMWZiNnA1CisgIH0sCisgIHsgLy8gRW50cnkgODExCisgICAgMHgxLjVkZGU5NzNkZDhkODdmZmEzMmYwMDFlYWI4MWQ5NjBjcC0xOCwKKyAgICAweDEuOTIxZmI4cDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTIKKyAgICAtMHgxLjVkZGU5NzNkZDhkODdmZmEzMmYwMDFlYWI4MWQ5NjBjcC0xOCwKKyAgICAtMHgxLjkyMWZiOHA1CisgIH0sCisgIHsgLy8gRW50cnkgODEzCisgICAgLTB4MS40NDQyZDE4NDc0NjAyYWEyMGM4NGQ1OTE4ZmM2OGE4ZXAtMTgsCisgICAgMHgxLjkyMWZiNHA2CisgIH0sCisgIHsgLy8gRW50cnkgODE0CisgICAgMHgxLjQ0NDJkMTg0NzQ2MDJhYTIwYzg0ZDU5MThmYzY4YThlcC0xOCwKKyAgICAtMHgxLjkyMWZiNHA2CisgIH0sCisgIHsgLy8gRW50cnkgODE1CisgICAgMHgxLjc3N2E1Y2Y3MzEyMWU0NDEwMDJjZjZkMWVjNTBkNTZkcC0xOSwKKyAgICAweDEuOTIxZmI2cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTYKKyAgICAtMHgxLjc3N2E1Y2Y3MzEyMWU0NDEwMDJjZjZkMWVjNTBkNTZkcC0xOSwKKyAgICAtMHgxLjkyMWZiNnA2CisgIH0sCisgIHsgLy8gRW50cnkgODE3CisgICAgMHgxLjVkZGU5NzNlMDFiMDUzMTA3NWUzOGU4MDhjZTA0OGYycC0xNywKKyAgICAweDEuOTIxZmI4cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MTgKKyAgICAtMHgxLjVkZGU5NzNlMDFiMDUzMTA3NWUzOGU4MDhjZTA0OGYycC0xNywKKyAgICAtMHgxLjkyMWZiOHA2CisgIH0sCisgIHsgLy8gRW50cnkgODE5CisgICAgLTB4MS40NDQyZDE4NDk0ZTQwNDM4ZjI0NWE1YTIxOWRlYTIzNXAtMTcsCisgICAgMHgxLjkyMWZiNHA3CisgIH0sCisgIHsgLy8gRW50cnkgODIwCisgICAgMHgxLjQ0NDJkMTg0OTRlNDA0MzhmMjQ1YTVhMjE5ZGVhMjM1cC0xNywKKyAgICAtMHgxLjkyMWZiNHA3CisgIH0sCisgIHsgLy8gRW50cnkgODIxCisgICAgMHgxLjc3N2E1Y2Y3M2RjMGRkYTI4YjZiZjA3ZGUyYjJkNWU2cC0xOCwKKyAgICAweDEuOTIxZmI2cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjIKKyAgICAtMHgxLjc3N2E1Y2Y3M2RjMGRkYTI4YjZiZjA3ZGUyYjJkNWU2cC0xOCwKKyAgICAtMHgxLjkyMWZiNnA3CisgIH0sCisgIHsgLy8gRW50cnkgODIzCisgICAgMHgxLjVkZGU5NzNlYTUwZjlmNjlmNDFmZjY0YzhjNmRiNzYxcC0xNiwKKyAgICAweDEuOTIxZmI4cDcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjQKKyAgICAtMHgxLjVkZGU5NzNlYTUwZjlmNjlmNDFmZjY0YzhjNmRiNzYxcC0xNiwKKyAgICAtMHgxLjkyMWZiOHA3CisgIH0sCisgIHsgLy8gRW50cnkgODI1CisgICAgLTB4MS4wMDAwMGZjY2M4ZjE1ZWU4OWYwOWQyMjJlMTRjNzI5MnAwLAorICAgIDB4MS4yZDk3YzRwMQorICB9LAorICB7IC8vIEVudHJ5IDgyNgorICAgIDB4MS4wMDAwMGZjY2M4ZjE1ZWU4OWYwOWQyMjJlMTRjNzI5MnAwLAorICAgIC0weDEuMmQ5N2M0cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MjcKKyAgICAtMHgxLjAwMDAwN2NjYzg5MmY4YTA3NjBjYzIwODI3YWNlNDc2cDAsCisgICAgMHgxLjJkOTdjNnAxCisgIH0sCisgIHsgLy8gRW50cnkgODI4CisgICAgMHgxLjAwMDAwN2NjYzg5MmY4YTA3NjBjYzIwODI3YWNlNDc2cDAsCisgICAgLTB4MS4yZDk3YzZwMQorICB9LAorICB7IC8vIEVudHJ5IDgyOQorICAgIC0weDEuZmZmZmZmOTk5MGU5MjRiODY2ZTgzMWM5ZTllNjM5YzdwLTEsCisgICAgMHgxLjJkOTdjOHAxCisgIH0sCisgIHsgLy8gRW50cnkgODMwCisgICAgMHgxLmZmZmZmZjk5OTBlOTI0Yjg2NmU4MzFjOWU5ZTYzOWM3cC0xLAorICAgIC0weDEuMmQ5N2M4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MzEKKyAgICAweDEuZmZmZmViNTU2NDNiOWE2NDhjMjcyMGJkZTFkMjI3NjRwLTEsCisgICAgMHgxLmY2YTdhMHAxCisgIH0sCisgIHsgLy8gRW50cnkgODMyCisgICAgLTB4MS5mZmZmZWI1NTY0M2I5YTY0OGMyNzIwYmRlMWQyMjc2NHAtMSwKKyAgICAtMHgxLmY2YTdhMHAxCisgIH0sCisgIHsgLy8gRW50cnkgODMzCisgICAgMHgxLmZmZmZmYjU1NjNkNjQ1ODVlOWRjYzk3ZDc0MzIxNDYxcC0xLAorICAgIDB4MS5mNmE3YTJwMQorICB9LAorICB7IC8vIEVudHJ5IDgzNAorICAgIC0weDEuZmZmZmZiNTU2M2Q2NDU4NWU5ZGNjOTdkNzQzMjE0NjFwLTEsCisgICAgLTB4MS5mNmE3YTJwMQorICB9LAorICB7IC8vIEVudHJ5IDgzNQorICAgIDB4MS4wMDAwMDVhYWIxZjg3ODUyNzkyMjM3NjUyZDM0YjFjZXAwLAorICAgIDB4MS5mNmE3YTRwMQorICB9LAorICB7IC8vIEVudHJ5IDgzNgorICAgIC0weDEuMDAwMDA1YWFiMWY4Nzg1Mjc5MjIzNzY1MmQzNGIxY2VwMCwKKyAgICAtMHgxLmY2YTdhNHAxCisgIH0sCisgIHsgLy8gRW50cnkgODM3CisgICAgMHgxLjAzM2RkOTFjMTAzNTg2MWFlNDU1ZTBmOGRjMjc0YjBkcDIwLAorICAgIDB4MS4yZDk3YzRwMgorICB9LAorICB7IC8vIEVudHJ5IDgzOAorICAgIC0weDEuMDMzZGQ5MWMxMDM1ODYxYWU0NTVlMGY4ZGMyNzRiMGRwMjAsCisgICAgLTB4MS4yZDk3YzRwMgorICB9LAorICB7IC8vIEVudHJ5IDgzOQorICAgIDB4MS4wNjkwZmI0Nzc0YWI4MGNjZGRjOWVmNWFkMGZjYzIzN3AyMSwKKyAgICAweDEuMmQ5N2M2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDAKKyAgICAtMHgxLjA2OTBmYjQ3NzRhYjgwY2NkZGM5ZWY1YWQwZmNjMjM3cDIxLAorICAgIC0weDEuMmQ5N2M2cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDEKKyAgICAtMHgxLjNmZTRkYWMwNmQ4MzA4MzdmNmM1ODRhZjZmOGQ5Mzk5cDI2LAorICAgIDB4MS4yZDk3YzhwMgorICB9LAorICB7IC8vIEVudHJ5IDg0MgorICAgIDB4MS4zZmU0ZGFjMDZkODMwODM3ZjZjNTg0YWY2ZjhkOTM5OXAyNiwKKyAgICAtMHgxLjJkOTdjOHAyCisgIH0sCisgIHsgLy8gRW50cnkgODQzCisgICAgLTB4MS4wMDAwMTRkZGQ0OTQ1Mzk0Y2I2ZWM3Zjg3ZGViYzdhNXAwLAorICAgIDB4MS41ZmRiYmNwMgorICB9LAorICB7IC8vIEVudHJ5IDg0NAorICAgIDB4MS4wMDAwMTRkZGQ0OTQ1Mzk0Y2I2ZWM3Zjg3ZGViYzdhNXAwLAorICAgIC0weDEuNWZkYmJjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDUKKyAgICAtMHgxLjAwMDAwNGRkZDNjNjc2NGQ3MzY5YTBiZTYxYTYzMGU3cDAsCisgICAgMHgxLjVmZGJiZXAyCisgIH0sCisgIHsgLy8gRW50cnkgODQ2CisgICAgMHgxLjAwMDAwNGRkZDNjNjc2NGQ3MzY5YTBiZTYxYTYzMGU3cDAsCisgICAgLTB4MS41ZmRiYmVwMgorICB9LAorICB7IC8vIEVudHJ5IDg0NworICAgIC0weDEuZmZmZmU5YmJhN2YxMzIxZmFlMTkyOTQzYTNlODQ4YzBwLTEsCisgICAgMHgxLjVmZGJjMHAyCisgIH0sCisgIHsgLy8gRW50cnkgODQ4CisgICAgMHgxLmZmZmZlOWJiYTdmMTMyMWZhZTE5Mjk0M2EzZTg0OGMwcC0xLAorICAgIC0weDEuNWZkYmMwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NDkKKyAgICAweDEuZmZmZmMxMzM1MTFlYTJkM2I5ODhiZjg1MzE2ZDRlMDVwLTEsCisgICAgMHgxLmM0NjNhOHAyCisgIH0sCisgIHsgLy8gRW50cnkgODUwCisgICAgLTB4MS5mZmZmYzEzMzUxMWVhMmQzYjk4OGJmODUzMTZkNGUwNXAtMSwKKyAgICAtMHgxLmM0NjNhOHAyCisgIH0sCisgIHsgLy8gRW50cnkgODUxCisgICAgMHgxLmZmZmZlMTMzNGUzMWQ3ZWYyMGQ2MjIwYzY1ZGQyZjlicC0xLAorICAgIDB4MS5jNDYzYWFwMgorICB9LAorICB7IC8vIEVudHJ5IDg1MgorICAgIC0weDEuZmZmZmUxMzM0ZTMxZDdlZjIwZDYyMjBjNjVkZDJmOWJwLTEsCisgICAgLTB4MS5jNDYzYWFwMgorICB9LAorICB7IC8vIEVudHJ5IDg1MworICAgIDB4MS4wMDAwMDA5OWE2YTI4NjY2Nzc2MWMyODc0YzU4OTBhZXAwLAorICAgIDB4MS5jNDYzYWNwMgorICB9LAorICB7IC8vIEVudHJ5IDg1NAorICAgIC0weDEuMDAwMDAwOTlhNmEyODY2Njc3NjFjMjg3NGM1ODkwYWVwMCwKKyAgICAtMHgxLmM0NjNhY3AyCisgIH0sCisgIHsgLy8gRW50cnkgODU1CisgICAgMHgxLjhjNjQyZThjYzU2YTliMjMzNDUwZDZiNjM1YTYyNjZkcDIwLAorICAgIDB4MS5mNmE3YTBwMgorICB9LAorICB7IC8vIEVudHJ5IDg1NgorICAgIC0weDEuOGM2NDJlOGNjNTZhOWIyMzM0NTBkNmI2MzVhNjI2NmRwMjAsCisgICAgLTB4MS5mNmE3YTBwMgorICB9LAorICB7IC8vIEVudHJ5IDg1NworICAgIDB4MS5iNmUwYmZiNzI4ZTQyMzYzY2Q1ZmIyNmIzMWMzNjZjMnAyMiwKKyAgICAweDEuZjZhN2EycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTgKKyAgICAtMHgxLmI2ZTBiZmI3MjhlNDIzNjNjZDVmYjI2YjMxYzM2NmMycDIyLAorICAgIC0weDEuZjZhN2EycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NTkKKyAgICAtMHgxLjY5Njc5Yjk2NmFjYzQzZGZkYjI4MzgzYWE5NzZmNWMxcDIxLAorICAgIDB4MS5mNmE3YTRwMgorICB9LAorICB7IC8vIEVudHJ5IDg2MAorICAgIDB4MS42OTY3OWI5NjZhY2M0M2RmZGIyODM4M2FhOTc2ZjVjMXAyMSwKKyAgICAtMHgxLmY2YTdhNHAyCisgIH0sCisgIHsgLy8gRW50cnkgODYxCisgICAgLTB4MS4wMDAwMjllZWUyNmZlMjExYmI0YTJmOGUyM2EwYTllOXAwLAorICAgIDB4MS4xNDc1Y2FwMworICB9LAorICB7IC8vIEVudHJ5IDg2MgorICAgIDB4MS4wMDAwMjllZWUyNmZlMjExYmI0YTJmOGUyM2EwYTllOXAwLAorICAgIC0weDEuMTQ3NWNhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjMKKyAgICAtMHgxLjAwMDAwOWVlZGYzMjA1ZDJlOWI2NmEzNzgzZTAyZjA1cDAsCisgICAgMHgxLjE0NzVjY3AzCisgIH0sCisgIHsgLy8gRW50cnkgODY0CisgICAgMHgxLjAwMDAwOWVlZGYzMjA1ZDJlOWI2NmEzNzgzZTAyZjA1cDAsCisgICAgLTB4MS4xNDc1Y2NwMworICB9LAorICB7IC8vIEVudHJ5IDg2NQorICAgIC0weDEuZmZmZmQzZGRiZmU4NTNjNzFlNGE1Zjc1MDJiMDljNGVwLTEsCisgICAgMHgxLjE0NzVjZXAzCisgIH0sCisgIHsgLy8gRW50cnkgODY2CisgICAgMHgxLmZmZmZkM2RkYmZlODUzYzcxZTRhNWY3NTAyYjA5YzRlcC0xLAorICAgIC0weDEuMTQ3NWNlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjcKKyAgICAtMHgxLmY5OTkwZTkxYWEyNGY1NTBjZWY1N2ZhNDEwNmM1NmVicC0yMCwKKyAgICAweDEuMmQ5N2M0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjgKKyAgICAweDEuZjk5OTBlOTFhYTI0ZjU1MGNlZjU3ZmE0MTA2YzU2ZWJwLTIwLAorICAgIC0weDEuMmQ5N2M0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NjkKKyAgICAtMHgxLmYzMzIxZDIzNGZjNTU3YTYxYzYzOGVmNzc1MmRlNDNmcC0yMSwKKyAgICAweDEuMmQ5N2M2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzAKKyAgICAweDEuZjMzMjFkMjM0ZmM1NTdhNjFjNjM4ZWY3NzUyZGU0M2ZwLTIxLAorICAgIC0weDEuMmQ5N2M2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzEKKyAgICAweDEuOTliYzViOTYxYjFhZTM2M2NmYzBmZmFhYjRmMGU1MDVwLTI2LAorICAgIDB4MS4yZDk3YzhwMworICB9LAorICB7IC8vIEVudHJ5IDg3MgorICAgIC0weDEuOTliYzViOTYxYjFhZTM2M2NmYzBmZmFhYjRmMGU1MDVwLTI2LAorICAgIC0weDEuMmQ5N2M4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NzMKKyAgICAweDEuZmZmZjk3MTE0MTc5NDQ2MTI3NmYzNDJiZDI5YzVhMWZwLTEsCisgICAgMHgxLjQ2YjljMHAzCisgIH0sCisgIHsgLy8gRW50cnkgODc0CisgICAgLTB4MS5mZmZmOTcxMTQxNzk0NDYxMjc2ZjM0MmJkMjljNWExZnAtMSwKKyAgICAtMHgxLjQ2YjljMHAzCisgIH0sCisgIHsgLy8gRW50cnkgODc1CisgICAgMHgxLmZmZmZkNzExMzg1YjZjOWEwMTNkYWJlOWI3MjU0NjY1cC0xLAorICAgIDB4MS40NmI5YzJwMworICB9LAorICB7IC8vIEVudHJ5IDg3NgorICAgIC0weDEuZmZmZmQ3MTEzODViNmM5YTAxM2RhYmU5YjcyNTQ2NjVwLTEsCisgICAgLTB4MS40NmI5YzJwMworICB9LAorICB7IC8vIEVudHJ5IDg3NworICAgIDB4MS4wMDAwMGI4ODliOWVjOWM1YjI3N2ZiNmE5MWNmNWY0OXAwLAorICAgIDB4MS40NmI5YzRwMworICB9LAorICB7IC8vIEVudHJ5IDg3OAorICAgIC0weDEuMDAwMDBiODg5YjllYzljNWIyNzdmYjZhOTFjZjVmNDlwMCwKKyAgICAtMHgxLjQ2YjljNHAzCisgIH0sCisgIHsgLy8gRW50cnkgODc5CisgICAgMHgxLjg4OTczY2IwMmEwZWVhMmNmZTFhMjgxY2E3ZjA0NjYzcDE5LAorICAgIDB4MS41ZmRiYmNwMworICB9LAorICB7IC8vIEVudHJ5IDg4MAorICAgIC0weDEuODg5NzNjYjAyYTBlZWEyY2ZlMWEyODFjYTdmMDQ2NjNwMTksCisgICAgLTB4MS41ZmRiYmNwMworICB9LAorICB7IC8vIEVudHJ5IDg4MQorICAgIDB4MS5hNGQ1ZDVkNzUzODQxYzg5Y2ZlNzFjMjVhYmM4ZDY0NXAyMSwKKyAgICAweDEuNWZkYmJlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODIKKyAgICAtMHgxLmE0ZDVkNWQ3NTM4NDFjODljZmU3MWMyNWFiYzhkNjQ1cDIxLAorICAgIC0weDEuNWZkYmJlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODMKKyAgICAtMHgxLjZmZTYyYTFhOWExMmI3MGIxZmJiOTUyODAxZjk5ODAxcDIwLAorICAgIDB4MS41ZmRiYzBwMworICB9LAorICB7IC8vIEVudHJ5IDg4NAorICAgIDB4MS42ZmU2MmExYTlhMTJiNzBiMWZiYjk1MjgwMWY5OTgwMXAyMCwKKyAgICAtMHgxLjVmZGJjMHAzCisgIH0sCisgIHsgLy8gRW50cnkgODg1CisgICAgLTB4MS4wMDAwM2VmZmYyMDczZTFjMGRkNjVkM2I4M2U1ZTU4OXAwLAorICAgIDB4MS43OGZkYjZwMworICB9LAorICB7IC8vIEVudHJ5IDg4NgorICAgIDB4MS4wMDAwM2VmZmYyMDczZTFjMGRkNjVkM2I4M2U1ZTU4OXAwLAorICAgIC0weDEuNzhmZGI2cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4ODcKKyAgICAtMHgxLjAwMDAxZWZmZWMyNzNmYjQ2YmI1ZWNmZWM1M2MzMTA1cDAsCisgICAgMHgxLjc4ZmRiOHAzCisgIH0sCisgIHsgLy8gRW50cnkgODg4CisgICAgMHgxLjAwMDAxZWZmZWMyNzNmYjQ2YmI1ZWNmZWM1M2MzMTA1cDAsCisgICAgLTB4MS43OGZkYjhwMworICB9LAorICB7IC8vIEVudHJ5IDg4OQorICAgIC0weDEuZmZmZmZkZmZkNDhlODQ4OTkyMjdjZWExZjc3YTFjZjdwLTEsCisgICAgMHgxLjc4ZmRiYXAzCisgIH0sCisgIHsgLy8gRW50cnkgODkwCisgICAgMHgxLmZmZmZmZGZmZDQ4ZTg0ODk5MjI3Y2VhMWY3N2ExY2Y3cC0xLAorICAgIC0weDEuNzhmZGJhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OTEKKyAgICAweDEuZmZmZmFjZWYyNmU5NjVkMTI1MzQyNGZiYmM5ZmYzNTRwLTEsCisgICAgMHgxLmFiNDFhZXAzCisgIH0sCisgIHsgLy8gRW50cnkgODkyCisgICAgLTB4MS5mZmZmYWNlZjI2ZTk2NWQxMjUzNDI0ZmJiYzlmZjM1NHAtMSwKKyAgICAtMHgxLmFiNDFhZXAzCisgIH0sCisgIHsgLy8gRW50cnkgODkzCisgICAgMHgxLmZmZmZlY2VmMjA4NzRhOGYwMzVhYzRkYzFhNjAyOWY4cC0xLAorICAgIDB4MS5hYjQxYjBwMworICB9LAorICB7IC8vIEVudHJ5IDg5NAorICAgIC0weDEuZmZmZmVjZWYyMDg3NGE4ZjAzNWFjNGRjMWE2MDI5ZjhwLTEsCisgICAgLTB4MS5hYjQxYjBwMworICB9LAorICB7IC8vIEVudHJ5IDg5NQorICAgIDB4MS4wMDAwMTY3NzkxMTI5NzVhMmQ0YjliNzViZDkwYjNjMXAwLAorICAgIDB4MS5hYjQxYjJwMworICB9LAorICB7IC8vIEVudHJ5IDg5NgorICAgIC0weDEuMDAwMDE2Nzc5MTEyOTc1YTJkNGI5Yjc1YmQ5MGIzYzFwMCwKKyAgICAtMHgxLmFiNDFiMnAzCisgIH0sCisgIHsgLy8gRW50cnkgODk3CisgICAgMHgxLjA0ZTRiNDBhY2RmOTQzOWZlY2NkNDliYmViMzdkYTBmcDE5LAorICAgIDB4MS5jNDYzYThwMworICB9LAorICB7IC8vIEVudHJ5IDg5OAorICAgIC0weDEuMDRlNGI0MGFjZGY5NDM5ZmVjY2Q0OWJiZWIzN2RhMGZwMTksCisgICAgLTB4MS5jNDYzYThwMworICB9LAorICB7IC8vIEVudHJ5IDg5OQorICAgIDB4MS4wOWZhM2FlMWY0OTEzZDFiMzc2NGZmOWE5Njc4ZWY2OHAyMCwKKyAgICAweDEuYzQ2M2FhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDAKKyAgICAtMHgxLjA5ZmEzYWUxZjQ5MTNkMWIzNzY0ZmY5YTk2NzhlZjY4cDIwLAorICAgIC0weDEuYzQ2M2FhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDEKKyAgICAtMHgxLmFhODY3OTAwOTIwM2RkNmU5NDJmOTE3NTI3NWE3NDYxcDI0LAorICAgIDB4MS5jNDYzYWNwMworICB9LAorICB7IC8vIEVudHJ5IDkwMgorICAgIDB4MS5hYTg2NzkwMDkyMDNkZDZlOTQyZjkxNzUyNzVhNzQ2MXAyNCwKKyAgICAtMHgxLmM0NjNhY3AzCisgIH0sCisgIHsgLy8gRW50cnkgOTAzCisgICAgLTB4MS4wMDAwMzQxMGZhZDg0NmZkNjdkMzVlMGMwZDk4MzYyOHAwLAorICAgIDB4MS5kZDg1YTRwMworICB9LAorICB7IC8vIEVudHJ5IDkwNAorICAgIDB4MS4wMDAwMzQxMGZhZDg0NmZkNjdkMzVlMGMwZDk4MzYyOHAwLAorICAgIC0weDEuZGQ4NWE0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDUKKyAgICAtMHgxLjAwMDAxNDEwZjY1NjI3OWU4OWQxNGNmNDA1NGY2YzU2cDAsCisgICAgMHgxLmRkODVhNnAzCisgIH0sCisgIHsgLy8gRW50cnkgOTA2CisgICAgMHgxLjAwMDAxNDEwZjY1NjI3OWU4OWQxNGNmNDA1NGY2YzU2cDAsCisgICAgLTB4MS5kZDg1YTZwMworICB9LAorICB7IC8vIEVudHJ5IDkwNworICAgIC0weDEuZmZmZmU4MjFlYmE4MTFjMDY3MjQwZjY2NmM5MDQzNzFwLTEsCisgICAgMHgxLmRkODVhOHAzCisgIH0sCisgIHsgLy8gRW50cnkgOTA4CisgICAgMHgxLmZmZmZlODIxZWJhODExYzA2NzI0MGY2NjZjOTA0MzcxcC0xLAorICAgIC0weDEuZGQ4NWE4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MDkKKyAgICAtMHgxLjRhYTljMmYyYzJhZGRiOWI1OWUzOTQwMTIzOTc2MWUycC0yMCwKKyAgICAweDEuZjZhN2EwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTAKKyAgICAweDEuNGFhOWMyZjJjMmFkZGI5YjU5ZTM5NDAxMjM5NzYxZTJwLTIwLAorICAgIC0weDEuZjZhN2EwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTEKKyAgICAtMHgxLjJhYTcwYmNiMDdlMDU3YjcyOWVhY2JjMGNmMTdjYmJmcC0yMiwKKyAgICAweDEuZjZhN2EycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTIKKyAgICAweDEuMmFhNzBiY2IwN2UwNTdiNzI5ZWFjYmMwY2YxN2NiYmZwLTIyLAorICAgIC0weDEuZjZhN2EycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTMKKyAgICAweDEuNmFhYzdhMWE3YzUwYjg3M2JlZDM5YjY4NTliZjI5MzRwLTIxLAorICAgIDB4MS5mNmE3YTRwMworICB9LAorICB7IC8vIEVudHJ5IDkxNAorICAgIC0weDEuNmFhYzdhMWE3YzUwYjg3M2JlZDM5YjY4NTliZjI5MzRwLTIxLAorICAgIC0weDEuZjZhN2E0cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MTUKKyAgICAweDEuZmZmZjQyY2QyYzk1NTA4ZTcwMGFiNzY5NTZkZDA0Y2ZwLTEsCisgICAgMHgxLjA3ZTRjY3A0CisgIH0sCisgIHsgLy8gRW50cnkgOTE2CisgICAgLTB4MS5mZmZmNDJjZDJjOTU1MDhlNzAwYWI3Njk1NmRkMDRjZnAtMSwKKyAgICAtMHgxLjA3ZTRjY3A0CisgIH0sCisgIHsgLy8gRW50cnkgOTE3CisgICAgMHgxLmZmZmZjMmNkMGQ0ODliNDg4NDQxNzljNTk0MzU2ZTBkcC0xLAorICAgIDB4MS4wN2U0Y2VwNAorICB9LAorICB7IC8vIEVudHJ5IDkxOAorICAgIC0weDEuZmZmZmMyY2QwZDQ4OWI0ODg0NDE3OWM1OTQzNTZlMGRwLTEsCisgICAgLTB4MS4wN2U0Y2VwNAorICB9LAorICB7IC8vIEVudHJ5IDkxOQorICAgIDB4MS4wMDAwMjE2Njg2ZmRlZjJlMWRkMzFhMmVhYTZhMWNkNHAwLAorICAgIDB4MS4wN2U0ZDBwNAorICB9LAorICB7IC8vIEVudHJ5IDkyMAorICAgIC0weDEuMDAwMDIxNjY4NmZkZWYyZTFkZDMxYTJlYWE2YTFjZDRwMCwKKyAgICAtMHgxLjA3ZTRkMHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTIxCisgICAgMHgxLjg2YjdiYTQ5MjNiY2YxNTdkY2MzMzI5MTg3MWU4OGQ0cDE4LAorICAgIDB4MS4xNDc1Y2FwNAorICB9LAorICB7IC8vIEVudHJ5IDkyMgorICAgIC0weDEuODZiN2JhNDkyM2JjZjE1N2RjYzMzMjkxODcxZTg4ZDRwMTgsCisgICAgLTB4MS4xNDc1Y2FwNAorICB9LAorICB7IC8vIEVudHJ5IDkyMworICAgIDB4MS45YzViZWNmMjg3M2VlZDM2OWFmZGMzMTU5YTdmNzk3Y3AyMCwKKyAgICAweDEuMTQ3NWNjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjQKKyAgICAtMHgxLjljNWJlY2YyODczZWVkMzY5YWZkYzMxNTlhN2Y3OTdjcDIwLAorICAgIC0weDEuMTQ3NWNjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjUKKyAgICAtMHgxLjczM2MwZDg0MzMyZmE2MDZkMWJkMjA3YTQ5MWU0MzcxcDE5LAorICAgIDB4MS4xNDc1Y2VwNAorICB9LAorICB7IC8vIEVudHJ5IDkyNgorICAgIDB4MS43MzNjMGQ4NDMzMmZhNjA2ZDFiZDIwN2E0OTFlNDM3MXAxOSwKKyAgICAtMHgxLjE0NzVjZXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTI3CisgICAgLTB4MS4wMDAwNDkyMjBiNDUxYmY2ZThlNjA1NTUwYzg4NjAyZnAwLAorICAgIDB4MS4yMTA2YzhwNAorICB9LAorICB7IC8vIEVudHJ5IDkyOAorICAgIDB4MS4wMDAwNDkyMjBiNDUxYmY2ZThlNjA1NTUwYzg4NjAyZnAwLAorICAgIC0weDEuMjEwNmM4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MjkKKyAgICAtMHgxLjAwMDAwOTIyMDBmYzk5YzVkZmE0ZmUxODA4NWNmN2NkcDAsCisgICAgMHgxLjIxMDZjYXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTMwCisgICAgMHgxLjAwMDAwOTIyMDBmYzk5YzVkZmE0ZmUxODA4NWNmN2NkcDAsCisgICAgLTB4MS4yMTA2Y2FwNAorICB9LAorICB7IC8vIEVudHJ5IDkzMQorICAgIC0weDEuZmZmZjkyNDQwZDY4MzE3MjJkZWMwZDMxODEwZDhmYzdwLTEsCisgICAgMHgxLjIxMDZjY3A0CisgIH0sCisgIHsgLy8gRW50cnkgOTMyCisgICAgMHgxLmZmZmY5MjQ0MGQ2ODMxNzIyZGVjMGQzMTgxMGQ4ZmM3cC0xLAorICAgIC0weDEuMjEwNmNjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzMKKyAgICAtMHgxLmY5OTkwZTkxYjFkOTE2ZTU4MjI0MjM0NzExMmJhMWQ2cC0xOSwKKyAgICAweDEuMmQ5N2M0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzQKKyAgICAweDEuZjk5OTBlOTFiMWQ5MTZlNTgyMjQyMzQ3MTEyYmExZDZwLTE5LAorICAgIC0weDEuMmQ5N2M0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzUKKyAgICAtMHgxLmYzMzIxZDIzNTE5ZmUxZGNmZGNkMmYxZjc2MjAwOGE0cC0yMCwKKyAgICAweDEuMmQ5N2M2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzYKKyAgICAweDEuZjMzMjFkMjM1MTlmZTFkY2ZkY2QyZjFmNzYyMDA4YTRwLTIwLAorICAgIC0weDEuMmQ5N2M2cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzcKKyAgICAweDEuOTliYzViOTYxYjFiMjRmZGI3N2ZjZWUwOGJhMmY3MjBwLTI1LAorICAgIDB4MS4yZDk3YzhwNAorICB9LAorICB7IC8vIEVudHJ5IDkzOAorICAgIC0weDEuOTliYzViOTYxYjFiMjRmZGI3N2ZjZWUwOGJhMmY3MjBwLTI1LAorICAgIC0weDEuMmQ5N2M4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MzkKKyAgICAweDEuZmZmZjE4YWIyNzU2YmEwYTIwYWFmNDM5MmIwYTgwMTlwLTEsCisgICAgMHgxLjNhMjhjMnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTQwCisgICAgLTB4MS5mZmZmMThhYjI3NTZiYTBhMjBhYWY0MzkyYjBhODAxOXAtMSwKKyAgICAtMHgxLjNhMjhjMnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTQxCisgICAgMHgxLmZmZmY5OGFhZmQ4MTg1MjVkMjRkNjY0ZWY5NjJlZjE0cC0xLAorICAgIDB4MS4zYTI4YzRwNAorICB9LAorICB7IC8vIEVudHJ5IDk0MgorICAgIC0weDEuZmZmZjk4YWFmZDgxODUyNWQyNGQ2NjRlZjk2MmVmMTRwLTEsCisgICAgLTB4MS4zYTI4YzRwNAorICB9LAorICB7IC8vIEVudHJ5IDk0MworICAgIDB4MS4wMDAwMGM1NTc5ZDYyMWFiNzMzNGVmZjMxZDIzY2YyY3AwLAorICAgIDB4MS4zYTI4YzZwNAorICB9LAorICB7IC8vIEVudHJ5IDk0NAorICAgIC0weDEuMDAwMDBjNTU3OWQ2MjFhYjczMzRlZmYzMWQyM2NmMmNwMCwKKyAgICAtMHgxLjNhMjhjNnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTQ1CisgICAgMHgxLjM4NDZiMzEwZGU3Yzc5NmFkYjNlYTJlYTIyYjEwOGUycDE4LAorICAgIDB4MS40NmI5YzBwNAorICB9LAorICB7IC8vIEVudHJ5IDk0NgorICAgIC0weDEuMzg0NmIzMTBkZTdjNzk2YWRiM2VhMmVhMjJiMTA4ZTJwMTgsCisgICAgLTB4MS40NmI5YzBwNAorICB9LAorICB7IC8vIEVudHJ5IDk0NworICAgIDB4MS45MDQ0MjVmYzkyZWFiMGFiZmU5NmFlZWI2ZmZiMmRjOHAxOSwKKyAgICAweDEuNDZiOWMycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDgKKyAgICAtMHgxLjkwNDQyNWZjOTJlYWIwYWJmZTk2YWVlYjZmZmIyZGM4cDE5LAorICAgIC0weDEuNDZiOWMycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NDkKKyAgICAtMHgxLjYzMjJiYWNiMjJkZTZhZjAwMjI4ZDJlYTRkNmQyNzk5cDIwLAorICAgIDB4MS40NmI5YzRwNAorICB9LAorICB7IC8vIEVudHJ5IDk1MAorICAgIDB4MS42MzIyYmFjYjIyZGU2YWYwMDIyOGQyZWE0ZDZkMjc5OXAyMCwKKyAgICAtMHgxLjQ2YjljNHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTUxCisgICAgLTB4MS4wMDAwNWUzMzFkNmRiZWU5ZjlkNDMxYjQ5ZWE3YjcyM3AwLAorICAgIDB4MS41MzRhYmVwNAorICB9LAorICB7IC8vIEVudHJ5IDk1MgorICAgIDB4MS4wMDAwNWUzMzFkNmRiZWU5ZjlkNDMxYjQ5ZWE3YjcyM3AwLAorICAgIC0weDEuNTM0YWJlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTMKKyAgICAtMHgxLjAwMDAxZTMzMGRlMGY3YzczNGJjNTdhNGM2NjUwMzI3cDAsCisgICAgMHgxLjUzNGFjMHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTU0CisgICAgMHgxLjAwMDAxZTMzMGRlMGY3YzczNGJjNTdhNGM2NjUwMzI3cDAsCisgICAgLTB4MS41MzRhYzBwNAorICB9LAorICB7IC8vIEVudHJ5IDk1NQorICAgIC0weDEuZmZmZmJjNjYxY2E4NjhkNWE0NDE4ZjBkMWNkN2MyMmZwLTEsCisgICAgMHgxLjUzNGFjMnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTU2CisgICAgMHgxLmZmZmZiYzY2MWNhODY4ZDVhNDQxOGYwZDFjZDdjMjJmcC0xLAorICAgIC0weDEuNTM0YWMycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTcKKyAgICAtMHgxLjRkZGQzYmE5ZjEyMTRkZWI0MDY3MjM5N2Q2ZjE5MWJjcC0xOSwKKyAgICAweDEuNWZkYmJjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTgKKyAgICAweDEuNGRkZDNiYTlmMTIxNGRlYjQwNjcyMzk3ZDZmMTkxYmNwLTE5LAorICAgIC0weDEuNWZkYmJjcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NTkKKyAgICAtMHgxLjM3NzRlZWE3YjhkNzIxNGJjODliMTE1MzJmODJkMzIzcC0yMSwKKyAgICAweDEuNWZkYmJlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjAKKyAgICAweDEuMzc3NGVlYTdiOGQ3MjE0YmM4OWIxMTUzMmY4MmQzMjNwLTIxLAorICAgIC0weDEuNWZkYmJlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjEKKyAgICAweDEuNjQ0NTg4YWMyNDhkYTZkMDE5NDExMjFmNTA2NzNiM2ZwLTIwLAorICAgIDB4MS41ZmRiYzBwNAorICB9LAorICB7IC8vIEVudHJ5IDk2MgorICAgIC0weDEuNjQ0NTg4YWMyNDhkYTZkMDE5NDExMjFmNTA2NzNiM2ZwLTIwLAorICAgIC0weDEuNWZkYmMwcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NjMKKyAgICAweDEuZmZmZjZlODhmMTMyMDc5NGQ4NDVlOGUwZmUxZmQ4YmRwLTEsCisgICAgMHgxLjZjNmNiYXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTY0CisgICAgLTB4MS5mZmZmNmU4OGYxMzIwNzk0ZDg0NWU4ZTBmZTFmZDhiZHAtMSwKKyAgICAtMHgxLjZjNmNiYXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTY1CisgICAgMHgxLmZmZmZlZTg4ZGNkNDQyOWYxNWMwZTRhOTViOWJhMGU2cC0xLAorICAgIDB4MS42YzZjYmNwNAorICB9LAorICB7IC8vIEVudHJ5IDk2NgorICAgIC0weDEuZmZmZmVlODhkY2Q0NDI5ZjE1YzBlNGE5NWI5YmEwZTZwLTEsCisgICAgLTB4MS42YzZjYmNwNAorICB9LAorICB7IC8vIEVudHJ5IDk2NworICAgIDB4MS4wMDAwMzc0NDc0M2IzZGJkMzdkZDA1M2U3MDJiZDc1NHAwLAorICAgIDB4MS42YzZjYmVwNAorICB9LAorICB7IC8vIEVudHJ5IDk2OAorICAgIC0weDEuMDAwMDM3NDQ3NDNiM2RiZDM3ZGQwNTNlNzAyYmQ3NTRwMCwKKyAgICAtMHgxLjZjNmNiZXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTY5CisgICAgMHgxLjA0MTA5YWIwZWM3OGY4MjdlZTk1Y2VhNzQ2YjM4YzIwcDE4LAorICAgIDB4MS43OGZkYjZwNAorICB9LAorICB7IC8vIEVudHJ5IDk3MAorICAgIC0weDEuMDQxMDlhYjBlYzc4ZjgyN2VlOTVjZWE3NDZiMzhjMjBwMTgsCisgICAgLTB4MS43OGZkYjZwNAorICB9LAorICB7IC8vIEVudHJ5IDk3MQorICAgIDB4MS4wODQyYzliMzJkMjEyNWRiZjVjMjBkNzBjNDZiMTdhNXAxOSwKKyAgICAweDEuNzhmZGI4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzIKKyAgICAtMHgxLjA4NDJjOWIzMmQyMTI1ZGJmNWMyMGQ3MGM0NmIxN2E1cDE5LAorICAgIC0weDEuNzhmZGI4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzMKKyAgICAtMHgxLmZmZDQ5MTMzZTI2YTljNzQ5OTY2NjMwZGVlODEzZGRlcDIzLAorICAgIDB4MS43OGZkYmFwNAorICB9LAorICB7IC8vIEVudHJ5IDk3NAorICAgIDB4MS5mZmQ0OTEzM2UyNmE5Yzc0OTk2NjYzMGRlZTgxM2RkZXAyMywKKyAgICAtMHgxLjc4ZmRiYXA0CisgIH0sCisgIHsgLy8gRW50cnkgOTc1CisgICAgLTB4MS4wMDAwNzM0NDMxNTIzMDFmYTU5MzM4ZWVjMjljMzc3OHAwLAorICAgIDB4MS44NThlYjRwNAorICB9LAorICB7IC8vIEVudHJ5IDk3NgorICAgIDB4MS4wMDAwNzM0NDMxNTIzMDFmYTU5MzM4ZWVjMjljMzc3OHAwLAorICAgIC0weDEuODU4ZWI0cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NzcKKyAgICAtMHgxLjAwMDAzMzQ0MWM4MTIzMmQzZDlmYzM0YmVhODFmYjdjcDAsCisgICAgMHgxLjg1OGViNnA0CisgIH0sCisgIHsgLy8gRW50cnkgOTc4CisgICAgMHgxLjAwMDAzMzQ0MWM4MTIzMmQzZDlmYzM0YmVhODFmYjdjcDAsCisgICAgLTB4MS44NThlYjZwNAorICB9LAorICB7IC8vIEVudHJ5IDk3OQorICAgIC0weDEuZmZmZmU2ODgyZjYwMzk0NmI1M2IwNDIzNjFhZWM4MmNwLTEsCisgICAgMHgxLjg1OGViOHA0CisgIH0sCisgIHsgLy8gRW50cnkgOTgwCisgICAgMHgxLmZmZmZlNjg4MmY2MDM5NDZiNTNiMDQyMzYxYWVjODJjcC0xLAorICAgIC0weDEuODU4ZWI4cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODEKKyAgICAtMHgxLmNiNmNkNGNiODJhOTFkZmM0YWY5YTQ5OWE1NzVlNGE0cC0zLAorICAgIDB4MS5mZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODIKKyAgICAweDEuY2I2Y2Q0Y2I4MmE5MWRmYzRhZjlhNDk5YTU3NWU0YTRwLTMsCisgICAgLTB4MS5mZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODMKKyAgICAweDEuNTJmNTBlNzU3OTQxY2JmZjViN2MyZTA2YTFhYjdlOWRwNiwKKyAgICAweDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgOTg0CisgICAgLTB4MS41MmY1MGU3NTc5NDFjYmZmNWI3YzJlMDZhMWFiN2U5ZHA2LAorICAgIC0weDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgOTg1CisgICAgLTB4MS4yOWNiZDEyODIxYjM5OWM5ZWU0ZjI2NWRhNTE4ODFhOHAxLAorICAgIDB4MS4wMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5ODYKKyAgICAweDEuMjljYmQxMjgyMWIzOTljOWVlNGYyNjVkYTUxODgxYThwMSwKKyAgICAtMHgxLjAwMDAwMnA2MworICB9LAorICB7IC8vIEVudHJ5IDk4NworICAgIDB4MS4zZTRkOTE0OGQ3MDg2NzI3ZGE5NDRlMWMwNTJiNjhhZnAtMSwKKyAgICAweDEuZmZmZmZlcDI2CisgIH0sCisgIHsgLy8gRW50cnkgOTg4CisgICAgLTB4MS4zZTRkOTE0OGQ3MDg2NzI3ZGE5NDRlMWMwNTJiNjhhZnAtMSwKKyAgICAtMHgxLmZmZmZmZXAyNgorICB9LAorICB7IC8vIEVudHJ5IDk4OQorICAgIC0weDEuMmU4ZmMxYWY4MWQ4YmFhODg5OWEzMzI1MjAwYzBkY2JwMCwKKyAgICAweDEucDI3CisgIH0sCisgIHsgLy8gRW50cnkgOTkwCisgICAgMHgxLjJlOGZjMWFmODFkOGJhYTg4OTlhMzMyNTIwMGMwZGNicDAsCisgICAgLTB4MS5wMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTEKKyAgICAtMHgxLjRjZTk3NDhlNTI0Zjc3YWQ4NTczNWM3ZjdkNjY4Y2YxcC0xLAorICAgIDB4MS4wMDAwMDJwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTIKKyAgICAweDEuNGNlOTc0OGU1MjRmNzdhZDg1NzM1YzdmN2Q2NjhjZjFwLTEsCisgICAgLTB4MS4wMDAwMDJwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTMKKyAgICAweDEuN2UzMDA1ZDU3ZWQ5M2FlNDViMWJlYTNlMzYxNWJiNjdwMSwKKyAgICAweDEuZmZmZmZlcDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTk0CisgICAgLTB4MS43ZTMwMDVkNTdlZDkzYWU0NWIxYmVhM2UzNjE1YmI2N3AxLAorICAgIC0weDEuZmZmZmZlcDIzCisgIH0sCisgIHsgLy8gRW50cnkgOTk1CisgICAgLTB4MS4zZWEyODI3MWE5YmVhMzZlNzQ0ZjljZTUzN2JhNGI1OXAwLAorICAgIDB4MS5wMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTYKKyAgICAweDEuM2VhMjgyNzFhOWJlYTM2ZTc0NGY5Y2U1MzdiYTRiNTlwMCwKKyAgICAtMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDk5NworICAgIDB4MS5mZTkyOWI0MjgyMTA1YTE2MGE5YmUyNzMxZGYyMGE2Y3AwLAorICAgIDB4MS4wMDAwMDJwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTgKKyAgICAtMHgxLmZlOTI5YjQyODIxMDVhMTYwYTliZTI3MzFkZjIwYTZjcDAsCisgICAgLTB4MS4wMDAwMDJwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OTkKKyAgICAweDEuMjg2NmYwNjE5NGUwYzJjN2VlMjJlZTlmOGY5ZGNhZWVwMCwKKyAgICAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAwCisgICAgLTB4MS4yODY2ZjA2MTk0ZTBjMmM3ZWUyMmVlOWY4ZjlkY2FlZXAwLAorICAgIC0weDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAxCisgICAgMHgxLjI4NjZmOWJlNGRlMTM3MGRiOTA3ODYwNzAxMmNiMDdicDAsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTAwMgorICAgIC0weDEuMjg2NmY5YmU0ZGUxMzcwZGI5MDc4NjA3MDEyY2IwN2JwMCwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgMTAwMworICAgIDB4MS4yODY3MGM3N2MwZTY0NzEzOGQ0ZmM3MTgxZWY5YjYxZnAwLAorICAgIDB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMDQKKyAgICAtMHgxLjI4NjcwYzc3YzBlNjQ3MTM4ZDRmYzcxODFlZjliNjFmcDAsCisgICAgLTB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDEwMDUKKyAgICAtMHgxLjE3YWY2OGE2ZDQyZjc3MmJkMjQ5ZjVkNjkyYWZhNGU3cDEsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAwNgorICAgIDB4MS4xN2FmNjhhNmQ0MmY3NzJiZDI0OWY1ZDY5MmFmYTRlN3AxLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDA3CisgICAgLTB4MS4xN2FmNjJlMDk1MGY4M2I1MDk5MDg3YWFmNjdhZjljMXAxLAorICAgIDB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDEwMDgKKyAgICAweDEuMTdhZjYyZTA5NTBmODNiNTA5OTA4N2FhZjY3YWY5YzFwMSwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTAwOQorICAgIC0weDEuMTdhZjU3NTQxNzY3MDUxNzNjZWM4OWQwMTM4MWY1NTNwMSwKKyAgICAweDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEwCisgICAgMHgxLjE3YWY1NzU0MTc2NzA1MTczY2VjODlkMDEzODFmNTUzcDEsCisgICAgLTB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDEwMTEKKyAgICAweDEuOGViMjQyNWVmZjcyODYwZDU2ZDYxMDU2ZGI1NGVmNjdwMCwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAxMgorICAgIC0weDEuOGViMjQyNWVmZjcyODYwZDU2ZDYxMDU2ZGI1NGVmNjdwMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMTMKKyAgICAweDEuOGViMjQ1Y2JlZTNhNWI4YWNjN2Q0MTMyMzE0MGIzYjVwMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE0CisgICAgLTB4MS44ZWIyNDVjYmVlM2E1YjhhY2M3ZDQxMzIzMTQwYjNiNXAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE1CisgICAgMHgxLjhlYjI0Y2E1Y2JlYTA4Zjk5MTIwNmEzZWFmOTNhYjk4cDAsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAxNgorICAgIC0weDEuOGViMjRjYTVjYmVhMDhmOTkxMjA2YTNlYWY5M2FiOThwMCwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTAxNworICAgIDB4MS4xN2I0ZjQ3MmNkNzkxYWFiZmU0ZWE5MWFmYjVlNzllN3AtMSwKKyAgICAweDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTAxOAorICAgIC0weDEuMTdiNGY0NzJjZDc5MWFhYmZlNGVhOTFhZmI1ZTc5ZTdwLTEsCisgICAgLTB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDE5CisgICAgMHgxLjE3YjRmNWJmMzQ3NGE0MzE3OTY0ODA3ODgyNDQ0Y2M4cC0xLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIwCisgICAgLTB4MS4xN2I0ZjViZjM0NzRhNDMxNzk2NDgwNzg4MjQ0NGNjOHAtMSwKKyAgICAtMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMjEKKyAgICAweDEuMTdiNGY4NTgwMjZkZDgwMzNlZDNkOGQ2ZDUzNTBjYTlwLTEsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMjIKKyAgICAtMHgxLjE3YjRmODU4MDI2ZGQ4MDMzZWQzZDhkNmQ1MzUwY2E5cC0xLAorICAgIC0weDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTAyMworICAgIDB4MS4wNTc4NTkzMzEzZGI2NTljZjNhYjg4YTIzNTIxODQ1NnAtMiwKKyAgICAweDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTAyNAorICAgIC0weDEuMDU3ODU5MzMxM2RiNjU5Y2YzYWI4OGEyMzUyMTg0NTZwLTIsCisgICAgLTB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI1CisgICAgMHgxLjA1Nzg1YTQzYzRjNTVlNjM5NDAxODg5NjVjMjhiZDBmcC0yLAorICAgIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDI2CisgICAgLTB4MS4wNTc4NWE0M2M0YzU1ZTYzOTQwMTg4OTY1YzI4YmQwZnAtMiwKKyAgICAtMHgxLnAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwMjcKKyAgICAweDEuMDU3ODVjNjUyNjk5Yjg2MjhiNzg3NmI3YmQ4M2MwY2NwLTIsCisgICAgMHgxLjAwMDAwMnAtMgorICB9LAorICB7IC8vIEVudHJ5IDEwMjgKKyAgICAtMHgxLjA1Nzg1YzY1MjY5OWI4NjI4Yjc4NzZiN2JkODNjMGNjcC0yLAorICAgIC0weDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTAyOQorICAgIDB4MS4wMTU3NzllZDQ2NTc0NzI0YjkwMjVhNDQ3MmExYWUwYXAtMywKKyAgICAweDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTAzMAorICAgIC0weDEuMDE1Nzc5ZWQ0NjU3NDcyNGI5MDI1YTQ0NzJhMWFlMGFwLTMsCisgICAgLTB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMxCisgICAgMHgxLjAxNTc3YWYxNTExYTRlMDQ1OWY1Yjg3MmQ0ZmYzNGZkcC0zLAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMyCisgICAgLTB4MS4wMTU3N2FmMTUxMWE0ZTA0NTlmNWI4NzJkNGZmMzRmZHAtMywKKyAgICAtMHgxLnAtMworICB9LAorICB7IC8vIEVudHJ5IDEwMzMKKyAgICAweDEuMDE1NzdjZjk2NmEwNzQ0NTUzZGQ0NGE5OTRmMGJiZDFwLTMsCisgICAgMHgxLjAwMDAwMnAtMworICB9LAorICB7IC8vIEVudHJ5IDEwMzQKKyAgICAtMHgxLjAxNTc3Y2Y5NjZhMDc0NDU1M2RkNDRhOTk0ZjBiYmQxcC0zLAorICAgIC0weDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTAzNQorICAgIDB4MS4wMDU1NzY4NDRkNDRmZGEwYjgwMzQ4YmIxNzQ5OGFhMXAtNCwKKyAgICAweDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTAzNgorICAgIC0weDEuMDA1NTc2ODQ0ZDQ0ZmRhMGI4MDM0OGJiMTc0OThhYTFwLTQsCisgICAgLTB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM3CisgICAgMHgxLjAwNTU3Nzg1NGRmMDA4MzI5M2JlNjM5MDU3YjBjNjgxcC00LAorICAgIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDM4CisgICAgLTB4MS4wMDU1Nzc4NTRkZjAwODMyOTNiZTYzOTA1N2IwYzY4MXAtNCwKKyAgICAtMHgxLnAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwMzkKKyAgICAweDEuMDA1NTc5ODc0ZjQ2MjM1ZTUyMDgyYTRkMGRkZmM2ZTFwLTQsCisgICAgMHgxLjAwMDAwMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDEwNDAKKyAgICAtMHgxLjAwNTU3OTg3NGY0NjIzNWU1MjA4MmE0ZDBkZGZjNmUxcC00LAorICAgIC0weDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgMTA0MQorICAgIDB4MS4wMDE1NTY3NzZlYjVkOThmODJlMWI1ZWFiMjhjNmI1ZnAtNSwKKyAgICAweDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTA0MgorICAgIC0weDEuMDAxNTU2Nzc2ZWI1ZDk4ZjgyZTFiNWVhYjI4YzZiNWZwLTUsCisgICAgLTB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQzCisgICAgMHgxLjAwMTU1Nzc3YWVjMDg1N2QyMmM5N2U4MDk4NjAyODhkcC01LAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ0CisgICAgLTB4MS4wMDE1NTc3N2FlYzA4NTdkMjJjOTdlODA5ODYwMjg4ZHAtNSwKKyAgICAtMHgxLnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwNDUKKyAgICAweDEuMDAxNTU5NzgyZWQ1ZGVkOGUyYjRjODE5Y2I3YzlmMTFwLTUsCisgICAgMHgxLjAwMDAwMnAtNQorICB9LAorICB7IC8vIEVudHJ5IDEwNDYKKyAgICAtMHgxLjAwMTU1OTc4MmVkNWRlZDhlMmI0YzgxOWNiN2M5ZjExcC01LAorICAgIC0weDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgMTA0NworICAgIDB4MS4wMDA1NTQ3NzY4NTNlMDQxMDEwZGEyMmE2NTZmODI2N3AtNiwKKyAgICAweDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTA0OAorICAgIC0weDEuMDAwNTU0Nzc2ODUzZTA0MTAxMGRhMjJhNjU2ZjgyNjdwLTYsCisgICAgLTB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQ5CisgICAgMHgxLjAwMDU1NTc3Nzg1NDhhZTFiNWY2MDU3NDcwNmU4MjM4cC02LAorICAgIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDUwCisgICAgLTB4MS4wMDA1NTU3Nzc4NTQ4YWUxYjVmNjA1NzQ3MDZlODIzOHAtNiwKKyAgICAtMHgxLnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwNTEKKyAgICAweDEuMDAwNTU3Nzc5ODU1ZTA4MzI3Yzc1OGUyMGQ2OTFkYWRwLTYsCisgICAgMHgxLjAwMDAwMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwNTIKKyAgICAtMHgxLjAwMDU1Nzc3OTg1NWUwODMyN2M3NThlMjBkNjkxZGFkcC02LAorICAgIC0weDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgMTA1MworICAgIDB4MS5mZmZmZmUwYWFhYWE4YWVlZWYwZDliNTNhZDJmNDgyM3AtMTUsCisgICAgMHgxLmZmZmZmZXAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU0CisgICAgLTB4MS5mZmZmZmUwYWFhYWE4YWVlZWYwZDliNTNhZDJmNDgyM3AtMTUsCisgICAgLTB4MS5mZmZmZmVwLTE1CisgIH0sCisgIHsgLy8gRW50cnkgMTA1NQorICAgIDB4MS4wMDAwMDAwNTU1NTU1NTc3Nzc3Nzc4NTQ4NTQ4NWExZXAtMTQsCisgICAgMHgxLnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU2CisgICAgLTB4MS4wMDAwMDAwNTU1NTU1NTc3Nzc3Nzc4NTQ4NTQ4NWExZXAtMTQsCisgICAgLTB4MS5wLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTA1NworICAgIDB4MS4wMDAwMDIwNTU1NTU3NTc3NzdiOGNkYWEwYWE5YzY0MHAtMTQsCisgICAgMHgxLjAwMDAwMnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDU4CisgICAgLTB4MS4wMDAwMDIwNTU1NTU3NTc3NzdiOGNkYWEwYWE5YzY0MHAtMTQsCisgICAgLTB4MS4wMDAwMDJwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgMTA1OQorICAgIDB4MS5mZmZmZmUwMDAwMDAwMmFhYWFhMmFhYWFiMmFlZWVlY3AtMjgsCisgICAgMHgxLmZmZmZmZXAtMjgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYwCisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMmFhYWFhMmFhYWFiMmFlZWVlY3AtMjgsCisgICAgLTB4MS5mZmZmZmVwLTI4CisgIH0sCisgIHsgLy8gRW50cnkgMTA2MQorICAgIDB4MS4wMDAwMDAwMDAwMDAwMTU1NTU1NTU1NTU1NTU3Nzc3N3AtMjcsCisgICAgMHgxLnAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYyCisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMTU1NTU1NTU1NTU1NTU3Nzc3N3AtMjcsCisgICAgLTB4MS5wLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA2MworICAgIDB4MS4wMDAwMDIwMDAwMDAwMTU1NTU1ZDU1NTU2NTU3Nzc4MnAtMjcsCisgICAgMHgxLjAwMDAwMnAtMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY0CisgICAgLTB4MS4wMDAwMDIwMDAwMDAwMTU1NTU1ZDU1NTU2NTU3Nzc4MnAtMjcsCisgICAgLTB4MS4wMDAwMDJwLTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA2NQorICAgIDB4MS5mZmZmZmUwMDAwMDAwMDBhYWFhYThhYWFhYWNhYWFlZXAtMzEsCisgICAgMHgxLmZmZmZmZXAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY2CisgICAgLTB4MS5mZmZmZmUwMDAwMDAwMDBhYWFhYThhYWFhYWNhYWFlZXAtMzEsCisgICAgLTB4MS5mZmZmZmVwLTMxCisgIH0sCisgIHsgLy8gRW50cnkgMTA2NworICAgIDB4MS4wMDAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1NTU3N3AtMzAsCisgICAgMHgxLnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDY4CisgICAgLTB4MS4wMDAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1NTU3N3AtMzAsCisgICAgLTB4MS5wLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA2OQorICAgIDB4MS4wMDAwMDIwMDAwMDAwMDA1NTU1NTc1NTU1NTk1NTU3N3AtMzAsCisgICAgMHgxLjAwMDAwMnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcwCisgICAgLTB4MS4wMDAwMDIwMDAwMDAwMDA1NTU1NTc1NTU1NTk1NTU3N3AtMzAsCisgICAgLTB4MS4wMDAwMDJwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA3MQorICAgIDB4MS4zOTNkOTRiNDk4OGMxZjI1NDM0NWM5ZjdkOWVhMGMwM3AtMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcyCisgICAgLTB4MS4zOTNkOTRiNDk4OGMxZjI1NDM0NWM5ZjdkOWVhMGMwM3AtMSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNzMKKyAgICAtMHgxLjM5M2Q5NGI0OTg4YzFmMjU0MzQ1YzlmN2Q5ZWEwYzAzcC0xLAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA3NAorICAgIDB4MS4zOTNkOTRiNDk4OGMxZjI1NDM0NWM5ZjdkOWVhMGMwM3AtMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDc1CisgICAgLTB4MS4zOTNkOTRiNDk4OGMxZjI1NDM0NWM5ZjdkOWVhMGMwM3AtMSwKKyAgICAweDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNzYKKyAgICAweDEuMzkzZDk0YjQ5ODhjMWYyNTQzNDVjOWY3ZDllYTBjMDNwLTEsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMTA3NworICAgIDB4MS5hY2YzMTVhODdhYTVkYTg2NTRjODQ0YjkxN2QxNDc0NXAtMSwKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNzgKKyAgICAtMHgxLmFjZjMxNWE4N2FhNWRhODY1NGM4NDRiOTE3ZDE0NzQ1cC0xLAorICAgIC0weDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDEwNzkKKyAgICAweDEuNzc3YTVjZjcyY2VkZjNiNTQ0YzgxODA4YjUxNWYxZjlwLTI0LAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDEwODAKKyAgICAtMHgxLjc3N2E1Y2Y3MmNlZGYzYjU0NGM4MTgwOGI1MTVmMWY5cC0yNCwKKyAgICAtMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTA4MQorICAgIC0weDEuNWQxNDk0NmRjOTg5NzVkNjQyMWE1NTI4NGZlMDIwYTFwMjQsCisgICAgMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA4MgorICAgIDB4MS41ZDE0OTQ2ZGM5ODk3NWQ2NDIxYTU1Mjg0ZmUwMjBhMXAyNCwKKyAgICAtMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTA4MworICAgIDB4MS44ZWIyNGNhNWNiZWEwOGY5OTEyMDZhM2VhZjkzYWI5OHAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwODQKKyAgICAtMHgxLjhlYjI0Y2E1Y2JlYTA4Zjk5MTIwNmEzZWFmOTNhYjk4cDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDEwODUKKyAgICAweDEuOGViMjQ1Y2JlZTNhNWI4YWNjN2Q0MTMyMzE0MGIzYjVwMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg2CisgICAgLTB4MS44ZWIyNDVjYmVlM2E1YjhhY2M3ZDQxMzIzMTQwYjNiNXAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg3CisgICAgMHgxLjhlYjI0MjVlZmY3Mjg2MGQ1NmQ2MTA1NmRiNTRlZjY3cDAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwODgKKyAgICAtMHgxLjhlYjI0MjVlZmY3Mjg2MGQ1NmQ2MTA1NmRiNTRlZjY3cDAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDg5CisgICAgMHgxLjAwMDAwMGJiYmQyZWMwNmQ2ZDZmZmYzNjU1YTM0NmFjcDAsCisgICAgMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwOTAKKyAgICAtMHgxLjAwMDAwMGJiYmQyZWMwNmQ2ZDZmZmYzNjU1YTM0NmFjcDAsCisgICAgLTB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkxCisgICAgMHgxLjAwMDAwMnAtMTI2LAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwOTIKKyAgICAtMHgxLjAwMDAwMnAtMTI2LAorICAgIC0weDEuMDAwMDAycC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkzCisgICAgMHgxLnAtMTI2LAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDEwOTQKKyAgICAtMHgxLnAtMTI2LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDk1CisgICAgMHgxLmZmZmZmY3AtMTI3LAorICAgIDB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEwOTYKKyAgICAtMHgxLmZmZmZmY3AtMTI3LAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDk3CisgICAgMHgxLmZmZmZmOHAtMTI3LAorICAgIDB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDEwOTgKKyAgICAtMHgxLmZmZmZmOHAtMTI3LAorICAgIC0weDEuZmZmZmY4cC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDk5CisgICAgMHgxLnAtMTQ4LAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDExMDAKKyAgICAtMHgxLnAtMTQ4LAorICAgIC0weDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAxCisgICAgMHgxLnAtMTQ5LAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDExMDIKKyAgICAtMHgxLnAtMTQ5LAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTAzCisgICAgMC4wLAorICAgIDAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTA0CisgICAgLTAuMCwKKyAgICAtMC4wZgorICB9LAorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS90YW5oX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS90YW5oX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZTQzM2NhCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL3RhbmhfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMjkzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGRvdWJsZSwgZG91YmxlPiBnX3RhbmhfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA0MAorICB9LAorICB7IC8vIEVudHJ5IDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgLTB4MS5mZmY1NTU5OTk3ZTEwOTEyMTIyODRlNDc3ZTZiNjAxYnAtNywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMGNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzCisgICAgMHgxLmZmZjU1NTk5OTdlMTA5MTIxMjI4NGU0NzdlNmI2MDFicC03LAorICAgIDB4MS4wMDAwMDAwMDAwMDBjcC02CisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIC0weDEuZmZmZmZmZmZmZmY0ZTdmZjk0NDRiNjAzZDZkZDc2NWNwLTEsCisgICAgLTB4MS4wMjAyMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDB4MS5mZmZmZmZmZmZmZjRlN2ZmOTQ0NGI2MDNkNmRkNzY1Y3AtMSwKKyAgICAweDEuMDIwMjBwNAorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAtMHgxLmZiYWU4ZWJjYTIwZDRjNTg4MDA0NmU1MjI1NmFmOTFlcC0zLAorICAgIC0weDEuMDMzZGIyNzljYWM1MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEuZmJhZThlYmNhMjBkNGM1ODgwMDQ2ZTUyMjU2YWY5MWVwLTMsCisgICAgMHgxLjAzM2RiMjc5Y2FjNTBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgLTB4MS5lZjg2NWJlMWVmNDI4ODAxMDAwMDhhNWU0ZTQxOTBjNXAtMSwKKyAgICAtMHgxLjA3NDFlYTM3NzU5ZDBwMQorICB9LAorICB7IC8vIEVudHJ5IDkKKyAgICAweDEuZWY4NjViZTFlZjQyODgwMTAwMDA4YTVlNGU0MTkwYzVwLTEsCisgICAgMHgxLjA3NDFlYTM3NzU5ZDBwMQorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgLTB4MS5mZmZmZmU0MTMwODg0MDAxNjI0ZTI4NjkzZmQ3Nzk3NnAtMSwKKyAgICAtMHgxLjE3NzAxYjNiZjA1MDJwMworICB9LAorICB7IC8vIEVudHJ5IDExCisgICAgMHgxLmZmZmZmZTQxMzA4ODQwMDE2MjRlMjg2OTNmZDc3OTc2cC0xLAorICAgIDB4MS4xNzcwMWIzYmYwNTAycDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIC0weDEuYmZlMTUyNzdhODcwOWZmZjcxOTZmYzdlZDI5OWNhY2ZwLTEsCisgICAgLTB4MS41YTZwMAorICB9LAorICB7IC8vIEVudHJ5IDEzCisgICAgMHgxLmJmZTE1Mjc3YTg3MDlmZmY3MTk2ZmM3ZWQyOTljYWNmcC0xLAorICAgIDB4MS41YTZwMAorICB9LAorICB7IC8vIEVudHJ5IDE0CisgICAgLTB4MS40NTk3YzJjNzA4OWE1Mjk2ZDFiMzhjYzhmYzNiMzViMnAtMSwKKyAgICAtMHgxLjgwYWE0ZGVlMzVjNTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS40NTk3YzJjNzA4OWE1Mjk2ZDFiMzhjYzhmYzNiMzViMnAtMSwKKyAgICAweDEuODBhYTRkZWUzNWM1MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2CisgICAgLTB4MS44NTM1MTgzYzgxYmVjODE4YTQ0ODJiNmFhNTYyNzA0YXAtNCwKKyAgICAtMHgxLjg2NjI5YjI1YWQxMzlwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS44NTM1MTgzYzgxYmVjODE4YTQ0ODJiNmFhNTYyNzA0YXAtNCwKKyAgICAweDEuODY2MjliMjVhZDEzOXAtNAorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgLTB4MS40OTkxNGIxYzdhNmEzMDQwZDdhMTI0NmI1YzlhNzIyM3AtMSwKKyAgICAtMHgxLjg3NjUxODNhZjBiZjhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS40OTkxNGIxYzdhNmEzMDQwZDdhMTI0NmI1YzlhNzIyM3AtMSwKKyAgICAweDEuODc2NTE4M2FmMGJmOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgLTB4MS45MDcwZmU0ZTZmNDFmN2UyZTFkM2E4ZDAxN2YwOTk3ZXAtNCwKKyAgICAtMHgxLjkxYjk3YTk0MjQ4Y2VwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMQorICAgIDB4MS45MDcwZmU0ZTZmNDFmN2UyZTFkM2E4ZDAxN2YwOTk3ZXAtNCwKKyAgICAweDEuOTFiOTdhOTQyNDhjZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS41M2ZjYTBhNzQ4YTQwYjk1NmY2NGVhNDhhZTI2Y2ViN3AtMSwKKyAgICAtMHgxLjk5OTk5OTk5OTk5OWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMworICAgIDB4MS41M2ZjYTBhNzQ4YTQwYjk1NmY2NGVhNDhhZTI2Y2ViN3AtMSwKKyAgICAweDEuOTk5OTk5OTk5OTk5YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0CisgICAgLTB4MS5hZmJlYzY0MjlhYWQ3OTRkN2YyYTc3NWI4NzU5ZDYyMXAtOCwKKyAgICAtMHgxLmFmYzA1ZjliYjNlMTlwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5hZmJlYzY0MjlhYWQ3OTRkN2YyYTc3NWI4NzU5ZDYyMXAtOCwKKyAgICAweDEuYWZjMDVmOWJiM2UxOXAtOAorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgLTB4MS5mZjE0MmVlY2QxYjE1ODAwY2RlYjBmNTI2ZGE3ODYyM3AtMSwKKyAgICAtMHgxLmMwY2ZmYzc5YThlN2FwMQorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLmZmMTQyZWVjZDFiMTU4MDBjZGViMGY1MjZkYTc4NjIzcC0xLAorICAgIDB4MS5jMGNmZmM3OWE4ZTdhcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOAorICAgIC0weDEuNjllZTM0NDI3NDQzY2Y5ZmUyNTlhOWJiMjU2N2ZjYzBwLTEsCisgICAgLTB4MS5jMzBjMDYwOGRlMzI0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuNjllZTM0NDI3NDQzY2Y5ZmUyNTlhOWJiMjU2N2ZjYzBwLTEsCisgICAgMHgxLmMzMGMwNjA4ZGUzMjRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIC0weDEuNzhkNGVmNzQ4ZGQ1MjgwMTE3MGQ1NDJiMmIwY2IyMTBwLTEsCisgICAgLTB4MS5lMjI1YjViOGZlNTE0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAweDEuNzhkNGVmNzQ4ZGQ1MjgwMTE3MGQ1NDJiMmIwY2IyMTBwLTEsCisgICAgMHgxLmUyMjViNWI4ZmU1MTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIC0weDEuY2U3MTZkYzg1ZjRmNjAxNTY4Njk0ZjI0ZWIyM2NhM2NwLTIsCisgICAgLTB4MS5mMjY1MmVjYmRjMGYxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAweDEuY2U3MTZkYzg1ZjRmNjAxNTY4Njk0ZjI0ZWIyM2NhM2NwLTIsCisgICAgMHgxLmYyNjUyZWNiZGMwZjFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNAorICAgIC0weDEuZDkzNTNkNzUwNDA0ZDdmZDRiZDc2MTc0YjllYjBjNGFwLTIsCisgICAgLTB4MS5mZmZmZmZmZjdmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEuZDkzNTNkNzUwNDA0ZDdmZDRiZDc2MTc0YjllYjBjNGFwLTIsCisgICAgMHgxLmZmZmZmZmZmN2ZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuODVlZmFiNTE0ZjM5NTJjOGQxMzNhZjE5ZTVlOGNkZDZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDM5CisgICAgLTB4MS44NWVmYWI1MTRmMzk1MmM4ZDEzM2FmMTllNWU4Y2RkNnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQwCisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA0MAorICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLmQ5MzUzZDc1NjhhZmU2N2IzN2ZiOTg5ZjU1OWJlODM0cC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDA3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDMKKyAgICAtMHgxLmQ5MzUzZDc1NjhhZmU2N2IzN2ZiOTg5ZjU1OWJlODM0cC0yLAorICAgIC0weDEuMDAwMDAwMDAwMDAwN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDQ0CisgICAgMHgxLmZmZmY1NTU1OTk5YjlkZjVjYWIxZDg0M2JhMjdiMTZicC05LAorICAgIDB4MS4wMDAwMDAwMDAwMDExcC04CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAtMHgxLmZmZmY1NTU1OTk5YjlkZjVjYWIxZDg0M2JhMjdiMTZicC05LAorICAgIC0weDEuMDAwMDAwMDAwMDAxMXAtOAorICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgMHgxLmZmZjU1NTk5OTdlMWU5MDQxMmJkOWU1MzBiMWJiMWM4cC03LAorICAgIDB4MS4wMDAwMDAwMDAwMDEzcC02CisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAtMHgxLmZmZjU1NTk5OTdlMWU5MDQxMmJkOWU1MzBiMWJiMWM4cC03LAorICAgIC0weDEuMDAwMDAwMDAwMDAxM3AtNgorICB9LAorICB7IC8vIEVudHJ5IDQ4CisgICAgMHgxLmZkNTk5MmJjNGI4OTM4MDAxZjg1YjgzM2QxNjQ5NWZhcC00LAorICAgIDB4MS4wMDAwMDAwMDAwMDMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAtMHgxLmZkNTk5MmJjNGI4OTM4MDAxZjg1YjgzM2QxNjQ5NWZhcC00LAorICAgIC0weDEuMDAwMDAwMDAwMDAzMHAtMworICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLmZmZjU1NTk5OTdmMjI4MDAxZDkyOTE3MmE0ZWI4NWQ0cC03LAorICAgIDB4MS4wMDAwMDAwMDAwMDk1cC02CisgIH0sCisgIHsgLy8gRW50cnkgNTEKKyAgICAtMHgxLmZmZjU1NTk5OTdmMjI4MDAxZDkyOTE3MmE0ZWI4NWQ0cC03LAorICAgIC0weDEuMDAwMDAwMDAwMDA5NXAtNgorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgMHgxLmVkOTUwNWUxYmM0NjQ4NDlkNzQ5ZmM5ZGUxODIwMmMycC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLmVkOTUwNWUxYmM0NjQ4NDlkNzQ5ZmM5ZGUxODIwMmMycC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgMHgxLmZmNTU5OTdlMDM1NTg4Mjk1YTBmZWE3MWFiYzNjYjJlcC01LAorICAgIDB4MS4wMDAwMDAwMDAwMjQzcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLmZmNTU5OTdlMDM1NTg4Mjk1YTBmZWE3MWFiYzNjYjJlcC01LAorICAgIC0weDEuMDAwMDAwMDAwMDI0M3AtNAorICB9LAorICB7IC8vIEVudHJ5IDU2CisgICAgMHgxLmY1OTdlYTY5YTIzMWE3MmU2YWYxNmJjMWMxNTY2MTA4cC0zLAorICAgIDB4MS4wMDAwMDAwMDAwMzgwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTcKKyAgICAtMHgxLmY1OTdlYTY5YTIzMWE3MmU2YWYxNmJjMWMxNTY2MTA4cC0zLAorICAgIC0weDEuMDAwMDAwMDAwMDM4MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDU4CisgICAgMHgxLmY1OTdlYTY5YTU4YWYyNTNmZTU5N2ZkZGJlYmI0M2UycC0zLAorICAgIDB4MS4wMDAwMDAwMDAyMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgLTB4MS5mNTk3ZWE2OWE1OGFmMjUzZmU1OTdmZGRiZWJiNDNlMnAtMywKKyAgICAtMHgxLjAwMDAwMDAwMDIwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAweDEuZmZmZDU1NTk5ZGU2OWZlNjczNDM4YTQzZTRlNGU4ZjBwLTgsCisgICAgMHgxLjAwMDAwMDAwMDIyYTBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuZmZmZDU1NTk5ZGU2OWZlNjczNDM4YTQzZTRlNGU4ZjBwLTgsCisgICAgLTB4MS4wMDAwMDAwMDAyMmEwcC03CisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAweDEuZmZmZmY4NzJhOTFmODdmYWY1ODA2YTUwZTVjNGI5MWJwLTEsCisgICAgMHgxLjAwMDAwMDAwMDJmZjBwMworICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS5mZmZmZjg3MmE5MWY4N2ZhZjU4MDZhNTBlNWM0YjkxYnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDJmZjBwMworICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgMHgxLmZmZmZmODcyYTkxZjg3ZmI2ZTU1ZDc3NDQyZWQzZDI5cC0xLAorICAgIDB4MS4wMDAwMDAwMDAzMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjUKKyAgICAtMHgxLmZmZmZmODcyYTkxZjg3ZmI2ZTU1ZDc3NDQyZWQzZDI5cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMzBwMworICB9LAorICB7IC8vIEVudHJ5IDY2CisgICAgMHgxLjg1ZWZhYjUxNzhkNmQwMDAwMTZiNjA4YjZkNzM3NjhmcC0xLAorICAgIDB4MS4wMDAwMDAwMDMxOGI5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NworICAgIC0weDEuODVlZmFiNTE3OGQ2ZDAwMDAxNmI2MDhiNmQ3Mzc2OGZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDMxOGI5cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS5kOTM1M2Q3NWJkMzE2N2ZmZmUwY2EzOGI2NDFjODk2ZnAtMiwKKyAgICAweDEuMDAwMDAwMDAzNWJhNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5kOTM1M2Q3NWJkMzE2N2ZmZmUwY2EzOGI2NDFjODk2ZnAtMiwKKyAgICAtMHgxLjAwMDAwMDAwMzViYTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIDB4MS5kOTM1M2Q3NzE2MTc4MDAwMDBhOWE1ODBlNDY5MzQwZXAtMiwKKyAgICAweDEuMDAwMDAwMDExMTAxMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5kOTM1M2Q3NzE2MTc4MDAwMDBhOWE1ODBlNDY5MzQwZXAtMiwKKyAgICAtMHgxLjAwMDAwMDAxMTEwMTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS5mZDU5OTJiZjNmYTMwN2NlMTU2Yjk2MTQ5ODA3NzllY3AtNCwKKyAgICAweDEuMDAwMDAwMDE4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzMKKyAgICAtMHgxLmZkNTk5MmJmM2ZhMzA3Y2UxNTZiOTYxNDk4MDc3OWVjcC00LAorICAgIC0weDEuMDAwMDAwMDE4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAweDEuZmZmNTcxOTdkN2YyMWFhZDhjZGU3NDFlMGMwYWQ3ZmFwLTcsCisgICAgMHgxLjAwMDAwZTBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuZmZmNTcxOTdkN2YyMWFhZDhjZGU3NDFlMGMwYWQ3ZmFwLTcsCisgICAgLTB4MS4wMDAwMGUwcC02CisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuZmY1NWI5NWUxODU0YjdkZWMzYTUxYmEyN2IzOWJlOGJwLTUsCisgICAgMHgxLjAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMHgxLmZmNTViOTVlMTg1NGI3ZGVjM2E1MWJhMjdiMzliZThicC01LAorICAgIC0weDEuMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS5mZjU1ZWQ3ZmU1MTkyODM1YjU3NzhjOWQwMzcyMGM1NnAtNSwKKyAgICAweDEuMDAwMDJhMmIwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNzkKKyAgICAtMHgxLmZmNTVlZDdmZTUxOTI4MzViNTc3OGM5ZDAzNzIwYzU2cC01LAorICAgIC0weDEuMDAwMDJhMmIwcC00CisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAweDEuZmZkOTU4OTk1M2MzMmJjOGRhN2MwZWQwYmFhNTQ0YjNwLTYsCisgICAgMHgxLjAwMDIwcC01CisgIH0sCisgIHsgLy8gRW50cnkgODEKKyAgICAtMHgxLmZmZDk1ODk5NTNjMzJiYzhkYTdjMGVkMGJhYTU0NGIzcC02LAorICAgIC0weDEuMDAwMjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIDB4MS44NWZkMWIxYjk2ZjU1YzY1MTg3NTI5MGIyZDdmNDk0Y3AtMSwKKyAgICAweDEuMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MworICAgIC0weDEuODVmZDFiMWI5NmY1NWM2NTE4NzUyOTBiMmQ3ZjQ5NGNwLTEsCisgICAgLTB4MS4wMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLmZkYjgxNjZjYzNlZDI4MTdjMWY1OWRiZDhiMjNiMmFicC00LAorICAgIDB4MS4wMDNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIC0weDEuZmRiODE2NmNjM2VkMjgxN2MxZjU5ZGJkOGIyM2IyYWJwLTQsCisgICAgLTB4MS4wMDNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS5mZmU4OTMzYmM1YTZkN2JlOGE3MzE2ZTQzY2U5YzZjZHAtNSwKKyAgICAweDEuMDA0OWM2ODk4MDJkMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5mZmU4OTMzYmM1YTZkN2JlOGE3MzE2ZTQzY2U5YzZjZHAtNSwKKyAgICAtMHgxLjAwNDljNjg5ODAyZDBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIDB4MS5mYTczYWY3YTY1ODM3NWZmNDM0ODM2N2YzODMwYTU2N3AtMywKKyAgICAweDEuMDI5NWZhZDQwYTU4MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgLTB4MS5mYTczYWY3YTY1ODM3NWZmNDM0ODM2N2YzODMwYTU2N3AtMywKKyAgICAtMHgxLjAyOTVmYWQ0MGE1ODBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MAorICAgIDB4MS4wNjI0ZDc3YzUxZTY4ODAwMDFmOWJlMTcwMDBiOWNmMXAtMTAsCisgICAgMHgxLjA2MjRkZDM2NTViOGFwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLjA2MjRkNzdjNTFlNjg4MDAwMWY5YmUxNzAwMGI5Y2YxcC0xMCwKKyAgICAtMHgxLjA2MjRkZDM2NTViOGFwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuMDYyNGQ3OWY5YjE5ZjdmZmZlMGE5ZDIxZWNhOTlkN2NwLTEwLAorICAgIDB4MS4wNjI0ZGQ1OTllZWU2cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgLTB4MS4wNjI0ZDc5ZjliMTlmN2ZmZmUwYTlkMjFlY2E5OWQ3Y3AtMTAsCisgICAgLTB4MS4wNjI0ZGQ1OTllZWU2cC0xMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLmU0MjkzMDlhYmZmZmQyZGRmZDgyZGU2NTgxMzZlYmE1cC0yLAorICAgIDB4MS4wNzAyMGUwNDFjMDg0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTUKKyAgICAtMHgxLmU0MjkzMDlhYmZmZmQyZGRmZDgyZGU2NTgxMzZlYmE1cC0yLAorICAgIC0weDEuMDcwMjBlMDQxYzA4NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjhjN2Y1YzZiODBmNjlhMzkzMjNjNGRiOTNhMGY3MmIwcC0xLAorICAgIDB4MS4wODBwMAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgLTB4MS44YzdmNWM2YjgwZjY5YTM5MzIzYzRkYjkzYTBmNzJiMHAtMSwKKyAgICAtMHgxLjA4MHAwCisgIH0sCisgIHsgLy8gRW50cnkgOTgKKyAgICAweDEuOGQwMTJlZTdiZDg2ZjdmZjAwMjg1Mzc3MWQ3ZjhiZjNwLTEsCisgICAgMHgxLjA4YTI3OGMwNDJkMDVwMAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLTB4MS44ZDAxMmVlN2JkODZmN2ZmMDAyODUzNzcxZDdmOGJmM3AtMSwKKyAgICAtMHgxLjA4YTI3OGMwNDJkMDVwMAorICB9LAorICB7IC8vIEVudHJ5IDEwMAorICAgIDB4MS5mZmZmZmU0MTMwODg0MDAxYTlkZDYyNzdjNjM3OTZiYXAtMSwKKyAgICAweDEuMTc3MDFiM2JmMDUyYnAzCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgLTB4MS5mZmZmZmU0MTMwODg0MDAxYTlkZDYyNzdjNjM3OTZiYXAtMSwKKyAgICAtMHgxLjE3NzAxYjNiZjA1MmJwMworICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS5mZGJjYjcwZTFhNzlmN2ZhZTIwYmIxMDViYzdiNWEwOXAtMiwKKyAgICAweDEuMTdiZDA4MmY3NDk0YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuZmRiY2I3MGUxYTc5ZjdmYWUyMGJiMTA1YmM3YjVhMDlwLTIsCisgICAgLTB4MS4xN2JkMDgyZjc0OTRhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLmZmOTdlZmQ5ZTA2YmFlMWIxNmNlZGJkYjRhOTIzMDRlcC0yLAorICAgIDB4MS4xOGY5NGM0M2U0MjU0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgLTB4MS5mZjk3ZWZkOWUwNmJhZTFiMTZjZWRiZGI0YTkyMzA0ZXAtMiwKKyAgICAtMHgxLjE4Zjk0YzQzZTQyNTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDYKKyAgICAweDEuMWFiZTM0MWMzYTkyMGZmZjk0ZDM1NmQ2ZjVmZmJjOGRwLTcsCisgICAgMHgxLjFhY3AtNworICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIC0weDEuMWFiZTM0MWMzYTkyMGZmZjk0ZDM1NmQ2ZjVmZmJjOGRwLTcsCisgICAgLTB4MS4xYWNwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuMDJlMWUyYjE0Yjk3YzZhMzVjYmRjMzk3ODczMTg0ZDJwLTEsCisgICAgMHgxLjFkMWEzYTM0NzQ2OGZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDkKKyAgICAtMHgxLjAyZTFlMmIxNGI5N2M2YTM1Y2JkYzM5Nzg3MzE4NGQycC0xLAorICAgIC0weDEuMWQxYTNhMzQ3NDY4ZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDExMAorICAgIDB4MS45ZDhkNDE5ODk1OGY2ZjExYzQxMDkwYWI3ZTNhY2NiMHAtMSwKKyAgICAweDEuMWVkNDdhZTg0MTliOXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgLTB4MS45ZDhkNDE5ODk1OGY2ZjExYzQxMDkwYWI3ZTNhY2NiMHAtMSwKKyAgICAtMHgxLjFlZDQ3YWU4NDE5YjlwMAorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS4xODJkMzMwYjNhYmQyYTJlMDdkNjljZmRkZTdhOGUzNnAtMiwKKyAgICAweDEuMWY4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgLTB4MS4xODJkMzMwYjNhYmQyYTJlMDdkNjljZmRkZTdhOGUzNnAtMiwKKyAgICAtMHgxLjFmOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDExNAorICAgIDB4MS5mZmUwNDgyZWY5NGZlODAwZmI3NjQzMWE3MjYwZWMxOHAtMSwKKyAgICAweDEuMjBhMGVhMGVhMGY3NXAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS5mZmUwNDgyZWY5NGZlODAwZmI3NjQzMWE3MjYwZWMxOHAtMSwKKyAgICAtMHgxLjIwYTBlYTBlYTBmNzVwMgorICB9LAorICB7IC8vIEVudHJ5IDExNgorICAgIDB4MS4yNjhmMWQ4MjI1OTA2ODAwODJhMDViZTgzMWU0ODU0YXAtNiwKKyAgICAweDEuMjY5NzNkYzdjNWJlNnAtNgorICB9LAorICB7IC8vIEVudHJ5IDExNworICAgIC0weDEuMjY4ZjFkODIyNTkwNjgwMDgyYTA1YmU4MzFlNDg1NGFwLTYsCisgICAgLTB4MS4yNjk3M2RjN2M1YmU2cC02CisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjIxOGFiMDU3NDE2MmQ4MDBkNDIxZmRiODQwMTQ1Njc1cC0yLAorICAgIDB4MS4yOWE2OWJkMTNlZTg3cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgLTB4MS4yMThhYjA1NzQxNjJkODAwZDQyMWZkYjg0MDE0NTY3NXAtMiwKKyAgICAtMHgxLjI5YTY5YmQxM2VlODdwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEuMmE0ZGRhN2RlMDAxN2ZmZmZmYmM3OTk0ZjFiYTA0YTBwLTIsCisgICAgMHgxLjMzMzMzMzMzODkzMTRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjEKKyAgICAtMHgxLjJhNGRkYTdkZTAwMTdmZmZmZmJjNzk5NGYxYmEwNGEwcC0yLAorICAgIC0weDEuMzMzMzMzMzM4OTMxNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS4zNTg4ZGVhNTNlM2U0ODAwMDE4NjgwOGMyOGM1MDdlMHAtMywKKyAgICAweDEuMzdlY2E2YTQxZTcyN3AtMworICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIC0weDEuMzU4OGRlYTUzZTNlNDgwMDAxODY4MDhjMjhjNTA3ZTBwLTMsCisgICAgLTB4MS4zN2VjYTZhNDFlNzI3cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLmFkYzU4YjI3NjI2MDMwNDAzYjlkZWExYzdlZWUwNWMwcC0xLAorICAgIDB4MS4zODE4ZmU4NDdkYTE0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAtMHgxLmFkYzU4YjI3NjI2MDMwNDAzYjlkZWExYzdlZWUwNWMwcC0xLAorICAgIC0weDEuMzgxOGZlODQ3ZGExNHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLjM5ZTY3MGY4NjRlMDY4MDA5MTZiMzIyNDM1YjdiYzlhcC02LAorICAgIDB4MS4zOWYwNDY5NTdhMmY2cC02CisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgLTB4MS4zOWU2NzBmODY0ZTA2ODAwOTE2YjMyMjQzNWI3YmM5YXAtNiwKKyAgICAtMHgxLjM5ZjA0Njk1N2EyZjZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuYWZiMDM1MjZiNDU0YWZjNGZkOGZiYjM3YmE5Nzk2OTFwLTEsCisgICAgMHgxLjNiNjA3MWQxZjc0ODRwMAorICB9LAorICB7IC8vIEVudHJ5IDEyOQorICAgIC0weDEuYWZiMDM1MjZiNDU0YWZjNGZkOGZiYjM3YmE5Nzk2OTFwLTEsCisgICAgLTB4MS4zYjYwNzFkMWY3NDg0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzAKKyAgICAweDEuZmZmNzFhNTM4ZmIyMzdmZmFlY2RhZmFjMDcwOThlY2RwLTEsCisgICAgMHgxLjQ5NGVlOWFjOGRhNjBwMgorICB9LAorICB7IC8vIEVudHJ5IDEzMQorICAgIC0weDEuZmZmNzFhNTM4ZmIyMzdmZmFlY2RhZmFjMDcwOThlY2RwLTEsCisgICAgLTB4MS40OTRlZTlhYzhkYTYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzIKKyAgICAweDEuYjhhZjRkYzI1MzZlYTgwMGYzNjE5YTM3ZGFiZDExMmVwLTEsCisgICAgMHgxLjRiY2M1ZTM4OWM2YTJwMAorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEuYjhhZjRkYzI1MzZlYTgwMGYzNjE5YTM3ZGFiZDExMmVwLTEsCisgICAgLTB4MS40YmNjNWUzODljNmEycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzQKKyAgICAweDEuYmZlMTUyNzdhODcwOWZmZjcxOTZmYzdlZDI5OWNhY2ZwLTEsCisgICAgMHgxLjVhNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS5iZmUxNTI3N2E4NzA5ZmZmNzE5NmZjN2VkMjk5Y2FjZnAtMSwKKyAgICAtMHgxLjVhNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLjMxZTI1OGI5ZDU5NDE3ZmYwMTcyYmM0ODJhZDA4MzZicC0xLAorICAgIDB4MS42MGQ3MWRiNjNmYzM4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM3CisgICAgLTB4MS4zMWUyNThiOWQ1OTQxN2ZmMDE3MmJjNDgyYWQwODM2YnAtMSwKKyAgICAtMHgxLjYwZDcxZGI2M2ZjMzhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAweDEuNjJmZDU5NTcwMjY1OGZmNmVmOTg1NzE4MjUzNWM2MmZwLTYsCisgICAgMHgxLjYzMGI5MmU3ZjBmNzdwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLjYyZmQ1OTU3MDI2NThmZjZlZjk4NTcxODI1MzVjNjJmcC02LAorICAgIC0weDEuNjMwYjkyZTdmMGY3N3AtNgorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS4zM2VhMTQxY2ViYjY0MzBjNjY4ZmZjZTk2MjYyNjYzNnAtMSwKKyAgICAweDEuNjQwMjRmNGEzYjA3MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE0MQorICAgIC0weDEuMzNlYTE0MWNlYmI2NDMwYzY2OGZmY2U5NjI2MjY2MzZwLTEsCisgICAgLTB4MS42NDAyNGY0YTNiMDcwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQyCisgICAgMHgxLjY0Yzg0MDdjMjMyOTE3ZmFmY2MzZmE3MjU2ZjY1OTc5cC0xMywKKyAgICAweDEuNjRjODQwYjVlMzBhYXAtMTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLjY0Yzg0MDdjMjMyOTE3ZmFmY2MzZmE3MjU2ZjY1OTc5cC0xMywKKyAgICAtMHgxLjY0Yzg0MGI1ZTMwYWFwLTEzCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgMHgxLjM1MDYxYzVlOGM1MDM1MDBlNDU0NjA5NTRmYzYwYmEwcC0xLAorICAgIDB4MS42NWMwMzAwNTQ4OTkxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS4zNTA2MWM1ZThjNTAzNTAwZTQ1NDYwOTU0ZmM2MGJhMHAtMSwKKyAgICAtMHgxLjY1YzAzMDA1NDg5OTFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAweDEuZmM2NTlkM2NjYjNhZDBmNDA2ZTU3NDE4OTViZjUyOWJwLTEsCisgICAgMHgxLjY5NWFiMzEyNGU2ZjNwMQorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEuZmM2NTlkM2NjYjNhZDBmNDA2ZTU3NDE4OTViZjUyOWJwLTEsCisgICAgLTB4MS42OTVhYjMxMjRlNmYzcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAweDEuNjk4ZTc5NDVhYTc3MjgxMmViODI0NmMwNjZmZTEyY2VwLTQsCisgICAgMHgxLjZhOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0weDEuNjk4ZTc5NDVhYTc3MjgxMmViODI0NmMwNjZmZTEyY2VwLTQsCisgICAgLTB4MS42YThwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTAKKyAgICAweDEuYzlhOTZkOWIyNWUyNTdmZWY0MjI1NGEwOWM1YThlODlwLTEsCisgICAgMHgxLjcwZGMzNzBkYzM3MGNwMAorICB9LAorICB7IC8vIEVudHJ5IDE1MQorICAgIC0weDEuYzlhOTZkOWIyNWUyNTdmZWY0MjI1NGEwOWM1YThlODlwLTEsCisgICAgLTB4MS43MGRjMzcwZGMzNzBjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTIKKyAgICAweDEuNzI5YjBiNTM4OTFjZDgwMjlhMTk4ZjM0NmFkZWQzYzZwLTUsCisgICAgMHgxLjcyZGJkOTY5N2EzMWFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAtMHgxLjcyOWIwYjUzODkxY2Q4MDI5YTE5OGYzNDZhZGVkM2M2cC01LAorICAgIC0weDEuNzJkYmQ5Njk3YTMxYXAtNQorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDB4MS40MmRmYzkwY2U3OTkwODAxODQ5YTc5MmU0YjU2OGUyMnAtMSwKKyAgICAweDEuN2MyMDU1ZWVkZWE4M3AtMQorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEuNDJkZmM5MGNlNzk5MDgwMTg0OWE3OTJlNGI1NjhlMjJwLTEsCisgICAgLTB4MS43YzIwNTVlZWRlYTgzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgMHgxLjQ0NWZlMzExMDk3ZThiNTA5NzUzZTBiYmQ0ZDhkZThhcC0xLAorICAgIDB4MS43ZWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLjQ0NWZlMzExMDk3ZThiNTA5NzUzZTBiYmQ0ZDhkZThhcC0xLAorICAgIC0weDEuN2VhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgMHgxLjdlOWRjYjhlNjI3MmY3ZmY3YWViZjk4OWZjNzE2MTcxcC02LAorICAgIDB4MS43ZWFmOWI2YWU0ZWUzcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTB4MS43ZTlkY2I4ZTYyNzJmN2ZmN2FlYmY5ODlmYzcxNjE3MXAtNiwKKyAgICAtMHgxLjdlYWY5YjZhZTRlZTNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEuNDU5ZjBkY2RiMWIyNTIyYjU2MzdkMzAzNjU2MzA2ZGVwLTEsCisgICAgMHgxLjgwYjY4Y2NlYjg5YzRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjEKKyAgICAtMHgxLjQ1OWYwZGNkYjFiMjUyMmI1NjM3ZDMwMzY1NjMwNmRlcC0xLAorICAgIC0weDEuODBiNjhjY2ViODljNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIDB4MS40NWIzMTExZDA5MWE5MTA2MjFlYzdmMzk5Y2NkYjhjMnAtMSwKKyAgICAweDEuODBkODI5MjRlYzQ0ZHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuNDViMzExMWQwOTFhOTEwNjIxZWM3ZjM5OWNjZGI4YzJwLTEsCisgICAgLTB4MS44MGQ4MjkyNGVjNDRkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgMHgxLjQ5MDA5YzY1NTZlZWQxZTVlMDc2MTViNWI0YzM2OGVjcC0xLAorICAgIDB4MS44NjZlNWFlODRiMGU4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS40OTAwOWM2NTU2ZWVkMWU1ZTA3NjE1YjViNGMzNjhlY3AtMSwKKyAgICAtMHgxLjg2NmU1YWU4NGIwZThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuNDlhMjAwNmQ5NTk4ZDA1NjQ5NzlmODdlZjgxYzViMWNwLTEsCisgICAgMHgxLjg3ODFhMDkyYTBmNTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjcKKyAgICAtMHgxLjQ5YTIwMDZkOTU5OGQwNTY0OTc5Zjg3ZWY4MWM1YjFjcC0xLAorICAgIC0weDEuODc4MWEwOTJhMGY1MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2OAorICAgIDB4MS44NjJjODQ3MGU2NzVhMDdlMTIzZWE4NzlmOGJhZWJiM3AtMywKKyAgICAweDEuOGIwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS44NjJjODQ3MGU2NzVhMDdlMTIzZWE4NzlmOGJhZWJiM3AtMywKKyAgICAtMHgxLjhiMHAtMworICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIDB4MS44Zjc3ZDVkODkzMmM5ZmY5MDk1ZThmNzdmZGRkMDcwZHAtNiwKKyAgICAweDEuOGY4YzFiNDdlYzExNHAtNgorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEuOGY3N2Q1ZDg5MzJjOWZmOTA5NWU4Zjc3ZmRkZDA3MGRwLTYsCisgICAgLTB4MS44ZjhjMWI0N2VjMTE0cC02CisgIH0sCisgIHsgLy8gRW50cnkgMTcyCisgICAgMHgxLjgzMGUyM2UwNGUwMzQ3ZmU3ODY2M2YxYzQ0ZWI4NGZicC0yLAorICAgIDB4MS45NzRwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLjgzMGUyM2UwNGUwMzQ3ZmU3ODY2M2YxYzQ0ZWI4NGZicC0yLAorICAgIC0weDEuOTc0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgMHgxLjUzNmM2ZDRiYzgzNTJkYjc5ODY2NTYwMjY2OTdmMWE5cC0xLAorICAgIDB4MS45ODk4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3NQorICAgIC0weDEuNTM2YzZkNGJjODM1MmRiNzk4NjY1NjAyNjY5N2YxYTlwLTEsCisgICAgLTB4MS45ODk4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3NgorICAgIDB4MS41M2NhODM3MmIzY2YwODAwYzEwOTM3MmVmMDI1ODU1NnAtMSwKKyAgICAweDEuOTk0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS41M2NhODM3MmIzY2YwODAwYzEwOTM3MmVmMDI1ODU1NnAtMSwKKyAgICAtMHgxLjk5NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE3OAorICAgIDB4MS45NDAyMjc5NGNhMGY5MDExMWNkMDFiN2ZjYjhjZjliNnAtMywKKyAgICAweDEuOTk2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgLTB4MS45NDAyMjc5NGNhMGY5MDExMWNkMDFiN2ZjYjhjZjliNnAtMywKKyAgICAtMHgxLjk5NnAtMworICB9LAorICB7IC8vIEVudHJ5IDE4MAorICAgIDB4MS45NDM5ODMwYjg1YWQxMDAwMDFiODY4NzVlMzQzNTY3OHAtMywKKyAgICAweDEuOTk5OTk5OTllN2ZiNnAtMworICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuOTQzOTgzMGI4NWFkMTAwMDAxYjg2ODc1ZTM0MzU2NzhwLTMsCisgICAgLTB4MS45OTk5OTk5OWU3ZmI2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLjg1MTE1NzNkODNlMjk4MDAwMWRmYjQ3NmFmN2ZkOTAycC0yLAorICAgIDB4MS45OTk5OTk5YjM0YTVicC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTgzCisgICAgLTB4MS44NTExNTczZDgzZTI5ODAwMDFkZmI0NzZhZjdmZDkwMnAtMiwKKyAgICAtMHgxLjk5OTk5OTliMzRhNWJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuOTQzOTgzMGQ4ODdkMDgwMDAxMGMwMjI4NTZhZDgwNDVwLTMsCisgICAgMHgxLjk5OTk5OTliZmZhOWJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAtMHgxLjk0Mzk4MzBkODg3ZDA4MDAwMTBjMDIyODU2YWQ4MDQ1cC0zLAorICAgIC0weDEuOTk5OTk5OWJmZmE5YnAtMworICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS45ODNkNzc5OWNlMWY2ZmZmZmUyMDA0ZTM5M2Q5NTMyOXAtNCwKKyAgICAweDEuOTk5OTk5OWQ3ZDhhMnAtNAorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuOTgzZDc3OTljZTFmNmZmZmZlMjAwNGUzOTNkOTUzMjlwLTQsCisgICAgLTB4MS45OTk5OTk5ZDdkOGEycC00CisgIH0sCisgIHsgLy8gRW50cnkgMTg4CisgICAgMHgxLjk4M2Q3NzliNmM4NWY3ZmZmZTI5MDVmYjIyMzk3YjYwcC00LAorICAgIDB4MS45OTk5OTk5ZjIwMTkxcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTg5CisgICAgLTB4MS45ODNkNzc5YjZjODVmN2ZmZmUyOTA1ZmIyMjM5N2I2MHAtNCwKKyAgICAtMHgxLjk5OTk5OTlmMjAxOTFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuZGNiYTY2MGM2ZmVjZTgwZDQ1NTMxMTllZmZkZDVjMmVwLTEsCisgICAgMHgxLmFhYWFhYWFhYWFhYWNwMAorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuZGNiYTY2MGM2ZmVjZTgwZDQ1NTMxMTllZmZkZDVjMmVwLTEsCisgICAgLTB4MS5hYWFhYWFhYWFhYWFjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuYWQ1OWI1OTQ2NWIwNjUxNzA2MDVjYmYxMzk4ODgzMmFwLTcsCisgICAgMHgxLmFkNnAtNworICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEuYWQ1OWI1OTQ2NWIwNjUxNzA2MDVjYmYxMzk4ODgzMmFwLTcsCisgICAgLTB4MS5hZDZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEuNjAxMGVhMGVkNTE3OTdmZjhiNmNhN2ZlZGUxYjhkMzFwLTEsCisgICAgMHgxLmFmZDdlYmY1ZmFmODBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTUKKyAgICAtMHgxLjYwMTBlYTBlZDUxNzk3ZmY4YjZjYTdmZWRlMWI4ZDMxcC0xLAorICAgIC0weDEuYWZkN2ViZjVmYWY4MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5NgorICAgIDB4MS45YjQ2MzEwZWI0ZTZkN2ZjZmNkNmUyODA4NzBlOWI2NXAtMiwKKyAgICAweDEuYjNjZmE2Yzc2NDNhY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuOWI0NjMxMGViNGU2ZDdmY2ZjZDZlMjgwODcwZTliNjVwLTIsCisgICAgLTB4MS5iM2NmYTZjNzY0M2FjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgMHgxLjYzMGVkYWU4Nzg2YzhlYWM0YWU0ZmMyY2EyZmEwZGJlcC0xLAorICAgIDB4MS5iNTkwMTUwZGNmOGJmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS42MzBlZGFlODc4NmM4ZWFjNGFlNGZjMmNhMmZhMGRiZXAtMSwKKyAgICAtMHgxLmI1OTAxNTBkY2Y4YmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDAKKyAgICAweDEuNjU3YTRmN2YyNjBkNGYyNmQ3Zjc2ZGIwMWM4NTZhYzNwLTEsCisgICAgMHgxLmJhNDEwOGIyNjRjNmFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLjY1N2E0ZjdmMjYwZDRmMjZkN2Y3NmRiMDFjODU2YWMzcC0xLAorICAgIC0weDEuYmE0MTA4YjI2NGM2YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIDB4MS5iYTczZWM0ZjAzNTlhMDA1ZDEwOWVkM2Q4MjQ1MzYzZnAtNiwKKyAgICAweDEuYmE4Zjc4NDQ5ZjBiOHAtNgorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0weDEuYmE3M2VjNGYwMzU5YTAwNWQxMDllZDNkODI0NTM2M2ZwLTYsCisgICAgLTB4MS5iYThmNzg0NDlmMGI4cC02CisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgMHgxLmI0MmFhODZmYzBjMGFmYzRjNDg1NjljZDkyMjkzYTZmcC0zLAorICAgIDB4MS5iYWYyNTAxZTIwNTI4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjA1CisgICAgLTB4MS5iNDJhYTg2ZmMwYzBhZmM0YzQ4NTY5Y2Q5MjI5M2E2ZnAtMywKKyAgICAtMHgxLmJhZjI1MDFlMjA1MjhwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEuZTBlYjkzZTkxMWJmZDdmZmMxY2JiNTU1ZjA4MzU0NmFwLTEsCisgICAgMHgxLmJiNjc2NmMxYTI2MjRwMAorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0weDEuZTBlYjkzZTkxMWJmZDdmZmMxY2JiNTU1ZjA4MzU0NmFwLTEsCisgICAgLTB4MS5iYjY3NjZjMWEyNjI0cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDgKKyAgICAweDEuYmM5YzkwMDQzZjVhZmZmODBiOTg5ZjkyY2VhNGIwODdwLTYsCisgICAgMHgxLmJjYjg4M2JiNGExZDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDkKKyAgICAtMHgxLmJjOWM5MDA0M2Y1YWZmZjgwYjk4OWY5MmNlYTRiMDg3cC02LAorICAgIC0weDEuYmNiODgzYmI0YTFkMnAtNgorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS42NmRlMGJlZjIzMGU4ODAyMDc1YjcyOGZjZmZkZWE5ZXAtMSwKKyAgICAweDEuYmNmOWI1ZTU1MmU0NnAtMQorICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIC0weDEuNjZkZTBiZWYyMzBlODgwMjA3NWI3MjhmY2ZmZGVhOWVwLTEsCisgICAgLTB4MS5iY2Y5YjVlNTUyZTQ2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgMHgxLmM3NjFmNzViNjk2NmM4MDE1YmMxOTA3MGY2YWI1MDA2cC02LAorICAgIDB4MS5jNzhwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAtMHgxLmM3NjFmNzViNjk2NmM4MDE1YmMxOTA3MGY2YWI1MDA2cC02LAorICAgIC0weDEuYzc4cC02CisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgMHgxLjcxNDIxMzUwYTA2NGIwYjNiMTY4YzZlMTNhOTQyZGExcC0xLAorICAgIDB4MS5kMjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAtMHgxLjcxNDIxMzUwYTA2NGIwYjNiMTY4YzZlMTNhOTQyZGExcC0xLAorICAgIC0weDEuZDIwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLmNhOWFkYzAwZGFhZGYyMWRlMmY4ZTJhM2I2NjdhY2MzcC0zLAorICAgIDB4MS5kMjgyNzE1NWNkN2YycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjE3CisgICAgLTB4MS5jYTlhZGMwMGRhYWRmMjFkZTJmOGUyYTNiNjY3YWNjM3AtMywKKyAgICAtMHgxLmQyODI3MTU1Y2Q3ZjJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuZDNhZjBiNDA5NDkzZDgwZjE2NjkwZDQxN2EwMjA5NTRwLTUsCisgICAgMHgxLmQ0MzE1ZmRlMGZkNjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAtMHgxLmQzYWYwYjQwOTQ5M2Q4MGYxNjY5MGQ0MTdhMDIwOTU0cC01LAorICAgIC0weDEuZDQzMTVmZGUwZmQ2MHAtNQorICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS5mZjUzZWY5MDlhNTNjN2ZmNDZhZTY0OTJiMjQ5ZjkxNHAtMSwKKyAgICAweDEuZDUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjEKKyAgICAtMHgxLmZmNTNlZjkwOWE1M2M3ZmY0NmFlNjQ5MmIyNDlmOTE0cC0xLAorICAgIC0weDEuZDUwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjIKKyAgICAweDEuZDRjNmRiZGQ2MjA0YjdmZGFlZmE2NWMyZGU2YzNiYzFwLTUsCisgICAgMHgxLmQ1NGExYjQzZjIxMTlwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAtMHgxLmQ0YzZkYmRkNjIwNGI3ZmRhZWZhNjVjMmRlNmMzYmMxcC01LAorICAgIC0weDEuZDU0YTFiNDNmMjExOXAtNQorICB9LAorICB7IC8vIEVudHJ5IDIyNAorICAgIDB4MS5kNjBjMDU2ZWViY2I1N2VhOTRkZTcyNmU4NmY0OWVlNnAtNCwKKyAgICAweDEuZDgyMDc2ZDA3ZTBjYXAtNAorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIC0weDEuZDYwYzA1NmVlYmNiNTdlYTk0ZGU3MjZlODZmNDllZTZwLTQsCisgICAgLTB4MS5kODIwNzZkMDdlMGNhcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgMHgxLjc0NWE4MWY1NDg1YjBkYWQ4M2QzYWQ3NjFmMDM0ZDE3cC0xLAorICAgIDB4MS5kODgyOWQ0OGQ1Y2NhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjI3CisgICAgLTB4MS43NDVhODFmNTQ4NWIwZGFkODNkM2FkNzYxZjAzNGQxN3AtMSwKKyAgICAtMHgxLmQ4ODI5ZDQ4ZDVjY2FwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEuZGFiNzdmMzRkMzAxYzkwMGUxM2QwNWI5MTJmY2E1OTZwLTcsCisgICAgMHgxLmRhY3AtNworICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIC0weDEuZGFiNzdmMzRkMzAxYzkwMGUxM2QwNWI5MTJmY2E1OTZwLTcsCisgICAgLTB4MS5kYWNwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzAKKyAgICAweDEuZDU5ZmIyYzQ5Mjc3NjdmZmFmMDM4YjViNTMzZTE3YjhwLTMsCisgICAgMHgxLmRlMnAtMworICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIC0weDEuZDU5ZmIyYzQ5Mjc3NjdmZmFmMDM4YjViNTMzZTE3YjhwLTMsCisgICAgLTB4MS5kZTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEuYmViYzU5MzQzNTY5NWYzZTVkOWRmZGNlOGFjNjU5MTFwLTIsCisgICAgMHgxLmRlZDRlMTU3ZWJiNWFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAtMHgxLmJlYmM1OTM0MzU2OTVmM2U1ZDlkZmRjZThhYzY1OTExcC0yLAorICAgIC0weDEuZGVkNGUxNTdlYmI1YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIzNAorICAgIDB4MS5kNzY2NWNmOWJiODI4N2Y1M2NmZDJkNTFmMjhkYmM4N3AtMywKKyAgICAweDEuZXAtMworICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIC0weDEuZDc2NjVjZjliYjgyODdmNTNjZmQyZDUxZjI4ZGJjODdwLTMsCisgICAgLTB4MS5lcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjM2CisgICAgMHgxLmUxODM5YTYzMzYxY2QzNmEyMDc3ZWMzYmU0NmZiMzFjcC02LAorICAgIDB4MS5lMWE3MWM4OGQ0MmFicC02CisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgLTB4MS5lMTgzOWE2MzM2MWNkMzZhMjA3N2VjM2JlNDZmYjMxY3AtNiwKKyAgICAtMHgxLmUxYTcxYzg4ZDQyYWJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAweDEuZTk0NDE0YmZiOGIxYzkyNjQ4N2E2MTFjM2U5YzgyZmVwLTEsCisgICAgMHgxLmU0OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgLTB4MS5lOTQ0MTRiZmI4YjFjOTI2NDg3YTYxMWMzZTljODJmZXAtMSwKKyAgICAtMHgxLmU0OHAwCisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLmU0N2VjYjBiNTE5ZWQ0YzQwNWU2OTI1YzYxODliNGQ1cC02LAorICAgIDB4MS5lNGEyZjcyMzc2ZDgzcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgLTB4MS5lNDdlY2IwYjUxOWVkNGM0MDVlNjkyNWM2MTg5YjRkNXAtNiwKKyAgICAtMHgxLmU0YTJmNzIzNzZkODNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEuZTk0ZmM5MzYzMWM3ZTkxOTFmNDk3M2EwZDgwN2Q3OGFwLTEsCisgICAgMHgxLmU0YzM3NzE1M2NhOWFwMAorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIC0weDEuZTk0ZmM5MzYzMWM3ZTkxOTFmNDk3M2EwZDgwN2Q3OGFwLTEsCisgICAgLTB4MS5lNGMzNzcxNTNjYTlhcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEuYzRjYzAzYTNkMGMyMzdmZGNmNTYyM2I1NjE1YmJlMWRwLTIsCisgICAgMHgxLmU2NTc3NTM2ZDQzZTdwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDUKKyAgICAtMHgxLmM0Y2MwM2EzZDBjMjM3ZmRjZjU2MjNiNTYxNWJiZTFkcC0yLAorICAgIC0weDEuZTY1Nzc1MzZkNDNlN3AtMgorICB9LAorICB7IC8vIEVudHJ5IDI0NgorICAgIDB4MS5jNjIxNGQ1OTQ0NTQ3ZTBiNjg0ZWFmMDU1NzExNzY3NXAtMiwKKyAgICAweDEuZTgwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgLTB4MS5jNjIxNGQ1OTQ0NTQ3ZTBiNjg0ZWFmMDU1NzExNzY3NXAtMiwKKyAgICAtMHgxLmU4MHAtMgorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDB4MS43Y2Q4ZmE4OTJlY2YxN2ZlNWRhNmEyMTdmMWU4ZDQ0MXAtMSwKKyAgICAweDEuZWIwNWIyMjZjZDE5NHAtMQorICB9LAorICB7IC8vIEVudHJ5IDI0OQorICAgIC0weDEuN2NkOGZhODkyZWNmMTdmZTVkYTZhMjE3ZjFlOGQ0NDFwLTEsCisgICAgLTB4MS5lYjA1YjIyNmNkMTk0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMHgxLmZiNjM4YzM3NmM4ZmE4MDEwZGJiYjgwNWQzNDkzNjZlcC02LAorICAgIDB4MS5mYjhkMTg4YTg0YzM3cC02CisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgLTB4MS5mYjYzOGMzNzZjOGZhODAxMGRiYmI4MDVkMzQ5MzY2ZXAtNiwKKyAgICAtMHgxLmZiOGQxODhhODRjMzdwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEuZWQwMjIxMWZkZTg0Njg5NWUzYTIzMWFiNGIxNWZjMDdwLTEsCisgICAgMHgxLmZiZmZmZmZmZmZmZmZwMAorICB9LAorICB7IC8vIEVudHJ5IDI1MworICAgIC0weDEuZWQwMjIxMWZkZTg0Njg5NWUzYTIzMWFiNGIxNWZjMDdwLTEsCisgICAgLTB4MS5mYmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAweDEuODU1NTg1NzA0OThmMTdmZDkyODFjYTljNDViZmZiNWVwLTEsCisgICAgMHgxLmZlOTFiZDIwYzJmYTdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTUKKyAgICAtMHgxLjg1NTU4NTcwNDk4ZjE3ZmQ5MjgxY2E5YzQ1YmZmYjVlcC0xLAorICAgIC0weDEuZmU5MWJkMjBjMmZhN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS5mZjhmNTVjNTgwZDBhZDcwNWY0NjRiOWUzNmMwNDYyNHAtOSwKKyAgICAweDEuZmY4ZmZmZmZmZmZmZnAtOQorICB9LAorICB7IC8vIEVudHJ5IDI1NworICAgIC0weDEuZmY4ZjU1YzU4MGQwYWQ3MDVmNDY0YjllMzZjMDQ2MjRwLTksCisgICAgLTB4MS5mZjhmZmZmZmZmZmZmcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgMHgxLmZmY2Y1NTg1OTRmOTk4MDk4N2I0MDg2M2VmY2E2NzE2cC05LAorICAgIDB4MS5mZmNmZmZmZmZmZmZmcC05CisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgLTB4MS5mZmNmNTU4NTk0Zjk5ODA5ODdiNDA4NjNlZmNhNjcxNnAtOSwKKyAgICAtMHgxLmZmY2ZmZmZmZmZmZmZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEuZmZiNTYxOTc1NjI2MmI4M2Y3MTYyMjMwODI1NzRiOWJwLTYsCisgICAgMHgxLmZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIC0weDEuZmZiNTYxOTc1NjI2MmI4M2Y3MTYyMjMwODI1NzRiOWJwLTYsCisgICAgLTB4MS5mZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEuZmZlMTQ1NzNhN2MxOGUwYjFlMmI2MTY0MDhiMDIzZDBwLTksCisgICAgMHgxLmZmZTFlZmZmZmZmZmZwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjMKKyAgICAtMHgxLmZmZTE0NTczYTdjMThlMGIxZTJiNjE2NDA4YjAyM2QwcC05LAorICAgIC0weDEuZmZlMWVmZmZmZmZmZnAtOQorICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS5mZmVkNTU5OTk2ZTgwODBlMzVkYjRkZGQ1YzUwNjdiN3AtOCwKKyAgICAweDEuZmZlZmZmZmZmZmZmZnAtOAorICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIC0weDEuZmZlZDU1OTk5NmU4MDgwZTM1ZGI0ZGRkNWM1MDY3YjdwLTgsCisgICAgLTB4MS5mZmVmZmZmZmZmZmZmcC04CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLmZkNTk1YjFiZjVmZmQ3ZmQ3NjAyMjI0NzYyMDRhM2M4cC00LAorICAgIDB4MS5mZmZmYzc3ZmZmZjQ3cC00CisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgLTB4MS5mZDU5NWIxYmY1ZmZkN2ZkNzYwMjIyNDc2MjA0YTNjOHAtNCwKKyAgICAtMHgxLmZmZmZjNzdmZmZmNDdwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEuODVlZmEzN2NiZTMzNDgwMGZmZmM2MzAwMmM4YzAzZWVwLTEsCisgICAgMHgxLmZmZmZlZDVhZWVkYzdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAtMHgxLjg1ZWZhMzdjYmUzMzQ4MDBmZmZjNjMwMDJjOGMwM2VlcC0xLAorICAgIC0weDEuZmZmZmVkNWFlZWRjN3AtMQorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS44NWVmYTlkOTAzMmU2ZWJiMjU3YzlkYzdiZWZjZWE5Y3AtMSwKKyAgICAweDEuZmZmZmZjN2ZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDI3MQorICAgIC0weDEuODVlZmE5ZDkwMzJlNmViYjI1N2M5ZGM3YmVmY2VhOWNwLTEsCisgICAgLTB4MS5mZmZmZmM3ZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjcyCisgICAgMHgxLmY1OTdlYTJkM2M2YjExMmZiOTk2Njk3YWI5ZDczMGY4cC0zLAorICAgIDB4MS5mZmZmZmZiZmJmZmZmcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjczCisgICAgLTB4MS5mNTk3ZWEyZDNjNmIxMTJmYjk5NjY5N2FiOWQ3MzBmOHAtMywKKyAgICAtMHgxLmZmZmZmZmJmYmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEuZjU5N2VhM2M4MmUxNDgwNDliODEyNzY3NDdiMjJhNDNwLTMsCisgICAgMHgxLmZmZmZmZmNmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAtMHgxLmY1OTdlYTNjODJlMTQ4MDQ5YjgxMjc2NzQ3YjIyYTQzcC0zLAorICAgIC0weDEuZmZmZmZmY2ZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDI3NgorICAgIDB4MS5kOTM1M2Q3NTA0MDRkN2ZkNGJkNzYxNzRiOWViMGM0YXAtMiwKKyAgICAweDEuZmZmZmZmZmY3ZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDI3NworICAgIC0weDEuZDkzNTNkNzUwNDA0ZDdmZDRiZDc2MTc0YjllYjBjNGFwLTIsCisgICAgLTB4MS5mZmZmZmZmZjdmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLjg1ZWZhYjUxNGYxMGVkNTYxNGMyNjQyNWI5NTJiMmE2cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmOWZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgLTB4MS44NWVmYWI1MTRmMTBlZDU2MTRjMjY0MjViOTUyYjJhNnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmY5ZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODAKKyAgICAweDEuZmZkNTU5OTkyYWY4NmJlMTc2MzRiYTgxODBlYjU2ZTNwLTYsCisgICAgMHgxLmZmZmZmZmZmZmZkYThwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODEKKyAgICAtMHgxLmZmZDU1OTk5MmFmODZiZTE3NjM0YmE4MTgwZWI1NmUzcC02LAorICAgIC0weDEuZmZmZmZmZmZmZmRhOHAtNgorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS5mZjU1OTk3ZTAyZjVkN2Y5NzM5Y2IwNzlhZWM2OGVmMXAtNSwKKyAgICAweDEuZmZmZmZmZmZmZmU4NXAtNQorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIC0weDEuZmY1NTk5N2UwMmY1ZDdmOTczOWNiMDc5YWVjNjhlZjFwLTUsCisgICAgLTB4MS5mZmZmZmZmZmZmZTg1cC01CisgIH0sCisgIHsgLy8gRW50cnkgMjg0CisgICAgMHgxLjg1ZWZhYjUxNGYzOGVkZmQ5N2Y5MzEyYmM5OGUyODg5cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmYzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgLTB4MS44NWVmYWI1MTRmMzhlZGZkOTdmOTMxMmJjOThlMjg4OXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZjNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDI4NworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODgKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMjg5CisgICAgMHgxLjFhNWVlZmYyN2NjODRlMjk2NzVmMDM4ZjFhYmE2MDQycC01LAorICAgIDB4MS4xYTdiOTYxMWE3Yjk2cC01CisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgLTB4MS4xYTVlZWZmMjdjYzg0ZTI5Njc1ZjAzOGYxYWJhNjA0MnAtNSwKKyAgICAtMHgxLjFhN2I5NjExYTdiOTZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAweDEuMWEwOTI3NWM1OTQzNDhkNjlkM2FhNmJjNWE2ZDNlYWNwLTQsCisgICAgMHgxLjFhN2I5NjExYTdiOTZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAtMHgxLjFhMDkyNzVjNTk0MzQ4ZDY5ZDNhYTZiYzVhNmQzZWFjcC00LAorICAgIC0weDEuMWE3Yjk2MTFhN2I5NnAtNAorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIDB4MS5hNjM4MTU5MTVjM2RiMzJhMzU0MzIwMmYzMTBlZGVkYnAtNCwKKyAgICAweDEuYTdiOTYxMWE3Yjk2MXAtNAorICB9LAorICB7IC8vIEVudHJ5IDI5NAorICAgIC0weDEuYTYzODE1OTE1YzNkYjMyYTM1NDMyMDJmMzEwZWRlZGJwLTQsCisgICAgLTB4MS5hN2I5NjExYTdiOTYxcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjk1CisgICAgMHgxLjE4YjQ3MmU4NGViOGExODllMTEzYTI2MWFlNDEyNTU2cC0zLAorICAgIDB4MS4xYTdiOTYxMWE3Yjk2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjk2CisgICAgLTB4MS4xOGI0NzJlODRlYjhhMTg5ZTExM2EyNjFhZTQxMjU1NnAtMywKKyAgICAtMHgxLjFhN2I5NjExYTdiOTZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAweDEuNWRhNTRkNjBhNzE5NWM4YWRiNTQ1ODAyZjFiZmM1OTRwLTMsCisgICAgMHgxLjYxMWE3Yjk2MTFhN2NwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAtMHgxLjVkYTU0ZDYwYTcxOTVjOGFkYjU0NTgwMmYxYmZjNTk0cC0zLAorICAgIC0weDEuNjExYTdiOTYxMWE3Y3AtMworICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIDB4MS5hMWM3YTcxMjJkZjU4NjNhZGExMTU2YWIzZTY5MDBhMHAtMywKKyAgICAweDEuYTdiOTYxMWE3Yjk2MnAtMworICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIC0weDEuYTFjN2E3MTIyZGY1ODYzYWRhMTE1NmFiM2U2OTAwYTBwLTMsCisgICAgLTB4MS5hN2I5NjExYTdiOTYycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzAxCisgICAgMHgxLmU0ZjY2Yzk4ZWE5Mzg3Zjg0YzRiM2FjNDk0ZjY3MGI3cC0zLAorICAgIDB4MS5lZTU4NDY5ZWU1ODQ4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgLTB4MS5lNGY2NmM5OGVhOTM4N2Y4NGM0YjNhYzQ5NGY2NzBiN3AtMywKKyAgICAtMHgxLmVlNTg0NjllZTU4NDhwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAweDEuMTM4NzVhYjNjZWFkODA3OTAzZTFmMWYzZThlNTY0M2VwLTIsCisgICAgMHgxLjFhN2I5NjExYTdiOTdwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAtMHgxLjEzODc1YWIzY2VhZDgwNzkwM2UxZjFmM2U4ZTU2NDNlcC0yLAorICAgIC0weDEuMWE3Yjk2MTFhN2I5N3AtMgorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIDB4MS4zM2Y4MDI1NjM4ZTBkOTY2ODc3MDA3ZmY0MjkyZmM0OXAtMiwKKyAgICAweDEuM2RjYjA4ZDNkY2IwYXAtMgorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIC0weDEuMzNmODAyNTYzOGUwZDk2Njg3NzAwN2ZmNDI5MmZjNDlwLTIsCisgICAgLTB4MS4zZGNiMDhkM2RjYjBhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzA3CisgICAgMHgxLjUzYmUzZjk2MzgyOTljYzEwNDJjZDMwMTRlYjYxMWE1cC0yLAorICAgIDB4MS42MTFhN2I5NjExYTdkcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgLTB4MS41M2JlM2Y5NjM4Mjk5Y2MxMDQyY2QzMDE0ZWI2MTFhNXAtMiwKKyAgICAtMHgxLjYxMWE3Yjk2MTFhN2RwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAweDEuNzJjYzhhY2FkNzRhMDU1NGNlYWI4ZjY3M2Q4ZmQ5YzFwLTIsCisgICAgMHgxLjg0NjllZTU4NDY5ZjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAtMHgxLjcyY2M4YWNhZDc0YTA1NTRjZWFiOGY2NzNkOGZkOWMxcC0yLAorICAgIC0weDEuODQ2OWVlNTg0NjlmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIDB4MS45MTE2ZDE4ZDBmODk3YThjZDAzMjkxNzVjMTc2MTA1NnAtMiwKKyAgICAweDEuYTdiOTYxMWE3Yjk2M3AtMgorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIC0weDEuOTExNmQxOGQwZjg5N2E4Y2QwMzI5MTc1YzE3NjEwNTZwLTIsCisgICAgLTB4MS5hN2I5NjExYTdiOTYzcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzEzCisgICAgMHgxLmFlOTI4MDM5NTZiZjhmZTc5NjBmZTA0N2M1OGZlMmNlcC0yLAorICAgIDB4MS5jYjA4ZDNkY2IwOGQ2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgLTB4MS5hZTkyODAzOTU2YmY4ZmU3OTYwZmUwNDdjNThmZTJjZXAtMiwKKyAgICAtMHgxLmNiMDhkM2RjYjA4ZDZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAweDEuY2IzNjg1ZDg5ZjlkOWY5ZjRlZDM4NDQyYjYxYmIyYThwLTIsCisgICAgMHgxLmVlNTg0NjllZTU4NDlwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAtMHgxLmNiMzY4NWQ4OWY5ZDlmOWY0ZWQzODQ0MmI2MWJiMmE4cC0yLAorICAgIC0weDEuZWU1ODQ2OWVlNTg0OXAtMgorICB9LAorICB7IC8vIEVudHJ5IDMxNworICAgIDB4MS5lNmZiNTJjMzA5ODBlNWY0OTVkMTJiNjQ3Nzg0NTYzN3AtMiwKKyAgICAweDEuMDhkM2RjYjA4ZDNkZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIC0weDEuZTZmYjUyYzMwOTgwZTVmNDk1ZDEyYjY0Nzc4NDU2MzdwLTIsCisgICAgLTB4MS4wOGQzZGNiMDhkM2RlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgMHgxLjAwZWQ2OTM0MTIyNTQ5MWZhOTRlYThkZDJkMWMwNGFkcC0xLAorICAgIDB4MS4xYTdiOTYxMWE3Yjk3cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgLTB4MS4wMGVkNjkzNDEyMjU0OTFmYTk0ZWE4ZGQyZDFjMDRhZHAtMSwKKyAgICAtMHgxLjFhN2I5NjExYTdiOTdwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAweDEuMGRlODMwNWU0Y2MzZDUwMDFlNTIzOWU2M2I4ZGJlZDVwLTEsCisgICAgMHgxLjJjMjM0ZjcyYzIzNTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAtMHgxLjBkZTgzMDVlNGNjM2Q1MDAxZTUyMzllNjNiOGRiZWQ1cC0xLAorICAgIC0weDEuMmMyMzRmNzJjMjM1MHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIDB4MS4xYTZjNWRlZDhmMTYyYWFkYmIwMTQ5YjQ5OGNiMWIyNHAtMSwKKyAgICAweDEuM2RjYjA4ZDNkY2IwOXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIC0weDEuMWE2YzVkZWQ4ZjE2MmFhZGJiMDE0OWI0OThjYjFiMjRwLTEsCisgICAgLTB4MS4zZGNiMDhkM2RjYjA5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI1CisgICAgMHgxLjI2NzhmOTM3Nzc0MzlkNWQ5YWQ5MDRiYTA2M2VjYjVlcC0xLAorICAgIDB4MS40ZjcyYzIzNGY3MmMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgLTB4MS4yNjc4ZjkzNzc3NDM5ZDVkOWFkOTA0YmEwNjNlY2I1ZXAtMSwKKyAgICAtMHgxLjRmNzJjMjM0ZjcyYzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEuMzIwZGE3YzA5MWVmNDU1MmFlNzU1YzY0M2EzYjQ5MzNwLTEsCisgICAgMHgxLjYxMWE3Yjk2MTFhN2JwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAtMHgxLjMyMGRhN2MwOTFlZjQ1NTJhZTc1NWM2NDNhM2I0OTMzcC0xLAorICAgIC0weDEuNjExYTdiOTYxMWE3YnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIDB4MS4zZDJhYTIyMDQwYmRkNjgyMzg0MDIyMDRiOThjNGU5M3AtMSwKKyAgICAweDEuNzJjMjM0ZjcyYzIzNHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIC0weDEuM2QyYWEyMjA0MGJkZDY4MjM4NDAyMjA0Yjk4YzRlOTNwLTEsCisgICAgLTB4MS43MmMyMzRmNzJjMjM0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzMxCisgICAgMHgxLjQ3ZDBhODJhY2I0MjY3ZDMwMWE1ZGZmYjNjOWE0MGIycC0xLAorICAgIDB4MS44NDY5ZWU1ODQ2OWVkcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzMyCisgICAgLTB4MS40N2QwYTgyYWNiNDI2N2QzMDFhNWRmZmIzYzlhNDBiMnAtMSwKKyAgICAtMHgxLjg0NjllZTU4NDY5ZWRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAweDEuNTIwMGY0YTYwMmIyZWViYjJjMmQ5YjRkMDMxZGEyYjNwLTEsCisgICAgMHgxLjk2MTFhN2I5NjExYTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzQKKyAgICAtMHgxLjUyMDBmNGE2MDJiMmVlYmIyYzJkOWI0ZDAzMWRhMmIzcC0xLAorICAgIC0weDEuOTYxMWE3Yjk2MTFhNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzNQorICAgIDB4MS41YmJkMzBjNzE4MzAyMWRkNGFlMWFmOTRlZmViNzM1MXAtMSwKKyAgICAweDEuYTdiOTYxMWE3Yjk1ZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIC0weDEuNWJiZDMwYzcxODMwMjFkZDRhZTFhZjk0ZWZlYjczNTFwLTEsCisgICAgLTB4MS5hN2I5NjExYTdiOTVmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM3CisgICAgMHgxLjY1MDc2N2IxOWJhYjVjOWE4NTExNWQ1OWMxYmJiYmVjcC0xLAorICAgIDB4MS5iOTYxMWE3Yjk2MTE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzM4CisgICAgLTB4MS42NTA3NjdiMTliYWI1YzlhODUxMTVkNTljMWJiYmJlY3AtMSwKKyAgICAtMHgxLmI5NjExYTdiOTYxMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzkKKyAgICAweDEuNmRlMWZhMjg2OGI3ZGEwMTQ1MmQxZTQ3MmQwMjIzZDlwLTEsCisgICAgMHgxLmNiMDhkM2RjYjA4ZDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDAKKyAgICAtMHgxLjZkZTFmYTI4NjhiN2RhMDE0NTJkMWU0NzJkMDIyM2Q5cC0xLAorICAgIC0weDEuY2IwOGQzZGNiMDhkMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0MQorICAgIDB4MS43NjRmOTI5OWRmMjAxMTRkMDI2ZWJkMjQ0YjRlOTA0YXAtMSwKKyAgICAweDEuZGNiMDhkM2RjYjA4YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIC0weDEuNzY0ZjkyOTlkZjIwMTE0ZDAyNmViZDI0NGI0ZTkwNGFwLTEsCisgICAgLTB4MS5kY2IwOGQzZGNiMDhhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQzCisgICAgMHgxLjdlNTMxOWE5NmI2NjM5ZWIwYWRlN2ZhMDI4ZWUwZDNicC0xLAorICAgIDB4MS5lZTU4NDY5ZWU1ODQzcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzQ0CisgICAgLTB4MS43ZTUzMTlhOTZiNjYzOWViMGFkZTdmYTAyOGVlMGQzYnAtMSwKKyAgICAtMHgxLmVlNTg0NjllZTU4NDNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAweDEuODVlZmFiNTE0ZjM5MmE3Nzg3MWM0OTg3N2NjZGJmYmVwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDYKKyAgICAtMHgxLjg1ZWZhYjUxNGYzOTJhNzc4NzFjNDk4NzdjY2RiZmJlcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM0NworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBkNzk0MzVlNTBkNzlwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzUwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBkNzk0MzVlNTBkNzlwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzUxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4xYWYyODZiY2ExYWYycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4xYWYyODZiY2ExYWYycDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM1MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMjg2YmNhMWFmMjg2YnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMjg2YmNhMWFmMjg2YnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjM1ZTUwZDc5NDM1ZTRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzU2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjM1ZTUwZDc5NDM1ZTRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzU3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS40MzVlNTBkNzk0MzVkcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS40MzVlNTBkNzk0MzVkcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM1OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNTBkNzk0MzVlNTBkNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNTBkNzk0MzVlNTBkNnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjVlNTBkNzk0MzVlNGZwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzYyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjVlNTBkNzk0MzVlNGZwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS42YmNhMWFmMjg2YmM4cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS42YmNhMWFmMjg2YmM4cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM2NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNzk0MzVlNTBkNzk0MXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNzk0MzVlNTBkNzk0MXAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNjcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjg2YmNhMWFmMjg2YmFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzY4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjg2YmNhMWFmMjg2YmFwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS45NDM1ZTUwZDc5NDMzcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS45NDM1ZTUwZDc5NDMzcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM3MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuYTFhZjI4NmJjYTFhY3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuYTFhZjI4NmJjYTFhY3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmFmMjg2YmNhMWFmMjVwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzc0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmFmMjg2YmNhMWFmMjVwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5iY2ExYWYyODZiYzllcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5iY2ExYWYyODZiYzllcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM3NworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuY2ExYWYyODZiY2ExN3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuY2ExYWYyODZiY2ExN3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNzkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmQ3OTQzNWU1MGQ3OTBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzgwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmQ3OTQzNWU1MGQ3OTBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5lNTBkNzk0MzVlNTA5cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5lNTBkNzk0MzVlNTA5cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDM4MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZjI4NmJjYTFhZjI4MnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZjI4NmJjYTFhZjI4MnAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzODUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzg2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmJwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDM4OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMGQ3OTQzNWU1MGQ3OXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMGQ3OTQzNWU1MGQ3OXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjFhZjI4NmJjYTFhZjJwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMzkyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjFhZjI4NmJjYTFhZjJwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMzkzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4yODZiY2ExYWYyODZicDIwMAorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4yODZiY2ExYWYyODZicDIwMAorICB9LAorICB7IC8vIEVudHJ5IDM5NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMzVlNTBkNzk0MzVlNHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMzVlNTBkNzk0MzVlNHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjQzNWU1MGQ3OTQzNWRwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMzk4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjQzNWU1MGQ3OTQzNWRwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS41MGQ3OTQzNWU1MGQ2cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQwMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS41MGQ3OTQzNWU1MGQ2cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNWU1MGQ3OTQzNWU0ZnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNWU1MGQ3OTQzNWU0ZnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjZiY2ExYWYyODZiYzhwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDA0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjZiY2ExYWYyODZiYzhwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDA1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS43OTQzNWU1MGQ3OTQxcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQwNgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS43OTQzNWU1MGQ3OTQxcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQwNworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuODZiY2ExYWYyODZiYXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuODZiY2ExYWYyODZiYXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjk0MzVlNTBkNzk0MzNwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDEwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjk0MzVlNTBkNzk0MzNwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDExCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5hMWFmMjg2YmNhMWFjcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQxMgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5hMWFmMjg2YmNhMWFjcDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuYWYyODZiY2ExYWYyNXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuYWYyODZiY2ExYWYyNXAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmJjYTFhZjI4NmJjOWVwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDE2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmJjYTFhZjI4NmJjOWVwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDE3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5jYTFhZjI4NmJjYTE3cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQxOAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5jYTFhZjI4NmJjYTE3cDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQxOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZDc5NDM1ZTUwZDc5MHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZDc5NDM1ZTUwZDc5MHAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmU1MGQ3OTQzNWU1MDlwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDIyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmU1MGQ3OTQzNWU1MDlwMjAwCisgIH0sCisgIHsgLy8gRW50cnkgNDIzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mMjg2YmNhMWFmMjgycDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQyNAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mMjg2YmNhMWFmMjgycDIwMAorICB9LAorICB7IC8vIEVudHJ5IDQyNQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmYnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmYnAyMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MjkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBkNzk0MzVlNTBkNzlwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wZDc5NDM1ZTUwZDc5cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjFhZjI4NmJjYTFhZjJwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQzMgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4xYWYyODZiY2ExYWYycDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjI4NmJjYTFhZjI4NmJwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4yODZiY2ExYWYyODZicDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjM1ZTUwZDc5NDM1ZTRwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4zNWU1MGQ3OTQzNWU0cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjQzNWU1MGQ3OTQzNWRwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQzOAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS40MzVlNTBkNzk0MzVkcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjUwZDc5NDM1ZTUwZDZwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS41MGQ3OTQzNWU1MGQ2cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjVlNTBkNzk0MzVlNGZwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS41ZTUwZDc5NDM1ZTRmcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjZiY2ExYWYyODZiYzhwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS42YmNhMWFmMjg2YmM4cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjc5NDM1ZTUwZDc5NDFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS43OTQzNWU1MGQ3OTQxcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjg2YmNhMWFmMjg2YmFwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ0OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS44NmJjYTFhZjI4NmJhcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjk0MzVlNTBkNzk0MzNwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS45NDM1ZTUwZDc5NDMzcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmExYWYyODZiY2ExYWNwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5hMWFmMjg2YmNhMWFjcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmFmMjg2YmNhMWFmMjVwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5hZjI4NmJjYTFhZjI1cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmJjYTFhZjI4NmJjOWVwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5iY2ExYWYyODZiYzllcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmNhMWFmMjg2YmNhMTdwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ1OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5jYTFhZjI4NmJjYTE3cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmQ3OTQzNWU1MGQ3OTBwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5kNzk0MzVlNTBkNzkwcDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmU1MGQ3OTQzNWU1MDlwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5lNTBkNzk0MzVlNTA5cDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmYyODZiY2ExYWYyODJwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mMjg2YmNhMWFmMjgycDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmJwMTAwMAorICB9LAorICB7IC8vIEVudHJ5IDQ2NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZicDEwMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjcKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ2OQorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDQ3MQorICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNDcyCisgICAgMHgxLmQ5MzUzZDc1NjhhZjI5YmJkZWI2NTAyNDkwZWE5MWY1cC0yLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDczCisgICAgLTB4MS5kOTM1M2Q3NTY4YWYyOWJiZGViNjUwMjQ5MGVhOTFmNXAtMiwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzQKKyAgICAweDEuZDkzNTNkNzU2OGFmMzY1MTI4ZWUyMWM2NWIwOGQzYTdwLTIsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzUKKyAgICAtMHgxLmQ5MzUzZDc1NjhhZjM2NTEyOGVlMjFjNjViMDhkM2E3cC0yLAorICAgIC0weDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NgorICAgIDB4MS5kOTM1M2Q3NTY4YWY0ZjdiYmQ1ZGM1MDllZWI5Yzg1NHAtMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3NworICAgIC0weDEuZDkzNTNkNzU2OGFmNGY3YmJkNWRjNTA5ZWViOWM4NTRwLTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgMHgxLmZmZmZmZmZmZmZmZmQ5Y2UwOWQ5YWMwMDc3MzM5ZmNjcC0yLAorICAgIDB4MS4xOTNlYTdhYWQwMzA5cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDc5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZkOWNlMDlkOWFjMDA3NzMzOWZjY3AtMiwKKyAgICAtMHgxLjE5M2VhN2FhZDAzMDlwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODAKKyAgICAweDEuZmZmZmZmZmZmZmZmZjFjZTA5ZDlhYzAwNzgwNTJmN2RwLTIsCisgICAgMHgxLjE5M2VhN2FhZDAzMGFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYxY2UwOWQ5YWMwMDc4MDUyZjdkcC0yLAorICAgIC0weDEuMTkzZWE3YWFkMDMwYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4MgorICAgIDB4MS4wMDAwMDAwMDAwMDAwNGU3MDRlY2Q2MDAzYzBiNWY5N3AtMSwKKyAgICAweDEuMTkzZWE3YWFkMDMwYnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ4MworICAgIC0weDEuMDAwMDAwMDAwMDAwMDRlNzA0ZWNkNjAwM2MwYjVmOTdwLTEsCisgICAgLTB4MS4xOTNlYTdhYWQwMzBicC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDg0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmE0MjJmODg3YTJkYjk4OTZicC0xLAorICAgIDB4MS41ZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmE0MjJmODg3YTJkYjk4OTZicC0xLAorICAgIC0weDEuNWZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNDg2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmE0MjJmODg3YTJkYzUwNTBjcC0xLAorICAgIDB4MS42cDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmE0MjJmODg3YTJkYzUwNTBjcC0xLAorICAgIC0weDEuNnA0CisgIH0sCisgIHsgLy8gRW50cnkgNDg4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmE0MjJmODg3YTJkZDA4MGFkcC0xLAorICAgIDB4MS42MDAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmE0MjJmODg3YTJkZDA4MGFkcC0xLAorICAgIC0weDEuNjAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgLTB4MS4zMzMzMzMzMzMzMzMzYjRkMTIwZmJkZjViZDYyOTA1OXAtMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAweDEuMzMzMzMzMzMzMzMzM2I0ZDEyMGZiZGY1YmQ2MjkwNTlwLTEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTIKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzMxMGZhMTZiZTZlYjgwMGU4YWMxcC0xLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ5MworICAgIDB4MS4zMzMzMzMzMzMzMzMzMTBmYTE2YmU2ZWI4MDBlOGFjMXAtMSwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ5NAorICAgIC0weDEuMzMzMzMzMzMzMzMzMjZkMjMwYzgwZmUxNDI1ODM3NTVwLTEsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDk1CisgICAgMHgxLjMzMzMzMzMzMzMzMzI2ZDIzMGM4MGZlMTQyNTgzNzU1cC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgLTB4MS41NTU1NTU1NTU1NTU2MDk1YjU4N2E0NDcxNTYwYTQwYnAtMiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTcKKyAgICAweDEuNTU1NTU1NTU1NTU1NjA5NWI1ODdhNDQ3MTU2MGE0MGJwLTIsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTgKKyAgICAtMHgxLjU1NTU1NTU1NTU1NTUyNWNkMWY5NmI2Mzg3MzJjYWY5cC0yLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ5OQorICAgIDB4MS41NTU1NTU1NTU1NTU1MjVjZDFmOTZiNjM4NzMyY2FmOXAtMiwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDUwMAorICAgIC0weDEuNTU1NTU1NTU1NTU1NDQyM2VlNmIzMjdmZjhkZjA0ZGRwLTIsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTAxCisgICAgMHgxLjU1NTU1NTU1NTU1NTQ0MjNlZTZiMzI3ZmY4ZGYwNGRkcC0yLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgLTB4MS41ZjYxOTk4MGM0MzM3YmJkZDhlOGMyMDY2YmI1MWViN3AtMywKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICAweDEuNWY2MTk5ODBjNDMzN2JiZGQ4ZThjMjA2NmJiNTFlYjdwLTMsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDQKKyAgICAtMHgxLjVmNjE5OTgwYzQzMzZjMzY2YzFhY2IzOGQ0ZjFiMmJkcC0zLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtMworICB9LAorICB7IC8vIEVudHJ5IDUwNQorICAgIDB4MS41ZjYxOTk4MGM0MzM2YzM2NmMxYWNiMzhkNGYxYjJiZHAtMywKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtMworICB9LAorICB7IC8vIEVudHJ5IDUwNgorICAgIC0weDEuNWY2MTk5ODBjNDMzNWNhZWZmNGNkNDZiM2UyMzllNzdwLTMsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTA3CisgICAgMHgxLjVmNjE5OTgwYzQzMzVjYWVmZjRjZDQ2YjNlMjM5ZTc3cC0zLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgLTB4MS42MjAxODVlNTYyMTQxNGM2ODIzYzcwMWY0ZThkODNmNXAtNCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDkKKyAgICAweDEuNjIwMTg1ZTU2MjE0MTRjNjgyM2M3MDFmNGU4ZDgzZjVwLTQsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTAKKyAgICAtMHgxLjYyMDE4NWU1NjIxNDA0ZTUxYWJmZDUyYTlmYjM1NTgycC00LAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDUxMQorICAgIDB4MS42MjAxODVlNTYyMTQwNGU1MWFiZmQ1MmE5ZmIzNTU4MnAtNCwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDUxMgorICAgIC0weDEuNjIwMTg1ZTU2MjEzZjUwM2IzNDMzYTM1ZjBkNjY4NTdwLTQsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTEzCisgICAgMHgxLjYyMDE4NWU1NjIxM2Y1MDNiMzQzM2EzNWYwZDY2ODU3cC00LAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTE0CisgICAgLTB4MS42MmFiNjRjODE2MmE5MWZiYzRkM2RhNzcxOTRiMzEzNXAtNSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTUKKyAgICAweDEuNjJhYjY0YzgxNjJhOTFmYmM0ZDNkYTc3MTk0YjMxMzVwLTUsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTYKKyAgICAtMHgxLjYyYWI2NGM4MTYyYTgyMDM3MjRkYjA1YmJhNmJmMWYxcC01LAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDUxNworICAgIDB4MS42MmFiNjRjODE2MmE4MjAzNzI0ZGIwNWJiYTZiZjFmMXAtNSwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDUxOAorICAgIC0weDEuNjJhYjY0YzgxNjJhNzIwYjFmYzc4NjQwNWI4YzAxYWRwLTUsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTE5CisgICAgMHgxLjYyYWI2NGM4MTYyYTcyMGIxZmM3ODY0MDViOGMwMWFkcC01LAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTIwCisgICAgLTB4MS42MmQ1ZmIxOWYzOWQzMmRiNTQzZmViNTNjMGM4YWYzM3AtNiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjEKKyAgICAweDEuNjJkNWZiMTlmMzlkMzJkYjU0M2ZlYjUzYzBjOGFmMzNwLTYsCisgICAgMHgxLjYyZTQyZmVmYTM5ZjBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjIKKyAgICAtMHgxLjYyZDVmYjE5ZjM5ZDIyZGQ0MDE0NjhhMzU2MDJhMzlkcC02LAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDUyMworICAgIDB4MS42MmQ1ZmIxOWYzOWQyMmRkNDAxNDY4YTM1NjAyYTM5ZHAtNiwKKyAgICAweDEuNjJlNDJmZWZhMzllZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDUyNAorICAgIC0weDEuNjJkNWZiMTlmMzlkMTJkZjJiZThlNWYyZWIzYzZiYjJwLTYsCisgICAgLTB4MS42MmU0MmZlZmEzOWVlcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTI1CisgICAgMHgxLjYyZDVmYjE5ZjM5ZDEyZGYyYmU4ZTVmMmViM2M2YmIycC02LAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTI2CisgICAgMHgxLjYyZDVmYjE5ZjM5ZDEyZGYyYmU4ZTVmMmViM2M2YmIycC02LAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTI3CisgICAgLTB4MS42MmQ1ZmIxOWYzOWQxMmRmMmJlOGU1ZjJlYjNjNmJiMnAtNiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjgKKyAgICAweDEuNjJkNWZiMTlmMzlkMjJkZDQwMTQ2OGEzNTYwMmEzOWRwLTYsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjkKKyAgICAtMHgxLjYyZDVmYjE5ZjM5ZDIyZGQ0MDE0NjhhMzU2MDJhMzlkcC02LAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDUzMAorICAgIDB4MS42MmQ1ZmIxOWYzOWQzMmRiNTQzZmViNTNjMGM4YWYzM3AtNiwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDUzMQorICAgIC0weDEuNjJkNWZiMTlmMzlkMzJkYjU0M2ZlYjUzYzBjOGFmMzNwLTYsCisgICAgLTB4MS42MmU0MmZlZmEzOWYwcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTMyCisgICAgMHgxLjYyYWI2NGM4MTYyYTcyMGIxZmM3ODY0MDViOGMwMWFkcC01LAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTMzCisgICAgLTB4MS42MmFiNjRjODE2MmE3MjBiMWZjNzg2NDA1YjhjMDFhZHAtNSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzQKKyAgICAweDEuNjJhYjY0YzgxNjJhODIwMzcyNGRiMDViYmE2YmYxZjFwLTUsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAtMHgxLjYyYWI2NGM4MTYyYTgyMDM3MjRkYjA1YmJhNmJmMWYxcC01LAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDUzNgorICAgIDB4MS42MmFiNjRjODE2MmE5MWZiYzRkM2RhNzcxOTRiMzEzNXAtNSwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDUzNworICAgIC0weDEuNjJhYjY0YzgxNjJhOTFmYmM0ZDNkYTc3MTk0YjMxMzVwLTUsCisgICAgLTB4MS42MmU0MmZlZmEzOWYwcC01CisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgMHgxLjYyMDE4NWU1NjIxM2Y1MDNiMzQzM2EzNWYwZDY2ODU3cC00LAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTM5CisgICAgLTB4MS42MjAxODVlNTYyMTNmNTAzYjM0MzNhMzVmMGQ2Njg1N3AtNCwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDAKKyAgICAweDEuNjIwMTg1ZTU2MjE0MDRlNTFhYmZkNTJhOWZiMzU1ODJwLTQsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDEKKyAgICAtMHgxLjYyMDE4NWU1NjIxNDA0ZTUxYWJmZDUyYTlmYjM1NTgycC00LAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDU0MgorICAgIDB4MS42MjAxODVlNTYyMTQxNGM2ODIzYzcwMWY0ZThkODNmNXAtNCwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDU0MworICAgIC0weDEuNjIwMTg1ZTU2MjE0MTRjNjgyM2M3MDFmNGU4ZDgzZjVwLTQsCisgICAgLTB4MS42MmU0MmZlZmEzOWYwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNTQ0CisgICAgMHgxLjVmNjE5OTgwYzQzMzVjYWVmZjRjZDQ2YjNlMjM5ZTc3cC0zLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTQ1CisgICAgLTB4MS41ZjYxOTk4MGM0MzM1Y2FlZmY0Y2Q0NmIzZTIzOWU3N3AtMywKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDYKKyAgICAweDEuNWY2MTk5ODBjNDMzNmMzNjZjMWFjYjM4ZDRmMWIyYmRwLTMsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDcKKyAgICAtMHgxLjVmNjE5OTgwYzQzMzZjMzY2YzFhY2IzOGQ0ZjFiMmJkcC0zLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtMworICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIDB4MS41ZjYxOTk4MGM0MzM3YmJkZDhlOGMyMDY2YmI1MWViN3AtMywKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtMworICB9LAorICB7IC8vIEVudHJ5IDU0OQorICAgIC0weDEuNWY2MTk5ODBjNDMzN2JiZGQ4ZThjMjA2NmJiNTFlYjdwLTMsCisgICAgLTB4MS42MmU0MmZlZmEzOWYwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNTUwCisgICAgMHgxLjU1NTU1NTU1NTU1NTQ0MjNlZTZiMzI3ZmY4ZGYwNGRkcC0yLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTUxCisgICAgLTB4MS41NTU1NTU1NTU1NTU0NDIzZWU2YjMyN2ZmOGRmMDRkZHAtMiwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTIKKyAgICAweDEuNTU1NTU1NTU1NTU1NTI1Y2QxZjk2YjYzODczMmNhZjlwLTIsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTMKKyAgICAtMHgxLjU1NTU1NTU1NTU1NTUyNWNkMWY5NmI2Mzg3MzJjYWY5cC0yLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDU1NAorICAgIDB4MS41NTU1NTU1NTU1NTU2MDk1YjU4N2E0NDcxNTYwYTQwYnAtMiwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDU1NQorICAgIC0weDEuNTU1NTU1NTU1NTU1NjA5NWI1ODdhNDQ3MTU2MGE0MGJwLTIsCisgICAgLTB4MS42MmU0MmZlZmEzOWYwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNTU2CisgICAgMHgxLjMzMzMzMzMzMzMzMzI2ZDIzMGM4MGZlMTQyNTgzNzU1cC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTU3CisgICAgLTB4MS4zMzMzMzMzMzMzMzMyNmQyMzBjODBmZTE0MjU4Mzc1NXAtMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTgKKyAgICAweDEuMzMzMzMzMzMzMzMzMzEwZmExNmJlNmViODAwZThhYzFwLTEsCisgICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTkKKyAgICAtMHgxLjMzMzMzMzMzMzMzMzMxMGZhMTZiZTZlYjgwMGU4YWMxcC0xLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU2MAorICAgIDB4MS4zMzMzMzMzMzMzMzMzYjRkMTIwZmJkZjViZDYyOTA1OXAtMSwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIC0weDEuMzMzMzMzMzMzMzMzM2I0ZDEyMGZiZGY1YmQ2MjkwNTlwLTEsCisgICAgLTB4MS42MmU0MmZlZmEzOWYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTYyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNjJlNDJmZWZhMzllZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNTY0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWVmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNjJlNDJmZWZhMzllZnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTY2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS42MmU0MmZlZmEzOWYwcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNjJlNDJmZWZhMzlmMHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTY4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjcyZTQyZmVmYTM5ZjBwOQorICB9LAorICB7IC8vIEVudHJ5IDU2OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNzJlNDJmZWZhMzlmMHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTcwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjcyZTQyZmVmYTM5ZWZwOQorICB9LAorICB7IC8vIEVudHJ5IDU3MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNzJlNDJmZWZhMzllZnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTcyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjcyZTQyZmVmYTM5ZWVwOQorICB9LAorICB7IC8vIEVudHJ5IDU3MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNzJlNDJmZWZhMzllZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNTc0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS42MzNjZThmYjlmODdjcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNjMzY2U4ZmI5Zjg3Y3A5CisgIH0sCisgIHsgLy8gRW50cnkgNTc2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS42MzNjZThmYjlmODdkcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNjMzY2U4ZmI5Zjg3ZHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTc4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS42MzNjZThmYjlmODdlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NzkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNjMzY2U4ZmI5Zjg3ZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNTgwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwOQorICB9LAorICB7IC8vIEVudHJ5IDU4MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNjJlNDJmZWZhMzlmMHA5CisgIH0sCisgIHsgLy8gRW50cnkgNTgyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWZwOQorICB9LAorICB7IC8vIEVudHJ5IDU4MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNjJlNDJmZWZhMzllZnA5CisgIH0sCisgIHsgLy8gRW50cnkgNTg0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjYyZTQyZmVmYTM5ZWVwOQorICB9LAorICB7IC8vIEVudHJ5IDU4NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNjJlNDJmZWZhMzllZXA5CisgIH0sCisgIHsgLy8gRW50cnkgNTg2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDYyCisgIH0sCisgIHsgLy8gRW50cnkgNTg3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODgKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA1ODkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHA2MworICB9LAorICB7IC8vIEVudHJ5IDU5MAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2MworICB9LAorICB7IC8vIEVudHJ5IDU5MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDYzCisgIH0sCisgIHsgLy8gRW50cnkgNTkyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI2CisgIH0sCisgIHsgLy8gRW50cnkgNTkzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OTUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAyNworICB9LAorICB7IC8vIEVudHJ5IDU5NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyNworICB9LAorICB7IC8vIEVudHJ5IDU5NworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDI3CisgIH0sCisgIHsgLy8gRW50cnkgNTk4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIzCisgIH0sCisgIHsgLy8gRW50cnkgNTk5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjBwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMHAyNAorICB9LAorICB7IC8vIEVudHJ5IDYwMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAyNAorICB9LAorICB7IC8vIEVudHJ5IDYwMworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDI0CisgIH0sCisgIHsgLy8gRW50cnkgNjA0CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjZDJjNTcxOWJjcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjZDJjNTcxOWJjcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgNjA2CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjZDJjNTcxOWJjcC0xLAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjZDJjNTcxOWJjcC0xLAorICAgIC0weDEuMHA1CisgIH0sCisgIHsgLy8gRW50cnkgNjA4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjZDJjNTcxOWJjcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MDkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjZDJjNTcxOWJjcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1CisgIH0sCisgIHsgLy8gRW50cnkgNjEwCisgICAgMHgxLmZmZmZmZmZmZmZmMWJkY2Q4NDRmNGRmMDgyNjE5ZDkycC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTEKKyAgICAtMHgxLmZmZmZmZmZmZmZmMWJkY2Q4NDRmNGRmMDgyNjE5ZDkycC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgNjEyCisgICAgMHgxLmZmZmZmZmZmZmZmMWJkY2Q4NDRmNGRmZWM0OTQxOTQzcC0xLAorICAgIDB4MS4wcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTMKKyAgICAtMHgxLmZmZmZmZmZmZmZmMWJkY2Q4NDRmNGRmZWM0OTQxOTQzcC0xLAorICAgIC0weDEuMHA0CisgIH0sCisgIHsgLy8gRW50cnkgNjE0CisgICAgMHgxLmZmZmZmZmZmZmZmMWJkY2Q4NDRmNGUxYjQ4ZjkxMGE0cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTUKKyAgICAtMHgxLmZmZmZmZmZmZmZmMWJkY2Q4NDRmNGUxYjQ4ZjkxMGE0cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgNjE2CisgICAgMHgxLmZmZmZmODcyYTkxZjg2OTBlYTQ3YzFkMWJkMTA3ZDZlcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTcKKyAgICAtMHgxLmZmZmZmODcyYTkxZjg2OTBlYTQ3YzFkMWJkMTA3ZDZlcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgNjE4CisgICAgMHgxLmZmZmZmODcyYTkxZjg2OTBlZTBlNmQzYWQ4YWVlNDZicC0xLAorICAgIDB4MS4wcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MTkKKyAgICAtMHgxLmZmZmZmODcyYTkxZjg2OTBlZTBlNmQzYWQ4YWVlNDZicC0xLAorICAgIC0weDEuMHAzCisgIH0sCisgIHsgLy8gRW50cnkgNjIwCisgICAgMHgxLmZmZmZmODcyYTkxZjg2OTBmNTliYzQwZDBmZWJhY2JkcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjEKKyAgICAtMHgxLmZmZmZmODcyYTkxZjg2OTBmNTliYzQwZDBmZWJhY2JkcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgNjIyCisgICAgMHgxLmZmYTgxNzA4YTBiNDIxNTI1ZWM5OTcwOTI1Y2Q0MTU1cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjMKKyAgICAtMHgxLmZmYTgxNzA4YTBiNDIxNTI1ZWM5OTcwOTI1Y2Q0MTU1cC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgNjI0CisgICAgMHgxLmZmYTgxNzA4YTBiNDIxNjg1NzI0NmMxOWRjNjBhY2I4cC0xLAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjUKKyAgICAtMHgxLmZmYTgxNzA4YTBiNDIxNjg1NzI0NmMxOWRjNjBhY2I4cC0xLAorICAgIC0weDEuMHAyCisgIH0sCisgIHsgLy8gRW50cnkgNjI2CisgICAgMHgxLmZmYTgxNzA4YTBiNDIxOTQ0N2RhMTYzYjQ5NzcwYzBlcC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjcKKyAgICAtMHgxLmZmYTgxNzA4YTBiNDIxOTQ0N2RhMTYzYjQ5NzcwYzBlcC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyCisgIH0sCisgIHsgLy8gRW50cnkgNjI4CisgICAgMHgxLmVkOTUwNWUxYmMzZDNhZjBmZWFlMzY3ZGRlZGUzNTBlcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MjkKKyAgICAtMHgxLmVkOTUwNWUxYmMzZDNhZjBmZWFlMzY3ZGRlZGUzNTBlcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwCisgIH0sCisgIHsgLy8gRW50cnkgNjMwCisgICAgMHgxLmVkOTUwNWUxYmMzZDNkMzNjNDMyZmMzZTgyNTVjOGI1cC0xLAorICAgIDB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzEKKyAgICAtMHgxLmVkOTUwNWUxYmMzZDNkMzNjNDMyZmMzZTgyNTVjOGI1cC0xLAorICAgIC0weDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjMyCisgICAgMHgxLmVkOTUwNWUxYmMzZDQxYjk0ZjNjODdiZmM4NzNiNGE2cC0xLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzMKKyAgICAtMHgxLmVkOTUwNWUxYmMzZDQxYjk0ZjNjODdiZmM4NzNiNGE2cC0xLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxCisgIH0sCisgIHsgLy8gRW50cnkgNjM0CisgICAgMHgxLjg1ZWZhYjUxNGYzOTNlYTAyYzI3ZmM1MGIyY2JiZTY1cC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjM1CisgICAgLTB4MS44NWVmYWI1MTRmMzkzZWEwMmMyN2ZjNTBiMmNiYmU2NXAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzYKKyAgICAweDEuODVlZmFiNTE0ZjM5NDU1ODYzMmJlMjkzYzQyNzRmZTZwLTEsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDYzNworICAgIC0weDEuODVlZmFiNTE0ZjM5NDU1ODYzMmJlMjkzYzQyNzRmZTZwLTEsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MzgKKyAgICAweDEuODVlZmFiNTE0ZjM5NTJjOGQxMzNhZjE5ZTVlOGNkZDZwLTEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDYzOQorICAgIC0weDEuODVlZmFiNTE0ZjM5NTJjOGQxMzNhZjE5ZTVlOGNkZDZwLTEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDAKKyAgICAweDEuZDkzNTNkNzU2OGFmMjliYmRlYjY1MDI0OTBlYTkxZjVwLTIsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDEKKyAgICAtMHgxLmQ5MzUzZDc1NjhhZjI5YmJkZWI2NTAyNDkwZWE5MWY1cC0yLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDY0MgorICAgIDB4MS5kOTM1M2Q3NTY4YWYzNjUxMjhlZTIxYzY1YjA4ZDNhN3AtMiwKKyAgICAweDEuMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDY0MworICAgIC0weDEuZDkzNTNkNzU2OGFmMzY1MTI4ZWUyMWM2NWIwOGQzYTdwLTIsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQ0CisgICAgMHgxLmQ5MzUzZDc1NjhhZjRmN2JiZDVkYzUwOWVlYjljODU0cC0yLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjQ1CisgICAgLTB4MS5kOTM1M2Q3NTY4YWY0ZjdiYmQ1ZGM1MDllZWI5Yzg1NHAtMiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDYKKyAgICAweDEuZjU5N2VhNjlhMWM4NTAwOTBiZDQ4Nzc5MTFhZTk5NTZwLTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NDcKKyAgICAtMHgxLmY1OTdlYTY5YTFjODUwMDkwYmQ0ODc3OTExYWU5OTU2cC0zLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMworICB9LAorICB7IC8vIEVudHJ5IDY0OAorICAgIDB4MS5mNTk3ZWE2OWExYzg1ZjEzNThkNzFkODQ3MjljODBjOHAtMywKKyAgICAweDEuMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDY0OQorICAgIC0weDEuZjU5N2VhNjlhMWM4NWYxMzU4ZDcxZDg0NzI5YzgwYzhwLTMsCisgICAgLTB4MS4wcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjUwCisgICAgMHgxLmY1OTdlYTY5YTFjODdkMjdmMmRjNDk5YjM0NGMxYjhjcC0zLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNjUxCisgICAgLTB4MS5mNTk3ZWE2OWExYzg3ZDI3ZjJkYzQ5OWIzNDRjMWI4Y3AtMywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTIKKyAgICAweDEuZmQ1OTkyYmM0YjgzNDAwMDA2M2ZkNjcxZWNkNWViZWVwLTQsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTMKKyAgICAtMHgxLmZkNTk5MmJjNGI4MzQwMDAwNjNmZDY3MWVjZDVlYmVlcC00LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNAorICB9LAorICB7IC8vIEVudHJ5IDY1NAorICAgIDB4MS5mZDU5OTJiYzRiODM0ZmMwYWY2YWM4ZWZmN2Q4MTA0MHAtNCwKKyAgICAweDEuMHAtMworICB9LAorICB7IC8vIEVudHJ5IDY1NQorICAgIC0weDEuZmQ1OTkyYmM0YjgzNGZjMGFmNmFjOGVmZjdkODEwNDBwLTQsCisgICAgLTB4MS4wcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjU2CisgICAgMHgxLmZkNTk5MmJjNGI4MzZmNDIwMWMwYWRlYzBkZDA5ODBkcC00LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNjU3CisgICAgLTB4MS5mZDU5OTJiYzRiODM2ZjQyMDFjMGFkZWMwZGQwOTgwZHAtNCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTgKKyAgICAweDEuZmY1NTk5N2UwMzBkNjA2OTJhYjQ4N2M3ZDIyMDEzZjZwLTUsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NTkKKyAgICAtMHgxLmZmNTU5OTdlMDMwZDYwNjkyYWI0ODdjN2QyMjAxM2Y2cC01LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNQorICB9LAorICB7IC8vIEVudHJ5IDY2MAorICAgIDB4MS5mZjU1OTk3ZTAzMGQ3MDU5MzU1OTJhMzY2YThhNjZkNHAtNSwKKyAgICAweDEuMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDY2MQorICAgIC0weDEuZmY1NTk5N2UwMzBkNzA1OTM1NTkyYTM2NmE4YTY2ZDRwLTUsCisgICAgLTB4MS4wcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjYyCisgICAgMHgxLmZmNTU5OTdlMDMwZDkwMzk0YWEyNmYxMzliNWMxMDhlcC01LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC00CisgIH0sCisgIHsgLy8gRW50cnkgNjYzCisgICAgLTB4MS5mZjU1OTk3ZTAzMGQ5MDM5NGFhMjZmMTM5YjVjMTA4ZXAtNSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjQKKyAgICAweDEuZmZkNTU5OTkyYjFkZDI4NzA1NTE4NGI3ZDQ2NDAyZGFwLTYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NjUKKyAgICAtMHgxLmZmZDU1OTk5MmIxZGQyODcwNTUxODRiN2Q0NjQwMmRhcC02LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNgorICB9LAorICB7IC8vIEVudHJ5IDY2NgorICAgIDB4MS5mZmQ1NTk5OTJiMWRlMjgzMDVmYzE3MzgyMjA1MzkyZXAtNiwKKyAgICAweDEuMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDY2NworICAgIC0weDEuZmZkNTU5OTkyYjFkZTI4MzA1ZmMxNzM4MjIwNTM5MmVwLTYsCisgICAgLTB4MS4wcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjY4CisgICAgMHgxLmZmZDU1OTk5MmIxZTAyN2IwNzUxM2MzOGJkNDZlNjE2cC02LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01CisgIH0sCisgIHsgLy8gRW50cnkgNjY5CisgICAgLTB4MS5mZmQ1NTk5OTJiMWUwMjdiMDc1MTNjMzhiZDQ2ZTYxNnAtNiwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzAKKyAgICAweDEuZmZmNTU1OTk5N2RmNzkyYjExMWRhZDBlNGMzNmExZWZwLTcsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzEKKyAgICAtMHgxLmZmZjU1NTk5OTdkZjc5MmIxMTFkYWQwZTRjMzZhMWVmcC03LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNworICB9LAorICB7IC8vIEVudHJ5IDY3MgorICAgIDB4MS5mZmY1NTU5OTk3ZGY4OTJhMTEyODU3NTg0M2ZjMGQ1MnAtNywKKyAgICAweDEuMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDY3MworICAgIC0weDEuZmZmNTU1OTk5N2RmODkyYTExMjg1NzU4NDNmYzBkNTJwLTcsCisgICAgLTB4MS4wcC02CisgIH0sCisgIHsgLy8gRW50cnkgNjc0CisgICAgMHgxLmZmZjU1NTk5OTdkZmE5MjgxMTNkYWJlYzMzODZiNDFicC03LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02CisgIH0sCisgIHsgLy8gRW50cnkgNjc1CisgICAgLTB4MS5mZmY1NTU5OTk3ZGZhOTI4MTEzZGFiZWMzMzg2YjQxYnAtNywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzYKKyAgICAweDEuZmZmZmZmZjU1NTU1NDU5OTk5OWE5N2RmN2RlZDQwMDVwLTE1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDY3NworICAgIC0weDEuZmZmZmZmZjU1NTU1NDU5OTk5OWE5N2RmN2RlZDQwMDVwLTE1LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NzgKKyAgICAweDEuZmZmZmZmZjU1NTU1NTU5OTk5OTk5N2RmN2RmN2VhYjBwLTE1LAorICAgIDB4MS4wcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDY3OQorICAgIC0weDEuZmZmZmZmZjU1NTU1NTU5OTk5OTk5N2RmN2RmN2VhYjBwLTE1LAorICAgIC0weDEuMHAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODAKKyAgICAweDEuZmZmZmZmZjU1NTU1NzU5OTk5OTc5N2RmN2UwZDQwMDVwLTE1LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xNAorICB9LAorICB7IC8vIEVudHJ5IDY4MQorICAgIC0weDEuZmZmZmZmZjU1NTU1NzU5OTk5OTc5N2RmN2UwZDQwMDVwLTE1LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODIKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmNTU1NTU1NTU1NTU1NjU1OTlwLTMxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDY4MworICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmNTU1NTU1NTU1NTU1NjU1OTlwLTMxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmNTU1NTU1NTU1NTU1NTU1OTlwLTMxLAorICAgIDB4MS4wcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDY4NQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmNTU1NTU1NTU1NTU1NTU1OTlwLTMxLAorICAgIC0weDEuMHAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODYKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmYWFhYWFhYWFhYWFhOWFhY2NwLTMwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zMAorICB9LAorICB7IC8vIEVudHJ5IDY4NworICAgIC0weDEuMDAwMDAwMDAwMDAwMGZmYWFhYWFhYWFhYWFhOWFhY2NwLTMwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA2ODgKKyAgICAweDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZDU1NTVwLTU2LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01NgorICB9LAorICB7IC8vIEVudHJ5IDY4OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmZmZDU1NTVwLTU2LAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDU1NTVwLTU2LAorICAgIDB4MS4wcC01NQorICB9LAorICB7IC8vIEVudHJ5IDY5MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDU1NTVwLTU2LAorICAgIC0weDEuMHAtNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTIKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZWFhYWFwLTU1LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01NQorICB9LAorICB7IC8vIEVudHJ5IDY5MworICAgIC0weDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZWFhYWFwLTU1LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNjk1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTYKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDY5NworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTgKKyAgICAweDEucDAsCisgICAgSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OTkKKyAgICAtMHgxLnAwLAorICAgIC1IVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDcwMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzAxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDcwMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzAzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDcwNAorICAgIDB4MS5mZTE3NWZhMjkyODBmYWFkYTZlMmM5M2VhNzA4Nzg5ZXAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCisgIH0sCisgIHsgLy8gRW50cnkgNzA1CisgICAgLTB4MS5mZTE3NWZhMjkyODBmYWFkYTZlMmM5M2VhNzA4Nzg5ZXAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMQorICB9LAorICB7IC8vIEVudHJ5IDcwNgorICAgIDB4MS5kNTk0ZmRhZTQ4MmI5OGE3MDNkNDczZDlhOGNkNDRjZHAtMSwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzA3CisgICAgLTB4MS5kNTk0ZmRhZTQ4MmI5OGE3MDNkNDczZDlhOGNkNDRjZHAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDcwOAorICAgIDB4MS44NWVmYWI1MTRmMzk1MmM4ZDEzM2FmMTllNWU4Y2RkNnAtMSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAwCisgIH0sCisgIHsgLy8gRW50cnkgNzA5CisgICAgLTB4MS44NWVmYWI1MTRmMzk1MmM4ZDEzM2FmMTllNWU4Y2RkNnAtMSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDcxMAorICAgIDB4MS44NWVmYWI1MTRmMzk0NTU4NjMyYmUyOTNjNDI3NGZlNnAtMSwKKyAgICAweDEuMHAwCisgIH0sCisgIHsgLy8gRW50cnkgNzExCisgICAgLTB4MS44NWVmYWI1MTRmMzk0NTU4NjMyYmUyOTNjNDI3NGZlNnAtMSwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDcxMgorICAgIDB4MS44NWVmYWI1MTRmMzkzZWEwMmMyN2ZjNTBiMmNiYmU2NXAtMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDcxMworICAgIC0weDEuODVlZmFiNTE0ZjM5M2VhMDJjMjdmYzUwYjJjYmJlNjVwLTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzE0CisgICAgMHgxLjRmYzQ0MWZhNmQ2ZDYxOTVjYTYzZjhlYjkyZDMxMmE0cC0xLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzE1CisgICAgLTB4MS40ZmM0NDFmYTZkNmQ2MTk1Y2E2M2Y4ZWI5MmQzMTJhNHAtMSwKKyAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTYKKyAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MTcKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDcxOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAweDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDcxOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgLTB4MS4wcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzIwCisgICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgNzIxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjIKKyAgICAweDEuZmZmZmZmZmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDcyNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTA3NCwKKyAgICAweDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDcyNQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwNzQsCisgICAgLTB4MS4wcC0xMDczCisgIH0sCisgIHsgLy8gRW50cnkgNzI2CisgICAgMC4wLAorICAgIDB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgNzI3CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MjgKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgNzI5CisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvdGFuaGZfaW50ZWxfZGF0YS5oIGIvdGVzdHMvbWF0aF9kYXRhL3RhbmhmX2ludGVsX2RhdGEuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZTFjZDlmCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvbWF0aF9kYXRhL3RhbmhmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDIyNzQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfdGFuaGZfaW50ZWxfZGF0YVtdID0geworICB7IC8vIEVudHJ5IDAKKyAgICAtMHgxLmZmNTcxN2ZmMDE1ZTI5MmIxOTdhYTZhNWJkOGVhZDExcC01LAorICAgIC0weDEuMDAwMGMwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDB4MS5mZjU3MTdmZjAxNWUyOTJiMTk3YWE2YTViZDhlYWQxMXAtNSwKKyAgICAweDEuMDAwMGMwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIC0weDEuZmZmZmZjMDAwMTg3MTEwNjAwOWI1YWFmNTVjNDkxMTZwLTEsCisgICAgLTB4MS4wYTJiMmFwMworICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAweDEuZmZmZmZjMDAwMTg3MTEwNjAwOWI1YWFmNTVjNDkxMTZwLTEsCisgICAgMHgxLjBhMmIyYXAzCisgIH0sCisgIHsgLy8gRW50cnkgNAorICAgIC0weDEuZjJjNGUwYzUzOTliZDRjMzI0OGE4ODU3MDU4NDkwMGRwLTIsCisgICAgLTB4MS4xMDdmYTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1CisgICAgMHgxLmYyYzRlMGM1Mzk5YmQ0YzMyNDhhODg1NzA1ODQ5MDBkcC0yLAorICAgIDB4MS4xMDdmYTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2CisgICAgLTB4MS45Njg0MjhmZmQ4NzJlY2I2YzlmZDhlNzBkZjhhOGJmZXAtMSwKKyAgICAtMHgxLjE1MDQ5OHAwCisgIH0sCisgIHsgLy8gRW50cnkgNworICAgIDB4MS45Njg0MjhmZmQ4NzJlY2I2YzlmZDhlNzBkZjhhOGJmZXAtMSwKKyAgICAweDEuMTUwNDk4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgLTB4MS5mZmZmZmRmZDdiN2U0NjM4M2NlOGZhZGM1ZjhlYTdlYXAtMSwKKyAgICAtMHgxLjE1MmUyZXAzCisgIH0sCisgIHsgLy8gRW50cnkgOQorICAgIDB4MS5mZmZmZmRmZDdiN2U0NjM4M2NlOGZhZGM1ZjhlYTdlYXAtMSwKKyAgICAweDEuMTUyZTJlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIC0weDEuMTg5NzUxZmY1NzhlZmZiZTVlYzBmNTNmYjgxNmM3MDVwLTQsCisgICAgLTB4MS4xOTA4cC00CisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEuMTg5NzUxZmY1NzhlZmZiZTVlYzBmNTNmYjgxNmM3MDVwLTQsCisgICAgMHgxLjE5MDhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMgorICAgIC0weDEuZmZmZmZlZjIwYjk5OGU1OTA0ZjkwMDQzMTAwY2Q1ZDNwLTEsCisgICAgLTB4MS4xZjgwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5mZmZmZmVmMjBiOTk4ZTU5MDRmOTAwNDMxMDBjZDVkM3AtMSwKKyAgICAweDEuMWY4MHAzCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAtMHgxLmZmZjlmNjAxYzcxYTUwZWE4MDQyYjZlNTM1ZDk5Njc2cC0xLAorICAgIC0weDEuNTViNTRlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNQorICAgIDB4MS5mZmY5ZjYwMWM3MWE1MGVhODA0MmI2ZTUzNWQ5OTY3NnAtMSwKKyAgICAweDEuNTViNTRlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIC0weDEuMzVmZWMwNjE2NjRiOWNmMWI3YjE0ODQzMDdmODQyNTlwLTEsCisgICAgLTB4MS42NzQ4MDRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS4zNWZlYzA2MTY2NGI5Y2YxYjdiMTQ4NDMwN2Y4NDI1OXAtMSwKKyAgICAweDEuNjc0ODA0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTgKKyAgICAtMHgxLjhkOWIxYjAxMjgxOTZmODlkOTUzMWRmMTIzYTQwZmY0cC0xMSwKKyAgICAtMHgxLjhkOWIyMHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOQorICAgIDB4MS44ZDliMWIwMTI4MTk2Zjg5ZDk1MzFkZjEyM2E0MGZmNHAtMTEsCisgICAgMHgxLjhkOWIyMHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIC0weDEuZTNiMjE3MDFhMDljZTQ2YmVkZmIzZjZlNGY1ZjlhMzBwLTExLAorICAgIC0weDEuZTNiMjIwcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLmUzYjIxNzAxYTA5Y2U0NmJlZGZiM2Y2ZTRmNWY5YTMwcC0xMSwKKyAgICAweDEuZTNiMjIwcC0xMQorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgLTB4MS5mYjA3MDMwMWU1YjQ2YmZkYWYxZDJhN2JkOTU3M2IzY3AtOCwKKyAgICAtMHgxLmZiMDk5YXAtOAorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLmZiMDcwMzAxZTViNDZiZmRhZjFkMmE3YmQ5NTczYjNjcC04LAorICAgIDB4MS5mYjA5OWFwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNAorICAgIC0weDEuZmY4NWQ5NzdjNDViOGE0NjM3MDlmYzMxOTE1YzA0YmFwLTYsCisgICAgLTB4MS5mZmIwNmNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5mZjg1ZDk3N2M0NWI4YTQ2MzcwOWZjMzE5MTVjMDRiYXAtNiwKKyAgICAweDEuZmZiMDZjcC02CisgIH0sCisgIHsgLy8gRW50cnkgMjYKKyAgICAtMHgxLmZmNTUxN2ZmYWM3MmYyNzZiYWY4NjcwMmVmZDdmMGU0cC01LAorICAgIC0weDEuZmZmZjdlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMjcKKyAgICAweDEuZmY1NTE3ZmZhYzcyZjI3NmJhZjg2NzAyZWZkN2YwZTRwLTUsCisgICAgMHgxLmZmZmY3ZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLjg1ZWZhY2ZmNWNmN2FmZGJhNDQyYmU5MjE5MGI1NTFicC0xLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDI5CisgICAgLTB4MS44NWVmYWNmZjVjZjdhZmRiYTQ0MmJlOTIxOTBiNTUxYnAtMSwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjAwMDAwMnA4CisgIH0sCisgIHsgLy8gRW50cnkgMzEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAycDQwCisgIH0sCisgIHsgLy8gRW50cnkgMzMKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMDAwMDAycDQwCisgIH0sCisgIHsgLy8gRW50cnkgMzQKKyAgICAweDEuZmY1NzE3ZmYwMTVlMjkyYjE5N2FhNmE1YmQ4ZWFkMTFwLTUsCisgICAgMHgxLjAwMDBjMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgLTB4MS5mZjU3MTdmZjAxNWUyOTJiMTk3YWE2YTViZDhlYWQxMXAtNSwKKyAgICAtMHgxLjAwMDBjMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLmZmZDdiOTAxNDNiYjVkNjU0NDY1ZmJmNmViMDhkYjk0cC02LAorICAgIDB4MS4wMDAxMzBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNworICAgIC0weDEuZmZkN2I5MDE0M2JiNWQ2NTQ0NjVmYmY2ZWIwOGRiOTRwLTYsCisgICAgLTB4MS4wMDAxMzBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOAorICAgIDB4MS5mZjU4MTZmZmE5YWFmNzdiNTJkZGY1MmQ4NjJlZTA4NXAtNSwKKyAgICAweDEuMDAwMTQwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzkKKyAgICAtMHgxLmZmNTgxNmZmYTlhYWY3N2I1MmRkZjUyZDg2MmVlMDg1cC01LAorICAgIC0weDEuMDAwMTQwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDAKKyAgICAweDEuZmQ1Yzg2ZGJmMWVmN2MwYjdjMTdiNWE1ZmM5Mzg0YmFwLTQsCisgICAgMHgxLjAwMDE4MHAtMworICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgLTB4MS5mZDVjODZkYmYxZWY3YzBiN2MxN2I1YTVmYzkzODRiYXAtNCwKKyAgICAtMHgxLjAwMDE4MHAtMworICB9LAorICB7IC8vIEVudHJ5IDQyCisgICAgMHgxLmZmZjhkNTYxOTlkMmQxNDk2MzkzNDk4YWY1N2E2NWM1cC03LAorICAgIDB4MS4wMDAxYzBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIC0weDEuZmZmOGQ1NjE5OWQyZDE0OTYzOTM0OThhZjU3YTY1YzVwLTcsCisgICAgLTB4MS4wMDAxYzBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS5mZjVhMTUwMGY3NDg4Yzg4YTI4OTY3ZWYzMjc5NTk4YnAtNSwKKyAgICAweDEuMDAwMjQwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDUKKyAgICAtMHgxLmZmNWExNTAwZjc0ODhjODhhMjg5NjdlZjMyNzk1OThicC01LAorICAgIC0weDEuMDAwMjQwcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAweDEuZmZkZDU3OTk3ODY5YzIyMzg1OWRhMjQ2MTE1ODMwYThwLTYsCisgICAgMHgxLjAwMDRwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0weDEuZmZkZDU3OTk3ODY5YzIyMzg1OWRhMjQ2MTE1ODMwYThwLTYsCisgICAgLTB4MS4wMDA0cC01CisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAweDEuMDAwM2ZmZmZmZmVhYTlhYWE2YWFhNzc3YTIyMzc3N2NwLTIxLAorICAgIDB4MS4wMDA0cC0yMQorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS4wMDAzZmZmZmZmZWFhOWFhYTZhYWE3NzdhMjIzNzc3Y3AtMjEsCisgICAgLTB4MS4wMDA0cC0yMQorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgMHgxLmZmZmVkMTAxZGI2MjkxODcxZWU1YjFmMTg0NjYyYzE0cC03LAorICAgIDB4MS4wMDA0YmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MQorICAgIC0weDEuZmZmZWQxMDFkYjYyOTE4NzFlZTViMWYxODQ2NjJjMTRwLTcsCisgICAgLTB4MS4wMDA0YmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIDB4MS5mZmE4MmNmZTNkMzEwMjQ3NDkxOWE4MTFhNjA4MDdiM3AtMSwKKyAgICAweDEuMDAwOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLmZmYTgyY2ZlM2QzMTAyNDc0OTE5YTgxMWE2MDgwN2IzcC0xLAorICAgIC0weDEuMDAwOHAyCisgIH0sCisgIHsgLy8gRW50cnkgNTQKKyAgICAweDEuMDA3MThiMDA2YjUyYzJhYjExNzAyZGUzMzg5ZDc3ZGVwLTUsCisgICAgMHgxLjAwODdwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEuMDA3MThiMDA2YjUyYzJhYjExNzAyZGUzMzg5ZDc3ZGVwLTUsCisgICAgLTB4MS4wMDg3cC01CisgIH0sCisgIHsgLy8gRW50cnkgNTYKKyAgICAweDEuZmZhYWNiMzZiMmRmYTg2OWI0ZmRkZWU5Yzk4ZGMwNjdwLTEsCisgICAgMHgxLjAxcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEuZmZhYWNiMzZiMmRmYTg2OWI0ZmRkZWU5Yzk4ZGMwNjdwLTEsCisgICAgLTB4MS4wMXAyCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAweDEuZmZmZmY5MDAwNTJlNDRlYTM0NWRhNTk2NWY0ZDExMGVwLTEsCisgICAgMHgxLjAxMzdwMworICB9LAorICB7IC8vIEVudHJ5IDU5CisgICAgLTB4MS5mZmZmZjkwMDA1MmU0NGVhMzQ1ZGE1OTY1ZjRkMTEwZXAtMSwKKyAgICAtMHgxLjAxMzdwMworICB9LAorICB7IC8vIEVudHJ5IDYwCisgICAgMHgxLmZjMzJmODAwMDBkZDdiMzAwNzUwYTAwNzhhOTA1NGMxcC0zLAorICAgIDB4MS4wMzg0M2VwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuZmMzMmY4MDAwMGRkN2IzMDA3NTBhMDA3OGE5MDU0YzFwLTMsCisgICAgLTB4MS4wMzg0M2VwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MgorICAgIDB4MS5mZDE5NTcwMDAyMDkzZGY5NGI2NTY4M2Y5YTAwOTE3ZnAtMywKKyAgICAweDEuMDNmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDYzCisgICAgLTB4MS5mZDE5NTcwMDAyMDkzZGY5NGI2NTY4M2Y5YTAwOTE3ZnAtMywKKyAgICAtMHgxLjAzZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIDB4MS5mZGU1ZDhmZmZmODBiOTI3ZDRkNzZhZTFkY2U2ZjU5YnAtMywKKyAgICAweDEuMDQ2Y3AtMgorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgLTB4MS5mZGU1ZDhmZmZmODBiOTI3ZDRkNzZhZTFkY2U2ZjU5YnAtMywKKyAgICAtMHgxLjA0NmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIDB4MS5mZWIwNmZmZjg1Yjg3OWFlMTllYjJiYzVjZjcwZTAzMXAtMywKKyAgICAweDEuMDRkOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgLTB4MS5mZWIwNmZmZjg1Yjg3OWFlMTllYjJiYzVjZjcwZTAzMXAtMywKKyAgICAtMHgxLjA0ZDhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA2OAorICAgIDB4MS5lNmM0MjZlZDcwMGY1MDNlNjU4M2RmNzY5NGE0OTc5YnAtMiwKKyAgICAweDEuMDhiMDM4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNjkKKyAgICAtMHgxLmU2YzQyNmVkNzAwZjUwM2U2NTgzZGY3Njk0YTQ5NzlicC0yLAorICAgIC0weDEuMDhiMDM4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNzAKKyAgICAweDEuZmZmZmZjMDAwMTg3MTEwNjAwOWI1YWFmNTVjNDkxMTZwLTEsCisgICAgMHgxLjBhMmIyYXAzCisgIH0sCisgIHsgLy8gRW50cnkgNzEKKyAgICAtMHgxLmZmZmZmYzAwMDE4NzExMDYwMDliNWFhZjU1YzQ5MTE2cC0xLAorICAgIC0weDEuMGEyYjJhcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIDB4MS5mZmMzOTJmNGFiOGQ1MzRhYTY5ZjdjNTE2NmNmMDM2NnAtMSwKKyAgICAweDEuMGNwMgorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS5mZmMzOTJmNGFiOGQ1MzRhYTY5ZjdjNTE2NmNmMDM2NnAtMSwKKyAgICAtMHgxLjBjcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NAorICAgIDB4MS4wYWNkMzMwMDAwMzJhODgwODc4NjkwZDQwM2FmYmNiZXAtMywKKyAgICAweDEuMGM1MzkycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzUKKyAgICAtMHgxLjBhY2QzMzAwMDAzMmE4ODA4Nzg2OTBkNDAzYWZiY2JlcC0zLAorICAgIC0weDEuMGM1MzkycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAweDEuZmZmZmZjZmIxYmYzN2IwZjc5MWQ3YTE3ZWI2YjBhMTVwLTEsCisgICAgMHgxLjBlYWI3Y3AzCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMHgxLmZmZmZmY2ZiMWJmMzdiMGY3OTFkN2ExN2ViNmIwYTE1cC0xLAorICAgIC0weDEuMGVhYjdjcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OAorICAgIDB4MS5mZmZmZmNmYjFlMzcyNTNkYzc2MTkzZDFlMWFlZDgxN3AtMSwKKyAgICAweDEuMGVhYjg4cDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEuZmZmZmZjZmIxZTM3MjUzZGM3NjE5M2QxZTFhZWQ4MTdwLTEsCisgICAgLTB4MS4wZWFiODhwMworICB9LAorICB7IC8vIEVudHJ5IDgwCisgICAgMHgxLmZmZmZmY2ZiMzkwMjAyMWI0MDZiMWVhMTg3ODQ0ZjRicC0xLAorICAgIDB4MS4wZWFjMTZwMworICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS5mZmZmZmNmYjM5MDIwMjFiNDA2YjFlYTE4Nzg0NGY0YnAtMSwKKyAgICAtMHgxLjBlYWMxNnAzCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAweDEuZjU0NDNmMDBjN2FkMTFiYTI3YjQ4MDBiYzhjZmY2OTJwLTIsCisgICAgMHgxLjEyMjM2YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS5mNTQ0M2YwMGM3YWQxMWJhMjdiNDgwMGJjOGNmZjY5MnAtMiwKKyAgICAtMHgxLjEyMjM2YXAtMQorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgMHgxLjBkYjE4YWZmZmY0MWMwZGMzMjA4NTFlZWYzNjE0YmZmcC0yLAorICAgIDB4MS4xNDMzZDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIC0weDEuMGRiMThhZmZmZjQxYzBkYzMyMDg1MWVlZjM2MTRiZmZwLTIsCisgICAgLTB4MS4xNDMzZDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIDB4MS5mZmZmZmRmZGFiYjg2Zjg2NzJjNDYxYzA4ZDA0MDQ2ZnAtMSwKKyAgICAweDEuMTUyZmFlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NworICAgIC0weDEuZmZmZmZkZmRhYmI4NmY4NjcyYzQ2MWMwOGQwNDA0NmZwLTEsCisgICAgLTB4MS4xNTJmYWVwMworICB9LAorICB7IC8vIEVudHJ5IDg4CisgICAgMHgxLmZhMjY1ZDI0MDE1NWU1MDEzZjEyYTNiNDE1MDAxODllcC0yLAorICAgIDB4MS4xNTVjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgODkKKyAgICAtMHgxLmZhMjY1ZDI0MDE1NWU1MDEzZjEyYTNiNDE1MDAxODllcC0yLAorICAgIC0weDEuMTU1Y3AtMQorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLmZjOWExYTVmOWMzMjkwNWFhZjk3Y2JhM2Y4YWFmYWYwcC0yLAorICAgIDB4MS4xNmZjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAtMHgxLmZjOWExYTVmOWMzMjkwNWFhZjk3Y2JhM2Y4YWFmYWYwcC0yLAorICAgIC0weDEuMTZmY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDkyCisgICAgMHgxLjE1NTg2OGZmZmY0MTUyZGY0NTdhMjRhZDZmNDEzYmRmcC0zLAorICAgIDB4MS4xNzBmNDhwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIC0weDEuMTU1ODY4ZmZmZjQxNTJkZjQ1N2EyNGFkNmY0MTNiZGZwLTMsCisgICAgLTB4MS4xNzBmNDhwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NAorICAgIDB4MS4xNzdkMGYwMGY2NDFkMWU5NmM3OWM3YWJkNzUyNjliMXAtNiwKKyAgICAweDEuMTc4NHAtNgorICB9LAorICB7IC8vIEVudHJ5IDk1CisgICAgLTB4MS4xNzdkMGYwMGY2NDFkMWU5NmM3OWM3YWJkNzUyNjliMXAtNiwKKyAgICAtMHgxLjE3ODRwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NgorICAgIDB4MS4xODk3NTFmZjU3OGVmZmJlNWVjMGY1M2ZiODE2YzcwNXAtNCwKKyAgICAweDEuMTkwOHAtNAorICB9LAorICB7IC8vIEVudHJ5IDk3CisgICAgLTB4MS4xODk3NTFmZjU3OGVmZmJlNWVjMGY1M2ZiODE2YzcwNXAtNCwKKyAgICAtMHgxLjE5MDhwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS4xZGNlMjUwMTM4YzNmOTIwZWZlYTAwMWIwNjQ5NzVhM3AtNywKKyAgICAweDEuMWRkMHAtNworICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgLTB4MS4xZGNlMjUwMTM4YzNmOTIwZWZlYTAwMWIwNjQ5NzVhM3AtNywKKyAgICAtMHgxLjFkZDBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuMWRkYTI0YzU2MjYyMWEwNjQwZmUwYjg2NjQxY2Q2NGJwLTcsCisgICAgMHgxLjFkZGNwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAtMHgxLjFkZGEyNGM1NjI2MjFhMDY0MGZlMGI4NjY0MWNkNjRicC03LAorICAgIC0weDEuMWRkY3AtNworICB9LAorICB7IC8vIEVudHJ5IDEwMgorICAgIDB4MS4xZmE4NmU4ZjY5NWQzMmM0ZDhkODc0NzQ0ODE0NDQ0ZHAtNiwKKyAgICAweDEuMWZiMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDEwMworICAgIC0weDEuMWZhODZlOGY2OTVkMzJjNGQ4ZDg3NDc0NDgxNDQ0NGRwLTYsCisgICAgLTB4MS4xZmIwcC02CisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLmEwMTQwMTAwMTA0NTAxOTUyOGRiMDdlYmVlYzM1ZWY5cC0xLAorICAgIDB4MS4yMjgxYWFwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIC0weDEuYTAxNDAxMDAxMDQ1MDE5NTI4ZGIwN2ViZWVjMzVlZjlwLTEsCisgICAgLTB4MS4yMjgxYWFwMAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5hZWVhMjcwMDc1ZDkxZGEyYWMxOTI4YjVkNzk1YTg2NnAtMSwKKyAgICAweDEuM2EwYjZjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDcKKyAgICAtMHgxLmFlZWEyNzAwNzVkOTFkYTJhYzE5MjhiNWQ3OTVhODY2cC0xLAorICAgIC0weDEuM2EwYjZjcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDgKKyAgICAweDEuNTg4NDA1MDA0ODlhNTYwNDI5MTBkODJiNDQyNTEwN2NwLTEwLAorICAgIDB4MS41ODg0MTJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgLTB4MS41ODg0MDUwMDQ4OWE1NjA0MjkxMGQ4MmI0NDI1MTA3Y3AtMTAsCisgICAgLTB4MS41ODg0MTJwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLmZmZmM0OGJlYTZlYTdiY2E5ZTNjYzc2NjM3YmZiZmNlcC0xLAorICAgIDB4MS42NTNmYmNwMgorICB9LAorICB7IC8vIEVudHJ5IDExMQorICAgIC0weDEuZmZmYzQ4YmVhNmVhN2JjYTllM2NjNzY2MzdiZmJmY2VwLTEsCisgICAgLTB4MS42NTNmYmNwMgorICB9LAorICB7IC8vIEVudHJ5IDExMgorICAgIDB4MS5mZmZjNDhkNWRmZTRjM2MwZWJmNWZjNGU5Njk1MDdiYXAtMSwKKyAgICAweDEuNjU0MDg0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTMKKyAgICAtMHgxLmZmZmM0OGQ1ZGZlNGMzYzBlYmY1ZmM0ZTk2OTUwN2JhcC0xLAorICAgIC0weDEuNjU0MDg0cDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTQKKyAgICAweDEuZmZmYzU5MzNiNzE2ZWJmOTNiODQ2ZWQyZDA2MjkyNDBwLTEsCisgICAgMHgxLjY1Y2ViNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgLTB4MS5mZmZjNTkzM2I3MTZlYmY5M2I4NDZlZDJkMDYyOTI0MHAtMSwKKyAgICAtMHgxLjY1Y2ViNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjZjYzMwNzAxNDJjYWIyNWE4YTM1NTZjOTgxMGRhMWU4cC01LAorICAgIDB4MS42ZDAwZDBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTcKKyAgICAtMHgxLjZjYzMwNzAxNDJjYWIyNWE4YTM1NTZjOTgxMGRhMWU4cC01LAorICAgIC0weDEuNmQwMGQwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLjZjYzMwOTAwM2VlZDE4YWVkZjQ5OTQxM2ZhZGI0NjJmcC01LAorICAgIDB4MS42ZDAwZDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAtMHgxLjZjYzMwOTAwM2VlZDE4YWVkZjQ5OTQxM2ZhZGI0NjJmcC01LAorICAgIC0weDEuNmQwMGQycC01CisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLmZkM2Y3MmZmZTQyNzc1MzYxMDQyMzk4MGQxZDA1ZmVkcC0xLAorICAgIDB4MS43YWE2NDJwMQorICB9LAorICB7IC8vIEVudHJ5IDEyMQorICAgIC0weDEuZmQzZjcyZmZlNDI3NzUzNjEwNDIzOTgwZDFkMDVmZWRwLTEsCisgICAgLTB4MS43YWE2NDJwMQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS43YzJmNjBmZmZmNDIyNGI0MWI5OGFhMmU4N2Q0MGU5M3AtMywKKyAgICAweDEuODBhNTE2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgLTB4MS43YzJmNjBmZmZmNDIyNGI0MWI5OGFhMmU4N2Q0MGU5M3AtMywKKyAgICAtMHgxLjgwYTUxNnAtMworICB9LAorICB7IC8vIEVudHJ5IDEyNAorICAgIDB4MS5mZmZlYzY4ZjdkOWNhZThjYjIwMjJkMmY2ZTFjYjQ4M3AtMSwKKyAgICAweDEuODhjNjYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAtMHgxLmZmZmVjNjhmN2Q5Y2FlOGNiMjAyMmQyZjZlMWNiNDgzcC0xLAorICAgIC0weDEuODhjNjYwcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjYKKyAgICAweDEuODk1OTQ0OWNhM2FkZmE3ZDMyMjM3MDQ2MDQ1NWE5MDJwLTksCisgICAgMHgxLjg5NTk5MnAtOQorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIC0weDEuODk1OTQ0OWNhM2FkZmE3ZDMyMjM3MDQ2MDQ1NWE5MDJwLTksCisgICAgLTB4MS44OTU5OTJwLTkKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjgKKyAgICAweDEuZmZmZWNjODY2ODNkOGVmOGExZmIyY2FmYWVhMTU0NWZwLTEsCisgICAgMHgxLjg5NjNjNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgLTB4MS5mZmZlY2M4NjY4M2Q4ZWY4YTFmYjJjYWZhZWExNTQ1ZnAtMSwKKyAgICAtMHgxLjg5NjNjNHAyCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLjc5YjYxMTAwMDBiYWVmYmUzOTk5YTZkZmY0YzRhY2RicC0yLAorICAgIDB4MS44YzY0NDhwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAtMHgxLjc5YjYxMTAwMDBiYWVmYmUzOTk5YTZkZmY0YzRhY2RicC0yLAorICAgIC0weDEuOGM2NDQ4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgMHgxLjk1NTZhMmY1ZDkzM2E2YTdjN2NmNzg1NjhiYjcyNDlhcC03LAorICAgIDB4MS45NTViZWVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMHgxLjk1NTZhMmY1ZDkzM2E2YTdjN2NmNzg1NjhiYjcyNDlhcC03LAorICAgIC0weDEuOTU1YmVlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTM0CisgICAgMHgxLmE2NDYwOTAxYWQyZDNhNjJjY2M4NzMxOTc4M2RkZGU4cC04LAorICAgIDB4MS5hNjQ3ODhwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzUKKyAgICAtMHgxLmE2NDYwOTAxYWQyZDNhNjJjY2M4NzMxOTc4M2RkZGU4cC04LAorICAgIC0weDEuYTY0Nzg4cC04CisgIH0sCisgIHsgLy8gRW50cnkgMTM2CisgICAgMHgxLjYyZmFmNTAwMWMwM2JmNGI2NGZlOTEyNWIzZWNiZDcycC0xLAorICAgIDB4MS5iNTY5YzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzcKKyAgICAtMHgxLjYyZmFmNTAwMWMwM2JmNGI2NGZlOTEyNWIzZWNiZDcycC0xLAorICAgIC0weDEuYjU2OWMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgMHgxLmZmZmZiMmY0MGMxYTM0NTZiMjkzMWYxODM3ODk3MjdkcC0xLAorICAgIDB4MS5iNWFkNjBwMgorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuZmZmZmIyZjQwYzFhMzQ1NmIyOTMxZjE4Mzc4OTcyN2RwLTEsCisgICAgLTB4MS5iNWFkNjBwMgorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIDB4MS5iODU1YThjODMxM2M0Y2QxM2UwZjAwYjg4NDg1N2NhM3AtNywKKyAgICAweDEuYjg1YzcycC03CisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS5iODU1YThjODMxM2M0Y2QxM2UwZjAwYjg4NDg1N2NhM3AtNywKKyAgICAtMHgxLmI4NWM3MnAtNworICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIDB4MS5hZjA3OTMwMDAwMzU2NTViYmU3NzlkODk3YzlmNWQ0ZXAtMiwKKyAgICAweDEuY2I5NzE0cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQzCisgICAgLTB4MS5hZjA3OTMwMDAwMzU2NTViYmU3NzlkODk3YzlmNWQ0ZXAtMiwKKyAgICAtMHgxLmNiOTcxNHAtMgorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIDB4MS5jZjgxMjEwNDAyMjMxMzY3NzEyM2UyNjI1YzZjYjAwYnAtNSwKKyAgICAweDEuY2ZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS5jZjgxMjEwNDAyMjMxMzY3NzEyM2UyNjI1YzZjYjAwYnAtNSwKKyAgICAtMHgxLmNmZmZmZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIDB4MS5kNTEzMmIwMGU0NGIzYzk1MWMzZDI1MDAwMTEwYTY1NnAtNCwKKyAgICAweDEuZDcyNDRjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS5kNTEzMmIwMGU0NGIzYzk1MWMzZDI1MDAwMTEwYTY1NnAtNCwKKyAgICAtMHgxLmQ3MjQ0Y3AtNAorICB9LAorICB7IC8vIEVudHJ5IDE0OAorICAgIDB4MS5iYzc5N2NmZmZmZmY2ZGI3MzU5ZDFjNTk1OTMwYmM2M3AtMiwKKyAgICAweDEuZGMwYWNjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMTQ5CisgICAgLTB4MS5iYzc5N2NmZmZmZmY2ZGI3MzU5ZDFjNTk1OTMwYmM2M3AtMiwKKyAgICAtMHgxLmRjMGFjY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDE1MAorICAgIDB4MS5kZDU1NjUwMWM4NDc2Yjg4MjZiMGQ0OTk1YTNlMDA1NHAtNywKKyAgICAweDEuZGQ1ZTBhcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTUxCisgICAgLTB4MS5kZDU1NjUwMWM4NDc2Yjg4MjZiMGQ0OTk1YTNlMDA1NHAtNywKKyAgICAtMHgxLmRkNWUwYXAtNworICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIDB4MS5kZmU4NjUwMWNhMzYzYzJmMWRhMzU2ZDA2MzJmZTZjOHAtNywKKyAgICAweDEuZGZmMTJlcC03CisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS5kZmU4NjUwMWNhMzYzYzJmMWRhMzU2ZDA2MzJmZTZjOHAtNywKKyAgICAtMHgxLmRmZjEyZXAtNworICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIDB4MS5kOWQ3MDAwMDAwOTMwZmM4OGVmNDdjNmUxYWRhOWEyZXAtMywKKyAgICAweDEuZTI5M2M2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS5kOWQ3MDAwMDAwOTMwZmM4OGVmNDdjNmUxYWRhOWEyZXAtMywKKyAgICAtMHgxLmUyOTNjNnAtMworICB9LAorICB7IC8vIEVudHJ5IDE1NgorICAgIDB4MS5lMzg3MWIwNDA2MzYxYzc3ZmYzMjYyZGYwOWU4YzczN3AtMTEsCisgICAgMHgxLmUzODcyNHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLmUzODcxYjA0MDYzNjFjNzdmZjMyNjJkZjA5ZThjNzM3cC0xMSwKKyAgICAtMHgxLmUzODcyNHAtMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTgKKyAgICAweDEuZTdmNmMxZDMyM2Q5OTg1NDU3NTAwY2Y3MjEwMDY5NDdwLTcsCisgICAgMHgxLmU3ZmZmZXAtNworICB9LAorICB7IC8vIEVudHJ5IDE1OQorICAgIC0weDEuZTdmNmMxZDMyM2Q5OTg1NDU3NTAwY2Y3MjEwMDY5NDdwLTcsCisgICAgLTB4MS5lN2ZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAweDEuN2M1NGVjZmZmYTE4NTkwMzhjYTE3OTY5Yzk3ZmU1ZGVwLTEsCisgICAgMHgxLmU5ZGU5MnAtMQorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0weDEuN2M1NGVjZmZmYTE4NTkwMzhjYTE3OTY5Yzk3ZmU1ZGVwLTEsCisgICAgLTB4MS5lOWRlOTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjIKKyAgICAweDEuZjM0ZTg2ZmZmODU4MDI2NzM4MTk2NDA5YTExYTlkNzdwLTQsCisgICAgMHgxLmY1Y2Q2MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE2MworICAgIC0weDEuZjM0ZTg2ZmZmODU4MDI2NzM4MTk2NDA5YTExYTlkNzdwLTQsCisgICAgLTB4MS5mNWNkNjBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjQKKyAgICAweDEuZjY1MGNkMDFkZDFkZDNiNzRkNDE3MGI1ODE2MmQ2MDRwLTcsCisgICAgMHgxLmY2NWFlMHAtNworICB9LAorICB7IC8vIEVudHJ5IDE2NQorICAgIC0weDEuZjY1MGNkMDFkZDFkZDNiNzRkNDE3MGI1ODE2MmQ2MDRwLTcsCisgICAgLTB4MS5mNjVhZTBwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAweDEuZjdmNWQxOTczNjY1MTY1N2JiNGE5MDhiYjZjZTZmM2NwLTcsCisgICAgMHgxLmY3ZmZmZXAtNworICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0weDEuZjdmNWQxOTczNjY1MTY1N2JiNGE5MDhiYjZjZTZmM2NwLTcsCisgICAgLTB4MS5mN2ZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjgKKyAgICAweDEuZjkzNmIzMDFlNzVlNTU5NmFkNWI0M2RlYjQwNjFjMmNwLTEwLAorICAgIDB4MS5mOTM2ZGNwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTY5CisgICAgLTB4MS5mOTM2YjMwMWU3NWU1NTk2YWQ1YjQzZGViNDA2MWMyY3AtMTAsCisgICAgLTB4MS5mOTM2ZGNwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTcwCisgICAgMHgxLmZiNWMyNDdiOTczNjEyNTVjNDFmNzY1ZDRjYmFiMjhlcC0xMCwKKyAgICAweDEuZmI1YzRlcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE3MQorICAgIC0weDEuZmI1YzI0N2I5NzM2MTI1NWM0MWY3NjVkNGNiYWIyOGVwLTEwLAorICAgIC0weDEuZmI1YzRlcC0xMAorICB9LAorICB7IC8vIEVudHJ5IDE3MgorICAgIDB4MS5mYjYwZWU3YTZhM2FmNzlmNWNlNTdmZDYxMmQ2NWEyMnAtMTAsCisgICAgMHgxLmZiNjExOHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzMKKyAgICAtMHgxLmZiNjBlZTdhNmEzYWY3OWY1Y2U1N2ZkNjEyZDY1YTIycC0xMCwKKyAgICAtMHgxLmZiNjExOHAtMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzQKKyAgICAweDEuZmI2MTUwN2E1MjJiYTk1NzNlODIwOThjMDc5MmJhMjVwLTEwLAorICAgIDB4MS5mYjYxN2FwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTc1CisgICAgLTB4MS5mYjYxNTA3YTUyMmJhOTU3M2U4MjA5OGMwNzkyYmEyNXAtMTAsCisgICAgLTB4MS5mYjYxN2FwLTEwCisgIH0sCisgIHsgLy8gRW50cnkgMTc2CisgICAgMHgxLmZiODk2NzAxZGYzNDUwZWU0YmM5NzBmMjhmYjc1NDQ1cC04LAorICAgIDB4MS5mYjhjcC04CisgIH0sCisgIHsgLy8gRW50cnkgMTc3CisgICAgLTB4MS5mYjg5NjcwMWRmMzQ1MGVlNGJjOTcwZjI4ZmI3NTQ0NXAtOCwKKyAgICAtMHgxLmZiOGNwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuZmMzYzFiZmZmZmM5ZjJiZmZiZDQzNDcxNTQ4ODA2ZmNwLTQsCisgICAgMHgxLmZlZGUxMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE3OQorICAgIC0weDEuZmMzYzFiZmZmZmM5ZjJiZmZiZDQzNDcxNTQ4ODA2ZmNwLTQsCisgICAgLTB4MS5mZWRlMTBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAweDEuZmVkNTk3NmYxMTU5M2Y1ZDdlNGIzODM2ZGE4MDIzMTdwLTYsCisgICAgMHgxLmZlZmZmZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDE4MQorICAgIC0weDEuZmVkNTk3NmYxMTU5M2Y1ZDdlNGIzODM2ZGE4MDIzMTdwLTYsCisgICAgLTB4MS5mZWZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEuZmYxZDU2ZDgxMDc3YWYwMDc0MjVkZGEzMmQxZjAwMzFwLTgsCisgICAgMHgxLmZmMWZmZXAtOAorICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIC0weDEuZmYxZDU2ZDgxMDc3YWYwMDc0MjVkZGEzMmQxZjAwMzFwLTgsCisgICAgLTB4MS5mZjFmZmVwLTgKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuZmZmMWQzZDFiNTI2OGJmZmIwYTIxYWM3ODQxMTM3MGJwLTcsCisgICAgMHgxLmZmZmM3ZXAtNworICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIC0weDEuZmZmMWQzZDFiNTI2OGJmZmIwYTIxYWM3ODQxMTM3MGJwLTcsCisgICAgLTB4MS5mZmZjN2VwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuZmQ1ODBjZGJlYmVjNmY2MGUzMzY1ZDE3ZWQ2MDQxNGFwLTQsCisgICAgMHgxLmZmZmU3NHAtNAorICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIC0weDEuZmQ1ODBjZGJlYmVjNmY2MGUzMzY1ZDE3ZWQ2MDQxNGFwLTQsCisgICAgLTB4MS5mZmZlNzRwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuZjU5NmI3ZjdiNGMxM2MxNTVjM2VmZDkzZjVkZmU2ZDJwLTMsCisgICAgMHgxLmZmZmViYXAtMworICB9LAorICB7IC8vIEVudHJ5IDE4OQorICAgIC0weDEuZjU5NmI3ZjdiNGMxM2MxNTVjM2VmZDkzZjVkZmU2ZDJwLTMsCisgICAgLTB4MS5mZmZlYmFwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAweDEuZjU5NzM0MGNiN2NkZTlhYjgzNDlhZWQxN2JmMjM0ZDBwLTMsCisgICAgMHgxLmZmZmYzZXAtMworICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuZjU5NzM0MGNiN2NkZTlhYjgzNDlhZWQxN2JmMjM0ZDBwLTMsCisgICAgLTB4MS5mZmZmM2VwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTIKKyAgICAweDEuZmY1NTE3ZmZhYzcyZjI3NmJhZjg2NzAyZWZkN2YwZTRwLTUsCisgICAgMHgxLmZmZmY3ZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDE5MworICAgIC0weDEuZmY1NTE3ZmZhYzcyZjI3NmJhZjg2NzAyZWZkN2YwZTRwLTUsCisgICAgLTB4MS5mZmZmN2VwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAweDEuODVlZjgyZmZmZjYwMDEwMTg0N2U0YjBmOWU0NDUzNTZwLTEsCisgICAgMHgxLmZmZmZhMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuODVlZjgyZmZmZjYwMDEwMTg0N2U0YjBmOWU0NDUzNTZwLTEsCisgICAgLTB4MS5mZmZmYTBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAweDEuZDkzNTIxMjU4MTNiZGUzYWE5ZWE1MDViMjgwOWZjYTNwLTIsCisgICAgMHgxLmZmZmZkY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEuZDkzNTIxMjU4MTNiZGUzYWE5ZWE1MDViMjgwOWZjYTNwLTIsCisgICAgLTB4MS5mZmZmZGNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAweDEuZmZhODE3MDA2MzkxYWViNTcwN2RhYzcyMTJjZjczZDVwLTEsCisgICAgMHgxLmZmZmZmYXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTk5CisgICAgLTB4MS5mZmE4MTcwMDYzOTFhZWI1NzA3ZGFjNzIxMmNmNzNkNXAtMSwKKyAgICAtMHgxLmZmZmZmYXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgMHgxLmE4NmMxNzAwMDBiZThlN2Y0ZDA0YTA2M2RhMjQ4NjBlcC0zLAorICAgIDB4MS5hZWE4ZTJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLmE4NmMxNzAwMDBiZThlN2Y0ZDA0YTA2M2RhMjQ4NjBlcC0zLAorICAgIC0weDEuYWVhOGUycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjAyCisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIDB4MS4xYTVlZWZlMGRhNmRhNDZlYTZmMTcxNDI1ODEwZTRkZnAtNSwKKyAgICAweDEuMWE3Yjk2cC01CisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgLTB4MS4xYTVlZWZlMGRhNmRhNDZlYTZmMTcxNDI1ODEwZTRkZnAtNSwKKyAgICAtMHgxLjFhN2I5NnAtNQorICB9LAorICB7IC8vIEVudHJ5IDIwNQorICAgIDB4MS4xYTA5Mjc0YWM2ZjdiNmQ0YjcyNzY5MGJlNzRlYjBkZHAtNCwKKyAgICAweDEuMWE3Yjk2cC00CisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgLTB4MS4xYTA5Mjc0YWM2ZjdiNmQ0YjcyNzY5MGJlNzRlYjBkZHAtNCwKKyAgICAtMHgxLjFhN2I5NnAtNAorICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIDB4MS5hNjM4MTQ3OWUxMGUzMjI1NjhjNjkzZWM0ZjI3OTk4OXAtNCwKKyAgICAweDEuYTdiOTYwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMjA4CisgICAgLTB4MS5hNjM4MTQ3OWUxMGUzMjI1NjhjNjkzZWM0ZjI3OTk4OXAtNCwKKyAgICAtMHgxLmE3Yjk2MHAtNAorICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS4xOGI0NzJkNmZiZTdkZWU0NDk5ZWMxNjA1NmZlYTA1NXAtMywKKyAgICAweDEuMWE3Yjk2cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgLTB4MS4xOGI0NzJkNmZiZTdkZWU0NDk5ZWMxNjA1NmZlYTA1NXAtMywKKyAgICAtMHgxLjFhN2I5NnAtMworICB9LAorICB7IC8vIEVudHJ5IDIxMQorICAgIDB4MS41ZGE1NGRjNzdmMDU0NDA3MDVlZDlkNWJlM2Y5ZTlkOHAtMywKKyAgICAweDEuNjExYTdjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgLTB4MS41ZGE1NGRjNzdmMDU0NDA3MDVlZDlkNWJlM2Y5ZTlkOHAtMywKKyAgICAtMHgxLjYxMWE3Y3AtMworICB9LAorICB7IC8vIEVudHJ5IDIxMworICAgIDB4MS5hMWM3YTdlZTI1NGViMGI3OTYxMmQxMjAxMDJjZTljZHAtMywKKyAgICAweDEuYTdiOTYycC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgLTB4MS5hMWM3YTdlZTI1NGViMGI3OTYxMmQxMjAxMDJjZTljZHAtMywKKyAgICAtMHgxLmE3Yjk2MnAtMworICB9LAorICB7IC8vIEVudHJ5IDIxNQorICAgIDB4MS5lNGY2NmRlNjM4NTYwZTIyZDM3MjZhNzdkYThmMTYwZnAtMywKKyAgICAweDEuZWU1ODQ4cC0zCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgLTB4MS5lNGY2NmRlNjM4NTYwZTIyZDM3MjZhNzdkYThmMTYwZnAtMywKKyAgICAtMHgxLmVlNTg0OHAtMworICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIDB4MS4xMzg3NWFhMzZlMmQ4OTIwNjI2ZGJkNDEyZmZmMGExOXAtMiwKKyAgICAweDEuMWE3Yjk2cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjE4CisgICAgLTB4MS4xMzg3NWFhMzZlMmQ4OTIwNjI2ZGJkNDEyZmZmMGExOXAtMiwKKyAgICAtMHgxLjFhN2I5NnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIxOQorICAgIDB4MS4zM2Y4MDE5NTg1ZjNjYzUwMmU5MWVlY2Y1MGU3MGUxZXAtMiwKKyAgICAweDEuM2RjYjA4cC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgLTB4MS4zM2Y4MDE5NTg1ZjNjYzUwMmU5MWVlY2Y1MGU3MGUxZXAtMiwKKyAgICAtMHgxLjNkY2IwOHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS41M2JlM2UyY2Q5OGIwMjE5NjdiOWJkMzFlNThiNTE3NnAtMiwKKyAgICAweDEuNjExYTdhcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjIyCisgICAgLTB4MS41M2JlM2UyY2Q5OGIwMjE5NjdiOWJkMzFlNThiNTE3NnAtMiwKKyAgICAtMHgxLjYxMWE3YXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyMworICAgIDB4MS43MmNjODhjMTQ2NTcyNDQ1ZGFmY2JlNzU1ZDQxYmNhYnAtMiwKKyAgICAweDEuODQ2OWVjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgLTB4MS43MmNjODhjMTQ2NTcyNDQ1ZGFmY2JlNzU1ZDQxYmNhYnAtMiwKKyAgICAtMHgxLjg0NjllY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDIyNQorICAgIDB4MS45MTE2Y2VlYzc3YTlmMjk4YWJmNmIxMzQzNzc0NmI5N3AtMiwKKyAgICAweDEuYTdiOTVlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjI2CisgICAgLTB4MS45MTE2Y2VlYzc3YTlmMjk4YWJmNmIxMzQzNzc0NmI5N3AtMiwKKyAgICAtMHgxLmE3Yjk1ZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS5hZTkyN2QwYjc0MTk4Yjk4OGNjZjcwMGE5ODM2OTcxN3AtMiwKKyAgICAweDEuY2IwOGQwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjI4CisgICAgLTB4MS5hZTkyN2QwYjc0MTk4Yjk4OGNjZjcwMGE5ODM2OTcxN3AtMiwKKyAgICAtMHgxLmNiMDhkMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS5jYjM2ODIyNzlkYzk3ODU2NWFlZmMzZGJkMjY0ZGM2YnAtMiwKKyAgICAweDEuZWU1ODQycC0yCisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgLTB4MS5jYjM2ODIyNzlkYzk3ODU2NWFlZmMzZGJkMjY0ZGM2YnAtMiwKKyAgICAtMHgxLmVlNTg0MnAtMgorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIDB4MS5lNmZiNGU5OTYyZTE5MmEwZDViZGU1MmQ1ODBkOTFwLTIsCisgICAgMHgxLjA4ZDNkYXAtMQorICB9LAorICB7IC8vIEVudHJ5IDIzMgorICAgIC0weDEuZTZmYjRlOTk2MmUxOTJhMGQ1YmRlNTJkNTgwZDkxcC0yLAorICAgIC0weDEuMDhkM2RhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgMHgxLjAwZWQ2N2E3Y2E2NDQxNDdmN2Y4NGYxZjNmNjhlYjRlcC0xLAorICAgIDB4MS4xYTdiOTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzQKKyAgICAtMHgxLjAwZWQ2N2E3Y2E2NDQxNDdmN2Y4NGYxZjNmNjhlYjRlcC0xLAorICAgIC0weDEuMWE3Yjk0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM1CisgICAgMHgxLjBkZTgyZjUyOTMzM2EyMjNmZjU4Nzc0N2QxNDg2NTNjcC0xLAorICAgIDB4MS4yYzIzNGVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAtMHgxLjBkZTgyZjUyOTMzM2EyMjNmZjU4Nzc0N2QxNDg2NTNjcC0xLAorICAgIC0weDEuMmMyMzRlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM3CisgICAgMHgxLjFhNmM1ZDVhMjkxMjBlOTUyYjEwMzhlNTE3YTg2YTdhcC0xLAorICAgIDB4MS4zZGNiMDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzgKKyAgICAtMHgxLjFhNmM1ZDVhMjkxMjBlOTUyYjEwMzhlNTE3YTg2YTdhcC0xLAorICAgIC0weDEuM2RjYjA4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgMHgxLjI2NzhmOTE0MDU0ZDhmMjkzOTJiNmU0M2RhYTJmZTgycC0xLAorICAgIDB4MS40ZjcyYzJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDAKKyAgICAtMHgxLjI2NzhmOTE0MDU0ZDhmMjkzOTJiNmU0M2RhYTJmZTgycC0xLAorICAgIC0weDEuNGY3MmMycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLjMyMGRhODA0YTY2YjVhZWEwZTI1NzJmZTM5NzhlYWM4cC0xLAorICAgIDB4MS42MTFhN2NwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAtMHgxLjMyMGRhODA0YTY2YjVhZWEwZTI1NzJmZTM5NzhlYWM4cC0xLAorICAgIC0weDEuNjExYTdjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQzCisgICAgMHgxLjNkMmFhMmMzNzRjMTRlMGI2OGI2OWUxZjJhYWQ4ZGFlcC0xLAorICAgIDB4MS43MmMyMzZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAtMHgxLjNkMmFhMmMzNzRjMTRlMGI2OGI2OWUxZjJhYWQ4ZGFlcC0xLAorICAgIC0weDEuNzJjMjM2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgMHgxLjQ3ZDBhOTI0ZDE0ZTM0ZGIwZWM0NzYxYjBkZjc2NDZkcC0xLAorICAgIDB4MS44NDY5ZjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAtMHgxLjQ3ZDBhOTI0ZDE0ZTM0ZGIwZWM0NzYxYjBkZjc2NDZkcC0xLAorICAgIC0weDEuODQ2OWYwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLjUyMDBmNWVlYjc0Mjc1ZmE3OTY1NzcwOGQ1YjA3OGI2cC0xLAorICAgIDB4MS45NjExYWFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAtMHgxLjUyMDBmNWVlYjc0Mjc1ZmE3OTY1NzcwOGQ1YjA3OGI2cC0xLAorICAgIC0weDEuOTYxMWFhcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLjViYmQzMjU2OTAxM2YxM2Y4NmQ4YTBmMWVmNjA0YzFkcC0xLAorICAgIDB4MS5hN2I5NjRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAtMHgxLjViYmQzMjU2OTAxM2YxM2Y4NmQ4YTBmMWVmNjA0YzFkcC0xLAorICAgIC0weDEuYTdiOTY0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjUxCisgICAgMHgxLjY1MDc2OTgwMzAzNGU3ZDc5ZmZhYTQ0YjBjYzM5NDM3cC0xLAorICAgIDB4MS5iOTYxMWVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAtMHgxLjY1MDc2OTgwMzAzNGU3ZDc5ZmZhYTQ0YjBjYzM5NDM3cC0xLAorICAgIC0weDEuYjk2MTFlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjUzCisgICAgMHgxLjZkZTFmYzJlYzFjNjcyMmY5ZGUwNDViYjFhOTRiOTE5cC0xLAorICAgIDB4MS5jYjA4ZDhwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTQKKyAgICAtMHgxLjZkZTFmYzJlYzFjNjcyMmY5ZGUwNDViYjFhOTRiOTE5cC0xLAorICAgIC0weDEuY2IwOGQ4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMHgxLjc2NGY5NGQwZmIyODY2MTI5Zjc3MGYzMDhmYTBiYTg1cC0xLAorICAgIDB4MS5kY2IwOTJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTYKKyAgICAtMHgxLjc2NGY5NGQwZmIyODY2MTI5Zjc3MGYzMDhmYTBiYTg1cC0xLAorICAgIC0weDEuZGNiMDkycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLjdlNTMxYzBhYTU5NGMyNzVkZjMwYzViODQ1MWJiYTUzcC0xLAorICAgIDB4MS5lZTU4NGNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAtMHgxLjdlNTMxYzBhYTU5NGMyNzVkZjMwYzViODQ1MWJiYTUzcC0xLAorICAgIC0weDEuZWU1ODRjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLjg1ZWZhYjUxNGYzOTQ1NTg2MzJiZTI5M2M0Mjc0ZmU2cC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIC0weDEuODVlZmFiNTE0ZjM5NDU1ODYzMmJlMjkzYzQyNzRmZTZwLTEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEucDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI2MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5wMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4wZDc5NDRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjBkNzk0NHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjFhZjI4OHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuMWFmMjg4cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI2NworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMjg2YmNjcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI2OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS4yODZiY2NwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS4zNWU1MTBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjcwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjM1ZTUxMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjQzNWU1NHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzIKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNDM1ZTU0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNTBkNzk4cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI3NAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS41MGQ3OThwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS41ZTUwZGNwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjVlNTBkY3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjZiY2EyMHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNmJjYTIwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI3OQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNzk0MzY0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS43OTQzNjRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjgxCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS44NmJjYThwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjgyCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjg2YmNhOHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjk0MzVlY3AxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuOTQzNWVjcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuYTFhZjMwcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI4NgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5hMWFmMzBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5hZjI4NzRwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmFmMjg3NHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmJjYTFiOHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTAKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuYmNhMWI4cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI5MQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuY2ExYWZjcDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI5MgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5jYTFhZmNwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5kNzk0NDBwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmQ3OTQ0MHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmU1MGQ4NHAxMDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZTUwZDg0cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZjI4NmM4cDEwMAorICB9LAorICB7IC8vIEVudHJ5IDI5OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mMjg2YzhwMTAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk5CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS5wMTAxCisgIH0sCisgIHsgLy8gRW50cnkgMzAwCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnAxMDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDEKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDMKKyAgICAwLjAsCisgICAgMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMC4wZiwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAtMC4wZiwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMzA2CisgICAgMHgxLmQ5MzUzYmUyYmY2N2RmMTMxZjdkZjBlMzM3YWY0Y2E5cC0yLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAtMHgxLmQ5MzUzYmUyYmY2N2RmMTMxZjdkZjBlMzM3YWY0Y2E5cC0yLAorICAgIC0weDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgMHgxLmQ5MzUzZDc1NjhhZjM2NTEyOGVlMjFjNjViMDhkM2E3cC0yLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDkKKyAgICAtMHgxLmQ5MzUzZDc1NjhhZjM2NTEyOGVlMjFjNjViMDhkM2E3cC0yLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMHgxLmQ5MzU0MDlhYmIzYmI2OTI1YTIxZWMxYWI0OTQ1MjExcC0yLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAtMHgxLmQ5MzU0MDlhYmIzYmI2OTI1YTIxZWMxYWI0OTQ1MjExcC0yLAorICAgIC0weDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzEyCisgICAgMHgxLmZmZmZmYTdmYzdiMWY2YmMyZTJjZGRlMTU0MGYwNDcwcC0yLAorICAgIDB4MS4xOTNlYTRwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAtMHgxLmZmZmZmYTdmYzdiMWY2YmMyZTJjZGRlMTU0MGYwNDcwcC0yLAorICAgIC0weDEuMTkzZWE0cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMHgxLmZmZmZmZDdmYzdiNWY2ZjQ3NWM1OTRmNDVhZGM5YmU1cC0yLAorICAgIDB4MS4xOTNlYTZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTUKKyAgICAtMHgxLmZmZmZmZDdmYzdiNWY2ZjQ3NWM1OTRmNDVhZGM5YmU1cC0yLAorICAgIC0weDEuMTkzZWE2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE2CisgICAgMHgxLjAwMDAwMDNmZTNkYjdiOTY1ZjRmMzQxOTJiODE4YjY0cC0xLAorICAgIDB4MS4xOTNlYThwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAtMHgxLjAwMDAwMDNmZTNkYjdiOTY1ZjRmMzQxOTJiODE4YjY0cC0xLAorICAgIC0weDEuMTkzZWE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzE4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmE0MjJlMTkwNWUxZjUwOGVlcC0xLAorICAgIDB4MS41ZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmYTQyMmUxOTA1ZTFmNTA4ZWVwLTEsCisgICAgLTB4MS41ZmZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZhNDIyZjg4N2EyZGM1MDUwY3AtMSwKKyAgICAweDEuNjBwNAorICB9LAorICB7IC8vIEVudHJ5IDMyMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmYTQyMmY4ODdhMmRjNTA1MGNwLTEsCisgICAgLTB4MS42MHA0CisgIH0sCisgIHsgLy8gRW50cnkgMzIyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmE0MjMwZjdlZTFkYjdmOWIzcC0xLAorICAgIDB4MS42MDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDMyMworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmYTQyMzBmN2VlMWRiN2Y5YjNwLTEsCisgICAgLTB4MS42MDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIC0weDEuMzMzMzMzM2RhYmMzM2IxOWFkMmMwMDhhM2Y3ZDQxNDRwLTEsCisgICAgLTB4MS42MmU0MzBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAweDEuMzMzMzMzM2RhYmMzM2IxOWFkMmMwMDhhM2Y3ZDQxNDRwLTEsCisgICAgMHgxLjYyZTQzMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyNgorICAgIC0weDEuMzMzMzMxZjVmZGFlMDgyZDZjNjkzMDJhZjcwZjFhYjJwLTEsCisgICAgLTB4MS42MmU0MmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEuMzMzMzMxZjVmZGFlMDgyZDZjNjkzMDJhZjcwZjFhYjJwLTEsCisgICAgMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyOAorICAgIC0weDEuMzMzMzMwYWU0Zjk3NGMwOWRmYWNmNmZkMzFhNmEyMmFwLTEsCisgICAgLTB4MS42MmU0MmNwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAweDEuMzMzMzMwYWU0Zjk3NGMwOWRmYWNmNmZkMzFhNmEyMmFwLTEsCisgICAgMHgxLjYyZTQyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDMzMAorICAgIC0weDEuNTU1NTU1NjNlMDU2NDQxMDFhNzU0ZjFiOTg5YmY1ZTBwLTIsCisgICAgLTB4MS42MmU0MzBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzEKKyAgICAweDEuNTU1NTU1NjNlMDU2NDQxMDFhNzU0ZjFiOTg5YmY1ZTBwLTIsCisgICAgMHgxLjYyZTQzMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDMzMgorICAgIC0weDEuNTU1NTUzOWNjM2U0MzVmMjk2MWUzODI0MGJjNzNhYTRwLTIsCisgICAgLTB4MS42MmU0MmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzMKKyAgICAweDEuNTU1NTUzOWNjM2U0MzVmMjk2MWUzODI0MGJjNzNhYTRwLTIsCisgICAgMHgxLjYyZTQyZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDMzNAorICAgIC0weDEuNTU1NTUxZDVhNzcxOTAyMGVjNmNmMmQ3NjU4ZDBhYzhwLTIsCisgICAgLTB4MS42MmU0MmNwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzUKKyAgICAweDEuNTU1NTUxZDVhNzcxOTAyMGVjNmNmMmQ3NjU4ZDBhYzhwLTIsCisgICAgMHgxLjYyZTQyY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDMzNgorICAgIC0weDEuNWY2MTk5OTBhNTQ5MjA1MmZmZTU3NDk3YTlhYmQyOThwLTMsCisgICAgLTB4MS42MmU0MzBwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzcKKyAgICAweDEuNWY2MTk5OTBhNTQ5MjA1MmZmZTU3NDk3YTlhYmQyOThwLTMsCisgICAgMHgxLjYyZTQzMHAtMworICB9LAorICB7IC8vIEVudHJ5IDMzOAorICAgIC0weDEuNWY2MTk3OWZiN2FmNGQ4NTZkZWY5OGVkZTg1MjA1OTZwLTMsCisgICAgLTB4MS42MmU0MmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMzkKKyAgICAweDEuNWY2MTk3OWZiN2FmNGQ4NTZkZWY5OGVkZTg1MjA1OTZwLTMsCisgICAgMHgxLjYyZTQyZXAtMworICB9LAorICB7IC8vIEVudHJ5IDM0MAorICAgIC0weDEuNWY2MTk1YWVjYTE1NTAxNmE4OTNkMTQwODhmZDRiYTVwLTMsCisgICAgLTB4MS42MmU0MmNwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDEKKyAgICAweDEuNWY2MTk1YWVjYTE1NTAxNmE4OTNkMTQwODhmZDRiYTVwLTMsCisgICAgMHgxLjYyZTQyY3AtMworICB9LAorICB7IC8vIEVudHJ5IDM0MgorICAgIC0weDEuNjIwMTg1ZjU5ZjJiZWFlZmU1ZjFmZjUzMmM2MTg1ZTlwLTQsCisgICAgLTB4MS42MmU0MzBwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDMKKyAgICAweDEuNjIwMTg1ZjU5ZjJiZWFlZmU1ZjFmZjUzMmM2MTg1ZTlwLTQsCisgICAgMHgxLjYyZTQzMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM0NAorICAgIC0weDEuNjIwMTgzZjk3MjNjNTI2ZGIwMTU4MWIwMzI4OWUwZjhwLTQsCisgICAgLTB4MS42MmU0MmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDUKKyAgICAweDEuNjIwMTgzZjk3MjNjNTI2ZGIwMTU4MWIwMzI4OWUwZjhwLTQsCisgICAgMHgxLjYyZTQyZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDM0NgorICAgIC0weDEuNjIwMTgxZmQ0NTRjYWVmMDk1YTMwNWJjNGJmYTVmOGNwLTQsCisgICAgLTB4MS42MmU0MmNwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDcKKyAgICAweDEuNjIwMTgxZmQ0NTRjYWVmMDk1YTMwNWJjNGJmYTVmOGNwLTQsCisgICAgMHgxLjYyZTQyY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDM0OAorICAgIC0weDEuNjJhYjY0ZDg2YWIxYzQxZDQzMjU5OGYxYTcwMTZjMTZwLTUsCisgICAgLTB4MS42MmU0MzBwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNDkKKyAgICAweDEuNjJhYjY0ZDg2YWIxYzQxZDQzMjU5OGYxYTcwMTZjMTZwLTUsCisgICAgMHgxLjYyZTQzMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDM1MAorICAgIC0weDEuNjJhYjYyZDk2MDYwZmQ4ZTc1ZTdjYjE2YzNjZDBmN2JwLTUsCisgICAgLTB4MS42MmU0MmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTEKKyAgICAweDEuNjJhYjYyZDk2MDYwZmQ4ZTc1ZTdjYjE2YzNjZDBmN2JwLTUsCisgICAgMHgxLjYyZTQyZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDM1MgorICAgIC0weDEuNjJhYjYwZGE1NjEwMzQzYmE2NDUxMGU4NDRjODdlZDRwLTUsCisgICAgLTB4MS42MmU0MmNwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTMKKyAgICAweDEuNjJhYjYwZGE1NjEwMzQzYmE2NDUxMGU4NDRjODdlZDRwLTUsCisgICAgMHgxLjYyZTQyY3AtNQorICB9LAorICB7IC8vIEVudHJ5IDM1NAorICAgIC0weDEuNjJkNWZiMmE0ZTA3NDZiMjY0YmJkM2U0NTFjNDY1ZDRwLTYsCisgICAgLTB4MS42MmU0MzBwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTUKKyAgICAweDEuNjJkNWZiMmE0ZTA3NDZiMjY0YmJkM2U0NTFjNDY1ZDRwLTYsCisgICAgMHgxLjYyZTQzMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDM1NgorICAgIC0weDEuNjJkNWY5MmE4YjgxZDYwOTU3MzdjZTFhOTQ5YWM0YmVwLTYsCisgICAgLTB4MS42MmU0MmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTcKKyAgICAweDEuNjJkNWY5MmE4YjgxZDYwOTU3MzdjZTFhOTQ5YWM0YmVwLTYsCisgICAgMHgxLjYyZTQyZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDM1OAorICAgIC0weDEuNjJkNWY3MmFjOGZjNjRhZWY0MDRlYTJkZDdkYjU3YTZwLTYsCisgICAgLTB4MS42MmU0MmNwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNTkKKyAgICAweDEuNjJkNWY3MmFjOGZjNjRhZWY0MDRlYTJkZDdkYjU3YTZwLTYsCisgICAgMHgxLjYyZTQyY3AtNgorICB9LAorICB7IC8vIEVudHJ5IDM2MAorICAgIDB4MS42MmQ1ZjcyYWM4ZmM2NGFlZjQwNGVhMmRkN2RiNTdhNnAtNiwKKyAgICAweDEuNjJlNDJjcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzYxCisgICAgLTB4MS42MmQ1ZjcyYWM4ZmM2NGFlZjQwNGVhMmRkN2RiNTdhNnAtNiwKKyAgICAtMHgxLjYyZTQyY3AtNgorICB9LAorICB7IC8vIEVudHJ5IDM2MgorICAgIDB4MS42MmQ1ZjkyYThiODFkNjA5NTczN2NlMWE5NDlhYzRiZXAtNiwKKyAgICAweDEuNjJlNDJlcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzYzCisgICAgLTB4MS42MmQ1ZjkyYThiODFkNjA5NTczN2NlMWE5NDlhYzRiZXAtNiwKKyAgICAtMHgxLjYyZTQyZXAtNgorICB9LAorICB7IC8vIEVudHJ5IDM2NAorICAgIDB4MS42MmQ1ZmIyYTRlMDc0NmIyNjRiYmQzZTQ1MWM0NjVkNHAtNiwKKyAgICAweDEuNjJlNDMwcC02CisgIH0sCisgIHsgLy8gRW50cnkgMzY1CisgICAgLTB4MS42MmQ1ZmIyYTRlMDc0NmIyNjRiYmQzZTQ1MWM0NjVkNHAtNiwKKyAgICAtMHgxLjYyZTQzMHAtNgorICB9LAorICB7IC8vIEVudHJ5IDM2NgorICAgIDB4MS42MmFiNjBkYTU2MTAzNDNiYTY0NTEwZTg0NGM4N2VkNHAtNSwKKyAgICAweDEuNjJlNDJjcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzY3CisgICAgLTB4MS42MmFiNjBkYTU2MTAzNDNiYTY0NTEwZTg0NGM4N2VkNHAtNSwKKyAgICAtMHgxLjYyZTQyY3AtNQorICB9LAorICB7IC8vIEVudHJ5IDM2OAorICAgIDB4MS42MmFiNjJkOTYwNjBmZDhlNzVlN2NiMTZjM2NkMGY3YnAtNSwKKyAgICAweDEuNjJlNDJlcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzY5CisgICAgLTB4MS42MmFiNjJkOTYwNjBmZDhlNzVlN2NiMTZjM2NkMGY3YnAtNSwKKyAgICAtMHgxLjYyZTQyZXAtNQorICB9LAorICB7IC8vIEVudHJ5IDM3MAorICAgIDB4MS42MmFiNjRkODZhYjFjNDFkNDMyNTk4ZjFhNzAxNmMxNnAtNSwKKyAgICAweDEuNjJlNDMwcC01CisgIH0sCisgIHsgLy8gRW50cnkgMzcxCisgICAgLTB4MS42MmFiNjRkODZhYjFjNDFkNDMyNTk4ZjFhNzAxNmMxNnAtNSwKKyAgICAtMHgxLjYyZTQzMHAtNQorICB9LAorICB7IC8vIEVudHJ5IDM3MgorICAgIDB4MS42MjAxODFmZDQ1NGNhZWYwOTVhMzA1YmM0YmZhNWY4Y3AtNCwKKyAgICAweDEuNjJlNDJjcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzczCisgICAgLTB4MS42MjAxODFmZDQ1NGNhZWYwOTVhMzA1YmM0YmZhNWY4Y3AtNCwKKyAgICAtMHgxLjYyZTQyY3AtNAorICB9LAorICB7IC8vIEVudHJ5IDM3NAorICAgIDB4MS42MjAxODNmOTcyM2M1MjZkYjAxNTgxYjAzMjg5ZTBmOHAtNCwKKyAgICAweDEuNjJlNDJlcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzc1CisgICAgLTB4MS42MjAxODNmOTcyM2M1MjZkYjAxNTgxYjAzMjg5ZTBmOHAtNCwKKyAgICAtMHgxLjYyZTQyZXAtNAorICB9LAorICB7IC8vIEVudHJ5IDM3NgorICAgIDB4MS42MjAxODVmNTlmMmJlYWVmZTVmMWZmNTMyYzYxODVlOXAtNCwKKyAgICAweDEuNjJlNDMwcC00CisgIH0sCisgIHsgLy8gRW50cnkgMzc3CisgICAgLTB4MS42MjAxODVmNTlmMmJlYWVmZTVmMWZmNTMyYzYxODVlOXAtNCwKKyAgICAtMHgxLjYyZTQzMHAtNAorICB9LAorICB7IC8vIEVudHJ5IDM3OAorICAgIDB4MS41ZjYxOTVhZWNhMTU1MDE2YTg5M2QxNDA4OGZkNGJhNXAtMywKKyAgICAweDEuNjJlNDJjcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzc5CisgICAgLTB4MS41ZjYxOTVhZWNhMTU1MDE2YTg5M2QxNDA4OGZkNGJhNXAtMywKKyAgICAtMHgxLjYyZTQyY3AtMworICB9LAorICB7IC8vIEVudHJ5IDM4MAorICAgIDB4MS41ZjYxOTc5ZmI3YWY0ZDg1NmRlZjk4ZWRlODUyMDU5NnAtMywKKyAgICAweDEuNjJlNDJlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzgxCisgICAgLTB4MS41ZjYxOTc5ZmI3YWY0ZDg1NmRlZjk4ZWRlODUyMDU5NnAtMywKKyAgICAtMHgxLjYyZTQyZXAtMworICB9LAorICB7IC8vIEVudHJ5IDM4MgorICAgIDB4MS41ZjYxOTk5MGE1NDkyMDUyZmZlNTc0OTdhOWFiZDI5OHAtMywKKyAgICAweDEuNjJlNDMwcC0zCisgIH0sCisgIHsgLy8gRW50cnkgMzgzCisgICAgLTB4MS41ZjYxOTk5MGE1NDkyMDUyZmZlNTc0OTdhOWFiZDI5OHAtMywKKyAgICAtMHgxLjYyZTQzMHAtMworICB9LAorICB7IC8vIEVudHJ5IDM4NAorICAgIDB4MS41NTU1NTFkNWE3NzE5MDIwZWM2Y2YyZDc2NThkMGFjOHAtMiwKKyAgICAweDEuNjJlNDJjcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzg1CisgICAgLTB4MS41NTU1NTFkNWE3NzE5MDIwZWM2Y2YyZDc2NThkMGFjOHAtMiwKKyAgICAtMHgxLjYyZTQyY3AtMgorICB9LAorICB7IC8vIEVudHJ5IDM4NgorICAgIDB4MS41NTU1NTM5Y2MzZTQzNWYyOTYxZTM4MjQwYmM3M2FhNHAtMiwKKyAgICAweDEuNjJlNDJlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzg3CisgICAgLTB4MS41NTU1NTM5Y2MzZTQzNWYyOTYxZTM4MjQwYmM3M2FhNHAtMiwKKyAgICAtMHgxLjYyZTQyZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDM4OAorICAgIDB4MS41NTU1NTU2M2UwNTY0NDEwMWE3NTRmMWI5ODliZjVlMHAtMiwKKyAgICAweDEuNjJlNDMwcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzg5CisgICAgLTB4MS41NTU1NTU2M2UwNTY0NDEwMWE3NTRmMWI5ODliZjVlMHAtMiwKKyAgICAtMHgxLjYyZTQzMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDM5MAorICAgIDB4MS4zMzMzMzBhZTRmOTc0YzA5ZGZhY2Y2ZmQzMWE2YTIyYXAtMSwKKyAgICAweDEuNjJlNDJjcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzkxCisgICAgLTB4MS4zMzMzMzBhZTRmOTc0YzA5ZGZhY2Y2ZmQzMWE2YTIyYXAtMSwKKyAgICAtMHgxLjYyZTQyY3AtMQorICB9LAorICB7IC8vIEVudHJ5IDM5MgorICAgIDB4MS4zMzMzMzFmNWZkYWUwODJkNmM2OTMwMmFmNzBmMWFiMnAtMSwKKyAgICAweDEuNjJlNDJlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzkzCisgICAgLTB4MS4zMzMzMzFmNWZkYWUwODJkNmM2OTMwMmFmNzBmMWFiMnAtMSwKKyAgICAtMHgxLjYyZTQyZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5NAorICAgIDB4MS4zMzMzMzMzZGFiYzMzYjE5YWQyYzAwOGEzZjdkNDE0NHAtMSwKKyAgICAweDEuNjJlNDMwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzk1CisgICAgLTB4MS4zMzMzMzMzZGFiYzMzYjE5YWQyYzAwOGEzZjdkNDE0NHAtMSwKKyAgICAtMHgxLjYyZTQzMHAtMQorICB9LAorICB7IC8vIEVudHJ5IDM5NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNjJlNDJjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTcKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNjJlNDJjcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOTgKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjYyZTQyZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMzk5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjYyZTQyZXA2CisgIH0sCisgIHsgLy8gRW50cnkgNDAwCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS42MmU0MzBwNgorICB9LAorICB7IC8vIEVudHJ5IDQwMQorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS42MmU0MzBwNgorICB9LAorICB7IC8vIEVudHJ5IDQwMgorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS45ZDFkYTJwNgorICB9LAorICB7IC8vIEVudHJ5IDQwMworICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuOWQxZGEycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuOWQxZGEwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDUKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjlkMWRhMHA2CisgIH0sCisgIHsgLy8gRW50cnkgNDA2CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjlkMWQ5ZXA2CisgIH0sCisgIHsgLy8gRW50cnkgNDA3CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS45ZDFkOWVwNgorICB9LAorICB7IC8vIEVudHJ5IDQwOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNjVhOWY2cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MDkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNjVhOWY2cDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjY1YTlmOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNDExCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjY1YTlmOHA2CisgIH0sCisgIHsgLy8gRW50cnkgNDEyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS42NWE5ZmFwNgorICB9LAorICB7IC8vIEVudHJ5IDQxMworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS42NWE5ZmFwNgorICB9LAorICB7IC8vIEVudHJ5IDQxNAorICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS42MmU0MzBwNgorICB9LAorICB7IC8vIEVudHJ5IDQxNQorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuNjJlNDMwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTYKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuNjJlNDJlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MTcKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLjYyZTQyZXA2CisgIH0sCisgIHsgLy8gRW50cnkgNDE4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjYyZTQyY3A2CisgIH0sCisgIHsgLy8gRW50cnkgNDE5CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIDB4MS42MmU0MmNwNgorICB9LAorICB7IC8vIEVudHJ5IDQyMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgNDIxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZXA2MgorICB9LAorICB7IC8vIEVudHJ5IDQyMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgNDIzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnA2MworICB9LAorICB7IC8vIEVudHJ5IDQyNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgNDI1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMnA2MworICB9LAorICB7IC8vIEVudHJ5IDQyNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZlcDI2CisgIH0sCisgIHsgLy8gRW50cnkgNDI3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZXAyNgorICB9LAorICB7IC8vIEVudHJ5IDQyOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEucDI3CisgIH0sCisgIHsgLy8gRW50cnkgNDI5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnAyNworICB9LAorICB7IC8vIEVudHJ5IDQzMAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAycDI3CisgIH0sCisgIHsgLy8gRW50cnkgNDMxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMnAyNworICB9LAorICB7IC8vIEVudHJ5IDQzMgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZlcDIzCisgIH0sCisgIHsgLy8gRW50cnkgNDMzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDQzNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEucDI0CisgIH0sCisgIHsgLy8gRW50cnkgNDM1CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDQzNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuMDAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgNDM3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLjAwMDAwMnAyNAorICB9LAorICB7IC8vIEVudHJ5IDQzOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2QyYzRhNjRkMHAtMSwKKyAgICAweDEuZmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MzkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjZDJjNGE2NGQwcC0xLAorICAgIC0weDEuZmZmZmZlcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNkMmM1NzE5YmNwLTEsCisgICAgMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNDQxCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2QyYzU3MTliY3AtMSwKKyAgICAtMHgxLnA1CisgIH0sCisgIHsgLy8gRW50cnkgNDQyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjZDJjNzA4MzhhcC0xLAorICAgIDB4MS4wMDAwMDJwNQorICB9LAorICB7IC8vIEVudHJ5IDQ0MworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNkMmM3MDgzOGFwLTEsCisgICAgLTB4MS4wMDAwMDJwNQorICB9LAorICB7IC8vIEVudHJ5IDQ0NAorICAgIDB4MS5mZmZmZmZmZmZmZjFiZGNiYmMwOGUyMDQ0ODMyYmJmZXAtMSwKKyAgICAweDEuZmZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDUKKyAgICAtMHgxLmZmZmZmZmZmZmZmMWJkY2JiYzA4ZTIwNDQ4MzJiYmZlcC0xLAorICAgIC0weDEuZmZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NDYKKyAgICAweDEuZmZmZmZmZmZmZmYxYmRjZDg0NGY0ZGZlYzQ5NDE5NDNwLTEsCisgICAgMHgxLnA0CisgIH0sCisgIHsgLy8gRW50cnkgNDQ3CisgICAgLTB4MS5mZmZmZmZmZmZmZjFiZGNkODQ0ZjRkZmVjNDk0MTk0M3AtMSwKKyAgICAtMHgxLnA0CisgIH0sCisgIHsgLy8gRW50cnkgNDQ4CisgICAgMHgxLmZmZmZmZmZmZmZmMWJkZDExNGRiN2FkOTY2YWJhNDBkcC0xLAorICAgIDB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDQ0OQorICAgIC0weDEuZmZmZmZmZmZmZmYxYmRkMTE0ZGI3YWQ5NjZhYmE0MGRwLTEsCisgICAgLTB4MS4wMDAwMDJwNAorICB9LAorICB7IC8vIEVudHJ5IDQ1MAorICAgIDB4MS5mZmZmZjg3MmE4YTZiMTIwMDNlZjMxN2M1NzYxNzY3NnAtMSwKKyAgICAweDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTEKKyAgICAtMHgxLmZmZmZmODcyYThhNmIxMjAwM2VmMzE3YzU3NjE3Njc2cC0xLAorICAgIC0weDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTIKKyAgICAweDEuZmZmZmY4NzJhOTFmODY5MGVlMGU2ZDNhZDhhZWU0NmJwLTEsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDUzCisgICAgLTB4MS5mZmZmZjg3MmE5MWY4NjkwZWUwZTZkM2FkOGFlZTQ2YnAtMSwKKyAgICAtMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgNDU0CisgICAgMHgxLmZmZmZmODcyYWExMTMxNWMxYTQ5M2M3NGI0MDdhYTZlcC0xLAorICAgIDB4MS4wMDAwMDJwMworICB9LAorICB7IC8vIEVudHJ5IDQ1NQorICAgIC0weDEuZmZmZmY4NzJhYTExMzE1YzFhNDkzYzc0YjQwN2FhNmVwLTEsCisgICAgLTB4MS4wMDAwMDJwMworICB9LAorICB7IC8vIEVudHJ5IDQ1NgorICAgIDB4MS5mZmE4MTcwNWUxYThiYmNiZjVhM2RjZjdjYjkzN2VmNnAtMSwKKyAgICAweDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTcKKyAgICAtMHgxLmZmYTgxNzA1ZTFhOGJiY2JmNWEzZGNmN2NiOTM3ZWY2cC0xLAorICAgIC0weDEuZmZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NTgKKyAgICAweDEuZmZhODE3MDhhMGI0MjE2ODU3MjQ2YzE5ZGM2MGFjYjhwLTEsCisgICAgMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDU5CisgICAgLTB4MS5mZmE4MTcwOGEwYjQyMTY4NTcyNDZjMTlkYzYwYWNiOHAtMSwKKyAgICAtMHgxLnAyCisgIH0sCisgIHsgLy8gRW50cnkgNDYwCisgICAgMHgxLmZmYTgxNzBlMWVjYWFhYzM1YjZkODFkNjgyODkxMTI2cC0xLAorICAgIDB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDQ2MQorICAgIC0weDEuZmZhODE3MGUxZWNhYWFjMzViNmQ4MWQ2ODI4OTExMjZwLTEsCisgICAgLTB4MS4wMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDQ2MgorICAgIDB4MS5lZDk1MDU5OTYzOGMxOGZlYzViZDgxMzViMzk3NmZhZnAtMSwKKyAgICAweDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjMKKyAgICAtMHgxLmVkOTUwNTk5NjM4YzE4ZmVjNWJkODEzNWIzOTc2ZmFmcC0xLAorICAgIC0weDEuZmZmZmZlcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NjQKKyAgICAweDEuZWQ5NTA1ZTFiYzNkM2QzM2M0MzJmYzNlODI1NWM4YjVwLTEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDY1CisgICAgLTB4MS5lZDk1MDVlMWJjM2QzZDMzYzQzMmZjM2U4MjU1YzhiNXAtMSwKKyAgICAtMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgNDY2CisgICAgMHgxLmVkOTUwNjcyNmQ5YzQwYjA0Y2YyNTU2MDczZTkwYWVjcC0xLAorICAgIDB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ2NworICAgIC0weDEuZWQ5NTA2NzI2ZDljNDBiMDRjZjI1NTYwNzNlOTBhZWNwLTEsCisgICAgLTB4MS4wMDAwMDJwMQorICB9LAorICB7IC8vIEVudHJ5IDQ2OAorICAgIDB4MS44NWVmYWE3YTQ4NTgyNGNjOWY5OGY4ODY3NGMwOGI4M3AtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDY5CisgICAgLTB4MS44NWVmYWE3YTQ4NTgyNGNjOWY5OGY4ODY3NGMwOGI4M3AtMSwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDQ3MAorICAgIDB4MS44NWVmYWI1MTRmMzk0NTU4NjMyYmUyOTNjNDI3NGZlNnAtMSwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzEKKyAgICAtMHgxLjg1ZWZhYjUxNGYzOTQ1NTg2MzJiZTI5M2M0Mjc0ZmU2cC0xLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzIKKyAgICAweDEuODVlZmFjZmY1Y2Y3YWZkYmE0NDJiZTkyMTkwYjU1MWJwLTEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDczCisgICAgLTB4MS44NWVmYWNmZjVjZjdhZmRiYTQ0MmJlOTIxOTBiNTUxYnAtMSwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNDc0CisgICAgMHgxLmQ5MzUzYmUyYmY2N2RmMTMxZjdkZjBlMzM3YWY0Y2E5cC0yLAorICAgIDB4MS5mZmZmZmVwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzUKKyAgICAtMHgxLmQ5MzUzYmUyYmY2N2RmMTMxZjdkZjBlMzM3YWY0Y2E5cC0yLAorICAgIC0weDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDc2CisgICAgMHgxLmQ5MzUzZDc1NjhhZjM2NTEyOGVlMjFjNjViMDhkM2E3cC0yLAorICAgIDB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzcKKyAgICAtMHgxLmQ5MzUzZDc1NjhhZjM2NTEyOGVlMjFjNjViMDhkM2E3cC0yLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDc4CisgICAgMHgxLmQ5MzU0MDlhYmIzYmI2OTI1YTIxZWMxYWI0OTQ1MjExcC0yLAorICAgIDB4MS4wMDAwMDJwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NzkKKyAgICAtMHgxLmQ5MzU0MDlhYmIzYmI2OTI1YTIxZWMxYWI0OTQ1MjExcC0yLAorICAgIC0weDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgwCisgICAgMHgxLmY1OTdlODg4NTgyN2VlZDlkNzMzNjlmZWVjODQ4NDFkcC0zLAorICAgIDB4MS5mZmZmZmVwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODEKKyAgICAtMHgxLmY1OTdlODg4NTgyN2VlZDlkNzMzNjlmZWVjODQ4NDFkcC0zLAorICAgIC0weDEuZmZmZmZlcC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDgyCisgICAgMHgxLmY1OTdlYTY5YTFjODVmMTM1OGQ3MWQ4NDcyOWM4MGM4cC0zLAorICAgIDB4MS5wLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODMKKyAgICAtMHgxLmY1OTdlYTY5YTFjODVmMTM1OGQ3MWQ4NDcyOWM4MGM4cC0zLAorICAgIC0weDEucC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDg0CisgICAgMHgxLmY1OTdlZTJjMzUwODhlYjVkYTkyOGIyNzg1MjJmZGMwcC0zLAorICAgIDB4MS4wMDAwMDJwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODUKKyAgICAtMHgxLmY1OTdlZTJjMzUwODhlYjVkYTkyOGIyNzg1MjJmZGMwcC0zLAorICAgIC0weDEuMDAwMDAycC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDg2CisgICAgMHgxLmZkNTk5MGM0MzY1ZGU5OWIwOTM2MTk1NzNhZWQ1ZWVmcC00LAorICAgIDB4MS5mZmZmZmVwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODcKKyAgICAtMHgxLmZkNTk5MGM0MzY1ZGU5OWIwOTM2MTk1NzNhZWQ1ZWVmcC00LAorICAgIC0weDEuZmZmZmZlcC00CisgIH0sCisgIHsgLy8gRW50cnkgNDg4CisgICAgMHgxLmZkNTk5MmJjNGI4MzRmYzBhZjZhYzhlZmY3ZDgxMDQwcC00LAorICAgIDB4MS5wLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0ODkKKyAgICAtMHgxLmZkNTk5MmJjNGI4MzRmYzBhZjZhYzhlZmY3ZDgxMDQwcC00LAorICAgIC0weDEucC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDkwCisgICAgMHgxLmZkNTk5NmFjNzVjZGVkMDg5ZWJhMjI4NWQwMDM1YTI0cC00LAorICAgIDB4MS4wMDAwMDJwLTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTEKKyAgICAtMHgxLmZkNTk5NmFjNzVjZGVkMDg5ZWJhMjI4NWQwMDM1YTI0cC00LAorICAgIC0weDEuMDAwMDAycC0zCisgIH0sCisgIHsgLy8gRW50cnkgNDkyCisgICAgMHgxLmZmNTU5NzgwMDFiOGRhMGUwYWI0OTA0ZmE2NGI4ZDMycC01LAorICAgIDB4MS5mZmZmZmVwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTMKKyAgICAtMHgxLmZmNTU5NzgwMDFiOGRhMGUwYWI0OTA0ZmE2NGI4ZDMycC01LAorICAgIC0weDEuZmZmZmZlcC01CisgIH0sCisgIHsgLy8gRW50cnkgNDk0CisgICAgMHgxLmZmNTU5OTdlMDMwZDcwNTkzNTU5MmEzNjZhOGE2NmQ0cC01LAorICAgIDB4MS5wLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTUKKyAgICAtMHgxLmZmNTU5OTdlMDMwZDcwNTkzNTU5MmEzNjZhOGE2NmQ0cC01LAorICAgIC0weDEucC00CisgIH0sCisgIHsgLy8gRW50cnkgNDk2CisgICAgMHgxLmZmNTU5ZDdhMDViNjkwZmY3ZDBlNDExNGMwZWI3MmMxcC01LAorICAgIDB4MS4wMDAwMDJwLTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTcKKyAgICAtMHgxLmZmNTU5ZDdhMDViNjkwZmY3ZDBlNDExNGMwZWI3MmMxcC01LAorICAgIC0weDEuMDAwMDAycC00CisgIH0sCisgIHsgLy8gRW50cnkgNDk4CisgICAgMHgxLmZmZDU1Nzk5YWIwODhmYjMyNmU5YmExOGQwOTk3MjAzcC02LAorICAgIDB4MS5mZmZmZmVwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA0OTkKKyAgICAtMHgxLmZmZDU1Nzk5YWIwODhmYjMyNmU5YmExOGQwOTk3MjAzcC02LAorICAgIC0weDEuZmZmZmZlcC02CisgIH0sCisgIHsgLy8gRW50cnkgNTAwCisgICAgMHgxLmZmZDU1OTk5MmIxZGUyODMwNWZjMTczODIyMDUzOTJlcC02LAorICAgIDB4MS5wLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDEKKyAgICAtMHgxLmZmZDU1OTk5MmIxZGUyODMwNWZjMTczODIyMDUzOTJlcC02LAorICAgIC0weDEucC01CisgIH0sCisgIHsgLy8gRW50cnkgNTAyCisgICAgMHgxLmZmZDU1ZDk4MmI0ODg1MjNjM2U5NzU4MTI0ZTA2MjhicC02LAorICAgIDB4MS4wMDAwMDJwLTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDMKKyAgICAtMHgxLmZmZDU1ZDk4MmI0ODg1MjNjM2U5NzU4MTI0ZTA2MjhicC02LAorICAgIC0weDEuMDAwMDAycC01CisgIH0sCisgIHsgLy8gRW50cnkgNTA0CisgICAgMHgxLmZmZjU1Mzk5YjdkZTMzYzBkNGRhM2JmYmRjMjNhNWQ0cC03LAorICAgIDB4MS5mZmZmZmVwLTcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDUKKyAgICAtMHgxLmZmZjU1Mzk5YjdkZTMzYzBkNGRhM2JmYmRjMjNhNWQ0cC03LAorICAgIC0weDEuZmZmZmZlcC03CisgIH0sCisgIHsgLy8gRW50cnkgNTA2CisgICAgMHgxLmZmZjU1NTk5OTdkZjg5MmExMTI4NTc1ODQzZmMwZDUycC03LAorICAgIDB4MS5wLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDcKKyAgICAtMHgxLmZmZjU1NTk5OTdkZjg5MmExMTI4NTc1ODQzZmMwZDUycC03LAorICAgIC0weDEucC02CisgIH0sCisgIHsgLy8gRW50cnkgNTA4CisgICAgMHgxLmZmZjU1OTk5NTdlMjMzM2M5OWMzNzQ5MGVhZTI1YTVhcC03LAorICAgIDB4MS4wMDAwMDJwLTYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MDkKKyAgICAtMHgxLmZmZjU1OTk5NTdlMjMzM2M5OWMzNzQ5MGVhZTI1YTVhcC03LAorICAgIC0weDEuMDAwMDAycC02CisgIH0sCisgIHsgLy8gRW50cnkgNTEwCisgICAgMHgxLmZmZmZmZGY1NTU1NTc1OTk5OTc4NDI4YTM2MDQwMTZmcC0xNSwKKyAgICAweDEuZmZmZmZlcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDUxMQorICAgIC0weDEuZmZmZmZkZjU1NTU1NzU5OTk5Nzg0MjhhMzYwNDAxNmZwLTE1LAorICAgIC0weDEuZmZmZmZlcC0xNQorICB9LAorICB7IC8vIEVudHJ5IDUxMgorICAgIDB4MS5mZmZmZmZmNTU1NTU1NTk5OTk5OTk3ZGY3ZGY3ZWFiMHAtMTUsCisgICAgMHgxLnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTMKKyAgICAtMHgxLmZmZmZmZmY1NTU1NTU1OTk5OTk5OTdkZjdkZjdlYWIwcC0xNSwKKyAgICAtMHgxLnAtMTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTQKKyAgICAweDEuMDAwMDAxZmFhYWFhOGFjY2NjOGUyMTQ0ZWVlZmRlYTFwLTE0LAorICAgIDB4MS4wMDAwMDJwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgNTE1CisgICAgLTB4MS4wMDAwMDFmYWFhYWE4YWNjY2M4ZTIxNDRlZWVmZGVhMXAtMTQsCisgICAgLTB4MS4wMDAwMDJwLTE0CisgIH0sCisgIHsgLy8gRW50cnkgNTE2CisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZjU1NTU1NzU1NTU1MzU1NTk5cC0zMSwKKyAgICAweDEuZmZmZmZlcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDUxNworICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmNTU1NTU3NTU1NTUzNTU1OTlwLTMxLAorICAgIC0weDEuZmZmZmZlcC0zMQorICB9LAorICB7IC8vIEVudHJ5IDUxOAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmY1NTU1NTU1NTU1NTU1NTU5OXAtMzEsCisgICAgMHgxLnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MTkKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZjU1NTU1NTU1NTU1NTU1NTk5cC0zMSwKKyAgICAtMHgxLnAtMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjAKKyAgICAweDEuMDAwMDAxZmZmZmZmZmZmYWFhYWE4YWFhYWE2YWFhY2NwLTMwLAorICAgIDB4MS4wMDAwMDJwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgNTIxCisgICAgLTB4MS4wMDAwMDFmZmZmZmZmZmZhYWFhYThhYWFhYTZhYWFjY3AtMzAsCisgICAgLTB4MS4wMDAwMDJwLTMwCisgIH0sCisgIHsgLy8gRW50cnkgNTIyCisgICAgMHgxLmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZmZmQ1NTU1cC01NiwKKyAgICAweDEuZmZmZmZlcC01NgorICB9LAorICB7IC8vIEVudHJ5IDUyMworICAgIC0weDEuZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDU1NTVwLTU2LAorICAgIC0weDEuZmZmZmZlcC01NgorICB9LAorICB7IC8vIEVudHJ5IDUyNAorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkNTU1NXAtNTYsCisgICAgMHgxLnAtNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQ1NTU1cC01NiwKKyAgICAtMHgxLnAtNTUKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjYKKyAgICAweDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWFhYWFwLTU1LAorICAgIDB4MS4wMDAwMDJwLTU1CisgIH0sCisgIHsgLy8gRW50cnkgNTI3CisgICAgLTB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYWFhYXAtNTUsCisgICAgLTB4MS4wMDAwMDJwLTU1CisgIH0sCisgIHsgLy8gRW50cnkgNTI4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MjkKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzAKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzEKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDUzMgorICAgIDB4MS5wMCwKKyAgICBIVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzMKKyAgICAtMHgxLnAwLAorICAgIC1IVUdFX1ZBTEYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzQKKyAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MzUKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAorICAgIC0weDEuZmZmZmZlcDEyNworICB9LAorICB7IC8vIEVudHJ5IDUzNgorICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKKyAgICAweDEuZmZmZmZjcDEyNworICB9LAorICB7IC8vIEVudHJ5IDUzNworICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCisgICAgLTB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTM4CisgICAgMHgxLmZlMTc1ZmE4MjkyZGViM2Q4YzQxZGVlYzdjMmVlNDdjcC0xLAorICAgIDB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDUzOQorICAgIC0weDEuZmUxNzVmYTgyOTJkZWIzZDhjNDFkZWVjN2MyZWU0N2NwLTEsCisgICAgLTB4MS45MjFmYjZwMQorICB9LAorICB7IC8vIEVudHJ5IDU0MAorICAgIDB4MS5kNTk0ZmRlOWViNzAxMmMxMjFiNDI5MDA3ZWE3ODg0YXAtMSwKKyAgICAweDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDEKKyAgICAtMHgxLmQ1OTRmZGU5ZWI3MDEyYzEyMWI0MjkwMDdlYTc4ODRhcC0xLAorICAgIC0weDEuOTIxZmI2cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NDIKKyAgICAweDEuODVlZmFjZmY1Y2Y3YWZkYmE0NDJiZTkyMTkwYjU1MWJwLTEsCisgICAgMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQzCisgICAgLTB4MS44NWVmYWNmZjVjZjdhZmRiYTQ0MmJlOTIxOTBiNTUxYnAtMSwKKyAgICAtMHgxLjAwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTQ0CisgICAgMHgxLjg1ZWZhYjUxNGYzOTQ1NTg2MzJiZTI5M2M0Mjc0ZmU2cC0xLAorICAgIDB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU0NQorICAgIC0weDEuODVlZmFiNTE0ZjM5NDU1ODYzMmJlMjkzYzQyNzRmZTZwLTEsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDU0NgorICAgIDB4MS44NWVmYWE3YTQ4NTgyNGNjOWY5OGY4ODY3NGMwOGI4M3AtMSwKKyAgICAweDEuZmZmZmZlcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTQ3CisgICAgLTB4MS44NWVmYWE3YTQ4NTgyNGNjOWY5OGY4ODY3NGMwOGI4M3AtMSwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDU0OAorICAgIDB4MS40ZmM0NDI2NTZkMjA2YjIxZjZkY2QxMDhkNmE4OGFkN3AtMSwKKyAgICAweDEuOTIxZmI2cC0xCisgIH0sCisgIHsgLy8gRW50cnkgNTQ5CisgICAgLTB4MS40ZmM0NDI2NTZkMjA2YjIxZjZkY2QxMDhkNmE4OGFkN3AtMSwKKyAgICAtMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDU1MAorICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI2LAorICAgIDB4MS4wMDAwMDJwLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDU1MQorICAgIC0weDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNiwKKyAgICAtMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTUyCisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgMHgxLnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgNTUzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIC0weDEucC0xMjYKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTQKKyAgICAweDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NTUKKyAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCisgICAgLTB4MS5mZmZmZmNwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDU1NgorICAgIDB4MS5mZmZmZjdmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAorICAgIDB4MS5mZmZmZjhwLTEyNworICB9LAorICB7IC8vIEVudHJ5IDU1NworICAgIC0weDEuZmZmZmY3ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKKyAgICAtMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNTU4CisgICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xNDksCisgICAgMHgxLnAtMTQ4CisgIH0sCisgIHsgLy8gRW50cnkgNTU5CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTQ5LAorICAgIC0weDEucC0xNDgKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjAKKyAgICAwLjBmLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDU2MQorICAgIC0wLjBmLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NjIKKyAgICAwLjAsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDU2MworICAgIC0wLjAsCisgICAgLTAuMGYKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YS90cnVuY19pbnRlbF9kYXRhLmggYi90ZXN0cy9tYXRoX2RhdGEvdHJ1bmNfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRkM2EyZDgKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvdHJ1bmNfaW50ZWxfZGF0YS5oCkBAIC0wLDAgKzEsMTMzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKK3N0YXRpYyBkYXRhXzFfMV90PGRvdWJsZSwgZG91YmxlPiBnX3RydW5jX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEwNzQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxCisgICAgLTAuMCwKKyAgICAtMC4wCisgIH0sCisgIHsgLy8gRW50cnkgMgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA0CisgICAgMC4wLAorICAgIDB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNQorICAgIDAuMCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3CisgICAgMHgxLnAwLAorICAgIDB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA4CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLnAwLAorICAgIDB4MS43ZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMAorICAgIDB4MS5wMCwKKyAgICAweDEuOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEucDAsCisgICAgMHgxLjgwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDEyCisgICAgMHgxLnAwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMworICAgIDB4MS5wMSwKKyAgICAweDEuMHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEucDEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDE1CisgICAgMHgxLnAxLAorICAgIDB4MS4zZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNgorICAgIDB4MS5wMSwKKyAgICAweDEuNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMTcKKyAgICAweDEucDEsCisgICAgMHgxLjQwMDAwMDAwMDAwMDFwMQorICB9LAorICB7IC8vIEVudHJ5IDE4CisgICAgMHgxLjhjcDYsCisgICAgMHgxLjhmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjkwcDYsCisgICAgMHgxLjlwNgorICB9LAorICB7IC8vIEVudHJ5IDIwCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkxZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDIyCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkyMHA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTIwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuZjM4MHA5LAorICAgIDB4MS5mM2ZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNQorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDBwOQorICB9LAorICB7IC8vIEVudHJ5IDI2CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0MDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0M2ZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDI4CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0NHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjQ0MDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMzAKKyAgICAweDEuZmZmZmZmZmZmZmZmODBwNDksCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMQorICAgIDB4MS5wNTAsCisgICAgMHgxLjBwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMgorICAgIDB4MS5wNTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS5mZmZmZmZmZmZmZmZjMHA1MCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MAorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLnA1MSwKKyAgICAweDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDM1CisgICAgMHgxLnA1MSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1MQorICB9LAorICB7IC8vIEVudHJ5IDM2CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDUxLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgMzcKKyAgICAweDEucDUyLAorICAgIDB4MS4wcDUyCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNTIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA1MiwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA1MgorICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLnA1MywKKyAgICAweDEuMHA1MworICB9LAorICB7IC8vIEVudHJ5IDQxCisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDUzLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUzCisgIH0sCisgIHsgLy8gRW50cnkgNDIKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNTMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MworICAgIDB4MS5wNTQsCisgICAgMHgxLjBwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NAorICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA1NCwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA1NAorICB9LAorICB7IC8vIEVudHJ5IDQ1CisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDQ2CisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NworICAgIC0wLjAsCisgICAgLTB4MS4wcC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMgorICB9LAorICB7IC8vIEVudHJ5IDQ5CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDUwCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MgorICAgIC0weDEucDAsCisgICAgLTB4MS44MDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MworICAgIC0weDEucDAsCisgICAgLTB4MS44cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NAorICAgIC0weDEucDAsCisgICAgLTB4MS43ZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NQorICAgIC0weDEucDEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIC0weDEucDEsCisgICAgLTB4MS4wcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NworICAgIC0weDEucDAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OAorICAgIC0weDEucDEsCisgICAgLTB4MS40MDAwMDAwMDAwMDAxcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEucDEsCisgICAgLTB4MS40cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MAorICAgIC0weDEucDEsCisgICAgLTB4MS4zZmZmZmZmZmZmZmZmcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkwMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDYyCisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLjhjcDYsCisgICAgLTB4MS44ZmZmZmZmZmZmZmZmcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NAorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkyMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDY1CisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTIwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkxZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDY3CisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgNjgKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDBwOQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5mMzgwcDksCisgICAgLTB4MS5mM2ZmZmZmZmZmZmZmcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MAorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0NDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDcxCisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQ0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MgorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0M2ZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDczCisgICAgLTB4MS5wNTAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUwCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAtMHgxLnA1MCwKKyAgICAtMHgxLjBwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NQorICAgIC0weDEuZmZmZmZmZmZmZmZmODBwNDksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDQ5CisgIH0sCisgIHsgLy8gRW50cnkgNzYKKyAgICAtMHgxLnA1MSwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NworICAgIC0weDEucDUxLAorICAgIC0weDEuMHA1MQorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgLTB4MS5mZmZmZmZmZmZmZmZjMHA1MCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwNTIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUyCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAtMHgxLnA1MiwKKyAgICAtMHgxLjBwNTIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwNTEsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDUxCisgIH0sCisgIHsgLy8gRW50cnkgODIKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDUzLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MworICB9LAorICB7IC8vIEVudHJ5IDgzCisgICAgLTB4MS5wNTMsCisgICAgLTB4MS4wcDUzCisgIH0sCisgIHsgLy8gRW50cnkgODQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDUyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1MgorICB9LAorICB7IC8vIEVudHJ5IDg1CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA1NCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNTQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NgorICAgIC0weDEucDU0LAorICAgIC0weDEuMHA1NAorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA1MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNTMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDg5CisgICAgMHgxLmZmZmZmZmY4cDI5LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDI5CisgIH0sCisgIHsgLy8gRW50cnkgOTAKKyAgICAweDEucDMwLAorICAgIDB4MS4wcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEucDMwLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTIKKyAgICAweDEuZmZmZmZmZjRwMzAsCisgICAgMHgxLmZmZmZmZmY3ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MworICAgIDB4MS5mZmZmZmZmNHAzMCwKKyAgICAweDEuZmZmZmZmZjdmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDk0CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjgwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmY5ZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZjlmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmYTBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDAKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmZhMDAwMDFwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDEKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmZhMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDIKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmZiZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDMKKyAgICAweDEuZmZmZmZmZjhwMzAsCisgICAgMHgxLmZmZmZmZmZiZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMDQKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNQorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNgorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwMDAwMnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwNworICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmRmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOAorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmRmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEwOQorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmUwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmZTAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmZTAwMDAycDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLnAzMSwKKyAgICAweDEuMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDExNQorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTYKKyAgICAweDEucDMxLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLnAzMSwKKyAgICAweDEuMDAwMDAwMDBmZmZmZXAzMQorICB9LAorICB7IC8vIEVudHJ5IDExOAorICAgIDB4MS5wMzEsCisgICAgMHgxLjAwMDAwMDAwZmZmZmZwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMTkKKyAgICAweDEucDMxLAorICAgIDB4MS4wMDAwMDAwMTBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjAKKyAgICAweDEucDMxLAorICAgIDB4MS4wMDAwMDAwMTAwMDAxcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLnAzMSwKKyAgICAweDEuMDAwMDAwMDEwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEyMgorICAgIDB4MS5mZmZmZmZlMHAzMCwKKyAgICAweDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyMworICAgIDB4MS5mZmZmZmZlNHAzMCwKKyAgICAweDEuZmZmZmZmZTQwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLmZmZmZmZmU4cDMwLAorICAgIDB4MS5mZmZmZmZlODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjUKKyAgICAweDEuZmZmZmZmZWNwMzAsCisgICAgMHgxLmZmZmZmZmVjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyNgorICAgIDB4MS5mZmZmZmZmMHAzMCwKKyAgICAweDEuZmZmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEyNworICAgIDB4MS5mZmZmZmZmNHAzMCwKKyAgICAweDEuZmZmZmZmZjQwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLmZmZmZmZmY4cDMwLAorICAgIDB4MS5mZmZmZmZmODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMjkKKyAgICAweDEuZmZmZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmZmZjMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzMAorICAgIDB4MS5wMzEsCisgICAgMHgxLjBwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzEKKyAgICAweDEuMDAwMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMDAyMHAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzMgorICAgIC0weDEucDMwLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzMworICAgIC0weDEucDMwLAorICAgIC0weDEuMHAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIC0weDEuZmZmZmZmZjhwMjksCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDI5CisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmY4MDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZjgwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmODBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzgKKyAgICAtMHgxLmZmZmZmZmY0cDMwLAorICAgIC0weDEuZmZmZmZmZjdmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzOQorICAgIC0weDEuZmZmZmZmZjRwMzAsCisgICAgLTB4MS5mZmZmZmZmN2ZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQwCisgICAgLTB4MS5mZmZmZmZmOHAzMCwKKyAgICAtMHgxLmZmZmZmZmZhMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDEKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZmEwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0MgorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmYTBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDMKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZjlmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NAorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmOWZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ1CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZjMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDYKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmMwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0NworICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmYzBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAtMHgxLmZmZmZmZmY4cDMwLAorICAgIC0weDEuZmZmZmZmZmJmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0weDEuZmZmZmZmZjhwMzAsCisgICAgLTB4MS5mZmZmZmZmYmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZlMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmUwMDAwMXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmZTBwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTMKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmRmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDE1NAorICAgIC0weDEuZmZmZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmZmZGZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU1CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTU3CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTU4CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTkKKyAgICAtMHgxLmZmZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2MAorICAgIC0weDEucDMxLAorICAgIC0weDEuMDAwMDAwMDEwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0weDEucDMxLAorICAgIC0weDEuMDAwMDAwMDEwMDAwMXAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2MgorICAgIC0weDEucDMxLAorICAgIC0weDEuMDAwMDAwMDEwcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYzCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMGZmZmZmcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTY0CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMGZmZmZlcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAtMHgxLmZmZmZmZmUwcDMwLAorICAgIC0weDEuZmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEuZmZmZmZmZTBwMzAsCisgICAgLTB4MS5mZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgLTB4MS5mZmZmZmZlMHAzMCwKKyAgICAtMHgxLmZmZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuZmZmZmZmZmZmZmZmZTBwNjEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwNjEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAweDEucDYyLAorICAgIDB4MS4wcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTc4CisgICAgMHgxLjAwMDAwMDAwMDAwMDEwcDYyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTc5CisgICAgMHgxLjAwMDAwMDAwMDAwMDIwcDYyLAorICAgIDB4MS4wMDAwMDAwMDAwMDAycDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTgwCisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDYyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTgxCisgICAgMHgxLmZmZmZmZmZmZmZmZmYwcDYyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTgyCisgICAgMHgxLnA2MywKKyAgICAweDEuMHA2MworICB9LAorICB7IC8vIEVudHJ5IDE4MworICAgIDB4MS4wMDAwMDAwMDAwMDAxMHA2MywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2MworICB9LAorICB7IC8vIEVudHJ5IDE4NAorICAgIDB4MS4wMDAwMDAwMDAwMDAyMHA2MywKKyAgICAweDEuMDAwMDAwMDAwMDAwMnA2MworICB9LAorICB7IC8vIEVudHJ5IDE4NQorICAgIDB4MS5mZmZmZmZmZmZmZmZlMHA2MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZXA2MworICB9LAorICB7IC8vIEVudHJ5IDE4NgorICAgIDB4MS5mZmZmZmZmZmZmZmZmMHA2MywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA2MworICB9LAorICB7IC8vIEVudHJ5IDE4NworICAgIDB4MS5wNjQsCisgICAgMHgxLjBwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuMDAwMDAwMDAwMDAwMTBwNjQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAweDEuMDAwMDAwMDAwMDAwMjBwNjQsCisgICAgMHgxLjAwMDAwMDAwMDAwMDJwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDIwcDYyLAorICAgIC0weDEuMDAwMDAwMDAwMDAwMnA2MgorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuMDAwMDAwMDAwMDAwMTBwNjIsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgLTB4MS5wNjIsCisgICAgLTB4MS4wcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTkzCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHA2MSwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTQKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcDYxLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZXA2MQorICB9LAorICB7IC8vIEVudHJ5IDE5NQorICAgIC0weDEuMDAwMDAwMDAwMDAwMjBwNjMsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAycDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTk2CisgICAgLTB4MS4wMDAwMDAwMDAwMDAxMHA2MywKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTcKKyAgICAtMHgxLnA2MywKKyAgICAtMHgxLjBwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTgKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmYwcDYyLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2MgorICB9LAorICB7IC8vIEVudHJ5IDE5OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwNjIsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjAwCisgICAgLTB4MS4wMDAwMDAwMDAwMDAyMHA2NCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDJwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDEKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcDY0LAorICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2NAorICB9LAorICB7IC8vIEVudHJ5IDIwMgorICAgIC0weDEucDY0LAorICAgIC0weDEuMHA2NAorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0weDEuZmZmZmZmZmZmZmZmZjBwNjMsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZmcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgLTB4MS5mZmZmZmZmZmZmZmZlMHA2MywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEucDYyLAorICAgIDB4MS4wcDYyCisgIH0sCisgIHsgLy8gRW50cnkgMjA2CisgICAgMHgxLnA2MywKKyAgICAweDEuMHA2MworICB9LAorICB7IC8vIEVudHJ5IDIwNworICAgIC0weDEucDYyLAorICAgIC0weDEuMHA2MgorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIC0weDEucDYzLAorICAgIC0weDEuMHA2MworICB9LAorICB7IC8vIEVudHJ5IDIwOQorICAgIDB4MS5mZmZmZmZmOHAzMCwKKyAgICAweDEuZmZmZmZmZmJmZmZmZnAzMAorICB9LAorICB7IC8vIEVudHJ5IDIxMAorICAgIDB4MS5mZmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZmZmMwcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLmZmZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmZmYzAwMDAxcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMjEzCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS4wcDMxCisgIH0sCisgIHsgLy8gRW50cnkgMjE0CisgICAgLTB4MS5mZmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTUKKyAgICAweDEuODBwMSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLnAyLAorICAgIDB4MS4wcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTcKKyAgICAweDEucDIsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDIxOAorICAgIDB4MS5jMHAyLAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAweDEucDMsCisgICAgMHgxLjBwMworICB9LAorICB7IC8vIEVudHJ5IDIyMAorICAgIDB4MS5wMywKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAzCisgIH0sCisgIHsgLy8gRW50cnkgMjIxCisgICAgMHgxLmUwcDMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMworICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS5wNCwKKyAgICAweDEuMHA0CisgIH0sCisgIHsgLy8gRW50cnkgMjIzCisgICAgMHgxLnA0LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjQKKyAgICAweDEuZjBwNCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLnA1LAorICAgIDB4MS4wcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjYKKyAgICAweDEucDUsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwNQorICB9LAorICB7IC8vIEVudHJ5IDIyNworICAgIDB4MS5mOHA1LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEucDYsCisgICAgMHgxLjBwNgorICB9LAorICB7IC8vIEVudHJ5IDIyOQorICAgIDB4MS5wNiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjMwCisgICAgMHgxLmZjcDYsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIDB4MS5wNywKKyAgICAweDEuMHA3CisgIH0sCisgIHsgLy8gRW50cnkgMjMyCisgICAgMHgxLnA3LAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzMKKyAgICAweDEuZmVwNywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA3CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMHgxLnA4LAorICAgIDB4MS4wcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzUKKyAgICAweDEucDgsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwOAorICB9LAorICB7IC8vIEVudHJ5IDIzNgorICAgIDB4MS5mZnA4LAorICAgIDB4MS5mZmZmZmZmZmZmZmZmcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAweDEucDksCisgICAgMHgxLjBwOQorICB9LAorICB7IC8vIEVudHJ5IDIzOAorICAgIDB4MS5wOSwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjM5CisgICAgMHgxLmZmODBwOSwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLnAxMCwKKyAgICAweDEuMHAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0MQorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDIKKyAgICAweDEuZmZjMHAxMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS5wMTEsCisgICAgMHgxLjBwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDQKKyAgICAweDEucDExLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjQ1CisgICAgMHgxLmZmZTBwMTEsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEucDEyLAorICAgIDB4MS4wcDEyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ3CisgICAgMHgxLnAxMiwKKyAgICAweDEuMDAwMDAwMDAwMDAwMXAxMgorICB9LAorICB7IC8vIEVudHJ5IDI0OAorICAgIDB4MS5wMiwKKyAgICAweDEuMWZmZmZmZmZmZmZmZnAyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLnAyLAorICAgIDB4MS4ycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTAKKyAgICAweDEucDIsCisgICAgMHgxLjIwMDAwMDAwMDAwMDFwMgorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS5wMywKKyAgICAweDEuMGZmZmZmZmZmZmZmZnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjUyCisgICAgMHgxLnAzLAorICAgIDB4MS4xcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEucDMsCisgICAgMHgxLjEwMDAwMDAwMDAwMDFwMworICB9LAorICB7IC8vIEVudHJ5IDI1NAorICAgIDB4MS5wNCwKKyAgICAweDEuMDdmZmZmZmZmZmZmZnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjU1CisgICAgMHgxLnA0LAorICAgIDB4MS4wODBwNAorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS5wNCwKKyAgICAweDEuMDgwMDAwMDAwMDAwMXA0CisgIH0sCisgIHsgLy8gRW50cnkgMjU3CisgICAgMHgxLnA1LAorICAgIDB4MS4wM2ZmZmZmZmZmZmZmcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTgKKyAgICAweDEucDUsCisgICAgMHgxLjA0MHA1CisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLnA1LAorICAgIDB4MS4wNDAwMDAwMDAwMDAxcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjAKKyAgICAweDEucDYsCisgICAgMHgxLjAxZmZmZmZmZmZmZmZwNgorICB9LAorICB7IC8vIEVudHJ5IDI2MQorICAgIDB4MS5wNiwKKyAgICAweDEuMDIwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEucDYsCisgICAgMHgxLjAyMDAwMDAwMDAwMDFwNgorICB9LAorICB7IC8vIEVudHJ5IDI2MworICAgIDB4MS5wNywKKyAgICAweDEuMDBmZmZmZmZmZmZmZnA3CisgIH0sCisgIHsgLy8gRW50cnkgMjY0CisgICAgMHgxLnA3LAorICAgIDB4MS4wMTBwNworICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS5wNywKKyAgICAweDEuMDEwMDAwMDAwMDAwMXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjY2CisgICAgMHgxLnA4LAorICAgIDB4MS4wMDdmZmZmZmZmZmZmcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjcKKyAgICAweDEucDgsCisgICAgMHgxLjAwOHA4CisgIH0sCisgIHsgLy8gRW50cnkgMjY4CisgICAgMHgxLnA4LAorICAgIDB4MS4wMDgwMDAwMDAwMDAxcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjkKKyAgICAweDEucDksCisgICAgMHgxLjAwM2ZmZmZmZmZmZmZwOQorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS5wOSwKKyAgICAweDEuMDA0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzEKKyAgICAweDEucDksCisgICAgMHgxLjAwNDAwMDAwMDAwMDFwOQorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMWZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzMKKyAgICAweDEucDEwLAorICAgIDB4MS4wMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEucDEwLAorICAgIDB4MS4wMDIwMDAwMDAwMDAxcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc1CisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjAwNWZmZmZmZmZmZmZwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzYKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDA2cDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc3CisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjAwNjAwMDAwMDAwMDFwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzgKKyAgICAweDEucDExLAorICAgIDB4MS4wMDBmZmZmZmZmZmZmcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAxcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjgwCisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAxMDAwMDAwMDAwMXAxMQorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS5wMTIsCisgICAgMHgxLjAwMDdmZmZmZmZmZmZwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODIKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDA4MHAxMgorICB9LAorICB7IC8vIEVudHJ5IDI4MworICAgIDB4MS5wMTIsCisgICAgMHgxLjAwMDgwMDAwMDAwMDFwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICBIVUdFX1ZBTCwKKyAgICBIVUdFX1ZBTAorICB9LAorICB7IC8vIEVudHJ5IDI4NQorICAgIC1IVUdFX1ZBTCwKKyAgICAtSFVHRV9WQUwKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODYKKyAgICAweDEuZmZmZmZmZmZmZmZmZjBwMTAyMywKKyAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjg3CisgICAgLTB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLmZmZmZmZmZmZmZmZmUwcDEwMjMsCisgICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI4OQorICAgIC0weDEuZmZmZmZmZmZmZmZmZTBwMTAyMywKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMworICB9LAorICB7IC8vIEVudHJ5IDI5MAorICAgIDB4MS44MHAxLAorICAgIDB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTEKKyAgICAtMHgxLjgwcDEsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEucDAsCisgICAgMHgxLjkyMWZiNTQ0NDJkMThwMAorICB9LAorICB7IC8vIEVudHJ5IDI5MworICAgIC0weDEucDAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTQKKyAgICAweDEucDAsCisgICAgMHgxLjAwMDAwMDAwMDAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTYKKyAgICAweDEucDAsCisgICAgMHgxLjBwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NworICAgIC0weDEucDAsCisgICAgLTB4MS4wcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTkKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMAorICAgIDAuMCwKKyAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0wLjAsCisgICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzAyCisgICAgMC4wLAorICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDQKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDUKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTAyMgorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMworICB9LAorICB7IC8vIEVudHJ5IDMwNworICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzA4CisgICAgMC4wLAorICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTAKKyAgICAwLjAsCisgICAgMHgxLjBwLTEwNzMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTEKKyAgICAtMC4wLAorICAgIC0weDEuMHAtMTA3MworICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDAuMCwKKyAgICAweDEuMHAtMTA3NAorICB9LAorICB7IC8vIEVudHJ5IDMxMworICAgIC0wLjAsCisgICAgLTB4MS4wcC0xMDc0CisgIH0sCisgIHsgLy8gRW50cnkgMzE0CisgICAgMC4wLAorICAgIDAuMAorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIC0wLjAsCisgICAgLTAuMAorICB9LAorICB7IC8vIEVudHJ5IDMxNgorICAgIDB4MS5wMCwKKyAgICAweDEuOHAwCisgIH0sCisgIHsgLy8gRW50cnkgMzE3CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjhwMAorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS5wMSwKKyAgICAweDEuNHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzE5CisgICAgLTB4MS5wMSwKKyAgICAtMHgxLjRwMQorICB9LAorICB7IC8vIEVudHJ5IDMyMAorICAgIDAuMCwKKyAgICAweDEuZmZmZmZwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAwLjAsCisgICAgMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjIKKyAgICAwLjAsCisgICAgMHgxLjAwMDAxcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmcC0yCisgIH0sCisgIHsgLy8gRW50cnkgMzI0CisgICAgLTAuMCwKKyAgICAtMHgxLjBwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDFwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjYKKyAgICAweDEucDAsCisgICAgMHgxLjgwMDAxcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjcKKyAgICAweDEucDAsCisgICAgMHgxLjdmZmZmcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAtMHgxLnAwLAorICAgIC0weDEuODAwMDFwMAorICB9LAorICB7IC8vIEVudHJ5IDMyOQorICAgIC0weDEucDAsCisgICAgLTB4MS43ZmZmZnAwCisgIH0KK307CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2RhdGEvdHJ1bmNmX2ludGVsX2RhdGEuaCBiL3Rlc3RzL21hdGhfZGF0YS90cnVuY2ZfaW50ZWxfZGF0YS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFmMWE0NDcKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGEvdHJ1bmNmX2ludGVsX2RhdGEuaApAQCAtMCwwICsxLDEzMzggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCitzdGF0aWMgZGF0YV8xXzFfdDxmbG9hdCwgZmxvYXQ+IGdfdHJ1bmNmX2ludGVsX2RhdGFbXSA9IHsKKyAgeyAvLyBFbnRyeSAwCisgICAgLTAuMCwKKyAgICAtMHgxLnAtMTQ5CisgIH0sCisgIHsgLy8gRW50cnkgMQorICAgIDAuMCwKKyAgICAwLjAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyCisgICAgMC4wLAorICAgIDB4MS5wLTE0OQorICB9LAorICB7IC8vIEVudHJ5IDMKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAtMgorICB9LAorICB7IC8vIEVudHJ5IDQKKyAgICAwLjAsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDUKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAtMQorICB9LAorICB7IC8vIEVudHJ5IDYKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDcKKyAgICAweDEucDAsCisgICAgMHgxLnAwCisgIH0sCisgIHsgLy8gRW50cnkgOAorICAgIDB4MS5wMCwKKyAgICAweDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5CisgICAgMHgxLnAwLAorICAgIDB4MS43ZmZmZmVwMAorICB9LAorICB7IC8vIEVudHJ5IDEwCisgICAgMHgxLnAwLAorICAgIDB4MS44MHAwCisgIH0sCisgIHsgLy8gRW50cnkgMTEKKyAgICAweDEucDAsCisgICAgMHgxLjgwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgMTIKKyAgICAweDEucDAsCisgICAgMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgMTMKKyAgICAweDEucDEsCisgICAgMHgxLnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTQKKyAgICAweDEucDEsCisgICAgMHgxLjAwMDAwMnAxCisgIH0sCisgIHsgLy8gRW50cnkgMTUKKyAgICAweDEucDEsCisgICAgMHgxLjNmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMTYKKyAgICAweDEucDEsCisgICAgMHgxLjQwcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNworICAgIDB4MS5wMSwKKyAgICAweDEuNDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOAorICAgIDB4MS44Y3A2LAorICAgIDB4MS44ZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDE5CisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkwcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMAorICAgIDB4MS45MHA2LAorICAgIDB4MS45MDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDIxCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkxZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgMjIKKyAgICAweDEuOTBwNiwKKyAgICAweDEuOTJwNgorICB9LAorICB7IC8vIEVudHJ5IDIzCisgICAgMHgxLjkwcDYsCisgICAgMHgxLjkyMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjQKKyAgICAweDEuZjM4MHA5LAorICAgIDB4MS5mM2ZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDI1CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0cDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNgorICAgIDB4MS5mNHA5LAorICAgIDB4MS5mNDAwMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDI3CisgICAgMHgxLmY0cDksCisgICAgMHgxLmY0M2ZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjgKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjQ0MHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjkKKyAgICAweDEuZjRwOSwKKyAgICAweDEuZjQ0MDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMAorICAgIDB4MS5mZmZmZjBwMjAsCisgICAgMHgxLmZmZmZmZXAyMAorICB9LAorICB7IC8vIEVudHJ5IDMxCisgICAgMHgxLnAyMSwKKyAgICAweDEucDIxCisgIH0sCisgIHsgLy8gRW50cnkgMzIKKyAgICAweDEucDIxLAorICAgIDB4MS4wMDAwMDJwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMworICAgIDB4MS5mZmZmZjhwMjEsCisgICAgMHgxLmZmZmZmZXAyMQorICB9LAorICB7IC8vIEVudHJ5IDM0CisgICAgMHgxLnAyMiwKKyAgICAweDEucDIyCisgIH0sCisgIHsgLy8gRW50cnkgMzUKKyAgICAweDEucDIyLAorICAgIDB4MS4wMDAwMDJwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzNgorICAgIDB4MS5mZmZmZmNwMjIsCisgICAgMHgxLmZmZmZmZXAyMgorICB9LAorICB7IC8vIEVudHJ5IDM3CisgICAgMHgxLnAyMywKKyAgICAweDEucDIzCisgIH0sCisgIHsgLy8gRW50cnkgMzgKKyAgICAweDEuMDAwMDAycDIzLAorICAgIDB4MS4wMDAwMDJwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAzOQorICAgIDB4MS5mZmZmZmVwMjMsCisgICAgMHgxLmZmZmZmZXAyMworICB9LAorICB7IC8vIEVudHJ5IDQwCisgICAgMHgxLnAyNCwKKyAgICAweDEucDI0CisgIH0sCisgIHsgLy8gRW50cnkgNDEKKyAgICAweDEuMDAwMDAycDI0LAorICAgIDB4MS4wMDAwMDJwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA0MgorICAgIDB4MS5mZmZmZmVwMjQsCisgICAgMHgxLmZmZmZmZXAyNAorICB9LAorICB7IC8vIEVudHJ5IDQzCisgICAgMHgxLnAyNSwKKyAgICAweDEucDI1CisgIH0sCisgIHsgLy8gRW50cnkgNDQKKyAgICAweDEuMDAwMDAycDI1LAorICAgIDB4MS4wMDAwMDJwMjUKKyAgfSwKKyAgeyAvLyBFbnRyeSA0NQorICAgIDB4MS5mZmZmZmVwMTI3LAorICAgIDB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgNDYKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDAycC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDcKKyAgICAtMC4wLAorICAgIC0weDEucC0xCisgIH0sCisgIHsgLy8gRW50cnkgNDgKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZlcC0yCisgIH0sCisgIHsgLy8gRW50cnkgNDkKKyAgICAtMHgxLnAwLAorICAgIC0weDEuMDAwMDAycDAKKyAgfSwKKyAgeyAvLyBFbnRyeSA1MAorICAgIC0weDEucDAsCisgICAgLTB4MS5wMAorICB9LAorICB7IC8vIEVudHJ5IDUxCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDUyCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjgwMDAwMnAwCisgIH0sCisgIHsgLy8gRW50cnkgNTMKKyAgICAtMHgxLnAwLAorICAgIC0weDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDU0CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjdmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTUKKyAgICAtMHgxLnAxLAorICAgIC0weDEuMDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1NgorICAgIC0weDEucDEsCisgICAgLTB4MS5wMQorICB9LAorICB7IC8vIEVudHJ5IDU3CisgICAgLTB4MS5wMCwKKyAgICAtMHgxLmZmZmZmZXAwCisgIH0sCisgIHsgLy8gRW50cnkgNTgKKyAgICAtMHgxLnAxLAorICAgIC0weDEuNDAwMDAycDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA1OQorICAgIC0weDEucDEsCisgICAgLTB4MS40MHAxCisgIH0sCisgIHsgLy8gRW50cnkgNjAKKyAgICAtMHgxLnAxLAorICAgIC0weDEuM2ZmZmZlcDEKKyAgfSwKKyAgeyAvLyBFbnRyeSA2MQorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkwMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgNjIKKyAgICAtMHgxLjkwcDYsCisgICAgLTB4MS45MHA2CisgIH0sCisgIHsgLy8gRW50cnkgNjMKKyAgICAtMHgxLjhjcDYsCisgICAgLTB4MS44ZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDY0CisgICAgLTB4MS45MHA2LAorICAgIC0weDEuOTIwMDAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NQorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSA2NgorICAgIC0weDEuOTBwNiwKKyAgICAtMHgxLjkxZmZmZXA2CisgIH0sCisgIHsgLy8gRW50cnkgNjcKKyAgICAtMHgxLmY0cDksCisgICAgLTB4MS5mNDAwMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDY4CisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjRwOQorICB9LAorICB7IC8vIEVudHJ5IDY5CisgICAgLTB4MS5mMzgwcDksCisgICAgLTB4MS5mM2ZmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDcwCisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQ0MDAycDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MQorICAgIC0weDEuZjRwOSwKKyAgICAtMHgxLmY0NDBwOQorICB9LAorICB7IC8vIEVudHJ5IDcyCisgICAgLTB4MS5mNHA5LAorICAgIC0weDEuZjQzZmZlcDkKKyAgfSwKKyAgeyAvLyBFbnRyeSA3MworICAgIC0weDEucDIxLAorICAgIC0weDEuMDAwMDAycDIxCisgIH0sCisgIHsgLy8gRW50cnkgNzQKKyAgICAtMHgxLnAyMSwKKyAgICAtMHgxLnAyMQorICB9LAorICB7IC8vIEVudHJ5IDc1CisgICAgLTB4MS5mZmZmZjBwMjAsCisgICAgLTB4MS5mZmZmZmVwMjAKKyAgfSwKKyAgeyAvLyBFbnRyeSA3NgorICAgIC0weDEucDIyLAorICAgIC0weDEuMDAwMDAycDIyCisgIH0sCisgIHsgLy8gRW50cnkgNzcKKyAgICAtMHgxLnAyMiwKKyAgICAtMHgxLnAyMgorICB9LAorICB7IC8vIEVudHJ5IDc4CisgICAgLTB4MS5mZmZmZjhwMjEsCisgICAgLTB4MS5mZmZmZmVwMjEKKyAgfSwKKyAgeyAvLyBFbnRyeSA3OQorICAgIC0weDEuMDAwMDAycDIzLAorICAgIC0weDEuMDAwMDAycDIzCisgIH0sCisgIHsgLy8gRW50cnkgODAKKyAgICAtMHgxLnAyMywKKyAgICAtMHgxLnAyMworICB9LAorICB7IC8vIEVudHJ5IDgxCisgICAgLTB4MS5mZmZmZmNwMjIsCisgICAgLTB4MS5mZmZmZmVwMjIKKyAgfSwKKyAgeyAvLyBFbnRyeSA4MgorICAgIC0weDEuMDAwMDAycDI0LAorICAgIC0weDEuMDAwMDAycDI0CisgIH0sCisgIHsgLy8gRW50cnkgODMKKyAgICAtMHgxLnAyNCwKKyAgICAtMHgxLnAyNAorICB9LAorICB7IC8vIEVudHJ5IDg0CisgICAgLTB4MS5mZmZmZmVwMjMsCisgICAgLTB4MS5mZmZmZmVwMjMKKyAgfSwKKyAgeyAvLyBFbnRyeSA4NQorICAgIC0weDEuMDAwMDAycDI1LAorICAgIC0weDEuMDAwMDAycDI1CisgIH0sCisgIHsgLy8gRW50cnkgODYKKyAgICAtMHgxLnAyNSwKKyAgICAtMHgxLnAyNQorICB9LAorICB7IC8vIEVudHJ5IDg3CisgICAgLTB4MS5mZmZmZmVwMjQsCisgICAgLTB4MS5mZmZmZmVwMjQKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OAorICAgIC0weDEuZmZmZmZlcDEyNywKKyAgICAtMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSA4OQorICAgIDB4MS5mZmZmZmVwMjksCisgICAgMHgxLmZmZmZmZXAyOQorICB9LAorICB7IC8vIEVudHJ5IDkwCisgICAgMHgxLnAzMCwKKyAgICAweDEucDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTEKKyAgICAweDEuMDAwMDAycDMwLAorICAgIDB4MS4wMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5MgorICAgIDB4MS5mZmZmZmNwMzAsCisgICAgMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDkzCisgICAgMHgxLmZmZmZmZXAzMCwKKyAgICAweDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgOTQKKyAgICAweDEucDMxLAorICAgIDB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSA5NQorICAgIDB4MS4wMDAwMDJwMzEsCisgICAgMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDk2CisgICAgMHgxLjAwMDAwNHAzMSwKKyAgICAweDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgOTcKKyAgICAweDEuZmZmZmZjcDMwLAorICAgIDB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSA5OAorICAgIDB4MS5mZmZmZmVwMzAsCisgICAgMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDk5CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTAwCisgICAgMHgxLjAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTAxCisgICAgMHgxLjAwMDAwNHAzMSwKKyAgICAweDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTAyCisgICAgMHgxLmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTAzCisgICAgMHgxLmZmZmZmZXAzMCwKKyAgICAweDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA0CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTA1CisgICAgMHgxLjAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTA2CisgICAgMHgxLjAwMDAwNHAzMSwKKyAgICAweDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTA3CisgICAgMHgxLmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA4CisgICAgMHgxLmZmZmZmZXAzMCwKKyAgICAweDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTA5CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTEwCisgICAgMHgxLjAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTExCisgICAgMHgxLjAwMDAwNHAzMSwKKyAgICAweDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTEyCisgICAgMHgxLmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTEzCisgICAgMHgxLmZmZmZmZXAzMCwKKyAgICAweDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTE0CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTE1CisgICAgMHgxLjAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTE2CisgICAgMHgxLjAwMDAwNHAzMSwKKyAgICAweDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTE3CisgICAgMHgxLmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTE4CisgICAgMHgxLmZmZmZmZXAzMCwKKyAgICAweDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTE5CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTIwCisgICAgMHgxLjAwMDAwMnAzMSwKKyAgICAweDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTIxCisgICAgMHgxLjAwMDAwNHAzMSwKKyAgICAweDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTIyCisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTIzCisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTI0CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTI1CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTI2CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTI3CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTI4CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTI5CisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTMwCisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTMxCisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTMyCisgICAgLTB4MS4wMDAwMDJwMzAsCisgICAgLTB4MS4wMDAwMDJwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzMKKyAgICAtMHgxLnAzMCwKKyAgICAtMHgxLnAzMAorICB9LAorICB7IC8vIEVudHJ5IDEzNAorICAgIC0weDEuZmZmZmZlcDI5LAorICAgIC0weDEuZmZmZmZlcDI5CisgIH0sCisgIHsgLy8gRW50cnkgMTM1CisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzYKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDEzNworICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTM4CisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxMzkKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE0MAorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQxCisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDIKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0MworICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTQ0CisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDUKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE0NgorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTQ3CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNDgKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE0OQorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTUwCisgICAgLTB4MS4wMDAwMDRwMzEsCisgICAgLTB4MS4wMDAwMDRwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTEKKyAgICAtMHgxLjAwMDAwMnAzMSwKKyAgICAtMHgxLjAwMDAwMnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1MgorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTUzCisgICAgLTB4MS5mZmZmZmVwMzAsCisgICAgLTB4MS5mZmZmZmVwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTQKKyAgICAtMHgxLmZmZmZmY3AzMCwKKyAgICAtMHgxLmZmZmZmY3AzMAorICB9LAorICB7IC8vIEVudHJ5IDE1NQorICAgIC0weDEuMDAwMDA0cDMxLAorICAgIC0weDEuMDAwMDA0cDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTU2CisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNTcKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE1OAorICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTU5CisgICAgLTB4MS5mZmZmZmNwMzAsCisgICAgLTB4MS5mZmZmZmNwMzAKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjAKKyAgICAtMHgxLjAwMDAwNHAzMSwKKyAgICAtMHgxLjAwMDAwNHAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2MQorICAgIC0weDEuMDAwMDAycDMxLAorICAgIC0weDEuMDAwMDAycDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTYyCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjMKKyAgICAtMHgxLmZmZmZmZXAzMCwKKyAgICAtMHgxLmZmZmZmZXAzMAorICB9LAorICB7IC8vIEVudHJ5IDE2NAorICAgIC0weDEuZmZmZmZjcDMwLAorICAgIC0weDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMTY1CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjYKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE2NworICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTY4CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNjkKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3MAorICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTcxCisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzIKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDE3MworICAgIC0weDEucDMxLAorICAgIC0weDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMTc0CisgICAgLTB4MS5wMzEsCisgICAgLTB4MS5wMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzUKKyAgICAweDEuZmZmZmZjcDYxLAorICAgIDB4MS5mZmZmZmNwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzYKKyAgICAweDEuZmZmZmZlcDYxLAorICAgIDB4MS5mZmZmZmVwNjEKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzcKKyAgICAweDEucDYyLAorICAgIDB4MS5wNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzgKKyAgICAweDEuMDAwMDAycDYyLAorICAgIDB4MS4wMDAwMDJwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxNzkKKyAgICAweDEuMDAwMDA0cDYyLAorICAgIDB4MS4wMDAwMDRwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODAKKyAgICAweDEuZmZmZmZjcDYyLAorICAgIDB4MS5mZmZmZmNwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODEKKyAgICAweDEuZmZmZmZlcDYyLAorICAgIDB4MS5mZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODIKKyAgICAweDEucDYzLAorICAgIDB4MS5wNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODMKKyAgICAweDEuMDAwMDAycDYzLAorICAgIDB4MS4wMDAwMDJwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODQKKyAgICAweDEuMDAwMDA0cDYzLAorICAgIDB4MS4wMDAwMDRwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODUKKyAgICAweDEuZmZmZmZjcDYzLAorICAgIDB4MS5mZmZmZmNwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODYKKyAgICAweDEuZmZmZmZlcDYzLAorICAgIDB4MS5mZmZmZmVwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODcKKyAgICAweDEucDY0LAorICAgIDB4MS5wNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODgKKyAgICAweDEuMDAwMDAycDY0LAorICAgIDB4MS4wMDAwMDJwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxODkKKyAgICAweDEuMDAwMDA0cDY0LAorICAgIDB4MS4wMDAwMDRwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTAKKyAgICAtMHgxLjAwMDAwNHA2MiwKKyAgICAtMHgxLjAwMDAwNHA2MgorICB9LAorICB7IC8vIEVudHJ5IDE5MQorICAgIC0weDEuMDAwMDAycDYyLAorICAgIC0weDEuMDAwMDAycDYyCisgIH0sCisgIHsgLy8gRW50cnkgMTkyCisgICAgLTB4MS5wNjIsCisgICAgLTB4MS5wNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTMKKyAgICAtMHgxLmZmZmZmZXA2MSwKKyAgICAtMHgxLmZmZmZmZXA2MQorICB9LAorICB7IC8vIEVudHJ5IDE5NAorICAgIC0weDEuZmZmZmZjcDYxLAorICAgIC0weDEuZmZmZmZjcDYxCisgIH0sCisgIHsgLy8gRW50cnkgMTk1CisgICAgLTB4MS4wMDAwMDRwNjMsCisgICAgLTB4MS4wMDAwMDRwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTYKKyAgICAtMHgxLjAwMDAwMnA2MywKKyAgICAtMHgxLjAwMDAwMnA2MworICB9LAorICB7IC8vIEVudHJ5IDE5NworICAgIC0weDEucDYzLAorICAgIC0weDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgMTk4CisgICAgLTB4MS5mZmZmZmVwNjIsCisgICAgLTB4MS5mZmZmZmVwNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAxOTkKKyAgICAtMHgxLmZmZmZmY3A2MiwKKyAgICAtMHgxLmZmZmZmY3A2MgorICB9LAorICB7IC8vIEVudHJ5IDIwMAorICAgIC0weDEuMDAwMDA0cDY0LAorICAgIC0weDEuMDAwMDA0cDY0CisgIH0sCisgIHsgLy8gRW50cnkgMjAxCisgICAgLTB4MS4wMDAwMDJwNjQsCisgICAgLTB4MS4wMDAwMDJwNjQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDIKKyAgICAtMHgxLnA2NCwKKyAgICAtMHgxLnA2NAorICB9LAorICB7IC8vIEVudHJ5IDIwMworICAgIC0weDEuZmZmZmZlcDYzLAorICAgIC0weDEuZmZmZmZlcDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA0CisgICAgLTB4MS5mZmZmZmNwNjMsCisgICAgLTB4MS5mZmZmZmNwNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDUKKyAgICAweDEucDYyLAorICAgIDB4MS5wNjIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDYKKyAgICAweDEucDYzLAorICAgIDB4MS5wNjMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMDcKKyAgICAtMHgxLnA2MiwKKyAgICAtMHgxLnA2MgorICB9LAorICB7IC8vIEVudHJ5IDIwOAorICAgIC0weDEucDYzLAorICAgIC0weDEucDYzCisgIH0sCisgIHsgLy8gRW50cnkgMjA5CisgICAgMHgxLmZmZmZmY3AzMCwKKyAgICAweDEuZmZmZmZjcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMjEwCisgICAgMHgxLmZmZmZmZXAzMCwKKyAgICAweDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMjExCisgICAgMHgxLnAzMSwKKyAgICAweDEucDMxCisgIH0sCisgIHsgLy8gRW50cnkgMjEyCisgICAgLTB4MS4wMDAwMDJwMzEsCisgICAgLTB4MS4wMDAwMDJwMzEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTMKKyAgICAtMHgxLnAzMSwKKyAgICAtMHgxLnAzMQorICB9LAorICB7IC8vIEVudHJ5IDIxNAorICAgIC0weDEuZmZmZmZlcDMwLAorICAgIC0weDEuZmZmZmZlcDMwCisgIH0sCisgIHsgLy8gRW50cnkgMjE1CisgICAgMHgxLjgwcDEsCisgICAgMHgxLmZmZmZmZXAxCisgIH0sCisgIHsgLy8gRW50cnkgMjE2CisgICAgMHgxLnAyLAorICAgIDB4MS5wMgorICB9LAorICB7IC8vIEVudHJ5IDIxNworICAgIDB4MS5wMiwKKyAgICAweDEuMDAwMDAycDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTgKKyAgICAweDEuYzBwMiwKKyAgICAweDEuZmZmZmZlcDIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMTkKKyAgICAweDEucDMsCisgICAgMHgxLnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjIwCisgICAgMHgxLnAzLAorICAgIDB4MS4wMDAwMDJwMworICB9LAorICB7IC8vIEVudHJ5IDIyMQorICAgIDB4MS5lMHAzLAorICAgIDB4MS5mZmZmZmVwMworICB9LAorICB7IC8vIEVudHJ5IDIyMgorICAgIDB4MS5wNCwKKyAgICAweDEucDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjMKKyAgICAweDEucDQsCisgICAgMHgxLjAwMDAwMnA0CisgIH0sCisgIHsgLy8gRW50cnkgMjI0CisgICAgMHgxLmYwcDQsCisgICAgMHgxLmZmZmZmZXA0CisgIH0sCisgIHsgLy8gRW50cnkgMjI1CisgICAgMHgxLnA1LAorICAgIDB4MS5wNQorICB9LAorICB7IC8vIEVudHJ5IDIyNgorICAgIDB4MS5wNSwKKyAgICAweDEuMDAwMDAycDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjcKKyAgICAweDEuZjhwNSwKKyAgICAweDEuZmZmZmZlcDUKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMjgKKyAgICAweDEucDYsCisgICAgMHgxLnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjI5CisgICAgMHgxLnA2LAorICAgIDB4MS4wMDAwMDJwNgorICB9LAorICB7IC8vIEVudHJ5IDIzMAorICAgIDB4MS5mY3A2LAorICAgIDB4MS5mZmZmZmVwNgorICB9LAorICB7IC8vIEVudHJ5IDIzMQorICAgIDB4MS5wNywKKyAgICAweDEucDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzIKKyAgICAweDEucDcsCisgICAgMHgxLjAwMDAwMnA3CisgIH0sCisgIHsgLy8gRW50cnkgMjMzCisgICAgMHgxLmZlcDcsCisgICAgMHgxLmZmZmZmZXA3CisgIH0sCisgIHsgLy8gRW50cnkgMjM0CisgICAgMHgxLnA4LAorICAgIDB4MS5wOAorICB9LAorICB7IC8vIEVudHJ5IDIzNQorICAgIDB4MS5wOCwKKyAgICAweDEuMDAwMDAycDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzYKKyAgICAweDEuZmZwOCwKKyAgICAweDEuZmZmZmZlcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyMzcKKyAgICAweDEucDksCisgICAgMHgxLnA5CisgIH0sCisgIHsgLy8gRW50cnkgMjM4CisgICAgMHgxLnA5LAorICAgIDB4MS4wMDAwMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDIzOQorICAgIDB4MS5mZjgwcDksCisgICAgMHgxLmZmZmZmZXA5CisgIH0sCisgIHsgLy8gRW50cnkgMjQwCisgICAgMHgxLnAxMCwKKyAgICAweDEucDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQxCisgICAgMHgxLnAxMCwKKyAgICAweDEuMDAwMDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjQyCisgICAgMHgxLmZmYzBwMTAsCisgICAgMHgxLmZmZmZmZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI0MworICAgIDB4MS5wMTEsCisgICAgMHgxLnAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0NAorICAgIDB4MS5wMTEsCisgICAgMHgxLjAwMDAwMnAxMQorICB9LAorICB7IC8vIEVudHJ5IDI0NQorICAgIDB4MS5mZmUwcDExLAorICAgIDB4MS5mZmZmZmVwMTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDYKKyAgICAweDEucDEyLAorICAgIDB4MS5wMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDcKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDAwMDJwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNDgKKyAgICAweDEucDIsCisgICAgMHgxLjFmZmZmZXAyCisgIH0sCisgIHsgLy8gRW50cnkgMjQ5CisgICAgMHgxLnAyLAorICAgIDB4MS4yMHAyCisgIH0sCisgIHsgLy8gRW50cnkgMjUwCisgICAgMHgxLnAyLAorICAgIDB4MS4yMDAwMDJwMgorICB9LAorICB7IC8vIEVudHJ5IDI1MQorICAgIDB4MS5wMywKKyAgICAweDEuMGZmZmZlcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTIKKyAgICAweDEucDMsCisgICAgMHgxLjEwcDMKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTMKKyAgICAweDEucDMsCisgICAgMHgxLjEwMDAwMnAzCisgIH0sCisgIHsgLy8gRW50cnkgMjU0CisgICAgMHgxLnA0LAorICAgIDB4MS4wN2ZmZmVwNAorICB9LAorICB7IC8vIEVudHJ5IDI1NQorICAgIDB4MS5wNCwKKyAgICAweDEuMDhwNAorICB9LAorICB7IC8vIEVudHJ5IDI1NgorICAgIDB4MS5wNCwKKyAgICAweDEuMDgwMDAycDQKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNTcKKyAgICAweDEucDUsCisgICAgMHgxLjAzZmZmZXA1CisgIH0sCisgIHsgLy8gRW50cnkgMjU4CisgICAgMHgxLnA1LAorICAgIDB4MS4wNHA1CisgIH0sCisgIHsgLy8gRW50cnkgMjU5CisgICAgMHgxLnA1LAorICAgIDB4MS4wNDAwMDJwNQorICB9LAorICB7IC8vIEVudHJ5IDI2MAorICAgIDB4MS5wNiwKKyAgICAweDEuMDFmZmZlcDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjEKKyAgICAweDEucDYsCisgICAgMHgxLjAycDYKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjIKKyAgICAweDEucDYsCisgICAgMHgxLjAyMDAwMnA2CisgIH0sCisgIHsgLy8gRW50cnkgMjYzCisgICAgMHgxLnA3LAorICAgIDB4MS4wMGZmZmVwNworICB9LAorICB7IC8vIEVudHJ5IDI2NAorICAgIDB4MS5wNywKKyAgICAweDEuMDFwNworICB9LAorICB7IC8vIEVudHJ5IDI2NQorICAgIDB4MS5wNywKKyAgICAweDEuMDEwMDAycDcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjYKKyAgICAweDEucDgsCisgICAgMHgxLjAwN2ZmZXA4CisgIH0sCisgIHsgLy8gRW50cnkgMjY3CisgICAgMHgxLnA4LAorICAgIDB4MS4wMDgwcDgKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNjgKKyAgICAweDEucDgsCisgICAgMHgxLjAwODAwMnA4CisgIH0sCisgIHsgLy8gRW50cnkgMjY5CisgICAgMHgxLnA5LAorICAgIDB4MS4wMDNmZmVwOQorICB9LAorICB7IC8vIEVudHJ5IDI3MAorICAgIDB4MS5wOSwKKyAgICAweDEuMDA0MHA5CisgIH0sCisgIHsgLy8gRW50cnkgMjcxCisgICAgMHgxLnA5LAorICAgIDB4MS4wMDQwMDJwOQorICB9LAorICB7IC8vIEVudHJ5IDI3MgorICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMWZmZXAxMAorICB9LAorICB7IC8vIEVudHJ5IDI3MworICAgIDB4MS5wMTAsCisgICAgMHgxLjAwMjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzQKKyAgICAweDEucDEwLAorICAgIDB4MS4wMDIwMDJwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzUKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDA1ZmZlcDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc2CisgICAgMHgxLjAwNDBwMTAsCisgICAgMHgxLjAwNjBwMTAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyNzcKKyAgICAweDEuMDA0MHAxMCwKKyAgICAweDEuMDA2MDAycDEwCisgIH0sCisgIHsgLy8gRW50cnkgMjc4CisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAwZmZlcDExCisgIH0sCisgIHsgLy8gRW50cnkgMjc5CisgICAgMHgxLnAxMSwKKyAgICAweDEuMDAxMHAxMQorICB9LAorICB7IC8vIEVudHJ5IDI4MAorICAgIDB4MS5wMTEsCisgICAgMHgxLjAwMTAwMnAxMQorICB9LAorICB7IC8vIEVudHJ5IDI4MQorICAgIDB4MS5wMTIsCisgICAgMHgxLjAwMDdmZXAxMgorICB9LAorICB7IC8vIEVudHJ5IDI4MgorICAgIDB4MS5wMTIsCisgICAgMHgxLjAwMDhwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODMKKyAgICAweDEucDEyLAorICAgIDB4MS4wMDA4MDJwMTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODQKKyAgICBIVUdFX1ZBTEYsCisgICAgSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjg1CisgICAgLUhVR0VfVkFMRiwKKyAgICAtSFVHRV9WQUxGCisgIH0sCisgIHsgLy8gRW50cnkgMjg2CisgICAgMHgxLmZmZmZmZXAxMjcsCisgICAgMHgxLmZmZmZmZXAxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODcKKyAgICAtMHgxLmZmZmZmZXAxMjcsCisgICAgLTB4MS5mZmZmZmVwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjg4CisgICAgMHgxLmZmZmZmY3AxMjcsCisgICAgMHgxLmZmZmZmY3AxMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAyODkKKyAgICAtMHgxLmZmZmZmY3AxMjcsCisgICAgLTB4MS5mZmZmZmNwMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMjkwCisgICAgMHgxLjgwcDEsCisgICAgMHgxLjkyMWZiNnAxCisgIH0sCisgIHsgLy8gRW50cnkgMjkxCisgICAgLTB4MS44MHAxLAorICAgIC0weDEuOTIxZmI2cDEKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTIKKyAgICAweDEucDAsCisgICAgMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjkzCisgICAgLTB4MS5wMCwKKyAgICAtMHgxLjkyMWZiNnAwCisgIH0sCisgIHsgLy8gRW50cnkgMjk0CisgICAgMHgxLnAwLAorICAgIDB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NQorICAgIC0weDEucDAsCisgICAgLTB4MS4wMDAwMDJwMAorICB9LAorICB7IC8vIEVudHJ5IDI5NgorICAgIDB4MS5wMCwKKyAgICAweDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTcKKyAgICAtMHgxLnAwLAorICAgIC0weDEucDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAyOTgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmZXAtMQorICB9LAorICB7IC8vIEVudHJ5IDI5OQorICAgIC0wLjAsCisgICAgLTB4MS5mZmZmZmVwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDAKKyAgICAwLjAsCisgICAgMHgxLjkyMWZiNnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMwMQorICAgIC0wLjAsCisgICAgLTB4MS45MjFmYjZwLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDIKKyAgICAwLjAsCisgICAgMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzAzCisgICAgLTAuMCwKKyAgICAtMHgxLjAwMDAwMnAtMTI2CisgIH0sCisgIHsgLy8gRW50cnkgMzA0CisgICAgMC4wLAorICAgIDB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDMwNQorICAgIC0wLjAsCisgICAgLTB4MS5wLTEyNgorICB9LAorICB7IC8vIEVudHJ5IDMwNgorICAgIDAuMCwKKyAgICAweDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDcKKyAgICAtMC4wLAorICAgIC0weDEuZmZmZmZjcC0xMjcKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMDgKKyAgICAwLjAsCisgICAgMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzA5CisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmOHAtMTI3CisgIH0sCisgIHsgLy8gRW50cnkgMzEwCisgICAgMC4wLAorICAgIDB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDMxMQorICAgIC0wLjAsCisgICAgLTB4MS5wLTE0OAorICB9LAorICB7IC8vIEVudHJ5IDMxMgorICAgIDAuMCwKKyAgICAweDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTMKKyAgICAtMC4wLAorICAgIC0weDEucC0xNDkKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTQKKyAgICAwLjAsCisgICAgMC4wZgorICB9LAorICB7IC8vIEVudHJ5IDMxNQorICAgIC0wLjAsCisgICAgLTAuMGYKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTYKKyAgICAweDEucDAsCisgICAgMHgxLjgwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMTcKKyAgICAtMHgxLnAwLAorICAgIC0weDEuODBwMAorICB9LAorICB7IC8vIEVudHJ5IDMxOAorICAgIDB4MS5wMSwKKyAgICAweDEuNDBwMQorICB9LAorICB7IC8vIEVudHJ5IDMxOQorICAgIC0weDEucDEsCisgICAgLTB4MS40MHAxCisgIH0sCisgIHsgLy8gRW50cnkgMzIwCisgICAgMC4wLAorICAgIDB4MS5mZmZmZjBwLTIKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjEKKyAgICAwLjAsCisgICAgMHgxLnAtMQorICB9LAorICB7IC8vIEVudHJ5IDMyMgorICAgIDAuMCwKKyAgICAweDEuMDAwMDEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzIzCisgICAgLTAuMCwKKyAgICAtMHgxLmZmZmZmMHAtMgorICB9LAorICB7IC8vIEVudHJ5IDMyNAorICAgIC0wLjAsCisgICAgLTB4MS5wLTEKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjUKKyAgICAtMC4wLAorICAgIC0weDEuMDAwMDEwcC0xCisgIH0sCisgIHsgLy8gRW50cnkgMzI2CisgICAgMHgxLnAwLAorICAgIDB4MS44MDAwMTBwMAorICB9LAorICB7IC8vIEVudHJ5IDMyNworICAgIDB4MS5wMCwKKyAgICAweDEuN2ZmZmYwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjgKKyAgICAtMHgxLnAwLAorICAgIC0weDEuODAwMDEwcDAKKyAgfSwKKyAgeyAvLyBFbnRyeSAzMjkKKyAgICAtMHgxLnAwLAorICAgIC0weDEuN2ZmZmYwcDAKKyAgfQorfTsKZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZGF0YV90ZXN0LmggYi90ZXN0cy9tYXRoX2RhdGFfdGVzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhhYTJiZjEKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9tYXRoX2RhdGFfdGVzdC5oCkBAIC0wLDAgKzEsMjUxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CisKKyNpbmNsdWRlIDxmZW52Lmg+CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBSVCwgdHlwZW5hbWUgVDE+CitzdHJ1Y3QgZGF0YV8xXzFfdCB7CisgIFJUIGV4cGVjdGVkOworICBUMSBpbnB1dDsKK307CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBUMT4KK3N0cnVjdCBkYXRhX2ludF8xX3QgeworICBpbnQgZXhwZWN0ZWQ7CisgIFQxIGlucHV0OworfTsKKwordGVtcGxhdGUgPHR5cGVuYW1lIFJULCB0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDI+CitzdHJ1Y3QgZGF0YV8xXzJfdCB7CisgIFJUIGV4cGVjdGVkOworICBUMSBpbnB1dDE7CisgIFQyIGlucHV0MjsKK307CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBSVDEsIHR5cGVuYW1lIFJUMiwgdHlwZW5hbWUgVD4KK3N0cnVjdCBkYXRhXzJfMV90IHsKKyAgUlQxIGV4cGVjdGVkMTsKKyAgUlQyIGV4cGVjdGVkMjsKKyAgVCBpbnB1dDsKK307CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBSVDEsIHR5cGVuYW1lIFQ+CitzdHJ1Y3QgZGF0YV8xX2ludF8xX3QgeworICBSVDEgZXhwZWN0ZWQxOworICBpbnQgZXhwZWN0ZWQyOworICBUIGlucHV0OworfTsKKwordGVtcGxhdGUgPHR5cGVuYW1lIFJUMSwgdHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyPgorc3RydWN0IGRhdGFfMV9pbnRfMl90IHsKKyAgUlQxIGV4cGVjdGVkMTsKKyAgaW50IGV4cGVjdGVkMjsKKyAgVDEgaW5wdXQxOworICBUMiBpbnB1dDI7Cit9OworCit0ZW1wbGF0ZSA8dHlwZW5hbWUgUlQsIHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiwgdHlwZW5hbWUgVDM+CitzdHJ1Y3QgZGF0YV8xXzNfdCB7CisgIFJUIGV4cGVjdGVkOworICBUMSBpbnB1dDE7CisgIFQyIGlucHV0MjsKKyAgVDMgaW5wdXQzOworfTsKKwordGVtcGxhdGUgPHR5cGVuYW1lIFQ+IHVuaW9uIGZwX3U7CisKK3RlbXBsYXRlIDw+IHVuaW9uIGZwX3U8ZmxvYXQ+IHsKKyAgZmxvYXQgdmFsdWU7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgZnJhYzoyMzsKKyAgICB1bnNpZ25lZCBleHA6ODsKKyAgICB1bnNpZ25lZCBzaWduOjE7CisgIH0gYml0czsKKyAgdWludDMyX3Qgc2lnbl9tYWduaXR1ZGU7Cit9OworCit0ZW1wbGF0ZSA8PiB1bmlvbiBmcF91PGRvdWJsZT4geworICBkb3VibGUgdmFsdWU7CisgIHN0cnVjdCB7CisgICAgdW5zaWduZWQgZnJhY2w7CisgICAgdW5zaWduZWQgZnJhY2g6MjA7CisgICAgdW5zaWduZWQgZXhwOjExOworICAgIHVuc2lnbmVkIHNpZ246MTsKKyAgfSBiaXRzOworICB1aW50NjRfdCBzaWduX21hZ25pdHVkZTsKK307CisKKy8vIFRPRE86IGxvbmcgZG91YmxlLgorCit0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KK3N0YXRpYyBpbmxpbmUgYXV0byBTaWduQW5kTWFnbml0dWRlVG9CaWFzZWQoY29uc3QgVCYgdmFsdWUpIC0+IGRlY2x0eXBlKGZwX3U8VD46OnNpZ25fbWFnbml0dWRlKSB7CisgIGZwX3U8VD4gdTsKKyAgdS52YWx1ZSA9IHZhbHVlOworICBpZiAodS5iaXRzLnNpZ24pIHsKKyAgICByZXR1cm4gfnUuc2lnbl9tYWduaXR1ZGUgKyAxOworICB9IGVsc2UgeworICAgIHUuYml0cy5zaWduID0gMTsKKyAgICByZXR1cm4gdS5zaWduX21hZ25pdHVkZTsKKyAgfQorfQorCisvLyBCYXNlZCBvbiB0aGUgZXhpc3RpbmcgZ29vZ2xldGVzdCBpbXBsZW1lbnRhdGlvbiwgd2hpY2ggdXNlcyBhIGZpeGVkIDQgdWxwIGJvdW5kLgordGVtcGxhdGUgPHR5cGVuYW1lIFQ+CitzaXplX3QgVWxwRGlzdGFuY2UoVCBsaHMsIFQgcmhzKSB7CisgIGNvbnN0IGF1dG8gYmlhc2VkMSA9IFNpZ25BbmRNYWduaXR1ZGVUb0JpYXNlZChsaHMpOworICBjb25zdCBhdXRvIGJpYXNlZDIgPSBTaWduQW5kTWFnbml0dWRlVG9CaWFzZWQocmhzKTsKKyAgcmV0dXJuIChiaWFzZWQxID49IGJpYXNlZDIpID8gKGJpYXNlZDEgLSBiaWFzZWQyKSA6IChiaWFzZWQyIC0gYmlhc2VkMSk7Cit9CisKK3RlbXBsYXRlIDxzaXplX3QgVUxQLCB0eXBlbmFtZSBUPgorc3RydWN0IEZwVWxwRXEgeworICA6OnRlc3Rpbmc6OkFzc2VydGlvblJlc3VsdCBvcGVyYXRvcigpKGNvbnN0IGNoYXIqIC8qIGV4cGVjdGVkX2V4cHJlc3Npb24gKi8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciogLyogYWN0dWFsX2V4cHJlc3Npb24gKi8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVCBleHBlY3RlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUIGFjdHVhbCkgeworICAgIGlmICghaXNuYW4oZXhwZWN0ZWQpICYmICFpc25hbihhY3R1YWwpICYmIFVscERpc3RhbmNlKGV4cGVjdGVkLCBhY3R1YWwpIDw9IFVMUCkgeworICAgICAgcmV0dXJuIDo6dGVzdGluZzo6QXNzZXJ0aW9uU3VjY2VzcygpOworICAgIH0KKworICAgIC8vIE91dHB1dCB0aGUgYWN0dWFsIGFuZCBleHBlY3RlZCB2YWx1ZXMgYXMgaGV4IGZsb2F0aW5nIHBvaW50LgorICAgIGNoYXIgZXhwZWN0ZWRfc3RyWzY0XTsKKyAgICBjaGFyIGFjdHVhbF9zdHJbNjRdOworICAgIHNucHJpbnRmKGV4cGVjdGVkX3N0ciwgc2l6ZW9mKGV4cGVjdGVkX3N0ciksICIlYSIsIGV4cGVjdGVkKTsKKyAgICBzbnByaW50ZihhY3R1YWxfc3RyLCBzaXplb2YoYWN0dWFsX3N0ciksICIlYSIsIGFjdHVhbCk7CisKKyAgICByZXR1cm4gOjp0ZXN0aW5nOjpBc3NlcnRpb25GYWlsdXJlKCkKKyAgICAgICAgPDwgImV4cGVjdGVkICgiIDw8IGV4cGVjdGVkX3N0ciA8PCAiKSAhPSBhY3R1YWwgKCIgPDwgYWN0dWFsX3N0ciA8PCAiKSI7CisgIH0KK307CisKKy8vIFJ1bnMgdGhyb3VnaCB0aGUgYXJyYXkgJ2RhdGEnIGFwcGx5aW5nICdmJyB0byBlYWNoIG9mIHRoZSBpbnB1dCB2YWx1ZXMKKy8vIGFuZCBhc3NlcnRpbmcgdGhhdCB0aGUgcmVzdWx0IGlzIHdpdGhpbiBVTFAgdWxwcyBvZiB0aGUgZXhwZWN0ZWQgdmFsdWUuCisvLyBGb3IgdGVzdGluZyBhIChkb3VibGUpIC0+IGRvdWJsZSBmdW5jdGlvbiBsaWtlIHNpbigzKS4KK3RlbXBsYXRlIDxzaXplX3QgVUxQLCB0eXBlbmFtZSBSVCwgdHlwZW5hbWUgVCwgc2l6ZV90IE4+Cit2b2lkIERvTWF0aERhdGFUZXN0KGRhdGFfMV8xX3Q8UlQsIFQ+ICgmZGF0YSlbTl0sIFJUIGYoVCkpIHsKKyAgZmVzZXRlbnYoRkVfREZMX0VOVik7CisgIEZwVWxwRXE8VUxQLCBSVD4gcHJlZGljYXRlOworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IE47ICsraSkgeworICAgIEVYUEVDVF9QUkVEX0ZPUk1BVDIocHJlZGljYXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVtpXS5leHBlY3RlZCwgZihkYXRhW2ldLmlucHV0KSkgPDwgIkZhaWxlZCBvbiBlbGVtZW50ICIgPDwgaTsKKyAgfQorfQorCisvLyBSdW5zIHRocm91Z2ggdGhlIGFycmF5ICdkYXRhJyBhcHBseWluZyAnZicgdG8gZWFjaCBvZiB0aGUgaW5wdXQgdmFsdWVzCisvLyBhbmQgYXNzZXJ0aW5nIHRoYXQgdGhlIHJlc3VsdCBpcyB3aXRoaW4gVUxQIHVscHMgb2YgdGhlIGV4cGVjdGVkIHZhbHVlLgorLy8gRm9yIHRlc3RpbmcgYSAoZG91YmxlKSAtPiBpbnQgZnVuY3Rpb24gbGlrZSBpbG9nYigzKS4KK3RlbXBsYXRlIDxzaXplX3QgVUxQLCB0eXBlbmFtZSBULCBzaXplX3QgTj4KK3ZvaWQgRG9NYXRoRGF0YVRlc3QoZGF0YV9pbnRfMV90PFQ+ICgmZGF0YSlbTl0sIGludCBmKFQpKSB7CisgIGZlc2V0ZW52KEZFX0RGTF9FTlYpOworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IE47ICsraSkgeworICAgIEVYUEVDVF9FUShkYXRhW2ldLmV4cGVjdGVkLCBmKGRhdGFbaV0uaW5wdXQpKSA8PCAiRmFpbGVkIG9uIGVsZW1lbnQgIiA8PCBpOworICB9Cit9CisKKy8vIFJ1bnMgdGhyb3VnaCB0aGUgYXJyYXkgJ2RhdGEnIGFwcGx5aW5nICdmJyB0byBlYWNoIG9mIHRoZSBwYWlycyBvZiBpbnB1dCB2YWx1ZXMKKy8vIGFuZCBhc3NlcnRpbmcgdGhhdCB0aGUgcmVzdWx0IGlzIHdpdGhpbiBVTFAgdWxwcyBvZiB0aGUgZXhwZWN0ZWQgdmFsdWUuCisvLyBGb3IgdGVzdGluZyBhIChkb3VibGUsIGRvdWJsZSkgLT4gZG91YmxlIGZ1bmN0aW9uIGxpa2UgcG93KDMpLgordGVtcGxhdGUgPHNpemVfdCBVTFAsIHR5cGVuYW1lIFJULCB0eXBlbmFtZSBUMSwgdHlwZW5hbWUgVDIsIHNpemVfdCBOPgordm9pZCBEb01hdGhEYXRhVGVzdChkYXRhXzFfMl90PFJULCBUMSwgVDI+ICgmZGF0YSlbTl0sIFJUIGYoVDEsIFQyKSkgeworICBmZXNldGVudihGRV9ERkxfRU5WKTsKKyAgRnBVbHBFcTxVTFAsIFJUPiBwcmVkaWNhdGU7CisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgTjsgKytpKSB7CisgICAgRVhQRUNUX1BSRURfRk9STUFUMihwcmVkaWNhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICBkYXRhW2ldLmV4cGVjdGVkLCBmKGRhdGFbaV0uaW5wdXQxLCBkYXRhW2ldLmlucHV0MikpIDw8ICJGYWlsZWQgb24gZWxlbWVudCAiIDw8IGk7CisgIH0KK30KKworLy8gUnVucyB0aHJvdWdoIHRoZSBhcnJheSAnZGF0YScgYXBwbHlpbmcgJ2YnIHRvIGVhY2ggb2YgdGhlIGlucHV0IHZhbHVlcworLy8gYW5kIGFzc2VydGluZyB0aGF0IHRoZSByZXN1bHRzIGFyZSB3aXRoaW4gVUxQIHVscHMgb2YgdGhlIGV4cGVjdGVkIHZhbHVlcy4KKy8vIEZvciB0ZXN0aW5nIGEgKGRvdWJsZSwgZG91YmxlKiwgZG91YmxlKikgLT4gdm9pZCBmdW5jdGlvbiBsaWtlIHNpbmNvcygzKS4KK3RlbXBsYXRlIDxzaXplX3QgVUxQLCB0eXBlbmFtZSBSVDEsIHR5cGVuYW1lIFJUMiwgdHlwZW5hbWUgVDEsIHNpemVfdCBOPgordm9pZCBEb01hdGhEYXRhVGVzdChkYXRhXzJfMV90PFJUMSwgUlQyLCBUMT4gKCZkYXRhKVtOXSwgdm9pZCBmKFQxLCBSVDEqLCBSVDIqKSkgeworICBmZXNldGVudihGRV9ERkxfRU5WKTsKKyAgRnBVbHBFcTxVTFAsIFJUMT4gcHJlZGljYXRlMTsKKyAgRnBVbHBFcTxVTFAsIFJUMj4gcHJlZGljYXRlMjsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBOOyArK2kpIHsKKyAgICBSVDEgb3V0MTsKKyAgICBSVDIgb3V0MjsKKyAgICBmKGRhdGFbaV0uaW5wdXQsICZvdXQxLCAmb3V0Mik7CisgICAgRVhQRUNUX1BSRURfRk9STUFUMihwcmVkaWNhdGUxLCBkYXRhW2ldLmV4cGVjdGVkMSwgb3V0MSkgPDwgIkZhaWxlZCBvbiBlbGVtZW50ICIgPDwgaTsKKyAgICBFWFBFQ1RfUFJFRF9GT1JNQVQyKHByZWRpY2F0ZTIsIGRhdGFbaV0uZXhwZWN0ZWQyLCBvdXQyKSA8PCAiRmFpbGVkIG9uIGVsZW1lbnQgIiA8PCBpOworICB9Cit9CisKKy8vIFJ1bnMgdGhyb3VnaCB0aGUgYXJyYXkgJ2RhdGEnIGFwcGx5aW5nICdmJyB0byBlYWNoIG9mIHRoZSBpbnB1dCB2YWx1ZXMKKy8vIGFuZCBhc3NlcnRpbmcgdGhhdCB0aGUgcmVzdWx0cyBhcmUgd2l0aGluIFVMUCB1bHBzIG9mIHRoZSBleHBlY3RlZCB2YWx1ZXMuCisvLyBGb3IgdGVzdGluZyBhIChkb3VibGUsIGRvdWJsZSopIC0+IGRvdWJsZSBmdW5jdGlvbiBsaWtlIG1vZGYoMykuCit0ZW1wbGF0ZSA8c2l6ZV90IFVMUCwgdHlwZW5hbWUgUlQxLCB0eXBlbmFtZSBSVDIsIHR5cGVuYW1lIFQxLCBzaXplX3QgTj4KK3ZvaWQgRG9NYXRoRGF0YVRlc3QoZGF0YV8yXzFfdDxSVDEsIFJUMiwgVDE+ICgmZGF0YSlbTl0sIFJUMSBmKFQxLCBSVDIqKSkgeworICBmZXNldGVudihGRV9ERkxfRU5WKTsKKyAgRnBVbHBFcTxVTFAsIFJUMT4gcHJlZGljYXRlMTsKKyAgRnBVbHBFcTxVTFAsIFJUMj4gcHJlZGljYXRlMjsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBOOyArK2kpIHsKKyAgICBSVDEgb3V0MTsKKyAgICBSVDIgb3V0MjsKKyAgICBvdXQxID0gZihkYXRhW2ldLmlucHV0LCAmb3V0Mik7CisgICAgRVhQRUNUX1BSRURfRk9STUFUMihwcmVkaWNhdGUxLCBkYXRhW2ldLmV4cGVjdGVkMSwgb3V0MSkgPDwgIkZhaWxlZCBvbiBlbGVtZW50ICIgPDwgaTsKKyAgICBFWFBFQ1RfUFJFRF9GT1JNQVQyKHByZWRpY2F0ZTIsIGRhdGFbaV0uZXhwZWN0ZWQyLCBvdXQyKSA8PCAiRmFpbGVkIG9uIGVsZW1lbnQgIiA8PCBpOworICB9Cit9CisKKy8vIFJ1bnMgdGhyb3VnaCB0aGUgYXJyYXkgJ2RhdGEnIGFwcGx5aW5nICdmJyB0byBlYWNoIG9mIHRoZSBpbnB1dCB2YWx1ZXMKKy8vIGFuZCBhc3NlcnRpbmcgdGhhdCB0aGUgcmVzdWx0cyBhcmUgd2l0aGluIFVMUCB1bHBzIG9mIHRoZSBleHBlY3RlZCB2YWx1ZXMuCisvLyBGb3IgdGVzdGluZyBhIChkb3VibGUsIGludCopIC0+IGRvdWJsZSBmdW5jdGlvbiBsaWtlIGZyZXhwKDMpLgordGVtcGxhdGUgPHNpemVfdCBVTFAsIHR5cGVuYW1lIFJUMSwgdHlwZW5hbWUgVDEsIHNpemVfdCBOPgordm9pZCBEb01hdGhEYXRhVGVzdChkYXRhXzFfaW50XzFfdDxSVDEsIFQxPiAoJmRhdGEpW05dLCBSVDEgZihUMSwgaW50KikpIHsKKyAgZmVzZXRlbnYoRkVfREZMX0VOVik7CisgIEZwVWxwRXE8VUxQLCBSVDE+IHByZWRpY2F0ZTE7CisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgTjsgKytpKSB7CisgICAgUlQxIG91dDE7CisgICAgaW50IG91dDI7CisgICAgb3V0MSA9IGYoZGF0YVtpXS5pbnB1dCwgJm91dDIpOworICAgIEVYUEVDVF9QUkVEX0ZPUk1BVDIocHJlZGljYXRlMSwgZGF0YVtpXS5leHBlY3RlZDEsIG91dDEpIDw8ICJGYWlsZWQgb24gZWxlbWVudCAiIDw8IGk7CisgICAgRVhQRUNUX0VRKGRhdGFbaV0uZXhwZWN0ZWQyLCBvdXQyKSA8PCAiRmFpbGVkIG9uIGVsZW1lbnQgIiA8PCBpOworICB9Cit9CisKKy8vIFJ1bnMgdGhyb3VnaCB0aGUgYXJyYXkgJ2RhdGEnIGFwcGx5aW5nICdmJyB0byBlYWNoIG9mIHRoZSBpbnB1dCB2YWx1ZXMKKy8vIGFuZCBhc3NlcnRpbmcgdGhhdCB0aGUgcmVzdWx0cyBhcmUgd2l0aGluIFVMUCB1bHBzIG9mIHRoZSBleHBlY3RlZCB2YWx1ZXMuCisvLyBGb3IgdGVzdGluZyBhIChkb3VibGUsIGRvdWJsZSwgaW50KikgLT4gZG91YmxlIGZ1bmN0aW9uIGxpa2UgcmVtcXVvKDMpLgordGVtcGxhdGUgPHNpemVfdCBVTFAsIHR5cGVuYW1lIFJUMSwgdHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCBzaXplX3QgTj4KK3ZvaWQgRG9NYXRoRGF0YVRlc3QoZGF0YV8xX2ludF8yX3Q8UlQxLCBUMSwgVDI+ICgmZGF0YSlbTl0sIFJUMSBmKFQxLCBUMiwgaW50KikpIHsKKyAgZmVzZXRlbnYoRkVfREZMX0VOVik7CisgIEZwVWxwRXE8VUxQLCBSVDE+IHByZWRpY2F0ZTE7CisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgTjsgKytpKSB7CisgICAgUlQxIG91dDE7CisgICAgaW50IG91dDI7CisgICAgb3V0MSA9IGYoZGF0YVtpXS5pbnB1dDEsIGRhdGFbaV0uaW5wdXQyLCAmb3V0Mik7CisgICAgRVhQRUNUX1BSRURfRk9STUFUMihwcmVkaWNhdGUxLCBkYXRhW2ldLmV4cGVjdGVkMSwgb3V0MSkgPDwgIkZhaWxlZCBvbiBlbGVtZW50ICIgPDwgaTsKKyAgICBFWFBFQ1RfRVEoZGF0YVtpXS5leHBlY3RlZDIsIG91dDIpIDw8ICJGYWlsZWQgb24gZWxlbWVudCAiIDw8IGk7CisgIH0KK30KKworLy8gUnVucyB0aHJvdWdoIHRoZSBhcnJheSAnZGF0YScgYXBwbHlpbmcgJ2YnIHRvIGVhY2ggb2YgdGhlIHBhaXJzIG9mIGlucHV0IHZhbHVlcworLy8gYW5kIGFzc2VydGluZyB0aGF0IHRoZSByZXN1bHQgaXMgd2l0aGluIFVMUCB1bHBzIG9mIHRoZSBleHBlY3RlZCB2YWx1ZS4KKy8vIEZvciB0ZXN0aW5nIGEgKGRvdWJsZSwgZG91YmxlLCBkb3VibGUpIC0+IGRvdWJsZSBmdW5jdGlvbiBsaWtlIGZtYSgzKS4KK3RlbXBsYXRlIDxzaXplX3QgVUxQLCB0eXBlbmFtZSBSVCwgdHlwZW5hbWUgVDEsIHR5cGVuYW1lIFQyLCB0eXBlbmFtZSBUMywgc2l6ZV90IE4+Cit2b2lkIERvTWF0aERhdGFUZXN0KGRhdGFfMV8zX3Q8UlQsIFQxLCBUMiwgVDM+ICgmZGF0YSlbTl0sIFJUIGYoVDEsIFQyLCBUMykpIHsKKyAgZmVzZXRlbnYoRkVfREZMX0VOVik7CisgIEZwVWxwRXE8VUxQLCBSVD4gcHJlZGljYXRlOworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IE47ICsraSkgeworICAgIEVYUEVDVF9QUkVEX0ZPUk1BVDIocHJlZGljYXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVtpXS5leHBlY3RlZCwgZihkYXRhW2ldLmlucHV0MSwgZGF0YVtpXS5pbnB1dDIsIGRhdGFbaV0uaW5wdXQzKSkgPDwgIkZhaWxlZCBvbiBlbGVtZW50ICIgPDwgaTsKKyAgfQorfQorCmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2V4cF90ZXN0LmNwcCBiL3Rlc3RzL21hdGhfZXhwX3Rlc3QuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiZWIyNTg0Li4wMDAwMDAwCi0tLSBhL3Rlc3RzL21hdGhfZXhwX3Rlc3QuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMTk3NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLQotI2luY2x1ZGUgPG1hdGguaD4KLQotI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+Ci0KLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCi10eXBlZGVmIHN0cnVjdCB7Ci0gIGRvdWJsZSBleHBlY3RlZDsKLSAgZG91YmxlIGNhbGxfZGF0YTsKLX0gZXhwX2ludGVsX2RhdGFfdDsKLQotc3RhdGljIGV4cF9pbnRlbF9kYXRhX3QgZ19leHBfaW50ZWxfZGF0YVtdID0gewotICB7IC8vIEVudHJ5IDAKLSAgICAweDEuMDAwMDAwMDAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZXAtNTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxCi0gICAgMHgxLjAwMDAwMDAwMDAxMWZmZmZmZmZmZmZmZmZmZmZmZmZmcDAsCi0gICAgMHgxLjFmZmZmZmZmZmZmNWVwLTQ0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMgotICAgIDB4MS4wMDAwMDAwMDAyMDdmZmZmZmZmZmZmZmZmZmZmZmQzNHAwLAotICAgIDB4MS4wM2ZmZmZmZmZlZjdmcC0zOQotICB9LAotICB7IC8vIEVudHJ5IDMKLSAgICAweDEuMDAwMDAwMDBjMWI1OTgwMDAwMDAwMDAwMDAyN2E3ZDVwMCwKLSAgICAweDEuODM2YjJmZmY2ZDZjYnAtMzMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0Ci0gICAgMHgxLjAwMDAwMDAzM2QzOTc4MDAwMDAwMDAwMDAwMDJhNTFkcDAsCi0gICAgMHgxLjllOWNiYmZkNjA4MGJwLTMxCi0gIH0sCi0gIHsgLy8gRW50cnkgNQotICAgIDB4MS4wMDNhZjZjMzdjMWQzMDAwMDAwMDAwMDAwMDA5NDQ2ZXAwLAotICAgIDB4MS5kNzdmZDEzZDI3ZmZmcC0xMQotICB9LAotICB7IC8vIEVudHJ5IDYKLSAgICAweDEuMDE2YjRkZjMyOTlkNzdmZmZmZmZmZmZmZmZlODNlMTBwMCwKLSAgICAweDEuNmE0ZDFhZjljYzk4OXAtOAotICB9LAotICB7IC8vIEVudHJ5IDcKLSAgICAweDEuMGNhNGE0MTY2M2ZlMDdmZmZmZmZmZmZmZmZkYWIyMzVwMCwKLSAgICAweDEuOGFlODIzODUwMjMwYnAtNQotICB9LAotICB7IC8vIEVudHJ5IDgKLSAgICAweDEuMTUzOGVhMThhNDU4NTAwMDAwMDAwMDAwMDAzOWUwNTRwMCwKLSAgICAweDEuNDYzNzBkOTE1OTkxYnAtNAotICB9LAotICB7IC8vIEVudHJ5IDkKLSAgICAweDEuNDc0MDhjYjk1ODNjZTAwMDAwMDAwMDAwMDAyYzg5NmZwMCwKLSAgICAweDEuZjZlNGMzY2VkN2M3MnAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwCi0gICAgMHgxLjI3YzJlNGJjMWVlNzA3ZmZmZmZmZmZmZmZmZWIwYzJkcDEsCi0gICAgMHgxLmFjY2ZiZTQ2YjRlZjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMQotICAgIDB4MS41NTdkNGFjZDdlNTU2ODAwMDAwMDAwMDAwMDIwMmM4NnAyLAotICAgIDB4MS5hY2E3YWU4ZGE1YTdicDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMgotICAgIDB4MS45MWE4ZGZmNTQwZmY3MDAwMDAwMDAwMDAwMDJmMWUzM3AyLAotICAgIDB4MS5kNjMzNmE4ODA3N2FhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMwotICAgIDB4MS44ZWRlNDkyZDk2MDcxZmZmZmZmZmZmZmZmZjBhZWNkMnAzLAotICAgIDB4MS40MmVlM2M3ZGM0OTQ2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNAotICAgIDB4MS5hYzUwYjQwOWM4YWVlMDAwMDAwMDAwMDAwMDAyMmNlM3A4LAotICAgIDB4MS44M2Q0YmNkZWJiM2Y0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNQotICAgIDB4MS5mM2U1NThjZjRkZTU0MDAwMDAwMDAwMDAwMDFmNTgwOHAtMjMsCi0gICAgLTB4MS5lOGJkYmZjZDkxNDRlcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNgotICAgIDB4MS45NTFjNmRjNWQyNGUyN2ZmZmZmZmZmZmZmZmI2ZTBjM3AtOSwKLSAgICAtMHgxLjcxZTBiODY5YjVlNzlwMgotICB9LAotICB7IC8vIEVudHJ5IDE3Ci0gICAgMHgxLjEwNjRiMmMxMDNkZGE4MDAwMDAwMDAwMDAwM2ViNWQ3cC0zLAotICAgIC0weDEuMDIzOTNkNTk3Njc2OXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTgKLSAgICAweDEuM2VmMWU5YjNhODFjN2ZmZmZmZmZmZmZmZmZjMzE1cC0yLAotICAgIC0weDEuMmE5Y2FkOTk5ODI2MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkKLSAgICAweDEuNTM0ZDRkZTg3MDcxMzAwMDAwMDAwMDAwMDAzYzZmYjdwLTMsCi0gICAgLTB4MS5jYzM3ZWY3ZGU3NTAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMAotICAgIDB4MS4yMjE3MTQ3Yjg1ZWE5ODAwMDAwMDAwMDAwMDc3NDVhM3AtMSwKLSAgICAtMHgxLjIyZTI0ZmEzZDVjZjlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMQotICAgIDB4MS45NDAzZmQwZWU1MWM4MDAwMDAwMDAwMDAwMDc3MjBmMXAtMiwKLSAgICAtMHgxLmRjMmI1ZGYxZjdkM2RwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMgotICAgIDB4MS5iYWRlZDMwY2JmMWMzZmZmZmZmZmZmZmZmZmZiZDkwNHAtMSwKLSAgICAtMHgxLjI5MGVhMDllMzY0NzlwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMwotICAgIDB4MS5mZmU1ZDBiYjdlYWJmMDAwMDAwMDAwMDAwMDAzMDMyMHAtMSwKLSAgICAtMHgxLmEyZmVmZWZkNTgwZGZwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQKLSAgICAweDEuZmZmZmZmODRiMzljNGZmZmZmZmZmZmZmZmZmZjE3ZjRwLTEsCi0gICAgLTB4MS5lZDMxOGVmYjYyN2VhcC0yNwotICB9LAotICB7IC8vIEVudHJ5IDI1Ci0gICAgMHgxLmZmZmZmZmZhZDBhZTY4MDAwMDAwMDAwMDAwMDlmMWE4cC0xLAotICAgIC0weDEuNGJkNDY2MDFhZTFlZnAtMzEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNgotICAgIDB4MS5mZmZmZmZmZmZmNzAwMDAwMDAwMDAwMDAwMDAwMDAwM3AtMSwKLSAgICAtMHgxLjIwMDAwMDAwMDAyODhwLTQyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcKLSAgICAweDEuZmZmZmZmZmZmZmZkcC0xLAotICAgIC0weDEuODAwMDAwMDAwMDAxMnAtNDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOAotICAgIDB4MS5mZmZmZmZmZmZmZmZjMHAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTUxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkKLSAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMAotICAgIDB4MS4wMDAwMDAwMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZnAwLAotICAgIDB4MS5mZmZmZmZmZmZmZmUwcC00OAotICB9LAotICB7IC8vIEVudHJ5IDMxCi0gICAgMHgxLjAwMDAwMDAxN2ZmZTgwMDAwMDAwMDAwMDAwMDM1ZmZkcDAsCi0gICAgMHgxLjdmZmU3ZmZlZTAwMjRwLTMyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIKLSAgICAweDEuMDAwMDAwMDE4MDAxN2ZmZmZmZmZmZmZmZmZmYzlmZmRwMCwKLSAgICAweDEuODAwMTdmZmVkZmZkY3AtMzIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMwotICAgIDB4MS4wMDAwMDA3NWU5ZjY0MDAwMDAwMDAwMDAwMDBiMWU4MHAwLAotICAgIDB4MS5kN2E3ZDg5MzYwOWU1cC0yNgotICB9LAotICB7IC8vIEVudHJ5IDM0Ci0gICAgMHgxLjAwMDZlODM3MzZmOGM4MDAwMDAwMDAwMDAwMGFhMGFmcDAsCi0gICAgMHgxLmJhMDdkNzMyNTBkZTdwLTE0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzUKLSAgICAweDEuZGU3Y2Q2NzUxMDI5YTAwMDAwMDAwMDAwMDBlOGJiMmZwMTYsCi0gICAgMHgxLjc2ZTdlNWQ3YjZlYWNwMwotICB9LAotICB7IC8vIEVudHJ5IDM2Ci0gICAgMHgxLjFkNzE5NjVmNTE2YWQ4MDAwMDAwMDAwMDAwOWY3ZTk3cDE5LAotICAgIDB4MS5hOGVhZDA1OGJjNmI4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNwotICAgIDB4MS5hOGMwMmU5NzRjMzE0ZmZmZmZmZmZmZmZmZmUyMWYwM3AyNSwKLSAgICAweDEuMWQ1YzJkYWViZTM2N3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzgKLSAgICAweDEuYjg5MGNhODYzN2FlMWZmZmZmZmZmZmZmZmZlNDIxNjFwNDAsCi0gICAgMHgxLmM0NGNlMGQ3MTZhMWFwNAotICB9LAotICB7IC8vIEVudHJ5IDM5Ci0gICAgMHgxLmYwM2Y1NmE4OGI1ZDc4MWM5MDVmNmI1MWM3NmFlOTgxcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNQotICB9LAotICB7IC8vIEVudHJ5IDQwCi0gICAgMHgxLmZmMDAzZmY1NTZhYTg3ZWJiMDZlMGViNTcyODc1NjdmcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwYXAtOQotICB9LAotICB7IC8vIEVudHJ5IDQxCi0gICAgMHgxLjhlYmVmOWVhYzgxZmM4MDAxYTNkYmQ4ODI0OGVmZTEzcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAyNXAtMgotICB9LAotICB7IC8vIEVudHJ5IDQyCi0gICAgMHgxLmZjMDNmZDU2YTQ2OWI4MDAwMDhiY2RmZTAxOGRiYzc0cC0xLAotICAgIC0weDEuMDAwMDAwMDE3MTA1MXAtNwotICB9LAotICB7IC8vIEVudHJ5IDQzCi0gICAgMHgxLjc4YjU2MTJkYmVlMDEwMDA4ZDNiYzA3MzVjODBmN2E4cC0yLAotICAgIC0weDEuMDAwMDAxOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQKLSAgICAweDEuOTY5Yzg3MGVhOWY1YTgwMWRkYzFmZjA4YTAwOGRiMDlwLTkzLAotICAgIC0weDEuMDAwMDAxZTNlcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NQotICAgIDB4MS43OGFmODY3YmM1MTFkMzIxY2Q0NTRkYmRkYWY4MDZiY3AtMiwKLSAgICAtMHgxLjAwMDNmYzBwMAotICB9LAotICB7IC8vIEVudHJ5IDQ2Ci0gICAgMHgxLmZmZmZmZmZmZmVmZmY4MDAwMDAwMDAwNDAwMTAwMDE1cC0xLAotICAgIC0weDEuMDAwODAwMDAwMDRwLTQxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDcKLSAgICAweDEuNzg5MjE0MDkzYzgxZDNiNjVmYWM2NTlmYjNmYzgyNDlwLTIsCi0gICAgLTB4MS4wMDE4MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDgKLSAgICAweDEuOGUyOThlNTJmY2NlODgwMTRhZDk1YzRmM2JkODg3NjVwLTEsCi0gICAgLTB4MS4wMThwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OQotICAgIDB4MS5hYTZmZmIwYmE1MTlmODAxZjljM2UxNDZhMTVkYzAyY3AtMjQsCi0gICAgLTB4MS4wMjAxMHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTAKLSAgICAweDEuZGQ3YTQ2YjhkODVkNjdkNjczNTkzMzcxMDljMjUxNjhwLTM3NiwKLSAgICAtMHgxLjA0MHA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTEKLSAgICAweDEuMzNlOTZjYTNiY2YzZTgwMWY5YjNmNjEyNmZjNjA2OTlwLTEsCi0gICAgLTB4MS4wNDViOTQ4NzI0MTMwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIKLSAgICAweDEuZWYyZjY1MmRjMjYwNTdmZmZjOThhYTU0ZDRjMzNjMTZwLTEsCi0gICAgLTB4MS4xMThlMDVjZmEzZTgwcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTMKLSAgICAweDEuYTVkMmNlOTc3YmJlMjgwNDhiMzE2OTI3Zjk3MGMyMDFwLTcsCi0gICAgLTB4MS4xNjkxNTZlMTdiOWI5cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NAotICAgIDB4MS5hMDIwN2NmNDE5MGY3MDA0NTIyODJiMDRmYTM5MDQwN3AtNywKLSAgICAtMHgxLjE3NzAxYjNiZjA1MDJwMgotICB9LAotICB7IC8vIEVudHJ5IDU1Ci0gICAgMHgxLmZiOTdlMWZmOGNiYmE3YWRmMTZmM2ZiZDY4NzhmNTYwcC0xLAotICAgIC0weDEuMWI0cC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTYKLSAgICAweDEuYmNmZjA5YWUzMGM0NjgwNGE2ZmFmZDU1MDc2NmVlZDJwLTEsCi0gICAgLTB4MS4xZjRwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NwotICAgIDB4MS5mZWU3MGNmNWU4NmVmNGU1NGQwYjFmYTI3MDFhMzQ2ZnAtODMzLAotICAgIC0weDEuMjA1OWFkNDJjM2NmN3A5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTgKLSAgICAweDEuN2NjZDNmMzM0MDc0NTgwMTE0NzBiM2Y2NzE5N2E5YzhwLTEsCi0gICAgLTB4MS4yZjI2OWQyY2EzOGQycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNTkKLSAgICAweDEuMDljZGIzNmU5NzdiYzdmZmZmZTZkNGRkYmIxOGQ1NTNwLTE0LAotICAgIC0weDEuMzU1M2NmMTgyOGIwYnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAKLSAgICAweDEuZjlkYzVjZDU0NmQ5YjgwMGRjM2Q5NTUxOWRjNjdlZThwLTQ0OSwKLSAgICAtMHgxLjM2OGFjMDgzMTI4ZmNwOAotICB9LAotICB7IC8vIEVudHJ5IDYxCi0gICAgMHgxLmYxYzUzYzkwN2Y2ZjU3NmU2MmU0MDEzMTViYWZjNjllcC0xNSwKLSAgICAtMHgxLjM3NmU4ZjY3OWFlMTZwMwotICB9LAotICB7IC8vIEVudHJ5IDYyCi0gICAgMHgxLmYyNDU5NTk1NGU2NjE4MDI4OTY1YTlkNjdlZGVhZjdicC04LAotICAgIC0weDEuMzg0NGY2NzQ5NWY3ZHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjMKLSAgICAweDEuZmI1NjUyMTI5MGEyMjI1MjdkMWQzYzM2MzgyNjVmNDZwLTkwNSwKLSAgICAtMHgxLjM5NGU5ZTFiMDg5ZDdwOQotICB9LAotICB7IC8vIEVudHJ5IDY0Ci0gICAgMHgxLmRjMTY1OGZmNmUwNzA3ZmFmZDJmZDgzMDZjNGIxODk3cC0xMTQsCi0gICAgLTB4MS4zOTk3ZWE1MWU1MjcxcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NQotICAgIDB4MS5lYzhiM2MwOTBmOGI5NzcxNmEzZDM4ZGU0NmQ2OGExZXAtMSwKLSAgICAtMHgxLjNkNWRlNTYwZTE5MDZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NgotICAgIDB4MS5hZjQxMWJmOTg1MjIwYjU2MjkwOWM2NTJjMDg3ZmVmNHAtOTUxLAotICAgIC0weDEuNDk1NGFhNTUyYTk2MHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjcKLSAgICAweDEuZTFiNzFkMjM4ZDUwNzdmZTNiZWEyMjJmY2JhMTU2MDhwLTk1NywKLSAgICAtMHgxLjRiNWFkNmE5YWQ2YWRwOQotICB9LAotICB7IC8vIEVudHJ5IDY4Ci0gICAgMHgxLmNjNjY2YTM1MTljYTA4MGYxZGFlZjU3ZjkyYjQxZDI5cC05NzMsCi0gICAgLTB4MS41MGVjMzI2ODZhODM0cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OQotICAgIDB4MS4yMjQ2MmJkNWY3MmIwZmZmYTYwODViMDQ0MjdmZGY1ZHAtOTc2LAotICAgIC0weDEuNTIzMTY4NzJiMDIyMnA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzAKLSAgICAweDEuYzFlYmMxODYxMDMwMWZmZjI0MjRiYzM5MzYyNjBkZDJwLTk4MSwKLSAgICAtMHgxLjUzYjRlZDNiNGVjNzdwOQotICB9LAotICB7IC8vIEVudHJ5IDcxCi0gICAgMHgxLjhkMDE1YmNhZjllMThiNTdmZGYwNTcyMzlkOTRmNTg2cC05ODEsCi0gICAgLTB4MS41M2M0ZjEzYzRmMDc5cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MgotICAgIDB4MS5mZDU4MzU0NjBlZDQ4YzRlMTQyMDczMDlhMTIzN2Y5MHAtOTg5LAotICAgIC0weDEuNTY2YWQ0YTQxYmVjMHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzMKLSAgICAweDEuNTg3MzNmYmMwODhlZjdmZjM4ZTE1Zjk0MTY2YzAyMmNwLTk5NCwKLSAgICAtMHgxLjU4NTg4M2U3YjNiMzhwOQotICB9LAotICB7IC8vIEVudHJ5IDc0Ci0gICAgMHgxLmIwNTIwOTA2OTA0ODE4MDJhY2YwMTY5ZjYyYmYzMmM5cC0zMiwKLSAgICAtMHgxLjVhODFlY2Y2OGJlY2NwNAotICB9LAotICB7IC8vIEVudHJ5IDc1Ci0gICAgMHgxLmRmNjE1NGJjNjQ0ZGFjMGY5ZTNhNTY2NDY5NDhiN2M1cC0xMDE1LAotICAgIC0weDEuNWY3NTYyOWFmNGViN3A5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzYKLSAgICAweDEuZmY0YjBkYTM3MDgzNTAyYzExNGE3YWM1NmFjMDQ5OGZwLTEwMjMsCi0gICAgLTB4MS42MjMyZWIxYzQzMmYycDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NwotICAgIDB4MS42MjVlZGQ0Yzc1MTNlODQyZjI3YTkzMWMyYmJlMDA3Y3AtMTAyMywKLSAgICAtMHgxLjYyNjFkN2RiZjQ4Y2NwOQotICB9LAotICB7IC8vIEVudHJ5IDc4Ci0gICAgMHgxLmQ1NzJkMjQ5NzNiZTIwMDA2YmFkOTJlMjliY2JhOTg0cC0xLAotICAgIC0weDEuNjM2NGI4Zjc0N2UzMnAtNAotICB9LAotICB7IC8vIEVudHJ5IDc5Ci0gICAgMHgxLmVlNGRkNzkyMjQ1Nzc4MDIwMjUwZjg5ODFkMWEwYWQxcC05LAotICAgIC0weDEuNjUyNDc5NmI0MDg5NXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODAKLSAgICAweDEuZjY2MGM1OWIyOTQ1MDVkODk4OWY4NWY4ZWQyYTE4NzhwLTUsCi0gICAgLTB4MS42NTUxZGFhZTM2OWNlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MQotICAgIDB4MS5hYTA3MDQ0OWVmZmZlOWI5MTA2NTc4OThjZGMwY2NkZHAtMTAzNywKLSAgICAtMHgxLjY3MjQ2M2YxNDE2MDdwOQotICB9LAotICB7IC8vIEVudHJ5IDgyCi0gICAgMHgxLmQ0ZTdmYzMzMWI3MzI3ZmZjY2Y0ZWUwYzU5YWE3YjIycC0xLAotICAgIC0weDEuNjgyMGM5OWMxZGMxNnAtNAotICB9LAotICB7IC8vIEVudHJ5IDgzCi0gICAgMHgxLmZjYzQ0OGFjZjQ3NjU3NWM2NmVlMzk2OTEyZGJhYWNkcC01MjgsCi0gICAgLTB4MS42ZDRiN2U4MmMzZjAycDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NAotICAgIDB4MS43ZmZmNWExYmZmY2IyMDYyYzlhYWE1YjA3ZDA5NzI1NXAtNTI5LAotICAgIC0weDEuNmU0NGY3NjVmZGE3NnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgODUKLSAgICAweDEuZmE0ZWNkOGFlNTcxODdmZmZmZmZmOTkxMGM0NzZjNjRwLTEsCi0gICAgLTB4MS42ZTU2ZTcyNWI4MzA0cC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgODYKLSAgICAweDEuZThkMmRhZmQwMTdjZTgwMzJiY2I4OTQ1OTQ2NGZlN2RwLTMsCi0gICAgLTB4MS42ZWNwMAotICB9LAotICB7IC8vIEVudHJ5IDg3Ci0gICAgMHgxLjIxNGUzNGNhYWM5ZTY3MTM5Njg4YWQxNjMyZGQyMDU1cC0xMDYyLAotICAgIC0weDEuN3A5Ci0gIH0sCi0gIHsgLy8gRW50cnkgODgKLSAgICAweDEuYzg3ZjIxNzc1YTQ4MmEwOWE0NGFmNTljM2MzYWU0NGJwLTEwNzEsCi0gICAgLTB4MS43MmU0MnA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgODkKLSAgICAweDEuYTM0OWIyMzI5YzY3NzdmZmNlNjU5MzRiM2I2MjAzYTdwLTI3MywKLSAgICAtMHgxLjc5NzhiYWM3MTEyMWNwNwotICB9LAotICB7IC8vIEVudHJ5IDkwCi0gICAgMHgxLmQyYTZkNWVhOTk1YzE3YWI0NDgxMzJlMWUwNDUzODA1cC0xLAotICAgIC0weDEuN2JkZTc5ZTBmOTcwY3AtNAotICB9LAotICB7IC8vIEVudHJ5IDkxCi0gICAgMHgxLmI3NzZkYzY0Yzc2ZDE5N2U4YzY0NGRjOGNiNTA5YzRhcC0zLAotICAgIC0weDEuOGEwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MgotICAgIDB4MS40NDQ2ZmNmN2RhNjg5ODAyZDhjNzI1ZGI4YzExNDVhZnAtNzIsCi0gICAgLTB4MS44ZDVjODRmMGJhYzhjcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MwotICAgIDB4MS5lNzJhMGI2OGJiODJiNzhjZTA1MjRkMWFiYjZmN2FiZXAtNzMsCi0gICAgLTB4MS44ZmE2OGI0NDQ3MjMwcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NAotICAgIDB4MS5mYzMzZDVlMWNhNmRmN2Q1MDY5YjAzZGM1YTY4M2U0ZnAtNzUsCi0gICAgLTB4MS45YTY3MTY5M2I5NDZicDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NQotICAgIDB4MS5lNjk4MWZkNmVmNzljN2ZmZmZmY2M3MjAxZjgyZmQ0OXAtMSwKLSAgICAtMHgxLmEwZWM4OWY4OTdhNzVwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NgotICAgIDB4MS5mMmI5ZDNiNmNmMjI3N2ExMjgzZjhlMDA3NDNhMDY2OXAtMSwKLSAgICAtMHgxLmFlNnAtNgotICB9LAotICB7IC8vIEVudHJ5IDk3Ci0gICAgMHgxLmU1MDM0YzhkMTkxYmJmZmY3MTlmMjA5OGUzM2MwNTc3cC0xLAotICAgIC0weDEuYmI5NzA2ZTJmMWJiNHAtNQotICB9LAotICB7IC8vIEVudHJ5IDk4Ci0gICAgMHgxLmYyNGRjOTBmOWZiZWI4MDI4ZmJjYWVlYmFiYzdlOWZjcC0xLAotICAgIC0weDEuYmMzZWRhZDJlMWVmYnAtNgotICB9LAotICB7IC8vIEVudHJ5IDk5Ci0gICAgMHgxLjcxZjIzN2Q2NGE2ZWI0NmFhMTU0NDc2ZmQwZmMzODg2cC0xMSwKLSAgICAtMHgxLmQwNjk3ZWRiZTAwNTJwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMAotICAgIDB4MS5mMTJjMGQzYWRkYWE0ODAwNGIyMzUxNmQyYTExMzgwNHAtMSwKLSAgICAtMHgxLmUxOHAtNgotICB9LAotICB7IC8vIEVudHJ5IDEwMQotICAgIDB4MS5mMTEwZGQ5MDczZDcxODAwYmI0MDU2ODMwYjUxN2IwOHAtMSwKLSAgICAtMHgxLmU1MHAtNgotICB9LAotICB7IC8vIEVudHJ5IDEwMgotICAgIDB4MS5mM2FhN2E4NjA1NzRjMmIwNzgzMDYxZmUxZmQxZGYyZXAtNzA1LAotICAgIC0weDEuZTdmZmZmZmZmZmZmZnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAzCi0gICAgMHgxLmYwZjg5OGQ1NTExNzA4MWZjM2I4NzkyMjA1ZTRlMTMwcC0xLAotICAgIC0weDEuZTgycC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0Ci0gICAgMHgxLmZmODE0ZmZmMThkYWM4NTQxODVkMDE5YjBmOGVhZDM2cC0xLAotICAgIC0weDEuZmFmZWJmYWZlYmZiMHAtMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUKLSAgICAweDEuZmZmZmZmZmYwMWMwNzAxYzQ2MjA4YzU0MTZkOTQzYWRwLTEsCi0gICAgLTB4MS5mYzdmMWZjN2YyMHAtMzQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYKLSAgICAweDEuNzkwN2Q0MTQ4YmQ5MTY4N2ExYjUwZjI2ZTg4MzA3NzVwLTIsCi0gICAgLTB4MS5mZjhmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZjgwMWMwMDAwMDAwMDEzZjkwMGMzcC0xLAotICAgIC0weDEuZmY4ZmZmZmZmZmZmZnAtNTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDgKLSAgICAweDEuZTBmYmIwM2EwYzI3ZDdlODQ4MDRjYWRlYzM3N2JkZjlwLTEsCi0gICAgLTB4MS5mZmVmZmZmZmZmZmZmcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA5Ci0gICAgMHgxLmZmZmZmZmZmZmYwMDA4MDAwMDAwNDAwNDAwMGZmZmY1cC0xLAotICAgIC0weDEuZmZlZmZmZmZmZmZmZnAtNDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTAKLSAgICAweDEuZmZmZmZmZmZmZjAwMDdmZmZmZmZmZmZjMDAxMDAwMTVwLTEsCi0gICAgLTB4MS5mZmYwMDAwMDAwOHAtNDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTEKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTAwMDcxOWVwLTEsCi0gICAgLTB4MS5mZmY4ZTYxZWFkZDQ4cC0xMDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTIKLSAgICAweDEuZmZmZmZmZmZmYzAwMDgwMDAwMDQwMDEwMDAwZmZkNTVwLTEsCi0gICAgLTB4MS5mZmZiZmZmZmZmZmZmcC00MAotICB9LAotICB7IC8vIEVudHJ5IDExMwotICAgIDB4MS5mZmZmZmZmZmZjMDAwMDFjMDAwNDAwMWZjN2ZmZmUxOXAtMSwKLSAgICAtMHgxLmZmZmZmMWZmZmZmZmZwLTQwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE0Ci0gICAgMHgxLmZmODAwZmZlYWFjMDA4NTg5ZjlhOTZhZjczZWFmZjY3cC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmRhNXAtMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTUKLSAgICAweDEuZTM1NWJiYWVlOGQ4NTgxNWU0YjQ3NmI3MDRkMGY0ZjFwLTI0LAotICAgIC0weDEuZmZmZmZmZmZmZmY3ZHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2Ci0gICAgMHgxLjc4YjU2MzYyY2VmM2RhOTg0NDUzZDFjNzJjMzQ0YTMxcC0yLAotICAgIC0weDEuZmZmZmZmZmZmZmZmOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDExNwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTgKLSAgICAweDEuNDJlYjlmMzlhZmJhYzdlNWU3M2MzMmEyMWU4NTNmMjZwLTE4NSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVwNgotICB9LAotICB7IC8vIEVudHJ5IDExOQotICAgIDB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDIwcDAsCi0gICAgMHgxLjBwLTUzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwCi0gICAgMHgxLjk1ZTU0YzVkZDQyMTc3ZjUzZjRkNTIxOWRmMTFjYTNicDE4NCwKLSAgICAweDEuMHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIxCi0gICAgMHgxLjk0NzY1MDRiYTg4NTc1OGFhNWZhNzU0NWUxMGU4ZTQ2cDczOCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIyCi0gICAgMHgxLjAxMDA4MDJhYjU1Nzc4MDJiYTQyNGFkNDZiMTA2YTY2cDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDNwLTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjMKLSAgICAweDEuMDAwMDAwNDAwMDAwMDgwMDAwMWNhYWFhYjFiNTU1NTZwMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwN3AtMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQKLSAgICAweDEuZDhlNjRiOGYyNmMxMjg1MTc0ODlhNDkwZTY4NGQ4YThwMiwKLSAgICAweDEuMDAwMDAwMDA4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjUKLSAgICAweDEuNzQ5ZWE3ZTAxNWJjMWRkZGZhMTlmYmIzY2Y4YmRlZDRwMTEsCi0gICAgMHgxLjAwMDAwMDAxMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI2Ci0gICAgMHgxLjBmMmViZDJjNjVkOWE4MDA4MWFjMmU2NWU4MDI1YWIxcDIzLAotICAgIDB4MS4wMDAwMDAwMjBwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNwotICAgIDB4MS4wZjJlYzE0NzNhZmVhODA4MWZhNDU2NjkyN2E0Y2ZkM3AyMywKLSAgICAweDEuMDAwMDAwNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI4Ci0gICAgMHgxLjAwMDAwMDAwMDEwMDA4MDAwMDAwODAwODAwMjAwMDJhcDAsCi0gICAgMHgxLjAwMDgwcC00MAotICB9LAotICB7IC8vIEVudHJ5IDEyOQotICAgIDB4MS4wMDAwMDAwMDAwODAwODAwMDAwMDIwMDQwMDIwMDAwNXAwLAotICAgIDB4MS4wMDFwLTQxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMwCi0gICAgMHgxLjAwMDAwMDAwMDAwMDA4MDA4MDAwMDAwMDAwMjAwNHAwLAotICAgIDB4MS4wMDFwLTUzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMxCi0gICAgMHgxLmE4YmY4MWE1OTdlZGQyMjNmMmRiNmViZmUyZWIxY2MxcDE4NCwKLSAgICAweDEuMDAxNzNlYWIzNjIzYXA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMyCi0gICAgMHgxLjc1ZTU0MTc1YWFiYjM3ZmZmNWU1YjQ0YmEwZjEwMWI3cDExLAotICAgIDB4MS4wMDFjMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMzCi0gICAgMHgxLjYwMDA4ZmJlZDZjNTI4MDIwNmU3OTkwOTMyMWQwOWM4cDEsCi0gICAgMHgxLjAyZjhhZjhhZjhhZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDEzNAotICAgIDB4MS4wNDE4NGJiODBmZjQzZmZmYzg5YzUzZjFlZTA0Y2UwNHAwLAotICAgIDB4MS4wNDBwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzUKLSAgICAweDEuMDAwMDA4NDAwMDIyMDgwMDVkOTYwMGMxMDU2MTNlN2NwMCwKLSAgICAweDEuMDgwcC0yMQotICB9LAotICB7IC8vIEVudHJ5IDEzNgotICAgIDB4MS4yMzM4YWI5Yjc0MzIwODAwMDAwMDA5NzM5MzhiYWNiMHAwLAotICAgIDB4MS4wODAwMDAwMWQwZmM4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM3Ci0gICAgMHgxLmFjYzkxYmZhN2M1NGM4MDM2NTQ4Yzk2OGIzNmU1NzUwcDAsCi0gICAgMHgxLjA4MTQ0MTlkNmE2NWFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzgKLSAgICAweDEuYTRlNDY5MzQxM2I5OTcwNzU1YzE1NjMzYWYyNWY5NmJwNDAwLAotICAgIDB4MS4xNWMxOGRlODc3NTYzcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzkKLSAgICAweDEuMDAwMDAwMDAwMDAwNDgwMDAwMDAwMDAwMDYxZmZmZmZwMCwKLSAgICAweDEuMWZmZmZmZmZmZmZmZnAtNTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDAKLSAgICAweDEuZWFhNTIxZWRmMWJjMjgwMTQ2MDIxOTFjZTYxOGMwNWZwODQ2LAotICAgIDB4MS4yNTg2Y2E5Y2Y0MTFicDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDEKLSAgICAweDEuZmNhOWM0NzAxNmNiMTc2MTdiMjc1YjI5OGNmOWY4OTRwMjYsCi0gICAgMHgxLjJiNTVjMDM3ZWJiOWRwNAotICB9LAotICB7IC8vIEVudHJ5IDE0MgotICAgIDB4MS5mY2JiMWU1YzhkNTM1NzVhYmM3ODcyNmY1Y2VhNmY1MXAyNiwKLSAgICAweDEuMmI1NjRiZWUwYTZjYXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQzCi0gICAgMHgxLmNjMGY5ZDkxMWYxZDEwMDJjZjBhZjM4MmZkZjYyZjAycDAsCi0gICAgMHgxLjJjMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE0NAotICAgIDB4MS5iNjhhMjhiMDlmZTk0N2ZkZjAwMTA0ZjZkOGMyNDgwMXA2LAotICAgIDB4MS4yYzllMzNmNzk0NzY5cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDUKLSAgICAweDEuZDJlMDM1YjE4OTJkNjgwMmE5YzllMjg4ZDhlOTdjOThwMCwKLSAgICAweDEuMzNhNzRmZjA2ZmI2NnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE0NgotICAgIDB4MS42YWNkZTg0NDM1NmM5MjFmYTk5MzEzYWExODY3MDU5M3AzLAotICAgIDB4MS4zNmNjZTNjMzkyNXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ3Ci0gICAgMHgxLjA2ZGFkZWUyOGMxMWM4MDBmYjkwOTQ0MzVjMWRlNzI3cDcsCi0gICAgMHgxLjM4Mzg5YzQ4YjBmY2VwMgotICB9LAotICB7IC8vIEVudHJ5IDE0OAotICAgIDB4MS5jNzhmMzdmMDdjZWE2NDI2ZWQ1NTQ4YjRhMzFkNGFjMnA5MDQsCi0gICAgMHgxLjM5OTczODFkN2Q5NGZwOQotICB9LAotICB7IC8vIEVudHJ5IDE0OQotICAgIDB4MS5iZmUwYzUxOTE2NmM0N2ZlM2E0YjM0ZTZjMzRiNWFlNHAxLAotICAgIDB4MS40MGEzMzljODFjZWNicDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTAKLSAgICAweDEuZmJjOWMzMDYwMzA4NzQ4OGEzZDkyMjY1YjUzYzJhNjVwOTI3LAotICAgIDB4MS40MTlkYmNjNDg2NzcwcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTEKLSAgICAweDEuZjFlZjljOGE0ZmRhZTgwMWIxOWY4ZTQyZWZmMmM0YThwOTMwLAotICAgIDB4MS40MmE1NjVlNDU2ZTA0cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTIKLSAgICAweDEuZGExMzRkNWE0ZDFlMTgwMGM0MzY1NDQ5OTQwNThjZTZwOTM0LAotICAgIDB4MS40NDAyMDEwMDgwNHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTUzCi0gICAgMHgxLmY0ZWM0NDE5NGI2NDI4MDFhNGFmZDRjNTA2MzNlOGFhcDkzOCwKLSAgICAweDEuNDU2YmYyM2UwMjQyOHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTU0Ci0gICAgMHgxLmVhOTFkOTUzM2IzOTQ4MDFiZjNkM2VjOGY4OGRlNTY4cDkzOSwKLSAgICAweDEuNDVjMWZlZWY4MDg2Y3A5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTU1Ci0gICAgMHgxLmNiNDE5YjkyNzliMzU3NjNkMTEzZTZjNWRiNzlkYzU0cDk0MywKLSAgICAweDEuNDcxYzcxYzcxYzcxY3A5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTU2Ci0gICAgMHgxLjZkMTQzMDg4MjgzMjFkZTZmZTY3YTQxMzZmMTdkMWY4cDI5LAotICAgIDB4MS40NzRjOWNjNDRjYzI1cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTcKLSAgICAweDEuYzAxOTRiNDE4NmUyNzgwMTIwYjg3M2Q3MjQ1NmVjZGRwOTU2LAotICAgIDB4MS40YjlhYjE3ODEyMDMwcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTgKLSAgICAweDEuMTVjNjA1ODUzNDc2YjgwMDA4Y2FiYzRiMjA3ZmZkMWZwMCwKLSAgICAweDEuNGU1OWRjN2UyYjA1M3AtNAotICB9LAotICB7IC8vIEVudHJ5IDE1OQotICAgIDB4MS42ZGVlMzg3MzVhNmQzODAwZDhlYzExNzY4MzI3NWYzYXA5NzIsCi0gICAgMHgxLjUxMGM1NDY1ZDk4NGJwOQotICB9LAotICB7IC8vIEVudHJ5IDE2MAotICAgIDB4MS5mMWU5NmJlMmE1MmNkNzc3ZThjZjU0MTg0ZWQ3YWU0OHAwLAotICAgIDB4MS41NDliMGY1NzQyMzgycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTYxCi0gICAgMHgxLmYyNTNjNTk5MGFhZDI4MDAwMDRkYjYxNWIxMTQ4NDc2cDAsCi0gICAgMHgxLjU1MDg1ZmI4NjUwMWFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjIKLSAgICAweDEuMjc5YjFjNDNhMjY2MTdmZjRjNzUwOGMzNWU1NjJiMjJwOTkzLAotICAgIDB4MS41ODM4MzEyNmU5NGJmcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjMKLSAgICAweDEuNmZkNWFiNTkxNTNmMzJhNGEzODM3MTBhMzQxOWY1N2RwOTk2LAotICAgIDB4MS41OTVlNTc5NWU1OTJicDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjQKLSAgICAweDEuNWVjZjE4NzY1Mzk1NDdmZmQ2MTJlNWM0YjcxNWM4YWRwMTAwNCwKLSAgICAweDEuNWMxZTBmMDc4M2MxMHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY1Ci0gICAgMHgxLmYyYTNjMjlmYzZkNzIzYTYzZTM0OWJiY2Q3ODk0YThhcDEwMDgsCi0gICAgMHgxLjVkYWRmNWQxZTQ1MmNwOQotICB9LAotICB7IC8vIEVudHJ5IDE2NgotICAgIDB4MS5lZGNiMTQ4Nzk2MTNlODAxNzYwODdjMWE3NmRlYzk3Y3AxMDA5LAotICAgIDB4MS41ZTA1NmVkNDBlNTZlcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjcKLSAgICAweDEuZmNjN2U1Y2E4MGIxZjc1YzE0ZDc2MmY4NDZiYzE2NjlwMCwKLSAgICAweDEuNWZhOTdiYjRlOTA2MHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE2OAotICAgIDB4MS5mOGI1Yzk4N2EzZDg3N2UxOGJmY2FkYTUwZjFjNTRiMHAzLAotICAgIDB4MS42MTBlNDdlMTMyNWRjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjkKLSAgICAweDEuZjFlOWQ4Y2YyNGZjZDgwMjUxMjc4NzdhNzM4ZWIyZDFwNywKLSAgICAweDEuNjExYjE5ZGNjNTNlNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTcwCi0gICAgMHgxLmZmYzA0NTY5MmU4YTAzOWM1NjIyYjgyMTlmMTljNjE5cDEwMjMsCi0gICAgMHgxLjYyZTQxZmZmZmZmZmFwOQotICB9LAotICB7IC8vIEVudHJ5IDE3MQotICAgIDB4MS5mZmMwNDU2OTMwMDlkM2QwNjUwNjJmOTI2N2RmZjU1ZXAxMDIzLAotICAgIDB4MS42MmU0MnA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTcyCi0gICAgMHgxLmZmYzA0NTY5YTJmYjgzNjc5MjM5MDkxZGYwNjg5OTdlcDEwMjMsCi0gICAgMHgxLjYyZTQyMDAwMDAxY2NwOQotICB9LAotICB7IC8vIEVudHJ5IDE3MwotICAgIDB4MS5mZmZmZmZmZmZlYjJhMWIwZTI2M2FjNjgwNzZlZDRlMHAxMDIzLAotICAgIDB4MS42MmU0MmZlZmEzOWVhcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzQKLSAgICAweDEuMDAwMDBiNDAwMDNmNDgwMGVkNGUwMjliNmI2NWRkYjFwMCwKLSAgICAweDEuNjgwcC0yMQotICB9LAotICB7IC8vIEVudHJ5IDE3NQotICAgIDB4MS4xN2U2MmY3MGJlYzk5ODAxYTI5MzZlODliNTRjNTI1NnA4LAotICAgIDB4MS42ODlhN2RjNTkyMWI4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzYKLSAgICAweDEuNmRhYWExMzM2YTMxNTAwMTc0Y2EwYmU1Njk4MDZmZGVwMjY0LAotICAgIDB4MS42ZWIxZGU2OWFjZTMycDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzcKLSAgICAweDEuNzJhOWRhZGVhNzQ5OGM5NWE1MTRjMDFkNTQwM2U1ZDBwMCwKLSAgICAweDEuN2IwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc4Ci0gICAgMHgxLjFlZDNmZTY0ZmM1Mzk4MDBmOWNkMzRlYzRjODNkOWQxcDIsCi0gICAgMHgxLjdmZmZmZmZmZmZmZjlwMAotICB9LAotICB7IC8vIEVudHJ5IDE3OQotICAgIDB4MS4wMDAwMDAwMDAwMDAxODAwMDAwMDAwMDAwMDFmZmZmZnAwLAotICAgIDB4MS43ZmZmZmZmZmZmZmZmcC01MgotICB9LAotICB7IC8vIEVudHJ5IDE4MAotICAgIDB4MS5mZTMxMTUyYjdlZjZiMWUwYThiOWZlYzdlY2RkODVhNHA1NTMsCi0gICAgMHgxLjhwOAotICB9LAotICB7IC8vIEVudHJ5IDE4MQotICAgIDB4MS43NGQ3N2I3NmQ5NTE2MzIyNmNhZjg0NzYwYTM0NmFiYnAwLAotICAgIDB4MS44MTBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODIKLSAgICAweDEuZjBlM2U1YjZjMTdjMDJhNzk5YzMwNmRiYzFiMWE4ZWNwNTU2LAotICAgIDB4MS44MjBkOTJmYzRiNDJhcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODMKLSAgICAweDEuMDAwMDAwMDBjMWI1OTgwMDAwMDAwMDAwMDAyN2E3ZDVwMCwKLSAgICAweDEuODM2YjJmZmY2ZDZjYnAtMzMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODQKLSAgICAweDEuNzhiNjlkNjkwZGI3OTJiNTc0ZjkwNGQyYmIxZTllYmVwNTcwLAotICAgIDB4MS44YjdhZWU2MzFmNDg5cDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODUKLSAgICAweDEuNGRhZDk1ODc3YWUwNzgwMDAwMTI4MjdmYWM4OTE1MzVwMTQ0LAotICAgIDB4MS45MDUwMTFlMGRmNjI5cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODYKLSAgICAweDEuZmNiYjg3NzhmNjEyMTc2NjVhNmU2ZjIxMTk4ODBiMjlwMTQ0LAotICAgIDB4MS45MWZmZnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTg3Ci0gICAgMHgxLjdhNWIyNzcxZTBhMTZjZTZlY2Q2ZGU4NTczYzExMTkycDQsCi0gICAgMHgxLjk0ZTU0NzM4ZmI0YjdwMQotICB9LAotICB7IC8vIEVudHJ5IDE4OAotICAgIDB4MS43ZDY3NmEyNmZlNWNhY2NlYTU5YjAyMzU0MGJlYzgwZnAwLAotICAgIDB4MS45ODRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODkKLSAgICAweDEuNjk4NzY0MTI4YTQ0NDgwMTBlMjUxYjU1ZjM3YTdiNmVwMTQ3LAotICAgIDB4MS45OGYzODFkN2RiNDRmcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTAKLSAgICAweDEuNDRlNWE3NTJmOWUxZWZmZmIzMTQ4MTQ4NGFhNzY5MmFwOSwKLSAgICAweDEuOWU4MTg2YjI2N2EyOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkxCi0gICAgMHgxLjgwMjNkMjk4ZTM3MmY4MDIwZWM4Y2Y0YTcwYWZmYTg3cDAsCi0gICAgMHgxLjlmOTFjMTQ0OWM0MjFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTIKLSAgICAweDEuZGY5YmQwNmRhZjhjZTdiMTIzZGY0M2JiNTAxMDk5MzhwMjk5LAotICAgIDB4MS45ZmMxZjIxMmQ3MGY2cDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTMKLSAgICAweDEuODFhNGZiY2E5ZGNkYjgwMDAwMGFlMDY4YmMyMWM0ZjVwMCwKLSAgICAweDEuYTM5Mjc4OWVhZmNlOXAtMgotICB9LAotICB7IC8vIEVudHJ5IDE5NAotICAgIDB4MS44MjVmMzU0Y2NmNmYyZmZmYWI3ZTllYjgyOGZiYzY3ZHAwLAotICAgIDB4MS5hNTgwN2NhMTM5MmIycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk1Ci0gICAgMHgxLjNjMWUyODc2ODM0YWE3ZmE0NjAxMWU5OGFiZWFkZjc2cDAsCi0gICAgMHgxLmJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTYKLSAgICAweDEuMWM3ZTFhY2E1Mzc5NWZmZjU0YTVmZGY1NTI5MjYxY2FwMCwKLSAgICAweDEuYjA0cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTk3Ci0gICAgMHgxLmEyZDUwYjhiMjg4MGU4MDFhMjdhMzRkMTk1NGRhYjUwcDMzMSwKLSAgICAweDEuY2JkOTE3Y2NhZDA5NnA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTk4Ci0gICAgMHgxLjQxOWM4YThkYTFiNzk4MDJlMjAyOTZlNWY5Mjc5NjI2cDEsCi0gICAgMHgxLmQ3YjY3N2UzMzNkMzhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTkKLSAgICAweDEuNDFkMWI4YjQ2NDllYjgwMDAwMjNmOTc3NmRhOWQ2NDVwMSwKLSAgICAweDEuZDgwYjFhNjMzMGJlYnAtMQotICB9LAotICB7IC8vIEVudHJ5IDIwMAotICAgIDB4MS5iZjM0NDc5MjFmZDM5N2ZkNmRiNDYyY2QyZmJiMzlmZXAxMCwKLSAgICAweDEuZGY1MGQ5YWY5ZTQxMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAxCi0gICAgMHgxLjk5MTk3OTRiYzg2Mjk4MDIwYTE5NTg4NTUyY2VhZTVjcDAsCi0gICAgMHgxLmUwMDgxZWJjMzI2NGVwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDIKLSAgICAweDEuNzZhNjJiYWQ3MTViNDgwMGRhYWRiNmZjMmI2ZTYxNjZwNSwKLSAgICAweDEuZWM1YmIyMDllNTcwN3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAzCi0gICAgMHgxLmM3MDE1NTRjNzYxYWE4MGVlZGYyYTQ5ZWY2MGU1NjJjcDIsCi0gICAgMHgxLmY2MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA0Ci0gICAgMHgxLmMzZGRhM2M5NTJiOTE4MDEyZmQ3OWZiYjhlYTM4ZjY5cDcyNywKLSAgICAweDEuZjg3Yzc4MjBkODQ0NnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjA1Ci0gICAgMHgxLmQyOGM2MDk3YjlkNTU3ODgzNWU2Y2ZmMWIxOTQ2NGNkcDIsCi0gICAgMHgxLmZjODlkYzFhYTkwOWNwMAotICB9LAotICB7IC8vIEVudHJ5IDIwNgotICAgIDB4MS40MjMxMTc4YzIzNDhmNWY3N2VlZGIyN2RjNDA0ZjYxNnA3MzQsCi0gICAgMHgxLmZjZmZmZmZmZmZmZmZwOAotICB9LAotICB7IC8vIEVudHJ5IDIwNwotICAgIDB4MS4wNDAzNDU5MTkxMWU3N2ZmMTgzNGZkNzBkMGJiYjRiMHAwLAotICAgIDB4MS5mZGE2ZGZlMjdmZmZmcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjA4Ci0gICAgMHgxLmE1YjU2OTFjNGIwZWY4MDNjYWIyYmFkNGEyMDEzZjE0cDAsCi0gICAgMHgxLmZmMWRkMWZmZmZmZmZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDkKLSAgICAweDEuMDAwMDAwMDAwMDAwM2ZmMjAwMDAwMDAwMDVmYzgwNjJwMCwKLSAgICAweDEuZmY4ZmZmZmZmZmZmZnAtNTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTAKLSAgICAweDEuNmQ0ZmQ5YWI0N2M5MjAwMDczYWE4MTI3YTI0MTlhYzhwNzM4LAotICAgIDB4MS5mZmU1ZWZmZmZmZmZmcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTEKLSAgICAweDEuMDAwMDAwMDAwMGZmZjgwMDAwMDAwMDAwMDAxZmZmYWFwMCwKLSAgICAweDEuZmZlZmZmZmZmZjAwMXAtNDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTIKLSAgICAweDEuNzQ0MThiY2U3ODhlYjQ2NzQ2YjM4YjU3ODc1OWVjYzBwMTEsCi0gICAgMHgxLmZmZWZmZmZmZmZmZmZwMgotICB9LAotICB7IC8vIEVudHJ5IDIxMwotICAgIDB4MS4wMDAwMDAwMDAwZmZmODAwMDAwMDdmZjgwMDIwMDAyYXAwLAotICAgIDB4MS5mZmZwLTQxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE0Ci0gICAgMHgxLjAwMDAwMDAwMDBmZmZmZjIwMDAwN2ZmN2YyMDAwMDhjcDAsCi0gICAgMHgxLmZmZmZlM2ZmZmZmZmZwLTQxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE1Ci0gICAgMHgxLmQ4ZTY0YjhkMjE4NTI4MWY5ODRhNGU1MTE0OGRhZGVjcDIsCi0gICAgMHgxLmZmZmZmZmZmZTdmZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDIxNgotICAgIDB4MS5wMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDIxNwotICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZjlmZmZmZnAwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcC01NAotICB9LAotICB7IC8vIEVudHJ5IDIxOAotICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZmRmZmZmZnAwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01NAotICB9LAotICB7IC8vIEVudHJ5IDIxOQotICAgIDB4MS4zMDRkNmFlY2EyNTI1MzE0NzVlYzkxODIzNjliYTQxNXA2OSwKLSAgICAweDEuN2ZmZmZmZmZmZmZmZnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjIwCi0gICAgMHgxLjMwNGQ2YWVjYTI1NGIzYWY0YmM1ZDYyOTNkNWY2NWM3cDY5LAotICAgIDB4MS44cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjEKLSAgICAweDEuMzA0ZDZhZWNhMjU3MTQ0YTIxOWYxYWQ1MDU1OGQzMmNwNjksCi0gICAgMHgxLjgwMDAwMDAwMDAwMDFwNQotICB9LAotICB7IC8vIEVudHJ5IDIyMgotICAgIDB4MS5mOGU2YzI0YjU1OGVmMTc0OTk1YmNmYWQ0OTUxNDlmNXAtNzYsCi0gICAgLTB4MS5hMDAwMDAwMDAwMDAxcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjMKLSAgICAweDEuZjhlNmMyNGI1NTkyZTM0MjFkZjI3YWNmMWUwODAxNDRwLTc2LAotICAgIC0weDEuYXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjI0Ci0gICAgMHgxLmY4ZTZjMjRiNTU5NmQ1MGZhMjg5MjVmOGQ2NTljMWJmcC03NiwKLSAgICAtMHgxLjlmZmZmZmZmZmZmZmZwNQotICB9LAotICB7IC8vIEVudHJ5IDIyNQotICAgIDB4MS41NTc3OWI5ODRmMzk1ZGVhMzZhMjc3YjhiZWUyZTY0Y3AxMTUsCi0gICAgMHgxLjNmZmZmZmZmZmZmZmZwNgotICB9LAotICB7IC8vIEVudHJ5IDIyNgotICAgIDB4MS41NTc3OWI5ODRmM2ViM2M4YTUwM2I0YThlMjQ4OWQ5OHAxMTUsCi0gICAgMHgxLjRwNgotICB9LAotICB7IC8vIEVudHJ5IDIyNwotICAgIDB4MS41NTc3OWI5ODRmNDQwOWE3MTM2NGYxYWU1ZDI4MGU2OXAxMTUsCi0gICAgMHgxLjQwMDAwMDAwMDAwMDFwNgotICB9LAotICB7IC8vIEVudHJ5IDIyOAotICAgIDB4MS4wN2I3MTEyYmMxZmJjMmMwZjljMTM2NTMzMDkzMDMxMHAtMTI3LAotICAgIC0weDEuNjAwMDAwMDAwMDAwMXA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjI5Ci0gICAgMHgxLjA3YjcxMTJiYzFmZmUxOWQzZTcwM2U0YTc5NGY3MzcycC0xMjcsCi0gICAgLTB4MS42cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzAKLSAgICAweDEuMDdiNzExMmJjMjA0MDA3OTgzMWY0NjUyM2Q3Y2Y2OTJwLTEyNywKLSAgICAtMHgxLjVmZmZmZmZmZmZmZmZwNgotICB9LAotICB7IC8vIEVudHJ5IDIzMQotICAgIDB4MS40MGE0YjljMjcxNTA4NjYxNzZkMjJmMjEzOWQxZDQwZnA5MjMsCi0gICAgMHgxLjNmZmZmZmZmZmZmZmZwOQotICB9LAotICB7IC8vIEVudHJ5IDIzMgotICAgIDB4MS40MGE0YjljMjcxNzg5YWY4YWYyMDViYjM0Zjc0MzMzN3A5MjMsCi0gICAgMHgxLjRwOQotICB9LAotICB7IC8vIEVudHJ5IDIzMwotICAgIDB4MS40MGE0YjljMjcxYTBhZjhmZTc2ZThkNDdmN2ZkOWMyNnA5MjMsCi0gICAgMHgxLjQwMDAwMDAwMDAwMDFwOQotICB9LAotICB7IC8vIEVudHJ5IDIzNAotICAgIDB4MS40NGEzODI0ZTUyNWQ1NmZjM2YwMmY4ODYzNzVlYzg3NnAtMTAxNiwKLSAgICAtMHgxLjYwMDAwMDAwMDAwMDFwOQotICB9LAotICB7IC8vIEVudHJ5IDIzNQotICAgIDB4MS40NGEzODI0ZTUyODVlYjZjODhjZDQ2YmE1ZGViNDU3YXAtMTAxNiwKLSAgICAtMHgxLjZwOQotICB9LAotICB7IC8vIEVudHJ5IDIzNgotICAgIDB4MS40NGEzODI0ZTUyYWU3ZmRjZDI5NzlhMDExMjgwZmJjOHAtMTAxNiwKLSAgICAtMHgxLjVmZmZmZmZmZmZmZmZwOQotICB9LAotICB7IC8vIEVudHJ5IDIzNwotICAgIDB4MS4wMzk5NjUyOGUwNzJiNzhhMzMyNDgwODg0Yzc5YmFmN3A3NSwKLSAgICAweDEuOWZmZmZmZmZmZmZmZnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM4Ci0gICAgMHgxLjAzOTk2NTI4ZTA3NGJlYmNmZDc2NDE2ZmMyYzBlYjkycDc1LAotICAgIDB4MS5hcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzkKLSAgICAweDEuMDM5OTY1MjhlMDc2YzVlZmM3YzgwMjViNDc2ZGIwZDBwNzUsCi0gICAgMHgxLmEwMDAwMDAwMDAwMDFwNQotICB9LAotICB7IC8vIEVudHJ5IDI0MAotICAgIDB4MS5hZWJhYmFlM2E0MTdlZTZlN2ZhZjllY2ZjOTUxMDQwY3AtNzAsCi0gICAgLTB4MS44MDAwMDAwMDAwMDAxcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDEKLSAgICAweDEuYWViYWJhZTNhNDFiNGJlM2Y1NzZlNzAzMDNhMzc5MzJwLTcwLAotICAgIC0weDEuOHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQyCi0gICAgMHgxLmFlYmFiYWUzYTQxZWE5NTk2YjNlMmYzY2Y4ZTBkOWU3cC03MCwKLSAgICAtMHgxLjdmZmZmZmZmZmZmZmZwNQotICB9LAotICB7IC8vIEVudHJ5IDI0MwotICAgIDB4MS5mMTA1NmRjN2JmMWIwZmM4NTdiNjc5OTlmNTAzNTI3M3AxMjYsCi0gICAgMHgxLjVmZmZmZmZmZmZmZmZwNgotICB9LAotICB7IC8vIEVudHJ5IDI0NAotICAgIDB4MS5mMTA1NmRjN2JmMjJkM2RlMGVkNTc2MTViYzUwMWY4YnAxMjYsCi0gICAgMHgxLjZwNgotICB9LAotICB7IC8vIEVudHJ5IDI0NQotICAgIDB4MS5mMTA1NmRjN2JmMmE5N2YzYzVmNDcyYjA5M2YzYzkxZnAxMjYsCi0gICAgMHgxLjYwMDAwMDAwMDAwMDFwNgotICB9LAotICB7IC8vIEVudHJ5IDI0NgotICAgIDB4MS43ZmQ5NzRkMzcyZGU0OTA5OWVlN2JmNDhhZTM0NmVhYXAtMTE2LAotICAgIC0weDEuNDAwMDAwMDAwMDAwMXA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQ3Ci0gICAgMHgxLjdmZDk3NGQzNzJlNDQ4NmY3MjM1OGFjZGQxMjY5MGU1cC0xMTYsCi0gICAgLTB4MS40cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDgKLSAgICAweDEuN2ZkOTc0ZDM3MmVhNDdkNTQ1ODM1NjZhZjFiMDAwNTZwLTExNiwKLSAgICAtMHgxLjNmZmZmZmZmZmZmZmZwNgotICB9LAotICB7IC8vIEVudHJ5IDI0OQotICAgIDB4MS45M2JmNGVjMjgyYmQzYjM2Y2QyZjQwMTE0ODhhODM2NHAxMDE1LAotICAgIDB4MS41ZmZmZmZmZmZmZmZmcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTAKLSAgICAweDEuOTNiZjRlYzI4MmVmYjMyMGE1N2Y5YWUwMmUwMWFlNTFwMTAxNSwKLSAgICAweDEuNnA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjUxCi0gICAgMHgxLjkzYmY0ZWMyODMyMjJiMGE3ZGNmZmJmZTEwYjNlMzRhcDEwMTUsCi0gICAgMHgxLjYwMDAwMDAwMDAwMDFwOQotICB9LAotICB7IC8vIEVudHJ5IDI1MgotICAgIDB4MS45OGM3MmNhMGNhYjE0ZWRhNWFjYTk3YmVlMGZkZDQ4ZnAtOTI0LAotICAgIC0weDEuNDAwMDAwMDAwMDAwMXA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjUzCi0gICAgMHgxLjk4YzcyY2EwY2FlNDY3YmZlZWUzZjExYTRhYTI2Zjc3cC05MjQsCi0gICAgLTB4MS40cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTQKLSAgICAweDEuOThjNzJjYTBjYjE3ODBhNTgyZmQ1MGQ4ZDBmOThkOGJwLTkyNCwKLSAgICAtMHgxLjNmZmZmZmZmZmZmZmZwOQotICB9LAotICB7IC8vIEVudHJ5IDI1NQotICAgIDB4MS42MTAxM2E0NGE5ODFjOTEwZjIwZjgwNzU2MDA3MTIwYXAtODIyLAotICAgIC0weDEuMWNiOTBiZmJlOGU3Y3A5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjU2Ci0gICAgMHgxLjgwODc3MTdhN2YwOGE3MjUxMjEwZTcxZDQ3YWNjNWUzcC05MDUsCi0gICAgLTB4MS4zOTcyMTdmN2QxY2Y4cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTcKLSAgICAweDEuYTJkZTU5ZDg1NDUyMTA5ZjM0MTY1ZmE1NWY5ZTRlN2JwLTk4OCwKLSAgICAtMHgxLjU2MmIyM2YzYmFiNzNwOQotICB9LAotICB7IC8vIEVudHJ5IDI1OAotICAgIDB4MS5mZmZmZmZmZmZmZmZmMzU3OTNjNzY3MzAwODBkZmI5YnAtMiwKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTkKLSAgICAweDEuMDAwMDAwMDAwMDAwMDFhYmM5ZTNiMzk4MDNmNDVjMWNwLTEsCi0gICAgLTB4MS42MmU0MmZlZmEzOWVmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYwCi0gICAgMHgxLjAwMDAwMDAwMDAwMDA5YWJjOWUzYjM5ODA0MjFiYTZicC0xLAotICAgIC0weDEuNjJlNDJmZWZhMzllZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDI2MQotICAgIDB4MS42YTA5ZTY2N2YzYmNjNDhmMDk2NTAwOWYyNzc4ZGY5MXAtMSwKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjIKLSAgICAweDEuNmEwOWU2NjdmM2JjY2EzNzMwZmVhMDZlMWE5NjZjMDZwLTEsCi0gICAgLTB4MS42MmU0MmZlZmEzOWVmcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYzCi0gICAgMHgxLjZhMDllNjY3ZjNiY2NmZGY1ODk4NDAzZDBkY2E5OTE5cC0xLAotICAgIC0weDEuNjJlNDJmZWZhMzllZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDI2NAotICAgIDB4MS5hZTg5Zjk5NWFkM2FkMzNmM2M0NTExMThlNGFkNzRjNXAtMSwKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjUKLSAgICAweDEuYWU4OWY5OTVhZDNhZDY5YzUwMzgzYzczNWE1NzUwNTJwLTEsCi0gICAgLTB4MS42MmU0MmZlZmEzOWVmcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY2Ci0gICAgMHgxLmFlODlmOTk1YWQzYWQ5Zjk2NDJiNjdjZGQwMDdlNjA2cC0xLAotICAgIC0weDEuNjJlNDJmZWZhMzllZXAtMwotICB9LAotICB7IC8vIEVudHJ5IDI2NwotICAgIDB4MS5kNTgxOGRjZmJhNDg3MGVhMzBmODk3NGYzNjllYWI4Y3AtMSwKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjgKLSAgICAweDEuZDU4MThkY2ZiYTQ4NzJiZmIyODY2NzA5N2YxMDgwN2VwLTEsCi0gICAgLTB4MS42MmU0MmZlZmEzOWVmcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjY5Ci0gICAgMHgxLmQ1ODE4ZGNmYmE0ODc0OTUzNDE0MzZjM2M3ODQyYWYxcC0xLAotICAgIC0weDEuNjJlNDJmZWZhMzllZXAtNAotICB9LAotICB7IC8vIEVudHJ5IDI3MAotICAgIDB4MS5lYTRhZmEyYTQ5MGQ5Nzk3MDY5ODg3ODc5YjdjOTc0ZXAtMSwKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzEKLSAgICAweDEuZWE0YWZhMmE0OTBkOTg4YzJjMTU5Y2FjMjI0OGEwMWJwLTEsCi0gICAgLTB4MS42MmU0MmZlZmEzOWVmcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjcyCi0gICAgMHgxLmVhNGFmYTJhNDkwZDk5ODE1MTkyYjFkMGE5MTUyMzdicC0xLAotICAgIC0weDEuNjJlNDJmZWZhMzllZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDI3MwotICAgIDB4MS5mNTA3NjViNmU0NTQwNjExZTA2NWMxNGYxMDUwMjRjZXAtMSwKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZjBwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzQKLSAgICAweDEuZjUwNzY1YjZlNDU0MDY4ZjIyM2YyZjA4MjU1MWI4ZWZwLTEsCi0gICAgLTB4MS42MmU0MmZlZmEzOWVmcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjc1Ci0gICAgMHgxLmY1MDc2NWI2ZTQ1NDA3MGM2NDE4OWNjMTNhNTM2YzVmcC0xLAotICAgIC0weDEuNjJlNDJmZWZhMzllZXAtNgotICB9LAotICB7IC8vIEVudHJ5IDI3NgotICAgIDB4MS4wNTliMGQzMTU4NTc0MzVmNmM1MWNlZWIwYTZiNDZlNnAwLAotICAgIDB4MS42MmU0MmZlZmEzOWVlcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjc3Ci0gICAgMHgxLjA1OWIwZDMxNTg1NzQzYTBkMzE1MWI0MTIwM2MyNmVlcDAsCi0gICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzgKLSAgICAweDEuMDU5YjBkMzE1ODU3NDNlMjM5ZDg2Nzk3MzYwZDE3NGZwMCwKLSAgICAweDEuNjJlNDJmZWZhMzlmMHAtNgotICB9LAotICB7IC8vIEVudHJ5IDI3OQotICAgIDB4MS4wYjU1ODZjZjk4OTBmNTg3ZjUyNzkyOTQxMTQxNjVhMnAwLAotICAgIDB4MS42MmU0MmZlZmEzOWVlcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjgwCi0gICAgMHgxLjBiNTU4NmNmOTg5MGY2MGQ5ZmVhZmE2MDU5YmM0YjA4cDAsCi0gICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODEKLSAgICAweDEuMGI1NTg2Y2Y5ODkwZjY5MzRhYWU2MjJjYTIzNzczNDJwMCwKLSAgICAweDEuNjJlNDJmZWZhMzlmMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDI4MgotICAgIDB4MS4xNzJiODNjN2Q1MTdhYzdjN2MwZDM0MzJhZDU0M2FmYXAwLAotICAgIDB4MS42MmU0MmZlZmEzOWVlcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjgzCi0gICAgMHgxLjE3MmI4M2M3ZDUxN2FkOTNhNzkwZmMwN2M1MDE0MzBjcDAsCi0gICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODQKLSAgICAweDEuMTcyYjgzYzdkNTE3YWVhYWQzMTRjM2RjZGNhZjYyNDlwMCwKLSAgICAweDEuNjJlNDJmZWZhMzlmMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDI4NQotICAgIDB4MS4zMDZmZTBhMzFiNzE0ZmZlN2VlYzZiZWJmN2NhOWQ3ZHAwLAotICAgIDB4MS42MmU0MmZlZmEzOWVlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg2Ci0gICAgMHgxLjMwNmZlMGEzMWI3MTUyNWY1ZWFkYjIyMmRhNmNmYjVhcDAsCi0gICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODcKLSAgICAweDEuMzA2ZmUwYTMxYjcxNTRjMDNlNmVmODU5YmQxNDFhZjdwMCwKLSAgICAweDEuNjJlNDJmZWZhMzlmMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDI4OAotICAgIDB4MS42YTA5ZTY2N2YzYmNjMjMyMGQ1ZGU2OTBjNzgxNzJhZXAwLAotICAgIDB4MS42MmU0MmZlZmEzOWVlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg5Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2M3ZGEzNGY3ODY1ZmJhOTU4YjMzcDAsCi0gICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTAKLSAgICAweDEuNmEwOWU2NjdmM2JjY2Q4MjVjOTEyNjJlYWRjMDQ0NTZwMCwKLSAgICAweDEuNjJlNDJmZWZhMzlmMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDI5MQotICAgIDB4MS5mZmZmZmZmZmZmZmZlY2E4NmMzODk4Y2ZmODc3OWExYXAwLAotICAgIDB4MS42MmU0MmZlZmEzOWVlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkyCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZjYTg2YzM4OThjZmY4MWNkZDdjcDAsCi0gICAgMHgxLjYyZTQyZmVmYTM5ZWZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTMKLSAgICAweDEuMDAwMDAwMDAwMDAwMDY1NDM2MWM0YzY3ZmMyMTEwNmZwMSwKLSAgICAweDEuNjJlNDJmZWZhMzlmMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDI5NAotICAgIDB4MS5mZmZmZmZmZmZmZmZkOTUwZDg3MTMxOWZmMWFhNDMyOHAxLAotICAgIDB4MS42MmU0MmZlZmEzOWVlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTUKLSAgICAweDEuZmZmZmZmZmZmZmZmZjk1MGQ4NzEzMTlmZjAzZjUwYWZwMSwKLSAgICAweDEuNjJlNDJmZWZhMzllZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk2Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDBjYTg2YzM4OThjZmY4NmEyZjFicDIsCi0gICAgMHgxLjYyZTQyZmVmYTM5ZjBwMAotICB9LAotICB7IC8vIEVudHJ5IDI5NwotICAgIDB4MS5mZmZmZmZmZmZmZmZiMmExYjBlMjYzM2ZlNjQwYzIxYnAzLAotICAgIDB4MS42MmU0MmZlZmEzOWVlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTgKLSAgICAweDEuZmZmZmZmZmZmZmZmZjJhMWIwZTI2MzNmZTA5NGY4MzdwMywKLSAgICAweDEuNjJlNDJmZWZhMzllZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk5Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDE5NTBkODcxMzE5ZmYxNzQ5NzJhcDQsCi0gICAgMHgxLjYyZTQyZmVmYTM5ZjBwMQotICB9LAotICB7IC8vIEVudHJ5IDMwMAotICAgIDB4MS5mZmZmZmZmZmZmZmY2NTQzNjFjNGM2N2ZkODMyNzM2MXA3LAotICAgIDB4MS42MmU0MmZlZmEzOWVlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDEKLSAgICAweDEuZmZmZmZmZmZmZmZmZTU0MzYxYzRjNjdmYzE4MzRiZDNwNywKLSAgICAweDEuNjJlNDJmZWZhMzllZnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAyCi0gICAgMHgxLjAwMDAwMDAwMDAwMDMyYTFiMGUyNjMzZmU1NmExMjIycDgsCi0gICAgMHgxLjYyZTQyZmVmYTM5ZjBwMgotICB9LAotICB7IC8vIEVudHJ5IDMwMwotICAgIDB4MS5mZmZmZmZmZmZmZmVjYTg2YzM4OThjZmZkZjI4YTM2ZnAxNSwKLSAgICAweDEuNjJlNDJmZWZhMzllZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA0Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmNhODZjMzg5OGNmZjg0NmMwNTM0cDE1LAotICAgIDB4MS42MmU0MmZlZmEzOWVmcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDUKLSAgICAweDEuMDAwMDAwMDAwMDAwNjU0MzYxYzRjNjdmZDRkN2IzN2NwMTYsCi0gICAgMHgxLjYyZTQyZmVmYTM5ZjBwMwotICB9LAotICB7IC8vIEVudHJ5IDMwNgotICAgIDB4MS5mZmZmZmZmZmZmZmQ5NTBkODcxMzFhMDA3OTYwMzk4ZnAzMSwKLSAgICAweDEuNjJlNDJmZWZhMzllZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzA3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZjk1MGQ4NzEzMTlmZjBlNmRjMGEzcDMxLAotICAgIDB4MS42MmU0MmZlZmEzOWVmcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDgKLSAgICAweDEuMDAwMDAwMDAwMDAwY2E4NmMzODk4Y2ZmZDFiZGEzZGJwMzIsCi0gICAgMHgxLjYyZTQyZmVmYTM5ZjBwNAotICB9LAotICB7IC8vIEVudHJ5IDMwOQotICAgIDB4MS5mZmZmZmZmZmZmYjJhMWIwZTI2MzQ1YjhkZmUwMDY5N3AxMDIzLAotICAgIDB4MS42MmU0MmZlZmEzOWVlcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTAKLSAgICAweDEuZmZmZmZmZmZmZmYyYTFiMGUyNjM0MDBkMTVmYzUyZmZwMTAyMywKLSAgICAweDEuNjJlNDJmZWZhMzllZnA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzExCi0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjYyZTQyZmVmYTM5ZjBwOQotICB9LAotICB7IC8vIEVudHJ5IDMxMgotICAgIDB4MS5jODQ2NGY3NjE2MTk2MmVkMTkzMDc5NmMwNzk0MjU0YXAtMTA3MSwKLSAgICAtMHgxLjcyZTQyZmVmYTM5ZjBwOQotICB9LAotICB7IC8vIEVudHJ5IDMxMwotICAgIDB4MS5jODQ2NGY3NjE2NTI2YmI3MDdmMzQwMjhmMWQ2Mzc4NnAtMTA3MSwKLSAgICAtMHgxLjcyZTQyZmVmYTM5ZWZwOQotICB9LAotICB7IC8vIEVudHJ5IDMxNAotICAgIDB4MS5jODQ2NGY3NjE2OGI3NDgwZjZiNjBlMDZmNTU2MjIxYnAtMTA3MSwKLSAgICAtMHgxLjcyZTQyZmVmYTM5ZWVwOQotICB9LAotICB7IC8vIEVudHJ5IDMxNQotICAgIDB4MS44ZWJlZjllYWM4MjBhODRiODZkMWNlMWE0NDI0NDM1ZnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTYKLSAgICAweDEuOGViZWY5ZWFjODIwYWU4NjgyYjk3OTNhYzZkMWU3NzJwLTEsCi0gICAgLTB4MS4wcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE3Ci0gICAgMHgxLjhlYmVmOWVhYzgyMGIxYTQwMGFkNGVjYjA4MzIxMWY2cC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMwotICB9LAotICB7IC8vIEVudHJ5IDMxOAotICAgIDB4MS5jM2Q2YTI0ZWQ4MjIxNGYwZDAxZGFmOGUxYThkMmNhN3AtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTkKLSAgICAweDEuYzNkNmEyNGVkODIyMTg3ODdkNjI0ZDNlNWViYTk1ZjVwLTEsCi0gICAgLTB4MS4wcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIwCi0gICAgMHgxLmMzZDZhMjRlZDgyMjFhM2M1NDA0OWMxNjgwZDNmMDVlcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNAotICB9LAotICB7IC8vIEVudHJ5IDMyMQotICAgIDB4MS5lMGZhYmZiYzcwMmEzYjA0ZTg2MDIzZjA2OTFjYzU5N3AtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjIKLSAgICAweDEuZTBmYWJmYmM3MDJhM2NlNWUzMWZlMDYwOTM1OGJhZmRwLTEsCi0gICAgLTB4MS4wcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzIzCi0gICAgMHgxLmUwZmFiZmJjNzAyYTNkZDY2MDdmYmU5OGE4Nzc2YTBlcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNQotICB9LAotICB7IC8vIEVudHJ5IDMyNAotICAgIDB4MS5mMDNmNTZhODhiNWQ3ODFjOTA1ZjZiNTFjNzZhZTk4MXAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjUKLSAgICAweDEuZjAzZjU2YTg4YjVkNzkxNGIwMGFiZjk3NzYyNzM1ZDFwLTEsCi0gICAgLTB4MS4wcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzI2Ci0gICAgMHgxLmYwM2Y1NmE4OGI1ZDc5OTBiZmUwNjliYTRkODU4YTdmcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNgotICB9LAotICB7IC8vIEVudHJ5IDMyNwotICAgIDB4MS5mODBmZWFiZmVlZmE0OGE5Y2QxMTJkNTkyYzQzNzAxMnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjgKLSAgICAweDEuZjgwZmVhYmZlZWZhNDkyN2QxMGJkZDU0ZWFkNWFhNDZwLTEsCi0gICAgLTB4MS4wcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzI5Ci0gICAgMHgxLmY4MGZlYWJmZWVmYTQ5NjZkMzA5MzU1MmNhMWVkMzMwcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNwotICB9LAotICB7IC8vIEVudHJ5IDMzMAotICAgIDB4MS5mYzAzZmQ1NmFhMjI0ZjU4N2MzZjY4NWQ1NDNlNTNkN3AtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzEKLSAgICAweDEuZmMwM2ZkNTZhYTIyNGY5N2ZjYmYxMzMyOTg4ODQyZGVwLTEsCi0gICAgLTB4MS4wcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzMyCi0gICAgMHgxLmZjMDNmZDU2YWEyMjRmYjdiY2ZlZTg5ZDNhYWQzZDVjcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtOAotICB9LAotICB7IC8vIEVudHJ5IDMzMwotICAgIDB4MS5mZTAwZmZhYWJmZmJiYzUxY2QwZTE2ZDhiMDA1ZDY2MnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzQKLSAgICAweDEuZmUwMGZmYWFiZmZiYmM3MWFkMWUxMTg0YWZjMTljN2VwLTEsCi0gICAgLTB4MS4wcC04Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzM1Ci0gICAgMHgxLmZlMDBmZmFhYmZmYmJjODE5ZDI2MGVkYWFmOWY4MDRicC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtOQotICB9LAotICB7IC8vIEVudHJ5IDMzNgotICAgIDB4MS5mZjAwM2ZmNTU2YWE4ODdiNjg4MDBiYjVkMjdkYTRmZnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzcKLSAgICAweDEuZmYwMDNmZjU1NmFhODg4YjYwODIwYjYwODdkMWU5MWFwLTEsCi0gICAgLTB4MS4wcC05Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzM4Ci0gICAgMHgxLmZmMDAzZmY1NTZhYTg4OTM1YzgzMGIzNWUyN2MwYjU3cC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzkKLSAgICAweDEuZmY4MDBmZmVhYWJmZmVlNmZjNGVmY2ZjNjQ1OWRlMTNwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDM0MAotICAgIDB4MS5mZjgwMGZmZWFhYmZmZWVlZmE0ZjNjZjcwZjU5ZDliZnAtMSwKLSAgICAtMHgxLjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQxCi0gICAgMHgxLmZmODAwZmZlYWFiZmZlZjJmOTRmNWNmNDY0ZDlkN2ExcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDIKLSAgICAweDEuZmZmMDAwM2ZmZjU1NTZhOWE4OTA4YjQwYjMyMDg0OWRwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMwotICB9LAotICB7IC8vIEVudHJ5IDM0MwotICAgIDB4MS5mZmYwMDAzZmZmNTU1NmFhYTg4ODhiNjBiMmNiMmZmMnAtMSwKLSAgICAtMHgxLjBwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ0Ci0gICAgMHgxLmZmZjAwMDNmZmY1NTU2YWIyODg0OGI3MGIyYTA4NTlkcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDUKLSAgICAweDEuNDhiNWUzYzNlODE4NjNlNTBmZmMyZWNiNzlmM2Y3YzNwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMwotICB9LAotICB7IC8vIEVudHJ5IDM0NgotICAgIDB4MS40OGI1ZTNjM2U4MTg2Njc2N2JjM2I2OWJhYWJlNTM0ZXAwLAotICAgIDB4MS4wcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ3Ci0gICAgMHgxLjQ4YjVlM2MzZTgxODZiOTk1MzUyYzYzYzBjNjI3MmVjcDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDgKLSAgICAweDEuMjIxNjA0NWI2ZjVjY2U3YWQ3NjQyODE1ODM5YzgxNjBwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNAotICB9LAotICB7IC8vIEVudHJ5IDM0OQotICAgIDB4MS4yMjE2MDQ1YjZmNWNjZjljZWQ2ODgzODRlMDZiOGQ0MnAwLAotICAgIDB4MS4wcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUwCi0gICAgMHgxLjIyMTYwNDViNmY1Y2QxZTExOTcxM2E2MzlhMGQwYjQ5cDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTEKLSAgICAweDEuMTA4MmI1NzdkMzRlZDc0ZDcwNDU1ZGY4N2U1ZGUwODlwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNQotICB9LAotICB7IC8vIEVudHJ5IDM1MgotICAgIDB4MS4xMDgyYjU3N2QzNGVkN2Q1YjFhMDE5ZTIyNWM5YTk1MXAwLAotICAgIDB4MS4wcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzUzCi0gICAgMHgxLjEwODJiNTc3ZDM0ZWQ4ZTYzNDU1OTFiNTc0YTIwNzQ0cDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTQKLSAgICAweDEuMDgyMDU2MDExMjdlYzk0YzAzYmIwMzY3MDg1YTNjNjRwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNgotICB9LAotICB7IC8vIEVudHJ5IDM1NQotICAgIDB4MS4wODIwNTYwMTEyN2VjOThlMGJkMDgzYWJhODBjOTdhNnAwLAotICAgIDB4MS4wcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzU2Ci0gICAgMHgxLjA4MjA1NjAxMTI3ZWNhMTIxYmZiODQzNGU3NzE3ZmIwcDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTcKLSAgICAweDEuMDQwODBhYjU1ZGUzOTE1YTM3NjM1ZDNkNDdkYzNkZjZwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNwotICB9LAotICB7IC8vIEVudHJ5IDM1OAotICAgIDB4MS4wNDA4MGFiNTVkZTM5MTdhYjg2NGIzZTkwNDRlNmI0NXAwLAotICAgIDB4MS4wcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzU5Ci0gICAgMHgxLjA0MDgwYWI1NWRlMzkxYmJiYTY3NjE0MDdkMzJkMjEzcDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjAKLSAgICAweDEuMDIwMjAxNTYwMDQ0NWFmYzEyNDM2ZDVjNmYyMmVjZjBwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtOAotICB9LAotICB7IC8vIEVudHJ5IDM2MQotICAgIDB4MS4wMjAyMDE1NjAwNDQ1YjBjMzI2MzgyYmM3MzY4OWQzMnAwLAotICAgIDB4MS4wcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzYyCi0gICAgMHgxLjAyMDIwMTU2MDA0NDViMmM3MmEzYWQ3YzdiZjQwMGJjcDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjMKLSAgICAweDEuMDEwMDgwMmFiNTU3NzdjYTgyMjY0MTdjYmZlZTJmZjNwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtOQotICB9LAotICB7IC8vIEVudHJ5IDM2NAotICAgIDB4MS4wMTAwODAyYWI1NTc3N2QyOGEyYTQyZDI2YWE5ZWU2N3AwLAotICAgIDB4MS4wcC04Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzY1Ci0gICAgMHgxLjAxMDA4MDJhYjU1Nzc3ZTI5YTMyNDU3ZGMwMjE2YzEwcDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjYKLSAgICAweDEuMDA4MDIwMDU1NjAwMTEwZTdiNDE1NWE4MWFmNDg0YjFwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjcKLSAgICAweDEuMDA4MDIwMDU1NjAwMTExMjdkNDFkNWJkNzJmNGM4ZjNwMCwKLSAgICAweDEuMHAtOQotICB9LAotICB7IC8vIEVudHJ5IDM2OAotICAgIDB4MS4wMDgwMjAwNTU2MDAxMTFhODE0MmQ1ZTgyMmY1NTFhN3AwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC05Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzY5Ci0gICAgMHgxLjAwNDAwODAwYWFiNTU1ZGJlMzBlNWNlNzE5MjdjYmYwcDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgMzcwCi0gICAgMHgxLjAwNDAwODAwYWFiNTU1ZGRlMzhlNmNlODZlOTI3N2FhcDAsCi0gICAgMHgxLjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzcxCi0gICAgMHgxLjAwNDAwODAwYWFiNTU1ZTFlNDhlOGNlYjE5NjdjZjI5cDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzcyCi0gICAgMHgxLjAwMDgwMDIwMDA1NTU1ZmZjMTBmMTI3NTI5NWQ0MzQ5cDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzczCi0gICAgMHgxLjAwMDgwMDIwMDA1NTU2MDAwMTExMTI3ZDI5NzI5OGM5cDAsCi0gICAgMHgxLjBwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc0Ci0gICAgMHgxLjAwMDgwMDIwMDA1NTU2MDA4MTE1MTI4ZDI5OWQ0M2M5cDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc1Ci0gICAgMHgxLjQ0MTA5ZWRiMjA2YTkzOGZhZDY3MGI2OGFiOTliNzY4cC03MzksCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzYKLSAgICAweDEuNDQxMDllZGIyMDkzMTVhMzg4Y2IxYjQzM2VjZDFhOGFwLTczOSwKLSAgICAtMHgxLjBwOQotICB9LAotICB7IC8vIEVudHJ5IDM3NwotICAgIDB4MS40NDEwOWVkYjIwYTc1NmFkNzY3ZDI1MTZhMTU1MTRjY3AtNzM5LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzc4Ci0gICAgMHgxLjk3NTU5NTZhZDRkMDRhNjA2YThjZDlkZGZiMzY4ZWZmcC0zNzAsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzkKLSAgICAweDEuOTc1NTk1NmFkNGU5YmZiOWMxM2EyN2FlNGMwN2VkMzdwLTM3MCwKLSAgICAtMHgxLjBwOAotICB9LAotICB7IC8vIEVudHJ5IDM4MAotICAgIDB4MS45NzU1OTU2YWQ0ZjY3YTY2NmM5MGNmMmYzNDg4YTQ2M3AtMzcwLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzgxCi0gICAgMHgxLjQyZWI5ZjM5YWZhNjk5MmJmM2ExMzc5NzE1ZjY2ODNicC0xODUsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODIKLSAgICAweDEuNDJlYjlmMzlhZmIwYjA4OGVkNmViNGY0M2NjOWVjN2JwLTE4NSwKLSAgICAtMHgxLjBwNwotICB9LAotICB7IC8vIEVudHJ5IDM4MwotICAgIDB4MS40MmViOWYzOWFmYjViYzM3NmE1NTczYzExNjRhOWMwM3AtMTg1LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzg0Ci0gICAgMHgxLjk2OWQ0NzMyMWU0NjYwNGExMDVmOGRlMzJkOWRjNjg1cC05MywKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNgotICB9LAotICB7IC8vIEVudHJ5IDM4NQotICAgIDB4MS45NjlkNDczMjFlNGNiYWJmMmQyODA3MDk2M2IwNDE5NHAtOTMsCi0gICAgLTB4MS4wcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODYKLSAgICAweDEuOTY5ZDQ3MzIxZTRmZTdmOWJiOGM0M2E2MDY2OTJhNDhwLTkzLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzg3Ci0gICAgMHgxLmM4NDY0Zjc2MTY0MmYxNTVmYWIzZTViYjE0NGZiOTEwcC00NywKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNQotICB9LAotICB7IC8vIEVudHJ5IDM4OAotICAgIDB4MS5jODQ2NGY3NjE2NDY4MWUyOTlhMDEyNDQ4Nzg4NGQ2NHAtNDcsCi0gICAgLTB4MS4wcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODkKLSAgICAweDEuYzg0NjRmNzYxNjQ4NGEyOGU5MTYyODhiZWQ4ZTBlYmZwLTQ3LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzkwCi0gICAgMHgxLmUzNTViYmFlZTg1YWNhNTBhM2M1MGFkMmNjZmZiYjI5cC0yNCwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNAotICB9LAotICB7IC8vIEVudHJ5IDM5MQotICAgIDB4MS5lMzU1YmJhZWU4NWNhZGE2NWY3M2YzMmU4OGZiM2NjNnAtMjQsCi0gICAgLTB4MS4wcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTIKLSAgICAweDEuZTM1NWJiYWVlODVkOWY1MTNkNGI2NzVkMWMzOTIzZjZwLTI0LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkzCi0gICAgMHgxLjVmYzIxMDQxMDI3YTFiZGVjNTI1ZjZkMmI0OGE0NjM3cC0xMiwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMwotICB9LAotICB7IC8vIEVudHJ5IDM5NAotICAgIDB4MS41ZmMyMTA0MTAyN2FjYmJmY2Q0Njc4MGZlZTcxZWFkMnAtMTIsCi0gICAgLTB4MS4wcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTUKLSAgICAweDEuNWZjMjEwNDEwMjdiMjNiMDUxNTZiOGFlYWM1ZmVlYTVwLTEyLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk2Ci0gICAgMHgxLjJjMTU1YjgyMTNjZWZjNzkzNDBmOGUzODYyNjM0NTZhcC02LAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk3Ci0gICAgMHgxLjJjMTU1YjgyMTNjZjQ3N2U4YWYwMTMyYzJhZTIzZDRhcC02LAotICAgIC0weDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk4Ci0gICAgMHgxLjJjMTU1YjgyMTNjZjZkMDEzNjYwNTVhNjE2MmEzOTVmcC02LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk5Ci0gICAgMHgxLjE1MmFhYTNiZjgxYzk3NTg2MjI3MmYwZjNiMTNmNTg2cC0zLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAwCi0gICAgMHgxLjE1MmFhYTNiZjgxY2I5ZmRiNzZlYWUxMmQwMjk1NzFmcC0zLAotICAgIC0weDEuMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAxCi0gICAgMHgxLjE1MmFhYTNiZjgxY2NiNTA2MjEyNmQ5NDljNTNjN2VicC0zLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAyCi0gICAgMHgxLjc4YjU2MzYyY2VmMzY0ZGY5NTQ0ZjExYjBhNDk5MDMxcC0yLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAzCi0gICAgMHgxLjc4YjU2MzYyY2VmMzdjNmFlYjdiMWUwYTQxNTNlNDM3cC0yLAotICAgIC0weDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA0Ci0gICAgMHgxLjc4YjU2MzYyY2VmMzg4MzA5Njk2MzQ4MWRkNjY1MjNmcC0yLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQwNQotICAgIDB4MS45NDc2NTA0YmE4Mzk5ZjViOTdjYWUzNWJlYjc4YzNjNXA3MzgsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwOAotICB9LAotICB7IC8vIEVudHJ5IDQwNgotICAgIDB4MS45NDc2NTA0YmE4NTJlNmMwOWM4NTY3YzAxYzVhNjY0OHA3MzgsCi0gICAgMHgxLjBwOQotICB9LAotICB7IC8vIEVudHJ5IDQwNwotICAgIDB4MS45NDc2NTA0YmE4ODU3NThhYTVmYTc1NDVlMTBlOGU0NnA3MzgsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwOQotICB9LAotICB7IC8vIEVudHJ5IDQwOAotICAgIDB4MS40MWM3YTg4MTRiZTE5MmE1ZGYyNWIwNDJhZjgyNGVmZHAzNjksCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwNwotICB9LAotICB7IC8vIEVudHJ5IDQwOQotICAgIDB4MS40MWM3YTg4MTRiZWJhMGUzMjMzMDBmNzc3ZGE2NTg1NHAzNjksCi0gICAgMHgxLjBwOAotICB9LAotICB7IC8vIEVudHJ5IDQxMAotICAgIDB4MS40MWM3YTg4MTRiZmZiZDVkYWI0NGNlZDI2ZmFjY2JmYnAzNjksCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwOAotICB9LAotICB7IC8vIEVudHJ5IDQxMQotICAgIDB4MS45NWU1NGM1ZGQ0MWIyMDYwMGRkNjAxYTBhZTY3MmZmNHAxODQsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwNgotICB9LAotICB7IC8vIEVudHJ5IDQxMgotICAgIDB4MS45NWU1NGM1ZGQ0MjE3N2Y1M2Y0ZDUyMTlkZjExY2EzYnAxODQsCi0gICAgMHgxLjBwNwotICB9LAotICB7IC8vIEVudHJ5IDQxMwotICAgIDB4MS45NWU1NGM1ZGQ0MmUyNzFmYTIzYmYzNTg1YjY1NTA2MHAxODQsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwNwotICB9LAotICB7IC8vIEVudHJ5IDQxNAotICAgIDB4MS40MjU5ODJjZjU5N2E0ZDUyYzg5ZWE4NTdiYmFhODA3YXA5MiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDE1Ci0gICAgMHgxLjQyNTk4MmNmNTk3Y2QyMDVjZTNkNWI0ZWRiMDMxNzU2cDkyLAotICAgIDB4MS4wcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTYKLSAgICAweDEuNDI1OTgyY2Y1OTgxZGI2YmQ5N2FjMTRjMzVlNjY2YzZwOTIsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwNgotICB9LAotICB7IC8vIEVudHJ5IDQxNwotICAgIDB4MS4xZjQzZmNjNGI2NjFhODk0NGFjMzg5YjYwOWUwZjc0ZXA0NiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDE4Ci0gICAgMHgxLjFmNDNmY2M0YjY2MmM3ZDg0Nzg4NDAxODQyMTc0MDc0cDQ2LAotICAgIDB4MS4wcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTkKLSAgICAweDEuMWY0M2ZjYzRiNjY1MDY2MDQxMTFhY2UwMTA0ZmM5MGVwNDYsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwNQotICB9LAotICB7IC8vIEVudHJ5IDQyMAotICAgIDB4MS4wZjJlYmQwYTgwMDE3Y2ZhYzU2YzMwODc0YWZiYWI5OHAyMywKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNDIxCi0gICAgMHgxLjBmMmViZDBhODAwMjA0OTIyM2YxNzA4ODJiNWVlNWVmcDIzLAotICAgIDB4MS4wcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjIKLSAgICAweDEuMGYyZWJkMGE4MDAzMTNjMGUwZmJmMDhhYjc4ODY4NjZwMjMsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwNAotICB9LAotICB7IC8vIEVudHJ5IDQyMwotICAgIDB4MS43NDllYTdkNDcwYzY4MWU0MzYxOGVjMThkNTNmMWIyMXAxMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI0Ci0gICAgMHgxLjc0OWVhN2Q0NzBjNmRmMGJlMDBlMDg0YTgxNWQxZGU2cDExLAotICAgIDB4MS4wcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjUKLSAgICAweDEuNzQ5ZWE3ZDQ3MGM3OTk1YjMzZjg0MGFlMWY3NmUyZTdwMTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMwotICB9LAotICB7IC8vIEVudHJ5IDQyNgotICAgIDB4MS5iNGM5MDJlMjczYTU0ZmRmYjY3NzcxNjZlNjc2MGRmYnA1LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjcKLSAgICAweDEuYjRjOTAyZTI3M2E1ODY3OGQ2ZDNiZmRiOTNkYjk2ZDBwNSwKLSAgICAweDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI4Ci0gICAgMHgxLmI0YzkwMmUyNzNhNWYzYWIxNzhjNWNjNTAzMjAxNDljcDUsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMgotICB9LAotICB7IC8vIEVudHJ5IDQyOQotICAgIDB4MS5kOGU2NGI4ZDRkZGFiZjM0ZDU4MmNkMjkwOWFhZmIyYXAyLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzAKLSAgICAweDEuZDhlNjRiOGQ0ZGRhZGNjMzNhM2JhMjA2YjY4YWJiYThwMiwKLSAgICAweDEuMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMxCi0gICAgMHgxLmQ4ZTY0YjhkNGRkYjE3ZTAwM2FkNGJjMjE1ZDRlZjg2cDIsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMQotICB9LAotICB7IC8vIEVudHJ5IDQzMgotICAgIDB4MS41YmYwYThiMTQ1NzY4YTU1ZGE3MzIyMTQ5OWZjNGNmYnAxLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMzCi0gICAgMHgxLjViZjBhOGIxNDU3Njk1MzU1ZmI4YWM0MDRlN2E3OWUzcDEsCi0gICAgMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDQzNAotICAgIDB4MS41YmYwYThiMTQ1NzZhYWY0NmE0M2MwOTdiODdiYzgzM3AxLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzUKLSAgICAweDEuZmZjMDQ1NjkyZmM5ZGJjN2I3ZTAzMjU3NmU1ZTI2ZjhwMTAyMywKLSAgICAweDEuNjJlNDFmZmZmZmZmZnA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDM2Ci0gICAgMHgxLmZmYzA0NTY5MzAwOWQzZDA2NTA2MmY5MjY3ZGZmNTVlcDEwMjMsCi0gICAgMHgxLjYyZTQycDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzcKLSAgICAweDEuZmZjMDQ1NjkzMDQ5Y2JkOTEyMmMzNGNjNjI3NzY4ODRwMTAyMywKLSAgICAweDEuNjJlNDIwMDAwMDAwMXA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDM4Ci0gICAgMHgxLmM4N2YyMTc3NWEwZjFhMjU3NTVmYjAyN2Y5NDk0OWExcC0xMDcxLAotICAgIC0weDEuNzJlNDIwMDAwMDAwMXA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDM5Ci0gICAgMHgxLmM4N2YyMTc3NWE0ODJhMDlhNDRhZjU5YzNjM2FlNDRicC0xMDcxLAotICAgIC0weDEuNzJlNDJwOQotICB9LAotICB7IC8vIEVudHJ5IDQ0MAotICAgIDB4MS5jODdmMjE3NzVhODEzOWVkZDMzNjQyMzI3YmIyNWM1ZnAtMTA3MSwKLSAgICAtMHgxLjcyZTQxZmZmZmZmZmZwOQotICB9LAotICB7IC8vIEVudHJ5IDQ0MQotICAgIEhVR0VfVkFMLAotICAgIDB4MS4wcDEwMjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDIKLSAgICBIVUdFX1ZBTCwKLSAgICAweDEuOTk5OTk5OTk5OTk5YXAxMDIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQzCi0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjE5OTk5OTk5OTk5OWFwMTAyMQotICB9LAotICB7IC8vIEVudHJ5IDQ0NAotICAgIEhVR0VfVkFMLAotICAgIDB4MS42NjY2NjY2NjY2NjY3cDEwMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDUKLSAgICBIVUdFX1ZBTCwKLSAgICAweDEuYjMzMzMzMzMzMzMzNHAxMDIxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ2Ci0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjBwMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDQ0NwotICAgIEhVR0VfVkFMLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDgKLSAgICBIVUdFX1ZBTCwKLSAgICBIVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDQ0OQotICAgIEhVR0VfVkFMLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTAKLSAgICBIVUdFX1ZBTCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUxCi0gICAgMHgxLjcyNDA0NmViMDkzMzhkMjk5MWEzMDg5M2U3ZjQxMDhkcDQsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwMQotICB9LAotICB7IC8vIEVudHJ5IDQ1MgotICAgIDB4MS4zM2RlZGM4NTU5MzVlZmFhYWY1NzhjZWQzZjgyMWY5NnAyLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTMKLSAgICAweDEuNWJmMGE4YjE0NTc2YWFmNDZhNDNjMDk3Yjg3YmM4MzNwMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU0Ci0gICAgMHgxLjViZjBhOGIxNDU3Njk1MzU1ZmI4YWM0MDRlN2E3OWUzcDEsCi0gICAgMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDQ1NQotICAgIDB4MS41YmYwYThiMTQ1NzY4YTU1ZGE3MzIyMTQ5OWZjNGNmYnAxLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU2Ci0gICAgMHgxLjE4YmQ2Njk0NzFjYWE1NTg1YzcxY2MzMmE3OTJhYzg1cDEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTcKLSAgICAweDEucDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTgKLSAgICAweDEucDAsCi0gICAgMHgxLjBwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTkKLSAgICAweDEucDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjAKLSAgICAweDEucDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjEKLSAgICAweDEucDAsCi0gICAgMHgxLjBwLTEwNzMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjIKLSAgICAweDEucDAsCi0gICAgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjMKLSAgICAweDEucDAsCi0gICAgMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY0Ci0gICAgMHgxLnAwLAotICAgIC0wLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDY2Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMHAtMTA3MwotICB9LAotICB7IC8vIEVudHJ5IDQ2NwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjgKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDQ3MAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzEKLSAgICAweDEuZDJlMTcxY2YwNDg3OTNlMTZhN2Y5NDA2ZTAwYzJkZDlwLTIsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDcyCi0gICAgMHgxLjc4YjU2MzYyY2VmMzg4MzA5Njk2MzQ4MWRkNjY1MjNmcC0yLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ3MwotICAgIDB4MS43OGI1NjM2MmNlZjM3YzZhZWI3YjFlMGE0MTUzZTQzN3AtMiwKLSAgICAtMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDQ3NAotICAgIDB4MS43OGI1NjM2MmNlZjM2NGRmOTU0NGYxMWIwYTQ5OTAzMXAtMiwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAotICB9LAotICB7IC8vIEVudHJ5IDQ3NQotICAgIDB4MS5hOWJjYzQ2Zjc2N2RmYjBkNGVlYzJiMTMzN2EwNGI5YXAtMywKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAotICB9LAotICB7IC8vIEVudHJ5IDQ3NgotICAgIDB4MS42MjAyMjdiNTk4ZWY5OTQ5ZTYwZTQ0ZGM0NWQxNGQwY3AtNSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMQotICB9LAotICB7IC8vIEVudHJ5IDQ3NwotICAgIDAuMCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDQ3OAotICAgIDAuMCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDQ3OQotICAgIDAuMCwKLSAgICAtSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODAKLSAgICAweDEuZmZmZmZmZmZmZmYyYTFiMGUyNjM0MDBkMTVmYzUyZmZwMTAyMywKLSAgICAweDEuNjJlNDJmZWZhMzllZnA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDgxCi0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjYyZTQyZmVmYTM5ZjBwOQotICB9LAotICB7IC8vIEVudHJ5IDQ4MgotICAgIDB4MS4wMDAwMDAwMDAwMDdiYmNmZmIwNmY4ZmRhYjg5NmRiMHAtMTAyMiwKLSAgICAtMHgxLjYyMzJiZGQ3YWJjZDJwOQotICB9LAotICB7IC8vIEVudHJ5IDQ4MwotICAgIDB4MS5mZmZmZmZmZmZmY2Y3NzlmZjYwZGY0MGM2MzE0MTlhMnAtMTAyMywKLSAgICAtMHgxLjYyMzJiZGQ3YWJjZDNwOQotICB9LAotfTsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCi0KLVRFU1QobWF0aF9leHAsIGV4cF9pbnRlbCkgewotI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplb2YoZ19leHBfaW50ZWxfZGF0YSkvc2l6ZW9mKGV4cF9pbnRlbF9kYXRhX3QpOyBpKyspIHsKLSAgICBFWFBFQ1RfRE9VQkxFX0VRKGdfZXhwX2ludGVsX2RhdGFbaV0uZXhwZWN0ZWQsIGV4cChnX2V4cF9pbnRlbF9kYXRhW2ldLmNhbGxfZGF0YSkpIDw8ICJGYWlsZWQgb24gZWxlbWVudCAiIDw8IGk7Ci0gIH0KLSNlbHNlIC8vIF9fQklPTklDX18KLSAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy4iOwotI2VuZGlmIC8vIF9fQklPTklDX18KLX0KZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfZXhwZl90ZXN0LmNwcCBiL3Rlc3RzL21hdGhfZXhwZl90ZXN0LmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjU3YWEyNi4uMDAwMDAwMAotLS0gYS90ZXN0cy9tYXRoX2V4cGZfdGVzdC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSwxNDM5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICoKLSAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOwotICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgotICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0Ci0gKgotICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKLSAqCi0gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCi0gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAotICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCi0gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCi0gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KLSAqLwotCi0jaW5jbHVkZSA8bWF0aC5oPgotCi0jaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KLQotI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLXR5cGVkZWYgc3RydWN0IHsKLSAgZmxvYXQgZXhwZWN0ZWQ7Ci0gIGZsb2F0IGNhbGxfZGF0YTsKLX0gZXhwZl9pbnRlbF9kYXRhX3Q7Ci0KLXN0YXRpYyBleHBmX2ludGVsX2RhdGFfdCBnX2V4cGZfaW50ZWxfZGF0YVtdID0gewotICB7IC8vIEVudHJ5IDAKLSAgICAweDEuZTBmYWJmMDgxMjIyNzgwZDc0YzAwZmRhMzBhYTM5NDNwLTEsCi0gICAgLTB4MS4wMDAwMDZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxCi0gICAgMHgxLmUwZmFiZWNiZjJjYTlhY2QyNWVlZjYzYWY4NThlZDYwcC0xLAotICAgIC0weDEuMDAwMDA4cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMgotICAgIDB4MS5mYzAzZmNjZmI5MTMxNjdlY2ZhODRmNDhmNWI3MjA1YnAtMSwKLSAgICAtMHgxLjAwMDAyMnAtNwotICB9LAotICB7IC8vIEVudHJ5IDMKLSAgICAweDEuYzNkNjQyZmY5YmYyZDI5NGMwY2UwODhlOGJhZDI3YjNwLTEsCi0gICAgLTB4MS4wMDAxYjBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0Ci0gICAgMHgxLmZmODAwZWZhZWJiODIxOGZjNWQ0OTFiOTg2ODY4OWFhcC0xLAotICAgIC0weDEuMDAwMjA4cC0xMAotICB9LAotICB7IC8vIEVudHJ5IDUKLSAgICAweDEuOGViZDlkMDQ0NjE4MmU5MDU2ZjYwNDg5ZmNkMDAyY2RwLTEsCi0gICAgLTB4MS4wMDAzODBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2Ci0gICAgMHgxLmUwZjk5NTAxMGZkOTZkM2YyOTRjM2ZmZTBlNTEyNDI2cC0xLAotICAgIC0weDEuMDAwOWYwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNwotICAgIDB4MS43OGEzYmI0YzE3YWRmNWIyZDQwZTZlZTNkYmQ0ODY2ZnAtMiwKLSAgICAtMHgxLjAwMGNwMAotICB9LAotICB7IC8vIEVudHJ5IDgKLSAgICAweDEuZmZkZmZkMDAzYWFjYmZjYTY1OTFlN2EzODM2OGI5NGNwLTEsCi0gICAgLTB4MS4wMDIwcC0xMgotICB9LAotICB7IC8vIEVudHJ5IDkKLSAgICAweDEuZmRmZjQxNmFhMzgyN2Q2MzM1YTFmZmE0M2Q0NDA1NjJwLTEsCi0gICAgLTB4MS4wMGUwcC04Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAKLSAgICAweDEuOTkwMDdmZmJkZmZhYzMxZGZmOTBkYTVlZTQ2YTE2ZmFwLTQ3LAotICAgIC0weDEuMDBlMHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEKLSAgICAweDEuMzVjMGRjZmZmYjQ0MTlkYzI5NTU1YzIzMmYzY2RjYTdwLTEsCi0gICAgLTB4MS4wMTRlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIKLSAgICAweDEuZmJlZDlhYzdlZDAzMmFiZmM3NjMwNmEzZTFkYzgxNmJwLTEsCi0gICAgLTB4MS4wNWE0cC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMKLSAgICAweDEuZWZkZGI5Y2NjZDczZjcxYTRiMmI4YzAxYTU3YWU3NWZwLTEsCi0gICAgLTB4MS4wNjRjcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQKLSAgICAweDEuZmZmZGYxMDEwZjM3ZTJmMWY1ZmNhOGI5YzEzYWZmNzBwLTEsCi0gICAgLTB4MS4wNzgwcC0xNgotICB9LAotICB7IC8vIEVudHJ5IDE1Ci0gICAgMHgxLmVmYzM1NjUzOTEyZmFkZTZhMTdhOGY4ZWY0MTA5Njc5cC0xLAotICAgIC0weDEuMDhwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNgotICAgIDB4MS44YjMwOTZmZmZjYmU3Mzc5NjFmOGM2MWNkZjlkNzEzN3AtMSwKLSAgICAtMHgxLjA5MmM2OHAtMgotICB9LAotICB7IC8vIEVudHJ5IDE3Ci0gICAgMHgxLmZiZGQxY2U1NjFmOWQwYTY4OTgxMmU1YmVhMDg5ZjljcC0xLAotICAgIC0weDEuMDljY3AtNwotICB9LAotICB7IC8vIEVudHJ5IDE4Ci0gICAgMHgxLmVmYTFlZjhhMTlkNDBiYjIyYzVkM2MzMTU5OTFlMTVmcC0xLAotICAgIC0weDEuMGEyOHAtNQotICB9LAotICB7IC8vIEVudHJ5IDE5Ci0gICAgMHgxLmZmZmZlZjA5Y2U0N2VjYzAzZDFkMTFmOTQ5MWU2NTE5cC0xLAotICAgIC0weDEuMGY2MzIwcC0yMQotICB9LAotICB7IC8vIEVudHJ5IDIwCi0gICAgMHgxLmZmZmZlZjA5YzA0N2VkMzZmOGFhMWE3ZTY3ZTI2NTI4cC0xLAotICAgIC0weDEuMGY2NHAtMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMQotICAgIDB4MS44ODkwNjM2ZTMxZjU0M2IzODUzYjFiMzA1ZGFlYjkzM3AtMSwKLSAgICAtMHgxLjEwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMjIKLSAgICAweDEuZmZmZmVmMDAwMDQ4M2ZmZjMzNGFhYzVkYWJmZDFjN2RwLTEsCi0gICAgLTB4MS4xMHAtMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMwotICAgIDB4MS5lZjFjMmQwMDJmNzYzOWQ0ZDgyZWRjMDFlYWFkMWRlZHAtMSwKLSAgICAtMHgxLjEyY2NwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNAotICAgIDB4MS5kZTdmMDEwZDFjNjQ5NDEzOWIwNTMxYmQ1YjhmMTA4YnAtMSwKLSAgICAtMHgxLjE1MzRwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNQotICAgIDB4MS4wMjA1N2QxMjQ1Y2VhZjYyYTIxMDk5ZDQ0NDFhMzZkYnAtMTAxLAotICAgIC0weDEuMThwNgotICB9LAotICB7IC8vIEVudHJ5IDI2Ci0gICAgMHgxLmU5MDQwNzM0YTE2MzMzNTY3Y2Y2ZjMxYmM5MGQ0MzU1cC0yNywKLSAgICAtMHgxLjIxMTU4OHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjcKLSAgICAweDEuOGQwM2Y4ZmZmZmIxYTI2MjJiYmE4MWQ2YWI0YTkyZmZwLTE0LAotICAgIC0weDEuMjg3ZDA4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOAotICAgIDB4MS5lOTdlNDMwMjU3ZTc1ZjQ5N2Y2YTNlZmU1MWZmNTA1NHAtMTEyLAotICAgIC0weDEuMzNlZmVhcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOQotICAgIDB4MS5jNjljNTE4ZWE3YzU4ODQyYzE3OGZiZDllOGNmNTM2ZXAtMTE3LAotICAgIC0weDEuNDIxODg4cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMAotICAgIDB4MS5kZjJhMGY5MmMxN2U5ZmYwYmZiNzdiN2FiYmU2MzdhNnAtMTI2LAotICAgIC0weDEuNWFkNmI2cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMQotICAgIDB4MS43ODJmMjMwNjhjMTBiMWM1NTEzZGMzYjAxOTJkMzBkNHAtMTI3LAotICAgIC0weDEuNWU5NDQ0cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMgotICAgIDB4MS43MTA2MDJmOWY0Mjg4MzQ4Y2M4MzQ4NDcyYTI0ZjkzZHAtMTI3LAotICAgIC0weDEuNWVhN2YycDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMwotICAgIDB4MS42NWFiNzk5NGZmMzQ0MGRjZDNlZTdmOWI5YTAyNDIzYXAtMTI3LAotICAgIC0weDEuNWVjN2YycDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNAotICAgIDB4MS42MDMxY2M0NTRmMWMzZTAxMjZiNzFiZjIxZTkwM2QyMHAtMTI3LAotICAgIC0weDEuNWVkN2JlcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNQotICAgIDB4MS5iNzhmNjgwMDAzMGZiN2VjNzk4NGEzZTc0MTlkNmZjMnAtMTI5LAotICAgIC0weDEuNjM4MDY2cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNgotICAgIDB4MS5mOTM2M2YzNTgzMjc5YWMyNGU3NTdlZWI3NjU0OTEwY3AtMywKLSAgICAtMHgxLjY2NGVlMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzcKLSAgICAweDEuZDYxN2YxMGU2M2FkZmNkNjc0MTRjMDhkYzZmOWQwMTBwLTksCi0gICAgLTB4MS42ODViNDRwMgotICB9LAotICB7IC8vIEVudHJ5IDM4Ci0gICAgMHgxLmNmOGM0NTAzYmYxN2Q4Yzc2NDdlOTNhMTUzYWYzN2I2cC05LAotICAgIC0weDEuNjk0MXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkKLSAgICAweDEuZDQ3MGI3MGU5MGQ1MDk3ZTg3YjkyNWM1ZjYzZmVlN2RwLTEsCi0gICAgLTB4MS42YzMzMjhwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MAotICAgIDB4MS5hOWMwYTUwMTBkZTg1ZjlhNjBjODEwNGYzN2ZjNTk3ZnAtMSwKLSAgICAtMHgxLjc5Yzk4NHAtMwotICB9LAotICB7IC8vIEVudHJ5IDQxCi0gICAgMHgxLmRmZjEyNmZmZmNkZGUzNDM2MzIyYmEwOWRiNDU1NmUxcC0yLAotICAgIC0weDEuODNmZjM4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDIKLSAgICAweDEuZGExYjgzMDFhZjgxMzg0YjhlNDk1YzlhNGY5NzQ5N2ZwLTcyLAotICAgIC0weDEuOGE1MjllcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MwotICAgIDB4MS5iYWJhZjRmZmZmZTI5MDI1Y2U3NTEwOTRhZWNmOWIwM3AtMTksCi0gICAgLTB4MS45M2U3ODhwMwotICB9LAotICB7IC8vIEVudHJ5IDQ0Ci0gICAgMHgxLjZlOTUzYWZmZmVjN2ZjM2I1ZGRhMTdjODIwNjc4ODIxcC00MywKLSAgICAtMHgxLmQ3MjNmOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDUKLSAgICAweDEuZmYwZmY2ZjNkOWY0OTNlZDYxMDM2NDg2MWE5OTU2NjRwLTEsCi0gICAgLTB4MS5lMDgyYzRwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDYKLSAgICAweDEuZmYzOGE0MGEzYmMzM2Y2NWY0YmVkNWRlMGJkZmMzOTdwLTQ1LAotICAgIC0weDEuZTdmZmZlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NwotICAgIDB4MS44MDI4OTkwMDM0ZmNjOGYzMzQ0MzMyMWRiMDhjNmRlOHAtMiwKLSAgICAtMHgxLmY1ZjkyMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ4Ci0gICAgMHgxLmZmMDI0OGYxYTE3NDE4ZTYzZDQ3MTFmM2U2NmI3YzI1cC0xLAotICAgIC0weDEuZmJlY3AtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OQotICAgIDB4MS5mZjAyNDZmMjlmMmMyNmM1ZWQ1MWQxNjQ5OGQxZDY4ZXAtMSwKLSAgICAtMHgxLmZiZjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTAKLSAgICAweDEuZmE4N2Y2NmY4MTI4NDkyOTIyOTBhOWY2MjY4ZWYyZjlwLTI0LAotICAgIC0weDEuZmU3ZmZlcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MQotICAgIDB4MS5mZjAwNDZmMmQ3MTZjMDk1NzcwZDg0OWUxODJhM2JiMnAtMSwKLSAgICAtMHgxLmZmZjFmZXAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MgotICAgIDB4MS5lMGZiMjkxMTY1NTAwNjQyMmExNWMzYzAzZjhjZTg0N3AtMSwKLSAgICAtMHgxLmZmZjhmZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDUzCi0gICAgMHgxLmZmMDA0MGY0ZDZjYWMzMTZiZGNmYTEzY2M1YWY3ZTdjcC0xLAotICAgIC0weDEuZmZmZXAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NAotICAgIDB4MS5mZmUwMDEwODFhMjhjNDIwMjYwYTE2MWIxMmZiYjk3ZHAtMSwKLSAgICAtMHgxLmZmZmY3ZXAtMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NQotICAgIDB4MS4wMDAwMDEwMDAwMDA4MDAwMDAyYWFhYWFiNTU1NTU1N3AwLAotICAgIDB4MS5wLTI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTYKLSAgICAweDEuNDI2NDM2ZjVhZWMxYzMxM2E2ZDJiYmNkNThhMzg4ZGVwOTIsCi0gICAgMHgxLjAwMDAyMnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTcKLSAgICAweDEuYTYxNWU1MGE1ZTU0ZTFmMmY3ZTU3YzNmMGZmOTBjNjFwMCwKLSAgICAweDEuMDAwNHAtMQotICB9LAotICB7IC8vIEVudHJ5IDU4Ci0gICAgMHgxLmQ5NWQ2MzAxNGNlNWNkY2QxMTNmZWUwYTRiZTY3OTAycDIsCi0gICAgMHgxLjAwMjAzOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTkKLSAgICAweDEuNzYyYjYzMDRlMTlmMzUxOGU5MDM0OGI1ZDlkYzU0NGVwMTEsCi0gICAgMHgxLjAwMjJwMwotICB9LAotICB7IC8vIEVudHJ5IDYwCi0gICAgMHgxLmE2MzZlMDBhMGNkNWI4NTI2Mjc1NmQ1MGI5NWNjYzg4cDAsCi0gICAgMHgxLjAwMmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MQotICAgIDB4MS44Y2E2ZDMwNTg3YWY1MDRhNmY2OWQzYTU3YmYzZTZhOHAxMSwKLSAgICAweDEuMDJwMwotICB9LAotICB7IC8vIEVudHJ5IDYyCi0gICAgMHgxLmRmYTJkNzAxZGE5OGExNDgwNjNjM2NhNmQxM2YxYmNlcDkzLAotICAgIDB4MS4wNDVjYjZwNgotICB9LAotICB7IC8vIEVudHJ5IDYzCi0gICAgMHgxLjYzNDBlNzAwMDBlMjk2ZTc5MDczNjcwZWY5YzA5MTVkcDEsCi0gICAgMHgxLjA1NTMzZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQKLSAgICAweDEuZWY1OTViMDE4NTQ5NDQyZWM3M2UzZDUxNjE3NjhkMTZwNSwKLSAgICAweDEuMDgwZDc0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NQotICAgIDB4MS44OWFjZGYyNmY5OTAxMmVjNTI3YzVlOWU3YzQ3MTE3ZnA0NywKLSAgICAweDEuMDgxMGVlcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NgotICAgIDB4MS5mMzNiZWYwMDAwM2FiOTNhNDY3Yzk0ZmM5NWRlZWQzMHA1LAotICAgIDB4MS4wODhkNzRwMgotICB9LAotICB7IC8vIEVudHJ5IDY3Ci0gICAgMHgxLmIwZjM0YWZmZmY5ZGMyNDMwYjMxYzJlYTA0ZjlkZjkwcDk1LAotICAgIDB4MS4wOTdmNmFwNgotICB9LAotICB7IC8vIEVudHJ5IDY4Ci0gICAgMHgxLjZiNGFlNTUyMjYwNGUxMDI3MzI4M2VmYmY5ZjYyNmM5cDEsCi0gICAgMHgxLjBiMGRiYXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkKLSAgICAweDEuMDAwMDExMDAwMDkwODAwMzMyZDU2MmVkNjAyZTM4MjRwMCwKLSAgICAweDEuMTBwLTIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzAKLSAgICAweDEuYjM4MGIwZjZhMTJmYTE5ZGYzOTFmNTAzNGI4YWUzMWJwMCwKLSAgICAweDEuMTAwOWE0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzEKLSAgICAweDEuYjVkMjkzZjViZmEyMDQxNjcyMTk5OWM2YmUwM2ExOTVwMCwKLSAgICAweDEuMTJjMWZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIKLSAgICAweDEuYjY2MDlmZjc4NWEwNDYzMDUzMTM1NGQxOTI0ZjhkMTFwMCwKLSAgICAweDEuMTM2OHAtMQotICB9LAotICB7IC8vIEVudHJ5IDczCi0gICAgMHgxLjc4MjQxYWZmZmZkMWNmOTY3YTllZWM2NjNmNDU2NzdlcDEsCi0gICAgMHgxLjEzZjM3YXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQKLSAgICAweDEuYjc3NjYwZjU4YmNiMWVlMmQ3NTdhOTdmODJjODIyM2RwMCwKLSAgICAweDEuMTRhY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDc1Ci0gICAgMHgxLjdiNGQ2ZjA2Y2YwZmJkMWZiYzA1ZDUwOTA4MzUyMDc1cDEsCi0gICAgMHgxLjE2MThwMAotICB9LAotICB7IC8vIEVudHJ5IDc2Ci0gICAgMHgxLjI3NjU4MTAwMDJjMmViNDI2NTMwOGFjOGIxMmFmYTNicDAsCi0gICAgMHgxLjI1MjcyNnAtMwotICB9LAotICB7IC8vIEVudHJ5IDc3Ci0gICAgMHgxLjkyYjBhY2ZmZmYxYzg2NDZkNDA3NTk3NmY2MmRmYmMycDEsCi0gICAgMHgxLjI1NjkzZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgKLSAgICAweDEuZmJkMjI0YzdlMTk3MGJlZDg2OGZhZGM4MDEyYzg1YWVwMTMsCi0gICAgMHgxLjM2NDQ4NnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzkKLSAgICAweDEuMDYwMDdkMDAwODQzNDlmOTQ5MTEwNGYyMGM4OWYyZjlwMjgsCi0gICAgMHgxLjM2ZTY5NnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgODAKLSAgICAweDEuNWVjMTg0MDAwMDM0MTlhZDM4MTViNDFjNDUzODRkY2NwMCwKLSAgICAweDEuNDI3ODk4cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgODEKLSAgICAweDEuYjIzZmRhY2ZhM2UwZDlkMjFiMzQyOTgzZTE1OWZlZGNwMTE4LAotICAgIDB4MS40OTQ3N2NwNgotICB9LAotICB7IC8vIEVudHJ5IDgyCi0gICAgMHgxLmZlYTAwMGUyNDM4MjE0Y2E5MTU1ZDRjOTFiZDI5ZTlhcDExOSwKLSAgICAweDEuNGNiMzJjcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MwotICAgIDB4MS5mNjcxNzZjMTlmZWUwYzlhOGQxYzljYmIyZDczYjYxN3AxMjAsCi0gICAgMHgxLjRmNjg2YXA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgODQKLSAgICAweDEuZDFjMjQxMDI0ZDg0MWJkNTI5NzJiZTYxODI2MzM3MzNwMTIxLAotICAgIDB4MS41MWUwOTBwNgotICB9LAotICB7IC8vIEVudHJ5IDg1Ci0gICAgMHgxLmNkZTJkZDA3MGM3ZGU5Y2I1OGMwY2FlZDkyNzE0NWQ4cDMsCi0gICAgMHgxLjU1YjRlMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODYKLSAgICAweDEuZjcxMDkwMDljZDM0OTRhZjUyNmMxOGFmMDE5MDU1ZWVwMCwKLSAgICAweDEuNTllMDhlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODcKLSAgICAweDEuZmE3YzI2YzEyYWZiODdiNWIyYjE1MWU2NTRmNmViOTBwMCwKLSAgICAweDEuNWQ1OGFlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODgKLSAgICAweDEuY2YzZDQ2Y2I5OGE1NzE4NzFmNmRlZTFhODA1ODFhNTJwMTI2LAotICAgIDB4MS41ZmI3ZWNwNgotICB9LAotICB7IC8vIEVudHJ5IDg5Ci0gICAgMHgxLmZkODcxOGYzZDNlZDhmNGE1ZDhkZWM2YWU3MzI3MTU5cDcsCi0gICAgMHgxLjYyOTRlMnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTAKLSAgICAweDEuZmVhZmZlZjNlNzM2YjcxNTY5YTQ3NDA0MjA1NGU4YjdwNywKLSAgICAweDEuNjJiYTIycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MQotICAgIDB4MS5mNzZiYTQ2NzMzZjQxNDZhMGY5NGIzZDEzMTE0OTRiY3AxMjcsCi0gICAgMHgxLjYyZDJlMnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTIKLSAgICAweDEuZmQ3YjlmMDFiNGRmMDg4NTVmZWIyOTAyMzIzMmZkOTlwMTI3LAotICAgIDB4MS42MmRmMjRwNgotICB9LAotICB7IC8vIEVudHJ5IDkzCi0gICAgMHgxLmZmNjkxZTZkZDcxYmM4Y2IxZjFmY2ZmY2MzMmNiOTgycDEyNywKLSAgICAweDEuNjJlMzAycDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NAotICAgIDB4MS5mZmNlMGE5ZTRmYzY3NjJjOTFmMWEwY2UzNThhODQ4N3AxMjcsCi0gICAgMHgxLjYyZTNjY3A2Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTUKLSAgICAweDEuZmZmYzAxMDljNDAyZDhiMjNiZmVhM2ExNDgzNTgzMWJwMTUsCi0gICAgMHgxLjYyZTNmMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTYKLSAgICAweDEuZmZmMTA4NjYzMmIwZTliOTNiYzViZTQ0ZDljMWRlYTdwMTI3LAotICAgIDB4MS42MmU0MTJwNgotICB9LAotICB7IC8vIEVudHJ5IDk3Ci0gICAgMHgxLmZmZjYwODQ3MDc4NmQ3ZTQ3ZWYxMTY2MmYxNzkwYzJhcDEyNywKLSAgICAweDEuNjJlNDFjcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OAotICAgIDB4MS4yMzJiOTZmZmVjMTQ3YmIzMTY5NTU5NTg3OGJhNGY5ZHA0LAotICAgIDB4MS43MzVlNzBwMQotICB9LAotICB7IC8vIEVudHJ5IDk5Ci0gICAgMHgxLjhkMmM5OTAzMTc2NjBlMjFhNjRiYTc3MjNmNWUwZWQzcDgsCi0gICAgMHgxLjdmcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDAKLSAgICAweDEuZWQzNzlmMDI1NzgxZGRjYTI0MGM4MzM3NWVlNDk2YWJwNzAsCi0gICAgMHgxLjg5Njg5YXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAxCi0gICAgMHgxLjM2ODc0MTAwMDBlMmM5Zjg3MzIyMDhjOTc5MTlmYjBlcDAsCi0gICAgMHgxLjhiNzZkMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwMgotICAgIDB4MS4zMTJlNzlmZjUyMmFmNzFiOWUyZTgzN2JmODg3Mjk3MnAyLAotICAgIDB4MS44ZmUwY2FwMAotICB9LAotICB7IC8vIEVudHJ5IDEwMwotICAgIDB4MS43MDA4ZjEwMDIwMjI2ZTRmNTliNWFmZDhjMTE3YzA5NnA0LAotICAgIDB4MS45MTVhZmNwMQotICB9LAotICB7IC8vIEVudHJ5IDEwNAotICAgIDB4MS5kZTc1ZTkwMjI1ZWM2ZGEyY2ZiMzlkY2E2NDQwYjY4OHA3NSwKLSAgICAweDEuYTRlNDM4cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUKLSAgICAweDEuNzlmMDY1MDA5NWZkNDI2ZGNlOGFhODAzZTlhNGZjOThwOSwKLSAgICAweDEuYTgyZjMwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYKLSAgICAweDEuMmUwMmQ2ZmZmZmZlZDk3ZjI3ZGNjMzc0MjQ3MmZmYTRwMSwKLSAgICAweDEuYjc4NDk4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3Ci0gICAgMHgxLmZhMmI2MGZmZmZmZWVhMWM3YmQxYzc4YmI1YzQ2YjE3cDksCi0gICAgMHgxLmJhZTE5NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4Ci0gICAgMHgxLjAwMDczNGZmZmZmZmJhYmE0ODIwYTJiNzlkMjk2ZDYzcDAsCi0gICAgMHgxLmNkMzk4MnAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDkKLSAgICAweDEuZDU0MTU4ZjU0MzRlZGIyYTIzNDM1OWJlZmIyMjA5YmNwMTAsCi0gICAgMHgxLmUyNjU3MHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEwCi0gICAgMHgxLjk5ZmIyOTAxNzZlYzAxMGQwNjhjNWY4ODhhMThkODQ3cDg3LAotICAgIDB4MS5lNjMyYWFwNQotICB9LAotICB7IC8vIEVudHJ5IDExMQotICAgIDB4MS5iYzhlNTMwMDAwM2UxMmVhZjBlYTA0YjhjNTA3NjQ3NHAyLAotICAgIDB4MS5mMDJkNjhwMAotICB9LAotICB7IC8vIEVudHJ5IDExMgotICAgIDB4MS41NjU2NzJmZmZmZTc4MTY4Y2VhOWVkMWRlZWQyYzQ3MnAxLAotICAgIDB4MS5mN2IwNWNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTMKLSAgICAweDEuYTY2NGRjZWQ3Y2MzM2VkZTk2NTM5MjcyMmIwZDg3YmZwMjIsCi0gICAgMHgxLmY3ZmZmZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE0Ci0gICAgMHgxLmZlOGJmZDM4NzYyNDkwYzdmNjhlODBhNGJkZjNhMTdkcDkwLAotICAgIDB4MS5mODk2YTJwNQotICB9LAotICB7IC8vIEVudHJ5IDExNQotICAgIDB4MS5jYzI0ZDUwYzE2NTAwMDg0NzU0ZmJkZGM2MGU3Mjc2Y3AyLAotICAgIDB4MS5mOGZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDExNgotICAgIDB4MS43MjE1MWM2OWZmMGU5ODUwYjg4Y2JkOWE2MDBmZWE1MHAxMSwKLSAgICAweDEuZmY5MDBlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTcKLSAgICAweDEuM2Q1OWQyZDhiMjJiNDFjMmJiNjMzNGM5YmU3YmU5MDJwOTIsCi0gICAgMHgxLmZmZGZmZXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE4Ci0gICAgMHgxLjc0ODc1MzAwMDQyYjk0M2JhMzY4OTk0ZWVjOGRjYjBlcDExLAotICAgIDB4MS5mZmZiZmVwMgotICB9LAotICB7IC8vIEVudHJ5IDExOQotICAgIDB4MS5kOGU2MDkwY2VmZTgwNDg3OTQ4YzAxZWZlM2NmNGM1YXAyLAotICAgIDB4MS5mZmZmZGNwMAotICB9LAotICB7IC8vIEVudHJ5IDEyMAotICAgIDB4MS4wMDAwMDBmZmZmZmU3ZmZmZmUyYWFhYWJiNTU1NTcwMnAwLAotICAgIDB4MS5mZmZmZmNwLTI1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIxCi0gICAgMHgxLjMwNGQxZWQ5NTExYmY1YTZhNWIyMGU0Y2RiZjZkOGZmcDY5LAotICAgIDB4MS43ZmZmZmVwNQotICB9LAotICB7IC8vIEVudHJ5IDEyMgotICAgIDB4MS4zMDRkNmFlY2EyNTRiM2FmNGJjNWQ2MjkzZDVmNjVjN3A2OSwKLSAgICAweDEuODBwNQotICB9LAotICB7IC8vIEVudHJ5IDEyMwotICAgIDB4MS4zMDRkYjcwMDA2OTI0ODY2YmMxODQ1MDk3YzkxZTQ4OHA2OSwKLSAgICAweDEuODAwMDAycDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQKLSAgICAweDEuZjhlNjQ0MTFiNGM3NDI5ZjI2MGNiNzI1Mzk4ODA5MTlwLTc2LAotICAgIC0weDEuYTAwMDAycDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjUKLSAgICAweDEuZjhlNmMyNGI1NTkyZTM0MjFkZjI3YWNmMWUwODAxNDRwLTc2LAotICAgIC0weDEuYTBwNQotICB9LAotICB7IC8vIEVudHJ5IDEyNgotICAgIDB4MS5mOGU3NDA4NTE1ZWNmMDA5Y2I1YjdmZTgwMDAzYWU3NHAtNzYsCi0gICAgLTB4MS45ZmZmZmVwNQotICB9LAotICB7IC8vIEVudHJ5IDEyNwotICAgIDB4MS41NTc2ZjBkY2FjMjE3ODdmMmQ1N2IxNGE3MDAyMjRlM3AxMTUsCi0gICAgMHgxLjNmZmZmZXA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI4Ci0gICAgMHgxLjU1Nzc5Yjk4NGYzZWIzYzhhNTAzYjRhOGUyNDg5ZDk4cDExNSwKLSAgICAweDEuNDBwNgotICB9LAotICB7IC8vIEVudHJ5IDEyOQotICAgIDB4MS41NTc4NDY1NDQ3YjlkNWY4MzI0NmFmMWU0OGU4MjI1YnAxMTUsCi0gICAgMHgxLjQwMDAwMnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMwCi0gICAgMHgxLjA3YjY4ZDUwNWE2MGRkNDQ0YjhiMmJkZmUwNjAzOGNmcC0xMjcsCi0gICAgLTB4MS42MDAwMDJwNgotICB9LAotICB7IC8vIEVudHJ5IDEzMQotICAgIDB4MS4wN2I3MTEyYmMxZmZlMTlkM2U3MDNlNGE3OTRmNzM3MnAtMTI3LAotICAgIC0weDEuNjBwNgotICB9LAotICB7IC8vIEVudHJ5IDEzMgotICAgIDB4MS4wN2I3OTUwNzZiOGNhYTQxMjMzNGU3ZGRmMThiMDBmNXAtMTI3LAotICAgIC0weDEuNWZmZmZlcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzMKLSAgICAweDEuMDM5OTI0NDI4ZjQ3NTExYzAzZTc1ZGQ2MjNiYzQ3ZTFwNzUsCi0gICAgMHgxLjlmZmZmZXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM0Ci0gICAgMHgxLjAzOTk2NTI4ZTA3NGJlYmNmZDc2NDE2ZmMyYzBlYjkycDc1LAotICAgIDB4MS5hMHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM1Ci0gICAgMHgxLjAzOTlhNjBmNDFkYmMyYjA4NTIyMTMxMmY1MDUwODlkcDc1LAotICAgIDB4MS5hMDAwMDJwNQotICB9LAotICB7IC8vIEVudHJ5IDEzNgotICAgIDB4MS5hZWJhNGYzNTAyZDgzNzk1MTg4OTc0MDg5MDc0NzYwOXAtNzAsCi0gICAgLTB4MS44MDAwMDJwNQotICB9LAotICB7IC8vIEVudHJ5IDEzNwotICAgIDB4MS5hZWJhYmFlM2E0MWI0YmUzZjU3NmU3MDMwM2EzNzkzMnAtNzAsCi0gICAgLTB4MS44MHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM4Ci0gICAgMHgxLmFlYmIyNjkyNjA0YTBiZTEwY2M5ZjNhMDllNzdhYWUxcC03MCwKLSAgICAtMHgxLjdmZmZmZXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM5Ci0gICAgMHgxLmYxMDQ3NTQ1NDY1Zjk3YWFkNjc3NGRmZTE2Yjk2MGUycDEyNiwKLSAgICAweDEuNWZmZmZlcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDAKLSAgICAweDEuZjEwNTZkYzdiZjIyZDNkZTBlZDU3NjE1YmM1MDFmOGJwMTI2LAotICAgIDB4MS42MHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQxCi0gICAgMHgxLmYxMDY2NjRhYjQyNzZiODMzOTkzMDUwYzlhYTA5YTk1cDEyNiwKLSAgICAweDEuNjAwMDAycDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDIKLSAgICAweDEuN2ZkOGI0ZTZlODc1YjU5ODhhZWIyZTkwODNjYWY3OTFwLTExNiwKLSAgICAtMHgxLjQwMDAwMnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQzCi0gICAgMHgxLjdmZDk3NGQzNzJlNDQ4NmY3MjM1OGFjZGQxMjY5MGU1cC0xMTYsCi0gICAgLTB4MS40MHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQ0Ci0gICAgMHgxLjdmZGEzNGMwNWQ0OTM4N2IzODM4YzVjMmJmYWQwMTIzcC0xMTYsCi0gICAgLTB4MS4zZmZmZmVwNgotICB9LAotICB7IC8vIEVudHJ5IDE0NQotICAgIDB4MS42YTMyZTE2MDY0NWRjNTM2NGRhOTNjMTIzMjE1YzU5MXAtMTA3LAotICAgIC0weDEuMjc0NzY4cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDYKLSAgICAweDEuNDJhMjgwYjQ3ZjFlNTBlNzMwN2M5NTk5ZTk0OTc1ZGFwLTEyMSwKLSAgICAtMHgxLjRlOGVkMHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQ3Ci0gICAgMHgxLjFmNjQ3OWQ2ZTc5ZDkyNDc1OWM3ZjQ0MTYwYWQzMGUzcC0xMzUsCi0gICAgLTB4MS43NWQ2MzhwNgotICB9LAotICB7IC8vIEVudHJ5IDE0OAotICAgIDB4MS5mZmZmZmZlZmEzOWVmMzlhN2YyNTQ1MzVkOTM1MTQyYnAtMiwKLSAgICAtMHgxLjYyZTQzMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE0OQotICAgIDB4MS4wMDAwMDBmN2QxY2ZmMTlmMGYzMzAzNmNmMDFjMTIwY3AtMSwKLSAgICAtMHgxLjYyZTQyZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE1MAotICAgIDB4MS4wMDAwMDFmN2QxZDE2OTcwZGZjYjM2MGVmYTkxZmVhMHAtMSwKLSAgICAtMHgxLjYyZTQyY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDE1MQotICAgIDB4MS42YTA5ZTY2MjJhZWJmYmQ3YTRhMDM3NzcyMjNjNjA0ZnAtMSwKLSAgICAtMHgxLjYyZTQzMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDE1MgotICAgIDB4MS42YTA5ZTcxNzJmZGY1YTJlNTc3MWYzODY2YTI1NTE0ZXAtMSwKLSAgICAtMHgxLjYyZTQyZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDE1MwotICAgIDB4MS42YTA5ZTdjYzM0ZDMxMzA3ODQwOTdiOGQ4YTdjOTAwOHAtMSwKLSAgICAtMHgxLjYyZTQyY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDE1NAotICAgIDB4MS5hZTg5Zjk5MjNjYmI0OTE4M2FhYmIzM2I5ZGUxYmM4MnAtMSwKLSAgICAtMHgxLjYyZTQzMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDE1NQotICAgIDB4MS5hZTg5ZjlmZGRmMzliYjFiYjk0YmFhMzZjOThhYmI3YnAtMSwKLSAgICAtMHgxLjYyZTQyZXAtMwotICB9LAotICB7IC8vIEVudHJ5IDE1NgotICAgIDB4MS5hZTg5ZmE2OTgxYjg0ODA3ZDc4YjdmMjU5MTA5NTZkZXAtMSwKLSAgICAtMHgxLjYyZTQyY3AtMwotICB9LAotICB7IC8vIEVudHJ5IDE1NwotICAgIDB4MS5kNTgxOGRjZGRhMzAxYmNhOTVmYmNjNTMwYWI5YjkzOHAtMSwKLSAgICAtMHgxLjYyZTQzMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDE1OAotICAgIDB4MS5kNTgxOGUwODhhNjFkOTMwZGYxYjA4N2E0YjkyOGVhMHAtMSwKLSAgICAtMHgxLjYyZTQyZXAtNAotICB9LAotICB7IC8vIEVudHJ5IDE1OQotICAgIDB4MS5kNTgxOGU0MzNhOTM5ZGVkMmU3MjY2Y2IxM2QyOTk4NnAtMSwKLSAgICAtMHgxLjYyZTQyY3AtNAotICB9LAotICB7IC8vIEVudHJ5IDE2MAotICAgIDB4MS5lYTRhZmEyOTRlNjBiNGJmYTI0NDk0NjEwZTc1MjYxY3AtMSwKLSAgICAtMHgxLjYyZTQzMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDE2MQotICAgIDB4MS5lYTRhZmE0N2YzMTA1ODQ5YWRjY2ZhMWRkNWIzZjkzZHAtMSwKLSAgICAtMHgxLjYyZTQyZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDE2MgotICAgIDB4MS5lYTRhZmE2Njk3YmZmZGJlMDQ0ZmE3Y2RhZDRiM2VlN3AtMSwKLSAgICAtMHgxLjYyZTQyY3AtNQotICB9LAotICB7IC8vIEVudHJ5IDE2MwotICAgIDB4MS5mNTA3NjViNjY0M2VmYWEyY2E5ZTY2OTA5MzNlNWMzN3AtMSwKLSAgICAtMHgxLjYyZTQzMHAtNgotICB9LAotICB7IC8vIEVudHJ5IDE2NAotICAgIDB4MS5mNTA3NjVjNjBjN2EyODk0OGQ4MmYzMWE3Mjg4MjMyZnAtMSwKLSAgICAtMHgxLjYyZTQyZXAtNgotICB9LAotICB7IC8vIEVudHJ5IDE2NQotICAgIDB4MS5mNTA3NjVkNWI0YjU1NzAzOTI0MGYxMjc3MDVjMTFlN3AtMSwKLSAgICAtMHgxLjYyZTQyY3AtNgotICB9LAotICB7IC8vIEVudHJ5IDE2NgotICAgIDB4MS4wNTliMGQyMTQxODZjZmY5YTk3NGJjYjg4M2NmNjhkZXAwLAotICAgIDB4MS42MmU0MmNwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjcKLSAgICAweDEuMDU5YjBkMjk2ZTVmMzkyNDY5MGNlMTA1MzNmZTU5OWJwMCwKLSAgICAweDEuNjJlNDJlcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY4Ci0gICAgMHgxLjA1OWIwZDMxOWIzN2EyOTA4ZjY4NGZhZDdiZmI5NGQwcDAsCi0gICAgMHgxLjYyZTQzMHAtNgotICB9LAotICB7IC8vIEVudHJ5IDE2OQotICAgIDB4MS4wYjU1ODZhZWI2OGVhMjRjOTI4MWYyNWI3OWQ4NGY4M3AwLAotICAgIDB4MS42MmU0MmNwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzAKLSAgICAweDEuMGI1NTg2YmY2YmU3MGRiZGE2MmY3MTQ4Y2Q1YTc4OGZwMCwKLSAgICAweDEuNjJlNDJlcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTcxCi0gICAgMHgxLjBiNTU4NmQwMjEzZjdhM2EwZjYzYWZhMjA3ZWE3NTg3cDAsCi0gICAgMHgxLjYyZTQzMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDE3MgotICAgIDB4MS4xNzJiODM4MzI3YWUxZjlkN2U3MDQxOGE0NzZkYTQ4MHAwLAotICAgIDB4MS42MmU0MmNwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzMKLSAgICAweDEuMTcyYjgzYTYwZDFlOTIzMGNiM2I1MmNkMTIwMGI4ZGNwMCwKLSAgICAweDEuNjJlNDJlcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTc0Ci0gICAgMHgxLjE3MmI4M2M4ZjI4ZjA5MjBjNjE0ZmM0NDU2ZGUwNDlmcDAsCi0gICAgMHgxLjYyZTQzMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDE3NQotICAgIDB4MS4zMDZmZTAwZDUyMWM1YjM1YmYzNzM3MzhiMGExMmUxYXAwLAotICAgIDB4MS42MmU0MmNwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzYKLSAgICAweDEuMzA2ZmUwNTk2ZTE0NjgwZGM1NGYzYTJlYTE1ZTNhZmNwMCwKLSAgICAweDEuNjJlNDJlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc3Ci0gICAgMHgxLjMwNmZlMGE1OGEwYzg3ZWNjOTZjZDQwNWQ4YjU4MmRicDAsCi0gICAgMHgxLjYyZTQzMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDE3OAotICAgIDB4MS42YTA5ZTUwM2IyYTdkZDk5Y2Y5NDc0YjExNWE3M2VjZXAwLAotICAgIDB4MS42MmU0MmNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzkKLSAgICAweDEuNmEwOWU1YjhiNzlhOGNiNDYwMmI0MmNkNGM5OWU2MGVwMCwKLSAgICAweDEuNjJlNDJlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTgwCi0gICAgMHgxLjZhMDllNjZkYmM4ZDk2NTE2YTMwM2VkMDI4OWM1ZDM2cDAsCi0gICAgMHgxLjYyZTQzMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDE4MQotICAgIDB4MS5mZmZmZmMxMDVjNjRlYzMyOTJmMmFmYWMzZjFhNDMwZHAwLAotICAgIDB4MS42MmU0MmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODIKLSAgICAweDEuZmZmZmZlMTA1YzYxZmM4ZWY2M2M2NWM2NmE5ZDQ5NzFwMCwKLSAgICAweDEuNjJlNDJlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTgzCi0gICAgMHgxLjAwMDAwMDA4MmUzMDg2NzVhYmNiM2MyMTVlYWNmODRhcDEsCi0gICAgMHgxLjYyZTQzMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE4NAotICAgIDB4MS5mZmZmZjgyMGI4ZDE5Nzc5NjkyZmIwZmNjMDI4MTI0NnAxLAotICAgIDB4MS42MmU0MmNwMAotICB9LAotICB7IC8vIEVudHJ5IDE4NQotICAgIDB4MS5mZmZmZmMyMGI4YzVkOGVhZmY0YWMwMTNjZjczNDYzOXAxLAotICAgIDB4MS42MmU0MmVwMAotICB9LAotICB7IC8vIEVudHJ5IDE4NgotICAgIDB4MS4wMDAwMDAxMDVjNjEwZDJlNDJmNDU5MjI3NjhhOGU2Y3AyLAotICAgIDB4MS42MmU0MzBwMAotICB9LAotICB7IC8vIEVudHJ5IDE4NwotICAgIDB4MS5mZmZmZjA0MTcxYzIyYjQzYTI4ZDgwODhjMzQ3YmYxZnAzLAotICAgIDB4MS42MmU0MmNwMQotICB9LAotICB7IC8vIEVudHJ5IDE4OAotICAgIDB4MS5mZmZmZjg0MTcxOTMzMTBhNDI5YjcxZTcwZDc5MjE4NnAzLAotICAgIDB4MS42MmU0MmVwMQotICB9LAotICB7IC8vIEVudHJ5IDE4OQotICAgIDB4MS4wMDAwMDAyMGI4YzIxYjY4MzM2MDNlNTE4OTdjNTk4Y3A0LAotICAgIDB4MS42MmU0MzBwMQotICB9LAotICB7IC8vIEVudHJ5IDE5MAotICAgIDB4MS5mZmZmZTA4MmU0MDA0N2M4OWRmYTQxZDA5YzFlMWVmOHA3LAotICAgIDB4MS42MmU0MmNwMgotICB9LAotICB7IC8vIEVudHJ5IDE5MQotICAgIDB4MS5mZmZmZjA4MmUzNDQ1ZWU1NWIzZmE4NGE1ZGQ4NDljOXA3LAotICAgIDB4MS42MmU0MmVwMgotICB9LAotICB7IC8vIEVudHJ5IDE5MgotICAgIDB4MS4wMDAwMDA0MTcxODQzYWZmMWM5ZWYxNDM0MWJmYTQyZXA4LAotICAgIDB4MS42MmU0MzBwMgotICB9LAotICB7IC8vIEVudHJ5IDE5MwotICAgIDB4MS5mZmZmYzEwNWM5ZjA1NDg3NjBhODIzYjBkZmRhZWI2NnAxNSwKLSAgICAweDEuNjJlNDJjcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTQKLSAgICAweDEuZmZmZmUxMDVjNzAwYjEwYzNlMmE1NDlmYmRlYmIwZGFwMTUsCi0gICAgMHgxLjYyZTQyZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk1Ci0gICAgMHgxLjAwMDAwMDgyZTMwODg2YjkxMGI5ZDg3NTI4MjgzODlkcDE2LAotICAgIDB4MS42MmU0MzBwMwotICB9LAotICB7IC8vIEVudHJ5IDE5NgotICAgIDB4MS5mZmZmODIwYjliOWZiYzZkNWRkYTQwNmFkOWY5MzM1NHAzMSwKLSAgICAweDEuNjJlNDJjcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTcKLSAgICAweDEuZmZmZmMyMGI4ZmUxMmYxMDE3NDBhYzk2NTNmNzhmZTNwMzEsCi0gICAgMHgxLjYyZTQyZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTk4Ci0gICAgMHgxLjAwMDAwMTA1YzYxMTUwNWQ3Zjc0YTQxNDMzMzEyZHAzMiwKLSAgICAweDEuNjJlNDMwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTkKLSAgICAweDEuZmZmZTA4MmYyODY4OGQzODcyYWI4YWE2OWYzZGMzNThwMTI3LAotICAgIDB4MS42MmU0MmNwNgotICB9LAotICB7IC8vIEVudHJ5IDIwMAotICAgIDB4MS5mZmZmMDgyZTZjN2ZlZDFkM2ZkNWNmZjdlMWY2MDU5MXAxMjcsCi0gICAgMHgxLjYyZTQyZXA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjAxCi0gICAgSFVHRV9WQUxGLAotICAgIDB4MS42MmU0MzBwNgotICB9LAotICB7IC8vIEVudHJ5IDIwMgotICAgIDAuMGYsCi0gICAgLTB4MS45ZDFkYTJwNgotICB9LAotICB7IC8vIEVudHJ5IDIwMwotICAgIDAuMGYsCi0gICAgLTB4MS45ZDFkYTBwNgotICB9LAotICB7IC8vIEVudHJ5IDIwNAotICAgIDB4MS4wMDAwNzMzZDM3YjFkMDhhODBkN2Y1YjQ1YTU3Yjg4OHAtMTQ5LAotICAgIC0weDEuOWQxZDllcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDUKLSAgICAweDEuOGViZWY5MjM2OGEzZWFmYTUxOTc0MDU4NGMwYmMzYjRwLTEsCi0gICAgLTB4MS4wMDAwMDJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDYKLSAgICAweDEuOGViZWY5ZWFjODIwYWU4NjgyYjk3OTNhYzZkMWU3NzJwLTEsCi0gICAgLTB4MS5wLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDcKLSAgICAweDEuOGViZWZhNGU3N2RmMzVhZTgyYjU3YWYxMjE1MThjZWZwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDgKLSAgICAweDEuYzNkNmExZGRlMjc5OTJlMTI5ZWQ3OGE2NTU3M2Y4NzhwLTEsCi0gICAgLTB4MS4wMDAwMDJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDkKLSAgICAweDEuYzNkNmEyNGVkODIyMTg3ODdkNjI0ZDNlNWViYTk1ZjVwLTEsCi0gICAgLTB4MS5wLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTAKLSAgICAweDEuYzNkNmEyODc1MmY2NjVkYjJlZWExZmE1ODc2Nzk4YTNwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTEKLSAgICAweDEuZTBmYWJmODA1MGQyNDkxOWQzNTc5NDZmOWU4ODA3NTRwLTEsCi0gICAgLTB4MS4wMDAwMDJwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTIKLSAgICAweDEuZTBmYWJmYmM3MDJhM2NlNWUzMWZlMDYwOTM1OGJhZmRwLTEsCi0gICAgLTB4MS5wLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTMKLSAgICAweDEuZTBmYWJmZGE3ZmQ2Mzk5ZDYzMjM5MWY5NzcxZjNlODJwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTQKLSAgICAweDEuZjAzZjU2ODk4NzY4MGY4NDE5ZGU3ZDY2ZDBhNjE5ZWNwLTEsCi0gICAgLTB4MS4wMDAwMDJwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTUKLSAgICAweDEuZjAzZjU2YTg4YjVkNzkxNGIwMGFiZjk3NzYyNzM1ZDFwLTEsCi0gICAgLTB4MS5wLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTYKLSAgICAweDEuZjAzZjU2YjgwZDU4MmU5NzEyZTE1ZGYzY2M5ZThlOWNwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTcKLSAgICAweDEuZjgwZmVhYjAyZTdhZjM2NzViMzZlYjZjM2M3MWE1ZWVwLTEsCi0gICAgLTB4MS4wMDAwMDJwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTgKLSAgICAweDEuZjgwZmVhYmZlZWZhNDkyN2QxMGJkZDU0ZWFkNWFhNDZwLTEsCi0gICAgLTB4MS5wLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTkKLSAgICAweDEuZjgwZmVhYzdjZjM5ZjQzNzRkNzQ1ODA4YTc4MTMwZWNwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjAKLSAgICAweDEuZmMwM2ZkNGViYTEyNWE0ZDM0NTViZjcyY2JjOTM5ZjdwLTEsCi0gICAgLTB4MS4wMDAwMDJwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjEKLSAgICAweDEuZmMwM2ZkNTZhYTIyNGY5N2ZjYmYxMzMyOTg4ODQyZGVwLTEsCi0gICAgLTB4MS5wLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjIKLSAgICAweDEuZmMwM2ZkNWFhMjJhNGE0OTQ5MGJhZDEyOGJhNWFmOTNwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjMKLSAgICAweDEuZmUwMGZmYTZjM2Y5YmQyMDI5Mjg5N2Y0MmQ3YjlkNzZwLTEsCi0gICAgLTB4MS4wMDAwMDJwLTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjQKLSAgICAweDEuZmUwMGZmYWFiZmZiYmM3MWFkMWUxMTg0YWZjMTljN2VwLTEsCi0gICAgLTB4MS5wLTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjUKLSAgICAweDEuZmUwMGZmYWNiZGZjYmMxZDZjMWE0ZGNjMTFkZGI2ZDhwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjYKLSAgICAweDEuZmYwMDNmZjM1N2FhNDg5NzA5NTdhMmNmN2Q3YTZjYWNwLTEsCi0gICAgLTB4MS4wMDAwMDJwLTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjcKLSAgICAweDEuZmYwMDNmZjU1NmFhODg4YjYwODIwYjYwODdkMWU5MWFwLTEsCi0gICAgLTB4MS5wLTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjgKLSAgICAweDEuZmYwMDNmZjY1NjJhYTg4NjRiYjc1N2E0ZWQ4ZDk2ODZwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjI5Ci0gICAgMHgxLmZmODAwZmZkYWFmZmY2ZWZlNGRmM2Y3ZjVjZTIzYWNjcC0xLAotICAgIC0weDEuMDAwMDAycC0xMAotICB9LAotICB7IC8vIEVudHJ5IDIzMAotICAgIDB4MS5mZjgwMGZmZWFhYmZmZWVlZmE0ZjNjZjcwZjU5ZDliZnAtMSwKLSAgICAtMHgxLnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzEKLSAgICAweDEuZmY4MDBmZmYyYWEwMDJlZWI0ZmIzZDMyYzQ5OGE4ZmZwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgMjMyCi0gICAgMHgxLmZmZjAwMDNmZGY1NjU2YTZhOTkzMmRmNjI4M2NmY2JkcC0xLAotICAgIC0weDEuMDAwMDAycC0xMwotICB9LAotICB7IC8vIEVudHJ5IDIzMwotICAgIDB4MS5mZmYwMDAzZmZmNTU1NmFhYTg4ODhiNjBiMmNiMmZmMnAtMSwKLSAgICAtMHgxLnAtMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzQKLSAgICAweDEuZmZmMDAwNDAwZjU0ZDZhY2E4YzMzNDE2MTAxMDA5OWVwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTE0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM1Ci0gICAgMHgxLjQ4YjVlMzcxYmE5ZjdmYzIyNGM3NWQxOThmZTRjZDFicDAsCi0gICAgMHgxLmZmZmZmZXAtMwotICB9LAotICB7IC8vIEVudHJ5IDIzNgotICAgIDB4MS40OGI1ZTNjM2U4MTg2Njc2N2JjM2I2OWJhYWJlNTM0ZXAwLAotICAgIDB4MS5wLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzcKLSAgICAweDEuNDhiNWU0Njg0MzBhNzE4MTQ0NzY0N2ZjMDNhZGJmYjZwMCwKLSAgICAweDEuMDAwMDAycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM4Ci0gICAgMHgxLjIyMTYwNDM3MmM5YzQ2NzMyZGQ3MmU5OTZjOWUyM2YycDAsCi0gICAgMHgxLmZmZmZmZXAtNAotICB9LAotICB7IC8vIEVudHJ5IDIzOQotICAgIDB4MS4yMjE2MDQ1YjZmNWNjZjljZWQ2ODgzODRlMDZiOGQ0MnAwLAotICAgIDB4MS5wLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDAKLSAgICAweDEuMjIxNjA0YTNmNGRkZWY4OTc0YzAwNzlmMjNmZDBiYjlwMCwKLSAgICAweDEuMDAwMDAycC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQxCi0gICAgMHgxLjEwODJiNTY2Y2IyMzgwZTBiZTBkNTU5YTAxNTAxNzJmcDAsCi0gICAgMHgxLmZmZmZmZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDI0MgotICAgIDB4MS4xMDgyYjU3N2QzNGVkN2Q1YjFhMDE5ZTIyNWM5YTk1MXAwLAotICAgIDB4MS5wLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDMKLSAgICAweDEuMTA4MmI1OTllM2E1ODhmMTIwZTYxYWY0ODY5Yzk4NDJwMCwKLSAgICAweDEuMDAwMDAycC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQ0Ci0gICAgMHgxLjA4MjA1NWY4ZDE3YzE5YTY3YmU0ZjcwNThlOWE1NzBhcDAsCi0gICAgMHgxLmZmZmZmZXAtNgotICB9LAotICB7IC8vIEVudHJ5IDI0NQotICAgIDB4MS4wODIwNTYwMTEyN2VjOThlMGJkMDgzYWJhODBjOTdhNnAwLAotICAgIDB4MS5wLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDYKLSAgICAweDEuMDgyMDU2MTE5NDg0MmEyMzQzZTgxZmQ1ZmFiNDUxZWZwMCwKLSAgICAweDEuMDAwMDAycC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQ3Ci0gICAgMHgxLjA0MDgwYWIxNGRjMzY2YWQ2MTE2YzM5ZTNjMmQwYTllcDAsCi0gICAgMHgxLmZmZmZmZXAtNwotICB9LAotICB7IC8vIEVudHJ5IDI0OAotICAgIDB4MS4wNDA4MGFiNTVkZTM5MTdhYjg2NGIzZTkwNDRlNmI0NXAwLAotICAgIDB4MS5wLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDkKLSAgICAweDEuMDQwODBhYmQ3ZTIzZTc0NjI4ODI5NmMxMzEzZjIxYjFwMCwKLSAgICAweDEuMDAwMDAycC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjUwCi0gICAgMHgxLjAyMDIwMTUzZmM0MDU4NjIzNWRlY2Y0ZWI3MjdhMTVmcDAsCi0gICAgMHgxLmZmZmZmZXAtOAotICB9LAotICB7IC8vIEVudHJ5IDI1MQotICAgIDB4MS4wMjAyMDE1NjAwNDQ1YjBjMzI2MzgyYmM3MzY4OWQzMnAwLAotICAgIDB4MS5wLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTIKLSAgICAweDEuMDIwMjAxNWEwODRjNjA2YzQzODRmOWE3ZmYyZWU0MjVwMCwKLSAgICAweDEuMDAwMDAycC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjUzCi0gICAgMHgxLjAxMDA4MDI5YjQ1NmY3YTg1NTUzMGIxNTEwNTVmY2NjcDAsCi0gICAgMHgxLmZmZmZmZXAtOQotICB9LAotICB7IC8vIEVudHJ5IDI1NAotICAgIDB4MS4wMTAwODAyYWI1NTc3N2QyOGEyYTQyZDI2YWE5ZWU2N3AwLAotICAgIDB4MS5wLTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTUKLSAgICAweDEuMDEwMDgwMmNiNzU4NzgyOWY2ZGEzMmNlNDA1OGI5NDBwMCwKLSAgICAweDEuMDAwMDAycC04Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjU2Ci0gICAgMHgxLjAwODAyMDA0ZDVjMDAxMGZmMjUxZDEzNGQ5YmJkZjhjcDAsCi0gICAgMHgxLmZmZmZmZXAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTcKLSAgICAweDEuMDA4MDIwMDU1NjAwMTExMjdkNDFkNWJkNzJmNGM4ZjNwMCwKLSAgICAweDEucC05Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjU4Ci0gICAgMHgxLjAwODAyMDA2NTY4MDMxMTg1MzgxZjZkMmM1ZjZhYzkwcDAsCi0gICAgMHgxLjAwMDAwMnAtOQotICB9LAotICB7IC8vIEVudHJ5IDI1OQotICAgIDB4MS4wMDQwMDgwMDZhYTU1M2RkYzBlMzE3YjBmYTU5YjFjNHAwLAotICAgIDB4MS5mZmZmZmVwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYwCi0gICAgMHgxLjAwNDAwODAwYWFiNTU1ZGRlMzhlNmNlODZlOTI3N2FhcDAsCi0gICAgMHgxLnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjEKLSAgICAweDEuMDA0MDA4MDEyYWQ1NTlkZTU4ZjExOGQ3N2IwNzAzYWZwMCwKLSAgICAweDEuMDAwMDAycC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI2MgotICAgIDB4MS4wMDA4MDAxZmY4NTUxNWZmMDEyZTY4Y2QyZDY5YzU4OHAwLAotICAgIDB4MS5mZmZmZmVwLTE0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjYzCi0gICAgMHgxLjAwMDgwMDIwMDA1NTU2MDAwMTExMTI3ZDI5NzI5OGM5cDAsCi0gICAgMHgxLnAtMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjQKLSAgICAweDEuMDAwODAwMjAxMDU1ZDYwMjAxOTY2YmRkMzk4NjdmNWNwMCwKLSAgICAweDEuMDAwMDAycC0xMwotICB9LAotICB7IC8vIEVudHJ5IDI2NQotICAgIDB4MS45NjljN2JlM2FkODc0YzA2Nzg3YWJhOTU1ZDIwNmQ4M3AtOTMsCi0gICAgLTB4MS4wMDAwMDJwNgotICB9LAotICB7IC8vIEVudHJ5IDI2NgotICAgIDB4MS45NjlkNDczMjFlNGNiYWJmMmQyODA3MDk2M2IwNDE5NHAtOTMsCi0gICAgLTB4MS5wNgotICB9LAotICB7IC8vIEVudHJ5IDI2NwotICAgIDB4MS45NjlkYWNkOTdjY2UyZDliMDA1ZmY1NzZiN2EwYmI0ZnAtOTMsCi0gICAgLTB4MS5mZmZmZmVwNQotICB9LAotICB7IC8vIEVudHJ5IDI2OAotICAgIDB4MS5jODQ1ZGQ2NDkwYWIyZDljN2IwY2ZlYzljNTAwODQ4M3AtNDcsCi0gICAgLTB4MS4wMDAwMDJwNQotICB9LAotICB7IC8vIEVudHJ5IDI2OQotICAgIDB4MS5jODQ2NGY3NjE2NDY4MWUyOTlhMDEyNDQ4Nzg4NGQ2NHAtNDcsCi0gICAgLTB4MS5wNQotICB9LAotICB7IC8vIEVudHJ5IDI3MAotICAgIDB4MS5jODQ2ODg3ZWUzYzVkMTcwNWJlNjE3MmQxMTc4NzBhMHAtNDcsCi0gICAgLTB4MS5mZmZmZmVwNAotICB9LAotICB7IC8vIEVudHJ5IDI3MQotICAgIDB4MS5lMzU1N2Y0NDM0YWQ3YmU5ZTA2YzI5OTY2ZjU2ZTYyYnAtMjQsCi0gICAgLTB4MS4wMDAwMDJwNAotICB9LAotICB7IC8vIEVudHJ5IDI3MgotICAgIDB4MS5lMzU1YmJhZWU4NWNhZGE2NWY3M2YzMmU4OGZiM2NjNnAtMjQsCi0gICAgLTB4MS5wNAotICB9LAotICB7IC8vIEVudHJ5IDI3MwotICAgIDB4MS5lMzU1ZDllNDQ1MDk0NzBmMGFhNzNhYzdlZjEyMTQ4ZnAtMjQsCi0gICAgLTB4MS5mZmZmZmVwMwotICB9LAotICB7IC8vIEVudHJ5IDI3NAotICAgIDB4MS41ZmMxZmE0NGUyMjY5YzljOTcwNjQ2OWMyMGI5M2U5NXAtMTIsCi0gICAgLTB4MS4wMDAwMDJwMwotICB9LAotICB7IC8vIEVudHJ5IDI3NQotICAgIDB4MS41ZmMyMTA0MTAyN2FjYmJmY2Q0Njc4MGZlZTcxZWFkMnAtMTIsCi0gICAgLTB4MS5wMwotICB9LAotICB7IC8vIEVudHJ5IDI3NgotICAgIDB4MS41ZmMyMWIzZjEzMjhjYzE2MjEwNTc2ZDNjNzBiZjk4YnAtMTIsCi0gICAgLTB4MS5mZmZmZmVwMgotICB9LAotICB7IC8vIEVudHJ5IDI3NwotICAgIDB4MS4yYzE1NTIyMTY5MThiOThiMWNlZjdiMDRmNzEwZTM2Y3AtNiwKLSAgICAtMHgxLjAwMDAwMnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc4Ci0gICAgMHgxLjJjMTU1YjgyMTNjZjQ3N2U4YWYwMTMyYzJhZTIzZDRhcC02LAotICAgIC0weDEucDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzkKLSAgICAweDEuMmMxNTYwMzI2OTQ2YjA3OGIwOWY4ZmFlYmUyZmMyODdwLTYsCi0gICAgLTB4MS5mZmZmZmVwMQotICB9LAotICB7IC8vIEVudHJ5IDI4MAotICAgIDB4MS4xNTJhYTVlNzRkN2M3MzcyOGFkYTA2NjNmMjI0YTM4MXAtMywKLSAgICAtMHgxLjAwMDAwMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgxCi0gICAgMHgxLjE1MmFhYTNiZjgxY2I5ZmRiNzZlYWUxMmQwMjk1NzFmcC0zLAotICAgIC0weDEucDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODIKLSAgICAweDEuMTUyYWFjNjY0ZDczNWM0MzQ2Y2MyN2Y0MmEzZDgzYjFwLTMsCi0gICAgLTB4MS5mZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDI4MwotICAgIDB4MS43OGI1NjA3MTY0MmZhODM3Yzk1MTllZWMxMGE3ZjkzN3AtMiwKLSAgICAtMHgxLjAwMDAwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg0Ci0gICAgMHgxLjc4YjU2MzYyY2VmMzdjNmFlYjdiMWUwYTQxNTNlNDM3cC0yLAotICAgIC0weDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODUKLSAgICAweDEuNzhiNTY0ZGI4NDU3OWI5NDkwZTdiOTU1NzAyNmM2NDdwLTIsCi0gICAgLTB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODYKLSAgICAweDEuNDI1OTMyMzkwMmRiYzZlNjJlM2UwN2NlMjZjZDkwNGNwOTIsCi0gICAgMHgxLmZmZmZmZXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjg3Ci0gICAgMHgxLjQyNTk4MmNmNTk3Y2QyMDVjZTNkNWI0ZWRiMDMxNzU2cDkyLAotICAgIDB4MS5wNgotICB9LAotICB7IC8vIEVudHJ5IDI4OAotICAgIDB4MS40MjVhMjNmYzQzMmZiNWQ1NTYwMDZhNGQ4ZTdlZTExYnA5MiwKLSAgICAweDEuMDAwMDAycDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODkKLSAgICAweDEuMWY0M2Q4ZGMzOTA4YjhlZDg3YTVhYmQ1MDYyMTcwNmFwNDYsCi0gICAgMHgxLmZmZmZmZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjkwCi0gICAgMHgxLjFmNDNmY2M0YjY2MmM3ZDg0Nzg4NDAxODQyMTc0MDc0cDQ2LAotICAgIDB4MS5wNQotICB9LAotICB7IC8vIEVudHJ5IDI5MQotICAgIDB4MS4xZjQ0NDQ5NWJlOGUxNjE2YTFlNWUzODg3NzliYzE0NnA0NiwKLSAgICAweDEuMDAwMDAycDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTIKLSAgICAweDEuMGYyZWFjMTc5NGI4ZjNlZGI1YzEwZDI2YTUxZjQyMGZwMjMsCi0gICAgMHgxLmZmZmZmZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkzCi0gICAgMHgxLjBmMmViZDBhODAwMjA0OTIyM2YxNzA4ODJiNWVlNWVmcDIzLAotICAgIDB4MS5wNAotICB9LAotICB7IC8vIEVudHJ5IDI5NAotICAgIDB4MS4wZjJlZGVmMDU5YzFiMjIzMTJiZWQ5NjQwMDZlZTYzM3AyMywKLSAgICAweDEuMDAwMDAycDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTUKLSAgICAweDEuNzQ5ZTljMmY3YmI2Y2Y1YTI3NmVlMDgyMzZjMmQ2YzNwMTEsCi0gICAgMHgxLmZmZmZmZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk2Ci0gICAgMHgxLjc0OWVhN2Q0NzBjNmRmMGJlMDBlMDg0YTgxNWQxZGU2cDExLAotICAgIDB4MS5wMwotICB9LAotICB7IC8vIEVudHJ5IDI5NwotICAgIDB4MS43NDllYmYxZTViZmU3NTcwMTlkZTRlMjJiMTEzZmRlOXAxMSwKLSAgICAweDEuMDAwMDAycDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTgKLSAgICAweDEuYjRjOGZjMGY0ZmE3YTJmMjQ1OWE2ZWY1M2MzMTVmMGZwNSwKLSAgICAweDEuZmZmZmZlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTkKLSAgICAweDEuYjRjOTAyZTI3M2E1ODY3OGQ2ZDNiZmRiOTNkYjk2ZDBwNSwKLSAgICAweDEucDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDAKLSAgICAweDEuYjRjOTEwODhiYmYzMzMzNmYwZWU1MmIxYWQ4NThlNDNwNSwKLSAgICAweDEuMDAwMDAycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDEKLSAgICAweDEuZDhlNjQ3ZGI4MTQ3NzNmNDE5MjYyZWU0NzdhOTg2MTZwMiwKLSAgICAweDEuZmZmZmZlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDIKLSAgICAweDEuZDhlNjRiOGQ0ZGRhZGNjMzNhM2JhMjA2YjY4YWJiYThwMiwKLSAgICAweDEucDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDMKLSAgICAweDEuZDhlNjUyZjBlNzE3ZDkyZDE1Y2Q2MTAwMjJhZTUxZTNwMiwKLSAgICAweDEuMDAwMDAycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDQKLSAgICAweDEuNWJmMGE3NTU1NGNlOTFlODNkNDIxYzJhN2MwNzVjYjJwMSwKLSAgICAweDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA1Ci0gICAgMHgxLjViZjBhOGIxNDU3Njk1MzU1ZmI4YWM0MDRlN2E3OWUzcDEsCi0gICAgMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA2Ci0gICAgMHgxLjViZjBhYjY5MjZjYWFmYTFhMDE1OGQ3OTY5M2FjOGUxcDEsCi0gICAgMHgxLjAwMDAwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA3Ci0gICAgSFVHRV9WQUxGLAotICAgIDB4MS5wMTI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzA4Ci0gICAgSFVHRV9WQUxGLAotICAgIDB4MS45OTk5OWFwMTI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzA5Ci0gICAgSFVHRV9WQUxGLAotICAgIDB4MS4xOTk5OWFwMTI1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzEwCi0gICAgSFVHRV9WQUxGLAotICAgIDB4MS42NjY2NjhwMTI1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzExCi0gICAgSFVHRV9WQUxGLAotICAgIDB4MS5iMzMzMzRwMTI1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzEyCi0gICAgSFVHRV9WQUxGLAotICAgIDB4MS5wMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzEzCi0gICAgSFVHRV9WQUxGLAotICAgIDB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzE0Ci0gICAgSFVHRV9WQUxGLAotICAgIEhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDMxNQotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDMxNgotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuZmZmZmZjcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDMxNwotICAgIDB4MS43MjQwNDkwYTE2NTYyMGQ5YjkyMmFhYTIyYThlNGMwOXA0LAotICAgIDB4MS45MjFmYjZwMQotICB9LAotICB7IC8vIEVudHJ5IDMxOAotICAgIDB4MS4zM2RlZGQ2NzIwODRjY2E2MTJhYWIyYjlhM2U4MTdiYnAyLAotICAgIDB4MS45MjFmYjZwMAotICB9LAotICB7IC8vIEVudHJ5IDMxOQotICAgIDB4MS41YmYwYWI2OTI2Y2FhZmExYTAxNThkNzk2OTNhYzhlMXAxLAotICAgIDB4MS4wMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDMyMAotICAgIDB4MS41YmYwYThiMTQ1NzY5NTM1NWZiOGFjNDA0ZTdhNzllM3AxLAotICAgIDB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDMyMQotICAgIDB4MS41YmYwYTc1NTU0Y2U5MWU4M2Q0MjFjMmE3YzA3NWNiMnAxLAotICAgIDB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjIKLSAgICAweDEuMThiZDY2ZmI2MmIzMTkwMGNjMDc2MzRkZWJhNDM0NTZwMSwKLSAgICAweDEuOTIxZmI2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIzCi0gICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0cDAsCi0gICAgMHgxLjAwMDAwMnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzI0Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0cDAsCi0gICAgMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzI1Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzcDAsCi0gICAgMHgxLmZmZmZmY3AtMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzI2Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzcDAsCi0gICAgMHgxLmZmZmZmOHAtMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzI3Ci0gICAgMHgxLnAwLAotICAgIDB4MS5wLTE0OAotICB9LAotICB7IC8vIEVudHJ5IDMyOAotICAgIDB4MS5wMCwKLSAgICAweDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjkKLSAgICAweDEucDAsCi0gICAgMC4wZgotICB9LAotICB7IC8vIEVudHJ5IDMzMAotICAgIDB4MS5wMCwKLSAgICAtMC4wZgotICB9LAotICB7IC8vIEVudHJ5IDMzMQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzMyCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEucC0xNDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzMKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhwLTEsCi0gICAgLTB4MS5mZmZmZjhwLTEyNwotICB9LAotICB7IC8vIEVudHJ5IDMzNAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOHAtMSwKLSAgICAtMHgxLmZmZmZmY3AtMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzM1Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4cC0xLAotICAgIC0weDEucC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzYKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjdwLTEsCi0gICAgLTB4MS4wMDAwMDJwLTEyNgotICB9LAotICB7IC8vIEVudHJ5IDMzNwotICAgIDB4MS5kMmUxNzEyM2QyYWUwMmFiYmNmODk2ZjIwMjVlMzQ2M3AtMiwKLSAgICAtMHgxLjkyMWZiNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDMzOAotICAgIDB4MS43OGI1NjRkYjg0NTc5Yjk0OTBlN2I5NTU3MDI2YzY0N3AtMiwKLSAgICAtMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDMzOQotICAgIDB4MS43OGI1NjM2MmNlZjM3YzZhZWI3YjFlMGE0MTUzZTQzN3AtMiwKLSAgICAtMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQwCi0gICAgMHgxLjc4YjU2MDcxNjQyZmE4MzdjOTUxOWVlYzEwYTdmOTM3cC0yLAotICAgIC0weDEuMDAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDEKLSAgICAweDEuYTliY2MzMzczZWZkM2U0ZDZhOTZiZTdhNzU2MmY0MjhwLTMsCi0gICAgLTB4MS45MjFmYjZwMAotICB9LAotICB7IC8vIEVudHJ5IDM0MgotICAgIDB4MS42MjAyMjVhZTVlOTM0OTU5M2Q2YmI2MThjMjMxNTQ1ZXAtNSwKLSAgICAtMHgxLjkyMWZiNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQzCi0gICAgMC4wZiwKLSAgICAtMHgxLmZmZmZmY3AxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDQKLSAgICAwLjBmLAotICAgIC0weDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDM0NQotICAgIDAuMCwKLSAgICAtSFVHRV9WQUxGCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ2Ci0gICAgMHgxLmZmZmYwODJlNmM3ZmVkMWQzZmQ1Y2ZmN2UxZjYwNTkxcDEyNywKLSAgICAweDEuNjJlNDJlcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDcKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLjYyZTQzMHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzQ4Ci0gICAgMHgxLjAwMDA0YmY5NGY2M2UzZmE2ODYyMjIxNDhmMTI5M2M0cC0xMjYsCi0gICAgLTB4MS41ZDU4OWVwNgotICB9LAotICB7IC8vIEVudHJ5IDM0OQotICAgIDB4MS5mZmZmOTdmMjkyY2U4MGU0OTQyMzFjNjQ5NmU5Y2JmNXAtMTI3LAotICAgIC0weDEuNWQ1OGEwcDYKLSAgfSwKLX07Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwotCi1URVNUKG1hdGhfZXhwZiwgZXhwZl9pbnRlbCkgewotI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplb2YoZ19leHBmX2ludGVsX2RhdGEpL3NpemVvZihleHBmX2ludGVsX2RhdGFfdCk7IGkrKykgewotICAgIEVYUEVDVF9GTE9BVF9FUShnX2V4cGZfaW50ZWxfZGF0YVtpXS5leHBlY3RlZCwgZXhwZihnX2V4cGZfaW50ZWxfZGF0YVtpXS5jYWxsX2RhdGEpKSA8PCAiRmFpbGVkIG9uIGVsZW1lbnQgIiA8PCBpOwotICB9Ci0jZWxzZSAvLyBfX0JJT05JQ19fCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCi19CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2xvZ190ZXN0LmNwcCBiL3Rlc3RzL21hdGhfbG9nX3Rlc3QuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkYTJhODQ4Li4wMDAwMDAwCi0tLSBhL3Rlc3RzL21hdGhfbG9nX3Rlc3QuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMTY3NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLQotI2luY2x1ZGUgPG1hdGguaD4KLQotI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+Ci0KLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCi10eXBlZGVmIHN0cnVjdCB7Ci0gIGRvdWJsZSBleHBlY3RlZDsKLSAgZG91YmxlIGNhbGxfZGF0YTsKLX0gbG9nX2ludGVsX2RhdGFfdDsKLQotc3RhdGljIGxvZ19pbnRlbF9kYXRhX3QgZ19sb2dfaW50ZWxfZGF0YVtdID0gewotICB7IC8vIEVudHJ5IDAKLSAgICAweDEuZDc3ZmQxM2QyN2ZmZWZmZmZmZmZmZmZmYjVlZDk4NDNwLTExLAotICAgIDB4MS4wMDNhZjZjMzdjMWQzcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxCi0gICAgMHgxLjQxMWVmZDI5N2M3ODA4MDAwMDAwMDAwMDE2ZDYxNWIycC02LAotICAgIDB4MS4wNTExMjc5MjkzNGIzcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyCi0gICAgMHgxLmQ0ODQwNjY0NDQ2ZmI4MDAwMDAwMDAwMDFmNTc0ZmZjcC02LAotICAgIDB4MS4wNzZkMWQ4Yzc1ZWE2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzCi0gICAgMHgxLmY2ZTRjM2NlZDdjNzFmZmZmZmZmZmZmZmZlZTk0N2RhcC0zLAotICAgIDB4MS40NzQwOGNiOTU4M2NlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0Ci0gICAgMHgxLjFhMDQwODcxMmUwMDlmZmZmZmZmZmZmZmZlZTQ2MDEycC0yLAotICAgIDB4MS41MTJiMzEyNjQ1NGYzcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1Ci0gICAgMHgxLjhiNTJjMTVlYTljMjM3ZmZmZmZmZmZmZmZlNjEzOTVjcC0yLAotICAgIDB4MS43ODllOTViMTE1NzhjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2Ci0gICAgMHgxLmQ3MDcwMjliYjU5ZDhmZmZmZmZmZmZmZmZlY2Y2ZWY2cC0yLAotICAgIDB4MS45NTg0OTdmN2IzNTNmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3Ci0gICAgMHgxLjA3MjdhZjVmZWU4ZjVmZmZmZmZmZmZmZmZlYzcwMjFmcC0xLAotICAgIDB4MS5hYzAzMmE4ZDJlYzIzcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4Ci0gICAgMHgxLjEyZmNjZTAyZWZiMzIwMDAwMDAwMDAwMDAxNDM1YjkwcC0xLAotICAgIDB4MS5iNjA0ZTE5NDIwOThkcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5Ci0gICAgMHgxLjE3OGU2ZDNlY2FjZTk4MDAwMDAwMDAwMDAxMzAwYWNjcC0xLAotICAgIDB4MS5iOWYxZmE0NTg3OTY3cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMAotICAgIDB4MS42MmY3MWM0NjU2YjYwZmZmZmZmZmZmZmZmZjdmMTY4ZXAtMSwKLSAgICAweDEuMDAwOTc2NTgxY2U0ZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEKLSAgICAweDEuZDYzMzZhODgwNzdhOWZmZmZmZmZmZmZmZmZlMWY4MTdwMCwKLSAgICAweDEuOTFhOGRmZjU0MGZmN3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIKLSAgICAweDEuMDE2ZTgyY2VkYTM1OGZmZmZmZmZmZmZmZmZhY2JmNjJwMSwKLSAgICAweDEuZGUzN2ZiMzFmZDVmY3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMKLSAgICAweDEuMWUxMjZmNWQ5NWYzODgwMDAwMDAwMDAwMDA1ZDM3NjFwMSwKLSAgICAweDEuMmIxMTk5ZTQ5NzczOXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQKLSAgICAweDEuMmYzODMyY2FkM2Q1ZjAwMDAwMDAwMDAwMDA3ODgwMWNwMSwKLSAgICAweDEuNTVmMGVhYTFiMmZjOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUKLSAgICAweDEuNDJlZTNjN2RjNDk0NjAwMDAwMDAwMDAwMDA0ZWE1N2ZwMSwKLSAgICAweDEuOGVkZTQ5MmQ5NjA3MnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTYKLSAgICAweDEuNmI1ZGY3ZTNjZDQyMTgwMDAwMDAwMDAwMDA0NDYxM2JwMSwKLSAgICAweDEuMTE4Njc2MzdjYmQwM3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTcKLSAgICAweDEuN2U3ZjA5NTcwM2VlZTdmZmZmZmZmZmZmZmZhY2RjMDZwMSwKLSAgICAweDEuM2Q5ZDdkNTk3YTlkZHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTgKLSAgICAweDEuOTY4N2M4M2ZhZjAwNjdmZmZmZmZmZmZmZmZiOWNmM2ZwMSwKLSAgICAweDEuN2YzODI1Nzc4YWFhZnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTkKLSAgICAweDEuODNkNGJjZGViYjNmM2ZmZmZmZmZmZmZmZmZmZmFjYzlwMiwKLSAgICAweDEuYWM1MGI0MDljOGFlZXA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjAKLSAgICAweDEuZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDBhYWFhYWFwLTUzLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMQotICAgIDB4MS43NmU3ZTVkN2I2ZWFiZmZmZmZmZmZmZmZmZmYwNmY4MHAzLAotICAgIDB4MS5kZTdjZDY3NTEwMjlhcDE2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjIKLSAgICAweDEuZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDBhYWFhYWFwLTUzLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMwotICAgIC0weDEuOTE1NTBjMzU3Zjg4M2ZmZjg5OWRmZjMwZDBmMzAzZWVwOCwKLSAgICAweDEuMDAwMDAwMDAwMDAwM3AtNTc5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQKLSAgICAweDEuN2ZmZmZmZmZmZmZmYjgwMDAwMDAwMDAwMTFmZmZmZmZwLTUwLAotICAgIDB4MS4wMDAwMDAwMDAwMDA2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNQotICAgIDB4MS5iZmZmZmZmZmZmZmU3ODAwMDAwMDAwMDFjOTU1NTU1NXAtNDgsCi0gICAgMHgxLjAwMDAwMDAwMDAwMWNwMAotICB9LAotICB7IC8vIEVudHJ5IDI2Ci0gICAgMHgxLjdmZGZmZmZmZmY3MDE3ZmYwMDAwNDdlZTAxN2ZmNTJjcC00MSwKLSAgICAweDEuMDAwMDAwMDAwMGJmZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcKLSAgICAweDEuMGZmZmZmZmZlZGYwMDAwMDAxOTk2YWFhYWE4MWUyOGFwLTM1LAotICAgIDB4MS4wMDAwMDAwMDIyMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgKLSAgICAweDEuZmZmZmZmZmYwMDAwMDAwMGFhYWFhYWFhMmFhYWFhYWJwLTMzLAotICAgIDB4MS4wMDAwMDAwMTBwMAotICB9LAotICB7IC8vIEVudHJ5IDI5Ci0gICAgMHgxLjdmZmZmZjcwMDAwMDQ3ZmZmZmQ3ODAwMDE4NGNjY2JkcC0yNSwKLSAgICAweDEuMDAwMDAwY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAKLSAgICAweDEuMGEyZWEzZTc3YWYwNjAwMDQwMTBjNGY2YjQzN2ZiNDVwMSwKLSAgICAweDEuMDAwNzBwMwotICB9LAotICB7IC8vIEVudHJ5IDMxCi0gICAgMHgxLjkwNDEyMDk0ZDM2N2Y5OWYzYzYxNTIzMWFkOThiZjNkcC0xMywKLSAgICAweDEuMDAwYzgyNTczZjVmOXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIKLSAgICAweDEuZmZlMDAyYWE2YWIxMTA2Njc4YWQ4YjMxOGNiMzg1NDVwLTEyLAotICAgIDB4MS4wMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDMzCi0gICAgMHgxLmJmY2YwNzI0Mjk2OWQxNWRiNGQyYjNlZmUxYzAzN2UwcC0xMSwKLSAgICAweDEuMDAzODBwMAotICB9LAotICB7IC8vIEVudHJ5IDM0Ci0gICAgMHgxLmQ3N2ZkMTNkMjdmZmVmZmZmZmZmZmZmZmI1ZWQ5ODQzcC0xMSwKLSAgICAweDEuMDAzYWY2YzM3YzFkM3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUKLSAgICAweDEuZWEwNTRjZTg1MDhlNDg3NDQ0MmU5NWU0MTcxOGIwZGVwLTEwLAotICAgIDB4MS4wMDdhOWVhN2E5ZTgwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNgotICAgIDB4MS5mZjAwNGE3YWI5MDgzZjllMTcxN2QzYTRhYWVjODY1N3AtMTAsCi0gICAgMHgxLjAwN2ZkZmY3ZmRmZTBwMAotICB9LAotICB7IC8vIEVudHJ5IDM3Ci0gICAgMHgxLmZmZGE2NWQ0NGRjY2M4ODkxMTVhNGE0ZmY3NWM1YTc3cC0xMCwKLSAgICAweDEuMDA4MDE2OWExNmNkNXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgKLSAgICAweDEuYjk1Njk4OWQyNTg5ZDdmZDY4MzhlNTdhNzAyZjM4YWNwLTksCi0gICAgMHgxLjAwZGQwYTgzMTcxNzZwMAotICB9LAotICB7IC8vIEVudHJ5IDM5Ci0gICAgMHgxLmZkMDgxNmQ5NzE1MmM3ZmVhZDdiODQ5Zjc2MTRmYjQ4cC05LAotICAgIDB4MS4wMGZmMDJiYThhNTQzcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MAotICAgIC0weDEuMzc5MTU1NTU3ODViMDdmYzE5ZGQyNjMyMDg4YTFlN2ZwOSwKLSAgICAweDEuMDBmZmZmZmZmZmZmZnAtODk5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDEKLSAgICAweDEuNjRhMmE5YjZhNDA1ODgwMTAxMDI4MDcxMzhkZmY1MGNwMCwKLSAgICAweDEuMDFjMDAwMDAwMDBkY3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgNDIKLSAgICAweDEuZDQ2NTk1NzEwNmJkMjg2YmFlNjdjMDgyOTcxNjNlYTNwLTgsCi0gICAgMHgxLjAxZDYxMzFkMDlkYzVwMAotICB9LAotICB7IC8vIEVudHJ5IDQzCi0gICAgMHgxLmZkZjYzOWJlYTVhZDM3NjJkZjI0YTIwOGUyYTFjYmU4cC04LAotICAgIDB4MS4wMWZmZjM3YTM0MDg0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NAotICAgIDB4MS5mZGY2ZTRmY2Y0NTY5NzcyMDUyMjg1MzBhY2Q1NzE1NXAtOCwKLSAgICAweDEuMDFmZmY0MjZjOGNiNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUKLSAgICAweDEuZmRmNmU0ZmQwNDI2Zjc2ZDZkN2I4MzliNWY2YzhiYWZwLTgsCi0gICAgMHgxLjAxZmZmNDI2YzhkYjVwMAotICB9LAotICB7IC8vIEVudHJ5IDQ2Ci0gICAgMHgxLmZkZmU5YzU3ZGViZTE3NjBmZTRmZjA4OTliZjllNmRjcC04LAotICAgIDB4MS4wMWZmZmJlZDkyMmUzcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NwotICAgIC0weDEuZDE3YmUyNDUxMjI5ZmZmZjExZTg1MTgwNGU5N2NkZDdwMywKLSAgICAweDEuMDI4cC0yMQotICB9LAotICB7IC8vIEVudHJ5IDQ4Ci0gICAgMHgxLjZkY2IyZmVkN2YyNWQzZjI4NjcwNzIzMGJlMTkwNzYwcC03LAotICAgIDB4MS4wMmRmYWZhMDdkZjZkcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OQotICAgIDB4MS5mZjA5MmE4NWVlMDJmN2ZlN2ZjNWRjMWQ0MTcxODRjMHAtNywKLSAgICAweDEuMDQwNjE1NDYxZjZjYXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTAKLSAgICAweDEuMGFhNTNjZWEzZjFhYmZmZjFkZGZiNWFmNGFjNDlhYWVwLTYsCi0gICAgMHgxLjA0MzM0ZWVjNWE2NWRwMAotICB9LAotICB7IC8vIEVudHJ5IDUxCi0gICAgMHgxLjZlYTA3MDIxYzEzMzQ4MDE3NDgzNWQxNDJhNGI4MzFlcC02LAotICAgIDB4MS4wNWNiMDliYjlmZWQ3cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MgotICAgIDB4MS43MTk5Zjk4NGY1NjA4MDAxMzVmZjNhZWMzYTA3OTZhOHAtNiwKLSAgICAweDEuMDVkNzM1MTg0MjYxY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMKLSAgICAweDEuNzc4OGJjOWMwODMxODgwMTU0NmMwMzVjYmQ5YTI2OWFwLTYsCi0gICAgMHgxLjA1ZWY3YmRlZTdiZTBwMAotICB9LAotICB7IC8vIEVudHJ5IDU0Ci0gICAgMHgxLmMyNjg4ZTk1MmE3MjM3ZmRkODU2MzI5N2RlNjI1YWNmcC02LAotICAgIDB4MS4wNzIyYTA1NzExNzc4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NQotICAgIDB4MS5lMDIxNTEzNTI1MTJmN2MyMzBjYzRiODk1ZGM2OGRkMXAtNiwKLSAgICAweDEuMDc5Y2YwMGZlMjRmOXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYKLSAgICAtMHgxLjNlMWZlZTY5OWM2YmM3ZmMwMDFhMzU5ZTBlZmUyZGI3cDgsCi0gICAgMHgxLjA3Y3AtNDU5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTcKLSAgICAweDEuZjMxYjU2YjhiNmYxYTI4NjI1ODJmNTI4YjMzYzRkZTJwLTYsCi0gICAgMHgxLjA3ZWIyNTllZTAxYjVwMAotICB9LAotICB7IC8vIEVudHJ5IDU4Ci0gICAgLTB4MS5kMDgxOTA5NWZjZDZjODAwOTI0ZWNkMDMwOGViZTIxOHAzLAotICAgIDB4MS4wYTg1NTFmOGZjN2Y4cC0yMQotICB9LAotICB7IC8vIEVudHJ5IDU5Ci0gICAgLTB4MS4wMjY4ZDQwMDAwYzcxODAwNWRhMDI0OWViYjBhMzAyNHAxLAotICAgIDB4MS4wZmZmOHAtMwotICB9LAotICB7IC8vIEVudHJ5IDYwCi0gICAgMHgxLjZiNWRmN2UzY2Q0MjE4MDAwMDAwMDAwMDAwNDQ2MTNicDEsCi0gICAgMHgxLjExODY3NjM3Y2JkMDNwNAotICB9LAotICB7IC8vIEVudHJ5IDYxCi0gICAgMHgxLjZiOTZjYjY2ZjU1YzI4MDAxNzJkODFjMWNlZjM1N2IxcDEsCi0gICAgMHgxLjExZmZmZmZmZmZmZjhwNAotICB9LAotICB7IC8vIEVudHJ5IDYyCi0gICAgLTB4MS5mN2EyMTNhN2NkMzgwZmZmZGU0OThjNDUzZjEyNTUzZHAwLAotICAgIDB4MS4xZTZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MwotICAgIC0weDEuYTA3NjU4NTNkZWMwNmZmZWRmNDkwMDJiNWQzMDA4YmVwOCwKLSAgICAweDEuMjA2NjU4ZDliMGYwNXAtNjAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQKLSAgICAweDEuMGQ3YjZmZjZlM2EyNDdmZmZmZmVmYjk0NDlmYWY4ZTZwNiwKLSAgICAweDEuMjUxNDczOGU2ZGNhZHA5NwotICB9LAotICB7IC8vIEVudHJ5IDY1Ci0gICAgMHgxLjFlZTM4OTlmNjgxOGU3ZmZmZmQwOWU2ZWI0ODc5NzI1cDEsCi0gICAgMHgxLjJjZmJiOWU0YTE1OTlwMwotICB9LAotICB7IC8vIEVudHJ5IDY2Ci0gICAgLTB4MS4zMzE1MzMzNjc5Mjg5N2ZkMzhmNGFmN2FiNWMwMDc2OXA2LAotICAgIDB4MS4yZjA2MTcwMzdlNTkwcC0xMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NwotICAgIC0weDEuMDRjMWU2Y2VjOTYzNzdmZWJlMTE4M2UzYmQzNzNjM2VwMywKLSAgICAweDEuMmYyOWZkNGI0MjUxNXAtMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OAotICAgIC0weDEuMDU3OGJjNGExNDNkNjk5ODA2Zjk0NWQxMzU2ZDA2YTJwLTEsCi0gICAgMHgxLjMzM2UxZjAzYWY1NWVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OQotICAgIC0weDEuZmQyYTFkNGRjZjIzZDdmZTc1ZjdlZWY5NDk4ZmRhYTJwLTIsCi0gICAgMHgxLjM3NjdhMGFhZjE0NTJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MAotICAgIC0weDEuZmIwY2UwZWM3OWJjOTdmZTk1MTQxY2UyMjdlZDQ3ZDJwLTIsCi0gICAgMHgxLjM4MGM2NDBlNjI0NmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MQotICAgIC0weDEuZWU2OTNjYWE1MDFhOTNmMzAwNjJlMmEzYzQ0NWFjOWNwLTIsCi0gICAgMHgxLjNiZWM4MzdkNjAxYzFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MgotICAgIC0weDEuZWQ2N2I5YjBmMmY4ZDQyMGFkY2RmNTFmNDMyODE3ZmFwLTIsCi0gICAgMHgxLjNjM2MwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMKLSAgICAweDEuMjUzOTdkYzlmODViZDgwMDAwMGEzZDU1YmQ2ZDhlNTBwMSwKLSAgICAweDEuM2M0MTliOWRiNjYyYXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQKLSAgICAweDEuOWMwNDFmN2VkOGQzMjllMzEyYWFkODQ5M2EzYTc5YTJwMCwKLSAgICAweDEuM2ZmZmZmZmZmZmZmZnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUKLSAgICAweDEuYzhmZjdjNzlhOWEyMWFjMjVkODFlZjJmZmI5YTI0YWVwLTMsCi0gICAgMHgxLjRwMAotICB9LAotICB7IC8vIEVudHJ5IDc2Ci0gICAgMHgxLmQ0MmFkZmVjMzVkMTQ3ZmUwNGZmN2IxYjAyN2M1ZmRhcC0zLAotICAgIDB4MS40MWNwMAotICB9LAotICB7IC8vIEVudHJ5IDc3Ci0gICAgMHgxLmQ3NTc3NDc3YjllYWQ3ZmU5YjJiYzY5NjBhNzY2MzAzcC0zLAotICAgIDB4MS40MjNmYzI0ZDA0ZmM2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OAotICAgIC0weDEuZDM2MGU5MGMzODUwYjM2ZDYxMTAzZjU3NWI5OTE4ODBwLTIsCi0gICAgMHgxLjQ0NnAtMQotICB9LAotICB7IC8vIEVudHJ5IDc5Ci0gICAgLTB4MS5jZGVhYmUwMWE4NmIyZDUwYzhlYTNiYjAzMGM2NmJiY3AtMiwKLSAgICAweDEuNDYxYzE1OWE3NmQ0YnAtMQotICB9LAotICB7IC8vIEVudHJ5IDgwCi0gICAgMHgxLmZiOTE4NmQ1ZTNlMjQ0ZWU0ZTI4NTMxNTYzYjY5YTJjcC0zLAotICAgIDB4MS40N2ZmZmZmZmZmZmZmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MQotICAgIDB4MS5mYjkxODZkNWUzZTJhOGQ1NTQ2NmMzNzk0ZDJjYTA5MnAtMywKLSAgICAweDEuNDgwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MgotICAgIDB4MS5mYjkyMDQ2NGY1ZmM3NzdmM2NiMGQ4NDQ4YzMwZTcwMXAtMywKLSAgICAweDEuNDgwMDE0MWJlYTgzZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODMKLSAgICAweDEuZmI5YzI3OTIwNDVlOWU4MmVmZjQzZWYxY2UwYmVlMDJwLTMsCi0gICAgMHgxLjQ4MDFiM2JmNDJhNGFwMAotICB9LAotICB7IC8vIEVudHJ5IDg0Ci0gICAgMHgxLmZjNDY3MThhMmRjMjJkZGJmYWJiMjU5OGExMzdiYWE3cC0zLAotICAgIDB4MS40ODFjZmFkZThhNjRkcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NQotICAgIDB4MS5mZjliZDc4NTVhYWVhYjgxNWZkODVkMmNiMDY5NDIzMXAtMywKLSAgICAweDEuNDhhNWQwYzdhYzViNXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODYKLSAgICAweDEuZmZkNjVmMjliZmQ0ZWRmOThlYzg0OWM5MDAzMmYzMDJwLTMsCi0gICAgMHgxLjQ4YWYzNTYwODFjYTFwMAotICB9LAotICB7IC8vIEVudHJ5IDg3Ci0gICAgMHgxLmU3MzdjYjIzODY1YzZiOTIxNTUyYWQ4MWQ1NzJiNzI5cC0xLAotICAgIDB4MS40YjhwMQotICB9LAotICB7IC8vIEVudHJ5IDg4Ci0gICAgMHgxLjkwZWQ1MmQxYTIzYzRmZmVkOGVlNzcyNWM1MzAzNWQ2cDgsCi0gICAgMHgxLjU1NmVlNjExZmEzMDlwNTc4Ci0gIH0sCi0gIHsgLy8gRW50cnkgODkKLSAgICAtMHgxLmIyNWI4ZDg2M2IzYjQ4MDBmY2VjNGViNWMxNGE3YzJlcDMsCi0gICAgMHgxLjU1ZXAtMjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MAotICAgIDB4MS4xNjc1OGE5M2QyOWFmN2ZmMTAwYTBjMTA3ZmIwYzllN3A2LAotICAgIDB4MS41OTk2NjU5OTY2NTk4cDEwMAotICB9LAotICB7IC8vIEVudHJ5IDkxCi0gICAgLTB4MS43ZTNhOTNiZjM1NDBkODFlM2RiYmI1NzU4NWVjMTY3NHAtMiwKLSAgICAweDEuNjA4MDU0ZGU3NDU4MnAtMQotICB9LAotICB7IC8vIEVudHJ5IDkyCi0gICAgMHgxLjU4M2E0MTdiZTIyMTZjYjkzNjYxMGNhOTg0MzUxMWRicC0yLAotICAgIDB4MS42NjQ5YmI1MTUzNTRmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MwotICAgIC0weDEuNGY3ZGFjM2YxZDdmM2ZmZmZmZGY1MjFjY2ZjOWRiY2RwNSwKLSAgICAweDEuNjliMTA5Mzc3ZjdwLTYxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQKLSAgICAweDEuNjJlNDJmZWZhMzgzNzM0YTc2OWJiNDEyNTgzMTljMWFwLTIsCi0gICAgMHgxLjZhMDllNjY3ZjNiMzFwMAotICB9LAotICB7IC8vIEVudHJ5IDk1Ci0gICAgLTB4MS5lN2EyZGQwMTZkYWE4N2ZmYTc5NTI4ZTg5YjYxMGMwYXAxLAotICAgIDB4MS42YjBwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NgotICAgIDB4MS43MzlkN2Y2YmJkMDA2OWNlMjRjNTNmYWQzZWY3OTZhYnAtMiwKLSAgICAweDEuN3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTcKLSAgICAtMHgxLjRjM2FmNDc5NzIwNjI4MDAxM2M0ZDQ1YWY2OTZkN2NicC0yLAotICAgIDB4MS43MjIzY2VmNzhlMjVkcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTgKLSAgICAtMHgxLjQ4ZTY1ZmUyYzIzMDU3ZmRlYjI1YzdmN2M0ODU5ZTljcC0yLAotICAgIDB4MS43MzU4N2NlNzUzNjgwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTkKLSAgICAtMHgxLjQwNTdiMDJiZmRkMDk3ZmU1NzM3OTg4ODc0MGQ4MTAzcC0yLAotICAgIDB4MS43Njc2NDA4NzM5NWZjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwCi0gICAgMHgxLjRhNWYxMmVkNDA3YTQwMDA4MzY0NWVmY2M2NThlZGE2cDgsCi0gICAgMHgxLjhhZDkzNGI4MzhiZGFwNDc2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAxCi0gICAgLTB4MS44M2QwZjkwNjkwZDBmN2ZmMjA3YjFmMDA3ZjdhMzkxN3AxLAotICAgIDB4MS44YmVwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIKLSAgICAtMHgxLmUzODc1NDU3MzU5MzE0MDBlZGI0N2VlNDI2NWQ3MjhlcC0xLAotICAgIDB4MS44ZTRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDMKLSAgICAtMHgxLmZjYzU5ZTAxMzY5NzY4MjQzZWNhNTk5ZTU5ZTZhOTA5cC0zLAotICAgIDB4MS44ZjZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQKLSAgICAtMHgxLmVkZDYxNDliMzMxNTY4Mjg3NTBiYjNhNjA4YzRkZGMxcC0zLAotICAgIDB4MS45MjRjNTdkNjI5MDgycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA1Ci0gICAgMHgxLmNmYmU2MTY0YTczZjEzNjE2MDQ5MjZhMGE5MGY1MTlmcC0yLAotICAgIDB4MS45MmE0Y2I3OTg2NjRicDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYKLSAgICAtMHgxLmI0MjgyMTZhNWMxNTg3ZmRiZjJmOTdkNGMyNzE0OGNjcDQsCi0gICAgMHgxLjk4MHAtNDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDcKLSAgICAtMHgxLmQwODFmMGYyNWQ2NjM4MDAyN2Q1OWI2ZWJkYjliYWM5cC0zLAotICAgIDB4MS45ODE5ZDAyNTViZTYwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4Ci0gICAgLTB4MS5jYzBkNmE5MmI3OTE1N2ZlODJiZmFkMGFkZGQwODVhNXAtMSwKLSAgICAweDEuYTBlZjg4M2JlMjE3N3AtMgotICB9LAotICB7IC8vIEVudHJ5IDEwOQotICAgIC0weDEuOGY2MmUyY2I2NTg2MzgwMDAwMzBlYjFhMjg5Zjc4ZTNwLTMsCi0gICAgMHgxLmE1NDkzMzYzMTBlNmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTAKLSAgICAtMHgxLjM2NTFkMGRlMjM2OGQ3ZmVlM2QxZDZlZTJiMjI3NzQ0cC0zLAotICAgIDB4MS5iODAzMDBjMDMwMTE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTExCi0gICAgMHgxLjIwZjI1ZTY4NmU3Zjk3ZmVjZWZmOWE3Mjk5ZmNkMWVkcC0xLAotICAgIDB4MS5jMjIwMjRkYzgyODljcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTIKLSAgICAtMHgxLjllMzI3ZWI2YWMyYzM3ZjdhMzlhZjJjOTg4YWJlMmI2cC0xLAotICAgIDB4MS5jODBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTMKLSAgICAtMHgxLmI3NmYzZDBhYWYwYzk3ZmFkZWZiNGY1MzMyZDM2NWE5cC00LAotICAgIDB4MS5jYmVhMjJjOGE5YTE2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE0Ci0gICAgLTB4MS45MzM1ZTVkNTk0OTkxODFmYTBmMzEyYTk4NTRkMzA0MnAtNCwKLSAgICAweDEuY2ZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDExNQotICAgIDB4MS5iNmNjMmIwNWM5MGE3N2ZlOWEwYmIzMDE5ZDhhOWFlZHAyLAotICAgIDB4MS5kYWUxODk0YTJkYmVkcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTYKLSAgICAtMHgxLmZjNzAyYjhkOTZkMGQ3ZDQ3OTRmZDU2YzliZWMyY2UycC01LAotICAgIDB4MS5lMTMwNGMxMzA0YzEzcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE3Ci0gICAgLTB4MS5mNmM3ZjdkMGIwMzU1N2QxYzI2OTBmYzIxNGIzZWY0M3AtNSwKLSAgICAweDEuZTE4NTY0NmJjNzg1NnAtMQotICB9LAotICB7IC8vIEVudHJ5IDExOAotICAgIC0weDEuZWI4ZGNiNzY0ZTA3ZTdkNGYwZWYzNmM2ZWU4OGVhY2FwLTUsCi0gICAgMHgxLmUyMmU3MzQ5ZjZlOTdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTkKLSAgICAtMHgxLmQ5NGE5YzMyM2U3N2M3ZmQ0M2UyZTEzZjU0MTE0MWNicC01LAotICAgIDB4MS5lMzQxZjA1OTJjMmFicC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwCi0gICAgLTB4MS5jY2IxMDYwODUzOTRmN2EwNWUwM2RmOGFjMjNlYWU1ZHAtNSwKLSAgICAweDEuZTQwMDVkZmQ2NmMzMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDEyMQotICAgIC0weDEuYTliZDhhZmM2ZDg0YjdlYzdiYmM4MGNjNmYyOTgzZjhwLTUsCi0gICAgMHgxLmU2MTIyMjI0MWNhN2ZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjIKLSAgICAtMHgxLjc4NzM5MmE0NTg4OGQ4MDA2YmI1MzhjNzI0YzQ1ZjdlcC01LAotICAgIDB4MS5lOTAxMTMzZTE2MWU0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIzCi0gICAgLTB4MS43OWE2MzRjZGZiMjU1ODAwMDA4NjA3YjBjMmMwMTU3MHA0LAotICAgIDB4MS5lZGRjMDgyMWM3NmMxcC0zNQotICB9LAotICB7IC8vIEVudHJ5IDEyNAotICAgIDB4MS41MTcyMTUzZDVmZTliN2ZmMGYyNmE4N2MwODViODdkN3AtMSwKLSAgICAweDEuZWVkOTIwOGE2YTM0OXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI1Ci0gICAgLTB4MS4xMmIyMjcyNDRmZjk3N2Q4NzhlMTE2NmMyOWY3NmFhNXAtNSwKLSAgICAweDEuZWYxZGJjZWExOTVjZHAtMQotICB9LAotICB7IC8vIEVudHJ5IDEyNgotICAgIC0weDEuZjhhMzRkMjUwNWY4MTdkODQ4ZjRlODk1OTcxM2ZiNzZwLTYsCi0gICAgMHgxLmYwNzg2ZmE0OGJkOWNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjcKLSAgICAweDEuMDY4ODVkMDNjMTljMzgwMDAwMDJmOTkyMDVhNjBiNTRwMSwKLSAgICAweDEuZjFhOTQ1YTQ1N2Q5NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI4Ci0gICAgMHgxLmEyOGNjY2I5YzZmMGQ3ZmVkZDg5ZTljNGQ0YjlmNjhicDYsCi0gICAgMHgxLmYxZmZmZmZmZmZmZmZwMTUwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI5Ci0gICAgLTB4MS5iMDMyZGEwOTU2NzFlN2M4ZDQyN2ViNDIyOTI3NjRkMnAtNiwKLSAgICAweDEuZjJhYjlkZWU4NDFiNXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzMAotICAgIC0weDEuOWQ2NmFkYTY5MDU2NDg1MzI2MTk0ZTNmMWM3YjE3MGNwLTYsCi0gICAgMHgxLmYzM2UyYTk0NGFjOTZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzEKLSAgICAtMHgxLjg4ZTdhNmJmMWI1Yjk3ZmRiZjRkZDVlMDU0NjdjMjVkcC02LAotICAgIDB4MS5mM2RlMjY4Mzk0ZThkcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMyCi0gICAgLTB4MS44NGUzNjJhZDIxNzAxN2ZlN2VlNmM1ZTk1ODBhYTFkZHAtNiwKLSAgICAweDEuZjNmZDg2YjM5Mjg4NHAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzMwotICAgIC0weDEuNzQ0ZWZmNmQ3N2RkZTdkMmExNzk2NjllMjI1Njk5ZTNwLTYsCi0gICAgMHgxLmY0N2YxZTFmNTNmMjRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzQKLSAgICAtMHgxLjY4YjRmODY0OTdhMGE3ZmUyNGM1ZmJhNzhiZjE3YTg4cDAsCi0gICAgMHgxLmY0OHAtMwotICB9LAotICB7IC8vIEVudHJ5IDEzNQotICAgIC0weDEuNmY1MWU2OGZjZDdjZDdmYTFlNmFjZDlmNGI5NzkzNDFwLTYsCi0gICAgMHgxLmY0YTYyMmRmNzYwYzlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzYKLSAgICAtMHgxLjZiYWI0ZjkzYTM3MjA3ZDIzNzY1OTNlMTJlODkwZDgwcC02LAotICAgIDB4MS5mNGMyYjJhNWE1YzFkcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM3Ci0gICAgLTB4MS42NWFlNGRlZWRhN2I3N2ZlOWM1ZGFjMmMwYzBkZWRmNHAtNiwKLSAgICAweDEuZjRmMThmYWI1YzNiOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzOAotICAgIC0weDEuNGMyYTY0Y2IyMjQ0MWZlNzRlMmY4Njg5MzRlOWU0OTFwLTYsCi0gICAgMHgxLmY1Yjk2ZTViOTZlYjdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzkKLSAgICAtMHgxLjQzYWU2YzQ0YjlmNzY3ZjM0ZWJmOGEyY2MzNzQ0Yzk0cC02LAotICAgIDB4MS5mNWZiZjVjZWRjNDgwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQwCi0gICAgLTB4MS40MWY3ODEyMzEwYzliMDAxNWNhMzk3OGNhZWEyYWY0OXAtNiwKLSAgICAweDEuZjYwOTY4YTU5NTJkOXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE0MQotICAgIC0weDEuM2IwY2IwYjE0NjlkYjgwMGIyMGFhMTE2OTg4Y2I2ZjJwLTYsCi0gICAgMHgxLmY2M2ZhZTZiYWUzMjFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDIKLSAgICAtMHgxLjMxMWU2NzU3NWI0ZjUwMDY5OTRkZjMxNThjNzMxNmNjcC02LAotICAgIDB4MS5mNjhkYTM2OGRhMzY4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQzCi0gICAgLTB4MS4wMjBkYTcwM2YyZjlkN2Q4OGMyMzYxZjkzMTJjODM4MnAtNiwKLSAgICAweDEuZjdmZmJlZmM1ZDlkOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE0NAotICAgIC0weDEuMDIwNTY1ODkzNWI5NDdlYzU4NzQ1MzA0NjgxNDVhZTdwLTYsCi0gICAgMHgxLmY3ZmZmZmZmZmZmZTZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDUKLSAgICAtMHgxLmFlODI1ZmUyZWI2NzA3Zjk2YTZlNGMxZGQ1MzVmOWNjcC03LAotICAgIDB4MS5mOTUxMzljNTYxMTM5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ2Ci0gICAgLTB4MS4yMzg1MWM4MGRkZGYyN2ZiODQ3Y2RkMjM3ZGIzMmU4NnAtNywKLSAgICAweDEuZmI3NzE3N2ZiNWQzNXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE0NwotICAgIC0weDEuN2M0OThlYjg3ZWQ2ODdmNWFiNmQwMGUzOTk0NmQzYmZwLTgsCi0gICAgMHgxLmZkMDlhMGI1YjE3ZjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDgKLSAgICAtMHgxLjUwZGQ0MWFlYjQ4NjU3MDBjNjhmNWRmNGE4NDM4ZTBkcC04LAotICAgIDB4MS5mZDZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDkKLSAgICAtMHgxLjA4YjhiYmE1ZGIzYTg1YjRlMjUyZWQxMDAzZTM0ODFmcC04LAotICAgIDB4MS5mZGVmOWZlN2Y5ZmUzcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUwCi0gICAgLTB4MS4wN2M5ODlhZGQ5ZjU4NWU2NWM3OGZlOTEyYzFhOGNwLTgsCi0gICAgMHgxLmZkZjE3YzVmMTdjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUxCi0gICAgLTB4MS4wMDgwNTU5NThlMTBiNTQyZjY0MGE5NGVkNDVmOWJjMHAtOCwKLSAgICAweDEuZmRmZmZmZmZmZmY1NXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE1MgotICAgIC0weDEuMWYzZTQ3MTc4Zjk3Yzc1MzM0YTYyYTJmN2FhNjZiYzVwLTksCi0gICAgMHgxLmZlZTExMjNkMDVjMWJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTMKLSAgICAtMHgxLmZmN2ZhYTlhYjEzNjc3OGE3NDNiYWE0ZjUyODAzYzRlcC0xMCwKLSAgICAweDEuZmYwMDdmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE1NAotICAgIC0weDEuZmYzOWVjYmUyNjc1OTc3OGY4YmJmNjdmMWU0YTdlMGFwLTEwLAotICAgIDB4MS5mZjAwYTJjZDg4YjU1cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU1Ci0gICAgLTB4MS42MzYzNDc3Njk4ZDI1N2ZjMTc1MjJiNTBmZjU1NTUzY3AwLAotICAgIDB4MS5mZjAyMGZmZmZmZmZmcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU2Ci0gICAgLTB4MS5mN2EyNDhiZjIyZmE5N2ZhY2FkYjk0NjYzMGUzOTY3Y3AtMTAsCi0gICAgMHgxLmZmMDQ2Y2JlNmNiZGRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTcKLSAgICAtMHgxLmRhZTYwZmVlOWZhOWY3ZTM0MWZlOTA1OWNjZjYwOTc0cC0xMCwKLSAgICAweDEuZmYxMmMzZmYxMmMzMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE1OAotICAgIC0weDEuZDIwOGJjODU4Nzc3Njc5MWMzOGE3NmE2NzVjMWVhNDVwLTEwLAotICAgIDB4MS5mZjE3MzA5ZmVmY2QycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU5Ci0gICAgLTB4MS5iYWJmZjI2M2VhYmY4N2FjMjE2ZWFkNjU1NzRhY2YwMXAtMTIsCi0gICAgMHgxLmZmYzhhYWZmNTM0ZDRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjAKLSAgICAtMHgxLmMwMGM0MDcyNWIwNjE3ZGUxN2Q3Yjc0ZTQ5MDkxZDc0cC0xMywKLSAgICAweDEuZmZlM2ZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE2MQotICAgIC0weDEuNzhiZmE1MDA0MTUzMTczZjJmNTIyNmNkMjM5NDg1MThwLTEzLAotICAgIDB4MS5mZmU4NzQ5MDRhYmQwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTYyCi0gICAgLTB4MS4xMTQ4ZGZmOTU3ZTdjNzQ1NjQyMjllOWNiOWM0YjgzY3AtMTMsCi0gICAgMHgxLmZmZWVlYmJhZWViYjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjMKLSAgICAtMHgxLjRhYTE5NmFhZTFlZjk3ZmYxNzMwODk3Nzk5ZWU0ZjAycDgsCi0gICAgMHgxLmZmZmZmYmJmZmZmZmZwLTQ3OAotICB9LAotICB7IC8vIEVudHJ5IDE2NAotICAgIDB4MS44ZThmNDNkMzgwNDBmZmZlZGE3MzJjOGQxNjRjMWViNXA4LAotICAgIDB4MS5mZmZmZmJiZmZmZmZmcDU3NAotICB9LAotICB7IC8vIEVudHJ5IDE2NQotICAgIC0weDEuMDAwMDA0MDEwMDAwMDgwMTU1NjU2NTU3NTU5NTc1NThwLTMxLAotICAgIDB4MS5mZmZmZmZmYmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY2Ci0gICAgLTB4MS5mZjgwNDAwMDdmYzAyN2Y4MmM4YWMyYTIxMmVmOGUwZXAtMzQsCi0gICAgMHgxLmZmZmZmZmZmMDAzZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjcKLSAgICAweDEuODZlZjVjY2RmYTFiMTdmZTc4Yzg4NmE5ZDhiMmZhYWVwNywKLSAgICAweDEuZmZmZmZmZmZkZGZmZnAyODEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjgKLSAgICAtMHgxLjAwMDgwMDAwMDA4MDA4MDAyMDAwNTU1ZDU1OTU1NjQwcC00MCwKLSAgICAweDEuZmZmZmZmZmZmZGZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE2OQotICAgIC0weDEuMDAyMDAwMDAwMDIwMDgwMDgwMDAwNTU3NTU5NTU4MDFwLTQyLAotICAgIDB4MS5mZmZmZmZmZmZmN2ZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTcwCi0gICAgLTB4MS4wMDQwMDAwMDAwMTAwODAxMDAwMDAxNTY1NTk1NWFhYXAtNDMsCi0gICAgMHgxLmZmZmZmZmZmZmZiZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzEKLSAgICAweDEuMzBmYzE5MzFmMDljOTdmZjQyZmY1Y2FkNDY3ODk3ZmRwNywKLSAgICAweDEuZmZmZmZmZmZmZmZlZXAyMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzIKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAxNTU1NTU1cC01MSwKLSAgICAweDEuZmZmZmZmZmZmZmZmY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDE3MwotICAgIC0weDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA1NTU1NTVwLTUyLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc0Ci0gICAgLTB4MS4wM2ZlNTVhMDYxYzc1N2ZlZDZhMWRhMzE3ZGE1MGIxYXAtMSwKLSAgICAweDEuMzQyMTg1Nzk4ZjZkNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE3NQotICAgIC0weDEuNjJlNDJmZWZhMzlmMGNlNGUwZDUwNzg1Nzg4OTI3MjFwLTIsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzYKLSAgICAtMHgxLmRhMzkxYzkwNDNhMGYxNmFiZTA1NmUzODRiZjA3ZjI5cC0zLAotICAgIDB4MS45NjJiNWY5NDM4ZDI1cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc3Ci0gICAgLTB4MS4wNmZiZWM1MjA4MmJkMjUzZTIwMjEwYjU4ODY4ZTUyMXAtMywKLSAgICAweDEuYzI0Y2Q4YzA3ZGU3ZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE3OAotICAgIC0weDEuMWUwYThmNjcwYzUwYWQxNzJiMjYwOGU0YTc4YjVlNjBwLTUsCi0gICAgMHgxLmVlNmU1MWVjYzJmZDdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzkKLSAgICAweDEuOWU1NDhlN2UzZGRlN2IwZjM0Mzg1ZjA3NWU4NTAxMDZwLTUsCi0gICAgMHgxLjBkNDdlNThjODQwOThwMAotICB9LAotICB7IC8vIEVudHJ5IDE4MAotICAgIDB4MS4wOGUwYmFlNzNhYzIzOGQ1ZDBkMWZkOWEwNDU3OTYzMHAtMywKLSAgICAweDEuMjM1OGEyMjJhNjk0NHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTgxCi0gICAgMHgxLjllNjQ2MjE4N2MzNmE4ZGRlZWQ4OTljNGUzNTk2ODk2cC0zLAotICAgIDB4MS4zOTY5NWViOGM5MWYwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODIKLSAgICAweDEuMTRkZDZiMGFmOTM5YWM5ZmQxY2Y4ZDhhM2E2MzBhMDdwLTIsCi0gICAgMHgxLjRmN2ExYjRlZWJhOWNwMAotICB9LAotICB7IC8vIEVudHJ5IDE4MwotICAgIDB4MS41NjE4MWYxOWQ3MTk4MDM1Y2Y3YzVkZjAyZDE2NjAyNnAtMiwKLSAgICAweDEuNjU4YWQ3ZTUwZTM0OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg0Ci0gICAgMHgxLjkzNmE4MmZhZGNkODVhNzY4YTE2NTVhODA3YTVjNWZkcC0yLAotICAgIDB4MS43YjliOTQ3YjMwYmY0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODUKLSAgICAweDEuY2Q0NWIwYTlmMjUwMjFlNGM2YWI4NzZlNTQxZGVmYzlwLTIsCi0gICAgMHgxLjkxYWM1MTExNTM0YTBwMAotICB9LAotICB7IC8vIEVudHJ5IDE4NgotICAgIDB4MS4wMjA0NGM5YjcwNjI3MzUwZjVjNjEzYmEzZWZmN2YxNHAtMSwKLSAgICAweDEuYTdiZDBkYTc3NWQ0Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg3Ci0gICAgMHgxLjFjMDFkYWQ1OWU3MmZhMDQ3YjYxYWMyNmM1MWY0YzE3cC0xLAotICAgIDB4MS5iZGNkY2EzZDk4NWY4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODgKLSAgICAweDEuMzRiZGU5YjgyMWZlMzExMzZlNjc0NTNkZmVjZjllMzRwLTEsCi0gICAgMHgxLmQzZGU4NmQzYmFlYTRwMAotICB9LAotICB7IC8vIEVudHJ5IDE4OQotICAgIDB4MS40YzU2MWRiYmIyMWQ5YThmYWFiNDRmNjc3N2Y5MjlmN3AtMSwKLSAgICAweDEuZTllZjQzNjlkZDc1MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkwCi0gICAgMHgxLjYyZTQyZmVmYTM5ZWIzNTc5M2M3NjczMDAzZTVlZDVlcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTEKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZjBjZTRlMGQ1MDc4NTc4ODkyNzIxcC0yLAotICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkyCi0gICAgLTB4MS4yNGNmY2U2ZjgwZDliNTdiZjcxMWU4YzdiYTIxZGVmOXAtMiwKLSAgICAweDEuODBhYTg0Y2U3MmY4OXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE5MwotICAgIC0weDEuZDQ5MDI0NmRlZmE2YzI0MDcwNDIxMTU3YzhiZGJhYzRwLTMsCi0gICAgMHgxLjk3NGIyMzM0ZjIzNDZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTQKLSAgICAtMHgxLjY1ZDU1OGQ0Y2UwMGE0MTg4NzkzZjc0NTJhNDFjOWQzcC0zLAotICAgIDB4MS5hZGViYzE5YjcxNzAzcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk1Ci0gICAgLTB4MS5mOTkxYzZjYjNiMzc2ZDNlMDVjMDQ0OWQ5OTc4YjliYnAtNCwKLSAgICAweDEuYzQ4YzYwMDFmMGFjMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE5NgotICAgIC0weDEuMzFiOTk0ZDNhNGY4MDY0NjE0NmEzNTYxZTE2NjgyMTNwLTQsCi0gICAgMHgxLmRiMmNmZTY4NmZlN2RwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTcKLSAgICAtMHgxLmNjYjczY2RkZGIyYjNiNWI4NDFlYjE1MGEzZDVlMzRkcC02LAotICAgIDB4MS5mMWNkOWNjZWVmMjNhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk4Ci0gICAgMHgxLjBiOTRmN2MxOTYxNzQ4NWJjYjQzNzViMGI4MmVkN2FhcC02LAotICAgIDB4MS4wNDM3MWQ5YWI3MmZicDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTkKLSAgICAweDEuZTI3MDc2ZTJhZjJkOTIzNDQwMTJmYjc0NjRjNzg3YzZwLTUsCi0gICAgMHgxLjBmODc2Y2NkZjZjZDlwMAotICB9LAotICB7IC8vIEVudHJ5IDIwMAotICAgIDB4MS45ODZkMzIyODE4MGJlMDkyNGFjM2ExOWI3Mjg3MGU3OXAtNCwKLSAgICAweDEuMWFkN2JjMDEzNjZiN3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAxCi0gICAgMHgxLjFjODk4YzE2OTk5ZjI5MTVhZDUxYTAwNWI2OGRkY2M0cC0zLAotICAgIDB4MS4yNjI4MGIzNDc2MDk1cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDIKLSAgICAweDEuNjlkNDU5MmEwMzYyMWIyZTZjY2NjMjAzNmYzOTMxZmZwLTMsCi0gICAgMHgxLjMxNzg1YTY3YjVhNzNwMAotICB9LAotICB7IC8vIEVudHJ5IDIwMwotICAgIDB4MS5iNDRmNzdiY2M4ZjU1YTg4ODQ0OWJjNTNlOWQ5YmYzZXAtMywKLSAgICAweDEuM2NjOGE5OWFmNTQ1MXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA0Ci0gICAgMHgxLmZjMmQ2Y2Y0N2NmMGIyZTBiODhmNDg4MzI0MDI0MDhjcC0zLAotICAgIDB4MS40ODE4ZjhjZTM0ZTJmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDUKLSAgICAweDEuMjBjZGNkMTkyYWI2NTMwYjI0ZDc1YWI0NDU5ZTNiYzNwLTIsCi0gICAgMHgxLjUzNjk0ODAxNzQ4MGRwMAotICB9LAotICB7IC8vIEVudHJ5IDIwNgotICAgIDB4MS40MjYxNzRkYmQ1MTVkNjQ5ZDY5OTg0ODE2ZTY4OTQwZHAtMiwKLSAgICAweDEuNWViOTk3MzRiNDFlYnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA3Ci0gICAgMHgxLjYyZTQyZmVmYTM5ZTUyMDY5MDUyY2I3M2JmN2MyZDVmcC0yLAotICAgIDB4MS42YTA5ZTY2N2YzYmM5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDgKLSAgICAtMHgxLjI2OTYyMTEzNGRiOTI3ODNiZWI3Njc2YzBhYTljMmEzcC0yLAotICAgIDB4MS44cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA5Ci0gICAgLTB4MS44OWZhNDY1Y2I5M2MzOTMwMmQ3YTQzYmY4YTgzNDVjOHAtMywKLSAgICAweDEuYTY2NjY2NjY2NjY2NnAtMQotICB9LAotICB7IC8vIEVudHJ5IDIxMAotICAgIC0weDEuYWY4ZTgyMTBhNDE2NDhhZDJlZjVhNzVjODBhZTliMDJwLTQsCi0gICAgMHgxLmNjY2NjY2NjY2NjY2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTEKLSAgICAtMHgxLjllY2U5NTUzMjFiOTExMTliNjRiMDQ4NjEzZGJjMDdkcC02LAotICAgIDB4MS5mMzMzMzMzMzMzMzMycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEyCi0gICAgMHgxLjhmYjA2M2VmMmM3ZDEwYWM4YzVjZTM2MWYzYTU5YTczcC01LAotICAgIDB4MS4wY2NjY2NjY2NjY2NjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTMKLSAgICAweDEuZTI3MDc2ZTJhZjJkN2IxMDZmOWM2ZmU3MDAwMGYwYjhwLTQsCi0gICAgMHgxLjFmZmZmZmZmZmZmZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDIxNAotICAgIDB4MS43NTY1MDExZTQ5NjZlMzk0NzQyY2RlYjgwYWFhMGI4NXAtMywKLSAgICAweDEuMzMzMzMzMzMzMzMzMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE1Ci0gICAgMHgxLmYxOGRjNDFlOGVmMTcwOGRkYWM2MTdlNzJhMTZhMzUxcC0zLAotICAgIDB4MS40NjY2NjY2NjY2NjY1cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTYKLSAgICAweDEuMzM0ZTllNDdkMDdlZmQ5N2QxM2ZlYTI2NWRjZWMyZDFwLTIsCi0gICAgMHgxLjU5OTk5OTk5OTk5OThwMAotICB9LAotICB7IC8vIEVudHJ5IDIxNwotICAgIDB4MS42YWFjMDQxNDYxNTFmZjM2NDRmMGRhODc5M2ZlOTExZnAtMiwKLSAgICAweDEuNmNjY2NjY2NjY2NjYnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE4Ci0gICAgMHgxLjlmMzIzZWNiZjk4NDY5ZDYxMzgyMTE5ZWFjM2U4OWUxcC0yLAotICAgIDB4MS43ZmZmZmZmZmZmZmZlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTkKLSAgICAwLjAsCi0gICAgMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDIyMAotICAgIDB4MS44NjYzZjc5M2M0NmNjNmQ1Njk5YjgyY2MzYmQzYmUzOHAtNCwKLSAgICAweDEuMTk5OTk5OTk5OTk5YXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjIxCi0gICAgMHgxLjc1NjUwMTFlNDk2N2I4ZTljOTgyMzQwZDYyMzg0NDY5cC0zLAotICAgIDB4MS4zMzMzMzMzMzMzMzM0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjIKLSAgICAweDEuMGNhOTM3YmUxYjlkZjhlODRhYjUyZDRiMGFlZmQwMTJwLTIsCi0gICAgMHgxLjRjY2NjY2NjY2NjY2VwMAotICB9LAotICB7IC8vIEVudHJ5IDIyMwotICAgIDB4MS41ODhjMmQ5MTMzNDk0MzgwZWViY2ViNzZjMTkyOGY3Y3AtMiwKLSAgICAweDEuNjY2NjY2NjY2NjY2OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjI0Ci0gICAgMHgxLjlmMzIzZWNiZjk4NTE0ODBiZTJjYmM0OTU2ZTkzNDhicC0yLAotICAgIDB4MS44MDAwMDAwMDAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjUKLSAgICAweDEuZTE0OGExYTI3MjZkMzk0ZGY4Y2RkNmM4MGQ3ZWM4NjVwLTIsCi0gICAgMHgxLjk5OTk5OTk5OTk5OWNwMAotICB9LAotICB7IC8vIEVudHJ5IDIyNgotICAgIDB4MS4wZmFlODE5MTRhOTk0N2JkMmRlNTExODdhNjMwOGZkYnAtMSwKLSAgICAweDEuYjMzMzMzMzMzMzMzNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjI3Ci0gICAgMHgxLjJjZjI1ZmFkOGYxYzcxNWU1ZmFmY2ViNjNiZjYwNzA3cC0xLAotICAgIDB4MS5jY2NjY2NjY2NjY2QwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjgKLSAgICAweDEuNDhhMTEyOTNkNzg1Zjg2YTdiMTc3ZjRhYTRlOWNhZGJwLTEsCi0gICAgMHgxLmU2NjY2NjY2NjY2NmFwMAotICB9LAotICB7IC8vIEVudHJ5IDIyOQotICAgIDB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAtMSwKLSAgICAweDEuMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjMwCi0gICAgMHgxLjE1NDI0NTczMzdkNDJlMWM2YjczYzg5ZDg2MmJhMTcxcDYsCi0gICAgMHgxLjBwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjMxCi0gICAgMHgxLjE1YTNkZTcxMWNjNTQ5NGUyMGNlMmY3ZTM5M2E5NjYxcDYsCi0gICAgMHgxLjE5OTk5OTk5OTk5OWFwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjMyCi0gICAgMHgxLjE1ZmNmN2YzYzZmOGUxZjhlMDU4ODliNzhjZGNiZDk0cDYsCi0gICAgMHgxLjMzMzMzMzMzMzMzMzRwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjMzCi0gICAgMHgxLjE2NGVlZWFhZjVlZmNjMTU1M2JlN2RjYWQxMzY5MTQxcDYsCi0gICAgMHgxLjRjY2NjY2NjY2NjY2VwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM0Ci0gICAgMHgxLjE2OWFkMWEwYzkwNzc3NWZlYzYyODU4OGZjZWQzNDAxcDYsCi0gICAgMHgxLjY2NjY2NjY2NjY2NjhwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM1Ci0gICAgMHgxLjE2ZTE3N2IyMDNjZGIzMzBlYzMxZjU1OWNmODI4YWE2cDYsCi0gICAgMHgxLjgwMDAwMDAwMDAwMDJwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM2Ci0gICAgMHgxLjE3MjM4ZTE0ZGE0NjliNTViOTZjOTY3NDRlMzkyMDNhcDYsCi0gICAgMHgxLjk5OTk5OTk5OTk5OWNwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM3Ci0gICAgMHgxLjE3NjFhMjc2NWE2OTYwYWJlNWNmOTJjMDk1NzgwMjkxcDYsCi0gICAgMHgxLmIzMzMzMzMzMzMzMzZwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM4Ci0gICAgMHgxLjE3OWMyYTMyOTJmMjY2ZmYyODMzMjgzYWYyYTM4ZDdmcDYsCi0gICAgMHgxLmNjY2NjY2NjY2NjZDBwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM5Ci0gICAgMHgxLjE3ZDM4Nzk4NWY4MzNhMGQ0MDY5Zjc5YzFiNzU3NTA3cDYsCi0gICAgMHgxLmU2NjY2NjY2NjY2NmFwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQwCi0gICAgMHgxLjE4MDgwZGQzMTcxYjZjMDMxYTliNTc2YmU2M2I2ZDRjcDYsCi0gICAgMHgxLjBwMTAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQxCi0gICAgMHgxLjE1NDI0NTczMzdkNDJlMWM2YjczYzg5ZDg2MmJhMTcxcDcsCi0gICAgMHgxLjBwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQyCi0gICAgMHgxLjE1NzMxMWYyMmE0Y2JiYjU0NjIwZmMwZGRmYjMxYmU5cDcsCi0gICAgMHgxLjE5OTk5OTk5OTk5OWFwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQzCi0gICAgMHgxLjE1OWY5ZWIzN2Y2Njg4MGFhNWU2MjkyYTg5ODQyZjgycDcsCi0gICAgMHgxLjMzMzMzMzMzMzMzMzRwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ0Ci0gICAgMHgxLjE1Yzg5YTBmMTZlMWZkMThkZjk5MjMzNDJiYjExOTU5cDcsCi0gICAgMHgxLjRjY2NjY2NjY2NjY2VwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ1Ci0gICAgMHgxLjE1ZWU4YjhhMDA2ZGQyYmUyYmViMjcxMzQxOGM2YWI5cDcsCi0gICAgMHgxLjY2NjY2NjY2NjY2NjhwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ2Ci0gICAgMHgxLjE2MTFkZTkyOWRkMGYwYTZhYmQyZGVmYmFhZDcxNjBjcDcsCi0gICAgMHgxLjgwMDAwMDAwMDAwMDJwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ3Ci0gICAgMHgxLjE2MzJlOWM0MDkwZDY0YjkxMjcwMmY4OGVhMzI2MGQ2cDcsCi0gICAgMHgxLjk5OTk5OTk5OTk5OWNwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ4Ci0gICAgMHgxLjE2NTFmM2Y0YzkxZWM3NjQyOGExYWRhZjBkZDFkMjAxcDcsCi0gICAgMHgxLmIzMzMzMzMzMzMzMzZwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ5Ci0gICAgMHgxLjE2NmYzN2QyZTU2MzRhOGRjOWQzNzg2YzNjNjc5Nzc4cDcsCi0gICAgMHgxLmNjY2NjY2NjY2NjZDBwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUwCi0gICAgMHgxLjE2OGFlNjg1Y2JhYmI0MTRkNWVlZTAxY2QwZDA4YjNjcDcsCi0gICAgMHgxLmU2NjY2NjY2NjY2NmFwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUxCi0gICAgMHgxLjE2YTUyOWEzMjc3N2NkMGZjMzA3OTAwNGI2MzM4NzVmcDcsCi0gICAgMHgxLjBwMjAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUyCi0gICAgMHgxLjVhOTJkNmQwMDVjOTM5YTM4NjUwYmFjNGU3YjY4OWNlcDksCi0gICAgMHgxLjBwMTAwMAotICB9LAotICB7IC8vIEVudHJ5IDI1MwotICAgIC0weDEuMDAwMDA4MDAwMDU1NTU1OTU1NTU4ODg4OGIzMzMzNTdwLTIwLAotICAgIDB4MS5mZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDI1NAotICAgIC0weDEuMDAwMDA0MDAwMDE1NTU1NWQ1NTU1ODg4ODg5ZGRkZGVwLTIxLAotICAgIDB4MS5mZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDI1NQotICAgIDAuMCwKLSAgICAweDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU2Ci0gICAgMHgxLmZmZmZmODAwMDAyYWFhYTlhYWFhYjExMTEwZTY2NjY3cC0yMiwKLSAgICAweDEuMDAwMDA4MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU3Ci0gICAgMHgxLmZmZmZmMDAwMDBhYWFhYTJhYWFiMTExMTBiYmJiYzA0cC0yMSwKLSAgICAweDEuMDAwMDFwMAotICB9LAotICB7IC8vIEVudHJ5IDI1OAotICAgIC0weDEuMDAwMDAwMDIwMDAwMDAwNTU1NTU1NTY1NTU1NTU1ODhwLTMwLAotICAgIDB4MS5mZmZmZmZmODBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTkKLSAgICAtMHgxLjAwMDAwMDAxMDAwMDAwMDE1NTU1NTU1NzU1NTU1NTU4cC0zMSwKLSAgICAweDEuZmZmZmZmZmMwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYwCi0gICAgMC4wLAotICAgIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjEKLSAgICAweDEuZmZmZmZmZmUwMDAwMDAwMmFhYWFhYWE2YWFhYWFhYjFwLTMyLAotICAgIDB4MS4wMDAwMDAwMjBwMAotICB9LAotICB7IC8vIEVudHJ5IDI2MgotICAgIDB4MS5mZmZmZmZmYzAwMDAwMDBhYWFhYWFhOGFhYWFhYWIxMXAtMzEsCi0gICAgMHgxLjAwMDAwMDA0MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYzCi0gICAgLTB4MS4wMDAwMDAwMDAwODAwMDAwMDAwMDU1NTU1NTU1NTU5NXAtNDAsCi0gICAgMHgxLmZmZmZmZmZmZmUwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY0Ci0gICAgLTB4MS4wMDAwMDAwMDAwNDAwMDAwMDAwMDE1NTU1NTU1NTU1ZHAtNDEsCi0gICAgMHgxLmZmZmZmZmZmZmYwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY1Ci0gICAgMC4wLAotICAgIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjYKLSAgICAweDEuZmZmZmZmZmZmZjgwMDAwMDAwMDAyYWFhYWFhYWFhOWFwLTQyLAotICAgIDB4MS4wMDAwMDAwMDAwOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY3Ci0gICAgMHgxLmZmZmZmZmZmZmYwMDAwMDAwMDAwYWFhYWFhYWFhYTJhcC00MSwKLSAgICAweDEuMDAwMDAwMDAwMTBwMAotICB9LAotICB7IC8vIEVudHJ5IDI2OAotICAgIC0weDEuMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDU1NTU1NTVwLTUwLAotICAgIDB4MS5mZmZmZmZmZmZmZmY4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY5Ci0gICAgLTB4MS4wMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMTU1NTU1NXAtNTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzAKLSAgICAwLjAsCi0gICAgMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDI3MQotICAgIDB4MS5mZmZmZmZmZmZmZmZlMDAwMDAwMDAwMDAwMmFhYWFhYXAtNTIsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDI3MgotICAgIDB4MS5mZmZmZmZmZmZmZmZjMDAwMDAwMDAwMDAwYWFhYWFhYXAtNTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDRwMAotICB9LAotICB7IC8vIEVudHJ5IDI3MwotICAgIDB4MS42MmU0MmZlZmEzOWVmMzUzOTNjNzY3MzAwN2U1ZGQ1ZXA5LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzQKLSAgICAtMHgxLjc0Mzg1NDQ2ZDcxYzM2Mzk1YTdlYTNiOWUwNDhhNzc1cDksCi0gICAgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzUKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZjNhMjYxZGEyMDVmZDEzY2I1M2RmcC0yLAotICAgIDB4MS42YTA5ZTY2N2YzYmNicC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc2Ci0gICAgLTB4MS42MmU0MmZlZmEzOWYwY2U0ZTBkNTA3ODU3ODg5MjcyMXAtMiwKLSAgICAweDEuNmEwOWU2NjdmM2JjY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDI3NwotICAgIC0weDEuNjJlNDJmZWZhMzllZGZhM2E0MDgwOTBkZGY0NmZhNjJwLTIsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2RwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzgKLSAgICAweDEuNjJlNDJmZWZhMzllYWM4OTA5ZWNjODYyZmMwMDg2ZGRwLTIsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2JwMAotICB9LAotICB7IC8vIEVudHJ5IDI3OQotICAgIDB4MS42MmU0MmZlZmEzOWVkOWNhNDZiOWM2ZGE5NzQyYjM5YnAtMiwKLSAgICAweDEuNmEwOWU2NjdmM2JjY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgwCi0gICAgMHgxLjYyZTQyZmVmYTM5ZjA3MGI4Mzg2YzU1MjMwODRlMDVhcC0yLAotICAgIDB4MS42YTA5ZTY2N2YzYmNkcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODEKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZjAzNTc5M2M3NjczMDA4MjVlZDVlcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgyCi0gICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAtMSwKLSAgICAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDI4MwotICAgIC0weDEuNjJlNDJmZWZhMzllZDM1NzkzYzc2NzMwMDhlNWVkNWVwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODQKLSAgICAtMHgxLjI2OTYyMTEzNGRiOTUyMmU2OTYyMTIxNmI2MzdmYjg2cC0yLAotICAgIDB4MS43ZmZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg1Ci0gICAgLTB4MS4yNjk2MjExMzRkYjkyNzgzYmViNzY3NmMwYWE5YzJhM3AtMiwKLSAgICAweDEuOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDI4NgotICAgIC0weDEuMjY5NjIxMTM0ZGI4ZmNkOTE0MGNiY2MxNjBlMmE2MzFwLTIsCi0gICAgMHgxLjgwMDAwMDAwMDAwMDFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODcKLSAgICAweDEuOWYzMjNlY2JmOTg0OTQ4MGJlMmNiYzQ5NTk5M2RmMzZwLTIsCi0gICAgMHgxLjdmZmZmZmZmZmZmZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDI4OAotICAgIDB4MS45ZjMyM2VjYmY5ODRiZjJiNjhkNzY2ZjQwNTIyMTgxOXAtMiwKLSAgICAweDEuOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg5Ci0gICAgMHgxLjlmMzIzZWNiZjk4NGU5ZDYxMzgyMTE5ZWFlZTkzNDhicC0yLAotICAgIDB4MS44MDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTAKLSAgICAweDEuNTRlM2MwYjEwYTM2NDM0YWJhYzI3NzE2MDMxMWNjYjRwLTksCi0gICAgMHgxLjAwYWFhYWFhYWFhYWFwMAotICB9LAotICB7IC8vIEVudHJ5IDI5MQotICAgIDB4MS41NGUzYzBiMTBhNTYyZTAzOTRkYmJiOTM1OWY0NzdkZHAtOSwKLSAgICAweDEuMDBhYWFhYWFhYWFhYnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkyCi0gICAgMHgxLjU0ZTNjMGIxMGE3NjE4YmM2ZWY1MDAwZWIzN2YyNTYzcC05LAotICAgIDB4MS4wMGFhYWFhYWFhYWFjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTMKLSAgICAweDEuNjJlNDJmZWZhMzllZWI1NzkzYzc2NzMwMDdjNWVkNWVwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk0Ci0gICAgMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDAsCi0gICAgMHgxLjBwMgotICB9LAotICB7IC8vIEVudHJ5IDI5NQotICAgIDB4MS42MmU0MmZlZmEzOWYwMzU3OTNjNzY3MzAwNzY1ZWQ1ZXAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTYKLSAgICAweDEuNjJlNDJmZWZhMzllZTM1NzkzYzc2NzMwMDdhNWVkNWVwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDI5NwotICAgIDB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAtMSwKLSAgICAweDEuMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk4Ci0gICAgMHgxLjYyZTQyZmVmYTM5ZjEzNTc5M2M3NjczMDA2ZTVlZDVlcC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTkKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDA0MDAwMDAwMDAwMDAwMTU1NTU1cC01MywKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDMwMAotICAgIDAuMCwKLSAgICAweDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAxCi0gICAgMHgxLmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwYWFhYWFhcC01MywKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAyCi0gICAgLTB4MS42MmU0MmZlZmEzOWYwMzU3OTNjNzY3MzAwODI1ZWQ1ZXAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgotICB9LAotICB7IC8vIEVudHJ5IDMwMwotICAgIC0weDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwLTEsCi0gICAgMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDQKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZWQzNTc5M2M3NjczMDA4ZTVlZDVlcC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA1Ci0gICAgLTB4MS42MmU0MmZlZmEzOWVmYjU3OTNjNzY3MzAwODA1ZWQ1ZXAwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA2Ci0gICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAwLAotICAgIDB4MS4wcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA3Ci0gICAgLTB4MS42MmU0MmZlZmEzOWVlMzU3OTNjNzY3MzAwODY1ZWQ1ZXAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA4Ci0gICAgLTB4MS4wYTJiMjNmM2JhYjczYTgxYWVkNThkNjQwNWZjNzIwNnAxLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzA5Ci0gICAgLTB4MS4wYTJiMjNmM2JhYjczNjgxYWVkNThkNjQwNWVjNzIwNnAxLAotICAgIDB4MS4wcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMzEwCi0gICAgLTB4MS4wYTJiMjNmM2JhYjcyZTgxYWVkNThkNjQwNjJjNzIwNnAxLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMzExCi0gICAgLTB4MS42MmU0MmZlZmEzOWVmNzU3OTNjNzY3MzAwN2Y1ZWQ1ZXAxLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzEyCi0gICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAxLAotICAgIDB4MS4wcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzEzCi0gICAgLTB4MS42MmU0MmZlZmEzOWVlYjU3OTNjNzY3MzAwODI1ZWQ1ZXAxLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzE0Ci0gICAgLTB4MS5iYjlkM2JlYjhjODZiNDJkNzhiOTQwZmMwOWVmNjhiNnAxLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzE1Ci0gICAgLTB4MS5iYjlkM2JlYjhjODZiMDJkNzhiOTQwZmMwOWRmNjhiNnAxLAotICAgIDB4MS4wcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzE2Ci0gICAgLTB4MS5iYjlkM2JlYjhjODZhODJkNzhiOTQwZmMwYTFmNjhiNnAxLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzE3Ci0gICAgLTB4MS4wYTJiMjNmM2JhYjczODgxYWVkNThkNjQwNWY0NzIwNnAyLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzE4Ci0gICAgLTB4MS4wYTJiMjNmM2JhYjczNjgxYWVkNThkNjQwNWVjNzIwNnAyLAotICAgIDB4MS4wcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzE5Ci0gICAgLTB4MS4wYTJiMjNmM2JhYjczMjgxYWVkNThkNjQwNjBjNzIwNnAyLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzIwCi0gICAgLTB4MS4zNjg3YTlmMWFmMmIxNmVjYTE0ZTdhNGEwNmYxMmZiMnAyLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC04Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzIxCi0gICAgLTB4MS4zNjg3YTlmMWFmMmIxNGVjYTE0ZTdhNGEwNmU5MmZiMnAyLAotICAgIDB4MS4wcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzIyCi0gICAgLTB4MS4zNjg3YTlmMWFmMmIxMGVjYTE0ZTdhNGEwNzA5MmZiMnAyLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzIzCi0gICAgLTB4MS42MmU0MmZlZmEzOWVmNTU3OTNjNzY3MzAwN2VkZWQ1ZXAyLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC05Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzI0Ci0gICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAyLAotICAgIDB4MS4wcC04Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzI1Ci0gICAgLTB4MS42MmU0MmZlZmEzOWVlZjU3OTNjNzY3MzAwODA1ZWQ1ZXAyLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC04Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzI2Ci0gICAgLTB4MS44ZjQwYjVlZDk4MTJkM2MyODY0MDU0MTYwOGVhYWIwYXAyLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDMyNwotICAgIC0weDEuOGY0MGI1ZWQ5ODEyZDFjMjg2NDA1NDE2MDhlMmFiMGFwMiwKLSAgICAweDEuMHAtOQotICB9LAotICB7IC8vIEVudHJ5IDMyOAotICAgIC0weDEuOGY0MGI1ZWQ5ODEyY2RjMjg2NDA1NDE2MDkwMmFiMGFwMiwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtOQotICB9LAotICB7IC8vIEVudHJ5IDMyOQotICAgIC0weDEuYmI5ZDNiZWI4Yzg2YjIyZDc4Yjk0MGZjMDllNzY4YjZwMiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzAKLSAgICAtMHgxLmJiOWQzYmViOGM4NmIwMmQ3OGI5NDBmYzA5ZGY2OGI2cDIsCi0gICAgMHgxLjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMxCi0gICAgLTB4MS5iYjlkM2JlYjhjODZhYzJkNzhiOTQwZmMwOWZmNjhiNnAyLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDMzMgotICAgIC0weDEuMjA1OTY2ZjJiNGYxMjZiNzI4MTIwM2Q3MDY2ZWQwZGNwMywKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzMKLSAgICAtMHgxLjIwNTk2NmYyYjRmMTI1YjcyODEyMDNkNzA2NmFkMGRjcDMsCi0gICAgMHgxLjBwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM0Ci0gICAgLTB4MS4yMDU5NjZmMmI0ZjEyM2I3MjgxMjAzZDcwNjdhZDBkY3AzLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMwotICB9LAotICB7IC8vIEVudHJ5IDMzNQotICAgIC0weDEuMjA1OTY2ZjJiNGYxMjZiNzI4MTIwM2Q3MDY2ZWQwZGNwMywKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzYKLSAgICAtMHgxLjIwNTk2NmYyYjRmMTI1YjcyODEyMDNkNzA2NmFkMGRjcDMsCi0gICAgMHgxLjBwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM3Ci0gICAgLTB4MS4yMDU5NjZmMmI0ZjEyM2I3MjgxMjAzZDcwNjdhZDBkY3AzLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMwotICB9LAotICB7IC8vIEVudHJ5IDMzOAotICAgIC0weDEuMGEyYjIzZjNiYWI3M2E4MWFlZDU4ZDY0MDVmYzcyMDZwMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNAotICB9LAotICB7IC8vIEVudHJ5IDMzOQotICAgIC0weDEuMGEyYjIzZjNiYWI3MzY4MWFlZDU4ZDY0MDVlYzcyMDZwMSwKLSAgICAweDEuMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDM0MAotICAgIC0weDEuMGEyYjIzZjNiYWI3MmU4MWFlZDU4ZDY0MDYyYzcyMDZwMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMwotICB9LAotICB7IC8vIEVudHJ5IDM0MQotICAgIC0weDEuMTE3OGU4MjI3ZTQ4MDcwN2NhZmQ0NDU5Nzg1YjBlOGZwLTMsCi0gICAgMHgxLmJmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDIKLSAgICAtMHgxLjExNzhlODIyN2U0N2JkZTMzOGI0MWZjNzJkZTgxZTNicC0zLAotICAgIDB4MS5jcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQzCi0gICAgLTB4MS4xMTc4ZTgyMjdlNDc3NGJlYTY2YWZiMzRlNjExZTlmZHAtMywKLSAgICAweDEuYzAwMDAwMDAwMDAwMXAtMQotICB9LAotICB7IC8vIEVudHJ5IDM0NAotICAgIC0weDEuNjJlNDJmZWZhMzllZjc1NzkzYzc2NzMwMDdmNWVkNWVwMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNQotICB9LAotICB7IC8vIEVudHJ5IDM0NQotICAgIC0weDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwMSwKLSAgICAweDEuMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDM0NgotICAgIC0weDEuNjJlNDJmZWZhMzllZWI1NzkzYzc2NzMwMDgyNWVkNWVwMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtNAotICB9LAotICB7IC8vIEVudHJ5IDM0NwotICAgIC0weDEuMDg1OThiNTllM2EwZjExMmM4NjI0N2Q4YmU0MWQ0ODdwLTQsCi0gICAgMHgxLmRmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDgKLSAgICAtMHgxLjA4NTk4YjU5ZTNhMDY4OGEzZmQ5YmY1MDMzNzJjMTJmcC00LAotICAgIDB4MS5lcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ5Ci0gICAgLTB4MS4wODU5OGI1OWUzOWZlMDAxYjc1MTM2YzdhZDMwYzM3NnAtNCwKLSAgICAweDEuZTAwMDAwMDAwMDAwMXAtMQotICB9LAotICB7IC8vIEVudHJ5IDM1MAotICAgIC0weDEuYmI5ZDNiZWI4Yzg2YjQyZDc4Yjk0MGZjMDllZjY4YjZwMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNgotICB9LAotICB7IC8vIEVudHJ5IDM1MQotICAgIC0weDEuYmI5ZDNiZWI4Yzg2YjAyZDc4Yjk0MGZjMDlkZjY4YjZwMSwKLSAgICAweDEuMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDM1MgotICAgIC0weDEuYmI5ZDNiZWI4Yzg2YTgyZDc4Yjk0MGZjMGExZjY4YjZwMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtNQotICB9LAotICB7IC8vIEVudHJ5IDM1MwotICAgIC0weDEuMDQxNWQ4OWU3NDQ1NGY0Mzg0NGI3ZTU1Y2VkZDgzN2JwLTUsCi0gICAgMHgxLmVmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTQKLSAgICAtMHgxLjA0MTVkODllNzQ0NDQ3MDE3M2M3NWQ0ZDg4ODlkZTBlcC01LAotICAgIDB4MS5mcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzU1Ci0gICAgLTB4MS4wNDE1ZDg5ZTc0NDMzZWJmNjM0MzNjNDU0YWJjN2IzOXAtNSwKLSAgICAweDEuZjAwMDAwMDAwMDAwMXAtMQotICB9LAotICB7IC8vIEVudHJ5IDM1NgotICAgIC0weDEuMGEyYjIzZjNiYWI3Mzg4MWFlZDU4ZDY0MDVmNDcyMDZwMiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNwotICB9LAotICB7IC8vIEVudHJ5IDM1NwotICAgIC0weDEuMGEyYjIzZjNiYWI3MzY4MWFlZDU4ZDY0MDVlYzcyMDZwMiwKLSAgICAweDEuMHAtNgotICB9LAotICB7IC8vIEVudHJ5IDM1OAotICAgIC0weDEuMGEyYjIzZjNiYWI3MzI4MWFlZDU4ZDY0MDYwYzcyMDZwMiwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtNgotICB9LAotICB7IC8vIEVudHJ5IDM1OQotICAgIC0weDEuMDIwNTY1ODkzNTg2N2NiZmE1YTkyNjNiZDgxZGE0YTBwLTYsCi0gICAgMHgxLmY3ZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjAKLSAgICAtMHgxLjAyMDU2NTg5MzU4NDc0OWYyM2ExMDViOWM3YmI5YTZmcC02LAotICAgIDB4MS5mODBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjEKLSAgICAtMHgxLjAyMDU2NTg5MzU4MjZjN2VhMTk4ZTUzN2M3ZGNhMDhmcC02LAotICAgIDB4MS5mODAwMDAwMDAwMDAxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzYyCi0gICAgLTB4MS4zNjg3YTlmMWFmMmIxNmVjYTE0ZTdhNGEwNmYxMmZiMnAyLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC04Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzYzCi0gICAgLTB4MS4zNjg3YTlmMWFmMmIxNGVjYTE0ZTdhNGEwNmU5MmZiMnAyLAotICAgIDB4MS4wcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzY0Ci0gICAgLTB4MS4zNjg3YTlmMWFmMmIxMGVjYTE0ZTdhNGEwNzA5MmZiMnAyLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzY1Ci0gICAgLTB4MS4wMTAxNTc1ODhkZWIxYTljZWM5YjAzZmJlZTQ5YzZiMHAtNywKLSAgICAweDEuZmJmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM2NgotICAgIC0weDEuMDEwMTU3NTg4ZGU3MTI4Y2NjNWE4MmY5ZGEwMGY0OGJwLTcsCi0gICAgMHgxLmZjMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDM2NwotICAgIC0weDEuMDEwMTU3NTg4ZGUzMGE3Y2FjMWEwMWY3ZTYzOWE2NzBwLTcsCi0gICAgMHgxLmZjMDAwMDAwMDAwMDFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjgKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZWY1NTc5M2M3NjczMDA3ZWRlZDVlcDIsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjkKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDIsCi0gICAgMHgxLjBwLTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzAKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZWVmNTc5M2M3NjczMDA4MDVlZDVlcDIsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzEKLSAgICAtMHgxLjAwODA1NTk1ODhiYjVmZWRhMGViNDU5NWM1ZmJlMmIxcC04LAotICAgIDB4MS5mZGZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzcyCi0gICAgLTB4MS4wMDgwNTU5NTg4YjM1N2U1OThlMzNkOGQ5ZGIzN2EyOXAtOCwKLSAgICAweDEuZmUwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzczCi0gICAgLTB4MS4wMDgwNTU5NTg4YWI0ZmRkOTBkYjM1ODViNWViZDJhMXAtOCwKLSAgICAweDEuZmUwMDAwMDAwMDAwMXAtMQotICB9LAotICB7IC8vIEVudHJ5IDM3NAotICAgIC0weDEuOGY0MGI1ZWQ5ODEyZDNjMjg2NDA1NDE2MDhlYWFiMGFwMiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzUKLSAgICAtMHgxLjhmNDBiNWVkOTgxMmQxYzI4NjQwNTQxNjA4ZTJhYjBhcDIsCi0gICAgMHgxLjBwLTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzYKLSAgICAtMHgxLjhmNDBiNWVkOTgxMmNkYzI4NjQwNTQxNjA5MDJhYjBhcDIsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzcKLSAgICAtMHgxLjAwNDAxNTVkNTg5OWU2NzQ2OTFmZWY0MTQwMmYzZTdicC05LAotICAgIDB4MS5mZWZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc4Ci0gICAgLTB4MS4wMDQwMTU1ZDU4ODlkZTcwNjcxZWVlYzBiZmNlZmU1M3AtOSwKLSAgICAweDEuZmYwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc5Ci0gICAgLTB4MS4wMDQwMTU1ZDU4NzlkNjZjNjUxZGVlNDBiZmVmMWU2YnAtOSwKLSAgICAweDEuZmYwMDAwMDAwMDAwMXAtMQotICB9LAotICB7IC8vIEVudHJ5IDM4MAotICAgIC0weDEuYmI5ZDNiZWI4Yzg2YjIyZDc4Yjk0MGZjMDllNzY4YjZwMiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODEKLSAgICAtMHgxLmJiOWQzYmViOGM4NmIwMmQ3OGI5NDBmYzA5ZGY2OGI2cDIsCi0gICAgMHgxLjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgyCi0gICAgLTB4MS5iYjlkM2JlYjhjODZhYzJkNzhiOTQwZmMwOWZmNjhiNnAyLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDM4MwotICAgIC0weDEuMDAyMDA1NTY1NWE4OWIzNzdkNTgwMWZkMDhmZDlmMmRwLTEwLAotICAgIDB4MS5mZjdmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg0Ci0gICAgLTB4MS4wMDIwMDU1NjU1ODg5MzM1N2NkN2UxZjQ4NmJkMDcwNXAtMTAsCi0gICAgMHgxLmZmOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDM4NQotICAgIC0weDEuMDAyMDA1NTY1NTY4OGIzMzdjNTdjMWVkMDRmYzllZWRwLTEwLAotICAgIDB4MS5mZjgwMDAwMDAwMDAxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg2Ci0gICAgLTB4MS4yMDU5NjZmMmI0ZjEyNmI3MjgxMjAzZDcwNjZlZDBkY3AzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNAotICB9LAotICB7IC8vIEVudHJ5IDM4NwotICAgIC0weDEuMjA1OTY2ZjJiNGYxMjViNzI4MTIwM2Q3MDY2YWQwZGNwMywKLSAgICAweDEuMHAtMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODgKLSAgICAtMHgxLjIwNTk2NmYyYjRmMTIzYjcyODEyMDNkNzA2N2FkMGRjcDMsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg5Ci0gICAgLTB4MS4wMDA0MDAxNTU2ZDU2MDg4ZGRlMDcwM2YwMzRjYTA5NnAtMTMsCi0gICAgMHgxLmZmZWZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTAKLSAgICAtMHgxLjAwMDQwMDE1NTVkNTU4ODg5ZGRlNzAyYjAyOGM5OTk2cC0xMywKLSAgICAweDEuZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkxCi0gICAgLTB4MS4wMDA0MDAxNTU0ZDU1MDg4NWRkYzcwMWYwMjRjOTg5NnAtMTMsCi0gICAgMHgxLmZmZjAwMDAwMDAwMDFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTIKLSAgICBIVUdFX1ZBTCwKLSAgICBIVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDM5MwotICAgIDB4MS42MmU0MmZlZmEzOWVmMzUzOTNjNzY3MzAwN2U1ZGQ1ZXA5LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTQKLSAgICAweDEuNjJlNDJmZWZhMzllZjM0ZjkzYzc2NzMwMDdlNWFkNWVwOSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZXAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk1Ci0gICAgMHgxLjI1MGQwNDhlN2ExYmNkZWU0OTlmYTViMGNhMWRkMjQzcDAsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwMQotICB9LAotICB7IC8vIEVudHJ5IDM5NgotICAgIDB4MS5jZTZiYjI1YWExMzE1MTA5ZmVlZmM4NjMxOGFiNmU1MnAtMiwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwYWFhYWFhcC01MywKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk4Ci0gICAgMC4wLAotICAgIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTkKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDA0MDAwMDAwMDAwMDAwMTU1NTU1cC01MywKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQwMAotICAgIC0weDEuZWViOTViMDk0YzE5MmI0YTUxM2UwYmY5ZWU0MGQ4ZDRwLTMsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDEKLSAgICAtMHgxLjYyMzJiZGQ3YWJjZDIzZDVlN2ZkODM3YzZmZTIzYTY3cDksCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDIKLSAgICAtMHgxLjYyMzJiZGQ3YWJjZDIzZGRlN2ZkODM3YzZmZTFmYTY3cDksCi0gICAgMHgxLjBwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDMKLSAgICAtMHgxLjYyMzJiZGQ3YWJjZDIzZTVlN2ZkODM3YzZmZTIzYTY3cDksCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDQKLSAgICAtMHgxLjYyMzJiZGQ3YWJjZDIzZWRlN2ZkODM3YzZmZTJmYTY3cDksCi0gICAgMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDUKLSAgICAtMHgxLjczZGY5YjNhZGIzMzRlN2M4NDk5YjFlMDE0NDZhZGZhcDksCi0gICAgMHgxLjBwLTEwNzMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDYKLSAgICAtMHgxLjc0Mzg1NDQ2ZDcxYzM2Mzk1YTdlYTNiOWUwNDhhNzc1cDksCi0gICAgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDcKLSAgICAtSFVHRV9WQUwsCi0gICAgMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA4Ci0gICAgLUhVR0VfVkFMLAotICAgIC0wLjAKLSAgfSwKLX07Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwotCi1URVNUKG1hdGhfbG9nLCBsb2dfaW50ZWwpIHsKLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCi0gIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZW9mKGdfbG9nX2ludGVsX2RhdGEpL3NpemVvZihsb2dfaW50ZWxfZGF0YV90KTsgaSsrKSB7Ci0gICAgRVhQRUNUX0RPVUJMRV9FUShnX2xvZ19pbnRlbF9kYXRhW2ldLmV4cGVjdGVkLCBsb2coZ19sb2dfaW50ZWxfZGF0YVtpXS5jYWxsX2RhdGEpKSA8PCAiRmFpbGVkIG9uIGVsZW1lbnQgIiA8PCBpOwotICB9Ci0jZWxzZSAvLyBfX0JJT05JQ19fCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCi19CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX2xvZ2ZfdGVzdC5jcHAgYi90ZXN0cy9tYXRoX2xvZ2ZfdGVzdC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU1ZDA5MjEuLjAwMDAwMDAKLS0tIGEvdGVzdHMvbWF0aF9sb2dmX3Rlc3QuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMTMyNyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLQotI2luY2x1ZGUgPG1hdGguaD4KLQotI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+Ci0KLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCi10eXBlZGVmIHN0cnVjdCB7Ci0gIGZsb2F0IGV4cGVjdGVkOwotICBmbG9hdCBjYWxsX2RhdGE7Ci19IGxvZ2ZfaW50ZWxfZGF0YV90OwotCi1zdGF0aWMgbG9nZl9pbnRlbF9kYXRhX3QgZ19sb2dmX2ludGVsX2RhdGFbXSA9IHsKLSAgeyAvLyBFbnRyeSAwCi0gICAgLTB4MS5iYjlkM2FlYjhjODdiMDJkNzc2M2ViYThiNDhhMTAyZHAxLAotICAgIDB4MS4wMDAwMDJwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxCi0gICAgMHgxLmZmZmZmZTAwMDAwMmFhYWFhNmFhYWFiMTExMTEwNjY2cC0yNCwKLSAgICAweDEuMDAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyCi0gICAgLTB4MS5jNmI0NWNlYjA5YTVhN2M4MmFhY2QxY2FkZjcyNTNkY3A0LAotICAgIDB4MS4wMDAwMDhwLTQxCi0gIH0sCi0gIHsgLy8gRW50cnkgMwotICAgIC0weDEuZDFjYjdjZWE4NmQwOWY2MjQ3NGIxNGM0NWY0Y2I2ODBwMywKLSAgICAweDEuMDAwMDEwcC0yMQotICB9LAotICB7IC8vIEVudHJ5IDQKLSAgICAtMHgxLmZlMjgwMGU4N2MzNDdkNzg4ZjM5NGVmMmU5M2RiODY4cDUsCi0gICAgMHgxLjAwMDA4MHAtOTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1Ci0gICAgMHgxLjFmZmZhZjAwMWU1ZmYzMmY4NWM0MzZlNTlmZTczYjFlcC0xNywKLSAgICAweDEuMDAwMDkwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2Ci0gICAgLTB4MS4wYTI3YTNmZmZhN2UwZDAzMWQ5YTU1ZDE1N2EwZThjOHAxLAotICAgIDB4MS4wMDA3cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNwotICAgIDB4MS41NGRlNmVlNzg5ODlhOWFjZmM4NzVjMWQ0NWUxNjQ5MHAtOSwKLSAgICAweDEuMDBhYWE4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4Ci0gICAgMHgxLjhmNDgyNmZmZjc4N2M1OGZhYjUyMGU1MDU5NTJiYjU1cC05LAotICAgIDB4MS4wMGM3ZjJwMAotICB9LAotICB7IC8vIEVudHJ5IDkKLSAgICAtMHgxLjYxNTBjZWZmZmM4M2JhMmRhNDNkOGQ3NDU1ZWYyZmRlcC0xLAotICAgIDB4MS4wMGNhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAKLSAgICAweDEuY2YyZTNlYjA5MjhiZGY1Y2JmMDY0YTI3YzY0MjJjODVwLTksCi0gICAgMHgxLjAwZThwMAotICB9LAotICB7IC8vIEVudHJ5IDExCi0gICAgMHgxLmYwZWU4YTlhNjdhYjM2NTk3ZmZkM2M5MzMwNGQwY2M1cC05LAotICAgIDB4MS4wMGY4ZjBwMAotICB9LAotICB7IC8vIEVudHJ5IDEyCi0gICAgMHgxLmZiZGZjODk3ZDIzOWZiNDlkYzFjMzFhZmVhZWExZWE1cC05LAotICAgIDB4MS4wMGZlNmVwMAotICB9LAotICB7IC8vIEVudHJ5IDEzCi0gICAgMHgxLmZkYzVlNDhmODkzZThmNDg5NjdlZTRmZjFlODk1ZGQ1cC05LAotICAgIDB4MS4wMGZmNjJwMAotICB9LAotICB7IC8vIEVudHJ5IDE0Ci0gICAgMHgxLmJlNzljNzAwNThlYzhmOWE2YzA0MDQzZjUyNzYzYzMwcC04LAotICAgIDB4MS4wMWMwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNQotICAgIDB4MS5lM2FmZWYwMzZjNDQyYmVhNDZkMTA1ZjY4NjRlYTZmM3AtOCwKLSAgICAweDEuMDFlNTdhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNgotICAgIDB4MS5lYjkyZGIwM2Q4OWYyNTcxOWFmOTA4ZWJiNmU3ZTUxMHAtOCwKLSAgICAweDEuMDFlZDZjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNwotICAgIDB4MS5mODczYjUwMmY5NDI3Y2IxYTE0ODcyMjY3ZmZhZTJmOHAtOCwKLSAgICAweDEuMDFmYTY2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOAotICAgIDB4MS5mYzEwODkwM2ZjZDRjZDQ0NTgwMGNiMDZjMTY0ZDBiMHAtOCwKLSAgICAweDEuMDFmZTBhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOQotICAgIDB4MS5mZWExNjhmYWQ2Mjc0MjMyYWQzOTk4YzNlMzllNDNkOXAtOCwKLSAgICAweDEuMDIwMGEwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMAotICAgIDB4MS4wY2U0YzlmZTNlZGQ3ZjQ1ZGMzOGQzMGY3NjMwNTkzMXAtNywKLSAgICAweDEuMDIxY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEKLSAgICAweDEuMGVlMDk2ZTI3NjRmOWYxZTY0ODQwNjA3NDM2Y2MwOTNwLTcsCi0gICAgMHgxLjAyMjBwMAotICB9LAotICB7IC8vIEVudHJ5IDIyCi0gICAgMHgxLmZjMDk4ZWZmZmU0OWZlMzJjMzU3NmRlZjZmMzAzMzM1cC03LAotICAgIDB4MS4wM2ZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDIzCi0gICAgLTB4MS41OGZlZDQwMDAxNWZmZjk0YWMzYmI5ZWJiYzgxYzhhZXAtMSwKLSAgICAweDEuMDRmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDI0Ci0gICAgLTB4MS41OGIxZjFmZmZmYTU2YjU1YjZhNzIyZTBhYjJjNWFlNnAtMSwKLSAgICAweDEuMDUyNjM0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUKLSAgICAweDEuZTcyMGEzMDAzZDA5OTczMWM4NWNlNmQ2ODk1NDZhNzZwLTYsCi0gICAgMHgxLjA3YjljNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYKLSAgICAweDEuZjVhNGNiMDAzNTM5MzdhZDhiMWUwN2E2YTQ2OTE4OWZwLTYsCi0gICAgMHgxLjA3ZjU5Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcKLSAgICAtMHgxLmIwMDgwZmZmZDU4OGVjOTE4ODM3MTU3MzZhYWUwZjUwcDQsCi0gICAgMHgxLjA4cC0zOQotICB9LAotICB7IC8vIEVudHJ5IDI4Ci0gICAgMHgxLjdmNjRhNzAwMDAyYjU0ZDZmYjVkNjliYzM1YzVlMmNhcC0xLAotICAgIDB4MS4wZWE3YjBwMQotICB9LAotICB7IC8vIEVudHJ5IDI5Ci0gICAgMHgxLmNmMjgyNTA3OGQ4YmQyMWY1YjU1NDMzNDJlNjZiNTRkcC01LAotICAgIDB4MS4wZWU0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMAotICAgIDB4MS44NDU2NTcwMDAzOTFmMzQwZGE3NDVkOWU1ZDI4MzE2NXAtMSwKLSAgICAweDEuMTE0OHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzEKLSAgICAtMHgxLmI5NTk0MjAwMDRiNTFmYjgwZDgzMjkxNzJkODkyMmY2cDMsCi0gICAgMHgxLjEyYzhwLTIwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIKLSAgICAtMHgxLjNjYjIyNmNlZjlhNjEwY2Y3N2RjMDA2NzkwMmI0MDk5cC0xLAotICAgIDB4MS4xM2Q0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMKLSAgICAweDEuNWUxYTIyZmNjZDg3ZDQwYjZlN2ViYzAyMjYzNzRkNjFwLTQsCi0gICAgMHgxLjE2ZDhwMAotICB9LAotICB7IC8vIEVudHJ5IDM0Ci0gICAgLTB4MS4zNWZiNzZkZDhjN2EyMTFmMzM4NDJhZjQyYzU5OTExNHAtMSwKLSAgICAweDEuMTc3OHAtMQotICB9LAotICB7IC8vIEVudHJ5IDM1Ci0gICAgLTB4MS4zNTAyOGFkOWQ4Yzg1YzFmY2E5M2YzNTVkNDc5NmJjMXAtMSwKLSAgICAweDEuMThwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNgotICAgIDB4MS5hM2Y3MWNmZjE0YjgxMTFhZGVkOTc2YzI2ZDE4OTYwZXAtNCwKLSAgICAweDEuMWJhNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzcKLSAgICAtMHgxLjU1YTA2MWZmZjkwZmE2ZGY3NTVmN2FlZjVhYjlmOTc4cDEsCi0gICAgMHgxLjFiZjRwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOAotICAgIC0weDEuY2U1ZmZkZTY2YTlhZjc4M2I4NjQ0MzIwOWVjZWMxNjRwMywKLSAgICAweDEuMWNlMHAtMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOQotICAgIC0weDEuY2UzYTU1ZWE1ZDQ3MzIyYmRiYmUwZmZmNTQ3OWNhMWVwMywKLSAgICAweDEuMWUzMHAtMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MAotICAgIDB4MS5lMjM3OTJlZjUyOTcxZmQ2YzcyYTk5ZjU5OGEwZmJhY3AtNCwKLSAgICAweDEuMWZmY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDEKLSAgICAweDEuOGZlMGM4NTMxNGJhNWUwOWUxMTU1MjhjMDJlZjZlMzFwMCwKLSAgICAweDEuMzEyZTc4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MgotICAgIC0weDEuZmRlZGZhZGU0NjVkNTczMzZhOWI4YTM1NjJkM2IxNzZwLTIsCi0gICAgMHgxLjM3MmMxNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQzCi0gICAgLTB4MS5mZDljOThkZTdkODliOWUyOTU0NmE5Yjc2OTJjYWNkZHAtMiwKLSAgICAweDEuMzc0NGQycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQKLSAgICAtMHgxLmZkNTY1NmRlMGM2NmQ0N2I3YjljZjRmYTY4YjM1NmU0cC0yLAotICAgIDB4MS4zNzVhMmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NQotICAgIC0weDEuZmNhOThjZGUwY2ViMThkNmQ3YmFiNzcwNWQxNGRlMTdwLTIsCi0gICAgMHgxLjM3OGViY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDQ2Ci0gICAgLTB4MS5mYzBhNThkZTRlYTdjOTQzMmFjMDBmZjBhZGI2ZGI3ZXAtMiwKLSAgICAweDEuMzdiZjMwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDcKLSAgICAtMHgxLmViZGVkZTUxZGU3ZDdiMzU5YWNjMjNlYzMxMmFmMmQ0cC0yLAotICAgIDB4MS4zY2I1NmFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OAotICAgIC0weDEuZGFlMGRlZGZkZGEyNTY5Mzc5NjMwYWJmZmNhZmZmZjJwLTIsCi0gICAgMHgxLjQyMDIwOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ5Ci0gICAgLTB4MS5kOTMwY2E1M2FlOGUwNjk1ZDE0ZTQ4Mzc2YjU4NDY2OHAtMiwKLSAgICAweDEuNDI4YTA0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTAKLSAgICAweDEuZWMzNjQ5YzcyYzA1YTA2OWMyZDAwMDA5MDg1MWM2MzlwLTMsCi0gICAgMHgxLjQ1OGNiZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTEKLSAgICAweDEuZjNlNjMyNTdlY2QxMmIwZDljY2M5ZmYzNGMzZjNkNmVwLTMsCi0gICAgMHgxLjQ2YzYyNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIKLSAgICAtMHgxLjY5M2NmYTMwYjYzM2IxZDAzZjRlY2Q4OGE3NTBhYzc5cC0yLAotICAgIDB4MS42N2NkM2FwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MwotICAgIC0weDEuNjkyYjVlNDIxMDhiNzNkNzU5OTUxODA3NGNlODY3MGFwLTIsCi0gICAgMHgxLjY3ZDM2YXAtMQotICB9LAotICB7IC8vIEVudHJ5IDU0Ci0gICAgLTB4MS42M2JiYmExNzcxYjgyMDhkODUxYWIzNmNkNmQ5M2YzOHAtMiwKLSAgICAweDEuNjliZGJhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUKLSAgICAweDEuNjJlMjVlZWM4NTc4MWU2MGNiNDliNGYyMWJlY2FiZGZwLTIsCi0gICAgMHgxLjZhMDk0MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYKLSAgICAweDEuNjJlM2NlOWVmODZmNjUyNDM1MWVkZDg3MzEwZTg3NDNwLTIsCi0gICAgMHgxLjZhMDljNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcKLSAgICAtMHgxLjNjNjA3YWRlZGIxNjhkOWQ4OWM2YjIyNjViNGRkMGE0cC0yLAotICAgIDB4MS43N2VhMzhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OAotICAgIC0weDEuMTk0NDMyZmZmY2IwOTJkODkxNjcwYjdmOGY2MjhmYzRwNiwKLSAgICAweDEuNzdmZmZlcC0xMDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OQotICAgIDB4MS4xOTNlYTUwMDI1ODI3MDkzMGY4ZTdkN2FmMjQ0ZGNmZnAwLAotICAgIDB4MS43ZmZmZmNwMQotICB9LAotICB7IC8vIEVudHJ5IDYwCi0gICAgLTB4MS5kYWMwOGRlMWQyNmIwZjY5ZTFlZDU4YmQzZDlmZDgyYnAzLAotICAgIDB4MS44MmZlOTJwLTIyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEKLSAgICAweDEuYzhkNzBkZTExN2NiMmZlNDU5ZWQ2NGNjNjdlNWFiYzlwMywKLSAgICAweDEuODMwNjA4cDIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjIKLSAgICAweDEuZjIyNzJhZTMyNWE1NzU0NmY2OTQ5NmNmMjYxYmUwNDZwMSwKLSAgICAweDEuODhwNQotICB9LAotICB7IC8vIEVudHJ5IDYzCi0gICAgMHgxLmM5YzVhZGUzNDc2M2MwYjlhMTgwZDg2M2JmYzdmMTA2cDMsCi0gICAgMHgxLjhlNzY4NnAyMAotICB9LAotICB7IC8vIEVudHJ5IDY0Ci0gICAgLTB4MS5mOTkxZDEwOGFiZTFmYzljOTFlOTFhZTdmNzA3YmQ0ZnAtMywKLSAgICAweDEuOGZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUKLSAgICAtMHgxLjgyN2Q0ZDAwMmU1ZDEzMjE1Y2U1ZjhkZTg3NTY2OTMzcDEsCi0gICAgMHgxLjhmZmZmZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDY2Ci0gICAgLTB4MS5mMzA1YmQwNThiM2M5ZTY0MTAxNDc2ZTVkZTkxMWQ4M3AtMywKLSAgICAweDEuOTE0N2UwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcKLSAgICAtMHgxLmVlN2VlNTA2NTA4NzhhODRlOTdmNGNlYzk2NzM2YmM1cC0zLAotICAgIDB4MS45MjJiMzBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OAotICAgIDB4MS5kYzAzOTEwMDViZjBmY2NiOTJjMjYyZWViNmEzMDBlNHAwLAotICAgIDB4MS45YWUyNzhwMgotICB9LAotICB7IC8vIEVudHJ5IDY5Ci0gICAgLTB4MS4yNjUwYjYwMDAwMGJlMGM1OTAyYzdhMTU0OTUxNjFjNXAxLAotICAgIDB4MS45YWVlYTBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MAotICAgIC0weDEuN2JhOWI3ZmZmZjNkMTg5ZjVhMTcxNDk2OTdjMTJjZTJwMSwKLSAgICAweDEuYTVlOTcwcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzEKLSAgICAtMHgxLjIwNjE3MGZmZmM5ZThhOTNjMTk4NmUyMTc4N2JlZDVhcDEsCi0gICAgMHgxLmFlNmVmMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDcyCi0gICAgLTB4MS5kNzNkN2ZmYzFlN2FiYzQyMjVlMzk4Nzg4MjhmODY2NnAzLAotICAgIDB4MS5hZmUyNmNwLTIyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMKLSAgICAtMHgxLjI1MTc0NzAwMDAwMDA4ZGRiZTc1NTczOWQ2MjYzNjRmcDMsCi0gICAgMHgxLmI5N2M3MHAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NAotICAgIC0weDEuMWNhNWI1MDAwMzVmYzA3YzM4OWE5ZTVjYmZkNzhlZGJwMSwKLSAgICAweDEuYmIyYzJjcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzUKLSAgICAtMHgxLjI0YjBlYmZmZmNjMzJlZTFiOWI3MzllMmE0YzdkMDU5cDMsCi0gICAgMHgxLmJmMDk3MHAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NgotICAgIC0weDEuNjY5OTE1MDAwMjMwZDc0ZmEyZGEyZjQwYmJkZjQ0NjlwMywKLSAgICAweDEuYzdmZmZlcC0xNwotICB9LAotICB7IC8vIEVudHJ5IDc3Ci0gICAgLTB4MS45NTRhZWVkZjRkNWY1ZmI3YzQ3NGEzNTcyM2I0ZTcwN3AtMSwKLSAgICAweDEuY2ZmZmZlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgKLSAgICAtMHgxLjkyZTc2YWZmZmNkNDQ5YjNhYzVkNDEyYjYyMmY3OGE4cC00LAotICAgIDB4MS5kMDA4ZTRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OQotICAgIC0weDEuZmZhMjRmMWMxMjMzYTlmOGU4YWU2ODRlZGY4OTMxM2ZwLTUsCi0gICAgMHgxLmUxMDA0MHAtMQotICB9LAotICB7IC8vIEVudHJ5IDgwCi0gICAgLTB4MS4xMTc4ODlmZmZmZmJkZjhhNWNkN2MzNGY3MjQ2ZjNjZnAxLAotICAgIDB4MS5lMzliYjRwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MQotICAgIC0weDEuODk0YWMyZGNkZGU1NDlkMGQwOTIyYjViNGY1NGUwMjhwLTUsCi0gICAgMHgxLmU3ZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDgyCi0gICAgLTB4MS4zODFkMzZmZmU2MGViMWRmYjA2ODY1NzQwNzQyMjNlN3AtNSwKLSAgICAweDEuZWNkYzFjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODMKLSAgICAweDEuZDE0OTczZWRiMzY1NmM3NzFlMThlY2E4NGJjOTRjNzZwNCwKLSAgICAweDEuZWZmZmZlcDQxCi0gIH0sCi0gIHsgLy8gRW50cnkgODQKLSAgICAtMHgxLmVmZWExOGZmZjExMTVlODE2MzZmNTNiNjU2NjVlMTZlcC02LAotICAgIDB4MS5mMGJjMjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NQotICAgIC0weDEuYTViNTg0ZmZkYWQzMTE0N2QxMTQwYjE2OTQ3NDBhZDdwLTYsCi0gICAgMHgxLmYyZmQ2MHAtMQotICB9LAotICB7IC8vIEVudHJ5IDg2Ci0gICAgLTB4MS42MmIzNWFmZmRmMGEyNDI5Mjg0YjAwNmI2ODBiZDFiZXAtNiwKLSAgICAweDEuZjUwOGU0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODcKLSAgICAtMHgxLjBjYjE0MGZmZmY5ZjhmMWUwNmU3ZjlhZjBhNTMxYTVicDEsCi0gICAgMHgxLmY2MDBkY3AtNAotICB9LAotICB7IC8vIEVudHJ5IDg4Ci0gICAgLTB4MS4wYmZlNzBlYjQ1MWFkMDlhN2NiNzVjMWVlZGZhNjE1MHAxLAotICAgIDB4MS5mOGMwMTBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OQotICAgIC0weDEuNzBjOGM1MGRjZTI0NmRkNmJjYjA0NjFlN2RjNDkzN2VwLTcsCi0gICAgMHgxLmZhNDUyMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDkwCi0gICAgLTB4MS40MTZhNzFiNzczYTJjM2UzOTgwYjExZWZkMWExOTdiNXAtOCwKLSAgICAweDEuZmQ3ZWJlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEKLSAgICAtMHgxLmMwYzY3NDYyMWM1YjQ3NGE0MzBlMTM1NzBjNTgwMzg4cC05LAotICAgIDB4MS5mZTNmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MgotICAgIC0weDEuMDQ4NjNjZmZmYmJmN2VkYjE2N2NiNjBkZjNmM2Q1OTlwLTksCi0gICAgMHgxLmZlZmJiY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDkzCi0gICAgLTB4MS4wYTVkZGYwMDAwNGViZjJhNmZlZWU5OWQ1YmRkZGUzNHAxLAotICAgIDB4MS5mZjM1M2NwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NAotICAgIC0weDEuZDgwMzY2NDg1Yjc0NzI0N2E0NWJiOWE0NzAxNzlkZjFwLTE1LAotICAgIDB4MS5mZmY4YTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NQotICAgIC0weDEuZDFjYjdmZWE4NmM0OWY2MzA3NGIwZDQ0NWZiNjUwMTRwMywKLSAgICAweDEuZmZmZmYwcC0yMgotICB9LAotICB7IC8vIEVudHJ5IDk2Ci0gICAgMHgxLmQxY2I3ZGVhODZiYzlmNjJkY2EwNjE5OWI1MDUzZjAzcDMsCi0gICAgMHgxLmZmZmZmMHAyMAotICB9LAotICB7IC8vIEVudHJ5IDk3Ci0gICAgLTB4MS4wMDAwMDIwMDAwMDU1NTU1NjU1NTU1ODg4ODg5MzMzM3AtMjIsCi0gICAgMHgxLmZmZmZmOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDk4Ci0gICAgLTB4MS4wMDAwMDEwMDAwMDE1NTU1NTc1NTU1NTg4ODg4OGRkZHAtMjMsCi0gICAgMHgxLmZmZmZmY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDk5Ci0gICAgLTB4MS4wMDAwMDA4MDAwMDA1NTU1NTU5NTU1NTU4ODg4ODhiM3AtMjQsCi0gICAgMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwMAotICAgIC0weDEuNjJlNDMxMTVhOGZiNDdjM2E3YzJlNzZhODBjY2E5YTVwLTIsCi0gICAgMHgxLjZhMDllNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwMQotICAgIC0weDEuZGEzOTFhNzBkMjhhMjQ2NDE2MjZmNWU5MTU1MzI0YjVwLTMsCi0gICAgMHgxLjk2MmI2MHAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwMgotICAgIC0weDEuMDZmYmU2YTRlMjUyOTVmODBmYjIyNzRhZmU2ZDNiYWNwLTMsCi0gICAgMHgxLmMyNGNkYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwMwotICAgIC0weDEuMWUwYTZkMDUzNDI1ZDNkNjUyOGFhNzE3ZWNjOWE1NzhwLTUsCi0gICAgMHgxLmVlNmU1NHAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwNAotICAgIDB4MS45ZTU0OWMzNzc5ZjA5MzQ1MTg5MmExZmU0ZTY3YjUwZXAtNSwKLSAgICAweDEuMGQ0N2U2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUKLSAgICAweDEuMDhlMGI5ZjNhNzk0NGJhYjNlY2I1NmQ2YTdmZjAzYjVwLTMsCi0gICAgMHgxLjIzNThhMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2Ci0gICAgMHgxLjllNjQ1ZDYwZmYxOTg5ODY0NzkzNDZkMTY0ZWNhZDdlcC0zLAotICAgIDB4MS4zOTY5NWVwMAotICB9LAotICB7IC8vIEVudHJ5IDEwNwotICAgIDB4MS4xNGRkNjcwY2FjMDIxMjUwNmJmNzJmYjc2MmQ4YTdkYnAtMiwKLSAgICAweDEuNGY3YTFhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDgKLSAgICAweDEuNTYxODE5YWNhNDlkZTZiMWQxY2NkYTEwOTVjNzQ1MDJwLTIsCi0gICAgMHgxLjY1OGFkNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5Ci0gICAgMHgxLjkzNmE3YzQ5NmMzZTIxNDA2YWY5ZjRhYzliZWFjNmE1cC0yLAotICAgIDB4MS43YjliOTJwMAotICB9LAotICB7IC8vIEVudHJ5IDExMAotICAgIDB4MS5jZDQ1YThkN2UzNDAzZjUyNzhkNWUzZDU2NjM0OWY3NXAtMiwKLSAgICAweDEuOTFhYzRlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTEKLSAgICAweDEuMDIwNDQ4MzEyMTFlZDAwNjhlZmE0YzJhOGI5ODcwYmZwLTEsCi0gICAgMHgxLmE3YmQwYXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEyCi0gICAgMHgxLjFjMDFkNWY2ZDNhNTBkMzFjNDVjYmZkZGQwMjcyNzY1cC0xLAotICAgIDB4MS5iZGNkYzZwMAotICB9LAotICB7IC8vIEVudHJ5IDExMwotICAgIDB4MS4zNGJkZTQ2ZmQ4NGZjYTQzYmEzZjQ3OTlhY2FiMTBmZnAtMSwKLSAgICAweDEuZDNkZTgycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTQKLSAgICAweDEuNGM1NjE4MTM2YTMyMjFkODQ0NzZiNzgzNTNmYWJjODBwLTEsCi0gICAgMHgxLmU5ZWYzZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE1Ci0gICAgMHgxLjYyZTQyOWVmYTM5NWYzNTc4MWM3NjcwNzg3ZTU4YzJicC0xLAotICAgIDB4MS5mZmZmZmFwMAotICB9LAotICB7IC8vIEVudHJ5IDExNgotICAgIC0weDEuNjJlNDMxMTVhOGZiNDdjM2E3YzJlNzZhODBjY2E5YTVwLTIsCi0gICAgMHgxLjZhMDllNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDExNwotICAgIC0weDEuMjRjZmQwOTUxNGJhZTllMjE1MDFkMWEyOGMzN2Q1MWVwLTIsCi0gICAgMHgxLjgwYWE4NHAtMQotICB9LAotICB7IC8vIEVudHJ5IDExOAotICAgIC0weDEuZDQ5MDJhN2Y2YTFkMThkYTI0MWRmZmI0MmEwODE4ZWRwLTMsCi0gICAgMHgxLjk3NGIyMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDExOQotICAgIC0weDEuNjVkNTYwN2NjODViYWJhMjZlMmZhZjc4ODY1ZGM5OTFwLTMsCi0gICAgMHgxLmFkZWJjMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDEyMAotICAgIC0weDEuZjk5MWQ4ZjZlMmYwMTE5NDNkNWE2YTYwY2Q2NDYwMDJwLTQsCi0gICAgMHgxLmM0OGM1ZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEyMQotICAgIC0weDEuMzFiOWE5OTU1MDJkNTkyNDE1MDBjZDFjZTk1NWY1YzRwLTQsCi0gICAgMHgxLmRiMmNmY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDEyMgotICAgIC0weDEuY2NiNzk5NGJkYTgxOGMyNmNjMTVmY2E2NjBmMzY0ZWNwLTYsCi0gICAgMHgxLmYxY2Q5YXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEyMwotICAgIDB4MS4wYjk0OTJiZDk5NTcwZThhMmEyZjVhN2Y1OTY0NGI0MnAtNiwKLSAgICAweDEuMDQzNzFjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQKLSAgICAweDEuZTI3MDVlOWNjNTU0ZDhiNTY1NDMzYzhmYWQyZGIxNjRwLTUsCi0gICAgMHgxLjBmODc2Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI1Ci0gICAgMHgxLjk4NmQzMjE2ODhiMDc0YTIxZWIyNmI0MTY3OWVlMzA5cC00LAotICAgIDB4MS4xYWQ3YmNwMAotICB9LAotICB7IC8vIEVudHJ5IDEyNgotICAgIDB4MS4xYzg5OTE5ZmIyMDhlYmRhMjc1ZDZmZWU3NTU3N2E0M3AtMywKLSAgICAweDEuMjYyODBjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjcKLSAgICAweDEuNjlkNDYzZGI1ZDBkOGNiYzVkYThiZDJjMWY1ZDI5NTNwLTMsCi0gICAgMHgxLjMxNzg1Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI4Ci0gICAgMHgxLmI0NGY4NzM4MTYxMWFiMjgwNmQ2ZjAwZDIxM2RlMmNmcC0zLAotICAgIDB4MS4zY2M4YWNwMAotICB9LAotICB7IC8vIEVudHJ5IDEyOQotICAgIDB4MS5mYzJkODBlNTMxMWIzZjdlMDVmMjZiOTYzMDQ0ZWEwOHAtMywKLSAgICAweDEuNDgxOGZjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzAKLSAgICAweDEuMjBjZGQ5MjYyYzU5YTc3MjY2ODlmNGZlNWZmYTU4ZmVwLTIsCi0gICAgMHgxLjUzNjk0Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMxCi0gICAgMHgxLjQyNjE4MmRiMjBlMjNkMGI0NzNhZTFjMmQxOTc1YzNmcC0yLAotICAgIDB4MS41ZWI5OWNwMAotICB9LAotICB7IC8vIEVudHJ5IDEzMgotICAgIDB4MS42MmU0MmVjOTllNDI5ZWViN2ZjYmU2ZjU4ZWZmMzExN3AtMiwKLSAgICAweDEuNmEwOWU2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzMKLSAgICAtMHgxLjI2OTYyMTEzNGRiOTI3ODNiZWI3Njc2YzBhYTljMmEzcC0yLAotICAgIDB4MS44MHAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzNAotICAgIC0weDEuODlmYTQ4NGQzNTViNWUxODZmNTY2MmIzZGEzZTc0NWJwLTMsCi0gICAgMHgxLmE2NjY2NnAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzNQotICAgIC0weDEuYWY4ZTg5MmQxNWRlODdlMmU5ZTU5ZGZmNWMwNjMzYmVwLTQsCi0gICAgMHgxLmNjY2NjY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDEzNgotICAgIC0weDEuOWVjZWJjYjU5N2VhMWJiNDNkODk2ZjU4NDc1OTc0NGFwLTYsCi0gICAgMHgxLmYzMzMzMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzNwotICAgIDB4MS44ZmIwNGI4ZGE2NWNlYjg1YTJlZGI3ZDBmZjBhZDJkM3AtNSwKLSAgICAweDEuMGNjY2NjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzgKLSAgICAweDEuZTI3MDc2ZTJhZjJlNWU5ZWE4N2ZmZTFmZTllMTU1ZGJwLTQsCi0gICAgMHgxLjIwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzkKLSAgICAweDEuNzU2NTA2NzM5ZWJhZjFjZDU4ODU1ZDIzMWU3NzdhNTlwLTMsCi0gICAgMHgxLjMzMzMzNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQwCi0gICAgMHgxLmYxOGRjZTI4OThmNWJhOTE5ZDgyNWQ5Njk2YzZjNzc0cC0zLAotICAgIDB4MS40NjY2NjhwMAotICB9LAotICB7IC8vIEVudHJ5IDE0MQotICAgIDB4MS4zMzRlYTU2NDQyNDAxM2I3NzM5YWZiYzk0Nzg3NDFiNXAtMiwKLSAgICAweDEuNTk5OTljcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDIKLSAgICAweDEuNmFhYzBkMGZlMzg3MWFiNjBkNzBkNDFlOTU0YzJiZDNwLTIsCi0gICAgMHgxLjZjY2NkMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQzCi0gICAgMHgxLjlmMzIzZWNiZjk4NGJmMmI2OGQ3NjZmNDA1MjIxODE5cC0yLAotICAgIDB4MS44MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ0Ci0gICAgMC4wLAotICAgIDB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDE0NQotICAgIDB4MS44NjYzZmQ2NTM4Yzg3MjM0OWVjMWE4NWUwNWVjNWZiNXAtNCwKLSAgICAweDEuMTk5OTlhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDYKLSAgICAweDEuNzU2NTA2NzM5ZWJhZjFjZDU4ODU1ZDIzMWU3NzdhNTlwLTMsCi0gICAgMHgxLjMzMzMzNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ3Ci0gICAgMHgxLjBjYTkzYjZmNTZhZmJhY2QwNzk3M2IwYTNjNjdmYzQ3cC0yLAotICAgIDB4MS40Y2NjY2VwMAotICB9LAotICB7IC8vIEVudHJ5IDE0OAotICAgIDB4MS41ODhjMzIyMzdjNmFlZmU5NmUxZGIyN2M0NjcxMGQzOXAtMiwKLSAgICAweDEuNjY2NjY4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDkKLSAgICAweDEuOWYzMjQ0MjE0ZWQ2ODY0N2RkYzc5OTgyM2UwNWE5YjFwLTIsCi0gICAgMHgxLjgwMDAwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUwCi0gICAgMHgxLmUxNDhhN2EyNzI2ODU5NGRmZDRkZDZjMzAxZmVjZTc5cC0yLAotICAgIDB4MS45OTk5OWNwMAotICB9LAotICB7IC8vIEVudHJ5IDE1MQotICAgIDB4MS4wZmFlODRkYzk1ZTFhN2Q5ODk3NDcyZDU1YTc1NjNlOHAtMSwKLSAgICAweDEuYjMzMzM2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTIKLSAgICAweDEuMmNmMjYzM2JjN2ZjOWQ5ZDk5MjkzMTlhYTkxODgyMmNwLTEsCi0gICAgMHgxLmNjY2NkMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUzCi0gICAgMHgxLjQ4YTExNjVkZjI3NGFiNzk2M2Y4NTUwZGNiZmI2YWVicC0xLAotICAgIDB4MS5lNjY2NmFwMAotICB9LAotICB7IC8vIEVudHJ5IDE1NAotICAgIDB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAtMSwKLSAgICAweDEucDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTUKLSAgICAweDEuMTU0MjQ1NzMzN2Q0MmUxYzZiNzNjODlkODYyYmExNzFwNiwKLSAgICAweDEucDEwMAotICB9LAotICB7IC8vIEVudHJ5IDE1NgotICAgIDB4MS4xNWEzZGU3MjkxMjI2MDM4Zjg5Yjc5MDc5ZGFkMWM4OXA2LAotICAgIDB4MS4xOTk5OWFwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU3Ci0gICAgMHgxLjE1ZmNmN2Y2NzFhMzhiOTU1MjIwMGI0YzE3YmFkZDJmcDYsCi0gICAgMHgxLjMzMzMzNHAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTgKLSAgICAweDEuMTY0ZWVlYWVhNzJhZGRkNzM4N2I1ZmQ4OTA2ODA5NmVwNiwKLSAgICAweDEuNGNjY2NlcDEwMAotICB9LAotICB7IC8vIEVudHJ5IDE1OQotICAgIDB4MS4xNjlhZDFhNTViNTA5OTBjNTRlMWU2NTAwMjcyMTI3ZnA2LAotICAgIDB4MS42NjY2NjhwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTYwCi0gICAgMHgxLjE2ZTE3N2I3NTkyMzA0YTJiMzUxOTAzNzA4NjlhNzFicDYsCi0gICAgMHgxLjgwMDAwMnAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjEKLSAgICAweDEuMTcyMzhlMWFkYTQ2OTY3NWI5NzExNjc0NDkyZGEwNDBwNiwKLSAgICAweDEuOTk5OTljcDEwMAotICB9LAotICB7IC8vIEVudHJ5IDE2MgotICAgIDB4MS4xNzYxYTI3Y2YwZmZmMTZjMWU4NmIxODMzMGUwOGMzOXA2LAotICAgIDB4MS5iMzMzMzZwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTYzCi0gICAgMHgxLjE3OWMyYTM5YWY2NDI3NTdhNmE2MWIwMGJiN2RkMjc2cDYsCi0gICAgMHgxLmNjY2NkMHAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjQKLSAgICAweDEuMTdkMzg3OWZmM2I5MTc3MzVlM2JiOTQ3YTFjMzk4NDdwNiwKLSAgICAweDEuZTY2NjZhcDEwMAotICB9LAotICB7IC8vIEVudHJ5IDE2NQotICAgIDB4MS4xODA4MGRkMzE3MWI2YzAzMWE5YjU3NmJlNjNiNmQ0Y3A2LAotICAgIDB4MS5wMTAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY2Ci0gICAgLTB4MS4wMDAwMDgwMDAwNTU1NTU5NTU1NTg4ODg4YjMzMzM1N3AtMjAsCi0gICAgMHgxLmZmZmZlMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE2NwotICAgIC0weDEuMDAwMDA0MDAwMDE1NTU1NWQ1NTU1ODg4ODg5ZGRkZGVwLTIxLAotICAgIDB4MS5mZmZmZjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjgKLSAgICAwLjAsCi0gICAgMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY5Ci0gICAgMHgxLmZmZmZmODAwMDAyYWFhYTlhYWFhYjExMTEwZTY2NjY3cC0yMiwKLSAgICAweDEuMDAwMDA4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzAKLSAgICAweDEuZmZmZmYwMDAwMGFhYWFhMmFhYWIxMTExMGJiYmJjMDRwLTIxLAotICAgIDB4MS4wMDAwMTBwMAotICB9LAotICB7IC8vIEVudHJ5IDE3MQotICAgIC0weDEuMDAwMDAwODAwMDAwNTU1NTU1OTU1NTU1ODg4ODg4YjNwLTI0LAotICAgIDB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzIKLSAgICAtMHgxLjAwMDAwMDgwMDAwMDU1NTU1NTk1NTU1NTg4ODg4OGIzcC0yNCwKLSAgICAweDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTczCi0gICAgLTB4MS4wMDAwMDA4MDAwMDA1NTU1NTU5NTU1NTU4ODg4ODhiM3AtMjQsCi0gICAgMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE3NAotICAgIC0weDEuMDAwMDAwODAwMDAwNTU1NTU1OTU1NTU1ODg4ODg4YjNwLTI0LAotICAgIDB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzUKLSAgICAtMHgxLjAwMDAwMDgwMDAwMDU1NTU1NTk1NTU1NTg4ODg4OGIzcC0yNCwKLSAgICAweDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc2Ci0gICAgLTB4MS4wMDAwMDA4MDAwMDA1NTU1NTU5NTU1NTU4ODg4ODhiM3AtMjQsCi0gICAgMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE3NwotICAgIC0weDEuMDAwMDAwODAwMDAwNTU1NTU1OTU1NTU1ODg4ODg4YjNwLTI0LAotICAgIDB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzgKLSAgICAtMHgxLjAwMDAwMDgwMDAwMDU1NTU1NTk1NTU1NTg4ODg4OGIzcC0yNCwKLSAgICAweDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc5Ci0gICAgLTB4MS4wMDAwMDA4MDAwMDA1NTU1NTU5NTU1NTU4ODg4ODhiM3AtMjQsCi0gICAgMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE4MAotICAgIC0weDEuMDAwMDAwODAwMDAwNTU1NTU1OTU1NTU1ODg4ODg4YjNwLTI0LAotICAgIDB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODEKLSAgICAtMHgxLjAwMDAwMDgwMDAwMDU1NTU1NTk1NTU1NTg4ODg4OGIzcC0yNCwKLSAgICAweDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTgyCi0gICAgLTB4MS4wMDAwMDA4MDAwMDA1NTU1NTU5NTU1NTU4ODg4ODhiM3AtMjQsCi0gICAgMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE4MwotICAgIC0weDEuMDAwMDAwODAwMDAwNTU1NTU1OTU1NTU1ODg4ODg4YjNwLTI0LAotICAgIDB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODQKLSAgICAtMHgxLjAwMDAwMDgwMDAwMDU1NTU1NTk1NTU1NTg4ODg4OGIzcC0yNCwKLSAgICAweDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg1Ci0gICAgLTB4MS4wMDAwMDA4MDAwMDA1NTU1NTU5NTU1NTU4ODg4ODhiM3AtMjQsCi0gICAgMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE4NgotICAgIDB4MS42MmU0MmZlYmEzOWVmMTU3OTNjNjExZGFiMTkwOTgwOHA2LAotICAgIDB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTg3Ci0gICAgLTB4MS45ZDFkOWZjY2Y0NzcwNzQzZjIwNjFlMWRlOTMxYTY1MHA2LAotICAgIDB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDE4OAotICAgIC0weDEuNjJlNDM2YmRkMDlhODc2MTk0OTQwYjk2Y2IyOGZkN2ZwLTIsCi0gICAgMHgxLjZhMDllNHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE4OQotICAgIC0weDEuNjJlNDMxMTVhOGZiNDdjM2E3YzJlNzZhODBjY2E5YTVwLTIsCi0gICAgMHgxLjZhMDllNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE5MAotICAgIC0weDEuNjJlNDJiNmQ4MTY0MDgyNWJmODlkOGI4ZDlkMGZmNThwLTIsCi0gICAgMHgxLjZhMDllOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE5MQotICAgIDB4MS42MmU0MjkyMTc2YTM1ZjRkOTJmYWMyYzk0NGEyZGQzZHAtMiwKLSAgICAweDEuNmEwOWU0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTIKLSAgICAweDEuNjJlNDJlYzk5ZTQyOWVlYjdmY2JlNmY1OGVmZjMxMTdwLTIsCi0gICAgMHgxLjZhMDllNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkzCi0gICAgMHgxLjYyZTQzNDcxYzVkOWRlODk2ODA0ZjVhNzM1ZmFkYjY1cC0yLAotICAgIDB4MS42YTA5ZThwMAotICB9LAotICB7IC8vIEVudHJ5IDE5NAotICAgIC0weDEuNjJlNDMxZWZhMzlmZjM1Nzk0NzIxMWRiMzI5MDk4NmZwLTEsCi0gICAgMHgxLmZmZmZmZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDE5NQotICAgIC0weDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwLTEsCi0gICAgMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE5NgotICAgIC0weDEuNjJlNDJiZWZhM2EyZjM1NzhlNzIxMWUyYjI5MDhiM2NwLTEsCi0gICAgMHgxLjAwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE5NwotICAgIC0weDEuMjY5NjI2NjhhMzEyMGIxMWZhYzQwYmM3YjIyYjVhOGRwLTIsCi0gICAgMHgxLjdmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE5OAotICAgIC0weDEuMjY5NjIxMTM0ZGI5Mjc4M2JlYjc2NzZjMGFhOWMyYTNwLTIsCi0gICAgMHgxLjgwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk5Ci0gICAgLTB4MS4yNjk2MWJiZGY4Njc2MDY3NDljNzM0ZGRkMWM2MzEwYnAtMiwKLSAgICAweDEuODAwMDAycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAwCi0gICAgMHgxLjlmMzIzOTc2YTQyYmRiOWQyY2NhYzI5ODVkYTA4MDJmcC0yLAotICAgIDB4MS43ZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDIwMQotICAgIDB4MS45ZjMyM2VjYmY5ODRiZjJiNjhkNzY2ZjQwNTIyMTgxOXAtMiwKLSAgICAweDEuODBwMAotICB9LAotICB7IC8vIEVudHJ5IDIwMgotICAgIDB4MS45ZjMyNDQyMTRlZDY4NjQ3ZGRjNzk5ODIzZTA1YTliMXAtMiwKLSAgICAweDEuODAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDMKLSAgICAweDEuNTRkZTZlZTc4OTg5YTlhY2ZjODc1YzFkNDVlMTY0OTBwLTksCi0gICAgMHgxLjAwYWFhOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA0Ci0gICAgMHgxLjU0ZTI2YzNlYWI2ZWEyNDExNWE0ZWNiYzZjMjFjM2RlcC05LAotICAgIDB4MS4wMGFhYWFwMAotICB9LAotICB7IC8vIEVudHJ5IDIwNQotICAgIDB4MS41NGU2Njk5NWM1NWUzYWQ0MGNiMmIwMWQ3N2I4YjYzZnAtOSwKLSAgICAweDEuMDBhYWFjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDYKLSAgICAweDEuNjJlNDJlZWZhMzllNzM1NzkzNzIxMWRhNzI5MDk3ZDVwMCwKLSAgICAweDEuZmZmZmZlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDcKLSAgICAweDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwMCwKLSAgICAweDEucDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDgKLSAgICAweDEuNjJlNDMxZWZhMzljZjM1Nzk2NzIxMWQ2YjI5MDllNmZwMCwKLSAgICAweDEuMDAwMDAycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDkKLSAgICAweDEuNjJlNDJkZWZhMzlkZjM1NzkzMWNiYzg0ZGQzYjQyNGRwLTEsCi0gICAgMHgxLmZmZmZmZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEwCi0gICAgMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcC0xLAotICAgIDB4MS5wMQotICB9LAotICB7IC8vIEVudHJ5IDIxMQotICAgIDB4MS42MmU0MzNlZmEzOWFmMzU3OTkxY2JjN2Q1ZDNiNGY4MHAtMSwKLSAgICAweDEuMDAwMDAycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTIKLSAgICAtMHgxLjAwMDAwMDgwMDAwMDU1NTU1NTk1NTU1NTg4ODg4OGIzcC0yNCwKLSAgICAweDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEzCi0gICAgMC4wLAotICAgIDB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDIxNAotICAgIDB4MS5mZmZmZmUwMDAwMDJhYWFhYTZhYWFhYjExMTExMDY2NnAtMjQsCi0gICAgMHgxLjAwMDAwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE1Ci0gICAgLTB4MS42MmU0MzFlZmEzOWZmMzU3OTQ3MjExZGIzMjkwOTg2ZnAtMSwKLSAgICAweDEuZmZmZmZlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE2Ci0gICAgLTB4MS42MmU0MmZlZmEzOWVmMzU3OTNjNzY3MzAwN2U1ZWQ1ZXAtMSwKLSAgICAweDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE3Ci0gICAgLTB4MS42MmU0MmJlZmEzYTJmMzU3OGU3MjExZTJiMjkwOGIzY3AtMSwKLSAgICAweDEuMDAwMDAycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE4Ci0gICAgLTB4MS42MmU0MzBlZmEzOWY3MzU3OTQxY2JjODU5ZDNiNDJlN3AwLAotICAgIDB4MS5mZmZmZmVwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTkKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDAsCi0gICAgMHgxLnAtMgotICB9LAotICB7IC8vIEVudHJ5IDIyMAotICAgIC0weDEuNjJlNDJkZWZhM2EwZjM1NzkxMWNiYzg5NWQzYjNjNGRwMCwKLSAgICAweDEuMDAwMDAycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMjIxCi0gICAgLTB4MS4wYTJiMjQ3M2JhYjc3NjgxYWYwMDM4MGVkMDk3MWNjYnAxLAotICAgIDB4MS5mZmZmZmVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjIKLSAgICAtMHgxLjBhMmIyM2YzYmFiNzM2ODFhZWQ1OGQ2NDA1ZWM3MjA2cDEsCi0gICAgMHgxLnAtMwotICB9LAotICB7IC8vIEVudHJ5IDIyMwotICAgIC0weDEuMGEyYjIyZjNiYWI4MzY4MWFkODAzODEwYjA5NzE5N2VwMSwKLSAgICAweDEuMDAwMDAycC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMjI0Ci0gICAgLTB4MS42MmU0MzA2ZmEzOWYzMzU3OTNmMjExZGFkMjkwOTgyMnAxLAotICAgIDB4MS5mZmZmZmVwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjUKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDEsCi0gICAgMHgxLnAtNAotICB9LAotICB7IC8vIEVudHJ5IDIyNgotICAgIC0weDEuNjJlNDJlZWZhMzlmZjM1NzkyNzIxMWRjYjI5MDk0ZDVwMSwKLSAgICAweDEuMDAwMDAycC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjI3Ci0gICAgLTB4MS5iYjlkM2M2YjhjODZmMDJkNzhlM2ViYTZkNDhhMTM3YXAxLAotICAgIDB4MS5mZmZmZmVwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjgKLSAgICAtMHgxLmJiOWQzYmViOGM4NmIwMmQ3OGI5NDBmYzA5ZGY2OGI2cDEsCi0gICAgMHgxLnAtNQotICB9LAotICB7IC8vIEVudHJ5IDIyOQotICAgIC0weDEuYmI5ZDNhZWI4Yzg3YjAyZDc3NjNlYmE4YjQ4YTEwMmRwMSwKLSAgICAweDEuMDAwMDAycC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjMwCi0gICAgLTB4MS4wYTJiMjQzM2JhYjc1NjgxYWVlYWUyYjk2YjQxYzc2OXAyLAotICAgIDB4MS5mZmZmZmVwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzEKLSAgICAtMHgxLjBhMmIyM2YzYmFiNzM2ODFhZWQ1OGQ2NDA1ZWM3MjA2cDIsCi0gICAgMHgxLnAtNgotICB9LAotICB7IC8vIEVudHJ5IDIzMgotICAgIC0weDEuMGEyYjIzNzNiYWI3YjY4MWFlMmFlMmJhNWI0MWM1YzJwMiwKLSAgICAweDEuMDAwMDAycC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjMzCi0gICAgLTB4MS4zNjg3YWEzMWFmMmIzNGVjYTE2M2NmOWY2YzNlODUxNHAyLAotICAgIDB4MS5mZmZmZmVwLTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzQKLSAgICAtMHgxLjM2ODdhOWYxYWYyYjE0ZWNhMTRlN2E0YTA2ZTkyZmIycDIsCi0gICAgMHgxLnAtNwotICB9LAotICB7IC8vIEVudHJ5IDIzNQotICAgIC0weDEuMzY4N2E5NzFhZjJiOTRlY2EwYTNjZmEwNWMzZTgzNmVwMiwKLSAgICAweDEuMDAwMDAycC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM2Ci0gICAgLTB4MS42MmU0MzAyZmEzOWYxMzU3OTNkY2JjODU2ZDNiNDJjMHAyLAotICAgIDB4MS5mZmZmZmVwLTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzcKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDIsCi0gICAgMHgxLnAtOAotICB9LAotICB7IC8vIEVudHJ5IDIzOAotICAgIC0weDEuNjJlNDJmNmZhMzlmNzM1NzkzMWNiYzg2NWQzYjQxMWFwMiwKLSAgICAweDEuMDAwMDAycC04Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM5Ci0gICAgLTB4MS44ZjQwYjYyZDk4MTJmMWMyODY1NWE5NmI2ZTM4MDA2Y3AyLAotICAgIDB4MS5mZmZmZmVwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQwCi0gICAgLTB4MS44ZjQwYjVlZDk4MTJkMWMyODY0MDU0MTYwOGUyYWIwYXAyLAotICAgIDB4MS5wLTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDEKLSAgICAtMHgxLjhmNDBiNTZkOTgxMzUxYzI4NTk1YTk2YzVlMzdmZWM2cDIsCi0gICAgMHgxLjAwMDAwMnAtOQotICB9LAotICB7IC8vIEVudHJ5IDI0MgotICAgIC0weDEuYmI5ZDNjMmI4Yzg2ZDAyZDc4Y2U5NjUxNmYzNGJlMThwMiwKLSAgICAweDEuZmZmZmZlcC0xMQotICB9LAotICB7IC8vIEVudHJ5IDI0MwotICAgIC0weDEuYmI5ZDNiZWI4Yzg2YjAyZDc4Yjk0MGZjMDlkZjY4YjZwMiwKLSAgICAweDEucC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI0NAotICAgIC0weDEuYmI5ZDNiNmI4Yzg3MzAyZDc4MGU5NjUyNWYzNGJjNzFwMiwKLSAgICAweDEuMDAwMDAycC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI0NQotICAgIC0weDEuMjA1OTY3MTJiNGYxMzViNzI4MWNhZTgxYjkxNTdiOGRwMywKLSAgICAweDEuZmZmZmZlcC0xNAotICB9LAotICB7IC8vIEVudHJ5IDI0NgotICAgIC0weDEuMjA1OTY2ZjJiNGYxMjViNzI4MTIwM2Q3MDY2YWQwZGNwMywKLSAgICAweDEucC0xMwotICB9LAotICB7IC8vIEVudHJ5IDI0NwotICAgIC0weDEuMjA1OTY2YjJiNGYxNjViNzI3YmNhZTgyMzExNTdhYmFwMywKLSAgICAweDEuMDAwMDAycC0xMwotICB9LAotICB7IC8vIEVudHJ5IDI0OAotICAgIC0weDEuMjA1OTY3MTJiNGYxMzViNzI4MWNhZTgxYjkxNTdiOGRwMywKLSAgICAweDEuZmZmZmZlcC0xNAotICB9LAotICB7IC8vIEVudHJ5IDI0OQotICAgIC0weDEuMjA1OTY2ZjJiNGYxMjViNzI4MTIwM2Q3MDY2YWQwZGNwMywKLSAgICAweDEucC0xMwotICB9LAotICB7IC8vIEVudHJ5IDI1MAotICAgIC0weDEuMjA1OTY2YjJiNGYxNjViNzI3YmNhZTgyMzExNTdhYmFwMywKLSAgICAweDEuMDAwMDAycC0xMwotICB9LAotICB7IC8vIEVudHJ5IDI1MQotICAgIC0weDEuMGEyYjI0NzNiYWI3NzY4MWFmMDAzODBlZDA5NzFjY2JwMSwKLSAgICAweDEuZmZmZmZlcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjUyCi0gICAgLTB4MS4wYTJiMjNmM2JhYjczNjgxYWVkNThkNjQwNWVjNzIwNnAxLAotICAgIDB4MS5wLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTMKLSAgICAtMHgxLjBhMmIyMmYzYmFiODM2ODFhZDgwMzgxMGIwOTcxOTdlcDEsCi0gICAgMHgxLjAwMDAwMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDI1NAotICAgIC0weDEuMTE3OGYxNDcxMDk2MWJlZGFmOWY3OTlhNTNhZmMzM2RwLTMsCi0gICAgMHgxLmJmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDI1NQotICAgIC0weDEuMTE3OGU4MjI3ZTQ3YmRlMzM4YjQxZmM3MmRlODFlM2JwLTMsCi0gICAgMHgxLmMwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU2Ci0gICAgLTB4MS4xMTc4ZGVmZGVjMDNkMmM5MTU2MDQ4OTc5NzFiNzY1OHAtMywKLSAgICAweDEuYzAwMDAycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU3Ci0gICAgLTB4MS42MmU0MzA2ZmEzOWYzMzU3OTNmMjExZGFkMjkwOTgyMnAxLAotICAgIDB4MS5mZmZmZmVwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTgKLSAgICAtMHgxLjYyZTQyZmVmYTM5ZWYzNTc5M2M3NjczMDA3ZTVlZDVlcDEsCi0gICAgMHgxLnAtNAotICB9LAotICB7IC8vIEVudHJ5IDI1OQotICAgIC0weDEuNjJlNDJlZWZhMzlmZjM1NzkyNzIxMWRjYjI5MDk0ZDVwMSwKLSAgICAweDEuMDAwMDAycC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjYwCi0gICAgLTB4MS4wODU5OWM2YWY0YmE5M2M2OTNiMTMxMjJmNjgyNGE4YnAtNCwKLSAgICAweDEuZGZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYxCi0gICAgLTB4MS4wODU5OGI1OWUzYTA2ODhhM2ZkOWJmNTAzMzcyYzEyZnAtNCwKLSAgICAweDEuZTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjIKLSAgICAtMHgxLjA4NTk3YTQ4ZDI5ODcxYTQ2NDlkMGE2NmNjYmQ1ZWRicC00LAotICAgIDB4MS5lMDAwMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjMKLSAgICAtMHgxLmJiOWQzYzZiOGM4NmYwMmQ3OGUzZWJhNmQ0OGExMzdhcDEsCi0gICAgMHgxLmZmZmZmZXAtNgotICB9LAotICB7IC8vIEVudHJ5IDI2NAotICAgIC0weDEuYmI5ZDNiZWI4Yzg2YjAyZDc4Yjk0MGZjMDlkZjY4YjZwMSwKLSAgICAweDEucC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjY1Ci0gICAgLTB4MS5iYjlkM2FlYjhjODdiMDJkNzc2M2ViYThiNDhhMTAyZHAxLAotICAgIDB4MS4wMDAwMDJwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjYKLSAgICAtMHgxLjA0MTVmOWE2YjY2NWQ3YTdiOTk1OGQ3ZDI4ZjYyYTc0cC01LAotICAgIDB4MS5lZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjcKLSAgICAtMHgxLjA0MTVkODllNzQ0NDQ3MDE3M2M3NWQ0ZDg4ODlkZTBlcC01LAotICAgIDB4MS5mMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDI2OAotICAgIC0weDEuMDQxNWI3OTYzMjQ0Y2Y2NTkxOWE1NzhiMmRhYTI5ZDVwLTUsCi0gICAgMHgxLmYwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDI2OQotICAgIC0weDEuMGEyYjI0MzNiYWI3NTY4MWFlZWFlMmI5NmI0MWM3NjlwMiwKLSAgICAweDEuZmZmZmZlcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjcwCi0gICAgLTB4MS4wYTJiMjNmM2JhYjczNjgxYWVkNThkNjQwNWVjNzIwNnAyLAotICAgIDB4MS5wLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzEKLSAgICAtMHgxLjBhMmIyMzczYmFiN2I2ODFhZTJhZTJiYTViNDFjNWMycDIsCi0gICAgMHgxLjAwMDAwMnAtNgotICB9LAotICB7IC8vIEVudHJ5IDI3MgotICAgIC0weDEuMDIwNWE2OGQ0NWU2N2VkMDFlMTBlMzIyYmQ0M2ExNzBwLTYsCi0gICAgMHgxLmY3ZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDI3MwotICAgIC0weDEuMDIwNTY1ODkzNTg0NzQ5ZjIzYTEwNWI5YzdiYjlhNmZwLTYsCi0gICAgMHgxLmY4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc0Ci0gICAgLTB4MS4wMjA1MjQ4NTI1NjQ3NmFmNmY0ZGFhYmQxMzliNWU1N3AtNiwKLSAgICAweDEuZjgwMDAycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc1Ci0gICAgLTB4MS4zNjg3YWEzMWFmMmIzNGVjYTE2M2NmOWY2YzNlODUxNHAyLAotICAgIDB4MS5mZmZmZmVwLTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzYKLSAgICAtMHgxLjM2ODdhOWYxYWYyYjE0ZWNhMTRlN2E0YTA2ZTkyZmIycDIsCi0gICAgMHgxLnAtNwotICB9LAotICB7IC8vIEVudHJ5IDI3NwotICAgIC0weDEuMzY4N2E5NzFhZjJiOTRlY2EwYTNjZmEwNWMzZTgzNmVwMiwKLSAgICAweDEuMDAwMDAycC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjc4Ci0gICAgLTB4MS4wMTAxZDg1YTkyMzAyNWI1NGNiYWFlNDk5ZDVlNDBiZnAtNywKLSAgICAweDEuZmJmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc5Ci0gICAgLTB4MS4wMTAxNTc1ODhkZTcxMjhjY2M1YTgyZjlkYTAwZjQ4YnAtNywKLSAgICAweDEuZmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODAKLSAgICAtMHgxLjAxMDBkNjU2OGEyMDA1NzQ3NDViMzlmMGFhZTI2Njg1cC03LAotICAgIDB4MS5mYzAwMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODEKLSAgICAtMHgxLjYyZTQzMDJmYTM5ZjEzNTc5M2RjYmM4NTZkM2I0MmMwcDIsCi0gICAgMHgxLmZmZmZmZXAtOQotICB9LAotICB7IC8vIEVudHJ5IDI4MgotICAgIC0weDEuNjJlNDJmZWZhMzllZjM1NzkzYzc2NzMwMDdlNWVkNWVwMiwKLSAgICAweDEucC04Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjgzCi0gICAgLTB4MS42MmU0MmY2ZmEzOWY3MzU3OTMxY2JjODY1ZDNiNDExYXAyLAotICAgIDB4MS4wMDAwMDJwLTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODQKLSAgICAtMHgxLjAwODE1Njk2OGEzNTVhNjhmMmJlOWIwMzU3NzJjOWMzcC04LAotICAgIDB4MS5mZGZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODUKLSAgICAtMHgxLjAwODA1NTk1ODhiMzU3ZTU5OGUzM2Q4ZDlkYjM3YTI5cC04LAotICAgIDB4MS5mZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDI4NgotICAgIC0weDEuMDA3ZjU0OTQ4ODMzNTg2NjQ0MGRlN2ExZjIwODQ3MzZwLTgsCi0gICAgMHgxLmZlMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDI4NwotICAgIC0weDEuOGY0MGI2MmQ5ODEyZjFjMjg2NTVhOTZiNmUzODAwNmNwMiwKLSAgICAweDEuZmZmZmZlcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI4OAotICAgIC0weDEuOGY0MGI1ZWQ5ODEyZDFjMjg2NDA1NDE2MDhlMmFiMGFwMiwKLSAgICAweDEucC05Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjg5Ci0gICAgLTB4MS44ZjQwYjU2ZDk4MTM1MWMyODU5NWE5NmM1ZTM3ZmVjNnAyLAotICAgIDB4MS4wMDAwMDJwLTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTAKLSAgICAtMHgxLjAwNDIxNjVkZDljYWZmNDE5YjFlY2NkZjcyMGEzNmQycC05LAotICAgIDB4MS5mZWZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTEKLSAgICAtMHgxLjAwNDAxNTVkNTg4OWRlNzA2NzFlZWVjMGJmY2VmZTUzcC05LAotICAgIDB4MS5mZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDI5MgotICAgIC0weDEuMDAzZTE0NWNkOTRhYmYyMDMzYmY3MWRjMzAyODUyMGNwLTksCi0gICAgMHgxLmZmMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDI5MwotICAgIC0weDEuYmI5ZDNjMmI4Yzg2ZDAyZDc4Y2U5NjUxNmYzNGJlMThwMiwKLSAgICAweDEuZmZmZmZlcC0xMQotICB9LAotICB7IC8vIEVudHJ5IDI5NAotICAgIC0weDEuYmI5ZDNiZWI4Yzg2YjAyZDc4Yjk0MGZjMDlkZjY4YjZwMiwKLSAgICAweDEucC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI5NQotICAgIC0weDEuYmI5ZDNiNmI4Yzg3MzAyZDc4MGU5NjUyNWYzNGJjNzFwMiwKLSAgICAweDEuMDAwMDAycC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI5NgotICAgIC0weDEuMDAyNDA2NTY5Nzk5OTc5N2YzNzdjYjg1Mjc1MDI0MGJwLTEwLAotICAgIDB4MS5mZjdmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTcKLSAgICAtMHgxLjAwMjAwNTU2NTU4ODkzMzU3Y2Q3ZTFmNDg2YmQwNzA1cC0xMCwKLSAgICAweDEuZmY4MHAtMQotICB9LAotICB7IC8vIEVudHJ5IDI5OAotICAgIC0weDEuMDAxYzA0NTYxNzc5OGY5MzQ2NGMwMDY3YTdlYWFlNGZwLTEwLAotICAgIDB4MS5mZjgwMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTkKLSAgICAtMHgxLjIwNTk2NzEyYjRmMTM1YjcyODFjYWU4MWI5MTU3YjhkcDMsCi0gICAgMHgxLmZmZmZmZXAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDAKLSAgICAtMHgxLjIwNTk2NmYyYjRmMTI1YjcyODEyMDNkNzA2NmFkMGRjcDMsCi0gICAgMHgxLnAtMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDEKLSAgICAtMHgxLjIwNTk2NmIyYjRmMTY1YjcyN2JjYWU4MjMxMTU3YWJhcDMsCi0gICAgMHgxLjAwMDAwMnAtMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDIKLSAgICAtMHgxLjAwMjQwMTE1NmRkNjk4YTE0YTE5Mzg1N2I2YjJlMmJkcC0xMywKLSAgICAweDEuZmZlZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAzCi0gICAgLTB4MS4wMDA0MDAxNTU1ZDU1ODg4OWRkZTcwMmIwMjhjOTk5NnAtMTMsCi0gICAgMHgxLmZmZjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDQKLSAgICAtMHgxLmZmYzdmZTJhYmJhYzMxMGZlNTQ3ODQwMTVkMjNhNjFkcC0xNCwKLSAgICAweDEuZmZmMDAycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA1Ci0gICAgSFVHRV9WQUxGLAotICAgIEhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDMwNgotICAgIDB4MS42MmU0MmZlYmEzOWVmMTU3OTNjNjExZGFiMTkwOTgwOHA2LAotICAgIDB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzA3Ci0gICAgMHgxLjYyZTQyZmU3YTM5ZWViNTc5M2JjYmM4NTRkM2I0MjlhcDYsCi0gICAgMHgxLmZmZmZmY3AxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDgKLSAgICAweDEuMjUwZDA1MDVmZWNlODNmNWYzMzI4Y2MzMjJmNjUxNTNwMCwKLSAgICAweDEuOTIxZmI2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDkKLSAgICAweDEuY2U2YmI0MzhiM2ZjMjkyOGE1M2I2NGFjN2MwZDZhOTFwLTIsCi0gICAgMHgxLjkyMWZiNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzEwCi0gICAgMHgxLmZmZmZmZTAwMDAwMmFhYWFhNmFhYWFiMTExMTEwNjY2cC0yNCwKLSAgICAweDEuMDAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTEKLSAgICAwLjAsCi0gICAgMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzEyCi0gICAgLTB4MS4wMDAwMDA4MDAwMDA1NTU1NTU5NTU1NTU4ODg4ODhiM3AtMjQsCi0gICAgMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDMxMwotICAgIC0weDEuZWViOTU3NGQyNjgzN2IwZDA0YTZkMzY3Mjc3Y2UwNTZwLTMsCi0gICAgMHgxLjkyMWZiNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDMxNAotICAgIC0weDEuNWQ1ODlmMjdlNTEwN2Y4YTM1NmQ5ZWU4YWQxYmFhZTRwNiwKLSAgICAweDEuMDAwMDAycC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTUKLSAgICAtMHgxLjVkNTg5ZjJmZTUxMDc3OGEzNTc4NDk5MzQ3YzY1NWE5cDYsCi0gICAgMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzE2Ci0gICAgLTB4MS41ZDU4OWYzN2U1MTA3ZjhhMzU4MmY0M2UwMjcxMDA2ZHA2LAotICAgIDB4MS5mZmZmZmNwLTEyNwotICB9LAotICB7IC8vIEVudHJ5IDMxNwotICAgIC0weDEuNWQ1ODlmM2ZlNTEwOTc4YTM1Y2Q5ZWU5OWQxYmFlMzFwNiwKLSAgICAweDEuZmZmZmY4cC0xMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTgKLSAgICAtMHgxLjlhNTdkNzZkMTUyZmM5NWQ0MmRlOGY0Zjg5MjFkYTc1cDYsCi0gICAgMHgxLnAtMTQ4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzE5Ci0gICAgLTB4MS45ZDFkOWZjY2Y0NzcwNzQzZjIwNjFlMWRlOTMxYTY1MHA2LAotICAgIDB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDMyMAotICAgIC1IVUdFX1ZBTEYsCi0gICAgMC4wZgotICB9LAotICB7IC8vIEVudHJ5IDMyMQotICAgIC1IVUdFX1ZBTEYsCi0gICAgLTAuMGYKLSAgfSwKLX07Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwotCi1URVNUKG1hdGhfbG9nZiwgbG9nZl9pbnRlbCkgewotI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplb2YoZ19sb2dmX2ludGVsX2RhdGEpL3NpemVvZihsb2dmX2ludGVsX2RhdGFfdCk7IGkrKykgewotICAgIEVYUEVDVF9GTE9BVF9FUShnX2xvZ2ZfaW50ZWxfZGF0YVtpXS5leHBlY3RlZCwgbG9nZihnX2xvZ2ZfaW50ZWxfZGF0YVtpXS5jYWxsX2RhdGEpKSA8PCAiRmFpbGVkIG9uIGVsZW1lbnQgIiA8PCBpOwotICB9Ci0jZWxzZSAvLyBfX0JJT05JQ19fCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCi19CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX3Bvd190ZXN0LmNwcCBiL3Rlc3RzL21hdGhfcG93X3Rlc3QuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjMTg1NDI0Li4wMDAwMDAwCi0tLSBhL3Rlc3RzL21hdGhfcG93X3Rlc3QuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMzMwMCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLQotI2luY2x1ZGUgPG1hdGguaD4KLQotI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+Ci0KLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCi10eXBlZGVmIHN0cnVjdCB7Ci0gIGRvdWJsZSBleHBlY3RlZDsKLSAgZG91YmxlIHhfY2FsbF9kYXRhOwotICBkb3VibGUgeV9jYWxsX2RhdGE7Ci19IHBvd19pbnRlbF9kYXRhX3Q7Ci0KLXN0YXRpYyBwb3dfaW50ZWxfZGF0YV90IGdfcG93X2ludGVsX2RhdGFbXSA9IHsKLSAgeyAvLyBFbnRyeSAwCi0gICAgMHgxLnAwLAotICAgIC0weDEuMHAtMTAsIDAuMAotICB9LAotICB7IC8vIEVudHJ5IDEKLSAgICAweDEucDAsCi0gICAgLTB4MS4wcC0yMCwgMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgMgotICAgIC1IVUdFX1ZBTCwKLSAgICAtSFVHRV9WQUwsIDB4MS4wMDAwMDAwMDAwMDAxcDUyCi0gIH0sCi0gIHsgLy8gRW50cnkgMwotICAgIC0weDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDFmZmZmZmZwMjAsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yMSwgLTB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0Ci0gICAgMHgxLnAwLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNDEsIDAuMAotICB9LAotICB7IC8vIEVudHJ5IDUKLSAgICAweDEuMDAwMDAwMDAwMDAwYTAwMDAwMDAwMDAwMmRwLTQxMCwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTQxLCAweDEuNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNgotICAgIDB4MS45MjQxYjcwN2Y2ZGFkZmY5NTVmZDg5MTkzYjY3ZDMzMXAtNzYsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDA5cDAsIC0weDEuNzM2NGQ5MzY0ZDkzZXA1NAotICB9LAotICB7IC8vIEVudHJ5IDcKLSAgICAweDEuZmZmZmUwMDAwMGZmZmZmYWJhYWFiZWZmZmZjM2IxMTFwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDEwcDAsIC0weDEuMHAyOAotICB9LAotICB7IC8vIEVudHJ5IDgKLSAgICAtMHgxLmZmZmZmZWZmYWMwMDQwM2IwYzZkNDI0YWNkOTAwOTUzcDk2NCwKLSAgICAtMHgxLjAwMDAwMDAwMjIwcC0xLCAtMHgxLmUyOHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgOQotICAgIDB4MS5mZmU4OGY4OThmYWQ2ODA1ZWY1NDI1Y2EzNTcyZjFlOHA3MDUsCi0gICAgLTB4MS4wMDAwMDQ0cC0xLCAtMHgxLjYxMHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAKLSAgICAtMHgxLmZmZjAwMDdmZmMwMDFmZmYwMDA3ZmZjMDAxZmZmMHA0MCwKLSAgICAtMHgxLjAwMDgwcC00MSwgLTB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMQotICAgIDB4MS5mZjYwMWI3YzkwNTk1ODJlOWM1Y2Q0YmRlMDIxZjQ2MnA0MDksCi0gICAgLTB4MS4wMDA4MHAtNDEsIC0weDEuNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIKLSAgICAtMHgxLjAwMjgwMjgwMTQwMDUwMDA4MHAyMDAsCi0gICAgLTB4MS4wMDA4MHA0MCwgMHgxLjRwMgotICB9LAotICB7IC8vIEVudHJ5IDEzCi0gICAgMHgxLmZmYTAwYTdmMTRjMzM3ZmNlY2ZmYzEwNzI0NGY5NmRmcDI0NSwKLSAgICAtMHgxLjAwMDgwMDAwMDBmMTRwLTQxLCAtMHgxLjhwMgotICB9LAotICB7IC8vIEVudHJ5IDE0Ci0gICAgMHgxLmZmODAxMWZkM2JlNTc3ZmVjODVmZmM1ZDYwYjAzMzRlcC0zMjEsCi0gICAgLTB4MS4wMDA4MDAwMDBlNDg0cDQwLCAtMHgxLjBwMwotICB9LAotICB7IC8vIEVudHJ5IDE1Ci0gICAgMHgxLjZiM2M0NjQxNTQzMGMwMDRlOWZkMGIzNWY4ZWM2ZmQ1cC0xLAotICAgIC0weDEuMDQ2ZThiZmZmZmZjMnAwLCAtMHgxLjRwNAotICB9LAotICB7IC8vIEVudHJ5IDE2Ci0gICAgMC4wLAotICAgIC0weDEuNTE4cC0xMDY1LCAweDEuMHAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTcKLSAgICAweDEuMjAwMDAwNjAwMDAwMDhwLTgxLAotICAgIC0weDEuODAwMDAwNHAtNDEsIDB4MS4wcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOAotICAgIDB4MS5jM2Q2YTIxNTdiNjIzNDA3ZThjODIxMjg5ZWJhYzJiNnAtMSwKLSAgICAtMHgxLmZmZmZmYmZmZmZmZmZwLTEsIDB4MS4wcDIwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkKLSAgICAtMHgxLjAwMDAwMDYwMDAwMDMwMDAwMDExMDAwMDA2MzAwMDAycDAsCi0gICAgLTB4MS5mZmZmZmZiZmZmZmZmcC0xLCAtMHgxLjhwMQotICB9LAotICB7IC8vIEVudHJ5IDIwCi0gICAgLTB4MS4wMDAwMDBlMDAwMDBhODAwMDA2MjAwMDAzM2EwMDAxOHAzNSwKLSAgICAtMHgxLmZmZmZmZmJmZmZmZmZwLTYsIC0weDEuY3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEKLSAgICAtMHgxLjAwMDAwMGUwMDAwMGE4MDAwMDYyMDAwMDMzYTAwMDE4cDI4MCwKLSAgICAtMHgxLmZmZmZmZmJmZmZmZmZwLTQxLCAtMHgxLmNwMgotICB9LAotICB7IC8vIEVudHJ5IDIyCi0gICAgLTB4MS4wMDAwMDBlMDAwMDBhODAwMDA2MjAwMDAzM2EwMDAxOHAtMjg3LAotICAgIC0weDEuZmZmZmZmYmZmZmZmZnA0MCwgLTB4MS5jcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMwotICAgIC0weDEuZmZmZmZlNDAwMDAwMzgwMDAwMzBmZmZmZjQ5ZmZmZmRwMjg2LAotICAgIC0weDEuZmZmZmZmYmZmZmZmZnA0MCwgMHgxLmNwMgotICB9LAotICB7IC8vIEVudHJ5IDI0Ci0gICAgMHgxLmZmZmZmZjgwMDAwMDA4cC0yMSwKLSAgICAtMHgxLmZmZmZmZmNwLTExLCAweDEuMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUKLSAgICAtMHgxLjAwMDAwMDAwMDEwMDA4MDAwMDAxMDAxMDAwNDAwMXA0MCwKLSAgICAtMHgxLmZmZmZmZmZmZmRmZmZwLTQxLCAtMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDI2Ci0gICAgLTB4MS4wMDAwMDAwMDAwMGM5ODAwMDAwMDAwOWU5YTQwcDQwLAotICAgIC0weDEuZmZmZmZmZmZmZmU2ZHAtNDEsIC0weDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcKLSAgICAtMHgxLmZmZmZmZmZkZmZmZmUwMDEwMDAwMGZmZmFhYWFhYWFhcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMSwgMHgxLjAwMDAxcDIwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwNDBwMCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkKLSAgICAtSFVHRV9WQUwsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsIDB4MS4wMDAwMDAwMDAwMDAxcDUyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAKLSAgICAweDEuZmRhNmExYmUzZTlkNDdmYzg0MjkzMjgxZTc3YWEyMWFwLTEsCi0gICAgMHgxLjBwLTIsIDB4MS5iMmNiMmNiMmNiMmQwcC05Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzEKLSAgICAwLjAsCi0gICAgMHgxLjBwLTUxMiwgMHgxLjBjY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIKLSAgICAweDEuZjliM2EzODIwOTgwOTM4Njg3ZThiZjdmZjA2YmM0MmNwLTkxNCwKLSAgICAweDEuMHAtMTAzNSwgMHgxLmMzYTgzYTgzYTgzYTVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMwotICAgIDAuMCwKLSAgICAweDEuMHAtMTA3NCwgMHgxLjBwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDM0Ci0gICAgMC4wLAotICAgIDB4MS4wcC0xMDc0LCAweDEuMDAwMDAwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUKLSAgICAweDEuNTFjYjQ1M2I5NTRmNTMwNWZkOGQ2MWU2NTBlOGQwZDVwLTk2NywKLSAgICAweDEuMHAtMTA3NCwgMHgxLmNjY2NjY2NjY2NjY2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNgotICAgIDB4MS5mZmZmZmZmZDNhMzdhMDIyYTRiZGY5NDgyMTcxZDU2ZnAxMDIzLAotICAgIDB4MS4wcDEsIDB4MS5mZmZmZmZmZmZmMHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzcKLSAgICAweDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmZmZlMHAtNSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAsIDB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgKLSAgICAweDEuYWU4OWY5OTVhZDU4ODdmZjQ2ZGQyMzYyYmU2YThmMjNwLTIwNCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjcxLCAweDEuN2ZmZmZmZmZmZmZmZHAtMQotICB9LAotICB7IC8vIEVudHJ5IDM5Ci0gICAgMHgxLjI2MTExODZiYWU2YTM4MDAwMmU2MjAyYzMxYjA0ZDEzcC0zOCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtNDYyLCAweDEuNGYyMDk0ZjIwOTRmMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDQwCi0gICAgMHgxLjZhMDllNjY3ZjNlY2QyYWRiNjcyMjNmOTU2NGIzNDIycC0zOTIsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUyMiwgMHgxLjdmZmZmZmZmZmZmZmRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MQotICAgIDB4MS45ZmRmOGJjY2U1NDM1NDdkNjExZWYxMzkwNDAyMmI4YnAtNDkzLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01NDcsIDB4MS5jY2NjY2NjY2NjY2NjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDIKLSAgICAweDEuOTFiNTAxYzJkYjVjOGZmZTgxY2MzZWZmZmZlMjgyZThwLTI5MCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtNjQzLCAweDEuY2NjY2NjY2NjY2NjYXAtMgotICB9LAotICB7IC8vIEVudHJ5IDQzCi0gICAgMHgxLmE4MzBmZDA1NDcyMDI0NzljNzBjODBiNzJhMzI1ZDJmcC00MDgsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTczMSwgMHgxLjFkNDFkNDFkNDFkNDRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NAotICAgIDB4MS5hOTMzNWRmMzhlNmU2NGNiZGFhNTc3NTBhMGNmZDVlZXAtMjkxLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC03MzMsIDB4MS45NTgxMDYyNGRkMmY3cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUKLSAgICAweDEuNmEwOWU2NjdmM2QxOTJhMjdiNzM1Nzc0ODRhODZkY2RwLTc2MSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtODQ1LCAweDEuY2NjY2NjY2NjY2NjY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDQ2Ci0gICAgMHgxLmJkYjhjZGFkYmU2MGE1NmRkNjFjNGUwNDM1MGNmYTlhcC01NjksCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTk0NywgMHgxLjMzMzMzMzMzMzMzMzFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NwotICAgIDB4MS42YTA5ZTY2ZDcyYzljODAxODQwNTMyNTc3ZTYwNWUwN3A5MDQsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMDUsIC0weDEuY2NjY2NjY2NjZmE4MXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ4Ci0gICAgMHgxLmZmZmZmZmZmZmZmYWVhNmUwNjIyYTQ1YjM1ODlkNzcxcDEwMjMsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwgMHgxLmZmZmZmZmZmZmZmZmRwOQotICB9LAotICB7IC8vIEVudHJ5IDQ5Ci0gICAgMHgxLmU2MTAyYmE0NjUwNDQ4MTRiMjhhMGE0OTIxNmVmNjY3cC0zNDksCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwNjYzLCAtMHgxLjBjY2NjY2NjY2NjY2ZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MAotICAgIDB4MS5mZmZmZmZmZmZmZDc1YjZkODVkZThmYjNhN2UyZTgyNnAtNzAzLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDkzNiwgLTB4MS44MDAwMDAwMDAwMDAxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTEKLSAgICAweDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDFmZmZmZmZwLTEwMjQsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMTAyMywgLTB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MgotICAgIDB4MS5mZmZmZmZmZmZmZmFlYTZlMDYyMmE0NTczNTg5ZDc3MXAxMDIzLAotICAgIDB4MS4wMDAwMDAwMDAwMDAycDIsIDB4MS5mZmZmZmZmZmZmZmZkcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MwotICAgIDB4MS4wMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMjlmZmZmZnAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDA0cDAsIDB4MS4wMDAwMDAwMDAwMDA3cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQKLSAgICAweDEuMDAwMDAwMDAwMDAwMDdmZmZmZmZmZmZmMzkyMHAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDA0cDAsIDB4MS5mZmZmZmZmZmZmY2U4cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTUKLSAgICAweDEuZmZmZmZmZmZmZmZhZWE2ZTA2MjJhNDRmMzU4OWQ3NzFwMTAyMywKLSAgICAweDEuMDAwMDAwMDAwMDAwNHA0LCAweDEuZmZmZmZmZmZmZmZmZHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTYKLSAgICAweDEuZmI5NTQwZDk5MjU4YTgwZjg2YjcxOTI1YWFmNDQyMWVwODAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDdwMTAyMywgMHgxLjQ0NDQ0NDQ0NDQ0MzBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NwotICAgIDB4MS5kZjkwNWVmOGUyNTA3ZmQ4NTI3MTJlZDZjZWE5ODk2M3A4MzMsCi0gICAgMHgxLjAwMDAwMDAwMDAwMTFwMSwgMHgxLmEwZjNlYTA2OTdhMGJwOQotICB9LAotICB7IC8vIEVudHJ5IDU4Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDk3ZmZmZmZmZmZmZmQyZTBwMywKLSAgICAweDEuMDAwMDAwMDAwMDAxM3A2LCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDU5Ci0gICAgMHgxLjAwMDAwMDAwMDAwMGQ3ZmZmZmZmZmZmZjc3ZTBwMCwKLSAgICAweDEuMDAwMDAwMDAwMDAyMXAwLCAweDEuYTJlOGJhMmU4YmEyZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDYwCi0gICAgMHgxLjk0NzY1MDRiOWJhZjM0M2UzZjc1YTJiZDJlNGNhZGRicDczOCwKLSAgICAweDEuMDAwMDAwMDAwMDA4MHAwLCAweDEuMHA1NAotICB9LAotICB7IC8vIEVudHJ5IDYxCi0gICAgMHgxLmZmZmZmNGU5NWUxZjNmZGNkZDVlM2Q5MjhmM2E0N2Y1cDEwMjMsCi0gICAgMHgxLjAwMDAwMDAwMDAwZmZwMSwgMHgxLmZmZmZmZmZjMHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjIKLSAgICAweDEuZmZmZmZmZmY4ZTRkZTgwODNhYzYzZjk1YmNiNTI1ZmNwMTAyMywKLSAgICAweDEuMDAwMDAwMDAwMDBmZnAyLCAweDEuZmZmZmZmZmZmZmNwOAotICB9LAotICB7IC8vIEVudHJ5IDYzCi0gICAgMHgxLjk0NzY1MDRiNDMzNTUyYWRiZjI1M2FkNWE5ZTYxZTY4cDczOCwKLSAgICAweDEuMDAwMDAwMDAwMDRwMCwgMHgxLjBwNTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NAotICAgIDB4MS42MjQ3ZWIwMzU3ODYzN2ZmMmNiOTNjOTNmZTJmMjQ3M3AtMTI5LAotICAgIDB4MS4wMDAwMDAwMDAwN3AxLCAtMHgxLjAxMXA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjUKLSAgICAweDEuODdjZWEyZTUwNmQyZWE5YjIxODIzZDc1NTc2NjNmYmFwNDI3LAotICAgIDB4MS4wMDAwMDAwMDAyMHAxMDIzLCAweDEuYWMwODMxMjZlOTc4Y3AtMgotICB9LAotICB7IC8vIEVudHJ5IDY2Ci0gICAgMHgxLmZmZmZmZjJiMDMzODA4MGIyNTdkZjMxYmIwMmZmNzBhcDc2NywKLSAgICAweDEuMDAwMDAwMDAwZmZmZnAtMSwgLTB4MS43ZmZmZmZmZmQ1Y2UycDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NwotICAgIDB4MS5mZmQ5MzEwMzViMzk0MDg3MTY0NTAxNDczZGYyMzA5NXAxMDIzLAotICAgIDB4MS4wMDAwMDAwMDFwMSwgMHgxLmZmZmZmMWZmZmZmZmZwOQotICB9LAotICB7IC8vIEVudHJ5IDY4Ci0gICAgMHgxLjkxMmI2ZGQ2NjUyZGY3ZmEwZmJhZmZiYzdiMzJkNjJhcDk1MywKLSAgICAweDEuMDAwMDAwMDAxYjFlZnAtMSwgLTB4MS5kY2QyZjNlYTA2OTk1cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OQotICAgIDB4MS5mZmZmZmZmODAwMDAwMDIwYzAwMDNmN2I3ZmZlODIxNnAtMSwKLSAgICAweDEuMDAwMDAwMDQwcDAsIC0weDEuZmZmZmZmZmZjZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDcwCi0gICAgMHgxLmZmZmZmZmMwMDAwMDI3ZmZmZmY3MDAwMDAzOWZmZmZlcC0xMDI0LAotICAgIDB4MS4wMDAwMDAxZmZmZmZmcDEwMjMsIC0weDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzEKLSAgICAweDEuNzA1ZGYzNGY4NGUzMTM4NzE0ODE1M2M3Y2Y3ODNhNTNwLTEsCi0gICAgMHgxLjAwMDAwMDRwMSwgLTB4MS5lNjY2NjY2NjY2NjZicC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIKLSAgICAweDEuMWExNjc0NGMyZWMwZDgwNDI0MTBiZjNlM2E5MDE0YWNwMSwKLSAgICAweDEuMDAwMDAwNHAyLCAweDEuMjNkNzBhM2Q3MGEzYnAtMQotICB9LAotICB7IC8vIEVudHJ5IDczCi0gICAgMHgxLmZmZjgwMDEwMDJiNDE3ZWY1ODhlMjFjNTA5MmUyMGM3cDEwMjMsCi0gICAgMHgxLjAwMDAwMTBwLTEsIC0weDEuZmZmZmZmZmZmZmZmOXA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzQKLSAgICAweDEuYTEyZjgwNmMzOTEwNTgwMGQ1YWMzOGY2Y2I4OGQzNzRwLTIsCi0gICAgMHgxLjAwMDAwMWNwMywgLTB4MS5iYTJlOGJhMmU4YmEycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUKLSAgICAweDEuZDcyZjdmMzU0ZDg2ZDAyMDZhZDdjOWJlOWI0NzhjN2NwLTg4NSwKLSAgICAweDEuMDAwMDA0NHAtMSwgMHgxLmJhMGY2MWM5MTA3YzlwOQotICB9LAotICB7IC8vIEVudHJ5IDc2Ci0gICAgMHgxLjkxNWQxOTU1YjE1ZmMwODE5MWUwMDBiYzhhOWM4MjYycDczOCwKLSAgICAweDEuMDAwMjBwMCwgMHgxLjAwMDAwNDBwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NwotICAgIDB4MS5mZmMwMDQzY2JjNWRiN2ZlZDkwNWVhMjY3NzI0Y2Q4NnA0NywKLSAgICAweDEuMDAwMjAwMDAwYzBlNHAtMywgLTB4MS5mZmZmZmZmZmYzZmZmcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OAotICAgIDB4MS4wMzg2MWMwZjI1ZjBiN2ZkZDdkYjk4OGZjNTBlOGFjNXA4OTYsCi0gICAgMHgxLjAwMDcwcDcsIDB4MS4wMDAwMDAwMDg4MHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzkKLSAgICAweDEuNzM1ZjRjYWU2ZmQ1ZTdlYzllYzkzOTIzZjMzOWU5NTFwLTI0MiwKLSAgICAweDEuMDAwN2ZkZXAwLCAtMHgxLjRmMWI3N2MyNzhkYzBwMjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MAotICAgIDB4MS5iNmJkY2RhZmQ1NTgyODIzYjRkMzYxY2I3YmYwMmYwYnAwLAotICAgIDB4MS4wMDA3ZmZmZmZmMThjcC0zLCAtMHgxLjA5NGYyMDk0ZjIwOTRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MQotICAgIDB4MS5lZTlkZTM4MTU1ODlmODAyMDQyOWM4NTA1MDJhNzNjZXAwLAotICAgIDB4MS4wMDA4MHAxLCAweDEuZTY2NjY2NjY2NjY2NnAtMQotICB9LAotICB7IC8vIEVudHJ5IDgyCi0gICAgMHgxLmZjNGU5NTdhZDNjZmY4MGRmMTRkNTM4M2JkMDlhODNhcDEwMjMsCi0gICAgMHgxLjAwMWZlYmViY2NkNDJwMCwgMHgxLjYzZDhhYTk4NmE5ZWFwMjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MwotICAgIDB4MS5mYmRkZjQ2ZDZiNjI4ODJiNGM0ZTY1OWJmMDIxMmRmNHAxMDIzLAotICAgIDB4MS4wMDFmZWYxY2M0MTkzcDAsIDB4MS42M2I1MDBjODM2ODlkcDIwCi0gIH0sCi0gIHsgLy8gRW50cnkgODQKLSAgICAweDEuZmJhN2Y5MzE4YzVkYzgxYjFlMTc4ODY1MTQ3MjAyZjNwMTAyMywKLSAgICAweDEuMDAxZmYwNjlkMmE2YnAwLCAweDEuNjNhNjc2Yzg0OTNlOHAyMAotICB9LAotICB7IC8vIEVudHJ5IDg1Ci0gICAgMHgxLmY2MTY2MWI3MDAwZDMyZDFmNjk4ZTBmYTJmODg5ZDM1cDY5LAotICAgIDB4MS4wMDgwNDAyNTIxM2RlcC03LCAtMHgxLjRwMwotICB9LAotICB7IC8vIEVudHJ5IDg2Ci0gICAgMHgxLmUxMDliZGNjYTAxZmI3ZmZiYmU0ZjUwYzgyZDBlYzYycDE1LAotICAgIDB4MS4wMTBwLTEsIC0weDEuZmZmZmZmZmY5ZmZmZnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODcKLSAgICAweDEuMWU0OWM1MTQ3M2ZmMzdkYzFhZDI3MjY0MzEyYzM3YjVwLTEwMTEsCi0gICAgMHgxLjAyMWVlYWE2ZDI3MGRwMSwgLTB4MS5mMzc5NzE3NThlMjU3cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OAotICAgIDB4MS5lYjQxMzIxZTEzNmIzN2ZmZmJiOTkwMjdmZmM4NTE0YnAtMjEsCi0gICAgMHgxLjAyZjE3OGJjNWUyYzFwMywgLTB4MS5hOTk5OTk5OTk5OTlhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OQotICAgIDB4MS4wODBmZmZmZmY3OWNiODAwZDRmYTQzNTFkOGU2MzE3MXAtMiwKLSAgICAweDEuMDQwcC0xLCAweDEuMDAwMDAwMDAwNjBwMQotICB9LAotICB7IC8vIEVudHJ5IDkwCi0gICAgMHgxLmNmMmIxOWFjZmQ1Mzg4MjBjZDYyYjk3NjJmYmQwN2Q4cC0xMDE4LAotICAgIDB4MS4wNDkzY2RhN2JlNDUycDEsIC0weDEuZWZlNGIyNDIwNzFhYnA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTEKLSAgICAweDEuNjY5MmMwNWIwOWJhYmEyZWE0OGQ3ODVhZDRhNDU3NWRwMTM1LAotICAgIDB4MS4wNWViZjgyNDhhNzM0cDk5LCAweDEuNWUzYjMyYTJhOWZiMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTIKLSAgICAweDEuODEwZjJmNTM5ODA1NzdmNjY2M2FiZmExZjc3NDI5MWJwNzAsCi0gICAgMHgxLjBhYWFhYWFhYWFhYWJwNywgMHgxLjRwMwotICB9LAotICB7IC8vIEVudHJ5IDkzCi0gICAgMHgxLmZmZmVlMzM1MzY4ZWEwMDA4YWE2YjNiMDA2MzU0NjI1cC0xLAotICAgIDB4MS4wZTRmOTM4YzBlMGJicC00ODIsIDB4MS5iNDgzOGFhNzBkMDI1cC0yNgotICB9LAotICB7IC8vIEVudHJ5IDk0Ci0gICAgMHgxLmNmYzQ3MGNjOTM5MjI3ZmE5NzBiNThiOTE1NzJmNzI0cC00MCwKLSAgICAweDEuMTNiZDExYmNmYWE1MHAtNSwgMHgxLjBwMwotICB9LAotICB7IC8vIEVudHJ5IDk1Ci0gICAgMHgxLmVjMzNlYTU1YWZkMzNhZDIxOWFhMmFlYzA4MzM5N2RmcC0xLAotICAgIDB4MS4xNTAxZjQ0NjU5ZTU0cDAsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDk2Ci0gICAgMHgxLmY2NDhhMGVhZDgyZjYwMDFkYWYwZDQ2YWJkMDE4Yjc3cC0xLAotICAgIDB4MS4xNTU1NTU1NTU1NTU1cC0xLCAweDEuMDAwMDAwMDAwMDAwN3AtNQotICB9LAotICB7IC8vIEVudHJ5IDk3Ci0gICAgMHgxLmZlN2ViNjg3MzRiNWU4MjVlOTRkNmRlNDU0Y2RlMThlcDYsCi0gICAgMHgxLjE3NDVkMTc0NWRhNzFwLTEsIC0weDEuMDAwMDAwMDAwMDAwN3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTgKLSAgICAweDEuYTVhMDBjNzdjNjViZjViMDU5MmE2MTQwN2IyYmM3OWZwLTM5LAotICAgIDB4MS4xOTczYjEwMmZmZGRicC02LCAweDEuYTFkODRmNmEzYjkzNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTkKLSAgICAweDEuZTdlMjY3NDVmNTBmZTgwMGQxNDE0NWZmODAxMzM3NjFwLTIsCi0gICAgMHgxLjE5ZWVkZWIxMDJkODRwMiwgLTB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwCi0gICAgMHgxLmE3M2Y5YWNiZjQxMjVhODkwMjAxMTBhMjljMzliYmQycDEwMywKLSAgICAweDEuMjQ3NjVhMGNkZDQ1NHA3LCAweDEuY2Q4MWVkZmQ2ZDViOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxCi0gICAgMHgxLjQ0NWFlMzkwZjRiNTM2OWMxNDI2ZjlmZThiOGExNzUxcDYxNSwKLSAgICAweDEuMjQ5MjQ5MjQ5MjQ5MnAtNSwgLTB4MS5mZmZmZmZmZmZmZmY4cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIKLSAgICAweDEuZTRlMDQ1MjA1NTI3ZjMzZjBjOTc2OGRjYjdmMTNmYWJwLTYxNiwKLSAgICAweDEuMjQ5MjQ5MjQ5MjQ5MnAtNSwgMHgxLmZmYzdmZmZmZmZmZmZwNgotICB9LAotICB7IC8vIEVudHJ5IDEwMwotICAgIDB4MS4yZGQxN2RjNzI5M2RjODAwMWUxOTg2YTE0ODc1YmU5NXAxMjIsCi0gICAgMHgxLjMxNTBhMTJmMjVjOGRwLTQxLCAtMHgxLjhwMQotICB9LAotICB7IC8vIEVudHJ5IDEwNAotICAgIDB4MS41MmM1OGNkYmFjNGNiN2ZlYjc2MWUyNGJiZGU5OWI4NXAtNTM0LAotICAgIDB4MS4zMzMzMzMzMzMzMzMzcC0yLCAweDEuMzMzMzMzMzMzY2U5N3A4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1Ci0gICAgMHgxLmJjN2YwNTZlYzcxZmYwMDAwMTA0ODA4Yzk5OTBhZTlmcC0yLAotICAgIDB4MS4zMzMzMzM0NmNmOGJhcC0yLCAweDEuNjJlNDJmZWZhMzllZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwNgotICAgIDB4MS5hMmM5ZGM3YmIyZTcyNGFlNzQ2YzdhMGEwNzZiMTI5YnAtMjkxLAotICAgIDB4MS4zOGFiZjgyZWU2OTg2cC0xLCAweDEuOTgwcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDcKLSAgICAweDEuYjRmNjBlNTc5NWI1ZTgwODhjMTg2NWFiOWUwZTI2OTRwMCwKLSAgICAweDEuM2VjOTg0Y2IzNjcwMXAwLCAweDEuMzgwMTg4NzliMmJhOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4Ci0gICAgMHgxLjhmY2YzMDFjMmI0NjUzMmZmZmI2YTA2Y2M0M2RlYzkxcC02NjcsCi0gICAgMHgxLjRwLTEwNzAsIDB4MS4zZWYzNjhlYjA0MzI3cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5Ci0gICAgMHgxLjAwMDAzZjY1Y2NlODA4MDAwMGZmZWY2ZTAyYmZlNTA5cDAsCi0gICAgMHgxLjRwNCwgMHgxLjUyOWExNTc0YzBjNzJwLTIwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEwCi0gICAgMHgxLjkwMDAwMDAwMDAwMDI4MDAwMDAwMDAwMDAxcDQsCi0gICAgMHgxLjQwMDAwMDAwMDAwMDFwMiwgMHgxLjBwMQotICB9LAotICB7IC8vIEVudHJ5IDExMQotICAgIDB4MS40MzAxNWNmNzRkNmUwN2ZmMzY2NjMwNWRkZmZiNWY0ZXAxLAotICAgIDB4MS40M2U3NDNiYTc5YzQxcC0xLCAtMHgxLjAyYzMwYjgwZWI1MTRwMQotICB9LAotICB7IC8vIEVudHJ5IDExMgotICAgIDB4MS5hMzZlMWMzYzcwMGI3YTQxNmZhZDY0MWJmYzAzMWFkYnAtMTAsCi0gICAgMHgxLjQ3YWUxNDdhZTE0N2JwLTUsIDB4MS4wMDAwMDFjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTMKLSAgICAweDEuZTVlY2NmMWIzYTA1ZGNmN2FkY2E4ZDQ3ZjkzN2RhYzdwLTk4NSwKLSAgICAweDEuNGU5MWIwZTkxYjBmMXAtMSwgMHgxLjkwYzk3MTRmYmNkOWJwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTQKLSAgICAweDEuOTUzMzViZmI3NmM2YzdmZTM4NTI2Y2RlMWMxNmVkYmRwLTMsCi0gICAgMHgxLjUxNTJiN2MzNzMzNjhwLTIyLCAweDEuYmIzODI4OGEwYTZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTUKLSAgICAweDEuZmZmZmZmZmZmZmZmYjAxZTIxYTQwNDQyOWU4OGNmZDZwLTEsCi0gICAgMHgxLjUxNzU4NzkwYjQxODFwLTQsIDB4MS4wcC01MgotICB9LAotICB7IC8vIEVudHJ5IDExNgotICAgIDB4MS43MDJlYmZhMWZmMjAxM2YyNDM4Y2ZkMTkzNWI3MzA5OXAxMDEsCi0gICAgMHgxLjU1NTU1NTU1NTU1NTVwLTIsIC0weDEuMDAzODBwNgotICB9LAotICB7IC8vIEVudHJ5IDExNwotICAgIDB4MS5iYTMwYTEyN2Y2ZGQ1ZmQ5YzYwYTdmMDEwZDljYTEyNXAyMDIsCi0gICAgMHgxLjU1NTU1NTU1NTU1NTVwLTIsIC0weDEuZmZjN2ZmZmZmZmZmZnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE4Ci0gICAgMHgxLjdmZmZmZThlZGRjNDlhMGJiNzRjOWIzOTQyZTVlYjBicDEsCi0gICAgMHgxLjU1NTU1NTU1NTU1NTVwLTIsIC0weDEuZmZmZmZlM2ZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDExOQotICAgIDB4MS44YWE4ODA4NjQ3ZDA3Yjg4MTliNjg2YTQ0ODE3NDA3NnA1ODYsCi0gICAgMHgxLjU1NTU1NTU1NTU1NTVwLTUsIC0weDEuZmZjN2ZmZmZmZmZmZnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIwCi0gICAgMHgxLjdhMGE5MTA4ZTFkMTg4NGM1ODRhOWFiODFmYzNmM2QxcC0yOTQsCi0gICAgMHgxLjU1NTU1NTU1NTU1NTVwLTUsIDB4MS4wMDAwMDAwMDBlMHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIxCi0gICAgMHgxLmFkM2Q1MDMzMjE3YTA0N2MyNjAyZWQ5YjNjMGE5NjQ0cC00NjEsCi0gICAgMHgxLjU4YTI2MTIxZjQ2ZjZwLTIsIDB4MS4yNGY0NWY1ZmQ0Zjc5cDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjIKLSAgICAweDEuMTEwNGZiOGNmNzg2YzgwMGZmYzczNTg4OWE1MzFmYTNwMCwKLSAgICAweDEuNjEzMDk4NGMwMjAxN3AwLCAweDEuOTk5OTk5OTk5OTk5YXAtMwotICB9LAotICB7IC8vIEVudHJ5IDEyMwotICAgIDB4MS4xZTk1MmIxOWNjMzM2NzJmMWNkZDNlYzUwZTBiM2RmMnAtMTAyMywKLSAgICAweDEuNjIyZThiYTJlOGI5ZHAtMSwgMHgxLmUwZjgzZTBmODNlMGNwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQKLSAgICAweDEuY2VhZmQ4YzAzODViZDhhYmJkNTc0NDcwNGJmMTNkNGVwLTEwMjMsCi0gICAgMHgxLjY3MTExMTExMTExMGNwLTEsIDB4MS5mMzMzMzMzMzMzMzI0cDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI1Ci0gICAgMHgxLjZhMDllNjY3ZjNiYTEyZjkzMjQ3YTc2ZDc0Mzc0NDE4cC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYjllcC0xLCAweDEuZmZmZmZmZmZmZmZmM3AtMQotICB9LAotICB7IC8vIEVudHJ5IDEyNgotICAgIDB4MS5hODg3MjkzZmQ2ZjMwYTExZTlmM2FhYjE2MWIwZDQxZnAwLAotICAgIDB4MS43NDVkMTc0NWQxNzQ2cC0yLCAtMHgxLmZmZmZmZmZmZmZmZjhwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjcKLSAgICAweDEuOTE3NDk5OTAwZmRhMDdmZWQ0OTc5NmQ4MjU2Y2JlYWRwLTQwLAotICAgIDB4MS43NDVkMTc0NWQxNzQ2cC0zLCAweDEuZmZmZmZlM2ZmZmZmZnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI4Ci0gICAgMHgxLmY0NmU5Njc5ODBlMDQ4YzU5ZmQwZmJlYTFlNTc3ODFjcDk2NywKLSAgICAweDEuN2EwcDcsIDB4MS5mZmZmZmZmZWZmZmZmcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjkKLSAgICAweDEuOTljZTQ1YjdlMjhmYzdmZjJkM2NmYjQ2MTc3NDJkN2FwLTEsCi0gICAgMHgxLjdiZjBiMjM0OGIwYThwMiwgLTB4MS4wcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMwCi0gICAgMHgxLmZlOWQzZmFjZWNkYjQ4MmU1MmEyMDI2ZjBkMGZjYmFicDAsCi0gICAgMHgxLjhwLTEsIC0weDEuMzMzMzMzMzMzMzNjMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMxCi0gICAgMHgxLjk2YzNhODY0ZDkyY2M4MjQyZmE2YTA1NmJiMDhiM2NmcC0xLAotICAgIDB4MS44NWU4NWU4NWU4NWVhcC0xLCAweDEuYjA3M2VjYWRlMzA1M3AtMQotICB9LAotICB7IC8vIEVudHJ5IDEzMgotICAgIDB4MS5mMmQ4MGNmOGNjMDhiN2ZmZmZlZWE3OWY5NWMzYTliYXAtMSwKLSAgICAweDEuODdkODcyNDQxZWFiYnA5LCAtMHgxLmZmZmZmZmZmZmZmZWVwLTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzMKLSAgICAweDEuZmZmZmZmZmZmZmZmNzAxZjhhZmI5YWEwNmJhZDMzYzFwLTEsCi0gICAgMHgxLjg5ZTM2ZWY4NGYxOWRwMSwgLTB4MS4wMDAwMDAwMDAwMDExcC01MAotICB9LAotICB7IC8vIEVudHJ5IDEzNAotICAgIDB4MS4wMDAwMDAwMDAwMDAwZmZmYjc1MGYwNzU5M2FjMGZlZnAwLAotICAgIDB4MS44ZDYwMGI3Njk2ODYycC05NiwgLTB4MS5lZmFlNjFmNjBmNmU4cC01OQotICB9LAotICB7IC8vIEVudHJ5IDEzNQotICAgIDB4MS5lOGYxNTU2NWVkNDNhODJlMDUyMjM2YWMzZjhhMWYwOXA3NywKLSAgICAweDEuOThkMmZlNWM1M2YzNHAtMzksIC0weDEuMDQ0YTAwMmQ1MGFkOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM2Ci0gICAgMHgxLjBmNGIxMThhMTBlNDlmZmZmZjAwYWU3MzU3ZDg3Yzk0cC0xLAotICAgIDB4MS45OTk5OTlhNjM3ZjEwcC0yLCAweDEuNjJlNDJmZWZhMzllZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzNwotICAgIDB4MS5kMjUxNWM0OWQ2NDE1N2ZlZjYyZWZlMzdhYTdkNGU1N3AtNDQsCi0gICAgMHgxLjljMDEzM2NkYjA4NTZwLTUsIDB4MS40cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzgKLSAgICAweDEuZmI4NWU5ZjEzZjA3Njc1MzQ1MGUzMTU2OTVkMjM5ZTlwLTEwMjMsCi0gICAgMHgxLjlmMGVkNGY5MzA1MjJwLTEsIDB4MS5hNWRiOGExNzU1ZTljcDExCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM5Ci0gICAgMHgxLjAxYWI4ZjI2NzFiNmU4MDAwMDk2MzQ5YWI4OTc0ZWM1cDAsCi0gICAgMHgxLjlmY2ZlN2YzZmExODFwLTEsIC0weDEuMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDE0MAotICAgIDB4MS42OWM3MzgyNGZiYWJmODA2NmMwZjM4NDg3YzYwMGM3MnA5LAotICAgIDB4MS5hMDQzMjc0YjcwNWNlcDMsIDB4MS40ODdlMzFjY2U2NDY4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDEKLSAgICAweDEuZDIwMDg4ZjRlZWI4YTUyZmYwMjlmZjdlNDc2ZTNiNjdwLTU4MiwKLSAgICAweDEuYTVkMTc0NWQxNzQ2ZXAtMSwgMHgxLjAzZTBmODNlMGY4M2NwMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDIKLSAgICAweDEuYzRiZWVkZjMxNTFlMjgwM2UwNDliYjUxNjFkMTI3MmRwLTI3MiwKLSAgICAweDEuYWE0Y2U4ZWQ1MjZiMXAtMSwgMHgxLjAwODgwcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQzCi0gICAgMHgxLjcxNzMwNjJiNzRjMjE3ZmVhNmI0MWU2YTdmYjQ4ZGQ2cC03MTEsCi0gICAgMHgxLmFiOTlkMzYwOTFiYzBwOTcsIC0weDEuZDEzNmVlOGU1OTU3M3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ0Ci0gICAgMHgxLjg2YzFiNDlhNTUxMDk3ZmU3ODM5OWMwMGQwMTU3ZDkycC0yLAotICAgIDB4MS5iNzgyMjE4YzNmZGI0cDIsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE0NQotICAgIDB4MS41YjZhNzQ0OTlkNjM3ODA0YjlhYTI4ZjliNzY2YzNjY3AtMSwKLSAgICAweDEuYmNlYjc3MWEwMmJkZXAyLCAtMHgxLjk5OTk5OTk5OTk5OWFwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDYKLSAgICAweDEuZmRkZTZkN2Q5OTJkNGZmY2QwYTI0NDZhOTU3MmI3OTFwLTEsCi0gICAgMHgxLmJmZmZmZmZmZmZmZmRwLTEsIDB4MS5mZmM3ZmZmZmZmZmZmcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQ3Ci0gICAgMHgxLjI0OTI0OTI0OTI0OTJmMDUzOTc4MjljYmMxYWRlNjlmcC0xMDIzLAotICAgIDB4MS5iZmZmZmZmZmZmZmZmcDEwMjIsIC0weDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ4Ci0gICAgMHgxLmNjYTM0ZDhkNjA5NTQyMzUyZGZlYWFjZTUyOGNiN2ExcC04MTgsCi0gICAgMHgxLmNwLTEwMzMsIDB4MS45NTU1NTU1NTU1NTUycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ5Ci0gICAgMHgxLjU1Y2I4MDVkM2I2YWI1Yzc2NzVjZTI4OGRiMTc5ZjJicC05ODEsCi0gICAgMHgxLmNwLTEwMzMsIDB4MS5lNjY2NjY2NjY2NjYycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUwCi0gICAgMHgxLjk3YTNmY2JhY2ViZTVkODZkNGY5Njc1ZDNiODIwOGY4cDg2MSwKLSAgICAweDEuY3AtMTA1OSwgLTB4MS5hMGVhMGVhMGVhMGVhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUxCi0gICAgMHgxLmU5MjZmMzM0MjcyOWQxMDBiZWFiMjJiNTAyOWZhNjkycC05NTYsCi0gICAgMHgxLmNwLTEwNzEsIDB4MS5jOGViZDQ4ZWJkNDk4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUyCi0gICAgMHgxLmYxNjY4YTg3N2MzMDIwYzg1MDVjNDVhZTk5NGJkMzU4cC0xMDAyLAotICAgIDB4MS5jcC0xMDcxLCAweDEuZGVlYWJiNzg4NDU0OXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE1MwotICAgIDB4MS4yNDkyNDkyNDkyNDU5NzgyOWNiYzE0ZjBlOTNjNzQ2ZXAtMTAyMywKLSAgICAweDEuYzAwMDAwMDAwMDA1N3AxMDIyLCAtMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDE1NAotICAgIDB4MS5jNjVjMmNmMzk2MmRhODAxM2Q0MGVlOGMzYjQ2YmYxZHA5NiwKLSAgICAweDEuYzI1YzI2ODQ5MTYxMHAtNDQsIC0weDEuMWVmZWZmNWEyNzNlY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU1Ci0gICAgMHgxLjk3MGMxMGQ2YjBhNTlhN2ZhZGYxZTIxZTVhYjY3N2JlcDc3LAotICAgIDB4MS5jMjVjMjY4NDk3NjgycC00NCwgLTB4MS5jYzZiOTNhYmJiMDc0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTYKLSAgICAweDEuODU4M2MyNDg5YTUwMzgwMDA2YzljNzIwNWI1YTU0ZmVwLTEsCi0gICAgMHgxLmMyZTE3MGI4NWM5OTRwLTIsIDB4MS41NTU1NTU1NTU1NTU1cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU3Ci0gICAgMHgxLjdlNDU3MzAxNWJjNjNiZDI2NzY3OWFhYjJjZDg5ZjY2cC0xLAotICAgIDB4MS5jYjNjOTQ4NGUyYWQwcDAsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE1OAotICAgIDB4MS43ZTNlNzE5Y2U1Yjc5N2ZlODg1ODE1YmMzYjI0NTdmMnAtMSwKLSAgICAweDEuY2I0ZDY5ZWI0ZjRiOXAwLCAtMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTkKLSAgICAweDEuZmQ0MjUwYTg3MWM3ZmUwMGQ1ZjUxMDM5YzU3ZGRlNmZwLTYyNCwKLSAgICAweDEuY2NjNGMwZmQ2M2NiNnAtMSwgMHgxLjBwMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjAKLSAgICAweDEuNWRjMjg1ZDViNWYxNjgwMGY2ZDdkYzVmZmRjZjhkMTZwLTEsCi0gICAgMHgxLmQxNzQ1ZDE3NDk4ODNwLTEsIDB4MS5mZmM3ZmZmZmZmZmZmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjEKLSAgICAweDEuZmVhNTk1ZDVjMDRmODgxNDM4ZjdmNWYxMGRiYjAyOTdwLTIsCi0gICAgMHgxLmQ1NTU1NTU1NTU1NTJwLTEsIDB4MS5mZmM3ZmZmZmZmZmZmcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjIKLSAgICAweDEuMDAwMDAwMDAwMDAwN2ZmMDRhMjY2NzhiNjMzYTEzM2VwMCwKLSAgICAweDEuZDg3MjQ0MWVjMzkwNXAyLCAweDEuMDAwMDAwMDAwMDAxMXAtNTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjMKLSAgICAweDEuYTYzZjRiZDc5N2Y4MjgwNTkxOWIwOWQyYjYyZGExZTFwLTEsCi0gICAgMHgxLmRhNjBhMWYyZWM2MDhwLTIsIDB4MS4wMDdjZDk1MjRkM2Y0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY0Ci0gICAgMHgxLmE4MmUxNDY5MDI1Yzg1MGMxNDQ4YTE5YzJhZjY3ZmU0cC01MDAsCi0gICAgMHgxLmRiNmRiNmRiNmRiNzJwLTIsIDB4MS5jMzBjMzBjMzBjM3A4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY1Ci0gICAgMHgxLjc3OWEwNmJjMzg4MGUyYzM5ZGZjNjc5NzQ5ZTQ3MGE1cC0yLAotICAgIDB4MS5kYmIwZTBhYTJkZDBlcDIsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE2NgotICAgIDB4MS5mNTViNDFhYjRhNjc1NDA1YjU0MjcwM2Q5YjAzN2FlN3AtNDA4LAotICAgIDB4MS5kZGE5NWE5NWE5NWIxcC0xLCAweDEuZmMwcDExCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY3Ci0gICAgMHgxLjc2N2ZiYWQyMTlhMjA4MDE4ZDZiODFmN2YzYTIwNTFicDIsCi0gICAgMHgxLmRlN2YxNTQ4Mzg1MzdwLTYsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE2OAotICAgIDB4MS43MTFkNjAyZmZiMjdmODAyMDkwNDNkNmQ4ZjI4M2NmOHAtMTAsCi0gICAgMHgxLmU2NjY2NjY2NjY2NmJwLTEsIDB4MS5mZmZmZmZmZmZmZmY4cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjkKLSAgICAweDEuZmY1Njk3Mzk2YWYxNTdmZmVhZDc0ODg1OWFlM2M5Y2JwMSwKLSAgICAweDEuZWVlZWVlZWVlZWVlZXAyLCAweDEuNWFhYWFhYWFhYWFhYnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE3MAotICAgIDB4MS5mZTk2MWEzY2NkM2MyODFhZDAzMzNkNjgwNjkyN2IyYnAtMSwKLSAgICAweDEuZjA3YzFmMDdjMWYwN3AtMTQsIDB4MS40MGE1N2ViNTAyOTZkcC0xMgotICB9LAotICB7IC8vIEVudHJ5IDE3MQotICAgIDB4MS5kYWMwYzdjZmJlZjA1YmQ2NWEwZTZlYTI0NzdmNDdmYXA3NzgsCi0gICAgMHgxLmYxYTE3ZDA3OWUyNGZwLTMsIC0weDEuN2Q5YzBiNWYzYTk2MHA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTcyCi0gICAgMHgxLjZlYTY5YmQ4NWI2N2NjODViZTgzZmE5NzdkYzEyM2NhcC0xLAotICAgIDB4MS5mMzMzMzMzMzMzMzI0cDAsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE3MwotICAgIDB4MS43MTViZjkyZjQzZjAwYjQwMzA0OWUwYzNlNTExNTNmOHAtMTYsCi0gICAgMHgxLmY2NjQ5ODRiOGExNTJwLTIxLCAweDEuOGI4NTJjZTIyMTlmMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE3NAotICAgIDB4MS43NDM2ODA5NGVmYmZiMzgwYmIyZGYyZTIwZTJhN2ExN3AtODUsCi0gICAgMHgxLmY2ZGVkOGJjM2ZhNDNwLTcsIDB4MS5jMDgzNTk1YzJiMWJjcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzUKLSAgICAweDEuYjBlZjU1NjAwNjIwNzcxOGQzZGEwOGE5MDEzNjcyNmRwNzIxLAotICAgIDB4MS5mODNlMGY4M2UwYjhhcC0xLCAtMHgxLjAwMDAwMDAyYjY1OGVwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzYKLSAgICAweDEuYjBlZjRjZDk0ZjhmOGE4ZTYwM2ZmNjU4ZjYxZmVmYjFwNzIxLAotICAgIDB4MS5mODNlMGY4M2UwYmE1cC0xLCAtMHgxLjAwMDAwMDAwMjIxZWZwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzcKLSAgICAweDEuYjBlZjRjZDgyZjEzODdkNzY1ODBhOWVlYWJhNjU2ZjZwNzIxLAotICAgIDB4MS5mODNlMGY4M2UwYmNmcC0xLCAtMHgxLjAwMDAwMDAwMjIxZWZwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzgKLSAgICAweDEuYjBlZjRjZmIxY2VjMzdkNjRmMzdlYTM3NTU5N2I3NDBwNzIxLAotICAgIDB4MS5mODNlMGY4M2UwYmNmcC0xLCAtMHgxLjAwMDAwMDAwMmNiMDlwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzkKLSAgICAweDEuYjBlZjU1NWUyNjljNjc3NGExOGI1NmFmMzY5NDdkODJwNzIxLAotICAgIDB4MS5mODNlMGY4M2UwYmNmcC0xLCAtMHgxLjAwMDAwMDAyYjY1NzNwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODAKLSAgICAweDEuYjFjMzA0MmZlNzZlYzc0ZWI2MzE3NzZlYTkwYzNjYzZwNzIxLAotICAgIDB4MS5mODNlMGY4M2UwYmNmcC0xLCAtMHgxLjAwMDA0MDAwMjIxZWZwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODEKLSAgICAweDEuZjJlOTI0NzdkNjRjODZmYTU0ZjYyMTVlYzhkZTU4OTZwODI3LAotICAgIDB4MS5mODNlMGY4M2UwYmNmcC0xLCAtMHgxLjI1YWI2ZjdiY2VkOTNwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODIKLSAgICAweDEuYjBlZjRjMDRhYjZmOTdhNTI5MzUwOTE1NTA0YzAwNzRwNzIxLAotICAgIDB4MS5mODNlMGY4M2UwYmNmcC0xLCAtMHgxLmZmZmZmZmZmYzQzZGVwMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODMKLSAgICAweDEuYjBlZjU1NWIxZGJlOTdkMjc2ZDE5NjMwNmJhMDAwNTFwNzIxLAotICAgIDB4MS5mODNlMGY4M2UwYzI2cC0xLCAtMHgxLjAwMDAwMDAyYjYyMGZwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODQKLSAgICAweDEuYjBlZjRjYmU2ZGVlNjhmNjk3ZmM1ODg1ZTQzYTM1NDVwNzIxLAotICAgIDB4MS5mODNlMGY4M2UwZjgwcC0xLCAtMHgxLjAwMDAwMDAwMjIwcDE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTg1Ci0gICAgMHgxLjY2MWRiMjQyZTEzZjc4NzYwZjMzODVjNDhkZTZlMTRkcC03MTYsCi0gICAgMHgxLmY4NGYxYjc3YWE2MWVwLTEsIDB4MS4wMDAwMDQ0cDE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTg2Ci0gICAgMHgxLjZjYzA1NjU5M2IxODk3ZmU3Mjk0NTU2ZTg1YTdmY2NhcC0xLAotICAgIDB4MS5mODY5YjEwZTE2NDZlcDAsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE4NwotICAgIDB4MS45NmVjMTk5YzgyODMyODBkY2RlMWJmMGE2YmRmMThkZHAtMzMsCi0gICAgMHgxLmY4NmQ2ZjYzYWEwNDlwLTEsIDB4MS43ODBwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODgKLSAgICAweDEuOGQzNTc1YzVhMDgyMTdlOTZkMmJhY2NkOTIxMDIxMDFwNjEyLAotICAgIDB4MS5mOTY4NjBhZmNiNDUycC0xLCAtMHgxLjAwMDAwNDNmZmZlZWRwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODkKLSAgICAweDEuOGQzNTc1YzUyZWEzMWZlYTNkMDc5OWY4Y2Y4NTIzZTNwNjEyLAotICAgIDB4MS5mOTY4NjBhZmNiNDY4cC0xLCAtMHgxLjAwMDAwNDNmZmZmODVwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTAKLSAgICAweDEuOGQzNTc1YzQ3MmYwYzg2M2MwNmE5NzZlMjJhMjVjNmRwNjEyLAotICAgIDB4MS5mOTY4NjBhZmNiNDg5cC0xLCAtMHgxLjAwMDAwNDRwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTEKLSAgICAweDEuOGQzNTc1YzM1YWFjZWZlYTk1Yzg4NTQzOWQ0OWJkOTlwNjEyLAotICAgIDB4MS5mOTY4NjBhZmNiNGJicC0xLCAtMHgxLjAwMDAwNDQwMDAwZDRwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTIKLSAgICAweDEuOGQzNTc1YzBjZmM0NjFiYmU1ZWUzNjQ0Y2M2ZDc3YzJwNjEyLAotICAgIDB4MS5mOTY4NjBhZmNiNTA2cC0xLCAtMHgxLjAwMDAwNDNmZmZjNzlwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTMKLSAgICAweDEuOGQzNTc1YzE2NjdkZjExNjM5Nzk4MjRkODYzY2M1NzFwNjEyLAotICAgIDB4MS5mOTY4NjBhZmNiNTA2cC0xLCAtMHgxLjAwMDAwNDQwMDAwMjJwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTQKLSAgICAweDEuOGQzNTc1YjRmZWM1ODhlNTZmMWJhNGJiMmNkZTNkMzdwNjEyLAotICAgIDB4MS5mOTY4NjBhZmNiNzE0cC0xLCAtMHgxLjAwMDAwNDQwMDAzNTNwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTUKLSAgICAweDEuOGQzNTc1YWMzZmY0OWVlMDA0NDA0MTk1MWQyMDcwNmJwNjEyLAotICAgIDB4MS5mOTY4NjBhZmNiODU4cC0xLCAtMHgxLjAwMDAwNDNmZmZlNmRwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTYKLSAgICAweDEuNjcxOTg2ZGJlNTNmNTZhY2QzNmRkYWVlYzk3Mjc3YWFwLTQ2LAotICAgIDB4MS5mOTg1ZjdjYmYwMDU5cC03LCAweDEuZTNmYTMwMThiZGUwOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk3Ci0gICAgMHgxLmVlYzczZWIzZWQ5MjQ3OTQwZTg3NzUwZTdmYzQ5NDc5cDEwMTksCi0gICAgMHgxLmZhODFhNWU3ZDQxMmNwLTEsIC0weDEuMDAwMDA3ZmZlZjBwMTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTgKLSAgICAweDEuNmFmYzJiMzY2OWNhZmQ4YjA0YmUwNzYzN2NiOGNlNWVwLTEsCi0gICAgMHgxLmZkNTU3MDE5ZjFjZDBwMCwgLTB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk5Ci0gICAgMHgxLmM0ZjkxZDI0ZTVjM2U4NmY3M2VhNjgxMzJiZGE0YjhhcDEwMDIsCi0gICAgMHgxLmZkZmZmZmZmZmZmZmZwLTMsIC0weDEuZjNmZmZmZmZmZmZmZnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjAwCi0gICAgMHgxLjZhOTNiN2YwNDY5NGFkNjZiOWFhNjRmNzZiYTFmYTM4cC0yLAotICAgIDB4MS5mZTdiMGVlNmFmYTNjcDIsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDIwMQotICAgIDB4MS5lMTc3NmJkZTE2NjQzODA4YTM4Y2FmMDUwZjVjYjYzMHAtOTY2LAotICAgIDB4MS5mZjNlOWFlMzAzM2FlcC0xLCAweDEuYmE2YzEzYmYwMDVlY3AxOAotICB9LAotICB7IC8vIEVudHJ5IDIwMgotICAgIDB4MS5kNGVmNWVjZDc1NGNkN2Y2ZTcwMTY0NTM5OTRjMjFkNXAtOTQzLAotICAgIDB4MS5mZjQzM2EwMmVjOTY0cC0xLCAweDEuYmE3YTM0N2NkZmZlYnAxOAotICB9LAotICB7IC8vIEVudHJ5IDIwMwotICAgIDB4MS5mZTliYmRjMTYxYWJkN2ZkOWIzMmRiYmMyZDc0ODQzOHAtOTE1LAotICAgIDB4MS5mZjQ4ZTJiNGE1ZDdlcC0xLCAweDEuYmE4YjgxMGY1NTA3ZnAxOAotICB9LAotICB7IC8vIEVudHJ5IDIwNAotICAgIDB4MS5kZTUyYWE2YTVlY2FmODA2Nzc5N2M5ZTJhMjgxYjIzZXAtOTA1LAotICAgIDB4MS5mZjRhZTBlNDQwZmI2cC0xLCAweDEuYmE5MTk4YWIwM2NkNHAxOAotICB9LAotICB7IC8vIEVudHJ5IDIwNQotICAgIDB4MS43NmJjNTJkYzc0MzFmODAwMDAwNTM2YTk0YmMzZDMwNXAxMzMsCi0gICAgMHgxLmZmNzdmZmZmZmZmZmZwMTUsIDB4MS4wYjFmZGNkNzU5MGFicDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDYKLSAgICAweDEuNWMxYzJkZWQ3MjEzZDk5MTgzNmZkMmFhOGRmZjRkZjdwLTEwMjMsCi0gICAgMHgxLmZmN2ZmZmZmZmZmZmZwMCwgLTB4MS4wMDAwMDAwMGNwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDcKLSAgICAweDEuN2EyYjRkNzJjY2ZhYjdmZWJiNjhhYjNhYzQyMmNkYTdwLTYxMywKLSAgICAweDEuZmY4NTc5NmU0ZjA2M3AtMSwgMHgxLmJiNDRiODZjYTA5MjhwMTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDgKLSAgICAweDEuMThhMmZhZjhiNWY2ZTgwMzI4MzdlN2Q4N2FiY2ZhNThwLTQxMCwKLSAgICAweDEuZmZhZTEzZWJmMTg3MnAtMSwgMHgxLmJiYzBkN2MzYTg4MmNwMTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDkKLSAgICAweDEuMzllN2Q4NGE4OTU4MjgyMDUzNjY2ZDhjNDE5Mzg0NjZwLTczOSwKLSAgICAweDEuZmZmMDAwMDAwNjA3MXAtMSwgMHgxLjAwMDAxNDBwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTAKLSAgICAweDEuZTZjZTZmNDllYTYwMjgwMTYwNTBmNWYzOGFlZmMyMDRwNzk1LAotICAgIDB4MS5mZmY4MDAwMDBlNDgzcDEwMjMsIDB4MS44ZGY2YjBkZjZiMGUwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjExCi0gICAgMHgxLjlhYWEzY2RkMTJkYzA1ZTI0NmIyMzQ2NTRiOGRjNzZmcC00NDIsCi0gICAgMHgxLmZmZmZmZTdmZmZmZmVwLTEwMjMsIDB4MS5iYTJlOGJhMmU4YmE0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEyCi0gICAgMHgxLmY2NjMyNzhmNzMwNDQ4MzJhMmMxYzU4MjBjNTFjZGU3cC0xLAotICAgIDB4MS5mZmZmZmYzZmZmZmZmcC04LCAweDEuMDAwMDAwZXAtOAotICB9LAotICB7IC8vIEVudHJ5IDIxMwotICAgIDB4MS5mZmZmZmZjZDU1NTU0ODAxYzcyMmJmN2YzNzE1NjRkN3AtMSwKLSAgICAweDEuZmZmZmZmYmZmZmZmZnAtMSwgMHgxLjk1NTU1NTU1NTU1NTJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTQKLSAgICAweDEuNjFjNTBhYzhlMDI1NzAwMGNhMGQ4YjkzOGRmZTc5YWJwNTY3LAotICAgIDB4MS5mZmZmZmZiZmZmZmZmcDEwMjMsIDB4MS4xYmJiYmJiYmJiYmI5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE1Ci0gICAgMHgxLmZmZmZmZjgwMDAwMDA4cC0xOTksCi0gICAgMHgxLmZmZmZmZmNwLTEwMCwgMHgxLjBwMQotICB9LAotICB7IC8vIEVudHJ5IDIxNgotICAgIDB4MS5mZmZmZmY4NTI5MWM2ODAzYjg1NDczMzJkMDFmNjNiMXAxMDIzLAotICAgIDB4MS5mZmZmZmZmZjhmZmZmcDcsIDB4MS5mZmZmZmZmZmU3ZTQ5cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTcKLSAgICAweDEuZmZmZmZmYzdmZmY0NWY5NTFmM2E3OGRjYjU5YTdmYTVwLTg5NywKLSAgICAweDEuZmZmZmZmZmZlZmZmZnAtMiwgMHgxLmJmZmZmZmZmZmZmZmZwOQotICB9LAotICB7IC8vIEVudHJ5IDIxOAotICAgIDB4MS43YjI5MzU4ZDQ1ZjQxYTJmMjNlZTIyZjgwYmI2ZmQwOHA1MDgsCi0gICAgMHgxLmZmZmZmZmZmZjNmZmVwLTEwMjMsIC0weDEuZmQ4ZmQ4ZmQ4ZmQ4ZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDIxOQotICAgIDB4MS5lMzQzN2U3MGZlYzI0NTU4YzEwNzljYWRlNTYxZTI3NnAtODEwLAotICAgIDB4MS5mZmZmZmZmZmZiZmZlcC0xMDIzLCAweDEuOTU1NTU1NTU1NTU1MnAtMQotICB9LAotICB7IC8vIEVudHJ5IDIyMAotICAgIDB4MS5mZmZmZmZmZmZkZmZmN2ZmZmZmZWZmOTdmZTZmZmVmZnAtMSwKLSAgICAweDEuZmZmZmZmZmZmYmZmZnAtMSwgMHgxLjAwMDAwMDAwMDAwMDNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjEKLSAgICAweDEuZjY2OTdjN2FmYTBhYzgyN2Q0NWI0MjhiOWMxM2VhNDZwNzcsCi0gICAgMHgxLmZmZmZmZmZmZmYwZDZwOTUyLCAweDEuNGYyMDk0ZjIwOTRmMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDIyMgotICAgIDB4MS5mZmZmZmZmZmZmYmMzN2ZmZmZmZmZmODI0MzZmZmZmZnAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmI0YnAtMSwgMHgxLmNjY2NjY2NjY2NjY2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjMKLSAgICAweDEuZmZmZmZmZmZmZmNmZTdmZmZmZmZmZmUyMzJjZmZmZmZwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZjZDZwLTEsIDB4MS5lNjY2NjY2NjY2NjY2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjI0Ci0gICAgMHgxLmZmZmZmZmZmZmZmMzc3ZmZmZmZmZmZkYmRmZWZmZmZmcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZTZmcC0xLCAweDEuZmZmZmZmZmZmZmZmOHAtMgotICB9LAotICB7IC8vIEVudHJ5IDIyNQotICAgIDB4MS4wMDAwMDAwMDAwMDNjN2ZmZmZmZmZmZWI0MzFmZmZmZnAwLAotICAgIDB4MS5mZmZmZmZmZmZmZjBlcC0xLCAtMHgxLmZmZmZmZmZmZmZlOWJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjYKLSAgICAweDEuMDAwMDAwMDAwMDEyZDgwMDAwMDAwMGVjYjk4MHAtMywKLSAgICAweDEuZmZmZmZmZmZmZmYzN3AwLCAtMHgxLjhwMQotICB9LAotICB7IC8vIEVudHJ5IDIyNwotICAgIDB4MS5hZTg5Zjk5NWFhYTkzYjhhYmVhMmM3YjdjYmNkYzVlMnAzNzgsCi0gICAgMHgxLmZmZmZmZmZmZmZmOWZwMiwgMHgxLmY4ZmZmZmZmZmZmZmZwNgotICB9LAotICB7IC8vIEVudHJ5IDIyOAotICAgIDB4MS4wMDAwMDAwMDAxOTM0ODAwMDAwMTNmZDZiMjQwMDBhYXAtMTAxNSwKLSAgICAweDEuZmZmZmZmZmZmZmZhN3A2LCAtMHgxLjIyMHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjI5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZDA3ZmZmZmZmZmZmZmVjNGZmZmZmcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmNlcC0xLCAweDEuZTY2NjY2NjY2NjY2NnAtMQotICB9LAotICB7IC8vIEVudHJ5IDIzMAotICAgIDB4MS5mZmZmZmZmZmZmMWNlNDg1ZmRmNGE1ZmQzZTY3MWVhOXAtMTAyMywKLSAgICAweDEuZmZmZmZmZmZmZmZlZnAtNSwgMHgxLmZlZmZmZmZmZmZmZmZwNwotICB9LAotICB7IC8vIEVudHJ5IDIzMQotICAgIDB4MS4wMDAwMDAwMDAwMDA0N2ZmZmZmZmZmZmZmZmZmZmZmZnAwLAotICAgIDB4MS5mZmZmZmZmZmZmZmY3cC0xLCAtMHgxLmZmZmZmZmZmZmZmZjdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzIKLSAgICAweDEuMDAwMDAwMDAwMDAwMjgwMDAwMDAwMDAwMDY0MHAtMTAyMywKLSAgICAweDEuZmZmZmZmZmZmZmZmYnAxMDIyLCAtMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDIzMwotICAgIDB4MS5mZmZmZmZmZmZmZmZmODAwMDAwNmZmZmZmZmQwcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xLCAweDEuZmZmZmZlM2ZmZmZmZnAtNAotICB9LAotICB7IC8vIEVudHJ5IDIzNAotICAgIDB4MS5mZmZmZmZmZmZmZjE3MjE3ZjdkMWNmOGRhMGNjNzdjYnAxMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZkcDAsIDB4MS4wMDAwMDAwMDAwMDAycDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM1Ci0gICAgMHgxLmZmZmZmZmZmZmZmOGI5MGJmYmU4ZTdiZjkzMjU5NmRmcDEwMjMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmRwMSwgMHgxLjAwMDAwMDAwMDAwMDFwOQotICB9LAotICB7IC8vIEVudHJ5IDIzNgotICAgIDB4MS4wMDAwMDAwMDAwMDAwN2ZmZmZmZmZmZmZmZmRmZmZmZnAwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xLCAtMHgxLmZmZmZmZmZmZmZmZmVwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzcKLSAgICAweDEuOWZkZjhiY2NlNTM0NjAwNGM1ZjhmZTFmZTUyYjExMTVwNTYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwLTY0LCAtMHgxLmNjY2NjY2NjY2NjY2RwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzgKLSAgICAweDEuMzM1NDA1MzYxMzk3NTgwMWUxZjE4YzYwN2Q5ZjdjOTZwLTU1LAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0yMjQsIDB4MS5mNmIwZGY2YjBkZjZhcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM5Ci0gICAgMHgxLjQzMzdjZDZiMTFiZDc3ZmYxZGZiMTZlNzc0NDdlZjhlcDE1NywKLSAgICAweDEuZmZmZmZmZmZmZmZmZXAtNjQyLCAtMHgxLmY2YjBkZjZiMGRmNmNwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDAKLSAgICAweDEuOWZkZjhiY2NlNTcxZmIzYzk1NjFmMzM3YzljNDI3ZDRwMjc4LAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcC05MzAsIC0weDEuMzMzMzMzMzMzMzMzN3AtMgotICB9LAotICB7IC8vIEVudHJ5IDI0MQotICAgIDB4MS5kZGI2ODAxMTdhYjk2ODA1Nzc5NmU4MTkxNGU3ODU5NXA5MDksCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMTIsIC0weDEuY2NjY2NjY2NjY2NjZHAtMQotICB9LAotICB7IC8vIEVudHJ5IDI0MgotICAgIDB4MS4yMzg3YTZlNzU2MjMzMDAwYjQ5YzNiMGJmOWM1NDk4MnAxLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcDQsIDB4MS5lNjY2NjY2NjY2NjVjcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQzCi0gICAgMHgxLmE1YWRiOGM4ZTMyYzE4MDdhN2RhOTJiNDNmN2NjOTBjcDU0LAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcDc1LCAweDEuNzBhM2Q3MGEzZDcwZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDI0NAotICAgIDB4MS5lYzFkZWFiYmUzYTllYWUyOWJkZTU2Zjg4ZThlZjRlZXA2MjcsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwODEzLCAweDEuOGFmOGFmOGFmOGFmOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDI0NQotICAgIDB4MS5mZmZmZmZmZmZmOGY5ZGNjZDUyZDQ3MGE4ODI2NjljM3A2NDcsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwODYzLCAweDEuN2ZmZmZmZmZmZmZmZHAtMQotICB9LAotICB7IC8vIEVudHJ5IDI0NgotICAgIDB4MS4wMDAwMDAwNGRhMjBhN2QyODIxY2RmZDRmNjM0N2RkMHAxMjgsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMsIC0weDEuMDAwMDAwMDAwZTBwNgotICB9LAotICB7IC8vIEVudHJ5IDI0NwotICAgIDB4MS40NGNlNTQxYjYwMzQ2Yzk4MDk0NDQzYjlmYWE4NGFiZHAxMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLCAweDEuNGFmZDZhMDUyYzBlMnAtNwotICB9LAotICB7IC8vIEVudHJ5IDI0OAotICAgIDB4MS5jYjcyMGRjZWY5MDY5MTUwM2NiZDFlOTQ5ZGI3NjFkOXAtMSwKLSAgICAweDEuMHAtNSwgMHgxLjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDkKLSAgICAweDEucC01LAotICAgIDB4MS4wcC01LCAweDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUwCi0gICAgMHgxLnAwLAotICAgIDB4MS4wcDAsIDB4MS4wcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjUxCi0gICAgMHgxLnAwLAotICAgIDB4MS4wcDAsIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTIKLSAgICAweDEucC00MCwKLSAgICAweDEuMHAtNSwgMHgxLjBwMwotICB9LAotICB7IC8vIEVudHJ5IDI1MwotICAgIDB4MS5wLTE2MCwKLSAgICAweDEuMHAtNSwgMHgxLjBwNQotICB9LAotICB7IC8vIEVudHJ5IDI1NAotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAweDEuMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU1Ci0gICAgMHgxLnAwLAotICAgIDB4MS4wcDAsIDB4MS4wcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTYKLSAgICAwLjAsCi0gICAgMHgxLjBwLTUsIDB4MS4wcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU3Ci0gICAgMC4wLAotICAgIDB4MS4wcC01LCAweDEuMHAxMgotICB9LAotICB7IC8vIEVudHJ5IDI1OAotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAweDEuMHAxMAotICB9LAotICB7IC8vIEVudHJ5IDI1OQotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAweDEuMHAxMgotICB9LAotICB7IC8vIEVudHJ5IDI2MAotICAgIDB4MS4xMTMwMWQwMTI1YjUwYTRlYmJmMWFlZDkzMThjZWFjNXAwLAotICAgIDB4MS4wcDMsIDB4MS4wcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjYxCi0gICAgMHgxLnAzLAotICAgIDB4MS4wcDMsIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjIKLSAgICAweDEuMWQ0ODczMTY4YjlhYTc4MDViODAyODk5MGYwN2E5OGJwMCwKLSAgICAweDEuMHA1LCAweDEuMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDI2MwotICAgIDB4MS5wNSwKLSAgICAweDEuMHA1LCAweDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY0Ci0gICAgMHgxLnAyNCwKLSAgICAweDEuMHAzLCAweDEuMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY1Ci0gICAgMHgxLnA5NiwKLSAgICAweDEuMHAzLCAweDEuMHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjY2Ci0gICAgMHgxLnA0MCwKLSAgICAweDEuMHA1LCAweDEuMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY3Ci0gICAgMHgxLnAxNjAsCi0gICAgMHgxLjBwNSwgMHgxLjBwNQotICB9LAotICB7IC8vIEVudHJ5IDI2OAotICAgIEhVR0VfVkFMLAotICAgIDB4MS4wcDMsIDB4MS4wcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY5Ci0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjBwMywgMHgxLjBwMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzAKLSAgICBIVUdFX1ZBTCwKLSAgICAweDEuMHA1LCAweDEuMHAxMAotICB9LAotICB7IC8vIEVudHJ5IDI3MQotICAgIEhVR0VfVkFMLAotICAgIDB4MS4wcDUsIDB4MS4wcDEyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcyCi0gICAgMHgxLjNkZWE2NGMxMjM0MjIzNWI0MTIyM2UxM2Q3NzNmYmEycDAsCi0gICAgMHgxLjBwMTAsIDB4MS4wcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjczCi0gICAgMHgxLnAxMCwKLSAgICAweDEuMHAxMCwgMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDI3NAotICAgIDB4MS40YmZkYWQ1MzYyYTI3MWQ0Mzk3YWZlYzQyZTIwZTAzNnAwLAotICAgIDB4MS4wcDEyLCAweDEuMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDI3NQotICAgIDB4MS5wMTIsCi0gICAgMHgxLjBwMTIsIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzYKLSAgICAweDEucDgwLAotICAgIDB4MS4wcDEwLCAweDEuMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc3Ci0gICAgMHgxLnAzMjAsCi0gICAgMHgxLjBwMTAsIDB4MS4wcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzgKLSAgICAweDEucDk2LAotICAgIDB4MS4wcDEyLCAweDEuMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc5Ci0gICAgMHgxLnAzODQsCi0gICAgMHgxLjBwMTIsIDB4MS4wcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODAKLSAgICAweDEuMDAwMDAwMDAwMDAwMTk4ZDRkMGRhMDU1NzFlOWFkNDdwMiwKLSAgICAweDEuNmEwOWU2NjdmM2JjY3AtMSwgLTB4MS4wcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODEKLSAgICAweDEuZmZmZmZmZmZmZmZmY2NlNTY1ZTRiZjU1MjE0NjczODVwLTMsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2NwLTEsIDB4MS4wcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODIKLSAgICAweDEuMDAwMDAwMDAwMDAwMTk4ZDRkMGRhMDU1NzFlOWFkNDdwLTIsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2NwMCwgLTB4MS4wcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODMKLSAgICAweDEuZmZmZmZmZmZmZmZmY2NlNTY1ZTRiZjU1MjE0NjczODVwMSwKLSAgICAweDEuNmEwOWU2NjdmM2JjY3AwLCAweDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg0Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDE5OGQ0ZDBkYTA1NTcxZTlhZDQ3cDIsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2NwLTEsIC0weDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg1Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmNjZTU2NWU0YmY1NTIxNDY3Mzg1cC0zLAotICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xLCAweDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg2Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDE5OGQ0ZDBkYTA1NTcxZTlhZDQ3cC0yLAotICAgIDB4MS42YTA5ZTY2N2YzYmNjcDAsIC0weDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmNjZTU2NWU0YmY1NTIxNDY3Mzg1cDEsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2NwMCwgMHgxLjBwMgotICB9LAotICB7IC8vIEVudHJ5IDI4OAotICAgIDB4MS4wMDE2MmYzOTA0MDUxZmEyYzFiNGU4NTM3NDZiNmYwNHAwLAotICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xLCAtMHgxLjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg5Ci0gICAgMHgxLmZmZDNhNTY1ZWZiNjRlYTg4YTgwZDhhNTI1NTRhM2EwcC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmNjcC0xLCAweDEuMHAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTAKLSAgICAweDEuZmZkM2E1NjVlZmI2NGVhZWVkNDY3MTgzYjhkNDZhOTZwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2NwMCwgLTB4MS4wcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI5MQotICAgIDB4MS4wMDE2MmYzOTA0MDUxZjlmOGZjNDZiMzc0M2Y4NWNiZXAwLAotICAgIDB4MS42YTA5ZTY2N2YzYmNjcDAsIDB4MS4wcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI5MgotICAgIDB4MS45NDhiMGZjZDZlOWUwNjUyMmMzZjM1YmE3ODE5NDhiMHAxLAotICAgIDB4MS44cC0xLCAtMHgxLjBwMgotICB9LAotICB7IC8vIEVudHJ5IDI5MwotICAgIDB4MS40NHAtMiwKLSAgICAweDEuOHAtMSwgMHgxLjBwMgotICB9LAotICB7IC8vIEVudHJ5IDI5NAotICAgIDB4MS45NDhiMGZjZDZlOWUwNjUyMmMzZjM1YmE3ODE5NDhiMHAtMywKLSAgICAweDEuOHAwLCAtMHgxLjBwMgotICB9LAotICB7IC8vIEVudHJ5IDI5NQotICAgIDB4MS40NHAyLAotICAgIDB4MS44cDAsIDB4MS4wcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTYKLSAgICAweDEuMjc5YTc0NTkwMzMxYzRkMjE4ZjgxZTRhZmIyNTdkMDZwMCwKLSAgICAweDEuOHAtMSwgLTB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk3Ci0gICAgMHgxLmJiNjdhZTg1ODRjYWE3M2IyNTc0MmQ3MDc4YjgzYjg5cC0xLAotICAgIDB4MS44cC0xLCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDI5OAotICAgIDB4MS5hMjBiZDcwMGMyYzNkZmMwNDJjYzFhZWQ3ODcxZGI0NXAtMSwKLSAgICAweDEuOHAwLCAtMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTkKLSAgICAweDEuMzk4OGUxNDA5MjEyZTdkMDMyMTkxNDMyMWE1NTY0NzNwMCwKLSAgICAweDEuOHAwLCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDMwMAotICAgIDB4MS4wMDEyNmEwYjkzZGIyOTRjYWJlMzNkYTczNTQzN2Y1MXAwLAotICAgIDB4MS44cC0xLCAtMHgxLjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAxCi0gICAgMHgxLmZmZGIyZThlZDJhMWZlNzFiZDU5ZmRkNjEwMzEzMDQ2cC0xLAotICAgIDB4MS44cC0xLCAweDEuMHAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDIKLSAgICAweDEuZmZjYzFjNTk3M2IyMTI5YTViMTQyNGUwYzg4Nzg2YjhwLTEsCi0gICAgMHgxLjhwMCwgLTB4MS4wcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDMwMwotICAgIDB4MS4wMDE5ZjQ3NGFhMTkwMDM4YzZhZjc3NWQ5MmYxZDcyNXAwLAotICAgIDB4MS44cDAsIDB4MS4wcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDMwNAotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAtMHgxLjBwMgotICB9LAotICB7IC8vIEVudHJ5IDMwNQotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAweDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA2Ci0gICAgMHgxLnAtNCwKLSAgICAweDEuMHAxLCAtMHgxLjBwMgotICB9LAotICB7IC8vIEVudHJ5IDMwNwotICAgIDB4MS5wNCwKLSAgICAweDEuMHAxLCAweDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA4Ci0gICAgMHgxLnAwLAotICAgIDB4MS4wcDAsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDMwOQotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDMxMAotICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtMSwKLSAgICAweDEuMHAxLCAtMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTEKLSAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKLSAgICAweDEuMHAxLCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDMxMgotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAtMHgxLjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzEzCi0gICAgMHgxLnAwLAotICAgIDB4MS4wcDAsIDB4MS4wcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDMxNAotICAgIDB4MS5mZmE3NGVhMzgxZWZjMjE3YTc3M2YxNWMwMjVmN2MwZHAtMSwKLSAgICAweDEuMHAxLCAtMHgxLjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE1Ci0gICAgMHgxLjAwMmM2MDVlMmU4Y2VjNTA2ZDIxYmZjODlhMjNhMDEwcDAsCi0gICAgMHgxLjBwMSwgMHgxLjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE2Ci0gICAgMHgxLnA0MCwKLSAgICAweDEuMHAtMTAsIC0weDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE3Ci0gICAgMHgxLnAtNDAsCi0gICAgMHgxLjBwLTEwLCAweDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE4Ci0gICAgMHgxLmZlMDEzZjYwNDVlNDBhN2M0MTQ5OTIyM2I0YTM4Y2U4cC0xLAotICAgIDB4MS4wMDRwMCwgLTB4MS4wcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTkKLSAgICAweDEuMDEwMDYwMTAwMXAwLAotICAgIDB4MS4wMDRwMCwgMHgxLjBwMgotICB9LAotICB7IC8vIEVudHJ5IDMyMAotICAgIDB4MS5wNSwKLSAgICAweDEuMHAtMTAsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDMyMQotICAgIDB4MS5wLTUsCi0gICAgMHgxLjBwLTEwLCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDMyMgotICAgIDB4MS5mZmMwMGJmZDgwOGJlMDg3MzY1MzY0NzQ0ODIyMGZkZnAtMSwKLSAgICAweDEuMDA0cDAsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDMyMwotICAgIDB4MS4wMDFmZmUwMDNmZjYwMWJmYWMxMDdjYTZiMjlhMGMzMXAwLAotICAgIDB4MS4wMDRwMCwgMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjQKLSAgICAweDEuMDFiZDFlNzcxNzBiNDE1ZTc2MjY2MjFlYjVhYWZmNjFwMCwKLSAgICAweDEuMHAtMTAsIC0weDEuMHAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjUKLSAgICAweDEuZmM4YmM0ODY2ZThhZDJiOTYzZTE4MjhiMDc2MWNiYzZwLTEsCi0gICAgMHgxLjBwLTEwLCAweDEuMHAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjYKLSAgICAweDEuZmZmZmUwMDQwMDU1MzU1ODQ0NDQzZGY4NjgwYThlMDVwLTEsCi0gICAgMHgxLjAwNHAwLCAtMHgxLjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI3Ci0gICAgMHgxLjAwMDAwZmZlMDBkNTI1NjI4NTM0MGU0ZjNhZDM2Mjg3cDAsCi0gICAgMHgxLjAwNHAwLCAweDEuMHAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjgKLSAgICAweDEuMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDA0MHAtMTAyNCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLCAtMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDMyOQotICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAxMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzAKLSAgICAweDEuM2IyYzQ3YmZmODI3MTk0NDI1NjA1YTkyMzExYWNjZWVwMTAyMCwKLSAgICAweDEuMHAtMTA3NCwgLTB4MS5lNjY2NjY2NjY2NjY2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMxCi0gICAgMHgxLjlmZGY4YmNjZTU0MmY1MDgxNDA1NzgzNzY3N2JhZjgycC0xMDIxLAotICAgIDB4MS4wcC0xMDc0LCAweDEuZTY2NjY2NjY2NjY2NnAtMQotICB9LAotICB7IC8vIEVudHJ5IDMzMgotICAgIDB4MS4wMDAwMDAwMDAwMDY1MTU5MWY5ZGQ1Y2RiMTEwZjZlM3AtMzg0LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC03LCAweDEuZmZmZmZmZmZmZmZmZnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzMzCi0gICAgMHgxLmZmZmZmZmZmZmZmYzAwMDAwMDAwMDAwM2VmZmZmZmZmcC0zODUsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcsIDB4MS4wcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzQKLSAgICAweDEuZmZmZmZmZmZmZmRhYmE5YjgxODhhYTc0Mjg0MTFkZDVwLTM4NSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNywgMHgxLjAwMDAwMDAwMDAwMDFwNgotICB9LAotICB7IC8vIEVudHJ5IDMzNQotICAgIDB4MS4wMDAwMDAwMDAwMDg1MTU5MWY5ZGQ1ZGM0YmMzMzYxZnAtMzg0LAotICAgIDB4MS4wcC02LCAweDEuZmZmZmZmZmZmZmZmZnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzM2Ci0gICAgMHgxLnAtMzg0LAotICAgIDB4MS4wcC02LCAweDEuMHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzM3Ci0gICAgMHgxLmZmZmZmZmZmZmZkZWJhOWI4MTg4YWEyZGVkNzgyMGU3cC0zODUsCi0gICAgMHgxLjBwLTYsIDB4MS4wMDAwMDAwMDAwMDAxcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzgKLSAgICAweDEuMDAwMDAwMDAwMDBjNTE1OTFmOWRkNjA1NTEyN2I0OTZwLTM4NCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtNiwgMHgxLmZmZmZmZmZmZmZmZmZwNQotICB9LAotICB7IC8vIEVudHJ5IDMzOQotICAgIDB4MS4wMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDdlMHAtMzg0LAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02LCAweDEuMHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzQwCi0gICAgMHgxLmZmZmZmZmZmZmZlNmJhOWI4MTg4YTliOTE3ZTYyNzA5cC0zODUsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYsIDB4MS4wMDAwMDAwMDAwMDAxcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDEKLSAgICAweDEuMDAwMDAwMDAwMDAyNzczYTc3ZDcxOTEwNmU5Mzk1ODJwLTE2MCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNiwgMHgxLmZmZmZmZmZmZmZmZmZwNAotICB9LAotICB7IC8vIEVudHJ5IDM0MgotICAgIDB4MS5mZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDBmN2ZmZmZmZnAtMTYxLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC02LCAweDEuMHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzQzCi0gICAgMHgxLmZmZmZmZmZmZmZmMDIzMTYyMGEzOWMwOTNmMTZmOGNlcC0xNjEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYsIDB4MS4wMDAwMDAwMDAwMDAxcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDQKLSAgICAweDEuMDAwMDAwMDAwMDAzNzczYTc3ZDcxOTEzNjFjZTBkNWFwLTE2MCwKLSAgICAweDEuMHAtNSwgMHgxLmZmZmZmZmZmZmZmZmZwNAotICB9LAotICB7IC8vIEVudHJ5IDM0NQotICAgIDB4MS5wLTE2MCwKLSAgICAweDEuMHAtNSwgMHgxLjBwNQotICB9LAotICB7IC8vIEVudHJ5IDM0NgotICAgIDB4MS5mZmZmZmZmZmZmZjIyMzE2MjBhMzliZmE4YTJkMTk3MnAtMTYxLAotICAgIDB4MS4wcC01LCAweDEuMDAwMDAwMDAwMDAwMXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzQ3Ci0gICAgMHgxLjAwMDAwMDAwMDAwNTc3M2E3N2Q3MTkxYzMwNDJmZDA4cC0xNjAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUsIDB4MS5mZmZmZmZmZmZmZmZmcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDgKLSAgICAweDEuMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAxZjBwLTE2MCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtNSwgMHgxLjBwNQotICB9LAotICB7IC8vIEVudHJ5IDM0OQotICAgIDB4MS5mZmZmZmZmZmZmZjYyMzE2MjBhMzliZTJmMDU5NWFiOXAtMTYxLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01LCAweDEuMDAwMDAwMDAwMDAwMXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzUwCi0gICAgMHgxLjAwMDAwMDAwMDAwMGUyZTQyZmVmYTM5ZjU5ZTM2YmNicC02NCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNSwgMHgxLmZmZmZmZmZmZmZmZmZwMwotICB9LAotICB7IC8vIEVudHJ5IDM1MQotICAgIDB4MS5mZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAzYmZmZmZmZnAtNjUsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUsIDB4MS4wcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTIKLSAgICAweDEuZmZmZmZmZmZmZmY5NzQ2ZjQwNDE3MThlZDQ1OTkwYTJwLTY1LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC01LCAweDEuMDAwMDAwMDAwMDAwMXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzUzCi0gICAgMHgxLjAwMDAwMDAwMDAwMTYyZTQyZmVmYTM5ZmU5NTU4M2MzcC02NCwKLSAgICAweDEuMHAtNCwgMHgxLmZmZmZmZmZmZmZmZmZwMwotICB9LAotICB7IC8vIEVudHJ5IDM1NAotICAgIDB4MS5wLTY0LAotICAgIDB4MS4wcC00LCAweDEuMHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzU1Ci0gICAgMHgxLmZmZmZmZmZmZmZmYTc0NmY0MDQxNzE4YmUyOTEzMGMzcC02NSwKLSAgICAweDEuMHAtNCwgMHgxLjAwMDAwMDAwMDAwMDFwNAotICB9LAotICB7IC8vIEVudHJ5IDM1NgotICAgIDB4MS4wMDAwMDAwMDAwMDI2MmU0MmZlZmEzYTFiYzM5YjNiM3AtNjQsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQsIDB4MS5mZmZmZmZmZmZmZmZmcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTcKLSAgICAweDEuMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwNzhwLTY0LAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC00LCAweDEuMHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzU4Ci0gICAgMHgxLmZmZmZmZmZmZmZmYzc0NmY0MDQxNzE4NzY3MDA3MTA0cC02NSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtNCwgMHgxLjAwMDAwMDAwMDAwMDFwNAotICB9LAotICB7IC8vIEVudHJ5IDM1OQotICAgIDB4MS4wMDAwMDAwMDAwMDA0NTE1OTFmOWRkNWJhNTkzMjhhYnAtMjQsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQsIDB4MS5mZmZmZmZmZmZmZmZmcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjAKLSAgICAweDEuZmZmZmZmZmZmZmZmODAwMDAwMDAwMDAwMGRmZmZmZmZwLTI1LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC00LCAweDEuMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzYxCi0gICAgMHgxLmZmZmZmZmZmZmZmZDZiYTliODE4OGE5MzMyY2ZlMjRhcC0yNSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNCwgMHgxLjAwMDAwMDAwMDAwMDFwMwotICB9LAotICB7IC8vIEVudHJ5IDM2MgotICAgIDB4MS4wMDAwMDAwMDAwMDA4NTE1OTFmOWRkNWJiZGQ4OGQyYXAtMjQsCi0gICAgMHgxLjBwLTMsIDB4MS5mZmZmZmZmZmZmZmZmcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjMKLSAgICAweDEucC0yNCwKLSAgICAweDEuMHAtMywgMHgxLjBwMwotICB9LAotICB7IC8vIEVudHJ5IDM2NAotICAgIDB4MS5mZmZmZmZmZmZmZmRlYmE5YjgxODhhOTJhN2JhNTA1MHAtMjUsCi0gICAgMHgxLjBwLTMsIDB4MS4wMDAwMDAwMDAwMDAxcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjUKLSAgICAweDEuMDAwMDAwMDAwMDAxMDUxNTkxZjlkZDVjMTg2MzU2MjdwLTI0LAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zLCAweDEuZmZmZmZmZmZmZmZmZnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY2Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDFjcC0yNCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMywgMHgxLjBwMwotICB9LAotICB7IC8vIEVudHJ5IDM2NwotICAgIDB4MS5mZmZmZmZmZmZmZmVlYmE5YjgxODhhOTFlNThmMmM1Y3AtMjUsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMsIDB4MS4wMDAwMDAwMDAwMDAxcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjgKLSAgICAweDEuMDAwMDAwMDAwMDAwMGM1Yzg1ZmRmNDczZGYzNzU5NzlwLTgsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMsIDB4MS5mZmZmZmZmZmZmZmZmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjkKLSAgICAweDEuZmZmZmZmZmZmZmZmYzAwMDAwMDAwMDAwMDJmZmZmZmZwLTksCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMsIDB4MS4wcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzAKLSAgICAweDEuZmZmZmZmZmZmZmZmMGU4ZGU4MDgyZTMwYmE0MjM3MWFwLTksCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMsIDB4MS4wMDAwMDAwMDAwMDAxcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzEKLSAgICAweDEuMDAwMDAwMDAwMDAwMmM1Yzg1ZmRmNDczZTI0MmVhMzhwLTgsCi0gICAgMHgxLjBwLTIsIDB4MS5mZmZmZmZmZmZmZmZmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzIKLSAgICAweDEucC04LAotICAgIDB4MS4wcC0yLCAweDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzczCi0gICAgMHgxLmZmZmZmZmZmZmZmZjRlOGRlODA4MmUzMGE1MTNmNDFicC05LAotICAgIDB4MS4wcC0yLCAweDEuMDAwMDAwMDAwMDAwMXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc0Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDZjNWM4NWZkZjQ3M2YxNWEwYmI4cC04LAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yLCAweDEuZmZmZmZmZmZmZmZmZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc1Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDA2cC04LAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yLCAweDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc2Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmNlOGRlODA4MmUzMDhjYjc2ZTFkcC05LAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yLCAweDEuMDAwMDAwMDAwMDAwMXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmY2MmU0MmZlZmEzOWVmY2Q5NDA0cC0zLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLCAweDEuZmZmZmZmZmZmZmZmZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmUwMDAwMDAwMDAwMDAwODBwLTMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsIDB4MS4wcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzkKLSAgICAweDEuZmZmZmZmZmZmZmZmYjNhMzdhMDIwYjhjMjRjNmQxYzZwLTMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsIDB4MS4wMDAwMDAwMDAwMDAxcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODAKLSAgICAweDEuMDAwMDAwMDAwMDAwMGIxNzIxN2Y3ZDFjZjdkODNjMWFwLTIsCi0gICAgMHgxLjBwLTEsIDB4MS5mZmZmZmZmZmZmZmZmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODEKLSAgICAweDEucC0yLAotICAgIDB4MS4wcC0xLCAweDEuMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgyCi0gICAgMHgxLmZmZmZmZmZmZmZmZmQzYTM3YTAyMGI4YzIzODEwOTY3cC0zLAotICAgIDB4MS4wcC0xLCAweDEuMDAwMDAwMDAwMDAwMXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgzCi0gICAgMHgxLjAwMDAwMDAwMDAwMDJiMTcyMTdmN2QxY2Y5M2IyMDRhcC0yLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLCAweDEuZmZmZmZmZmZmZmZmZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg0Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAxcC0yLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLCAweDEuMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg1Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDA5ZDFiZDAxMDVjNjExZmFiYzUzcC0yLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLCAweDEuMDAwMDAwMDAwMDAwMXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg2Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwN2ZmZmZmcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLCAweDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM4NwotICAgIDB4MS5mZmZmZmZmZmZmZmZmMHAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwgMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDM4OAotICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwgMHgxLjAwMDAwMDAwMDAwMDFwMAotICB9LAotICB7IC8vIEVudHJ5IDM4OQotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAweDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM5MAotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAweDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkxCi0gICAgMHgxLnAwLAotICAgIDB4MS4wcDAsIDB4MS4wMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTIKLSAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmY3ZmZmZmZwMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAwLCAweDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM5MwotICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTQKLSAgICAweDEuMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDFwMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAwLCAweDEuMDAwMDAwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk1Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2JmNzRjMjk3MDQ0MGQ2ZDJhODMxcDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwgMHgxLmZmZmZmZmZmZmZmZmZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTYKLSAgICAweDEuNmEwOWU2NjdmM2JjYzM2MDhiNjE3Mzk3Zjc2NjBhMjNwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAwLCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDM5NwotICAgIDB4MS42YTA5ZTY2N2YzYmNjYjM4MWNmNjUyNDYzOGFkNmI0M3AwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsIDB4MS4wMDAwMDAwMDAwMDAxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk4Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2M1MWNlYTMwYTQwZmM5YzUyYWVjcDAsCi0gICAgMHgxLjBwMSwgMHgxLmZmZmZmZmZmZmZmZmZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTkKLSAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKLSAgICAweDEuMHAxLCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQwMAotICAgIDB4MS42YTA5ZTY2N2YzYmNkMGUwNDQ4ZmYyMTUyYzU2YmYxZnAwLAotICAgIDB4MS4wcDEsIDB4MS4wMDAwMDAwMDAwMDAxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAxCi0gICAgMHgxLjZhMDllNjY3ZjNiY2QwNmQzOTYzZTNhZGFmNjY0ZTg4cDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwgMHgxLmZmZmZmZmZmZmZmZmZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDIKLSAgICAweDEuNmEwOWU2NjdmM2JjZDQ1OTAyMmU1MzA0ZDBiMDgxOTlwMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAxLCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQwMwotICAgIDB4MS42YTA5ZTY2N2YzYmNkYzMwOTNjMzMxYjMxMzY1ODRmOXAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsIDB4MS4wMDAwMDAwMDAwMDAxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA0Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2MyNDhkNjYzZDQyODUwNDkxNTdicDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMSwgMHgxLmZmZmZmZmZmZmZmZmZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDUKLSAgICAweDEuNmEwOWU2NjdmM2JjYzYzNDlmMmU0MzdmNzBmYWVmOWNwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAxLCAweDEuMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDQwNgotICAgIDB4MS42YTA5ZTY2N2YzYmNjZTBjMzBjMzIyMmRiMjdmNDExZHAwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEsIDB4MS4wMDAwMDAwMDAwMDAxcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA3Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2M1MWNlYTMwYTQwZmM5YzUyYWVjcDAsCi0gICAgMHgxLjBwMiwgMHgxLmZmZmZmZmZmZmZmZmZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDgKLSAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKLSAgICAweDEuMHAyLCAweDEuMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDQwOQotICAgIDB4MS42YTA5ZTY2N2YzYmNkMGUwNDQ4ZmYyMTUyYzU2YmYxZnAwLAotICAgIDB4MS4wcDIsIDB4MS4wMDAwMDAwMDAwMDAxcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDEwCi0gICAgMHgxLjZhMDllNjY3ZjNiY2NhYzUxMWNhNDNkZWJjOGE2YzZicDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMiwgMHgxLmZmZmZmZmZmZmZmZmZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTEKLSAgICAweDEuNmEwOWU2NjdmM2JjY2ViMGRhOTRiMzM1ZGQ5N2FmMWNwMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAyLCAweDEuMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDQxMgotICAgIDB4MS42YTA5ZTY2N2YzYmNkNjg4NmMyOTkxZTQxZmQyZDFiZHAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDIsIDB4MS4wMDAwMDAwMDAwMDAxcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDEzCi0gICAgMHgxLjRiZmRhZDUzNjJhMjZkZDVlMGJkMDI1OTRiNTgxMmNicDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMiwgMHgxLmZmZmZmZmZmZmZmZmZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTQKLSAgICAweDEuNGJmZGFkNTM2MmEyNzA4ODNiY2RhYjYxOGJhYTgyMDRwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAyLCAweDEuMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDQxNQotICAgIDB4MS40YmZkYWQ1MzYyYTI3NWVjZjFlZWZkNzIwYzYwMzMyMXAwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDIsIDB4MS4wMDAwMDAwMDAwMDAxcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE2Ci0gICAgMHgxLjRiZmRhZDUzNjJhMjZmMjFkZTZhNTViYmVkYzE1ZWI0cDAsCi0gICAgMHgxLjBwMywgMHgxLmZmZmZmZmZmZmZmZmZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTcKLSAgICAweDEuNGJmZGFkNTM2MmEyNzFkNDM5N2FmZWM0MmUyMGUwMzZwMCwKLSAgICAweDEuMHAzLCAweDEuMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDQxOAotICAgIDB4MS40YmZkYWQ1MzYyYTI3NzM4ZWY5YzUwZDRhZWYwYjVlNHAwLAotICAgIDB4MS4wcDMsIDB4MS4wMDAwMDAwMDAwMDAxcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE5Ci0gICAgMHgxLjRiZmRhZDUzNjJhMjcxYjlkOWM0ZmM4MTMyNzhiYWI2cDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMywgMHgxLmZmZmZmZmZmZmZmZmZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjAKLSAgICAweDEuNGJmZGFkNTM2MmEyNzQ2YzM0ZDVhNTg5NzJmMjYwYzlwMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAzLCAweDEuMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDQyMQotICAgIDB4MS40YmZkYWQ1MzYyYTI3OWQwZWFmNmY3OTlmM2Y2N2Y5OXAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDMsIDB4MS4wMDAwMDAwMDAwMDAxcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNDIyCi0gICAgMHgxLjMwNmZlMGEzMWI3MTUwYTA0YjU4YWQ4MDI3Y2ViMDUwcDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMywgMHgxLmZmZmZmZmZmZmZmZmZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjMKLSAgICAweDEuMzA2ZmUwYTMxYjcxNTI0NjU1NjlmNGEyYTNkYTQzZDRwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAzLCAweDEuMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDQyNAotICAgIDB4MS4zMDZmZTBhMzFiNzE1NTkyNjk4YzgyZTc5YmY4NDYxM3AwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDMsIDB4MS4wMDAwMDAwMDAwMDAxcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDI1Ci0gICAgMHgxLjMwNmZlMGEzMWI3MTUxMzg4MzQ4ZmYwZGUwNzRjNWEzcDAsCi0gICAgMHgxLjBwNCwgMHgxLmZmZmZmZmZmZmZmZmZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjYKLSAgICAweDEuMzA2ZmUwYTMxYjcxNTJkZThkNWE0NjMwNWM4NWVkZWNwMCwKLSAgICAweDEuMHA0LCAweDEuMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDQyNwotICAgIDB4MS4zMDZmZTBhMzFiNzE1NjJhYTE3Y2Q0NzU1NGFmMTliNHAwLAotICAgIDB4MS4wcDQsIDB4MS4wMDAwMDAwMDAwMDAxcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDI4Ci0gICAgMHgxLjMwNmZlMGEzMWI3MTUyNjhmMzI5YTIyOTUxYjM4ZjYxcDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwNCwgMHgxLmZmZmZmZmZmZmZmZmZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjkKLSAgICAweDEuMzA2ZmUwYTMxYjcxNTQwZWZkM2FlOTRiY2RjZmUxMzNwMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXA0LCAweDEuMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDQzMAotICAgIDB4MS4zMDZmZTBhMzFiNzE1NzViMTE1ZDc3OTBjNjBmNjAwZHAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDQsIDB4MS4wMDAwMDAwMDAwMDAxcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDMxCi0gICAgMHgxLjFkNDg3MzE2OGI5YWE2NDFkYjk3YjQ5MWEzNzkzNmFlcDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwNCwgMHgxLmZmZmZmZmZmZmZmZmZwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzIKLSAgICAweDEuMWQ0ODczMTY4YjlhYTczOTA5NjM2MmY2Mjg1Y2I1MTZwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnA0LCAweDEuMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDQzMwotICAgIDB4MS4xZDQ4NzMxNjhiOWFhOTI3NjRmYWJmYmYzMjI2MzQ2MnAwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDQsIDB4MS4wMDAwMDAwMDAwMDAxcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDM0Ci0gICAgMHgxLjFkNDg3MzE2OGI5YWE2ODkyZGI0N2EzNDhhMjFiMmM3cDAsCi0gICAgMHgxLjBwNSwgMHgxLmZmZmZmZmZmZmZmZmZwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzUKLSAgICAweDEuMWQ0ODczMTY4YjlhYTc4MDViODAyODk5MGYwN2E5OGJwMCwKLSAgICAweDEuMHA1LCAweDEuMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDQzNgotICAgIDB4MS4xZDQ4NzMxNjhiOWFhOTZlYjcxNzg1NjIxOGQ2MTk5MHAwLAotICAgIDB4MS4wcDUsIDB4MS4wMDAwMDAwMDAwMDAxcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDM3Ci0gICAgMHgxLjFkNDg3MzE2OGI5YWE3MTdkMWVlMDU3YTU3NmMzMGM0cDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwNSwgMHgxLmZmZmZmZmZmZmZmZmZwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzgKLSAgICAweDEuMWQ0ODczMTY4YjlhYTgwZWZmYjliM2RlZGM1NzE4NDBwMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXA1LCAweDEuMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDQzOQotICAgIDB4MS4xZDQ4NzMxNjhiOWFhOWZkNWI1MTEwYTdlNjJmNjliNnAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDUsIDB4MS4wMDAwMDAwMDAwMDAxcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDQwCi0gICAgMHgxLjExMzAxZDAxMjViNTA5OWU5MGVhNDNkNjU5OWVlMmJicDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwNSwgMHgxLmZmZmZmZmZmZmZmZmZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDEKLSAgICAweDEuMTEzMDFkMDEyNWI1MGEyYzk1ZWUwZWI0N2FlYjFhNzhwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnA1LCAweDEuMHAtNgotICB9LAotICB7IC8vIEVudHJ5IDQ0MgotICAgIDB4MS4xMTMwMWQwMTI1YjUwYjQ4OWZmNWE0NzBiZDg0Njc3MXAwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDUsIDB4MS4wMDAwMDAwMDAwMDAxcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDQzCi0gICAgMHgxLjExMzAxZDAxMjViNTA5YzBiNmVkZTNmYjEwM2Y5MDE3cDAsCi0gICAgMHgxLjBwNiwgMHgxLmZmZmZmZmZmZmZmZmZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDQKLSAgICAweDEuMTEzMDFkMDEyNWI1MGE0ZWJiZjFhZWQ5MzE4Y2VhYzVwMCwKLSAgICAweDEuMHA2LCAweDEuMHAtNgotICB9LAotICB7IC8vIEVudHJ5IDQ0NQotICAgIDB4MS4xMTMwMWQwMTI1YjUwYjZhYzVmOTQ0OTU3NDI4N2Q5ZnAwLAotICAgIDB4MS4wcDYsIDB4MS4wMDAwMDAwMDAwMDAxcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDQ2Ci0gICAgMHgxLjExMzAxZDAxMjViNTBhMDUwMmY1MjQ0NDdkN2RjNDBlcDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwNiwgMHgxLmZmZmZmZmZmZmZmZmZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDcKLSAgICAweDEuMTEzMDFkMDEyNWI1MGE5MzA3ZjhlZjIyOWVjZDY0OWVwMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXA2LCAweDEuMHAtNgotICB9LAotICB7IC8vIEVudHJ5IDQ0OAotICAgIDB4MS4xMTMwMWQwMTI1YjUwYmFmMTIwMDg0ZGVlMTZkODMzYnAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYsIDB4MS4wMDAwMDAwMDAwMDAxcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDQ5Ci0gICAgMHgxLmZmZmZmZmZmZmYyNzQ2ZjQwNDE3NDYyNTVjOTllOTBicDEwMjMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwMCwgMHgxLmZmZmZmZmZmZmZmZmVwOQotICB9LAotICB7IC8vIEVudHJ5IDQ1MAotICAgIDB4MS5mZmZmZmZmZmZmNTNhMzdhMDIwYmE5MjRiMjZjZmM1OXAxMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcDAsIDB4MS5mZmZmZmZmZmZmZmZmcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTEKLSAgICAweDEuZmZmZmZmZmZmZjgwMDAwMDAwMDAwZmZiZmZmZmZmZmVwMTAyMywKLSAgICAweDEuZmZmZmZmZmZmZmZmZXAwLCAweDEuMHAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ1MgotICAgIDB4MS5mZmZmZmZmZmZmZDhiOTBiZmJlOGU5MzI4MjY1ZDg1MXAxMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcDAsIDB4MS4wMDAwMDAwMDAwMDAxcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUzCi0gICAgSFVHRV9WQUwsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwMCwgMHgxLjAwMDAwMDAwMDAwMDJwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTQKLSAgICAweDEuZmZmZmZmZmZmZjY3NDZmNDA0MTcyZjBkM2IxYTZiZjJwMTAyMywKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAwLCAweDEuZmZmZmZmZmZmZmZmZXA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDU1Ci0gICAgMHgxLmZmZmZmZmZmZmY5M2EzN2EwMjBiOTc5YTIxYWQzZGNkcDEwMjMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwgMHgxLmZmZmZmZmZmZmZmZmZwOQotICB9LAotICB7IC8vIEVudHJ5IDQ1NgotICAgIDB4MS5mZmZmZmZmZmZmYzAwMDAwMDAwMDAzZmVmZmZmZmZmZnAxMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsIDB4MS4wcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU3Ci0gICAgSFVHRV9WQUwsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwgMHgxLjAwMDAwMDAwMDAwMDFwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTgKLSAgICBIVUdFX1ZBTCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAwLCAweDEuMDAwMDAwMDAwMDAwMnAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ1OQotICAgIDB4MS5mZmZmZmZmZmZmYTc0NmY0MDQxNzFmZjMxOTlhZWVkN3AxMDIzLAotICAgIDB4MS4wcDEsIDB4MS5mZmZmZmZmZmZmZmZlcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjAKLSAgICAweDEuZmZmZmZmZmZmZmQzYTM3YTAyMGI4ZTBkOTBlZDdmM2ZwMTAyMywKLSAgICAweDEuMHAxLCAweDEuZmZmZmZmZmZmZmZmZnA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDYxCi0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjBwMSwgMHgxLjBwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjIKLSAgICBIVUdFX1ZBTCwKLSAgICAweDEuMHAxLCAweDEuMDAwMDAwMDAwMDAwMXAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ2MwotICAgIEhVR0VfVkFMLAotICAgIDB4MS4wcDEsIDB4MS4wMDAwMDAwMDAwMDAycDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY0Ci0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwgMHgxLmZmZmZmZmZmZmZmZmVwOQotICB9LAotICB7IC8vIEVudHJ5IDQ2NQotICAgIEhVR0VfVkFMLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsIDB4MS5mZmZmZmZmZmZmZmZmcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjYKLSAgICBIVUdFX1ZBTCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAxLCAweDEuMHAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ2NwotICAgIEhVR0VfVkFMLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsIDB4MS4wMDAwMDAwMDAwMDAxcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY4Ci0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwgMHgxLjAwMDAwMDAwMDAwMDJwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjkKLSAgICBIVUdFX1ZBTCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMnAxLCAweDEuZmZmZmZmZmZmZmZmZXA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDcwCi0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDJwMSwgMHgxLmZmZmZmZmZmZmZmZmZwOQotICB9LAotICB7IC8vIEVudHJ5IDQ3MQotICAgIEhVR0VfVkFMLAotICAgIDB4MS4wMDAwMDAwMDAwMDAycDEsIDB4MS4wcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDcyCi0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDJwMSwgMHgxLjAwMDAwMDAwMDAwMDFwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzMKLSAgICBIVUdFX1ZBTCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMnAxLCAweDEuMDAwMDAwMDAwMDAwMnAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ3NAotICAgIDAuMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZXAwLCAtMHgxLjBjYzAwMDAwMDAwMDJwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzUKLSAgICAwLjAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwMCwgLTB4MS4wY2MwMDAwMDAwMDAxcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDc2Ci0gICAgMC4wLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcDAsIC0weDEuMGNjcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDc3Ci0gICAgMC4wLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcDAsIC0weDEuMGNiZmZmZmZmZmZmZnAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ3OAotICAgIDAuMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZXAwLCAtMHgxLjBjYmZmZmZmZmZmZmVwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzkKLSAgICAwLjAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwgLTB4MS4wY2MwMDAwMDAwMDAycDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDgwCi0gICAgMC4wLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAsIC0weDEuMGNjMDAwMDAwMDAwMXAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ4MQotICAgIDAuMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAwLCAtMHgxLjBjY3AxMAotICB9LAotICB7IC8vIEVudHJ5IDQ4MgotICAgIDAuMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAwLCAtMHgxLjBjYmZmZmZmZmZmZmZwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODMKLSAgICAwLjAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMCwgLTB4MS4wY2JmZmZmZmZmZmZlcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDg0Ci0gICAgMC4wLAotICAgIDB4MS4wcDEsIC0weDEuMGNjMDAwMDAwMDAwMnAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ4NQotICAgIDAuMCwKLSAgICAweDEuMHAxLCAtMHgxLjBjYzAwMDAwMDAwMDFwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODYKLSAgICAwLjAsCi0gICAgMHgxLjBwMSwgLTB4MS4wY2NwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODcKLSAgICAwLjAsCi0gICAgMHgxLjBwMSwgLTB4MS4wY2JmZmZmZmZmZmZmcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDg4Ci0gICAgMC4wLAotICAgIDB4MS4wcDEsIC0weDEuMGNiZmZmZmZmZmZmZXAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ4OQotICAgIDAuMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAxLCAtMHgxLjBjYzAwMDAwMDAwMDJwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTAKLSAgICAwLjAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMSwgLTB4MS4wY2MwMDAwMDAwMDAxcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDkxCi0gICAgMC4wLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsIC0weDEuMGNjcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDkyCi0gICAgMC4wLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEsIC0weDEuMGNiZmZmZmZmZmZmZnAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ5MwotICAgIDAuMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAxLCAtMHgxLjBjYmZmZmZmZmZmZmVwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTQKLSAgICAwLjAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDJwMSwgLTB4MS4wY2MwMDAwMDAwMDAycDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk1Ci0gICAgMC4wLAotICAgIDB4MS4wMDAwMDAwMDAwMDAycDEsIC0weDEuMGNjMDAwMDAwMDAwMXAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ5NgotICAgIDAuMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMnAxLCAtMHgxLjBjY3AxMAotICB9LAotICB7IC8vIEVudHJ5IDQ5NwotICAgIDAuMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMnAxLCAtMHgxLjBjYmZmZmZmZmZmZmZwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTgKLSAgICAwLjAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDJwMSwgLTB4MS4wY2JmZmZmZmZmZmZlcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk5Ci0gICAgMHgxLmE4MmUxNDY5MDI1MmU1ZWEyY2ZhMzBiMjVlOTQ3Y2VkcC01MDAsCi0gICAgMHgxLmRiNmRiNmRiNmRiNzBwLTIsIDB4MS5jMzBjMzBjMzBjMmZlcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDAKLSAgICAweDEuYTgyZTE0NjkwMjNlOGVhNTY3ODgzZmNkMjc0MmU0YjdwLTUwMCwKLSAgICAweDEuZGI2ZGI2ZGI2ZGI3MHAtMiwgMHgxLmMzMGMzMGMzMGMyZmZwOAotICB9LAotICB7IC8vIEVudHJ5IDUwMQotICAgIDB4MS5hODJlMTQ2OTAyMmEzNzYwYTIxNjRmZTFhNGNkM2FhMnAtNTAwLAotICAgIDB4MS5kYjZkYjZkYjZkYjcwcC0yLCAweDEuYzMwYzMwYzMwYzNwOAotICB9LAotICB7IC8vIEVudHJ5IDUwMgotICAgIDB4MS5hODJlMTQ2OTAyMTVlMDFiZGNhNDYwZWZkNzMzN2VhZXAtNTAwLAotICAgIDB4MS5kYjZkYjZkYjZkYjcwcC0yLCAweDEuYzMwYzMwYzMwYzMwMXA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTAzCi0gICAgMHgxLmE4MmUxNDY5MDIwMTg4ZDcxNzMyNzJmN2JlNzViMGRjcC01MDAsCi0gICAgMHgxLmRiNmRiNmRiNmRiNzBwLTIsIDB4MS5jMzBjMzBjMzBjMzAycDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDQKLSAgICAweDEuYTgyZTE0NjkwMjZjMGNiZmU2MTM1YjM4ZTc2ZDNhNDdwLTUwMCwKLSAgICAweDEuZGI2ZGI2ZGI2ZGI3MXAtMiwgMHgxLmMzMGMzMGMzMGMyZmVwOAotICB9LAotICB7IC8vIEVudHJ5IDUwNQotICAgIDB4MS5hODJlMTQ2OTAyNTdiNTdiMjBhMTY5MWZkMGQ4NTNkNnAtNTAwLAotICAgIDB4MS5kYjZkYjZkYjZkYjcxcC0yLCAweDEuYzMwYzMwYzMwYzJmZnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTA2Ci0gICAgMHgxLmE4MmUxNDY5MDI0MzVlMzY1YjJmNzgwMDZmMWY1Yjg3cC01MDAsCi0gICAgMHgxLmRiNmRiNmRiNmRiNzFwLTIsIDB4MS5jMzBjMzBjMzBjM3A4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTA3Ci0gICAgMHgxLmE4MmUxNDY5MDIyZjA2ZjE5NWJkODdkYWMyNDI1MTU5cC01MDAsCi0gICAgMHgxLmRiNmRiNmRiNmRiNzFwLTIsIDB4MS5jMzBjMzBjMzBjMzAxcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDgKLSAgICAweDEuYTgyZTE0NjkwMjFhYWZhY2QwNGI5OGFlY2E0MTM1NGRwLTUwMCwKLSAgICAweDEuZGI2ZGI2ZGI2ZGI3MXAtMiwgMHgxLmMzMGMzMGMzMGMzMDJwOAotICB9LAotICB7IC8vIEVudHJ5IDUwOQotICAgIDB4MS5hODJlMTQ2OTAyODUzMzk1OWYyYzg3M2M2MWNhZmIxOHAtNTAwLAotICAgIDB4MS5kYjZkYjZkYjZkYjcycC0yLCAweDEuYzMwYzMwYzMwYzJmZXA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTEwCi0gICAgMHgxLmE4MmUxNDY5MDI3MGRjNTBkOWJhOTNlZjZiZjJjNjZkcC01MDAsCi0gICAgMHgxLmRiNmRiNmRiNmRiNzJwLTIsIDB4MS5jMzBjMzBjMzBjMmZmcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTEKLSAgICAweDEuYTgyZTE0NjkwMjVjODUwYzE0NDhhMTljMmFmNjdmZTRwLTUwMCwKLSAgICAweDEuZGI2ZGI2ZGI2ZGI3MnAtMiwgMHgxLmMzMGMzMGMzMGMzcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTIKLSAgICAweDEuYTgyZTE0NjkwMjQ4MmRjNzRlZDZiMDQyOWVkNjI3N2NwLTUwMCwKLSAgICAweDEuZGI2ZGI2ZGI2ZGI3MnAtMiwgMHgxLmMzMGMzMGMzMGMzMDFwOAotICB9LAotICB7IC8vIEVudHJ5IDUxMwotICAgIDB4MS5hODJlMTQ2OTAyMzNkNjgyODk2NGJmZTJjNzkxYmQzNXAtNTAwLAotICAgIDB4MS5kYjZkYjZkYjZkYjcycC0yLCAweDEuYzMwYzMwYzMwYzMwMnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTE0Ci0gICAgMHgxLmE4MmUxNDY5MDI5ZTVhNmI1ODQ1YjRiY2NkYWRiZjYycC01MDAsCi0gICAgMHgxLmRiNmRiNmRiNmRiNzNwLTIsIDB4MS5jMzBjMzBjMzBjMmZlcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTUKLSAgICAweDEuYTgyZTE0NjkwMjhhMDMyNjkyZDNjMDNiZjg5MjNjN2NwLTUwMCwKLSAgICAweDEuZGI2ZGI2ZGI2ZGI3M3AtMiwgMHgxLmMzMGMzMGMzMGMyZmZwOAotICB9LAotICB7IC8vIEVudHJ5IDUxNgotICAgIDB4MS5hODJlMTQ2OTAyNzVhYmUxY2Q2MWNjYjRkODUyYTdiOXAtNTAwLAotICAgIDB4MS5kYjZkYjZkYjZkYjczcC0yLCAweDEuYzMwYzMwYzMwYzNwOAotICB9LAotICB7IC8vIEVudHJ5IDUxNwotICAgIDB4MS5hODJlMTQ2OTAyNjE1NDlkMDdlZmRhMjc2Y2VmMDExNnAtNTAwLAotICAgIDB4MS5kYjZkYjZkYjZkYjczcC0yLCAweDEuYzMwYzMwYzMwYzMwMXA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTE4Ci0gICAgMHgxLmE4MmUxNDY5MDI0Y2ZkNTg0MjdkZTg5M2I2Njc0ODk1cC01MDAsCi0gICAgMHgxLmRiNmRiNmRiNmRiNzNwLTIsIDB4MS5jMzBjMzBjMzBjMzAycDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTkKLSAgICAweDEuYTgyZTE0NjkwMmI3ODE0MTExNWVlM2JhMmIxNTg3MjNwLTUwMCwKLSAgICAweDEuZGI2ZGI2ZGI2ZGI3NHAtMiwgMHgxLmMzMGMzMGMzMGMyZmVwOAotICB9LAotICB7IC8vIEVudHJ5IDUyMAotICAgIDB4MS5hODJlMTQ2OTAyYTMyOWZjNGJlY2VlMDU3NmI2YjYwM3AtNTAwLAotICAgIDB4MS5kYjZkYjZkYjZkYjc0cC0yLCAweDEuYzMwYzMwYzMwYzJmZnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTIxCi0gICAgMHgxLmE4MmUxNDY5MDI4ZWQyYjc4NjdhZjk0YTc3MzNkMzA1cC01MDAsCi0gICAgMHgxLmRiNmRiNmRiNmRiNzRwLTIsIDB4MS5jMzBjMzBjMzBjM3A4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTIyCi0gICAgMHgxLmE4MmUxNDY5MDI3YTdiNzJjMTA5MDU4OTJjOGNkZTI5cC01MDAsCi0gICAgMHgxLmRiNmRiNmRiNmRiNzRwLTIsIDB4MS5jMzBjMzBjMzBjMzAxcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjMKLSAgICAweDEuYTgyZTE0NjkwMjY2MjQyZGZiOTcxMmMxOTZjMWQ3NmRwLTUwMCwKLSAgICAweDEuZGI2ZGI2ZGI2ZGI3NHAtMiwgMHgxLmMzMGMzMGMzMGMzMDJwOAotICB9LAotICB7IC8vIEVudHJ5IDUyNAotICAgIC0weDEuZmZmZmZmZmZmZmZmZTAwMDAwMDAwMDAwMDFmZmZmZmZwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsIC0weDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI1Ci0gICAgLTB4MS5wMCwKLSAgICAtMHgxLjBwMCwgLTB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjYKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwNDBwMCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI3Ci0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjBwMSwgMHgxLjBwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjgKLSAgICBIVUdFX1ZBTCwKLSAgICAweDEuMHAyLCAweDEuMHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTI5Ci0gICAgMHgxLmZmZmZmZmZmZmZlYzVjODVmZGY0NzQzZmQ2MTJiMjhhcC0xMDI1LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLCAweDEuZmZmZmZmZmZmZmZmZnA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTMwCi0gICAgMHgxLmZmZmZmZmZmZmZjMDAwMDAwMDAwMDNmZWZmZmZmZmZmcC0xMDI1LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yLCAweDEuMHAxMAotICB9LAotICB7IC8vIEVudHJ5IDUzMQotICAgIDB4MS5mZmZmZmZmZmZmNjc0NmY0MDQxNzJmMDUzYjFhNmJmMnAtMTAyNSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMiwgMHgxLjAwMDAwMDAwMDAwMDFwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzIKLSAgICAweDEuMDAwMDAwMDAwMDE2MmU0MmZlZmEzYWU1MzM2OTM4OGNwLTEwMjQsCi0gICAgMHgxLjBwLTEsIDB4MS5mZmZmZmZmZmZmZmZmcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzMKLSAgICAweDEucC0xMDI0LAotICAgIDB4MS4wcC0xLCAweDEuMHAxMAotICB9LAotICB7IC8vIEVudHJ5IDUzNAotICAgIDB4MS5mZmZmZmZmZmZmYTc0NmY0MDQxNzFmZjMxOTlhZWVkN3AtMTAyNSwKLSAgICAweDEuMHAtMSwgMHgxLjAwMDAwMDAwMDAwMDFwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzUKLSAgICAweDEuMDAwMDAwMDAwMDU2MmU0MmZlZmE0ODZjYzQyOGY3MWNwLTEwMjQsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsIDB4MS5mZmZmZmZmZmZmZmZmcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzYKLSAgICAweDEuMDAwMDAwMDAwMDQwMDAwMDAwMDAwN2ZlcC0xMDI0LAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xLCAweDEuMHAxMAotICB9LAotICB7IC8vIEVudHJ5IDUzNwotICAgIDB4MS4wMDAwMDAwMDAwMTNhMzdhMDIwYjhjZTQ2YjRkZmE0ZXAtMTAyNCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMSwgMHgxLjAwMDAwMDAwMDAwMDFwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzgKLSAgICAweDEuMDAwMDAwMDAwMDc0NTE5YTU2MjM1MzNkZjhkY2QzNTNwLTEwNzQsCi0gICAgMHgxLjBwLTEwNzQsIDB4MS5mZmZmZmZmZmZmZmZicC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM5Ci0gICAgMHgxLjAwMDAwMDAwMDA1ZDBlMTUxMWI1ZDdmNzJjNjEzNjhhcC0xMDc0LAotICAgIDB4MS4wcC0xMDc0LCAweDEuZmZmZmZmZmZmZmZmY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDU0MAotICAgIDB4MS4wMDAwMDAwMDAwNDVjYThmY2Q0ODVlY2Q5M2E2ZWM5ZHAtMTA3NCwKLSAgICAweDEuMHAtMTA3NCwgMHgxLmZmZmZmZmZmZmZmZmRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDEKLSAgICAweDEuMDAwMDAwMDAwMDJlODcwYTg4ZGFlN2MxMmVhZGY1OGNwLTEwNzQsCi0gICAgMHgxLjBwLTEwNzQsIDB4MS5mZmZmZmZmZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQyCi0gICAgMHgxLjAwMDAwMDAwMDAxNzQzODU0NDZkNzJkMWZkNzY1MTU4cC0xMDc0LAotICAgIDB4MS4wcC0xMDc0LCAweDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDU0MwotICAgIDB4MS5wLTEwNzQsCi0gICAgMHgxLjBwLTEwNzQsIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDQKLSAgICAwLjAsCi0gICAgMHgxLjBwLTEwNzQsIDB4MS4wMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDUKLSAgICAwLjAsCi0gICAgMHgxLjBwLTEwNzQsIDB4MS4wMDAwMDAwMDAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDYKLSAgICAwLjAsCi0gICAgMHgxLjBwLTEwNzQsIDB4MS4wMDAwMDAwMDAwMDAzcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDcKLSAgICAwLjAsCi0gICAgMHgxLjBwLTEwNzQsIDB4MS4wMDAwMDAwMDAwMDA0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDgKLSAgICAwLjAsCi0gICAgMHgxLjBwLTEwNzQsIDB4MS4wMDAwMDAwMDAwMDA1cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDkKLSAgICAweDEuMDAwMDAwMDAwMDc0MzVlMDgyNjQ5YTY4ZjY0ZmUzMDZwLTEwNzMsCi0gICAgMHgxLjBwLTEwNzMsIDB4MS5mZmZmZmZmZmZmZmZicC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUwCi0gICAgMHgxLjAwMDAwMDAwMDA1Y2Y3ZTZjZWI2ZGRiNTJlMWIwOTllcC0xMDczLAotICAgIDB4MS4wcC0xMDczLCAweDEuZmZmZmZmZmZmZmZmY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDU1MQotICAgIDB4MS4wMDAwMDAwMDAwNDViOWVkMWIwOTIzMWQ5N2M1NmM5ZHAtMTA3MywKLSAgICAweDEuMHAtMTA3MywgMHgxLmZmZmZmZmZmZmZmZmRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTIKLSAgICAweDEuMDAwMDAwMDAwMDJlN2JmMzY3NWI2YWEyMzM0ZjBjMDJwLTEwNzMsCi0gICAgMHgxLjBwLTEwNzMsIDB4MS5mZmZmZmZmZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUzCi0gICAgMHgxLjAwMDAwMDAwMDAxNzNkZjliM2FkYjQ0MzAwYjdlN2NlcC0xMDczLAotICAgIDB4MS4wcC0xMDczLCAweDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDU1NAotICAgIDB4MS5wLTEwNzMsCi0gICAgMHgxLjBwLTEwNzMsIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTUKLSAgICAweDEuZmZmZmZmZmZmZmEzMDgxOTMxNDkzYjlkMjg1YmNiMmJwLTEwNzQsCi0gICAgMHgxLjBwLTEwNzMsIDB4MS4wMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTYKLSAgICAweDEuZmZmZmZmZmZmZjQ2MTAzMjYyOTI4ODFiZGZiMTc5ODNwLTEwNzQsCi0gICAgMHgxLjBwLTEwNzMsIDB4MS4wMDAwMDAwMDAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTcKLSAgICAweDEuZmZmZmZmZmZmZWU5MTg0YjkzZGJlNTdjMjYwMTBiMDRwLTEwNzQsCi0gICAgMHgxLjBwLTEwNzMsIDB4MS4wMDAwMDAwMDAwMDAzcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTgKLSAgICAweDEuZmZmZmZmZmZmZThjMjA2NGM1MjU1M2JkZmI0YTdmYWRwLTEwNzQsCi0gICAgMHgxLjBwLTEwNzMsIDB4MS4wMDAwMDAwMDAwMDA0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTkKLSAgICAweDEuZmZmZmZmZmZmZTJmMjg3ZGY2NmVkMmUxNWY4ZGQ3N2FwLTEwNzQsCi0gICAgMHgxLjBwLTEwNzMsIDB4MS4wMDAwMDAwMDAwMDA1cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjAKLSAgICAweDEuODAwMDAwMDAwMGFlMzg3Y2QxZThmM2YzOWZlMTU3ZjlwLTEwNzMsCi0gICAgMHgxLjhwLTEwNzMsIDB4MS5mZmZmZmZmZmZmZmZicC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYxCi0gICAgMHgxLjgwMDAwMDAwMDA4YjYwNjNkYjIwYmNkNjdiNGY1YmE1cC0xMDczLAotICAgIDB4MS44cC0xMDczLCAweDEuZmZmZmZmZmZmZmZmY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDU2MgotICAgIDB4MS44MDAwMDAwMDAwNjg4ODRhZTQ1ODg4ZTJiZjZmZDRhZnAtMTA3MywKLSAgICAweDEuOHAtMTA3MywgMHgxLmZmZmZmZmZmZmZmZmRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjMKLSAgICAweDEuODAwMDAwMDAwMDQ1YjAzMWVkOTA1ODE4NmM0MmMzMTdwLTEwNzMsCi0gICAgMHgxLjhwLTEwNzMsIDB4MS5mZmZmZmZmZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY0Ci0gICAgMHgxLjgwMDAwMDAwMDAyMmQ4MThmNmM4MmE3NzgxYzgyNmRjcC0xMDczLAotICAgIDB4MS44cC0xMDczLCAweDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDU2NQotICAgIDB4MS44MHAtMTA3MywKLSAgICAweDEuOHAtMTA3MywgMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDU2NgotICAgIDB4MS43ZmZmZmZmZmZmYmE0ZmNlMTI2ZmI0OGQzNjg3MTI1ZHAtMTA3MywKLSAgICAweDEuOHAtMTA3MywgMHgxLjAwMDAwMDAwMDAwMDFwMAotICB9LAotICB7IC8vIEVudHJ5IDU2NwotICAgIDB4MS43ZmZmZmZmZmZmNzQ5ZjljMjRkZjc1YzAwZmQ3ZmEyZXAtMTA3MywKLSAgICAweDEuOHAtMTA3MywgMHgxLjAwMDAwMDAwMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDU2OAotICAgIDB4MS43ZmZmZmZmZmZmMmVlZjZhMzc0ZjQzOTg4YmYyYjc2ZXAtMTA3MywKLSAgICAweDEuOHAtMTA3MywgMHgxLjAwMDAwMDAwMDAwMDNwMAotICB9LAotICB7IC8vIEVudHJ5IDU2OQotICAgIDB4MS43ZmZmZmZmZmZlZTkzZjM4NDliZjFlMTZhYWQ3NGExZHAtMTA3MywKLSAgICAweDEuOHAtMTA3MywgMHgxLjAwMDAwMDAwMDAwMDRwMAotICB9LAotICB7IC8vIEVudHJ5IDU3MAotICAgIDB4MS43ZmZmZmZmZmZlYTM4ZjA2NWMyZjA1M2E2Yzg1YjIzN3AtMTA3MywKLSAgICAweDEuOHAtMTA3MywgMHgxLjAwMDAwMDAwMDAwMDVwMAotICB9LAotICB7IC8vIEVudHJ5IDU3MQotICAgIDB4MS4wMDAwMDBhMGNmNjVlYjE4MTdhNzA5NWQ5YTA0NDNhN3AwLAotICAgIDB4MS4wcC0yOSwgLTB4MS4wcC0yOQotICB9LAotICB7IC8vIEVudHJ5IDU3MgotICAgIDB4MS5mZmZmZmY1ZjMwOWE2MGFhZDVjMjMwOWY4MWY5MGRlZnAtMSwKLSAgICAweDEuMHAtMjksIDB4MS4wcC0zMAotICB9LAotICB7IC8vIEVudHJ5IDU3MwotICAgIDB4MS5mZmZmZmQ5ZTA3Y2YwNzc2N2E1NWFmYmU5YWNhZTkzZXAtMSwKLSAgICAweDEuMHA1NSwgLTB4MS4wcC0yOQotICB9LAotICB7IC8vIEVudHJ5IDU3NAotICAgIDB4MS4wMDAwMDA5ODdlMGNjNjYzNDRkODliNDk0ZTFmNDNiM3AwLAotICAgIDB4MS4wcDU1LCAweDEuMHAtMzAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzUKLSAgICAweDEuZmZmZmZkNjY5NDI3Y2YxNTk1MTU4NzM4ODdjMTdjZjJwLTEsCi0gICAgMHgxLjBwNjAsIC0weDEuMHAtMjkKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzYKLSAgICAweDEuMDAwMDAwYTY1YWY2YWU2MWJlODhlYTI1NTg3OTBjZDdwMCwKLSAgICAweDEuMHA2MCwgMHgxLjBwLTMwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc3Ci0gICAgMHgxLmZmZmZmZmZmZmUwMDAwMDAwMDAwZmZmN2ZmZmZmZmFhcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLCAweDEuMHAxMwotICB9LAotICB7IC8vIEVudHJ5IDU3OAotICAgIDB4MS5mZmZmZmZmZmYwMDAwMDAwMDAzZmZmYmZmZmZmNTU1N3AtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwgMHgxLjBwMTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzkKLSAgICAweDEucDAsCi0gICAgMHgxLjBwMCwgMHgxLjBwMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODAKLSAgICAweDEucDAsCi0gICAgMHgxLjBwMCwgMHgxLjBwMTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODEKLSAgICAweDEuMDAwMDAwMDAwMjAwMDAwMDAwMDFmZmYwMDAwMDAxNTVwMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAwLCAweDEuMHAxMwotICB9LAotICB7IC8vIEVudHJ5IDU4MgotICAgIDB4MS4wMDAwMDAwMDEwMDAwMDAwMDA3ZmZmODAwMDAyYWFhMnAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsIDB4MS4wcDE2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTgzCi0gICAgMHgxLmZmZmZmZmMwMDAwMDA0MDAwMDAxZDU1NTU1MTZhYWFhcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwMjUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODQKLSAgICAweDEuZmZmZmZlMDAwMDAwZmZmZmZmYmFhYWFhYjAwMDAwMDNwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsIC0weDEuMHAyOAotICB9LAotICB7IC8vIEVudHJ5IDU4NQotICAgIDB4MS5wMCwKLSAgICAtMHgxLjBwMCwgLTB4MS4wcDI1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTg2Ci0gICAgMHgxLnAwLAotICAgIC0weDEuMHAwLCAtMHgxLjBwMjgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODcKLSAgICAweDEuMDAwMDAwMTAwMDAwMDA4MDAwMDA0MmFhYWFhZWI1NTVwMCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHAyNQotICB9LAotICB7IC8vIEVudHJ5IDU4OAotICAgIDB4MS4wMDAwMDA4MDAwMDAyMDAwMDAwNzU1NTU1N3AwLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwgLTB4MS4wcDI4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTg5Ci0gICAgMHgxLjM2OGIyZmM2Zjk2MGE0YzFkOWFhNjI4ZmUzZjEzZmZmcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwNTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTAKLSAgICAweDEuNWZjMjEwNDEwMjdiMjNiMDUxNTZiOGFlYThiNWU5MjVwLTEyLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwNTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTEKLSAgICAweDEucDAsCi0gICAgLTB4MS4wcDAsIC0weDEuMHA1MQotICB9LAotICB7IC8vIEVudHJ5IDU5MgotICAgIDB4MS5wMCwKLSAgICAtMHgxLjBwMCwgLTB4MS4wcDU1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTkzCi0gICAgMHgxLjQ4YjVlM2MzZTgxODY3YmYzMWE3N2E4M2MzMmM0NzQ0cDAsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLCAtMHgxLjBwNTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTQKLSAgICAweDEuYjRjOTAyZTI3M2E1YTFjNTY3MDFlNzE1ZWRhZjIxMTVwNSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHA1NQotICB9LAotICB7IC8vIEVudHJ5IDU5NQotICAgIDB4MS41ZmMyMTA0MTAyN2IyM2IwNTE1NmI4YWVhOGI1ZTkyNXAtMTIsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsIC0weDEuMHA1NQotICB9LAotICB7IC8vIEVudHJ5IDU5NgotICAgIDB4MS45NjlkNDczMjFlNGZlN2Y5YmI4YzQzYTVlNDg2YjlhZXAtOTMsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsIC0weDEuMHA1OAotICB9LAotICB7IC8vIEVudHJ5IDU5NwotICAgIDB4MS5wMCwKLSAgICAtMHgxLjBwMCwgLTB4MS4wcDU1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTk4Ci0gICAgMHgxLnAwLAotICAgIC0weDEuMHAwLCAtMHgxLjBwNTgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTkKLSAgICAweDEuYjRjOTAyZTI3M2E1YTFjNTY3MDFlNzE1ZWRhZjIxMTVwNSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHA1NQotICB9LAotICB7IC8vIEVudHJ5IDYwMAotICAgIDB4MS4xZjQzZmNjNGI2NjM1NzdhNDVlYTliNDljY2U5ZWU3M3A0NiwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHA1OAotICB9LAotICB7IC8vIEVudHJ5IDYwMQotICAgIDB4MS40NDEwOWVkYjIwYTc1NmFkNzY3ZDI1MTVjOTRhMDAzYXAtNzM5LAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwNjEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDIKLSAgICAwLjAsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAsIC0weDEuMHA2NAotICB9LAotICB7IC8vIEVudHJ5IDYwMwotICAgIDB4MS5wMCwKLSAgICAtMHgxLjBwMCwgLTB4MS4wcDYxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA0Ci0gICAgMHgxLnAwLAotICAgIC0weDEuMHAwLCAtMHgxLjBwNjQKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDUKLSAgICAweDEuNDFjN2E4ODE0YmYwYTgwMWM1MzUzZjMwMmE0MGNjN2ZwMzY5LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwgLTB4MS4wcDYxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA2Ci0gICAgSFVHRV9WQUwsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xLCAtMHgxLjBwNjQKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDcKLSAgICAweDEuMDAwMDAwMTAwMDAwMDA4MDAwMDA0MmFhYWFhZWI1NTVwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwgLTB4MS4wcDI1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjA4Ci0gICAgMHgxLjAwMDAwMDgwMDAwMDIwMDAwMDA3NTU1NTU3cDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHAyOAotICB9LAotICB7IC8vIEVudHJ5IDYwOQotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAtMHgxLjBwMjUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTAKLSAgICAweDEucDAsCi0gICAgMHgxLjBwMCwgLTB4MS4wcDI4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjExCi0gICAgMHgxLmZmZmZmZmMwMDAwMDA0MDAwMDAxZDU1NTU1MTZhYWFhcC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsIC0weDEuMHAyNQotICB9LAotICB7IC8vIEVudHJ5IDYxMgotICAgIDB4MS5mZmZmZmUwMDAwMDBmZmZmZmZiYWFhYWFiMDAwMDAwM3AtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAwLCAtMHgxLjBwMjgKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTMKLSAgICAweDEuNDhiNWUzYzNlODE4NjdiZjMxYTc3YTgzYzMyYzQ3NDRwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwgLTB4MS4wcDUxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE0Ci0gICAgMHgxLmI0YzkwMmUyNzNhNWExYzU2NzAxZTcxNWVkYWYyMTE1cDUsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHA1NQotICB9LAotICB7IC8vIEVudHJ5IDYxNQotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAtMHgxLjBwNTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTYKLSAgICAweDEucDAsCi0gICAgMHgxLjBwMCwgLTB4MS4wcDU1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjE3Ci0gICAgMHgxLjM2OGIyZmM2Zjk2MGE0YzFkOWFhNjI4ZmUzZjEzZmZmcC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsIC0weDEuMHA1MQotICB9LAotICB7IC8vIEVudHJ5IDYxOAotICAgIDB4MS41ZmMyMTA0MTAyN2IyM2IwNTE1NmI4YWVhOGI1ZTkyNXAtMTIsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwgLTB4MS4wcDU1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjE5Ci0gICAgMHgxLmI0YzkwMmUyNzNhNWExYzU2NzAxZTcxNWVkYWYyMTE1cDUsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHA1NQotICB9LAotICB7IC8vIEVudHJ5IDYyMAotICAgIDB4MS4xZjQzZmNjNGI2NjM1NzdhNDVlYTliNDljY2U5ZWU3M3A0NiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwgLTB4MS4wcDU4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjIxCi0gICAgMHgxLnAwLAotICAgIDB4MS4wcDAsIC0weDEuMHA1NQotICB9LAotICB7IC8vIEVudHJ5IDYyMgotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAtMHgxLjBwNTgKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjMKLSAgICAweDEuNWZjMjEwNDEwMjdiMjNiMDUxNTZiOGFlYThiNWU5MjVwLTEyLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsIC0weDEuMHA1NQotICB9LAotICB7IC8vIEVudHJ5IDYyNAotICAgIDB4MS45NjlkNDczMjFlNGZlN2Y5YmI4YzQzYTVlNDg2YjlhZXAtOTMsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwgLTB4MS4wcDU4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjI1Ci0gICAgMHgxLjQxYzdhODgxNGJmMGE4MDFjNTM1M2YzMDJhNDBjYzdmcDM2OSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwgLTB4MS4wcDYxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI2Ci0gICAgSFVHRV9WQUwsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsIC0weDEuMHA2NAotICB9LAotICB7IC8vIEVudHJ5IDYyNwotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAtMHgxLjBwNjEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjgKLSAgICAweDEucDAsCi0gICAgMHgxLjBwMCwgLTB4MS4wcDY0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjI5Ci0gICAgMHgxLjQ0MTA5ZWRiMjBhNzU2YWQ3NjdkMjUxNWM5NGEwMDNhcC03MzksCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwgLTB4MS4wcDYxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjMwCi0gICAgMC4wLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAsIC0weDEuMHA2NAotICB9LAotICB7IC8vIEVudHJ5IDYzMQotICAgIEhVR0VfVkFMLAotICAgIC0weDEuMHAxNSwgMHgxLjBwNjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzIKLSAgICBIVUdFX1ZBTCwKLSAgICAwLjAsIC0weDEuOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjMzCi0gICAgLUhVR0VfVkFMLAotICAgIC0wLjAsIC0weDEuOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM0Ci0gICAgSFVHRV9WQUwsCi0gICAgMC4wLCAtMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDYzNQotICAgIC1IVUdFX1ZBTCwKLSAgICAtMC4wLCAtMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDYzNgotICAgIEhVR0VfVkFMLAotICAgIDAuMCwgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzcKLSAgICBIVUdFX1ZBTCwKLSAgICAwLjAsIC0weDEuOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM4Ci0gICAgSFVHRV9WQUwsCi0gICAgMC4wLCAtMHgxLjBwMQotICB9LAotICB7IC8vIEVudHJ5IDYzOQotICAgIEhVR0VfVkFMLAotICAgIDAuMCwgLTB4MS4wMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDAKLSAgICBIVUdFX1ZBTCwKLSAgICAwLjAsIC0weDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY0MQotICAgIEhVR0VfVkFMLAotICAgIDAuMCwgLTB4MS4wcC0xMDIyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQyCi0gICAgSFVHRV9WQUwsCi0gICAgMC4wLCAtMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDMKLSAgICBIVUdFX1ZBTCwKLSAgICAtMC4wLCAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDY0NAotICAgIEhVR0VfVkFMLAotICAgIC0wLjAsIC0weDEuOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ1Ci0gICAgSFVHRV9WQUwsCi0gICAgLTAuMCwgLTB4MS4wcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDYKLSAgICBIVUdFX1ZBTCwKLSAgICAtMC4wLCAtMHgxLjAwMDAwMDAwMDAwMDFwMAotICB9LAotICB7IC8vIEVudHJ5IDY0NwotICAgIEhVR0VfVkFMLAotICAgIC0wLjAsIC0weDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY0OAotICAgIEhVR0VfVkFMLAotICAgIC0wLjAsIC0weDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDY0OQotICAgIEhVR0VfVkFMLAotICAgIC0wLjAsIC0weDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDY1MAotICAgIEhVR0VfVkFMLAotICAgIDAuMCwgLUhVR0VfVkFMCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUxCi0gICAgSFVHRV9WQUwsCi0gICAgLTAuMCwgLUhVR0VfVkFMCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUyCi0gICAgMC4wLAotICAgIDAuMCwgMHgxLjhwMQotICB9LAotICB7IC8vIEVudHJ5IDY1MwotICAgIC0wLjAsCi0gICAgLTAuMCwgMHgxLjhwMQotICB9LAotICB7IC8vIEVudHJ5IDY1NAotICAgIDAuMCwKLSAgICAwLjAsIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTUKLSAgICAtMC4wLAotICAgIC0wLjAsIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTYKLSAgICAwLjAsCi0gICAgMC4wLCBIVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDY1NwotICAgIDAuMCwKLSAgICAwLjAsIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTgKLSAgICAwLjAsCi0gICAgMC4wLCAweDEuOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU5Ci0gICAgMC4wLAotICAgIDAuMCwgMHgxLjBwMQotICB9LAotICB7IC8vIEVudHJ5IDY2MAotICAgIDAuMCwKLSAgICAwLjAsIDB4MS4wMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjEKLSAgICAwLjAsCi0gICAgMC4wLCAweDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY2MgotICAgIDAuMCwKLSAgICAwLjAsIDB4MS4wcC0xMDIyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYzCi0gICAgMC4wLAotICAgIDAuMCwgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjQKLSAgICAwLjAsCi0gICAgLTAuMCwgSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjUKLSAgICAwLjAsCi0gICAgLTAuMCwgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDY2NgotICAgIDAuMCwKLSAgICAtMC4wLCAweDEuOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY3Ci0gICAgMC4wLAotICAgIC0wLjAsIDB4MS4wcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjgKLSAgICAwLjAsCi0gICAgLTAuMCwgMHgxLjAwMDAwMDAwMDAwMDFwMAotICB9LAotICB7IC8vIEVudHJ5IDY2OQotICAgIDAuMCwKLSAgICAtMC4wLCAweDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY3MAotICAgIDAuMCwKLSAgICAtMC4wLCAweDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDY3MQotICAgIDAuMCwKLSAgICAtMC4wLCAweDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDY3MgotICAgIDB4MS5wMCwKLSAgICAtMHgxLjBwMCwgSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzMKLSAgICAweDEucDAsCi0gICAgLTB4MS4wcDAsIC1IVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDY3NAotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCBIVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDY3NQotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAtSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzYKLSAgICAweDEucDAsCi0gICAgMHgxLjBwMCwgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDY3NwotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDY3OAotICAgIDB4MS5wMCwKLSAgICAtMHgxLjBwMCwgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDY3OQotICAgIDB4MS5wMCwKLSAgICAtMHgxLjBwMCwgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODAKLSAgICAweDEucDAsCi0gICAgMHgxLjBwMCwgMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODEKLSAgICAweDEucDAsCi0gICAgMHgxLjBwMCwgLTB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgyCi0gICAgMHgxLnAwLAotICAgIDB4MS4wcDAsIDB4MS4wcC0xMDIyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgzCi0gICAgMHgxLnAwLAotICAgIDB4MS4wcDAsIC0weDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDY4NAotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDY4NQotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODYKLSAgICAweDEucDAsCi0gICAgMHgxLjBwMCwgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODcKLSAgICAweDEucDAsCi0gICAgMHgxLjBwMCwgLTB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjg4Ci0gICAgMHgxLnAwLAotICAgIDB4MS4wcDAsIDAuMAotICB9LAotICB7IC8vIEVudHJ5IDY4OQotICAgIDB4MS5wMCwKLSAgICAweDEuMHAwLCAtMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkwCi0gICAgMHgxLnAwLAotICAgIEhVR0VfVkFMLCAwLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTEKLSAgICAweDEucDAsCi0gICAgSFVHRV9WQUwsIC0wLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTIKLSAgICAweDEucDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywgMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkzCi0gICAgMHgxLnAwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsIC0wLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTQKLSAgICAweDEucDAsCi0gICAgMHgxLjBwLTEwMjIsIDAuMAotICB9LAotICB7IC8vIEVudHJ5IDY5NQotICAgIDB4MS5wMCwKLSAgICAweDEuMHAtMTAyMiwgLTAuMAotICB9LAotICB7IC8vIEVudHJ5IDY5NgotICAgIDB4MS5wMCwKLSAgICAweDEuMHAtMTA3NCwgMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk3Ci0gICAgMHgxLnAwLAotICAgIDB4MS4wcC0xMDc0LCAtMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk4Ci0gICAgMHgxLnAwLAotICAgIDAuMCwgMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk5Ci0gICAgMHgxLnAwLAotICAgIDAuMCwgLTAuMAotICB9LAotICB7IC8vIEVudHJ5IDcwMAotICAgIDB4MS5wMCwKLSAgICAtMC4wLCAwLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDEKLSAgICAweDEucDAsCi0gICAgLTAuMCwgLTAuMAotICB9LAotICB7IC8vIEVudHJ5IDcwMgotICAgIDB4MS5wMCwKLSAgICAtMHgxLjBwLTEwNzQsIDAuMAotICB9LAotICB7IC8vIEVudHJ5IDcwMwotICAgIDB4MS5wMCwKLSAgICAtMHgxLjBwLTEwNzQsIC0wLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDQKLSAgICAweDEucDAsCi0gICAgLTB4MS4wcC0xMDIyLCAwLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDUKLSAgICAweDEucDAsCi0gICAgLTB4MS4wcC0xMDIyLCAtMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA2Ci0gICAgMHgxLnAwLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLCAwLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDcKLSAgICAweDEucDAsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsIC0wLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDgKLSAgICAweDEucDAsCi0gICAgLUhVR0VfVkFMLCAwLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDkKLSAgICAweDEucDAsCi0gICAgLUhVR0VfVkFMLCAtMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgNzEwCi0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjBwLTEwMjIsIC1IVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDcxMQotICAgIEhVR0VfVkFMLAotICAgIDB4MS4wcC0xMDc0LCAtSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTIKLSAgICBIVUdFX1ZBTCwKLSAgICAtMHgxLjBwLTEwNzQsIC1IVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDcxMwotICAgIEhVR0VfVkFMLAotICAgIC0weDEuMHAtMTAyMiwgLUhVR0VfVkFMCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE0Ci0gICAgMC4wLAotICAgIEhVR0VfVkFMLCAtSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTUKLSAgICAwLjAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywgLUhVR0VfVkFMCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE2Ci0gICAgMC4wLAotICAgIDB4MS44cDAsIC1IVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDcxNwotICAgIDAuMCwKLSAgICAtMHgxLjhwMCwgLUhVR0VfVkFMCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE4Ci0gICAgMC4wLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLCAtSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTkKLSAgICAwLjAsCi0gICAgLUhVR0VfVkFMLCAtSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjAKLSAgICAwLjAsCi0gICAgMHgxLjBwLTEwMjIsIEhVR0VfVkFMCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIxCi0gICAgMC4wLAotICAgIDB4MS4wcC0xMDc0LCBIVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDcyMgotICAgIDAuMCwKLSAgICAwLjAsIEhVR0VfVkFMCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIzCi0gICAgMC4wLAotICAgIC0wLjAsIEhVR0VfVkFMCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI0Ci0gICAgMC4wLAotICAgIC0weDEuMHAtMTA3NCwgSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjUKLSAgICAwLjAsCi0gICAgLTB4MS4wcC0xMDIyLCBIVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDcyNgotICAgIEhVR0VfVkFMLAotICAgIEhVR0VfVkFMLCBIVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDcyNwotICAgIEhVR0VfVkFMLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsIEhVR0VfVkFMCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI4Ci0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjhwMCwgSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjkKLSAgICBIVUdFX1ZBTCwKLSAgICAtMHgxLjhwMCwgSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzAKLSAgICBIVUdFX1ZBTCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywgSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzEKLSAgICBIVUdFX1ZBTCwKLSAgICAtSFVHRV9WQUwsIEhVR0VfVkFMCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMyCi0gICAgLTAuMCwKLSAgICAtSFVHRV9WQUwsIC0weDEuOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMzCi0gICAgLTAuMCwKLSAgICAtSFVHRV9WQUwsIC0weDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM0Ci0gICAgMC4wLAotICAgIC1IVUdFX1ZBTCwgLUhVR0VfVkFMCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM1Ci0gICAgMC4wLAotICAgIC1IVUdFX1ZBTCwgLTB4MS45MjFmYjU0NDQyZDE4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzYKLSAgICAwLjAsCi0gICAgLUhVR0VfVkFMLCAtMHgxLjkyMWZiNTQ0NDJkMThwMAotICB9LAotICB7IC8vIEVudHJ5IDczNwotICAgIDAuMCwKLSAgICAtSFVHRV9WQUwsIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM4Ci0gICAgMC4wLAotICAgIC1IVUdFX1ZBTCwgLTB4MS44cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzkKLSAgICAwLjAsCi0gICAgLUhVR0VfVkFMLCAtMHgxLjBwMQotICB9LAotICB7IC8vIEVudHJ5IDc0MAotICAgIDAuMCwKLSAgICAtSFVHRV9WQUwsIC0weDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDc0MQotICAgIDAuMCwKLSAgICAtSFVHRV9WQUwsIC0weDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDc0MgotICAgIC1IVUdFX1ZBTCwKLSAgICAtSFVHRV9WQUwsIDB4MS44cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDMKLSAgICAtSFVHRV9WQUwsCi0gICAgLUhVR0VfVkFMLCAweDEuNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ0Ci0gICAgSFVHRV9WQUwsCi0gICAgLUhVR0VfVkFMLCBIVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDc0NQotICAgIEhVR0VfVkFMLAotICAgIC1IVUdFX1ZBTCwgMHgxLjkyMWZiNTQ0NDJkMThwMQotICB9LAotICB7IC8vIEVudHJ5IDc0NgotICAgIEhVR0VfVkFMLAotICAgIC1IVUdFX1ZBTCwgMHgxLjkyMWZiNTQ0NDJkMThwMAotICB9LAotICB7IC8vIEVudHJ5IDc0NwotICAgIEhVR0VfVkFMLAotICAgIC1IVUdFX1ZBTCwgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDc0OAotICAgIEhVR0VfVkFMLAotICAgIC1IVUdFX1ZBTCwgMHgxLjhwMgotICB9LAotICB7IC8vIEVudHJ5IDc0OQotICAgIEhVR0VfVkFMLAotICAgIC1IVUdFX1ZBTCwgMHgxLjBwMQotICB9LAotICB7IC8vIEVudHJ5IDc1MAotICAgIEhVR0VfVkFMLAotICAgIC1IVUdFX1ZBTCwgMHgxLjBwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTEKLSAgICBIVUdFX1ZBTCwKLSAgICAtSFVHRV9WQUwsIDB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzUyCi0gICAgMC4wLAotICAgIEhVR0VfVkFMLCAtMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTMKLSAgICAwLjAsCi0gICAgSFVHRV9WQUwsIC0weDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDc1NAotICAgIDAuMCwKLSAgICBIVUdFX1ZBTCwgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTUKLSAgICAwLjAsCi0gICAgSFVHRV9WQUwsIC1IVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDc1NgotICAgIEhVR0VfVkFMLAotICAgIEhVR0VfVkFMLCBIVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDc1NwotICAgIEhVR0VfVkFMLAotICAgIEhVR0VfVkFMLCAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU4Ci0gICAgSFVHRV9WQUwsCi0gICAgSFVHRV9WQUwsIDB4MS4wcC0xMDIyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU5Ci0gICAgSFVHRV9WQUwsCi0gICAgSFVHRV9WQUwsIDB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzYwCi0gICAgSFVHRV9WQUwsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDc2MQotICAgIDAuMCwKLSAgICAweDEuMHAtMTAyMiwgMHgxLjBwMQotICB9LAotICB7IC8vIEVudHJ5IDc2MgotICAgIDAuMCwKLSAgICAtMHgxLjBwLTEwMjIsIDB4MS4wcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjMKLSAgICAwLjAsCi0gICAgMHgxLjBwLTEwNzQsIDB4MS4wcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjQKLSAgICAwLjAsCi0gICAgLTB4MS4wcC0xMDc0LCAweDEuMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY1Ci0gICAgSFVHRV9WQUwsCi0gICAgSFVHRV9WQUwsIDB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY2Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmY3ZmZmZmZmZmZmZmZmZWZmZmZmcDUxMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDc2NwotICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtMSwKLSAgICAweDEuMHAtMSwgMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjgKLSAgICAweDEucC01MTEsCi0gICAgMHgxLjBwLTEwMjIsIDB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY5Ci0gICAgMHgxLnAtNTM3LAotICAgIDB4MS4wcC0xMDc0LCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDc3MAotICAgIDAuMCwKLSAgICAwLjAsIDB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzcxCi0gICAgMC4wLAotICAgIC0wLjAsIDB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzcyCi0gICAgSFVHRV9WQUwsCi0gICAgLUhVR0VfVkFMLCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDc3MwotICAgIDAuMCwKLSAgICBIVUdFX1ZBTCwgLTB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc0Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDA0MDAwMDAwMDAwMDAwMThwLTUxMiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLCAtMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzUKLSAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKLSAgICAweDEuMHAtMSwgLTB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc2Ci0gICAgMHgxLnA1MTEsCi0gICAgMHgxLjBwLTEwMjIsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDc3NwotICAgIDB4MS5wNTM3LAotICAgIDB4MS4wcC0xMDc0LCAtMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzgKLSAgICBIVUdFX1ZBTCwKLSAgICAwLjAsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDc3OQotICAgIEhVR0VfVkFMLAotICAgIC0wLjAsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDc4MAotICAgIDAuMCwKLSAgICAtSFVHRV9WQUwsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDc4MQotICAgIDAuMCwKLSAgICAweDEuMHAtMSwgSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODIKLSAgICAwLjAsCi0gICAgMHgxLjBwLTEsIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODMKLSAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTEsCi0gICAgMHgxLjBwLTEsIDB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzg0Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS4wcC0xLCAweDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDc4NQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuMHAtMSwgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODYKLSAgICAweDEucDAsCi0gICAgMHgxLjBwLTEsIDAuMAotICB9LAotICB7IC8vIEVudHJ5IDc4NwotICAgIDB4MS5wMCwKLSAgICAweDEuMHAtMSwgLTAuMAotICB9LAotICB7IC8vIEVudHJ5IDc4OAotICAgIDB4MS5wMCwKLSAgICAweDEuMHAtMSwgLTB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzg5Ci0gICAgMHgxLnAwLAotICAgIDB4MS4wcC0xLCAtMHgxLjBwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTAKLSAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKLSAgICAweDEuMHAtMSwgLTB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzkxCi0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjBwLTEsIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzkyCi0gICAgSFVHRV9WQUwsCi0gICAgMHgxLjBwLTEsIC1IVUdFX1ZBTAotICB9LAotICB7IC8vIEVudHJ5IDc5MwotICAgIDAuMCwKLSAgICAtMHgxLjBwLTEsIEhVR0VfVkFMCi0gIH0sCi0gIHsgLy8gRW50cnkgNzk0Ci0gICAgMC4wLAotICAgIC0weDEuMHAtMSwgMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDc5NQotICAgIDB4MS5wMCwKLSAgICAtMHgxLjBwLTEsIDAuMAotICB9LAotICB7IC8vIEVudHJ5IDc5NgotICAgIDB4MS5wMCwKLSAgICAtMHgxLjBwLTEsIC0wLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTcKLSAgICBIVUdFX1ZBTCwKLSAgICAtMHgxLjBwLTEsIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzk4Ci0gICAgSFVHRV9WQUwsCi0gICAgLTB4MS4wcC0xLCAtSFVHRV9WQUwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTkKLSAgICAweDEucDEsCi0gICAgMHgxLjBwMiwgMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDAKLSAgICAweDEuODBwMSwKLSAgICAweDEuMnAzLCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDgwMQotICAgIDB4MS5wMiwKLSAgICAweDEuMHA0LCAweDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDgwMgotICAgIDB4MS5wLTEsCi0gICAgMHgxLjBwMiwgLTB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODAzCi0gICAgMHgxLnAtMiwKLSAgICAweDEuMHA0LCAtMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDQKLSAgICAweDEucC0zLAotICAgIDB4MS4wcDYsIC0weDEuMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDgwNQotICAgIEhVR0VfVkFMLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLCAtMHgxLjc0OTEwZDUyZDMwNTJwNjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDYKLSAgICAwLjAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEsIDB4MS43NDkxMGQ1MmQzMDUycDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgODA3Ci0gICAgMHgxLnAyLAotICAgIDB4MS4wcDEsIDB4MS4wcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDgKLSAgICAweDEucC0yLAotICAgIDB4MS4wcDEsIC0weDEuMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODA5Ci0gICAgMHgxLnAyLAotICAgIC0weDEuMHAxLCAweDEuMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODEwCi0gICAgMHgxLnAtMiwKLSAgICAtMHgxLjBwMSwgLTB4MS4wcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTEKLSAgICAweDEuYjBwNCwKLSAgICAweDEuOHAxLCAweDEuOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODEyCi0gICAgMHgxLjg2YTBwMTEsCi0gICAgMHgxLjRwMiwgMHgxLjRwMgotICB9LAotICB7IC8vIEVudHJ5IDgxMwotICAgIDB4MS45MjFlZTBwMTksCi0gICAgMHgxLmNwMiwgMHgxLmNwMgotICB9LAotICB7IC8vIEVudHJ5IDgxNAotICAgIDB4MS4yYTA1ZjJwMzMsCi0gICAgMHgxLjRwMywgMHgxLjRwMwotICB9LAotfTsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCi0KLVRFU1QobWF0aF9wb3csIHBvd19pbnRlbCkgewotI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplb2YoZ19wb3dfaW50ZWxfZGF0YSkvc2l6ZW9mKHBvd19pbnRlbF9kYXRhX3QpOyBpKyspIHsKLSAgICBFWFBFQ1RfRE9VQkxFX0VRKGdfcG93X2ludGVsX2RhdGFbaV0uZXhwZWN0ZWQsIHBvdyhnX3Bvd19pbnRlbF9kYXRhW2ldLnhfY2FsbF9kYXRhLCBnX3Bvd19pbnRlbF9kYXRhW2ldLnlfY2FsbF9kYXRhKSkgPDwgIkZhaWxlZCBvbiBlbGVtZW50ICIgPDwgaTsKLSAgfQotI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLiI7Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwotfQpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9wb3dmX3Rlc3QuY3BwIGIvdGVzdHMvbWF0aF9wb3dmX3Rlc3QuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmNzdiMjNhLi4wMDAwMDAwCi0tLSBhL3Rlc3RzL21hdGhfcG93Zl90ZXN0LmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDI3ODggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKgotICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7Ci0gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCi0gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKLSAqCi0gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAotICoKLSAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKLSAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCi0gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KLSAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKLSAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICovCi0KLSNpbmNsdWRlIDxtYXRoLmg+Ci0KLSNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgotCi0jaWYgZGVmaW5lZChfX0JJT05JQ19fKQotdHlwZWRlZiBzdHJ1Y3QgewotICBmbG9hdCBleHBlY3RlZDsKLSAgZmxvYXQgeF9jYWxsX2RhdGE7Ci0gIGZsb2F0IHlfY2FsbF9kYXRhOwotfSBwb3dmX2ludGVsX2RhdGFfdDsKLQotc3RhdGljIHBvd2ZfaW50ZWxfZGF0YV90IGdfcG93Zl9pbnRlbF9kYXRhW10gPSB7Ci0gIHsgLy8gRW50cnkgMAotICAgIEhVR0VfVkFMRiwKLSAgICAtMC4wLCAtMHgxLjAwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDEKLSAgICAwLjBmLAotICAgIC0weDEucC01LCAweDEuZTBwNAotICB9LAotICB7IC8vIEVudHJ5IDIKLSAgICAtMC4wZiwKLSAgICAtMHgxLnAtMzAsIDB4MS40MHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMwotICAgIDB4MS5wMCwKLSAgICAtMHgxLnAwLCAweDEuMDAwMDAycDMyCi0gIH0sCi0gIHsgLy8gRW50cnkgNAotICAgIDB4MS5wMCwKLSAgICAtMHgxLjAwMDAwMnAtNDEsIDAuMAotICB9LAotICB7IC8vIEVudHJ5IDUKLSAgICAweDEuZDFhMDI5MTI4Nzc4ZmNhM2Y5YTI2MWJlMWNiODZiZTdwLTEyMSwKLSAgICAtMHgxLjAwMDAwNnAwLCAtMHgxLmJjMWVlMnAyNwotICB9LAotICB7IC8vIEVudHJ5IDYKLSAgICAweDEuZGE2ZTNmZjIwMmRhNzUyZGU1MjNmOTg0NjMwM2MwYjVwLTEyNCwKLSAgICAtMHgxLjAwMDAwYXAwLCAtMHgxLjExMTExMnAyNwotICB9LAotICB7IC8vIEVudHJ5IDcKLSAgICAweDEuZWI3MGEyZmJiOGIyNDg5YjhkODM4ZWI2NWVkNjc2YWNwLTkxLAotICAgIC0weDEuMDAwMDBhcDAsIC0weDEuOGY4M2U0cDI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgOAotICAgIEhVR0VfVkFMRiwKLSAgICAtMHgxLjAwMDAyOHAwLCAweDEuMjBwNDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5Ci0gICAgMHgxLjAwMjAwMXAtNCwKLSAgICAtMHgxLjAwMTBwLTIsIDB4MS5wMQotICB9LAotICB7IC8vIEVudHJ5IDEwCi0gICAgMHgxLjAwMjAwMXAtODIsCi0gICAgLTB4MS4wMDEwcC00MSwgMHgxLnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEKLSAgICAweDEuMDA0MDA0cC04MiwKLSAgICAtMHgxLjAwMjBwLTQxLCAweDEucDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMgotICAgIDB4MS4wMDYwMDlwLTEyLAotICAgIC0weDEuMDAzMHAtNiwgMHgxLnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMKLSAgICAtMHgxLmZiODU5YWRiZGI3ZGY2OTc0YzVjOWE1NDg5ZTY5NzJhcDUzLAotICAgIC0weDEuMDA0MHAtNiwgLTB4MS4yMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQKLSAgICAweDEuMDA4MDEwcC04MiwKLSAgICAtMHgxLjAwNDBwLTQxLCAweDEucDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNQotICAgIDB4MS4wMGUwMzFwLTQwLAotICAgIC0weDEuMDA3MHAtMjAsIDB4MS5wMQotICB9LAotICB7IC8vIEVudHJ5IDE2Ci0gICAgMHgxLjMxZTQ1MmZmZmZlYzk2YTNkNWE4ODJmZTI0NGY4YzYzcC0xLAotICAgIC0weDEuMDQ2ZWY0cDAsIC0weDEuZTBwNAotICB9LAotICB7IC8vIEVudHJ5IDE3Ci0gICAgMHgxLjMzZThmMzA0cC0zNiwKLSAgICAtMHgxLjA4cC02LCAweDEuODBwMgotICB9LAotICB7IC8vIEVudHJ5IDE4Ci0gICAgMHgxLmQ4MjAwMWZlOWQ2YmRiYmE5ODYzOGRlZjhkMzdlNTBicC0xMjQsCi0gICAgLTB4MS4xZWMzOGNwMCwgLTB4MS43OHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTkKLSAgICAtMHgxLjQ1ZjNiZGVhYTVmNjBkMTIxYzNmYTc1MWRiZDc1OGFkcDM2LAotICAgIC0weDEuYmZmZmZlcC02LCAtMHgxLmMwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMAotICAgIDB4MS5kZjQxYWU3ZWY0ZTE1ZThhZDQ1YzcyOTNkZGMzZmU3ZHA2MSwKLSAgICAtMHgxLmZmZmZmYXAtMSwgLTB4MS5jOWIyNDRwMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMQotICAgIDB4MS5kZjQ2ZjI2ZjFmMTI5YTU0OTIyMDIyZjliNjUzYTk5ZnA2MSwKLSAgICAtMHgxLmZmZmZmYXAtMSwgLTB4MS5jOWIyNjJwMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMgotICAgIC0weDEuMDAwMDAzMDAwMDA5MDAwMDFiMDAwMDUxMDAwMGYzcDIxLAotICAgIC0weDEuZmZmZmZhcC0yMiwgLTB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDIzCi0gICAgLTB4MS4wMDAwMDMwMDAwMDkwMDAwMWIwMDAwNTEwMDAwZjNwLTk5LAotICAgIC0weDEuZmZmZmZhcDk4LCAtMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQKLSAgICAtMHgxLjc4YjU1ZWY4YWVjYjBiN2M1Yjg4NjVlMjcxNTdkODI0cC0yLAotICAgIC0weDEuZmZmZmZjcC0xLCAweDEuMDAwMDAycDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUKLSAgICAtMHgxLmZmZmZmZXAtNDEsCi0gICAgLTB4MS5mZmZmZmVwLTQxLCAweDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNgotICAgIDB4MS5wNzEsCi0gICAgMHgxLnAtMiwgLTB4MS4xY3A1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjcKLSAgICAweDEuZDU4MDcxMGUzODQ2M2MzZGQ2MmZjZTk4ZjIwM2I0NzFwLTEsCi0gICAgMHgxLnAtMiwgMHgxLjAwMDdwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOAotICAgIDB4MS5wLTE1LAotICAgIDB4MS5wLTIsIDB4MS5lMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkKLSAgICAwLjBmLAotICAgIDB4MS5wLTMsIDB4MS44ZmZmZmVwNQotICB9LAotICB7IC8vIEVudHJ5IDMwCi0gICAgMHgxLnAtNDAsCi0gICAgMHgxLnAtNSwgMHgxLnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzEKLSAgICAweDEucDQwLAotICAgIDB4MS5wLTEwLCAtMHgxLnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIKLSAgICAweDEuZWNmZmYwYjQ0OWQ3YzlhNWQ0OTRjODg0YzcxN2Y5Y2RwLTg4LAotICAgIDB4MS5wLTE0NCwgMHgxLjM1ODZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDMzCi0gICAgMHgxLmVjZmZmMGI0NDlkN2M5YTVkNDk0Yzg4NGM3MTdmOWNkcC0xMDYsCi0gICAgMHgxLnAtMTQ0LCAweDEuNzU4NmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLnAtMTQ5LCAtMHgxLmNjYWNjY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDM1Ci0gICAgSFVHRV9WQUxGLAotICAgIDB4MS5wLTE0OSwgLTB4MS5lNmU2NjZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNgotICAgIDB4MS5lOGUxMDEzNTViZDk3NWJmZWMzZmI1ZWQzNzU3Nzc3ZHAtMSwKLSAgICAweDEuMDAwMDAycC0yLCAweDEuMTExMXAtNQotICB9LAotICB7IC8vIEVudHJ5IDM3Ci0gICAgMHgxLmRkYjY0MzQ3YTU1ZTQ1MmVkMDRkNmExNzNjYTViNTZjcDk5LAotICAgIDB4MS4wMDAwMDJwLTExMSwgLTB4MS5jY2NjY2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOAotICAgIDB4MS41NThlOTkwMDA0YThlYmIzZTgxNzYyNzViYTlmMTA1MnA1MiwKLSAgICAweDEuMDAwMDAycC0xMTIsIC0weDEuZGYzYjVhcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkKLSAgICAweDEuZmZmZmZkMDAwMDA1M2ZmZmY2NjAwMDEyMGJmZmRkYjZwOTIsCi0gICAgMHgxLjAwMDAwMnAtMTI0LCAtMHgxLjgwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAKLSAgICAweDEuZmZmZmZmZmZmZmY4MDAwMDA4MDAwMDA1NTU1NTQ1NTVwLTEsCi0gICAgMHgxLjAwMDAwMnAwLCAtMHgxLnAtMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MQotICAgIDB4MS5mZmZmZmZmZmZmZjkwMDAwMDcwMDAwMDJlYWFhYTAyYXAtMSwKLSAgICAweDEuMDAwMDAycDAsIC0weDEuYzBwLTI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDIKLSAgICAweDEuZGRiNjUzMGQ0ODViN2JhZGI0NDFhNDQ2MGNhNTRjNjJwOSwKLSAgICAweDEuMDAwMDAycDExLCAweDEuY2NjY2M2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMKLSAgICAweDEuZDkwMTc5MGNkOWQxYjlkOGNkZjYxNjI5NjQ3OTAyMmZwLTE0LAotICAgIDB4MS4wMDAwMDJwMTcsIC0weDEuOGFmOGIwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQKLSAgICAweDEuZTZkM2Y5MGQ0MTQ0NDdiMmYyNDY3ZDRjMjE0NDk2YmRwMzAsCi0gICAgMHgxLjAwMDAwMnA0MiwgMHgxLjc5MDRhNHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ1Ci0gICAgMHgxLjAwMDAxMmZmZmZkNjgwMDRmYTdmYjE1OTEwOGVjOTdkcDAsCi0gICAgMHgxLjAwMDAxY3AwLCAweDEuNWI2ZGJhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDYKLSAgICAweDEuZDE3NDgxMGUxZTQ1MjdmMDExNTQ3ZGZjNGRjNmI0OGNwLTMsCi0gICAgMHgxLjAwMDAxY3AzLCAtMHgxLjZjY2NjZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ3Ci0gICAgMHgxLmQ1ODE5NzBlOGI0Y2NjOWRiYzI4ODk5YmQxODQ4ZTI0cC0xLAotICAgIDB4MS4wMDAwMmVwLTIsIDB4MS5mZmZmY2VwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OAotICAgIDB4MS4wMDA0NTUwMDAzMTJjYzZlNzljZWQ2NTNjMzhkN2UyYXAwLAotICAgIDB4MS4wMDAwMzhwLTUwLCAtMHgxLmZmZjc3ZXAtMjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OQotICAgIDB4MS4wMDQ4MDkwMGE4MDdlMDNmMDE1MDA0ODAwOTAwMDhwLTgxLAotICAgIDB4MS4wMDA4cC05LCAweDEuMjBwMwotICB9LAotICB7IC8vIEVudHJ5IDUwCi0gICAgMHgxLmZmYzAwNGZmYjAwNDVmYzgwMjlmZTIwMTQ5ZjI0MDhlcDM5LAotICAgIDB4MS4wMDA4cC0xMCwgLTB4MS5wMgotICB9LAotICB7IC8vIEVudHJ5IDUxCi0gICAgMHgxLmZlYzFiYjM1YjVhODI2NTI2MTAxYWRhYjA2OTVkMWQzcC0xLAotICAgIDB4MS4wMGUwcDAsIC0weDEuNmNjY2NlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIKLSAgICAweDEuZmFkYmRlMTg3YWNiYTViM2E2YzRjZGU3OGUxYmJiNGFwNDUsCi0gICAgMHgxLjAxZmZmY3AwLCAweDEucDEyCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMKLSAgICAweDEuZmYxZmI2ZmY3OWE1ZTAzOTFiMWQ3ZGZiMTRkZTdkZTZwMjIsCi0gICAgMHgxLjAxZmZmZXAwLCAweDEuMDAwY2I2cDExCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQKLSAgICAweDEuNmNiYmMyZmZmNjRjNzNhYWIwMDMzZGY3NTdmMzgwOGRwMTEsCi0gICAgMHgxLjAyMjBwMCwgMHgxLmUyOTVmMnA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTUKLSAgICAweDEuZjgxZjUzMTJiYTQ0OTQyMWJkOTM5M2FkOGRmNTNhYWVwLTEsCi0gICAgMHgxLjA0cDAsIC0weDEuMDAwNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYKLSAgICAweDEuZmZlODhhZmZmZmZmMzNlOTMzY2ZhYWQ1ZjBlZTI2NzhwLTEsCi0gICAgMHgxLjA4YzdlZXAtMTYsIDB4MS4wZjk0YjJwLTE2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTcKLSAgICAweDEuMDAwMGRjZmZmZmM2ZmVlN2U0YWFjMDlhM2Q5ZmI5YTFwMCwKLSAgICAweDEuMGVwLTIwLCAtMHgxLjAwMGNkY3AtMjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OAotICAgIDB4MS43MGNlMDVlNjI5ODAzYzBjYTQ3NDgyMzkyYTg4MmRlYnAtMywKLSAgICAweDEuMGVwMywgLTB4MS45YjkxYmFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OQotICAgIDB4MS41YTg5MjZlNDczZjYxNDhhNWEzODNiZmExZWQwYjMzNXAtOTAsCi0gICAgMHgxLjBmZmZmZXAwLCAtMHgxLjAwMDBmZXAxMAotICB9LAotICB7IC8vIEVudHJ5IDYwCi0gICAgMHgxLjhlYzViMmUxNjA2NzI4ZjIxY2YyYzkwYzJlNGQyYTlicC05MywKLSAgICAweDEuMGZmZmZlcDAsIC0weDEuMDdmZmZlcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEKLSAgICAweDEuYTQ3ZGQ0ZmZmZmUyNTQ4NjMxNDM1MTQxMzgzN2IyZmRwNCwKLSAgICAweDEuMTYyNHAtNCwgLTB4MS4zNzIwYzBwMAotICB9LAotICB7IC8vIEVudHJ5IDYyCi0gICAgMHgxLjQ0MjQwMXAwLAotICAgIDB4MS4yMDEwcDAsIDB4MS5wMQotICB9LAotICB7IC8vIEVudHJ5IDYzCi0gICAgMHgxLmU3YWFmMmZmZmZiY2U4NmE0ZmQyY2Y5Y2I1M2Q3ZTU1cC0xLAotICAgIDB4MS4yNTMyNjRwMCwgLTB4MS42ZjgyNmVwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NAotICAgIDB4MS40ZDYzMjkwMDUyZDRkMmQ4OTRiNDYzNWNiOWI5ODEzMHAtMzksCi0gICAgMHgxLjI3MTFjOHAtNiwgMHgxLmFhODA0ZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUKLSAgICAweDEuYjIwMTY4ZGEwZmMxZmNhNmQzYzFiOGMyM2ZkY2FmMzlwNDksCi0gICAgMHgxLjJhYWFhYXAtMSwgLTB4MS5mZmYxZmVwNQotICB9LAotICB7IC8vIEVudHJ5IDY2Ci0gICAgMHgxLmVlMjZjMTJlYmY1YjY0OWJlZjk1NDg0ZWNlMTEzMDA3cDIsCi0gICAgMHgxLjJmN2RjMHAtMjMsIC0weDEuMDk2N2MwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcKLSAgICAweDEuYmM5MDU5MDAwMDAwMmVlMTE3NjNjNmZlMjQxODczMGNwLTIsCi0gICAgMHgxLjMzNDQ3OHAtMiwgMHgxLjYyZTQyZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDY4Ci0gICAgMHgxLjhjOGM4MzAwMzA4Y2VlN2MxYTQxYjA5Mjk0MzIzY2ZicC04MiwKLSAgICAweDEuM2ZmZmZlcC0xLCAweDEuZTBwNgotICB9LAotICB7IC8vIEVudHJ5IDY5Ci0gICAgMHgxLjY0M2Q0ZWZmZmU2MDZlMDU2ZTQwMzViMGJlY2MyMGZkcC01LAotICAgIDB4MS4zZmZmZmVwLTQwLCAweDEuZDJmMTkwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzAKLSAgICAweDEuZjgxNDg5MTRkNGVhM2FmOTRlZTcyNDU3MmYyZWU4ZmZwLTEsCi0gICAgMHgxLjQxZDQyMHAyMCwgLTB4MS4yMnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MQotICAgIDB4MS5jZDZlOTEwMDAzOGM5M2E3ZGNlNzJhMTEzY2E1NmM3MHAtMiwKLSAgICAweDEuNDQzYTQycC0yLCAweDEuNjJlNDJlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIKLSAgICAweDEuZjg5NTkxMGYzOTJmM2I4ZmNjNjQxYWU4NzE2NGQ2ODRwLTEsCi0gICAgMHgxLjQ1YTJhOHAxLCAtMHgxLnAtNgotICB9LAotICB7IC8vIEVudHJ5IDczCi0gICAgMHgxLmUzZGZmOGZmZjZlOWVmZDRmMTY3YTdiOTFlYjg4MmFmcC0xLAotICAgIDB4MS40NWQxNzRwLTEsIDB4MS4wMDAwMWNwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NAotICAgIDB4MS5kMzMyZjBmZmZjODMxMjhhN2ZjN2JkNTZiZTI3ZTc1NXAtMiwKLSAgICAweDEuNGExNzA0cC0yLCAweDEuNjJlNDJlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUKLSAgICAweDEuZDVhZTc5MDAwM2NiMTdjZjgzZGViNWUyY2MwZWEwMWNwLTIsCi0gICAgMHgxLjRjOWY5NHAtMiwgMHgxLjYyZTQyZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDc2Ci0gICAgMHgxLmNhOGVjNmVkNWRmMzlmOTkxZjgwOGQ5NGRkNWM4ODM0cDg4LAotICAgIDB4MS40ZTljYzJwLTMwLCAtMHgxLjgwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NwotICAgIDB4MS5kOWI2NDhmZmZjMTY3ZWQ4YjkxN2I2NGY3NDdlNjI3MHAtMiwKLSAgICAweDEuNTBiZmM4cC0yLCAweDEuNjJlNDJlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgKLSAgICAweDEuZGE5NTA3MDAwMWEzNzk5ZmVlMDJlYTAzNDM1N2E4YzJwLTIsCi0gICAgMHgxLjUxYTQ1MHAtMiwgMHgxLjYyZTQyZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDc5Ci0gICAgMHgxLmZlOTU3YjM4YzViNjk1OWJiMGVhODBlNDNjNzA5ZWNhcC0xLAotICAgIDB4MS42NzkyODZwLTExLCAweDEuOGVhODI0cC0xMgotICB9LAotICB7IC8vIEVudHJ5IDgwCi0gICAgMHgxLmFjYTkxYjVmMzg4MmYzNmRjZGFiMmE4ZDY0MWMwYWI1cC01NiwKLSAgICAweDEuNzQ1ZDE4cC00LCAweDEuZmYxZmZlcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MQotICAgIDB4MS5mODJlYjcxMWZmMDA2NmVlNTkxNjU4MjU4YjY5MjMzMXAtMSwKLSAgICAweDEuNzdmZmZlcC0xMjAsIDB4MS44NWJjN2FwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgODIKLSAgICAweDEuZDk4YzgzMDAwMDNlODNmZDI1Yjk1MzgxZjcwMjE2MWNwLTEsCi0gICAgMHgxLjdhM2QwZXAwLCAtMHgxLjk5OTk5YXAtMwotICB9LAotICB7IC8vIEVudHJ5IDgzCi0gICAgMHgxLmY4MmNlZjEzYTExYTVmNWEwNTYyZmU1MmM4ODIwN2JkcC0xLAotICAgIDB4MS43YzlhMTZwLTIsIDB4MS5mZGRmZmVwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NAotICAgIDB4MS5kMGQwMTRmZmZlNzE1ZTI3MzJiNmQxY2VkOTZhZGI3NnAxOSwKLSAgICAweDEuN2U5YmIwcC04LCAtMHgxLjU2OTgyOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODUKLSAgICAweDEuODUxOGUyZmZmZGVhMzAxMDYyYWM2YTI5YzZlNTNkZjZwLTEsCi0gICAgMHgxLjg1MWViYXAtMSwgMHgxLjAwMGVwMAotICB9LAotICB7IC8vIEVudHJ5IDg2Ci0gICAgMHgxLjJkYTFlOGZmZmUxMzUwZTRkYWY1NTUzZTc1ZGNhMDIwcC00LAotICAgIDB4MS44NjE4NjJwLTQsIDB4MS4xY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgODcKLSAgICAweDEuZGQwMzdhMmM1NjFiZmUxODI0cC0xMSwKLSAgICAweDEuOGNlNjMycC00LCAweDEuODBwMQotICB9LAotICB7IC8vIEVudHJ5IDg4Ci0gICAgMHgxLmY4MWZhNzEzZDJiMjNlYWM1MmEzNmY0YjNhMzMwMjNlcC0xLAotICAgIDB4MS44Zjg2YWFwLTEsIDB4MS4wMDAwZTBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OQotICAgIDB4MS4wM2YxNGIwOTVhZTY4NzUyNWE3ZTM3N2UzNTA1ZTU4N3AwLAotICAgIDB4MS45MHA1LCAweDEuMDAwOHAtOAotICB9LAotICB7IC8vIEVudHJ5IDkwCi0gICAgMHgxLjM2Mzk1MTAwMDA1Y2M0MTEzYjIyMGQ2Y2U2NzJlMTY1cDAsCi0gICAgMHgxLjk1NTc4ZXAxLCAweDEuNTU1NTU2cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEKLSAgICAweDEuZjgzMjQ5MTM0ZTc3YTIxYmY4MTEzNTBjNmE5MzFiZWVwLTEsCi0gICAgMHgxLjk4cDUsIC0weDEuMDAwMDAycC04Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTIKLSAgICAweDEuOWY2MjhiM2NmZDA2ZjQxN2Y4NmUxY2E4ZWRjMTQ2OWVwMTE3LAotICAgIDB4MS45OTk5OWNwMywgMHgxLnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTMKLSAgICAweDEuZDQ4NTFjY2VkYWZkZDFjYmM3OWE2YTZiM2RiYjFjYmVwMTE5LAotICAgIDB4MS45YTY2ZDBwLTE0LCAtMHgxLjIwcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NAotICAgIDB4MS4yNTM2MjcwMDAxZmFiNzBhMjlkNjhlNjBmZWIxMTIxMXAtMTEsCi0gICAgMHgxLjlmZmZmZXA0MSwgLTB4MS4wOTRmMWNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NQotICAgIDB4MS5kMDhhZThmZmZkYzcwMjllMGJkMDJjODcxNjA2YTAxY3AwLAotICAgIDB4MS5hNTdiZWNwMSwgMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDk2Ci0gICAgMHgxLmI4MzYzOGZmYjIxNTYxYTIzZWM5YjhhN2IwYmE3YjUycDE1LAotICAgIDB4MS5hYWFhYWVwLTEsIC0weDEuZTBwNQotICB9LAotICB7IC8vIEVudHJ5IDk3Ci0gICAgMHgxLmMxOTg4NjAwMDAwMDFjMWNlZTE0NmU0NTEzNjVlYWUxcC0xMCwKLSAgICAweDEuYWQxZDFjcC0xNCwgMHgxLjYyZTQyZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDk4Ci0gICAgMHgxLmNkMGM2ZWVmYzMzZGZjMmVmM2QyYmViODFhZDU2OGNhcDMwLAotICAgIDB4MS5iMTNiMWNwLTEsIC0weDEuZmZmZjFlcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OQotICAgIDB4MS42MjI4ZTRmZWY4ODI3NjliYTA0MDE2NGZjNGJjYTBjYnAtODEsCi0gICAgMHgxLmI3ZmZkOHAtMSwgMHgxLjcwNTM5NHA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAwCi0gICAgMHgxLmFlOWQ3NTZjODRiNDA2M2YyMzhkZDE1MWJlYzMwZTBicC05OSwKLSAgICAweDEuYmUwZDdjcC0xLCAweDEuZWRlNDQ4cDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDEKLSAgICAweDEuOTEzZjY4ZjEwMWViZTQ5MGQyOWQ4NzNkMWUwZmQ4MjhwLTg1LAotICAgIDB4MS5iZTBmNzBwLTEsIDB4MS5hODE0N2FwOAotICB9LAotICB7IC8vIEVudHJ5IDEwMgotICAgIDB4MS5iMWU3MjE1YzEyODA4MmFhYjQ5ZWRhYjE2NDE5MTlhOHAtOTksCi0gICAgMHgxLmJlMGY3MHAtMSwgMHgxLmVkZTVkOHA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAzCi0gICAgMHgxLmRjNTc0MTgzZjAzZDdhMzMzYzE4ZmM2OTE2ZGFhODU5cC05NiwKLSAgICAweDEuYmZmMGQwcC0xLCAweDEuZWQyZmI0cDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQKLSAgICAweDEuZGE2ZmNkMDAwMjBkYTY1OWU0YTUwYmE5OTNhNzFkOTJwNiwKLSAgICAweDEuYmZmZmZlcDEsIDB4MS5lN2Y3ODJwMQotICB9LAotICB7IC8vIEVudHJ5IDEwNQotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuYzI1YzI2cC00NCwgLTB4MS40MHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2Ci0gICAgMHgxLjk1MWRmYWYwZDAzNDEwOTdlNTBmOGQ1MWZiNWIwYjJhcC03MiwKLSAgICAweDEuYzRlYzc0cC0xLCAweDEuOTM1MjM0cDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDcKLSAgICAweDEuZmIxYzZjZmZmZWYxOTk4ODRlNzhjMjZmZWYwNTdmYzNwNCwKLSAgICAweDEuYzc2MzgwcDAsIDB4MS44MDA4N2NwMgotICB9LAotICB7IC8vIEVudHJ5IDEwOAotICAgIDB4MS5kODJkN2RmZmZmZWZjMjZlMWYwOWU2ZDczYTI3NmQ4MXAtMTAsCi0gICAgMHgxLmNjOGQwNnAtMTQsIDB4MS42MmU0MmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDkKLSAgICAweDEuOTk3ZTBlZWY3YmIzZDRlZGE0MGRjNDNjNzJhNTMxNjdwLTcwLAotICAgIDB4MS5kMWNkY2NwLTEsIDB4MS5mYzI2NDBwOAotICB9LAotICB7IC8vIEVudHJ5IDExMAotICAgIDB4MS5mZTgyZGQzODFhOGQzMDU2YTRjNTU0ZjFlMTc2NGY5ZHAtMSwKLSAgICAweDEuZDQwYTY2cC0zLCAweDEuMDI5NjRjcC05Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTExCi0gICAgMHgxLmYzYWIxOTM3MTY5YzlhYjdhYWM2N2I5NDg5NGVkZTEwcC0xLAotICAgIDB4MS5kNTU1NTJwLTIsIDB4MS4wMDAwMzhwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTIKLSAgICAweDEuZmU4MDVmMzdiODliYzBjOGIwMTYzZGI3YzExZjQ4ZjJwLTEsCi0gICAgMHgxLmRhMTJmMHAtMSwgMHgxLjM4cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEzCi0gICAgMHgxLmMyNzkzNzAwMGY2YzE1YTg2ZjhlYjA0MmEwODk1NTY2cC03MywKLSAgICAweDEuZGYwYTgycC0xLCAweDEuNzdmYmMwcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTQKLSAgICAweDEuYzY0YjBkMDAwMDI3ZGJlZmExZTMyMzNlZjUzNjE5YjdwMTA1LAotICAgIDB4MS5kZmZmZmVwNTIsIDB4MS4wMDA4N2NwMQotICB9LAotICB7IC8vIEVudHJ5IDExNQotICAgIDB4MS4wODQ3YjA4MGUxMGEzZjMzYmE1OTlhMjE4YjYzMGZmYnAwLAotICAgIDB4MS5lMDZiOGNwLTEsIC0weDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2Ci0gICAgMHgxLmVmZjU3MTZmYTA1N2MwZGIwMjk3MmU1YjUxYTk1ODk5cC0xLAotICAgIDB4MS5lMDZiOGNwLTEsIDB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTcKLSAgICAweDEuMDgzZjdmNTg3Y2RiNmNjMDA1ZWU3MGFiYjEyODA2N2NwMCwKLSAgICAweDEuZTA4OTU2cC0xLCAtMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDExOAotICAgIDB4MS5mMDA0ZDE4NjY1M2RmNzQ2ZjQ2YWMxZGE1MWU2ODgxN3AtMSwKLSAgICAweDEuZTA4OTU2cC0xLCAweDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE5Ci0gICAgMHgxLjJlNzg5ODZjZTcxNjkwNjg5YTE3YjA5ZTJmZDAxMjU2cDAsCi0gICAgMHgxLmUwZWU4YXAtMSwgLTB4MS41NTE1cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjAKLSAgICAweDEuMzRlMzA2ZWJkYWNiM2ZiMjQ5ZWZiOTJjNWRmNTBhMzBwMCwKLSAgICAweDEuZTBlZThhcC0xLCAtMHgxLjgwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjEKLSAgICAweDEuMWEyMmEyYjI4NDg0M2NlZjcyOWFhNzkyMzIwMDYxNmJwMCwKLSAgICAweDEuZTBlZThhcC0xLCAtMHgxLjhkODlkOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIyCi0gICAgMHgxLjFkOGJlZmVkMDNmOWVkOGQ2MjhlNzJhY2ZkNTg0NmYycDAsCi0gICAgMHgxLmUwZWU4YXAtMSwgLTB4MS5iZWIwNTBwMAotICB9LAotICB7IC8vIEVudHJ5IDEyMwotICAgIDB4MS5lOWU1MThmYjE2MTdlY2ViOTc2YjQyMDkzMGEzY2U1MXAtMSwKLSAgICAweDEuZTBlZThhcC0xLCAweDEuNjhmODgwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI0Ci0gICAgMHgxLmEwYmRiYWU3ZDFiOTVkMWFkYjA1OTM5YWVmY2QzNWYycC05MywKLSAgICAweDEuZTEzZDBlcC0xLCAweDEuMDIyMHAxMAotICB9LAotICB7IC8vIEVudHJ5IDEyNQotICAgIDB4MS44Nzg5MjY5YzNkNzM2MWY2NDY0ZjM2OWJhZWNkMzU4ZnAtOTAsCi0gICAgMHgxLmUxZjA3ZXAtMSwgMHgxLnAxMAotICB9LAotICB7IC8vIEVudHJ5IDEyNgotICAgIDB4MS5mNjdkY2IwZDAzNGVjMjhhNDMwOWM0NDE1NTY1ZjllY3AxLAotICAgIDB4MS5lNDAwMGVwNSwgMHgxLjU1NTU1YXAtMgotICB9LAotICB7IC8vIEVudHJ5IDEyNwotICAgIDB4MS5lNjU3ODU5ODZmYjdhZjEyMTkyMzQ5ODBkY2E0ZWYzNHAtOTMsCi0gICAgMHgxLmU2ZjMxNHAtMSwgMHgxLjNlMGY4MHAxMAotICB9LAotICB7IC8vIEVudHJ5IDEyOAotICAgIDB4MS5lOWE1NzY5MWYwNmFjYmQzODkzOTAxZTM3NjgzMDUzN3AtMTI1LAotICAgIDB4MS5lOTc0NzBwLTEsIDB4MS5kZDY3YzBwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjkKLSAgICAweDEuODY2ZWM5MDAwMTdkNjg5Y2E1ZGViMThjNDc2OWVmZmJwLTIsCi0gICAgMHgxLmYwNDBjOHAtMSwgMHgxLmVkZGJhY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMwCi0gICAgMHgxLmY4MzlkNTEwMWJjZjMwNWUwNGMxODdhZmI1M2E2YzUzcC0xLAotICAgIDB4MS5mMDkxZTJwLTEsIDB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzEKLSAgICAweDEuYTM3NGMyYjAwYjYyMTcyY2Q0Njc4ZGY1ZTUwM2I2ZjFwLTEzLAotICAgIDB4MS5mNjBjMDRwLTE0LCAweDEuZTJlNDJlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMyCi0gICAgMHgxLmY4NDc5YjExNTU2MWYxNzAyOGIyMzZmYjhmMmMxNzNmcC0xLAotICAgIDB4MS5mZjE3NGFwLTEsIDB4MS4xMTk5OTZwMwotICB9LAotICB7IC8vIEVudHJ5IDEzMwotICAgIDB4MS5mOTQ3Y2YwZGViYjNmNTE0OWRmNjZlMDgzOTZmNjVjNXAzLAotICAgIDB4MS5mZjFmZmVwMywgMHgxLmZkZGZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzNAotICAgIDB4MS5mM2FlNmIzNmMzMTYzY2QyZDQyZjFlZGRmNGU5NTg4NnAtMSwKLSAgICAweDEuZmY3ZmZlcDAsIC0weDEuMjAzYzg4cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM1Ci0gICAgMHgxLmY4NDJiNTEyN2U1NjJiZjRjYzJmYjJhYTMwMzEyMzkzcC0xLAotICAgIDB4MS5mZmJmZmVwLTEwLCAweDEuM2ZmZmZlcC05Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM2Ci0gICAgMHgxLmZjMDQyY2ZjYWJkM2QwMGMzZmQ3ZTlkMTY4YTIwMTgycC0xLAotICAgIDB4MS5mZmMwcC0xLCAweDEuZmZjN2ZlcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzcKLSAgICAweDEuZjgzNmNkMTI5MjdmZTNlYTJlYjk4MTA0NjJjMjA4ZGNwLTEsCi0gICAgMHgxLmZmZjc3ZXAxMDAsIC0weDEuY2IwOTY4cC0xMwotICB9LAotICB7IC8vIEVudHJ5IDEzOAotICAgIDB4MS5mZmYzZmQwYzA2MDhjNjBkOGMzYzlmMDc2NDg2MDdkNXAxNCwKLSAgICAweDEuZmZmN2ZlcDksIDB4MS44MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM5Ci0gICAgMHgxLmY4MTFkMzE0MGQxNzI5NmRjNjMzY2QwMGJmZDk2Mzg3cC0xLAotICAgIDB4MS5mZmY4cC0xLCAweDEuZmY4MHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQwCi0gICAgMHgxLmZlOWQ5NzM4ZDBjYTlmMTFmOTdhNzFiMWEzNjYxNDVhcC0xLAotICAgIDB4MS5mZmZlZmVwMSwgLTB4MS5mZmZmZjhwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQxCi0gICAgMHgxLmYyMDJiMzAwMDAzMDY5YTdhODg2ZTQ0ZmJmNjA3M2MycDcyLAotICAgIDB4MS5mZmZmM2VwMTI3LCAweDEuMjNkNzE0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQyCi0gICAgMHgxLmI4MzRhMTkyODc1ZDcyYWM4MWI3OTE1Y2Y4OTc5NjkwcC05NiwKLSAgICAweDEuZmZmZmJlcC0xLCAweDEucDI1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQzCi0gICAgMHgxLmZmZmZlZDAwMDAyOWJmZmRkZWY1NDk1ZTU2MDNjZTNicC0xLAotICAgIDB4MS5mZmZmZTJwLTEsIDB4MS40NDQ0M2VwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDQKLSAgICAweDEuZDZhYjVkMGU3YWUwMzQzM2FkODI0NjE2ZDBkYjhiMDNwMTUsCi0gICAgMHgxLmZmZmZlZXAtNDAsIC0weDEuYTBlYTBjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ1Ci0gICAgMHgxLjAwMDAwMmZmZmZmZmZmZmZmMjdmZmZlNGZmZmZlYmMwcDAsCi0gICAgMHgxLmZmZmZmYXAtMSwgLTB4MS5mZmZmZmFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDYKLSAgICAweDEuMDAwMDAwMDAwMDA0MDAwMDA0MDAwMDBkNTU1NTZkNTVwMCwKLSAgICAweDEuZmZmZmZjcC0xLCAtMHgxLnAtMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDcKLSAgICAweDEuMDAwMDAwMDAwMDAzODAwMDAzODAwMDBhY2FhYWJkZWFwMCwKLSAgICAweDEuZmZmZmZjcC0xLCAtMHgxLmMwcC0yNAotICB9LAotICB7IC8vIEVudHJ5IDE0OAotICAgIDB4MS5lZThmYzkzMDk1NGQyOWIzZTI4YzVjMWVhZmI5ZjdmZHA0LAotICAgIDB4MS5mZmZmZmNwLTY3LCAtMHgxLjMzMzM0ZXAtNAotICB9LAotICB7IC8vIEVudHJ5IDE0OQotICAgIDB4MS42YTBhMGNmZmYzZmZhMDBlNzUzYWY4NGMwMTAwZmJmMHAxMywKLSAgICAweDEuZmZmZmZjcC0xMDYsIC0weDEuMDc1MDc4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUwCi0gICAgMHgxLjlhYWFiY2ZmZjJhZTNlN2M4NGU4NzA4NTY0MDM1NWU0cDQ4LAotICAgIDB4MS5mZmZmZmNwLTEyMCwgLTB4MS5hMmU4YmVwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTEKLSAgICAweDEuZjU3NzdhZmZmZTJiNDZhNGRhOTg3NTkwNDNkZTQ4NjJwLTUyLAotICAgIDB4MS5mZmZmZmNwODAsIC0weDEuNDI4ZjU4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUyCi0gICAgMHgxLjczZDMzMjFlN2YyNDdkZWYxZWQ0YzgxNmM4MjRjNzdkcC02NywKLSAgICAweDEuZmZmZmZjcDExOSwgLTB4MS4xYjkxYjRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTMKLSAgICAweDEuMDAwMDAxMDAwMDAxMDAwMDAxMDAwMDAxMDAwMDAxcDEwLAotICAgIDB4MS5mZmZmZmVwLTExLCAtMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU0Ci0gICAgMHgxLmZmZmZmZWZmZmZmZmJmZmZmZmRmZmZmZmViZmZmZmYxcDAsCi0gICAgMHgxLmZmZmZmZXAxLCAweDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU1Ci0gICAgMHgxLmNiNWEwZDAwMDJmNTE2OWExM2RlMzk4NjNiYjVmOTFkcC0yLAotICAgIDB4MS40MjFlZmFwLTIsIDB4MS42MmU0MmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTYKLSAgICAweDEuY2I3MjBkY2VmOTA2OTE1MDNjYmQxZTk0OWRiNzYxZDlwLTEsCi0gICAgMHgxLnAtNSwgMHgxLnAtNQotICB9LAotICB7IC8vIEVudHJ5IDE1NwotICAgIDB4MS5wLTUsCi0gICAgMHgxLnAtNSwgMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU4Ci0gICAgMHgxLnAwLAotICAgIDB4MS5wMCwgMHgxLnAtNQotICB9LAotICB7IC8vIEVudHJ5IDE1OQotICAgIDB4MS5wMCwKLSAgICAweDEucDAsIDB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDE2MAotICAgIDB4MS5wLTQwLAotICAgIDB4MS5wLTUsIDB4MS5wMwotICB9LAotICB7IC8vIEVudHJ5IDE2MQotICAgIDAuMGYsCi0gICAgMHgxLnAtNSwgMHgxLnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTYyCi0gICAgMHgxLnAwLAotICAgIDB4MS5wMCwgMHgxLnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTYzCi0gICAgMHgxLnAwLAotICAgIDB4MS5wMCwgMHgxLnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY0Ci0gICAgMC4wZiwKLSAgICAweDEucC01LCAweDEucDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY1Ci0gICAgMC4wZiwKLSAgICAweDEucC01LCAweDEucDEyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY2Ci0gICAgMHgxLnAwLAotICAgIDB4MS5wMCwgMHgxLnAxMAotICB9LAotICB7IC8vIEVudHJ5IDE2NwotICAgIDB4MS5wMCwKLSAgICAweDEucDAsIDB4MS5wMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjgKLSAgICAweDEuMTEzMDFkMDEyNWI1MGE0ZWJiZjFhZWQ5MzE4Y2VhYzVwMCwKLSAgICAweDEucDMsIDB4MS5wLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjkKLSAgICAweDEucDMsCi0gICAgMHgxLnAzLCAweDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzAKLSAgICAweDEuMWQ0ODczMTY4YjlhYTc4MDViODAyODk5MGYwN2E5OGJwMCwKLSAgICAweDEucDUsIDB4MS5wLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzEKLSAgICAweDEucDUsCi0gICAgMHgxLnA1LCAweDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzIKLSAgICAweDEucDI0LAotICAgIDB4MS5wMywgMHgxLnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTczCi0gICAgMHgxLnA5NiwKLSAgICAweDEucDMsIDB4MS5wNQotICB9LAotICB7IC8vIEVudHJ5IDE3NAotICAgIDB4MS5wNDAsCi0gICAgMHgxLnA1LCAweDEucDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzUKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLnA1LCAweDEucDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzYKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLnAzLCAweDEucDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc3Ci0gICAgSFVHRV9WQUxGLAotICAgIDB4MS5wMywgMHgxLnAxMgotICB9LAotICB7IC8vIEVudHJ5IDE3OAotICAgIEhVR0VfVkFMRiwKLSAgICAweDEucDUsIDB4MS5wMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzkKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLnA1LCAweDEucDEyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTgwCi0gICAgMHgxLjNkZWE2NGMxMjM0MjIzNWI0MTIyM2UxM2Q3NzNmYmEycDAsCi0gICAgMHgxLnAxMCwgMHgxLnAtNQotICB9LAotICB7IC8vIEVudHJ5IDE4MQotICAgIDB4MS5wMTAsCi0gICAgMHgxLnAxMCwgMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTgyCi0gICAgMHgxLjRiZmRhZDUzNjJhMjcxZDQzOTdhZmVjNDJlMjBlMDM2cDAsCi0gICAgMHgxLnAxMiwgMHgxLnAtNQotICB9LAotICB7IC8vIEVudHJ5IDE4MwotICAgIDB4MS5wMTIsCi0gICAgMHgxLnAxMiwgMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg0Ci0gICAgMHgxLnA4MCwKLSAgICAweDEucDEwLCAweDEucDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODUKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLnAxMCwgMHgxLnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTg2Ci0gICAgMHgxLnA5NiwKLSAgICAweDEucDEyLCAweDEucDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODcKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLnAxMiwgMHgxLnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTg4Ci0gICAgMHgxLjAwMDAwMTI2MDU1Y2ZkNDQzYzUzNzY5MzBkMTY5ZjMycDIsCi0gICAgMHgxLjZhMDllNnAtMSwgLTB4MS5wMgotICB9LAotICB7IC8vIEVudHJ5IDE4OQotICAgIDB4MS5mZmZmZmRiM2Y1NDhhOGQ4MjdiNjVjODhwLTMsCi0gICAgMHgxLjZhMDllNnAtMSwgMHgxLnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkwCi0gICAgMHgxLjAwMDAwMTI2MDU1Y2ZkNDQzYzUzNzY5MzBkMTY5ZjMycC0yLAotICAgIDB4MS42YTA5ZTZwMCwgLTB4MS5wMgotICB9LAotICB7IC8vIEVudHJ5IDE5MQotICAgIDB4MS5mZmZmZmRiM2Y1NDhhOGQ4MjdiNjVjODhwMSwKLSAgICAweDEuNmEwOWU2cDAsIDB4MS5wMgotICB9LAotICB7IC8vIEVudHJ5IDE5MgotICAgIDB4MS4wMDAwMDEyNjA1NWNmZDQ0M2M1Mzc2OTMwZDE2OWYzMnAyLAotICAgIDB4MS42YTA5ZTZwLTEsIC0weDEucDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTMKLSAgICAweDEuZmZmZmZkYjNmNTQ4YThkODI3YjY1Yzg4cC0zLAotICAgIDB4MS42YTA5ZTZwLTEsIDB4MS5wMgotICB9LAotICB7IC8vIEVudHJ5IDE5NAotICAgIDB4MS4wMDAwMDEyNjA1NWNmZDQ0M2M1Mzc2OTMwZDE2OWYzMnAtMiwKLSAgICAweDEuNmEwOWU2cDAsIC0weDEucDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTUKLSAgICAweDEuZmZmZmZkYjNmNTQ4YThkODI3YjY1Yzg4cDEsCi0gICAgMHgxLjZhMDllNnAwLCAweDEucDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTYKLSAgICAweDEuMDAxNjJmMzkxNjY3MGQxMTk2OTcxNTRhZTM1MTJjMmRwMCwKLSAgICAweDEuNmEwOWU2cC0xLCAtMHgxLnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTcKLSAgICAweDEuZmZkM2E1NjVjYWY4ZDIzMGRhZTEyNTA2OTNhNTVmMjNwLTEsCi0gICAgMHgxLjZhMDllNnAtMSwgMHgxLnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTgKLSAgICAweDEuZmZkM2E1NjYxNDczY2IyNjlmODk0YjQwZDZjZjliYWNwLTEsCi0gICAgMHgxLjZhMDllNnAwLCAtMHgxLnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTkKLSAgICAweDEuMDAxNjJmMzhmMWEzMzIzMGJjMzQwYmQzNzUyZmMwOTRwMCwKLSAgICAweDEuNmEwOWU2cDAsIDB4MS5wLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAwCi0gICAgMHgxLjk0OGIwZmNkNmU5ZTA2NTIyYzNmMzViYTc4MTk0OGIwcDEsCi0gICAgMHgxLjgwcC0xLCAtMHgxLnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAxCi0gICAgMHgxLjQ0cC0yLAotICAgIDB4MS44MHAtMSwgMHgxLnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAyCi0gICAgMHgxLjk0OGIwZmNkNmU5ZTA2NTIyYzNmMzViYTc4MTk0OGIwcC0zLAotICAgIDB4MS44MHAwLCAtMHgxLnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAzCi0gICAgMHgxLjQ0cDIsCi0gICAgMHgxLjgwcDAsIDB4MS5wMgotICB9LAotICB7IC8vIEVudHJ5IDIwNAotICAgIDB4MS4yNzlhNzQ1OTAzMzFjNGQyMThmODFlNGFmYjI1N2QwNnAwLAotICAgIDB4MS44MHAtMSwgLTB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDUKLSAgICAweDEuYmI2N2FlODU4NGNhYTczYjI1NzQyZDcwNzhiODNiODlwLTEsCi0gICAgMHgxLjgwcC0xLCAweDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA2Ci0gICAgMHgxLmEyMGJkNzAwYzJjM2RmYzA0MmNjMWFlZDc4NzFkYjQ1cC0xLAotICAgIDB4MS44MHAwLCAtMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDIwNwotICAgIDB4MS4zOTg4ZTE0MDkyMTJlN2QwMzIxOTE0MzIxYTU1NjQ3M3AwLAotICAgIDB4MS44MHAwLCAweDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA4Ci0gICAgMHgxLjAwMTI2YTBiOTNkYjI5NGNhYmUzM2RhNzM1NDM3ZjUxcDAsCi0gICAgMHgxLjgwcC0xLCAtMHgxLnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDkKLSAgICAweDEuZmZkYjJlOGVkMmExZmU3MWJkNTlmZGQ2MTAzMTMwNDZwLTEsCi0gICAgMHgxLjgwcC0xLCAweDEucC0xMAotICB9LAotICB7IC8vIEVudHJ5IDIxMAotICAgIDB4MS5mZmNjMWM1OTczYjIxMjlhNWIxNDI0ZTBjODg3ODZiOHAtMSwKLSAgICAweDEuODBwMCwgLTB4MS5wLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjExCi0gICAgMHgxLjAwMTlmNDc0YWExOTAwMzhjNmFmNzc1ZDkyZjFkNzI1cDAsCi0gICAgMHgxLjgwcDAsIDB4MS5wLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEyCi0gICAgMHgxLnAwLAotICAgIDB4MS5wMCwgLTB4MS5wMgotICB9LAotICB7IC8vIEVudHJ5IDIxMwotICAgIDB4MS5wMCwKLSAgICAweDEucDAsIDB4MS5wMgotICB9LAotICB7IC8vIEVudHJ5IDIxNAotICAgIDB4MS5wLTQsCi0gICAgMHgxLnAxLCAtMHgxLnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE1Ci0gICAgMHgxLnA0LAotICAgIDB4MS5wMSwgMHgxLnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE2Ci0gICAgMHgxLnAwLAotICAgIDB4MS5wMCwgLTB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTcKLSAgICAweDEucDAsCi0gICAgMHgxLnAwLCAweDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE4Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xLAotICAgIDB4MS5wMSwgLTB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTkKLSAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKLSAgICAweDEucDEsIDB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjAKLSAgICAweDEucDAsCi0gICAgMHgxLnAwLCAtMHgxLnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjEKLSAgICAweDEucDAsCi0gICAgMHgxLnAwLCAweDEucC0xMAotICB9LAotICB7IC8vIEVudHJ5IDIyMgotICAgIDB4MS5mZmE3NGVhMzgxZWZjMjE3YTc3M2YxNWMwMjVmN2MwZHAtMSwKLSAgICAweDEucDEsIC0weDEucC0xMAotICB9LAotICB7IC8vIEVudHJ5IDIyMwotICAgIDB4MS4wMDJjNjA1ZTJlOGNlYzUwNmQyMWJmYzg5YTIzYTAxMHAwLAotICAgIDB4MS5wMSwgMHgxLnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjQKLSAgICAweDEucDQwLAotICAgIDB4MS5wLTEwLCAtMHgxLnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjI1Ci0gICAgMHgxLnAtNDAsCi0gICAgMHgxLnAtMTAsIDB4MS5wMgotICB9LAotICB7IC8vIEVudHJ5IDIyNgotICAgIDB4MS5mZTAxM2Y2MDQ1ZTQwYTdjNDE0OTkyMjNiNGEzOGNlOHAtMSwKLSAgICAweDEuMDA0MHAwLCAtMHgxLnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjI3Ci0gICAgMHgxLjAxMDA2MDEwMDFwMCwKLSAgICAweDEuMDA0MHAwLCAweDEucDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjgKLSAgICAweDEucDUsCi0gICAgMHgxLnAtMTAsIC0weDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjI5Ci0gICAgMHgxLnAtNSwKLSAgICAweDEucC0xMCwgMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDIzMAotICAgIDB4MS5mZmMwMGJmZDgwOGJlMDg3MzY1MzY0NzQ0ODIyMGZkZnAtMSwKLSAgICAweDEuMDA0MHAwLCAtMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDIzMQotICAgIDB4MS4wMDFmZmUwMDNmZjYwMWJmYWMxMDdjYTZiMjlhMGMzMXAwLAotICAgIDB4MS4wMDQwcDAsIDB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzIKLSAgICAweDEuMDFiZDFlNzcxNzBiNDE1ZTc2MjY2MjFlYjVhYWZmNjFwMCwKLSAgICAweDEucC0xMCwgLTB4MS5wLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjMzCi0gICAgMHgxLmZjOGJjNDg2NmU4YWQyYjk2M2UxODI4YjA3NjFjYmM2cC0xLAotICAgIDB4MS5wLTEwLCAweDEucC0xMAotICB9LAotICB7IC8vIEVudHJ5IDIzNAotICAgIDB4MS5mZmZmZTAwNDAwNTUzNTU4NDQ0NDNkZjg2ODBhOGUwNXAtMSwKLSAgICAweDEuMDA0MHAwLCAtMHgxLnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzUKLSAgICAweDEuMDAwMDBmZmUwMGQ1MjU2Mjg1MzQwZTRmM2FkMzYyODdwMCwKLSAgICAweDEuMDA0MHAwLCAweDEucC0xMAotICB9LAotICB7IC8vIEVudHJ5IDIzNgotICAgIDB4MS4wMDAwMDEwMDAwMDEwMDAwMDEwMDAwMDEwMDAwMDFwLTEyOCwKLSAgICAweDEuZmZmZmZlcDEyNywgLTB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDIzNwotICAgIDB4MS5mZmZmZmVwMTI3LAotICAgIDB4MS5mZmZmZmVwMTI3LCAweDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzgKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLnAtMTQ5LCAtMHgxLmU2NjY2NnAtMQotICB9LAotICB7IC8vIEVudHJ5IDIzOQotICAgIDB4MS41ZGI0ZWNhYjNlMWNiOTQyZmM5MGEwMDNlNzdkYTI4MnAtMTQyLAotICAgIDB4MS5wLTE0OSwgMHgxLmU2NjY2NnAtMQotICB9LAotICB7IC8vIEVudHJ5IDI0MAotICAgIDAuMGYsCi0gICAgMHgxLmZmZmZmZXAtNywgMHgxLmZmZmZmZXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQxCi0gICAgMC4wZiwKLSAgICAweDEuZmZmZmZlcC03LCAweDEucDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDIKLSAgICAwLjBmLAotICAgIDB4MS5mZmZmZmVwLTcsIDB4MS4wMDAwMDJwNgotICB9LAotICB7IC8vIEVudHJ5IDI0MwotICAgIDAuMGYsCi0gICAgMHgxLnAtNiwgMHgxLmZmZmZmZXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQ0Ci0gICAgMC4wZiwKLSAgICAweDEucC02LCAweDEucDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDUKLSAgICAwLjBmLAotICAgIDB4MS5wLTYsIDB4MS4wMDAwMDJwNgotICB9LAotICB7IC8vIEVudHJ5IDI0NgotICAgIDAuMGYsCi0gICAgMHgxLjAwMDAwMnAtNiwgMHgxLmZmZmZmZXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQ3Ci0gICAgMC4wZiwKLSAgICAweDEuMDAwMDAycC02LCAweDEucDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDgKLSAgICAwLjBmLAotICAgIDB4MS4wMDAwMDJwLTYsIDB4MS4wMDAwMDJwNgotICB9LAotICB7IC8vIEVudHJ5IDI0OQotICAgIDAuMGYsCi0gICAgMHgxLmZmZmZmZXAtNiwgMHgxLmZmZmZmZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjUwCi0gICAgMC4wZiwKLSAgICAweDEuZmZmZmZlcC02LCAweDEucDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTEKLSAgICAwLjBmLAotICAgIDB4MS5mZmZmZmVwLTYsIDB4MS4wMDAwMDJwNQotICB9LAotICB7IC8vIEVudHJ5IDI1MgotICAgIDAuMGYsCi0gICAgMHgxLnAtNSwgMHgxLmZmZmZmZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjUzCi0gICAgMC4wZiwKLSAgICAweDEucC01LCAweDEucDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTQKLSAgICAwLjBmLAotICAgIDB4MS5wLTUsIDB4MS4wMDAwMDJwNQotICB9LAotICB7IC8vIEVudHJ5IDI1NQotICAgIDAuMGYsCi0gICAgMHgxLjAwMDAwMnAtNSwgMHgxLmZmZmZmZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjU2Ci0gICAgMC4wZiwKLSAgICAweDEuMDAwMDAycC01LCAweDEucDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTcKLSAgICAwLjBmLAotICAgIDB4MS4wMDAwMDJwLTUsIDB4MS4wMDAwMDJwNQotICB9LAotICB7IC8vIEVudHJ5IDI1OAotICAgIDB4MS4wMDAwMWM1Yzg3OTgyM2UzYWYzOWJhYTIyMWRmODRiMHAtNjQsCi0gICAgMHgxLmZmZmZmZXAtNSwgMHgxLmZmZmZmZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU5Ci0gICAgMHgxLmZmZmZlMDAwMDBlZmZmZmJhMDAwMGUzN2ZmZGRlMHAtNjUsCi0gICAgMHgxLmZmZmZmZXAtNSwgMHgxLnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjYwCi0gICAgMHgxLmZmZmYyZThlMTI4ZjA3ZjhhYTk1ZmI4YjM1ZDcyZWE0cC02NSwKLSAgICAweDEuZmZmZmZlcC01LCAweDEuMDAwMDAycDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjEKLSAgICAweDEuMDAwMDJjNWM4OWQ1ZWM2Y2E0ZDdjOGFjYzAxN2I3YzlwLTY0LAotICAgIDB4MS5wLTQsIDB4MS5mZmZmZmVwMwotICB9LAotICB7IC8vIEVudHJ5IDI2MgotICAgIDB4MS5wLTY0LAotICAgIDB4MS5wLTQsIDB4MS5wNAotICB9LAotICB7IC8vIEVudHJ5IDI2MwotICAgIDB4MS5mZmZmNGU4ZTA2YzdlOGEyYTg0ZGFlZDhlYzU2ZDZjM3AtNjUsCi0gICAgMHgxLnAtNCwgMHgxLjAwMDAwMnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjY0Ci0gICAgMHgxLjAwMDA0YzVjOTEyMTdlMDJhNDU5MmJhN2FkNWRmMzJlcC02NCwKLSAgICAweDEuMDAwMDAycC00LCAweDEuZmZmZmZlcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjUKLSAgICAweDEuMDAwMDIwMDAwMWUwMDAxMTgwMDA3MWMwMDIyMjAwMDdwLTY0LAotICAgIDB4MS4wMDAwMDJwLTQsIDB4MS5wNAotICB9LAotICB7IC8vIEVudHJ5IDI2NgotICAgIDB4MS5mZmZmOGU4ZGY0ZDlhODM1MTMyMGMwNWQzZDgxNGY5ZnAtNjUsCi0gICAgMHgxLjAwMDAwMnAtNCwgMHgxLjAwMDAwMnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjY3Ci0gICAgMHgxLjAwMDAwOGEyYjI2ODg0ZjEwNjhiODE4ODk0NjdkNjdmcC0yNCwKLSAgICAweDEuZmZmZmZlcC00LCAweDEuZmZmZmZlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjgKLSAgICAweDEuZmZmZmYwMDAwMDM3ZmZmZjkwMDAwMDhiZmZmZjkwcC0yNSwKLSAgICAweDEuZmZmZmZlcC00LCAweDEucDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjkKLSAgICAweDEuZmZmZmFkNzUzZDgyNWRmY2RkNjVlNGVhNTRjY2NlYjVwLTI1LAotICAgIDB4MS5mZmZmZmVwLTQsIDB4MS4wMDAwMDJwMwotICB9LAotICB7IC8vIEVudHJ5IDI3MAotICAgIDB4MS4wMDAwMTBhMmIyYzk5YTg1NzA3ZThmMTNkYzY0ODcxMHAtMjQsCi0gICAgMHgxLnAtMywgMHgxLmZmZmZmZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcxCi0gICAgMHgxLnAtMjQsCi0gICAgMHgxLnAtMywgMHgxLnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcyCi0gICAgMHgxLmZmZmZiZDc1M2I1NjA3ZGEyYzI2MDA2NDgyM2IzMGE3cC0yNSwKLSAgICAweDEucC0zLCAweDEuMDAwMDAycDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzMKLSAgICAweDEuMDAwMDIwYTJiNDMzYzViOTE3MjlmZTA0OTMzMjFkM2ZwLTI0LAotICAgIDB4MS4wMDAwMDJwLTMsIDB4MS5mZmZmZmVwMgotICB9LAotICB7IC8vIEVudHJ5IDI3NAotICAgIDB4MS4wMDAwMTAwMDAwNzAwMDAxYzAwMDA0NjAwMDA3cC0yNCwKLSAgICAweDEuMDAwMDAycC0zLCAweDEucDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzUKLSAgICAweDEuZmZmZmRkNzUzODRkNWI3MTVlOTQzNzY5OTUzNDg4M2JwLTI1LAotICAgIDB4MS4wMDAwMDJwLTMsIDB4MS4wMDAwMDJwMwotICB9LAotICB7IC8vIEVudHJ5IDI3NgotICAgIDB4MS4wMDAwMDE4YjkwYzJmMDJhODBmM2JiODJhYTEyZTk1ZHAtOCwKLSAgICAweDEuZmZmZmZlcC0zLCAweDEuZmZmZmZlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzcKLSAgICAweDEuZmZmZmY4MDAwMDBiZmZmZmY4MDAwMDAycC05LAotICAgIDB4MS5mZmZmZmVwLTMsIDB4MS5wMgotICB9LAotICB7IC8vIEVudHJ5IDI3OAotICAgIDB4MS5mZmZmZTFkMWJkZDBiZGM2YjQ2ZWE2NGE0MmIxYmFkMnAtOSwKLSAgICAweDEuZmZmZmZlcC0zLCAweDEuMDAwMDAycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzkKLSAgICAweDEuMDAwMDA1OGI5MGNmMWU2ZDk3ZjljYTE0ZGJjYzE2MjhwLTgsCi0gICAgMHgxLnAtMiwgMHgxLmZmZmZmZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgwCi0gICAgMHgxLnAtOCwKLSAgICAweDEucC0yLCAweDEucDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODEKLSAgICAweDEuZmZmZmU5ZDFiZDdjMDRiYzQ4MjUxNDdhOGMwZTYzZTNwLTksCi0gICAgMHgxLnAtMiwgMHgxLjAwMDAwMnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgyCi0gICAgMHgxLjAwMDAwZDhiOTEwYjdhZjQ1MWE2NDJlNmQwYjY2YjA2cC04LAotICAgIDB4MS4wMDAwMDJwLTIsIDB4MS5mZmZmZmVwMQotICB9LAotICB7IC8vIEVudHJ5IDI4MwotICAgIDB4MS4wMDAwMDgwMDAwMTgwMDAwMjAwMDAwMTBwLTgsCi0gICAgMHgxLjAwMDAwMnAtMiwgMHgxLnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg0Ci0gICAgMHgxLmZmZmZmOWQxYmQxYTkyYTVkMTEwODhlZDE3NDE3ZjQxcC05LAotICAgIDB4MS4wMDAwMDJwLTIsIDB4MS4wMDAwMDJwMgotICB9LAotICB7IC8vIEVudHJ5IDI4NQotICAgIDB4MS5mZmZmZmVjNWM4NjIzZmIyNWQ3ZDA2YWM2MWEzMDYzZnAtMywKLSAgICAweDEuZmZmZmZlcC0yLCAweDEuZmZmZmZlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODYKLSAgICAweDEuZmZmZmZjMDAwMDAycC0zLAotICAgIDB4MS5mZmZmZmVwLTIsIDB4MS5wMQotICB9LAotICB7IC8vIEVudHJ5IDI4NwotICAgIDB4MS5mZmZmZjY3NDZmNGQwODgyODliODgwZmUwMmFkYmZkZXAtMywKLSAgICAweDEuZmZmZmZlcC0yLCAweDEuMDAwMDAycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODgKLSAgICAweDEuMDAwMDAxNjJlNDMwZTVhMThmNjExOWUzYzAyMjgyYTVwLTIsCi0gICAgMHgxLnAtMSwgMHgxLmZmZmZmZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg5Ci0gICAgMHgxLnAtMiwKLSAgICAweDEucC0xLCAweDEucDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTAKLSAgICAweDEuZmZmZmZhNzQ2ZjQ3ZjE2MGZjZjg5MGUzYjgwMWFlZGRwLTMsCi0gICAgMHgxLnAtMSwgMHgxLjAwMDAwMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkxCi0gICAgMHgxLjAwMDAwNTYyZTQzNjcxMzI0NmY3YTAxMzRjODI4N2VhcC0yLAotICAgIDB4MS4wMDAwMDJwLTEsIDB4MS5mZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDI5MgotICAgIDB4MS4wMDAwMDQwMDAwMDRwLTIsCi0gICAgMHgxLjAwMDAwMnAtMSwgMHgxLnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkzCi0gICAgMHgxLjAwMDAwMTNhMzdhNGUxOGYwNTE5YTYwMzk1NGE1YjBicC0yLAotICAgIDB4MS4wMDAwMDJwLTEsIDB4MS4wMDAwMDJwMQotICB9LAotICB7IC8vIEVudHJ5IDI5NAotICAgIDB4MS5mZmZmZmUwMDAwMDFmZmZmZmYwMDAwMDBhYWFhYWE4MHAtMSwKLSAgICAweDEuZmZmZmZlcC0xLCAweDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk1Ci0gICAgMHgxLmZmZmZmZXAtMSwKLSAgICAweDEuZmZmZmZlcC0xLCAweDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTYKLSAgICAweDEuZmZmZmZkZmZmZmZjMDAwMDAyMDAwMDA0YWFhYWFhZmZwLTEsCi0gICAgMHgxLmZmZmZmZXAtMSwgMHgxLjAwMDAwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk3Ci0gICAgMHgxLnAwLAotICAgIDB4MS5wMCwgMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDI5OAotICAgIDB4MS5wMCwKLSAgICAweDEucDAsIDB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDI5OQotICAgIDB4MS5wMCwKLSAgICAweDEucDAsIDB4MS4wMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDMwMAotICAgIDB4MS4wMDAwMDFmZmZmZmRmZmZmZmUwMDAwMDM1NTU1NTNmZnAwLAotICAgIDB4MS4wMDAwMDJwMCwgMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDMwMQotICAgIDB4MS4wMDAwMDJwMCwKLSAgICAweDEuMDAwMDAycDAsIDB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDMwMgotICAgIDB4MS4wMDAwMDIwMDAwMDQwMDAwMDQwMDAwMDU1NTU1NThwMCwKLSAgICAweDEuMDAwMDAycDAsIDB4MS4wMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDMwMwotICAgIDB4MS42YTA5ZTUzNTc1YjEyMzYyNWNjMTk2OGE2NjU1ODFhNHAwLAotICAgIDB4MS5mZmZmZmVwMCwgMHgxLmZmZmZmZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDMwNAotICAgIDB4MS42YTA5ZTViMmVlYzk2N2NkOTdiMmVmZjc1ZjQ3MTQ5M3AwLAotICAgIDB4MS5mZmZmZmVwMCwgMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDMwNQotICAgIDB4MS42YTA5ZTZhZGUwZmE3MzE5MDUyYzQ5NDhkZWE0OGE3NnAwLAotICAgIDB4MS5mZmZmZmVwMCwgMHgxLjAwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDMwNgotICAgIDB4MS42YTA5ZTVlYTdhYTM5MGRiZjg2OGI3Mjc4Yjc0NDgyOXAwLAotICAgIDB4MS5wMSwgMHgxLmZmZmZmZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDMwNwotICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAwLAotICAgIDB4MS5wMSwgMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDMwOAotICAgIDB4MS42YTA5ZTc2MmU1ZWZiYmQ3MjE3MDE4MjUwYTNhYjE5NHAwLAotICAgIDB4MS5wMSwgMHgxLjAwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDMwOQotICAgIDB4MS42YTA5ZTc1NDg0ODc1YzQ3YzNjZWUwMWQ5ZjM0OGJkOHAwLAotICAgIDB4MS4wMDAwMDJwMSwgMHgxLmZmZmZmZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDMxMAotICAgIDB4MS42YTA5ZTdkMWZkYTI3YmY3N2Q0NTI3MmRkMmQ4M2E0YnAwLAotICAgIDB4MS4wMDAwMDJwMSwgMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDMxMQotICAgIDB4MS42YTA5ZThjY2VmZDkzZGNiZWNmNTRkMjMzZWE4MjY1YnAwLAotICAgIDB4MS4wMDAwMDJwMSwgMHgxLjAwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDMxMgotICAgIDB4MS42YTA5ZTU4ZmY4MmE0ZWNlZGI3M2Y3NjZkM2QwNzU4ZHAwLAotICAgIDB4MS5mZmZmZmVwMSwgMHgxLmZmZmZmZXAtMwotICB9LAotICB7IC8vIEVudHJ5IDMxMwotICAgIDB4MS42YTA5ZTYwZDcxNDMwZDFhZDYxYjQ1ZDVkMWFiZGYxNXAwLAotICAgIDB4MS5mZmZmZmVwMSwgMHgxLnAtMgotICB9LAotICB7IC8vIEVudHJ5IDMxNAotICAgIDB4MS42YTA5ZTcwODYzNzUwYzI3YzNkZDVjMGVjZGNlNTI3MXAwLAotICAgIDB4MS5mZmZmZmVwMSwgMHgxLjAwMDAwMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDMxNQotICAgIDB4MS42YTA5ZTVlYTdhYTM5MGRiZjg2OGI3Mjc4Yjc0NDgyOXAwLAotICAgIDB4MS5wMiwgMHgxLmZmZmZmZXAtMwotICB9LAotICB7IC8vIEVudHJ5IDMxNgotICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAwLAotICAgIDB4MS5wMiwgMHgxLnAtMgotICB9LAotICB7IC8vIEVudHJ5IDMxNwotICAgIDB4MS42YTA5ZTc2MmU1ZWZiYmQ3MjE3MDE4MjUwYTNhYjE5NHAwLAotICAgIDB4MS5wMiwgMHgxLjAwMDAwMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDMxOAotICAgIDB4MS42YTA5ZTY5ZjdmOTU0OTUwYTFmY2UwYTFiMmMzNjJkMHAwLAotICAgIDB4MS4wMDAwMDJwMiwgMHgxLmZmZmZmZXAtMwotICB9LAotICB7IC8vIEVudHJ5IDMxOQotICAgIDB4MS42YTA5ZTcxY2Y4YWY3NTNlZGI5NzAwYWQ5MDZjOWNkOXAwLAotICAgIDB4MS4wMDAwMDJwMiwgMHgxLnAtMgotICB9LAotICB7IC8vIEVudHJ5IDMyMAotICAgIDB4MS42YTA5ZTgxN2VhZTQ0ZjkwNDlkNTMyY2RhMmE5MGNiNnAwLAotICAgIDB4MS4wMDAwMDJwMiwgMHgxLjAwMDAwMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDMyMQotICAgIDB4MS40YmZkYWNkMzk3OGFkZjlmM2I2NGZlMDFmNDA1OTNhZXAwLAotICAgIDB4MS5mZmZmZmVwMiwgMHgxLmZmZmZmZXAtNAotICB9LAotICB7IC8vIEVudHJ5IDMyMgotICAgIDB4MS40YmZkYWQyOWUyZWNiNTQwMDVhNmRiZWM2N2M1ZTQxM3AwLAotICAgIDB4MS5mZmZmZmVwMiwgMHgxLnAtMwotICB9LAotICB7IC8vIEVudHJ5IDMyMwotICAgIDB4MS40YmZkYWRkNjc5YjBhM2NjNDBlY2I2MGFmZGM0YTU1MnAwLAotICAgIDB4MS5mZmZmZmVwMiwgMHgxLjAwMDAwMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDMyNAotICAgIDB4MS40YmZkYWNmZDE3NDA2N2VhNGQ0M2Y4YjA5Zjk3NGQ4NnAwLAotICAgIDB4MS5wMywgMHgxLmZmZmZmZXAtNAotICB9LAotICB7IC8vIEVudHJ5IDMyNQotICAgIDB4MS40YmZkYWQ1MzYyYTI3MWQ0Mzk3YWZlYzQyZTIwZTAzNnAwLAotICAgIDB4MS5wMywgMHgxLnAtMwotICB9LAotICB7IC8vIEVudHJ5IDMyNgotICAgIDB4MS40YmZkYWRmZmY5NjZjOGYyYjhmNDRiMTM3ZmJmYWE5NnAwLAotICAgIDB4MS5wMywgMHgxLjAwMDAwMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDMyNwotICAgIDB4MS40YmZkYWQ1MDE2YWIwYjkxMzRlMDU3NGFiY2E3OGI3YXAwLAotICAgIDB4MS4wMDAwMDJwMywgMHgxLmZmZmZmZXAtNAotICB9LAotICB7IC8vIEVudHJ5IDMyOAotICAgIDB4MS40YmZkYWRhNjYyMGQ3ZTBkNjQ4N2ZkOWJlNjQ4ODdhM3AwLAotICAgIDB4MS4wMDAwMDJwMywgMHgxLnAtMwotICB9LAotICB7IC8vIEVudHJ5IDMyOQotICAgIDB4MS40YmZkYWU1MmY4ZDJhNjUwNmI3NGNlMjMyZmRjZDI5MXAwLAotICAgIDB4MS4wMDAwMDJwMywgMHgxLjAwMDAwMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDMzMAotICAgIDB4MS4zMDZmZTA1YjUzMzEzMWMyNzYxMmNmZmY3YTBmZmRiMHAwLAotICAgIDB4MS5mZmZmZmVwMywgMHgxLmZmZmZmZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDMzMQotICAgIDB4MS4zMDZmZTA5MDE0NzMzZmMxOGYyYThlNWJjOGEzMGNkY3AwLAotICAgIDB4MS5mZmZmZmVwMywgMHgxLnAtNAotICB9LAotICB7IC8vIEVudHJ5IDMzMgotICAgIDB4MS4zMDZmZTBmOTk2Zjc3NzJjOWE5NGMxNjA4MzQ0NjI2MnAwLAotICAgIDB4MS5mZmZmZmVwMywgMHgxLjAwMDAwMnAtNAotICB9LAotICB7IC8vIEVudHJ5IDMzMwotICAgIDB4MS4zMDZmZTA2ZTVhMmYyZThjNjIwZjdlNTVjYzgwM2RiYXAwLAotICAgIDB4MS5wNCwgMHgxLmZmZmZmZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDMzNAotICAgIDB4MS4zMDZmZTBhMzFiNzE1MmRlOGQ1YTQ2MzA1Yzg1ZWRlY3AwLAotICAgIDB4MS5wNCwgMHgxLnAtNAotICB9LAotICB7IC8vIEVudHJ5IDMzNQotICAgIDB4MS4zMDZmZTEwYzlkZjViNmVmYmQ0MDBiNzgwNjAwNWZhOXAwLAotICAgIDB4MS5wNCwgMHgxLjAwMDAwMnAtNAotICB9LAotICB7IC8vIEVudHJ5IDMzNgotICAgIDB4MS4zMDZmZTA5NDY4MmFmMjljOGZlOWY3MzVmYjFjNDA4MXAwLAotICAgIDB4MS4wMDAwMDJwNCwgMHgxLmZmZmZmZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDMzNwotICAgIDB4MS4zMDZmZTBjOTI5NmQ0Mzk0ZGY1Zjk5YjliZDFhNDdkMnAwLAotICAgIDB4MS4wMDAwMDJwNCwgMHgxLnAtNAotICB9LAotICB7IC8vIEVudHJ5IDMzOAotICAgIDB4MS4zMDZmZTEzMmFiZjIwMGYyNTdjNjEyZTA3ZjE0OWFhM3AwLAotICAgIDB4MS4wMDAwMDJwNCwgMHgxLjAwMDAwMnAtNAotICB9LAotICB7IC8vIEVudHJ5IDMzOQotICAgIDB4MS4xZDQ4NzJlZWJiOWRhMDNiYmFjNWFmNzliMGNmOTQwOXAwLAotICAgIDB4MS5mZmZmZmVwNCwgMHgxLmZmZmZmZXAtNgotICB9LAotICB7IC8vIEVudHJ5IDM0MAotICAgIDB4MS4xZDQ4NzMwZGExNTcwYTdhODVlYTFmYzFmY2Y4OGZkZHAwLAotICAgIDB4MS5mZmZmZmVwNCwgMHgxLnAtNQotICB9LAotICB7IC8vIEVudHJ5IDM0MQotICAgIDB4MS4xZDQ4NzM0YjZjYzllOTAyMTQ4ZmFmY2VmYTllYWEwNnAwLAotICAgIDB4MS5mZmZmZmVwNCwgMHgxLjAwMDAwMnAtNQotICB9LAotICB7IC8vIEVudHJ5IDM0MgotICAgIDB4MS4xZDQ4NzJmN2E1ZTEzMzYwMWVmM2I0OTVmM2Y4OWExMnAwLAotICAgIDB4MS5wNSwgMHgxLmZmZmZmZXAtNgotICB9LAotICB7IC8vIEVudHJ5IDM0MwotICAgIDB4MS4xZDQ4NzMxNjhiOWFhNzgwNWI4MDI4OTkwZjA3YTk4YnAwLAotICAgIDB4MS5wNSwgMHgxLnAtNQotICB9LAotICB7IC8vIEVudHJ5IDM0NAotICAgIDB4MS4xZDQ4NzM1NDU3MGQ5OWNhY2NmYmRiN2UzNWZmMGRmMXAwLAotICAgIDB4MS5wNSwgMHgxLjAwMDAwMnAtNQotICB9LAotICB7IC8vIEVudHJ5IDM0NQotICAgIDB4MS4xZDQ4NzMwOTdhNjgzZmMwMTMwOGQ0YTcxNjE1YjgyMHAwLAotICAgIDB4MS4wMDAwMDJwNSwgMHgxLmZmZmZmZXAtNgotICB9LAotICB7IC8vIEVudHJ5IDM0NgotICAgIDB4MS4xZDQ4NzMyODYwMjFjN2EzMzI0OTZlZTRhZDkxYWRlOXAwLAotICAgIDB4MS4wMDAwMDJwNSwgMHgxLnAtNQotICB9LAotICB7IC8vIEVudHJ5IDM0NwotICAgIDB4MS4xZDQ4NzM2NjJiOTRlMTczNjkzOWE1MDNkODNjNWU0MnAwLAotICAgIDB4MS4wMDAwMDJwNSwgMHgxLjAwMDAwMnAtNQotICB9LAotICB7IC8vIEVudHJ5IDM0OAotICAgIDB4MS4xMTMwMWNlYjIwNTQxZmYzZjY1NWUzYmQxMjI3MWIzZXAwLAotICAgIDB4MS5mZmZmZmVwNSwgMHgxLmZmZmZmZXAtNwotICB9LAotICB7IC8vIEVudHJ5IDM0OQotICAgIDB4MS4xMTMwMWNmY2UwZjQ5NDMwNGU2MzA3OTlmYzhiMTgxZnAwLAotICAgIDB4MS5mZmZmZmVwNSwgMHgxLnAtNgotICB9LAotICB7IC8vIEVudHJ5IDM1MAotICAgIDB4MS4xMTMwMWQyMDYyMzU4MDFlZjU1ODA4OTQzNTRmOTAwY3AwLAotICAgIDB4MS5mZmZmZmVwNSwgMHgxLjAwMDAwMnAtNgotICB9LAotICB7IC8vIEVudHJ5IDM1MQotICAgIDB4MS4xMTMwMWNlZjY1MTQ5MTg2YTBlY2I2MDcxMzU2NWI0NXAwLAotICAgIDB4MS5wNiwgMHgxLmZmZmZmZXAtNwotICB9LAotICB7IC8vIEVudHJ5IDM1MgotICAgIDB4MS4xMTMwMWQwMTI1YjUwYTRlYmJmMWFlZDkzMThjZWFjNXAwLAotICAgIDB4MS5wNiwgMHgxLnAtNgotICB9LAotICB7IC8vIEVudHJ5IDM1MwotICAgIDB4MS4xMTMwMWQyNGE2ZjVmZjU0ZThkODExYTRiOTc4YjU0ZnAwLAotICAgIDB4MS5wNiwgMHgxLjAwMDAwMnAtNgotICB9LAotICB7IC8vIEVudHJ5IDM1NAotICAgIDB4MS4xMTMwMWNmN2VlOTU2ODEwZWRkOTRkMWM3Njk3ZjM0YnAwLAotICAgIDB4MS4wMDAwMDJwNiwgMHgxLmZmZmZmZXAtNwotICB9LAotICB7IC8vIEVudHJ5IDM1NQotICAgIDB4MS4xMTMwMWQwOWFmMzVlOWYwOGVjMGI2NTY0Y2ZkNGQzYXAwLAotICAgIDB4MS4wMDAwMDJwNiwgMHgxLnAtNgotICB9LAotICB7IC8vIEVudHJ5IDM1NgotICAgIDB4MS4xMTMwMWQyZDMwNzZmMTI1Yzc2ZjY5YmYxMDdmNDA1MnAwLAotICAgIDB4MS4wMDAwMDJwNiwgMHgxLjAwMDAwMnAtNgotICB9LAotICB7IC8vIEVudHJ5IDM1NwotICAgIDB4MS5mZmZjOWQxZWFmZjFlMmJjNzA4ZmJiOWZjMTQxZDE4NnAxMjcsCi0gICAgMHgxLmZmZmZmY3AwLCAweDEuZmZmZmZjcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTgKLSAgICAweDEuZmZmZDRlOGZiODM5MzNjYmY1ZjgyN2UyNTgxZjIwZGNwMTI3LAotICAgIDB4MS5mZmZmZmNwMCwgMHgxLmZmZmZmZXA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzU5Ci0gICAgMHgxLmZmZmUwMDAwZmRmZmFjYTgxNDU4ZjgwZWMzMDFhMmM4cDEyNywKLSAgICAweDEuZmZmZmZjcDAsIDB4MS5wNwotICB9LAotICB7IC8vIEVudHJ5IDM2MAotICAgIDB4MS5mZmZmNjJlNDQyMGE2YjA2ZDcwMmY0ZTJhYWZmYTRlNXAxMjcsCi0gICAgMHgxLmZmZmZmY3AwLCAweDEuMDAwMDAycDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjEKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLmZmZmZmY3AwLCAweDEuMDAwMDA0cDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjIKLSAgICAweDEuZmZmZDlkMWQzZTAwZDk5YmRmZTM2MTlmMDVmMmVjYzFwMTI3LAotICAgIDB4MS5mZmZmZmVwMCwgMHgxLmZmZmZmY3A2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzYzCi0gICAgMHgxLmZmZmU0ZThlYTAwMGMzZjk5ZDg0ZDg4NmMwMzgxMWZhcDEyNywKLSAgICAweDEuZmZmZmZlcDAsIDB4MS5mZmZmZmVwNgotICB9LAotICB7IC8vIEVudHJ5IDM2NAotICAgIDB4MS5mZmZmMDAwMDNmN2ZmNTk1MDE0NThmYTA3NjE1ODY4YnAxMjcsCi0gICAgMHgxLmZmZmZmZXAwLCAweDEucDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjUKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLmZmZmZmZXAwLCAweDEuMDAwMDAycDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjYKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLmZmZmZmZXAwLCAweDEuMDAwMDA0cDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjcKLSAgICAweDEuZmZmZTlkMWM0YjBmMzdmNDEzZDQ0YzY2YzA0ODE4MzRwMTI3LAotICAgIDB4MS5wMSwgMHgxLmZmZmZmY3A2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzY4Ci0gICAgMHgxLmZmZmY0ZThlMDZjN2U4YTJhODRkYWVkOGVjNTZkNmMzcDEyNywKLSAgICAweDEucDEsIDB4MS5mZmZmZmVwNgotICB9LAotICB7IC8vIEVudHJ5IDM2OQotICAgIEhVR0VfVkFMRiwKLSAgICAweDEucDEsIDB4MS5wNwotICB9LAotICB7IC8vIEVudHJ5IDM3MAotICAgIEhVR0VfVkFMRiwKLSAgICAweDEucDEsIDB4MS4wMDAwMDJwNwotICB9LAotICB7IC8vIEVudHJ5IDM3MQotICAgIEhVR0VfVkFMRiwKLSAgICAweDEucDEsIDB4MS4wMDAwMDRwNwotICB9LAotICB7IC8vIEVudHJ5IDM3MgotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuMDAwMDAycDEsIDB4MS5mZmZmZmNwNgotICB9LAotICB7IC8vIEVudHJ5IDM3MwotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuMDAwMDAycDEsIDB4MS5mZmZmZmVwNgotICB9LAotICB7IC8vIEVudHJ5IDM3NAotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuMDAwMDAycDEsIDB4MS5wNwotICB9LAotICB7IC8vIEVudHJ5IDM3NQotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuMDAwMDAycDEsIDB4MS4wMDAwMDJwNwotICB9LAotICB7IC8vIEVudHJ5IDM3NgotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuMDAwMDAycDEsIDB4MS4wMDAwMDRwNwotICB9LAotICB7IC8vIEVudHJ5IDM3NwotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuMDAwMDA0cDEsIDB4MS5mZmZmZmNwNgotICB9LAotICB7IC8vIEVudHJ5IDM3OAotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuMDAwMDA0cDEsIDB4MS5mZmZmZmVwNgotICB9LAotICB7IC8vIEVudHJ5IDM3OQotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuMDAwMDA0cDEsIDB4MS5wNwotICB9LAotICB7IC8vIEVudHJ5IDM4MAotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuMDAwMDA0cDEsIDB4MS4wMDAwMDJwNwotICB9LAotICB7IC8vIEVudHJ5IDM4MQotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuMDAwMDA0cDEsIDB4MS4wMDAwMDRwNwotICB9LAotICB7IC8vIEVudHJ5IDM4MgotICAgIDAuMGYsCi0gICAgMHgxLmZmZmZmY3AwLCAtMHgxLjJjMDAwNHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzgzCi0gICAgMC4wZiwKLSAgICAweDEuZmZmZmZjcDAsIC0weDEuMmMwMDAycDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODQKLSAgICAwLjBmLAotICAgIDB4MS5mZmZmZmNwMCwgLTB4MS4yY3A3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzg1Ci0gICAgMC4wZiwKLSAgICAweDEuZmZmZmZjcDAsIC0weDEuMmJmZmZlcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODYKLSAgICAwLjBmLAotICAgIDB4MS5mZmZmZmNwMCwgLTB4MS4yYmZmZmNwNwotICB9LAotICB7IC8vIEVudHJ5IDM4NwotICAgIDAuMGYsCi0gICAgMHgxLmZmZmZmZXAwLCAtMHgxLjJjMDAwNHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzg4Ci0gICAgMC4wZiwKLSAgICAweDEuZmZmZmZlcDAsIC0weDEuMmMwMDAycDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODkKLSAgICAwLjBmLAotICAgIDB4MS5mZmZmZmVwMCwgLTB4MS4yY3A3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzkwCi0gICAgMC4wZiwKLSAgICAweDEuZmZmZmZlcDAsIC0weDEuMmJmZmZlcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTEKLSAgICAwLjBmLAotICAgIDB4MS5mZmZmZmVwMCwgLTB4MS4yYmZmZmNwNwotICB9LAotICB7IC8vIEVudHJ5IDM5MgotICAgIDAuMGYsCi0gICAgMHgxLnAxLCAtMHgxLjJjMDAwNHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzkzCi0gICAgMC4wZiwKLSAgICAweDEucDEsIC0weDEuMmMwMDAycDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTQKLSAgICAwLjBmLAotICAgIDB4MS5wMSwgLTB4MS4yY3A3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzk1Ci0gICAgMC4wZiwKLSAgICAweDEucDEsIC0weDEuMmJmZmZlcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTYKLSAgICAwLjBmLAotICAgIDB4MS5wMSwgLTB4MS4yYmZmZmNwNwotICB9LAotICB7IC8vIEVudHJ5IDM5NwotICAgIDAuMGYsCi0gICAgMHgxLjAwMDAwMnAxLCAtMHgxLjJjMDAwNHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzk4Ci0gICAgMC4wZiwKLSAgICAweDEuMDAwMDAycDEsIC0weDEuMmMwMDAycDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTkKLSAgICAwLjBmLAotICAgIDB4MS4wMDAwMDJwMSwgLTB4MS4yY3A3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDAwCi0gICAgMC4wZiwKLSAgICAweDEuMDAwMDAycDEsIC0weDEuMmJmZmZlcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDEKLSAgICAwLjBmLAotICAgIDB4MS4wMDAwMDJwMSwgLTB4MS4yYmZmZmNwNwotICB9LAotICB7IC8vIEVudHJ5IDQwMgotICAgIDAuMGYsCi0gICAgMHgxLjAwMDAwNHAxLCAtMHgxLjJjMDAwNHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDAzCi0gICAgMC4wZiwKLSAgICAweDEuMDAwMDA0cDEsIC0weDEuMmMwMDAycDcKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDQKLSAgICAwLjBmLAotICAgIDB4MS4wMDAwMDRwMSwgLTB4MS4yY3A3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDA1Ci0gICAgMC4wZiwKLSAgICAweDEuMDAwMDA0cDEsIC0weDEuMmJmZmZlcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDYKLSAgICAwLjBmLAotICAgIDB4MS4wMDAwMDRwMSwgLTB4MS4yYmZmZmNwNwotICB9LAotICB7IC8vIEVudHJ5IDQwNwotICAgIDAuMGYsCi0gICAgMHgxLmRiNmRiMnAtMiwgMHgxLmMzMGMyY3A4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDA4Ci0gICAgMC4wZiwKLSAgICAweDEuZGI2ZGIycC0yLCAweDEuYzMwYzJlcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDkKLSAgICAwLjBmLAotICAgIDB4MS5kYjZkYjJwLTIsIDB4MS5jMzBjMzBwOAotICB9LAotICB7IC8vIEVudHJ5IDQxMAotICAgIDAuMGYsCi0gICAgMHgxLmRiNmRiMnAtMiwgMHgxLmMzMGMzMnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDExCi0gICAgMC4wZiwKLSAgICAweDEuZGI2ZGIycC0yLCAweDEuYzMwYzM0cDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTIKLSAgICAwLjBmLAotICAgIDB4MS5kYjZkYjRwLTIsIDB4MS5jMzBjMmNwOAotICB9LAotICB7IC8vIEVudHJ5IDQxMwotICAgIDAuMGYsCi0gICAgMHgxLmRiNmRiNHAtMiwgMHgxLmMzMGMyZXA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDE0Ci0gICAgMC4wZiwKLSAgICAweDEuZGI2ZGI0cC0yLCAweDEuYzMwYzMwcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTUKLSAgICAwLjBmLAotICAgIDB4MS5kYjZkYjRwLTIsIDB4MS5jMzBjMzJwOAotICB9LAotICB7IC8vIEVudHJ5IDQxNgotICAgIDAuMGYsCi0gICAgMHgxLmRiNmRiNHAtMiwgMHgxLmMzMGMzNHA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDE3Ci0gICAgMC4wZiwKLSAgICAweDEuZGI2ZGI2cC0yLCAweDEuYzMwYzJjcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTgKLSAgICAwLjBmLAotICAgIDB4MS5kYjZkYjZwLTIsIDB4MS5jMzBjMmVwOAotICB9LAotICB7IC8vIEVudHJ5IDQxOQotICAgIDAuMGYsCi0gICAgMHgxLmRiNmRiNnAtMiwgMHgxLmMzMGMzMHA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDIwCi0gICAgMC4wZiwKLSAgICAweDEuZGI2ZGI2cC0yLCAweDEuYzMwYzMycDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjEKLSAgICAwLjBmLAotICAgIDB4MS5kYjZkYjZwLTIsIDB4MS5jMzBjMzRwOAotICB9LAotICB7IC8vIEVudHJ5IDQyMgotICAgIDAuMGYsCi0gICAgMHgxLmRiNmRiOHAtMiwgMHgxLmMzMGMyY3A4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDIzCi0gICAgMC4wZiwKLSAgICAweDEuZGI2ZGI4cC0yLCAweDEuYzMwYzJlcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjQKLSAgICAwLjBmLAotICAgIDB4MS5kYjZkYjhwLTIsIDB4MS5jMzBjMzBwOAotICB9LAotICB7IC8vIEVudHJ5IDQyNQotICAgIDAuMGYsCi0gICAgMHgxLmRiNmRiOHAtMiwgMHgxLmMzMGMzMnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDI2Ci0gICAgMC4wZiwKLSAgICAweDEuZGI2ZGI4cC0yLCAweDEuYzMwYzM0cDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjcKLSAgICAwLjBmLAotICAgIDB4MS5kYjZkYmFwLTIsIDB4MS5jMzBjMmNwOAotICB9LAotICB7IC8vIEVudHJ5IDQyOAotICAgIDAuMGYsCi0gICAgMHgxLmRiNmRiYXAtMiwgMHgxLmMzMGMyZXA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDI5Ci0gICAgMC4wZiwKLSAgICAweDEuZGI2ZGJhcC0yLCAweDEuYzMwYzMwcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzAKLSAgICAwLjBmLAotICAgIDB4MS5kYjZkYmFwLTIsIDB4MS5jMzBjMzJwOAotICB9LAotICB7IC8vIEVudHJ5IDQzMQotICAgIDAuMGYsCi0gICAgMHgxLmRiNmRiYXAtMiwgMHgxLmMzMGMzNHA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDMyCi0gICAgLTB4MS5mZmZmZmMwMDAwMDdmZmZmZjAwMDAwMWZmZmZmYzBwLTEsCi0gICAgLTB4MS4wMDAwMDJwMCwgLTB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDQzMwotICAgIC0weDEucDAsCi0gICAgLTB4MS5wMCwgLTB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDQzNAotICAgIC0weDEuMDAwMDAxMDAwMDAxMDAwMDAxMDAwMDAxMDAwMDAxcDAsCi0gICAgLTB4MS5mZmZmZmVwLTEsIC0weDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzUKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLnAxLCAweDEucDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM2Ci0gICAgSFVHRV9WQUxGLAotICAgIDB4MS5wMiwgMHgxLnA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDM3Ci0gICAgMC4wZiwKLSAgICAweDEuZmZmZmZlcC0yLCAweDEuZmZmZmZlcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzgKLSAgICAwLjBmLAotICAgIDB4MS5mZmZmZmVwLTIsIDB4MS5wMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzkKLSAgICAwLjBmLAotICAgIDB4MS5mZmZmZmVwLTIsIDB4MS4wMDAwMDJwMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDAKLSAgICAwLjBmLAotICAgIDB4MS5wLTEsIDB4MS5mZmZmZmVwOQotICB9LAotICB7IC8vIEVudHJ5IDQ0MQotICAgIDAuMGYsCi0gICAgMHgxLnAtMSwgMHgxLnAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ0MgotICAgIDAuMGYsCi0gICAgMHgxLnAtMSwgMHgxLjAwMDAwMnAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ0MwotICAgIDAuMGYsCi0gICAgMHgxLjAwMDAwMnAtMSwgMHgxLmZmZmZmZXA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDQ0Ci0gICAgMC4wZiwKLSAgICAweDEuMDAwMDAycC0xLCAweDEucDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ1Ci0gICAgMC4wZiwKLSAgICAweDEuMDAwMDAycC0xLCAweDEuMDAwMDAycDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ2Ci0gICAgMHgxLjAwMDIwNDY3MTA5NTQ3NTcyZmE4ZjNmNjUzZWRhNTQ4cC0xNDksCi0gICAgMHgxLnAtMTQ5LCAweDEuZmZmZmY2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ3Ci0gICAgMHgxLjAwMDE5ZDFlZWQyMWY0NDhmMmM2MjE3ZWFiM2Q5YzU1cC0xNDksCi0gICAgMHgxLnAtMTQ5LCAweDEuZmZmZmY4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ4Ci0gICAgMHgxLjAwMDEzNWQ2ZjM1OTZlMDg2ZDQ2MzM3NmE5ZGJkMWUycC0xNDksCi0gICAgMHgxLnAtMTQ5LCAweDEuZmZmZmZhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ5Ci0gICAgMHgxLjAwMDBjZThmMjMzYmEzYzY0YWRjNTY2N2E3YjBiMjQ1cC0xNDksCi0gICAgMHgxLnAtMTQ5LCAweDEuZmZmZmZjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUwCi0gICAgMHgxLjAwMDA2NzQ3N2NjODg0YjMzZTAzZDBiYjc3NTcxMTUwcC0xNDksCi0gICAgMHgxLnAtMTQ5LCAweDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUxCi0gICAgMHgxLnAtMTQ5LAotICAgIDB4MS5wLTE0OSwgMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUyCi0gICAgMC4wZiwKLSAgICAweDEucC0xNDksIDB4MS4wMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDQ1MwotICAgIDAuMGYsCi0gICAgMHgxLnAtMTQ5LCAweDEuMDAwMDA0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTQKLSAgICAwLjBmLAotICAgIDB4MS5wLTE0OSwgMHgxLjAwMDAwNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU1Ci0gICAgMC4wZiwKLSAgICAweDEucC0xNDksIDB4MS4wMDAwMDhwMAotICB9LAotICB7IC8vIEVudHJ5IDQ1NgotICAgIDAuMGYsCi0gICAgMHgxLnAtMTQ5LCAweDEuMDAwMDBhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTcKLSAgICAweDEuMDAwMjAwZWZjZjI1YmFiMWM3Y2QyMjgyNzM0MWFiNjNwLTE0OCwKLSAgICAweDEucC0xNDgsIDB4MS5mZmZmZjZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTgKLSAgICAweDEuMDAwMTlhNTkyMDRjODJmZTA2MGNmNmQzMjBmMTU0MzNwLTE0OCwKLSAgICAweDEucC0xNDgsIDB4MS5mZmZmZjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTkKLSAgICAweDEuMDAwMTMzYzI5YThmNjRmMjA0ZGExM2I3MmViYzU2ZWRwLTE0OCwKLSAgICAweDEucC0xNDgsIDB4MS5mZmZmZmFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjAKLSAgICAweDEuMDAwMGNkMmMzZGVlNTAxNDgwNzI5NTA2NTkzZmQ2OGJwLTE0OCwKLSAgICAweDEucC0xNDgsIDB4MS5mZmZmZmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjEKLSAgICAweDEuMDAwMDY2OTYwYTY5MzNlYzNiYWU4Y2FiOWNjZmQ1NDNwLTE0OCwKLSAgICAweDEucC0xNDgsIDB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjIKLSAgICAweDEucC0xNDgsCi0gICAgMHgxLnAtMTQ4LCAweDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjMKLSAgICAweDEuZmZmZTY1YThjZDAyMWRlZGQ1NWE0MGMyNzJkYzhhY2FwLTE0OSwKLSAgICAweDEucC0xNDgsIDB4MS4wMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDQ2NAotICAgIDB4MS5mZmZjY2I1MmUyZTFmMjYwMjAyMTgyMGFiNDcwMzZmZXAtMTQ5LAotICAgIDB4MS5wLTE0OCwgMHgxLjAwMDAwNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY1Ci0gICAgMHgxLmZmZmIzMGZlNDE5ZTc1YzU1MmMwNzRiNzVlOWUxMzJkcC0xNDksCi0gICAgMHgxLnAtMTQ4LCAweDEuMDAwMDA2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjYKLSAgICAweDEuZmZmOTk2YWFlOTM2YTA4Y2IyZGUzYjgzMTMyNjgzNmNwLTE0OSwKLSAgICAweDEucC0xNDgsIDB4MS4wMDAwMDhwMAotICB9LAotICB7IC8vIEVudHJ5IDQ2NwotICAgIDB4MS5mZmY3ZmM1OGQ5YTk2YjI2NTk1ZGMxYjkxYWFiMTA2NXAtMTQ5LAotICAgIDB4MS5wLTE0OCwgMHgxLjAwMDAwYXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY4Ci0gICAgMHgxLjgwMDJmZTVkMzI2ZTE5MTBkY2Y1YWRhZGM0ZmI4MGJhcC0xNDgsCi0gICAgMHgxLjgwcC0xNDgsIDB4MS5mZmZmZjZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjkKLSAgICAweDEuODAwMjY1MTZlMTMwNDEwY2JjMzRkNmJlMWYzMTRhZjNwLTE0OCwKLSAgICAweDEuODBwLTE0OCwgMHgxLmZmZmZmOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ3MAotICAgIDB4MS44MDAxY2JkMGNkMjAwNDhkYzAwNDFhYWU2ODUzZjQxNHAtMTQ4LAotICAgIDB4MS44MHAtMTQ4LCAweDEuZmZmZmZhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDcxCi0gICAgMHgxLjgwMDEzMjhhZjYzZDRiMjhiOTNiYWMxNjhkMzIzNzc2cC0xNDgsCi0gICAgMHgxLjgwcC0xNDgsIDB4MS5mZmZmZmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzIKLSAgICAweDEuODAwMDk5NDU1Yzg3ZmM3MjgyNzJkNzk5M2MzYzBlZDJwLTE0OCwKLSAgICAweDEuODBwLTE0OCwgMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ3MwotICAgIDB4MS44MHAtMTQ4LAotICAgIDB4MS44MHAtMTQ4LCAweDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzQKLSAgICAweDEuN2ZmZWNkNzVmZTc3OWMzOWRhMzEyYTBhZTY1NzVhYWVwLTE0OCwKLSAgICAweDEuODBwLTE0OCwgMHgxLjAwMDAwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDc1Ci0gICAgMHgxLjdmZmQ5YWVjZjFhMzVjN2UyZDZmNjdiOTE3N2I4YmM4cC0xNDgsCi0gICAgMHgxLjgwcC0xNDgsIDB4MS4wMDAwMDRwMAotICB9LAotICB7IC8vIEVudHJ5IDQ3NgotICAgIDB4MS43ZmZjNjg2NGQ5ODI3ZDc1N2I0YjYwMDFkMGM4MGE5YnAtMTQ4LAotICAgIDB4MS44MHAtMTQ4LCAweDEuMDAwMDA2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzcKLSAgICAweDEuN2ZmYjM1ZGRiNjE0M2JjOGUxNDVhNmQ2MTZhMWI1NTFwLTE0OCwKLSAgICAweDEuODBwLTE0OCwgMHgxLjAwMDAwOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDc4Ci0gICAgMHgxLjdmZmEwMzU3ODc1N2Q0MjIxOGNlNDBhNTc4Yzc0NDc2cC0xNDgsCi0gICAgMHgxLjgwcC0xNDgsIDB4MS4wMDAwMGFwMAotICB9LAotICB7IC8vIEVudHJ5IDQ3OQotICAgIDB4MS4wMDAwMDBhMGNmNjVlYjE4MTdhNzA5NWQ5YTA0NDNhN3AwLAotICAgIDB4MS5wLTI5LCAtMHgxLnAtMjkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODAKLSAgICAweDEuZmZmZmZmNWYzMDlhNjBhYWQ1YzIzMDlmODFmOTBkZWZwLTEsCi0gICAgMHgxLnAtMjksIDB4MS5wLTMwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDgxCi0gICAgMHgxLmZmZmZmZDllMDdjZjA3NzY3YTU1YWZiZTlhY2FlOTNlcC0xLAotICAgIDB4MS5wNTUsIC0weDEucC0yOQotICB9LAotICB7IC8vIEVudHJ5IDQ4MgotICAgIDB4MS4wMDAwMDA5ODdlMGNjNjYzNDRkODliNDk0ZTFmNDNiM3AwLAotICAgIDB4MS5wNTUsIDB4MS5wLTMwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDgzCi0gICAgMHgxLmZmZmZmZDY2OTQyN2NmMTU5NTE1ODczODg3YzE3Y2YycC0xLAotICAgIDB4MS5wNjAsIC0weDEucC0yOQotICB9LAotICB7IC8vIEVudHJ5IDQ4NAotICAgIDB4MS4wMDAwMDBhNjVhZjZhZTYxYmU4OGVhMjU1ODc5MGNkN3AwLAotICAgIDB4MS5wNjAsIDB4MS5wLTMwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDg1Ci0gICAgMHgxLmZmYzAwM2ZmYjU1YWFhNGNkMzRmMzQzMWVhNWI3N2YxcC0xLAotICAgIDB4MS5mZmZmZmVwLTEsIDB4MS5wMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODYKLSAgICAweDEuZmUwMGZmYTljMGZiM2JmMjhjOGE5YjJiM2QyZDdkYWFwLTEsCi0gICAgMHgxLmZmZmZmZXAtMSwgMHgxLnAxNgotICB9LAotICB7IC8vIEVudHJ5IDQ4NwotICAgIDB4MS5wMCwKLSAgICAweDEucDAsIDB4MS5wMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODgKLSAgICAweDEucDAsCi0gICAgMHgxLnAwLCAweDEucDE2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDg5Ci0gICAgMHgxLjAwNDAwODAwNmFhNTU0MzMyYjhmZWQwOWQ4ZWQyOWYzcDAsCi0gICAgMHgxLjAwMDAwMnAwLCAweDEucDEzCi0gIH0sCi0gIHsgLy8gRW50cnkgNDkwCi0gICAgMHgxLjAyMDIwMTUzZmM0MDViMTIzYjMzYTczY2I5M2EzNjQ4cDAsCi0gICAgMHgxLjAwMDAwMnAwLCAweDEucDE2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDkxCi0gICAgMHgxLjJjMTU2MDMyNjk0MDcwMDZiOGYzNWU4ZTRmMTQ5N2JhcC02LAotICAgIC0weDEuMDAwMDAycDAsIC0weDEucDI1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDkyCi0gICAgMHgxLmM4NDY4ODdlZTM3OWM1YWY2MzdjNzM0OWFmYzlmNjk5cC00NywKLSAgICAtMHgxLjAwMDAwMnAwLCAtMHgxLnAyOAotICB9LAotICB7IC8vIEVudHJ5IDQ5MwotICAgIDB4MS5wMCwKLSAgICAtMHgxLnAwLCAtMHgxLnAyNQotICB9LAotICB7IC8vIEVudHJ5IDQ5NAotICAgIDB4MS5wMCwKLSAgICAtMHgxLnAwLCAtMHgxLnAyOAotICB9LAotICB7IC8vIEVudHJ5IDQ5NQotICAgIDB4MS5kOGU2NGQ2NjM0Mjg5MWM4NmZiM2M4N2QxZWQ2ZDVjNXAyLAotICAgIC0weDEuZmZmZmZlcC0xLCAtMHgxLnAyNQotICB9LAotICB7IC8vIEVudHJ5IDQ5NgotICAgIDB4MS4wZjJlYzU4M2Y2MTFlNGI4ZmMxY2M3YjUwZWZiYjczOHAyMywKLSAgICAtMHgxLmZmZmZmZXAtMSwgLTB4MS5wMjgKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTcKLSAgICAweDEuZDhlNjRkNjYzNDI4OTFjODZmYjNjODdkMWVkNmQ1YzVwMiwKLSAgICAweDEuZmZmZmZlcC0xLCAtMHgxLnAyNQotICB9LAotICB7IC8vIEVudHJ5IDQ5OAotICAgIDB4MS4wZjJlYzU4M2Y2MTFlNGI4ZmMxY2M3YjUwZWZiYjczOHAyMywKLSAgICAweDEuZmZmZmZlcC0xLCAtMHgxLnAyOAotICB9LAotICB7IC8vIEVudHJ5IDQ5OQotICAgIDB4MS5wMCwKLSAgICAweDEucDAsIC0weDEucDI1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTAwCi0gICAgMHgxLnAwLAotICAgIDB4MS5wMCwgLTB4MS5wMjgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDEKLSAgICAweDEuMmMxNTYwMzI2OTQwNzAwNmI4ZjM1ZThlNGYxNDk3YmFwLTYsCi0gICAgMHgxLjAwMDAwMnAwLCAtMHgxLnAyNQotICB9LAotICB7IC8vIEVudHJ5IDUwMgotICAgIDB4MS5jODQ2ODg3ZWUzNzljNWFmNjM3YzczNDlhZmM5ZjY5OXAtNDcsCi0gICAgMHgxLjAwMDAwMnAwLCAtMHgxLnAyOAotICB9LAotICB7IC8vIEVudHJ5IDUwMwotICAgIEhVR0VfVkFMRiwKLSAgICAtMHgxLnAxNSwgMHgxLnA2MwotICB9LAotICB7IC8vIEVudHJ5IDUwNAotICAgIEhVR0VfVkFMRiwKLSAgICAwLjBmLCAtMHgxLjgwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDUKLSAgICAtSFVHRV9WQUxGLAotICAgIC0wLjBmLCAtMHgxLjgwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDYKLSAgICBIVUdFX1ZBTEYsCi0gICAgMC4wZiwgLTB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDUwNwotICAgIC1IVUdFX1ZBTEYsCi0gICAgLTAuMGYsIC0weDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDgKLSAgICBIVUdFX1ZBTEYsCi0gICAgMC4wZiwgLTB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTA5Ci0gICAgSFVHRV9WQUxGLAotICAgIDAuMGYsIC0weDEuODBwMgotICB9LAotICB7IC8vIEVudHJ5IDUxMAotICAgIEhVR0VfVkFMRiwKLSAgICAwLjBmLCAtMHgxLnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTExCi0gICAgSFVHRV9WQUxGLAotICAgIDAuMGYsIC0weDEuMDAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTIKLSAgICBIVUdFX1ZBTEYsCi0gICAgMC4wZiwgLTB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTMKLSAgICBIVUdFX1ZBTEYsCi0gICAgMC4wZiwgLTB4MS5wLTEyNgotICB9LAotICB7IC8vIEVudHJ5IDUxNAotICAgIEhVR0VfVkFMRiwKLSAgICAwLjBmLCAtMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTE1Ci0gICAgSFVHRV9WQUxGLAotICAgIC0wLjBmLCAtMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTYKLSAgICBIVUdFX1ZBTEYsCi0gICAgLTAuMGYsIC0weDEuODBwMgotICB9LAotICB7IC8vIEVudHJ5IDUxNwotICAgIEhVR0VfVkFMRiwKLSAgICAtMC4wZiwgLTB4MS5wMQotICB9LAotICB7IC8vIEVudHJ5IDUxOAotICAgIEhVR0VfVkFMRiwKLSAgICAtMC4wZiwgLTB4MS4wMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDUxOQotICAgIEhVR0VfVkFMRiwKLSAgICAtMC4wZiwgLTB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjAKLSAgICBIVUdFX1ZBTEYsCi0gICAgLTAuMGYsIC0weDEucC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjEKLSAgICBIVUdFX1ZBTEYsCi0gICAgLTAuMGYsIC0weDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjIKLSAgICBIVUdFX1ZBTEYsCi0gICAgMC4wZiwgLUhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDUyMwotICAgIEhVR0VfVkFMRiwKLSAgICAtMC4wZiwgLUhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDUyNAotICAgIDAuMCwKLSAgICAwLjBmLCAweDEuODBwMQotICB9LAotICB7IC8vIEVudHJ5IDUyNQotICAgIC0wLjAsCi0gICAgLTAuMGYsIDB4MS44MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI2Ci0gICAgMC4wLAotICAgIDAuMGYsIDB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDUyNwotICAgIC0wLjAsCi0gICAgLTAuMGYsIDB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDUyOAotICAgIDAuMCwKLSAgICAwLjBmLCBIVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjkKLSAgICAwLjAsCi0gICAgMC4wZiwgMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzAKLSAgICAwLjAsCi0gICAgMC4wZiwgMHgxLjgwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzEKLSAgICAwLjAsCi0gICAgMC4wZiwgMHgxLnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMyCi0gICAgMC4wLAotICAgIDAuMGYsIDB4MS4wMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDUzMwotICAgIDAuMCwKLSAgICAwLjBmLCAweDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM0Ci0gICAgMC4wLAotICAgIDAuMGYsIDB4MS5wLTEyNgotICB9LAotICB7IC8vIEVudHJ5IDUzNQotICAgIDAuMCwKLSAgICAwLjBmLCAweDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzYKLSAgICAwLjAsCi0gICAgLTAuMGYsIEhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDUzNwotICAgIDAuMCwKLSAgICAtMC4wZiwgMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzgKLSAgICAwLjAsCi0gICAgLTAuMGYsIDB4MS44MHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM5Ci0gICAgMC4wLAotICAgIC0wLjBmLCAweDEucDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDAKLSAgICAwLjAsCi0gICAgLTAuMGYsIDB4MS4wMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDU0MQotICAgIDAuMCwKLSAgICAtMC4wZiwgMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDU0MgotICAgIDAuMCwKLSAgICAtMC4wZiwgMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTQzCi0gICAgMC4wLAotICAgIC0wLjBmLCAweDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDQKLSAgICAweDEucDAsCi0gICAgLTB4MS5wMCwgSFVHRV9WQUxGCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ1Ci0gICAgMHgxLnAwLAotICAgIC0weDEucDAsIC1IVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDYKLSAgICAweDEucDAsCi0gICAgMHgxLnAwLCBIVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDcKLSAgICAweDEucDAsCi0gICAgMHgxLnAwLCAtSFVHRV9WQUxGCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ4Ci0gICAgMHgxLnAwLAotICAgIDB4MS5wMCwgMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDkKLSAgICAweDEucDAsCi0gICAgMHgxLnAwLCAtMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTAKLSAgICAweDEucDAsCi0gICAgLTB4MS5wMCwgMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTEKLSAgICAweDEucDAsCi0gICAgLTB4MS5wMCwgLTB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTUyCi0gICAgMHgxLnAwLAotICAgIDB4MS5wMCwgMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDU1MwotICAgIDB4MS5wMCwKLSAgICAweDEucDAsIC0weDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU0Ci0gICAgMHgxLnAwLAotICAgIDB4MS5wMCwgMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTU1Ci0gICAgMHgxLnAwLAotICAgIDB4MS5wMCwgLTB4MS5wLTEyNgotICB9LAotICB7IC8vIEVudHJ5IDU1NgotICAgIDB4MS5wMCwKLSAgICAweDEucDAsIDB4MS5mZmZmZmNwLTEyNwotICB9LAotICB7IC8vIEVudHJ5IDU1NwotICAgIDB4MS5wMCwKLSAgICAweDEucDAsIC0weDEuZmZmZmZjcC0xMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTgKLSAgICAweDEucDAsCi0gICAgMHgxLnAwLCAweDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTkKLSAgICAweDEucDAsCi0gICAgMHgxLnAwLCAtMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTYwCi0gICAgMHgxLnAwLAotICAgIDB4MS5wMCwgMC4wZgotICB9LAotICB7IC8vIEVudHJ5IDU2MQotICAgIDB4MS5wMCwKLSAgICAweDEucDAsIC0wLjBmCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYyCi0gICAgMHgxLnAwLAotICAgIEhVR0VfVkFMRiwgMC4wZgotICB9LAotICB7IC8vIEVudHJ5IDU2MwotICAgIDB4MS5wMCwKLSAgICBIVUdFX1ZBTEYsIC0wLjBmCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY0Ci0gICAgMHgxLnAwLAotICAgIDB4MS5mZmZmZmVwMTI3LCAwLjBmCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY1Ci0gICAgMHgxLnAwLAotICAgIDB4MS5mZmZmZmVwMTI3LCAtMC4wZgotICB9LAotICB7IC8vIEVudHJ5IDU2NgotICAgIDB4MS5wMCwKLSAgICAweDEucC0xMjYsIDAuMGYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjcKLSAgICAweDEucDAsCi0gICAgMHgxLnAtMTI2LCAtMC4wZgotICB9LAotICB7IC8vIEVudHJ5IDU2OAotICAgIDB4MS5wMCwKLSAgICAweDEucC0xNDksIDAuMGYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjkKLSAgICAweDEucDAsCi0gICAgMHgxLnAtMTQ5LCAtMC4wZgotICB9LAotICB7IC8vIEVudHJ5IDU3MAotICAgIDB4MS5wMCwKLSAgICAwLjBmLCAwLjBmCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcxCi0gICAgMHgxLnAwLAotICAgIDAuMGYsIC0wLjBmCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcyCi0gICAgMHgxLnAwLAotICAgIC0wLjBmLCAwLjBmCi0gIH0sCi0gIHsgLy8gRW50cnkgNTczCi0gICAgMHgxLnAwLAotICAgIC0wLjBmLCAtMC4wZgotICB9LAotICB7IC8vIEVudHJ5IDU3NAotICAgIDB4MS5wMCwKLSAgICAtMHgxLnAtMTQ5LCAwLjBmCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc1Ci0gICAgMHgxLnAwLAotICAgIC0weDEucC0xNDksIC0wLjBmCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc2Ci0gICAgMHgxLnAwLAotICAgIC0weDEucC0xMjYsIDAuMGYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzcKLSAgICAweDEucDAsCi0gICAgLTB4MS5wLTEyNiwgLTAuMGYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzgKLSAgICAweDEucDAsCi0gICAgLTB4MS5mZmZmZmVwMTI3LCAwLjBmCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc5Ci0gICAgMHgxLnAwLAotICAgIC0weDEuZmZmZmZlcDEyNywgLTAuMGYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODAKLSAgICAweDEucDAsCi0gICAgLUhVR0VfVkFMRiwgMC4wZgotICB9LAotICB7IC8vIEVudHJ5IDU4MQotICAgIDB4MS5wMCwKLSAgICAtSFVHRV9WQUxGLCAtMC4wZgotICB9LAotICB7IC8vIEVudHJ5IDU4MgotICAgIEhVR0VfVkFMRiwKLSAgICAweDEucC0xMjYsIC1IVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODMKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLnAtMTQ5LCAtSFVHRV9WQUxGCi0gIH0sCi0gIHsgLy8gRW50cnkgNTg0Ci0gICAgSFVHRV9WQUxGLAotICAgIC0weDEucC0xNDksIC1IVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODUKLSAgICBIVUdFX1ZBTEYsCi0gICAgLTB4MS5wLTEyNiwgLUhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDU4NgotICAgIDAuMCwKLSAgICBIVUdFX1ZBTEYsIC1IVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODcKLSAgICAwLjAsCi0gICAgMHgxLmZmZmZmZXAxMjcsIC1IVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODgKLSAgICAwLjAsCi0gICAgMHgxLjgwcDAsIC1IVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODkKLSAgICAwLjAsCi0gICAgLTB4MS44MHAwLCAtSFVHRV9WQUxGCi0gIH0sCi0gIHsgLy8gRW50cnkgNTkwCi0gICAgMC4wLAotICAgIC0weDEuZmZmZmZlcDEyNywgLUhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDU5MQotICAgIDAuMCwKLSAgICAtSFVHRV9WQUxGLCAtSFVHRV9WQUxGCi0gIH0sCi0gIHsgLy8gRW50cnkgNTkyCi0gICAgMC4wLAotICAgIDB4MS5wLTEyNiwgSFVHRV9WQUxGCi0gIH0sCi0gIHsgLy8gRW50cnkgNTkzCi0gICAgMC4wLAotICAgIDB4MS5wLTE0OSwgSFVHRV9WQUxGCi0gIH0sCi0gIHsgLy8gRW50cnkgNTk0Ci0gICAgMC4wLAotICAgIDAuMGYsIEhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDU5NQotICAgIDAuMCwKLSAgICAtMC4wZiwgSFVHRV9WQUxGCi0gIH0sCi0gIHsgLy8gRW50cnkgNTk2Ci0gICAgMC4wLAotICAgIC0weDEucC0xNDksIEhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDU5NwotICAgIDAuMCwKLSAgICAtMHgxLnAtMTI2LCBIVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTgKLSAgICBIVUdFX1ZBTEYsCi0gICAgSFVHRV9WQUxGLCBIVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTkKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLmZmZmZmZXAxMjcsIEhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDYwMAotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuODBwMCwgSFVHRV9WQUxGCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAxCi0gICAgSFVHRV9WQUxGLAotICAgIC0weDEuODBwMCwgSFVHRV9WQUxGCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAyCi0gICAgSFVHRV9WQUxGLAotICAgIC0weDEuZmZmZmZlcDEyNywgSFVHRV9WQUxGCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAzCi0gICAgSFVHRV9WQUxGLAotICAgIC1IVUdFX1ZBTEYsIEhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDYwNAotICAgIC0wLjAsCi0gICAgLUhVR0VfVkFMRiwgLTB4MS44MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA1Ci0gICAgLTAuMCwKLSAgICAtSFVHRV9WQUxGLCAtMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA2Ci0gICAgMC4wLAotICAgIC1IVUdFX1ZBTEYsIC1IVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDcKLSAgICAwLjAsCi0gICAgLUhVR0VfVkFMRiwgLTB4MS45MjFmYjZwMQotICB9LAotICB7IC8vIEVudHJ5IDYwOAotICAgIDAuMCwKLSAgICAtSFVHRV9WQUxGLCAtMHgxLjkyMWZiNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA5Ci0gICAgMC4wLAotICAgIC1IVUdFX1ZBTEYsIC0weDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDYxMAotICAgIDAuMCwKLSAgICAtSFVHRV9WQUxGLCAtMHgxLjgwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTEKLSAgICAwLjAsCi0gICAgLUhVR0VfVkFMRiwgLTB4MS5wMQotICB9LAotICB7IC8vIEVudHJ5IDYxMgotICAgIDAuMCwKLSAgICAtSFVHRV9WQUxGLCAtMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjEzCi0gICAgMC4wLAotICAgIC1IVUdFX1ZBTEYsIC0weDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTQKLSAgICAtSFVHRV9WQUxGLAotICAgIC1IVUdFX1ZBTEYsIDB4MS44MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE1Ci0gICAgLUhVR0VfVkFMRiwKLSAgICAtSFVHRV9WQUxGLCAweDEuNDBwMgotICB9LAotICB7IC8vIEVudHJ5IDYxNgotICAgIEhVR0VfVkFMRiwKLSAgICAtSFVHRV9WQUxGLCBIVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTcKLSAgICBIVUdFX1ZBTEYsCi0gICAgLUhVR0VfVkFMRiwgMHgxLjkyMWZiNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE4Ci0gICAgSFVHRV9WQUxGLAotICAgIC1IVUdFX1ZBTEYsIDB4MS45MjFmYjZwMAotICB9LAotICB7IC8vIEVudHJ5IDYxOQotICAgIEhVR0VfVkFMRiwKLSAgICAtSFVHRV9WQUxGLCAweDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDYyMAotICAgIEhVR0VfVkFMRiwKLSAgICAtSFVHRV9WQUxGLCAweDEuODBwMgotICB9LAotICB7IC8vIEVudHJ5IDYyMQotICAgIEhVR0VfVkFMRiwKLSAgICAtSFVHRV9WQUxGLCAweDEucDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjIKLSAgICBIVUdFX1ZBTEYsCi0gICAgLUhVR0VfVkFMRiwgMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjIzCi0gICAgSFVHRV9WQUxGLAotICAgIC1IVUdFX1ZBTEYsIDB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDYyNAotICAgIDAuMCwKLSAgICBIVUdFX1ZBTEYsIC0weDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjUKLSAgICAwLjAsCi0gICAgSFVHRV9WQUxGLCAtMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjI2Ci0gICAgMC4wLAotICAgIEhVR0VfVkFMRiwgLTB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjI3Ci0gICAgMC4wLAotICAgIEhVR0VfVkFMRiwgLUhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDYyOAotICAgIEhVR0VfVkFMRiwKLSAgICBIVUdFX1ZBTEYsIEhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDYyOQotICAgIEhVR0VfVkFMRiwKLSAgICBIVUdFX1ZBTEYsIDB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjMwCi0gICAgSFVHRV9WQUxGLAotICAgIEhVR0VfVkFMRiwgMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjMxCi0gICAgSFVHRV9WQUxGLAotICAgIEhVR0VfVkFMRiwgMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjMyCi0gICAgSFVHRV9WQUxGLAotICAgIDB4MS5mZmZmZmVwMTI3LCAweDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDYzMwotICAgIDAuMGYsCi0gICAgMHgxLnAtMTI2LCAweDEucDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzQKLSAgICAwLjBmLAotICAgIC0weDEucC0xMjYsIDB4MS5wMQotICB9LAotICB7IC8vIEVudHJ5IDYzNQotICAgIDAuMGYsCi0gICAgMHgxLnAtMTQ5LCAweDEucDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzYKLSAgICAwLjBmLAotICAgIC0weDEucC0xNDksIDB4MS5wMQotICB9LAotICB7IC8vIEVudHJ5IDYzNwotICAgIEhVR0VfVkFMRiwKLSAgICBIVUdFX1ZBTEYsIDB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzgKLSAgICAweDEuZmZmZmZlZmZmZmZmYmZmZmZmZGZmZmZmZWJmZmZmZjFwNjMsCi0gICAgMHgxLmZmZmZmZXAxMjcsIDB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzkKLSAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwLTEsCi0gICAgMHgxLnAtMSwgMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY0MAotICAgIDB4MS5wLTYzLAotICAgIDB4MS5wLTEyNiwgMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY0MQotICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXAtNzUsCi0gICAgMHgxLnAtMTQ5LCAweDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQyCi0gICAgMC4wLAotICAgIDAuMGYsIDB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDMKLSAgICAwLjAsCi0gICAgLTAuMGYsIDB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDQKLSAgICBIVUdFX1ZBTEYsCi0gICAgLUhVR0VfVkFMRiwgMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY0NQotICAgIDAuMCwKLSAgICBIVUdFX1ZBTEYsIC0weDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ2Ci0gICAgMHgxLjAwMDAwMDgwMDAwMDYwMDAwMDUwMDAwMDQ2MDAwMDNmcC02NCwKLSAgICAweDEuZmZmZmZlcDEyNywgLTB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDcKLSAgICAweDEuNmEwOWU2NjdmM2JjYzkwOGIyZmIxMzY2ZWE5NTdkM2VwMCwKLSAgICAweDEucC0xLCAtMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY0OAotICAgIDB4MS5wNjMsCi0gICAgMHgxLnAtMTI2LCAtMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY0OQotICAgIDB4MS42YTA5ZTY2N2YzYmNjOTA4YjJmYjEzNjZlYTk1N2QzZXA3NCwKLSAgICAweDEucC0xNDksIC0weDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUwCi0gICAgSFVHRV9WQUxGLAotICAgIDAuMGYsIC0weDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUxCi0gICAgSFVHRV9WQUxGLAotICAgIC0wLjBmLCAtMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY1MgotICAgIDAuMCwKLSAgICAtSFVHRV9WQUxGLCAtMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY1MwotICAgIDAuMCwKLSAgICAweDEucC0xLCBIVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTQKLSAgICAwLjBmLAotICAgIDB4MS5wLTEsIDB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjU1Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcC0xLAotICAgIDB4MS5wLTEsIDB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTYKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmFwLTEsCi0gICAgMHgxLnAtMSwgMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjU3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5wLTEsIDB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDY1OAotICAgIDB4MS5wMCwKLSAgICAweDEucC0xLCAwLjBmCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU5Ci0gICAgMHgxLnAwLAotICAgIDB4MS5wLTEsIC0wLjBmCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYwCi0gICAgMHgxLnAwLAotICAgIDB4MS5wLTEsIC0weDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjEKLSAgICAweDEuMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDJwMCwKLSAgICAweDEucC0xLCAtMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjYyCi0gICAgMHgxLjZhMDllNjY3ZjNiY2M5MDhiMmZiMTM2NmVhOTU3ZDNlcDAsCi0gICAgMHgxLnAtMSwgLTB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjMKLSAgICBIVUdFX1ZBTEYsCi0gICAgMHgxLnAtMSwgLTB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjY0Ci0gICAgSFVHRV9WQUxGLAotICAgIDB4MS5wLTEsIC1IVUdFX1ZBTEYKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjUKLSAgICAwLjAsCi0gICAgLTB4MS5wLTEsIEhVR0VfVkFMRgotICB9LAotICB7IC8vIEVudHJ5IDY2NgotICAgIDAuMGYsCi0gICAgLTB4MS5wLTEsIDB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjY3Ci0gICAgMHgxLnAwLAotICAgIC0weDEucC0xLCAwLjBmCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY4Ci0gICAgMHgxLnAwLAotICAgIC0weDEucC0xLCAtMC4wZgotICB9LAotICB7IC8vIEVudHJ5IDY2OQotICAgIEhVR0VfVkFMRiwKLSAgICAtMHgxLnAtMSwgLTB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjcwCi0gICAgSFVHRV9WQUxGLAotICAgIC0weDEucC0xLCAtSFVHRV9WQUxGCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcxCi0gICAgMHgxLnAxLAotICAgIDB4MS5wMiwgMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY3MgotICAgIDB4MS44MHAxLAotICAgIDB4MS4yMHAzLCAweDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjczCi0gICAgMHgxLnAyLAotICAgIDB4MS5wNCwgMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY3NAotICAgIDB4MS5wLTEsCi0gICAgMHgxLnAyLCAtMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY3NQotICAgIDB4MS5wLTIsCi0gICAgMHgxLnA0LCAtMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY3NgotICAgIDB4MS5wLTMsCi0gICAgMHgxLnA2LCAtMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY3NwotICAgIEhVR0VfVkFMRiwKLSAgICAweDEuZmZmZmZlcC0xLCAtMHgxLjc0OTEwY3A2MgotICB9LAotICB7IC8vIEVudHJ5IDY3OAotICAgIDAuMGYsCi0gICAgMHgxLmZmZmZmZXAtMSwgMHgxLjc0OTEwY3A2MgotICB9LAotICB7IC8vIEVudHJ5IDY3OQotICAgIDB4MS5wMiwKLSAgICAweDEucDEsIDB4MS5wMQotICB9LAotICB7IC8vIEVudHJ5IDY4MAotICAgIDB4MS5wLTIsCi0gICAgMHgxLnAxLCAtMHgxLnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgxCi0gICAgMHgxLnAyLAotICAgIC0weDEucDEsIDB4MS5wMQotICB9LAotICB7IC8vIEVudHJ5IDY4MgotICAgIDB4MS5wLTIsCi0gICAgLTB4MS5wMSwgLTB4MS5wMQotICB9LAotICB7IC8vIEVudHJ5IDY4MwotICAgIDB4MS5iMHA0LAotICAgIDB4MS44MHAxLCAweDEuODBwMQotICB9LAotICB7IC8vIEVudHJ5IDY4NAotICAgIDB4MS44NmEwcDExLAotICAgIDB4MS40MHAyLCAweDEuNDBwMgotICB9LAotICB7IC8vIEVudHJ5IDY4NQotICAgIDB4MS45MjFlZTBwMTksCi0gICAgMHgxLmMwcDIsIDB4MS5jMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg2Ci0gICAgMHgxLjJhMDVmMnAzMywKLSAgICAweDEuNDBwMywgMHgxLjQwcDMKLSAgfSwKLX07Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwotCi1URVNUKG1hdGhfcG93ZiwgcG93Zl9pbnRlbCkgewotI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplb2YoZ19wb3dmX2ludGVsX2RhdGEpL3NpemVvZihwb3dmX2ludGVsX2RhdGFfdCk7IGkrKykgewotICAgIEVYUEVDVF9GTE9BVF9FUShnX3Bvd2ZfaW50ZWxfZGF0YVtpXS5leHBlY3RlZCwgcG93ZihnX3Bvd2ZfaW50ZWxfZGF0YVtpXS54X2NhbGxfZGF0YSwgZ19wb3dmX2ludGVsX2RhdGFbaV0ueV9jYWxsX2RhdGEpKSA8PCAiRmFpbGVkIG9uIGVsZW1lbnQgIiA8PCBpOwotICB9Ci0jZWxzZSAvLyBfX0JJT05JQ19fCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCi19CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX3Npbl90ZXN0LmNwcCBiL3Rlc3RzL21hdGhfc2luX3Rlc3QuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmZmE0MzQwLi4wMDAwMDAwCi0tLSBhL3Rlc3RzL21hdGhfc2luX3Rlc3QuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNTc5NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLQotI2luY2x1ZGUgPG1hdGguaD4KLQotI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+Ci0KLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCi10eXBlZGVmIHN0cnVjdCB7Ci0gIGRvdWJsZSBleHBlY3RlZDsKLSAgZG91YmxlIGNhbGxfZGF0YTsKLX0gc2luX2ludGVsX2RhdGFfdDsKLQotc3RhdGljIHNpbl9pbnRlbF9kYXRhX3QgZ19zaW5faW50ZWxfZGF0YVtdID0gewotICB7IC8vIEVudHJ5IDAKLSAgICAweDEuOTI1OWUzNzA4YmQzOWZmZmZmZmZmZmZmZmZmMWJkYmVwLTUsCi0gICAgMHgxLjkyODM1ODY1MDNmZTBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxCi0gICAgLTB4MS45MjU5ZTM3MDhiZDM5ZmZmZmZmZmZmZmZmZmYxYmRiZXAtNSwKLSAgICAtMHgxLjkyODM1ODY1MDNmZTBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyCi0gICAgMHgxLmQ3N2IxMTdmMjMwZDVmZmZmZmZmZmZmZmZmZjJhZGM3cC01LAotICAgIDB4MS5kN2JkY2Q3NzgwNDlmcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMwotICAgIC0weDEuZDc3YjExN2YyMzBkNWZmZmZmZmZmZmZmZmZmMmFkYzdwLTUsCi0gICAgLTB4MS5kN2JkY2Q3NzgwNDlmcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNAotICAgIDB4MS5hMTQ5MGM4YzA2YmE2ZmZmZmZmZmZmZmZmZmE5ODYxMXAtNCwKLSAgICAweDEuYTIwMmIzZmI4NDc4OHAtNAotICB9LAotICB7IC8vIEVudHJ5IDUKLSAgICAtMHgxLmExNDkwYzhjMDZiYTZmZmZmZmZmZmZmZmZmYTk4NjExcC00LAotICAgIC0weDEuYTIwMmIzZmI4NDc4OHAtNAotICB9LAotICB7IC8vIEVudHJ5IDYKLSAgICAweDEuY2M0MGMzODA1MjI5YTdmZmZmZmZmZmZmZmY4M2U3NmJwLTMsCi0gICAgMHgxLmQwMzdjYjI3ZWU2ZGZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3Ci0gICAgLTB4MS5jYzQwYzM4MDUyMjlhN2ZmZmZmZmZmZmZmZjgzZTc2YnAtMywKLSAgICAtMHgxLmQwMzdjYjI3ZWU2ZGZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4Ci0gICAgMHgxLmQwZWY3OTkwMDFiYTkwMDAwMDAwMDAwMDAwNWVhNGU5cC0zLAotICAgIDB4MS5kNTA2NGU2ZmU4MmM1cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgOQotICAgIC0weDEuZDBlZjc5OTAwMWJhOTAwMDAwMDAwMDAwMDA1ZWE0ZTlwLTMsCi0gICAgLTB4MS5kNTA2NGU2ZmU4MmM1cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAKLSAgICAweDEuZTk5NTA3MzBjNDY5NWZmZmZmZmZmZmZmZmZmZmZjMmVwLTIsCi0gICAgMHgxLmZlNzY3NzM5ZDBmNmRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMQotICAgIC0weDEuZTk5NTA3MzBjNDY5NWZmZmZmZmZmZmZmZmZmZmZjMmVwLTIsCi0gICAgLTB4MS5mZTc2NzczOWQwZjZkcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIKLSAgICAweDEuOThkY2QwOTMzNzc5MjgwMDAwMDAwMDAwMDAxNjdkYzdwLTEsCi0gICAgMHgxLmQ5OGM0YzYxMjcxOGRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMwotICAgIC0weDEuOThkY2QwOTMzNzc5MjgwMDAwMDAwMDAwMDAxNjdkYzdwLTEsCi0gICAgLTB4MS5kOThjNGM2MTI3MThkcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzFwLTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwMAotICB9LAotICB7IC8vIEVudHJ5IDE1Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMXAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMAotICB9LAotICB7IC8vIEVudHJ5IDE2Ci0gICAgMHgxLjcwYTlkODI1YjUwNjQwMDQyMjE1NWFlY2Q1MTlkNTRjcC0xLAotICAgIC0weDEuMDAwMDAwMWY4cDUwMAotICB9LAotICB7IC8vIEVudHJ5IDE3Ci0gICAgLTB4MS43MGE5ZDgyNWI1MDY0MDA0MjIxNTVhZWNkNTE5ZDU0Y3AtMSwKLSAgICAweDEuMDAwMDAwMWY4cDUwMAotICB9LAotICB7IC8vIEVudHJ5IDE4Ci0gICAgMHgxLmJmMzk4MGM2YzFlOWY0NDk2Nzk1ZjRjZTUzNTAxNmI2cC0xLAotICAgIC0weDEuMDBjMGJmOHA3MDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOQotICAgIC0weDEuYmYzOTgwYzZjMWU5ZjQ0OTY3OTVmNGNlNTM1MDE2YjZwLTEsCi0gICAgMHgxLjAwYzBiZjhwNzAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAKLSAgICAweDEuZDYyODk5ZDQ4YjQzOTdmYjI3NWJhNDQwOTU5NzEzNjRwLTQsCi0gICAgLTB4MS4xM2ZmZmZmZmZmZjgwcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMQotICAgIC0weDEuZDYyODk5ZDQ4YjQzOTdmYjI3NWJhNDQwOTU5NzEzNjRwLTQsCi0gICAgMHgxLjEzZmZmZmZmZmZmODBwNgotICB9LAotICB7IC8vIEVudHJ5IDIyCi0gICAgLTB4MS4xN2I3YTYwY2UxZjE0ODU4MjQ3MTE1MjNhYjBmZDZkMXAtNSwKLSAgICAtMHgxLjE3YzU5MjA3NjdkZmNwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMwotICAgIDB4MS4xN2I3YTYwY2UxZjE0ODU4MjQ3MTE1MjNhYjBmZDZkMXAtNSwKLSAgICAweDEuMTdjNTkyMDc2N2RmY3AtNQotICB9LAotICB7IC8vIEVudHJ5IDI0Ci0gICAgMHgxLmYwMTkyYjc5NGZiYmUwMzBmZTI1ZWRmNjVhNWRiOWJmcC0xLAotICAgIC0weDEuMWQ5OWJlMDg3MTNjY3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUKLSAgICAtMHgxLmYwMTkyYjc5NGZiYmUwMzBmZTI1ZWRmNjVhNWRiOWJmcC0xLAotICAgIDB4MS4xZDk5YmUwODcxM2NjcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNgotICAgIC0weDEuNWU2MTMyOGMwMDM0ZWMzYTA1ZDA1M2I3MmUyZDU5NDVwLTMsCi0gICAgLTB4MS4xZGRiZmQ2NGZjMGQzcDgxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcKLSAgICAweDEuNWU2MTMyOGMwMDM0ZWMzYTA1ZDA1M2I3MmUyZDU5NDVwLTMsCi0gICAgMHgxLjFkZGJmZDY0ZmMwZDNwODEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOAotICAgIDB4MS5mYjAyOGM1ZGYxZGIzZWIzMmIwMDYyYzZjZDRkZWEwYnAtMSwKLSAgICAtMHgxLjFlMmExNTYzZTA2OGVwNwotICB9LAotICB7IC8vIEVudHJ5IDI5Ci0gICAgLTB4MS5mYjAyOGM1ZGYxZGIzZWIzMmIwMDYyYzZjZDRkZWEwYnAtMSwKLSAgICAweDEuMWUyYTE1NjNlMDY4ZXA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzAKLSAgICAtMHgxLjJjZWZiMTk2YmEyMDc3ZmZmZmZkNGJkNjUwNzIyYmZicC0zLAotICAgIC0weDEuMmUwN2E5MTMxNGRwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMQotICAgIDB4MS4yY2VmYjE5NmJhMjA3N2ZmZmZmZDRiZDY1MDcyMmJmYnAtMywKLSAgICAweDEuMmUwN2E5MTMxNGRwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMgotICAgIDB4MS5iODBmNDg5ZDNlZGY0ODM1ZGU3ZGVlZWI1YmIzOGFkOXAtMiwKLSAgICAtMHgxLjNiY2VjMjcwNDQ0ZTJwMwotICB9LAotICB7IC8vIEVudHJ5IDMzCi0gICAgLTB4MS5iODBmNDg5ZDNlZGY0ODM1ZGU3ZGVlZWI1YmIzOGFkOXAtMiwKLSAgICAweDEuM2JjZWMyNzA0NDRlMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQKLSAgICAtMHgxLjRmZmZmZmZmZmZhMzg4MDAwMDAwMDRkZDIyY2NjY2NjcC0yMCwKLSAgICAtMHgxLjUwMDAwMDAwMDAwNDBwLTIwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUKLSAgICAweDEuNGZmZmZmZmZmZmEzODgwMDAwMDAwNGRkMjJjY2NjY2NwLTIwLAotICAgIDB4MS41MDAwMDAwMDAwMDQwcC0yMAotICB9LAotICB7IC8vIEVudHJ5IDM2Ci0gICAgLTB4MS5kMjlkYTViNDRmNTFiN2ZjMDE5ZjE4M2UxZDNiZDUxMXAtMiwKLSAgICAtMHgxLjU1OTAwMWE0MmQ5MGNwMQotICB9LAotICB7IC8vIEVudHJ5IDM3Ci0gICAgMHgxLmQyOWRhNWI0NGY1MWI3ZmMwMTlmMTgzZTFkM2JkNTExcC0yLAotICAgIDB4MS41NTkwMDFhNDJkOTBjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOAotICAgIC0weDEuZjg1ZjUyNjE0N2Y3ODdmZmZmZjE1MjQxZTcxOTczNGJwLTEsCi0gICAgLTB4MS41OTdiZjNlOTc3NmI3cDk5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzkKLSAgICAweDEuZjg1ZjUyNjE0N2Y3ODdmZmZmZjE1MjQxZTcxOTczNGJwLTEsCi0gICAgMHgxLjU5N2JmM2U5Nzc2YjdwOTkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MAotICAgIC0weDEuNmQ2MWI1OGM5OWM0MmYxMzk2YWY0YTQyMTQ4ZjczYzZwLTU5LAotICAgIC0weDEuNmM2Y2JjNDVkYzhkZXA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDEKLSAgICAweDEuNmQ2MWI1OGM5OWM0MmYxMzk2YWY0YTQyMTQ4ZjczYzZwLTU5LAotICAgIDB4MS42YzZjYmM0NWRjOGRlcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MgotICAgIDB4MS5lNWMzYzA4YTI1OGE3N2YxZDEyZWZhOGMzMDE2NjcwOXAtMSwKLSAgICAtMHgxLjczZDhkMTczZjkwZDBwNAotICB9LAotICB7IC8vIEVudHJ5IDQzCi0gICAgLTB4MS5lNWMzYzA4YTI1OGE3N2YxZDEyZWZhOGMzMDE2NjcwOXAtMSwKLSAgICAweDEuNzNkOGQxNzNmOTBkMHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDQKLSAgICAweDEuZmViMzY4MDZjYTVmYjdlYTQ0MjExOWFmNDFiZTBmNGZwLTEsCi0gICAgLTB4MS44YzIwMmQzYTMxODAycDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NQotICAgIC0weDEuZmViMzY4MDZjYTVmYjdlYTQ0MjExOWFmNDFiZTBmNGZwLTEsCi0gICAgMHgxLjhjMjAyZDNhMzE4MDJwNgotICB9LAotICB7IC8vIEVudHJ5IDQ2Ci0gICAgLTB4MS43YzZjN2IwMWI5OGQ5NDdjZDhhZGQ1ZTVkMWFlMTFjYXAtMSwKLSAgICAtMHgxLmFjZDUzOGIxYTZkNWRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NwotICAgIDB4MS43YzZjN2IwMWI5OGQ5NDdjZDhhZGQ1ZTVkMWFlMTFjYXAtMSwKLSAgICAweDEuYWNkNTM4YjFhNmQ1ZHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ4Ci0gICAgLTB4MS4xOTFiZTIwNTlkY2I1N2ZlZDg2ZGQyY2M2MmViMWE5ZnAtMSwKLSAgICAtMHgxLmI3NTI1YWM5N2UwZDJwMgotICB9LAotICB7IC8vIEVudHJ5IDQ5Ci0gICAgMHgxLjE5MWJlMjA1OWRjYjU3ZmVkODZkZDJjYzYyZWIxYTlmcC0xLAotICAgIDB4MS5iNzUyNWFjOTdlMGQycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MAotICAgIC0weDEuZjgzMDU5OTNhMjEyYzdmZmZmZmMxNWMyYWZhNWU1N2VwLTEsCi0gICAgLTB4MS5iZWU1ZmE4YTg0YjAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MQotICAgIDB4MS5mODMwNTk5M2EyMTJjN2ZmZmZmYzE1YzJhZmE1ZTU3ZXAtMSwKLSAgICAweDEuYmVlNWZhOGE4NGIwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIKLSAgICAweDEuZmYzYjEzNTMwZmQ3MGU3MmI3N2Y3YzY3MjFkYTExMzFwLTEsCi0gICAgLTB4MS5jMzkzOTc5ZmU1OTIxcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MwotICAgIC0weDEuZmYzYjEzNTMwZmQ3MGU3MmI3N2Y3YzY3MjFkYTExMzFwLTEsCi0gICAgMHgxLmMzOTM5NzlmZTU5MjFwOQotICB9LAotICB7IC8vIEVudHJ5IDU0Ci0gICAgLTB4MS5mMTE5ZGE4MWE0ZGE1N2ZmZDhiY2M1YTEyNDdmNTU5MHAtMSwKLSAgICAtMHgxLmM0OGZmYzcyNTYzYzhwMTgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NQotICAgIDB4MS5mMTE5ZGE4MWE0ZGE1N2ZmZDhiY2M1YTEyNDdmNTU5MHAtMSwKLSAgICAweDEuYzQ4ZmZjNzI1NjNjOHAxOAotICB9LAotICB7IC8vIEVudHJ5IDU2Ci0gICAgLTB4MS5mZDczYjgxZTA0Y2NjN2U5ZDc2NGVjYThiYjA4NTEwOXAtMSwKLSAgICAtMHgxLmM3OTU0OGJjMzE4NTZwMwotICB9LAotICB7IC8vIEVudHJ5IDU3Ci0gICAgMHgxLmZkNzNiODFlMDRjY2M3ZTlkNzY0ZWNhOGJiMDg1MTA5cC0xLAotICAgIDB4MS5jNzk1NDhiYzMxODU2cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OAotICAgIC0weDEuYzc4ODVhZWYzM2E5NGZmYzVhZTA2YmU5NDQ0ZWZhZDVwLTMsCi0gICAgLTB4MS5jYjZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OQotICAgIDB4MS5jNzg4NWFlZjMzYTk0ZmZjNWFlMDZiZTk0NDRlZmFkNXAtMywKLSAgICAweDEuY2I2cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAKLSAgICAtMHgxLmU2NDk0OTExZWVkZDA4ZDE2NTBhNGI1MTM2YzNlNmQ2cC03LAotICAgIC0weDEuZTY0ZGRhZjdiZDcyZnAtNwotICB9LAotICB7IC8vIEVudHJ5IDYxCi0gICAgMHgxLmU2NDk0OTExZWVkZDA4ZDE2NTBhNGI1MTM2YzNlNmQ2cC03LAotICAgIDB4MS5lNjRkZGFmN2JkNzJmcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjIKLSAgICAweDEuZTE4MGVlZjViMWM4ODdmZmY1ODU1OTQ5NDliNDZlNmNwLTEsCi0gICAgLTB4MS5lY2RkMGZiZjA3OTQycDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MwotICAgIC0weDEuZTE4MGVlZjViMWM4ODdmZmY1ODU1OTQ5NDliNDZlNmNwLTEsCi0gICAgMHgxLmVjZGQwZmJmMDc5NDJwNQotICB9LAotICB7IC8vIEVudHJ5IDY0Ci0gICAgLTB4MS5mZDk4ZDIwYzFiZTQzODAwMDAwMDFlZTUxNTYyZDdhOHAtMSwKLSAgICAtMHgxLmYwNzNhMjMyOTIzMzdwMgotICB9LAotICB7IC8vIEVudHJ5IDY1Ci0gICAgMHgxLmZkOThkMjBjMWJlNDM4MDAwMDAwMWVlNTE1NjJkN2E4cC0xLAotICAgIDB4MS5mMDczYTIzMjkyMzM3cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NgotICAgIC0weDEuNzI2OGMxMTIyOTdjODdkMTc2MzNiYWI3MjJmMzFhM2ZwLTUsCi0gICAgLTB4MS5mNWU0YzQxMGY0ZWY4cDE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjcKLSAgICAweDEuNzI2OGMxMTIyOTdjODdkMTc2MzNiYWI3MjJmMzFhM2ZwLTUsCi0gICAgMHgxLmY1ZTRjNDEwZjRlZjhwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OAotICAgIDB4MS40MjA3OTYxNDYwNzBlNjI4YzE5ZDM4ZDFlOTBkZjIyOHAtMTgsCi0gICAgLTB4MS5mODAwMDAwMDAwMnA5NQotICB9LAotICB7IC8vIEVudHJ5IDY5Ci0gICAgLTB4MS40MjA3OTYxNDYwNzBlNjI4YzE5ZDM4ZDFlOTBkZjIyOHAtMTgsCi0gICAgMHgxLmY4MDAwMDAwMDAycDk1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzAKLSAgICAtMHgxLmU0ZjZkYzQ5OWQ5Y2M4MDM1NjA3ZmEzZDc2ZjlmNGM1cC0yLAotICAgIC0weDEuZjkzNjVkNzk1NDZlMXAtMgotICB9LAotICB7IC8vIEVudHJ5IDcxCi0gICAgMHgxLmU0ZjZkYzQ5OWQ5Y2M4MDM1NjA3ZmEzZDc2ZjlmNGM1cC0yLAotICAgIDB4MS5mOTM2NWQ3OTU0NmUxcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIKLSAgICAweDEuYjJlZjk5YjE0MGQ2NTA0NjhhZWQ4MmZlMGQ0NDJhZGFwLTE0LAotICAgIC0weDEuZmZmZmZmZmZmZmU3ZXAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMKLSAgICAtMHgxLmIyZWY5OWIxNDBkNjUwNDY4YWVkODJmZTBkNDQyYWRhcC0xNCwKLSAgICAweDEuZmZmZmZmZmZmZmU3ZXAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQKLSAgICAweDEuZGIwZmZjM2VjYzZlM2I4ZTM3MzU3Y2EwMDJkNTYyNWJwLTEsCi0gICAgMHgxLjBwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NQotICAgIC0weDEuZGIwZmZjM2VjYzZlM2I4ZTM3MzU3Y2EwMDJkNTYyNWJwLTEsCi0gICAgLTB4MS4wcDE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzYKLSAgICAtMHgxLmU5OGY4NzA5OGI2MjY5OWFkMTZlMDI1OWIwZTg1YjI0cC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDEzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzcKLSAgICAweDEuZTk4Zjg3MDk4YjYyNjk5YWQxNmUwMjU5YjBlODViMjRwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgKLSAgICAweDEuMDUzYzM1MDY4ZTEwZDQ1ZWU1MGYyZDFkZGNhYmNmM2RwLTQsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwNTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OQotICAgIC0weDEuMDUzYzM1MDY4ZTEwZDQ1ZWU1MGYyZDFkZGNhYmNmM2RwLTQsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDUyCi0gIH0sCi0gIHsgLy8gRW50cnkgODAKLSAgICAweDEuNzJkNDIxYjY4ODRlNTAwYmJkM2E5ZWZjMGYwY2VkOTJwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMjI4Ci0gIH0sCi0gIHsgLy8gRW50cnkgODEKLSAgICAtMHgxLjcyZDQyMWI2ODg0ZTUwMGJiZDNhOWVmYzBmMGNlZDkycC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyMjgKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MgotICAgIDB4MS43N2ZiYTk4N2M1NjUzM2E2NjVlODhlNWE1OTJjYTEwY3AtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXA0OTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MwotICAgIC0weDEuNzdmYmE5ODdjNTY1MzNhNjY1ZTg4ZTVhNTkyY2ExMGNwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDQ5MQotICB9LAotICB7IC8vIEVudHJ5IDg0Ci0gICAgLTB4MS43MjNiMjYyNTMzMWFmMmU3OWE5ZjA3MTQ1YTFlNTczMXAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwM3AyMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NQotICAgIDB4MS43MjNiMjYyNTMzMWFmMmU3OWE5ZjA3MTQ1YTFlNTczMXAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDNwMjE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgODYKLSAgICAweDEuYWVkNTQ4ZjA5MGNmNDdmZTdlMzIxMDNhYjE0MGNhZjhwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDZwMAotICB9LAotICB7IC8vIEVudHJ5IDg3Ci0gICAgLTB4MS5hZWQ1NDhmMDkwY2Y0N2ZlN2UzMjEwM2FiMTQwY2FmOHAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDZwMAotICB9LAotICB7IC8vIEVudHJ5IDg4Ci0gICAgLTB4MS5mZjk4MzIwOGM3ZGM5NzgwNzkxNzRiNDYxYjM4MDlmMHAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwN3A4Ci0gIH0sCi0gIHsgLy8gRW50cnkgODkKLSAgICAweDEuZmY5ODMyMDhjN2RjOTc4MDc5MTc0YjQ2MWIzODA5ZjBwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDA3cDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MAotICAgIDB4MS5mZmVmMjlkYzM4NDUyZmZlZjRhNzc5YTFmODY3MDdkYXAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwN3AyNzUKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MQotICAgIC0weDEuZmZlZjI5ZGMzODQ1MmZmZWY0YTc3OWExZjg2NzA3ZGFwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDA3cDI3NQotICB9LAotICB7IC8vIEVudHJ5IDkyCi0gICAgLTB4MS5mYTg4YzM3NTcyM2MwZDdlYTFmMmQwOGViYjJmOTQwN3AtOCwKLSAgICAweDEuMDAwMDAwMDAwMDAwN3A0NDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MwotICAgIDB4MS5mYTg4YzM3NTcyM2MwZDdlYTFmMmQwOGViYjJmOTQwN3AtOCwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDdwNDQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQKLSAgICAweDEuZmZmNTMyMmM5NGVhZTFiMGI1MTA4NmMwOGZhYTU4NWNwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMTFwNjQ0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTUKLSAgICAtMHgxLmZmZjUzMjJjOTRlYWUxYjBiNTEwODZjMDhmYWE1ODVjcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAxMXA2NDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NgotICAgIC0weDEuYTczNjMwYWY4ZjE1YjgwMDAwNTRkZGQ5NTBiYmExMDdwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMWZwMTY0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTcKLSAgICAweDEuYTczNjMwYWY4ZjE1YjgwMDAwNTRkZGQ5NTBiYmExMDdwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDFmcDE2NAotICB9LAotICB7IC8vIEVudHJ5IDk4Ci0gICAgMHgxLjFjNTQ4ZjkyNDllNDQ3NDk4ODY0NmI4Njg5NGU5NTgxcC0yLAotICAgIDB4MS4wMDAwMDAwMDAwMDM4cDM4MAotICB9LAotICB7IC8vIEVudHJ5IDk5Ci0gICAgLTB4MS4xYzU0OGY5MjQ5ZTQ0NzQ5ODg2NDZiODY4OTRlOTU4MXAtMiwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMzhwMzgwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwCi0gICAgMHgxLmNhOTY1YmQyYzRkZmVlNDc3OWNhOGM3OTc4MDYyOTJkcC0zLAotICAgIDB4MS4wMDAwMDAwMDAwMTE4cDM4MAotICB9LAotICB7IC8vIEVudHJ5IDEwMQotICAgIC0weDEuY2E5NjViZDJjNGRmZWU0Nzc5Y2E4Yzc5NzgwNjI5MmRwLTMsCi0gICAgLTB4MS4wMDAwMDAwMDAwMTE4cDM4MAotICB9LAotICB7IC8vIEVudHJ5IDEwMgotICAgIC0weDEuODM3YjlkZGRjMjRjZjJmNzI5YTM4MTQ3Nzk1YjE4ZDJwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAxMmNwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMwotICAgIDB4MS44MzdiOWRkZGMyNGNmMmY3MjlhMzgxNDc3OTViMThkMnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAxMmNwMgotICB9LAotICB7IC8vIEVudHJ5IDEwNAotICAgIDB4MS5kODJjMTc4NGMzZWNiZmVmYjAyZDdkNmI1ODVmNzNjNHAtMiwKLSAgICAweDEuMDAwMDAwMDAwMDFmOHA3MDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUKLSAgICAtMHgxLmQ4MmMxNzg0YzNlY2JmZWZiMDJkN2Q2YjU4NWY3M2M0cC0yLAotICAgIC0weDEuMDAwMDAwMDAwMDFmOHA3MDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYKLSAgICAweDEuZmZmZWFhYWFlZjJlZTdlZTg3NmY5MGI3MGI1MTI0NzVwLTgsCi0gICAgMHgxLjAwMDAwMDAwMDAycC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA3Ci0gICAgLTB4MS5mZmZlYWFhYWVmMmVlN2VlODc2ZjkwYjcwYjUxMjQ3NXAtOCwKLSAgICAtMHgxLjAwMDAwMDAwMDAycC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA4Ci0gICAgLTB4MS4wODcxYmRkZDkwZmM1ODM0MDM0ZWUzZjZmODZiNDNhM3AtMSwKLSAgICAweDEuMDAwMDAwMDAwMDJwNDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDkKLSAgICAweDEuMDg3MWJkZGQ5MGZjNTgzNDAzNGVlM2Y2Zjg2YjQzYTNwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMnA0MAotICB9LAotICB7IC8vIEVudHJ5IDExMAotICAgIDB4MS5mZmZlYWFhYWVmMmYwN2VlNDc2ZmE2MGM1ZGJlNDg4NnAtOCwKLSAgICAweDEuMDAwMDAwMDAwMDIwMXAtNwotICB9LAotICB7IC8vIEVudHJ5IDExMQotICAgIC0weDEuZmZmZWFhYWFlZjJmMDdlZTQ3NmZhNjBjNWRiZTQ4ODZwLTgsCi0gICAgLTB4MS4wMDAwMDAwMDAwMjAxcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEyCi0gICAgMHgxLmZmZmVhYWFhZWYzMzA3ZTY0NzcyNTBiNmFiNTI0YWI3cC04LAotICAgIDB4MS4wMDAwMDAwMDAwMjIxcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEzCi0gICAgLTB4MS5mZmZlYWFhYWVmMzMwN2U2NDc3MjUwYjZhYjUyNGFiN3AtOCwKLSAgICAtMHgxLjAwMDAwMDAwMDAyMjFwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTQKLSAgICAweDEuZmZmZWFhYWFlZjM2MjdlMDA3NzQ2NjBiYjdkN2E4N2NwLTgsCi0gICAgMHgxLjAwMDAwMDAwMDAyM2FwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTUKLSAgICAtMHgxLmZmZmVhYWFhZWYzNjI3ZTAwNzc0NjYwYmI3ZDdhODdjcC04LAotICAgIC0weDEuMDAwMDAwMDAwMDIzYXAtNwotICB9LAotICB7IC8vIEVudHJ5IDExNgotICAgIDB4MS5lMGM2ZWRmYTkzNjAxNTk1MzRkZWY3MTM5MjVmMTI2ZnAtOSwKLSAgICAweDEuMDAwMDAwMDAwNDBwNDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTcKLSAgICAtMHgxLmUwYzZlZGZhOTM2MDE1OTUzNGRlZjcxMzkyNWYxMjZmcC05LAotICAgIC0weDEuMDAwMDAwMDAwNDBwNDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTgKLSAgICAweDEuZWExZjYxODM1NmRiMGQzYWI2NmQwZWY2NDkzYmM5M2RwLTUsCi0gICAgMHgxLjAwMDAwMDBjMHA0MAotICB9LAotICB7IC8vIEVudHJ5IDExOQotICAgIC0weDEuZWExZjYxODM1NmRiMGQzYWI2NmQwZWY2NDkzYmM5M2RwLTUsCi0gICAgLTB4MS4wMDAwMDAwYzBwNDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjAKLSAgICAweDEuZmFhZWVkNzU4NzU0MWZmZmZmOTkyMmJhNjY5MGI4YmFwLTMsCi0gICAgMHgxLjAwMDAwMDEzYzg2ZjRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjEKLSAgICAtMHgxLmZhYWVlZDc1ODc1NDFmZmZmZjk5MjJiYTY2OTBiOGJhcC0zLAotICAgIC0weDEuMDAwMDAwMTNjODZmNHAtMgotICB9LAotICB7IC8vIEVudHJ5IDEyMgotICAgIDB4MS41NDBiYzc3ODU2ODBhYzJjYTE2OWZmOWUzY2M0YjE1MnAtMSwKLSAgICAweDEuMDAxcDEzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIzCi0gICAgLTB4MS41NDBiYzc3ODU2ODBhYzJjYTE2OWZmOWUzY2M0YjE1MnAtMSwKLSAgICAtMHgxLjAwMXAxMwotICB9LAotICB7IC8vIEVudHJ5IDEyNAotICAgIC0weDEuMzdhN2NiOTA3YTJlNTAwMTA2YjA0ZDllM2YwYjFiOGNwLTEsCi0gICAgMHgxLjAwM3A2OTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjUKLSAgICAweDEuMzdhN2NiOTA3YTJlNTAwMTA2YjA0ZDllM2YwYjFiOGNwLTEsCi0gICAgLTB4MS4wMDNwNjk5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI2Ci0gICAgLTB4MS4yOWU1ODQ1ZmM1NGI1ODAxNDUyNzNmMmNhZmU3M2FiNXAtMSwKLSAgICAweDEuMDAzODBwNDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjcKLSAgICAweDEuMjllNTg0NWZjNTRiNTgwMTQ1MjczZjJjYWZlNzNhYjVwLTEsCi0gICAgLTB4MS4wMDM4MHA0MAotICB9LAotICB7IC8vIEVudHJ5IDEyOAotICAgIDB4MS5mZmU1Y2E0NjU2NDkxN2ExZTgxMmFlZGQ0OGZlMTA3Y3AtMSwKLSAgICAweDEuMDA3cDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI5Ci0gICAgLTB4MS5mZmU1Y2E0NjU2NDkxN2ExZTgxMmFlZGQ0OGZlMTA3Y3AtMSwKLSAgICAtMHgxLjAwN3AxMAotICB9LAotICB7IC8vIEVudHJ5IDEzMAotICAgIDB4MS5lYTRkZjgyZGIwMTRhYzBjOTEzNDY1ZGE1N2I2YTY0M3AtMSwKLSAgICAweDEuMDA3cDI1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMxCi0gICAgLTB4MS5lYTRkZjgyZGIwMTRhYzBjOTEzNDY1ZGE1N2I2YTY0M3AtMSwKLSAgICAtMHgxLjAwN3AyNQotICB9LAotICB7IC8vIEVudHJ5IDEzMgotICAgIDB4MS5mZTc1N2FlZjFjODBjN2VjMTYwMDNkM2FlNWYwY2UxNXAtMSwKLSAgICAweDEuMDA3cDQxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMzCi0gICAgLTB4MS5mZTc1N2FlZjFjODBjN2VjMTYwMDNkM2FlNWYwY2UxNXAtMSwKLSAgICAtMHgxLjAwN3A0MQotICB9LAotICB7IC8vIEVudHJ5IDEzNAotICAgIDB4MS5lOWI3MTgwNWVjMDY4NWQ0ODRmNjI3MGY2NDExZGMzNnAtNywKLSAgICAweDEuMDBjcDQxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM1Ci0gICAgLTB4MS5lOWI3MTgwNWVjMDY4NWQ0ODRmNjI3MGY2NDExZGMzNnAtNywKLSAgICAtMHgxLjAwY3A0MQotICB9LAotICB7IC8vIEVudHJ5IDEzNgotICAgIDB4MS5iMGI2ZDBhNTQwNTgyODAwMDhlODA0ODhmOGFiMWJiN3AtMSwKLSAgICAweDEuMDFjMDAwMDAwMDFwMAotICB9LAotICB7IC8vIEVudHJ5IDEzNwotICAgIC0weDEuYjBiNmQwYTU0MDU4MjgwMDA4ZTgwNDg4ZjhhYjFiYjdwLTEsCi0gICAgLTB4MS4wMWMwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM4Ci0gICAgMHgxLmZlZjAwOTI2MjcwMTI4MGI5MmFhZjkyNWRkYTYzYmJhcC0zLAotICAgIDB4MS4wMjMyMmU0NmRhOTE5cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM5Ci0gICAgLTB4MS5mZWYwMDkyNjI3MDEyODBiOTJhYWY5MjVkZGE2M2JiYXAtMywKLSAgICAtMHgxLjAyMzIyZTQ2ZGE5MTlwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDAKLSAgICAweDEuZmZjOTAwNTk4MDRhMDgyZDliM2Y0NmI3N2VlODE5MzJwLTMsCi0gICAgMHgxLjAyYTIzNjQ3OHAtMgotICB9LAotICB7IC8vIEVudHJ5IDE0MQotICAgIC0weDEuZmZjOTAwNTk4MDRhMDgyZDliM2Y0NmI3N2VlODE5MzJwLTMsCi0gICAgLTB4MS4wMmEyMzY0NzhwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDIKLSAgICAweDEuZmZkMTBhNmI1NDI5ZTgyOGJlZjRkOTQxM2ViOWY2YzBwLTMsCi0gICAgMHgxLjAyYTY1ZDA4Y2E1ZTVwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDMKLSAgICAtMHgxLmZmZDEwYTZiNTQyOWU4MjhiZWY0ZDk0MTNlYjlmNmMwcC0zLAotICAgIC0weDEuMDJhNjVkMDhjYTVlNXAtMgotICB9LAotICB7IC8vIEVudHJ5IDE0NAotICAgIDB4MS5mZmQxMGFiMzAyYTNmN2UwYTA0OGRiNTg2MWU3YjIwYnAtMywKLSAgICAweDEuMDJhNjVkMmRjZTQ5YXAtMgotICB9LAotICB7IC8vIEVudHJ5IDE0NQotICAgIC0weDEuZmZkMTBhYjMwMmEzZjdlMGEwNDhkYjU4NjFlN2IyMGJwLTMsCi0gICAgLTB4MS4wMmE2NWQyZGNlNDlhcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ2Ci0gICAgMHgxLmZmZTBiMTc2NGNhNGM3ZDIzMjk0MzM4MjhjZGM5MDFjcC0zLAotICAgIDB4MS4wMmFlNzIzOGFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDcKLSAgICAtMHgxLmZmZTBiMTc2NGNhNGM3ZDIzMjk0MzM4MjhjZGM5MDFjcC0zLAotICAgIC0weDEuMDJhZTcyMzhhcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ4Ci0gICAgLTB4MS5mNjhmMGUyNmMwZjZhZDQ0ZjcxODRkNTZiZTk1ZTFhZXAtMywKLSAgICAweDEuMDUwMWQyMjIyMWRhY3A2MjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDkKLSAgICAweDEuZjY4ZjBlMjZjMGY2YWQ0NGY3MTg0ZDU2YmU5NWUxYWVwLTMsCi0gICAgLTB4MS4wNTAxZDIyMjIxZGFjcDYyMQotICB9LAotICB7IC8vIEVudHJ5IDE1MAotICAgIDB4MS5iNjNjNDFmMDllYjc0N2YzMGMxYWY1ZjI1NDM0MGE0Y3AtMSwKLSAgICAweDEuMDZmZmZmZmZmZmZmOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUxCi0gICAgLTB4MS5iNjNjNDFmMDllYjc0N2YzMGMxYWY1ZjI1NDM0MGE0Y3AtMSwKLSAgICAtMHgxLjA2ZmZmZmZmZmZmZjhwMAotICB9LAotICB7IC8vIEVudHJ5IDE1MgotICAgIC0weDEuZmZkYzE3M2FkYWJiMWFmZDU4ZmNiNTY0M2NkODY1NjJwLTEsCi0gICAgMHgxLjA3MDIzZDNkNDQyMTVwMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTMKLSAgICAweDEuZmZkYzE3M2FkYWJiMWFmZDU4ZmNiNTY0M2NkODY1NjJwLTEsCi0gICAgLTB4MS4wNzAyM2QzZDQ0MjE1cDEyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU0Ci0gICAgMHgxLjA4ODllMTFiZWYxMzU3YTg4NzQyYWIzYTdmMTgwNzg2cC01LAotICAgIDB4MS4wODk1YTdhM2U4YWU2cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTU1Ci0gICAgLTB4MS4wODg5ZTExYmVmMTM1N2E4ODc0MmFiM2E3ZjE4MDc4NnAtNSwKLSAgICAtMHgxLjA4OTVhN2EzZThhZTZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTYKLSAgICAweDEuMDhjYTA3N2M3NjQ0NTdhYTZkOTY4YWZjMWQxYjE3YjNwLTUsCi0gICAgMHgxLjA4ZDVkNjk4NDA2MDFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTcKLSAgICAtMHgxLjA4Y2EwNzdjNzY0NDU3YWE2ZDk2OGFmYzFkMWIxN2IzcC01LAotICAgIC0weDEuMDhkNWQ2OTg0MDYwMXAtNQotICB9LAotICB7IC8vIEVudHJ5IDE1OAotICAgIC0weDEuZmY3ZmJlNTE4MDIzZTkwYjNmMjhmODFhYjkzZTg3MmZwLTEsCi0gICAgMHgxLjBlMHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTU5Ci0gICAgMHgxLmZmN2ZiZTUxODAyM2U5MGIzZjI4ZjgxYWI5M2U4NzJmcC0xLAotICAgIC0weDEuMGUwcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjAKLSAgICAtMHgxLmZkNmM2OGI4NzdhZmU4MDNhYWFiMmJkMzAxMjRlY2RmcC0xLAotICAgIDB4MS4xMDdiYTQ5YzM0NmU0cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjEKLSAgICAweDEuZmQ2YzY4Yjg3N2FmZTgwM2FhYWIyYmQzMDEyNGVjZGZwLTEsCi0gICAgLTB4MS4xMDdiYTQ5YzM0NmU0cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjIKLSAgICAtMHgxLmEyYmE2YmM3MGJjZTQ4MDFlYTRkMWM4NWYxMTYxOTNkcC0xLAotICAgIDB4MS4xNDkxNTQ0Nzc0NDQwcDc0NQotICB9LAotICB7IC8vIEVudHJ5IDE2MwotICAgIDB4MS5hMmJhNmJjNzBiY2U0ODAxZWE0ZDFjODVmMTE2MTkzZHAtMSwKLSAgICAtMHgxLjE0OTE1NDQ3NzQ0NDBwNzQ1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY0Ci0gICAgMHgxLjE2NTYwOTc5MGYyMzQ4NGE0NzAxYjQ0MzlkNGZlNTFmcC01LAotICAgIDB4MS4xNjYzYzBlNTE4MTgwcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY1Ci0gICAgLTB4MS4xNjU2MDk3OTBmMjM0ODRhNDcwMWI0NDM5ZDRmZTUxZnAtNSwKLSAgICAtMHgxLjE2NjNjMGU1MTgxODBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjYKLSAgICAtMHgxLmZjMDUyM2ZmOTRlNDRjMDE3MzFlNDU5NjMwMzRjYmE4cC0xLAotICAgIDB4MS4xNzQ1ZDE3NDVkMTc2cDIzOAotICB9LAotICB7IC8vIEVudHJ5IDE2NwotICAgIDB4MS5mYzA1MjNmZjk0ZTQ0YzAxNzMxZTQ1OTYzMDM0Y2JhOHAtMSwKLSAgICAtMHgxLjE3NDVkMTc0NWQxNzZwMjM4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY4Ci0gICAgMHgxLmYzNGE3MjljNTg0YmNjOTY2NjQwMmNmZGI0ODgzOWZmcC0xLAotICAgIDB4MS4xNzQ3MmE0MDhhM2UwcDk3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY5Ci0gICAgLTB4MS5mMzRhNzI5YzU4NGJjYzk2NjY0MDJjZmRiNDg4MzlmZnAtMSwKLSAgICAtMHgxLjE3NDcyYTQwOGEzZTBwOTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzAKLSAgICAweDEuMTc3ZmFlMTY5ZmRmMDg1OGIxZDRlN2JhZDY5OTgxZGNwLTUsCi0gICAgMHgxLjE3OGQ5MWI2Yjk5MmRwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzEKLSAgICAtMHgxLjE3N2ZhZTE2OWZkZjA4NThiMWQ0ZTdiYWQ2OTk4MWRjcC01LAotICAgIC0weDEuMTc4ZDkxYjZiOTkyZHAtNQotICB9LAotICB7IC8vIEVudHJ5IDE3MgotICAgIDB4MS4xNzdmYWUxNmExMjBlODU4NDNkMWRmZWYzNjcyNmNlY3AtNSwKLSAgICAweDEuMTc4ZDkxYjZiYWQ0ZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDE3MwotICAgIC0weDEuMTc3ZmFlMTZhMTIwZTg1ODQzZDFkZmVmMzY3MjZjZWNwLTUsCi0gICAgLTB4MS4xNzhkOTFiNmJhZDRlcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTc0Ci0gICAgMHgxLjE3N2ZhZTE2YTFmNzg4NTY2MzdjYzlkYThhYWY2NDM5cC01LAotICAgIDB4MS4xNzhkOTFiNmJiYWJhcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTc1Ci0gICAgLTB4MS4xNzdmYWUxNmExZjc4ODU2NjM3Y2M5ZGE4YWFmNjQzOXAtNSwKLSAgICAtMHgxLjE3OGQ5MWI2YmJhYmFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzYKLSAgICAweDEuMTc3ZmFlMTZhNDBmZTg1OGRhMWRkY2I1ODNiYjlmM2JwLTUsCi0gICAgMHgxLjE3OGQ5MWI2YmRjNDVwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzcKLSAgICAtMHgxLjE3N2ZhZTE2YTQwZmU4NThkYTFkZGNiNTgzYmI5ZjNicC01LAotICAgIC0weDEuMTc4ZDkxYjZiZGM0NXAtNQotICB9LAotICB7IC8vIEVudHJ5IDE3OAotICAgIDB4MS4yOTdjNzY4ZjI0MTMwODAwMDJlZGNiOWE5MDU5NDZhZnAtMSwKLSAgICAweDEuMTk3NTJkYmVlNWY2YXA5MzMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzkKLSAgICAtMHgxLjI5N2M3NjhmMjQxMzA4MDAwMmVkY2I5YTkwNTk0NmFmcC0xLAotICAgIC0weDEuMTk3NTJkYmVlNWY2YXA5MzMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODAKLSAgICAweDEuYjgyNmRmNWNhZmFmYTgyNDc3OWJiODA4ZDY0ZGU2ZmJwLTIsCi0gICAgMHgxLjFiMzAwOWNmZTRkYmNwOAotICB9LAotICB7IC8vIEVudHJ5IDE4MQotICAgIC0weDEuYjgyNmRmNWNhZmFmYTgyNDc3OWJiODA4ZDY0ZGU2ZmJwLTIsCi0gICAgLTB4MS4xYjMwMDljZmU0ZGJjcDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODIKLSAgICAweDEuYjdhNTk1NjI1MGI2YTgzODgyMTMzYmJlMTRjODQ3Y2NwLTIsCi0gICAgMHgxLjFmNjQ3NWQ5NWJmMThwMwotICB9LAotICB7IC8vIEVudHJ5IDE4MwotICAgIC0weDEuYjdhNTk1NjI1MGI2YTgzODgyMTMzYmJlMTRjODQ3Y2NwLTIsCi0gICAgLTB4MS4xZjY0NzVkOTViZjE4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODQKLSAgICAweDEuNGRiNjU2NmI2NDU0NzdmZmVhOWZhYWY4YmY0NjNhMWVwLTEsCi0gICAgMHgxLjIyOTE0OGE0NTIyOTFwMTE4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTg1Ci0gICAgLTB4MS40ZGI2NTY2YjY0NTQ3N2ZmZWE5ZmFhZjhiZjQ2M2ExZXAtMSwKLSAgICAtMHgxLjIyOTE0OGE0NTIyOTFwMTE4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTg2Ci0gICAgMHgxLjE2ODZmZWUyYzQ5YTdmZmZiNjhkZjY4MWIyZGE3ZTQ5cC0xLAotICAgIDB4MS4yNjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODcKLSAgICAtMHgxLjE2ODZmZWUyYzQ5YTdmZmZiNjhkZjY4MWIyZGE3ZTQ5cC0xLAotICAgIC0weDEuMjY4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg4Ci0gICAgMHgxLjIyZWIyMWE0NGQ2Mjc4MDAwMDAzMWFlNDNjNDQ4NTExcC0yLAotICAgIDB4MS4yNmZiMzg0NGRkMTkwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg5Ci0gICAgLTB4MS4yMmViMjFhNDRkNjI3ODAwMDAwMzFhZTQzYzQ0ODUxMXAtMiwKLSAgICAtMHgxLjI2ZmIzODQ0ZGQxOTBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTAKLSAgICAweDEuZDRhMjE2ZDg5YjJiMzdmNDBmZjA4NzUzZWQ2MDBlNzRwLTEsCi0gICAgMHgxLjI3ZmZmZmZmZmU2YjBwMAotICB9LAotICB7IC8vIEVudHJ5IDE5MQotICAgIC0weDEuZDRhMjE2ZDg5YjJiMzdmNDBmZjA4NzUzZWQ2MDBlNzRwLTEsCi0gICAgLTB4MS4yN2ZmZmZmZmZlNmIwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTIKLSAgICAtMHgxLjc2YzliMGYzYTIyZjczY2ZkNDQ1M2ZjZjdiMjFlMzU4cC0xLAotICAgIDB4MS4yODRiODQwNDhkNDgxcDIwNAotICB9LAotICB7IC8vIEVudHJ5IDE5MwotICAgIDB4MS43NmM5YjBmM2EyMmY3M2NmZDQ0NTNmY2Y3YjIxZTM1OHAtMSwKLSAgICAtMHgxLjI4NGI4NDA0OGQ0ODFwMjA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTk0Ci0gICAgLTB4MS5mZjAxMjI2Zjk3ZDMyZDZiNWMwZDVlNGEzYTJmNTNjM3AtMSwKLSAgICAweDEuMjk5OWUzMTA5Y2FkNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk1Ci0gICAgMHgxLmZmMDEyMjZmOTdkMzJkNmI1YzBkNWU0YTNhMmY1M2MzcC0xLAotICAgIC0weDEuMjk5OWUzMTA5Y2FkNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk2Ci0gICAgMHgxLjJhOGYxMWU3YWU4MmMwYTM3NDg1NWI1M2IzNjA1ZDNicC01LAotICAgIDB4MS4yYWFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTcKLSAgICAtMHgxLjJhOGYxMWU3YWU4MmMwYTM3NDg1NWI1M2IzNjA1ZDNicC01LAotICAgIC0weDEuMmFhcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTk4Ci0gICAgMHgxLjJiMDNkMWJmNzczZGY3YjY5N2Q4YTk3ZWNjZWZlYzUwcC01LAotICAgIDB4MS4yYjE0ZDNiZTBjMjMwcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTk5Ci0gICAgLTB4MS4yYjAzZDFiZjc3M2RmN2I2OTdkOGE5N2VjY2VmZWM1MHAtNSwKLSAgICAtMHgxLjJiMTRkM2JlMGMyMzBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDAKLSAgICAtMHgxLmZmYjkwZWU2NDE3OTFlNjk5YWE3ZmM3MTM5YmY1OGI0cC0xLAotICAgIDB4MS4yYjdjYjQ0ODQ5OTgxcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDEKLSAgICAweDEuZmZiOTBlZTY0MTc5MWU2OTlhYTdmYzcxMzliZjU4YjRwLTEsCi0gICAgLTB4MS4yYjdjYjQ0ODQ5OTgxcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDIKLSAgICAtMHgxLmZmZmZmZjc5ZTcxYTNkYjIyMTA5YzZiYjg3ZjljMjM3cC0xLAotICAgIDB4MS4yYmVjYzg2ODUyNTgwcDIwMAotICB9LAotICB7IC8vIEVudHJ5IDIwMwotICAgIDB4MS5mZmZmZmY3OWU3MWEzZGIyMjEwOWM2YmI4N2Y5YzIzN3AtMSwKLSAgICAtMHgxLjJiZWNjODY4NTI1ODBwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA0Ci0gICAgLTB4MS5mZmY5ZWRhZjg1Yjc2ZjZjYmIyZjViN2UzODRjYmJjOXAtMSwKLSAgICAweDEuMmNmYTE0Y2UyN2NkNXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA1Ci0gICAgMHgxLmZmZjllZGFmODViNzZmNmNiYjJmNWI3ZTM4NGNiYmM5cC0xLAotICAgIC0weDEuMmNmYTE0Y2UyN2NkNXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA2Ci0gICAgMHgxLjJjYmFhYTRjZWJiNTE3ZmU3YmQxNGYwNjJhZmVjMzkwcC00LAotICAgIDB4MS4yZDBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDcKLSAgICAtMHgxLjJjYmFhYTRjZWJiNTE3ZmU3YmQxNGYwNjJhZmVjMzkwcC00LAotICAgIC0weDEuMmQwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjA4Ci0gICAgLTB4MS5mZmZmYmMxNzdlMDBmZjg5Y2JiNGY0OWEwNjQzZGE3OHAtMSwKLSAgICAweDEuMmQ3NmQxODcyMWJlOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA5Ci0gICAgMHgxLmZmZmZiYzE3N2UwMGZmODljYmI0ZjQ5YTA2NDNkYTc4cC0xLAotICAgIC0weDEuMmQ3NmQxODcyMWJlOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEwCi0gICAgMHgxLjc0NTg0M2RmYWZlZmQxYmY5NjU2ODk2YThmYjViMGUzcC0xOCwKLSAgICAweDEuMzAyYTQ5NGUwOTA5MHA5NwotICB9LAotICB7IC8vIEVudHJ5IDIxMQotICAgIC0weDEuNzQ1ODQzZGZhZmVmZDFiZjk2NTY4OTZhOGZiNWIwZTNwLTE4LAotICAgIC0weDEuMzAyYTQ5NGUwOTA5MHA5NwotICB9LAotICB7IC8vIEVudHJ5IDIxMgotICAgIDB4MS5mZmNjNTY4ZDQyMzc2NmM5MmU5YzE3NWY5MjEwZjFmNHAtMSwKLSAgICAweDEuMzFjYzczMWNjNzMxY3AxMDAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEzCi0gICAgLTB4MS5mZmNjNTY4ZDQyMzc2NmM5MmU5YzE3NWY5MjEwZjFmNHAtMSwKLSAgICAtMHgxLjMxY2M3MzFjYzczMWNwMTAwMAotICB9LAotICB7IC8vIEVudHJ5IDIxNAotICAgIDB4MS5iNjc2MDc3ZDRmYWY3OTI3ZGExZjg1ODUzOWZhZDFmZnAtMSwKLSAgICAweDEuMzI4NDYzZDRmOGNhNnA0NDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTUKLSAgICAtMHgxLmI2NzYwNzdkNGZhZjc5MjdkYTFmODU4NTM5ZmFkMWZmcC0xLAotICAgIC0weDEuMzI4NDYzZDRmOGNhNnA0NDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTYKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmMzQ3MWQ4ZGMwNzBkNWU2cC0xLAotICAgIDB4MS4zMmNlOTBiMzIxNzFlcDE4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjE3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmMzQ3MWQ4ZGMwNzBkNWU2cC0xLAotICAgIC0weDEuMzJjZTkwYjMyMTcxZXAxOAotICB9LAotICB7IC8vIEVudHJ5IDIxOAotICAgIDB4MS4zNWNiZDMyNDBkMTQ4ODQ1ZDM5ZWJkNTRiMTU1Njc3OXAtNSwKLSAgICAweDEuMzVkZWJkN2YwMjBlY3AtNQotICB9LAotICB7IC8vIEVudHJ5IDIxOQotICAgIC0weDEuMzVjYmQzMjQwZDE0ODg0NWQzOWViZDU0YjE1NTY3NzlwLTUsCi0gICAgLTB4MS4zNWRlYmQ3ZjAyMGVjcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjIwCi0gICAgMHgxLjNiYjIwODY1NTlmYTk4MmU1YzZkYTEwZDhkOWFjOTMxcC03LAotICAgIDB4MS4zYmIzNDg3ODkzNDA1cC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjIxCi0gICAgLTB4MS4zYmIyMDg2NTU5ZmE5ODJlNWM2ZGExMGQ4ZDlhYzkzMXAtNywKLSAgICAtMHgxLjNiYjM0ODc4OTM0MDVwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjIKLSAgICAweDEuM2JiMjA4NjU1OWZhYjgyZGZiMTkyNWVhYzJhYjhiYzFwLTcsCi0gICAgMHgxLjNiYjM0ODc4OTM0MDdwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjMKLSAgICAtMHgxLjNiYjIwODY1NTlmYWI4MmRmYjE5MjVlYWMyYWI4YmMxcC03LAotICAgIC0weDEuM2JiMzQ4Nzg5MzQwN3AtNwotICB9LAotICB7IC8vIEVudHJ5IDIyNAotICAgIDB4MS5kZmYxOTdlZGM1MWQyMzVlNGE0Y2M2ZTM0YmQxZmQxMHAtMTYsCi0gICAgMHgxLjNiYjY4MWQ2NWFhNjBwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjI1Ci0gICAgLTB4MS5kZmYxOTdlZGM1MWQyMzVlNGE0Y2M2ZTM0YmQxZmQxMHAtMTYsCi0gICAgLTB4MS4zYmI2ODFkNjVhYTYwcDEwMAotICB9LAotICB7IC8vIEVudHJ5IDIyNgotICAgIC0weDEuNWQwOGQzZGJiNDFhZjgwMDAwMDUzYmEzMGU5NWU3MDlwLTMsCi0gICAgMHgxLjNmOWFhODYyNjA0MmZwODMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjcKLSAgICAweDEuNWQwOGQzZGJiNDFhZjgwMDAwMDUzYmEzMGU5NWU3MDlwLTMsCi0gICAgLTB4MS4zZjlhYTg2MjYwNDJmcDgzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjI4Ci0gICAgMHgxLmZiNTAzOTgzZjk0YmI3NDlmY2U5Y2NjYTU2YTM1ZWM2cC0zLAotICAgIDB4MS4zZmVwMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjkKLSAgICAtMHgxLmZiNTAzOTgzZjk0YmI3NDlmY2U5Y2NjYTU2YTM1ZWM2cC0zLAotICAgIC0weDEuM2ZlcDE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjMwCi0gICAgLTB4MS5kMzg3NmVhY2M5ZWU2ZWM1YTkzZWExNGUwMzJmOWIwMnAtMSwKLSAgICAweDEuNDI4NTQ3OGYxZTNjOHA1OAotICB9LAotICB7IC8vIEVudHJ5IDIzMQotICAgIDB4MS5kMzg3NmVhY2M5ZWU2ZWM1YTkzZWExNGUwMzJmOWIwMnAtMSwKLSAgICAtMHgxLjQyODU0NzhmMWUzYzhwNTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzIKLSAgICAweDEuNDJiNjZkNTRmNjljMGZhYmUzNzFkNzAzYTFkN2Q3YzlwLTUsCi0gICAgMHgxLjQyY2JjZjQ1YTE2OWVwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzMKLSAgICAtMHgxLjQyYjY2ZDU0ZjY5YzBmYWJlMzcxZDcwM2ExZDdkN2M5cC01LAotICAgIC0weDEuNDJjYmNmNDVhMTY5ZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDIzNAotICAgIDB4MS5iNDVlOWU5NDI3NTUzODAwMDAwMTVlMWRiMGNlMTg4ZHAtMSwKLSAgICAweDEuNDNmZmZmZmZmZmY2YXA1NTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzUKLSAgICAtMHgxLmI0NWU5ZTk0Mjc1NTM4MDAwMDAxNWUxZGIwY2UxODhkcC0xLAotICAgIC0weDEuNDNmZmZmZmZmZmY2YXA1NTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzYKLSAgICAweDEuNDNmZmZmZmZlYTYwMjgwMDAwNmVkNzg2MmIzMjI0YTZwLTE3LAotICAgIDB4MS40NDBwLTE3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM3Ci0gICAgLTB4MS40M2ZmZmZmZmVhNjAyODAwMDA2ZWQ3ODYyYjMyMjRhNnAtMTcsCi0gICAgLTB4MS40NDBwLTE3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM4Ci0gICAgLTB4MS42YTRlOThkMmQ4YjFiN2ZiNDNmZWYxYmM0ZTMyNDViYnAtMSwKLSAgICAweDEuNDc0OGMwOGRjMDk3NnAyMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzkKLSAgICAweDEuNmE0ZTk4ZDJkOGIxYjdmYjQzZmVmMWJjNGUzMjQ1YmJwLTEsCi0gICAgLTB4MS40NzQ4YzA4ZGMwOTc2cDIwMAotICB9LAotICB7IC8vIEVudHJ5IDI0MAotICAgIC0weDEuYjU3Y2E4YWFjZjJhOTM3YTI2OWNjZGZhOGIzOGM4YzFwLTEsCi0gICAgMHgxLjQ3OGZjMDhwNDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDEKLSAgICAweDEuYjU3Y2E4YWFjZjJhOTM3YTI2OWNjZGZhOGIzOGM4YzFwLTEsCi0gICAgLTB4MS40NzhmYzA4cDQzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQyCi0gICAgMHgxLmZmZTM4MDA4ZWY2YjQ5NTZiMjkwMjAyZDQxNGQ1OWMzcC0xLAotICAgIDB4MS40Y2YzNmQxN2M1OTZlcDIwMAotICB9LAotICB7IC8vIEVudHJ5IDI0MwotICAgIC0weDEuZmZlMzgwMDhlZjZiNDk1NmIyOTAyMDJkNDE0ZDU5YzNwLTEsCi0gICAgLTB4MS40Y2YzNmQxN2M1OTZlcDIwMAotICB9LAotICB7IC8vIEVudHJ5IDI0NAotICAgIDB4MS5kNjQ1N2EzZjEyZTZjNTI3YTg1MzQ3MDQwMWQzNWQyZHAtMSwKLSAgICAweDEuNGYwZjMwOHA0ODgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDUKLSAgICAtMHgxLmQ2NDU3YTNmMTJlNmM1MjdhODUzNDcwNDAxZDM1ZDJkcC0xLAotICAgIC0weDEuNGYwZjMwOHA0ODgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDYKLSAgICAweDEuNGZmZmZmZmZmZjlmODgwMDAwMDAwODRmMjJjY2NjY2NwLTIwLAotICAgIDB4MS41cC0yMAotICB9LAotICB7IC8vIEVudHJ5IDI0NwotICAgIC0weDEuNGZmZmZmZmZmZjlmODgwMDAwMDAwODRmMjJjY2NjY2NwLTIwLAotICAgIC0weDEuNXAtMjAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDgKLSAgICAtMHgxLmNiYWQwOTVmNTAzYTE4MDE5YTdiMjcxNzBmNmE0YWNmcC0xLAotICAgIDB4MS41MTQzZTI1YTQ4OGYxcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDkKLSAgICAweDEuY2JhZDA5NWY1MDNhMTgwMTlhN2IyNzE3MGY2YTRhY2ZwLTEsCi0gICAgLTB4MS41MTQzZTI1YTQ4OGYxcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTAKLSAgICAtMHgxLmY5NDJkNjI2MmU4MmRkNjgzNGRlZDhjOTBkMGY4MjEycC01LAotICAgIDB4MS41MWYwZjQ0ZGE0ZGY0cDIwMAotICB9LAotICB7IC8vIEVudHJ5IDI1MQotICAgIDB4MS5mOTQyZDYyNjJlODJkZDY4MzRkZWQ4YzkwZDBmODIxMnAtNSwKLSAgICAtMHgxLjUxZjBmNDRkYTRkZjRwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUyCi0gICAgLTB4MS5mYzQ2NmNjYWVjZTgwNGFhYzE0ZTc5YWFiYTRiNWMxZXAtMywKLSAgICAweDEuNTJhZDZjNWEzNjAyZnAxNgotICB9LAotICB7IC8vIEVudHJ5IDI1MwotICAgIDB4MS5mYzQ2NmNjYWVjZTgwNGFhYzE0ZTc5YWFiYTRiNWMxZXAtMywKLSAgICAtMHgxLjUyYWQ2YzVhMzYwMmZwMTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTQKLSAgICAweDEuZDY5YzNjZjRlZWNkZDliNDM3MjZhMmE3ZmE0MDVjMzFwLTEsCi0gICAgMHgxLjUyZjAwZTBwNzkzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU1Ci0gICAgLTB4MS5kNjljM2NmNGVlY2RkOWI0MzcyNmEyYTdmYTQwNWMzMXAtMSwKLSAgICAtMHgxLjUyZjAwZTBwNzkzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU2Ci0gICAgMHgxLmUxMjAyOTJmM2Q0OTU2NTc5ZjljMzE2NGNkOTRiYWQ2cC0xLAotICAgIDB4MS41NTU1NTU1NTU1NTU2cDIzOQotICB9LAotICB7IC8vIEVudHJ5IDI1NwotICAgIC0weDEuZTEyMDI5MmYzZDQ5NTY1NzlmOWMzMTY0Y2Q5NGJhZDZwLTEsCi0gICAgLTB4MS41NTU1NTU1NTU1NTU2cDIzOQotICB9LAotICB7IC8vIEVudHJ5IDI1OAotICAgIC0weDEuZmQxZDg1YjdlZjAwMzdmYzRiMWQxNzYzODgyMDg1ZjFwLTEsCi0gICAgMHgxLjVhMDAwMDAwOHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjU5Ci0gICAgMHgxLmZkMWQ4NWI3ZWYwMDM3ZmM0YjFkMTc2Mzg4MjA4NWYxcC0xLAotICAgIC0weDEuNWEwMDAwMDA4cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjAKLSAgICAweDEuNWFmZjk2NjRiMDdlMWEyZTBmMjRiMjU3MmRkYmZmNjRwLTYsCi0gICAgMHgxLjViMDYzYWQyZGQwOGZwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjEKLSAgICAtMHgxLjVhZmY5NjY0YjA3ZTFhMmUwZjI0YjI1NzJkZGJmZjY0cC02LAotICAgIC0weDEuNWIwNjNhZDJkZDA4ZnAtNgotICB9LAotICB7IC8vIEVudHJ5IDI2MgotICAgIC0weDEuODNmOGJiYjU5ZjJmOGNkOGViYmQ0NGM0NTllNGM0OTNwLTEsCi0gICAgMHgxLjViMTc5ZDc1ZmEyODVwMgotICB9LAotICB7IC8vIEVudHJ5IDI2MwotICAgIDB4MS44M2Y4YmJiNTlmMmY4Y2Q4ZWJiZDQ0YzQ1OWU0YzQ5M3AtMSwKLSAgICAtMHgxLjViMTc5ZDc1ZmEyODVwMgotICB9LAotICB7IC8vIEVudHJ5IDI2NAotICAgIDB4MS5mYTg2NWIwZDk5NDk2ODM5MGY5NDgwYzljYWY0OWNiMXAtMSwKLSAgICAweDEuNWJiNTk2NzQwMmY5Y3A3OQotICB9LAotICB7IC8vIEVudHJ5IDI2NQotICAgIC0weDEuZmE4NjViMGQ5OTQ5NjgzOTBmOTQ4MGM5Y2FmNDljYjFwLTEsCi0gICAgLTB4MS41YmI1OTY3NDAyZjljcDc5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjY2Ci0gICAgMHgxLmU4YTUyM2ZjZTg4NGQxODliZGI4N2MyMGVkNjE1OTQ0cC0yLAotICAgIDB4MS41YmVhMDEwcDQ2OAotICB9LAotICB7IC8vIEVudHJ5IDI2NwotICAgIC0weDEuZThhNTIzZmNlODg0ZDE4OWJkYjg3YzIwZWQ2MTU5NDRwLTIsCi0gICAgLTB4MS41YmVhMDEwcDQ2OAotICB9LAotICB7IC8vIEVudHJ5IDI2OAotICAgIC0weDEuZmYyYWQ5NDFmMGE0MGVhM2JjMjllNmRkOWMzMzliNjNwLTEsCi0gICAgMHgxLjVmMTlmYmM1MDdhZjZwOQotICB9LAotICB7IC8vIEVudHJ5IDI2OQotICAgIDB4MS5mZjJhZDk0MWYwYTQwZWEzYmMyOWU2ZGQ5YzMzOWI2M3AtMSwKLSAgICAtMHgxLjVmMTlmYmM1MDdhZjZwOQotICB9LAotICB7IC8vIEVudHJ5IDI3MAotICAgIC0weDEuNzVjZTRhMGQwYmQwMzdmZDUzMDQyY2FiODI0MDQ5NTNwLTEsCi0gICAgMHgxLjYwYTYxMGE2NThkYTlwODg5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjcxCi0gICAgMHgxLjc1Y2U0YTBkMGJkMDM3ZmQ1MzA0MmNhYjgyNDA0OTUzcC0xLAotICAgIC0weDEuNjBhNjEwYTY1OGRhOXA4ODkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzIKLSAgICAtMHgxLjcyMTU4NjU5NGFiNDgxOGFjZDRjYjQxZmFmYzk5NDg0cC0xLAotICAgIDB4MS42MmFkN2NlMTcxNDNkcDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjczCi0gICAgMHgxLjcyMTU4NjU5NGFiNDgxOGFjZDRjYjQxZmFmYzk5NDg0cC0xLAotICAgIC0weDEuNjJhZDdjZTE3MTQzZHA2MgotICB9LAotICB7IC8vIEVudHJ5IDI3NAotICAgIDB4MS5iOGQyNzAxOWQxYjllODM2Yjk1MzYxM2M4N2FjZjNhOXAtMiwKLSAgICAweDEuNjQ1OTI2Y2MxMTMyY3A5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjc1Ci0gICAgLTB4MS5iOGQyNzAxOWQxYjllODM2Yjk1MzYxM2M4N2FjZjNhOXAtMiwKLSAgICAtMHgxLjY0NTkyNmNjMTEzMmNwOQotICB9LAotICB7IC8vIEVudHJ5IDI3NgotICAgIDB4MS42NDdlMDkwNTljMWU5ODAwMDAxMzcxNGNkMGM2YTQzZHAtOSwKLSAgICAweDEuNjQ3ZTI1ZDM5MWYxN3AtOQotICB9LAotICB7IC8vIEVudHJ5IDI3NwotICAgIC0weDEuNjQ3ZTA5MDU5YzFlOTgwMDAwMTM3MTRjZDBjNmE0M2RwLTksCi0gICAgLTB4MS42NDdlMjVkMzkxZjE3cC05Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjc4Ci0gICAgLTB4MS44ZDNiNTNmZjg1YTgyM2QwNjUzNzQxMzkwMTIyOWU0NXAtMSwKLSAgICAweDEuNjRlZjQzOHAxNDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzkKLSAgICAweDEuOGQzYjUzZmY4NWE4MjNkMDY1Mzc0MTM5MDEyMjllNDVwLTEsCi0gICAgLTB4MS42NGVmNDM4cDE0MgotICB9LAotICB7IC8vIEVudHJ5IDI4MAotICAgIC0weDEuZjdjODYzMGU2MmEwMWZmZDRlMDI1Nzc5NTZlNTUyM2VwLTEsCi0gICAgMHgxLjY1OTk2NjU5OTY2NThwMwotICB9LAotICB7IC8vIEVudHJ5IDI4MQotICAgIDB4MS5mN2M4NjMwZTYyYTAxZmZkNGUwMjU3Nzk1NmU1NTIzZXAtMSwKLSAgICAtMHgxLjY1OTk2NjU5OTY2NThwMwotICB9LAotICB7IC8vIEVudHJ5IDI4MgotICAgIDB4MS42NzAyOGUzNjAyMDM0ODAwZjQ1YTkxNThkMjBhMzQwY3AtNSwKLSAgICAweDEuNjcycC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjgzCi0gICAgLTB4MS42NzAyOGUzNjAyMDM0ODAwZjQ1YTkxNThkMjBhMzQwY3AtNSwKLSAgICAtMHgxLjY3MnAtNQotICB9LAotICB7IC8vIEVudHJ5IDI4NAotICAgIDB4MS5iYzYwYzhjMzNjYjVlYmY2OTNkNzE2NTBjYmYxNjZmOXAtMiwKLSAgICAweDEuNjg4YWU2YzEzOGVhOHAyOTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODUKLSAgICAtMHgxLmJjNjBjOGMzM2NiNWViZjY5M2Q3MTY1MGNiZjE2NmY5cC0yLAotICAgIC0weDEuNjg4YWU2YzEzOGVhOHAyOTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODYKLSAgICAtMHgxLmZjM2I0YmI4YjAxMmU4MDQyZDNlYmNlZDEyZGVmMGM5cC0xLAotICAgIDB4MS42YWE3OHAxNwotICB9LAotICB7IC8vIEVudHJ5IDI4NwotICAgIDB4MS5mYzNiNGJiOGIwMTJlODA0MmQzZWJjZWQxMmRlZjBjOXAtMSwKLSAgICAtMHgxLjZhYTc4cDE3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjg4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmI1cC0xLAotICAgIDB4MS42YWM1YjI2MmNhMWZmcDg0OQotICB9LAotICB7IC8vIEVudHJ5IDI4OQotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjVwLTEsCi0gICAgLTB4MS42YWM1YjI2MmNhMWZmcDg0OQotICB9LAotICB7IC8vIEVudHJ5IDI5MAotICAgIC0weDEuODIzMTc4MzZhOTdjOGNlYTFjZDJlM2E0ZDBkNDhmMjlwLTEsCi0gICAgMHgxLjZkODgwODM3NDk0MTJwNAotICB9LAotICB7IC8vIEVudHJ5IDI5MQotICAgIDB4MS44MjMxNzgzNmE5N2M4Y2VhMWNkMmUzYTRkMGQ0OGYyOXAtMSwKLSAgICAtMHgxLjZkODgwODM3NDk0MTJwNAotICB9LAotICB7IC8vIEVudHJ5IDI5MgotICAgIDB4MS42Zjc4MWM3OGNjODJhN2ZmY2QyMGJhODAxZTY2OTFiMXAtNiwKLSAgICAweDEuNmY4cC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjkzCi0gICAgLTB4MS42Zjc4MWM3OGNjODJhN2ZmY2QyMGJhODAxZTY2OTFiMXAtNiwKLSAgICAtMHgxLjZmOHAtNgotICB9LAotICB7IC8vIEVudHJ5IDI5NAotICAgIC0weDEuZmRiZTUwODU0OTRhZTdmZTQ3ZmEwNjdhYWVhN2ZkZjlwLTEsCi0gICAgMHgxLjcyOWFhNjg1OWQxZjRwMzk2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjk1Ci0gICAgMHgxLmZkYmU1MDg1NDk0YWU3ZmU0N2ZhMDY3YWFlYTdmZGY5cC0xLAotICAgIC0weDEuNzI5YWE2ODU5ZDFmNHAzOTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTYKLSAgICAtMHgxLmZmZmZmYWU4NjJiNGZlYzFjMmYxNzEyYWExNjU4MDdjcC0xLAotICAgIDB4MS43M2UyZGJlOWEyZjgwcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk3Ci0gICAgMHgxLmZmZmZmYWU4NjJiNGZlYzFjMmYxNzEyYWExNjU4MDdjcC0xLAotICAgIC0weDEuNzNlMmRiZTlhMmY4MHAxMAotICB9LAotICB7IC8vIEVudHJ5IDI5OAotICAgIDB4MS43NjlhYzc0NDU5YjA1ODQ1NmIzMzMyMzg4MzNmMWQxYXAtNywKLSAgICAweDEuNzY5Y2RlMGI5MGI4MHAtNwotICB9LAotICB7IC8vIEVudHJ5IDI5OQotICAgIC0weDEuNzY5YWM3NDQ1OWIwNTg0NTZiMzMzMjM4ODMzZjFkMWFwLTcsCi0gICAgLTB4MS43NjljZGUwYjkwYjgwcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzAwCi0gICAgMHgxLjc2OWU4YWZiNmE0ZWJmOTlhZGU0NjVkMTliZTg2YWMwcC01LAotICAgIDB4MS43NmNwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDEKLSAgICAtMHgxLjc2OWU4YWZiNmE0ZWJmOTlhZGU0NjVkMTliZTg2YWMwcC01LAotICAgIC0weDEuNzZjcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzAyCi0gICAgMHgxLmZkNTYyNjExZjViZDQ4MDBkZTUwM2U0MjEwY2M3ZGY0cC0xLAotICAgIDB4MS43ODAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAzCi0gICAgLTB4MS5mZDU2MjYxMWY1YmQ0ODAwZGU1MDNlNDIxMGNjN2RmNHAtMSwKLSAgICAtMHgxLjc4MDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDQKLSAgICAweDEuZmRiYTc4NGNhMDBmMTdlYmNjMmI1YjEwOThlODNiZmZwLTEsCi0gICAgMHgxLjdhMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA1Ci0gICAgLTB4MS5mZGJhNzg0Y2EwMGYxN2ViY2MyYjViMTA5OGU4M2JmZnAtMSwKLSAgICAtMHgxLjdhMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA2Ci0gICAgMHgxLmY5MzBjMjIyYTg2ODJkN2QxOTIwYTEyYjY4ODcwYzM2cC01LAotICAgIDB4MS43YWJkODcwMzgxYzJkcDM4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzA3Ci0gICAgLTB4MS5mOTMwYzIyMmE4NjgyZDdkMTkyMGExMmI2ODg3MGMzNnAtNSwKLSAgICAtMHgxLjdhYmQ4NzAzODFjMmRwMzgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDgKLSAgICAweDEuZmZlYjJmZjJiNjkyMzY3YmM1NjYwZGFiNjk2MGI1N2RwLTEsCi0gICAgMHgxLjdkYzk0NWMyMTI0ODBwOTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDkKLSAgICAtMHgxLmZmZWIyZmYyYjY5MjM2N2JjNTY2MGRhYjY5NjBiNTdkcC0xLAotICAgIC0weDEuN2RjOTQ1YzIxMjQ4MHA5NQotICB9LAotICB7IC8vIEVudHJ5IDMxMAotICAgIDB4MS5iMjc5MTUzYzIzZmIxODAwMDBjZTNhMGQ0N2Q4YzQ3NnAtMiwKLSAgICAweDEuN2Y3M2UxNTk0YjcwY3A5OAotICB9LAotICB7IC8vIEVudHJ5IDMxMQotICAgIC0weDEuYjI3OTE1M2MyM2ZiMTgwMDAwY2UzYTBkNDdkOGM0NzZwLTIsCi0gICAgLTB4MS43ZjczZTE1OTRiNzBjcDk4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzEyCi0gICAgLTB4MS41OTlmYWQzNWNmNjBhZDQzNzYwY2YzYTlkYTNkOWMzMHAtNDEsCi0gICAgMHgxLjdmN2VmNzdlODNmMWFwMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTMKLSAgICAweDEuNTk5ZmFkMzVjZjYwYWQ0Mzc2MGNmM2E5ZGEzZDljMzBwLTQxLAotICAgIC0weDEuN2Y3ZWY3N2U4M2YxYXAyMQotICB9LAotICB7IC8vIEVudHJ5IDMxNAotICAgIDB4MS5mZWI3YTliMmM2ZDhhZGU2ZTE3ZmRhY2FlZjRmZDk2Y3AtMSwKLSAgICAweDEuOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE1Ci0gICAgLTB4MS5mZWI3YTliMmM2ZDhhZGU2ZTE3ZmRhY2FlZjRmZDk2Y3AtMSwKLSAgICAtMHgxLjhwMAotICB9LAotICB7IC8vIEVudHJ5IDMxNgotICAgIDB4MS5mNzk4ZDAxZWM2MTViOGVkZWRhNDc0ZTNjNmNkMGM5MnAtMSwKLSAgICAweDEuOHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzE3Ci0gICAgLTB4MS5mNzk4ZDAxZWM2MTViOGVkZWRhNDc0ZTNjNmNkMGM5MnAtMSwKLSAgICAtMHgxLjhwNgotICB9LAotICB7IC8vIEVudHJ5IDMxOAotICAgIDB4MS5mZWUxYTJhOTc3YmNlZDE3OWY4YWI4NDU1YWRhNTI1ZnAtMSwKLSAgICAweDEuODEzMmNlYjFjNGYzOXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE5Ci0gICAgLTB4MS5mZWUxYTJhOTc3YmNlZDE3OWY4YWI4NDU1YWRhNTI1ZnAtMSwKLSAgICAtMHgxLjgxMzJjZWIxYzRmMzlwMAotICB9LAotICB7IC8vIEVudHJ5IDMyMAotICAgIC0weDEuMjQyNDVhZjRjZDk5NGU5YjNiYmE5OTJkMGY1N2ZjM2ZwLTUyLAotICAgIDB4MS44MWFlMGRmZmEzYjMzcDk1OQotICB9LAotICB7IC8vIEVudHJ5IDMyMQotICAgIDB4MS4yNDI0NWFmNGNkOTk0ZTliM2JiYTk5MmQwZjU3ZmMzZnAtNTIsCi0gICAgLTB4MS44MWFlMGRmZmEzYjMzcDk1OQotICB9LAotICB7IC8vIEVudHJ5IDMyMgotICAgIDB4MS44NWQ0MWIwYmYzMDkwN2ZmZmZmMTkxM2E1Y2VkNzY0NXAtNCwKLSAgICAweDEuODVlYzVhMzk5YTJlNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIzCi0gICAgLTB4MS44NWQ0MWIwYmYzMDkwN2ZmZmZmMTkxM2E1Y2VkNzY0NXAtNCwKLSAgICAtMHgxLjg1ZWM1YTM5OWEyZTZwMQotICB9LAotICB7IC8vIEVudHJ5IDMyNAotICAgIDB4MS4xZTQyYWUzY2ZiZGM2MDk3Njg4NDA4N2Y5N2EwZmRhOXAtMjQsCi0gICAgMHgxLjg2YTAwOTI3NTQwMjJwMTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjUKLSAgICAtMHgxLjFlNDJhZTNjZmJkYzYwOTc2ODg0MDg3Zjk3YTBmZGE5cC0yNCwKLSAgICAtMHgxLjg2YTAwOTI3NTQwMjJwMTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjYKLSAgICAtMHgxLmRiZjRlNTk0Y2VmZTE1NDhlZmMyNDA5OGQ2MzFlOTUwcC0xLAotICAgIDB4MS44NzIwNTg4cDM5MgotICB9LAotICB7IC8vIEVudHJ5IDMyNwotICAgIDB4MS5kYmY0ZTU5NGNlZmUxNTQ4ZWZjMjQwOThkNjMxZTk1MHAtMSwKLSAgICAtMHgxLjg3MjA1ODhwMzkyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI4Ci0gICAgMHgxLjQ0MzAyZDZhODJkNDAzYmFkZjFmOWI3MTQyMGNjZGNhcC05LAotICAgIDB4MS44OTI5MzU0ZWJjNmFhcDQzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI5Ci0gICAgLTB4MS40NDMwMmQ2YTgyZDQwM2JhZGYxZjliNzE0MjBjY2RjYXAtOSwKLSAgICAtMHgxLjg5MjkzNTRlYmM2YWFwNDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzAKLSAgICAweDEuOGE1MjE4OWVjMzQ4NzdiYjU5NDQ0MTNlMDBhZDUyZWRwLTUsCi0gICAgMHgxLjhhNzkxZTQ3OTFlNzVwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzEKLSAgICAtMHgxLjhhNTIxODllYzM0ODc3YmI1OTQ0NDEzZTAwYWQ1MmVkcC01LAotICAgIC0weDEuOGE3OTFlNDc5MWU3NXAtNQotICB9LAotICB7IC8vIEVudHJ5IDMzMgotICAgIC0weDEuZmU4NTY2ZTUzODEyMmRiMzNjMTdmMTNiODM0NzRhMDRwLTEsCi0gICAgMHgxLjhiYTc2MTQzOGY1ZWRwMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzMKLSAgICAweDEuZmU4NTY2ZTUzODEyMmRiMzNjMTdmMTNiODM0NzRhMDRwLTEsCi0gICAgLTB4MS44YmE3NjE0MzhmNWVkcDExCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM0Ci0gICAgMHgxLmZmZjQyYWNhNGNiNWE4MDAwMDA1N2YxYTQ4YWY2NWRlcC0xLAotICAgIDB4MS44ZWFmMTZkZTYzOTIwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzUKLSAgICAtMHgxLmZmZjQyYWNhNGNiNWE4MDAwMDA1N2YxYTQ4YWY2NWRlcC0xLAotICAgIC0weDEuOGVhZjE2ZGU2MzkyMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM2Ci0gICAgMHgxLmZmZmI3ZDNmM2EyNTJkYTU2ZDk2MzI3YzE4NjI3ZjU3cC0xLAotICAgIDB4MS45cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzcKLSAgICAtMHgxLmZmZmI3ZDNmM2EyNTJkYTU2ZDk2MzI3YzE4NjI3ZjU3cC0xLAotICAgIC0weDEuOXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM4Ci0gICAgLTB4MS5lODE1NzcwNjY3ZmQ4N2Y5NTI1MTU0ZWRjODY3NjA1ZnAtNCwKLSAgICAweDEuOTFhNTY1N2ZiNmE5YXA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzM5Ci0gICAgMHgxLmU4MTU3NzA2NjdmZDg3Zjk1MjUxNTRlZGM4Njc2MDVmcC00LAotICAgIC0weDEuOTFhNTY1N2ZiNmE5YXA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzQwCi0gICAgLTB4MS5mZmZmZmZmZDMxMWRjN2VjNWQwYWU1NzI4YTc5NjBmZHAtMSwKLSAgICAweDEuOTIxZmI1NDQ2ODg0N3AzNwotICB9LAotICB7IC8vIEVudHJ5IDM0MQotICAgIDB4MS5mZmZmZmZmZDMxMWRjN2VjNWQwYWU1NzI4YTc5NjBmZHAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0Njg4NDdwMzcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDIKLSAgICAweDEuZmZmZmZmZmY4NzVlNWU0NDk3ZGQwNzYwMzM2ZTYzZjNwLTE3LAotICAgIDB4MS45MjFmZjU0NDQyZDE4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDMKLSAgICAtMHgxLmZmZmZmZmZmODc1ZTVlNDQ5N2RkMDc2MDMzNmU2M2YzcC0xNywKLSAgICAtMHgxLjkyMWZmNTQ0NDJkMThwMgotICB9LAotICB7IC8vIEVudHJ5IDM0NAotICAgIDB4MS44MTJhNWRhMzc3N2NkN2Y2ZTE3Mjg4NjM4YjQwYWEwOXAtOCwKLSAgICAweDEuOTI4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDUKLSAgICAtMHgxLjgxMmE1ZGEzNzc3Y2Q3ZjZlMTcyODg2MzhiNDBhYTA5cC04LAotICAgIC0weDEuOTI4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDYKLSAgICAweDEuZmZmOWJlOGQ4MjU3MmM3NDZmOTQ0OTM0YmJmMWI2OTdwLTEsCi0gICAgMHgxLjk0YXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ3Ci0gICAgLTB4MS5mZmY5YmU4ZDgyNTcyYzc0NmY5NDQ5MzRiYmYxYjY5N3AtMSwKLSAgICAtMHgxLjk0YXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ4Ci0gICAgMHgxLjk0N2IwYWNlMjM1ZjI4NTBiMjdiMTY0YzQ5MTAyYTQ5cC01LAotICAgIDB4MS45NGE1Mjk0YTUxYmRlcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzQ5Ci0gICAgLTB4MS45NDdiMGFjZTIzNWYyODUwYjI3YjE2NGM0OTEwMmE0OXAtNSwKLSAgICAtMHgxLjk0YTUyOTRhNTFiZGVwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTAKLSAgICAweDEuYzM0ZjcwZTU1YTcwN2JiZDA1M2E3MGU3NDkxMDUxNzRwLTIsCi0gICAgMHgxLjk0YTUyOTRhNTI5NDhwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUxCi0gICAgLTB4MS5jMzRmNzBlNTVhNzA3YmJkMDUzYTcwZTc0OTEwNTE3NHAtMiwKLSAgICAtMHgxLjk0YTUyOTRhNTI5NDhwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUyCi0gICAgMHgxLjk1MGJjZmMwZjNkNTA4NTA5NDFhNDFkNjZjZmEzNzIxcC01LAotICAgIDB4MS45NTM2MWI4Zjc2OTdkcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzUzCi0gICAgLTB4MS45NTBiY2ZjMGYzZDUwODUwOTQxYTQxZDY2Y2ZhMzcyMXAtNSwKLSAgICAtMHgxLjk1MzYxYjhmNzY5N2RwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTQKLSAgICAweDEuNmM1NDhiZmNjZTY5NTNmMTlhOGQyZGQ0ODBkOTMyMGNwLTEsCi0gICAgMHgxLjk1NnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM1NQotICAgIC0weDEuNmM1NDhiZmNjZTY5NTNmMTlhOGQyZGQ0ODBkOTMyMGNwLTEsCi0gICAgLTB4MS45NTZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTYKLSAgICAweDEuZmZlZmZkYmY2N2NhNjcxMWE1N2I3ZDgyMTQwMDkzYzZwLTEsCi0gICAgMHgxLjk2MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzU3Ci0gICAgLTB4MS5mZmVmZmRiZjY3Y2E2NzExYTU3YjdkODIxNDAwOTNjNnAtMSwKLSAgICAtMHgxLjk2MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzU4Ci0gICAgMHgxLjk3MDgyMTNiZjY3ZjQ4NTcxMzUwNzdkNTA4MjZmNTg4cC01LAotICAgIDB4MS45NzMzMGQyZWExNmQ5cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzU5Ci0gICAgLTB4MS45NzA4MjEzYmY2N2Y0ODU3MTM1MDc3ZDUwODI2ZjU4OHAtNSwKLSAgICAtMHgxLjk3MzMwZDJlYTE2ZDlwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjAKLSAgICAweDEuOTcyYmY5MjcxM2Q1MDg1OGU2NGMxYjliMjZhZWVjZDBwLTUsCi0gICAgMHgxLjk3NTZmMDczYjZiNjFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjEKLSAgICAtMHgxLjk3MmJmOTI3MTNkNTA4NThlNjRjMWI5YjI2YWVlY2QwcC01LAotICAgIC0weDEuOTc1NmYwNzNiNmI2MXAtNQotICB9LAotICB7IC8vIEVudHJ5IDM2MgotICAgIDB4MS45NzY4NDVlYmU3MTE4ODU4MGU0NjhiYWQwMGNlMjNlY3AtNSwKLSAgICAweDEuOTc5MzUwNTVjZWMxYnAtNQotICB9LAotICB7IC8vIEVudHJ5IDM2MwotICAgIC0weDEuOTc2ODQ1ZWJlNzExODg1ODBlNDY4YmFkMDBjZTIzZWNwLTUsCi0gICAgLTB4MS45NzkzNTA1NWNlYzFicC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzY0Ci0gICAgMHgxLjk3NTM1Y2VlNTFhNDI4MDZlMTVmNmY4Nzg1MjRlNWI3cC00LAotICAgIDB4MS45ODBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjUKLSAgICAtMHgxLjk3NTM1Y2VlNTFhNDI4MDZlMTVmNmY4Nzg1MjRlNWI3cC00LAotICAgIC0weDEuOTgwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzY2Ci0gICAgMHgxLjZmNDk0YzMzNTYxNzcwMDAwMDY1MDJjZGZmOTc1YjA4cC0xLAotICAgIDB4MS45OTk5OTlhNDIxNjBjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY3Ci0gICAgLTB4MS42ZjQ5NGMzMzU2MTc3MDAwMDA2NTAyY2RmZjk3NWIwOHAtMSwKLSAgICAtMHgxLjk5OTk5OWE0MjE2MGNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjgKLSAgICAweDEuNmY0OTRjMzdlZGQ2ZDgwMDAwNmRjNzZhZWU0Y2M4ZTRwLTEsCi0gICAgMHgxLjk5OTk5OWFhYjhmNTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjkKLSAgICAtMHgxLjZmNDk0YzM3ZWRkNmQ4MDAwMDZkYzc2YWVlNGNjOGU0cC0xLAotICAgIC0weDEuOTk5OTk5YWFiOGY1MHAtMQotICB9LAotICB7IC8vIEVudHJ5IDM3MAotICAgIDB4MS42ZmE5MTJiZGVhYWIyODAwMDAxNjRmMTZkZDY0OTM1NnAtMSwKLSAgICAweDEuOWEyMzI0YjljNjMyNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM3MQotICAgIC0weDEuNmZhOTEyYmRlYWFiMjgwMDAwMTY0ZjE2ZGQ2NDkzNTZwLTEsCi0gICAgLTB4MS45YTIzMjRiOWM2MzI2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzcyCi0gICAgMHgxLjcwYzdlZjRlZjliMzQ3ZWQyMzRjYTYxMzFiZTFiNzg2cC0xLAotICAgIDB4MS45YmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzMKLSAgICAtMHgxLjcwYzdlZjRlZjliMzQ3ZWQyMzRjYTYxMzFiZTFiNzg2cC0xLAotICAgIC0weDEuOWJjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc0Ci0gICAgMHgxLmZmMjgxNzZhZDMxNjNlYTE2OGM5OTkxZjE1NWY4NzVicC0xLAotICAgIDB4MS5hMGQxZDgxN2Q2YzRhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzUKLSAgICAtMHgxLmZmMjgxNzZhZDMxNjNlYTE2OGM5OTkxZjE1NWY4NzVicC0xLAotICAgIC0weDEuYTBkMWQ4MTdkNmM0YXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc2Ci0gICAgMHgxLjc0OTQ2OGE3MjQ4ZGQyNjE2MWU5M2Q3ODkyOGM2NmRlcC0xLAotICAgIDB4MS5hMTQxYzlkZTEyZmRmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc3Ci0gICAgLTB4MS43NDk0NjhhNzI0OGRkMjYxNjFlOTNkNzg5MjhjNjZkZXAtMSwKLSAgICAtMHgxLmExNDFjOWRlMTJmZGZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzgKLSAgICAweDEuNzU0ZWJiN2U3M2Y0NTJhYjQ5YzYxNWYwZTgzMDBkNWNwLTEsCi0gICAgMHgxLmEyNTFiYzY3NjZmMjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzkKLSAgICAtMHgxLjc1NGViYjdlNzNmNDUyYWI0OWM2MTVmMGU4MzAwZDVjcC0xLAotICAgIC0weDEuYTI1MWJjNjc2NmYyMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDM4MAotICAgIC0weDEuN2MzYmZlZmE3NGJkMDdmZTIxMzM2Y2FhYzM3MmE3M2VwLTEsCi0gICAgMHgxLmEyNjg5YWUxYjg2ZGRwNjIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODEKLSAgICAweDEuN2MzYmZlZmE3NGJkMDdmZTIxMzM2Y2FhYzM3MmE3M2VwLTEsCi0gICAgLTB4MS5hMjY4OWFlMWI4NmRkcDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgyCi0gICAgLTB4MS5mZmZmNGYzNjQ4ZTAyZjlmNDk0ZjQyZWI4MjJmMjYyYnAtMSwKLSAgICAweDEuYTNmNjYxODBjNDU1MHAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODMKLSAgICAweDEuZmZmZjRmMzY0OGUwMmY5ZjQ5NGY0MmViODIyZjI2MmJwLTEsCi0gICAgLTB4MS5hM2Y2NjE4MGM0NTUwcDEwMAotICB9LAotICB7IC8vIEVudHJ5IDM4NAotICAgIC0weDEuMWNmNDYzOTgzYzBlMjgwMjMxNjFiN2QwZDI5MzhlMzdwLTMsCi0gICAgMHgxLmEzZmRkMmE1Mjg2YzNwMQotICB9LAotICB7IC8vIEVudHJ5IDM4NQotICAgIDB4MS4xY2Y0NjM5ODNjMGUyODAyMzE2MWI3ZDBkMjkzOGUzN3AtMywKLSAgICAtMHgxLmEzZmRkMmE1Mjg2YzNwMQotICB9LAotICB7IC8vIEVudHJ5IDM4NgotICAgIDB4MS5mZWI3OTQ4ZDIyNGQ3ZTc1OWE3YzlkZDc2OGRlZDcyN3AtMSwKLSAgICAweDEuYTQ0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODcKLSAgICAtMHgxLmZlYjc5NDhkMjI0ZDdlNzU5YTdjOWRkNzY4ZGVkNzI3cC0xLAotICAgIC0weDEuYTQ0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODgKLSAgICAweDEuNzg4MDFlM2UxMTY2NDgyZGNlNjIwOGU5OGQzY2MxNDJwLTEsCi0gICAgMHgxLmE3MDFlZjNjN2Q1NGJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODkKLSAgICAtMHgxLjc4ODAxZTNlMTE2NjQ4MmRjZTYyMDhlOThkM2NjMTQycC0xLAotICAgIC0weDEuYTcwMWVmM2M3ZDU0YnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM5MAotICAgIC0weDEuZmZmMTFlODcxZDU5YzNlMTMzM2RiNTQ3NWJiNTdlMjdwLTEsCi0gICAgMHgxLmE4YzAxZmQ0M2MwcDUzNwotICB9LAotICB7IC8vIEVudHJ5IDM5MQotICAgIDB4MS5mZmYxMWU4NzFkNTljM2UxMzMzZGI1NDc1YmI1N2UyN3AtMSwKLSAgICAtMHgxLmE4YzAxZmQ0M2MwcDUzNwotICB9LAotICB7IC8vIEVudHJ5IDM5MgotICAgIDB4MS5mZGZhNDM2NmViNzMzN2U2ZDk3M2M0Y2I4ZjFhMjQ0YXAtMSwKLSAgICAweDEuYThlMjliNzYwMmYzYnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkzCi0gICAgLTB4MS5mZGZhNDM2NmViNzMzN2U2ZDk3M2M0Y2I4ZjFhMjQ0YXAtMSwKLSAgICAtMHgxLmE4ZTI5Yjc2MDJmM2JwMAotICB9LAotICB7IC8vIEVudHJ5IDM5NAotICAgIDB4MS5mZGU5OGI5NGU3OTQ3YTA0MjI5ZDI2ZWViMmJiNDI4MHAtMSwKLSAgICAweDEuYTk0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTUKLSAgICAtMHgxLmZkZTk4Yjk0ZTc5NDdhMDQyMjlkMjZlZWIyYmI0MjgwcC0xLAotICAgIC0weDEuYTk0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTYKLSAgICAweDEuNzkzMWNiYTEwMDAwODgwMDAwMDY4Zjk0MDk4MDE4YTdwLTIsCi0gICAgMHgxLmFhNDQ1ZmNlOTNiODJwMgotICB9LAotICB7IC8vIEVudHJ5IDM5NwotICAgIC0weDEuNzkzMWNiYTEwMDAwODgwMDAwMDY4Zjk0MDk4MDE4YTdwLTIsCi0gICAgLTB4MS5hYTQ0NWZjZTkzYjgycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTgKLSAgICAweDEuN2FmM2Y3NmM3YTcwODgzNGI0MDcyZjU5YWM3MWEwYmFwLTEsCi0gICAgMHgxLmFhYTNmYmMzNTlmYmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTkKLSAgICAtMHgxLjdhZjNmNzZjN2E3MDg4MzRiNDA3MmY1OWFjNzFhMGJhcC0xLAotICAgIC0weDEuYWFhM2ZiYzM1OWZiZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQwMAotICAgIDB4MS5mZDc0ZTUzYWUzMmZjZDg0NjdiY2Y1MGRhMWQwZjU2M3AtNiwKLSAgICAweDEuYWJkZDNkYmQ0ZDg2MHAxMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDEKLSAgICAtMHgxLmZkNzRlNTNhZTMyZmNkODQ2N2JjZjUwZGExZDBmNTYzcC02LAotICAgIC0weDEuYWJkZDNkYmQ0ZDg2MHAxMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDIKLSAgICAweDEuN2Q0YTdiZjE4M2EzMzI5ZWQ0MzRjMGM0ZGQ3OGIxZDlwLTEsCi0gICAgMHgxLmFlMjE2NWEwYzlmOGVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDMKLSAgICAtMHgxLjdkNGE3YmYxODNhMzMyOWVkNDM0YzBjNGRkNzhiMWQ5cC0xLAotICAgIC0weDEuYWUyMTY1YTBjOWY4ZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQwNAotICAgIDB4MS5iODE0MTBlZGM3OWUwODM3NTA3YTNlZWY4ZDU1M2JkNnAtMiwKLSAgICAweDEuYWU4ZGZlZmNmZTEzYnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA1Ci0gICAgLTB4MS5iODE0MTBlZGM3OWUwODM3NTA3YTNlZWY4ZDU1M2JkNnAtMiwKLSAgICAtMHgxLmFlOGRmZWZjZmUxM2JwMgotICB9LAotICB7IC8vIEVudHJ5IDQwNgotICAgIC0weDEuZmY3NTE1NjFkYzUwOTdmZWZlNDk5MzAxZDAzNGEwZWRwLTIsCi0gICAgMHgxLmI1NTk3Zjk1MGVlOGNwMjkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDcKLSAgICAweDEuZmY3NTE1NjFkYzUwOTdmZWZlNDk5MzAxZDAzNGEwZWRwLTIsCi0gICAgLTB4MS5iNTU5N2Y5NTBlZThjcDI5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDA4Ci0gICAgMHgxLjAyN2QxODRhZmIxOTg0Y2ExZDIxYjFhYzkyOGQ1MzkxcC01MiwKLSAgICAweDEuYmFiNjJlZDY1NTAxOXA5NzAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDkKLSAgICAtMHgxLjAyN2QxODRhZmIxOTg0Y2ExZDIxYjFhYzkyOGQ1MzkxcC01MiwKLSAgICAtMHgxLmJhYjYyZWQ2NTUwMTlwOTcwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDEwCi0gICAgMHgxLmJjNTcyZTVlNDEzZTE3ZmNiMjI0NmQ0MDI0OWEwMDVmcC0xMCwKLSAgICAweDEuYmM1NzNjNGZmZmZmZnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTEKLSAgICAtMHgxLmJjNTcyZTVlNDEzZTE3ZmNiMjI0NmQ0MDI0OWEwMDVmcC0xMCwKLSAgICAtMHgxLmJjNTczYzRmZmZmZmZwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDEyCi0gICAgMHgxLmZiMzAwZjFlMzlhZmU4MDQ3MWY5OTNhYmI4Y2ZhNDI4cC0xLAotICAgIDB4MS5iZWY1Y2QyNWFiMWFkcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTMKLSAgICAtMHgxLmZiMzAwZjFlMzlhZmU4MDQ3MWY5OTNhYmI4Y2ZhNDI4cC0xLAotICAgIC0weDEuYmVmNWNkMjVhYjFhZHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDE0Ci0gICAgMHgxLmIxYmFhZjYyMmQzYTI3ZmQyN2QwNzE2ZjdkMDhkOTkycC0yLAotICAgIDB4MS5iZmRmNmRmMmEyNGMxcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE1Ci0gICAgLTB4MS5iMWJhYWY2MjJkM2EyN2ZkMjdkMDcxNmY3ZDA4ZDk5MnAtMiwKLSAgICAtMHgxLmJmZGY2ZGYyYTI0YzFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTYKLSAgICAweDEuODhmYjc2MmMzNWNlMzdmZWNiYjQ3NDhkMDFmZWZmY2VwLTEsCi0gICAgMHgxLmJmZmZmZmRmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTcKLSAgICAtMHgxLjg4ZmI3NjJjMzVjZTM3ZmVjYmI0NzQ4ZDAxZmVmZmNlcC0xLAotICAgIC0weDEuYmZmZmZmZGZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQxOAotICAgIDB4MS5mZTBlYmZmOTlhYjhjODBjZTU5MzlmMWYwNzJjMmU5MXAtMSwKLSAgICAweDEuYzJiNDg5NTIwZTM3NnA5MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTkKLSAgICAtMHgxLmZlMGViZmY5OWFiOGM4MGNlNTkzOWYxZjA3MmMyZTkxcC0xLAotICAgIC0weDEuYzJiNDg5NTIwZTM3NnA5MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjAKLSAgICAweDEuY2Y3Zjc0OWYyYTgzNTdmN2ZlYWI2ODVmZjZmOGI2MjRwLTQsCi0gICAgMHgxLmM1NGJlYjAwODU0NzBwNQotICB9LAotICB7IC8vIEVudHJ5IDQyMQotICAgIC0weDEuY2Y3Zjc0OWYyYTgzNTdmN2ZlYWI2ODVmZjZmOGI2MjRwLTQsCi0gICAgLTB4MS5jNTRiZWIwMDg1NDcwcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjIKLSAgICAweDEuYjZmYWNmNjY1ODkxNDgyZWE4YzYxZjVjYTMyZjI4MGRwLTIsCi0gICAgMHgxLmM1YWQzNGY1ZjQ3MmFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjMKLSAgICAtMHgxLmI2ZmFjZjY2NTg5MTQ4MmVhOGM2MWY1Y2EzMmYyODBkcC0yLAotICAgIC0weDEuYzVhZDM0ZjVmNDcyYXAtMgotICB9LAotICB7IC8vIEVudHJ5IDQyNAotICAgIDB4MS5iODUxY2Q5Yjg0ZWU2ODNkYzZiZDM4OTllYTgxZGJmOXAtMiwKLSAgICAweDEuYzcyOGZjMmYzNGJkNnAtMgotICB9LAotICB7IC8vIEVudHJ5IDQyNQotICAgIC0weDEuYjg1MWNkOWI4NGVlNjgzZGM2YmQzODk5ZWE4MWRiZjlwLTIsCi0gICAgLTB4MS5jNzI4ZmMyZjM0YmQ2cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI2Ci0gICAgMHgxLmJhMjFiNTNjZjJmZjI4MzI2MDZmNjVlZWViNGUzYWFmcC0yLAotICAgIDB4MS5jOTJiMGY2MTA1MDg5cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI3Ci0gICAgLTB4MS5iYTIxYjUzY2YyZmYyODMyNjA2ZjY1ZWVlYjRlM2FhZnAtMiwKLSAgICAtMHgxLmM5MmIwZjYxMDUwODlwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjgKLSAgICAweDEuYzlhMmI2OGUzMGVjNzdjNGU3NmM4ODk3MDQzOTRhNTBwLTUsCi0gICAgMHgxLmM5ZGZiYmU5ZWM3MDRwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjkKLSAgICAtMHgxLmM5YTJiNjhlMzBlYzc3YzRlNzZjODg5NzA0Mzk0YTUwcC01LAotICAgIC0weDEuYzlkZmJiZTllYzcwNHAtNQotICB9LAotICB7IC8vIEVudHJ5IDQzMAotICAgIDB4MS5mMzcwMTE1YzlhYjM1NzQzZTEyMjE3YzYxMjJlMWEyOHAtMSwKLSAgICAweDEuY2FmMzFiZDdlZTIxN3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMxCi0gICAgLTB4MS5mMzcwMTE1YzlhYjM1NzQzZTEyMjE3YzYxMjJlMWEyOHAtMSwKLSAgICAtMHgxLmNhZjMxYmQ3ZWUyMTdwMAotICB9LAotICB7IC8vIEVudHJ5IDQzMgotICAgIC0weDEuZGQzOGExZjFkMjg5YjYxNzMxMTU3MjFiYzU4ZTI5OGRwLTU0LAotICAgIDB4MS5jYjQ0ZTg2YmMxOTJicDY0OAotICB9LAotICB7IC8vIEVudHJ5IDQzMwotICAgIDB4MS5kZDM4YTFmMWQyODliNjE3MzExNTcyMWJjNThlMjk4ZHAtNTQsCi0gICAgLTB4MS5jYjQ0ZTg2YmMxOTJicDY0OAotICB9LAotICB7IC8vIEVudHJ5IDQzNAotICAgIDB4MS5kZDM4YTFmMWQyODliNjE3MzExNTcyMWJjNTVhNTZhOHAtNTMsCi0gICAgMHgxLmNiNDRlODZiYzE5MmJwNjQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDM1Ci0gICAgLTB4MS5kZDM4YTFmMWQyODliNjE3MzExNTcyMWJjNTVhNTZhOHAtNTMsCi0gICAgLTB4MS5jYjQ0ZTg2YmMxOTJicDY0OQotICB9LAotICB7IC8vIEVudHJ5IDQzNgotICAgIDB4MS5jNzg4NWFlZjMzYTk0ZmZjNWFlMDZiZTk0NDRlZmFkNXAtMywKLSAgICAweDEuY2I2cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM3Ci0gICAgLTB4MS5jNzg4NWFlZjMzYTk0ZmZjNWFlMDZiZTk0NDRlZmFkNXAtMywKLSAgICAtMHgxLmNiNnAtMwotICB9LAotICB7IC8vIEVudHJ5IDQzOAotICAgIDB4MS5jZDI3OWFhNjE5NmI1N2Y5YmU3MWNkZmZkZDlmMTkxOXAtNCwKLSAgICAweDEuY2UyMjcxZDJmNjYyZnAtNAotICB9LAotICB7IC8vIEVudHJ5IDQzOQotICAgIC0weDEuY2QyNzlhYTYxOTZiNTdmOWJlNzFjZGZmZGQ5ZjE5MTlwLTQsCi0gICAgLTB4MS5jZTIyNzFkMmY2NjJmcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDQwCi0gICAgMHgxLjkzMGI3MDVmOWZhZDE3ZmI1NjgxM2E0NTk3M2E4ZDcycC0xLAotICAgIDB4MS5kMDAwMDAwMDAwNHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ0MQotICAgIC0weDEuOTMwYjcwNWY5ZmFkMTdmYjU2ODEzYTQ1OTczYThkNzJwLTEsCi0gICAgLTB4MS5kMDAwMDAwMDAwNHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ0MgotICAgIDB4MS43ZWYyNGM4ZTY3ZDlhODAxN2EwMzFmMzhlMjRjY2UwNnAtMSwKLSAgICAweDEuZDAxcDE5OQotICB9LAotICB7IC8vIEVudHJ5IDQ0MwotICAgIC0weDEuN2VmMjRjOGU2N2Q5YTgwMTdhMDMxZjM4ZTI0Y2NlMDZwLTEsCi0gICAgLTB4MS5kMDFwMTk5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDQ0Ci0gICAgMHgxLmZmZmYxMjRjMDAxYWFmYjFmMTc1Y2NiNTMxYzA1M2IwcC0xLAotICAgIDB4MS5kMDI0YmE2Zjk1M2NmcDEwMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDUKLSAgICAtMHgxLmZmZmYxMjRjMDAxYWFmYjFmMTc1Y2NiNTMxYzA1M2IwcC0xLAotICAgIC0weDEuZDAyNGJhNmY5NTNjZnAxMDAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ2Ci0gICAgLTB4MS5mODNhMDk4M2RkMTVkMDAzMDFlMmRmMjFlM2JlZTYzNXAtMiwKLSAgICAweDEuZDQwNjdjNjBmNDcxZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ3Ci0gICAgMHgxLmY4M2EwOTgzZGQxNWQwMDMwMWUyZGYyMWUzYmVlNjM1cC0yLAotICAgIC0weDEuZDQwNjdjNjBmNDcxZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ4Ci0gICAgMHgxLmQ3OWI5ODk2ZmY1NTQ4NGQyNTkxYjY3N2Q1NGVhNDZmcC01LAotICAgIDB4MS5kN2RlNjI2M2JjYWFicC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDQ5Ci0gICAgLTB4MS5kNzliOTg5NmZmNTU0ODRkMjU5MWI2NzdkNTRlYTQ2ZnAtNSwKLSAgICAtMHgxLmQ3ZGU2MjYzYmNhYWJwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTAKLSAgICAweDEuZWQwYjkwOGEyOTgyZjdmZDljODBiYzEwNTFkZDQwODBwLTEsCi0gICAgMHgxLmQ4MDAwMDAwMDIyNzRwMAotICB9LAotICB7IC8vIEVudHJ5IDQ1MQotICAgIC0weDEuZWQwYjkwOGEyOTgyZjdmZDljODBiYzEwNTFkZDQwODBwLTEsCi0gICAgLTB4MS5kODAwMDAwMDAyMjc0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTIKLSAgICAtMHgxLmYyYzIxN2NiYzdkY2M5MTkyNDNhN2M0MzRhMjA5ZjlhcC0xLAotICAgIDB4MS5kOTZlMDU4cDQ4OAotICB9LAotICB7IC8vIEVudHJ5IDQ1MwotICAgIDB4MS5mMmMyMTdjYmM3ZGNjOTE5MjQzYTdjNDM0YTIwOWY5YXAtMSwKLSAgICAtMHgxLmQ5NmUwNThwNDg4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDU0Ci0gICAgMHgxLjk4ZGNkMDkzMzc3OTI4MDAwMDAwMDAwMDAwMTY3ZGM3cC0xLAotICAgIDB4MS5kOThjNGM2MTI3MThkcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU1Ci0gICAgLTB4MS45OGRjZDA5MzM3NzkyODAwMDAwMDAwMDAwMDE2N2RjN3AtMSwKLSAgICAtMHgxLmQ5OGM0YzYxMjcxOGRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTYKLSAgICAweDEuZGIzYmE4Nzc1Y2EyNTdkYTNiZDU0NDlkMzk2YTY2ZTJwLTUsCi0gICAgMHgxLmRiOHAtNQotICB9LAotICB7IC8vIEVudHJ5IDQ1NwotICAgIC0weDEuZGIzYmE4Nzc1Y2EyNTdkYTNiZDU0NDlkMzk2YTY2ZTJwLTUsCi0gICAgLTB4MS5kYjhwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTgKLSAgICAtMHgxLjlmZWUzNzY5N2Q1ODI4MDMxYTZhMjY3OWMxNDMzNDU3cC0yLAotICAgIDB4MS5kZTM4NmQ2MDkwMzAzcDIwMAotICB9LAotICB7IC8vIEVudHJ5IDQ1OQotICAgIDB4MS45ZmVlMzc2OTdkNTgyODAzMWE2YTI2NzljMTQzMzQ1N3AtMiwKLSAgICAtMHgxLmRlMzg2ZDYwOTAzMDNwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDYwCi0gICAgLTB4MS41MzYxZWU2NTUzMTg4MDM2ZTlkZmNhYjQyOGRlYjRlMXAtNTMsCi0gICAgMHgxLmRlNWU1MDU0ZTkyMWJwMzUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjEKLSAgICAweDEuNTM2MWVlNjU1MzE4ODAzNmU5ZGZjYWI0MjhkZWI0ZTFwLTUzLAotICAgIC0weDEuZGU1ZTUwNTRlOTIxYnAzNQotICB9LAotICB7IC8vIEVudHJ5IDQ2MgotICAgIDB4MS5mZWM0OGQ1ZTc2OWViZTM3NDQ4YzEwZTBhN2EwZWNiMXAtMSwKLSAgICAweDEuZGY3N2RkZjc3ZGRmNHAxMAotICB9LAotICB7IC8vIEVudHJ5IDQ2MwotICAgIC0weDEuZmVjNDhkNWU3NjllYmUzNzQ0OGMxMGUwYTdhMGVjYjFwLTEsCi0gICAgLTB4MS5kZjc3ZGRmNzdkZGY0cDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY0Ci0gICAgLTB4MS4yOTAyYTgzZDcyNjMyODAwMDAzZDExNDliN2U2YzBmYnAtMSwKLSAgICAweDEuZTE1NjJiMDQ0OGE4NnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY1Ci0gICAgMHgxLjI5MDJhODNkNzI2MzI4MDAwMDNkMTE0OWI3ZTZjMGZicC0xLAotICAgIC0weDEuZTE1NjJiMDQ0OGE4NnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY2Ci0gICAgMHgxLjllMjZjN2JjOTZiNjg4MDAwMDBkNDczNmZmMTMyMDM1cC0xLAotICAgIDB4MS5lMjcwMGNkYzg2NjM1cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY3Ci0gICAgLTB4MS45ZTI2YzdiYzk2YjY4ODAwMDAwZDQ3MzZmZjEzMjAzNXAtMSwKLSAgICAtMHgxLmUyNzAwY2RjODY2MzVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjgKLSAgICAweDEuZTY0OTQ5MTFlZWRkMThkMGYxOTE1ZmQ0ZjY0OTU0NjlwLTcsCi0gICAgMHgxLmU2NGRkYWY3YmQ3MzBwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjkKLSAgICAtMHgxLmU2NDk0OTExZWVkZDE4ZDBmMTkxNWZkNGY2NDk1NDY5cC03LAotICAgIC0weDEuZTY0ZGRhZjdiZDczMHAtNwotICB9LAotICB7IC8vIEVudHJ5IDQ3MAotICAgIDB4MS5lYjI2YzY5MGJkYTI0ODRhNmMwMjBhOWMwNTJlYTg0NnAtNSwKLSAgICAweDEuZWI3MjM5YmNhOGFmYXAtNQotICB9LAotICB7IC8vIEVudHJ5IDQ3MQotICAgIC0weDEuZWIyNmM2OTBiZGEyNDg0YTZjMDIwYTljMDUyZWE4NDZwLTUsCi0gICAgLTB4MS5lYjcyMzliY2E4YWZhcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDcyCi0gICAgMHgxLmM3MzIzODc5MGE0Y2U4MDFlMDQxMDdiMjU0NmI0YWUzcC0zLAotICAgIDB4MS5lZjdiODNmN2JkZWY0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzMKLSAgICAtMHgxLmM3MzIzODc5MGE0Y2U4MDFlMDQxMDdiMjU0NmI0YWUzcC0zLAotICAgIC0weDEuZWY3YjgzZjdiZGVmNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNDc0Ci0gICAgMHgxLmVkMWI1NzVhY2I4Yzg4MTA4MmNlMzE1MDc0YThhNDJhcC0zLAotICAgIDB4MS5mMjAwMDAwMDAxMDlicC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNDc1Ci0gICAgLTB4MS5lZDFiNTc1YWNiOGM4ODEwODJjZTMxNTA3NGE4YTQyYXAtMywKLSAgICAtMHgxLmYyMDAwMDAwMDEwOWJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzYKLSAgICAweDEuYzFiNTBhNTZjODgwOTgwMDAwMDI4MmE1MTZjMTNlMjVwLTEsCi0gICAgMHgxLmY0MGNhNjdhOWU4ZDdwOQotICB9LAotICB7IC8vIEVudHJ5IDQ3NwotICAgIC0weDEuYzFiNTBhNTZjODgwOTgwMDAwMDI4MmE1MTZjMTNlMjVwLTEsCi0gICAgLTB4MS5mNDBjYTY3YTllOGQ3cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzgKLSAgICAweDEuZTMyMWZlYTY0M2E5NjgwODMyMDg3NjhlOWUyY2QyOGVwLTIsCi0gICAgMHgxLmY3MjI0ZDJjNzc1NDBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzkKLSAgICAtMHgxLmUzMjFmZWE2NDNhOTY4MDgzMjA4NzY4ZTllMmNkMjhlcC0yLAotICAgIC0weDEuZjcyMjRkMmM3NzU0MHAtMgotICB9LAotICB7IC8vIEVudHJ5IDQ4MAotICAgIDB4MS5jMTI2OWIwMjBhMTA3ZmZjMDA2MTJhNTYzYTkxOTY4NnAtMywKLSAgICAweDEuZjc4YTBkMDVlNjBlMnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDgxCi0gICAgLTB4MS5jMTI2OWIwMjBhMTA3ZmZjMDA2MTJhNTYzYTkxOTY4NnAtMywKLSAgICAtMHgxLmY3OGEwZDA1ZTYwZTJwNgotICB9LAotICB7IC8vIEVudHJ5IDQ4MgotICAgIDB4MS5mNzZjYWUyOGEwNzc0N2ZmZmNkNDUzYTAxNDJjMmVjMXAtNSwKLSAgICAweDEuZjdiZGVmN2JkZjA3M3AtNQotICB9LAotICB7IC8vIEVudHJ5IDQ4MwotICAgIC0weDEuZjc2Y2FlMjhhMDc3NDdmZmZjZDQ1M2EwMTQyYzJlYzFwLTUsCi0gICAgLTB4MS5mN2JkZWY3YmRmMDczcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDg0Ci0gICAgMHgxLmU0MmMxMzlkYzIwNTM4MDdiOTQ0MGYxYTI4ZjdjOWI5cC0yLAotICAgIDB4MS5mODUwMmQ1OTU1NDQzcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDg1Ci0gICAgLTB4MS5lNDJjMTM5ZGMyMDUzODA3Yjk0NDBmMWEyOGY3YzliOXAtMiwKLSAgICAtMHgxLmY4NTAyZDU5NTU0NDNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODYKLSAgICAweDEuMGZhNzQ5ZTA3ZjYzZmM5ZDAxYzgzNGRlNDc2NTRhY2JwLTksCi0gICAgMHgxLmY4ZmM4MjRkMjY5M2JwNjEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODcKLSAgICAtMHgxLjBmYTc0OWUwN2Y2M2ZjOWQwMWM4MzRkZTQ3NjU0YWNicC05LAotICAgIC0weDEuZjhmYzgyNGQyNjkzYnA2MQotICB9LAotICB7IC8vIEVudHJ5IDQ4OAotICAgIDB4MS5mZmE4MDMyNGUyZDhlYmMwMmYzMjNlZDQ5ZWI5N2E2Y3AtMSwKLSAgICAweDEuZjhmZmZmZmZmZmZmZnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNDg5Ci0gICAgLTB4MS5mZmE4MDMyNGUyZDhlYmMwMmYzMjNlZDQ5ZWI5N2E2Y3AtMSwKLSAgICAtMHgxLmY4ZmZmZmZmZmZmZmZwMgotICB9LAotICB7IC8vIEVudHJ5IDQ5MAotICAgIC0weDEuN2NkZjc5ZDVlMzdiOGIyMTJlZmY4NmQyZmZlMjA0NGJwLTEsCi0gICAgMHgxLmZkOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDkxCi0gICAgMHgxLjdjZGY3OWQ1ZTM3YjhiMjEyZWZmODZkMmZmZTIwNDRicC0xLAotICAgIC0weDEuZmQ4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTIKLSAgICAweDEuZmQzZjQ4ODQ3YTFkMTBhOGU1ZmYxZDRkYjg0ZWQyNmRwLTUsCi0gICAgMHgxLmZkOTM2NGQ5MzY1OTZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTMKLSAgICAtMHgxLmZkM2Y0ODg0N2ExZDEwYThlNWZmMWQ0ZGI4NGVkMjZkcC01LAotICAgIC0weDEuZmQ5MzY0ZDkzNjU5NnAtNQotICB9LAotICB7IC8vIEVudHJ5IDQ5NAotICAgIDB4MS5mOTNhZDQ3MWQyNjJmODAzMmU5MmQ1OTY3OTdmOWQ0MXAtMywKLSAgICAweDEuZmU4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk1Ci0gICAgLTB4MS5mOTNhZDQ3MWQyNjJmODAzMmU5MmQ1OTY3OTdmOWQ0MXAtMywKLSAgICAtMHgxLmZlOHAtMwotICB9LAotICB7IC8vIEVudHJ5IDQ5NgotICAgIDB4MS44M2IzMDYyNDE0OTczZDkyYzQyNzg1MDdmMDQ3NGQ2N3AtMSwKLSAgICAweDEuZmViYjY0NmUyZWU1N3AxMwotICB9LAotICB7IC8vIEVudHJ5IDQ5NwotICAgIC0weDEuODNiMzA2MjQxNDk3M2Q5MmM0Mjc4NTA3ZjA0NzRkNjdwLTEsCi0gICAgLTB4MS5mZWJiNjQ2ZTJlZTU3cDEzCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk4Ci0gICAgMHgxLjNiNDViZDc0NDk3NzU0N2ZhNDY3M2U0MmRmYzk5NDAycC0xLAotICAgIDB4MS5mZWVmZmZmZmZmZmM2cDk5NQotICB9LAotICB7IC8vIEVudHJ5IDQ5OQotICAgIC0weDEuM2I0NWJkNzQ0OTc3NTQ3ZmE0NjczZTQyZGZjOTk0MDJwLTEsCi0gICAgLTB4MS5mZWVmZmZmZmZmZmM2cDk5NQotICB9LAotICB7IC8vIEVudHJ5IDUwMAotICAgIC0weDEuZWVmYjU5ZDE0MzY0NWE0MDA0MWJmNzI2ZGM2ZjJmYTBwLTEsCi0gICAgMHgxLmZmOGZmZmZmZmZmZmZwNwotICB9LAotICB7IC8vIEVudHJ5IDUwMQotICAgIDB4MS5lZWZiNTlkMTQzNjQ1YTQwMDQxYmY3MjZkYzZmMmZhMHAtMSwKLSAgICAtMHgxLmZmOGZmZmZmZmZmZmZwNwotICB9LAotICB7IC8vIEVudHJ5IDUwMgotICAgIC0weDEuNTY0MzNmMGM2YmNlZTk4NDg3NTE2MTFjNmY1YWRlMWZwLTEsCi0gICAgMHgxLmZmOGZmZmZmZmZmZmZwODcwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTAzCi0gICAgMHgxLjU2NDMzZjBjNmJjZWU5ODQ4NzUxNjExYzZmNWFkZTFmcC0xLAotICAgIC0weDEuZmY4ZmZmZmZmZmZmZnA4NzAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDQKLSAgICAtMHgxLjkzMDAwNjI0NmE2YzA1ZGFiNzJlYTY5N2RhYWJhNjlkcC0yLAotICAgIDB4MS5mZmNmZmY4cDE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTA1Ci0gICAgMHgxLjkzMDAwNjI0NmE2YzA1ZGFiNzJlYTY5N2RhYWJhNjlkcC0yLAotICAgIC0weDEuZmZjZmZmOHAxOQotICB9LAotICB7IC8vIEVudHJ5IDUwNgotICAgIDB4MS5kZWQzN2ExZjBhYTZkMDVkNzgyZDZhYWI0MGNiODY3MHAtMSwKLSAgICAweDEuZmZjZmZmOHAzNjUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDcKLSAgICAtMHgxLmRlZDM3YTFmMGFhNmQwNWQ3ODJkNmFhYjQwY2I4NjcwcC0xLAotICAgIC0weDEuZmZjZmZmOHAzNjUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDgKLSAgICAtMHgxLjkzZTRkOTZiNjIxZTA3YmNhODY2YzFhMmU3NzE4ODFjcC0xLAotICAgIDB4MS5mZmNmZmZmZmZmZjZjcDcyMAotICB9LAotICB7IC8vIEVudHJ5IDUwOQotICAgIDB4MS45M2U0ZDk2YjYyMWUwN2JjYTg2NmMxYTJlNzcxODgxY3AtMSwKLSAgICAtMHgxLmZmY2ZmZmZmZmZmNmNwNzIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTEwCi0gICAgMHgxLjkwNjhiOTBlNDI2MDVlMDUwMTBlMTQ3MTEwNjg4ZTUycC0xLAotICAgIDB4MS5mZmNmZmZmZmZmZmY5cDMyMAotICB9LAotICB7IC8vIEVudHJ5IDUxMQotICAgIC0weDEuOTA2OGI5MGU0MjYwNWUwNTAxMGUxNDcxMTA2ODhlNTJwLTEsCi0gICAgLTB4MS5mZmNmZmZmZmZmZmY5cDMyMAotICB9LAotICB7IC8vIEVudHJ5IDUxMgotICAgIDB4MS5jZjgxNjQyZTc0MjFjNTY1MDdlYjgxODc2MTFjODRkYnAtMSwKLSAgICAweDEuZmZjZmZmZmZmZmZmZnAxMgotICB9LAotICB7IC8vIEVudHJ5IDUxMwotICAgIC0weDEuY2Y4MTY0MmU3NDIxYzU2NTA3ZWI4MTg3NjExYzg0ZGJwLTEsCi0gICAgLTB4MS5mZmNmZmZmZmZmZmZmcDEyCi0gIH0sCi0gIHsgLy8gRW50cnkgNTE0Ci0gICAgMHgxLmZmZmZmZmU2MWZlNjE2YjI4MmMzYTY5Y2EyMjVjMmQycC0xLAotICAgIDB4MS5mZmNmZmZmZmZmZmZmcDQwNAotICB9LAotICB7IC8vIEVudHJ5IDUxNQotICAgIC0weDEuZmZmZmZmZTYxZmU2MTZiMjgyYzNhNjljYTIyNWMyZDJwLTEsCi0gICAgLTB4MS5mZmNmZmZmZmZmZmZmcDQwNAotICB9LAotICB7IC8vIEVudHJ5IDUxNgotICAgIC0weDEuNDA2ZWU5YWU5MWUxNmYxZDU4Yzk2ZWI3MTY1ZjU5NWJwLTEsCi0gICAgMHgxLmZmZWZmZmZmZmZmY2NwOTk1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTE3Ci0gICAgMHgxLjQwNmVlOWFlOTFlMTZmMWQ1OGM5NmViNzE2NWY1OTVicC0xLAotICAgIC0weDEuZmZlZmZmZmZmZmZjY3A5OTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTgKLSAgICAweDEuZmE5ZjZjYTBlYzQ0ZTAwMTAwMjZmMzg1YzBhYjg2OTBwLTMsCi0gICAgMHgxLmZmZWZmZmZmZmZmZmZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTkKLSAgICAtMHgxLmZhOWY2Y2EwZWM0NGUwMDEwMDI2ZjM4NWMwYWI4NjkwcC0zLAotICAgIC0weDEuZmZlZmZmZmZmZmZmZnAtMwotICB9LAotICB7IC8vIEVudHJ5IDUyMAotICAgIDB4MS42YjQ5MWRiOGI2NmQ4ODAxMjFmODMwZDhjNzU1YWU1NHAtNCwKLSAgICAweDEuZmZlZmZmZmZmZmZmZnA1NQotICB9LAotICB7IC8vIEVudHJ5IDUyMQotICAgIC0weDEuNmI0OTFkYjhiNjZkODgwMTIxZjgzMGQ4Yzc1NWFlNTRwLTQsCi0gICAgLTB4MS5mZmVmZmZmZmZmZmZmcDU1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTIyCi0gICAgMHgxLmZiMGFiMTAyY2IxMmZlZjlhNGU0YTg2OWEyOTllZDQ2cC0xLAotICAgIDB4MS5mZmVmZmZmZmZmZmZmcDE4MAotICB9LAotICB7IC8vIEVudHJ5IDUyMwotICAgIC0weDEuZmIwYWIxMDJjYjEyZmVmOWE0ZTRhODY5YTI5OWVkNDZwLTEsCi0gICAgLTB4MS5mZmVmZmZmZmZmZmZmcDE4MAotICB9LAotICB7IC8vIEVudHJ5IDUyNAotICAgIDB4MS5lNDMxNWVjMDQ2MzVjZDM0YjNlZjYwMzcwNTExMjgxZnAtMywKLSAgICAweDEuZmZlZmZmZmZmZmZmZnA3MDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjUKLSAgICAtMHgxLmU0MzE1ZWMwNDYzNWNkMzRiM2VmNjAzNzA1MTEyODFmcC0zLAotICAgIC0weDEuZmZlZmZmZmZmZmZmZnA3MDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjYKLSAgICAweDEuZmZmZmMzOTk5N2VmNjdkMmI5YzdlNGVmYThiNzdlNTBwLTEsCi0gICAgMHgxLmZmZjFmZmZmZmZmZmZwNDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjcKLSAgICAtMHgxLmZmZmZjMzk5OTdlZjY3ZDJiOWM3ZTRlZmE4Yjc3ZTUwcC0xLAotICAgIC0weDEuZmZmMWZmZmZmZmZmZnA0MQotICB9LAotICB7IC8vIEVudHJ5IDUyOAotICAgIDB4MS5mZmYxNjM5OTI4MzFlOGM2OGIwMjM0YjQyZWZhMWQwYXAtNywKLSAgICAweDEuZmZmNmI4OWZmZmZmZnAtNwotICB9LAotICB7IC8vIEVudHJ5IDUyOQotICAgIC0weDEuZmZmMTYzOTkyODMxZThjNjhiMDIzNGI0MmVmYTFkMGFwLTcsCi0gICAgLTB4MS5mZmY2Yjg5ZmZmZmZmcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTMwCi0gICAgLTB4MS5kOTc1N2EwNWZjYzQyYzY2NGYzYTY2YjU1NzZhOThlNHAtMSwKLSAgICAweDEuZmZmZGZmZmYwMDAxZnAxMDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzEKLSAgICAweDEuZDk3NTdhMDVmY2M0MmM2NjRmM2E2NmI1NTc2YTk4ZTRwLTEsCi0gICAgLTB4MS5mZmZkZmZmZjAwMDFmcDEwNQotICB9LAotICB7IC8vIEVudHJ5IDUzMgotICAgIC0weDEuODM3OTFmZTYzYTE3YTgwMjU4ZjJjNDc5YzdlMWQzMzlwLTEsCi0gICAgMHgxLmZmZmYwYzAwMDAwMDJwMQotICB9LAotICB7IC8vIEVudHJ5IDUzMwotICAgIDB4MS44Mzc5MWZlNjNhMTdhODAyNThmMmM0NzljN2UxZDMzOXAtMSwKLSAgICAtMHgxLmZmZmYwYzAwMDAwMDJwMQotICB9LAotICB7IC8vIEVudHJ5IDUzNAotICAgIC0weDEuZDlkM2E4NWFjYzUwYzgwMDAwMDVkMTNkZDgyZjYxYjVwLTEsCi0gICAgMHgxLmZmZmZjMDAwMDAwNTVwMTUwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM1Ci0gICAgMHgxLmQ5ZDNhODVhY2M1MGM4MDAwMDA1ZDEzZGQ4MmY2MWI1cC0xLAotICAgIC0weDEuZmZmZmMwMDAwMDA1NXAxNTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzYKLSAgICAtMHgxLmYyNWQ4NThkY2RlZTc0MTJjZjA3NjBlOTU1Y2I4MzkwcC0zLAotICAgIDB4MS5mZmZmZTNmZmZmZmZmcDQwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM3Ci0gICAgMHgxLmYyNWQ4NThkY2RlZTc0MTJjZjA3NjBlOTU1Y2I4MzkwcC0zLAotICAgIC0weDEuZmZmZmUzZmZmZmZmZnA0MAotICB9LAotICB7IC8vIEVudHJ5IDUzOAotICAgIDB4MS5kMThmN2JmZTU1N2ViODAwMDE1NTcxNDJiZGExOGJhZXAtMSwKLSAgICAweDEuZmZmZmVmZmZjZmZhZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM5Ci0gICAgLTB4MS5kMThmN2JmZTU1N2ViODAwMDE1NTcxNDJiZGExOGJhZXAtMSwKLSAgICAtMHgxLmZmZmZlZmZmY2ZmYWVwMAotICB9LAotICB7IC8vIEVudHJ5IDU0MAotICAgIC0weDEuYmMxNGViZjZiZmI1MWZmYTVlNmY1YjBiMGJmOWU4OTlwLTQsCi0gICAgMHgxLmZmZmZmYmZmZmZmZmZwMjI4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTQxCi0gICAgMHgxLmJjMTRlYmY2YmZiNTFmZmE1ZTZmNWIwYjBiZjllODk5cC00LAotICAgIC0weDEuZmZmZmZiZmZmZmZmZnAyMjgKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDIKLSAgICAweDEuYmI4ODdhMDZmNmM1MGZlZjA2NTRkMzAzYzgyZjFhNzhwLTMsCi0gICAgMHgxLmZmZmZmYmZmZmZmZmZwNzM1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTQzCi0gICAgLTB4MS5iYjg4N2EwNmY2YzUwZmVmMDY1NGQzMDNjODJmMWE3OHAtMywKLSAgICAtMHgxLmZmZmZmYmZmZmZmZmZwNzM1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTQ0Ci0gICAgMHgxLmZmYWFhZGVmNTRlMmYwYzQwODE4ODBiN2I5ZTc5NGRmcC01LAotICAgIDB4MS5mZmZmZmVmZmZmZmZmcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTQ1Ci0gICAgLTB4MS5mZmFhYWRlZjU0ZTJmMGM0MDgxODgwYjdiOWU3OTRkZnAtNSwKLSAgICAtMHgxLmZmZmZmZWZmZmZmZmZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDYKLSAgICAweDEuZDRhM2M2MmM1YmUwOGIxMjM4NjhlOGE0NjdlZmYwY2VwLTEsCi0gICAgMHgxLmZmZmZmZjhwMTE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTQ3Ci0gICAgLTB4MS5kNGEzYzYyYzViZTA4YjEyMzg2OGU4YTQ2N2VmZjBjZXAtMSwKLSAgICAtMHgxLmZmZmZmZjhwMTE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTQ4Ci0gICAgMHgxLmNlYzIwZjE5NzcwM2Y0ZmQ0MjA0OGRkZjg4OWZlODRhcC0zLAotICAgIDB4MS5mZmZmZmY4cDE5MgotICB9LAotICB7IC8vIEVudHJ5IDU0OQotICAgIC0weDEuY2VjMjBmMTk3NzAzZjRmZDQyMDQ4ZGRmODg5ZmU4NGFwLTMsCi0gICAgLTB4MS5mZmZmZmY4cDE5MgotICB9LAotICB7IC8vIEVudHJ5IDU1MAotICAgIDB4MS5kMzdhYWRjN2M4NjYyNTAxNzUxZGJmNGU5ZTU3MDFhYnAtMiwKLSAgICAweDEuZmZmZmZmOHA1NDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTEKLSAgICAtMHgxLmQzN2FhZGM3Yzg2NjI1MDE3NTFkYmY0ZTllNTcwMWFicC0yLAotICAgIC0weDEuZmZmZmZmOHA1NDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTIKLSAgICAweDEuZmE4ZDJhNGQwYTIwMjdmMGY3NGRmMzEzNmNiNzhmNzJwLTEsCi0gICAgMHgxLmZmZmZmZmMwMDE4ZmZwMgotICB9LAotICB7IC8vIEVudHJ5IDU1MwotICAgIC0weDEuZmE4ZDJhNGQwYTIwMjdmMGY3NGRmMzEzNmNiNzhmNzJwLTEsCi0gICAgLTB4MS5mZmZmZmZjMDAxOGZmcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTQKLSAgICAweDEuZmE4ZDJhMDI5Zjk3N2ZmZTc0Y2IxNGNiMDlkZjE3NmRwLTEsCi0gICAgMHgxLmZmZmZmZmZmZWZmZmZwMgotICB9LAotICB7IC8vIEVudHJ5IDU1NQotICAgIC0weDEuZmE4ZDJhMDI5Zjk3N2ZmZTc0Y2IxNGNiMDlkZjE3NmRwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmVmZmZmcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTYKLSAgICAtMHgxLjI3NjNmMDJhMmQxZTk4MDAwMDAxNWRiZjk1ZDg5YWIycC00LAotICAgIDB4MS5mZmZmZmZmZmY4MjUwcDk0MwotICB9LAotICB7IC8vIEVudHJ5IDU1NwotICAgIDB4MS4yNzYzZjAyYTJkMWU5ODAwMDAwMTVkYmY5NWQ4OWFiMnAtNCwKLSAgICAtMHgxLmZmZmZmZmZmZjgyNTBwOTQzCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU4Ci0gICAgMHgxLmZjZmYxMjhmNzdkZGE4MWMyYTBlYzAzZTRlZDgwNDIycC0xLAotICAgIDB4MS5mZmZmZmZmZmZlMDlkcDMyMAotICB9LAotICB7IC8vIEVudHJ5IDU1OQotICAgIC0weDEuZmNmZjEyOGY3N2RkYTgxYzJhMGVjMDNlNGVkODA0MjJwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZlMDlkcDMyMAotICB9LAotICB7IC8vIEVudHJ5IDU2MAotICAgIC0weDEuZmNjMGJmZWRkODRhNTgxNmQ5NTk2YjhmOWZiYjliNDFwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmU2ZTNwNzIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYxCi0gICAgMHgxLmZjYzBiZmVkZDg0YTU4MTZkOTU5NmI4ZjlmYmI5YjQxcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZTZlM3A3MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjIKLSAgICAweDEuYWVkNTQ4ZjA5MGMxZGZmZTZlMDQzMjJkYzhlOGNiZmFwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZlN2ZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjMKLSAgICAtMHgxLmFlZDU0OGYwOTBjMWRmZmU2ZTA0MzIyZGM4ZThjYmZhcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmU3ZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDU2NAotICAgIC0weDEuZjVlMTFkZWY5OWQyYjIyMDk4MjQyYWM5ZmI3NTZhZGJwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZlZmZwMjUwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY1Ci0gICAgMHgxLmY1ZTExZGVmOTlkMmIyMjA5ODI0MmFjOWZiNzU2YWRicC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmVmZnAyNTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjYKLSAgICAweDEuOGE5Y2JmNDhmZWM5ZjJhMGZkZTk1MWYzMTNiOTE4Y2NwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmNzhwOTIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY3Ci0gICAgLTB4MS44YTljYmY0OGZlYzlmMmEwZmRlOTUxZjMxM2I5MThjY3AtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmNzhwOTIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY4Ci0gICAgLTB4MS43ZWJhNTg5NDg0NGNjMDBjODhmMzliZDNkNDE5N2QxNHAtMywKLSAgICAweDEuZmZmZmZmZmZmZmY4M3AxNTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjkKLSAgICAweDEuN2ViYTU4OTQ4NDRjYzAwYzg4ZjM5YmQzZDQxOTdkMTRwLTMsCi0gICAgLTB4MS5mZmZmZmZmZmZmZjgzcDE1MAotICB9LAotICB7IC8vIEVudHJ5IDU3MAotICAgIDB4MS45MmM0ZjA2ZDJjZGQxNWQzMDI2MDljYWE4Nzg4MmFmYXAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZkNXA5OTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzEKLSAgICAtMHgxLjkyYzRmMDZkMmNkZDE1ZDMwMjYwOWNhYTg3ODgyYWZhcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZkNXA5OTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzIKLSAgICAtMHgxLjNkNWY3ZGViMWQzYmFkNjNlYjE3M2I3M2U4NDExMGEwcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmU4cDcyMAotICB9LAotICB7IC8vIEVudHJ5IDU3MwotICAgIDB4MS4zZDVmN2RlYjFkM2JhZDYzZWIxNzNiNzNlODQxMTBhMHAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZThwNzIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc0Ci0gICAgLTB4MS45MTM0OWIwYWU5MGU1MzE2NTM5YzA3ZWVhOWI0ZTZiMHAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZlYnA5MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzUKLSAgICAweDEuOTEzNDliMGFlOTBlNTMxNjUzOWMwN2VlYTliNGU2YjBwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmVicDkyMAotICB9LAotICB7IC8vIEVudHJ5IDU3NgotICAgIC0weDEuODM3YjlkZGRjMWU4NzM4ZDc0YjJhNzRmYTQyZDgwMmRwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZjFwMQotICB9LAotICB7IC8vIEVudHJ5IDU3NwotICAgIDB4MS44MzdiOWRkZGMxZTg3MzhkNzRiMmE3NGZhNDJkODAyZHAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZjFwMQotICB9LAotICB7IC8vIEVudHJ5IDU3OAotICAgIDB4MS41MTBlMDYyZTdmYTIwMzdkMzg0MmRlOTkzYzljNTA5MHAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmMXAyNDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzkKLSAgICAtMHgxLjUxMGUwNjJlN2ZhMjAzN2QzODQyZGU5OTNjOWM1MDkwcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmMXAyNDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODAKLSAgICAweDEuZWFlZTg3NDRiMDVlNDdmZGUwOTJlM2ExNDg5NWQwNjdwLTIsCi0gICAgMHgxLmZmZmZmZmZmZmZmZjNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODEKLSAgICAtMHgxLmVhZWU4NzQ0YjA1ZTQ3ZmRlMDkyZTNhMTQ4OTVkMDY3cC0yLAotICAgIC0weDEuZmZmZmZmZmZmZmZmM3AtMgotICB9LAotICB7IC8vIEVudHJ5IDU4MgotICAgIDB4MS44YTRkZWU4ZjQwNjI3OTEwNzg3NjZiMGEwMWRlMzYwZHAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmNHA4NDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODMKLSAgICAtMHgxLjhhNGRlZThmNDA2Mjc5MTA3ODc2NmIwYTAxZGUzNjBkcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmNHA4NDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODQKLSAgICAweDEuNTExOGQ2YmJkZTA3ZTRlZWJmMmExMWRmNGRjNzRkNTRwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZjRwMTAyMAotICB9LAotICB7IC8vIEVudHJ5IDU4NQotICAgIC0weDEuNTExOGQ2YmJkZTA3ZTRlZWJmMmExMWRmNGRjNzRkNTRwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmY0cDEwMjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODYKLSAgICAtMHgxLjVjZDVjNTNjZjMwYTk3ZmYwZTQ3MWQxNDljNDA5NTVkcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmY4cDYxNgotICB9LAotICB7IC8vIEVudHJ5IDU4NwotICAgIDB4MS41Y2Q1YzUzY2YzMGE5N2ZmMGU0NzFkMTQ5YzQwOTU1ZHAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZjhwNjE2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTg4Ci0gICAgMHgxLmZmZmZhMWYwZDdkYWY2OTNhODBhMmI4MTdiMTZmMjc3cC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZjcDQ3NQotICB9LAotICB7IC8vIEVudHJ5IDU4OQotICAgIC0weDEuZmZmZmExZjBkN2RhZjY5M2E4MGEyYjgxN2IxNmYyNzdwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZjcDQ3NQotICB9LAotICB7IC8vIEVudHJ5IDU5MAotICAgIDB4MS41MWU5ZDg0MDEwNmQ3MzQ4NGQ0NGE4NmY3NGMzZDQxZHAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZXA5NzAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTEKLSAgICAtMHgxLjUxZTlkODQwMTA2ZDczNDg0ZDQ0YTg2Zjc0YzNkNDFkcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZXA5NzAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTIKLSAgICAtMC4wLAotICAgIC0weDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDU5MwotICAgIDAuMCwKLSAgICAweDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDU5NAotICAgIC0wLjAsCi0gICAgLTAuMAotICB9LAotICB7IC8vIEVudHJ5IDU5NQotICAgIDAuMCwKLSAgICAweDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDU5NgotICAgIC0wLjAsCi0gICAgLTB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTk3Ci0gICAgLTB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMiwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTgKLSAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTkKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIC0weDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDYwMAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKLSAgICAweDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDYwMQotICAgIC0weDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAyCi0gICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAzCi0gICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA0Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZkZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCi0gICAgMHgxLjBwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDYKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIC0weDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDYwNwotICAgIDB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMiwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDYwOAotICAgIC0weDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA5Ci0gICAgMHgxLjk5OTk5OTZkZThjYTE5OGMyNGFiOTQ0OWJlZWUxNmQ1cC0xMywKLSAgICAweDEuOTk5OTk5OTk5OTk5YXAtMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTAKLSAgICAtMHgxLjk5OTk5OTZkZThjYTE5OGMyNGFiOTQ0OWJlZWUxNmQ1cC0xMywKLSAgICAtMHgxLjk5OTk5OTk5OTk5OWFwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgNjExCi0gICAgMHgxLjk5OTk5OGVhZDY1Yjk2Zjc4YTRkYmZkODM5YzdlZjJlcC0xMiwKLSAgICAweDEuOTk5OTk5OTk5OTk5YXAtMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTIKLSAgICAtMHgxLjk5OTk5OGVhZDY1Yjk2Zjc4YTRkYmZkODM5YzdlZjJlcC0xMiwKLSAgICAtMHgxLjk5OTk5OTk5OTk5OWFwLTEyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEzCi0gICAgMHgxLjMzMzMzMjBjNDliYWJmZjE1MWI2ZDA0MjkwZTJjM2EycC0xMSwKLSAgICAweDEuMzMzMzMzMzMzMzMzNHAtMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTQKLSAgICAtMHgxLjMzMzMzMjBjNDliYWJmZjE1MWI2ZDA0MjkwZTJjM2EycC0xMSwKLSAgICAtMHgxLjMzMzMzMzMzMzMzMzRwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE1Ci0gICAgMHgxLjk5OTk5NmRlOGNhMjg4NGRhMmYwOGYyNWJiMDI0ZDA4cC0xMSwKLSAgICAweDEuOTk5OTk5OTk5OTk5YXAtMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTYKLSAgICAtMHgxLjk5OTk5NmRlOGNhMjg4NGRhMmYwOGYyNWJiMDI0ZDA4cC0xMSwKLSAgICAtMHgxLjk5OTk5OTk5OTk5OWFwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE3Ci0gICAgMHgxLmZmZmZmYWFhYWFhZWVlZWVlZDRlZDRlZGFiNGM3YmQ2cC0xMSwKLSAgICAweDEuMHAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTgKLSAgICAtMHgxLmZmZmZmYWFhYWFhZWVlZWVlZDRlZDRlZGFiNGM3YmQ2cC0xMSwKLSAgICAtMHgxLjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE5Ci0gICAgMHgxLjMzMzMyZTk3OGQ1NTJhZmM4ODNiZGIwNDc1MWUzODM1cC0xMCwKLSAgICAweDEuMzMzMzMzMzMzMzMzM3AtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjAKLSAgICAtMHgxLjMzMzMyZTk3OGQ1NTJhZmM4ODNiZGIwNDc1MWUzODM1cC0xMCwKLSAgICAtMHgxLjMzMzMzMzMzMzMzMzNwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjIxCi0gICAgMHgxLjY2NjY1ZjE1MjlhZmY4YTM4MDkyNDY2NzBhNDM2YzNjcC0xMCwKLSAgICAweDEuNjY2NjY2NjY2NjY2NnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjIKLSAgICAtMHgxLjY2NjY1ZjE1MjlhZmY4YTM4MDkyNDY2NzBhNDM2YzNjcC0xMCwKLSAgICAtMHgxLjY2NjY2NjY2NjY2NjZwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjIzCi0gICAgMHgxLjk5OTk4ZWFkNjVjZGY4MmUxOTRjMTMzOTk3ZjJmYjY4cC0xMCwKLSAgICAweDEuOTk5OTk5OTk5OTk5OXAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjQKLSAgICAtMHgxLjk5OTk4ZWFkNjVjZGY4MmUxOTRjMTMzOTk3ZjJmYjY4cC0xMCwKLSAgICAtMHgxLjk5OTk5OTk5OTk5OTlwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI1Ci0gICAgMHgxLmNjY2NiZDNmN2QxNWQ0MmFmZmI5ZjAyYmYxZGMyNTdicC0xMCwKLSAgICAweDEuY2NjY2NjY2NjY2NjY3AtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjYKLSAgICAtMHgxLmNjY2NiZDNmN2QxNWQ0MmFmZmI5ZjAyYmYxZGMyNTdicC0xMCwKLSAgICAtMHgxLmNjY2NjY2NjY2NjY2NwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI3Ci0gICAgMHgxLjA2NjVhZTljN2I0NGVkMjgwMjE2YmUyMTA0ZjI4ZjAycC03LAotICAgIDB4MS4wNjY2NjY2NjY2NjY2cC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjI4Ci0gICAgLTB4MS4wNjY1YWU5YzdiNDRlZDI4MDIxNmJlMjEwNGYyOGYwMnAtNywKLSAgICAtMHgxLjA2NjY2NjY2NjY2NjZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjkKLSAgICAweDEuY2NjOGU5N2I1OWY2MTg4OThjNGFjM2EwYWVkZGY3MDlwLTcsCi0gICAgMHgxLmNjY2NjY2NjY2NjY2NwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzAKLSAgICAtMHgxLmNjYzhlOTdiNTlmNjE4ODk4YzRhYzNhMGFlZGRmNzA5cC03LAotICAgIC0weDEuY2NjY2NjY2NjY2NjY3AtNwotICB9LAotICB7IC8vIEVudHJ5IDYzMQotICAgIDB4MS40OTkzZThhOGZmNzliMTMyMDQ2ZWZhNzg1NmE5NzUzOHAtNiwKLSAgICAweDEuNDk5OTk5OTk5OTk5OXAtNgotICB9LAotICB7IC8vIEVudHJ5IDYzMgotICAgIC0weDEuNDk5M2U4YThmZjc5YjEzMjA0NmVmYTc4NTZhOTc1MzhwLTYsCi0gICAgLTB4MS40OTk5OTk5OTk5OTk5cC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjMzCi0gICAgMHgxLmFjYzA0NGM1NmRiMGUxOWY4MmM5YzNjZmYyNDZlMjAxcC02LAotICAgIDB4MS5hY2NjY2NjY2NjY2NjcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjM0Ci0gICAgLTB4MS5hY2MwNDRjNTZkYjBlMTlmODJjOWMzY2ZmMjQ2ZTIwMXAtNiwKLSAgICAtMHgxLmFjY2NjY2NjY2NjY2NwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzUKLSAgICAweDEuMDdmNDRkNjdjZjQxYWZiYzBjOTUxMDhiOTlmOTFiMDFwLTUsCi0gICAgMHgxLjA4MHAtNQotICB9LAotICB7IC8vIEVudHJ5IDYzNgotICAgIC0weDEuMDdmNDRkNjdjZjQxYWZiYzBjOTUxMDhiOTlmOTFiMDFwLTUsCi0gICAgLTB4MS4wODBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzcKLSAgICAweDEuMzk4NWZlNDZmMWM4NzE0ZWFhMTQxODU2MTk2M2U4OWJwLTUsCi0gICAgMHgxLjM5OTk5OTk5OTk5OWFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzgKLSAgICAtMHgxLjM5ODVmZTQ2ZjFjODcxNGVhYTE0MTg1NjE5NjNlODlicC01LAotICAgIC0weDEuMzk5OTk5OTk5OTk5YXAtNQotICB9LAotICB7IC8vIEVudHJ5IDYzOQotICAgIDB4MS42YjE0YmRlOTNhYzVmN2QyNDU0NGQwZWNmOGJlN2FlZXAtNSwKLSAgICAweDEuNmIzMzMzMzMzMzMzNHAtNQotICB9LAotICB7IC8vIEVudHJ5IDY0MAotICAgIC0weDEuNmIxNGJkZTkzYWM1ZjdkMjQ1NDRkMGVjZjhiZTdhZWVwLTUsCi0gICAgLTB4MS42YjMzMzMzMzMzMzM0cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjQxCi0gICAgMHgxLjljYTAxNTNlZDgzOTZiMDJmODYwNTIxOWE1ZmU1OTE3cC01LAotICAgIDB4MS45Y2NjY2NjY2NjY2NlcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjQyCi0gICAgLTB4MS45Y2EwMTUzZWQ4Mzk2YjAyZjg2MDUyMTlhNWZlNTkxN3AtNSwKLSAgICAtMHgxLjljY2NjY2NjY2NjY2VwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDMKLSAgICAweDEuY2UyNzhkNDAyN2QzNDM4N2YxODRkNGFiMmFhZjU0NWZwLTUsCi0gICAgMHgxLmNlNjY2NjY2NjY2NjZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDQKLSAgICAtMHgxLmNlMjc4ZDQwMjdkMzQzODdmMTg0ZDRhYjJhYWY1NDVmcC01LAotICAgIC0weDEuY2U2NjY2NjY2NjY2NnAtNQotICB9LAotICB7IC8vIEVudHJ5IDY0NQotICAgIDB4MS40M2MxZTljMTcxYTY2N2EwYjkyNTE5YTA0ZmE1YTkxY3AtMSwKLSAgICAweDEuNWU3ZmM0MzY5YmRhZHAtMQotICB9LAotICB7IC8vIEVudHJ5IDY0NgotICAgIC0weDEuNDNjMWU5YzE3MWE2NjdhMGI5MjUxOWEwNGZhNWE5MWNwLTEsCi0gICAgLTB4MS41ZTdmYzQzNjliZGFkcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ3Ci0gICAgMHgxLmVlM2Q2YmNlYTA5Y2ExOGIxZDFjZTdlZTA0ZmQ4ODZmcC0xLAotICAgIDB4MS40ZTdmYzQzNjliZGFkcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDgKLSAgICAtMHgxLmVlM2Q2YmNlYTA5Y2ExOGIxZDFjZTdlZTA0ZmQ4ODZmcC0xLAotICAgIC0weDEuNGU3ZmM0MzY5YmRhZHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ5Ci0gICAgMHgxLmRmOGUyMmVhODA5ZDY1YzZhNjliOTZhY2E2MGJlNDMycC0xLAotICAgIDB4MS5lZGJmYTY1MWU5Yzg0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTAKLSAgICAtMHgxLmRmOGUyMmVhODA5ZDY1YzZhNjliOTZhY2E2MGJlNDMycC0xLAotICAgIC0weDEuZWRiZmE2NTFlOWM4NHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUxCi0gICAgMHgxLjFkMzQ3OWVhYzdhZTM1ZTJmYmVhMGFlNjk2NDM0NjkycC0xLAotICAgIDB4MS40NjdmYzQzNjliZGFkcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTIKLSAgICAtMHgxLjFkMzQ3OWVhYzdhZTM1ZTJmYmVhMGFlNjk2NDM0NjkycC0xLAotICAgIC0weDEuNDY3ZmM0MzY5YmRhZHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUzCi0gICAgLTB4MS5mZmVhYWFlZWVlODRiNDRjY2VmZWY4MzIyNTRkMjhjMHAtNiwKLSAgICAweDEuOTYxZmI1NDQ0MmQxOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU0Ci0gICAgMHgxLmZmZWFhYWVlZWU4NGI0NGNjZWZlZjgzMjI1NGQyOGMwcC02LAotICAgIC0weDEuOTYxZmI1NDQ0MmQxOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU1Ci0gICAgLTB4MS4zNzM0ZDMyZDQ5YmQwYjk0Mjc3MmE3NTY3ZDUxNDE0MHAtMSwKLSAgICAweDEuZTViZmE2NTFlOWM4M3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU2Ci0gICAgMHgxLjM3MzRkMzJkNDliZDBiOTQyNzcyYTc1NjdkNTE0MTQwcC0xLAotICAgIC0weDEuZTViZmE2NTFlOWM4M3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU3Ci0gICAgLTB4MS5lOWQyNWQxOTkxMWUyMDViNjUzNTIxZjQyYjliODY0ZnAtMSwKLSAgICAweDEuMWFhZmNiYWZjODVmN3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU4Ci0gICAgMHgxLmU5ZDI1ZDE5OTExZTIwNWI2NTM1MjFmNDJiOWI4NjRmcC0xLAotICAgIC0weDEuMWFhZmNiYWZjODVmN3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU5Ci0gICAgLTB4MS5lNGVjZGM1YTRlNDY1ODk5OTI4ZWI5ZmM5NTgyOWQ0OHAtMSwKLSAgICAweDEuNDI3ZmM0MzY5YmRhZHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYwCi0gICAgMHgxLmU0ZWNkYzVhNGU0NjU4OTk5MjhlYjlmYzk1ODI5ZDQ4cC0xLAotICAgIC0weDEuNDI3ZmM0MzY5YmRhZHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYxCi0gICAgLTB4MS4yYTU5ZjEwMzQ0MjYxOTdmYTZlZWUyMjc2Mjk2N2YyNXAtMSwKLSAgICAweDEuNmE0ZmJjYmQ2ZjU2MnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYyCi0gICAgMHgxLjJhNTlmMTAzNDQyNjE5N2ZhNmVlZTIyNzYyOTY3ZjI1cC0xLAotICAgIC0weDEuNmE0ZmJjYmQ2ZjU2MnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYzCi0gICAgLTB4MS4yNjMxMjQ0M2JkMzVmMTkzMTJlYWMwYTFhNmI1NjU5ZXAtMSwKLSAgICAweDEuNmFmMmVmZjBhMjg5NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY0Ci0gICAgMHgxLjI2MzEyNDQzYmQzNWYxOTMxMmVhYzBhMWE2YjU2NTllcC0xLAotICAgIC0weDEuNmFmMmVmZjBhMjg5NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY1Ci0gICAgLTB4MS5lMThlNjYwYTVlMmZiMzE2ZWNiYjllZDcwMTIyZWZmNXAtMSwKLSAgICAweDEuNDNjNjJhOWQwMjQxNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY2Ci0gICAgMHgxLmUxOGU2NjBhNWUyZmIzMTZlY2JiOWVkNzAxMjJlZmY1cC0xLAotICAgIC0weDEuNDNjNjJhOWQwMjQxNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY3Ci0gICAgLTB4MS5lZTBlODNhMDE5OGI2ZTJlZjdjNDhlNjYyNTI5MWEwYXAtMSwKLSAgICAweDEuMWM5OTY1NDk2MWY5MnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY4Ci0gICAgMHgxLmVlMGU4M2EwMTk4YjZlMmVmN2M0OGU2NjI1MjkxYTBhcC0xLAotICAgIC0weDEuMWM5OTY1NDk2MWY5MnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY5Ci0gICAgLTB4MS40NzI3NzQ3MzM4ZTQ2NTM2MTZlYWRiZDdlYzNkMDJkM3AtMSwKLSAgICAweDEuZWFkOTNmZWI4MzYxZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcwCi0gICAgMHgxLjQ3Mjc3NDczMzhlNDY1MzYxNmVhZGJkN2VjM2QwMmQzcC0xLAotICAgIC0weDEuZWFkOTNmZWI4MzYxZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcxCi0gICAgLTB4MS40YmEyZjc1ZGRhNWZlNDM0MzIwOTA1YTcxODRmZjFhZnAtNCwKLSAgICAweDEuOWM3ZmI1NDQ0MmQxYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcyCi0gICAgMHgxLjRiYTJmNzVkZGE1ZmU0MzQzMjA5MDVhNzE4NGZmMWFmcC00LAotICAgIC0weDEuOWM3ZmI1NDQ0MmQxYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjczCi0gICAgMHgxLjAzNGM0ZDYzM2I0ZWYwYTkwODliNDM4OTJhNDYyYTI2cC0xLAotICAgIDB4MS40ZTI2MmE5ZDAyNDE1cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzQKLSAgICAtMHgxLjAzNGM0ZDYzM2I0ZWYwYTkwODliNDM4OTJhNDYyYTI2cC0xLAotICAgIC0weDEuNGUyNjJhOWQwMjQxNXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc1Ci0gICAgMHgxLmQxZTRjZGUyZjM5NDRmNGMxMzRjMDVjYzRlNTMzOWEzcC0xLAotICAgIDB4MS5mZjk5M2ZlYjgzNjIwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzYKLSAgICAtMHgxLmQxZTRjZGUyZjM5NDRmNGMxMzRjMDVjYzRlNTMzOWEzcC0xLAotICAgIC0weDEuZmY5OTNmZWI4MzYyMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc3Ci0gICAgMHgxLmY3NTAyMzVjOTQ5OTI2YzQ4YzkwZTQxYTkxNDc0YzA2cC0xLAotICAgIDB4MS42MmU2MmE5ZDAyNDE2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzgKLSAgICAtMHgxLmY3NTAyMzVjOTQ5OTI2YzQ4YzkwZTQxYTkxNDc0YzA2cC0xLAotICAgIC0weDEuNjJlNjJhOWQwMjQxNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc5Ci0gICAgMHgxLjY1ZjdkNTcxMjc5YjBiODAwNTU1MmZkNDdhMmU3N2FlcC0xLAotICAgIDB4MS44YzY2MmE5ZDAyNDE5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgwCi0gICAgLTB4MS42NWY3ZDU3MTI3OWIwYjgwMDU1NTJmZDQ3YTJlNzdhZXAtMSwKLSAgICAtMHgxLjhjNjYyYTlkMDI0MTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODEKLSAgICAtMHgxLmZlMDQzZjU3MzY5ZDZhNTJmYTMzZjAxMTllYzRkYTE5cC0xLAotICAgIC0weDEuYThhYTFkMTFjNDRmZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgyCi0gICAgMHgxLmZlMDQzZjU3MzY5ZDZhNTJmYTMzZjAxMTllYzRkYTE5cC0xLAotICAgIDB4MS5hOGFhMWQxMWM0NGZmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODMKLSAgICAtMHgxLmZmZjE4ZjI0ZjNlNGI4N2JmOGMzNzYyY2I0NGY0NmQ2cC0xLAotICAgIC0weDEuOTVlYzhiOWUwM2Q1NHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg0Ci0gICAgMHgxLmZmZjE4ZjI0ZjNlNGI4N2JmOGMzNzYyY2I0NGY0NmQ2cC0xLAotICAgIDB4MS45NWVjOGI5ZTAzZDU0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODUKLSAgICAtMHgxLmZmMjBkOTYxNjI0ZTcwNjNhNzgyMDNiODExZjU3OWNhcC0xLAotICAgIC0weDEuODMyZWZhMmE0MzVhOXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg2Ci0gICAgMHgxLmZmMjBkOTYxNjI0ZTcwNjNhNzgyMDNiODExZjU3OWNhcC0xLAotICAgIDB4MS44MzJlZmEyYTQzNWE5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODcKLSAgICAtMHgxLmZiOTMzYzQwMTA3ZmQ3NzUxODVhYzE0OTE4YzhmYmFmcC0xLAotICAgIC0weDEuNzA3MTY4YjY4MmRmZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg4Ci0gICAgMHgxLmZiOTMzYzQwMTA3ZmQ3NzUxODVhYzE0OTE4YzhmYmFmcC0xLAotICAgIDB4MS43MDcxNjhiNjgyZGZlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODkKLSAgICAtMHgxLmY1NGQ5NzE4ODFhZDY4NWI3ODJlZjg4ZTYzNTBmN2NkcC0xLAotICAgIC0weDEuNWRiM2Q3NDJjMjY1M3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkwCi0gICAgMHgxLmY1NGQ5NzE4ODFhZDY4NWI3ODJlZjg4ZTYzNTBmN2NkcC0xLAotICAgIDB4MS41ZGIzZDc0MmMyNjUzcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTEKLSAgICAtMHgxLmVjNTg4M2I3YjZjZjRkODU5YWIwNGUxNWQ1MzY5OGM5cC0xLAotICAgIC0weDEuNGFmNjQ1Y2YwMWVhOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkyCi0gICAgMHgxLmVjNTg4M2I3YjZjZjRkODU5YWIwNGUxNWQ1MzY5OGM5cC0xLAotICAgIDB4MS40YWY2NDVjZjAxZWE4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTMKLSAgICAtMHgxLmUwYzA0YTk0ZTE3MzA5YzgwNmMxYzc4YmRkYzFkNjA3cC0xLAotICAgIC0weDEuMzgzOGI0NWI0MTZmZHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk0Ci0gICAgMHgxLmUwYzA0YTk0ZTE3MzA5YzgwNmMxYzc4YmRkYzFkNjA3cC0xLAotICAgIDB4MS4zODM4YjQ1YjQxNmZkcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTUKLSAgICAtMHgxLmQyOTRkMWY5NmM3ZWJkYjk4NjlkZDk3Y2Y1NzRkZGI5cC0xLAotICAgIC0weDEuMjU3YjIyZTc4MGY1MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk2Ci0gICAgMHgxLmQyOTRkMWY5NmM3ZWJkYjk4NjlkZDk3Y2Y1NzRkZGI5cC0xLAotICAgIDB4MS4yNTdiMjJlNzgwZjUycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTcKLSAgICAtMHgxLmMxZTk4ODMzNzNkN2VjYzQ4YzkyZGM4ODc1NTA1ZjdlcC0xLAotICAgIC0weDEuMTJiZDkxNzNjMDdhYnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk4Ci0gICAgMHgxLmMxZTk4ODMzNzNkN2VjYzQ4YzkyZGM4ODc1NTA1ZjdlcC0xLAotICAgIDB4MS4xMmJkOTE3M2MwN2FicDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTkKLSAgICAtMHgxLmEyYzI4OWQ5ZDA1NWFjMzc3ZjY3ZDdhNTRhMGIzMDA1cC0xLAotICAgIC0weDEuZWE1YzNlZDViMzg1MHAtMQotICB9LAotICB7IC8vIEVudHJ5IDcwMAotICAgIDB4MS5hMmMyODlkOWQwNTVhYzM3N2Y2N2Q3YTU0YTBiMzAwNXAtMSwKLSAgICAweDEuZWE1YzNlZDViMzg1MHAtMQotICB9LAotICB7IC8vIEVudHJ5IDcwMQotICAgIC0weDEuOTVmMDUyNTdkYmNiNWY0YjEyNjM2YzU4NzhlYTQwNWFwLTEsCi0gICAgLTB4MS5kNGI4N2RhYjY3MGEwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzAyCi0gICAgMHgxLjk1ZjA1MjU3ZGJjYjVmNGIxMjYzNmM1ODc4ZWE0MDVhcC0xLAotICAgIDB4MS5kNGI4N2RhYjY3MGEwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzAzCi0gICAgLTB4MS44ODY0N2YyNmE2ZTBmNmIyNzE1YTZjMzc5N2VjMTFmNXAtMSwKLSAgICAtMHgxLmJmMTRiYzgxMWE4ZjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDQKLSAgICAweDEuODg2NDdmMjZhNmUwZjZiMjcxNWE2YzM3OTdlYzExZjVwLTEsCi0gICAgMHgxLmJmMTRiYzgxMWE4ZjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDUKLSAgICAtMHgxLjdhMjU0MWRmZDRlNzUyZGUzOGYwNGFiYTIxZmM5ZDlmcC0xLAotICAgIC0weDEuYTk3MGZiNTZjZTE0MHAtMQotICB9LAotICB7IC8vIEVudHJ5IDcwNgotICAgIDB4MS43YTI1NDFkZmQ0ZTc1MmRlMzhmMDRhYmEyMWZjOWQ5ZnAtMSwKLSAgICAweDEuYTk3MGZiNTZjZTE0MHAtMQotICB9LAotICB7IC8vIEVudHJ5IDcwNwotICAgIC0weDEuNmIzOTFlMjViYzI2Y2JiY2Y3YTAxODQwNzBhZjljMzlwLTEsCi0gICAgLTB4MS45M2NkM2EyYzgxOTkwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA4Ci0gICAgMHgxLjZiMzkxZTI1YmMyNmNiYmNmN2EwMTg0MDcwYWY5YzM5cC0xLAotICAgIDB4MS45M2NkM2EyYzgxOTkwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA5Ci0gICAgLTB4MS41YmE2ZTZhOGU3MDY1MzViOThmYzk5ZGZhZWY4MjRmMXAtMSwKLSAgICAtMHgxLjdlMjk3OTAyMzUxZTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTAKLSAgICAweDEuNWJhNmU2YThlNzA2NTM1Yjk4ZmM5OWRmYWVmODI0ZjFwLTEsCi0gICAgMHgxLjdlMjk3OTAyMzUxZTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTEKLSAgICAtMHgxLjRiNzViYTA5NmZhNTQ5ZWI5MzU5NWQ4MTk0YWI5MTdmcC0xLAotICAgIC0weDEuNjg4NWI3ZDdlOGEzMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDcxMgotICAgIDB4MS40Yjc1YmEwOTZmYTU0OWViOTM1OTVkODE5NGFiOTE3ZnAtMSwKLSAgICAweDEuNjg4NWI3ZDdlOGEzMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDcxMwotICAgIC0weDEuM2FhY2ZmOTVhMzEyMmIxNWYzNzJiZmQyZmRmOWE3NWZwLTEsCi0gICAgLTB4MS41MmUxZjZhZDljMjgwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE0Ci0gICAgMHgxLjNhYWNmZjk1YTMxMjJiMTVmMzcyYmZkMmZkZjlhNzVmcC0xLAotICAgIDB4MS41MmUxZjZhZDljMjgwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE1Ci0gICAgLTB4MS4yOTU0NjNlNzY5Mjg0YTVhZWQxN2E0NDMzOTJmMzhmM3AtMSwKLSAgICAtMHgxLjNkM2UzNTgzNGZhZDBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTYKLSAgICAweDEuMjk1NDYzZTc2OTI4NGE1YWVkMTdhNDQzMzkyZjM4ZjNwLTEsCi0gICAgMHgxLjNkM2UzNTgzNGZhZDBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTcKLSAgICAtMHgxLmZjNzY5Yjc3ZTU4ODQ5NWE2ZjY0MmNhMjRlNGVkM2ZjcC0yLAotICAgIC0weDEuMGEwYjAyNTAxYzc5OXAtMQotICB9LAotICB7IC8vIEVudHJ5IDcxOAotICAgIDB4MS5mYzc2OWI3N2U1ODg0OTVhNmY2NDJjYTI0ZTRlZDNmY3AtMiwKLSAgICAweDEuMGEwYjAyNTAxYzc5OXAtMQotICB9LAotICB7IC8vIEVudHJ5IDcxOQotICAgIC0weDEuYzg1M2M3ODQ2MmRlNDZiNTc0MzMxNTYxMmY4YjVhN2NwLTIsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODJjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIwCi0gICAgMHgxLmM4NTNjNzg0NjJkZTQ2YjU3NDMzMTU2MTJmOGI1YTdjcC0yLAotICAgIDB4MS5kOGY3MjA4ZTZiODJjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIxCi0gICAgLTB4MS45MmFiYTkwYWFmMjcyNDlkZTQ5Yzc4ZmM2NDNjOGI3MnAtMiwKLSAgICAtMHgxLjlkZDgzYzdjOWUxMjZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjIKLSAgICAweDEuOTJhYmE5MGFhZjI3MjQ5ZGU0OWM3OGZjNjQzYzhiNzJwLTIsCi0gICAgMHgxLjlkZDgzYzdjOWUxMjZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjMKLSAgICAtMHgxLjViYWMwNjQ2NThmMzk0NjBjODMxMTNjMGEwMDk3YTBjcC0yLAotICAgIC0weDEuNjJiOTU4NmFkMGEyMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDcyNAotICAgIDB4MS41YmFjMDY0NjU4ZjM5NDYwYzgzMTEzYzBhMDA5N2EwY3AtMiwKLSAgICAweDEuNjJiOTU4NmFkMGEyMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDcyNQotICAgIC0weDEuMjM4M2NhODA3OGU1ODQ3N2NkNWZiMWQ5ZGUwMzFkY2VwLTIsCi0gICAgLTB4MS4yNzlhNzQ1OTAzMzFhcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI2Ci0gICAgMHgxLjIzODNjYTgwNzhlNTg0NzdjZDVmYjFkOWRlMDMxZGNlcC0yLAotICAgIDB4MS4yNzlhNzQ1OTAzMzFhcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI3Ci0gICAgLTB4MS5kNGM1YmMxMWQyMzcxYWYyZmUyNWVmNWVkZTI3NjZhM3AtMywKLSAgICAtMHgxLmQ4ZjcyMDhlNmI4MjlwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjgKLSAgICAweDEuZDRjNWJjMTFkMjM3MWFmMmZlMjVlZjVlZGUyNzY2YTNwLTMsCi0gICAgMHgxLmQ4ZjcyMDhlNmI4MjlwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjkKLSAgICAtMHgxLjYwZjNmYWFmNDMwMjNkM2M3ODYzYWUwNmQ0ZDU5Nzc0cC0zLAotICAgIC0weDEuNjJiOTU4NmFkMGExZXAtMwotICB9LAotICB7IC8vIEVudHJ5IDczMAotICAgIDB4MS42MGYzZmFhZjQzMDIzZDNjNzg2M2FlMDZkNGQ1OTc3NHAtMywKLSAgICAweDEuNjJiOTU4NmFkMGExZXAtMwotICB9LAotICB7IC8vIEVudHJ5IDczMQotICAgIC0weDEuZDdlYTNkZTQ1YTlkNjU2M2FjMDA1YzBjNWJhZDhjNTBwLTQsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODI2cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzMyCi0gICAgMHgxLmQ3ZWEzZGU0NWE5ZDY1NjNhYzAwNWMwYzViYWQ4YzUwcC00LAotICAgIDB4MS5kOGY3MjA4ZTZiODI2cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzMzCi0gICAgLTB4MS5kOGIzZGY0ODk5ODdhNmZlMGVlYWQwMDhlNzIwYWEyMnAtNSwKLSAgICAtMHgxLmQ4ZjcyMDhlNmI4MmRwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzQKLSAgICAweDEuZDhiM2RmNDg5OTg3YTZmZTBlZWFkMDA4ZTcyMGFhMjJwLTUsCi0gICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzUKLSAgICAweDEuZDhiM2RmNDg5OTg3YTZmZTBlZWFkMDA4ZTcyMGFhMjJwLTUsCi0gICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzYKLSAgICAtMHgxLmQ4YjNkZjQ4OTk4N2E2ZmUwZWVhZDAwOGU3MjBhYTIycC01LAotICAgIC0weDEuZDhmNzIwOGU2YjgyZHAtNQotICB9LAotICB7IC8vIEVudHJ5IDczNwotICAgIDB4MS5kN2VhM2RlNDVhOWRkNGE0YmNjZDFhOGMwNDhmYWY0Y3AtNCwKLSAgICAweDEuZDhmNzIwOGU2YjgyZHAtNAotICB9LAotICB7IC8vIEVudHJ5IDczOAotICAgIC0weDEuZDdlYTNkZTQ1YTlkZDRhNGJjY2QxYThjMDQ4ZmFmNGNwLTQsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODJkcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzM5Ci0gICAgMHgxLjYwZjNmYWFmNDMwMjdjNDc1MmY1NjRmOWQwODE4ZmU4cC0zLAotICAgIDB4MS42MmI5NTg2YWQwYTIycC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQwCi0gICAgLTB4MS42MGYzZmFhZjQzMDI3YzQ3NTJmNTY0ZjlkMDgxOGZlOHAtMywKLSAgICAtMHgxLjYyYjk1ODZhZDBhMjJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDEKLSAgICAweDEuZDRjNWJjMTFkMjM3NTk0MDA2NDJlNWExZWZkYzBmODVwLTMsCi0gICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDIKLSAgICAtMHgxLmQ0YzViYzExZDIzNzU5NDAwNjQyZTVhMWVmZGMwZjg1cC0zLAotICAgIC0weDEuZDhmNzIwOGU2YjgyZHAtMwotICB9LAotICB7IC8vIEVudHJ5IDc0MwotICAgIDB4MS4yMzgzY2E4MDc4ZTVhMzI0ZDUyYzE1MzA3NDJjZDRmNXAtMiwKLSAgICAweDEuMjc5YTc0NTkwMzMxY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDc0NAotICAgIC0weDEuMjM4M2NhODA3OGU1YTMyNGQ1MmMxNTMwNzQyY2Q0ZjVwLTIsCi0gICAgLTB4MS4yNzlhNzQ1OTAzMzFjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ1Ci0gICAgMHgxLjViYWMwNjQ2NThmM2IyN2EyODU3MmJlYTI1NjE5NWVmcC0yLAotICAgIDB4MS42MmI5NTg2YWQwYTIycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ2Ci0gICAgLTB4MS41YmFjMDY0NjU4ZjNiMjdhMjg1NzJiZWEyNTYxOTVlZnAtMiwKLSAgICAtMHgxLjYyYjk1ODZhZDBhMjJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDcKLSAgICAweDEuOTJhYmE5MGFhZjI3NDIwOWVmYWVkMDhlMzQwNzFlM2JwLTIsCi0gICAgMHgxLjlkZDgzYzdjOWUxMjhwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDgKLSAgICAtMHgxLjkyYWJhOTBhYWYyNzQyMDllZmFlZDA4ZTM0MDcxZTNicC0yLAotICAgIC0weDEuOWRkODNjN2M5ZTEyOHAtMgotICB9LAotICB7IC8vIEVudHJ5IDc0OQotICAgIDB4MS5jODUzYzc4NDYyZGU2MzViMTBhMmI5M2FmZDc1ZGEyNnAtMiwKLSAgICAweDEuZDhmNzIwOGU2YjgyZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDc1MAotICAgIC0weDEuYzg1M2M3ODQ2MmRlNjM1YjEwYTJiOTNhZmQ3NWRhMjZwLTIsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODJlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUxCi0gICAgMHgxLmZjNzY5Yjc3ZTU4ODQ5NWE2ZjY0MmNhMjRlNGVkM2ZjcC0yLAotICAgIDB4MS4wYTBiMDI1MDFjNzk5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUyCi0gICAgLTB4MS5mYzc2OWI3N2U1ODg0OTVhNmY2NDJjYTI0ZTRlZDNmY3AtMiwKLSAgICAtMHgxLjBhMGIwMjUwMWM3OTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTMKLSAgICAweDEuMjk1NDYzZTc2OTI4MTY0MGFlMDI2ZjUwZmM0NWUzMDFwLTEsCi0gICAgMHgxLjNkM2UzNTgzNGZhY2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTQKLSAgICAtMHgxLjI5NTQ2M2U3NjkyODE2NDBhZTAyNmY1MGZjNDVlMzAxcC0xLAotICAgIC0weDEuM2QzZTM1ODM0ZmFjY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDc1NQotICAgIDB4MS4zYWFjZmY5NWEzMTFmODk5YTBlMjc5NTM1ZTgxYzRlY3AtMSwKLSAgICAweDEuNTJlMWY2YWQ5YzI3Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDc1NgotICAgIC0weDEuM2FhY2ZmOTVhMzExZjg5OWEwZTI3OTUzNWU4MWM0ZWNwLTEsCi0gICAgLTB4MS41MmUxZjZhZDljMjdjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU3Ci0gICAgMHgxLjRiNzViYTA5NmZhNTE5MjQ0MmI3OTUwZjk2MGY4MDA2cC0xLAotICAgIDB4MS42ODg1YjdkN2U4YTJjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU4Ci0gICAgLTB4MS40Yjc1YmEwOTZmYTUxOTI0NDJiNzk1MGY5NjBmODAwNnAtMSwKLSAgICAtMHgxLjY4ODViN2Q3ZThhMmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTkKLSAgICAweDEuNWJhNmU2YThlNzA2MjQ1Zjk3ZTI4YWYzZGRiNzAwZjZwLTEsCi0gICAgMHgxLjdlMjk3OTAyMzUxZGNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjAKLSAgICAtMHgxLjViYTZlNmE4ZTcwNjI0NWY5N2UyOGFmM2RkYjcwMGY2cC0xLAotICAgIC0weDEuN2UyOTc5MDIzNTFkY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDc2MQotICAgIDB4MS42YjM5MWUyNWJjMjY5ZWExYzFhNDBkZTYyZmJjMDNiNHAtMSwKLSAgICAweDEuOTNjZDNhMmM4MTk4Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDc2MgotICAgIC0weDEuNmIzOTFlMjViYzI2OWVhMWMxYTQwZGU2MmZiYzAzYjRwLTEsCi0gICAgLTB4MS45M2NkM2EyYzgxOThjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYzCi0gICAgMHgxLjdhMjU0MWRmZDRlNzI3Yjg2ZGQzMDk2NjQxODZlYzZicC0xLAotICAgIDB4MS5hOTcwZmI1NmNlMTNjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY0Ci0gICAgLTB4MS43YTI1NDFkZmQ0ZTcyN2I4NmRkMzA5NjY0MTg2ZWM2YnAtMSwKLSAgICAtMHgxLmE5NzBmYjU2Y2UxM2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjUKLSAgICAweDEuODg2NDdmMjZhNmUwY2Q5NWNiOTkxZjdmZmU2MWEwMmVwLTEsCi0gICAgMHgxLmJmMTRiYzgxMWE4ZWNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjYKLSAgICAtMHgxLjg4NjQ3ZjI2YTZlMGNkOTVjYjk5MWY3ZmZlNjFhMDJlcC0xLAotICAgIC0weDEuYmYxNGJjODExYThlY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDc2NwotICAgIDB4MS45NWYwNTI1N2RiY2IzODRhNWUzMjY4NTczNzZkZDgwMXAtMSwKLSAgICAweDEuZDRiODdkYWI2NzA5Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDc2OAotICAgIC0weDEuOTVmMDUyNTdkYmNiMzg0YTVlMzI2ODU3Mzc2ZGQ4MDFwLTEsCi0gICAgLTB4MS5kNGI4N2RhYjY3MDljcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY5Ci0gICAgMHgxLmEyYzI4OWQ5ZDA1NTg3NjQ5MjFhNGRlMzU1Zjk0NDhjcC0xLAotICAgIDB4MS5lYTVjM2VkNWIzODRjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzcwCi0gICAgLTB4MS5hMmMyODlkOWQwNTU4NzY0OTIxYTRkZTM1NWY5NDQ4Y3AtMSwKLSAgICAtMHgxLmVhNWMzZWQ1YjM4NGNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzEKLSAgICAweDEuYzFlOTg4MzM3M2Q3ZWNjNDhjOTJkYzg4NzU1MDVmN2VwLTEsCi0gICAgMHgxLjEyYmQ5MTczYzA3YWJwMAotICB9LAotICB7IC8vIEVudHJ5IDc3MgotICAgIC0weDEuYzFlOTg4MzM3M2Q3ZWNjNDhjOTJkYzg4NzU1MDVmN2VwLTEsCi0gICAgLTB4MS4xMmJkOTE3M2MwN2FicDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzMKLSAgICAweDEuZDI5NGQxZjk2YzdlZjI2ZTIwM2M1YjMwOWE1NTY3MWZwLTEsCi0gICAgMHgxLjI1N2IyMmU3ODBmNTZwMAotICB9LAotICB7IC8vIEVudHJ5IDc3NAotICAgIC0weDEuZDI5NGQxZjk2YzdlZjI2ZTIwM2M1YjMwOWE1NTY3MWZwLTEsCi0gICAgLTB4MS4yNTdiMjJlNzgwZjU2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzUKLSAgICAweDEuZTBjMDRhOTRlMTczMzVkMDczMDUyYTAzOTRiOWUxYzNwLTEsCi0gICAgMHgxLjM4MzhiNDViNDE3MDFwMAotICB9LAotICB7IC8vIEVudHJ5IDc3NgotICAgIC0weDEuZTBjMDRhOTRlMTczMzVkMDczMDUyYTAzOTRiOWUxYzNwLTEsCi0gICAgLTB4MS4zODM4YjQ1YjQxNzAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzcKLSAgICAweDEuZWM1ODgzYjdiNmNmNzBhNTc3ZGQ5MTYwZDBmOGU5ZDVwLTEsCi0gICAgMHgxLjRhZjY0NWNmMDFlYWNwMAotICB9LAotICB7IC8vIEVudHJ5IDc3OAotICAgIC0weDEuZWM1ODgzYjdiNmNmNzBhNTc3ZGQ5MTYwZDBmOGU5ZDVwLTEsCi0gICAgLTB4MS40YWY2NDVjZjAxZWFjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzkKLSAgICAweDEuZjU0ZDk3MTg4MWFkODI2MjliZDg0ZDIxNDE5NGU4ZGRwLTEsCi0gICAgMHgxLjVkYjNkNzQyYzI2NTdwMAotICB9LAotICB7IC8vIEVudHJ5IDc4MAotICAgIC0weDEuZjU0ZDk3MTg4MWFkODI2MjliZDg0ZDIxNDE5NGU4ZGRwLTEsCi0gICAgLTB4MS41ZGIzZDc0MmMyNjU3cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODEKLSAgICAweDEuZmI5MzNjNDAxMDdmZTgzZmQxNmMxNzg5ZTI3ZjY5ZjdwLTEsCi0gICAgMHgxLjcwNzE2OGI2ODJlMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDc4MgotICAgIC0weDEuZmI5MzNjNDAxMDdmZTgzZmQxNmMxNzg5ZTI3ZjY5ZjdwLTEsCi0gICAgLTB4MS43MDcxNjhiNjgyZTAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODMKLSAgICAweDEuZmYyMGQ5NjE2MjRlNzdkYWVmMzI5YjQwMjljMzYyZGVwLTEsCi0gICAgMHgxLjgzMmVmYTJhNDM1YWRwMAotICB9LAotICB7IC8vIEVudHJ5IDc4NAotICAgIC0weDEuZmYyMGQ5NjE2MjRlNzdkYWVmMzI5YjQwMjljMzYyZGVwLTEsCi0gICAgLTB4MS44MzJlZmEyYTQzNWFkcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODUKLSAgICAweDEuZmZmMThmMjRmM2U0YjY5NTkyMjk0ZjIwNmQ3YjMyYzJwLTEsCi0gICAgMHgxLjk1ZWM4YjllMDNkNThwMAotICB9LAotICB7IC8vIEVudHJ5IDc4NgotICAgIC0weDEuZmZmMThmMjRmM2U0YjY5NTkyMjk0ZjIwNmQ3YjMyYzJwLTEsCi0gICAgLTB4MS45NWVjOGI5ZTAzZDU4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODcKLSAgICAweDEuZmUwNDNmNTczNjlkNmE1MmZhMzNmMDExOWVjNGRhMTlwLTEsCi0gICAgMHgxLmE4YWExZDExYzQ0ZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDc4OAotICAgIC0weDEuZmUwNDNmNTczNjlkNmE1MmZhMzNmMDExOWVjNGRhMTlwLTEsCi0gICAgLTB4MS5hOGFhMWQxMWM0NGZmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODkKLSAgICAweDEuYjNkMzY5NWFjYzQxMzZiMmQ0NDcxNGY5YjM4NDE5YjRwLTEsCi0gICAgMHgxLjA0YWZmNmQzMzA5NDJwMAotICB9LAotICB7IC8vIEVudHJ5IDc5MAotICAgIC0weDEuYjNkMzY5NWFjYzQxMzZiMmQ0NDcxNGY5YjM4NDE5YjRwLTEsCi0gICAgLTB4MS4wNGFmZjZkMzMwOTQycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTEKLSAgICAweDEuYjNkNDE5NzJkYzgwNjM5OTRmNjM0MTNkNWU0ZDhlNGJwLTEsCi0gICAgMHgxLjA0YjA5ZTk4ZGNkYjRwMAotICB9LAotICB7IC8vIEVudHJ5IDc5MgotICAgIC0weDEuYjNkNDE5NzJkYzgwNjM5OTRmNjM0MTNkNWU0ZDhlNGJwLTEsCi0gICAgLTB4MS4wNGIwOWU5OGRjZGI0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTMKLSAgICAweDEuYjNkNGM5OGEzMThmYjY2ZjgyMWQ3Mjg2YWU3ZGNlN2JwLTEsCi0gICAgMHgxLjA0YjE0NjVlODkyMjZwMAotICB9LAotICB7IC8vIEVudHJ5IDc5NAotICAgIC0weDEuYjNkNGM5OGEzMThmYjY2ZjgyMWQ3Mjg2YWU3ZGNlN2JwLTEsCi0gICAgLTB4MS4wNGIxNDY1ZTg5MjI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTUKLSAgICAweDEuYjNkNTc5YTBjYjZlZTM5M2ZmNzViNThmZmUxNmQxM2ZwLTEsCi0gICAgMHgxLjA0YjFlZTI0MzU2OThwMAotICB9LAotICB7IC8vIEVudHJ5IDc5NgotICAgIC0weDEuYjNkNTc5YTBjYjZlZTM5M2ZmNzViNThmZmUxNmQxM2ZwLTEsCi0gICAgLTB4MS4wNGIxZWUyNDM1Njk4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTcKLSAgICAweDEuYjNkNjI5YjZhYTFkOWY2NWFhZDFhMmZjOTMyYzhiY2JwLTEsCi0gICAgMHgxLjA0YjI5NWU5ZTFiMGFwMAotICB9LAotICB7IC8vIEVudHJ5IDc5OAotICAgIC0weDEuYjNkNjI5YjZhYTFkOWY2NWFhZDFhMmZjOTMyYzhiY2JwLTEsCi0gICAgLTB4MS4wNGIyOTVlOWUxYjBhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTkKLSAgICAweDEuYjNkNmQ5Y2JjZDliOWU0M2I3ZmM3ZmQ0MjhhNDRkZDhwLTEsCi0gICAgMHgxLjA0YjMzZGFmOGRmN2NwMAotICB9LAotICB7IC8vIEVudHJ5IDgwMAotICAgIC0weDEuYjNkNmQ5Y2JjZDliOWU0M2I3ZmM3ZmQ0MjhhNDRkZDhwLTEsCi0gICAgLTB4MS4wNGIzM2RhZjhkZjdjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDEKLSAgICAweDEuYjNkNzg5ZTAzNWU4OTQ4ZGFiMjc1ZGZlNTQ2YzViMDhwLTEsCi0gICAgMHgxLjA0YjNlNTc1M2EzZWVwMAotICB9LAotICB7IC8vIEVudHJ5IDgwMgotICAgIC0weDEuYjNkNzg5ZTAzNWU4OTQ4ZGFiMjc1ZGZlNTQ2YzViMDhwLTEsCi0gICAgLTB4MS4wNGIzZTU3NTNhM2VlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDMKLSAgICAweDEuYjNkODM5ZjNlMzA0MzZhMzU4ZTkzY2JkY2IyYmIzNjdwLTEsCi0gICAgMHgxLjA0YjQ4ZDNhZTY4NjBwMAotICB9LAotICB7IC8vIEVudHJ5IDgwNAotICAgIC0weDEuYjNkODM5ZjNlMzA0MzZhMzU4ZTkzY2JkY2IyYmIzNjdwLTEsCi0gICAgLTB4MS4wNGI0OGQzYWU2ODYwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDUKLSAgICAweDEuYjNkOGVhMDZkNGVlMDY4NGY1NzQxZWM3NzdlZDg4ZTBwLTEsCi0gICAgMHgxLjA0YjUzNTAwOTJjY2ZwMAotICB9LAotICB7IC8vIEVudHJ5IDgwNgotICAgIC0weDEuYjNkOGVhMDZkNGVlMDY4NGY1NzQxZWM3NzdlZDg4ZTBwLTEsCi0gICAgLTB4MS4wNGI1MzUwMDkyY2NmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDcKLSAgICAtMC4wLAotICAgIC0weDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDgwOAotICAgIDAuMCwKLSAgICAweDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDgwOQotICAgIC0wLjAsCi0gICAgLTAuMAotICB9LAotICB7IC8vIEVudHJ5IDgxMAotICAgIDAuMCwKLSAgICAweDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDgxMQotICAgIC0wLjAsCi0gICAgLTB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgODEyCi0gICAgMHgxLjE3NzNkNTYxZmQ1MDY1ZDBlOTYwN2E3MjhhMzllZWQycC0xLAotICAgIDB4MS4yNzlhNzQ1OTAzMzFicC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODEzCi0gICAgLTB4MS4xNzczZDU2MWZkNTA2NWQwZTk2MDdhNzI4YTM5ZWVkMnAtMSwKLSAgICAtMHgxLjI3OWE3NDU5MDMzMWJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTQKLSAgICAweDEuMTc3M2Q1NjFmZDUwNzMzOGZmOWMwODhkODBjNjgwZGJwLTEsCi0gICAgMHgxLjI3OWE3NDU5MDMzMWNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTUKLSAgICAtMHgxLjE3NzNkNTYxZmQ1MDczMzhmZjljMDg4ZDgwYzY4MGRicC0xLAotICAgIC0weDEuMjc5YTc0NTkwMzMxY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDgxNgotICAgIDB4MS4xNzczZDU2MWZkNTA4MGExMTVkNzk2YTg3NzBkMzVlZnAtMSwKLSAgICAweDEuMjc5YTc0NTkwMzMxZHAtMQotICB9LAotICB7IC8vIEVudHJ5IDgxNwotICAgIC0weDEuMTc3M2Q1NjFmZDUwODBhMTE1ZDc5NmE4NzcwZDM1ZWZwLTEsCi0gICAgLTB4MS4yNzlhNzQ1OTAzMzFkcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODE4Ci0gICAgMHgxLmY5NWI4ZTcxMDc0MThjMTFjOTRkNGE1NGE5ZGE5YjdhcC0xLAotICAgIDB4MS5iYjY3YWU4NTg0Y2E5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTkKLSAgICAtMHgxLmY5NWI4ZTcxMDc0MThjMTFjOTRkNGE1NGE5ZGE5YjdhcC0xLAotICAgIC0weDEuYmI2N2FlODU4NGNhOXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODIwCi0gICAgMHgxLmY5NWI4ZTcxMDc0MTg2ZWU4MWQ1ZmY4OWQ4ZmFlNTQ1cC0xLAotICAgIDB4MS5iYjY3YWU4NTg0Y2FhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjEKLSAgICAtMHgxLmY5NWI4ZTcxMDc0MTg2ZWU4MWQ1ZmY4OWQ4ZmFlNTQ1cC0xLAotICAgIC0weDEuYmI2N2FlODU4NGNhYXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODIyCi0gICAgMHgxLmY5NWI4ZTcxMDc0MTgxY2IzYTVlYjRiZjA2MjFkMzgxcC0xLAotICAgIDB4MS5iYjY3YWU4NTg0Y2FicDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjMKLSAgICAtMHgxLmY5NWI4ZTcxMDc0MTgxY2IzYTVlYjRiZjA2MjFkMzgxcC0xLAotICAgIC0weDEuYmI2N2FlODU4NGNhYnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODI0Ci0gICAgMHgxLmIxZDgzMDUzMjE2MTVhYzkzOGNmZjAyYmU5ZjI1MDg1cC0yLAotICAgIDB4MS5iZmZmZmZmZmZmZmZmcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgODI1Ci0gICAgLTB4MS5iMWQ4MzA1MzIxNjE1YWM5MzhjZmYwMmJlOWYyNTA4NXAtMiwKLSAgICAtMHgxLmJmZmZmZmZmZmZmZmZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjYKLSAgICAweDEuYjFkODMwNTMyMTYxNjk0NzZmNGQxOTgyYjliMTRhYjFwLTIsCi0gICAgMHgxLmNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjcKLSAgICAtMHgxLmIxZDgzMDUzMjE2MTY5NDc2ZjRkMTk4MmI5YjE0YWIxcC0yLAotICAgIC0weDEuY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDgyOAotICAgIDB4MS5iMWQ4MzA1MzIxNjE3N2M1YTVjYTQyZDk4OTU1Mjc1YXAtMiwKLSAgICAweDEuYzAwMDAwMDAwMDAwMXAtMgotICB9LAotICB7IC8vIEVudHJ5IDgyOQotICAgIC0weDEuYjFkODMwNTMyMTYxNzdjNWE1Y2E0MmQ5ODk1NTI3NWFwLTIsCi0gICAgLTB4MS5jMDAwMDAwMDAwMDAxcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgODMwCi0gICAgMHgxLjQ0ZWIzODFjZjM4NjllYTcxY2NiMzY4NjNlNGVhNjVicC0xLAotICAgIDB4MS41ZmZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODMxCi0gICAgLTB4MS40NGViMzgxY2YzODY5ZWE3MWNjYjM2ODYzZTRlYTY1YnAtMSwKLSAgICAtMHgxLjVmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzIKLSAgICAweDEuNDRlYjM4MWNmMzg2YWIwNGE0Zjg2NTZhYmVhODBiODNwLTEsCi0gICAgMHgxLjZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzMKLSAgICAtMHgxLjQ0ZWIzODFjZjM4NmFiMDRhNGY4NjU2YWJlYTgwYjgzcC0xLAotICAgIC0weDEuNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDgzNAotICAgIDB4MS40NGViMzgxY2YzODZiNzYyMmQyNTk0NGYzZWIwMzVkY3AtMSwKLSAgICAweDEuNjAwMDAwMDAwMDAwMXAtMQotICB9LAotICB7IC8vIEVudHJ5IDgzNQotICAgIC0weDEuNDRlYjM4MWNmMzg2Yjc2MjJkMjU5NDRmM2ViMDM1ZGNwLTEsCi0gICAgLTB4MS42MDAwMDAwMDAwMDAxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODM2Ci0gICAgMHgxLmRhZDkwMmZhOGFjODY0ZmQ4YWZhMGJkYzYwOWRlZDE5cC0xLAotICAgIDB4MS4yZmZmZmZmZmZmZmZmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzcKLSAgICAtMHgxLmRhZDkwMmZhOGFjODY0ZmQ4YWZhMGJkYzYwOWRlZDE5cC0xLAotICAgIC0weDEuMmZmZmZmZmZmZmZmZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODM4Ci0gICAgMHgxLmRhZDkwMmZhOGFjODcwZjUyZjFiODQzYWM4M2JjM2VkcC0xLAotICAgIDB4MS4zcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzkKLSAgICAtMHgxLmRhZDkwMmZhOGFjODcwZjUyZjFiODQzYWM4M2JjM2VkcC0xLAotICAgIC0weDEuM3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgODQwCi0gICAgMHgxLmRhZDkwMmZhOGFjODdjZWNkMzNjZmM5OTJkZmVjMWJlcC0xLAotICAgIDB4MS4zMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDEKLSAgICAtMHgxLmRhZDkwMmZhOGFjODdjZWNkMzNjZmM5OTJkZmVjMWJlcC0xLAotICAgIC0weDEuMzAwMDAwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODQyCi0gICAgMHgxLjRiNzA3YTdhY2RlY2Y5MGExODhkMDIzMGZhZDNhZDU4cC0xLAotICAgIDB4MS4zN2ZmZmZmZmZmZmZmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDMKLSAgICAtMHgxLjRiNzA3YTdhY2RlY2Y5MGExODhkMDIzMGZhZDNhZDU4cC0xLAotICAgIC0weDEuMzdmZmZmZmZmZmZmZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ0Ci0gICAgMHgxLjRiNzA3YTdhY2RlY2M4NDIzOTQ2M2U3OGIzMTJmYTEwcC0xLAotICAgIDB4MS4zODBwMQotICB9LAotICB7IC8vIEVudHJ5IDg0NQotICAgIC0weDEuNGI3MDdhN2FjZGVjYzg0MjM5NDYzZTc4YjMxMmZhMTBwLTEsCi0gICAgLTB4MS4zODBwMQotICB9LAotICB7IC8vIEVudHJ5IDg0NgotICAgIDB4MS40YjcwN2E3YWNkZWM5NzdhNTlmZjdhYzA2NjI0ODRkZHAtMSwKLSAgICAweDEuMzgwMDAwMDAwMDAwMXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ3Ci0gICAgLTB4MS40YjcwN2E3YWNkZWM5NzdhNTlmZjdhYzA2NjI0ODRkZHAtMSwKLSAgICAtMHgxLjM4MDAwMDAwMDAwMDFwMQotICB9LAotICB7IC8vIEVudHJ5IDg0OAotICAgIDB4MS4wNjZlN2ViNzZmNWM2Njc4ZmQ4MzI1YTgxZjE5MjVjNnAtNCwKLSAgICAweDEuMDY5YzhiNDZiMzc5MnAtNAotICB9LAotICB7IC8vIEVudHJ5IDg0OQotICAgIC0weDEuMDY2ZTdlYjc2ZjVjNjY3OGZkODMyNWE4MWYxOTI1YzZwLTQsCi0gICAgLTB4MS4wNjljOGI0NmIzNzkycC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgODUwCi0gICAgMHgxLjA1ZTQ3NjFhYjhkOGYwYTdkYmE4MzQwMDBmMjM2NjUwcC0zLAotICAgIDB4MS4wNjljOGI0NmIzNzkycC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgODUxCi0gICAgLTB4MS4wNWU0NzYxYWI4ZDhmMGE3ZGJhODM0MDAwZjIzNjY1MHAtMywKLSAgICAtMHgxLjA2OWM4YjQ2YjM3OTJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTIKLSAgICAweDEuODc3ZTJjZDRmNmZkOWJhNDk4ZTMyNzA1MzAzMjczNGZwLTMsCi0gICAgMHgxLjg5ZWFkMGVhMGQzNWJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTMKLSAgICAtMHgxLjg3N2UyY2Q0ZjZmZDliYTQ5OGUzMjcwNTMwMzI3MzRmcC0zLAotICAgIC0weDEuODllYWQwZWEwZDM1YnAtMwotICB9LAotICB7IC8vIEVudHJ5IDg1NAotICAgIDB4MS4wM2JlMDZmOTdjYmVlNDc2OTg1MzlmOTc3Y2FkYmU3ZXAtMiwKLSAgICAweDEuMDY5YzhiNDZiMzc5MnAtMgotICB9LAotICB7IC8vIEVudHJ5IDg1NQotICAgIC0weDEuMDNiZTA2Zjk3Y2JlZTQ3Njk4NTM5Zjk3N2NhZGJlN2VwLTIsCi0gICAgLTB4MS4wNjljOGI0NmIzNzkycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgODU2Ci0gICAgMHgxLjQyYWJiYThjNzJmYmI4Y2E5NmY3OWFhNGJiMDM1ODRlcC0yLAotICAgIDB4MS40ODQzYWUxODYwNTc2cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgODU3Ci0gICAgLTB4MS40MmFiYmE4YzcyZmJiOGNhOTZmNzlhYTRiYjAzNTg0ZXAtMiwKLSAgICAtMHgxLjQ4NDNhZTE4NjA1NzZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTgKLSAgICAweDEuODA0NWZlNjRlNjJkYzNkNjg2ZDk3NmQ3ZDVhN2M2ODlwLTIsCi0gICAgMHgxLjg5ZWFkMGVhMGQzNWFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTkKLSAgICAtMHgxLjgwNDVmZTY0ZTYyZGMzZDY4NmQ5NzZkN2Q1YTdjNjg5cC0yLAotICAgIC0weDEuODllYWQwZWEwZDM1YXAtMgotICB9LAotICB7IC8vIEVudHJ5IDg2MAotICAgIDB4MS5iYzRjMDRkNzFhYmJlZWE1YWIwNjRlY2ZiZjU0YzYxM3AtMiwKLSAgICAweDEuY2I5MWYzYmJiYTEzZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDg2MQotICAgIC0weDEuYmM0YzA0ZDcxYWJiZWVhNWFiMDY0ZWNmYmY1NGM2MTNwLTIsCi0gICAgLTB4MS5jYjkxZjNiYmJhMTNlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgODYyCi0gICAgMHgxLmY2N2VhOTc1Yjg2YTAxNTEwZTZiZGUzNzc4MTM4OTM0cC0yLAotICAgIDB4MS4wNjljOGI0NmIzNzkxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODYzCi0gICAgLTB4MS5mNjdlYTk3NWI4NmEwMTUxMGU2YmRlMzc3ODEzODkzNHAtMiwKLSAgICAtMHgxLjA2OWM4YjQ2YjM3OTFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjQKLSAgICAweDEuMTc1MDU5YmYwZDQyNTI0ZWNiMGJmNDI0M2I1NTk3M2RwLTEsCi0gICAgMHgxLjI3NzAxY2FmODllODNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjUKLSAgICAtMHgxLjE3NTA1OWJmMGQ0MjUyNGVjYjBiZjQyNDNiNTU5NzNkcC0xLAotICAgIC0weDEuMjc3MDFjYWY4OWU4M3AtMQotICB9LAotICB7IC8vIEVudHJ5IDg2NgotICAgIDB4MS4zMjNiOGIxZmI0YmEyMWRkMTJjY2U4MjBlMTU2YTRmY3AtMSwKLSAgICAweDEuNDg0M2FlMTg2MDU3NXAtMQotICB9LAotICB7IC8vIEVudHJ5IDg2NwotICAgIC0weDEuMzIzYjhiMWZiNGJhMjFkZDEyY2NlODIwZTE1NmE0ZmNwLTEsCi0gICAgLTB4MS40ODQzYWUxODYwNTc1cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODY4Ci0gICAgMHgxLjRiZTQ5NzljNWVmYjMwNmMxYTc3MDI0MDMyODQ5YjUycC0xLAotICAgIDB4MS42OTE3M2Y4MTM2YzY3cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODY5Ci0gICAgLTB4MS40YmU0OTc5YzVlZmIzMDZjMWE3NzAyNDAzMjg0OWI1MnAtMSwKLSAgICAtMHgxLjY5MTczZjgxMzZjNjdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzAKLSAgICAweDEuNjQzMDgwZDY3YWNjMTMzMmM2NGE4NTYxMmNhY2FmYjlwLTEsCi0gICAgMHgxLjg5ZWFkMGVhMGQzNTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzEKLSAgICAtMHgxLjY0MzA4MGQ2N2FjYzEzMzJjNjRhODU2MTJjYWNhZmI5cC0xLAotICAgIC0weDEuODllYWQwZWEwZDM1OXAtMQotICB9LAotICB7IC8vIEVudHJ5IDg3MgotICAgIDB4MS43YjA1YjdiNmM2MTJlNWIwOGQ1ZWZlNDlhNDZlMjFhMXAtMSwKLSAgICAweDEuYWFiZTYyNTJlM2E0YnAtMQotICB9LAotICB7IC8vIEVudHJ5IDg3MwotICAgIC0weDEuN2IwNWI3YjZjNjEyZTViMDhkNWVmZTQ5YTQ2ZTIxYTFwLTEsCi0gICAgLTB4MS5hYWJlNjI1MmUzYTRicC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODc0Ci0gICAgMHgxLjkwNGMzNzUwNWRlNDhmYThlNzYyODc5NjBmZDQ0NTk0cC0xLAotICAgIDB4MS5jYjkxZjNiYmJhMTNkcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODc1Ci0gICAgLTB4MS45MDRjMzc1MDVkZTQ4ZmE4ZTc2Mjg3OTYwZmQ0NDU5NHAtMSwKLSAgICAtMHgxLmNiOTFmM2JiYmExM2RwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzYKLSAgICAweDEuYTNlZDllMjUyOTM4YTE0Yzc5YzU3NTYzOWMxNWE5MWRwLTEsCi0gICAgMHgxLmVjNjU4NTI0OTA4MmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzcKLSAgICAtMHgxLmEzZWQ5ZTI1MjkzOGExNGM3OWM1NzU2MzljMTVhOTFkcC0xLAotICAgIC0weDEuZWM2NTg1MjQ5MDgyZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDg3OAotICAgIDB4MS5iNWQ1NDViMTA5YmY5MzU1OTQwMzY3OThjZjQwYzliMHAtMSwKLSAgICAweDEuMDY5YzhiNDZiMzc5MXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODc5Ci0gICAgLTB4MS5iNWQ1NDViMTA5YmY5MzU1OTQwMzY3OThjZjQwYzliMHAtMSwKLSAgICAtMHgxLjA2OWM4YjQ2YjM3OTFwMAotICB9LAotICB7IC8vIEVudHJ5IDg4MAotICAgIDB4MS5jNWYwNTgyMzBlN2ZkMTRkM2U1ZTMxNTM0OWY2OTllZnAtMSwKLSAgICAweDEuMTcwNjUzZmIxZWIwYXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODgxCi0gICAgLTB4MS5jNWYwNTgyMzBlN2ZkMTRkM2U1ZTMxNTM0OWY2OTllZnAtMSwKLSAgICAtMHgxLjE3MDY1M2ZiMWViMGFwMAotICB9LAotICB7IC8vIEVudHJ5IDg4MgotICAgIDB4MS5kNDJkZTQyZGNlMTM0NmEwM2QxZjZhYmYwZWJhOTAyMnAtMSwKLSAgICAweDEuMjc3MDFjYWY4OWU4M3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgODgzCi0gICAgLTB4MS5kNDJkZTQyZGNlMTM0NmEwM2QxZjZhYmYwZWJhOTAyMnAtMSwKLSAgICAtMHgxLjI3NzAxY2FmODllODNwMAotICB9LAotICB7IC8vIEVudHJ5IDg4NAotICAgIDB4MS5lMDdlZWVkYTEwOWNiNTA0YWZjY2E4NjBkNGI1ZGQzMnAtMSwKLSAgICAweDEuMzdkOWU1NjNmNTFmY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgODg1Ci0gICAgLTB4MS5lMDdlZWVkYTEwOWNiNTA0YWZjY2E4NjBkNGI1ZGQzMnAtMSwKLSAgICAtMHgxLjM3ZDllNTYzZjUxZmNwMAotICB9LAotICB7IC8vIEVudHJ5IDg4NgotICAgIDB4MS5lYWQ2ODM0OTA5YjkzMzcxZmFmM2JlYWRkYmQ2MGVkZHAtMSwKLSAgICAweDEuNDg0M2FlMTg2MDU3NXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODg3Ci0gICAgLTB4MS5lYWQ2ODM0OTA5YjkzMzcxZmFmM2JlYWRkYmQ2MGVkZHAtMSwKLSAgICAtMHgxLjQ4NDNhZTE4NjA1NzVwMAotICB9LAotICB7IC8vIEVudHJ5IDg4OAotICAgIDB4MS5mMzI5YzA1NThlOTY3ZTRjYWI1OGQwZmE1NzJkNjJkMnAtMSwKLSAgICAweDEuNThhZDc2Y2NjYjhlZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODg5Ci0gICAgLTB4MS5mMzI5YzA1NThlOTY3ZTRjYWI1OGQwZmE1NzJkNjJkMnAtMSwKLSAgICAtMHgxLjU4YWQ3NmNjY2I4ZWVwMAotICB9LAotICB7IC8vIEVudHJ5IDg5MAotICAgIDB4MS5mOTZmZTQwNWYxYWM1ZGM5Y2YzNDM1MDgwNjdiZmNhZXAtMSwKLSAgICAweDEuNjkxNzNmODEzNmM2N3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgODkxCi0gICAgLTB4MS5mOTZmZTQwNWYxYWM1ZGM5Y2YzNDM1MDgwNjdiZmNhZXAtMSwKLSAgICAtMHgxLjY5MTczZjgxMzZjNjdwMAotICB9LAotICB7IC8vIEVudHJ5IDg5MgotICAgIDB4MS5mZGEyNTRjMjdhMDFmNDc4NmMxNDlkNmE3Nzc5Y2MzYXAtMSwKLSAgICAweDEuNzk4MTA4MzVhMWZlMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODkzCi0gICAgLTB4MS5mZGEyNTRjMjdhMDFmNDc4NmMxNDlkNmE3Nzc5Y2MzYXAtMSwKLSAgICAtMHgxLjc5ODEwODM1YTFmZTBwMAotICB9LAotICB7IC8vIEVudHJ5IDg5NAotICAgIDB4MS5mZmJjYTg0NmM0ZmM5OTdmMWEzODE0MjAyMDg4ODRlMHAtMSwKLSAgICAweDEuODllYWQwZWEwZDM1OXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODk1Ci0gICAgLTB4MS5mZmJjYTg0NmM0ZmM5OTdmMWEzODE0MjAyMDg4ODRlMHAtMSwKLSAgICAtMHgxLjg5ZWFkMGVhMGQzNTlwMAotICB9LAotICB7IC8vIEVudHJ5IDg5NgotICAgIDB4MS5mZmJjYTg0NmM0ZmM5ZjMwYmZiNDU4ZWYyMDkxYzhlZXAtMSwKLSAgICAweDEuOWE1NDk5OWU3ODZkMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODk3Ci0gICAgLTB4MS5mZmJjYTg0NmM0ZmM5ZjMwYmZiNDU4ZWYyMDkxYzhlZXAtMSwKLSAgICAtMHgxLjlhNTQ5OTllNzg2ZDJwMAotICB9LAotICB7IC8vIEVudHJ5IDg5OAotICAgIDB4MS5mZGEyNTRjMjdhMDIwNTg3NWYyNzE0MzVmODI3MTYwY3AtMSwKLSAgICAweDEuYWFiZTYyNTJlM2E0YnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODk5Ci0gICAgLTB4MS5mZGEyNTRjMjdhMDIwNTg3NWYyNzE0MzVmODI3MTYwY3AtMSwKLSAgICAtMHgxLmFhYmU2MjUyZTNhNGJwMAotICB9LAotICB7IC8vIEVudHJ5IDkwMAotICAgIDB4MS5mOTZmZTQwNWYxYWM3YTI0MWUwMmU1OGIwY2JmM2FlN3AtMSwKLSAgICAweDEuYmIyODJiMDc0ZWRjNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTAxCi0gICAgLTB4MS5mOTZmZTQwNWYxYWM3YTI0MWUwMmU1OGIwY2JmM2FlN3AtMSwKLSAgICAtMHgxLmJiMjgyYjA3NGVkYzRwMAotICB9LAotICB7IC8vIEVudHJ5IDkwMgotICAgIDB4MS5mMzI5YzA1NThlOTZhNWQ0ODI3MmFkNGM0OWVjNTNiOHAtMSwKLSAgICAweDEuY2I5MWYzYmJiYTEzZHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTAzCi0gICAgLTB4MS5mMzI5YzA1NThlOTZhNWQ0ODI3MmFkNGM0OWVjNTNiOHAtMSwKLSAgICAtMHgxLmNiOTFmM2JiYmExM2RwMAotICB9LAotICB7IC8vIEVudHJ5IDkwNAotICAgIDB4MS5lYWQ2ODM0OTA5Yjk2NWZkYzRiMGNlZmZjMGYyODVjNnAtMSwKLSAgICAweDEuZGJmYmJjNzAyNTRiNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA1Ci0gICAgLTB4MS5lYWQ2ODM0OTA5Yjk2NWZkYzRiMGNlZmZjMGYyODVjNnAtMSwKLSAgICAtMHgxLmRiZmJiYzcwMjU0YjZwMAotICB9LAotICB7IC8vIEVudHJ5IDkwNgotICAgIDB4MS5lMDdlZWVkYTEwOWNmMjVmNDAwY2Q1ZjQ2YWNlYzg4N3AtMSwKLSAgICAweDEuZWM2NTg1MjQ5MDgyZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA3Ci0gICAgLTB4MS5lMDdlZWVkYTEwOWNmMjVmNDAwY2Q1ZjQ2YWNlYzg4N3AtMSwKLSAgICAtMHgxLmVjNjU4NTI0OTA4MmZwMAotICB9LAotICB7IC8vIEVudHJ5IDkwOAotICAgIDB4MS5kNDJkZTQyZGNlMTM4ZTg5MDkzOWU1NmM0MzlkZWQ5MHAtMSwKLSAgICAweDEuZmNjZjRkZDhmYmJhOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA5Ci0gICAgLTB4MS5kNDJkZTQyZGNlMTM4ZTg5MDkzOWU1NmM0MzlkZWQ5MHAtMSwKLSAgICAtMHgxLmZjY2Y0ZGQ4ZmJiYThwMAotICB9LAotICB7IC8vIEVudHJ5IDkxMAotICAgIDB4MS5jNWYwNTgyMzBlODAxNGFiODNlY2UwYzNhNjM4YzA3OXAtMSwKLSAgICAweDEuMDY5YzhiNDZiMzc5MXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTExCi0gICAgLTB4MS5jNWYwNTgyMzBlODAxNGFiODNlY2UwYzNhNjM4YzA3OXAtMSwKLSAgICAtMHgxLjA2OWM4YjQ2YjM3OTFwMQotICB9LAotICB7IC8vIEVudHJ5IDkxMgotICAgIDB4MS5iNWQ1NDViMTA5YmZjZTNmYzRkNzcwMDFhZmUyZjJiNnAtMSwKLSAgICAweDEuMGVkMTZmYTBlOTE0ZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEzCi0gICAgLTB4MS5iNWQ1NDViMTA5YmZjZTNmYzRkNzcwMDFhZmUyZjJiNnAtMSwKLSAgICAtMHgxLjBlZDE2ZmEwZTkxNGVwMQotICB9LAotICB7IC8vIEVudHJ5IDkxNAotICAgIDB4MS5hM2VkOWUyNTI5MzhkOTJhNTU1M2IzYzA5ZDJiZGRkM3AtMSwKLSAgICAweDEuMTcwNjUzZmIxZWIwYnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTE1Ci0gICAgLTB4MS5hM2VkOWUyNTI5MzhkOTJhNTU1M2IzYzA5ZDJiZGRkM3AtMSwKLSAgICAtMHgxLjE3MDY1M2ZiMWViMGJwMQotICB9LAotICB7IC8vIEVudHJ5IDkxNgotICAgIDB4MS45MDRjMzc1MDVkZTRiODk3NWRkMjczMGUxOTZkZGZjM3AtMSwKLSAgICAweDEuMWYzYjM4NTU1NDRjOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTE3Ci0gICAgLTB4MS45MDRjMzc1MDVkZTRiODk3NWRkMjczMGUxOTZkZGZjM3AtMSwKLSAgICAtMHgxLjFmM2IzODU1NTQ0YzhwMQotICB9LAotICB7IC8vIEVudHJ5IDkxOAotICAgIDB4MS43YjA1YjdiNmM2MTJmYzRmZGEzODEyYjFmMTM0ODM4OXAtMSwKLSAgICAweDEuMjc3MDFjYWY4OWU4NXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTE5Ci0gICAgLTB4MS43YjA1YjdiNmM2MTJmYzRmZGEzODEyYjFmMTM0ODM4OXAtMSwKLSAgICAtMHgxLjI3NzAxY2FmODllODVwMQotICB9LAotICB7IC8vIEVudHJ5IDkyMAotICAgIDB4MS42NDMwODBkNjdhY2MxNDYyMDY3MmRkYTYyNDFlYTMwNXAtMSwKLSAgICAweDEuMmZhNTAxMDliZjg0MnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTIxCi0gICAgLTB4MS42NDMwODBkNjdhY2MxNDYyMDY3MmRkYTYyNDFlYTMwNXAtMSwKLSAgICAtMHgxLjJmYTUwMTA5YmY4NDJwMQotICB9LAotICB7IC8vIEVudHJ5IDkyMgotICAgIDB4MS40YmU0OTc5YzVlZmIxOTRmYzgyYWMzNjdmZWRmOTNiY3AtMSwKLSAgICAweDEuMzdkOWU1NjNmNTFmZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTIzCi0gICAgLTB4MS40YmU0OTc5YzVlZmIxOTRmYzgyYWMzNjdmZWRmOTNiY3AtMSwKLSAgICAtMHgxLjM3ZDllNTYzZjUxZmZwMQotICB9LAotICB7IC8vIEVudHJ5IDkyNAotICAgIDB4MS4zMjNiOGIxZmI0YjllZmU1MDc1ZWRlODA0OWE4NWMzZHAtMSwKLSAgICAweDEuNDAwZWM5YmUyYWJiY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTI1Ci0gICAgLTB4MS4zMjNiOGIxZmI0YjllZmU1MDc1ZWRlODA0OWE4NWMzZHAtMSwKLSAgICAtMHgxLjQwMGVjOWJlMmFiYmNwMQotICB9LAotICB7IC8vIEVudHJ5IDkyNgotICAgIDB4MS4xNzUwNTliZjBkNDIwMzNiYmNmNTk4Yzg4YjE3NmU2MXAtMSwKLSAgICAweDEuNDg0M2FlMTg2MDU3OXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTI3Ci0gICAgLTB4MS4xNzUwNTliZjBkNDIwMzNiYmNmNTk4Yzg4YjE3NmU2MXAtMSwKLSAgICAtMHgxLjQ4NDNhZTE4NjA1NzlwMQotICB9LAotICB7IC8vIEVudHJ5IDkyOAotICAgIDB4MS5mNjdlYTk3NWI4NjkyNTIxZjc3ZDY3NTRiMzAyYzVjNHAtMiwKLSAgICAweDEuNTA3ODkyNzI5NWYzNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTI5Ci0gICAgLTB4MS5mNjdlYTk3NWI4NjkyNTIxZjc3ZDY3NTRiMzAyYzVjNHAtMiwKLSAgICAtMHgxLjUwNzg5MjcyOTVmMzZwMQotICB9LAotICB7IC8vIEVudHJ5IDkzMAotICAgIDB4MS5iYzRjMDRkNzFhYmFkMTRlZmMyOWE2NjM0MmFkYTcyM3AtMiwKLSAgICAweDEuNThhZDc2Y2NjYjhmM3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTMxCi0gICAgLTB4MS5iYzRjMDRkNzFhYmFkMTRlZmMyOWE2NjM0MmFkYTcyM3AtMiwKLSAgICAtMHgxLjU4YWQ3NmNjY2I4ZjNwMQotICB9LAotICB7IC8vIEVudHJ5IDkzMgotICAgIDB4MS44MDQ1ZmU2NGU2MmM2MmY1N2YwNzdlYTI1MWUyZjJkY3AtMiwKLSAgICAweDEuNjBlMjViMjcwMTJiMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTMzCi0gICAgLTB4MS44MDQ1ZmU2NGU2MmM2MmY1N2YwNzdlYTI1MWUyZjJkY3AtMiwKLSAgICAtMHgxLjYwZTI1YjI3MDEyYjBwMQotICB9LAotICB7IC8vIEVudHJ5IDkzNAotICAgIDB4MS40MmFiYmE4YzcyZmExMmJlOTIwYjMxNjYyNzUxMmU0MXAtMiwKLSAgICAweDEuNjkxNzNmODEzNmM2ZHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTM1Ci0gICAgLTB4MS40MmFiYmE4YzcyZmExMmJlOTIwYjMxNjYyNzUxMmU0MXAtMiwKLSAgICAtMHgxLjY5MTczZjgxMzZjNmRwMQotICB9LAotICB7IC8vIEVudHJ5IDkzNgotICAgIDB4MS4wM2JlMDZmOTdjYmNmODY2MDIxZTVhNWM2MmM2YjA3ZXAtMiwKLSAgICAweDEuNzE0YzIzZGI2YzYyYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTM3Ci0gICAgLTB4MS4wM2JlMDZmOTdjYmNmODY2MDIxZTVhNWM2MmM2YjA3ZXAtMiwKLSAgICAtMHgxLjcxNGMyM2RiNmM2MmFwMQotICB9LAotICB7IC8vIEVudHJ5IDkzOAotICAgIDB4MS44NzdlMmNkNGY2Zjk0NzEwZjI3NzY3NzViMDFjNzNkYnAtMywKLSAgICAweDEuNzk4MTA4MzVhMWZlN3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTM5Ci0gICAgLTB4MS44NzdlMmNkNGY2Zjk0NzEwZjI3NzY3NzViMDFjNzNkYnAtMywKLSAgICAtMHgxLjc5ODEwODM1YTFmZTdwMQotICB9LAotICB7IC8vIEVudHJ5IDk0MAotICAgIDB4MS4wNWU0NzYxYWI4ZDQyMTcxOTU2NzcxN2Y3NjcxMjg2N3AtMywKLSAgICAweDEuODFiNWVjOGZkNzlhNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQxCi0gICAgLTB4MS4wNWU0NzYxYWI4ZDQyMTcxOTU2NzcxN2Y3NjcxMjg2N3AtMywKLSAgICAtMHgxLjgxYjVlYzhmZDc5YTRwMQotICB9LAotICB7IC8vIEVudHJ5IDk0MgotICAgIDB4MS4wNjZlN2ViNzZmNWRkMmVhMTliNjk5MWU4YTFhMzYzNHAtNCwKLSAgICAweDEuODllYWQwZWEwZDM1YnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQzCi0gICAgLTB4MS4wNjZlN2ViNzZmNWRkMmVhMTliNjk5MWU4YTFhMzYzNHAtNCwKLSAgICAtMHgxLjg5ZWFkMGVhMGQzNWJwMQotICB9LAotICB7IC8vIEVudHJ5IDk0NAotICAgIDB4MS4wM2JlMDZmOTdjYmYwOWNjMGJhZGJkYWU4MDNkN2I0ZXAtMiwKLSAgICAtMHgxLjgxYjVlYzhmZDc5OWZwMgotICB9LAotICB7IC8vIEVudHJ5IDk0NQotICAgIC0weDEuMDNiZTA2Zjk3Y2JmMDljYzBiYWRiZGFlODAzZDdiNGVwLTIsCi0gICAgMHgxLjgxYjVlYzhmZDc5OWZwMgotICB9LAotICB7IC8vIEVudHJ5IDk0NgotICAgIDB4MS5mNjdlYTk3NWI4NmEyMmYyMzQ4Nzc4ODI0Zjk1ZDg0YXAtMiwKLSAgICAtMHgxLjcxNGMyM2RiNmM2MjZwMgotICB9LAotICB7IC8vIEVudHJ5IDk0NwotICAgIC0weDEuZjY3ZWE5NzViODZhMjJmMjM0ODc3ODgyNGY5NWQ4NGFwLTIsCi0gICAgMHgxLjcxNGMyM2RiNmM2MjZwMgotICB9LAotICB7IC8vIEVudHJ5IDk0OAotICAgIDB4MS42NDMwODBkNjdhY2MyMTBmYTI3ZTkyNDdhODI4NjIyMHAtMSwKLSAgICAtMHgxLjYwZTI1YjI3MDEyYWRwMgotICB9LAotICB7IC8vIEVudHJ5IDk0OQotICAgIC0weDEuNjQzMDgwZDY3YWNjMjEwZmEyN2U5MjQ3YTgyODYyMjBwLTEsCi0gICAgMHgxLjYwZTI1YjI3MDEyYWRwMgotICB9LAotICB7IC8vIEVudHJ5IDk1MAotICAgIDB4MS5iNWQ1NDViMTA5YmY5NTBiNDE5NzAyOTcyYjk0ZjhmYXAtMSwKLSAgICAtMHgxLjUwNzg5MjcyOTVmMzRwMgotICB9LAotICB7IC8vIEVudHJ5IDk1MQotICAgIC0weDEuYjVkNTQ1YjEwOWJmOTUwYjQxOTcwMjk3MmI5NGY4ZmFwLTEsCi0gICAgMHgxLjUwNzg5MjcyOTVmMzRwMgotICB9LAotICB7IC8vIEVudHJ5IDk1MgotICAgIDB4MS5lYWQ2ODM0OTA5YjkzNDYyMzRkYmI2MDFkMDQ4NmNmMnAtMSwKLSAgICAtMHgxLjQwMGVjOWJlMmFiYmJwMgotICB9LAotICB7IC8vIEVudHJ5IDk1MwotICAgIC0weDEuZWFkNjgzNDkwOWI5MzQ2MjM0ZGJiNjAxZDA0ODZjZjJwLTEsCi0gICAgMHgxLjQwMGVjOWJlMmFiYmJwMgotICB9LAotICB7IC8vIEVudHJ5IDk1NAotICAgIDB4MS5mZmJjYTg0NmM0ZmM5OTlhMjlkYzFkNmIyZDdjYjQxM3AtMSwKLSAgICAtMHgxLjJmYTUwMTA5YmY4NDJwMgotICB9LAotICB7IC8vIEVudHJ5IDk1NQotICAgIC0weDEuZmZiY2E4NDZjNGZjOTk5YTI5ZGMxZDZiMmQ3Y2I0MTNwLTEsCi0gICAgMHgxLjJmYTUwMTA5YmY4NDJwMgotICB9LAotICB7IC8vIEVudHJ5IDk1NgotICAgIDB4MS5mMzI5YzA1NThlOTZhNTE4YTJhZjNhZTc4MDBhNWI2NXAtMSwKLSAgICAtMHgxLjFmM2IzODU1NTQ0YzlwMgotICB9LAotICB7IC8vIEVudHJ5IDk1NwotICAgIC0weDEuZjMyOWMwNTU4ZTk2YTUxOGEyYWYzYWU3ODAwYTViNjVwLTEsCi0gICAgMHgxLjFmM2IzODU1NTQ0YzlwMgotICB9LAotICB7IC8vIEVudHJ5IDk1OAotICAgIDB4MS5jNWYwNTgyMzBlODAyMWYyMWJkMGFjMmMwZjY4MDlhOXAtMSwKLSAgICAtMHgxLjBlZDE2ZmEwZTkxNTBwMgotICB9LAotICB7IC8vIEVudHJ5IDk1OQotICAgIC0weDEuYzVmMDU4MjMwZTgwMjFmMjFiZDBhYzJjMGY2ODA5YTlwLTEsCi0gICAgMHgxLjBlZDE2ZmEwZTkxNTBwMgotICB9LAotICB7IC8vIEVudHJ5IDk2MAotICAgIDB4MS43YjA1YjdiNmM2MTM2NWE5YWM5ZTkwOGI4ZTVkM2NlNHAtMSwKLSAgICAtMHgxLmZjY2Y0ZGQ4ZmJiYWVwMQotICB9LAotICB7IC8vIEVudHJ5IDk2MQotICAgIC0weDEuN2IwNWI3YjZjNjEzNjVhOWFjOWU5MDhiOGU1ZDNjZTRwLTEsCi0gICAgMHgxLmZjY2Y0ZGQ4ZmJiYWVwMQotICB9LAotICB7IC8vIEVudHJ5IDk2MgotICAgIDB4MS4xNzUwNTliZjBkNDJmMWQ2YjM5MWYwN2Y5NmYyMzUzZHAtMSwKLSAgICAtMHgxLmRiZmJiYzcwMjU0YmNwMQotICB9LAotICB7IC8vIEVudHJ5IDk2MwotICAgIC0weDEuMTc1MDU5YmYwZDQyZjFkNmIzOTFmMDdmOTZmMjM1M2RwLTEsCi0gICAgMHgxLmRiZmJiYzcwMjU0YmNwMQotICB9LAotICB7IC8vIEVudHJ5IDk2NAotICAgIDB4MS40MmFiYmE4YzcyZmQyMjE5NDc5MzI0NmI4ZDE5OTYwYXAtMiwKLSAgICAtMHgxLmJiMjgyYjA3NGVkY2FwMQotICB9LAotICB7IC8vIEVudHJ5IDk2NQotICAgIC0weDEuNDJhYmJhOGM3MmZkMjIxOTQ3OTMyNDZiOGQxOTk2MGFwLTIsCi0gICAgMHgxLmJiMjgyYjA3NGVkY2FwMQotICB9LAotICB7IC8vIEVudHJ5IDk2NgotICAgIDB4MS4wNjZlN2ViNzZmNjJiNWY0NTYzZGUyNmRjYTg5MDAxN3AtNCwKLSAgICAtMHgxLjlhNTQ5OTllNzg2ZDhwMQotICB9LAotICB7IC8vIEVudHJ5IDk2NwotICAgIC0weDEuMDY2ZTdlYjc2ZjYyYjVmNDU2M2RlMjZkY2E4OTAwMTdwLTQsCi0gICAgMHgxLjlhNTQ5OTllNzg2ZDhwMQotICB9LAotICB7IC8vIEVudHJ5IDk2OAotICAgIC0weDEuODc3ZTJjZDRmNmZhNDI1ODY4NzVjNTI1MGExNjllNDhwLTMsCi0gICAgLTB4MS43OTgxMDgzNWExZmU2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjkKLSAgICAweDEuODc3ZTJjZDRmNmZhNDI1ODY4NzVjNTI1MGExNjllNDhwLTMsCi0gICAgMHgxLjc5ODEwODM1YTFmZTZwMQotICB9LAotICB7IC8vIEVudHJ5IDk3MAotICAgIC0weDEuYmM0YzA0ZDcxYWJhNWRmYzA5ODI3OGYxNjhiYmQ5NjJwLTIsCi0gICAgLTB4MS41OGFkNzZjY2NiOGY0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzEKLSAgICAweDEuYmM0YzA0ZDcxYWJhNWRmYzA5ODI3OGYxNjhiYmQ5NjJwLTIsCi0gICAgMHgxLjU4YWQ3NmNjY2I4ZjRwMQotICB9LAotICB7IC8vIEVudHJ5IDk3MgotICAgIC0weDEuNGJlNDk3OWM1ZWZhODcxZDMwYWUxY2ZhNjYzODkxOTlwLTEsCi0gICAgLTB4MS4zN2Q5ZTU2M2Y1MjAycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzMKLSAgICAweDEuNGJlNDk3OWM1ZWZhODcxZDMwYWUxY2ZhNjYzODkxOTlwLTEsCi0gICAgMHgxLjM3ZDllNTYzZjUyMDJwMQotICB9LAotICB7IC8vIEVudHJ5IDk3NAotICAgIC0weDEuYTNlZDllMjUyOTM4MjIxNjg5NThjY2UxZTA5ZjdjMTFwLTEsCi0gICAgLTB4MS4xNzA2NTNmYjFlYjEwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzUKLSAgICAweDEuYTNlZDllMjUyOTM4MjIxNjg5NThjY2UxZTA5ZjdjMTFwLTEsCi0gICAgMHgxLjE3MDY1M2ZiMWViMTBwMQotICB9LAotICB7IC8vIEVudHJ5IDk3NgotICAgIC0weDEuZTA3ZWVlZGExMDljNjJiMzQwZGMzNmU5MjE2OTY0OGRwLTEsCi0gICAgLTB4MS5lYzY1ODUyNDkwODNjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzcKLSAgICAweDEuZTA3ZWVlZGExMDljNjJiMzQwZGMzNmU5MjE2OTY0OGRwLTEsCi0gICAgMHgxLmVjNjU4NTI0OTA4M2NwMAotICB9LAotICB7IC8vIEVudHJ5IDk3OAotICAgIC0weDEuZmRhMjU0YzI3YTAxZGQ5NTRkYjNhZWE1MDVlNDk0NTNwLTEsCi0gICAgLTB4MS5hYWJlNjI1MmUzYTU4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzkKLSAgICAweDEuZmRhMjU0YzI3YTAxZGQ5NTRkYjNhZWE1MDVlNDk0NTNwLTEsCi0gICAgMHgxLmFhYmU2MjUyZTNhNThwMAotICB9LAotICB7IC8vIEVudHJ5IDk4MAotICAgIC0weDEuZjk2ZmU0MDVmMWFjYTAyZThmNGZkNDMzZTU5YWE5NzNwLTEsCi0gICAgLTB4MS42OTE3M2Y4MTM2Yzc0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODEKLSAgICAweDEuZjk2ZmU0MDVmMWFjYTAyZThmNGZkNDMzZTU5YWE5NzNwLTEsCi0gICAgMHgxLjY5MTczZjgxMzZjNzRwMAotICB9LAotICB7IC8vIEVudHJ5IDk4MgotICAgIC0weDEuZDQyZGU0MmRjZTEzZWYwNDBiYjEwNDBlMzE0OGQ3ZGVwLTEsCi0gICAgLTB4MS4yNzcwMWNhZjg5ZTkwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODMKLSAgICAweDEuZDQyZGU0MmRjZTEzZWYwNDBiYjEwNDBlMzE0OGQ3ZGVwLTEsCi0gICAgMHgxLjI3NzAxY2FmODllOTBwMAotICB9LAotICB7IC8vIEVudHJ5IDk4NAotICAgIC0weDEuOTA0YzM3NTA1ZGU1OTMwODEyZTNhMmE5NGZlYWE1MWJwLTEsCi0gICAgLTB4MS5jYjkxZjNiYmJhMTU3cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTg1Ci0gICAgMHgxLjkwNGMzNzUwNWRlNTkzMDgxMmUzYTJhOTRmZWFhNTFicC0xLAotICAgIDB4MS5jYjkxZjNiYmJhMTU3cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTg2Ci0gICAgLTB4MS4zMjNiOGIxZmI0YmI2MjZkZDQwY2FjZDc0OTYzYWM2Y3AtMSwKLSAgICAtMHgxLjQ4NDNhZTE4NjA1OGVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODcKLSAgICAweDEuMzIzYjhiMWZiNGJiNjI2ZGQ0MGNhY2Q3NDk2M2FjNmNwLTEsCi0gICAgMHgxLjQ4NDNhZTE4NjA1OGVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODgKLSAgICAtMHgxLjgwNDVmZTY0ZTYzMDhiYjVjNmNlMzVmODM0YjkzYzYzcC0yLAotICAgIC0weDEuODllYWQwZWEwZDM4YXAtMgotICB9LAotICB7IC8vIEVudHJ5IDk4OQotICAgIDB4MS44MDQ1ZmU2NGU2MzA4YmI1YzZjZTM1ZjgzNGI5M2M2M3AtMiwKLSAgICAweDEuODllYWQwZWEwZDM4YXAtMgotICB9LAotICB7IC8vIEVudHJ5IDk5MAotICAgIC0weDEuMDVlNDc2MWFiOGRlYzQ0ZWQwZmEzMGQzMzUwNDljNDBwLTMsCi0gICAgLTB4MS4wNjljOGI0NmIzN2YwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgOTkxCi0gICAgMHgxLjA1ZTQ3NjFhYjhkZWM0NGVkMGZhMzBkMzM1MDQ5YzQwcC0zLAotICAgIDB4MS4wNjljOGI0NmIzN2YwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgOTkyCi0gICAgMHgxLjA1ZTQ3NjFhYjhkMzFkMDBlNjU2MzcyYzVjMDRhYTZlcC0zLAotICAgIDB4MS4wNjljOGI0NmIzNzM0cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgOTkzCi0gICAgLTB4MS4wNWU0NzYxYWI4ZDMxZDAwZTY1NjM3MmM1YzA0YWE2ZXAtMywKLSAgICAtMHgxLjA2OWM4YjQ2YjM3MzRwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTQKLSAgICAweDEuODA0NWZlNjRlNjJiMTlhMDk0Mzk5NTAyYWZiNzZlNWNwLTIsCi0gICAgMHgxLjg5ZWFkMGVhMGQzMmNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTUKLSAgICAtMHgxLjgwNDVmZTY0ZTYyYjE5YTA5NDM5OTUwMmFmYjc2ZTVjcC0yLAotICAgIC0weDEuODllYWQwZWEwZDMyY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDk5NgotICAgIDB4MS4zMjNiOGIxZmI0YjkwN2M0MTZkMjNiMDRlMGVjMGU3MnAtMSwKLSAgICAweDEuNDg0M2FlMTg2MDU1ZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDk5NwotICAgIC0weDEuMzIzYjhiMWZiNGI5MDdjNDE2ZDIzYjA0ZTBlYzBlNzJwLTEsCi0gICAgLTB4MS40ODQzYWUxODYwNTVmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTk4Ci0gICAgMHgxLjkwNGMzNzUwNWRlM2JlMmFjZTE3Y2E1NDg3NzUwMjMxcC0xLAotICAgIDB4MS5jYjkxZjNiYmJhMTI4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTk5Ci0gICAgLTB4MS45MDRjMzc1MDVkZTNiZTJhY2UxN2NhNTQ4Nzc1MDIzMXAtMSwKLSAgICAtMHgxLmNiOTFmM2JiYmExMjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDAwCi0gICAgMHgxLmQ0MmRlNDJkY2UxMmI4MjQ2NmYyZmNiNjNiMjk0NzUxcC0xLAotICAgIDB4MS4yNzcwMWNhZjg5ZTc4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDAxCi0gICAgLTB4MS5kNDJkZTQyZGNlMTJiODI0NjZmMmZjYjYzYjI5NDc1MXAtMSwKLSAgICAtMHgxLjI3NzAxY2FmODllNzhwMAotICB9LAotICB7IC8vIEVudHJ5IDEwMDIKLSAgICAweDEuZjk2ZmU0MDVmMWFjMjU5YmYxOTJmZDFjZjY0ZTJmMTJwLTEsCi0gICAgMHgxLjY5MTczZjgxMzZjNWNwMAotICB9LAotICB7IC8vIEVudHJ5IDEwMDMKLSAgICAtMHgxLmY5NmZlNDA1ZjFhYzI1OWJmMTkyZmQxY2Y2NGUyZjEycC0xLAotICAgIC0weDEuNjkxNzNmODEzNmM1Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwNAotICAgIDB4MS5mZGEyNTRjMjdhMDIyNzU0MzJkNzdkZDZmOTcwNDY0NHAtMSwKLSAgICAweDEuYWFiZTYyNTJlM2E0MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwNQotICAgIC0weDEuZmRhMjU0YzI3YTAyMjc1NDMyZDc3ZGQ2Zjk3MDQ2NDRwLTEsCi0gICAgLTB4MS5hYWJlNjI1MmUzYTQwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDA2Ci0gICAgMHgxLmUwN2VlZWRhMTA5ZDZiZjBjOTM1ZmExMGIxMjgwYzZkcC0xLAotICAgIDB4MS5lYzY1ODUyNDkwODI0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDA3Ci0gICAgLTB4MS5lMDdlZWVkYTEwOWQ2YmYwYzkzNWZhMTBiMTI4MGM2ZHAtMSwKLSAgICAtMHgxLmVjNjU4NTI0OTA4MjRwMAotICB9LAotICB7IC8vIEVudHJ5IDEwMDgKLSAgICAweDEuYTNlZDllMjUyOTM5ZDk3OTNmYjJmNmY3NWU1Yzc2ZTdwLTEsCi0gICAgMHgxLjE3MDY1M2ZiMWViMDRwMQotICB9LAotICB7IC8vIEVudHJ5IDEwMDkKLSAgICAtMHgxLmEzZWQ5ZTI1MjkzOWQ5NzkzZmIyZjZmNzVlNWM3NmU3cC0xLAotICAgIC0weDEuMTcwNjUzZmIxZWIwNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxMAotICAgIDB4MS40YmU0OTc5YzVlZmNjZmU3OGVhMGI2YWZiMGNiYmEzN3AtMSwKLSAgICAweDEuMzdkOWU1NjNmNTFmNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxMQotICAgIC0weDEuNGJlNDk3OWM1ZWZjY2ZlNzhlYTBiNmFmYjBjYmJhMzdwLTEsCi0gICAgLTB4MS4zN2Q5ZTU2M2Y1MWY2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDEyCi0gICAgMHgxLmJjNGMwNGQ3MWFiZmM1ZGY2OTU4OWE0NWQ1ZTMxOTZlcC0yLAotICAgIDB4MS41OGFkNzZjY2NiOGU4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDEzCi0gICAgLTB4MS5iYzRjMDRkNzFhYmZjNWRmNjk1ODlhNDVkNWUzMTk2ZXAtMiwKLSAgICAtMHgxLjU4YWQ3NmNjY2I4ZThwMQotICB9LAotICB7IC8vIEVudHJ5IDEwMTQKLSAgICAweDEuODc3ZTJjZDRmNzA2MDliMWYwNjIyOTViNjRhZWQ0YmRwLTMsCi0gICAgMHgxLjc5ODEwODM1YTFmZGFwMQotICB9LAotICB7IC8vIEVudHJ5IDEwMTUKLSAgICAtMHgxLjg3N2UyY2Q0ZjcwNjA5YjFmMDYyMjk1YjY0YWVkNGJkcC0zLAotICAgIC0weDEuNzk4MTA4MzVhMWZkYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxNgotICAgIC0weDEuMDY2ZTdlYjc2ZjRhYzI5M2Y0NjQ4NmRjMzI4ZDQ1MGJwLTQsCi0gICAgMHgxLjlhNTQ5OTllNzg2Y2NwMQotICB9LAotICB7IC8vIEVudHJ5IDEwMTcKLSAgICAweDEuMDY2ZTdlYjc2ZjRhYzI5M2Y0NjQ4NmRjMzI4ZDQ1MGJwLTQsCi0gICAgLTB4MS45YTU0OTk5ZTc4NmNjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDE4Ci0gICAgLTB4MS40MmFiYmE4YzcyZjc3MDU5NWZmZTMxMzVhMGUwYWQ4M3AtMiwKLSAgICAweDEuYmIyODJiMDc0ZWRiZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxOQotICAgIDB4MS40MmFiYmE4YzcyZjc3MDU5NWZmZTMxMzVhMGUwYWQ4M3AtMiwKLSAgICAtMHgxLmJiMjgyYjA3NGVkYmVwMQotICB9LAotICB7IC8vIEVudHJ5IDEwMjAKLSAgICAtMHgxLjE3NTA1OWJmMGQ0MDZlMmZlMDE0ZTg4MGRkMjljZmFjcC0xLAotICAgIDB4MS5kYmZiYmM3MDI1NGIwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIxCi0gICAgMHgxLjE3NTA1OWJmMGQ0MDZlMmZlMDE0ZTg4MGRkMjljZmFjcC0xLAotICAgIC0weDEuZGJmYmJjNzAyNTRiMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyMgotICAgIC0weDEuN2IwNWI3YjZjNjExNjE1NWYwZGM1NTFlMzE2ZTFlMGJwLTEsCi0gICAgMHgxLmZjY2Y0ZGQ4ZmJiYTJwMQotICB9LAotICB7IC8vIEVudHJ5IDEwMjMKLSAgICAweDEuN2IwNWI3YjZjNjExNjE1NWYwZGM1NTFlMzE2ZTFlMGJwLTEsCi0gICAgLTB4MS5mY2NmNGRkOGZiYmEycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDI0Ci0gICAgLTB4MS5jNWYwNTgyMzBlN2ViZWI3NjE2Nzc5ZTE2ZmE5YjUzN3AtMSwKLSAgICAweDEuMGVkMTZmYTBlOTE0YXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyNQotICAgIDB4MS5jNWYwNTgyMzBlN2ViZWI3NjE2Nzc5ZTE2ZmE5YjUzN3AtMSwKLSAgICAtMHgxLjBlZDE2ZmEwZTkxNGFwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMjYKLSAgICAtMHgxLmYzMjljMDU1OGU5NWZhMzMzZDVkMmQ0NGQ2NTQ3NzdjcC0xLAotICAgIDB4MS4xZjNiMzg1NTU0NGMzcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDI3Ci0gICAgMHgxLmYzMjljMDU1OGU5NWZhMzMzZDVkMmQ0NGQ2NTQ3NzdjcC0xLAotICAgIC0weDEuMWYzYjM4NTU1NDRjM3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyOAotICAgIC0weDEuZmZiY2E4NDZjNGZjYjIzN2MyOTQ3YjM1YjAzN2EycC0xLAotICAgIDB4MS4yZmE1MDEwOWJmODNjcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDI5Ci0gICAgMHgxLmZmYmNhODQ2YzRmY2IyMzdjMjk0N2IzNWIwMzdhMnAtMSwKLSAgICAtMHgxLjJmYTUwMTA5YmY4M2NwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMzAKLSAgICAtMHgxLmVhZDY4MzQ5MDliYTBlZTY5YjMxZTE5NzBkZjFiYjhicC0xLAotICAgIDB4MS40MDBlYzliZTJhYmI1cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDMxCi0gICAgMHgxLmVhZDY4MzQ5MDliYTBlZTY5YjMxZTE5NzBkZjFiYjhicC0xLAotICAgIC0weDEuNDAwZWM5YmUyYWJiNXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAzMgotICAgIC0weDEuYjVkNTQ1YjEwOWMxMjMyYjYxZGQyOGQ4MDM1ZDk1Y2JwLTEsCi0gICAgMHgxLjUwNzg5MjcyOTVmMmVwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMzMKLSAgICAweDEuYjVkNTQ1YjEwOWMxMjMyYjYxZGQyOGQ4MDM1ZDk1Y2JwLTEsCi0gICAgLTB4MS41MDc4OTI3Mjk1ZjJlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM0Ci0gICAgLTB4MS42NDMwODBkNjdhY2U0OGMwZGQxZmUzYTA2YmJjNGJmNXAtMSwKLSAgICAweDEuNjBlMjViMjcwMTJhN3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAzNQotICAgIDB4MS42NDMwODBkNjdhY2U0OGMwZGQxZmUzYTA2YmJjNGJmNXAtMSwKLSAgICAtMHgxLjYwZTI1YjI3MDEyYTdwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMzYKLSAgICAtMHgxLmY2N2VhOTc1Yjg2ZjVkNGFhOTI3MTZjYzA3NzQ3M2E3cC0yLAotICAgIDB4MS43MTRjMjNkYjZjNjIwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM3Ci0gICAgMHgxLmY2N2VhOTc1Yjg2ZjVkNGFhOTI3MTZjYzA3NzQ3M2E3cC0yLAotICAgIC0weDEuNzE0YzIzZGI2YzYyMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAzOAotICAgIC0weDEuMDNiZTA2Zjk3Y2M0ZDc4ZmRjY2JjYTFkNDBlODYwMTFwLTIsCi0gICAgMHgxLjgxYjVlYzhmZDc5OTlwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMzkKLSAgICAweDEuMDNiZTA2Zjk3Y2M0ZDc4ZmRjY2JjYTFkNDBlODYwMTFwLTIsCi0gICAgLTB4MS44MWI1ZWM4ZmQ3OTk5cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQwCi0gICAgMHgxLmVmYjI2ZWY5MzBjNGMzZmEzMjQ1OTYzYzFkY2VjMGE2cC01LAotICAgIDB4MS5lZmZmZmZmZmZmZmZmcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0MQotICAgIC0weDEuZWZiMjZlZjkzMGM0YzNmYTMyNDU5NjNjMWRjZWMwYTZwLTUsCi0gICAgLTB4MS5lZmZmZmZmZmZmZmZmcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0MgotICAgIDB4MS5lZmIyNmVmOTMwYzRkM2YyYjBkYmUxOTMxYmE1YWU2NHAtNSwKLSAgICAweDEuZnAtNQotICB9LAotICB7IC8vIEVudHJ5IDEwNDMKLSAgICAtMHgxLmVmYjI2ZWY5MzBjNGQzZjJiMGRiZTE5MzFiYTVhZTY0cC01LAotICAgIC0weDEuZnAtNQotICB9LAotICB7IC8vIEVudHJ5IDEwNDQKLSAgICAweDEuZWZiMjZlZjkzMGM0ZTNlYjJmNzIyY2VhMTk3YzIwMzZwLTUsCi0gICAgMHgxLmYwMDAwMDAwMDAwMDFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQ1Ci0gICAgLTB4MS5lZmIyNmVmOTMwYzRlM2ViMmY3MjJjZWExOTdjMjAzNnAtNSwKLSAgICAtMHgxLmYwMDAwMDAwMDAwMDFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQ2Ci0gICAgMHgxLmY2YmFhYTEzMWRlNjMzYWQ0ZTBlN2Q2NDY1ZDEyYTA1cC00LAotICAgIDB4MS5mN2ZmZmZmZmZmZmZmcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0NwotICAgIC0weDEuZjZiYWFhMTMxZGU2MzNhZDRlMGU3ZDY0NjVkMTJhMDVwLTQsCi0gICAgLTB4MS5mN2ZmZmZmZmZmZmZmcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0OAotICAgIDB4MS5mNmJhYWExMzFkZTY0MzhlNTYxMTI3OTg2NGZlNzY2M3AtNCwKLSAgICAweDEuZjgwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0OQotICAgIC0weDEuZjZiYWFhMTMxZGU2NDM4ZTU2MTEyNzk4NjRmZTc2NjNwLTQsCi0gICAgLTB4MS5mODBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUwCi0gICAgMHgxLmY2YmFhYTEzMWRlNjUzNmY1ZTEzZDFjYzY0MjljYzA3cC00LAotICAgIDB4MS5mODAwMDAwMDAwMDAxcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1MQotICAgIC0weDEuZjZiYWFhMTMxZGU2NTM2ZjVlMTNkMWNjNjQyOWNjMDdwLTQsCi0gICAgLTB4MS5mODAwMDAwMDAwMDAxcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1MgotICAgIDB4MS40YThjM2I0ZTljN2ZmMDBhMzZlMDYxYTBkMjI5NTA5M3AtMywKLSAgICAweDEuNGJmZmZmZmZmZmZmZnAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwNTMKLSAgICAtMHgxLjRhOGMzYjRlOWM3ZmYwMGEzNmUwNjFhMGQyMjk1MDkzcC0zLAotICAgIC0weDEuNGJmZmZmZmZmZmZmZnAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwNTQKLSAgICAweDEuNGE4YzNiNGU5YzdmZmZkNDgzMDVmNDRhNDJmNWY1MGZwLTMsCi0gICAgMHgxLjRjMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwNTUKLSAgICAtMHgxLjRhOGMzYjRlOWM3ZmZmZDQ4MzA1ZjQ0YTQyZjVmNTBmcC0zLAotICAgIC0weDEuNGMwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA1NgotICAgIDB4MS40YThjM2I0ZTljODAwZjllY2YyYjg2ZjNiM2JkNmY1YXAtMywKLSAgICAweDEuNGMwMDAwMDAwMDAwMXAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwNTcKLSAgICAtMHgxLjRhOGMzYjRlOWM4MDBmOWVjZjJiODZmM2IzYmQ2ZjVhcC0zLAotICAgIC0weDEuNGMwMDAwMDAwMDAwMXAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwNTgKLSAgICAweDEuMmU5Y2Q5NWJhYmEzMjVmZTYwNjcyMzNkNDQ5NmFhYWNwLTIsCi0gICAgMHgxLjMzMzMzMzMzMzMzMzJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDU5Ci0gICAgLTB4MS4yZTljZDk1YmFiYTMyNWZlNjA2NzIzM2Q0NDk2YWFhY3AtMiwKLSAgICAtMHgxLjMzMzMzMzMzMzMzMzJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYwCi0gICAgMHgxLjJlOWNkOTViYWJhMzM1NDc2ZjUxM2FjMjIxZDA3OGM3cC0yLAotICAgIDB4MS4zMzMzMzMzMzMzMzMzcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2MQotICAgIC0weDEuMmU5Y2Q5NWJhYmEzMzU0NzZmNTEzYWMyMjFkMDc4YzdwLTIsCi0gICAgLTB4MS4zMzMzMzMzMzMzMzMzcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2MgotICAgIDB4MS4yZTljZDk1YmFiYTM0NDkwN2UzYjUyNDZmZWY3NWQxNXAtMiwKLSAgICAweDEuMzMzMzMzMzMzMzMzNHAtMgotICB9LAotICB7IC8vIEVudHJ5IDEwNjMKLSAgICAtMHgxLjJlOWNkOTViYWJhMzQ0OTA3ZTNiNTI0NmZlZjc1ZDE1cC0yLAotICAgIC0weDEuMzMzMzMzMzMzMzMzNHAtMgotICB9LAotICB7IC8vIEVudHJ5IDEwNjQKLSAgICAweDEuM2ZhZWZjN2E1NDY2ZWYzMDQ1YzNmMWJlNzE2YWQ1NjhwLTEsCi0gICAgMHgxLjU5NDMxN2FjYzRlZjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDY1Ci0gICAgLTB4MS4zZmFlZmM3YTU0NjZlZjMwNDVjM2YxYmU3MTZhZDU2OHAtMSwKLSAgICAtMHgxLjU5NDMxN2FjYzRlZjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDY2Ci0gICAgMHgxLjNmYWVmYzdhNTQ2NmZiYWZiY2EwMjdiNmU4ZGI4YzA0cC0xLAotICAgIDB4MS41OTQzMTdhY2M0ZWY5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2NwotICAgIC0weDEuM2ZhZWZjN2E1NDY2ZmJhZmJjYTAyN2I2ZThkYjhjMDRwLTEsCi0gICAgLTB4MS41OTQzMTdhY2M0ZWY5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2OAotICAgIDB4MS4zZmFlZmM3YTU0NjcwODJmMzM3YzVkYWY1ZmZjNTZlMnAtMSwKLSAgICAweDEuNTk0MzE3YWNjNGVmYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwNjkKLSAgICAtMHgxLjNmYWVmYzdhNTQ2NzA4MmYzMzdjNWRhZjVmZmM1NmUycC0xLAotICAgIC0weDEuNTk0MzE3YWNjNGVmYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwNzAKLSAgICAweDEuNjg4OGE0ZTEzNGIyZGVmNWJlYTUxZjRjZDdkNjQ3YzZwLTEsCi0gICAgMHgxLjhmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDcxCi0gICAgLTB4MS42ODg4YTRlMTM0YjJkZWY1YmVhNTFmNGNkN2Q2NDdjNnAtMSwKLSAgICAtMHgxLjhmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDcyCi0gICAgMHgxLjY4ODhhNGUxMzRiMmVhNTIwYjIyNmVjYTg2OTRiM2EycC0xLAotICAgIDB4MS45cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3MwotICAgIC0weDEuNjg4OGE0ZTEzNGIyZWE1MjBiMjI2ZWNhODY5NGIzYTJwLTEsCi0gICAgLTB4MS45cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3NAotICAgIDB4MS42ODg4YTRlMTM0YjJmNWFlNTc5ZmJlNDgzNGY4ZmQ1NXAtMSwKLSAgICAweDEuOTAwMDAwMDAwMDAwMXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwNzUKLSAgICAtMHgxLjY4ODhhNGUxMzRiMmY1YWU1NzlmYmU0ODM0ZjhmZDU1cC0xLAotICAgIC0weDEuOTAwMDAwMDAwMDAwMXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwNzYKLSAgICAtMC4wLAotICAgIC0weDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDEwNzcKLSAgICAwLjAsCi0gICAgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDc4Ci0gICAgLTAuMCwKLSAgICAtMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3OQotICAgIDAuMCwKLSAgICAweDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDEwODAKLSAgICAtMC4wLAotICAgIC0weDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDEwODEKLSAgICAweDEuOTFmNjVmMTBkZDgxMmEwYjk1ZmY3MTg3MWFiNDgyMDdwLTUsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTdwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDgyCi0gICAgLTB4MS45MWY2NWYxMGRkODEyYTBiOTVmZjcxODcxYWI0ODIwN3AtNSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDgzCi0gICAgMHgxLjkxZjY1ZjEwZGQ4MTNhMDZhNmYxMmUzZGQ5YTZhNDFlcC01LAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA4NAotICAgIC0weDEuOTFmNjVmMTBkZDgxM2EwNmE2ZjEyZTNkZDlhNmE0MWVwLTUsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE4cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA4NQotICAgIDB4MS45MWY2NWYxMGRkODE0YTAxYjdlMmVhZjQ5ODk4NjFiN3AtNSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXAtNQotICB9LAotICB7IC8vIEVudHJ5IDEwODYKLSAgICAtMHgxLjkxZjY1ZjEwZGQ4MTRhMDFiN2UyZWFmNDk4OTg2MWI3cC01LAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtNQotICB9LAotICB7IC8vIEVudHJ5IDEwODcKLSAgICAweDEuOTE3YTZiYzI5YjQyYTljZDJlNzg3ZWUwMGNhOGY4ZTNwLTQsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTdwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDg4Ci0gICAgLTB4MS45MTdhNmJjMjliNDJhOWNkMmU3ODdlZTAwY2E4ZjhlM3AtNCwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDg5Ci0gICAgMHgxLjkxN2E2YmMyOWI0MmI5Yjk3NTRhNjc3MjlmNzkzNDZicC00LAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA5MAotICAgIC0weDEuOTE3YTZiYzI5YjQyYjliOTc1NGE2NzcyOWY3OTM0NmJwLTQsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE4cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA5MQotICAgIDB4MS45MTdhNmJjMjliNDJjOWE1YmMxYzUwMDUzMjQ3ZGU3OHAtNCwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXAtNAotICB9LAotICB7IC8vIEVudHJ5IDEwOTIKLSAgICAtMHgxLjkxN2E2YmMyOWI0MmM5YTViYzFjNTAwNTMyNDdkZTc4cC00LAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtNAotICB9LAotICB7IC8vIEVudHJ5IDEwOTMKLSAgICAweDEuOGY4YjgzYzY5YTYwOTc1Zjk4NDUzODg2Zjk1M2EwZTVwLTMsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTdwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDk0Ci0gICAgLTB4MS44ZjhiODNjNjlhNjA5NzVmOTg0NTM4ODZmOTUzYTBlNXAtMywKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDk1Ci0gICAgMHgxLjhmOGI4M2M2OWE2MGE3MTBlNDJkMzQzNTUxNmRkYWNjcC0zLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5NgotICAgIC0weDEuOGY4YjgzYzY5YTYwYTcxMGU0MmQzNDM1NTE2ZGRhY2NwLTMsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5NwotICAgIDB4MS44ZjhiODNjNjlhNjBiNmMyMzAxNTJmZTNhOTgxZDY4NnAtMywKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwOTgKLSAgICAtMHgxLjhmOGI4M2M2OWE2MGI2YzIzMDE1MmZlM2E5ODFkNjg2cC0zLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwOTkKLSAgICAweDEuODdkZTJhNmFlYTk2MWEzZTlkZWRlYTU3ZmU3ZTY1MTRwLTIsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTdwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTAwCi0gICAgLTB4MS44N2RlMmE2YWVhOTYxYTNlOWRlZGVhNTdmZTdlNjUxNHAtMiwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTAxCi0gICAgMHgxLjg3ZGUyYTZhZWE5NjI5MDZkM2Q1ODM5ZWExYTViY2YwcC0yLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEwMgotICAgIC0weDEuODdkZTJhNmFlYTk2MjkwNmQzZDU4MzllYTFhNWJjZjBwLTIsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE4cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEwMwotICAgIDB4MS44N2RlMmE2YWVhOTYzN2NmMDliZDFjZTU0NGI0OTZlYXAtMiwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXAtMgotICB9LAotICB7IC8vIEVudHJ5IDExMDQKLSAgICAtMHgxLjg3ZGUyYTZhZWE5NjM3Y2YwOWJkMWNlNTQ0YjQ5NmVhcC0yLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMgotICB9LAotICB7IC8vIEVudHJ5IDExMDUKLSAgICAweDEuNmEwOWU2NjdmM2JjYmE5OWFmYjAxMzU3Mjk0NTc4NzRwLTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTA2Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmNiYTk5YWZiMDEzNTcyOTQ1Nzg3NHAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTA3Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2M1ZTlmZWUzNTJmNTBmZDNmNGU5cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEwOAotICAgIC0weDEuNmEwOWU2NjdmM2JjYzVlOWZlZTM1MmY1MGZkM2Y0ZTlwLTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEwOQotICAgIDB4MS42YTA5ZTY2N2YzYmNkMTNhNGUxNjkyOTJmNjA3ZWVlNXAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXAtMQotICB9LAotICB7IC8vIEVudHJ5IDExMTAKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2QxM2E0ZTE2OTI5MmY2MDdlZWU1cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMQotICB9LAotICB7IC8vIEVudHJ5IDExMTEKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZwLTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTdwMAotICB9LAotICB7IC8vIEVudHJ5IDExMTIKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNWY1NmZmcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTExMwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMXAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTExNAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzFwLTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTE1Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzliOTYzcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTE2Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5Yjk2M3AtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMAotICB9LAotICB7IC8vIEVudHJ5IDExMTcKLSAgICAweDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ5YmZhZWVkNDJwLTUxLAotICAgIDB4MS45MjFmYjU0NDQyZDE3cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTE4Ci0gICAgLTB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDliZmFlZWQ0MnAtNTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTE5Ci0gICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0MzZlMmVkcC01MywKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEyMAotICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQzNmUyZWRwLTUzLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEyMQotICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZjN2Q1YmJjNWNwLTUyLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTIyCi0gICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzdkNWJiYzVjcC01MiwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMQotICB9LAotICB7IC8vIEVudHJ5IDExMjMKLSAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWJiODdjZTFicC01MCwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEyNAotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDliYjg3Y2UxYnAtNTAsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTI1Ci0gICAgLTB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwNDBiZjAwM3AtNTIsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwMgotICB9LAotICB7IC8vIEVudHJ5IDExMjYKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQwYmYwMDNwLTUyLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEyNwotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3YmQ2YmY0ZHAtNTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwMgotICB9LAotICB7IC8vIEVudHJ5IDExMjgKLSAgICAtMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzdiZDZiZjRkcC01MSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMgotICB9LAotICB7IC8vIEVudHJ5IDExMjkKLSAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWFhZWI1MTgycC00OSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEzMAotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDlhYWViNTE4MnAtNDksCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTMxCi0gICAgLTB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwMzYwMjQ1Y3AtNTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwMwotICB9LAotICB7IC8vIEVudHJ5IDExMzIKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDM2MDI0NWNwLTUxLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEzMwotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3NWMyY2IwZXAtNTAsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwMwotICB9LAotICB7IC8vIEVudHJ5IDExMzQKLSAgICAtMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2Yzc1YzJjYjBlcC01MCwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwMwotICB9LAotICB7IC8vIEVudHJ5IDExMzUKLSAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OTY4Nzk1ZjFjcC00OCwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEzNgotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDk2ODc5NWYxY3AtNDgsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTM3Ci0gICAgLTB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwMGIwZjViZnAtNTAsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwNAotICB9LAotICB7IC8vIEVudHJ5IDExMzgKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDBiMGY1YmZwLTUwLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEzOQotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM1ZDcyZmExMXAtNDksCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwNAotICB9LAotICB7IC8vIEVudHJ5IDExNDAKLSAgICAtMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzVkNzJmYTExcC00OSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNAotICB9LAotICB7IC8vIEVudHJ5IDExNDEKLSAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0ODVlYjE5NTg0cC00NywKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3A1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE0MgotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDg1ZWIxOTU4NHAtNDcsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTQzCi0gICAgLTB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjZmNWY0M2I0Y3AtNDksCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwNQotICB9LAotICB7IC8vIEVudHJ5IDExNDQKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI2ZjVmNDNiNGNwLTQ5LAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE0NQotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmJmYzMzYjYxZnAtNDgsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwNQotICB9LAotICB7IC8vIEVudHJ5IDExNDYKLSAgICAtMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YmZjMzNiNjFmcC00OCwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNQotICB9LAotICB7IC8vIEVudHJ5IDExNDcKLSAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0NDM3OTI2ZjI1cC00NiwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3A2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE0OAotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDQzNzkyNmYyNXAtNDYsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTQ5Ci0gICAgLTB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjZjYjAxNTE3ZHAtNDgsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwNgotICB9LAotICB7IC8vIEVudHJ5IDExNTAKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI2Y2IwMTUxN2RwLTQ4LAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE1MQotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmE3NzM2YTY1OHAtNDcsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwNgotICB9LAotICB7IC8vIEVudHJ5IDExNTIKLSAgICAtMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YTc3MzZhNjU4cC00NywKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNgotICB9LAotICB7IC8vIEVudHJ5IDExNTMKLSAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjAzMzliMTVkNWFhcC00NSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3A3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE1NAotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwMzM5YjE1ZDVhYXAtNDUsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTU1Ci0gICAgLTB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjYxZjM1YWE0M3AtNDcsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwNwotICB9LAotICB7IC8vIEVudHJ5IDExNTYKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI2MWYzNWFhNDNwLTQ3LAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE1NwotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNjQ2MzQyNjczYXAtNDYsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwNwotICB9LAotICB7IC8vIEVudHJ5IDExNTgKLSAgICAtMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2NDYzNDI2NzNhcC00NiwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNwotICB9LAotICB7IC8vIEVudHJ5IDExNTkKLSAgICAweDEuNmEwOWU2NjdmM2JjZmZhNjBjMGY1MzM0MGZkMjQ5MDRwLTEsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDFwMQotICB9LAotICB7IC8vIEVudHJ5IDExNjAKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2ZmYTYwYzBmNTMzNDBmZDI0OTA0cC0xLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2MQotICAgIDB4MS42YTA5ZTY2N2YzYmNkMjY0Y2Y0MjU0YmM3YWIwYzlmYXAtMSwKLSAgICAweDEuMmQ5N2M3ZjMzMjFkMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2MgotICAgIC0weDEuNmEwOWU2NjdmM2JjZDI2NGNmNDI1NGJjN2FiMGM5ZmFwLTEsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTYzCi0gICAgMHgxLjZhMDllNjY3ZjNiY2E1MjM5Mjc1NTY0NGRmZTcyMzU3cC0xLAotICAgIDB4MS4yZDk3YzdmMzMyMWQzcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTY0Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmNhNTIzOTI3NTU2NDRkZmU3MjM1N3AtMSwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDNwMQotICB9LAotICB7IC8vIEVudHJ5IDExNjUKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzhjMmRmMWI3NTJiNjA2YTBhNDcycC0xLAotICAgIDB4MS5mNmE3YTI5NTUzODVkcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTY2Ci0gICAgMHgxLjZhMDllNjY3ZjNiYzhjMmRmMWI3NTJiNjA2YTBhNDcycC0xLAotICAgIC0weDEuZjZhN2EyOTU1Mzg1ZHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2NwotICAgIC0weDEuNmEwOWU2NjdmM2JjYjk2ZjJlODQ1MTJkYTQ4OGZmMmRwLTEsCi0gICAgMHgxLmY2YTdhMjk1NTM4NWVwMQotICB9LAotICB7IC8vIEVudHJ5IDExNjgKLSAgICAweDEuNmEwOWU2NjdmM2JjYjk2ZjJlODQ1MTJkYTQ4OGZmMmRwLTEsCi0gICAgLTB4MS5mNmE3YTI5NTUzODVlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTY5Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmNlNmIwNmI1MTRmYTUzY2M5MzI0ZnAtMSwKLSAgICAweDEuZjZhN2EyOTU1Mzg1ZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE3MAotICAgIDB4MS42YTA5ZTY2N2YzYmNlNmIwNmI1MTRmYTUzY2M5MzI0ZnAtMSwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWZwMQotICB9LAotICB7IC8vIEVudHJ5IDExNzEKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU4YjI3YjZhcC0xLAotICAgIDB4MS4yZDk3YzdmMzMyMWQxcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTcyCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU4YjI3YjZhcC0xLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE3MwotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1MGM5YmRwLTEsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDJwMgotICB9LAotICB7IC8vIEVudHJ5IDExNzQKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1MGM5YmRwLTEsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTc1Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNWVmMTgxMHAtMSwKLSAgICAweDEuMmQ5N2M3ZjMzMjFkM3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE3NgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNWVmMTgxMHAtMSwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDNwMgotICB9LAotICB7IC8vIEVudHJ5IDExNzcKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDM5NjIxOTNiNTM3MzA2OWJhMGMycC0xLAotICAgIDB4MS41ZmRiYmU5YmJhNzc0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTc4Ci0gICAgMHgxLjZhMDllNjY3ZjNiZDM5NjIxOTNiNTM3MzA2OWJhMGMycC0xLAotICAgIC0weDEuNWZkYmJlOWJiYTc3NHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE3OQotICAgIC0weDEuNmEwOWU2NjdmM2JjZGVkZjlmYTE1NjgzZTUxZjdlNjBwLTEsCi0gICAgMHgxLjVmZGJiZTliYmE3NzVwMgotICB9LAotICB7IC8vIEVudHJ5IDExODAKLSAgICAweDEuNmEwOWU2NjdmM2JjZGVkZjlmYTE1NjgzZTUxZjdlNjBwLTEsCi0gICAgLTB4MS41ZmRiYmU5YmJhNzc1cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTgxCi0gICAgLTB4MS42YTA5ZTY2N2YzYmM4NDVkMjYwNzU5OTRhZDAyYmQ5OHAtMSwKLSAgICAweDEuNWZkYmJlOWJiYTc3NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE4MgotICAgIDB4MS42YTA5ZTY2N2YzYmM4NDVkMjYwNzU5OTRhZDAyYmQ5OHAtMSwKLSAgICAtMHgxLjVmZGJiZTliYmE3NzZwMgotICB9LAotICB7IC8vIEVudHJ5IDExODMKLSAgICAweDEuNmEwOWU2NjdmM2JjNTI3MWU0OGI1Mjc2ZjQzODU3OWZwLTEsCi0gICAgMHgxLmM0NjNhYmVjY2IyYmFwMgotICB9LAotICB7IC8vIEVudHJ5IDExODQKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzUyNzFlNDhiNTI3NmY0Mzg1NzlmcC0xLAotICAgIC0weDEuYzQ2M2FiZWNjYjJiYXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE4NQotICAgIDB4MS42YTA5ZTY2N2YzYmNhY2Y0NWUyNTRmNjYzOGNmZThjNnAtMSwKLSAgICAweDEuYzQ2M2FiZWNjYjJiYnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE4NgotICAgIC0weDEuNmEwOWU2NjdmM2JjYWNmNDVlMjU0ZjY2MzhjZmU4YzZwLTEsCi0gICAgLTB4MS5jNDYzYWJlY2NiMmJicDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTg3Ci0gICAgMHgxLjZhMDllNjY3ZjNiZDA3NzZkN2JmNGM1NTY2YzZkYjg3cC0xLAotICAgIDB4MS5jNDYzYWJlY2NiMmJjcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTg4Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmQwNzc2ZDdiZjRjNTU2NmM2ZGI4N3AtMSwKLSAgICAtMHgxLmM0NjNhYmVjY2IyYmNwMgotICB9LAotICB7IC8vIEVudHJ5IDExODkKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTMxMTc0ZjVwLTEsCi0gICAgMHgxLmY2YTdhMjk1NTM4NWRwMgotICB9LAotICB7IC8vIEVudHJ5IDExOTAKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmUzMTE3NGY1cC0xLAotICAgIC0weDEuZjZhN2EyOTU1Mzg1ZHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE5MQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTE5NGNkNHAtMSwKLSAgICAweDEuZjZhN2EyOTU1Mzg1ZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE5MgotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmUxOTRjZDRwLTEsCi0gICAgLTB4MS5mNmE3YTI5NTUzODVlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTkzCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5MjEyNGI0cC0xLAotICAgIDB4MS5mNmE3YTI5NTUzODVmcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTk0Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTIxMjRiNHAtMSwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWZwMgotICB9LAotICB7IC8vIEVudHJ5IDExOTUKLSAgICAweDEuNmEwOWU2NjdmM2JkZmFlMWRjY2U0ZjE4NjY1NjgxYzZwLTEsCi0gICAgMHgxLjE0NzVjYzllZWRlZmZwMwotICB9LAotICB7IC8vIEVudHJ5IDExOTYKLSAgICAtMHgxLjZhMDllNjY3ZjNiZGZhZTFkY2NlNGYxODY2NTY4MWM2cC0xLAotICAgIC0weDEuMTQ3NWNjOWVlZGVmZnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE5NwotICAgIDB4MS42YTA5ZTY2N2YzYmQ0NWRjZTk5YTU1M2E2ZDdkODA2NXAtMSwKLSAgICAweDEuMTQ3NWNjOWVlZGZwMwotICB9LAotICB7IC8vIEVudHJ5IDExOTgKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDQ1ZGNlOTlhNTUzYTZkN2Q4MDY1cC0xLAotICAgIC0weDEuMTQ3NWNjOWVlZGZwMwotICB9LAotICB7IC8vIEVudHJ5IDExOTkKLSAgICAweDEuNmEwOWU2NjdmM2JjOTBkN2Y2NjY1YjVjMWEyMjA1NmFwLTEsCi0gICAgMHgxLjE0NzVjYzllZWRmMDFwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMDAKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzkwZDdmNjY2NWI1YzFhMjIwNTZhcC0xLAotICAgIC0weDEuMTQ3NWNjOWVlZGYwMXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwMQotICAgIDB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4MzczZTBkNmI5NHAtNDksCi0gICAgMHgxLjJkOTdjN2YzMzIxZDFwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMDIKLSAgICAtMHgxLjM0ZjI3Mjk5M2QxNDE0YTJiMzliZDgzNzNlMGQ2Yjk0cC00OSwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDFwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMDMKLSAgICAweDEuYTc5Mzk0YzllOGEwYTUxNTljZGVjMWJhODVhNjg4YmRwLTUyLAotICAgIDB4MS4yZDk3YzdmMzMyMWQycDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjA0Ci0gICAgLTB4MS5hNzkzOTRjOWU4YTBhNTE1OWNkZWMxYmE4NWE2ODhiZHAtNTIsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQycDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjA1Ci0gICAgLTB4MS45NjFiMWFjZDg1ZDdkNmJhOThjODRmOTE1M2MwY2MxNnAtNTAsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDNwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMDYKLSAgICAweDEuOTYxYjFhY2Q4NWQ3ZDZiYTk4Yzg0ZjkxNTNjMGNjMTZwLTUwLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkM3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwNwotICAgIC0weDEuNmEwOWU2NjdmM2JiOTBmMjIwZjg1NmQwYjFhNDA2YzNwLTEsCi0gICAgMHgxLjQ2YjljMzQ3NzY0YTJwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMDgKLSAgICAweDEuNmEwOWU2NjdmM2JiOTBmMjIwZjg1NmQwYjFhNDA2YzNwLTEsCi0gICAgLTB4MS40NmI5YzM0Nzc2NGEycDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjA5Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmM0NWY3MTQyYzUwYWY4NGYyNmM3NXAtMSwKLSAgICAweDEuNDZiOWMzNDc3NjRhM3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIxMAotICAgIDB4MS42YTA5ZTY2N2YzYmM0NWY3MTQyYzUwYWY4NGYyNmM3NXAtMSwKLSAgICAtMHgxLjQ2YjljMzQ3NzY0YTNwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMTEKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2ZhZmMwNzYwNGE4ZGZkYmU1ODhkcC0xLAotICAgIDB4MS40NmI5YzM0Nzc2NGE0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjEyCi0gICAgMHgxLjZhMDllNjY3ZjNiY2ZhZmMwNzYwNGE4ZGZkYmU1ODhkcC0xLAotICAgIC0weDEuNDZiOWMzNDc3NjRhNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIxMwotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOWQ2MzRlOWZwLTEsCi0gICAgMHgxLjVmZGJiZTliYmE3NzRwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMTQKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOWQ2MzRlOWZwLTEsCi0gICAgLTB4MS41ZmRiYmU5YmJhNzc0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjE1Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYzQ2MTE3OHAtMSwKLSAgICAweDEuNWZkYmJlOWJiYTc3NXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIxNgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYzQ2MTE3OHAtMSwKLSAgICAtMHgxLjVmZGJiZTliYmE3NzVwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMTcKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRiMjhkNDUxcC0xLAotICAgIDB4MS41ZmRiYmU5YmJhNzc2cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjE4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRiMjhkNDUxcC0xLAotICAgIC0weDEuNWZkYmJlOWJiYTc3NnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIxOQotICAgIC0weDEuNmEwOWU2NjdmM2JlMDc1Y2FkMmQ1MGRmYzY4Y2Q4OGZwLTEsCi0gICAgMHgxLjc4ZmRiOWVmZmVhNDVwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMjAKLSAgICAweDEuNmEwOWU2NjdmM2JlMDc1Y2FkMmQ1MGRmYzY4Y2Q4OGZwLTEsCi0gICAgLTB4MS43OGZkYjllZmZlYTQ1cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjIxCi0gICAgLTB4MS42YTA5ZTY2N2YzYmQ1MjU3YjlmOTU3MDFkM2YxM2Y1ZHAtMSwKLSAgICAweDEuNzhmZGI5ZWZmZWE0NnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIyMgotICAgIDB4MS42YTA5ZTY2N2YzYmQ1MjU3YjlmOTU3MDFkM2YxM2Y1ZHAtMSwKLSAgICAtMHgxLjc4ZmRiOWVmZmVhNDZwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMjMKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzlkNTJjNmM1NWQyMzg2ZDMyYzkycC0xLAotICAgIDB4MS43OGZkYjllZmZlYTQ3cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjI0Ci0gICAgMHgxLjZhMDllNjY3ZjNiYzlkNTJjNmM1NWQyMzg2ZDMyYzkycC0xLAotICAgIC0weDEuNzhmZGI5ZWZmZWE0N3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIyNQotICAgIDB4MS42YTA5ZTY2N2YzYmI4NDc3NTA5OTU1MDkzYmIyOTJiZXAtMSwKLSAgICAweDEuYWI0MWIwOTg4NmZlOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIyNgotICAgIC0weDEuNmEwOWU2NjdmM2JiODQ3NzUwOTk1NTA5M2JiMjkyYmVwLTEsCi0gICAgLTB4MS5hYjQxYjA5ODg2ZmU4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjI3Ci0gICAgMHgxLjZhMDllNjY3ZjNiYzM5N2M0M2NkNGVlODE1M2U2MGEwcC0xLAotICAgIDB4MS5hYjQxYjA5ODg2ZmU5cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjI4Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmMzOTdjNDNjZDRlZTgxNTNlNjBhMHAtMSwKLSAgICAtMHgxLmFiNDFiMDk4ODZmZTlwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMjkKLSAgICAweDEuNmEwOWU2NjdmM2JjZWU4MTM3MDE0OGM2OTQ0N2I0ZTdwLTEsCi0gICAgMHgxLmFiNDFiMDk4ODZmZWFwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMzAKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2VlODEzNzAxNDhjNjk0NDdiNGU3cC0xLAotICAgIC0weDEuYWI0MWIwOTg4NmZlYXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIzMQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5MjIxNDFiNHAtMSwKLSAgICAweDEuYzQ2M2FiZWNjYjJiYXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIzMgotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTIyMTQxYjRwLTEsCi0gICAgLTB4MS5jNDYzYWJlY2NiMmJhcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjMzCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5ZDcxN2E3cC0xLAotICAgIDB4MS5jNDYzYWJlY2NiMmJicDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjM0Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOWQ3MTdhN3AtMSwKLSAgICAtMHgxLmM0NjNhYmVjY2IyYmJwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMzUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTE4Y2VkOWFwLTEsCi0gICAgMHgxLmM0NjNhYmVjY2IyYmNwMwotICB9LAotICB7IC8vIEVudHJ5IDEyMzYKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmUxOGNlZDlhcC0xLAotICAgIC0weDEuYzQ2M2FiZWNjYjJiY3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIzNwotICAgIDB4MS42YTA5ZTY2N2YzYmUxM2Q3N2Q4YzUyYTcyNjU1MGVhY3AtMSwKLSAgICAweDEuZGQ4NWE3NDEwZjU4YnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIzOAotICAgIC0weDEuNmEwOWU2NjdmM2JlMTNkNzdkOGM1MmE3MjY1NTBlYWNwLTEsCi0gICAgLTB4MS5kZDg1YTc0MTBmNThicDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjM5Ci0gICAgMHgxLjZhMDllNjY3ZjNiZDVlZDI4YTU4NThjOTM5ZjZkZGFhcC0xLAotICAgIDB4MS5kZDg1YTc0MTBmNThjcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQwCi0gICAgLTB4MS42YTA5ZTY2N2YzYmQ1ZWQyOGE1ODU4YzkzOWY2ZGRhYXAtMSwKLSAgICAtMHgxLmRkODVhNzQxMGY1OGNwMwotICB9LAotICB7IC8vIEVudHJ5IDEyNDEKLSAgICAweDEuNmEwOWU2NjdmM2JjYTljZDk3MjQ1ZWVhZjMxNjMzMGVwLTEsCi0gICAgMHgxLmRkODVhNzQxMGY1OGRwMwotICB9LAotICB7IC8vIEVudHJ5IDEyNDIKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2E5Y2Q5NzI0NWVlYWYzMTYzMzBlcC0xLAotICAgIC0weDEuZGQ4NWE3NDEwZjU4ZHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI0MwotICAgIDB4MS41ODNlYmVmZjY1Y2MyMjY0ODBhZTY4NWMxNzY1ZGVjMXAtNDksCi0gICAgMHgxLmY2YTdhMjk1NTM4NWRwMwotICB9LAotICB7IC8vIEVudHJ5IDEyNDQKLSAgICAtMHgxLjU4M2ViZWZmNjVjYzIyNjQ4MGFlNjg1YzE3NjVkZWMxcC00OSwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWRwMwotICB9LAotICB7IC8vIEVudHJ5IDEyNDUKLSAgICAweDEuNjBmYWZiZmQ5NzMwODk5MjAyYjlhMTcwYzM5NzFlODZwLTUxLAotICAgIDB4MS5mNmE3YTI5NTUzODVlcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQ2Ci0gICAgLTB4MS42MGZhZmJmZDk3MzA4OTkyMDJiOWExNzBjMzk3MWU4NnAtNTEsCi0gICAgLTB4MS5mNmE3YTI5NTUzODVlcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQ3Ci0gICAgLTB4MS40ZjgyODIwMTM0NjdiYjM2ZmVhMzJmNDc5NzUzZmU3YXAtNTAsCi0gICAgMHgxLmY2YTdhMjk1NTM4NWZwMwotICB9LAotICB7IC8vIEVudHJ5IDEyNDgKLSAgICAweDEuNGY4MjgyMDEzNDY3YmIzNmZlYTMyZjQ3OTc1M2ZlN2FwLTUwLAotICAgIC0weDEuZjZhN2EyOTU1Mzg1ZnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI0OQotICAgIC0weDEuNmEwOWU2NjdmM2JhMGRmMjk5ZDI1ZjgyZjYzOTI1MWZwLTEsCi0gICAgMHgxLjA3ZTRjZWY0Y2JkOTZwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNTAKLSAgICAweDEuNmEwOWU2NjdmM2JhMGRmMjk5ZDI1ZjgyZjYzOTI1MWZwLTEsCi0gICAgLTB4MS4wN2U0Y2VmNGNiZDk2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjUxCi0gICAgLTB4MS42YTA5ZTY2N2YzYmI3N2ZjODAzYTUzNDFjNTUyZmUwZnAtMSwKLSAgICAweDEuMDdlNGNlZjRjYmQ5N3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI1MgotICAgIDB4MS42YTA5ZTY2N2YzYmI3N2ZjODAzYTUzNDFjNTUyZmUwZnAtMSwKLSAgICAtMHgxLjA3ZTRjZWY0Y2JkOTdwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNTMKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2UyMDY2NmEyNDZmZjJhNjJmMDk3cC0xLAotICAgIDB4MS4wN2U0Y2VmNGNiZDk4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjU0Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2UyMDY2NmEyNDZmZjJhNjJmMDk3cC0xLAotICAgIC0weDEuMDdlNGNlZjRjYmQ5OHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI1NQotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkMjUzMWE0M2RwLTEsCi0gICAgMHgxLjE0NzVjYzllZWRlZmZwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNTYKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkMjUzMWE0M2RwLTEsCi0gICAgLTB4MS4xNDc1Y2M5ZWVkZWZmcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjU3Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4NjQzNzY1NnAtMSwKLSAgICAweDEuMTQ3NWNjOWVlZGZwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNTgKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmODY0Mzc2NTZwLTEsCi0gICAgLTB4MS4xNDc1Y2M5ZWVkZnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI1OQotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTc1NTQ4NmZwLTEsCi0gICAgMHgxLjE0NzVjYzllZWRmMDFwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNjAKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTc1NTQ4NmZwLTEsCi0gICAgLTB4MS4xNDc1Y2M5ZWVkZjAxcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjYxCi0gICAgLTB4MS42YTA5ZTY2N2YzYmVkNTU3NDExZjRlNGMxMTRkNzM1N3AtMSwKLSAgICAweDEuMjEwNmNhNDkxMDA2OHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI2MgotICAgIDB4MS42YTA5ZTY2N2YzYmVkNTU3NDExZjRlNGMxMTRkNzM1N3AtMSwKLSAgICAtMHgxLjIxMDZjYTQ5MTAwNjhwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNjMKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDZiNGQ1YWI3NWE5MDlmOGU1YjRjcC0xLAotICAgIDB4MS4yMTA2Y2E0OTEwMDY5cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjY0Ci0gICAgMHgxLjZhMDllNjY3ZjNiZDZiNGQ1YWI3NWE5MDlmOGU1YjRjcC0xLAotICAgIC0weDEuMjEwNmNhNDkxMDA2OXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI2NQotICAgIC0weDEuNmEwOWU2NjdmM2JjMDE0Mzc0NGY2NmQzYzNjNTVjZDlwLTEsCi0gICAgMHgxLjIxMDZjYTQ5MTAwNmFwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNjYKLSAgICAweDEuNmEwOWU2NjdmM2JjMDE0Mzc0NGY2NmQzYzNjNTVjZDlwLTEsCi0gICAgLTB4MS4yMTA2Y2E0OTEwMDZhcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjY3Ci0gICAgLTB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4MzcwNWNlYzEyMHAtNDgsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDFwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNjgKLSAgICAweDEuMzRmMjcyOTkzZDE0MTRhMmIzOWJkODM3MDVjZWMxMjBwLTQ4LAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI2OQotICAgIC0weDEuYTc5Mzk0YzllOGEwYTUxNTljZGVjMWJhODM2MmI5NjhwLTUxLAotICAgIDB4MS4yZDk3YzdmMzMyMWQycDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjcwCi0gICAgMHgxLmE3OTM5NGM5ZThhMGE1MTU5Y2RlYzFiYTgzNjJiOTY4cC01MSwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDJwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNzEKLSAgICAweDEuOTYxYjFhY2Q4NWQ3ZDZiYTk4Yzg0ZjkxMzNkMTBhYmVwLTQ5LAotICAgIDB4MS4yZDk3YzdmMzMyMWQzcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjcyCi0gICAgLTB4MS45NjFiMWFjZDg1ZDdkNmJhOThjODRmOTEzM2QxMGFiZXAtNDksCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQzcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjczCi0gICAgMHgxLjZhMDllNjY3ZjNiYTAxNzdjOTczNWRiYjcyZjA5ZjY1cC0xLAotICAgIDB4MS4zYTI4YzU5ZDU0MzM5cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjc0Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmEwMTc3Yzk3MzVkYmI3MmYwOWY2NXAtMSwKLSAgICAtMHgxLjNhMjhjNTlkNTQzMzlwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNzUKLSAgICAweDEuNmEwOWU2NjdmM2JiNmI4MWFmZGI1MTdhNGU4NTQ4YjRwLTEsCi0gICAgMHgxLjNhMjhjNTlkNTQzM2FwNAotICB9LAotICB7IC8vIEVudHJ5IDEyNzYKLSAgICAtMHgxLjZhMDllNjY3ZjNiYjZiODFhZmRiNTE3YTRlODU0OGI0cC0xLAotICAgIC0weDEuM2EyOGM1OWQ1NDMzYXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI3NwotICAgIDB4MS42YTA5ZTY2N2YzYmNkNThiOTY0MzQ1MzdjMDEwMGI5YnAtMSwKLSAgICAweDEuM2EyOGM1OWQ1NDMzYnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI3OAotICAgIC0weDEuNmEwOWU2NjdmM2JjZDU4Yjk2NDM0NTM3YzAxMDBiOWJwLTEsCi0gICAgLTB4MS4zYTI4YzU5ZDU0MzNicDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjc5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDA3MTFmNDM3cC0xLAotICAgIDB4MS40NmI5YzM0Nzc2NGEycDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjgwCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQwNzExZjQzN3AtMSwKLSAgICAtMHgxLjQ2YjljMzQ3NzY0YTJwNAotICB9LAotICB7IC8vIEVudHJ5IDEyODEKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzljOWVjODNwLTEsCi0gICAgMHgxLjQ2YjljMzQ3NzY0YTNwNAotICB9LAotICB7IC8vIEVudHJ5IDEyODIKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5YzllYzgzcC0xLAotICAgIC0weDEuNDZiOWMzNDc3NjRhM3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI4MwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzgxZTRjZnAtMSwKLSAgICAweDEuNDZiOWMzNDc3NjRhNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI4NAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWM4MWU0Y2ZwLTEsCi0gICAgLTB4MS40NmI5YzM0Nzc2NGE0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjg1Ci0gICAgMHgxLjZhMDllNjY3ZjNiZWUxZDIxMTdlNTAxMzY5ZmJmZmVmcC0xLAotICAgIDB4MS41MzRhYzBmMTk4NjBicDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjg2Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmVlMWQyMTE3ZTUwMTM2OWZiZmZlZnAtMSwKLSAgICAtMHgxLjUzNGFjMGYxOTg2MGJwNAotICB9LAotICB7IC8vIEVudHJ5IDEyODcKLSAgICAweDEuNmEwOWU2NjdmM2JkNzdjODJiMTY1YzU4MDRiN2I4NDNwLTEsCi0gICAgMHgxLjUzNGFjMGYxOTg2MGNwNAotICB9LAotICB7IC8vIEVudHJ5IDEyODgKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDc3YzgyYjE2NWM1ODA0YjdiODQzcC0xLAotICAgIC0weDEuNTM0YWMwZjE5ODYwY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI4OQotICAgIDB4MS42YTA5ZTY2N2YzYmMwZGJlNDRhZTY4OWIzNTY5OGEyZnAtMSwKLSAgICAweDEuNTM0YWMwZjE5ODYwZHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI5MAotICAgIC0weDEuNmEwOWU2NjdmM2JjMGRiZTQ0YWU2ODliMzU2OThhMmZwLTEsCi0gICAgLTB4MS41MzRhYzBmMTk4NjBkcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjkxCi0gICAgMHgxLjNkYzU4NWIyYzc0MjE4MTMyNmUwN2M0MDM3NTQ2NGRlcC00OCwKLSAgICAweDEuNWZkYmJlOWJiYTc3NHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI5MgotICAgIC0weDEuM2RjNTg1YjJjNzQyMTgxMzI2ZTA3YzQwMzc1NDY0ZGVwLTQ4LAotICAgIC0weDEuNWZkYmJlOWJiYTc3NHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI5MwotICAgIDB4MS5lZTJjMmQ5NjNhMTBjMDk5MzcwM2UyMDQ0MmFkN2I4ZHAtNTEsCi0gICAgMHgxLjVmZGJiZTliYmE3NzVwNAotICB9LAotICB7IC8vIEVudHJ5IDEyOTQKLSAgICAtMHgxLmVlMmMyZDk2M2ExMGMwOTkzNzAzZTIwNDQyYWQ3YjhkcC01MSwKLSAgICAtMHgxLjVmZGJiZTliYmE3NzVwNAotICB9LAotICB7IC8vIEVudHJ5IDEyOTUKLSAgICAtMHgxLjg0NzRmNDlhNzE3YmNmZDliMjNmMDc3ZWM4ZGQxNzVicC00OSwKLSAgICAweDEuNWZkYmJlOWJiYTc3NnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI5NgotICAgIDB4MS44NDc0ZjQ5YTcxN2JjZmQ5YjIzZjA3N2VjOGRkMTc1YnAtNDksCi0gICAgLTB4MS41ZmRiYmU5YmJhNzc2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjk3Ci0gICAgLTB4MS42YTA5ZTY2N2YzYjlmNGZjZjkxNDViZjNlZjM5ZjkwMXAtMSwKLSAgICAweDEuNmM2Y2JjNDVkYzhkY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI5OAotICAgIDB4MS42YTA5ZTY2N2YzYjlmNGZjZjkxNDViZjNlZjM5ZjkwMXAtMSwKLSAgICAtMHgxLjZjNmNiYzQ1ZGM4ZGNwNAotICB9LAotICB7IC8vIEVudHJ5IDEyOTkKLSAgICAtMHgxLjZhMDllNjY3ZjNiYjVmMDZkZjdjNGZiMmQ3NDk3MmFlcC0xLAotICAgIDB4MS42YzZjYmM0NWRjOGRkcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzAwCi0gICAgMHgxLjZhMDllNjY3ZjNiYjVmMDZkZjdjNGZiMmQ3NDk3MmFlcC0xLAotICAgIC0weDEuNmM2Y2JjNDVkYzhkZHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMwMQotICAgIC0weDEuNmEwOWU2NjdmM2JjYzkxMGM1ZTQ0MzcwNTU0ZjA1ZjRwLTEsCi0gICAgMHgxLjZjNmNiYzQ1ZGM4ZGVwNAotICB9LAotICB7IC8vIEVudHJ5IDEzMDIKLSAgICAweDEuNmEwOWU2NjdmM2JjYzkxMGM1ZTQ0MzcwNTU0ZjA1ZjRwLTEsCi0gICAgLTB4MS42YzZjYmM0NWRjOGRlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzAzCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNlODU2ODViZHAtMSwKLSAgICAweDEuNzhmZGI5ZWZmZWE0NXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMwNAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNlODU2ODViZHAtMSwKLSAgICAtMHgxLjc4ZmRiOWVmZmVhNDVwNAotICB9LAotICB7IC8vIEVudHJ5IDEzMDUKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjZjYjRhNDNkcC0xLAotICAgIDB4MS43OGZkYjllZmZlYTQ2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzA2Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjZjYjRhNDNkcC0xLAotICAgIC0weDEuNzhmZGI5ZWZmZWE0NnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMwNwotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjExMmMyYmNwLTEsCi0gICAgMHgxLjc4ZmRiOWVmZmVhNDdwNAotICB9LAotICB7IC8vIEVudHJ5IDEzMDgKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjExMmMyYmNwLTEsCi0gICAgLTB4MS43OGZkYjllZmZlYTQ3cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzA5Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmVlZTRjZTFkZDUxZGFjMjNjNmJkY3AtMSwKLSAgICAweDEuODU4ZWI3OWEyMGJhZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMxMAotICAgIDB4MS42YTA5ZTY2N2YzYmVlZTRjZTFkZDUxZGFjMjNjNmJkY3AtMSwKLSAgICAtMHgxLjg1OGViNzlhMjBiYWVwNAotICB9LAotICB7IC8vIEVudHJ5IDEzMTEKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDg0NDJmYjc1NWUxZjY5NzJmNDhmcC0xLAotICAgIDB4MS44NThlYjc5YTIwYmFmcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzEyCi0gICAgMHgxLjZhMDllNjY3ZjNiZDg0NDJmYjc1NWUxZjY5NzJmNDhmcC0xLAotICAgIC0weDEuODU4ZWI3OWEyMGJhZnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMxMwotICAgIC0weDEuNmEwOWU2NjdmM2JjMWEzOTE1MGQ2YTYyYTY5Zjk2ZGFwLTEsCi0gICAgMHgxLjg1OGViNzlhMjBiYjBwNAotICB9LAotICB7IC8vIEVudHJ5IDEzMTQKLSAgICAweDEuNmEwOWU2NjdmM2JjMWEzOTE1MGQ2YTYyYTY5Zjk2ZGFwLTEsCi0gICAgLTB4MS44NThlYjc5YTIwYmIwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzE1Ci0gICAgMHgxLmZhNzI5OWIxNzU3M2QzNzNjNjE1MDk2NTcyYTBkZTA0cC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMxNgotICAgIC0weDEuZmE3Mjk5YjE3NTczZDM3M2M2MTUwOTY1NzJhMGRlMDRwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMxNwotICAgIDB4MS5mZmY2ZGZkNDJkYzU0NDMwYmMwNTc2YjAwYTg4YmQ5NHAtMSwKLSAgICAweDEuMHA2MwotICB9LAotICB7IC8vIEVudHJ5IDEzMTgKLSAgICAtMHgxLmZmZjZkZmQ0MmRjNTQ0MzBiYzA1NzZiMDBhODhiZDk0cC0xLAotICAgIC0weDEuMHA2MwotICB9LAotICB7IC8vIEVudHJ5IDEzMTkKLSAgICAweDEuZTQ1NmI4MThlNzM5NmI0NTk4OTk3OGQ0YjdlYmY3YjNwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwNjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzIwCi0gICAgLTB4MS5lNDU2YjgxOGU3Mzk2YjQ1OTg5OTc4ZDRiN2ViZjdiM3AtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwNjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzIxCi0gICAgLTB4MS44NmRjY2EwZDY4OWU3YjU2ZWY3OTQ4MWJlNGE2NDVjNnAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAyNgotICB9LAotICB7IC8vIEVudHJ5IDEzMjIKLSAgICAweDEuODZkY2NhMGQ2ODllN2I1NmVmNzk0ODFiZTRhNjQ1YzZwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcDI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMyMwotICAgIC0weDEuODZkY2M5YmFiYjBhNDBlZTg3NWNhYjNiOWU4OTI3NTdwLTEsCi0gICAgMHgxLjBwMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzI0Ci0gICAgMHgxLjg2ZGNjOWJhYmIwYTQwZWU4NzVjYWIzYjllODkyNzU3cC0xLAotICAgIC0weDEuMHAyNwotICB9LAotICB7IC8vIEVudHJ5IDEzMjUKLSAgICAtMHgxLjg2ZGNjOTE1NWZlMTgyZDQ1MTU1OTk0MjZiYjE0Yjk0cC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMyNgotICAgIDB4MS44NmRjYzkxNTVmZTE4MmQ0NTE1NTk5NDI2YmIxNGI5NHAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzI3Ci0gICAgLTB4MS44ZjIyZjg0ZDQyZGExZjU3NDY5ZGZhYWM0NGE4YjczYXAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAyMwotICB9LAotICB7IC8vIEVudHJ5IDEzMjgKLSAgICAweDEuOGYyMmY4NGQ0MmRhMWY1NzQ2OWRmYWFjNDRhOGI3M2FwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMyOQotICAgIC0weDEuOGYyMmY4NDMzZDZlZGZlOWE0YWZmOTYyMjUxN2NhYTlwLTEsCi0gICAgMHgxLjBwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzMwCi0gICAgMHgxLjhmMjJmODQzM2Q2ZWRmZTlhNGFmZjk2MjI1MTdjYWE5cC0xLAotICAgIC0weDEuMHAyNAotICB9LAotICB7IC8vIEVudHJ5IDEzMzEKLSAgICAtMHgxLjhmMjJmODJmMzI5ODVmZTMwNjk5YzZlMTJkOWRmY2UycC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMzMgotICAgIDB4MS44ZjIyZjgyZjMyOTg1ZmUzMDY5OWM2ZTEyZDlkZmNlMnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzMzCi0gICAgLTB4MS44MzdiOWRkZGMxZWFiZDM3OWQ3MjlmNTc1ZmMxMTQ0Y3AtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMzNAotICAgIDB4MS44MzdiOWRkZGMxZWFiZDM3OWQ3MjlmNTc1ZmMxMTQ0Y3AtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMQotICB9LAotICB7IC8vIEVudHJ5IDEzMzUKLSAgICAtMHgxLjgzN2I5ZGRkYzFlYWU3MGNlOTgwNTVhMGU0NTBkOTNjcC0xLAotICAgIDB4MS4wcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzM2Ci0gICAgMHgxLjgzN2I5ZGRkYzFlYWU3MGNlOTgwNTVhMGU0NTBkOTNjcC0xLAotICAgIC0weDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMzNwotICAgIC0weDEuODM3YjlkZGRjMWViM2FiNzgxOWJjMjMzZGI0Njk3YjVwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMgotICB9LAotICB7IC8vIEVudHJ5IDEzMzgKLSAgICAweDEuODM3YjlkZGRjMWViM2FiNzgxOWJjMjMzZGI0Njk3YjVwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzM5Ci0gICAgMHgxLmQxOGY2ZWFkMWI0NDZiNGJjYjczYzIzOTBiMzMwZDc1cC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzQwCi0gICAgLTB4MS5kMThmNmVhZDFiNDQ2YjRiY2I3M2MyMzkwYjMzMGQ3NXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDEzNDEKLSAgICAweDEuZDE4ZjZlYWQxYjQ0NWRmYWI4NDgxODgwMDljOWJiOTVwLTEsCi0gICAgMHgxLjBwMQotICB9LAotICB7IC8vIEVudHJ5IDEzNDIKLSAgICAtMHgxLmQxOGY2ZWFkMWI0NDVkZmFiODQ4MTg4MDA5YzliYjk1cC0xLAotICAgIC0weDEuMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM0MwotICAgIDB4MS5kMThmNmVhZDFiNDQ0MzU4OTFmMGM1MGUwMTgyNjk4OHAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM0NAotICAgIC0weDEuZDE4ZjZlYWQxYjQ0NDM1ODkxZjBjNTBlMDE4MjY5ODhwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzQ1Ci0gICAgMHgxLmFlZDU0OGYwOTBjZWQ3OWM3OWNiZjc5MDQ0MWY4MTk3cC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM0NgotICAgIC0weDEuYWVkNTQ4ZjA5MGNlZDc5Yzc5Y2JmNzkwNDQxZjgxOTdwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM0NwotICAgIDB4MS5hZWQ1NDhmMDkwY2VlMDQxOGRkM2QyMTM4YTFlNzg2NXAtMSwKLSAgICAweDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM0OAotICAgIC0weDEuYWVkNTQ4ZjA5MGNlZTA0MThkZDNkMjEzOGExZTc4NjVwLTEsCi0gICAgLTB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzQ5Ci0gICAgMHgxLmFlZDU0OGYwOTBjZWYxOGJiNWUzODcxYTE0ZDk0NjA5cC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzUwCi0gICAgLTB4MS5hZWQ1NDhmMDkwY2VmMThiYjVlMzg3MWExNGQ5NDYwOXAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMAotICB9LAotICB7IC8vIEVudHJ5IDEzNTEKLSAgICAweDEuZWFlZTg3NDRiMDVlZjA3Y2QwYjkwODkxMzA1OTgzMTRwLTIsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzUyCi0gICAgLTB4MS5lYWVlODc0NGIwNWVmMDdjZDBiOTA4OTEzMDU5ODMxNHAtMiwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzUzCi0gICAgMHgxLmVhZWU4NzQ0YjA1ZWZlODc2NGJjMzY0ZmQ4MzdiNjY2cC0yLAotICAgIDB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM1NAotICAgIC0weDEuZWFlZTg3NDRiMDVlZmU4NzY0YmMzNjRmZDgzN2I2NjZwLTIsCi0gICAgLTB4MS4wcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM1NQotICAgIDB4MS5lYWVlODc0NGIwNWYxYTljOGNjMjkxY2QyNzk4MTA1MXAtMiwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzNTYKLSAgICAtMHgxLmVhZWU4NzQ0YjA1ZjFhOWM4Y2MyOTFjZDI3OTgxMDUxcC0yLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEzNTcKLSAgICAweDEuZmFhZWVkNGYzMTU3NWMyN2YzOWMxZDdjMDEyYTQ0MTNwLTMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzU4Ci0gICAgLTB4MS5mYWFlZWQ0ZjMxNTc1YzI3ZjM5YzFkN2MwMTJhNDQxM3AtMywKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzU5Ci0gICAgMHgxLmZhYWVlZDRmMzE1NzZiYTg5ZGViZGM3MzUxZThiMWFlcC0zLAotICAgIDB4MS4wcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM2MAotICAgIC0weDEuZmFhZWVkNGYzMTU3NmJhODlkZWJkYzczNTFlOGIxYWVwLTMsCi0gICAgLTB4MS4wcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM2MQotICAgIDB4MS5mYWFlZWQ0ZjMxNTc4YWE5ZjI4YjVhNjFmMzRkY2NiMXAtMywKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMgotICB9LAotICB7IC8vIEVudHJ5IDEzNjIKLSAgICAtMHgxLmZhYWVlZDRmMzE1NzhhYTlmMjhiNWE2MWYzNGRjY2IxcC0zLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMgotICB9LAotICB7IC8vIEVudHJ5IDEzNjMKLSAgICAweDEuZmVhYWVlZTg2ZWUzNGNjMDVlZmYyODc0MGVlN2I0NjlwLTQsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzY0Ci0gICAgLTB4MS5mZWFhZWVlODZlZTM0Y2MwNWVmZjI4NzQwZWU3YjQ2OXAtNCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzY1Ci0gICAgMHgxLmZlYWFlZWU4NmVlMzVjYTA2OWE4NjcyMWY4OWY4NWE1cC00LAotICAgIDB4MS4wcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM2NgotICAgIC0weDEuZmVhYWVlZTg2ZWUzNWNhMDY5YTg2NzIxZjg5Zjg1YTVwLTQsCi0gICAgLTB4MS4wcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM2NwotICAgIDB4MS5mZWFhZWVlODZlZTM3YzYwN2VmYWU0N2RjYzA5MmMxY3AtNCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMwotICB9LAotICB7IC8vIEVudHJ5IDEzNjgKLSAgICAtMHgxLmZlYWFlZWU4NmVlMzdjNjA3ZWZhZTQ3ZGNjMDkyYzFjcC00LAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMwotICB9LAotICB7IC8vIEVudHJ5IDEzNjkKLSAgICAweDEuZmZhYWFlZWVkNGVkOWI1M2E0MDhjMGYyYmMwMmM4ZjlwLTUsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzcwCi0gICAgLTB4MS5mZmFhYWVlZWQ0ZWQ5YjUzYTQwOGMwZjJiYzAyYzhmOXAtNSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzcxCi0gICAgMHgxLmZmYWFhZWVlZDRlZGFiNGJhNGIzNjVlZDI1YTk1OTVmcC01LAotICAgIDB4MS4wcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM3MgotICAgIC0weDEuZmZhYWFlZWVkNGVkYWI0YmE0YjM2NWVkMjVhOTU5NWZwLTUsCi0gICAgLTB4MS4wcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM3MwotICAgIDB4MS5mZmFhYWVlZWQ0ZWRjYjNiYTYwOGFmZTFmOGY0ZmE2YnAtNSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtNAotICB9LAotICB7IC8vIEVudHJ5IDEzNzQKLSAgICAtMHgxLmZmYWFhZWVlZDRlZGNiM2JhNjA4YWZlMWY4ZjRmYTZicC01LAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNAotICB9LAotICB7IC8vIEVudHJ5IDEzNzUKLSAgICAweDEuZmZlYWFhZWVlZTg2ZDhjY2ZlMzY4Y2Q5NWUzOGYwMDNwLTYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzc2Ci0gICAgLTB4MS5mZmVhYWFlZWVlODZkOGNjZmUzNjhjZDk1ZTM4ZjAwM3AtNiwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzc3Ci0gICAgMHgxLmZmZWFhYWVlZWU4NmU4Y2FmZTQxMzc2ZDQ3OTE5NTc5cC02LAotICAgIDB4MS4wcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM3OAotICAgIC0weDEuZmZlYWFhZWVlZTg2ZThjYWZlNDEzNzZkNDc5MTk1NzlwLTYsCi0gICAgLTB4MS4wcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM3OQotICAgIDB4MS5mZmVhYWFlZWVlODcwOGM2ZmU1NjhjOTUxYTQyODA2OXAtNiwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtNQotICB9LAotICB7IC8vIEVudHJ5IDEzODAKLSAgICAtMHgxLmZmZWFhYWVlZWU4NzA4YzZmZTU2OGM5NTFhNDI4MDY5cC02LAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNQotICB9LAotICB7IC8vIEVudHJ5IDEzODEKLSAgICAweDEuZmZmYWFhYWVlZWVkM2VkNWM5YzVhYjY1MzhmOWNjZTBwLTcsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzgyCi0gICAgLTB4MS5mZmZhYWFhZWVlZWQzZWQ1YzljNWFiNjUzOGY5Y2NlMHAtNywKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzgzCi0gICAgMHgxLmZmZmFhYWFlZWVlZDRlZDU0OWM2NTYwZjg4OWVlNTMxcC03LAotICAgIDB4MS4wcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM4NAotICAgIC0weDEuZmZmYWFhYWVlZWVkNGVkNTQ5YzY1NjBmODg5ZWU1MzFwLTcsCi0gICAgLTB4MS4wcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM4NQotICAgIDB4MS5mZmZhYWFhZWVlZWQ2ZWQ0NDljN2FiNjQyN2U4ZmRkNHAtNywKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtNgotICB9LAotICB7IC8vIEVudHJ5IDEzODYKLSAgICAtMHgxLmZmZmFhYWFlZWVlZDZlZDQ0OWM3YWI2NDI3ZThmZGQ0cC03LAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtNgotICB9LAotICB7IC8vIEVudHJ5IDEzODcKLSAgICAweDEuZmZmZmZmZmFhYWFhOWFhZWVlZWY2ZWVkNGVkNDQyYTRwLTE1LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNQotICB9LAotICB7IC8vIEVudHJ5IDEzODgKLSAgICAtMHgxLmZmZmZmZmZhYWFhYTlhYWVlZWVmNmVlZDRlZDQ0MmE0cC0xNSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM4OQotICAgIDB4MS5mZmZmZmZmYWFhYWFhYWFlZWVlZWVlZWQ0ZWQ0ZWQ0ZnAtMTUsCi0gICAgMHgxLjBwLTE0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM5MAotICAgIC0weDEuZmZmZmZmZmFhYWFhYWFhZWVlZWVlZWVkNGVkNGVkNGZwLTE1LAotICAgIC0weDEuMHAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzkxCi0gICAgMHgxLmZmZmZmZmZhYWFhYWNhYWVlZWVkZWVlZDRlZDY0MmE0cC0xNSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzkyCi0gICAgLTB4MS5mZmZmZmZmYWFhYWFjYWFlZWVlZGVlZWQ0ZWQ2NDJhNHAtMTUsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xNAotICB9LAotICB7IC8vIEVudHJ5IDEzOTMKLSAgICAweDEuZmZmZmZmZmZmZmZmZWVhYWFhYWFhYWFhYWFjYWVlZWVwLTI4LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yOAotICB9LAotICB7IC8vIEVudHJ5IDEzOTQKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVlYWFhYWFhYWFhYWFhY2FlZWVlcC0yOCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTI4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM5NQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZWFhYWFhYWFhYWFhYWFhZWVlZXAtMjgsCi0gICAgMHgxLjBwLTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM5NgotICAgIC0weDEuZmZmZmZmZmZmZmZmZmVhYWFhYWFhYWFhYWFhYWVlZWVwLTI4LAotICAgIC0weDEuMHAtMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzk3Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDBmNTU1NTU1NTU1NTU1MzU3Nzc3cC0yNywKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzk4Ci0gICAgLTB4MS4wMDAwMDAwMDAwMDAwZjU1NTU1NTU1NTU1NTM1Nzc3N3AtMjcsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yNwotICB9LAotICB7IC8vIEVudHJ5IDEzOTkKLSAgICAweDEuZmZmZmZmZmZmZmZmZWZmYWFhYWFhYWFhYWFhYjJhYWVwLTMxLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zMQotICB9LAotICB7IC8vIEVudHJ5IDE0MDAKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmFhYWFhYWFhYWFhYWIyYWFlcC0zMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTMxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQwMQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZhYWFhYWFhYWFhYWFhYWFhZXAtMzEsCi0gICAgMHgxLjBwLTMwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQwMgotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmYWFhYWFhYWFhYWFhYWFhYWVwLTMxLAotICAgIC0weDEuMHAtMzAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDAzCi0gICAgMHgxLjAwMDAwMDAwMDAwMDBmZmQ1NTU1NTU1NTU1NTRkNTU3cC0zMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMzAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDA0Ci0gICAgLTB4MS4wMDAwMDAwMDAwMDAwZmZkNTU1NTU1NTU1NTU0ZDU1N3AtMzAsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zMAotICB9LAotICB7IC8vIEVudHJ5IDE0MDUKLSAgICAtMHgxLjQ1MmZjOThiMzRlOTZiNjExMzliMDlhN2M4NGE0NGJkcC04LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQwNgotICAgIDB4MS40NTJmYzk4YjM0ZTk2YjYxMTM5YjA5YTdjODRhNDRiZHAtOCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQwNwotICAgIDB4MS40NTJmYzk4YjM0ZTk2YjYxMTM5YjA5YTdjODRhNDRiZHAtOCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQwOAotICAgIC0weDEuNDUyZmM5OGIzNGU5NmI2MTEzOWIwOWE3Yzg0YTQ0YmRwLTgsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDA5Ci0gICAgMHgxLjQ1MmZjOThiMzRlOTZiNjExMzliMDlhN2M4NGE0NGJkcC04LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDEwCi0gICAgLTB4MS40NTJmYzk4YjM0ZTk2YjYxMTM5YjA5YTdjODRhNDRiZHAtOCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDE0MTEKLSAgICAweDEuZGFhMzY3N2M2ZWU4YTIyZWI2YzRiMTJjYTEwY2UwMjFwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDE0MTIKLSAgICAtMHgxLmRhYTM2NzdjNmVlOGEyMmViNmM0YjEyY2ExMGNlMDIxcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZXAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQxMwotICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwNDM2ZTJlZHAtNTMsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwMQotICB9LAotICB7IC8vIEVudHJ5IDE0MTQKLSAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0MzZlMmVkcC01MywKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMQotICB9LAotICB7IC8vIEVudHJ5IDE0MTUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzFwLTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwMAotICB9LAotICB7IC8vIEVudHJ5IDE0MTYKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWM4ODMxcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQxNwotICAgIDB4MS5hZWQ1NDhmMDkwY2VmMThiYjVlMzg3MWExNGQ5NDYwOXAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQxOAotICAgIC0weDEuYWVkNTQ4ZjA5MGNlZjE4YmI1ZTM4NzFhMTRkOTQ2MDlwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDE5Ci0gICAgMHgxLmFlZDU0OGYwOTBjZWUwNDE4ZGQzZDIxMzhhMWU3ODY1cC0xLAotICAgIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDIwCi0gICAgLTB4MS5hZWQ1NDhmMDkwY2VlMDQxOGRkM2QyMTM4YTFlNzg2NXAtMSwKLSAgICAtMHgxLjBwMAotICB9LAotICB7IC8vIEVudHJ5IDE0MjEKLSAgICAweDEuYWVkNTQ4ZjA5MGNlZDc5Yzc5Y2JmNzkwNDQxZjgxOTdwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDIyCi0gICAgLTB4MS5hZWQ1NDhmMDkwY2VkNzljNzljYmY3OTA0NDFmODE5N3AtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDIzCi0gICAgMHgxLjZhMDllNjY3ZjNiY2M1ZTlmZWUzNTJmNTBmZDNmNGU5cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQyNAotICAgIC0weDEuNmEwOWU2NjdmM2JjYzVlOWZlZTM1MmY1MGZkM2Y0ZTlwLTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQyNQotICAgIDB4MS4wMDAwMDAwMDAwMDAwZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMiwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDE0MjYKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDE0MjcKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCi0gICAgMHgxLjBwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDI4Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKLSAgICAtMHgxLjBwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDI5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQzMAotICAgIC0weDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQzMQotICAgIDB4MS5mZmZmZmZmZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTAyMywKLSAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDE0MzIKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIC0weDEuZmZmZmZmZmZmZmZmY3AtMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDE0MzMKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwNzQsCi0gICAgMHgxLjBwLTEwNzMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDM0Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTA3NCwKLSAgICAtMHgxLjBwLTEwNzMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDM1Ci0gICAgMC4wLAotICAgIDB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQzNgotICAgIC0wLjAsCi0gICAgLTB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQzNwotICAgIDAuMCwKLSAgICAwLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDM4Ci0gICAgLTAuMCwKLSAgICAtMC4wCi0gIH0sCi19OwotI2VuZGlmIC8vIF9fQklPTklDX18KLQotVEVTVChtYXRoX3Npbiwgc2luX2ludGVsKSB7Ci0jaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemVvZihnX3Npbl9pbnRlbF9kYXRhKS9zaXplb2Yoc2luX2ludGVsX2RhdGFfdCk7IGkrKykgewotICAgIEVYUEVDVF9ET1VCTEVfRVEoZ19zaW5faW50ZWxfZGF0YVtpXS5leHBlY3RlZCwgc2luKGdfc2luX2ludGVsX2RhdGFbaV0uY2FsbF9kYXRhKSkgPDwgIkZhaWxlZCBvbiBlbGVtZW50ICIgPDwgaTsKLSAgfQotI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLiI7Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwotfQpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF9zaW5jb3NfdGVzdC5jcHAgYi90ZXN0cy9tYXRoX3NpbmNvc190ZXN0LmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGZhYjJjMi4uMDAwMDAwMAotLS0gYS90ZXN0cy9tYXRoX3NpbmNvc190ZXN0LmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDQ3ODggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKgotICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7Ci0gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCi0gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKLSAqCi0gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAotICoKLSAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKLSAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCi0gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KLSAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKLSAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICovCi0KLSNpbmNsdWRlIDxtYXRoLmg+Ci0KLSNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgotCi0jaWYgZGVmaW5lZChfX0JJT05JQ19fKQotdHlwZWRlZiBzdHJ1Y3QgewotICBkb3VibGUgc2luX2V4cGVjdGVkOwotICBkb3VibGUgY29zX2V4cGVjdGVkOwotICBkb3VibGUgY2FsbF9kYXRhOwotfSBzaW5jb3NfaW50ZWxfZGF0YV90OwotCi1zdGF0aWMgc2luY29zX2ludGVsX2RhdGFfdCBnX3NpbmNvc19pbnRlbF9kYXRhW10gPSB7Ci0gIHsgLy8gRW50cnkgMAotICAgIC0weDEuY2U5YTk0ZWE5YzJhZDk1NTk3YjExOTNiMjMwMGQxOWFwLTEsCi0gICAgLTB4MS5iNmQzMDU3Nzc2ZGMzODMzNWIxNjc0NWYyZDc1NmFiNnAtMiwKLSAgICAtMHgxLjAxYzAwMDAwM3AxLAotICB9LAotICB7IC8vIEVudHJ5IDEKLSAgICAweDEuY2U5YTk0ZWE5YzJhZDk1NTk3YjExOTNiMjMwMGQxOWFwLTEsCi0gICAgLTB4MS5iNmQzMDU3Nzc2ZGMzODMzNWIxNjc0NWYyZDc1NmFiNnAtMiwKLSAgICAweDEuMDFjMDAwMDAzcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMgotICAgIC0weDEuY2UyY2FkMmY5MjE1NzE1M2I0YTllMDEyZTM0NjFkMGFwLTEsCi0gICAgLTB4MS5iOGExNGM3NDViZDRjODMyYmFlOTc4NTY1NWM5MWI2MHAtMiwKLSAgICAtMHgxLjAxZmZmYzA4MHAxLAotICB9LAotICB7IC8vIEVudHJ5IDMKLSAgICAweDEuY2UyY2FkMmY5MjE1NzE1M2I0YTllMDEyZTM0NjFkMGFwLTEsCi0gICAgLTB4MS5iOGExNGM3NDViZDRjODMyYmFlOTc4NTY1NWM5MWI2MHAtMiwKLSAgICAweDEuMDFmZmZjMDgwcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNAotICAgIC0weDEuMWE3NDQ0NzI2ZjVlOWRjMmVlMDY5ZGMzZTUwMGFiNGZwLTIsCi0gICAgMHgxLmVjMjMxODAyOTE3YmRmZmE2MjdhYjZhNTlhYmUzZjdkcC0xLAotICAgIC0weDEuMWUyYTE1NjNlMDY4ZXAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1Ci0gICAgMHgxLjFhNzQ0NDcyNmY1ZTlkYzJlZTA2OWRjM2U1MDBhYjRmcC0yLAotICAgIDB4MS5lYzIzMTgwMjkxN2JkZmZhNjI3YWI2YTU5YWJlM2Y3ZHAtMSwKLSAgICAweDEuMWUyYTE1NjNlMDY4ZXAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2Ci0gICAgLTB4MS5lZmRhYjVlNjVjOGZkNTUwZDQ2ODhiNjI3OTFmZTY5NHAtMSwKLSAgICAweDEuZmU0MTIzZDI2NmNhMzdmYWVlZTgyMjEzOGViMzMxZDNwLTMsCi0gICAgLTB4MS44M2VmMjE5NmY5MmYwcDg3LAotICB9LAotICB7IC8vIEVudHJ5IDcKLSAgICAweDEuZWZkYWI1ZTY1YzhmZDU1MGQ0Njg4YjYyNzkxZmU2OTRwLTEsCi0gICAgMHgxLmZlNDEyM2QyNjZjYTM3ZmFlZWU4MjIxMzhlYjMzMWQzcC0zLAotICAgIDB4MS44M2VmMjE5NmY5MmYwcDg3LAotICB9LAotICB7IC8vIEVudHJ5IDgKLSAgICAtMHgxLmVmZjVlZGIxYWQ0MTZjYjZjYTMxMDlmMWMwZGZjMzRhcC0xLAotICAgIDB4MS5mYzk5MzVhNzQ4MTcxN2ZhOGFlY2E3YTljNTgzMzA4NHAtMywKLSAgICAtMHgxLmE0ODZkNzk3NjRmYjhwODYsCi0gIH0sCi0gIHsgLy8gRW50cnkgOQotICAgIDB4MS5lZmY1ZWRiMWFkNDE2Y2I2Y2EzMTA5ZjFjMGRmYzM0YXAtMSwKLSAgICAweDEuZmM5OTM1YTc0ODE3MTdmYThhZWNhN2E5YzU4MzMwODRwLTMsCi0gICAgMHgxLmE0ODZkNzk3NjRmYjhwODYsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAKLSAgICAtMHgxLmI3OGYyYzk3Yzg4MDI4Mzk2ZWM5NGJhOWVhNThkZDY4cC0yLAotICAgIDB4MS5jZTZkZWE2Nzg4ZmRlNDI1ZjY4ZmUzM2IwZmZjYzI0NHAtMSwKLSAgICAtMHgxLmM2NTE3MzU1NmNjZmJwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEKLSAgICAweDEuYjc4ZjJjOTdjODgwMjgzOTZlYzk0YmE5ZWE1OGRkNjhwLTIsCi0gICAgMHgxLmNlNmRlYTY3ODhmZGU0MjVmNjhmZTMzYjBmZmNjMjQ0cC0xLAotICAgIDB4MS5jNjUxNzM1NTZjY2ZicC0yLAotICB9LAotICB7IC8vIEVudHJ5IDEyCi0gICAgLTB4MS5jNzg4NWFlZjMzYTk0ZmZjNWFlMDZiZTk0NDRlZmFkNXAtMywKLSAgICAweDEuZjMyYzg3OTIwMDYzNDliMzNiMDlmZTU3ZjgwZDllZDFwLTEsCi0gICAgLTB4MS5jYjZwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMKLSAgICAweDEuYzc4ODVhZWYzM2E5NGZmYzVhZTA2YmU5NDQ0ZWZhZDVwLTMsCi0gICAgMHgxLmYzMmM4NzkyMDA2MzQ5YjMzYjA5ZmU1N2Y4MGQ5ZWQxcC0xLAotICAgIDB4MS5jYjZwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQKLSAgICAtMHgxLmY3NGE5N2FiYjQ3YmM4MjNlOTJlYjlkNjZmMWQ4YjU0cC0zLAotICAgIDB4MS5mMDRjODU5ZTA2MmI5MjAyYWEyYjliZjA0ODZiNWFmZHAtMSwKLSAgICAtMHgxLmZjN2ZmZmZmZmZmZmVwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUKLSAgICAweDEuZjc0YTk3YWJiNDdiYzgyM2U5MmViOWQ2NmYxZDhiNTRwLTMsCi0gICAgMHgxLmYwNGM4NTllMDYyYjkyMDJhYTJiOWJmMDQ4NmI1YWZkcC0xLAotICAgIDB4MS5mYzdmZmZmZmZmZmZlcC0zLAotICB9LAotICB7IC8vIEVudHJ5IDE2Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDJmZmZkNTU1NTU1NTU1NTUzZDU1cC0zMiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZWZmZmZmZmZmZmZmZmEwcC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAzcC0zMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNwotICAgIC0weDEuMDAwMDAwMDAwMDAwMmZmZmQ1NTU1NTU1NTU1NTNkNTVwLTMyLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmYTBwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAzcC0zMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOAotICAgIDB4MS5kMThmNmVhZDE5OWEzYjk1NDMwZDU1MTZlOTNjOGQ3YnAtMSwKLSAgICAtMHgxLmFhMjI2NTc1M2U2Njg3ZmRlNzYyNjllZTkyYTc4NGIwcC0yLAotICAgIDB4MS4wMDAwMDAwMDAxMHAxLAotICB9LAotICB7IC8vIEVudHJ5IDE5Ci0gICAgLTB4MS5kMThmNmVhZDE5OWEzYjk1NDMwZDU1MTZlOTNjOGQ3YnAtMSwKLSAgICAtMHgxLmFhMjI2NTc1M2U2Njg3ZmRlNzYyNjllZTkyYTc4NGIwcC0yLAotICAgIC0weDEuMDAwMDAwMDAwMTBwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMAotICAgIDB4MS5iNjRkNTlkZDhhNTI0OWUwMTExM2Y0Y2IzN2QxM2M0MHAtMSwKLSAgICAtMHgxLjA4YTQ0NWFkNDczN2U4MDA2MGNmM2E1ZmY5NGQzMDY3cC0xLAotICAgIDB4MS4wMDFwNTU3LAotICB9LAotICB7IC8vIEVudHJ5IDIxCi0gICAgLTB4MS5iNjRkNTlkZDhhNTI0OWUwMTExM2Y0Y2IzN2QxM2M0MHAtMSwKLSAgICAtMHgxLjA4YTQ0NWFkNDczN2U4MDA2MGNmM2E1ZmY5NGQzMDY3cC0xLAotICAgIC0weDEuMDAxcDU1NywKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMgotICAgIDB4MS5jZTc3ZjI0ZmQ0ZDlhNzkwMTI1ZmY1MjkwYTYyYjdmMXAtMSwKLSAgICAtMHgxLmI3NjRmNDBjOTcxNmI4MzRiYjcyNTg5MzQ4Y2ZhNGI4cC0yLAotICAgIDB4MS4wMWQ0MzEzNzU3NDgycDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjMKLSAgICAtMHgxLmNlNzdmMjRmZDRkOWE3OTAxMjVmZjUyOTBhNjJiN2YxcC0xLAotICAgIC0weDEuYjc2NGY0MGM5NzE2YjgzNGJiNzI1ODkzNDhjZmE0YjhwLTIsCi0gICAgLTB4MS4wMWQ0MzEzNzU3NDgycDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQKLSAgICAweDEuY2UzOWI3ZGY3ZjRhY2I4MWUzN2M1MzI2MzhmOWJmNDlwLTEsCi0gICAgLTB4MS5iODZhOTA4ZjA1YzBhODM5ZTE5ZDRhYTYzMTU2ZDMyYnAtMiwKLSAgICAweDEuMDFmODY3ZDQ0YmM4MnAxLAotICB9LAotICB7IC8vIEVudHJ5IDI1Ci0gICAgLTB4MS5jZTM5YjdkZjdmNGFjYjgxZTM3YzUzMjYzOGY5YmY0OXAtMSwKLSAgICAtMHgxLmI4NmE5MDhmMDVjMGE4MzllMTlkNGFhNjMxNTZkMzJicC0yLAotICAgIC0weDEuMDFmODY3ZDQ0YmM4MnAxLAotICB9LAotICB7IC8vIEVudHJ5IDI2Ci0gICAgMHgxLmNlNzAwNDZhY2I4MGRlNzVlOTAzNDY4Y2VhOGFiNDI3cC0xLAotICAgIC0weDEuYjc4NjU0NzY2Yzc2NDgzY2U5MGEwYmMyYWM5NTdiNTlwLTIsCi0gICAgMHgxLjA5ODYwZThlZDFlOTBwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNwotICAgIC0weDEuY2U3MDA0NmFjYjgwZGU3NWU5MDM0NjhjZWE4YWI0MjdwLTEsCi0gICAgLTB4MS5iNzg2NTQ3NjZjNzY0ODNjZTkwYTBiYzJhYzk1N2I1OXAtMiwKLSAgICAtMHgxLjA5ODYwZThlZDFlOTBwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOAotICAgIDB4MS5jZTY4NTY0ZTI1MWYxNjI4NWQ2MDRlMDQ2NTdmMzBlNnAtMSwKLSAgICAtMHgxLmI3YTZhNTZmNTc5NjY4M2M1OGUwMWI1YjcwNjFjMTZjcC0yLAotICAgIDB4MS4wOTg3MmNjZTUxZmJkcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkKLSAgICAtMHgxLmNlNjg1NjRlMjUxZjE2Mjg1ZDYwNGUwNDY1N2YzMGU2cC0xLAotICAgIC0weDEuYjdhNmE1NmY1Nzk2NjgzYzU4ZTAxYjViNzA2MWMxNmNwLTIsCi0gICAgLTB4MS4wOTg3MmNjZTUxZmJkcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAKLSAgICAtMHgxLmNlOGFiMzJmM2IwMDIwNjVmMmQ5OWU1N2ExMDcyNzA1cC0xLAotICAgIC0weDEuYjcxNWY3NjljZjFlNTgyZTIzYTE1ZThiODBhNzA0ODZwLTIsCi0gICAgMHgxLjExM2IxM2IxM2IyMjRwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMQotICAgIDB4MS5jZThhYjMyZjNiMDAyMDY1ZjJkOTllNTdhMTA3MjcwNXAtMSwKLSAgICAtMHgxLmI3MTVmNzY5Y2YxZTU4MmUyM2ExNWU4YjgwYTcwNDg2cC0yLAotICAgIC0weDEuMTEzYjEzYjEzYjIyNHAyLAotICB9LAotICB7IC8vIEVudHJ5IDMyCi0gICAgMHgxLmMyZGY1NzE4OGQzMDk5ZTFiYWY3ZjcyMWQ3MzE4YmQ5cC0xLAotICAgIDB4MS5lNTM2YWUzOTVkZmNlMDAxNDU3OTcwYzhhYWFjM2IxZnAtMiwKLSAgICAweDEuMTNjcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMKLSAgICAtMHgxLmMyZGY1NzE4OGQzMDk5ZTFiYWY3ZjcyMWQ3MzE4YmQ5cC0xLAotICAgIDB4MS5lNTM2YWUzOTVkZmNlMDAxNDU3OTcwYzhhYWFjM2IxZnAtMiwKLSAgICAtMHgxLjEzY3AwLAotICB9LAotICB7IC8vIEVudHJ5IDM0Ci0gICAgMHgxLmI3ZGNkN2M4NWM4MjA4MzhlZWNmYTUzZTUyMDc4YjJicC0yLAotICAgIC0weDEuY2U1YjczNzIwNDZlYWE0NjdmNDllMWRlYmUzNjYyZGZwLTEsCi0gICAgMHgxLjFmNjI4YzU2MTA3MTdwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNQotICAgIC0weDEuYjdkY2Q3Yzg1YzgyMDgzOGVlY2ZhNTNlNTIwNzhiMmJwLTIsCi0gICAgLTB4MS5jZTViNzM3MjA0NmVhYTQ2N2Y0OWUxZGViZTM2NjJkZnAtMSwKLSAgICAtMHgxLjFmNjI4YzU2MTA3MTdwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNgotICAgIDB4MS5mZjM0NjZiMWVjOGJlZDk3OGY3YzI3MDE4YmMwOTY3OHAtMSwKLSAgICAweDEuYzg2Y2FhMDQ5Mjk4NTdjMjgxNmQzMDY5M2ZjZWFiMzZwLTUsCi0gICAgMHgxLjFmNjk5ZDcwOGQ0OTdwMTYsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzcKLSAgICAtMHgxLmZmMzQ2NmIxZWM4YmVkOTc4ZjdjMjcwMThiYzA5Njc4cC0xLAotICAgIDB4MS5jODZjYWEwNDkyOTg1N2MyODE2ZDMwNjkzZmNlYWIzNnAtNSwKLSAgICAtMHgxLjFmNjk5ZDcwOGQ0OTdwMTYsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgKLSAgICAweDEuYjYxZDZhZmY3NTRjMjgzNTY5N2I1YWE1MzM5YjYzNWNwLTIsCi0gICAgLTB4MS5jZWM1OWIyZDIzMGE4M2E4NjgwNDczMGFmZGYxYmVjZnAtMSwKLSAgICAweDEuMWY3MjA2NDYyMGVmNHAzLAotICB9LAotICB7IC8vIEVudHJ5IDM5Ci0gICAgLTB4MS5iNjFkNmFmZjc1NGMyODM1Njk3YjVhYTUzMzliNjM1Y3AtMiwKLSAgICAtMHgxLmNlYzU5YjJkMjMwYTgzYTg2ODA0NzMwYWZkZjFiZWNmcC0xLAotICAgIC0weDEuMWY3MjA2NDYyMGVmNHAzLAotICB9LAotICB7IC8vIEVudHJ5IDQwCi0gICAgMHgxLmNkZjYwNDgzOGU0OTliZDVkOWQyNzEyMzk3YjIzYzA3cC0xLAotICAgIDB4MS5iOTg2NTZiODViYzI2ODMyMTZhOTQ3MzM1ZWE2ODlmYnAtMiwKLSAgICAweDEuMWZmZmZmZGNlZmU0MHAwLAotICB9LAotICB7IC8vIEVudHJ5IDQxCi0gICAgLTB4MS5jZGY2MDQ4MzhlNDk5YmQ1ZDlkMjcxMjM5N2IyM2MwN3AtMSwKLSAgICAweDEuYjk4NjU2Yjg1YmMyNjgzMjE2YTk0NzMzNWVhNjg5ZmJwLTIsCi0gICAgLTB4MS4xZmZmZmZkY2VmZTQwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDIKLSAgICAweDEuY2U5MTMzMjk2OTZjZDNmYTQ3MWM3YjAwODkxMDc1ZDRwLTEsCi0gICAgMHgxLmI2ZmE5MmU1ZjU3NmM4MzRmYzE1ZDg5OThmY2NjNzI4cC0yLAotICAgIDB4MS4yMGI0NzhjNGFhOWVkcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMKLSAgICAtMHgxLmNlOTEzMzI5Njk2Y2QzZmE0NzFjN2IwMDg5MTA3NWQ0cC0xLAotICAgIDB4MS5iNmZhOTJlNWY1NzZjODM0ZmMxNWQ4OTk4ZmNjYzcyOHAtMiwKLSAgICAtMHgxLjIwYjQ3OGM0YWE5ZWRwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NAotICAgIDB4MS5jZWFiYzAyNWVkM2Q1NzMyM2ZjYTUxNjI2ZDJiZjI4Y3AtMSwKLSAgICAweDEuYjY4YTk4ODYwNGE3ZTgzY2QzODJmZGYzMjlkMGQ3NmVwLTIsCi0gICAgMHgxLjIwZDM3NDU2ZTc0NTNwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NQotICAgIC0weDEuY2VhYmMwMjVlZDNkNTczMjNmY2E1MTYyNmQyYmYyOGNwLTEsCi0gICAgMHgxLmI2OGE5ODg2MDRhN2U4M2NkMzgyZmRmMzI5ZDBkNzZlcC0yLAotICAgIC0weDEuMjBkMzc0NTZlNzQ1M3AwLAotICB9LAotICB7IC8vIEVudHJ5IDQ2Ci0gICAgMHgxLmNlYjAyMmI2YjVhZTA3YTI2N2YwZTdkYzZhMTRhMjE0cC0xLAotICAgIDB4MS5iNjc4MTZiODBlZDBhODJkMTFhZWU3YWFhODAwOGZlZHAtMiwKLSAgICAweDEuMjBkODkzMGNkZjYwMnAwLAotICB9LAotICB7IC8vIEVudHJ5IDQ3Ci0gICAgLTB4MS5jZWIwMjJiNmI1YWUwN2EyNjdmMGU3ZGM2YTE0YTIxNHAtMSwKLSAgICAweDEuYjY3ODE2YjgwZWQwYTgyZDExYWVlN2FhYTgwMDhmZWRwLTIsCi0gICAgLTB4MS4yMGQ4OTMwY2RmNjAycDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDgKLSAgICAtMHgxLjllNjJhY2E1M2M2NjA4MDFiNjI2MDQwMThhOWQxOWRkcC00LAotICAgIC0weDEuZmQ1ZjgzMGY4NjBmMzMzZGU0OTBhNDJjMmYwNDUwMTJwLTEsCi0gICAgMHgxLjMwZDVmOGU1NGI2ZDhwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OQotICAgIDB4MS45ZTYyYWNhNTNjNjYwODAxYjYyNjA0MDE4YTlkMTlkZHAtNCwKLSAgICAtMHgxLmZkNWY4MzBmODYwZjMzM2RlNDkwYTQyYzJmMDQ1MDEycC0xLAotICAgIC0weDEuMzBkNWY4ZTU0YjZkOHAzLAotICB9LAotICB7IC8vIEVudHJ5IDUwCi0gICAgMHgxLjNlZDJhZWVmZWFmYzk3ZjBlZTBmYjNmYTRmYjQ2MDUycC0zLAotICAgIDB4MS5mOWMyMDFlNGViNjVmZDVlNWRiZDk3NjYyNTA1ZmY2ZnAtMSwKLSAgICAweDEuNDAycC0zLAotICB9LAotICB7IC8vIEVudHJ5IDUxCi0gICAgLTB4MS4zZWQyYWVlZmVhZmM5N2YwZWUwZmIzZmE0ZmI0NjA1MnAtMywKLSAgICAweDEuZjljMjAxZTRlYjY1ZmQ1ZTVkYmQ5NzY2MjUwNWZmNmZwLTEsCi0gICAgLTB4MS40MDJwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIKLSAgICAtMHgxLmZmNjVkMmZmNGE4Y2M0MWNiOGJiNmRmMzA2ZTA3YmU3cC0xLAotICAgIC0weDEuOGQzODIyZWYyNjBhNTdiMzg1NjExZjA4NTc3Yjc1ZDlwLTUsCi0gICAgMHgxLjRhNDBlYzE0OWE2NmZwMTYsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMKLSAgICAweDEuZmY2NWQyZmY0YThjYzQxY2I4YmI2ZGYzMDZlMDdiZTdwLTEsCi0gICAgLTB4MS44ZDM4MjJlZjI2MGE1N2IzODU2MTFmMDg1NzdiNzVkOXAtNSwKLSAgICAtMHgxLjRhNDBlYzE0OWE2NmZwMTYsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQKLSAgICAweDEuNGZmZmZmZmZmZjlmODgwMDAwMDAwODRmMjJjY2NjY2NwLTIwLAotICAgIDB4MS5mZmZmZmZmZmZlNDcwMDAwMDAwMDNmNGViZmZmZmZmY3AtMSwKLSAgICAweDEuNXAtMjAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUKLSAgICAtMHgxLjRmZmZmZmZmZmY5Zjg4MDAwMDAwMDg0ZjIyY2NjY2NjcC0yMCwKLSAgICAweDEuZmZmZmZmZmZmZTQ3MDAwMDAwMDAzZjRlYmZmZmZmZmNwLTEsCi0gICAgLTB4MS41cC0yMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NgotICAgIDB4MS43OWM1OTllMWU5MWFmODA5ZjllNjk3NzE3OTZjZDUwN3AtMSwKLSAgICAtMHgxLjU5OTcwNjVjYjk2NTM3MDJkNGM5ZDliNmJjNThmNzY4cC0xLAotICAgIDB4MS41Mjk0YTUyOTRhNTI4cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcKLSAgICAtMHgxLjc5YzU5OWUxZTkxYWY4MDlmOWU2OTc3MTc5NmNkNTA3cC0xLAotICAgIC0weDEuNTk5NzA2NWNiOTY1MzcwMmQ0YzlkOWI2YmM1OGY3NjhwLTEsCi0gICAgLTB4MS41Mjk0YTUyOTRhNTI4cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgKLSAgICAtMHgxLmZmNzk5NjA3M2JiYTZjNmVkZTQ2ZjUyZDQ0NTYyM2M5cC0xLAotICAgIDB4MS43MmU3NDM3OTEwY2MwODNmYWM0ZjZmNjJhMmViMzhhZnAtNSwKLSAgICAweDEuNTc0MzFhYWNmNWM1OHAxNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OQotICAgIDB4MS5mZjc5OTYwNzNiYmE2YzZlZGU0NmY1MmQ0NDU2MjNjOXAtMSwKLSAgICAweDEuNzJlNzQzNzkxMGNjMDgzZmFjNGY2ZjYyYTJlYjM4YWZwLTUsCi0gICAgLTB4MS41NzQzMWFhY2Y1YzU4cDE2LAotICB9LAotICB7IC8vIEVudHJ5IDYwCi0gICAgMHgxLmY4MWM0ZjlhNTE4MTQ2MmFlNzM1ZTIxMjIyZDQ5OGM0cC0xLAotICAgIDB4MS42NjIzZDJlYjZhZGQxZmZjMzk4YTNjMjA0NDdmOWQwNnAtMywKLSAgICAweDEuNjUycDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEKLSAgICAtMHgxLmY4MWM0ZjlhNTE4MTQ2MmFlNzM1ZTIxMjIyZDQ5OGM0cC0xLAotICAgIDB4MS42NjIzZDJlYjZhZGQxZmZjMzk4YTNjMjA0NDdmOWQwNnAtMywKLSAgICAtMHgxLjY1MnAwLAotICB9LAotICB7IC8vIEVudHJ5IDYyCi0gICAgLTB4MS5jNDJhMDkxMDI2ZjQ1Mjg2ZDA2MTA4NWM1YzlmZGRiN3AtMSwKLSAgICAweDEuZTA2MTk5NjBhMTFjNjgwMWU4MGFiMGM5ZTI1Zjg5ZDBwLTIsCi0gICAgMHgxLjZmN2JkZWY3YmRlZjRwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MwotICAgIDB4MS5jNDJhMDkxMDI2ZjQ1Mjg2ZDA2MTA4NWM1YzlmZGRiN3AtMSwKLSAgICAweDEuZTA2MTk5NjBhMTFjNjgwMWU4MGFiMGM5ZTI1Zjg5ZDBwLTIsCi0gICAgLTB4MS42ZjdiZGVmN2JkZWY0cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQKLSAgICAtMHgxLmY5YzQzNjRiYTE5OGY3ZTMyYjY3MjM2NmMzNGI4YjdkcC0yLAotICAgIDB4MS5iZDMwOWYzZGZjZDQ4OTEyOGU1ZWNiYzMxNjgwYzRhNXAtMSwKLSAgICAweDEuNzExcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUKLSAgICAweDEuZjljNDM2NGJhMTk4ZjdlMzJiNjcyMzY2YzM0YjhiN2RwLTIsCi0gICAgMHgxLmJkMzA5ZjNkZmNkNDg5MTI4ZTVlY2JjMzE2ODBjNGE1cC0xLAotICAgIC0weDEuNzExcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYKLSAgICAtMHgxLmJlNmU1YmVhMWE0ZDg4MzMxZmQ4ZTQ2MGNkNjc3MjQ1cC0yLAotICAgIDB4MS5jY2M3ZDk5YjU3YWI1NGYwNGVkOTE4ZWMxNGEyNTA3ZHAtMSwKLSAgICAweDEuNzU0MGFhNTg4MmRjMnAyLAotICB9LAotICB7IC8vIEVudHJ5IDY3Ci0gICAgMHgxLmJlNmU1YmVhMWE0ZDg4MzMxZmQ4ZTQ2MGNkNjc3MjQ1cC0yLAotICAgIDB4MS5jY2M3ZDk5YjU3YWI1NGYwNGVkOTE4ZWMxNGEyNTA3ZHAtMSwKLSAgICAtMHgxLjc1NDBhYTU4ODJkYzJwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OAotICAgIDB4MS5jOTBjODQxZDE0OTRjMDc1N2U4ZWJiMTY3MjVkODcxOHAtMywKLSAgICAtMHgxLmYzMTY1YTBiMzA2YjFmZmNmOGQxMTkwOWZmZmJhMTY3cC0xLAotICAgIDB4MS43NTUwZDI4ZmZjY2M0cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkKLSAgICAtMHgxLmM5MGM4NDFkMTQ5NGMwNzU3ZThlYmIxNjcyNWQ4NzE4cC0zLAotICAgIC0weDEuZjMxNjVhMGIzMDZiMWZmY2Y4ZDExOTA5ZmZmYmExNjdwLTEsCi0gICAgLTB4MS43NTUwZDI4ZmZjY2M0cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzAKLSAgICAtMHgxLmI2NDlkNTc3ZTFiMmE4MzlkMjVkMTk4MDdlYjJjNTY0cC0yLAotICAgIDB4MS5jZWJiMTc1ZDM2YjkzNGJjMDk5NWEwYmUzNWNkZTFlZXAtMSwKLSAgICAweDEuNzVkMTFmYTBkNjI0MnAyLAotICB9LAotICB7IC8vIEVudHJ5IDcxCi0gICAgMHgxLmI2NDlkNTc3ZTFiMmE4MzlkMjVkMTk4MDdlYjJjNTY0cC0yLAotICAgIDB4MS5jZWJiMTc1ZDM2YjkzNGJjMDk5NWEwYmUzNWNkZTFlZXAtMSwKLSAgICAtMHgxLjc1ZDExZmEwZDYyNDJwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MgotICAgIDB4MS5iNzg3MzBkMTFkODQwODMyMGQyMWNhNmFkMmJlMzM2OHAtMiwKLSAgICAtMHgxLmNlNmZkMDBlZDE2NTAxY2IxM2I5MDg0NzdlMTAyODExcC0xLAotICAgIDB4MS5iYzUwNDQ0ZWU2Mjg2cDksCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMKLSAgICAtMHgxLmI3ODczMGQxMWQ4NDA4MzIwZDIxY2E2YWQyYmUzMzY4cC0yLAotICAgIC0weDEuY2U2ZmQwMGVkMTY1MDFjYjEzYjkwODQ3N2UxMDI4MTFwLTEsCi0gICAgLTB4MS5iYzUwNDQ0ZWU2Mjg2cDksCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQKLSAgICAweDEuYjZiMGIwOTk2ZTdlNjgzNWFjZGIzNmU1NWEwOGJmMTVwLTIsCi0gICAgMHgxLmNlYTJiOGNjNTUyMTgxZDBiMGFlYWQyN2U5NGE5MTY4cC0xLAotICAgIDB4MS5jNTViMmJmMTljZTU0cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDc1Ci0gICAgLTB4MS5iNmIwYjA5OTZlN2U2ODM1YWNkYjM2ZTU1YTA4YmYxNXAtMiwKLSAgICAweDEuY2VhMmI4Y2M1NTIxODFkMGIwYWVhZDI3ZTk0YTkxNjhwLTEsCi0gICAgLTB4MS5jNTViMmJmMTljZTU0cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDc2Ci0gICAgMHgxLmI2ZmFjZjY2NTg5MTQ4MmVhOGM2MWY1Y2EzMmYyODBkcC0yLAotICAgIDB4MS5jZTkxMjRjZWM0MTUwNTU5ZDk0N2E1MjZhZDk4ZjJmNHAtMSwKLSAgICAweDEuYzVhZDM0ZjVmNDcyYXAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NwotICAgIC0weDEuYjZmYWNmNjY1ODkxNDgyZWE4YzYxZjVjYTMyZjI4MGRwLTIsCi0gICAgMHgxLmNlOTEyNGNlYzQxNTA1NTlkOTQ3YTUyNmFkOThmMmY0cC0xLAotICAgIC0weDEuYzVhZDM0ZjVmNDcyYXAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OAotICAgIC0weDEuZjgzYTA5ODNkZDE1ZDAwMzAxZTJkZjIxZTNiZWU2MzVwLTIsCi0gICAgLTB4MS5iZGEwNTk2ZGYwNjAwMDRkNTc5NTYzYWQ4YzY3ZDE1MXAtMSwKLSAgICAweDEuZDQwNjdjNjBmNDcxZXAxLAotICB9LAotICB7IC8vIEVudHJ5IDc5Ci0gICAgMHgxLmY4M2EwOTgzZGQxNWQwMDMwMWUyZGYyMWUzYmVlNjM1cC0yLAotICAgIC0weDEuYmRhMDU5NmRmMDYwMDA0ZDU3OTU2M2FkOGM2N2QxNTFwLTEsCi0gICAgLTB4MS5kNDA2N2M2MGY0NzFlcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgODAKLSAgICAweDEuOWNiNmE5YmJjZTY0YTNlOTdhNzI2N2ZkZWMyNWM4M2JwLTEsCi0gICAgMHgxLjJmMDExMzI2NDIwZTUwMDIxNzJkYjI0NWZkOTA2M2UycC0xLAotICAgIDB4MS5kZmZmZmZmZmZmZmZmcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDgxCi0gICAgLTB4MS45Y2I2YTliYmNlNjRhM2U5N2E3MjY3ZmRlYzI1YzgzYnAtMSwKLSAgICAweDEuMmYwMTEzMjY0MjBlNTAwMjE3MmRiMjQ1ZmQ5MDYzZTJwLTEsCi0gICAgLTB4MS5kZmZmZmZmZmZmZmZmcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDgyCi0gICAgMHgxLmY1ZjBiZTI4NTY1YzVhZDc2M2MxMDNkOTgxZmM1YzRlcC01LAotICAgIDB4MS5mZjA5YmFiYjA3NmU0ODAzZTU3ZTY4MjA0NTcwZmQ1YnAtMSwKLSAgICAweDEuZjY0MTQ3ZDhhZGQ4NHAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MwotICAgIC0weDEuZjVmMGJlMjg1NjVjNWFkNzYzYzEwM2Q5ODFmYzVjNGVwLTUsCi0gICAgMHgxLmZmMDliYWJiMDc2ZTQ4MDNlNTdlNjgyMDQ1NzBmZDVicC0xLAotICAgIC0weDEuZjY0MTQ3ZDhhZGQ4NHAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NAotICAgIC0weDEuZDRkYTVmNTY4ODhlMjAwZmRhNGViYWM3ZGIxY2RiZWZwLTEsCi0gICAgMHgxLjliNzBjZDMyODRlMTU3ZmI4NDQ5MWQ1ODFjYjg2YmQzcC0yLAotICAgIDB4MS5mZTYxODNlZmEzOTdjcDgzLAotICB9LAotICB7IC8vIEVudHJ5IDg1Ci0gICAgMHgxLmQ0ZGE1ZjU2ODg4ZTIwMGZkYTRlYmFjN2RiMWNkYmVmcC0xLAotICAgIDB4MS45YjcwY2QzMjg0ZTE1N2ZiODQ0OTFkNTgxY2I4NmJkM3AtMiwKLSAgICAtMHgxLmZlNjE4M2VmYTM5N2NwODMsCi0gIH0sCi0gIHsgLy8gRW50cnkgODYKLSAgICAweDEuZmE5ZjZjYTBlYzQ0ZTAwMTAwMjZmMzg1YzBhYjg2OTBwLTMsCi0gICAgMHgxLmYwMTY0NzRiNzU2Njc0MjRhMDUwZDc5MDE0ZmQyMzg1cC0xLAotICAgIDB4MS5mZmVmZmZmZmZmZmZmcC0zLAotICB9LAotICB7IC8vIEVudHJ5IDg3Ci0gICAgLTB4MS5mYTlmNmNhMGVjNDRlMDAxMDAyNmYzODVjMGFiODY5MHAtMywKLSAgICAweDEuZjAxNjQ3NGI3NTY2NzQyNGEwNTBkNzkwMTRmZDIzODVwLTEsCi0gICAgLTB4MS5mZmVmZmZmZmZmZmZmcC0zLAotICB9LAotICB7IC8vIEVudHJ5IDg4Ci0gICAgLTB4MS5mZjQ4NjhkZGFiYTZiYTMyYzZiNzE0YWVmOTlmZjJmN3AtMSwKLSAgICAtMHgxLmIxNmYwZWIyNWFlNDY3YzJhMTg1ZTUxNmYxMTg4YjIwcC01LAotICAgIDB4MS5mZmY3ZmY4MDAwMDFmcDE1LAotICB9LAotICB7IC8vIEVudHJ5IDg5Ci0gICAgMHgxLmZmNDg2OGRkYWJhNmJhMzJjNmI3MTRhZWY5OWZmMmY3cC0xLAotICAgIC0weDEuYjE2ZjBlYjI1YWU0NjdjMmExODVlNTE2ZjExODhiMjBwLTUsCi0gICAgLTB4MS5mZmY3ZmY4MDAwMDFmcDE1LAotICB9LAotICB7IC8vIEVudHJ5IDkwCi0gICAgLTB4MS5mZjRmMWU5YzI0ODkxMjY0ODcwMTgxOGQwNzViMzk1M3AtMSwKLSAgICAtMHgxLmE5NzFlM2I2NGQwOGQ3YzNmMzdkMjk5YjQzNjE2ZWI0cC01LAotICAgIDB4MS5mZmY3ZmZmZmZmY3AxNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MQotICAgIDB4MS5mZjRmMWU5YzI0ODkxMjY0ODcwMTgxOGQwNzViMzk1M3AtMSwKLSAgICAtMHgxLmE5NzFlM2I2NGQwOGQ3YzNmMzdkMjk5YjQzNjE2ZWI0cC01LAotICAgIC0weDEuZmZmN2ZmZmZmZmNwMTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTIKLSAgICAweDEuZDE5NjE2ZmM3ZWU0NjA1MzQ1YzI1NjA2Y2ZjOTMyMzVwLTEsCi0gICAgLTB4MS5hYTA1NGM0OTA5Mzg0ODExYTA2MzI3MzExMjYwNGMzMXAtMiwKLSAgICAweDEuZmZmODBwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MwotICAgIC0weDEuZDE5NjE2ZmM3ZWU0NjA1MzQ1YzI1NjA2Y2ZjOTMyMzVwLTEsCi0gICAgLTB4MS5hYTA1NGM0OTA5Mzg0ODExYTA2MzI3MzExMjYwNGMzMXAtMiwKLSAgICAtMHgxLmZmZjgwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQKLSAgICAweDEuY2UzNTA5NzUxYzQ2MTQ4MzdmYTRiMzQ5NjNjNmY1ZDhwLTEsCi0gICAgMHgxLmI4N2UzNzEwMTY1NDQ4MjE0NGQ3MWQwNDk3MjI2N2Q4cC0yLAotICAgIDB4MS5mZmZmYmZmZTNmZmZmcDE0LAotICB9LAotICB7IC8vIEVudHJ5IDk1Ci0gICAgLTB4MS5jZTM1MDk3NTFjNDYxNDgzN2ZhNGIzNDk2M2M2ZjVkOHAtMSwKLSAgICAweDEuYjg3ZTM3MTAxNjU0NDgyMTQ0ZDcxZDA0OTcyMjY3ZDhwLTIsCi0gICAgLTB4MS5mZmZmYmZmZTNmZmZmcDE0LAotICB9LAotICB7IC8vIEVudHJ5IDk2Ci0gICAgMHgxLmQxOGY3NmZmYzZlNGJhMGEzMTM0ZTViZTIxYjViYzhmcC0xLAotICAgIC0weDEuYWEyMjQxMTYwMjI3ODk2YzY4ZWYxNzgzOWYxN2RjZTVwLTIsCi0gICAgMHgxLmZmZmZmNjBwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NwotICAgIC0weDEuZDE4Zjc2ZmZjNmU0YmEwYTMxMzRlNWJlMjFiNWJjOGZwLTEsCi0gICAgLTB4MS5hYTIyNDExNjAyMjc4OTZjNjhlZjE3ODM5ZjE3ZGNlNXAtMiwKLSAgICAtMHgxLmZmZmZmNjBwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OAotICAgIC0weDEuODM3Yjk5NGE2ZDhmZjdmMjc1MDc1NWRmNTg0M2U4NGRwLTEsCi0gICAgLTB4MS40ZWFhNjViOWUyZWNjMzA4ZmQ4MmY2NWUwOWQwNmJlNHAtMSwKLSAgICAweDEuZmZmZmZlM2ZmZmZmZnAxLAotICB9LAotICB7IC8vIEVudHJ5IDk5Ci0gICAgMHgxLjgzN2I5OTRhNmQ4ZmY3ZjI3NTA3NTVkZjU4NDNlODRkcC0xLAotICAgIC0weDEuNGVhYTY1YjllMmVjYzMwOGZkODJmNjVlMDlkMDZiZTRwLTEsCi0gICAgLTB4MS5mZmZmZmUzZmZmZmZmcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwCi0gICAgMHgxLmFlZDU0OGYwOTBjMWRmZmU2ZTA0MzIyZGM4ZThjYmZhcC0xLAotICAgIDB4MS4xNGEyODBmYjUwN2NmODk5OWExYjI5MTk5NTY0NjE1MnAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmU3ZnAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDEKLSAgICAtMHgxLmFlZDU0OGYwOTBjMWRmZmU2ZTA0MzIyZGM4ZThjYmZhcC0xLAotICAgIDB4MS4xNGEyODBmYjUwN2NmODk5OWExYjI5MTk5NTY0NjE1MnAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZlN2ZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyCi0gICAgLTAuMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS4wcC0xMDc0LAotICB9LAotICB7IC8vIEVudHJ5IDEwMwotICAgIDAuMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLjBwLTEwNzQsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA0Ci0gICAgLTAuMCwKLSAgICAweDEucDAsCi0gICAgLTAuMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUKLSAgICAwLjAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS4wcC0xMDc0LAotICB9LAotICB7IC8vIEVudHJ5IDEwNgotICAgIC0wLjAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMHAtMTA3NCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDcKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDkKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjBwLTEwMjIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEwCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuMHAtMTAyMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTEKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEyCi0gICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTMKLSAgICAweDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcC0xMDIzLAotICB9LAotICB7IC8vIEVudHJ5IDExNAotICAgIC0weDEuZmZmZmZmZmZmZmZmZGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS4wcC0xMDIyLAotICB9LAotICB7IC8vIEVudHJ5IDExNgotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMHAtMTAyMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTcKLSAgICAweDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xMDIyLAotICB9LAotICB7IC8vIEVudHJ5IDExOAotICAgIC0weDEuMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZwLTEwMjIsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTkKLSAgICAweDEuOTk5OTk5NmRlOGNhMTk4YzI0YWI5NDQ5YmVlZTE2ZDVwLTEzLAotICAgIDB4MS5mZmZmZmY1YzI4ZjVjYjRjNTI3MjA2MTI4MTIxMTEyMHAtMSwKLSAgICAweDEuOTk5OTk5OTk5OTk5YXAtMTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwCi0gICAgLTB4MS45OTk5OTk2ZGU4Y2ExOThjMjRhYjk0NDliZWVlMTZkNXAtMTMsCi0gICAgMHgxLmZmZmZmZjVjMjhmNWNiNGM1MjcyMDYxMjgxMjExMTIwcC0xLAotICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIxCi0gICAgMHgxLjk5OTk5OGVhZDY1Yjk2Zjc4YTRkYmZkODM5YzdlZjJlcC0xMiwKLSAgICAweDEuZmZmZmZkNzBhM2Q3OTYwY2Q1Njk1YTA2ZmRiODBlNzRwLTEsCi0gICAgMHgxLjk5OTk5OTk5OTk5OWFwLTEyLAotICB9LAotICB7IC8vIEVudHJ5IDEyMgotICAgIC0weDEuOTk5OTk4ZWFkNjViOTZmNzhhNGRiZmQ4MzljN2VmMmVwLTEyLAotICAgIDB4MS5mZmZmZmQ3MGEzZDc5NjBjZDU2OTVhMDZmZGI4MGU3NHAtMSwKLSAgICAtMHgxLjk5OTk5OTk5OTk5OWFwLTEyLAotICB9LAotICB7IC8vIEVudHJ5IDEyMwotICAgIDB4MS4zMzMzMzIwYzQ5YmFiZmYxNTFiNmQwNDI5MGUyYzNhMnAtMTEsCi0gICAgMHgxLmZmZmZmYTNkNzBhNjlhZDQyYjM5ZDg2OTY2MzJmODU2cC0xLAotICAgIDB4MS4zMzMzMzMzMzMzMzM0cC0xMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQKLSAgICAtMHgxLjMzMzMzMjBjNDliYWJmZjE1MWI2ZDA0MjkwZTJjM2EycC0xMSwKLSAgICAweDEuZmZmZmZhM2Q3MGE2OWFkNDJiMzlkODY5NjYzMmY4NTZwLTEsCi0gICAgLTB4MS4zMzMzMzMzMzMzMzM0cC0xMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjUKLSAgICAweDEuOTk5OTk2ZGU4Y2EyODg0ZGEyZjA4ZjI1YmIwMjRkMDhwLTExLAotICAgIDB4MS5mZmZmZjVjMjhmNjRlNWVjMGRhMGE0ZjdmNDM4ODA1MnAtMSwKLSAgICAweDEuOTk5OTk5OTk5OTk5YXAtMTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI2Ci0gICAgLTB4MS45OTk5OTZkZThjYTI4ODRkYTJmMDhmMjViYjAyNGQwOHAtMTEsCi0gICAgMHgxLmZmZmZmNWMyOGY2NGU1ZWMwZGEwYTRmN2Y0Mzg4MDUycC0xLAotICAgIC0weDEuOTk5OTk5OTk5OTk5YXAtMTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI3Ci0gICAgMHgxLmZmZmZmYWFhYWFhZWVlZWVlZDRlZDRlZGFiNGM3YmQ2cC0xMSwKLSAgICAweDEuZmZmZmYwMDAwMDE1NTU1NTQ5ZjQ5ZjRkMzRkMzRjYTBwLTEsCi0gICAgMHgxLjBwLTEwLAotICB9LAotICB7IC8vIEVudHJ5IDEyOAotICAgIC0weDEuZmZmZmZhYWFhYWFlZWVlZWVkNGVkNGVkYWI0YzdiZDZwLTExLAotICAgIDB4MS5mZmZmZjAwMDAwMTU1NTU1NDlmNDlmNGQzNGQzNGNhMHAtMSwKLSAgICAtMHgxLjBwLTEwLAotICB9LAotICB7IC8vIEVudHJ5IDEyOQotICAgIDB4MS4zMzMzMmU5NzhkNTUyYWZjODgzYmRiMDQ3NTFlMzgzNXAtMTAsCi0gICAgMHgxLmZmZmZlOGY1YzJiYjk4YzdjMTAzZDJmZjc5ZjE1ZDZhcC0xLAotICAgIDB4MS4zMzMzMzMzMzMzMzMzcC0xMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzAKLSAgICAtMHgxLjMzMzMyZTk3OGQ1NTJhZmM4ODNiZGIwNDc1MWUzODM1cC0xMCwKLSAgICAweDEuZmZmZmU4ZjVjMmJiOThjN2MxMDNkMmZmNzlmMTVkNmFwLTEsCi0gICAgLTB4MS4zMzMzMzMzMzMzMzMzcC0xMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzEKLSAgICAweDEuNjY2NjVmMTUyOWFmZjhhMzgwOTI0NjY3MGE0MzZjM2NwLTEwLAotICAgIDB4MS5mZmZmZTBhM2Q3NWMzMWIyNjQ1MTE2NmQ2ZjM5OGFiZHAtMSwKLSAgICAweDEuNjY2NjY2NjY2NjY2NnAtMTAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMyCi0gICAgLTB4MS42NjY2NWYxNTI5YWZmOGEzODA5MjQ2NjcwYTQzNmMzY3AtMTAsCi0gICAgMHgxLmZmZmZlMGEzZDc1YzMxYjI2NDUxMTY2ZDZmMzk4YWJkcC0xLAotICAgIC0weDEuNjY2NjY2NjY2NjY2NnAtMTAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMzCi0gICAgMHgxLjk5OTk4ZWFkNjVjZGY4MmUxOTRjMTMzOTk3ZjJmYjY4cC0xMCwKLSAgICAweDEuZmZmZmQ3MGEzZGZjNzMzYjMzMzFkODM4MmIxZTlkZjVwLTEsCi0gICAgMHgxLjk5OTk5OTk5OTk5OTlwLTEwLAotICB9LAotICB7IC8vIEVudHJ5IDEzNAotICAgIC0weDEuOTk5OThlYWQ2NWNkZjgyZTE5NGMxMzM5OTdmMmZiNjhwLTEwLAotICAgIDB4MS5mZmZmZDcwYTNkZmM3MzNiMzMzMWQ4MzgyYjFlOWRmNXAtMSwKLSAgICAtMHgxLjk5OTk5OTk5OTk5OTlwLTEwLAotICB9LAotICB7IC8vIEVudHJ5IDEzNQotICAgIDB4MS5jY2NjYmQzZjdkMTVkNDJhZmZiOWYwMmJmMWRjMjU3YnAtMTAsCi0gICAgMHgxLmZmZmZjYzI4ZjZhMjgyM2YzNzY1YjUwNjU5ZWNiMGUycC0xLAotICAgIDB4MS5jY2NjY2NjY2NjY2NjcC0xMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzYKLSAgICAtMHgxLmNjY2NiZDNmN2QxNWQ0MmFmZmI5ZjAyYmYxZGMyNTdicC0xMCwKLSAgICAweDEuZmZmZmNjMjhmNmEyODIzZjM3NjViNTA2NTllY2IwZTJwLTEsCi0gICAgLTB4MS5jY2NjY2NjY2NjY2NjcC0xMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzcKLSAgICAweDEuMDY2NWFlOWM3YjQ0ZWQyODAyMTZiZTIxMDRmMjhmMDJwLTcsCi0gICAgMHgxLmZmZmJjYzJhNmU4NmZlZjdkMmFmMTU4MGJkOGU2Njk5cC0xLAotICAgIDB4MS4wNjY2NjY2NjY2NjY2cC03LAotICB9LAotICB7IC8vIEVudHJ5IDEzOAotICAgIC0weDEuMDY2NWFlOWM3YjQ0ZWQyODAyMTZiZTIxMDRmMjhmMDJwLTcsCi0gICAgMHgxLmZmZmJjYzJhNmU4NmZlZjdkMmFmMTU4MGJkOGU2Njk5cC0xLAotICAgIC0weDEuMDY2NjY2NjY2NjY2NnAtNywKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzkKLSAgICAweDEuY2NjOGU5N2I1OWY2MTg4OThjNGFjM2EwYWVkZGY3MDlwLTcsCi0gICAgMHgxLmZmZjMwYTRiNmZjYzE0MDVlMThmYmY3MzM1ZDJmNzg5cC0xLAotICAgIDB4MS5jY2NjY2NjY2NjY2NjcC03LAotICB9LAotICB7IC8vIEVudHJ5IDE0MAotICAgIC0weDEuY2NjOGU5N2I1OWY2MTg4OThjNGFjM2EwYWVkZGY3MDlwLTcsCi0gICAgMHgxLmZmZjMwYTRiNmZjYzE0MDVlMThmYmY3MzM1ZDJmNzg5cC0xLAotICAgIC0weDEuY2NjY2NjY2NjY2NjY3AtNywKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDEKLSAgICAweDEuNDk5M2U4YThmZjc5YjEzMjA0NmVmYTc4NTZhOTc1MzhwLTYsCi0gICAgMHgxLmZmZTU3YTc4MGYzOGMwZGIzNzA1MWZhOGM4ZDYwZmJjcC0xLAotICAgIDB4MS40OTk5OTk5OTk5OTk5cC02LAotICB9LAotICB7IC8vIEVudHJ5IDE0MgotICAgIC0weDEuNDk5M2U4YThmZjc5YjEzMjA0NmVmYTc4NTZhOTc1MzhwLTYsCi0gICAgMHgxLmZmZTU3YTc4MGYzOGMwZGIzNzA1MWZhOGM4ZDYwZmJjcC0xLAotICAgIC0weDEuNDk5OTk5OTk5OTk5OXAtNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDMKLSAgICAweDEuYWNjMDQ0YzU2ZGIwZTE5ZjgyYzljM2NmZjI0NmUyMDFwLTYsCi0gICAgMHgxLmZmZDMxY2QwZTFkNjJjMDVkMmNkZWQyMWFkZDhiZDMzcC0xLAotICAgIDB4MS5hY2NjY2NjY2NjY2NjcC02LAotICB9LAotICB7IC8vIEVudHJ5IDE0NAotICAgIC0weDEuYWNjMDQ0YzU2ZGIwZTE5ZjgyYzljM2NmZjI0NmUyMDFwLTYsCi0gICAgMHgxLmZmZDMxY2QwZTFkNjJjMDVkMmNkZWQyMWFkZDhiZDMzcC0xLAotICAgIC0weDEuYWNjY2NjY2NjY2NjY3AtNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDUKLSAgICAweDEuMDdmNDRkNjdjZjQxYWZiYzBjOTUxMDhiOTlmOTFiMDFwLTUsCi0gICAgMHgxLmZmYmJmMTgyMDc1NDJlZjgxMzkwZDczYzNiYTg5YzFhcC0xLAotICAgIDB4MS4wODBwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ2Ci0gICAgLTB4MS4wN2Y0NGQ2N2NmNDFhZmJjMGM5NTEwOGI5OWY5MWIwMXAtNSwKLSAgICAweDEuZmZiYmYxODIwNzU0MmVmODEzOTBkNzNjM2JhODljMWFwLTEsCi0gICAgLTB4MS4wODBwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ3Ci0gICAgMHgxLjM5ODVmZTQ2ZjFjODcxNGVhYTE0MTg1NjE5NjNlODlicC01LAotICAgIDB4MS5mZjlmZjhjMzI5OWY1NDQ1N2JiYWY4YzEyMTczYjQ2YnAtMSwKLSAgICAweDEuMzk5OTk5OTk5OTk5YXAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDgKLSAgICAtMHgxLjM5ODVmZTQ2ZjFjODcxNGVhYTE0MTg1NjE5NjNlODlicC01LAotICAgIDB4MS5mZjlmZjhjMzI5OWY1NDQ1N2JiYWY4YzEyMTczYjQ2YnAtMSwKLSAgICAtMHgxLjM5OTk5OTk5OTk5OWFwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ5Ci0gICAgMHgxLjZiMTRiZGU5M2FjNWY3ZDI0NTQ0ZDBlY2Y4YmU3YWVlcC01LAotICAgIDB4MS5mZjdmMzJkNzdjNWIxYzQyZjE2NjBjOWI2ZjJlZjY0ZnAtMSwKLSAgICAweDEuNmIzMzMzMzMzMzMzNHAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTAKLSAgICAtMHgxLjZiMTRiZGU5M2FjNWY3ZDI0NTQ0ZDBlY2Y4YmU3YWVlcC01LAotICAgIDB4MS5mZjdmMzJkNzdjNWIxYzQyZjE2NjBjOWI2ZjJlZjY0ZnAtMSwKLSAgICAtMHgxLjZiMzMzMzMzMzMzMzRwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUxCi0gICAgMHgxLjljYTAxNTNlZDgzOTZiMDJmODYwNTIxOWE1ZmU1OTE3cC01LAotICAgIDB4MS5mZjU5YTAwZGJjNDA4OTZiYjVlNGFjOGFkMjkzYWZiNHAtMSwKLSAgICAweDEuOWNjY2NjY2NjY2NjZXAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTIKLSAgICAtMHgxLjljYTAxNTNlZDgzOTZiMDJmODYwNTIxOWE1ZmU1OTE3cC01LAotICAgIDB4MS5mZjU5YTAwZGJjNDA4OTZiYjVlNGFjOGFkMjkzYWZiNHAtMSwKLSAgICAtMHgxLjljY2NjY2NjY2NjY2VwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUzCi0gICAgMHgxLmNlMjc4ZDQwMjdkMzQzODdmMTg0ZDRhYjJhYWY1NDVmcC01LAotICAgIDB4MS5mZjJmNDBjMDJlNjBmNjFkNmRjZmMzOWI2YzJiZTA4N3AtMSwKLSAgICAweDEuY2U2NjY2NjY2NjY2NnAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTQKLSAgICAtMHgxLmNlMjc4ZDQwMjdkMzQzODdmMTg0ZDRhYjJhYWY1NDVmcC01LAotICAgIDB4MS5mZjJmNDBjMDJlNjBmNjFkNmRjZmMzOWI2YzJiZTA4N3AtMSwKLSAgICAtMHgxLmNlNjY2NjY2NjY2NjZwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU1Ci0gICAgMHgxLjQzYzFlOWMxNzFhNjY3YTBiOTI1MTlhMDRmYTVhOTFjcC0xLAotICAgIDB4MS44Y2E0NmM3ZDg5NzVlNTdhMTQ4NGYwNWMzNzM4ZDgzYnAtMSwKLSAgICAweDEuNWU3ZmM0MzY5YmRhZHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTYKLSAgICAtMHgxLjQzYzFlOWMxNzFhNjY3YTBiOTI1MTlhMDRmYTVhOTFjcC0xLAotICAgIDB4MS44Y2E0NmM3ZDg5NzVlNTdhMTQ4NGYwNWMzNzM4ZDgzYnAtMSwKLSAgICAtMHgxLjVlN2ZjNDM2OWJkYWRwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU3Ci0gICAgMHgxLmVlM2Q2YmNlYTA5Y2ExOGIxZDFjZTdlZTA0ZmQ4ODZmcC0xLAotICAgIDB4MS4wYjVkMzgwMmZjNzk5MTE0MDE2OGYyOTRlZWRkNzkwNHAtMiwKLSAgICAweDEuNGU3ZmM0MzY5YmRhZHAwLAotICB9LAotICB7IC8vIEVudHJ5IDE1OAotICAgIC0weDEuZWUzZDZiY2VhMDljYTE4YjFkMWNlN2VlMDRmZDg4NmZwLTEsCi0gICAgMHgxLjBiNWQzODAyZmM3OTkxMTQwMTY4ZjI5NGVlZGQ3OTA0cC0yLAotICAgIC0weDEuNGU3ZmM0MzY5YmRhZHAwLAotICB9LAotICB7IC8vIEVudHJ5IDE1OQotICAgIDB4MS5kZjhlMjJlYTgwOWQ2NWM2YTY5Yjk2YWNhNjBiZTQzMnAtMSwKLSAgICAtMHgxLjY2Yjk2ZjUzMzIzYWYxZDdlMzFhNzE2MmFiMThhNzVicC0yLAotICAgIDB4MS5lZGJmYTY1MWU5Yzg0cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTYwCi0gICAgLTB4MS5kZjhlMjJlYTgwOWQ2NWM2YTY5Yjk2YWNhNjBiZTQzMnAtMSwKLSAgICAtMHgxLjY2Yjk2ZjUzMzIzYWYxZDdlMzFhNzE2MmFiMThhNzVicC0yLAotICAgIC0weDEuZWRiZmE2NTFlOWM4NHAwLAotICB9LAotICB7IC8vIEVudHJ5IDE2MQotICAgIDB4MS4xZDM0NzllYWM3YWUzNWUyZmJlYTBhZTY5NjQzNDY5MnAtMSwKLSAgICAtMHgxLmE5MzU1NDg4OGMzMmZhNTdmMjJhOTUyOWEzMjBjMWNicC0xLAotICAgIDB4MS40NjdmYzQzNjliZGFkcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTYyCi0gICAgLTB4MS4xZDM0NzllYWM3YWUzNWUyZmJlYTBhZTY5NjQzNDY5MnAtMSwKLSAgICAtMHgxLmE5MzU1NDg4OGMzMmZhNTdmMjJhOTUyOWEzMjBjMWNicC0xLAotICAgIC0weDEuNDY3ZmM0MzY5YmRhZHAxLAotICB9LAotICB7IC8vIEVudHJ5IDE2MwotICAgIC0weDEuZmZlYWFhZWVlZTg0YjQ0Y2NlZmVmODMyMjU0ZDI4YzBwLTYsCi0gICAgLTB4MS5mZmMwMDE1NTUyN2QyYjlmZGEyYWU4OTM5NmUwOTcyN3AtMSwKLSAgICAweDEuOTYxZmI1NDQ0MmQxOHAxLAotICB9LAotICB7IC8vIEVudHJ5IDE2NAotICAgIDB4MS5mZmVhYWFlZWVlODRiNDRjY2VmZWY4MzIyNTRkMjhjMHAtNiwKLSAgICAtMHgxLmZmYzAwMTU1NTI3ZDJiOWZkYTJhZTg5Mzk2ZTA5NzI3cC0xLAotICAgIC0weDEuOTYxZmI1NDQ0MmQxOHAxLAotICB9LAotICB7IC8vIEVudHJ5IDE2NQotICAgIC0weDEuMzczNGQzMmQ0OWJkMGI5NDI3NzJhNzU2N2Q1MTQxNDBwLTEsCi0gICAgLTB4MS45NjkwN2M1YzdjMjViODhlMzRhZGRmZjFmYmVmNjZlNHAtMSwKLSAgICAweDEuZTViZmE2NTFlOWM4M3AxLAotICB9LAotICB7IC8vIEVudHJ5IDE2NgotICAgIDB4MS4zNzM0ZDMyZDQ5YmQwYjk0Mjc3MmE3NTY3ZDUxNDE0MHAtMSwKLSAgICAtMHgxLjk2OTA3YzVjN2MyNWI4OGUzNGFkZGZmMWZiZWY2NmU0cC0xLAotICAgIC0weDEuZTViZmE2NTFlOWM4M3AxLAotICB9LAotICB7IC8vIEVudHJ5IDE2NwotICAgIC0weDEuZTlkMjVkMTk5MTFlMjA1YjY1MzUyMWY0MmI5Yjg2NGZwLTEsCi0gICAgLTB4MS4yYTFlNWE1MGY5NDhjZDQ4N2M1MzA5NjgyYjExMGE1M3AtMiwKLSAgICAweDEuMWFhZmNiYWZjODVmN3AyLAotICB9LAotICB7IC8vIEVudHJ5IDE2OAotICAgIDB4MS5lOWQyNWQxOTkxMWUyMDViNjUzNTIxZjQyYjliODY0ZnAtMSwKLSAgICAtMHgxLjJhMWU1YTUwZjk0OGNkNDg3YzUzMDk2ODJiMTEwYTUzcC0yLAotICAgIC0weDEuMWFhZmNiYWZjODVmN3AyLAotICB9LAotICB7IC8vIEVudHJ5IDE2OQotICAgIC0weDEuZTRlY2RjNWE0ZTQ2NTg5OTkyOGViOWZjOTU4MjlkNDhwLTEsCi0gICAgMHgxLjQ4OTRmNjk1ZGM1NmJjZThiMjczZTU1MjRmMTgxMjY0cC0yLAotICAgIDB4MS40MjdmYzQzNjliZGFkcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTcwCi0gICAgMHgxLmU0ZWNkYzVhNGU0NjU4OTk5MjhlYjlmYzk1ODI5ZDQ4cC0xLAotICAgIDB4MS40ODk0ZjY5NWRjNTZiY2U4YjI3M2U1NTI0ZjE4MTI2NHAtMiwKLSAgICAtMHgxLjQyN2ZjNDM2OWJkYWRwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzEKLSAgICAtMHgxLjJhNTlmMTAzNDQyNjE5N2ZhNmVlZTIyNzYyOTY3ZjI1cC0xLAotICAgIDB4MS5hMDE2ZWEzYTY5MmNlMGMzMjFiNzdmMTY4ZGUzOTEyMnAtMSwKLSAgICAweDEuNmE0ZmJjYmQ2ZjU2MnAyLAotICB9LAotICB7IC8vIEVudHJ5IDE3MgotICAgIDB4MS4yYTU5ZjEwMzQ0MjYxOTdmYTZlZWUyMjc2Mjk2N2YyNXAtMSwKLSAgICAweDEuYTAxNmVhM2E2OTJjZTBjMzIxYjc3ZjE2OGRlMzkxMjJwLTEsCi0gICAgLTB4MS42YTRmYmNiZDZmNTYycDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTczCi0gICAgLTB4MS4yNjMxMjQ0M2JkMzVmMTkzMTJlYWMwYTFhNmI1NjU5ZXAtMSwKLSAgICAweDEuYTMwYTY5ZjU1MzdlYmMyMmYwODcwYzJiZDI2ZWYyODRwLTEsCi0gICAgMHgxLjZhZjJlZmYwYTI4OTZwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzQKLSAgICAweDEuMjYzMTI0NDNiZDM1ZjE5MzEyZWFjMGExYTZiNTY1OWVwLTEsCi0gICAgMHgxLmEzMGE2OWY1NTM3ZWJjMjJmMDg3MGMyYmQyNmVmMjg0cC0xLAotICAgIC0weDEuNmFmMmVmZjBhMjg5NnAyLAotICB9LAotICB7IC8vIEVudHJ5IDE3NQotICAgIC0weDEuZTE4ZTY2MGE1ZTJmYjMxNmVjYmI5ZWQ3MDEyMmVmZjVwLTEsCi0gICAgMHgxLjViZDYyZThiMDRhZDU5MTVlNjYyNDIzNDliNzU2ZTExcC0yLAotICAgIDB4MS40M2M2MmE5ZDAyNDE0cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc2Ci0gICAgMHgxLmUxOGU2NjBhNWUyZmIzMTZlY2JiOWVkNzAxMjJlZmY1cC0xLAotICAgIDB4MS41YmQ2MmU4YjA0YWQ1OTE1ZTY2MjQyMzQ5Yjc1NmUxMXAtMiwKLSAgICAtMHgxLjQzYzYyYTlkMDI0MTRwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzcKLSAgICAtMHgxLmVlMGU4M2EwMTk4YjZlMmVmN2M0OGU2NjI1MjkxYTBhcC0xLAotICAgIC0weDEuMGNiNzFmNjcxZTYzNDEwOTY2ZTc4ZDIwMDljMDYxNmZwLTIsCi0gICAgMHgxLjFjOTk2NTQ5NjFmOTJwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzgKLSAgICAweDEuZWUwZTgzYTAxOThiNmUyZWY3YzQ4ZTY2MjUyOTFhMGFwLTEsCi0gICAgLTB4MS4wY2I3MWY2NzFlNjM0MTA5NjZlNzhkMjAwOWMwNjE2ZnAtMiwKLSAgICAtMHgxLjFjOTk2NTQ5NjFmOTJwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzkKLSAgICAtMHgxLjQ3Mjc3NDczMzhlNDY1MzYxNmVhZGJkN2VjM2QwMmQzcC0xLAotICAgIC0weDEuODlkODZhYTg1MjFjMTFiNzRmOGIxOTU0YzA4ZjliMzZwLTEsCi0gICAgMHgxLmVhZDkzZmViODM2MWZwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODAKLSAgICAweDEuNDcyNzc0NzMzOGU0NjUzNjE2ZWFkYmQ3ZWMzZDAyZDNwLTEsCi0gICAgLTB4MS44OWQ4NmFhODUyMWMxMWI3NGY4YjE5NTRjMDhmOWIzNnAtMSwKLSAgICAtMHgxLmVhZDkzZmViODM2MWZwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODEKLSAgICAtMHgxLjRiYTJmNzVkZGE1ZmU0MzQzMjA5MDVhNzE4NGZmMWFmcC00LAotICAgIC0weDEuZmU1MWFjNTU0YTE2YWQ4MTk0ZjE4MTA4NWY4YTE3ZjJwLTEsCi0gICAgMHgxLjljN2ZiNTQ0NDJkMWFwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODIKLSAgICAweDEuNGJhMmY3NWRkYTVmZTQzNDMyMDkwNWE3MTg0ZmYxYWZwLTQsCi0gICAgLTB4MS5mZTUxYWM1NTRhMTZhZDgxOTRmMTgxMDg1ZjhhMTdmMnAtMSwKLSAgICAtMHgxLjljN2ZiNTQ0NDJkMWFwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODMKLSAgICAweDEuMDM0YzRkNjMzYjRlZjBhOTA4OWI0Mzg5MmE0NjJhMjZwLTEsCi0gICAgLTB4MS5iOTdjMDRkMDhiYzVkNzY1YjM0MWEyMmIyYzcyMGI2ZnAtMSwKLSAgICAweDEuNGUyNjJhOWQwMjQxNXAxLAotICB9LAotICB7IC8vIEVudHJ5IDE4NAotICAgIC0weDEuMDM0YzRkNjMzYjRlZjBhOTA4OWI0Mzg5MmE0NjJhMjZwLTEsCi0gICAgLTB4MS5iOTdjMDRkMDhiYzVkNzY1YjM0MWEyMmIyYzcyMGI2ZnAtMSwKLSAgICAtMHgxLjRlMjYyYTlkMDI0MTVwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODUKLSAgICAweDEuZDFlNGNkZTJmMzk0NGY0YzEzNGMwNWNjNGU1MzM5YTNwLTEsCi0gICAgLTB4MS5hOGFjOGEzZTU4ZjZjYTk1MjM5MDI5OWQyZThiMTg3ZnAtMiwKLSAgICAweDEuZmY5OTNmZWI4MzYyMHAwLAotICB9LAotICB7IC8vIEVudHJ5IDE4NgotICAgIC0weDEuZDFlNGNkZTJmMzk0NGY0YzEzNGMwNWNjNGU1MzM5YTNwLTEsCi0gICAgLTB4MS5hOGFjOGEzZTU4ZjZjYTk1MjM5MDI5OWQyZThiMTg3ZnAtMiwKLSAgICAtMHgxLmZmOTkzZmViODM2MjBwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODcKLSAgICAweDEuZjc1MDIzNWM5NDk5MjZjNDhjOTBlNDFhOTE0NzRjMDZwLTEsCi0gICAgMHgxLjc3YThiOWIzZDI1NGE5ZTM5ZDAyYjNlYjNlMjM5MGU3cC0zLAotICAgIDB4MS42MmU2MmE5ZDAyNDE2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg4Ci0gICAgLTB4MS5mNzUwMjM1Yzk0OTkyNmM0OGM5MGU0MWE5MTQ3NGMwNnAtMSwKLSAgICAweDEuNzdhOGI5YjNkMjU0YTllMzlkMDJiM2ViM2UyMzkwZTdwLTMsCi0gICAgLTB4MS42MmU2MmE5ZDAyNDE2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg5Ci0gICAgMHgxLjY1ZjdkNTcxMjc5YjBiODAwNTU1MmZkNDdhMmU3N2FlcC0xLAotICAgIDB4MS42ZTEwNjEyMDVkZDc5MDUxYzExMmQzMGEwNTA5N2M2MXAtMSwKLSAgICAweDEuOGM2NjJhOWQwMjQxOXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTAKLSAgICAtMHgxLjY1ZjdkNTcxMjc5YjBiODAwNTU1MmZkNDdhMmU3N2FlcC0xLAotICAgIDB4MS42ZTEwNjEyMDVkZDc5MDUxYzExMmQzMGEwNTA5N2M2MXAtMSwKLSAgICAtMHgxLjhjNjYyYTlkMDI0MTlwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkxCi0gICAgLTB4MS5mZTA0M2Y1NzM2OWQ2YTUyZmEzM2YwMTE5ZWM0ZGExOXAtMSwKLSAgICAtMHgxLjY4MmYzY2MzYzdhMDhkYTJjZTAyYTQxY2RjN2JlZDg2cC00LAotICAgIC0weDEuYThhYTFkMTFjNDRmZnAwLAotICB9LAotICB7IC8vIEVudHJ5IDE5MgotICAgIDB4MS5mZTA0M2Y1NzM2OWQ2YTUyZmEzM2YwMTE5ZWM0ZGExOXAtMSwKLSAgICAtMHgxLjY4MmYzY2MzYzdhMDhkYTJjZTAyYTQxY2RjN2JlZDg2cC00LAotICAgIDB4MS5hOGFhMWQxMWM0NGZmcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkzCi0gICAgLTB4MS5mZmYxOGYyNGYzZTRiODdiZjhjMzc2MmNiNDRmNDZkNnAtMSwKLSAgICAtMHgxLmU2NjY5YTI3MGMzNmQ0ODc5YjQyOGRkYmE5NmNkODdicC03LAotICAgIC0weDEuOTVlYzhiOWUwM2Q1NHAwLAotICB9LAotICB7IC8vIEVudHJ5IDE5NAotICAgIDB4MS5mZmYxOGYyNGYzZTRiODdiZjhjMzc2MmNiNDRmNDZkNnAtMSwKLSAgICAtMHgxLmU2NjY5YTI3MGMzNmQ0ODc5YjQyOGRkYmE5NmNkODdicC03LAotICAgIDB4MS45NWVjOGI5ZTAzZDU0cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk1Ci0gICAgLTB4MS5mZjIwZDk2MTYyNGU3MDYzYTc4MjAzYjgxMWY1NzljYXAtMSwKLSAgICAweDEuZGRkMWVjMjVlMjA5ZjFiYmY3ZTE3ZWY2Yzg0NTBjZDdwLTUsCi0gICAgLTB4MS44MzJlZmEyYTQzNWE5cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk2Ci0gICAgMHgxLmZmMjBkOTYxNjI0ZTcwNjNhNzgyMDNiODExZjU3OWNhcC0xLAotICAgIDB4MS5kZGQxZWMyNWUyMDlmMWJiZjdlMTdlZjZjODQ1MGNkN3AtNSwKLSAgICAweDEuODMyZWZhMmE0MzVhOXAwLAotICB9LAotICB7IC8vIEVudHJ5IDE5NwotICAgIC0weDEuZmI5MzNjNDAxMDdmZDc3NTE4NWFjMTQ5MThjOGZiYWZwLTEsCi0gICAgMHgxLjBjYWI5MTE1NjQwZDk5MzA4MmE3MzQzYmI1YWZmZWEycC0zLAotICAgIC0weDEuNzA3MTY4YjY4MmRmZXAwLAotICB9LAotICB7IC8vIEVudHJ5IDE5OAotICAgIDB4MS5mYjkzM2M0MDEwN2ZkNzc1MTg1YWMxNDkxOGM4ZmJhZnAtMSwKLSAgICAweDEuMGNhYjkxMTU2NDBkOTkzMDgyYTczNDNiYjVhZmZlYTJwLTMsCi0gICAgMHgxLjcwNzE2OGI2ODJkZmVwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTkKLSAgICAtMHgxLmY1NGQ5NzE4ODFhZDY4NWI3ODJlZjg4ZTYzNTBmN2NkcC0xLAotICAgIDB4MS5hMDcyM2E5NTQ5MmVkZWU1ZGM5ODM5NGU0NWY5NmQ4OHAtMywKLSAgICAtMHgxLjVkYjNkNzQyYzI2NTNwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDAKLSAgICAweDEuZjU0ZDk3MTg4MWFkNjg1Yjc4MmVmODhlNjM1MGY3Y2RwLTEsCi0gICAgMHgxLmEwNzIzYTk1NDkyZWRlZTVkYzk4Mzk0ZTQ1Zjk2ZDg4cC0zLAotICAgIDB4MS41ZGIzZDc0MmMyNjUzcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAxCi0gICAgLTB4MS5lYzU4ODNiN2I2Y2Y0ZDg1OWFiMDRlMTVkNTM2OThjOXAtMSwKLSAgICAweDEuMThmZWU5NmExYTU4NTkyOGE5NGNkYTdlM2Q5MTZmZTFwLTIsCi0gICAgLTB4MS40YWY2NDVjZjAxZWE4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAyCi0gICAgMHgxLmVjNTg4M2I3YjZjZjRkODU5YWIwNGUxNWQ1MzY5OGM5cC0xLAotICAgIDB4MS4xOGZlZTk2YTFhNTg1OTI4YTk0Y2RhN2UzZDkxNmZlMXAtMiwKLSAgICAweDEuNGFmNjQ1Y2YwMWVhOHAwLAotICB9LAotICB7IC8vIEVudHJ5IDIwMwotICAgIC0weDEuZTBjMDRhOTRlMTczMDljODA2YzFjNzhiZGRjMWQ2MDdwLTEsCi0gICAgMHgxLjYwNDM2MjFiMTNiZTJmZjA3MDg1ZjgyNzg1OThlNTY2cC0yLAotICAgIC0weDEuMzgzOGI0NWI0MTZmZHAwLAotICB9LAotICB7IC8vIEVudHJ5IDIwNAotICAgIDB4MS5lMGMwNGE5NGUxNzMwOWM4MDZjMWM3OGJkZGMxZDYwN3AtMSwKLSAgICAweDEuNjA0MzYyMWIxM2JlMmZmMDcwODVmODI3ODU5OGU1NjZwLTIsCi0gICAgMHgxLjM4MzhiNDViNDE2ZmRwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDUKLSAgICAtMHgxLmQyOTRkMWY5NmM3ZWJkYjk4NjlkZDk3Y2Y1NzRkZGI5cC0xLAotICAgIDB4MS5hNWE0Y2NmNDBkOWQ5YmE5N2ZhYTRlMjNlY2NlOWUzYXAtMiwKLSAgICAtMHgxLjI1N2IyMmU3ODBmNTJwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDYKLSAgICAweDEuZDI5NGQxZjk2YzdlYmRiOTg2OWRkOTdjZjU3NGRkYjlwLTEsCi0gICAgMHgxLmE1YTRjY2Y0MGQ5ZDliYTk3ZmFhNGUyM2VjY2U5ZTNhcC0yLAotICAgIDB4MS4yNTdiMjJlNzgwZjUycDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA3Ci0gICAgLTB4MS5jMWU5ODgzMzczZDdlY2M0OGM5MmRjODg3NTUwNWY3ZXAtMSwKLSAgICAweDEuZThjNDA1ZjM2Zjg1YjdmNWQ2YTM4ZGZkNGE2OTIzNDFwLTIsCi0gICAgLTB4MS4xMmJkOTE3M2MwN2FicDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA4Ci0gICAgMHgxLmMxZTk4ODMzNzNkN2VjYzQ4YzkyZGM4ODc1NTA1ZjdlcC0xLAotICAgIDB4MS5lOGM0MDVmMzZmODViN2Y1ZDZhMzhkZmQ0YTY5MjM0MXAtMiwKLSAgICAweDEuMTJiZDkxNzNjMDdhYnAwLAotICB9LAotICB7IC8vIEVudHJ5IDIwOQotICAgIC0weDEuYTJjMjg5ZDlkMDU1YWMzNzdmNjdkN2E1NGEwYjMwMDVwLTEsCi0gICAgMHgxLjI2OTc2YTZjNGUwZjg2NjMzMzI3ZjFjZWVjYjUwOGFlcC0xLAotICAgIC0weDEuZWE1YzNlZDViMzg1MHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTAKLSAgICAweDEuYTJjMjg5ZDlkMDU1YWMzNzdmNjdkN2E1NGEwYjMwMDVwLTEsCi0gICAgMHgxLjI2OTc2YTZjNGUwZjg2NjMzMzI3ZjFjZWVjYjUwOGFlcC0xLAotICAgIDB4MS5lYTVjM2VkNWIzODUwcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIxMQotICAgIC0weDEuOTVmMDUyNTdkYmNiNWY0YjEyNjM2YzU4NzhlYTQwNWFwLTEsCi0gICAgMHgxLjM4MDVhMTg4MjAwOWYyODQzZGE4MDhlOTU5ZjE3ODYxcC0xLAotICAgIC0weDEuZDRiODdkYWI2NzBhMHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTIKLSAgICAweDEuOTVmMDUyNTdkYmNiNWY0YjEyNjM2YzU4NzhlYTQwNWFwLTEsCi0gICAgMHgxLjM4MDVhMTg4MjAwOWYyODQzZGE4MDhlOTU5ZjE3ODYxcC0xLAotICAgIDB4MS5kNGI4N2RhYjY3MGEwcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIxMwotICAgIC0weDEuODg2NDdmMjZhNmUwZjZiMjcxNWE2YzM3OTdlYzExZjVwLTEsCi0gICAgMHgxLjQ4ZTUyZTBhNjViY2IzY2Q0NjQ1NWM0ZDIzMzhiZGYycC0xLAotICAgIC0weDEuYmYxNGJjODExYThmMHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTQKLSAgICAweDEuODg2NDdmMjZhNmUwZjZiMjcxNWE2YzM3OTdlYzExZjVwLTEsCi0gICAgMHgxLjQ4ZTUyZTBhNjViY2IzY2Q0NjQ1NWM0ZDIzMzhiZGYycC0xLAotICAgIDB4MS5iZjE0YmM4MTFhOGYwcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIxNQotICAgIC0weDEuN2EyNTQxZGZkNGU3NTJkZTM4ZjA0YWJhMjFmYzlkOWZwLTEsCi0gICAgMHgxLjU5MmU1OGVhMGE5ZWVjMGIzNTdlYjRlOWE4M2IwZWE1cC0xLAotICAgIC0weDEuYTk3MGZiNTZjZTE0MHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTYKLSAgICAweDEuN2EyNTQxZGZkNGU3NTJkZTM4ZjA0YWJhMjFmYzlkOWZwLTEsCi0gICAgMHgxLjU5MmU1OGVhMGE5ZWVjMGIzNTdlYjRlOWE4M2IwZWE1cC0xLAotICAgIDB4MS5hOTcwZmI1NmNlMTQwcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIxNwotICAgIC0weDEuNmIzOTFlMjViYzI2Y2JiY2Y3YTAxODQwNzBhZjljMzlwLTEsCi0gICAgMHgxLjY4ZDlhZmUwNTJkMWYwZTkzMjRhZTg3Njk2MWJjZGIxcC0xLAotICAgIC0weDEuOTNjZDNhMmM4MTk5MHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTgKLSAgICAweDEuNmIzOTFlMjViYzI2Y2JiY2Y3YTAxODQwNzBhZjljMzlwLTEsCi0gICAgMHgxLjY4ZDlhZmUwNTJkMWYwZTkzMjRhZTg3Njk2MWJjZGIxcC0xLAotICAgIDB4MS45M2NkM2EyYzgxOTkwcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIxOQotICAgIC0weDEuNWJhNmU2YThlNzA2NTM1Yjk4ZmM5OWRmYWVmODI0ZjFwLTEsCi0gICAgMHgxLjc3ZTAwOGQwNzc1ZTc0NGViMTZhMmM0ZWM3MTg0YzQzcC0xLAotICAgIC0weDEuN2UyOTc5MDIzNTFlMHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjAKLSAgICAweDEuNWJhNmU2YThlNzA2NTM1Yjk4ZmM5OWRmYWVmODI0ZjFwLTEsCi0gICAgMHgxLjc3ZTAwOGQwNzc1ZTc0NGViMTZhMmM0ZWM3MTg0YzQzcC0xLAotICAgIDB4MS43ZTI5NzkwMjM1MWUwcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIyMQotICAgIC0weDEuNGI3NWJhMDk2ZmE1NDllYjkzNTk1ZDgxOTRhYjkxN2ZwLTEsCi0gICAgMHgxLjg2M2E4NTBlNDM4ZmUwMjkzMDJhYmEwZjVmMTI3NjE2cC0xLAotICAgIC0weDEuNjg4NWI3ZDdlOGEzMHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjIKLSAgICAweDEuNGI3NWJhMDk2ZmE1NDllYjkzNTk1ZDgxOTRhYjkxN2ZwLTEsCi0gICAgMHgxLjg2M2E4NTBlNDM4ZmUwMjkzMDJhYmEwZjVmMTI3NjE2cC0xLAotICAgIDB4MS42ODg1YjdkN2U4YTMwcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIyMwotICAgIC0weDEuM2FhY2ZmOTVhMzEyMmIxNWYzNzJiZmQyZmRmOWE3NWZwLTEsCi0gICAgMHgxLjkzZTI5NDgyMzNmY2U4MTQ0MzllZDUxZmQyNTQ4OTIwcC0xLAotICAgIC0weDEuNTJlMWY2YWQ5YzI4MHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjQKLSAgICAweDEuM2FhY2ZmOTVhMzEyMmIxNWYzNzJiZmQyZmRmOWE3NWZwLTEsCi0gICAgMHgxLjkzZTI5NDgyMzNmY2U4MTQ0MzllZDUxZmQyNTQ4OTIwcC0xLAotICAgIDB4MS41MmUxZjZhZDljMjgwcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIyNQotICAgIC0weDEuMjk1NDYzZTc2OTI4NGE1YWVkMTdhNDQzMzkyZjM4ZjNwLTEsCi0gICAgMHgxLmEwZDFmOGE5YTc5MWQ0YjU2OTRjYTY4YTQyZmU2YzlicC0xLAotICAgIC0weDEuM2QzZTM1ODM0ZmFkMHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjYKLSAgICAweDEuMjk1NDYzZTc2OTI4NGE1YWVkMTdhNDQzMzkyZjM4ZjNwLTEsCi0gICAgMHgxLmEwZDFmOGE5YTc5MWQ0YjU2OTRjYTY4YTQyZmU2YzlicC0xLAotICAgIDB4MS4zZDNlMzU4MzRmYWQwcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIyNwotICAgIC0weDEuZmM3NjliNzdlNTg4NDk1YTZmNjQyY2EyNGU0ZWQzZmNwLTIsCi0gICAgMHgxLmJjNmJkODYxZTEzZGUzMDk0MjhlMDBmN2JlZjZjM2VjcC0xLAotICAgIC0weDEuMGEwYjAyNTAxYzc5OXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjgKLSAgICAweDEuZmM3NjliNzdlNTg4NDk1YTZmNjQyY2EyNGU0ZWQzZmNwLTIsCi0gICAgMHgxLmJjNmJkODYxZTEzZGUzMDk0MjhlMDBmN2JlZjZjM2VjcC0xLAotICAgIDB4MS4wYTBiMDI1MDFjNzk5cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIyOQotICAgIC0weDEuYzg1M2M3ODQ2MmRlNDZiNTc0MzMxNTYxMmY4YjVhN2NwLTIsCi0gICAgMHgxLmNhNTljNmZhM2Q5Y2UyMzhhMjI3MzkzYjZiMDc1YmM1cC0xLAotICAgIC0weDEuZDhmNzIwOGU2YjgyY3AtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzAKLSAgICAweDEuYzg1M2M3ODQ2MmRlNDZiNTc0MzMxNTYxMmY4YjVhN2NwLTIsCi0gICAgMHgxLmNhNTljNmZhM2Q5Y2UyMzhhMjI3MzkzYjZiMDc1YmM1cC0xLAotICAgIDB4MS5kOGY3MjA4ZTZiODJjcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDIzMQotICAgIC0weDEuOTJhYmE5MGFhZjI3MjQ5ZGU0OWM3OGZjNjQzYzhiNzJwLTIsCi0gICAgMHgxLmQ2YzBiMTI1NzkxY2ZmY2U4M2UzMjU2NDcxMmI3OGM2cC0xLAotICAgIC0weDEuOWRkODNjN2M5ZTEyNnAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzIKLSAgICAweDEuOTJhYmE5MGFhZjI3MjQ5ZGU0OWM3OGZjNjQzYzhiNzJwLTIsCi0gICAgMHgxLmQ2YzBiMTI1NzkxY2ZmY2U4M2UzMjU2NDcxMmI3OGM2cC0xLAotICAgIDB4MS45ZGQ4M2M3YzllMTI2cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDIzMwotICAgIC0weDEuNWJhYzA2NDY1OGYzOTQ2MGM4MzExM2MwYTAwOTdhMGNwLTIsCi0gICAgMHgxLmUxOTYwMjYxODI5ODU4MzkxNjQ1YmJlMTIwMTllNThhcC0xLAotICAgIC0weDEuNjJiOTU4NmFkMGEyMHAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzQKLSAgICAweDEuNWJhYzA2NDY1OGYzOTQ2MGM4MzExM2MwYTAwOTdhMGNwLTIsCi0gICAgMHgxLmUxOTYwMjYxODI5ODU4MzkxNjQ1YmJlMTIwMTllNThhcC0xLAotICAgIDB4MS42MmI5NTg2YWQwYTIwcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDIzNQotICAgIC0weDEuMjM4M2NhODA3OGU1ODQ3N2NkNWZiMWQ5ZGUwMzFkY2VwLTIsCi0gICAgMHgxLmVhZDA3Y2M2MzU2OTY0ZTI3YTEwMzZkMmY4YjE1OGY3cC0xLAotICAgIC0weDEuMjc5YTc0NTkwMzMxYXAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzYKLSAgICAweDEuMjM4M2NhODA3OGU1ODQ3N2NkNWZiMWQ5ZGUwMzFkY2VwLTIsCi0gICAgMHgxLmVhZDA3Y2M2MzU2OTY0ZTI3YTEwMzZkMmY4YjE1OGY3cC0xLAotICAgIDB4MS4yNzlhNzQ1OTAzMzFhcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDIzNwotICAgIC0weDEuZDRjNWJjMTFkMjM3MWFmMmZlMjVlZjVlZGUyNzY2YTNwLTMsCi0gICAgMHgxLmYyNjg0MGU3YjIxODhmN2EwY2M2NjFhMGVkZTM3MjhicC0xLAotICAgIC0weDEuZDhmNzIwOGU2YjgyOXAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzgKLSAgICAweDEuZDRjNWJjMTFkMjM3MWFmMmZlMjVlZjVlZGUyNzY2YTNwLTMsCi0gICAgMHgxLmYyNjg0MGU3YjIxODhmN2EwY2M2NjFhMGVkZTM3MjhicC0xLAotICAgIDB4MS5kOGY3MjA4ZTZiODI5cC0zLAotICB9LAotICB7IC8vIEVudHJ5IDIzOQotICAgIC0weDEuNjBmM2ZhYWY0MzAyM2QzYzc4NjNhZTA2ZDRkNTk3NzRwLTMsCi0gICAgMHgxLmY4NTZkNDhkYjc5N2RlYzBiNzllMTM1MzQwOWRjM2YycC0xLAotICAgIC0weDEuNjJiOTU4NmFkMGExZXAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDAKLSAgICAweDEuNjBmM2ZhYWY0MzAyM2QzYzc4NjNhZTA2ZDRkNTk3NzRwLTMsCi0gICAgMHgxLmY4NTZkNDhkYjc5N2RlYzBiNzllMTM1MzQwOWRjM2YycC0xLAotICAgIDB4MS42MmI5NTg2YWQwYTFlcC0zLAotICB9LAotICB7IC8vIEVudHJ5IDI0MQotICAgIC0weDEuZDdlYTNkZTQ1YTlkNjU2M2FjMDA1YzBjNWJhZDhjNTBwLTQsCi0gICAgMHgxLmZjOTcyODNhNDI0Nzk3MjE1ZjhhOGQxOTY3NzM2YzlicC0xLAotICAgIC0weDEuZDhmNzIwOGU2YjgyNnAtNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDIKLSAgICAweDEuZDdlYTNkZTQ1YTlkNjU2M2FjMDA1YzBjNWJhZDhjNTBwLTQsCi0gICAgMHgxLmZjOTcyODNhNDI0Nzk3MjE1ZjhhOGQxOTY3NzM2YzlicC0xLAotICAgIDB4MS5kOGY3MjA4ZTZiODI2cC00LAotICB9LAotICB7IC8vIEVudHJ5IDI0MwotICAgIC0weDEuZDhiM2RmNDg5OTg3YTZmZTBlZWFkMDA4ZTcyMGFhMjJwLTUsCi0gICAgMHgxLmZmMjU5YjdhYjlmNGY5YThjYjlmMWMzMzMyNzJlNDA5cC0xLAotICAgIC0weDEuZDhmNzIwOGU2YjgyZHAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDQKLSAgICAweDEuZDhiM2RmNDg5OTg3YTZmZTBlZWFkMDA4ZTcyMGFhMjJwLTUsCi0gICAgMHgxLmZmMjU5YjdhYjlmNGY5YThjYjlmMWMzMzMyNzJlNDA5cC0xLAotICAgIDB4MS5kOGY3MjA4ZTZiODJkcC01LAotICB9LAotICB7IC8vIEVudHJ5IDI0NQotICAgIDB4MS5kOGIzZGY0ODk5ODdhNmZlMGVlYWQwMDhlNzIwYWEyMnAtNSwKLSAgICAweDEuZmYyNTliN2FiOWY0ZjlhOGNiOWYxYzMzMzI3MmU0MDlwLTEsCi0gICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ2Ci0gICAgLTB4MS5kOGIzZGY0ODk5ODdhNmZlMGVlYWQwMDhlNzIwYWEyMnAtNSwKLSAgICAweDEuZmYyNTliN2FiOWY0ZjlhOGNiOWYxYzMzMzI3MmU0MDlwLTEsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODJkcC01LAotICB9LAotICB7IC8vIEVudHJ5IDI0NwotICAgIDB4MS5kN2VhM2RlNDVhOWRkNGE0YmNjZDFhOGMwNDhmYWY0Y3AtNCwKLSAgICAweDEuZmM5NzI4M2E0MjQ3OTU4NDcyOTQ2NTRhMWQ4YTA4ZWRwLTEsCi0gICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ4Ci0gICAgLTB4MS5kN2VhM2RlNDVhOWRkNGE0YmNjZDFhOGMwNDhmYWY0Y3AtNCwKLSAgICAweDEuZmM5NzI4M2E0MjQ3OTU4NDcyOTQ2NTRhMWQ4YTA4ZWRwLTEsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODJkcC00LAotICB9LAotICB7IC8vIEVudHJ5IDI0OQotICAgIDB4MS42MGYzZmFhZjQzMDI3YzQ3NTJmNTY0ZjlkMDgxOGZlOHAtMywKLSAgICAweDEuZjg1NmQ0OGRiNzk3ZGJmZWNmYThiNGNkM2JlNDQwMjdwLTEsCi0gICAgMHgxLjYyYjk1ODZhZDBhMjJwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUwCi0gICAgLTB4MS42MGYzZmFhZjQzMDI3YzQ3NTJmNTY0ZjlkMDgxOGZlOHAtMywKLSAgICAweDEuZjg1NmQ0OGRiNzk3ZGJmZWNmYThiNGNkM2JlNDQwMjdwLTEsCi0gICAgLTB4MS42MmI5NTg2YWQwYTIycC0zLAotICB9LAotICB7IC8vIEVudHJ5IDI1MQotICAgIDB4MS5kNGM1YmMxMWQyMzc1OTQwMDY0MmU1YTFlZmRjMGY4NXAtMywKLSAgICAweDEuZjI2ODQwZTdiMjE4OGJkMDgxNGUzZGZjN2Y2ZjNmODdwLTEsCi0gICAgMHgxLmQ4ZjcyMDhlNmI4MmRwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUyCi0gICAgLTB4MS5kNGM1YmMxMWQyMzc1OTQwMDY0MmU1YTFlZmRjMGY4NXAtMywKLSAgICAweDEuZjI2ODQwZTdiMjE4OGJkMDgxNGUzZGZjN2Y2ZjNmODdwLTEsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODJkcC0zLAotICB9LAotICB7IC8vIEVudHJ5IDI1MwotICAgIDB4MS4yMzgzY2E4MDc4ZTVhMzI0ZDUyYzE1MzA3NDJjZDRmNXAtMiwKLSAgICAweDEuZWFkMDdjYzYzNTY5NjA1NDZhZTYzNGVmNjI2MjFmYjJwLTEsCi0gICAgMHgxLjI3OWE3NDU5MDMzMWNwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU0Ci0gICAgLTB4MS4yMzgzY2E4MDc4ZTVhMzI0ZDUyYzE1MzA3NDJjZDRmNXAtMiwKLSAgICAweDEuZWFkMDdjYzYzNTY5NjA1NDZhZTYzNGVmNjI2MjFmYjJwLTEsCi0gICAgLTB4MS4yNzlhNzQ1OTAzMzFjcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDI1NQotICAgIDB4MS41YmFjMDY0NjU4ZjNiMjdhMjg1NzJiZWEyNTYxOTVlZnAtMiwKLSAgICAweDEuZTE5NjAyNjE4Mjk4NTJjYTY2MmNhMjdkNTE4YzJmYTlwLTEsCi0gICAgMHgxLjYyYjk1ODZhZDBhMjJwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU2Ci0gICAgLTB4MS41YmFjMDY0NjU4ZjNiMjdhMjg1NzJiZWEyNTYxOTVlZnAtMiwKLSAgICAweDEuZTE5NjAyNjE4Mjk4NTJjYTY2MmNhMjdkNTE4YzJmYTlwLTEsCi0gICAgLTB4MS42MmI5NTg2YWQwYTIycC0yLAotICB9LAotICB7IC8vIEVudHJ5IDI1NwotICAgIDB4MS45MmFiYTkwYWFmMjc0MjA5ZWZhZWQwOGUzNDA3MWUzYnAtMiwKLSAgICAweDEuZDZjMGIxMjU3OTFjZjk4M2Q1M2VmYWE3ZDQ1ZTI5MWVwLTEsCi0gICAgMHgxLjlkZDgzYzdjOWUxMjhwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU4Ci0gICAgLTB4MS45MmFiYTkwYWFmMjc0MjA5ZWZhZWQwOGUzNDA3MWUzYnAtMiwKLSAgICAweDEuZDZjMGIxMjU3OTFjZjk4M2Q1M2VmYWE3ZDQ1ZTI5MWVwLTEsCi0gICAgLTB4MS45ZGQ4M2M3YzllMTI4cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDI1OQotICAgIDB4MS5jODUzYzc4NDYyZGU2MzViMTBhMmI5M2FmZDc1ZGEyNnAtMiwKLSAgICAweDEuY2E1OWM2ZmEzZDljZGIxNzUzMDkyN2FmZjFiMzNhYmJwLTEsCi0gICAgMHgxLmQ4ZjcyMDhlNmI4MmVwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYwCi0gICAgLTB4MS5jODUzYzc4NDYyZGU2MzViMTBhMmI5M2FmZDc1ZGEyNnAtMiwKLSAgICAweDEuY2E1OWM2ZmEzZDljZGIxNzUzMDkyN2FmZjFiMzNhYmJwLTEsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODJlcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDI2MQotICAgIDB4MS5mYzc2OWI3N2U1ODg0OTVhNmY2NDJjYTI0ZTRlZDNmY3AtMiwKLSAgICAweDEuYmM2YmQ4NjFlMTNkZTMwOTQyOGUwMGY3YmVmNmMzZWNwLTEsCi0gICAgMHgxLjBhMGIwMjUwMWM3OTlwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYyCi0gICAgLTB4MS5mYzc2OWI3N2U1ODg0OTVhNmY2NDJjYTI0ZTRlZDNmY3AtMiwKLSAgICAweDEuYmM2YmQ4NjFlMTNkZTMwOTQyOGUwMGY3YmVmNmMzZWNwLTEsCi0gICAgLTB4MS4wYTBiMDI1MDFjNzk5cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI2MwotICAgIDB4MS4yOTU0NjNlNzY5MjgxNjQwYWUwMjZmNTBmYzQ1ZTMwMXAtMSwKLSAgICAweDEuYTBkMWY4YTlhNzkxZjlkZmY1Yzk5M2FmNDkwODI2NGRwLTEsCi0gICAgMHgxLjNkM2UzNTgzNGZhY2NwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY0Ci0gICAgLTB4MS4yOTU0NjNlNzY5MjgxNjQwYWUwMjZmNTBmYzQ1ZTMwMXAtMSwKLSAgICAweDEuYTBkMWY4YTlhNzkxZjlkZmY1Yzk5M2FmNDkwODI2NGRwLTEsCi0gICAgLTB4MS4zZDNlMzU4MzRmYWNjcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI2NQotICAgIDB4MS4zYWFjZmY5NWEzMTFmODk5YTBlMjc5NTM1ZTgxYzRlY3AtMSwKLSAgICAweDEuOTNlMjk0ODIzM2ZkMGY2OWUzOTE4OTgyMTQ4ZjgyNjVwLTEsCi0gICAgMHgxLjUyZTFmNmFkOWMyN2NwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY2Ci0gICAgLTB4MS4zYWFjZmY5NWEzMTFmODk5YTBlMjc5NTM1ZTgxYzRlY3AtMSwKLSAgICAweDEuOTNlMjk0ODIzM2ZkMGY2OWUzOTE4OTgyMTQ4ZjgyNjVwLTEsCi0gICAgLTB4MS41MmUxZjZhZDljMjdjcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI2NwotICAgIDB4MS40Yjc1YmEwOTZmYTUxOTI0NDJiNzk1MGY5NjBmODAwNnAtMSwKLSAgICAweDEuODYzYTg1MGU0MzkwMDk5N2U3NmJlODA0MDU0MzczNzdwLTEsCi0gICAgMHgxLjY4ODViN2Q3ZThhMmNwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY4Ci0gICAgLTB4MS40Yjc1YmEwOTZmYTUxOTI0NDJiNzk1MGY5NjBmODAwNnAtMSwKLSAgICAweDEuODYzYTg1MGU0MzkwMDk5N2U3NmJlODA0MDU0MzczNzdwLTEsCi0gICAgLTB4MS42ODg1YjdkN2U4YTJjcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI2OQotICAgIDB4MS41YmE2ZTZhOGU3MDYyNDVmOTdlMjhhZjNkZGI3MDBmNnAtMSwKLSAgICAweDEuNzdlMDA4ZDA3NzVlOWZjMzhlM2Y0OTJmOGU5M2ZmNTFwLTEsCi0gICAgMHgxLjdlMjk3OTAyMzUxZGNwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcwCi0gICAgLTB4MS41YmE2ZTZhOGU3MDYyNDVmOTdlMjhhZjNkZGI3MDBmNnAtMSwKLSAgICAweDEuNzdlMDA4ZDA3NzVlOWZjMzhlM2Y0OTJmOGU5M2ZmNTFwLTEsCi0gICAgLTB4MS43ZTI5NzkwMjM1MWRjcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI3MQotICAgIDB4MS42YjM5MWUyNWJjMjY5ZWExYzFhNDBkZTYyZmJjMDNiNHAtMSwKLSAgICAweDEuNjhkOWFmZTA1MmQyMWU1MDU2MGY5ZmZiNmNjMWI5NDVwLTEsCi0gICAgMHgxLjkzY2QzYTJjODE5OGNwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcyCi0gICAgLTB4MS42YjM5MWUyNWJjMjY5ZWExYzFhNDBkZTYyZmJjMDNiNHAtMSwKLSAgICAweDEuNjhkOWFmZTA1MmQyMWU1MDU2MGY5ZmZiNmNjMWI5NDVwLTEsCi0gICAgLTB4MS45M2NkM2EyYzgxOThjcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI3MwotICAgIDB4MS43YTI1NDFkZmQ0ZTcyN2I4NmRkMzA5NjY0MTg2ZWM2YnAtMSwKLSAgICAweDEuNTkyZTU4ZWEwYTlmMWI0ZmRkYmFhZjg2OGZlNDc5MTFwLTEsCi0gICAgMHgxLmE5NzBmYjU2Y2UxM2NwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc0Ci0gICAgLTB4MS43YTI1NDFkZmQ0ZTcyN2I4NmRkMzA5NjY0MTg2ZWM2YnAtMSwKLSAgICAweDEuNTkyZTU4ZWEwYTlmMWI0ZmRkYmFhZjg2OGZlNDc5MTFwLTEsCi0gICAgLTB4MS5hOTcwZmI1NmNlMTNjcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI3NQotICAgIDB4MS44ODY0N2YyNmE2ZTBjZDk1Y2I5OTFmN2ZmZTYxYTAyZXAtMSwKLSAgICAweDEuNDhlNTJlMGE2NWJjZTRkOWQ2MmEzMTI5M2Y3ZDQxYzFwLTEsCi0gICAgMHgxLmJmMTRiYzgxMWE4ZWNwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc2Ci0gICAgLTB4MS44ODY0N2YyNmE2ZTBjZDk1Y2I5OTFmN2ZmZTYxYTAyZXAtMSwKLSAgICAweDEuNDhlNTJlMGE2NWJjZTRkOWQ2MmEzMTI5M2Y3ZDQxYzFwLTEsCi0gICAgLTB4MS5iZjE0YmM4MTFhOGVjcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI3NwotICAgIDB4MS45NWYwNTI1N2RiY2IzODRhNWUzMjY4NTczNzZkZDgwMXAtMSwKLSAgICAweDEuMzgwNWExODgyMDBhMjU0MjQ3ZjMwNDYyYzM2YWNmNmFwLTEsCi0gICAgMHgxLmQ0Yjg3ZGFiNjcwOWNwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc4Ci0gICAgLTB4MS45NWYwNTI1N2RiY2IzODRhNWUzMjY4NTczNzZkZDgwMXAtMSwKLSAgICAweDEuMzgwNWExODgyMDBhMjU0MjQ3ZjMwNDYyYzM2YWNmNmFwLTEsCi0gICAgLTB4MS5kNGI4N2RhYjY3MDljcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI3OQotICAgIDB4MS5hMmMyODlkOWQwNTU4NzY0OTIxYTRkZTM1NWY5NDQ4Y3AtMSwKLSAgICAweDEuMjY5NzZhNmM0ZTBmYmFiYjg0NjMyYmQ5OWZlZWM5YzZwLTEsCi0gICAgMHgxLmVhNWMzZWQ1YjM4NGNwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgwCi0gICAgLTB4MS5hMmMyODlkOWQwNTU4NzY0OTIxYTRkZTM1NWY5NDQ4Y3AtMSwKLSAgICAweDEuMjY5NzZhNmM0ZTBmYmFiYjg0NjMyYmQ5OWZlZWM5YzZwLTEsCi0gICAgLTB4MS5lYTVjM2VkNWIzODRjcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI4MQotICAgIDB4MS5jMWU5ODgzMzczZDdlY2M0OGM5MmRjODg3NTUwNWY3ZXAtMSwKLSAgICAweDEuZThjNDA1ZjM2Zjg1YjdmNWQ2YTM4ZGZkNGE2OTIzNDFwLTIsCi0gICAgMHgxLjEyYmQ5MTczYzA3YWJwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODIKLSAgICAtMHgxLmMxZTk4ODMzNzNkN2VjYzQ4YzkyZGM4ODc1NTA1ZjdlcC0xLAotICAgIDB4MS5lOGM0MDVmMzZmODViN2Y1ZDZhMzhkZmQ0YTY5MjM0MXAtMiwKLSAgICAtMHgxLjEyYmQ5MTczYzA3YWJwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODMKLSAgICAweDEuZDI5NGQxZjk2YzdlZjI2ZTIwM2M1YjMwOWE1NTY3MWZwLTEsCi0gICAgMHgxLmE1YTRjY2Y0MGQ5Y2IyNWYxNmFkOTdlNDgwYzRiNDgzcC0yLAotICAgIDB4MS4yNTdiMjJlNzgwZjU2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg0Ci0gICAgLTB4MS5kMjk0ZDFmOTZjN2VmMjZlMjAzYzViMzA5YTU1NjcxZnAtMSwKLSAgICAweDEuYTVhNGNjZjQwZDljYjI1ZjE2YWQ5N2U0ODBjNGI0ODNwLTIsCi0gICAgLTB4MS4yNTdiMjJlNzgwZjU2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg1Ci0gICAgMHgxLmUwYzA0YTk0ZTE3MzM1ZDA3MzA1MmEwMzk0YjllMWMzcC0xLAotICAgIDB4MS42MDQzNjIxYjEzYmQzZjkwNGIzYjg3NmRmNWIyYzZmNHAtMiwKLSAgICAweDEuMzgzOGI0NWI0MTcwMXAwLAotICB9LAotICB7IC8vIEVudHJ5IDI4NgotICAgIC0weDEuZTBjMDRhOTRlMTczMzVkMDczMDUyYTAzOTRiOWUxYzNwLTEsCi0gICAgMHgxLjYwNDM2MjFiMTNiZDNmOTA0YjNiODc2ZGY1YjJjNmY0cC0yLAotICAgIC0weDEuMzgzOGI0NWI0MTcwMXAwLAotICB9LAotICB7IC8vIEVudHJ5IDI4NwotICAgIDB4MS5lYzU4ODNiN2I2Y2Y3MGE1NzdkZDkxNjBkMGY4ZTlkNXAtMSwKLSAgICAweDEuMThmZWU5NmExYTU3NjJmYzY3NzBmZjE2OGUwNmFiM2VwLTIsCi0gICAgMHgxLjRhZjY0NWNmMDFlYWNwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODgKLSAgICAtMHgxLmVjNTg4M2I3YjZjZjcwYTU3N2RkOTE2MGQwZjhlOWQ1cC0xLAotICAgIDB4MS4xOGZlZTk2YTFhNTc2MmZjNjc3MGZmMTY4ZTA2YWIzZXAtMiwKLSAgICAtMHgxLjRhZjY0NWNmMDFlYWNwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODkKLSAgICAweDEuZjU0ZDk3MTg4MWFkODI2MjliZDg0ZDIxNDE5NGU4ZGRwLTEsCi0gICAgMHgxLmEwNzIzYTk1NDkyY2U5OTg0NTdmYjdhMGQwOWE2Mzg1cC0zLAotICAgIDB4MS41ZGIzZDc0MmMyNjU3cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkwCi0gICAgLTB4MS5mNTRkOTcxODgxYWQ4MjYyOWJkODRkMjE0MTk0ZThkZHAtMSwKLSAgICAweDEuYTA3MjNhOTU0OTJjZTk5ODQ1N2ZiN2EwZDA5YTYzODVwLTMsCi0gICAgLTB4MS41ZGIzZDc0MmMyNjU3cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkxCi0gICAgMHgxLmZiOTMzYzQwMTA3ZmU4M2ZkMTZjMTc4OWUyN2Y2OWY3cC0xLAotICAgIDB4MS4wY2FiOTExNTY0MGI5ZDlkNDY2NzIzYmJkNWQ1ODliZXAtMywKLSAgICAweDEuNzA3MTY4YjY4MmUwMnAwLAotICB9LAotICB7IC8vIEVudHJ5IDI5MgotICAgIC0weDEuZmI5MzNjNDAxMDdmZTgzZmQxNmMxNzg5ZTI3ZjY5ZjdwLTEsCi0gICAgMHgxLjBjYWI5MTE1NjQwYjlkOWQ0NjY3MjNiYmQ1ZDU4OWJlcC0zLAotICAgIC0weDEuNzA3MTY4YjY4MmUwMnAwLAotICB9LAotICB7IC8vIEVudHJ5IDI5MwotICAgIDB4MS5mZjIwZDk2MTYyNGU3N2RhZWYzMjliNDAyOWMzNjJkZXAtMSwKLSAgICAweDEuZGRkMWVjMjVlMjAxZjUzODkyNWJmNWJjZjdjN2RmNmVwLTUsCi0gICAgMHgxLjgzMmVmYTJhNDM1YWRwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTQKLSAgICAtMHgxLmZmMjBkOTYxNjI0ZTc3ZGFlZjMyOWI0MDI5YzM2MmRlcC0xLAotICAgIDB4MS5kZGQxZWMyNWUyMDFmNTM4OTI1YmY1YmNmN2M3ZGY2ZXAtNSwKLSAgICAtMHgxLjgzMmVmYTJhNDM1YWRwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTUKLSAgICAweDEuZmZmMThmMjRmM2U0YjY5NTkyMjk0ZjIwNmQ3YjMyYzJwLTEsCi0gICAgLTB4MS5lNjY2OWEyNzBjNTZkM2EwOGQ5MWNjMjcyMWY5MmZlMXAtNywKLSAgICAweDEuOTVlYzhiOWUwM2Q1OHAwLAotICB9LAotICB7IC8vIEVudHJ5IDI5NgotICAgIC0weDEuZmZmMThmMjRmM2U0YjY5NTkyMjk0ZjIwNmQ3YjMyYzJwLTEsCi0gICAgLTB4MS5lNjY2OWEyNzBjNTZkM2EwOGQ5MWNjMjcyMWY5MmZlMXAtNywKLSAgICAtMHgxLjk1ZWM4YjllMDNkNThwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTcKLSAgICAweDEuZmUwNDNmNTczNjlkNmE1MmZhMzNmMDExOWVjNGRhMTlwLTEsCi0gICAgLTB4MS42ODJmM2NjM2M3YTA4ZGEyY2UwMmE0MWNkYzdiZWQ4NnAtNCwKLSAgICAweDEuYThhYTFkMTFjNDRmZnAwLAotICB9LAotICB7IC8vIEVudHJ5IDI5OAotICAgIC0weDEuZmUwNDNmNTczNjlkNmE1MmZhMzNmMDExOWVjNGRhMTlwLTEsCi0gICAgLTB4MS42ODJmM2NjM2M3YTA4ZGEyY2UwMmE0MWNkYzdiZWQ4NnAtNCwKLSAgICAtMHgxLmE4YWExZDExYzQ0ZmZwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTkKLSAgICAweDEuYjNkMzY5NWFjYzQxMzZiMmQ0NDcxNGY5YjM4NDE5YjRwLTEsCi0gICAgMHgxLjBjYjM0NjlhMjllYTY2ZDQwMzFiZTc2OTcwMmFhZDVjcC0xLAotICAgIDB4MS4wNGFmZjZkMzMwOTQycDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAwCi0gICAgLTB4MS5iM2QzNjk1YWNjNDEzNmIyZDQ0NzE0ZjliMzg0MTliNHAtMSwKLSAgICAweDEuMGNiMzQ2OWEyOWVhNjZkNDAzMWJlNzY5NzAyYWFkNWNwLTEsCi0gICAgLTB4MS4wNGFmZjZkMzMwOTQycDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAxCi0gICAgMHgxLmIzZDQxOTcyZGM4MDYzOTk0ZjYzNDEzZDVlNGQ4ZTRicC0xLAotICAgIDB4MS4wY2IyMjhmYTdmODExN2M4MmU2MWNmNTM5MzM0MWM2NHAtMSwKLSAgICAweDEuMDRiMDllOThkY2RiNHAwLAotICB9LAotICB7IC8vIEVudHJ5IDMwMgotICAgIC0weDEuYjNkNDE5NzJkYzgwNjM5OTRmNjM0MTNkNWU0ZDhlNGJwLTEsCi0gICAgMHgxLjBjYjIyOGZhN2Y4MTE3YzgyZTYxY2Y1MzkzMzQxYzY0cC0xLAotICAgIC0weDEuMDRiMDllOThkY2RiNHAwLAotICB9LAotICB7IC8vIEVudHJ5IDMwMwotICAgIDB4MS5iM2Q0Yzk4YTMxOGZiNjZmODIxZDcyODZhZTdkY2U3YnAtMSwKLSAgICAweDEuMGNiMTBiNWE2MWIwNWE3M2U3OGEzZTQ0NDdiYWY1MTRwLTEsCi0gICAgMHgxLjA0YjE0NjVlODkyMjZwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDQKLSAgICAtMHgxLmIzZDRjOThhMzE4ZmI2NmY4MjFkNzI4NmFlN2RjZTdicC0xLAotICAgIDB4MS4wY2IxMGI1YTYxYjA1YTczZTc4YTNlNDQ0N2JhZjUxNHAtMSwKLSAgICAtMHgxLjA0YjE0NjVlODkyMjZwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDUKLSAgICAweDEuYjNkNTc5YTBjYjZlZTM5M2ZmNzViNThmZmUxNmQxM2ZwLTEsCi0gICAgMHgxLjBjYWZlZGI5ZDA3OGE5ODQwODY5MjhhYTQwZDJlNGE1cC0xLAotICAgIDB4MS4wNGIxZWUyNDM1Njk4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA2Ci0gICAgLTB4MS5iM2Q1NzlhMGNiNmVlMzkzZmY3NWI1OGZmZTE2ZDEzZnAtMSwKLSAgICAweDEuMGNhZmVkYjlkMDc4YTk4NDA4NjkyOGFhNDBkMmU0YTVwLTEsCi0gICAgLTB4MS4wNGIxZWUyNDM1Njk4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA3Ci0gICAgMHgxLmIzZDYyOWI2YWExZDlmNjVhYWQxYTJmYzkzMmM4YmNicC0xLAotICAgIDB4MS4wY2FlZDAxOGNiZGE3ZmE1OWM2MzFjZDU1YjMxYWE4ZHAtMSwKLSAgICAweDEuMDRiMjk1ZTllMWIwYXAwLAotICB9LAotICB7IC8vIEVudHJ5IDMwOAotICAgIC0weDEuYjNkNjI5YjZhYTFkOWY2NWFhZDFhMmZjOTMyYzhiY2JwLTEsCi0gICAgMHgxLjBjYWVkMDE4Y2JkYTdmYTU5YzYzMWNkNTViMzFhYThkcC0xLAotICAgIC0weDEuMDRiMjk1ZTllMWIwYXAwLAotICB9LAotICB7IC8vIEVudHJ5IDMwOQotICAgIDB4MS5iM2Q2ZDljYmNkOWI5ZTQzYjdmYzdmZDQyOGE0NGRkOHAtMSwKLSAgICAweDEuMGNhZGIyNzc1M2Q2NTc4NWUwNmQwZTQ2NDAwNjE0OWVwLTEsCi0gICAgMHgxLjA0YjMzZGFmOGRmN2NwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTAKLSAgICAtMHgxLmIzZDZkOWNiY2Q5YjllNDNiN2ZjN2ZkNDI4YTQ0ZGQ4cC0xLAotICAgIDB4MS4wY2FkYjI3NzUzZDY1Nzg1ZTA2ZDBlNDY0MDA2MTQ5ZXAtMSwKLSAgICAtMHgxLjA0YjMzZGFmOGRmN2NwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTEKLSAgICAweDEuYjNkNzg5ZTAzNWU4OTQ4ZGFiMjc1ZGZlNTQ2YzViMDhwLTEsCi0gICAgMHgxLjBjYWM5NGQ1Njg2Y2FiZDI0MzBjMjBmZGYyODU1YjQ3cC0xLAotICAgIDB4MS4wNGIzZTU3NTNhM2VlcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzEyCi0gICAgLTB4MS5iM2Q3ODllMDM1ZTg5NDhkYWIyNzVkZmU1NDZjNWIwOHAtMSwKLSAgICAweDEuMGNhYzk0ZDU2ODZjYWJkMjQzMGMyMGZkZjI4NTViNDdwLTEsCi0gICAgLTB4MS4wNGIzZTU3NTNhM2VlcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzEzCi0gICAgMHgxLmIzZDgzOWYzZTMwNDM2YTM1OGU5M2NiZGNiMmJiMzY3cC0xLAotICAgIDB4MS4wY2FiNzczMzA5OWRmNzM4NjQ1NTc0Y2Q0ODJlZjRiMnAtMSwKLSAgICAweDEuMDRiNDhkM2FlNjg2MHAwLAotICB9LAotICB7IC8vIEVudHJ5IDMxNAotICAgIC0weDEuYjNkODM5ZjNlMzA0MzZhMzU4ZTkzY2JkY2IyYmIzNjdwLTEsCi0gICAgMHgxLjBjYWI3NzMzMDk5ZGY3Mzg2NDU1NzRjZDQ4MmVmNGIycC0xLAotICAgIC0weDEuMDRiNDhkM2FlNjg2MHAwLAotICB9LAotICB7IC8vIEVudHJ5IDMxNQotICAgIDB4MS5iM2Q4ZWEwNmQ0ZWUwNjg0ZjU3NDFlYzc3N2VkODhlMHAtMSwKLSAgICAweDEuMGNhYTU5OTAzNzZiMDYxZWMxY2YzODkwZjFiOGUxZTNwLTEsCi0gICAgMHgxLjA0YjUzNTAwOTJjY2ZwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTYKLSAgICAtMHgxLmIzZDhlYTA2ZDRlZTA2ODRmNTc0MWVjNzc3ZWQ4OGUwcC0xLAotICAgIDB4MS4wY2FhNTk5MDM3NmIwNjFlYzFjZjM4OTBmMWI4ZTFlM3AtMSwKLSAgICAtMHgxLjA0YjUzNTAwOTJjY2ZwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTcKLSAgICAtMC4wLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjBwLTEwNzQsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE4Ci0gICAgMC4wLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuMHAtMTA3NCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTkKLSAgICAtMC4wLAotICAgIDB4MS5wMCwKLSAgICAtMC4wLAotICB9LAotICB7IC8vIEVudHJ5IDMyMAotICAgIDAuMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLjBwLTEwNzQsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIxCi0gICAgLTAuMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS4wcC0xMDc0LAotICB9LAotICB7IC8vIEVudHJ5IDMyMgotICAgIDB4MS4xNzczZDU2MWZkNTA2NWQwZTk2MDdhNzI4YTM5ZWVkMnAtMSwKLSAgICAweDEuYWQwMmM3NzFjMzVlZDVmMDEwODlhMDBjNmEyN2UwY2ZwLTEsCi0gICAgMHgxLjI3OWE3NDU5MDMzMWJwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIzCi0gICAgLTB4MS4xNzczZDU2MWZkNTA2NWQwZTk2MDdhNzI4YTM5ZWVkMnAtMSwKLSAgICAweDEuYWQwMmM3NzFjMzVlZDVmMDEwODlhMDBjNmEyN2UwY2ZwLTEsCi0gICAgLTB4MS4yNzlhNzQ1OTAzMzFicC0xLAotICB9LAotICB7IC8vIEVudHJ5IDMyNAotICAgIDB4MS4xNzczZDU2MWZkNTA3MzM4ZmY5YzA4OGQ4MGM2ODBkYnAtMSwKLSAgICAweDEuYWQwMmM3NzFjMzVlY2QzNDcxZGU5MDIxZTZjM2I5MmJwLTEsCi0gICAgMHgxLjI3OWE3NDU5MDMzMWNwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI1Ci0gICAgLTB4MS4xNzczZDU2MWZkNTA3MzM4ZmY5YzA4OGQ4MGM2ODBkYnAtMSwKLSAgICAweDEuYWQwMmM3NzFjMzVlY2QzNDcxZGU5MDIxZTZjM2I5MmJwLTEsCi0gICAgLTB4MS4yNzlhNzQ1OTAzMzFjcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDMyNgotICAgIDB4MS4xNzczZDU2MWZkNTA4MGExMTVkNzk2YTg3NzBkMzVlZnAtMSwKLSAgICAweDEuYWQwMmM3NzFjMzVlYzQ3OGQzMzM4MDM3NjJmNDUwZDVwLTEsCi0gICAgMHgxLjI3OWE3NDU5MDMzMWRwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI3Ci0gICAgLTB4MS4xNzczZDU2MWZkNTA4MGExMTVkNzk2YTg3NzBkMzVlZnAtMSwKLSAgICAweDEuYWQwMmM3NzFjMzVlYzQ3OGQzMzM4MDM3NjJmNDUwZDVwLTEsCi0gICAgLTB4MS4yNzlhNzQ1OTAzMzFkcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDMyOAotICAgIDB4MS5mOTViOGU3MTA3NDE4YzExYzk0ZDRhNTRhOWRhOWI3YXAtMSwKLSAgICAtMHgxLjQ4ZDFkZGQyYjJiM2Y4YzIxYjk0MjFlNjViMzgwNzM1cC0zLAotICAgIDB4MS5iYjY3YWU4NTg0Y2E5cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI5Ci0gICAgLTB4MS5mOTViOGU3MTA3NDE4YzExYzk0ZDRhNTRhOWRhOWI3YXAtMSwKLSAgICAtMHgxLjQ4ZDFkZGQyYjJiM2Y4YzIxYjk0MjFlNjViMzgwNzM1cC0zLAotICAgIC0weDEuYmI2N2FlODU4NGNhOXAwLAotICB9LAotICB7IC8vIEVudHJ5IDMzMAotICAgIDB4MS5mOTViOGU3MTA3NDE4NmVlODFkNWZmODlkOGZhZTU0NXAtMSwKLSAgICAtMHgxLjQ4ZDFkZGQyYjJiNDc3MThmZjMwNjNiNmJkOTgxMDk5cC0zLAotICAgIDB4MS5iYjY3YWU4NTg0Y2FhcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMxCi0gICAgLTB4MS5mOTViOGU3MTA3NDE4NmVlODFkNWZmODlkOGZhZTU0NXAtMSwKLSAgICAtMHgxLjQ4ZDFkZGQyYjJiNDc3MThmZjMwNjNiNmJkOTgxMDk5cC0zLAotICAgIC0weDEuYmI2N2FlODU4NGNhYXAwLAotICB9LAotICB7IC8vIEVudHJ5IDMzMgotICAgIDB4MS5mOTViOGU3MTA3NDE4MWNiM2E1ZWI0YmYwNjIxZDM4MXAtMSwKLSAgICAtMHgxLjQ4ZDFkZGQyYjJiNGY1NmZlMmNjYTU4NzFlYWY0ODIwcC0zLAotICAgIDB4MS5iYjY3YWU4NTg0Y2FicDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMzCi0gICAgLTB4MS5mOTViOGU3MTA3NDE4MWNiM2E1ZWI0YmYwNjIxZDM4MXAtMSwKLSAgICAtMHgxLjQ4ZDFkZGQyYjJiNGY1NmZlMmNjYTU4NzFlYWY0ODIwcC0zLAotICAgIC0weDEuYmI2N2FlODU4NGNhYnAwLAotICB9LAotICB7IC8vIEVudHJ5IDMzNAotICAgIDB4MS5iMWQ4MzA1MzIxNjE1YWM5MzhjZmYwMmJlOWYyNTA4NXAtMiwKLSAgICAweDEuY2ZjNmNmYTUyYWQ5Zjk5MTFkYjRjYTBkNDVmZGIwYjNwLTEsCi0gICAgMHgxLmJmZmZmZmZmZmZmZmZwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM1Ci0gICAgLTB4MS5iMWQ4MzA1MzIxNjE1YWM5MzhjZmYwMmJlOWYyNTA4NXAtMiwKLSAgICAweDEuY2ZjNmNmYTUyYWQ5Zjk5MTFkYjRjYTBkNDVmZGIwYjNwLTEsCi0gICAgLTB4MS5iZmZmZmZmZmZmZmZmcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDMzNgotICAgIDB4MS5iMWQ4MzA1MzIxNjE2OTQ3NmY0ZDE5ODJiOWIxNGFiMXAtMiwKLSAgICAweDEuY2ZjNmNmYTUyYWQ5ZjYyZDZkNTQyM2NhODMzOWEwMGFwLTEsCi0gICAgMHgxLmNwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM3Ci0gICAgLTB4MS5iMWQ4MzA1MzIxNjE2OTQ3NmY0ZDE5ODJiOWIxNGFiMXAtMiwKLSAgICAweDEuY2ZjNmNmYTUyYWQ5ZjYyZDZkNTQyM2NhODMzOWEwMGFwLTEsCi0gICAgLTB4MS5jcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDMzOAotICAgIDB4MS5iMWQ4MzA1MzIxNjE3N2M1YTVjYTQyZDk4OTU1Mjc1YXAtMiwKLSAgICAweDEuY2ZjNmNmYTUyYWQ5ZjJjOWJjZjM3ZDg3YzA1ODkyZjVwLTEsCi0gICAgMHgxLmMwMDAwMDAwMDAwMDFwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM5Ci0gICAgLTB4MS5iMWQ4MzA1MzIxNjE3N2M1YTVjYTQyZDk4OTU1Mjc1YXAtMiwKLSAgICAweDEuY2ZjNmNmYTUyYWQ5ZjJjOWJjZjM3ZDg3YzA1ODkyZjVwLTEsCi0gICAgLTB4MS5jMDAwMDAwMDAwMDAxcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDM0MAotICAgIDB4MS40NGViMzgxY2YzODY5ZWE3MWNjYjM2ODYzZTRlYTY1YnAtMSwKLSAgICAweDEuOGJiMTA1YTVkYzkwMTA0MDUxZDA4Y2I5NjU2MzE4MDdwLTEsCi0gICAgMHgxLjVmZmZmZmZmZmZmZmZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQxCi0gICAgLTB4MS40NGViMzgxY2YzODY5ZWE3MWNjYjM2ODYzZTRlYTY1YnAtMSwKLSAgICAweDEuOGJiMTA1YTVkYzkwMTA0MDUxZDA4Y2I5NjU2MzE4MDdwLTEsCi0gICAgLTB4MS41ZmZmZmZmZmZmZmZmcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM0MgotICAgIDB4MS40NGViMzgxY2YzODZhYjA0YTRmODY1NmFiZWE4MGI4M3AtMSwKLSAgICAweDEuOGJiMTA1YTVkYzkwMDYxOGY4MGZhNTFkMzAzYzY5cC0xLAotICAgIDB4MS42cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM0MwotICAgIC0weDEuNDRlYjM4MWNmMzg2YWIwNGE0Zjg2NTZhYmVhODBiODNwLTEsCi0gICAgMHgxLjhiYjEwNWE1ZGM5MDA2MThmODBmYTUxZDMwM2M2OXAtMSwKLSAgICAtMHgxLjZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ0Ci0gICAgMHgxLjQ0ZWIzODFjZjM4NmI3NjIyZDI1OTQ0ZjNlYjAzNWRjcC0xLAotICAgIDB4MS44YmIxMDVhNWRjOGZmYmYxOWU0ZWJkODBmYWIyY2RiOHAtMSwKLSAgICAweDEuNjAwMDAwMDAwMDAwMXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDUKLSAgICAtMHgxLjQ0ZWIzODFjZjM4NmI3NjIyZDI1OTQ0ZjNlYjAzNWRjcC0xLAotICAgIDB4MS44YmIxMDVhNWRjOGZmYmYxOWU0ZWJkODBmYWIyY2RiOHAtMSwKLSAgICAtMHgxLjYwMDAwMDAwMDAwMDFwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ2Ci0gICAgMHgxLmRhZDkwMmZhOGFjODY0ZmQ4YWZhMGJkYzYwOWRlZDE5cC0xLAotICAgIDB4MS43ZWY0ODQyZjBiY2QxMTY4NmFhZjZmMjFjOWFhODM1NHAtMiwKLSAgICAweDEuMmZmZmZmZmZmZmZmZnAwLAotICB9LAotICB7IC8vIEVudHJ5IDM0NwotICAgIC0weDEuZGFkOTAyZmE4YWM4NjRmZDhhZmEwYmRjNjA5ZGVkMTlwLTEsCi0gICAgMHgxLjdlZjQ4NDJmMGJjZDExNjg2YWFmNmYyMWM5YWE4MzU0cC0yLAotICAgIC0weDEuMmZmZmZmZmZmZmZmZnAwLAotICB9LAotICB7IC8vIEVudHJ5IDM0OAotICAgIDB4MS5kYWQ5MDJmYThhYzg3MGY1MmYxYjg0M2FjODNiYzNlZHAtMSwKLSAgICAweDEuN2VmNDg0MmYwYmNjZDYwZDRhNTAxZGM4YmM0YjU3YjNwLTIsCi0gICAgMHgxLjNwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDkKLSAgICAtMHgxLmRhZDkwMmZhOGFjODcwZjUyZjFiODQzYWM4M2JjM2VkcC0xLAotICAgIDB4MS43ZWY0ODQyZjBiY2NkNjBkNGE1MDFkYzhiYzRiNTdiM3AtMiwKLSAgICAtMHgxLjNwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTAKLSAgICAweDEuZGFkOTAyZmE4YWM4N2NlY2QzM2NmYzk5MmRmZWMxYmVwLTEsCi0gICAgMHgxLjdlZjQ4NDJmMGJjYzlhYjIyOWYwY2M2ZmFkNmQzNzhkcC0yLAotICAgIDB4MS4zMDAwMDAwMDAwMDAxcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUxCi0gICAgLTB4MS5kYWQ5MDJmYThhYzg3Y2VjZDMzY2ZjOTkyZGZlYzFiZXAtMSwKLSAgICAweDEuN2VmNDg0MmYwYmNjOWFiMjI5ZjBjYzZmYWQ2ZDM3OGRwLTIsCi0gICAgLTB4MS4zMDAwMDAwMDAwMDAxcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUyCi0gICAgMHgxLjRiNzA3YTdhY2RlY2Y5MGExODhkMDIzMGZhZDNhZDU4cC0xLAotICAgIC0weDEuODYzZWZhMzYxZGMyMjk0ZTkyOWI5NTE1ZmIzNGY5YmFwLTEsCi0gICAgMHgxLjM3ZmZmZmZmZmZmZmZwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTMKLSAgICAtMHgxLjRiNzA3YTdhY2RlY2Y5MGExODhkMDIzMGZhZDNhZDU4cC0xLAotICAgIC0weDEuODYzZWZhMzYxZGMyMjk0ZTkyOWI5NTE1ZmIzNGY5YmFwLTEsCi0gICAgLTB4MS4zN2ZmZmZmZmZmZmZmcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzU0Ci0gICAgMHgxLjRiNzA3YTdhY2RlY2M4NDIzOTQ2M2U3OGIzMTJmYTEwcC0xLAotICAgIC0weDEuODYzZWZhMzYxZGMyNTJiY2ExZWFlZWQzOTc0OWJlZDdwLTEsCi0gICAgMHgxLjM4MHAxLAotICB9LAotICB7IC8vIEVudHJ5IDM1NQotICAgIC0weDEuNGI3MDdhN2FjZGVjYzg0MjM5NDYzZTc4YjMxMmZhMTBwLTEsCi0gICAgLTB4MS44NjNlZmEzNjFkYzI1MmJjYTFlYWVlZDM5NzQ5YmVkN3AtMSwKLSAgICAtMHgxLjM4MHAxLAotICB9LAotICB7IC8vIEVudHJ5IDM1NgotICAgIDB4MS40YjcwN2E3YWNkZWM5NzdhNTlmZjdhYzA2NjI0ODRkZHAtMSwKLSAgICAtMHgxLjg2M2VmYTM2MWRjMjdjMmFiMTNhNDg5MTJkNDU4ODBicC0xLAotICAgIDB4MS4zODAwMDAwMDAwMDAxcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzU3Ci0gICAgLTB4MS40YjcwN2E3YWNkZWM5NzdhNTlmZjdhYzA2NjI0ODRkZHAtMSwKLSAgICAtMHgxLjg2M2VmYTM2MWRjMjdjMmFiMTNhNDg5MTJkNDU4ODBicC0xLAotICAgIC0weDEuMzgwMDAwMDAwMDAwMXAxLAotICB9LAotICB7IC8vIEVudHJ5IDM1OAotICAgIDB4MS4wNjZlN2ViNzZmNWM2Njc4ZmQ4MzI1YTgxZjE5MjVjNnAtNCwKLSAgICAweDEuZmVmMmIyZDIxY2Y2YzEwNmU4NmZmOTM5NWY4MjA0YTBwLTEsCi0gICAgMHgxLjA2OWM4YjQ2YjM3OTJwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzU5Ci0gICAgLTB4MS4wNjZlN2ViNzZmNWM2Njc4ZmQ4MzI1YTgxZjE5MjVjNnAtNCwKLSAgICAweDEuZmVmMmIyZDIxY2Y2YzEwNmU4NmZmOTM5NWY4MjA0YTBwLTEsCi0gICAgLTB4MS4wNjljOGI0NmIzNzkycC00LAotICB9LAotICB7IC8vIEVudHJ5IDM2MAotICAgIDB4MS4wNWU0NzYxYWI4ZDhmMGE3ZGJhODM0MDAwZjIzNjY1MHAtMywKLSAgICAweDEuZmJjYmU2OTNiZDhlYzg1NzIzYjZjYjU1ZTRmNWU3OGZwLTEsCi0gICAgMHgxLjA2OWM4YjQ2YjM3OTJwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzYxCi0gICAgLTB4MS4wNWU0NzYxYWI4ZDhmMGE3ZGJhODM0MDAwZjIzNjY1MHAtMywKLSAgICAweDEuZmJjYmU2OTNiZDhlYzg1NzIzYjZjYjU1ZTRmNWU3OGZwLTEsCi0gICAgLTB4MS4wNjljOGI0NmIzNzkycC0zLAotICB9LAotICB7IC8vIEVudHJ5IDM2MgotICAgIDB4MS44NzdlMmNkNGY2ZmQ5YmE0OThlMzI3MDUzMDMyNzM0ZnAtMywKLSAgICAweDEuZjY4ZWViZmNiYjVlODQxOTAwZTI1NDJmN2MyNGJhYjBwLTEsCi0gICAgMHgxLjg5ZWFkMGVhMGQzNWJwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzYzCi0gICAgLTB4MS44NzdlMmNkNGY2ZmQ5YmE0OThlMzI3MDUzMDMyNzM0ZnAtMywKLSAgICAweDEuZjY4ZWViZmNiYjVlODQxOTAwZTI1NDJmN2MyNGJhYjBwLTEsCi0gICAgLTB4MS44OWVhZDBlYTBkMzVicC0zLAotICB9LAotICB7IC8vIEVudHJ5IDM2NAotICAgIDB4MS4wM2JlMDZmOTdjYmVlNDc2OTg1MzlmOTc3Y2FkYmU3ZXAtMiwKLSAgICAweDEuZWY0MTQ1YjRhZWNmZmJkYWFmZmI3OGZmYjQ5YWM5YmRwLTEsCi0gICAgMHgxLjA2OWM4YjQ2YjM3OTJwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY1Ci0gICAgLTB4MS4wM2JlMDZmOTdjYmVlNDc2OTg1MzlmOTc3Y2FkYmU3ZXAtMiwKLSAgICAweDEuZWY0MTQ1YjRhZWNmZmJkYWFmZmI3OGZmYjQ5YWM5YmRwLTEsCi0gICAgLTB4MS4wNjljOGI0NmIzNzkycC0yLAotICB9LAotICB7IC8vIEVudHJ5IDM2NgotICAgIDB4MS40MmFiYmE4YzcyZmJiOGNhOTZmNzlhYTRiYjAzNTg0ZXAtMiwKLSAgICAweDEuZTVlYWEyODZmYmJjNjcwZGJmNjM5MmQ3Yzk4YWIwYTBwLTEsCi0gICAgMHgxLjQ4NDNhZTE4NjA1NzZwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY3Ci0gICAgLTB4MS40MmFiYmE4YzcyZmJiOGNhOTZmNzlhYTRiYjAzNTg0ZXAtMiwKLSAgICAweDEuZTVlYWEyODZmYmJjNjcwZGJmNjM5MmQ3Yzk4YWIwYTBwLTEsCi0gICAgLTB4MS40ODQzYWUxODYwNTc2cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDM2OAotICAgIDB4MS44MDQ1ZmU2NGU2MmRjM2Q2ODZkOTc2ZDdkNWE3YzY4OXAtMiwKLSAgICAweDEuZGE5NGQ1NGRkNGMwODc2ZTE4ZWU5N2M3MGQxYTRhOTRwLTEsCi0gICAgMHgxLjg5ZWFkMGVhMGQzNWFwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY5Ci0gICAgLTB4MS44MDQ1ZmU2NGU2MmRjM2Q2ODZkOTc2ZDdkNWE3YzY4OXAtMiwKLSAgICAweDEuZGE5NGQ1NGRkNGMwODc2ZTE4ZWU5N2M3MGQxYTRhOTRwLTEsCi0gICAgLTB4MS44OWVhZDBlYTBkMzVhcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDM3MAotICAgIDB4MS5iYzRjMDRkNzFhYmJlZWE1YWIwNjRlY2ZiZjU0YzYxM3AtMiwKLSAgICAweDEuY2Q0YmNhOWNiNWM3MTUzMDIwMDFlNDQ2Y2M5M2E3YmNwLTEsCi0gICAgMHgxLmNiOTFmM2JiYmExM2VwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzcxCi0gICAgLTB4MS5iYzRjMDRkNzFhYmJlZWE1YWIwNjRlY2ZiZjU0YzYxM3AtMiwKLSAgICAweDEuY2Q0YmNhOWNiNWM3MTUzMDIwMDFlNDQ2Y2M5M2E3YmNwLTEsCi0gICAgLTB4MS5jYjkxZjNiYmJhMTNlcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDM3MgotICAgIDB4MS5mNjdlYTk3NWI4NmEwMTUxMGU2YmRlMzc3ODEzODkzNHAtMiwKLSAgICAweDEuYmUxZDdjMzUzNGM0MDMzMWZkZGYyNDNkOGEwYTU2YjBwLTEsCi0gICAgMHgxLjA2OWM4YjQ2YjM3OTFwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzczCi0gICAgLTB4MS5mNjdlYTk3NWI4NmEwMTUxMGU2YmRlMzc3ODEzODkzNHAtMiwKLSAgICAweDEuYmUxZDdjMzUzNGM0MDMzMWZkZGYyNDNkOGEwYTU2YjBwLTEsCi0gICAgLTB4MS4wNjljOGI0NmIzNzkxcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM3NAotICAgIDB4MS4xNzUwNTliZjBkNDI1MjRlY2IwYmY0MjQzYjU1OTczZHAtMSwKLSAgICAweDEuYWQxOWUyNTM1YWE5Njc4YmQ1ZmRhZmM2ODgxNzcwMGJwLTEsCi0gICAgMHgxLjI3NzAxY2FmODllODNwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc1Ci0gICAgLTB4MS4xNzUwNTliZjBkNDI1MjRlY2IwYmY0MjQzYjU1OTczZHAtMSwKLSAgICAweDEuYWQxOWUyNTM1YWE5Njc4YmQ1ZmRhZmM2ODgxNzcwMGJwLTEsCi0gICAgLTB4MS4yNzcwMWNhZjg5ZTgzcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM3NgotICAgIDB4MS4zMjNiOGIxZmI0YmEyMWRkMTJjY2U4MjBlMTU2YTRmY3AtMSwKLSAgICAweDEuOWE1MmUyZTBmYmNiM2EzZjRiZGU2ZjZlYzI3NzY3YTlwLTEsCi0gICAgMHgxLjQ4NDNhZTE4NjA1NzVwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc3Ci0gICAgLTB4MS4zMjNiOGIxZmI0YmEyMWRkMTJjY2U4MjBlMTU2YTRmY3AtMSwKLSAgICAweDEuOWE1MmUyZTBmYmNiM2EzZjRiZGU2ZjZlYzI3NzY3YTlwLTEsCi0gICAgLTB4MS40ODQzYWUxODYwNTc1cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM3OAotICAgIDB4MS40YmU0OTc5YzVlZmIzMDZjMWE3NzAyNDAzMjg0OWI1MnAtMSwKLSAgICAweDEuODVkYzNlYTFiYmNlOWE4MDg1ZjY2NTkzYTg3YjdlMmVwLTEsCi0gICAgMHgxLjY5MTczZjgxMzZjNjdwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc5Ci0gICAgLTB4MS40YmU0OTc5YzVlZmIzMDZjMWE3NzAyNDAzMjg0OWI1MnAtMSwKLSAgICAweDEuODVkYzNlYTFiYmNlOWE4MDg1ZjY2NTkzYTg3YjdlMmVwLTEsCi0gICAgLTB4MS42OTE3M2Y4MTM2YzY3cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM4MAotICAgIDB4MS42NDMwODBkNjdhY2MxMzMyYzY0YTg1NjEyY2FjYWZiOXAtMSwKLSAgICAweDEuNmZjYjdjNmI4YjkxOWFmM2RkYTUzMDk0YzlhMjdhYWJwLTEsCi0gICAgMHgxLjg5ZWFkMGVhMGQzNTlwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgxCi0gICAgLTB4MS42NDMwODBkNjdhY2MxMzMyYzY0YTg1NjEyY2FjYWZiOXAtMSwKLSAgICAweDEuNmZjYjdjNmI4YjkxOWFmM2RkYTUzMDk0YzlhMjdhYWJwLTEsCi0gICAgLTB4MS44OWVhZDBlYTBkMzU5cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM4MgotICAgIDB4MS43YjA1YjdiNmM2MTJlNWIwOGQ1ZWZlNDlhNDZlMjFhMXAtMSwKLSAgICAweDEuNTgzN2QyODE3Y2YzMDNlZjZkYWU2OWZhZWIwZjAxNWVwLTEsCi0gICAgMHgxLmFhYmU2MjUyZTNhNGJwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgzCi0gICAgLTB4MS43YjA1YjdiNmM2MTJlNWIwOGQ1ZWZlNDlhNDZlMjFhMXAtMSwKLSAgICAweDEuNTgzN2QyODE3Y2YzMDNlZjZkYWU2OWZhZWIwZjAxNWVwLTEsCi0gICAgLTB4MS5hYWJlNjI1MmUzYTRicC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM4NAotICAgIDB4MS45MDRjMzc1MDVkZTQ4ZmE4ZTc2Mjg3OTYwZmQ0NDU5NHAtMSwKLSAgICAweDEuM2YzYTBlMjhiZWRkNDA0NDU4NThmODIzZTE1MDI2NGJwLTEsCi0gICAgMHgxLmNiOTFmM2JiYmExM2RwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg1Ci0gICAgLTB4MS45MDRjMzc1MDVkZTQ4ZmE4ZTc2Mjg3OTYwZmQ0NDU5NHAtMSwKLSAgICAweDEuM2YzYTBlMjhiZWRkNDA0NDU4NThmODIzZTE1MDI2NGJwLTEsCi0gICAgLTB4MS5jYjkxZjNiYmJhMTNkcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM4NgotICAgIDB4MS5hM2VkOWUyNTI5MzhhMTRjNzljNTc1NjM5YzE1YTkxZHAtMSwKLSAgICAweDEuMjRlYzc5OTE3MTY0MmRiZDI0ZDI1OTAwNTgyMmJkMjVwLTEsCi0gICAgMHgxLmVjNjU4NTI0OTA4MmZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg3Ci0gICAgLTB4MS5hM2VkOWUyNTI5MzhhMTRjNzljNTc1NjM5YzE1YTkxZHAtMSwKLSAgICAweDEuMjRlYzc5OTE3MTY0MmRiZDI0ZDI1OTAwNTgyMmJkMjVwLTEsCi0gICAgLTB4MS5lYzY1ODUyNDkwODJmcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM4OAotICAgIDB4MS5iNWQ1NDViMTA5YmY5MzU1OTQwMzY3OThjZjQwYzliMHAtMSwKLSAgICAweDEuMDk2YWMwMmVjNDJjODViN2IxMGFmZWQ5MjAyNzg1YjlwLTEsCi0gICAgMHgxLjA2OWM4YjQ2YjM3OTFwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODkKLSAgICAtMHgxLmI1ZDU0NWIxMDliZjkzNTU5NDAzNjc5OGNmNDBjOWIwcC0xLAotICAgIDB4MS4wOTZhYzAyZWM0MmM4NWI3YjEwYWZlZDkyMDI3ODViOXAtMSwKLSAgICAtMHgxLjA2OWM4YjQ2YjM3OTFwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTAKLSAgICAweDEuYzVmMDU4MjMwZTdmZDE0ZDNlNWUzMTUzNDlmNjk5ZWZwLTEsCi0gICAgMHgxLmQ5YTNhMzM2ZWRiNzYxM2RmMDYyZTg2YTMyZDA5ZmUxcC0yLAotICAgIDB4MS4xNzA2NTNmYjFlYjBhcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkxCi0gICAgLTB4MS5jNWYwNTgyMzBlN2ZkMTRkM2U1ZTMxNTM0OWY2OTllZnAtMSwKLSAgICAweDEuZDlhM2EzMzZlZGI3NjEzZGYwNjJlODZhMzJkMDlmZTFwLTIsCi0gICAgLTB4MS4xNzA2NTNmYjFlYjBhcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkyCi0gICAgMHgxLmQ0MmRlNDJkY2UxMzQ2YTAzZDFmNmFiZjBlYmE5MDIycC0xLAotICAgIDB4MS45ZTdmODY1MmI0NzU4MmFmZDI5NzQ0MjkzMTcwYzA3Y3AtMiwKLSAgICAweDEuMjc3MDFjYWY4OWU4M3AwLAotICB9LAotICB7IC8vIEVudHJ5IDM5MwotICAgIC0weDEuZDQyZGU0MmRjZTEzNDZhMDNkMWY2YWJmMGViYTkwMjJwLTEsCi0gICAgMHgxLjllN2Y4NjUyYjQ3NTgyYWZkMjk3NDQyOTMxNzBjMDdjcC0yLAotICAgIC0weDEuMjc3MDFjYWY4OWU4M3AwLAotICB9LAotICB7IC8vIEVudHJ5IDM5NAotICAgIDB4MS5lMDdlZWVkYTEwOWNiNTA0YWZjY2E4NjBkNGI1ZGQzMnAtMSwKLSAgICAweDEuNjFhNzYwNzdhZWUwN2JiMzQ5Y2E3NmNmNzAwOTEzZDFwLTIsCi0gICAgMHgxLjM3ZDllNTYzZjUxZmNwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTUKLSAgICAtMHgxLmUwN2VlZWRhMTA5Y2I1MDRhZmNjYTg2MGQ0YjVkZDMycC0xLAotICAgIDB4MS42MWE3NjA3N2FlZTA3YmIzNDljYTc2Y2Y3MDA5MTNkMXAtMiwKLSAgICAtMHgxLjM3ZDllNTYzZjUxZmNwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTYKLSAgICAweDEuZWFkNjgzNDkwOWI5MzM3MWZhZjNiZWFkZGJkNjBlZGRwLTEsCi0gICAgMHgxLjIzNWIzMzFkOGY3NDhlMjBmYjZkZGI2YTcwOGRiYTEwcC0yLAotICAgIDB4MS40ODQzYWUxODYwNTc1cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk3Ci0gICAgLTB4MS5lYWQ2ODM0OTA5YjkzMzcxZmFmM2JlYWRkYmQ2MGVkZHAtMSwKLSAgICAweDEuMjM1YjMzMWQ4Zjc0OGUyMGZiNmRkYjZhNzA4ZGJhMTBwLTIsCi0gICAgLTB4MS40ODQzYWUxODYwNTc1cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk4Ci0gICAgMHgxLmYzMjljMDU1OGU5NjdlNGNhYjU4ZDBmYTU3MmQ2MmQycC0xLAotICAgIDB4MS5jN2I5MGUzMDI0NTkzZGE4NDQ5OTYzY2ZlMDhkZGU4NXAtMywKLSAgICAweDEuNThhZDc2Y2NjYjhlZXAwLAotICB9LAotICB7IC8vIEVudHJ5IDM5OQotICAgIC0weDEuZjMyOWMwNTU4ZTk2N2U0Y2FiNThkMGZhNTcyZDYyZDJwLTEsCi0gICAgMHgxLmM3YjkwZTMwMjQ1OTNkYTg0NDk5NjNjZmUwOGRkZTg1cC0zLAotICAgIC0weDEuNThhZDc2Y2NjYjhlZXAwLAotICB9LAotICB7IC8vIEVudHJ5IDQwMAotICAgIDB4MS5mOTZmZTQwNWYxYWM1ZGM5Y2YzNDM1MDgwNjdiZmNhZXAtMSwKLSAgICAweDEuNDZkYzRmNGNlODNkYTcyN2VhMDQ4Y2M3ZDJmMjc2ZDFwLTMsCi0gICAgMHgxLjY5MTczZjgxMzZjNjdwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDEKLSAgICAtMHgxLmY5NmZlNDA1ZjFhYzVkYzljZjM0MzUwODA2N2JmY2FlcC0xLAotICAgIDB4MS40NmRjNGY0Y2U4M2RhNzI3ZWEwNDhjYzdkMmYyNzZkMXAtMywKLSAgICAtMHgxLjY5MTczZjgxMzZjNjdwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDIKLSAgICAweDEuZmRhMjU0YzI3YTAxZjQ3ODZjMTQ5ZDZhNzc3OWNjM2FwLTEsCi0gICAgMHgxLjg5NGY3MGJlZmJiOTlhYjdkZjlkMTc5MGEyOGY0OGFkcC00LAotICAgIDB4MS43OTgxMDgzNWExZmUwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAzCi0gICAgLTB4MS5mZGEyNTRjMjdhMDFmNDc4NmMxNDlkNmE3Nzc5Y2MzYXAtMSwKLSAgICAweDEuODk0ZjcwYmVmYmI5OWFiN2RmOWQxNzkwYTI4ZjQ4YWRwLTQsCi0gICAgLTB4MS43OTgxMDgzNWExZmUwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA0Ci0gICAgMHgxLmZmYmNhODQ2YzRmYzk5N2YxYTM4MTQyMDIwODg4NGUwcC0xLAotICAgIDB4MS4wNjkxMDdhZTkzMzJmOTVmYTJjNWNlZWFkZmIyOWY3N3AtNSwKLSAgICAweDEuODllYWQwZWEwZDM1OXAwLAotICB9LAotICB7IC8vIEVudHJ5IDQwNQotICAgIC0weDEuZmZiY2E4NDZjNGZjOTk3ZjFhMzgxNDIwMjA4ODg0ZTBwLTEsCi0gICAgMHgxLjA2OTEwN2FlOTMzMmY5NWZhMmM1Y2VlYWRmYjI5Zjc3cC01LAotICAgIC0weDEuODllYWQwZWEwZDM1OXAwLAotICB9LAotICB7IC8vIEVudHJ5IDQwNgotICAgIDB4MS5mZmJjYTg0NmM0ZmM5ZjMwYmZiNDU4ZWYyMDkxYzhlZXAtMSwKLSAgICAtMHgxLjA2OTEwN2FlOTMyN2UwNzMxYTc0OGMyMWYwM2I1ZWZjcC01LAotICAgIDB4MS45YTU0OTk5ZTc4NmQycDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA3Ci0gICAgLTB4MS5mZmJjYTg0NmM0ZmM5ZjMwYmZiNDU4ZWYyMDkxYzhlZXAtMSwKLSAgICAtMHgxLjA2OTEwN2FlOTMyN2UwNzMxYTc0OGMyMWYwM2I1ZWZjcC01LAotICAgIC0weDEuOWE1NDk5OWU3ODZkMnAwLAotICB9LAotICB7IC8vIEVudHJ5IDQwOAotICAgIDB4MS5mZGEyNTRjMjdhMDIwNTg3NWYyNzE0MzVmODI3MTYwY3AtMSwKLSAgICAtMHgxLjg5NGY3MGJlZmJiNDE0MTdkZmY4NDNlODFmYWMzODhicC00LAotICAgIDB4MS5hYWJlNjI1MmUzYTRicDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA5Ci0gICAgLTB4MS5mZGEyNTRjMjdhMDIwNTg3NWYyNzE0MzVmODI3MTYwY3AtMSwKLSAgICAtMHgxLjg5NGY3MGJlZmJiNDE0MTdkZmY4NDNlODFmYWMzODhicC00LAotICAgIC0weDEuYWFiZTYyNTJlM2E0YnAwLAotICB9LAotICB7IC8vIEVudHJ5IDQxMAotICAgIDB4MS5mOTZmZTQwNWYxYWM3YTI0MWUwMmU1OGIwY2JmM2FlN3AtMSwKLSAgICAtMHgxLjQ2ZGM0ZjRjZTgzYWU5YWIxY2MxYjIzNjdjYjc1M2VicC0zLAotICAgIDB4MS5iYjI4MmIwNzRlZGM0cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDExCi0gICAgLTB4MS5mOTZmZTQwNWYxYWM3YTI0MWUwMmU1OGIwY2JmM2FlN3AtMSwKLSAgICAtMHgxLjQ2ZGM0ZjRjZTgzYWU5YWIxY2MxYjIzNjdjYjc1M2VicC0zLAotICAgIC0weDEuYmIyODJiMDc0ZWRjNHAwLAotICB9LAotICB7IC8vIEVudHJ5IDQxMgotICAgIDB4MS5mMzI5YzA1NThlOTZhNWQ0ODI3MmFkNGM0OWVjNTNiOHAtMSwKLSAgICAtMHgxLmM3YjkwZTMwMjQ1Njg4ZTA5OTg2MGU4ZDRmZmY2MDFjcC0zLAotICAgIDB4MS5jYjkxZjNiYmJhMTNkcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDEzCi0gICAgLTB4MS5mMzI5YzA1NThlOTZhNWQ0ODI3MmFkNGM0OWVjNTNiOHAtMSwKLSAgICAtMHgxLmM3YjkwZTMwMjQ1Njg4ZTA5OTg2MGU4ZDRmZmY2MDFjcC0zLAotICAgIC0weDEuY2I5MWYzYmJiYTEzZHAwLAotICB9LAotICB7IC8vIEVudHJ5IDQxNAotICAgIDB4MS5lYWQ2ODM0OTA5Yjk2NWZkYzRiMGNlZmZjMGYyODVjNnAtMSwKLSAgICAtMHgxLjIzNWIzMzFkOGY3MzM5ODQxYTUxNzMxMmQwZDM0N2ZicC0yLAotICAgIDB4MS5kYmZiYmM3MDI1NGI2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE1Ci0gICAgLTB4MS5lYWQ2ODM0OTA5Yjk2NWZkYzRiMGNlZmZjMGYyODVjNnAtMSwKLSAgICAtMHgxLjIzNWIzMzFkOGY3MzM5ODQxYTUxNzMxMmQwZDM0N2ZicC0yLAotICAgIC0weDEuZGJmYmJjNzAyNTRiNnAwLAotICB9LAotICB7IC8vIEVudHJ5IDQxNgotICAgIDB4MS5lMDdlZWVkYTEwOWNmMjVmNDAwY2Q1ZjQ2YWNlYzg4N3AtMSwKLSAgICAtMHgxLjYxYTc2MDc3YWVkZjJlNDNhY2E0MThmN2EyZTEzMjRkcC0yLAotICAgIDB4MS5lYzY1ODUyNDkwODJmcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE3Ci0gICAgLTB4MS5lMDdlZWVkYTEwOWNmMjVmNDAwY2Q1ZjQ2YWNlYzg4N3AtMSwKLSAgICAtMHgxLjYxYTc2MDc3YWVkZjJlNDNhY2E0MThmN2EyZTEzMjRkcC0yLAotICAgIC0weDEuZWM2NTg1MjQ5MDgyZnAwLAotICB9LAotICB7IC8vIEVudHJ5IDQxOAotICAgIDB4MS5kNDJkZTQyZGNlMTM4ZTg5MDkzOWU1NmM0MzlkZWQ5MHAtMSwKLSAgICAtMHgxLjllN2Y4NjUyYjQ3NDNkY2MzYzM1NjhiYWZmOGJmOWVicC0yLAotICAgIDB4MS5mY2NmNGRkOGZiYmE4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE5Ci0gICAgLTB4MS5kNDJkZTQyZGNlMTM4ZTg5MDkzOWU1NmM0MzlkZWQ5MHAtMSwKLSAgICAtMHgxLjllN2Y4NjUyYjQ3NDNkY2MzYzM1NjhiYWZmOGJmOWVicC0yLAotICAgIC0weDEuZmNjZjRkZDhmYmJhOHAwLAotICB9LAotICB7IC8vIEVudHJ5IDQyMAotICAgIDB4MS5jNWYwNTgyMzBlODAxNGFiODNlY2UwYzNhNjM4YzA3OXAtMSwKLSAgICAtMHgxLmQ5YTNhMzM2ZWRiNjVlZmEzMGUxYTY2NzlhYTA2NGMycC0yLAotICAgIDB4MS4wNjljOGI0NmIzNzkxcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDIxCi0gICAgLTB4MS5jNWYwNTgyMzBlODAxNGFiODNlY2UwYzNhNjM4YzA3OXAtMSwKLSAgICAtMHgxLmQ5YTNhMzM2ZWRiNjVlZmEzMGUxYTY2NzlhYTA2NGMycC0yLAotICAgIC0weDEuMDY5YzhiNDZiMzc5MXAxLAotICB9LAotICB7IC8vIEVudHJ5IDQyMgotICAgIDB4MS5iNWQ1NDViMTA5YmZjZTNmYzRkNzcwMDFhZmUyZjJiNnAtMSwKLSAgICAtMHgxLjA5NmFjMDJlYzQyYzI0ODgwYTU5NTE3ODhjYjM4M2M4cC0xLAotICAgIDB4MS4wZWQxNmZhMGU5MTRlcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDIzCi0gICAgLTB4MS5iNWQ1NDViMTA5YmZjZTNmYzRkNzcwMDFhZmUyZjJiNnAtMSwKLSAgICAtMHgxLjA5NmFjMDJlYzQyYzI0ODgwYTU5NTE3ODhjYjM4M2M4cC0xLAotICAgIC0weDEuMGVkMTZmYTBlOTE0ZXAxLAotICB9LAotICB7IC8vIEVudHJ5IDQyNAotICAgIDB4MS5hM2VkOWUyNTI5MzhkOTJhNTU1M2IzYzA5ZDJiZGRkM3AtMSwKLSAgICAtMHgxLjI0ZWM3OTkxNzE2M2RkYTY1YWZkODEwOWY1OWNiNDY1cC0xLAotICAgIDB4MS4xNzA2NTNmYjFlYjBicDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI1Ci0gICAgLTB4MS5hM2VkOWUyNTI5MzhkOTJhNTU1M2IzYzA5ZDJiZGRkM3AtMSwKLSAgICAtMHgxLjI0ZWM3OTkxNzE2M2RkYTY1YWZkODEwOWY1OWNiNDY1cC0xLAotICAgIC0weDEuMTcwNjUzZmIxZWIwYnAxLAotICB9LAotICB7IC8vIEVudHJ5IDQyNgotICAgIDB4MS45MDRjMzc1MDVkZTRiODk3NWRkMjczMGUxOTZkZGZjM3AtMSwKLSAgICAtMHgxLjNmM2EwZTI4YmVkZDBjZjBjNGJmYmQ4YzgyYTNiYWFmcC0xLAotICAgIDB4MS4xZjNiMzg1NTU0NGM4cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI3Ci0gICAgLTB4MS45MDRjMzc1MDVkZTRiODk3NWRkMjczMGUxOTZkZGZjM3AtMSwKLSAgICAtMHgxLjNmM2EwZTI4YmVkZDBjZjBjNGJmYmQ4YzgyYTNiYWFmcC0xLAotICAgIC0weDEuMWYzYjM4NTU1NDRjOHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQyOAotICAgIDB4MS43YjA1YjdiNmM2MTJmYzRmZGEzODEyYjFmMTM0ODM4OXAtMSwKLSAgICAtMHgxLjU4MzdkMjgxN2NmMmViMDY5MDM1NTUyZGMzYWU4MzRjcC0xLAotICAgIDB4MS4yNzcwMWNhZjg5ZTg1cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI5Ci0gICAgLTB4MS43YjA1YjdiNmM2MTJmYzRmZGEzODEyYjFmMTM0ODM4OXAtMSwKLSAgICAtMHgxLjU4MzdkMjgxN2NmMmViMDY5MDM1NTUyZGMzYWU4MzRjcC0xLAotICAgIC0weDEuMjc3MDFjYWY4OWU4NXAxLAotICB9LAotICB7IC8vIEVudHJ5IDQzMAotICAgIDB4MS42NDMwODBkNjdhY2MxNDYyMDY3MmRkYTYyNDFlYTMwNXAtMSwKLSAgICAtMHgxLjZmY2I3YzZiOGI5MTk5Y2UyZjE3ZGQzZWU4NmIzYjlhcC0xLAotICAgIDB4MS4yZmE1MDEwOWJmODQycDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMxCi0gICAgLTB4MS42NDMwODBkNjdhY2MxNDYyMDY3MmRkYTYyNDFlYTMwNXAtMSwKLSAgICAtMHgxLjZmY2I3YzZiOGI5MTk5Y2UyZjE3ZGQzZWU4NmIzYjlhcC0xLAotICAgIC0weDEuMmZhNTAxMDliZjg0MnAxLAotICB9LAotICB7IC8vIEVudHJ5IDQzMgotICAgIDB4MS40YmU0OTc5YzVlZmIxOTRmYzgyYWMzNjdmZWRmOTNiY3AtMSwKLSAgICAtMHgxLjg1ZGMzZWExYmJjZWFlMmQyOTQ0MjFlOGM3MzUwZjhjcC0xLAotICAgIDB4MS4zN2Q5ZTU2M2Y1MWZmcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMzCi0gICAgLTB4MS40YmU0OTc5YzVlZmIxOTRmYzgyYWMzNjdmZWRmOTNiY3AtMSwKLSAgICAtMHgxLjg1ZGMzZWExYmJjZWFlMmQyOTQ0MjFlOGM3MzUwZjhjcC0xLAotICAgIC0weDEuMzdkOWU1NjNmNTFmZnAxLAotICB9LAotICB7IC8vIEVudHJ5IDQzNAotICAgIDB4MS4zMjNiOGIxZmI0YjllZmU1MDc1ZWRlODA0OWE4NWMzZHAtMSwKLSAgICAtMHgxLjlhNTJlMmUwZmJjYjVmOGEzZjU1YzI3NGY5ZWM3NTRicC0xLAotICAgIDB4MS40MDBlYzliZTJhYmJjcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM1Ci0gICAgLTB4MS4zMjNiOGIxZmI0YjllZmU1MDc1ZWRlODA0OWE4NWMzZHAtMSwKLSAgICAtMHgxLjlhNTJlMmUwZmJjYjVmOGEzZjU1YzI3NGY5ZWM3NTRicC0xLAotICAgIC0weDEuNDAwZWM5YmUyYWJiY3AxLAotICB9LAotICB7IC8vIEVudHJ5IDQzNgotICAgIDB4MS4xNzUwNTliZjBkNDIwMzNiYmNmNTk4Yzg4YjE3NmU2MXAtMSwKLSAgICAtMHgxLmFkMTllMjUzNWFhOTliMDQ5YWMwYjU4NThjNWQzODFmcC0xLAotICAgIDB4MS40ODQzYWUxODYwNTc5cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM3Ci0gICAgLTB4MS4xNzUwNTliZjBkNDIwMzNiYmNmNTk4Yzg4YjE3NmU2MXAtMSwKLSAgICAtMHgxLmFkMTllMjUzNWFhOTliMDQ5YWMwYjU4NThjNWQzODFmcC0xLAotICAgIC0weDEuNDg0M2FlMTg2MDU3OXAxLAotICB9LAotICB7IC8vIEVudHJ5IDQzOAotICAgIDB4MS5mNjdlYTk3NWI4NjkyNTIxZjc3ZDY3NTRiMzAyYzVjNHAtMiwKLSAgICAtMHgxLmJlMWQ3YzM1MzRjNDQxMzJhYjFjNDEzMGNiZTlkZmEwcC0xLAotICAgIDB4MS41MDc4OTI3Mjk1ZjM2cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM5Ci0gICAgLTB4MS5mNjdlYTk3NWI4NjkyNTIxZjc3ZDY3NTRiMzAyYzVjNHAtMiwKLSAgICAtMHgxLmJlMWQ3YzM1MzRjNDQxMzJhYjFjNDEzMGNiZTlkZmEwcC0xLAotICAgIC0weDEuNTA3ODkyNzI5NWYzNnAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ0MAotICAgIDB4MS5iYzRjMDRkNzFhYmFkMTRlZmMyOWE2NjM0MmFkYTcyM3AtMiwKLSAgICAtMHgxLmNkNGJjYTljYjVjNzU5ZTRkNmRjODYwMWVjM2Q4NGI2cC0xLAotICAgIDB4MS41OGFkNzZjY2NiOGYzcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQxCi0gICAgLTB4MS5iYzRjMDRkNzFhYmFkMTRlZmMyOWE2NjM0MmFkYTcyM3AtMiwKLSAgICAtMHgxLmNkNGJjYTljYjVjNzU5ZTRkNmRjODYwMWVjM2Q4NGI2cC0xLAotICAgIC0weDEuNThhZDc2Y2NjYjhmM3AxLAotICB9LAotICB7IC8vIEVudHJ5IDQ0MgotICAgIDB4MS44MDQ1ZmU2NGU2MmM2MmY1N2YwNzdlYTI1MWUyZjJkY3AtMiwKLSAgICAtMHgxLmRhOTRkNTRkZDRjMGNlZGNjZDczNjg0OTk0NDIyNzQwcC0xLAotICAgIDB4MS42MGUyNWIyNzAxMmIwcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQzCi0gICAgLTB4MS44MDQ1ZmU2NGU2MmM2MmY1N2YwNzdlYTI1MWUyZjJkY3AtMiwKLSAgICAtMHgxLmRhOTRkNTRkZDRjMGNlZGNjZDczNjg0OTk0NDIyNzQwcC0xLAotICAgIC0weDEuNjBlMjViMjcwMTJiMHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ0NAotICAgIDB4MS40MmFiYmE4YzcyZmExMmJlOTIwYjMxNjYyNzUxMmU0MXAtMiwKLSAgICAtMHgxLmU1ZWFhMjg2ZmJiY2FkMWU0YTYzNzMzOTJlNjc5NjY5cC0xLAotICAgIDB4MS42OTE3M2Y4MTM2YzZkcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ1Ci0gICAgLTB4MS40MmFiYmE4YzcyZmExMmJlOTIwYjMxNjYyNzUxMmU0MXAtMiwKLSAgICAtMHgxLmU1ZWFhMjg2ZmJiY2FkMWU0YTYzNzMzOTJlNjc5NjY5cC0xLAotICAgIC0weDEuNjkxNzNmODEzNmM2ZHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ0NgotICAgIDB4MS4wM2JlMDZmOTdjYmNmODY2MDIxZTVhNWM2MmM2YjA3ZXAtMiwKLSAgICAtMHgxLmVmNDE0NWI0YWVkMDNjNWYxZDM5NzYzYjFlZWU2ZWQ4cC0xLAotICAgIDB4MS43MTRjMjNkYjZjNjJhcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ3Ci0gICAgLTB4MS4wM2JlMDZmOTdjYmNmODY2MDIxZTVhNWM2MmM2YjA3ZXAtMiwKLSAgICAtMHgxLmVmNDE0NWI0YWVkMDNjNWYxZDM5NzYzYjFlZWU2ZWQ4cC0xLAotICAgIC0weDEuNzE0YzIzZGI2YzYyYXAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ0OAotICAgIDB4MS44NzdlMmNkNGY2Zjk0NzEwZjI3NzY3NzViMDFjNzNkYnAtMywKLSAgICAtMHgxLmY2OGVlYmZjYmI1ZWJhMTI0ZDhjYzQ4ZmQxYmViMDRkcC0xLAotICAgIDB4MS43OTgxMDgzNWExZmU3cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ5Ci0gICAgLTB4MS44NzdlMmNkNGY2Zjk0NzEwZjI3NzY3NzViMDFjNzNkYnAtMywKLSAgICAtMHgxLmY2OGVlYmZjYmI1ZWJhMTI0ZDhjYzQ4ZmQxYmViMDRkcC0xLAotICAgIC0weDEuNzk4MTA4MzVhMWZlN3AxLAotICB9LAotICB7IC8vIEVudHJ5IDQ1MAotICAgIDB4MS4wNWU0NzYxYWI4ZDQyMTcxOTU2NzcxN2Y3NjcxMjg2N3AtMywKLSAgICAtMHgxLmZiY2JlNjkzYmQ4ZWYwMDZmNWZmMDIyMTBkZmUwNjE5cC0xLAotICAgIDB4MS44MWI1ZWM4ZmQ3OWE0cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUxCi0gICAgLTB4MS4wNWU0NzYxYWI4ZDQyMTcxOTU2NzcxN2Y3NjcxMjg2N3AtMywKLSAgICAtMHgxLmZiY2JlNjkzYmQ4ZWYwMDZmNWZmMDIyMTBkZmUwNjE5cC0xLAotICAgIC0weDEuODFiNWVjOGZkNzlhNHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ1MgotICAgIDB4MS4wNjZlN2ViNzZmNWRkMmVhMTliNjk5MWU4YTFhMzYzNHAtNCwKLSAgICAtMHgxLmZlZjJiMmQyMWNmNmJlMWEyYzdlYTY2NWVmMWY4NzRlcC0xLAotICAgIDB4MS44OWVhZDBlYTBkMzVicDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUzCi0gICAgLTB4MS4wNjZlN2ViNzZmNWRkMmVhMTliNjk5MWU4YTFhMzYzNHAtNCwKLSAgICAtMHgxLmZlZjJiMmQyMWNmNmJlMWEyYzdlYTY2NWVmMWY4NzRlcC0xLAotICAgIC0weDEuODllYWQwZWEwZDM1YnAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ1NAotICAgIDB4MS4wM2JlMDZmOTdjYmYwOWNjMGJhZGJkYWU4MDNkN2I0ZXAtMiwKLSAgICAweDEuZWY0MTQ1YjRhZWNmZjZmNThlZGVjZjI0OTU1NDI4YzFwLTEsCi0gICAgLTB4MS44MWI1ZWM4ZmQ3OTlmcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU1Ci0gICAgLTB4MS4wM2JlMDZmOTdjYmYwOWNjMGJhZGJkYWU4MDNkN2I0ZXAtMiwKLSAgICAweDEuZWY0MTQ1YjRhZWNmZjZmNThlZGVjZjI0OTU1NDI4YzFwLTEsCi0gICAgMHgxLjgxYjVlYzhmZDc5OWZwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTYKLSAgICAweDEuZjY3ZWE5NzViODZhMjJmMjM0ODc3ODgyNGY5NWQ4NGFwLTIsCi0gICAgMHgxLmJlMWQ3YzM1MzRjM2Y5YjliMzU2MTkyODAwNDlkZTg1cC0xLAotICAgIC0weDEuNzE0YzIzZGI2YzYyNnAyLAotICB9LAotICB7IC8vIEVudHJ5IDQ1NwotICAgIC0weDEuZjY3ZWE5NzViODZhMjJmMjM0ODc3ODgyNGY5NWQ4NGFwLTIsCi0gICAgMHgxLmJlMWQ3YzM1MzRjM2Y5YjliMzU2MTkyODAwNDlkZTg1cC0xLAotICAgIDB4MS43MTRjMjNkYjZjNjI2cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU4Ci0gICAgMHgxLjY0MzA4MGQ2N2FjYzIxMGZhMjdlOTI0N2E4Mjg2MjIwcC0xLAotICAgIDB4MS42ZmNiN2M2YjhiOTE4ZDg2ZmM4M2Q2MTJhNjU4N2VkZHAtMSwKLSAgICAtMHgxLjYwZTI1YjI3MDEyYWRwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTkKLSAgICAtMHgxLjY0MzA4MGQ2N2FjYzIxMGZhMjdlOTI0N2E4Mjg2MjIwcC0xLAotICAgIDB4MS42ZmNiN2M2YjhiOTE4ZDg2ZmM4M2Q2MTJhNjU4N2VkZHAtMSwKLSAgICAweDEuNjBlMjViMjcwMTJhZHAyLAotICB9LAotICB7IC8vIEVudHJ5IDQ2MAotICAgIDB4MS5iNWQ1NDViMTA5YmY5NTBiNDE5NzAyOTcyYjk0ZjhmYXAtMSwKLSAgICAweDEuMDk2YWMwMmVjNDJjODJlNWIyMjUxODViZDZjNzU3ZDVwLTEsCi0gICAgLTB4MS41MDc4OTI3Mjk1ZjM0cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDYxCi0gICAgLTB4MS5iNWQ1NDViMTA5YmY5NTBiNDE5NzAyOTcyYjk0ZjhmYXAtMSwKLSAgICAweDEuMDk2YWMwMmVjNDJjODJlNWIyMjUxODViZDZjNzU3ZDVwLTEsCi0gICAgMHgxLjUwNzg5MjcyOTVmMzRwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjIKLSAgICAweDEuZWFkNjgzNDkwOWI5MzQ2MjM0ZGJiNjAxZDA0ODZjZjJwLTEsCi0gICAgMHgxLjIzNWIzMzFkOGY3NDg3Y2UyZGI5NzgxOWZhZTc3NzdjcC0yLAotICAgIC0weDEuNDAwZWM5YmUyYWJiYnAyLAotICB9LAotICB7IC8vIEVudHJ5IDQ2MwotICAgIC0weDEuZWFkNjgzNDkwOWI5MzQ2MjM0ZGJiNjAxZDA0ODZjZjJwLTEsCi0gICAgMHgxLjIzNWIzMzFkOGY3NDg3Y2UyZGI5NzgxOWZhZTc3NzdjcC0yLAotICAgIDB4MS40MDBlYzliZTJhYmJicDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY0Ci0gICAgMHgxLmZmYmNhODQ2YzRmYzk5OWEyOWRjMWQ2YjJkN2NiNDEzcC0xLAotICAgIDB4MS4wNjkxMDdhZTkzMzJjNGExY2QyZGMwMzNiOGQ1MDU5OHAtNSwKLSAgICAtMHgxLjJmYTUwMTA5YmY4NDJwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjUKLSAgICAtMHgxLmZmYmNhODQ2YzRmYzk5OWEyOWRjMWQ2YjJkN2NiNDEzcC0xLAotICAgIDB4MS4wNjkxMDdhZTkzMzJjNGExY2QyZGMwMzNiOGQ1MDU5OHAtNSwKLSAgICAweDEuMmZhNTAxMDliZjg0MnAyLAotICB9LAotICB7IC8vIEVudHJ5IDQ2NgotICAgIDB4MS5mMzI5YzA1NThlOTZhNTE4YTJhZjNhZTc4MDBhNWI2NXAtMSwKLSAgICAtMHgxLmM3YjkwZTMwMjQ1Njk1YmQxZWMxNzBmNDVmZWViMWZmcC0zLAotICAgIC0weDEuMWYzYjM4NTU1NDRjOXAyLAotICB9LAotICB7IC8vIEVudHJ5IDQ2NwotICAgIC0weDEuZjMyOWMwNTU4ZTk2YTUxOGEyYWYzYWU3ODAwYTViNjVwLTEsCi0gICAgLTB4MS5jN2I5MGUzMDI0NTY5NWJkMWVjMTcwZjQ1ZmVlYjFmZnAtMywKLSAgICAweDEuMWYzYjM4NTU1NDRjOXAyLAotICB9LAotICB7IC8vIEVudHJ5IDQ2OAotICAgIDB4MS5jNWYwNTgyMzBlODAyMWYyMWJkMGFjMmMwZjY4MDlhOXAtMSwKLSAgICAtMHgxLmQ5YTNhMzM2ZWRiNjJjMTU0MWI4NTg0Y2Q2YzAwZjg3cC0yLAotICAgIC0weDEuMGVkMTZmYTBlOTE1MHAyLAotICB9LAotICB7IC8vIEVudHJ5IDQ2OQotICAgIC0weDEuYzVmMDU4MjMwZTgwMjFmMjFiZDBhYzJjMGY2ODA5YTlwLTEsCi0gICAgLTB4MS5kOWEzYTMzNmVkYjYyYzE1NDFiODU4NGNkNmMwMGY4N3AtMiwKLSAgICAweDEuMGVkMTZmYTBlOTE1MHAyLAotICB9LAotICB7IC8vIEVudHJ5IDQ3MAotICAgIDB4MS43YjA1YjdiNmM2MTM2NWE5YWM5ZTkwOGI4ZTVkM2NlNHAtMSwKLSAgICAtMHgxLjU4MzdkMjgxN2NmMjc3MDVjYWM3ODgxZmI1NjlmZmM3cC0xLAotICAgIC0weDEuZmNjZjRkZDhmYmJhZXAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ3MQotICAgIC0weDEuN2IwNWI3YjZjNjEzNjVhOWFjOWU5MDhiOGU1ZDNjZTRwLTEsCi0gICAgLTB4MS41ODM3ZDI4MTdjZjI3NzA1Y2FjNzg4MWZiNTY5ZmZjN3AtMSwKLSAgICAweDEuZmNjZjRkZDhmYmJhZXAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ3MgotICAgIDB4MS4xNzUwNTliZjBkNDJmMWQ2YjM5MWYwN2Y5NmYyMzUzZHAtMSwKLSAgICAtMHgxLmFkMTllMjUzNWFhOGZmYjQwMDY2ZDc4YWVmNzFmYWJkcC0xLAotICAgIC0weDEuZGJmYmJjNzAyNTRiY3AxLAotICB9LAotICB7IC8vIEVudHJ5IDQ3MwotICAgIC0weDEuMTc1MDU5YmYwZDQyZjFkNmIzOTFmMDdmOTZmMjM1M2RwLTEsCi0gICAgLTB4MS5hZDE5ZTI1MzVhYThmZmI0MDA2NmQ3OGFlZjcxZmFiZHAtMSwKLSAgICAweDEuZGJmYmJjNzAyNTRiY3AxLAotICB9LAotICB7IC8vIEVudHJ5IDQ3NAotICAgIDB4MS40MmFiYmE4YzcyZmQyMjE5NDc5MzI0NmI4ZDE5OTYwYXAtMiwKLSAgICAtMHgxLmU1ZWFhMjg2ZmJiYzJiMTI5MjM4MTYwZGYzMGNlNzA0cC0xLAotICAgIC0weDEuYmIyODJiMDc0ZWRjYXAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ3NQotICAgIC0weDEuNDJhYmJhOGM3MmZkMjIxOTQ3OTMyNDZiOGQxOTk2MGFwLTIsCi0gICAgLTB4MS5lNWVhYTI4NmZiYmMyYjEyOTIzODE2MGRmMzBjZTcwNHAtMSwKLSAgICAweDEuYmIyODJiMDc0ZWRjYXAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ3NgotICAgIDB4MS4wNjZlN2ViNzZmNjJiNWY0NTYzZGUyNmRjYTg5MDAxN3AtNCwKLSAgICAtMHgxLmZlZjJiMmQyMWNmNmI0MGZmM2I1MzBjZThkYzBkOGE3cC0xLAotICAgIC0weDEuOWE1NDk5OWU3ODZkOHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ3NwotICAgIC0weDEuMDY2ZTdlYjc2ZjYyYjVmNDU2M2RlMjZkY2E4OTAwMTdwLTQsCi0gICAgLTB4MS5mZWYyYjJkMjFjZjZiNDBmZjNiNTMwY2U4ZGMwZDhhN3AtMSwKLSAgICAweDEuOWE1NDk5OWU3ODZkOHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ3OAotICAgIC0weDEuODc3ZTJjZDRmNmZhNDI1ODY4NzVjNTI1MGExNjllNDhwLTMsCi0gICAgLTB4MS5mNjhlZWJmY2JiNWVhZGQ2NWMyNjFjZDgwMzk5MGFlMXAtMSwKLSAgICAtMHgxLjc5ODEwODM1YTFmZTZwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzkKLSAgICAweDEuODc3ZTJjZDRmNmZhNDI1ODY4NzVjNTI1MGExNjllNDhwLTMsCi0gICAgLTB4MS5mNjhlZWJmY2JiNWVhZGQ2NWMyNjFjZDgwMzk5MGFlMXAtMSwKLSAgICAweDEuNzk4MTA4MzVhMWZlNnAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ4MAotICAgIC0weDEuYmM0YzA0ZDcxYWJhNWRmYzA5ODI3OGYxNjhiYmQ5NjJwLTIsCi0gICAgLTB4MS5jZDRiY2E5Y2I1Yzc3NWE5OTcyOWY3YWQ5NWI3ZGNlM3AtMSwKLSAgICAtMHgxLjU4YWQ3NmNjY2I4ZjRwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODEKLSAgICAweDEuYmM0YzA0ZDcxYWJhNWRmYzA5ODI3OGYxNjhiYmQ5NjJwLTIsCi0gICAgLTB4MS5jZDRiY2E5Y2I1Yzc3NWE5OTcyOWY3YWQ5NWI3ZGNlM3AtMSwKLSAgICAweDEuNThhZDc2Y2NjYjhmNHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ4MgotICAgIC0weDEuNGJlNDk3OWM1ZWZhODcxZDMwYWUxY2ZhNjYzODkxOTlwLTEsCi0gICAgLTB4MS44NWRjM2VhMWJiY2YyYWEyZTIxZWM1ODZkNTQ5N2UzNXAtMSwKLSAgICAtMHgxLjM3ZDllNTYzZjUyMDJwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODMKLSAgICAweDEuNGJlNDk3OWM1ZWZhODcxZDMwYWUxY2ZhNjYzODkxOTlwLTEsCi0gICAgLTB4MS44NWRjM2VhMWJiY2YyYWEyZTIxZWM1ODZkNTQ5N2UzNXAtMSwKLSAgICAweDEuMzdkOWU1NjNmNTIwMnAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ4NAotICAgIC0weDEuYTNlZDllMjUyOTM4MjIxNjg5NThjY2UxZTA5ZjdjMTFwLTEsCi0gICAgLTB4MS4yNGVjNzk5MTcxNjRlNDFhZGRkNGJhY2Q0NDIwZjlmYnAtMSwKLSAgICAtMHgxLjE3MDY1M2ZiMWViMTBwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODUKLSAgICAweDEuYTNlZDllMjUyOTM4MjIxNjg5NThjY2UxZTA5ZjdjMTFwLTEsCi0gICAgLTB4MS4yNGVjNzk5MTcxNjRlNDFhZGRkNGJhY2Q0NDIwZjlmYnAtMSwKLSAgICAweDEuMTcwNjUzZmIxZWIxMHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ4NgotICAgIC0weDEuZTA3ZWVlZGExMDljNjJiMzQwZGMzNmU5MjE2OTY0OGRwLTEsCi0gICAgLTB4MS42MWE3NjA3N2FlZTIzYjExZjBjNjczZjYzODAwM2IwYXAtMiwKLSAgICAtMHgxLmVjNjU4NTI0OTA4M2NwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODcKLSAgICAweDEuZTA3ZWVlZGExMDljNjJiMzQwZGMzNmU5MjE2OTY0OGRwLTEsCi0gICAgLTB4MS42MWE3NjA3N2FlZTIzYjExZjBjNjczZjYzODAwM2IwYXAtMiwKLSAgICAweDEuZWM2NTg1MjQ5MDgzY3AwLAotICB9LAotICB7IC8vIEVudHJ5IDQ4OAotICAgIC0weDEuZmRhMjU0YzI3YTAxZGQ5NTRkYjNhZWE1MDVlNDk0NTNwLTEsCi0gICAgLTB4MS44OTRmNzBiZWZiYzEwNGI3MDZlODVjZjRjMWM5NmE1MnAtNCwKLSAgICAtMHgxLmFhYmU2MjUyZTNhNThwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODkKLSAgICAweDEuZmRhMjU0YzI3YTAxZGQ5NTRkYjNhZWE1MDVlNDk0NTNwLTEsCi0gICAgLTB4MS44OTRmNzBiZWZiYzEwNGI3MDZlODVjZjRjMWM5NmE1MnAtNCwKLSAgICAweDEuYWFiZTYyNTJlM2E1OHAwLAotICB9LAotICB7IC8vIEVudHJ5IDQ5MAotICAgIC0weDEuZjk2ZmU0MDVmMWFjYTAyZThmNGZkNDMzZTU5YWE5NzNwLTEsCi0gICAgMHgxLjQ2ZGM0ZjRjZTgzNzNjN2M0NGYxM2I1NzM2M2VkZDNicC0zLAotICAgIC0weDEuNjkxNzNmODEzNmM3NHAwLAotICB9LAotICB7IC8vIEVudHJ5IDQ5MQotICAgIDB4MS5mOTZmZTQwNWYxYWNhMDJlOGY0ZmQ0MzNlNTlhYTk3M3AtMSwKLSAgICAweDEuNDZkYzRmNGNlODM3M2M3YzQ0ZjEzYjU3MzYzZWRkM2JwLTMsCi0gICAgMHgxLjY5MTczZjgxMzZjNzRwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTIKLSAgICAtMHgxLmQ0MmRlNDJkY2UxM2VmMDQwYmIxMDQwZTMxNDhkN2RlcC0xLAotICAgIDB4MS45ZTdmODY1MmI0NzI4OWU1M2ZjY2Q1NDk1NWRiNDU1MnAtMiwKLSAgICAtMHgxLjI3NzAxY2FmODllOTBwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTMKLSAgICAweDEuZDQyZGU0MmRjZTEzZWYwNDBiYjEwNDBlMzE0OGQ3ZGVwLTEsCi0gICAgMHgxLjllN2Y4NjUyYjQ3Mjg5ZTUzZmNjZDU0OTU1ZGI0NTUycC0yLAotICAgIDB4MS4yNzcwMWNhZjg5ZTkwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk0Ci0gICAgLTB4MS45MDRjMzc1MDVkZTU5MzA4MTJlM2EyYTk0ZmVhYTUxYnAtMSwKLSAgICAweDEuM2YzYTBlMjhiZWRiZmIwNjZiNjdhYmQ5YzMzODQwOWVwLTEsCi0gICAgLTB4MS5jYjkxZjNiYmJhMTU3cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDQ5NQotICAgIDB4MS45MDRjMzc1MDVkZTU5MzA4MTJlM2EyYTk0ZmVhYTUxYnAtMSwKLSAgICAweDEuM2YzYTBlMjhiZWRiZmIwNjZiNjdhYmQ5YzMzODQwOWVwLTEsCi0gICAgMHgxLmNiOTFmM2JiYmExNTdwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk2Ci0gICAgLTB4MS4zMjNiOGIxZmI0YmI2MjZkZDQwY2FjZDc0OTYzYWM2Y3AtMSwKLSAgICAweDEuOWE1MmUyZTBmYmNhNGIwMGM3MmRhYTNjZGFjYTI1N2NwLTEsCi0gICAgLTB4MS40ODQzYWUxODYwNThlcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDQ5NwotICAgIDB4MS4zMjNiOGIxZmI0YmI2MjZkZDQwY2FjZDc0OTYzYWM2Y3AtMSwKLSAgICAweDEuOWE1MmUyZTBmYmNhNGIwMGM3MmRhYTNjZGFjYTI1N2NwLTEsCi0gICAgMHgxLjQ4NDNhZTE4NjA1OGVwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk4Ci0gICAgLTB4MS44MDQ1ZmU2NGU2MzA4YmI1YzZjZTM1ZjgzNGI5M2M2M3AtMiwKLSAgICAweDEuZGE5NGQ1NGRkNGJmZjc1M2Q5ODhjMTc1NWUyZmZjMDRwLTEsCi0gICAgLTB4MS44OWVhZDBlYTBkMzhhcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDQ5OQotICAgIDB4MS44MDQ1ZmU2NGU2MzA4YmI1YzZjZTM1ZjgzNGI5M2M2M3AtMiwKLSAgICAweDEuZGE5NGQ1NGRkNGJmZjc1M2Q5ODhjMTc1NWUyZmZjMDRwLTEsCi0gICAgMHgxLjg5ZWFkMGVhMGQzOGFwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTAwCi0gICAgLTB4MS4wNWU0NzYxYWI4ZGVjNDRlZDBmYTMwZDMzNTA0OWM0MHAtMywKLSAgICAweDEuZmJjYmU2OTNiZDhlOTg0MjMyMDdlMzY1ODdkOTQyYjdwLTEsCi0gICAgLTB4MS4wNjljOGI0NmIzN2YwcC0zLAotICB9LAotICB7IC8vIEVudHJ5IDUwMQotICAgIDB4MS4wNWU0NzYxYWI4ZGVjNDRlZDBmYTMwZDMzNTA0OWM0MHAtMywKLSAgICAweDEuZmJjYmU2OTNiZDhlOTg0MjMyMDdlMzY1ODdkOTQyYjdwLTEsCi0gICAgMHgxLjA2OWM4YjQ2YjM3ZjBwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTAyCi0gICAgMHgxLjA1ZTQ3NjFhYjhkMzFkMDBlNjU2MzcyYzVjMDRhYTZlcC0zLAotICAgIDB4MS5mYmNiZTY5M2JkOGVmODZjMTU2NWIzNDUzMDM2ZTU1ZXAtMSwKLSAgICAweDEuMDY5YzhiNDZiMzczNHAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDMKLSAgICAtMHgxLjA1ZTQ3NjFhYjhkMzFkMDBlNjU2MzcyYzVjMDRhYTZlcC0zLAotICAgIDB4MS5mYmNiZTY5M2JkOGVmODZjMTU2NWIzNDUzMDM2ZTU1ZXAtMSwKLSAgICAtMHgxLjA2OWM4YjQ2YjM3MzRwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA0Ci0gICAgMHgxLjgwNDVmZTY0ZTYyYjE5YTA5NDM5OTUwMmFmYjc2ZTVjcC0yLAotICAgIDB4MS5kYTk0ZDU0ZGQ0YzExMTg3NDA1YWRhN2YwNGU1YjE3MXAtMSwKLSAgICAweDEuODllYWQwZWEwZDMyY3AtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDUKLSAgICAtMHgxLjgwNDVmZTY0ZTYyYjE5YTA5NDM5OTUwMmFmYjc2ZTVjcC0yLAotICAgIDB4MS5kYTk0ZDU0ZGQ0YzExMTg3NDA1YWRhN2YwNGU1YjE3MXAtMSwKLSAgICAtMHgxLjg5ZWFkMGVhMGQzMmNwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA2Ci0gICAgMHgxLjMyM2I4YjFmYjRiOTA3YzQxNmQyM2IwNGUwZWMwZTcycC0xLAotICAgIDB4MS45YTUyZTJlMGZiY2MwY2M4M2I4NDNiYWU1OGM2Y2RmOHAtMSwKLSAgICAweDEuNDg0M2FlMTg2MDU1ZnAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDcKLSAgICAtMHgxLjMyM2I4YjFmYjRiOTA3YzQxNmQyM2IwNGUwZWMwZTcycC0xLAotICAgIDB4MS45YTUyZTJlMGZiY2MwY2M4M2I4NDNiYWU1OGM2Y2RmOHAtMSwKLSAgICAtMHgxLjQ4NDNhZTE4NjA1NWZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA4Ci0gICAgMHgxLjkwNGMzNzUwNWRlM2JlMmFjZTE3Y2E1NDg3NzUwMjMxcC0xLAotICAgIDB4MS4zZjNhMGUyOGJlZGU0NmY2NWNhNWI1YzE5YWQ5OWRkN3AtMSwKLSAgICAweDEuY2I5MWYzYmJiYTEyOHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDkKLSAgICAtMHgxLjkwNGMzNzUwNWRlM2JlMmFjZTE3Y2E1NDg3NzUwMjMxcC0xLAotICAgIDB4MS4zZjNhMGUyOGJlZGU0NmY2NWNhNWI1YzE5YWQ5OWRkN3AtMSwKLSAgICAtMHgxLmNiOTFmM2JiYmExMjhwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTEwCi0gICAgMHgxLmQ0MmRlNDJkY2UxMmI4MjQ2NmYyZmNiNjNiMjk0NzUxcC0xLAotICAgIDB4MS45ZTdmODY1MmI0NzgwNjZlZWM1NjNmODM1MDk3ZjE0OHAtMiwKLSAgICAweDEuMjc3MDFjYWY4OWU3OHAwLAotICB9LAotICB7IC8vIEVudHJ5IDUxMQotICAgIC0weDEuZDQyZGU0MmRjZTEyYjgyNDY2ZjJmY2I2M2IyOTQ3NTFwLTEsCi0gICAgMHgxLjllN2Y4NjUyYjQ3ODA2NmVlYzU2M2Y4MzUwOTdmMTQ4cC0yLAotICAgIC0weDEuMjc3MDFjYWY4OWU3OHAwLAotICB9LAotICB7IC8vIEVudHJ5IDUxMgotICAgIDB4MS5mOTZmZTQwNWYxYWMyNTliZjE5MmZkMWNmNjRlMmYxMnAtMSwKLSAgICAweDEuNDZkYzRmNGNlODQzMTUxYjlkMTRlNTYxODc5ZTVmZTNwLTMsCi0gICAgMHgxLjY5MTczZjgxMzZjNWNwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTMKLSAgICAtMHgxLmY5NmZlNDA1ZjFhYzI1OWJmMTkyZmQxY2Y2NGUyZjEycC0xLAotICAgIDB4MS40NmRjNGY0Y2U4NDMxNTFiOWQxNGU1NjE4NzllNWZlM3AtMywKLSAgICAtMHgxLjY5MTczZjgxMzZjNWNwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTQKLSAgICAweDEuZmRhMjU0YzI3YTAyMjc1NDMyZDc3ZGQ2Zjk3MDQ2NDRwLTEsCi0gICAgLTB4MS44OTRmNzBiZWZiYTkyMTFiMGRjYWE0ZGNhNDUwNjcwZnAtNCwKLSAgICAweDEuYWFiZTYyNTJlM2E0MHAwLAotICB9LAotICB7IC8vIEVudHJ5IDUxNQotICAgIC0weDEuZmRhMjU0YzI3YTAyMjc1NDMyZDc3ZGQ2Zjk3MDQ2NDRwLTEsCi0gICAgLTB4MS44OTRmNzBiZWZiYTkyMTFiMGRjYWE0ZGNhNDUwNjcwZnAtNCwKLSAgICAtMHgxLmFhYmU2MjUyZTNhNDBwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTYKLSAgICAweDEuZTA3ZWVlZGExMDlkNmJmMGM5MzVmYTEwYjEyODBjNmRwLTEsCi0gICAgLTB4MS42MWE3NjA3N2FlZGM5OTk1MjQzODQyMWY4MjBhMmJlZnAtMiwKLSAgICAweDEuZWM2NTg1MjQ5MDgyNHAwLAotICB9LAotICB7IC8vIEVudHJ5IDUxNwotICAgIC0weDEuZTA3ZWVlZGExMDlkNmJmMGM5MzVmYTEwYjEyODBjNmRwLTEsCi0gICAgLTB4MS42MWE3NjA3N2FlZGM5OTk1MjQzODQyMWY4MjBhMmJlZnAtMiwKLSAgICAtMHgxLmVjNjU4NTI0OTA4MjRwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTgKLSAgICAweDEuYTNlZDllMjUyOTM5ZDk3OTNmYjJmNmY3NWU1Yzc2ZTdwLTEsCi0gICAgLTB4MS4yNGVjNzk5MTcxNjI2ZTM2NzA5Y2ZjZjdjNzc1MjMzMnAtMSwKLSAgICAweDEuMTcwNjUzZmIxZWIwNHAxLAotICB9LAotICB7IC8vIEVudHJ5IDUxOQotICAgIC0weDEuYTNlZDllMjUyOTM5ZDk3OTNmYjJmNmY3NWU1Yzc2ZTdwLTEsCi0gICAgLTB4MS4yNGVjNzk5MTcxNjI2ZTM2NzA5Y2ZjZjdjNzc1MjMzMnAtMSwKLSAgICAtMHgxLjE3MDY1M2ZiMWViMDRwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjAKLSAgICAweDEuNGJlNDk3OWM1ZWZjY2ZlNzhlYTBiNmFmYjBjYmJhMzdwLTEsCi0gICAgLTB4MS44NWRjM2VhMWJiY2QzOGNiZmViNDM3MGQ1NDA1ZWViYXAtMSwKLSAgICAweDEuMzdkOWU1NjNmNTFmNnAxLAotICB9LAotICB7IC8vIEVudHJ5IDUyMQotICAgIC0weDEuNGJlNDk3OWM1ZWZjY2ZlNzhlYTBiNmFmYjBjYmJhMzdwLTEsCi0gICAgLTB4MS44NWRjM2VhMWJiY2QzOGNiZmViNDM3MGQ1NDA1ZWViYXAtMSwKLSAgICAtMHgxLjM3ZDllNTYzZjUxZjZwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjIKLSAgICAweDEuYmM0YzA0ZDcxYWJmYzVkZjY5NTg5YTQ1ZDVlMzE5NmVwLTIsCi0gICAgLTB4MS5jZDRiY2E5Y2I1YzYyODcwOTM4OGEzOWZjODQ1OTFkMXAtMSwKLSAgICAweDEuNThhZDc2Y2NjYjhlOHAxLAotICB9LAotICB7IC8vIEVudHJ5IDUyMwotICAgIC0weDEuYmM0YzA0ZDcxYWJmYzVkZjY5NTg5YTQ1ZDVlMzE5NmVwLTIsCi0gICAgLTB4MS5jZDRiY2E5Y2I1YzYyODcwOTM4OGEzOWZjODQ1OTFkMXAtMSwKLSAgICAtMHgxLjU4YWQ3NmNjY2I4ZThwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjQKLSAgICAweDEuODc3ZTJjZDRmNzA2MDliMWYwNjIyOTViNjRhZWQ0YmRwLTMsCi0gICAgLTB4MS5mNjhlZWJmY2JiNWUxYjA3MGI1NjQwMzdmNTU3MWEzOXAtMSwKLSAgICAweDEuNzk4MTA4MzVhMWZkYXAxLAotICB9LAotICB7IC8vIEVudHJ5IDUyNQotICAgIC0weDEuODc3ZTJjZDRmNzA2MDliMWYwNjIyOTViNjRhZWQ0YmRwLTMsCi0gICAgLTB4MS5mNjhlZWJmY2JiNWUxYjA3MGI1NjQwMzdmNTU3MWEzOXAtMSwKLSAgICAtMHgxLjc5ODEwODM1YTFmZGFwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjYKLSAgICAtMHgxLjA2NmU3ZWI3NmY0YWMyOTNmNDY0ODZkYzMyOGQ0NTBicC00LAotICAgIC0weDEuZmVmMmIyZDIxY2Y2ZTU0NGFiNzc5NWFlZDEwZDlmYTdwLTEsCi0gICAgMHgxLjlhNTQ5OTllNzg2Y2NwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjcKLSAgICAweDEuMDY2ZTdlYjc2ZjRhYzI5M2Y0NjQ4NmRjMzI4ZDQ1MGJwLTQsCi0gICAgLTB4MS5mZWYyYjJkMjFjZjZlNTQ0YWI3Nzk1YWVkMTBkOWZhN3AtMSwKLSAgICAtMHgxLjlhNTQ5OTllNzg2Y2NwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjgKLSAgICAtMHgxLjQyYWJiYThjNzJmNzcwNTk1ZmZlMzEzNWEwZTBhZDgzcC0yLAotICAgIC0weDEuZTVlYWEyODZmYmJkMWQxMzVlMjE2YzQ5YTlmN2U1ZGFwLTEsCi0gICAgMHgxLmJiMjgyYjA3NGVkYmVwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjkKLSAgICAweDEuNDJhYmJhOGM3MmY3NzA1OTVmZmUzMTM1YTBlMGFkODNwLTIsCi0gICAgLTB4MS5lNWVhYTI4NmZiYmQxZDEzNWUyMTZjNDlhOWY3ZTVkYXAtMSwKLSAgICAtMHgxLmJiMjgyYjA3NGVkYmVwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzAKLSAgICAtMHgxLjE3NTA1OWJmMGQ0MDZlMmZlMDE0ZTg4MGRkMjljZmFjcC0xLAotICAgIC0weDEuYWQxOWUyNTM1YWFhYTJhYzg3MDU2YjZkNzc3NmU5N2FwLTEsCi0gICAgMHgxLmRiZmJiYzcwMjU0YjBwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzEKLSAgICAweDEuMTc1MDU5YmYwZDQwNmUyZmUwMTRlODgwZGQyOWNmYWNwLTEsCi0gICAgLTB4MS5hZDE5ZTI1MzVhYWFhMmFjODcwNTZiNmQ3Nzc2ZTk3YXAtMSwKLSAgICAtMHgxLmRiZmJiYzcwMjU0YjBwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzIKLSAgICAtMHgxLjdiMDViN2I2YzYxMTYxNTVmMGRjNTUxZTMxNmUxZTBicC0xLAotICAgIC0weDEuNTgzN2QyODE3Y2Y0YWY4ZTVlNTliMTNiNGFhOWI1ZTNwLTEsCi0gICAgMHgxLmZjY2Y0ZGQ4ZmJiYTJwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzMKLSAgICAweDEuN2IwNWI3YjZjNjExNjE1NWYwZGM1NTFlMzE2ZTFlMGJwLTEsCi0gICAgLTB4MS41ODM3ZDI4MTdjZjRhZjhlNWU1OWIxM2I0YWE5YjVlM3AtMSwKLSAgICAtMHgxLmZjY2Y0ZGQ4ZmJiYTJwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzQKLSAgICAtMHgxLmM1ZjA1ODIzMGU3ZWJlYjc2MTY3NzllMTZmYTliNTM3cC0xLAotICAgIC0weDEuZDlhM2EzMzZlZGJiN2RlNjRhMjE4M2NiMjdiZTRiNWJwLTIsCi0gICAgMHgxLjBlZDE2ZmEwZTkxNGFwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzUKLSAgICAweDEuYzVmMDU4MjMwZTdlYmViNzYxNjc3OWUxNmZhOWI1MzdwLTEsCi0gICAgLTB4MS5kOWEzYTMzNmVkYmI3ZGU2NGEyMTgzY2IyN2JlNGI1YnAtMiwKLSAgICAtMHgxLjBlZDE2ZmEwZTkxNGFwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzYKLSAgICAtMHgxLmYzMjljMDU1OGU5NWZhMzMzZDVkMmQ0NGQ2NTQ3NzdjcC0xLAotICAgIC0weDEuYzdiOTBlMzAyNDYyNDhiN2EwYzJjODdhM2RkMjUyMjRwLTMsCi0gICAgMHgxLjFmM2IzODU1NTQ0YzNwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzcKLSAgICAweDEuZjMyOWMwNTU4ZTk1ZmEzMzNkNWQyZDQ0ZDY1NDc3N2NwLTEsCi0gICAgLTB4MS5jN2I5MGUzMDI0NjI0OGI3YTBjMmM4N2EzZGQyNTIyNHAtMywKLSAgICAtMHgxLjFmM2IzODU1NTQ0YzNwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzgKLSAgICAtMHgxLmZmYmNhODQ2YzRmY2IyMzdjMjk0N2IzNWIwMzdhMnAtMSwKLSAgICAweDEuMDY5MTA3YWU5MzAyY2FmMjA2OGI0ODg0MmFmZGYwNTFwLTUsCi0gICAgMHgxLjJmYTUwMTA5YmY4M2NwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzkKLSAgICAweDEuZmZiY2E4NDZjNGZjYjIzN2MyOTQ3YjM1YjAzN2EycC0xLAotICAgIDB4MS4wNjkxMDdhZTkzMDJjYWYyMDY4YjQ4ODQyYWZkZjA1MXAtNSwKLSAgICAtMHgxLjJmYTUwMTA5YmY4M2NwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDAKLSAgICAtMHgxLmVhZDY4MzQ5MDliYTBlZTY5YjMxZTE5NzBkZjFiYjhicC0xLAotICAgIDB4MS4yMzViMzMxZDhmNmVjNzRhYTNkZTVhZWQxNWZhM2Y2OHAtMiwKLSAgICAweDEuNDAwZWM5YmUyYWJiNXAyLAotICB9LAotICB7IC8vIEVudHJ5IDU0MQotICAgIDB4MS5lYWQ2ODM0OTA5YmEwZWU2OWIzMWUxOTcwZGYxYmI4YnAtMSwKLSAgICAweDEuMjM1YjMzMWQ4ZjZlYzc0YWEzZGU1YWVkMTVmYTNmNjhwLTIsCi0gICAgLTB4MS40MDBlYzliZTJhYmI1cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQyCi0gICAgLTB4MS5iNWQ1NDViMTA5YzEyMzJiNjFkZDI4ZDgwMzVkOTVjYnAtMSwKLSAgICAweDEuMDk2YWMwMmVjNDI5ZjIyNWM5OWI4OWJiNGM5ZTVkM2VwLTEsCi0gICAgMHgxLjUwNzg5MjcyOTVmMmVwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDMKLSAgICAweDEuYjVkNTQ1YjEwOWMxMjMyYjYxZGQyOGQ4MDM1ZDk1Y2JwLTEsCi0gICAgMHgxLjA5NmFjMDJlYzQyOWYyMjVjOTliODliYjRjOWU1ZDNlcC0xLAotICAgIC0weDEuNTA3ODkyNzI5NWYyZXAyLAotICB9LAotICB7IC8vIEVudHJ5IDU0NAotICAgIC0weDEuNjQzMDgwZDY3YWNlNDhjMGRkMWZlM2EwNmJiYzRiZjVwLTEsCi0gICAgMHgxLjZmY2I3YzZiOGI4Zjc3M2UzYjQyMWRkZWQ2ZmMxZjI2cC0xLAotICAgIDB4MS42MGUyNWIyNzAxMmE3cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ1Ci0gICAgMHgxLjY0MzA4MGQ2N2FjZTQ4YzBkZDFmZTNhMDZiYmM0YmY1cC0xLAotICAgIDB4MS42ZmNiN2M2YjhiOGY3NzNlM2I0MjFkZGVkNmZjMWYyNnAtMSwKLSAgICAtMHgxLjYwZTI1YjI3MDEyYTdwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDYKLSAgICAtMHgxLmY2N2VhOTc1Yjg2ZjVkNGFhOTI3MTZjYzA3NzQ3M2E3cC0yLAotICAgIDB4MS5iZTFkN2MzNTM0YzI4MGRhYjQzZGNlZDY3MDMzMGI2M3AtMSwKLSAgICAweDEuNzE0YzIzZGI2YzYyMHAyLAotICB9LAotICB7IC8vIEVudHJ5IDU0NwotICAgIDB4MS5mNjdlYTk3NWI4NmY1ZDRhYTkyNzE2Y2MwNzc0NzNhN3AtMiwKLSAgICAweDEuYmUxZDdjMzUzNGMyODBkYWI0M2RjZWQ2NzAzMzBiNjNwLTEsCi0gICAgLTB4MS43MTRjMjNkYjZjNjIwcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ4Ci0gICAgLTB4MS4wM2JlMDZmOTdjYzRkNzhmZGNjYmNhMWQ0MGU4NjAxMXAtMiwKLSAgICAweDEuZWY0MTQ1YjRhZWNmMzQyNzA5YTNiMTkzMjBkMWIxOTRwLTEsCi0gICAgMHgxLjgxYjVlYzhmZDc5OTlwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDkKLSAgICAweDEuMDNiZTA2Zjk3Y2M0ZDc4ZmRjY2JjYTFkNDBlODYwMTFwLTIsCi0gICAgMHgxLmVmNDE0NWI0YWVjZjM0MjcwOWEzYjE5MzIwZDFiMTk0cC0xLAotICAgIC0weDEuODFiNWVjOGZkNzk5OXAyLAotICB9LAotICB7IC8vIEVudHJ5IDU1MAotICAgIDB4MS5lZmIyNmVmOTMwYzRjM2ZhMzI0NTk2M2MxZGNlYzBhNnAtNSwKLSAgICAweDEuZmYwZmQyYzk2YWRmYmFlNTc2OTgxZWU0YjM0NzY5ZGVwLTEsCi0gICAgMHgxLmVmZmZmZmZmZmZmZmZwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUxCi0gICAgLTB4MS5lZmIyNmVmOTMwYzRjM2ZhMzI0NTk2M2MxZGNlYzBhNnAtNSwKLSAgICAweDEuZmYwZmQyYzk2YWRmYmFlNTc2OTgxZWU0YjM0NzY5ZGVwLTEsCi0gICAgLTB4MS5lZmZmZmZmZmZmZmZmcC01LAotICB9LAotICB7IC8vIEVudHJ5IDU1MgotICAgIDB4MS5lZmIyNmVmOTMwYzRkM2YyYjBkYmUxOTMxYmE1YWU2NHAtNSwKLSAgICAweDEuZmYwZmQyYzk2YWRmYmFkNWY5MDRhNzFiMmQyMTBhMmFwLTEsCi0gICAgMHgxLmZwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUzCi0gICAgLTB4MS5lZmIyNmVmOTMwYzRkM2YyYjBkYmUxOTMxYmE1YWU2NHAtNSwKLSAgICAweDEuZmYwZmQyYzk2YWRmYmFkNWY5MDRhNzFiMmQyMTBhMmFwLTEsCi0gICAgLTB4MS5mcC01LAotICB9LAotICB7IC8vIEVudHJ5IDU1NAotICAgIDB4MS5lZmIyNmVmOTMwYzRlM2ViMmY3MjJjZWExOTdjMjAzNnAtNSwKLSAgICAweDEuZmYwZmQyYzk2YWRmYmFjNjdiNzEyZjUxYTZmYTJhYjNwLTEsCi0gICAgMHgxLmYwMDAwMDAwMDAwMDFwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU1Ci0gICAgLTB4MS5lZmIyNmVmOTMwYzRlM2ViMmY3MjJjZWExOTdjMjAzNnAtNSwKLSAgICAweDEuZmYwZmQyYzk2YWRmYmFjNjdiNzEyZjUxYTZmYTJhYjNwLTEsCi0gICAgLTB4MS5mMDAwMDAwMDAwMDAxcC01LAotICB9LAotICB7IC8vIEVudHJ5IDU1NgotICAgIDB4MS5mNmJhYWExMzFkZTYzM2FkNGUwZTdkNjQ2NWQxMmEwNXAtNCwKLSAgICAweDEuZmMyMTAwNTU0NjdmZTVjOGY3NmU3NWZkNzA4MzgxOGNwLTEsCi0gICAgMHgxLmY3ZmZmZmZmZmZmZmZwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU3Ci0gICAgLTB4MS5mNmJhYWExMzFkZTYzM2FkNGUwZTdkNjQ2NWQxMmEwNXAtNCwKLSAgICAweDEuZmMyMTAwNTU0NjdmZTVjOGY3NmU3NWZkNzA4MzgxOGNwLTEsCi0gICAgLTB4MS5mN2ZmZmZmZmZmZmZmcC00LAotICB9LAotICB7IC8vIEVudHJ5IDU1OAotICAgIDB4MS5mNmJhYWExMzFkZTY0MzhlNTYxMTI3OTg2NGZlNzY2M3AtNCwKLSAgICAweDEuZmMyMTAwNTU0NjdmZTU4YTIwMTkzMzk5YjNiYzBkZDJwLTEsCi0gICAgMHgxLmY4MHAtNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTkKLSAgICAtMHgxLmY2YmFhYTEzMWRlNjQzOGU1NjExMjc5ODY0ZmU3NjYzcC00LAotICAgIDB4MS5mYzIxMDA1NTQ2N2ZlNThhMjAxOTMzOTliM2JjMGRkMnAtMSwKLSAgICAtMHgxLmY4MHAtNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjAKLSAgICAweDEuZjZiYWFhMTMxZGU2NTM2ZjVlMTNkMWNjNjQyOWNjMDdwLTQsCi0gICAgMHgxLmZjMjEwMDU1NDY3ZmU1NGI0OGMzZjEzNWY2ZjI5ZGY3cC0xLAotICAgIDB4MS5mODAwMDAwMDAwMDAxcC00LAotICB9LAotICB7IC8vIEVudHJ5IDU2MQotICAgIC0weDEuZjZiYWFhMTMxZGU2NTM2ZjVlMTNkMWNjNjQyOWNjMDdwLTQsCi0gICAgMHgxLmZjMjEwMDU1NDY3ZmU1NGI0OGMzZjEzNWY2ZjI5ZGY3cC0xLAotICAgIC0weDEuZjgwMDAwMDAwMDAwMXAtNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjIKLSAgICAweDEuNGE4YzNiNGU5YzdmZjAwYTM2ZTA2MWEwZDIyOTUwOTNwLTMsCi0gICAgMHgxLmY5NDk4NGIyNTUyZTE5ZTczMjk0MTNiOGMyZThkYzUxcC0xLAotICAgIDB4MS40YmZmZmZmZmZmZmZmcC0zLAotICB9LAotICB7IC8vIEVudHJ5IDU2MwotICAgIC0weDEuNGE4YzNiNGU5YzdmZjAwYTM2ZTA2MWEwZDIyOTUwOTNwLTMsCi0gICAgMHgxLmY5NDk4NGIyNTUyZTE5ZTczMjk0MTNiOGMyZThkYzUxcC0xLAotICAgIC0weDEuNGJmZmZmZmZmZmZmZnAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjQKLSAgICAweDEuNGE4YzNiNGU5YzdmZmZkNDgzMDVmNDRhNDJmNWY1MGZwLTMsCi0gICAgMHgxLmY5NDk4NGIyNTUyZTE5NDFlYzc2NmM2YTgyZWNlNGEzcC0xLAotICAgIDB4MS40YzBwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY1Ci0gICAgLTB4MS40YThjM2I0ZTljN2ZmZmQ0ODMwNWY0NGE0MmY1ZjUwZnAtMywKLSAgICAweDEuZjk0OTg0YjI1NTJlMTk0MWVjNzY2YzZhODJlY2U0YTNwLTEsCi0gICAgLTB4MS40YzBwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY2Ci0gICAgMHgxLjRhOGMzYjRlOWM4MDBmOWVjZjJiODZmM2IzYmQ2ZjVhcC0zLAotICAgIDB4MS5mOTQ5ODRiMjU1MmUxODljYTY1OGM1MWM0MmU5MDdjZXAtMSwKLSAgICAweDEuNGMwMDAwMDAwMDAwMXAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjcKLSAgICAtMHgxLjRhOGMzYjRlOWM4MDBmOWVjZjJiODZmM2IzYmQ2ZjVhcC0zLAotICAgIDB4MS5mOTQ5ODRiMjU1MmUxODljYTY1OGM1MWM0MmU5MDdjZXAtMSwKLSAgICAtMHgxLjRjMDAwMDAwMDAwMDFwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY4Ci0gICAgMHgxLjJlOWNkOTViYWJhMzI1ZmU2MDY3MjMzZDQ0OTZhYWFjcC0yLAotICAgIDB4MS5lOTIxZGQ0MmYwOWJhODY4NjAzZWEzNzZmNmUyZDAxMnAtMSwKLSAgICAweDEuMzMzMzMzMzMzMzMzMnAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjkKLSAgICAtMHgxLjJlOWNkOTViYWJhMzI1ZmU2MDY3MjMzZDQ0OTZhYWFjcC0yLAotICAgIDB4MS5lOTIxZGQ0MmYwOWJhODY4NjAzZWEzNzZmNmUyZDAxMnAtMSwKLSAgICAtMHgxLjMzMzMzMzMzMzMzMzJwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcwCi0gICAgMHgxLjJlOWNkOTViYWJhMzM1NDc2ZjUxM2FjMjIxZDA3OGM3cC0yLAotICAgIDB4MS5lOTIxZGQ0MmYwOWJhNjBiMjY4YmVjMWZiMDg3OGE0MnAtMSwKLSAgICAweDEuMzMzMzMzMzMzMzMzM3AtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzEKLSAgICAtMHgxLjJlOWNkOTViYWJhMzM1NDc2ZjUxM2FjMjIxZDA3OGM3cC0yLAotICAgIDB4MS5lOTIxZGQ0MmYwOWJhNjBiMjY4YmVjMWZiMDg3OGE0MnAtMSwKLSAgICAtMHgxLjMzMzMzMzMzMzMzMzNwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcyCi0gICAgMHgxLjJlOWNkOTViYWJhMzQ0OTA3ZTNiNTI0NmZlZjc1ZDE1cC0yLAotICAgIDB4MS5lOTIxZGQ0MmYwOWJhM2FkZWNkOTM0Yzg2YTBkYjI1NHAtMSwKLSAgICAweDEuMzMzMzMzMzMzMzMzNHAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzMKLSAgICAtMHgxLjJlOWNkOTViYWJhMzQ0OTA3ZTNiNTI0NmZlZjc1ZDE1cC0yLAotICAgIDB4MS5lOTIxZGQ0MmYwOWJhM2FkZWNkOTM0Yzg2YTBkYjI1NHAtMSwKLSAgICAtMHgxLjMzMzMzMzMzMzMzMzRwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc0Ci0gICAgMHgxLjNmYWVmYzdhNTQ2NmVmMzA0NWMzZjFiZTcxNmFkNTY4cC0xLAotICAgIDB4MS44ZmVlZGI4NmJmMGVmMzE1OGY4YTFkY2JlZjQ5ZDEyM3AtMSwKLSAgICAweDEuNTk0MzE3YWNjNGVmOHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzUKLSAgICAtMHgxLjNmYWVmYzdhNTQ2NmVmMzA0NWMzZjFiZTcxNmFkNTY4cC0xLAotICAgIDB4MS44ZmVlZGI4NmJmMGVmMzE1OGY4YTFkY2JlZjQ5ZDEyM3AtMSwKLSAgICAtMHgxLjU5NDMxN2FjYzRlZjhwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc2Ci0gICAgMHgxLjNmYWVmYzdhNTQ2NmZiYWZiY2EwMjdiNmU4ZGI4YzA0cC0xLAotICAgIDB4MS44ZmVlZGI4NmJmMGVlOTE4MTdhNjRiMjhiNzllNTExOXAtMSwKLSAgICAweDEuNTk0MzE3YWNjNGVmOXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzcKLSAgICAtMHgxLjNmYWVmYzdhNTQ2NmZiYWZiY2EwMjdiNmU4ZGI4YzA0cC0xLAotICAgIDB4MS44ZmVlZGI4NmJmMGVlOTE4MTdhNjRiMjhiNzllNTExOXAtMSwKLSAgICAtMHgxLjU5NDMxN2FjYzRlZjlwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc4Ci0gICAgMHgxLjNmYWVmYzdhNTQ2NzA4MmYzMzdjNWRhZjVmZmM1NmUycC0xLAotICAgIDB4MS44ZmVlZGI4NmJmMGVkZjFhOWZjMjc4ODU3ZjhlZDU1OXAtMSwKLSAgICAweDEuNTk0MzE3YWNjNGVmYXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzkKLSAgICAtMHgxLjNmYWVmYzdhNTQ2NzA4MmYzMzdjNWRhZjVmZmM1NmUycC0xLAotICAgIDB4MS44ZmVlZGI4NmJmMGVkZjFhOWZjMjc4ODU3ZjhlZDU1OXAtMSwKLSAgICAtMHgxLjU5NDMxN2FjYzRlZmFwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgwCi0gICAgMHgxLjY4ODhhNGUxMzRiMmRlZjViZWE1MWY0Y2Q3ZDY0N2M2cC0xLAotICAgIDB4MS42Yjg5OGZhOWVmYjVkZDZmOWUxN2UzNDQyZDU5YjI0MXAtMSwKLSAgICAweDEuOGZmZmZmZmZmZmZmZnAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODEKLSAgICAtMHgxLjY4ODhhNGUxMzRiMmRlZjViZWE1MWY0Y2Q3ZDY0N2M2cC0xLAotICAgIDB4MS42Yjg5OGZhOWVmYjVkZDZmOWUxN2UzNDQyZDU5YjI0MXAtMSwKLSAgICAtMHgxLjhmZmZmZmZmZmZmZmZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgyCi0gICAgMHgxLjY4ODhhNGUxMzRiMmVhNTIwYjIyNmVjYTg2OTRiM2EycC0xLAotICAgIDB4MS42Yjg5OGZhOWVmYjVkMjJiNThmMGQ5OWU5NjM0OTMxYXAtMSwKLSAgICAweDEuOXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODMKLSAgICAtMHgxLjY4ODhhNGUxMzRiMmVhNTIwYjIyNmVjYTg2OTRiM2EycC0xLAotICAgIDB4MS42Yjg5OGZhOWVmYjVkMjJiNThmMGQ5OWU5NjM0OTMxYXAtMSwKLSAgICAtMHgxLjlwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTg0Ci0gICAgMHgxLjY4ODhhNGUxMzRiMmY1YWU1NzlmYmU0ODM0ZjhmZDU1cC0xLAotICAgIDB4MS42Yjg5OGZhOWVmYjVjNmU3MTNjOWNmZjhmZWI0OTE4ZnAtMSwKLSAgICAweDEuOTAwMDAwMDAwMDAwMXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODUKLSAgICAtMHgxLjY4ODhhNGUxMzRiMmY1YWU1NzlmYmU0ODM0ZjhmZDU1cC0xLAotICAgIDB4MS42Yjg5OGZhOWVmYjVjNmU3MTNjOWNmZjhmZWI0OTE4ZnAtMSwKLSAgICAtMHgxLjkwMDAwMDAwMDAwMDFwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTg2Ci0gICAgLTAuMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS4wcC0xMDc0LAotICB9LAotICB7IC8vIEVudHJ5IDU4NwotICAgIDAuMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLjBwLTEwNzQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTg4Ci0gICAgLTAuMCwKLSAgICAweDEucDAsCi0gICAgLTAuMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODkKLSAgICAwLjAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS4wcC0xMDc0LAotICB9LAotICB7IC8vIEVudHJ5IDU5MAotICAgIC0wLjAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMHAtMTA3NCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTEKLSAgICAweDEuOTFmNjVmMTBkZDgxMmEwYjk1ZmY3MTg3MWFiNDgyMDdwLTUsCi0gICAgMHgxLmZmNjIxZTM3OTZkN2RlNGE4YWI3ZDdjZDg0ODhmNDk5cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE3cC01LAotICB9LAotICB7IC8vIEVudHJ5IDU5MgotICAgIC0weDEuOTFmNjVmMTBkZDgxMmEwYjk1ZmY3MTg3MWFiNDgyMDdwLTUsCi0gICAgMHgxLmZmNjIxZTM3OTZkN2RlNGE4YWI3ZDdjZDg0ODhmNDk5cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTMKLSAgICAweDEuOTFmNjVmMTBkZDgxM2EwNmE2ZjEyZTNkZDlhNmE0MWVwLTUsCi0gICAgMHgxLmZmNjIxZTM3OTZkN2RlM2RmYjA0ZGY0Njk4N2Y2NDUwcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC01LAotICB9LAotICB7IC8vIEVudHJ5IDU5NAotICAgIC0weDEuOTFmNjVmMTBkZDgxM2EwNmE2ZjEyZTNkZDlhNmE0MWVwLTUsCi0gICAgMHgxLmZmNjIxZTM3OTZkN2RlM2RmYjA0ZGY0Njk4N2Y2NDUwcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTUKLSAgICAweDEuOTFmNjVmMTBkZDgxNGEwMWI3ZTJlYWY0OTg5ODYxYjdwLTUsCi0gICAgMHgxLmZmNjIxZTM3OTZkN2RlMzE2YjUxZTZiZmFjNzU1NDJmcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cC01LAotICB9LAotICB7IC8vIEVudHJ5IDU5NgotICAgIC0weDEuOTFmNjVmMTBkZDgxNGEwMWI3ZTJlYWY0OTg5ODYxYjdwLTUsCi0gICAgMHgxLmZmNjIxZTM3OTZkN2RlMzE2YjUxZTZiZmFjNzU1NDJmcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTcKLSAgICAweDEuOTE3YTZiYzI5YjQyYTljZDJlNzg3ZWUwMGNhOGY4ZTNwLTQsCi0gICAgMHgxLmZkODhkYTNkMTI1MjVhMjA4ODk4Y2Y1OGRlZDBlZWIzcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE3cC00LAotICB9LAotICB7IC8vIEVudHJ5IDU5OAotICAgIC0weDEuOTE3YTZiYzI5YjQyYTljZDJlNzg3ZWUwMGNhOGY4ZTNwLTQsCi0gICAgMHgxLmZkODhkYTNkMTI1MjVhMjA4ODk4Y2Y1OGRlZDBlZWIzcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTkKLSAgICAweDEuOTE3YTZiYzI5YjQyYjliOTc1NGE2NzcyOWY3OTM0NmJwLTQsCi0gICAgMHgxLmZkODhkYTNkMTI1MjU5ZWU1OTRiNTcwNTc2N2FiNjQ5cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC00LAotICB9LAotICB7IC8vIEVudHJ5IDYwMAotICAgIC0weDEuOTE3YTZiYzI5YjQyYjliOTc1NGE2NzcyOWY3OTM0NmJwLTQsCi0gICAgMHgxLmZkODhkYTNkMTI1MjU5ZWU1OTRiNTcwNTc2N2FiNjQ5cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDEKLSAgICAweDEuOTE3YTZiYzI5YjQyYzlhNWJjMWM1MDA1MzI0N2RlNzhwLTQsCi0gICAgMHgxLmZkODhkYTNkMTI1MjU5YmMyOWZkZGViMjBlMjI4MDU2cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cC00LAotICB9LAotICB7IC8vIEVudHJ5IDYwMgotICAgIC0weDEuOTE3YTZiYzI5YjQyYzlhNWJjMWM1MDA1MzI0N2RlNzhwLTQsCi0gICAgMHgxLmZkODhkYTNkMTI1MjU5YmMyOWZkZGViMjBlMjI4MDU2cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDMKLSAgICAweDEuOGY4YjgzYzY5YTYwOTc1Zjk4NDUzODg2Zjk1M2EwZTVwLTMsCi0gICAgMHgxLmY2Mjk3Y2ZmNzVjYjAzYWIxZmNlZDYzMzdlMzVhMjQ1cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE3cC0zLAotICB9LAotICB7IC8vIEVudHJ5IDYwNAotICAgIC0weDEuOGY4YjgzYzY5YTYwOTc1Zjk4NDUzODg2Zjk1M2EwZTVwLTMsCi0gICAgMHgxLmY2Mjk3Y2ZmNzVjYjAzYWIxZmNlZDYzMzdlMzVhMjQ1cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDUKLSAgICAweDEuOGY4YjgzYzY5YTYwYTcxMGU0MmQzNDM1NTE2ZGRhY2NwLTMsCi0gICAgMHgxLmY2Mjk3Y2ZmNzVjYjAyZTM1YTBjZjJlNjRkZTYwNjI2cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0zLAotICB9LAotICB7IC8vIEVudHJ5IDYwNgotICAgIC0weDEuOGY4YjgzYzY5YTYwYTcxMGU0MmQzNDM1NTE2ZGRhY2NwLTMsCi0gICAgMHgxLmY2Mjk3Y2ZmNzVjYjAyZTM1YTBjZjJlNjRkZTYwNjI2cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDcKLSAgICAweDEuOGY4YjgzYzY5YTYwYjZjMjMwMTUyZmUzYTk4MWQ2ODZwLTMsCi0gICAgMHgxLmY2Mjk3Y2ZmNzVjYjAyMWI5NDRiMGY5OTFkOGU5MTYxcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cC0zLAotICB9LAotICB7IC8vIEVudHJ5IDYwOAotICAgIC0weDEuOGY4YjgzYzY5YTYwYjZjMjMwMTUyZmUzYTk4MWQ2ODZwLTMsCi0gICAgMHgxLmY2Mjk3Y2ZmNzVjYjAyMWI5NDRiMGY5OTFkOGU5MTYxcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDkKLSAgICAweDEuODdkZTJhNmFlYTk2MWEzZTlkZWRlYTU3ZmU3ZTY1MTRwLTIsCi0gICAgMHgxLmQ5MDZiY2YzMjhkNDY2NzJkOWMxYTg2NTg5OGU1OTY2cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE3cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDYxMAotICAgIC0weDEuODdkZTJhNmFlYTk2MWEzZTlkZWRlYTU3ZmU3ZTY1MTRwLTIsCi0gICAgMHgxLmQ5MDZiY2YzMjhkNDY2NzJkOWMxYTg2NTg5OGU1OTY2cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTEKLSAgICAweDEuODdkZTJhNmFlYTk2MjkwNmQzZDU4MzllYTFhNWJjZjBwLTIsCi0gICAgMHgxLmQ5MDZiY2YzMjhkNDYzNjMxZDZjZDI5MDVkNGIxM2Y1cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDYxMgotICAgIC0weDEuODdkZTJhNmFlYTk2MjkwNmQzZDU4MzllYTFhNWJjZjBwLTIsCi0gICAgMHgxLmQ5MDZiY2YzMjhkNDYzNjMxZDZjZDI5MDVkNGIxM2Y1cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTMKLSAgICAweDEuODdkZTJhNmFlYTk2MzdjZjA5YmQxY2U1NDRiNDk2ZWFwLTIsCi0gICAgMHgxLmQ5MDZiY2YzMjhkNDYwNTM2MTE3ZmNiYjMwZWEzZTE3cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDYxNAotICAgIC0weDEuODdkZTJhNmFlYTk2MzdjZjA5YmQxY2U1NDRiNDk2ZWFwLTIsCi0gICAgMHgxLmQ5MDZiY2YzMjhkNDYwNTM2MTE3ZmNiYjMwZWEzZTE3cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTUKLSAgICAweDEuNmEwOWU2NjdmM2JjYmE5OWFmYjAxMzU3Mjk0NTc4NzRwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2Q3NzdiNjQ2MTM3NmFiNTIzMjQycC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE3cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDYxNgotICAgIC0weDEuNmEwOWU2NjdmM2JjYmE5OWFmYjAxMzU3Mjk0NTc4NzRwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2Q3NzdiNjQ2MTM3NmFiNTIzMjQycC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTcKLSAgICAweDEuNmEwOWU2NjdmM2JjYzVlOWZlZTM1MmY1MGZkM2Y0ZTlwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2NjMjc2NzEyZDNkOGM1NTAyMzg3cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDYxOAotICAgIC0weDEuNmEwOWU2NjdmM2JjYzVlOWZlZTM1MmY1MGZkM2Y0ZTlwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2NjMjc2NzEyZDNkOGM1NTAyMzg3cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTkKLSAgICAweDEuNmEwOWU2NjdmM2JjZDEzYTRlMTY5MjkyZjYwN2VlZTVwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2MwZDcxN2RmOTQzYWRlZjM5MjUzcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDYyMAotICAgIC0weDEuNmEwOWU2NjdmM2JjZDEzYTRlMTY5MjkyZjYwN2VlZTVwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2MwZDcxN2RmOTQzYWRlZjM5MjUzcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjEKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZwLTEsCi0gICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWMwYjhiNTBicC01MiwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AwLAotICB9LAotICB7IC8vIEVudHJ5IDYyMgotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZwLTEsCi0gICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWMwYjhiNTBicC01MiwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjMKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzFwLTEsCi0gICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0NDE5ZmE4cC01NCwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHAwLAotICB9LAotICB7IC8vIEVudHJ5IDYyNAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzFwLTEsCi0gICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0NDE5ZmE4cC01NCwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3OWI5NjNwLTEsCi0gICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3ZGJjZmJhMHAtNTMsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjYKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzliOTYzcC0xLAotICAgIC0weDEuNzJjZWNlNjc1ZDFmYzhmOGNiYjViZjZjN2RiY2ZiYTBwLTUzLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAwLAotICB9LAotICB7IC8vIEVudHJ5IDYyNwotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDliZmFlZWQ0MnAtNTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTdkNWJmZnAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AxLAotICB9LAotICB7IC8vIEVudHJ5IDYyOAotICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ5YmZhZWVkNDJwLTUxLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjk3ZDViZmZwLTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI5Ci0gICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0MzZlMmVkcC01MywKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjMwCi0gICAgLTB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwNDM2ZTJlZHAtNTMsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNXAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzEKLSAgICAtMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzdkNWJiYzVjcC01MiwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjMyCi0gICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzdkNWJiYzVjcC01MiwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAxLAotICB9LAotICB7IC8vIEVudHJ5IDYzMwotICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ5YmI4N2NlMWJwLTUwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNWY1NmZmZXAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AyLAotICB9LAotICB7IC8vIEVudHJ5IDYzNAotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDliYjg3Y2UxYnAtNTAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZlcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AyLAotICB9LAotICB7IC8vIEVudHJ5IDYzNQotICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQwYmYwMDNwLTUyLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWM4ODMxN3AtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHAyLAotICB9LAotICB7IC8vIEVudHJ5IDYzNgotICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwNDBiZjAwM3AtNTIsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzE3cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAyLAotICB9LAotICB7IC8vIEVudHJ5IDYzNwotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3YmQ2YmY0ZHAtNTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3OWI5NjMxcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM4Ci0gICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3YmQ2YmY0ZHAtNTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY3OWI5NjMxcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAyLAotICB9LAotICB7IC8vIEVudHJ5IDYzOQotICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ5YWFlYjUxODJwLTQ5LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5N2Q1YmZmOHAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AzLAotICB9LAotICB7IC8vIEVudHJ5IDY0MAotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDlhYWViNTE4MnAtNDksCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjk3ZDViZmY4cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxN3AzLAotICB9LAotICB7IC8vIEVudHJ5IDY0MQotICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDM2MDI0NWNwLTUxLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1ZXAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHAzLAotICB9LAotICB7IC8vIEVudHJ5IDY0MgotICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwMzYwMjQ1Y3AtNTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiMjIwYzVlcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAzLAotICB9LAotICB7IC8vIEVudHJ5IDY0MwotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3NWMyY2IwZXAtNTAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRlNmU1OGM0cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ0Ci0gICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3NWMyY2IwZXAtNTAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRlNmU1OGM0cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAzLAotICB9LAotICB7IC8vIEVudHJ5IDY0NQotICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ5Njg3OTVmMWNwLTQ4LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU1ZjU2ZmZlMXAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3A0LAotICB9LAotICB7IC8vIEVudHJ5IDY0NgotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDk2ODc5NWYxY3AtNDgsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTVmNTZmZmUxcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxN3A0LAotICB9LAotICB7IC8vIEVudHJ5IDY0NwotICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDBiMGY1YmZwLTUwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzg4MzE3YXAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHA0LAotICB9LAotICB7IC8vIEVudHJ5IDY0OAotICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjcwMGIwZjViZnAtNTAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMTdhcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA0LAotICB9LAotICB7IC8vIEVudHJ5IDY0OQotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM1ZDcyZmExMXAtNDksCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5Yjk2MzEzcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUwCi0gICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM1ZDcyZmExMXAtNDksCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5Yjk2MzEzcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA0LAotICB9LAotICB7IC8vIEVudHJ5IDY1MQotICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ4NWViMTk1ODRwLTQ3LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjk3ZDViZmY4N3AtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3A1LAotICB9LAotICB7IC8vIEVudHJ5IDY1MgotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDg1ZWIxOTU4NHAtNDcsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTdkNWJmZjg3cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxN3A1LAotICB9LAotICB7IC8vIEVudHJ5IDY1MwotICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI2ZjVmNDNiNGNwLTQ5LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiMjIwYzVlOXAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHA1LAotICB9LAotICB7IC8vIEVudHJ5IDY1NAotICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjZmNWY0M2I0Y3AtNDksCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNWU5cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA1LAotICB9LAotICB7IC8vIEVudHJ5IDY1NQotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmJmYzMzYjYxZnAtNDgsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGU2ZTU4YzRjcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cDUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU2Ci0gICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmJmYzMzYjYxZnAtNDgsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGU2ZTU4YzRjcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA1LAotICB9LAotICB7IC8vIEVudHJ5IDY1NwotICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDQ0Mzc5MjZmMjVwLTQ2LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTVmNTZmZmUxZHAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3A2LAotICB9LAotICB7IC8vIEVudHJ5IDY1OAotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNDQzNzkyNmYyNXAtNDYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNWY1NmZmZTFkcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxN3A2LAotICB9LAotICB7IC8vIEVudHJ5IDY1OQotICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI2Y2IwMTUxN2RwLTQ4LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMTdhN3AtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHA2LAotICB9LAotICB7IC8vIEVudHJ5IDY2MAotICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjZjYjAxNTE3ZHAtNDgsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZWM4ODMxN2E3cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA2LAotICB9LAotICB7IC8vIEVudHJ5IDY2MQotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmE3NzM2YTY1OHAtNDcsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzliOTYzMTMxcC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cDYsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYyCi0gICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmE3NzM2YTY1OHAtNDcsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNzliOTYzMTMxcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA2LAotICB9LAotICB7IC8vIEVudHJ5IDY2MwotICAgIC0weDEuNDY5ODk4Y2M1MTcwMWI4MzlhMjUyMDMzOWIxNWQ1YWFwLTQ1LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmOTdkNWJmZjg3NHAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3A3LAotICB9LAotICB7IC8vIEVudHJ5IDY2NAotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwMzM5YjE1ZDVhYXAtNDUsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5N2Q1YmZmODc0cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxN3A3LAotICB9LAotICB7IC8vIEVudHJ5IDY2NQotICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI2MWYzNWFhNDNwLTQ3LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmIyMjBjNWU5ZHAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHA3LAotICB9LAotICB7IC8vIEVudHJ5IDY2NgotICAgIDB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjYxZjM1YWE0M3AtNDcsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1ZTlkcC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA3LAotICB9LAotICB7IC8vIEVudHJ5IDY2NwotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNjQ2MzQyNjczYXAtNDYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjNGM2cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cDcsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY4Ci0gICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNjQ2MzQyNjczYXAtNDYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkZTZlNThjNGM2cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXA3LAotICB9LAotICB7IC8vIEVudHJ5IDY2OQotICAgIDB4MS42YTA5ZTY2N2YzYmNmZmE2MGMwZjUzMzQwZmQyNDkwNHAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzkyNmI1OWU2ZDM5OWJkMWI5MDZjcC0xLAotICAgIDB4MS4yZDk3YzdmMzMyMWQxcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcwCi0gICAgLTB4MS42YTA5ZTY2N2YzYmNmZmE2MGMwZjUzMzQwZmQyNDkwNHAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzkyNmI1OWU2ZDM5OWJkMWI5MDZjcC0xLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXAxLAotICB9LAotICB7IC8vIEVudHJ5IDY3MQotICAgIDB4MS42YTA5ZTY2N2YzYmNkMjY0Y2Y0MjU0YmM3YWIwYzlmYXAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2JmYWM5NmIzZDIxMTVhM2MzZTIxcC0xLAotICAgIDB4MS4yZDk3YzdmMzMyMWQycDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcyCi0gICAgLTB4MS42YTA5ZTY2N2YzYmNkMjY0Y2Y0MjU0YmM3YWIwYzlmYXAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2JmYWM5NmIzZDIxMTVhM2MzZTIxcC0xLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkMnAxLAotICB9LAotICB7IC8vIEVudHJ5IDY3MwotICAgIDB4MS42YTA5ZTY2N2YzYmNhNTIzOTI3NTU2NDRkZmU3MjM1N3AtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2VjZWRkMzgwZDA4OGYxYjRjNDNjcC0xLAotICAgIDB4MS4yZDk3YzdmMzMyMWQzcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc0Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmNhNTIzOTI3NTU2NDRkZmU3MjM1N3AtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2VjZWRkMzgwZDA4OGYxYjRjNDNjcC0xLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkM3AxLAotICB9LAotICB7IC8vIEVudHJ5IDY3NQotICAgIC0weDEuNmEwOWU2NjdmM2JjOGMyZGYxYjc1MmI2MDZhMGE0NzJwLTEsCi0gICAgLTB4MS42YTA5ZTY2N2YzYmQwNWUzNzQzZWQ0MTdjNDRmYmE0NnAtMSwKLSAgICAweDEuZjZhN2EyOTU1Mzg1ZHAxLAotICB9LAotICB7IC8vIEVudHJ5IDY3NgotICAgIDB4MS42YTA5ZTY2N2YzYmM4YzJkZjFiNzUyYjYwNmEwYTQ3MnAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDA1ZTM3NDNlZDQxN2M0NGZiYTQ2cC0xLAotICAgIC0weDEuZjZhN2EyOTU1Mzg1ZHAxLAotICB9LAotICB7IC8vIEVudHJ5IDY3NwotICAgIC0weDEuNmEwOWU2NjdmM2JjYjk2ZjJlODQ1MTJkYTQ4OGZmMmRwLTEsCi0gICAgLTB4MS42YTA5ZTY2N2YzYmNkOGEyMzc3MWQ1YTAyZmY1ZTg0M3AtMSwKLSAgICAweDEuZjZhN2EyOTU1Mzg1ZXAxLAotICB9LAotICB7IC8vIEVudHJ5IDY3OAotICAgIDB4MS42YTA5ZTY2N2YzYmNiOTZmMmU4NDUxMmRhNDg4ZmYyZHAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2Q4YTIzNzcxZDVhMDJmZjVlODQzcC0xLAotICAgIC0weDEuZjZhN2EyOTU1Mzg1ZXAxLAotICB9LAotICB7IC8vIEVudHJ5IDY3OQotICAgIC0weDEuNmEwOWU2NjdmM2JjZTZiMDZiNTE0ZmE1M2NjOTMyNGZwLTEsCi0gICAgLTB4MS42YTA5ZTY2N2YzYmNhYjYwZmFhNGQ3Mjg5NWYzZWVhNXAtMSwKLSAgICAweDEuZjZhN2EyOTU1Mzg1ZnAxLAotICB9LAotICB7IC8vIEVudHJ5IDY4MAotICAgIDB4MS42YTA5ZTY2N2YzYmNlNmIwNmI1MTRmYTUzY2M5MzI0ZnAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2FiNjBmYWE0ZDcyODk1ZjNlZWE1cC0xLAotICAgIC0weDEuZjZhN2EyOTU1Mzg1ZnAxLAotICB9LAotICB7IC8vIEVudHJ5IDY4MQotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZThiMjdiNmFwLTEsCi0gICAgLTB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4Mzc0YzFkMTYzMXAtNTAsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDFwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODIKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZThiMjdiNmFwLTEsCi0gICAgLTB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4Mzc0YzFkMTYzMXAtNTAsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQxcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgzCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjUwYzliZHAtMSwKLSAgICAtMHgxLmE3OTM5NGM5ZThhMGE1MTU5Y2RlYzFiYTg2Mzc3YzkycC01MywKLSAgICAweDEuMmQ5N2M3ZjMzMjFkMnAyLAotICB9LAotICB7IC8vIEVudHJ5IDY4NAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjUwYzliZHAtMSwKLSAgICAtMHgxLmE3OTM5NGM5ZThhMGE1MTU5Y2RlYzFiYTg2Mzc3YzkycC01MywKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDJwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODUKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1ZWYxODEwcC0xLAotICAgIDB4MS45NjFiMWFjZDg1ZDdkNmJhOThjODRmOTE1YmJjYmM2Y3AtNTEsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDNwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODYKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjVlZjE4MTBwLTEsCi0gICAgMHgxLjk2MWIxYWNkODVkN2Q2YmE5OGM4NGY5MTViYmNiYzZjcC01MSwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDNwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODcKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDM5NjIxOTNiNTM3MzA2OWJhMGMycC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmM1OGFmNGNiYWQzNWFhYmIyMDBmNHAtMSwKLSAgICAweDEuNWZkYmJlOWJiYTc3NHAyLAotICB9LAotICB7IC8vIEVudHJ5IDY4OAotICAgIDB4MS42YTA5ZTY2N2YzYmQzOTYyMTkzYjUzNzMwNjliYTBjMnAtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JjNThhZjRjYmFkMzVhYWJiMjAwZjRwLTEsCi0gICAgLTB4MS41ZmRiYmU5YmJhNzc0cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg5Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmNkZWRmOWZhMTU2ODNlNTFmN2U2MHAtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JjYjMzMWM2NTRkMDQ5ZWViYTM4MGZwLTEsCi0gICAgMHgxLjVmZGJiZTliYmE3NzVwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTAKLSAgICAweDEuNmEwOWU2NjdmM2JjZGVkZjlmYTE1NjgzZTUxZjdlNjBwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2IzMzFjNjU0ZDA0OWVlYmEzODBmcC0xLAotICAgIC0weDEuNWZkYmJlOWJiYTc3NXAyLAotICB9LAotICB7IC8vIEVudHJ5IDY5MQotICAgIC0weDEuNmEwOWU2NjdmM2JjODQ1ZDI2MDc1OTk0YWQwMmJkOThwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiZDBkYjQzZmVlY2QzOTFiMjFkMGM0cC0xLAotICAgIDB4MS41ZmRiYmU5YmJhNzc2cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkyCi0gICAgMHgxLjZhMDllNjY3ZjNiYzg0NWQyNjA3NTk5NGFkMDJiZDk4cC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmQwZGI0M2ZlZWNkMzkxYjIxZDBjNHAtMSwKLSAgICAtMHgxLjVmZGJiZTliYmE3NzZwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTMKLSAgICAweDEuNmEwOWU2NjdmM2JjNTI3MWU0OGI1Mjc2ZjQzODU3OWZwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiZDNmOWY4MTZhZDQ1NmJhMWE1NGE5cC0xLAotICAgIDB4MS5jNDYzYWJlY2NiMmJhcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk0Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmM1MjcxZTQ4YjUyNzZmNDM4NTc5ZnAtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JkM2Y5ZjgxNmFkNDU2YmExYTU0YTlwLTEsCi0gICAgLTB4MS5jNDYzYWJlY2NiMmJhcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk1Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2FjZjQ1ZTI1NGY2NjM4Y2ZlOGM2cC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmNlNTFkMDdkMGQ3Njc5YTJkOGM1M3AtMSwKLSAgICAweDEuYzQ2M2FiZWNjYjJiYnAyLAotICB9LAotICB7IC8vIEVudHJ5IDY5NgotICAgIC0weDEuNmEwOWU2NjdmM2JjYWNmNDVlMjU0ZjY2MzhjZmU4YzZwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2U1MWQwN2QwZDc2NzlhMmQ4YzUzcC0xLAotICAgIC0weDEuYzQ2M2FiZWNjYjJiYnAyLAotICB9LAotICB7IC8vIEVudHJ5IDY5NwotICAgIDB4MS42YTA5ZTY2N2YzYmQwNzc2ZDdiZjRjNTU2NmM2ZGI4N3AtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JjOGE5YThlMzZkYTc4NjNhMDI1OTdwLTEsCi0gICAgMHgxLmM0NjNhYmVjY2IyYmNwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTgKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDA3NzZkN2JmNGM1NTY2YzZkYjg3cC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmM4YTlhOGUzNmRhNzg2M2EwMjU5N3AtMSwKLSAgICAtMHgxLmM0NjNhYmVjY2IyYmNwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTkKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTMxMTc0ZjVwLTEsCi0gICAgMHgxLjU4M2ViZWZmNjVjYzIyNjQ4MGFlNjg1YzJhZDlhZmRhcC01MCwKLSAgICAweDEuZjZhN2EyOTU1Mzg1ZHAyLAotICB9LAotICB7IC8vIEVudHJ5IDcwMAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTMxMTc0ZjVwLTEsCi0gICAgMHgxLjU4M2ViZWZmNjVjYzIyNjQ4MGFlNjg1YzJhZDlhZmRhcC01MCwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWRwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDEKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmUxOTRjZDRwLTEsCi0gICAgMHgxLjYwZmFmYmZkOTczMDg5OTIwMmI5YTE3MGM0ZTZhODQ5cC01MiwKLSAgICAweDEuZjZhN2EyOTU1Mzg1ZXAyLAotICB9LAotICB7IC8vIEVudHJ5IDcwMgotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmUxOTRjZDRwLTEsCi0gICAgMHgxLjYwZmFmYmZkOTczMDg5OTIwMmI5YTE3MGM0ZTZhODQ5cC01MiwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWVwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDMKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjkyMTI0YjRwLTEsCi0gICAgLTB4MS40ZjgyODIwMTM0NjdiYjM2ZmVhMzJmNDc5YmQ0OGY0YXAtNTEsCi0gICAgMHgxLmY2YTdhMjk1NTM4NWZwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDQKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5MjEyNGI0cC0xLAotICAgIC0weDEuNGY4MjgyMDEzNDY3YmIzNmZlYTMyZjQ3OWJkNDhmNGFwLTUxLAotICAgIC0weDEuZjZhN2EyOTU1Mzg1ZnAyLAotICB9LAotICB7IC8vIEVudHJ5IDcwNQotICAgIDB4MS42YTA5ZTY2N2YzYmRmYWUxZGNjZTRmMTg2NjU2ODFjNnAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiYjk3MmY4OTI3ZDdiNDZjNzM3NDg1cC0xLAotICAgIDB4MS4xNDc1Y2M5ZWVkZWZmcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA2Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmRmYWUxZGNjZTRmMTg2NjU2ODFjNnAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiYjk3MmY4OTI3ZDdiNDZjNzM3NDg1cC0xLAotICAgIC0weDEuMTQ3NWNjOWVlZGVmZnAzLAotICB9LAotICB7IC8vIEVudHJ5IDcwNwotICAgIDB4MS42YTA5ZTY2N2YzYmQ0NWRjZTk5YTU1M2E2ZDdkODA2NXAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzRjMzQ3YzViZDE5MzNjYTMyNjFmcC0xLAotICAgIDB4MS4xNDc1Y2M5ZWVkZnAzLAotICB9LAotICB7IC8vIEVudHJ5IDcwOAotICAgIC0weDEuNmEwOWU2NjdmM2JkNDVkY2U5OWE1NTNhNmQ3ZDgwNjVwLTEsCi0gICAgLTB4MS42YTA5ZTY2N2YzYmM0YzM0N2M1YmQxOTMzY2EzMjYxZnAtMSwKLSAgICAtMHgxLjE0NzVjYzllZWRmcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA5Ci0gICAgMHgxLjZhMDllNjY3ZjNiYzkwZDdmNjY2NWI1YzFhMjIwNTZhcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JkMDEzOTZmOGZjYjcxYjI1MDVlMWZwLTEsCi0gICAgMHgxLjE0NzVjYzllZWRmMDFwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTAKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzkwZDdmNjY2NWI1YzFhMjIwNTZhcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JkMDEzOTZmOGZjYjcxYjI1MDVlMWZwLTEsCi0gICAgLTB4MS4xNDc1Y2M5ZWVkZjAxcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzExCi0gICAgMHgxLjM0ZjI3Mjk5M2QxNDE0YTJiMzliZDgzNzNlMGQ2Yjk0cC00OSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmEyYzllZGE4cC0xLAotICAgIDB4MS4yZDk3YzdmMzMyMWQxcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzEyCi0gICAgLTB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4MzczZTBkNmI5NHAtNDksCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZhMmM5ZWRhOHAtMSwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDFwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTMKLSAgICAweDEuYTc5Mzk0YzllOGEwYTUxNTljZGVjMWJhODVhNjg4YmRwLTUyLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQ0MzI2ZjVwLTEsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDJwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTQKLSAgICAtMHgxLmE3OTM5NGM5ZThhMGE1MTU5Y2RlYzFiYTg1YTY4OGJkcC01MiwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkNDMyNmY1cC0xLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkMnAzLAotICB9LAotICB7IC8vIEVudHJ5IDcxNQotICAgIC0weDEuOTYxYjFhY2Q4NWQ3ZDZiYTk4Yzg0ZjkxNTNjMGNjMTZwLTUwLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDdiYzYwNDFwLTEsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDNwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTYKLSAgICAweDEuOTYxYjFhY2Q4NWQ3ZDZiYTk4Yzg0ZjkxNTNjMGNjMTZwLTUwLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDdiYzYwNDFwLTEsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQzcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE3Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmI5MGYyMjBmODU2ZDBiMWE0MDZjM3AtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiZTAxMWY0NGZkY2ZmYzE2N2Y3MTQwcC0xLAotICAgIDB4MS40NmI5YzM0Nzc2NGEycDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE4Ci0gICAgMHgxLjZhMDllNjY3ZjNiYjkwZjIyMGY4NTZkMGIxYTQwNmMzcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JlMDExZjQ0ZmRjZmZjMTY3ZjcxNDBwLTEsCi0gICAgLTB4MS40NmI5YzM0Nzc2NGEycDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE5Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmM0NWY3MTQyYzUwYWY4NGYyNmM3NXAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDRjMWE1MWM5ZDYxZTIwYzUyM2Y3cC0xLAotICAgIDB4MS40NmI5YzM0Nzc2NGEzcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIwCi0gICAgMHgxLjZhMDllNjY3ZjNiYzQ1ZjcxNDJjNTBhZjg0ZjI2Yzc1cC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JkNGMxYTUxYzlkNjFlMjBjNTIzZjdwLTEsCi0gICAgLTB4MS40NmI5YzM0Nzc2NGEzcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIxCi0gICAgLTB4MS42YTA5ZTY2N2YzYmNmYWZjMDc2MDRhOGRmZGJlNTg4ZHAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzk3MTU1ZTk1ZGMzZmQwODg1ZDE0cC0xLAotICAgIDB4MS40NmI5YzM0Nzc2NGE0cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIyCi0gICAgMHgxLjZhMDllNjY3ZjNiY2ZhZmMwNzYwNGE4ZGZkYmU1ODhkcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JjOTcxNTVlOTVkYzNmZDA4ODVkMTRwLTEsCi0gICAgLTB4MS40NmI5YzM0Nzc2NGE0cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIzCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5ZDYzNGU5ZnAtMSwKLSAgICAtMHgxLjNkYzU4NWIyYzc0MjE4MTMyNmUwN2M0MDc0ODg3M2JicC00OSwKLSAgICAweDEuNWZkYmJlOWJiYTc3NHAzLAotICB9LAotICB7IC8vIEVudHJ5IDcyNAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5ZDYzNGU5ZnAtMSwKLSAgICAtMHgxLjNkYzU4NWIyYzc0MjE4MTMyNmUwN2M0MDc0ODg3M2JicC00OSwKLSAgICAtMHgxLjVmZGJiZTliYmE3NzRwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjUKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjNDYxMTc4cC0xLAotICAgIC0weDEuZWUyYzJkOTYzYTEwYzA5OTM3MDNlMjA0NDY0NjMzMDFwLTUyLAotICAgIDB4MS41ZmRiYmU5YmJhNzc1cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI2Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjNDYxMTc4cC0xLAotICAgIC0weDEuZWUyYzJkOTYzYTEwYzA5OTM3MDNlMjA0NDY0NjMzMDFwLTUyLAotICAgIC0weDEuNWZkYmJlOWJiYTc3NXAzLAotICB9LAotICB7IC8vIEVudHJ5IDcyNwotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZGIyOGQ0NTFwLTEsCi0gICAgMHgxLjg0NzRmNDlhNzE3YmNmZDliMjNmMDc3ZWU0ZDA5MGNmcC01MCwKLSAgICAweDEuNWZkYmJlOWJiYTc3NnAzLAotICB9LAotICB7IC8vIEVudHJ5IDcyOAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkYjI4ZDQ1MXAtMSwKLSAgICAweDEuODQ3NGY0OWE3MTdiY2ZkOWIyM2YwNzdlZTRkMDkwY2ZwLTUwLAotICAgIC0weDEuNWZkYmJlOWJiYTc3NnAzLAotICB9LAotICB7IC8vIEVudHJ5IDcyOQotICAgIC0weDEuNmEwOWU2NjdmM2JlMDc1Y2FkMmQ1MGRmYzY4Y2Q4OGZwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiYjhhYjRiOGM4ZDVlY2Y2YjkxMGQ2cC0xLAotICAgIDB4MS43OGZkYjllZmZlYTQ1cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMwCi0gICAgMHgxLjZhMDllNjY3ZjNiZTA3NWNhZDJkNTBkZmM2OGNkODhmcC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmI4YWI0YjhjOGQ1ZWNmNmI5MTBkNnAtMSwKLSAgICAtMHgxLjc4ZmRiOWVmZmVhNDVwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzEKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDUyNTdiOWY5NTcwMWQzZjEzZjVkcC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmMzZmI5YWJmY2NmY2JjZDI2MmFhMHAtMSwKLSAgICAweDEuNzhmZGI5ZWZmZWE0NnAzLAotICB9LAotICB7IC8vIEVudHJ5IDczMgotICAgIDB4MS42YTA5ZTY2N2YzYmQ1MjU3YjlmOTU3MDFkM2YxM2Y1ZHAtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JjM2ZiOWFiZmNjZmNiY2QyNjJhYTBwLTEsCi0gICAgLTB4MS43OGZkYjllZmZlYTQ2cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMzCi0gICAgLTB4MS42YTA5ZTY2N2YzYmM5ZDUyYzZjNTVkMjM4NmQzMmM5MnAtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JjZjRiZTlmMzBjOWFhNDkxMGNhY2ZwLTEsCi0gICAgMHgxLjc4ZmRiOWVmZmVhNDdwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzQKLSAgICAweDEuNmEwOWU2NjdmM2JjOWQ1MmM2YzU1ZDIzODZkMzJjOTJwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2Y0YmU5ZjMwYzlhYTQ5MTBjYWNmcC0xLAotICAgIC0weDEuNzhmZGI5ZWZmZWE0N3AzLAotICB9LAotICB7IC8vIEVudHJ5IDczNQotICAgIDB4MS42YTA5ZTY2N2YzYmI4NDc3NTA5OTU1MDkzYmIyOTJiZXAtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JlMGQ5YTE1NWNkMWMzNzY3ZWI3YjNwLTEsCi0gICAgMHgxLmFiNDFiMDk4ODZmZThwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzYKLSAgICAtMHgxLjZhMDllNjY3ZjNiYjg0Nzc1MDk5NTUwOTNiYjI5MmJlcC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmUwZDlhMTU1Y2QxYzM3NjdlYjdiM3AtMSwKLSAgICAtMHgxLmFiNDFiMDk4ODZmZThwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzcKLSAgICAweDEuNmEwOWU2NjdmM2JjMzk3YzQzY2Q0ZWU4MTUzZTYwYTBwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiZDU4OTUyMjI4ZDdlNTg3MDFkMjk5cC0xLAotICAgIDB4MS5hYjQxYjA5ODg2ZmU5cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM4Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmMzOTdjNDNjZDRlZTgxNTNlNjBhMHAtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JkNTg5NTIyMjhkN2U1ODcwMWQyOTlwLTEsCi0gICAgLTB4MS5hYjQxYjA5ODg2ZmU5cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM5Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2VlODEzNzAxNDhjNjk0NDdiNGU3cC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmNhMzkwMmVmNGRlMDczZDAyNzNlNnAtMSwKLSAgICAweDEuYWI0MWIwOTg4NmZlYXAzLAotICB9LAotICB7IC8vIEVudHJ5IDc0MAotICAgIC0weDEuNmEwOWU2NjdmM2JjZWU4MTM3MDE0OGM2OTQ0N2I0ZTdwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2EzOTAyZWY0ZGUwNzNkMDI3M2U2cC0xLAotICAgIC0weDEuYWI0MWIwOTg4NmZlYXAzLAotICB9LAotICB7IC8vIEVudHJ5IDc0MQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5MjIxNDFiNHAtMSwKLSAgICAweDEuNGY2YmFiZTVkYjllMWVmNDBkNjljNDUyZTEzNTU5MWRwLTQ5LAotICAgIDB4MS5jNDYzYWJlY2NiMmJhcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQyCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY5MjIxNDFiNHAtMSwKLSAgICAweDEuNGY2YmFiZTVkYjllMWVmNDBkNjljNDUyZTEzNTU5MWRwLTQ5LAotICAgIC0weDEuYzQ2M2FiZWNjYjJiYXAzLAotICB9LAotICB7IC8vIEVudHJ5IDc0MwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOWQ3MTdhN3AtMSwKLSAgICAweDEuM2RhZWFmOTc2ZTc4N2JkMDM1YTcxMTRiZTM4N2I1YzNwLTUxLAotICAgIDB4MS5jNDYzYWJlY2NiMmJicDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ0Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmOWQ3MTdhN3AtMSwKLSAgICAweDEuM2RhZWFmOTc2ZTc4N2JkMDM1YTcxMTRiZTM4N2I1YzNwLTUxLAotICAgIC0weDEuYzQ2M2FiZWNjYjJiYnAzLAotICB9LAotICB7IC8vIEVudHJ5IDc0NQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlMThjZWQ5YXAtMSwKLSAgICAtMHgxLjYxMjhhODM0NDhjM2MyMTdlNTJjNzc1YTA2OThkMjZhcC01MCwKLSAgICAweDEuYzQ2M2FiZWNjYjJiY3AzLAotICB9LAotICB7IC8vIEVudHJ5IDc0NgotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTE4Y2VkOWFwLTEsCi0gICAgLTB4MS42MTI4YTgzNDQ4YzNjMjE3ZTUyYzc3NWEwNjk4ZDI2YXAtNTAsCi0gICAgLTB4MS5jNDYzYWJlY2NiMmJjcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ3Ci0gICAgMHgxLjZhMDllNjY3ZjNiZTEzZDc3ZDhjNTJhNzI2NTUwZWFjcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JiN2UzOWU4NjlkNDI1ODA5MDhjN2NwLTEsCi0gICAgMHgxLmRkODVhNzQxMGY1OGJwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDgKLSAgICAtMHgxLjZhMDllNjY3ZjNiZTEzZDc3ZDhjNTJhNzI2NTUwZWFjcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JiN2UzOWU4NjlkNDI1ODA5MDhjN2NwLTEsCi0gICAgLTB4MS5kZDg1YTc0MTBmNThicDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ5Ci0gICAgMHgxLjZhMDllNjY3ZjNiZDVlZDI4YTU4NThjOTM5ZjZkZGFhcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JjMzMzZWRiOWRjZTA0NWQzYjBlNzVwLTEsCi0gICAgMHgxLmRkODVhNzQxMGY1OGNwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTAKLSAgICAtMHgxLjZhMDllNjY3ZjNiZDVlZDI4YTU4NThjOTM5ZjZkZGFhcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JjMzMzZWRiOWRjZTA0NWQzYjBlNzVwLTEsCi0gICAgLTB4MS5kZDg1YTc0MTBmNThjcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUxCi0gICAgMHgxLjZhMDllNjY3ZjNiY2E5Y2Q5NzI0NWVlYWYzMTYzMzBlcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JjZTg0M2NlZDFjN2UyZGY2MzE2ZDRwLTEsCi0gICAgMHgxLmRkODVhNzQxMGY1OGRwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTIKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2E5Y2Q5NzI0NWVlYWYzMTYzMzBlcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JjZTg0M2NlZDFjN2UyZGY2MzE2ZDRwLTEsCi0gICAgLTB4MS5kZDg1YTc0MTBmNThkcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUzCi0gICAgMHgxLjU4M2ViZWZmNjVjYzIyNjQ4MGFlNjg1YzE3NjVkZWMxcC00OSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjhjNDVkM2Q0cC0xLAotICAgIDB4MS5mNmE3YTI5NTUzODVkcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU0Ci0gICAgLTB4MS41ODNlYmVmZjY1Y2MyMjY0ODBhZTY4NWMxNzY1ZGVjMXAtNDksCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4YzQ1ZDNkNHAtMSwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWRwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTUKLSAgICAweDEuNjBmYWZiZmQ5NzMwODk5MjAyYjlhMTcwYzM5NzFlODZwLTUxLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjg2NTMzNTNwLTEsCi0gICAgMHgxLmY2YTdhMjk1NTM4NWVwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTYKLSAgICAtMHgxLjYwZmFmYmZkOTczMDg5OTIwMmI5YTE3MGMzOTcxZTg2cC01MSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4NjUzMzUzcC0xLAotICAgIC0weDEuZjZhN2EyOTU1Mzg1ZXAzLAotICB9LAotICB7IC8vIEVudHJ5IDc1NwotICAgIC0weDEuNGY4MjgyMDEzNDY3YmIzNmZlYTMyZjQ3OTc1M2ZlN2FwLTUwLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTQ4NDkyZDNwLTEsCi0gICAgMHgxLmY2YTdhMjk1NTM4NWZwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTgKLSAgICAweDEuNGY4MjgyMDEzNDY3YmIzNmZlYTMyZjQ3OTc1M2ZlN2FwLTUwLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTQ4NDkyZDNwLTEsCi0gICAgLTB4MS5mNmE3YTI5NTUzODVmcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU5Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmEwZGYyOTlkMjVmODJmNjM5MjUxZnAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiZjg0MWVjYzIzYzc0NTk5MDc2YTgxcC0xLAotICAgIDB4MS4wN2U0Y2VmNGNiZDk2cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYwCi0gICAgMHgxLjZhMDllNjY3ZjNiYTBkZjI5OWQyNWY4MmY2MzkyNTFmcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JmODQxZWNjMjNjNzQ1OTkwNzZhODFwLTEsCi0gICAgLTB4MS4wN2U0Y2VmNGNiZDk2cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYxCi0gICAgLTB4MS42YTA5ZTY2N2YzYmI3N2ZjODAzYTUzNDFjNTUyZmUwZnAtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiZTFhMTRlNWJiZDM4YWQ2MGZkZDdicC0xLAotICAgIDB4MS4wN2U0Y2VmNGNiZDk3cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYyCi0gICAgMHgxLjZhMDllNjY3ZjNiYjc3ZmM4MDNhNTM0MWM1NTJmZTBmcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JlMWExNGU1YmJkMzhhZDYwZmRkN2JwLTEsCi0gICAgLTB4MS4wN2U0Y2VmNGNiZDk3cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYzCi0gICAgLTB4MS42YTA5ZTY2N2YzYmNlMjA2NjZhMjQ2ZmYyYTYyZjA5N3AtMSwKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2IwMGFmZjUzZGZjZWE5MGU2YTBjcC0xLAotICAgIDB4MS4wN2U0Y2VmNGNiZDk4cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY0Ci0gICAgMHgxLjZhMDllNjY3ZjNiY2UyMDY2NmEyNDZmZjJhNjJmMDk3cC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JjYjAwYWZmNTNkZmNlYTkwZTZhMGNwLTEsCi0gICAgLTB4MS4wN2U0Y2VmNGNiZDk4cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY1Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQyNTMxYTQzZHAtMSwKLSAgICAtMHgxLmIwODhlOTBjNzdmZDEyZWE3OWY5ODYzMWU2ZjBiNzRicC00OCwKLSAgICAweDEuMTQ3NWNjOWVlZGVmZnA0LAotICB9LAotICB7IC8vIEVudHJ5IDc2NgotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQyNTMxYTQzZHAtMSwKLSAgICAtMHgxLmIwODhlOTBjNzdmZDEyZWE3OWY5ODYzMWU2ZjBiNzRicC00OCwKLSAgICAtMHgxLjE0NzVjYzllZWRlZmZwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjcKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjg2NDM3NjU2cC0xLAotICAgIC0weDEuNjExMWQyMThlZmZhMjVkNGYzZjMwYzY1NGQ3YzM2YTFwLTQ5LAotICAgIDB4MS4xNDc1Y2M5ZWVkZnA0LAotICB9LAotICB7IC8vIEVudHJ5IDc2OAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY4NjQzNzY1NnAtMSwKLSAgICAtMHgxLjYxMTFkMjE4ZWZmYTI1ZDRmM2YzMGM2NTRkN2MzNmExcC00OSwKLSAgICAtMHgxLjE0NzVjYzllZWRmcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY5Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNzU1NDg2ZnAtMSwKLSAgICAweDEuM2RkYzViY2UyMDBiYjQ1NjE4MTllNzM1MjdmNWE2ZDdwLTUwLAotICAgIDB4MS4xNDc1Y2M5ZWVkZjAxcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzcwCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmU3NTU0ODZmcC0xLAotICAgIDB4MS4zZGRjNWJjZTIwMGJiNDU2MTgxOWU3MzUyN2Y1YTZkN3AtNTAsCi0gICAgLTB4MS4xNDc1Y2M5ZWVkZjAxcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzcxCi0gICAgLTB4MS42YTA5ZTY2N2YzYmVkNTU3NDExZjRlNGMxMTRkNzM1N3AtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JhYmNiYTI0ZDZkODdlY2M4ZjgzYjRwLTEsCi0gICAgMHgxLjIxMDZjYTQ5MTAwNjhwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzIKLSAgICAweDEuNmEwOWU2NjdmM2JlZDU1NzQxMWY0ZTRjMTE0ZDczNTdwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiYWJjYmEyNGQ2ZDg3ZWNjOGY4M2I0cC0xLAotICAgIC0weDEuMjEwNmNhNDkxMDA2OHA0LAotICB9LAotICB7IC8vIEVudHJ5IDc3MwotICAgIC0weDEuNmEwOWU2NjdmM2JkNmI0ZDVhYjc1YTkwOWY4ZTViNGNwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiYzI2YzQwYjNlY2MzY2VjZTFkMWEwcC0xLAotICAgIDB4MS4yMTA2Y2E0OTEwMDY5cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc0Ci0gICAgMHgxLjZhMDllNjY3ZjNiZDZiNGQ1YWI3NWE5MDlmOGU1YjRjcC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmMyNmM0MGIzZWNjM2NlY2UxZDFhMHAtMSwKLSAgICAtMHgxLjIxMDZjYTQ5MTAwNjlwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzUKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzAxNDM3NDRmNjZkM2MzYzU1Y2Q5cC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmQ5MGNkZjFhNmJmZjlhMzJhMzkyM3AtMSwKLSAgICAweDEuMjEwNmNhNDkxMDA2YXA0LAotICB9LAotICB7IC8vIEVudHJ5IDc3NgotICAgIDB4MS42YTA5ZTY2N2YzYmMwMTQzNzQ0ZjY2ZDNjM2M1NWNkOXAtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JkOTBjZGYxYTZiZmY5YTMyYTM5MjNwLTEsCi0gICAgLTB4MS4yMTA2Y2E0OTEwMDZhcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc3Ci0gICAgLTB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4MzcwNWNlYzEyMHAtNDgsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZThiMjdiNmEycC0xLAotICAgIDB4MS4yZDk3YzdmMzMyMWQxcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc4Ci0gICAgMHgxLjM0ZjI3Mjk5M2QxNDE0YTJiMzliZDgzNzA1Y2VjMTIwcC00OCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlOGIyN2I2YTJwLTEsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQxcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc5Ci0gICAgLTB4MS5hNzkzOTRjOWU4YTBhNTE1OWNkZWMxYmE4MzYyYjk2OHAtNTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY1MGM5YmQ0cC0xLAotICAgIDB4MS4yZDk3YzdmMzMyMWQycDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgwCi0gICAgMHgxLmE3OTM5NGM5ZThhMGE1MTU5Y2RlYzFiYTgzNjJiOTY4cC01MSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjUwYzliZDRwLTEsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQycDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgxCi0gICAgMHgxLjk2MWIxYWNkODVkN2Q2YmE5OGM4NGY5MTMzZDEwYWJlcC00OSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNWVmMTgxMDdwLTEsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDNwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODIKLSAgICAtMHgxLjk2MWIxYWNkODVkN2Q2YmE5OGM4NGY5MTMzZDEwYWJlcC00OSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNWVmMTgxMDdwLTEsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQzcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgzCi0gICAgMHgxLjZhMDllNjY3ZjNiYTAxNzdjOTczNWRiYjcyZjA5ZjY1cC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmY5MDk5OWM4MmM5MGNlYmFmOWYzZnAtMSwKLSAgICAweDEuM2EyOGM1OWQ1NDMzOXA0LAotICB9LAotICB7IC8vIEVudHJ5IDc4NAotICAgIC0weDEuNmEwOWU2NjdmM2JhMDE3N2M5NzM1ZGJiNzJmMDlmNjVwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiZjkwOTk5YzgyYzkwY2ViYWY5ZjNmcC0xLAotICAgIC0weDEuM2EyOGM1OWQ1NDMzOXA0LAotICB9LAotICB7IC8vIEVudHJ5IDc4NQotICAgIDB4MS42YTA5ZTY2N2YzYmI2YjgxYWZkYjUxN2E0ZTg1NDhiNHAtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JlMjY4ZmI2MWFkNTUyMzUzMmUyOThwLTEsCi0gICAgMHgxLjNhMjhjNTlkNTQzM2FwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODYKLSAgICAtMHgxLjZhMDllNjY3ZjNiYjZiODFhZmRiNTE3YTRlODU0OGI0cC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmUyNjhmYjYxYWQ1NTIzNTMyZTI5OHAtMSwKLSAgICAtMHgxLjNhMjhjNTlkNTQzM2FwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODcKLSAgICAweDEuNmEwOWU2NjdmM2JjZDU4Yjk2NDM0NTM3YzAxMDBiOWJwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiY2JjODVjZmIyZTE5NjE0YWMzZjg4cC0xLAotICAgIDB4MS4zYTI4YzU5ZDU0MzNicDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzg4Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmNkNThiOTY0MzQ1MzdjMDEwMGI5YnAtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JjYmM4NWNmYjJlMTk2MTRhYzNmODhwLTEsCi0gICAgLTB4MS4zYTI4YzU5ZDU0MzNicDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzg5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDA3MTFmNDM3cC0xLAotICAgIDB4MS5iOTViZmMyNjAyMmIxNjVhZWQzZTJhM2IxMjM4MjQ3OXAtNDgsCi0gICAgMHgxLjQ2YjljMzQ3NzY0YTJwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTAKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZDA3MTFmNDM3cC0xLAotICAgIDB4MS5iOTViZmMyNjAyMmIxNjVhZWQzZTJhM2IxMjM4MjQ3OXAtNDgsCi0gICAgLTB4MS40NmI5YzM0Nzc2NGEycDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzkxCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5YzllYzgzcC0xLAotICAgIDB4MS43MmI3Zjg0YzA0NTYyY2I1ZGE3YzU0NzdiOTU3YWRlYnAtNDksCi0gICAgMHgxLjQ2YjljMzQ3NzY0YTNwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTIKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjc5YzllYzgzcC0xLAotICAgIDB4MS43MmI3Zjg0YzA0NTYyY2I1ZGE3YzU0NzdiOTU3YWRlYnAtNDksCi0gICAgLTB4MS40NmI5YzM0Nzc2NGEzcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzkzCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODFlNGNmcC0xLAotICAgIC0weDEuMWE5MDBmNjdmNzUzYTY5NDRiMDc1NzEwNDhmMWNhZDJwLTUwLAotICAgIDB4MS40NmI5YzM0Nzc2NGE0cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzk0Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlYzgxZTRjZnAtMSwKLSAgICAtMHgxLjFhOTAwZjY3Zjc1M2E2OTQ0YjA3NTcxMDQ4ZjFjYWQycC01MCwKLSAgICAtMHgxLjQ2YjljMzQ3NzY0YTRwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTUKLSAgICAweDEuNmEwOWU2NjdmM2JlZTFkMjExN2U1MDEzNjlmYmZmZWZwLTEsCi0gICAgLTB4MS42YTA5ZTY2N2YzYmFiMDNmNTQ3N2Q2Yjc0ZjRkNTVkNXAtMSwKLSAgICAweDEuNTM0YWMwZjE5ODYwYnA0LAotICB9LAotICB7IC8vIEVudHJ5IDc5NgotICAgIC0weDEuNmEwOWU2NjdmM2JlZTFkMjExN2U1MDEzNjlmYmZmZWZwLTEsCi0gICAgLTB4MS42YTA5ZTY2N2YzYmFiMDNmNTQ3N2Q2Yjc0ZjRkNTVkNXAtMSwKLSAgICAtMHgxLjUzNGFjMGYxOTg2MGJwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTcKLSAgICAweDEuNmEwOWU2NjdmM2JkNzdjODJiMTY1YzU4MDRiN2I4NDNwLTEsCi0gICAgLTB4MS42YTA5ZTY2N2YzYmMxYTQ5M2FkZmNhNzU3YzFhNzQxZnAtMSwKLSAgICAweDEuNTM0YWMwZjE5ODYwY3A0LAotICB9LAotICB7IC8vIEVudHJ5IDc5OAotICAgIC0weDEuNmEwOWU2NjdmM2JkNzdjODJiMTY1YzU4MDRiN2I4NDNwLTEsCi0gICAgLTB4MS42YTA5ZTY2N2YzYmMxYTQ5M2FkZmNhNzU3YzFhNzQxZnAtMSwKLSAgICAtMHgxLjUzNGFjMGYxOTg2MGNwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTkKLSAgICAweDEuNmEwOWU2NjdmM2JjMGRiZTQ0YWU2ODliMzU2OThhMmZwLTEsCi0gICAgLTB4MS42YTA5ZTY2N2YzYmQ4NDUzMjE0N2JlMzIzZWRkYWMwMXAtMSwKLSAgICAweDEuNTM0YWMwZjE5ODYwZHA0LAotICB9LAotICB7IC8vIEVudHJ5IDgwMAotICAgIC0weDEuNmEwOWU2NjdmM2JjMGRiZTQ0YWU2ODliMzU2OThhMmZwLTEsCi0gICAgLTB4MS42YTA5ZTY2N2YzYmQ4NDUzMjE0N2JlMzIzZWRkYWMwMXAtMSwKLSAgICAtMHgxLjUzNGFjMGYxOTg2MGRwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDEKLSAgICAweDEuM2RjNTg1YjJjNzQyMTgxMzI2ZTA3YzQwMzc1NDY0ZGVwLTQ4LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlNzU4ZDNhN2NwLTEsCi0gICAgMHgxLjVmZGJiZTliYmE3NzRwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDIKLSAgICAtMHgxLjNkYzU4NWIyYzc0MjE4MTMyNmUwN2M0MDM3NTQ2NGRlcC00OCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZTc1OGQzYTdjcC0xLAotICAgIC0weDEuNWZkYmJlOWJiYTc3NHA0LAotICB9LAotICB7IC8vIEVudHJ5IDgwMwotICAgIDB4MS5lZTJjMmQ5NjNhMTBjMDk5MzcwM2UyMDQ0MmFkN2I4ZHAtNTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTE4NDVlMXAtMSwKLSAgICAweDEuNWZkYmJlOWJiYTc3NXA0LAotICB9LAotICB7IC8vIEVudHJ5IDgwNAotICAgIC0weDEuZWUyYzJkOTYzYTEwYzA5OTM3MDNlMjA0NDJhZDdiOGRwLTUxLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjExODQ1ZTFwLTEsCi0gICAgLTB4MS41ZmRiYmU5YmJhNzc1cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODA1Ci0gICAgLTB4MS44NDc0ZjQ5YTcxN2JjZmQ5YjIzZjA3N2VjOGRkMTc1YnAtNDksCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2Y2EzNTE0N3AtMSwKLSAgICAweDEuNWZkYmJlOWJiYTc3NnA0LAotICB9LAotICB7IC8vIEVudHJ5IDgwNgotICAgIDB4MS44NDc0ZjQ5YTcxN2JjZmQ5YjIzZjA3N2VjOGRkMTc1YnAtNDksCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2Y2EzNTE0N3AtMSwKLSAgICAtMHgxLjVmZGJiZTliYmE3NzZwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDcKLSAgICAtMHgxLjZhMDllNjY3ZjNiOWY0ZmNmOTE0NWJmM2VmMzlmOTAxcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JmOWQxNDZjZTFjYWQ0M2RlOWIzNTJwLTEsCi0gICAgMHgxLjZjNmNiYzQ1ZGM4ZGNwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDgKLSAgICAweDEuNmEwOWU2NjdmM2I5ZjRmY2Y5MTQ1YmYzZWYzOWY5MDFwLTEsCi0gICAgLTB4MS42YTA5ZTY2N2YzYmY5ZDE0NmNlMWNhZDQzZGU5YjM1MnAtMSwKLSAgICAtMHgxLjZjNmNiYzQ1ZGM4ZGNwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDkKLSAgICAtMHgxLjZhMDllNjY3ZjNiYjVmMDZkZjdjNGZiMmQ3NDk3MmFlcC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JlMzMwYTg2NzlkNzE5OTNlN2M3MDlwLTEsCi0gICAgMHgxLjZjNmNiYzQ1ZGM4ZGRwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTAKLSAgICAweDEuNmEwOWU2NjdmM2JiNWYwNmRmN2M0ZmIyZDc0OTcyYWVwLTEsCi0gICAgLTB4MS42YTA5ZTY2N2YzYmUzMzBhODY3OWQ3MTk5M2U3YzcwOXAtMSwKLSAgICAtMHgxLjZjNmNiYzQ1ZGM4ZGRwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTEKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2M5MTBjNWU0NDM3MDU1NGYwNWY0cC0xLAotICAgIC0weDEuNmEwOWU2NjdmM2JjYzkwMGEwMTFlMzVkN2ZkYmY0NTlwLTEsCi0gICAgMHgxLjZjNmNiYzQ1ZGM4ZGVwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTIKLSAgICAweDEuNmEwOWU2NjdmM2JjYzkxMGM1ZTQ0MzcwNTU0ZjA1ZjRwLTEsCi0gICAgLTB4MS42YTA5ZTY2N2YzYmNjOTAwYTAxMWUzNWQ3ZmRiZjQ1OXAtMSwKLSAgICAtMHgxLjZjNmNiYzQ1ZGM4ZGVwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTMKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2U4NTY4NWJkcC0xLAotICAgIC0weDEuYzIyZjBmM2Y4YzU5MTljYjYwODJjZTQ0M2NmOTUwMjJwLTQ4LAotICAgIDB4MS43OGZkYjllZmZlYTQ1cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODE0Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmY2U4NTY4NWJkcC0xLAotICAgIC0weDEuYzIyZjBmM2Y4YzU5MTljYjYwODJjZTQ0M2NmOTUwMjJwLTQ4LAotICAgIC0weDEuNzhmZGI5ZWZmZWE0NXA0LAotICB9LAotICB7IC8vIEVudHJ5IDgxNQotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNmNiNGE0M2RwLTEsCi0gICAgLTB4MS44NDVlMWU3ZjE4YjIzMzk2YzEwNTljOGEyNGMyNjA5Y3AtNDksCi0gICAgMHgxLjc4ZmRiOWVmZmVhNDZwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTYKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmNmNiNGE0M2RwLTEsCi0gICAgLTB4MS44NDVlMWU3ZjE4YjIzMzk2YzEwNTljOGEyNGMyNjA5Y3AtNDksCi0gICAgLTB4MS43OGZkYjllZmZlYTQ2cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODE3Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTEyYzJiY3AtMSwKLSAgICAweDEuZWU4Nzg2MDM5ZDM3MzFhNGZiZTk4ZGQ2ZDMyZmY2MmFwLTUxLAotICAgIDB4MS43OGZkYjllZmZlYTQ3cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODE4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxMTJjMmJjcC0xLAotICAgIDB4MS5lZTg3ODYwMzlkMzczMWE0ZmJlOThkZDZkMzJmZjYyYXAtNTEsCi0gICAgLTB4MS43OGZkYjllZmZlYTQ3cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODE5Ci0gICAgLTB4MS42YTA5ZTY2N2YzYmVlZTRjZTFkZDUxZGFjMjNjNmJkY3AtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JhYTNjNDg0MThkNGVmZDE5ZDA3NGFwLTEsCi0gICAgMHgxLjg1OGViNzlhMjBiYWVwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjAKLSAgICAweDEuNmEwOWU2NjdmM2JlZWU0Y2UxZGQ1MWRhYzIzYzZiZGNwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiYWEzYzQ4NDE4ZDRlZmQxOWQwNzRhcC0xLAotICAgIC0weDEuODU4ZWI3OWEyMGJhZXA0LAotICB9LAotICB7IC8vIEVudHJ5IDgyMQotICAgIC0weDEuNmEwOWU2NjdmM2JkODQ0MmZiNzU1ZTFmNjk3MmY0OGZwLTEsCi0gICAgMHgxLjZhMDllNjY3ZjNiYzBkY2U2YTgwYzhhZTBhZTRmNWYzcC0xLAotICAgIDB4MS44NThlYjc5YTIwYmFmcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODIyCi0gICAgMHgxLjZhMDllNjY3ZjNiZDg0NDJmYjc1NWUxZjY5NzJmNDhmcC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmMwZGNlNmE4MGM4YWUwYWU0ZjVmM3AtMSwKLSAgICAtMHgxLjg1OGViNzlhMjBiYWZwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjMKLSAgICAtMHgxLjZhMDllNjY3ZjNiYzFhMzkxNTBkNmE2MmE2OWY5NmRhcC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmQ3N2Q4NTBlOGJjNmFkYTIyZmUzNHAtMSwKLSAgICAweDEuODU4ZWI3OWEyMGJiMHA0LAotICB9LAotICB7IC8vIEVudHJ5IDgyNAotICAgIDB4MS42YTA5ZTY2N2YzYmMxYTM5MTUwZDZhNjJhNjlmOTZkYXAtMSwKLSAgICAweDEuNmEwOWU2NjdmM2JkNzdkODUwZThiYzZhZGEyMmZlMzRwLTEsCi0gICAgLTB4MS44NThlYjc5YTIwYmIwcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODI1Ci0gICAgMHgxLmZhNzI5OWIxNzU3M2QzNzNjNjE1MDk2NTcyYTBkZTA0cC0xLAotICAgIC0weDEuMmNjYWY2NDFkNDI2MWVhM2NjZDhkMmExMDJkYzMwNjZwLTMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwNjIsCi0gIH0sCi0gIHsgLy8gRW50cnkgODI2Ci0gICAgLTB4MS5mYTcyOTliMTc1NzNkMzczYzYxNTA5NjU3MmEwZGUwNHAtMSwKLSAgICAtMHgxLjJjY2FmNjQxZDQyNjFlYTNjY2Q4ZDJhMTAyZGMzMDY2cC0zLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnA2MiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjcKLSAgICAweDEuZmZmNmRmZDQyZGM1NDQzMGJjMDU3NmIwMGE4OGJkOTRwLTEsCi0gICAgMHgxLjgyYWEzNzViM2MzM2U3MDY2MzczMWJhYjRiZWI2ZWQzcC03LAotICAgIDB4MS4wcDYzLAotICB9LAotICB7IC8vIEVudHJ5IDgyOAotICAgIC0weDEuZmZmNmRmZDQyZGM1NDQzMGJjMDU3NmIwMGE4OGJkOTRwLTEsCi0gICAgMHgxLjgyYWEzNzViM2MzM2U3MDY2MzczMWJhYjRiZWI2ZWQzcC03LAotICAgIC0weDEuMHA2MywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjkKLSAgICAweDEuZTQ1NmI4MThlNzM5NmI0NTk4OTk3OGQ0YjdlYmY3YjNwLTEsCi0gICAgMHgxLjRjMDYyMmE2ZTM1ZGRlZmQ1ZjJiNzcwMDcxNmE1ODFmcC0yLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDYzLAotICB9LAotICB7IC8vIEVudHJ5IDgzMAotICAgIC0weDEuZTQ1NmI4MThlNzM5NmI0NTk4OTk3OGQ0YjdlYmY3YjNwLTEsCi0gICAgMHgxLjRjMDYyMmE2ZTM1ZGRlZmQ1ZjJiNzcwMDcxNmE1ODFmcC0yLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2MywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzEKLSAgICAtMHgxLjg2ZGNjYTBkNjg5ZTdiNTZlZjc5NDgxYmU0YTY0NWM2cC0xLAotICAgIDB4MS40YWI2NTBiOGM2MDczNDM4NTM3NWUyMjYwM2ZjZGIxMHAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAyNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzIKLSAgICAweDEuODZkY2NhMGQ2ODllN2I1NmVmNzk0ODFiZTRhNjQ1YzZwLTEsCi0gICAgMHgxLjRhYjY1MGI4YzYwNzM0Mzg1Mzc1ZTIyNjAzZmNkYjEwcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzMKLSAgICAtMHgxLjg2ZGNjOWJhYmIwYTQwZWU4NzVjYWIzYjllODkyNzU3cC0xLAotICAgIDB4MS40YWI2NTExYTdkMzlhZDNjYzg4ZGVkMWU3NzVjYTE0N3AtMSwKLSAgICAweDEuMHAyNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzQKLSAgICAweDEuODZkY2M5YmFiYjBhNDBlZTg3NWNhYjNiOWU4OTI3NTdwLTEsCi0gICAgMHgxLjRhYjY1MTFhN2QzOWFkM2NjODhkZWQxZTc3NWNhMTQ3cC0xLAotICAgIC0weDEuMHAyNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzUKLSAgICAtMHgxLjg2ZGNjOTE1NWZlMTgyZDQ1MTU1OTk0MjZiYjE0Yjk0cC0xLAotICAgIDB4MS40YWI2NTFkZGViOWU2MTQzODM4MmYwMjE2N2FkZTRhZnAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAyNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzYKLSAgICAweDEuODZkY2M5MTU1ZmUxODJkNDUxNTU5OTQyNmJiMTRiOTRwLTEsCi0gICAgMHgxLjRhYjY1MWRkZWI5ZTYxNDM4MzgyZjAyMTY3YWRlNGFmcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzcKLSAgICAtMHgxLjhmMjJmODRkNDJkYTFmNTc0NjlkZmFhYzQ0YThiNzNhcC0xLAotICAgIDB4MS40MGFkNjdlNzc3YjFkZjAxOTUxODlmNTBhOGMyNjM0NXAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAyMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzgKLSAgICAweDEuOGYyMmY4NGQ0MmRhMWY1NzQ2OWRmYWFjNDRhOGI3M2FwLTEsCi0gICAgMHgxLjQwYWQ2N2U3NzdiMWRmMDE5NTE4OWY1MGE4YzI2MzQ1cC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAyMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzkKLSAgICAtMHgxLjhmMjJmODQzM2Q2ZWRmZTlhNGFmZjk2MjI1MTdjYWE5cC0xLAotICAgIDB4MS40MGFkNjdmM2YwYzlhMTQzOTYzYzljOTZkYmNlM2Y4YXAtMSwKLSAgICAweDEuMHAyNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDAKLSAgICAweDEuOGYyMmY4NDMzZDZlZGZlOWE0YWZmOTYyMjUxN2NhYTlwLTEsCi0gICAgMHgxLjQwYWQ2N2YzZjBjOWExNDM5NjNjOWM5NmRiY2UzZjhhcC0xLAotICAgIC0weDEuMHAyNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDEKLSAgICAtMHgxLjhmMjJmODJmMzI5ODVmZTMwNjk5YzZlMTJkOWRmY2UycC0xLAotICAgIDB4MS40MGFkNjgwY2UyZjkyNGQ3MTY3NjlkMTA2NGJjOGRlZnAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAyNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDIKLSAgICAweDEuOGYyMmY4MmYzMjk4NWZlMzA2OTljNmUxMmQ5ZGZjZTJwLTEsCi0gICAgMHgxLjQwYWQ2ODBjZTJmOTI0ZDcxNjc2OWQxMDY0YmM4ZGVmcC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDMKLSAgICAtMHgxLjgzN2I5ZGRkYzFlYWJkMzc5ZDcyOWY1NzVmYzExNDRjcC0xLAotICAgIC0weDEuNGVhYTYwNmRiMjRjM2NiNWUxNWQ3YjE5ZDVlZTczYTFwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDQKLSAgICAweDEuODM3YjlkZGRjMWVhYmQzNzlkNzI5ZjU3NWZjMTE0NGNwLTEsCi0gICAgLTB4MS40ZWFhNjA2ZGIyNGMzY2I1ZTE1ZDdiMTlkNWVlNzNhMXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDUKLSAgICAtMHgxLjgzN2I5ZGRkYzFlYWU3MGNlOTgwNTVhMGU0NTBkOTNjcC0xLAotICAgIC0weDEuNGVhYTYwNmRiMjRjMGM0NjZkYTFjMmRjN2JhYTJiMzJwLTEsCi0gICAgMHgxLjBwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDYKLSAgICAweDEuODM3YjlkZGRjMWVhZTcwY2U5ODA1NWEwZTQ1MGQ5M2NwLTEsCi0gICAgLTB4MS40ZWFhNjA2ZGIyNGMwYzQ2NmRhMWMyZGM3YmFhMmIzMnAtMSwKLSAgICAtMHgxLjBwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDcKLSAgICAtMHgxLjgzN2I5ZGRkYzFlYjNhYjc4MTliYzIzM2RiNDY5N2I1cC0xLAotICAgIC0weDEuNGVhYTYwNmRiMjRiYWI2Nzg2MmE1MjYxYjc3MTlkY2ZwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDgKLSAgICAweDEuODM3YjlkZGRjMWViM2FiNzgxOWJjMjMzZGI0Njk3YjVwLTEsCi0gICAgLTB4MS40ZWFhNjA2ZGIyNGJhYjY3ODYyYTUyNjFiNzcxOWRjZnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDkKLSAgICAweDEuZDE4ZjZlYWQxYjQ0NmI0YmNiNzNjMjM5MGIzMzBkNzVwLTEsCi0gICAgLTB4MS5hYTIyNjU3NTM3MjAxMDExNDUyMzA5NTJlNjFjNmYyY3AtMiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAwLAotICB9LAotICB7IC8vIEVudHJ5IDg1MAotICAgIC0weDEuZDE4ZjZlYWQxYjQ0NmI0YmNiNzNjMjM5MGIzMzBkNzVwLTEsCi0gICAgLTB4MS5hYTIyNjU3NTM3MjAxMDExNDUyMzA5NTJlNjFjNmYyY3AtMiwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTEKLSAgICAweDEuZDE4ZjZlYWQxYjQ0NWRmYWI4NDgxODgwMDljOWJiOTVwLTEsCi0gICAgLTB4MS5hYTIyNjU3NTM3MjA0YTQzMzJmOGFjYmI3MmIwZDc2OHAtMiwKLSAgICAweDEuMHAxLAotICB9LAotICB7IC8vIEVudHJ5IDg1MgotICAgIC0weDEuZDE4ZjZlYWQxYjQ0NWRmYWI4NDgxODgwMDljOWJiOTVwLTEsCi0gICAgLTB4MS5hYTIyNjU3NTM3MjA0YTQzMzJmOGFjYmI3MmIwZDc2OHAtMiwKLSAgICAtMHgxLjBwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTMKLSAgICAweDEuZDE4ZjZlYWQxYjQ0NDM1ODkxZjBjNTBlMDE4MjY5ODhwLTEsCi0gICAgLTB4MS5hYTIyNjU3NTM3MjBiZWE3MGVhM2YzOGM4NmRiNDBhZnAtMiwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAxLAotICB9LAotICB7IC8vIEVudHJ5IDg1NAotICAgIC0weDEuZDE4ZjZlYWQxYjQ0NDM1ODkxZjBjNTBlMDE4MjY5ODhwLTEsCi0gICAgLTB4MS5hYTIyNjU3NTM3MjBiZWE3MGVhM2YzOGM4NmRiNDBhZnAtMiwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTUKLSAgICAweDEuYWVkNTQ4ZjA5MGNlZDc5Yzc5Y2JmNzkwNDQxZjgxOTdwLTEsCi0gICAgMHgxLjE0YTI4MGZiNTA2OGM2OWEyZWQ0NWZiNTQ3YzJmMjcxcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDg1NgotICAgIC0weDEuYWVkNTQ4ZjA5MGNlZDc5Yzc5Y2JmNzkwNDQxZjgxOTdwLTEsCi0gICAgMHgxLjE0YTI4MGZiNTA2OGM2OWEyZWQ0NWZiNTQ3YzJmMjcxcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTcKLSAgICAweDEuYWVkNTQ4ZjA5MGNlZTA0MThkZDNkMjEzOGExZTc4NjVwLTEsCi0gICAgMHgxLjE0YTI4MGZiNTA2OGI5MjM4NDhjZGIyZWQwZTM3YTUzcC0xLAotICAgIDB4MS4wcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgODU4Ci0gICAgLTB4MS5hZWQ1NDhmMDkwY2VlMDQxOGRkM2QyMTM4YTFlNzg2NXAtMSwKLSAgICAweDEuMTRhMjgwZmI1MDY4YjkyMzg0OGNkYjJlZDBlMzdhNTNwLTEsCi0gICAgLTB4MS4wcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgODU5Ci0gICAgMHgxLmFlZDU0OGYwOTBjZWYxOGJiNWUzODcxYTE0ZDk0NjA5cC0xLAotICAgIDB4MS4xNGEyODBmYjUwNjg5ZTM2MmZmZGQyMjFlMjU1MTAzNXAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAwLAotICB9LAotICB7IC8vIEVudHJ5IDg2MAotICAgIC0weDEuYWVkNTQ4ZjA5MGNlZjE4YmI1ZTM4NzFhMTRkOTQ2MDlwLTEsCi0gICAgMHgxLjE0YTI4MGZiNTA2ODllMzYyZmZkZDIyMWUyNTUxMDM1cC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwLAotICB9LAotICB7IC8vIEVudHJ5IDg2MQotICAgIDB4MS5lYWVlODc0NGIwNWVmMDdjZDBiOTA4OTEzMDU5ODMxNHAtMiwKLSAgICAweDEuYzE1MjgwNjViN2Q0ZmRiMTU4YzljNGE2YjNlNGI3NDBwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgODYyCi0gICAgLTB4MS5lYWVlODc0NGIwNWVmMDdjZDBiOTA4OTEzMDU5ODMxNHAtMiwKLSAgICAweDEuYzE1MjgwNjViN2Q0ZmRiMTU4YzljNGE2YjNlNGI3NDBwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDg2MwotICAgIDB4MS5lYWVlODc0NGIwNWVmZTg3NjRiYzM2NGZkODM3YjY2NnAtMiwKLSAgICAweDEuYzE1MjgwNjViN2Q0ZjlkYjdiYmIzYjQ1ZjVmNWIzMGFwLTEsCi0gICAgMHgxLjBwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgODY0Ci0gICAgLTB4MS5lYWVlODc0NGIwNWVmZTg3NjRiYzM2NGZkODM3YjY2NnAtMiwKLSAgICAweDEuYzE1MjgwNjViN2Q0ZjlkYjdiYmIzYjQ1ZjVmNWIzMGFwLTEsCi0gICAgLTB4MS4wcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDg2NQotICAgIDB4MS5lYWVlODc0NGIwNWYxYTljOGNjMjkxY2QyNzk4MTA1MXAtMiwKLSAgICAweDEuYzE1MjgwNjViN2Q0ZjIyZmMxOWUyODg0NzljMzZiMjdwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgODY2Ci0gICAgLTB4MS5lYWVlODc0NGIwNWYxYTljOGNjMjkxY2QyNzk4MTA1MXAtMiwKLSAgICAweDEuYzE1MjgwNjViN2Q0ZjIyZmMxOWUyODg0NzljMzZiMjdwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDg2NwotICAgIDB4MS5mYWFlZWQ0ZjMxNTc1YzI3ZjM5YzFkN2MwMTJhNDQxM3AtMywKLSAgICAweDEuZjAxNTQ5ZjdkZWVhMTg0YzVmMWQyMTBiNmFkYmU1NmNwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgODY4Ci0gICAgLTB4MS5mYWFlZWQ0ZjMxNTc1YzI3ZjM5YzFkN2MwMTJhNDQxM3AtMywKLSAgICAweDEuZjAxNTQ5ZjdkZWVhMTg0YzVmMWQyMTBiNmFkYmU1NmNwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0zLAotICB9LAotICB7IC8vIEVudHJ5IDg2OQotICAgIDB4MS5mYWFlZWQ0ZjMxNTc2YmE4OWRlYmRjNzM1MWU4YjFhZXAtMywKLSAgICAweDEuZjAxNTQ5ZjdkZWVhMTc0ZjA3YTY3OTcyYmYyOWYxNDhwLTEsCi0gICAgMHgxLjBwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgODcwCi0gICAgLTB4MS5mYWFlZWQ0ZjMxNTc2YmE4OWRlYmRjNzM1MWU4YjFhZXAtMywKLSAgICAweDEuZjAxNTQ5ZjdkZWVhMTc0ZjA3YTY3OTcyYmYyOWYxNDhwLTEsCi0gICAgLTB4MS4wcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDg3MQotICAgIDB4MS5mYWFlZWQ0ZjMxNTc4YWE5ZjI4YjVhNjFmMzRkY2NiMXAtMywKLSAgICAweDEuZjAxNTQ5ZjdkZWVhMTU1NDU4YjkyYTQxNjdhZWM3ZmZwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgODcyCi0gICAgLTB4MS5mYWFlZWQ0ZjMxNTc4YWE5ZjI4YjVhNjFmMzRkY2NiMXAtMywKLSAgICAweDEuZjAxNTQ5ZjdkZWVhMTU1NDU4YjkyYTQxNjdhZWM3ZmZwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDg3MwotICAgIDB4MS5mZWFhZWVlODZlZTM0Y2MwNWVmZjI4NzQwZWU3YjQ2OXAtNCwKLSAgICAweDEuZmMwMTU1MjdkNWJkMzcxYTEyMzIwMjQ5Y2E0ZGFmZDdwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODc0Ci0gICAgLTB4MS5mZWFhZWVlODZlZTM0Y2MwNWVmZjI4NzQwZWU3YjQ2OXAtNCwKLSAgICAweDEuZmMwMTU1MjdkNWJkMzcxYTEyMzIwMjQ5Y2E0ZGFmZDdwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcC00LAotICB9LAotICB7IC8vIEVudHJ5IDg3NQotICAgIDB4MS5mZWFhZWVlODZlZTM1Y2EwNjlhODY3MjFmODlmODVhNXAtNCwKLSAgICAweDEuZmMwMTU1MjdkNWJkMzZkYTNjZDQyNTNiZWRlMzE5Y2FwLTEsCi0gICAgMHgxLjBwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgODc2Ci0gICAgLTB4MS5mZWFhZWVlODZlZTM1Y2EwNjlhODY3MjFmODlmODVhNXAtNCwKLSAgICAweDEuZmMwMTU1MjdkNWJkMzZkYTNjZDQyNTNiZWRlMzE5Y2FwLTEsCi0gICAgLTB4MS4wcC0zLAotICB9LAotICB7IC8vIEVudHJ5IDg3NwotICAgIDB4MS5mZWFhZWVlODZlZTM3YzYwN2VmYWU0N2RjYzA5MmMxY3AtNCwKLSAgICAweDEuZmMwMTU1MjdkNWJkMzY1YTkyMTg2YjIwMzUwN2Y5YWRwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgODc4Ci0gICAgLTB4MS5mZWFhZWVlODZlZTM3YzYwN2VmYWU0N2RjYzA5MmMxY3AtNCwKLSAgICAweDEuZmMwMTU1MjdkNWJkMzY1YTkyMTg2YjIwMzUwN2Y5YWRwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zLAotICB9LAotICB7IC8vIEVudHJ5IDg3OQotICAgIDB4MS5mZmFhYWVlZWQ0ZWQ5YjUzYTQwOGMwZjJiYzAyYzhmOXAtNSwKLSAgICAweDEuZmYwMDE1NTQ5ZjRkMzRkYTBiNzQ1ZGM3NDMzMTQ1ZWZwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgODgwCi0gICAgLTB4MS5mZmFhYWVlZWQ0ZWQ5YjUzYTQwOGMwZjJiYzAyYzhmOXAtNSwKLSAgICAweDEuZmYwMDE1NTQ5ZjRkMzRkYTBiNzQ1ZGM3NDMzMTQ1ZWZwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcC01LAotICB9LAotICB7IC8vIEVudHJ5IDg4MQotICAgIDB4MS5mZmFhYWVlZWQ0ZWRhYjRiYTRiMzY1ZWQyNWE5NTk1ZnAtNSwKLSAgICAweDEuZmYwMDE1NTQ5ZjRkMzRjYTBlMWVlNjUwOWJjNDJiNzFwLTEsCi0gICAgMHgxLjBwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODgyCi0gICAgLTB4MS5mZmFhYWVlZWQ0ZWRhYjRiYTRiMzY1ZWQyNWE5NTk1ZnAtNSwKLSAgICAweDEuZmYwMDE1NTQ5ZjRkMzRjYTBlMWVlNjUwOWJjNDJiNzFwLTEsCi0gICAgLTB4MS4wcC00LAotICB9LAotICB7IC8vIEVudHJ5IDg4MwotICAgIDB4MS5mZmFhYWVlZWQ0ZWRjYjNiYTYwOGFmZTFmOGY0ZmE2YnAtNSwKLSAgICAweDEuZmYwMDE1NTQ5ZjRkMzRhYTEzNzNmNzYzNGNlODc3MzdwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODg0Ci0gICAgLTB4MS5mZmFhYWVlZWQ0ZWRjYjNiYTYwOGFmZTFmOGY0ZmE2YnAtNSwKLSAgICAweDEuZmYwMDE1NTQ5ZjRkMzRhYTEzNzNmNzYzNGNlODc3MzdwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC00LAotICB9LAotICB7IC8vIEVudHJ5IDg4NQotICAgIDB4MS5mZmVhYWFlZWVlODZkOGNjZmUzNjhjZDk1ZTM4ZjAwM3AtNiwKLSAgICAweDEuZmZjMDAxNTU1MjdkMmIxNmFlYjA5ZmI3MDYzNmExMGFwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTYsCi0gIH0sCi0gIHsgLy8gRW50cnkgODg2Ci0gICAgLTB4MS5mZmVhYWFlZWVlODZkOGNjZmUzNjhjZDk1ZTM4ZjAwM3AtNiwKLSAgICAweDEuZmZjMDAxNTU1MjdkMmIxNmFlYjA5ZmI3MDYzNmExMGFwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcC02LAotICB9LAotICB7IC8vIEVudHJ5IDg4NwotICAgIDB4MS5mZmVhYWFlZWVlODZlOGNhZmU0MTM3NmQ0NzkxOTU3OXAtNiwKLSAgICAweDEuZmZjMDAxNTU1MjdkMmIxMmFlZGI0OWQ5MjkyOGRmNzJwLTEsCi0gICAgMHgxLjBwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgODg4Ci0gICAgLTB4MS5mZmVhYWFlZWVlODZlOGNhZmU0MTM3NmQ0NzkxOTU3OXAtNiwKLSAgICAweDEuZmZjMDAxNTU1MjdkMmIxMmFlZGI0OWQ5MjkyOGRmNzJwLTEsCi0gICAgLTB4MS4wcC01LAotICB9LAotICB7IC8vIEVudHJ5IDg4OQotICAgIDB4MS5mZmVhYWFlZWVlODcwOGM2ZmU1NjhjOTUxYTQyODA2OXAtNiwKLSAgICAweDEuZmZjMDAxNTU1MjdkMmIwYWFmMzA5ZTFkNmYwY2ZjNGVwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgODkwCi0gICAgLTB4MS5mZmVhYWFlZWVlODcwOGM2ZmU1NjhjOTUxYTQyODA2OXAtNiwKLSAgICAweDEuZmZjMDAxNTU1MjdkMmIwYWFmMzA5ZTFkNmYwY2ZjNGVwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC01LAotICB9LAotICB7IC8vIEVudHJ5IDg5MQotICAgIDB4MS5mZmZhYWFhZWVlZWQzZWQ1YzljNWFiNjUzOGY5Y2NlMHAtNywKLSAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMzhhMjU2M2VmMzQ0YzNmZjRwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTcsCi0gIH0sCi0gIHsgLy8gRW50cnkgODkyCi0gICAgLTB4MS5mZmZhYWFhZWVlZWQzZWQ1YzljNWFiNjUzOGY5Y2NlMHAtNywKLSAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMzhhMjU2M2VmMzQ0YzNmZjRwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcC03LAotICB9LAotICB7IC8vIEVudHJ5IDg5MwotICAgIDB4MS5mZmZhYWFhZWVlZWQ0ZWQ1NDljNjU2MGY4ODllZTUzMXAtNywKLSAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMjhhMjgwZTk3YmNkNTljOGFwLTEsCi0gICAgMHgxLjBwLTYsCi0gIH0sCi0gIHsgLy8gRW50cnkgODk0Ci0gICAgLTB4MS5mZmZhYWFhZWVlZWQ0ZWQ1NDljNjU2MGY4ODllZTUzMXAtNywKLSAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMjhhMjgwZTk3YmNkNTljOGFwLTEsCi0gICAgLTB4MS4wcC02LAotICB9LAotICB7IC8vIEVudHJ5IDg5NQotICAgIDB4MS5mZmZhYWFhZWVlZWQ2ZWQ0NDljN2FiNjQyN2U4ZmRkNHAtNywKLSAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMDhhMmQ2M2U4Y2RlODNkYjVwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTYsCi0gIH0sCi0gIHsgLy8gRW50cnkgODk2Ci0gICAgLTB4MS5mZmZhYWFhZWVlZWQ2ZWQ0NDljN2FiNjQyN2U4ZmRkNHAtNywKLSAgICAweDEuZmZmMDAwMTU1NTQ5ZjRhMDhhMmQ2M2U4Y2RlODNkYjVwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC02LAotICB9LAotICB7IC8vIEVudHJ5IDg5NwotICAgIDB4MS5mZmZmZmZmYWFhYWE5YWFlZWVlZjZlZWQ0ZWQ0NDJhNHAtMTUsCi0gICAgMHgxLmZmZmZmZmYwMDAwMDAwMTU1NTU2NTU0OWY0OWM5ZjRkcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTgKLSAgICAtMHgxLmZmZmZmZmZhYWFhYTlhYWVlZWVmNmVlZDRlZDQ0MmE0cC0xNSwKLSAgICAweDEuZmZmZmZmZjAwMDAwMDAxNTU1NTY1NTQ5ZjQ5YzlmNGRwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTkKLSAgICAweDEuZmZmZmZmZmFhYWFhYWFhZWVlZWVlZWVkNGVkNGVkNGZwLTE1LAotICAgIDB4MS5mZmZmZmZmMDAwMDAwMDE1NTU1NTU1NDlmNDlmNDlmN3AtMSwKLSAgICAweDEuMHAtMTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTAwCi0gICAgLTB4MS5mZmZmZmZmYWFhYWFhYWFlZWVlZWVlZWQ0ZWQ0ZWQ0ZnAtMTUsCi0gICAgMHgxLmZmZmZmZmYwMDAwMDAwMTU1NTU1NTU0OWY0OWY0OWY3cC0xLAotICAgIC0weDEuMHAtMTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTAxCi0gICAgMHgxLmZmZmZmZmZhYWFhYWNhYWVlZWVkZWVlZDRlZDY0MmE0cC0xNSwKLSAgICAweDEuZmZmZmZmZjAwMDAwMDAxNTU1NTM1NTQ5ZjRhNDlmNGRwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTE0LAotICB9LAotICB7IC8vIEVudHJ5IDkwMgotICAgIC0weDEuZmZmZmZmZmFhYWFhY2FhZWVlZWRlZWVkNGVkNjQyYTRwLTE1LAotICAgIDB4MS5mZmZmZmZmMDAwMDAwMDE1NTU1MzU1NDlmNGE0OWY0ZHAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTE0LAotICB9LAotICB7IC8vIEVudHJ5IDkwMwotICAgIDB4MS5mZmZmZmZmZmZmZmZlZWFhYWFhYWFhYWFhYWNhZWVlZXAtMjgsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZjMDAwMDAwMDAwMDAwNDE1NTU1cC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0yOCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDQKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVlYWFhYWFhYWFhYWFhY2FlZWVlcC0yOCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmMwMDAwMDAwMDAwMDA0MTU1NTVwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0yOCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDUKLSAgICAweDEuZmZmZmZmZmZmZmZmZmVhYWFhYWFhYWFhYWFhYWVlZWVwLTI4LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmYzAwMDAwMDAwMDAwMDAxNTU1NXAtMSwKLSAgICAweDEuMHAtMjcsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA2Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZWFhYWFhYWFhYWFhYWFhZWVlZXAtMjgsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZjMDAwMDAwMDAwMDAwMDE1NTU1cC0xLAotICAgIC0weDEuMHAtMjcsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA3Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDBmNTU1NTU1NTU1NTU1MzU3Nzc3cC0yNywKLSAgICAweDEuZmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmY4MTU1NTVwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTI3LAotICB9LAotICB7IC8vIEVudHJ5IDkwOAotICAgIC0weDEuMDAwMDAwMDAwMDAwMGY1NTU1NTU1NTU1NTUzNTc3NzdwLTI3LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmYmZmZmZmZmZmZmZmZjgxNTU1NXAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTI3LAotICB9LAotICB7IC8vIEVudHJ5IDkwOQotICAgIDB4MS5mZmZmZmZmZmZmZmZlZmZhYWFhYWFhYWFhYWFiMmFhZXAtMzEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDEwMDE1cC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0zMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTAKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVmZmFhYWFhYWFhYWFhYWIyYWFlcC0zMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmMDAwMDAwMDAwMDAwMTAwMTVwLTEsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0zMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTEKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmYWFhYWFhYWFhYWFhYWFhYWVwLTMxLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwMDAxNXAtMSwKLSAgICAweDEuMHAtMzAsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEyCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZhYWFhYWFhYWFhYWFhYWFhZXAtMzEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDAwMDE1cC0xLAotICAgIC0weDEuMHAtMzAsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEzCi0gICAgMHgxLjAwMDAwMDAwMDAwMDBmZmQ1NTU1NTU1NTU1NTRkNTU3cC0zMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZlZmZmZmZmZmZmZmZmZTAwMTVwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTMwLAotICB9LAotICB7IC8vIEVudHJ5IDkxNAotICAgIC0weDEuMDAwMDAwMDAwMDAwMGZmZDU1NTU1NTU1NTU1NGQ1NTdwLTMwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmVmZmZmZmZmZmZmZmZlMDAxNXAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMwLAotICB9LAotICB7IC8vIEVudHJ5IDkxNQotICAgIC0weDEuNDUyZmM5OGIzNGU5NmI2MTEzOWIwOWE3Yzg0YTQ0YmRwLTgsCi0gICAgLTB4MS5mZmZlNjJlY2ZhYjc1M2MwNzFiMjY4MGUxZTI2YmJjZXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTYKLSAgICAweDEuNDUyZmM5OGIzNGU5NmI2MTEzOWIwOWE3Yzg0YTQ0YmRwLTgsCi0gICAgLTB4MS5mZmZlNjJlY2ZhYjc1M2MwNzFiMjY4MGUxZTI2YmJjZXAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzLAotICB9LAotICB7IC8vIEVudHJ5IDkxNwotICAgIDB4MS40NTJmYzk4YjM0ZTk2YjYxMTM5YjA5YTdjODRhNDRiZHAtOCwKLSAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTE4Ci0gICAgLTB4MS40NTJmYzk4YjM0ZTk2YjYxMTM5YjA5YTdjODRhNDRiZHAtOCwKLSAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAotICB9LAotICB7IC8vIEVudHJ5IDkxOQotICAgIDB4MS40NTJmYzk4YjM0ZTk2YjYxMTM5YjA5YTdjODRhNDRiZHAtOCwKLSAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTIwCi0gICAgLTB4MS40NTJmYzk4YjM0ZTk2YjYxMTM5YjA5YTdjODRhNDRiZHAtOCwKLSAgICAtMHgxLmZmZmU2MmVjZmFiNzUzYzA3MWIyNjgwZTFlMjZiYmNlcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzLAotICB9LAotICB7IC8vIEVudHJ5IDkyMQotICAgIDB4MS5kYWEzNjc3YzZlZThhMjJlYjZjNGIxMmNhMTBjZTAyMXAtMSwKLSAgICAweDEuN2ZmZGZiNGM1MzA4Zjc3N2NmNzc0YzczM2IyNTY2OTVwLTIsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwMTAyMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjIKLSAgICAtMHgxLmRhYTM2NzdjNmVlOGEyMmViNmM0YjEyY2ExMGNlMDIxcC0xLAotICAgIDB4MS43ZmZkZmI0YzUzMDhmNzc3Y2Y3NzRjNzMzYjI1NjY5NXAtMiwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVwMTAyMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjMKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQzNmUyZWRwLTUzLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiMjIwYzVwLTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjQKLSAgICAtMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0MzZlMmVkcC01MywKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYjIyMGM1cC0xLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAxLAotICB9LAotICB7IC8vIEVudHJ5IDkyNQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMXAtMSwKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQ0MTlmYThwLTU0LAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTI2Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmVjODgzMXAtMSwKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQ0MTlmYThwLTU0LAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwLAotICB9LAotICB7IC8vIEVudHJ5IDkyNwotICAgIDB4MS5hZWQ1NDhmMDkwY2VmMThiYjVlMzg3MWExNGQ5NDYwOXAtMSwKLSAgICAweDEuMTRhMjgwZmI1MDY4OWUzNjJmZmRkMjIxZTI1NTEwMzVwLTEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjgKLSAgICAtMHgxLmFlZDU0OGYwOTBjZWYxOGJiNWUzODcxYTE0ZDk0NjA5cC0xLAotICAgIDB4MS4xNGEyODBmYjUwNjg5ZTM2MmZmZGQyMjFlMjU1MTAzNXAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjkKLSAgICAweDEuYWVkNTQ4ZjA5MGNlZTA0MThkZDNkMjEzOGExZTc4NjVwLTEsCi0gICAgMHgxLjE0YTI4MGZiNTA2OGI5MjM4NDhjZGIyZWQwZTM3YTUzcC0xLAotICAgIDB4MS4wcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTMwCi0gICAgLTB4MS5hZWQ1NDhmMDkwY2VlMDQxOGRkM2QyMTM4YTFlNzg2NXAtMSwKLSAgICAweDEuMTRhMjgwZmI1MDY4YjkyMzg0OGNkYjJlZDBlMzdhNTNwLTEsCi0gICAgLTB4MS4wcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTMxCi0gICAgMHgxLmFlZDU0OGYwOTBjZWQ3OWM3OWNiZjc5MDQ0MWY4MTk3cC0xLAotICAgIDB4MS4xNGEyODBmYjUwNjhjNjlhMmVkNDVmYjU0N2MyZjI3MXAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzIKLSAgICAtMHgxLmFlZDU0OGYwOTBjZWQ3OWM3OWNiZjc5MDQ0MWY4MTk3cC0xLAotICAgIDB4MS4xNGEyODBmYjUwNjhjNjlhMmVkNDVmYjU0N2MyZjI3MXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTMzCi0gICAgMHgxLjZhMDllNjY3ZjNiY2M1ZTlmZWUzNTJmNTBmZDNmNGU5cC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmNjYzI3NjcxMmQzZDhjNTUwMjM4N3AtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzQKLSAgICAtMHgxLjZhMDllNjY3ZjNiY2M1ZTlmZWUzNTJmNTBmZDNmNGU5cC0xLAotICAgIDB4MS42YTA5ZTY2N2YzYmNjYzI3NjcxMmQzZDhjNTUwMjM4N3AtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTM1Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzYKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDBmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIyLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTM3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuMHAtMTAyMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzgKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjBwLTEwMjIsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTM5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZXAtMTAyMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDAKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmRmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQxCi0gICAgMHgxLmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmY3AtMTAyMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDIKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmNwLTEwMjMsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQzCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDc0LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuMHAtMTA3MywKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDQKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMDc0LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjBwLTEwNzMsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQ1Ci0gICAgMC4wLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuMHAtMTA3NCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDYKLSAgICAtMC4wLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjBwLTEwNzQsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQ3Ci0gICAgMC4wLAotICAgIDB4MS5wMCwKLSAgICAwLjAsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQ4Ci0gICAgLTAuMCwKLSAgICAweDEucDAsCi0gICAgLTAuMCwKLSAgfSwKLX07Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwotCi1URVNUKG1hdGhfc2luY29zLCBzaW5jb3NfaW50ZWwpIHsKLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCi0gIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZW9mKGdfc2luY29zX2ludGVsX2RhdGEpL3NpemVvZihzaW5jb3NfaW50ZWxfZGF0YV90KTsgaSsrKSB7Ci0gICBkb3VibGUgZHNpbiwgZGNvczsKLSAgIHNpbmNvcyhnX3NpbmNvc19pbnRlbF9kYXRhW2ldLmNhbGxfZGF0YSwgJmRzaW4sICZkY29zKTsKLSAgIEVYUEVDVF9ET1VCTEVfRVEoZ19zaW5jb3NfaW50ZWxfZGF0YVtpXS5zaW5fZXhwZWN0ZWQsIGRzaW4pIDw8ICJGYWlsZWQgb24gZWxlbWVudCAiIDw8IGk7Ci0gICBFWFBFQ1RfRE9VQkxFX0VRKGdfc2luY29zX2ludGVsX2RhdGFbaV0uY29zX2V4cGVjdGVkLCBkY29zKSA8PCAiRmFpbGVkIG9uIGVsZW1lbnQgIiA8PCBpOwotICB9Ci0jZWxzZSAvLyBfX0JJT05JQ19fCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCi19CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX3NpbmNvc2ZfdGVzdC5jcHAgYi90ZXN0cy9tYXRoX3NpbmNvc2ZfdGVzdC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGMxYTMyYzkuLjAwMDAwMDAKLS0tIGEvdGVzdHMvbWF0aF9zaW5jb3NmX3Rlc3QuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNDY1OCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLQotI2luY2x1ZGUgPG1hdGguaD4KLQotI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+Ci0KLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCi10eXBlZGVmIHN0cnVjdCB7Ci0gIGZsb2F0IHNpbl9leHBlY3RlZDsKLSAgZmxvYXQgY29zX2V4cGVjdGVkOwotICBmbG9hdCBjYWxsX2RhdGE7Ci19IHNpbmNvc2ZfaW50ZWxfZGF0YV90OwotCi1zdGF0aWMgc2luY29zZl9pbnRlbF9kYXRhX3QgZ19zaW5jb3NmX2ludGVsX2RhdGFbXSA9IHsKLSAgeyAvLyBFbnRyeSAwCi0gICAgLTB4MS5iNmE3YWJmZmFmNTlhNWFjMTgxZTNlMWFiZjk2MTY5OHAtMSwKLSAgICAweDEuMDgwZTc0YzExNjg2M2NmYWI4MmEwZmQ1OWM3MWIzNjNwLTEsCi0gICAgLTB4MS4wNzY4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMQotICAgIDB4MS5iNmE3YWJmZmFmNTlhNWFjMTgxZTNlMWFiZjk2MTY5OHAtMSwKLSAgICAweDEuMDgwZTc0YzExNjg2M2NmYWI4MmEwZmQ1OWM3MWIzNjNwLTEsCi0gICAgMHgxLjA3NjhwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyCi0gICAgMHgxLjc2MmRhNjY0OGZkZTAwZTM5ODQ2MmU3MTYzMDk0ZDUycC0yLAotICAgIDB4MS5kYzk4MDJmZmZmZmZlMGNiZmM1N2VmMjg3ZDNjODNhZnAtMSwKLSAgICAtMHgxLjhmMjE5Y3A1LAotICB9LAotICB7IC8vIEVudHJ5IDMKLSAgICAtMHgxLjc2MmRhNjY0OGZkZTAwZTM5ODQ2MmU3MTYzMDk0ZDUycC0yLAotICAgIDB4MS5kYzk4MDJmZmZmZmZlMGNiZmM1N2VmMjg3ZDNjODNhZnAtMSwKLSAgICAweDEuOGYyMTljcDUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNAotICAgIC0weDEuNDkzYjZhN2QzZjViN2JmNjZmYTMyYTAxNTE1ZDZjNDNwLTEsCi0gICAgLTB4MS44ODFjMjZmZDI1ZDBiZjZkNmVhMzg3MDhhMDk3NmIzNXAtMSwKLSAgICAtMHgxLmQzYTUxYXA4MCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1Ci0gICAgMHgxLjQ5M2I2YTdkM2Y1YjdiZjY2ZmEzMmEwMTUxNWQ2YzQzcC0xLAotICAgIC0weDEuODgxYzI2ZmQyNWQwYmY2ZDZlYTM4NzA4YTA5NzZiMzVwLTEsCi0gICAgMHgxLmQzYTUxYXA4MCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2Ci0gICAgLTB4MS5lMGQxZGMwMDZlODU4MzViMDM5NGFiZTk3ZGU3N2ZiY3AtNCwKLSAgICAweDEuZmM3NWNhNjMxM2VmNzY2MDEyZGIzY2E5OWExYTUyZDFwLTEsCi0gICAgLTB4MS5lMWVlNTJwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNwotICAgIDB4MS5lMGQxZGMwMDZlODU4MzViMDM5NGFiZTk3ZGU3N2ZiY3AtNCwKLSAgICAweDEuZmM3NWNhNjMxM2VmNzY2MDEyZGIzY2E5OWExYTUyZDFwLTEsCi0gICAgMHgxLmUxZWU1MnAtNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4Ci0gICAgLTB4MS4yYjZhOWNhM2RmNjIyZWZlMmFhMzE1NGE2MzUyYmM3MHAtMSwKLSAgICAtMHgxLjlmNTJkZWY1NWQ4OWU5MmU3ZGYyMGVjMjExNjFkZWI4cC0xLAotICAgIC0weDEuZjNmZmUycDI0LAotICB9LAotICB7IC8vIEVudHJ5IDkKLSAgICAweDEuMmI2YTljYTNkZjYyMmVmZTJhYTMxNTRhNjM1MmJjNzBwLTEsCi0gICAgLTB4MS45ZjUyZGVmNTVkODllOTJlN2RmMjBlYzIxMTYxZGViOHAtMSwKLSAgICAweDEuZjNmZmUycDI0LAotICB9LAotICB7IC8vIEVudHJ5IDEwCi0gICAgMHgxLmEzNDIyYWYxM2IyY2ZiNzhkMGNjNDU4ZDlhYzZiZGU5cC0xLAotICAgIC0weDEuMjVlMWFhMWQ5MzgzYzFmMjcwMjdjZjY5YjY5NDc3ZmRwLTEsCi0gICAgLTB4MS5mZjIxMWVwMjQsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEKLSAgICAtMHgxLmEzNDIyYWYxM2IyY2ZiNzhkMGNjNDU4ZDlhYzZiZGU5cC0xLAotICAgIC0weDEuMjVlMWFhMWQ5MzgzYzFmMjcwMjdjZjY5YjY5NDc3ZmRwLTEsCi0gICAgMHgxLmZmMjExZXAyNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMgotICAgIDB4MS5mZmZmZmZhYWFhYWFhZWVlZWVlZWQ0ZWQ0ZWQ1NDljNnAtMTMsCi0gICAgMHgxLmZmZmZmZjAwMDAwMDE1NTU1NTU0OWY0OWY0YTI4YTI4cC0xLAotICAgIDB4MS5wLTEyLAotICB9LAotICB7IC8vIEVudHJ5IDEzCi0gICAgLTB4MS5mZmZmZmZhYWFhYWFhZWVlZWVlZWQ0ZWQ0ZWQ1NDljNnAtMTMsCi0gICAgMHgxLmZmZmZmZjAwMDAwMDE1NTU1NTU0OWY0OWY0YTI4YTI4cC0xLAotICAgIC0weDEucC0xMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNAotICAgIDB4MS4wMDAwMDFkNTU1NTQ1Nzc3NzU4Y2JmY2FmYzA5ZWY3ZXAtMTIsCi0gICAgMHgxLmZmZmZmZWZmZmZmYzE1NTU1MWZmNDlmNjk2YzRhZWNhcC0xLAotICAgIDB4MS4wMDAwMDJwLTEyLAotICB9LAotICB7IC8vIEVudHJ5IDE1Ci0gICAgLTB4MS4wMDAwMDFkNTU1NTQ1Nzc3NzU4Y2JmY2FmYzA5ZWY3ZXAtMTIsCi0gICAgMHgxLmZmZmZmZWZmZmZmYzE1NTU1MWZmNDlmNjk2YzRhZWNhcC0xLAotICAgIC0weDEuMDAwMDAycC0xMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNgotICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZDU1NTU0NTU1NTUzNTU1NXAtMzIsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmVmZmZmZmJmZmZmZmNwLTEsCi0gICAgMHgxLjAwMDAwMnAtMzIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTcKLSAgICAtMHgxLjAwMDAwMWZmZmZmZmZmZmZkNTU1NTQ1NTU1NTM1NTU1cC0zMiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZWZmZmZmYmZmZmZmY3AtMSwKLSAgICAtMHgxLjAwMDAwMnAtMzIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTgKLSAgICAweDEuZWFmMGQ1MDA4ZjJkYjg5OWUyNDg3ZGE5ZDNiOWNkZTdwLTIsCi0gICAgMHgxLmMxNTFkZjRmMTJiMTk3YTY2NWEyOTA3ZTQ5MzNhMWVmcC0xLAotICAgIDB4MS4wMDAxNTBwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkKLSAgICAtMHgxLmVhZjBkNTAwOGYyZGI4OTllMjQ4N2RhOWQzYjljZGU3cC0yLAotICAgIDB4MS5jMTUxZGY0ZjEyYjE5N2E2NjVhMjkwN2U0OTMzYTFlZnAtMSwKLSAgICAtMHgxLjAwMDE1MHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMAotICAgIDB4MS5lYWY3N2VmZmY2NTkwMjFiYzgyN2JiZDU2OTZhZDE5ZXAtMiwKLSAgICAweDEuYzE1MDBkNDk0ZWQyY2M1MDAyYzI3Y2M1Y2EzZDk2ZjhwLTEsCi0gICAgMHgxLjAwMDUxY3AtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMQotICAgIC0weDEuZWFmNzdlZmZmNjU5MDIxYmM4MjdiYmQ1Njk2YWQxOWVwLTIsCi0gICAgMHgxLmMxNTAwZDQ5NGVkMmNjNTAwMmMyN2NjNWNhM2Q5NmY4cC0xLAotICAgIC0weDEuMDAwNTFjcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIyCi0gICAgLTB4MS41YWE1M2MxYzEzMTdmMzBiNGMxMDg3MjJlMmI2NDYxMnAtMSwKLSAgICAweDEuNzhjZGI2ZmZhNmJmZjg5OWUxNzIzZWQwMTM5YzQ4Y2JwLTEsCi0gICAgMHgxLjAwMGZkZXA4MCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMwotICAgIDB4MS41YWE1M2MxYzEzMTdmMzBiNGMxMDg3MjJlMmI2NDYxMnAtMSwKLSAgICAweDEuNzhjZGI2ZmZhNmJmZjg5OWUxNzIzZWQwMTM5YzQ4Y2JwLTEsCi0gICAgLTB4MS4wMDBmZGVwODAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQKLSAgICAweDEuYWVmMzg4MjJlNjQzMTE0NDU1NDU5ODBmYmM1YjU2ZmFwLTEsCi0gICAgMHgxLjE0NzM1ZmZmZDU1MTIwYTQ0ODBiN2M5MWExZDc4ZDZlcC0xLAotICAgIDB4MS4wMDFjcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUKLSAgICAtMHgxLmFlZjM4ODIyZTY0MzExNDQ1NTQ1OTgwZmJjNWI1NmZhcC0xLAotICAgIDB4MS4xNDczNWZmZmQ1NTEyMGE0NDgwYjdjOTFhMWQ3OGQ2ZXAtMSwKLSAgICAtMHgxLjAwMWNwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNgotICAgIC0weDEuN2UxMmFlZTBjODYyYjE3MDliZDUwMjA1YmJhMzIxNjdwLTEsCi0gICAgLTB4MS41NGQ0MjkwMDEwYTY4ODI2YTg4MmU3Yzg3ZDY2OTRkMnAtMSwKLSAgICAweDEuMDAyN2I4cDQwLAotICB9LAotICB7IC8vIEVudHJ5IDI3Ci0gICAgMHgxLjdlMTJhZWUwYzg2MmIxNzA5YmQ1MDIwNWJiYTMyMTY3cC0xLAotICAgIC0weDEuNTRkNDI5MDAxMGE2ODgyNmE4ODJlN2M4N2Q2Njk0ZDJwLTEsCi0gICAgLTB4MS4wMDI3YjhwNDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgKLSAgICAtMHgxLmJkNjk0NGVmNGRkMWI0Mzk2MmUyZDM0ODA0MTBmZDg3cC0xLAotICAgIDB4MS5mOGZjOGVmZmY2N2Q4MzRmNjg3OGFiNGU0NGZhODliNXAtMiwKLSAgICAweDEuMDA0ODQwcDY4LAotICB9LAotICB7IC8vIEVudHJ5IDI5Ci0gICAgMHgxLmJkNjk0NGVmNGRkMWI0Mzk2MmUyZDM0ODA0MTBmZDg3cC0xLAotICAgIDB4MS5mOGZjOGVmZmY2N2Q4MzRmNjg3OGFiNGU0NGZhODliNXAtMiwKLSAgICAtMHgxLjAwNDg0MHA2OCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMAotICAgIDB4MS5mNGUyM2UwMDE2NWE0OTA3YTY1NmE3Y2Y1MzJiYmRlNHAtMiwKLSAgICAweDEuYmU5MTYwMWU0N2JlZDZkNDVlODM3MjY4N2IzNzNjMGNwLTEsCi0gICAgMHgxLjA1YjBwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzEKLSAgICAtMHgxLmY0ZTIzZTAwMTY1YTQ5MDdhNjU2YTdjZjUzMmJiZGU0cC0yLAotICAgIDB4MS5iZTkxNjAxZTQ3YmVkNmQ0NWU4MzcyNjg3YjM3M2MwY3AtMSwKLSAgICAtMHgxLjA1YjBwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIKLSAgICAweDEuYjZhN2FiZmZhZjU5YTVhYzE4MWUzZTFhYmY5NjE2OThwLTEsCi0gICAgMHgxLjA4MGU3NGMxMTY4NjNjZmFiODJhMGZkNTljNzFiMzYzcC0xLAotICAgIDB4MS4wNzY4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMKLSAgICAtMHgxLmI2YTdhYmZmYWY1OWE1YWMxODFlM2UxYWJmOTYxNjk4cC0xLAotICAgIDB4MS4wODBlNzRjMTE2ODYzY2ZhYjgyYTBmZDU5YzcxYjM2M3AtMSwKLSAgICAtMHgxLjA3NjhwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNAotICAgIDB4MS5iY2I4YWFmZmZmZmQ2OWQyODY1YWFmM2Y0YzUwNzRlOHAtMSwKLSAgICAweDEuZmI2OWE2ZGM1MTNiY2JhNTlkNWRjNjhkM2Q1OWEwNWNwLTIsCi0gICAgMHgxLjBkNjdhNHAwLAotICB9LAotICB7IC8vIEVudHJ5IDM1Ci0gICAgLTB4MS5iY2I4YWFmZmZmZmQ2OWQyODY1YWFmM2Y0YzUwNzRlOHAtMSwKLSAgICAweDEuZmI2OWE2ZGM1MTNiY2JhNTlkNWRjNjhkM2Q1OWEwNWNwLTIsCi0gICAgLTB4MS4wZDY3YTRwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNgotICAgIDB4MS5iZjY4M2NmZmZmZWM2ZTg2NzJhNDlmMDhhYWU0OWM0NnAtMSwKLSAgICAweDEuZjFlMGY2NTNkNjk1OTc3Y2NkMjQwZmY2YjkyOTczOTNwLTIsCi0gICAgMHgxLjEwMjRwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNwotICAgIC0weDEuYmY2ODNjZmZmZmVjNmU4NjcyYTQ5ZjA4YWFlNDljNDZwLTEsCi0gICAgMHgxLmYxZTBmNjUzZDY5NTk3N2NjZDI0MGZmNmI5Mjk3MzkzcC0yLAotICAgIC0weDEuMTAyNHAwLAotICB9LAotICB7IC8vIEVudHJ5IDM4Ci0gICAgMHgxLjhiMWU4ZTFjMTZhOGQ5NzBhNzhhMjM5MWVlYTY1NzVjcC0xLAotICAgIC0weDEuNDU5ZDQ1MDAwMDAwOTJiNGI4MzA3YzY1MmVlNjM5YTdwLTEsCi0gICAgMHgxLjIxNDk3ZXAxLAotICB9LAotICB7IC8vIEVudHJ5IDM5Ci0gICAgLTB4MS44YjFlOGUxYzE2YThkOTcwYTc4YTIzOTFlZWE2NTc1Y3AtMSwKLSAgICAtMHgxLjQ1OWQ0NTAwMDAwMDkyYjRiODMwN2M2NTJlZTYzOWE3cC0xLAotICAgIC0weDEuMjE0OTdlcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAKLSAgICAweDEuNjk5MWUwZmZlN2Y5YzliM2VmN2IzMDE3ZDIzNjM5ZmFwLTEsCi0gICAgLTB4MS42YTgxYzQxMzNkYjczZTI3NmM4OWU3MjRjNmZlOTc1YnAtMSwKLSAgICAweDEuMmRjMjMwcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDEKLSAgICAtMHgxLjY5OTFlMGZmZTdmOWM5YjNlZjdiMzAxN2QyMzYzOWZhcC0xLAotICAgIC0weDEuNmE4MWM0MTMzZGI3M2UyNzZjODllNzI0YzZmZTk3NWJwLTEsCi0gICAgLTB4MS4yZGMyMzBwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MgotICAgIDB4MS40MWY2YmQwMDAwZDEzYmEyYmQ3YTYzYmY2ZDk1MDg2NXAtMSwKLSAgICAtMHgxLjhlMTk3ZmU0ZmFjOTkwMWRjMDdhMjg3OGJhZjE1YzdhcC0xLAotICAgIDB4MS4zNDQyNDhwMTgsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMKLSAgICAtMHgxLjQxZjZiZDAwMDBkMTNiYTJiZDdhNjNiZjZkOTUwODY1cC0xLAotICAgIC0weDEuOGUxOTdmZTRmYWM5OTAxZGMwN2EyODc4YmFmMTVjN2FwLTEsCi0gICAgLTB4MS4zNDQyNDhwMTgsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQKLSAgICAweDEuMzdmOGRlZmZmZmZmNjFjYTE1YzM2NmIzYWRkOGYzNzNwLTEsCi0gICAgLTB4MS45NWZhMjBkMjMwZmRmOWU4Y2NjYzU5MjFlNjFmMDNhZHAtMSwKLSAgICAweDEuM2U0MnAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ1Ci0gICAgLTB4MS4zN2Y4ZGVmZmZmZmY2MWNhMTVjMzY2YjNhZGQ4ZjM3M3AtMSwKLSAgICAtMHgxLjk1ZmEyMGQyMzBmZGY5ZThjY2NjNTkyMWU2MWYwM2FkcC0xLAotICAgIC0weDEuM2U0MnAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ2Ci0gICAgMHgxLjJlZDdjZTUxOGY0NjYwY2NlNDk1NTY4NTY3ODQ5NzBjcC0xLAotICAgIDB4MS45Y2Q0ZjMwMDAwMDIyNjRhZjJiMzJlYmU1ZDgyNDNjMHAtMSwKLSAgICAweDEuNDQwYzNhcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDQ3Ci0gICAgLTB4MS4yZWQ3Y2U1MThmNDY2MGNjZTQ5NTU2ODU2Nzg0OTcwY3AtMSwKLSAgICAweDEuOWNkNGYzMDAwMDAyMjY0YWYyYjMyZWJlNWQ4MjQzYzBwLTEsCi0gICAgLTB4MS40NDBjM2FwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDgKLSAgICAweDEuNDc1ZmM5Mzc3NTBiZGYyZjcwNDE3NzYxMmQzMWRjMWZwLTEsCi0gICAgMHgxLjg5YTk5OTAwMDAxMmMwNDdlNGIyNDE4MWQ2MTU4NjQwcC0xLAotICAgIDB4MS42MzJmNmFwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDkKLSAgICAtMHgxLjQ3NWZjOTM3NzUwYmRmMmY3MDQxNzc2MTJkMzFkYzFmcC0xLAotICAgIDB4MS44OWE5OTkwMDAwMTJjMDQ3ZTRiMjQxODFkNjE1ODY0MHAtMSwKLSAgICAtMHgxLjYzMmY2YXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MAotICAgIC0weDEuOGFjZTFjZmNjMGE3NjZiMzVkMGU4ZjQ4ZjMxNjllOGFwLTEsCi0gICAgLTB4MS40NWZlYzk1YTQwNjE5ODE5ZTMzMDdhZWJlMGNiNWU4OXAtMSwKLSAgICAweDEuNmU4ZjE4cDI0LAotICB9LAotICB7IC8vIEVudHJ5IDUxCi0gICAgMHgxLjhhY2UxY2ZjYzBhNzY2YjM1ZDBlOGY0OGYzMTY5ZThhcC0xLAotICAgIC0weDEuNDVmZWM5NWE0MDYxOTgxOWUzMzA3YWViZTBjYjVlODlwLTEsCi0gICAgLTB4MS42ZThmMThwMjQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIKLSAgICAweDEuN2M2YjkyZmYyNGZmMDI4ZWEzNWM0NTllNWViZWIyY2RwLTEsCi0gICAgMHgxLjU2YWMyYWU1NGNjOWE1MjEwYWU2NzNlYTFjZTMxZDQ3cC0xLAotICAgIDB4MS43OTU4NDBwMjMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMKLSAgICAtMHgxLjdjNmI5MmZmMjRmZjAyOGVhMzVjNDU5ZTVlYmViMmNkcC0xLAotICAgIDB4MS41NmFjMmFlNTRjYzlhNTIxMGFlNjczZWExY2UzMWQ0N3AtMSwKLSAgICAtMHgxLjc5NTg0MHAyMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NAotICAgIDB4MS42OTdjZjRmZmVhOTI0NGU4NWNlYTY0MGQxM2M2ZmJiNXAtMSwKLSAgICAtMHgxLjZhOTZhMTA2YWNlMjE2MTBhYjUyOWM5MDQ3YzdlNmUycC0xLAotICAgIDB4MS43ZmU3ZmVwMzUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUKLSAgICAtMHgxLjY5N2NmNGZmZWE5MjQ0ZTg1Y2VhNjQwZDEzYzZmYmI1cC0xLAotICAgIC0weDEuNmE5NmExMDZhY2UyMTYxMGFiNTI5YzkwNDdjN2U2ZTJwLTEsCi0gICAgLTB4MS43ZmU3ZmVwMzUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYKLSAgICAweDEuOWM2Y2YyZmZmZmZlODU4ODUxMmVhM2M4MDhiMGZhOWZwLTEsCi0gICAgMHgxLjJmNjU2MGUwZjE0Y2Q1ZDY4OTIwYmVjMGUwYzI1MzU0cC0xLAotICAgIDB4MS5jZTEwMjZwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NwotICAgIC0weDEuOWM2Y2YyZmZmZmZlODU4ODUxMmVhM2M4MDhiMGZhOWZwLTEsCi0gICAgMHgxLjJmNjU2MGUwZjE0Y2Q1ZDY4OTIwYmVjMGUwYzI1MzU0cC0xLAotICAgIC0weDEuY2UxMDI2cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgKLSAgICAtMHgxLjA3ZmFjMDRjNmU3M2Y0ODUwOTZiZGFhM2U2NTA0NGQ5cC0xLAotICAgIC0weDEuYjZiMzg3ZmZjZWI2N2ExOGMxNWU4Njg1NTBiOTY0NjJwLTEsCi0gICAgMHgxLmQ3NzVkMHAxLAotICB9LAotICB7IC8vIEVudHJ5IDU5Ci0gICAgMHgxLjA3ZmFjMDRjNmU3M2Y0ODUwOTZiZGFhM2U2NTA0NGQ5cC0xLAotICAgIC0weDEuYjZiMzg3ZmZjZWI2N2ExOGMxNWU4Njg1NTBiOTY0NjJwLTEsCi0gICAgLTB4MS5kNzc1ZDBwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MAotICAgIDB4MS45YThjNjJmNGIyYTk0OWIwNjkyNDY2MmQ5NDM2YmYxN3AtMSwKLSAgICAweDEuMzFlZTcwNzRlM2ViYzVhMzBmMDA5MmVjNmM1ZDhiODBwLTEsCi0gICAgMHgxLmRmZWFhYXAxMDgsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEKLSAgICAtMHgxLjlhOGM2MmY0YjJhOTQ5YjA2OTI0NjYyZDk0MzZiZjE3cC0xLAotICAgIDB4MS4zMWVlNzA3NGUzZWJjNWEzMGYwMDkyZWM2YzVkOGI4MHAtMSwKLSAgICAtMHgxLmRmZWFhYXAxMDgsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjIKLSAgICAweDEuZDRkZThhZmZmZmZmZDk2ZjgzYmE0NDJmZGYyZjcxMDFwLTIsCi0gICAgMHgxLmM3MmNkNGUxZDZjNzg1NDdkMzE3MDdiZTgwYjRiMGFlcC0xLAotICAgIDB4MS5lNzA2MWVwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjMKLSAgICAtMHgxLmQ0ZGU4YWZmZmZmZmQ5NmY4M2JhNDQyZmRmMmY3MTAxcC0yLAotICAgIDB4MS5jNzJjZDRlMWQ2Yzc4NTQ3ZDMxNzA3YmU4MGI0YjBhZXAtMSwKLSAgICAtMHgxLmU3MDYxZXAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NAotICAgIC0weDEuNDgzNDQ1ZDQxOTQ4MTMxNjhhMWFjNjNlZWUxOTQzZjlwLTEsCi0gICAgMHgxLjg4Zjg4MmZjYmM4MWZmZGY3MjBhNGJiMWIyZmNhNzFkcC0xLAotICAgIDB4MS5lODliMmFwODAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUKLSAgICAweDEuNDgzNDQ1ZDQxOTQ4MTMxNjhhMWFjNjNlZWUxOTQzZjlwLTEsCi0gICAgMHgxLjg4Zjg4MmZjYmM4MWZmZGY3MjBhNGJiMWIyZmNhNzFkcC0xLAotICAgIC0weDEuZTg5YjJhcDgwLAotICB9LAotICB7IC8vIEVudHJ5IDY2Ci0gICAgMHgxLjU2NWU0MTAwMTQ5MTZmYTY1NTBlNjA2ZWQ1ODhjNmI4cC0xLAotICAgIDB4MS43Y2IxYjM0YWY4NTU4OWJkYWY3YzA3OTNhZjMwYjY4MnAtMSwKLSAgICAweDEuZmU4MjcwcDE4LAotICB9LAotICB7IC8vIEVudHJ5IDY3Ci0gICAgLTB4MS41NjVlNDEwMDE0OTE2ZmE2NTUwZTYwNmVkNTg4YzZiOHAtMSwKLSAgICAweDEuN2NiMWIzNGFmODU1ODliZGFmN2MwNzkzYWYzMGI2ODJwLTEsCi0gICAgLTB4MS5mZTgyNzBwMTgsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgKLSAgICAtMHgxLjgzNTZmYmFlYTA0NTRiY2UzOTgzZDlhMGUwMjUwYzU1cC0xLAotICAgIC0weDEuNGVkNGM1ZmZjODAxODc0MTg3MDk0OTc2N2ZmOGRhZmFwLTEsCi0gICAgMHgxLmZmZjFmZXAxLAotICB9LAotICB7IC8vIEVudHJ5IDY5Ci0gICAgMHgxLjgzNTZmYmFlYTA0NTRiY2UzOTgzZDlhMGUwMjUwYzU1cC0xLAotICAgIC0weDEuNGVkNGM1ZmZjODAxODc0MTg3MDk0OTc2N2ZmOGRhZmFwLTEsCi0gICAgLTB4MS5mZmYxZmVwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MAotICAgIDB4MS5mYTlkNmJmYjMzYTc3YjJlM2IzMjg5MTY4Y2VkNmRjYXAtMSwKLSAgICAtMHgxLjI4NDA2YTAwMjU1NDVjOWE1NjhkYWNkNDU1MThkZDY1cC0zLAotICAgIDB4MS5mZmYxZmVwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MQotICAgIC0weDEuZmE5ZDZiZmIzM2E3N2IyZTNiMzI4OTE2OGNlZDZkY2FwLTEsCi0gICAgLTB4MS4yODQwNmEwMDI1NTQ1YzlhNTY4ZGFjZDQ1NTE4ZGQ2NXAtMywKLSAgICAtMHgxLmZmZjFmZXAyLAotICB9LAotICB7IC8vIEVudHJ5IDcyCi0gICAgMHgxLmQxOGY3NmZmYzZlNGJhMGEzMTM0ZTViZTIxYjViYzhmcC0xLAotICAgIC0weDEuYWEyMjQxMTYwMjI3ODk2YzY4ZWYxNzgzOWYxN2RjZTVwLTIsCi0gICAgMHgxLmZmZmZmNnAwLAotICB9LAotICB7IC8vIEVudHJ5IDczCi0gICAgLTB4MS5kMThmNzZmZmM2ZTRiYTBhMzEzNGU1YmUyMWI1YmM4ZnAtMSwKLSAgICAtMHgxLmFhMjI0MTE2MDIyNzg5NmM2OGVmMTc4MzlmMTdkY2U1cC0yLAotICAgIC0weDEuZmZmZmY2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQKLSAgICAweDEuZmZmZmZhYWFhYWIyZWVlZWRjM2RjM2YxZWU3YjQxZmVwLTEyLAotICAgIDB4MS5mZmZmZmMwMDAwMTE1NTU1M2E3ZDI3ZjRhMjg5ZjMxOXAtMSwKLSAgICAweDEuZmZmZmZjcC0xMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NQotICAgIC0weDEuZmZmZmZhYWFhYWIyZWVlZWRjM2RjM2YxZWU3YjQxZmVwLTEyLAotICAgIDB4MS5mZmZmZmMwMDAwMTE1NTU1M2E3ZDI3ZjRhMjg5ZjMxOXAtMSwKLSAgICAtMHgxLmZmZmZmY3AtMTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYKLSAgICAtMC4wZiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS5wLTE0OSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NwotICAgIDAuMGYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5wLTE0OSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OAotICAgIDAuMCwKLSAgICAweDEucDAsCi0gICAgMC4wLAotICB9LAotICB7IC8vIEVudHJ5IDc5Ci0gICAgMC4wZiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLnAtMTQ5LAotICB9LAotICB7IC8vIEVudHJ5IDgwCi0gICAgLTAuMGYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEucC0xNDksCi0gIH0sCi0gIHsgLy8gRW50cnkgODEKLSAgICAtMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMDAwMDAycC0xMjYsCi0gIH0sCi0gIHsgLy8gRW50cnkgODIKLSAgICAweDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLjAwMDAwMnAtMTI2LAotICB9LAotICB7IC8vIEVudHJ5IDgzCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLnAtMTI2LAotICB9LAotICB7IC8vIEVudHJ5IDg0Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5wLTEyNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NQotICAgIC0weDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS5mZmZmZmNwLTEyNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NgotICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuZmZmZmZjcC0xMjcsCi0gIH0sCi0gIHsgLy8gRW50cnkgODcKLSAgICAweDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLmZmZmZmY3AtMTI3LAotICB9LAotICB7IC8vIEVudHJ5IDg4Ci0gICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLmZmZmZmY3AtMTI3LAotICB9LAotICB7IC8vIEVudHJ5IDg5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5wLTEyNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS5wLTEyNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MQotICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI2LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuMDAwMDAycC0xMjYsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTIKLSAgICAtMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEuMDAwMDAycC0xMjYsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTMKLSAgICAweDEuOTk5OTk5ZDQ0ZjMwNThjNzg5MDE0YjdkMGUyMmZlYzNwLTEzLAotICAgIDB4MS5mZmZmZmY1YzI4ZjU3OTYwY2Q1NmViZmU5NDgyYTYxZnAtMSwKLSAgICAweDEuOTk5OTlhcC0xMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NAotICAgIC0weDEuOTk5OTk5ZDQ0ZjMwNThjNzg5MDE0YjdkMGUyMmZlYzNwLTEzLAotICAgIDB4MS5mZmZmZmY1YzI4ZjU3OTYwY2Q1NmViZmU5NDgyYTYxZnAtMSwKLSAgICAtMHgxLjk5OTk5YXAtMTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTUKLSAgICAweDEuOTk5OTk5NTEzY2MxNzNlNTFiYjk5NTViMDY2ZjFkYjhwLTEyLAotICAgIDB4MS5mZmZmZmQ3MGEzZDY0ZTVlYzE2NWNkNDMwN2FkMTMyNnAtMSwKLSAgICAweDEuOTk5OTlhcC0xMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NgotICAgIC0weDEuOTk5OTk5NTEzY2MxNzNlNTFiYjk5NTViMDY2ZjFkYjhwLTEyLAotICAgIDB4MS5mZmZmZmQ3MGEzZDY0ZTVlYzE2NWNkNDMwN2FkMTMyNnAtMSwKLSAgICAtMHgxLjk5OTk5YXAtMTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTcKLSAgICAweDEuMzMzMzMyZDkxNjg1MzIxZTVmYzM5N2QyMGE1YWYxZTZwLTExLAotICAgIDB4MS5mZmZmZmEzZDcwOWVlY2JmYjVhMzg1YjBmM2UwY2I4ZnAtMSwKLSAgICAweDEuMzMzMzM0cC0xMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OAotICAgIC0weDEuMzMzMzMyZDkxNjg1MzIxZTVmYzM5N2QyMGE1YWYxZTZwLTExLAotICAgIDB4MS5mZmZmZmEzZDcwOWVlY2JmYjVhMzg1YjBmM2UwY2I4ZnAtMSwKLSAgICAtMHgxLjMzMzMzNHAtMTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTkKLSAgICAweDEuOTk5OTk3NDRmMzA2ZGMwM2U5ZWY3MDg5N2Y3ODI5OWVwLTExLAotICAgIDB4MS5mZmZmZjVjMjhmNWZjNzMzYzQyMDJhYTBiZGE5MmY5N3AtMSwKLSAgICAweDEuOTk5OTlhcC0xMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDAKLSAgICAtMHgxLjk5OTk5NzQ0ZjMwNmRjMDNlOWVmNzA4OTdmNzgyOTllcC0xMSwKLSAgICAweDEuZmZmZmY1YzI4ZjVmYzczM2M0MjAyYWEwYmRhOTJmOTdwLTEsCi0gICAgLTB4MS45OTk5OWFwLTExLAotICB9LAotICB7IC8vIEVudHJ5IDEwMQotICAgIDB4MS5mZmZmZmFhYWFhYWVlZWVlZWQ0ZWQ0ZWRhYjRjN2JkNnAtMTEsCi0gICAgMHgxLmZmZmZmMDAwMDAxNTU1NTU0OWY0OWY0ZDM0ZDM0Y2EwcC0xLAotICAgIDB4MS5wLTEwLAotICB9LAotICB7IC8vIEVudHJ5IDEwMgotICAgIC0weDEuZmZmZmZhYWFhYWFlZWVlZWVkNGVkNGVkYWI0YzdiZDZwLTExLAotICAgIDB4MS5mZmZmZjAwMDAwMTU1NTU1NDlmNDlmNGQzNGQzNGNhMHAtMSwKLSAgICAtMHgxLnAtMTAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAzCi0gICAgMHgxLjMzMzMyZjY0NWExOGMzYjBjY2ZjMGEzY2Y3YjJlOTFicC0xMCwKLSAgICAweDEuZmZmZmU4ZjVjMjljZTA3NjQwYmQ1ZjZkOGJiMWVhNmJwLTEsCi0gICAgMHgxLjMzMzMzNHAtMTAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA0Ci0gICAgLTB4MS4zMzMzMmY2NDVhMThjM2IwY2NmYzBhM2NmN2IyZTkxYnAtMTAsCi0gICAgMHgxLmZmZmZlOGY1YzI5Y2UwNzY0MGJkNWY2ZDhiYjFlYTZicC0xLAotICAgIC0weDEuMzMzMzM0cC0xMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUKLSAgICAweDEuNjY2NjYwYWVjMzMwODIxYzdhMTAwY2Y0ODhjMzgwZWJwLTEwLAotICAgIDB4MS5mZmZmZTBhM2Q3MTQ4MzlmMzYwMTE0N2FkYTczZjhkOXAtMSwKLSAgICAweDEuNjY2NjY4cC0xMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYKLSAgICAtMHgxLjY2NjY2MGFlYzMzMDgyMWM3YTEwMGNmNDg4YzM4MGVicC0xMCwKLSAgICAweDEuZmZmZmUwYTNkNzE0ODM5ZjM2MDExNDdhZGE3M2Y4ZDlwLTEsCi0gICAgLTB4MS42NjY2NjhwLTEwLAotICB9LAotICB7IC8vIEVudHJ5IDEwNwotICAgIDB4MS45OTk5OTExM2NjMDM0MTQ0ZmRiZGM4YTFkYzcxMzI1M3AtMTAsCi0gICAgMHgxLmZmZmZkNzBhM2Q4MTkxZjY2ZGU1NDA4ZmIyYjk5NWEwcC0xLAotICAgIDB4MS45OTk5OWNwLTEwLAotICB9LAotICB7IC8vIEVudHJ5IDEwOAotICAgIC0weDEuOTk5OTkxMTNjYzAzNDE0NGZkYmRjOGExZGM3MTMyNTNwLTEwLAotICAgIDB4MS5mZmZmZDcwYTNkODE5MWY2NmRlNTQwOGZiMmI5OTVhMHAtMSwKLSAgICAtMHgxLjk5OTk5Y3AtMTAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5Ci0gICAgMHgxLmNjY2NiYzcyYjA1ZGQwOTUxYTljNWU2NTU2MGM1NmUzcC0xMCwKLSAgICAweDEuZmZmZmNjMjhmNmQwOTZiODdkNmQxOWEwNmU5Njk5OWJwLTEsCi0gICAgMHgxLmNjY2NjY3AtMTAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEwCi0gICAgLTB4MS5jY2NjYmM3MmIwNWRkMDk1MWE5YzVlNjU1NjBjNTZlM3AtMTAsCi0gICAgMHgxLmZmZmZjYzI4ZjZkMDk2Yjg3ZDZkMTlhMDZlOTY5OTlicC0xLAotICAgIC0weDEuY2NjY2NjcC0xMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTEKLSAgICAweDEuMDY2NWFlMzYxNWI1YjdkZTUyNzk4MDY0ZGZjNTliMjlwLTcsCi0gICAgMHgxLmZmZmJjYzJhNzFjZWFhYmY1NTgyYjZkYTFmYzMwNTMxcC0xLAotICAgIDB4MS4wNjY2NjZwLTcsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEyCi0gICAgLTB4MS4wNjY1YWUzNjE1YjViN2RlNTI3OTgwNjRkZmM1OWIyOXAtNywKLSAgICAweDEuZmZmYmNjMmE3MWNlYWFiZjU1ODJiNmRhMWZjMzA1MzFwLTEsCi0gICAgLTB4MS4wNjY2NjZwLTcsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEzCi0gICAgMHgxLmNjYzhlOGFlOTI1ODZkOGQ2NmI2YWQwYWVkY2IwZDk0cC03LAotICAgIDB4MS5mZmYzMGE0YjdiNTExOWQ4ZTI5OWY3MTdlYzBlY2UxNnAtMSwKLSAgICAweDEuY2NjY2NjcC03LAotICB9LAotICB7IC8vIEVudHJ5IDExNAotICAgIC0weDEuY2NjOGU4YWU5MjU4NmQ4ZDY2YjZhZDBhZWRjYjBkOTRwLTcsCi0gICAgMHgxLmZmZjMwYTRiN2I1MTE5ZDhlMjk5ZjcxN2VjMGVjZTE2cC0xLAotICAgIC0weDEuY2NjY2NjcC03LAotICB9LAotICB7IC8vIEVudHJ5IDExNQotICAgIDB4MS40OTkzZTcwZjdiMTdjMTBhZjlmOTdmYzdiMzNiODIyYnAtNiwKLSAgICAweDEuZmZlNTdhNzg1MTIzMjI2YzFlMmVmYjQxMTM1M2VkYzlwLTEsCi0gICAgMHgxLjQ5OTk5OHAtNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTYKLSAgICAtMHgxLjQ5OTNlNzBmN2IxN2MxMGFmOWY5N2ZjN2IzM2I4MjJicC02LAotICAgIDB4MS5mZmU1N2E3ODUxMjMyMjZjMWUyZWZiNDExMzUzZWRjOXAtMSwKLSAgICAtMHgxLjQ5OTk5OHAtNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTcKLSAgICAweDEuYWNjMDQzZjhiMmQ4OWFkNTE0M2MwMzBlOTc2NmZjMTFwLTYsCi0gICAgMHgxLmZmZDMxY2QxMGNiNjMyZDk3MzNhYzVmNWYzMjdhNWY5cC0xLAotICAgIDB4MS5hY2NjY2NwLTYsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE4Ci0gICAgLTB4MS5hY2MwNDNmOGIyZDg5YWQ1MTQzYzAzMGU5NzY2ZmMxMXAtNiwKLSAgICAweDEuZmZkMzFjZDEwY2I2MzJkOTczM2FjNWY1ZjMyN2E1ZjlwLTEsCi0gICAgLTB4MS5hY2NjY2NwLTYsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE5Ci0gICAgMHgxLjA3ZjQ0ZDY3Y2Y0MWFmYmMwYzk1MTA4Yjk5ZjkxYjAxcC01LAotICAgIDB4MS5mZmJiZjE4MjA3NTQyZWY4MTM5MGQ3M2MzYmE4OWMxYXAtMSwKLSAgICAweDEuMDhwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwCi0gICAgLTB4MS4wN2Y0NGQ2N2NmNDFhZmJjMGM5NTEwOGI5OWY5MWIwMXAtNSwKLSAgICAweDEuZmZiYmYxODIwNzU0MmVmODEzOTBkNzNjM2JhODljMWFwLTEsCi0gICAgLTB4MS4wOHAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjEKLSAgICAweDEuMzk4NWZlYWQ0NGZhMmI4NTFlNjUxYWNiYTM2OWQ3NjlwLTUsCi0gICAgMHgxLmZmOWZmOGMyZWFlYWVlMzBmYjIxMTc2NWFmODM1MTcxcC0xLAotICAgIDB4MS4zOTk5OWFwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIyCi0gICAgLTB4MS4zOTg1ZmVhZDQ0ZmEyYjg1MWU2NTFhY2JhMzY5ZDc2OXAtNSwKLSAgICAweDEuZmY5ZmY4YzJlYWVhZWUzMGZiMjExNzY1YWY4MzUxNzFwLTEsCi0gICAgLTB4MS4zOTk5OWFwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIzCi0gICAgMHgxLjZiMTRiZWI1ZDQwZDc0NTA5NjI0N2U1OWI2MjI4MjhicC01LAotICAgIDB4MS5mZjdmMzJkNmViMWY5Y2Y5MDIyNmVjMjkxYzllMDkyMnAtMSwKLSAgICAweDEuNmIzMzM0cC01LAotICB9LAotICB7IC8vIEVudHJ5IDEyNAotICAgIC0weDEuNmIxNGJlYjVkNDBkNzQ1MDk2MjQ3ZTU5YjYyMjgyOGJwLTUsCi0gICAgMHgxLmZmN2YzMmQ2ZWIxZjljZjkwMjI2ZWMyOTFjOWUwOTIycC0xLAotICAgIC0weDEuNmIzMzM0cC01LAotICB9LAotICB7IC8vIEVudHJ5IDEyNQotICAgIDB4MS45Y2EwMTY3MWE3OTk1ZmM5N2NlYmQ2OTcyOWNjNDMwOXAtNSwKLSAgICAweDEuZmY1OWEwMGNjNGFkNDkyY2EyNTk3NDk1NDEyOTk4ZWRwLTEsCi0gICAgMHgxLjljY2NjZXAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjYKLSAgICAtMHgxLjljYTAxNjcxYTc5OTVmYzk3Y2ViZDY5NzI5Y2M0MzA5cC01LAotICAgIDB4MS5mZjU5YTAwY2M0YWQ0OTJjYTI1OTc0OTU0MTI5OThlZHAtMSwKLSAgICAtMHgxLjljY2NjZXAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjcKLSAgICAweDEuY2UyNzhjZDllYjJjYmQwYzZhNGUxMjc5ZjY5MGU4NTZwLTUsCi0gICAgMHgxLmZmMmY0MGMwOGFjZjQ1ODBhOGQxMzM4MGQ5MDczMzk4cC0xLAotICAgIDB4MS5jZTY2NjZwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI4Ci0gICAgLTB4MS5jZTI3OGNkOWViMmNiZDBjNmE0ZTEyNzlmNjkwZTg1NnAtNSwKLSAgICAweDEuZmYyZjQwYzA4YWNmNDU4MGE4ZDEzMzgwZDkwNzMzOThwLTEsCi0gICAgLTB4MS5jZTY2NjZwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI5Ci0gICAgMHgxLjQzYzFlOTk3MjM5MWFhOGVjZDhhOWNjYmE5MDc5MjBhcC0xLAotICAgIDB4MS44Y2E0NmNhMDExNzcxYmZhZTBkOWVkYmYxZGFjYjQwMnAtMSwKLSAgICAweDEuNWU3ZmM0cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDEzMAotICAgIC0weDEuNDNjMWU5OTcyMzkxYWE4ZWNkOGE5Y2NiYTkwNzkyMGFwLTEsCi0gICAgMHgxLjhjYTQ2Y2EwMTE3NzFiZmFlMGQ5ZWRiZjFkYWNiNDAycC0xLAotICAgIC0weDEuNWU3ZmM0cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDEzMQotICAgIDB4MS5lZTNkNmJiMjFjNjRiMjM4MmVmY2ZmMGNkZjMwY2UwYnAtMSwKLSAgICAweDEuMGI1ZDM4ZDVkODJlNGE3NjI0ZGFjNGUxMGNlMTU5YzJwLTIsCi0gICAgMHgxLjRlN2ZjNHAwLAotICB9LAotICB7IC8vIEVudHJ5IDEzMgotICAgIC0weDEuZWUzZDZiYjIxYzY0YjIzODJlZmNmZjBjZGYzMGNlMGJwLTEsCi0gICAgMHgxLjBiNWQzOGQ1ZDgyZTRhNzYyNGRhYzRlMTBjZTE1OWMycC0yLAotICAgIC0weDEuNGU3ZmM0cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMzCi0gICAgMHgxLmRmOGUyMzIzZTRiZjFhNTM4YTEwMGVjMWJmMzQ5NGE5cC0xLAotICAgIC0weDEuNjZiOTZlMjA0ZTY5Y2RhOGU5Y2Y1MDk5NjQzMjUzOWVwLTIsCi0gICAgMHgxLmVkYmZhNnAwLAotICB9LAotICB7IC8vIEVudHJ5IDEzNAotICAgIC0weDEuZGY4ZTIzMjNlNGJmMWE1MzhhMTAwZWMxYmYzNDk0YTlwLTEsCi0gICAgLTB4MS42NmI5NmUyMDRlNjljZGE4ZTljZjUwOTk2NDMyNTM5ZXAtMiwKLSAgICAtMHgxLmVkYmZhNnAwLAotICB9LAotICB7IC8vIEVudHJ5IDEzNQotICAgIDB4MS4xZDM0N2FhMDJmZWIzYmIxNzUwZDI1NTA5NDM1ZGE4OHAtMSwKLSAgICAtMHgxLmE5MzU1NDBlZGVjYTRjMjIwZWQ5MWRjNTQ4MWU0ZDlicC0xLAotICAgIDB4MS40NjdmYzRwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzYKLSAgICAtMHgxLjFkMzQ3YWEwMmZlYjNiYjE3NTBkMjU1MDk0MzVkYTg4cC0xLAotICAgIC0weDEuYTkzNTU0MGVkZWNhNGMyMjBlZDkxZGM1NDgxZTRkOWJwLTEsCi0gICAgLTB4MS40NjdmYzRwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzcKLSAgICAtMHgxLmZmZWEwOGUxYzk3ZjRjNGRlMDE5NjFjYzNlN2IwNGRjcC02LAotICAgIC0weDEuZmZjMDAxN2RkOTIwOWRkODg5MWYxN2ZlNGM5ZWVlNDZwLTEsCi0gICAgMHgxLjk2MWZiNHAxLAotICB9LAotICB7IC8vIEVudHJ5IDEzOAotICAgIDB4MS5mZmVhMDhlMWM5N2Y0YzRkZTAxOTYxY2MzZTdiMDRkY3AtNiwKLSAgICAtMHgxLmZmYzAwMTdkZDkyMDlkZDg4OTFmMTdmZTRjOWVlZTQ2cC0xLAotICAgIC0weDEuOTYxZmI0cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM5Ci0gICAgLTB4MS4zNzM0Y2JjZWQ5YzBmNDg0ZTVmNzYyZTAwMjE2ZTYyMHAtMSwKLSAgICAtMHgxLjk2OTA4MjAwNzczM2Q3ODdmNGMzNmJhMGY5NDI1Njk0cC0xLAotICAgIDB4MS5lNWJmYTRwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDAKLSAgICAweDEuMzczNGNiY2VkOWMwZjQ4NGU1Zjc2MmUwMDIxNmU2MjBwLTEsCi0gICAgLTB4MS45NjkwODIwMDc3MzNkNzg3ZjRjMzZiYTBmOTQyNTY5NHAtMSwKLSAgICAtMHgxLmU1YmZhNHAxLAotICB9LAotICB7IC8vIEVudHJ5IDE0MQotICAgIC0weDEuZTlkMjU5MmJlYzEwYzNhY2IxNWM1ODUyMjM5YTJhYThwLTEsCi0gICAgLTB4MS4yYTFlNzQyMjNkOWJkZGI3ZGI1OWY3ODFmOTZiNjVlY3AtMiwKLSAgICAweDEuMWFhZmNhcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQyCi0gICAgMHgxLmU5ZDI1OTJiZWMxMGMzYWNiMTVjNTg1MjIzOWEyYWE4cC0xLAotICAgIC0weDEuMmExZTc0MjIzZDliZGRiN2RiNTlmNzgxZjk2YjY1ZWNwLTIsCi0gICAgLTB4MS4xYWFmY2FwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDMKLSAgICAtMHgxLmU0ZWNlMjA4ZDBjNDkxM2FiMDE5Y2FiMGNlOWM3ODVlcC0xLAotICAgIDB4MS40ODk0ZDUwYjg0ZGJjOTgxMTM0YTU5MWFjNDE2NWQ5ZXAtMiwKLSAgICAweDEuNDI3ZmMycDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ0Ci0gICAgMHgxLmU0ZWNlMjA4ZDBjNDkxM2FiMDE5Y2FiMGNlOWM3ODVlcC0xLAotICAgIDB4MS40ODk0ZDUwYjg0ZGJjOTgxMTM0YTU5MWFjNDE2NWQ5ZXAtMiwKLSAgICAtMHgxLjQyN2ZjMnAyLAotICB9LAotICB7IC8vIEVudHJ5IDE0NQotICAgIC0weDEuMmE1YTAyZDM5MmI1NGY2NDFhMGQ4OGJkNGFjNmMyZTFwLTEsCi0gICAgMHgxLmEwMTZkZDc0ODBhMWVlYTRkNDllZmI1ODVmYTQ5Yzg2cC0xLAotICAgIDB4MS42YTRmYmFwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDYKLSAgICAweDEuMmE1YTAyZDM5MmI1NGY2NDFhMGQ4OGJkNGFjNmMyZTFwLTEsCi0gICAgMHgxLmEwMTZkZDc0ODBhMWVlYTRkNDllZmI1ODVmYTQ5Yzg2cC0xLAotICAgIC0weDEuNmE0ZmJhcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ3Ci0gICAgLTB4MS4yNjMxMjNkZjIyZDEzZWQzMjljNjY1YzgzYzBlNzFlOHAtMSwKLSAgICAweDEuYTMwYTZhM2JmNGEzZTJiN2UyNzY2NmQzYTljM2I3NGJwLTEsCi0gICAgMHgxLjZhZjJmMHAyLAotICB9LAotICB7IC8vIEVudHJ5IDE0OAotICAgIDB4MS4yNjMxMjNkZjIyZDEzZWQzMjljNjY1YzgzYzBlNzFlOHAtMSwKLSAgICAweDEuYTMwYTZhM2JmNGEzZTJiN2UyNzY2NmQzYTljM2I3NGJwLTEsCi0gICAgLTB4MS42YWYyZjBwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDkKLSAgICAtMHgxLmUxOGU2N2I1MDhmZmM5ZTQyZjZjOWU3MmY4ZTU0NWYzcC0xLAotICAgIDB4MS41YmQ2MjU1MDQwMTVjY2MxMDFlNGY0MzQwZDRiNzYyYnAtMiwKLSAgICAweDEuNDNjNjJhcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUwCi0gICAgMHgxLmUxOGU2N2I1MDhmZmM5ZTQyZjZjOWU3MmY4ZTU0NWYzcC0xLAotICAgIDB4MS41YmQ2MjU1MDQwMTVjY2MxMDFlNGY0MzQwZDRiNzYyYnAtMiwKLSAgICAtMHgxLjQzYzYyYXAyLAotICB9LAotICB7IC8vIEVudHJ5IDE1MQotICAgIC0weDEuZWUwZTgwZWM5ZDE1NjJjMTdhNmNmNjA4YWY5YjBlZDRwLTEsCi0gICAgLTB4MS4wY2I3MzM0NDhjMzBlZTNkZGZmYjRkYTY5ZjBiMzg0MnAtMiwKLSAgICAweDEuMWM5OTY0cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUyCi0gICAgMHgxLmVlMGU4MGVjOWQxNTYyYzE3YTZjZjYwOGFmOWIwZWQ0cC0xLAotICAgIC0weDEuMGNiNzMzNDQ4YzMwZWUzZGRmZmI0ZGE2OWYwYjM4NDJwLTIsCi0gICAgLTB4MS4xYzk5NjRwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTMKLSAgICAtMHgxLjQ3Mjc2ODYzN2VhODg2NmE2NTIwOThhNDNhYTY4OGE2cC0xLAotICAgIC0weDEuODlkODc0YWQzMGUzZmI0NjI0NGRhYTI0NDUxNjkwZDdwLTEsCi0gICAgMHgxLmVhZDkzY3AxLAotICB9LAotICB7IC8vIEVudHJ5IDE1NAotICAgIDB4MS40NzI3Njg2MzdlYTg4NjZhNjUyMDk4YTQzYWE2ODhhNnAtMSwKLSAgICAtMHgxLjg5ZDg3NGFkMzBlM2ZiNDYyNDRkYWEyNDQ1MTY5MGQ3cC0xLAotICAgIC0weDEuZWFkOTNjcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU1Ci0gICAgLTB4MS40YmEyNGY2MzI1ZjIxNDIwZTdjNDhkNGY5MWUyODA2NHAtNCwKLSAgICAtMHgxLmZlNTFhZTA5ZjBkMzllZDU1NGU2OGJlZjNlMmY4YTAzcC0xLAotICAgIDB4MS45YzdmYjBwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTYKLSAgICAweDEuNGJhMjRmNjMyNWYyMTQyMGU3YzQ4ZDRmOTFlMjgwNjRwLTQsCi0gICAgLTB4MS5mZTUxYWUwOWYwZDM5ZWQ1NTRlNjhiZWYzZTJmOGEwM3AtMSwKLSAgICAtMHgxLjljN2ZiMHAxLAotICB9LAotICB7IC8vIEVudHJ5IDE1NwotICAgIDB4MS4wMzRjNjQzMjk1MTUzYWFmZmU1ZDlhMGYyOWU5Mjg0NHAtMSwKLSAgICAtMHgxLmI5N2JmNzZhZTc2NWViNjljZjU1ZTgwYWFlOTc3MzAzcC0xLAotICAgIDB4MS40ZTI2MjRwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTgKLSAgICAtMHgxLjAzNGM2NDMyOTUxNTNhYWZmZTVkOWEwZjI5ZTkyODQ0cC0xLAotICAgIC0weDEuYjk3YmY3NmFlNzY1ZWI2OWNmNTVlODBhYWU5NzczMDNwLTEsCi0gICAgLTB4MS40ZTI2MjRwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTkKLSAgICAweDEuZDFlNGQ5NmVhYzkxNzU3NGI5NDhlNGVhOWUzN2IzNmRwLTEsCi0gICAgLTB4MS5hOGFjNTc5M2UzMjYyOWIxMzE5ODRlY2ZmZDJkMGYzMXAtMiwKLSAgICAweDEuZmY5OTMycDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTYwCi0gICAgLTB4MS5kMWU0ZDk2ZWFjOTE3NTc0Yjk0OGU0ZWE5ZTM3YjM2ZHAtMSwKLSAgICAtMHgxLmE4YWM1NzkzZTMyNjI5YjEzMTk4NGVjZmZkMmQwZjMxcC0yLAotICAgIC0weDEuZmY5OTMycDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTYxCi0gICAgMHgxLmY3NTAxZTAwMmJjYWZiODk3ZjkzMTkzMWQzYTU3YWZkcC0xLAotICAgIDB4MS43N2E5MmNhMDFiYzc5YzE5NWRkYTMzNzM2ODA3Zjk4NnAtMywKLSAgICAweDEuNjJlNjFjcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTYyCi0gICAgLTB4MS5mNzUwMWUwMDJiY2FmYjg5N2Y5MzE5MzFkM2E1N2FmZHAtMSwKLSAgICAweDEuNzdhOTJjYTAxYmM3OWMxOTVkZGEzMzczNjgwN2Y5ODZwLTMsCi0gICAgLTB4MS42MmU2MWNwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjMKLSAgICAweDEuNjVmN2Q2NmVmNjU5MWNmYzUxYWIyOWRjMjA4NmQzZTdwLTEsCi0gICAgMHgxLjZlMTA2MDI4MmMxNDg4ZDlhYmQ4M2RhMWQ2OGNkMGY3cC0xLAotICAgIDB4MS44YzY2MmNwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY0Ci0gICAgLTB4MS42NWY3ZDY2ZWY2NTkxY2ZjNTFhYjI5ZGMyMDg2ZDNlN3AtMSwKLSAgICAweDEuNmUxMDYwMjgyYzE0ODhkOWFiZDgzZGExZDY4Y2QwZjdwLTEsCi0gICAgLTB4MS44YzY2MmNwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY1Ci0gICAgLTB4MS5mZTA0M2Y4NzVjNmVkNGEyYzFiOGQ2OWEwOWZjZjU3OHAtMSwKLSAgICAtMHgxLjY4MmYyYmI4N2E4ZjUwMTE3MzUwOTQxNzZjOWI2ZGFjcC00LAotICAgIC0weDEuYThhYTFjcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY2Ci0gICAgMHgxLmZlMDQzZjg3NWM2ZWQ0YTJjMWI4ZDY5YTA5ZmNmNTc4cC0xLAotICAgIC0weDEuNjgyZjJiYjg3YThmNTAxMTczNTA5NDE3NmM5YjZkYWNwLTQsCi0gICAgMHgxLmE4YWExY3AwLAotICB9LAotICB7IC8vIEVudHJ5IDE2NwotICAgIC0weDEuZmZmMThmMzEzZTY2ZjFhZTI1Zjg5YTVmN2ExZjg0YzRwLTEsCi0gICAgLTB4MS5lNjY1Y2IyYWY4NDJiZTViYTVmNjU5NjA1OTlhOTdlY3AtNywKLSAgICAtMHgxLjk1ZWM4YXAwLAotICB9LAotICB7IC8vIEVudHJ5IDE2OAotICAgIDB4MS5mZmYxOGYzMTNlNjZmMWFlMjVmODlhNWY3YTFmODRjNHAtMSwKLSAgICAtMHgxLmU2NjVjYjJhZjg0MmJlNWJhNWY2NTk2MDU5OWE5N2VjcC03LAotICAgIDB4MS45NWVjOGFwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjkKLSAgICAtMHgxLmZmMjBkOTIwYjllOWMyMzE1NGY5N2UyZjM0MmEyODg0cC0xLAotICAgIDB4MS5kZGQyMzE1MDFiMTJmY2YyYmMyMDYzM2JlNGQ1MWU1MXAtNSwKLSAgICAtMHgxLjgzMmVmOHAwLAotICB9LAotICB7IC8vIEVudHJ5IDE3MAotICAgIDB4MS5mZjIwZDkyMGI5ZTljMjMxNTRmOTdlMmYzNDJhMjg4NHAtMSwKLSAgICAweDEuZGRkMjMxNTAxYjEyZmNmMmJjMjA2MzNiZTRkNTFlNTFwLTUsCi0gICAgMHgxLjgzMmVmOHAwLAotICB9LAotICB7IC8vIEVudHJ5IDE3MQotICAgIC0weDEuZmI5MzNiODlkN2RiMzI4NmVlZDBjZmVhYmVlOTg4NzVwLTEsCi0gICAgMHgxLjBjYWJhNjk5NzY5MWFiMTk3MGQ0M2M3NDE5ZWQ1MWUxcC0zLAotICAgIC0weDEuNzA3MTY2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTcyCi0gICAgMHgxLmZiOTMzYjg5ZDdkYjMyODZlZWQwY2ZlYWJlZTk4ODc1cC0xLAotICAgIDB4MS4wY2FiYTY5OTc2OTFhYjE5NzBkNDNjNzQxOWVkNTFlMXAtMywKLSAgICAweDEuNzA3MTY2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTczCi0gICAgLTB4MS5mNTRkOTVjNTA1OGI3ZGM5OTcyYWI2Zjk5MjhjYTA0M3AtMSwKLSAgICAweDEuYTA3MjU0MWZkNmVhZjhiNjVhODc0YzU4ZDZjYzU3MzlwLTMsCi0gICAgLTB4MS41ZGIzZDRwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzQKLSAgICAweDEuZjU0ZDk1YzUwNThiN2RjOTk3MmFiNmY5OTI4Y2EwNDNwLTEsCi0gICAgMHgxLmEwNzI1NDFmZDZlYWY4YjY1YTg3NGM1OGQ2Y2M1NzM5cC0zLAotICAgIDB4MS41ZGIzZDRwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzUKLSAgICAtMHgxLmVjNTg4MWEwOWM0NmFhZTAyMGNkOTAzNjA5OGExOTZlcC0xLAotICAgIDB4MS4xOGZlZjgxMDZiZWE2M2I5ZTk2YTdhZGY1MzhjNjE5NHAtMiwKLSAgICAtMHgxLjRhZjY0MnAwLAotICB9LAotICB7IC8vIEVudHJ5IDE3NgotICAgIDB4MS5lYzU4ODFhMDljNDZhYWUwMjBjZDkwMzYwOThhMTk2ZXAtMSwKLSAgICAweDEuMThmZWY4MTA2YmVhNjNiOWU5NmE3YWRmNTM4YzYxOTRwLTIsCi0gICAgMHgxLjRhZjY0MnAwLAotICB9LAotICB7IC8vIEVudHJ5IDE3NwotICAgIC0weDEuZTBjMDQ3OTU5MTlkOTYxYTVlODNlNTA1ZGYzMWM2MjRwLTEsCi0gICAgMHgxLjYwNDM3Mjc3ZDQ4MDY3ZTg1MjMwYmNlMTg4M2VhYWJhcC0yLAotICAgIC0weDEuMzgzOGIwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc4Ci0gICAgMHgxLmUwYzA0Nzk1OTE5ZDk2MWE1ZTgzZTUwNWRmMzFjNjI0cC0xLAotICAgIDB4MS42MDQzNzI3N2Q0ODA2N2U4NTIzMGJjZTE4ODNlYWFiYXAtMiwKLSAgICAweDEuMzgzOGIwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc5Ci0gICAgLTB4MS5kMjk0Y2RlZjdjYzE2MTYzM2EwMmQzZTYyMDU4YmUwZXAtMSwKLSAgICAweDEuYTVhNGRlZDQ5MmJlZGZlOGNmNWMzNGNhZGQ3OGRmNzVwLTIsCi0gICAgLTB4MS4yNTdiMWVwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODAKLSAgICAweDEuZDI5NGNkZWY3Y2MxNjE2MzNhMDJkM2U2MjA1OGJlMGVwLTEsCi0gICAgMHgxLmE1YTRkZWQ0OTJiZWRmZThjZjVjMzRjYWRkNzhkZjc1cC0yLAotICAgIDB4MS4yNTdiMWVwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODEKLSAgICAtMHgxLmMxZTk4OGI5NTYxNGFiZDY1ZDNkODExZjVjODgwMzlicC0xLAotICAgIDB4MS5lOGM0MDQwNjc4ZDJlZjczNjMzM2E0NTM3YTExMTNhMXAtMiwKLSAgICAtMHgxLjEyYmQ5MnAwLAotICB9LAotICB7IC8vIEVudHJ5IDE4MgotICAgIDB4MS5jMWU5ODhiOTU2MTRhYmQ2NWQzZDgxMWY1Yzg4MDM5YnAtMSwKLSAgICAweDEuZThjNDA0MDY3OGQyZWY3MzYzMzNhNDUzN2ExMTEzYTFwLTIsCi0gICAgMHgxLjEyYmQ5MnAwLAotICB9LAotICB7IC8vIEVudHJ5IDE4MwotICAgIC0weDEuYTJjMjg5NWVkYjBkNGJhNTFjZGJkNTM5MGNhYzQ2OGZwLTEsCi0gICAgMHgxLjI2OTc2YjFiMTZkMTkwOTFjMDkyNTk3NjVjNGIzODcycC0xLAotICAgIC0weDEuZWE1YzNlcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDE4NAotICAgIDB4MS5hMmMyODk1ZWRiMGQ0YmE1MWNkYmQ1MzkwY2FjNDY4ZnAtMSwKLSAgICAweDEuMjY5NzZiMWIxNmQxOTA5MWMwOTI1OTc2NWM0YjM4NzJwLTEsCi0gICAgMHgxLmVhNWMzZXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODUKLSAgICAtMHgxLjk1ZjA1MTUzNjQ0ZDYwYjk0ZDJmMmU3MDBkZmQzYTM3cC0xLAotICAgIDB4MS4zODA1YTJkYWZkYTdmODU1NGFlYzY1ZGFiMzQ4YTcxNHAtMSwKLSAgICAtMHgxLmQ0Yjg3Y3AtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODYKLSAgICAweDEuOTVmMDUxNTM2NDRkNjBiOTRkMmYyZTcwMGRmZDNhMzdwLTEsCi0gICAgMHgxLjM4MDVhMmRhZmRhN2Y4NTU0YWVjNjVkYWIzNDhhNzE0cC0xLAotICAgIDB4MS5kNGI4N2NwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg3Ci0gICAgLTB4MS44ODY0N2Q4YWQyZTQxZmI3YzBhZjBmNjQ2MTRjOTk5M3AtMSwKLSAgICAweDEuNDhlNTJmZjViYmU3OTQ2MThiODUxOTBiODY0MTE4MjRwLTEsCi0gICAgLTB4MS5iZjE0YmFwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg4Ci0gICAgMHgxLjg4NjQ3ZDhhZDJlNDFmYjdjMGFmMGY2NDYxNGM5OTkzcC0xLAotICAgIDB4MS40OGU1MmZmNWJiZTc5NDYxOGI4NTE5MGI4NjQxMTgyNHAtMSwKLSAgICAweDEuYmYxNGJhcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDE4OQotICAgIC0weDEuN2EyNTNmOWY4OWE3ZDNlNGY5YzU0NjM4NDE4ZTk3ZjZwLTEsCi0gICAgMHgxLjU5MmU1YjYxNWVmNWFlNDYzOTc2ZDMxMTQxZGJhY2YwcC0xLAotICAgIC0weDEuYTk3MGY4cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDE5MAotICAgIDB4MS43YTI1M2Y5Zjg5YTdkM2U0ZjljNTQ2Mzg0MThlOTdmNnAtMSwKLSAgICAweDEuNTkyZTViNjE1ZWY1YWU0NjM5NzZkMzExNDFkYmFjZjBwLTEsCi0gICAgMHgxLmE5NzBmOHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTEKLSAgICAtMHgxLjZiMzkxYjM0YWFiODI4ZmJlN2NkN2RjYWY5ZWYzYmQ2cC0xLAotICAgIDB4MS42OGQ5YjJkNjU3ZTQzMDdkMzMxZWI3YmQzNWVlMTg3OXAtMSwKLSAgICAtMHgxLjkzY2QzNnAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTIKLSAgICAweDEuNmIzOTFiMzRhYWI4MjhmYmU3Y2Q3ZGNhZjllZjNiZDZwLTEsCi0gICAgMHgxLjY4ZDliMmQ2NTdlNDMwN2QzMzFlYjdiZDM1ZWUxODc5cC0xLAotICAgIDB4MS45M2NkMzZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkzCi0gICAgLTB4MS41YmE2ZTJmYjk4MGQ0ODJjZjAwZWRlODBmNTU5N2ZiMnAtMSwKLSAgICAweDEuNzdlMDBjMzcxODUyOGMzNmY3MjJlNjMwOTZjMjY0NmJwLTEsCi0gICAgLTB4MS43ZTI5NzRwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk0Ci0gICAgMHgxLjViYTZlMmZiOTgwZDQ4MmNmMDBlZGU4MGY1NTk3ZmIycC0xLAotICAgIDB4MS43N2UwMGMzNzE4NTI4YzM2ZjcyMmU2MzA5NmMyNjQ2YnAtMSwKLSAgICAweDEuN2UyOTc0cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDE5NQotICAgIC0weDEuNGI3NWI1OTU0ZTcxODAyMDkwMDcxOWUyNWE3ZWE5M2JwLTEsCi0gICAgMHgxLjg2M2E4OGQ2YjA2NGYzNmYzNDM3MDcyMmQzNjFjZTlmcC0xLAotICAgIC0weDEuNjg4NWIycC0xLAotICB9LAotICB7IC8vIEVudHJ5IDE5NgotICAgIDB4MS40Yjc1YjU5NTRlNzE4MDIwOTAwNzE5ZTI1YTdlYTkzYnAtMSwKLSAgICAweDEuODYzYTg4ZDZiMDY0ZjM2ZjM0MzcwNzIyZDM2MWNlOWZwLTEsCi0gICAgMHgxLjY4ODViMnAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTcKLSAgICAtMHgxLjNhYWNmYTUxMDgxMDA1NGM1MmFlMGI2N2QxMTZlYjQwcC0xLAotICAgIDB4MS45M2UyOTg5Y2VlNjA4NGUzNGI1MzNiMWViOTI3NDZkYXAtMSwKLSAgICAtMHgxLjUyZTFmMHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTgKLSAgICAweDEuM2FhY2ZhNTEwODEwMDU0YzUyYWUwYjY3ZDExNmViNDBwLTEsCi0gICAgMHgxLjkzZTI5ODljZWU2MDg0ZTM0YjUzM2IxZWI5Mjc0NmRhcC0xLAotICAgIDB4MS41MmUxZjBwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk5Ci0gICAgLTB4MS4yOTU0NjQ0Y2ViOGUzYTI0NzljODNhZTg0YWY1N2QzZXAtMSwKLSAgICAweDEuYTBkMWY4NjEzZWJjNjBjN2VlNjUwMmVlMTgzYzg5ZTdwLTEsCi0gICAgLTB4MS4zZDNlMzZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAwCi0gICAgMHgxLjI5NTQ2NDRjZWI4ZTNhMjQ3OWM4M2FlODRhZjU3ZDNlcC0xLAotICAgIDB4MS5hMGQxZjg2MTNlYmM2MGM3ZWU2NTAyZWUxODNjODllN3AtMSwKLSAgICAweDEuM2QzZTM2cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIwMQotICAgIC0weDEuZmM3NjlhZWNkMjY1Y2ZlYTA4ZTBmZjMwYzJmYmNhY2RwLTIsCi0gICAgMHgxLmJjNmJkODg5YThhNTlkYmI1NmU1NDZhMzdhZTc5OGY1cC0xLAotICAgIC0weDEuMGEwYjAycC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIwMgotICAgIDB4MS5mYzc2OWFlY2QyNjVjZmVhMDhlMGZmMzBjMmZiY2FjZHAtMiwKLSAgICAweDEuYmM2YmQ4ODlhOGE1OWRiYjU2ZTU0NmEzN2FlNzk4ZjVwLTEsCi0gICAgMHgxLjBhMGIwMnAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDMKLSAgICAtMHgxLmM4NTNjNzA0ZTNiOTQzMjIwMzFkNmI0N2FlZjg1M2M5cC0yLAotICAgIDB4MS5jYTU5YzcxOWY5NjA3NWRkNmI3YTBmZjQ0M2FkNTlkY3AtMSwKLSAgICAtMHgxLmQ4ZjcyMHAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDQKLSAgICAweDEuYzg1M2M3MDRlM2I5NDMyMjAzMWQ2YjQ3YWVmODUzYzlwLTIsCi0gICAgMHgxLmNhNTljNzE5Zjk2MDc1ZGQ2YjdhMGZmNDQzYWQ1OWRjcC0xLAotICAgIDB4MS5kOGY3MjBwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA1Ci0gICAgLTB4MS45MmFiYTg5ODFiMjVkZWRhNGNjMTgxNzI1MTcyM2ExYnAtMiwKLSAgICAweDEuZDZjMGIxM2RmOTk2MTNhNDkzMDZiNGRjNmM1N2FhMDNwLTEsCi0gICAgLTB4MS45ZGQ4M2NwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA2Ci0gICAgMHgxLjkyYWJhODk4MWIyNWRlZGE0Y2MxODE3MjUxNzIzYTFicC0yLAotICAgIDB4MS5kNmMwYjEzZGY5OTYxM2E0OTMwNmI0ZGM2YzU3YWEwM3AtMSwKLSAgICAweDEuOWRkODNjcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDIwNwotICAgIC0weDEuNWJhYzA1ZTFlMGE3YzJkZTI4MGZjYjkzYmU2N2E0ZGFwLTIsCi0gICAgMHgxLmUxOTYwMjczYTRhYWExYmQxOWVmMGNjYWE4ODc0MTgzcC0xLAotICAgIC0weDEuNjJiOTU4cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDIwOAotICAgIDB4MS41YmFjMDVlMWUwYTdjMmRlMjgwZmNiOTNiZTY3YTRkYXAtMiwKLSAgICAweDEuZTE5NjAyNzNhNGFhYTFiZDE5ZWYwY2NhYTg4NzQxODNwLTEsCi0gICAgMHgxLjYyYjk1OHAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDkKLSAgICAtMHgxLjIzODNjYTJiMjQ5ODA3ZDk1MDA1ZDk2Y2ZkYWVjZDZjcC0yLAotICAgIDB4MS5lYWQwN2NkMmUwZjdmMTk2Nzk2NDYzNjJiYmMwZWI4MHAtMSwKLSAgICAtMHgxLjI3OWE3NHAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTAKLSAgICAweDEuMjM4M2NhMmIyNDk4MDdkOTUwMDVkOTZjZmRhZWNkNmNwLTIsCi0gICAgMHgxLmVhZDA3Y2QyZTBmN2YxOTY3OTY0NjM2MmJiYzBlYjgwcC0xLAotICAgIDB4MS4yNzlhNzRwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjExCi0gICAgLTB4MS5kNGM1YmI4NzJlYTUzNzU4MzRjYTBiY2EwODhkMWQ3NXAtMywKLSAgICAweDEuZjI2ODQwZWZkODZjZWVhMjNmMzg4YjZhMTEwMmVhNGRwLTEsCi0gICAgLTB4MS5kOGY3MjBwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEyCi0gICAgMHgxLmQ0YzViYjg3MmVhNTM3NTgzNGNhMGJjYTA4OGQxZDc1cC0zLAotICAgIDB4MS5mMjY4NDBlZmQ4NmNlZWEyM2YzODhiNmExMTAyZWE0ZHAtMSwKLSAgICAweDEuZDhmNzIwcC0zLAotICB9LAotICB7IC8vIEVudHJ5IDIxMwotICAgIC0weDEuNjBmM2ZhNDYwYjg1ODExZDJhZTcxMGNkNjllYzM2OTBwLTMsCi0gICAgMHgxLmY4NTZkNDkyNTFiZDM3YzU0ZjAwOTQyNzBlZWNiZDE4cC0xLAotICAgIC0weDEuNjJiOTU4cC0zLAotICB9LAotICB7IC8vIEVudHJ5IDIxNAotICAgIDB4MS42MGYzZmE0NjBiODU4MTFkMmFlNzEwY2Q2OWVjMzY5MHAtMywKLSAgICAweDEuZjg1NmQ0OTI1MWJkMzdjNTRmMDA5NDI3MGVlY2JkMThwLTEsCi0gICAgMHgxLjYyYjk1OHAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTUKLSAgICAtMHgxLmQ3ZWEzZDU2ZTFlNjI0NGM4Nzg2ZDc0ZjE4OWQ5OGFjcC00LAotICAgIDB4MS5mYzk3MjgzYzRmNWJkMWY3OTMyMDE5NzJiOGRiNTUxZnAtMSwKLSAgICAtMHgxLmQ4ZjcyMHAtNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTYKLSAgICAweDEuZDdlYTNkNTZlMWU2MjQ0Yzg3ODZkNzRmMTg5ZDk4YWNwLTQsCi0gICAgMHgxLmZjOTcyODNjNGY1YmQxZjc5MzIwMTk3MmI4ZGI1NTFmcC0xLAotICAgIDB4MS5kOGY3MjBwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE3Ci0gICAgLTB4MS5kOGIzZGViYTZhYzQ5M2IwNGIyMTAzYTBkYmFlZjAyZnAtNSwKLSAgICAweDEuZmYyNTliN2IzZDcyMWVkZjA2M2E1YmY2ZTdhMWY5M2NwLTEsCi0gICAgLTB4MS5kOGY3MjBwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE4Ci0gICAgMHgxLmQ4YjNkZWJhNmFjNDkzYjA0YjIxMDNhMGRiYWVmMDJmcC01LAotICAgIDB4MS5mZjI1OWI3YjNkNzIxZWRmMDYzYTViZjZlN2ExZjkzY3AtMSwKLSAgICAweDEuZDhmNzIwcC01LAotICB9LAotICB7IC8vIEVudHJ5IDIxOQotICAgIDB4MS5kOGIzZGViYTZhYzQ5M2IwNGIyMTAzYTBkYmFlZjAyZnAtNSwKLSAgICAweDEuZmYyNTliN2IzZDcyMWVkZjA2M2E1YmY2ZTdhMWY5M2NwLTEsCi0gICAgMHgxLmQ4ZjcyMHAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjAKLSAgICAtMHgxLmQ4YjNkZWJhNmFjNDkzYjA0YjIxMDNhMGRiYWVmMDJmcC01LAotICAgIDB4MS5mZjI1OWI3YjNkNzIxZWRmMDYzYTViZjZlN2ExZjkzY3AtMSwKLSAgICAtMHgxLmQ4ZjcyMHAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjEKLSAgICAweDEuZDdlYTNkNTZlMWU2MjQ0Yzg3ODZkNzRmMTg5ZDk4YWNwLTQsCi0gICAgMHgxLmZjOTcyODNjNGY1YmQxZjc5MzIwMTk3MmI4ZGI1NTFmcC0xLAotICAgIDB4MS5kOGY3MjBwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjIyCi0gICAgLTB4MS5kN2VhM2Q1NmUxZTYyNDRjODc4NmQ3NGYxODlkOThhY3AtNCwKLSAgICAweDEuZmM5NzI4M2M0ZjViZDFmNzkzMjAxOTcyYjhkYjU1MWZwLTEsCi0gICAgLTB4MS5kOGY3MjBwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjIzCi0gICAgMHgxLjYwZjNmYTQ2MGI4NTgxMWQyYWU3MTBjZDY5ZWMzNjkwcC0zLAotICAgIDB4MS5mODU2ZDQ5MjUxYmQzN2M1NGYwMDk0MjcwZWVjYmQxOHAtMSwKLSAgICAweDEuNjJiOTU4cC0zLAotICB9LAotICB7IC8vIEVudHJ5IDIyNAotICAgIC0weDEuNjBmM2ZhNDYwYjg1ODExZDJhZTcxMGNkNjllYzM2OTBwLTMsCi0gICAgMHgxLmY4NTZkNDkyNTFiZDM3YzU0ZjAwOTQyNzBlZWNiZDE4cC0xLAotICAgIC0weDEuNjJiOTU4cC0zLAotICB9LAotICB7IC8vIEVudHJ5IDIyNQotICAgIDB4MS5kNGM1YmI4NzJlYTUzNzU4MzRjYTBiY2EwODhkMWQ3NXAtMywKLSAgICAweDEuZjI2ODQwZWZkODZjZWVhMjNmMzg4YjZhMTEwMmVhNGRwLTEsCi0gICAgMHgxLmQ4ZjcyMHAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjYKLSAgICAtMHgxLmQ0YzViYjg3MmVhNTM3NTgzNGNhMGJjYTA4OGQxZDc1cC0zLAotICAgIDB4MS5mMjY4NDBlZmQ4NmNlZWEyM2YzODhiNmExMTAyZWE0ZHAtMSwKLSAgICAtMHgxLmQ4ZjcyMHAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjcKLSAgICAweDEuMjM4M2NhMmIyNDk4MDdkOTUwMDVkOTZjZmRhZWNkNmNwLTIsCi0gICAgMHgxLmVhZDA3Y2QyZTBmN2YxOTY3OTY0NjM2MmJiYzBlYjgwcC0xLAotICAgIDB4MS4yNzlhNzRwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjI4Ci0gICAgLTB4MS4yMzgzY2EyYjI0OTgwN2Q5NTAwNWQ5NmNmZGFlY2Q2Y3AtMiwKLSAgICAweDEuZWFkMDdjZDJlMGY3ZjE5Njc5NjQ2MzYyYmJjMGViODBwLTEsCi0gICAgLTB4MS4yNzlhNzRwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjI5Ci0gICAgMHgxLjViYWMwNWUxZTBhN2MyZGUyODBmY2I5M2JlNjdhNGRhcC0yLAotICAgIDB4MS5lMTk2MDI3M2E0YWFhMWJkMTllZjBjY2FhODg3NDE4M3AtMSwKLSAgICAweDEuNjJiOTU4cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDIzMAotICAgIC0weDEuNWJhYzA1ZTFlMGE3YzJkZTI4MGZjYjkzYmU2N2E0ZGFwLTIsCi0gICAgMHgxLmUxOTYwMjczYTRhYWExYmQxOWVmMGNjYWE4ODc0MTgzcC0xLAotICAgIC0weDEuNjJiOTU4cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDIzMQotICAgIDB4MS45MmFiYTg5ODFiMjVkZWRhNGNjMTgxNzI1MTcyM2ExYnAtMiwKLSAgICAweDEuZDZjMGIxM2RmOTk2MTNhNDkzMDZiNGRjNmM1N2FhMDNwLTEsCi0gICAgMHgxLjlkZDgzY3AtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzIKLSAgICAtMHgxLjkyYWJhODk4MWIyNWRlZGE0Y2MxODE3MjUxNzIzYTFicC0yLAotICAgIDB4MS5kNmMwYjEzZGY5OTYxM2E0OTMwNmI0ZGM2YzU3YWEwM3AtMSwKLSAgICAtMHgxLjlkZDgzY3AtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzMKLSAgICAweDEuYzg1M2M3MDRlM2I5NDMyMjAzMWQ2YjQ3YWVmODUzYzlwLTIsCi0gICAgMHgxLmNhNTljNzE5Zjk2MDc1ZGQ2YjdhMGZmNDQzYWQ1OWRjcC0xLAotICAgIDB4MS5kOGY3MjBwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM0Ci0gICAgLTB4MS5jODUzYzcwNGUzYjk0MzIyMDMxZDZiNDdhZWY4NTNjOXAtMiwKLSAgICAweDEuY2E1OWM3MTlmOTYwNzVkZDZiN2EwZmY0NDNhZDU5ZGNwLTEsCi0gICAgLTB4MS5kOGY3MjBwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM1Ci0gICAgMHgxLmZjNzY5YWVjZDI2NWNmZWEwOGUwZmYzMGMyZmJjYWNkcC0yLAotICAgIDB4MS5iYzZiZDg4OWE4YTU5ZGJiNTZlNTQ2YTM3YWU3OThmNXAtMSwKLSAgICAweDEuMGEwYjAycC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIzNgotICAgIC0weDEuZmM3NjlhZWNkMjY1Y2ZlYTA4ZTBmZjMwYzJmYmNhY2RwLTIsCi0gICAgMHgxLmJjNmJkODg5YThhNTlkYmI1NmU1NDZhMzdhZTc5OGY1cC0xLAotICAgIC0weDEuMGEwYjAycC0xLAotICB9LAotICB7IC8vIEVudHJ5IDIzNwotICAgIDB4MS4yOTU0NjQ0Y2ViOGUzYTI0NzljODNhZTg0YWY1N2QzZXAtMSwKLSAgICAweDEuYTBkMWY4NjEzZWJjNjBjN2VlNjUwMmVlMTgzYzg5ZTdwLTEsCi0gICAgMHgxLjNkM2UzNnAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzgKLSAgICAtMHgxLjI5NTQ2NDRjZWI4ZTNhMjQ3OWM4M2FlODRhZjU3ZDNlcC0xLAotICAgIDB4MS5hMGQxZjg2MTNlYmM2MGM3ZWU2NTAyZWUxODNjODllN3AtMSwKLSAgICAtMHgxLjNkM2UzNnAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzkKLSAgICAweDEuM2FhZDAwYTA5MjY4YTM5ZGYxNjUzYzcwZGI5MWYxNTdwLTEsCi0gICAgMHgxLjkzZTI5M2IyM2E2YWExYWU1MzczMjE0ZWI4ZmI5ZTk2cC0xLAotICAgIDB4MS41MmUxZjhwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQwCi0gICAgLTB4MS4zYWFkMDBhMDkyNjhhMzlkZjE2NTNjNzBkYjkxZjE1N3AtMSwKLSAgICAweDEuOTNlMjkzYjIzYTZhYTFhZTUzNzMyMTRlYjhmYjllOTZwLTEsCi0gICAgLTB4MS41MmUxZjhwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQxCi0gICAgMHgxLjRiNzViYmFlMzg4YTdmMzQ2NmU3ZjJkNmJkY2Y3MmJicC0xLAotICAgIDB4MS44NjNhODNhOGQ5ODI2YzYxMzU1MDk0MDZlYmUwNWMwZnAtMSwKLSAgICAweDEuNjg4NWJhcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI0MgotICAgIC0weDEuNGI3NWJiYWUzODhhN2YzNDY2ZTdmMmQ2YmRjZjcyYmJwLTEsCi0gICAgMHgxLjg2M2E4M2E4ZDk4MjZjNjEzNTUwOTQwNmViZTA1YzBmcC0xLAotICAgIC0weDEuNjg4NWJhcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI0MwotICAgIDB4MS41YmE2ZThkYjE4MzM0NzU3MTJiOWE0MmExYWQwZDJjMnAtMSwKLSAgICAweDEuNzdlMDA2Yzg3Y2JhZGVkNjZlYzViOTYwYzkzYzU2OGFwLTEsCi0gICAgMHgxLjdlMjk3Y3AtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDQKLSAgICAtMHgxLjViYTZlOGRiMTgzMzQ3NTcxMmI5YTQyYTFhZDBkMmMycC0xLAotICAgIDB4MS43N2UwMDZjODdjYmFkZWQ2NmVjNWI5NjBjOTNjNTY4YXAtMSwKLSAgICAtMHgxLjdlMjk3Y3AtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDUKLSAgICAweDEuNmIzOTIwZDgxMTc4Mjg5MjhmZTEwYWM3MGJhNjllNzZwLTEsCi0gICAgMHgxLjY4ZDlhZDI5NzM2YzE3MDRjYWVhNmEyZGI2ZTcxMjIzcC0xLAotICAgIDB4MS45M2NkM2VwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ2Ci0gICAgLTB4MS42YjM5MjBkODExNzgyODkyOGZlMTBhYzcwYmE2OWU3NnAtMSwKLSAgICAweDEuNjhkOWFkMjk3MzZjMTcwNGNhZWE2YTJkYjZlNzEyMjNwLTEsCi0gICAgLTB4MS45M2NkM2VwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ3Ci0gICAgMHgxLjdhMjU0NTA0NDMwOTg4MzZjNTIwMjM3NWRiNGI4NDYycC0xLAotICAgIDB4MS41OTJlNTU3OGM5ZWM2NmFjY2VkZGQ0ZGM2Y2U2NmIyNnAtMSwKLSAgICAweDEuYTk3MXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDgKLSAgICAtMHgxLjdhMjU0NTA0NDMwOTg4MzZjNTIwMjM3NWRiNGI4NDYycC0xLAotICAgIDB4MS41OTJlNTU3OGM5ZWM2NmFjY2VkZGQ0ZGM2Y2U2NmIyNnAtMSwKLSAgICAtMHgxLmE5NzFwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ5Ci0gICAgMHgxLjg4NjQ4MmFlNjc5N2IzODM2NGY1YzcyY2U5YTNiNzZmcC0xLAotICAgIDB4MS40OGU1MjlkNDI5ZTcyMWVjOGJiMWUwMTRmOTRkNDhmMXAtMSwKLSAgICAweDEuYmYxNGMycC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI1MAotICAgIC0weDEuODg2NDgyYWU2Nzk3YjM4MzY0ZjVjNzJjZTlhM2I3NmZwLTEsCi0gICAgMHgxLjQ4ZTUyOWQ0MjllNzIxZWM4YmIxZTAxNGY5NGQ0OGYxcC0xLAotICAgIC0weDEuYmYxNGMycC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI1MQotICAgIDB4MS45NWYwNTYzMzdhY2MxZDJkNTU3NTI1MjMyZTkxNTQ2N3AtMSwKLSAgICAweDEuMzgwNTljODMzYzU4ZWE5NzBmN2I5NmQ2YWRhM2Q5YzRwLTEsCi0gICAgMHgxLmQ0Yjg4NHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTIKLSAgICAtMHgxLjk1ZjA1NjMzN2FjYzFkMmQ1NTc1MjUyMzJlOTE1NDY3cC0xLAotICAgIDB4MS4zODA1OWM4MzNjNThlYTk3MGY3Yjk2ZDZhZGEzZDljNHAtMSwKLSAgICAtMHgxLmQ0Yjg4NHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTMKLSAgICAweDEuYTJjMjg5NWVkYjBkNGJhNTFjZGJkNTM5MGNhYzQ2OGZwLTEsCi0gICAgMHgxLjI2OTc2YjFiMTZkMTkwOTFjMDkyNTk3NjVjNGIzODcycC0xLAotICAgIDB4MS5lYTVjM2VwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU0Ci0gICAgLTB4MS5hMmMyODk1ZWRiMGQ0YmE1MWNkYmQ1MzkwY2FjNDY4ZnAtMSwKLSAgICAweDEuMjY5NzZiMWIxNmQxOTA5MWMwOTI1OTc2NWM0YjM4NzJwLTEsCi0gICAgLTB4MS5lYTVjM2VwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU1Ci0gICAgMHgxLmMxZTk4OGI5NTYxNGFiZDY1ZDNkODExZjVjODgwMzlicC0xLAotICAgIDB4MS5lOGM0MDQwNjc4ZDJlZjczNjMzM2E0NTM3YTExMTNhMXAtMiwKLSAgICAweDEuMTJiZDkycDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU2Ci0gICAgLTB4MS5jMWU5ODhiOTU2MTRhYmQ2NWQzZDgxMWY1Yzg4MDM5YnAtMSwKLSAgICAweDEuZThjNDA0MDY3OGQyZWY3MzYzMzNhNDUzN2ExMTEzYTFwLTIsCi0gICAgLTB4MS4xMmJkOTJwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTcKLSAgICAweDEuZDI5NGQyZTA2YjNkMTBhNGRlMjYzMTcyZDUwZjQ0OTdwLTEsCi0gICAgMHgxLmE1YTRjOGY1OThmYTAwNzg5NzEzMTZlYjQ5MDdmOTdicC0yLAotICAgIDB4MS4yNTdiMjRwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTgKLSAgICAtMHgxLmQyOTRkMmUwNmIzZDEwYTRkZTI2MzE3MmQ1MGY0NDk3cC0xLAotICAgIDB4MS5hNWE0YzhmNTk4ZmEwMDc4OTcxMzE2ZWI0OTA3Zjk3YnAtMiwKLSAgICAtMHgxLjI1N2IyNHAwLAotICB9LAotICB7IC8vIEVudHJ5IDI1OQotICAgIDB4MS5lMGMwNGJiNjViZDMzMDEyYmU3MmEzNDBkZjJjMDQ0YnAtMSwKLSAgICAweDEuNjA0MzViZWVkMTBjYTA1NzY5ZjBhM2Q4NmE1YTIwZjNwLTIsCi0gICAgMHgxLjM4MzhiNnAwLAotICB9LAotICB7IC8vIEVudHJ5IDI2MAotICAgIC0weDEuZTBjMDRiYjY1YmQzMzAxMmJlNzJhMzQwZGYyYzA0NGJwLTEsCi0gICAgMHgxLjYwNDM1YmVlZDEwY2EwNTc2OWYwYTNkODZhNWEyMGYzcC0yLAotICAgIC0weDEuMzgzOGI2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYxCi0gICAgMHgxLmVjNTg4NGViOTkwYzNkZWFhZWViZDNmMGY4NGQ2OTYycC0xLAotICAgIDB4MS4xOGZlZTBmYzQ1YzMxYTc5YjJiOTQ3OGIxZjcyYTllYnAtMiwKLSAgICAweDEuNGFmNjQ4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYyCi0gICAgLTB4MS5lYzU4ODRlYjk5MGMzZGVhYWVlYmQzZjBmODRkNjk2MnAtMSwKLSAgICAweDEuMThmZWUwZmM0NWMzMWE3OWIyYjk0NzhiMWY3MmE5ZWJwLTIsCi0gICAgLTB4MS40YWY2NDhwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjMKLSAgICAweDEuZjU0ZDk4MzViMGU2NmUxNzYxMjE2MDI3MjUyMWYzYjBwLTEsCi0gICAgMHgxLmEwNzIyNTIwOTBjMzM4Mjg3NjdhZWUzZTA0MGNjZGRmcC0zLAotICAgIDB4MS41ZGIzZGFwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjQKLSAgICAtMHgxLmY1NGQ5ODM1YjBlNjZlMTc2MTIxNjAyNzI1MjFmM2IwcC0xLAotICAgIDB4MS5hMDcyMjUyMDkwYzMzODI4NzY3YWVlM2UwNDBjY2RkZnAtMywKLSAgICAtMHgxLjVkYjNkYXAwLAotICB9LAotICB7IC8vIEVudHJ5IDI2NQotICAgIDB4MS5mYjkzM2QxY2Q5MzE2ODVlOTAyZTQwM2ExYmFhZWNmZHAtMSwKLSAgICAweDEuMGNhYjc3MDNhOGU5ZGFjYzRhZDAxMTg4YjQ0M2NmZWVwLTMsCi0gICAgMHgxLjcwNzE2Y3AwLAotICB9LAotICB7IC8vIEVudHJ5IDI2NgotICAgIC0weDEuZmI5MzNkMWNkOTMxNjg1ZTkwMmU0MDNhMWJhYWVjZmRwLTEsCi0gICAgMHgxLjBjYWI3NzAzYThlOWRhY2M0YWQwMTE4OGI0NDNjZmVlcC0zLAotICAgIC0weDEuNzA3MTZjcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY3Ci0gICAgMHgxLmZmMjBkOWQzZTg5ODRmZWMzMzk4MmU0MmY1ODg0ZjJjcC0xLAotICAgIDB4MS5kZGQxNzFhM2M5ODUxZTc4MTliNWU0ZjZmOTBlNzYzZHAtNSwKLSAgICAweDEuODMyZWZlcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY4Ci0gICAgLTB4MS5mZjIwZDlkM2U4OTg0ZmVjMzM5ODJlNDJmNTg4NGYyY3AtMSwKLSAgICAweDEuZGRkMTcxYTNjOTg1MWU3ODE5YjVlNGY2ZjkwZTc2M2RwLTUsCi0gICAgLTB4MS44MzJlZmVwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjkKLSAgICAweDEuZmZmMThmMDNhNGI3ZTZhYWNmNTFmODM5MzFlODUwNDJwLTEsCi0gICAgLTB4MS5lNjY4Y2IxNTRlZWE2OGJiYzdmODE1NGY0NmIyZTUzNnAtNywKLSAgICAweDEuOTVlYzkwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcwCi0gICAgLTB4MS5mZmYxOGYwM2E0YjdlNmFhY2Y1MWY4MzkzMWU4NTA0MnAtMSwKLSAgICAtMHgxLmU2NjhjYjE1NGVlYTY4YmJjN2Y4MTU0ZjQ2YjJlNTM2cC03LAotICAgIC0weDEuOTVlYzkwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcxCi0gICAgMHgxLmZlMDQzZjg3NWM2ZWQ0YTJjMWI4ZDY5YTA5ZmNmNTc4cC0xLAotICAgIC0weDEuNjgyZjJiYjg3YThmNTAxMTczNTA5NDE3NmM5YjZkYWNwLTQsCi0gICAgMHgxLmE4YWExY3AwLAotICB9LAotICB7IC8vIEVudHJ5IDI3MgotICAgIC0weDEuZmUwNDNmODc1YzZlZDRhMmMxYjhkNjlhMDlmY2Y1NzhwLTEsCi0gICAgLTB4MS42ODJmMmJiODdhOGY1MDExNzM1MDk0MTc2YzliNmRhY3AtNCwKLSAgICAtMHgxLmE4YWExY3AwLAotICB9LAotICB7IC8vIEVudHJ5IDI3MwotICAgIDB4MS5iM2QzNmE5Njg4MGNmNjlkOTg4NGE0OWY1MzgxZTkxN3AtMSwKLSAgICAweDEuMGNiMzQ0OWEwZDBhOWUwNjQzZDQxZjRhNWIwZjdkYjdwLTEsCi0gICAgMHgxLjA0YWZmOHAwLAotICB9LAotICB7IC8vIEVudHJ5IDI3NAotICAgIC0weDEuYjNkMzZhOTY4ODBjZjY5ZDk4ODRhNDlmNTM4MWU5MTdwLTEsCi0gICAgMHgxLjBjYjM0NDlhMGQwYTllMDY0M2Q0MWY0YTViMGY3ZGI3cC0xLAotICAgIC0weDEuMDRhZmY4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc1Ci0gICAgMHgxLmIzZDQxYWViY2YzOTFjMzBjM2QyZjFlZTdiNzk3MTBjcC0xLAotICAgIDB4MS4wY2IyMjY5NzE1M2JjZjFmOGE2M2FjZGRkOTZjNTRjYnAtMSwKLSAgICAweDEuMDRiMGEwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc2Ci0gICAgLTB4MS5iM2Q0MWFlYmNmMzkxYzMwYzNkMmYxZWU3Yjc5NzEwY3AtMSwKLSAgICAweDEuMGNiMjI2OTcxNTNiY2YxZjhhNjNhY2RkZDk2YzU0Y2JwLTEsCi0gICAgLTB4MS4wNGIwYTBwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzcKLSAgICAweDEuYjNkNGNiNDA1YWIzMjkyYmU3ZGY1YjFiOTgwMzJmYmVwLTEsCi0gICAgMHgxLjBjYjEwODkzYTliNTQ3MWE0NDM1NjA3MmNiMzNiMzk1cC0xLAotICAgIDB4MS4wNGIxNDhwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzgKLSAgICAtMHgxLmIzZDRjYjQwNWFiMzI5MmJlN2RmNWIxYjk4MDMyZmJlcC0xLAotICAgIDB4MS4wY2IxMDg5M2E5YjU0NzFhNDQzNTYwNzJjYjMzYjM5NXAtMSwKLSAgICAtMHgxLjA0YjE0OHAwLAotICB9LAotICB7IC8vIEVudHJ5IDI3OQotICAgIDB4MS5iM2Q1N2I5NDJhN2FkMTllOWI5ODkyYzkzMTllMWJlNnAtMSwKLSAgICAweDEuMGNhZmVhOGZjYTc3ODEyMzZhNTdlNWIxYzhhZWQzOWNwLTEsCi0gICAgMHgxLjA0YjFmMHAwLAotICB9LAotICB7IC8vIEVudHJ5IDI4MAotICAgIC0weDEuYjNkNTdiOTQyYTdhZDE5ZTliOTg5MmM5MzE5ZTFiZTZwLTEsCi0gICAgMHgxLjBjYWZlYThmY2E3NzgxMjM2YTU3ZTViMWM4YWVkMzljcC0xLAotICAgIC0weDEuMDRiMWYwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgxCi0gICAgMHgxLmIzZDYyYmU3M2U4ZmM5OThjNmMyZGY2NTkwNDI1NjEzcC0xLAotICAgIDB4MS4wY2FlY2M4Yjc3ODJmODY4MjdhZjkyYjBiMjM3NDUxMHAtMSwKLSAgICAweDEuMDRiMjk4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgyCi0gICAgLTB4MS5iM2Q2MmJlNzNlOGZjOTk4YzZjMmRmNjU5MDQyNTYxM3AtMSwKLSAgICAweDEuMGNhZWNjOGI3NzgyZjg2ODI3YWY5MmIwYjIzNzQ1MTBwLTEsCi0gICAgLTB4MS4wNGIyOThwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODMKLSAgICAweDEuYjNkNmRjMzk5NmYxYzUyYWExZjgzYmRlZTFkMGUwMjNwLTEsCi0gICAgMHgxLjBjYWRhZTg2YjBkODI4MTVkOGY2MzJlNjdjN2UxYTk5cC0xLAotICAgIDB4MS4wNGIzNDBwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODQKLSAgICAtMHgxLmIzZDZkYzM5OTZmMWM1MmFhMWY4M2JkZWUxZDBlMDIzcC0xLAotICAgIDB4MS4wY2FkYWU4NmIwZDgyODE1ZDhmNjMyZTY3YzdlMWE5OXAtMSwKLSAgICAtMHgxLjA0YjM0MHAwLAotICB9LAotICB7IC8vIEVudHJ5IDI4NQotICAgIDB4MS5iM2Q3OGM4YjMzYTA3ODY0YjZhODc4NTczZGIzNGJjYXAtMSwKLSAgICAweDEuMGNhYzkwODE3Njc3OGI1YTBjYmFkMjFlZTc1Y2U3NjVwLTEsCi0gICAgMHgxLjA0YjNlOHAwLAotICB9LAotICB7IC8vIEVudHJ5IDI4NgotICAgIC0weDEuYjNkNzhjOGIzM2EwNzg2NGI2YTg3ODU3M2RiMzRiY2FwLTEsCi0gICAgMHgxLjBjYWM5MDgxNzY3NzhiNWEwY2JhZDIxZWU3NWNlNzY1cC0xLAotICAgIC0weDEuMDRiM2U4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg3Ci0gICAgMHgxLmIzZDgzY2RjMTQ5Yjk3NTdkZjE5NWFkODg1YWI1MjAxcC0xLAotICAgIDB4MS4wY2FiNzI3YmM4NjE5ZDYyODM2MTg3NmUxZjMwYTYzM3AtMSwKLSAgICAweDEuMDRiNDkwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg4Ci0gICAgLTB4MS5iM2Q4M2NkYzE0OWI5NzU3ZGYxOTVhZDg4NWFiNTIwMXAtMSwKLSAgICAweDEuMGNhYjcyN2JjODYxOWQ2MjgzNjE4NzZlMWYzMGE2MzNwLTEsCi0gICAgLTB4MS4wNGI0OTBwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODkKLSAgICAweDEuYjNkOGU4Zjk5MDgzNjBiMzhjZDEzZmNiZjYyMjRkOTNwLTEsCi0gICAgMHgxLjBjYWE1YjQ1MGE0MzI0ZjIwNGE1NTZiMDcyZGExMjRhcC0xLAotICAgIDB4MS4wNGI1MzRwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTAKLSAgICAtMHgxLmIzZDhlOGY5OTA4MzYwYjM4Y2QxM2ZjYmY2MjI0ZDkzcC0xLAotICAgIDB4MS4wY2FhNWI0NTBhNDMyNGYyMDRhNTU2YjA3MmRhMTI0YXAtMSwKLSAgICAtMHgxLjA0YjUzNHAwLAotICB9LAotICB7IC8vIEVudHJ5IDI5MQotICAgIC0wLjBmLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLnAtMTQ5LAotICB9LAotICB7IC8vIEVudHJ5IDI5MgotICAgIDAuMGYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5wLTE0OSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTMKLSAgICAwLjAsCi0gICAgMHgxLnAwLAotICAgIDAuMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTQKLSAgICAwLjBmLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEucC0xNDksCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk1Ci0gICAgLTAuMGYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEucC0xNDksCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk2Ci0gICAgMHgxLjE3NzNkMzZhNjRkZjYxZDY3MTVlNjBhZjA2MzU1OWY0cC0xLAotICAgIDB4MS5hZDAyYzhiOWNjOTNmNDQ4ZWY0ZWIwNjhhODg5MjJhM3AtMSwKLSAgICAweDEuMjc5YTcycC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI5NwotICAgIC0weDEuMTc3M2QzNmE2NGRmNjFkNjcxNWU2MGFmMDYzNTU5ZjRwLTEsCi0gICAgMHgxLmFkMDJjOGI5Y2M5M2Y0NDhlZjRlYjA2OGE4ODkyMmEzcC0xLAotICAgIC0weDEuMjc5YTcycC0xLAotICB9LAotICB7IC8vIEVudHJ5IDI5OAotICAgIDB4MS4xNzczZDUxNzY3YTc4ZmU5MWI1NWY2YjdlNWZkNDRjMnAtMSwKLSAgICAweDEuYWQwMmM3YTI1OGJmYjM2MmFiYmU4NmZiNDhmNGU5OGJwLTEsCi0gICAgMHgxLjI3OWE3NHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTkKLSAgICAtMHgxLjE3NzNkNTE3NjdhNzhmZTkxYjU1ZjZiN2U1ZmQ0NGMycC0xLAotICAgIDB4MS5hZDAyYzdhMjU4YmZiMzYyYWJiZTg2ZmI0OGY0ZTk4YnAtMSwKLSAgICAtMHgxLjI3OWE3NHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDAKLSAgICAweDEuMTc3M2Q2YzQ2YTZlYTY4N2YwMzYyNTE5NGQyNWJiNTJwLTEsCi0gICAgMHgxLmFkMDJjNjhhZTRlOWM1NzlhMDhjMDRjZTU5YmU0MDAycC0xLAotICAgIDB4MS4yNzlhNzZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAxCi0gICAgLTB4MS4xNzczZDZjNDZhNmVhNjg3ZjAzNjI1MTk0ZDI1YmI1MnAtMSwKLSAgICAweDEuYWQwMmM2OGFlNGU5YzU3OWEwOGMwNGNlNTliZTQwMDJwLTEsCi0gICAgLTB4MS4yNzlhNzZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAyCi0gICAgMHgxLmY5NWI4ZjQwNTAxMDU3YWM0OWFjZWYxMzk5M2IwYzU1cC0xLAotICAgIC0weDEuNDhkMWM5ZTk4YjZjMDg3ODRmMTAwNDBmNDdhMTIxOTFwLTMsCi0gICAgMHgxLmJiNjdhY3AwLAotICB9LAotICB7IC8vIEVudHJ5IDMwMwotICAgIC0weDEuZjk1YjhmNDA1MDEwNTdhYzQ5YWNlZjEzOTkzYjBjNTVwLTEsCi0gICAgLTB4MS40OGQxYzllOThiNmMwODc4NGYxMDA0MGY0N2ExMjE5MXAtMywKLSAgICAtMHgxLmJiNjdhY3AwLAotICB9LAotICB7IC8vIEVudHJ5IDMwNAotICAgIDB4MS5mOTViOGU5YmU3Mjc3MDJmNzU5NWFlMTAwMGExNGExYXAtMSwKLSAgICAtMHgxLjQ4ZDFkOWI0NjdlMzc5NTUzMzczMTFkZWNkMDlmYzc0cC0zLAotICAgIDB4MS5iYjY3YWVwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDUKLSAgICAtMHgxLmY5NWI4ZTliZTcyNzcwMmY3NTk1YWUxMDAwYTE0YTFhcC0xLAotICAgIC0weDEuNDhkMWQ5YjQ2N2UzNzk1NTMzNzMxMWRlY2QwOWZjNzRwLTMsCi0gICAgLTB4MS5iYjY3YWVwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDYKLSAgICAweDEuZjk1YjhkZjc3ZTM2YTM0NDY3MGVkMDcxNDkxOTFhNThwLTEsCi0gICAgLTB4MS40OGQxZTk3ZjQ0NTVjNmVhYjEwNDgwMjIyMzhiMmJkMHAtMywKLSAgICAweDEuYmI2N2IwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA3Ci0gICAgLTB4MS5mOTViOGRmNzdlMzZhMzQ0NjcwZWQwNzE0OTE5MWE1OHAtMSwKLSAgICAtMHgxLjQ4ZDFlOTdmNDQ1NWM2ZWFiMTA0ODAyMjIzOGIyYmQwcC0zLAotICAgIC0weDEuYmI2N2IwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA4Ci0gICAgMHgxLmIxZDgyZTgzNWE5MThkZTE4ZjVmZGFkYzhiMTI0MGNmcC0yLAotICAgIDB4MS5jZmM2ZDAxMWEwZTVkMGZjZWJiNTRiNWZlZDY3Mjk0MHAtMSwKLSAgICAweDEuYmZmZmZlcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDMwOQotICAgIC0weDEuYjFkODJlODM1YTkxOGRlMThmNWZkYWRjOGIxMjQwY2ZwLTIsCi0gICAgMHgxLmNmYzZkMDExYTBlNWQwZmNlYmI1NGI1ZmVkNjcyOTQwcC0xLAotICAgIC0weDEuYmZmZmZlcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDMxMAotICAgIDB4MS5iMWQ4MzA1MzIxNjE2OTQ3NmY0ZDE5ODJiOWIxNGFiMXAtMiwKLSAgICAweDEuY2ZjNmNmYTUyYWQ5ZjYyZDZkNTQyM2NhODMzOWEwMGFwLTEsCi0gICAgMHgxLmMwcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDMxMQotICAgIC0weDEuYjFkODMwNTMyMTYxNjk0NzZmNGQxOTgyYjliMTRhYjFwLTIsCi0gICAgMHgxLmNmYzZjZmE1MmFkOWY2MmQ2ZDU0MjNjYTgzMzlhMDBhcC0xLAotICAgIC0weDEuYzBwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzEyCi0gICAgMHgxLmIxZDgzMjIyZTgzMGQ4Mzc0MzI1OGZkMDkwNDBlZTU2cC0yLAotICAgIDB4MS5jZmM2Y2YzOGI0Y2RhNzZjM2IwOWIxN2U5ZGViMTllYXAtMSwKLSAgICAweDEuYzAwMDAycC0yLAotICB9LAotICB7IC8vIEVudHJ5IDMxMwotICAgIC0weDEuYjFkODMyMjJlODMwZDgzNzQzMjU4ZmQwOTA0MGVlNTZwLTIsCi0gICAgMHgxLmNmYzZjZjM4YjRjZGE3NmMzYjA5YjE3ZTlkZWIxOWVhcC0xLAotICAgIC0weDEuYzAwMDAycC0yLAotICB9LAotICB7IC8vIEVudHJ5IDMxNAotICAgIDB4MS40NGViMzY5MTQyODA2MmIyNzkyNWM1ODVhZDU5ZDYyYXAtMSwKLSAgICAweDEuOGJiMTA2ZWFjN2M3NWQzM2ZiYjE5NDQ2MzEzZWNjMmZwLTEsCi0gICAgMHgxLjVmZmZmZXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTUKLSAgICAtMHgxLjQ0ZWIzNjkxNDI4MDYyYjI3OTI1YzU4NWFkNTlkNjJhcC0xLAotICAgIDB4MS44YmIxMDZlYWM3Yzc1ZDMzZmJiMTk0NDYzMTNlY2MyZnAtMSwKLSAgICAtMHgxLjVmZmZmZXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTYKLSAgICAweDEuNDRlYjM4MWNmMzg2YWIwNGE0Zjg2NTZhYmVhODBiODNwLTEsCi0gICAgMHgxLjhiYjEwNWE1ZGM5MDA2MThmODBmYTUxZDMwM2M2OXAtMSwKLSAgICAweDEuNjBwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE3Ci0gICAgLTB4MS40NGViMzgxY2YzODZhYjA0YTRmODY1NmFiZWE4MGI4M3AtMSwKLSAgICAweDEuOGJiMTA1YTVkYzkwMDYxOGY4MGZhNTFkMzAzYzY5cC0xLAotICAgIC0weDEuNjBwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE4Ci0gICAgMHgxLjQ0ZWIzOWE4YTQ4YmFlNmI5OGFlMTFjOTQwMDUzNWU1cC0xLAotICAgIDB4MS44YmIxMDQ2MGYxNTcyMzRjZWVjN2Q5NjQ0YTFhNzhlNXAtMSwKLSAgICAweDEuNjAwMDAycC0xLAotICB9LAotICB7IC8vIEVudHJ5IDMxOQotICAgIC0weDEuNDRlYjM5YThhNDhiYWU2Yjk4YWUxMWM5NDAwNTM1ZTVwLTEsCi0gICAgMHgxLjhiYjEwNDYwZjE1NzIzNGNlZWM3ZDk2NDRhMWE3OGU1cC0xLAotICAgIC0weDEuNjAwMDAycC0xLAotICB9LAotICB7IC8vIEVudHJ5IDMyMAotICAgIDB4MS5kYWQ5MDE3Yjk2NDA4YzM3NWQ0ZmFmMGU0Nzc2ZDFmY3AtMSwKLSAgICAweDEuN2VmNDhiOWE2ZmQ1YzI0ZjVlYzM5ODM5ZTE3MjliNzhwLTIsCi0gICAgMHgxLjJmZmZmZXAwLAotICB9LAotICB7IC8vIEVudHJ5IDMyMQotICAgIC0weDEuZGFkOTAxN2I5NjQwOGMzNzVkNGZhZjBlNDc3NmQxZmNwLTEsCi0gICAgMHgxLjdlZjQ4YjlhNmZkNWMyNGY1ZWMzOTgzOWUxNzI5Yjc4cC0yLAotICAgIC0weDEuMmZmZmZlcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIyCi0gICAgMHgxLmRhZDkwMmZhOGFjODcwZjUyZjFiODQzYWM4M2JjM2VkcC0xLAotICAgIDB4MS43ZWY0ODQyZjBiY2NkNjBkNGE1MDFkYzhiYzRiNTdiM3AtMiwKLSAgICAweDEuMzBwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjMKLSAgICAtMHgxLmRhZDkwMmZhOGFjODcwZjUyZjFiODQzYWM4M2JjM2VkcC0xLAotICAgIDB4MS43ZWY0ODQyZjBiY2NkNjBkNGE1MDFkYzhiYzRiNTdiM3AtMiwKLSAgICAtMHgxLjMwcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI0Ci0gICAgMHgxLmRhZDkwNDc5N2Y0OGVhNGVmNGZkMmU0N2ZlNGQ1MmJkcC0xLAotICAgIDB4MS43ZWY0N2NjM2E3YmRlZGY5MjUyMDc0MjYzZDhhNDU5NnAtMiwKLSAgICAweDEuMzAwMDAycDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI1Ci0gICAgLTB4MS5kYWQ5MDQ3OTdmNDhlYTRlZjRmZDJlNDdmZTRkNTJiZHAtMSwKLSAgICAweDEuN2VmNDdjYzNhN2JkZWRmOTI1MjA3NDI2M2Q4YTQ1OTZwLTIsCi0gICAgLTB4MS4zMDAwMDJwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjYKLSAgICAweDEuNGI3MDgwOTNjOWNiNDUzNTVlNzgyMWU1YWFkOThjZThwLTEsCi0gICAgLTB4MS44NjNlZjUwODViY2MzNThkMmFlODUyNWJmMzlmMGM0MHAtMSwKLSAgICAweDEuMzdmZmZlcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI3Ci0gICAgLTB4MS40YjcwODA5M2M5Y2I0NTM1NWU3ODIxZTVhYWQ5OGNlOHAtMSwKLSAgICAtMHgxLjg2M2VmNTA4NWJjYzM1OGQyYWU4NTI1YmYzOWYwYzQwcC0xLAotICAgIC0weDEuMzdmZmZlcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI4Ci0gICAgMHgxLjRiNzA3YTdhY2RlY2M4NDIzOTQ2M2U3OGIzMTJmYTEwcC0xLAotICAgIC0weDEuODYzZWZhMzYxZGMyNTJiY2ExZWFlZWQzOTc0OWJlZDdwLTEsCi0gICAgMHgxLjM4cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI5Ci0gICAgLTB4MS40YjcwN2E3YWNkZWNjODQyMzk0NjNlNzhiMzEyZmExMHAtMSwKLSAgICAtMHgxLjg2M2VmYTM2MWRjMjUyYmNhMWVhZWVkMzk3NDliZWQ3cC0xLAotICAgIC0weDEuMzhwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzAKLSAgICAweDEuNGI3MDc0NjFkMWY5OTQ0NzZjNjc3YzVhZDVkZGIyNjRwLTEsCi0gICAgLTB4MS44NjNlZmY2M2RmYTAwYmZjNzU4YmFmNDY5NDY5ZDc0MXAtMSwKLSAgICAweDEuMzgwMDAycDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMxCi0gICAgLTB4MS40YjcwNzQ2MWQxZjk5NDQ3NmM2NzdjNWFkNWRkYjI2NHAtMSwKLSAgICAtMHgxLjg2M2VmZjYzZGZhMDBiZmM3NThiYWY0Njk0NjlkNzQxcC0xLAotICAgIC0weDEuMzgwMDAycDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMyCi0gICAgMHgxLjA2NmU3ZjcwNWE2Y2EyYjllMTA3ZjdkYzlmM2IyNmU2cC00LAotICAgIDB4MS5mZWYyYjJkMGExMGUyNzM5YzU2NjkzNjQ4MGExNDc5YnAtMSwKLSAgICAweDEuMDY5YzhjcC00LAotICB9LAotICB7IC8vIEVudHJ5IDMzMwotICAgIC0weDEuMDY2ZTdmNzA1YTZjYTJiOWUxMDdmN2RjOWYzYjI2ZTZwLTQsCi0gICAgMHgxLmZlZjJiMmQwYTEwZTI3MzljNTY2OTM2NDgwYTE0NzlicC0xLAotICAgIC0weDEuMDY5YzhjcC00LAotICB9LAotICB7IC8vIEVudHJ5IDMzNAotICAgIDB4MS4wNWU0NzZkMjdmZWJjOGI3ZTk2OTAwMDliMzY3YzMyN3AtMywKLSAgICAweDEuZmJjYmU2OGRkMTBiYWQwYTIyOWNjYmI1ODBjYzU0MzZwLTEsCi0gICAgMHgxLjA2OWM4Y3AtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzUKLSAgICAtMHgxLjA1ZTQ3NmQyN2ZlYmM4YjdlOTY5MDAwOWIzNjdjMzI3cC0zLAotICAgIDB4MS5mYmNiZTY4ZGQxMGJhZDBhMjI5Y2NiYjU4MGNjNTQzNnAtMSwKLSAgICAtMHgxLjA2OWM4Y3AtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzYKLSAgICAweDEuODc3ZTJkZTVjOWEwNjZiOGRiNTk1YWRjMTQ5YWYwYzBwLTMsCi0gICAgMHgxLmY2OGVlYmVmNzJlN2Y2MTI2YjNmM2RkZTY0NmE3NTVjcC0xLAotICAgIDB4MS44OWVhZDJwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM3Ci0gICAgLTB4MS44NzdlMmRlNWM5YTA2NmI4ZGI1OTVhZGMxNDlhZjBjMHAtMywKLSAgICAweDEuZjY4ZWViZWY3MmU3ZjYxMjZiM2YzZGRlNjQ2YTc1NWNwLTEsCi0gICAgLTB4MS44OWVhZDJwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM4Ci0gICAgMHgxLjAzYmUwN2FjYjlkYWI3MTliNDM0M2EzM2I5ZmE2YWZlcC0yLAotICAgIDB4MS5lZjQxNDU5ZDJlOTBlYTFiN2ZhYWQ3ZmFiZDFmZDQ0NHAtMSwKLSAgICAweDEuMDY5YzhjcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDMzOQotICAgIC0weDEuMDNiZTA3YWNiOWRhYjcxOWI0MzQzYTMzYjlmYTZhZmVwLTIsCi0gICAgMHgxLmVmNDE0NTlkMmU5MGVhMWI3ZmFhZDdmYWJkMWZkNDQ0cC0xLAotICAgIC0weDEuMDY5YzhjcC0yLAotICB9LAotICB7IC8vIEVudHJ5IDM0MAotICAgIDB4MS40MmFiYmM1YjNiMmY5MWU4ZWNlNDZlNWVmZmQyODM2OXAtMiwKLSAgICAweDEuZTVlYWEyM2EyN2ZlOGQ2ODkwYTNlZGFjZTFjNjE5OThwLTEsCi0gICAgMHgxLjQ4NDNiMHAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDEKLSAgICAtMHgxLjQyYWJiYzViM2IyZjkxZThlY2U0NmU1ZWZmZDI4MzY5cC0yLAotICAgIDB4MS5lNWVhYTIzYTI3ZmU4ZDY4OTBhM2VkYWNlMWM2MTk5OHAtMSwKLSAgICAtMHgxLjQ4NDNiMHAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDIKLSAgICAweDEuODA0NjAxNDExZDkzZjQ3NTA5MTk2NzAwNjFkZTA3ZDlwLTIsCi0gICAgMHgxLmRhOTRkNGI5OWMzYTlhNWUwZDFmYzg2ZDUzMzY5YTg0cC0xLAotICAgIDB4MS44OWVhZDRwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQzCi0gICAgLTB4MS44MDQ2MDE0MTFkOTNmNDc1MDkxOTY3MDA2MWRlMDdkOXAtMiwKLSAgICAweDEuZGE5NGQ0Yjk5YzNhOWE1ZTBkMWZjODZkNTMzNjlhODRwLTEsCi0gICAgLTB4MS44OWVhZDRwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ0Ci0gICAgMHgxLmJjNGMwOGFmMzU2MDg4YjE2OTQ5OTViZmFmOGEyOTdicC0yLAotICAgIDB4MS5jZDRiYzlhZmMwMTIzMGIyZjk4MmY2OTY4ZGFiN2YwNXAtMSwKLSAgICAweDEuY2I5MWY4cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDM0NQotICAgIC0weDEuYmM0YzA4YWYzNTYwODhiMTY5NDk5NWJmYWY4YTI5N2JwLTIsCi0gICAgMHgxLmNkNGJjOWFmYzAxMjMwYjJmOTgyZjY5NjhkYWI3ZjA1cC0xLAotICAgIC0weDEuY2I5MWY4cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDM0NgotICAgIDB4MS5mNjdlYWUzNGRjMGI0MmI0NjVmZDJhM2ZiMDc1NjRhNHAtMiwKLSAgICAweDEuYmUxZDdhZGYwNzdkZWYyYTM2MGZlYzIzZGJiY2VmMDlwLTEsCi0gICAgMHgxLjA2OWM4ZXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDcKLSAgICAtMHgxLmY2N2VhZTM0ZGMwYjQyYjQ2NWZkMmEzZmIwNzU2NGE0cC0yLAotICAgIDB4MS5iZTFkN2FkZjA3N2RlZjJhMzYwZmVjMjNkYmJjZWYwOXAtMSwKLSAgICAtMHgxLjA2OWM4ZXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDgKLSAgICAweDEuMTc1MDVjODYyMzE4OThmZDg2YjE4ZDIyODJkOTNlZWRwLTEsCi0gICAgMHgxLmFkMTllMDg0N2QyNWYzYWExNDIyODlkYWI1NTdiZjk2cC0xLAotICAgIDB4MS4yNzcwMjBwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ5Ci0gICAgLTB4MS4xNzUwNWM4NjIzMTg5OGZkODZiMThkMjI4MmQ5M2VlZHAtMSwKLSAgICAweDEuYWQxOWUwODQ3ZDI1ZjNhYTE0MjI4OWRhYjU1N2JmOTZwLTEsCi0gICAgLTB4MS4yNzcwMjBwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUwCi0gICAgMHgxLjMyM2I4ZTQwZDE2NTc1ZTUwZGM3YjZlNTY3YmI1MDg0cC0xLAotICAgIDB4MS45YTUyZTA4YjE5MWJkNTU1MTJjODM2NTA3NGYxOTg3ZnAtMSwKLSAgICAweDEuNDg0M2IycC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM1MQotICAgIC0weDEuMzIzYjhlNDBkMTY1NzVlNTBkYzdiNmU1NjdiYjUwODRwLTEsCi0gICAgMHgxLjlhNTJlMDhiMTkxYmQ1NTUxMmM4MzY1MDc0ZjE5ODdmcC0xLAotICAgIC0weDEuNDg0M2IycC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM1MgotICAgIDB4MS40YmU0OWIwOGExZTE2MjljYmRhYTUwN2UxODI1NWNkOHAtMSwKLSAgICAweDEuODVkYzNiYjdjMmU5YWJiNWNjY2I2ZDk2ZDEyZDM5YzRwLTEsCi0gICAgMHgxLjY5MTc0NHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTMKLSAgICAtMHgxLjRiZTQ5YjA4YTFlMTYyOWNiZGFhNTA3ZTE4MjU1Y2Q4cC0xLAotICAgIDB4MS44NWRjM2JiN2MyZTlhYmI1Y2NjYjZkOTZkMTJkMzljNHAtMSwKLSAgICAtMHgxLjY5MTc0NHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTQKLSAgICAweDEuNjQzMDg0N2RiYmJmZDQ2Y2JlYmJjNmQ1ZjUxYzdjNDlwLTEsCi0gICAgMHgxLjZmY2I3OGUxY2Q2NWQyZTRmZGU3MTE4Y2FhYzc5ZDZkcC0xLAotICAgIDB4MS44OWVhZDZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzU1Ci0gICAgLTB4MS42NDMwODQ3ZGJiYmZkNDZjYmViYmM2ZDVmNTFjN2M0OXAtMSwKLSAgICAweDEuNmZjYjc4ZTFjZDY1ZDJlNGZkZTcxMThjYWFjNzlkNmRwLTEsCi0gICAgLTB4MS44OWVhZDZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzU2Ci0gICAgMHgxLjdiMDViYjg3YjM4ODQ0ZTU2MDAzYzQxZWY4MDRiMjczcC0xLAotICAgIDB4MS41ODM3Y2U0ZGM4MzVkNGE1NDU0ZWMwYTFiYjM5NDA4MXAtMSwKLSAgICAweDEuYWFiZTY4cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM1NwotICAgIC0weDEuN2IwNWJiODdiMzg4NDRlNTYwMDNjNDFlZjgwNGIyNzNwLTEsCi0gICAgMHgxLjU4MzdjZTRkYzgzNWQ0YTU0NTRlYzBhMWJiMzk0MDgxcC0xLAotICAgIC0weDEuYWFiZTY4cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDM1OAotICAgIDB4MS45MDRjM2IzODlkNTVkM2RlZGRiMzlkMDVlYjM2NjU3MXAtMSwKLSAgICAweDEuM2YzYTA5NDI3OTY2ZTk1MTg4MDJkZWUzYmY0NDNhOTVwLTEsCi0gICAgMHgxLmNiOTFmYXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTkKLSAgICAtMHgxLjkwNGMzYjM4OWQ1NWQzZGVkZGIzOWQwNWViMzY2NTcxcC0xLAotICAgIDB4MS4zZjNhMDk0Mjc5NjZlOTUxODgwMmRlZTNiZjQ0M2E5NXAtMSwKLSAgICAtMHgxLmNiOTFmYXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjAKLSAgICAweDEuYTNlZGEyMTE3OThhODI2OTdkNjI0MzFmOWFlNDZjYzRwLTEsCi0gICAgMHgxLjI0ZWM3M2YxYWVlZjQ5NDBiYjhkYTE5YTgyYmJjNDlmcC0xLAotICAgIDB4MS5lYzY1OGNwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzYxCi0gICAgLTB4MS5hM2VkYTIxMTc5OGE4MjY5N2Q2MjQzMWY5YWU0NmNjNHAtMSwKLSAgICAweDEuMjRlYzczZjFhZWVmNDk0MGJiOGRhMTlhODJiYmM0OWZwLTEsCi0gICAgLTB4MS5lYzY1OGNwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzYyCi0gICAgMHgxLmI1ZDU0ODgzZmNiNjEyM2JjMjhhYWM5MWYwODVlNGVlcC0xLAotICAgIDB4MS4wOTZhYmI4NjJmOWJkNTUxNTk4MmMyODE4YzMzMmZmOXAtMSwKLSAgICAweDEuMDY5YzhlcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzYzCi0gICAgLTB4MS5iNWQ1NDg4M2ZjYjYxMjNiYzI4YWFjOTFmMDg1ZTRlZXAtMSwKLSAgICAweDEuMDk2YWJiODYyZjliZDU1MTU5ODJjMjgxOGMzMzJmZjlwLTEsCi0gICAgLTB4MS4wNjljOGVwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjQKLSAgICAweDEuYzVmMDVhMDEzNWQ0ODgyYzc2OGNkZjE4ZTJlMTExMmNwLTEsCi0gICAgMHgxLmQ5YTM5YzBkZGRjNjU0YzcxN2UzMDM2ZGE1ZGQ2ODVjcC0yLAotICAgIDB4MS4xNzA2NTZwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjUKLSAgICAtMHgxLmM1ZjA1YTAxMzVkNDg4MmM3NjhjZGYxOGUyZTExMTJjcC0xLAotICAgIDB4MS5kOWEzOWMwZGRkYzY1NGM3MTdlMzAzNmRhNWRkNjg1Y3AtMiwKLSAgICAtMHgxLjE3MDY1NnAwLAotICB9LAotICB7IC8vIEVudHJ5IDM2NgotICAgIDB4MS5kNDJkZTUzZTMxNWM4MzljZTE4OGUyMDEyMDVlOTlkZXAtMSwKLSAgICAweDEuOWU3ZjgxODQwYzBiYmQwZjFiMTM3MzMwNjEwNjJkMzRwLTIsCi0gICAgMHgxLjI3NzAxZXAwLAotICB9LAotICB7IC8vIEVudHJ5IDM2NwotICAgIC0weDEuZDQyZGU1M2UzMTVjODM5Y2UxODhlMjAxMjA1ZTk5ZGVwLTEsCi0gICAgMHgxLjllN2Y4MTg0MGMwYmJkMGYxYjEzNzMzMDYxMDYyZDM0cC0yLAotICAgIC0weDEuMjc3MDFlcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY4Ci0gICAgMHgxLmUwN2VlZjQ1ZDkxZWVhOGE2Y2M3MzY5YWEwZTU1Mzg4cC0xLAotICAgIDB4MS42MWE3NWUyZGViNTk2NzMxYzhjZDQ1ZTNkOTc5NDUyNnAtMiwKLSAgICAweDEuMzdkOWU2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY5Ci0gICAgLTB4MS5lMDdlZWY0NWQ5MWVlYThhNmNjNzM2OWFhMGU1NTM4OHAtMSwKLSAgICAweDEuNjFhNzVlMmRlYjU5NjczMWM4Y2Q0NWUzZDk3OTQ1MjZwLTIsCi0gICAgLTB4MS4zN2Q5ZTZwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzAKLSAgICAweDEuZWFkNjgzM2IyYWEwMDJiYWExYzJiMTlhMzhkYzliNzlwLTEsCi0gICAgMHgxLjIzNWIzMzdiMDkxY2RkOGFjMDYzOTBhYmM2ODE2YjgycC0yLAotICAgIDB4MS40ODQzYWVwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzEKLSAgICAtMHgxLmVhZDY4MzNiMmFhMDAyYmFhMWMyYjE5YTM4ZGM5Yjc5cC0xLAotICAgIDB4MS4yMzViMzM3YjA5MWNkZDhhYzA2MzkwYWJjNjgxNmI4MnAtMiwKLSAgICAtMHgxLjQ4NDNhZXAwLAotICB9LAotICB7IC8vIEVudHJ5IDM3MgotICAgIDB4MS5mMzI5YmZmYTZhMjA4NTkxZWVjYjY5MDVkNzU5NGUzYnAtMSwKLSAgICAweDEuYzdiOTE0NmQ2ZDEwODI0ZmY2NTJkYzM5MGJhMmQ3ZjlwLTMsCi0gICAgMHgxLjU4YWQ3NnAwLAotICB9LAotICB7IC8vIEVudHJ5IDM3MwotICAgIC0weDEuZjMyOWJmZmE2YTIwODU5MWVlY2I2OTA1ZDc1OTRlM2JwLTEsCi0gICAgMHgxLmM3YjkxNDZkNmQxMDgyNGZmNjUyZGMzOTBiYTJkN2Y5cC0zLAotICAgIC0weDEuNThhZDc2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc0Ci0gICAgMHgxLmY5NmZlMzhhZmJkOTViNWZjZDA4NjA4MTEwZTkzODFmcC0xLAotICAgIDB4MS40NmRjNWIyZjFkZTk3N2VmZmY3YzI3OGI1YWRiMmE3NXAtMywKLSAgICAweDEuNjkxNzNlcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc1Ci0gICAgLTB4MS5mOTZmZTM4YWZiZDk1YjVmY2QwODYwODExMGU5MzgxZnAtMSwKLSAgICAweDEuNDZkYzViMmYxZGU5NzdlZmZmN2MyNzhiNWFkYjJhNzVwLTMsCi0gICAgLTB4MS42OTE3M2VwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzYKLSAgICAweDEuZmRhMjU0NTVkOTU2Nzc3MmYyMGYyNWQxNWVmYzY3NzVwLTEsCi0gICAgMHgxLjg5NGY5M2VmNDljNDU3NTgwMGJiZDY0NmEzYTMxZDJhcC00LAotICAgIDB4MS43OTgxMDZwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzcKLSAgICAtMHgxLmZkYTI1NDU1ZDk1Njc3NzJmMjBmMjVkMTVlZmM2Nzc1cC0xLAotICAgIDB4MS44OTRmOTNlZjQ5YzQ1NzU4MDBiYmQ2NDZhM2EzMWQyYXAtNCwKLSAgICAtMHgxLjc5ODEwNnAwLAotICB9LAotICB7IC8vIEVudHJ5IDM3OAotICAgIDB4MS5mZmJjYTgxNmYxZjE1MTZlYzVkNzU3YjBkYjU0YWUzNHAtMSwKLSAgICAweDEuMDY5MTY0ZTNmNWNlZTk0ZDg2NWZiNTJlMzE2ZGZmNmJwLTUsCi0gICAgMHgxLjg5ZWFjZXAwLAotICB9LAotICB7IC8vIEVudHJ5IDM3OQotICAgIC0weDEuZmZiY2E4MTZmMWYxNTE2ZWM1ZDc1N2IwZGI1NGFlMzRwLTEsCi0gICAgMHgxLjA2OTE2NGUzZjVjZWU5NGQ4NjVmYjUyZTMxNmRmZjZicC01LAotICAgIC0weDEuODllYWNlcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgwCi0gICAgMHgxLmZmYmNhODgyMjhiMTYzMTg5YWI4ZDYzN2RiOTliZDJkcC0xLAotICAgIC0weDEuMDY5MDkzZWVjMGVkMDY2ZWM4M2RkMDM0NDk4ZWY4YmZwLTUsCi0gICAgMHgxLjlhNTQ5NnAwLAotICB9LAotICB7IC8vIEVudHJ5IDM4MQotICAgIC0weDEuZmZiY2E4ODIyOGIxNjMxODlhYjhkNjM3ZGI5OWJkMmRwLTEsCi0gICAgLTB4MS4wNjkwOTNlZWMwZWQwNjZlYzgzZGQwMzQ0OThlZjhiZnAtNSwKLSAgICAtMHgxLjlhNTQ5NnAwLAotICB9LAotICB7IC8vIEVudHJ5IDM4MgotICAgIDB4MS5mZGEyNTU5NzBjY2RkYjlkMTI3ZWNmNjM0MDNjMmJmN3AtMSwKLSAgICAtMHgxLjg5NGYyYmUyOTc5ZGQ5Y2VkODNjY2M2MGNmNDljZDQ0cC00LAotICAgIDB4MS5hYWJlNWVwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODMKLSAgICAtMHgxLmZkYTI1NTk3MGNjZGRiOWQxMjdlY2Y2MzQwM2MyYmY3cC0xLAotICAgIC0weDEuODk0ZjJiZTI5NzlkZDljZWQ4M2NjYzYwY2Y0OWNkNDRwLTQsCi0gICAgLTB4MS5hYWJlNWVwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODQKLSAgICAweDEuZjk2ZmU1YTBkYTI0NDQ4OWZiMmY0Yjk3YjNlNDg3NTdwLTEsCi0gICAgLTB4MS40NmRjMjc5NjczNTE5NWExNWM4MGU1YjcxOWUyZmM0MnAtMywKLSAgICAweDEuYmIyODI2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg1Ci0gICAgLTB4MS5mOTZmZTVhMGRhMjQ0NDg5ZmIyZjRiOTdiM2U0ODc1N3AtMSwKLSAgICAtMHgxLjQ2ZGMyNzk2NzM1MTk1YTE1YzgwZTViNzE5ZTJmYzQycC0zLAotICAgIC0weDEuYmIyODI2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg2Ci0gICAgMHgxLmYzMjljMmUyYzFhMzliYWQ4ZWNkY2I4Nzk2MWJhNDRhcC0xLAotICAgIC0weDEuYzdiOGUxNzhiN2U4YzAxZDlmMzIwNDY2Y2M3YTY4ZDRwLTMsCi0gICAgMHgxLmNiOTFlZXAwLAotICB9LAotICB7IC8vIEVudHJ5IDM4NwotICAgIC0weDEuZjMyOWMyZTJjMWEzOWJhZDhlY2RjYjg3OTYxYmE0NGFwLTEsCi0gICAgLTB4MS5jN2I4ZTE3OGI3ZThjMDFkOWYzMjA0NjZjYzdhNjhkNHAtMywKLSAgICAtMHgxLmNiOTFlZXAwLAotICB9LAotICB7IC8vIEVudHJ5IDM4OAotICAgIDB4MS5lYWQ2ODZmMmVjNTcyYzgzZWQzNGEwMWY3NjRkMTkzZXAtMSwKLSAgICAtMHgxLjIzNWIxYTZkNzY3ZTRiMzYyYzY0NTcxYWM5N2I0YTFjcC0yLAotICAgIDB4MS5kYmZiYjZwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODkKLSAgICAtMHgxLmVhZDY4NmYyZWM1NzJjODNlZDM0YTAxZjc2NGQxOTNlcC0xLAotICAgIC0weDEuMjM1YjFhNmQ3NjdlNGIzNjJjNjQ1NzFhYzk3YjRhMWNwLTIsCi0gICAgLTB4MS5kYmZiYjZwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTAKLSAgICAweDEuZTA3ZWYzYzkxYmQ1MDBhMGRlMjMwYWQ1NzMxNjMxNjNwLTEsCi0gICAgLTB4MS42MWE3NDVhNzdiN2U4M2MyZjhhMmY5YjA5MWU4OWFhYXAtMiwKLSAgICAweDEuZWM2NTdlcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkxCi0gICAgLTB4MS5lMDdlZjNjOTFiZDUwMGEwZGUyMzBhZDU3MzE2MzE2M3AtMSwKLSAgICAtMHgxLjYxYTc0NWE3N2I3ZTgzYzJmOGEyZjliMDkxZTg5YWFhcC0yLAotICAgIC0weDEuZWM2NTdlcDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkyCi0gICAgMHgxLmQ0MmRlYTg4MzVjODhhZGI5Y2RlMTczNDdmOTM0ZTI1cC0xLAotICAgIC0weDEuOWU3ZjY5OWU4YjlhYWY4ZWQ1MWM3MWM4ZjczYjBiNzRwLTIsCi0gICAgMHgxLmZjY2Y0NnAwLAotICB9LAotICB7IC8vIEVudHJ5IDM5MwotICAgIC0weDEuZDQyZGVhODgzNWM4OGFkYjljZGUxNzM0N2Y5MzRlMjVwLTEsCi0gICAgLTB4MS45ZTdmNjk5ZThiOWFhZjhlZDUxYzcxYzhmNzNiMGI3NHAtMiwKLSAgICAtMHgxLmZjY2Y0NnAwLAotICB9LAotICB7IC8vIEVudHJ5IDM5NAotICAgIDB4MS5jNWYwNWUzMmM4MGZiMGZlNjAzMDMzZWMwMjhhNGMzMnAtMSwKLSAgICAtMHgxLmQ5YTM4YmZhMzE5NWJhMWNhYTdmYjY5YmMxZDA0ZTQycC0yLAotICAgIDB4MS4wNjljODhwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTUKLSAgICAtMHgxLmM1ZjA1ZTMyYzgwZmIwZmU2MDMwMzNlYzAyOGE0YzMycC0xLAotICAgIC0weDEuZDlhMzhiZmEzMTk1YmExY2FhN2ZiNjliYzFkMDRlNDJwLTIsCi0gICAgLTB4MS4wNjljODhwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTYKLSAgICAweDEuYjVkNTRkMzczMmQzYjJlNzlkNDkwN2UxMTU0MDFkZGFwLTEsCi0gICAgLTB4MS4wOTZhYjNjNTVjOTFmMzZlMjM1OWVkMWM1YTgzNDJkZnAtMSwKLSAgICAweDEuMGVkMTZjcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk3Ci0gICAgLTB4MS5iNWQ1NGQzNzMyZDNiMmU3OWQ0OTA3ZTExNTQwMWRkYXAtMSwKLSAgICAtMHgxLjA5NmFiM2M1NWM5MWYzNmUyMzU5ZWQxYzVhODM0MmRmcC0xLAotICAgIC0weDEuMGVkMTZjcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk4Ci0gICAgMHgxLmEzZWRhNzQxNjFkMDZiODNlYzJjOGRjMzk2ZDgxM2I5cC0xLAotICAgIC0weDEuMjRlYzZjODIwNmU3NDQzMjJkOTlmNDdlOWU0MWJlY2VwLTEsCi0gICAgMHgxLjE3MDY1MHAxLAotICB9LAotICB7IC8vIEVudHJ5IDM5OQotICAgIC0weDEuYTNlZGE3NDE2MWQwNmI4M2VjMmM4ZGMzOTZkODEzYjlwLTEsCi0gICAgLTB4MS4yNGVjNmM4MjA2ZTc0NDMyMmQ5OWY0N2U5ZTQxYmVjZXAtMSwKLSAgICAtMHgxLjE3MDY1MHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQwMAotICAgIDB4MS45MDRjNDIxZWZjZTU4ZjRlODE3MGQzNmRjZGE4ZTAyY3AtMSwKLSAgICAtMHgxLjNmM2EwMDliODJiNWI4MjM0ZTEyOTZkZDczY2ZmNDlkcC0xLAotICAgIDB4MS4xZjNiMzRwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDEKLSAgICAtMHgxLjkwNGM0MjFlZmNlNThmNGU4MTcwZDM2ZGNkYThlMDJjcC0xLAotICAgIC0weDEuM2YzYTAwOWI4MmI1YjgyMzRlMTI5NmRkNzNjZmY0OWRwLTEsCi0gICAgLTB4MS4xZjNiMzRwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDIKLSAgICAweDEuN2IwNWM0NTA5Mzk0NGQ2YWZiMGM5MGQyZjljYjIxN2ZwLTEsCi0gICAgLTB4MS41ODM3YzRhMTg0Y2NmN2VkNTdjMTg5ZjJhZGRmMzJjNXAtMSwKLSAgICAweDEuMjc3MDE4cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAzCi0gICAgLTB4MS43YjA1YzQ1MDkzOTQ0ZDZhZmIwYzkwZDJmOWNiMjE3ZnAtMSwKLSAgICAtMHgxLjU4MzdjNGExODRjY2Y3ZWQ1N2MxODlmMmFkZGYzMmM1cC0xLAotICAgIC0weDEuMjc3MDE4cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA0Ci0gICAgMHgxLjY0MzA4ZjUwNmZmZGFmMTMyNmQxMGIzMzgwMjc4ZTk4cC0xLAotICAgIC0weDEuNmZjYjZlNjY4NWU3MmZiNDA3NGU3MGNkMzE2MmQzYmFwLTEsCi0gICAgMHgxLjJmYTRmY3AxLAotICB9LAotICB7IC8vIEVudHJ5IDQwNQotICAgIC0weDEuNjQzMDhmNTA2ZmZkYWYxMzI2ZDEwYjMzODAyNzhlOThwLTEsCi0gICAgLTB4MS42ZmNiNmU2Njg1ZTcyZmI0MDc0ZTcwY2QzMTYyZDNiYXAtMSwKLSAgICAtMHgxLjJmYTRmY3AxLAotICB9LAotICB7IC8vIEVudHJ5IDQwNgotICAgIDB4MS40YmU0YTgwNzZjMTM1YTQ4ZjNmMWExYWFhMzYyNDc1ZnAtMSwKLSAgICAtMHgxLjg1ZGMzMGE3OWYyNjc1NGFiMTM3MDMzOGVlN2JmZDExcC0xLAotICAgIDB4MS4zN2Q5ZTBwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDcKLSAgICAtMHgxLjRiZTRhODA3NmMxMzVhNDhmM2YxYTFhYWEzNjI0NzVmcC0xLAotICAgIC0weDEuODVkYzMwYTc5ZjI2NzU0YWIxMzcwMzM4ZWU3YmZkMTFwLTEsCi0gICAgLTB4MS4zN2Q5ZTBwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDgKLSAgICAweDEuMzIzYjlkODg4ZDRkYTc3YTYxMDg5MzczNWVlZWQxY2JwLTEsCi0gICAgLTB4MS45YTUyZDUyM2IxNTMyZTRlZDQ3N2UyN2RjNjA1MWMxMnAtMSwKLSAgICAweDEuNDAwZWM0cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA5Ci0gICAgLTB4MS4zMjNiOWQ4ODhkNGRhNzdhNjEwODkzNzM1ZWVlZDFjYnAtMSwKLSAgICAtMHgxLjlhNTJkNTIzYjE1MzJlNGVkNDc3ZTI3ZGM2MDUxYzEycC0xLAotICAgIC0weDEuNDAwZWM0cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDEwCi0gICAgMHgxLjE3NTA2ZTJkZmI2MDNkMzRiOWFmMzliMTJjMWRiNzM1cC0xLAotICAgIC0weDEuYWQxOWQ1MDY2NGFiZjBjMDE0MTEzN2QyY2E1MDlmMjFwLTEsCi0gICAgMHgxLjQ4NDNhOHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQxMQotICAgIC0weDEuMTc1MDZlMmRmYjYwM2QzNGI5YWYzOWIxMmMxZGI3MzVwLTEsCi0gICAgLTB4MS5hZDE5ZDUwNjY0YWJmMGMwMTQxMTM3ZDJjYTUwOWYyMXAtMSwKLSAgICAtMHgxLjQ4NDNhOHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQxMgotICAgIDB4MS5mNjdlZDY2NzM1MmQ0ODI3NDUwMDEzZjE1ZTMyMWJmYnAtMiwKLSAgICAtMHgxLmJlMWQ2ZjhkNTE3ZGI1YzJjZjdkZTBmYWYwODA4ZDMwcC0xLAotICAgIDB4MS41MDc4OGNwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTMKLSAgICAtMHgxLmY2N2VkNjY3MzUyZDQ4Mjc0NTAwMTNmMTVlMzIxYmZicC0yLAotICAgIC0weDEuYmUxZDZmOGQ1MTdkYjVjMmNmN2RlMGZhZjA4MDhkMzBwLTEsCi0gICAgLTB4MS41MDc4OGNwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTQKLSAgICAweDEuYmM0YzM1ZGE1MWUzNGI3NzZlNWUwNGRhNThmMjM0NDFwLTIsCi0gICAgLTB4MS5jZDRiYmVjZjdmMjcwNWQ0ZmQwMGRkNDYzNzgwZjQ1ZXAtMSwKLSAgICAweDEuNThhZDcwcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE1Ci0gICAgLTB4MS5iYzRjMzVkYTUxZTM0Yjc3NmU1ZTA0ZGE1OGYyMzQ0MXAtMiwKLSAgICAtMHgxLmNkNGJiZWNmN2YyNzA1ZDRmZDAwZGQ0NjM3ODBmNDVlcC0xLAotICAgIC0weDEuNThhZDcwcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE2Ci0gICAgMHgxLjgwNDYzMzZlNjg0MjdjZjc1NjA1NmQzZjRlZGJiNjYycC0yLAotICAgIC0weDEuZGE5NGNhOTE1ZGEzY2RkMWZmZjgzOWQ4NWVlYzM5ZTJwLTEsCi0gICAgMHgxLjYwZTI1NHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQxNwotICAgIC0weDEuODA0NjMzNmU2ODQyN2NmNzU2MDU2ZDNmNGVkYmI2NjJwLTIsCi0gICAgLTB4MS5kYTk0Y2E5MTVkYTNjZGQxZmZmODM5ZDg1ZWVjMzllMnAtMSwKLSAgICAtMHgxLjYwZTI1NHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQxOAotICAgIDB4MS40MmFiZjM4NzI5MDVlNjMyZjIwNGM0MWIyNGFmOTBiNnAtMiwKLSAgICAtMHgxLmU1ZWE5OTExNmIzOTM2MWFjOTI2ZGQ5ZmRjMjA4OWQxcC0xLAotICAgIDB4MS42OTE3MzhwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTkKLSAgICAtMHgxLjQyYWJmMzg3MjkwNWU2MzJmMjA0YzQxYjI0YWY5MGI2cC0yLAotICAgIC0weDEuZTVlYTk5MTE2YjM5MzYxYWM5MjZkZDlmZGMyMDg5ZDFwLTEsCi0gICAgLTB4MS42OTE3MzhwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjAKLSAgICAweDEuMDNiZTQzYzY5OWYzNTM2OTkwZGNmNWE2NjY1YWMyMzlwLTIsCi0gICAgLTB4MS5lZjQxM2RiYmRhMjg1OWZmYjBkMWFiODQzNDJmZDIzNXAtMSwKLSAgICAweDEuNzE0YzFjcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDIxCi0gICAgLTB4MS4wM2JlNDNjNjk5ZjM1MzY5OTBkY2Y1YTY2NjVhYzIzOXAtMiwKLSAgICAtMHgxLmVmNDEzZGJiZGEyODU5ZmZiMGQxYWI4NDM0MmZkMjM1cC0xLAotICAgIC0weDEuNzE0YzFjcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDIyCi0gICAgMHgxLjg3N2VhZGMyZmRmYzJmMGRiMWU4Yjc4Y2QzZmJmYmQycC0zLAotICAgIC0weDEuZjY4ZWU1YjViZjM1NmIxMDIzMDk0NGExOGU3MDkyNWNwLTEsCi0gICAgMHgxLjc5ODFwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjMKLSAgICAtMHgxLjg3N2VhZGMyZmRmYzJmMGRiMWU4Yjc4Y2QzZmJmYmQycC0zLAotICAgIC0weDEuZjY4ZWU1YjViZjM1NmIxMDIzMDk0NGExOGU3MDkyNWNwLTEsCi0gICAgLTB4MS43OTgxcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI0Ci0gICAgMHgxLjA1ZTRmZGY4NDY2MzJhODIwOGQ5MGRlNzJkM2E2ZGE4cC0zLAotICAgIC0weDEuZmJjYmUyMzI5NmZjNjFiOTZmMzgyZjM1ZWExNWM3NjhwLTEsCi0gICAgMHgxLjgxYjVlNHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQyNQotICAgIC0weDEuMDVlNGZkZjg0NjYzMmE4MjA4ZDkwZGU3MmQzYTZkYThwLTMsCi0gICAgLTB4MS5mYmNiZTIzMjk2ZmM2MWI5NmYzODJmMzVlYTE1Yzc2OHAtMSwKLSAgICAtMHgxLjgxYjVlNHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQyNgotICAgIDB4MS4wNjZmOWI2MzBiNzJkZmYxNjQ1MGU4OWFmZGY3ZTA0OHAtNCwKLSAgICAtMHgxLmZlZjJiMDg5NDMxOTdjZDNhOGJhODYxMDk1MjI3YzQ4cC0xLAotICAgIDB4MS44OWVhYzhwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjcKLSAgICAtMHgxLjA2NmY5YjYzMGI3MmRmZjE2NDUwZTg5YWZkZjdlMDQ4cC00LAotICAgIC0weDEuZmVmMmIwODk0MzE5N2NkM2E4YmE4NjEwOTUyMjdjNDhwLTEsCi0gICAgLTB4MS44OWVhYzhwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjgKLSAgICAweDEuMDNiZGYwYjc5Y2NmNzM5NTI5ZDU0ZDQyMjg2MTA0NmNwLTIsCi0gICAgMHgxLmVmNDE0ODlmYzJmZTgwMWE2ZmM4YWU3OTE0MzhlYjc4cC0xLAotICAgIC0weDEuODFiNWVlcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI5Ci0gICAgLTB4MS4wM2JkZjBiNzljY2Y3Mzk1MjlkNTRkNDIyODYxMDQ2Y3AtMiwKLSAgICAweDEuZWY0MTQ4OWZjMmZlODAxYTZmYzhhZTc5MTQzOGViNzhwLTEsCi0gICAgMHgxLjgxYjVlZXAyLAotICB9LAotICB7IC8vIEVudHJ5IDQzMAotICAgIDB4MS5mNjdlOGI5NWY1NDYwZWEzNjlhODAzODM3YjcyMWFiZHAtMiwKLSAgICAweDEuYmUxZDg0OWVjNjQ5Yjc5NzMyMGU5ODVkMGI4MmFlODVwLTEsCi0gICAgLTB4MS43MTRjMjZwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzEKLSAgICAtMHgxLmY2N2U4Yjk1ZjU0NjBlYTM2OWE4MDM4MzdiNzIxYWJkcC0yLAotICAgIDB4MS5iZTFkODQ5ZWM2NDliNzk3MzIwZTk4NWQwYjgyYWU4NXAtMSwKLSAgICAweDEuNzE0YzI2cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMyCi0gICAgMHgxLjY0MzA3MDc5MTc1MWRjMDYzNmQxODU0ZDJiZGJjNWQ0cC0xLAotICAgIDB4MS42ZmNiOGM0NGJkMzBkZDY2ODE0ODYwNTk2OWIxYzE2MXAtMSwKLSAgICAtMHgxLjYwZTI1ZXAyLAotICB9LAotICB7IC8vIEVudHJ5IDQzMwotICAgIC0weDEuNjQzMDcwNzkxNzUxZGMwNjM2ZDE4NTRkMmJkYmM1ZDRwLTEsCi0gICAgMHgxLjZmY2I4YzQ0YmQzMGRkNjY4MTQ4NjA1OTY5YjFjMTYxcC0xLAotICAgIDB4MS42MGUyNWVwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzQKLSAgICAweDEuYjVkNTM2ZjU5MTEzYTQzYWYzMGU4YzlkYjhhOTUxYTVwLTEsCi0gICAgMHgxLjA5NmFkODdjMzI2NjIyYzQyZGUzNGY5MjgxNGNmYTg0cC0xLAotICAgIC0weDEuNTA3ODk2cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM1Ci0gICAgLTB4MS5iNWQ1MzZmNTkxMTNhNDNhZjMwZThjOWRiOGE5NTFhNXAtMSwKLSAgICAweDEuMDk2YWQ4N2MzMjY2MjJjNDJkZTM0ZjkyODE0Y2ZhODRwLTEsCi0gICAgMHgxLjUwNzg5NnAyLAotICB9LAotICB7IC8vIEVudHJ5IDQzNgotICAgIDB4MS5lYWQ2Nzk5ODU1NDkxNDAzMTgzNDlmNTEyZGNhN2E2YnAtMSwKLSAgICAweDEuMjM1Yjc0NmEyYTJlZmYyYmY2NDBkZDhjMDRkMzVhNWJwLTIsCi0gICAgLTB4MS40MDBlY2VwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzcKLSAgICAtMHgxLmVhZDY3OTk4NTU0OTE0MDMxODM0OWY1MTJkY2E3YTZicC0xLAotICAgIDB4MS4yMzViNzQ2YTJhMmVmZjJiZjY0MGRkOGMwNGQzNWE1YnAtMiwKLSAgICAweDEuNDAwZWNlcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM4Ci0gICAgMHgxLmZmYmNhNzAxMGUwYjA0NTJmNTYwNzVjZmQ1OTgyODgwcC0xLAotICAgIDB4MS4wNjkzODI3YjQ2Y2VlM2I2NjFhYzE3MTE0YjVmZTBmYnAtNSwKLSAgICAtMHgxLjJmYTUwNnAyLAotICB9LAotICB7IC8vIEVudHJ5IDQzOQotICAgIC0weDEuZmZiY2E3MDEwZTBiMDQ1MmY1NjA3NWNmZDU5ODI4ODBwLTEsCi0gICAgMHgxLjA2OTM4MjdiNDZjZWUzYjY2MWFjMTcxMTRiNWZlMGZicC01LAotICAgIDB4MS4yZmE1MDZwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDAKLSAgICAweDEuZjMyOWNhNmJmYzc0MjVkODljMmI0YjlhZDczYWIxMDhwLTEsCi0gICAgLTB4MS5jN2I4NWQ2NjhlMmFiY2M0NjU0MmNhODUyN2YwYjgwMXAtMywKLSAgICAtMHgxLjFmM2IzZXAyLAotICB9LAotICB7IC8vIEVudHJ5IDQ0MQotICAgIC0weDEuZjMyOWNhNmJmYzc0MjVkODljMmI0YjlhZDczYWIxMDhwLTEsCi0gICAgLTB4MS5jN2I4NWQ2NjhlMmFiY2M0NjU0MmNhODUyN2YwYjgwMXAtMywKLSAgICAweDEuMWYzYjNlcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQyCi0gICAgMHgxLmM1ZjA2ZmI2OTQyN2FjMGYyZDY5NDI4ZDgyYjVlNjY5cC0xLAotICAgIC0weDEuZDlhMzQ4ZDRmNDM2M2JhNDU2MjExMGRiMDFlZTg0ZThwLTIsCi0gICAgLTB4MS4wZWQxNzZwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDMKLSAgICAtMHgxLmM1ZjA2ZmI2OTQyN2FjMGYyZDY5NDI4ZDgyYjVlNjY5cC0xLAotICAgIC0weDEuZDlhMzQ4ZDRmNDM2M2JhNDU2MjExMGRiMDFlZTg0ZThwLTIsCi0gICAgMHgxLjBlZDE3NnAyLAotICB9LAotICB7IC8vIEVudHJ5IDQ0NAotICAgIDB4MS43YjA1ZDg2NGVjOTgwMmFkYmM0YjU1NzdjMjMzODM2YXAtMSwKLSAgICAtMHgxLjU4MzdhZTg1NjljOTU4NDZlNjE2NGQ5NjM2NTQ2MTIwcC0xLAotICAgIC0weDEuZmNjZjVhcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ1Ci0gICAgLTB4MS43YjA1ZDg2NGVjOTgwMmFkYmM0YjU1NzdjMjMzODM2YXAtMSwKLSAgICAtMHgxLjU4MzdhZTg1NjljOTU4NDZlNjE2NGQ5NjM2NTQ2MTIwcC0xLAotICAgIDB4MS5mY2NmNWFwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDYKLSAgICAweDEuMTc1MDgwODE4NWE5OThiYmNlY2MzYTZhYzBjYjI5MDdwLTEsCi0gICAgLTB4MS5hZDE5YzkxODg4MzAwMGIwYjcwMmVjMDgwY2YwMTIyZXAtMSwKLSAgICAtMHgxLmRiZmJjOHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ0NwotICAgIC0weDEuMTc1MDgwODE4NWE5OThiYmNlY2MzYTZhYzBjYjI5MDdwLTEsCi0gICAgLTB4MS5hZDE5YzkxODg4MzAwMGIwYjcwMmVjMDgwY2YwMTIyZXAtMSwKLSAgICAweDEuZGJmYmM4cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ4Ci0gICAgMHgxLjQyYWMwZGQ5NDk1MjExODE2YmYwNGNhNTNiY2U0YmVhcC0yLAotICAgIC0weDEuZTVlYTk0YjJjZjA3YWRkM2QwZDk1YWIzYTMwYWQ0YWJwLTEsCi0gICAgLTB4MS5iYjI4MzZwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDkKLSAgICAtMHgxLjQyYWMwZGQ5NDk1MjExODE2YmYwNGNhNTNiY2U0YmVhcC0yLAotICAgIC0weDEuZTVlYTk0YjJjZjA3YWRkM2QwZDk1YWIzYTMwYWQ0YWJwLTEsCi0gICAgMHgxLmJiMjgzNnAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ1MAotICAgIDB4MS4wNjZmY2EzOWE3MGI1MmQwNmYyY2Q3ZWFiNjljMzFmMnAtNCwKLSAgICAtMHgxLmZlZjJiMDI5MDg1NTlmOTJkZTg5MmQyNDBhMmIwYjQ5cC0xLAotICAgIC0weDEuOWE1NGE0cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUxCi0gICAgLTB4MS4wNjZmY2EzOWE3MGI1MmQwNmYyY2Q3ZWFiNjljMzFmMnAtNCwKLSAgICAtMHgxLmZlZjJiMDI5MDg1NTlmOTJkZTg5MmQyNDBhMmIwYjQ5cC0xLAotICAgIDB4MS45YTU0YTRwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTIKLSAgICAtMHgxLjg3N2Q5MzEyOThlNmZiYzY1NGYwNjU1MzZjZmYyYjU0cC0zLAotICAgIC0weDEuZjY4ZWYzNzkyZTU5MmMzY2VmYmNlMWQ1ZGVkNjRhOTJwLTEsCi0gICAgLTB4MS43OTgxMTJwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTMKLSAgICAweDEuODc3ZDkzMTI5OGU2ZmJjNjU0ZjA2NTUzNmNmZjJiNTRwLTMsCi0gICAgLTB4MS5mNjhlZjM3OTJlNTkyYzNjZWZiY2UxZDVkZWQ2NGE5MnAtMSwKLSAgICAweDEuNzk4MTEycDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU0Ci0gICAgLTB4MS5iYzRiYzI4NzVlYjZkMzhlZGEzYjQ5Y2IyMzIwYjU2MXAtMiwKLSAgICAtMHgxLmNkNGJkYTk0M2VlYTEzNjMwZjhlNTA4Zjg3NDRmMmYycC0xLAotICAgIC0weDEuNThhZDgwcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU1Ci0gICAgMHgxLmJjNGJjMjg3NWViNmQzOGVkYTNiNDljYjIzMjBiNTYxcC0yLAotICAgIC0weDEuY2Q0YmRhOTQzZWVhMTM2MzBmOGU1MDhmODc0NGYyZjJwLTEsCi0gICAgMHgxLjU4YWQ4MHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ1NgotICAgIC0weDEuNGJlNDdkNjM1NGM0Y2VkNTM3ODBiMWI1MTlhY2RlYzJwLTEsCi0gICAgLTB4MS44NWRjNTRmNDlmMzI0YmRmYzcxZDU3NDk0ODNiMzMxOHAtMSwKLSAgICAtMHgxLjM3ZDllZXAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ1NwotICAgIDB4MS40YmU0N2Q2MzU0YzRjZWQ1Mzc4MGIxYjUxOWFjZGVjMnAtMSwKLSAgICAtMHgxLjg1ZGM1NGY0OWYzMjRiZGZjNzFkNTc0OTQ4M2IzMzE4cC0xLAotICAgIDB4MS4zN2Q5ZWVwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTgKLSAgICAtMHgxLmEzZWQ4YmNiMzVjYmNmOGM2MDg5ZjgyYTkxYzMxZDVicC0xLAotICAgIC0weDEuMjRlYzkzZTA0ZDRiZGI1NGUyMGJlYWYzODM1MTlhZjhwLTEsCi0gICAgLTB4MS4xNzA2NWNwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTkKLSAgICAweDEuYTNlZDhiY2IzNWNiY2Y4YzYwODlmODJhOTFjMzFkNWJwLTEsCi0gICAgLTB4MS4yNGVjOTNlMDRkNGJkYjU0ZTIwYmVhZjM4MzUxOWFmOHAtMSwKLSAgICAweDEuMTcwNjVjcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDYwCi0gICAgLTB4MS5lMDdlZTQ5NmVhMTA5NjU0YzQyZTE3MWZkYzQ1MzdjNHAtMSwKLSAgICAtMHgxLjYxYTc5ODNkNGMxNmM0NTFiNjhiZjJmNWI3MGYzYjZhcC0yLAotICAgIC0weDEuZWM2NTk0cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDYxCi0gICAgMHgxLmUwN2VlNDk2ZWExMDk2NTRjNDJlMTcxZmRjNDUzN2M0cC0xLAotICAgIC0weDEuNjFhNzk4M2Q0YzE2YzQ1MWI2OGJmMmY1YjcwZjNiNmFwLTIsCi0gICAgMHgxLmVjNjU5NHAwLAotICB9LAotICB7IC8vIEVudHJ5IDQ2MgotICAgIC0weDEuZmRhMjUyMjIxOTY4OWQwZTgwNjlkOTBmNWM5NjliOTJwLTEsCi0gICAgLTB4MS44OTUwNGE4ZGU2YzllY2FjNjYzZTY3NTgzY2FiNDdlOHAtNCwKLSAgICAtMHgxLmFhYmU3MHAwLAotICB9LAotICB7IC8vIEVudHJ5IDQ2MwotICAgIDB4MS5mZGEyNTIyMjE5Njg5ZDBlODA2OWQ5MGY1Yzk2OWI5MnAtMSwKLSAgICAtMHgxLjg5NTA0YThkZTZjOWVjYWM2NjNlNjc1ODNjYWI0N2U4cC00LAotICAgIDB4MS5hYWJlNzBwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjQKLSAgICAtMHgxLmY5NmZlODAyZmU1NzAzNzJkMGZjYjZlOTM0YjQzMDYxcC0xLAotICAgIDB4MS40NmRiZWM5ZWEzYTVmMDhiYTczYWE2OWU3ZTIyZGUxY3AtMywKLSAgICAtMHgxLjY5MTc0Y3AwLAotICB9LAotICB7IC8vIEVudHJ5IDQ2NQotICAgIDB4MS5mOTZmZTgwMmZlNTcwMzcyZDBmY2I2ZTkzNGI0MzA2MXAtMSwKLSAgICAweDEuNDZkYmVjOWVhM2E1ZjA4YmE3M2FhNjllN2UyMmRlMWNwLTMsCi0gICAgMHgxLjY5MTc0Y3AwLAotICB9LAotICB7IC8vIEVudHJ5IDQ2NgotICAgIC0weDEuZDQyZGVkNTZhZTg4YTZlMWNmMjcwYWYyN2U2ZjE4MDRwLTEsCi0gICAgMHgxLjllN2Y1Y2YwNzVkMWVjNGVmNjljOWM2N2I2MmMyN2NicC0yLAotICAgIC0weDEuMjc3MDI4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY3Ci0gICAgMHgxLmQ0MmRlZDU2YWU4OGE2ZTFjZjI3MGFmMjdlNmYxODA0cC0xLAotICAgIDB4MS45ZTdmNWNmMDc1ZDFlYzRlZjY5YzljNjdiNjJjMjdjYnAtMiwKLSAgICAweDEuMjc3MDI4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY4Ci0gICAgLTB4MS45MDRjNDUzMjZkNmRkZTIyNDM4MWQxZDU5MGFkYTQxY3AtMSwKLSAgICAweDEuM2YzOWZjYzAxNzY1M2QyNjM2ODM3YTU1ZmRmNmQyZDRwLTEsCi0gICAgLTB4MS5jYjkyMGFwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY5Ci0gICAgMHgxLjkwNGM0NTMyNmQ2ZGRlMjI0MzgxZDFkNTkwYWRhNDFjcC0xLAotICAgIDB4MS4zZjM5ZmNjMDE3NjUzZDI2MzY4MzdhNTVmZGY2ZDJkNHAtMSwKLSAgICAweDEuY2I5MjBhcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDQ3MAotICAgIC0weDEuMzIzYjljYWRiYjE5ZTc1YTQ0NDgzZmI2NGFkOGRkZjZwLTEsCi0gICAgMHgxLjlhNTJkNWM3MDBkYWEzZGM4Y2Y4ZjVhNzFmMmRmMjg5cC0xLAotICAgIC0weDEuNDg0M2M0cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDQ3MQotICAgIDB4MS4zMjNiOWNhZGJiMTllNzVhNDQ0ODNmYjY0YWQ4ZGRmNnAtMSwKLSAgICAweDEuOWE1MmQ1YzcwMGRhYTNkYzhjZjhmNWE3MWYyZGYyODlwLTEsCi0gICAgMHgxLjQ4NDNjNHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzIKLSAgICAtMHgxLjgwNDYyNjU0YmRlNzY2ZmFmNDdmMzE0MGUyOTA5OTZkcC0yLAotICAgIDB4MS5kYTk0Y2QzODNkZDdhM2I5MWEyZmM4OGZmOTA1YTZhMHAtMSwKLSAgICAtMHgxLjg5ZWFmY3AtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzMKLSAgICAweDEuODA0NjI2NTRiZGU3NjZmYWY0N2YzMTQwZTI5MDk5NmRwLTIsCi0gICAgMHgxLmRhOTRjZDM4M2RkN2EzYjkxYTJmYzg4ZmY5MDVhNmEwcC0xLAotICAgIDB4MS44OWVhZmNwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDc0Ci0gICAgLTB4MS4wNWU0Y2EyMWYzODZhODJiYzJlNGVmY2RlYmIxOTYyYnAtMywKLSAgICAweDEuZmJjYmUzZGU1OGU2NmMzMjgzYmM4MTBkMTZjNDU4MzNwLTEsCi0gICAgLTB4MS4wNjljZTBwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDc1Ci0gICAgMHgxLjA1ZTRjYTIxZjM4NmE4MmJjMmU0ZWZjZGViYjE5NjJicC0zLAotICAgIDB4MS5mYmNiZTNkZTU4ZTY2YzMyODNiYzgxMGQxNmM0NTgzM3AtMSwKLSAgICAweDEuMDY5Y2UwcC0zLAotICB9LAotICB7IC8vIEVudHJ5IDQ3NgotICAgIDB4MS4wNWU0MjM4MzBiZTAxZjlmZTNjNTdkMDY4NjdlMDA1NnAtMywKLSAgICAweDEuZmJjYmU5M2Q0ODU2M2Q1MWI2ZTlkNmVmZGI2MjQ5NWNwLTEsCi0gICAgMHgxLjA2OWMzOHAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzcKLSAgICAtMHgxLjA1ZTQyMzgzMGJlMDFmOWZlM2M1N2QwNjg2N2UwMDU2cC0zLAotICAgIDB4MS5mYmNiZTkzZDQ4NTYzZDUxYjZlOWQ2ZWZkYjYyNDk1Y3AtMSwKLSAgICAtMHgxLjA2OWMzOHAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzgKLSAgICAweDEuODA0NWQ4Nzg1MmYxMzA3ZmVhNmRjNzUxYzRkMTU5OTJwLTIsCi0gICAgMHgxLmRhOTRkY2ZiMWNkMTU4NTNjZTg0OGZmYjAyNjRhZDA4cC0xLAotICAgIDB4MS44OWVhYThwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDc5Ci0gICAgLTB4MS44MDQ1ZDg3ODUyZjEzMDdmZWE2ZGM3NTFjNGQxNTk5MnAtMiwKLSAgICAweDEuZGE5NGRjZmIxY2QxNTg1M2NlODQ4ZmZiMDI2NGFkMDhwLTEsCi0gICAgLTB4MS44OWVhYThwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDgwCi0gICAgMHgxLjMyM2I3YjA0ZWU4OGNmZjk4YjJhMTYyMGUxZjYxYTAxcC0xLAotICAgIDB4MS45YTUyZWVlNWUzNTM3N2Q1NTRhY2U4ODFiZGM0NzI1YnAtMSwKLSAgICAweDEuNDg0MzlhcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDQ4MQotICAgIC0weDEuMzIzYjdiMDRlZTg4Y2ZmOThiMmExNjIwZTFmNjFhMDFwLTEsCi0gICAgMHgxLjlhNTJlZWU1ZTM1Mzc3ZDU1NGFjZTg4MWJkYzQ3MjVicC0xLAotICAgIC0weDEuNDg0MzlhcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDQ4MgotICAgIDB4MS45MDRjMmIwMmFhNTk1MjhjZTA0NGJmMjIxM2M5Njg1OXAtMSwKLSAgICAweDEuM2YzYTFkOTY1N2ZmNmFhNDk4YzQ2ZjZmYWFmMDNiOTBwLTEsCi0gICAgMHgxLmNiOTFlMHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODMKLSAgICAtMHgxLjkwNGMyYjAyYWE1OTUyOGNlMDQ0YmYyMjEzYzk2ODU5cC0xLAotICAgIDB4MS4zZjNhMWQ5NjU3ZmY2YWE0OThjNDZmNmZhYWYwM2I5MHAtMSwKLSAgICAtMHgxLmNiOTFlMHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODQKLSAgICAweDEuZDQyZGRkMjViMzc5N2U2YTY3OWY3NmUwNWU2YzNlMDhwLTEsCi0gICAgMHgxLjllN2ZhNjE3YTFhM2E0MDBhN2Y1OWFhODc5MDg4ZTMxcC0yLAotICAgIDB4MS4yNzcwMTRwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODUKLSAgICAtMHgxLmQ0MmRkZDI1YjM3OTdlNmE2NzlmNzZlMDVlNmMzZTA4cC0xLAotICAgIDB4MS45ZTdmYTYxN2ExYTNhNDAwYTdmNTlhYTg3OTA4OGUzMXAtMiwKLSAgICAtMHgxLjI3NzAxNHAwLAotICB9LAotICB7IC8vIEVudHJ5IDQ4NgotICAgIDB4MS5mOTZmZTFhMGIxMmQwYWQ0ZmE4YzgyZDhhZjk4OWM1YXAtMSwKLSAgICAweDEuNDZkYzhhOTE5YjI3ODQwY2RhNmUxOGEwNzlkYTQ1OWNwLTMsCi0gICAgMHgxLjY5MTczOHAwLAotICB9LAotICB7IC8vIEVudHJ5IDQ4NwotICAgIC0weDEuZjk2ZmUxYTBiMTJkMGFkNGZhOGM4MmQ4YWY5ODljNWFwLTEsCi0gICAgMHgxLjQ2ZGM4YTkxOWIyNzg0MGNkYTZlMThhMDc5ZGE0NTljcC0zLAotICAgIC0weDEuNjkxNzM4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDg4Ci0gICAgMHgxLmZkYTI1NWY5NjA5NGQ4ZmU0ZTg1OWM0Y2YwZGQ2OGE1cC0xLAotICAgIC0weDEuODk0ZjBjMDg3MjQxNTY2M2I3ZjllNGU0ODAxZGVhZjBwLTQsCi0gICAgMHgxLmFhYmU1Y3AwLAotICB9LAotICB7IC8vIEVudHJ5IDQ4OQotICAgIC0weDEuZmRhMjU1Zjk2MDk0ZDhmZTRlODU5YzRjZjBkZDY4YTVwLTEsCi0gICAgLTB4MS44OTRmMGMwODcyNDE1NjYzYjdmOWU0ZTQ4MDFkZWFmMHAtNCwKLSAgICAtMHgxLmFhYmU1Y3AwLAotICB9LAotICB7IC8vIEVudHJ5IDQ5MAotICAgIDB4MS5lMDdlZjI2Nzc0OGI5ODI3NzhmOGQ1MGQyOTgxYmIzYXAtMSwKLSAgICAtMHgxLjYxYTc0ZDI5Nzc0YWU0ZTNiYzU1MzNhMmVhMDhhMTRhcC0yLAotICAgIDB4MS5lYzY1ODBwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTEKLSAgICAtMHgxLmUwN2VmMjY3NzQ4Yjk4Mjc3OGY4ZDUwZDI5ODFiYjNhcC0xLAotICAgIC0weDEuNjFhNzRkMjk3NzRhZTRlM2JjNTUzM2EyZWEwOGExNGFwLTIsCi0gICAgLTB4MS5lYzY1ODBwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTIKLSAgICAweDEuYTNlZGEyYWRiMDExNDNmYjIxNDUzYjIwYmQxNzQ4ZmVwLTEsCi0gICAgLTB4MS4yNGVjNzMxMWJkN2IyMjU1ZjliODkwYjNmZjU4OTlmNHAtMSwKLSAgICAweDEuMTcwNjUycDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDkzCi0gICAgLTB4MS5hM2VkYTJhZGIwMTE0M2ZiMjE0NTNiMjBiZDE3NDhmZXAtMSwKLSAgICAtMHgxLjI0ZWM3MzExYmQ3YjIyNTVmOWI4OTBiM2ZmNTg5OWY0cC0xLAotICAgIC0weDEuMTcwNjUycDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk0Ci0gICAgMHgxLjRiZTQ5YmQ4OGE2NGEwYmI0MTRkZGFjYWM0ZmE4ZGU5cC0xLAotICAgIC0weDEuODVkYzNiMDZjNDM1ZjUyNGM4NzNkOWI1ZWJhM2RlZjhwLTEsCi0gICAgMHgxLjM3ZDllNHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ5NQotICAgIC0weDEuNGJlNDliZDg4YTY0YTBiYjQxNGRkYWNhYzRmYThkZTlwLTEsCi0gICAgLTB4MS44NWRjM2IwNmM0MzVmNTI0Yzg3M2Q5YjVlYmEzZGVmOHAtMSwKLSAgICAtMHgxLjM3ZDllNHAxLAotICB9LAotICB7IC8vIEVudHJ5IDQ5NgotICAgIDB4MS5iYzRjMGE5YjM3ODJlMjIwYWU1NTc4NjM2OWNjZjE5MHAtMiwKLSAgICAtMHgxLmNkNGJjOTM5NDdlODY2NzFhYzdmMGVhY2Q5NTIxMzc3cC0xLAotICAgIDB4MS41OGFkNzZwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTcKLSAgICAtMHgxLmJjNGMwYTliMzc4MmUyMjBhZTU1Nzg2MzY5Y2NmMTkwcC0yLAotICAgIC0weDEuY2Q0YmM5Mzk0N2U4NjY3MWFjN2YwZWFjZDk1MjEzNzdwLTEsCi0gICAgLTB4MS41OGFkNzZwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTgKLSAgICAweDEuODc3ZTMwMWY0M2NhZmZmZTY2NDRhODk1OGYxMDg3MjlwLTMsCi0gICAgLTB4MS5mNjhlZWJkM2I4ZjEyZjk0MzNlNmQ3MjI0OTg5YzEwZXAtMSwKLSAgICAweDEuNzk4MTA4cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk5Ci0gICAgLTB4MS44NzdlMzAxZjQzY2FmZmZlNjY0NGE4OTU4ZjEwODcyOXAtMywKLSAgICAtMHgxLmY2OGVlYmQzYjhmMTJmOTQzM2U2ZDcyMjQ5ODljMTBlcC0xLAotICAgIC0weDEuNzk4MTA4cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTAwCi0gICAgLTB4MS4wNjZlOGFlMWY4MjRhNjk4MTdlNmE4MDZlNjMxN2UyOHAtNCwKLSAgICAtMHgxLmZlZjJiMmI5MWU0MDAyMWEyZmVlNzRmYzYxODEyMTU3cC0xLAotICAgIDB4MS45YTU0OWFwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDEKLSAgICAweDEuMDY2ZThhZTFmODI0YTY5ODE3ZTZhODA2ZTYzMTdlMjhwLTQsCi0gICAgLTB4MS5mZWYyYjJiOTFlNDAwMjFhMmZlZTc0ZmM2MTgxMjE1N3AtMSwKLSAgICAtMHgxLjlhNTQ5YXAxLAotICB9LAotICB7IC8vIEVudHJ5IDUwMgotICAgIC0weDEuNDJhYmMxZWNhMTFhMGFkMTJjYTZlZWZmMTk3MzE4YWFwLTIsCi0gICAgLTB4MS5lNWVhYTE0ZDg2MTY4YjY5OTE4YzIyZjM3MTZhNjdlYXAtMSwKLSAgICAweDEuYmIyODJjcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTAzCi0gICAgMHgxLjQyYWJjMWVjYTExYTBhZDEyY2E2ZWVmZjE5NzMxOGFhcC0yLAotICAgIC0weDEuZTVlYWExNGQ4NjE2OGI2OTkxOGMyMmYzNzE2YTY3ZWFwLTEsCi0gICAgLTB4MS5iYjI4MmNwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDQKLSAgICAtMHgxLjE3NTA1ZWZiODExOTc3M2M2NDc0NjhiZTFkZmVlNDVlcC0xLAotICAgIC0weDEuYWQxOWRlZWFkMGVhZTJmNzJkMDQxNjVlMDllNGE0M2RwLTEsCi0gICAgMHgxLmRiZmJiZXAxLAotICB9LAotICB7IC8vIEVudHJ5IDUwNQotICAgIDB4MS4xNzUwNWVmYjgxMTk3NzNjNjQ3NDY4YmUxZGZlZTQ1ZXAtMSwKLSAgICAtMHgxLmFkMTlkZWVhZDBlYWUyZjcyZDA0MTY1ZTA5ZTRhNDNkcC0xLAotICAgIC0weDEuZGJmYmJlcDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA2Ci0gICAgLTB4MS43YjA1YmQ4MDkxY2Q3OWRmZjM1OWM4NDEyYjBkZTFhOXAtMSwKLSAgICAtMHgxLjU4MzdjYzIxZGRhNDRmM2FiN2ZkOTZmNTdjMDE0ZTE5cC0xLAotICAgIDB4MS5mY2NmNTBwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDcKLSAgICAweDEuN2IwNWJkODA5MWNkNzlkZmYzNTljODQxMmIwZGUxYTlwLTEsCi0gICAgLTB4MS41ODM3Y2MyMWRkYTQ0ZjNhYjdmZDk2ZjU3YzAxNGUxOXAtMSwKLSAgICAtMHgxLmZjY2Y1MHAxLAotICB9LAotICB7IC8vIEVudHJ5IDUwOAotICAgIC0weDEuYzVmMDU5ODJlYWJmMDIyNzQ4OTYwOTYxNjY2ZDU0MGRwLTEsCi0gICAgLTB4MS5kOWEzOWRmMjA3MTM5Zjk5ZWJlOWI1NmRhZmIyMzRiN3AtMiwKLSAgICAweDEuMGVkMTcwcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA5Ci0gICAgMHgxLmM1ZjA1OTgyZWFiZjAyMjc0ODk2MDk2MTY2NmQ1NDBkcC0xLAotICAgIC0weDEuZDlhMzlkZjIwNzEzOWY5OWViZTliNTZkYWZiMjM0YjdwLTIsCi0gICAgLTB4MS4wZWQxNzBwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTAKLSAgICAtMHgxLmYzMjliZmJkYTgxMjJmODNlM2ExZWEwMjQyZWI3NmFhcC0xLAotICAgIC0weDEuYzdiOTE4OTYzODEyOGJjMGFlMzNmZGYyNzI5Y2M5ODdwLTMsCi0gICAgMHgxLjFmM2IzOHAyLAotICB9LAotICB7IC8vIEVudHJ5IDUxMQotICAgIDB4MS5mMzI5YmZiZGE4MTIyZjgzZTNhMWVhMDI0MmViNzZhYXAtMSwKLSAgICAtMHgxLmM3YjkxODk2MzgxMjhiYzBhZTMzZmRmMjcyOWNjOTg3cC0zLAotICAgIC0weDEuMWYzYjM4cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTEyCi0gICAgLTB4MS5mZmJjYTg4YWU5MGYwOTAwYjZkM2FkODllZGRkMmM4MHAtMSwKLSAgICAweDEuMDY5MDgyZTA0YjI1ZTlkMmVhOWUyNjNiNTBkMDhiMzRwLTUsCi0gICAgMHgxLjJmYTVwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTMKLSAgICAweDEuZmZiY2E4OGFlOTBmMDkwMGI2ZDNhZDg5ZWRkZDJjODBwLTEsCi0gICAgMHgxLjA2OTA4MmUwNGIyNWU5ZDJlYTllMjYzYjUwZDA4YjM0cC01LAotICAgIC0weDEuMmZhNXAyLAotICB9LAotICB7IC8vIEVudHJ5IDUxNAotICAgIC0weDEuZWFkNjg3NDA5Yzk1ZGNhZjYxYWY5ODUxMzUxN2Y1MDdwLTEsCi0gICAgMHgxLjIzNWIxODYxZjIxYWE4NmRjZTI1OWU0ZTViNGVmMzk1cC0yLAotICAgIDB4MS40MDBlYzhwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTUKLSAgICAweDEuZWFkNjg3NDA5Yzk1ZGNhZjYxYWY5ODUxMzUxN2Y1MDdwLTEsCi0gICAgMHgxLjIzNWIxODYxZjIxYWE4NmRjZTI1OWU0ZTViNGVmMzk1cC0yLAotICAgIC0weDEuNDAwZWM4cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTE2Ci0gICAgLTB4MS5iNWQ1NGZkNzkzNzJiOTBkNWQ0YzdhY2Y3YWRhZWQ0MnAtMSwKLSAgICAweDEuMDk2YWFmNzAzNDE0ODUwNjJmNDQzYzgwYTkwYTNiZTNwLTEsCi0gICAgMHgxLjUwNzg5MHAyLAotICB9LAotICB7IC8vIEVudHJ5IDUxNwotICAgIDB4MS5iNWQ1NGZkNzkzNzJiOTBkNWQ0YzdhY2Y3YWRhZWQ0MnAtMSwKLSAgICAweDEuMDk2YWFmNzAzNDE0ODUwNjJmNDQzYzgwYTkwYTNiZTNwLTEsCi0gICAgLTB4MS41MDc4OTBwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTgKLSAgICAtMHgxLjY0MzA5MmY0MmFlNzk3Mzc1NTMxNDIwYzAwNWNhMmNmcC0xLAotICAgIDB4MS42ZmNiNmFlMDMxMDdiZTQ1OGQwNzM2MTM3MWVmYWJiNHAtMSwKLSAgICAweDEuNjBlMjU4cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTE5Ci0gICAgMHgxLjY0MzA5MmY0MmFlNzk3Mzc1NTMxNDIwYzAwNWNhMmNmcC0xLAotICAgIDB4MS42ZmNiNmFlMDMxMDdiZTQ1OGQwNzM2MTM3MWVmYWJiNHAtMSwKLSAgICAtMHgxLjYwZTI1OHAyLAotICB9LAotICB7IC8vIEVudHJ5IDUyMAotICAgIC0weDEuZjY3ZWRmM2I3YmVlODU1NGQ1NGQ4NGVhODNmNmNiMjFwLTIsCi0gICAgMHgxLmJlMWQ2ZDEwZDVjOGNlZWI4YmY5YWViN2E5ZjY5MGI5cC0xLAotICAgIDB4MS43MTRjMjBwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjEKLSAgICAweDEuZjY3ZWRmM2I3YmVlODU1NGQ1NGQ4NGVhODNmNmNiMjFwLTIsCi0gICAgMHgxLmJlMWQ2ZDEwZDVjOGNlZWI4YmY5YWViN2E5ZjY5MGI5cC0xLAotICAgIC0weDEuNzE0YzIwcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIyCi0gICAgLTB4MS4wM2JlNGQ5M2Q5NDkzMjUzNDBiMmY0NjQyMDE1NDVhN3AtMiwKLSAgICAweDEuZWY0MTNjNzJkOTg4YmI1MzkzNzk3NWU0ZmQ0ZmNjN2FwLTEsCi0gICAgMHgxLjgxYjVlOHAyLAotICB9LAotICB7IC8vIEVudHJ5IDUyMwotICAgIDB4MS4wM2JlNGQ5M2Q5NDkzMjUzNDBiMmY0NjQyMDE1NDVhN3AtMiwKLSAgICAweDEuZWY0MTNjNzJkOTg4YmI1MzkzNzk3NWU0ZmQ0ZmNjN2FwLTEsCi0gICAgLTB4MS44MWI1ZThwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjQKLSAgICAweDEuZWZiMjZjZmEyMGYyMDk4ZmY3ZTllNDJmMDI2MGViMDFwLTUsCi0gICAgMHgxLmZmMGZkMmNiNWE5MjI4Y2ZhMWUwMTYwNWQwNjI2Yzg0cC0xLAotICAgIDB4MS5lZmZmZmVwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI1Ci0gICAgLTB4MS5lZmIyNmNmYTIwZjIwOThmZjdlOWU0MmYwMjYwZWIwMXAtNSwKLSAgICAweDEuZmYwZmQyY2I1YTkyMjhjZmExZTAxNjA1ZDA2MjZjODRwLTEsCi0gICAgLTB4MS5lZmZmZmVwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI2Ci0gICAgMHgxLmVmYjI2ZWY5MzBjNGQzZjJiMGRiZTE5MzFiYTVhZTY0cC01LAotICAgIDB4MS5mZjBmZDJjOTZhZGZiYWQ1ZjkwNGE3MWIyZDIxMGEyYXAtMSwKLSAgICAweDEuZjBwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI3Ci0gICAgLTB4MS5lZmIyNmVmOTMwYzRkM2YyYjBkYmUxOTMxYmE1YWU2NHAtNSwKLSAgICAweDEuZmYwZmQyYzk2YWRmYmFkNWY5MDRhNzFiMmQyMTBhMmFwLTEsCi0gICAgLTB4MS5mMHAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjgKLSAgICAweDEuZWZiMjcwZjg0MDk3OWM2NWI3NWVlNWM2NzAxNmE4NjZwLTUsCi0gICAgMHgxLmZmMGZkMmM3N2IyZDRhZGQ0MDU2NmVjNWFhMjRmYzZlcC0xLAotICAgIDB4MS5mMDAwMDJwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI5Ci0gICAgLTB4MS5lZmIyNzBmODQwOTc5YzY1Yjc1ZWU1YzY3MDE2YTg2NnAtNSwKLSAgICAweDEuZmYwZmQyYzc3YjJkNGFkZDQwNTY2ZWM1YWEyNGZjNmVwLTEsCi0gICAgLTB4MS5mMDAwMDJwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMwCi0gICAgMHgxLmY2YmFhODE2ZmNlNWVhNWE2MGQ4YzlmZDJhMjg5MzgwcC00LAotICAgIDB4MS5mYzIxMDA1ZDIxNmE4OWRlNTViMTkyMDk2ZmM2YjdiYXAtMSwKLSAgICAweDEuZjdmZmZlcC00LAotICB9LAotICB7IC8vIEVudHJ5IDUzMQotICAgIC0weDEuZjZiYWE4MTZmY2U1ZWE1YTYwZDhjOWZkMmEyODkzODBwLTQsCi0gICAgMHgxLmZjMjEwMDVkMjE2YTg5ZGU1NWIxOTIwOTZmYzZiN2JhcC0xLAotICAgIC0weDEuZjdmZmZlcC00LAotICB9LAotICB7IC8vIEVudHJ5IDUzMgotICAgIDB4MS5mNmJhYWExMzFkZTY0MzhlNTYxMTI3OTg2NGZlNzY2M3AtNCwKLSAgICAweDEuZmMyMTAwNTU0NjdmZTU4YTIwMTkzMzk5YjNiYzBkZDJwLTEsCi0gICAgMHgxLmY4cC00LAotICB9LAotICB7IC8vIEVudHJ5IDUzMwotICAgIC0weDEuZjZiYWFhMTMxZGU2NDM4ZTU2MTEyNzk4NjRmZTc2NjNwLTQsCi0gICAgMHgxLmZjMjEwMDU1NDY3ZmU1OGEyMDE5MzM5OWIzYmMwZGQycC0xLAotICAgIC0weDEuZjhwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM0Ci0gICAgMHgxLmY2YmFhYzBmM2VlNjk0ZTc2MGExMzhiYzA2YzhiZTNkcC00LAotICAgIDB4MS5mYzIxMDA0ZDZiOTUzOTQ1NjY3ZjgwMGZmODFkZTBlYnAtMSwKLSAgICAweDEuZjgwMDAycC00LAotICB9LAotICB7IC8vIEVudHJ5IDUzNQotICAgIC0weDEuZjZiYWFjMGYzZWU2OTRlNzYwYTEzOGJjMDZjOGJlM2RwLTQsCi0gICAgMHgxLmZjMjEwMDRkNmI5NTM5NDU2NjdmODAwZmY4MWRlMGVicC0xLAotICAgIC0weDEuZjgwMDAycC00LAotICB9LAotICB7IC8vIEVudHJ5IDUzNgotICAgIDB4MS40YThjMzk1NTUyZmI0MzJhZjMxNzgwZTg4M2M5OGY3MXAtMywKLSAgICAweDEuZjk0OTg0YzZmZGYxYmU2MTY4NTA5ZmYxZTM1ZjYyZGVwLTEsCi0gICAgMHgxLjRiZmZmZXAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzcKLSAgICAtMHgxLjRhOGMzOTU1NTJmYjQzMmFmMzE3ODBlODgzYzk4ZjcxcC0zLAotICAgIDB4MS5mOTQ5ODRjNmZkZjFiZTYxNjg1MDlmZjFlMzVmNjJkZXAtMSwKLSAgICAtMHgxLjRiZmZmZXAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzgKLSAgICAweDEuNGE4YzNiNGU5YzdmZmZkNDgzMDVmNDRhNDJmNWY1MGZwLTMsCi0gICAgMHgxLmY5NDk4NGIyNTUyZTE5NDFlYzc2NmM2YTgyZWNlNGEzcC0xLAotICAgIDB4MS40Y3AtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzkKLSAgICAtMHgxLjRhOGMzYjRlOWM3ZmZmZDQ4MzA1ZjQ0YTQyZjVmNTBmcC0zLAotICAgIDB4MS5mOTQ5ODRiMjU1MmUxOTQxZWM3NjZjNmE4MmVjZTRhM3AtMSwKLSAgICAtMHgxLjRjcC0zLAotICB9LAotICB7IC8vIEVudHJ5IDU0MAotICAgIDB4MS40YThjM2Q0N2U2MDRhN2Q1NGYzZjdkZTQwMjQwOWUyY3AtMywKLSAgICAweDEuZjk0OTg0OWRhYzZhNTQ4ZGQ4NTExMzkwNDExMDYzMTZwLTEsCi0gICAgMHgxLjRjMDAwMnAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDEKLSAgICAtMHgxLjRhOGMzZDQ3ZTYwNGE3ZDU0ZjNmN2RlNDAyNDA5ZTJjcC0zLAotICAgIDB4MS5mOTQ5ODQ5ZGFjNmE1NDhkZDg1MTEzOTA0MTEwNjMxNnAtMSwKLSAgICAtMHgxLjRjMDAwMnAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDIKLSAgICAweDEuMmU5Y2Q4MzYzMGViMzVjMTJlZmNmYjg0MTM1ODM5OThwLTIsCi0gICAgMHgxLmU5MjFkZDcwNTRlZjVkNGY3MjdkOTM4Y2UxMGEwNTNjcC0xLAotICAgIDB4MS4zMzMzMzJwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQzCi0gICAgLTB4MS4yZTljZDgzNjMwZWIzNWMxMmVmY2ZiODQxMzU4Mzk5OHAtMiwKLSAgICAweDEuZTkyMWRkNzA1NGVmNWQ0ZjcyN2Q5MzhjZTEwYTA1M2NwLTEsCi0gICAgLTB4MS4zMzMzMzJwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ0Ci0gICAgMHgxLjJlOWNkYTFmNTJjODgwNDI4MzNmMjM2ZmYwZjlkNDg2cC0yLAotICAgIDB4MS5lOTIxZGQyNGFkYjkxMjllZmMwNTNmOWFjZDRkMjQ0NHAtMSwKLSAgICAweDEuMzMzMzM0cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDU0NQotICAgIC0weDEuMmU5Y2RhMWY1MmM4ODA0MjgzM2YyMzZmZjBmOWQ0ODZwLTIsCi0gICAgMHgxLmU5MjFkZDI0YWRiOTEyOWVmYzA1M2Y5YWNkNGQyNDQ0cC0xLAotICAgIC0weDEuMzMzMzM0cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDU0NgotICAgIDB4MS4yZTljZGMwODc0YTU3ZjFjYTBmOTc2YTliMDFlNGE3MXAtMiwKLSAgICAweDEuZTkyMWRjZDkwNjgyNGRhNjBlNDNjMDNhNzc3NGIxNzFwLTEsCi0gICAgMHgxLjMzMzMzNnAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDcKLSAgICAtMHgxLjJlOWNkYzA4NzRhNTdmMWNhMGY5NzZhOWIwMWU0YTcxcC0yLAotICAgIDB4MS5lOTIxZGNkOTA2ODI0ZGE2MGU0M2MwM2E3Nzc0YjE3MXAtMSwKLSAgICAtMHgxLjMzMzMzNnAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDgKLSAgICAweDEuM2ZhZWZiMmI2OGU2Nzg2ZWI2OTJiZDRlNDA0NTIxM2VwLTEsCi0gICAgMHgxLjhmZWVkYzkyNzY0YmZiZGNiNDEzODllODIwNjNlZDZlcC0xLAotICAgIDB4MS41OTQzMTZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ5Ci0gICAgLTB4MS4zZmFlZmIyYjY4ZTY3ODZlYjY5MmJkNGU0MDQ1MjEzZXAtMSwKLSAgICAweDEuOGZlZWRjOTI3NjRiZmJkY2I0MTM4OWU4MjA2M2VkNmVwLTEsCi0gICAgLTB4MS41OTQzMTZwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUwCi0gICAgMHgxLjNmYWVmY2JiNTdjMjZiMGQ4NGI2M2RiZmI3MmI0MTNicC0xLAotICAgIDB4MS44ZmVlZGI1MmM3NTAwODdjNWY4NzI3ZTAyNzllNWY2NnAtMSwKLSAgICAweDEuNTk0MzE4cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDU1MQotICAgIC0weDEuM2ZhZWZjYmI1N2MyNmIwZDg0YjYzZGJmYjcyYjQxM2JwLTEsCi0gICAgMHgxLjhmZWVkYjUyYzc1MDA4N2M1Zjg3MjdlMDI3OWU1ZjY2cC0xLAotICAgIC0weDEuNTk0MzE4cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDU1MgotICAgIDB4MS4zZmFlZmU0YjQ2OWQxZGZkNTYxZTY2NmVkZGE3YzZlNnAtMSwKLSAgICAweDEuOGZlZWRhMTMxODUyODUyZDJmYTdmZTg4NDdiMDU5NzNwLTEsCi0gICAgMHgxLjU5NDMxYXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTMKLSAgICAtMHgxLjNmYWVmZTRiNDY5ZDFkZmQ1NjFlNjY2ZWRkYTdjNmU2cC0xLAotICAgIDB4MS44ZmVlZGExMzE4NTI4NTJkMmZhN2ZlODg0N2IwNTk3M3AtMSwKLSAgICAtMHgxLjU5NDMxYXAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTQKLSAgICAweDEuNjg4OGEzNzVhYjIyOGMxZTAzMWM0MDA1NzY5NTA5ZjlwLTEsCi0gICAgMHgxLjZiODk5MTEyNzg1OWZkOWI0M2NhMWQwOGI5MmFhNDAxcC0xLAotICAgIDB4MS44ZmZmZmVwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU1Ci0gICAgLTB4MS42ODg4YTM3NWFiMjI4YzFlMDMxYzQwMDU3Njk1MDlmOXAtMSwKLSAgICAweDEuNmI4OTkxMTI3ODU5ZmQ5YjQzY2ExZDA4YjkyYWE0MDFwLTEsCi0gICAgLTB4MS44ZmZmZmVwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU2Ci0gICAgMHgxLjY4ODhhNGUxMzRiMmVhNTIwYjIyNmVjYTg2OTRiM2EycC0xLAotICAgIDB4MS42Yjg5OGZhOWVmYjVkMjJiNThmMGQ5OWU5NjM0OTMxYXAtMSwKLSAgICAweDEuOTBwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU3Ci0gICAgLTB4MS42ODg4YTRlMTM0YjJlYTUyMGIyMjZlY2E4Njk0YjNhMnAtMSwKLSAgICAweDEuNmI4OThmYTllZmI1ZDIyYjU4ZjBkOTllOTYzNDkzMWFwLTEsCi0gICAgLTB4MS45MHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTgKLSAgICAweDEuNjg4OGE2NGNiZTQxZGZmZDZlNDc2OGRjY2E0ZGI1M2JwLTEsCi0gICAgMHgxLjZiODk4ZTQxNjcxMDNiMzFkZTZkYTY3ZWJmNWU5ZmU2cC0xLAotICAgIDB4MS45MDAwMDJwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU5Ci0gICAgLTB4MS42ODg4YTY0Y2JlNDFkZmZkNmU0NzY4ZGNjYTRkYjUzYnAtMSwKLSAgICAweDEuNmI4OThlNDE2NzEwM2IzMWRlNmRhNjdlYmY1ZTlmZTZwLTEsCi0gICAgLTB4MS45MDAwMDJwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYwCi0gICAgLTAuMGYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIC0weDEucC0xNDksCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYxCi0gICAgMC4wZiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgMHgxLnAtMTQ5LAotICB9LAotICB7IC8vIEVudHJ5IDU2MgotICAgIDAuMCwKLSAgICAweDEucDAsCi0gICAgMC4wLAotICB9LAotICB7IC8vIEVudHJ5IDU2MwotICAgIDAuMGYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5wLTE0OSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjQKLSAgICAtMC4wZiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS5wLTE0OSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjUKLSAgICAweDEuOTFmNjVkY2NmZWFkMzUzZDhkYjljMzJmMTIyNjI3MzBwLTUsCi0gICAgMHgxLmZmNjIxZTM4OTU2YTNiM2JlOTIwMjU2ZGRiNjAzNGNkcC0xLAotICAgIDB4MS45MjFmYjRwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY2Ci0gICAgLTB4MS45MWY2NWRjY2ZlYWQzNTNkOGRiOWMzMmYxMjI2MjczMHAtNSwKLSAgICAweDEuZmY2MjFlMzg5NTZhM2IzYmU5MjAyNTZkZGI2MDM0Y2RwLTEsCi0gICAgLTB4MS45MjFmYjRwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY3Ci0gICAgMHgxLjkxZjY1ZmNjNjBjYjZkMDlmY2M1YzM1ZGQ2YTc5OGM4cC01LAotICAgIDB4MS5mZjYyMWUzNzAzNzNkYzZmMzk2M2Q0Mjg5NmVkZTA3OHAtMSwKLSAgICAweDEuOTIxZmI2cC01LAotICB9LAotICB7IC8vIEVudHJ5IDU2OAotICAgIC0weDEuOTFmNjVmY2M2MGNiNmQwOWZjYzVjMzVkZDZhNzk4YzhwLTUsCi0gICAgMHgxLmZmNjIxZTM3MDM3M2RjNmYzOTYzZDQyODk2ZWRlMDc4cC0xLAotICAgIC0weDEuOTIxZmI2cC01LAotICB9LAotICB7IC8vIEVudHJ5IDU2OQotICAgIDB4MS45MWY2NjFjYmMyZTlhMzQ0NzU3MWY3MmJjZmJjMjFlMnAtNSwKLSAgICAweDEuZmY2MjFlMzU3MTdkN2JhMzI3ODk0YmRmZGU5ZjQ3ODdwLTEsCi0gICAgMHgxLjkyMWZiOHAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzAKLSAgICAtMHgxLjkxZjY2MWNiYzJlOWEzNDQ3NTcxZjcyYmNmYmMyMWUycC01LAotICAgIDB4MS5mZjYyMWUzNTcxN2Q3YmEzMjc4OTRiZGZkZTlmNDc4N3AtMSwKLSAgICAtMHgxLjkyMWZiOHAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzEKLSAgICAweDEuOTE3YTZhN2ZlODI5N2JmMGExMTI1ZmIwMmIyMDM4YWVwLTQsCi0gICAgMHgxLmZkODhkYTQxMGI2MWNkNTUyMjFkOWJlYjk5NmQ0ZDk5cC0xLAotICAgIDB4MS45MjFmYjRwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcyCi0gICAgLTB4MS45MTdhNmE3ZmU4Mjk3YmYwYTExMjVmYjAyYjIwMzhhZXAtNCwKLSAgICAweDEuZmQ4OGRhNDEwYjYxY2Q1NTIyMWQ5YmViOTk2ZDRkOTlwLTEsCi0gICAgLTB4MS45MjFmYjRwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTczCi0gICAgMHgxLjkxN2E2YzdkNzEwM2I5ZDkwZTA5NjE1MTY0NDQ5YzZicC00LAotICAgIDB4MS5mZDg4ZGEzYWM1NzgxZjVhNmZjMzJlNDBlZDUxMjJiMHAtMSwKLSAgICAweDEuOTIxZmI2cC00LAotICB9LAotICB7IC8vIEVudHJ5IDU3NAotICAgIC0weDEuOTE3YTZjN2Q3MTAzYjlkOTBlMDk2MTUxNjQ0NDljNmJwLTQsCi0gICAgMHgxLmZkODhkYTNhYzU3ODFmNWE2ZmMzMmU0MGVkNTEyMmIwcC0xLAotICAgIC0weDEuOTIxZmI2cC00LAotICB9LAotICB7IC8vIEVudHJ5IDU3NQotICAgIDB4MS45MTdhNmU3YWY5ZGRmMTdiOTE0ZTZkMmU4ZTgzYjMzZXAtNCwKLSAgICAweDEuZmQ4OGRhMzQ3ZjhlNjk2OTk5ZmZkNTgwNjBiYTM1NjlwLTEsCi0gICAgMHgxLjkyMWZiOHAtNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzYKLSAgICAtMHgxLjkxN2E2ZTdhZjlkZGYxN2I5MTRlNmQyZThlODNiMzNlcC00LAotICAgIDB4MS5mZDg4ZGEzNDdmOGU2OTY5OTlmZmQ1ODA2MGJhMzU2OXAtMSwKLSAgICAtMHgxLjkyMWZiOHAtNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzcKLSAgICAweDEuOGY4YjgyODg5Mjk2YjVjZjc5MDRkYjFlNzRiMzQ2NmJwLTMsCi0gICAgMHgxLmY2Mjk3ZDBmNDY3MWRhNTgwZGZlY2RkNGRiMjlmNDczcC0xLAotICAgIDB4MS45MjFmYjRwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc4Ci0gICAgLTB4MS44ZjhiODI4ODkyOTZiNWNmNzkwNGRiMWU3NGIzNDY2YnAtMywKLSAgICAweDEuZjYyOTdkMGY0NjcxZGE1ODBkZmVjZGQ0ZGIyOWY0NzNwLTEsCi0gICAgLTB4MS45MjFmYjRwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc5Ci0gICAgMHgxLjhmOGI4NDdlYmMxM2I4OTk4ZWM1YjM3ZTcwNjUzNDFlcC0zLAotICAgIDB4MS5mNjI5N2NmNjRkYjlhMjFkOThhYjM5NDBmYzhhODZmMHAtMSwKLSAgICAweDEuOTIxZmI2cC0zLAotICB9LAotICB7IC8vIEVudHJ5IDU4MAotICAgIC0weDEuOGY4Yjg0N2ViYzEzYjg5OThlYzViMzdlNzA2NTM0MWVwLTMsCi0gICAgMHgxLmY2Mjk3Y2Y2NGRiOWEyMWQ5OGFiMzk0MGZjOGE4NmYwcC0xLAotICAgIC0weDEuOTIxZmI2cC0zLAotICB9LAotICB7IC8vIEVudHJ5IDU4MQotICAgIDB4MS44ZjhiODY3NGU1OTBhMjZhZWMzZWEwMWQzMGFlZDQ4NnAtMywKLSAgICAweDEuZjYyOTdjZGQ1NTAxNGE4MDhiODgzZmQxODNmMzE4YWNwLTEsCi0gICAgMHgxLjkyMWZiOHAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODIKLSAgICAtMHgxLjhmOGI4Njc0ZTU5MGEyNmFlYzNlYTAxZDMwYWVkNDg2cC0zLAotICAgIDB4MS5mNjI5N2NkZDU1MDE0YTgwOGI4ODNmZDE4M2YzMThhY3AtMSwKLSAgICAtMHgxLjkyMWZiOHAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODMKLSAgICAweDEuODdkZTI5M2Y1Njk3MTdhNDJhM2JkYjAxYWVhZTIwNjNwLTIsCi0gICAgMHgxLmQ5MDZiZDMxMzQ0MzAwN2RjYjBiZDRlM2Q2MzI4NGMwcC0xLAotICAgIDB4MS45MjFmYjRwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTg0Ci0gICAgLTB4MS44N2RlMjkzZjU2OTcxN2E0MmEzYmRiMDFhZWFlMjA2M3AtMiwKLSAgICAweDEuZDkwNmJkMzEzNDQzMDA3ZGNiMGJkNGUzZDYzMjg0YzBwLTEsCi0gICAgLTB4MS45MjFmYjRwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTg1Ci0gICAgMHgxLjg3ZGUyYjE4NWQ1NDE3ZGNhODAwYjg1Y2ExMzE5MDQzcC0yLAotICAgIDB4MS5kOTA2YmNjZjNjYjg3NTg3NGRhM2RhNGMwMTEwNGJhZnAtMSwKLSAgICAweDEuOTIxZmI2cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDU4NgotICAgIC0weDEuODdkZTJiMTg1ZDU0MTdkY2E4MDBiODVjYTEzMTkwNDNwLTIsCi0gICAgMHgxLmQ5MDZiY2NmM2NiODc1ODc0ZGEzZGE0YzAxMTA0YmFmcC0xLAotICAgIC0weDEuOTIxZmI2cC0yLAotICB9LAotICB7IC8vIEVudHJ5IDU4NwotICAgIDB4MS44N2RlMmNmMTY0MTBiNjFkOWFmZjdlNjI4ZmM4NTNiMnAtMiwKLSAgICAweDEuZDkwNmJjNmQ0NTJkNzQ0ZjIxMDgxMDg2MTEwMmYyZGFwLTEsCi0gICAgMHgxLjkyMWZiOHAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODgKLSAgICAtMHgxLjg3ZGUyY2YxNjQxMGI2MWQ5YWZmN2U2MjhmYzg1M2IycC0yLAotICAgIDB4MS5kOTA2YmM2ZDQ1MmQ3NDRmMjEwODEwODYxMTAyZjJkYXAtMSwKLSAgICAtMHgxLjkyMWZiOHAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODkKLSAgICAweDEuNmEwOWU1ODJhYTM5NDU0NjFiNWE4YTA3ODdkNWFiNWJwLTEsCi0gICAgMHgxLjZhMDllNzRkM2QzZmJiOTRkOTQyNzRmMzc3NjlmNmVhcC0xLAotICAgIDB4MS45MjFmYjRwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTkwCi0gICAgLTB4MS42YTA5ZTU4MmFhMzk0NTQ2MWI1YThhMDc4N2Q1YWI1YnAtMSwKLSAgICAweDEuNmEwOWU3NGQzZDNmYmI5NGQ5NDI3NGYzNzc2OWY2ZWFwLTEsCi0gICAgLTB4MS45MjFmYjRwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTkxCi0gICAgMHgxLjZhMDllNmVjYjQxZmRkN2U2ODE4NzJjODU0ODg3MDE5cC0xLAotICAgIDB4MS42YTA5ZTVlMzMzNTk4M2U1YWM5MmU3MzNlM2YyNGI0MnAtMSwKLSAgICAweDEuOTIxZmI2cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDU5MgotICAgIC0weDEuNmEwOWU2ZWNiNDFmZGQ3ZTY4MTg3MmM4NTQ4ODcwMTlwLTEsCi0gICAgMHgxLjZhMDllNWUzMzM1OTgzZTVhYzkyZTczM2UzZjI0YjQycC0xLAotICAgIC0weDEuOTIxZmI2cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDU5MwotICAgIDB4MS42YTA5ZTg1NmJlMDUwYmFjY2RlOWE3Njk2MWU4NGFhN3AtMSwKLSAgICAweDEuNmEwOWU0NzkyOTcxZTIyYzlhMDAyNjFhZWFjMDcwZGFwLTEsCi0gICAgMHgxLjkyMWZiOHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTQKLSAgICAtMHgxLjZhMDllODU2YmUwNTBiYWNjZGU5YTc2OTYxZTg0YWE3cC0xLAotICAgIDB4MS42YTA5ZTQ3OTI5NzFlMjJjOWEwMDI2MWFlYWMwNzBkYXAtMSwKLSAgICAtMHgxLjkyMWZiOHAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTUKLSAgICAweDEuZmZmZmZmZmZmZmZlNjU0NmNjMzgyMTFjMjZkYWJlZWJwLTEsCi0gICAgMHgxLjQ0NDJkMTg0Njk4OTM2MTAyODFhMGY5YjBlOGQwZWVmcC0yNCwKLSAgICAweDEuOTIxZmI0cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTk2Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmU2NTQ2Y2MzODIxMWMyNmRhYmVlYnAtMSwKLSAgICAweDEuNDQ0MmQxODQ2OTg5MzYxMDI4MWEwZjliMGU4ZDBlZWZwLTI0LAotICAgIC0weDEuOTIxZmI0cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTk3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZjc2NTIxMjQ5Yzc0MjI5MzBlZDgycC0xLAotICAgIC0weDEuNzc3YTVjZjcyY2VjYzRjZGUzYTMxZTdkNWEwMjYxNDJwLTI1LAotICAgIDB4MS45MjFmYjZwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTgKLSAgICAtMHgxLmZmZmZmZmZmZmZmZjc2NTIxMjQ5Yzc0MjI5MzBlZDgycC0xLAotICAgIC0weDEuNzc3YTVjZjcyY2VjYzRjZGUzYTMxZTdkNWEwMjYxNDJwLTI1LAotICAgIC0weDEuOTIxZmI2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNTk5Ci0gICAgMHgxLmZmZmZmZmZmZmZmODg3NWQ1ODViNmQ2Y2ZjZTk3ZDljcC0xLAotICAgIC0weDEuNWRkZTk3M2RjYjM5ODVmNGE4ZTc2YTFmZWNhMjllMWRwLTIzLAotICAgIDB4MS45MjFmYjhwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDAKLSAgICAtMHgxLmZmZmZmZmZmZmZmODg3NWQ1ODViNmQ2Y2ZjZTk3ZDljcC0xLAotICAgIC0weDEuNWRkZTk3M2RjYjM5ODVmNGE4ZTc2YTFmZWNhMjllMWRwLTIzLAotICAgIC0weDEuOTIxZmI4cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAxCi0gICAgMHgxLjQ0NDJkMTg0Njk4ODMxZjE1YjYzMTViZmE2YjVhZTc1cC0yMywKLSAgICAtMHgxLmZmZmZmZmZmZmZmOTk1MWIzMGUwODQ3MzJlNjBiYjg1cC0xLAotICAgIDB4MS45MjFmYjRwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDIKLSAgICAtMHgxLjQ0NDJkMTg0Njk4ODMxZjE1YjYzMTViZmE2YjVhZTc1cC0yMywKLSAgICAtMHgxLmZmZmZmZmZmZmZmOTk1MWIzMGUwODQ3MzJlNjBiYjg1cC0xLAotICAgIC0weDEuOTIxZmI0cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAzCi0gICAgLTB4MS43NzdhNWNmNzJjZWM1ZmQ2MTg5NmNiNGY0MGQxZGU3OXAtMjQsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmRkOTQ4NDkyNzFkMDhlZWNmNTRhMXAtMSwKLSAgICAweDEuOTIxZmI2cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA0Ci0gICAgMHgxLjc3N2E1Y2Y3MmNlYzVmZDYxODk2Y2I0ZjQwZDFkZTc5cC0yNCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZGQ5NDg0OTI3MWQwOGVlY2Y1NGExcC0xLAotICAgIC0weDEuOTIxZmI2cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA1Ci0gICAgLTB4MS41ZGRlOTczZGNiMzQ2YWZhNDYyMDNjZGRjNmY3ZmU5N3AtMjIsCi0gICAgLTB4MS5mZmZmZmZmZmZmZTIxZDc1NjE2ZGI1ZWJjNTY0MDVmNXAtMSwKLSAgICAweDEuOTIxZmI4cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA2Ci0gICAgMHgxLjVkZGU5NzNkY2IzNDZhZmE0NjIwM2NkZGM2ZjdmZTk3cC0yMiwKLSAgICAtMHgxLmZmZmZmZmZmZmZlMjFkNzU2MTZkYjVlYmM1NjQwNWY1cC0xLAotICAgIC0weDEuOTIxZmI4cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA3Ci0gICAgLTB4MS40NDQyZDE4NDY5ODQyMTc2Mjg4NzJlNTZlYjU4YjRjMXAtMjIsCi0gICAgMHgxLmZmZmZmZmZmZmZlNjU0NmNjMzgyMTFmNWU4ZGVlYjk3cC0xLAotICAgIDB4MS45MjFmYjRwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDgKLSAgICAweDEuNDQ0MmQxODQ2OTg0MjE3NjI4ODcyZTU2ZWI1OGI0YzFwLTIyLAotICAgIDB4MS5mZmZmZmZmZmZmZTY1NDZjYzM4MjExZjVlOGRlZWI5N3AtMSwKLSAgICAtMHgxLjkyMWZiNHAyLAotICB9LAotICB7IC8vIEVudHJ5IDYwOQotICAgIDB4MS43NzdhNWNmNzJjZWFjYmY2ZWM2NTdlOTc3ZWY3NzFmMXAtMjMsCi0gICAgMHgxLmZmZmZmZmZmZmZmNzY1MjEyNDljNzQyODViZjczYzA3cC0xLAotICAgIDB4MS45MjFmYjZwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTAKLSAgICAtMHgxLjc3N2E1Y2Y3MmNlYWNiZjZlYzY1N2U5NzdlZjc3MWYxcC0yMywKLSAgICAweDEuZmZmZmZmZmZmZmY3NjUyMTI0OWM3NDI4NWJmNzNjMDdwLTEsCi0gICAgLTB4MS45MjFmYjZwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTEKLSAgICAweDEuNWRkZTk3M2RjYjFmZmYxMGJiMDM4ODQ3OWU4MmY0YmJwLTIxLAotICAgIDB4MS5mZmZmZmZmZmZmODg3NWQ1ODViNmRiMmMzMTcxMTAwNHAtMSwKLSAgICAweDEuOTIxZmI4cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEyCi0gICAgLTB4MS41ZGRlOTczZGNiMWZmZjEwYmIwMzg4NDc5ZTgyZjRiYnAtMjEsCi0gICAgMHgxLmZmZmZmZmZmZmY4ODc1ZDU4NWI2ZGIyYzMxNzExMDA0cC0xLAotICAgIC0weDEuOTIxZmI4cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEzCi0gICAgLTB4MS40NDQyZDE4NDY5NzNkZjg5NWQxNzkxMDIzZGVkNTEzY3AtMjEsCi0gICAgMHgxLmZmZmZmZmZmZmY5OTUxYjMwZTA4NGE2YTk5M2I4Njc1cC0xLAotICAgIDB4MS45MjFmYjRwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTQKLSAgICAweDEuNDQ0MmQxODQ2OTczZGY4OTVkMTc5MTAyM2RlZDUxM2NwLTIxLAotICAgIDB4MS5mZmZmZmZmZmZmOTk1MWIzMGUwODRhNmE5OTNiODY3NXAtMSwKLSAgICAtMHgxLjkyMWZiNHAzLAotICB9LAotICB7IC8vIEVudHJ5IDYxNQotICAgIDB4MS43NzdhNWNmNzJjZTQ3YzdhM2JhMDRiYzJhNjA3YTlhN3AtMjIsCi0gICAgMHgxLmZmZmZmZmZmZmZkZDk0ODQ5MjcxZDBlYjdiN2I4ODRicC0xLAotICAgIDB4MS45MjFmYjZwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTYKLSAgICAtMHgxLjc3N2E1Y2Y3MmNlNDdjN2EzYmEwNGJjMmE2MDdhOWE3cC0yMiwKLSAgICAweDEuZmZmZmZmZmZmZmRkOTQ4NDkyNzFkMGViN2I3Yjg4NGJwLTEsCi0gICAgLTB4MS45MjFmYjZwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTcKLSAgICAweDEuNWRkZTk3M2RjYWNlNGY2YThlOTBiZDE1ZTAwNjEwZjhwLTIwLAotICAgIDB4MS5mZmZmZmZmZmZlMjFkNzU2MTZkYmE0ODI4M2QzYzJmN3AtMSwKLSAgICAweDEuOTIxZmI4cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE4Ci0gICAgLTB4MS41ZGRlOTczZGNhY2U0ZjZhOGU5MGJkMTVlMDA2MTBmOHAtMjAsCi0gICAgMHgxLmZmZmZmZmZmZmUyMWQ3NTYxNmRiYTQ4MjgzZDNjMmY3cC0xLAotICAgIC0weDEuOTIxZmI4cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE5Ci0gICAgLTB4MS40NDQyZDE4NDY5MzJkN2Q2MmY1OTIwOTM4OGM3ZjdjYXAtMjAsCi0gICAgMHgxLmZmZmZmZmZmZmU2NTQ2Y2MzODIxNTJkOWMwZWI5YjQ3cC0xLAotICAgIDB4MS45MjFmYjRwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjAKLSAgICAweDEuNDQ0MmQxODQ2OTMyZDdkNjJmNTkyMDkzODhjN2Y3Y2FwLTIwLAotICAgIDB4MS5mZmZmZmZmZmZlNjU0NmNjMzgyMTUyZDljMGViOWI0N3AtMSwKLSAgICAtMHgxLjkyMWZiNHA0LAotICB9LAotICB7IC8vIEVudHJ5IDYyMQotICAgIDB4MS43NzdhNWNmNzJjY2IzZTg3Nzg4YjgxMTIyOWU3MjViY3AtMjEsCi0gICAgMHgxLmZmZmZmZmZmZmY3NjUyMTI0OWM3NDg0ZWE3ZDdhNDA5cC0xLAotICAgIDB4MS45MjFmYjZwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjIKLSAgICAtMHgxLjc3N2E1Y2Y3MmNjYjNlODc3ODhiODExMjI5ZTcyNWJjcC0yMSwKLSAgICAweDEuZmZmZmZmZmZmZjc2NTIxMjQ5Yzc0ODRlYTdkN2E0MDlwLTEsCi0gICAgLTB4MS45MjFmYjZwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjMKLSAgICAweDEuNWRkZTk3M2RjOTg3OTBkMWRjYzYwMmJkMWI4NmJjY2FwLTE5LAotICAgIDB4MS5mZmZmZmZmZmY4ODc1ZDU4NWI3MjBmMjVmMDQ3Mzk0M3AtMSwKLSAgICAweDEuOTIxZmI4cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI0Ci0gICAgLTB4MS41ZGRlOTczZGM5ODc5MGQxZGNjNjAyYmQxYjg2YmNjYXAtMTksCi0gICAgMHgxLmZmZmZmZmZmZjg4NzVkNTg1YjcyMGYyNWYwNDczOTQzcC0xLAotICAgIC0weDEuOTIxZmI4cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI1Ci0gICAgLTB4MS40NDQyZDE4NDY4MmViOTA5Nzg1ZmFkMThiY2I1ZGJmY3AtMTksCi0gICAgMHgxLmZmZmZmZmZmZjk5NTFiMzBlMDg3ZGU1Y2MzODY4M2I4cC0xLAotICAgIDB4MS45MjFmYjRwNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjYKLSAgICAweDEuNDQ0MmQxODQ2ODJlYjkwOTc4NWZhZDE4YmNiNWRiZmNwLTE5LAotICAgIDB4MS5mZmZmZmZmZmY5OTUxYjMwZTA4N2RlNWNjMzg2ODNiOHAtMSwKLSAgICAtMHgxLjkyMWZiNHA1LAotICB9LAotICB7IC8vIEVudHJ5IDYyNwotICAgIDB4MS43NzdhNWNmNzJjNjY0NmJjNmMzODYwN2ViMzRlZWExM3AtMjAsCi0gICAgMHgxLmZmZmZmZmZmZmRkOTQ4NDkyNzFkNmI0NjNkZjZiZGRmcC0xLAotICAgIDB4MS45MjFmYjZwNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjgKLSAgICAtMHgxLjc3N2E1Y2Y3MmM2NjQ2YmM2YzM4NjA3ZWIzNGVlYTEzcC0yMCwKLSAgICAweDEuZmZmZmZmZmZmZGQ5NDg0OTI3MWQ2YjQ2M2RmNmJkZGZwLTEsCi0gICAgLTB4MS45MjFmYjZwNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjkKLSAgICAweDEuNWRkZTk3M2RjNDZjOTY2ZjE1YTI0MDNkNjBjZDE0ZDBwLTE4LAotICAgIDB4MS5mZmZmZmZmZmUyMWQ3NTYxNmUwMDBlNTVkMDlmODc1N3AtMSwKLSAgICAweDEuOTIxZmI4cDUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjMwCi0gICAgLTB4MS41ZGRlOTczZGM0NmM5NjZmMTVhMjQwM2Q2MGNkMTRkMHAtMTgsCi0gICAgMHgxLmZmZmZmZmZmZTIxZDc1NjE2ZTAwMGU1NWQwOWY4NzU3cC0xLAotICAgIC0weDEuOTIxZmI4cDUsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjMxCi0gICAgLTB4MS40NDQyZDE4NDY0MWUzZGQ2OWM3ZWMzMmUxNGEyMDlhNXAtMTgsCi0gICAgMHgxLmZmZmZmZmZmZTY1NDZjYzM4MjQ4YThjZjBiOWI1Nzk1cC0xLAotICAgIDB4MS45MjFmYjRwNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzIKLSAgICAweDEuNDQ0MmQxODQ2NDFlM2RkNjljN2VjMzJlMTRhMjA5YTVwLTE4LAotICAgIDB4MS5mZmZmZmZmZmU2NTQ2Y2MzODI0OGE4Y2YwYjliNTc5NXAtMSwKLSAgICAtMHgxLjkyMWZiNHA2LAotICB9LAotICB7IC8vIEVudHJ5IDYzMwotICAgIDB4MS43NzdhNWNmNzJhZDI2NzkwM2FlYzgxMTg3NzhiM2I1YXAtMTksCi0gICAgMHgxLmZmZmZmZmZmZjc2NTIxMjQ5YzdhNGRkMmUxNWRkMWM0cC0xLAotICAgIDB4MS45MjFmYjZwNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzQKLSAgICAtMHgxLjc3N2E1Y2Y3MmFkMjY3OTAzYWVjODExODc3OGIzYjVhcC0xOSwKLSAgICAweDEuZmZmZmZmZmZmNzY1MjEyNDljN2E0ZGQyZTE1ZGQxYzRwLTEsCi0gICAgLTB4MS45MjFmYjZwNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzUKLSAgICAweDEuNWRkZTk3M2RiMDAwYWNlM2Y5ODVhNDczZWExZmMwMzlwLTE3LAotICAgIDB4MS5mZmZmZmZmZjg4NzVkNTg1YmI3ZDU1MzgzYTliMzlhNHAtMSwKLSAgICAweDEuOTIxZmI4cDYsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM2Ci0gICAgLTB4MS41ZGRlOTczZGIwMDBhY2UzZjk4NWE0NzNlYTFmYzAzOXAtMTcsCi0gICAgMHgxLmZmZmZmZmZmODg3NWQ1ODViYjdkNTUzODNhOWIzOWE0cC0xLAotICAgIC0weDEuOTIxZmI4cDYsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM3Ci0gICAgLTB4MS40NDQyZDE4NDUzZGM1MTBiMmQ0OTViOGJmNzliZDFjZXAtMTcsCi0gICAgMHgxLmZmZmZmZmZmOTk1MWIzMGUwYmI1OThmYzA2NzlhNmY3cC0xLAotICAgIDB4MS45MjFmYjRwNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzgKLSAgICAweDEuNDQ0MmQxODQ1M2RjNTEwYjJkNDk1YjhiZjc5YmQxY2VwLTE3LAotICAgIDB4MS5mZmZmZmZmZjk5NTFiMzBlMGJiNTk4ZmMwNjc5YTZmN3AtMSwKLSAgICAtMHgxLjkyMWZiNHA3LAotICB9LAotICB7IC8vIEVudHJ5IDYzOQotICAgIDB4MS43NzdhNWNmNzI0ODJlYWRmNzVjNzMxZjk3MjUwNzcxOHAtMTgsCi0gICAgMHgxLmZmZmZmZmZmZGQ5NDg0OTI3MjMzNDJlYTFkYTQ5YmFjcC0xLAotICAgIDB4MS45MjFmYjZwNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDAKLSAgICAtMHgxLjc3N2E1Y2Y3MjQ4MmVhZGY3NWM3MzFmOTcyNTA3NzE4cC0xOCwKLSAgICAweDEuZmZmZmZmZmZkZDk0ODQ5MjcyMzM0MmVhMWRhNDliYWNwLTEsCi0gICAgLTB4MS45MjFmYjZwNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDEKLSAgICAweDEuNWRkZTk3M2Q1ZTUxMDZiNzkwM2ExOGE1NTJhZWZjNmVwLTE2LAotICAgIDB4MS5mZmZmZmZmZTIxZDc1NjE3MjVjNzEyZjA2OGZjOTcxOHAtMSwKLSAgICAweDEuOTIxZmI4cDcsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQyCi0gICAgLTB4MS41ZGRlOTczZDVlNTEwNmI3OTAzYTE4YTU1MmFlZmM2ZXAtMTYsCi0gICAgMHgxLmZmZmZmZmZlMjFkNzU2MTcyNWM3MTJmMDY4ZmM5NzE4cC0xLAotICAgIC0weDEuOTIxZmI4cDcsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQzCi0gICAgMHgxLjZhMDlmMTk0MGI4MGM4ZTI1Y2ZjOGMxMGQ0MjU3NmM2cC0xLAotICAgIC0weDEuNmEwOWRiM2JkYmEwODY4YTMxZTc2NjM1OWE4NDA2Y2FwLTEsCi0gICAgMHgxLjJkOTdjNHAxLAotICB9LAotICB7IC8vIEVudHJ5IDY0NAotICAgIC0weDEuNmEwOWYxOTQwYjgwYzhlMjVjZmM4YzEwZDQyNTc2YzZwLTEsCi0gICAgLTB4MS42YTA5ZGIzYmRiYTA4NjhhMzFlNzY2MzU5YTg0MDZjYXAtMSwKLSAgICAtMHgxLjJkOTdjNHAxLAotICB9LAotICB7IC8vIEVudHJ5IDY0NQotICAgIDB4MS42YTA5ZWJlYmU0MDg4OTI0NWQ1N2M1YzlkOTBhNmQ4MnAtMSwKLSAgICAtMHgxLjZhMDllMGU0MDM1Yjg2Njk0YzE2NTM0ZTQyZmJlMTExcC0xLAotICAgIDB4MS4yZDk3YzZwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDYKLSAgICAtMHgxLjZhMDllYmViZTQwODg5MjQ1ZDU3YzVjOWQ5MGE2ZDgycC0xLAotICAgIC0weDEuNmEwOWUwZTQwMzViODY2OTRjMTY1MzRlNDJmYmUxMTFwLTEsCi0gICAgLTB4MS4yZDk3YzZwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDcKLSAgICAweDEuNmEwOWU2NDNiYzc5YThjNzllZjRiZjE4NzcyN2UyNjlwLTEsCi0gICAgLTB4MS42YTA5ZTY4YzJhZmZlNWFhNTgwNTBhY2NiMDVjNjI0OHAtMSwKLSAgICAweDEuMmQ5N2M4cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ4Ci0gICAgLTB4MS42YTA5ZTY0M2JjNzlhOGM3OWVmNGJmMTg3NzI3ZTI2OXAtMSwKLSAgICAtMHgxLjZhMDllNjhjMmFmZmU1YWE1ODA1MGFjY2IwNWM2MjQ4cC0xLAotICAgIC0weDEuMmQ5N2M4cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ5Ci0gICAgLTB4MS42YTA5ZGYxOTcwNGNmMTQxMDhlMDkwMDBmZjYzNzRiZnAtMSwKLSAgICAtMHgxLjZhMDllZGI2NzcwNmUwOTk3MTIxZDEyYTBjODdiYWU4cC0xLAotICAgIDB4MS5mNmE3YTBwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTAKLSAgICAweDEuNmEwOWRmMTk3MDRjZjE0MTA4ZTA5MDAwZmY2Mzc0YmZwLTEsCi0gICAgLTB4MS42YTA5ZWRiNjc3MDZlMDk5NzEyMWQxMmEwYzg3YmFlOHAtMSwKLSAgICAtMHgxLmY2YTdhMHAxLAotICB9LAotICB7IC8vIEVudHJ5IDY1MQotICAgIC0weDEuNmEwOWU0YzE5N2Y4N2FjZTFjODFiNDMwMjJiZTM5YjFwLTEsCi0gICAgLTB4MS42YTA5ZTgwZTRmN2YyYTg4ZGViZWQzN2ZhYTkzZThjOHAtMSwKLSAgICAweDEuZjZhN2EycDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUyCi0gICAgMHgxLjZhMDllNGMxOTdmODdhY2UxYzgxYjQzMDIyYmUzOWIxcC0xLAotICAgIC0weDEuNmEwOWU4MGU0ZjdmMmE4OGRlYmVkMzdmYWE5M2U4YzhwLTEsCi0gICAgLTB4MS5mNmE3YTJwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTMKLSAgICAtMHgxLjZhMDllYTY5YmY4ZDYzYmNlNDA5NThmNWM0YjRmMTU1cC0xLAotICAgIC0weDEuNmEwOWUyNjYyN2UwZDNkOWNiNzZkZTAwY2I5MDJiZWNwLTEsCi0gICAgMHgxLmY2YTdhNHAxLAotICB9LAotICB7IC8vIEVudHJ5IDY1NAotICAgIDB4MS42YTA5ZWE2OWJmOGQ2M2JjZTQwOTU4ZjVjNGI0ZjE1NXAtMSwKLSAgICAtMHgxLjZhMDllMjY2MjdlMGQzZDljYjc2ZGUwMGNiOTAyYmVjcC0xLAotICAgIC0weDEuZjZhN2E0cDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU1Ci0gICAgLTB4MS5mZmZmZmZmZmZmMDY1Y2IyNDBiYjhmOTUxOWQyYzZmMXAtMSwKLSAgICAtMHgxLmY5OTkwZTkxYTc0MTY4YjkwYmQ2OGRmYWI3NzVjOWNhcC0yMSwKLSAgICAweDEuMmQ5N2M0cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU2Ci0gICAgMHgxLmZmZmZmZmZmZmYwNjVjYjI0MGJiOGY5NTE5ZDJjNmYxcC0xLAotICAgIC0weDEuZjk5OTBlOTFhNzQxNjhiOTBiZDY4ZGZhYjc3NWM5Y2FwLTIxLAotICAgIC0weDEuMmQ5N2M0cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU3Ci0gICAgLTB4MS5mZmZmZmZmZmZmYzMyOTM5ODk4ZjQ2NGFhZmMyZTc0YXAtMSwKLSAgICAtMHgxLmYzMzIxZDIzNGYxMzYzZDE4N2RkMDk1MjhiNjdiMjE1cC0yMiwKLSAgICAweDEuMmQ5N2M2cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU4Ci0gICAgMHgxLmZmZmZmZmZmZmZjMzI5Mzk4OThmNDY0YWFmYzJlNzRhcC0xLAotICAgIC0weDEuZjMzMjFkMjM0ZjEzNjNkMTg3ZGQwOTUyOGI2N2IyMTVwLTIyLAotICAgIC0weDEuMmQ5N2M2cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU5Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmNWMwZDI2MzBlZTBhMWZiNGU3YnAtMSwKLSAgICAweDEuOTliYzViOTYxYjFhY2FjYTE4ZDk3MWY2OGFlOTlkYTlwLTI3LAotICAgIDB4MS4yZDk3YzhwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjAKLSAgICAweDEuZmZmZmZmZmZmZmZmZjVjMGQyNjMwZWUwYTFmYjRlN2JwLTEsCi0gICAgMHgxLjk5YmM1Yjk2MWIxYWNhY2ExOGQ5NzFmNjhhZTk5ZGE5cC0yNywKLSAgICAtMHgxLjJkOTdjOHAyLAotICB9LAotICB7IC8vIEVudHJ5IDY2MQotICAgIC0weDEuNmEwOWY1MjkzMTZjZGU1YTE5MGQyMzVjYzRjY2I4MjVwLTEsCi0gICAgMHgxLjZhMDlkN2E2YjU3MmMyYzgyNGQxMzdkMDQwNWQ4MTg4cC0xLAotICAgIDB4MS41ZmRiYmNwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjIKLSAgICAweDEuNmEwOWY1MjkzMTZjZGU1YTE5MGQyMzVjYzRjY2I4MjVwLTEsCi0gICAgMHgxLjZhMDlkN2E2YjU3MmMyYzgyNGQxMzdkMDQwNWQ4MTg4cC0xLAotICAgIC0weDEuNWZkYmJjcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYzCi0gICAgLTB4MS42YTA5ZTlkOGUyODI2NzcwNTY3ZWE4MThiMmU4OTk2MHAtMSwKLSAgICAweDEuNmEwOWUyZjcwNGVlY2IxODFlM2Y1ZWNlOWJlMGNhMGZwLTEsCi0gICAgMHgxLjVmZGJiZXAyLAotICB9LAotICB7IC8vIEVudHJ5IDY2NAotICAgIDB4MS42YTA5ZTlkOGUyODI2NzcwNTY3ZWE4MThiMmU4OTk2MHAtMSwKLSAgICAweDEuNmEwOWUyZjcwNGVlY2IxODFlM2Y1ZWNlOWJlMGNhMGZwLTEsCi0gICAgLTB4MS41ZmRiYmVwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjUKLSAgICAtMHgxLjZhMDlkZTg4OTMzZDZlMGMxZGI3OGUxZDdjZDE1MTczcC0xLAotICAgIDB4MS42YTA5ZWU0NzU0MTA1MGVmNTllYzRiZmNlOTM1Y2MxYXAtMSwKLSAgICAweDEuNWZkYmMwcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY2Ci0gICAgMHgxLjZhMDlkZTg4OTMzZDZlMGMxZGI3OGUxZDdjZDE1MTczcC0xLAotICAgIDB4MS42YTA5ZWU0NzU0MTA1MGVmNTllYzRiZmNlOTM1Y2MxYXAtMSwKLSAgICAtMHgxLjVmZGJjMHAyLAotICB9LAotICB7IC8vIEVudHJ5IDY2NwotICAgIDB4MS42YTA5ZDAzM2ZhNzE1YTQwN2E2ZjAzZDAxYjkxMTEzZnAtMSwKLSAgICAweDEuNmEwOWZjOWJlYmFiYTIwOGM4MWVjMGIxY2QzMDc1ODlwLTEsCi0gICAgMHgxLmM0NjNhOHAyLAotICB9LAotICB7IC8vIEVudHJ5IDY2OAotICAgIC0weDEuNmEwOWQwMzNmYTcxNWE0MDdhNmYwM2QwMWI5MTExM2ZwLTEsCi0gICAgMHgxLjZhMDlmYzliZWJhYmEyMDhjODFlYzBiMWNkMzA3NTg5cC0xLAotICAgIC0weDEuYzQ2M2E4cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY5Ci0gICAgMHgxLjZhMDlkYjg0NGEyOGY4NjM1ODUxZmRmODgxODUxNWVmcC0xLAotICAgIDB4MS42YTA5ZjE0YjljZmNjMGY2MjI3ZDM4NmNjMzcwNGEwNXAtMSwKLSAgICAweDEuYzQ2M2FhcDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcwCi0gICAgLTB4MS42YTA5ZGI4NDRhMjhmODYzNTg1MWZkZjg4MTg1MTVlZnAtMSwKLSAgICAweDEuNmEwOWYxNGI5Y2ZjYzBmNjIyN2QzODZjYzM3MDRhMDVwLTEsCi0gICAgLTB4MS5jNDYzYWFwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzEKLSAgICAweDEuNmEwOWU2ZDQ5OTg2MTQwZjU1MjI2ZmM1ODY3MjYxMmNwLTEsCi0gICAgMHgxLjZhMDllNWZiNGRmMzVkNjcyOWY0NzJkYTM0MTNlNDA0cC0xLAotICAgIDB4MS5jNDYzYWNwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzIKLSAgICAtMHgxLjZhMDllNmQ0OTk4NjE0MGY1NTIyNmZjNTg2NzI2MTJjcC0xLAotICAgIDB4MS42YTA5ZTVmYjRkZjM1ZDY3MjlmNDcyZGEzNDEzZTQwNHAtMSwKLSAgICAtMHgxLmM0NjNhY3AyLAotICB9LAotICB7IC8vIEVudHJ5IDY3MwotICAgIDB4MS5mZmZmZmZmZmZmOTUzOTc5MzRjYWMxZjI4NTMyZDNkM3AtMSwKLSAgICAweDEuNGFhOWMyZjJjMWRlZmI4NzI4ZjBkMmRhMTIxN2FhZTFwLTIxLAotICAgIDB4MS5mNmE3YTBwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzQKLSAgICAtMHgxLmZmZmZmZmZmZmY5NTM5NzkzNGNhYzFmMjg1MzJkM2QzcC0xLAotICAgIDB4MS40YWE5YzJmMmMxZGVmYjg3MjhmMGQyZGExMjE3YWFlMXAtMjEsCi0gICAgLTB4MS5mNmE3YTBwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzUKLSAgICAweDEuZmZmZmZmZmZmZmZhOGU1YWFlMmJiOTNhZTU5MGY5ODRwLTEsCi0gICAgMHgxLjJhYTcwYmNiMDdkNmQwZjM2Yjc3N2NiMzgwYTg0NWQ5cC0yMywKLSAgICAweDEuZjZhN2EycDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc2Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmE4ZTVhYWUyYmI5M2FlNTkwZjk4NHAtMSwKLSAgICAweDEuMmFhNzBiY2IwN2Q2ZDBmMzZiNzc3Y2IzODBhODQ1ZDlwLTIzLAotICAgIC0weDEuZjZhN2EycDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc3Ci0gICAgMHgxLmZmZmZmZmZmZmZkZmUzM2MyNzhjYjQ4YTU5ZWUzZWYycC0xLAotICAgIC0weDEuNmFhYzdhMWE3YzBjN2FmYzVmY2IyMzEzYTdlY2EyMjlwLTIyLAotICAgIDB4MS5mNmE3YTRwMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzgKLSAgICAtMHgxLmZmZmZmZmZmZmZkZmUzM2MyNzhjYjQ4YTU5ZWUzZWYycC0xLAotICAgIC0weDEuNmFhYzdhMWE3YzBjN2FmYzVmY2IyMzEzYTdlY2EyMjlwLTIyLAotICAgIC0weDEuZjZhN2E0cDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc5Ci0gICAgMHgxLjZhMGEwNDBlYTVjMzJiYTRhZmJlYjg2YTYxNGM1ZDE2cC0xLAotICAgIC0weDEuNmEwOWM4YzEzZjQ4YjdhYWQ4NTFmOWQ2NDc0YmNiMzFwLTEsCi0gICAgMHgxLjE0NzVjYXAzLAotICB9LAotICB7IC8vIEVudHJ5IDY4MAotICAgIC0weDEuNmEwYTA0MGVhNWMzMmJhNGFmYmViODZhNjE0YzVkMTZwLTEsCi0gICAgLTB4MS42YTA5YzhjMTNmNDhiN2FhZDg1MWY5ZDY0NzRiY2IzMXAtMSwKLSAgICAtMHgxLjE0NzVjYXAzLAotICB9LAotICB7IC8vIEVudHJ5IDY4MQotICAgIDB4MS42YTA5ZWQ2ZTA4ODIxMmIxZTI2MGE1MTMyZDY5NTliN3AtMSwKLSAgICAtMHgxLjZhMDlkZjYxZGVkNDlkMWVlNGZjYTRiYTYxNDBkMTc5cC0xLAotICAgIDB4MS4xNDc1Y2NwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODIKLSAgICAtMHgxLjZhMDllZDZlMDg4MjEyYjFlMjYwYTUxMzJkNjk1OWI3cC0xLAotICAgIC0weDEuNmEwOWRmNjFkZWQ0OWQxZWU0ZmNhNGJhNjE0MGQxNzlwLTEsCi0gICAgLTB4MS4xNDc1Y2NwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODMKLSAgICAweDEuNmEwOWQ2Y2Q2OWQ2ZWZkMWE2ZmEyZGQ0YzYxN2NiYmVwLTEsCi0gICAgLTB4MS42YTA5ZjYwMjdjZjY3OGIzOGZjODk5MmNkOTk5MDMwMnAtMSwKLSAgICAweDEuMTQ3NWNlcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg0Ci0gICAgLTB4MS42YTA5ZDZjZDY5ZDZlZmQxYTZmYTJkZDRjNjE3Y2JiZXAtMSwKLSAgICAtMHgxLjZhMDlmNjAyN2NmNjc4YjM4ZmM4OTkyY2Q5OTkwMzAycC0xLAotICAgIC0weDEuMTQ3NWNlcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg1Ci0gICAgMHgxLmY5OTkwZTkxYTY0YWU0ODY3NTc4NzhiZGZlZTBmNzAzcC0yMCwKLSAgICAtMHgxLmZmZmZmZmZmZmMxOTcyYzkwMmVmMzFjMzdjYjU0ODE3cC0xLAotICAgIDB4MS4yZDk3YzRwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODYKLSAgICAtMHgxLmY5OTkwZTkxYTY0YWU0ODY3NTc4NzhiZGZlZTBmNzAzcC0yMCwKLSAgICAtMHgxLmZmZmZmZmZmZmMxOTcyYzkwMmVmMzFjMzdjYjU0ODE3cC0xLAotICAgIC0weDEuMmQ5N2M0cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg3Ci0gICAgMHgxLmYzMzIxZDIzNGVkODEyOGFhYmIwNDk5YTQzYjRkZWYycC0yMSwKLSAgICAtMHgxLmZmZmZmZmZmZmYwY2E0ZTYyNjNkMjdhMDIwNDM4OWRmcC0xLAotICAgIDB4MS4yZDk3YzZwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODgKLSAgICAtMHgxLmYzMzIxZDIzNGVkODEyOGFhYmIwNDk5YTQzYjRkZWYycC0yMSwKLSAgICAtMHgxLmZmZmZmZmZmZmYwY2E0ZTYyNjNkMjdhMDIwNDM4OWRmcC0xLAotICAgIC0weDEuMmQ5N2M2cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg5Ci0gICAgLTB4MS45OWJjNWI5NjFiMWFjMjk2ZGJlMTk4MGZkMmM4OTBhMHAtMjYsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZkNzAzNDk4YzNiODI4ODU2MzkxNXAtMSwKLSAgICAweDEuMmQ5N2M4cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkwCi0gICAgMHgxLjk5YmM1Yjk2MWIxYWMyOTZkYmUxOTgwZmQyYzg5MGEwcC0yNiwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmQ3MDM0OThjM2I4Mjg4NTYzOTE1cC0xLAotICAgIC0weDEuMmQ5N2M4cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkxCi0gICAgLTB4MS42YTA5YzE0ZTgzZjhkYjA4MGQxMjIzZjg4N2NjMTJlY3AtMSwKLSAgICAtMHgxLjZhMGEwYjgxNWZiMzdiMmQwMTU1MWUwN2NiMzAwOWQxcC0xLAotICAgIDB4MS40NmI5YzBwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTIKLSAgICAweDEuNmEwOWMxNGU4M2Y4ZGIwODBkMTIyM2Y4ODdjYzEyZWNwLTEsCi0gICAgLTB4MS42YTBhMGI4MTVmYjM3YjJkMDE1NTFlMDdjYjMwMDlkMXAtMSwKLSAgICAtMHgxLjQ2YjljMHAzLAotICB9LAotICB7IC8vIEVudHJ5IDY5MwotICAgIC0weDEuNmEwOWQ3ZWYyM2ZiZWMxZWQ4MTJlODA3YmViMDQ5MmZwLTEsCi0gICAgLTB4MS42YTA5ZjRlMGMyZTk4ZGViNzg2NDJiNjAzMmE3M2Q0NnAtMSwKLSAgICAweDEuNDZiOWMycDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk0Ci0gICAgMHgxLjZhMDlkN2VmMjNmYmVjMWVkODEyZTgwN2JlYjA0OTJmcC0xLAotICAgIC0weDEuNmEwOWY0ZTBjMmU5OGRlYjc4NjQyYjYwMzJhNzNkNDZwLTEsCi0gICAgLTB4MS40NmI5YzJwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTUKLSAgICAtMHgxLjZhMDllZThmYzI5NGYzNWRiM2VmY2U1NjUzNjVhZjg5cC0xLAotICAgIC0weDEuNmEwOWRlNDAyNGI1OTZiNTBlYjA2ZDU2MmRiOGM3NzdwLTEsCi0gICAgMHgxLjQ2YjljNHAzLAotICB9LAotICB7IC8vIEVudHJ5IDY5NgotICAgIDB4MS42YTA5ZWU4ZmMyOTRmMzVkYjNlZmNlNTY1MzY1YWY4OXAtMSwKLSAgICAtMHgxLjZhMDlkZTQwMjRiNTk2YjUwZWIwNmQ1NjJkYjhjNzc3cC0xLAotICAgIC0weDEuNDZiOWM0cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk3Ci0gICAgLTB4MS5mZmZmZmZmZmZlNGM5NmIzOTdkOTUxY2IyMTg2MWM5NXAtMSwKLSAgICAtMHgxLjRkZGQzYmE5ZWRjZDg5OGI5OTQ2ZmRkMjBhZjIyYTY4cC0yMCwKLSAgICAweDEuNWZkYmJjcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk4Ci0gICAgMHgxLmZmZmZmZmZmZmU0Yzk2YjM5N2Q5NTFjYjIxODYxYzk1cC0xLAotICAgIC0weDEuNGRkZDNiYTllZGNkODk4Yjk5NDZmZGQyMGFmMjJhNjhwLTIwLAotICAgIC0weDEuNWZkYmJjcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk5Ci0gICAgLTB4MS5mZmZmZmZmZmZmZTg1MTJhZWJiNTZjOWU3NWI0MTk0MXAtMSwKLSAgICAtMHgxLjM3NzRlZWE3YjhhYmU4ZmE4YzM4MDE0MmI5N2FmNGI2cC0yMiwKLSAgICAweDEuNWZkYmJlcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzAwCi0gICAgMHgxLmZmZmZmZmZmZmZlODUxMmFlYmI1NmM5ZTc1YjQxOTQxcC0xLAotICAgIC0weDEuMzc3NGVlYTdiOGFiZThmYThjMzgwMTQyYjk3YWY0YjZwLTIyLAotICAgIC0weDEuNWZkYmJlcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzAxCi0gICAgLTB4MS5mZmZmZmZmZmZmODQwYmEyM2Y5MWM5Y2I0OWExMGIyN3AtMSwKLSAgICAweDEuNjQ0NTg4YWMyMzhhZTQ5M2ZhMzI0MzViYTUxMzI5YmZwLTIxLAotICAgIDB4MS41ZmRiYzBwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDIKLSAgICAweDEuZmZmZmZmZmZmZjg0MGJhMjNmOTFjOWNiNDlhMTBiMjdwLTEsCi0gICAgMHgxLjY0NDU4OGFjMjM4YWU0OTNmYTMyNDM1YmE1MTMyOWJmcC0yMSwKLSAgICAtMHgxLjVmZGJjMHAzLAotICB9LAotICB7IC8vIEVudHJ5IDcwMwotICAgIC0weDEuNmEwYTEyZjQxOTdjOTBhMGVlNGEwOTRiNjM3N2FhMjNwLTEsCi0gICAgMHgxLjZhMDliOWRiYzg4MWM0NThlNzQ3OTA4Y2FmMmFhNWUxcC0xLAotICAgIDB4MS43OGZkYjZwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDQKLSAgICAweDEuNmEwYTEyZjQxOTdjOTBhMGVlNGEwOTRiNjM3N2FhMjNwLTEsCi0gICAgMHgxLjZhMDliOWRiYzg4MWM0NThlNzQ3OTA4Y2FmMmFhNWUxcC0xLAotICAgIC0weDEuNzhmZGI2cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA1Ci0gICAgLTB4MS42YTA5ZmM1MzdkMjljZjEzMWQ2NzEwOTkxYmViYWJlZHAtMSwKLSAgICAweDEuNmEwOWQwN2M2OGZjMDEwZmZjZmQzYjE5ZjFlZTRmNDRwLTEsCi0gICAgMHgxLjc4ZmRiOHAzLAotICB9LAotICB7IC8vIEVudHJ5IDcwNgotICAgIDB4MS42YTA5ZmM1MzdkMjljZjEzMWQ2NzEwOTkxYmViYWJlZHAtMSwKLSAgICAweDEuNmEwOWQwN2M2OGZjMDEwZmZjZmQzYjE5ZjFlZTRmNDRwLTEsCi0gICAgLTB4MS43OGZkYjhwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDcKLSAgICAtMHgxLjZhMDllNWIyZGY2ZDAzODhmOTA3MGM0MzQwZjNlNjY5cC0xLAotICAgIDB4MS42YTA5ZTcxZDA4MGMzM2Y2OTY0YTA3ZDFhMGJmNTk4MHAtMSwKLSAgICAweDEuNzhmZGJhcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA4Ci0gICAgMHgxLjZhMDllNWIyZGY2ZDAzODhmOTA3MGM0MzQwZjNlNjY5cC0xLAotICAgIDB4MS42YTA5ZTcxZDA4MGMzM2Y2OTY0YTA3ZDFhMGJmNTk4MHAtMSwKLSAgICAtMHgxLjc4ZmRiYXAzLAotICB9LAotICB7IC8vIEVudHJ5IDcwOQotICAgIDB4MS42YTA5YzkwOWFkZDRkYmYzMjI1M2EzOWQ1YzMwNjMwOHAtMSwKLSAgICAweDEuNmEwYTAzYzYzNzQyZDYyODAyZDE2M2Q1Y2ZiM2I3ZDVwLTEsCi0gICAgMHgxLmFiNDFhZXAzLAotICB9LAotICB7IC8vIEVudHJ5IDcxMAotICAgIC0weDEuNmEwOWM5MDlhZGQ0ZGJmMzIyNTNhMzlkNWMzMDYzMDhwLTEsCi0gICAgMHgxLjZhMGEwM2M2Mzc0MmQ2MjgwMmQxNjNkNWNmYjNiN2Q1cC0xLAotICAgIC0weDEuYWI0MWFlcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzExCi0gICAgMHgxLjZhMDlkZmFhNGQ1YzNhN2YwNTZmM2U2MWEzNjViMjllcC0xLAotICAgIDB4MS42YTA5ZWQyNTk5ZmQzNjRjOTc2NjBjY2E2NjUyYzBhM3AtMSwKLSAgICAweDEuYWI0MWIwcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzEyCi0gICAgLTB4MS42YTA5ZGZhYTRkNWMzYTdmMDU2ZjNlNjFhMzY1YjI5ZXAtMSwKLSAgICAweDEuNmEwOWVkMjU5OWZkMzY0Yzk3NjYwY2NhNjY1MmMwYTNwLTEsCi0gICAgLTB4MS5hYjQxYjBwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTMKLSAgICAweDEuNmEwOWY2NGFlYjc5OGYyYjNlM2Q5YjE2ZThlM2M0MTJwLTEsCi0gICAgMHgxLjZhMDlkNjg0ZmI0ZDhjODQwNjYwZDZiNDJlYzgzMDM5cC0xLAotICAgIDB4MS5hYjQxYjJwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTQKLSAgICAtMHgxLjZhMDlmNjRhZWI3OThmMmIzZTNkOWIxNmU4ZTNjNDEycC0xLAotICAgIDB4MS42YTA5ZDY4NGZiNGQ4Yzg0MDY2MGQ2YjQyZWM4MzAzOXAtMSwKLSAgICAtMHgxLmFiNDFiMnAzLAotICB9LAotICB7IC8vIEVudHJ5IDcxNQotICAgIDB4MS5mZmZmZmZmZmZjMjYwZDZmZmI4ZjRjZDhhYjNmZDAyMHAtMSwKLSAgICAweDEuZjY2NTk1ZGE3YTFhZTMwOGQyNmExOGRlNGMyZWQzYTNwLTIwLAotICAgIDB4MS5jNDYzYThwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTYKLSAgICAtMHgxLmZmZmZmZmZmZmMyNjBkNmZmYjhmNGNkOGFiM2ZkMDIwcC0xLAotICAgIDB4MS5mNjY1OTVkYTdhMWFlMzA4ZDI2YTE4ZGU0YzJlZDNhM3AtMjAsCi0gICAgLTB4MS5jNDYzYThwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTcKLSAgICAweDEuZmZmZmZmZmZmZjEyZDg5YmIwODRkZDc2Mjg0OGIzZDZwLTEsCi0gICAgMHgxLmVjY2IyYmI0ZjY2ZWE4NjEyNDFmYTA5Y2E5ZDhhMDM0cC0yMSwKLSAgICAweDEuYzQ2M2FhcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE4Ci0gICAgLTB4MS5mZmZmZmZmZmZmMTJkODliYjA4NGRkNzYyODQ4YjNkNnAtMSwKLSAgICAweDEuZWNjYjJiYjRmNjZlYTg2MTI0MWZhMDljYTlkOGEwMzRwLTIxLAotICAgIC0weDEuYzQ2M2FhcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmEzYzc2NTdiODVlNWI0NGJiZDQ0cC0xLAotICAgIC0weDEuMzM0ZDQ0YjA5NDU0MDdiMTE4YjM2MWFiNzgxNzFmNjdwLTI1LAotICAgIDB4MS5jNDYzYWNwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjAKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmEzYzc2NTdiODVlNWI0NGJiZDQ0cC0xLAotICAgIC0weDEuMzM0ZDQ0YjA5NDU0MDdiMTE4YjM2MWFiNzgxNzFmNjdwLTI1LAotICAgIC0weDEuYzQ2M2FjcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIxCi0gICAgMHgxLjZhMGEwYjM4ZjEzNGEzMjk1YTBiMzg2ZTQyZjFjYTdhcC0xLAotICAgIC0weDEuNmEwOWMxOTZmMjg2N2NjOTE2YWUyYjdlNmM5ZDk5YzFwLTEsCi0gICAgMHgxLmRkODVhNHAzLAotICB9LAotICB7IC8vIEVudHJ5IDcyMgotICAgIC0weDEuNmEwYTBiMzhmMTM0YTMyOTVhMGIzODZlNDJmMWNhN2FwLTEsCi0gICAgLTB4MS42YTA5YzE5NmYyODY3Y2M5MTZhZTJiN2U2YzlkOTljMXAtMSwKLSAgICAtMHgxLmRkODVhNHAzLAotICB9LAotICB7IC8vIEVudHJ5IDcyMwotICAgIDB4MS42YTA5ZjQ5ODU0NjYyZWZmMWIzNTc1NWExMjkwNDRhN3AtMSwKLSAgICAtMHgxLjZhMDlkODM3OTI4NTA2ZjdjZmY3NmYwOTRiNGUwMzc3cC0xLAotICAgIDB4MS5kZDg1YTZwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjQKLSAgICAtMHgxLjZhMDlmNDk4NTQ2NjJlZmYxYjM1NzU1YTEyOTA0NGE3cC0xLAotICAgIC0weDEuNmEwOWQ4Mzc5Mjg1MDZmN2NmZjc2ZjA5NGI0ZTAzNzdwLTEsCi0gICAgLTB4MS5kZDg1YTZwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjUKLSAgICAweDEuNmEwOWRkZjdiNjJkYjBlMDQ0MGI2YTQyNjIyMDNiMTFwLTEsCi0gICAgLTB4MS42YTA5ZWVkODMxMTk4NzRlNTFhZTRiYjhhZWRkYzFmMnAtMSwKLSAgICAweDEuZGQ4NWE4cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI2Ci0gICAgLTB4MS42YTA5ZGRmN2I2MmRiMGUwNDQwYjZhNDI2MjIwM2IxMXAtMSwKLSAgICAtMHgxLjZhMDllZWQ4MzExOTg3NGU1MWFlNGJiOGFlZGRjMWYycC0xLAotICAgIC0weDEuZGQ4NWE4cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI3Ci0gICAgMHgxLjRhYTljMmYyYzE5YTA2MmIxOGEwMTdiY2Q1NDI0ZmVhcC0yMCwKLSAgICAtMHgxLmZmZmZmZmZmZmU1NGU1ZTRkMzJiMzQ1MzE2NjA2MGIzcC0xLAotICAgIDB4MS5mNmE3YTBwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjgKLSAgICAtMHgxLjRhYTljMmYyYzE5YTA2MmIxOGEwMTdiY2Q1NDI0ZmVhcC0yMCwKLSAgICAtMHgxLmZmZmZmZmZmZmU1NGU1ZTRkMzJiMzQ1MzE2NjA2MGIzcC0xLAotICAgIC0weDEuZjZhN2EwcDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI5Ci0gICAgMHgxLjJhYTcwYmNiMDdkM2E0MDc4MTUxMGQyMTM2NTJlNDNhcC0yMiwKLSAgICAtMHgxLmZmZmZmZmZmZmZlYTM5NmFiOGFlZTUwOTM5MmM3NTVkcC0xLAotICAgIDB4MS5mNmE3YTJwMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzAKLSAgICAtMHgxLjJhYTcwYmNiMDdkM2E0MDc4MTUxMGQyMTM2NTJlNDNhcC0yMiwKLSAgICAtMHgxLmZmZmZmZmZmZmZlYTM5NmFiOGFlZTUwOTM5MmM3NTVkcC0xLAotICAgIC0weDEuZjZhN2EycDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMxCi0gICAgLTB4MS42YWFjN2ExYTdiZjViYmQ0OTU3MmZmYjhkNzc0OTkyMnAtMjEsCi0gICAgLTB4MS5mZmZmZmZmZmZmN2Y4Y2YwOWUzMmQ2MzA5YmVhODVjYXAtMSwKLSAgICAweDEuZjZhN2E0cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMyCi0gICAgMHgxLjZhYWM3YTFhN2JmNWJiZDQ5NTcyZmZiOGQ3NzQ5OTIycC0yMSwKLSAgICAtMHgxLmZmZmZmZmZmZmY3ZjhjZjA5ZTMyZDYzMDliZWE4NWNhcC0xLAotICAgIC0weDEuZjZhN2E0cDMsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMzCi0gICAgLTB4MS42YTA5YTM4Mzk1MzEyNDA5Njg5ODM0MGY5MTY4YjlkNXAtMSwKLSAgICAtMHgxLjZhMGEyOTRjNDVlYzc0N2E0NzcxMWE0OTk0ZDJjNWU0cC0xLAotICAgIDB4MS4wN2U0Y2NwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzQKLSAgICAweDEuNmEwOWEzODM5NTMxMjQwOTY4OTgzNDBmOTE2OGI5ZDVwLTEsCi0gICAgLTB4MS42YTBhMjk0YzQ1ZWM3NDdhNDc3MTFhNDk5NGQyYzVlNHAtMSwKLSAgICAtMHgxLjA3ZTRjY3A0LAotICB9LAotICB7IC8vIEVudHJ5IDczNQotICAgIC0weDEuNmEwOWQwYzRkNzg2OTk2MWM0N2E5YjBiOTY4Y2M5MTBwLTEsCi0gICAgLTB4MS42YTA5ZmMwYjBlYTdlZDlmYjVkZDUwYTBjOGFmMTljYnAtMSwKLSAgICAweDEuMDdlNGNlcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM2Ci0gICAgMHgxLjZhMDlkMGM0ZDc4Njk5NjFjNDdhOWIwYjk2OGNjOTEwcC0xLAotICAgIC0weDEuNmEwOWZjMGIwZWE3ZWQ5ZmI1ZGQ1MGEwYzhhZjE5Y2JwLTEsCi0gICAgLTB4MS4wN2U0Y2VwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzcKLSAgICAtMHgxLjZhMDlmZTA2MTQzM2U3NzcwZDAwY2E1OWQ1YTU2MjUxcC0xLAotICAgIC0weDEuNmEwOWNlYzlkMWJiM2VkNGY4MTBjOWY5Nzg2ZDYxMGVwLTEsCi0gICAgMHgxLjA3ZTRkMHA0LAotICB9LAotICB7IC8vIEVudHJ5IDczOAotICAgIDB4MS42YTA5ZmUwNjE0MzNlNzc3MGQwMGNhNTlkNWE1NjI1MXAtMSwKLSAgICAtMHgxLjZhMDljZWM5ZDFiYjNlZDRmODEwYzlmOTc4NmQ2MTBlcC0xLAotICAgIC0weDEuMDdlNGQwcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM5Ci0gICAgLTB4MS5mZmZmZmZmZmY5MjE5ZGFlNWZlZGExYjUzOTMzNTgwM3AtMSwKLSAgICAtMHgxLjRmNzZmODA1ODJjNzNmYzBjYzA5MDNlZDhjYTdkNmIzcC0xOSwKLSAgICAweDEuMTQ3NWNhcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQwCi0gICAgMHgxLmZmZmZmZmZmZjkyMTlkYWU1ZmVkYTFiNTM5MzM1ODAzcC0xLAotICAgIC0weDEuNGY3NmY4MDU4MmM3M2ZjMGNjMDkwM2VkOGNhN2Q2YjNwLTE5LAotICAgIC0weDEuMTQ3NWNhcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQxCi0gICAgLTB4MS5mZmZmZmZmZmZmOWQ1NTZlOGMwYmYwYTgwZDYxMDgwOHAtMSwKLSAgICAtMHgxLjNkZGJlMDE2MTEwOGI2OTBlZWQ3MGE3ZjU5ZGU3NTFjcC0yMSwKLSAgICAweDEuMTQ3NWNjcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQyCi0gICAgMHgxLmZmZmZmZmZmZmY5ZDU1NmU4YzBiZjBhODBkNjEwODA4cC0xLAotICAgIC0weDEuM2RkYmUwMTYxMTA4YjY5MGVlZDcwYTdmNTlkZTc1MWNwLTIxLAotICAgIC0weDEuMTQ3NWNjcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQzCi0gICAgLTB4MS5mZmZmZmZmZmZlMTkwZDJlYjgyZTc0ZWZkMjA5MzIxNXAtMSwKLSAgICAweDEuNjExMjBmZjRmNzAxODBiMGQ1NWMzYWUwZjY5NTg1Y2FwLTIwLAotICAgIDB4MS4xNDc1Y2VwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDQKLSAgICAweDEuZmZmZmZmZmZmZTE5MGQyZWI4MmU3NGVmZDIwOTMyMTVwLTEsCi0gICAgMHgxLjYxMTIwZmY0ZjcwMTgwYjBkNTVjM2FlMGY2OTU4NWNhcC0yMCwKLSAgICAtMHgxLjE0NzVjZXA0LAotICB9LAotICB7IC8vIEVudHJ5IDc0NQotICAgIC0weDEuNmEwYTFhMWU2NGEyOGVlZTIzOGRjODUyODQ2YWFjZDVwLTEsCi0gICAgMHgxLjZhMDliMmIxN2I3NDEwNTBhNmNmZDY0YjgxYzc2NDg1cC0xLAotICAgIDB4MS4yMTA2YzhwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDYKLSAgICAweDEuNmEwYTFhMWU2NGEyOGVlZTIzOGRjODUyODQ2YWFjZDVwLTEsCi0gICAgMHgxLjZhMDliMmIxN2I3NDEwNTBhNmNmZDY0YjgxYzc2NDg1cC0xLAotICAgIC0weDEuMjEwNmM4cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ3Ci0gICAgLTB4MS42YTA5ZWNkZDJiNzg0YjY5OTAzNGVlODEwMjY3MGUyN3AtMSwKLSAgICAweDEuNmEwOWRmZjJiYmUzYzk2MTZhMzU3NmM1NWU3NzMyMDdwLTEsCi0gICAgMHgxLjIxMDZjYXA0LAotICB9LAotICB7IC8vIEVudHJ5IDc0OAotICAgIDB4MS42YTA5ZWNkZDJiNzg0YjY5OTAzNGVlODEwMjY3MGUyN3AtMSwKLSAgICAweDEuNmEwOWRmZjJiYmUzYzk2MTZhMzU3NmM1NWU3NzMyMDdwLTEsCi0gICAgLTB4MS4yMTA2Y2FwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDkKLSAgICAtMHgxLjZhMDliZjliZWNhNWUwMzE4ODMwMTYzOWMwOWVkNTc0cC0xLAotICAgIDB4MS42YTBhMGQzM2Y2YWI1YWYyNjJhZDZhZDE4YWMxY2U5ZnAtMSwKLSAgICAweDEuMjEwNmNjcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUwCi0gICAgMHgxLjZhMDliZjliZWNhNWUwMzE4ODMwMTYzOWMwOWVkNTc0cC0xLAotICAgIDB4MS42YTBhMGQzM2Y2YWI1YWYyNjJhZDZhZDE4YWMxY2U5ZnAtMSwKLSAgICAtMHgxLjIxMDZjY3A0LAotICB9LAotICB7IC8vIEVudHJ5IDc1MQotICAgIC0weDEuZjk5OTBlOTFhMjcwZDNiYzFjMDJmNGY2OWY0OGU2NzVwLTE5LAotICAgIDB4MS5mZmZmZmZmZmYwNjVjYjI0MGJjYmZkZmY0OTc3ZGRmOHAtMSwKLSAgICAweDEuMmQ5N2M0cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUyCi0gICAgMHgxLmY5OTkwZTkxYTI3MGQzYmMxYzAyZjRmNjlmNDhlNjc1cC0xOSwKLSAgICAweDEuZmZmZmZmZmZmMDY1Y2IyNDBiY2JmZGZmNDk3N2RkZjhwLTEsCi0gICAgLTB4MS4yZDk3YzRwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTMKLSAgICAtMHgxLmYzMzIxZDIzNGRlYWNkNmYzYWZkNzUwMzk2ODUwMTJmcC0yMCwKLSAgICAweDEuZmZmZmZmZmZmYzMyOTM5ODk4ZjU4NWQ2OTQ4Y2YyZDFwLTEsCi0gICAgMHgxLjJkOTdjNnA0LAotICB9LAotICB7IC8vIEVudHJ5IDc1NAotICAgIDB4MS5mMzMyMWQyMzRkZWFjZDZmM2FmZDc1MDM5Njg1MDEyZnAtMjAsCi0gICAgMHgxLmZmZmZmZmZmZmMzMjkzOTg5OGY1ODVkNjk0OGNmMmQxcC0xLAotICAgIC0weDEuMmQ5N2M2cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU1Ci0gICAgMHgxLjk5YmM1Yjk2MWIxYWExYzllODAyMzA3NGYzNDA2ZmQ5cC0yNSwKLSAgICAweDEuZmZmZmZmZmZmZmZmNWMwZDI2MzBlZTBhMjdlOGQ2ZDFwLTEsCi0gICAgMHgxLjJkOTdjOHA0LAotICB9LAotICB7IC8vIEVudHJ5IDc1NgotICAgIC0weDEuOTliYzViOTYxYjFhYTFjOWU4MDIzMDc0ZjM0MDZmZDlwLTI1LAotICAgIDB4MS5mZmZmZmZmZmZmZmY1YzBkMjYzMGVlMGEyN2U4ZDZkMXAtMSwKLSAgICAtMHgxLjJkOTdjOHA0LAotICB9LAotICB7IC8vIEVudHJ5IDc1NwotICAgIDB4MS42YTA5OTQ5ZTFjZTFlYzUwMWFmY2IzNWQ3MzFiZjYyY3AtMSwKLSAgICAweDEuNmEwYTM4MzFiODFkOTQ5NjZhZDhkZjRkMzc4ODI0ZjlwLTEsCi0gICAgMHgxLjNhMjhjMnA0LAotICB9LAotICB7IC8vIEVudHJ5IDc1OAotICAgIC0weDEuNmEwOTk0OWUxY2UxZWM1MDFhZmNiMzVkNzMxYmY2MmNwLTEsCi0gICAgMHgxLjZhMGEzODMxYjgxZDk0OTY2YWQ4ZGY0ZDM3ODgyNGY5cC0xLAotICAgIC0weDEuM2EyOGMycDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU5Ci0gICAgMHgxLjZhMDljMWRmNjExNDEwMGM2NWQxZmY2YzU1NzU1ZTcycC0xLAotICAgIDB4MS42YTBhMGFmMDgyYjViY2E3ZjU1NjlmNGRhNjg4M2Y2NHAtMSwKLSAgICAweDEuM2EyOGM0cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYwCi0gICAgLTB4MS42YTA5YzFkZjYxMTQxMDBjNjVkMWZmNmM1NTc1NWU3MnAtMSwKLSAgICAweDEuNmEwYTBhZjA4MmI1YmNhN2Y1NTY5ZjRkYTY4ODNmNjRwLTEsCi0gICAgLTB4MS4zYTI4YzRwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjEKLSAgICAweDEuNmEwOWVmMjA5ZjllMGNjMTMzMjRkZGYyYjM2MTU1M2ZwLTEsCi0gICAgMHgxLjZhMDlkZGFmNDdhNWJjOGRiZGNiNmIxMzg0NDkwMmFlcC0xLAotICAgIDB4MS4zYTI4YzZwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjIKLSAgICAtMHgxLjZhMDllZjIwOWY5ZTBjYzEzMzI0ZGRmMmIzNjE1NTNmcC0xLAotICAgIDB4MS42YTA5ZGRhZjQ3YTViYzhkYmRjYjZiMTM4NDQ5MDJhZXAtMSwKLSAgICAtMHgxLjNhMjhjNnA0LAotICB9LAotICB7IC8vIEVudHJ5IDc2MwotICAgIDB4MS5mZmZmZmZmZmY1M2Y0NzZlYzRmNTlmMjZjNGJjZGZhMHAtMSwKLSAgICAweDEuYTNiYjI1MWRjN2VmYWExZTIxMzdiYjM3ZWQ2NjU0ZGJwLTE5LAotICAgIDB4MS40NmI5YzBwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjQKLSAgICAtMHgxLmZmZmZmZmZmZjUzZjQ3NmVjNGY1OWYyNmM0YmNkZmEwcC0xLAotICAgIDB4MS5hM2JiMjUxZGM3ZWZhYTFlMjEzN2JiMzdlZDY2NTRkYnAtMTksCi0gICAgLTB4MS40NmI5YzBwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjUKLSAgICAweDEuZmZmZmZmZmZmZTVkMjA5N2IzNDMzNGFkNjc5ZGQ3YTRwLTEsCi0gICAgMHgxLjQ3NzY0YTNiOTU2Njc1OGU1YmFhMmUzMDI5ZjFhYmJhcC0yMCwKLSAgICAweDEuNDZiOWMycDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY2Ci0gICAgLTB4MS5mZmZmZmZmZmZlNWQyMDk3YjM0MzM0YWQ2NzlkZDdhNHAtMSwKLSAgICAweDEuNDc3NjRhM2I5NTY2NzU4ZTViYWEyZTMwMjlmMWFiYmFwLTIwLAotICAgIC0weDEuNDZiOWMycDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY3Ci0gICAgMHgxLmZmZmZmZmZmZmY3YWY5YzBhMTlhMDA1YzU2NWM2YWY3cC0xLAotICAgIC0weDEuNzExMzZiODhkNDYwODQ5MGYyZGRmZTkwMTAxMTEyYWVwLTIxLAotICAgIDB4MS40NmI5YzRwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjgKLSAgICAtMHgxLmZmZmZmZmZmZmY3YWY5YzBhMTlhMDA1YzU2NWM2YWY3cC0xLAotICAgIC0weDEuNzExMzZiODhkNDYwODQ5MGYyZGRmZTkwMTAxMTEyYWVwLTIxLAotICAgIC0weDEuNDZiOWM0cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY5Ci0gICAgMHgxLjZhMGEyOTAzZDc3MzkyNWIwNTJmYjAwNmFjNjcwYzIzcC0xLAotICAgIC0weDEuNmEwOWEzY2MwM2M0YmJhZDIyMjJkZmU1YmUzMTc1NjVwLTEsCi0gICAgMHgxLjUzNGFiZXA0LAotICB9LAotICB7IC8vIEVudHJ5IDc3MAotICAgIC0weDEuNmEwYTI5MDNkNzczOTI1YjA1MmZiMDA2YWM2NzBjMjNwLTEsCi0gICAgLTB4MS42YTA5YTNjYzAzYzRiYmFkMjIyMmRmZTViZTMxNzU2NXAtMSwKLSAgICAtMHgxLjUzNGFiZXA0LAotICB9LAotICB7IC8vIEVudHJ5IDc3MQotICAgIDB4MS42YTA5ZmJjMmEwMjVmZGFlOTE4NDY2ZmEwMDE0MjE0M3AtMSwKLSAgICAtMHgxLjZhMDlkMTBkNDYxMTIzMzVkMGU0M2Q3MzgzODdkZThjcC0xLAotICAgIDB4MS41MzRhYzBwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzIKLSAgICAtMHgxLjZhMDlmYmMyYTAyNWZkYWU5MTg0NjZmYTAwMTQyMTQzcC0xLAotICAgIC0weDEuNmEwOWQxMGQ0NjExMjMzNWQwZTQzZDczODM4N2RlOGNwLTEsCi0gICAgLTB4MS41MzRhYzBwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzMKLSAgICAweDEuNmEwOWNlODE2MzMwNDExMzEzNWE2OGFlOTNkM2ZhMGVwLTEsCi0gICAgLTB4MS42YTA5ZmU0ZTgyYjU2MzdhNGE4ZjM5MmMzMzAxYmU5NHAtMSwKLSAgICAweDEuNTM0YWMycDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc0Ci0gICAgLTB4MS42YTA5Y2U4MTYzMzA0MTEzMTM1YTY4YWU5M2QzZmEwZXAtMSwKLSAgICAtMHgxLjZhMDlmZTRlODJiNTYzN2E0YThmMzkyYzMzMDFiZTk0cC0xLAotICAgIC0weDEuNTM0YWMycDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc1Ci0gICAgMHgxLjRkZGQzYmE5ZWNiMTlkNmJiNmVhMTYxMTIwZTQ0N2I5cC0xOSwKLSAgICAtMHgxLmZmZmZmZmZmZjkzMjVhY2U1ZjY4MmJiYjhiMTIyYTA5cC0xLAotICAgIDB4MS41ZmRiYmNwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzYKLSAgICAtMHgxLjRkZGQzYmE5ZWNiMTlkNmJiNmVhMTYxMTIwZTQ0N2I5cC0xOSwKLSAgICAtMHgxLmZmZmZmZmZmZjkzMjVhY2U1ZjY4MmJiYjhiMTIyYTA5cC0xLAotICAgIC0weDEuNWZkYmJjcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc3Ci0gICAgMHgxLjM3NzRlZWE3Yjg5ZDgwZGY3ODE2ZmUyMDhlYzY5ZmMwcC0yMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZhMTQ0YWJhZWQ1YjRhYWI4ODA2MzVkcC0xLAotICAgIDB4MS41ZmRiYmVwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzgKLSAgICAtMHgxLjM3NzRlZWE3Yjg5ZDgwZGY3ODE2ZmUyMDhlYzY5ZmMwcC0yMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZhMTQ0YWJhZWQ1YjRhYWI4ODA2MzVkcC0xLAotICAgIC0weDEuNWZkYmJlcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc5Ci0gICAgLTB4MS42NDQ1ODhhYzIzMzRhM2Q1NDUyZDk5NjAyODJjZjgwZHAtMjAsCi0gICAgLTB4MS5mZmZmZmZmZmZlMTAyZTg4ZmU0NzYzMzFlMWRkZWZhZnAtMSwKLSAgICAweDEuNWZkYmMwcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgwCi0gICAgMHgxLjY0NDU4OGFjMjMzNGEzZDU0NTJkOTk2MDI4MmNmODBkcC0yMCwKLSAgICAtMHgxLmZmZmZmZmZmZmUxMDJlODhmZTQ3NjMzMWUxZGRlZmFmcC0xLAotICAgIC0weDEuNWZkYmMwcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgxCi0gICAgLTB4MS42YTA5YjJmOWVhMDQ5ZTg1NWUzNWNhOWNlN2UwZDg5YXAtMSwKLSAgICAtMHgxLjZhMGExOWQ1ZjYyNmEzNWVlMTEyYTM0NjM4ZTA3ODA4cC0xLAotICAgIDB4MS42YzZjYmFwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODIKLSAgICAweDEuNmEwOWIyZjllYTA0OWU4NTVlMzVjYTljZTdlMGQ4OWFwLTEsCi0gICAgLTB4MS42YTBhMTlkNWY2MjZhMzVlZTExMmEzNDYzOGUwNzgwOHAtMSwKLSAgICAtMHgxLjZjNmNiYXA0LAotICB9LAotICB7IC8vIEVudHJ5IDc4MwotICAgIC0weDEuNmEwOWUwM2IyYTZiNDljNjEzNGM2N2I0MmJhZWU2NjhwLTEsCi0gICAgLTB4MS42YTA5ZWM5NGJjZjM1MjA4Y2NkMDMwNjg0ZDVkZGQ5Y3AtMSwKLSAgICAweDEuNmM2Y2JjcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzg0Ci0gICAgMHgxLjZhMDllMDNiMmE2YjQ5YzYxMzRjNjdiNDJiYWVlNjY4cC0xLAotICAgIC0weDEuNmEwOWVjOTRiY2YzNTIwOGNjZDAzMDY4NGQ1ZGRkOWNwLTEsCi0gICAgLTB4MS42YzZjYmNwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODUKLSAgICAtMHgxLjZhMGEwZDdjNjUyOWNkODVkYmJiM2E1YzJjZDNmYWU1cC0xLAotICAgIC0weDEuNmEwOWJmNTM3ZTE3ZDkwMDY1OWJkMmZhMjRjM2E4YzhwLTEsCi0gICAgMHgxLjZjNmNiZXA0LAotICB9LAotICB7IC8vIEVudHJ5IDc4NgotICAgIDB4MS42YTBhMGQ3YzY1MjljZDg1ZGJiYjNhNWMyY2QzZmFlNXAtMSwKLSAgICAtMHgxLjZhMDliZjUzN2UxN2Q5MDA2NTliZDJmYTI0YzNhOGM4cC0xLAotICAgIC0weDEuNmM2Y2JlcDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzg3Ci0gICAgLTB4MS5mZmZmZmZmZmYwN2YwYWIxMmFhOGY0MWYyOWMxNTM5MnAtMSwKLSAgICAtMHgxLmY3ZmY1MjM2MGM2MjJiM2Y5NGQ5YzcyNTBiZmFkOGQ0cC0xOSwKLSAgICAweDEuNzhmZGI2cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzg4Ci0gICAgMHgxLmZmZmZmZmZmZjA3ZjBhYjEyYWE4ZjQxZjI5YzE1MzkycC0xLAotICAgIC0weDEuZjdmZjUyMzYwYzYyMmIzZjk0ZDljNzI1MGJmYWQ4ZDRwLTE5LAotICAgIC0weDEuNzhmZGI2cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzg5Ci0gICAgLTB4MS5mZmZmZmZmZmZjM2YwNTQyZGIyMWRjYmNiODQ3ZGFjM3AtMSwKLSAgICAtMHgxLmVmZmVhNDZjMjFiYWEzZGE3YzI2NmM5NTNhMDEzNTk4cC0yMCwKLSAgICAweDEuNzhmZGI4cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzkwCi0gICAgMHgxLmZmZmZmZmZmZmMzZjA1NDJkYjIxZGNiY2I4NDdkYWMzcC0xLAotICAgIC0weDEuZWZmZWE0NmMyMWJhYTNkYTdjMjY2Yzk1M2EwMTM1OThwLTIwLAotICAgIC0weDEuNzhmZGI4cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzkxCi0gICAgLTB4MS5mZmZmZmZmZmZmZmVmZmQ0OGJhYzczZWZlNjBjN2ZjZnAtMSwKLSAgICAweDEuMDAxNWI5M2RkMGYwOTViZTFlYjBhNWI4N2ZlNWUzM2VwLTI0LAotICAgIDB4MS43OGZkYmFwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTIKLSAgICAweDEuZmZmZmZmZmZmZmZlZmZkNDhiYWM3M2VmZTYwYzdmY2ZwLTEsCi0gICAgMHgxLjAwMTViOTNkZDBmMDk1YmUxZWIwYTViODdmZTVlMzNlcC0yNCwKLSAgICAtMHgxLjc4ZmRiYXA0LAotICB9LAotICB7IC8vIEVudHJ5IDc5MwotICAgIC0weDEuNmEwYTM3ZTk0OWE3YWQ2OThhMzIyMzRjNzNlNWFmYmFwLTEsCi0gICAgMHgxLjZhMDk5NGU2OGI3ODdlZTRmZDY4MzBiMjg4MjI1NzQ1cC0xLAotICAgIDB4MS44NThlYjRwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTQKLSAgICAweDEuNmEwYTM3ZTk0OWE3YWQ2OThhMzIyMzRjNzNlNWFmYmFwLTEsCi0gICAgMHgxLjZhMDk5NGU2OGI3ODdlZTRmZDY4MzBiMjg4MjI1NzQ1cC0xLAotICAgIC0weDEuODU4ZWI0cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzk1Ci0gICAgLTB4MS42YTBhMGFhODE0MzZjN2E4ZDMzYTM4ZDcwNDAzMGQxNHAtMSwKLSAgICAweDEuNmEwOWMyMjdjZmExOTRkMWZhN2FiOTkwOWRlNTA4M2NwLTEsCi0gICAgMHgxLjg1OGViNnA0LAotICB9LAotICB7IC8vIEVudHJ5IDc5NgotICAgIDB4MS42YTBhMGFhODE0MzZjN2E4ZDMzYTM4ZDcwNDAzMGQxNHAtMSwKLSAgICAweDEuNmEwOWMyMjdjZmExOTRkMWZhN2FiOTkwOWRlNTA4M2NwLTEsCi0gICAgLTB4MS44NThlYjZwNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTcKLSAgICAtMHgxLjZhMDlkZDY2ZDkxZGI5YmQ3YmYzNTVmYWZmMDhmMTk0cC0xLAotICAgIDB4MS42YTA5ZWY2OTBlMjI4M2I2NTg1MDllZDMxOTQ4MzgzOXAtMSwKLSAgICAweDEuODU4ZWI4cDQsCi0gIH0sCi0gIHsgLy8gRW50cnkgNzk4Ci0gICAgMHgxLjZhMDlkZDY2ZDkxZGI5YmQ3YmYzNTVmYWZmMDhmMTk0cC0xLAotICAgIDB4MS42YTA5ZWY2OTBlMjI4M2I2NTg1MDllZDMxOTQ4MzgzOXAtMSwKLSAgICAtMHgxLjg1OGViOHA0LAotICB9LAotICB7IC8vIEVudHJ5IDc5OQotICAgIDB4MS5jMDQ4YjM4YThiYmY1OWY0MTRmZWM3MDc5MjA5OTI2ZXAtMywKLSAgICAtMHgxLmYzOTU3YmFkNzBlMDc0MWYxZDNkNjc1MTI0NmNlMjFhcC0xLAotICAgIDB4MS5mZmZmZmVwNjIsCi0gIH0sCi0gIHsgLy8gRW50cnkgODAwCi0gICAgLTB4MS5jMDQ4YjM4YThiYmY1OWY0MTRmZWM3MDc5MjA5OTI2ZXAtMywKLSAgICAtMHgxLmYzOTU3YmFkNzBlMDc0MWYxZDNkNjc1MTI0NmNlMjFhcC0xLAotICAgIC0weDEuZmZmZmZlcDYyLAotICB9LAotICB7IC8vIEVudHJ5IDgwMQotICAgIDB4MS5mZmY2ZGZkNDJkYzU0NDMwYmMwNTc2YjAwYTg4YmQ5NHAtMSwKLSAgICAweDEuODJhYTM3NWIzYzMzZTcwNjYzNzMxYmFiNGJlYjZlZDNwLTcsCi0gICAgMHgxLnA2MywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDIKLSAgICAtMHgxLmZmZjZkZmQ0MmRjNTQ0MzBiYzA1NzZiMDBhODhiZDk0cC0xLAotICAgIDB4MS44MmFhMzc1YjNjMzNlNzA2NjM3MzFiYWI0YmViNmVkM3AtNywKLSAgICAtMHgxLnA2MywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDMKLSAgICAtMHgxLmQ2NjM3ZDA3MDM0N2VlOTRlODMwNDQ1ZTc2NDg2NzI3cC0xLAotICAgIDB4MS45NDVlNmM2OWE1ODBmYjdiYjI3ZDAyYzBmZTBmOGE3MXAtMiwKLSAgICAweDEuMDAwMDAycDYzLAotICB9LAotICB7IC8vIEVudHJ5IDgwNAotICAgIDB4MS5kNjYzN2QwNzAzNDdlZTk0ZTgzMDQ0NWU3NjQ4NjcyN3AtMSwKLSAgICAweDEuOTQ1ZTZjNjlhNTgwZmI3YmIyN2QwMmMwZmUwZjhhNzFwLTIsCi0gICAgLTB4MS4wMDAwMDJwNjMsCi0gIH0sCi0gIHsgLy8gRW50cnkgODA1Ci0gICAgLTB4MS4wZTUyODM2NjFkZjBjYTBmNTVhYjYxNjdlMTQ1MTRhMXAtMSwKLSAgICAtMHgxLmIyZDI1NWYyYmQwNDIzZTI5ZTJhNTQ4NzI4ZjAzNGFicC0xLAotICAgIDB4MS5mZmZmZmVwMjYsCi0gIH0sCi0gIHsgLy8gRW50cnkgODA2Ci0gICAgMHgxLjBlNTI4MzY2MWRmMGNhMGY1NWFiNjE2N2UxNDUxNGExcC0xLAotICAgIC0weDEuYjJkMjU1ZjJiZDA0MjNlMjllMmE1NDg3MjhmMDM0YWJwLTEsCi0gICAgLTB4MS5mZmZmZmVwMjYsCi0gIH0sCi0gIHsgLy8gRW50cnkgODA3Ci0gICAgLTB4MS44NmRjYzliYWJiMGE0MGVlODc1Y2FiM2I5ZTg5Mjc1N3AtMSwKLSAgICAweDEuNGFiNjUxMWE3ZDM5YWQzY2M4OGRlZDFlNzc1Y2ExNDdwLTEsCi0gICAgMHgxLnAyNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDgKLSAgICAweDEuODZkY2M5YmFiYjBhNDBlZTg3NWNhYjNiOWU4OTI3NTdwLTEsCi0gICAgMHgxLjRhYjY1MTFhN2QzOWFkM2NjODhkZWQxZTc3NWNhMTQ3cC0xLAotICAgIC0weDEucDI3LAotICB9LAotICB7IC8vIEVudHJ5IDgwOQotICAgIDB4MS4xNzE5OTliNjI5ZmQ1YjYzNTdjNmRmZjRkNzgyN2Q5NXAtMSwKLSAgICAtMHgxLmFkM2Q4MGM4MmY0NDUyYjA3NjU4MWRlMjQ2NDg0MzVicC0xLAotICAgIDB4MS4wMDAwMDJwMjcsCi0gIH0sCi0gIHsgLy8gRW50cnkgODEwCi0gICAgLTB4MS4xNzE5OTliNjI5ZmQ1YjYzNTdjNmRmZjRkNzgyN2Q5NXAtMSwKLSAgICAtMHgxLmFkM2Q4MGM4MmY0NDUyYjA3NjU4MWRlMjQ2NDg0MzVicC0xLAotICAgIC0weDEuMDAwMDAycDI3LAotICB9LAotICB7IC8vIEVudHJ5IDgxMQotICAgIC0weDEuZTU3ZWMwOTIyMTk3MzU1MGQxZTU3OThkY2YwY2QyNWRwLTEsCi0gICAgLTB4MS40NTMyYzM3MjFlZDQzNDNhZDg4ZWVhODkwOGE5ODhjYnAtMiwKLSAgICAweDEuZmZmZmZlcDIzLAotICB9LAotICB7IC8vIEVudHJ5IDgxMgotICAgIDB4MS5lNTdlYzA5MjIxOTczNTUwZDFlNTc5OGRjZjBjZDI1ZHAtMSwKLSAgICAtMHgxLjQ1MzJjMzcyMWVkNDM0M2FkODhlZWE4OTA4YTk4OGNicC0yLAotICAgIC0weDEuZmZmZmZlcDIzLAotICB9LAotICB7IC8vIEVudHJ5IDgxMwotICAgIC0weDEuOGYyMmY4NDMzZDZlZGZlOWE0YWZmOTYyMjUxN2NhYTlwLTEsCi0gICAgMHgxLjQwYWQ2N2YzZjBjOWExNDM5NjNjOWM5NmRiY2UzZjhhcC0xLAotICAgIDB4MS5wMjQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODE0Ci0gICAgMHgxLjhmMjJmODQzM2Q2ZWRmZTlhNGFmZjk2MjI1MTdjYWE5cC0xLAotICAgIDB4MS40MGFkNjdmM2YwYzlhMTQzOTYzYzljOTZkYmNlM2Y4YXAtMSwKLSAgICAtMHgxLnAyNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTUKLSAgICAweDEuYzliMGM3MjY1YzU0M2Y4MGZhZjAxNzQxYzY0NTg1NjBwLTEsCi0gICAgMHgxLmNhZjg1MzdjM2U0NDJjYThhY2E4NmMxNTY3NzM4NTNhcC0yLAotICAgIDB4MS4wMDAwMDJwMjQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODE2Ci0gICAgLTB4MS5jOWIwYzcyNjVjNTQzZjgwZmFmMDE3NDFjNjQ1ODU2MHAtMSwKLSAgICAweDEuY2FmODUzN2MzZTQ0MmNhOGFjYTg2YzE1Njc3Mzg1M2FwLTIsCi0gICAgLTB4MS4wMDAwMDJwMjQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODE3Ci0gICAgLTB4MS44MzdiOThhMzE4NWQxNDY2ZDg1MmYwYTdkYzFkMjQ4ZXAtMSwKLSAgICAtMHgxLjRlYWE2NjdiYTBiOTBkZmIwNWFiM2Q5YzI0N2NkZWU3cC0xLAotICAgIDB4MS5mZmZmZmVwMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTgKLSAgICAweDEuODM3Yjk4YTMxODVkMTQ2NmQ4NTJmMGE3ZGMxZDI0OGVwLTEsCi0gICAgLTB4MS40ZWFhNjY3YmEwYjkwZGZiMDVhYjNkOWMyNDdjZGVlN3AtMSwKLSAgICAtMHgxLmZmZmZmZXAxLAotICB9LAotICB7IC8vIEVudHJ5IDgxOQotICAgIC0weDEuODM3YjlkZGRjMWVhZTcwY2U5ODA1NWEwZTQ1MGQ5M2NwLTEsCi0gICAgLTB4MS40ZWFhNjA2ZGIyNGMwYzQ2NmRhMWMyZGM3YmFhMmIzMnAtMSwKLSAgICAweDEucDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgODIwCi0gICAgMHgxLjgzN2I5ZGRkYzFlYWU3MGNlOTgwNTVhMGU0NTBkOTNjcC0xLAotICAgIC0weDEuNGVhYTYwNmRiMjRjMGM0NjZkYTFjMmRjN2JhYTJiMzJwLTEsCi0gICAgLTB4MS5wMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjEKLSAgICAtMHgxLjgzN2JhODUzMTRiZGU1MmIxZTljMmM4ZWQyNzEyYzcycC0xLAotICAgIC0weDEuNGVhYTU0NTFkNTMzNDhlYjg5ZGM0NzhkNGQxMWJlMDJwLTEsCi0gICAgMHgxLjAwMDAwMnAyLAotICB9LAotICB7IC8vIEVudHJ5IDgyMgotICAgIDB4MS44MzdiYTg1MzE0YmRlNTJiMWU5YzJjOGVkMjcxMmM3MnAtMSwKLSAgICAtMHgxLjRlYWE1NDUxZDUzMzQ4ZWI4OWRjNDc4ZDRkMTFiZTAycC0xLAotICAgIC0weDEuMDAwMDAycDIsCi0gIH0sCi0gIHsgLy8gRW50cnkgODIzCi0gICAgMHgxLmQxOGY3MDU3M2RhNjMwMTJmYTFjMGUzZDJlYmJlNTljcC0xLAotICAgIC0weDEuYWEyMjVlMmVmOTYyNDE5MTViNmZkMjE3NTIyODE0ZjVwLTIsCi0gICAgMHgxLmZmZmZmZXAwLAotICB9LAotICB7IC8vIEVudHJ5IDgyNAotICAgIC0weDEuZDE4ZjcwNTczZGE2MzAxMmZhMWMwZTNkMmViYmU1OWNwLTEsCi0gICAgLTB4MS5hYTIyNWUyZWY5NjI0MTkxNWI2ZmQyMTc1MjI4MTRmNXAtMiwKLSAgICAtMHgxLmZmZmZmZXAwLAotICB9LAotICB7IC8vIEVudHJ5IDgyNQotICAgIDB4MS5kMThmNmVhZDFiNDQ1ZGZhYjg0ODE4ODAwOWM5YmI5NXAtMSwKLSAgICAtMHgxLmFhMjI2NTc1MzcyMDRhNDMzMmY4YWNiYjcyYjBkNzY4cC0yLAotICAgIDB4MS5wMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjYKLSAgICAtMHgxLmQxOGY2ZWFkMWI0NDVkZmFiODQ4MTg4MDA5YzliYjk1cC0xLAotICAgIC0weDEuYWEyMjY1NzUzNzIwNGE0MzMyZjhhY2JiNzJiMGQ3NjhwLTIsCi0gICAgLTB4MS5wMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjcKLSAgICAweDEuZDE4ZjZiNThkNjZhZTcxMTBiMmI2ZjdjZmZiYTZlYzFwLTEsCi0gICAgLTB4MS5hYTIyNzQwMWIyODg2MjBhMDM3MmQ1YTk2MDg0OTE1ZHAtMiwKLSAgICAweDEuMDAwMDAycDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgODI4Ci0gICAgLTB4MS5kMThmNmI1OGQ2NmFlNzExMGIyYjZmN2NmZmJhNmVjMXAtMSwKLSAgICAtMHgxLmFhMjI3NDAxYjI4ODYyMGEwMzcyZDVhOTYwODQ5MTVkcC0yLAotICAgIC0weDEuMDAwMDAycDEsCi0gIH0sCi0gIHsgLy8gRW50cnkgODI5Ci0gICAgMHgxLmFlZDU0N2RiZWU0ZDBkODY4MGQwODEzZDFlNGUyMWQwcC0xLAotICAgIDB4MS4xNGEyODJhYTI1YjExZjYzMTJhN2E2NTE4MGU3YzNkNHAtMSwKLSAgICAweDEuZmZmZmZlcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDgzMAotICAgIC0weDEuYWVkNTQ3ZGJlZTRkMGQ4NjgwZDA4MTNkMWU0ZTIxZDBwLTEsCi0gICAgMHgxLjE0YTI4MmFhMjViMTFmNjMxMmE3YTY1MTgwZTdjM2Q0cC0xLAotICAgIC0weDEuZmZmZmZlcC0xLAotICB9LAotICB7IC8vIEVudHJ5IDgzMQotICAgIDB4MS5hZWQ1NDhmMDkwY2VlMDQxOGRkM2QyMTM4YTFlNzg2NXAtMSwKLSAgICAweDEuMTRhMjgwZmI1MDY4YjkyMzg0OGNkYjJlZDBlMzdhNTNwLTEsCi0gICAgMHgxLnAwLAotICB9LAotICB7IC8vIEVudHJ5IDgzMgotICAgIC0weDEuYWVkNTQ4ZjA5MGNlZTA0MThkZDNkMjEzOGExZTc4NjVwLTEsCi0gICAgMHgxLjE0YTI4MGZiNTA2OGI5MjM4NDhjZGIyZWQwZTM3YTUzcC0xLAotICAgIC0weDEucDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgODMzCi0gICAgMHgxLmFlZDU0YjE5ZDVjZDc5MzdjYmY0MWVkNDA4Y2EwYTUycC0xLAotICAgIDB4MS4xNGEyN2Q5ZGE1ZDRhZWJjZTcxNDI4ZjkwNTdiMDhkYXAtMSwKLSAgICAweDEuMDAwMDAycDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgODM0Ci0gICAgLTB4MS5hZWQ1NGIxOWQ1Y2Q3OTM3Y2JmNDFlZDQwOGNhMGE1MnAtMSwKLSAgICAweDEuMTRhMjdkOWRhNWQ0YWViY2U3MTQyOGY5MDU3YjA4ZGFwLTEsCi0gICAgLTB4MS4wMDAwMDJwMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzUKLSAgICAweDEuZWFlZTg1ODM1ZGRlNWI3MWJlZWM3ZDhkOTgwNTIxMTJwLTIsCi0gICAgMHgxLmMxNTI4MGUwNzM3NjkyZGQ0MzY5MDhmZGM4ZTZlMmUxcC0xLAotICAgIDB4MS5mZmZmZmVwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgODM2Ci0gICAgLTB4MS5lYWVlODU4MzVkZGU1YjcxYmVlYzdkOGQ5ODA1MjExMnAtMiwKLSAgICAweDEuYzE1MjgwZTA3Mzc2OTJkZDQzNjkwOGZkYzhlNmUyZTFwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTIsCi0gIH0sCi0gIHsgLy8gRW50cnkgODM3Ci0gICAgMHgxLmVhZWU4NzQ0YjA1ZWZlODc2NGJjMzY0ZmQ4MzdiNjY2cC0yLAotICAgIDB4MS5jMTUyODA2NWI3ZDRmOWRiN2JiYjNiNDVmNWY1YjMwYXAtMSwKLSAgICAweDEucC0xLAotICB9LAotICB7IC8vIEVudHJ5IDgzOAotICAgIC0weDEuZWFlZTg3NDRiMDVlZmU4NzY0YmMzNjRmZDgzN2I2NjZwLTIsCi0gICAgMHgxLmMxNTI4MDY1YjdkNGY5ZGI3YmJiM2I0NWY1ZjViMzBhcC0xLAotICAgIC0weDEucC0xLAotICB9LAotICB7IC8vIEVudHJ5IDgzOQotICAgIDB4MS5lYWVlOGFjNzU1NWVkNDdmY2E3N2NlZWQxNzRjOGVhMHAtMiwKLSAgICAweDEuYzE1MjdmNzA0MDkwNzZkYTBjMzIwNGRmMWUwOTlhODNwLTEsCi0gICAgMHgxLjAwMDAwMnAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDAKLSAgICAtMHgxLmVhZWU4YWM3NTU1ZWQ0N2ZjYTc3Y2VlZDE3NGM4ZWEwcC0yLAotICAgIDB4MS5jMTUyN2Y3MDQwOTA3NmRhMGMzMjA0ZGYxZTA5OWE4M3AtMSwKLSAgICAtMHgxLjAwMDAwMnAtMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDEKLSAgICAweDEuZmFhZWViNWYxYzBkNjNmNDNjNmYzZWM0NjAxMTY5MGZwLTMsCi0gICAgMHgxLmYwMTU0YTE3ODlkOGRjYzE3MmNkMjA5MmQwNWY2Mzk0cC0xLAotICAgIDB4MS5mZmZmZmVwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgODQyCi0gICAgLTB4MS5mYWFlZWI1ZjFjMGQ2M2Y0M2M2ZjNlYzQ2MDExNjkwZnAtMywKLSAgICAweDEuZjAxNTRhMTc4OWQ4ZGNjMTcyY2QyMDkyZDA1ZjYzOTRwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTMsCi0gIH0sCi0gIHsgLy8gRW50cnkgODQzCi0gICAgMHgxLmZhYWVlZDRmMzE1NzZiYTg5ZGViZGM3MzUxZThiMWFlcC0zLAotICAgIDB4MS5mMDE1NDlmN2RlZWExNzRmMDdhNjc5NzJiZjI5ZjE0OHAtMSwKLSAgICAweDEucC0yLAotICB9LAotICB7IC8vIEVudHJ5IDg0NAotICAgIC0weDEuZmFhZWVkNGYzMTU3NmJhODlkZWJkYzczNTFlOGIxYWVwLTMsCi0gICAgMHgxLmYwMTU0OWY3ZGVlYTE3NGYwN2E2Nzk3MmJmMjlmMTQ4cC0xLAotICAgIC0weDEucC0yLAotICB9LAotICB7IC8vIEVudHJ5IDg0NQotICAgIDB4MS5mYWFlZjEyZjViZWIxYzEwOTQ0NzNkM2MzMzY1YjllMXAtMywKLSAgICAweDEuZjAxNTQ5Yjg4OTBjMmY2NjMzN2NhYzE1YTcyMzdjOGVwLTEsCi0gICAgMHgxLjAwMDAwMnAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDYKLSAgICAtMHgxLmZhYWVmMTJmNWJlYjFjMTA5NDQ3M2QzYzMzNjViOWUxcC0zLAotICAgIDB4MS5mMDE1NDliODg5MGMyZjY2MzM3Y2FjMTVhNzIzN2M4ZXAtMSwKLSAgICAtMHgxLjAwMDAwMnAtMiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDcKLSAgICAweDEuZmVhYWVjZWM2ZDhlMzBjZDU2OTUwZWIyZWJkY2ViZDRwLTQsCi0gICAgMHgxLmZjMDE1NTJmZDA2OGVlODNmNWI3NDJjMDUyNDVlOGIycC0xLAotICAgIDB4MS5mZmZmZmVwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ4Ci0gICAgLTB4MS5mZWFhZWNlYzZkOGUzMGNkNTY5NTBlYjJlYmRjZWJkNHAtNCwKLSAgICAweDEuZmMwMTU1MmZkMDY4ZWU4M2Y1Yjc0MmMwNTI0NWU4YjJwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ5Ci0gICAgMHgxLmZlYWFlZWU4NmVlMzVjYTA2OWE4NjcyMWY4OWY4NWE1cC00LAotICAgIDB4MS5mYzAxNTUyN2Q1YmQzNmRhM2NkNDI1M2JlZGUzMTljYXAtMSwKLSAgICAweDEucC0zLAotICB9LAotICB7IC8vIEVudHJ5IDg1MAotICAgIC0weDEuZmVhYWVlZTg2ZWUzNWNhMDY5YTg2NzIxZjg5Zjg1YTVwLTQsCi0gICAgMHgxLmZjMDE1NTI3ZDViZDM2ZGEzY2Q0MjUzYmVkZTMxOWNhcC0xLAotICAgIC0weDEucC0zLAotICB9LAotICB7IC8vIEVudHJ5IDg1MQotICAgIDB4MS5mZWFhZjJlMDcxOGQ5YzU2OGM5NDQyYzgxNTQ1Y2Q2MnAtNCwKLSAgICAweDEuZmMwMTU1MTdlMDY1YWZiNmJiMTAyYzE4ZjU5MTk4MjBwLTEsCi0gICAgMHgxLjAwMDAwMnAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTIKLSAgICAtMHgxLmZlYWFmMmUwNzE4ZDljNTY4Yzk0NDJjODE1NDVjZDYycC00LAotICAgIDB4MS5mYzAxNTUxN2UwNjVhZmI2YmIxMDJjMThmNTkxOTgyMHAtMSwKLSAgICAtMHgxLjAwMDAwMnAtMywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTMKLSAgICAweDEuZmZhYWFjZWZkNGQ4NTVhYzgyMjc3OTlmM2UyNjNkN2FwLTUsCi0gICAgMHgxLmZmMDAxNTU2OWVmN2UyYjk2MzAxZTZmNzUyYzAxOWQ0cC0xLAotICAgIDB4MS5mZmZmZmVwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgODU0Ci0gICAgLTB4MS5mZmFhYWNlZmQ0ZDg1NWFjODIyNzc5OWYzZTI2M2Q3YXAtNSwKLSAgICAweDEuZmYwMDE1NTY5ZWY3ZTJiOTYzMDFlNmY3NTJjMDE5ZDRwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTUsCi0gIH0sCi0gIHsgLy8gRW50cnkgODU1Ci0gICAgMHgxLmZmYWFhZWVlZDRlZGFiNGJhNGIzNjVlZDI1YTk1OTVmcC01LAotICAgIDB4MS5mZjAwMTU1NDlmNGQzNGNhMGUxZWU2NTA5YmM0MmI3MXAtMSwKLSAgICAweDEucC00LAotICB9LAotICB7IC8vIEVudHJ5IDg1NgotICAgIC0weDEuZmZhYWFlZWVkNGVkYWI0YmE0YjM2NWVkMjVhOTU5NWZwLTUsCi0gICAgMHgxLmZmMDAxNTU0OWY0ZDM0Y2EwZTFlZTY1MDliYzQyYjcxcC0xLAotICAgIC0weDEucC00LAotICB9LAotICB7IC8vIEVudHJ5IDg1NwotICAgIDB4MS5mZmFhYjJlY2Q1MTg1MDhhZTliYzczMGExNjVhOGVhZHAtNSwKLSAgICAweDEuZmYwMDE1NTA5ZmY3ZDJlZTY0MThlOTI0ZjBkZTVlOTdwLTEsCi0gICAgMHgxLjAwMDAwMnAtNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTgKLSAgICAtMHgxLmZmYWFiMmVjZDUxODUwOGFlOWJjNzMwYTE2NWE4ZWFkcC01LAotICAgIDB4MS5mZjAwMTU1MDlmZjdkMmVlNjQxOGU5MjRmMGRlNWU5N3AtMSwKLSAgICAtMHgxLjAwMDAwMnAtNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTkKLSAgICAweDEuZmZlYWE4ZWYyZTg1OTMzODgzYzBkYzMzNDYyMzg3YjVwLTYsCi0gICAgMHgxLmZmYzAwMTU1ZDI3N2Q1OGU3MjdjZDk1YzQzZjc1OWNmcC0xLAotICAgIDB4MS5mZmZmZmVwLTYsCi0gIH0sCi0gIHsgLy8gRW50cnkgODYwCi0gICAgLTB4MS5mZmVhYThlZjJlODU5MzM4ODNjMGRjMzM0NjIzODdiNXAtNiwKLSAgICAweDEuZmZjMDAxNTVkMjc3ZDU4ZTcyN2NkOTVjNDNmNzU5Y2ZwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTYsCi0gIH0sCi0gIHsgLy8gRW50cnkgODYxCi0gICAgMHgxLmZmZWFhYWVlZWU4NmU4Y2FmZTQxMzc2ZDQ3OTE5NTc5cC02LAotICAgIDB4MS5mZmMwMDE1NTUyN2QyYjEyYWVkYjQ5ZDkyOTI4ZGY3MnAtMSwKLSAgICAweDEucC01LAotICB9LAotICB7IC8vIEVudHJ5IDg2MgotICAgIC0weDEuZmZlYWFhZWVlZTg2ZThjYWZlNDEzNzZkNDc5MTk1NzlwLTYsCi0gICAgMHgxLmZmYzAwMTU1NTI3ZDJiMTJhZWRiNDlkOTI5MjhkZjcycC0xLAotICAgIC0weDEucC01LAotICB9LAotICB7IC8vIEVudHJ5IDg2MwotICAgIDB4MS5mZmVhYWVlZTZlODk5MjcwMDM0MTNhYmU2NGU5ZGMyMXAtNiwKLSAgICAweDEuZmZjMDAxNTQ1Mjg3ZDQ5YjU3OTcyYWY1MTQ1NjYzYTBwLTEsCi0gICAgMHgxLjAwMDAwMnAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjQKLSAgICAtMHgxLmZmZWFhZWVlNmU4OTkyNzAwMzQxM2FiZTY0ZTlkYzIxcC02LAotICAgIDB4MS5mZmMwMDE1NDUyODdkNDliNTc5NzJhZjUxNDU2NjNhMHAtMSwKLSAgICAtMHgxLjAwMDAwMnAtNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjUKLSAgICAweDEuZmZmYWE4YWVmZWVkMzk2ZmZmZmM2MzYzMTNkMGJhNmRwLTcsCi0gICAgMHgxLmZmZjAwMDE1NzU0OTlmM2Q3OTk2ZTJkYTExY2RlYjI0cC0xLAotICAgIDB4MS5mZmZmZmVwLTcsCi0gIH0sCi0gIHsgLy8gRW50cnkgODY2Ci0gICAgLTB4MS5mZmZhYThhZWZlZWQzOTZmZmZmYzYzNjMxM2QwYmE2ZHAtNywKLSAgICAweDEuZmZmMDAwMTU3NTQ5OWYzZDc5OTZlMmRhMTFjZGViMjRwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTcsCi0gIH0sCi0gIHsgLy8gRW50cnkgODY3Ci0gICAgMHgxLmZmZmFhYWFlZWVlZDRlZDU0OWM2NTYwZjg4OWVlNTMxcC03LAotICAgIDB4MS5mZmYwMDAxNTU1NDlmNGEyOGEyODBlOTdiY2Q1OWM4YXAtMSwKLSAgICAweDEucC02LAotICB9LAotICB7IC8vIEVudHJ5IDg2OAotICAgIC0weDEuZmZmYWFhYWVlZWVkNGVkNTQ5YzY1NjBmODg5ZWU1MzFwLTcsCi0gICAgMHgxLmZmZjAwMDE1NTU0OWY0YTI4YTI4MGU5N2JjZDU5YzhhcC0xLAotICAgIC0weDEucC02LAotICB9LAotICB7IC8vIEVudHJ5IDg2OQotICAgIDB4MS5mZmZhYWVhZWNlZWQ3OTNmZGU1YTFhOWNhNWJiMWVlNnAtNywKLSAgICAweDEuZmZmMDAwMTUxNTRhOWYwY2FlNGE2MjE1MTUwMWNkMGFwLTEsCi0gICAgMHgxLjAwMDAwMnAtNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzAKLSAgICAtMHgxLmZmZmFhZWFlY2VlZDc5M2ZkZTVhMWE5Y2E1YmIxZWU2cC03LAotICAgIDB4MS5mZmYwMDAxNTE1NGE5ZjBjYWU0YTYyMTUxNTAxY2QwYXAtMSwKLSAgICAtMHgxLjAwMDAwMnAtNiwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzEKLSAgICAweDEuZmZmZmZkZmFhYWFhYmFhZWVlZGVkOTk3ZmVmZmEzNWFwLTE1LAotICAgIDB4MS5mZmZmZmZmMDAwMDAyMDE1NTU0NGZmZjQ5ZmNhMzhlNnAtMSwKLSAgICAweDEuZmZmZmZlcC0xNSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzIKLSAgICAtMHgxLmZmZmZmZGZhYWFhYWJhYWVlZWRlZDk5N2ZlZmZhMzVhcC0xNSwKLSAgICAweDEuZmZmZmZmZjAwMDAwMjAxNTU1NDRmZmY0OWZjYTM4ZTZwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTE1LAotICB9LAotICB7IC8vIEVudHJ5IDg3MwotICAgIDB4MS5mZmZmZmZmYWFhYWFhYWFlZWVlZWVlZWQ0ZWQ0ZWQ0ZnAtMTUsCi0gICAgMHgxLmZmZmZmZmYwMDAwMDAwMTU1NTU1NTU0OWY0OWY0OWY3cC0xLAotICAgIDB4MS5wLTE0LAotICB9LAotICB7IC8vIEVudHJ5IDg3NAotICAgIC0weDEuZmZmZmZmZmFhYWFhYWFhZWVlZWVlZWVkNGVkNGVkNGZwLTE1LAotICAgIDB4MS5mZmZmZmZmMDAwMDAwMDE1NTU1NTU1NDlmNDlmNDlmN3AtMSwKLSAgICAtMHgxLnAtMTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODc1Ci0gICAgMHgxLjAwMDAwMWZkNTU1NTQ1NTc3NzU3OGNjYmU3YmZjMDljcC0xNCwKLSAgICAweDEuZmZmZmZmZWZmZmZmYzAxNTU1MTVmZmY0YTE0OTZjMWNwLTEsCi0gICAgMHgxLjAwMDAwMnAtMTQsCi0gIH0sCi0gIHsgLy8gRW50cnkgODc2Ci0gICAgLTB4MS4wMDAwMDFmZDU1NTU0NTU3Nzc1NzhjY2JlN2JmYzA5Y3AtMTQsCi0gICAgMHgxLmZmZmZmZmVmZmZmZmMwMTU1NTE1ZmZmNGExNDk2YzFjcC0xLAotICAgIC0weDEuMDAwMDAycC0xNCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzcKLSAgICAweDEuZmZmZmZkZmZmZmZmZmVhYWFhYWVhYWFhYTZhYWVlZjBwLTI4LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmYzAwMDAwN2ZmZmZmYzAxNTU1NXAtMSwKLSAgICAweDEuZmZmZmZlcC0yOCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzgKLSAgICAtMHgxLmZmZmZmZGZmZmZmZmZlYWFhYWFlYWFhYWE2YWFlZWYwcC0yOCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmMwMDAwMDdmZmZmZmMwMTU1NTVwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTI4LAotICB9LAotICB7IC8vIEVudHJ5IDg3OQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZWFhYWFhYWFhYWFhYWFhZWVlZXAtMjgsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZjMDAwMDAwMDAwMDAwMDE1NTU1cC0xLAotICAgIDB4MS5wLTI3LAotICB9LAotICB7IC8vIEVudHJ5IDg4MAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmVhYWFhYWFhYWFhYWFhYWVlZWVwLTI4LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmYzAwMDAwMDAwMDAwMDAxNTU1NXAtMSwKLSAgICAtMHgxLnAtMjcsCi0gIH0sCi0gIHsgLy8gRW50cnkgODgxCi0gICAgMHgxLjAwMDAwMWZmZmZmZmZmNTU1NTUxNTU1NTRkNTU3NzcycC0yNywKLSAgICAweDEuZmZmZmZmZmZmZmZmZmJmZmZmZWZmZmZmZjAwMTU1NTVwLTEsCi0gICAgMHgxLjAwMDAwMnAtMjcsCi0gIH0sCi0gIHsgLy8gRW50cnkgODgyCi0gICAgLTB4MS4wMDAwMDFmZmZmZmZmZjU1NTU1MTU1NTU0ZDU1Nzc3MnAtMjcsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZiZmZmZmVmZmZmZmYwMDE1NTU1cC0xLAotICAgIC0weDEuMDAwMDAycC0yNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODMKLSAgICAweDEuZmZmZmZkZmZmZmZmZmZmYWFhYWFiYWFhYWE5YWFhYWVwLTMxLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmYwMDAwMDFmZmZmZmYwMDAxNXAtMSwKLSAgICAweDEuZmZmZmZlcC0zMSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODQKLSAgICAtMHgxLmZmZmZmZGZmZmZmZmZmZmFhYWFhYmFhYWFhOWFhYWFlcC0zMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmMDAwMDAxZmZmZmZmMDAwMTVwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTMxLAotICB9LAotICB7IC8vIEVudHJ5IDg4NQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZhYWFhYWFhYWFhYWFhYWFhZXAtMzEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZjAwMDAwMDAwMDAwMDAwMDE1cC0xLAotICAgIDB4MS5wLTMwLAotICB9LAotICB7IC8vIEVudHJ5IDg4NgotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmYWFhYWFhYWFhYWFhYWFhYWVwLTMxLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmYwMDAwMDAwMDAwMDAwMDAxNXAtMSwKLSAgICAtMHgxLnAtMzAsCi0gIH0sCi0gIHsgLy8gRW50cnkgODg3Ci0gICAgMHgxLjAwMDAwMWZmZmZmZmZmZmQ1NTU1NDU1NTU1MzU1NTU3cC0zMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZlZmZmZmZiZmZmZmZjMDAwMTVwLTEsCi0gICAgMHgxLjAwMDAwMnAtMzAsCi0gIH0sCi0gIHsgLy8gRW50cnkgODg4Ci0gICAgLTB4MS4wMDAwMDFmZmZmZmZmZmZkNTU1NTQ1NTU1NTM1NTU1N3AtMzAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZWZmZmZmYmZmZmZmYzAwMDE1cC0xLAotICAgIC0weDEuMDAwMDAycC0zMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODkKLSAgICAweDEuMGIzMzY2NTA4OTU3NTIwZDlkYzg4ZDdjMDkzMzdlMjRwLTEsCi0gICAgMHgxLmI0YmYyYzc5YmRmY2RhYTUzZWQ2YzAxM2Y2NWUwOTYzcC0xLAotICAgIC0weDEuZmZmZmZlcDEyNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTAKLSAgICAtMHgxLjBiMzM2NjUwODk1NzUyMGQ5ZGM4OGQ3YzA5MzM3ZTI0cC0xLAotICAgIDB4MS5iNGJmMmM3OWJkZmNkYWE1M2VkNmMwMTNmNjVlMDk2M3AtMSwKLSAgICAweDEuZmZmZmZlcDEyNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTEKLSAgICAtMHgxLjBiMzM2NjUwODk1NzUyMGQ5ZGM4OGQ3YzA5MzM3ZTI0cC0xLAotICAgIDB4MS5iNGJmMmM3OWJkZmNkYWE1M2VkNmMwMTNmNjVlMDk2M3AtMSwKLSAgICAweDEuZmZmZmZlcDEyNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTIKLSAgICAweDEuMGIzMzY2NTA4OTU3NTIwZDlkYzg4ZDdjMDkzMzdlMjRwLTEsCi0gICAgMHgxLmI0YmYyYzc5YmRmY2RhYTUzZWQ2YzAxM2Y2NWUwOTYzcC0xLAotICAgIC0weDEuZmZmZmZlcDEyNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTMKLSAgICAtMHgxLjBiMzM2NjUwODk1NzUyMGQ5ZGM4OGQ3YzA5MzM3ZTI0cC0xLAotICAgIDB4MS5iNGJmMmM3OWJkZmNkYWE1M2VkNmMwMTNmNjVlMDk2M3AtMSwKLSAgICAweDEuZmZmZmZlcDEyNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTQKLSAgICAweDEuMGIzMzY2NTA4OTU3NTIwZDlkYzg4ZDdjMDkzMzdlMjRwLTEsCi0gICAgMHgxLmI0YmYyYzc5YmRmY2RhYTUzZWQ2YzAxM2Y2NWUwOTYzcC0xLAotICAgIC0weDEuZmZmZmZlcDEyNywKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTUKLSAgICAtMHgxLjQ4Y2U1NzUyMDJlZmQ5M2M2MmY3Yjg4MTA2ZWExZDRkcC0xLAotICAgIC0weDEuODg3N2EyOWUzZDdiNmRlZmNiNTI4ZTg2ZjRjM2UwOWFwLTEsCi0gICAgMHgxLmZmZmZmY3AxMjcsCi0gIH0sCi0gIHsgLy8gRW50cnkgODk2Ci0gICAgMHgxLjQ4Y2U1NzUyMDJlZmQ5M2M2MmY3Yjg4MTA2ZWExZDRkcC0xLAotICAgIC0weDEuODg3N2EyOWUzZDdiNmRlZmNiNTI4ZTg2ZjRjM2UwOWFwLTEsCi0gICAgLTB4MS5mZmZmZmNwMTI3LAotICB9LAotICB7IC8vIEVudHJ5IDg5NwotICAgIC0weDEuNzc3YTVjZjcyY2VjNWZkNjE4OTZjYjRmNDBkMWRlNzlwLTI0LAotICAgIC0weDEuZmZmZmZmZmZmZmZkZDk0ODQ5MjcxZDA4ZWVjZjU0YTFwLTEsCi0gICAgMHgxLjkyMWZiNnAxLAotICB9LAotICB7IC8vIEVudHJ5IDg5OAotICAgIDB4MS43NzdhNWNmNzJjZWM1ZmQ2MTg5NmNiNGY0MGQxZGU3OXAtMjQsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmRkOTQ4NDkyNzFkMDhlZWNmNTRhMXAtMSwKLSAgICAtMHgxLjkyMWZiNnAxLAotICB9LAotICB7IC8vIEVudHJ5IDg5OQotICAgIDB4MS5mZmZmZmZmZmZmZmY3NjUyMTI0OWM3NDIyOTMwZWQ4MnAtMSwKLSAgICAtMHgxLjc3N2E1Y2Y3MmNlY2M0Y2RlM2EzMWU3ZDVhMDI2MTQycC0yNSwKLSAgICAweDEuOTIxZmI2cDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTAwCi0gICAgLTB4MS5mZmZmZmZmZmZmZmY3NjUyMTI0OWM3NDIyOTMwZWQ4MnAtMSwKLSAgICAtMHgxLjc3N2E1Y2Y3MmNlY2M0Y2RlM2EzMWU3ZDVhMDI2MTQycC0yNSwKLSAgICAtMHgxLjkyMWZiNnAwLAotICB9LAotICB7IC8vIEVudHJ5IDkwMQotICAgIDB4MS5hZWQ1NGIxOWQ1Y2Q3OTM3Y2JmNDFlZDQwOGNhMGE1MnAtMSwKLSAgICAweDEuMTRhMjdkOWRhNWQ0YWViY2U3MTQyOGY5MDU3YjA4ZGFwLTEsCi0gICAgMHgxLjAwMDAwMnAwLAotICB9LAotICB7IC8vIEVudHJ5IDkwMgotICAgIC0weDEuYWVkNTRiMTlkNWNkNzkzN2NiZjQxZWQ0MDhjYTBhNTJwLTEsCi0gICAgMHgxLjE0YTI3ZDlkYTVkNGFlYmNlNzE0MjhmOTA1N2IwOGRhcC0xLAotICAgIC0weDEuMDAwMDAycDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTAzCi0gICAgMHgxLmFlZDU0OGYwOTBjZWUwNDE4ZGQzZDIxMzhhMWU3ODY1cC0xLAotICAgIDB4MS4xNGEyODBmYjUwNjhiOTIzODQ4Y2RiMmVkMGUzN2E1M3AtMSwKLSAgICAweDEucDAsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA0Ci0gICAgLTB4MS5hZWQ1NDhmMDkwY2VlMDQxOGRkM2QyMTM4YTFlNzg2NXAtMSwKLSAgICAweDEuMTRhMjgwZmI1MDY4YjkyMzg0OGNkYjJlZDBlMzdhNTNwLTEsCi0gICAgLTB4MS5wMCwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDUKLSAgICAweDEuYWVkNTQ3ZGJlZTRkMGQ4NjgwZDA4MTNkMWU0ZTIxZDBwLTEsCi0gICAgMHgxLjE0YTI4MmFhMjViMTFmNjMxMmE3YTY1MTgwZTdjM2Q0cC0xLAotICAgIDB4MS5mZmZmZmVwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA2Ci0gICAgLTB4MS5hZWQ1NDdkYmVlNGQwZDg2ODBkMDgxM2QxZTRlMjFkMHAtMSwKLSAgICAweDEuMTRhMjgyYWEyNWIxMWY2MzEyYTdhNjUxODBlN2MzZDRwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTEsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA3Ci0gICAgMHgxLjZhMDllNmVjYjQxZmRkN2U2ODE4NzJjODU0ODg3MDE5cC0xLAotICAgIDB4MS42YTA5ZTVlMzMzNTk4M2U1YWM5MmU3MzNlM2YyNGI0MnAtMSwKLSAgICAweDEuOTIxZmI2cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDkwOAotICAgIC0weDEuNmEwOWU2ZWNiNDFmZGQ3ZTY4MTg3MmM4NTQ4ODcwMTlwLTEsCi0gICAgMHgxLjZhMDllNWUzMzM1OTgzZTVhYzkyZTczM2UzZjI0YjQycC0xLAotICAgIC0weDEuOTIxZmI2cC0xLAotICB9LAotICB7IC8vIEVudHJ5IDkwOQotICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI2LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuMDAwMDAycC0xMjYsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEwCi0gICAgLTB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI2LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLjAwMDAwMnAtMTI2LAotICB9LAotICB7IC8vIEVudHJ5IDkxMQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEucC0xMjYsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEyCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLnAtMTI2LAotICB9LAotICB7IC8vIEVudHJ5IDkxMwotICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuZmZmZmZjcC0xMjcsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTE0Ci0gICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLmZmZmZmY3AtMTI3LAotICB9LAotICB7IC8vIEVudHJ5IDkxNQotICAgIDB4MS5mZmZmZjdmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEuZmZmZmY4cC0xMjcsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTE2Ci0gICAgLTB4MS5mZmZmZjdmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLmZmZmZmOHAtMTI3LAotICB9LAotICB7IC8vIEVudHJ5IDkxNwotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTQ5LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAweDEucC0xNDgsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTE4Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTQ5LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMSwKLSAgICAtMHgxLnAtMTQ4LAotICB9LAotICB7IC8vIEVudHJ5IDkxOQotICAgIDAuMGYsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xLAotICAgIDB4MS5wLTE0OSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjAKLSAgICAtMC4wZiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEsCi0gICAgLTB4MS5wLTE0OSwKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjEKLSAgICAwLjAsCi0gICAgMHgxLnAwLAotICAgIDAuMGYsCi0gIH0sCi0gIHsgLy8gRW50cnkgOTIyCi0gICAgLTAuMCwKLSAgICAweDEucDAsCi0gICAgLTAuMGYsCi0gIH0sCi19OwotI2VuZGlmIC8vIF9fQklPTklDX18KLQotVEVTVChtYXRoX3NpbmNvc2YsIHNpbmNvc2ZfaW50ZWwpIHsKLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCi0gIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZW9mKGdfc2luY29zZl9pbnRlbF9kYXRhKS9zaXplb2Yoc2luY29zZl9pbnRlbF9kYXRhX3QpOyBpKyspIHsKLSAgIGZsb2F0IGZzaW4sIGZjb3M7Ci0gICBzaW5jb3NmKGdfc2luY29zZl9pbnRlbF9kYXRhW2ldLmNhbGxfZGF0YSwgJmZzaW4sICZmY29zKTsKLSAgIEVYUEVDVF9GTE9BVF9FUShnX3NpbmNvc2ZfaW50ZWxfZGF0YVtpXS5zaW5fZXhwZWN0ZWQsIGZzaW4pIDw8ICJGYWlsZWQgb24gZWxlbWVudCAiIDw8IGk7Ci0gICBFWFBFQ1RfRkxPQVRfRVEoZ19zaW5jb3NmX2ludGVsX2RhdGFbaV0uY29zX2V4cGVjdGVkLCBmY29zKSA8PCAiRmFpbGVkIG9uIGVsZW1lbnQgIiA8PCBpOwotICB9Ci0jZWxzZSAvLyBfX0JJT05JQ19fCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCi19CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX3NpbmZfdGVzdC5jcHAgYi90ZXN0cy9tYXRoX3NpbmZfdGVzdC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJiMWUyYzkuLjAwMDAwMDAKLS0tIGEvdGVzdHMvbWF0aF9zaW5mX3Rlc3QuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNDM5NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKLSAqCi0gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKLSAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KLSAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAotICoKLSAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCi0gKgotICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQotICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKLSAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgotICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAotICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCi0gKi8KLQotI2luY2x1ZGUgPG1hdGguaD4KLQotI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+Ci0KLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCi10eXBlZGVmIHN0cnVjdCB7Ci0gIGZsb2F0IGV4cGVjdGVkOwotICBmbG9hdCBjYWxsX2RhdGE7Ci19IHNpbmZfaW50ZWxfZGF0YV90OwotCi1zdGF0aWMgc2luZl9pbnRlbF9kYXRhX3QgZ19zaW5mX2ludGVsX2RhdGFbXSA9IHsKLSAgeyAvLyBFbnRyeSAwCi0gICAgLTB4MS4wMDAzZmZmZmZmZjU1NGQ1NTM1NTUyY2NjZjc3OGNjZHAtMjEsCi0gICAgLTB4MS4wMDA0cC0yMQotICB9LAotICB7IC8vIEVudHJ5IDEKLSAgICAweDEuMDAwM2ZmZmZmZmY1NTRkNTUzNTU1MmNjY2Y3NzhjY2RwLTIxLAotICAgIDB4MS4wMDA0cC0yMQotICB9LAotICB7IC8vIEVudHJ5IDIKLSAgICAtMHgxLmQzMGNhNzAwOGFmMjRlZjA0OGE3YTA1ZWVjZGUyMTIwcC00LAotICAgIC0weDEuMDBjYmYwcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMwotICAgIDB4MS5kMzBjYTcwMDhhZjI0ZWYwNDhhN2EwNWVlY2RlMjEyMHAtNCwKLSAgICAweDEuMDBjYmYwcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNAotICAgIDB4MS44ZDY2NWQwMDAwMjAwZWZjNDQ3ODAwODY1OGM2MTdjN3AtMSwKLSAgICAtMHgxLjAxZWUzNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNQotICAgIC0weDEuOGQ2NjVkMDAwMDIwMGVmYzQ0NzgwMDg2NThjNjE3YzdwLTEsCi0gICAgMHgxLjAxZWUzNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNgotICAgIDB4MS5lYzA0MmZmOTcyZTQyYzIzZjI4ZjJkYTRmYjc1Zjg1MXAtMSwKLSAgICAtMHgxLjE4ZjFmNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNwotICAgIC0weDEuZWMwNDJmZjk3MmU0MmMyM2YyOGYyZGE0ZmI3NWY4NTFwLTEsCi0gICAgMHgxLjE4ZjFmNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOAotICAgIDB4MS5mMGQzODQyNDBhZDlmMmRiYTQ3Yjk2YjA4MjcxYjQxZnAtMSwKLSAgICAtMHgxLjFkZjkwNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOQotICAgIC0weDEuZjBkMzg0MjQwYWQ5ZjJkYmE0N2I5NmIwODI3MWI0MWZwLTEsCi0gICAgMHgxLjFkZjkwNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAKLSAgICAtMHgxLjQ2MTZkYWY5Y2QzY2U0ZTkyMTg2ZTdkOGVjM2QzZWYwcC01LAotICAgIC0weDEuM2FwNgotICB9LAotICB7IC8vIEVudHJ5IDExCi0gICAgMHgxLjQ2MTZkYWY5Y2QzY2U0ZTkyMTg2ZTdkOGVjM2QzZWYwcC01LAotICAgIDB4MS4zYXA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIKLSAgICAweDEuZGYwNGM1ZjlkZTM0MzIzNWY0ZjhiMTc5NzI4Njg3MmJwLTEsCi0gICAgLTB4MS40NGIwOTZwMgotICB9LAotICB7IC8vIEVudHJ5IDEzCi0gICAgLTB4MS5kZjA0YzVmOWRlMzQzMjM1ZjRmOGIxNzk3Mjg2ODcyYnAtMSwKLSAgICAweDEuNDRiMDk2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNAotICAgIC0weDEuZmVmZmJkNzMzNGM3MDQzYjkwYTZiYzJkNzZkZGE3YzhwLTEsCi0gICAgLTB4MS44MjFjZjZwMAotICB9LAotICB7IC8vIEVudHJ5IDE1Ci0gICAgMHgxLmZlZmZiZDczMzRjNzA0M2I5MGE2YmMyZDc2ZGRhN2M4cC0xLAotICAgIDB4MS44MjFjZjZwMAotICB9LAotICB7IC8vIEVudHJ5IDE2Ci0gICAgMHgxLmViYWM1NmZmZTZmMjc4OTNjNjlmNjhkMWQ3YjRhNDQ4cC0zLAotICAgIC0weDEuODI5Yjg2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNwotICAgIC0weDEuZWJhYzU2ZmZlNmYyNzg5M2M2OWY2OGQxZDdiNGE0NDhwLTMsCi0gICAgMHgxLjgyOWI4NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTgKLSAgICAweDEuYjcyNWNjZWY2NWIxMzkwOTEyYTBmNWVhYWIwZTcyMDJwLTYsCi0gICAgLTB4MS44NTgwZmVwNwotICB9LAotICB7IC8vIEVudHJ5IDE5Ci0gICAgLTB4MS5iNzI1Y2NlZjY1YjEzOTA5MTJhMGY1ZWFhYjBlNzIwMnAtNiwKLSAgICAweDEuODU4MGZlcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMAotICAgIDB4MS4wYjMzNjY1MDg5NTc1MjBkOWRjODhkN2MwOTMzN2UyNHAtMSwKLSAgICAtMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMQotICAgIC0weDEuMGIzMzY2NTA4OTU3NTIwZDlkYzg4ZDdjMDkzMzdlMjRwLTEsCi0gICAgMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMgotICAgIDAuMGYsCi0gICAgMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjMKLSAgICAtMC4wZiwKLSAgICAtMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQKLSAgICAtMHgxLmY4M2RlN2MwNjgzZDNiZDkwYTc2OWY2MmE0MWFjMWMzcC0xLAotICAgIDB4MS4wMDAwMDJwNTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNQotICAgIDB4MS5mODNkZTdjMDY4M2QzYmQ5MGE3NjlmNjJhNDFhYzFjM3AtMSwKLSAgICAtMHgxLjAwMDAwMnA1MgotICB9LAotICB7IC8vIEVudHJ5IDI2Ci0gICAgLTB4MS43ZGJkMTFmZmRlNGMyMGRiYjM3NjAxOWYxYzY1NGJiMHAtMiwKLSAgICAweDEuMDAwMDIycDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcKLSAgICAweDEuN2RiZDExZmZkZTRjMjBkYmIzNzYwMTlmMWM2NTRiYjBwLTIsCi0gICAgLTB4MS4wMDAwMjJwNjIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOAotICAgIDB4MS5lYWYwZDUwMDhmMmRiODk5ZTI0ODdkYTlkM2I5Y2RlN3AtMiwKLSAgICAweDEuMDAwMTUwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkKLSAgICAtMHgxLmVhZjBkNTAwOGYyZGI4OTllMjQ4N2RhOWQzYjljZGU3cC0yLAotICAgIC0weDEuMDAwMTUwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAKLSAgICAweDEuZmZhZThjZmVmYTgxM2RhODc0OThkZjk4OGMzZDhmNWVwLTUsCi0gICAgMHgxLjAwMDFmMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDMxCi0gICAgLTB4MS5mZmFlOGNmZWZhODEzZGE4NzQ5OGRmOTg4YzNkOGY1ZXAtNSwKLSAgICAtMHgxLjAwMDFmMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDMyCi0gICAgMHgxLjg5YzdkNjA4N2E4NjFiYjZmZTc5NDE0OGMzNDI1MzQ4cC0xLAotICAgIDB4MS4wMDAzcDQwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMKLSAgICAtMHgxLjg5YzdkNjA4N2E4NjFiYjZmZTc5NDE0OGMzNDI1MzQ4cC0xLAotICAgIC0weDEuMDAwM3A0MAotICB9LAotICB7IC8vIEVudHJ5IDM0Ci0gICAgLTB4MS41OWUxZjUxOWVmOGI3MjJlYWUxMmE0MDRjYWQ5MzdlYnAtMSwKLSAgICAweDEuMDAwMzgwcDEyNgotICB9LAotICB7IC8vIEVudHJ5IDM1Ci0gICAgMHgxLjU5ZTFmNTE5ZWY4YjcyMmVhZTEyYTQwNGNhZDkzN2VicC0xLAotICAgIC0weDEuMDAwMzgwcDEyNgotICB9LAotICB7IC8vIEVudHJ5IDM2Ci0gICAgMHgxLjAwMDNmZmZmZmZmNTU0ZDU1MzU1NTJjY2NmNzc4Y2NkcC0yMSwKLSAgICAweDEuMDAwNHAtMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNwotICAgIC0weDEuMDAwM2ZmZmZmZmY1NTRkNTUzNTU1MmNjY2Y3NzhjY2RwLTIxLAotICAgIC0weDEuMDAwNHAtMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOAotICAgIDB4MS4zODMwNjUwMjdlYzRmMjBhYjFjMDAyN2Q5OTFiODA1YXAtNiwKLSAgICAweDEuMDAwN2MwcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOQotICAgIC0weDEuMzgzMDY1MDI3ZWM0ZjIwYWIxYzAwMjdkOTkxYjgwNWFwLTYsCi0gICAgLTB4MS4wMDA3YzBwOQotICB9LAotICB7IC8vIEVudHJ5IDQwCi0gICAgMHgxLmViMDM5NzAwMmZkZmJhZTIyNmYwNjlkNmNkNTNjNDBmcC0yLAotICAgIDB4MS4wMDBjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDEKLSAgICAtMHgxLmViMDM5NzAwMmZkZmJhZTIyNmYwNjlkNmNkNTNjNDBmcC0yLAotICAgIC0weDEuMDAwY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDQyCi0gICAgMHgxLmZlZGM4YjAwMDFmN2RhY2VlMDkwYzVlZGMzYmZhNTQ3cC00LAotICAgIDB4MS4wMDE5cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMKLSAgICAtMHgxLmZlZGM4YjAwMDFmN2RhY2VlMDkwYzVlZGMzYmZhNTQ3cC00LAotICAgIC0weDEuMDAxOXAtMwotICB9LAotICB7IC8vIEVudHJ5IDQ0Ci0gICAgMHgxLmFiNDcxYWYyNmZmZWEyM2Q3NjQzY2Y2MTRjODYwYjE4cC0xMCwKLSAgICAweDEuMDAzODIwcDY4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDUKLSAgICAtMHgxLmFiNDcxYWYyNmZmZWEyM2Q3NjQzY2Y2MTRjODYwYjE4cC0xMCwKLSAgICAtMHgxLjAwMzgyMHA2OAotICB9LAotICB7IC8vIEVudHJ5IDQ2Ci0gICAgMHgxLmZmMjllZWZkZGUzMDQxZmM1Yzc1YTFmODIyYTU0MjFkcC00LAotICAgIDB4MS4wMDQwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNDcKLSAgICAtMHgxLmZmMjllZWZkZGUzMDQxZmM1Yzc1YTFmODIyYTU0MjFkcC00LAotICAgIC0weDEuMDA0MHAtMwotICB9LAotICB7IC8vIEVudHJ5IDQ4Ci0gICAgMHgxLjI5MDcwMTc1MjA2YjNmMTk4Yzg5M2UxOWI0YmQ2Y2I4cC0xMywKLSAgICAweDEuMDFmMHAxMDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OQotICAgIC0weDEuMjkwNzAxNzUyMDZiM2YxOThjODkzZTE5YjRiZDZjYjhwLTEzLAotICAgIC0weDEuMDFmMHAxMDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MAotICAgIC0weDEuZmZmZmZmZmZmZmZmYWFmYmU1M2RlNzQyMzE5NTQ3MDlwLTEsCi0gICAgMHgxLjA0Y2NiY3AxOAotICB9LAotICB7IC8vIEVudHJ5IDUxCi0gICAgMHgxLmZmZmZmZmZmZmZmZmFhZmJlNTNkZTc0MjMxOTU0NzA5cC0xLAotICAgIC0weDEuMDRjY2JjcDE4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTIKLSAgICAweDEuZjRmNzJjYWQ1ZjVmYjE3ZWM2MDhlYzdhYzFjYmNhOGJwLTIsCi0gICAgMHgxLjA1YmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MwotICAgIC0weDEuZjRmNzJjYWQ1ZjVmYjE3ZWM2MDhlYzdhYzFjYmNhOGJwLTIsCi0gICAgLTB4MS4wNWJjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQKLSAgICAweDEuZjg5NmM2Njg5ZDdlNzVlMzUxZWNjODU3MzEyNTRjZDNwLTEsCi0gICAgMHgxLjA3YzFmOHAxMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NQotICAgIC0weDEuZjg5NmM2Njg5ZDdlNzVlMzUxZWNjODU3MzEyNTRjZDNwLTEsCi0gICAgLTB4MS4wN2MxZjhwMTE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTYKLSAgICAtMHgxLjI2NzU5M2Y0ZDU5YzdkZTYxNzAwOTBhNmEwODRjZGNhcC0xNCwKLSAgICAweDEuMDgwMTgwcDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcKLSAgICAweDEuMjY3NTkzZjRkNTljN2RlNjE3MDA5MGE2YTA4NGNkY2FwLTE0LAotICAgIC0weDEuMDgwMTgwcDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgKLSAgICAweDEuZmM4NjM3MmE4NDE1NDk0MTBjMTJkYmVjNmZlODBkYzVwLTIsCi0gICAgMHgxLjBhMTRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OQotICAgIC0weDEuZmM4NjM3MmE4NDE1NDk0MTBjMTJkYmVjNmZlODBkYzVwLTIsCi0gICAgLTB4MS4wYTE0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAKLSAgICAweDEuYmNhMjhmMDAwNDMxNmJhZThkZjZhMjM1MmNjYTEzODJwLTEsCi0gICAgMHgxLjBiNzcwYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEKLSAgICAtMHgxLmJjYTI4ZjAwMDQzMTZiYWU4ZGY2YTIzNTJjY2ExMzgycC0xLAotICAgIC0weDEuMGI3NzBhcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MgotICAgIC0weDEuZmFkZTlhYmQ2NzUyNmQzNzE4OWRmMDA0YjUxZDlkNWFwLTEsCi0gICAgMHgxLjBkZGNwOTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MwotICAgIDB4MS5mYWRlOWFiZDY3NTI2ZDM3MTg5ZGYwMDRiNTFkOWQ1YXAtMSwKLSAgICAtMHgxLjBkZGNwOTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NAotICAgIDB4MS5iZjY4M2NmZmZmZWM2ZTg2NzJhNDlmMDhhYWU0OWM0NnAtMSwKLSAgICAweDEuMTAyNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUKLSAgICAtMHgxLmJmNjgzY2ZmZmZlYzZlODY3MmE0OWYwOGFhZTQ5YzQ2cC0xLAotICAgIC0weDEuMTAyNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYKLSAgICAtMHgxLmYxNDQwN2Y2NDQxZTkyZjQ4MGQyZTIyODU5ZDY3YTM5cC0xLAotICAgIDB4MS4xMDljYzRwNAotICB9LAotICB7IC8vIEVudHJ5IDY3Ci0gICAgMHgxLmYxNDQwN2Y2NDQxZTkyZjQ4MGQyZTIyODU5ZDY3YTM5cC0xLAotICAgIC0weDEuMTA5Y2M0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OAotICAgIC0weDEuZmY3ZTdiOTk4M2E3YzJlYmVjZmFiMWEwYjBhZjNjNGRwLTEsCi0gICAgMHgxLjEzYmZiMnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjkKLSAgICAweDEuZmY3ZTdiOTk4M2E3YzJlYmVjZmFiMWEwYjBhZjNjNGRwLTEsCi0gICAgLTB4MS4xM2JmYjJwNAotICB9LAotICB7IC8vIEVudHJ5IDcwCi0gICAgMHgxLmM0OTQyYjFlOWVjMTc1YWE3ZDNmZDc1ZjJlMzdlNTY2cC0xLAotICAgIDB4MS4xNTkwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MQotICAgIC0weDEuYzQ5NDJiMWU5ZWMxNzVhYTdkM2ZkNzVmMmUzN2U1NjZwLTEsCi0gICAgLTB4MS4xNTkwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MgotICAgIDB4MS5mZmY4ZDM2ODY2ZmFhYWM4YzE3ZTEyNjc0OThiZDEzMnAtMSwKLSAgICAweDEuMThwODUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MwotICAgIC0weDEuZmZmOGQzNjg2NmZhYWFjOGMxN2UxMjY3NDk4YmQxMzJwLTEsCi0gICAgLTB4MS4xOHA4NQotICB9LAotICB7IC8vIEVudHJ5IDc0Ci0gICAgMHgxLmM3OGQ5NjI1NDZjZTUxYjg4MmM5MDU0ZWNjZDgyOWIxcC0xLAotICAgIDB4MS4xOGM4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NQotICAgIC0weDEuYzc4ZDk2MjU0NmNlNTFiODgyYzkwNTRlY2NkODI5YjFwLTEsCi0gICAgLTB4MS4xOGM4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NgotICAgIDB4MS5jN2NiOTlhMTExZjI2NTI3YjgwNTczNDk2MmZiMTJhMHAtMSwKLSAgICAweDEuMTkwY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzcKLSAgICAtMHgxLmM3Y2I5OWExMTFmMjY1MjdiODA1NzM0OTYyZmIxMmEwcC0xLAotICAgIC0weDEuMTkwY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgKLSAgICAtMHgxLjcwODk4MTAwMDU1OTQzODk4YWE3MDUzMDE3ZWNiYTY5cC0xLAotICAgIDB4MS4xZThmMTRwNjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OQotICAgIDB4MS43MDg5ODEwMDA1NTk0Mzg5OGFhNzA1MzAxN2VjYmE2OXAtMSwKLSAgICAtMHgxLjFlOGYxNHA2MgotICB9LAotICB7IC8vIEVudHJ5IDgwCi0gICAgMHgxLmNkZWYxZTRlYjM3ZTlmMjI0OTY1NmMyN2Q2MmIxODk1cC0xLAotICAgIDB4MS4xZmY4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MQotICAgIC0weDEuY2RlZjFlNGViMzdlOWYyMjQ5NjU2YzI3ZDYyYjE4OTVwLTEsCi0gICAgLTB4MS4xZmY4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MgotICAgIC0weDEuNWRmMGRkNjBmMTIyYmY3OWQxZGRjZjI5NWMzNGNiMGVwLTEsCi0gICAgMHgxLjIyNDRhNnA1OQotICB9LAotICB7IC8vIEVudHJ5IDgzCi0gICAgMHgxLjVkZjBkZDYwZjEyMmJmNzlkMWRkY2YyOTVjMzRjYjBlcC0xLAotICAgIC0weDEuMjI0NGE2cDU5Ci0gIH0sCi0gIHsgLy8gRW50cnkgODQKLSAgICAtMHgxLmZiOGRkNzRmMWIwOTFhN2IwZjlmOWQ0NGRiODQ2NjFjcC0zLAotICAgIDB4MS4yODdhZTBwMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NQotICAgIDB4MS5mYjhkZDc0ZjFiMDkxYTdiMGY5ZjlkNDRkYjg0NjYxY3AtMywKLSAgICAtMHgxLjI4N2FlMHAxMwotICB9LAotICB7IC8vIEVudHJ5IDg2Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmNWMwZDI2MzBlZTBhMWZiNGU3YnAtMSwKLSAgICAweDEuMmQ5N2M4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NwotICAgIDB4MS5mZmZmZmZmZmZmZmZmNWMwZDI2MzBlZTBhMWZiNGU3YnAtMSwKLSAgICAtMHgxLjJkOTdjOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODgKLSAgICAtMHgxLjk5YmM1Yjk2MWIxYWMyOTZkYmUxOTgwZmQyYzg5MGEwcC0yNiwKLSAgICAweDEuMmQ5N2M4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OQotICAgIDB4MS45OWJjNWI5NjFiMWFjMjk2ZGJlMTk4MGZkMmM4OTBhMHAtMjYsCi0gICAgLTB4MS4yZDk3YzhwMwotICB9LAotICB7IC8vIEVudHJ5IDkwCi0gICAgMHgxLmZmZDUxNThiODE5NDRmZjZiNDgzM2ZkZjFmYWE5MjgxcC0xLAotICAgIDB4MS4zMmNkYzZwMTgKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MQotICAgIC0weDEuZmZkNTE1OGI4MTk0NGZmNmI0ODMzZmRmMWZhYTkyODFwLTEsCi0gICAgLTB4MS4zMmNkYzZwMTgKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MgotICAgIDB4MS5lMTkxZTc3ZjU4ZjQ3OWI1NjRlYzUzOGI2NzFmOThhZnAtMTQsCi0gICAgMHgxLjM3ZWZkOHAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MwotICAgIC0weDEuZTE5MWU3N2Y1OGY0NzliNTY0ZWM1MzhiNjcxZjk4YWZwLTE0LAotICAgIC0weDEuMzdlZmQ4cDEwMAotICB9LAotICB7IC8vIEVudHJ5IDk0Ci0gICAgMHgxLmZmZmU5NzRkY2ViMTBkNDg3N2E3NWJjNzc4NzBmZmVicC0xLAotICAgIDB4MS4zOHAxMQotICB9LAotICB7IC8vIEVudHJ5IDk1Ci0gICAgLTB4MS5mZmZlOTc0ZGNlYjEwZDQ4NzdhNzViYzc3ODcwZmZlYnAtMSwKLSAgICAtMHgxLjM4cDExCi0gIH0sCi0gIHsgLy8gRW50cnkgOTYKLSAgICAtMHgxLmI2M2YyYzNmNTM3YjEwZWVjMmZiZjM0MGU0ODk4NjQ0cC0xOCwKLSAgICAweDEuM2Q3MmI4cDE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTcKLSAgICAweDEuYjYzZjJjM2Y1MzdiMTBlZWMyZmJmMzQwZTQ4OTg2NDRwLTE4LAotICAgIC0weDEuM2Q3MmI4cDE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTgKLSAgICAtMHgxLmUwMjA4Y2ZmMTdmOTE4NjIxODk0NWFmOTI1NmQ3MzZjcC0xLAotICAgIDB4MS40NDRiMjBwNwotICB9LAotICB7IC8vIEVudHJ5IDk5Ci0gICAgMHgxLmUwMjA4Y2ZmMTdmOTE4NjIxODk0NWFmOTI1NmQ3MzZjcC0xLAotICAgIC0weDEuNDQ0YjIwcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDAKLSAgICAweDEuZmZmZmY5MDAyY2Y4N2RhZGU2ZjYyZWI3MDlkYzJhYTdwLTEsCi0gICAgMHgxLjQ2YjcxZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAxCi0gICAgLTB4MS5mZmZmZjkwMDJjZjg3ZGFkZTZmNjJlYjcwOWRjMmFhN3AtMSwKLSAgICAtMHgxLjQ2YjcxZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAyCi0gICAgMHgxLmM4NzU1ODFhNzYyMjExZGQ1Y2FhZjlhYmRlNWNmNjU2cC0yMSwKLSAgICAweDEuNGQwMjQycDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDMKLSAgICAtMHgxLmM4NzU1ODFhNzYyMjExZGQ1Y2FhZjlhYmRlNWNmNjU2cC0yMSwKLSAgICAtMHgxLjRkMDI0MnA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0Ci0gICAgLTB4MS42YTZmNzkwMDAwNTNhMzg0MjU2NmYxZTAxOGQ2MzU5ZnAtMSwKLSAgICAweDEuNTExZThlcDI4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1Ci0gICAgMHgxLjZhNmY3OTAwMDA1M2EzODQyNTY2ZjFlMDE4ZDYzNTlmcC0xLAotICAgIC0weDEuNTExZThlcDI4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA2Ci0gICAgMHgxLmZmZmU5ZmZhNmI1NjlkZDhjNzIwZDY4ZTgwYmQ5YTYzcC0xLAotICAgIDB4MS41MzU0ZDBwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3Ci0gICAgLTB4MS5mZmZlOWZmYTZiNTY5ZGQ4YzcyMGQ2OGU4MGJkOWE2M3AtMSwKLSAgICAtMHgxLjUzNTRkMHAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDgKLSAgICAweDEuM2I0ZDU4ZmZmZmYyOTEyNjQ2MGYyNThlYzQ0MjNlOWFwLTEsCi0gICAgMHgxLjUzYWQ1Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDEwOQotICAgIC0weDEuM2I0ZDU4ZmZmZmYyOTEyNjQ2MGYyNThlYzQ0MjNlOWFwLTEsCi0gICAgLTB4MS41M2FkNWNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTAKLSAgICAtMHgxLmZmZmViNzYyZTkzZWFkNWFjNzBmODUwNjRmYzc5Y2ZmcC0xLAotICAgIDB4MS42MHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTExCi0gICAgMHgxLmZmZmViNzYyZTkzZWFkNWFjNzBmODUwNjRmYzc5Y2ZmcC0xLAotICAgIC0weDEuNjBwMwotICB9LAotICB7IC8vIEVudHJ5IDExMgotICAgIDB4MS4xNzcyMzc3ZmZlNWIxZjQzNmMwMTQ5ZTMyODQ0NmY3NHAtMjAsCi0gICAgMHgxLjZjNmNiY3A2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEzCi0gICAgLTB4MS4xNzcyMzc3ZmZlNWIxZjQzNmMwMTQ5ZTMyODQ0NmY3NHAtMjAsCi0gICAgLTB4MS42YzZjYmNwNgotICB9LAotICB7IC8vIEVudHJ5IDExNAotICAgIDB4MS43N2ZmZmRmZmZmZmZmNzhkMDU3N2Q5NTUyNjYzZWEzZXAtMjYsCi0gICAgMHgxLjc3ZmZmZXAtMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTUKLSAgICAtMHgxLjc3ZmZmZGZmZmZmZmY3OGQwNTc3ZDk1NTI2NjNlYTNlcC0yNiwKLSAgICAtMHgxLjc3ZmZmZXAtMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTYKLSAgICAtMHgxLmZmMDQ5NzkzODU5NDZkMDU2OGMxNTNiZjllMTI1ZmNjcC0xLAotICAgIDB4MS43N2ZmZmVwNAotICB9LAotICB7IC8vIEVudHJ5IDExNwotICAgIDB4MS5mZjA0OTc5Mzg1OTQ2ZDA1NjhjMTUzYmY5ZTEyNWZjY3AtMSwKLSAgICAtMHgxLjc3ZmZmZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE4Ci0gICAgMHgxLmZlYjdhOTZhNTc3ZjcxNWZhN2FkODc4ODI5NGMwNDVicC0xLAotICAgIDB4MS43ZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDExOQotICAgIC0weDEuZmViN2E5NmE1NzdmNzE1ZmE3YWQ4Nzg4Mjk0YzA0NWJwLTEsCi0gICAgLTB4MS43ZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDEyMAotICAgIDB4MS5mZWI3ZWI1NDY1MzUwOTYxN2ZhZjMyNjgzNDQ0MzdmY3AtMSwKLSAgICAweDEuODAwMWQwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjEKLSAgICAtMHgxLmZlYjdlYjU0NjUzNTA5NjE3ZmFmMzI2ODM0NDQzN2ZjcC0xLAotICAgIC0weDEuODAwMWQwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjIKLSAgICAweDEuZmY2NTM1OTk4ZWEwMDRkNDg3NjM1OTdiNmRmOWNkNjVwLTEsCi0gICAgMHgxLjgwN2ZmZXAxMwotICB9LAotICB7IC8vIEVudHJ5IDEyMwotICAgIC0weDEuZmY2NTM1OTk4ZWEwMDRkNDg3NjM1OTdiNmRmOWNkNjVwLTEsCi0gICAgLTB4MS44MDdmZmVwMTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQKLSAgICAweDEuZmY3NmVkOWExOTJlOWEyMTI2YmNmYzBmMzA2MjQwZDRwLTEsCi0gICAgMHgxLjg2NmE0MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI1Ci0gICAgLTB4MS5mZjc2ZWQ5YTE5MmU5YTIxMjZiY2ZjMGYzMDYyNDBkNHAtMSwKLSAgICAtMHgxLjg2NmE0MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI2Ci0gICAgMHgxLmFjZTg0NGYxZWI2YzMwNzcyNzc5MjlmZjRhZGUzZjQxcC01LAotICAgIDB4MS44ODY0cDM1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI3Ci0gICAgLTB4MS5hY2U4NDRmMWViNmMzMDc3Mjc3OTI5ZmY0YWRlM2Y0MXAtNSwKLSAgICAtMHgxLjg4NjRwMzUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjgKLSAgICAweDEuZTBkMTA4ZjE5NmZkM2NiY2I3YzJjNzZhZWU3MzgyMDVwLTUsCi0gICAgMHgxLjhhOWI1NnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI5Ci0gICAgLTB4MS5lMGQxMDhmMTk2ZmQzY2JjYjdjMmM3NmFlZTczODIwNXAtNSwKLSAgICAtMHgxLjhhOWI1NnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMwCi0gICAgLTB4MS42YTA5YWYwMDA2ZmUwYjQ3YzgxZDg2OTVjMDE3YThkZnAtMSwKLSAgICAweDEuOGU5NmVlcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzEKLSAgICAweDEuNmEwOWFmMDAwNmZlMGI0N2M4MWQ4Njk1YzAxN2E4ZGZwLTEsCi0gICAgLTB4MS44ZTk2ZWVwOQotICB9LAotICB7IC8vIEVudHJ5IDEzMgotICAgIC0weDEuZGQ1OWRjZWVjZjNmYmQwMTVlOWUyOWIzN2FhZjUxMWFwLTksCi0gICAgMHgxLjkxZTQwYXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMzCi0gICAgMHgxLmRkNTlkY2VlY2YzZmJkMDE1ZTllMjliMzdhYWY1MTFhcC05LAotICAgIC0weDEuOTFlNDBhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzQKLSAgICAtMHgxLmZiNzNmMTE4N2U1MDUzYmFjYjc1MmI4OWM2YTNkZTU3cC05LAotICAgIDB4MS45MWZmZmVwMwotICB9LAotICB7IC8vIEVudHJ5IDEzNQotICAgIDB4MS5mYjczZjExODdlNTA1M2JhY2I3NTJiODljNmEzZGU1N3AtOSwKLSAgICAtMHgxLjkxZmZmZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM2Ci0gICAgLTB4MS43NzdhNWNmNzJjZWM1ZmQ2MTg5NmNiNGY0MGQxZGU3OXAtMjQsCi0gICAgMHgxLjkyMWZiNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM3Ci0gICAgMHgxLjc3N2E1Y2Y3MmNlYzVmZDYxODk2Y2I0ZjQwZDFkZTc5cC0yNCwKLSAgICAtMHgxLjkyMWZiNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM4Ci0gICAgLTB4MS5mZmZmZmY3OWRiOTE3MjY1ZTY3NTU3NGI4ZDgzZmE2ZXAtMSwKLSAgICAweDEuOTRmZDdjcDEwMAotICB9LAotICB7IC8vIEVudHJ5IDEzOQotICAgIDB4MS5mZmZmZmY3OWRiOTE3MjY1ZTY3NTU3NGI4ZDgzZmE2ZXAtMSwKLSAgICAtMHgxLjk0ZmQ3Y3AxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDAKLSAgICAweDEuZmZmZmZmZmZmZmQ3ZTgzNjc4YTM4MzI5YzFlMDkzYjVwLTEsCi0gICAgMHgxLjk4NjgzNHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQxCi0gICAgLTB4MS5mZmZmZmZmZmZmZDdlODM2NzhhMzgzMjljMWUwOTNiNXAtMSwKLSAgICAtMHgxLjk4NjgzNHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQyCi0gICAgMHgxLjE2YWUyOTE0NGQzYWViMGVmNzQxYzNlMmFiYTM0MDc4cC0yNCwKLSAgICAweDEuOWE0OGRlcDE3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQzCi0gICAgLTB4MS4xNmFlMjkxNDRkM2FlYjBlZjc0MWMzZTJhYmEzNDA3OHAtMjQsCi0gICAgLTB4MS45YTQ4ZGVwMTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDQKLSAgICAweDEuZmY3YWQzOThmZDU4OTUyOGJiMDdkYjFlMGJkZDQwZjVwLTEsCi0gICAgMHgxLjlkYWEzOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ1Ci0gICAgLTB4MS5mZjdhZDM5OGZkNTg5NTI4YmIwN2RiMWUwYmRkNDBmNXAtMSwKLSAgICAtMHgxLjlkYWEzOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ2Ci0gICAgMHgxLjlkZjVmMTAwMDAwMDJmNGI3NDIxZGZlOWU5NTViNjBkcC00LAotICAgIDB4MS45ZWFiMmVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDcKLSAgICAtMHgxLjlkZjVmMTAwMDAwMDJmNGI3NDIxZGZlOWU5NTViNjBkcC00LAotICAgIC0weDEuOWVhYjJlcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTQ4Ci0gICAgMHgxLjc2ZGNmNzAwMDA1M2M0MjhlMzBlZjk5ZDljZjkxYWNjcC0xLAotICAgIDB4MS5hNDk5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ5Ci0gICAgLTB4MS43NmRjZjcwMDAwNTNjNDI4ZTMwZWY5OWQ5Y2Y5MWFjY3AtMSwKLSAgICAtMHgxLmE0OTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTAKLSAgICAweDEuYTlkNDUxMDAwMGEyYTgyYzM5MWE5YjM2MTg2ZWFkNjVwLTUsCi0gICAgMHgxLmFhMDU3OHAtNQotICB9LAotICB7IC8vIEVudHJ5IDE1MQotICAgIC0weDEuYTlkNDUxMDAwMGEyYTgyYzM5MWE5YjM2MTg2ZWFkNjVwLTUsCi0gICAgLTB4MS5hYTA1NzhwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTIKLSAgICAweDEuNmEwOTdkY2M4YjEzNTY3MTJmYzIwZjgyYzRmODdlNGRwLTEsCi0gICAgMHgxLmI0YWU3MHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTUzCi0gICAgLTB4MS42YTA5N2RjYzhiMTM1NjcxMmZjMjBmODJjNGY4N2U0ZHAtMSwKLSAgICAtMHgxLmI0YWU3MHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTU0Ci0gICAgMHgxLjg0OTkyNmZmZmZlYjk1ODYwMjYyYTk5NzcwYThjOWMzcC0xLAotICAgIDB4MS5iOTM2ZGFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTUKLSAgICAtMHgxLjg0OTkyNmZmZmZlYjk1ODYwMjYyYTk5NzcwYThjOWMzcC0xLAotICAgIC0weDEuYjkzNmRhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU2Ci0gICAgLTB4MS5kYWM0MGVmMWUwNDAzMTVmMDc1MTlhOTljMjAzNGZmZnAtNSwKLSAgICAweDEuYmEyNzg0cDgyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU3Ci0gICAgMHgxLmRhYzQwZWYxZTA0MDMxNWYwNzUxOWE5OWMyMDM0ZmZmcC01LAotICAgIC0weDEuYmEyNzg0cDgyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU4Ci0gICAgMHgxLjgxMDc0YjAzNDZmMDczOTAzOTViNGVlMmI1MGIzZjk0cC0xNCwKLSAgICAweDEuYmRiNDRhcDEwNwotICB9LAotICB7IC8vIEVudHJ5IDE1OQotICAgIC0weDEuODEwNzRiMDM0NmYwNzM5MDM5NWI0ZWUyYjUwYjNmOTRwLTE0LAotICAgIC0weDEuYmRiNDRhcDEwNwotICB9LAotICB7IC8vIEVudHJ5IDE2MAotICAgIDB4MS4yMzVkZWJiNzI3Yjk1ZGFhZWMxODNiZmE0ZTcyOGJlMXAtOSwKLSAgICAweDEuYmRiZWZlcDExOQotICB9LAotICB7IC8vIEVudHJ5IDE2MQotICAgIC0weDEuMjM1ZGViYjcyN2I5NWRhYWVjMTgzYmZhNGU3MjhiZTFwLTksCi0gICAgLTB4MS5iZGJlZmVwMTE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTYyCi0gICAgLTB4MS45OTY2M2RhOTRkYjUyOTA3MzBiMDI5NTEzMzcwZTg2M3AtMjMsCi0gICAgMHgxLmJlZWVlZXA4MAotICB9LAotICB7IC8vIEVudHJ5IDE2MwotICAgIDB4MS45OTY2M2RhOTRkYjUyOTA3MzBiMDI5NTEzMzcwZTg2M3AtMjMsCi0gICAgLTB4MS5iZWVlZWVwODAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjQKLSAgICAtMHgxLjYyZmFhMGZmZGM1NWE0YzU0ZjEyMjlmYzAzMDJiZDVmcC0yLAotICAgIDB4MS5iZjZmZDBwMQotICB9LAotICB7IC8vIEVudHJ5IDE2NQotICAgIDB4MS42MmZhYTBmZmRjNTVhNGM1NGYxMjI5ZmMwMzAyYmQ1ZnAtMiwKLSAgICAtMHgxLmJmNmZkMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY2Ci0gICAgLTB4MS5jNmQ0NDRkZTZiOTBjN2I4YjQzNDAyZWY3NDlhNGMzZHAtNSwKLSAgICAweDEuYmZmZmZlcDQ1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY3Ci0gICAgMHgxLmM2ZDQ0NGRlNmI5MGM3YjhiNDM0MDJlZjc0OWE0YzNkcC01LAotICAgIC0weDEuYmZmZmZlcDQ1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY4Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmEzYzc2NTdiODVlNWI0NGJiZDQ0cC0xLAotICAgIDB4MS5jNDYzYWNwMwotICB9LAotICB7IC8vIEVudHJ5IDE2OQotICAgIC0weDEuZmZmZmZmZmZmZmZmYTNjNzY1N2I4NWU1YjQ0YmJkNDRwLTEsCi0gICAgLTB4MS5jNDYzYWNwMwotICB9LAotICB7IC8vIEVudHJ5IDE3MAotICAgIDB4MS45MTM2NDhmZmZmOWUyMzc4N2Y1ZGRiNzVkYzU1ZWVjOHAtMSwKLSAgICAweDEuY2QwYTBjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTcxCi0gICAgLTB4MS45MTM2NDhmZmZmOWUyMzc4N2Y1ZGRiNzVkYzU1ZWVjOHAtMSwKLSAgICAtMHgxLmNkMGEwY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDE3MgotICAgIC0weDEuYTFkNDdjZmQyODI1ZjFjM2UyODM1ZTk0M2I5NjY5ZWZwLTUsCi0gICAgMHgxLmQ0MTgxOHAxMgotICB9LAotICB7IC8vIEVudHJ5IDE3MwotICAgIDB4MS5hMWQ0N2NmZDI4MjVmMWMzZTI4MzVlOTQzYjk2NjllZnAtNSwKLSAgICAtMHgxLmQ0MTgxOHAxMgotICB9LAotICB7IC8vIEVudHJ5IDE3NAotICAgIDB4MS42YTIyZGIwMDAwMzZhOTU5MmRiNzIyZTJkOWJlNDg2OXAtMSwKLSAgICAweDEuZTYyOTQ0cDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzUKLSAgICAtMHgxLjZhMjJkYjAwMDAzNmE5NTkyZGI3MjJlMmQ5YmU0ODY5cC0xLAotICAgIC0weDEuZTYyOTQ0cDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzYKLSAgICAweDEuZDRkZThhZmZmZmZmZDk2ZjgzYmE0NDJmZGYyZjcxMDFwLTIsCi0gICAgMHgxLmU3MDYxZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDE3NwotICAgIC0weDEuZDRkZThhZmZmZmZmZDk2ZjgzYmE0NDJmZGYyZjcxMDFwLTIsCi0gICAgLTB4MS5lNzA2MWVwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzgKLSAgICAtMHgxLmUzY2UwNGYxYjk0ZTFkODJmMDAwMWNiOTlmZWQ5Mjc1cC01LAotICAgIDB4MS5lN2ZmZmVwOTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzkKLSAgICAweDEuZTNjZTA0ZjFiOTRlMWQ4MmYwMDAxY2I5OWZlZDkyNzVwLTUsCi0gICAgLTB4MS5lN2ZmZmVwOTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODAKLSAgICAweDEuZTk3MzYyZmZmZjVkNDZlMWU5OGM4YThjOTQ0NzhhNDRwLTUsCi0gICAgMHgxLmU5YmUwZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDE4MQotICAgIC0weDEuZTk3MzYyZmZmZjVkNDZlMWU5OGM4YThjOTQ0NzhhNDRwLTUsCi0gICAgLTB4MS5lOWJlMGVwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODIKLSAgICAtMHgxLjU3OTc1Y2ZlZmQ3ZTcwNWYzZWIwM2E5ZThlNDhhMThjcC0xLAotICAgIDB4MS5lYjFkYmVwMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODMKLSAgICAweDEuNTc5NzVjZmVmZDdlNzA1ZjNlYjAzYTllOGU0OGExOGNwLTEsCi0gICAgLTB4MS5lYjFkYmVwMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODQKLSAgICAtMHgxLjZhMTAxMmU0YjY5YjA4NmMzZGMwNDI3YWJhODBiYzk2cC0xLAotICAgIDB4MS5lYjFlOGFwMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODUKLSAgICAweDEuNmExMDEyZTRiNjliMDg2YzNkYzA0MjdhYmE4MGJjOTZwLTEsCi0gICAgLTB4MS5lYjFlOGFwMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODYKLSAgICAtMHgxLjlmNDJlNGY0Njc2OTZhZDM2YTcwYWM4YjcwZTBjZDMycC0xLAotICAgIDB4MS5lZmZjOGFwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODcKLSAgICAweDEuOWY0MmU0ZjQ2NzY5NmFkMzZhNzBhYzhiNzBlMGNkMzJwLTEsCi0gICAgLTB4MS5lZmZjOGFwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODgKLSAgICAweDEuY2JhZGI4ZWY4ZjNlMzU4ZDJiOGJlNDkzYzExYjU3YjFwLTYsCi0gICAgMHgxLmY1YzFjNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg5Ci0gICAgLTB4MS5jYmFkYjhlZjhmM2UzNThkMmI4YmU0OTNjMTFiNTdiMXAtNiwKLSAgICAtMHgxLmY1YzFjNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkwCi0gICAgMHgxLjVhZWUyY2ZmZjA4N2U1OWRmY2Q4NTZjYmZlNDU0NGRjcC0yLAotICAgIDB4MS5mN2ZmZmVwMTExCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkxCi0gICAgLTB4MS41YWVlMmNmZmYwODdlNTlkZmNkODU2Y2JmZTQ1NDRkY3AtMiwKLSAgICAtMHgxLmY3ZmZmZXAxMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTIKLSAgICAweDEuMjZkYjdkMDBiYjA2NzQzZmVlNTgxYTg4OGUyMzc4ZjhwLTEsCi0gICAgMHgxLmY5MjUxOHAyNAotICB9LAotICB7IC8vIEVudHJ5IDE5MwotICAgIC0weDEuMjZkYjdkMDBiYjA2NzQzZmVlNTgxYTg4OGUyMzc4ZjhwLTEsCi0gICAgLTB4MS5mOTI1MThwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTQKLSAgICAweDEuZmZmZmZmZmZmZmZmZmViY2NmNzhhNDMyYTY3ODU4YmJwLTEsCi0gICAgMHgxLmY5Y2JlMnA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTk1Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZWJjY2Y3OGE0MzJhNjc4NThiYnAtMSwKLSAgICAtMHgxLmY5Y2JlMnA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTk2Ci0gICAgLTB4MS4xZmEzYmI5YTA3ZTc3ZmQ2NjdmNDkzNjIyYzkwMjlmZnAtMjcsCi0gICAgMHgxLmY5Y2JlMnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTk3Ci0gICAgMHgxLjFmYTNiYjlhMDdlNzdmZDY2N2Y0OTM2MjJjOTAyOWZmcC0yNywKLSAgICAtMHgxLmY5Y2JlMnA4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTk4Ci0gICAgMHgxLjllYzI5YWYxZTE1ZGQ2N2YxN2UzMjA0N2Q5ZmY4ZGI3cC0xLAotICAgIDB4MS5mYWQxNjBwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTkKLSAgICAtMHgxLjllYzI5YWYxZTE1ZGQ2N2YxN2UzMjA0N2Q5ZmY4ZGI3cC0xLAotICAgIC0weDEuZmFkMTYwcDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjAwCi0gICAgMHgxLmZiYzI3ODBmNGJmOGJjMjRkM2ZjY2MxN2Y5ZTc3ZjMycC0xLAotICAgIDB4MS5mZWU1YmFwMgotICB9LAotICB7IC8vIEVudHJ5IDIwMQotICAgIC0weDEuZmJjMjc4MGY0YmY4YmMyNGQzZmNjYzE3ZjllNzdmMzJwLTEsCi0gICAgLTB4MS5mZWU1YmFwMgotICB9LAotICB7IC8vIEVudHJ5IDIwMgotICAgIDB4MS5hOGQ3YzEwMDA1YWRhOGY3ZDQ5MTJiZjYwM2EzMTVmZXAtMSwKLSAgICAweDEuZmYwY2FlcDEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjAzCi0gICAgLTB4MS5hOGQ3YzEwMDA1YWRhOGY3ZDQ5MTJiZjYwM2EzMTVmZXAtMSwKLSAgICAtMHgxLmZmMGNhZXAxMAotICB9LAotICB7IC8vIEVudHJ5IDIwNAotICAgIC0weDEuNTZiMDJkMDAwNDVkYTE0NmU4NTVkMzc3MGM5NjQ2ZmFwLTEsCi0gICAgMHgxLmZmODQwNnA4MAotICB9LAotICB7IC8vIEVudHJ5IDIwNQotICAgIDB4MS41NmIwMmQwMDA0NWRhMTQ2ZTg1NWQzNzcwYzk2NDZmYXAtMSwKLSAgICAtMHgxLmZmODQwNnA4MAotICB9LAotICB7IC8vIEVudHJ5IDIwNgotICAgIDB4MS5jMDI3NDlmZjRjNGM4ZmNiYjQ3MTYxMDg4NGQ4ZTBiZHAtMywKLSAgICAweDEuZmY5ZmZlcDQwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA3Ci0gICAgLTB4MS5jMDI3NDlmZjRjNGM4ZmNiYjQ3MTYxMDg4NGQ4ZTBiZHAtMywKLSAgICAtMHgxLmZmOWZmZXA0MAotICB9LAotICB7IC8vIEVudHJ5IDIwOAotICAgIC0weDEuMzg4ZTcxMDA1ODM0MmFhNWI2OWFmZTNlMjA5MGE0NTdwLTEsCi0gICAgMHgxLmZmYmQ1OHAyNAotICB9LAotICB7IC8vIEVudHJ5IDIwOQotICAgIDB4MS4zODhlNzEwMDU4MzQyYWE1YjY5YWZlM2UyMDkwYTQ1N3AtMSwKLSAgICAtMHgxLmZmYmQ1OHAyNAotICB9LAotICB7IC8vIEVudHJ5IDIxMAotICAgIDB4MS45ZTgwNWFlZjMyODJkNGNlZDQwMjcyNzAyZjE3NGY1M3AtNiwKLSAgICAweDEuZmZkZDdlcDcyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjExCi0gICAgLTB4MS45ZTgwNWFlZjMyODJkNGNlZDQwMjcyNzAyZjE3NGY1M3AtNiwKLSAgICAtMHgxLmZmZGQ3ZXA3MgotICB9LAotICB7IC8vIEVudHJ5IDIxMgotICAgIC0weDEuZmIzYWVmMDE2YjhjZTY2MzcwYWI2MTk3NGU4ZWUwYjJwLTYsCi0gICAgMHgxLmZmZGZmZXA5MQotICB9LAotICB7IC8vIEVudHJ5IDIxMwotICAgIDB4MS5mYjNhZWYwMTZiOGNlNjYzNzBhYjYxOTc0ZThlZTBiMnAtNiwKLSAgICAtMHgxLmZmZGZmZXA5MQotICB9LAotICB7IC8vIEVudHJ5IDIxNAotICAgIC0weDEuZTQzMTQ4ZGE1M2Y0MjIzNTZlZGQzYmRiYWVmM2IyZmFwLTMsCi0gICAgMHgxLmZmZjc3ZXAyMwotICB9LAotICB7IC8vIEVudHJ5IDIxNQotICAgIDB4MS5lNDMxNDhkYTUzZjQyMjM1NmVkZDNiZGJhZWYzYjJmYXAtMywKLSAgICAtMHgxLmZmZjc3ZXAyMwotICB9LAotICB7IC8vIEVudHJ5IDIxNgotICAgIDB4MS5kNmUxODY0NzY0ZDI0YjRkZTE4Y2I0YzE5MDNhNzk1N3AtMSwKLSAgICAweDEuZmZmZTNlcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTcKLSAgICAtMHgxLmQ2ZTE4NjQ3NjRkMjRiNGRlMThjYjRjMTkwM2E3OTU3cC0xLAotICAgIC0weDEuZmZmZTNlcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTgKLSAgICAtMHgxLmZmZmY0OWM1MmY1ODVlNjcyZDcxODU0NDhkNDZlOTc3cC0xLAotICAgIDB4MS5mZmZlM2VwNDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTkKLSAgICAweDEuZmZmZjQ5YzUyZjU4NWU2NzJkNzE4NTQ0OGQ0NmU5NzdwLTEsCi0gICAgLTB4MS5mZmZlM2VwNDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjAKLSAgICAweDEuYWZjNmE5OWNiYWRlODNiNmJlOTJiMmNhNDUxNjc5ODhwLTUsCi0gICAgMHgxLmZmZmUzZXA0NQotICB9LAotICB7IC8vIEVudHJ5IDIyMQotICAgIC0weDEuYWZjNmE5OWNiYWRlODNiNmJlOTJiMmNhNDUxNjc5ODhwLTUsCi0gICAgLTB4MS5mZmZlM2VwNDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjIKLSAgICAtMHgxLjUzYTI5ZTU0YjRiMTQyODMwZGM3OTZjOWVkNWZjNTlicC05LAotICAgIDB4MS5mZmZlN2VwMTAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjIzCi0gICAgMHgxLjUzYTI5ZTU0YjRiMTQyODMwZGM3OTZjOWVkNWZjNTlicC05LAotICAgIC0weDEuZmZmZTdlcDEwMwotICB9LAotICB7IC8vIEVudHJ5IDIyNAotICAgIC0weDEuNDdlODlmZDUwNDdjNGM5NGI1YzBmNjFlMzc1ZjI4NDlwLTExLAotICAgIDB4MS5mZmZlN2VwMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjI1Ci0gICAgMHgxLjQ3ZTg5ZmQ1MDQ3YzRjOTRiNWMwZjYxZTM3NWYyODQ5cC0xMSwKLSAgICAtMHgxLmZmZmU3ZXAxMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjYKLSAgICAweDEuYTQyNTZjOTBjMzc0MTBjZTk1N2MwYjI1MDE5Mzc2MThwLTgsCi0gICAgMHgxLmZmZmY4ZXA0MAotICB9LAotICB7IC8vIEVudHJ5IDIyNwotICAgIC0weDEuYTQyNTZjOTBjMzc0MTBjZTk1N2MwYjI1MDE5Mzc2MThwLTgsCi0gICAgLTB4MS5mZmZmOGVwNDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjgKLSAgICAtMHgxLmQyYmQ4NGY1MDE4ZjQwYzk0YzdmNmU0NTUyZWY4ZTkxcC0zLAotICAgIDB4MS5mZmZmYTRwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjkKLSAgICAweDEuZDJiZDg0ZjUwMThmNDBjOTRjN2Y2ZTQ1NTJlZjhlOTFwLTMsCi0gICAgLTB4MS5mZmZmYTRwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzAKLSAgICAweDEuZmZhYThjZmZkMzgxZWJlN2IyZDZhM2U2OWJkYTM4ODdwLTUsCi0gICAgMHgxLmZmZmZkZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDIzMQotICAgIC0weDEuZmZhYThjZmZkMzgxZWJlN2IyZDZhM2U2OWJkYTM4ODdwLTUsCi0gICAgLTB4MS5mZmZmZGVwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzIKLSAgICAweDEuZmE4ZDNjYTIzYmUyYTg0ZDM3ZjBjMDRlOTdiYWI1ZTVwLTEsCi0gICAgMHgxLmZmZmZmMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjMzCi0gICAgLTB4MS5mYThkM2NhMjNiZTJhODRkMzdmMGMwNGU5N2JhYjVlNXAtMSwKLSAgICAtMHgxLmZmZmZmMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM0Ci0gICAgLTB4MS5mZjk3OGVjZDMyMGFkMmQ3MGMyMDA4MjRlNDAxMDg0M3AtMSwKLSAgICAweDEuZmZmZmYwcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzUKLSAgICAweDEuZmY5NzhlY2QzMjBhZDJkNzBjMjAwODI0ZTQwMTA4NDNwLTEsCi0gICAgLTB4MS5mZmZmZjBwNwotICB9LAotICB7IC8vIEVudHJ5IDIzNgotICAgIDB4MS5kMThmNzZmZmM2ZTRiYTBhMzEzNGU1YmUyMWI1YmM4ZnAtMSwKLSAgICAweDEuZmZmZmY2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzcKLSAgICAtMHgxLmQxOGY3NmZmYzZlNGJhMGEzMTM0ZTViZTIxYjViYzhmcC0xLAotICAgIC0weDEuZmZmZmY2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzgKLSAgICAweDEuZWFlZTgyMDBiOGRiYTUxMzhmOWFkYTQyYTIyYWIzMTlwLTIsCi0gICAgMHgxLmZmZmZmYXAtMgotICB9LAotICB7IC8vIEVudHJ5IDIzOQotICAgIC0weDEuZWFlZTgyMDBiOGRiYTUxMzhmOWFkYTQyYTIyYWIzMTlwLTIsCi0gICAgLTB4MS5mZmZmZmFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDAKLSAgICAtMHgxLjBiMzM2NjUwODk1NzUyMGQ5ZGM4OGQ3YzA5MzM3ZTI0cC0xLAotICAgIDB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQxCi0gICAgMHgxLjBiMzM2NjUwODk1NzUyMGQ5ZGM4OGQ3YzA5MzM3ZTI0cC0xLAotICAgIC0weDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDI0MgotICAgIC0wLjBmLAotICAgIC0weDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDMKLSAgICAwLjBmLAotICAgIDB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDI0NAotICAgIDAuMCwKLSAgICAwLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDUKLSAgICAwLjBmLAotICAgIDB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDI0NgotICAgIC0wLjBmLAotICAgIC0weDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDcKLSAgICAtMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjYsCi0gICAgLTB4MS4wMDAwMDJwLTEyNgotICB9LAotICB7IC8vIEVudHJ5IDI0OAotICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI2LAotICAgIDB4MS4wMDAwMDJwLTEyNgotICB9LAotICB7IC8vIEVudHJ5IDI0OQotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKLSAgICAtMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjUwCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCi0gICAgMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjUxCi0gICAgLTB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAotICAgIC0weDEuZmZmZmZjcC0xMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTIKLSAgICAweDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKLSAgICAweDEuZmZmZmZjcC0xMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTMKLSAgICAweDEuZmZmZmZiZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKLSAgICAweDEuZmZmZmZjcC0xMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTQKLSAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCi0gICAgLTB4MS5mZmZmZmNwLTEyNwotICB9LAotICB7IC8vIEVudHJ5IDI1NQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAotICAgIDB4MS5wLTEyNgotICB9LAotICB7IC8vIEVudHJ5IDI1NgotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKLSAgICAtMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjU3Ci0gICAgMHgxLjAwMDAwMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjYsCi0gICAgMHgxLjAwMDAwMnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjU4Ci0gICAgLTB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI2LAotICAgIC0weDEuMDAwMDAycC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTkKLSAgICAweDEuOTk5OTk5ZDQ0ZjMwNThjNzg5MDE0YjdkMGUyMmZlYzNwLTEzLAotICAgIDB4MS45OTk5OWFwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYwCi0gICAgLTB4MS45OTk5OTlkNDRmMzA1OGM3ODkwMTRiN2QwZTIyZmVjM3AtMTMsCi0gICAgLTB4MS45OTk5OWFwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYxCi0gICAgMHgxLjk5OTk5OTUxM2NjMTczZTUxYmI5OTU1YjA2NmYxZGI4cC0xMiwKLSAgICAweDEuOTk5OTlhcC0xMgotICB9LAotICB7IC8vIEVudHJ5IDI2MgotICAgIC0weDEuOTk5OTk5NTEzY2MxNzNlNTFiYjk5NTViMDY2ZjFkYjhwLTEyLAotICAgIC0weDEuOTk5OTlhcC0xMgotICB9LAotICB7IC8vIEVudHJ5IDI2MwotICAgIDB4MS4zMzMzMzJkOTE2ODUzMjFlNWZjMzk3ZDIwYTVhZjFlNnAtMTEsCi0gICAgMHgxLjMzMzMzNHAtMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjQKLSAgICAtMHgxLjMzMzMzMmQ5MTY4NTMyMWU1ZmMzOTdkMjBhNWFmMWU2cC0xMSwKLSAgICAtMHgxLjMzMzMzNHAtMTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjUKLSAgICAweDEuOTk5OTk3NDRmMzA2ZGMwM2U5ZWY3MDg5N2Y3ODI5OWVwLTExLAotICAgIDB4MS45OTk5OWFwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY2Ci0gICAgLTB4MS45OTk5OTc0NGYzMDZkYzAzZTllZjcwODk3Zjc4Mjk5ZXAtMTEsCi0gICAgLTB4MS45OTk5OWFwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY3Ci0gICAgMHgxLmZmZmZmYWFhYWFhZWVlZWVlZDRlZDRlZGFiNGM3YmQ2cC0xMSwKLSAgICAweDEucC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI2OAotICAgIC0weDEuZmZmZmZhYWFhYWFlZWVlZWVkNGVkNGVkYWI0YzdiZDZwLTExLAotICAgIC0weDEucC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI2OQotICAgIDB4MS4zMzMzMmY2NDVhMThjM2IwY2NmYzBhM2NmN2IyZTkxYnAtMTAsCi0gICAgMHgxLjMzMzMzNHAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzAKLSAgICAtMHgxLjMzMzMyZjY0NWExOGMzYjBjY2ZjMGEzY2Y3YjJlOTFicC0xMCwKLSAgICAtMHgxLjMzMzMzNHAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzEKLSAgICAweDEuNjY2NjYwYWVjMzMwODIxYzdhMTAwY2Y0ODhjMzgwZWJwLTEwLAotICAgIDB4MS42NjY2NjhwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcyCi0gICAgLTB4MS42NjY2NjBhZWMzMzA4MjFjN2ExMDBjZjQ4OGMzODBlYnAtMTAsCi0gICAgLTB4MS42NjY2NjhwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjczCi0gICAgMHgxLjk5OTk5MTEzY2MwMzQxNDRmZGJkYzhhMWRjNzEzMjUzcC0xMCwKLSAgICAweDEuOTk5OTljcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI3NAotICAgIC0weDEuOTk5OTkxMTNjYzAzNDE0NGZkYmRjOGExZGM3MTMyNTNwLTEwLAotICAgIC0weDEuOTk5OTljcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI3NQotICAgIDB4MS5jY2NjYmM3MmIwNWRkMDk1MWE5YzVlNjU1NjBjNTZlM3AtMTAsCi0gICAgMHgxLmNjY2NjY3AtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzYKLSAgICAtMHgxLmNjY2NiYzcyYjA1ZGQwOTUxYTljNWU2NTU2MGM1NmUzcC0xMCwKLSAgICAtMHgxLmNjY2NjY3AtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzcKLSAgICAweDEuMDY2NWFlMzYxNWI1YjdkZTUyNzk4MDY0ZGZjNTliMjlwLTcsCi0gICAgMHgxLjA2NjY2NnAtNwotICB9LAotICB7IC8vIEVudHJ5IDI3OAotICAgIC0weDEuMDY2NWFlMzYxNWI1YjdkZTUyNzk4MDY0ZGZjNTliMjlwLTcsCi0gICAgLTB4MS4wNjY2NjZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzkKLSAgICAweDEuY2NjOGU4YWU5MjU4NmQ4ZDY2YjZhZDBhZWRjYjBkOTRwLTcsCi0gICAgMHgxLmNjY2NjY3AtNwotICB9LAotICB7IC8vIEVudHJ5IDI4MAotICAgIC0weDEuY2NjOGU4YWU5MjU4NmQ4ZDY2YjZhZDBhZWRjYjBkOTRwLTcsCi0gICAgLTB4MS5jY2NjY2NwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODEKLSAgICAweDEuNDk5M2U3MGY3YjE3YzEwYWY5Zjk3ZmM3YjMzYjgyMmJwLTYsCi0gICAgMHgxLjQ5OTk5OHAtNgotICB9LAotICB7IC8vIEVudHJ5IDI4MgotICAgIC0weDEuNDk5M2U3MGY3YjE3YzEwYWY5Zjk3ZmM3YjMzYjgyMmJwLTYsCi0gICAgLTB4MS40OTk5OThwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODMKLSAgICAweDEuYWNjMDQzZjhiMmQ4OWFkNTE0M2MwMzBlOTc2NmZjMTFwLTYsCi0gICAgMHgxLmFjY2NjY3AtNgotICB9LAotICB7IC8vIEVudHJ5IDI4NAotICAgIC0weDEuYWNjMDQzZjhiMmQ4OWFkNTE0M2MwMzBlOTc2NmZjMTFwLTYsCi0gICAgLTB4MS5hY2NjY2NwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODUKLSAgICAweDEuMDdmNDRkNjdjZjQxYWZiYzBjOTUxMDhiOTlmOTFiMDFwLTUsCi0gICAgMHgxLjA4cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjg2Ci0gICAgLTB4MS4wN2Y0NGQ2N2NmNDFhZmJjMGM5NTEwOGI5OWY5MWIwMXAtNSwKLSAgICAtMHgxLjA4cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjg3Ci0gICAgMHgxLjM5ODVmZWFkNDRmYTJiODUxZTY1MWFjYmEzNjlkNzY5cC01LAotICAgIDB4MS4zOTk5OWFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODgKLSAgICAtMHgxLjM5ODVmZWFkNDRmYTJiODUxZTY1MWFjYmEzNjlkNzY5cC01LAotICAgIC0weDEuMzk5OTlhcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjg5Ci0gICAgMHgxLjZiMTRiZWI1ZDQwZDc0NTA5NjI0N2U1OWI2MjI4MjhicC01LAotICAgIDB4MS42YjMzMzRwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTAKLSAgICAtMHgxLjZiMTRiZWI1ZDQwZDc0NTA5NjI0N2U1OWI2MjI4MjhicC01LAotICAgIC0weDEuNmIzMzM0cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjkxCi0gICAgMHgxLjljYTAxNjcxYTc5OTVmYzk3Y2ViZDY5NzI5Y2M0MzA5cC01LAotICAgIDB4MS45Y2NjY2VwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTIKLSAgICAtMHgxLjljYTAxNjcxYTc5OTVmYzk3Y2ViZDY5NzI5Y2M0MzA5cC01LAotICAgIC0weDEuOWNjY2NlcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjkzCi0gICAgMHgxLmNlMjc4Y2Q5ZWIyY2JkMGM2YTRlMTI3OWY2OTBlODU2cC01LAotICAgIDB4MS5jZTY2NjZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTQKLSAgICAtMHgxLmNlMjc4Y2Q5ZWIyY2JkMGM2YTRlMTI3OWY2OTBlODU2cC01LAotICAgIC0weDEuY2U2NjY2cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjk1Ci0gICAgMHgxLjQzYzFlOTk3MjM5MWFhOGVjZDhhOWNjYmE5MDc5MjBhcC0xLAotICAgIDB4MS41ZTdmYzRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTYKLSAgICAtMHgxLjQzYzFlOTk3MjM5MWFhOGVjZDhhOWNjYmE5MDc5MjBhcC0xLAotICAgIC0weDEuNWU3ZmM0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk3Ci0gICAgMHgxLmVlM2Q2YmIyMWM2NGIyMzgyZWZjZmYwY2RmMzBjZTBicC0xLAotICAgIDB4MS40ZTdmYzRwMAotICB9LAotICB7IC8vIEVudHJ5IDI5OAotICAgIC0weDEuZWUzZDZiYjIxYzY0YjIzODJlZmNmZjBjZGYzMGNlMGJwLTEsCi0gICAgLTB4MS40ZTdmYzRwMAotICB9LAotICB7IC8vIEVudHJ5IDI5OQotICAgIDB4MS5kZjhlMjMyM2U0YmYxYTUzOGExMDBlYzFiZjM0OTRhOXAtMSwKLSAgICAweDEuZWRiZmE2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDAKLSAgICAtMHgxLmRmOGUyMzIzZTRiZjFhNTM4YTEwMGVjMWJmMzQ5NGE5cC0xLAotICAgIC0weDEuZWRiZmE2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDEKLSAgICAweDEuMWQzNDdhYTAyZmViM2JiMTc1MGQyNTUwOTQzNWRhODhwLTEsCi0gICAgMHgxLjQ2N2ZjNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAyCi0gICAgLTB4MS4xZDM0N2FhMDJmZWIzYmIxNzUwZDI1NTA5NDM1ZGE4OHAtMSwKLSAgICAtMHgxLjQ2N2ZjNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAzCi0gICAgLTB4MS5mZmVhMDhlMWM5N2Y0YzRkZTAxOTYxY2MzZTdiMDRkY3AtNiwKLSAgICAweDEuOTYxZmI0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDQKLSAgICAweDEuZmZlYTA4ZTFjOTdmNGM0ZGUwMTk2MWNjM2U3YjA0ZGNwLTYsCi0gICAgLTB4MS45NjFmYjRwMQotICB9LAotICB7IC8vIEVudHJ5IDMwNQotICAgIC0weDEuMzczNGNiY2VkOWMwZjQ4NGU1Zjc2MmUwMDIxNmU2MjBwLTEsCi0gICAgMHgxLmU1YmZhNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA2Ci0gICAgMHgxLjM3MzRjYmNlZDljMGY0ODRlNWY3NjJlMDAyMTZlNjIwcC0xLAotICAgIC0weDEuZTViZmE0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDcKLSAgICAtMHgxLmU5ZDI1OTJiZWMxMGMzYWNiMTVjNTg1MjIzOWEyYWE4cC0xLAotICAgIDB4MS4xYWFmY2FwMgotICB9LAotICB7IC8vIEVudHJ5IDMwOAotICAgIDB4MS5lOWQyNTkyYmVjMTBjM2FjYjE1YzU4NTIyMzlhMmFhOHAtMSwKLSAgICAtMHgxLjFhYWZjYXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA5Ci0gICAgLTB4MS5lNGVjZTIwOGQwYzQ5MTNhYjAxOWNhYjBjZTljNzg1ZXAtMSwKLSAgICAweDEuNDI3ZmMycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTAKLSAgICAweDEuZTRlY2UyMDhkMGM0OTEzYWIwMTljYWIwY2U5Yzc4NWVwLTEsCi0gICAgLTB4MS40MjdmYzJwMgotICB9LAotICB7IC8vIEVudHJ5IDMxMQotICAgIC0weDEuMmE1YTAyZDM5MmI1NGY2NDFhMGQ4OGJkNGFjNmMyZTFwLTEsCi0gICAgMHgxLjZhNGZiYXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzEyCi0gICAgMHgxLjJhNWEwMmQzOTJiNTRmNjQxYTBkODhiZDRhYzZjMmUxcC0xLAotICAgIC0weDEuNmE0ZmJhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTMKLSAgICAtMHgxLjI2MzEyM2RmMjJkMTNlZDMyOWM2NjVjODNjMGU3MWU4cC0xLAotICAgIDB4MS42YWYyZjBwMgotICB9LAotICB7IC8vIEVudHJ5IDMxNAotICAgIDB4MS4yNjMxMjNkZjIyZDEzZWQzMjljNjY1YzgzYzBlNzFlOHAtMSwKLSAgICAtMHgxLjZhZjJmMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE1Ci0gICAgLTB4MS5lMThlNjdiNTA4ZmZjOWU0MmY2YzllNzJmOGU1NDVmM3AtMSwKLSAgICAweDEuNDNjNjJhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTYKLSAgICAweDEuZTE4ZTY3YjUwOGZmYzllNDJmNmM5ZTcyZjhlNTQ1ZjNwLTEsCi0gICAgLTB4MS40M2M2MmFwMgotICB9LAotICB7IC8vIEVudHJ5IDMxNwotICAgIC0weDEuZWUwZTgwZWM5ZDE1NjJjMTdhNmNmNjA4YWY5YjBlZDRwLTEsCi0gICAgMHgxLjFjOTk2NHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE4Ci0gICAgMHgxLmVlMGU4MGVjOWQxNTYyYzE3YTZjZjYwOGFmOWIwZWQ0cC0xLAotICAgIC0weDEuMWM5OTY0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTkKLSAgICAtMHgxLjQ3Mjc2ODYzN2VhODg2NmE2NTIwOThhNDNhYTY4OGE2cC0xLAotICAgIDB4MS5lYWQ5M2NwMQotICB9LAotICB7IC8vIEVudHJ5IDMyMAotICAgIDB4MS40NzI3Njg2MzdlYTg4NjZhNjUyMDk4YTQzYWE2ODhhNnAtMSwKLSAgICAtMHgxLmVhZDkzY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIxCi0gICAgLTB4MS40YmEyNGY2MzI1ZjIxNDIwZTdjNDhkNGY5MWUyODA2NHAtNCwKLSAgICAweDEuOWM3ZmIwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjIKLSAgICAweDEuNGJhMjRmNjMyNWYyMTQyMGU3YzQ4ZDRmOTFlMjgwNjRwLTQsCi0gICAgLTB4MS45YzdmYjBwMQotICB9LAotICB7IC8vIEVudHJ5IDMyMwotICAgIDB4MS4wMzRjNjQzMjk1MTUzYWFmZmU1ZDlhMGYyOWU5Mjg0NHAtMSwKLSAgICAweDEuNGUyNjI0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjQKLSAgICAtMHgxLjAzNGM2NDMyOTUxNTNhYWZmZTVkOWEwZjI5ZTkyODQ0cC0xLAotICAgIC0weDEuNGUyNjI0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjUKLSAgICAweDEuZDFlNGQ5NmVhYzkxNzU3NGI5NDhlNGVhOWUzN2IzNmRwLTEsCi0gICAgMHgxLmZmOTkzMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI2Ci0gICAgLTB4MS5kMWU0ZDk2ZWFjOTE3NTc0Yjk0OGU0ZWE5ZTM3YjM2ZHAtMSwKLSAgICAtMHgxLmZmOTkzMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI3Ci0gICAgMHgxLmY3NTAxZTAwMmJjYWZiODk3ZjkzMTkzMWQzYTU3YWZkcC0xLAotICAgIDB4MS42MmU2MWNwMAotICB9LAotICB7IC8vIEVudHJ5IDMyOAotICAgIC0weDEuZjc1MDFlMDAyYmNhZmI4OTdmOTMxOTMxZDNhNTdhZmRwLTEsCi0gICAgLTB4MS42MmU2MWNwMAotICB9LAotICB7IC8vIEVudHJ5IDMyOQotICAgIDB4MS42NWY3ZDY2ZWY2NTkxY2ZjNTFhYjI5ZGMyMDg2ZDNlN3AtMSwKLSAgICAweDEuOGM2NjJjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMwCi0gICAgLTB4MS42NWY3ZDY2ZWY2NTkxY2ZjNTFhYjI5ZGMyMDg2ZDNlN3AtMSwKLSAgICAtMHgxLjhjNjYyY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDMzMQotICAgIC0weDEuZmUwNDNmODc1YzZlZDRhMmMxYjhkNjlhMDlmY2Y1NzhwLTEsCi0gICAgLTB4MS5hOGFhMWNwMAotICB9LAotICB7IC8vIEVudHJ5IDMzMgotICAgIDB4MS5mZTA0M2Y4NzVjNmVkNGEyYzFiOGQ2OWEwOWZjZjU3OHAtMSwKLSAgICAweDEuYThhYTFjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzMKLSAgICAtMHgxLmZmZjE4ZjMxM2U2NmYxYWUyNWY4OWE1ZjdhMWY4NGM0cC0xLAotICAgIC0weDEuOTVlYzhhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzQKLSAgICAweDEuZmZmMThmMzEzZTY2ZjFhZTI1Zjg5YTVmN2ExZjg0YzRwLTEsCi0gICAgMHgxLjk1ZWM4YXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM1Ci0gICAgLTB4MS5mZjIwZDkyMGI5ZTljMjMxNTRmOTdlMmYzNDJhMjg4NHAtMSwKLSAgICAtMHgxLjgzMmVmOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM2Ci0gICAgMHgxLmZmMjBkOTIwYjllOWMyMzE1NGY5N2UyZjM0MmEyODg0cC0xLAotICAgIDB4MS44MzJlZjhwMAotICB9LAotICB7IC8vIEVudHJ5IDMzNwotICAgIC0weDEuZmI5MzNiODlkN2RiMzI4NmVlZDBjZmVhYmVlOTg4NzVwLTEsCi0gICAgLTB4MS43MDcxNjZwMAotICB9LAotICB7IC8vIEVudHJ5IDMzOAotICAgIDB4MS5mYjkzM2I4OWQ3ZGIzMjg2ZWVkMGNmZWFiZWU5ODg3NXAtMSwKLSAgICAweDEuNzA3MTY2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzkKLSAgICAtMHgxLmY1NGQ5NWM1MDU4YjdkYzk5NzJhYjZmOTkyOGNhMDQzcC0xLAotICAgIC0weDEuNWRiM2Q0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDAKLSAgICAweDEuZjU0ZDk1YzUwNThiN2RjOTk3MmFiNmY5OTI4Y2EwNDNwLTEsCi0gICAgMHgxLjVkYjNkNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQxCi0gICAgLTB4MS5lYzU4ODFhMDljNDZhYWUwMjBjZDkwMzYwOThhMTk2ZXAtMSwKLSAgICAtMHgxLjRhZjY0MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQyCi0gICAgMHgxLmVjNTg4MWEwOWM0NmFhZTAyMGNkOTAzNjA5OGExOTZlcC0xLAotICAgIDB4MS40YWY2NDJwMAotICB9LAotICB7IC8vIEVudHJ5IDM0MwotICAgIC0weDEuZTBjMDQ3OTU5MTlkOTYxYTVlODNlNTA1ZGYzMWM2MjRwLTEsCi0gICAgLTB4MS4zODM4YjBwMAotICB9LAotICB7IC8vIEVudHJ5IDM0NAotICAgIDB4MS5lMGMwNDc5NTkxOWQ5NjFhNWU4M2U1MDVkZjMxYzYyNHAtMSwKLSAgICAweDEuMzgzOGIwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDUKLSAgICAtMHgxLmQyOTRjZGVmN2NjMTYxNjMzYTAyZDNlNjIwNThiZTBlcC0xLAotICAgIC0weDEuMjU3YjFlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDYKLSAgICAweDEuZDI5NGNkZWY3Y2MxNjE2MzNhMDJkM2U2MjA1OGJlMGVwLTEsCi0gICAgMHgxLjI1N2IxZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ3Ci0gICAgLTB4MS5jMWU5ODhiOTU2MTRhYmQ2NWQzZDgxMWY1Yzg4MDM5YnAtMSwKLSAgICAtMHgxLjEyYmQ5MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ4Ci0gICAgMHgxLmMxZTk4OGI5NTYxNGFiZDY1ZDNkODExZjVjODgwMzlicC0xLAotICAgIDB4MS4xMmJkOTJwMAotICB9LAotICB7IC8vIEVudHJ5IDM0OQotICAgIC0weDEuYTJjMjg5NWVkYjBkNGJhNTFjZGJkNTM5MGNhYzQ2OGZwLTEsCi0gICAgLTB4MS5lYTVjM2VwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTAKLSAgICAweDEuYTJjMjg5NWVkYjBkNGJhNTFjZGJkNTM5MGNhYzQ2OGZwLTEsCi0gICAgMHgxLmVhNWMzZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDM1MQotICAgIC0weDEuOTVmMDUxNTM2NDRkNjBiOTRkMmYyZTcwMGRmZDNhMzdwLTEsCi0gICAgLTB4MS5kNGI4N2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTIKLSAgICAweDEuOTVmMDUxNTM2NDRkNjBiOTRkMmYyZTcwMGRmZDNhMzdwLTEsCi0gICAgMHgxLmQ0Yjg3Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDM1MwotICAgIC0weDEuODg2NDdkOGFkMmU0MWZiN2MwYWYwZjY0NjE0Yzk5OTNwLTEsCi0gICAgLTB4MS5iZjE0YmFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTQKLSAgICAweDEuODg2NDdkOGFkMmU0MWZiN2MwYWYwZjY0NjE0Yzk5OTNwLTEsCi0gICAgMHgxLmJmMTRiYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDM1NQotICAgIC0weDEuN2EyNTNmOWY4OWE3ZDNlNGY5YzU0NjM4NDE4ZTk3ZjZwLTEsCi0gICAgLTB4MS5hOTcwZjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTYKLSAgICAweDEuN2EyNTNmOWY4OWE3ZDNlNGY5YzU0NjM4NDE4ZTk3ZjZwLTEsCi0gICAgMHgxLmE5NzBmOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDM1NwotICAgIC0weDEuNmIzOTFiMzRhYWI4MjhmYmU3Y2Q3ZGNhZjllZjNiZDZwLTEsCi0gICAgLTB4MS45M2NkMzZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTgKLSAgICAweDEuNmIzOTFiMzRhYWI4MjhmYmU3Y2Q3ZGNhZjllZjNiZDZwLTEsCi0gICAgMHgxLjkzY2QzNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM1OQotICAgIC0weDEuNWJhNmUyZmI5ODBkNDgyY2YwMGVkZTgwZjU1OTdmYjJwLTEsCi0gICAgLTB4MS43ZTI5NzRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjAKLSAgICAweDEuNWJhNmUyZmI5ODBkNDgyY2YwMGVkZTgwZjU1OTdmYjJwLTEsCi0gICAgMHgxLjdlMjk3NHAtMQotICB9LAotICB7IC8vIEVudHJ5IDM2MQotICAgIC0weDEuNGI3NWI1OTU0ZTcxODAyMDkwMDcxOWUyNWE3ZWE5M2JwLTEsCi0gICAgLTB4MS42ODg1YjJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjIKLSAgICAweDEuNGI3NWI1OTU0ZTcxODAyMDkwMDcxOWUyNWE3ZWE5M2JwLTEsCi0gICAgMHgxLjY4ODViMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM2MwotICAgIC0weDEuM2FhY2ZhNTEwODEwMDU0YzUyYWUwYjY3ZDExNmViNDBwLTEsCi0gICAgLTB4MS41MmUxZjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjQKLSAgICAweDEuM2FhY2ZhNTEwODEwMDU0YzUyYWUwYjY3ZDExNmViNDBwLTEsCi0gICAgMHgxLjUyZTFmMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDM2NQotICAgIC0weDEuMjk1NDY0NGNlYjhlM2EyNDc5YzgzYWU4NGFmNTdkM2VwLTEsCi0gICAgLTB4MS4zZDNlMzZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjYKLSAgICAweDEuMjk1NDY0NGNlYjhlM2EyNDc5YzgzYWU4NGFmNTdkM2VwLTEsCi0gICAgMHgxLjNkM2UzNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM2NwotICAgIC0weDEuZmM3NjlhZWNkMjY1Y2ZlYTA4ZTBmZjMwYzJmYmNhY2RwLTIsCi0gICAgLTB4MS4wYTBiMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjgKLSAgICAweDEuZmM3NjlhZWNkMjY1Y2ZlYTA4ZTBmZjMwYzJmYmNhY2RwLTIsCi0gICAgMHgxLjBhMGIwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM2OQotICAgIC0weDEuYzg1M2M3MDRlM2I5NDMyMjAzMWQ2YjQ3YWVmODUzYzlwLTIsCi0gICAgLTB4MS5kOGY3MjBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzAKLSAgICAweDEuYzg1M2M3MDRlM2I5NDMyMjAzMWQ2YjQ3YWVmODUzYzlwLTIsCi0gICAgMHgxLmQ4ZjcyMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDM3MQotICAgIC0weDEuOTJhYmE4OTgxYjI1ZGVkYTRjYzE4MTcyNTE3MjNhMWJwLTIsCi0gICAgLTB4MS45ZGQ4M2NwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzIKLSAgICAweDEuOTJhYmE4OTgxYjI1ZGVkYTRjYzE4MTcyNTE3MjNhMWJwLTIsCi0gICAgMHgxLjlkZDgzY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDM3MwotICAgIC0weDEuNWJhYzA1ZTFlMGE3YzJkZTI4MGZjYjkzYmU2N2E0ZGFwLTIsCi0gICAgLTB4MS42MmI5NThwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzQKLSAgICAweDEuNWJhYzA1ZTFlMGE3YzJkZTI4MGZjYjkzYmU2N2E0ZGFwLTIsCi0gICAgMHgxLjYyYjk1OHAtMgotICB9LAotICB7IC8vIEVudHJ5IDM3NQotICAgIC0weDEuMjM4M2NhMmIyNDk4MDdkOTUwMDVkOTZjZmRhZWNkNmNwLTIsCi0gICAgLTB4MS4yNzlhNzRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzYKLSAgICAweDEuMjM4M2NhMmIyNDk4MDdkOTUwMDVkOTZjZmRhZWNkNmNwLTIsCi0gICAgMHgxLjI3OWE3NHAtMgotICB9LAotICB7IC8vIEVudHJ5IDM3NwotICAgIC0weDEuZDRjNWJiODcyZWE1Mzc1ODM0Y2EwYmNhMDg4ZDFkNzVwLTMsCi0gICAgLTB4MS5kOGY3MjBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzgKLSAgICAweDEuZDRjNWJiODcyZWE1Mzc1ODM0Y2EwYmNhMDg4ZDFkNzVwLTMsCi0gICAgMHgxLmQ4ZjcyMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDM3OQotICAgIC0weDEuNjBmM2ZhNDYwYjg1ODExZDJhZTcxMGNkNjllYzM2OTBwLTMsCi0gICAgLTB4MS42MmI5NThwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODAKLSAgICAweDEuNjBmM2ZhNDYwYjg1ODExZDJhZTcxMGNkNjllYzM2OTBwLTMsCi0gICAgMHgxLjYyYjk1OHAtMwotICB9LAotICB7IC8vIEVudHJ5IDM4MQotICAgIC0weDEuZDdlYTNkNTZlMWU2MjQ0Yzg3ODZkNzRmMTg5ZDk4YWNwLTQsCi0gICAgLTB4MS5kOGY3MjBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODIKLSAgICAweDEuZDdlYTNkNTZlMWU2MjQ0Yzg3ODZkNzRmMTg5ZDk4YWNwLTQsCi0gICAgMHgxLmQ4ZjcyMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDM4MwotICAgIC0weDEuZDhiM2RlYmE2YWM0OTNiMDRiMjEwM2EwZGJhZWYwMmZwLTUsCi0gICAgLTB4MS5kOGY3MjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODQKLSAgICAweDEuZDhiM2RlYmE2YWM0OTNiMDRiMjEwM2EwZGJhZWYwMmZwLTUsCi0gICAgMHgxLmQ4ZjcyMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDM4NQotICAgIDB4MS5kOGIzZGViYTZhYzQ5M2IwNGIyMTAzYTBkYmFlZjAyZnAtNSwKLSAgICAweDEuZDhmNzIwcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzg2Ci0gICAgLTB4MS5kOGIzZGViYTZhYzQ5M2IwNGIyMTAzYTBkYmFlZjAyZnAtNSwKLSAgICAtMHgxLmQ4ZjcyMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDM4NwotICAgIDB4MS5kN2VhM2Q1NmUxZTYyNDRjODc4NmQ3NGYxODlkOThhY3AtNCwKLSAgICAweDEuZDhmNzIwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzg4Ci0gICAgLTB4MS5kN2VhM2Q1NmUxZTYyNDRjODc4NmQ3NGYxODlkOThhY3AtNCwKLSAgICAtMHgxLmQ4ZjcyMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDM4OQotICAgIDB4MS42MGYzZmE0NjBiODU4MTFkMmFlNzEwY2Q2OWVjMzY5MHAtMywKLSAgICAweDEuNjJiOTU4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkwCi0gICAgLTB4MS42MGYzZmE0NjBiODU4MTFkMmFlNzEwY2Q2OWVjMzY5MHAtMywKLSAgICAtMHgxLjYyYjk1OHAtMwotICB9LAotICB7IC8vIEVudHJ5IDM5MQotICAgIDB4MS5kNGM1YmI4NzJlYTUzNzU4MzRjYTBiY2EwODhkMWQ3NXAtMywKLSAgICAweDEuZDhmNzIwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkyCi0gICAgLTB4MS5kNGM1YmI4NzJlYTUzNzU4MzRjYTBiY2EwODhkMWQ3NXAtMywKLSAgICAtMHgxLmQ4ZjcyMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDM5MwotICAgIDB4MS4yMzgzY2EyYjI0OTgwN2Q5NTAwNWQ5NmNmZGFlY2Q2Y3AtMiwKLSAgICAweDEuMjc5YTc0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk0Ci0gICAgLTB4MS4yMzgzY2EyYjI0OTgwN2Q5NTAwNWQ5NmNmZGFlY2Q2Y3AtMiwKLSAgICAtMHgxLjI3OWE3NHAtMgotICB9LAotICB7IC8vIEVudHJ5IDM5NQotICAgIDB4MS41YmFjMDVlMWUwYTdjMmRlMjgwZmNiOTNiZTY3YTRkYXAtMiwKLSAgICAweDEuNjJiOTU4cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk2Ci0gICAgLTB4MS41YmFjMDVlMWUwYTdjMmRlMjgwZmNiOTNiZTY3YTRkYXAtMiwKLSAgICAtMHgxLjYyYjk1OHAtMgotICB9LAotICB7IC8vIEVudHJ5IDM5NwotICAgIDB4MS45MmFiYTg5ODFiMjVkZWRhNGNjMTgxNzI1MTcyM2ExYnAtMiwKLSAgICAweDEuOWRkODNjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk4Ci0gICAgLTB4MS45MmFiYTg5ODFiMjVkZWRhNGNjMTgxNzI1MTcyM2ExYnAtMiwKLSAgICAtMHgxLjlkZDgzY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDM5OQotICAgIDB4MS5jODUzYzcwNGUzYjk0MzIyMDMxZDZiNDdhZWY4NTNjOXAtMiwKLSAgICAweDEuZDhmNzIwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAwCi0gICAgLTB4MS5jODUzYzcwNGUzYjk0MzIyMDMxZDZiNDdhZWY4NTNjOXAtMiwKLSAgICAtMHgxLmQ4ZjcyMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDQwMQotICAgIDB4MS5mYzc2OWFlY2QyNjVjZmVhMDhlMGZmMzBjMmZiY2FjZHAtMiwKLSAgICAweDEuMGEwYjAycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAyCi0gICAgLTB4MS5mYzc2OWFlY2QyNjVjZmVhMDhlMGZmMzBjMmZiY2FjZHAtMiwKLSAgICAtMHgxLjBhMGIwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQwMwotICAgIDB4MS4yOTU0NjQ0Y2ViOGUzYTI0NzljODNhZTg0YWY1N2QzZXAtMSwKLSAgICAweDEuM2QzZTM2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA0Ci0gICAgLTB4MS4yOTU0NjQ0Y2ViOGUzYTI0NzljODNhZTg0YWY1N2QzZXAtMSwKLSAgICAtMHgxLjNkM2UzNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQwNQotICAgIDB4MS4zYWFkMDBhMDkyNjhhMzlkZjE2NTNjNzBkYjkxZjE1N3AtMSwKLSAgICAweDEuNTJlMWY4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA2Ci0gICAgLTB4MS4zYWFkMDBhMDkyNjhhMzlkZjE2NTNjNzBkYjkxZjE1N3AtMSwKLSAgICAtMHgxLjUyZTFmOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQwNwotICAgIDB4MS40Yjc1YmJhZTM4OGE3ZjM0NjZlN2YyZDZiZGNmNzJiYnAtMSwKLSAgICAweDEuNjg4NWJhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA4Ci0gICAgLTB4MS40Yjc1YmJhZTM4OGE3ZjM0NjZlN2YyZDZiZGNmNzJiYnAtMSwKLSAgICAtMHgxLjY4ODViYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQwOQotICAgIDB4MS41YmE2ZThkYjE4MzM0NzU3MTJiOWE0MmExYWQwZDJjMnAtMSwKLSAgICAweDEuN2UyOTdjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDEwCi0gICAgLTB4MS41YmE2ZThkYjE4MzM0NzU3MTJiOWE0MmExYWQwZDJjMnAtMSwKLSAgICAtMHgxLjdlMjk3Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDQxMQotICAgIDB4MS42YjM5MjBkODExNzgyODkyOGZlMTBhYzcwYmE2OWU3NnAtMSwKLSAgICAweDEuOTNjZDNlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDEyCi0gICAgLTB4MS42YjM5MjBkODExNzgyODkyOGZlMTBhYzcwYmE2OWU3NnAtMSwKLSAgICAtMHgxLjkzY2QzZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQxMwotICAgIDB4MS43YTI1NDUwNDQzMDk4ODM2YzUyMDIzNzVkYjRiODQ2MnAtMSwKLSAgICAweDEuYTk3MXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQxNAotICAgIC0weDEuN2EyNTQ1MDQ0MzA5ODgzNmM1MjAyMzc1ZGI0Yjg0NjJwLTEsCi0gICAgLTB4MS5hOTcxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE1Ci0gICAgMHgxLjg4NjQ4MmFlNjc5N2IzODM2NGY1YzcyY2U5YTNiNzZmcC0xLAotICAgIDB4MS5iZjE0YzJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTYKLSAgICAtMHgxLjg4NjQ4MmFlNjc5N2IzODM2NGY1YzcyY2U5YTNiNzZmcC0xLAotICAgIC0weDEuYmYxNGMycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE3Ci0gICAgMHgxLjk1ZjA1NjMzN2FjYzFkMmQ1NTc1MjUyMzJlOTE1NDY3cC0xLAotICAgIDB4MS5kNGI4ODRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTgKLSAgICAtMHgxLjk1ZjA1NjMzN2FjYzFkMmQ1NTc1MjUyMzJlOTE1NDY3cC0xLAotICAgIC0weDEuZDRiODg0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE5Ci0gICAgMHgxLmEyYzI4OTVlZGIwZDRiYTUxY2RiZDUzOTBjYWM0NjhmcC0xLAotICAgIDB4MS5lYTVjM2VwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjAKLSAgICAtMHgxLmEyYzI4OTVlZGIwZDRiYTUxY2RiZDUzOTBjYWM0NjhmcC0xLAotICAgIC0weDEuZWE1YzNlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDIxCi0gICAgMHgxLmMxZTk4OGI5NTYxNGFiZDY1ZDNkODExZjVjODgwMzlicC0xLAotICAgIDB4MS4xMmJkOTJwMAotICB9LAotICB7IC8vIEVudHJ5IDQyMgotICAgIC0weDEuYzFlOTg4Yjk1NjE0YWJkNjVkM2Q4MTFmNWM4ODAzOWJwLTEsCi0gICAgLTB4MS4xMmJkOTJwMAotICB9LAotICB7IC8vIEVudHJ5IDQyMwotICAgIDB4MS5kMjk0ZDJlMDZiM2QxMGE0ZGUyNjMxNzJkNTBmNDQ5N3AtMSwKLSAgICAweDEuMjU3YjI0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjQKLSAgICAtMHgxLmQyOTRkMmUwNmIzZDEwYTRkZTI2MzE3MmQ1MGY0NDk3cC0xLAotICAgIC0weDEuMjU3YjI0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjUKLSAgICAweDEuZTBjMDRiYjY1YmQzMzAxMmJlNzJhMzQwZGYyYzA0NGJwLTEsCi0gICAgMHgxLjM4MzhiNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI2Ci0gICAgLTB4MS5lMGMwNGJiNjViZDMzMDEyYmU3MmEzNDBkZjJjMDQ0YnAtMSwKLSAgICAtMHgxLjM4MzhiNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI3Ci0gICAgMHgxLmVjNTg4NGViOTkwYzNkZWFhZWViZDNmMGY4NGQ2OTYycC0xLAotICAgIDB4MS40YWY2NDhwMAotICB9LAotICB7IC8vIEVudHJ5IDQyOAotICAgIC0weDEuZWM1ODg0ZWI5OTBjM2RlYWFlZWJkM2YwZjg0ZDY5NjJwLTEsCi0gICAgLTB4MS40YWY2NDhwMAotICB9LAotICB7IC8vIEVudHJ5IDQyOQotICAgIDB4MS5mNTRkOTgzNWIwZTY2ZTE3NjEyMTYwMjcyNTIxZjNiMHAtMSwKLSAgICAweDEuNWRiM2RhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzAKLSAgICAtMHgxLmY1NGQ5ODM1YjBlNjZlMTc2MTIxNjAyNzI1MjFmM2IwcC0xLAotICAgIC0weDEuNWRiM2RhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzEKLSAgICAweDEuZmI5MzNkMWNkOTMxNjg1ZTkwMmU0MDNhMWJhYWVjZmRwLTEsCi0gICAgMHgxLjcwNzE2Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMyCi0gICAgLTB4MS5mYjkzM2QxY2Q5MzE2ODVlOTAyZTQwM2ExYmFhZWNmZHAtMSwKLSAgICAtMHgxLjcwNzE2Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMzCi0gICAgMHgxLmZmMjBkOWQzZTg5ODRmZWMzMzk4MmU0MmY1ODg0ZjJjcC0xLAotICAgIDB4MS44MzJlZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDQzNAotICAgIC0weDEuZmYyMGQ5ZDNlODk4NGZlYzMzOTgyZTQyZjU4ODRmMmNwLTEsCi0gICAgLTB4MS44MzJlZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDQzNQotICAgIDB4MS5mZmYxOGYwM2E0YjdlNmFhY2Y1MWY4MzkzMWU4NTA0MnAtMSwKLSAgICAweDEuOTVlYzkwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzYKLSAgICAtMHgxLmZmZjE4ZjAzYTRiN2U2YWFjZjUxZjgzOTMxZTg1MDQycC0xLAotICAgIC0weDEuOTVlYzkwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzcKLSAgICAweDEuZmUwNDNmODc1YzZlZDRhMmMxYjhkNjlhMDlmY2Y1NzhwLTEsCi0gICAgMHgxLmE4YWExY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM4Ci0gICAgLTB4MS5mZTA0M2Y4NzVjNmVkNGEyYzFiOGQ2OWEwOWZjZjU3OHAtMSwKLSAgICAtMHgxLmE4YWExY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM5Ci0gICAgMHgxLmIzZDM2YTk2ODgwY2Y2OWQ5ODg0YTQ5ZjUzODFlOTE3cC0xLAotICAgIDB4MS4wNGFmZjhwMAotICB9LAotICB7IC8vIEVudHJ5IDQ0MAotICAgIC0weDEuYjNkMzZhOTY4ODBjZjY5ZDk4ODRhNDlmNTM4MWU5MTdwLTEsCi0gICAgLTB4MS4wNGFmZjhwMAotICB9LAotICB7IC8vIEVudHJ5IDQ0MQotICAgIDB4MS5iM2Q0MWFlYmNmMzkxYzMwYzNkMmYxZWU3Yjc5NzEwY3AtMSwKLSAgICAweDEuMDRiMGEwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDIKLSAgICAtMHgxLmIzZDQxYWViY2YzOTFjMzBjM2QyZjFlZTdiNzk3MTBjcC0xLAotICAgIC0weDEuMDRiMGEwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDMKLSAgICAweDEuYjNkNGNiNDA1YWIzMjkyYmU3ZGY1YjFiOTgwMzJmYmVwLTEsCi0gICAgMHgxLjA0YjE0OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ0Ci0gICAgLTB4MS5iM2Q0Y2I0MDVhYjMyOTJiZTdkZjViMWI5ODAzMmZiZXAtMSwKLSAgICAtMHgxLjA0YjE0OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ1Ci0gICAgMHgxLmIzZDU3Yjk0MmE3YWQxOWU5Yjk4OTJjOTMxOWUxYmU2cC0xLAotICAgIDB4MS4wNGIxZjBwMAotICB9LAotICB7IC8vIEVudHJ5IDQ0NgotICAgIC0weDEuYjNkNTdiOTQyYTdhZDE5ZTliOTg5MmM5MzE5ZTFiZTZwLTEsCi0gICAgLTB4MS4wNGIxZjBwMAotICB9LAotICB7IC8vIEVudHJ5IDQ0NwotICAgIDB4MS5iM2Q2MmJlNzNlOGZjOTk4YzZjMmRmNjU5MDQyNTYxM3AtMSwKLSAgICAweDEuMDRiMjk4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDgKLSAgICAtMHgxLmIzZDYyYmU3M2U4ZmM5OThjNmMyZGY2NTkwNDI1NjEzcC0xLAotICAgIC0weDEuMDRiMjk4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDkKLSAgICAweDEuYjNkNmRjMzk5NmYxYzUyYWExZjgzYmRlZTFkMGUwMjNwLTEsCi0gICAgMHgxLjA0YjM0MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUwCi0gICAgLTB4MS5iM2Q2ZGMzOTk2ZjFjNTJhYTFmODNiZGVlMWQwZTAyM3AtMSwKLSAgICAtMHgxLjA0YjM0MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUxCi0gICAgMHgxLmIzZDc4YzhiMzNhMDc4NjRiNmE4Nzg1NzNkYjM0YmNhcC0xLAotICAgIDB4MS4wNGIzZThwMAotICB9LAotICB7IC8vIEVudHJ5IDQ1MgotICAgIC0weDEuYjNkNzhjOGIzM2EwNzg2NGI2YTg3ODU3M2RiMzRiY2FwLTEsCi0gICAgLTB4MS4wNGIzZThwMAotICB9LAotICB7IC8vIEVudHJ5IDQ1MwotICAgIDB4MS5iM2Q4M2NkYzE0OWI5NzU3ZGYxOTVhZDg4NWFiNTIwMXAtMSwKLSAgICAweDEuMDRiNDkwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTQKLSAgICAtMHgxLmIzZDgzY2RjMTQ5Yjk3NTdkZjE5NWFkODg1YWI1MjAxcC0xLAotICAgIC0weDEuMDRiNDkwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTUKLSAgICAweDEuYjNkOGU4Zjk5MDgzNjBiMzhjZDEzZmNiZjYyMjRkOTNwLTEsCi0gICAgMHgxLjA0YjUzNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU2Ci0gICAgLTB4MS5iM2Q4ZThmOTkwODM2MGIzOGNkMTNmY2JmNjIyNGQ5M3AtMSwKLSAgICAtMHgxLjA0YjUzNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU3Ci0gICAgLTAuMGYsCi0gICAgLTB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDQ1OAotICAgIDAuMGYsCi0gICAgMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDU5Ci0gICAgMC4wLAotICAgIDAuMAotICB9LAotICB7IC8vIEVudHJ5IDQ2MAotICAgIDAuMGYsCi0gICAgMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDYxCi0gICAgLTAuMGYsCi0gICAgLTB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDQ2MgotICAgIDB4MS4xNzczZDM2YTY0ZGY2MWQ2NzE1ZTYwYWYwNjM1NTlmNHAtMSwKLSAgICAweDEuMjc5YTcycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDYzCi0gICAgLTB4MS4xNzczZDM2YTY0ZGY2MWQ2NzE1ZTYwYWYwNjM1NTlmNHAtMSwKLSAgICAtMHgxLjI3OWE3MnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ2NAotICAgIDB4MS4xNzczZDUxNzY3YTc4ZmU5MWI1NWY2YjdlNWZkNDRjMnAtMSwKLSAgICAweDEuMjc5YTc0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY1Ci0gICAgLTB4MS4xNzczZDUxNzY3YTc4ZmU5MWI1NWY2YjdlNWZkNDRjMnAtMSwKLSAgICAtMHgxLjI3OWE3NHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ2NgotICAgIDB4MS4xNzczZDZjNDZhNmVhNjg3ZjAzNjI1MTk0ZDI1YmI1MnAtMSwKLSAgICAweDEuMjc5YTc2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY3Ci0gICAgLTB4MS4xNzczZDZjNDZhNmVhNjg3ZjAzNjI1MTk0ZDI1YmI1MnAtMSwKLSAgICAtMHgxLjI3OWE3NnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ2OAotICAgIDB4MS5mOTViOGY0MDUwMTA1N2FjNDlhY2VmMTM5OTNiMGM1NXAtMSwKLSAgICAweDEuYmI2N2FjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjkKLSAgICAtMHgxLmY5NWI4ZjQwNTAxMDU3YWM0OWFjZWYxMzk5M2IwYzU1cC0xLAotICAgIC0weDEuYmI2N2FjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzAKLSAgICAweDEuZjk1YjhlOWJlNzI3NzAyZjc1OTVhZTEwMDBhMTRhMWFwLTEsCi0gICAgMHgxLmJiNjdhZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDcxCi0gICAgLTB4MS5mOTViOGU5YmU3Mjc3MDJmNzU5NWFlMTAwMGExNGExYXAtMSwKLSAgICAtMHgxLmJiNjdhZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDcyCi0gICAgMHgxLmY5NWI4ZGY3N2UzNmEzNDQ2NzBlZDA3MTQ5MTkxYTU4cC0xLAotICAgIDB4MS5iYjY3YjBwMAotICB9LAotICB7IC8vIEVudHJ5IDQ3MwotICAgIC0weDEuZjk1YjhkZjc3ZTM2YTM0NDY3MGVkMDcxNDkxOTFhNThwLTEsCi0gICAgLTB4MS5iYjY3YjBwMAotICB9LAotICB7IC8vIEVudHJ5IDQ3NAotICAgIDB4MS5iMWQ4MmU4MzVhOTE4ZGUxOGY1ZmRhZGM4YjEyNDBjZnAtMiwKLSAgICAweDEuYmZmZmZlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDc1Ci0gICAgLTB4MS5iMWQ4MmU4MzVhOTE4ZGUxOGY1ZmRhZGM4YjEyNDBjZnAtMiwKLSAgICAtMHgxLmJmZmZmZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDQ3NgotICAgIDB4MS5iMWQ4MzA1MzIxNjE2OTQ3NmY0ZDE5ODJiOWIxNGFiMXAtMiwKLSAgICAweDEuYzBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzcKLSAgICAtMHgxLmIxZDgzMDUzMjE2MTY5NDc2ZjRkMTk4MmI5YjE0YWIxcC0yLAotICAgIC0weDEuYzBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzgKLSAgICAweDEuYjFkODMyMjJlODMwZDgzNzQzMjU4ZmQwOTA0MGVlNTZwLTIsCi0gICAgMHgxLmMwMDAwMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDQ3OQotICAgIC0weDEuYjFkODMyMjJlODMwZDgzNzQzMjU4ZmQwOTA0MGVlNTZwLTIsCi0gICAgLTB4MS5jMDAwMDJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODAKLSAgICAweDEuNDRlYjM2OTE0MjgwNjJiMjc5MjVjNTg1YWQ1OWQ2MmFwLTEsCi0gICAgMHgxLjVmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ4MQotICAgIC0weDEuNDRlYjM2OTE0MjgwNjJiMjc5MjVjNTg1YWQ1OWQ2MmFwLTEsCi0gICAgLTB4MS41ZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODIKLSAgICAweDEuNDRlYjM4MWNmMzg2YWIwNGE0Zjg2NTZhYmVhODBiODNwLTEsCi0gICAgMHgxLjYwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDgzCi0gICAgLTB4MS40NGViMzgxY2YzODZhYjA0YTRmODY1NmFiZWE4MGI4M3AtMSwKLSAgICAtMHgxLjYwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDg0Ci0gICAgMHgxLjQ0ZWIzOWE4YTQ4YmFlNmI5OGFlMTFjOTQwMDUzNWU1cC0xLAotICAgIDB4MS42MDAwMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODUKLSAgICAtMHgxLjQ0ZWIzOWE4YTQ4YmFlNmI5OGFlMTFjOTQwMDUzNWU1cC0xLAotICAgIC0weDEuNjAwMDAycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDg2Ci0gICAgMHgxLmRhZDkwMTdiOTY0MDhjMzc1ZDRmYWYwZTQ3NzZkMWZjcC0xLAotICAgIDB4MS4yZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDQ4NwotICAgIC0weDEuZGFkOTAxN2I5NjQwOGMzNzVkNGZhZjBlNDc3NmQxZmNwLTEsCi0gICAgLTB4MS4yZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDQ4OAotICAgIDB4MS5kYWQ5MDJmYThhYzg3MGY1MmYxYjg0M2FjODNiYzNlZHAtMSwKLSAgICAweDEuMzBwMAotICB9LAotICB7IC8vIEVudHJ5IDQ4OQotICAgIC0weDEuZGFkOTAyZmE4YWM4NzBmNTJmMWI4NDNhYzgzYmMzZWRwLTEsCi0gICAgLTB4MS4zMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDkwCi0gICAgMHgxLmRhZDkwNDc5N2Y0OGVhNGVmNGZkMmU0N2ZlNGQ1MmJkcC0xLAotICAgIDB4MS4zMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDQ5MQotICAgIC0weDEuZGFkOTA0Nzk3ZjQ4ZWE0ZWY0ZmQyZTQ3ZmU0ZDUyYmRwLTEsCi0gICAgLTB4MS4zMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDQ5MgotICAgIDB4MS40YjcwODA5M2M5Y2I0NTM1NWU3ODIxZTVhYWQ5OGNlOHAtMSwKLSAgICAweDEuMzdmZmZlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTMKLSAgICAtMHgxLjRiNzA4MDkzYzljYjQ1MzU1ZTc4MjFlNWFhZDk4Y2U4cC0xLAotICAgIC0weDEuMzdmZmZlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTQKLSAgICAweDEuNGI3MDdhN2FjZGVjYzg0MjM5NDYzZTc4YjMxMmZhMTBwLTEsCi0gICAgMHgxLjM4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTUKLSAgICAtMHgxLjRiNzA3YTdhY2RlY2M4NDIzOTQ2M2U3OGIzMTJmYTEwcC0xLAotICAgIC0weDEuMzhwMQotICB9LAotICB7IC8vIEVudHJ5IDQ5NgotICAgIDB4MS40YjcwNzQ2MWQxZjk5NDQ3NmM2NzdjNWFkNWRkYjI2NHAtMSwKLSAgICAweDEuMzgwMDAycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTcKLSAgICAtMHgxLjRiNzA3NDYxZDFmOTk0NDc2YzY3N2M1YWQ1ZGRiMjY0cC0xLAotICAgIC0weDEuMzgwMDAycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTgKLSAgICAweDEuMDY2ZTdmNzA1YTZjYTJiOWUxMDdmN2RjOWYzYjI2ZTZwLTQsCi0gICAgMHgxLjA2OWM4Y3AtNAotICB9LAotICB7IC8vIEVudHJ5IDQ5OQotICAgIC0weDEuMDY2ZTdmNzA1YTZjYTJiOWUxMDdmN2RjOWYzYjI2ZTZwLTQsCi0gICAgLTB4MS4wNjljOGNwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDAKLSAgICAweDEuMDVlNDc2ZDI3ZmViYzhiN2U5NjkwMDA5YjM2N2MzMjdwLTMsCi0gICAgMHgxLjA2OWM4Y3AtMwotICB9LAotICB7IC8vIEVudHJ5IDUwMQotICAgIC0weDEuMDVlNDc2ZDI3ZmViYzhiN2U5NjkwMDA5YjM2N2MzMjdwLTMsCi0gICAgLTB4MS4wNjljOGNwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDIKLSAgICAweDEuODc3ZTJkZTVjOWEwNjZiOGRiNTk1YWRjMTQ5YWYwYzBwLTMsCi0gICAgMHgxLjg5ZWFkMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDUwMwotICAgIC0weDEuODc3ZTJkZTVjOWEwNjZiOGRiNTk1YWRjMTQ5YWYwYzBwLTMsCi0gICAgLTB4MS44OWVhZDJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDQKLSAgICAweDEuMDNiZTA3YWNiOWRhYjcxOWI0MzQzYTMzYjlmYTZhZmVwLTIsCi0gICAgMHgxLjA2OWM4Y3AtMgotICB9LAotICB7IC8vIEVudHJ5IDUwNQotICAgIC0weDEuMDNiZTA3YWNiOWRhYjcxOWI0MzQzYTMzYjlmYTZhZmVwLTIsCi0gICAgLTB4MS4wNjljOGNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDYKLSAgICAweDEuNDJhYmJjNWIzYjJmOTFlOGVjZTQ2ZTVlZmZkMjgzNjlwLTIsCi0gICAgMHgxLjQ4NDNiMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDUwNwotICAgIC0weDEuNDJhYmJjNWIzYjJmOTFlOGVjZTQ2ZTVlZmZkMjgzNjlwLTIsCi0gICAgLTB4MS40ODQzYjBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDgKLSAgICAweDEuODA0NjAxNDExZDkzZjQ3NTA5MTk2NzAwNjFkZTA3ZDlwLTIsCi0gICAgMHgxLjg5ZWFkNHAtMgotICB9LAotICB7IC8vIEVudHJ5IDUwOQotICAgIC0weDEuODA0NjAxNDExZDkzZjQ3NTA5MTk2NzAwNjFkZTA3ZDlwLTIsCi0gICAgLTB4MS44OWVhZDRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTAKLSAgICAweDEuYmM0YzA4YWYzNTYwODhiMTY5NDk5NWJmYWY4YTI5N2JwLTIsCi0gICAgMHgxLmNiOTFmOHAtMgotICB9LAotICB7IC8vIEVudHJ5IDUxMQotICAgIC0weDEuYmM0YzA4YWYzNTYwODhiMTY5NDk5NWJmYWY4YTI5N2JwLTIsCi0gICAgLTB4MS5jYjkxZjhwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTIKLSAgICAweDEuZjY3ZWFlMzRkYzBiNDJiNDY1ZmQyYTNmYjA3NTY0YTRwLTIsCi0gICAgMHgxLjA2OWM4ZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDUxMwotICAgIC0weDEuZjY3ZWFlMzRkYzBiNDJiNDY1ZmQyYTNmYjA3NTY0YTRwLTIsCi0gICAgLTB4MS4wNjljOGVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTQKLSAgICAweDEuMTc1MDVjODYyMzE4OThmZDg2YjE4ZDIyODJkOTNlZWRwLTEsCi0gICAgMHgxLjI3NzAyMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDUxNQotICAgIC0weDEuMTc1MDVjODYyMzE4OThmZDg2YjE4ZDIyODJkOTNlZWRwLTEsCi0gICAgLTB4MS4yNzcwMjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTYKLSAgICAweDEuMzIzYjhlNDBkMTY1NzVlNTBkYzdiNmU1NjdiYjUwODRwLTEsCi0gICAgMHgxLjQ4NDNiMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDUxNwotICAgIC0weDEuMzIzYjhlNDBkMTY1NzVlNTBkYzdiNmU1NjdiYjUwODRwLTEsCi0gICAgLTB4MS40ODQzYjJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTgKLSAgICAweDEuNGJlNDliMDhhMWUxNjI5Y2JkYWE1MDdlMTgyNTVjZDhwLTEsCi0gICAgMHgxLjY5MTc0NHAtMQotICB9LAotICB7IC8vIEVudHJ5IDUxOQotICAgIC0weDEuNGJlNDliMDhhMWUxNjI5Y2JkYWE1MDdlMTgyNTVjZDhwLTEsCi0gICAgLTB4MS42OTE3NDRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjAKLSAgICAweDEuNjQzMDg0N2RiYmJmZDQ2Y2JlYmJjNmQ1ZjUxYzdjNDlwLTEsCi0gICAgMHgxLjg5ZWFkNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDUyMQotICAgIC0weDEuNjQzMDg0N2RiYmJmZDQ2Y2JlYmJjNmQ1ZjUxYzdjNDlwLTEsCi0gICAgLTB4MS44OWVhZDZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjIKLSAgICAweDEuN2IwNWJiODdiMzg4NDRlNTYwMDNjNDFlZjgwNGIyNzNwLTEsCi0gICAgMHgxLmFhYmU2OHAtMQotICB9LAotICB7IC8vIEVudHJ5IDUyMwotICAgIC0weDEuN2IwNWJiODdiMzg4NDRlNTYwMDNjNDFlZjgwNGIyNzNwLTEsCi0gICAgLTB4MS5hYWJlNjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjQKLSAgICAweDEuOTA0YzNiMzg5ZDU1ZDNkZWRkYjM5ZDA1ZWIzNjY1NzFwLTEsCi0gICAgMHgxLmNiOTFmYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDUyNQotICAgIC0weDEuOTA0YzNiMzg5ZDU1ZDNkZWRkYjM5ZDA1ZWIzNjY1NzFwLTEsCi0gICAgLTB4MS5jYjkxZmFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjYKLSAgICAweDEuYTNlZGEyMTE3OThhODI2OTdkNjI0MzFmOWFlNDZjYzRwLTEsCi0gICAgMHgxLmVjNjU4Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDUyNwotICAgIC0weDEuYTNlZGEyMTE3OThhODI2OTdkNjI0MzFmOWFlNDZjYzRwLTEsCi0gICAgLTB4MS5lYzY1OGNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjgKLSAgICAweDEuYjVkNTQ4ODNmY2I2MTIzYmMyOGFhYzkxZjA4NWU0ZWVwLTEsCi0gICAgMHgxLjA2OWM4ZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI5Ci0gICAgLTB4MS5iNWQ1NDg4M2ZjYjYxMjNiYzI4YWFjOTFmMDg1ZTRlZXAtMSwKLSAgICAtMHgxLjA2OWM4ZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMwCi0gICAgMHgxLmM1ZjA1YTAxMzVkNDg4MmM3NjhjZGYxOGUyZTExMTJjcC0xLAotICAgIDB4MS4xNzA2NTZwMAotICB9LAotICB7IC8vIEVudHJ5IDUzMQotICAgIC0weDEuYzVmMDVhMDEzNWQ0ODgyYzc2OGNkZjE4ZTJlMTExMmNwLTEsCi0gICAgLTB4MS4xNzA2NTZwMAotICB9LAotICB7IC8vIEVudHJ5IDUzMgotICAgIDB4MS5kNDJkZTUzZTMxNWM4MzljZTE4OGUyMDEyMDVlOTlkZXAtMSwKLSAgICAweDEuMjc3MDFlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzMKLSAgICAtMHgxLmQ0MmRlNTNlMzE1YzgzOWNlMTg4ZTIwMTIwNWU5OWRlcC0xLAotICAgIC0weDEuMjc3MDFlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzQKLSAgICAweDEuZTA3ZWVmNDVkOTFlZWE4YTZjYzczNjlhYTBlNTUzODhwLTEsCi0gICAgMHgxLjM3ZDllNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM1Ci0gICAgLTB4MS5lMDdlZWY0NWQ5MWVlYThhNmNjNzM2OWFhMGU1NTM4OHAtMSwKLSAgICAtMHgxLjM3ZDllNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM2Ci0gICAgMHgxLmVhZDY4MzNiMmFhMDAyYmFhMWMyYjE5YTM4ZGM5Yjc5cC0xLAotICAgIDB4MS40ODQzYWVwMAotICB9LAotICB7IC8vIEVudHJ5IDUzNwotICAgIC0weDEuZWFkNjgzM2IyYWEwMDJiYWExYzJiMTlhMzhkYzliNzlwLTEsCi0gICAgLTB4MS40ODQzYWVwMAotICB9LAotICB7IC8vIEVudHJ5IDUzOAotICAgIDB4MS5mMzI5YmZmYTZhMjA4NTkxZWVjYjY5MDVkNzU5NGUzYnAtMSwKLSAgICAweDEuNThhZDc2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzkKLSAgICAtMHgxLmYzMjliZmZhNmEyMDg1OTFlZWNiNjkwNWQ3NTk0ZTNicC0xLAotICAgIC0weDEuNThhZDc2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDAKLSAgICAweDEuZjk2ZmUzOGFmYmQ5NWI1ZmNkMDg2MDgxMTBlOTM4MWZwLTEsCi0gICAgMHgxLjY5MTczZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQxCi0gICAgLTB4MS5mOTZmZTM4YWZiZDk1YjVmY2QwODYwODExMGU5MzgxZnAtMSwKLSAgICAtMHgxLjY5MTczZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQyCi0gICAgMHgxLmZkYTI1NDU1ZDk1Njc3NzJmMjBmMjVkMTVlZmM2Nzc1cC0xLAotICAgIDB4MS43OTgxMDZwMAotICB9LAotICB7IC8vIEVudHJ5IDU0MwotICAgIC0weDEuZmRhMjU0NTVkOTU2Nzc3MmYyMGYyNWQxNWVmYzY3NzVwLTEsCi0gICAgLTB4MS43OTgxMDZwMAotICB9LAotICB7IC8vIEVudHJ5IDU0NAotICAgIDB4MS5mZmJjYTgxNmYxZjE1MTZlYzVkNzU3YjBkYjU0YWUzNHAtMSwKLSAgICAweDEuODllYWNlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDUKLSAgICAtMHgxLmZmYmNhODE2ZjFmMTUxNmVjNWQ3NTdiMGRiNTRhZTM0cC0xLAotICAgIC0weDEuODllYWNlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDYKLSAgICAweDEuZmZiY2E4ODIyOGIxNjMxODlhYjhkNjM3ZGI5OWJkMmRwLTEsCi0gICAgMHgxLjlhNTQ5NnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ3Ci0gICAgLTB4MS5mZmJjYTg4MjI4YjE2MzE4OWFiOGQ2MzdkYjk5YmQyZHAtMSwKLSAgICAtMHgxLjlhNTQ5NnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ4Ci0gICAgMHgxLmZkYTI1NTk3MGNjZGRiOWQxMjdlY2Y2MzQwM2MyYmY3cC0xLAotICAgIDB4MS5hYWJlNWVwMAotICB9LAotICB7IC8vIEVudHJ5IDU0OQotICAgIC0weDEuZmRhMjU1OTcwY2NkZGI5ZDEyN2VjZjYzNDAzYzJiZjdwLTEsCi0gICAgLTB4MS5hYWJlNWVwMAotICB9LAotICB7IC8vIEVudHJ5IDU1MAotICAgIDB4MS5mOTZmZTVhMGRhMjQ0NDg5ZmIyZjRiOTdiM2U0ODc1N3AtMSwKLSAgICAweDEuYmIyODI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTEKLSAgICAtMHgxLmY5NmZlNWEwZGEyNDQ0ODlmYjJmNGI5N2IzZTQ4NzU3cC0xLAotICAgIC0weDEuYmIyODI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTIKLSAgICAweDEuZjMyOWMyZTJjMWEzOWJhZDhlY2RjYjg3OTYxYmE0NGFwLTEsCi0gICAgMHgxLmNiOTFlZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUzCi0gICAgLTB4MS5mMzI5YzJlMmMxYTM5YmFkOGVjZGNiODc5NjFiYTQ0YXAtMSwKLSAgICAtMHgxLmNiOTFlZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU0Ci0gICAgMHgxLmVhZDY4NmYyZWM1NzJjODNlZDM0YTAxZjc2NGQxOTNlcC0xLAotICAgIDB4MS5kYmZiYjZwMAotICB9LAotICB7IC8vIEVudHJ5IDU1NQotICAgIC0weDEuZWFkNjg2ZjJlYzU3MmM4M2VkMzRhMDFmNzY0ZDE5M2VwLTEsCi0gICAgLTB4MS5kYmZiYjZwMAotICB9LAotICB7IC8vIEVudHJ5IDU1NgotICAgIDB4MS5lMDdlZjNjOTFiZDUwMGEwZGUyMzBhZDU3MzE2MzE2M3AtMSwKLSAgICAweDEuZWM2NTdlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTcKLSAgICAtMHgxLmUwN2VmM2M5MWJkNTAwYTBkZTIzMGFkNTczMTYzMTYzcC0xLAotICAgIC0weDEuZWM2NTdlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTgKLSAgICAweDEuZDQyZGVhODgzNWM4OGFkYjljZGUxNzM0N2Y5MzRlMjVwLTEsCi0gICAgMHgxLmZjY2Y0NnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU5Ci0gICAgLTB4MS5kNDJkZWE4ODM1Yzg4YWRiOWNkZTE3MzQ3ZjkzNGUyNXAtMSwKLSAgICAtMHgxLmZjY2Y0NnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYwCi0gICAgMHgxLmM1ZjA1ZTMyYzgwZmIwZmU2MDMwMzNlYzAyOGE0YzMycC0xLAotICAgIDB4MS4wNjljODhwMQotICB9LAotICB7IC8vIEVudHJ5IDU2MQotICAgIC0weDEuYzVmMDVlMzJjODBmYjBmZTYwMzAzM2VjMDI4YTRjMzJwLTEsCi0gICAgLTB4MS4wNjljODhwMQotICB9LAotICB7IC8vIEVudHJ5IDU2MgotICAgIDB4MS5iNWQ1NGQzNzMyZDNiMmU3OWQ0OTA3ZTExNTQwMWRkYXAtMSwKLSAgICAweDEuMGVkMTZjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjMKLSAgICAtMHgxLmI1ZDU0ZDM3MzJkM2IyZTc5ZDQ5MDdlMTE1NDAxZGRhcC0xLAotICAgIC0weDEuMGVkMTZjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjQKLSAgICAweDEuYTNlZGE3NDE2MWQwNmI4M2VjMmM4ZGMzOTZkODEzYjlwLTEsCi0gICAgMHgxLjE3MDY1MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY1Ci0gICAgLTB4MS5hM2VkYTc0MTYxZDA2YjgzZWMyYzhkYzM5NmQ4MTNiOXAtMSwKLSAgICAtMHgxLjE3MDY1MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY2Ci0gICAgMHgxLjkwNGM0MjFlZmNlNThmNGU4MTcwZDM2ZGNkYThlMDJjcC0xLAotICAgIDB4MS4xZjNiMzRwMQotICB9LAotICB7IC8vIEVudHJ5IDU2NwotICAgIC0weDEuOTA0YzQyMWVmY2U1OGY0ZTgxNzBkMzZkY2RhOGUwMmNwLTEsCi0gICAgLTB4MS4xZjNiMzRwMQotICB9LAotICB7IC8vIEVudHJ5IDU2OAotICAgIDB4MS43YjA1YzQ1MDkzOTQ0ZDZhZmIwYzkwZDJmOWNiMjE3ZnAtMSwKLSAgICAweDEuMjc3MDE4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjkKLSAgICAtMHgxLjdiMDVjNDUwOTM5NDRkNmFmYjBjOTBkMmY5Y2IyMTdmcC0xLAotICAgIC0weDEuMjc3MDE4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzAKLSAgICAweDEuNjQzMDhmNTA2ZmZkYWYxMzI2ZDEwYjMzODAyNzhlOThwLTEsCi0gICAgMHgxLjJmYTRmY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcxCi0gICAgLTB4MS42NDMwOGY1MDZmZmRhZjEzMjZkMTBiMzM4MDI3OGU5OHAtMSwKLSAgICAtMHgxLjJmYTRmY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcyCi0gICAgMHgxLjRiZTRhODA3NmMxMzVhNDhmM2YxYTFhYWEzNjI0NzVmcC0xLAotICAgIDB4MS4zN2Q5ZTBwMQotICB9LAotICB7IC8vIEVudHJ5IDU3MwotICAgIC0weDEuNGJlNGE4MDc2YzEzNWE0OGYzZjFhMWFhYTM2MjQ3NWZwLTEsCi0gICAgLTB4MS4zN2Q5ZTBwMQotICB9LAotICB7IC8vIEVudHJ5IDU3NAotICAgIDB4MS4zMjNiOWQ4ODhkNGRhNzdhNjEwODkzNzM1ZWVlZDFjYnAtMSwKLSAgICAweDEuNDAwZWM0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzUKLSAgICAtMHgxLjMyM2I5ZDg4OGQ0ZGE3N2E2MTA4OTM3MzVlZWVkMWNicC0xLAotICAgIC0weDEuNDAwZWM0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzYKLSAgICAweDEuMTc1MDZlMmRmYjYwM2QzNGI5YWYzOWIxMmMxZGI3MzVwLTEsCi0gICAgMHgxLjQ4NDNhOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc3Ci0gICAgLTB4MS4xNzUwNmUyZGZiNjAzZDM0YjlhZjM5YjEyYzFkYjczNXAtMSwKLSAgICAtMHgxLjQ4NDNhOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc4Ci0gICAgMHgxLmY2N2VkNjY3MzUyZDQ4Mjc0NTAwMTNmMTVlMzIxYmZicC0yLAotICAgIDB4MS41MDc4OGNwMQotICB9LAotICB7IC8vIEVudHJ5IDU3OQotICAgIC0weDEuZjY3ZWQ2NjczNTJkNDgyNzQ1MDAxM2YxNWUzMjFiZmJwLTIsCi0gICAgLTB4MS41MDc4OGNwMQotICB9LAotICB7IC8vIEVudHJ5IDU4MAotICAgIDB4MS5iYzRjMzVkYTUxZTM0Yjc3NmU1ZTA0ZGE1OGYyMzQ0MXAtMiwKLSAgICAweDEuNThhZDcwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODEKLSAgICAtMHgxLmJjNGMzNWRhNTFlMzRiNzc2ZTVlMDRkYTU4ZjIzNDQxcC0yLAotICAgIC0weDEuNThhZDcwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODIKLSAgICAweDEuODA0NjMzNmU2ODQyN2NmNzU2MDU2ZDNmNGVkYmI2NjJwLTIsCi0gICAgMHgxLjYwZTI1NHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgzCi0gICAgLTB4MS44MDQ2MzM2ZTY4NDI3Y2Y3NTYwNTZkM2Y0ZWRiYjY2MnAtMiwKLSAgICAtMHgxLjYwZTI1NHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTg0Ci0gICAgMHgxLjQyYWJmMzg3MjkwNWU2MzJmMjA0YzQxYjI0YWY5MGI2cC0yLAotICAgIDB4MS42OTE3MzhwMQotICB9LAotICB7IC8vIEVudHJ5IDU4NQotICAgIC0weDEuNDJhYmYzODcyOTA1ZTYzMmYyMDRjNDFiMjRhZjkwYjZwLTIsCi0gICAgLTB4MS42OTE3MzhwMQotICB9LAotICB7IC8vIEVudHJ5IDU4NgotICAgIDB4MS4wM2JlNDNjNjk5ZjM1MzY5OTBkY2Y1YTY2NjVhYzIzOXAtMiwKLSAgICAweDEuNzE0YzFjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODcKLSAgICAtMHgxLjAzYmU0M2M2OTlmMzUzNjk5MGRjZjVhNjY2NWFjMjM5cC0yLAotICAgIC0weDEuNzE0YzFjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODgKLSAgICAweDEuODc3ZWFkYzJmZGZjMmYwZGIxZThiNzhjZDNmYmZiZDJwLTMsCi0gICAgMHgxLjc5ODFwMQotICB9LAotICB7IC8vIEVudHJ5IDU4OQotICAgIC0weDEuODc3ZWFkYzJmZGZjMmYwZGIxZThiNzhjZDNmYmZiZDJwLTMsCi0gICAgLTB4MS43OTgxcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTAKLSAgICAweDEuMDVlNGZkZjg0NjYzMmE4MjA4ZDkwZGU3MmQzYTZkYThwLTMsCi0gICAgMHgxLjgxYjVlNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTkxCi0gICAgLTB4MS4wNWU0ZmRmODQ2NjMyYTgyMDhkOTBkZTcyZDNhNmRhOHAtMywKLSAgICAtMHgxLjgxYjVlNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTkyCi0gICAgMHgxLjA2NmY5YjYzMGI3MmRmZjE2NDUwZTg5YWZkZjdlMDQ4cC00LAotICAgIDB4MS44OWVhYzhwMQotICB9LAotICB7IC8vIEVudHJ5IDU5MwotICAgIC0weDEuMDY2ZjliNjMwYjcyZGZmMTY0NTBlODlhZmRmN2UwNDhwLTQsCi0gICAgLTB4MS44OWVhYzhwMQotICB9LAotICB7IC8vIEVudHJ5IDU5NAotICAgIDB4MS4wM2JkZjBiNzljY2Y3Mzk1MjlkNTRkNDIyODYxMDQ2Y3AtMiwKLSAgICAtMHgxLjgxYjVlZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNTk1Ci0gICAgLTB4MS4wM2JkZjBiNzljY2Y3Mzk1MjlkNTRkNDIyODYxMDQ2Y3AtMiwKLSAgICAweDEuODFiNWVlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTYKLSAgICAweDEuZjY3ZThiOTVmNTQ2MGVhMzY5YTgwMzgzN2I3MjFhYmRwLTIsCi0gICAgLTB4MS43MTRjMjZwMgotICB9LAotICB7IC8vIEVudHJ5IDU5NwotICAgIC0weDEuZjY3ZThiOTVmNTQ2MGVhMzY5YTgwMzgzN2I3MjFhYmRwLTIsCi0gICAgMHgxLjcxNGMyNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNTk4Ci0gICAgMHgxLjY0MzA3MDc5MTc1MWRjMDYzNmQxODU0ZDJiZGJjNWQ0cC0xLAotICAgIC0weDEuNjBlMjVlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTkKLSAgICAtMHgxLjY0MzA3MDc5MTc1MWRjMDYzNmQxODU0ZDJiZGJjNWQ0cC0xLAotICAgIDB4MS42MGUyNWVwMgotICB9LAotICB7IC8vIEVudHJ5IDYwMAotICAgIDB4MS5iNWQ1MzZmNTkxMTNhNDNhZjMwZThjOWRiOGE5NTFhNXAtMSwKLSAgICAtMHgxLjUwNzg5NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAxCi0gICAgLTB4MS5iNWQ1MzZmNTkxMTNhNDNhZjMwZThjOWRiOGE5NTFhNXAtMSwKLSAgICAweDEuNTA3ODk2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDIKLSAgICAweDEuZWFkNjc5OTg1NTQ5MTQwMzE4MzQ5ZjUxMmRjYTdhNmJwLTEsCi0gICAgLTB4MS40MDBlY2VwMgotICB9LAotICB7IC8vIEVudHJ5IDYwMwotICAgIC0weDEuZWFkNjc5OTg1NTQ5MTQwMzE4MzQ5ZjUxMmRjYTdhNmJwLTEsCi0gICAgMHgxLjQwMGVjZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA0Ci0gICAgMHgxLmZmYmNhNzAxMGUwYjA0NTJmNTYwNzVjZmQ1OTgyODgwcC0xLAotICAgIC0weDEuMmZhNTA2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDUKLSAgICAtMHgxLmZmYmNhNzAxMGUwYjA0NTJmNTYwNzVjZmQ1OTgyODgwcC0xLAotICAgIDB4MS4yZmE1MDZwMgotICB9LAotICB7IC8vIEVudHJ5IDYwNgotICAgIDB4MS5mMzI5Y2E2YmZjNzQyNWQ4OWMyYjRiOWFkNzNhYjEwOHAtMSwKLSAgICAtMHgxLjFmM2IzZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA3Ci0gICAgLTB4MS5mMzI5Y2E2YmZjNzQyNWQ4OWMyYjRiOWFkNzNhYjEwOHAtMSwKLSAgICAweDEuMWYzYjNlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDgKLSAgICAweDEuYzVmMDZmYjY5NDI3YWMwZjJkNjk0MjhkODJiNWU2NjlwLTEsCi0gICAgLTB4MS4wZWQxNzZwMgotICB9LAotICB7IC8vIEVudHJ5IDYwOQotICAgIC0weDEuYzVmMDZmYjY5NDI3YWMwZjJkNjk0MjhkODJiNWU2NjlwLTEsCi0gICAgMHgxLjBlZDE3NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEwCi0gICAgMHgxLjdiMDVkODY0ZWM5ODAyYWRiYzRiNTU3N2MyMzM4MzZhcC0xLAotICAgIC0weDEuZmNjZjVhcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTEKLSAgICAtMHgxLjdiMDVkODY0ZWM5ODAyYWRiYzRiNTU3N2MyMzM4MzZhcC0xLAotICAgIDB4MS5mY2NmNWFwMQotICB9LAotICB7IC8vIEVudHJ5IDYxMgotICAgIDB4MS4xNzUwODA4MTg1YTk5OGJiY2VjYzNhNmFjMGNiMjkwN3AtMSwKLSAgICAtMHgxLmRiZmJjOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEzCi0gICAgLTB4MS4xNzUwODA4MTg1YTk5OGJiY2VjYzNhNmFjMGNiMjkwN3AtMSwKLSAgICAweDEuZGJmYmM4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTQKLSAgICAweDEuNDJhYzBkZDk0OTUyMTE4MTZiZjA0Y2E1M2JjZTRiZWFwLTIsCi0gICAgLTB4MS5iYjI4MzZwMQotICB9LAotICB7IC8vIEVudHJ5IDYxNQotICAgIC0weDEuNDJhYzBkZDk0OTUyMTE4MTZiZjA0Y2E1M2JjZTRiZWFwLTIsCi0gICAgMHgxLmJiMjgzNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE2Ci0gICAgMHgxLjA2NmZjYTM5YTcwYjUyZDA2ZjJjZDdlYWI2OWMzMWYycC00LAotICAgIC0weDEuOWE1NGE0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTcKLSAgICAtMHgxLjA2NmZjYTM5YTcwYjUyZDA2ZjJjZDdlYWI2OWMzMWYycC00LAotICAgIDB4MS45YTU0YTRwMQotICB9LAotICB7IC8vIEVudHJ5IDYxOAotICAgIC0weDEuODc3ZDkzMTI5OGU2ZmJjNjU0ZjA2NTUzNmNmZjJiNTRwLTMsCi0gICAgLTB4MS43OTgxMTJwMQotICB9LAotICB7IC8vIEVudHJ5IDYxOQotICAgIDB4MS44NzdkOTMxMjk4ZTZmYmM2NTRmMDY1NTM2Y2ZmMmI1NHAtMywKLSAgICAweDEuNzk4MTEycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjAKLSAgICAtMHgxLmJjNGJjMjg3NWViNmQzOGVkYTNiNDljYjIzMjBiNTYxcC0yLAotICAgIC0weDEuNThhZDgwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjEKLSAgICAweDEuYmM0YmMyODc1ZWI2ZDM4ZWRhM2I0OWNiMjMyMGI1NjFwLTIsCi0gICAgMHgxLjU4YWQ4MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjIyCi0gICAgLTB4MS40YmU0N2Q2MzU0YzRjZWQ1Mzc4MGIxYjUxOWFjZGVjMnAtMSwKLSAgICAtMHgxLjM3ZDllZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjIzCi0gICAgMHgxLjRiZTQ3ZDYzNTRjNGNlZDUzNzgwYjFiNTE5YWNkZWMycC0xLAotICAgIDB4MS4zN2Q5ZWVwMQotICB9LAotICB7IC8vIEVudHJ5IDYyNAotICAgIC0weDEuYTNlZDhiY2IzNWNiY2Y4YzYwODlmODJhOTFjMzFkNWJwLTEsCi0gICAgLTB4MS4xNzA2NWNwMQotICB9LAotICB7IC8vIEVudHJ5IDYyNQotICAgIDB4MS5hM2VkOGJjYjM1Y2JjZjhjNjA4OWY4MmE5MWMzMWQ1YnAtMSwKLSAgICAweDEuMTcwNjVjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjYKLSAgICAtMHgxLmUwN2VlNDk2ZWExMDk2NTRjNDJlMTcxZmRjNDUzN2M0cC0xLAotICAgIC0weDEuZWM2NTk0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjcKLSAgICAweDEuZTA3ZWU0OTZlYTEwOTY1NGM0MmUxNzFmZGM0NTM3YzRwLTEsCi0gICAgMHgxLmVjNjU5NHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI4Ci0gICAgLTB4MS5mZGEyNTIyMjE5Njg5ZDBlODA2OWQ5MGY1Yzk2OWI5MnAtMSwKLSAgICAtMHgxLmFhYmU3MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI5Ci0gICAgMHgxLmZkYTI1MjIyMTk2ODlkMGU4MDY5ZDkwZjVjOTY5YjkycC0xLAotICAgIDB4MS5hYWJlNzBwMAotICB9LAotICB7IC8vIEVudHJ5IDYzMAotICAgIC0weDEuZjk2ZmU4MDJmZTU3MDM3MmQwZmNiNmU5MzRiNDMwNjFwLTEsCi0gICAgLTB4MS42OTE3NGNwMAotICB9LAotICB7IC8vIEVudHJ5IDYzMQotICAgIDB4MS5mOTZmZTgwMmZlNTcwMzcyZDBmY2I2ZTkzNGI0MzA2MXAtMSwKLSAgICAweDEuNjkxNzRjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzIKLSAgICAtMHgxLmQ0MmRlZDU2YWU4OGE2ZTFjZjI3MGFmMjdlNmYxODA0cC0xLAotICAgIC0weDEuMjc3MDI4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzMKLSAgICAweDEuZDQyZGVkNTZhZTg4YTZlMWNmMjcwYWYyN2U2ZjE4MDRwLTEsCi0gICAgMHgxLjI3NzAyOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM0Ci0gICAgLTB4MS45MDRjNDUzMjZkNmRkZTIyNDM4MWQxZDU5MGFkYTQxY3AtMSwKLSAgICAtMHgxLmNiOTIwYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDYzNQotICAgIDB4MS45MDRjNDUzMjZkNmRkZTIyNDM4MWQxZDU5MGFkYTQxY3AtMSwKLSAgICAweDEuY2I5MjBhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM2Ci0gICAgLTB4MS4zMjNiOWNhZGJiMTllNzVhNDQ0ODNmYjY0YWQ4ZGRmNnAtMSwKLSAgICAtMHgxLjQ4NDNjNHAtMQotICB9LAotICB7IC8vIEVudHJ5IDYzNwotICAgIDB4MS4zMjNiOWNhZGJiMTllNzVhNDQ0ODNmYjY0YWQ4ZGRmNnAtMSwKLSAgICAweDEuNDg0M2M0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM4Ci0gICAgLTB4MS44MDQ2MjY1NGJkZTc2NmZhZjQ3ZjMxNDBlMjkwOTk2ZHAtMiwKLSAgICAtMHgxLjg5ZWFmY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDYzOQotICAgIDB4MS44MDQ2MjY1NGJkZTc2NmZhZjQ3ZjMxNDBlMjkwOTk2ZHAtMiwKLSAgICAweDEuODllYWZjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQwCi0gICAgLTB4MS4wNWU0Y2EyMWYzODZhODJiYzJlNGVmY2RlYmIxOTYyYnAtMywKLSAgICAtMHgxLjA2OWNlMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDY0MQotICAgIDB4MS4wNWU0Y2EyMWYzODZhODJiYzJlNGVmY2RlYmIxOTYyYnAtMywKLSAgICAweDEuMDY5Y2UwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQyCi0gICAgMHgxLjA1ZTQyMzgzMGJlMDFmOWZlM2M1N2QwNjg2N2UwMDU2cC0zLAotICAgIDB4MS4wNjljMzhwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDMKLSAgICAtMHgxLjA1ZTQyMzgzMGJlMDFmOWZlM2M1N2QwNjg2N2UwMDU2cC0zLAotICAgIC0weDEuMDY5YzM4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ0Ci0gICAgMHgxLjgwNDVkODc4NTJmMTMwN2ZlYTZkYzc1MWM0ZDE1OTkycC0yLAotICAgIDB4MS44OWVhYThwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDUKLSAgICAtMHgxLjgwNDVkODc4NTJmMTMwN2ZlYTZkYzc1MWM0ZDE1OTkycC0yLAotICAgIC0weDEuODllYWE4cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ2Ci0gICAgMHgxLjMyM2I3YjA0ZWU4OGNmZjk4YjJhMTYyMGUxZjYxYTAxcC0xLAotICAgIDB4MS40ODQzOWFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDcKLSAgICAtMHgxLjMyM2I3YjA0ZWU4OGNmZjk4YjJhMTYyMGUxZjYxYTAxcC0xLAotICAgIC0weDEuNDg0MzlhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ4Ci0gICAgMHgxLjkwNGMyYjAyYWE1OTUyOGNlMDQ0YmYyMjEzYzk2ODU5cC0xLAotICAgIDB4MS5jYjkxZTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDkKLSAgICAtMHgxLjkwNGMyYjAyYWE1OTUyOGNlMDQ0YmYyMjEzYzk2ODU5cC0xLAotICAgIC0weDEuY2I5MWUwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUwCi0gICAgMHgxLmQ0MmRkZDI1YjM3OTdlNmE2NzlmNzZlMDVlNmMzZTA4cC0xLAotICAgIDB4MS4yNzcwMTRwMAotICB9LAotICB7IC8vIEVudHJ5IDY1MQotICAgIC0weDEuZDQyZGRkMjViMzc5N2U2YTY3OWY3NmUwNWU2YzNlMDhwLTEsCi0gICAgLTB4MS4yNzcwMTRwMAotICB9LAotICB7IC8vIEVudHJ5IDY1MgotICAgIDB4MS5mOTZmZTFhMGIxMmQwYWQ0ZmE4YzgyZDhhZjk4OWM1YXAtMSwKLSAgICAweDEuNjkxNzM4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTMKLSAgICAtMHgxLmY5NmZlMWEwYjEyZDBhZDRmYThjODJkOGFmOTg5YzVhcC0xLAotICAgIC0weDEuNjkxNzM4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTQKLSAgICAweDEuZmRhMjU1Zjk2MDk0ZDhmZTRlODU5YzRjZjBkZDY4YTVwLTEsCi0gICAgMHgxLmFhYmU1Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU1Ci0gICAgLTB4MS5mZGEyNTVmOTYwOTRkOGZlNGU4NTljNGNmMGRkNjhhNXAtMSwKLSAgICAtMHgxLmFhYmU1Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU2Ci0gICAgMHgxLmUwN2VmMjY3NzQ4Yjk4Mjc3OGY4ZDUwZDI5ODFiYjNhcC0xLAotICAgIDB4MS5lYzY1ODBwMAotICB9LAotICB7IC8vIEVudHJ5IDY1NwotICAgIC0weDEuZTA3ZWYyNjc3NDhiOTgyNzc4ZjhkNTBkMjk4MWJiM2FwLTEsCi0gICAgLTB4MS5lYzY1ODBwMAotICB9LAotICB7IC8vIEVudHJ5IDY1OAotICAgIDB4MS5hM2VkYTJhZGIwMTE0M2ZiMjE0NTNiMjBiZDE3NDhmZXAtMSwKLSAgICAweDEuMTcwNjUycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTkKLSAgICAtMHgxLmEzZWRhMmFkYjAxMTQzZmIyMTQ1M2IyMGJkMTc0OGZlcC0xLAotICAgIC0weDEuMTcwNjUycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjAKLSAgICAweDEuNGJlNDliZDg4YTY0YTBiYjQxNGRkYWNhYzRmYThkZTlwLTEsCi0gICAgMHgxLjM3ZDllNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYxCi0gICAgLTB4MS40YmU0OWJkODhhNjRhMGJiNDE0ZGRhY2FjNGZhOGRlOXAtMSwKLSAgICAtMHgxLjM3ZDllNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYyCi0gICAgMHgxLmJjNGMwYTliMzc4MmUyMjBhZTU1Nzg2MzY5Y2NmMTkwcC0yLAotICAgIDB4MS41OGFkNzZwMQotICB9LAotICB7IC8vIEVudHJ5IDY2MwotICAgIC0weDEuYmM0YzBhOWIzNzgyZTIyMGFlNTU3ODYzNjljY2YxOTBwLTIsCi0gICAgLTB4MS41OGFkNzZwMQotICB9LAotICB7IC8vIEVudHJ5IDY2NAotICAgIDB4MS44NzdlMzAxZjQzY2FmZmZlNjY0NGE4OTU4ZjEwODcyOXAtMywKLSAgICAweDEuNzk4MTA4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjUKLSAgICAtMHgxLjg3N2UzMDFmNDNjYWZmZmU2NjQ0YTg5NThmMTA4NzI5cC0zLAotICAgIC0weDEuNzk4MTA4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjYKLSAgICAtMHgxLjA2NmU4YWUxZjgyNGE2OTgxN2U2YTgwNmU2MzE3ZTI4cC00LAotICAgIDB4MS45YTU0OWFwMQotICB9LAotICB7IC8vIEVudHJ5IDY2NwotICAgIDB4MS4wNjZlOGFlMWY4MjRhNjk4MTdlNmE4MDZlNjMxN2UyOHAtNCwKLSAgICAtMHgxLjlhNTQ5YXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY4Ci0gICAgLTB4MS40MmFiYzFlY2ExMWEwYWQxMmNhNmVlZmYxOTczMThhYXAtMiwKLSAgICAweDEuYmIyODJjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjkKLSAgICAweDEuNDJhYmMxZWNhMTFhMGFkMTJjYTZlZWZmMTk3MzE4YWFwLTIsCi0gICAgLTB4MS5iYjI4MmNwMQotICB9LAotICB7IC8vIEVudHJ5IDY3MAotICAgIC0weDEuMTc1MDVlZmI4MTE5NzczYzY0NzQ2OGJlMWRmZWU0NWVwLTEsCi0gICAgMHgxLmRiZmJiZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcxCi0gICAgMHgxLjE3NTA1ZWZiODExOTc3M2M2NDc0NjhiZTFkZmVlNDVlcC0xLAotICAgIC0weDEuZGJmYmJlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzIKLSAgICAtMHgxLjdiMDViZDgwOTFjZDc5ZGZmMzU5Yzg0MTJiMGRlMWE5cC0xLAotICAgIDB4MS5mY2NmNTBwMQotICB9LAotICB7IC8vIEVudHJ5IDY3MwotICAgIDB4MS43YjA1YmQ4MDkxY2Q3OWRmZjM1OWM4NDEyYjBkZTFhOXAtMSwKLSAgICAtMHgxLmZjY2Y1MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc0Ci0gICAgLTB4MS5jNWYwNTk4MmVhYmYwMjI3NDg5NjA5NjE2NjZkNTQwZHAtMSwKLSAgICAweDEuMGVkMTcwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzUKLSAgICAweDEuYzVmMDU5ODJlYWJmMDIyNzQ4OTYwOTYxNjY2ZDU0MGRwLTEsCi0gICAgLTB4MS4wZWQxNzBwMgotICB9LAotICB7IC8vIEVudHJ5IDY3NgotICAgIC0weDEuZjMyOWJmYmRhODEyMmY4M2UzYTFlYTAyNDJlYjc2YWFwLTEsCi0gICAgMHgxLjFmM2IzOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc3Ci0gICAgMHgxLmYzMjliZmJkYTgxMjJmODNlM2ExZWEwMjQyZWI3NmFhcC0xLAotICAgIC0weDEuMWYzYjM4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzgKLSAgICAtMHgxLmZmYmNhODhhZTkwZjA5MDBiNmQzYWQ4OWVkZGQyYzgwcC0xLAotICAgIDB4MS4yZmE1cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzkKLSAgICAweDEuZmZiY2E4OGFlOTBmMDkwMGI2ZDNhZDg5ZWRkZDJjODBwLTEsCi0gICAgLTB4MS4yZmE1cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODAKLSAgICAtMHgxLmVhZDY4NzQwOWM5NWRjYWY2MWFmOTg1MTM1MTdmNTA3cC0xLAotICAgIDB4MS40MDBlYzhwMgotICB9LAotICB7IC8vIEVudHJ5IDY4MQotICAgIDB4MS5lYWQ2ODc0MDljOTVkY2FmNjFhZjk4NTEzNTE3ZjUwN3AtMSwKLSAgICAtMHgxLjQwMGVjOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgyCi0gICAgLTB4MS5iNWQ1NGZkNzkzNzJiOTBkNWQ0YzdhY2Y3YWRhZWQ0MnAtMSwKLSAgICAweDEuNTA3ODkwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODMKLSAgICAweDEuYjVkNTRmZDc5MzcyYjkwZDVkNGM3YWNmN2FkYWVkNDJwLTEsCi0gICAgLTB4MS41MDc4OTBwMgotICB9LAotICB7IC8vIEVudHJ5IDY4NAotICAgIC0weDEuNjQzMDkyZjQyYWU3OTczNzU1MzE0MjBjMDA1Y2EyY2ZwLTEsCi0gICAgMHgxLjYwZTI1OHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg1Ci0gICAgMHgxLjY0MzA5MmY0MmFlNzk3Mzc1NTMxNDIwYzAwNWNhMmNmcC0xLAotICAgIC0weDEuNjBlMjU4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODYKLSAgICAtMHgxLmY2N2VkZjNiN2JlZTg1NTRkNTRkODRlYTgzZjZjYjIxcC0yLAotICAgIDB4MS43MTRjMjBwMgotICB9LAotICB7IC8vIEVudHJ5IDY4NwotICAgIDB4MS5mNjdlZGYzYjdiZWU4NTU0ZDU0ZDg0ZWE4M2Y2Y2IyMXAtMiwKLSAgICAtMHgxLjcxNGMyMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg4Ci0gICAgLTB4MS4wM2JlNGQ5M2Q5NDkzMjUzNDBiMmY0NjQyMDE1NDVhN3AtMiwKLSAgICAweDEuODFiNWU4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODkKLSAgICAweDEuMDNiZTRkOTNkOTQ5MzI1MzQwYjJmNDY0MjAxNTQ1YTdwLTIsCi0gICAgLTB4MS44MWI1ZThwMgotICB9LAotICB7IC8vIEVudHJ5IDY5MAotICAgIDB4MS5lZmIyNmNmYTIwZjIwOThmZjdlOWU0MmYwMjYwZWIwMXAtNSwKLSAgICAweDEuZWZmZmZlcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjkxCi0gICAgLTB4MS5lZmIyNmNmYTIwZjIwOThmZjdlOWU0MmYwMjYwZWIwMXAtNSwKLSAgICAtMHgxLmVmZmZmZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDY5MgotICAgIDB4MS5lZmIyNmVmOTMwYzRkM2YyYjBkYmUxOTMxYmE1YWU2NHAtNSwKLSAgICAweDEuZjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTMKLSAgICAtMHgxLmVmYjI2ZWY5MzBjNGQzZjJiMGRiZTE5MzFiYTVhZTY0cC01LAotICAgIC0weDEuZjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTQKLSAgICAweDEuZWZiMjcwZjg0MDk3OWM2NWI3NWVlNWM2NzAxNmE4NjZwLTUsCi0gICAgMHgxLmYwMDAwMnAtNQotICB9LAotICB7IC8vIEVudHJ5IDY5NQotICAgIC0weDEuZWZiMjcwZjg0MDk3OWM2NWI3NWVlNWM2NzAxNmE4NjZwLTUsCi0gICAgLTB4MS5mMDAwMDJwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTYKLSAgICAweDEuZjZiYWE4MTZmY2U1ZWE1YTYwZDhjOWZkMmEyODkzODBwLTQsCi0gICAgMHgxLmY3ZmZmZXAtNAotICB9LAotICB7IC8vIEVudHJ5IDY5NwotICAgIC0weDEuZjZiYWE4MTZmY2U1ZWE1YTYwZDhjOWZkMmEyODkzODBwLTQsCi0gICAgLTB4MS5mN2ZmZmVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTgKLSAgICAweDEuZjZiYWFhMTMxZGU2NDM4ZTU2MTEyNzk4NjRmZTc2NjNwLTQsCi0gICAgMHgxLmY4cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjk5Ci0gICAgLTB4MS5mNmJhYWExMzFkZTY0MzhlNTYxMTI3OTg2NGZlNzY2M3AtNCwKLSAgICAtMHgxLmY4cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzAwCi0gICAgMHgxLmY2YmFhYzBmM2VlNjk0ZTc2MGExMzhiYzA2YzhiZTNkcC00LAotICAgIDB4MS5mODAwMDJwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDEKLSAgICAtMHgxLmY2YmFhYzBmM2VlNjk0ZTc2MGExMzhiYzA2YzhiZTNkcC00LAotICAgIC0weDEuZjgwMDAycC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzAyCi0gICAgMHgxLjRhOGMzOTU1NTJmYjQzMmFmMzE3ODBlODgzYzk4ZjcxcC0zLAotICAgIDB4MS40YmZmZmVwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDMKLSAgICAtMHgxLjRhOGMzOTU1NTJmYjQzMmFmMzE3ODBlODgzYzk4ZjcxcC0zLAotICAgIC0weDEuNGJmZmZlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA0Ci0gICAgMHgxLjRhOGMzYjRlOWM3ZmZmZDQ4MzA1ZjQ0YTQyZjVmNTBmcC0zLAotICAgIDB4MS40Y3AtMwotICB9LAotICB7IC8vIEVudHJ5IDcwNQotICAgIC0weDEuNGE4YzNiNGU5YzdmZmZkNDgzMDVmNDRhNDJmNWY1MGZwLTMsCi0gICAgLTB4MS40Y3AtMwotICB9LAotICB7IC8vIEVudHJ5IDcwNgotICAgIDB4MS40YThjM2Q0N2U2MDRhN2Q1NGYzZjdkZTQwMjQwOWUyY3AtMywKLSAgICAweDEuNGMwMDAycC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA3Ci0gICAgLTB4MS40YThjM2Q0N2U2MDRhN2Q1NGYzZjdkZTQwMjQwOWUyY3AtMywKLSAgICAtMHgxLjRjMDAwMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDcwOAotICAgIDB4MS4yZTljZDgzNjMwZWIzNWMxMmVmY2ZiODQxMzU4Mzk5OHAtMiwKLSAgICAweDEuMzMzMzMycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA5Ci0gICAgLTB4MS4yZTljZDgzNjMwZWIzNWMxMmVmY2ZiODQxMzU4Mzk5OHAtMiwKLSAgICAtMHgxLjMzMzMzMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDcxMAotICAgIDB4MS4yZTljZGExZjUyYzg4MDQyODMzZjIzNmZmMGY5ZDQ4NnAtMiwKLSAgICAweDEuMzMzMzM0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzExCi0gICAgLTB4MS4yZTljZGExZjUyYzg4MDQyODMzZjIzNmZmMGY5ZDQ4NnAtMiwKLSAgICAtMHgxLjMzMzMzNHAtMgotICB9LAotICB7IC8vIEVudHJ5IDcxMgotICAgIDB4MS4yZTljZGMwODc0YTU3ZjFjYTBmOTc2YTliMDFlNGE3MXAtMiwKLSAgICAweDEuMzMzMzM2cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzEzCi0gICAgLTB4MS4yZTljZGMwODc0YTU3ZjFjYTBmOTc2YTliMDFlNGE3MXAtMiwKLSAgICAtMHgxLjMzMzMzNnAtMgotICB9LAotICB7IC8vIEVudHJ5IDcxNAotICAgIDB4MS4zZmFlZmIyYjY4ZTY3ODZlYjY5MmJkNGU0MDQ1MjEzZXAtMSwKLSAgICAweDEuNTk0MzE2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE1Ci0gICAgLTB4MS4zZmFlZmIyYjY4ZTY3ODZlYjY5MmJkNGU0MDQ1MjEzZXAtMSwKLSAgICAtMHgxLjU5NDMxNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDcxNgotICAgIDB4MS4zZmFlZmNiYjU3YzI2YjBkODRiNjNkYmZiNzJiNDEzYnAtMSwKLSAgICAweDEuNTk0MzE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE3Ci0gICAgLTB4MS4zZmFlZmNiYjU3YzI2YjBkODRiNjNkYmZiNzJiNDEzYnAtMSwKLSAgICAtMHgxLjU5NDMxOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDcxOAotICAgIDB4MS4zZmFlZmU0YjQ2OWQxZGZkNTYxZTY2NmVkZGE3YzZlNnAtMSwKLSAgICAweDEuNTk0MzFhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE5Ci0gICAgLTB4MS4zZmFlZmU0YjQ2OWQxZGZkNTYxZTY2NmVkZGE3YzZlNnAtMSwKLSAgICAtMHgxLjU5NDMxYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDcyMAotICAgIDB4MS42ODg4YTM3NWFiMjI4YzFlMDMxYzQwMDU3Njk1MDlmOXAtMSwKLSAgICAweDEuOGZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIxCi0gICAgLTB4MS42ODg4YTM3NWFiMjI4YzFlMDMxYzQwMDU3Njk1MDlmOXAtMSwKLSAgICAtMHgxLjhmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDcyMgotICAgIDB4MS42ODg4YTRlMTM0YjJlYTUyMGIyMjZlY2E4Njk0YjNhMnAtMSwKLSAgICAweDEuOTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjMKLSAgICAtMHgxLjY4ODhhNGUxMzRiMmVhNTIwYjIyNmVjYTg2OTRiM2EycC0xLAotICAgIC0weDEuOTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjQKLSAgICAweDEuNjg4OGE2NGNiZTQxZGZmZDZlNDc2OGRjY2E0ZGI1M2JwLTEsCi0gICAgMHgxLjkwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDcyNQotICAgIC0weDEuNjg4OGE2NGNiZTQxZGZmZDZlNDc2OGRjY2E0ZGI1M2JwLTEsCi0gICAgLTB4MS45MDAwMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjYKLSAgICAtMC4wZiwKLSAgICAtMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzI3Ci0gICAgMC4wZiwKLSAgICAweDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjgKLSAgICAwLjAsCi0gICAgMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI5Ci0gICAgMC4wZiwKLSAgICAweDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzAKLSAgICAtMC4wZiwKLSAgICAtMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzMxCi0gICAgMHgxLjkxZjY1ZGNjZmVhZDM1M2Q4ZGI5YzMyZjEyMjYyNzMwcC01LAotICAgIDB4MS45MjFmYjRwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzIKLSAgICAtMHgxLjkxZjY1ZGNjZmVhZDM1M2Q4ZGI5YzMyZjEyMjYyNzMwcC01LAotICAgIC0weDEuOTIxZmI0cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzMzCi0gICAgMHgxLjkxZjY1ZmNjNjBjYjZkMDlmY2M1YzM1ZGQ2YTc5OGM4cC01LAotICAgIDB4MS45MjFmYjZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzQKLSAgICAtMHgxLjkxZjY1ZmNjNjBjYjZkMDlmY2M1YzM1ZGQ2YTc5OGM4cC01LAotICAgIC0weDEuOTIxZmI2cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzM1Ci0gICAgMHgxLjkxZjY2MWNiYzJlOWEzNDQ3NTcxZjcyYmNmYmMyMWUycC01LAotICAgIDB4MS45MjFmYjhwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzYKLSAgICAtMHgxLjkxZjY2MWNiYzJlOWEzNDQ3NTcxZjcyYmNmYmMyMWUycC01LAotICAgIC0weDEuOTIxZmI4cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzM3Ci0gICAgMHgxLjkxN2E2YTdmZTgyOTdiZjBhMTEyNWZiMDJiMjAzOGFlcC00LAotICAgIDB4MS45MjFmYjRwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzgKLSAgICAtMHgxLjkxN2E2YTdmZTgyOTdiZjBhMTEyNWZiMDJiMjAzOGFlcC00LAotICAgIC0weDEuOTIxZmI0cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzM5Ci0gICAgMHgxLjkxN2E2YzdkNzEwM2I5ZDkwZTA5NjE1MTY0NDQ5YzZicC00LAotICAgIDB4MS45MjFmYjZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDAKLSAgICAtMHgxLjkxN2E2YzdkNzEwM2I5ZDkwZTA5NjE1MTY0NDQ5YzZicC00LAotICAgIC0weDEuOTIxZmI2cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzQxCi0gICAgMHgxLjkxN2E2ZTdhZjlkZGYxN2I5MTRlNmQyZThlODNiMzNlcC00LAotICAgIDB4MS45MjFmYjhwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDIKLSAgICAtMHgxLjkxN2E2ZTdhZjlkZGYxN2I5MTRlNmQyZThlODNiMzNlcC00LAotICAgIC0weDEuOTIxZmI4cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzQzCi0gICAgMHgxLjhmOGI4Mjg4OTI5NmI1Y2Y3OTA0ZGIxZTc0YjM0NjZicC0zLAotICAgIDB4MS45MjFmYjRwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDQKLSAgICAtMHgxLjhmOGI4Mjg4OTI5NmI1Y2Y3OTA0ZGIxZTc0YjM0NjZicC0zLAotICAgIC0weDEuOTIxZmI0cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ1Ci0gICAgMHgxLjhmOGI4NDdlYmMxM2I4OTk4ZWM1YjM3ZTcwNjUzNDFlcC0zLAotICAgIDB4MS45MjFmYjZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDYKLSAgICAtMHgxLjhmOGI4NDdlYmMxM2I4OTk4ZWM1YjM3ZTcwNjUzNDFlcC0zLAotICAgIC0weDEuOTIxZmI2cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ3Ci0gICAgMHgxLjhmOGI4Njc0ZTU5MGEyNmFlYzNlYTAxZDMwYWVkNDg2cC0zLAotICAgIDB4MS45MjFmYjhwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDgKLSAgICAtMHgxLjhmOGI4Njc0ZTU5MGEyNmFlYzNlYTAxZDMwYWVkNDg2cC0zLAotICAgIC0weDEuOTIxZmI4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ5Ci0gICAgMHgxLjg3ZGUyOTNmNTY5NzE3YTQyYTNiZGIwMWFlYWUyMDYzcC0yLAotICAgIDB4MS45MjFmYjRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTAKLSAgICAtMHgxLjg3ZGUyOTNmNTY5NzE3YTQyYTNiZGIwMWFlYWUyMDYzcC0yLAotICAgIC0weDEuOTIxZmI0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUxCi0gICAgMHgxLjg3ZGUyYjE4NWQ1NDE3ZGNhODAwYjg1Y2ExMzE5MDQzcC0yLAotICAgIDB4MS45MjFmYjZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTIKLSAgICAtMHgxLjg3ZGUyYjE4NWQ1NDE3ZGNhODAwYjg1Y2ExMzE5MDQzcC0yLAotICAgIC0weDEuOTIxZmI2cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUzCi0gICAgMHgxLjg3ZGUyY2YxNjQxMGI2MWQ5YWZmN2U2MjhmYzg1M2IycC0yLAotICAgIDB4MS45MjFmYjhwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTQKLSAgICAtMHgxLjg3ZGUyY2YxNjQxMGI2MWQ5YWZmN2U2MjhmYzg1M2IycC0yLAotICAgIC0weDEuOTIxZmI4cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU1Ci0gICAgMHgxLjZhMDllNTgyYWEzOTQ1NDYxYjVhOGEwNzg3ZDVhYjVicC0xLAotICAgIDB4MS45MjFmYjRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTYKLSAgICAtMHgxLjZhMDllNTgyYWEzOTQ1NDYxYjVhOGEwNzg3ZDVhYjVicC0xLAotICAgIC0weDEuOTIxZmI0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU3Ci0gICAgMHgxLjZhMDllNmVjYjQxZmRkN2U2ODE4NzJjODU0ODg3MDE5cC0xLAotICAgIDB4MS45MjFmYjZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTgKLSAgICAtMHgxLjZhMDllNmVjYjQxZmRkN2U2ODE4NzJjODU0ODg3MDE5cC0xLAotICAgIC0weDEuOTIxZmI2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU5Ci0gICAgMHgxLjZhMDllODU2YmUwNTBiYWNjZGU5YTc2OTYxZTg0YWE3cC0xLAotICAgIDB4MS45MjFmYjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjAKLSAgICAtMHgxLjZhMDllODU2YmUwNTBiYWNjZGU5YTc2OTYxZTg0YWE3cC0xLAotICAgIC0weDEuOTIxZmI4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYxCi0gICAgMHgxLmZmZmZmZmZmZmZmZTY1NDZjYzM4MjExYzI2ZGFiZWVicC0xLAotICAgIDB4MS45MjFmYjRwMAotICB9LAotICB7IC8vIEVudHJ5IDc2MgotICAgIC0weDEuZmZmZmZmZmZmZmZlNjU0NmNjMzgyMTFjMjZkYWJlZWJwLTEsCi0gICAgLTB4MS45MjFmYjRwMAotICB9LAotICB7IC8vIEVudHJ5IDc2MwotICAgIDB4MS5mZmZmZmZmZmZmZmY3NjUyMTI0OWM3NDIyOTMwZWQ4MnAtMSwKLSAgICAweDEuOTIxZmI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjQKLSAgICAtMHgxLmZmZmZmZmZmZmZmZjc2NTIxMjQ5Yzc0MjI5MzBlZDgycC0xLAotICAgIC0weDEuOTIxZmI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjUKLSAgICAweDEuZmZmZmZmZmZmZmY4ODc1ZDU4NWI2ZDZjZmNlOTdkOWNwLTEsCi0gICAgMHgxLjkyMWZiOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY2Ci0gICAgLTB4MS5mZmZmZmZmZmZmZjg4NzVkNTg1YjZkNmNmY2U5N2Q5Y3AtMSwKLSAgICAtMHgxLjkyMWZiOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY3Ci0gICAgMHgxLjQ0NDJkMTg0Njk4ODMxZjE1YjYzMTViZmE2YjVhZTc1cC0yMywKLSAgICAweDEuOTIxZmI0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjgKLSAgICAtMHgxLjQ0NDJkMTg0Njk4ODMxZjE1YjYzMTViZmE2YjVhZTc1cC0yMywKLSAgICAtMHgxLjkyMWZiNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY5Ci0gICAgLTB4MS43NzdhNWNmNzJjZWM1ZmQ2MTg5NmNiNGY0MGQxZGU3OXAtMjQsCi0gICAgMHgxLjkyMWZiNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzcwCi0gICAgMHgxLjc3N2E1Y2Y3MmNlYzVmZDYxODk2Y2I0ZjQwZDFkZTc5cC0yNCwKLSAgICAtMHgxLjkyMWZiNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzcxCi0gICAgLTB4MS41ZGRlOTczZGNiMzQ2YWZhNDYyMDNjZGRjNmY3ZmU5N3AtMjIsCi0gICAgMHgxLjkyMWZiOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzcyCi0gICAgMHgxLjVkZGU5NzNkY2IzNDZhZmE0NjIwM2NkZGM2ZjdmZTk3cC0yMiwKLSAgICAtMHgxLjkyMWZiOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzczCi0gICAgLTB4MS40NDQyZDE4NDY5ODQyMTc2Mjg4NzJlNTZlYjU4YjRjMXAtMjIsCi0gICAgMHgxLjkyMWZiNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc0Ci0gICAgMHgxLjQ0NDJkMTg0Njk4NDIxNzYyODg3MmU1NmViNThiNGMxcC0yMiwKLSAgICAtMHgxLjkyMWZiNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc1Ci0gICAgMHgxLjc3N2E1Y2Y3MmNlYWNiZjZlYzY1N2U5NzdlZjc3MWYxcC0yMywKLSAgICAweDEuOTIxZmI2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzYKLSAgICAtMHgxLjc3N2E1Y2Y3MmNlYWNiZjZlYzY1N2U5NzdlZjc3MWYxcC0yMywKLSAgICAtMHgxLjkyMWZiNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc3Ci0gICAgMHgxLjVkZGU5NzNkY2IxZmZmMTBiYjAzODg0NzllODJmNGJicC0yMSwKLSAgICAweDEuOTIxZmI4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzgKLSAgICAtMHgxLjVkZGU5NzNkY2IxZmZmMTBiYjAzODg0NzllODJmNGJicC0yMSwKLSAgICAtMHgxLjkyMWZiOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc5Ci0gICAgLTB4MS40NDQyZDE4NDY5NzNkZjg5NWQxNzkxMDIzZGVkNTEzY3AtMjEsCi0gICAgMHgxLjkyMWZiNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgwCi0gICAgMHgxLjQ0NDJkMTg0Njk3M2RmODk1ZDE3OTEwMjNkZWQ1MTNjcC0yMSwKLSAgICAtMHgxLjkyMWZiNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgxCi0gICAgMHgxLjc3N2E1Y2Y3MmNlNDdjN2EzYmEwNGJjMmE2MDdhOWE3cC0yMiwKLSAgICAweDEuOTIxZmI2cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODIKLSAgICAtMHgxLjc3N2E1Y2Y3MmNlNDdjN2EzYmEwNGJjMmE2MDdhOWE3cC0yMiwKLSAgICAtMHgxLjkyMWZiNnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgzCi0gICAgMHgxLjVkZGU5NzNkY2FjZTRmNmE4ZTkwYmQxNWUwMDYxMGY4cC0yMCwKLSAgICAweDEuOTIxZmI4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODQKLSAgICAtMHgxLjVkZGU5NzNkY2FjZTRmNmE4ZTkwYmQxNWUwMDYxMGY4cC0yMCwKLSAgICAtMHgxLjkyMWZiOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzg1Ci0gICAgLTB4MS40NDQyZDE4NDY5MzJkN2Q2MmY1OTIwOTM4OGM3ZjdjYXAtMjAsCi0gICAgMHgxLjkyMWZiNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzg2Ci0gICAgMHgxLjQ0NDJkMTg0NjkzMmQ3ZDYyZjU5MjA5Mzg4YzdmN2NhcC0yMCwKLSAgICAtMHgxLjkyMWZiNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzg3Ci0gICAgMHgxLjc3N2E1Y2Y3MmNjYjNlODc3ODhiODExMjI5ZTcyNWJjcC0yMSwKLSAgICAweDEuOTIxZmI2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODgKLSAgICAtMHgxLjc3N2E1Y2Y3MmNjYjNlODc3ODhiODExMjI5ZTcyNWJjcC0yMSwKLSAgICAtMHgxLjkyMWZiNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzg5Ci0gICAgMHgxLjVkZGU5NzNkYzk4NzkwZDFkY2M2MDJiZDFiODZiY2NhcC0xOSwKLSAgICAweDEuOTIxZmI4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTAKLSAgICAtMHgxLjVkZGU5NzNkYzk4NzkwZDFkY2M2MDJiZDFiODZiY2NhcC0xOSwKLSAgICAtMHgxLjkyMWZiOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzkxCi0gICAgLTB4MS40NDQyZDE4NDY4MmViOTA5Nzg1ZmFkMThiY2I1ZGJmY3AtMTksCi0gICAgMHgxLjkyMWZiNHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzkyCi0gICAgMHgxLjQ0NDJkMTg0NjgyZWI5MDk3ODVmYWQxOGJjYjVkYmZjcC0xOSwKLSAgICAtMHgxLjkyMWZiNHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzkzCi0gICAgMHgxLjc3N2E1Y2Y3MmM2NjQ2YmM2YzM4NjA3ZWIzNGVlYTEzcC0yMCwKLSAgICAweDEuOTIxZmI2cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTQKLSAgICAtMHgxLjc3N2E1Y2Y3MmM2NjQ2YmM2YzM4NjA3ZWIzNGVlYTEzcC0yMCwKLSAgICAtMHgxLjkyMWZiNnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzk1Ci0gICAgMHgxLjVkZGU5NzNkYzQ2Yzk2NmYxNWEyNDAzZDYwY2QxNGQwcC0xOCwKLSAgICAweDEuOTIxZmI4cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTYKLSAgICAtMHgxLjVkZGU5NzNkYzQ2Yzk2NmYxNWEyNDAzZDYwY2QxNGQwcC0xOCwKLSAgICAtMHgxLjkyMWZiOHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzk3Ci0gICAgLTB4MS40NDQyZDE4NDY0MWUzZGQ2OWM3ZWMzMmUxNGEyMDlhNXAtMTgsCi0gICAgMHgxLjkyMWZiNHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzk4Ci0gICAgMHgxLjQ0NDJkMTg0NjQxZTNkZDY5YzdlYzMyZTE0YTIwOWE1cC0xOCwKLSAgICAtMHgxLjkyMWZiNHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzk5Ci0gICAgMHgxLjc3N2E1Y2Y3MmFkMjY3OTAzYWVjODExODc3OGIzYjVhcC0xOSwKLSAgICAweDEuOTIxZmI2cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDAKLSAgICAtMHgxLjc3N2E1Y2Y3MmFkMjY3OTAzYWVjODExODc3OGIzYjVhcC0xOSwKLSAgICAtMHgxLjkyMWZiNnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgODAxCi0gICAgMHgxLjVkZGU5NzNkYjAwMGFjZTNmOTg1YTQ3M2VhMWZjMDM5cC0xNywKLSAgICAweDEuOTIxZmI4cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDIKLSAgICAtMHgxLjVkZGU5NzNkYjAwMGFjZTNmOTg1YTQ3M2VhMWZjMDM5cC0xNywKLSAgICAtMHgxLjkyMWZiOHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgODAzCi0gICAgLTB4MS40NDQyZDE4NDUzZGM1MTBiMmQ0OTViOGJmNzliZDFjZXAtMTcsCi0gICAgMHgxLjkyMWZiNHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgODA0Ci0gICAgMHgxLjQ0NDJkMTg0NTNkYzUxMGIyZDQ5NWI4YmY3OWJkMWNlcC0xNywKLSAgICAtMHgxLjkyMWZiNHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgODA1Ci0gICAgMHgxLjc3N2E1Y2Y3MjQ4MmVhZGY3NWM3MzFmOTcyNTA3NzE4cC0xOCwKLSAgICAweDEuOTIxZmI2cDcKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDYKLSAgICAtMHgxLjc3N2E1Y2Y3MjQ4MmVhZGY3NWM3MzFmOTcyNTA3NzE4cC0xOCwKLSAgICAtMHgxLjkyMWZiNnA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgODA3Ci0gICAgMHgxLjVkZGU5NzNkNWU1MTA2Yjc5MDNhMThhNTUyYWVmYzZlcC0xNiwKLSAgICAweDEuOTIxZmI4cDcKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDgKLSAgICAtMHgxLjVkZGU5NzNkNWU1MTA2Yjc5MDNhMThhNTUyYWVmYzZlcC0xNiwKLSAgICAtMHgxLjkyMWZiOHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgODA5Ci0gICAgMHgxLjZhMDlmMTk0MGI4MGM4ZTI1Y2ZjOGMxMGQ0MjU3NmM2cC0xLAotICAgIDB4MS4yZDk3YzRwMQotICB9LAotICB7IC8vIEVudHJ5IDgxMAotICAgIC0weDEuNmEwOWYxOTQwYjgwYzhlMjVjZmM4YzEwZDQyNTc2YzZwLTEsCi0gICAgLTB4MS4yZDk3YzRwMQotICB9LAotICB7IC8vIEVudHJ5IDgxMQotICAgIDB4MS42YTA5ZWJlYmU0MDg4OTI0NWQ1N2M1YzlkOTBhNmQ4MnAtMSwKLSAgICAweDEuMmQ5N2M2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTIKLSAgICAtMHgxLjZhMDllYmViZTQwODg5MjQ1ZDU3YzVjOWQ5MGE2ZDgycC0xLAotICAgIC0weDEuMmQ5N2M2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTMKLSAgICAweDEuNmEwOWU2NDNiYzc5YThjNzllZjRiZjE4NzcyN2UyNjlwLTEsCi0gICAgMHgxLjJkOTdjOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODE0Ci0gICAgLTB4MS42YTA5ZTY0M2JjNzlhOGM3OWVmNGJmMTg3NzI3ZTI2OXAtMSwKLSAgICAtMHgxLjJkOTdjOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODE1Ci0gICAgLTB4MS42YTA5ZGYxOTcwNGNmMTQxMDhlMDkwMDBmZjYzNzRiZnAtMSwKLSAgICAweDEuZjZhN2EwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTYKLSAgICAweDEuNmEwOWRmMTk3MDRjZjE0MTA4ZTA5MDAwZmY2Mzc0YmZwLTEsCi0gICAgLTB4MS5mNmE3YTBwMQotICB9LAotICB7IC8vIEVudHJ5IDgxNwotICAgIC0weDEuNmEwOWU0YzE5N2Y4N2FjZTFjODFiNDMwMjJiZTM5YjFwLTEsCi0gICAgMHgxLmY2YTdhMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODE4Ci0gICAgMHgxLjZhMDllNGMxOTdmODdhY2UxYzgxYjQzMDIyYmUzOWIxcC0xLAotICAgIC0weDEuZjZhN2EycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTkKLSAgICAtMHgxLjZhMDllYTY5YmY4ZDYzYmNlNDA5NThmNWM0YjRmMTU1cC0xLAotICAgIDB4MS5mNmE3YTRwMQotICB9LAotICB7IC8vIEVudHJ5IDgyMAotICAgIDB4MS42YTA5ZWE2OWJmOGQ2M2JjZTQwOTU4ZjVjNGI0ZjE1NXAtMSwKLSAgICAtMHgxLmY2YTdhNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODIxCi0gICAgLTB4MS5mZmZmZmZmZmZmMDY1Y2IyNDBiYjhmOTUxOWQyYzZmMXAtMSwKLSAgICAweDEuMmQ5N2M0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjIKLSAgICAweDEuZmZmZmZmZmZmZjA2NWNiMjQwYmI4Zjk1MTlkMmM2ZjFwLTEsCi0gICAgLTB4MS4yZDk3YzRwMgotICB9LAotICB7IC8vIEVudHJ5IDgyMwotICAgIC0weDEuZmZmZmZmZmZmZmMzMjkzOTg5OGY0NjRhYWZjMmU3NGFwLTEsCi0gICAgMHgxLjJkOTdjNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODI0Ci0gICAgMHgxLmZmZmZmZmZmZmZjMzI5Mzk4OThmNDY0YWFmYzJlNzRhcC0xLAotICAgIC0weDEuMmQ5N2M2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjUKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmY1YzBkMjYzMGVlMGExZmI0ZTdicC0xLAotICAgIDB4MS4yZDk3YzhwMgotICB9LAotICB7IC8vIEVudHJ5IDgyNgotICAgIDB4MS5mZmZmZmZmZmZmZmZmNWMwZDI2MzBlZTBhMWZiNGU3YnAtMSwKLSAgICAtMHgxLjJkOTdjOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODI3Ci0gICAgLTB4MS42YTA5ZjUyOTMxNmNkZTVhMTkwZDIzNWNjNGNjYjgyNXAtMSwKLSAgICAweDEuNWZkYmJjcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjgKLSAgICAweDEuNmEwOWY1MjkzMTZjZGU1YTE5MGQyMzVjYzRjY2I4MjVwLTEsCi0gICAgLTB4MS41ZmRiYmNwMgotICB9LAotICB7IC8vIEVudHJ5IDgyOQotICAgIC0weDEuNmEwOWU5ZDhlMjgyNjc3MDU2N2VhODE4YjJlODk5NjBwLTEsCi0gICAgMHgxLjVmZGJiZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODMwCi0gICAgMHgxLjZhMDllOWQ4ZTI4MjY3NzA1NjdlYTgxOGIyZTg5OTYwcC0xLAotICAgIC0weDEuNWZkYmJlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzEKLSAgICAtMHgxLjZhMDlkZTg4OTMzZDZlMGMxZGI3OGUxZDdjZDE1MTczcC0xLAotICAgIDB4MS41ZmRiYzBwMgotICB9LAotICB7IC8vIEVudHJ5IDgzMgotICAgIDB4MS42YTA5ZGU4ODkzM2Q2ZTBjMWRiNzhlMWQ3Y2QxNTE3M3AtMSwKLSAgICAtMHgxLjVmZGJjMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODMzCi0gICAgMHgxLjZhMDlkMDMzZmE3MTVhNDA3YTZmMDNkMDFiOTExMTNmcC0xLAotICAgIDB4MS5jNDYzYThwMgotICB9LAotICB7IC8vIEVudHJ5IDgzNAotICAgIC0weDEuNmEwOWQwMzNmYTcxNWE0MDdhNmYwM2QwMWI5MTExM2ZwLTEsCi0gICAgLTB4MS5jNDYzYThwMgotICB9LAotICB7IC8vIEVudHJ5IDgzNQotICAgIDB4MS42YTA5ZGI4NDRhMjhmODYzNTg1MWZkZjg4MTg1MTVlZnAtMSwKLSAgICAweDEuYzQ2M2FhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzYKLSAgICAtMHgxLjZhMDlkYjg0NGEyOGY4NjM1ODUxZmRmODgxODUxNWVmcC0xLAotICAgIC0weDEuYzQ2M2FhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzcKLSAgICAweDEuNmEwOWU2ZDQ5OTg2MTQwZjU1MjI2ZmM1ODY3MjYxMmNwLTEsCi0gICAgMHgxLmM0NjNhY3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgODM4Ci0gICAgLTB4MS42YTA5ZTZkNDk5ODYxNDBmNTUyMjZmYzU4NjcyNjEyY3AtMSwKLSAgICAtMHgxLmM0NjNhY3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgODM5Ci0gICAgMHgxLmZmZmZmZmZmZmY5NTM5NzkzNGNhYzFmMjg1MzJkM2QzcC0xLAotICAgIDB4MS5mNmE3YTBwMgotICB9LAotICB7IC8vIEVudHJ5IDg0MAotICAgIC0weDEuZmZmZmZmZmZmZjk1Mzk3OTM0Y2FjMWYyODUzMmQzZDNwLTEsCi0gICAgLTB4MS5mNmE3YTBwMgotICB9LAotICB7IC8vIEVudHJ5IDg0MQotICAgIDB4MS5mZmZmZmZmZmZmZmE4ZTVhYWUyYmI5M2FlNTkwZjk4NHAtMSwKLSAgICAweDEuZjZhN2EycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDIKLSAgICAtMHgxLmZmZmZmZmZmZmZmYThlNWFhZTJiYjkzYWU1OTBmOTg0cC0xLAotICAgIC0weDEuZjZhN2EycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDMKLSAgICAweDEuZmZmZmZmZmZmZmRmZTMzYzI3OGNiNDhhNTllZTNlZjJwLTEsCi0gICAgMHgxLmY2YTdhNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ0Ci0gICAgLTB4MS5mZmZmZmZmZmZmZGZlMzNjMjc4Y2I0OGE1OWVlM2VmMnAtMSwKLSAgICAtMHgxLmY2YTdhNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ1Ci0gICAgMHgxLjZhMGEwNDBlYTVjMzJiYTRhZmJlYjg2YTYxNGM1ZDE2cC0xLAotICAgIDB4MS4xNDc1Y2FwMwotICB9LAotICB7IC8vIEVudHJ5IDg0NgotICAgIC0weDEuNmEwYTA0MGVhNWMzMmJhNGFmYmViODZhNjE0YzVkMTZwLTEsCi0gICAgLTB4MS4xNDc1Y2FwMwotICB9LAotICB7IC8vIEVudHJ5IDg0NwotICAgIDB4MS42YTA5ZWQ2ZTA4ODIxMmIxZTI2MGE1MTMyZDY5NTliN3AtMSwKLSAgICAweDEuMTQ3NWNjcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDgKLSAgICAtMHgxLjZhMDllZDZlMDg4MjEyYjFlMjYwYTUxMzJkNjk1OWI3cC0xLAotICAgIC0weDEuMTQ3NWNjcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDkKLSAgICAweDEuNmEwOWQ2Y2Q2OWQ2ZWZkMWE2ZmEyZGQ0YzYxN2NiYmVwLTEsCi0gICAgMHgxLjE0NzVjZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODUwCi0gICAgLTB4MS42YTA5ZDZjZDY5ZDZlZmQxYTZmYTJkZDRjNjE3Y2JiZXAtMSwKLSAgICAtMHgxLjE0NzVjZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODUxCi0gICAgMHgxLmY5OTkwZTkxYTY0YWU0ODY3NTc4NzhiZGZlZTBmNzAzcC0yMCwKLSAgICAweDEuMmQ5N2M0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTIKLSAgICAtMHgxLmY5OTkwZTkxYTY0YWU0ODY3NTc4NzhiZGZlZTBmNzAzcC0yMCwKLSAgICAtMHgxLjJkOTdjNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODUzCi0gICAgMHgxLmYzMzIxZDIzNGVkODEyOGFhYmIwNDk5YTQzYjRkZWYycC0yMSwKLSAgICAweDEuMmQ5N2M2cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTQKLSAgICAtMHgxLmYzMzIxZDIzNGVkODEyOGFhYmIwNDk5YTQzYjRkZWYycC0yMSwKLSAgICAtMHgxLjJkOTdjNnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODU1Ci0gICAgLTB4MS45OWJjNWI5NjFiMWFjMjk2ZGJlMTk4MGZkMmM4OTBhMHAtMjYsCi0gICAgMHgxLjJkOTdjOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODU2Ci0gICAgMHgxLjk5YmM1Yjk2MWIxYWMyOTZkYmUxOTgwZmQyYzg5MGEwcC0yNiwKLSAgICAtMHgxLjJkOTdjOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODU3Ci0gICAgLTB4MS42YTA5YzE0ZTgzZjhkYjA4MGQxMjIzZjg4N2NjMTJlY3AtMSwKLSAgICAweDEuNDZiOWMwcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTgKLSAgICAweDEuNmEwOWMxNGU4M2Y4ZGIwODBkMTIyM2Y4ODdjYzEyZWNwLTEsCi0gICAgLTB4MS40NmI5YzBwMwotICB9LAotICB7IC8vIEVudHJ5IDg1OQotICAgIC0weDEuNmEwOWQ3ZWYyM2ZiZWMxZWQ4MTJlODA3YmViMDQ5MmZwLTEsCi0gICAgMHgxLjQ2YjljMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODYwCi0gICAgMHgxLjZhMDlkN2VmMjNmYmVjMWVkODEyZTgwN2JlYjA0OTJmcC0xLAotICAgIC0weDEuNDZiOWMycDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjEKLSAgICAtMHgxLjZhMDllZThmYzI5NGYzNWRiM2VmY2U1NjUzNjVhZjg5cC0xLAotICAgIDB4MS40NmI5YzRwMwotICB9LAotICB7IC8vIEVudHJ5IDg2MgotICAgIDB4MS42YTA5ZWU4ZmMyOTRmMzVkYjNlZmNlNTY1MzY1YWY4OXAtMSwKLSAgICAtMHgxLjQ2YjljNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODYzCi0gICAgLTB4MS5mZmZmZmZmZmZlNGM5NmIzOTdkOTUxY2IyMTg2MWM5NXAtMSwKLSAgICAweDEuNWZkYmJjcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjQKLSAgICAweDEuZmZmZmZmZmZmZTRjOTZiMzk3ZDk1MWNiMjE4NjFjOTVwLTEsCi0gICAgLTB4MS41ZmRiYmNwMwotICB9LAotICB7IC8vIEVudHJ5IDg2NQotICAgIC0weDEuZmZmZmZmZmZmZmU4NTEyYWViYjU2YzllNzViNDE5NDFwLTEsCi0gICAgMHgxLjVmZGJiZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODY2Ci0gICAgMHgxLmZmZmZmZmZmZmZlODUxMmFlYmI1NmM5ZTc1YjQxOTQxcC0xLAotICAgIC0weDEuNWZkYmJlcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjcKLSAgICAtMHgxLmZmZmZmZmZmZmY4NDBiYTIzZjkxYzljYjQ5YTEwYjI3cC0xLAotICAgIDB4MS41ZmRiYzBwMwotICB9LAotICB7IC8vIEVudHJ5IDg2OAotICAgIDB4MS5mZmZmZmZmZmZmODQwYmEyM2Y5MWM5Y2I0OWExMGIyN3AtMSwKLSAgICAtMHgxLjVmZGJjMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODY5Ci0gICAgLTB4MS42YTBhMTJmNDE5N2M5MGEwZWU0YTA5NGI2Mzc3YWEyM3AtMSwKLSAgICAweDEuNzhmZGI2cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzAKLSAgICAweDEuNmEwYTEyZjQxOTdjOTBhMGVlNGEwOTRiNjM3N2FhMjNwLTEsCi0gICAgLTB4MS43OGZkYjZwMwotICB9LAotICB7IC8vIEVudHJ5IDg3MQotICAgIC0weDEuNmEwOWZjNTM3ZDI5Y2YxMzFkNjcxMDk5MWJlYmFiZWRwLTEsCi0gICAgMHgxLjc4ZmRiOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODcyCi0gICAgMHgxLjZhMDlmYzUzN2QyOWNmMTMxZDY3MTA5OTFiZWJhYmVkcC0xLAotICAgIC0weDEuNzhmZGI4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzMKLSAgICAtMHgxLjZhMDllNWIyZGY2ZDAzODhmOTA3MGM0MzQwZjNlNjY5cC0xLAotICAgIDB4MS43OGZkYmFwMwotICB9LAotICB7IC8vIEVudHJ5IDg3NAotICAgIDB4MS42YTA5ZTViMmRmNmQwMzg4ZjkwNzBjNDM0MGYzZTY2OXAtMSwKLSAgICAtMHgxLjc4ZmRiYXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODc1Ci0gICAgMHgxLjZhMDljOTA5YWRkNGRiZjMyMjUzYTM5ZDVjMzA2MzA4cC0xLAotICAgIDB4MS5hYjQxYWVwMwotICB9LAotICB7IC8vIEVudHJ5IDg3NgotICAgIC0weDEuNmEwOWM5MDlhZGQ0ZGJmMzIyNTNhMzlkNWMzMDYzMDhwLTEsCi0gICAgLTB4MS5hYjQxYWVwMwotICB9LAotICB7IC8vIEVudHJ5IDg3NwotICAgIDB4MS42YTA5ZGZhYTRkNWMzYTdmMDU2ZjNlNjFhMzY1YjI5ZXAtMSwKLSAgICAweDEuYWI0MWIwcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzgKLSAgICAtMHgxLjZhMDlkZmFhNGQ1YzNhN2YwNTZmM2U2MWEzNjViMjllcC0xLAotICAgIC0weDEuYWI0MWIwcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzkKLSAgICAweDEuNmEwOWY2NGFlYjc5OGYyYjNlM2Q5YjE2ZThlM2M0MTJwLTEsCi0gICAgMHgxLmFiNDFiMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODgwCi0gICAgLTB4MS42YTA5ZjY0YWViNzk4ZjJiM2UzZDliMTZlOGUzYzQxMnAtMSwKLSAgICAtMHgxLmFiNDFiMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODgxCi0gICAgMHgxLmZmZmZmZmZmZmMyNjBkNmZmYjhmNGNkOGFiM2ZkMDIwcC0xLAotICAgIDB4MS5jNDYzYThwMwotICB9LAotICB7IC8vIEVudHJ5IDg4MgotICAgIC0weDEuZmZmZmZmZmZmYzI2MGQ2ZmZiOGY0Y2Q4YWIzZmQwMjBwLTEsCi0gICAgLTB4MS5jNDYzYThwMwotICB9LAotICB7IC8vIEVudHJ5IDg4MwotICAgIDB4MS5mZmZmZmZmZmZmMTJkODliYjA4NGRkNzYyODQ4YjNkNnAtMSwKLSAgICAweDEuYzQ2M2FhcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODQKLSAgICAtMHgxLmZmZmZmZmZmZmYxMmQ4OWJiMDg0ZGQ3NjI4NDhiM2Q2cC0xLAotICAgIC0weDEuYzQ2M2FhcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODUKLSAgICAweDEuZmZmZmZmZmZmZmZmYTNjNzY1N2I4NWU1YjQ0YmJkNDRwLTEsCi0gICAgMHgxLmM0NjNhY3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgODg2Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZhM2M3NjU3Yjg1ZTViNDRiYmQ0NHAtMSwKLSAgICAtMHgxLmM0NjNhY3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgODg3Ci0gICAgMHgxLjZhMGEwYjM4ZjEzNGEzMjk1YTBiMzg2ZTQyZjFjYTdhcC0xLAotICAgIDB4MS5kZDg1YTRwMwotICB9LAotICB7IC8vIEVudHJ5IDg4OAotICAgIC0weDEuNmEwYTBiMzhmMTM0YTMyOTVhMGIzODZlNDJmMWNhN2FwLTEsCi0gICAgLTB4MS5kZDg1YTRwMwotICB9LAotICB7IC8vIEVudHJ5IDg4OQotICAgIDB4MS42YTA5ZjQ5ODU0NjYyZWZmMWIzNTc1NWExMjkwNDRhN3AtMSwKLSAgICAweDEuZGQ4NWE2cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTAKLSAgICAtMHgxLjZhMDlmNDk4NTQ2NjJlZmYxYjM1NzU1YTEyOTA0NGE3cC0xLAotICAgIC0weDEuZGQ4NWE2cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTEKLSAgICAweDEuNmEwOWRkZjdiNjJkYjBlMDQ0MGI2YTQyNjIyMDNiMTFwLTEsCi0gICAgMHgxLmRkODVhOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODkyCi0gICAgLTB4MS42YTA5ZGRmN2I2MmRiMGUwNDQwYjZhNDI2MjIwM2IxMXAtMSwKLSAgICAtMHgxLmRkODVhOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODkzCi0gICAgMHgxLjRhYTljMmYyYzE5YTA2MmIxOGEwMTdiY2Q1NDI0ZmVhcC0yMCwKLSAgICAweDEuZjZhN2EwcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTQKLSAgICAtMHgxLjRhYTljMmYyYzE5YTA2MmIxOGEwMTdiY2Q1NDI0ZmVhcC0yMCwKLSAgICAtMHgxLmY2YTdhMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODk1Ci0gICAgMHgxLjJhYTcwYmNiMDdkM2E0MDc4MTUxMGQyMTM2NTJlNDNhcC0yMiwKLSAgICAweDEuZjZhN2EycDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTYKLSAgICAtMHgxLjJhYTcwYmNiMDdkM2E0MDc4MTUxMGQyMTM2NTJlNDNhcC0yMiwKLSAgICAtMHgxLmY2YTdhMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODk3Ci0gICAgLTB4MS42YWFjN2ExYTdiZjViYmQ0OTU3MmZmYjhkNzc0OTkyMnAtMjEsCi0gICAgMHgxLmY2YTdhNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODk4Ci0gICAgMHgxLjZhYWM3YTFhN2JmNWJiZDQ5NTcyZmZiOGQ3NzQ5OTIycC0yMSwKLSAgICAtMHgxLmY2YTdhNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODk5Ci0gICAgLTB4MS42YTA5YTM4Mzk1MzEyNDA5Njg5ODM0MGY5MTY4YjlkNXAtMSwKLSAgICAweDEuMDdlNGNjcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDAKLSAgICAweDEuNmEwOWEzODM5NTMxMjQwOTY4OTgzNDBmOTE2OGI5ZDVwLTEsCi0gICAgLTB4MS4wN2U0Y2NwNAotICB9LAotICB7IC8vIEVudHJ5IDkwMQotICAgIC0weDEuNmEwOWQwYzRkNzg2OTk2MWM0N2E5YjBiOTY4Y2M5MTBwLTEsCi0gICAgMHgxLjA3ZTRjZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTAyCi0gICAgMHgxLjZhMDlkMGM0ZDc4Njk5NjFjNDdhOWIwYjk2OGNjOTEwcC0xLAotICAgIC0weDEuMDdlNGNlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDMKLSAgICAtMHgxLjZhMDlmZTA2MTQzM2U3NzcwZDAwY2E1OWQ1YTU2MjUxcC0xLAotICAgIDB4MS4wN2U0ZDBwNAotICB9LAotICB7IC8vIEVudHJ5IDkwNAotICAgIDB4MS42YTA5ZmUwNjE0MzNlNzc3MGQwMGNhNTlkNWE1NjI1MXAtMSwKLSAgICAtMHgxLjA3ZTRkMHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTA1Ci0gICAgLTB4MS5mZmZmZmZmZmY5MjE5ZGFlNWZlZGExYjUzOTMzNTgwM3AtMSwKLSAgICAweDEuMTQ3NWNhcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDYKLSAgICAweDEuZmZmZmZmZmZmOTIxOWRhZTVmZWRhMWI1MzkzMzU4MDNwLTEsCi0gICAgLTB4MS4xNDc1Y2FwNAotICB9LAotICB7IC8vIEVudHJ5IDkwNwotICAgIC0weDEuZmZmZmZmZmZmZjlkNTU2ZThjMGJmMGE4MGQ2MTA4MDhwLTEsCi0gICAgMHgxLjE0NzVjY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTA4Ci0gICAgMHgxLmZmZmZmZmZmZmY5ZDU1NmU4YzBiZjBhODBkNjEwODA4cC0xLAotICAgIC0weDEuMTQ3NWNjcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDkKLSAgICAtMHgxLmZmZmZmZmZmZmUxOTBkMmViODJlNzRlZmQyMDkzMjE1cC0xLAotICAgIDB4MS4xNDc1Y2VwNAotICB9LAotICB7IC8vIEVudHJ5IDkxMAotICAgIDB4MS5mZmZmZmZmZmZlMTkwZDJlYjgyZTc0ZWZkMjA5MzIxNXAtMSwKLSAgICAtMHgxLjE0NzVjZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTExCi0gICAgLTB4MS42YTBhMWExZTY0YTI4ZWVlMjM4ZGM4NTI4NDZhYWNkNXAtMSwKLSAgICAweDEuMjEwNmM4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTIKLSAgICAweDEuNmEwYTFhMWU2NGEyOGVlZTIzOGRjODUyODQ2YWFjZDVwLTEsCi0gICAgLTB4MS4yMTA2YzhwNAotICB9LAotICB7IC8vIEVudHJ5IDkxMwotICAgIC0weDEuNmEwOWVjZGQyYjc4NGI2OTkwMzRlZTgxMDI2NzBlMjdwLTEsCi0gICAgMHgxLjIxMDZjYXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTE0Ci0gICAgMHgxLjZhMDllY2RkMmI3ODRiNjk5MDM0ZWU4MTAyNjcwZTI3cC0xLAotICAgIC0weDEuMjEwNmNhcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTUKLSAgICAtMHgxLjZhMDliZjliZWNhNWUwMzE4ODMwMTYzOWMwOWVkNTc0cC0xLAotICAgIDB4MS4yMTA2Y2NwNAotICB9LAotICB7IC8vIEVudHJ5IDkxNgotICAgIDB4MS42YTA5YmY5YmVjYTVlMDMxODgzMDE2MzljMDllZDU3NHAtMSwKLSAgICAtMHgxLjIxMDZjY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTE3Ci0gICAgLTB4MS5mOTk5MGU5MWEyNzBkM2JjMWMwMmY0ZjY5ZjQ4ZTY3NXAtMTksCi0gICAgMHgxLjJkOTdjNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTE4Ci0gICAgMHgxLmY5OTkwZTkxYTI3MGQzYmMxYzAyZjRmNjlmNDhlNjc1cC0xOSwKLSAgICAtMHgxLjJkOTdjNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTE5Ci0gICAgLTB4MS5mMzMyMWQyMzRkZWFjZDZmM2FmZDc1MDM5Njg1MDEyZnAtMjAsCi0gICAgMHgxLjJkOTdjNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTIwCi0gICAgMHgxLmYzMzIxZDIzNGRlYWNkNmYzYWZkNzUwMzk2ODUwMTJmcC0yMCwKLSAgICAtMHgxLjJkOTdjNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTIxCi0gICAgMHgxLjk5YmM1Yjk2MWIxYWExYzllODAyMzA3NGYzNDA2ZmQ5cC0yNSwKLSAgICAweDEuMmQ5N2M4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjIKLSAgICAtMHgxLjk5YmM1Yjk2MWIxYWExYzllODAyMzA3NGYzNDA2ZmQ5cC0yNSwKLSAgICAtMHgxLjJkOTdjOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTIzCi0gICAgMHgxLjZhMDk5NDllMWNlMWVjNTAxYWZjYjM1ZDczMWJmNjJjcC0xLAotICAgIDB4MS4zYTI4YzJwNAotICB9LAotICB7IC8vIEVudHJ5IDkyNAotICAgIC0weDEuNmEwOTk0OWUxY2UxZWM1MDFhZmNiMzVkNzMxYmY2MmNwLTEsCi0gICAgLTB4MS4zYTI4YzJwNAotICB9LAotICB7IC8vIEVudHJ5IDkyNQotICAgIDB4MS42YTA5YzFkZjYxMTQxMDBjNjVkMWZmNmM1NTc1NWU3MnAtMSwKLSAgICAweDEuM2EyOGM0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjYKLSAgICAtMHgxLjZhMDljMWRmNjExNDEwMGM2NWQxZmY2YzU1NzU1ZTcycC0xLAotICAgIC0weDEuM2EyOGM0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjcKLSAgICAweDEuNmEwOWVmMjA5ZjllMGNjMTMzMjRkZGYyYjM2MTU1M2ZwLTEsCi0gICAgMHgxLjNhMjhjNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTI4Ci0gICAgLTB4MS42YTA5ZWYyMDlmOWUwY2MxMzMyNGRkZjJiMzYxNTUzZnAtMSwKLSAgICAtMHgxLjNhMjhjNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTI5Ci0gICAgMHgxLmZmZmZmZmZmZjUzZjQ3NmVjNGY1OWYyNmM0YmNkZmEwcC0xLAotICAgIDB4MS40NmI5YzBwNAotICB9LAotICB7IC8vIEVudHJ5IDkzMAotICAgIC0weDEuZmZmZmZmZmZmNTNmNDc2ZWM0ZjU5ZjI2YzRiY2RmYTBwLTEsCi0gICAgLTB4MS40NmI5YzBwNAotICB9LAotICB7IC8vIEVudHJ5IDkzMQotICAgIDB4MS5mZmZmZmZmZmZlNWQyMDk3YjM0MzM0YWQ2NzlkZDdhNHAtMSwKLSAgICAweDEuNDZiOWMycDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzIKLSAgICAtMHgxLmZmZmZmZmZmZmU1ZDIwOTdiMzQzMzRhZDY3OWRkN2E0cC0xLAotICAgIC0weDEuNDZiOWMycDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzMKLSAgICAweDEuZmZmZmZmZmZmZjdhZjljMGExOWEwMDVjNTY1YzZhZjdwLTEsCi0gICAgMHgxLjQ2YjljNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTM0Ci0gICAgLTB4MS5mZmZmZmZmZmZmN2FmOWMwYTE5YTAwNWM1NjVjNmFmN3AtMSwKLSAgICAtMHgxLjQ2YjljNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTM1Ci0gICAgMHgxLjZhMGEyOTAzZDc3MzkyNWIwNTJmYjAwNmFjNjcwYzIzcC0xLAotICAgIDB4MS41MzRhYmVwNAotICB9LAotICB7IC8vIEVudHJ5IDkzNgotICAgIC0weDEuNmEwYTI5MDNkNzczOTI1YjA1MmZiMDA2YWM2NzBjMjNwLTEsCi0gICAgLTB4MS41MzRhYmVwNAotICB9LAotICB7IC8vIEVudHJ5IDkzNwotICAgIDB4MS42YTA5ZmJjMmEwMjVmZGFlOTE4NDY2ZmEwMDE0MjE0M3AtMSwKLSAgICAweDEuNTM0YWMwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzgKLSAgICAtMHgxLjZhMDlmYmMyYTAyNWZkYWU5MTg0NjZmYTAwMTQyMTQzcC0xLAotICAgIC0weDEuNTM0YWMwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzkKLSAgICAweDEuNmEwOWNlODE2MzMwNDExMzEzNWE2OGFlOTNkM2ZhMGVwLTEsCi0gICAgMHgxLjUzNGFjMnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQwCi0gICAgLTB4MS42YTA5Y2U4MTYzMzA0MTEzMTM1YTY4YWU5M2QzZmEwZXAtMSwKLSAgICAtMHgxLjUzNGFjMnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQxCi0gICAgMHgxLjRkZGQzYmE5ZWNiMTlkNmJiNmVhMTYxMTIwZTQ0N2I5cC0xOSwKLSAgICAweDEuNWZkYmJjcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDIKLSAgICAtMHgxLjRkZGQzYmE5ZWNiMTlkNmJiNmVhMTYxMTIwZTQ0N2I5cC0xOSwKLSAgICAtMHgxLjVmZGJiY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQzCi0gICAgMHgxLjM3NzRlZWE3Yjg5ZDgwZGY3ODE2ZmUyMDhlYzY5ZmMwcC0yMSwKLSAgICAweDEuNWZkYmJlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDQKLSAgICAtMHgxLjM3NzRlZWE3Yjg5ZDgwZGY3ODE2ZmUyMDhlYzY5ZmMwcC0yMSwKLSAgICAtMHgxLjVmZGJiZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQ1Ci0gICAgLTB4MS42NDQ1ODhhYzIzMzRhM2Q1NDUyZDk5NjAyODJjZjgwZHAtMjAsCi0gICAgMHgxLjVmZGJjMHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQ2Ci0gICAgMHgxLjY0NDU4OGFjMjMzNGEzZDU0NTJkOTk2MDI4MmNmODBkcC0yMCwKLSAgICAtMHgxLjVmZGJjMHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQ3Ci0gICAgLTB4MS42YTA5YjJmOWVhMDQ5ZTg1NWUzNWNhOWNlN2UwZDg5YXAtMSwKLSAgICAweDEuNmM2Y2JhcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDgKLSAgICAweDEuNmEwOWIyZjllYTA0OWU4NTVlMzVjYTljZTdlMGQ4OWFwLTEsCi0gICAgLTB4MS42YzZjYmFwNAotICB9LAotICB7IC8vIEVudHJ5IDk0OQotICAgIC0weDEuNmEwOWUwM2IyYTZiNDljNjEzNGM2N2I0MmJhZWU2NjhwLTEsCi0gICAgMHgxLjZjNmNiY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTUwCi0gICAgMHgxLjZhMDllMDNiMmE2YjQ5YzYxMzRjNjdiNDJiYWVlNjY4cC0xLAotICAgIC0weDEuNmM2Y2JjcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NTEKLSAgICAtMHgxLjZhMGEwZDdjNjUyOWNkODVkYmJiM2E1YzJjZDNmYWU1cC0xLAotICAgIDB4MS42YzZjYmVwNAotICB9LAotICB7IC8vIEVudHJ5IDk1MgotICAgIDB4MS42YTBhMGQ3YzY1MjljZDg1ZGJiYjNhNWMyY2QzZmFlNXAtMSwKLSAgICAtMHgxLjZjNmNiZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTUzCi0gICAgLTB4MS5mZmZmZmZmZmYwN2YwYWIxMmFhOGY0MWYyOWMxNTM5MnAtMSwKLSAgICAweDEuNzhmZGI2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NTQKLSAgICAweDEuZmZmZmZmZmZmMDdmMGFiMTJhYThmNDFmMjljMTUzOTJwLTEsCi0gICAgLTB4MS43OGZkYjZwNAotICB9LAotICB7IC8vIEVudHJ5IDk1NQotICAgIC0weDEuZmZmZmZmZmZmYzNmMDU0MmRiMjFkY2JjYjg0N2RhYzNwLTEsCi0gICAgMHgxLjc4ZmRiOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTU2Ci0gICAgMHgxLmZmZmZmZmZmZmMzZjA1NDJkYjIxZGNiY2I4NDdkYWMzcC0xLAotICAgIC0weDEuNzhmZGI4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NTcKLSAgICAtMHgxLmZmZmZmZmZmZmZmZWZmZDQ4YmFjNzNlZmU2MGM3ZmNmcC0xLAotICAgIDB4MS43OGZkYmFwNAotICB9LAotICB7IC8vIEVudHJ5IDk1OAotICAgIDB4MS5mZmZmZmZmZmZmZmVmZmQ0OGJhYzczZWZlNjBjN2ZjZnAtMSwKLSAgICAtMHgxLjc4ZmRiYXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTU5Ci0gICAgLTB4MS42YTBhMzdlOTQ5YTdhZDY5OGEzMjIzNGM3M2U1YWZiYXAtMSwKLSAgICAweDEuODU4ZWI0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjAKLSAgICAweDEuNmEwYTM3ZTk0OWE3YWQ2OThhMzIyMzRjNzNlNWFmYmFwLTEsCi0gICAgLTB4MS44NThlYjRwNAotICB9LAotICB7IC8vIEVudHJ5IDk2MQotICAgIC0weDEuNmEwYTBhYTgxNDM2YzdhOGQzM2EzOGQ3MDQwMzBkMTRwLTEsCi0gICAgMHgxLjg1OGViNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTYyCi0gICAgMHgxLjZhMGEwYWE4MTQzNmM3YThkMzNhMzhkNzA0MDMwZDE0cC0xLAotICAgIC0weDEuODU4ZWI2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjMKLSAgICAtMHgxLjZhMDlkZDY2ZDkxZGI5YmQ3YmYzNTVmYWZmMDhmMTk0cC0xLAotICAgIDB4MS44NThlYjhwNAotICB9LAotICB7IC8vIEVudHJ5IDk2NAotICAgIDB4MS42YTA5ZGQ2NmQ5MWRiOWJkN2JmMzU1ZmFmZjA4ZjE5NHAtMSwKLSAgICAtMHgxLjg1OGViOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTY1Ci0gICAgMHgxLmMwNDhiMzhhOGJiZjU5ZjQxNGZlYzcwNzkyMDk5MjZlcC0zLAotICAgIDB4MS5mZmZmZmVwNjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjYKLSAgICAtMHgxLmMwNDhiMzhhOGJiZjU5ZjQxNGZlYzcwNzkyMDk5MjZlcC0zLAotICAgIC0weDEuZmZmZmZlcDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTY3Ci0gICAgMHgxLmZmZjZkZmQ0MmRjNTQ0MzBiYzA1NzZiMDBhODhiZDk0cC0xLAotICAgIDB4MS5wNjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjgKLSAgICAtMHgxLmZmZjZkZmQ0MmRjNTQ0MzBiYzA1NzZiMDBhODhiZDk0cC0xLAotICAgIC0weDEucDYzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTY5Ci0gICAgLTB4MS5kNjYzN2QwNzAzNDdlZTk0ZTgzMDQ0NWU3NjQ4NjcyN3AtMSwKLSAgICAweDEuMDAwMDAycDYzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTcwCi0gICAgMHgxLmQ2NjM3ZDA3MDM0N2VlOTRlODMwNDQ1ZTc2NDg2NzI3cC0xLAotICAgIC0weDEuMDAwMDAycDYzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTcxCi0gICAgLTB4MS4wZTUyODM2NjFkZjBjYTBmNTVhYjYxNjdlMTQ1MTRhMXAtMSwKLSAgICAweDEuZmZmZmZlcDI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTcyCi0gICAgMHgxLjBlNTI4MzY2MWRmMGNhMGY1NWFiNjE2N2UxNDUxNGExcC0xLAotICAgIC0weDEuZmZmZmZlcDI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTczCi0gICAgLTB4MS44NmRjYzliYWJiMGE0MGVlODc1Y2FiM2I5ZTg5Mjc1N3AtMSwKLSAgICAweDEucDI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTc0Ci0gICAgMHgxLjg2ZGNjOWJhYmIwYTQwZWU4NzVjYWIzYjllODkyNzU3cC0xLAotICAgIC0weDEucDI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTc1Ci0gICAgMHgxLjE3MTk5OWI2MjlmZDViNjM1N2M2ZGZmNGQ3ODI3ZDk1cC0xLAotICAgIDB4MS4wMDAwMDJwMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzYKLSAgICAtMHgxLjE3MTk5OWI2MjlmZDViNjM1N2M2ZGZmNGQ3ODI3ZDk1cC0xLAotICAgIC0weDEuMDAwMDAycDI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTc3Ci0gICAgLTB4MS5lNTdlYzA5MjIxOTczNTUwZDFlNTc5OGRjZjBjZDI1ZHAtMSwKLSAgICAweDEuZmZmZmZlcDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTc4Ci0gICAgMHgxLmU1N2VjMDkyMjE5NzM1NTBkMWU1Nzk4ZGNmMGNkMjVkcC0xLAotICAgIC0weDEuZmZmZmZlcDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTc5Ci0gICAgLTB4MS44ZjIyZjg0MzNkNmVkZmU5YTRhZmY5NjIyNTE3Y2FhOXAtMSwKLSAgICAweDEucDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTgwCi0gICAgMHgxLjhmMjJmODQzM2Q2ZWRmZTlhNGFmZjk2MjI1MTdjYWE5cC0xLAotICAgIC0weDEucDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTgxCi0gICAgMHgxLmM5YjBjNzI2NWM1NDNmODBmYWYwMTc0MWM2NDU4NTYwcC0xLAotICAgIDB4MS4wMDAwMDJwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODIKLSAgICAtMHgxLmM5YjBjNzI2NWM1NDNmODBmYWYwMTc0MWM2NDU4NTYwcC0xLAotICAgIC0weDEuMDAwMDAycDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTgzCi0gICAgLTB4MS44MzdiOThhMzE4NWQxNDY2ZDg1MmYwYTdkYzFkMjQ4ZXAtMSwKLSAgICAweDEuZmZmZmZlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODQKLSAgICAweDEuODM3Yjk4YTMxODVkMTQ2NmQ4NTJmMGE3ZGMxZDI0OGVwLTEsCi0gICAgLTB4MS5mZmZmZmVwMQotICB9LAotICB7IC8vIEVudHJ5IDk4NQotICAgIC0weDEuODM3YjlkZGRjMWVhZTcwY2U5ODA1NWEwZTQ1MGQ5M2NwLTEsCi0gICAgMHgxLnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTg2Ci0gICAgMHgxLjgzN2I5ZGRkYzFlYWU3MGNlOTgwNTVhMGU0NTBkOTNjcC0xLAotICAgIC0weDEucDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODcKLSAgICAtMHgxLjgzN2JhODUzMTRiZGU1MmIxZTljMmM4ZWQyNzEyYzcycC0xLAotICAgIDB4MS4wMDAwMDJwMgotICB9LAotICB7IC8vIEVudHJ5IDk4OAotICAgIDB4MS44MzdiYTg1MzE0YmRlNTJiMWU5YzJjOGVkMjcxMmM3MnAtMSwKLSAgICAtMHgxLjAwMDAwMnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTg5Ci0gICAgMHgxLmQxOGY3MDU3M2RhNjMwMTJmYTFjMGUzZDJlYmJlNTljcC0xLAotICAgIDB4MS5mZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDk5MAotICAgIC0weDEuZDE4ZjcwNTczZGE2MzAxMmZhMWMwZTNkMmViYmU1OWNwLTEsCi0gICAgLTB4MS5mZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDk5MQotICAgIDB4MS5kMThmNmVhZDFiNDQ1ZGZhYjg0ODE4ODAwOWM5YmI5NXAtMSwKLSAgICAweDEucDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTIKLSAgICAtMHgxLmQxOGY2ZWFkMWI0NDVkZmFiODQ4MTg4MDA5YzliYjk1cC0xLAotICAgIC0weDEucDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTMKLSAgICAweDEuZDE4ZjZiNThkNjZhZTcxMTBiMmI2ZjdjZmZiYTZlYzFwLTEsCi0gICAgMHgxLjAwMDAwMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTk0Ci0gICAgLTB4MS5kMThmNmI1OGQ2NmFlNzExMGIyYjZmN2NmZmJhNmVjMXAtMSwKLSAgICAtMHgxLjAwMDAwMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTk1Ci0gICAgMHgxLmFlZDU0N2RiZWU0ZDBkODY4MGQwODEzZDFlNGUyMWQwcC0xLAotICAgIDB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTYKLSAgICAtMHgxLmFlZDU0N2RiZWU0ZDBkODY4MGQwODEzZDFlNGUyMWQwcC0xLAotICAgIC0weDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTk3Ci0gICAgMHgxLmFlZDU0OGYwOTBjZWUwNDE4ZGQzZDIxMzhhMWU3ODY1cC0xLAotICAgIDB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDk5OAotICAgIC0weDEuYWVkNTQ4ZjA5MGNlZTA0MThkZDNkMjEzOGExZTc4NjVwLTEsCi0gICAgLTB4MS5wMAotICB9LAotICB7IC8vIEVudHJ5IDk5OQotICAgIDB4MS5hZWQ1NGIxOWQ1Y2Q3OTM3Y2JmNDFlZDQwOGNhMGE1MnAtMSwKLSAgICAweDEuMDAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDAwCi0gICAgLTB4MS5hZWQ1NGIxOWQ1Y2Q3OTM3Y2JmNDFlZDQwOGNhMGE1MnAtMSwKLSAgICAtMHgxLjAwMDAwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwMQotICAgIDB4MS5lYWVlODU4MzVkZGU1YjcxYmVlYzdkOGQ5ODA1MjExMnAtMiwKLSAgICAweDEuZmZmZmZlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwMgotICAgIC0weDEuZWFlZTg1ODM1ZGRlNWI3MWJlZWM3ZDhkOTgwNTIxMTJwLTIsCi0gICAgLTB4MS5mZmZmZmVwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDAzCi0gICAgMHgxLmVhZWU4NzQ0YjA1ZWZlODc2NGJjMzY0ZmQ4MzdiNjY2cC0yLAotICAgIDB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDA0Ci0gICAgLTB4MS5lYWVlODc0NGIwNWVmZTg3NjRiYzM2NGZkODM3YjY2NnAtMiwKLSAgICAtMHgxLnAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwMDUKLSAgICAweDEuZWFlZThhYzc1NTVlZDQ3ZmNhNzdjZWVkMTc0YzhlYTBwLTIsCi0gICAgMHgxLjAwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwMDYKLSAgICAtMHgxLmVhZWU4YWM3NTU1ZWQ0N2ZjYTc3Y2VlZDE3NGM4ZWEwcC0yLAotICAgIC0weDEuMDAwMDAycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwNwotICAgIDB4MS5mYWFlZWI1ZjFjMGQ2M2Y0M2M2ZjNlYzQ2MDExNjkwZnAtMywKLSAgICAweDEuZmZmZmZlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwOAotICAgIC0weDEuZmFhZWViNWYxYzBkNjNmNDNjNmYzZWM0NjAxMTY5MGZwLTMsCi0gICAgLTB4MS5mZmZmZmVwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDA5Ci0gICAgMHgxLmZhYWVlZDRmMzE1NzZiYTg5ZGViZGM3MzUxZThiMWFlcC0zLAotICAgIDB4MS5wLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDEwCi0gICAgLTB4MS5mYWFlZWQ0ZjMxNTc2YmE4OWRlYmRjNzM1MWU4YjFhZXAtMywKLSAgICAtMHgxLnAtMgotICB9LAotICB7IC8vIEVudHJ5IDEwMTEKLSAgICAweDEuZmFhZWYxMmY1YmViMWMxMDk0NDczZDNjMzM2NWI5ZTFwLTMsCi0gICAgMHgxLjAwMDAwMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDEwMTIKLSAgICAtMHgxLmZhYWVmMTJmNWJlYjFjMTA5NDQ3M2QzYzMzNjViOWUxcC0zLAotICAgIC0weDEuMDAwMDAycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxMwotICAgIDB4MS5mZWFhZWNlYzZkOGUzMGNkNTY5NTBlYjJlYmRjZWJkNHAtNCwKLSAgICAweDEuZmZmZmZlcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAxNAotICAgIC0weDEuZmVhYWVjZWM2ZDhlMzBjZDU2OTUwZWIyZWJkY2ViZDRwLTQsCi0gICAgLTB4MS5mZmZmZmVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDE1Ci0gICAgMHgxLmZlYWFlZWU4NmVlMzVjYTA2OWE4NjcyMWY4OWY4NWE1cC00LAotICAgIDB4MS5wLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDE2Ci0gICAgLTB4MS5mZWFhZWVlODZlZTM1Y2EwNjlhODY3MjFmODlmODVhNXAtNCwKLSAgICAtMHgxLnAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwMTcKLSAgICAweDEuZmVhYWYyZTA3MThkOWM1NjhjOTQ0MmM4MTU0NWNkNjJwLTQsCi0gICAgMHgxLjAwMDAwMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwMTgKLSAgICAtMHgxLmZlYWFmMmUwNzE4ZDljNTY4Yzk0NDJjODE1NDVjZDYycC00LAotICAgIC0weDEuMDAwMDAycC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxOQotICAgIDB4MS5mZmFhYWNlZmQ0ZDg1NWFjODIyNzc5OWYzZTI2M2Q3YXAtNSwKLSAgICAweDEuZmZmZmZlcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAyMAotICAgIC0weDEuZmZhYWFjZWZkNGQ4NTVhYzgyMjc3OTlmM2UyNjNkN2FwLTUsCi0gICAgLTB4MS5mZmZmZmVwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIxCi0gICAgMHgxLmZmYWFhZWVlZDRlZGFiNGJhNGIzNjVlZDI1YTk1OTVmcC01LAotICAgIDB4MS5wLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIyCi0gICAgLTB4MS5mZmFhYWVlZWQ0ZWRhYjRiYTRiMzY1ZWQyNWE5NTk1ZnAtNSwKLSAgICAtMHgxLnAtNAotICB9LAotICB7IC8vIEVudHJ5IDEwMjMKLSAgICAweDEuZmZhYWIyZWNkNTE4NTA4YWU5YmM3MzBhMTY1YThlYWRwLTUsCi0gICAgMHgxLjAwMDAwMnAtNAotICB9LAotICB7IC8vIEVudHJ5IDEwMjQKLSAgICAtMHgxLmZmYWFiMmVjZDUxODUwOGFlOWJjNzMwYTE2NWE4ZWFkcC01LAotICAgIC0weDEuMDAwMDAycC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAyNQotICAgIDB4MS5mZmVhYThlZjJlODU5MzM4ODNjMGRjMzM0NjIzODdiNXAtNiwKLSAgICAweDEuZmZmZmZlcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAyNgotICAgIC0weDEuZmZlYWE4ZWYyZTg1OTMzODgzYzBkYzMzNDYyMzg3YjVwLTYsCi0gICAgLTB4MS5mZmZmZmVwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDI3Ci0gICAgMHgxLmZmZWFhYWVlZWU4NmU4Y2FmZTQxMzc2ZDQ3OTE5NTc5cC02LAotICAgIDB4MS5wLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDI4Ci0gICAgLTB4MS5mZmVhYWFlZWVlODZlOGNhZmU0MTM3NmQ0NzkxOTU3OXAtNiwKLSAgICAtMHgxLnAtNQotICB9LAotICB7IC8vIEVudHJ5IDEwMjkKLSAgICAweDEuZmZlYWFlZWU2ZTg5OTI3MDAzNDEzYWJlNjRlOWRjMjFwLTYsCi0gICAgMHgxLjAwMDAwMnAtNQotICB9LAotICB7IC8vIEVudHJ5IDEwMzAKLSAgICAtMHgxLmZmZWFhZWVlNmU4OTkyNzAwMzQxM2FiZTY0ZTlkYzIxcC02LAotICAgIC0weDEuMDAwMDAycC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAzMQotICAgIDB4MS5mZmZhYThhZWZlZWQzOTZmZmZmYzYzNjMxM2QwYmE2ZHAtNywKLSAgICAweDEuZmZmZmZlcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAzMgotICAgIC0weDEuZmZmYWE4YWVmZWVkMzk2ZmZmZmM2MzYzMTNkMGJhNmRwLTcsCi0gICAgLTB4MS5mZmZmZmVwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDMzCi0gICAgMHgxLmZmZmFhYWFlZWVlZDRlZDU0OWM2NTYwZjg4OWVlNTMxcC03LAotICAgIDB4MS5wLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM0Ci0gICAgLTB4MS5mZmZhYWFhZWVlZWQ0ZWQ1NDljNjU2MGY4ODllZTUzMXAtNywKLSAgICAtMHgxLnAtNgotICB9LAotICB7IC8vIEVudHJ5IDEwMzUKLSAgICAweDEuZmZmYWFlYWVjZWVkNzkzZmRlNWExYTljYTViYjFlZTZwLTcsCi0gICAgMHgxLjAwMDAwMnAtNgotICB9LAotICB7IC8vIEVudHJ5IDEwMzYKLSAgICAtMHgxLmZmZmFhZWFlY2VlZDc5M2ZkZTVhMWE5Y2E1YmIxZWU2cC03LAotICAgIC0weDEuMDAwMDAycC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAzNwotICAgIDB4MS5mZmZmZmRmYWFhYWFiYWFlZWVkZWQ5OTdmZWZmYTM1YXAtMTUsCi0gICAgMHgxLmZmZmZmZXAtMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM4Ci0gICAgLTB4MS5mZmZmZmRmYWFhYWFiYWFlZWVkZWQ5OTdmZWZmYTM1YXAtMTUsCi0gICAgLTB4MS5mZmZmZmVwLTE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAzOQotICAgIDB4MS5mZmZmZmZmYWFhYWFhYWFlZWVlZWVlZWQ0ZWQ0ZWQ0ZnAtMTUsCi0gICAgMHgxLnAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQwCi0gICAgLTB4MS5mZmZmZmZmYWFhYWFhYWFlZWVlZWVlZWQ0ZWQ0ZWQ0ZnAtMTUsCi0gICAgLTB4MS5wLTE0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0MQotICAgIDB4MS4wMDAwMDFmZDU1NTU0NTU3Nzc1NzhjY2JlN2JmYzA5Y3AtMTQsCi0gICAgMHgxLjAwMDAwMnAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQyCi0gICAgLTB4MS4wMDAwMDFmZDU1NTU0NTU3Nzc1NzhjY2JlN2JmYzA5Y3AtMTQsCi0gICAgLTB4MS4wMDAwMDJwLTE0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0MwotICAgIDB4MS5mZmZmZmRmZmZmZmZmZWFhYWFhZWFhYWFhNmFhZWVmMHAtMjgsCi0gICAgMHgxLmZmZmZmZXAtMjgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQ0Ci0gICAgLTB4MS5mZmZmZmRmZmZmZmZmZWFhYWFhZWFhYWFhNmFhZWVmMHAtMjgsCi0gICAgLTB4MS5mZmZmZmVwLTI4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0NQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZWFhYWFhYWFhYWFhYWFhZWVlZXAtMjgsCi0gICAgMHgxLnAtMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQ2Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZWFhYWFhYWFhYWFhYWFhZWVlZXAtMjgsCi0gICAgLTB4MS5wLTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0NwotICAgIDB4MS4wMDAwMDFmZmZmZmZmZjU1NTU1MTU1NTU0ZDU1Nzc3MnAtMjcsCi0gICAgMHgxLjAwMDAwMnAtMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQ4Ci0gICAgLTB4MS4wMDAwMDFmZmZmZmZmZjU1NTU1MTU1NTU0ZDU1Nzc3MnAtMjcsCi0gICAgLTB4MS4wMDAwMDJwLTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0OQotICAgIDB4MS5mZmZmZmRmZmZmZmZmZmZhYWFhYWJhYWFhYTlhYWFhZXAtMzEsCi0gICAgMHgxLmZmZmZmZXAtMzEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUwCi0gICAgLTB4MS5mZmZmZmRmZmZmZmZmZmZhYWFhYWJhYWFhYTlhYWFhZXAtMzEsCi0gICAgLTB4MS5mZmZmZmVwLTMxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA1MQotICAgIDB4MS5mZmZmZmZmZmZmZmZmZmZhYWFhYWFhYWFhYWFhYWFhZXAtMzEsCi0gICAgMHgxLnAtMzAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUyCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmZmZhYWFhYWFhYWFhYWFhYWFhZXAtMzEsCi0gICAgLTB4MS5wLTMwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA1MwotICAgIDB4MS4wMDAwMDFmZmZmZmZmZmZkNTU1NTQ1NTU1NTM1NTU1N3AtMzAsCi0gICAgMHgxLjAwMDAwMnAtMzAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDU0Ci0gICAgLTB4MS4wMDAwMDFmZmZmZmZmZmZkNTU1NTQ1NTU1NTM1NTU1N3AtMzAsCi0gICAgLTB4MS4wMDAwMDJwLTMwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA1NQotICAgIDB4MS4wYjMzNjY1MDg5NTc1MjBkOWRjODhkN2MwOTMzN2UyNHAtMSwKLSAgICAtMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDU2Ci0gICAgLTB4MS4wYjMzNjY1MDg5NTc1MjBkOWRjODhkN2MwOTMzN2UyNHAtMSwKLSAgICAweDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDEwNTcKLSAgICAtMHgxLjBiMzM2NjUwODk1NzUyMGQ5ZGM4OGQ3YzA5MzM3ZTI0cC0xLAotICAgIDB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1OAotICAgIDB4MS4wYjMzNjY1MDg5NTc1MjBkOWRjODhkN2MwOTMzN2UyNHAtMSwKLSAgICAtMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDU5Ci0gICAgLTB4MS4wYjMzNjY1MDg5NTc1MjBkOWRjODhkN2MwOTMzN2UyNHAtMSwKLSAgICAweDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDEwNjAKLSAgICAweDEuMGIzMzY2NTA4OTU3NTIwZDlkYzg4ZDdjMDkzMzdlMjRwLTEsCi0gICAgLTB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA2MQotICAgIC0weDEuNDhjZTU3NTIwMmVmZDkzYzYyZjdiODgxMDZlYTFkNGRwLTEsCi0gICAgMHgxLmZmZmZmY3AxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYyCi0gICAgMHgxLjQ4Y2U1NzUyMDJlZmQ5M2M2MmY3Yjg4MTA2ZWExZDRkcC0xLAotICAgIC0weDEuZmZmZmZjcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDEwNjMKLSAgICAtMHgxLjc3N2E1Y2Y3MmNlYzVmZDYxODk2Y2I0ZjQwZDFkZTc5cC0yNCwKLSAgICAweDEuOTIxZmI2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDY0Ci0gICAgMHgxLjc3N2E1Y2Y3MmNlYzVmZDYxODk2Y2I0ZjQwZDFkZTc5cC0yNCwKLSAgICAtMHgxLjkyMWZiNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2NQotICAgIDB4MS5mZmZmZmZmZmZmZmY3NjUyMTI0OWM3NDIyOTMwZWQ4MnAtMSwKLSAgICAweDEuOTIxZmI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDY2Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmY3NjUyMTI0OWM3NDIyOTMwZWQ4MnAtMSwKLSAgICAtMHgxLjkyMWZiNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2NwotICAgIDB4MS5hZWQ1NGIxOWQ1Y2Q3OTM3Y2JmNDFlZDQwOGNhMGE1MnAtMSwKLSAgICAweDEuMDAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDY4Ci0gICAgLTB4MS5hZWQ1NGIxOWQ1Y2Q3OTM3Y2JmNDFlZDQwOGNhMGE1MnAtMSwKLSAgICAtMHgxLjAwMDAwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2OQotICAgIDB4MS5hZWQ1NDhmMDkwY2VlMDQxOGRkM2QyMTM4YTFlNzg2NXAtMSwKLSAgICAweDEucDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDcwCi0gICAgLTB4MS5hZWQ1NDhmMDkwY2VlMDQxOGRkM2QyMTM4YTFlNzg2NXAtMSwKLSAgICAtMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3MQotICAgIDB4MS5hZWQ1NDdkYmVlNGQwZDg2ODBkMDgxM2QxZTRlMjFkMHAtMSwKLSAgICAweDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3MgotICAgIC0weDEuYWVkNTQ3ZGJlZTRkMGQ4NjgwZDA4MTNkMWU0ZTIxZDBwLTEsCi0gICAgLTB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDczCi0gICAgMHgxLjZhMDllNmVjYjQxZmRkN2U2ODE4NzJjODU0ODg3MDE5cC0xLAotICAgIDB4MS45MjFmYjZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDc0Ci0gICAgLTB4MS42YTA5ZTZlY2I0MWZkZDdlNjgxODcyYzg1NDg4NzAxOXAtMSwKLSAgICAtMHgxLjkyMWZiNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwNzUKLSAgICAweDEuMDAwMDAxZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNiwKLSAgICAweDEuMDAwMDAycC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDc2Ci0gICAgLTB4MS4wMDAwMDFmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI2LAotICAgIC0weDEuMDAwMDAycC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDc3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCi0gICAgMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA3OAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKLSAgICAtMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA3OQotICAgIDB4MS5mZmZmZmJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAotICAgIDB4MS5mZmZmZmNwLTEyNwotICB9LAotICB7IC8vIEVudHJ5IDEwODAKLSAgICAtMHgxLmZmZmZmYmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xMjcsCi0gICAgLTB4MS5mZmZmZmNwLTEyNwotICB9LAotICB7IC8vIEVudHJ5IDEwODEKLSAgICAweDEuZmZmZmY3ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTEyNywKLSAgICAweDEuZmZmZmY4cC0xMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDgyCi0gICAgLTB4MS5mZmZmZjdmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZnAtMTI3LAotICAgIC0weDEuZmZmZmY4cC0xMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDgzCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmcC0xNDksCi0gICAgMHgxLnAtMTQ4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA4NAotICAgIC0weDEuZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZwLTE0OSwKLSAgICAtMHgxLnAtMTQ4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA4NQotICAgIDAuMGYsCi0gICAgMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA4NgotICAgIC0wLjBmLAotICAgIC0weDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDg3Ci0gICAgMC4wLAotICAgIDAuMGYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDg4Ci0gICAgLTAuMCwKLSAgICAtMC4wZgotICB9LAotfTsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCi0KLVRFU1QobWF0aF9zaW5mLCBzaW5mX2ludGVsKSB7Ci0jaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemVvZihnX3NpbmZfaW50ZWxfZGF0YSkvc2l6ZW9mKHNpbmZfaW50ZWxfZGF0YV90KTsgaSsrKSB7Ci0gICAgRVhQRUNUX0ZMT0FUX0VRKGdfc2luZl9pbnRlbF9kYXRhW2ldLmV4cGVjdGVkLCBzaW5mKGdfc2luZl9pbnRlbF9kYXRhW2ldLmNhbGxfZGF0YSkpIDw8ICJGYWlsZWQgb24gZWxlbWVudCAiIDw8IGk7Ci0gIH0KLSNlbHNlIC8vIF9fQklPTklDX18KLSAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy4iOwotI2VuZGlmIC8vIF9fQklPTklDX18KLX0KZGlmZiAtLWdpdCBhL3Rlc3RzL21hdGhfdGFuX3Rlc3QuY3BwIGIvdGVzdHMvbWF0aF90YW5fdGVzdC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY4NjIwMTkuLjAwMDAwMDAKLS0tIGEvdGVzdHMvbWF0aF90YW5fdGVzdC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw1MjAzICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAotICoKLSAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOwotICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgotICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0Ci0gKgotICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKLSAqCi0gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCi0gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAotICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCi0gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCi0gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KLSAqLwotCi0jaW5jbHVkZSA8bWF0aC5oPgotCi0jaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KLQotI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLXR5cGVkZWYgc3RydWN0IHsKLSAgZG91YmxlIGV4cGVjdGVkOwotICBkb3VibGUgY2FsbF9kYXRhOwotfSB0YW5faW50ZWxfZGF0YV90OwotCi1zdGF0aWMgdGFuX2ludGVsX2RhdGFfdCBnX3Rhbl9pbnRlbF9kYXRhW10gPSB7Ci0gIHsgLy8gRW50cnkgMAotICAgIDB4MS41MDc4Y2ViZmY5YzcyODAwMDAwMDAwMDAwMDAyNGRmOHAtNSwKLSAgICAweDEuNTA0ODZiMmY4NzAxNHAtNQotICB9LAotICB7IC8vIEVudHJ5IDEKLSAgICAtMHgxLjUwNzhjZWJmZjljNzI4MDAwMDAwMDAwMDAwMDI0ZGY4cC01LAotICAgIC0weDEuNTA0ODZiMmY4NzAxNHAtNQotICB9LAotICB7IC8vIEVudHJ5IDIKLSAgICAweDEuNTM4OWU2ZGY0MTk3OGZmZmZmZmZmZmZmZmZjNjFmNTRwLTQsCi0gICAgMHgxLjUyYzM5ZWYwNzBjYWRwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzCi0gICAgLTB4MS41Mzg5ZTZkZjQxOTc4ZmZmZmZmZmZmZmZmZmM2MWY1NHAtNCwKLSAgICAtMHgxLjUyYzM5ZWYwNzBjYWRwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0Ci0gICAgMHgxLmE5MzNmZTE3NmIzNzUwMDAwMDAwMDAwMDAwMGE0MDY1cC0zLAotICAgIDB4MS5hMzNmMzJhYzVjZWI1cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNQotICAgIC0weDEuYTkzM2ZlMTc2YjM3NTAwMDAwMDAwMDAwMDAwYTQwNjVwLTMsCi0gICAgLTB4MS5hMzNmMzJhYzVjZWI1cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNgotICAgIDB4MS5mYWM3MWNkMzRlZWE2ODAwMDAwMDAwMDAwMDlhMGMxMHAtMiwKLSAgICAweDEuZDY5NmJmYTk4OGRiOXAtMgotICB9LAotICB7IC8vIEVudHJ5IDcKLSAgICAtMHgxLmZhYzcxY2QzNGVlYTY4MDAwMDAwMDAwMDAwOWEwYzEwcC0yLAotICAgIC0weDEuZDY5NmJmYTk4OGRiOXAtMgotICB9LAotICB7IC8vIEVudHJ5IDgKLSAgICAweDEuN2JhNDlmNzM5ODI5ZWZmZmZmZmZmZmZmZmZlN2U5YmVwLTEsCi0gICAgMHgxLjQ2YWMzNzIyNDM1MzZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5Ci0gICAgLTB4MS43YmE0OWY3Mzk4MjllZmZmZmZmZmZmZmZmZmU3ZTliZXAtMSwKLSAgICAtMHgxLjQ2YWMzNzIyNDM1MzZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMAotICAgIC0weDEucC0xMDc0LAotICAgIC0weDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDExCi0gICAgMHgxLnAtMTA3NCwKLSAgICAweDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDEyCi0gICAgLTB4MS44ZjA0ODgzMjE0NGI3MDAyMWNjZDdhNTI0NmNiMGIyMHAwLAotICAgIC0weDEuMDAxODBwMAotICB9LAotICB7IC8vIEVudHJ5IDEzCi0gICAgMHgxLjhmMDQ4ODMyMTQ0YjcwMDIxY2NkN2E1MjQ2Y2IwYjIwcDAsCi0gICAgMHgxLjAwMTgwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNAotICAgIC0weDEuOGU4ODRiMjQzMTNhZTgwMmRiNDc4OTlmYWQxNWE2YzZwMCwKLSAgICAtMHgxLjA5MGNjYTE4YTU1NjVwMgotICB9LAotICB7IC8vIEVudHJ5IDE1Ci0gICAgMHgxLjhlODg0YjI0MzEzYWU4MDJkYjQ3ODk5ZmFkMTVhNmM2cDAsCi0gICAgMHgxLjA5MGNjYTE4YTU1NjVwMgotICB9LAotICB7IC8vIEVudHJ5IDE2Ci0gICAgLTB4MS5jYTE4NjU0YjM1Njk3Mjk2N2E0ZjFlODQwNGI5Zjk3MnAwLAotICAgIC0weDEuMGZhYTc2NTBkZjE0NHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTcKLSAgICAweDEuY2ExODY1NGIzNTY5NzI5NjdhNGYxZTg0MDRiOWY5NzJwMCwKLSAgICAweDEuMGZhYTc2NTBkZjE0NHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTgKLSAgICAtMHgxLmU1MmZhZmEyMmVmMTQ4MWQ0MzdlN2VkMzJjYmEwM2IxcC0yLAotICAgIC0weDEuMTgwMDAwMDAwMDA0MHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTkKLSAgICAweDEuZTUyZmFmYTIyZWYxNDgxZDQzN2U3ZWQzMmNiYTAzYjFwLTIsCi0gICAgMHgxLjE4MDAwMDAwMDAwNDBwNQotICB9LAotICB7IC8vIEVudHJ5IDIwCi0gICAgLTB4MS5hM2NhNDIxZGMzMGYxYzU3NjBhMWFlMDczOTZmZWMzM3AtMywKLSAgICAtMHgxLjQwMDA1MjdhY2EzODhwOTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMQotICAgIDB4MS5hM2NhNDIxZGMzMGYxYzU3NjBhMWFlMDczOTZmZWMzM3AtMywKLSAgICAweDEuNDAwMDUyN2FjYTM4OHA5OQotICB9LAotICB7IC8vIEVudHJ5IDIyCi0gICAgMHgxLjFmM2I3ZDE5Nzg2MDk4MDBhMTYyOGUxZGY5NTU4ZGY2cDEsCi0gICAgLTB4MS40ODZjMzYzNDc1MWVjcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMwotICAgIC0weDEuMWYzYjdkMTk3ODYwOTgwMGExNjI4ZTFkZjk1NThkZjZwMSwKLSAgICAweDEuNDg2YzM2MzQ3NTFlY3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQKLSAgICAtMHgxLjdlYjg3MzM0M2ZhN2FiNWQ5ZWY5YTc4YWZkMzNkNTAxcC0xLAotICAgIC0weDEuNDhhNzE4MDBiNTcxM3AtMQotICB9LAotICB7IC8vIEVudHJ5IDI1Ci0gICAgMHgxLjdlYjg3MzM0M2ZhN2FiNWQ5ZWY5YTc4YWZkMzNkNTAxcC0xLAotICAgIDB4MS40OGE3MTgwMGI1NzEzcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYKLSAgICAweDEuYmUwNzE1NzJmNjRlODgwNDdjMzkzOWJhNDY2MjZhMjVwLTEsCi0gICAgLTB4MS40OWFmMDMxNGVlYTNjcDI5OQotICB9LAotICB7IC8vIEVudHJ5IDI3Ci0gICAgLTB4MS5iZTA3MTU3MmY2NGU4ODA0N2MzOTM5YmE0NjYyNmEyNXAtMSwKLSAgICAweDEuNDlhZjAzMTRlZWEzY3AyOTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOAotICAgIDB4MS5mZmJiMjY0N2Y1N2ExODFiZDEyOTZmYWYzM2MwNGUzZXAtMSwKLSAgICAtMHgxLjVmZTAwYzgxNGZmZDZwMgotICB9LAotICB7IC8vIEVudHJ5IDI5Ci0gICAgLTB4MS5mZmJiMjY0N2Y1N2ExODFiZDEyOTZmYWYzM2MwNGUzZXAtMSwKLSAgICAweDEuNWZlMDBjODE0ZmZkNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAKLSAgICAtMHgxLmE4ZWIxNDJiMmY0Mjc1NmU2ZGVkZmYwOTI2N2E2MmM2cC0xLAotICAgIC0weDEuNjJhYzI0MWY3OTQzOXAtMQotICB9LAotICB7IC8vIEVudHJ5IDMxCi0gICAgMHgxLmE4ZWIxNDJiMmY0Mjc1NmU2ZGVkZmYwOTI2N2E2MmM2cC0xLAotICAgIDB4MS42MmFjMjQxZjc5NDM5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIKLSAgICAtMHgxLjdkMWQzNTU5ZGRhYzg4NWVlMzA2MzJjNzYwOTk4YzhlcC00LAotICAgIC0weDEuN2MwNTFiNDc2Y2E4ZHAtNAotICB9LAotICB7IC8vIEVudHJ5IDMzCi0gICAgMHgxLjdkMWQzNTU5ZGRhYzg4NWVlMzA2MzJjNzYwOTk4YzhlcC00LAotICAgIDB4MS43YzA1MWI0NzZjYThkcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzQKLSAgICAtMHgxLjBlMWQwMzA1YjdiNzI3ZmYxOTNkOWQwYjhlYWZmMTgxcDIsCi0gICAgLTB4MS43ZTQzYzg4MDA3NGM2cDk5NgotICB9LAotICB7IC8vIEVudHJ5IDM1Ci0gICAgMHgxLjBlMWQwMzA1YjdiNzI3ZmYxOTNkOWQwYjhlYWZmMTgxcDIsCi0gICAgMHgxLjdlNDNjODgwMDc0YzZwOTk2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzYKLSAgICAtMHgxLjgxMmJkZmUwMjQ2YmJmMmE3YWI2NDc3YTVjYmIzNTJicC00LAotICAgIC0weDEuODAwYWMzNjMzOThjNHAtNAotICB9LAotICB7IC8vIEVudHJ5IDM3Ci0gICAgMHgxLjgxMmJkZmUwMjQ2YmJmMmE3YWI2NDc3YTVjYmIzNTJicC00LAotICAgIDB4MS44MDBhYzM2MzM5OGM0cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzgKLSAgICAtMHgxLjg1MGU1NTQ0YjBjNzk3YjM2MDM0Yzk4ZTE2ZjNmYWZicC00LAotICAgIC0weDEuODNlNDZhZWRiZmYzNnAtNAotICB9LAotICB7IC8vIEVudHJ5IDM5Ci0gICAgMHgxLjg1MGU1NTQ0YjBjNzk3YjM2MDM0Yzk4ZTE2ZjNmYWZicC00LAotICAgIDB4MS44M2U0NmFlZGJmZjM2cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDAKLSAgICAweDEuZTZiNWQ5MWJiYTkzMzdmYzBjZWI2ODZjNjBjZDI5YmRwLTIsCi0gICAgLTB4MS44M2VjZjQyZTkyNjVhcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MQotICAgIC0weDEuZTZiNWQ5MWJiYTkzMzdmYzBjZWI2ODZjNjBjZDI5YmRwLTIsCi0gICAgMHgxLjgzZWNmNDJlOTI2NWFwMwotICB9LAotICB7IC8vIEVudHJ5IDQyCi0gICAgLTB4MS5mMzY4OGJjMjU5NGUyMDEwMjU3M2NmZjQ4MTkwYWMyOHAtMSwKLSAgICAtMHgxLjhiY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDQzCi0gICAgMHgxLmYzNjg4YmMyNTk0ZTIwMTAyNTczY2ZmNDgxOTBhYzI4cC0xLAotICAgIDB4MS44YmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NAotICAgIDB4MS5lYzBkMGZhY2RkMDhiNzczYTFkOTM0ODRlMmQ2NmM0NXAtMiwKLSAgICAtMHgxLjhkMmZmZmZmZmZmZDFwOQotICB9LAotICB7IC8vIEVudHJ5IDQ1Ci0gICAgLTB4MS5lYzBkMGZhY2RkMDhiNzczYTFkOTM0ODRlMmQ2NmM0NXAtMiwKLSAgICAweDEuOGQyZmZmZmZmZmZkMXA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDYKLSAgICAweDEuZWMwMzM2ZDUzOTI1OTc2ODliNjQwYmYwNDkyMjczMzhwLTIsCi0gICAgLTB4MS44ZDMwMDBmZmZmZmQxcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NwotICAgIC0weDEuZWMwMzM2ZDUzOTI1OTc2ODliNjQwYmYwNDkyMjczMzhwLTIsCi0gICAgMHgxLjhkMzAwMGZmZmZmZDFwOQotICB9LAotICB7IC8vIEVudHJ5IDQ4Ci0gICAgLTB4MS5mODA5M2EwMTcwMjFmODFjMDFjMTMxNDc1ZTUwZTQ5YnAtMSwKLSAgICAtMHgxLmJhZWVlNmY2ZmE1MzhwNgotICB9LAotICB7IC8vIEVudHJ5IDQ5Ci0gICAgMHgxLmY4MDkzYTAxNzAyMWY4MWMwMWMxMzE0NzVlNTBlNDlicC0xLAotICAgIDB4MS5iYWVlZTZmNmZhNTM4cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MAotICAgIDB4MS5kZWFmMzQ5OTRiN2U3N2ZkNTJhNDA4ZjBjNjc3ZWFlMXAzLAotICAgIC0weDEuYzY4NjdlMDc0NTVlYXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNTEKLSAgICAtMHgxLmRlYWYzNDk5NGI3ZTc3ZmQ1MmE0MDhmMGM2NzdlYWUxcDMsCi0gICAgMHgxLmM2ODY3ZTA3NDU1ZWFwMwotICB9LAotICB7IC8vIEVudHJ5IDUyCi0gICAgLTB4MS5mMjlhYTg3ZDRlMWRkODFiN2I2OWFiZTk3OTBlZTBhYnAtMSwKLSAgICAtMHgxLmQyN2ZmZmZmZmUwcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MwotICAgIDB4MS5mMjlhYTg3ZDRlMWRkODFiN2I2OWFiZTk3OTBlZTBhYnAtMSwKLSAgICAweDEuZDI3ZmZmZmZmZTBwNwotICB9LAotICB7IC8vIEVudHJ5IDU0Ci0gICAgMHgxLjc2MmZiNDdhMTkyNTk3ZmZmZmZmZWVlZGIyNmZiOTc4cC0zLAotICAgIC0weDEuZjBkZjM4MDI5YzllZnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUKLSAgICAtMHgxLjc2MmZiNDdhMTkyNTk3ZmZmZmZmZWVlZGIyNmZiOTc4cC0zLAotICAgIDB4MS5mMGRmMzgwMjljOWVmcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NgotICAgIC0weDEuOGViMjNlZjIxMjZiYjdmZmZkMTUzYzdmZjkwZTlmNmNwMCwKLSAgICAtMHgxLmZmZmZmYzAwMDBmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NwotICAgIDB4MS44ZWIyM2VmMjEyNmJiN2ZmZmQxNTNjN2ZmOTBlOWY2Y3AwLAotICAgIDB4MS5mZmZmZmMwMDAwZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgKLSAgICAtMHgxLmQyOTlkMjg1YmYwMTg0MjNmYmMxNGVmYzAwZWQ1Nzk5cC0yLAotICAgIC0weDEuZmZmZmZmZmZmZmZmY3AxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgNTkKLSAgICAweDEuZDI5OWQyODViZjAxODQyM2ZiYzE0ZWZjMDBlZDU3OTlwLTIsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmNwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDYwCi0gICAgMHgxLnAtMTA3NCwKLSAgICAweDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDYxCi0gICAgLTB4MS5wLTEwNzQsCi0gICAgLTB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjIKLSAgICAtMHgxLjgyYmVlNTcyZTJhYzhjNzZkNjkwOWM2NmIyODJlOTYycC02LAotICAgIDB4MS4wcDY0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjMKLSAgICAweDEuODJiZWU1NzJlMmFjOGM3NmQ2OTA5YzY2YjI4MmU5NjJwLTYsCi0gICAgLTB4MS4wcDY0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjQKLSAgICAweDEuZjUzYThkMDVhZmNmNmM0YmYyZTFlNTIwOGIzNGQ1YzZwNCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXA1MQotICB9LAotICB7IC8vIEVudHJ5IDY1Ci0gICAgLTB4MS5mNTNhOGQwNWFmY2Y2YzRiZjJlMWU1MjA4YjM0ZDVjNnA0LAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXA1MQotICB9LAotICB7IC8vIEVudHJ5IDY2Ci0gICAgLTB4MS42YjM3MWRmNTk4MGNkM2RiMzY3NjhlMzYwNDZhNGE4MXAtMSwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAxMDE3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjcKLSAgICAweDEuNmIzNzFkZjU5ODBjZDNkYjM2NzY4ZTM2MDQ2YTRhODFwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcDEwMTcKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OAotICAgIC0weDEuYjMyZTc4ZjQ5YTBjODNjN2Y2MGEzZGMzZWY4ZWNmMWZwMiwKLSAgICAweDEuMDAwMDAwMDAwMDAwM3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkKLSAgICAweDEuYjMyZTc4ZjQ5YTBjODNjN2Y2MGEzZGMzZWY4ZWNmMWZwMiwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDNwMwotICB9LAotICB7IC8vIEVudHJ5IDcwCi0gICAgMHgxLjk4YWZiZDI0MjY0YmMzYTlkMTgzODA3NGEzZGFhNWU1cC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAzcDIxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzEKLSAgICAtMHgxLjk4YWZiZDI0MjY0YmMzYTlkMTgzODA3NGEzZGFhNWU1cC0xLAotICAgIC0weDEuMDAwMDAwMDAwMDAwM3AyMQotICB9LAotICB7IC8vIEVudHJ5IDcyCi0gICAgMHgxLmI2NjdhMmFiZTM2YzI4MDMxNWM2MmExZjk3NGU3NjExcDAsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDNwNTExCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMKLSAgICAtMHgxLmI2NjdhMmFiZTM2YzI4MDMxNWM2MmExZjk3NGU3NjExcDAsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAzcDUxMQotICB9LAotICB7IC8vIEVudHJ5IDc0Ci0gICAgMHgxLjIwNGMyNmE0Mjc4NjFmZmVmYjczNzk2YmNmMWZkNzI0cC0yLAotICAgIDB4MS4wMDAwMDAwMDAwMDAzcDcxNgotICB9LAotICB7IC8vIEVudHJ5IDc1Ci0gICAgLTB4MS4yMDRjMjZhNDI3ODYxZmZlZmI3Mzc5NmJjZjFmZDcyNHAtMiwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDNwNzE2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzYKLSAgICAweDEuOTFjOGYyOTM4MjYyY2UyZTlhZDk5YWIxN2U0NmFiZDZwNCwKLSAgICAweDEuMDAwMDAwMDAwMDAwN3A4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzcKLSAgICAtMHgxLjkxYzhmMjkzODI2MmNlMmU5YWQ5OWFiMTdlNDZhYmQ2cDQsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDA3cDgKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OAotICAgIC0weDEuMjdmN2YwODgwMDMxZmU0MmVkMWQ1ZmVkYzQ5NmQxNGVwLTIsCi0gICAgMHgxLjAwMDAwMDAwMDAwMzhwMzgwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzkKLSAgICAweDEuMjdmN2YwODgwMDMxZmU0MmVkMWQ1ZmVkYzQ5NmQxNGVwLTIsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDM4cDM4MAotICB9LAotICB7IC8vIEVudHJ5IDgwCi0gICAgLTB4MS5kNjg5MGNjMzI3MTFkNGIwNDY5MDNhZDg4NTFhNDFiYnAtMywKLSAgICAweDEuMDAwMDAwMDAwMDExOHAzODAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MQotICAgIDB4MS5kNjg5MGNjMzI3MTFkNGIwNDY5MDNhZDg4NTFhNDFiYnAtMywKLSAgICAtMHgxLjAwMDAwMDAwMDAxMThwMzgwCi0gIH0sCi0gIHsgLy8gRW50cnkgODIKLSAgICAweDEuOWFmMGU2ZjcyZjkxMjdmZmZmYzAyMDBlYTdmNDA2ZjRwLTMsCi0gICAgMHgxLjAwMDAwMDAwMDA5MDhwNTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODMKLSAgICAtMHgxLjlhZjBlNmY3MmY5MTI3ZmZmZmMwMjAwZWE3ZjQwNmY0cC0zLAotICAgIC0weDEuMDAwMDAwMDAwMDkwOHA1MDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NAotICAgIDB4MS4xN2I0ZjViZjQ0MDk3ODAwMmQ2NmYxYmQzNzAzMjUzMnAtMSwKLSAgICAweDEuMDAwMDAwMDAwYzBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NQotICAgIC0weDEuMTdiNGY1YmY0NDA5NzgwMDJkNjZmMWJkMzcwMzI1MzJwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDBjMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDg2Ci0gICAgLTB4MS4xN2ViMjJlNGRiYTcyODAwZDJhMDAwNjk4MjYzZDU4MnAwLAotICAgIDB4MS4wMDAwMDAwMWNwNDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NwotICAgIDB4MS4xN2ViMjJlNGRiYTcyODAwZDJhMDAwNjk4MjYzZDU4MnAwLAotICAgIC0weDEuMDAwMDAwMDFjcDQwCi0gIH0sCi0gIHsgLy8gRW50cnkgODgKLSAgICAweDEuZjZmMDNjZTU2OTBhNmUzODgwYjk1ZmQ4YjJjODM2M2VwLTEsCi0gICAgMHgxLjAwMDAwMDFwMjUwCi0gIH0sCi0gIHsgLy8gRW50cnkgODkKLSAgICAtMHgxLmY2ZjAzY2U1NjkwYTZlMzg4MGI5NWZkOGIyYzgzNjNlcC0xLAotICAgIC0weDEuMDAwMDAwMXAyNTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MAotICAgIDB4MS5lMjNiNzgyODJhNzVkMGRkNmRhMzU2OTJkMTQyYmM2M3AtMSwKLSAgICAweDEuMDAwMDAwOTg4cDI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTEKLSAgICAtMHgxLmUyM2I3ODI4MmE3NWQwZGQ2ZGEzNTY5MmQxNDJiYzYzcC0xLAotICAgIC0weDEuMDAwMDAwOTg4cDI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTIKLSAgICAtMHgxLjk4MWI2NTdlMWNhMjcwMDlkODJkOGUxODMxNDI0MGI1cC0zLAotICAgIDB4MS4wMDAwMGMwcDQyOQotICB9LAotICB7IC8vIEVudHJ5IDkzCi0gICAgMHgxLjk4MWI2NTdlMWNhMjcwMDlkODJkOGUxODMxNDI0MGI1cC0zLAotICAgIC0weDEuMDAwMDBjMHA0MjkKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NAotICAgIC0weDEuNDU1YTIxODRmNGMzZGZmYjA5ODY5MTljZWNlNjgzYTRwLTEsCi0gICAgMHgxLjAwMDAwZmNwMTAwMAotICB9LAotICB7IC8vIEVudHJ5IDk1Ci0gICAgMHgxLjQ1NWEyMTg0ZjRjM2RmZmIwOTg2OTE5Y2VjZTY4M2E0cC0xLAotICAgIC0weDEuMDAwMDBmY3AxMDAwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTYKLSAgICAweDEuOGVlNjY5NjJmMjEwYzgwMDAwMDU2OGM3ZGFhZDNhMjhwMCwKLSAgICAweDEuMDAwZjM3MWI3YTAwNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTcKLSAgICAtMHgxLjhlZTY2OTYyZjIxMGM4MDAwMDA1NjhjN2RhYWQzYTI4cDAsCi0gICAgLTB4MS4wMDBmMzcxYjdhMDA2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OAotICAgIC0weDEuZWNkNzVjZjZkNDY2M2JlZTFjOTZmMDMxODRmYWUwODZwLTMsCi0gICAgMHgxLjAwMXAxNQotICB9LAotICB7IC8vIEVudHJ5IDk5Ci0gICAgMHgxLmVjZDc1Y2Y2ZDQ2NjNiZWUxYzk2ZjAzMTg0ZmFlMDg2cC0zLAotICAgIC0weDEuMDAxcDE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAwCi0gICAgMHgxLjE3ZDQyMDMzMjc3Y2M4MjQ0Y2NiNmU1MTU0NDgyMTA1cC0xLAotICAgIDB4MS4wMDE3ZmZmZmZmZmZkcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxCi0gICAgLTB4MS4xN2Q0MjAzMzI3N2NjODI0NGNjYjZlNTE1NDQ4MjEwNXAtMSwKLSAgICAtMHgxLjAwMTdmZmZmZmZmZmRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIKLSAgICAweDEuOGYwNDg4MzIxNDRiNzAwMjFjY2Q3YTUyNDZjYjBiMjBwMCwKLSAgICAweDEuMDAxODBwMAotICB9LAotICB7IC8vIEVudHJ5IDEwMwotICAgIC0weDEuOGYwNDg4MzIxNDRiNzAwMjFjY2Q3YTUyNDZjYjBiMjBwMCwKLSAgICAtMHgxLjAwMTgwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQKLSAgICAtMHgxLjE4MjczY2MzZTc2MzkwMDc0MzcwNDAyOGNmYjExNGE1cC0yLAotICAgIDB4MS4wMDFmZmZlcDUwMAotICB9LAotICB7IC8vIEVudHJ5IDEwNQotICAgIDB4MS4xODI3M2NjM2U3NjM5MDA3NDM3MDQwMjhjZmIxMTRhNXAtMiwKLSAgICAtMHgxLjAwMWZmZmVwNTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2Ci0gICAgLTB4MS5kOGY5MGNhZDMwNTQ2Y2U1YjgyNjhiMzMwY2U1MGE2ZnAtMiwKLSAgICAweDEuMDE4cDQwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3Ci0gICAgMHgxLmQ4ZjkwY2FkMzA1NDZjZTViODI2OGIzMzBjZTUwYTZmcC0yLAotICAgIC0weDEuMDE4cDQwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4Ci0gICAgMHgxLmIwNzllYTBkMTRhNGE3ZmZjMDRiZDZmYmY0NTFiYjM0cC0yLAotICAgIDB4MS4wMWI4YTQ4NGFjMGI2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDkKLSAgICAtMHgxLmIwNzllYTBkMTRhNGE3ZmZjMDRiZDZmYmY0NTFiYjM0cC0yLAotICAgIC0weDEuMDFiOGE0ODRhYzBiNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEwCi0gICAgLTB4MS5hNDBjMjYyZjZhYjk5N2ZlZjQzYmY1NGFmM2M1YTc2NXAtMSwKLSAgICAweDEuMDI2YWMwZWYzMmQ0MHAyOAotICB9LAotICB7IC8vIEVudHJ5IDExMQotICAgIDB4MS5hNDBjMjYyZjZhYjk5N2ZlZjQzYmY1NGFmM2M1YTc2NXAtMSwKLSAgICAtMHgxLjAyNmFjMGVmMzJkNDBwMjgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTIKLSAgICAweDEuMDNiOGMxZjMyOTY2NTdjNjUxYTEzZWI1YjEwMGZjNzhwLTQsCi0gICAgMHgxLjAzNWZkY2QwOGE1OTZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTMKLSAgICAtMHgxLjAzYjhjMWYzMjk2NjU3YzY1MWExM2ViNWIxMDBmYzc4cC00LAotICAgIC0weDEuMDM1ZmRjZDA4YTU5NnAtNAotICB9LAotICB7IC8vIEVudHJ5IDExNAotICAgIDB4MS4wNDQ5NzlkMTM0ZWQ5N2M3OGJmZTU4YTkwMDNiZmFjNXAtNCwKLSAgICAweDEuMDNmcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE1Ci0gICAgLTB4MS4wNDQ5NzlkMTM0ZWQ5N2M3OGJmZTU4YTkwMDNiZmFjNXAtNCwKLSAgICAtMHgxLjAzZnAtNAotICB9LAotICB7IC8vIEVudHJ5IDExNgotICAgIC0weDEuZTcxN2RlN2RhMmNlODMxMDY2YmFkMWRmNWU4OGEwMzBwMCwKLSAgICAweDEuMDcwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTcKLSAgICAweDEuZTcxN2RlN2RhMmNlODMxMDY2YmFkMWRmNWU4OGEwMzBwMCwKLSAgICAtMHgxLjA3MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE4Ci0gICAgLTB4MS44Yzg5NmY2MDdmZjUyYmJhZTg2ZjYzZTE5YTk4OGQyYnAtMSwKLSAgICAweDEuMDcwcDMwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE5Ci0gICAgMHgxLjhjODk2ZjYwN2ZmNTJiYmFlODZmNjNlMTlhOTg4ZDJicC0xLAotICAgIC0weDEuMDcwcDMwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwCi0gICAgMHgxLmZmZmZmZmZmZjVkODQ2YWY2ZjAxNzI2MmM5YzgxZGU0cC0xLAotICAgIDB4MS4wN2U0Y2VmNGNiYjBlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjEKLSAgICAtMHgxLmZmZmZmZmZmZjVkODQ2YWY2ZjAxNzI2MmM5YzgxZGU0cC0xLAotICAgIC0weDEuMDdlNGNlZjRjYmIwZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIyCi0gICAgMHgxLmI0NzZkMzJjMWI3NDU3ZmZmZjY2ZWRiM2Y3OGE3MDAzcDAsCi0gICAgMHgxLjBhNTNhNzhiMTNhYjJwMAotICB9LAotICB7IC8vIEVudHJ5IDEyMwotICAgIC0weDEuYjQ3NmQzMmMxYjc0NTdmZmZmNjZlZGIzZjc4YTcwMDNwMCwKLSAgICAtMHgxLjBhNTNhNzhiMTNhYjJwMAotICB9LAotICB7IC8vIEVudHJ5IDEyNAotICAgIDB4MS5mMmRmN2MwMmQyMGNkODFiMzMxMTdjMDA1NDVmN2E2YnAtMSwKLSAgICAweDEuMGFmYmMyNjhiOTg0OHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI1Ci0gICAgLTB4MS5mMmRmN2MwMmQyMGNkODFiMzMxMTdjMDA1NDVmN2E2YnAtMSwKLSAgICAtMHgxLjBhZmJjMjY4Yjk4NDhwNgotICB9LAotICB7IC8vIEVudHJ5IDEyNgotICAgIC0weDEuYjU3MWFmNTYyZjA4YTVhMDNkZDg0OTM5OTBiMjlkYjFwMCwKLSAgICAweDEuMGNkNWQ0MzViZWE2ZHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI3Ci0gICAgMHgxLmI1NzFhZjU2MmYwOGE1YTAzZGQ4NDkzOTkwYjI5ZGIxcDAsCi0gICAgLTB4MS4wY2Q1ZDQzNWJlYTZkcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjgKLSAgICAtMHgxLmFjNzNkMjkyMGE3OTU1MzM2YWIyYTM0MzZjNzdjMjc2cDAsCi0gICAgMHgxLjBlMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI5Ci0gICAgMHgxLmFjNzNkMjkyMGE3OTU1MzM2YWIyYTM0MzZjNzdjMjc2cDAsCi0gICAgLTB4MS4wZTBwMQotICB9LAotICB7IC8vIEVudHJ5IDEzMAotICAgIC0weDEuMTI2ZGNlOGFjN2M4MTgwMDBjZmNmM2RmMDY2YTRhMmRwLTEsCi0gICAgMHgxLjEwODYyMTA4NDIxMDhwNQotICB9LAotICB7IC8vIEVudHJ5IDEzMQotICAgIDB4MS4xMjZkY2U4YWM3YzgxODAwMGNmY2YzZGYwNjZhNGEyZHAtMSwKLSAgICAtMHgxLjEwODYyMTA4NDIxMDhwNQotICB9LAotICB7IC8vIEVudHJ5IDEzMgotICAgIC0weDEuOTY4MGMwMjYwMTA0NmNhNTA2YzBlM2Y3NDRkYjFkMGFwMCwKLSAgICAweDEuMTEwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzMKLSAgICAweDEuOTY4MGMwMjYwMTA0NmNhNTA2YzBlM2Y3NDRkYjFkMGFwMCwKLSAgICAtMHgxLjExMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM0Ci0gICAgMHgxLmQxZTcxNjkzNDQ2OWIyYmMwMmZhODM1YWUwMTQ5ZjU4cDAsCi0gICAgMHgxLjExOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM1Ci0gICAgLTB4MS5kMWU3MTY5MzQ0NjliMmJjMDJmYTgzNWFlMDE0OWY1OHAwLAotICAgIC0weDEuMTE4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzYKLSAgICAtMHgxLjZhYTczMTAxNDMwODM3ZmZmZmZlYmFhZmQ0NWY3ZWZhcC0xLAotICAgIDB4MS4xOWRmMzg5ZjM5ZTBhcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzcKLSAgICAweDEuNmFhNzMxMDE0MzA4MzdmZmZmZmViYWFmZDQ1ZjdlZmFwLTEsCi0gICAgLTB4MS4xOWRmMzg5ZjM5ZTBhcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzgKLSAgICAweDEuY2I5YTk5MjI3YmRjOTcyY2Q0MTQ1OTY5YzNkYzM4YzFwMSwKLSAgICAweDEuMWMzNTk4MjExMDEzYXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM5Ci0gICAgLTB4MS5jYjlhOTkyMjdiZGM5NzJjZDQxNDU5NjljM2RjMzhjMXAxLAotICAgIC0weDEuMWMzNTk4MjExMDEzYXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQwCi0gICAgLTB4MS5iYzEwOWMzZTYxNzI0NTBhNTMwOGI0YzZlYjI4OThjYXA3LAotICAgIDB4MS4xZDY1YWE0MjI0YzMwcDExOAotICB9LAotICB7IC8vIEVudHJ5IDE0MQotICAgIDB4MS5iYzEwOWMzZTYxNzI0NTBhNTMwOGI0YzZlYjI4OThjYXA3LAotICAgIC0weDEuMWQ2NWFhNDIyNGMzMHAxMTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDIKLSAgICAtMHgxLjA5YjM5M2Y0OGIyYzY3ZmZmZjNiZDU1OWM2MzI2ZTYwcC0xLAotICAgIDB4MS4xZTQ2NTgyNzJkYzZmcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDMKLSAgICAweDEuMDliMzkzZjQ4YjJjNjdmZmZmM2JkNTU5YzYzMjZlNjBwLTEsCi0gICAgLTB4MS4xZTQ2NTgyNzJkYzZmcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDQKLSAgICAweDEuMjAwMDAwMDAwMDA3OTgwMDAwMDAwMDNkODI2NjY2NjZwLTIyLAotICAgIDB4MS4ycC0yMgotICB9LAotICB7IC8vIEVudHJ5IDE0NQotICAgIC0weDEuMjAwMDAwMDAwMDA3OTgwMDAwMDAwMDNkODI2NjY2NjZwLTIyLAotICAgIC0weDEuMnAtMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDYKLSAgICAtMHgxLjAyYTMzNWIwMDcwN2E3ZmZmZmJlNDU1YWRhYjdlODE0cDAsCi0gICAgMHgxLjIxMjc0MDk2MjBjYWNwOTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDcKLSAgICAweDEuMDJhMzM1YjAwNzA3YTdmZmZmYmU0NTVhZGFiN2U4MTRwMCwKLSAgICAtMHgxLjIxMjc0MDk2MjBjYWNwOTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDgKLSAgICAweDEuMjUwOGI5YzEyNzNhYzAzNGMzYzc5YzQwODhlMmFjZmRwLTQsCi0gICAgMHgxLjI0ODkyMjQ4OTIyNDhwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDkKLSAgICAtMHgxLjI1MDhiOWMxMjczYWMwMzRjM2M3OWM0MDg4ZTJhY2ZkcC00LAotICAgIC0weDEuMjQ4OTIyNDg5MjI0OHAtNAotICB9LAotICB7IC8vIEVudHJ5IDE1MAotICAgIDB4MS5mZGVkNWY1M2QxMzJkMjZhODI0NGE2M2Y5YmNkZjE1M3AyLAotICAgIDB4MS4yYTUyZDExOWRhMDYxcDIzNwotICB9LAotICB7IC8vIEVudHJ5IDE1MQotICAgIC0weDEuZmRlZDVmNTNkMTMyZDI2YTgyNDRhNjNmOWJjZGYxNTNwMiwKLSAgICAtMHgxLjJhNTJkMTE5ZGEwNjFwMjM3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTUyCi0gICAgMHgxLjJkZTU2YTZlZjljNWQ3ZTljNzEwMzA0MDc1MzBmMWQ3cC00LAotICAgIDB4MS4yZDU5ZWJhYjhkYWU0cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTUzCi0gICAgLTB4MS4yZGU1NmE2ZWY5YzVkN2U5YzcxMDMwNDA3NTMwZjFkN3AtNCwKLSAgICAtMHgxLjJkNTllYmFiOGRhZTRwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTQKLSAgICAweDEuMzE2NjVlYjE5MWZiYTgwMGI3ZTcxNWZkMTE3MTZjOGNwLTQsCi0gICAgMHgxLjMwZDVmOGU1NGI2ZDhwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTUKLSAgICAtMHgxLjMxNjY1ZWIxOTFmYmE4MDBiN2U3MTVmZDExNzE2YzhjcC00LAotICAgIC0weDEuMzBkNWY4ZTU0YjZkOHAtNAotICB9LAotICB7IC8vIEVudHJ5IDE1NgotICAgIDB4MS4zY2MxZDRkMjhiZmQxN2ZkZWQ5YWU1MDQwNzU5MGYzZnAtMiwKLSAgICAweDEuMzMzMjc1ZDYzZWM1MHAtMgotICB9LAotICB7IC8vIEVudHJ5IDE1NwotICAgIC0weDEuM2NjMWQ0ZDI4YmZkMTdmZGVkOWFlNTA0MDc1OTBmM2ZwLTIsCi0gICAgLTB4MS4zMzMyNzVkNjNlYzUwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU4Ci0gICAgMHgxLjNjYzIzN2MwYzdkY2JmZmYxMDQ2YWQ5YTA2OGFmNTEwcC0yLAotICAgIDB4MS4zMzMyZDAyMGI2ZGE5cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU5Ci0gICAgLTB4MS4zY2MyMzdjMGM3ZGNiZmZmMTA0NmFkOWEwNjhhZjUxMHAtMiwKLSAgICAtMHgxLjMzMzJkMDIwYjZkYTlwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjAKLSAgICAweDEuNWU0NzJlMTY5OTlkZjAwMDAwZmMwNmVlNDc0ZmJmYzlwLTEsCi0gICAgMHgxLjMzMzMzMzQwMWU2NmJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjEKLSAgICAtMHgxLjVlNDcyZTE2OTk5ZGYwMDAwMGZjMDZlZTQ3NGZiZmM5cC0xLAotICAgIC0weDEuMzMzMzMzNDAxZTY2YnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE2MgotICAgIDB4MS5iNWVkMWMyMDgwYTk4N2ZjODRmMjZlYzk1OGIyYWM0N3AtMSwKLSAgICAweDEuMzhmMTM3Y2I5ZGJmY3A5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTYzCi0gICAgLTB4MS5iNWVkMWMyMDgwYTk4N2ZjODRmMjZlYzk1OGIyYWM0N3AtMSwKLSAgICAtMHgxLjM4ZjEzN2NiOWRiZmNwOQotICB9LAotICB7IC8vIEVudHJ5IDE2NAotICAgIDB4MS4wMWFhMjJlMjEzM2QzN2ZmZmZmMmEwYzA4MDkzMzU4ZXAxLAotICAgIDB4MS4zOWEzODNmM2ZhMDAzcDg1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY1Ci0gICAgLTB4MS4wMWFhMjJlMjEzM2QzN2ZmZmZmMmEwYzA4MDkzMzU4ZXAxLAotICAgIC0weDEuMzlhMzgzZjNmYTAwM3A4NQotICB9LAotICB7IC8vIEVudHJ5IDE2NgotICAgIDB4MS5mZmZmZmZmZmZmNTgyMzYzMjI4MTlkMDYwZWI2N2MzY3AtMSwKLSAgICAweDEuM2EyOGM1OWQ1NDMxMXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY3Ci0gICAgLTB4MS5mZmZmZmZmZmZmNTgyMzYzMjI4MTlkMDYwZWI2N2MzY3AtMSwKLSAgICAtMHgxLjNhMjhjNTlkNTQzMTFwNAotICB9LAotICB7IC8vIEVudHJ5IDE2OAotICAgIDB4MS43MTY2Njg5ZDQ4MDNlODNkMmI2YjFkMTVmNWFjYTI2ZXAtMSwKLSAgICAweDEuNDAwMDAwMDAwM2ZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE2OQotICAgIC0weDEuNzE2NjY4OWQ0ODAzZTgzZDJiNmIxZDE1ZjVhY2EyNmVwLTEsCi0gICAgLTB4MS40MDAwMDAwMDAzZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTcwCi0gICAgLTB4MS5mZjdkMjdiMzdlYmEwODE5MTk5ZTUzM2NjNTAxNmYwZHAtMSwKLSAgICAweDEuNDA3MjRhNDQ3MTRjZnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTcxCi0gICAgMHgxLmZmN2QyN2IzN2ViYTA4MTkxOTllNTMzY2M1MDE2ZjBkcC0xLAotICAgIC0weDEuNDA3MjRhNDQ3MTRjZnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTcyCi0gICAgMHgxLjQ1M2E3ZDI5ZGFkYWQ3YzBkZGE3OGE3Mzk4YmUwODczcC00LAotICAgIDB4MS40NDhjMmQ2ZTFlMWFmcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTczCi0gICAgLTB4MS40NTNhN2QyOWRhZGFkN2MwZGRhNzhhNzM5OGJlMDg3M3AtNCwKLSAgICAtMHgxLjQ0OGMyZDZlMWUxYWZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzQKLSAgICAtMHgxLmE1MGY3NjAxNDEzZTUzYWIxYzVhMmYwZDY3NmMzOTdjcDAsCi0gICAgMHgxLjQ3OGZjMDhwNDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzUKLSAgICAweDEuYTUwZjc2MDE0MTNlNTNhYjFjNWEyZjBkNjc2YzM5N2NwMCwKLSAgICAtMHgxLjQ3OGZjMDhwNDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzYKLSAgICAtMHgxLmE5OTkxYWNiNzYzNmJlZWU1YjFhNWQzNWE4YTg5OTE3cC00LAotICAgIDB4MS40ZTkzYmVlNzJiNTY1cDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTc3Ci0gICAgMHgxLmE5OTkxYWNiNzYzNmJlZWU1YjFhNWQzNWE4YTg5OTE3cC00LAotICAgIC0weDEuNGU5M2JlZTcyYjU2NXA2MgotICB9LAotICB7IC8vIEVudHJ5IDE3OAotICAgIDB4MS4yOTUyMzk2OTQ1OTQ3YjcyNmViZjAyNWE4YmEwNzA5M3AxLAotICAgIDB4MS40ZjBmMzA4cDQ4OAotICB9LAotICB7IC8vIEVudHJ5IDE3OQotICAgIC0weDEuMjk1MjM5Njk0NTk0N2I3MjZlYmYwMjVhOGJhMDcwOTNwMSwKLSAgICAtMHgxLjRmMGYzMDhwNDg4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTgwCi0gICAgMHgxLjUwNzhjZWJmZjljNzI4MDAwMDAwMDAwMDAwMDI0ZGY4cC01LAotICAgIDB4MS41MDQ4NmIyZjg3MDE0cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTgxCi0gICAgLTB4MS41MDc4Y2ViZmY5YzcyODAwMDAwMDAwMDAwMDAyNGRmOHAtNSwKLSAgICAtMHgxLjUwNDg2YjJmODcwMTRwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODIKLSAgICAtMHgxLjFjOTI5YjZlZGU5ZWU4MDAwMDQwYTNkMWNhOTBhOWY0cC0xLAotICAgIDB4MS41MTMwZDU1MmYxMDM2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODMKLSAgICAweDEuMWM5MjliNmVkZTllZTgwMDAwNDBhM2QxY2E5MGE5ZjRwLTEsCi0gICAgLTB4MS41MTMwZDU1MmYxMDM2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODQKLSAgICAweDEuMmFiMzE4OWUyZDRhZTQxYzFhZmYzY2MzMGNmZWRkMzBwMSwKLSAgICAweDEuNTJmMDBlMHA3OTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODUKLSAgICAtMHgxLjJhYjMxODllMmQ0YWU0MWMxYWZmM2NjMzBjZmVkZDMwcDEsCi0gICAgLTB4MS41MmYwMGUwcDc5MwotICB9LAotICB7IC8vIEVudHJ5IDE4NgotICAgIC0weDEuN2QyZTYzZmI5ODg5MDdhMTA5MDkxZDEzMGY5ZjIwZDFwMCwKLSAgICAweDEuNTM3MTY4NGU1ZmIzNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg3Ci0gICAgMHgxLjdkMmU2M2ZiOTg4OTA3YTEwOTA5MWQxMzBmOWYyMGQxcDAsCi0gICAgLTB4MS41MzcxNjg0ZTVmYjM0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODgKLSAgICAtMHgxLmY5ZjRmMGRhNGRlNTQ0OTkyODNhOGFjMmY1NWY3MjU4cC0xLAotICAgIDB4MS41NGVmMjIwODk1NnAyMzkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODkKLSAgICAweDEuZjlmNGYwZGE0ZGU1NDQ5OTI4M2E4YWMyZjU1ZjcyNThwLTEsCi0gICAgLTB4MS41NGVmMjIwODk1NnAyMzkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTAKLSAgICAweDEuMTQ4MzA3MzE0MmU2MDgwMDhmODg0OWRhZjVmOGM1OGRwMiwKLSAgICAweDEuNTdlNTkwYWYwOTAxNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkxCi0gICAgLTB4MS4xNDgzMDczMTQyZTYwODAwOGY4ODQ5ZGFmNWY4YzU4ZHAyLAotICAgIC0weDEuNTdlNTkwYWYwOTAxNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTkyCi0gICAgMHgxLjk5NzJkNDAyMWM5NzE1NjM5MzYwNTVkOGMxZWFhZTBhcC0xLAotICAgIDB4MS41OTZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTMKLSAgICAtMHgxLjk5NzJkNDAyMWM5NzE1NjM5MzYwNTVkOGMxZWFhZTBhcC0xLAotICAgIC0weDEuNTk2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk0Ci0gICAgLTB4MS5lNTAxZmZkM2E2OGMzODMzNmQ5NzdmNjM0MzI2YTM0MnAtMiwKLSAgICAweDEuNTk4MTI5Mzc4M2UxZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk1Ci0gICAgMHgxLmU1MDFmZmQzYTY4YzM4MzM2ZDk3N2Y2MzQzMjZhMzQycC0yLAotICAgIC0weDEuNTk4MTI5Mzc4M2UxZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTk2Ci0gICAgMHgxLjE2MDRjYzNkZmM0MTgxYzNlOTQ4MTU1ODQ2N2E4NWZlcC0xLAotICAgIDB4MS41YmVhMDEwcDQ2OAotICB9LAotICB7IC8vIEVudHJ5IDE5NwotICAgIC0weDEuMTYwNGNjM2RmYzQxODFjM2U5NDgxNTU4NDY3YTg1ZmVwLTEsCi0gICAgLTB4MS41YmVhMDEwcDQ2OAotICB9LAotICB7IC8vIEVudHJ5IDE5OAotICAgIC0weDEuZjc2Y2E1MGJiYmFlYjAxMmJlYWRlMmEzMjhlNWZjMDNwLTEsCi0gICAgMHgxLjYwNjYxYzE5Njk2NjZwMgotICB9LAotICB7IC8vIEVudHJ5IDE5OQotICAgIDB4MS5mNzZjYTUwYmJiYWViMDEyYmVhZGUyYTMyOGU1ZmMwM3AtMSwKLSAgICAtMHgxLjYwNjYxYzE5Njk2NjZwMgotICB9LAotICB7IC8vIEVudHJ5IDIwMAotICAgIDB4MS5jZDhiNzNjOTQzMGZlZjc1ZGM3MTBmZmRmZTA5MWI0MnAwLAotICAgIDB4MS42MmM1YTg1MGExNDJhcDU5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjAxCi0gICAgLTB4MS5jZDhiNzNjOTQzMGZlZjc1ZGM3MTBmZmRmZTA5MWI0MnAwLAotICAgIC0weDEuNjJjNWE4NTBhMTQyYXA1OQotICB9LAotICB7IC8vIEVudHJ5IDIwMgotICAgIDB4MS4zYWNjZmQ0NTNlZTY3Mjk2MDg4Mzc4ZjU4MmVhY2IwMnAwLAotICAgIDB4MS42NGVmNDM4cDE0MgotICB9LAotICB7IC8vIEVudHJ5IDIwMwotICAgIC0weDEuM2FjY2ZkNDUzZWU2NzI5NjA4ODM3OGY1ODJlYWNiMDJwMCwKLSAgICAtMHgxLjY0ZWY0MzhwMTQyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA0Ci0gICAgLTB4MS5hY2Q5MzAyZDcyZGU0YmQ4ZGRhOGY1NjUwYjc3ZTczMnAtMSwKLSAgICAweDEuNjU4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDUKLSAgICAweDEuYWNkOTMwMmQ3MmRlNGJkOGRkYThmNTY1MGI3N2U3MzJwLTEsCi0gICAgLTB4MS42NThwMgotICB9LAotICB7IC8vIEVudHJ5IDIwNgotICAgIDB4MS5mMDA0Zjg3NWMyZTczODE1OWM3ZDc1YTM5ODBjYWZkN3AtMSwKLSAgICAweDEuNjYwM2M2NWQzNDhkMnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjA3Ci0gICAgLTB4MS5mMDA0Zjg3NWMyZTczODE1OWM3ZDc1YTM5ODBjYWZkN3AtMSwKLSAgICAtMHgxLjY2MDNjNjVkMzQ4ZDJwNQotICB9LAotICB7IC8vIEVudHJ5IDIwOAotICAgIDB4MS5mNTM0OTZlNmQ3ZjcxODFhNjJmZWM0YzhhNzEwOTAwZXAtMSwKLSAgICAweDEuNjYwZTZiZjJlMDkyYXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjA5Ci0gICAgLTB4MS5mNTM0OTZlNmQ3ZjcxODFhNjJmZWM0YzhhNzEwOTAwZXAtMSwKLSAgICAtMHgxLjY2MGU2YmYyZTA5MmFwNQotICB9LAotICB7IC8vIEVudHJ5IDIxMAotICAgIDB4MS5iNjRlZTI0ZjAxMTljODAwZDVkMGJiMTBhMzlhY2E0ZXAtMSwKLSAgICAweDEuNmE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjExCi0gICAgLTB4MS5iNjRlZTI0ZjAxMTljODAwZDVkMGJiMTBhMzlhY2E0ZXAtMSwKLSAgICAtMHgxLjZhOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDIxMgotICAgIC0weDEuZDliYTlhNzk3NTYzNWEzYWNjMzI0ZTZhZWRhNDUxMzNwNjAsCi0gICAgMHgxLjZhYzViMjYyY2ExZmZwODQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjEzCi0gICAgMHgxLmQ5YmE5YTc5NzU2MzVhM2FjYzMyNGU2YWVkYTQ1MTMzcDYwLAotICAgIC0weDEuNmFjNWIyNjJjYTFmZnA4NDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTQKLSAgICAweDEuYjZmNTU3Yjk5OWUyMmUwZGIxMGE5MmI5MDhlODc3ZjZwLTEsCi0gICAgMHgxLjZhZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDIxNQotICAgIC0weDEuYjZmNTU3Yjk5OWUyMmUwZGIxMGE5MmI5MDhlODc3ZjZwLTEsCi0gICAgLTB4MS42YWVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTYKLSAgICAweDEuYzFlMWQ1YzRjMGYwNzdmYzg3MWQ0YmQwYTAzYzY0MzFwLTEsCi0gICAgMHgxLjZjZGIzNmNkYjM2YzlwMjM5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjE3Ci0gICAgLTB4MS5jMWUxZDVjNGMwZjA3N2ZjODcxZDRiZDBhMDNjNjQzMXAtMSwKLSAgICAtMHgxLjZjZGIzNmNkYjM2YzlwMjM5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjE4Ci0gICAgMHgxLjk1YmNlNGY1Nzg2OTc4MDc4YzMxMDIxMGRjZWQ2ZjNmcC0xLAotICAgIDB4MS42ZjFhZjE2MTIyNzBhcDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTkKLSAgICAtMHgxLjk1YmNlNGY1Nzg2OTc4MDc4YzMxMDIxMGRjZWQ2ZjNmcC0xLAotICAgIC0weDEuNmYxYWYxNjEyMjcwYXA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjIwCi0gICAgMHgxLjcxMWU4ZjVmZmZiYTFmNTk5NTk1ZmJhYWM1YjcwZTBicC00LAotICAgIDB4MS43MDJwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjEKLSAgICAtMHgxLjcxMWU4ZjVmZmZiYTFmNTk5NTk1ZmJhYWM1YjcwZTBicC00LAotICAgIC0weDEuNzAycC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjIyCi0gICAgMHgxLmZiNTg5OGYyOWJiMjU3ZmRhNmYyYmVkZmM0OTFhYmFlcDIsCi0gICAgMHgxLjcyMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjIzCi0gICAgLTB4MS5mYjU4OThmMjliYjI1N2ZkYTZmMmJlZGZjNDkxYWJhZXAyLAotICAgIC0weDEuNzIwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjQKLSAgICAtMHgxLmZmOWI3NzEyODRkMjMyOTBjZGQ4MzcxN2NjOTA1NzczcDEsCi0gICAgMHgxLjczNDhjMzQ3ZGRjMjBwMjM5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjI1Ci0gICAgMHgxLmZmOWI3NzEyODRkMjMyOTBjZGQ4MzcxN2NjOTA1NzczcDEsCi0gICAgLTB4MS43MzQ4YzM0N2RkYzIwcDIzOQotICB9LAotICB7IC8vIEVudHJ5IDIyNgotICAgIDB4MS5mNzJkNDdhMDA4MGUyZDNkMDQwODYzZDU2ZGJiNTY3ZXAtMiwKLSAgICAweDEuNzM5Y2U3MzljZTczOHAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjcKLSAgICAtMHgxLmY3MmQ0N2EwMDgwZTJkM2QwNDA4NjNkNTZkYmI1NjdlcC0yLAotICAgIC0weDEuNzM5Y2U3MzljZTczOHAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjgKLSAgICAweDEuNzY0NDFlN2Y4ZWE1ZjgwMDAwMDFkMWM1Yzg0ZjEwNGVwLTQsCi0gICAgMHgxLjc1M2FjYzNkM2ZmMzVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjkKLSAgICAtMHgxLjc2NDQxZTdmOGVhNWY4MDAwMDAxZDFjNWM4NGYxMDRlcC00LAotICAgIC0weDEuNzUzYWNjM2QzZmYzNXAtNAotICB9LAotICB7IC8vIEVudHJ5IDIzMAotICAgIDB4MS5jZTNmNjQyZTE1YWYzYzkyMWRkNzEyOWRiNWUzOTM0MnAtMSwKLSAgICAweDEuNzdmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDIzMQotICAgIC0weDEuY2UzZjY0MmUxNWFmM2M5MjFkZDcxMjlkYjVlMzkzNDJwLTEsCi0gICAgLTB4MS43N2ZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjMyCi0gICAgMHgxLmY0MjUwMDJhNTQ4ZWI0MDU0NTA5NzBhMzUzZDMwN2Y3cDQyLAotICAgIDB4MS43OGZkYjllZmZlYTI2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzMKLSAgICAtMHgxLmY0MjUwMDJhNTQ4ZWI0MDU0NTA5NzBhMzUzZDMwN2Y3cDQyLAotICAgIC0weDEuNzhmZGI5ZWZmZWEyNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM0Ci0gICAgLTB4MS5kYmM4MGRlN2RkMDQyYTkzNzFlMWI0NTcxOGU1MWJhYnAtMSwKLSAgICAweDEuN2E1Zjc0NjA3ZTg1MXAxOQotICB9LAotICB7IC8vIEVudHJ5IDIzNQotICAgIDB4MS5kYmM4MGRlN2RkMDQyYTkzNzFlMWI0NTcxOGU1MWJhYnAtMSwKLSAgICAtMHgxLjdhNWY3NDYwN2U4NTFwMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzYKLSAgICAweDEuN2IzYmIzZDBiM2NhNDJmMTMyMDc4NDI4OTllMGJhNzFwNDIsCi0gICAgMHgxLjdmN2VmNzdlODNmMWFwMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzcKLSAgICAtMHgxLjdiM2JiM2QwYjNjYTQyZjEzMjA3ODQyODk5ZTBiYTcxcDQyLAotICAgIC0weDEuN2Y3ZWY3N2U4M2YxYXAxOQotICB9LAotICB7IC8vIEVudHJ5IDIzOAotICAgIDB4MS5lN2YwNWI3MWNkMmQwZmI0ZGY2YTQzMzc1Y2Q4ZjY3MHAzMywKLSAgICAweDEuN2Y3ZjEwYTA3ZjQ1ZXAyMAotICB9LAotICB7IC8vIEVudHJ5IDIzOQotICAgIC0weDEuZTdmMDViNzFjZDJkMGZiNGRmNmE0MzM3NWNkOGY2NzBwMzMsCi0gICAgLTB4MS43ZjdmMTBhMDdmNDVlcDIwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQwCi0gICAgMHgxLjgwMDAwMDAwMDAwMDM4MDAwMDAwMDAwMDA3MzMzMzMzcC0yNSwKLSAgICAweDEuN2ZmZmZmZmZmZmZmZnAtMjUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDEKLSAgICAtMHgxLjgwMDAwMDAwMDAwMDM4MDAwMDAwMDAwMDA3MzMzMzMzcC0yNSwKLSAgICAtMHgxLjdmZmZmZmZmZmZmZmZwLTI1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQyCi0gICAgMHgxLjgwMDAwMDAwMDAwMDY4MDAwMDAwMDAwMDIyMzMzMzMzcC0yNSwKLSAgICAweDEuODAwMDAwMDAwMDAwMnAtMjUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDMKLSAgICAtMHgxLjgwMDAwMDAwMDAwMDY4MDAwMDAwMDAwMDIyMzMzMzMzcC0yNSwKLSAgICAtMHgxLjgwMDAwMDAwMDAwMDJwLTI1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQ0Ci0gICAgMHgxLjI0MjQ1YWY0Y2Q5OTRlOWIzYmJhOTkyZDEwMTYzNjVicC01MiwKLSAgICAweDEuODFhZTBkZmZhM2IzM3A5NTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDUKLSAgICAtMHgxLjI0MjQ1YWY0Y2Q5OTRlOWIzYmJhOTkyZDEwMTYzNjVicC01MiwKLSAgICAtMHgxLjgxYWUwZGZmYTNiMzNwOTU5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQ2Ci0gICAgMHgxLmQ3MjI2MWQ5OGUyNmI3ZmZhMzAwZDg5ZmQ0NmZiNzc1cC0xLAotICAgIDB4MS44NDZiZDdhNGRjZTU1cDY5OAotICB9LAotICB7IC8vIEVudHJ5IDI0NwotICAgIC0weDEuZDcyMjYxZDk4ZTI2YjdmZmEzMDBkODlmZDQ2ZmI3NzVwLTEsCi0gICAgLTB4MS44NDZiZDdhNGRjZTU1cDY5OAotICB9LAotICB7IC8vIEVudHJ5IDI0OAotICAgIDB4MS40MmQ4YTFiYTQ0MWFkNDAyOGFjN2YxYTZhNWVlMGM1NHAxLAotICAgIDB4MS44NzIwNTg4cDM5MgotICB9LAotICB7IC8vIEVudHJ5IDI0OQotICAgIC0weDEuNDJkOGExYmE0NDFhZDQwMjhhYzdmMWE2YTVlZTBjNTRwMSwKLSAgICAtMHgxLjg3MjA1ODhwMzkyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUwCi0gICAgMHgxLmVhN2I0NDRjZDc5OGQ3ZmFlZWZmMDkzZjFkOTk3MWFkcC0xLAotICAgIDB4MS44NzIyYTY3ZWExNGFjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUxCi0gICAgLTB4MS5lYTdiNDQ0Y2Q3OThkN2ZhZWVmZjA5M2YxZDk5NzFhZHAtMSwKLSAgICAtMHgxLjg3MjJhNjdlYTE0YWNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTIKLSAgICAtMHgxLmM3ZGM3ZjA4ZGJiYTA4OWYyZDdlODkwMDIxYmVkY2I3cC0xLAotICAgIDB4MS44OTkzNmM4ODI4ZDM4cDI5OQotICB9LAotICB7IC8vIEVudHJ5IDI1MwotICAgIDB4MS5jN2RjN2YwOGRiYmEwODlmMmQ3ZTg5MDAyMWJlZGNiN3AtMSwKLSAgICAtMHgxLjg5OTM2Yzg4MjhkMzhwMjk5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjU0Ci0gICAgMHgxLjU2OTY1M2UzMTliYmE4MDAwMDBjODM2MzJlNDNhYmRlcDEsCi0gICAgMHgxLjhhNjkxMDZmYjk3OThwNgotICB9LAotICB7IC8vIEVudHJ5IDI1NQotICAgIC0weDEuNTY5NjUzZTMxOWJiYTgwMDAwMGM4MzYzMmU0M2FiZGVwMSwKLSAgICAtMHgxLjhhNjkxMDZmYjk3OThwNgotICB9LAotICB7IC8vIEVudHJ5IDI1NgotICAgIDB4MS5mMmRiMjE0NjlmM2Q1ODE5ZmE5YmE4ZGNjYmZmOTE0YXAtMSwKLSAgICAweDEuOGI3NzdlMWQyMzA4Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDI1NwotICAgIC0weDEuZjJkYjIxNDY5ZjNkNTgxOWZhOWJhOGRjY2JmZjkxNGFwLTEsCi0gICAgLTB4MS44Yjc3N2UxZDIzMDhjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU4Ci0gICAgMHgxLmYzNjg4YmMyNTk0ZTIwMTAyNTczY2ZmNDgxOTBhYzI4cC0xLAotICAgIDB4MS44YmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTkKLSAgICAtMHgxLmYzNjg4YmMyNTk0ZTIwMTAyNTczY2ZmNDgxOTBhYzI4cC0xLAotICAgIC0weDEuOGJjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjYwCi0gICAgMHgxLjhkM2EyNTQ0NTY2ZGY3YjU1OWI0YWM0OGUxMmVhYzcxcC00LAotICAgIDB4MS44YmZkMjI3NGQ4NTFhcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjYxCi0gICAgLTB4MS44ZDNhMjU0NDU2NmRmN2I1NTliNGFjNDhlMTJlYWM3MXAtNCwKLSAgICAtMHgxLjhiZmQyMjc0ZDg1MWFwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjIKLSAgICAweDEuZjQ1NzVjYzRlNDc3ZjAxOWRhYjVkMDEwM2FhZjkxY2ZwLTEsCi0gICAgMHgxLjhjM2E0NTAwNzFkZDlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjMKLSAgICAtMHgxLmY0NTc1Y2M0ZTQ3N2YwMTlkYWI1ZDAxMDNhYWY5MWNmcC0xLAotICAgIC0weDEuOGMzYTQ1MDA3MWRkOXAtMQotICB9LAotICB7IC8vIEVudHJ5IDI2NAotICAgIC0weDEuMWUwOWY2NmM0MjUwYjk0ZTkwMzBjYWRkMDA4NTExNThwMTEsCi0gICAgMHgxLjhjYzBkZDJiMGY0YjhwMjAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjY1Ci0gICAgMHgxLjFlMDlmNjZjNDI1MGI5NGU5MDMwY2FkZDAwODUxMTU4cDExLAotICAgIC0weDEuOGNjMGRkMmIwZjRiOHAyMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjYKLSAgICAweDEuZjcxNDk2Y2I5MjFlNWE0ZDJmMzkwNDZhNjI4YjY1MDlwLTEsCi0gICAgMHgxLjhkYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDI2NwotICAgIC0weDEuZjcxNDk2Y2I5MjFlNWE0ZDJmMzkwNDZhNjI4YjY1MDlwLTEsCi0gICAgLTB4MS44ZGFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjgKLSAgICAweDEuZjcxYjRhNjU5MTE2OTgxOTQ3NmU2Yjc1OWM3YWFlNTJwLTEsCi0gICAgMHgxLjhkYTM2OGRhMzY4ZDhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjkKLSAgICAtMHgxLmY3MWI0YTY1OTExNjk4MTk0NzZlNmI3NTljN2FhZTUycC0xLAotICAgIC0weDEuOGRhMzY4ZGEzNjhkOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDI3MAotICAgIDB4MS5mZjliNjhjY2FkYjJmZjYyYzI2ODY0Mjg4ZWQ2YTRkZnAtMSwKLSAgICAweDEuOTFlZDY0Yjk3N2E5YXAtMQotICB9LAotICB7IC8vIEVudHJ5IDI3MQotICAgIC0weDEuZmY5YjY4Y2NhZGIyZmY2MmMyNjg2NDI4OGVkNmE0ZGZwLTEsCi0gICAgLTB4MS45MWVkNjRiOTc3YTlhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMjcyCi0gICAgMHgxLjAwMDAwMDAwMjkwNDg0Nzc5ZmE0OTFjNzI4YWVmOTQ1cDE4LAotICAgIDB4MS45MjFmNzU0NDQyZDE5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzMKLSAgICAtMHgxLjAwMDAwMDAwMjkwNDg0Nzc5ZmE0OTFjNzI4YWVmOTQ1cDE4LAotICAgIC0weDEuOTIxZjc1NDQ0MmQxOXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc0Ci0gICAgMHgxLmVlZjA2N2FmZDMyOGYzMTFjZTJjN2ExZjQyMGE1OTgzcDQ4LAotICAgIDB4MS45MjFmYjU0NDQyZDEwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzUKLSAgICAtMHgxLmVlZjA2N2FmZDMyOGYzMTFjZTJjN2ExZjQyMGE1OTgzcDQ4LAotICAgIC0weDEuOTIxZmI1NDQ0MmQxMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc2Ci0gICAgMHgxLjAwMDAwMDAwMDNhZjJmMjIzZWIxZTcwOWNiYTAwZWMzcC0xNywKLSAgICAweDEuOTIxZmY1NDQ0MmQxOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjc3Ci0gICAgLTB4MS4wMDAwMDAwMDAzYWYyZjIyM2ViMWU3MDljYmEwMGVjM3AtMTcsCi0gICAgLTB4MS45MjFmZjU0NDQyZDE4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzgKLSAgICAtMHgxLmI2NzcyY2I2NjdkYzE4N2I3ZDAxOWQxZDcyMzJjOWU3cDE3LAotICAgIDB4MS45MjJwMAotICB9LAotICB7IC8vIEVudHJ5IDI3OQotICAgIDB4MS5iNjc3MmNiNjY3ZGMxODdiN2QwMTlkMWQ3MjMyYzllN3AxNywKLSAgICAtMHgxLjkyMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgwCi0gICAgLTB4MS5mZmZmZmZmY2VlZWZlNzkxYmUyMDc0Nzc5ZmQxZGQ5ZXAtMSwKLSAgICAweDEuOTIyMDcxYzMxZmM5OXAyMAotICB9LAotICB7IC8vIEVudHJ5IDI4MQotICAgIDB4MS5mZmZmZmZmY2VlZWZlNzkxYmUyMDc0Nzc5ZmQxZGQ5ZXAtMSwKLSAgICAtMHgxLjkyMjA3MWMzMWZjOTlwMjAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODIKLSAgICAweDEuOWQ3YzEzNTRiYTZmNzgxYzhiMDQ0MDgwOTRmNDUyODRwLTMsCi0gICAgMHgxLjk3ZmZmZmZmZmZmZmZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODMKLSAgICAtMHgxLjlkN2MxMzU0YmE2Zjc4MWM4YjA0NDA4MDk0ZjQ1Mjg0cC0zLAotICAgIC0weDEuOTdmZmZmZmZmZmZmZnAtMwotICB9LAotICB7IC8vIEVudHJ5IDI4NAotICAgIDB4MS45YWY4ODc3YmI0NWU0N2ZmZmZlOTYxMDg0YjJjMGJlYXAtNCwKLSAgICAweDEuOTk5OTk5YTEwYTEzY3AtNAotICB9LAotICB7IC8vIEVudHJ5IDI4NQotICAgIC0weDEuOWFmODg3N2JiNDVlNDdmZmZmZTk2MTA4NGIyYzBiZWFwLTQsCi0gICAgLTB4MS45OTk5OTlhMTBhMTNjcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjg2Ci0gICAgLTB4MS5iNmNlMTI4NTg3Y2QwN2ZmZmY3NTdhYmRhMjk0YzE1MXA0LAotICAgIDB4MS45Yjc0NDQ2ZWQwNWRjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODcKLSAgICAweDEuYjZjZTEyODU4N2NkMDdmZmZmNzU3YWJkYTI5NGMxNTFwNCwKLSAgICAtMHgxLjliNzQ0NDZlZDA1ZGNwMAotICB9LAotICB7IC8vIEVudHJ5IDI4OAotICAgIDB4MS5mZjY1YWVmNTRjOGZjODA0Mjg0MTA3MWI0NWI2ZDdkOXAtMSwKLSAgICAweDEuOWVhZTQ5NGQyYjI3NXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjg5Ci0gICAgLTB4MS5mZjY1YWVmNTRjOGZjODA0Mjg0MTA3MWI0NWI2ZDdkOXAtMSwKLSAgICAtMHgxLjllYWU0OTRkMmIyNzVwNAotICB9LAotICB7IC8vIEVudHJ5IDI5MAotICAgIDB4MS42MTc3NmFhNDA3YTQzN2Y2MTdmY2FkYjE1YzdmNjFjMnAtMywKLSAgICAweDEuYTgwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTEKLSAgICAtMHgxLjYxNzc2YWE0MDdhNDM3ZjYxN2ZjYWRiMTVjN2Y2MWMycC0zLAotICAgIC0weDEuYTgwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTIKLSAgICAweDEuYjYwMDFkZTEzYWQ5NTgwMDczYWNiYTRhYTQyM2UyZDlwLTMsCi0gICAgMHgxLmFmOHAtMwotICB9LAotICB7IC8vIEVudHJ5IDI5MwotICAgIC0weDEuYjYwMDFkZTEzYWQ5NTgwMDczYWNiYTRhYTQyM2UyZDlwLTMsCi0gICAgLTB4MS5hZjhwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTQKLSAgICAweDEuYjVhMDUwM2FlMzU0YjdhMTZmN2M1MGY4YjNiZWYyY2FwLTQsCi0gICAgMHgxLmIzZjhlYTdiMWY5MWJwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTUKLSAgICAtMHgxLmI1YTA1MDNhZTM1NGI3YTE2ZjdjNTBmOGIzYmVmMmNhcC00LAotICAgIC0weDEuYjNmOGVhN2IxZjkxYnAtNAotICB9LAotICB7IC8vIEVudHJ5IDI5NgotICAgIDB4MS5iNWEwNTAzYWU0YzdiNzkyNTM3MzI3ZjQyNDVhYzZmYnAtNCwKLSAgICAweDEuYjNmOGVhN2IyMTAwOHAtNAotICB9LAotICB7IC8vIEVudHJ5IDI5NwotICAgIC0weDEuYjVhMDUwM2FlNGM3Yjc5MjUzNzMyN2Y0MjQ1YWM2ZmJwLTQsCi0gICAgLTB4MS5iM2Y4ZWE3YjIxMDA4cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjk4Ci0gICAgMHgxLjA1NzU4NGM0MjliM2E2ZWEwYTY1Y2FmZjk4NjM0NDkwcDU5LAotICAgIDB4MS5iOTUxZjE1NzJlYmE1cDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjk5Ci0gICAgLTB4MS4wNTc1ODRjNDI5YjNhNmVhMGE2NWNhZmY5ODYzNDQ5MHA1OSwKLSAgICAtMHgxLmI5NTFmMTU3MmViYTVwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDAKLSAgICAtMHgxLjlhMjgyZmExZmY3ZDk4MDM5YmUzYmY1YjM5Y2M2ZDg5cDIsCi0gICAgMHgxLmI5Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzAxCi0gICAgMHgxLjlhMjgyZmExZmY3ZDk4MDM5YmUzYmY1YjM5Y2M2ZDg5cDIsCi0gICAgLTB4MS5iOWNwMAotICB9LAotICB7IC8vIEVudHJ5IDMwMgotICAgIC0weDEuMDI3ZDE4NGFmYjE5ODRjYTFkMjFiMWFjOTMxMTE4ODdwLTUyLAotICAgIDB4MS5iYWI2MmVkNjU1MDE5cDk3MAotICB9LAotICB7IC8vIEVudHJ5IDMwMwotICAgIDB4MS4wMjdkMTg0YWZiMTk4NGNhMWQyMWIxYWM5MzExMTg4N3AtNTIsCi0gICAgLTB4MS5iYWI2MmVkNjU1MDE5cDk3MAotICB9LAotICB7IC8vIEVudHJ5IDMwNAotICAgIDB4MS5jYTZlZmRmODQ1ZDZjN2ZmZmViYWVhMWFmYmY3ZTk2MXAyLAotICAgIDB4MS5iZWExYjM1ZjNjYjZkcDg0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzA1Ci0gICAgLTB4MS5jYTZlZmRmODQ1ZDZjN2ZmZmViYWVhMWFmYmY3ZTk2MXAyLAotICAgIC0weDEuYmVhMWIzNWYzY2I2ZHA4NAotICB9LAotICB7IC8vIEVudHJ5IDMwNgotICAgIDB4MS5mZDg3YjM0NzQ3Yjc0NmI4YjY1N2NhYzc5N2MwODcwZHA0MiwKLSAgICAweDEuYzQ2M2FiZWNjYjI3YnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA3Ci0gICAgLTB4MS5mZDg3YjM0NzQ3Yjc0NmI4YjY1N2NhYzc5N2MwODcwZHA0MiwKLSAgICAtMHgxLmM0NjNhYmVjY2IyN2JwMwotICB9LAotICB7IC8vIEVudHJ5IDMwOAotICAgIDB4MS5mZmZmZmZmZmZmZmZiMDk0NTQxYTI0NjFlNzM0ZGFlZXAtMSwKLSAgICAweDEuYzQ2M2FiZWNjYjJiYnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzA5Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZiMDk0NTQxYTI0NjFlNzM0ZGFlZXAtMSwKLSAgICAtMHgxLmM0NjNhYmVjY2IyYmJwMgotICB9LAotICB7IC8vIEVudHJ5IDMxMAotICAgIDB4MS5mYjA1NzAyOWFjZmQxN2ZmZmZmYTVhYzgyMDRmMDgwM3AtMSwKLSAgICAweDEuYzZjYmUyNmI3YjQ1ZnA4NgotICB9LAotICB7IC8vIEVudHJ5IDMxMQotICAgIC0weDEuZmIwNTcwMjlhY2ZkMTdmZmZmZmE1YWM4MjA0ZjA4MDNwLTEsCi0gICAgLTB4MS5jNmNiZTI2YjdiNDVmcDg2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzEyCi0gICAgMHgxLmM4ZDVhMDhiZTQwYzIwcC0xMTcsCi0gICAgMHgxLmM4ZDVhMDhiZTQwYzJwLTExNwotICB9LAotICB7IC8vIEVudHJ5IDMxMwotICAgIC0weDEuYzhkNWEwOGJlNDBjMjBwLTExNywKLSAgICAtMHgxLmM4ZDVhMDhiZTQwYzJwLTExNwotICB9LAotICB7IC8vIEVudHJ5IDMxNAotICAgIDB4MS5lNWRmZmQ3ZjA2Y2IzNzU0OTMzY2VhNTc4ZGVhYWQzNnAtMiwKLSAgICAweDEuY2FkNGU5ODI3YTJiZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE1Ci0gICAgLTB4MS5lNWRmZmQ3ZjA2Y2IzNzU0OTMzY2VhNTc4ZGVhYWQzNnAtMiwKLSAgICAtMHgxLmNhZDRlOTgyN2EyYmVwMQotICB9LAotICB7IC8vIEVudHJ5IDMxNgotICAgIDB4MS5lNmJlMzc4YjFiNGViNzY1OGU4NWFkMGFmMzM4MzZhOXAtMiwKLSAgICAweDEuY2FlYjk0MGU0Yjk5N3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE3Ci0gICAgLTB4MS5lNmJlMzc4YjFiNGViNzY1OGU4NWFkMGFmMzM4MzZhOXAtMiwKLSAgICAtMHgxLmNhZWI5NDBlNGI5OTdwMQotICB9LAotICB7IC8vIEVudHJ5IDMxOAotICAgIDB4MS5lNzJiZDAyNWExZmQ1NzY1Zjg1MzQ2OWE4NWFlN2I3ZHAtMiwKLSAgICAweDEuY2FmNmMwNGVjZDAzNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE5Ci0gICAgLTB4MS5lNzJiZDAyNWExZmQ1NzY1Zjg1MzQ2OWE4NWFlN2I3ZHAtMiwKLSAgICAtMHgxLmNhZjZjMDRlY2QwMzRwMQotICB9LAotICB7IC8vIEVudHJ5IDMyMAotICAgIDB4MS5lODQ0YjNkN2NiZTQzNzVjMjhlMzIyZGE2YmE1ZDdkOHAtMiwKLSAgICAweDEuY2IxMzVlYzFjOTU2ZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIxCi0gICAgLTB4MS5lODQ0YjNkN2NiZTQzNzVjMjhlMzIyZGE2YmE1ZDdkOHAtMiwKLSAgICAtMHgxLmNiMTM1ZWMxYzk1NmVwMQotICB9LAotICB7IC8vIEVudHJ5IDMyMgotICAgIDB4MS5kZDM4YTFmMWQyODliNjE3MzExNTcyMWJjNWMxZmM3MnAtNTQsCi0gICAgMHgxLmNiNDRlODZiYzE5MmJwNjQ4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzIzCi0gICAgLTB4MS5kZDM4YTFmMWQyODliNjE3MzExNTcyMWJjNWMxZmM3MnAtNTQsCi0gICAgLTB4MS5jYjQ0ZTg2YmMxOTJicDY0OAotICB9LAotICB7IC8vIEVudHJ5IDMyNAotICAgIDB4MS5kZDM4YTFmMWQyODliNjE3MzExNTcyMWJjNjI5YTIzZHAtNTMsCi0gICAgMHgxLmNiNDRlODZiYzE5MmJwNjQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzI1Ci0gICAgLTB4MS5kZDM4YTFmMWQyODliNjE3MzExNTcyMWJjNjI5YTIzZHAtNTMsCi0gICAgLTB4MS5jYjQ0ZTg2YmMxOTJicDY0OQotICB9LAotICB7IC8vIEVudHJ5IDMyNgotICAgIC0weDEuZmZmNmU3NTUzMjBlZDc4ZGI0ZDZlZmY0YmY2YTZiMTBwMSwKLSAgICAweDEuY2I2MWFmZWRiMmIzY3AxMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjcKLSAgICAweDEuZmZmNmU3NTUzMjBlZDc4ZGI0ZDZlZmY0YmY2YTZiMTBwMSwKLSAgICAtMHgxLmNiNjFhZmVkYjJiM2NwMTE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzI4Ci0gICAgMHgxLmNjZGY0YWE2YzIyOGY4MDQxYmU5MWExNDJlMGUyNzFicC03LAotICAgIDB4MS5jY2Q3ODM0YmEzODA0cC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzI5Ci0gICAgLTB4MS5jY2RmNGFhNmMyMjhmODA0MWJlOTFhMTQyZTBlMjcxYnAtNywKLSAgICAtMHgxLmNjZDc4MzRiYTM4MDRwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzAKLSAgICAweDEuY2VlNTAwMTZmYzJkODgzNzI4NmJmNmZkNDMxYTdiM2JwLTQsCi0gICAgMHgxLmNjZjA1OTlkYTQ3OGVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzEKLSAgICAtMHgxLmNlZTUwMDE2ZmMyZDg4MzcyODZiZjZmZDQzMWE3YjNicC00LAotICAgIC0weDEuY2NmMDU5OWRhNDc4ZXAtNAotICB9LAotICB7IC8vIEVudHJ5IDMzMgotICAgIDB4MS40NGNmM2VlOGE3NWE4N2NjNjY1N2U2MmY5NGE5M2U2ZnAwLAotICAgIDB4MS5jZThwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzMKLSAgICAtMHgxLjQ0Y2YzZWU4YTc1YTg3Y2M2NjU3ZTYyZjk0YTkzZTZmcDAsCi0gICAgLTB4MS5jZThwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzQKLSAgICAweDEuNDVhYTEyZmY5ODE1MjgwMDAwMWZiZDg3OTlhOTZhMmNwMCwKLSAgICAweDEuY2YyNzZjOWNiOWFmMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDMzNQotICAgIC0weDEuNDVhYTEyZmY5ODE1MjgwMDAwMWZiZDg3OTlhOTZhMmNwMCwKLSAgICAtMHgxLmNmMjc2YzljYjlhZjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzYKLSAgICAweDEuZjliYzc0NGY2MWUwZWQ4NTM4MjllMmY3NjViOGExMmNwLTQsCi0gICAgMHgxLmQyZTk3OTE0OGE0NThwNjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzcKLSAgICAtMHgxLmY5YmM3NDRmNjFlMGVkODUzODI5ZTJmNzY1YjhhMTJjcC00LAotICAgIC0weDEuZDJlOTc5MTQ4YTQ1OHA2MQotICB9LAotICB7IC8vIEVudHJ5IDMzOAotICAgIDB4MS42ZTcwZjllZGJkMWEwODJhZTZmOTBjNjJlZjRmMzFkZHAtMiwKLSAgICAweDEuZDZiNWFkNmI1YWI2OHAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzkKLSAgICAtMHgxLjZlNzBmOWVkYmQxYTA4MmFlNmY5MGM2MmVmNGYzMWRkcC0yLAotICAgIC0weDEuZDZiNWFkNmI1YWI2OHAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDAKLSAgICAweDEuMTNlOWM2YTM0OGU0YTdiZWRlODI3MjQ1MDUyNjlmNjhwMiwKLSAgICAweDEuZDk2ZTA1OHA0ODgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDEKLSAgICAtMHgxLjEzZTljNmEzNDhlNGE3YmVkZTgyNzI0NTA1MjY5ZjY4cDIsCi0gICAgLTB4MS5kOTZlMDU4cDQ4OAotICB9LAotICB7IC8vIEVudHJ5IDM0MgotICAgIC0weDEuZDM1NTQ2M2MyMzAzNTgyZmEzMWEzMjM4ZGNiZTU2MGVwLTUsCi0gICAgMHgxLmRkMTBmMjUxNzFiYzlwNQotICB9LAotICB7IC8vIEVudHJ5IDM0MwotICAgIDB4MS5kMzU1NDYzYzIzMDM1ODJmYTMxYTMyMzhkY2JlNTYwZXAtNSwKLSAgICAtMHgxLmRkMTBmMjUxNzFiYzlwNQotICB9LAotICB7IC8vIEVudHJ5IDM0NAotICAgIDB4MS5kZGYyMWViZjZmYzkyN2ZmZmZmYmIzZWNjMGNmZjY2ZXAtNiwKLSAgICAweDEuZGRjZjZlNTY2OTZhNHAtNgotICB9LAotICB7IC8vIEVudHJ5IDM0NQotICAgIC0weDEuZGRmMjFlYmY2ZmM5MjdmZmZmZmJiM2VjYzBjZmY2NmVwLTYsCi0gICAgLTB4MS5kZGNmNmU1NjY5NmE0cC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzQ2Ci0gICAgMHgxLjVjYjBiZmMxNTU4MDA3ZTBjNWQwOTVmNzI5ZTM0MjdicDAsCi0gICAgMHgxLmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDcKLSAgICAtMHgxLjVjYjBiZmMxNTU4MDA3ZTBjNWQwOTVmNzI5ZTM0MjdicDAsCi0gICAgLTB4MS5lcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ4Ci0gICAgLTB4MS45N2I1ZThhZTlhMjFjN2Y0ODIxOTIyYmM1YjM3ODJjY3AxLAotICAgIDB4MS5lcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDkKLSAgICAweDEuOTdiNWU4YWU5YTIxYzdmNDgyMTkyMmJjNWIzNzgyY2NwMSwKLSAgICAtMHgxLmVwMAotICB9LAotICB7IC8vIEVudHJ5IDM1MAotICAgIC0weDEuZjhiZjY4ZDBjMjNmMzc0MWVmYjhiZDk5ODUzYmFlOGFwMCwKLSAgICAweDEuZTc3OWRlNzc5ZGU3MXAxMTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTEKLSAgICAweDEuZjhiZjY4ZDBjMjNmMzc0MWVmYjhiZDk5ODUzYmFlOGFwMCwKLSAgICAtMHgxLmU3NzlkZTc3OWRlNzFwMTE4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzUyCi0gICAgLTB4MS5mZmZmZmZmZmZkNzFjZjkzNGVmM2U1ZGY0MDA4NjY1ZnAtMSwKLSAgICAweDEuZWIwNTY3YmVkMWY3MXAxMgotICB9LAotICB7IC8vIEVudHJ5IDM1MwotICAgIDB4MS5mZmZmZmZmZmZkNzFjZjkzNGVmM2U1ZGY0MDA4NjY1ZnAtMSwKLSAgICAtMHgxLmViMDU2N2JlZDFmNzFwMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTQKLSAgICAweDEuZWU3ODhkMWNjNzk1NDg0MTg3ODQ3M2FhNWQyNjE1YTVwLTQsCi0gICAgMHgxLmVjMTZmMzBhMzRmYmNwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTUKLSAgICAtMHgxLmVlNzg4ZDFjYzc5NTQ4NDE4Nzg0NzNhYTVkMjYxNWE1cC00LAotICAgIC0weDEuZWMxNmYzMGEzNGZiY3AtNAotICB9LAotICB7IC8vIEVudHJ5IDM1NgotICAgIDB4MS5lZmRhZDkzOGI0YjBlODM0MDE0YmY1NmE3MDg0Njc1ZHAtNCwKLSAgICAweDEuZWQ3NDI0YmEyYWE0ZXAtNAotICB9LAotICB7IC8vIEVudHJ5IDM1NwotICAgIC0weDEuZWZkYWQ5MzhiNGIwZTgzNDAxNGJmNTZhNzA4NDY3NWRwLTQsCi0gICAgLTB4MS5lZDc0MjRiYTJhYTRlcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzU4Ci0gICAgMHgxLmRhMzQ3NjA3OTQ4ZjQ3ZmZlZjIxNjk3MTYxZmQzY2RkcC0xLAotICAgIDB4MS5lZTllZGE1ODkwMzkwcDQ5OQotICB9LAotICB7IC8vIEVudHJ5IDM1OQotICAgIC0weDEuZGEzNDc2MDc5NDhmNDdmZmVmMjE2OTcxNjFmZDNjZGRwLTEsCi0gICAgLTB4MS5lZTllZGE1ODkwMzkwcDQ5OQotICB9LAotICB7IC8vIEVudHJ5IDM2MAotICAgIDB4MS5mNjgyZDI3YThiZTg3Zjc4M2Q0OTQ4NTdiNmYzMGUwNXAwLAotICAgIDB4MS5mNGZmMGQ3YjNhYzEwcDEwMAotICB9LAotICB7IC8vIEVudHJ5IDM2MQotICAgIC0weDEuZjY4MmQyN2E4YmU4N2Y3ODNkNDk0ODU3YjZmMzBlMDVwMCwKLSAgICAtMHgxLmY0ZmYwZDdiM2FjMTBwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzYyCi0gICAgLTB4MS5mZmQzNmE3NTNjZWQ5MDI3YzkzODQ1YWRkZTA0NjI0NnAtMSwKLSAgICAweDEuZjVhODE0YWZkNjlmNXAxMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjMKLSAgICAweDEuZmZkMzZhNzUzY2VkOTAyN2M5Mzg0NWFkZGUwNDYyNDZwLTEsCi0gICAgLTB4MS5mNWE4MTRhZmQ2OWY1cDExOQotICB9LAotICB7IC8vIEVudHJ5IDM2NAotICAgIC0weDEuMGZhNzcwMWQwNTliNTFkZTA1ZGY1OGFkZTI2YmVjNWNwLTksCi0gICAgMHgxLmY4ZmM4MjRkMjY5M2JwNjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjUKLSAgICAweDEuMGZhNzcwMWQwNTliNTFkZTA1ZGY1OGFkZTI2YmVjNWNwLTksCi0gICAgLTB4MS5mOGZjODI0ZDI2OTNicDYxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY2Ci0gICAgLTB4MS5hZmUzODc1YmQzYWZlODAxZjE0OWQwYTlhZDM2ZjQ1M3AtNCwKLSAgICAweDEuZjliZTZmOWJlNmY5OHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzY3Ci0gICAgMHgxLmFmZTM4NzViZDNhZmU4MDFmMTQ5ZDBhOWFkMzZmNDUzcC00LAotICAgIC0weDEuZjliZTZmOWJlNmY5OHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzY4Ci0gICAgMHgxLmZkMTAzMmU4MmRlYWI3YmFiYTk5YzkxM2RlZTEwYjlhcC00LAotICAgIDB4MS5mYTc3NWNkMjY0ZjQzcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzY5Ci0gICAgLTB4MS5mZDEwMzJlODJkZWFiN2JhYmE5OWM5MTNkZWUxMGI5YXAtNCwKLSAgICAtMHgxLmZhNzc1Y2QyNjRmNDNwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzAKLSAgICAweDEuZmVhOGM2N2RkNDZjYTgzY2E0OWFiOWVjZDAzNjA3MzlwLTQsCi0gICAgMHgxLmZjMDliNDc0MDJkODJwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzEKLSAgICAtMHgxLmZlYThjNjdkZDQ2Y2E4M2NhNDlhYjllY2QwMzYwNzM5cC00LAotICAgIC0weDEuZmMwOWI0NzQwMmQ4MnAtNAotICB9LAotICB7IC8vIEVudHJ5IDM3MgotICAgIC0weDEuOTAyMGNhZjE4YTg3NDM4MTI3YTg1ZDFmMGEzZDQyMDVwLTEsCi0gICAgMHgxLmZlZWZmZmZmZmZmYzZwOTk1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzczCi0gICAgMHgxLjkwMjBjYWYxOGE4NzQzODEyN2E4NWQxZjBhM2Q0MjA1cC0xLAotICAgIC0weDEuZmVlZmZmZmZmZmZjNnA5OTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzQKLSAgICAweDEuYWYxMzViZWIwZjI4MTdmYmE3NzIwNGE1YjFiNjc2NmJwMCwKLSAgICAweDEuZmYwMWZmZmZmZmZmZnA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzc1Ci0gICAgLTB4MS5hZjEzNWJlYjBmMjgxN2ZiYTc3MjA0YTViMWI2NzY2YnAwLAotICAgIC0weDEuZmYwMWZmZmZmZmZmZnA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzc2Ci0gICAgLTB4MS5mZDk3NTMyZWZkODliMjZiYzI5NGIyN2UwYTE5NTZiOXAzLAotICAgIDB4MS5mZjhmZmZmZmZmZmZmcDU0MAotICB9LAotICB7IC8vIEVudHJ5IDM3NwotICAgIDB4MS5mZDk3NTMyZWZkODliMjZiYzI5NGIyN2UwYTE5NTZiOXAzLAotICAgIC0weDEuZmY4ZmZmZmZmZmZmZnA1NDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzgKLSAgICAtMHgxLmNjMzJjYjkzMzgxODExMWU2ZGRmMDBjNWM3OWNiYzg4cC0xLAotICAgIDB4MS5mZjhmZmZmZmZmZmZmcDg3MAotICB9LAotICB7IC8vIEVudHJ5IDM3OQotICAgIDB4MS5jYzMyY2I5MzM4MTgxMTFlNmRkZjAwYzVjNzljYmM4OHAtMSwKLSAgICAtMHgxLmZmOGZmZmZmZmZmZmZwODcwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgwCi0gICAgLTB4MS44NjU5ZDNlMmI1MmI4ODA2NjhhYzhiNGI5ZmFlOTUzOHAtMSwKLSAgICAweDEuZmZjMTBwOQotICB9LAotICB7IC8vIEVudHJ5IDM4MQotICAgIDB4MS44NjU5ZDNlMmI1MmI4ODA2NjhhYzhiNGI5ZmFlOTUzOHAtMSwKLSAgICAtMHgxLmZmYzEwcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODIKLSAgICAtMHgxLmI2NjA2NmZiODEyZWUyN2RiYjYyM2ExYTEzNTNlMDYycC0yLAotICAgIDB4MS5mZmNmZmY4cDE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzgzCi0gICAgMHgxLmI2NjA2NmZiODEyZWUyN2RiYjYyM2ExYTEzNTNlMDYycC0yLAotICAgIC0weDEuZmZjZmZmOHAxOQotICB9LAotICB7IC8vIEVudHJ5IDM4NAotICAgIC0weDEuNTIwZWJkMzJlMWQ4ZWNkMzhiZmNkNmE1N2UxYTM3N2ZwMSwKLSAgICAweDEuZmZjZmZmOHAzNjUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODUKLSAgICAweDEuNTIwZWJkMzJlMWQ4ZWNkMzhiZmNkNmE1N2UxYTM3N2ZwMSwKLSAgICAtMHgxLmZmY2ZmZjhwMzY1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzg2Ci0gICAgMHgxLjQ4OTgxM2MyNGQxM2IwMGFiNjk2MjdkODU4YmI2M2I1cDAsCi0gICAgMHgxLmZmY2ZmZmZmZmZmNmNwNzIwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg3Ci0gICAgLTB4MS40ODk4MTNjMjRkMTNiMDBhYjY5NjI3ZDg1OGJiNjNiNXAwLAotICAgIC0weDEuZmZjZmZmZmZmZmY2Y3A3MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODgKLSAgICAweDEuNDEzZTYzZjdkZDYwN2VmM2M4NDIyYTQ5MGFmMmRjMzBwMCwKLSAgICAweDEuZmZjZmZmZmZmZmZmOXAzMjAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODkKLSAgICAtMHgxLjQxM2U2M2Y3ZGQ2MDdlZjNjODQyMmE0OTBhZjJkYzMwcDAsCi0gICAgLTB4MS5mZmNmZmZmZmZmZmY5cDMyMAotICB9LAotICB7IC8vIEVudHJ5IDM5MAotICAgIC0weDEuZmMzOTI4YTM5YjY1Mjg0ZDRjN2VmM2I2YTJlZGM4ZjFwLTIsCi0gICAgMHgxLmZmY2ZmZmZmZmZmZmZwOTkwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkxCi0gICAgMHgxLmZjMzkyOGEzOWI2NTI4NGQ0YzdlZjNiNmEyZWRjOGYxcC0yLAotICAgIC0weDEuZmZjZmZmZmZmZmZmZnA5OTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTIKLSAgICAtMHgxLjlhZDcwZDI4NGYxNmQ1OWRjYWEwYWI5ZmI3N2Q3NDkwcC0xLAotICAgIDB4MS5mZmVmZmZmZmZmZmNjcDk5NQotICB9LAotICB7IC8vIEVudHJ5IDM5MwotICAgIDB4MS45YWQ3MGQyODRmMTZkNTlkY2FhMGFiOWZiNzdkNzQ5MHAtMSwKLSAgICAtMHgxLmZmZWZmZmZmZmZmY2NwOTk1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzk0Ci0gICAgMHgxLmFhZDZlZmZjYjY3ODM4MjZkZTdiMjRkYmE1MDFjMTFjcC0zLAotICAgIDB4MS5mZmVmZmZmZmZmZmZkcDM2NgotICB9LAotICB7IC8vIEVudHJ5IDM5NQotICAgIC0weDEuYWFkNmVmZmNiNjc4MzgyNmRlN2IyNGRiYTUwMWMxMWNwLTMsCi0gICAgLTB4MS5mZmVmZmZmZmZmZmZkcDM2NgotICB9LAotICB7IC8vIEVudHJ5IDM5NgotICAgIDB4MS5jODg2NDVmOWQxMTllYzIwMzA3MjRhNGNlNGU2ZWJiYXAyLAotICAgIDB4MS5mZmVmZmZmZmZmZmZmcDE4MAotICB9LAotICB7IC8vIEVudHJ5IDM5NwotICAgIC0weDEuYzg4NjQ1ZjlkMTE5ZWMyMDMwNzI0YTRjZTRlNmViYmFwMiwKLSAgICAtMHgxLmZmZWZmZmZmZmZmZmZwMTgwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk4Ci0gICAgMHgxLjEzMWFhN2I5ZDRhYTA3ZmY1ODQwYWMxZThmYjQyMzYwcDIsCi0gICAgMHgxLmZmZWZmZmZmZmZmZmZwMjMxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk5Ci0gICAgLTB4MS4xMzFhYTdiOWQ0YWEwN2ZmNTg0MGFjMWU4ZmI0MjM2MHAyLAotICAgIC0weDEuZmZlZmZmZmZmZmZmZnAyMzEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDAKLSAgICAweDEuZjY3MTcxOWJlNTBkMWQ0ZGViZTg1YzkyMmUxZTI5MTNwLTMsCi0gICAgMHgxLmZmZWZmZmZmZmZmZmZwMTAxOQotICB9LAotICB7IC8vIEVudHJ5IDQwMQotICAgIC0weDEuZjY3MTcxOWJlNTBkMWQ0ZGViZTg1YzkyMmUxZTI5MTNwLTMsCi0gICAgLTB4MS5mZmVmZmZmZmZmZmZmcDEwMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDIKLSAgICAweDEuZmYwNzhhMmQyZDg3MWFjMWYzMjc2NWU5ZGI2NDRlYjFwLTEsCi0gICAgMHgxLmZmZjFmZmZmZmZmZmZwNDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDMKLSAgICAtMHgxLmZmMDc4YTJkMmQ4NzFhYzFmMzI3NjVlOWRiNjQ0ZWIxcC0xLAotICAgIC0weDEuZmZmMWZmZmZmZmZmZnA0MAotICB9LAotICB7IC8vIEVudHJ5IDQwNAotICAgIDB4MS4wNzg0YjA0ZmM0MmE1OWU3N2Y4NWQ5OTY3ZGE2Nzc1ZHA5LAotICAgIDB4MS5mZmYxZmZmZmZmZmZmcDQxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA1Ci0gICAgLTB4MS4wNzg0YjA0ZmM0MmE1OWU3N2Y4NWQ5OTY3ZGE2Nzc1ZHA5LAotICAgIC0weDEuZmZmMWZmZmZmZmZmZnA0MQotICB9LAotICB7IC8vIEVudHJ5IDQwNgotICAgIDB4MS44ZWIyMmRkMTY3YTM3YWQyMWRkZjFlNjk3MzRlOWNlMnAwLAotICAgIDB4MS5mZmZmZjFmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDA3Ci0gICAgLTB4MS44ZWIyMmRkMTY3YTM3YWQyMWRkZjFlNjk3MzRlOWNlMnAwLAotICAgIC0weDEuZmZmZmYxZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQwOAotICAgIC0weDEuMjJlNzM0NmZkM2RkYTU1M2IxNDZjMzdmNjExMjdhNGNwMSwKLSAgICAweDEuZmZmZmZmOHAxMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDkKLSAgICAweDEuMjJlNzM0NmZkM2RkYTU1M2IxNDZjMzdmNjExMjdhNGNwMSwKLSAgICAtMHgxLmZmZmZmZjhwMTE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDEwCi0gICAgLTB4MS5kYjBiM2IwMTlmMTc1YmVkNWJjZjFhNTYwMmRiMDBhZnAtMywKLSAgICAweDEuZmZmZmZmOHAxOTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTEKLSAgICAweDEuZGIwYjNiMDE5ZjE3NWJlZDViY2YxYTU2MDJkYjAwYWZwLTMsCi0gICAgLTB4MS5mZmZmZmY4cDE5MgotICB9LAotICB7IC8vIEVudHJ5IDQxMgotICAgIDB4MS4wNmI2YmVkZTkxMDI1N2YzMTVhNTA4M2E5YWIyYjY1MHAtMSwKLSAgICAweDEuZmZmZmZmOHA1NDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTMKLSAgICAtMHgxLjA2YjZiZWRlOTEwMjU3ZjMxNWE1MDgzYTlhYjJiNjUwcC0xLAotICAgIC0weDEuZmZmZmZmOHA1NDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTQKLSAgICAtMHgxLjQwZjAyYTE1ZGZhM2Q3ZmYzZTJhNDU1M2YxOWNiMmQwcDEsCi0gICAgMHgxLmZmZmZmZmZmYmJmZmZwNDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTUKLSAgICAweDEuNDBmMDJhMTVkZmEzZDdmZjNlMmE0NTUzZjE5Y2IyZDBwMSwKLSAgICAtMHgxLmZmZmZmZmZmYmJmZmZwNDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTYKLSAgICAweDEuYWI2MDExMmVmNGZkZGZmM2Y1YTI2OTBjN2QzZWE2ZWZwLTIsCi0gICAgMHgxLmZmZmZmZmZmZjdmZmZwMjMxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE3Ci0gICAgLTB4MS5hYjYwMTEyZWY0ZmRkZmYzZjVhMjY5MGM3ZDNlYTZlZnAtMiwKLSAgICAtMHgxLmZmZmZmZmZmZjdmZmZwMjMxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE4Ci0gICAgMHgxLjM1YTk5MjllZWFmZDcwZjA3MTJhYmUyYTUxMTg1NGExcDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmNzhwOTIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDE5Ci0gICAgLTB4MS4zNWE5OTI5ZWVhZmQ3MGYwNzEyYWJlMmE1MTE4NTRhMXAwLAotICAgIC0weDEuZmZmZmZmZmZmZmY3OHA5MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjAKLSAgICAweDEuNDYzMDI5OGYzYjk5MzI4NzIwNWRjMGI4OWIwNjAxZTBwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZkNXA5OTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjEKLSAgICAtMHgxLjQ2MzAyOThmM2I5OTMyODcyMDVkYzBiODliMDYwMWUwcDAsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmQ1cDk5NQotICB9LAotICB7IC8vIEVudHJ5IDQyMgotICAgIC0weDEuOTQ3MmUwNDUxMjlmZGJhNjM3OTE3MTI0MTZlYzk2MTNwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZThwNzIwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDIzCi0gICAgMHgxLjk0NzJlMDQ1MTI5ZmRiYTYzNzkxNzEyNDE2ZWM5NjEzcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZlOHA3MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjQKLSAgICAweDEuNDJlNTg2ZGFhMWI0MjhmYzA1ODA4ODhmMmZjNDY4OTNwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZlYnA5MjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjUKLSAgICAtMHgxLjQyZTU4NmRhYTFiNDI4ZmMwNTgwODg4ZjJmYzQ2ODkzcDAsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmVicDkyMAotICB9LAotICB7IC8vIEVudHJ5IDQyNgotICAgIC0weDEuYmZjNDM2Yjk0Mzc0YjVmMTZiNjBlYTY5Y2Q4ODM5OTJwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZjFwMjQ1Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDI3Ci0gICAgMHgxLmJmYzQzNmI5NDM3NGI1ZjE2YjYwZWE2OWNkODgzOTkycC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmMXAyNDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjgKLSAgICAweDEuMzUxMTdkNGE0ZjFlNGJiMjJmZGQwMzE2NGEzNjRjY2ZwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmNHA4NDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjkKLSAgICAtMHgxLjM1MTE3ZDRhNGYxZTRiYjIyZmRkMDMxNjRhMzY0Y2NmcDAsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmY0cDg0NQotICB9LAotICB7IC8vIEVudHJ5IDQzMAotICAgIC0weDEuYmZkZDkyOTI3OThhYWE3ODljM2RmMGRmNzcyOTgzNWFwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZjRwMTAyMAotICB9LAotICB7IC8vIEVudHJ5IDQzMQotICAgIDB4MS5iZmRkOTI5Mjc5OGFhYTc4OWMzZGYwZGY3NzI5ODM1YXAtMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZjRwMTAyMAotICB9LAotICB7IC8vIEVudHJ5IDQzMgotICAgIC0weDEuOWI3NjhjY2RhZTZlYmI3MGI0NWFjMTRlOTJiM2Q1YzhwOSwKLSAgICAweDEuZmZmZmZmZmZmZmZmY3A0NQotICB9LAotICB7IC8vIEVudHJ5IDQzMwotICAgIDB4MS45Yjc2OGNjZGFlNmViYjcwYjQ1YWMxNGU5MmIzZDVjOHA5LAotICAgIC0weDEuZmZmZmZmZmZmZmZmY3A0NQotICB9LAotICB7IC8vIEVudHJ5IDQzNAotICAgIDB4MS5mZWNhMDQ3ZjI3MzBmNzM5NWQ5NWY0NjljY2I1YTVkM3AtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmY3A0NzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzUKLSAgICAtMHgxLmZlY2EwNDdmMjczMGY3Mzk1ZDk1ZjQ2OWNjYjVhNWQzcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmY3A0NzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzYKLSAgICAtMHgxLjQ0OWYxNWNjOTQ1NTk3ZmY1OGYyNDI2YWNiZmY5YzYycC0yLAotICAgIDB4MS5mZmZmZmZmZmZmZmZjcDk3NgotICB9LAotICB7IC8vIEVudHJ5IDQzNwotICAgIDB4MS40NDlmMTVjYzk0NTU5N2ZmNThmMjQyNmFjYmZmOWM2MnAtMiwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmNwOTc2Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDM4Ci0gICAgMHgxLmZmZmM1OGRhMDc5NTFjYmUyMmM5NmQ3M2IxMjg5ZTFlcC0yLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcDg4MQotICB9LAotICB7IC8vIEVudHJ5IDQzOQotICAgIC0weDEuZmZmYzU4ZGEwNzk1MWNiZTIyYzk2ZDczYjEyODllMWVwLTIsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZlcDg4MQotICB9LAotICB7IC8vIEVudHJ5IDQ0MAotICAgIC0weDEuYzFjOTE5NWVjMjNhYTY0ZGYxNDVkZDI2OWNkODk1ZThwLTEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwOTcwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQxCi0gICAgMHgxLmMxYzkxOTVlYzIzYWE2NGRmMTQ1ZGQyNjljZDg5NWU4cC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZXA5NzAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDIKLSAgICAweDEuM2NjMWVkMzkwNmQyZjdmZGQ2MzNjZjRlYjA2ZjNmMTlwLTIsCi0gICAgMHgxLjMzMzI4YzFiMzczMjFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDMKLSAgICAtMHgxLjNjYzFlZDM5MDZkMmY3ZmRkNjMzY2Y0ZWIwNmYzZjE5cC0yLAotICAgIC0weDEuMzMzMjhjMWIzNzMyMXAtMgotICB9LAotICB7IC8vIEVudHJ5IDQ0NAotICAgIC0weDEucC0xMDc0LAotICAgIC0weDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDQ0NQotICAgIDB4MS5wLTEwNzQsCi0gICAgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDYKLSAgICAtMC4wLAotICAgIC0wLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDcKLSAgICAweDEucC0xMDc0LAotICAgIDB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDQ4Ci0gICAgLTB4MS5wLTEwNzQsCi0gICAgLTB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDQ5Ci0gICAgLTB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTAKLSAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEwMjIsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTEKLSAgICAtMHgxLnAtMTAyMiwKLSAgICAtMHgxLjBwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTIKLSAgICAweDEucC0xMDIyLAotICAgIDB4MS4wcC0xMDIyCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUzCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTQKLSAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTUKLSAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTYKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmUwcC0xMDIzLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZXAtMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDQ1NwotICAgIDB4MS5wLTEwMjIsCi0gICAgMHgxLjBwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTgKLSAgICAtMHgxLnAtMTAyMiwKLSAgICAtMHgxLjBwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTkKLSAgICAweDEuMDAwMDAwMDAwMDAwMTBwLTEwMjIsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwLTEwMjIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjAKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcC0xMDIyLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDQ2MQotICAgIDB4MS45OTk5OTlmMGZiMzhjNjEyMmExZmE4ZTA0M2JiMDdjMnAtMTMsCi0gICAgMHgxLjk5OTk5OTk5OTk5OWFwLTEzCi0gIH0sCi0gIHsgLy8gRW50cnkgNDYyCi0gICAgLTB4MS45OTk5OTlmMGZiMzhjNjEyMmExZmE4ZTA0M2JiMDdjMnAtMTMsCi0gICAgLTB4MS45OTk5OTk5OTk5OTlhcC0xMwotICB9LAotICB7IC8vIEVudHJ5IDQ2MwotICAgIDB4MS45OTk5OWFmNzIwMTc0NGI4MjNlNWIyNzBmZDFhYTM5ZHAtMTIsCi0gICAgMHgxLjk5OTk5OTk5OTk5OWFwLTEyCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY0Ci0gICAgLTB4MS45OTk5OWFmNzIwMTc0NGI4MjNlNWIyNzBmZDFhYTM5ZHAtMTIsCi0gICAgLTB4MS45OTk5OTk5OTk5OTlhcC0xMgotICB9LAotICB7IC8vIEVudHJ5IDQ2NQotICAgIDB4MS4zMzMzMzU4MTA2MmEzOGYwNGRmMDI0MTQyZGRhYTA1ZHAtMTEsCi0gICAgMHgxLjMzMzMzMzMzMzMzMzRwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY2Ci0gICAgLTB4MS4zMzMzMzU4MTA2MmEzOGYwNGRmMDI0MTQyZGRhYTA1ZHAtMTEsCi0gICAgLTB4MS4zMzMzMzMzMzMzMzM0cC0xMQotICB9LAotICB7IC8vIEVudHJ5IDQ2NwotICAgIDB4MS45OTk5OWYwZmIzYTBmOWQ4ODczOGJlMmZmN2FmOWFhYXAtMTEsCi0gICAgMHgxLjk5OTk5OTk5OTk5OWFwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY4Ci0gICAgLTB4MS45OTk5OWYwZmIzYTBmOWQ4ODczOGJlMmZmN2FmOWFhYXAtMTEsCi0gICAgLTB4MS45OTk5OTk5OTk5OTlhcC0xMQotICB9LAotICB7IC8vIEVudHJ5IDQ2OQotICAgIDB4MS4wMDAwMDU1NTU1Nzc3Nzc4NTQ4NTRkZWRjMjhlYWQ1MXAtMTAsCi0gICAgMHgxLjBwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDcwCi0gICAgLTB4MS4wMDAwMDU1NTU1Nzc3Nzc4NTQ4NTRkZWRjMjhlYWQ1MXAtMTAsCi0gICAgLTB4MS4wcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDQ3MQotICAgIDB4MS4zMzMzM2M2YTdmNGVjNzM4NTMxNTFjZDc2Yjc5ZTEzNXAtMTAsCi0gICAgMHgxLjMzMzMzMzMzMzMzMzNwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDcyCi0gICAgLTB4MS4zMzMzM2M2YTdmNGVjNzM4NTMxNTFjZDc2Yjc5ZTEzNXAtMTAsCi0gICAgLTB4MS4zMzMzMzMzMzMzMzMzcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDQ3MwotICAgIDB4MS42NjY2NzUwOGUwYTFiNTAyMjg3MDM0ZDM2YmY0ZTNkNXAtMTAsCi0gICAgMHgxLjY2NjY2NjY2NjY2NjZwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDc0Ci0gICAgLTB4MS42NjY2NzUwOGUwYTFiNTAyMjg3MDM0ZDM2YmY0ZTNkNXAtMTAsCi0gICAgLTB4MS42NjY2NjY2NjY2NjY2cC0xMAotICB9LAotICB7IC8vIEVudHJ5IDQ3NQotICAgIDB4MS45OTk5YWY3MjAyYzM2NmYxZTBiNTQ4YTMxYzQxZDIxMHAtMTAsCi0gICAgMHgxLjk5OTk5OTk5OTk5OTlwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDc2Ci0gICAgLTB4MS45OTk5YWY3MjAyYzM2NmYxZTBiNTQ4YTMxYzQxZDIxMHAtMTAsCi0gICAgLTB4MS45OTk5OTk5OTk5OTk5cC0xMAotICB9LAotICB7IC8vIEVudHJ5IDQ3NwotICAgIDB4MS5jY2NjZWJlNzZmMTAyZmY2MzNjNWYwMmEzNDA3NjY4N3AtMTAsCi0gICAgMHgxLmNjY2NjY2NjY2NjY2NwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDc4Ci0gICAgLTB4MS5jY2NjZWJlNzZmMTAyZmY2MzNjNWYwMmEzNDA3NjY4N3AtMTAsCi0gICAgLTB4MS5jY2NjY2NjY2NjY2NjcC0xMAotICB9LAotICB7IC8vIEVudHJ5IDQ3OQotICAgIDB4MS4wNjY3ZDVmY2YzZDA3OGY5NDA2ODdlYjk3NDMxMGZiOXAtNywKLSAgICAweDEuMDY2NjY2NjY2NjY2NnAtNwotICB9LAotICB7IC8vIEVudHJ5IDQ4MAotICAgIC0weDEuMDY2N2Q1ZmNmM2QwNzhmOTQwNjg3ZWI5NzQzMTBmYjlwLTcsCi0gICAgLTB4MS4wNjY2NjY2NjY2NjY2cC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDgxCi0gICAgMHgxLmNjZDQ5MzlkMGNjZDc2NDZiM2Y4MWI3NTUzNjc1YzIzcC03LAotICAgIDB4MS5jY2NjY2NjY2NjY2NjcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDgyCi0gICAgLTB4MS5jY2Q0OTM5ZDBjY2Q3NjQ2YjNmODFiNzU1MzY3NWMyM3AtNywKLSAgICAtMHgxLmNjY2NjY2NjY2NjY2NwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODMKLSAgICAweDEuNDlhNGZjMDJhZDE5M2U4ZTk0YzRiMjQyOTE5MGI1YjJwLTYsCi0gICAgMHgxLjQ5OTk5OTk5OTk5OTlwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODQKLSAgICAtMHgxLjQ5YTRmYzAyYWQxOTNlOGU5NGM0YjI0MjkxOTBiNWIycC02LAotICAgIC0weDEuNDk5OTk5OTk5OTk5OXAtNgotICB9LAotICB7IC8vIEVudHJ5IDQ4NQotICAgIDB4MS5hY2U1ZGVkNWY2YmU2OThmNTY2OTdhYzc2MWYzZGM2OXAtNiwKLSAgICAweDEuYWNjY2NjY2NjY2NjY3AtNgotICB9LAotICB7IC8vIEVudHJ5IDQ4NgotICAgIC0weDEuYWNlNWRlZDVmNmJlNjk4ZjU2Njk3YWM3NjFmM2RjNjlwLTYsCi0gICAgLTB4MS5hY2NjY2NjY2NjY2NjcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDg3Ci0gICAgMHgxLjA4MTc2N2ZkM2NiNjg1ZjdiMDY5MTQ2Y2UzMzMzODUxcC01LAotICAgIDB4MS4wODBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODgKLSAgICAtMHgxLjA4MTc2N2ZkM2NiNjg1ZjdiMDY5MTQ2Y2UzMzMzODUxcC01LAotICAgIC0weDEuMDgwcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDg5Ci0gICAgMHgxLjM5YzBkNmRlYTY2ZmI2ZDI4NmQ0MDNjMjkyNTI3MzU2cC01LAotICAgIDB4MS4zOTk5OTk5OTk5OTlhcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDkwCi0gICAgLTB4MS4zOWMwZDZkZWE2NmZiNmQyODZkNDAzYzI5MjUyNzM1NnAtNSwKLSAgICAtMHgxLjM5OTk5OTk5OTk5OWFwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTEKLSAgICAweDEuNmI3MDJiOTU0YmMxZDU4M2M0YTQ2NzczYzJjMmExNWRwLTUsCi0gICAgMHgxLjZiMzMzMzMzMzMzMzRwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTIKLSAgICAtMHgxLjZiNzAyYjk1NGJjMWQ1ODNjNGE0Njc3M2MyYzJhMTVkcC01LAotICAgIC0weDEuNmIzMzMzMzMzMzMzNHAtNQotICB9LAotICB7IC8vIEVudHJ5IDQ5MwotICAgIDB4MS45ZDI2NTYxOGRkMGM2ODhlMDQ5YzYxMDkwZDNlM2ZlMnAtNSwKLSAgICAweDEuOWNjY2NjY2NjY2NjZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDQ5NAotICAgIC0weDEuOWQyNjU2MThkZDBjNjg4ZTA0OWM2MTA5MGQzZTNmZTJwLTUsCi0gICAgLTB4MS45Y2NjY2NjY2NjY2NlcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDk1Ci0gICAgMHgxLmNlZTQ0NmU0Y2ZkNGJlNjkwMGY0YjkwNmNhOTcyNWIxcC01LAotICAgIDB4MS5jZTY2NjY2NjY2NjY2cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDk2Ci0gICAgLTB4MS5jZWU0NDZlNGNmZDRiZTY5MDBmNGI5MDZjYTk3MjViMXAtNSwKLSAgICAtMHgxLmNlNjY2NjY2NjY2NjZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTcKLSAgICAweDEuYTFlYWVkZDVhNDMxM2U5ZDA4YmM3YmIxN2EyMjUzMWZwLTEsCi0gICAgMHgxLjVlN2ZjNDM2OWJkYWRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTgKLSAgICAtMHgxLmExZWFlZGQ1YTQzMTNlOWQwOGJjN2JiMTdhMjI1MzFmcC0xLAotICAgIC0weDEuNWU3ZmM0MzY5YmRhZHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ5OQotICAgIDB4MS5kOTNiOGFhZDQyNGRlMGU0M2ZiMDRkNjc4MWJlODFhM3AxLAotICAgIDB4MS40ZTdmYzQzNjliZGFkcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDAKLSAgICAtMHgxLmQ5M2I4YWFkNDI0ZGUwZTQzZmIwNGQ2NzgxYmU4MWEzcDEsCi0gICAgLTB4MS40ZTdmYzQzNjliZGFkcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDEKLSAgICAtMHgxLjU2M2FjZjE1OGMyZWI2NzhkNzFiZTMxZTBmMzQ3NTRkcDEsCi0gICAgMHgxLmVkYmZhNjUxZTljODRwMAotICB9LAotICB7IC8vIEVudHJ5IDUwMgotICAgIDB4MS41NjNhY2YxNThjMmViNjc4ZDcxYmUzMWUwZjM0NzU0ZHAxLAotICAgIC0weDEuZWRiZmE2NTFlOWM4NHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTAzCi0gICAgLTB4MS41NzZiNzc2MDlmMDg5MDMxM2MzNzFhMGEyYzU4MjE0NXAtMSwKLSAgICAweDEuNDY3ZmM0MzY5YmRhZHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA0Ci0gICAgMHgxLjU3NmI3NzYwOWYwODkwMzEzYzM3MWEwYTJjNTgyMTQ1cC0xLAotICAgIC0weDEuNDY3ZmM0MzY5YmRhZHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA1Ci0gICAgMHgxLjAwMTU1Nzc3YWViZjZhZDQxYjM5YTgwOGVkNWMzMzg0cC01LAotICAgIDB4MS45NjFmYjU0NDQyZDE4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDYKLSAgICAtMHgxLjAwMTU1Nzc3YWViZjZhZDQxYjM5YTgwOGVkNWMzMzg0cC01LAotICAgIC0weDEuOTYxZmI1NDQ0MmQxOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA3Ci0gICAgMHgxLjg3ZTk5NjZlN2QyMmQzNDhmZWM2Yzk1Zjg1MTc3NWY0cC0xLAotICAgIDB4MS5lNWJmYTY1MWU5YzgzcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDgKLSAgICAtMHgxLjg3ZTk5NjZlN2QyMmQzNDhmZWM2Yzk1Zjg1MTc3NWY0cC0xLAotICAgIC0weDEuZTViZmE2NTFlOWM4M3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA5Ci0gICAgMHgxLmE0OWU3ZDg5ODc4NTBmOWNhNWI5MzMyZTM5ZGNkODhmcDEsCi0gICAgMHgxLjFhYWZjYmFmYzg1ZjdwMgotICB9LAotICB7IC8vIEVudHJ5IDUxMAotICAgIC0weDEuYTQ5ZTdkODk4Nzg1MGY5Y2E1YjkzMzJlMzlkY2Q4OGZwMSwKLSAgICAtMHgxLjFhYWZjYmFmYzg1ZjdwMgotICB9LAotICB7IC8vIEVudHJ5IDUxMQotICAgIC0weDEuNzljZWQ4MTU2ZDA0MGVkZGU1YTZhYjYyMjU1ZTIyNjFwMSwKLSAgICAweDEuNDI3ZmM0MzY5YmRhZHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNTEyCi0gICAgMHgxLjc5Y2VkODE1NmQwNDBlZGRlNWE2YWI2MjI1NWUyMjYxcDEsCi0gICAgLTB4MS40MjdmYzQzNjliZGFkcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTMKLSAgICAtMHgxLjZmMWY2NWNkMWU5MWI1ZTVlYzFlMTIwZTllMGRkYzBhcC0xLAotICAgIDB4MS42YTRmYmNiZDZmNTYycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTQKLSAgICAweDEuNmYxZjY1Y2QxZTkxYjVlNWVjMWUxMjBlOWUwZGRjMGFwLTEsCi0gICAgLTB4MS42YTRmYmNiZDZmNTYycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTUKLSAgICAtMHgxLjY3NzQ3ZDVmODQ0ZTFiMGM1MDNkNTFlN2JhMDMyZmZjcC0xLAotICAgIDB4MS42YWYyZWZmMGEyODk2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTYKLSAgICAweDEuNjc3NDdkNWY4NDRlMWIwYzUwM2Q1MWU3YmEwMzJmZmNwLTEsCi0gICAgLTB4MS42YWYyZWZmMGEyODk2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTcKLSAgICAtMHgxLjYyNmEyNTg4MTVkMTgyMzUwNmQxNzA2OTEzMGViOWZicDEsCi0gICAgMHgxLjQzYzYyYTlkMDI0MTRwMgotICB9LAotICB7IC8vIEVudHJ5IDUxOAotICAgIDB4MS42MjZhMjU4ODE1ZDE4MjM1MDZkMTcwNjkxMzBlYjlmYnAxLAotICAgIC0weDEuNDNjNjJhOWQwMjQxNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNTE5Ci0gICAgMHgxLmQ2YWRhZjgwZjhiMDUxZmJjN2FiOWYyZTA5ZThlNjA4cDEsCi0gICAgMHgxLjFjOTk2NTQ5NjFmOTJwMgotICB9LAotICB7IC8vIEVudHJ5IDUyMAotICAgIC0weDEuZDZhZGFmODBmOGIwNTFmYmM3YWI5ZjJlMDllOGU2MDhwMSwKLSAgICAtMHgxLjFjOTk2NTQ5NjFmOTJwMgotICB9LAotICB7IC8vIEVudHJ5IDUyMQotICAgIDB4MS5hOTRkMWIyMTM3MGQ1MmJmY2Q5ZWM0MTdlNDFkNmU1YnAtMSwKLSAgICAweDEuZWFkOTNmZWI4MzYxZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIyCi0gICAgLTB4MS5hOTRkMWIyMTM3MGQ1MmJmY2Q5ZWM0MTdlNDFkNmU1YnAtMSwKLSAgICAtMHgxLmVhZDkzZmViODM2MWZwMQotICB9LAotICB7IC8vIEVudHJ5IDUyMwotICAgIDB4MS40Y2JhOWU3ODIyMjM0MGNhNDkzZjgwM2JiYzk0NzY1OXAtNCwKLSAgICAweDEuOWM3ZmI1NDQ0MmQxYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI0Ci0gICAgLTB4MS40Y2JhOWU3ODIyMjM0MGNhNDkzZjgwM2JiYzk0NzY1OXAtNCwKLSAgICAtMHgxLjljN2ZiNTQ0NDJkMWFwMQotICB9LAotICB7IC8vIEVudHJ5IDUyNQotICAgIC0weDEuMmNiNmQwMjYzNDUzMWE2ODM5YmY4OThjYzFmOTE4ZGVwLTEsCi0gICAgMHgxLjRlMjYyYTlkMDI0MTVwMQotICB9LAotICB7IC8vIEVudHJ5IDUyNgotICAgIDB4MS4yY2I2ZDAyNjM0NTMxYTY4MzliZjg5OGNjMWY5MThkZXAtMSwKLSAgICAtMHgxLjRlMjYyYTlkMDI0MTVwMQotICB9LAotICB7IC8vIEVudHJ5IDUyNwotICAgIC0weDEuMThkOTExMjMwOGQ1Yjg5N2JhNDRjZmM1YzQ0MzczMTdwMSwKLSAgICAweDEuZmY5OTNmZWI4MzYyMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI4Ci0gICAgMHgxLjE4ZDkxMTIzMDhkNWI4OTdiYTQ0Y2ZjNWM0NDM3MzE3cDEsCi0gICAgLTB4MS5mZjk5M2ZlYjgzNjIwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjkKLSAgICAweDEuNTZmZTAxNDVjZjI5MDE5NzU4MjlkZGMzZmM3ODZkZjBwMiwKLSAgICAweDEuNjJlNjJhOWQwMjQxNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMwCi0gICAgLTB4MS41NmZlMDE0NWNmMjkwMTk3NTgyOWRkYzNmYzc4NmRmMHAyLAotICAgIC0weDEuNjJlNjJhOWQwMjQxNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMxCi0gICAgMHgxLmY0YWQzNTNhY2E0NTNmNjJiZWFlMDFjZDViMTNkNTBkcC0xLAotICAgIDB4MS44YzY2MmE5ZDAyNDE5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMyCi0gICAgLTB4MS5mNGFkMzUzYWNhNDUzZjYyYmVhZTAxY2Q1YjEzZDUwZHAtMSwKLSAgICAtMHgxLjhjNjYyYTlkMDI0MTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzMKLSAgICAweDEuNmE3ZTFmNjQwN2VlNjEzOTdkMDE2ZDY5MWJiNjFkMTdwMywKLSAgICAtMHgxLmE4YWExZDExYzQ0ZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDUzNAotICAgIC0weDEuNmE3ZTFmNjQwN2VlNjEzOTdkMDE2ZDY5MWJiNjFkMTdwMywKLSAgICAweDEuYThhYTFkMTFjNDRmZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM1Ci0gICAgMHgxLjBkNzE4Y2ZjODI0NjQ1MzZiZmQ2MjFiZTQxOWYwMDdjcDYsCi0gICAgLTB4MS45NWVjOGI5ZTAzZDU0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzYKLSAgICAtMHgxLjBkNzE4Y2ZjODI0NjQ1MzZiZmQ2MjFiZTQxOWYwMDdjcDYsCi0gICAgMHgxLjk1ZWM4YjllMDNkNTRwMAotICB9LAotICB7IC8vIEVudHJ5IDUzNwotICAgIC0weDEuMTFkODcxNDZjMmQ1YTE4MzJjMjRmM2Q4NzA1MmQ3ZWJwNCwKLSAgICAtMHgxLjgzMmVmYTJhNDM1YTlwMAotICB9LAotICB7IC8vIEVudHJ5IDUzOAotICAgIDB4MS4xMWQ4NzE0NmMyZDVhMTgzMmMyNGYzZDg3MDUyZDdlYnA0LAotICAgIDB4MS44MzJlZmEyYTQzNWE5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzkKLSAgICAtMHgxLmUzYTM3MjliM2U4NmUyMjIxZmE1ZjA0YWJmNjk5ZTZlcDIsCi0gICAgLTB4MS43MDcxNjhiNjgyZGZlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDAKLSAgICAweDEuZTNhMzcyOWIzZTg2ZTIyMjFmYTVmMDRhYmY2OTllNmVwMiwKLSAgICAweDEuNzA3MTY4YjY4MmRmZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQxCi0gICAgLTB4MS4zNDI5ZTYxYTVkMWYyZTgwZmJkMTM3MGQ0YTdjMmIxMHAyLAotICAgIC0weDEuNWRiM2Q3NDJjMjY1M3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQyCi0gICAgMHgxLjM0MjllNjFhNWQxZjJlODBmYmQxMzcwZDRhN2MyYjEwcDIsCi0gICAgMHgxLjVkYjNkNzQyYzI2NTNwMAotICB9LAotICB7IC8vIEVudHJ5IDU0MwotICAgIC0weDEuYzA4Y2FlYzVjZjk5NzI1ZTU3YzMyNzY2ZmIwODRjNWZwMSwKLSAgICAtMHgxLjRhZjY0NWNmMDFlYThwMAotICB9LAotICB7IC8vIEVudHJ5IDU0NAotICAgIDB4MS5jMDhjYWVjNWNmOTk3MjVlNTdjMzI3NjZmYjA4NGM1ZnAxLAotICAgIDB4MS40YWY2NDVjZjAxZWE4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDUKLSAgICAtMHgxLjVkNjAzZDc1MTc2N2VlNzBlOWEyZmY1NDk1OWZhNGE3cDEsCi0gICAgLTB4MS4zODM4YjQ1YjQxNmZkcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDYKLSAgICAweDEuNWQ2MDNkNzUxNzY3ZWU3MGU5YTJmZjU0OTU5ZmE0YTdwMSwKLSAgICAweDEuMzgzOGI0NWI0MTZmZHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ3Ci0gICAgLTB4MS4xYjQ4YTM1YjFiMjc3ZWZmYWJkNzI3OGI1MjU3MDhlZHAxLAotICAgIC0weDEuMjU3YjIyZTc4MGY1MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ4Ci0gICAgMHgxLjFiNDhhMzViMWIyNzdlZmZhYmQ3Mjc4YjUyNTcwOGVkcDEsCi0gICAgMHgxLjI1N2IyMmU3ODBmNTJwMAotICB9LAotICB7IC8vIEVudHJ5IDU0OQotICAgIC0weDEuZDc0Y2FmOTkxMmRjN2Q5NjY5YjAwOTI2YWExYWRlMTFwMCwKLSAgICAtMHgxLjEyYmQ5MTczYzA3YWJwMAotICB9LAotICB7IC8vIEVudHJ5IDU1MAotICAgIDB4MS5kNzRjYWY5OTEyZGM3ZDk2NjliMDA5MjZhYTFhZGUxMXAwLAotICAgIDB4MS4xMmJkOTE3M2MwN2FicDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTEKLSAgICAtMHgxLjZiZTcwMmUxZjZjZDYwYmZkODZhZDg2MTgwZDE4NDkwcDAsCi0gICAgLTB4MS5lYTVjM2VkNWIzODUwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUyCi0gICAgMHgxLjZiZTcwMmUxZjZjZDYwYmZkODZhZDg2MTgwZDE4NDkwcDAsCi0gICAgMHgxLmVhNWMzZWQ1YjM4NTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTMKLSAgICAtMHgxLjRkMGRmMWZjMWQzNDg0YjAyNzUzN2Q4MTE3YTM5NWY0cDAsCi0gICAgLTB4MS5kNGI4N2RhYjY3MGEwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU0Ci0gICAgMHgxLjRkMGRmMWZjMWQzNDg0YjAyNzUzN2Q4MTE3YTM5NWY0cDAsCi0gICAgMHgxLmQ0Yjg3ZGFiNjcwYTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTUKLSAgICAtMHgxLjMxNmM4YjA2OGE3YWYyNTdmMWU1YTUxOTQzODM0ZjNlcDAsCi0gICAgLTB4MS5iZjE0YmM4MTFhOGYwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU2Ci0gICAgMHgxLjMxNmM4YjA2OGE3YWYyNTdmMWU1YTUxOTQzODM0ZjNlcDAsCi0gICAgMHgxLmJmMTRiYzgxMWE4ZjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTcKLSAgICAtMHgxLjE4NzJhMWFhYTdlMjZjZjQxN2U2MzMxNjE3ZWE3ZGQwcDAsCi0gICAgLTB4MS5hOTcwZmI1NmNlMTQwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU4Ci0gICAgMHgxLjE4NzJhMWFhYTdlMjZjZjQxN2U2MzMxNjE3ZWE3ZGQwcDAsCi0gICAgMHgxLmE5NzBmYjU2Y2UxNDBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTkKLSAgICAtMHgxLjAxYWVlZWQwNGNiYjBkZmFjZDFkMDBjNjU3ZDA4YjE5cDAsCi0gICAgLTB4MS45M2NkM2EyYzgxOTkwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYwCi0gICAgMHgxLjAxYWVlZWQwNGNiYjBkZmFjZDFkMDBjNjU3ZDA4YjE5cDAsCi0gICAgMHgxLjkzY2QzYTJjODE5OTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjEKLSAgICAtMHgxLmQ5OGU0MDhhYzIwODVjNGUwNTg4ZGYxMGJhN2ZiMDIzcC0xLAotICAgIC0weDEuN2UyOTc5MDIzNTFlMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDU2MgotICAgIDB4MS5kOThlNDA4YWMyMDg1YzRlMDU4OGRmMTBiYTdmYjAyM3AtMSwKLSAgICAweDEuN2UyOTc5MDIzNTFlMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDU2MwotICAgIC0weDEuYjJlNDc1MDYzMWM1M2M1NGY1ODMwZmQ0MTc1M2Q0MjdwLTEsCi0gICAgLTB4MS42ODg1YjdkN2U4YTMwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY0Ci0gICAgMHgxLmIyZTQ3NTA2MzFjNTNjNTRmNTgzMGZkNDE3NTNkNDI3cC0xLAotICAgIDB4MS42ODg1YjdkN2U4YTMwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY1Ci0gICAgLTB4MS44ZWU5MTYzOTJlMDQ1OTBjZTk4OGQ4MmNjMzk1OTAyMXAtMSwKLSAgICAtMHgxLjUyZTFmNmFkOWMyODBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjYKLSAgICAweDEuOGVlOTE2MzkyZTA0NTkwY2U5ODhkODJjYzM5NTkwMjFwLTEsCi0gICAgMHgxLjUyZTFmNmFkOWMyODBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjcKLSAgICAtMHgxLjZkMzk1ZTQ5NWY3N2U3MDk4NDI1OTJlMjI2NjA3YjUzcC0xLAotICAgIC0weDEuM2QzZTM1ODM0ZmFkMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDU2OAotICAgIDB4MS42ZDM5NWU0OTVmNzdlNzA5ODQyNTkyZTIyNjYwN2I1M3AtMSwKLSAgICAweDEuM2QzZTM1ODM0ZmFkMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDU2OQotICAgIC0weDEuMjRlM2UwMTdhMDk4ZWNmNGRlNDhiY2VlYjAyNjc0M2FwLTEsCi0gICAgLTB4MS4wYTBiMDI1MDFjNzk5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcwCi0gICAgMHgxLjI0ZTNlMDE3YTA5OGVjZjRkZTQ4YmNlZWIwMjY3NDNhcC0xLAotICAgIDB4MS4wYTBiMDI1MDFjNzk5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcxCi0gICAgLTB4MS5mZGJkNWYwNTk2YmRjNmVmOGRhNTNlZTY1MmI1N2NmN3AtMiwKLSAgICAtMHgxLmQ4ZjcyMDhlNmI4MmNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzIKLSAgICAweDEuZmRiZDVmMDU5NmJkYzZlZjhkYTUzZWU2NTJiNTdjZjdwLTIsCi0gICAgMHgxLmQ4ZjcyMDhlNmI4MmNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzMKLSAgICAtMHgxLmI1ZjNkNmFmYmU2ZjI1OWFmMzdjNGU2MzNhYjVmZGZhcC0yLAotICAgIC0weDEuOWRkODNjN2M5ZTEyNnAtMgotICB9LAotICB7IC8vIEVudHJ5IDU3NAotICAgIDB4MS5iNWYzZDZhZmJlNmYyNTlhZjM3YzRlNjMzYWI1ZmRmYXAtMiwKLSAgICAweDEuOWRkODNjN2M5ZTEyNnAtMgotICB9LAotICB7IC8vIEVudHJ5IDU3NQotICAgIC0weDEuNzFhMGY5ODA4MWVhOThiNWYzMGExNTkzZTNmYzYzNzNwLTIsCi0gICAgLTB4MS42MmI5NTg2YWQwYTIwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc2Ci0gICAgMHgxLjcxYTBmOTgwODFlYTk4YjVmMzBhMTU5M2UzZmM2MzczcC0yLAotICAgIDB4MS42MmI5NTg2YWQwYTIwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc3Ci0gICAgLTB4MS4zMDE5MDlhMmMzNmU4OWE2NzUyOGEzOGM3N2FjOWU0M3AtMiwKLSAgICAtMHgxLjI3OWE3NDU5MDMzMWFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzgKLSAgICAweDEuMzAxOTA5YTJjMzZlODlhNjc1MjhhMzhjNzdhYzllNDNwLTIsCi0gICAgMHgxLjI3OWE3NDU5MDMzMWFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzkKLSAgICAtMHgxLmUxOGU5NDFjYzdmZDUxOWVjYzQwNTQ4YTg2ZDJhM2VkcC0zLAotICAgIC0weDEuZDhmNzIwOGU2YjgyOXAtMwotICB9LAotICB7IC8vIEVudHJ5IDU4MAotICAgIDB4MS5lMThlOTQxY2M3ZmQ1MTllY2M0MDU0OGE4NmQyYTNlZHAtMywKLSAgICAweDEuZDhmNzIwOGU2YjgyOXAtMwotICB9LAotICB7IC8vIEVudHJ5IDU4MQotICAgIC0weDEuNjY1MDc4NGJiZGNjMDJmMzM5MDI2MmNmNjhiYWQzYzZwLTMsCi0gICAgLTB4MS42MmI5NTg2YWQwYTFlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgyCi0gICAgMHgxLjY2NTA3ODRiYmRjYzAyZjMzOTAyNjJjZjY4YmFkM2M2cC0zLAotICAgIDB4MS42MmI5NTg2YWQwYTFlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgzCi0gICAgLTB4MS5kYjE0MjQ2OGNkYWZjNTZlY2ZkZjhiMTA1MmIwOWU2M3AtNCwKLSAgICAtMHgxLmQ4ZjcyMDhlNmI4MjZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODQKLSAgICAweDEuZGIxNDI0NjhjZGFmYzU2ZWNmZGY4YjEwNTJiMDllNjNwLTQsCi0gICAgMHgxLmQ4ZjcyMDhlNmI4MjZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODUKLSAgICAtMHgxLmQ5N2RkNmQyZTUzZjI3ZTBmZTFmM2JkMmIwMzU2NjJhcC01LAotICAgIC0weDEuZDhmNzIwOGU2YjgyZHAtNQotICB9LAotICB7IC8vIEVudHJ5IDU4NgotICAgIDB4MS5kOTdkZDZkMmU1M2YyN2UwZmUxZjNiZDJiMDM1NjYyYXAtNSwKLSAgICAweDEuZDhmNzIwOGU2YjgyZHAtNQotICB9LAotICB7IC8vIEVudHJ5IDU4NwotICAgIDB4MS5kOTdkZDZkMmU1M2YyN2UwZmUxZjNiZDJiMDM1NjYyYXAtNSwKLSAgICAweDEuZDhmNzIwOGU2YjgyZHAtNQotICB9LAotICB7IC8vIEVudHJ5IDU4OAotICAgIC0weDEuZDk3ZGQ2ZDJlNTNmMjdlMGZlMWYzYmQyYjAzNTY2MmFwLTUsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODJkcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTg5Ci0gICAgMHgxLmRiMTQyNDY4Y2RiMDM2ZjA4NzgzZDkzNmIxOTM0OGY2cC00LAotICAgIDB4MS5kOGY3MjA4ZTZiODJkcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTkwCi0gICAgLTB4MS5kYjE0MjQ2OGNkYjAzNmYwODc4M2Q5MzZiMTkzNDhmNnAtNCwKLSAgICAtMHgxLmQ4ZjcyMDhlNmI4MmRwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTEKLSAgICAweDEuNjY1MDc4NGJiZGNjNDRlOGJlMmMyMjBlMWQ2NzNmZmJwLTMsCi0gICAgMHgxLjYyYjk1ODZhZDBhMjJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTIKLSAgICAtMHgxLjY2NTA3ODRiYmRjYzQ0ZThiZTJjMjIwZTFkNjczZmZicC0zLAotICAgIC0weDEuNjJiOTU4NmFkMGEyMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDU5MwotICAgIDB4MS5lMThlOTQxY2M3ZmQ5NTI4YTU1ODUxNTdhYzY1ZTYxNXAtMywKLSAgICAweDEuZDhmNzIwOGU2YjgyZHAtMwotICB9LAotICB7IC8vIEVudHJ5IDU5NAotICAgIC0weDEuZTE4ZTk0MWNjN2ZkOTUyOGE1NTg1MTU3YWM2NWU2MTVwLTMsCi0gICAgLTB4MS5kOGY3MjA4ZTZiODJkcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNTk1Ci0gICAgMHgxLjMwMTkwOWEyYzM2ZWFjNzhlYzFiNGU3MTEzMTZkMGM0cC0yLAotICAgIDB4MS4yNzlhNzQ1OTAzMzFjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNTk2Ci0gICAgLTB4MS4zMDE5MDlhMmMzNmVhYzc4ZWMxYjRlNzExMzE2ZDBjNHAtMiwKLSAgICAtMHgxLjI3OWE3NDU5MDMzMWNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTcKLSAgICAweDEuNzFhMGY5ODA4MWVhYmNlMTU1ZjMxMDI4OGM0MjQ1ZWFwLTIsCi0gICAgMHgxLjYyYjk1ODZhZDBhMjJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTgKLSAgICAtMHgxLjcxYTBmOTgwODFlYWJjZTE1NWYzMTAyODhjNDI0NWVhcC0yLAotICAgIC0weDEuNjJiOTU4NmFkMGEyMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDU5OQotICAgIDB4MS5iNWYzZDZhZmJlNmY0Yjc1Njg0MmI4ZWVlNWM4NWEzMXAtMiwKLSAgICAweDEuOWRkODNjN2M5ZTEyOHAtMgotICB9LAotICB7IC8vIEVudHJ5IDYwMAotICAgIC0weDEuYjVmM2Q2YWZiZTZmNGI3NTY4NDJiOGVlZTVjODVhMzFwLTIsCi0gICAgLTB4MS45ZGQ4M2M3YzllMTI4cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAxCi0gICAgMHgxLmZkYmQ1ZjA1OTZiZGVlZGQ4MmQ1MjIzYzNjMWIxOTI1cC0yLAotICAgIDB4MS5kOGY3MjA4ZTZiODJlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAyCi0gICAgLTB4MS5mZGJkNWYwNTk2YmRlZWRkODJkNTIyM2MzYzFiMTkyNXAtMiwKLSAgICAtMHgxLmQ4ZjcyMDhlNmI4MmVwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDMKLSAgICAweDEuMjRlM2UwMTdhMDk4ZWNmNGRlNDhiY2VlYjAyNjc0M2FwLTEsCi0gICAgMHgxLjBhMGIwMjUwMWM3OTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDQKLSAgICAtMHgxLjI0ZTNlMDE3YTA5OGVjZjRkZTQ4YmNlZWIwMjY3NDNhcC0xLAotICAgIC0weDEuMGEwYjAyNTAxYzc5OXAtMQotICB9LAotICB7IC8vIEVudHJ5IDYwNQotICAgIDB4MS42ZDM5NWU0OTVmNzc4Njc4YjllYTBkNDgwOGM3MjIwYXAtMSwKLSAgICAweDEuM2QzZTM1ODM0ZmFjY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDYwNgotICAgIC0weDEuNmQzOTVlNDk1Zjc3ODY3OGI5ZWEwZDQ4MDhjNzIyMGFwLTEsCi0gICAgLTB4MS4zZDNlMzU4MzRmYWNjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA3Ci0gICAgMHgxLjhlZTkxNjM5MmUwM2YyMzM1MDMzYTQxYjNiMDIwNmU0cC0xLAotICAgIDB4MS41MmUxZjZhZDljMjdjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA4Ci0gICAgLTB4MS44ZWU5MTYzOTJlMDNmMjMzNTAzM2E0MWIzYjAyMDZlNHAtMSwKLSAgICAtMHgxLjUyZTFmNmFkOWMyN2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDkKLSAgICAweDEuYjJlNDc1MDYzMWM0Y2UyODNlZjg3NTNmYTFlZGYzMjRwLTEsCi0gICAgMHgxLjY4ODViN2Q3ZThhMmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTAKLSAgICAtMHgxLmIyZTQ3NTA2MzFjNGNlMjgzZWY4NzUzZmExZWRmMzI0cC0xLAotICAgIC0weDEuNjg4NWI3ZDdlOGEyY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDYxMQotICAgIDB4MS5kOThlNDA4YWMyMDdlNThlMTVmMDE4NWQ0YjEwY2Y3MXAtMSwKLSAgICAweDEuN2UyOTc5MDIzNTFkY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDYxMgotICAgIC0weDEuZDk4ZTQwOGFjMjA3ZTU4ZTE1ZjAxODVkNGIxMGNmNzFwLTEsCi0gICAgLTB4MS43ZTI5NzkwMjM1MWRjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjEzCi0gICAgMHgxLjAxYWVlZWQwNGNiYWNkOGViNmJjMDk0NjY0ZGI3NzYzcDAsCi0gICAgMHgxLjkzY2QzYTJjODE5OGNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTQKLSAgICAtMHgxLjAxYWVlZWQwNGNiYWNkOGViNmJjMDk0NjY0ZGI3NzYzcDAsCi0gICAgLTB4MS45M2NkM2EyYzgxOThjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE1Ci0gICAgMHgxLjE4NzJhMWFhYTdlMjI2OGNiOTQ2ZmNlYjgzZjBlYTVlcDAsCi0gICAgMHgxLmE5NzBmYjU2Y2UxM2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTYKLSAgICAtMHgxLjE4NzJhMWFhYTdlMjI2OGNiOTQ2ZmNlYjgzZjBlYTVlcDAsCi0gICAgLTB4MS5hOTcwZmI1NmNlMTNjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE3Ci0gICAgMHgxLjMxNmM4YjA2OGE3YWE0Y2I3N2JjM2YzOTkyMWMyYzhkcDAsCi0gICAgMHgxLmJmMTRiYzgxMWE4ZWNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTgKLSAgICAtMHgxLjMxNmM4YjA2OGE3YWE0Y2I3N2JjM2YzOTkyMWMyYzhkcDAsCi0gICAgLTB4MS5iZjE0YmM4MTFhOGVjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE5Ci0gICAgMHgxLjRkMGRmMWZjMWQzNDJlODY3ZTQ5ZjFmNmRkYWNlZGFhcDAsCi0gICAgMHgxLmQ0Yjg3ZGFiNjcwOWNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjAKLSAgICAtMHgxLjRkMGRmMWZjMWQzNDJlODY3ZTQ5ZjFmNmRkYWNlZGFhcDAsCi0gICAgLTB4MS5kNGI4N2RhYjY3MDljcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjIxCi0gICAgMHgxLjZiZTcwMmUxZjZjZDAwMTZiYTE2NzdhOWNkMzNmMTM5cDAsCi0gICAgMHgxLmVhNWMzZWQ1YjM4NGNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjIKLSAgICAtMHgxLjZiZTcwMmUxZjZjZDAwMTZiYTE2NzdhOWNkMzNmMTM5cDAsCi0gICAgLTB4MS5lYTVjM2VkNWIzODRjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjIzCi0gICAgMHgxLmQ3NGNhZjk5MTJkYzdkOTY2OWIwMDkyNmFhMWFkZTExcDAsCi0gICAgMHgxLjEyYmQ5MTczYzA3YWJwMAotICB9LAotICB7IC8vIEVudHJ5IDYyNAotICAgIC0weDEuZDc0Y2FmOTkxMmRjN2Q5NjY5YjAwOTI2YWExYWRlMTFwMCwKLSAgICAtMHgxLjEyYmQ5MTczYzA3YWJwMAotICB9LAotICB7IC8vIEVudHJ5IDYyNQotICAgIDB4MS4xYjQ4YTM1YjFiMjgzYmJjODJiYjA0NGU5OWM0ZDliMXAxLAotICAgIDB4MS4yNTdiMjJlNzgwZjU2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjYKLSAgICAtMHgxLjFiNDhhMzViMWIyODNiYmM4MmJiMDQ0ZTk5YzRkOWIxcDEsCi0gICAgLTB4MS4yNTdiMjJlNzgwZjU2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjcKLSAgICAweDEuNWQ2MDNkNzUxNzY4ZmNkOGFmODJiMzg3NDY4ODg1MzBwMSwKLSAgICAweDEuMzgzOGI0NWI0MTcwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI4Ci0gICAgLTB4MS41ZDYwM2Q3NTE3NjhmY2Q4YWY4MmIzODc0Njg4ODUzMHAxLAotICAgIC0weDEuMzgzOGI0NWI0MTcwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI5Ci0gICAgMHgxLmMwOGNhZWM1Y2Y5YjFiNTRiMDQ1MjI4YjNlZWIyNDY5cDEsCi0gICAgMHgxLjRhZjY0NWNmMDFlYWNwMAotICB9LAotICB7IC8vIEVudHJ5IDYzMAotICAgIC0weDEuYzA4Y2FlYzVjZjliMWI1NGIwNDUyMjhiM2VlYjI0NjlwMSwKLSAgICAtMHgxLjRhZjY0NWNmMDFlYWNwMAotICB9LAotICB7IC8vIEVudHJ5IDYzMQotICAgIDB4MS4zNDI5ZTYxYTVkMjBiMTc1ZDQ1YzJhNjc1YTM4NmJhM3AyLAotICAgIDB4MS41ZGIzZDc0MmMyNjU3cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzIKLSAgICAtMHgxLjM0MjllNjFhNWQyMGIxNzVkNDVjMmE2NzVhMzg2YmEzcDIsCi0gICAgLTB4MS41ZGIzZDc0MmMyNjU3cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzMKLSAgICAweDEuZTNhMzcyOWIzZThhODNkNDRhNzZlMzQyZDZiM2ZjYmZwMiwKLSAgICAweDEuNzA3MTY4YjY4MmUwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM0Ci0gICAgLTB4MS5lM2EzNzI5YjNlOGE4M2Q0NGE3NmUzNDJkNmIzZmNiZnAyLAotICAgIC0weDEuNzA3MTY4YjY4MmUwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM1Ci0gICAgMHgxLjExZDg3MTQ2YzJkYTM5NDA4ZTg2MDgzYmYxNDcxYzhicDQsCi0gICAgMHgxLjgzMmVmYTJhNDM1YWRwMAotICB9LAotICB7IC8vIEVudHJ5IDYzNgotICAgIC0weDEuMTFkODcxNDZjMmRhMzk0MDhlODYwODNiZjE0NzFjOGJwNCwKLSAgICAtMHgxLjgzMmVmYTJhNDM1YWRwMAotICB9LAotICB7IC8vIEVudHJ5IDYzNwotICAgIC0weDEuMGQ3MThjZmM4MjM0OGFiOTc1NGYzZDZiNWUwZWE0OTlwNiwKLSAgICAweDEuOTVlYzhiOWUwM2Q1OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM4Ci0gICAgMHgxLjBkNzE4Y2ZjODIzNDhhYjk3NTRmM2Q2YjVlMGVhNDk5cDYsCi0gICAgLTB4MS45NWVjOGI5ZTAzZDU4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzkKLSAgICAtMHgxLjZhN2UxZjY0MDdlZTYxMzk3ZDAxNmQ2OTFiYjYxZDE3cDMsCi0gICAgMHgxLmE4YWExZDExYzQ0ZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDY0MAotICAgIDB4MS42YTdlMWY2NDA3ZWU2MTM5N2QwMTZkNjkxYmI2MWQxN3AzLAotICAgIC0weDEuYThhYTFkMTFjNDRmZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQxCi0gICAgMHgxLjlmMzllYTViYmU0NzQ5ZTk2MmE4MDdjMmRjMTFjODI1cDAsCi0gICAgMHgxLjA0YWZmNmQzMzA5NDJwMAotICB9LAotICB7IC8vIEVudHJ5IDY0MgotICAgIC0weDEuOWYzOWVhNWJiZTQ3NDllOTYyYTgwN2MyZGMxMWM4MjVwMCwKLSAgICAtMHgxLjA0YWZmNmQzMzA5NDJwMAotICB9LAotICB7IC8vIEVudHJ5IDY0MwotICAgIDB4MS45ZjNjNGI4NDY5Zjg1M2I4NTA3NDU1NzE3MzI3YzMxMXAwLAotICAgIDB4MS4wNGIwOWU5OGRjZGI0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDQKLSAgICAtMHgxLjlmM2M0Yjg0NjlmODUzYjg1MDc0NTU3MTczMjdjMzExcDAsCi0gICAgLTB4MS4wNGIwOWU5OGRjZGI0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDUKLSAgICAweDEuOWYzZWFjYjIyNGMyMDg2ZWYzOTFiMGRmYWQyZjEwMTBwMCwKLSAgICAweDEuMDRiMTQ2NWU4OTIyNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ2Ci0gICAgLTB4MS45ZjNlYWNiMjI0YzIwODZlZjM5MWIwZGZhZDJmMTAxMHAwLAotICAgIC0weDEuMDRiMTQ2NWU4OTIyNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ3Ci0gICAgMHgxLjlmNDEwZGU0ZWViNjk1OTBjYWVlODVlODg2ZjQ3OGE4cDAsCi0gICAgMHgxLjA0YjFlZTI0MzU2OThwMAotICB9LAotICB7IC8vIEVudHJ5IDY0OAotICAgIC0weDEuOWY0MTBkZTRlZWI2OTU5MGNhZWU4NWU4ODZmNDc4YThwMCwKLSAgICAtMHgxLjA0YjFlZTI0MzU2OThwMAotICB9LAotICB7IC8vIEVudHJ5IDY0OQotICAgIDB4MS45ZjQzNmYxY2M3ZTgyOGY3NTI4MTlhZjFlMmY0YjZhMnAwLAotICAgIDB4MS4wNGIyOTVlOWUxYjBhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTAKLSAgICAtMHgxLjlmNDM2ZjFjYzdlODI4Zjc1MjgxOWFmMWUyZjRiNmEycDAsCi0gICAgLTB4MS4wNGIyOTVlOWUxYjBhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTEKLSAgICAweDEuOWY0NWQwNTliMDY4ZjBkMjA1NDg1YWQ2NDgyMjNlNmRwMCwKLSAgICAweDEuMDRiMzNkYWY4ZGY3Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUyCi0gICAgLTB4MS45ZjQ1ZDA1OWIwNjhmMGQyMDU0ODVhZDY0ODIyM2U2ZHAwLAotICAgIC0weDEuMDRiMzNkYWY4ZGY3Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUzCi0gICAgMHgxLjlmNDgzMTliYTg0YjFiYTY1ZjQ1MmNmZTY1ZTAyZDBlcDAsCi0gICAgMHgxLjA0YjNlNTc1M2EzZWVwMAotICB9LAotICB7IC8vIEVudHJ5IDY1NAotICAgIC0weDEuOWY0ODMxOWJhODRiMWJhNjVmNDUyY2ZlNjVlMDJkMGVwMCwKLSAgICAtMHgxLjA0YjNlNTc1M2EzZWVwMAotICB9LAotICB7IC8vIEVudHJ5IDY1NQotICAgIDB4MS45ZjRhOTJlMmFmYTBkODRmZGY3ZGRiYWFkMzAyZjE1MHAwLAotICAgIDB4MS4wNGI0OGQzYWU2ODYwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTYKLSAgICAtMHgxLjlmNGE5MmUyYWZhMGQ4NGZkZjdkZGJhYWQzMDJmMTUwcDAsCi0gICAgLTB4MS4wNGI0OGQzYWU2ODYwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTcKLSAgICAweDEuOWY0Y2Y0MmVjNjdiYTdhZDBkYjJiZTI0OGE4NzBiZmVwMCwKLSAgICAweDEuMDRiNTM1MDA5MmNjZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU4Ci0gICAgLTB4MS45ZjRjZjQyZWM2N2JhN2FkMGRiMmJlMjQ4YTg3MGJmZXAwLAotICAgIC0weDEuMDRiNTM1MDA5MmNjZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU5Ci0gICAgLTB4MS5wLTEwNzQsCi0gICAgLTB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjYwCi0gICAgMHgxLnAtMTA3NCwKLSAgICAweDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDY2MQotICAgIC0wLjAsCi0gICAgLTAuMAotICB9LAotICB7IC8vIEVudHJ5IDY2MgotICAgIDB4MS5wLTEwNzQsCi0gICAgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjMKLSAgICAtMHgxLnAtMTA3NCwKLSAgICAtMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjQKLSAgICAweDEuNGQ4MmI2OGNhYzE5ZTZkMDY1YzVmMWFhNzYyMWMwOGNwLTEsCi0gICAgMHgxLjI3OWE3NDU5MDMzMWJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjUKLSAgICAtMHgxLjRkODJiNjhjYWMxOWU2ZDA2NWM1ZjFhYTc2MjFjMDhjcC0xLAotICAgIC0weDEuMjc5YTc0NTkwMzMxYnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY2NgotICAgIDB4MS40ZDgyYjY4Y2FjMTlmZDlhNWIwYzkxMmQ5MDkzYWE0YXAtMSwKLSAgICAweDEuMjc5YTc0NTkwMzMxY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDY2NwotICAgIC0weDEuNGQ4MmI2OGNhYzE5ZmQ5YTViMGM5MTJkOTA5M2FhNGFwLTEsCi0gICAgLTB4MS4yNzlhNzQ1OTAzMzFjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY4Ci0gICAgMHgxLjRkODJiNjhjYWMxYTE0NjQ1MDUzMzBiMGFiZjMxNmJmcC0xLAotICAgIDB4MS4yNzlhNzQ1OTAzMzFkcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY5Ci0gICAgLTB4MS40ZDgyYjY4Y2FjMWExNDY0NTA1MzMwYjBhYmYzMTZiZnAtMSwKLSAgICAtMHgxLjI3OWE3NDU5MDMzMWRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzAKLSAgICAtMHgxLjg5NzEyZWVjYTMyYmU5N2RiYTJjYTNmOWI4Mzc5MTU0cDIsCi0gICAgMHgxLmJiNjdhZTg1ODRjYTlwMAotICB9LAotICB7IC8vIEVudHJ5IDY3MQotICAgIDB4MS44OTcxMmVlY2EzMmJlOTdkYmEyY2EzZjliODM3OTE1NHAyLAotICAgIC0weDEuYmI2N2FlODU4NGNhOXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcyCi0gICAgLTB4MS44OTcxMmVlY2EzMmI0ZTUyOGQyNTYzNWE0MjkzYmUxZHAyLAotICAgIDB4MS5iYjY3YWU4NTg0Y2FhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzMKLSAgICAweDEuODk3MTJlZWNhMzJiNGU1MjhkMjU2MzVhNDI5M2JlMWRwMiwKLSAgICAtMHgxLmJiNjdhZTg1ODRjYWFwMAotICB9LAotICB7IC8vIEVudHJ5IDY3NAotICAgIC0weDEuODk3MTJlZWNhMzJhYjMyNzYwMWUyMmJiNDQyY2RjMzdwMiwKLSAgICAweDEuYmI2N2FlODU4NGNhYnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc1Ci0gICAgMHgxLjg5NzEyZWVjYTMyYWIzMjc2MDFlMjJiYjQ0MmNkYzM3cDIsCi0gICAgLTB4MS5iYjY3YWU4NTg0Y2FicDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzYKLSAgICAweDEuZGVmNDllYWFiMzdhMDBmOTBjYjQ0NTQ3MTBlNGU1NDVwLTIsCi0gICAgMHgxLmJmZmZmZmZmZmZmZmZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzcKLSAgICAtMHgxLmRlZjQ5ZWFhYjM3YTAwZjkwY2I0NDU0NzEwZTRlNTQ1cC0yLAotICAgIC0weDEuYmZmZmZmZmZmZmZmZnAtMgotICB9LAotICB7IC8vIEVudHJ5IDY3OAotICAgIDB4MS5kZWY0OWVhYWIzN2ExNDc5MjMxZTg5OTUwOWVjZjI2Y3AtMiwKLSAgICAweDEuY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDY3OQotICAgIC0weDEuZGVmNDllYWFiMzdhMTQ3OTIzMWU4OTk1MDllY2YyNmNwLTIsCi0gICAgLTB4MS5jcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgwCi0gICAgMHgxLmRlZjQ5ZWFhYjM3YTI3ZjkzOTg4Y2RlMzAzM2RmNzJjcC0yLAotICAgIDB4MS5jMDAwMDAwMDAwMDAxcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgxCi0gICAgLTB4MS5kZWY0OWVhYWIzN2EyN2Y5Mzk4OGNkZTMwMzNkZjcyY3AtMiwKLSAgICAtMHgxLmMwMDAwMDAwMDAwMDFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODIKLSAgICAweDEuYTQ2Y2IyYmU2YTBiMDJlMmRmZmZjOTVlNmRjYjI4NDJwLTEsCi0gICAgMHgxLjVmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODMKLSAgICAtMHgxLmE0NmNiMmJlNmEwYjAyZTJkZmZmYzk1ZTZkY2IyODQycC0xLAotICAgIC0weDEuNWZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY4NAotICAgIDB4MS5hNDZjYjJiZTZhMGIxZGFjYjM2MjY5YzQxYTRhOTE0N3AtMSwKLSAgICAweDEuNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDY4NQotICAgIC0weDEuYTQ2Y2IyYmU2YTBiMWRhY2IzNjI2OWM0MWE0YTkxNDdwLTEsCi0gICAgLTB4MS42cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg2Ci0gICAgMHgxLmE0NmNiMmJlNmEwYjM4NzY4NmM1MGEyOWM4MjllZTQycC0xLAotICAgIDB4MS42MDAwMDAwMDAwMDAxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg3Ci0gICAgLTB4MS5hNDZjYjJiZTZhMGIzODc2ODZjNTBhMjljODI5ZWU0MnAtMSwKLSAgICAtMHgxLjYwMDAwMDAwMDAwMDFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODgKLSAgICAweDEuM2Q2ZGM5NTZlYWM3OWE4NWI0NzQ1NmZhMGM5NDZiMTNwMSwKLSAgICAweDEuMmZmZmZmZmZmZmZmZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg5Ci0gICAgLTB4MS4zZDZkYzk1NmVhYzc5YTg1YjQ3NDU2ZmEwYzk0NmIxM3AxLAotICAgIC0weDEuMmZmZmZmZmZmZmZmZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkwCi0gICAgMHgxLjNkNmRjOTU2ZWFjN2QzYjhkNmViMjE3NDExMGQxZGRjcDEsCi0gICAgMHgxLjNwMAotICB9LAotICB7IC8vIEVudHJ5IDY5MQotICAgIC0weDEuM2Q2ZGM5NTZlYWM3ZDNiOGQ2ZWIyMTc0MTEwZDFkZGNwMSwKLSAgICAtMHgxLjNwMAotICB9LAotICB7IC8vIEVudHJ5IDY5MgotICAgIDB4MS4zZDZkYzk1NmVhYzgwY2ViZjk2MWViZWUyNzQxMDdwMSwKLSAgICAweDEuMzAwMDAwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkzCi0gICAgLTB4MS4zZDZkYzk1NmVhYzgwY2ViZjk2MWViZWUyNzQxMDdwMSwKLSAgICAtMHgxLjMwMDAwMDAwMDAwMDFwMAotICB9LAotICB7IC8vIEVudHJ5IDY5NAotICAgIC0weDEuYjJkODlhOTM4Mjk1MzZjYzkyODNjZmM3ZTAxZmUyYTNwLTEsCi0gICAgMHgxLjM3ZmZmZmZmZmZmZmZwMQotICB9LAotICB7IC8vIEVudHJ5IDY5NQotICAgIDB4MS5iMmQ4OWE5MzgyOTUzNmNjOTI4M2NmYzdlMDFmZTJhM3AtMSwKLSAgICAtMHgxLjM3ZmZmZmZmZmZmZmZwMQotICB9LAotICB7IC8vIEVudHJ5IDY5NgotICAgIC0weDEuYjJkODlhOTM4Mjk0YzhhMjYwNGRiOWY3YWE1NmEwZjhwLTEsCi0gICAgMHgxLjM4MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk3Ci0gICAgMHgxLmIyZDg5YTkzODI5NGM4YTI2MDRkYjlmN2FhNTZhMGY4cC0xLAotICAgIC0weDEuMzgwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTgKLSAgICAtMHgxLmIyZDg5YTkzODI5NDVhNzgyZTE3YTQyNzhiZjE3NzM2cC0xLAotICAgIDB4MS4zODAwMDAwMDAwMDAxcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTkKLSAgICAweDEuYjJkODlhOTM4Mjk0NWE3ODJlMTdhNDI3OGJmMTc3MzZwLTEsCi0gICAgLTB4MS4zODAwMDAwMDAwMDAxcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDAKLSAgICAweDEuMDZmOGQwMTRiZjA4M2NkMzY2NTBlOTQ2NmRjMDg2ZGNwLTQsCi0gICAgMHgxLjA2OWM4YjQ2YjM3OTJwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDEKLSAgICAtMHgxLjA2ZjhkMDE0YmYwODNjZDM2NjUwZTk0NjZkYzA4NmRjcC00LAotICAgIC0weDEuMDY5YzhiNDZiMzc5MnAtNAotICB9LAotICB7IC8vIEVudHJ5IDcwMgotICAgIDB4MS4wODBmNzNiMDcwNTFlMzdiMjNkYTMzMzdjMGFlZDM1M3AtMywKLSAgICAweDEuMDY5YzhiNDZiMzc5MnAtMwotICB9LAotICB7IC8vIEVudHJ5IDcwMwotICAgIC0weDEuMDgwZjczYjA3MDUxZTM3YjIzZGEzMzM3YzBhZWQzNTNwLTMsCi0gICAgLTB4MS4wNjljOGI0NmIzNzkycC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA0Ci0gICAgMHgxLjhlZDkxNDJmYzkxODg4OGUyOTRkM2ZmNWQwMTQ5NDE1cC0zLAotICAgIDB4MS44OWVhZDBlYTBkMzVicC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA1Ci0gICAgLTB4MS44ZWQ5MTQyZmM5MTg4ODhlMjk0ZDNmZjVkMDE0OTQxNXAtMywKLSAgICAtMHgxLjg5ZWFkMGVhMGQzNWJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDYKLSAgICAweDEuMGM4NjQwODNkMWU3Y2E1NTUxYmNlMjQ5NzI4NzgxMjdwLTIsCi0gICAgMHgxLjA2OWM4YjQ2YjM3OTJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDcKLSAgICAtMHgxLjBjODY0MDgzZDFlN2NhNTU1MWJjZTI0OTcyODc4MTI3cC0yLAotICAgIC0weDEuMDY5YzhiNDZiMzc5MnAtMgotICB9LAotICB7IC8vIEVudHJ5IDcwOAotICAgIDB4MS41M2ZkY2RmZDM3ZjA0Mzc1ZDlmZmI2YWViYWZlN2RmOHAtMiwKLSAgICAweDEuNDg0M2FlMTg2MDU3NnAtMgotICB9LAotICB7IC8vIEVudHJ5IDcwOQotICAgIC0weDEuNTNmZGNkZmQzN2YwNDM3NWQ5ZmZiNmFlYmFmZTdkZjhwLTIsCi0gICAgLTB4MS40ODQzYWUxODYwNTc2cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzEwCi0gICAgMHgxLjllOTI1N2U2YjYyYTBhOGRlNTY1MGM4MzdmN2Y2MjI3cC0yLAotICAgIDB4MS44OWVhZDBlYTBkMzVhcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzExCi0gICAgLTB4MS45ZTkyNTdlNmI2MmEwYThkZTU2NTBjODM3ZjdmNjIyN3AtMiwKLSAgICAtMHgxLjg5ZWFkMGVhMGQzNWFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTIKLSAgICAweDEuZWQyMWU1OTk3MmIwN2M3MDUzZjRmMzVkZDU1MDI0OTNwLTIsCi0gICAgMHgxLmNiOTFmM2JiYmExM2VwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTMKLSAgICAtMHgxLmVkMjFlNTk5NzJiMDdjNzA1M2Y0ZjM1ZGQ1NTAyNDkzcC0yLAotICAgIC0weDEuY2I5MWYzYmJiYTEzZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDcxNAotICAgIDB4MS4yMDVhNjAwOWQ1ZTNkZGUyNWQ2ZGViN2Q1MjFmZjE0MHAtMSwKLSAgICAweDEuMDY5YzhiNDZiMzc5MXAtMQotICB9LAotICB7IC8vIEVudHJ5IDcxNQotICAgIC0weDEuMjA1YTYwMDlkNWUzZGRlMjVkNmRlYjdkNTIxZmYxNDBwLTEsCi0gICAgLTB4MS4wNjljOGI0NmIzNzkxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE2Ci0gICAgMHgxLjRkNDY2YWNjYWQ0OGRkOTU4YWIxNjhmNWNmYzZjOTljcC0xLAotICAgIDB4MS4yNzcwMWNhZjg5ZTgzcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzE3Ci0gICAgLTB4MS40ZDQ2NmFjY2FkNDhkZDk1OGFiMTY4ZjVjZmM2Yzk5Y3AtMSwKLSAgICAtMHgxLjI3NzAxY2FmODllODNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTgKLSAgICAweDEuN2UxZDkzNmY0ZDYxNTJmYjc0ODA5NTk1NzE3ZmEwNmRwLTEsCi0gICAgMHgxLjQ4NDNhZTE4NjA1NzVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTkKLSAgICAtMHgxLjdlMWQ5MzZmNGQ2MTUyZmI3NDgwOTU5NTcxN2ZhMDZkcC0xLAotICAgIC0weDEuNDg0M2FlMTg2MDU3NXAtMQotICB9LAotICB7IC8vIEVudHJ5IDcyMAotICAgIDB4MS5iM2RmMzg2ZjE4MjI3ZWJjZWU5MDVmZGM1MWNkY2JlMnAtMSwKLSAgICAweDEuNjkxNzNmODEzNmM2N3AtMQotICB9LAotICB7IC8vIEVudHJ5IDcyMQotICAgIC0weDEuYjNkZjM4NmYxODIyN2ViY2VlOTA1ZmRjNTFjZGNiZTJwLTEsCi0gICAgLTB4MS42OTE3M2Y4MTM2YzY3cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIyCi0gICAgMHgxLmVmZDgyNzQyZDc3OGMxOGE4Yzk2OWJlMGNmMDkwMmIzcC0xLAotICAgIDB4MS44OWVhZDBlYTBkMzU5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIzCi0gICAgLTB4MS5lZmQ4Mjc0MmQ3NzhjMThhOGM5NjliZTBjZjA5MDJiM3AtMSwKLSAgICAtMHgxLjg5ZWFkMGVhMGQzNTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjQKLSAgICAweDEuMTllMjZiNWVjZDVjMDQwYTFkODBjMTU4M2Y3OGY3ZDdwMCwKLSAgICAweDEuYWFiZTYyNTJlM2E0YnAtMQotICB9LAotICB7IC8vIEVudHJ5IDcyNQotICAgIC0weDEuMTllMjZiNWVjZDVjMDQwYTFkODBjMTU4M2Y3OGY3ZDdwMCwKLSAgICAtMHgxLmFhYmU2MjUyZTNhNGJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjYKLSAgICAweDEuNDEwMzhiNzBiZTBmYTE0NzhmOThhMmU5ZjI2NjU1MGFwMCwKLSAgICAweDEuY2I5MWYzYmJiYTEzZHAtMQotICB9LAotICB7IC8vIEVudHJ5IDcyNwotICAgIC0weDEuNDEwMzhiNzBiZTBmYTE0NzhmOThhMmU5ZjI2NjU1MGFwMCwKLSAgICAtMHgxLmNiOTFmM2JiYmExM2RwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MjgKLSAgICAweDEuNmVmZWM4YzFlNDkzYjUxN2VmZTVlYjkyNDY0ZmRmNDJwMCwKLSAgICAweDEuZWM2NTg1MjQ5MDgyZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDcyOQotICAgIC0weDEuNmVmZWM4YzFlNDkzYjUxN2VmZTVlYjkyNDY0ZmRmNDJwMCwKLSAgICAtMHgxLmVjNjU4NTI0OTA4MmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzAKLSAgICAweDEuYTY0YzdjOWQ2NTM0NjJkOGRlZDNlNjU4ZmU0ZWZiY2JwMCwKLSAgICAweDEuMDY5YzhiNDZiMzc5MXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMxCi0gICAgLTB4MS5hNjRjN2M5ZDY1MzQ2MmQ4ZGVkM2U2NThmZTRlZmJjYnAwLAotICAgIC0weDEuMDY5YzhiNDZiMzc5MXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMyCi0gICAgMHgxLmVhYjQzZTBlNWU4N2MyNmZkNDMyZTA2MzAxZTE5ZTE1cDAsCi0gICAgMHgxLjE3MDY1M2ZiMWViMGFwMAotICB9LAotICB7IC8vIEVudHJ5IDczMwotICAgIC0weDEuZWFiNDNlMGU1ZTg3YzI2ZmQ0MzJlMDYzMDFlMTllMTVwMCwKLSAgICAtMHgxLjE3MDY1M2ZiMWViMGFwMAotICB9LAotICB7IC8vIEVudHJ5IDczNAotICAgIDB4MS4yMTI3N2I5N2MwMTM3NmUzNjE5ODgyNTBiNTYzNjRjZnAxLAotICAgIDB4MS4yNzcwMWNhZjg5ZTgzcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzUKLSAgICAtMHgxLjIxMjc3Yjk3YzAxMzc2ZTM2MTk4ODI1MGI1NjM2NGNmcDEsCi0gICAgLTB4MS4yNzcwMWNhZjg5ZTgzcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzYKLSAgICAweDEuNWJkMTNkZGEwNzdjY2UyNDlkYjI3OTRkNjk0MDc1MDRwMSwKLSAgICAweDEuMzdkOWU1NjNmNTFmY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM3Ci0gICAgLTB4MS41YmQxM2RkYTA3N2NjZTI0OWRiMjc5NGQ2OTQwNzUwNHAxLAotICAgIC0weDEuMzdkOWU1NjNmNTFmY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM4Ci0gICAgMHgxLmFmNDY0M2U5MzcxZjg4ZTc4YzI0ZDgzYmQ2YjhlMjNlcDEsCi0gICAgMHgxLjQ4NDNhZTE4NjA1NzVwMAotICB9LAotICB7IC8vIEVudHJ5IDczOQotICAgIC0weDEuYWY0NjQzZTkzNzFmODhlNzhjMjRkODNiZDZiOGUyM2VwMSwKLSAgICAtMHgxLjQ4NDNhZTE4NjA1NzVwMAotICB9LAotICB7IC8vIEVudHJ5IDc0MAotICAgIDB4MS4xODY2ZmU4NDVlNzU5ZDE0ZGE0NzhjNmNmNmYyYmU2NXAyLAotICAgIDB4MS41OGFkNzZjY2NiOGVlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDEKLSAgICAtMHgxLjE4NjZmZTg0NWU3NTlkMTRkYTQ3OGM2Y2Y2ZjJiZTY1cDIsCi0gICAgLTB4MS41OGFkNzZjY2NiOGVlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDIKLSAgICAweDEuOGJkY2Q1NGJkNTk4MGIzYTgwY2VmYzkxNGM0ODE0NzVwMiwKLSAgICAweDEuNjkxNzNmODEzNmM2N3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQzCi0gICAgLTB4MS44YmRjZDU0YmQ1OTgwYjNhODBjZWZjOTE0YzQ4MTQ3NXAyLAotICAgIC0weDEuNjkxNzNmODEzNmM2N3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQ0Ci0gICAgMHgxLjRiYjZhNjRlMDYyNWI5NzRjZGVkNjE1MDU2ZmZkNjFjcDMsCi0gICAgMHgxLjc5ODEwODM1YTFmZTBwMAotICB9LAotICB7IC8vIEVudHJ5IDc0NQotICAgIC0weDEuNGJiNmE2NGUwNjI1Yjk3NGNkZWQ2MTUwNTZmZmQ2MWNwMywKLSAgICAtMHgxLjc5ODEwODM1YTFmZTBwMAotICB9LAotICB7IC8vIEVudHJ5IDc0NgotICAgIDB4MS5mMmYwNWNmYjY1NmEzOWY2ZjJhOTBmNzkxMWIyNDA1MXA0LAotICAgIDB4MS44OWVhZDBlYTBkMzU5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDcKLSAgICAtMHgxLmYyZjA1Y2ZiNjU2YTM5ZjZmMmE5MGY3OTExYjI0MDUxcDQsCi0gICAgLTB4MS44OWVhZDBlYTBkMzU5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDgKLSAgICAtMHgxLmYyZjA1Y2ZiNjU3ZjU1ZjJiYzZkMjA0Mzc3YTY4NTQzcDQsCi0gICAgMHgxLjlhNTQ5OTllNzg2ZDJwMAotICB9LAotICB7IC8vIEVudHJ5IDc0OQotICAgIDB4MS5mMmYwNWNmYjY1N2Y1NWYyYmM2ZDIwNDM3N2E2ODU0M3A0LAotICAgIC0weDEuOWE1NDk5OWU3ODZkMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUwCi0gICAgLTB4MS40YmI2YTY0ZTA2MmE2ZGEzNTg3MGNmYjMzNTk1ZmJlNnAzLAotICAgIDB4MS5hYWJlNjI1MmUzYTRicDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTEKLSAgICAweDEuNGJiNmE2NGUwNjJhNmRhMzU4NzBjZmIzMzU5NWZiZTZwMywKLSAgICAtMHgxLmFhYmU2MjUyZTNhNGJwMAotICB9LAotICB7IC8vIEVudHJ5IDc1MgotICAgIC0weDEuOGJkY2Q1NGJkNTliNzMwMjhlNWYyNzY0OWNhNjdjYmFwMiwKLSAgICAweDEuYmIyODJiMDc0ZWRjNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzUzCi0gICAgMHgxLjhiZGNkNTRiZDU5YjczMDI4ZTVmMjc2NDljYTY3Y2JhcDIsCi0gICAgLTB4MS5iYjI4MmIwNzRlZGM0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTQKLSAgICAtMHgxLjE4NjZmZTg0NWU3NzVkOGM4ZjhiZjkxNjU2NDdmNmNicDIsCi0gICAgMHgxLmNiOTFmM2JiYmExM2RwMAotICB9LAotICB7IC8vIEVudHJ5IDc1NQotICAgIDB4MS4xODY2ZmU4NDVlNzc1ZDhjOGY4YmY5MTY1NjQ3ZjZjYnAyLAotICAgIC0weDEuY2I5MWYzYmJiYTEzZHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU2Ci0gICAgLTB4MS5hZjQ2NDNlOTM3MjFhZDgwOTVkZDI3ZjA4MjdlMTNlMHAxLAotICAgIDB4MS5kYmZiYmM3MDI1NGI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTcKLSAgICAweDEuYWY0NjQzZTkzNzIxYWQ4MDk1ZGQyN2YwODI3ZTEzZTBwMSwKLSAgICAtMHgxLmRiZmJiYzcwMjU0YjZwMAotICB9LAotICB7IC8vIEVudHJ5IDc1OAotICAgIC0weDEuNWJkMTNkZGEwNzdlNDI3ZDBjOWRjNmMwZTVkM2IxYjVwMSwKLSAgICAweDEuZWM2NTg1MjQ5MDgyZnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzU5Ci0gICAgMHgxLjViZDEzZGRhMDc3ZTQyN2QwYzlkYzZjMGU1ZDNiMWI1cDEsCi0gICAgLTB4MS5lYzY1ODUyNDkwODJmcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjAKLSAgICAtMHgxLjIxMjc3Yjk3YzAxNDg1ZjE3YmFjZGI4MDQzNzVlYmNkcDEsCi0gICAgMHgxLmZjY2Y0ZGQ4ZmJiYThwMAotICB9LAotICB7IC8vIEVudHJ5IDc2MQotICAgIDB4MS4yMTI3N2I5N2MwMTQ4NWYxN2JhY2RiODA0Mzc1ZWJjZHAxLAotICAgIC0weDEuZmNjZjRkZDhmYmJhOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYyCi0gICAgLTB4MS5lYWI0M2UwZTVlODkxNmQ0YzA4MzQ5YWJlOWUyYWJkM3AwLAotICAgIDB4MS4wNjljOGI0NmIzNzkxcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjMKLSAgICAweDEuZWFiNDNlMGU1ZTg5MTZkNGMwODM0OWFiZTllMmFiZDNwMCwKLSAgICAtMHgxLjA2OWM4YjQ2YjM3OTFwMQotICB9LAotICB7IC8vIEVudHJ5IDc2NAotICAgIC0weDEuYTY0YzdjOWQ2NTM1MzY0ZDYwNWJiOWU1MzE1MDcyZmZwMCwKLSAgICAweDEuMGVkMTZmYTBlOTE0ZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY1Ci0gICAgMHgxLmE2NGM3YzlkNjUzNTM2NGQ2MDViYjllNTMxNTA3MmZmcDAsCi0gICAgLTB4MS4wZWQxNmZhMGU5MTRlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjYKLSAgICAtMHgxLjZlZmVjOGMxZTQ5NDRhNDI1NTQxMjE5MzY0YTE1MDc4cDAsCi0gICAgMHgxLjE3MDY1M2ZiMWViMGJwMQotICB9LAotICB7IC8vIEVudHJ5IDc2NwotICAgIDB4MS42ZWZlYzhjMWU0OTQ0YTQyNTU0MTIxOTM2NGExNTA3OHAwLAotICAgIC0weDEuMTcwNjUzZmIxZWIwYnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzY4Ci0gICAgLTB4MS40MTAzOGI3MGJlMGZmNWI3YzRkOGYwNmIwZDRjZjUyNXAwLAotICAgIDB4MS4xZjNiMzg1NTU0NGM4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjkKLSAgICAweDEuNDEwMzhiNzBiZTBmZjViN2M0ZDhmMDZiMGQ0Y2Y1MjVwMCwKLSAgICAtMHgxLjFmM2IzODU1NTQ0YzhwMQotICB9LAotICB7IC8vIEVudHJ5IDc3MAotICAgIC0weDEuMTllMjZiNWVjZDVjMjk0MzQ4YmExN2ZlYzU0NTQ3OTJwMCwKLSAgICAweDEuMjc3MDFjYWY4OWU4NXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzcxCi0gICAgMHgxLjE5ZTI2YjVlY2Q1YzI5NDM0OGJhMTdmZWM1NDU0NzkycDAsCi0gICAgLTB4MS4yNzcwMWNhZjg5ZTg1cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzIKLSAgICAtMHgxLmVmZDgyNzQyZDc3OGM0YmNhMDdlMWU4NmNiYzYwNGIwcC0xLAotICAgIDB4MS4yZmE1MDEwOWJmODQycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzMKLSAgICAweDEuZWZkODI3NDJkNzc4YzRiY2EwN2UxZTg2Y2JjNjA0YjBwLTEsCi0gICAgLTB4MS4yZmE1MDEwOWJmODQycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzQKLSAgICAtMHgxLmIzZGYzODZmMTgyMjRhNjQwM2U1NWMxNmIzNmVmMTdmcC0xLAotICAgIDB4MS4zN2Q5ZTU2M2Y1MWZmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzUKLSAgICAweDEuYjNkZjM4NmYxODIyNGE2NDAzZTU1YzE2YjM2ZWYxN2ZwLTEsCi0gICAgLTB4MS4zN2Q5ZTU2M2Y1MWZmcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzYKLSAgICAtMHgxLjdlMWQ5MzZmNGQ2MGYxZTZmODhiNGEyNGRmOWM2NWY0cC0xLAotICAgIDB4MS40MDBlYzliZTJhYmJjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzcKLSAgICAweDEuN2UxZDkzNmY0ZDYwZjFlNmY4OGI0YTI0ZGY5YzY1ZjRwLTEsCi0gICAgLTB4MS40MDBlYzliZTJhYmJjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzgKLSAgICAtMHgxLjRkNDY2YWNjYWQ0ODU3NDE4ODgzNTEzMGU2OGU5YmFkcC0xLAotICAgIDB4MS40ODQzYWUxODYwNTc5cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzkKLSAgICAweDEuNGQ0NjZhY2NhZDQ4NTc0MTg4ODM1MTMwZTY4ZTliYWRwLTEsCi0gICAgLTB4MS40ODQzYWUxODYwNTc5cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODAKLSAgICAtMHgxLjIwNWE2MDA5ZDVlMzM3NzRmYTk4ZjlmNjE2YWNjODBmcC0xLAotICAgIDB4MS41MDc4OTI3Mjk1ZjM2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODEKLSAgICAweDEuMjA1YTYwMDlkNWUzMzc3NGZhOThmOWY2MTZhY2M4MGZwLTEsCi0gICAgLTB4MS41MDc4OTI3Mjk1ZjM2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODIKLSAgICAtMHgxLmVkMjFlNTk5NzJhZWY2NGEwNmU1NTNmMThkNjQ2MDkzcC0yLAotICAgIDB4MS41OGFkNzZjY2NiOGYzcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODMKLSAgICAweDEuZWQyMWU1OTk3MmFlZjY0YTA2ZTU1M2YxOGQ2NDYwOTNwLTIsCi0gICAgLTB4MS41OGFkNzZjY2NiOGYzcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODQKLSAgICAtMHgxLjllOTI1N2U2YjYyODRmNzNjZDFlMmVhZTMyMjBmMzEzcC0yLAotICAgIDB4MS42MGUyNWIyNzAxMmIwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODUKLSAgICAweDEuOWU5MjU3ZTZiNjI4NGY3M2NkMWUyZWFlMzIyMGYzMTNwLTIsCi0gICAgLTB4MS42MGUyNWIyNzAxMmIwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODYKLSAgICAtMHgxLjUzZmRjZGZkMzdlZTU1YmMxY2QxNjA0YjZhYjEzYjVmcC0yLAotICAgIDB4MS42OTE3M2Y4MTM2YzZkcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODcKLSAgICAweDEuNTNmZGNkZmQzN2VlNTViYzFjZDE2MDRiNmFiMTNiNWZwLTIsCi0gICAgLTB4MS42OTE3M2Y4MTM2YzZkcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODgKLSAgICAtMHgxLjBjODY0MDgzZDFlNWFhYTY4MTVhODVlMjVjNjYyZTk3cC0yLAotICAgIDB4MS43MTRjMjNkYjZjNjJhcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODkKLSAgICAweDEuMGM4NjQwODNkMWU1YWFhNjgxNWE4NWUyNWM2NjJlOTdwLTIsCi0gICAgLTB4MS43MTRjMjNkYjZjNjJhcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTAKLSAgICAtMHgxLjhlZDkxNDJmYzkxM2Y0NTBkY2NkYmRkMjdlZDExYTQwcC0zLAotICAgIDB4MS43OTgxMDgzNWExZmU3cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTEKLSAgICAweDEuOGVkOTE0MmZjOTEzZjQ1MGRjY2RiZGQyN2VkMTFhNDBwLTMsCi0gICAgLTB4MS43OTgxMDgzNWExZmU3cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTIKLSAgICAtMHgxLjA4MGY3M2IwNzA0Y2Y1NzA4MThhNjVkMWExMmQ1YmUxcC0zLAotICAgIDB4MS44MWI1ZWM4ZmQ3OWE0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTMKLSAgICAweDEuMDgwZjczYjA3MDRjZjU3MDgxOGE2NWQxYTEyZDViZTFwLTMsCi0gICAgLTB4MS44MWI1ZWM4ZmQ3OWE0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTQKLSAgICAtMHgxLjA2ZjhkMDE0YmYwOWFiODVmMmExOWQ4MGRhNWEyYzBicC00LAotICAgIDB4MS44OWVhZDBlYTBkMzVicDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTUKLSAgICAweDEuMDZmOGQwMTRiZjA5YWI4NWYyYTE5ZDgwZGE1YTJjMGJwLTQsCi0gICAgLTB4MS44OWVhZDBlYTBkMzVicDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTYKLSAgICAweDEuMGM4NjQwODNkMWU3ZjM5NTViMTIwNzFlMDY0NDQxOGJwLTIsCi0gICAgLTB4MS44MWI1ZWM4ZmQ3OTlmcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTcKLSAgICAtMHgxLjBjODY0MDgzZDFlN2YzOTU1YjEyMDcxZTA2NDQ0MThicC0yLAotICAgIDB4MS44MWI1ZWM4ZmQ3OTlmcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTgKLSAgICAweDEuMjA1YTYwMDlkNWUzZjc0ZGEzYTM3MmFjMTU3MjFlZjZwLTEsCi0gICAgLTB4MS43MTRjMjNkYjZjNjI2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OTkKLSAgICAtMHgxLjIwNWE2MDA5ZDVlM2Y3NGRhM2EzNzJhYzE1NzIxZWY2cC0xLAotICAgIDB4MS43MTRjMjNkYjZjNjI2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDAKLSAgICAweDEuZWZkODI3NDJkNzc4ZTZmMDRhZGVmYzNkMjFmOGJlOTZwLTEsCi0gICAgLTB4MS42MGUyNWIyNzAxMmFkcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDEKLSAgICAtMHgxLmVmZDgyNzQyZDc3OGU2ZjA0YWRlZmMzZDIxZjhiZTk2cC0xLAotICAgIDB4MS42MGUyNWIyNzAxMmFkcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDIKLSAgICAweDEuYTY0YzdjOWQ2NTM0NjhmYmM1MjYwZGNhNTAxZGRiODFwMCwKLSAgICAtMHgxLjUwNzg5MjcyOTVmMzRwMgotICB9LAotICB7IC8vIEVudHJ5IDgwMwotICAgIC0weDEuYTY0YzdjOWQ2NTM0NjhmYmM1MjYwZGNhNTAxZGRiODFwMCwKLSAgICAweDEuNTA3ODkyNzI5NWYzNHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODA0Ci0gICAgMHgxLmFmNDY0M2U5MzcxZjkzMTZkMzI1NGI4NjE5ZWRhNDg0cDEsCi0gICAgLTB4MS40MDBlYzliZTJhYmJicDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDUKLSAgICAtMHgxLmFmNDY0M2U5MzcxZjkzMTZkMzI1NGI4NjE5ZWRhNDg0cDEsCi0gICAgMHgxLjQwMGVjOWJlMmFiYmJwMgotICB9LAotICB7IC8vIEVudHJ5IDgwNgotICAgIDB4MS5mMmYwNWNmYjY1NmE5ZTRhMDg1YjAyN2QxODYwMzIzMHA0LAotICAgIC0weDEuMmZhNTAxMDliZjg0MnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODA3Ci0gICAgLTB4MS5mMmYwNWNmYjY1NmE5ZTRhMDg1YjAyN2QxODYwMzIzMHA0LAotICAgIDB4MS4yZmE1MDEwOWJmODQycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDgKLSAgICAtMHgxLjE4NjZmZTg0NWU3NzU1MzkyYTBhZGZmNTZhNjg4ZWFhcDIsCi0gICAgLTB4MS4xZjNiMzg1NTU0NGM5cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MDkKLSAgICAweDEuMTg2NmZlODQ1ZTc3NTUzOTJhMGFkZmY1NmE2ODhlYWFwMiwKLSAgICAweDEuMWYzYjM4NTU1NDRjOXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODEwCi0gICAgLTB4MS5lYWI0M2UwZTVlODk1OWU4ZjVhYzZjNGY5ZDlhODMzYnAwLAotICAgIC0weDEuMGVkMTZmYTBlOTE1MHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODExCi0gICAgMHgxLmVhYjQzZTBlNWU4OTU5ZThmNWFjNmM0ZjlkOWE4MzNicDAsCi0gICAgMHgxLjBlZDE2ZmEwZTkxNTBwMgotICB9LAotICB7IC8vIEVudHJ5IDgxMgotICAgIC0weDEuMTllMjZiNWVjZDVjZDY5YzMwYzNkYzVkOWZmZGU5ODZwMCwKLSAgICAtMHgxLmZjY2Y0ZGQ4ZmJiYWVwMQotICB9LAotICB7IC8vIEVudHJ5IDgxMwotICAgIDB4MS4xOWUyNmI1ZWNkNWNkNjljMzBjM2RjNWQ5ZmZkZTk4NnAwLAotICAgIDB4MS5mY2NmNGRkOGZiYmFlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTQKLSAgICAtMHgxLjRkNDY2YWNjYWQ0OWVjOTY5MzVjYWEyYTM1ZTQzOWYwcC0xLAotICAgIC0weDEuZGJmYmJjNzAyNTRiY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgODE1Ci0gICAgMHgxLjRkNDY2YWNjYWQ0OWVjOTY5MzVjYWEyYTM1ZTQzOWYwcC0xLAotICAgIDB4MS5kYmZiYmM3MDI1NGJjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTYKLSAgICAtMHgxLjUzZmRjZGZkMzdmMWVhMjE2ZTgxNTc1OGVkMDJhNTU3cC0yLAotICAgIC0weDEuYmIyODJiMDc0ZWRjYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODE3Ci0gICAgMHgxLjUzZmRjZGZkMzdmMWVhMjE2ZTgxNTc1OGVkMDJhNTU3cC0yLAotICAgIDB4MS5iYjI4MmIwNzRlZGNhcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MTgKLSAgICAtMHgxLjA2ZjhkMDE0YmYwZTk2NGU2MzRmMzdiY2RiZjY0NDkxcC00LAotICAgIC0weDEuOWE1NDk5OWU3ODZkOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODE5Ci0gICAgMHgxLjA2ZjhkMDE0YmYwZTk2NGU2MzRmMzdiY2RiZjY0NDkxcC00LAotICAgIDB4MS45YTU0OTk5ZTc4NmQ4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjAKLSAgICAweDEuOGVkOTE0MmZjOTE0ZmUwNjdiOTkxZDExZDcwODU5YjhwLTMsCi0gICAgLTB4MS43OTgxMDgzNWExZmU2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjEKLSAgICAtMHgxLjhlZDkxNDJmYzkxNGZlMDY3Yjk5MWQxMWQ3MDg1OWI4cC0zLAotICAgIDB4MS43OTgxMDgzNWExZmU2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjIKLSAgICAweDEuZWQyMWU1OTk3MmFlNTg5YWFhNGVlM2Q4MGMzYjdkZWZwLTIsCi0gICAgLTB4MS41OGFkNzZjY2NiOGY0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjMKLSAgICAtMHgxLmVkMjFlNTk5NzJhZTU4OWFhYTRlZTNkODBjM2I3ZGVmcC0yLAotICAgIDB4MS41OGFkNzZjY2NiOGY0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjQKLSAgICAweDEuYjNkZjM4NmYxODIwZmYzZGYyOTBmMDM2ZGI0NmYxM2JwLTEsCi0gICAgLTB4MS4zN2Q5ZTU2M2Y1MjAycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjUKLSAgICAtMHgxLmIzZGYzODZmMTgyMGZmM2RmMjkwZjAzNmRiNDZmMTNicC0xLAotICAgIDB4MS4zN2Q5ZTU2M2Y1MjAycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjYKLSAgICAweDEuNmVmZWM4YzFlNDkyNjE2ZmUyZmVjMGI3NjRmYTZlYjRwMCwKLSAgICAtMHgxLjE3MDY1M2ZiMWViMTBwMQotICB9LAotICB7IC8vIEVudHJ5IDgyNwotICAgIC0weDEuNmVmZWM4YzFlNDkyNjE2ZmUyZmVjMGI3NjRmYTZlYjRwMCwKLSAgICAweDEuMTcwNjUzZmIxZWIxMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODI4Ci0gICAgMHgxLjViZDEzZGRhMDc3YWRhOTE5MjdhYjczY2VkYWE4MjhkcDEsCi0gICAgLTB4MS5lYzY1ODUyNDkwODNjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjkKLSAgICAtMHgxLjViZDEzZGRhMDc3YWRhOTE5MjdhYjczY2VkYWE4MjhkcDEsCi0gICAgMHgxLmVjNjU4NTI0OTA4M2NwMAotICB9LAotICB7IC8vIEVudHJ5IDgzMAotICAgIDB4MS40YmI2YTY0ZTA2MWY2OWNmNzQwOTkzMTM4M2NjODBhMXAzLAotICAgIC0weDEuYWFiZTYyNTJlM2E1OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODMxCi0gICAgLTB4MS40YmI2YTY0ZTA2MWY2OWNmNzQwOTkzMTM4M2NjODBhMXAzLAotICAgIDB4MS5hYWJlNjI1MmUzYTU4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzIKLSAgICAtMHgxLjhiZGNkNTRiZDVhMDA0YWNmOTIyYzQ5YThkNWUyOGEycDIsCi0gICAgLTB4MS42OTE3M2Y4MTM2Yzc0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzMKLSAgICAweDEuOGJkY2Q1NGJkNWEwMDRhY2Y5MjJjNDlhOGQ1ZTI4YTJwMiwKLSAgICAweDEuNjkxNzNmODEzNmM3NHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODM0Ci0gICAgLTB4MS4yMTI3N2I5N2MwMTVmMTlkZTdiMjM4MjUyZTU2ZTYzZnAxLAotICAgIC0weDEuMjc3MDFjYWY4OWU5MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODM1Ci0gICAgMHgxLjIxMjc3Yjk3YzAxNWYxOWRlN2IyMzgyNTJlNTZlNjNmcDEsCi0gICAgMHgxLjI3NzAxY2FmODllOTBwMAotICB9LAotICB7IC8vIEVudHJ5IDgzNgotICAgIC0weDEuNDEwMzhiNzBiZTExYjg1Nzk4YTI3MWFjM2QyMDllYTdwMCwKLSAgICAtMHgxLmNiOTFmM2JiYmExNTdwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzcKLSAgICAweDEuNDEwMzhiNzBiZTExYjg1Nzk4YTI3MWFjM2QyMDllYTdwMCwKLSAgICAweDEuY2I5MWYzYmJiYTE1N3AtMQotICB9LAotICB7IC8vIEVudHJ5IDgzOAotICAgIC0weDEuN2UxZDkzNmY0ZDYzYzFjNzgwNjY1N2Q4YjgzODgzNmVwLTEsCi0gICAgLTB4MS40ODQzYWUxODYwNThlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODM5Ci0gICAgMHgxLjdlMWQ5MzZmNGQ2M2MxYzc4MDY2NTdkOGI4Mzg4MzZlcC0xLAotICAgIDB4MS40ODQzYWUxODYwNThlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODQwCi0gICAgLTB4MS45ZTkyNTdlNmI2MmQ4ODZmNzRlMzQ4YmRjMTQyNTk5Y3AtMiwKLSAgICAtMHgxLjg5ZWFkMGVhMGQzOGFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDEKLSAgICAweDEuOWU5MjU3ZTZiNjJkODg2Zjc0ZTM0OGJkYzE0MjU5OWNwLTIsCi0gICAgMHgxLjg5ZWFkMGVhMGQzOGFwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDIKLSAgICAtMHgxLjA4MGY3M2IwNzA1N2RjN2JmMGRmNmRlMWQzYWUxYTNicC0zLAotICAgIC0weDEuMDY5YzhiNDZiMzdmMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDg0MwotICAgIDB4MS4wODBmNzNiMDcwNTdkYzdiZjBkZjZkZTFkM2FlMWEzYnAtMywKLSAgICAweDEuMDY5YzhiNDZiMzdmMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDg0NAotICAgIDB4MS4wODBmNzNiMDcwNGJlYTdhNTZkNGY4OGVjZjNkNWNkM3AtMywKLSAgICAweDEuMDY5YzhiNDZiMzczNHAtMwotICB9LAotICB7IC8vIEVudHJ5IDg0NQotICAgIC0weDEuMDgwZjczYjA3MDRiZWE3YTU2ZDRmODhlY2YzZDVjZDNwLTMsCi0gICAgLTB4MS4wNjljOGI0NmIzNzM0cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ2Ci0gICAgMHgxLjllOTI1N2U2YjYyNmIxZWIxMTM2YmQ3ODUzMzExNTQzcC0yLAotICAgIDB4MS44OWVhZDBlYTBkMzJjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ3Ci0gICAgLTB4MS45ZTkyNTdlNmI2MjZiMWViMTEzNmJkNzg1MzMxMTU0M3AtMiwKLSAgICAtMHgxLjg5ZWFkMGVhMGQzMmNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDgKLSAgICAweDEuN2UxZDkzNmY0ZDVmMmVlYmJiZjNkNjI5NjMxMDZhZmFwLTEsCi0gICAgMHgxLjQ4NDNhZTE4NjA1NWZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDkKLSAgICAtMHgxLjdlMWQ5MzZmNGQ1ZjJlZWJiYmYzZDYyOTYzMTA2YWZhcC0xLAotICAgIC0weDEuNDg0M2FlMTg2MDU1ZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDg1MAotICAgIDB4MS40MTAzOGI3MGJlMGRmMTFkMTIyNDY4M2M2Zjg2NTU4NHAwLAotICAgIDB4MS5jYjkxZjNiYmJhMTI4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODUxCi0gICAgLTB4MS40MTAzOGI3MGJlMGRmMTFkMTIyNDY4M2M2Zjg2NTU4NHAwLAotICAgIC0weDEuY2I5MWYzYmJiYTEyOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDg1MgotICAgIDB4MS4yMTI3N2I5N2MwMTE1ZGNmNjY0N2FkNjhmNGNiNGFkMHAxLAotICAgIDB4MS4yNzcwMWNhZjg5ZTc4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTMKLSAgICAtMHgxLjIxMjc3Yjk3YzAxMTVkY2Y2NjQ3YWQ2OGY0Y2I0YWQwcDEsCi0gICAgLTB4MS4yNzcwMWNhZjg5ZTc4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTQKLSAgICAweDEuOGJkY2Q1NGJkNTkxNGJkOWE0ZDZkZDY1OWMyZjY2MDZwMiwKLSAgICAweDEuNjkxNzNmODEzNmM1Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgODU1Ci0gICAgLTB4MS44YmRjZDU0YmQ1OTE0YmQ5YTRkNmRkNjU5YzJmNjYwNnAyLAotICAgIC0weDEuNjkxNzNmODEzNmM1Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgODU2Ci0gICAgLTB4MS40YmI2YTY0ZTA2MzNiZmE1Njg3OTY2MDY1NWMzODc2N3AzLAotICAgIDB4MS5hYWJlNjI1MmUzYTQwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTcKLSAgICAweDEuNGJiNmE2NGUwNjMzYmZhNTY4Nzk2NjA2NTVjMzg3NjdwMywKLSAgICAtMHgxLmFhYmU2MjUyZTNhNDBwMAotICB9LAotICB7IC8vIEVudHJ5IDg1OAotICAgIC0weDEuNWJkMTNkZGEwNzgxMjQ0NDRjOTQwZjAxM2JlN2M0MDJwMSwKLSAgICAweDEuZWM2NTg1MjQ5MDgyNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODU5Ci0gICAgMHgxLjViZDEzZGRhMDc4MTI0NDQ0Yzk0MGYwMTNiZTdjNDAycDEsCi0gICAgLTB4MS5lYzY1ODUyNDkwODI0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjAKLSAgICAtMHgxLjZlZmVjOGMxZTQ5NmY2OWMyODZhZGM2NmJkNTg2ZWFmcDAsCi0gICAgMHgxLjE3MDY1M2ZiMWViMDRwMQotICB9LAotICB7IC8vIEVudHJ5IDg2MQotICAgIDB4MS42ZWZlYzhjMWU0OTZmNjljMjg2YWRjNjZiZDU4NmVhZnAwLAotICAgIC0weDEuMTcwNjUzZmIxZWIwNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODYyCi0gICAgLTB4MS5iM2RmMzg2ZjE4MjYyYmQ2MzdlMjlmYmIzMDgwNmIyY3AtMSwKLSAgICAweDEuMzdkOWU1NjNmNTFmNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODYzCi0gICAgMHgxLmIzZGYzODZmMTgyNjJiZDYzN2UyOWZiYjMwODA2YjJjcC0xLAotICAgIC0weDEuMzdkOWU1NjNmNTFmNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODY0Ci0gICAgLTB4MS5lZDIxZTU5OTcyYjViY2QzMDE1YzI1MGVmZjFjNjliOXAtMiwKLSAgICAweDEuNThhZDc2Y2NjYjhlOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODY1Ci0gICAgMHgxLmVkMjFlNTk5NzJiNWJjZDMwMTVjMjUwZWZmMWM2OWI5cC0yLAotICAgIC0weDEuNThhZDc2Y2NjYjhlOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODY2Ci0gICAgLTB4MS44ZWQ5MTQyZmM5MjE3Mjg5ZWQyMTk0MGRlYWFmZTg3OHAtMywKLSAgICAweDEuNzk4MTA4MzVhMWZkYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODY3Ci0gICAgMHgxLjhlZDkxNDJmYzkyMTcyODllZDIxOTQwZGVhYWZlODc4cC0zLAotICAgIC0weDEuNzk4MTA4MzVhMWZkYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODY4Ci0gICAgMHgxLjA2ZjhkMDE0YmVmNjdjZmIyZGI1NjBmNWE0MTRjODhicC00LAotICAgIDB4MS45YTU0OTk5ZTc4NmNjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjkKLSAgICAtMHgxLjA2ZjhkMDE0YmVmNjdjZmIyZGI1NjBmNWE0MTRjODhicC00LAotICAgIC0weDEuOWE1NDk5OWU3ODZjY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgODcwCi0gICAgMHgxLjUzZmRjZGZkMzdlYjQwY2Q5ZTUwNGRmNDMxYjUwMmQwcC0yLAotICAgIDB4MS5iYjI4MmIwNzRlZGJlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzEKLSAgICAtMHgxLjUzZmRjZGZkMzdlYjQwY2Q5ZTUwNGRmNDMxYjUwMmQwcC0yLAotICAgIC0weDEuYmIyODJiMDc0ZWRiZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODcyCi0gICAgMHgxLjRkNDY2YWNjYWQ0NWE3MmU1ZjczNWViMmY2YWRmOWZmcC0xLAotICAgIDB4MS5kYmZiYmM3MDI1NGIwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzMKLSAgICAtMHgxLjRkNDY2YWNjYWQ0NWE3MmU1ZjczNWViMmY2YWRmOWZmcC0xLAotICAgIC0weDEuZGJmYmJjNzAyNTRiMHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODc0Ci0gICAgMHgxLjE5ZTI2YjVlY2Q1OTg1MDdlY2QwMGQ4MWVjNzc1NjgzcDAsCi0gICAgMHgxLmZjY2Y0ZGQ4ZmJiYTJwMQotICB9LAotICB7IC8vIEVudHJ5IDg3NQotICAgIC0weDEuMTllMjZiNWVjZDU5ODUwN2VjZDAwZDgxZWM3NzU2ODNwMCwKLSAgICAtMHgxLmZjY2Y0ZGQ4ZmJiYTJwMQotICB9LAotICB7IC8vIEVudHJ5IDg3NgotICAgIDB4MS5lYWI0M2UwZTVlODI1NzA3M2FmYWVjYWIzODYxNTRhMXAwLAotICAgIDB4MS4wZWQxNmZhMGU5MTRhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzcKLSAgICAtMHgxLmVhYjQzZTBlNWU4MjU3MDczYWZhZWNhYjM4NjE1NGExcDAsCi0gICAgLTB4MS4wZWQxNmZhMGU5MTRhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzgKLSAgICAweDEuMTg2NmZlODQ1ZTZmYzI3MDY0ZTJiMTIzYTc3MjRlNzVwMiwKLSAgICAweDEuMWYzYjM4NTU1NDRjM3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgODc5Ci0gICAgLTB4MS4xODY2ZmU4NDVlNmZjMjcwNjRlMmIxMjNhNzcyNGU3NXAyLAotICAgIC0weDEuMWYzYjM4NTU1NDRjM3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgODgwCi0gICAgLTB4MS5mMmYwNWNmYjY1YzVlMDZiMWFlODhjNDhiNGI3NTVjZXA0LAotICAgIDB4MS4yZmE1MDEwOWJmODNjcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODEKLSAgICAweDEuZjJmMDVjZmI2NWM1ZTA2YjFhZTg4YzQ4YjRiNzU1Y2VwNCwKLSAgICAtMHgxLjJmYTUwMTA5YmY4M2NwMgotICB9LAotICB7IC8vIEVudHJ5IDg4MgotICAgIC0weDEuYWY0NjQzZTkzNzI4ZDZiZmQ3MDJjMzM0MDVkY2NlN2RwMSwKLSAgICAweDEuNDAwZWM5YmUyYWJiNXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODgzCi0gICAgMHgxLmFmNDY0M2U5MzcyOGQ2YmZkNzAyYzMzNDA1ZGNjZTdkcDEsCi0gICAgLTB4MS40MDBlYzliZTJhYmI1cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODQKLSAgICAtMHgxLmE2NGM3YzlkNjUzOWZkZWMyN2FmYzM4MGI5Zjc1MmMwcDAsCi0gICAgMHgxLjUwNzg5MjcyOTVmMmVwMgotICB9LAotICB7IC8vIEVudHJ5IDg4NQotICAgIDB4MS5hNjRjN2M5ZDY1MzlmZGVjMjdhZmMzODBiOWY3NTJjMHAwLAotICAgIC0weDEuNTA3ODkyNzI5NWYyZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODg2Ci0gICAgLTB4MS5lZmQ4Mjc0MmQ3N2ViNzNjODFhMDBmNTY4NjIxZjYzY3AtMSwKLSAgICAweDEuNjBlMjViMjcwMTJhN3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgODg3Ci0gICAgMHgxLmVmZDgyNzQyZDc3ZWI3M2M4MWEwMGY1Njg2MjFmNjNjcC0xLAotICAgIC0weDEuNjBlMjViMjcwMTJhN3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgODg4Ci0gICAgLTB4MS4yMDVhNjAwOWQ1ZTdlYWU2M2RhMWNiZDU3MTI5ZWVmZnAtMSwKLSAgICAweDEuNzE0YzIzZGI2YzYyMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODg5Ci0gICAgMHgxLjIwNWE2MDA5ZDVlN2VhZTYzZGExY2JkNTcxMjllZWZmcC0xLAotICAgIC0weDEuNzE0YzIzZGI2YzYyMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODkwCi0gICAgLTB4MS4wYzg2NDA4M2QxZWU1ZDM0ZGUyMDYwYzg2MjlkNDk1MXAtMiwKLSAgICAweDEuODFiNWVjOGZkNzk5OXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODkxCi0gICAgMHgxLjBjODY0MDgzZDFlZTVkMzRkZTIwNjBjODYyOWQ0OTUxcC0yLAotICAgIC0weDEuODFiNWVjOGZkNzk5OXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODkyCi0gICAgMHgxLmYwOWI2M2FhODFmYzM2ZGE1MDljM2U0MTA2MDdmZmU3cC01LAotICAgIDB4MS5lZmZmZmZmZmZmZmZmcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgODkzCi0gICAgLTB4MS5mMDliNjNhYTgxZmMzNmRhNTA5YzNlNDEwNjA3ZmZlN3AtNSwKLSAgICAtMHgxLmVmZmZmZmZmZmZmZmZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTQKLSAgICAweDEuZjA5YjYzYWE4MWZjNDZlOTVlMDY0MDViNDFlOGI0Y2NwLTUsCi0gICAgMHgxLmZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTUKLSAgICAtMHgxLmYwOWI2M2FhODFmYzQ2ZTk1ZTA2NDA1YjQxZThiNGNjcC01LAotICAgIC0weDEuZnAtNQotICB9LAotICB7IC8vIEVudHJ5IDg5NgotICAgIDB4MS5mMDliNjNhYTgxZmM1NmY4NmI3MDQyNzU3ZGNhNjJlOHAtNSwKLSAgICAweDEuZjAwMDAwMDAwMDAwMXAtNQotICB9LAotICB7IC8vIEVudHJ5IDg5NwotICAgIC0weDEuZjA5YjYzYWE4MWZjNTZmODZiNzA0Mjc1N2RjYTYyZThwLTUsCi0gICAgLTB4MS5mMDAwMDAwMDAwMDAxcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgODk4Ci0gICAgMHgxLmZhOGYyMWM4YTMzYWVjZjRhZjc3NzU0ZWY5MGE2N2I4cC00LAotICAgIDB4MS5mN2ZmZmZmZmZmZmZmcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgODk5Ci0gICAgLTB4MS5mYThmMjFjOGEzM2FlY2Y0YWY3Nzc1NGVmOTBhNjdiOHAtNCwKLSAgICAtMHgxLmY3ZmZmZmZmZmZmZmZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDAKLSAgICAweDEuZmE4ZjIxYzhhMzNhZmQzMzU1MTk4ZThkNzcxNmE4MTFwLTQsCi0gICAgMHgxLmY4MHAtNAotICB9LAotICB7IC8vIEVudHJ5IDkwMQotICAgIC0weDEuZmE4ZjIxYzhhMzNhZmQzMzU1MTk4ZThkNzcxNmE4MTFwLTQsCi0gICAgLTB4MS5mODBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDIKLSAgICAweDEuZmE4ZjIxYzhhMzNiMGQ3MWZhYmJhN2NiZjUyNmVkMDdwLTQsCi0gICAgMHgxLmY4MDAwMDAwMDAwMDFwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDMKLSAgICAtMHgxLmZhOGYyMWM4YTMzYjBkNzFmYWJiYTdjYmY1MjZlZDA3cC00LAotICAgIC0weDEuZjgwMDAwMDAwMDAwMXAtNAotICB9LAotICB7IC8vIEVudHJ5IDkwNAotICAgIDB4MS40ZWYwNmNiNGYwYTg2OWVmMDBkZjhlYzU1ODJkZmEzMXAtMywKLSAgICAweDEuNGJmZmZmZmZmZmZmZnAtMwotICB9LAotICB7IC8vIEVudHJ5IDkwNQotICAgIC0weDEuNGVmMDZjYjRmMGE4NjllZjAwZGY4ZWM1NTgyZGZhMzFwLTMsCi0gICAgLTB4MS40YmZmZmZmZmZmZmZmcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA2Ci0gICAgMHgxLjRlZjA2Y2I0ZjBhODdhNWM4ZWVlZWJjZWIxMmEyMmI0cC0zLAotICAgIDB4MS40YzBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDcKLSAgICAtMHgxLjRlZjA2Y2I0ZjBhODdhNWM4ZWVlZWJjZWIxMmEyMmI0cC0zLAotICAgIC0weDEuNGMwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA4Ci0gICAgMHgxLjRlZjA2Y2I0ZjBhODhhY2ExY2ZlNDhkODBhMzEwYTY1cC0zLAotICAgIDB4MS40YzAwMDAwMDAwMDAxcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA5Ci0gICAgLTB4MS40ZWYwNmNiNGYwYTg4YWNhMWNmZTQ4ZDgwYTMxMGE2NXAtMywKLSAgICAtMHgxLjRjMDAwMDAwMDAwMDFwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTAKLSAgICAweDEuM2NjMmE0NGUyOTk5NjY4Y2IwOTJhMDliNzNiMmRlNTBwLTIsCi0gICAgMHgxLjMzMzMzMzMzMzMzMzJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTEKLSAgICAtMHgxLjNjYzJhNDRlMjk5OTY2OGNiMDkyYTA5YjczYjJkZTUwcC0yLAotICAgIC0weDEuMzMzMzMzMzMzMzMzMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDkxMgotICAgIDB4MS4zY2MyYTQ0ZTI5OTk3ODE0YTFhYzNmMDIxMWM3NjQxZnAtMiwKLSAgICAweDEuMzMzMzMzMzMzMzMzM3AtMgotICB9LAotICB7IC8vIEVudHJ5IDkxMwotICAgIC0weDEuM2NjMmE0NGUyOTk5NzgxNGExYWMzZjAyMTFjNzY0MWZwLTIsCi0gICAgLTB4MS4zMzMzMzMzMzMzMzMzcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgOTE0Ci0gICAgMHgxLjNjYzJhNDRlMjk5OTg5OWM5MmM1ZGQ2OGIwMDc0YzMxcC0yLAotICAgIDB4MS4zMzMzMzMzMzMzMzM0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgOTE1Ci0gICAgLTB4MS4zY2MyYTQ0ZTI5OTk4OTljOTJjNWRkNjhiMDA3NGMzMXAtMiwKLSAgICAtMHgxLjMzMzMzMzMzMzMzMzRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTYKLSAgICAweDEuOTk0MzcxMWRjMmNlODNkMjFjZGIyODVhY2VkODE3YWRwLTEsCi0gICAgMHgxLjU5NDMxN2FjYzRlZjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTcKLSAgICAtMHgxLjk5NDM3MTFkYzJjZTgzZDIxY2RiMjg1YWNlZDgxN2FkcC0xLAotICAgIC0weDEuNTk0MzE3YWNjNGVmOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDkxOAotICAgIDB4MS45OTQzNzExZGMyY2U5ZTBiM2YxZmZlNWFlYzBhYzIwZHAtMSwKLSAgICAweDEuNTk0MzE3YWNjNGVmOXAtMQotICB9LAotICB7IC8vIEVudHJ5IDkxOQotICAgIC0weDEuOTk0MzcxMWRjMmNlOWUwYjNmMWZmZTVhZWMwYWMyMGRwLTEsCi0gICAgLTB4MS41OTQzMTdhY2M0ZWY5cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTIwCi0gICAgMHgxLjk5NDM3MTFkYzJjZWI4NDQ2MTY0ZDQ1YjBhOGNjZGVlcC0xLAotICAgIDB4MS41OTQzMTdhY2M0ZWZhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTIxCi0gICAgLTB4MS45OTQzNzExZGMyY2ViODQ0NjE2NGQ0NWIwYThjY2RlZXAtMSwKLSAgICAtMHgxLjU5NDMxN2FjYzRlZmFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjIKLSAgICAweDEuZmJjNTExZGY1OTE3ZDU3ZDIzMWQ3YWQ0MzRkYTVmOTRwLTEsCi0gICAgMHgxLjhmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjMKLSAgICAtMHgxLmZiYzUxMWRmNTkxN2Q1N2QyMzFkN2FkNDM0ZGE1Zjk0cC0xLAotICAgIC0weDEuOGZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDkyNAotICAgIDB4MS5mYmM1MTFkZjU5MTdmNTM5YmJjZjc3OGJjMWEyMjI0OXAtMSwKLSAgICAweDEuOXAtMQotICB9LAotICB7IC8vIEVudHJ5IDkyNQotICAgIC0weDEuZmJjNTExZGY1OTE3ZjUzOWJiY2Y3NzhiYzFhMjIyNDlwLTEsCi0gICAgLTB4MS45cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTI2Ci0gICAgMHgxLmZiYzUxMWRmNTkxODE0ZjY1NDgxNzQ0MzUwNjE3Yzg1cC0xLAotICAgIDB4MS45MDAwMDAwMDAwMDAxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTI3Ci0gICAgLTB4MS5mYmM1MTFkZjU5MTgxNGY2NTQ4MTc0NDM1MDYxN2M4NXAtMSwKLSAgICAtMHgxLjkwMDAwMDAwMDAwMDFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjgKLSAgICAtMHgxLnAtMTA3NCwKLSAgICAtMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjkKLSAgICAweDEucC0xMDc0LAotICAgIDB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTMwCi0gICAgLTAuMCwKLSAgICAtMC4wCi0gIH0sCi0gIHsgLy8gRW50cnkgOTMxCi0gICAgMHgxLnAtMTA3NCwKLSAgICAweDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDkzMgotICAgIC0weDEucC0xMDc0LAotICAgIC0weDEuMHAtMTA3NAotICB9LAotICB7IC8vIEVudHJ5IDkzMwotICAgIDB4MS45MjcyNzhhM2IxMTYwYmJmOGUwYmIzMDlkYTQyNDdjNXAtNSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AtNQotICB9LAotICB7IC8vIEVudHJ5IDkzNAotICAgIC0weDEuOTI3Mjc4YTNiMTE2MGJiZjhlMGJiMzA5ZGE0MjQ3YzVwLTUsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTM1Ci0gICAgMHgxLjkyNzI3OGEzYjExNjFiYzk3MGJhOGI1MGU1NzVmOTdmcC01LAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTM2Ci0gICAgLTB4MS45MjcyNzhhM2IxMTYxYmM5NzBiYThiNTBlNTc1Zjk3ZnAtNSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzcKLSAgICAweDEuOTI3Mjc4YTNiMTE2MmJkMzUzNjk2Mzk3ZjBhYTc0ZWVwLTUsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzgKLSAgICAtMHgxLjkyNzI3OGEzYjExNjJiZDM1MzY5NjM5N2YwYWE3NGVlcC01LAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtNQotICB9LAotICB7IC8vIEVudHJ5IDkzOQotICAgIDB4MS45MzZiYjhjNWIyZGExMTgzMDZmYTliNWQ2ZDhlZDJjMXAtNCwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AtNAotICB9LAotICB7IC8vIEVudHJ5IDk0MAotICAgIC0weDEuOTM2YmI4YzViMmRhMTE4MzA2ZmE5YjVkNmQ4ZWQyYzFwLTQsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQxCi0gICAgMHgxLjkzNmJiOGM1YjJkYTIxYWFjMmJmZWM4NDI5M2U1ZDRkcC00LAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQyCi0gICAgLTB4MS45MzZiYjhjNWIyZGEyMWFhYzJiZmVjODQyOTNlNWQ0ZHAtNCwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDMKLSAgICAweDEuOTM2YmI4YzViMmRhMzFkMjdlODUzZGFhZTRmMTE2ODRwLTQsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDQKLSAgICAtMHgxLjkzNmJiOGM1YjJkYTMxZDI3ZTg1M2RhYWU0ZjExNjg0cC00LAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtNAotICB9LAotICB7IC8vIEVudHJ5IDk0NQotICAgIDB4MS45NzVmNWUwNTUzMTU2YjQzOGNhN2Q3NTJkMzdkMDg3M3AtMywKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AtMwotICB9LAotICB7IC8vIEVudHJ5IDk0NgotICAgIC0weDEuOTc1ZjVlMDU1MzE1NmI0MzhjYTdkNzUyZDM3ZDA4NzNwLTMsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQ3Ci0gICAgMHgxLjk3NWY1ZTA1NTMxNTdiZTU5Y2JmZjY0OGZkZWYyYzA4cC0zLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgOTQ4Ci0gICAgLTB4MS45NzVmNWUwNTUzMTU3YmU1OWNiZmY2NDhmZGVmMmMwOHAtMywKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDkKLSAgICAweDEuOTc1ZjVlMDU1MzE1OGM4N2FjZDgxNTNmMjg2ZThiOGFwLTMsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NTAKLSAgICAtMHgxLjk3NWY1ZTA1NTMxNThjODdhY2Q4MTUzZjI4NmU4YjhhcC0zLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMwotICB9LAotICB7IC8vIEVudHJ5IDk1MQotICAgIDB4MS5hODI3OTk5ZmNlZjMwYzM4YjJlNTM5N2VhN2MxMGVhZHAtMiwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AtMgotICB9LAotICB7IC8vIEVudHJ5IDk1MgotICAgIC0weDEuYTgyNzk5OWZjZWYzMGMzOGIyZTUzOTdlYTdjMTBlYWRwLTIsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgOTUzCi0gICAgMHgxLmE4Mjc5OTlmY2VmMzFlZjc3NjE4M2IwNzBlNmZjODRlcC0yLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgOTU0Ci0gICAgLTB4MS5hODI3OTk5ZmNlZjMxZWY3NzYxODNiMDcwZTZmYzg0ZXAtMiwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NTUKLSAgICAweDEuYTgyNzk5OWZjZWYzMzFiNjM5NGIzYzhmNzU1YzlmYTNwLTIsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NTYKLSAgICAtMHgxLmE4Mjc5OTlmY2VmMzMxYjYzOTRiM2M4Zjc1NWM5ZmEzcC0yLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOXAtMgotICB9LAotICB7IC8vIEVudHJ5IDk1NwotICAgIDB4MS5mZmZmZmZmZmZmZmZkNzJjZWNlNjc1ZDFmZTMwMzViYnAtMSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AtMQotICB9LAotICB7IC8vIEVudHJ5IDk1OAotICAgIC0weDEuZmZmZmZmZmZmZmZmZDcyY2VjZTY3NWQxZmUzMDM1YmJwLTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTU5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmY3MmNlY2U2NzVkMWZjYTMwNDg5cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgOTYwCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmNzJjZWNlNjc1ZDFmY2EzMDQ4OXAtMSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjEKLSAgICAweDEuMDAwMDAwMDAwMDAwMGI5Njc2NzMzYWU4ZmU4YWU5YWNwMCwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXAtMQotICB9LAotICB7IC8vIEVudHJ5IDk2MgotICAgIC0weDEuMDAwMDAwMDAwMDAwMGI5Njc2NzMzYWU4ZmU4YWU5YWNwMCwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjMKLSAgICAweDEuOTE1M2Q5NDQzZWQwYjNiNDNkZGFiNmFlNTczYWEyM2RwNTEsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTdwMAotICB9LAotICB7IC8vIEVudHJ5IDk2NAotICAgIC0weDEuOTE1M2Q5NDQzZWQwYjNiNDNkZGFiNmFlNTczYWEyM2RwNTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjUKLSAgICAweDEuZDAyOTY3YzMxY2RiNGUwYzM4ZDAxYjY1NWQ1ZTBhYWZwNTMsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwMAotICB9LAotICB7IC8vIEVudHJ5IDk2NgotICAgIC0weDEuZDAyOTY3YzMxY2RiNGUwYzM4ZDAxYjY1NWQ1ZTBhYWZwNTMsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjcKLSAgICAtMHgxLjYxN2ExNTQ5NDc2N2EwNDg4MmMzMjAzMTdmM2U0Y2VjcDUyLAotICAgIDB4MS45MjFmYjU0NDQyZDE5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjgKLSAgICAweDEuNjE3YTE1NDk0NzY3YTA0ODgyYzMyMDMxN2YzZTRjZWNwNTIsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE5cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjkKLSAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWMzZDYwYzY4cC01MSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTcwCi0gICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWMzZDYwYzY4cC01MSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwMQotICB9LAotICB7IC8vIEVudHJ5IDk3MQotICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQ2MWQ1ZDdwLTUzLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzIKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQ2MWQ1ZDdwLTUzLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTczCi0gICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzdlZTBiOTZjcC01MiwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgOTc0Ci0gICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM3ZWUwYjk2Y3AtNTIsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE5cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzUKLSAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWNjMjQ0YWI1cC01MCwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTc2Ci0gICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWNjMjQ0YWI1cC01MCwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwMgotICB9LAotICB7IC8vIEVudHJ5IDk3NwotICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDRiN2JiYWJwLTUyLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzgKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDRiN2JiYWJwLTUyLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTc5Ci0gICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzgxZWFiMzhjcC01MSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTgwCi0gICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM4MWVhYjM4Y3AtNTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE5cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODEKLSAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWVkNWQ0M2U4cC00OSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTgyCi0gICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0OWVkNWQ0M2U4cC00OSwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwMwotICB9LAotICB7IC8vIEVudHJ5IDk4MwotICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDYwZjUyZjlwLTUxLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODQKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDYwZjUyZjlwLTUxLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTg1Ci0gICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2YzhlMTI5YzBhcC01MCwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTg2Ci0gICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmM4ZTEyOWMwYXAtNTAsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE5cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODcKLSAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0YTcyNDEyOGI0cC00OCwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTg4Ci0gICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0YTcyNDEyOGI0cC00OCwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwNAotICB9LAotICB7IC8vIEVudHJ5IDk4OQotICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MGI2ZGIwMzNwLTUwLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTAKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MGI2ZGIwMzNwLTUwLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTkxCi0gICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2Y2JlYjIzZTAzcC00OSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTkyCi0gICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmNiZWIyM2UwM3AtNDksCi0gICAgLTB4MS45MjFmYjU0NDQyZDE5cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTMKLSAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0Yzg1ZDBiYmUzcC00NywKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3A1Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTk0Ci0gICAgMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA0Yzg1ZDBiYmUzcC00NywKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTdwNQotICB9LAotICB7IC8vIEVudHJ5IDk5NQotICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MjBlNzI1MWFwLTQ5LAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTYKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MjBlNzI1MWFwLTQ5LAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTk3Ci0gICAgMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY2ZDgxMzBjNWU3cC00OCwKLSAgICAweDEuOTIxZmI1NDQ0MmQxOXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTk4Ci0gICAgLTB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNmQ4MTMwYzVlN3AtNDgsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE5cDUKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTkKLSAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA1NGQ0MGYwOGEwcC00NiwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3A2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAwMAotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNTRkNDBmMDhhMHAtNDYsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDAxCi0gICAgLTB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjc3NmNjZjhiN3AtNDgsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwNgotICB9LAotICB7IC8vIEVudHJ5IDEwMDIKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3NzZjY2Y4YjdwLTQ4LAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAwMwotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmNzA4YjJhZTU3NnAtNDcsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwNgotICB9LAotICB7IC8vIEVudHJ5IDEwMDQKLSAgICAtMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY3MDhiMmFlNTc2cC00NywKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNgotICB9LAotICB7IC8vIEVudHJ5IDEwMDUKLSAgICAtMHgxLjQ2OTg5OGNjNTE3MDFiODM5YTI1MjA3NjBkMDgzYjk3cC00NSwKLSAgICAweDEuOTIxZmI1NDQ0MmQxN3A3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAwNgotICAgIDB4MS40Njk4OThjYzUxNzAxYjgzOWEyNTIwNzYwZDA4M2I5N3AtNDUsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE3cDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDA3Ci0gICAgLTB4MS4xYTYyNjMzMTQ1YzA2ZTBlNjg5NDgxMjhjZTY0NDcyYnAtNDcsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwNwotICB9LAotICB7IC8vIEVudHJ5IDEwMDgKLSAgICAweDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI4Y2U2NDQ3MmJwLTQ3LAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAwOQotICAgIDB4MS43MmNlY2U2NzVkMWZjOGY4Y2JiNWJmN2NiMzEzNjNiMXAtNDYsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMTlwNwotICB9LAotICB7IC8vIEVudHJ5IDEwMTAKLSAgICAtMHgxLjcyY2VjZTY3NWQxZmM4ZjhjYmI1YmY3Y2IzMTM2M2IxcC00NiwKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMTlwNwotICB9LAotICB7IC8vIEVudHJ5IDEwMTEKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDRkM2M5Y2E2NGY0NTEwY2Y2ZjMxcDAsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDFwMQotICB9LAotICB7IC8vIEVudHJ5IDEwMTIKLSAgICAweDEuMDAwMDAwMDAwMDAwNGQzYzljYTY0ZjQ1MTBjZjZmMzFwMCwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDFwMQotICB9LAotICB7IC8vIEVudHJ5IDEwMTMKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDBkM2M5Y2E2NGY0NTA1ODA0ODA4cDAsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDJwMQotICB9LAotICB7IC8vIEVudHJ5IDEwMTQKLSAgICAweDEuMDAwMDAwMDAwMDAwMGQzYzljYTY0ZjQ1MDU4MDQ4MDhwMCwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDJwMQotICB9LAotICB7IC8vIEVudHJ5IDEwMTUKLSAgICAtMHgxLmZmZmZmZmZmZmZmZjlhNzkzOTRjOWU4YTE0NjI0MWJkcC0xLAotICAgIDB4MS4yZDk3YzdmMzMyMWQzcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDE2Ci0gICAgMHgxLmZmZmZmZmZmZmZmZjlhNzkzOTRjOWU4YTE0NjI0MWJkcC0xLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkM3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxNwotICAgIDB4MS5mZmZmZmZmZmZmZmY1M2UwYTA4MDRkMWEwYmJjNGFiM3AtMSwKLSAgICAweDEuZjZhN2EyOTU1Mzg1ZHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxOAotICAgIC0weDEuZmZmZmZmZmZmZmZmNTNlMGEwODA0ZDFhMGJiYzRhYjNwLTEsCi0gICAgLTB4MS5mNmE3YTI5NTUzODVkcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDE5Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmQzZTBhMDgwNGQxOWYwYjQ3MmQzcC0xLAotICAgIDB4MS5mNmE3YTI5NTUzODVlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIwCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZkM2UwYTA4MDRkMTlmMGI0NzJkM3AtMSwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWVwMQotICB9LAotICB7IC8vIEVudHJ5IDEwMjEKLSAgICAweDEuMDAwMDAwMDAwMDAwMjlmMDUwNDAyNjhjZmFkNjRkNzlwMCwKLSAgICAweDEuZjZhN2EyOTU1Mzg1ZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyMgotICAgIC0weDEuMDAwMDAwMDAwMDAwMjlmMDUwNDAyNjhjZmFkNjRkNzlwMCwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWZwMQotICB9LAotICB7IC8vIEVudHJ5IDEwMjMKLSAgICAweDEuYTg0MTAwODcyNjJlM2Y0MTg1OWZhNzM1NjdmOTI0NGRwNDksCi0gICAgMHgxLjJkOTdjN2YzMzIxZDFwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMjQKLSAgICAtMHgxLmE4NDEwMDg3MjYyZTNmNDE4NTlmYTczNTY3ZjkyNDRkcDQ5LAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyNQotICAgIDB4MS4zNTcwZWZkNzY4OTIzNDA4MjVlMDEyNDM5MzU1NDY5N3A1MiwKLSAgICAweDEuMmQ5N2M3ZjMzMjFkMnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyNgotICAgIC0weDEuMzU3MGVmZDc2ODkyMzQwODI1ZTAxMjQzOTM1NTQ2OTdwNTIsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDI3Ci0gICAgLTB4MS40MmMwZDY0ZDVkZTUxNzhhZmUwNjQ1MmExYTFiODY2N3A1MCwKLSAgICAweDEuMmQ5N2M3ZjMzMjFkM3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyOAotICAgIDB4MS40MmMwZDY0ZDVkZTUxNzhhZmUwNjQ1MmExYTFiODY2N3A1MCwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDNwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMjkKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDllZTJjMmQ5NjNhMTNkNTdlYzIwcDAsCi0gICAgMHgxLjVmZGJiZTliYmE3NzRwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMzAKLSAgICAweDEuMDAwMDAwMDAwMDAwOWVlMmMyZDk2M2ExM2Q1N2VjMjBwMCwKLSAgICAtMHgxLjVmZGJiZTliYmE3NzRwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMzEKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFlZTJjMmQ5NjNhMTBkZTY4YWI0cDAsCi0gICAgMHgxLjVmZGJiZTliYmE3NzVwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMzIKLSAgICAweDEuMDAwMDAwMDAwMDAwMWVlMmMyZDk2M2ExMGRlNjhhYjRwMCwKLSAgICAtMHgxLjVmZGJiZTliYmE3NzVwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMzMKLSAgICAtMHgxLmZmZmZmZmZmZmZmZjNkYzU4NWIyYzc0MjNjZWE1MjhlcC0xLAotICAgIDB4MS41ZmRiYmU5YmJhNzc2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM0Ci0gICAgMHgxLmZmZmZmZmZmZmZmZjNkYzU4NWIyYzc0MjNjZWE1MjhlcC0xLAotICAgIC0weDEuNWZkYmJlOWJiYTc3NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAzNQotICAgIDB4MS5mZmZmZmZmZmZmZmViMDk0NTQxYTI0NjI0ZWVhYjBlMXAtMSwKLSAgICAweDEuYzQ2M2FiZWNjYjJiYXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAzNgotICAgIC0weDEuZmZmZmZmZmZmZmZlYjA5NDU0MWEyNDYyNGVlYWIwZTFwLTEsCi0gICAgLTB4MS5jNDYzYWJlY2NiMmJhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM3Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmIwOTQ1NDFhMjQ2MWU3MzRkYWVlcC0xLAotICAgIDB4MS5jNDYzYWJlY2NiMmJicDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM4Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmZiMDk0NTQxYTI0NjFlNzM0ZGFlZXAtMSwKLSAgICAtMHgxLmM0NjNhYmVjY2IyYmJwMgotICB9LAotICB7IC8vIEVudHJ5IDEwMzkKLSAgICAweDEuMDAwMDAwMDAwMDAwNTg0YTJhMGQxMjMwZmZiZjgyN2RwMCwKLSAgICAweDEuYzQ2M2FiZWNjYjJiY3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA0MAotICAgIC0weDEuMDAwMDAwMDAwMDAwNTg0YTJhMGQxMjMwZmZiZjgyN2RwMCwKLSAgICAtMHgxLmM0NjNhYmVjY2IyYmNwMgotICB9LAotICB7IC8vIEVudHJ5IDEwNDEKLSAgICAweDEuN2NjMDgwZjg5NTg1NjdmMDVjNDBhYzVmNmQzMTBkZThwNDksCi0gICAgMHgxLmY2YTdhMjk1NTM4NWRwMgotICB9LAotICB7IC8vIEVudHJ5IDEwNDIKLSAgICAtMHgxLjdjYzA4MGY4OTU4NTY3ZjA1YzQwYWM1ZjZkMzEwZGU4cDQ5LAotICAgIC0weDEuZjZhN2EyOTU1Mzg1ZHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA0MwotICAgIDB4MS43MzU0NTMwMjdkN2MzZTcwMmQ3MzQ5MWRlMzY5NTM2ZnA1MSwKLSAgICAweDEuZjZhN2EyOTU1Mzg1ZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA0NAotICAgIC0weDEuNzM1NDUzMDI3ZDdjM2U3MDJkNzM0OTFkZTM2OTUzNmZwNTEsCi0gICAgLTB4MS5mNmE3YTI5NTUzODVlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQ1Ci0gICAgLTB4MS44NmFhNGEzYTEyN2EzYWRkOWE4ZTc2OTkzNzMzYjRhN3A1MCwKLSAgICAweDEuZjZhN2EyOTU1Mzg1ZnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA0NgotICAgIDB4MS44NmFhNGEzYTEyN2EzYWRkOWE4ZTc2OTkzNzMzYjRhN3A1MCwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWZwMgotICB9LAotICB7IC8vIEVudHJ5IDEwNDcKLSAgICAtMHgxLjAwMDAwMDAwMDAwMWIwODhlOTBjNzdmZTgwNTFhN2RhcDAsCi0gICAgMHgxLjE0NzVjYzllZWRlZmZwMwotICB9LAotICB7IC8vIEVudHJ5IDEwNDgKLSAgICAweDEuMDAwMDAwMDAwMDAxYjA4OGU5MGM3N2ZlODA1MWE3ZGFwMCwKLSAgICAtMHgxLjE0NzVjYzllZWRlZmZwMwotICB9LAotICB7IC8vIEVudHJ5IDEwNDkKLSAgICAtMHgxLjAwMDAwMDAwMDAwMGIwODhlOTBjNzdmZDRmYzhiZWNlcDAsCi0gICAgMHgxLjE0NzVjYzllZWRmcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUwCi0gICAgMHgxLjAwMDAwMDAwMDAwMGIwODhlOTBjNzdmZDRmYzhiZWNlcDAsCi0gICAgLTB4MS4xNDc1Y2M5ZWVkZnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA1MQotICAgIC0weDEuZmZmZmZmZmZmZmZmNjExMWQyMThlZmZhM2U3ZmFiODNwLTEsCi0gICAgMHgxLjE0NzVjYzllZWRmMDFwMwotICB9LAotICB7IC8vIEVudHJ5IDEwNTIKLSAgICAweDEuZmZmZmZmZmZmZmZmNjExMWQyMThlZmZhM2U3ZmFiODNwLTEsCi0gICAgLTB4MS4xNDc1Y2M5ZWVkZjAxcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUzCi0gICAgLTB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4Mzc3NjRjMTYwOHAtNDksCi0gICAgMHgxLjJkOTdjN2YzMzIxZDFwMwotICB9LAotICB7IC8vIEVudHJ5IDEwNTQKLSAgICAweDEuMzRmMjcyOTkzZDE0MTRhMmIzOWJkODM3NzY0YzE2MDhwLTQ5LAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkMXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA1NQotICAgIC0weDEuYTc5Mzk0YzllOGEwYTUxNTljZGVjMWJhODdlYTU4MTFwLTUyLAotICAgIDB4MS4yZDk3YzdmMzMyMWQycDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDU2Ci0gICAgMHgxLmE3OTM5NGM5ZThhMGE1MTU5Y2RlYzFiYTg3ZWE1ODExcC01MiwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDJwMwotICB9LAotICB7IC8vIEVudHJ5IDEwNTcKLSAgICAweDEuOTYxYjFhY2Q4NWQ3ZDZiYTk4Yzg0ZjkxNzNiMDhkNmZwLTUwLAotICAgIDB4MS4yZDk3YzdmMzMyMWQzcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDU4Ci0gICAgLTB4MS45NjFiMWFjZDg1ZDdkNmJhOThjODRmOTE3M2IwOGQ2ZnAtNTAsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQzcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDU5Ci0gICAgMHgxLmZmZmZmZmZmZmZmYzhkNDgwN2IzZmJhY2NjMzgzMTRicC0xLAotICAgIDB4MS40NmI5YzM0Nzc2NGEycDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYwCi0gICAgLTB4MS5mZmZmZmZmZmZmZmM4ZDQ4MDdiM2ZiYWNjYzM4MzE0YnAtMSwKLSAgICAtMHgxLjQ2YjljMzQ3NzY0YTJwMwotICB9LAotICB7IC8vIEVudHJ5IDEwNjEKLSAgICAweDEuZmZmZmZmZmZmZmZlOGQ0ODA3YjNmYmFhNTk4MDM4ZmZwLTEsCi0gICAgMHgxLjQ2YjljMzQ3NzY0YTNwMwotICB9LAotICB7IC8vIEVudHJ5IDEwNjIKLSAgICAtMHgxLmZmZmZmZmZmZmZmZThkNDgwN2IzZmJhYTU5ODAzOGZmcC0xLAotICAgIC0weDEuNDZiOWMzNDc3NjRhM3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2MwotICAgIDB4MS4wMDAwMDAwMDAwMDA0NmE0MDNkOWZkZDRmMzY0MjA1OXAwLAotICAgIDB4MS40NmI5YzM0Nzc2NGE0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDY0Ci0gICAgLTB4MS4wMDAwMDAwMDAwMDA0NmE0MDNkOWZkZDRmMzY0MjA1OXAwLAotICAgIC0weDEuNDZiOWMzNDc3NjRhNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2NQotICAgIDB4MS45Yzc4ZWVhNzhiYWE2ZTEzZWNjYzk0YzQyMWM0ZjVhY3A0OCwKLSAgICAweDEuNWZkYmJlOWJiYTc3NHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2NgotICAgIC0weDEuOWM3OGVlYTc4YmFhNmUxM2VjY2M5NGM0MjFjNGY1YWNwNDgsCi0gICAgLTB4MS41ZmRiYmU5YmJhNzc0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDY3Ci0gICAgMHgxLjA5M2MzYjRhZWJlYjA4MDZmYmU0YTFmMGM2NjBiYTNicDUxLAotICAgIDB4MS41ZmRiYmU5YmJhNzc1cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDY4Ci0gICAgLTB4MS4wOTNjM2I0YWViZWIwODA2ZmJlNGExZjBjNjYwYmEzYnA1MSwKLSAgICAtMHgxLjVmZGJiZTliYmE3NzVwMwotICB9LAotICB7IC8vIEVudHJ5IDEwNjkKLSAgICAtMHgxLjUxNmFjOTYxNDIxODU1ZmI3NTlmYzJmYWNiNGU5ZjVicDQ5LAotICAgIDB4MS41ZmRiYmU5YmJhNzc2cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDcwCi0gICAgMHgxLjUxNmFjOTYxNDIxODU1ZmI3NTlmYzJmYWNiNGU5ZjVicDQ5LAotICAgIC0weDEuNWZkYmJlOWJiYTc3NnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3MQotICAgIC0weDEuMDAwMDAwMDAwMDAxYzIyZjBmM2Y4YzVhYTVhMDFkYTNwMCwKLSAgICAweDEuNzhmZGI5ZWZmZWE0NXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3MgotICAgIDB4MS4wMDAwMDAwMDAwMDFjMjJmMGYzZjhjNWFhNWEwMWRhM3AwLAotICAgIC0weDEuNzhmZGI5ZWZmZWE0NXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3MwotICAgIC0weDEuMDAwMDAwMDAwMDAwYzIyZjBmM2Y4YzU5NjM3MTBlNjRwMCwKLSAgICAweDEuNzhmZGI5ZWZmZWE0NnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3NAotICAgIDB4MS4wMDAwMDAwMDAwMDBjMjJmMGYzZjhjNTk2MzcxMGU2NHAwLAotICAgIC0weDEuNzhmZGI5ZWZmZWE0NnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3NQotICAgIC0weDEuZmZmZmZmZmZmZmZmODQ1ZTFlN2YxOGIyNDI4M2ZlNDlwLTEsCi0gICAgMHgxLjc4ZmRiOWVmZmVhNDdwMwotICB9LAotICB7IC8vIEVudHJ5IDEwNzYKLSAgICAweDEuZmZmZmZmZmZmZmZmODQ1ZTFlN2YxOGIyNDI4M2ZlNDlwLTEsCi0gICAgLTB4MS43OGZkYjllZmZlYTQ3cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDc3Ci0gICAgMHgxLmZmZmZmZmZmZmZmYzY5ZmJiYjRkZDJmNGZjODhmZmExcC0xLAotICAgIDB4MS5hYjQxYjA5ODg2ZmU4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDc4Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmM2OWZiYmI0ZGQyZjRmYzg4ZmZhMXAtMSwKLSAgICAtMHgxLmFiNDFiMDk4ODZmZThwMwotICB9LAotICB7IC8vIEVudHJ5IDEwNzkKLSAgICAweDEuZmZmZmZmZmZmZmZlNjlmYmJiNGRkMmYyNjY4NGJhZWVwLTEsCi0gICAgMHgxLmFiNDFiMDk4ODZmZTlwMwotICB9LAotICB7IC8vIEVudHJ5IDEwODAKLSAgICAtMHgxLmZmZmZmZmZmZmZmZTY5ZmJiYjRkZDJmMjY2ODRiYWVlcC0xLAotICAgIC0weDEuYWI0MWIwOTg4NmZlOXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4MQotICAgIDB4MS4wMDAwMDAwMDAwMDAzNGZkZGRhNmU5NzhlODQwM2IxZXAwLAotICAgIDB4MS5hYjQxYjA5ODg2ZmVhcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDgyCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAzNGZkZGRhNmU5NzhlODQwM2IxZXAwLAotICAgIC0weDEuYWI0MWIwOTg4NmZlYXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4MwotICAgIDB4MS44NmM0ZTMzM2IzYzlmNjI3Mzg5NmFiYTIwMTc2NzkxMnA0OCwKLSAgICAweDEuYzQ2M2FiZWNjYjJiYXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4NAotICAgIC0weDEuODZjNGUzMzNiM2M5ZjYyNzM4OTZhYmEyMDE3Njc5MTJwNDgsCi0gICAgLTB4MS5jNDYzYWJlY2NiMmJhcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDg1Ci0gICAgMHgxLjljOTY5NTFmMzYxODQ1NjAzMjgwMTg1YTE2ZDYwMjZjcDUwLAotICAgIDB4MS5jNDYzYWJlY2NiMmJicDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDg2Ci0gICAgLTB4MS45Yzk2OTUxZjM2MTg0NTYwMzI4MDE4NWExNmQ2MDI2Y3A1MCwKLSAgICAtMHgxLmM0NjNhYmVjY2IyYmJwMwotICB9LAotICB7IC8vIEVudHJ5IDEwODcKLSAgICAtMHgxLjczMjQ0ZDM2OWUwYjZlYjJmNWQ3M2NjYTczNDRlODdhcDQ5LAotICAgIDB4MS5jNDYzYWJlY2NiMmJjcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDg4Ci0gICAgMHgxLjczMjQ0ZDM2OWUwYjZlYjJmNWQ3M2NjYTczNDRlODdhcDQ5LAotICAgIC0weDEuYzQ2M2FiZWNjYjJiY3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4OQotICAgIC0weDEuMDAwMDAwMDAwMDAxZDNkNTM1NzJhMGI2Y2MyNjEwNTVwMCwKLSAgICAweDEuZGQ4NWE3NDEwZjU4YnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5MAotICAgIDB4MS4wMDAwMDAwMDAwMDFkM2Q1MzU3MmEwYjZjYzI2MTA1NXAwLAotICAgIC0weDEuZGQ4NWE3NDEwZjU4YnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5MQotICAgIC0weDEuMDAwMDAwMDAwMDAwZDNkNTM1NzJhMGI1Nzg1MGRhZTJwMCwKLSAgICAweDEuZGQ4NWE3NDEwZjU4Y3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5MgotICAgIDB4MS4wMDAwMDAwMDAwMDBkM2Q1MzU3MmEwYjU3ODUwZGFlMnAwLAotICAgIC0weDEuZGQ4NWE3NDEwZjU4Y3AzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5MwotICAgIC0weDEuZmZmZmZmZmZmZmZmYTdhYTZhZTU0MTZhNDhmNzRhZGZwLTEsCi0gICAgMHgxLmRkODVhNzQxMGY1OGRwMwotICB9LAotICB7IC8vIEVudHJ5IDEwOTQKLSAgICAweDEuZmZmZmZmZmZmZmZmYTdhYTZhZTU0MTZhNDhmNzRhZGZwLTEsCi0gICAgLTB4MS5kZDg1YTc0MTBmNThkcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDk1Ci0gICAgLTB4MS41ODNlYmVmZjY1Y2MyMjY0ODBhZTY4NWM2NTM1MjMyNXAtNDksCi0gICAgMHgxLmY2YTdhMjk1NTM4NWRwMwotICB9LAotICB7IC8vIEVudHJ5IDEwOTYKLSAgICAweDEuNTgzZWJlZmY2NWNjMjI2NDgwYWU2ODVjNjUzNTIzMjVwLTQ5LAotICAgIC0weDEuZjZhN2EyOTU1Mzg1ZHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5NwotICAgIC0weDEuNjBmYWZiZmQ5NzMwODk5MjAyYjlhMTcwYzhkNTQ1OTFwLTUxLAotICAgIDB4MS5mNmE3YTI5NTUzODVlcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDk4Ci0gICAgMHgxLjYwZmFmYmZkOTczMDg5OTIwMmI5YTE3MGM4ZDU0NTkxcC01MSwKLSAgICAtMHgxLmY2YTdhMjk1NTM4NWVwMwotICB9LAotICB7IC8vIEVudHJ5IDEwOTkKLSAgICAweDEuNGY4MjgyMDEzNDY3YmIzNmZlYTMyZjQ3YTk1NjQxYmFwLTUwLAotICAgIDB4MS5mNmE3YTI5NTUzODVmcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTAwCi0gICAgLTB4MS40ZjgyODIwMTM0NjdiYjM2ZmVhMzJmNDdhOTU2NDFiYXAtNTAsCi0gICAgLTB4MS5mNmE3YTI5NTUzODVmcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTAxCi0gICAgMHgxLmZmZmZmZmZmZmZmODQ2YWY2ZWU3YWE0OGExZTllOWY3cC0xLAotICAgIDB4MS4wN2U0Y2VmNGNiZDk2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTAyCi0gICAgLTB4MS5mZmZmZmZmZmZmZjg0NmFmNmVlN2FhNDhhMWU5ZTlmN3AtMSwKLSAgICAtMHgxLjA3ZTRjZWY0Y2JkOTZwNAotICB9LAotICB7IC8vIEVudHJ5IDExMDMKLSAgICAweDEuZmZmZmZmZmZmZmZjNDZhZjZlZTdhYTNkMmY0OGM3YzdwLTEsCi0gICAgMHgxLjA3ZTRjZWY0Y2JkOTdwNAotICB9LAotICB7IC8vIEVudHJ5IDExMDQKLSAgICAtMHgxLmZmZmZmZmZmZmZmYzQ2YWY2ZWU3YWEzZDJmNDhjN2M3cC0xLAotICAgIC0weDEuMDdlNGNlZjRjYmQ5N3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEwNQotICAgIDB4MS4wMDAwMDAwMDAwMDAyMzU3Yjc3M2Q1MWNkZTUzZDJjYnAwLAotICAgIDB4MS4wN2U0Y2VmNGNiZDk4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTA2Ci0gICAgLTB4MS4wMDAwMDAwMDAwMDAyMzU3Yjc3M2Q1MWNkZTUzZDJjYnAwLAotICAgIC0weDEuMDdlNGNlZjRjYmQ5OHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEwNwotICAgIDB4MS4yZjA4NDIzODllNWJjMDE0ZDBmYmU4NDNjY2E2ZGRmM3A0NywKLSAgICAweDEuMTQ3NWNjOWVlZGVmZnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEwOAotICAgIC0weDEuMmYwODQyMzg5ZTViYzAxNGQwZmJlODQzY2NhNmRkZjNwNDcsCi0gICAgLTB4MS4xNDc1Y2M5ZWVkZWZmcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTA5Ci0gICAgMHgxLjczM2M0ZThlZjljNTBjYjU5MjlmNmJiNjc0YmVjNjdmcDQ4LAotICAgIDB4MS4xNDc1Y2M5ZWVkZnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTExMAotICAgIC0weDEuNzMzYzRlOGVmOWM1MGNiNTkyOWY2YmI2NzRiZWM2N2ZwNDgsCi0gICAgLTB4MS4xNDc1Y2M5ZWVkZnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTExMQotICAgIC0weDEuOWM1YjRjNzI4OTg5ODkxZGZiODcxMGFkZjM4Nzg0M2NwNDksCi0gICAgMHgxLjE0NzVjYzllZWRmMDFwNAotICB9LAotICB7IC8vIEVudHJ5IDExMTIKLSAgICAweDEuOWM1YjRjNzI4OTg5ODkxZGZiODcxMGFkZjM4Nzg0M2NwNDksCi0gICAgLTB4MS4xNDc1Y2M5ZWVkZjAxcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTEzCi0gICAgLTB4MS4wMDAwMDAwMDAwMDJlNTdiNWJhNWI1MTU1OTVlZGI5NHAwLAotICAgIDB4MS4yMTA2Y2E0OTEwMDY4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTE0Ci0gICAgMHgxLjAwMDAwMDAwMDAwMmU1N2I1YmE1YjUxNTU5NWVkYjk0cDAsCi0gICAgLTB4MS4yMTA2Y2E0OTEwMDY4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTE1Ci0gICAgLTB4MS4wMDAwMDAwMDAwMDBlNTdiNWJhNWI1MTE4ZTY4MjQ0OXAwLAotICAgIDB4MS4yMTA2Y2E0OTEwMDY5cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTE2Ci0gICAgMHgxLjAwMDAwMDAwMDAwMGU1N2I1YmE1YjUxMThlNjgyNDQ5cDAsCi0gICAgLTB4MS4yMTA2Y2E0OTEwMDY5cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTE3Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmRjYWY2Yjc0YjZhMjM4NmUyZDlmYnAtMSwKLSAgICAweDEuMjEwNmNhNDkxMDA2YXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTExOAotICAgIDB4MS5mZmZmZmZmZmZmZmRjYWY2Yjc0YjZhMjM4NmUyZDlmYnAtMSwKLSAgICAtMHgxLjIxMDZjYTQ5MTAwNmFwNAotICB9LAotICB7IC8vIEVudHJ5IDExMTkKLSAgICAtMHgxLjM0ZjI3Mjk5M2QxNDE0YTJiMzliZDgzN2U2Yzk2YWYwcC00OCwKLSAgICAweDEuMmQ5N2M3ZjMzMjFkMXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEyMAotICAgIDB4MS4zNGYyNzI5OTNkMTQxNGEyYjM5YmQ4MzdlNmM5NmFmMHAtNDgsCi0gICAgLTB4MS4yZDk3YzdmMzMyMWQxcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTIxCi0gICAgLTB4MS5hNzkzOTRjOWU4YTBhNTE1OWNkZWMxYmE4YzcxZjZiYXAtNTEsCi0gICAgMHgxLjJkOTdjN2YzMzIxZDJwNAotICB9LAotICB7IC8vIEVudHJ5IDExMjIKLSAgICAweDEuYTc5Mzk0YzllOGEwYTUxNTljZGVjMWJhOGM3MWY2YmFwLTUxLAotICAgIC0weDEuMmQ5N2M3ZjMzMjFkMnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEyMwotICAgIDB4MS45NjFiMWFjZDg1ZDdkNmJhOThjODRmOTFiMzkwMTAxZnAtNDksCi0gICAgMHgxLjJkOTdjN2YzMzIxZDNwNAotICB9LAotICB7IC8vIEVudHJ5IDExMjQKLSAgICAtMHgxLjk2MWIxYWNkODVkN2Q2YmE5OGM4NGY5MWIzOTAxMDFmcC00OSwKLSAgICAtMHgxLjJkOTdjN2YzMzIxZDNwNAotICB9LAotICB7IC8vIEVudHJ5IDExMjUKLSAgICAweDEuZmZmZmZmZmZmZmY4MjM2MzIyODE4MTkxMWRiMTQ0YmFwLTEsCi0gICAgMHgxLjNhMjhjNTlkNTQzMzlwNAotICB9LAotICB7IC8vIEVudHJ5IDExMjYKLSAgICAtMHgxLmZmZmZmZmZmZmZmODIzNjMyMjgxODE5MTFkYjE0NGJhcC0xLAotICAgIC0weDEuM2EyOGM1OWQ1NDMzOXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEyNwotICAgIDB4MS5mZmZmZmZmZmZmZmMyMzYzMjI4MTgxODU2NDc3ODliZHAtMSwKLSAgICAweDEuM2EyOGM1OWQ1NDMzYXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEyOAotICAgIC0weDEuZmZmZmZmZmZmZmZjMjM2MzIyODE4MTg1NjQ3Nzg5YmRwLTEsCi0gICAgLTB4MS4zYTI4YzU5ZDU0MzNhcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTI5Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDExYjE5MTQwYzBjMGQ1OWVlNzYwcDAsCi0gICAgMHgxLjNhMjhjNTlkNTQzM2JwNAotICB9LAotICB7IC8vIEVudHJ5IDExMzAKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDExYjE5MTQwYzBjMGQ1OWVlNzYwcDAsCi0gICAgLTB4MS4zYTI4YzU5ZDU0MzNicDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTMxCi0gICAgMHgxLjI4ZjkzNDMxNWU1ZWI5YjQ1YTYwM2E1Zjc4OGRlMTMxcDQ3LAotICAgIDB4MS40NmI5YzM0Nzc2NGEycDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTMyCi0gICAgLTB4MS4yOGY5MzQzMTVlNWViOWI0NWE2MDNhNWY3ODhkZTEzMXA0NywKLSAgICAtMHgxLjQ2YjljMzQ3NzY0YTJwNAotICB9LAotICB7IC8vIEVudHJ5IDExMzMKLSAgICAweDEuNjE4ZmRiN2YyMWMxM2MyMzZhNGM0NTUxZmYxMzlmNWRwNDgsCi0gICAgMHgxLjQ2YjljMzQ3NzY0YTNwNAotICB9LAotICB7IC8vIEVudHJ5IDExMzQKLSAgICAtMHgxLjYxOGZkYjdmMjFjMTNjMjM2YTRjNDU1MWZmMTM5ZjVkcDQ4LAotICAgIC0weDEuNDZiOWMzNDc3NjRhM3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEzNQotICAgIC0weDEuY2ZkZTYxMjE4YWI5ZTc5ZmZlOGYwNDZhZmRmMDBkZTNwNDksCi0gICAgMHgxLjQ2YjljMzQ3NzY0YTRwNAotICB9LAotICB7IC8vIEVudHJ5IDExMzYKLSAgICAweDEuY2ZkZTYxMjE4YWI5ZTc5ZmZlOGYwNDZhZmRmMDBkZTNwNDksCi0gICAgLTB4MS40NmI5YzM0Nzc2NGE0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTM3Ci0gICAgLTB4MS4wMDAwMDAwMDAwMDJmNzIxODFkOGM5NzE5M2Y5ZWU0OXAwLAotICAgIDB4MS41MzRhYzBmMTk4NjBicDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTM4Ci0gICAgMHgxLjAwMDAwMDAwMDAwMmY3MjE4MWQ4Yzk3MTkzZjllZTQ5cDAsCi0gICAgLTB4MS41MzRhYzBmMTk4NjBicDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTM5Ci0gICAgLTB4MS4wMDAwMDAwMDAwMDBmNzIxODFkOGM5NmRhNWI2ZWE5OHAwLAotICAgIDB4MS41MzRhYzBmMTk4NjBjcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTQwCi0gICAgMHgxLjAwMDAwMDAwMDAwMGY3MjE4MWQ4Yzk2ZGE1YjZlYTk4cDAsCi0gICAgLTB4MS41MzRhYzBmMTk4NjBjcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTQxCi0gICAgLTB4MS5mZmZmZmZmZmZmZmRlZTQzMDNiMTkyZGI2ZWU3Y2RjZHAtMSwKLSAgICAweDEuNTM0YWMwZjE5ODYwZHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE0MgotICAgIDB4MS5mZmZmZmZmZmZmZmRlZTQzMDNiMTkyZGI2ZWU3Y2RjZHAtMSwKLSAgICAtMHgxLjUzNGFjMGYxOTg2MGRwNAotICB9LAotICB7IC8vIEVudHJ5IDExNDMKLSAgICAtMHgxLjNkYzU4NWIyYzc0MjE4MTMyNmUwN2M0MTJjMjRhMDUycC00OCwKLSAgICAweDEuNWZkYmJlOWJiYTc3NHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE0NAotICAgIDB4MS4zZGM1ODViMmM3NDIxODEzMjZlMDdjNDEyYzI0YTA1MnAtNDgsCi0gICAgLTB4MS41ZmRiYmU5YmJhNzc0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTQ1Ci0gICAgLTB4MS5lZTJjMmQ5NjNhMTBjMDk5MzcwM2UyMDQ1MTEwNTk1ZXAtNTEsCi0gICAgMHgxLjVmZGJiZTliYmE3NzVwNAotICB9LAotICB7IC8vIEVudHJ5IDExNDYKLSAgICAweDEuZWUyYzJkOTYzYTEwYzA5OTM3MDNlMjA0NTExMDU5NWVwLTUxLAotICAgIC0weDEuNWZkYmJlOWJiYTc3NXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE0NwotICAgIDB4MS44NDc0ZjQ5YTcxN2JjZmQ5YjIzZjA3N2YzOGFhZmQyYXAtNDksCi0gICAgMHgxLjVmZGJiZTliYmE3NzZwNAotICB9LAotICB7IC8vIEVudHJ5IDExNDgKLSAgICAtMHgxLjg0NzRmNDlhNzE3YmNmZDliMjNmMDc3ZjM4YWFmZDJhcC00OSwKLSAgICAtMHgxLjVmZGJiZTliYmE3NzZwNAotICB9LAotICB7IC8vIEVudHJ5IDExNDkKLSAgICAweDEuZmZmZmZmZmZmZmY4MDAxNmQ2MWI1OGQ5OWJlNzk5NGVwLTEsCi0gICAgMHgxLjZjNmNiYzQ1ZGM4ZGNwNAotICB9LAotICB7IC8vIEVudHJ5IDExNTAKLSAgICAtMHgxLmZmZmZmZmZmZmZmODAwMTZkNjFiNThkOTliZTc5OTRlcC0xLAotICAgIC0weDEuNmM2Y2JjNDVkYzhkY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE1MQotICAgIDB4MS5mZmZmZmZmZmZmZmMwMDE2ZDYxYjU4Y2Q5YzE1NDU4NXAtMSwKLSAgICAweDEuNmM2Y2JjNDVkYzhkZHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE1MgotICAgIC0weDEuZmZmZmZmZmZmZmZjMDAxNmQ2MWI1OGNkOWMxNTQ1ODVwLTEsCi0gICAgLTB4MS42YzZjYmM0NWRjOGRkcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTUzCi0gICAgMHgxLjAwMDAwMDAwMDAwMDAwMGI2YjBkYWM2NGNlMjE3OGRkcDAsCi0gICAgMHgxLjZjNmNiYzQ1ZGM4ZGVwNAotICB9LAotICB7IC8vIEVudHJ5IDExNTQKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDAwMGI2YjBkYWM2NGNlMjE3OGRkcDAsCi0gICAgLTB4MS42YzZjYmM0NWRjOGRlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTU1Ci0gICAgMHgxLjIzMjZmNGU4ZjJiYjE4MGU1YmYwNDE3ZDc1ZWE1ZDllcDQ3LAotICAgIDB4MS43OGZkYjllZmZlYTQ1cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTU2Ci0gICAgLTB4MS4yMzI2ZjRlOGYyYmIxODBlNWJmMDQxN2Q3NWVhNWQ5ZXA0NywKLSAgICAtMHgxLjc4ZmRiOWVmZmVhNDVwNAotICB9LAotICB7IC8vIEVudHJ5IDExNTcKLSAgICAweDEuNTE3ZWEwODcwOGJhNjlkYTMzM2E4Yzg1ZjNiYzY2MDlwNDgsCi0gICAgMHgxLjc4ZmRiOWVmZmVhNDZwNAotICB9LAotICB7IC8vIEVudHJ5IDExNTgKLSAgICAtMHgxLjUxN2VhMDg3MDhiYTY5ZGEzMzNhOGM4NWYzYmM2NjA5cDQ4LAotICAgIC0weDEuNzhmZGI5ZWZmZWE0NnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE1OQotICAgIC0weDEuMDkwYjNkNTE2MTc4NWFjMmQzMTY2M2Y3ZTVkNmJlZDRwNTAsCi0gICAgMHgxLjc4ZmRiOWVmZmVhNDdwNAotICB9LAotICB7IC8vIEVudHJ5IDExNjAKLSAgICAweDEuMDkwYjNkNTE2MTc4NWFjMmQzMTY2M2Y3ZTVkNmJlZDRwNTAsCi0gICAgLTB4MS43OGZkYjllZmZlYTQ3cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTYxCi0gICAgLTB4MS4wMDAwMDAwMDAwMDMwOGM3YTgwYmRkY2RjZmNjN2RlN3AwLAotICAgIDB4MS44NThlYjc5YTIwYmFlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTYyCi0gICAgMHgxLjAwMDAwMDAwMDAwMzA4YzdhODBiZGRjZGNmY2M3ZGU3cDAsCi0gICAgLTB4MS44NThlYjc5YTIwYmFlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTYzCi0gICAgLTB4MS4wMDAwMDAwMDAwMDEwOGM3YTgwYmRkYzliZTNkMmRjZnAwLAotICAgIDB4MS44NThlYjc5YTIwYmFmcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTY0Ci0gICAgMHgxLjAwMDAwMDAwMDAwMTA4YzdhODBiZGRjOWJlM2QyZGNmcDAsCi0gICAgLTB4MS44NThlYjc5YTIwYmFmcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTY1Ci0gICAgLTB4MS5mZmZmZmZmZmZmZmUxMThmNTAxN2JiOTM1OTViYmI2ZnAtMSwKLSAgICAweDEuODU4ZWI3OWEyMGJiMHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE2NgotICAgIDB4MS5mZmZmZmZmZmZmZmUxMThmNTAxN2JiOTM1OTViYmI2ZnAtMSwKLSAgICAtMHgxLjg1OGViNzlhMjBiYjBwNAotICB9LAotICB7IC8vIEVudHJ5IDExNjcKLSAgICAtMHgxLmFmMDc5MjAwMWY4NTYzMzVhMzgwMTBhNmE2ODMyZTZicDIsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwNjIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTY4Ci0gICAgMHgxLmFmMDc5MjAwMWY4NTYzMzVhMzgwMTBhNmE2ODMyZTZicDIsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2OQotICAgIDB4MS41MmY1MGU3NTc5NDFjYmZmNWI3YzJlMDZhMWFiN2U5ZHA2LAotICAgIDB4MS4wcDYzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE3MAotICAgIC0weDEuNTJmNTBlNzU3OTQxY2JmZjViN2MyZTA2YTFhYjdlOWRwNiwKLSAgICAtMHgxLjBwNjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTcxCi0gICAgMHgxLjc1NzA2NjdkMDMyZWNhOGVmNzgwYWQ1OWQzZTI3ZTRicDEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwNjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTcyCi0gICAgLTB4MS43NTcwNjY3ZDAzMmVjYThlZjc4MGFkNTlkM2UyN2U0YnAxLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXA2MwotICB9LAotICB7IC8vIEVudHJ5IDExNzMKLSAgICAtMHgxLjJlOGZjMjQ4ZTdiODU0ZmU1YzJkYzlkMjg3ZGUwY2QzcDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTc0Ci0gICAgMHgxLjJlOGZjMjQ4ZTdiODU0ZmU1YzJkYzlkMjg3ZGUwY2QzcDAsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcDI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE3NQotICAgIC0weDEuMmU4ZmMxYWY4MWQ4YmFhODg5OWEzMzI1MjAwYzBkY2JwMCwKLSAgICAweDEuMHAyNwotICB9LAotICB7IC8vIEVudHJ5IDExNzYKLSAgICAweDEuMmU4ZmMxYWY4MWQ4YmFhODg5OWEzMzI1MjAwYzBkY2JwMCwKLSAgICAtMHgxLjBwMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTc3Ci0gICAgLTB4MS4yZThmYzA3Y2I2MWE5NWVmNWU1ZDhkNjQxNjY1MmM3YXAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE3OAotICAgIDB4MS4yZThmYzA3Y2I2MWE5NWVmNWU1ZDhkNjQxNjY1MmM3YXAwLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyNwotICB9LAotICB7IC8vIEVudHJ5IDExNzkKLSAgICAtMHgxLjNlYTI4Mjg2MGU3ZmJlMTc2NTYwN2MyZmRiMzI0ODFmcDAsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTgwCi0gICAgMHgxLjNlYTI4Mjg2MGU3ZmJlMTc2NTYwN2MyZmRiMzI0ODFmcDAsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE4MQotICAgIC0weDEuM2VhMjgyNzFhOWJlYTM2ZTc0NGY5Y2U1MzdiYTRiNTlwMCwKLSAgICAweDEuMHAyNAotICB9LAotICB7IC8vIEVudHJ5IDExODIKLSAgICAweDEuM2VhMjgyNzFhOWJlYTM2ZTc0NGY5Y2U1MzdiYTRiNTlwMCwKLSAgICAtMHgxLjBwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTgzCi0gICAgLTB4MS4zZWEyODI0OGUwM2M3MmRlZjcwZTdlZmI0YzQzZjAzZXAwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE4NAotICAgIDB4MS4zZWEyODI0OGUwM2M3MmRlZjcwZTdlZmI0YzQzZjAzZXAwLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAyNAotICB9LAotICB7IC8vIEVudHJ5IDExODUKLSAgICAweDEuMjg2NmY5YmU0ZGUwZWMyN2VmYTkwNDlhYjgwYmJkNmNwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE4NgotICAgIC0weDEuMjg2NmY5YmU0ZGUwZWMyN2VmYTkwNDlhYjgwYmJkNmNwMCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMQotICB9LAotICB7IC8vIEVudHJ5IDExODcKLSAgICAweDEuMjg2NmY5YmU0ZGUxMzcwZGI5MDc4NjA3MDEyY2IwN2JwMCwKLSAgICAweDEuMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE4OAotICAgIC0weDEuMjg2NmY5YmU0ZGUxMzcwZGI5MDc4NjA3MDEyY2IwN2JwMCwKLSAgICAtMHgxLjBwMgotICB9LAotICB7IC8vIEVudHJ5IDExODkKLSAgICAweDEuMjg2NmY5YmU0ZGUxY2NkOTRiYzQ4OGRmZDQ3ODczYWZwMCwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE5MAotICAgIC0weDEuMjg2NmY5YmU0ZGUxY2NkOTRiYzQ4OGRmZDQ3ODczYWZwMCwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMgotICB9LAotICB7IC8vIEVudHJ5IDExOTEKLSAgICAtMHgxLjE3YWY2MmUwOTUwZmIxZTcwMWM2NDJlZjg3MzdmNTE2cDEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDExOTIKLSAgICAweDEuMTdhZjYyZTA5NTBmYjFlNzAxYzY0MmVmODczN2Y1MTZwMSwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMAotICB9LAotICB7IC8vIEVudHJ5IDExOTMKLSAgICAtMHgxLjE3YWY2MmUwOTUwZjgzYjUwOTkwODdhYWY2N2FmOWMxcDEsCi0gICAgMHgxLjBwMQotICB9LAotICB7IC8vIEVudHJ5IDExOTQKLSAgICAweDEuMTdhZjYyZTA5NTBmODNiNTA5OTA4N2FhZjY3YWY5YzFwMSwKLSAgICAtMHgxLjBwMQotICB9LAotICB7IC8vIEVudHJ5IDExOTUKLSAgICAtMHgxLjE3YWY2MmUwOTUwZjI3NTExOTI1MTEyMWZhZGIxN2JhcDEsCi0gICAgMHgxLjAwMDAwMDAwMDAwMDFwMQotICB9LAotICB7IC8vIEVudHJ5IDExOTYKLSAgICAweDEuMTdhZjYyZTA5NTBmMjc1MTE5MjUxMTIxZmFkYjE3YmFwMSwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwMQotICB9LAotICB7IC8vIEVudHJ5IDExOTcKLSAgICAweDEuOGViMjQ1Y2JlZTNhNDAyMzU2MTNlNzU3NTAyMGQzMGRwMCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMQotICB9LAotICB7IC8vIEVudHJ5IDExOTgKLSAgICAtMHgxLjhlYjI0NWNiZWUzYTQwMjM1NjEzZTc1NzUwMjBkMzBkcDAsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE5OQotICAgIDB4MS44ZWIyNDVjYmVlM2E1YjhhY2M3ZDQxMzIzMTQwYjNiNXAwLAotICAgIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjAwCi0gICAgLTB4MS44ZWIyNDVjYmVlM2E1YjhhY2M3ZDQxMzIzMTQwYjNiNXAwLAotICAgIC0weDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwMQotICAgIDB4MS44ZWIyNDVjYmVlM2E5MjU5Yjk0ZmY0ZTdmYjgxMTFlY3AwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjAyCi0gICAgLTB4MS44ZWIyNDVjYmVlM2E5MjU5Yjk0ZmY0ZTdmYjgxMTFlY3AwLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwMwotICAgIDB4MS4xN2I0ZjViZjM0NzQ5OWNlNDE4NTVkZWU0MzQ0YmQxZHAtMSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMgotICB9LAotICB7IC8vIEVudHJ5IDEyMDQKLSAgICAtMHgxLjE3YjRmNWJmMzQ3NDk5Y2U0MTg1NWRlZTQzNDRiZDFkcC0xLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMgotICB9LAotICB7IC8vIEVudHJ5IDEyMDUKLSAgICAweDEuMTdiNGY1YmYzNDc0YTQzMTc5NjQ4MDc4ODI0NDRjYzhwLTEsCi0gICAgMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjA2Ci0gICAgLTB4MS4xN2I0ZjViZjM0NzRhNDMxNzk2NDgwNzg4MjQ0NGNjOHAtMSwKLSAgICAtMHgxLjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjA3Ci0gICAgMHgxLjE3YjRmNWJmMzQ3NGI4ZjdlOTIyYzU4ZDAwY2I5ZGQycC0xLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwOAotICAgIC0weDEuMTdiNGY1YmYzNDc0YjhmN2U5MjJjNThkMDBjYjlkZDJwLTEsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIwOQotICAgIDB4MS4wNTc4NWE0M2M0YzU1NWRlMGNiMTM3MWYxMGRiMzFhZnAtMiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtMwotICB9LAotICB7IC8vIEVudHJ5IDEyMTAKLSAgICAtMHgxLjA1Nzg1YTQzYzRjNTU1ZGUwY2IxMzcxZjEwZGIzMWFmcC0yLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMwotICB9LAotICB7IC8vIEVudHJ5IDEyMTEKLSAgICAweDEuMDU3ODVhNDNjNGM1NWU2Mzk0MDE4ODk2NWMyOGJkMGZwLTIsCi0gICAgMHgxLjBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjEyCi0gICAgLTB4MS4wNTc4NWE0M2M0YzU1ZTYzOTQwMTg4OTY1YzI4YmQwZnAtMiwKLSAgICAtMHgxLjBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjEzCi0gICAgMHgxLjA1Nzg1YTQzYzRjNTZmNmVhMmEyMmI4NGYyZGRmMDNmcC0yLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIxNAotICAgIC0weDEuMDU3ODVhNDNjNGM1NmY2ZWEyYTIyYjg0ZjJkZGYwM2ZwLTIsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIxNQotICAgIDB4MS4wMTU3N2FmMTUxMWE0NWU0MDNkZDYwYzhkODI1OTBkMHAtMywKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNAotICB9LAotICB7IC8vIEVudHJ5IDEyMTYKLSAgICAtMHgxLjAxNTc3YWYxNTExYTQ1ZTQwM2RkNjBjOGQ4MjU5MGQwcC0zLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNAotICB9LAotICB7IC8vIEVudHJ5IDEyMTcKLSAgICAweDEuMDE1NzdhZjE1MTFhNGUwNDU5ZjViODcyZDRmZjM0ZmRwLTMsCi0gICAgMHgxLjBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjE4Ci0gICAgLTB4MS4wMTU3N2FmMTUxMWE0ZTA0NTlmNWI4NzJkNGZmMzRmZHAtMywKLSAgICAtMHgxLjBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjE5Ci0gICAgMHgxLjAxNTc3YWYxNTExYTVlNDUwNjI2NjdjNmNlYjg5ZGM0cC0zLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIyMAotICAgIC0weDEuMDE1NzdhZjE1MTFhNWU0NTA2MjY2N2M2Y2ViODlkYzRwLTMsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIyMQotICAgIDB4MS4wMDU1Nzc4NTRkZjAwMDJhOGU2NjA2ZjZjNjE4ZDk4OHAtNCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNQotICB9LAotICB7IC8vIEVudHJ5IDEyMjIKLSAgICAtMHgxLjAwNTU3Nzg1NGRmMDAwMmE4ZTY2MDZmNmM2MThkOTg4cC00LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNQotICB9LAotICB7IC8vIEVudHJ5IDEyMjMKLSAgICAweDEuMDA1NTc3ODU0ZGYwMDgzMjkzYmU2MzkwNTdiMGM2ODFwLTQsCi0gICAgMHgxLjBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjI0Ci0gICAgLTB4MS4wMDU1Nzc4NTRkZjAwODMyOTNiZTYzOTA1N2IwYzY4MXAtNCwKLSAgICAtMHgxLjBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjI1Ci0gICAgMHgxLjAwNTU3Nzg1NGRmMDE4NDI5ZTZmMWNjMzdhZTIyMjc0cC00LAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIyNgotICAgIC0weDEuMDA1NTc3ODU0ZGYwMTg0MjllNmYxY2MzN2FlMjIyNzRwLTQsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIyNwotICAgIDB4MS4wMDE1NTc3N2FlYzA3ZDdiMjI3NDFkMTJlZTUzYTlmY3AtNSwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNgotICB9LAotICB7IC8vIEVudHJ5IDEyMjgKLSAgICAtMHgxLjAwMTU1Nzc3YWVjMDdkN2IyMjc0MWQxMmVlNTNhOWZjcC01LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNgotICB9LAotICB7IC8vIEVudHJ5IDEyMjkKLSAgICAweDEuMDAxNTU3NzdhZWMwODU3ZDIyYzk3ZTgwOTg2MDI4OGRwLTUsCi0gICAgMHgxLjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjMwCi0gICAgLTB4MS4wMDE1NTc3N2FlYzA4NTdkMjJjOTdlODA5ODYwMjg4ZHAtNSwKLSAgICAtMHgxLjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjMxCi0gICAgMHgxLjAwMTU1Nzc3YWVjMDk1ODEyMzc0NDE1YmVjNzk4NWNlcC01LAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIzMgotICAgIC0weDEuMDAxNTU3NzdhZWMwOTU4MTIzNzQ0MTViZWM3OTg1Y2VwLTUsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIzMwotICAgIDB4MS4wMDA1NTU3Nzc4NTQ4MmUxMzVmMGFmZWViZTgwNWFkYnAtNiwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAtNwotICB9LAotICB7IC8vIEVudHJ5IDEyMzQKLSAgICAtMHgxLjAwMDU1NTc3Nzg1NDgyZTEzNWYwYWZlZWJlODA1YWRicC02LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtNwotICB9LAotICB7IC8vIEVudHJ5IDEyMzUKLSAgICAweDEuMDAwNTU1Nzc3ODU0OGFlMWI1ZjYwNTc0NzA2ZTgyMzhwLTYsCi0gICAgMHgxLjBwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjM2Ci0gICAgLTB4MS4wMDA1NTU3Nzc4NTQ4YWUxYjVmNjA1NzQ3MDZlODIzOHAtNiwKLSAgICAtMHgxLjBwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjM3Ci0gICAgMHgxLjAwMDU1NTc3Nzg1NDlhZTJiNjAwYjA3ZmQ0NGFlOGYzcC02LAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIzOAotICAgIC0weDEuMDAwNTU1Nzc3ODU0OWFlMmI2MDBiMDdmZDQ0YWU4ZjNwLTYsCi0gICAgLTB4MS4wMDAwMDAwMDAwMDAxcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIzOQotICAgIDB4MS4wMDAwMDAwNTU1NTU0ZDc3Nzc3NmY4NTQ4NTQzMDRjOXAtMTQsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI0MAotICAgIC0weDEuMDAwMDAwMDU1NTU1NGQ3Nzc3NzZmODU0ODU0MzA0YzlwLTE0LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQxCi0gICAgMHgxLjAwMDAwMDA1NTU1NTU1Nzc3Nzc3Nzg1NDg1NDg1YTFlcC0xNCwKLSAgICAweDEuMHAtMTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQyCi0gICAgLTB4MS4wMDAwMDAwNTU1NTU1NTc3Nzc3Nzc4NTQ4NTQ4NWExZXAtMTQsCi0gICAgLTB4MS4wcC0xNAotICB9LAotICB7IC8vIEVudHJ5IDEyNDMKLSAgICAweDEuMDAwMDAwMDU1NTU1NjU3Nzc3Nzg3ODU0ODU1MzA0YzlwLTE0LAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0xNAotICB9LAotICB7IC8vIEVudHJ5IDEyNDQKLSAgICAtMHgxLjAwMDAwMDA1NTU1NTY1Nzc3Nzc4Nzg1NDg1NTMwNGM5cC0xNCwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTE0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI0NQotICAgIDB4MS5mZmZmZmZmZmZmZmZmMmFhYWFhYWFhYWFhYTZlZWVlZXAtMjgsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTI4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI0NgotICAgIC0weDEuZmZmZmZmZmZmZmZmZjJhYWFhYWFhYWFhYWE2ZWVlZWVwLTI4LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMjgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQ3Ci0gICAgMHgxLjAwMDAwMDAwMDAwMDAxNTU1NTU1NTU1NTU1NTc3Nzc3cC0yNywKLSAgICAweDEuMHAtMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQ4Ci0gICAgLTB4MS4wMDAwMDAwMDAwMDAwMTU1NTU1NTU1NTU1NTU3Nzc3N3AtMjcsCi0gICAgLTB4MS4wcC0yNwotICB9LAotICB7IC8vIEVudHJ5IDEyNDkKLSAgICAweDEuMDAwMDAwMDAwMDAwMTE1NTU1NTU1NTU1NTU5Nzc3NzdwLTI3LAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0yNwotICB9LAotICB7IC8vIEVudHJ5IDEyNTAKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDExNTU1NTU1NTU1NTU1OTc3Nzc3cC0yNywKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI1MQotICAgIDB4MS5mZmZmZmZmZmZmZmZmMDBhYWFhYWFhYWFhYWE5YWFlZXAtMzEsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmZwLTMxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI1MgotICAgIC0weDEuZmZmZmZmZmZmZmZmZjAwYWFhYWFhYWFhYWFhOWFhZWVwLTMxLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAtMzEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjUzCi0gICAgMHgxLjAwMDAwMDAwMDAwMDAwMDU1NTU1NTU1NTU1NTU1NTc3cC0zMCwKLSAgICAweDEuMHAtMzAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjU0Ci0gICAgLTB4MS4wMDAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1NTU3N3AtMzAsCi0gICAgLTB4MS4wcC0zMAotICB9LAotICB7IC8vIEVudHJ5IDEyNTUKLSAgICAweDEuMDAwMDAwMDAwMDAwMTAwNTU1NTU1NTU1NTU1NjU1NzdwLTMwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcC0zMAotICB9LAotICB7IC8vIEVudHJ5IDEyNTYKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDEwMDU1NTU1NTU1NTU1NTY1NTc3cC0zMCwKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDFwLTMwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI1NwotICAgIDB4MS40NTMwY2ZlNzI5NDgzYjhkYTFmNzEwMWUxNmNkNzRiN3AtOCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDEyNTgKLSAgICAtMHgxLjQ1MzBjZmU3Mjk0ODNiOGRhMWY3MTAxZTE2Y2Q3NGI3cC04LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjU5Ci0gICAgLTB4MS40NTMwY2ZlNzI5NDgzYjhkYTFmNzEwMWUxNmNkNzRiN3AtOCwKLSAgICAweDEuZmZmZmZmZmZmZmZmZnAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI2MAotICAgIDB4MS40NTMwY2ZlNzI5NDgzYjhkYTFmNzEwMWUxNmNkNzRiN3AtOCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwMTAyMwotICB9LAotICB7IC8vIEVudHJ5IDEyNjEKLSAgICAtMHgxLjQ1MzBjZmU3Mjk0ODNiOGRhMWY3MTAxZTE2Y2Q3NGI3cC04LAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjYyCi0gICAgMHgxLjQ1MzBjZmU3Mjk0ODNiOGRhMWY3MTAxZTE2Y2Q3NGI3cC04LAotICAgIC0weDEuZmZmZmZmZmZmZmZmZnAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI2MwotICAgIDB4MS4zYzZlOTk3MGY3OGI4NGZjODIyNzUxN2ZkNTIxMDE3YnAxLAotICAgIDB4MS5mZmZmZmZmZmZmZmZlcDEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjY0Ci0gICAgLTB4MS4zYzZlOTk3MGY3OGI4NGZjODIyNzUxN2ZkNTIxMDE3YnAxLAotICAgIC0weDEuZmZmZmZmZmZmZmZmZXAxMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI2NQotICAgIC0weDEuMWE2MjYzMzE0NWMwNmUwZTY4OTQ4MTI3MDQ2MWQ1ZDdwLTUzLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjY2Ci0gICAgMHgxLjFhNjI2MzMxNDVjMDZlMGU2ODk0ODEyNzA0NjFkNWQ3cC01MywKLSAgICAtMHgxLjkyMWZiNTQ0NDJkMThwMQotICB9LAotICB7IC8vIEVudHJ5IDEyNjcKLSAgICAweDEuZDAyOTY3YzMxY2RiNGUwYzM4ZDAxYjY1NWQ1ZTBhYWZwNTMsCi0gICAgMHgxLjkyMWZiNTQ0NDJkMThwMAotICB9LAotICB7IC8vIEVudHJ5IDEyNjgKLSAgICAtMHgxLmQwMjk2N2MzMWNkYjRlMGMzOGQwMWI2NTVkNWUwYWFmcDUzLAotICAgIC0weDEuOTIxZmI1NDQ0MmQxOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI2OQotICAgIDB4MS44ZWIyNDVjYmVlM2E5MjU5Yjk0ZmY0ZTdmYjgxMTFlY3AwLAotICAgIDB4MS4wMDAwMDAwMDAwMDAxcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjcwCi0gICAgLTB4MS44ZWIyNDVjYmVlM2E5MjU5Yjk0ZmY0ZTdmYjgxMTFlY3AwLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI3MQotICAgIDB4MS44ZWIyNDVjYmVlM2E1YjhhY2M3ZDQxMzIzMTQwYjNiNXAwLAotICAgIDB4MS4wcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjcyCi0gICAgLTB4MS44ZWIyNDVjYmVlM2E1YjhhY2M3ZDQxMzIzMTQwYjNiNXAwLAotICAgIC0weDEuMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI3MwotICAgIDB4MS44ZWIyNDVjYmVlM2E0MDIzNTYxM2U3NTc1MDIwZDMwZHAwLAotICAgIDB4MS5mZmZmZmZmZmZmZmZmcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI3NAotICAgIC0weDEuOGViMjQ1Y2JlZTNhNDAyMzU2MTNlNzU3NTAyMGQzMGRwMCwKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjc1Ci0gICAgMHgxLmZmZmZmZmZmZmZmZmY3MmNlY2U2NzVkMWZjYTMwNDg5cC0xLAotICAgIDB4MS45MjFmYjU0NDQyZDE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI3NgotICAgIC0weDEuZmZmZmZmZmZmZmZmZjcyY2VjZTY3NWQxZmNhMzA0ODlwLTEsCi0gICAgLTB4MS45MjFmYjU0NDQyZDE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI3NwotICAgIDB4MS4wMDAwMDAwMDAwMDAxMHAtMTAyMiwKLSAgICAweDEuMDAwMDAwMDAwMDAwMXAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDEyNzgKLSAgICAtMHgxLjAwMDAwMDAwMDAwMDEwcC0xMDIyLAotICAgIC0weDEuMDAwMDAwMDAwMDAwMXAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDEyNzkKLSAgICAweDEucC0xMDIyLAotICAgIDB4MS4wcC0xMDIyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI4MAotICAgIC0weDEucC0xMDIyLAotICAgIC0weDEuMHAtMTAyMgotICB9LAotICB7IC8vIEVudHJ5IDEyODEKLSAgICAweDEuZmZmZmZmZmZmZmZmZTBwLTEwMjMsCi0gICAgMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjgyCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZlMHAtMTAyMywKLSAgICAtMHgxLmZmZmZmZmZmZmZmZmVwLTEwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjgzCi0gICAgMHgxLmZmZmZmZmZmZmZmZmMwcC0xMDIzLAotICAgIDB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI4NAotICAgIC0weDEuZmZmZmZmZmZmZmZmYzBwLTEwMjMsCi0gICAgLTB4MS5mZmZmZmZmZmZmZmZjcC0xMDIzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI4NQotICAgIDB4MS5wLTEwNzMsCi0gICAgMHgxLjBwLTEwNzMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjg2Ci0gICAgLTB4MS5wLTEwNzMsCi0gICAgLTB4MS4wcC0xMDczCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI4NwotICAgIDB4MS5wLTEwNzQsCi0gICAgMHgxLjBwLTEwNzQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjg4Ci0gICAgLTB4MS5wLTEwNzQsCi0gICAgLTB4MS4wcC0xMDc0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTI4OQotICAgIDAuMCwKLSAgICAwLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjkwCi0gICAgLTAuMCwKLSAgICAtMC4wCi0gIH0sCi19OwotI2VuZGlmIC8vIF9fQklPTklDX18KLQotVEVTVChtYXRoX3RhbiwgdGFuX2ludGVsKSB7Ci0jaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHNpemVvZihnX3Rhbl9pbnRlbF9kYXRhKS9zaXplb2YodGFuX2ludGVsX2RhdGFfdCk7IGkrKykgewotICAgIEVYUEVDVF9ET1VCTEVfRVEoZ190YW5faW50ZWxfZGF0YVtpXS5leHBlY3RlZCwgdGFuKGdfdGFuX2ludGVsX2RhdGFbaV0uY2FsbF9kYXRhKSkgPDwgIkZhaWxlZCBvbiBlbGVtZW50ICIgPDwgaTsKLSAgfQotI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLiI7Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwotfQpkaWZmIC0tZ2l0IGEvdGVzdHMvbWF0aF90YW5mX3Rlc3QuY3BwIGIvdGVzdHMvbWF0aF90YW5mX3Rlc3QuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5MzE5MDQ2Li4wMDAwMDAwCi0tLSBhL3Rlc3RzL21hdGhfdGFuZl90ZXN0LmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDQ0NTkgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Ci0gKgotICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7Ci0gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCi0gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKLSAqCi0gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAotICoKLSAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKLSAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCi0gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KLSAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKLSAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgotICovCi0KLSNpbmNsdWRlIDxtYXRoLmg+Ci0KLSNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgotCi0jaWYgZGVmaW5lZChfX0JJT05JQ19fKQotdHlwZWRlZiBzdHJ1Y3QgewotICBmbG9hdCBleHBlY3RlZDsKLSAgZmxvYXQgY2FsbF9kYXRhOwotfSB0YW5mX2ludGVsX2RhdGFfdDsKLQotc3RhdGljIHRhbmZfaW50ZWxfZGF0YV90IGdfdGFuZl9pbnRlbF9kYXRhW10gPSB7Ci0gIHsgLy8gRW50cnkgMAotICAgIC0weDEuMDAwMDAwMDAwMDE1NTU1NTU1NTU1Nzc3Nzc3Nzc3NzdwLTIxLAotICAgIC0weDEucC0yMQotICB9LAotICB7IC8vIEVudHJ5IDEKLSAgICAweDEuMDAwMDAwMDAwMDE1NTU1NTU1NTU1Nzc3Nzc3Nzc3NzdwLTIxLAotICAgIDB4MS5wLTIxCi0gIH0sCi0gIHsgLy8gRW50cnkgMgotICAgIC0weDEucC0xNDksCi0gICAgLTB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDMKLSAgICAweDEucC0xNDksCi0gICAgMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNAotICAgIC0weDEuMDAwMDAyMDAwMDAwMDAwMDAwMDAxNTU1NTVkNTU1NTZwLTQxLAotICAgIC0weDEuMDAwMDAycC00MQotICB9LAotICB7IC8vIEVudHJ5IDUKLSAgICAweDEuMDAwMDAyMDAwMDAwMDAwMDAwMDAxNTU1NTVkNTU1NTZwLTQxLAotICAgIDB4MS4wMDAwMDJwLTQxCi0gIH0sCi0gIHsgLy8gRW50cnkgNgotICAgIC0weDEuZmZiN2ViMDA0YjdlMTJiMzY5Mzg4ZmFhYTAzNDJmNmNwLTMsCi0gICAgLTB4MS4yN2NjYTZwNwotICB9LAotICB7IC8vIEVudHJ5IDcKLSAgICAweDEuZmZiN2ViMDA0YjdlMTJiMzY5Mzg4ZmFhYTAzNDJmNmNwLTMsCi0gICAgMHgxLjI3Y2NhNnA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgOAotICAgIC0weDEuM2I3ZGRhZmZkYzlhMmZhZDM5ZjMyOTc0M2ZiZjQ5ZTVwNCwKLSAgICAtMHgxLjJhNTk5NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgOQotICAgIDB4MS4zYjdkZGFmZmRjOWEyZmFkMzlmMzI5NzQzZmJmNDllNXA0LAotICAgIDB4MS4yYTU5OTZwMgotICB9LAotICB7IC8vIEVudHJ5IDEwCi0gICAgMHgxLjgxOWYzMmZmZDk3YjFlZDY2N2JjMTQzMzg3MDM3ZGRlcC0xLAotICAgIC0weDEuM2Y3ZjIycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMQotICAgIC0weDEuODE5ZjMyZmZkOTdiMWVkNjY3YmMxNDMzODcwMzdkZGVwLTEsCi0gICAgMHgxLjNmN2YyMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIKLSAgICAtMHgxLjQwNWY5MDAwMDAwMDAwMDAwMDBhNzQwMjg0NjU4M2QwcC0zOCwKLSAgICAtMHgxLjQwNWY5MHAtMzgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMwotICAgIDB4MS40MDVmOTAwMDAwMDAwMDAwMDAwYTc0MDI4NDY1ODNkMHAtMzgsCi0gICAgMHgxLjQwNWY5MHAtMzgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNAotICAgIC0weDEuOGNkNzk5OTUzNDRjNzk0M2M3YjNlMDIxNjA3ZGEzY2JwLTIsCi0gICAgLTB4MS40OTZlODBwOTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNQotICAgIDB4MS44Y2Q3OTk5NTM0NGM3OTQzYzdiM2UwMjE2MDdkYTNjYnAtMiwKLSAgICAweDEuNDk2ZTgwcDk2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTYKLSAgICAweDEuZTE0NDQ3MWVhMmI0OWI2YzFmZGNlZmY4Y2NjZWVhN2JwMTAsCi0gICAgLTB4MS41ZmUwcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNwotICAgIC0weDEuZTE0NDQ3MWVhMmI0OWI2YzFmZGNlZmY4Y2NjZWVhN2JwMTAsCi0gICAgMHgxLjVmZTBwMwotICB9LAotICB7IC8vIEVudHJ5IDE4Ci0gICAgLTB4MS5jYTBmNGMyMzE1YWI1YTk3MjllNmFmYTg1NzY3N2IzZnAtMSwKLSAgICAtMHgxLjc1YWVmMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDE5Ci0gICAgMHgxLmNhMGY0YzIzMTVhYjVhOTcyOWU2YWZhODU3Njc3YjNmcC0xLAotICAgIDB4MS43NWFlZjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMAotICAgIC0weDEuYzMzZWQ1MGI4ODc3NzVhNWQ2MTNjMDhjNDg4ZmJiOWNwMywKLSAgICAtMHgxLjgwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMQotICAgIDB4MS5jMzNlZDUwYjg4Nzc3NWE1ZDYxM2MwOGM0ODhmYmI5Y3AzLAotICAgIDB4MS44MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjIKLSAgICAtMHgxLmMzNDUxM2VlNzE0MGZkYjgyMTdlODNkYzJkNmQ2ZjUzcDMsCi0gICAgLTB4MS44MDAwNDBwMAotICB9LAotICB7IC8vIEVudHJ5IDIzCi0gICAgMHgxLmMzNDUxM2VlNzE0MGZkYjgyMTdlODNkYzJkNmQ2ZjUzcDMsCi0gICAgMHgxLjgwMDA0MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQKLSAgICAweDEuNGU2YjhhNDgxNjRiOWUxZDgxNzVlNDUxMmFiMjJmZjFwMCwKLSAgICAtMHgxLjhlMzU2MHA5OAotICB9LAotICB7IC8vIEVudHJ5IDI1Ci0gICAgLTB4MS40ZTZiOGE0ODE2NGI5ZTFkODE3NWU0NTEyYWIyMmZmMXAwLAotICAgIDB4MS44ZTM1NjBwOTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNgotICAgIC0weDEuZDAxN2UwMjE0YTk1MzI2NWQ4ZGQ1YzBhMTFlYTYxZDFwLTEsCi0gICAgLTB4MS45ZGU3ZDRwNAotICB9LAotICB7IC8vIEVudHJ5IDI3Ci0gICAgMHgxLmQwMTdlMDIxNGE5NTMyNjVkOGRkNWMwYTExZWE2MWQxcC0xLAotICAgIDB4MS45ZGU3ZDRwNAotICB9LAotICB7IC8vIEVudHJ5IDI4Ci0gICAgLTB4MS5kMDQ3M2YwMjI3MGMwZWVjODgzZTc1M2U1MDgwMDY3MHAtMSwKLSAgICAtMHgxLjlkZThhNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjkKLSAgICAweDEuZDA0NzNmMDIyNzBjMGVlYzg4M2U3NTNlNTA4MDA2NzBwLTEsCi0gICAgMHgxLjlkZThhNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzAKLSAgICAweDEuZDBhYWRhMjJhYTVlM2RjMzViNTA2M2M2MzkwNDdkZjVwLTEsCi0gICAgLTB4MS5iZTdlNWFwNQotICB9LAotICB7IC8vIEVudHJ5IDMxCi0gICAgLTB4MS5kMGFhZGEyMmFhNWUzZGMzNWI1MDYzYzYzOTA0N2RmNXAtMSwKLSAgICAweDEuYmU3ZTVhcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMgotICAgIC0weDEuZWU5NDk1MDAwYTE5MGNkYjZkYjNlODNkMmMwNWVmMzhwLTIsCi0gICAgLTB4MS5jY2JlYjBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMwotICAgIDB4MS5lZTk0OTUwMDBhMTkwY2RiNmRiM2U4M2QyYzA1ZWYzOHAtMiwKLSAgICAweDEuY2NiZWIwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQKLSAgICAweDEuZGMzMmViYTYzOGQxMzQ1OGM3YjI5ZDk2YWJmZmUxY2FwLTcsCi0gICAgLTB4MS5mZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDM1Ci0gICAgLTB4MS5kYzMyZWJhNjM4ZDEzNDU4YzdiMjlkOTZhYmZmZTFjYXAtNywKLSAgICAweDEuZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNgotICAgIDB4MS4wMDAwMDAwMDAwMTU1NTU1NTU1NTU3Nzc3Nzc3Nzc3N3AtMjEsCi0gICAgMHgxLnAtMjEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNwotICAgIC0weDEuMDAwMDAwMDAwMDE1NTU1NTU1NTU1Nzc3Nzc3Nzc3NzdwLTIxLAotICAgIC0weDEucC0yMQotICB9LAotICB7IC8vIEVudHJ5IDM4Ci0gICAgMHgxLnAtMTMxLAotICAgIDB4MS5wLTEzMQotICB9LAotICB7IC8vIEVudHJ5IDM5Ci0gICAgLTB4MS5wLTEzMSwKLSAgICAtMHgxLnAtMTMxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDAKLSAgICAweDEucC0xNDksCi0gICAgMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDEKLSAgICAtMHgxLnAtMTQ5LAotICAgIC0weDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MgotICAgIDB4MS41MmY1MGU3NTc5NDFjYmZmNWI3YzJlMDZhMWFiN2U5ZHA2LAotICAgIDB4MS5wNjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MwotICAgIC0weDEuNTJmNTBlNzU3OTQxY2JmZjViN2MyZTA2YTFhYjdlOWRwNiwKLSAgICAtMHgxLnA2MwotICB9LAotICB7IC8vIEVudHJ5IDQ0Ci0gICAgMHgxLjAwMDAwMjAwMDAwMDAwMDAwMDAwMTU1NTU1ZDU1NTU2cC00MSwKLSAgICAweDEuMDAwMDAycC00MQotICB9LAotICB7IC8vIEVudHJ5IDQ1Ci0gICAgLTB4MS4wMDAwMDIwMDAwMDAwMDAwMDAwMDE1NTU1NWQ1NTU1NnAtNDEsCi0gICAgLTB4MS4wMDAwMDJwLTQxCi0gIH0sCi0gIHsgLy8gRW50cnkgNDYKLSAgICAtMHgxLmFkYjdlYjZkOGNlYmJlMzYyZjE5N2RiZWRhNWMxMTNjcC0xLAotICAgIDB4MS4wMDAwMDJwNTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NwotICAgIDB4MS5hZGI3ZWI2ZDhjZWJiZTM2MmYxOTdkYmVkYTVjMTEzY3AtMSwKLSAgICAtMHgxLjAwMDAwMnA1MQotICB9LAotICB7IC8vIEVudHJ5IDQ4Ci0gICAgMHgxLmY3NzYyYjc1MmIwMDY3MTVkOTBjMzg5YTExODI2ZDZicDEsCi0gICAgMHgxLjAwMDAwNHAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OQotICAgIC0weDEuZjc3NjJiNzUyYjAwNjcxNWQ5MGMzODlhMTE4MjZkNmJwMSwKLSAgICAtMHgxLjAwMDAwNHAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MAotICAgIC0weDEuMDljZmYxMDAwMDY3MTkxMmM4NDc2MmYxOGMyODU0NzBwMCwKLSAgICAweDEuMDAwMDkwcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MQotICAgIDB4MS4wOWNmZjEwMDAwNjcxOTEyYzg0NzYyZjE4YzI4NTQ3MHAwLAotICAgIC0weDEuMDAwMDkwcDcKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MgotICAgIDB4MS4wMTU5MDEwMTdlZGI2N2FhN2U1MmFlNjk0ZTk5MGExOXAtMywKLSAgICAweDEuMDAwMTgwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMKLSAgICAtMHgxLjAxNTkwMTAxN2VkYjY3YWE3ZTUyYWU2OTRlOTkwYTE5cC0zLAotICAgIC0weDEuMDAwMTgwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQKLSAgICAweDEuMDAwMjIwMDAwMDAwMDAwMDAwMDA1NTU3NzU1OWQ5NThwLTQwLAotICAgIDB4MS4wMDAyMjBwLTQwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTUKLSAgICAtMHgxLjAwMDIyMDAwMDAwMDAwMDAwMDAwNTU1Nzc1NTlkOTU4cC00MCwKLSAgICAtMHgxLjAwMDIyMHAtNDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NgotICAgIDB4MS42ZDUzNzk2Y2RkNDAxZTNkZGMwOWU4MzViOGVhNjYwYXAzLAotICAgIDB4MS4wMDAzODBwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTcKLSAgICAtMHgxLjZkNTM3OTZjZGQ0MDFlM2RkYzA5ZTgzNWI4ZWE2NjBhcDMsCi0gICAgLTB4MS4wMDAzODBwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTgKLSAgICAtMHgxLmIwNzBlM2E2OTY4NDYzYWY2ZTlkYjkyMmU3ODQ1NTI0cC03LAotICAgIDB4MS4wMDA4ODBwOQotICB9LAotICB7IC8vIEVudHJ5IDU5Ci0gICAgMHgxLmIwNzBlM2E2OTY4NDYzYWY2ZTlkYjkyMmU3ODQ1NTI0cC03LAotICAgIC0weDEuMDAwODgwcDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MAotICAgIC0weDEuZmE2MWRjZmZhM2VmZTMyNWIzMjcwNGZjNDEyNDYyY2ZwMSwKLSAgICAweDEuMDAyMHA2MgotICB9LAotICB7IC8vIEVudHJ5IDYxCi0gICAgMHgxLmZhNjFkY2ZmYTNlZmUzMjViMzI3MDRmYzQxMjQ2MmNmcDEsCi0gICAgLTB4MS4wMDIwcDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjIKLSAgICAweDEuZmZmZDgyNWEzZjM3N2YwMTIyMDk5ODJhMDBjMzQ2ZjBwLTIsCi0gICAgMHgxLjAwNjBwOTAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MwotICAgIC0weDEuZmZmZDgyNWEzZjM3N2YwMTIyMDk5ODJhMDBjMzQ2ZjBwLTIsCi0gICAgLTB4MS4wMDYwcDkwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQKLSAgICAweDEuMDEzYzY4ZmZmMDRiNjk4MTY1ZGZkZjlkNDg0NDRhOTVwLTYsCi0gICAgMHgxLjAxMzdwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NQotICAgIC0weDEuMDEzYzY4ZmZmMDRiNjk4MTY1ZGZkZjlkNDg0NDRhOTVwLTYsCi0gICAgLTB4MS4wMTM3cC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjYKLSAgICAweDEuOTMyYzk5NGY2MWQ4MDRhMDg0ZjIwZDk3NWE2MTdjNTBwMCwKLSAgICAweDEuMDE0Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcKLSAgICAtMHgxLjkzMmM5OTRmNjFkODA0YTA4NGYyMGQ5NzVhNjE3YzUwcDAsCi0gICAgLTB4MS4wMTRjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OAotICAgIC0weDEuYzM0ZWMyMDUzM2U3NjA1NjVjYjc2MmIxNWMxOGQ2ZmNwMSwKLSAgICAweDEuMDIwNDQ2cDU4Ci0gIH0sCi0gIHsgLy8gRW50cnkgNjkKLSAgICAweDEuYzM0ZWMyMDUzM2U3NjA1NjVjYjc2MmIxNWMxOGQ2ZmNwMSwKLSAgICAtMHgxLjAyMDQ0NnA1OAotICB9LAotICB7IC8vIEVudHJ5IDcwCi0gICAgMHgxLjlmZjcxNzY3ZWEwNTFlNGU5Y2MwMDA4OTIyYjExMTI5cDAsCi0gICAgMHgxLjA0ZTRwMAotICB9LAotICB7IC8vIEVudHJ5IDcxCi0gICAgLTB4MS45ZmY3MTc2N2VhMDUxZTRlOWNjMDAwODkyMmIxMTEyOXAwLAotICAgIC0weDEuMDRlNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIKLSAgICAweDEuMDdjOWM1MDAxNjU5MDc5NzIyZjhlOTE5MGZmZTZlYzZwLTMsCi0gICAgMHgxLjA2NThwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MwotICAgIC0weDEuMDdjOWM1MDAxNjU5MDc5NzIyZjhlOTE5MGZmZTZlYzZwLTMsCi0gICAgLTB4MS4wNjU4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzQKLSAgICAweDEuZmQ2MTEwNzJhNTAzNTdlNjI2Njc2OGIyY2RmMDE5NGNwLTMsCi0gICAgMHgxLjBhYzcxMHAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NQotICAgIC0weDEuZmQ2MTEwNzJhNTAzNTdlNjI2Njc2OGIyY2RmMDE5NGNwLTMsCi0gICAgLTB4MS4wYWM3MTBwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzYKLSAgICAweDEuMGRkYmI1MDAwMjQ0YzRmYjk3MmViNzJkZTAwODk2YzBwLTMsCi0gICAgMHgxLjBjNTBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NwotICAgIC0weDEuMGRkYmI1MDAwMjQ0YzRmYjk3MmViNzJkZTAwODk2YzBwLTMsCi0gICAgLTB4MS4wYzUwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgKLSAgICAtMHgxLmMwYWViNWY4NGJlOTVkYTVhYjA3MTZkZmJhMjA1ZTI4cDIsCi0gICAgMHgxLjBkZGNwOTYKLSAgfSwKLSAgeyAvLyBFbnRyeSA3OQotICAgIDB4MS5jMGFlYjVmODRiZTk1ZGE1YWIwNzE2ZGZiYTIwNWUyOHAyLAotICAgIC0weDEuMGRkY3A5NgotICB9LAotICB7IC8vIEVudHJ5IDgwCi0gICAgMHgxLjM0MDc1NGZmZmZmZWI3ODA3NjFlODYzMzdmMGM1NWVmcDEsCi0gICAgMHgxLjBlMjhhNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgODEKLSAgICAtMHgxLjM0MDc1NGZmZmZmZWI3ODA3NjFlODYzMzdmMGM1NWVmcDEsCi0gICAgLTB4MS4wZTI4YTZwNAotICB9LAotICB7IC8vIEVudHJ5IDgyCi0gICAgMHgxLjM0OWQ5NWZmZWU0NzJlYzdjMTA5MzQ1NzBkM2JhNDg2cC0xLAotICAgIDB4MS4xNWJjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgODMKLSAgICAtMHgxLjM0OWQ5NWZmZWU0NzJlYzdjMTA5MzQ1NzBkM2JhNDg2cC0xLAotICAgIC0weDEuMTViY3AtMQotICB9LAotICB7IC8vIEVudHJ5IDg0Ci0gICAgMHgxLmVlYzcyNDAzYTRmZDI0ZDBjOWUyYWYwODhhMDVmYjg1cDAsCi0gICAgMHgxLjE3ZTRwMAotICB9LAotICB7IC8vIEVudHJ5IDg1Ci0gICAgLTB4MS5lZWM3MjQwM2E0ZmQyNGQwYzllMmFmMDg4YTA1ZmI4NXAwLAotICAgIC0weDEuMTdlNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgODYKLSAgICAweDEuZWY0YmQ3YTIxNTIzN2IzMDY1ZDU2OWZkNGM1ZjVhNDdwMCwKLSAgICAweDEuMThwMAotICB9LAotICB7IC8vIEVudHJ5IDg3Ci0gICAgLTB4MS5lZjRiZDdhMjE1MjM3YjMwNjVkNTY5ZmQ0YzVmNWE0N3AwLAotICAgIC0weDEuMThwMAotICB9LAotICB7IC8vIEVudHJ5IDg4Ci0gICAgLTB4MS5mZTc5MzkwMDEzOGM5OTQxODM2YjRmY2JjOWIyMjYwZHAtNCwKLSAgICAweDEuMThwNjQKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OQotICAgIDB4MS5mZTc5MzkwMDEzOGM5OTQxODM2YjRmY2JjOWIyMjYwZHAtNCwKLSAgICAtMHgxLjE4cDY0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTAKLSAgICAweDEuZjA4ZjA4NzNjNTgxOWE5ZjdjYzZiYmYzYzUyOTFjYzBwMCwKLSAgICAweDEuMTg0NHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEKLSAgICAtMHgxLmYwOGYwODczYzU4MTlhOWY3Y2M2YmJmM2M1MjkxY2MwcDAsCi0gICAgLTB4MS4xODQ0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MgotICAgIDB4MS41YzUxY2MxOGYwOTFiYzRiNTRlZTgzNjIzNDM4YzlhN3AxMSwKLSAgICAweDEuMThmZmZlcDE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTMKLSAgICAtMHgxLjVjNTFjYzE4ZjA5MWJjNGI1NGVlODM2MjM0MzhjOWE3cDExLAotICAgIC0weDEuMThmZmZlcDE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQKLSAgICAweDEuMjYzMzU2Nzg5OGU2OTFlZWI4N2FkMDI2YmQxNmE3ZTRwLTIsCi0gICAgMHgxLjFlN2NwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NQotICAgIC0weDEuMjYzMzU2Nzg5OGU2OTFlZWI4N2FkMDI2YmQxNmE3ZTRwLTIsCi0gICAgLTB4MS4xZTdjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgOTYKLSAgICAweDEuZmZmZmVkZjU1OGJmYjMxMDBmNjExMjVmMjk2YjhiYWRwMSwKLSAgICAweDEuMWViZXAxOAotICB9LAotICB7IC8vIEVudHJ5IDk3Ci0gICAgLTB4MS5mZmZmZWRmNTU4YmZiMzEwMGY2MTEyNWYyOTZiOGJhZHAxLAotICAgIC0weDEuMWViZXAxOAotICB9LAotICB7IC8vIEVudHJ5IDk4Ci0gICAgMHgxLjBlNTUxYjAwMDA3ZmFlMTcyMzY0MjFhNzZlODYxYzc1cDEsCi0gICAgMHgxLjIwZWE5Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgOTkKLSAgICAtMHgxLjBlNTUxYjAwMDA3ZmFlMTcyMzY0MjFhNzZlODYxYzc1cDEsCi0gICAgLTB4MS4yMGVhOWNwMAotICB9LAotICB7IC8vIEVudHJ5IDEwMAotICAgIDB4MS5jMDdkZmIwNTUyYmE2MGI3MWM3ZGY2YmQ3Y2E0MDlkNnAyMCwKLSAgICAweDEuMjEwNmNhcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDEKLSAgICAtMHgxLmMwN2RmYjA1NTJiYTYwYjcxYzdkZjZiZDdjYTQwOWQ2cDIwLAotICAgIC0weDEuMjEwNmNhcDUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIKLSAgICAtMHgxLmZkMjNmZDY0YTRiZmNmYjU5N2M0NjkzMzY0OWY1YWUycC0yLAotICAgIDB4MS4yMTlkYzZwMTE5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAzCi0gICAgMHgxLmZkMjNmZDY0YTRiZmNmYjU5N2M0NjkzMzY0OWY1YWUycC0yLAotICAgIC0weDEuMjE5ZGM2cDExOQotICB9LAotICB7IC8vIEVudHJ5IDEwNAotICAgIC0weDEuYjkzYzEzMDAwZDAxNmQxNGU3NTZjMjVlNDIzMDJkOWZwLTMsCi0gICAgMHgxLjI2Y2Q2YXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA1Ci0gICAgMHgxLmI5M2MxMzAwMGQwMTZkMTRlNzU2YzI1ZTQyMzAyZDlmcC0zLAotICAgIC0weDEuMjZjZDZhcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDYKLSAgICAtMHgxLmViY2JjYjEzOGIyNzRjYmNiZTYxYWY1MTEzZGE4M2VjcC00LAotICAgIDB4MS4yOWM0ZTBwMwotICB9LAotICB7IC8vIEVudHJ5IDEwNwotICAgIDB4MS5lYmNiY2IxMzhiMjc0Y2JjYmU2MWFmNTExM2RhODNlY3AtNCwKLSAgICAtMHgxLjI5YzRlMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4Ci0gICAgMHgxLjk5YmM1Yjk2MWIxYjI0ZmRiNzdmY2VlMDhiYTJmNzIwcC0yNSwKLSAgICAweDEuMmQ5N2M4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDkKLSAgICAtMHgxLjk5YmM1Yjk2MWIxYjI0ZmRiNzdmY2VlMDhiYTJmNzIwcC0yNSwKLSAgICAtMHgxLjJkOTdjOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEwCi0gICAgLTB4MS5lZDE4YWYwYjBiYTgwZGZhNmU4ZWUxYjNiMzFkZmM2MHAtMSwKLSAgICAweDEuMzBwMQotICB9LAotICB7IC8vIEVudHJ5IDExMQotICAgIDB4MS5lZDE4YWYwYjBiYTgwZGZhNmU4ZWUxYjNiMzFkZmM2MHAtMSwKLSAgICAtMHgxLjMwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTIKLSAgICAweDEuOWFiMjQxMTFjZmM2MmRmNGRiY2EzMjAyMTZiOTQ2NTFwLTQsCi0gICAgMHgxLjMwY2E3MHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEzCi0gICAgLTB4MS45YWIyNDExMWNmYzYyZGY0ZGJjYTMyMDIxNmI5NDY1MXAtNCwKLSAgICAtMHgxLjMwY2E3MHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE0Ci0gICAgMHgxLjMzN2Q4ZmZmZmZmZWRlNjJmMDUwZTk4YjNiOTU5NmUxcC0zLAotICAgIDB4MS4zMTM1ZjBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTUKLSAgICAtMHgxLjMzN2Q4ZmZmZmZmZWRlNjJmMDUwZTk4YjNiOTU5NmUxcC0zLAotICAgIC0weDEuMzEzNWYwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE2Ci0gICAgMHgxLjM0OGU2NTAwMDAwMDJlZjNhNzY1Yjk0MTZkMTJjZjdlcC0zLAotICAgIDB4MS4zMjQwYmNwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTcKLSAgICAtMHgxLjM0OGU2NTAwMDAwMDJlZjNhNzY1Yjk0MTZkMTJjZjdlcC0zLAotICAgIC0weDEuMzI0MGJjcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTE4Ci0gICAgLTB4MS5iOWU1OGFlYzYxYTQ0YWI1MzNjMmI4MzcyNjM2N2UxN3AtOCwKLSAgICAweDEuMzJkNTNjcDE2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTE5Ci0gICAgMHgxLmI5ZTU4YWVjNjFhNDRhYjUzM2MyYjgzNzI2MzY3ZTE3cC04LAotICAgIC0weDEuMzJkNTNjcDE2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTIwCi0gICAgLTB4MS5lMWZkNjhlZGVhNDRmYjc4NzgwZWQ2MmU3M2M2ZTAxN3AtNiwKLSAgICAweDEuM2EwYWE4cDYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjEKLSAgICAweDEuZTFmZDY4ZWRlYTQ0ZmI3ODc4MGVkNjJlNzNjNmUwMTdwLTYsCi0gICAgLTB4MS4zYTBhYThwNgotICB9LAotICB7IC8vIEVudHJ5IDEyMgotICAgIC0weDEuNjJhMjgxMDAwMDEzOTMwODBmNjczM2RmYWY5Yzc2ZmNwLTEsCi0gICAgMHgxLjQ0OTViYXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTIzCi0gICAgMHgxLjYyYTI4MTAwMDAxMzkzMDgwZjY3MzNkZmFmOWM3NmZjcC0xLAotICAgIC0weDEuNDQ5NWJhcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjQKLSAgICAweDEuYjkyM2MzYmEwYmMwYzUwMGJhNGMyNDUzMDFiYWQyMDdwMSwKLSAgICAweDEuNDlkNDJhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMjUKLSAgICAtMHgxLmI5MjNjM2JhMGJjMGM1MDBiYTRjMjQ1MzAxYmFkMjA3cDEsCi0gICAgLTB4MS40OWQ0MmFwMAotICB9LAotICB7IC8vIEVudHJ5IDEyNgotICAgIDB4MS41NDFmM2YwMDAyMmFjMjVjYzhhOTA4NTVhYjZiYjgwOHAtMywKLSAgICAweDEuNTEwYmJjcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTI3Ci0gICAgLTB4MS41NDFmM2YwMDAyMmFjMjVjYzhhOTA4NTVhYjZiYjgwOHAtMywKLSAgICAtMHgxLjUxMGJiY3AtMwotICB9LAotICB7IC8vIEVudHJ5IDEyOAotICAgIDB4MS43NmYzZWZmZmZmMzA1NzEyMmU2ZTdjZTUwZDEyY2JjZXAtMywKLSAgICAweDEuNTQ5NTIwcDEwMAotICB9LAotICB7IC8vIEVudHJ5IDEyOQotICAgIC0weDEuNzZmM2VmZmZmZjMwNTcxMjJlNmU3Y2U1MGQxMmNiY2VwLTMsCi0gICAgLTB4MS41NDk1MjBwMTAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTMwCi0gICAgMHgxLjRjYWMwMzAwNjQzZTEyYzQ2MjAzYjQ3ZDNlZWVkNGZmcC05LAotICAgIDB4MS41NGM0YmFwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzEKLSAgICAtMHgxLjRjYWMwMzAwNjQzZTEyYzQ2MjAzYjQ3ZDNlZWVkNGZmcC05LAotICAgIC0weDEuNTRjNGJhcDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMyCi0gICAgLTB4MS43MGQ1NDUwMDAwMDU4OTc0YzIwYjk3YmE5NmZkYWUwM3AtMywKLSAgICAweDEuNWE3NTdlcDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTMzCi0gICAgMHgxLjcwZDU0NTAwMDAwNTg5NzRjMjBiOTdiYTk2ZmRhZTAzcC0zLAotICAgIC0weDEuNWE3NTdlcDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTM0Ci0gICAgLTB4MS5mZmZmZTliYmE3ZjEzMjFmYWUxOTI5NDNhM2U4NDhjMHAtMSwKLSAgICAweDEuNWZkYmMwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzUKLSAgICAweDEuZmZmZmU5YmJhN2YxMzIxZmFlMTkyOTQzYTNlODQ4YzBwLTEsCi0gICAgLTB4MS41ZmRiYzBwMgotICB9LAotICB7IC8vIEVudHJ5IDEzNgotICAgIC0weDEuZmZiNjhmMDA1MGRhYmU1Y2U3MTkyMDI2MTBmY2FjMmVwLTEsCi0gICAgMHgxLjVmZTA1NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMTM3Ci0gICAgMHgxLmZmYjY4ZjAwNTBkYWJlNWNlNzE5MjAyNjEwZmNhYzJlcC0xLAotICAgIC0weDEuNWZlMDU2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzgKLSAgICAtMHgxLmRhYmI0NmUzOTM3ZTZjNTA1YWIyMDYyMjMyMzM5YTE2cC03LAotICAgIDB4MS42NDkzZDRwOTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMzkKLSAgICAweDEuZGFiYjQ2ZTM5MzdlNmM1MDVhYjIwNjIyMzIzMzlhMTZwLTcsCi0gICAgLTB4MS42NDkzZDRwOTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDAKLSAgICAweDEuYzgzMjE2MjQ4MWUxY2U0ZjAxNzM2YmI5N2EzMDE5YjlwLTEsCi0gICAgMHgxLjc0YTU2NnAtMQotICB9LAotICB7IC8vIEVudHJ5IDE0MQotICAgIC0weDEuYzgzMjE2MjQ4MWUxY2U0ZjAxNzM2YmI5N2EzMDE5YjlwLTEsCi0gICAgLTB4MS43NGE1NjZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDIKLSAgICAweDEuN2IyZmE0MDAwMDAzOGQ1NjkyMjY1MTJjNzc5NzZmZjVwLTMsCi0gICAgMHgxLjc2ZjBiMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDE0MwotICAgIC0weDEuN2IyZmE0MDAwMDAzOGQ1NjkyMjY1MTJjNzc5NzZmZjVwLTMsCi0gICAgLTB4MS43NmYwYjJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDQKLSAgICAtMHgxLjRmMzc1YWQ5ZGVlNWZkNjA0ZmIyOTQzNWYzMmVmZTU3cDEsCi0gICAgMHgxLjc4YjNmYXAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDUKLSAgICAweDEuNGYzNzVhZDlkZWU1ZmQ2MDRmYjI5NDM1ZjMyZWZlNTdwMSwKLSAgICAtMHgxLjc4YjNmYXAxMDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNDYKLSAgICAtMHgxLjAwMDA1ZWZmZmJlNzNlN2JhZmVhYjdmNzZjOGE5M2VmcDAsCi0gICAgMHgxLjc4ZmRiNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTQ3Ci0gICAgMHgxLjAwMDA1ZWZmZmJlNzNlN2JhZmVhYjdmNzZjOGE5M2VmcDAsCi0gICAgLTB4MS43OGZkYjRwMwotICB9LAotICB7IC8vIEVudHJ5IDE0OAotICAgIC0weDEuZmMzYWNlMDAwMDI5YzMzMTY5MmFhOWZlNGU0MmYwMDRwLTEsCi0gICAgMHgxLjc5MWNwMwotICB9LAotICB7IC8vIEVudHJ5IDE0OQotICAgIDB4MS5mYzNhY2UwMDAwMjljMzMxNjkyYWE5ZmU0ZTQyZjAwNHAtMSwKLSAgICAtMHgxLjc5MWNwMwotICB9LAotICB7IC8vIEVudHJ5IDE1MAotICAgIDB4MS5kY2ZhMzI1NGI1M2I2YTcwY2VjNDQ3M2FiZTg1MDEwMnAtMSwKLSAgICAweDEuN2ZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUxCi0gICAgLTB4MS5kY2ZhMzI1NGI1M2I2YTcwY2VjNDQ3M2FiZTg1MDEwMnAtMSwKLSAgICAtMHgxLjdmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDE1MgotICAgIDB4MS5jMzNlZDUwYjg4Nzc3NWE1ZDYxM2MwOGM0ODhmYmI5Y3AzLAotICAgIDB4MS44MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTUzCi0gICAgLTB4MS5jMzNlZDUwYjg4Nzc3NWE1ZDYxM2MwOGM0ODhmYmI5Y3AzLAotICAgIC0weDEuODBwMAotICB9LAotICB7IC8vIEVudHJ5IDE1NAotICAgIDB4MS44MDA4cC0xMzAsCi0gICAgMHgxLjgwMDhwLTEzMAotICB9LAotICB7IC8vIEVudHJ5IDE1NQotICAgIC0weDEuODAwOHAtMTMwLAotICAgIC0weDEuODAwOHAtMTMwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTU2Ci0gICAgLTB4MS5mOTYzNzBlYzQ4MmQyYmIwZWI4ZWE3YTUzMDEzOWZjZnAtNSwKLSAgICAweDEuODE4MHA4MwotICB9LAotICB7IC8vIEVudHJ5IDE1NwotICAgIDB4MS5mOTYzNzBlYzQ4MmQyYmIwZWI4ZWE3YTUzMDEzOWZjZnAtNSwKLSAgICAtMHgxLjgxODBwODMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNTgKLSAgICAtMHgxLmZmZjY2NGZhYTZmODZmYThiNGU1ZTI3MTlkMjE5NWNmcC0xLAotICAgIDB4MS44OWUwOTBwOQotICB9LAotICB7IC8vIEVudHJ5IDE1OQotICAgIDB4MS5mZmY2NjRmYWE2Zjg2ZmE4YjRlNWUyNzE5ZDIxOTVjZnAtMSwKLSAgICAtMHgxLjg5ZTA5MHA5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTYwCi0gICAgMHgxLjFjMDUxMTAxNjQzYmU3NDA3ODJmZTBkZmM5ZGNkMWNjcDAsCi0gICAgMHgxLjhjNjMxZXAxNQotICB9LAotICB7IC8vIEVudHJ5IDE2MQotICAgIC0weDEuMWMwNTExMDE2NDNiZTc0MDc4MmZlMGRmYzlkY2QxY2NwMCwKLSAgICAtMHgxLjhjNjMxZXAxNQotICB9LAotICB7IC8vIEVudHJ5IDE2MgotICAgIDB4MS5iYjJlODhmMjZiOTM2M2Y5YTg1MjY2NWYzNDEzZDk5NHAxMywKLSAgICAweDEuOGM2N2ZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDE2MwotICAgIC0weDEuYmIyZTg4ZjI2YjkzNjNmOWE4NTI2NjVmMzQxM2Q5OTRwMTMsCi0gICAgLTB4MS44YzY3ZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTY0Ci0gICAgLTB4MS5mMGU0ZWMxMzM1ODVjYjMwZTY3Y2ZjYmIzNmZhYWQ4ZXAxLAotICAgIDB4MS45MWQ4NThwMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjUKLSAgICAweDEuZjBlNGVjMTMzNTg1Y2IzMGU2N2NmY2JiMzZmYWFkOGVwMSwKLSAgICAtMHgxLjkxZDg1OHAxMgotICB9LAotICB7IC8vIEVudHJ5IDE2NgotICAgIC0weDEuNWQxNDk0NmRjOTg5NzVkNjQyMWE1NTI4NGZlMDIwYTFwMjQsCi0gICAgMHgxLjkyMWZiNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTY3Ci0gICAgMHgxLjVkMTQ5NDZkYzk4OTc1ZDY0MjFhNTUyODRmZTAyMGExcDI0LAotICAgIC0weDEuOTIxZmI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNjgKLSAgICAweDEuOTgwZWUwY2ZiZjBmMWViYzlkNGZkMjRjY2UzY2RmZTdwMTUsCi0gICAgMHgxLjkyMjkyMnAxNQotICB9LAotICB7IC8vIEVudHJ5IDE2OQotICAgIC0weDEuOTgwZWUwY2ZiZjBmMWViYzlkNGZkMjRjY2UzY2RmZTdwMTUsCi0gICAgLTB4MS45MjI5MjJwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzAKLSAgICAtMHgxLmZkNDNmOGU4OTFlMjI3ZGRhZDJmYjJlNTUyMGQ0ZmYycC0xLAotICAgIDB4MS45MjMwZmVwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzEKLSAgICAweDEuZmQ0M2Y4ZTg5MWUyMjdkZGFkMmZiMmU1NTIwZDRmZjJwLTEsCi0gICAgLTB4MS45MjMwZmVwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzIKLSAgICAweDEuY2YzOGY2MjEyZTdlNjI3NmY0YWRkNTQ4NzhmMWE3ZGJwLTEsCi0gICAgMHgxLjk1MTBjOHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTczCi0gICAgLTB4MS5jZjM4ZjYyMTJlN2U2Mjc2ZjRhZGQ1NDg3OGYxYTdkYnAtMSwKLSAgICAtMHgxLjk1MTBjOHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTc0Ci0gICAgMHgxLmQwM2Q0NTAyNGMzY2E0YTJjNGUxYTkxODU2MTM1MDQ2cC0xLAotICAgIDB4MS45NTExZTZwNgotICB9LAotICB7IC8vIEVudHJ5IDE3NQotICAgIC0weDEuZDAzZDQ1MDI0YzNjYTRhMmM0ZTFhOTE4NTYxMzUwNDZwLTEsCi0gICAgLTB4MS45NTExZTZwNgotICB9LAotICB7IC8vIEVudHJ5IDE3NgotICAgIDB4MS4wNTU0ZWI1Y2JkMzkzZTRmMDc3MGM4NjUyOGYzOWVlMXAxNywKLSAgICAweDEuOTc5ZjI0cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzcKLSAgICAtMHgxLjA1NTRlYjVjYmQzOTNlNGYwNzcwYzg2NTI4ZjM5ZWUxcDE3LAotICAgIC0weDEuOTc5ZjI0cDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzgKLSAgICAweDEuZmFkNWRmOTNkZTMwNTFjZjAxOGFiMzJjMGIzMjM1NzFwLTEsCi0gICAgMHgxLmExZTg2MnAxMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxNzkKLSAgICAtMHgxLmZhZDVkZjkzZGUzMDUxY2YwMThhYjMyYzBiMzIzNTcxcC0xLAotICAgIC0weDEuYTFlODYycDExOQotICB9LAotICB7IC8vIEVudHJ5IDE4MAotICAgIDB4MS5mZjk4MWIxNTM0Zjc4MDE2YmVhNGQ5NTg4MjU0ZTk5NnAzLAotICAgIDB4MS5hZDFmcDYzCi0gIH0sCi0gIHsgLy8gRW50cnkgMTgxCi0gICAgLTB4MS5mZjk4MWIxNTM0Zjc4MDE2YmVhNGQ5NTg4MjU0ZTk5NnAzLAotICAgIC0weDEuYWQxZnA2MwotICB9LAotICB7IC8vIEVudHJ5IDE4MgotICAgIC0weDEuZmZmNGExZGIxZTFlMzhjNDM4ZGRkMzhiYjk0ZjZkMzFwMSwKLSAgICAweDEuYWRhM2RhcDM5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTgzCi0gICAgMHgxLmZmZjRhMWRiMWUxZTM4YzQzOGRkZDM4YmI5NGY2ZDMxcDEsCi0gICAgLTB4MS5hZGEzZGFwMzkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODQKLSAgICAweDEuZDAxNTI5MDIzZDk1MTM5MDIwMGE0MjUyZjAzOGI0YWZwLTEsCi0gICAgMHgxLmIxMjViYXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTg1Ci0gICAgLTB4MS5kMDE1MjkwMjNkOTUxMzkwMjAwYTQyNTJmMDM4YjRhZnAtMSwKLSAgICAtMHgxLmIxMjViYXA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTg2Ci0gICAgMHgxLmQ2N2ZhMTA1Zjc2ODY4NjEyYzg0Zjc0YTFmMzhmMGFjcC0yLAotICAgIDB4MS5iOTBhMDJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxODcKLSAgICAtMHgxLmQ2N2ZhMTA1Zjc2ODY4NjEyYzg0Zjc0YTFmMzhmMGFjcC0yLAotICAgIC0weDEuYjkwYTAycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg4Ci0gICAgMHgxLjk5NjYzZGE5NGRiZDU3MTk5Y2I4ZTNkYWU3MDE4MzU4cC0yMywKLSAgICAweDEuYmVlZWVlcDgwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTg5Ci0gICAgLTB4MS45OTY2M2RhOTRkYmQ1NzE5OWNiOGUzZGFlNzAxODM1OHAtMjMsCi0gICAgLTB4MS5iZWVlZWVwODAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTAKLSAgICAweDEuZWI5NjU3MWViOWRhMTMzN2U3MDNjYzIwZTQxZTk3MTlwLTEzLAotICAgIDB4MS5jM2FiZjBwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTEKLSAgICAtMHgxLmViOTY1NzFlYjlkYTEzMzdlNzAzY2MyMGU0MWU5NzE5cC0xMywKLSAgICAtMHgxLmMzYWJmMHAyNAotICB9LAotICB7IC8vIEVudHJ5IDE5MgotICAgIDB4MS5lMTk4YzQ4YmVmOTU0MTUxZWUwNzU4MTVkODVjNTM2M3AwLAotICAgIDB4MS5jNzFjNzRwMTE2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTkzCi0gICAgLTB4MS5lMTk4YzQ4YmVmOTU0MTUxZWUwNzU4MTVkODVjNTM2M3AwLAotICAgIC0weDEuYzcxYzc0cDExNgotICB9LAotICB7IC8vIEVudHJ5IDE5NAotICAgIC0weDEuZTUwZTUyNDYxMDcyOGNmYjIzOWNjNjMwNWIyMTJmZDZwLTEsCi0gICAgMHgxLmNjMzI1MnAxOAotICB9LAotICB7IC8vIEVudHJ5IDE5NQotICAgIDB4MS5lNTBlNTI0NjEwNzI4Y2ZiMjM5Y2M2MzA1YjIxMmZkNnAtMSwKLSAgICAtMHgxLmNjMzI1MnAxOAotICB9LAotICB7IC8vIEVudHJ5IDE5NgotICAgIC0weDEuNmE2OWU3YmIyMWI1MjAzMDk2NGJjMjFjZWQwNzdjNzFwMTksCi0gICAgMHgxLmQzOGEyYXAxOQotICB9LAotICB7IC8vIEVudHJ5IDE5NwotICAgIDB4MS42YTY5ZTdiYjIxYjUyMDMwOTY0YmMyMWNlZDA3N2M3MXAxOSwKLSAgICAtMHgxLmQzOGEyYXAxOQotICB9LAotICB7IC8vIEVudHJ5IDE5OAotICAgIDB4MS42NTI5YmY4MWI5NThjYTc4MWNkYWFjN2NlYzZlNjM2ZXAwLAotICAgIDB4MS5kZjA2NDhwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxOTkKLSAgICAtMHgxLjY1MjliZjgxYjk1OGNhNzgxY2RhYWM3Y2VjNmU2MzZlcDAsCi0gICAgLTB4MS5kZjA2NDhwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDAKLSAgICAweDEuNjU5ZTQzYjQzMTVmMjFiYTVlNzA0OGIxZDhkNzgxNWNwMCwKLSAgICAweDEuZGYyMjA0cDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjAxCi0gICAgLTB4MS42NTllNDNiNDMxNWYyMWJhNWU3MDQ4YjFkOGQ3ODE1Y3AwLAotICAgIC0weDEuZGYyMjA0cDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjAyCi0gICAgLTB4MS43MWE1ODBmZmM0ZTE2N2FlMGVmOGIwMmQ1ZDI3Yzk5ZHAtMSwKLSAgICAweDEuZGYzNHAyNAotICB9LAotICB7IC8vIEVudHJ5IDIwMwotICAgIDB4MS43MWE1ODBmZmM0ZTE2N2FlMGVmOGIwMmQ1ZDI3Yzk5ZHAtMSwKLSAgICAtMHgxLmRmMzRwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDQKLSAgICAweDEuZWNmMTE5MDAwMDE3YTJjYWVmNDI5MGI0ZDZjNjM3ODVwLTQsCi0gICAgMHgxLmVhOTUxYXAtNAotICB9LAotICB7IC8vIEVudHJ5IDIwNQotICAgIC0weDEuZWNmMTE5MDAwMDE3YTJjYWVmNDI5MGI0ZDZjNjM3ODVwLTQsCi0gICAgLTB4MS5lYTk1MWFwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMDYKLSAgICAweDEuY2NkNTU4MjFmYWQ2OTc1NWMyZDgyNGJlMmJmZDRjNjRwLTEsCi0gICAgMHgxLmVmZWRjNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA3Ci0gICAgLTB4MS5jY2Q1NTgyMWZhZDY5NzU1YzJkODI0YmUyYmZkNGM2NHAtMSwKLSAgICAtMHgxLmVmZWRjNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMjA4Ci0gICAgMHgxLmQ2OTgxZWZmZmZmMjU0OTYzNDY4NmEyNGRmZGE3N2NlcC0xLAotICAgIDB4MS5mMTQzYTJwMQotICB9LAotICB7IC8vIEVudHJ5IDIwOQotICAgIC0weDEuZDY5ODFlZmZmZmYyNTQ5NjM0Njg2YTI0ZGZkYTc3Y2VwLTEsCi0gICAgLTB4MS5mMTQzYTJwMQotICB9LAotICB7IC8vIEVudHJ5IDIxMAotICAgIDB4MS5kYmE0ZDExMjRhNzhhNjgwM2EwOTY1YWYwYWI3OWY4OHAzLAotICAgIDB4MS5mMjViMDZwMgotICB9LAotICB7IC8vIEVudHJ5IDIxMQotICAgIC0weDEuZGJhNGQxMTI0YTc4YTY4MDNhMDk2NWFmMGFiNzlmODhwMywKLSAgICAtMHgxLmYyNWIwNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjEyCi0gICAgLTB4MS42ZGZjYmFmZmQ3ODAyM2VjZmFiYmY3Y2NmMGEwZTRiNHAtMSwKLSAgICAweDEuZjMyMjE4cDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjEzCi0gICAgMHgxLjZkZmNiYWZmZDc4MDIzZWNmYWJiZjdjY2YwYTBlNGI0cC0xLAotICAgIC0weDEuZjMyMjE4cDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjE0Ci0gICAgLTB4MS5lYzM1Y2YwMDAwNjEwNzkyOTVlYWQ3MTQ4OTJkYjFjYXAxLAotICAgIDB4MS5mNDRkYmNwNTgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMTUKLSAgICAweDEuZWMzNWNmMDAwMDYxMDc5Mjk1ZWFkNzE0ODkyZGIxY2FwMSwKLSAgICAtMHgxLmY0NGRiY3A1OAotICB9LAotICB7IC8vIEVudHJ5IDIxNgotICAgIDB4MS5kYjA2YzEwZDJhOTU5NzE1YmMwYTJlNzVlNmRhMDkzYnA0LAotICAgIDB4MS5mNDdmZmVwMgotICB9LAotICB7IC8vIEVudHJ5IDIxNwotICAgIC0weDEuZGIwNmMxMGQyYTk1OTcxNWJjMGEyZTc1ZTZkYTA5M2JwNCwKLSAgICAtMHgxLmY0N2ZmZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjE4Ci0gICAgMHgxLmZmZmZlYjU1NjQzYjlhNjQ4YzI3MjBiZGUxZDIyNzY0cC0xLAotICAgIDB4MS5mNmE3YTBwMQotICB9LAotICB7IC8vIEVudHJ5IDIxOQotICAgIC0weDEuZmZmZmViNTU2NDNiOWE2NDhjMjcyMGJkZTFkMjI3NjRwLTEsCi0gICAgLTB4MS5mNmE3YTBwMQotICB9LAotICB7IC8vIEVudHJ5IDIyMAotICAgIDB4MS5jMGE1NzBmZmZmZDM3OWQwOTcyZWE3OGNkMDQwYzMwNHAtMywKLSAgICAweDEuZjZkZWQ4cDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjEKLSAgICAtMHgxLmMwYTU3MGZmZmZkMzc5ZDA5NzJlYTc4Y2QwNDBjMzA0cC0zLAotICAgIC0weDEuZjZkZWQ4cDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjIKLSAgICAtMHgxLmNkZjE4ZDAxMjM0ODA5YTY4OTUzMTVlOWRlNTlkODY0cC0xLAotICAgIDB4MS5mN2ZmYmVwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjMKLSAgICAweDEuY2RmMThkMDEyMzQ4MDlhNjg5NTMxNWU5ZGU1OWQ4NjRwLTEsCi0gICAgLTB4MS5mN2ZmYmVwMTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjQKLSAgICAtMHgxLjgyZjE5NmZiNjBhODFkYzNiNGRjYmJjODMxYWI4Zjg1cC0xLAotICAgIDB4MS5mN2ZmZmVwNDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjUKLSAgICAweDEuODJmMTk2ZmI2MGE4MWRjM2I0ZGNiYmM4MzFhYjhmODVwLTEsCi0gICAgLTB4MS5mN2ZmZmVwNDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjYKLSAgICAweDEuNmMwMzU5MGYzZmUzYjdkMjllODllZTBlNjVmYzliMWVwMCwKLSAgICAweDEuZjg3ZDU4cDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjI3Ci0gICAgLTB4MS42YzAzNTkwZjNmZTNiN2QyOWU4OWVlMGU2NWZjOWIxZXAwLAotICAgIC0weDEuZjg3ZDU4cDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjI4Ci0gICAgLTB4MS5jN2FlNmU5YzE0NWI4ZDU0Zjc3MTk4OTNmYTAzODQ5ZnAyNywKLSAgICAweDEuZjljYmUycDcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMjkKLSAgICAweDEuYzdhZTZlOWMxNDViOGQ1NGY3NzE5ODkzZmEwMzg0OWZwMjcsCi0gICAgLTB4MS5mOWNiZTJwNwotICB9LAotICB7IC8vIEVudHJ5IDIzMAotICAgIDB4MS42ZDI5MTAwMDUxNjFiMmJmYTYxMTM0ZDBmYmM5ZTljMHAwLAotICAgIDB4MS5mZDg2YmNwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzEKLSAgICAtMHgxLjZkMjkxMDAwNTE2MWIyYmZhNjExMzRkMGZiYzllOWMwcDAsCi0gICAgLTB4MS5mZDg2YmNwMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzIKLSAgICAweDEuNmM4ZjhkMGMzYWQ0YmJiNjM5YTNmM2E5NDIzN2Y2OWZwMCwKLSAgICAweDEuZmVmYTRhcDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjMzCi0gICAgLTB4MS42YzhmOGQwYzNhZDRiYmI2MzlhM2YzYTk0MjM3ZjY5ZnAwLAotICAgIC0weDEuZmVmYTRhcDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM0Ci0gICAgMHgxLjAwZTViNWZmZmExM2Y3ZDljNGIwYjUyZmUxMWEzMzlicC0zLAotICAgIDB4MS5mZjFmZmVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyMzUKLSAgICAtMHgxLjAwZTViNWZmZmExM2Y3ZDljNGIwYjUyZmUxMWEzMzlicC0zLAotICAgIC0weDEuZmYxZmZlcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjM2Ci0gICAgMHgxLmZmM2Y0MWYwMWM1YjM2MGNjZTc1YjY3ODc3ZmZkNjc3cDAsCi0gICAgMHgxLmZmN2ZmZXA0MQotICB9LAotICB7IC8vIEVudHJ5IDIzNwotICAgIC0weDEuZmYzZjQxZjAxYzViMzYwY2NlNzViNjc4NzdmZmQ2NzdwMCwKLSAgICAtMHgxLmZmN2ZmZXA0MQotICB9LAotICB7IC8vIEVudHJ5IDIzOAotICAgIC0weDEuODZkZDVlMDBkN2VkYzcyNjY5NjliZjUxOTg0MzhiYWJwMCwKLSAgICAweDEuZmY5ZmZlcDEyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjM5Ci0gICAgMHgxLjg2ZGQ1ZTAwZDdlZGM3MjY2OTY5YmY1MTk4NDM4YmFicDAsCi0gICAgLTB4MS5mZjlmZmVwMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDAKLSAgICAtMHgxLmY4ZmU0NTc5ZmRlZTI0OTFjN2Q4NTcyZWE1MTJmZTkzcDUsCi0gICAgMHgxLmZmZmJmZXA0NQotICB9LAotICB7IC8vIEVudHJ5IDI0MQotICAgIDB4MS5mOGZlNDU3OWZkZWUyNDkxYzdkODU3MmVhNTEyZmU5M3A1LAotICAgIC0weDEuZmZmYmZlcDQ1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjQyCi0gICAgLTB4MS44NWZmNDYyZjBmODZmZjQ0NjQxMzA1ZGExOGVhOGZjOHAtMTMsCi0gICAgMHgxLmZmZmRmMnAyMwotICB9LAotICB7IC8vIEVudHJ5IDI0MwotICAgIDB4MS44NWZmNDYyZjBmODZmZjQ0NjQxMzA1ZGExOGVhOGZjOHAtMTMsCi0gICAgLTB4MS5mZmZkZjJwMjMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDQKLSAgICAweDEuMzM5MmUyZmZiY2IyNWZjMWIwMTZiOTEzNmU2OWMwMGJwLTIsCi0gICAgMHgxLmZmZmRmZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ1Ci0gICAgLTB4MS4zMzkyZTJmZmJjYjI1ZmMxYjAxNmI5MTM2ZTY5YzAwYnAtMiwKLSAgICAtMHgxLmZmZmRmZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjQ2Ci0gICAgLTB4MS4yZjZjNGJkMjYwNWYwMzdmODYwOTgxOWY4NjVhOGRjYnA4LAotICAgIDB4MS5mZmZlM2VwNDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDcKLSAgICAweDEuMmY2YzRiZDI2MDVmMDM3Zjg2MDk4MTlmODY1YThkY2JwOCwKLSAgICAtMHgxLmZmZmUzZXA0MQotICB9LAotICB7IC8vIEVudHJ5IDI0OAotICAgIC0weDEuNTNhMmU5MGU4MTc3MjcyNTVlNmRkZjY0ZTI4YzAxOWNwLTksCi0gICAgMHgxLmZmZmU3ZXAxMDMKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNDkKLSAgICAweDEuNTNhMmU5MGU4MTc3MjcyNTVlNmRkZjY0ZTI4YzAxOWNwLTksCi0gICAgLTB4MS5mZmZlN2VwMTAzCi0gIH0sCi0gIHsgLy8gRW50cnkgMjUwCi0gICAgLTB4MS5iMzQ2NzZmMDk1YjViMWEzMjU0MjZjZGY0MmMwNDc5OXAyLAotICAgIDB4MS5mZmZmN2VwMgotICB9LAotICB7IC8vIEVudHJ5IDI1MQotICAgIDB4MS5iMzQ2NzZmMDk1YjViMWEzMjU0MjZjZGY0MmMwNDc5OXAyLAotICAgIC0weDEuZmZmZjdlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTIKLSAgICAweDEuZjY0MGQ5NGU2MjQxZGI0MzQ5ZTMzYmVkNjdjYmQzZGJwLTEsCi0gICAgMHgxLmZmZmY3ZXAxMTkKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTMKLSAgICAtMHgxLmY2NDBkOTRlNjI0MWRiNDM0OWUzM2JlZDY3Y2JkM2RicC0xLAotICAgIC0weDEuZmZmZjdlcDExOQotICB9LAotICB7IC8vIEVudHJ5IDI1NAotICAgIDB4MS41MjZjMjY5YmRkYThhODlkOTA3MDY4NzBmMzgwMWVhZnAtMSwKLSAgICAweDEuZmZmZmVlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTUKLSAgICAtMHgxLjUyNmMyNjliZGRhOGE4OWQ5MDcwNjg3MGYzODAxZWFmcC0xLAotICAgIC0weDEuZmZmZmVlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNTYKLSAgICAtMHgxLmEzNzU5M2MxMDVlMTQ2MmMyYTM3MjYwNjAzNDgzZGE2cDEsCi0gICAgMHgxLmZmZmZmY3AxMgotICB9LAotICB7IC8vIEVudHJ5IDI1NwotICAgIDB4MS5hMzc1OTNjMTA1ZTE0NjJjMmEzNzI2MDYwMzQ4M2RhNnAxLAotICAgIC0weDEuZmZmZmZjcDEyCi0gIH0sCi0gIHsgLy8gRW50cnkgMjU4Ci0gICAgLTB4MS5wLTE0OSwKLSAgICAtMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjU5Ci0gICAgMHgxLnAtMTQ5LAotICAgIDB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDI2MAotICAgIDAuMCwKLSAgICAwLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjEKLSAgICAweDEucC0xNDksCi0gICAgMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjYyCi0gICAgLTB4MS5wLTE0OSwKLSAgICAtMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjYzCi0gICAgLTB4MS4wMDAwMDJwLTEyNiwKLSAgICAtMHgxLjAwMDAwMnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjY0Ci0gICAgMHgxLjAwMDAwMnAtMTI2LAotICAgIDB4MS4wMDAwMDJwLTEyNgotICB9LAotICB7IC8vIEVudHJ5IDI2NQotICAgIC0weDEucC0xMjYsCi0gICAgLTB4MS5wLTEyNgotICB9LAotICB7IC8vIEVudHJ5IDI2NgotICAgIDB4MS5wLTEyNiwKLSAgICAweDEucC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjcKLSAgICAtMHgxLmZmZmZmY3AtMTI3LAotICAgIC0weDEuZmZmZmZjcC0xMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNjgKLSAgICAweDEuZmZmZmZjcC0xMjcsCi0gICAgMHgxLmZmZmZmY3AtMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjY5Ci0gICAgMHgxLmZmZmZmY3AtMTI3LAotICAgIDB4MS5mZmZmZmNwLTEyNwotICB9LAotICB7IC8vIEVudHJ5IDI3MAotICAgIC0weDEuZmZmZmZjcC0xMjcsCi0gICAgLTB4MS5mZmZmZmNwLTEyNwotICB9LAotICB7IC8vIEVudHJ5IDI3MQotICAgIDB4MS5wLTEyNiwKLSAgICAweDEucC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzIKLSAgICAtMHgxLnAtMTI2LAotICAgIC0weDEucC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzMKLSAgICAweDEuMDAwMDAycC0xMjYsCi0gICAgMHgxLjAwMDAwMnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjc0Ci0gICAgLTB4MS4wMDAwMDJwLTEyNiwKLSAgICAtMHgxLjAwMDAwMnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjc1Ci0gICAgMHgxLjk5OTk5YTU3NjE5ZjY3OWI2MTkzYWY4YTBhN2E4Nzc4cC0xMywKLSAgICAweDEuOTk5OTlhcC0xMwotICB9LAotICB7IC8vIEVudHJ5IDI3NgotICAgIC0weDEuOTk5OTlhNTc2MTlmNjc5YjYxOTNhZjhhMGE3YTg3NzhwLTEzLAotICAgIC0weDEuOTk5OTlhcC0xMwotICB9LAotICB7IC8vIEVudHJ5IDI3NwotICAgIDB4MS45OTk5OWI1ZDg2N2VhYWRkMDMwNTU4NzM5OTkwNTMxMXAtMTIsCi0gICAgMHgxLjk5OTk5YXAtMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzgKLSAgICAtMHgxLjk5OTk5YjVkODY3ZWFhZGQwMzA1NTg3Mzk5OTA1MzExcC0xMiwKLSAgICAtMHgxLjk5OTk5YXAtMTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAyNzkKLSAgICAweDEuMzMzMzM2NGRkMmZiOTQ5NjQ1YmVhOTk4Y2JjMWVlNzJwLTExLAotICAgIDB4MS4zMzMzMzRwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgwCi0gICAgLTB4MS4zMzMzMzY0ZGQyZmI5NDk2NDViZWE5OThjYmMxZWU3MnAtMTEsCi0gICAgLTB4MS4zMzMzMzRwLTExCi0gIH0sCi0gIHsgLy8gRW50cnkgMjgxCi0gICAgMHgxLjk5OTk5Zjc2MWEwYjcyNmMxOGIwMGM2NDk2Y2JlMTBkcC0xMSwKLSAgICAweDEuOTk5OTlhcC0xMQotICB9LAotICB7IC8vIEVudHJ5IDI4MgotICAgIC0weDEuOTk5OTlmNzYxYTBiNzI2YzE4YjAwYzY0OTZjYmUxMGRwLTExLAotICAgIC0weDEuOTk5OTlhcC0xMQotICB9LAotICB7IC8vIEVudHJ5IDI4MwotICAgIDB4MS4wMDAwMDU1NTU1Nzc3Nzc4NTQ4NTRkZWRjMjhlYWQ1MXAtMTAsCi0gICAgMHgxLnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODQKLSAgICAtMHgxLjAwMDAwNTU1NTU3Nzc3Nzg1NDg1NGRlZGMyOGVhZDUxcC0xMCwKLSAgICAtMHgxLnAtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyODUKLSAgICAweDEuMzMzMzNkMzc0YzJlMDVkMTA4MTYxMzc4Mzg5ZmM4NGZwLTEwLAotICAgIDB4MS4zMzMzMzRwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg2Ci0gICAgLTB4MS4zMzMzM2QzNzRjMmUwNWQxMDgxNjEzNzgzODlmYzg0ZnAtMTAsCi0gICAgLTB4MS4zMzMzMzRwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjg3Ci0gICAgMHgxLjY2NjY3NmEyN2E2ZDgyMTRkMTk4YjIzMjFlZjlhOWRjcC0xMCwKLSAgICAweDEuNjY2NjY4cC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI4OAotICAgIC0weDEuNjY2Njc2YTI3YTZkODIxNGQxOThiMjMyMWVmOWE5ZGNwLTEwLAotICAgIC0weDEuNjY2NjY4cC0xMAotICB9LAotICB7IC8vIEVudHJ5IDI4OQotICAgIDB4MS45OTk5YjFkODY5OGMyNGNmZTNiOTBmZmQwMDZmZmRjYXAtMTAsCi0gICAgMHgxLjk5OTk5Y3AtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTAKLSAgICAtMHgxLjk5OTliMWQ4Njk4YzI0Y2ZlM2I5MGZmZDAwNmZmZGNhcC0xMCwKLSAgICAtMHgxLjk5OTk5Y3AtMTAKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTEKLSAgICAweDEuY2NjY2ViMWFhMjE5ZjcxYmIxOTIwOGQ3NGE3MzliYjFwLTEwLAotICAgIDB4MS5jY2NjY2NwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkyCi0gICAgLTB4MS5jY2NjZWIxYWEyMTlmNzFiYjE5MjA4ZDc0YTczOWJiMXAtMTAsCi0gICAgLTB4MS5jY2NjY2NwLTEwCi0gIH0sCi0gIHsgLy8gRW50cnkgMjkzCi0gICAgMHgxLjA2NjdkNTk2OGJiYmJlNDAzNzAyNGI5YzkzZjdiMDQ5cC03LAotICAgIDB4MS4wNjY2NjZwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTQKLSAgICAtMHgxLjA2NjdkNTk2OGJiYmJlNDAzNzAyNGI5YzkzZjdiMDQ5cC03LAotICAgIC0weDEuMDY2NjY2cC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjk1Ci0gICAgMHgxLmNjZDQ5MmQwMzVhMjI3NzU4YjhjMzBkNzliMTY4ODI2cC03LAotICAgIDB4MS5jY2NjY2NwLTcKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTYKLSAgICAtMHgxLmNjZDQ5MmQwMzVhMjI3NzU4YjhjMzBkNzliMTY4ODI2cC03LAotICAgIC0weDEuY2NjY2NjcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjk3Ci0gICAgMHgxLjQ5YTRmYTY4ZTkwZDIyOGY0NDUwMjZlYjI5YWRjZWZkcC02LAotICAgIDB4MS40OTk5OThwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAyOTgKLSAgICAtMHgxLjQ5YTRmYTY4ZTkwZDIyOGY0NDUwMjZlYjI5YWRjZWZkcC02LAotICAgIC0weDEuNDk5OTk4cC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMjk5Ci0gICAgMHgxLmFjZTVkZTA5MDYwM2ZkYThmNTE5YWZlY2UwNWMxN2VhcC02LAotICAgIDB4MS5hY2NjY2NwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMDAKLSAgICAtMHgxLmFjZTVkZTA5MDYwM2ZkYThmNTE5YWZlY2UwNWMxN2VhcC02LAotICAgIC0weDEuYWNjY2NjcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzAxCi0gICAgMHgxLjA4MTc2N2ZkM2NiNjg1ZjdiMDY5MTQ2Y2UzMzMzODUxcC01LAotICAgIDB4MS4wOHAtNQotICB9LAotICB7IC8vIEVudHJ5IDMwMgotICAgIC0weDEuMDgxNzY3ZmQzY2I2ODVmN2IwNjkxNDZjZTMzMzM4NTFwLTUsCi0gICAgLTB4MS4wOHAtNQotICB9LAotICB7IC8vIEVudHJ5IDMwMwotICAgIDB4MS4zOWMwZDc0NTMzNGEzMzg3ZDY3MmU0YTA1NjI0YmNhNXAtNSwKLSAgICAweDEuMzk5OTlhcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzA0Ci0gICAgLTB4MS4zOWMwZDc0NTMzNGEzMzg3ZDY3MmU0YTA1NjI0YmNhNXAtNSwKLSAgICAtMHgxLjM5OTk5YXAtNQotICB9LAotICB7IC8vIEVudHJ5IDMwNQotICAgIDB4MS42YjcwMmM2MjdmYzAwYjc3N2VhODY2MWNjZTM2MDYxY3AtNSwKLSAgICAweDEuNmIzMzM0cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzA2Ci0gICAgLTB4MS42YjcwMmM2MjdmYzAwYjc3N2VhODY2MWNjZTM2MDYxY3AtNSwKLSAgICAtMHgxLjZiMzMzNHAtNQotICB9LAotICB7IC8vIEVudHJ5IDMwNwotICAgIDB4MS45ZDI2NTc0Y2Q4NDc1OWJmZmY1MWQ4YmIxODUzOGEwZHAtNSwKLSAgICAweDEuOWNjY2NlcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzA4Ci0gICAgLTB4MS45ZDI2NTc0Y2Q4NDc1OWJmZmY1MWQ4YmIxODUzOGEwZHAtNSwKLSAgICAtMHgxLjljY2NjZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDMwOQotICAgIDB4MS5jZWU0NDY3ZTE1YmI3ZWY1OTY1OGE4ZWRkYzE5NTE2N3AtNSwKLSAgICAweDEuY2U2NjY2cC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzEwCi0gICAgLTB4MS5jZWU0NDY3ZTE1YmI3ZWY1OTY1OGE4ZWRkYzE5NTE2N3AtNSwKLSAgICAtMHgxLmNlNjY2NnAtNQotICB9LAotICB7IC8vIEVudHJ5IDMxMQotICAgIDB4MS5hMWVhZWQ3YWE2MmE3NDBjMGIyZTA5YmNkMGY3MzViNXAtMSwKLSAgICAweDEuNWU3ZmM0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzEyCi0gICAgLTB4MS5hMWVhZWQ3YWE2MmE3NDBjMGIyZTA5YmNkMGY3MzViNXAtMSwKLSAgICAtMHgxLjVlN2ZjNHAtMQotICB9LAotICB7IC8vIEVudHJ5IDMxMwotICAgIDB4MS5kOTNiODkxY2JjYjE1YWFjOGI1Nzk2YTBhMTZiZjI5ZXAxLAotICAgIDB4MS40ZTdmYzRwMAotICB9LAotICB7IC8vIEVudHJ5IDMxNAotICAgIC0weDEuZDkzYjg5MWNiY2IxNWFhYzhiNTc5NmEwYTE2YmYyOWVwMSwKLSAgICAtMHgxLjRlN2ZjNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzE1Ci0gICAgLTB4MS41NjNhZDA2MzQ4NmM3OTc2NTNhNjg5NTVjMGJiMWMwYnAxLAotICAgIDB4MS5lZGJmYTZwMAotICB9LAotICB7IC8vIEVudHJ5IDMxNgotICAgIDB4MS41NjNhZDA2MzQ4NmM3OTc2NTNhNjg5NTVjMGJiMWMwYnAxLAotICAgIC0weDEuZWRiZmE2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTcKLSAgICAtMHgxLjU3NmI3ODlkNTQ0YjZkMDM3YzNiNzExOWZkNmRkNnAtMSwKLSAgICAweDEuNDY3ZmM0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTgKLSAgICAweDEuNTc2Yjc4OWQ1NDRiNmQwMzdjM2I3MTE5ZmQ2ZGQ2cC0xLAotICAgIC0weDEuNDY3ZmM0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMTkKLSAgICAweDEuMDAxNTA2NTJiMmQ3OTMxZTBjODc4ODc1YjlmNGJhODJwLTUsCi0gICAgMHgxLjk2MWZiNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIwCi0gICAgLTB4MS4wMDE1MDY1MmIyZDc5MzFlMGM4Nzg4NzViOWY0YmE4MnAtNSwKLSAgICAtMHgxLjk2MWZiNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzIxCi0gICAgMHgxLjg3ZTk4N2I2ZTUwNzFkYmQzZjc1NWE3NmEyN2Q4ZmM4cC0xLAotICAgIDB4MS5lNWJmYTRwMQotICB9LAotICB7IC8vIEVudHJ5IDMyMgotICAgIC0weDEuODdlOTg3YjZlNTA3MWRiZDNmNzU1YTc2YTI3ZDhmYzhwLTEsCi0gICAgLTB4MS5lNWJmYTRwMQotICB9LAotICB7IC8vIEVudHJ5IDMyMwotICAgIDB4MS5hNDllNTViY2UxYzg5OTEyMzIzODdlY2QxMTI0Njk4YXAxLAotICAgIDB4MS4xYWFmY2FwMgotICB9LAotICB7IC8vIEVudHJ5IDMyNAotICAgIC0weDEuYTQ5ZTU1YmNlMWM4OTkxMjMyMzg3ZWNkMTEyNDY5OGFwMSwKLSAgICAtMHgxLjFhYWZjYXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI1Ci0gICAgLTB4MS43OWNmMDMxMzVhOTM2NzlkNWFhMmUxZGNjNWFkZWRhZnAxLAotICAgIDB4MS40MjdmYzJwMgotICB9LAotICB7IC8vIEVudHJ5IDMyNgotICAgIDB4MS43OWNmMDMxMzVhOTM2NzlkNWFhMmUxZGNjNWFkZWRhZnAxLAotICAgIC0weDEuNDI3ZmMycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMjcKLSAgICAtMHgxLjZmMWY4NmZkYjIwYmM5OTIzNjI3Yjk0ZDc3MWY1Mzg4cC0xLAotICAgIDB4MS42YTRmYmFwMgotICB9LAotICB7IC8vIEVudHJ5IDMyOAotICAgIDB4MS42ZjFmODZmZGIyMGJjOTkyMzYyN2I5NGQ3NzFmNTM4OHAtMSwKLSAgICAtMHgxLjZhNGZiYXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzI5Ci0gICAgLTB4MS42Nzc0N2NhODAyODIxYzY2Yzg3YTA4NjYzOGYyOGQzNnAtMSwKLSAgICAweDEuNmFmMmYwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzAKLSAgICAweDEuNjc3NDdjYTgwMjgyMWM2NmM4N2EwODY2MzhmMjhkMzZwLTEsCi0gICAgLTB4MS42YWYyZjBwMgotICB9LAotICB7IC8vIEVudHJ5IDMzMQotICAgIC0weDEuNjI2YTMwMjk4ZGYwYzQyYzJjZjdhOGY5YzE2NmQ1NWRwMSwKLSAgICAweDEuNDNjNjJhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzIKLSAgICAweDEuNjI2YTMwMjk4ZGYwYzQyYzJjZjdhOGY5YzE2NmQ1NWRwMSwKLSAgICAtMHgxLjQzYzYyYXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzMzCi0gICAgMHgxLmQ2YWQ4YTIyYTQ0MDdjYzY4ZGYyMGNkYTFlYTFjNmFhcDEsCi0gICAgMHgxLjFjOTk2NHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM0Ci0gICAgLTB4MS5kNmFkOGEyMmE0NDA3Y2M2OGRmMjBjZGExZWExYzZhYXAxLAotICAgIC0weDEuMWM5OTY0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzMzUKLSAgICAweDEuYTk0ZDAwYTE3MTBkOWJjYzdiODA0ODFmNDI4NTdkMDVwLTEsCi0gICAgMHgxLmVhZDkzY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM2Ci0gICAgLTB4MS5hOTRkMDBhMTcxMGQ5YmNjN2I4MDQ4MWY0Mjg1N2QwNXAtMSwKLSAgICAtMHgxLmVhZDkzY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzM3Ci0gICAgMHgxLjRjYjlmNGQzMTVhOTk1YjI4YmZiZDZlNmEwOTA1NzM4cC00LAotICAgIDB4MS45YzdmYjBwMQotICB9LAotICB7IC8vIEVudHJ5IDMzOAotICAgIC0weDEuNGNiOWY0ZDMxNWE5OTViMjhiZmJkNmU2YTA5MDU3MzhwLTQsCi0gICAgLTB4MS45YzdmYjBwMQotICB9LAotICB7IC8vIEVudHJ5IDMzOQotICAgIC0weDEuMmNiNmYzYmE1MWNkNGNhMzg1ZDdmNGE3NTY3YzNhMGJwLTEsCi0gICAgMHgxLjRlMjYyNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQwCi0gICAgMHgxLjJjYjZmM2JhNTFjZDRjYTM4NWQ3ZjRhNzU2N2MzYTBicC0xLAotICAgIC0weDEuNGUyNjI0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDEKLSAgICAtMHgxLjE4ZDkzOTlhODI5MGIzZjhiNDJhNGFmYzFmNGIyMWRlcDEsCi0gICAgMHgxLmZmOTkzMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQyCi0gICAgMHgxLjE4ZDkzOTlhODI5MGIzZjhiNDJhNGFmYzFmNGIyMWRlcDEsCi0gICAgLTB4MS5mZjk5MzJwMAotICB9LAotICB7IC8vIEVudHJ5IDM0MwotICAgIDB4MS41NmZkOTRiMGMwNjgxNjEzZDM4MzE2MDg0NTdmNWJmNnAyLAotICAgIDB4MS42MmU2MWNwMAotICB9LAotICB7IC8vIEVudHJ5IDM0NAotICAgIC0weDEuNTZmZDk0YjBjMDY4MTYxM2QzODMxNjA4NDU3ZjViZjZwMiwKLSAgICAtMHgxLjYyZTYxY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ1Ci0gICAgMHgxLmY0YWQzN2YxM2U4MTg2NDFmYzE1NTViZjc4ZTBlOTQycC0xLAotICAgIDB4MS44YzY2MmNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDYKLSAgICAtMHgxLmY0YWQzN2YxM2U4MTg2NDFmYzE1NTViZjc4ZTBlOTQycC0xLAotICAgIC0weDEuOGM2NjJjcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzQ3Ci0gICAgMHgxLjZhN2UzMGFkODQ2MGYxYTcxMDQ3OWUyZGI5NDk1YzljcDMsCi0gICAgLTB4MS5hOGFhMWNwMAotICB9LAotICB7IC8vIEVudHJ5IDM0OAotICAgIC0weDEuNmE3ZTMwYWQ4NDYwZjFhNzEwNDc5ZTJkYjk0OTVjOWNwMywKLSAgICAweDEuYThhYTFjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNDkKLSAgICAweDEuMGQ3MWZmYWMxZDVlNmFhNzUzY2Y4MDRhMmE4YzFmNWJwNiwKLSAgICAtMHgxLjk1ZWM4YXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUwCi0gICAgLTB4MS4wZDcxZmZhYzFkNWU2YWE3NTNjZjgwNGEyYThjMWY1YnA2LAotICAgIDB4MS45NWVjOGFwMAotICB9LAotICB7IC8vIEVudHJ5IDM1MQotICAgIC0weDEuMTFkODQ5ODA3M2UxZjRiNzc2ZmU1NjcyYWJiMWY1NGFwNCwKLSAgICAtMHgxLjgzMmVmOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUyCi0gICAgMHgxLjExZDg0OTgwNzNlMWY0Yjc3NmZlNTY3MmFiYjFmNTRhcDQsCi0gICAgMHgxLjgzMmVmOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzUzCi0gICAgLTB4MS5lM2EzNGIzMjcwODg4M2E4NTc4ODA1Zjg0ZWEwM2M2YXAyLAotICAgIC0weDEuNzA3MTY2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTQKLSAgICAweDEuZTNhMzRiMzI3MDg4ODNhODU3ODgwNWY4NGVhMDNjNmFwMiwKLSAgICAweDEuNzA3MTY2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNTUKLSAgICAtMHgxLjM0MjlkMjYzNDA1NGVhYWUzYmRiZWU5NGE2Y2VjMTdmcDIsCi0gICAgLTB4MS41ZGIzZDRwMAotICB9LAotICB7IC8vIEVudHJ5IDM1NgotICAgIDB4MS4zNDI5ZDI2MzQwNTRlYWFlM2JkYmVlOTRhNmNlYzE3ZnAyLAotICAgIDB4MS41ZGIzZDRwMAotICB9LAotICB7IC8vIEVudHJ5IDM1NwotICAgIC0weDEuYzA4Yzk1N2JiYjQ1YWNhZmE4NTZiZmQ3OTJjYmY2NjNwMSwKLSAgICAtMHgxLjRhZjY0MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzU4Ci0gICAgMHgxLmMwOGM5NTdiYmI0NWFjYWZhODU2YmZkNzkyY2JmNjYzcDEsCi0gICAgMHgxLjRhZjY0MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzU5Ci0gICAgLTB4MS41ZDYwMmIwZDBiZGRhODI1MjIxYTUzMzY5YzUzMzhkN3AxLAotICAgIC0weDEuMzgzOGIwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjAKLSAgICAweDEuNWQ2MDJiMGQwYmRkYTgyNTIyMWE1MzM2OWM1MzM4ZDdwMSwKLSAgICAweDEuMzgzOGIwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjEKLSAgICAtMHgxLjFiNDg5NGU0OTg3MjBlYzAxNzM1YTAyZTU1ZWVmYWQ4cDEsCi0gICAgLTB4MS4yNTdiMWVwMAotICB9LAotICB7IC8vIEVudHJ5IDM2MgotICAgIDB4MS4xYjQ4OTRlNDk4NzIwZWMwMTczNWEwMmU1NWVlZmFkOHAxLAotICAgIDB4MS4yNTdiMWVwMAotICB9LAotICB7IC8vIEVudHJ5IDM2MwotICAgIC0weDEuZDc0Y2IyMDBhYjU5MDQwMjkwNjI3YTliMmZmZTI5Y2ZwMCwKLSAgICAtMHgxLjEyYmQ5MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY0Ci0gICAgMHgxLmQ3NGNiMjAwYWI1OTA0MDI5MDYyN2E5YjJmZmUyOWNmcDAsCi0gICAgMHgxLjEyYmQ5MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY1Ci0gICAgLTB4MS42YmU3MDE5ZjM0ZDM0ZjI1Y2IwYzE0ZDBjN2JjN2IzMnAwLAotICAgIC0weDEuZWE1YzNlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzY2Ci0gICAgMHgxLjZiZTcwMTlmMzRkMzRmMjVjYjBjMTRkMGM3YmM3YjMycDAsCi0gICAgMHgxLmVhNWMzZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDM2NwotICAgIC0weDEuNGQwZGVmYmNiNDhhYTc1Y2UxM2UxYjgyZjFmY2IwNDlwMCwKLSAgICAtMHgxLmQ0Yjg3Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDM2OAotICAgIDB4MS40ZDBkZWZiY2I0OGFhNzVjZTEzZTFiODJmMWZjYjA0OXAwLAotICAgIDB4MS5kNGI4N2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNjkKLSAgICAtMHgxLjMxNmM4N2ZkYjc1OTljYjU3MzU0ZTRiOTlmMzhkN2ZmcDAsCi0gICAgLTB4MS5iZjE0YmFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzAKLSAgICAweDEuMzE2Yzg3ZmRiNzU5OWNiNTczNTRlNGI5OWYzOGQ3ZmZwMCwKLSAgICAweDEuYmYxNGJhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzcxCi0gICAgLTB4MS4xODcyOWRmZTUxZGZjZjc2N2Y3OWYzOWI2ODlhZTk1ZXAwLAotICAgIC0weDEuYTk3MGY4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzcyCi0gICAgMHgxLjE4NzI5ZGZlNTFkZmNmNzY3Zjc5ZjM5YjY4OWFlOTVlcDAsCi0gICAgMHgxLmE5NzBmOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDM3MwotICAgIC0weDEuMDFhZWVhOWNiZTlhOGZiNGNjZWY5OWFkOTYxYjZhZDhwMCwKLSAgICAtMHgxLjkzY2QzNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDM3NAotICAgIDB4MS4wMWFlZWE5Y2JlOWE4ZmI0Y2NlZjk5YWQ5NjFiNmFkOHAwLAotICAgIDB4MS45M2NkMzZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzUKLSAgICAtMHgxLmQ5OGUzNzNmYWFkN2RhM2Q2Yzg4NjVhN2ZmOWJhN2YzcC0xLAotICAgIC0weDEuN2UyOTc0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc2Ci0gICAgMHgxLmQ5OGUzNzNmYWFkN2RhM2Q2Yzg4NjVhN2ZmOWJhN2YzcC0xLAotICAgIDB4MS43ZTI5NzRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzcKLSAgICAtMHgxLmIyZTQ2YWY3MDRlYjc1ZDFmYWIwNzY2YWZjNzQ3MDNmcC0xLAotICAgIC0weDEuNjg4NWIycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzc4Ci0gICAgMHgxLmIyZTQ2YWY3MDRlYjc1ZDFmYWIwNzY2YWZjNzQ3MDNmcC0xLAotICAgIDB4MS42ODg1YjJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzNzkKLSAgICAtMHgxLjhlZTkwYjdkYzg5YjFmOTk5YWU2ZGJiNDFiYWNlYjBkcC0xLAotICAgIC0weDEuNTJlMWYwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgwCi0gICAgMHgxLjhlZTkwYjdkYzg5YjFmOTk5YWU2ZGJiNDFiYWNlYjBkcC0xLAotICAgIDB4MS41MmUxZjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODEKLSAgICAtMHgxLjZkMzk1ZjA1ODIwYjQyZjUxMjIzZGFiODg0MzY3ZTcxcC0xLAotICAgIC0weDEuM2QzZTM2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzgyCi0gICAgMHgxLjZkMzk1ZjA1ODIwYjQyZjUxMjIzZGFiODg0MzY3ZTcxcC0xLAotICAgIDB4MS4zZDNlMzZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODMKLSAgICAtMHgxLjI0ZTNkZmFkNGNlMTQ5M2NhYTEyMzg2NGNiNGY0NWQzcC0xLAotICAgIC0weDEuMGEwYjAycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg0Ci0gICAgMHgxLjI0ZTNkZmFkNGNlMTQ5M2NhYTEyMzg2NGNiNGY0NWQzcC0xLAotICAgIDB4MS4wYTBiMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODUKLSAgICAtMHgxLmZkYmQ1ZTUzZTBhNmZjOWM4YjgwMzI4OWYxYzNkYmI3cC0yLAotICAgIC0weDEuZDhmNzIwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg2Ci0gICAgMHgxLmZkYmQ1ZTUzZTBhNmZjOWM4YjgwMzI4OWYxYzNkYmI3cC0yLAotICAgIDB4MS5kOGY3MjBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODcKLSAgICAtMHgxLmI1ZjNkNjFjNTRlZTRmNjU4NWU5YmZmNDg5YzAwMTgycC0yLAotICAgIC0weDEuOWRkODNjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzg4Ci0gICAgMHgxLmI1ZjNkNjFjNTRlZTRmNjU4NWU5YmZmNDg5YzAwMTgycC0yLAotICAgIDB4MS45ZGQ4M2NwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzODkKLSAgICAtMHgxLjcxYTBmOTA3YzY2MWRhZjQ5MDNiN2JiYzAxNWM1YzE0cC0yLAotICAgIC0weDEuNjJiOTU4cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkwCi0gICAgMHgxLjcxYTBmOTA3YzY2MWRhZjQ5MDNiN2JiYzAxNWM1YzE0cC0yLAotICAgIDB4MS42MmI5NThwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTEKLSAgICAtMHgxLjMwMTkwOTQxZTY5OWZkYjIxMTVhOWVmNmJmODJkNDU1cC0yLAotICAgIC0weDEuMjc5YTc0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMzkyCi0gICAgMHgxLjMwMTkwOTQxZTY5OWZkYjIxMTVhOWVmNmJmODJkNDU1cC0yLAotICAgIDB4MS4yNzlhNzRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTMKLSAgICAtMHgxLmUxOGU5Mzg2N2NhZjY3ZWZjYWExOTgyMTg5OGQ1MGNhcC0zLAotICAgIC0weDEuZDhmNzIwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk0Ci0gICAgMHgxLmUxOGU5Mzg2N2NhZjY3ZWZjYWExOTgyMTg5OGQ1MGNhcC0zLAotICAgIDB4MS5kOGY3MjBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTUKLSAgICAtMHgxLjY2NTA3N2RkYTgyMmIxODlhNTZhMDJlMTVjMDRkNWQ0cC0zLAotICAgIC0weDEuNjJiOTU4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMzk2Ci0gICAgMHgxLjY2NTA3N2RkYTgyMmIxODlhNTZhMDJlMTVjMDRkNWQ0cC0zLAotICAgIDB4MS42MmI5NThwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTcKLSAgICAtMHgxLmRiMTQyM2Q4NzdiMjUwYWY2ZWE1NTQ2OTYwNzQzZDcycC00LAotICAgIC0weDEuZDhmNzIwcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMzk4Ci0gICAgMHgxLmRiMTQyM2Q4NzdiMjUwYWY2ZWE1NTQ2OTYwNzQzZDcycC00LAotICAgIDB4MS5kOGY3MjBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAzOTkKLSAgICAtMHgxLmQ5N2RkNjQzZmZlZWY1N2QwYTIyNTA1MTk3OGVjOGFkcC01LAotICAgIC0weDEuZDhmNzIwcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDAwCi0gICAgMHgxLmQ5N2RkNjQzZmZlZWY1N2QwYTIyNTA1MTk3OGVjOGFkcC01LAotICAgIDB4MS5kOGY3MjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDEKLSAgICAweDEuZDk3ZGQ2NDNmZmVlZjU3ZDBhMjI1MDUxOTc4ZWM4YWRwLTUsCi0gICAgMHgxLmQ4ZjcyMHAtNQotICB9LAotICB7IC8vIEVudHJ5IDQwMgotICAgIC0weDEuZDk3ZGQ2NDNmZmVlZjU3ZDBhMjI1MDUxOTc4ZWM4YWRwLTUsCi0gICAgLTB4MS5kOGY3MjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDMKLSAgICAweDEuZGIxNDIzZDg3N2IyNTBhZjZlYTU1NDY5NjA3NDNkNzJwLTQsCi0gICAgMHgxLmQ4ZjcyMHAtNAotICB9LAotICB7IC8vIEVudHJ5IDQwNAotICAgIC0weDEuZGIxNDIzZDg3N2IyNTBhZjZlYTU1NDY5NjA3NDNkNzJwLTQsCi0gICAgLTB4MS5kOGY3MjBwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDUKLSAgICAweDEuNjY1MDc3ZGRhODIyYjE4OWE1NmEwMmUxNWMwNGQ1ZDRwLTMsCi0gICAgMHgxLjYyYjk1OHAtMwotICB9LAotICB7IC8vIEVudHJ5IDQwNgotICAgIC0weDEuNjY1MDc3ZGRhODIyYjE4OWE1NmEwMmUxNWMwNGQ1ZDRwLTMsCi0gICAgLTB4MS42MmI5NThwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDcKLSAgICAweDEuZTE4ZTkzODY3Y2FmNjdlZmNhYTE5ODIxODk4ZDUwY2FwLTMsCi0gICAgMHgxLmQ4ZjcyMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDQwOAotICAgIC0weDEuZTE4ZTkzODY3Y2FmNjdlZmNhYTE5ODIxODk4ZDUwY2FwLTMsCi0gICAgLTB4MS5kOGY3MjBwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MDkKLSAgICAweDEuMzAxOTA5NDFlNjk5ZmRiMjExNWE5ZWY2YmY4MmQ0NTVwLTIsCi0gICAgMHgxLjI3OWE3NHAtMgotICB9LAotICB7IC8vIEVudHJ5IDQxMAotICAgIC0weDEuMzAxOTA5NDFlNjk5ZmRiMjExNWE5ZWY2YmY4MmQ0NTVwLTIsCi0gICAgLTB4MS4yNzlhNzRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTEKLSAgICAweDEuNzFhMGY5MDdjNjYxZGFmNDkwM2I3YmJjMDE1YzVjMTRwLTIsCi0gICAgMHgxLjYyYjk1OHAtMgotICB9LAotICB7IC8vIEVudHJ5IDQxMgotICAgIC0weDEuNzFhMGY5MDdjNjYxZGFmNDkwM2I3YmJjMDE1YzVjMTRwLTIsCi0gICAgLTB4MS42MmI5NThwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTMKLSAgICAweDEuYjVmM2Q2MWM1NGVlNGY2NTg1ZTliZmY0ODljMDAxODJwLTIsCi0gICAgMHgxLjlkZDgzY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDQxNAotICAgIC0weDEuYjVmM2Q2MWM1NGVlNGY2NTg1ZTliZmY0ODljMDAxODJwLTIsCi0gICAgLTB4MS45ZGQ4M2NwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTUKLSAgICAweDEuZmRiZDVlNTNlMGE2ZmM5YzhiODAzMjg5ZjFjM2RiYjdwLTIsCi0gICAgMHgxLmQ4ZjcyMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDQxNgotICAgIC0weDEuZmRiZDVlNTNlMGE2ZmM5YzhiODAzMjg5ZjFjM2RiYjdwLTIsCi0gICAgLTB4MS5kOGY3MjBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTcKLSAgICAweDEuMjRlM2RmYWQ0Y2UxNDkzY2FhMTIzODY0Y2I0ZjQ1ZDNwLTEsCi0gICAgMHgxLjBhMGIwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQxOAotICAgIC0weDEuMjRlM2RmYWQ0Y2UxNDkzY2FhMTIzODY0Y2I0ZjQ1ZDNwLTEsCi0gICAgLTB4MS4wYTBiMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MTkKLSAgICAweDEuNmQzOTVmMDU4MjBiNDJmNTEyMjNkYWI4ODQzNjdlNzFwLTEsCi0gICAgMHgxLjNkM2UzNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQyMAotICAgIC0weDEuNmQzOTVmMDU4MjBiNDJmNTEyMjNkYWI4ODQzNjdlNzFwLTEsCi0gICAgLTB4MS4zZDNlMzZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjEKLSAgICAweDEuOGVlOTE4NThmYmFhZjJhMzRhMzJkZDk0N2ZkN2UwNzZwLTEsCi0gICAgMHgxLjUyZTFmOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDQyMgotICAgIC0weDEuOGVlOTE4NThmYmFhZjJhMzRhMzJkZDk0N2ZkN2UwNzZwLTEsCi0gICAgLTB4MS41MmUxZjhwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjMKLSAgICAweDEuYjJlNDc4YmM5YmE3MzhkYjkwYjJhNGJjMjk0ZWNmNGZwLTEsCi0gICAgMHgxLjY4ODViYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQyNAotICAgIC0weDEuYjJlNDc4YmM5YmE3MzhkYjkwYjJhNGJjMjk0ZWNmNGZwLTEsCi0gICAgLTB4MS42ODg1YmFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjUKLSAgICAweDEuZDk4ZTQ2MTdhOGJkMWExYmI5ZTJlOTg5ZDhhZDM1Y2NwLTEsCi0gICAgMHgxLjdlMjk3Y3AtMQotICB9LAotICB7IC8vIEVudHJ5IDQyNgotICAgIC0weDEuZDk4ZTQ2MTdhOGJkMWExYmI5ZTJlOTg5ZDhhZDM1Y2NwLTEsCi0gICAgLTB4MS43ZTI5N2NwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MjcKLSAgICAweDEuMDFhZWYyYWE0MTY1NDVlMzkwMDg2NGYyYjM1ZDg2YTZwMCwKLSAgICAweDEuOTNjZDNlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI4Ci0gICAgLTB4MS4wMWFlZjJhYTQxNjU0NWUzOTAwODY0ZjJiMzVkODZhNnAwLAotICAgIC0weDEuOTNjZDNlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDI5Ci0gICAgMHgxLjE4NzJhNmNiM2RiYTE1NmRiOGRjNzg0ZTk1ZDk2YTQ2cDAsCi0gICAgMHgxLmE5NzFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzAKLSAgICAtMHgxLjE4NzJhNmNiM2RiYTE1NmRiOGRjNzg0ZTk1ZDk2YTQ2cDAsCi0gICAgLTB4MS5hOTcxcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDMxCi0gICAgMHgxLjMxNmM5MWFmNDZiMDE1YTljOTMxYTgxNmZlZDg5MDkycDAsCi0gICAgMHgxLmJmMTRjMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQzMgotICAgIC0weDEuMzE2YzkxYWY0NmIwMTVhOWM5MzFhODE2ZmVkODkwOTJwMCwKLSAgICAtMHgxLmJmMTRjMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDQzMwotICAgIDB4MS40ZDBkZmE4MWU5Y2M4MDZjMTAxOTRmYmE2Yjc2Nzc2MXAwLAotICAgIDB4MS5kNGI4ODRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzQKLSAgICAtMHgxLjRkMGRmYTgxZTljYzgwNmMxMDE5NGZiYTZiNzY3NzYxcDAsCi0gICAgLTB4MS5kNGI4ODRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzUKLSAgICAweDEuNmJlNzAxOWYzNGQzNGYyNWNiMGMxNGQwYzdiYzdiMzJwMCwKLSAgICAweDEuZWE1YzNlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM2Ci0gICAgLTB4MS42YmU3MDE5ZjM0ZDM0ZjI1Y2IwYzE0ZDBjN2JjN2IzMnAwLAotICAgIC0weDEuZWE1YzNlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM3Ci0gICAgMHgxLmQ3NGNiMjAwYWI1OTA0MDI5MDYyN2E5YjJmZmUyOWNmcDAsCi0gICAgMHgxLjEyYmQ5MnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDM4Ci0gICAgLTB4MS5kNzRjYjIwMGFiNTkwNDAyOTA2MjdhOWIyZmZlMjljZnAwLAotICAgIC0weDEuMTJiZDkycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0MzkKLSAgICAweDEuMWI0OGE2OTY0YzAyNDY0OGYxODZiYjZiMWViZGVlYzJwMSwKLSAgICAweDEuMjU3YjI0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDAKLSAgICAtMHgxLjFiNDhhNjk2NGMwMjQ2NDhmMTg2YmI2YjFlYmRlZWMycDEsCi0gICAgLTB4MS4yNTdiMjRwMAotICB9LAotICB7IC8vIEVudHJ5IDQ0MQotICAgIDB4MS41ZDYwNDQ2NmM1YWVlOGYxYTFkODQ3MGY3ZmY1NzljZnAxLAotICAgIDB4MS4zODM4YjZwMAotICB9LAotICB7IC8vIEVudHJ5IDQ0MgotICAgIC0weDEuNWQ2MDQ0NjZjNWFlZThmMWExZDg0NzBmN2ZmNTc5Y2ZwMSwKLSAgICAtMHgxLjM4MzhiNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQzCi0gICAgMHgxLmMwOGNiZDUyZDJiMDEyZjBjYjQ3YmNiM2ZmNTEzYzZkcDEsCi0gICAgMHgxLjRhZjY0OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ0Ci0gICAgLTB4MS5jMDhjYmQ1MmQyYjAxMmYwY2I0N2JjYjNmZjUxM2M2ZHAxLAotICAgIC0weDEuNGFmNjQ4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDUKLSAgICAweDEuMzQyOWY2YWEzNDQ2ZDcwM2U2ZWY5NmUwYjU2NGZjMGNwMiwKLSAgICAweDEuNWRiM2RhcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NDYKLSAgICAtMHgxLjM0MjlmNmFhMzQ0NmQ3MDNlNmVmOTZlMGI1NjRmYzBjcDIsCi0gICAgLTB4MS41ZGIzZGFwMAotICB9LAotICB7IC8vIEVudHJ5IDQ0NwotICAgIDB4MS5lM2EzYTI1YjI2MDY0MThhMTM5NzA5NzFiZWVmNDFkNnAyLAotICAgIDB4MS43MDcxNmNwMAotICB9LAotICB7IC8vIEVudHJ5IDQ0OAotICAgIC0weDEuZTNhM2EyNWIyNjA2NDE4YTEzOTcwOTcxYmVlZjQxZDZwMiwKLSAgICAtMHgxLjcwNzE2Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDQ5Ci0gICAgMHgxLjExZDhiN2JhNDE2OTQ2NTgxMTFhZjQ4OTI1YmJhZDY4cDQsCi0gICAgMHgxLjgzMmVmZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUwCi0gICAgLTB4MS4xMWQ4YjdiYTQxNjk0NjU4MTExYWY0ODkyNWJiYWQ2OHA0LAotICAgIC0weDEuODMyZWZlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTEKLSAgICAtMHgxLjBkNzA1NjMxOTNmZTIxOWYzZmQzMWEyODVmNGQ2NjM4cDYsCi0gICAgMHgxLjk1ZWM5MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDUyCi0gICAgMHgxLjBkNzA1NjMxOTNmZTIxOWYzZmQzMWEyODVmNGQ2NjM4cDYsCi0gICAgLTB4MS45NWVjOTBwMAotICB9LAotICB7IC8vIEVudHJ5IDQ1MwotICAgIC0weDEuNmE3ZTMwYWQ4NDYwZjFhNzEwNDc5ZTJkYjk0OTVjOWNwMywKLSAgICAweDEuYThhYTFjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTQKLSAgICAweDEuNmE3ZTMwYWQ4NDYwZjFhNzEwNDc5ZTJkYjk0OTVjOWNwMywKLSAgICAtMHgxLmE4YWExY3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU1Ci0gICAgMHgxLjlmMzllZTlmZWRiMjM3NWVjMDVkNmRhN2EyODhjNmJkcDAsCi0gICAgMHgxLjA0YWZmOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDU2Ci0gICAgLTB4MS45ZjM5ZWU5ZmVkYjIzNzVlYzA1ZDZkYTdhMjg4YzZiZHAwLAotICAgIC0weDEuMDRhZmY4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTcKLSAgICAweDEuOWYzYzUwOWM2YTdkNzVlNDUxMDg4MzU5Yzg4ZGVmODhwMCwKLSAgICAweDEuMDRiMGEwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NTgKLSAgICAtMHgxLjlmM2M1MDljNmE3ZDc1ZTQ1MTA4ODM1OWM4OGRlZjg4cDAsCi0gICAgLTB4MS4wNGIwYTBwMAotICB9LAotICB7IC8vIEVudHJ5IDQ1OQotICAgIDB4MS45ZjNlYjI5ZGY5ZTZhMjA0Njc0NzRlMjRkOGJmMzViYXAwLAotICAgIDB4MS4wNGIxNDhwMAotICB9LAotICB7IC8vIEVudHJ5IDQ2MAotICAgIC0weDEuOWYzZWIyOWRmOWU2YTIwNDY3NDc0ZTI0ZDhiZjM1YmFwMCwKLSAgICAtMHgxLjA0YjE0OHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDYxCi0gICAgMHgxLjlmNDExNGE0OWJmZmZjM2Y1YTE4M2QzNjAwMGFhNzg1cDAsCi0gICAgMHgxLjA0YjFmMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDYyCi0gICAgLTB4MS45ZjQxMTRhNDliZmZmYzNmNWExODNkMzYwMDBhYTc4NXAwLAotICAgIC0weDEuMDRiMWYwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjMKLSAgICAweDEuOWY0Mzc2YjA1MGRiYzU2YmY1NTk2MDgzMTkyMDc3YjVwMCwKLSAgICAweDEuMDRiMjk4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjQKLSAgICAtMHgxLjlmNDM3NmIwNTBkYmM1NmJmNTU5NjA4MzE5MjA3N2I1cDAsCi0gICAgLTB4MS4wNGIyOThwMAotICB9LAotICB7IC8vIEVudHJ5IDQ2NQotICAgIDB4MS45ZjQ1ZDhjMTE4OGMzZWI3N2JjYTJjNGE4NGM3ZWFkZHAwLAotICAgIDB4MS4wNGIzNDBwMAotICB9LAotICB7IC8vIEVudHJ5IDQ2NgotICAgIC0weDEuOWY0NWQ4YzExODhjM2ViNzdiY2EyYzRhODRjN2VhZGRwMCwKLSAgICAtMHgxLjA0YjM0MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY3Ci0gICAgMHgxLjlmNDgzYWQ2ZjMyM2E5YTVhOTBkNGFlMDdhMjNkMjY2cDAsCi0gICAgMHgxLjA0YjNlOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDY4Ci0gICAgLTB4MS45ZjQ4M2FkNmYzMjNhOWE1YTkwZDRhZTA3YTIzZDI2NnAwLAotICAgIC0weDEuMDRiM2U4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NjkKLSAgICAweDEuOWY0YTljZjFlMGI0NDgxMGIzYWE3Y2NhNDVkNzFjYzlwMCwKLSAgICAweDEuMDRiNDkwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzAKLSAgICAtMHgxLjlmNGE5Y2YxZTBiNDQ4MTBiM2FhN2NjYTQ1ZDcxY2M5cDAsCi0gICAgLTB4MS4wNGI0OTBwMAotICB9LAotICB7IC8vIEVudHJ5IDQ3MQotICAgIDB4MS45ZjRjZjA4YWY2YzYwZWQ2ZTJiYWRkNWE3YjVjMWU4N3AwLAotICAgIDB4MS4wNGI1MzRwMAotICB9LAotICB7IC8vIEVudHJ5IDQ3MgotICAgIC0weDEuOWY0Y2YwOGFmNmM2MGVkNmUyYmFkZDVhN2I1YzFlODdwMCwKLSAgICAtMHgxLjA0YjUzNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDczCi0gICAgLTB4MS5wLTE0OSwKLSAgICAtMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDc0Ci0gICAgMHgxLnAtMTQ5LAotICAgIDB4MS5wLTE0OQotICB9LAotICB7IC8vIEVudHJ5IDQ3NQotICAgIDAuMCwKLSAgICAwLjAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzYKLSAgICAweDEucC0xNDksCi0gICAgMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDc3Ci0gICAgLTB4MS5wLTE0OSwKLSAgICAtMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNDc4Ci0gICAgMHgxLjRkODJiMzM0YTU4MmE1NmE4MDJmOTZiM2I5NmZlYjgxcC0xLAotICAgIDB4MS4yNzlhNzJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0NzkKLSAgICAtMHgxLjRkODJiMzM0YTU4MmE1NmE4MDJmOTZiM2I5NmZlYjgxcC0xLAotICAgIC0weDEuMjc5YTcycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDgwCi0gICAgMHgxLjRkODJiNjBkZTQyOGY5MmFhOGM5NmE0YTdmZTg4OTQ1cC0xLAotICAgIDB4MS4yNzlhNzRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODEKLSAgICAtMHgxLjRkODJiNjBkZTQyOGY5MmFhOGM5NmE0YTdmZTg4OTQ1cC0xLAotICAgIC0weDEuMjc5YTc0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDgyCi0gICAgMHgxLjRkODJiOGU3MjJkMzAyZjVhYTkzOWE1NjNiMTJiMWExcC0xLAotICAgIDB4MS4yNzlhNzZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODMKLSAgICAtMHgxLjRkODJiOGU3MjJkMzAyZjVhYTkzOWE1NjNiMTJiMWExcC0xLAotICAgIC0weDEuMjc5YTc2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDg0Ci0gICAgLTB4MS44OTcxNDc2MGU4ZmVkOWFmMDNhOTFjZjE1MjdjZWFhZHAyLAotICAgIDB4MS5iYjY3YWNwMAotICB9LAotICB7IC8vIEVudHJ5IDQ4NQotICAgIDB4MS44OTcxNDc2MGU4ZmVkOWFmMDNhOTFjZjE1MjdjZWFhZHAyLAotICAgIC0weDEuYmI2N2FjcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODYKLSAgICAtMHgxLjg5NzEzM2ZiODFmMzE2OWIzMTYxZDUwYjUwY2NjMWE3cDIsCi0gICAgMHgxLmJiNjdhZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDg3Ci0gICAgMHgxLjg5NzEzM2ZiODFmMzE2OWIzMTYxZDUwYjUwY2NjMWE3cDIsCi0gICAgLTB4MS5iYjY3YWVwMAotICB9LAotICB7IC8vIEVudHJ5IDQ4OAotICAgIC0weDEuODk3MTIwOTYxY2M0NDc1ZWIzYjgwNjFkZjA0MDk0MzBwMiwKLSAgICAweDEuYmI2N2IwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA0ODkKLSAgICAweDEuODk3MTIwOTYxY2M0NDc1ZWIzYjgwNjFkZjA0MDk0MzBwMiwKLSAgICAtMHgxLmJiNjdiMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNDkwCi0gICAgMHgxLmRlZjQ5YzNhYjBhZDVkZGU5M2JhMzRjNTRkYjcxNGM3cC0yLAotICAgIDB4MS5iZmZmZmVwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTEKLSAgICAtMHgxLmRlZjQ5YzNhYjBhZDVkZGU5M2JhMzRjNTRkYjcxNGM3cC0yLAotICAgIC0weDEuYmZmZmZlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDkyCi0gICAgMHgxLmRlZjQ5ZWFhYjM3YTE0NzkyMzFlODk5NTA5ZWNmMjZjcC0yLAotICAgIDB4MS5jMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDQ5MwotICAgIC0weDEuZGVmNDllYWFiMzdhMTQ3OTIzMWU4OTk1MDllY2YyNmNwLTIsCi0gICAgLTB4MS5jMHAtMgotICB9LAotICB7IC8vIEVudHJ5IDQ5NAotICAgIDB4MS5kZWY0YTExYWI2NDdlZWYyMTJiMTk5N2QzYjUxNDA1YXAtMiwKLSAgICAweDEuYzAwMDAycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk1Ci0gICAgLTB4MS5kZWY0YTExYWI2NDdlZWYyMTJiMTk5N2QzYjUxNDA1YXAtMiwKLSAgICAtMHgxLmMwMDAwMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDQ5NgotICAgIDB4MS5hNDZjYWY2NTJmYTE4OTg3ZTRkMGE3OWY4MTQ1ZGQ1YnAtMSwKLSAgICAweDEuNWZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNDk3Ci0gICAgLTB4MS5hNDZjYWY2NTJmYTE4OTg3ZTRkMGE3OWY4MTQ1ZGQ1YnAtMSwKLSAgICAtMHgxLjVmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDQ5OAotICAgIDB4MS5hNDZjYjJiZTZhMGIxZGFjYjM2MjY5YzQxYTRhOTE0N3AtMSwKLSAgICAweDEuNjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA0OTkKLSAgICAtMHgxLmE0NmNiMmJlNmEwYjFkYWNiMzYyNjljNDFhNGE5MTQ3cC0xLAotICAgIC0weDEuNjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDAKLSAgICAweDEuYTQ2Y2I2MTdhNDdhMzFhMTU2ZGMwMDA1YjRlNmVicC0xLAotICAgIDB4MS42MDAwMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDEKLSAgICAtMHgxLmE0NmNiNjE3YTQ3YTMxYTE1NmRjMDAwNWI0ZTZlYnAtMSwKLSAgICAtMHgxLjYwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDUwMgotICAgIDB4MS4zZDZkYzIzMDg2OWM3MGQ1OTM3ZmVkYzkyZDQyNGRmMnAxLAotICAgIDB4MS4yZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDUwMwotICAgIC0weDEuM2Q2ZGMyMzA4NjljNzBkNTkzN2ZlZGM5MmQ0MjRkZjJwMSwKLSAgICAtMHgxLjJmZmZmZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA0Ci0gICAgMHgxLjNkNmRjOTU2ZWFjN2QzYjhkNmViMjE3NDExMGQxZGRjcDEsCi0gICAgMHgxLjMwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDUKLSAgICAtMHgxLjNkNmRjOTU2ZWFjN2QzYjhkNmViMjE3NDExMGQxZGRjcDEsCi0gICAgLTB4MS4zMHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA2Ci0gICAgMHgxLjNkNmRkMDdkNGYzYTIzNzU4OWFkNWM0MWMzODAxY2I0cDEsCi0gICAgMHgxLjMwMDAwMnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTA3Ci0gICAgLTB4MS4zZDZkZDA3ZDRmM2EyMzc1ODlhZDVjNDFjMzgwMWNiNHAxLAotICAgIC0weDEuMzAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MDgKLSAgICAtMHgxLmIyZDhhODU4YzkwYTUzOGQxZGFhZDc4MDQwZTY5Yjk4cC0xLAotICAgIDB4MS4zN2ZmZmVwMQotICB9LAotICB7IC8vIEVudHJ5IDUwOQotICAgIDB4MS5iMmQ4YTg1OGM5MGE1MzhkMWRhYWQ3ODA0MGU2OWI5OHAtMSwKLSAgICAtMHgxLjM3ZmZmZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTEwCi0gICAgLTB4MS5iMmQ4OWE5MzgyOTRjOGEyNjA0ZGI5ZjdhYTU2YTBmOHAtMSwKLSAgICAweDEuMzhwMQotICB9LAotICB7IC8vIEVudHJ5IDUxMQotICAgIDB4MS5iMmQ4OWE5MzgyOTRjOGEyNjA0ZGI5ZjdhYTU2YTBmOHAtMSwKLSAgICAtMHgxLjM4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTIKLSAgICAtMHgxLmIyZDg4Y2NlM2M3Y2NlMTc0MjY2NDM5ZGEzMDljZjYwcC0xLAotICAgIDB4MS4zODAwMDJwMQotICB9LAotICB7IC8vIEVudHJ5IDUxMwotICAgIDB4MS5iMmQ4OGNjZTNjN2NjZTE3NDI2NjQzOWRhMzA5Y2Y2MHAtMSwKLSAgICAtMHgxLjM4MDAwMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTE0Ci0gICAgMHgxLjA2ZjhkMGNlY2YxNjliMDY0NjdlNGFhMDM2Y2Y4Mjc5cC00LAotICAgIDB4MS4wNjljOGNwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTUKLSAgICAtMHgxLjA2ZjhkMGNlY2YxNjliMDY0NjdlNGFhMDM2Y2Y4Mjc5cC00LAotICAgIC0weDEuMDY5YzhjcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNTE2Ci0gICAgMHgxLjA4MGY3NDZjZDE3Mzk3YjYwZjkwOGUyYmUwMWY3YmE3cC0zLAotICAgIDB4MS4wNjljOGNwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTcKLSAgICAtMHgxLjA4MGY3NDZjZDE3Mzk3YjYwZjkwOGUyYmUwMWY3YmE3cC0zLAotICAgIC0weDEuMDY5YzhjcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNTE4Ci0gICAgMHgxLjhlZDkxNTUwNDY5ZDBlYjA4YWFlMjA2NTg5NTgwNDNicC0zLAotICAgIDB4MS44OWVhZDJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MTkKLSAgICAtMHgxLjhlZDkxNTUwNDY5ZDBlYjA4YWFlMjA2NTg5NTgwNDNicC0zLAotICAgIC0weDEuODllYWQycC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIwCi0gICAgMHgxLjBjODY0MTQ5ZGM2ODI3NmRmMjk5MjgyZDA0ZjY5YWY2cC0yLAotICAgIDB4MS4wNjljOGNwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjEKLSAgICAtMHgxLjBjODY0MTQ5ZGM2ODI3NmRmMjk5MjgyZDA0ZjY5YWY2cC0yLAotICAgIC0weDEuMDY5YzhjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNTIyCi0gICAgMHgxLjUzZmRkMDFhOThmMDdmMjA4NTU1Y2M2NDQyNzZlZjJjcC0yLAotICAgIDB4MS40ODQzYjBwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjMKLSAgICAtMHgxLjUzZmRkMDFhOThmMDdmMjA4NTU1Y2M2NDQyNzZlZjJjcC0yLAotICAgIC0weDEuNDg0M2IwcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI0Ci0gICAgMHgxLjllOTI1YjdlMjM3Yjg4YWM2MDk4YjUxM2MzNzE3NTdjcC0yLAotICAgIDB4MS44OWVhZDRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjUKLSAgICAtMHgxLjllOTI1YjdlMjM3Yjg4YWM2MDk4YjUxM2MzNzE3NTdjcC0yLAotICAgIC0weDEuODllYWQ0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI2Ci0gICAgMHgxLmVkMjFlYWRiMDhlNDdkYjhiMmYxMTg4MGZiYjUyODc5cC0yLAotICAgIDB4MS5jYjkxZjhwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjcKLSAgICAtMHgxLmVkMjFlYWRiMDhlNDdkYjhiMmYxMTg4MGZiYjUyODc5cC0yLAotICAgIC0weDEuY2I5MWY4cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNTI4Ci0gICAgMHgxLjIwNWE2M2EwNGUzMWUxODUyYWYzZGEyMmU5ZjY5YTE5cC0xLAotICAgIDB4MS4wNjljOGVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MjkKLSAgICAtMHgxLjIwNWE2M2EwNGUzMWUxODUyYWYzZGEyMmU5ZjY5YTE5cC0xLAotICAgIC0weDEuMDY5YzhlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMwCi0gICAgMHgxLjRkNDY2Zjg0YTMyODg1MTVhYjY5OWRkMWNlYzM0NWQzcC0xLAotICAgIDB4MS4yNzcwMjBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzEKLSAgICAtMHgxLjRkNDY2Zjg0YTMyODg1MTVhYjY5OWRkMWNlYzM0NWQzcC0xLAotICAgIC0weDEuMjc3MDIwcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTMyCi0gICAgMHgxLjdlMWQ5OTgzYjU4NzU0YTI5MDEyZTE3YTI2ZjI3N2Q3cC0xLAotICAgIDB4MS40ODQzYjJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzMKLSAgICAtMHgxLjdlMWQ5OTgzYjU4NzU0YTI5MDEyZTE3YTI2ZjI3N2Q3cC0xLAotICAgIC0weDEuNDg0M2IycC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM0Ci0gICAgMHgxLmIzZGY0MDJmZTQ5ODQyYTQxNjRjZjM4MGZmYTVkY3AtMSwKLSAgICAweDEuNjkxNzQ0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM1Ci0gICAgLTB4MS5iM2RmNDAyZmU0OTg0MmE0MTY0Y2YzODBmZmE1ZGNwLTEsCi0gICAgLTB4MS42OTE3NDRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzYKLSAgICAweDEuZWZkODMxMWRkZjJjYzM5M2YyMGVhNzY3YzdiMjI2NGFwLTEsCi0gICAgMHgxLjg5ZWFkNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDUzNwotICAgIC0weDEuZWZkODMxMWRkZjJjYzM5M2YyMGVhNzY3YzdiMjI2NGFwLTEsCi0gICAgLTB4MS44OWVhZDZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1MzgKLSAgICAweDEuMTllMjcxYTY0NDRmZjM0YWEyZjczYzg1MDE0OTcxYzlwMCwKLSAgICAweDEuYWFiZTY4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTM5Ci0gICAgLTB4MS4xOWUyNzFhNjQ0NGZmMzRhYTJmNzNjODUwMTQ5NzFjOXAwLAotICAgIC0weDEuYWFiZTY4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQwCi0gICAgMHgxLjQxMDM5MzgwMmMxYTIyMzgyOTE0YWJmMDk2YWZiZWU5cDAsCi0gICAgMHgxLmNiOTFmYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDU0MQotICAgIC0weDEuNDEwMzkzODAyYzFhMjIzODI5MTRhYmYwOTZhZmJlZTlwMCwKLSAgICAtMHgxLmNiOTFmYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDU0MgotICAgIDB4MS42ZWZlZDMzYjcxNDA0NWZlOTljZmE1OTQ3MWUxZTlmZHAwLAotICAgIDB4MS5lYzY1OGNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDMKLSAgICAtMHgxLjZlZmVkMzNiNzE0MDQ1ZmU5OWNmYTU5NDcxZTFlOWZkcDAsCi0gICAgLTB4MS5lYzY1OGNwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDQKLSAgICAweDEuYTY0Yzg2YzAyZTdhN2Q5NmU5MWY5NmE1NTg0MTI5ZjRwMCwKLSAgICAweDEuMDY5YzhlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NDUKLSAgICAtMHgxLmE2NGM4NmMwMmU3YTdkOTZlOTFmOTZhNTU4NDEyOWY0cDAsCi0gICAgLTB4MS4wNjljOGVwMAotICB9LAotICB7IC8vIEVudHJ5IDU0NgotICAgIDB4MS5lYWI0NDc3ZTViMjI2ZGM1MjcwYmFlOTcyMGVhMTNlM3AwLAotICAgIDB4MS4xNzA2NTZwMAotICB9LAotICB7IC8vIEVudHJ5IDU0NwotICAgIC0weDEuZWFiNDQ3N2U1YjIyNmRjNTI3MGJhZTk3MjBlYTEzZTNwMCwKLSAgICAtMHgxLjE3MDY1NnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ4Ci0gICAgMHgxLjIxMjc3ZjlhN2QyZjY2YmIxMzFjZmYzMmYyNjYyOWNkcDEsCi0gICAgMHgxLjI3NzAxZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTQ5Ci0gICAgLTB4MS4yMTI3N2Y5YTdkMmY2NmJiMTMxY2ZmMzJmMjY2MjljZHAxLAotICAgIC0weDEuMjc3MDFlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTAKLSAgICAweDEuNWJkMTQwNjgyNWIzZmZlYmE0ODIyMWFkNmE4ZjU0MTRwMSwKLSAgICAweDEuMzdkOWU2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTEKLSAgICAtMHgxLjViZDE0MDY4MjViM2ZmZWJhNDgyMjFhZDZhOGY1NDE0cDEsCi0gICAgLTB4MS4zN2Q5ZTZwMAotICB9LAotICB7IC8vIEVudHJ5IDU1MgotICAgIDB4MS5hZjQ2NDM1MmE5ODlmODAyODI0MTUyY2FkMGFmZThiN3AxLAotICAgIDB4MS40ODQzYWVwMAotICB9LAotICB7IC8vIEVudHJ5IDU1MwotICAgIC0weDEuYWY0NjQzNTJhOTg5ZjgwMjgyNDE1MmNhZDBhZmU4YjdwMSwKLSAgICAtMHgxLjQ4NDNhZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU0Ci0gICAgMHgxLjE4NjZmYTdhNjAxYjg3YmI2ZjM3OGIzNDM4ZTNmYzI2cDIsCi0gICAgMHgxLjU4YWQ3NnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTU1Ci0gICAgLTB4MS4xODY2ZmE3YTYwMWI4N2JiNmYzNzhiMzQzOGUzZmMyNnAyLAotICAgIC0weDEuNThhZDc2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTYKLSAgICAweDEuOGJkY2M2ODcxOGE3MDExODg2MGExYjk0NTQzN2ZkOTBwMiwKLSAgICAweDEuNjkxNzNlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NTcKLSAgICAtMHgxLjhiZGNjNjg3MThhNzAxMTg4NjBhMWI5NDU0MzdmZDkwcDIsCi0gICAgLTB4MS42OTE3M2VwMAotICB9LAotICB7IC8vIEVudHJ5IDU1OAotICAgIDB4MS40YmI2ODg1OWQzZWFmYjJhMTMwYjczYmEwN2U0OGU4YXAzLAotICAgIDB4MS43OTgxMDZwMAotICB9LAotICB7IC8vIEVudHJ5IDU1OQotICAgIC0weDEuNGJiNjg4NTlkM2VhZmIyYTEzMGI3M2JhMDdlNDhlOGFwMywKLSAgICAtMHgxLjc5ODEwNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYwCi0gICAgMHgxLmYyZWZhYmFlYjMyMmVjNWNhOWQzMzg2OTI5NWM2MDYzcDQsCi0gICAgMHgxLjg5ZWFjZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYxCi0gICAgLTB4MS5mMmVmYWJhZWIzMjJlYzVjYTlkMzM4NjkyOTVjNjA2M3A0LAotICAgIC0weDEuODllYWNlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjIKLSAgICAtMHgxLmYyZjEzOTI5MzIzZWY4ZjU4ZGIxNTIxNDNlNjViY2I3cDQsCi0gICAgMHgxLjlhNTQ5NnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTYzCi0gICAgMHgxLmYyZjEzOTI5MzIzZWY4ZjU4ZGIxNTIxNDNlNjViY2I3cDQsCi0gICAgLTB4MS45YTU0OTZwMAotICB9LAotICB7IC8vIEVudHJ5IDU2NAotICAgIC0weDEuNGJiNmUwZWMwMmNhZDVjMTEwYTRkNzAwMzlkYjRkMWNwMywKLSAgICAweDEuYWFiZTVlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjUKLSAgICAweDEuNGJiNmUwZWMwMmNhZDVjMTEwYTRkNzAwMzlkYjRkMWNwMywKLSAgICAtMHgxLmFhYmU1ZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY2Ci0gICAgLTB4MS44YmRkMDZhNjU1ZGZhMmYzMTk1YWNhNDg3OThlNWM4NnAyLAotICAgIDB4MS5iYjI4MjZwMAotICB9LAotICB7IC8vIEVudHJ5IDU2NwotICAgIDB4MS44YmRkMDZhNjU1ZGZhMmYzMTk1YWNhNDg3OThlNWM4NnAyLAotICAgIC0weDEuYmIyODI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NjgKLSAgICAtMHgxLjE4NjcxYjc2Y2ZjY2Y5OGE2ZWRiYzFmZDViODY0N2I3cDIsCi0gICAgMHgxLmNiOTFlZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTY5Ci0gICAgMHgxLjE4NjcxYjc2Y2ZjY2Y5OGE2ZWRiYzFmZDViODY0N2I3cDIsCi0gICAgLTB4MS5jYjkxZWVwMAotICB9LAotICB7IC8vIEVudHJ5IDU3MAotICAgIC0weDEuYWY0NjZiYWM4MGRjOWRmNjY4ZDFlMGU5YjQ0MmJmMGVwMSwKLSAgICAweDEuZGJmYmI2cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzEKLSAgICAweDEuYWY0NjZiYWM4MGRjOWRmNjY4ZDFlMGU5YjQ0MmJmMGVwMSwKLSAgICAtMHgxLmRiZmJiNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTcyCi0gICAgLTB4MS41YmQxNWJjYjNkMDY5MDZjZWY1ZjNiMmVjM2FiNGFiOXAxLAotICAgIDB4MS5lYzY1N2VwMAotICB9LAotICB7IC8vIEVudHJ5IDU3MwotICAgIDB4MS41YmQxNWJjYjNkMDY5MDZjZWY1ZjNiMmVjM2FiNGFiOXAxLAotICAgIC0weDEuZWM2NTdlcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzQKLSAgICAtMHgxLjIxMjc5MzhhNTQ2ZDNjNDI4MjkyYmE1M2VlNmY2N2NjcDEsCi0gICAgMHgxLmZjY2Y0NnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc1Ci0gICAgMHgxLjIxMjc5MzhhNTQ2ZDNjNDI4MjkyYmE1M2VlNmY2N2NjcDEsCi0gICAgLTB4MS5mY2NmNDZwMAotICB9LAotICB7IC8vIEVudHJ5IDU3NgotICAgIC0weDEuZWFiNDVjYWVkNzA2YzRkYjYyMmM5MGZlM2U4ZDE2YzJwMCwKLSAgICAweDEuMDY5Yzg4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1NzcKLSAgICAweDEuZWFiNDVjYWVkNzA2YzRkYjYyMmM5MGZlM2U4ZDE2YzJwMCwKLSAgICAtMHgxLjA2OWM4OHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTc4Ci0gICAgLTB4MS5hNjRjOTc5ZWI3MDNkODJjYjQ4MDgwNDRlOGFiZjkzZnAwLAotICAgIDB4MS4wZWQxNmNwMQotICB9LAotICB7IC8vIEVudHJ5IDU3OQotICAgIDB4MS5hNjRjOTc5ZWI3MDNkODJjYjQ4MDgwNDRlOGFiZjkzZnAwLAotICAgIC0weDEuMGVkMTZjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODAKLSAgICAtMHgxLjZlZmVlMTE1MDAyNjNjMTBjMWQxYmI1OTA0MjQ0ZGU2cDAsCi0gICAgMHgxLjE3MDY1MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTgxCi0gICAgMHgxLjZlZmVlMTE1MDAyNjNjMTBjMWQxYmI1OTA0MjQ0ZGU2cDAsCi0gICAgLTB4MS4xNzA2NTBwMQotICB9LAotICB7IC8vIEVudHJ5IDU4MgotICAgIC0weDEuNDEwM2ExYmMwZjY1NzZhNzYwZDQ5ZGEzYmZlNTU4NzRwMCwKLSAgICAweDEuMWYzYjM0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODMKLSAgICAweDEuNDEwM2ExYmMwZjY1NzZhNzYwZDQ5ZGEzYmZlNTU4NzRwMCwKLSAgICAtMHgxLjFmM2IzNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTg0Ci0gICAgLTB4MS4xOWUyODAxYWEyNGVlMGFkY2Q5NDkxZTRkN2FmMjU2ZnAwLAotICAgIDB4MS4yNzcwMThwMQotICB9LAotICB7IC8vIEVudHJ5IDU4NQotICAgIDB4MS4xOWUyODAxYWEyNGVlMGFkY2Q5NDkxZTRkN2FmMjU2ZnAwLAotICAgIC0weDEuMjc3MDE4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODYKLSAgICAtMHgxLmVmZDg0ZTUwNjUyYzFiN2M3MTk3MmFkOGVlN2MwMThhcC0xLAotICAgIDB4MS4yZmE0ZmNwMQotICB9LAotICB7IC8vIEVudHJ5IDU4NwotICAgIDB4MS5lZmQ4NGU1MDY1MmMxYjdjNzE5NzJhZDhlZTdjMDE4YXAtMSwKLSAgICAtMHgxLjJmYTRmY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTg4Ci0gICAgLTB4MS5iM2RmNWQ5ZjU0ZTJjNzQ4Y2YwMjI3ZWUwOTc0ZWEyZXAtMSwKLSAgICAweDEuMzdkOWUwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1ODkKLSAgICAweDEuYjNkZjVkOWY1NGUyYzc0OGNmMDIyN2VlMDk3NGVhMmVwLTEsCi0gICAgLTB4MS4zN2Q5ZTBwMQotICB9LAotICB7IC8vIEVudHJ5IDU5MAotICAgIC0weDEuN2UxZGI3MzM3NjlhMTEyNmEyYjBhYzdmYTE0YTQwMmNwLTEsCi0gICAgMHgxLjQwMGVjNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTkxCi0gICAgMHgxLjdlMWRiNzMzNzY5YTExMjZhMmIwYWM3ZmExNGE0MDJjcC0xLAotICAgIC0weDEuNDAwZWM0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTIKLSAgICAtMHgxLjRkNDY4ZDgyYzFhODRmZWY3Mjc5ZmM1ZmIyNDQxOWIycC0xLAotICAgIDB4MS40ODQzYThwMQotICB9LAotICB7IC8vIEVudHJ5IDU5MwotICAgIDB4MS40ZDQ2OGQ4MmMxYTg0ZmVmNzI3OWZjNWZiMjQ0MTliMnAtMSwKLSAgICAtMHgxLjQ4NDNhOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTk0Ci0gICAgLTB4MS4yMDVhODIwMjU0NTIwMmQ4OTFjZTg5YmZhNmNkMTQ3NnAtMSwKLSAgICAweDEuNTA3ODhjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTUKLSAgICAweDEuMjA1YTgyMDI1NDUyMDJkODkxY2U4OWJmYTZjZDE0NzZwLTEsCi0gICAgLTB4MS41MDc4OGNwMQotICB9LAotICB7IC8vIEVudHJ5IDU5NgotICAgIC0weDEuZWQyMjI4OWQ4OTFlZDc4Y2RjODE4YTRjZGU2ZGU5MThwLTIsCi0gICAgMHgxLjU4YWQ3MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNTk3Ci0gICAgMHgxLmVkMjIyODlkODkxZWQ3OGNkYzgxOGE0Y2RlNmRlOTE4cC0yLAotICAgIC0weDEuNThhZDcwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA1OTgKLSAgICAtMHgxLjllOTI5YTdmYWRmODNiNmY5ZThmYjg1MWY1MTJiNDRicC0yLAotICAgIDB4MS42MGUyNTRwMQotICB9LAotICB7IC8vIEVudHJ5IDU5OQotICAgIDB4MS45ZTkyOWE3ZmFkZjgzYjZmOWU4ZmI4NTFmNTEyYjQ0YnAtMiwKLSAgICAtMHgxLjYwZTI1NHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAwCi0gICAgLTB4MS41M2ZlMTBhNTQ3YTZlY2NlNWNhZGRjMjAwNWRiODIyYnAtMiwKLSAgICAweDEuNjkxNzM4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDEKLSAgICAweDEuNTNmZTEwYTU0N2E2ZWNjZTVjYWRkYzIwMDVkYjgyMmJwLTIsCi0gICAgLTB4MS42OTE3MzhwMQotICB9LAotICB7IC8vIEVudHJ5IDYwMgotICAgIC0weDEuMGM4NjgzYjFiYzY4Mjc1OWUyODQ0MWVmOTdjODg1NGJwLTIsCi0gICAgMHgxLjcxNGMxY3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjAzCi0gICAgMHgxLjBjODY4M2IxYmM2ODI3NTllMjg0NDFlZjk3Yzg4NTRicC0yLAotICAgIC0weDEuNzE0YzFjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDQKLSAgICAtMHgxLjhlZDk5Yzg1NDYwMDhiZTQ2NjE0ZWE2NmM3ZGRkN2U2cC0zLAotICAgIDB4MS43OTgxcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDUKLSAgICAweDEuOGVkOTljODU0NjAwOGJlNDY2MTRlYTY2YzdkZGQ3ZTZwLTMsCi0gICAgLTB4MS43OTgxcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDYKLSAgICAtMHgxLjA4MGZmZWY0ZWRhMDI3MWQ4MTY1OGQ1OGFlMjgwNzkycC0zLAotICAgIDB4MS44MWI1ZTRwMQotICB9LAotICB7IC8vIEVudHJ5IDYwNwotICAgIDB4MS4wODBmZmVmNGVkYTAyNzFkODE2NThkNThhZTI4MDc5MnAtMywKLSAgICAtMHgxLjgxYjVlNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjA4Ci0gICAgLTB4MS4wNmY5ZWU4MzY4NmFhNjE5NGMwM2RlNzFhNmI1MmY3NXAtNCwKLSAgICAweDEuODllYWM4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MDkKLSAgICAweDEuMDZmOWVlODM2ODZhYTYxOTRjMDNkZTcxYTZiNTJmNzVwLTQsCi0gICAgLTB4MS44OWVhYzhwMQotICB9LAotICB7IC8vIEVudHJ5IDYxMAotICAgIDB4MS4wYzg2MjdlYzNiYzJlOGYwZTZkZjQ0ZjgwOWYzNzBmZHAtMiwKLSAgICAtMHgxLjgxYjVlZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjExCi0gICAgLTB4MS4wYzg2MjdlYzNiYzJlOGYwZTZkZjQ0ZjgwOWYzNzBmZHAtMiwKLSAgICAweDEuODFiNWVlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTIKLSAgICAweDEuMjA1YTQ5NzUzYmI4OWU4Yzk3MWM2Y2QyODQyZWRhZjBwLTEsCi0gICAgLTB4MS43MTRjMjZwMgotICB9LAotICB7IC8vIEVudHJ5IDYxMwotICAgIC0weDEuMjA1YTQ5NzUzYmI4OWU4Yzk3MWM2Y2QyODQyZWRhZjBwLTEsCi0gICAgMHgxLjcxNGMyNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE0Ci0gICAgMHgxLmVmZDdmYjFkMjhiOGEwNjAyYjI1ZmFkZmU5ZTAyNzdhcC0xLAotICAgIC0weDEuNjBlMjVlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTUKLSAgICAtMHgxLmVmZDdmYjFkMjhiOGEwNjAyYjI1ZmFkZmU5ZTAyNzdhcC0xLAotICAgIDB4MS42MGUyNWVwMgotICB9LAotICB7IC8vIEVudHJ5IDYxNgotICAgIDB4MS5hNjRjNDdiY2ZiNWY5Y2JkYjQ5MzYwYTY1NTQ4ZmQ2ZHAwLAotICAgIC0weDEuNTA3ODk2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MTcKLSAgICAtMHgxLmE2NGM0N2JjZmI1ZjljYmRiNDkzNjBhNjU1NDhmZDZkcDAsCi0gICAgMHgxLjUwNzg5NnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjE4Ci0gICAgMHgxLmFmNDVkYWJkMzRiNzU1OTdmZjcwMDc5YjNkZTk4NmZkcDEsCi0gICAgLTB4MS40MDBlY2VwMgotICB9LAotICB7IC8vIEVudHJ5IDYxOQotICAgIC0weDEuYWY0NWRhYmQzNGI3NTU5N2ZmNzAwNzliM2RlOTg2ZmRwMSwKLSAgICAweDEuNDAwZWNlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjAKLSAgICAweDEuZjJlYmE1ODNmZmY5ZjhkZjM2OTNmZmQ5NjkzOTVkZTdwNCwKLSAgICAtMHgxLjJmYTUwNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjIxCi0gICAgLTB4MS5mMmViYTU4M2ZmZjlmOGRmMzY5M2ZmZDk2OTM5NWRlN3A0LAotICAgIDB4MS4yZmE1MDZwMgotICB9LAotICB7IC8vIEVudHJ5IDYyMgotICAgIC0weDEuMTg2NzcwZjVjZWYxNTJhNGVjNzVmZTlhNzAzMWE1NmFwMiwKLSAgICAtMHgxLjFmM2IzZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjIzCi0gICAgMHgxLjE4Njc3MGY1Y2VmMTUyYTRlYzc1ZmU5YTcwMzFhNTZhcDIsCi0gICAgMHgxLjFmM2IzZXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjI0Ci0gICAgLTB4MS5lYWI0YjUyZTZjY2UxNjBhNWI5YTIzYTRiOTI5ZDAxZHAwLAotICAgIC0weDEuMGVkMTc2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjUKLSAgICAweDEuZWFiNGI1MmU2Y2NlMTYwYTViOWEyM2E0YjkyOWQwMWRwMCwKLSAgICAweDEuMGVkMTc2cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MjYKLSAgICAtMHgxLjE5ZTJhMTI0YmMzZGVlZjY0ODMzODI3NDYyN2NjMzcxcDAsCi0gICAgLTB4MS5mY2NmNWFwMQotICB9LAotICB7IC8vIEVudHJ5IDYyNwotICAgIDB4MS4xOWUyYTEyNGJjM2RlZWY2NDgzMzgyNzQ2MjdjYzM3MXAwLAotICAgIDB4MS5mY2NmNWFwMQotICB9LAotICB7IC8vIEVudHJ5IDYyOAotICAgIC0weDEuNGQ0NmFjYTQ4ZGU0N2Y1ZmQ5MGM5MDAwYzE1NDI1ZDhwLTEsCi0gICAgLTB4MS5kYmZiYzhwMQotICB9LAotICB7IC8vIEVudHJ5IDYyOQotICAgIDB4MS40ZDQ2YWNhNDhkZTQ3ZjVmZDkwYzkwMDBjMTU0MjVkOHAtMSwKLSAgICAweDEuZGJmYmM4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzAKLSAgICAtMHgxLjUzZmUyZjZmYzlkMDIzNzc0YTIxMDVjODIxM2U0ZDVlcC0yLAotICAgIC0weDEuYmIyODM2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzEKLSAgICAweDEuNTNmZTJmNmZjOWQwMjM3NzRhMjEwNWM4MjEzZTRkNWVwLTIsCi0gICAgMHgxLmJiMjgzNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjMyCi0gICAgLTB4MS4wNmZhMWRhNDNiMjZjZDU4MGNlNWE1Yjg5Y2YyZWZmM3AtNCwKLSAgICAtMHgxLjlhNTRhNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjMzCi0gICAgMHgxLjA2ZmExZGE0M2IyNmNkNTgwY2U1YTViODljZjJlZmYzcC00LAotICAgIDB4MS45YTU0YTRwMQotICB9LAotICB7IC8vIEVudHJ5IDYzNAotICAgIDB4MS44ZWQ4NzE5OGY0MTNkM2ExMjI2NTgyODdhYTdmYzMzZXAtMywKLSAgICAtMHgxLjc5ODExMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM1Ci0gICAgLTB4MS44ZWQ4NzE5OGY0MTNkM2ExMjI2NTgyODdhYTdmYzMzZXAtMywKLSAgICAweDEuNzk4MTEycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzYKLSAgICAweDEuZWQyMThhZWUyZGY0ZTgwZTM5MzQwYjBjNGVjM2IxZDVwLTIsCi0gICAgLTB4MS41OGFkODBwMQotICB9LAotICB7IC8vIEVudHJ5IDYzNwotICAgIC0weDEuZWQyMThhZWUyZGY0ZTgwZTM5MzQwYjBjNGVjM2IxZDVwLTIsCi0gICAgMHgxLjU4YWQ4MHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjM4Ci0gICAgMHgxLmIzZGVmZDA5OTFlNjMxNTM2OWRiZDVlMmRlMmQxNGZlcC0xLAotICAgIC0weDEuMzdkOWVlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2MzkKLSAgICAtMHgxLmIzZGVmZDA5OTFlNjMxNTM2OWRiZDVlMmRlMmQxNGZlcC0xLAotICAgIDB4MS4zN2Q5ZWVwMQotICB9LAotICB7IC8vIEVudHJ5IDY0MAotICAgIDB4MS42ZWZlOTdjMjNmMjA2ODI2YjRmMDAxOWYyNzVkM2E0NHAwLAotICAgIC0weDEuMTcwNjVjcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDEKLSAgICAtMHgxLjZlZmU5N2MyM2YyMDY4MjZiNGYwMDE5ZjI3NWQzYTQ0cDAsCi0gICAgMHgxLjE3MDY1Y3AxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQyCi0gICAgMHgxLjViZDBmZjkyNWM5NGY3ZDYwOGI4ODQ4NGY5MDgxZjJjcDEsCi0gICAgLTB4MS5lYzY1OTRwMAotICB9LAotICB7IC8vIEVudHJ5IDY0MwotICAgIC0weDEuNWJkMGZmOTI1Yzk0ZjdkNjA4Yjg4NDg0ZjkwODFmMmNwMSwKLSAgICAweDEuZWM2NTk0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDQKLSAgICAweDEuNGJiNWVjZTY1N2JlZTI5MmE4MmEzZmRhNmI4MTJhYWRwMywKLSAgICAtMHgxLmFhYmU3MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ1Ci0gICAgLTB4MS40YmI1ZWNlNjU3YmVlMjkyYTgyYTNmZGE2YjgxMmFhZHAzLAotICAgIDB4MS5hYWJlNzBwMAotICB9LAotICB7IC8vIEVudHJ5IDY0NgotICAgIC0weDEuOGJkZDRmZWVmMThiZmE4YTZjMjNkZTZhNzIxZjI0MzZwMiwKLSAgICAtMHgxLjY5MTc0Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ3Ci0gICAgMHgxLjhiZGQ0ZmVlZjE4YmZhOGE2YzIzZGU2YTcyMWYyNDM2cDIsCi0gICAgMHgxLjY5MTc0Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjQ4Ci0gICAgLTB4MS4yMTI3OWUxZThiZjRiZDM5ODNhMzY3NzI2N2U1NTgwOXAxLAotICAgIC0weDEuMjc3MDI4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NDkKLSAgICAweDEuMjEyNzllMWU4YmY0YmQzOTgzYTM2NzcyNjdlNTU4MDlwMSwKLSAgICAweDEuMjc3MDI4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTAKLSAgICAtMHgxLjQxMDNhODE0N2NhODM2MTM2Y2M5OGRiOWJjNmRkZjMwcDAsCi0gICAgLTB4MS5jYjkyMGFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTEKLSAgICAweDEuNDEwM2E4MTQ3Y2E4MzYxMzZjYzk4ZGI5YmM2ZGRmMzBwMCwKLSAgICAweDEuY2I5MjBhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjUyCi0gICAgLTB4MS43ZTFkYjU4YTU1ZDZhMTJhNjQ1N2UzYzU5MjlhYzJjN3AtMSwKLSAgICAtMHgxLjQ4NDNjNHAtMQotICB9LAotICB7IC8vIEVudHJ5IDY1MwotICAgIDB4MS43ZTFkYjU4YTU1ZDZhMTJhNjQ1N2UzYzU5MjlhYzJjN3AtMSwKLSAgICAweDEuNDg0M2M0cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU0Ci0gICAgLTB4MS45ZTkyOGEwYzhlNzkwMjMyMDAxNjRlZDI0MGNhYWQwNXAtMiwKLSAgICAtMHgxLjg5ZWFmY3AtMgotICB9LAotICB7IC8vIEVudHJ5IDY1NQotICAgIDB4MS45ZTkyOGEwYzhlNzkwMjMyMDAxNjRlZDI0MGNhYWQwNXAtMiwKLSAgICAweDEuODllYWZjcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU2Ci0gICAgLTB4MS4wODBmYzlkMjRmYmU5ODc2YjMxYjBhYTI5ZGQyMzhlYXAtMywKLSAgICAtMHgxLjA2OWNlMHAtMwotICB9LAotICB7IC8vIEVudHJ5IDY1NwotICAgIDB4MS4wODBmYzlkMjRmYmU5ODc2YjMxYjBhYTI5ZGQyMzhlYXAtMywKLSAgICAweDEuMDY5Y2UwcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNjU4Ci0gICAgMHgxLjA4MGYxZjA3NTQwZmQwM2I4MmQ0YjM3MGQyMzdmYTNkcC0zLAotICAgIDB4MS4wNjljMzhwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NTkKLSAgICAtMHgxLjA4MGYxZjA3NTQwZmQwM2I4MmQ0YjM3MGQyMzdmYTNkcC0zLAotICAgIC0weDEuMDY5YzM4cC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYwCi0gICAgMHgxLjllOTIyODQ3ZTJiMWI2YTcyZDQ4NjcwMGUxOGMwNWYycC0yLAotICAgIDB4MS44OWVhYThwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjEKLSAgICAtMHgxLjllOTIyODQ3ZTJiMWI2YTcyZDQ4NjcwMGUxOGMwNWYycC0yLAotICAgIC0weDEuODllYWE4cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNjYyCi0gICAgMHgxLjdlMWQ3NDI1OGNiYzk2NGI1NjFkOTljOWE2NmY4YzdlcC0xLAotICAgIDB4MS40ODQzOWFwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NjMKLSAgICAtMHgxLjdlMWQ3NDI1OGNiYzk2NGI1NjFkOTljOWE2NmY4YzdlcC0xLAotICAgIC0weDEuNDg0MzlhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY0Ci0gICAgMHgxLjQxMDM3MjBmMmNhM2UwNTgwZmJhMTU4NDkzOThhNGU5cDAsCi0gICAgMHgxLmNiOTFlMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDY2NQotICAgIC0weDEuNDEwMzcyMGYyY2EzZTA1ODBmYmExNTg0OTM5OGE0ZTlwMCwKLSAgICAtMHgxLmNiOTFlMHAtMQotICB9LAotICB7IC8vIEVudHJ5IDY2NgotICAgIDB4MS4yMTI3NjExNjczY2NjNzUzMWY1YWY1YWVkYTM0MTJjNXAxLAotICAgIDB4MS4yNzcwMTRwMAotICB9LAotICB7IC8vIEVudHJ5IDY2NwotICAgIC0weDEuMjEyNzYxMTY3M2NjYzc1MzFmNWFmNWFlZGEzNDEyYzVwMSwKLSAgICAtMHgxLjI3NzAxNHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY4Ci0gICAgMHgxLjhiZGM4YmEzZDgyNzcyMTNjNWI3NGVmODA2ZWY0NjZicDIsCi0gICAgMHgxLjY5MTczOHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjY5Ci0gICAgLTB4MS44YmRjOGJhM2Q4Mjc3MjEzYzViNzRlZjgwNmVmNDY2YnAyLAotICAgIC0weDEuNjkxNzM4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzAKLSAgICAtMHgxLjRiYjZmYzA5MmJjMTY1MzAyMTYyMDlhOTEyYWFkYTM3cDMsCi0gICAgMHgxLmFhYmU1Y3AwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjcxCi0gICAgMHgxLjRiYjZmYzA5MmJjMTY1MzAyMTYyMDlhOTEyYWFkYTM3cDMsCi0gICAgLTB4MS5hYWJlNWNwMAotICB9LAotICB7IC8vIEVudHJ5IDY3MgotICAgIC0weDEuNWJkMTUzNjhmODRiZTBiZGE4ZjEzNWE1Zjc5YWVhY2JwMSwKLSAgICAweDEuZWM2NTgwcDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzMKLSAgICAweDEuNWJkMTUzNjhmODRiZTBiZGE4ZjEzNWE1Zjc5YWVhY2JwMSwKLSAgICAtMHgxLmVjNjU4MHAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc0Ci0gICAgLTB4MS42ZWZlZDRkYzg5NDZlMWMzNjIwZDc5YmIwZDY1NDMzOHAwLAotICAgIDB4MS4xNzA2NTJwMQotICB9LAotICB7IC8vIEVudHJ5IDY3NQotICAgIDB4MS42ZWZlZDRkYzg5NDZlMWMzNjIwZDc5YmIwZDY1NDMzOHAwLAotICAgIC0weDEuMTcwNjUycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzYKLSAgICAtMHgxLmIzZGY0MjA2ZDIzMjc5NGQ1NzYxOTkyZDg4YzVhMzk0cC0xLAotICAgIDB4MS4zN2Q5ZTRwMQotICB9LAotICB7IC8vIEVudHJ5IDY3NwotICAgIDB4MS5iM2RmNDIwNmQyMzI3OTRkNTc2MTk5MmQ4OGM1YTM5NHAtMSwKLSAgICAtMHgxLjM3ZDllNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjc4Ci0gICAgLTB4MS5lZDIxZWQ3YmM0YjU5NjhiZGIwY2Q2ZGEyNjljZDU1ZnAtMiwKLSAgICAweDEuNThhZDc2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2NzkKLSAgICAweDEuZWQyMWVkN2JjNGI1OTY4YmRiMGNkNmRhMjY5Y2Q1NWZwLTIsCi0gICAgLTB4MS41OGFkNzZwMQotICB9LAotICB7IC8vIEVudHJ5IDY4MAotICAgIC0weDEuOGVkOTE3YWE3NGU3MzNiOTE5NGQ1MzdjOGRmMzNjNjRwLTMsCi0gICAgMHgxLjc5ODEwOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgxCi0gICAgMHgxLjhlZDkxN2FhNzRlNzMzYjkxOTRkNTM3YzhkZjMzYzY0cC0zLAotICAgIC0weDEuNzk4MTA4cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODIKLSAgICAweDEuMDZmOGRjNTI4ZWEwMTg4MjA2NGVlMjQyZjU4YTJiODhwLTQsCi0gICAgMHgxLjlhNTQ5YXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjgzCi0gICAgLTB4MS4wNmY4ZGM1MjhlYTAxODgyMDY0ZWUyNDJmNThhMmI4OHAtNCwKLSAgICAtMHgxLjlhNTQ5YXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNjg0Ci0gICAgMHgxLjUzZmRkNjllMTQzN2RiOTU3YzYyZThjYzU1NzQyYmVlcC0yLAotICAgIDB4MS5iYjI4MmNwMQotICB9LAotICB7IC8vIEVudHJ5IDY4NQotICAgIC0weDEuNTNmZGQ2OWUxNDM3ZGI5NTdjNjJlOGNjNTU3NDJiZWVwLTIsCi0gICAgLTB4MS5iYjI4MmNwMQotICB9LAotICB7IC8vIEVudHJ5IDY4NgotICAgIDB4MS40ZDQ2NzNiMWM3NjM1Y2M4OTNlMWM4ZDJjYTU3YjNlOXAtMSwKLSAgICAweDEuZGJmYmJlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODcKLSAgICAtMHgxLjRkNDY3M2IxYzc2MzVjYzg5M2UxYzhkMmNhNTdiM2U5cC0xLAotICAgIC0weDEuZGJmYmJlcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODgKLSAgICAweDEuMTllMjc0ZTRmZGVjOWU3OGVmNjg3MjA4MWI1NTcyY2ZwMCwKLSAgICAweDEuZmNjZjUwcDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA2ODkKLSAgICAtMHgxLjE5ZTI3NGU0ZmRlYzllNzhlZjY4NzIwODFiNTU3MmNmcDAsCi0gICAgLTB4MS5mY2NmNTBwMQotICB9LAotICB7IC8vIEVudHJ5IDY5MAotICAgIDB4MS5lYWI0NDUwMDNhN2I1NDJhMmQ0ZDg3YTg4NzkzYmI2N3AwLAotICAgIDB4MS4wZWQxNzBwMgotICB9LAotICB7IC8vIEVudHJ5IDY5MQotICAgIC0weDEuZWFiNDQ1MDAzYTdiNTQyYTJkNGQ4N2E4ODc5M2JiNjdwMCwKLSAgICAtMHgxLjBlZDE3MHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkyCi0gICAgMHgxLjE4NjZmN2M5MTY2MGQ5YzlmNGIyZDE0ZTkxMzc1NzMycDIsCi0gICAgMHgxLjFmM2IzOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjkzCi0gICAgLTB4MS4xODY2ZjdjOTE2NjBkOWM5ZjRiMmQxNGU5MTM3NTczMnAyLAotICAgIC0weDEuMWYzYjM4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTQKLSAgICAtMHgxLmYyZjE1OTliMjlhN2RlOTUyYjhiYTE4NzdkOWY1ZTYxcDQsCi0gICAgMHgxLjJmYTVwMgotICB9LAotICB7IC8vIEVudHJ5IDY5NQotICAgIDB4MS5mMmYxNTk5YjI5YTdkZTk1MmI4YmExODc3ZDlmNWU2MXA0LAotICAgIC0weDEuMmZhNXAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk2Ci0gICAgLTB4MS5hZjQ2NmVmN2IxNTY0NTQ1NWUxNWZiYmFlNmJiNGJjNnAxLAotICAgIDB4MS40MDBlYzhwMgotICB9LAotICB7IC8vIEVudHJ5IDY5NwotICAgIDB4MS5hZjQ2NmVmN2IxNTY0NTQ1NWUxNWZiYmFlNmJiNGJjNnAxLAotICAgIC0weDEuNDAwZWM4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA2OTgKLSAgICAtMHgxLmE2NGNhMTBiZmVmZDJiMDRiYjZhMWJiNzA4YzI4OTY3cDAsCi0gICAgMHgxLjUwNzg5MHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNjk5Ci0gICAgMHgxLmE2NGNhMTBiZmVmZDJiMDRiYjZhMWJiNzA4YzI4OTY3cDAsCi0gICAgLTB4MS41MDc4OTBwMgotICB9LAotICB7IC8vIEVudHJ5IDcwMAotICAgIC0weDEuZWZkODU4MjFlYzkyN2YyYTg5ZWM0MWFjZWU1ODcyMzBwLTEsCi0gICAgMHgxLjYwZTI1OHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzAxCi0gICAgMHgxLmVmZDg1ODIxZWM5MjdmMmE4OWVjNDFhY2VlNTg3MjMwcC0xLAotICAgIC0weDEuNjBlMjU4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDIKLSAgICAtMHgxLjIwNWE4OGFlYzY0Y2FkMzVkNzc1MmM3MzYyMGMyMTM5cC0xLAotICAgIDB4MS43MTRjMjBwMgotICB9LAotICB7IC8vIEVudHJ5IDcwMwotICAgIDB4MS4yMDVhODhhZWM2NGNhZDM1ZDc3NTJjNzM2MjBjMjEzOXAtMSwKLSAgICAtMHgxLjcxNGMyMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzA0Ci0gICAgLTB4MS4wYzg2OGU4NjM1NDNmZDk4OTQ3NmM4Y2RlZmZhOTNlYXAtMiwKLSAgICAweDEuODFiNWU4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDUKLSAgICAweDEuMGM4NjhlODYzNTQzZmQ5ODk0NzZjOGNkZWZmYTkzZWFwLTIsCi0gICAgLTB4MS44MWI1ZThwMgotICB9LAotICB7IC8vIEVudHJ5IDcwNgotICAgIDB4MS5mMDliNjFhOGEwNGYwODk4ODUxZjFkNzYwNGZhMTNjOHAtNSwKLSAgICAweDEuZWZmZmZlcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzA3Ci0gICAgLTB4MS5mMDliNjFhOGEwNGYwODk4ODUxZjFkNzYwNGZhMTNjOHAtNSwKLSAgICAtMHgxLmVmZmZmZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDcwOAotICAgIDB4MS5mMDliNjNhYTgxZmM0NmU5NWUwNjQwNWI0MWU4YjRjY3AtNSwKLSAgICAweDEuZjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MDkKLSAgICAtMHgxLmYwOWI2M2FhODFmYzQ2ZTk1ZTA2NDA1YjQxZThiNGNjcC01LAotICAgIC0weDEuZjBwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTAKLSAgICAweDEuZjA5YjY1YWM2M2E5ODkxZjE0MThjNDMzOGMxZTQxOWVwLTUsCi0gICAgMHgxLmYwMDAwMnAtNQotICB9LAotICB7IC8vIEVudHJ5IDcxMQotICAgIC0weDEuZjA5YjY1YWM2M2E5ODkxZjE0MThjNDMzOGMxZTQxOWVwLTUsCi0gICAgLTB4MS5mMDAwMDJwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTIKLSAgICAweDEuZmE4ZjFmYzBjZTg2YzIxNGJmNzY1ZmQ1OWU4Nzk4YTVwLTQsCi0gICAgMHgxLmY3ZmZmZXAtNAotICB9LAotICB7IC8vIEVudHJ5IDcxMwotICAgIC0weDEuZmE4ZjFmYzBjZTg2YzIxNGJmNzY1ZmQ1OWU4Nzk4YTVwLTQsCi0gICAgLTB4MS5mN2ZmZmVwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTQKLSAgICAweDEuZmE4ZjIxYzhhMzNhZmQzMzU1MTk4ZThkNzcxNmE4MTFwLTQsCi0gICAgMHgxLmY4cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzE1Ci0gICAgLTB4MS5mYThmMjFjOGEzM2FmZDMzNTUxOThlOGQ3NzE2YTgxMXAtNCwKLSAgICAtMHgxLmY4cC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzE2Ci0gICAgMHgxLmZhOGYyM2QwNzdlZjQ4NjQ1ZWZmOWE1MTk2MjhiM2E5cC00LAotICAgIDB4MS5mODAwMDJwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTcKLSAgICAtMHgxLmZhOGYyM2QwNzdlZjQ4NjQ1ZWZmOWE1MTk2MjhiM2E5cC00LAotICAgIC0weDEuZjgwMDAycC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzE4Ci0gICAgMHgxLjRlZjA2YWE3M2VlNmE0MzljMGM5ZjQ1MDQ2YjI1OTc4cC0zLAotICAgIDB4MS40YmZmZmVwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MTkKLSAgICAtMHgxLjRlZjA2YWE3M2VlNmE0MzljMGM5ZjQ1MDQ2YjI1OTc4cC0zLAotICAgIC0weDEuNGJmZmZlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIwCi0gICAgMHgxLjRlZjA2Y2I0ZjBhODdhNWM4ZWVlZWJjZWIxMmEyMmI0cC0zLAotICAgIDB4MS40Y3AtMwotICB9LAotICB7IC8vIEVudHJ5IDcyMQotICAgIC0weDEuNGVmMDZjYjRmMGE4N2E1YzhlZWVlYmNlYjEyYTIyYjRwLTMsCi0gICAgLTB4MS40Y3AtMwotICB9LAotICB7IC8vIEVudHJ5IDcyMgotICAgIDB4MS40ZWYwNmVjMmEyNmE3YjdjMTcyMWZmYWZiOTNjMDI4MXAtMywKLSAgICAweDEuNGMwMDAycC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgNzIzCi0gICAgLTB4MS40ZWYwNmVjMmEyNmE3YjdjMTcyMWZmYWZiOTNjMDI4MXAtMywKLSAgICAtMHgxLjRjMDAwMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDcyNAotICAgIDB4MS4zY2MyYTJmZDkxMWUxNTU3ZDU3YjQ0YWJmMjhjNGNjYXAtMiwKLSAgICAweDEuMzMzMzMycC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI1Ci0gICAgLTB4MS4zY2MyYTJmZDkxMWUxNTU3ZDU3YjQ0YWJmMjhjNGNjYXAtMiwKLSAgICAtMHgxLjMzMzMzMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDcyNgotICAgIDB4MS4zY2MyYTUyZThmNDEzN2NhMjdkMWRjMDU2NzE5NTQ0M3AtMiwKLSAgICAweDEuMzMzMzM0cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI3Ci0gICAgLTB4MS4zY2MyYTUyZThmNDEzN2NhMjdkMWRjMDU2NzE5NTQ0M3AtMiwKLSAgICAtMHgxLjMzMzMzNHAtMgotICB9LAotICB7IC8vIEVudHJ5IDcyOAotICAgIDB4MS4zY2MyYTc1ZjhkNjUwN2M1ODliZjA4ZTAzNzEzOTRiY3AtMiwKLSAgICAweDEuMzMzMzM2cC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgNzI5Ci0gICAgLTB4MS4zY2MyYTc1ZjhkNjUwN2M1ODliZjA4ZTAzNzEzOTRiY3AtMiwKLSAgICAtMHgxLjMzMzMzNnAtMgotICB9LAotICB7IC8vIEVudHJ5IDczMAotICAgIDB4MS45OTQzNmU1ZjA3YjczZGRhMWVmNjFhODAwYWFkZmRkM3AtMSwKLSAgICAweDEuNTk0MzE2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMxCi0gICAgLTB4MS45OTQzNmU1ZjA3YjczZGRhMWVmNjFhODAwYWFkZmRkM3AtMSwKLSAgICAtMHgxLjU5NDMxNnAtMQotICB9LAotICB7IC8vIEVudHJ5IDczMgotICAgIDB4MS45OTQzNzFhNjJiZmUxM2ViMWM3NTVjYjViZTQ2Zjg1M3AtMSwKLSAgICAweDEuNTk0MzE4cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzMzCi0gICAgLTB4MS45OTQzNzFhNjJiZmUxM2ViMWM3NTVjYjViZTQ2Zjg1M3AtMSwKLSAgICAtMHgxLjU5NDMxOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDczNAotICAgIDB4MS45OTQzNzRlZDUwNGEyNzgyMjY1NzM1NjJiNjBlY2E5YXAtMSwKLSAgICAweDEuNTk0MzFhcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM1Ci0gICAgLTB4MS45OTQzNzRlZDUwNGEyNzgyMjY1NzM1NjJiNjBlY2E5YXAtMSwKLSAgICAtMHgxLjU5NDMxYXAtMQotICB9LAotICB7IC8vIEVudHJ5IDczNgotICAgIDB4MS5mYmM1MGRlN2M2MDVhNGQxZDBmMTExOWIxMjk0YjZmMHAtMSwKLSAgICAweDEuOGZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzM3Ci0gICAgLTB4MS5mYmM1MGRlN2M2MDVhNGQxZDBmMTExOWIxMjk0YjZmMHAtMSwKLSAgICAtMHgxLjhmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDczOAotICAgIDB4MS5mYmM1MTFkZjU5MTdmNTM5YmJjZjc3OGJjMWEyMjI0OXAtMSwKLSAgICAweDEuOTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3MzkKLSAgICAtMHgxLmZiYzUxMWRmNTkxN2Y1MzliYmNmNzc4YmMxYTIyMjQ5cC0xLAotICAgIC0weDEuOTBwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDAKLSAgICAweDEuZmJjNTE1ZDZlYzMyMjNmZmJlZDRiYjc1MTU0ZmRhMGZwLTEsCi0gICAgMHgxLjkwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDc0MQotICAgIC0weDEuZmJjNTE1ZDZlYzMyMjNmZmJlZDRiYjc1MTU0ZmRhMGZwLTEsCi0gICAgLTB4MS45MDAwMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDIKLSAgICAtMHgxLnAtMTQ5LAotICAgIC0weDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDMKLSAgICAweDEucC0xNDksCi0gICAgMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgNzQ0Ci0gICAgMC4wLAotICAgIDAuMAotICB9LAotICB7IC8vIEVudHJ5IDc0NQotICAgIDB4MS5wLTE0OSwKLSAgICAweDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDYKLSAgICAtMHgxLnAtMTQ5LAotICAgIC0weDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDcKLSAgICAweDEuOTI3Mjc3NWVhNWVjZmY0ZTQzZWNkZWYzZDg1ZWMyMjZwLTUsCi0gICAgMHgxLjkyMWZiNHAtNQotICB9LAotICB7IC8vIEVudHJ5IDc0OAotICAgIC0weDEuOTI3Mjc3NWVhNWVjZmY0ZTQzZWNkZWYzZDg1ZWMyMjZwLTUsCi0gICAgLTB4MS45MjFmYjRwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NDkKLSAgICAweDEuOTI3Mjc5NWZlMjQyZDllYjkzOTNhNzQ0NjYyMGMzOTRwLTUsCi0gICAgMHgxLjkyMWZiNnAtNQotICB9LAotICB7IC8vIEVudHJ5IDc1MAotICAgIC0weDEuOTI3Mjc5NWZlMjQyZDllYjkzOTNhNzQ0NjYyMGMzOTRwLTUsCi0gICAgLTB4MS45MjFmYjZwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTEKLSAgICAweDEuOTI3MjdiNjExZTk4YjdhZmI5Nzk3NzU1MWQxYzVmMzhwLTUsCi0gICAgMHgxLjkyMWZiOHAtNQotICB9LAotICB7IC8vIEVudHJ5IDc1MgotICAgIC0weDEuOTI3MjdiNjExZTk4YjdhZmI5Nzk3NzU1MWQxYzVmMzhwLTUsCi0gICAgLTB4MS45MjFmYjhwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTMKLSAgICAweDEuOTM2YmI3N2U0YWM4NTliYzY5YmM0YWJjOWU5MWYwMjVwLTQsCi0gICAgMHgxLjkyMWZiNHAtNAotICB9LAotICB7IC8vIEVudHJ5IDc1NAotICAgIC0weDEuOTM2YmI3N2U0YWM4NTliYzY5YmM0YWJjOWU5MWYwMjVwLTQsCi0gICAgLTB4MS45MjFmYjRwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTUKLSAgICAweDEuOTM2YmI5ODM0MjQxMDIyZWNkMDcwYjkwNjQ2MzI3MjFwLTQsCi0gICAgMHgxLjkyMWZiNnAtNAotICB9LAotICB7IC8vIEVudHJ5IDc1NgotICAgIC0weDEuOTM2YmI5ODM0MjQxMDIyZWNkMDcwYjkwNjQ2MzI3MjFwLTQsCi0gICAgLTB4MS45MjFmYjZwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTcKLSAgICAweDEuOTM2YmJiODgzOWI5Yjc1YmRjYzVmNjg3MDI2N2E2MDlwLTQsCi0gICAgMHgxLjkyMWZiOHAtNAotICB9LAotICB7IC8vIEVudHJ5IDc1OAotICAgIC0weDEuOTM2YmJiODgzOWI5Yjc1YmRjYzVmNjg3MDI2N2E2MDlwLTQsCi0gICAgLTB4MS45MjFmYjhwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NTkKLSAgICAweDEuOTc1ZjVjYjQzYmQ5NTFhYTJlODlhMDVjYmY1ZTcwZmZwLTMsCi0gICAgMHgxLjkyMWZiNHAtMwotICB9LAotICB7IC8vIEVudHJ5IDc2MAotICAgIC0weDEuOTc1ZjVjYjQzYmQ5NTFhYTJlODlhMDVjYmY1ZTcwZmZwLTMsCi0gICAgLTB4MS45MjFmYjRwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjEKLSAgICAweDEuOTc1ZjVlYzg3ZGRjNGU3YTM1NzA1OWY3MWE5ZjA1YjJwLTMsCi0gICAgMHgxLjkyMWZiNnAtMwotICB9LAotICB7IC8vIEVudHJ5IDc2MgotICAgIC0weDEuOTc1ZjVlYzg3ZGRjNGU3YTM1NzA1OWY3MWE5ZjA1YjJwLTMsCi0gICAgLTB4MS45MjFmYjZwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjMKLSAgICAweDEuOTc1ZjYwZGNiZmRmODAzOWYwMWViNzg2NGJjMDllMTNwLTMsCi0gICAgMHgxLjkyMWZiOHAtMwotICB9LAotICB7IC8vIEVudHJ5IDc2NAotICAgIC0weDEuOTc1ZjYwZGNiZmRmODAzOWYwMWViNzg2NGJjMDllMTNwLTMsCi0gICAgLTB4MS45MjFmYjhwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjUKLSAgICAweDEuYTgyNzk4MjNlOWJhMzBlZTYyM2E1NDAyYTQ4NTkwZmNwLTIsCi0gICAgMHgxLjkyMWZiNHAtMgotICB9LAotICB7IC8vIEVudHJ5IDc2NgotICAgIC0weDEuYTgyNzk4MjNlOWJhMzBlZTYyM2E1NDAyYTQ4NTkwZmNwLTIsCi0gICAgLTB4MS45MjFmYjRwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjcKLSAgICAweDEuYTgyNzlhN2JjMjIwNmZmZjNhZmE1MmYxNjhjNWY4ZjJwLTIsCi0gICAgMHgxLjkyMWZiNnAtMgotICB9LAotICB7IC8vIEVudHJ5IDc2OAotICAgIC0weDEuYTgyNzlhN2JjMjIwNmZmZjNhZmE1MmYxNjhjNWY4ZjJwLTIsCi0gICAgLTB4MS45MjFmYjZwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NjkKLSAgICAweDEuYTgyNzljZDM5YTg3YTc4NmUxNDA1MzdkYjcyZmYzMzRwLTIsCi0gICAgMHgxLjkyMWZiOHAtMgotICB9LAotICB7IC8vIEVudHJ5IDc3MAotICAgIC0weDEuYTgyNzljZDM5YTg3YTc4NmUxNDA1MzdkYjcyZmYzMzRwLTIsCi0gICAgLTB4MS45MjFmYjhwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzEKLSAgICAweDEuZmZmZmZkNzc3YTVlOTFlNjFmNTM4MGZiODA4ZDMyNzJwLTEsCi0gICAgMHgxLjkyMWZiNHAtMQotICB9LAotICB7IC8vIEVudHJ5IDc3MgotICAgIC0weDEuZmZmZmZkNzc3YTVlOTFlNjFmNTM4MGZiODA4ZDMyNzJwLTEsCi0gICAgLTB4MS45MjFmYjRwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzMKLSAgICAweDEuMDAwMDAwYmJiZDJlYzA2ZDZkNmZmZjM2NTVhMzQ2YWNwMCwKLSAgICAweDEuOTIxZmI2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc0Ci0gICAgLTB4MS4wMDAwMDBiYmJkMmVjMDZkNmQ2ZmZmMzY1NWEzNDZhY3AwLAotICAgIC0weDEuOTIxZmI2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgNzc1Ci0gICAgMHgxLjAwMDAwMmJiYmQzMjM3ZTdkMTE0Mjc2ZWQzMjlhZjVicDAsCi0gICAgMHgxLjkyMWZiOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDc3NgotICAgIC0weDEuMDAwMDAyYmJiZDMyMzdlN2QxMTQyNzZlZDMyOWFmNWJwMCwKLSAgICAtMHgxLjkyMWZiOHAtMQotICB9LAotICB7IC8vIEVudHJ5IDc3NwotICAgIDB4MS45NDM3YjMzNmI2YjBjNDc5YjIyODA5OTliMTk1NzVjN3AyMywKLSAgICAweDEuOTIxZmI0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzgKLSAgICAtMHgxLjk0MzdiMzM2YjZiMGM0NzliMjI4MDk5OWIxOTU3NWM3cDIzLAotICAgIC0weDEuOTIxZmI0cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3NzkKLSAgICAtMHgxLjVkMTQ5NDZkYzk4OTc1ZDY0MjFhNTUyODRmZTAyMGExcDI0LAotICAgIDB4MS45MjFmYjZwMAotICB9LAotICB7IC8vIEVudHJ5IDc4MAotICAgIDB4MS41ZDE0OTQ2ZGM5ODk3NWQ2NDIxYTU1Mjg0ZmUwMjBhMXAyNCwKLSAgICAtMHgxLjkyMWZiNnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgNzgxCi0gICAgLTB4MS43NmExOTBlYjJiMDcxOGQ4ZGI1NWY3ZDJhYmViMDdkMnAyMiwKLSAgICAweDEuOTIxZmI4cDAKLSAgfSwKLSAgeyAvLyBFbnRyeSA3ODIKLSAgICAweDEuNzZhMTkwZWIyYjA3MThkOGRiNTVmN2QyYWJlYjA3ZDJwMjIsCi0gICAgLTB4MS45MjFmYjhwMAotICB9LAotICB7IC8vIEVudHJ5IDc4MwotICAgIC0weDEuNDQ0MmQxODQ2OThjNDI2YzhlM2VmZDM1NmNiZWJlMGFwLTIzLAotICAgIDB4MS45MjFmYjRwMQotICB9LAotICB7IC8vIEVudHJ5IDc4NAotICAgIDB4MS40NDQyZDE4NDY5OGM0MjZjOGUzZWZkMzU2Y2JlYmUwYXAtMjMsCi0gICAgLTB4MS45MjFmYjRwMQotICB9LAotICB7IC8vIEVudHJ5IDc4NQotICAgIDB4MS43NzdhNWNmNzJjZWRmM2I1NDRjODE4MDhiNTE1ZjFmOXAtMjQsCi0gICAgMHgxLjkyMWZiNnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzg2Ci0gICAgLTB4MS43NzdhNWNmNzJjZWRmM2I1NDRjODE4MDhiNTE1ZjFmOXAtMjQsCi0gICAgLTB4MS45MjFmYjZwMQotICB9LAotICB7IC8vIEVudHJ5IDc4NwotICAgIDB4MS41ZGRlOTczZGNiNDhkNmUzZDEzY2YyYTUxNTUwZTkxMXAtMjIsCi0gICAgMHgxLjkyMWZiOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgNzg4Ci0gICAgLTB4MS41ZGRlOTczZGNiNDhkNmUzZDEzY2YyYTUxNTUwZTkxMXAtMjIsCi0gICAgLTB4MS45MjFmYjhwMQotICB9LAotICB7IC8vIEVudHJ5IDc4OQotICAgIC0weDEuNDQ0MmQxODQ2OTk0NjM2MmYzZjZjYzdjNDM4NTc2NjFwLTIyLAotICAgIDB4MS45MjFmYjRwMgotICB9LAotICB7IC8vIEVudHJ5IDc5MAotICAgIDB4MS40NDQyZDE4NDY5OTQ2MzYyZjNmNmNjN2M0Mzg1NzY2MXAtMjIsCi0gICAgLTB4MS45MjFmYjRwMgotICB9LAotICB7IC8vIEVudHJ5IDc5MQotICAgIDB4MS43NzdhNWNmNzJjZjExYjczOWQyYWIxODc3ZTgxYTljN3AtMjMsCi0gICAgMHgxLjkyMWZiNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzkyCi0gICAgLTB4MS43NzdhNWNmNzJjZjExYjczOWQyYWIxODc3ZTgxYTljN3AtMjMsCi0gICAgLTB4MS45MjFmYjZwMgotICB9LAotICB7IC8vIEVudHJ5IDc5MwotICAgIDB4MS41ZGRlOTczZGNiNzFhZWI2ZTc3NjY2OGJiYjNkZTI1M3AtMjEsCi0gICAgMHgxLjkyMWZiOHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgNzk0Ci0gICAgLTB4MS41ZGRlOTczZGNiNzFhZWI2ZTc3NjY2OGJiYjNkZTI1M3AtMjEsCi0gICAgLTB4MS45MjFmYjhwMgotICB9LAotICB7IC8vIEVudHJ5IDc5NQotICAgIC0weDEuNDQ0MmQxODQ2OWI0ZTczYzhhZDYwZTdiOWYyODhjNWNwLTIxLAotICAgIDB4MS45MjFmYjRwMwotICB9LAotICB7IC8vIEVudHJ5IDc5NgotICAgIDB4MS40NDQyZDE4NDY5YjRlNzNjOGFkNjBlN2I5ZjI4OGM1Y3AtMjEsCi0gICAgLTB4MS45MjFmYjRwMwotICB9LAotICB7IC8vIEVudHJ5IDc5NwotICAgIDB4MS43NzdhNWNmNzJjZmRiYTZjZmViNTE4MjU4YmNmMjYzY3AtMjIsCi0gICAgMHgxLjkyMWZiNnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgNzk4Ci0gICAgLTB4MS43NzdhNWNmNzJjZmRiYTZjZmViNTE4MjU4YmNmMjYzY3AtMjIsCi0gICAgLTB4MS45MjFmYjZwMwotICB9LAotICB7IC8vIEVudHJ5IDc5OQotICAgIDB4MS41ZGRlOTczZGNjMTUwZTAzNDA1Y2E4OTQ4ODY2MDJjMnAtMjAsCi0gICAgMHgxLjkyMWZiOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODAwCi0gICAgLTB4MS41ZGRlOTczZGNjMTUwZTAzNDA1Y2E4OTQ4ODY2MDJjMnAtMjAsCi0gICAgLTB4MS45MjFmYjhwMwotICB9LAotICB7IC8vIEVudHJ5IDgwMQotICAgIC0weDEuNDQ0MmQxODQ2YTM2ZjZhMmU2NTM2NGI5MTYzODJlOWJwLTIwLAotICAgIDB4MS45MjFmYjRwNAotICB9LAotICB7IC8vIEVudHJ5IDgwMgotICAgIDB4MS40NDQyZDE4NDZhMzZmNmEyZTY1MzY0YjkxNjM4MmU5YnAtMjAsCi0gICAgLTB4MS45MjFmYjRwNAotICB9LAotICB7IC8vIEVudHJ5IDgwMwotICAgIDB4MS43NzdhNWNmNzJkMzAzNjUyODRkZWJjY2MzYWVlZWMxN3AtMjEsCi0gICAgMHgxLjkyMWZiNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgODA0Ci0gICAgLTB4MS43NzdhNWNmNzJkMzAzNjUyODRkZWJjY2MzYWVlZWMxN3AtMjEsCi0gICAgLTB4MS45MjFmYjZwNAotICB9LAotICB7IC8vIEVudHJ5IDgwNQotICAgIDB4MS41ZGRlOTczZGNlYTI4YjM0YTNmY2Q3OWIxNDRhNTA1MHAtMTksCi0gICAgMHgxLjkyMWZiOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgODA2Ci0gICAgLTB4MS41ZGRlOTczZGNlYTI4YjM0YTNmY2Q3OWIxNDRhNTA1MHAtMTksCi0gICAgLTB4MS45MjFmYjhwNAotICB9LAotICB7IC8vIEVudHJ5IDgwNwotICAgIC0weDEuNDQ0MmQxODQ2YzNmMzQzYzU0NGRhMWFmN2FhYjY5MGNwLTE5LAotICAgIDB4MS45MjFmYjRwNQotICB9LAotICB7IC8vIEVudHJ5IDgwOAotICAgIDB4MS40NDQyZDE4NDZjM2YzNDNjNTQ0ZGExYWY3YWFiNjkwY3AtMTksCi0gICAgLTB4MS45MjFmYjRwNQotICB9LAotICB7IC8vIEVudHJ5IDgwOQotICAgIDB4MS43NzdhNWNmNzJkZmEyNWU4OWQ4NWYyNGU5NjBiNDQ1NXAtMjAsCi0gICAgMHgxLjkyMWZiNnA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgODEwCi0gICAgLTB4MS43NzdhNWNmNzJkZmEyNWU4OWQ4NWYyNGU5NjBiNDQ1NXAtMjAsCi0gICAgLTB4MS45MjFmYjZwNQotICB9LAotICB7IC8vIEVudHJ5IDgxMQotICAgIDB4MS41ZGRlOTczZGQ4ZDg3ZmZhMzJmMDAxZWFiODFkOTYwY3AtMTgsCi0gICAgMHgxLjkyMWZiOHA1Ci0gIH0sCi0gIHsgLy8gRW50cnkgODEyCi0gICAgLTB4MS41ZGRlOTczZGQ4ZDg3ZmZhMzJmMDAxZWFiODFkOTYwY3AtMTgsCi0gICAgLTB4MS45MjFmYjhwNQotICB9LAotICB7IC8vIEVudHJ5IDgxMwotICAgIC0weDEuNDQ0MmQxODQ3NDYwMmFhMjBjODRkNTkxOGZjNjhhOGVwLTE4LAotICAgIDB4MS45MjFmYjRwNgotICB9LAotICB7IC8vIEVudHJ5IDgxNAotICAgIDB4MS40NDQyZDE4NDc0NjAyYWEyMGM4NGQ1OTE4ZmM2OGE4ZXAtMTgsCi0gICAgLTB4MS45MjFmYjRwNgotICB9LAotICB7IC8vIEVudHJ5IDgxNQotICAgIDB4MS43NzdhNWNmNzMxMjFlNDQxMDAyY2Y2ZDFlYzUwZDU2ZHAtMTksCi0gICAgMHgxLjkyMWZiNnA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgODE2Ci0gICAgLTB4MS43NzdhNWNmNzMxMjFlNDQxMDAyY2Y2ZDFlYzUwZDU2ZHAtMTksCi0gICAgLTB4MS45MjFmYjZwNgotICB9LAotICB7IC8vIEVudHJ5IDgxNwotICAgIDB4MS41ZGRlOTczZTAxYjA1MzEwNzVlMzhlODA4Y2UwNDhmMnAtMTcsCi0gICAgMHgxLjkyMWZiOHA2Ci0gIH0sCi0gIHsgLy8gRW50cnkgODE4Ci0gICAgLTB4MS41ZGRlOTczZTAxYjA1MzEwNzVlMzhlODA4Y2UwNDhmMnAtMTcsCi0gICAgLTB4MS45MjFmYjhwNgotICB9LAotICB7IC8vIEVudHJ5IDgxOQotICAgIC0weDEuNDQ0MmQxODQ5NGU0MDQzOGYyNDVhNWEyMTlkZWEyMzVwLTE3LAotICAgIDB4MS45MjFmYjRwNwotICB9LAotICB7IC8vIEVudHJ5IDgyMAotICAgIDB4MS40NDQyZDE4NDk0ZTQwNDM4ZjI0NWE1YTIxOWRlYTIzNXAtMTcsCi0gICAgLTB4MS45MjFmYjRwNwotICB9LAotICB7IC8vIEVudHJ5IDgyMQotICAgIDB4MS43NzdhNWNmNzNkYzBkZGEyOGI2YmYwN2RlMmIyZDVlNnAtMTgsCi0gICAgMHgxLjkyMWZiNnA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgODIyCi0gICAgLTB4MS43NzdhNWNmNzNkYzBkZGEyOGI2YmYwN2RlMmIyZDVlNnAtMTgsCi0gICAgLTB4MS45MjFmYjZwNwotICB9LAotICB7IC8vIEVudHJ5IDgyMwotICAgIDB4MS41ZGRlOTczZWE1MGY5ZjY5ZjQxZmY2NGM4YzZkYjc2MXAtMTYsCi0gICAgMHgxLjkyMWZiOHA3Ci0gIH0sCi0gIHsgLy8gRW50cnkgODI0Ci0gICAgLTB4MS41ZGRlOTczZWE1MGY5ZjY5ZjQxZmY2NGM4YzZkYjc2MXAtMTYsCi0gICAgLTB4MS45MjFmYjhwNwotICB9LAotICB7IC8vIEVudHJ5IDgyNQotICAgIC0weDEuMDAwMDBmY2NjOGYxNWVlODlmMDlkMjIyZTE0YzcyOTJwMCwKLSAgICAweDEuMmQ5N2M0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjYKLSAgICAweDEuMDAwMDBmY2NjOGYxNWVlODlmMDlkMjIyZTE0YzcyOTJwMCwKLSAgICAtMHgxLjJkOTdjNHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODI3Ci0gICAgLTB4MS4wMDAwMDdjY2M4OTJmOGEwNzYwY2MyMDgyN2FjZTQ3NnAwLAotICAgIDB4MS4yZDk3YzZwMQotICB9LAotICB7IC8vIEVudHJ5IDgyOAotICAgIDB4MS4wMDAwMDdjY2M4OTJmOGEwNzYwY2MyMDgyN2FjZTQ3NnAwLAotICAgIC0weDEuMmQ5N2M2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MjkKLSAgICAtMHgxLmZmZmZmZjk5OTBlOTI0Yjg2NmU4MzFjOWU5ZTYzOWM3cC0xLAotICAgIDB4MS4yZDk3YzhwMQotICB9LAotICB7IC8vIEVudHJ5IDgzMAotICAgIDB4MS5mZmZmZmY5OTkwZTkyNGI4NjZlODMxYzllOWU2MzljN3AtMSwKLSAgICAtMHgxLjJkOTdjOHAxCi0gIH0sCi0gIHsgLy8gRW50cnkgODMxCi0gICAgMHgxLmZmZmZlYjU1NjQzYjlhNjQ4YzI3MjBiZGUxZDIyNzY0cC0xLAotICAgIDB4MS5mNmE3YTBwMQotICB9LAotICB7IC8vIEVudHJ5IDgzMgotICAgIC0weDEuZmZmZmViNTU2NDNiOWE2NDhjMjcyMGJkZTFkMjI3NjRwLTEsCi0gICAgLTB4MS5mNmE3YTBwMQotICB9LAotICB7IC8vIEVudHJ5IDgzMwotICAgIDB4MS5mZmZmZmI1NTYzZDY0NTg1ZTlkY2M5N2Q3NDMyMTQ2MXAtMSwKLSAgICAweDEuZjZhN2EycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzQKLSAgICAtMHgxLmZmZmZmYjU1NjNkNjQ1ODVlOWRjYzk3ZDc0MzIxNDYxcC0xLAotICAgIC0weDEuZjZhN2EycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzUKLSAgICAweDEuMDAwMDA1YWFiMWY4Nzg1Mjc5MjIzNzY1MmQzNGIxY2VwMCwKLSAgICAweDEuZjZhN2E0cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzYKLSAgICAtMHgxLjAwMDAwNWFhYjFmODc4NTI3OTIyMzc2NTJkMzRiMWNlcDAsCi0gICAgLTB4MS5mNmE3YTRwMQotICB9LAotICB7IC8vIEVudHJ5IDgzNwotICAgIDB4MS4wMzNkZDkxYzEwMzU4NjFhZTQ1NWUwZjhkYzI3NGIwZHAyMCwKLSAgICAweDEuMmQ5N2M0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzgKLSAgICAtMHgxLjAzM2RkOTFjMTAzNTg2MWFlNDU1ZTBmOGRjMjc0YjBkcDIwLAotICAgIC0weDEuMmQ5N2M0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4MzkKLSAgICAweDEuMDY5MGZiNDc3NGFiODBjY2RkYzllZjVhZDBmY2MyMzdwMjEsCi0gICAgMHgxLjJkOTdjNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODQwCi0gICAgLTB4MS4wNjkwZmI0Nzc0YWI4MGNjZGRjOWVmNWFkMGZjYzIzN3AyMSwKLSAgICAtMHgxLjJkOTdjNnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODQxCi0gICAgLTB4MS4zZmU0ZGFjMDZkODMwODM3ZjZjNTg0YWY2ZjhkOTM5OXAyNiwKLSAgICAweDEuMmQ5N2M4cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDIKLSAgICAweDEuM2ZlNGRhYzA2ZDgzMDgzN2Y2YzU4NGFmNmY4ZDkzOTlwMjYsCi0gICAgLTB4MS4yZDk3YzhwMgotICB9LAotICB7IC8vIEVudHJ5IDg0MwotICAgIC0weDEuMDAwMDE0ZGRkNDk0NTM5NGNiNmVjN2Y4N2RlYmM3YTVwMCwKLSAgICAweDEuNWZkYmJjcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDQKLSAgICAweDEuMDAwMDE0ZGRkNDk0NTM5NGNiNmVjN2Y4N2RlYmM3YTVwMCwKLSAgICAtMHgxLjVmZGJiY3AyCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ1Ci0gICAgLTB4MS4wMDAwMDRkZGQzYzY3NjRkNzM2OWEwYmU2MWE2MzBlN3AwLAotICAgIDB4MS41ZmRiYmVwMgotICB9LAotICB7IC8vIEVudHJ5IDg0NgotICAgIDB4MS4wMDAwMDRkZGQzYzY3NjRkNzM2OWEwYmU2MWE2MzBlN3AwLAotICAgIC0weDEuNWZkYmJlcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NDcKLSAgICAtMHgxLmZmZmZlOWJiYTdmMTMyMWZhZTE5Mjk0M2EzZTg0OGMwcC0xLAotICAgIDB4MS41ZmRiYzBwMgotICB9LAotICB7IC8vIEVudHJ5IDg0OAotICAgIDB4MS5mZmZmZTliYmE3ZjEzMjFmYWUxOTI5NDNhM2U4NDhjMHAtMSwKLSAgICAtMHgxLjVmZGJjMHAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODQ5Ci0gICAgMHgxLmZmZmZjMTMzNTExZWEyZDNiOTg4YmY4NTMxNmQ0ZTA1cC0xLAotICAgIDB4MS5jNDYzYThwMgotICB9LAotICB7IC8vIEVudHJ5IDg1MAotICAgIC0weDEuZmZmZmMxMzM1MTFlYTJkM2I5ODhiZjg1MzE2ZDRlMDVwLTEsCi0gICAgLTB4MS5jNDYzYThwMgotICB9LAotICB7IC8vIEVudHJ5IDg1MQotICAgIDB4MS5mZmZmZTEzMzRlMzFkN2VmMjBkNjIyMGM2NWRkMmY5YnAtMSwKLSAgICAweDEuYzQ2M2FhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTIKLSAgICAtMHgxLmZmZmZlMTMzNGUzMWQ3ZWYyMGQ2MjIwYzY1ZGQyZjlicC0xLAotICAgIC0weDEuYzQ2M2FhcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTMKLSAgICAweDEuMDAwMDAwOTlhNmEyODY2Njc3NjFjMjg3NGM1ODkwYWVwMCwKLSAgICAweDEuYzQ2M2FjcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTQKLSAgICAtMHgxLjAwMDAwMDk5YTZhMjg2NjY3NzYxYzI4NzRjNTg5MGFlcDAsCi0gICAgLTB4MS5jNDYzYWNwMgotICB9LAotICB7IC8vIEVudHJ5IDg1NQotICAgIDB4MS44YzY0MmU4Y2M1NmE5YjIzMzQ1MGQ2YjYzNWE2MjY2ZHAyMCwKLSAgICAweDEuZjZhN2EwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTYKLSAgICAtMHgxLjhjNjQyZThjYzU2YTliMjMzNDUwZDZiNjM1YTYyNjZkcDIwLAotICAgIC0weDEuZjZhN2EwcDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NTcKLSAgICAweDEuYjZlMGJmYjcyOGU0MjM2M2NkNWZiMjZiMzFjMzY2YzJwMjIsCi0gICAgMHgxLmY2YTdhMnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODU4Ci0gICAgLTB4MS5iNmUwYmZiNzI4ZTQyMzYzY2Q1ZmIyNmIzMWMzNjZjMnAyMiwKLSAgICAtMHgxLmY2YTdhMnAyCi0gIH0sCi0gIHsgLy8gRW50cnkgODU5Ci0gICAgLTB4MS42OTY3OWI5NjZhY2M0M2RmZGIyODM4M2FhOTc2ZjVjMXAyMSwKLSAgICAweDEuZjZhN2E0cDIKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjAKLSAgICAweDEuNjk2NzliOTY2YWNjNDNkZmRiMjgzODNhYTk3NmY1YzFwMjEsCi0gICAgLTB4MS5mNmE3YTRwMgotICB9LAotICB7IC8vIEVudHJ5IDg2MQotICAgIC0weDEuMDAwMDI5ZWVlMjZmZTIxMWJiNGEyZjhlMjNhMGE5ZTlwMCwKLSAgICAweDEuMTQ3NWNhcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjIKLSAgICAweDEuMDAwMDI5ZWVlMjZmZTIxMWJiNGEyZjhlMjNhMGE5ZTlwMCwKLSAgICAtMHgxLjE0NzVjYXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODYzCi0gICAgLTB4MS4wMDAwMDllZWRmMzIwNWQyZTliNjZhMzc4M2UwMmYwNXAwLAotICAgIDB4MS4xNDc1Y2NwMwotICB9LAotICB7IC8vIEVudHJ5IDg2NAotICAgIDB4MS4wMDAwMDllZWRmMzIwNWQyZTliNjZhMzc4M2UwMmYwNXAwLAotICAgIC0weDEuMTQ3NWNjcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NjUKLSAgICAtMHgxLmZmZmZkM2RkYmZlODUzYzcxZTRhNWY3NTAyYjA5YzRlcC0xLAotICAgIDB4MS4xNDc1Y2VwMwotICB9LAotICB7IC8vIEVudHJ5IDg2NgotICAgIDB4MS5mZmZmZDNkZGJmZTg1M2M3MWU0YTVmNzUwMmIwOWM0ZXAtMSwKLSAgICAtMHgxLjE0NzVjZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODY3Ci0gICAgLTB4MS5mOTk5MGU5MWFhMjRmNTUwY2VmNTdmYTQxMDZjNTZlYnAtMjAsCi0gICAgMHgxLjJkOTdjNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODY4Ci0gICAgMHgxLmY5OTkwZTkxYWEyNGY1NTBjZWY1N2ZhNDEwNmM1NmVicC0yMCwKLSAgICAtMHgxLjJkOTdjNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODY5Ci0gICAgLTB4MS5mMzMyMWQyMzRmYzU1N2E2MWM2MzhlZjc3NTJkZTQzZnAtMjEsCi0gICAgMHgxLjJkOTdjNnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODcwCi0gICAgMHgxLmYzMzIxZDIzNGZjNTU3YTYxYzYzOGVmNzc1MmRlNDNmcC0yMSwKLSAgICAtMHgxLjJkOTdjNnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODcxCi0gICAgMHgxLjk5YmM1Yjk2MWIxYWUzNjNjZmMwZmZhYWI0ZjBlNTA1cC0yNiwKLSAgICAweDEuMmQ5N2M4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzIKLSAgICAtMHgxLjk5YmM1Yjk2MWIxYWUzNjNjZmMwZmZhYWI0ZjBlNTA1cC0yNiwKLSAgICAtMHgxLjJkOTdjOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODczCi0gICAgMHgxLmZmZmY5NzExNDE3OTQ0NjEyNzZmMzQyYmQyOWM1YTFmcC0xLAotICAgIDB4MS40NmI5YzBwMwotICB9LAotICB7IC8vIEVudHJ5IDg3NAotICAgIC0weDEuZmZmZjk3MTE0MTc5NDQ2MTI3NmYzNDJiZDI5YzVhMWZwLTEsCi0gICAgLTB4MS40NmI5YzBwMwotICB9LAotICB7IC8vIEVudHJ5IDg3NQotICAgIDB4MS5mZmZmZDcxMTM4NWI2YzlhMDEzZGFiZTliNzI1NDY2NXAtMSwKLSAgICAweDEuNDZiOWMycDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzYKLSAgICAtMHgxLmZmZmZkNzExMzg1YjZjOWEwMTNkYWJlOWI3MjU0NjY1cC0xLAotICAgIC0weDEuNDZiOWMycDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzcKLSAgICAweDEuMDAwMDBiODg5YjllYzljNWIyNzdmYjZhOTFjZjVmNDlwMCwKLSAgICAweDEuNDZiOWM0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4NzgKLSAgICAtMHgxLjAwMDAwYjg4OWI5ZWM5YzViMjc3ZmI2YTkxY2Y1ZjQ5cDAsCi0gICAgLTB4MS40NmI5YzRwMwotICB9LAotICB7IC8vIEVudHJ5IDg3OQotICAgIDB4MS44ODk3M2NiMDJhMGVlYTJjZmUxYTI4MWNhN2YwNDY2M3AxOSwKLSAgICAweDEuNWZkYmJjcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODAKLSAgICAtMHgxLjg4OTczY2IwMmEwZWVhMmNmZTFhMjgxY2E3ZjA0NjYzcDE5LAotICAgIC0weDEuNWZkYmJjcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODEKLSAgICAweDEuYTRkNWQ1ZDc1Mzg0MWM4OWNmZTcxYzI1YWJjOGQ2NDVwMjEsCi0gICAgMHgxLjVmZGJiZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODgyCi0gICAgLTB4MS5hNGQ1ZDVkNzUzODQxYzg5Y2ZlNzFjMjVhYmM4ZDY0NXAyMSwKLSAgICAtMHgxLjVmZGJiZXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODgzCi0gICAgLTB4MS42ZmU2MmExYTlhMTJiNzBiMWZiYjk1MjgwMWY5OTgwMXAyMCwKLSAgICAweDEuNWZkYmMwcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODQKLSAgICAweDEuNmZlNjJhMWE5YTEyYjcwYjFmYmI5NTI4MDFmOTk4MDFwMjAsCi0gICAgLTB4MS41ZmRiYzBwMwotICB9LAotICB7IC8vIEVudHJ5IDg4NQotICAgIC0weDEuMDAwMDNlZmZmMjA3M2UxYzBkZDY1ZDNiODNlNWU1ODlwMCwKLSAgICAweDEuNzhmZGI2cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODYKLSAgICAweDEuMDAwMDNlZmZmMjA3M2UxYzBkZDY1ZDNiODNlNWU1ODlwMCwKLSAgICAtMHgxLjc4ZmRiNnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODg3Ci0gICAgLTB4MS4wMDAwMWVmZmVjMjczZmI0NmJiNWVjZmVjNTNjMzEwNXAwLAotICAgIDB4MS43OGZkYjhwMwotICB9LAotICB7IC8vIEVudHJ5IDg4OAotICAgIDB4MS4wMDAwMWVmZmVjMjczZmI0NmJiNWVjZmVjNTNjMzEwNXAwLAotICAgIC0weDEuNzhmZGI4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4ODkKLSAgICAtMHgxLmZmZmZmZGZmZDQ4ZTg0ODk5MjI3Y2VhMWY3N2ExY2Y3cC0xLAotICAgIDB4MS43OGZkYmFwMwotICB9LAotICB7IC8vIEVudHJ5IDg5MAotICAgIDB4MS5mZmZmZmRmZmQ0OGU4NDg5OTIyN2NlYTFmNzdhMWNmN3AtMSwKLSAgICAtMHgxLjc4ZmRiYXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgODkxCi0gICAgMHgxLmZmZmZhY2VmMjZlOTY1ZDEyNTM0MjRmYmJjOWZmMzU0cC0xLAotICAgIDB4MS5hYjQxYWVwMwotICB9LAotICB7IC8vIEVudHJ5IDg5MgotICAgIC0weDEuZmZmZmFjZWYyNmU5NjVkMTI1MzQyNGZiYmM5ZmYzNTRwLTEsCi0gICAgLTB4MS5hYjQxYWVwMwotICB9LAotICB7IC8vIEVudHJ5IDg5MwotICAgIDB4MS5mZmZmZWNlZjIwODc0YThmMDM1YWM0ZGMxYTYwMjlmOHAtMSwKLSAgICAweDEuYWI0MWIwcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTQKLSAgICAtMHgxLmZmZmZlY2VmMjA4NzRhOGYwMzVhYzRkYzFhNjAyOWY4cC0xLAotICAgIC0weDEuYWI0MWIwcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTUKLSAgICAweDEuMDAwMDE2Nzc5MTEyOTc1YTJkNGI5Yjc1YmQ5MGIzYzFwMCwKLSAgICAweDEuYWI0MWIycDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTYKLSAgICAtMHgxLjAwMDAxNjc3OTExMjk3NWEyZDRiOWI3NWJkOTBiM2MxcDAsCi0gICAgLTB4MS5hYjQxYjJwMwotICB9LAotICB7IC8vIEVudHJ5IDg5NwotICAgIDB4MS4wNGU0YjQwYWNkZjk0MzlmZWNjZDQ5YmJlYjM3ZGEwZnAxOSwKLSAgICAweDEuYzQ2M2E4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTgKLSAgICAtMHgxLjA0ZTRiNDBhY2RmOTQzOWZlY2NkNDliYmViMzdkYTBmcDE5LAotICAgIC0weDEuYzQ2M2E4cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA4OTkKLSAgICAweDEuMDlmYTNhZTFmNDkxM2QxYjM3NjRmZjlhOTY3OGVmNjhwMjAsCi0gICAgMHgxLmM0NjNhYXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTAwCi0gICAgLTB4MS4wOWZhM2FlMWY0OTEzZDFiMzc2NGZmOWE5Njc4ZWY2OHAyMCwKLSAgICAtMHgxLmM0NjNhYXAzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTAxCi0gICAgLTB4MS5hYTg2NzkwMDkyMDNkZDZlOTQyZjkxNzUyNzVhNzQ2MXAyNCwKLSAgICAweDEuYzQ2M2FjcDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDIKLSAgICAweDEuYWE4Njc5MDA5MjAzZGQ2ZTk0MmY5MTc1Mjc1YTc0NjFwMjQsCi0gICAgLTB4MS5jNDYzYWNwMwotICB9LAotICB7IC8vIEVudHJ5IDkwMwotICAgIC0weDEuMDAwMDM0MTBmYWQ4NDZmZDY3ZDM1ZTBjMGQ5ODM2MjhwMCwKLSAgICAweDEuZGQ4NWE0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDQKLSAgICAweDEuMDAwMDM0MTBmYWQ4NDZmZDY3ZDM1ZTBjMGQ5ODM2MjhwMCwKLSAgICAtMHgxLmRkODVhNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA1Ci0gICAgLTB4MS4wMDAwMTQxMGY2NTYyNzllODlkMTRjZjQwNTRmNmM1NnAwLAotICAgIDB4MS5kZDg1YTZwMwotICB9LAotICB7IC8vIEVudHJ5IDkwNgotICAgIDB4MS4wMDAwMTQxMGY2NTYyNzllODlkMTRjZjQwNTRmNmM1NnAwLAotICAgIC0weDEuZGQ4NWE2cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MDcKLSAgICAtMHgxLmZmZmZlODIxZWJhODExYzA2NzI0MGY2NjZjOTA0MzcxcC0xLAotICAgIDB4MS5kZDg1YThwMwotICB9LAotICB7IC8vIEVudHJ5IDkwOAotICAgIDB4MS5mZmZmZTgyMWViYTgxMWMwNjcyNDBmNjY2YzkwNDM3MXAtMSwKLSAgICAtMHgxLmRkODVhOHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTA5Ci0gICAgLTB4MS40YWE5YzJmMmMyYWRkYjliNTllMzk0MDEyMzk3NjFlMnAtMjAsCi0gICAgMHgxLmY2YTdhMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEwCi0gICAgMHgxLjRhYTljMmYyYzJhZGRiOWI1OWUzOTQwMTIzOTc2MWUycC0yMCwKLSAgICAtMHgxLmY2YTdhMHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTExCi0gICAgLTB4MS4yYWE3MGJjYjA3ZTA1N2I3MjllYWNiYzBjZjE3Y2JiZnAtMjIsCi0gICAgMHgxLmY2YTdhMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEyCi0gICAgMHgxLjJhYTcwYmNiMDdlMDU3YjcyOWVhY2JjMGNmMTdjYmJmcC0yMiwKLSAgICAtMHgxLmY2YTdhMnAzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTEzCi0gICAgMHgxLjZhYWM3YTFhN2M1MGI4NzNiZWQzOWI2ODU5YmYyOTM0cC0yMSwKLSAgICAweDEuZjZhN2E0cDMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTQKLSAgICAtMHgxLjZhYWM3YTFhN2M1MGI4NzNiZWQzOWI2ODU5YmYyOTM0cC0yMSwKLSAgICAtMHgxLmY2YTdhNHAzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTE1Ci0gICAgMHgxLmZmZmY0MmNkMmM5NTUwOGU3MDBhYjc2OTU2ZGQwNGNmcC0xLAotICAgIDB4MS4wN2U0Y2NwNAotICB9LAotICB7IC8vIEVudHJ5IDkxNgotICAgIC0weDEuZmZmZjQyY2QyYzk1NTA4ZTcwMGFiNzY5NTZkZDA0Y2ZwLTEsCi0gICAgLTB4MS4wN2U0Y2NwNAotICB9LAotICB7IC8vIEVudHJ5IDkxNwotICAgIDB4MS5mZmZmYzJjZDBkNDg5YjQ4ODQ0MTc5YzU5NDM1NmUwZHAtMSwKLSAgICAweDEuMDdlNGNlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTgKLSAgICAtMHgxLmZmZmZjMmNkMGQ0ODliNDg4NDQxNzljNTk0MzU2ZTBkcC0xLAotICAgIC0weDEuMDdlNGNlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MTkKLSAgICAweDEuMDAwMDIxNjY4NmZkZWYyZTFkZDMxYTJlYWE2YTFjZDRwMCwKLSAgICAweDEuMDdlNGQwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjAKLSAgICAtMHgxLjAwMDAyMTY2ODZmZGVmMmUxZGQzMWEyZWFhNmExY2Q0cDAsCi0gICAgLTB4MS4wN2U0ZDBwNAotICB9LAotICB7IC8vIEVudHJ5IDkyMQotICAgIDB4MS44NmI3YmE0OTIzYmNmMTU3ZGNjMzMyOTE4NzFlODhkNHAxOCwKLSAgICAweDEuMTQ3NWNhcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjIKLSAgICAtMHgxLjg2YjdiYTQ5MjNiY2YxNTdkY2MzMzI5MTg3MWU4OGQ0cDE4LAotICAgIC0weDEuMTQ3NWNhcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjMKLSAgICAweDEuOWM1YmVjZjI4NzNlZWQzNjlhZmRjMzE1OWE3Zjc5N2NwMjAsCi0gICAgMHgxLjE0NzVjY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTI0Ci0gICAgLTB4MS45YzViZWNmMjg3M2VlZDM2OWFmZGMzMTU5YTdmNzk3Y3AyMCwKLSAgICAtMHgxLjE0NzVjY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTI1Ci0gICAgLTB4MS43MzNjMGQ4NDMzMmZhNjA2ZDFiZDIwN2E0OTFlNDM3MXAxOSwKLSAgICAweDEuMTQ3NWNlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjYKLSAgICAweDEuNzMzYzBkODQzMzJmYTYwNmQxYmQyMDdhNDkxZTQzNzFwMTksCi0gICAgLTB4MS4xNDc1Y2VwNAotICB9LAotICB7IC8vIEVudHJ5IDkyNwotICAgIC0weDEuMDAwMDQ5MjIwYjQ1MWJmNmU4ZTYwNTU1MGM4ODYwMmZwMCwKLSAgICAweDEuMjEwNmM4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MjgKLSAgICAweDEuMDAwMDQ5MjIwYjQ1MWJmNmU4ZTYwNTU1MGM4ODYwMmZwMCwKLSAgICAtMHgxLjIxMDZjOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTI5Ci0gICAgLTB4MS4wMDAwMDkyMjAwZmM5OWM1ZGZhNGZlMTgwODVjZjdjZHAwLAotICAgIDB4MS4yMTA2Y2FwNAotICB9LAotICB7IC8vIEVudHJ5IDkzMAotICAgIDB4MS4wMDAwMDkyMjAwZmM5OWM1ZGZhNGZlMTgwODVjZjdjZHAwLAotICAgIC0weDEuMjEwNmNhcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzEKLSAgICAtMHgxLmZmZmY5MjQ0MGQ2ODMxNzIyZGVjMGQzMTgxMGQ4ZmM3cC0xLAotICAgIDB4MS4yMTA2Y2NwNAotICB9LAotICB7IC8vIEVudHJ5IDkzMgotICAgIDB4MS5mZmZmOTI0NDBkNjgzMTcyMmRlYzBkMzE4MTBkOGZjN3AtMSwKLSAgICAtMHgxLjIxMDZjY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTMzCi0gICAgLTB4MS5mOTk5MGU5MWIxZDkxNmU1ODIyNDIzNDcxMTJiYTFkNnAtMTksCi0gICAgMHgxLjJkOTdjNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTM0Ci0gICAgMHgxLmY5OTkwZTkxYjFkOTE2ZTU4MjI0MjM0NzExMmJhMWQ2cC0xOSwKLSAgICAtMHgxLjJkOTdjNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTM1Ci0gICAgLTB4MS5mMzMyMWQyMzUxOWZlMWRjZmRjZDJmMWY3NjIwMDhhNHAtMjAsCi0gICAgMHgxLjJkOTdjNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTM2Ci0gICAgMHgxLmYzMzIxZDIzNTE5ZmUxZGNmZGNkMmYxZjc2MjAwOGE0cC0yMCwKLSAgICAtMHgxLjJkOTdjNnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTM3Ci0gICAgMHgxLjk5YmM1Yjk2MWIxYjI0ZmRiNzdmY2VlMDhiYTJmNzIwcC0yNSwKLSAgICAweDEuMmQ5N2M4cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5MzgKLSAgICAtMHgxLjk5YmM1Yjk2MWIxYjI0ZmRiNzdmY2VlMDhiYTJmNzIwcC0yNSwKLSAgICAtMHgxLjJkOTdjOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTM5Ci0gICAgMHgxLmZmZmYxOGFiMjc1NmJhMGEyMGFhZjQzOTJiMGE4MDE5cC0xLAotICAgIDB4MS4zYTI4YzJwNAotICB9LAotICB7IC8vIEVudHJ5IDk0MAotICAgIC0weDEuZmZmZjE4YWIyNzU2YmEwYTIwYWFmNDM5MmIwYTgwMTlwLTEsCi0gICAgLTB4MS4zYTI4YzJwNAotICB9LAotICB7IC8vIEVudHJ5IDk0MQotICAgIDB4MS5mZmZmOThhYWZkODE4NTI1ZDI0ZDY2NGVmOTYyZWYxNHAtMSwKLSAgICAweDEuM2EyOGM0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDIKLSAgICAtMHgxLmZmZmY5OGFhZmQ4MTg1MjVkMjRkNjY0ZWY5NjJlZjE0cC0xLAotICAgIC0weDEuM2EyOGM0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDMKLSAgICAweDEuMDAwMDBjNTU3OWQ2MjFhYjczMzRlZmYzMWQyM2NmMmNwMCwKLSAgICAweDEuM2EyOGM2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDQKLSAgICAtMHgxLjAwMDAwYzU1NzlkNjIxYWI3MzM0ZWZmMzFkMjNjZjJjcDAsCi0gICAgLTB4MS4zYTI4YzZwNAotICB9LAotICB7IC8vIEVudHJ5IDk0NQotICAgIDB4MS4zODQ2YjMxMGRlN2M3OTZhZGIzZWEyZWEyMmIxMDhlMnAxOCwKLSAgICAweDEuNDZiOWMwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDYKLSAgICAtMHgxLjM4NDZiMzEwZGU3Yzc5NmFkYjNlYTJlYTIyYjEwOGUycDE4LAotICAgIC0weDEuNDZiOWMwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NDcKLSAgICAweDEuOTA0NDI1ZmM5MmVhYjBhYmZlOTZhZWViNmZmYjJkYzhwMTksCi0gICAgMHgxLjQ2YjljMnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQ4Ci0gICAgLTB4MS45MDQ0MjVmYzkyZWFiMGFiZmU5NmFlZWI2ZmZiMmRjOHAxOSwKLSAgICAtMHgxLjQ2YjljMnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTQ5Ci0gICAgLTB4MS42MzIyYmFjYjIyZGU2YWYwMDIyOGQyZWE0ZDZkMjc5OXAyMCwKLSAgICAweDEuNDZiOWM0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NTAKLSAgICAweDEuNjMyMmJhY2IyMmRlNmFmMDAyMjhkMmVhNGQ2ZDI3OTlwMjAsCi0gICAgLTB4MS40NmI5YzRwNAotICB9LAotICB7IC8vIEVudHJ5IDk1MQotICAgIC0weDEuMDAwMDVlMzMxZDZkYmVlOWY5ZDQzMWI0OWVhN2I3MjNwMCwKLSAgICAweDEuNTM0YWJlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NTIKLSAgICAweDEuMDAwMDVlMzMxZDZkYmVlOWY5ZDQzMWI0OWVhN2I3MjNwMCwKLSAgICAtMHgxLjUzNGFiZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTUzCi0gICAgLTB4MS4wMDAwMWUzMzBkZTBmN2M3MzRiYzU3YTRjNjY1MDMyN3AwLAotICAgIDB4MS41MzRhYzBwNAotICB9LAotICB7IC8vIEVudHJ5IDk1NAotICAgIDB4MS4wMDAwMWUzMzBkZTBmN2M3MzRiYzU3YTRjNjY1MDMyN3AwLAotICAgIC0weDEuNTM0YWMwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NTUKLSAgICAtMHgxLmZmZmZiYzY2MWNhODY4ZDVhNDQxOGYwZDFjZDdjMjJmcC0xLAotICAgIDB4MS41MzRhYzJwNAotICB9LAotICB7IC8vIEVudHJ5IDk1NgotICAgIDB4MS5mZmZmYmM2NjFjYTg2OGQ1YTQ0MThmMGQxY2Q3YzIyZnAtMSwKLSAgICAtMHgxLjUzNGFjMnA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTU3Ci0gICAgLTB4MS40ZGRkM2JhOWYxMjE0ZGViNDA2NzIzOTdkNmYxOTFiY3AtMTksCi0gICAgMHgxLjVmZGJiY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTU4Ci0gICAgMHgxLjRkZGQzYmE5ZjEyMTRkZWI0MDY3MjM5N2Q2ZjE5MWJjcC0xOSwKLSAgICAtMHgxLjVmZGJiY3A0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTU5Ci0gICAgLTB4MS4zNzc0ZWVhN2I4ZDcyMTRiYzg5YjExNTMyZjgyZDMyM3AtMjEsCi0gICAgMHgxLjVmZGJiZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTYwCi0gICAgMHgxLjM3NzRlZWE3YjhkNzIxNGJjODliMTE1MzJmODJkMzIzcC0yMSwKLSAgICAtMHgxLjVmZGJiZXA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTYxCi0gICAgMHgxLjY0NDU4OGFjMjQ4ZGE2ZDAxOTQxMTIxZjUwNjczYjNmcC0yMCwKLSAgICAweDEuNWZkYmMwcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjIKLSAgICAtMHgxLjY0NDU4OGFjMjQ4ZGE2ZDAxOTQxMTIxZjUwNjczYjNmcC0yMCwKLSAgICAtMHgxLjVmZGJjMHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTYzCi0gICAgMHgxLmZmZmY2ZTg4ZjEzMjA3OTRkODQ1ZThlMGZlMWZkOGJkcC0xLAotICAgIDB4MS42YzZjYmFwNAotICB9LAotICB7IC8vIEVudHJ5IDk2NAotICAgIC0weDEuZmZmZjZlODhmMTMyMDc5NGQ4NDVlOGUwZmUxZmQ4YmRwLTEsCi0gICAgLTB4MS42YzZjYmFwNAotICB9LAotICB7IC8vIEVudHJ5IDk2NQotICAgIDB4MS5mZmZmZWU4OGRjZDQ0MjlmMTVjMGU0YTk1YjliYTBlNnAtMSwKLSAgICAweDEuNmM2Y2JjcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjYKLSAgICAtMHgxLmZmZmZlZTg4ZGNkNDQyOWYxNWMwZTRhOTViOWJhMGU2cC0xLAotICAgIC0weDEuNmM2Y2JjcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjcKLSAgICAweDEuMDAwMDM3NDQ3NDNiM2RiZDM3ZGQwNTNlNzAyYmQ3NTRwMCwKLSAgICAweDEuNmM2Y2JlcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NjgKLSAgICAtMHgxLjAwMDAzNzQ0NzQzYjNkYmQzN2RkMDUzZTcwMmJkNzU0cDAsCi0gICAgLTB4MS42YzZjYmVwNAotICB9LAotICB7IC8vIEVudHJ5IDk2OQotICAgIDB4MS4wNDEwOWFiMGVjNzhmODI3ZWU5NWNlYTc0NmIzOGMyMHAxOCwKLSAgICAweDEuNzhmZGI2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzAKLSAgICAtMHgxLjA0MTA5YWIwZWM3OGY4MjdlZTk1Y2VhNzQ2YjM4YzIwcDE4LAotICAgIC0weDEuNzhmZGI2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzEKLSAgICAweDEuMDg0MmM5YjMyZDIxMjVkYmY1YzIwZDcwYzQ2YjE3YTVwMTksCi0gICAgMHgxLjc4ZmRiOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTcyCi0gICAgLTB4MS4wODQyYzliMzJkMjEyNWRiZjVjMjBkNzBjNDZiMTdhNXAxOSwKLSAgICAtMHgxLjc4ZmRiOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTczCi0gICAgLTB4MS5mZmQ0OTEzM2UyNmE5Yzc0OTk2NjYzMGRlZTgxM2RkZXAyMywKLSAgICAweDEuNzhmZGJhcDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzQKLSAgICAweDEuZmZkNDkxMzNlMjZhOWM3NDk5NjY2MzBkZWU4MTNkZGVwMjMsCi0gICAgLTB4MS43OGZkYmFwNAotICB9LAotICB7IC8vIEVudHJ5IDk3NQotICAgIC0weDEuMDAwMDczNDQzMTUyMzAxZmE1OTMzOGVlYzI5YzM3NzhwMCwKLSAgICAweDEuODU4ZWI0cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzYKLSAgICAweDEuMDAwMDczNDQzMTUyMzAxZmE1OTMzOGVlYzI5YzM3NzhwMCwKLSAgICAtMHgxLjg1OGViNHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTc3Ci0gICAgLTB4MS4wMDAwMzM0NDFjODEyMzJkM2Q5ZmMzNGJlYTgxZmI3Y3AwLAotICAgIDB4MS44NThlYjZwNAotICB9LAotICB7IC8vIEVudHJ5IDk3OAotICAgIDB4MS4wMDAwMzM0NDFjODEyMzJkM2Q5ZmMzNGJlYTgxZmI3Y3AwLAotICAgIC0weDEuODU4ZWI2cDQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5NzkKLSAgICAtMHgxLmZmZmZlNjg4MmY2MDM5NDZiNTNiMDQyMzYxYWVjODJjcC0xLAotICAgIDB4MS44NThlYjhwNAotICB9LAotICB7IC8vIEVudHJ5IDk4MAotICAgIDB4MS5mZmZmZTY4ODJmNjAzOTQ2YjUzYjA0MjM2MWFlYzgyY3AtMSwKLSAgICAtMHgxLjg1OGViOHA0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTgxCi0gICAgLTB4MS5jYjZjZDRjYjgyYTkxZGZjNGFmOWE0OTlhNTc1ZTRhNHAtMywKLSAgICAweDEuZmZmZmZlcDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTgyCi0gICAgMHgxLmNiNmNkNGNiODJhOTFkZmM0YWY5YTQ5OWE1NzVlNGE0cC0zLAotICAgIC0weDEuZmZmZmZlcDYyCi0gIH0sCi0gIHsgLy8gRW50cnkgOTgzCi0gICAgMHgxLjUyZjUwZTc1Nzk0MWNiZmY1YjdjMmUwNmExYWI3ZTlkcDYsCi0gICAgMHgxLnA2MwotICB9LAotICB7IC8vIEVudHJ5IDk4NAotICAgIC0weDEuNTJmNTBlNzU3OTQxY2JmZjViN2MyZTA2YTFhYjdlOWRwNiwKLSAgICAtMHgxLnA2MwotICB9LAotICB7IC8vIEVudHJ5IDk4NQotICAgIC0weDEuMjljYmQxMjgyMWIzOTljOWVlNGYyNjVkYTUxODgxYThwMSwKLSAgICAweDEuMDAwMDAycDYzCi0gIH0sCi0gIHsgLy8gRW50cnkgOTg2Ci0gICAgMHgxLjI5Y2JkMTI4MjFiMzk5YzllZTRmMjY1ZGE1MTg4MWE4cDEsCi0gICAgLTB4MS4wMDAwMDJwNjMKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODcKLSAgICAweDEuM2U0ZDkxNDhkNzA4NjcyN2RhOTQ0ZTFjMDUyYjY4YWZwLTEsCi0gICAgMHgxLmZmZmZmZXAyNgotICB9LAotICB7IC8vIEVudHJ5IDk4OAotICAgIC0weDEuM2U0ZDkxNDhkNzA4NjcyN2RhOTQ0ZTFjMDUyYjY4YWZwLTEsCi0gICAgLTB4MS5mZmZmZmVwMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSA5ODkKLSAgICAtMHgxLjJlOGZjMWFmODFkOGJhYTg4OTlhMzMyNTIwMGMwZGNicDAsCi0gICAgMHgxLnAyNwotICB9LAotICB7IC8vIEVudHJ5IDk5MAotICAgIDB4MS4yZThmYzFhZjgxZDhiYWE4ODk5YTMzMjUyMDBjMGRjYnAwLAotICAgIC0weDEucDI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTkxCi0gICAgLTB4MS40Y2U5NzQ4ZTUyNGY3N2FkODU3MzVjN2Y3ZDY2OGNmMXAtMSwKLSAgICAweDEuMDAwMDAycDI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTkyCi0gICAgMHgxLjRjZTk3NDhlNTI0Zjc3YWQ4NTczNWM3ZjdkNjY4Y2YxcC0xLAotICAgIC0weDEuMDAwMDAycDI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTkzCi0gICAgMHgxLjdlMzAwNWQ1N2VkOTNhZTQ1YjFiZWEzZTM2MTViYjY3cDEsCi0gICAgMHgxLmZmZmZmZXAyMwotICB9LAotICB7IC8vIEVudHJ5IDk5NAotICAgIC0weDEuN2UzMDA1ZDU3ZWQ5M2FlNDViMWJlYTNlMzYxNWJiNjdwMSwKLSAgICAtMHgxLmZmZmZmZXAyMwotICB9LAotICB7IC8vIEVudHJ5IDk5NQotICAgIC0weDEuM2VhMjgyNzFhOWJlYTM2ZTc0NGY5Y2U1MzdiYTRiNTlwMCwKLSAgICAweDEucDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTk2Ci0gICAgMHgxLjNlYTI4MjcxYTliZWEzNmU3NDRmOWNlNTM3YmE0YjU5cDAsCi0gICAgLTB4MS5wMjQKLSAgfSwKLSAgeyAvLyBFbnRyeSA5OTcKLSAgICAweDEuZmU5MjliNDI4MjEwNWExNjBhOWJlMjczMWRmMjBhNmNwMCwKLSAgICAweDEuMDAwMDAycDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTk4Ci0gICAgLTB4MS5mZTkyOWI0MjgyMTA1YTE2MGE5YmUyNzMxZGYyMGE2Y3AwLAotICAgIC0weDEuMDAwMDAycDI0Ci0gIH0sCi0gIHsgLy8gRW50cnkgOTk5Ci0gICAgMHgxLjI4NjZmMDYxOTRlMGMyYzdlZTIyZWU5ZjhmOWRjYWVlcDAsCi0gICAgMHgxLmZmZmZmZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwMAotICAgIC0weDEuMjg2NmYwNjE5NGUwYzJjN2VlMjJlZTlmOGY5ZGNhZWVwMCwKLSAgICAtMHgxLmZmZmZmZXAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwMQotICAgIDB4MS4yODY2ZjliZTRkZTEzNzBkYjkwNzg2MDcwMTJjYjA3YnAwLAotICAgIDB4MS5wMgotICB9LAotICB7IC8vIEVudHJ5IDEwMDIKLSAgICAtMHgxLjI4NjZmOWJlNGRlMTM3MGRiOTA3ODYwNzAxMmNiMDdicDAsCi0gICAgLTB4MS5wMgotICB9LAotICB7IC8vIEVudHJ5IDEwMDMKLSAgICAweDEuMjg2NzBjNzdjMGU2NDcxMzhkNGZjNzE4MWVmOWI2MWZwMCwKLSAgICAweDEuMDAwMDAycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDA0Ci0gICAgLTB4MS4yODY3MGM3N2MwZTY0NzEzOGQ0ZmM3MTgxZWY5YjYxZnAwLAotICAgIC0weDEuMDAwMDAycDIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDA1Ci0gICAgLTB4MS4xN2FmNjhhNmQ0MmY3NzJiZDI0OWY1ZDY5MmFmYTRlN3AxLAotICAgIDB4MS5mZmZmZmVwMAotICB9LAotICB7IC8vIEVudHJ5IDEwMDYKLSAgICAweDEuMTdhZjY4YTZkNDJmNzcyYmQyNDlmNWQ2OTJhZmE0ZTdwMSwKLSAgICAtMHgxLmZmZmZmZXAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAwNwotICAgIC0weDEuMTdhZjYyZTA5NTBmODNiNTA5OTA4N2FhZjY3YWY5YzFwMSwKLSAgICAweDEucDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDA4Ci0gICAgMHgxLjE3YWY2MmUwOTUwZjgzYjUwOTkwODdhYWY2N2FmOWMxcDEsCi0gICAgLTB4MS5wMQotICB9LAotICB7IC8vIEVudHJ5IDEwMDkKLSAgICAtMHgxLjE3YWY1NzU0MTc2NzA1MTczY2VjODlkMDEzODFmNTUzcDEsCi0gICAgMHgxLjAwMDAwMnAxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxMAotICAgIDB4MS4xN2FmNTc1NDE3NjcwNTE3M2NlYzg5ZDAxMzgxZjU1M3AxLAotICAgIC0weDEuMDAwMDAycDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDExCi0gICAgMHgxLjhlYjI0MjVlZmY3Mjg2MGQ1NmQ2MTA1NmRiNTRlZjY3cDAsCi0gICAgMHgxLmZmZmZmZXAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwMTIKLSAgICAtMHgxLjhlYjI0MjVlZmY3Mjg2MGQ1NmQ2MTA1NmRiNTRlZjY3cDAsCi0gICAgLTB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDEzCi0gICAgMHgxLjhlYjI0NWNiZWUzYTViOGFjYzdkNDEzMjMxNDBiM2I1cDAsCi0gICAgMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxNAotICAgIC0weDEuOGViMjQ1Y2JlZTNhNWI4YWNjN2Q0MTMyMzE0MGIzYjVwMCwKLSAgICAtMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxNQotICAgIDB4MS44ZWIyNGNhNWNiZWEwOGY5OTEyMDZhM2VhZjkzYWI5OHAwLAotICAgIDB4MS4wMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDEwMTYKLSAgICAtMHgxLjhlYjI0Y2E1Y2JlYTA4Zjk5MTIwNmEzZWFmOTNhYjk4cDAsCi0gICAgLTB4MS4wMDAwMDJwMAotICB9LAotICB7IC8vIEVudHJ5IDEwMTcKLSAgICAweDEuMTdiNGY0NzJjZDc5MWFhYmZlNGVhOTFhZmI1ZTc5ZTdwLTEsCi0gICAgMHgxLmZmZmZmZXAtMgotICB9LAotICB7IC8vIEVudHJ5IDEwMTgKLSAgICAtMHgxLjE3YjRmNDcyY2Q3OTFhYWJmZTRlYTkxYWZiNWU3OWU3cC0xLAotICAgIC0weDEuZmZmZmZlcC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAxOQotICAgIDB4MS4xN2I0ZjViZjM0NzRhNDMxNzk2NDgwNzg4MjQ0NGNjOHAtMSwKLSAgICAweDEucC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyMAotICAgIC0weDEuMTdiNGY1YmYzNDc0YTQzMTc5NjQ4MDc4ODI0NDRjYzhwLTEsCi0gICAgLTB4MS5wLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIxCi0gICAgMHgxLjE3YjRmODU4MDI2ZGQ4MDMzZWQzZDhkNmQ1MzUwY2E5cC0xLAotICAgIDB4MS4wMDAwMDJwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDIyCi0gICAgLTB4MS4xN2I0Zjg1ODAyNmRkODAzM2VkM2Q4ZDZkNTM1MGNhOXAtMSwKLSAgICAtMHgxLjAwMDAwMnAtMQotICB9LAotICB7IC8vIEVudHJ5IDEwMjMKLSAgICAweDEuMDU3ODU5MzMxM2RiNjU5Y2YzYWI4OGEyMzUyMTg0NTZwLTIsCi0gICAgMHgxLmZmZmZmZXAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwMjQKLSAgICAtMHgxLjA1Nzg1OTMzMTNkYjY1OWNmM2FiODhhMjM1MjE4NDU2cC0yLAotICAgIC0weDEuZmZmZmZlcC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyNQotICAgIDB4MS4wNTc4NWE0M2M0YzU1ZTYzOTQwMTg4OTY1YzI4YmQwZnAtMiwKLSAgICAweDEucC0yCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAyNgotICAgIC0weDEuMDU3ODVhNDNjNGM1NWU2Mzk0MDE4ODk2NWMyOGJkMGZwLTIsCi0gICAgLTB4MS5wLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDI3Ci0gICAgMHgxLjA1Nzg1YzY1MjY5OWI4NjI4Yjc4NzZiN2JkODNjMGNjcC0yLAotICAgIDB4MS4wMDAwMDJwLTIKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDI4Ci0gICAgLTB4MS4wNTc4NWM2NTI2OTliODYyOGI3ODc2YjdiZDgzYzBjY3AtMiwKLSAgICAtMHgxLjAwMDAwMnAtMgotICB9LAotICB7IC8vIEVudHJ5IDEwMjkKLSAgICAweDEuMDE1Nzc5ZWQ0NjU3NDcyNGI5MDI1YTQ0NzJhMWFlMGFwLTMsCi0gICAgMHgxLmZmZmZmZXAtNAotICB9LAotICB7IC8vIEVudHJ5IDEwMzAKLSAgICAtMHgxLjAxNTc3OWVkNDY1NzQ3MjRiOTAyNWE0NDcyYTFhZTBhcC0zLAotICAgIC0weDEuZmZmZmZlcC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAzMQotICAgIDB4MS4wMTU3N2FmMTUxMWE0ZTA0NTlmNWI4NzJkNGZmMzRmZHAtMywKLSAgICAweDEucC0zCi0gIH0sCi0gIHsgLy8gRW50cnkgMTAzMgotICAgIC0weDEuMDE1NzdhZjE1MTFhNGUwNDU5ZjViODcyZDRmZjM0ZmRwLTMsCi0gICAgLTB4MS5wLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDMzCi0gICAgMHgxLjAxNTc3Y2Y5NjZhMDc0NDU1M2RkNDRhOTk0ZjBiYmQxcC0zLAotICAgIDB4MS4wMDAwMDJwLTMKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM0Ci0gICAgLTB4MS4wMTU3N2NmOTY2YTA3NDQ1NTNkZDQ0YTk5NGYwYmJkMXAtMywKLSAgICAtMHgxLjAwMDAwMnAtMwotICB9LAotICB7IC8vIEVudHJ5IDEwMzUKLSAgICAweDEuMDA1NTc2ODQ0ZDQ0ZmRhMGI4MDM0OGJiMTc0OThhYTFwLTQsCi0gICAgMHgxLmZmZmZmZXAtNQotICB9LAotICB7IC8vIEVudHJ5IDEwMzYKLSAgICAtMHgxLjAwNTU3Njg0NGQ0NGZkYTBiODAzNDhiYjE3NDk4YWExcC00LAotICAgIC0weDEuZmZmZmZlcC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAzNwotICAgIDB4MS4wMDU1Nzc4NTRkZjAwODMyOTNiZTYzOTA1N2IwYzY4MXAtNCwKLSAgICAweDEucC00Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTAzOAotICAgIC0weDEuMDA1NTc3ODU0ZGYwMDgzMjkzYmU2MzkwNTdiMGM2ODFwLTQsCi0gICAgLTB4MS5wLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDM5Ci0gICAgMHgxLjAwNTU3OTg3NGY0NjIzNWU1MjA4MmE0ZDBkZGZjNmUxcC00LAotICAgIDB4MS4wMDAwMDJwLTQKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQwCi0gICAgLTB4MS4wMDU1Nzk4NzRmNDYyMzVlNTIwODJhNGQwZGRmYzZlMXAtNCwKLSAgICAtMHgxLjAwMDAwMnAtNAotICB9LAotICB7IC8vIEVudHJ5IDEwNDEKLSAgICAweDEuMDAxNTU2Nzc2ZWI1ZDk4ZjgyZTFiNWVhYjI4YzZiNWZwLTUsCi0gICAgMHgxLmZmZmZmZXAtNgotICB9LAotICB7IC8vIEVudHJ5IDEwNDIKLSAgICAtMHgxLjAwMTU1Njc3NmViNWQ5OGY4MmUxYjVlYWIyOGM2YjVmcC01LAotICAgIC0weDEuZmZmZmZlcC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0MwotICAgIDB4MS4wMDE1NTc3N2FlYzA4NTdkMjJjOTdlODA5ODYwMjg4ZHAtNSwKLSAgICAweDEucC01Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0NAotICAgIC0weDEuMDAxNTU3NzdhZWMwODU3ZDIyYzk3ZTgwOTg2MDI4OGRwLTUsCi0gICAgLTB4MS5wLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQ1Ci0gICAgMHgxLjAwMTU1OTc4MmVkNWRlZDhlMmI0YzgxOWNiN2M5ZjExcC01LAotICAgIDB4MS4wMDAwMDJwLTUKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDQ2Ci0gICAgLTB4MS4wMDE1NTk3ODJlZDVkZWQ4ZTJiNGM4MTljYjdjOWYxMXAtNSwKLSAgICAtMHgxLjAwMDAwMnAtNQotICB9LAotICB7IC8vIEVudHJ5IDEwNDcKLSAgICAweDEuMDAwNTU0Nzc2ODUzZTA0MTAxMGRhMjJhNjU2ZjgyNjdwLTYsCi0gICAgMHgxLmZmZmZmZXAtNwotICB9LAotICB7IC8vIEVudHJ5IDEwNDgKLSAgICAtMHgxLjAwMDU1NDc3Njg1M2UwNDEwMTBkYTIyYTY1NmY4MjY3cC02LAotICAgIC0weDEuZmZmZmZlcC03Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA0OQotICAgIDB4MS4wMDA1NTU3Nzc4NTQ4YWUxYjVmNjA1NzQ3MDZlODIzOHAtNiwKLSAgICAweDEucC02Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1MAotICAgIC0weDEuMDAwNTU1Nzc3ODU0OGFlMWI1ZjYwNTc0NzA2ZTgyMzhwLTYsCi0gICAgLTB4MS5wLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUxCi0gICAgMHgxLjAwMDU1Nzc3OTg1NWUwODMyN2M3NThlMjBkNjkxZGFkcC02LAotICAgIDB4MS4wMDAwMDJwLTYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDUyCi0gICAgLTB4MS4wMDA1NTc3Nzk4NTVlMDgzMjdjNzU4ZTIwZDY5MWRhZHAtNiwKLSAgICAtMHgxLjAwMDAwMnAtNgotICB9LAotICB7IC8vIEVudHJ5IDEwNTMKLSAgICAweDEuZmZmZmZlMGFhYWFhOGFlZWVmMGQ5YjUzYWQyZjQ4MjNwLTE1LAotICAgIDB4MS5mZmZmZmVwLTE1Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1NAotICAgIC0weDEuZmZmZmZlMGFhYWFhOGFlZWVmMGQ5YjUzYWQyZjQ4MjNwLTE1LAotICAgIC0weDEuZmZmZmZlcC0xNQotICB9LAotICB7IC8vIEVudHJ5IDEwNTUKLSAgICAweDEuMDAwMDAwMDU1NTU1NTU3Nzc3Nzc3ODU0ODU0ODVhMWVwLTE0LAotICAgIDB4MS5wLTE0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1NgotICAgIC0weDEuMDAwMDAwMDU1NTU1NTU3Nzc3Nzc3ODU0ODU0ODVhMWVwLTE0LAotICAgIC0weDEucC0xNAotICB9LAotICB7IC8vIEVudHJ5IDEwNTcKLSAgICAweDEuMDAwMDAyMDU1NTU1NzU3Nzc3YjhjZGFhMGFhOWM2NDBwLTE0LAotICAgIDB4MS4wMDAwMDJwLTE0Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA1OAotICAgIC0weDEuMDAwMDAyMDU1NTU1NzU3Nzc3YjhjZGFhMGFhOWM2NDBwLTE0LAotICAgIC0weDEuMDAwMDAycC0xNAotICB9LAotICB7IC8vIEVudHJ5IDEwNTkKLSAgICAweDEuZmZmZmZlMDAwMDAwMDJhYWFhYTJhYWFhYjJhZWVlZWNwLTI4LAotICAgIDB4MS5mZmZmZmVwLTI4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA2MAotICAgIC0weDEuZmZmZmZlMDAwMDAwMDJhYWFhYTJhYWFhYjJhZWVlZWNwLTI4LAotICAgIC0weDEuZmZmZmZlcC0yOAotICB9LAotICB7IC8vIEVudHJ5IDEwNjEKLSAgICAweDEuMDAwMDAwMDAwMDAwMDE1NTU1NTU1NTU1NTU1Nzc3NzdwLTI3LAotICAgIDB4MS5wLTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA2MgotICAgIC0weDEuMDAwMDAwMDAwMDAwMDE1NTU1NTU1NTU1NTU1Nzc3NzdwLTI3LAotICAgIC0weDEucC0yNwotICB9LAotICB7IC8vIEVudHJ5IDEwNjMKLSAgICAweDEuMDAwMDAyMDAwMDAwMDE1NTU1NWQ1NTU1NjU1Nzc3ODJwLTI3LAotICAgIDB4MS4wMDAwMDJwLTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA2NAotICAgIC0weDEuMDAwMDAyMDAwMDAwMDE1NTU1NWQ1NTU1NjU1Nzc3ODJwLTI3LAotICAgIC0weDEuMDAwMDAycC0yNwotICB9LAotICB7IC8vIEVudHJ5IDEwNjUKLSAgICAweDEuZmZmZmZlMDAwMDAwMDAwYWFhYWE4YWFhYWFjYWFhZWVwLTMxLAotICAgIDB4MS5mZmZmZmVwLTMxCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2NgotICAgIC0weDEuZmZmZmZlMDAwMDAwMDAwYWFhYWE4YWFhYWFjYWFhZWVwLTMxLAotICAgIC0weDEuZmZmZmZlcC0zMQotICB9LAotICB7IC8vIEVudHJ5IDEwNjcKLSAgICAweDEuMDAwMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTU1NzdwLTMwLAotICAgIDB4MS5wLTMwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA2OAotICAgIC0weDEuMDAwMDAwMDAwMDAwMDAwNTU1NTU1NTU1NTU1NTU1NzdwLTMwLAotICAgIC0weDEucC0zMAotICB9LAotICB7IC8vIEVudHJ5IDEwNjkKLSAgICAweDEuMDAwMDAyMDAwMDAwMDAwNTU1NTU3NTU1NTU5NTU1NzdwLTMwLAotICAgIDB4MS4wMDAwMDJwLTMwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA3MAotICAgIC0weDEuMDAwMDAyMDAwMDAwMDAwNTU1NTU3NTU1NTU5NTU1NzdwLTMwLAotICAgIC0weDEuMDAwMDAycC0zMAotICB9LAotICB7IC8vIEVudHJ5IDEwNzEKLSAgICAweDEuMzkzZDk0YjQ5ODhjMWYyNTQzNDVjOWY3ZDllYTBjMDNwLTEsCi0gICAgLTB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA3MgotICAgIC0weDEuMzkzZDk0YjQ5ODhjMWYyNTQzNDVjOWY3ZDllYTBjMDNwLTEsCi0gICAgMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDczCi0gICAgLTB4MS4zOTNkOTRiNDk4OGMxZjI1NDM0NWM5ZjdkOWVhMGMwM3AtMSwKLSAgICAweDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDEwNzQKLSAgICAweDEuMzkzZDk0YjQ5ODhjMWYyNTQzNDVjOWY3ZDllYTBjMDNwLTEsCi0gICAgLTB4MS5mZmZmZmVwMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA3NQotICAgIC0weDEuMzkzZDk0YjQ5ODhjMWYyNTQzNDVjOWY3ZDllYTBjMDNwLTEsCi0gICAgMHgxLmZmZmZmZXAxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDc2Ci0gICAgMHgxLjM5M2Q5NGI0OTg4YzFmMjU0MzQ1YzlmN2Q5ZWEwYzAzcC0xLAotICAgIC0weDEuZmZmZmZlcDEyNwotICB9LAotICB7IC8vIEVudHJ5IDEwNzcKLSAgICAweDEuYWNmMzE1YTg3YWE1ZGE4NjU0Yzg0NGI5MTdkMTQ3NDVwLTEsCi0gICAgMHgxLmZmZmZmY3AxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDc4Ci0gICAgLTB4MS5hY2YzMTVhODdhYTVkYTg2NTRjODQ0YjkxN2QxNDc0NXAtMSwKLSAgICAtMHgxLmZmZmZmY3AxMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDc5Ci0gICAgMHgxLjc3N2E1Y2Y3MmNlZGYzYjU0NGM4MTgwOGI1MTVmMWY5cC0yNCwKLSAgICAweDEuOTIxZmI2cDEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDgwCi0gICAgLTB4MS43NzdhNWNmNzJjZWRmM2I1NDRjODE4MDhiNTE1ZjFmOXAtMjQsCi0gICAgLTB4MS45MjFmYjZwMQotICB9LAotICB7IC8vIEVudHJ5IDEwODEKLSAgICAtMHgxLjVkMTQ5NDZkYzk4OTc1ZDY0MjFhNTUyODRmZTAyMGExcDI0LAotICAgIDB4MS45MjFmYjZwMAotICB9LAotICB7IC8vIEVudHJ5IDEwODIKLSAgICAweDEuNWQxNDk0NmRjOTg5NzVkNjQyMWE1NTI4NGZlMDIwYTFwMjQsCi0gICAgLTB4MS45MjFmYjZwMAotICB9LAotICB7IC8vIEVudHJ5IDEwODMKLSAgICAweDEuOGViMjRjYTVjYmVhMDhmOTkxMjA2YTNlYWY5M2FiOThwMCwKLSAgICAweDEuMDAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDg0Ci0gICAgLTB4MS44ZWIyNGNhNWNiZWEwOGY5OTEyMDZhM2VhZjkzYWI5OHAwLAotICAgIC0weDEuMDAwMDAycDAKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDg1Ci0gICAgMHgxLjhlYjI0NWNiZWUzYTViOGFjYzdkNDEzMjMxNDBiM2I1cDAsCi0gICAgMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4NgotICAgIC0weDEuOGViMjQ1Y2JlZTNhNWI4YWNjN2Q0MTMyMzE0MGIzYjVwMCwKLSAgICAtMHgxLnAwCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4NwotICAgIDB4MS44ZWIyNDI1ZWZmNzI4NjBkNTZkNjEwNTZkYjU0ZWY2N3AwLAotICAgIDB4MS5mZmZmZmVwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDg4Ci0gICAgLTB4MS44ZWIyNDI1ZWZmNzI4NjBkNTZkNjEwNTZkYjU0ZWY2N3AwLAotICAgIC0weDEuZmZmZmZlcC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA4OQotICAgIDB4MS4wMDAwMDBiYmJkMmVjMDZkNmQ2ZmZmMzY1NWEzNDZhY3AwLAotICAgIDB4MS45MjFmYjZwLTEKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDkwCi0gICAgLTB4MS4wMDAwMDBiYmJkMmVjMDZkNmQ2ZmZmMzY1NWEzNDZhY3AwLAotICAgIC0weDEuOTIxZmI2cC0xCi0gIH0sCi0gIHsgLy8gRW50cnkgMTA5MQotICAgIDB4MS4wMDAwMDJwLTEyNiwKLSAgICAweDEuMDAwMDAycC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDkyCi0gICAgLTB4MS4wMDAwMDJwLTEyNiwKLSAgICAtMHgxLjAwMDAwMnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA5MwotICAgIDB4MS5wLTEyNiwKLSAgICAweDEucC0xMjYKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDk0Ci0gICAgLTB4MS5wLTEyNiwKLSAgICAtMHgxLnAtMTI2Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA5NQotICAgIDB4MS5mZmZmZmNwLTEyNywKLSAgICAweDEuZmZmZmZjcC0xMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDk2Ci0gICAgLTB4MS5mZmZmZmNwLTEyNywKLSAgICAtMHgxLmZmZmZmY3AtMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA5NwotICAgIDB4MS5mZmZmZjhwLTEyNywKLSAgICAweDEuZmZmZmY4cC0xMjcKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMDk4Ci0gICAgLTB4MS5mZmZmZjhwLTEyNywKLSAgICAtMHgxLmZmZmZmOHAtMTI3Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTA5OQotICAgIDB4MS5wLTE0OCwKLSAgICAweDEucC0xNDgKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTAwCi0gICAgLTB4MS5wLTE0OCwKLSAgICAtMHgxLnAtMTQ4Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEwMQotICAgIDB4MS5wLTE0OSwKLSAgICAweDEucC0xNDkKLSAgfSwKLSAgeyAvLyBFbnRyeSAxMTAyCi0gICAgLTB4MS5wLTE0OSwKLSAgICAtMHgxLnAtMTQ5Ci0gIH0sCi0gIHsgLy8gRW50cnkgMTEwMwotICAgIDAuMCwKLSAgICAwLjBmCi0gIH0sCi0gIHsgLy8gRW50cnkgMTEwNAotICAgIC0wLjAsCi0gICAgLTAuMGYKLSAgfSwKLX07Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwotCi1URVNUKG1hdGhfdGFuZiwgdGFuZl9pbnRlbCkgewotI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplb2YoZ190YW5mX2ludGVsX2RhdGEpL3NpemVvZih0YW5mX2ludGVsX2RhdGFfdCk7IGkrKykgewotICAgIEVYUEVDVF9GTE9BVF9FUShnX3RhbmZfaW50ZWxfZGF0YVtpXS5leHBlY3RlZCwgdGFuZihnX3RhbmZfaW50ZWxfZGF0YVtpXS5jYWxsX2RhdGEpKSA8PCAiRmFpbGVkIG9uIGVsZW1lbnQgIiA8PCBpOwotICB9Ci0jZWxzZSAvLyBfX0JJT05JQ19fCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCi19CmRpZmYgLS1naXQgYS90ZXN0cy9tYXRoX3Rlc3QuY3BwIGIvdGVzdHMvbWF0aF90ZXN0LmNwcAppbmRleCAyMjAzZGI5Li5lNjE2ZTliIDEwMDY0NAotLS0gYS90ZXN0cy9tYXRoX3Rlc3QuY3BwCisrKyBiL3Rlc3RzL21hdGhfdGVzdC5jcHAKQEAgLTE0LDYgKzE0LDkgQEAKICAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgogICovCiAKKyNkZWZpbmUgX0dOVV9TT1VSQ0UgMQorI2luY2x1ZGUgPG1hdGguaD4KKwogLy8gVGhpcyBpbmNsdWRlIChhbmQgdGhlIGFzc29jaWF0ZWQgZGVmaW5pdGlvbiBvZiBfX3Rlc3RfY2FwdHVyZV9zaWduYml0KQogLy8gbXVzdCBiZSBwbGFjZWQgYmVmb3JlIGFueSBmaWxlcyB0aGF0IGluY2x1ZGUgPGNtYXRoPiAoZ3Rlc3QuaCBpbiB0aGlzIGNhc2UpLgogLy8KQEAgLTI5LDcgKzMyLDYgQEAKIC8vIHN1cmUgdGhhdCB3ZSdyZSB0ZXN0aW5nIHRoZSBiaW9uaWMgdmVyc2lvbiBvZiBzaWduYml0LiBUaGUgQysrIGxpYnJhcmllcwogLy8gYXJlIGZyZWUgdG8gcmVpbXBsZW1lbnQgc2lnbmJpdCBvciBkZWxlZ2F0ZSB0byBjb21waWxlciBidWlsdGlucyBpZiB0aGV5CiAvLyBwbGVhc2UuCi0jaW5jbHVkZSA8bWF0aC5oPgogCiBuYW1lc3BhY2UgewogdGVtcGxhdGU8dHlwZW5hbWUgVD4gaW5saW5lIGludCB0ZXN0X2NhcHR1cmVfc2lnbmJpdChjb25zdCBUIGluKSB7CkBAIC00Niw2ICs0OCw4IEBACiB9CiB9CiAKKyNpbmNsdWRlICJtYXRoX2RhdGFfdGVzdC5oIgorCiAjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KIAogI2luY2x1ZGUgPGZlbnYuaD4KQEAgLTE2NywzOSArMTcxLDMwIEBACiB9CiAKIFRFU1QobWF0aCwgX19mcGNsYXNzaWZ5ZCkgewotI2lmIGRlZmluZWQoX19CSU9OSUNfXykKKyNpZiBkZWZpbmVkKF9fR0xJQkNfXykKKyNkZWZpbmUgX19mcGNsYXNzaWZ5ZCBfX2ZwY2xhc3NpZnkKKyNlbmRpZgogICBBU1NFUlRfRVEoRlBfSU5GSU5JVEUsIF9fZnBjbGFzc2lmeWQoSFVHRV9WQUwpKTsKICAgQVNTRVJUX0VRKEZQX05BTiwgX19mcGNsYXNzaWZ5ZChuYW4oIiIpKSk7CiAgIEFTU0VSVF9FUShGUF9OT1JNQUwsIF9fZnBjbGFzc2lmeWQoMS4wKSk7CiAgIEFTU0VSVF9FUShGUF9TVUJOT1JNQUwsIF9fZnBjbGFzc2lmeWQoZG91YmxlX3N1Ym5vcm1hbCgpKSk7CiAgIEFTU0VSVF9FUShGUF9aRVJPLCBfX2ZwY2xhc3NpZnlkKDAuMCkpOwotI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCiB9CiAKIFRFU1QobWF0aCwgX19mcGNsYXNzaWZ5ZikgewotI2lmIGRlZmluZWQoX19CSU9OSUNfXykKICAgQVNTRVJUX0VRKEZQX0lORklOSVRFLCBfX2ZwY2xhc3NpZnlmKEhVR0VfVkFMRikpOwogICBBU1NFUlRfRVEoRlBfTkFOLCBfX2ZwY2xhc3NpZnlmKG5hbmYoIiIpKSk7CiAgIEFTU0VSVF9FUShGUF9OT1JNQUwsIF9fZnBjbGFzc2lmeWYoMS4wZikpOwogICBBU1NFUlRfRVEoRlBfU1VCTk9STUFMLCBfX2ZwY2xhc3NpZnlmKGZsb2F0X3N1Ym5vcm1hbCgpKSk7CiAgIEFTU0VSVF9FUShGUF9aRVJPLCBfX2ZwY2xhc3NpZnlmKDAuMGYpKTsKLSNlbHNlIC8vIF9fQklPTklDX18KLSAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwogfQogCiBURVNUKG1hdGgsIF9fZnBjbGFzc2lmeWwpIHsKLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCiAgIEVYUEVDVF9FUShGUF9JTkZJTklURSwgX19mcGNsYXNzaWZ5bChIVUdFX1ZBTEwpKTsKICAgRVhQRUNUX0VRKEZQX05BTiwgX19mcGNsYXNzaWZ5bChuYW5sKCIiKSkpOwogICBFWFBFQ1RfRVEoRlBfTk9STUFMLCBfX2ZwY2xhc3NpZnlsKDEuMEwpKTsKICAgRVhQRUNUX0VRKEZQX1NVQk5PUk1BTCwgX19mcGNsYXNzaWZ5bChsZG91YmxlX3N1Ym5vcm1hbCgpKSk7CiAgIEVYUEVDVF9FUShGUF9aRVJPLCBfX2ZwY2xhc3NpZnlsKDAuMEwpKTsKLSNlbHNlIC8vIF9fQklPTklDX18KLSAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwogfQogCiBURVNUKG1hdGgsIGZpbml0ZWYpIHsKQEAgLTIwOCwzMCArMjAzLDI3IEBACiB9CiAKIFRFU1QobWF0aCwgX19pc2Zpbml0ZSkgewotI2lmIGRlZmluZWQoX19CSU9OSUNfXykKKyNpZiBkZWZpbmVkKF9fR0xJQkNfXykKKyNkZWZpbmUgX19pc2Zpbml0ZSBfX2Zpbml0ZQorI2VuZGlmCiAgIEFTU0VSVF9UUlVFKF9faXNmaW5pdGUoMTIzLjApKTsKICAgQVNTRVJUX0ZBTFNFKF9faXNmaW5pdGUoSFVHRV9WQUwpKTsKLSNlbHNlIC8vIF9fQklPTklDX18KLSAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7Ci0jZW5kaWYgLy8gX19CSU9OSUNfXwogfQogCiBURVNUKG1hdGgsIF9faXNmaW5pdGVmKSB7Ci0jaWYgZGVmaW5lZChfX0JJT05JQ19fKQorI2lmIGRlZmluZWQoX19HTElCQ19fKQorI2RlZmluZSBfX2lzZmluaXRlZiBfX2Zpbml0ZWYKKyNlbmRpZgogICBBU1NFUlRfVFJVRShfX2lzZmluaXRlZigxMjMuMGYpKTsKICAgQVNTRVJUX0ZBTFNFKF9faXNmaW5pdGVmKEhVR0VfVkFMRikpOwotI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCiB9CiAKIFRFU1QobWF0aCwgX19pc2Zpbml0ZWwpIHsKLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCisjaWYgZGVmaW5lZChfX0dMSUJDX18pCisjZGVmaW5lIF9faXNmaW5pdGVsIF9fZmluaXRlbAorI2VuZGlmCiAgIEFTU0VSVF9UUlVFKF9faXNmaW5pdGVsKDEyMy4wTCkpOwogICBBU1NFUlRfRkFMU0UoX19pc2Zpbml0ZWwoSFVHRV9WQUxMKSk7Ci0jZWxzZSAvLyBfX0JJT05JQ19fCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwotI2VuZGlmIC8vIF9fQklPTklDX18KIH0KIAogVEVTVChtYXRoLCBmaW5pdGUpIHsKQEAgLTI4MSw3ICsyNzMsNyBAQAogICBBU1NFUlRfVFJVRShfX2lzbm9ybWFsKDEyMy4wKSk7CiAgIEFTU0VSVF9GQUxTRShfX2lzbm9ybWFsKGRvdWJsZV9zdWJub3JtYWwoKSkpOwogI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKKyAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiZ2xpYmMgZG9lc24ndCBoYXZlIF9faXNub3JtYWwuXG4iOwogI2VuZGlmIC8vIF9fQklPTklDX18KIH0KIApAQCAtMjkwLDcgKzI4Miw3IEBACiAgIEFTU0VSVF9UUlVFKF9faXNub3JtYWxmKDEyMy4wZikpOwogICBBU1NFUlRfRkFMU0UoX19pc25vcm1hbGYoZmxvYXRfc3Vibm9ybWFsKCkpKTsKICNlbHNlIC8vIF9fQklPTklDX18KLSAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7CisgIEdURVNUX0xPR18oSU5GTykgPDwgImdsaWJjIGRvZXNuJ3QgaGF2ZSBfX2lzbm9ybWFsZi5cbiI7CiAjZW5kaWYgLy8gX19CSU9OSUNfXwogfQogCkBAIC0yOTksNyArMjkxLDcgQEAKICAgQVNTRVJUX1RSVUUoX19pc25vcm1hbGwoMTIzLjBMKSk7CiAgIEFTU0VSVF9GQUxTRShfX2lzbm9ybWFsbChsZG91YmxlX3N1Ym5vcm1hbCgpKSk7CiAjZWxzZSAvLyBfX0JJT05JQ19fCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOworICBHVEVTVF9MT0dfKElORk8pIDw8ICJnbGliYyBkb2Vzbid0IGhhdmUgX19pc25vcm1hbGwuXG4iOwogI2VuZGlmIC8vIF9fQklPTklDX18KIH0KIApAQCAtMTAzMiwxMyArMTAyNCwxMyBAQAogVEVTVChtYXRoLCBuZXh0YWZ0ZXIpIHsKICAgQVNTRVJUX0RPVUJMRV9FUSgwLjAsIG5leHRhZnRlcigwLjAsIDAuMCkpOwogICBBU1NFUlRfRE9VQkxFX0VRKDQuOTQwNjU2NDU4NDEyNDY1NGUtMzI0LCBuZXh0YWZ0ZXIoMC4wLCAxLjApKTsKLSAgQVNTRVJUX0RPVUJMRV9FUSgwLjAsIG5leHRhZnRlcigwLjAsIC0xLjApKTsKKyAgQVNTRVJUX0RPVUJMRV9FUSgtNC45NDA2NTY0NTg0MTI0NjU0ZS0zMjQsIG5leHRhZnRlcigwLjAsIC0xLjApKTsKIH0KIAogVEVTVChtYXRoLCBuZXh0YWZ0ZXJmKSB7CiAgIEFTU0VSVF9GTE9BVF9FUSgwLjBmLCBuZXh0YWZ0ZXJmKDAuMGYsIDAuMGYpKTsKICAgQVNTRVJUX0ZMT0FUX0VRKDEuNDAxMjk4NWUtNDVmLCBuZXh0YWZ0ZXJmKDAuMGYsIDEuMGYpKTsKLSAgQVNTRVJUX0ZMT0FUX0VRKDAuMGYsIG5leHRhZnRlcmYoMC4wZiwgLTEuMGYpKTsKKyAgQVNTRVJUX0ZMT0FUX0VRKC0xLjQwMTI5ODVlLTQ1ZiwgbmV4dGFmdGVyZigwLjBmLCAtMS4wZikpOwogfQogCiBURVNUKG1hdGgsIG5leHRhZnRlcmwpIHsKQEAgLTEwNDcsMTkgKzEwMzksMTkgQEAKICAgLy8gc2l6ZW9mKGRvdWJsZSkgPT0gc2l6ZW9mKGxvbmcgZG91YmxlKQogICBsb25nIGRvdWJsZSBzbWFsbGVzdF9wb3NpdGl2ZSA9IGxkZXhwbCgxLjBMLCBMREJMX01JTl9FWFAgLSBMREJMX01BTlRfRElHKTsKICAgQVNTRVJUX0RPVUJMRV9FUShzbWFsbGVzdF9wb3NpdGl2ZSwgbmV4dGFmdGVybCgwLjBMLCAxLjBMKSk7Ci0gIEFTU0VSVF9ET1VCTEVfRVEoMC4wTCwgbmV4dGFmdGVybCgwLjBMLCAtMS4wTCkpOworICBBU1NFUlRfRE9VQkxFX0VRKC1zbWFsbGVzdF9wb3NpdGl2ZSwgbmV4dGFmdGVybCgwLjBMLCAtMS4wTCkpOwogfQogCiBURVNUKG1hdGgsIG5leHR0b3dhcmQpIHsKICAgQVNTRVJUX0RPVUJMRV9FUSgwLjAsIG5leHR0b3dhcmQoMC4wLCAwLjBMKSk7CiAgIEFTU0VSVF9ET1VCTEVfRVEoNC45NDA2NTY0NTg0MTI0NjU0ZS0zMjQsIG5leHR0b3dhcmQoMC4wLCAxLjBMKSk7Ci0gIEFTU0VSVF9ET1VCTEVfRVEoMC4wLCBuZXh0dG93YXJkKDAuMCwgLTEuMEwpKTsKKyAgQVNTRVJUX0RPVUJMRV9FUSgtNC45NDA2NTY0NTg0MTI0NjU0ZS0zMjQsIG5leHR0b3dhcmQoMC4wLCAtMS4wTCkpOwogfQogCiBURVNUKG1hdGgsIG5leHR0b3dhcmRmKSB7CiAgIEFTU0VSVF9GTE9BVF9FUSgwLjBmLCBuZXh0dG93YXJkZigwLjBmLCAwLjBMKSk7CiAgIEFTU0VSVF9GTE9BVF9FUSgxLjQwMTI5ODVlLTQ1ZiwgbmV4dHRvd2FyZGYoMC4wZiwgMS4wTCkpOwotICBBU1NFUlRfRkxPQVRfRVEoMC4wZiwgbmV4dHRvd2FyZGYoMC4wZiwgLTEuMEwpKTsKKyAgQVNTRVJUX0ZMT0FUX0VRKC0xLjQwMTI5ODVlLTQ1ZiwgbmV4dHRvd2FyZGYoMC4wZiwgLTEuMEwpKTsKIH0KIAogVEVTVChtYXRoLCBuZXh0dG93YXJkbCkgewpAQCAtMTA2OCw3ICsxMDYwLDcgQEAKICAgLy8gc2l6ZW9mKGRvdWJsZSkgPT0gc2l6ZW9mKGxvbmcgZG91YmxlKQogICBsb25nIGRvdWJsZSBzbWFsbGVzdF9wb3NpdGl2ZSA9IGxkZXhwbCgxLjBMLCBMREJMX01JTl9FWFAgLSBMREJMX01BTlRfRElHKTsKICAgQVNTRVJUX0RPVUJMRV9FUShzbWFsbGVzdF9wb3NpdGl2ZSwgbmV4dHRvd2FyZGwoMC4wTCwgMS4wTCkpOwotICBBU1NFUlRfRE9VQkxFX0VRKDAuMEwsIG5leHR0b3dhcmRsKDAuMEwsIC0xLjBMKSk7CisgIEFTU0VSVF9ET1VCTEVfRVEoLXNtYWxsZXN0X3Bvc2l0aXZlLCBuZXh0dG93YXJkbCgwLjBMLCAtMS4wTCkpOwogfQogCiBURVNUKG1hdGgsIGNvcHlzaWduKSB7CkBAIC0xMDk1LDE5ICsxMDg3LDE5IEBACiBURVNUKG1hdGgsIHNpZ25pZmljYW5kKSB7CiAgIEFTU0VSVF9ET1VCTEVfRVEoMC4wLCBzaWduaWZpY2FuZCgwLjApKTsKICAgQVNTRVJUX0RPVUJMRV9FUSgxLjIsIHNpZ25pZmljYW5kKDEuMikpOwotICBBU1NFUlRfRE9VQkxFX0VRKDEuNTM3NSwgc2lnbmlmaWNhbmQoMTIuMykpOworICBBU1NFUlRfRE9VQkxFX0VRKDEuNTMxMjUsIHNpZ25pZmljYW5kKDEyLjI1KSk7CiB9CiAKIFRFU1QobWF0aCwgc2lnbmlmaWNhbmRmKSB7CiAgIEFTU0VSVF9GTE9BVF9FUSgwLjBmLCBzaWduaWZpY2FuZGYoMC4wZikpOwogICBBU1NFUlRfRkxPQVRfRVEoMS4yZiwgc2lnbmlmaWNhbmRmKDEuMmYpKTsKLSAgQVNTRVJUX0ZMT0FUX0VRKDEuNTM3NWYsIHNpZ25pZmljYW5kZigxMi4zZikpOworICBBU1NFUlRfRkxPQVRfRVEoMS41MzEyNWYsIHNpZ25pZmljYW5kZigxMi4yNWYpKTsKIH0KIAogVEVTVChtYXRoLCBzaWduaWZpY2FuZGwpIHsKICAgQVNTRVJUX0RPVUJMRV9FUSgwLjBMLCBzaWduaWZpY2FuZGwoMC4wTCkpOwogICBBU1NFUlRfRE9VQkxFX0VRKDEuMkwsIHNpZ25pZmljYW5kbCgxLjJMKSk7Ci0gIEFTU0VSVF9ET1VCTEVfRVEoMS41Mzc1TCwgc2lnbmlmaWNhbmRsKDEyLjNMKSk7CisgIEFTU0VSVF9ET1VCTEVfRVEoMS41MzEyNUwsIHNpZ25pZmljYW5kbCgxMi4yNUwpKTsKIH0KIAogVEVTVChtYXRoLCBzY2FsYikgewpAQCAtMTE1Niw3ICsxMTQ4LDcgQEAKICAgQVNTRVJUX0RPVUJMRV9FUShsb2coMjQuMCksIGdhbW1hX3IoNS4wLCAmc2lnbikpOwogICBBU1NFUlRfRVEoMSwgc2lnbik7CiAjZWxzZSAvLyBfX0JJT05JQ19fCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOworICBHVEVTVF9MT0dfKElORk8pIDw8ICJnbGliYyBkb2Vzbid0IGhhdmUgZ2FtbWFfci5cbiI7CiAjZW5kaWYgLy8gX19CSU9OSUNfXwogfQogCkBAIC0xMTY2LDcgKzExNTgsNyBAQAogICBBU1NFUlRfRkxPQVRfRVEobG9nZigyNC4wZiksIGdhbW1hZl9yKDUuMGYsICZzaWduKSk7CiAgIEFTU0VSVF9FUSgxLCBzaWduKTsKICNlbHNlIC8vIF9fQklPTklDX18KLSAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7CisgIEdURVNUX0xPR18oSU5GTykgPDwgImdsaWJjIGRvZXNuJ3QgaGF2ZSBnYW1tYWZfci5cbiI7CiAjZW5kaWYgLy8gX19CSU9OSUNfXwogfQogCkBAIC0xMTg4LDEyICsxMTgwLDUxIEBACiAgIEFTU0VSVF9FUSgxLCBzaWduKTsKIH0KIAorVEVTVChtYXRoLCBsZ2FtbWFfcl8xNzQ3MTg4MykgeworICBpbnQgc2lnbjsKKworICBzaWduID0gMDsKKyAgQVNTRVJUX0RPVUJMRV9FUShIVUdFX1ZBTCwgbGdhbW1hX3IoMC4wLCAmc2lnbikpOworICBBU1NFUlRfRVEoMSwgc2lnbik7CisgIHNpZ24gPSAwOworICBBU1NFUlRfRE9VQkxFX0VRKEhVR0VfVkFMLCBsZ2FtbWFfcigtMC4wLCAmc2lnbikpOworICBBU1NFUlRfRVEoLTEsIHNpZ24pOworfQorCiBURVNUKG1hdGgsIGxnYW1tYWZfcikgewogICBpbnQgc2lnbjsKICAgQVNTRVJUX0ZMT0FUX0VRKGxvZ2YoMjQuMGYpLCBsZ2FtbWFmX3IoNS4wZiwgJnNpZ24pKTsKICAgQVNTRVJUX0VRKDEsIHNpZ24pOwogfQogCitURVNUKG1hdGgsIGxnYW1tYWZfcl8xNzQ3MTg4MykgeworICBpbnQgc2lnbjsKKworICBzaWduID0gMDsKKyAgQVNTRVJUX0ZMT0FUX0VRKEhVR0VfVkFMRiwgbGdhbW1hZl9yKDAuMGYsICZzaWduKSk7CisgIEFTU0VSVF9FUSgxLCBzaWduKTsKKyAgc2lnbiA9IDA7CisgIEFTU0VSVF9GTE9BVF9FUShIVUdFX1ZBTEYsIGxnYW1tYWZfcigtMC4wZiwgJnNpZ24pKTsKKyAgQVNTRVJUX0VRKC0xLCBzaWduKTsKK30KKworVEVTVChtYXRoLCBsZ2FtbWFsX3IpIHsKKyAgaW50IHNpZ247CisgIEFTU0VSVF9ET1VCTEVfRVEobG9nKDI0LjBMKSwgbGdhbW1hX3IoNS4wTCwgJnNpZ24pKTsKKyAgQVNTRVJUX0VRKDEsIHNpZ24pOworfQorCitURVNUKG1hdGgsIGxnYW1tYWxfcl8xNzQ3MTg4MykgeworICBpbnQgc2lnbjsKKworICBzaWduID0gMDsKKyAgQVNTRVJUX0RPVUJMRV9FUShIVUdFX1ZBTCwgbGdhbW1hbF9yKDAuMEwsICZzaWduKSk7CisgIEFTU0VSVF9FUSgxLCBzaWduKTsKKyAgc2lnbiA9IDA7CisgIEFTU0VSVF9ET1VCTEVfRVEoSFVHRV9WQUwsIGxnYW1tYWxfcigtMC4wTCwgJnNpZ24pKTsKKyAgQVNTRVJUX0VRKC0xLCBzaWduKTsKK30KKwogVEVTVChtYXRoLCB0Z2FtbWEpIHsKICAgQVNTRVJUX0RPVUJMRV9FUSgyNC4wLCB0Z2FtbWEoNS4wKSk7CiB9CkBAIC0xMzQ3LDMgKzEzNzgsNDkzIEBACiAgIEFTU0VSVF9UUlVFKG5leHRhZnRlcmYoMS4wZiwgMC4wZikgLSAxLjBmIDwgMC4wZik7CiAgIEFTU0VSVF9UUlVFKG5leHRhZnRlcmwoMS4wTCwgMC4wTCkgLSAxLjBMIDwgMC4wTCk7CiB9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvYWNvc19pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGFjb3NfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19hY29zX2ludGVsX2RhdGEsIGFjb3MpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2Fjb3NmX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgYWNvc2ZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19hY29zZl9pbnRlbF9kYXRhLCBhY29zZik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvYWNvc2hfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBhY29zaF9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwyPihnX2Fjb3NoX2ludGVsX2RhdGEsIGFjb3NoKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9hY29zaGZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBhY29zaGZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8Mj4oZ19hY29zaGZfaW50ZWxfZGF0YSwgYWNvc2hmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9hc2luX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgYXNpbl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2FzaW5faW50ZWxfZGF0YSwgYXNpbik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvYXNpbmZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBhc2luZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2FzaW5mX2ludGVsX2RhdGEsIGFzaW5mKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9hc2luaF9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGFzaW5oX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDI+KGdfYXNpbmhfaW50ZWxfZGF0YSwgYXNpbmgpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2FzaW5oZl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGFzaW5oZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwyPihnX2FzaW5oZl9pbnRlbF9kYXRhLCBhc2luaGYpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2F0YW4yX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgYXRhbjJfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8Mj4oZ19hdGFuMl9pbnRlbF9kYXRhLCBhdGFuMik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvYXRhbjJmX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgYXRhbjJmX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDI+KGdfYXRhbjJmX2ludGVsX2RhdGEsIGF0YW4yZik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvYXRhbl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGF0YW5faW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19hdGFuX2ludGVsX2RhdGEsIGF0YW4pOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2F0YW5mX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgYXRhbmZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19hdGFuZl9pbnRlbF9kYXRhLCBhdGFuZik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvYXRhbmhfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBhdGFuaF9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwyPihnX2F0YW5oX2ludGVsX2RhdGEsIGF0YW5oKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9hdGFuaGZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBhdGFuaGZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8Mj4oZ19hdGFuaGZfaW50ZWxfZGF0YSwgYXRhbmhmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9jYnJ0X2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgY2JydF9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2NicnRfaW50ZWxfZGF0YSwgY2JydCk7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvY2JydGZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBjYnJ0Zl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2NicnRmX2ludGVsX2RhdGEsIGNicnRmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9jZWlsX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgY2VpbF9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2NlaWxfaW50ZWxfZGF0YSwgY2VpbCk7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvY2VpbGZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBjZWlsZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2NlaWxmX2ludGVsX2RhdGEsIGNlaWxmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9jb3B5c2lnbl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGNvcHlzaWduX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfY29weXNpZ25faW50ZWxfZGF0YSwgY29weXNpZ24pOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2NvcHlzaWduZl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGNvcHlzaWduZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2NvcHlzaWduZl9pbnRlbF9kYXRhLCBjb3B5c2lnbmYpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2Nvc19pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGNvc19pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2Nvc19pbnRlbF9kYXRhLCBjb3MpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2Nvc2ZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBjb3NmX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfY29zZl9pbnRlbF9kYXRhLCBjb3NmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9jb3NoX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgY29zaF9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwyPihnX2Nvc2hfaW50ZWxfZGF0YSwgY29zaCk7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvY29zaGZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBjb3NoZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwyPihnX2Nvc2hmX2ludGVsX2RhdGEsIGNvc2hmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9leHBfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBleHBfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19leHBfaW50ZWxfZGF0YSwgZXhwKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9leHBmX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgZXhwZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2V4cGZfaW50ZWxfZGF0YSwgZXhwZik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvZXhwMl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGV4cDJfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19leHAyX2ludGVsX2RhdGEsIGV4cDIpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2V4cDJmX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgZXhwMmZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19leHAyZl9pbnRlbF9kYXRhLCBleHAyZik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvZXhwbTFfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBleHBtMV9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2V4cG0xX2ludGVsX2RhdGEsIGV4cG0xKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9leHBtMWZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBleHBtMWZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19leHBtMWZfaW50ZWxfZGF0YSwgZXhwbTFmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9mYWJzX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgZmFic19pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2ZhYnNfaW50ZWxfZGF0YSwgZmFicyk7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvZmFic2ZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBmYWJzZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2ZhYnNmX2ludGVsX2RhdGEsIGZhYnNmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9mZGltX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgZmRpbV9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2ZkaW1faW50ZWxfZGF0YSwgZmRpbSk7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvZmRpbWZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBmZGltZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2ZkaW1mX2ludGVsX2RhdGEsIGZkaW1mKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9mbG9vcl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGZsb29yX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfZmxvb3JfaW50ZWxfZGF0YSwgZmxvb3IpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2Zsb29yZl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGZsb29yZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2Zsb29yZl9pbnRlbF9kYXRhLCBmbG9vcmYpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2ZtYV9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGZtYV9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2ZtYV9pbnRlbF9kYXRhLCBmbWEpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2ZtYWZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBmbWFmX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfZm1hZl9pbnRlbF9kYXRhLCBmbWFmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9mbWF4X2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgZm1heF9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2ZtYXhfaW50ZWxfZGF0YSwgZm1heCk7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvZm1heGZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBmbWF4Zl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2ZtYXhmX2ludGVsX2RhdGEsIGZtYXhmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9mbWluX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgZm1pbl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2ZtaW5faW50ZWxfZGF0YSwgZm1pbik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvZm1pbmZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBmbWluZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2ZtaW5mX2ludGVsX2RhdGEsIGZtaW5mKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9mbW9kX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgZm1vZF9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2Ztb2RfaW50ZWxfZGF0YSwgZm1vZCk7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvZm1vZGZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBmbW9kZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2Ztb2RmX2ludGVsX2RhdGEsIGZtb2RmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9mcmV4cF9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGZyZXhwX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfZnJleHBfaW50ZWxfZGF0YSwgZnJleHApOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2ZyZXhwZl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGZyZXhwZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2ZyZXhwZl9pbnRlbF9kYXRhLCBmcmV4cGYpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2h5cG90X2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgaHlwb3RfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19oeXBvdF9pbnRlbF9kYXRhLCBoeXBvdCk7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvaHlwb3RmX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgaHlwb3RmX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfaHlwb3RmX2ludGVsX2RhdGEsIGh5cG90Zik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvaWxvZ2JfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBpbG9nYl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2lsb2diX2ludGVsX2RhdGEsIGlsb2diKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9pbG9nYmZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBpbG9nYmZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19pbG9nYmZfaW50ZWxfZGF0YSwgaWxvZ2JmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9sZGV4cF9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGxkZXhwX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfbGRleHBfaW50ZWxfZGF0YSwgbGRleHApOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2xkZXhwZl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGxkZXhwZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2xkZXhwZl9pbnRlbF9kYXRhLCBsZGV4cGYpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2xvZ19pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGxvZ19pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2xvZ19pbnRlbF9kYXRhLCBsb2cpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2xvZ2ZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBsb2dmX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfbG9nZl9pbnRlbF9kYXRhLCBsb2dmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9sb2cxMF9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGxvZzEwX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfbG9nMTBfaW50ZWxfZGF0YSwgbG9nMTApOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2xvZzEwZl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGxvZzEwZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX2xvZzEwZl9pbnRlbF9kYXRhLCBsb2cxMGYpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2xvZzFwX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgbG9nMXBfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19sb2cxcF9pbnRlbF9kYXRhLCBsb2cxcCk7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvbG9nMXBmX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgbG9nMXBmX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfbG9nMXBmX2ludGVsX2RhdGEsIGxvZzFwZik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvbG9nMl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGxvZzJfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19sb2cyX2ludGVsX2RhdGEsIGxvZzIpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2xvZzJmX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgbG9nMmZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19sb2cyZl9pbnRlbF9kYXRhLCBsb2cyZik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvbG9nYl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIGxvZ2JfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19sb2diX2ludGVsX2RhdGEsIGxvZ2IpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL2xvZ2JmX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgbG9nYmZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19sb2diZl9pbnRlbF9kYXRhLCBsb2diZik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvbW9kZl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIG1vZGZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19tb2RmX2ludGVsX2RhdGEsIG1vZGYpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL21vZGZmX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgbW9kZmZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19tb2RmZl9pbnRlbF9kYXRhLCBtb2RmZik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvbmVhcmJ5aW50X2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgbmVhcmJ5aW50X2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfbmVhcmJ5aW50X2ludGVsX2RhdGEsIG5lYXJieWludCk7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvbmVhcmJ5aW50Zl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIG5lYXJieWludGZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19uZWFyYnlpbnRmX2ludGVsX2RhdGEsIG5lYXJieWludGYpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL25leHRhZnRlcl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIG5leHRhZnRlcl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX25leHRhZnRlcl9pbnRlbF9kYXRhLCBuZXh0YWZ0ZXIpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL25leHRhZnRlcmZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBuZXh0YWZ0ZXJmX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfbmV4dGFmdGVyZl9pbnRlbF9kYXRhLCBuZXh0YWZ0ZXJmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9wb3dfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBwb3dfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19wb3dfaW50ZWxfZGF0YSwgcG93KTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9wb3dmX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgcG93Zl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX3Bvd2ZfaW50ZWxfZGF0YSwgcG93Zik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvcmVtYWluZGVyX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgcmVtYWluZGVyX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfcmVtYWluZGVyX2ludGVsX2RhdGEsIHJlbWFpbmRlcik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvcmVtYWluZGVyZl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIHJlbWFpbmRlcmZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19yZW1haW5kZXJmX2ludGVsX2RhdGEsIHJlbWFpbmRlcmYpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL3JlbXF1b19pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIHJlbXF1b19pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX3JlbXF1b19pbnRlbF9kYXRhLCByZW1xdW8pOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL3JlbXF1b2ZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCByZW1xdW9mX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfcmVtcXVvZl9pbnRlbF9kYXRhLCByZW1xdW9mKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9yaW50X2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgcmludF9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX3JpbnRfaW50ZWxfZGF0YSwgcmludCk7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvcmludGZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCByaW50Zl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX3JpbnRmX2ludGVsX2RhdGEsIHJpbnRmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9yb3VuZF9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIHJvdW5kX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfcm91bmRfaW50ZWxfZGF0YSwgcm91bmQpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL3JvdW5kZl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIHJvdW5kZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX3JvdW5kZl9pbnRlbF9kYXRhLCByb3VuZGYpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL3NjYWxiX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgc2NhbGJfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19zY2FsYl9pbnRlbF9kYXRhLCBzY2FsYik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvc2NhbGJmX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgc2NhbGJmX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfc2NhbGJmX2ludGVsX2RhdGEsIHNjYWxiZik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvc2NhbGJuX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgc2NhbGJuX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfc2NhbGJuX2ludGVsX2RhdGEsIHNjYWxibik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvc2NhbGJuZl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIHNjYWxibmZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19zY2FsYm5mX2ludGVsX2RhdGEsIHNjYWxibmYpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL3NpZ25pZmljYW5kX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgc2lnbmlmaWNhbmRfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19zaWduaWZpY2FuZF9pbnRlbF9kYXRhLCBzaWduaWZpY2FuZCk7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvc2lnbmlmaWNhbmRmX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgc2lnbmlmaWNhbmRmX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfc2lnbmlmaWNhbmRmX2ludGVsX2RhdGEsIHNpZ25pZmljYW5kZik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvc2luX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgc2luX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfc2luX2ludGVsX2RhdGEsIHNpbik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvc2luZl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIHNpbmZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ19zaW5mX2ludGVsX2RhdGEsIHNpbmYpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL3NpbmhfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBzaW5oX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDI+KGdfc2luaF9pbnRlbF9kYXRhLCBzaW5oKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9zaW5oZl9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIHNpbmhmX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDI+KGdfc2luaGZfaW50ZWxfZGF0YSwgc2luaGYpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL3NpbmNvc19pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIHNpbmNvc19pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX3NpbmNvc19pbnRlbF9kYXRhLCBzaW5jb3MpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL3NpbmNvc2ZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBzaW5jb3NmX2ludGVsKSB7CisgIERvTWF0aERhdGFUZXN0PDE+KGdfc2luY29zZl9pbnRlbF9kYXRhLCBzaW5jb3NmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS9zcXJ0X2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgc3FydF9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX3NxcnRfaW50ZWxfZGF0YSwgc3FydCk7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvc3FydGZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCBzcXJ0Zl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX3NxcnRmX2ludGVsX2RhdGEsIHNxcnRmKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS90YW5faW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCB0YW5faW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ190YW5faW50ZWxfZGF0YSwgdGFuKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS90YW5mX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgdGFuZl9pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX3RhbmZfaW50ZWxfZGF0YSwgdGFuZik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvdGFuaF9pbnRlbF9kYXRhLmgiCitURVNUKG1hdGgsIHRhbmhfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8Mj4oZ190YW5oX2ludGVsX2RhdGEsIHRhbmgpOworfQorCisjaW5jbHVkZSAibWF0aF9kYXRhL3RhbmhmX2ludGVsX2RhdGEuaCIKK1RFU1QobWF0aCwgdGFuaGZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8Mj4oZ190YW5oZl9pbnRlbF9kYXRhLCB0YW5oZik7Cit9CisKKyNpbmNsdWRlICJtYXRoX2RhdGEvdHJ1bmNfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCB0cnVuY19pbnRlbCkgeworICBEb01hdGhEYXRhVGVzdDwxPihnX3RydW5jX2ludGVsX2RhdGEsIHRydW5jKTsKK30KKworI2luY2x1ZGUgIm1hdGhfZGF0YS90cnVuY2ZfaW50ZWxfZGF0YS5oIgorVEVTVChtYXRoLCB0cnVuY2ZfaW50ZWwpIHsKKyAgRG9NYXRoRGF0YVRlc3Q8MT4oZ190cnVuY2ZfaW50ZWxfZGF0YSwgdHJ1bmNmKTsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL21udGVudF90ZXN0LmNwcCBiL3Rlc3RzL21udGVudF90ZXN0LmNwcAppbmRleCA2MzdjYjUyLi5hMTAyODQ5IDEwMDY0NAotLS0gYS90ZXN0cy9tbnRlbnRfdGVzdC5jcHAKKysrIGIvdGVzdHMvbW50ZW50X3Rlc3QuY3BwCkBAIC0xOSwxNiArMTksMjIgQEAKICNpbmNsdWRlIDxtbnRlbnQuaD4KIAogVEVTVChtbnRlbnQsIG1udGVudF9zbW9rZSkgewotICBGSUxFKiBmcCA9IHNldG1udGVudCgiL25vL21udC90YWIvb24vYW5kcm9pZCIsICJyIik7Ci0gIEFTU0VSVF9UUlVFKGZwID09IE5VTEwpOworICBGSUxFKiBmcCA9IHNldG1udGVudCgiL3Byb2MvbW91bnRzIiwgInIiKTsKKyAgQVNTRVJUX1RSVUUoZnAgIT0gTlVMTCk7CiAKLSNpZiBfX0JJT05JQ19fIC8vIGdsaWJjIGRvZXNuJ3QgbGV0IHlvdSBjYWxsIGdldG1udGVudC9nZXRtbnRlbnRfciB3aXRoIGEgTlVMTCBGSUxFKi4KLSAgQVNTRVJUX1RSVUUoZ2V0bW50ZW50KGZwKSA9PSBOVUxMKTsKKyAgQVNTRVJUX1RSVUUoZ2V0bW50ZW50KGZwKSAhPSBOVUxMKTsKIAotICBzdHJ1Y3QgbW50ZW50IG1idWY7Ci0gIGNoYXIgY2J1ZlszMl07Ci0gIEFTU0VSVF9UUlVFKGdldG1udGVudF9yKGZwLCAmbWJ1ZiwgY2J1Ziwgc2l6ZW9mKGNidWYpKSA9PSBOVUxMKTsKLSNlbmRpZgorICBib29sIHNhd19wcm9jID0gZmFsc2U7CisKKyAgc3RydWN0IG1udGVudCBlbnRyeTsKKyAgY2hhciBidWZbQlVGU0laXTsKKyAgd2hpbGUgKGdldG1udGVudF9yKGZwLCAmZW50cnksIGJ1Ziwgc2l6ZW9mKGJ1ZikpICE9IE5VTEwpIHsKKyAgICBpZiAoc3RyY21wKGVudHJ5Lm1udF9mc25hbWUsICJwcm9jIikgPT0gMCAmJiBzdHJjbXAoZW50cnkubW50X2RpciwgIi9wcm9jIikgPT0gMCkgeworICAgICAgc2F3X3Byb2MgPSB0cnVlOworICAgIH0KKyAgfQorCisgIEFTU0VSVF9UUlVFKHNhd19wcm9jKTsKIAogICBBU1NFUlRfRVEoMSwgZW5kbW50ZW50KGZwKSk7CiB9CmRpZmYgLS1naXQgYS90ZXN0cy9uZXRkYl90ZXN0LmNwcCBiL3Rlc3RzL25ldGRiX3Rlc3QuY3BwCmluZGV4IDMzZjZjMDEuLmEzNWY3MDMgMTAwNjQ0Ci0tLSBhL3Rlc3RzL25ldGRiX3Rlc3QuY3BwCisrKyBiL3Rlc3RzL25ldGRiX3Rlc3QuY3BwCkBAIC0xNCwxNiArMTQsMTAwIEBACiAgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KICAqLwogCisjaW5jbHVkZSA8bmV0ZGIuaD4KKwogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CiAKKyNpbmNsdWRlIDxhcnBhL2luZXQuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KICNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+Ci0jaW5jbHVkZSA8bmV0ZGIuaD4KICNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CiAKKy8vIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvYW5kcm9pZC9pc3N1ZXMvZGV0YWlsP2lkPTEzMjI4CitURVNUKG5ldGRiLCBmcmVlYWRkcmluZm9fTlVMTCkgeworICBmcmVlYWRkcmluZm8oTlVMTCk7Cit9CisKK1RFU1QobmV0ZGIsIGdldGFkZHJpbmZvX05VTExfaG9zdCkgeworICAvLyBJdCdzIG9rYXkgZm9yIHRoZSBob3N0IGFyZ3VtZW50IHRvIGJlIE5VTEwsIGFzIGxvbmcgYXMgc2VydmljZSBpc24ndC4KKyAgYWRkcmluZm8qIGFpID0gTlVMTDsKKyAgQVNTRVJUX0VRKDAsIGdldGFkZHJpbmZvKE5VTEwsICJzbXRwIiwgTlVMTCwgJmFpKSk7CisgIC8vIChzb2NrYWRkcl9pbjo6c2luX3BvcnQgYW5kIHNvY2thZGRyX2luNjo6c2luNl9wb3J0IG92ZXJsYXAuKQorICBBU1NFUlRfRVEoMjVVLCBudG9ocyhyZWludGVycHJldF9jYXN0PHNvY2thZGRyX2luKj4oYWktPmFpX2FkZHIpLT5zaW5fcG9ydCkpOworICBmcmVlYWRkcmluZm8oYWkpOworfQorCitURVNUKG5ldGRiLCBnZXRhZGRyaW5mb19OVUxMX3NlcnZpY2UpIHsKKyAgLy8gSXQncyBva2F5IGZvciB0aGUgc2VydmljZSBhcmd1bWVudCB0byBiZSBOVUxMLCBhcyBsb25nIGFzIGhvc3QgaXNuJ3QuCisgIGFkZHJpbmZvKiBhaSA9IE5VTEw7CisgIEFTU0VSVF9FUSgwLCBnZXRhZGRyaW5mbygibG9jYWxob3N0IiwgTlVMTCwgTlVMTCwgJmFpKSk7CisgIEFTU0VSVF9UUlVFKGFpICE9IE5VTEwpOworICBmcmVlYWRkcmluZm8oYWkpOworfQorCiBURVNUKG5ldGRiLCBnZXRhZGRyaW5mb19OVUxMX2hpbnRzKSB7CiAgIGFkZHJpbmZvKiBhaSA9IE5VTEw7CiAgIEFTU0VSVF9FUSgwLCBnZXRhZGRyaW5mbygibG9jYWxob3N0IiwgIjk5OTkiLCBOVUxMLCAmYWkpKTsKKworICBib29sIHNhd190Y3AgPSBmYWxzZTsKKyAgYm9vbCBzYXdfdWRwID0gZmFsc2U7CisgIGZvciAoYWRkcmluZm8qIHAgPSBhaTsgcCAhPSBOVUxMOyBwID0gcC0+YWlfbmV4dCkgeworICAgIEFTU0VSVF9UUlVFKHAtPmFpX2ZhbWlseSA9PSBBRl9JTkVUIHx8IHAtPmFpX2ZhbWlseSA9PSBBRl9JTkVUNik7CisgICAgaWYgKHAtPmFpX3NvY2t0eXBlID09IFNPQ0tfU1RSRUFNKSB7CisgICAgICBBU1NFUlRfRVEoSVBQUk9UT19UQ1AsIHAtPmFpX3Byb3RvY29sKTsKKyAgICAgIHNhd190Y3AgPSB0cnVlOworICAgIH0gZWxzZSBpZiAocC0+YWlfc29ja3R5cGUgPT0gU09DS19ER1JBTSkgeworICAgICAgQVNTRVJUX0VRKElQUFJPVE9fVURQLCBwLT5haV9wcm90b2NvbCk7CisgICAgICBzYXdfdWRwID0gdHJ1ZTsKKyAgICB9CisgIH0KKyAgQVNTRVJUX1RSVUUoc2F3X3RjcCk7CisgIEFTU0VSVF9UUlVFKHNhd191ZHApOworCisgIGZyZWVhZGRyaW5mbyhhaSk7Cit9CisKK1RFU1QobmV0ZGIsIGdldGFkZHJpbmZvX3NlcnZpY2VfbG9va3VwKSB7CisgIGFkZHJpbmZvKiBhaSA9IE5VTEw7CisgIEFTU0VSVF9FUSgwLCBnZXRhZGRyaW5mbygibG9jYWxob3N0IiwgInNtdHAiLCBOVUxMLCAmYWkpKTsKKyAgQVNTRVJUX0VRKFNPQ0tfU1RSRUFNLCBhaS0+YWlfc29ja3R5cGUpOworICBBU1NFUlRfRVEoSVBQUk9UT19UQ1AsIGFpLT5haV9wcm90b2NvbCk7CisgIEFTU0VSVF9FUSgyNSwgbnRvaHMocmVpbnRlcnByZXRfY2FzdDxzb2NrYWRkcl9pbio+KGFpLT5haV9hZGRyKS0+c2luX3BvcnQpKTsKKyAgZnJlZWFkZHJpbmZvKGFpKTsKK30KKworVEVTVChuZXRkYiwgZ2V0YWRkcmluZm9faGludHMpIHsKKyAgYWRkcmluZm8gaGludHM7CisgIG1lbXNldCgmaGludHMsIDAsIHNpemVvZihoaW50cykpOworICBoaW50cy5haV9mYW1pbHkgPSBBRl9JTkVUOworICBoaW50cy5haV9zb2NrdHlwZSA9IFNPQ0tfU1RSRUFNOworICBoaW50cy5haV9wcm90b2NvbCA9IElQUFJPVE9fVENQOworCisgIGFkZHJpbmZvKiBhaSA9IE5VTEw7CisgIEFTU0VSVF9FUSgwLCBnZXRhZGRyaW5mbyggImxvY2FsaG9zdCIsICI5OTk5IiwgJmhpbnRzLCAmYWkpKTsKKyAgQVNTRVJUX1RSVUUoYWkgIT0gTlVMTCk7CisgIC8vIEluIGdsaWJjLCBnZXRhZGRyaW5mbygpIGNvbnZlcnRzIDo6MSB0byAxMjcuMC4wLjEgZm9yIGxvY2FsaG9zdCwKKyAgLy8gc28gb25lIG9yIHR3byBhZGRyaW5mbyBtYXkgYmUgcmV0dXJuZWQuCisgIGFkZHJpbmZvKiB0YWkgPSBhaTsKKyAgd2hpbGUgKHRhaSAhPSBOVUxMKSB7CisgICAgQVNTRVJUX0VRKEFGX0lORVQsIHRhaS0+YWlfZmFtaWx5KTsKKyAgICBBU1NFUlRfRVEoU09DS19TVFJFQU0sIHRhaS0+YWlfc29ja3R5cGUpOworICAgIEFTU0VSVF9FUShJUFBST1RPX1RDUCwgdGFpLT5haV9wcm90b2NvbCk7CisgICAgdGFpID0gdGFpLT5haV9uZXh0OworICB9CisgIGZyZWVhZGRyaW5mbyhhaSk7Cit9CisKK1RFU1QobmV0ZGIsIGdldGFkZHJpbmZvX2lwNl9sb2NhbGhvc3QpIHsKKyAgYWRkcmluZm8qIGFpID0gTlVMTDsKKyAgQVNTRVJUX0VRKDAsIGdldGFkZHJpbmZvKCJpcDYtbG9jYWxob3N0IiwgTlVMTCwgTlVMTCwgJmFpKSk7CisgIEFTU0VSVF9UUlVFKGFpICE9IE5VTEwpOworICBBU1NFUlRfR0UoYWktPmFpX2FkZHJsZW4sIHN0YXRpY19jYXN0PHNvY2tsZW5fdD4oc2l6ZW9mKHNvY2thZGRyX2luNikpKTsKKyAgQVNTRVJUX1RSVUUoYWktPmFpX2FkZHIgIT0gTlVMTCk7CisgIHNvY2thZGRyX2luNiAqYWRkciA9IHJlaW50ZXJwcmV0X2Nhc3Q8c29ja2FkZHJfaW42Kj4oYWktPmFpX2FkZHIpOworICBBU1NFUlRfRVEoYWRkci0+c2luNl9mYW1pbHksIEFGX0lORVQ2KTsKKyAgQVNTRVJUX0VRKDAsIG1lbWNtcCgmYWRkci0+c2luNl9hZGRyLCAmaW42YWRkcl9sb29wYmFjaywgc2l6ZW9mKGluNl9hZGRyKSkpOwogICBmcmVlYWRkcmluZm8oYWkpOwogfQogCkBAIC01NSwzICsxMzksMTgzIEBACiAgIEFTU0VSVF9TVFJFUSgiOjoiLCB0bXApOwogICBBU1NFUlRfRVEoRUFJX0ZBTUlMWSwgZ2V0bmFtZWluZm8oc2EsIHRvb19saXR0bGUsIHRtcCwgc2l6ZW9mKHRtcCksIE5VTEwsIDAsIE5JX05VTUVSSUNIT1NUKSk7CiB9CisKK1RFU1QobmV0ZGIsIGdldG5hbWVpbmZvX2xvY2FsaG9zdCkgeworICBzb2NrYWRkcl9pbiBhZGRyOworICBjaGFyIGhvc3RbTklfTUFYSE9TVF07CisgIG1lbXNldCgmYWRkciwgMCwgc2l6ZW9mKHNvY2thZGRyX2luKSk7CisgIGFkZHIuc2luX2ZhbWlseSA9IEFGX0lORVQ7CisgIGFkZHIuc2luX2FkZHIuc19hZGRyID0gaHRvbmwoMHg3ZjAwMDAwMSk7CisgIEFTU0VSVF9FUSgwLCBnZXRuYW1laW5mbyhyZWludGVycHJldF9jYXN0PHNvY2thZGRyKj4oJmFkZHIpLCBzaXplb2YoYWRkciksCisgICAgICAgICAgICAgICAgICAgICAgICAgICBob3N0LCBzaXplb2YoaG9zdCksIE5VTEwsIDAsIDApKTsKKyAgQVNTRVJUX1NUUkVRKGhvc3QsICJsb2NhbGhvc3QiKTsKK30KKworc3RhdGljIHZvaWQgVmVyaWZ5TG9jYWxob3N0TmFtZShjb25zdCBjaGFyKiBuYW1lKSB7CisgIC8vIFRlc3QgcG9zc2libGUgbG9jYWxob3N0IG5hbWUgYW5kIGFsaWFzZXMsIHdoaWNoIGRlcGVuZCBvbiAvZXRjL2hvc3RzIG9yIC9zeXN0ZW0vZXRjL2hvc3RzLgorICBBU1NFUlRfVFJVRShzdHJjbXAobmFtZSwgImxvY2FsaG9zdCIpID09IDAgfHwKKyAgICAgICAgICAgICAgc3RyY21wKG5hbWUsICJpcDYtbG9jYWxob3N0IikgPT0gMCB8fAorICAgICAgICAgICAgICBzdHJjbXAobmFtZSwgImlwNi1sb29wYmFjayIpID09IDApIDw8IG5hbWU7Cit9CisKK1RFU1QobmV0ZGIsIGdldG5hbWVpbmZvX2lwNl9sb2NhbGhvc3QpIHsKKyAgc29ja2FkZHJfaW42IGFkZHI7CisgIGNoYXIgaG9zdFtOSV9NQVhIT1NUXTsKKyAgbWVtc2V0KCZhZGRyLCAwLCBzaXplb2Yoc29ja2FkZHJfaW42KSk7CisgIGFkZHIuc2luNl9mYW1pbHkgPSBBRl9JTkVUNjsKKyAgYWRkci5zaW42X2FkZHIgPSBpbjZhZGRyX2xvb3BiYWNrOworICBBU1NFUlRfRVEoMCwgZ2V0bmFtZWluZm8ocmVpbnRlcnByZXRfY2FzdDxzb2NrYWRkcio+KCZhZGRyKSwgc2l6ZW9mKGFkZHIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgaG9zdCwgc2l6ZW9mKGhvc3QpLCBOVUxMLCAwLCAwKSk7CisgIFZlcmlmeUxvY2FsaG9zdE5hbWUoaG9zdCk7Cit9CisKK3N0YXRpYyB2b2lkIFZlcmlmeUxvY2FsaG9zdChob3N0ZW50ICpoZW50KSB7CisgIEFTU0VSVF9UUlVFKGhlbnQgIT0gTlVMTCk7CisgIFZlcmlmeUxvY2FsaG9zdE5hbWUoaGVudC0+aF9uYW1lKTsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGhlbnQtPmhfYWxpYXNlc1tpXSAhPSBOVUxMOyArK2kpIHsKKyAgICBWZXJpZnlMb2NhbGhvc3ROYW1lKGhlbnQtPmhfYWxpYXNlc1tpXSk7CisgIH0KKyAgQVNTRVJUX0VRKGhlbnQtPmhfYWRkcnR5cGUsIEFGX0lORVQpOworICBBU1NFUlRfRVEoaGVudC0+aF9hZGRyWzBdLCAxMjcpOworICBBU1NFUlRfRVEoaGVudC0+aF9hZGRyWzFdLCAwKTsKKyAgQVNTRVJUX0VRKGhlbnQtPmhfYWRkclsyXSwgMCk7CisgIEFTU0VSVF9FUShoZW50LT5oX2FkZHJbM10sIDEpOworfQorCitURVNUKG5ldGRiLCBnZXRob3N0YnluYW1lKSB7CisgIGhvc3RlbnQqIGhwID0gZ2V0aG9zdGJ5bmFtZSgibG9jYWxob3N0Iik7CisgIFZlcmlmeUxvY2FsaG9zdChocCk7Cit9CisKK1RFU1QobmV0ZGIsIGdldGhvc3RieW5hbWUyKSB7CisgIGhvc3RlbnQqIGhwID0gZ2V0aG9zdGJ5bmFtZTIoImxvY2FsaG9zdCIsIEFGX0lORVQpOworICBWZXJpZnlMb2NhbGhvc3QoaHApOworfQorCitURVNUKG5ldGRiLCBnZXRob3N0YnluYW1lX3IpIHsKKyAgaG9zdGVudCBoZW50OworICBob3N0ZW50ICpocDsKKyAgY2hhciBidWZbNTEyXTsKKyAgaW50IGVycjsKKyAgaW50IHJlc3VsdCA9IGdldGhvc3RieW5hbWVfcigibG9jYWxob3N0IiwgJmhlbnQsIGJ1Ziwgc2l6ZW9mKGJ1ZiksICZocCwgJmVycik7CisgIEFTU0VSVF9FUSgwLCByZXN1bHQpOworICBWZXJpZnlMb2NhbGhvc3QoaHApOworCisgIC8vIENoYW5nZSBocC0+aF9hZGRyIHRvIHRlc3QgcmVlbnRyYW5jeS4KKyAgaHAtPmhfYWRkclswXSA9IDA7CisKKyAgaG9zdGVudCBoZW50MjsKKyAgaG9zdGVudCAqaHAyOworICBjaGFyIGJ1ZjJbNTEyXTsKKyAgcmVzdWx0ID0gZ2V0aG9zdGJ5bmFtZV9yKCJsb2NhbGhvc3QiLCAmaGVudDIsIGJ1ZjIsIHNpemVvZihidWYyKSwgJmhwMiwgJmVycik7CisgIEFTU0VSVF9FUSgwLCByZXN1bHQpOworICBWZXJpZnlMb2NhbGhvc3QoaHAyKTsKKworICBBU1NFUlRfRVEoMCwgaHAtPmhfYWRkclswXSk7Cit9CisKK1RFU1QobmV0ZGIsIGdldGhvc3RieW5hbWUyX3IpIHsKKyAgaG9zdGVudCBoZW50OworICBob3N0ZW50ICpocDsKKyAgY2hhciBidWZbNTEyXTsKKyAgaW50IGVycjsKKyAgaW50IHJlc3VsdCA9IGdldGhvc3RieW5hbWUyX3IoImxvY2FsaG9zdCIsIEFGX0lORVQsICZoZW50LCBidWYsIHNpemVvZihidWYpLCAmaHAsICZlcnIpOworICBBU1NFUlRfRVEoMCwgcmVzdWx0KTsKKyAgVmVyaWZ5TG9jYWxob3N0KGhwKTsKKworICAvLyBDaGFuZ2UgaHAtPmhfYWRkciB0byB0ZXN0IHJlZW50cmFuY3kuCisgIGhwLT5oX2FkZHJbMF0gPSAwOworCisgIGhvc3RlbnQgaGVudDI7CisgIGhvc3RlbnQgKmhwMjsKKyAgY2hhciBidWYyWzUxMl07CisgIHJlc3VsdCA9IGdldGhvc3RieW5hbWUyX3IoImxvY2FsaG9zdCIsIEFGX0lORVQsICZoZW50MiwgYnVmMiwgc2l6ZW9mKGJ1ZjIpLCAmaHAyLCAmZXJyKTsKKyAgQVNTRVJUX0VRKDAsIHJlc3VsdCk7CisgIFZlcmlmeUxvY2FsaG9zdChocDIpOworCisgIEFTU0VSVF9FUSgwLCBocC0+aF9hZGRyWzBdKTsKK30KKworVEVTVChuZXRkYiwgZ2V0aG9zdGJ5YWRkcikgeworICBpbl9hZGRyIGFkZHIgPSB7IGh0b25sKDB4N2YwMDAwMDEpIH07CisgIGhvc3RlbnQgKmhwID0gZ2V0aG9zdGJ5YWRkcigmYWRkciwgc2l6ZW9mKGFkZHIpLCBBRl9JTkVUKTsKKyAgVmVyaWZ5TG9jYWxob3N0KGhwKTsKK30KKworVEVTVChuZXRkYiwgZ2V0aG9zdGJ5YWRkcl9yKSB7CisgIGluX2FkZHIgYWRkciA9IHsgaHRvbmwoMHg3ZjAwMDAwMSkgfTsKKyAgaG9zdGVudCBoZW50OworICBob3N0ZW50ICpocDsKKyAgY2hhciBidWZbNTEyXTsKKyAgaW50IGVycjsKKyAgaW50IHJlc3VsdCA9IGdldGhvc3RieWFkZHJfcigmYWRkciwgc2l6ZW9mKGFkZHIpLCBBRl9JTkVULCAmaGVudCwgYnVmLCBzaXplb2YoYnVmKSwgJmhwLCAmZXJyKTsKKyAgQVNTRVJUX0VRKDAsIHJlc3VsdCk7CisgIFZlcmlmeUxvY2FsaG9zdChocCk7CisKKyAgLy8gQ2hhbmdlIGhwLT5oX2FkZHIgdG8gdGVzdCByZWVudHJhbmN5LgorICBocC0+aF9hZGRyWzBdID0gMDsKKworICBob3N0ZW50IGhlbnQyOworICBob3N0ZW50ICpocDI7CisgIGNoYXIgYnVmMls1MTJdOworICByZXN1bHQgPSBnZXRob3N0YnlhZGRyX3IoJmFkZHIsIHNpemVvZihhZGRyKSwgQUZfSU5FVCwgJmhlbnQyLCBidWYyLCBzaXplb2YoYnVmMiksICZocDIsICZlcnIpOworICBBU1NFUlRfRVEoMCwgcmVzdWx0KTsKKyAgVmVyaWZ5TG9jYWxob3N0KGhwMik7CisKKyAgQVNTRVJUX0VRKDAsIGhwLT5oX2FkZHJbMF0pOworfQorCitURVNUKG5ldGRiLCBnZXRob3N0YnluYW1lX3JfRVJBTkdFKSB7CisgIGhvc3RlbnQgaGVudDsKKyAgaG9zdGVudCAqaHA7CisgIGNoYXIgYnVmWzRdOyAvLyBVc2UgdG9vIHNtYWxsIGJ1ZmZlci4KKyAgaW50IGVycjsKKyAgaW50IHJlc3VsdCA9IGdldGhvc3RieW5hbWVfcigibG9jYWxob3N0IiwgJmhlbnQsIGJ1Ziwgc2l6ZW9mKGJ1ZiksICZocCwgJmVycik7CisgIEFTU0VSVF9FUShFUkFOR0UsIHJlc3VsdCk7CisgIEFTU0VSVF9FUShOVUxMLCBocCk7Cit9CisKK1RFU1QobmV0ZGIsIGdldGhvc3RieW5hbWUyX3JfRVJBTkdFKSB7CisgIGhvc3RlbnQgaGVudDsKKyAgaG9zdGVudCAqaHA7CisgIGNoYXIgYnVmWzRdOyAvLyBVc2UgdG9vIHNtYWxsIGJ1ZmZlci4KKyAgaW50IGVycjsKKyAgaW50IHJlc3VsdCA9IGdldGhvc3RieW5hbWUyX3IoImxvY2FsaG9zdCIsIEFGX0lORVQsICZoZW50LCBidWYsIHNpemVvZihidWYpLCAmaHAsICZlcnIpOworICBBU1NFUlRfRVEoRVJBTkdFLCByZXN1bHQpOworICBBU1NFUlRfRVEoTlVMTCwgaHApOworfQorCitURVNUKG5ldGRiLCBnZXRob3N0YnlhZGRyX3JfRVJBTkdFKSB7CisgIGluX2FkZHIgYWRkciA9IHsgaHRvbmwoMHg3ZjAwMDAwMSkgfTsKKyAgaG9zdGVudCBoZW50OworICBob3N0ZW50ICpocDsKKyAgY2hhciBidWZbNF07IC8vIFVzZSB0b28gc21hbGwgYnVmZmVyLgorICBpbnQgZXJyOworICBpbnQgcmVzdWx0ID0gZ2V0aG9zdGJ5YWRkcl9yKCZhZGRyLCBzaXplb2YoYWRkciksIEFGX0lORVQsICZoZW50LCBidWYsIHNpemVvZihidWYpLCAmaHAsICZlcnIpOworICBBU1NFUlRfRVEoRVJBTkdFLCByZXN1bHQpOworICBBU1NFUlRfRVEoTlVMTCwgaHApOworfQorCitURVNUKG5ldGRiLCBnZXRzZXJ2YnluYW1lKSB7CisgIC8vIHNtdHAgaXMgVENQLW9ubHksIHNvIHdlIGtub3cgd2UnbGwgZ2V0IDI1L3RjcCBiYWNrLgorICBzZXJ2ZW50KiBzID0gZ2V0c2VydmJ5bmFtZSgic210cCIsIE5VTEwpOworICBBU1NFUlRfVFJVRShzICE9IE5VTEwpOworICBBU1NFUlRfRVEoMjUsIG50b2hzKHMtPnNfcG9ydCkpOworICBBU1NFUlRfU1RSRVEoInRjcCIsIHMtPnNfcHJvdG8pOworCisgIC8vIFdlIGdldCB0aGUgc2FtZSByZXN1bHQgYnkgZXhwbGljaXRseSBhc2tpbmcgZm9yIHRjcC4KKyAgcyA9IGdldHNlcnZieW5hbWUoInNtdHAiLCAidGNwIik7CisgIEFTU0VSVF9UUlVFKHMgIT0gTlVMTCk7CisgIEFTU0VSVF9FUSgyNSwgbnRvaHMocy0+c19wb3J0KSk7CisgIEFTU0VSVF9TVFJFUSgidGNwIiwgcy0+c19wcm90byk7CisKKyAgLy8gQW5kIHdlIGdldCBhIGZhaWx1cmUgaWYgd2UgZXhwbGljaXRseSBhc2sgZm9yIHVkcC4KKyAgcyA9IGdldHNlcnZieW5hbWUoInNtdHAiLCAidWRwIik7CisgIEFTU0VSVF9UUlVFKHMgPT0gTlVMTCk7CisKKyAgLy8gQnV0IHRoZXJlIGFyZSBhY3R1YWxseSB1ZHAgc2VydmljZXMuCisgIHMgPSBnZXRzZXJ2YnluYW1lKCJlY2hvIiwgInVkcCIpOworICBBU1NFUlRfVFJVRShzICE9IE5VTEwpOworICBBU1NFUlRfRVEoNywgbnRvaHMocy0+c19wb3J0KSk7CisgIEFTU0VSVF9TVFJFUSgidWRwIiwgcy0+c19wcm90byk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9wdGhyZWFkX3Rlc3QuY3BwIGIvdGVzdHMvcHRocmVhZF90ZXN0LmNwcAppbmRleCAzMmJiNTRjLi5jYjVlODE4IDEwMDY0NAotLS0gYS90ZXN0cy9wdGhyZWFkX3Rlc3QuY3BwCisrKyBiL3Rlc3RzL3B0aHJlYWRfdGVzdC5jcHAKQEAgLTE2LDIwICsxNiwzMyBAQAogCiAjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KIAorI2luY2x1ZGUgPGRsZmNuLmg+CiAjaW5jbHVkZSA8ZXJybm8uaD4KICNpbmNsdWRlIDxpbnR0eXBlcy5oPgogI2luY2x1ZGUgPGxpbWl0cy5oPgogI2luY2x1ZGUgPG1hbGxvYy5oPgogI2luY2x1ZGUgPHB0aHJlYWQuaD4KICNpbmNsdWRlIDxzaWduYWwuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUgPHN5cy9tbWFuLmg+CiAjaW5jbHVkZSA8c3lzL3N5c2NhbGwuaD4KICNpbmNsdWRlIDx0aW1lLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKKyNpbmNsdWRlIDxhdG9taWM+CisjaW5jbHVkZSA8cmVnZXg+CisjaW5jbHVkZSA8dmVjdG9yPgorCisjaW5jbHVkZSA8YmFzZS9maWxlLmg+CisjaW5jbHVkZSA8YmFzZS9zdHJpbmdwcmludGYuaD4KKworI2luY2x1ZGUgInByaXZhdGUvYmlvbmljX21hY3Jvcy5oIgogI2luY2x1ZGUgInByaXZhdGUvU2NvcGVHdWFyZC5oIgorI2luY2x1ZGUgIkJpb25pY0RlYXRoVGVzdC5oIgogI2luY2x1ZGUgIlNjb3BlZFNpZ25hbEhhbmRsZXIuaCIKIAorZXh0ZXJuICJDIiBwaWRfdCBnZXR0aWQoKTsKKwogVEVTVChwdGhyZWFkLCBwdGhyZWFkX2tleV9jcmVhdGUpIHsKICAgcHRocmVhZF9rZXlfdCBrZXk7CiAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2tleV9jcmVhdGUoJmtleSwgTlVMTCkpOwpAQCAtMzgsMzcgKzUxLDY5IEBACiAgIEFTU0VSVF9FUShFSU5WQUwsIHB0aHJlYWRfa2V5X2RlbGV0ZShrZXkpKTsKIH0KIAotVEVTVChwdGhyZWFkLCBwdGhyZWFkX2tleV9jcmVhdGVfbG90cykgewotI2lmIGRlZmluZWQoX19CSU9OSUNfXykgLy8gZ2xpYmMgdXNlcyBrZXlzIGludGVybmFsbHkgdGhhdCBpdHMgc3lzY29uZiB2YWx1ZSBkb2Vzbid0IGFjY291bnQgZm9yLgotICAvLyBQT1NJWCBzYXlzIFBUSFJFQURfS0VZU19NQVggc2hvdWxkIGJlIGF0IGxlYXN0IDEyOC4KLSAgQVNTRVJUX0dFKFBUSFJFQURfS0VZU19NQVgsIDEyOCk7CitURVNUKHB0aHJlYWQsIHB0aHJlYWRfa2V5c19tYXgpIHsKKyAgLy8gUE9TSVggc2F5cyBQVEhSRUFEX0tFWVNfTUFYIHNob3VsZCBiZSBhdCBsZWFzdCBfUE9TSVhfVEhSRUFEX0tFWVNfTUFYLgorICBBU1NFUlRfR0UoUFRIUkVBRF9LRVlTX01BWCwgX1BPU0lYX1RIUkVBRF9LRVlTX01BWCk7Cit9CiAKK1RFU1QocHRocmVhZCwgc3lzY29uZl9TQ19USFJFQURfS0VZU19NQVhfZXFfUFRIUkVBRF9LRVlTX01BWCkgewogICBpbnQgc3lzY29uZl9tYXggPSBzeXNjb25mKF9TQ19USFJFQURfS0VZU19NQVgpOworICBBU1NFUlRfRVEoc3lzY29uZl9tYXgsIFBUSFJFQURfS0VZU19NQVgpOworfQogCi0gIC8vIHN5c2NvbmYgc2hvdWxkbid0IHJldHVybiBhIHNtYWxsZXIgdmFsdWUuCi0gIEFTU0VSVF9HRShzeXNjb25mX21heCwgUFRIUkVBRF9LRVlTX01BWCk7Ci0KLSAgLy8gV2UgY2FuIGFsbG9jYXRlIF9TQ19USFJFQURfS0VZU19NQVgga2V5cy4KLSAgc3lzY29uZl9tYXggLT0gMjsgLy8gKEV4Y2VwdCB0aGF0IGd0ZXN0IHRha2VzIHR3byBmb3IgaXRzZWxmLikKK1RFU1QocHRocmVhZCwgcHRocmVhZF9rZXlfbWFueV9kaXN0aW5jdCkgeworICAvLyBBcyBndGVzdCB1c2VzIHB0aHJlYWQga2V5cywgd2UgY2FuJ3QgYWxsb2NhdGUgZXhhY3RseSBQVEhSRUFEX0tFWVNfTUFYCisgIC8vIHB0aHJlYWQga2V5cywgYnV0IFdlIHNob3VsZCBiZSBhYmxlIHRvIGFsbG9jYXRlIGF0IGxlYXN0IHRoaXMgbWFueSBrZXlzLgorICBpbnQgbmtleXMgPSBQVEhSRUFEX0tFWVNfTUFYIC8gMjsKICAgc3RkOjp2ZWN0b3I8cHRocmVhZF9rZXlfdD4ga2V5czsKLSAgZm9yIChpbnQgaSA9IDA7IGkgPCBzeXNjb25mX21heDsgKytpKSB7CisKKyAgYXV0byBzY29wZV9ndWFyZCA9IG1ha2Vfc2NvcGVfZ3VhcmQoWyZrZXlzXXsKKyAgICBmb3IgKGF1dG8ga2V5IDoga2V5cykgeworICAgICAgRVhQRUNUX0VRKDAsIHB0aHJlYWRfa2V5X2RlbGV0ZShrZXkpKTsKKyAgICB9CisgIH0pOworCisgIGZvciAoaW50IGkgPSAwOyBpIDwgbmtleXM7ICsraSkgewogICAgIHB0aHJlYWRfa2V5X3Qga2V5OwotICAgIC8vIElmIHRoaXMgZmFpbHMsIGl0J3MgbGlrZWx5IHRoYXQgR0xPQkFMX0lOSVRfVEhSRUFEX0xPQ0FMX0JVRkZFUl9DT1VOVCBpcyB3cm9uZy4KLSAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9rZXlfY3JlYXRlKCZrZXksIE5VTEwpKSA8PCBpIDw8ICIgb2YgIiA8PCBzeXNjb25mX21heDsKKyAgICAvLyBJZiB0aGlzIGZhaWxzLCBpdCdzIGxpa2VseSB0aGF0IExJQkNfUFRIUkVBRF9LRVlfUkVTRVJWRURfQ09VTlQgaXMgd3JvbmcuCisgICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfa2V5X2NyZWF0ZSgma2V5LCBOVUxMKSkgPDwgaSA8PCAiIG9mICIgPDwgbmtleXM7CisgICAga2V5cy5wdXNoX2JhY2soa2V5KTsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9zZXRzcGVjaWZpYyhrZXksIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGkpKSk7CisgIH0KKworICBmb3IgKGludCBpID0ga2V5cy5zaXplKCkgLSAxOyBpID49IDA7IC0taSkgeworICAgIEFTU0VSVF9FUShyZWludGVycHJldF9jYXN0PHZvaWQqPihpKSwgcHRocmVhZF9nZXRzcGVjaWZpYyhrZXlzLmJhY2soKSkpOworICAgIHB0aHJlYWRfa2V5X3Qga2V5ID0ga2V5cy5iYWNrKCk7CisgICAga2V5cy5wb3BfYmFjaygpOworICAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2tleV9kZWxldGUoa2V5KSk7CisgIH0KK30KKworVEVTVChwdGhyZWFkLCBwdGhyZWFkX2tleV9ub3RfZXhjZWVkX1BUSFJFQURfS0VZU19NQVgpIHsKKyAgc3RkOjp2ZWN0b3I8cHRocmVhZF9rZXlfdD4ga2V5czsKKyAgaW50IHJ2ID0gMDsKKworICAvLyBQdGhyZWFkIGtleXMgYXJlIHVzZWQgYnkgZ3Rlc3QsIHNvIFBUSFJFQURfS0VZU19NQVggc2hvdWxkCisgIC8vIGJlIG1vcmUgdGhhbiB3ZSBhcmUgYWxsb3dlZCB0byBhbGxvY2F0ZSBub3cuCisgIGZvciAoaW50IGkgPSAwOyBpIDwgUFRIUkVBRF9LRVlTX01BWDsgaSsrKSB7CisgICAgcHRocmVhZF9rZXlfdCBrZXk7CisgICAgcnYgPSBwdGhyZWFkX2tleV9jcmVhdGUoJmtleSwgTlVMTCk7CisgICAgaWYgKHJ2ID09IEVBR0FJTikgeworICAgICAgYnJlYWs7CisgICAgfQorICAgIEVYUEVDVF9FUSgwLCBydik7CiAgICAga2V5cy5wdXNoX2JhY2soa2V5KTsKICAgfQogCi0gIC8vIC4uLmFuZCB0aGF0IHJlYWxseSBpcyB0aGUgbWF4aW11bS4KLSAgcHRocmVhZF9rZXlfdCBrZXk7Ci0gIEFTU0VSVF9FUShFQUdBSU4sIHB0aHJlYWRfa2V5X2NyZWF0ZSgma2V5LCBOVUxMKSk7Ci0KLSAgLy8gKERvbid0IGxlYWsgYWxsIHRob3NlIGtleXMhKQotICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGtleXMuc2l6ZSgpOyArK2kpIHsKLSAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9rZXlfZGVsZXRlKGtleXNbaV0pKTsKKyAgLy8gRG9uJ3QgbGVhayBrZXlzLgorICBmb3IgKGF1dG8ga2V5IDoga2V5cykgeworICAgIEVYUEVDVF9FUSgwLCBwdGhyZWFkX2tleV9kZWxldGUoa2V5KSk7CiAgIH0KLSNlbHNlIC8vIF9fQklPTklDX18KLSAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7Ci0jZW5kaWYgLy8gX19CSU9OSUNfXworICBrZXlzLmNsZWFyKCk7CisKKyAgLy8gV2Ugc2hvdWxkIGhhdmUgZXZlbnR1YWxseSByZWFjaGVkIHRoZSBtYXhpbXVtIG51bWJlciBvZiBrZXlzIGFuZCByZWNlaXZlZAorICAvLyBFQUdBSU4uCisgIEFTU0VSVF9FUShFQUdBSU4sIHJ2KTsKIH0KIAogVEVTVChwdGhyZWFkLCBwdGhyZWFkX2tleV9kZWxldGUpIHsKQEAgLTEwNiw2ICsxNTEsNyBAQAogICBBU1NFUlRfRVEoOTksIFdFWElUU1RBVFVTKHN0YXR1cykpOwogCiAgIEFTU0VSVF9FUShleHBlY3RlZCwgcHRocmVhZF9nZXRzcGVjaWZpYyhrZXkpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfa2V5X2RlbGV0ZShrZXkpKTsKIH0KIAogc3RhdGljIHZvaWQqIERpcnR5S2V5Rm4odm9pZCoga2V5KSB7CkBAIC0xMzMsMjMgKzE3OSw1NCBAQAogICBBU1NFUlRfRVEobnVsbHB0ciwgcmVzdWx0KTsgLy8gTm90IH4wIQogCiAgIEFTU0VSVF9FUSgwLCBtdW5tYXAoc3RhY2ssIHN0YWNrX3NpemUpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfa2V5X2RlbGV0ZShrZXkpKTsKK30KKworVEVTVChwdGhyZWFkLCBzdGF0aWNfcHRocmVhZF9rZXlfdXNlZF9iZWZvcmVfY3JlYXRpb24pIHsKKyNpZiBkZWZpbmVkKF9fQklPTklDX18pCisgIC8vIFNlZSBodHRwOi8vYi8xOTYyNTgwNC4gVGhlIGJ1ZyBpcyBhYm91dCBhIHN0YXRpYy9nbG9iYWwgcHRocmVhZCBrZXkgYmVpbmcgdXNlZCBiZWZvcmUgY3JlYXRpb24uCisgIC8vIFNvIGhlcmUgdGVzdHMgaWYgdGhlIHN0YXRpYy9nbG9iYWwgZGVmYXVsdCB2YWx1ZSAwIGNhbiBiZSBkZXRlY3RlZCBhcyBpbnZhbGlkIGtleS4KKyAgc3RhdGljIHB0aHJlYWRfa2V5X3Qga2V5OworICBBU1NFUlRfRVEobnVsbHB0ciwgcHRocmVhZF9nZXRzcGVjaWZpYyhrZXkpKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgcHRocmVhZF9zZXRzcGVjaWZpYyhrZXksIG51bGxwdHIpKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgcHRocmVhZF9rZXlfZGVsZXRlKGtleSkpOworI2Vsc2UKKyAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IHRlc3RzIGJpb25pYyBwdGhyZWFkIGtleSBpbXBsZW1lbnRhdGlvbiBkZXRhaWwuXG4iOworI2VuZGlmCiB9CiAKIHN0YXRpYyB2b2lkKiBJZEZuKHZvaWQqIGFyZykgewogICByZXR1cm4gYXJnOwogfQogCi1zdGF0aWMgdm9pZCogU2xlZXBGbih2b2lkKiBhcmcpIHsKLSAgc2xlZXAocmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KGFyZykpOwotICByZXR1cm4gTlVMTDsKLX0KLQotc3RhdGljIHZvaWQqIFNwaW5Gbih2b2lkKiBhcmcpIHsKLSAgdm9sYXRpbGUgYm9vbCogYiA9IHJlaW50ZXJwcmV0X2Nhc3Q8dm9sYXRpbGUgYm9vbCo+KGFyZyk7Ci0gIHdoaWxlICghKmIpIHsKK2NsYXNzIFNwaW5GdW5jdGlvbkhlbHBlciB7CisgcHVibGljOgorICBTcGluRnVuY3Rpb25IZWxwZXIoKSB7CisgICAgU3BpbkZ1bmN0aW9uSGVscGVyOjpzcGluX2ZsYWdfID0gdHJ1ZTsKICAgfQotICByZXR1cm4gTlVMTDsKLX0KKyAgflNwaW5GdW5jdGlvbkhlbHBlcigpIHsKKyAgICBVblNwaW4oKTsKKyAgfQorICBhdXRvIEdldEZ1bmN0aW9uKCkgLT4gdm9pZCogKCopKHZvaWQqKSB7CisgICAgcmV0dXJuIFNwaW5GdW5jdGlvbkhlbHBlcjo6U3BpbkZuOworICB9CisKKyAgdm9pZCBVblNwaW4oKSB7CisgICAgU3BpbkZ1bmN0aW9uSGVscGVyOjpzcGluX2ZsYWdfID0gZmFsc2U7CisgIH0KKworIHByaXZhdGU6CisgIHN0YXRpYyB2b2lkKiBTcGluRm4odm9pZCopIHsKKyAgICB3aGlsZSAoc3Bpbl9mbGFnXykge30KKyAgICByZXR1cm4gTlVMTDsKKyAgfQorICBzdGF0aWMgdm9sYXRpbGUgYm9vbCBzcGluX2ZsYWdfOworfTsKKworLy8gSXQgZG9lc24ndCBtYXR0ZXIgaWYgc3Bpbl9mbGFnXyBpcyB1c2VkIGluIHNldmVyYWwgdGVzdHMsCisvLyBiZWNhdXNlIGl0IGlzIGFsd2F5cyBzZXQgdG8gZmFsc2UgYWZ0ZXIgZWFjaCB0ZXN0LiBFYWNoIHRocmVhZAorLy8gbG9vcHMgb24gc3Bpbl9mbGFnXyBjYW4gZmluZCBpdCBiZWNvbWVzIGZhbHNlIGF0IHNvbWUgdGltZS4KK3ZvbGF0aWxlIGJvb2wgU3BpbkZ1bmN0aW9uSGVscGVyOjpzcGluX2ZsYWdfID0gZmFsc2U7CiAKIHN0YXRpYyB2b2lkKiBKb2luRm4odm9pZCogYXJnKSB7CiAgIHJldHVybiByZWludGVycHJldF9jYXN0PHZvaWQqPihwdGhyZWFkX2pvaW4ocmVpbnRlcnByZXRfY2FzdDxwdGhyZWFkX3Q+KGFyZyksIE5VTEwpKTsKQEAgLTE2Niw4ICsyNDMsNyBAQAogCiBzdGF0aWMgdm9pZCBNYWtlRGVhZFRocmVhZChwdGhyZWFkX3QmIHQpIHsKICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY3JlYXRlKCZ0LCBOVUxMLCBJZEZuLCBOVUxMKSk7Ci0gIHZvaWQqIHJlc3VsdDsKLSAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfam9pbih0LCAmcmVzdWx0KSk7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2pvaW4odCwgTlVMTCkpOwogfQogCiBURVNUKHB0aHJlYWQsIHB0aHJlYWRfY3JlYXRlKSB7CkBAIC0xOTEsMjMgKzI2NywyNCBAQAogfQogCiBURVNUKHB0aHJlYWQsIHB0aHJlYWRfbm9fam9pbl9hZnRlcl9kZXRhY2gpIHsKKyAgU3BpbkZ1bmN0aW9uSGVscGVyIHNwaW5oZWxwZXI7CisKICAgcHRocmVhZF90IHQxOwotICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jcmVhdGUoJnQxLCBOVUxMLCBTbGVlcEZuLCByZWludGVycHJldF9jYXN0PHZvaWQqPig1KSkpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jcmVhdGUoJnQxLCBOVUxMLCBzcGluaGVscGVyLkdldEZ1bmN0aW9uKCksIE5VTEwpKTsKIAogICAvLyBBZnRlciBhIHB0aHJlYWRfZGV0YWNoLi4uCiAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2RldGFjaCh0MSkpOwogICBBc3NlcnREZXRhY2hlZCh0MSwgdHJ1ZSk7CiAKICAgLy8gLi4ucHRocmVhZF9qb2luIHNob3VsZCBmYWlsLgotICB2b2lkKiByZXN1bHQ7Ci0gIEFTU0VSVF9FUShFSU5WQUwsIHB0aHJlYWRfam9pbih0MSwgJnJlc3VsdCkpOworICBBU1NFUlRfRVEoRUlOVkFMLCBwdGhyZWFkX2pvaW4odDEsIE5VTEwpKTsKIH0KIAogVEVTVChwdGhyZWFkLCBwdGhyZWFkX25vX29wX2RldGFjaF9hZnRlcl9qb2luKSB7Ci0gIGJvb2wgZG9uZSA9IGZhbHNlOworICBTcGluRnVuY3Rpb25IZWxwZXIgc3BpbmhlbHBlcjsKIAogICBwdGhyZWFkX3QgdDE7Ci0gIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2NyZWF0ZSgmdDEsIE5VTEwsIFNwaW5GbiwgJmRvbmUpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY3JlYXRlKCZ0MSwgTlVMTCwgc3BpbmhlbHBlci5HZXRGdW5jdGlvbigpLCBOVUxMKSk7CiAKICAgLy8gSWYgdGhyZWFkIDIgaXMgYWxyZWFkeSB3YWl0aW5nIHRvIGpvaW4gdGhyZWFkIDEuLi4KICAgcHRocmVhZF90IHQyOwpAQCAtMjE1LDExICsyOTIsMTQgQEAKIAogICBzbGVlcCgxKTsgLy8gKEdpdmUgdDIgYSBjaGFuY2UgdG8gY2FsbCBwdGhyZWFkX2pvaW4uKQogCi0gIC8vIC4uLmEgY2FsbCB0byBwdGhyZWFkX2RldGFjaCBvbiB0aHJlYWQgMSB3aWxsICJzdWNjZWVkIiAoc2lsZW50bHkgZmFpbCkuLi4KKyNpZiBkZWZpbmVkKF9fQklPTklDX18pCisgIEFTU0VSVF9FUShFSU5WQUwsIHB0aHJlYWRfZGV0YWNoKHQxKSk7CisjZWxzZQogICBBU1NFUlRfRVEoMCwgcHRocmVhZF9kZXRhY2godDEpKTsKKyNlbmRpZgogICBBc3NlcnREZXRhY2hlZCh0MSwgZmFsc2UpOwogCi0gIGRvbmUgPSB0cnVlOworICBzcGluaGVscGVyLlVuU3BpbigpOwogCiAgIC8vIC4uLmJ1dCB0MidzIGpvaW4gb24gdDEgc3RpbGwgZ29lcyBhaGVhZCAod2hpY2ggd2UgY2FuIHRlbGwgYmVjYXVzZSBvdXIgam9pbiBvbiB0MiBmaW5pc2hlcykuCiAgIHZvaWQqIGpvaW5fcmVzdWx0OwpAQCAtMjI4LDggKzMwOCw3IEBACiB9CiAKIFRFU1QocHRocmVhZCwgcHRocmVhZF9qb2luX3NlbGYpIHsKLSAgdm9pZCogcmVzdWx0OwotICBBU1NFUlRfRVEoRURFQURMSywgcHRocmVhZF9qb2luKHB0aHJlYWRfc2VsZigpLCAmcmVzdWx0KSk7CisgIEFTU0VSVF9FUShFREVBRExLLCBwdGhyZWFkX2pvaW4ocHRocmVhZF9zZWxmKCksIE5VTEwpKTsKIH0KIAogc3RydWN0IFRlc3RCdWczNzQxMCB7CkBAIC0yNjksOSArMzQ4LDExIEBACiAKIC8vIEV2ZW4gdGhvdWdoIHRoaXMgaXNuJ3QgcmVhbGx5IGEgZGVhdGggdGVzdCwgd2UgaGF2ZSB0byBzYXkgIkRlYXRoVGVzdCIgaGVyZSBzbyBndGVzdCBrbm93cyB0bwogLy8gcnVuIHRoaXMgdGVzdCAod2hpY2ggZXhpdHMgbm9ybWFsbHkpIGluIGl0cyBvd24gcHJvY2Vzcy4KLVRFU1QocHRocmVhZF9EZWF0aFRlc3QsIHB0aHJlYWRfYnVnXzM3NDEwKSB7CisKK2NsYXNzIHB0aHJlYWRfRGVhdGhUZXN0IDogcHVibGljIEJpb25pY0RlYXRoVGVzdCB7fTsKKworVEVTVF9GKHB0aHJlYWRfRGVhdGhUZXN0LCBwdGhyZWFkX2J1Z18zNzQxMCkgewogICAvLyBodHRwOi8vY29kZS5nb29nbGUuY29tL3AvYW5kcm9pZC9pc3N1ZXMvZGV0YWlsP2lkPTM3NDEwCi0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgQVNTRVJUX0VYSVQoVGVzdEJ1ZzM3NDEwOjptYWluKCksIDo6dGVzdGluZzo6RXhpdGVkV2l0aENvZGUoMCksICIiKTsKIH0KIApAQCAtMzIzLDUyICs0MDQsMjkgQEAKIH0KIAogVEVTVChwdGhyZWFkLCBwdGhyZWFkX3NldG5hbWVfbnBfX3Rvb19sb25nKSB7Ci0jaWYgZGVmaW5lZChfX0JJT05JQ19fKSAvLyBOb3QgYWxsIGJ1aWxkIHNlcnZlcnMgaGF2ZSBhIG5ldyBlbm91Z2ggZ2xpYmM/IFRPRE86IHJlbW92ZSB3aGVuIHRoZXkncmUgb24gZ3ByZWNpc2UuCi0gIEFTU0VSVF9FUShFUkFOR0UsIHB0aHJlYWRfc2V0bmFtZV9ucChwdGhyZWFkX3NlbGYoKSwgInRoaXMgbmFtZSBpcyBmYXIgdG9vIGxvbmcgZm9yIGxpbnV4IikpOwotI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCisgIC8vIFRoZSBsaW1pdCBpcyAxNSBjaGFyYWN0ZXJzIC0tLSB0aGUga2VybmVsJ3MgYnVmZmVyIGlzIDE2LCBidXQgaW5jbHVkZXMgYSBOVUwuCisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3NldG5hbWVfbnAocHRocmVhZF9zZWxmKCksICIxMjM0NTY3ODkwMTIzNDUiKSk7CisgIEFTU0VSVF9FUShFUkFOR0UsIHB0aHJlYWRfc2V0bmFtZV9ucChwdGhyZWFkX3NlbGYoKSwgIjEyMzQ1Njc4OTAxMjM0NTYiKSk7CiB9CiAKIFRFU1QocHRocmVhZCwgcHRocmVhZF9zZXRuYW1lX25wX19zZWxmKSB7Ci0jaWYgZGVmaW5lZChfX0JJT05JQ19fKSAvLyBOb3QgYWxsIGJ1aWxkIHNlcnZlcnMgaGF2ZSBhIG5ldyBlbm91Z2ggZ2xpYmM/IFRPRE86IHJlbW92ZSB3aGVuIHRoZXkncmUgb24gZ3ByZWNpc2UuCiAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3NldG5hbWVfbnAocHRocmVhZF9zZWxmKCksICJzaG9ydCAxIikpOwotI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCiB9CiAKIFRFU1QocHRocmVhZCwgcHRocmVhZF9zZXRuYW1lX25wX19vdGhlcikgewotI2lmIGRlZmluZWQoX19CSU9OSUNfXykgLy8gTm90IGFsbCBidWlsZCBzZXJ2ZXJzIGhhdmUgYSBuZXcgZW5vdWdoIGdsaWJjPyBUT0RPOiByZW1vdmUgd2hlbiB0aGV5J3JlIG9uIGdwcmVjaXNlLgotICAvLyBFbXVsYXRvciBrZXJuZWxzIGRvbid0IGN1cnJlbnRseSBzdXBwb3J0IHNldHRpbmcgdGhlIG5hbWUgb2Ygb3RoZXIgdGhyZWFkcy4KLSAgY2hhciogZmlsZW5hbWUgPSBOVUxMOwotICBhc3ByaW50ZigmZmlsZW5hbWUsICIvcHJvYy9zZWxmL3Rhc2svJWQvY29tbSIsIGdldHRpZCgpKTsKLSAgc3RydWN0IHN0YXQgc2I7Ci0gIGJvb2wgaGFzX2NvbW0gPSAoc3RhdChmaWxlbmFtZSwgJnNiKSAhPSAtMSk7Ci0gIGZyZWUoZmlsZW5hbWUpOworICBTcGluRnVuY3Rpb25IZWxwZXIgc3BpbmhlbHBlcjsKIAotICBpZiAoaGFzX2NvbW0pIHsKLSAgICBwdGhyZWFkX3QgdDE7Ci0gICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY3JlYXRlKCZ0MSwgTlVMTCwgU2xlZXBGbiwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oNSkpKTsKLSAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9zZXRuYW1lX25wKHQxLCAic2hvcnQgMiIpKTsKLSAgfSBlbHNlIHsKLSAgICBmcHJpbnRmKHN0ZGVyciwgInNraXBwaW5nIHRlc3Q6IHRoaXMga2VybmVsIGRvZXNuJ3QgaGF2ZSAvcHJvYy9zZWxmL3Rhc2svdGlkL2NvbW0gZmlsZXMhXG4iKTsKLSAgfQotI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCisgIHB0aHJlYWRfdCB0MTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY3JlYXRlKCZ0MSwgTlVMTCwgc3BpbmhlbHBlci5HZXRGdW5jdGlvbigpLCBOVUxMKSk7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3NldG5hbWVfbnAodDEsICJzaG9ydCAyIikpOwogfQogCiBURVNUKHB0aHJlYWQsIHB0aHJlYWRfc2V0bmFtZV9ucF9fbm9fc3VjaF90aHJlYWQpIHsKLSNpZiBkZWZpbmVkKF9fQklPTklDX18pIC8vIE5vdCBhbGwgYnVpbGQgc2VydmVycyBoYXZlIGEgbmV3IGVub3VnaCBnbGliYz8gVE9ETzogcmVtb3ZlIHdoZW4gdGhleSdyZSBvbiBncHJlY2lzZS4KICAgcHRocmVhZF90IGRlYWRfdGhyZWFkOwogICBNYWtlRGVhZFRocmVhZChkZWFkX3RocmVhZCk7CiAKICAgLy8gQ2FsbCBwdGhyZWFkX3NldG5hbWVfbnAgYWZ0ZXIgdGhyZWFkIGhhcyBhbHJlYWR5IGV4aXRlZC4KLSAgQVNTRVJUX0VRKEVTUkNILCBwdGhyZWFkX3NldG5hbWVfbnAoZGVhZF90aHJlYWQsICJzaG9ydCAzIikpOwotI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCisgIEFTU0VSVF9FUShFTk9FTlQsIHB0aHJlYWRfc2V0bmFtZV9ucChkZWFkX3RocmVhZCwgInNob3J0IDMiKSk7CiB9CiAKIFRFU1QocHRocmVhZCwgcHRocmVhZF9raWxsX18wKSB7CkBAIC00MDEsNyArNDU5LDcgQEAKICAgQVNTRVJUX0VRKEVTUkNILCBwdGhyZWFkX2RldGFjaChkZWFkX3RocmVhZCkpOwogfQogCi1URVNUKHB0aHJlYWQsIHB0aHJlYWRfZGV0YWNoX19sZWFrKSB7CitURVNUKHB0aHJlYWQsIHB0aHJlYWRfZGV0YWNoX25vX2xlYWspIHsKICAgc2l6ZV90IGluaXRpYWxfYnl0ZXMgPSAwOwogICAvLyBSdW4gdGhpcyBsb29wIG1vcmUgdGhhbiBvbmNlIHNpbmNlIHRoZSBmaXJzdCBsb29wIGNhdXNlcyBzb21lIG1lbW9yeQogICAvLyB0byBiZSBhbGxvY2F0ZWQgcGVybWVuYW50bHkuIFJ1biBhbiBleHRyYSBsb29wIHRvIGhlbHAgY2F0Y2ggYW55IHN1YnRsZQpAQCAtNDM0LDE0ICs0OTIsMTQgQEAKICAgc2l6ZV90IGZpbmFsX2J5dGVzID0gbWFsbGluZm8oKS51b3JkYmxrczsKICAgaW50IGxlYWtlZF9ieXRlcyA9IChmaW5hbF9ieXRlcyAtIGluaXRpYWxfYnl0ZXMpOwogCi0gIC8vIFVzZXIgY29kZSAobGlrZSB0aGlzIHRlc3QpIGRvZXNuJ3Qga25vdyBob3cgbGFyZ2UgcHRocmVhZF9pbnRlcm5hbF90IGlzLgotICAvLyBXZSBjYW4gYmUgcHJldHR5IHN1cmUgaXQncyBtb3JlIHRoYW4gMTI4IGJ5dGVzLgotICBBU1NFUlRfTFQobGVha2VkX2J5dGVzLCAzMiAvKnRocmVhZHMqLyAqIDEyOCAvKmJ5dGVzKi8pOworICBBU1NFUlRfRVEoMCwgbGVha2VkX2J5dGVzKTsKIH0KIAogVEVTVChwdGhyZWFkLCBwdGhyZWFkX2dldGNwdWNsb2NraWRfX2Nsb2NrX2dldHRpbWUpIHsKKyAgU3BpbkZ1bmN0aW9uSGVscGVyIHNwaW5oZWxwZXI7CisKICAgcHRocmVhZF90IHQ7Ci0gIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2NyZWF0ZSgmdCwgTlVMTCwgU2xlZXBGbiwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oNSkpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY3JlYXRlKCZ0LCBOVUxMLCBzcGluaGVscGVyLkdldEZ1bmN0aW9uKCksIE5VTEwpKTsKIAogICBjbG9ja2lkX3QgYzsKICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfZ2V0Y3B1Y2xvY2tpZCh0LCAmYykpOwpAQCAtNDc5LDggKzUzNyw3IEBACiAgIHB0aHJlYWRfdCBkZWFkX3RocmVhZDsKICAgTWFrZURlYWRUaHJlYWQoZGVhZF90aHJlYWQpOwogCi0gIHZvaWQqIHJlc3VsdDsKLSAgQVNTRVJUX0VRKEVTUkNILCBwdGhyZWFkX2pvaW4oZGVhZF90aHJlYWQsICZyZXN1bHQpKTsKKyAgQVNTRVJUX0VRKEVTUkNILCBwdGhyZWFkX2pvaW4oZGVhZF90aHJlYWQsIE5VTEwpKTsKIH0KIAogVEVTVChwdGhyZWFkLCBwdGhyZWFkX2tpbGxfX25vX3N1Y2hfdGhyZWFkKSB7CkBAIC00OTEsMTAgKzU0OCwxMCBAQAogfQogCiBURVNUKHB0aHJlYWQsIHB0aHJlYWRfam9pbl9fbXVsdGlqb2luKSB7Ci0gIGJvb2wgZG9uZSA9IGZhbHNlOworICBTcGluRnVuY3Rpb25IZWxwZXIgc3BpbmhlbHBlcjsKIAogICBwdGhyZWFkX3QgdDE7Ci0gIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2NyZWF0ZSgmdDEsIE5VTEwsIFNwaW5GbiwgJmRvbmUpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY3JlYXRlKCZ0MSwgTlVMTCwgc3BpbmhlbHBlci5HZXRGdW5jdGlvbigpLCBOVUxMKSk7CiAKICAgcHRocmVhZF90IHQyOwogICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jcmVhdGUoJnQyLCBOVUxMLCBKb2luRm4sIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KHQxKSkpOwpAQCAtNTA0LDcgKzU2MSw3IEBACiAgIC8vIE11bHRpcGxlIGpvaW5zIHRvIHRoZSBzYW1lIHRocmVhZCBzaG91bGQgZmFpbC4KICAgQVNTRVJUX0VRKEVJTlZBTCwgcHRocmVhZF9qb2luKHQxLCBOVUxMKSk7CiAKLSAgZG9uZSA9IHRydWU7CisgIHNwaW5oZWxwZXIuVW5TcGluKCk7CiAKICAgLy8gLi4uYnV0IHQyJ3Mgam9pbiBvbiB0MSBzdGlsbCBnb2VzIGFoZWFkICh3aGljaCB3ZSBjYW4gdGVsbCBiZWNhdXNlIG91ciBqb2luIG9uIHQyIGZpbmlzaGVzKS4KICAgdm9pZCogam9pbl9yZXN1bHQ7CkBAIC01NDEsOCArNTk4LDcgQEAKICAgc2l6ZV90IHJlc3VsdDsKICAgcHRocmVhZF90IHQ7CiAgIHB0aHJlYWRfY3JlYXRlKCZ0LCAmYXR0cmlidXRlcywgR2V0QWN0dWFsR3VhcmRTaXplRm4sICZyZXN1bHQpOwotICB2b2lkKiBqb2luX3Jlc3VsdDsKLSAgcHRocmVhZF9qb2luKHQsICZqb2luX3Jlc3VsdCk7CisgIHB0aHJlYWRfam9pbih0LCBOVUxMKTsKICAgcmV0dXJuIHJlc3VsdDsKIH0KIApAQCAtNTU3LDggKzYxMyw3IEBACiAgIHNpemVfdCByZXN1bHQ7CiAgIHB0aHJlYWRfdCB0OwogICBwdGhyZWFkX2NyZWF0ZSgmdCwgJmF0dHJpYnV0ZXMsIEdldEFjdHVhbFN0YWNrU2l6ZUZuLCAmcmVzdWx0KTsKLSAgdm9pZCogam9pbl9yZXN1bHQ7Ci0gIHB0aHJlYWRfam9pbih0LCAmam9pbl9yZXN1bHQpOworICBwdGhyZWFkX2pvaW4odCwgTlVMTCk7CiAgIHJldHVybiByZXN1bHQ7CiB9CiAKQEAgLTYwMywyNSArNjU4LDU1IEBACiAgIEFTU0VSVF9FUShkZWZhdWx0X3N0YWNrX3NpemUsIHN0YWNrX3NpemUpOwogICBBU1NFUlRfR0UoR2V0QWN0dWFsU3RhY2tTaXplKGF0dHJpYnV0ZXMpLCBkZWZhdWx0X3N0YWNrX3NpemUpOwogCi0gIC8vIExhcmdlIGVub3VnaCBhbmQgYSBtdWx0aXBsZSBvZiB0aGUgcGFnZSBzaXplLgorICAvLyBMYXJnZSBlbm91Z2ggYW5kIGEgbXVsdGlwbGUgb2YgdGhlIHBhZ2Ugc2l6ZTsgbWF5IGJlIHJvdW5kZWQgdXAgYnkgcHRocmVhZF9jcmVhdGUuCiAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2F0dHJfc2V0c3RhY2tzaXplKCZhdHRyaWJ1dGVzLCAzMioxMDI0KSk7CiAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2F0dHJfZ2V0c3RhY2tzaXplKCZhdHRyaWJ1dGVzLCAmc3RhY2tfc2l6ZSkpOwogICBBU1NFUlRfRVEoMzIqMTAyNFUsIHN0YWNrX3NpemUpOwotICBBU1NFUlRfRVEoR2V0QWN0dWFsU3RhY2tTaXplKGF0dHJpYnV0ZXMpLCAzMioxMDI0VSk7CisgIEFTU0VSVF9HRShHZXRBY3R1YWxTdGFja1NpemUoYXR0cmlidXRlcyksIDMyKjEwMjRVKTsKIAotICAvLyBMYXJnZSBlbm91Z2ggYnV0IG5vdCBhIG11bHRpcGxlIG9mIHRoZSBwYWdlIHNpemU7IHdpbGwgYmUgcm91bmRlZCB1cCBieSBwdGhyZWFkX2NyZWF0ZS4KKyAgLy8gTGFyZ2UgZW5vdWdoIGJ1dCBub3QgYWxpZ25lZDsgd2lsbCBiZSByb3VuZGVkIHVwIGJ5IHB0aHJlYWRfY3JlYXRlLgogICBBU1NFUlRfRVEoMCwgcHRocmVhZF9hdHRyX3NldHN0YWNrc2l6ZSgmYXR0cmlidXRlcywgMzIqMTAyNCArIDEpKTsKICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfYXR0cl9nZXRzdGFja3NpemUoJmF0dHJpYnV0ZXMsICZzdGFja19zaXplKSk7CiAgIEFTU0VSVF9FUSgzMioxMDI0VSArIDEsIHN0YWNrX3NpemUpOwogI2lmIGRlZmluZWQoX19CSU9OSUNfXykKLSAgLy8gQmlvbmljIHJvdW5kcyB1cCwgd2hpY2ggaXMgd2hhdCBQT1NJWCBhbGxvd3MuCi0gIEFTU0VSVF9FUShHZXRBY3R1YWxTdGFja1NpemUoYXR0cmlidXRlcyksICgzMiArIDQpKjEwMjRVKTsKKyAgQVNTRVJUX0dUKEdldEFjdHVhbFN0YWNrU2l6ZShhdHRyaWJ1dGVzKSwgMzIqMTAyNFUgKyAxKTsKICNlbHNlIC8vIF9fQklPTklDX18KICAgLy8gZ2xpYmMgcm91bmRzIGRvd24sIGluIHZpb2xhdGlvbiBvZiBQT1NJWC4gVGhleSBkb2N1bWVudCB0aGlzIGluIHRoZWlyIEJVR1Mgc2VjdGlvbi4KICAgQVNTRVJUX0VRKEdldEFjdHVhbFN0YWNrU2l6ZShhdHRyaWJ1dGVzKSwgMzIqMTAyNFUpOwogI2VuZGlmIC8vIF9fQklPTklDX18KIH0KIAorVEVTVChwdGhyZWFkLCBwdGhyZWFkX3J3bG9ja2F0dHJfc21va2UpIHsKKyAgcHRocmVhZF9yd2xvY2thdHRyX3QgYXR0cjsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrYXR0cl9pbml0KCZhdHRyKSk7CisKKyAgaW50IHBzaGFyZWRfdmFsdWVfYXJyYXlbXSA9IHtQVEhSRUFEX1BST0NFU1NfUFJJVkFURSwgUFRIUkVBRF9QUk9DRVNTX1NIQVJFRH07CisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc2l6ZW9mKHBzaGFyZWRfdmFsdWVfYXJyYXkpIC8gc2l6ZW9mKHBzaGFyZWRfdmFsdWVfYXJyYXlbMF0pOyArK2kpIHsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2thdHRyX3NldHBzaGFyZWQoJmF0dHIsIHBzaGFyZWRfdmFsdWVfYXJyYXlbaV0pKTsKKyAgICBpbnQgcHNoYXJlZDsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2thdHRyX2dldHBzaGFyZWQoJmF0dHIsICZwc2hhcmVkKSk7CisgICAgQVNTRVJUX0VRKHBzaGFyZWRfdmFsdWVfYXJyYXlbaV0sIHBzaGFyZWQpOworICB9CisKKyAgaW50IGtpbmRfYXJyYXlbXSA9IHtQVEhSRUFEX1JXTE9DS19QUkVGRVJfUkVBREVSX05QLAorICAgICAgICAgICAgICAgICAgICAgIFBUSFJFQURfUldMT0NLX1BSRUZFUl9XUklURVJfTk9OUkVDVVJTSVZFX05QfTsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzaXplb2Yoa2luZF9hcnJheSkgLyBzaXplb2Yoa2luZF9hcnJheVswXSk7ICsraSkgeworICAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3J3bG9ja2F0dHJfc2V0a2luZF9ucCgmYXR0ciwga2luZF9hcnJheVtpXSkpOworICAgIGludCBraW5kOworICAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3J3bG9ja2F0dHJfZ2V0a2luZF9ucCgmYXR0ciwgJmtpbmQpKTsKKyAgICBBU1NFUlRfRVEoa2luZF9hcnJheVtpXSwga2luZCk7CisgIH0KKworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2thdHRyX2Rlc3Ryb3koJmF0dHIpKTsKK30KKworVEVTVChwdGhyZWFkLCBwdGhyZWFkX3J3bG9ja19pbml0X3NhbWVfYXNfUFRIUkVBRF9SV0xPQ0tfSU5JVElBTElaRVIpIHsKKyAgcHRocmVhZF9yd2xvY2tfdCBsb2NrMSA9IFBUSFJFQURfUldMT0NLX0lOSVRJQUxJWkVSOworICBwdGhyZWFkX3J3bG9ja190IGxvY2syOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2tfaW5pdCgmbG9jazIsIE5VTEwpKTsKKyAgQVNTRVJUX0VRKDAsIG1lbWNtcCgmbG9jazEsICZsb2NrMiwgc2l6ZW9mKGxvY2sxKSkpOworfQorCiBURVNUKHB0aHJlYWQsIHB0aHJlYWRfcndsb2NrX3Ntb2tlKSB7CiAgIHB0aHJlYWRfcndsb2NrX3QgbDsKICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX2luaXQoJmwsIE5VTEwpKTsKQEAgLTY1Nyw3ICs3NDIsNiBAQAogICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2tfd3Jsb2NrKCZsKSk7CiAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3J3bG9ja191bmxvY2soJmwpKTsKIAotI2lmZGVmIF9fQklPTklDX18KICAgLy8gRURFQURMSyBpbiAicmVhZCBhZnRlciB3cml0ZSIKICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX3dybG9jaygmbCkpOwogICBBU1NFUlRfRVEoRURFQURMSywgcHRocmVhZF9yd2xvY2tfcmRsb2NrKCZsKSk7CkBAIC02NjcsMTEgKzc1MSwyMTIgQEAKICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX3dybG9jaygmbCkpOwogICBBU1NFUlRfRVEoRURFQURMSywgcHRocmVhZF9yd2xvY2tfd3Jsb2NrKCZsKSk7CiAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3J3bG9ja191bmxvY2soJmwpKTsKLSNlbmRpZgogCiAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3J3bG9ja19kZXN0cm95KCZsKSk7CiB9CiAKK3N0YXRpYyB2b2lkIFdhaXRVbnRpbFRocmVhZFNsZWVwKHN0ZDo6YXRvbWljPHBpZF90PiYgcGlkKSB7CisgIHdoaWxlIChwaWQgPT0gMCkgeworICAgIHVzbGVlcCgxMDAwKTsKKyAgfQorICBzdGQ6OnN0cmluZyBmaWxlbmFtZSA9IGFuZHJvaWQ6OmJhc2U6OlN0cmluZ1ByaW50ZigiL3Byb2MvJWQvc3RhdCIsIHBpZC5sb2FkKCkpOworICBzdGQ6OnJlZ2V4IHJlZ2V4IHtSIihccytTXHMrKSJ9OworCisgIHdoaWxlICh0cnVlKSB7CisgICAgc3RkOjpzdHJpbmcgY29udGVudDsKKyAgICBBU1NFUlRfVFJVRShhbmRyb2lkOjpiYXNlOjpSZWFkRmlsZVRvU3RyaW5nKGZpbGVuYW1lLCAmY29udGVudCkpOworICAgIGlmIChzdGQ6OnJlZ2V4X3NlYXJjaChjb250ZW50LCByZWdleCkpIHsKKyAgICAgIGJyZWFrOworICAgIH0KKyAgICB1c2xlZXAoMTAwMCk7CisgIH0KK30KKworc3RydWN0IFJ3bG9ja1dha2V1cEhlbHBlckFyZyB7CisgIHB0aHJlYWRfcndsb2NrX3QgbG9jazsKKyAgZW51bSBQcm9ncmVzcyB7CisgICAgTE9DS19JTklUSUFMSVpFRCwKKyAgICBMT0NLX1dBSVRJTkcsCisgICAgTE9DS19SRUxFQVNFRCwKKyAgICBMT0NLX0FDQ0VTU0VECisgIH07CisgIHN0ZDo6YXRvbWljPFByb2dyZXNzPiBwcm9ncmVzczsKKyAgc3RkOjphdG9taWM8cGlkX3Q+IHRpZDsKK307CisKK3N0YXRpYyB2b2lkIHB0aHJlYWRfcndsb2NrX3JlYWRlcl93YWtldXBfd3JpdGVyX2hlbHBlcihSd2xvY2tXYWtldXBIZWxwZXJBcmcqIGFyZykgeworICBhcmctPnRpZCA9IGdldHRpZCgpOworICBBU1NFUlRfRVEoUndsb2NrV2FrZXVwSGVscGVyQXJnOjpMT0NLX0lOSVRJQUxJWkVELCBhcmctPnByb2dyZXNzKTsKKyAgYXJnLT5wcm9ncmVzcyA9IFJ3bG9ja1dha2V1cEhlbHBlckFyZzo6TE9DS19XQUlUSU5HOworCisgIEFTU0VSVF9FUShFQlVTWSwgcHRocmVhZF9yd2xvY2tfdHJ5d3Jsb2NrKCZhcmctPmxvY2spKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX3dybG9jaygmYXJnLT5sb2NrKSk7CisgIEFTU0VSVF9FUShSd2xvY2tXYWtldXBIZWxwZXJBcmc6OkxPQ0tfUkVMRUFTRUQsIGFyZy0+cHJvZ3Jlc3MpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2tfdW5sb2NrKCZhcmctPmxvY2spKTsKKworICBhcmctPnByb2dyZXNzID0gUndsb2NrV2FrZXVwSGVscGVyQXJnOjpMT0NLX0FDQ0VTU0VEOworfQorCitURVNUKHB0aHJlYWQsIHB0aHJlYWRfcndsb2NrX3JlYWRlcl93YWtldXBfd3JpdGVyKSB7CisgIFJ3bG9ja1dha2V1cEhlbHBlckFyZyB3YWtldXBfYXJnOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2tfaW5pdCgmd2FrZXVwX2FyZy5sb2NrLCBOVUxMKSk7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3J3bG9ja19yZGxvY2soJndha2V1cF9hcmcubG9jaykpOworICB3YWtldXBfYXJnLnByb2dyZXNzID0gUndsb2NrV2FrZXVwSGVscGVyQXJnOjpMT0NLX0lOSVRJQUxJWkVEOworICB3YWtldXBfYXJnLnRpZCA9IDA7CisKKyAgcHRocmVhZF90IHRocmVhZDsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY3JlYXRlKCZ0aHJlYWQsIE5VTEwsCisgICAgcmVpbnRlcnByZXRfY2FzdDx2b2lkKiAoKikodm9pZCopPihwdGhyZWFkX3J3bG9ja19yZWFkZXJfd2FrZXVwX3dyaXRlcl9oZWxwZXIpLCAmd2FrZXVwX2FyZykpOworICBXYWl0VW50aWxUaHJlYWRTbGVlcCh3YWtldXBfYXJnLnRpZCk7CisgIEFTU0VSVF9FUShSd2xvY2tXYWtldXBIZWxwZXJBcmc6OkxPQ0tfV0FJVElORywgd2FrZXVwX2FyZy5wcm9ncmVzcyk7CisKKyAgd2FrZXVwX2FyZy5wcm9ncmVzcyA9IFJ3bG9ja1dha2V1cEhlbHBlckFyZzo6TE9DS19SRUxFQVNFRDsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX3VubG9jaygmd2FrZXVwX2FyZy5sb2NrKSk7CisKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfam9pbih0aHJlYWQsIE5VTEwpKTsKKyAgQVNTRVJUX0VRKFJ3bG9ja1dha2V1cEhlbHBlckFyZzo6TE9DS19BQ0NFU1NFRCwgd2FrZXVwX2FyZy5wcm9ncmVzcyk7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3J3bG9ja19kZXN0cm95KCZ3YWtldXBfYXJnLmxvY2spKTsKK30KKworc3RhdGljIHZvaWQgcHRocmVhZF9yd2xvY2tfd3JpdGVyX3dha2V1cF9yZWFkZXJfaGVscGVyKFJ3bG9ja1dha2V1cEhlbHBlckFyZyogYXJnKSB7CisgIGFyZy0+dGlkID0gZ2V0dGlkKCk7CisgIEFTU0VSVF9FUShSd2xvY2tXYWtldXBIZWxwZXJBcmc6OkxPQ0tfSU5JVElBTElaRUQsIGFyZy0+cHJvZ3Jlc3MpOworICBhcmctPnByb2dyZXNzID0gUndsb2NrV2FrZXVwSGVscGVyQXJnOjpMT0NLX1dBSVRJTkc7CisKKyAgQVNTRVJUX0VRKEVCVVNZLCBwdGhyZWFkX3J3bG9ja190cnlyZGxvY2soJmFyZy0+bG9jaykpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2tfcmRsb2NrKCZhcmctPmxvY2spKTsKKyAgQVNTRVJUX0VRKFJ3bG9ja1dha2V1cEhlbHBlckFyZzo6TE9DS19SRUxFQVNFRCwgYXJnLT5wcm9ncmVzcyk7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3J3bG9ja191bmxvY2soJmFyZy0+bG9jaykpOworCisgIGFyZy0+cHJvZ3Jlc3MgPSBSd2xvY2tXYWtldXBIZWxwZXJBcmc6OkxPQ0tfQUNDRVNTRUQ7Cit9CisKK1RFU1QocHRocmVhZCwgcHRocmVhZF9yd2xvY2tfd3JpdGVyX3dha2V1cF9yZWFkZXIpIHsKKyAgUndsb2NrV2FrZXVwSGVscGVyQXJnIHdha2V1cF9hcmc7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3J3bG9ja19pbml0KCZ3YWtldXBfYXJnLmxvY2ssIE5VTEwpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX3dybG9jaygmd2FrZXVwX2FyZy5sb2NrKSk7CisgIHdha2V1cF9hcmcucHJvZ3Jlc3MgPSBSd2xvY2tXYWtldXBIZWxwZXJBcmc6OkxPQ0tfSU5JVElBTElaRUQ7CisgIHdha2V1cF9hcmcudGlkID0gMDsKKworICBwdGhyZWFkX3QgdGhyZWFkOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jcmVhdGUoJnRocmVhZCwgTlVMTCwKKyAgICByZWludGVycHJldF9jYXN0PHZvaWQqICgqKSh2b2lkKik+KHB0aHJlYWRfcndsb2NrX3dyaXRlcl93YWtldXBfcmVhZGVyX2hlbHBlciksICZ3YWtldXBfYXJnKSk7CisgIFdhaXRVbnRpbFRocmVhZFNsZWVwKHdha2V1cF9hcmcudGlkKTsKKyAgQVNTRVJUX0VRKFJ3bG9ja1dha2V1cEhlbHBlckFyZzo6TE9DS19XQUlUSU5HLCB3YWtldXBfYXJnLnByb2dyZXNzKTsKKworICB3YWtldXBfYXJnLnByb2dyZXNzID0gUndsb2NrV2FrZXVwSGVscGVyQXJnOjpMT0NLX1JFTEVBU0VEOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2tfdW5sb2NrKCZ3YWtldXBfYXJnLmxvY2spKTsKKworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9qb2luKHRocmVhZCwgTlVMTCkpOworICBBU1NFUlRfRVEoUndsb2NrV2FrZXVwSGVscGVyQXJnOjpMT0NLX0FDQ0VTU0VELCB3YWtldXBfYXJnLnByb2dyZXNzKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX2Rlc3Ryb3koJndha2V1cF9hcmcubG9jaykpOworfQorCitjbGFzcyBSd2xvY2tLaW5kVGVzdEhlbHBlciB7CisgcHJpdmF0ZToKKyAgc3RydWN0IFRocmVhZEFyZyB7CisgICAgUndsb2NrS2luZFRlc3RIZWxwZXIqIGhlbHBlcjsKKyAgICBzdGQ6OmF0b21pYzxwaWRfdD4mIHRpZDsKKworICAgIFRocmVhZEFyZyhSd2xvY2tLaW5kVGVzdEhlbHBlciogaGVscGVyLCBzdGQ6OmF0b21pYzxwaWRfdD4mIHRpZCkKKyAgICAgIDogaGVscGVyKGhlbHBlciksIHRpZCh0aWQpIHsgfQorICB9OworCisgcHVibGljOgorICBwdGhyZWFkX3J3bG9ja190IGxvY2s7CisKKyBwdWJsaWM6CisgIFJ3bG9ja0tpbmRUZXN0SGVscGVyKGludCBraW5kX3R5cGUpIHsKKyAgICBJbml0Undsb2NrKGtpbmRfdHlwZSk7CisgIH0KKworICB+Undsb2NrS2luZFRlc3RIZWxwZXIoKSB7CisgICAgRGVzdHJveVJ3bG9jaygpOworICB9CisKKyAgdm9pZCBDcmVhdGVXcml0ZXJUaHJlYWQocHRocmVhZF90JiB0aHJlYWQsIHN0ZDo6YXRvbWljPHBpZF90PiYgdGlkKSB7CisgICAgdGlkID0gMDsKKyAgICBUaHJlYWRBcmcqIGFyZyA9IG5ldyBUaHJlYWRBcmcodGhpcywgdGlkKTsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jcmVhdGUoJnRocmVhZCwgTlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx2b2lkKiAoKikodm9pZCopPihXcml0ZXJUaHJlYWRGbiksIGFyZykpOworICB9CisKKyAgdm9pZCBDcmVhdGVSZWFkZXJUaHJlYWQocHRocmVhZF90JiB0aHJlYWQsIHN0ZDo6YXRvbWljPHBpZF90PiYgdGlkKSB7CisgICAgdGlkID0gMDsKKyAgICBUaHJlYWRBcmcqIGFyZyA9IG5ldyBUaHJlYWRBcmcodGhpcywgdGlkKTsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jcmVhdGUoJnRocmVhZCwgTlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDx2b2lkKiAoKikodm9pZCopPihSZWFkZXJUaHJlYWRGbiksIGFyZykpOworICB9CisKKyBwcml2YXRlOgorICB2b2lkIEluaXRSd2xvY2soaW50IGtpbmRfdHlwZSkgeworICAgIHB0aHJlYWRfcndsb2NrYXR0cl90IGF0dHI7CisgICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrYXR0cl9pbml0KCZhdHRyKSk7CisgICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrYXR0cl9zZXRraW5kX25wKCZhdHRyLCBraW5kX3R5cGUpKTsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2tfaW5pdCgmbG9jaywgJmF0dHIpKTsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2thdHRyX2Rlc3Ryb3koJmF0dHIpKTsKKyAgfQorCisgIHZvaWQgRGVzdHJveVJ3bG9jaygpIHsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2tfZGVzdHJveSgmbG9jaykpOworICB9CisKKyAgc3RhdGljIHZvaWQgV3JpdGVyVGhyZWFkRm4oVGhyZWFkQXJnKiBhcmcpIHsKKyAgICBhcmctPnRpZCA9IGdldHRpZCgpOworCisgICAgUndsb2NrS2luZFRlc3RIZWxwZXIqIGhlbHBlciA9IGFyZy0+aGVscGVyOworICAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3J3bG9ja193cmxvY2soJmhlbHBlci0+bG9jaykpOworICAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3J3bG9ja191bmxvY2soJmhlbHBlci0+bG9jaykpOworICAgIGRlbGV0ZSBhcmc7CisgIH0KKworICBzdGF0aWMgdm9pZCBSZWFkZXJUaHJlYWRGbihUaHJlYWRBcmcqIGFyZykgeworICAgIGFyZy0+dGlkID0gZ2V0dGlkKCk7CisKKyAgICBSd2xvY2tLaW5kVGVzdEhlbHBlciogaGVscGVyID0gYXJnLT5oZWxwZXI7CisgICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX3JkbG9jaygmaGVscGVyLT5sb2NrKSk7CisgICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX3VubG9jaygmaGVscGVyLT5sb2NrKSk7CisgICAgZGVsZXRlIGFyZzsKKyAgfQorfTsKKworVEVTVChwdGhyZWFkLCBwdGhyZWFkX3J3bG9ja19raW5kX1BUSFJFQURfUldMT0NLX1BSRUZFUl9SRUFERVJfTlApIHsKKyAgUndsb2NrS2luZFRlc3RIZWxwZXIgaGVscGVyKFBUSFJFQURfUldMT0NLX1BSRUZFUl9SRUFERVJfTlApOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2tfcmRsb2NrKCZoZWxwZXIubG9jaykpOworCisgIHB0aHJlYWRfdCB3cml0ZXJfdGhyZWFkOworICBzdGQ6OmF0b21pYzxwaWRfdD4gd3JpdGVyX3RpZDsKKyAgaGVscGVyLkNyZWF0ZVdyaXRlclRocmVhZCh3cml0ZXJfdGhyZWFkLCB3cml0ZXJfdGlkKTsKKyAgV2FpdFVudGlsVGhyZWFkU2xlZXAod3JpdGVyX3RpZCk7CisKKyAgcHRocmVhZF90IHJlYWRlcl90aHJlYWQ7CisgIHN0ZDo6YXRvbWljPHBpZF90PiByZWFkZXJfdGlkOworICBoZWxwZXIuQ3JlYXRlUmVhZGVyVGhyZWFkKHJlYWRlcl90aHJlYWQsIHJlYWRlcl90aWQpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9qb2luKHJlYWRlcl90aHJlYWQsIE5VTEwpKTsKKworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2tfdW5sb2NrKCZoZWxwZXIubG9jaykpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9qb2luKHdyaXRlcl90aHJlYWQsIE5VTEwpKTsKK30KKworVEVTVChwdGhyZWFkLCBwdGhyZWFkX3J3bG9ja19raW5kX1BUSFJFQURfUldMT0NLX1BSRUZFUl9XUklURVJfTk9OUkVDVVJTSVZFX05QKSB7CisgIFJ3bG9ja0tpbmRUZXN0SGVscGVyIGhlbHBlcihQVEhSRUFEX1JXTE9DS19QUkVGRVJfV1JJVEVSX05PTlJFQ1VSU0lWRV9OUCk7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3J3bG9ja19yZGxvY2soJmhlbHBlci5sb2NrKSk7CisKKyAgcHRocmVhZF90IHdyaXRlcl90aHJlYWQ7CisgIHN0ZDo6YXRvbWljPHBpZF90PiB3cml0ZXJfdGlkOworICBoZWxwZXIuQ3JlYXRlV3JpdGVyVGhyZWFkKHdyaXRlcl90aHJlYWQsIHdyaXRlcl90aWQpOworICBXYWl0VW50aWxUaHJlYWRTbGVlcCh3cml0ZXJfdGlkKTsKKworICBwdGhyZWFkX3QgcmVhZGVyX3RocmVhZDsKKyAgc3RkOjphdG9taWM8cGlkX3Q+IHJlYWRlcl90aWQ7CisgIGhlbHBlci5DcmVhdGVSZWFkZXJUaHJlYWQocmVhZGVyX3RocmVhZCwgcmVhZGVyX3RpZCk7CisgIFdhaXRVbnRpbFRocmVhZFNsZWVwKHJlYWRlcl90aWQpOworCisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX3J3bG9ja191bmxvY2soJmhlbHBlci5sb2NrKSk7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2pvaW4od3JpdGVyX3RocmVhZCwgTlVMTCkpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9qb2luKHJlYWRlcl90aHJlYWQsIE5VTEwpKTsKK30KKwogc3RhdGljIGludCBnX29uY2VfZm5fY2FsbF9jb3VudCA9IDA7CiBzdGF0aWMgdm9pZCBPbmNlRm4oKSB7CiAgICsrZ19vbmNlX2ZuX2NhbGxfY291bnQ7CkBAIC03MDUsMTYgKzk5MCwxNiBAQAogfQogCiBzdGF0aWMgaW50IGdfYXRmb3JrX3ByZXBhcmVfY2FsbHMgPSAwOwotc3RhdGljIHZvaWQgQXRGb3JrUHJlcGFyZTEoKSB7IGdfYXRmb3JrX3ByZXBhcmVfY2FsbHMgPSAoZ19hdGZvcmtfcHJlcGFyZV9jYWxscyA8PCA0KSB8IDE7IH0KLXN0YXRpYyB2b2lkIEF0Rm9ya1ByZXBhcmUyKCkgeyBnX2F0Zm9ya19wcmVwYXJlX2NhbGxzID0gKGdfYXRmb3JrX3ByZXBhcmVfY2FsbHMgPDwgNCkgfCAyOyB9CitzdGF0aWMgdm9pZCBBdEZvcmtQcmVwYXJlMSgpIHsgZ19hdGZvcmtfcHJlcGFyZV9jYWxscyA9IChnX2F0Zm9ya19wcmVwYXJlX2NhbGxzICogMTApICsgMTsgfQorc3RhdGljIHZvaWQgQXRGb3JrUHJlcGFyZTIoKSB7IGdfYXRmb3JrX3ByZXBhcmVfY2FsbHMgPSAoZ19hdGZvcmtfcHJlcGFyZV9jYWxscyAqIDEwKSArIDI7IH0KIHN0YXRpYyBpbnQgZ19hdGZvcmtfcGFyZW50X2NhbGxzID0gMDsKLXN0YXRpYyB2b2lkIEF0Rm9ya1BhcmVudDEoKSB7IGdfYXRmb3JrX3BhcmVudF9jYWxscyA9IChnX2F0Zm9ya19wYXJlbnRfY2FsbHMgPDwgNCkgfCAxOyB9Ci1zdGF0aWMgdm9pZCBBdEZvcmtQYXJlbnQyKCkgeyBnX2F0Zm9ya19wYXJlbnRfY2FsbHMgPSAoZ19hdGZvcmtfcGFyZW50X2NhbGxzIDw8IDQpIHwgMjsgfQorc3RhdGljIHZvaWQgQXRGb3JrUGFyZW50MSgpIHsgZ19hdGZvcmtfcGFyZW50X2NhbGxzID0gKGdfYXRmb3JrX3BhcmVudF9jYWxscyAqIDEwKSArIDE7IH0KK3N0YXRpYyB2b2lkIEF0Rm9ya1BhcmVudDIoKSB7IGdfYXRmb3JrX3BhcmVudF9jYWxscyA9IChnX2F0Zm9ya19wYXJlbnRfY2FsbHMgKiAxMCkgKyAyOyB9CiBzdGF0aWMgaW50IGdfYXRmb3JrX2NoaWxkX2NhbGxzID0gMDsKLXN0YXRpYyB2b2lkIEF0Rm9ya0NoaWxkMSgpIHsgZ19hdGZvcmtfY2hpbGRfY2FsbHMgPSAoZ19hdGZvcmtfY2hpbGRfY2FsbHMgPDwgNCkgfCAxOyB9Ci1zdGF0aWMgdm9pZCBBdEZvcmtDaGlsZDIoKSB7IGdfYXRmb3JrX2NoaWxkX2NhbGxzID0gKGdfYXRmb3JrX2NoaWxkX2NhbGxzIDw8IDQpIHwgMjsgfQorc3RhdGljIHZvaWQgQXRGb3JrQ2hpbGQxKCkgeyBnX2F0Zm9ya19jaGlsZF9jYWxscyA9IChnX2F0Zm9ya19jaGlsZF9jYWxscyAqIDEwKSArIDE7IH0KK3N0YXRpYyB2b2lkIEF0Rm9ya0NoaWxkMigpIHsgZ19hdGZvcmtfY2hpbGRfY2FsbHMgPSAoZ19hdGZvcmtfY2hpbGRfY2FsbHMgKiAxMCkgKyAyOyB9CiAKLVRFU1QocHRocmVhZCwgcHRocmVhZF9hdGZvcmspIHsKK1RFU1QocHRocmVhZCwgcHRocmVhZF9hdGZvcmtfc21va2UpIHsKICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfYXRmb3JrKEF0Rm9ya1ByZXBhcmUxLCBBdEZvcmtQYXJlbnQxLCBBdEZvcmtDaGlsZDEpKTsKICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfYXRmb3JrKEF0Rm9ya1ByZXBhcmUyLCBBdEZvcmtQYXJlbnQyLCBBdEZvcmtDaGlsZDIpKTsKIApAQCAtNzIzLDEzICsxMDA4LDcxIEBACiAKICAgLy8gQ2hpbGQgYW5kIHBhcmVudCBjYWxscyBhcmUgbWFkZSBpbiB0aGUgb3JkZXIgdGhleSB3ZXJlIHJlZ2lzdGVyZWQuCiAgIGlmIChwaWQgPT0gMCkgewotICAgIEFTU0VSVF9FUSgweDEyLCBnX2F0Zm9ya19jaGlsZF9jYWxscyk7CisgICAgQVNTRVJUX0VRKDEyLCBnX2F0Zm9ya19jaGlsZF9jYWxscyk7CiAgICAgX2V4aXQoMCk7CiAgIH0KLSAgQVNTRVJUX0VRKDB4MTIsIGdfYXRmb3JrX3BhcmVudF9jYWxscyk7CisgIEFTU0VSVF9FUSgxMiwgZ19hdGZvcmtfcGFyZW50X2NhbGxzKTsKIAogICAvLyBQcmVwYXJlIGNhbGxzIGFyZSBtYWRlIGluIHRoZSByZXZlcnNlIG9yZGVyLgotICBBU1NFUlRfRVEoMHgyMSwgZ19hdGZvcmtfcHJlcGFyZV9jYWxscyk7CisgIEFTU0VSVF9FUSgyMSwgZ19hdGZvcmtfcHJlcGFyZV9jYWxscyk7CisgIGludCBzdGF0dXM7CisgIEFTU0VSVF9FUShwaWQsIHdhaXRwaWQocGlkLCAmc3RhdHVzLCAwKSk7Cit9CisKK3N0YXRpYyB2b2lkIEF0Rm9ya1ByZXBhcmUzKCkgeyBnX2F0Zm9ya19wcmVwYXJlX2NhbGxzID0gKGdfYXRmb3JrX3ByZXBhcmVfY2FsbHMgKiAxMCkgKyAzOyB9CitzdGF0aWMgdm9pZCBBdEZvcmtQcmVwYXJlNCgpIHsgZ19hdGZvcmtfcHJlcGFyZV9jYWxscyA9IChnX2F0Zm9ya19wcmVwYXJlX2NhbGxzICogMTApICsgNDsgfQorCitzdGF0aWMgdm9pZCBBdEZvcmtQYXJlbnQzKCkgeyBnX2F0Zm9ya19wYXJlbnRfY2FsbHMgPSAoZ19hdGZvcmtfcGFyZW50X2NhbGxzICogMTApICsgMzsgfQorc3RhdGljIHZvaWQgQXRGb3JrUGFyZW50NCgpIHsgZ19hdGZvcmtfcGFyZW50X2NhbGxzID0gKGdfYXRmb3JrX3BhcmVudF9jYWxscyAqIDEwKSArIDQ7IH0KKworc3RhdGljIHZvaWQgQXRGb3JrQ2hpbGQzKCkgeyBnX2F0Zm9ya19jaGlsZF9jYWxscyA9IChnX2F0Zm9ya19jaGlsZF9jYWxscyAqIDEwKSArIDM7IH0KK3N0YXRpYyB2b2lkIEF0Rm9ya0NoaWxkNCgpIHsgZ19hdGZvcmtfY2hpbGRfY2FsbHMgPSAoZ19hdGZvcmtfY2hpbGRfY2FsbHMgKiAxMCkgKyA0OyB9CisKK1RFU1QocHRocmVhZCwgcHRocmVhZF9hdGZvcmtfd2l0aF9kbGNsb3NlKSB7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2F0Zm9yayhBdEZvcmtQcmVwYXJlMSwgQXRGb3JrUGFyZW50MSwgQXRGb3JrQ2hpbGQxKSk7CisKKyAgdm9pZCogaGFuZGxlID0gZGxvcGVuKCJsaWJ0ZXN0X3B0aHJlYWRfYXRmb3JrLnNvIiwgUlRMRF9OT1cgfCBSVExEX0xPQ0FMKTsKKyAgQVNTRVJUX1RSVUUoaGFuZGxlICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgdHlwZWRlZiBpbnQgKCpmbl90KSh2b2lkICgqKSh2b2lkKSwgdm9pZCAoKikodm9pZCksIHZvaWQgKCopKHZvaWQpKTsKKyAgZm5fdCBmbiA9IHJlaW50ZXJwcmV0X2Nhc3Q8Zm5fdD4oZGxzeW0oaGFuZGxlLCAicHJveHlfcHRocmVhZF9hdGZvcmsiKSk7CisgIEFTU0VSVF9UUlVFKGZuICE9IG51bGxwdHIpIDw8IGRsZXJyb3IoKTsKKyAgLy8gdGhlIGxpYnJhcnkgcmVnaXN0ZXJzIDIgYWRkaXRpb25hbCBhdGZvcmsgaGFuZGxlcnMgaW4gYSBjb25zdHJ1Y3RvcgorICBBU1NFUlRfRVEoMCwgZm4oQXRGb3JrUHJlcGFyZTIsIEF0Rm9ya1BhcmVudDIsIEF0Rm9ya0NoaWxkMikpOworICBBU1NFUlRfRVEoMCwgZm4oQXRGb3JrUHJlcGFyZTMsIEF0Rm9ya1BhcmVudDMsIEF0Rm9ya0NoaWxkMykpOworCisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2F0Zm9yayhBdEZvcmtQcmVwYXJlNCwgQXRGb3JrUGFyZW50NCwgQXRGb3JrQ2hpbGQ0KSk7CisKKyAgaW50IHBpZCA9IGZvcmsoKTsKKworICBBU1NFUlRfTkUoLTEsIHBpZCkgPDwgc3RyZXJyb3IoZXJybm8pOworCisgIGlmIChwaWQgPT0gMCkgeworICAgIEFTU0VSVF9FUSgxMjM0LCBnX2F0Zm9ya19jaGlsZF9jYWxscyk7CisgICAgX2V4aXQoMCk7CisgIH0KKworICBBU1NFUlRfRVEoMTIzNCwgZ19hdGZvcmtfcGFyZW50X2NhbGxzKTsKKyAgQVNTRVJUX0VRKDQzMjEsIGdfYXRmb3JrX3ByZXBhcmVfY2FsbHMpOworCisgIEVYUEVDVF9FUSgwLCBkbGNsb3NlKGhhbmRsZSkpOworICBnX2F0Zm9ya19wcmVwYXJlX2NhbGxzID0gZ19hdGZvcmtfcGFyZW50X2NhbGxzID0gZ19hdGZvcmtfY2hpbGRfY2FsbHMgPSAwOworCisgIGludCBzdGF0dXM7CisgIEFTU0VSVF9FUShwaWQsIHdhaXRwaWQocGlkLCAmc3RhdHVzLCAwKSk7CisKKyAgcGlkID0gZm9yaygpOworCisgIEFTU0VSVF9ORSgtMSwgcGlkKSA8PCBzdHJlcnJvcihlcnJubyk7CisKKyAgaWYgKHBpZCA9PSAwKSB7CisgICAgQVNTRVJUX0VRKDE0LCBnX2F0Zm9ya19jaGlsZF9jYWxscyk7CisgICAgX2V4aXQoMCk7CisgIH0KKworICBBU1NFUlRfRVEoMTQsIGdfYXRmb3JrX3BhcmVudF9jYWxscyk7CisgIEFTU0VSVF9FUSg0MSwgZ19hdGZvcmtfcHJlcGFyZV9jYWxscyk7CisKKyAgQVNTRVJUX0VRKHBpZCwgd2FpdHBpZChwaWQsICZzdGF0dXMsIDApKTsKIH0KIAogVEVTVChwdGhyZWFkLCBwdGhyZWFkX2F0dHJfZ2V0c2NvcGUpIHsKQEAgLTc3MSw3ICsxMTE0LDcgQEAKIH0KIAogVEVTVChwdGhyZWFkLCBwdGhyZWFkX2NvbmRfYnJvYWRjYXN0X19wcmVzZXJ2ZXNfY29uZGF0dHJfZmxhZ3MpIHsKLSNpZiBkZWZpbmVkKF9fQklPTklDX18pIC8vIFRoaXMgdGVzdHMgYSBiaW9uaWMgaW1wbGVtZW50YXRpb24gZGV0YWlsLgorI2lmIGRlZmluZWQoX19CSU9OSUNfXykKICAgcHRocmVhZF9jb25kYXR0cl90IGF0dHI7CiAgIHB0aHJlYWRfY29uZGF0dHJfaW5pdCgmYXR0cik7CiAKQEAgLTc4NCwxNiArMTEyNyw3OCBAQAogICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jb25kX3NpZ25hbCgmY29uZF92YXIpKTsKICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY29uZF9icm9hZGNhc3QoJmNvbmRfdmFyKSk7CiAKLSAgYXR0ciA9IHN0YXRpY19jYXN0PHB0aHJlYWRfY29uZGF0dHJfdD4oY29uZF92YXIudmFsdWUpOworICBhdHRyID0gc3RhdGljX2Nhc3Q8cHRocmVhZF9jb25kYXR0cl90PigqcmVpbnRlcnByZXRfY2FzdDx1aW50MzJfdCo+KGNvbmRfdmFyLl9fcHJpdmF0ZSkpOwogICBjbG9ja2lkX3QgY2xvY2s7CiAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2NvbmRhdHRyX2dldGNsb2NrKCZhdHRyLCAmY2xvY2spKTsKICAgQVNTRVJUX0VRKENMT0NLX01PTk9UT05JQywgY2xvY2spOwogICBpbnQgcHNoYXJlZDsKICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY29uZGF0dHJfZ2V0cHNoYXJlZCgmYXR0ciwgJnBzaGFyZWQpKTsKICAgQVNTRVJUX0VRKFBUSFJFQURfUFJPQ0VTU19TSEFSRUQsIHBzaGFyZWQpOwotI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCisjZWxzZSAgLy8gIWRlZmluZWQoX19CSU9OSUNfXykKKyAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0cyBhIGJpb25pYyBpbXBsZW1lbnRhdGlvbiBkZXRhaWwuXG4iOworI2VuZGlmICAvLyAhZGVmaW5lZChfX0JJT05JQ19fKQorfQorCitjbGFzcyBwdGhyZWFkX0NvbmRXYWtldXBUZXN0IDogcHVibGljIDo6dGVzdGluZzo6VGVzdCB7CisgcHJvdGVjdGVkOgorICBwdGhyZWFkX211dGV4X3QgbXV0ZXg7CisgIHB0aHJlYWRfY29uZF90IGNvbmQ7CisKKyAgZW51bSBQcm9ncmVzcyB7CisgICAgSU5JVElBTElaRUQsCisgICAgV0FJVElORywKKyAgICBTSUdOQUxFRCwKKyAgICBGSU5JU0hFRCwKKyAgfTsKKyAgc3RkOjphdG9taWM8UHJvZ3Jlc3M+IHByb2dyZXNzOworICBwdGhyZWFkX3QgdGhyZWFkOworCisgcHJvdGVjdGVkOgorICB2aXJ0dWFsIHZvaWQgU2V0VXAoKSB7CisgICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhfaW5pdCgmbXV0ZXgsIE5VTEwpKTsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jb25kX2luaXQoJmNvbmQsIE5VTEwpKTsKKyAgICBwcm9ncmVzcyA9IElOSVRJQUxJWkVEOworICAgIEFTU0VSVF9FUSgwLAorICAgICAgcHRocmVhZF9jcmVhdGUoJnRocmVhZCwgTlVMTCwgcmVpbnRlcnByZXRfY2FzdDx2b2lkKiAoKikodm9pZCopPihXYWl0VGhyZWFkRm4pLCB0aGlzKSk7CisgIH0KKworICB2aXJ0dWFsIHZvaWQgVGVhckRvd24oKSB7CisgICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfam9pbih0aHJlYWQsIE5VTEwpKTsKKyAgICBBU1NFUlRfRVEoRklOSVNIRUQsIHByb2dyZXNzKTsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jb25kX2Rlc3Ryb3koJmNvbmQpKTsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleF9kZXN0cm95KCZtdXRleCkpOworICB9CisKKyAgdm9pZCBTbGVlcFVudGlsUHJvZ3Jlc3MoUHJvZ3Jlc3MgZXhwZWN0ZWRfcHJvZ3Jlc3MpIHsKKyAgICB3aGlsZSAocHJvZ3Jlc3MgIT0gZXhwZWN0ZWRfcHJvZ3Jlc3MpIHsKKyAgICAgIHVzbGVlcCg1MDAwKTsKKyAgICB9CisgICAgdXNsZWVwKDUwMDApOworICB9CisKKyBwcml2YXRlOgorICBzdGF0aWMgdm9pZCBXYWl0VGhyZWFkRm4ocHRocmVhZF9Db25kV2FrZXVwVGVzdCogdGVzdCkgeworICAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX211dGV4X2xvY2soJnRlc3QtPm11dGV4KSk7CisgICAgdGVzdC0+cHJvZ3Jlc3MgPSBXQUlUSU5HOworICAgIHdoaWxlICh0ZXN0LT5wcm9ncmVzcyA9PSBXQUlUSU5HKSB7CisgICAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jb25kX3dhaXQoJnRlc3QtPmNvbmQsICZ0ZXN0LT5tdXRleCkpOworICAgIH0KKyAgICBBU1NFUlRfRVEoU0lHTkFMRUQsIHRlc3QtPnByb2dyZXNzKTsKKyAgICB0ZXN0LT5wcm9ncmVzcyA9IEZJTklTSEVEOworICAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX211dGV4X3VubG9jaygmdGVzdC0+bXV0ZXgpKTsKKyAgfQorfTsKKworVEVTVF9GKHB0aHJlYWRfQ29uZFdha2V1cFRlc3QsIHNpZ25hbCkgeworICBTbGVlcFVudGlsUHJvZ3Jlc3MoV0FJVElORyk7CisgIHByb2dyZXNzID0gU0lHTkFMRUQ7CisgIHB0aHJlYWRfY29uZF9zaWduYWwoJmNvbmQpOworfQorCitURVNUX0YocHRocmVhZF9Db25kV2FrZXVwVGVzdCwgYnJvYWRjYXN0KSB7CisgIFNsZWVwVW50aWxQcm9ncmVzcyhXQUlUSU5HKTsKKyAgcHJvZ3Jlc3MgPSBTSUdOQUxFRDsKKyAgcHRocmVhZF9jb25kX2Jyb2FkY2FzdCgmY29uZCk7CiB9CiAKIFRFU1QocHRocmVhZCwgcHRocmVhZF9tdXRleF90aW1lZGxvY2spIHsKQEAgLTkwNywzICsxMzEyLDMyMSBAQAogICBFWFBFQ1RfRVEoc3RhY2tfc2l6ZSwgc3RhY2tfc2l6ZTIpOwogICBBU1NFUlRfRVEoNjY2NlUsIHN0YWNrX3NpemUpOwogfQorCitzdGF0aWMgdm9pZCBwdGhyZWFkX2F0dHJfZ2V0c3RhY2tfMTg5MDgwNjJfaGVscGVyKHZvaWQqKSB7CisgIGNoYXIgbG9jYWxfdmFyaWFibGU7CisgIHB0aHJlYWRfYXR0cl90IGF0dHJpYnV0ZXM7CisgIHB0aHJlYWRfZ2V0YXR0cl9ucChwdGhyZWFkX3NlbGYoKSwgJmF0dHJpYnV0ZXMpOworICB2b2lkKiBzdGFja19iYXNlOworICBzaXplX3Qgc3RhY2tfc2l6ZTsKKyAgcHRocmVhZF9hdHRyX2dldHN0YWNrKCZhdHRyaWJ1dGVzLCAmc3RhY2tfYmFzZSwgJnN0YWNrX3NpemUpOworCisgIC8vIFRlc3Qgd2hldGhlciAmbG9jYWxfdmFyaWFibGUgaXMgaW4gW3N0YWNrX2Jhc2UsIHN0YWNrX2Jhc2UgKyBzdGFja19zaXplKS4KKyAgQVNTRVJUX0xFKHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KHN0YWNrX2Jhc2UpLCAmbG9jYWxfdmFyaWFibGUpOworICBBU1NFUlRfTFQoJmxvY2FsX3ZhcmlhYmxlLCByZWludGVycHJldF9jYXN0PGNoYXIqPihzdGFja19iYXNlKSArIHN0YWNrX3NpemUpOworfQorCisvLyBDaGVjayB3aGV0aGVyIHNvbWV0aGluZyBvbiBzdGFjayBpcyBpbiB0aGUgcmFuZ2Ugb2YKKy8vIFtzdGFja19iYXNlLCBzdGFja19iYXNlICsgc3RhY2tfc2l6ZSkuIHNlZSBiLzE4OTA4MDYyLgorVEVTVChwdGhyZWFkLCBwdGhyZWFkX2F0dHJfZ2V0c3RhY2tfMTg5MDgwNjIpIHsKKyAgcHRocmVhZF90IHQ7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2NyZWF0ZSgmdCwgTlVMTCwKKyAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCogKCopKHZvaWQqKT4ocHRocmVhZF9hdHRyX2dldHN0YWNrXzE4OTA4MDYyX2hlbHBlciksCisgICAgICAgICAgICBOVUxMKSk7CisgIHB0aHJlYWRfam9pbih0LCBOVUxMKTsKK30KKworI2lmIGRlZmluZWQoX19CSU9OSUNfXykKK3N0YXRpYyB2b2lkKiBwdGhyZWFkX2dldHRpZF9ucF9oZWxwZXIodm9pZCogYXJnKSB7CisgICpyZWludGVycHJldF9jYXN0PHBpZF90Kj4oYXJnKSA9IGdldHRpZCgpOworICByZXR1cm4gTlVMTDsKK30KKyNlbmRpZgorCitURVNUKHB0aHJlYWQsIHB0aHJlYWRfZ2V0dGlkX25wKSB7CisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorICBBU1NFUlRfRVEoZ2V0dGlkKCksIHB0aHJlYWRfZ2V0dGlkX25wKHB0aHJlYWRfc2VsZigpKSk7CisKKyAgcGlkX3QgdF9nZXR0aWRfcmVzdWx0OworICBwdGhyZWFkX3QgdDsKKyAgcHRocmVhZF9jcmVhdGUoJnQsIE5VTEwsIHB0aHJlYWRfZ2V0dGlkX25wX2hlbHBlciwgJnRfZ2V0dGlkX3Jlc3VsdCk7CisKKyAgcGlkX3QgdF9wdGhyZWFkX2dldHRpZF9ucF9yZXN1bHQgPSBwdGhyZWFkX2dldHRpZF9ucCh0KTsKKworICBwdGhyZWFkX2pvaW4odCwgTlVMTCk7CisKKyAgQVNTRVJUX0VRKHRfZ2V0dGlkX3Jlc3VsdCwgdF9wdGhyZWFkX2dldHRpZF9ucF9yZXN1bHQpOworI2Vsc2UKKyAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7CisjZW5kaWYKK30KKworc3RhdGljIHNpemVfdCBjbGVhbnVwX2NvdW50ZXIgPSAwOworCitzdGF0aWMgdm9pZCBBYm9ydENsZWFudXBSb3V0aW5lKHZvaWQqKSB7CisgIGFib3J0KCk7Cit9CisKK3N0YXRpYyB2b2lkIENvdW50Q2xlYW51cFJvdXRpbmUodm9pZCopIHsKKyAgKytjbGVhbnVwX2NvdW50ZXI7Cit9CisKK3N0YXRpYyB2b2lkIFB0aHJlYWRDbGVhbnVwVGVzdGVyKCkgeworICBwdGhyZWFkX2NsZWFudXBfcHVzaChDb3VudENsZWFudXBSb3V0aW5lLCBOVUxMKTsKKyAgcHRocmVhZF9jbGVhbnVwX3B1c2goQ291bnRDbGVhbnVwUm91dGluZSwgTlVMTCk7CisgIHB0aHJlYWRfY2xlYW51cF9wdXNoKEFib3J0Q2xlYW51cFJvdXRpbmUsIE5VTEwpOworCisgIHB0aHJlYWRfY2xlYW51cF9wb3AoMCk7IC8vIFBvcCB0aGUgYWJvcnQgd2l0aG91dCBleGVjdXRpbmcgaXQuCisgIHB0aHJlYWRfY2xlYW51cF9wb3AoMSk7IC8vIFBvcCBvbmUgY291bnQgd2hpbGUgZXhlY3V0aW5nIGl0LgorICBBU1NFUlRfRVEoMVUsIGNsZWFudXBfY291bnRlcik7CisgIC8vIEV4aXQgd2hpbGUgdGhlIG90aGVyIGNvdW50IGlzIHN0aWxsIG9uIHRoZSBjbGVhbnVwIHN0YWNrLgorICBwdGhyZWFkX2V4aXQoTlVMTCk7CisKKyAgLy8gQ2FsbHMgdG8gcHRocmVhZF9jbGVhbnVwX3BvcC9wdGhyZWFkX2NsZWFudXBfcHVzaCBtdXN0IGFsd2F5cyBiZSBiYWxhbmNlZC4KKyAgcHRocmVhZF9jbGVhbnVwX3BvcCgwKTsKK30KKworc3RhdGljIHZvaWQqIFB0aHJlYWRDbGVhbnVwU3RhcnRSb3V0aW5lKHZvaWQqKSB7CisgIFB0aHJlYWRDbGVhbnVwVGVzdGVyKCk7CisgIHJldHVybiBOVUxMOworfQorCitURVNUKHB0aHJlYWQsIHB0aHJlYWRfY2xlYW51cF9wdXNoX19wdGhyZWFkX2NsZWFudXBfcG9wKSB7CisgIHB0aHJlYWRfdCB0OworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jcmVhdGUoJnQsIE5VTEwsIFB0aHJlYWRDbGVhbnVwU3RhcnRSb3V0aW5lLCBOVUxMKSk7CisgIHB0aHJlYWRfam9pbih0LCBOVUxMKTsKKyAgQVNTRVJUX0VRKDJVLCBjbGVhbnVwX2NvdW50ZXIpOworfQorCitURVNUKHB0aHJlYWQsIFBUSFJFQURfTVVURVhfREVGQVVMVF9pc19QVEhSRUFEX01VVEVYX05PUk1BTCkgeworICBBU1NFUlRfRVEoUFRIUkVBRF9NVVRFWF9OT1JNQUwsIFBUSFJFQURfTVVURVhfREVGQVVMVCk7Cit9CisKK1RFU1QocHRocmVhZCwgcHRocmVhZF9tdXRleGF0dHJfZ2V0dHlwZSkgeworICBwdGhyZWFkX211dGV4YXR0cl90IGF0dHI7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX211dGV4YXR0cl9pbml0KCZhdHRyKSk7CisKKyAgaW50IGF0dHJfdHlwZTsKKworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleGF0dHJfc2V0dHlwZSgmYXR0ciwgUFRIUkVBRF9NVVRFWF9OT1JNQUwpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhhdHRyX2dldHR5cGUoJmF0dHIsICZhdHRyX3R5cGUpKTsKKyAgQVNTRVJUX0VRKFBUSFJFQURfTVVURVhfTk9STUFMLCBhdHRyX3R5cGUpOworCisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX211dGV4YXR0cl9zZXR0eXBlKCZhdHRyLCBQVEhSRUFEX01VVEVYX0VSUk9SQ0hFQ0spKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhhdHRyX2dldHR5cGUoJmF0dHIsICZhdHRyX3R5cGUpKTsKKyAgQVNTRVJUX0VRKFBUSFJFQURfTVVURVhfRVJST1JDSEVDSywgYXR0cl90eXBlKTsKKworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleGF0dHJfc2V0dHlwZSgmYXR0ciwgUFRIUkVBRF9NVVRFWF9SRUNVUlNJVkUpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhhdHRyX2dldHR5cGUoJmF0dHIsICZhdHRyX3R5cGUpKTsKKyAgQVNTRVJUX0VRKFBUSFJFQURfTVVURVhfUkVDVVJTSVZFLCBhdHRyX3R5cGUpOworCisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX211dGV4YXR0cl9kZXN0cm95KCZhdHRyKSk7Cit9CisKK3N0cnVjdCBQdGhyZWFkTXV0ZXggeworICBwdGhyZWFkX211dGV4X3QgbG9jazsKKworICBQdGhyZWFkTXV0ZXgoaW50IG11dGV4X3R5cGUpIHsKKyAgICBpbml0KG11dGV4X3R5cGUpOworICB9CisKKyAgflB0aHJlYWRNdXRleCgpIHsKKyAgICBkZXN0cm95KCk7CisgIH0KKworIHByaXZhdGU6CisgIHZvaWQgaW5pdChpbnQgbXV0ZXhfdHlwZSkgeworICAgIHB0aHJlYWRfbXV0ZXhhdHRyX3QgYXR0cjsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleGF0dHJfaW5pdCgmYXR0cikpOworICAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX211dGV4YXR0cl9zZXR0eXBlKCZhdHRyLCBtdXRleF90eXBlKSk7CisgICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhfaW5pdCgmbG9jaywgJmF0dHIpKTsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleGF0dHJfZGVzdHJveSgmYXR0cikpOworICB9CisKKyAgdm9pZCBkZXN0cm95KCkgeworICAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX211dGV4X2Rlc3Ryb3koJmxvY2spKTsKKyAgfQorCisgIERJU0FMTE9XX0NPUFlfQU5EX0FTU0lHTihQdGhyZWFkTXV0ZXgpOworfTsKKworVEVTVChwdGhyZWFkLCBwdGhyZWFkX211dGV4X2xvY2tfTk9STUFMKSB7CisgIFB0aHJlYWRNdXRleCBtKFBUSFJFQURfTVVURVhfTk9STUFMKTsKKworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleF9sb2NrKCZtLmxvY2spKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZtLmxvY2spKTsKK30KKworVEVTVChwdGhyZWFkLCBwdGhyZWFkX211dGV4X2xvY2tfRVJST1JDSEVDSykgeworICBQdGhyZWFkTXV0ZXggbShQVEhSRUFEX01VVEVYX0VSUk9SQ0hFQ0spOworCisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX211dGV4X2xvY2soJm0ubG9jaykpOworICBBU1NFUlRfRVEoRURFQURMSywgcHRocmVhZF9tdXRleF9sb2NrKCZtLmxvY2spKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZtLmxvY2spKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhfdHJ5bG9jaygmbS5sb2NrKSk7CisgIEFTU0VSVF9FUShFQlVTWSwgcHRocmVhZF9tdXRleF90cnlsb2NrKCZtLmxvY2spKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZtLmxvY2spKTsKKyAgQVNTRVJUX0VRKEVQRVJNLCBwdGhyZWFkX211dGV4X3VubG9jaygmbS5sb2NrKSk7Cit9CisKK1RFU1QocHRocmVhZCwgcHRocmVhZF9tdXRleF9sb2NrX1JFQ1VSU0lWRSkgeworICBQdGhyZWFkTXV0ZXggbShQVEhSRUFEX01VVEVYX1JFQ1VSU0lWRSk7CisKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhfbG9jaygmbS5sb2NrKSk7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX211dGV4X2xvY2soJm0ubG9jaykpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleF91bmxvY2soJm0ubG9jaykpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleF91bmxvY2soJm0ubG9jaykpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleF90cnlsb2NrKCZtLmxvY2spKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZtLmxvY2spKTsKKyAgQVNTRVJUX0VRKEVQRVJNLCBwdGhyZWFkX211dGV4X3VubG9jaygmbS5sb2NrKSk7Cit9CisKK1RFU1QocHRocmVhZCwgcHRocmVhZF9tdXRleF9pbml0X3NhbWVfYXNfc3RhdGljX2luaXRpYWxpemVycykgeworICBwdGhyZWFkX211dGV4X3QgbG9ja19ub3JtYWwgPSBQVEhSRUFEX01VVEVYX0lOSVRJQUxJWkVSOworICBQdGhyZWFkTXV0ZXggbTEoUFRIUkVBRF9NVVRFWF9OT1JNQUwpOworICBBU1NFUlRfRVEoMCwgbWVtY21wKCZsb2NrX25vcm1hbCwgJm0xLmxvY2ssIHNpemVvZihwdGhyZWFkX211dGV4X3QpKSk7CisgIHB0aHJlYWRfbXV0ZXhfZGVzdHJveSgmbG9ja19ub3JtYWwpOworCisgIHB0aHJlYWRfbXV0ZXhfdCBsb2NrX2Vycm9yY2hlY2sgPSBQVEhSRUFEX0VSUk9SQ0hFQ0tfTVVURVhfSU5JVElBTElaRVJfTlA7CisgIFB0aHJlYWRNdXRleCBtMihQVEhSRUFEX01VVEVYX0VSUk9SQ0hFQ0spOworICBBU1NFUlRfRVEoMCwgbWVtY21wKCZsb2NrX2Vycm9yY2hlY2ssICZtMi5sb2NrLCBzaXplb2YocHRocmVhZF9tdXRleF90KSkpOworICBwdGhyZWFkX211dGV4X2Rlc3Ryb3koJmxvY2tfZXJyb3JjaGVjayk7CisKKyAgcHRocmVhZF9tdXRleF90IGxvY2tfcmVjdXJzaXZlID0gUFRIUkVBRF9SRUNVUlNJVkVfTVVURVhfSU5JVElBTElaRVJfTlA7CisgIFB0aHJlYWRNdXRleCBtMyhQVEhSRUFEX01VVEVYX1JFQ1VSU0lWRSk7CisgIEFTU0VSVF9FUSgwLCBtZW1jbXAoJmxvY2tfcmVjdXJzaXZlLCAmbTMubG9jaywgc2l6ZW9mKHB0aHJlYWRfbXV0ZXhfdCkpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhfZGVzdHJveSgmbG9ja19yZWN1cnNpdmUpKTsKK30KK2NsYXNzIE11dGV4V2FrZXVwSGVscGVyIHsKKyBwcml2YXRlOgorICBQdGhyZWFkTXV0ZXggbTsKKyAgZW51bSBQcm9ncmVzcyB7CisgICAgTE9DS19JTklUSUFMSVpFRCwKKyAgICBMT0NLX1dBSVRJTkcsCisgICAgTE9DS19SRUxFQVNFRCwKKyAgICBMT0NLX0FDQ0VTU0VECisgIH07CisgIHN0ZDo6YXRvbWljPFByb2dyZXNzPiBwcm9ncmVzczsKKyAgc3RkOjphdG9taWM8cGlkX3Q+IHRpZDsKKworICBzdGF0aWMgdm9pZCB0aHJlYWRfZm4oTXV0ZXhXYWtldXBIZWxwZXIqIGhlbHBlcikgeworICAgIGhlbHBlci0+dGlkID0gZ2V0dGlkKCk7CisgICAgQVNTRVJUX0VRKExPQ0tfSU5JVElBTElaRUQsIGhlbHBlci0+cHJvZ3Jlc3MpOworICAgIGhlbHBlci0+cHJvZ3Jlc3MgPSBMT0NLX1dBSVRJTkc7CisKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleF9sb2NrKCZoZWxwZXItPm0ubG9jaykpOworICAgIEFTU0VSVF9FUShMT0NLX1JFTEVBU0VELCBoZWxwZXItPnByb2dyZXNzKTsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleF91bmxvY2soJmhlbHBlci0+bS5sb2NrKSk7CisKKyAgICBoZWxwZXItPnByb2dyZXNzID0gTE9DS19BQ0NFU1NFRDsKKyAgfQorCisgcHVibGljOgorICBNdXRleFdha2V1cEhlbHBlcihpbnQgbXV0ZXhfdHlwZSkgOiBtKG11dGV4X3R5cGUpIHsKKyAgfQorCisgIHZvaWQgdGVzdCgpIHsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleF9sb2NrKCZtLmxvY2spKTsKKyAgICBwcm9ncmVzcyA9IExPQ0tfSU5JVElBTElaRUQ7CisgICAgdGlkID0gMDsKKworICAgIHB0aHJlYWRfdCB0aHJlYWQ7CisgICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY3JlYXRlKCZ0aHJlYWQsIE5VTEwsCisgICAgICByZWludGVycHJldF9jYXN0PHZvaWQqICgqKSh2b2lkKik+KE11dGV4V2FrZXVwSGVscGVyOjp0aHJlYWRfZm4pLCB0aGlzKSk7CisKKyAgICBXYWl0VW50aWxUaHJlYWRTbGVlcCh0aWQpOworICAgIEFTU0VSVF9FUShMT0NLX1dBSVRJTkcsIHByb2dyZXNzKTsKKworICAgIHByb2dyZXNzID0gTE9DS19SRUxFQVNFRDsKKyAgICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleF91bmxvY2soJm0ubG9jaykpOworCisgICAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfam9pbih0aHJlYWQsIE5VTEwpKTsKKyAgICBBU1NFUlRfRVEoTE9DS19BQ0NFU1NFRCwgcHJvZ3Jlc3MpOworICB9Cit9OworCitURVNUKHB0aHJlYWQsIHB0aHJlYWRfbXV0ZXhfTk9STUFMX3dha2V1cCkgeworICBNdXRleFdha2V1cEhlbHBlciBoZWxwZXIoUFRIUkVBRF9NVVRFWF9OT1JNQUwpOworICBoZWxwZXIudGVzdCgpOworfQorCitURVNUKHB0aHJlYWQsIHB0aHJlYWRfbXV0ZXhfRVJST1JDSEVDS193YWtldXApIHsKKyAgTXV0ZXhXYWtldXBIZWxwZXIgaGVscGVyKFBUSFJFQURfTVVURVhfRVJST1JDSEVDSyk7CisgIGhlbHBlci50ZXN0KCk7Cit9CisKK1RFU1QocHRocmVhZCwgcHRocmVhZF9tdXRleF9SRUNVUlNJVkVfd2FrZXVwKSB7CisgIE11dGV4V2FrZXVwSGVscGVyIGhlbHBlcihQVEhSRUFEX01VVEVYX1JFQ1VSU0lWRSk7CisgIGhlbHBlci50ZXN0KCk7Cit9CisKK1RFU1QocHRocmVhZCwgcHRocmVhZF9tdXRleF9vd25lcl90aWRfbGltaXQpIHsKKyNpZiBkZWZpbmVkKF9fQklPTklDX18pICYmICFkZWZpbmVkKF9fTFA2NF9fKQorICBGSUxFKiBmcCA9IGZvcGVuKCIvcHJvYy9zeXMva2VybmVsL3BpZF9tYXgiLCAiciIpOworICBBU1NFUlRfVFJVRShmcCAhPSBOVUxMKTsKKyAgbG9uZyBwaWRfbWF4OworICBBU1NFUlRfRVEoMSwgZnNjYW5mKGZwLCAiJWxkIiwgJnBpZF9tYXgpKTsKKyAgZmNsb3NlKGZwKTsKKyAgLy8gQmlvbmljJ3MgcHRocmVhZF9tdXRleCBpbXBsZW1lbnRhdGlvbiBvbiAzMi1iaXQgZGV2aWNlcyB1c2VzIDE2IGJpdHMgdG8gcmVwcmVzZW50IG93bmVyIHRpZC4KKyAgQVNTRVJUX0xFKHBpZF9tYXgsIDY1NTM2KTsKKyNlbHNlCisgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcgYXMgMzItYml0IHRpZCBpcyBzdXBwb3J0ZWQgYnkgcHRocmVhZF9tdXRleC5cbiI7CisjZW5kaWYKK30KKworY2xhc3MgU3RyaWN0QWxpZ25tZW50QWxsb2NhdG9yIHsKKyBwdWJsaWM6CisgIHZvaWQqIGFsbG9jYXRlKHNpemVfdCBzaXplLCBzaXplX3QgYWxpZ25tZW50KSB7CisgICAgY2hhciogcCA9IG5ldyBjaGFyW3NpemUgKyBhbGlnbm1lbnQgKiAyXTsKKyAgICBhbGxvY2F0ZWRfYXJyYXkucHVzaF9iYWNrKHApOworICAgIHdoaWxlICghaXNfc3RyaWN0X2FsaWduZWQocCwgYWxpZ25tZW50KSkgeworICAgICAgKytwOworICAgIH0KKyAgICByZXR1cm4gcDsKKyAgfQorCisgIH5TdHJpY3RBbGlnbm1lbnRBbGxvY2F0b3IoKSB7CisgICAgZm9yIChhdXRvJiBwIDogYWxsb2NhdGVkX2FycmF5KSB7CisgICAgICBkZWxldGUgW10gcDsKKyAgICB9CisgIH0KKworIHByaXZhdGU6CisgIGJvb2wgaXNfc3RyaWN0X2FsaWduZWQoY2hhciogcCwgc2l6ZV90IGFsaWdubWVudCkgeworICAgIHJldHVybiAocmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KHApICUgKGFsaWdubWVudCAqIDIpKSA9PSBhbGlnbm1lbnQ7CisgIH0KKworICBzdGQ6OnZlY3RvcjxjaGFyKj4gYWxsb2NhdGVkX2FycmF5OworfTsKKworVEVTVChwdGhyZWFkLCBwdGhyZWFkX3R5cGVzX2FsbG93X2ZvdXJfYnl0ZXNfYWxpZ25tZW50KSB7CisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorICAvLyBGb3IgYmluYXJ5IGNvbXBhdGliaWxpdHkgd2l0aCBvbGQgdmVyc2lvbiwgd2UgbmVlZCB0byBhbGxvdyA0LWJ5dGUgYWxpZ25lZCBkYXRhIGZvciBwdGhyZWFkIHR5cGVzLgorICBTdHJpY3RBbGlnbm1lbnRBbGxvY2F0b3IgYWxsb2NhdG9yOworICBwdGhyZWFkX211dGV4X3QqIG11dGV4ID0gcmVpbnRlcnByZXRfY2FzdDxwdGhyZWFkX211dGV4X3QqPigKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxsb2NhdG9yLmFsbG9jYXRlKHNpemVvZihwdGhyZWFkX211dGV4X3QpLCA0KSk7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX211dGV4X2luaXQobXV0ZXgsIE5VTEwpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhfbG9jayhtdXRleCkpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9tdXRleF91bmxvY2sobXV0ZXgpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfbXV0ZXhfZGVzdHJveShtdXRleCkpOworCisgIHB0aHJlYWRfY29uZF90KiBjb25kID0gcmVpbnRlcnByZXRfY2FzdDxwdGhyZWFkX2NvbmRfdCo+KAorICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxsb2NhdG9yLmFsbG9jYXRlKHNpemVvZihwdGhyZWFkX2NvbmRfdCksIDQpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY29uZF9pbml0KGNvbmQsIE5VTEwpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY29uZF9zaWduYWwoY29uZCkpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jb25kX2Jyb2FkY2FzdChjb25kKSk7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2NvbmRfZGVzdHJveShjb25kKSk7CisKKyAgcHRocmVhZF9yd2xvY2tfdCogcndsb2NrID0gcmVpbnRlcnByZXRfY2FzdDxwdGhyZWFkX3J3bG9ja190Kj4oCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxsb2NhdG9yLmFsbG9jYXRlKHNpemVvZihwdGhyZWFkX3J3bG9ja190KSwgNCkpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9yd2xvY2tfaW5pdChyd2xvY2ssIE5VTEwpKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX3JkbG9jayhyd2xvY2spKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX3VubG9jayhyd2xvY2spKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX3dybG9jayhyd2xvY2spKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX3VubG9jayhyd2xvY2spKTsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfcndsb2NrX2Rlc3Ryb3kocndsb2NrKSk7CisKKyNlbHNlCisgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCB0ZXN0cyBiaW9uaWMgaW1wbGVtZW50YXRpb24gZGV0YWlscy4iOworI2VuZGlmCit9CmRpZmYgLS1naXQgYS90ZXN0cy9wdHlfdGVzdC5jcHAgYi90ZXN0cy9wdHlfdGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2ZlOTdlOQotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL3B0eV90ZXN0LmNwcApAQCAtMCwwICsxLDY3IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CisKKyNpbmNsdWRlIDxwdHkuaD4KKyNpbmNsdWRlIDxzeXMvaW9jdGwuaD4KKworVEVTVChwdHksIG9wZW5wdHkpIHsKKyAgaW50IG1hc3Rlciwgc2xhdmU7CisgIGNoYXIgbmFtZVszMl07CisgIHN0cnVjdCB3aW5zaXplIHcgPSB7IDEyMywgNDU2LCA5OTk5LCA5OTkgfTsKKyAgQVNTRVJUX0VRKDAsIG9wZW5wdHkoJm1hc3RlciwgJnNsYXZlLCBuYW1lLCBOVUxMLCAmdykpOworICBBU1NFUlRfTkUoLTEsIG1hc3Rlcik7CisgIEFTU0VSVF9ORSgtMSwgc2xhdmUpOworICBBU1NFUlRfTkUobWFzdGVyLCBzbGF2ZSk7CisKKyAgY2hhciB0dHlfbmFtZVszMl07CisgIEFTU0VSVF9FUSgwLCB0dHluYW1lX3Ioc2xhdmUsIHR0eV9uYW1lLCBzaXplb2YodHR5X25hbWUpKSk7CisgIEFTU0VSVF9TVFJFUSh0dHlfbmFtZSwgbmFtZSk7CisKKyAgc3RydWN0IHdpbnNpemUgd19hY3R1YWw7CisgIEFTU0VSVF9FUSgwLCBpb2N0bChzbGF2ZSwgVElPQ0dXSU5TWiwgJndfYWN0dWFsKSk7CisgIEFTU0VSVF9FUSh3X2FjdHVhbC53c19yb3csIHcud3Nfcm93KTsKKyAgQVNTRVJUX0VRKHdfYWN0dWFsLndzX2NvbCwgdy53c19jb2wpOworICBBU1NFUlRfRVEod19hY3R1YWwud3NfeHBpeGVsLCB3LndzX3hwaXhlbCk7CisgIEFTU0VSVF9FUSh3X2FjdHVhbC53c195cGl4ZWwsIHcud3NfeXBpeGVsKTsKKworICBjbG9zZShtYXN0ZXIpOworICBjbG9zZShzbGF2ZSk7Cit9CisKK1RFU1QocHR5LCBmb3JrcHR5KSB7CisgIHBpZF90IHNpZCA9IGdldHNpZCgwKTsKKworICBpbnQgbWFzdGVyOworICBwaWRfdCBwaWQgPSBmb3JrcHR5KCZtYXN0ZXIsIE5VTEwsIE5VTEwsIE5VTEwpOworICBBU1NFUlRfTkUoLTEsIHBpZCk7CisKKyAgaWYgKHBpZCA9PSAwKSB7CisgICAgLy8gV2UncmUgdGhlIGNoaWxkLgorICAgIEFTU0VSVF9ORShzaWQsIGdldHNpZCgwKSk7CisgICAgX2V4aXQoMCk7CisgIH0KKworICBBU1NFUlRfRVEoc2lkLCBnZXRzaWQoMCkpOworCisgIGludCBzdGF0dXM7CisgIEFTU0VSVF9FUShwaWQsIHdhaXRwaWQocGlkLCAmc3RhdHVzLCAwKSk7CisgIEFTU0VSVF9UUlVFKFdJRkVYSVRFRChzdGF0dXMpKTsKKyAgQVNTRVJUX0VRKDAsIFdFWElUU1RBVFVTKHN0YXR1cykpOworCisgIGNsb3NlKG1hc3Rlcik7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9zZW1hcGhvcmVfdGVzdC5jcHAgYi90ZXN0cy9zZW1hcGhvcmVfdGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTUxN2Y4MQotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL3NlbWFwaG9yZV90ZXN0LmNwcApAQCAtMCwwICsxLDE0MyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxzZW1hcGhvcmUuaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlIDxwdGhyZWFkLmg+CisjaW5jbHVkZSA8dGltZS5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorCisjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfY29uc3RhbnRzLmgiCisKK1RFU1Qoc2VtYXBob3JlLCBzZW1faW5pdCkgeworICBzZW1fdCBzOworCisgIC8vIFBlcmZlY3RseSBmaW5lIGluaXRpYWwgdmFsdWVzLgorICBBU1NFUlRfRVEoMCwgc2VtX2luaXQoJnMsIDAsIDApKTsKKyAgQVNTRVJUX0VRKDAsIHNlbV9pbml0KCZzLCAwLCAxKSk7CisgIEFTU0VSVF9FUSgwLCBzZW1faW5pdCgmcywgMCwgMTIzKSk7CisKKyAgLy8gVG9vIHNtYWxsIGFuIGluaXRpYWwgdmFsdWUuCisgIGVycm5vID0gMDsKKyAgQVNTRVJUX0VRKC0xLCBzZW1faW5pdCgmcywgMCwgLTEpKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworCisgIEFTU0VSVF9FUShTRU1fVkFMVUVfTUFYLCBzeXNjb25mKF9TQ19TRU1fVkFMVUVfTUFYKSk7CisKKyAgLy8gVGhlIGxhcmdlc3QgaW5pdGlhbCB2YWx1ZS4KKyAgQVNTRVJUX0VRKDAsIHNlbV9pbml0KCZzLCAwLCBTRU1fVkFMVUVfTUFYKSk7CisKKyAgLy8gVG9vIGxhcmdlIGFuIGluaXRpYWwgdmFsdWUuCisgIGVycm5vID0gMDsKKyAgQVNTRVJUX0VRKC0xLCBzZW1faW5pdCgmcywgMCwgU0VNX1ZBTFVFX01BWCArIDEpKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworCisgIEFTU0VSVF9FUSgwLCBzZW1fZGVzdHJveSgmcykpOworfQorCitURVNUKHNlbWFwaG9yZSwgc2VtX3RyeXdhaXQpIHsKKyAgc2VtX3QgczsKKyAgQVNTRVJUX0VRKDAsIHNlbV9pbml0KCZzLCAwLCAzKSk7CisgIEFTU0VSVF9FUSgwLCBzZW1fdHJ5d2FpdCgmcykpOworICBBU1NFUlRfRVEoMCwgc2VtX3RyeXdhaXQoJnMpKTsKKyAgQVNTRVJUX0VRKDAsIHNlbV90cnl3YWl0KCZzKSk7CisgIGVycm5vID0gMDsKKyAgQVNTRVJUX0VRKC0xLCBzZW1fdHJ5d2FpdCgmcykpOworICBBU1NFUlRfRVEoRUFHQUlOLCBlcnJubyk7CisgIEFTU0VSVF9FUSgwLCBzZW1fZGVzdHJveSgmcykpOworfQorCitzdGF0aWMgdm9pZCBTZW1XYWl0VGhyZWFkVGVzdEZuKHNlbV90JiBzZW0pIHsKKyAgQVNTRVJUX0VRKDAsIHNlbV93YWl0KCZzZW0pKTsKK30KKworc3RhdGljIHZvaWQqIFNlbVdhaXRUaHJlYWRGbih2b2lkKiBhcmcpIHsKKyAgU2VtV2FpdFRocmVhZFRlc3RGbigqcmVpbnRlcnByZXRfY2FzdDxzZW1fdCo+KGFyZykpOworICByZXR1cm4gbnVsbHB0cjsKK30KKworVEVTVChzZW1hcGhvcmUsIHNlbV93YWl0X19zZW1fcG9zdCkgeworICBzZW1fdCBzOworICBBU1NFUlRfRVEoMCwgc2VtX2luaXQoJnMsIDAsIDApKTsKKworICBwdGhyZWFkX3QgdDEsIHQyLCB0MzsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfY3JlYXRlKCZ0MSwgTlVMTCwgU2VtV2FpdFRocmVhZEZuLCAmcykpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jcmVhdGUoJnQyLCBOVUxMLCBTZW1XYWl0VGhyZWFkRm4sICZzKSk7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2NyZWF0ZSgmdDMsIE5VTEwsIFNlbVdhaXRUaHJlYWRGbiwgJnMpKTsKKworICBBU1NFUlRfRVEoMCwgc2VtX3Bvc3QoJnMpKTsKKyAgQVNTRVJUX0VRKDAsIHNlbV9wb3N0KCZzKSk7CisgIEFTU0VSVF9FUSgwLCBzZW1fcG9zdCgmcykpOworCisgIHZvaWQqIHJlc3VsdDsKKyAgQVNTRVJUX0VRKDAsIHB0aHJlYWRfam9pbih0MSwgJnJlc3VsdCkpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9qb2luKHQyLCAmcmVzdWx0KSk7CisgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2pvaW4odDMsICZyZXN1bHQpKTsKK30KKworc3RhdGljIGlubGluZSB2b2lkIHRpbWVzcGVjX2FkZF9tcyh0aW1lc3BlYyYgdHMsIHNpemVfdCBtcykgeworICB0cy50dl9zZWMgICs9IG1zIC8gMTAwMDsKKyAgdHMudHZfbnNlYyArPSAobXMgJSAxMDAwKSAqIDEwMDAwMDA7CisgIGlmICh0cy50dl9uc2VjID49IE5TX1BFUl9TKSB7CisgICAgdHMudHZfc2VjKys7CisgICAgdHMudHZfbnNlYyAtPSBOU19QRVJfUzsKKyAgfQorfQorCitURVNUKHNlbWFwaG9yZSwgc2VtX3RpbWVkd2FpdCkgeworICBzZW1fdCBzOworICBBU1NFUlRfRVEoMCwgc2VtX2luaXQoJnMsIDAsIDApKTsKKworICB0aW1lc3BlYyB0czsKKyAgQVNTRVJUX0VRKDAsIGNsb2NrX2dldHRpbWUoQ0xPQ0tfUkVBTFRJTUUsICZ0cykpOworICB0aW1lc3BlY19hZGRfbXModHMsIDEwMCk7CisKKyAgZXJybm8gPSAwOworICBBU1NFUlRfRVEoLTEsIHNlbV90aW1lZHdhaXQoJnMsICZ0cykpOworICBBU1NFUlRfRVEoRVRJTUVET1VULCBlcnJubyk7CisKKyAgLy8gQSBuZWdhdGl2ZSB0aW1lb3V0IGlzIGFuIGVycm9yLgorICBlcnJubyA9IDA7CisgIHRzLnR2X25zZWMgPSAtMTsKKyAgQVNTRVJUX0VRKC0xLCBzZW1fdGltZWR3YWl0KCZzLCAmdHMpKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworCisgIEFTU0VSVF9FUSgwLCBzZW1fZGVzdHJveSgmcykpOworfQorCitURVNUKHNlbWFwaG9yZSwgc2VtX2dldHZhbHVlKSB7CisgIHNlbV90IHM7CisgIEFTU0VSVF9FUSgwLCBzZW1faW5pdCgmcywgMCwgMCkpOworCisgIGludCBpOworICBBU1NFUlRfRVEoMCwgc2VtX2dldHZhbHVlKCZzLCAmaSkpOworICBBU1NFUlRfRVEoMCwgaSk7CisKKyAgQVNTRVJUX0VRKDAsIHNlbV9wb3N0KCZzKSk7CisgIEFTU0VSVF9FUSgwLCBzZW1fZ2V0dmFsdWUoJnMsICZpKSk7CisgIEFTU0VSVF9FUSgxLCBpKTsKKworICBBU1NFUlRfRVEoMCwgc2VtX3Bvc3QoJnMpKTsKKyAgQVNTRVJUX0VRKDAsIHNlbV9nZXR2YWx1ZSgmcywgJmkpKTsKKyAgQVNTRVJUX0VRKDIsIGkpOworCisgIEFTU0VSVF9FUSgwLCBzZW1fd2FpdCgmcykpOworICBBU1NFUlRfRVEoMCwgc2VtX2dldHZhbHVlKCZzLCAmaSkpOworICBBU1NFUlRfRVEoMSwgaSk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9zZXRqbXBfdGVzdC5jcHAgYi90ZXN0cy9zZXRqbXBfdGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTNiNTg4NQotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL3NldGptcF90ZXN0LmNwcApAQCAtMCwwICsxLDIxNCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgorCisjaW5jbHVkZSA8c2V0am1wLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKK1RFU1Qoc2V0am1wLCBzZXRqbXBfc21va2UpIHsKKyAgaW50IHZhbHVlOworICBqbXBfYnVmIGpiOworICBpZiAoKHZhbHVlID0gc2V0am1wKGpiKSkgPT0gMCkgeworICAgIGxvbmdqbXAoamIsIDEyMyk7CisgICAgRkFJTCgpOyAvLyBVbnJlYWNoYWJsZS4KKyAgfSBlbHNlIHsKKyAgICBBU1NFUlRfRVEoMTIzLCB2YWx1ZSk7CisgIH0KK30KKworVEVTVChzZXRqbXAsIF9zZXRqbXBfc21va2UpIHsKKyAgaW50IHZhbHVlOworICBqbXBfYnVmIGpiOworICBpZiAoKHZhbHVlID0gX3NldGptcChqYikpID09IDApIHsKKyAgICBfbG9uZ2ptcChqYiwgNDU2KTsKKyAgICBGQUlMKCk7IC8vIFVucmVhY2hhYmxlLgorICB9IGVsc2UgeworICAgIEFTU0VSVF9FUSg0NTYsIHZhbHVlKTsKKyAgfQorfQorCitURVNUKHNldGptcCwgc2lnc2V0am1wXzBfc21va2UpIHsKKyAgaW50IHZhbHVlOworICBzaWdqbXBfYnVmIGpiOworICBpZiAoKHZhbHVlID0gc2lnc2V0am1wKGpiLCAwKSkgPT0gMCkgeworICAgIHNpZ2xvbmdqbXAoamIsIDc4OSk7CisgICAgRkFJTCgpOyAvLyBVbnJlYWNoYWJsZS4KKyAgfSBlbHNlIHsKKyAgICBBU1NFUlRfRVEoNzg5LCB2YWx1ZSk7CisgIH0KK30KKworVEVTVChzZXRqbXAsIHNpZ3NldGptcF8xX3Ntb2tlKSB7CisgIGludCB2YWx1ZTsKKyAgc2lnam1wX2J1ZiBqYjsKKyAgaWYgKCh2YWx1ZSA9IHNpZ3NldGptcChqYiwgMCkpID09IDApIHsKKyAgICBzaWdsb25nam1wKGpiLCAweGFiYyk7CisgICAgRkFJTCgpOyAvLyBVbnJlYWNoYWJsZS4KKyAgfSBlbHNlIHsKKyAgICBBU1NFUlRfRVEoMHhhYmMsIHZhbHVlKTsKKyAgfQorfQorCisvLyBUd28gZGlzdGluY3Qgc2lnbmFsIHNldHMsIHBpcHUKK3N0cnVjdCBTaWdTZXRzIHsKKyAgU2lnU2V0cygpIDogb25lKE1ha2VTaWdTZXQoMCkpLCB0d28oTWFrZVNpZ1NldCgxKSkgeworICB9CisKKyAgc3RhdGljIHNpZ3NldF90IE1ha2VTaWdTZXQoaW50IG9mZnNldCkgeworICAgIHNpZ3NldF90IHNzOworICAgIHNpZ2VtcHR5c2V0KCZzcyk7CisgICAgc2lnYWRkc2V0KCZzcywgU0lHVVNSMSArIG9mZnNldCk7CisjaWYgZGVmaW5lZChfX0xQNjRfXykKKyAgICAvLyBGb3IgYXJtIGFuZCB4ODYsIHNpZ3NldF90IHdhcyB0b28gc21hbGwgZm9yIHRoZSBSVCBzaWduYWxzLgorICAgIC8vIEZvciBtaXBzLCBzaWdzZXRfdCB3YXMgbGFyZ2UgZW5vdWdoIGJ1dCBqbXBfYnVmIHdhc24ndC4KKyAgICBzaWdhZGRzZXQoJnNzLCBTSUdSVE1JTiArIG9mZnNldCk7CisjZW5kaWYKKyAgICByZXR1cm4gc3M7CisgIH0KKworICBzaWdzZXRfdCBvbmU7CisgIHNpZ3NldF90IHR3bzsKKyAgc2lnc2V0X3Qgb3JpZ2luYWw7Cit9OworCit2b2lkIEFzc2VydFNpZ21hc2tFcXVhbHMoY29uc3Qgc2lnc2V0X3QmIGV4cGVjdGVkKSB7CisgIHNpZ3NldF90IGFjdHVhbDsKKyAgc2lncHJvY21hc2soMCAvKiBpZ25vcmVkICovLCBOVUxMLCAmYWN0dWFsKTsKKyAgc2l6ZV90IGVuZCA9IHNpemVvZihzaWdzZXRfdCkgKiA4OworICBmb3IgKHNpemVfdCBpID0gMTsgaSA8PSBlbmQ7ICsraSkgeworICAgIEVYUEVDVF9FUShzaWdpc21lbWJlcigmZXhwZWN0ZWQsIGkpLCBzaWdpc21lbWJlcigmYWN0dWFsLCBpKSkgPDwgaTsKKyAgfQorfQorCitURVNUKHNldGptcCwgX3NldGptcF9zaWduYWxfbWFzaykgeworICAvLyBfc2V0am1wL19sb25nam1wIGRvIG5vdCBzYXZlL3Jlc3RvcmUgdGhlIHNpZ25hbCBtYXNrLgorICBTaWdTZXRzIHNzOworICBzaWdwcm9jbWFzayhTSUdfU0VUTUFTSywgJnNzLm9uZSwgJnNzLm9yaWdpbmFsKTsKKyAgam1wX2J1ZiBqYjsKKyAgaWYgKF9zZXRqbXAoamIpID09IDApIHsKKyAgICBzaWdwcm9jbWFzayhTSUdfU0VUTUFTSywgJnNzLnR3bywgTlVMTCk7CisgICAgX2xvbmdqbXAoamIsIDEpOworICAgIEZBSUwoKTsgLy8gVW5yZWFjaGFibGUuCisgIH0gZWxzZSB7CisgICAgQXNzZXJ0U2lnbWFza0VxdWFscyhzcy50d28pOworICB9CisgIHNpZ3Byb2NtYXNrKFNJR19TRVRNQVNLLCAmc3Mub3JpZ2luYWwsIE5VTEwpOworfQorCitURVNUKHNldGptcCwgc2V0am1wX3NpZ25hbF9tYXNrKSB7CisgIC8vIHNldGptcC9sb25nam1wIGRvIHNhdmUvcmVzdG9yZSB0aGUgc2lnbmFsIG1hc2sgb24gYmlvbmljLCBidXQgbm90IG9uIGdsaWJjLgorICAvLyBUaGlzIGlzIGEgQlNEIHZlcnN1cyBTeXN0ZW0gViBoaXN0b3JpY2FsIGFjY2lkZW50LiBQT1NJWCBsZWF2ZXMgdGhlCisgIC8vIGJlaGF2aW9yIHVuc3BlY2lmaWVkLCBzbyBhbnkgY29kZSB0aGF0IGNhcmVzIG5lZWRzIHRvIHVzZSBzaWdzZXRqbXAuCisgIFNpZ1NldHMgc3M7CisgIHNpZ3Byb2NtYXNrKFNJR19TRVRNQVNLLCAmc3Mub25lLCAmc3Mub3JpZ2luYWwpOworICBqbXBfYnVmIGpiOworICBpZiAoc2V0am1wKGpiKSA9PSAwKSB7CisgICAgc2lncHJvY21hc2soU0lHX1NFVE1BU0ssICZzcy50d28sIE5VTEwpOworICAgIGxvbmdqbXAoamIsIDEpOworICAgIEZBSUwoKTsgLy8gVW5yZWFjaGFibGUuCisgIH0gZWxzZSB7CisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorICAgIC8vIGJpb25pYyBiZWhhdmVzIGxpa2UgQlNEIGFuZCBkb2VzIHNhdmUvcmVzdG9yZSB0aGUgc2lnbmFsIG1hc2suCisgICAgQXNzZXJ0U2lnbWFza0VxdWFscyhzcy5vbmUpOworI2Vsc2UKKyAgICAvLyBnbGliYyBiZWhhdmVzIGxpa2UgU3lzdGVtIFYgYW5kIGRvZXNuJ3Qgc2F2ZS9yZXN0b3JlIHRoZSBzaWduYWwgbWFzay4KKyAgICBBc3NlcnRTaWdtYXNrRXF1YWxzKHNzLnR3byk7CisjZW5kaWYKKyAgfQorICBzaWdwcm9jbWFzayhTSUdfU0VUTUFTSywgJnNzLm9yaWdpbmFsLCBOVUxMKTsKK30KKworVEVTVChzZXRqbXAsIHNpZ3NldGptcF8wX3NpZ25hbF9tYXNrKSB7CisgIC8vIHNpZ3NldGptcCgwKS9zaWdsb25nam1wIGRvIG5vdCBzYXZlL3Jlc3RvcmUgdGhlIHNpZ25hbCBtYXNrLgorICBTaWdTZXRzIHNzOworICBzaWdwcm9jbWFzayhTSUdfU0VUTUFTSywgJnNzLm9uZSwgJnNzLm9yaWdpbmFsKTsKKyAgc2lnam1wX2J1ZiBzamI7CisgIGlmIChzaWdzZXRqbXAoc2piLCAwKSA9PSAwKSB7CisgICAgc2lncHJvY21hc2soU0lHX1NFVE1BU0ssICZzcy50d28sIE5VTEwpOworICAgIHNpZ2xvbmdqbXAoc2piLCAxKTsKKyAgICBGQUlMKCk7IC8vIFVucmVhY2hhYmxlLgorICB9IGVsc2UgeworICAgIEFzc2VydFNpZ21hc2tFcXVhbHMoc3MudHdvKTsKKyAgfQorICBzaWdwcm9jbWFzayhTSUdfU0VUTUFTSywgJnNzLm9yaWdpbmFsLCBOVUxMKTsKK30KKworVEVTVChzZXRqbXAsIHNpZ3NldGptcF8xX3NpZ25hbF9tYXNrKSB7CisgIC8vIHNpZ3NldGptcCgxKS9zaWdsb25nam1wIGRvZXMgc2F2ZS9yZXN0b3JlIHRoZSBzaWduYWwgbWFzay4KKyAgU2lnU2V0cyBzczsKKyAgc2lncHJvY21hc2soU0lHX1NFVE1BU0ssICZzcy5vbmUsICZzcy5vcmlnaW5hbCk7CisgIHNpZ2ptcF9idWYgc2piOworICBpZiAoc2lnc2V0am1wKHNqYiwgMSkgPT0gMCkgeworICAgIHNpZ3Byb2NtYXNrKFNJR19TRVRNQVNLLCAmc3MudHdvLCBOVUxMKTsKKyAgICBzaWdsb25nam1wKHNqYiwgMSk7CisgICAgRkFJTCgpOyAvLyBVbnJlYWNoYWJsZS4KKyAgfSBlbHNlIHsKKyAgICBBc3NlcnRTaWdtYXNrRXF1YWxzKHNzLm9uZSk7CisgIH0KKyAgc2lncHJvY21hc2soU0lHX1NFVE1BU0ssICZzcy5vcmlnaW5hbCwgTlVMTCk7Cit9CisKKyNpZiBkZWZpbmVkKF9fYWFyY2g2NF9fKQorI2RlZmluZSBTRVRfRlJFRyhuLCB2KSBhc20gdm9sYXRpbGUoImZtb3YgZCIjbiAiLCAiI3YgOiA6IDogImQiI24pCisjZGVmaW5lIENMRUFSX0ZSRUcobikgYXNtIHZvbGF0aWxlKCJmbW92IGQiI24gIiwgeHpyIiA6IDogOiAiZCIjbikKKyNkZWZpbmUgU0VUX0ZSRUdTIFwKKyAgU0VUX0ZSRUcoOCwgOC4wKTsgU0VUX0ZSRUcoOSwgOS4wKTsgU0VUX0ZSRUcoMTAsIDEwLjApOyBTRVRfRlJFRygxMSwgMTEuMCk7IFwKKyAgU0VUX0ZSRUcoMTIsIDEyLjApOyBTRVRfRlJFRygxMywgMTMuMCk7IFNFVF9GUkVHKDE0LCAxNC4wKTsgU0VUX0ZSRUcoMTUsIDE1LjApOworI2RlZmluZSBDTEVBUl9GUkVHUyBcCisgIENMRUFSX0ZSRUcoOCk7IENMRUFSX0ZSRUcoOSk7IENMRUFSX0ZSRUcoMTApOyBDTEVBUl9GUkVHKDExKTsgXAorICBDTEVBUl9GUkVHKDEyKTsgQ0xFQVJfRlJFRygxMyk7IENMRUFSX0ZSRUcoMTQpOyBDTEVBUl9GUkVHKDE1KTsKKyNkZWZpbmUgR0VUX0ZSRUcobikgKHsgZG91YmxlIF9yOyBhc20gdm9sYXRpbGUoImZtb3YgJTAsIGQiI24gOiAiPXIiKF9yKSA6IDopOyBfcjsgfSkKKyNkZWZpbmUgQ0hFQ0tfRlJFR1MgXAorICAgIEVYUEVDVF9FUSg4LjAsIEdFVF9GUkVHKDgpKTsgRVhQRUNUX0VRKDkuMCwgR0VUX0ZSRUcoOSkpOyBcCisgICAgRVhQRUNUX0VRKDEwLjAsIEdFVF9GUkVHKDEwKSk7IEVYUEVDVF9FUSgxMS4wLCBHRVRfRlJFRygxMSkpOyBcCisgICAgRVhQRUNUX0VRKDEyLjAsIEdFVF9GUkVHKDEyKSk7IEVYUEVDVF9FUSgxMy4wLCBHRVRfRlJFRygxMykpOyBcCisgICAgRVhQRUNUX0VRKDE0LjAsIEdFVF9GUkVHKDE0KSk7IEVYUEVDVF9FUSgxNS4wLCBHRVRfRlJFRygxNSkpOworI2VsaWYgZGVmaW5lZChfX2FybV9fKQorI2RlZmluZSBTRVRfRlJFRyhuLCB2KSBcCisgICh7IGNvbnN0IGRvdWJsZSBfdnt2fTsgYXNtIHZvbGF0aWxlKCJmY3B5ZCBkIiNuICIsICVQMCIgOiA6ICJ3IihfdikgOiAiZCIjbik7IH0pCisjZGVmaW5lIFNFVF9GUkVHUyBcCisgIFNFVF9GUkVHKDgsIDgpOyBTRVRfRlJFRyg5LCA5KTsgU0VUX0ZSRUcoMTAsIDEwKTsgU0VUX0ZSRUcoMTEsIDExKTsgXAorICBTRVRfRlJFRygxMiwgMTIpOyBTRVRfRlJFRygxMywgMTMpOyBTRVRfRlJFRygxNCwgMTQpOyBTRVRfRlJFRygxNSwgMTUpOworI2RlZmluZSBDTEVBUl9GUkVHUyBcCisgIFNFVF9GUkVHKDgsIDApOyBTRVRfRlJFRyg5LCAwKTsgU0VUX0ZSRUcoMTAsIDApOyBTRVRfRlJFRygxMSwgMCk7IFwKKyAgU0VUX0ZSRUcoMTIsIDApOyBTRVRfRlJFRygxMywgMCk7IFNFVF9GUkVHKDE0LCAwKTsgU0VUX0ZSRUcoMTUsIDApOworI2RlZmluZSBHRVRfRlJFRyhuKSAoeyBkb3VibGUgX3I7IGFzbSB2b2xhdGlsZSgiZmNweWQgJVAwLCBkIiNuIDogIj13IihfcikgOiA6KTsgX3I7fSkKKyNkZWZpbmUgQ0hFQ0tfRlJFR1MgXAorICAgIEVYUEVDVF9FUSg4LjAsIEdFVF9GUkVHKDgpKTsgRVhQRUNUX0VRKDkuMCwgR0VUX0ZSRUcoOSkpOyBcCisgICAgRVhQRUNUX0VRKDEwLjAsIEdFVF9GUkVHKDEwKSk7IEVYUEVDVF9FUSgxMS4wLCBHRVRfRlJFRygxMSkpOyBcCisgICAgRVhQRUNUX0VRKDEyLjAsIEdFVF9GUkVHKDEyKSk7IEVYUEVDVF9FUSgxMy4wLCBHRVRfRlJFRygxMykpOyBcCisgICAgRVhQRUNUX0VRKDE0LjAsIEdFVF9GUkVHKDE0KSk7IEVYUEVDVF9FUSgxNS4wLCBHRVRfRlJFRygxNSkpOworI2Vsc2UKKy8qIFRoZSBvdGhlciBhcmNoaXRlY3R1cmVzIGRvbid0IHNhdmUvcmVzdG9yZSBmcCByZWdpc3RlcnMuICovCisjZGVmaW5lIFNFVF9GUkVHUworI2RlZmluZSBDTEVBUl9GUkVHUworI2RlZmluZSBDSEVDS19GUkVHUworI2VuZGlmCisKK1RFU1Qoc2V0am1wLCBzZXRqbXBfZnBfcmVnaXN0ZXJzKSB7CisgIGludCB2YWx1ZTsKKyAgam1wX2J1ZiBqYjsKKyAgU0VUX0ZSRUdTOworICBpZiAoKHZhbHVlID0gc2V0am1wKGpiKSkgPT0gMCkgeworICAgIENMRUFSX0ZSRUdTOworICAgIGxvbmdqbXAoamIsIDEyMyk7CisgICAgRkFJTCgpOyAvLyBVbnJlYWNoYWJsZS4KKyAgfSBlbHNlIHsKKyAgICBBU1NFUlRfRVEoMTIzLCB2YWx1ZSk7CisgICAgQ0hFQ0tfRlJFR1M7CisgIH0KK30KZGlmZiAtLWdpdCBhL3Rlc3RzL3NpZ25hbF90ZXN0LmNwcCBiL3Rlc3RzL3NpZ25hbF90ZXN0LmNwcAppbmRleCA4ZmQ4YjcyLi5mOGZkYzNmIDEwMDY0NAotLS0gYS90ZXN0cy9zaWduYWxfdGVzdC5jcHAKKysrIGIvdGVzdHMvc2lnbmFsX3Rlc3QuY3BwCkBAIC0xNiw5ICsxNiwxMCBAQAogCiAjaW5jbHVkZSA8c2lnbmFsLmg+CiAKLSNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CiAKKyNpbmNsdWRlIDxlcnJuby5oPgorCiAjaW5jbHVkZSAiU2NvcGVkU2lnbmFsSGFuZGxlci5oIgogCiBzdGF0aWMgc2l6ZV90IFNJR05BTF9NSU4oKSB7CkBAIC0yNzYsMyArMjc3LDEwMSBAQAogICAvLyBXZSBkb24ndCBjdXJyZW50bHkgcmVzZXJ2ZSBhbnkgYXQgdGhlIHRvcC4KICAgQVNTRVJUX0VRKFNJR1JUTUFYLCBfX1NJR1JUTUFYKTsKIH0KKworc3RhdGljIGludCBnX3NpZ3F1ZXVlX3NpZ25hbF9oYW5kbGVyX2NhbGxfY291bnQgPSAwOworCitzdGF0aWMgdm9pZCBTaWdxdWV1ZVNpZ25hbEhhbmRsZXIoaW50IHNpZ251bSwgc2lnaW5mb190KiBpbmZvLCB2b2lkKikgeworICBBU1NFUlRfRVEoU0lHQUxSTSwgc2lnbnVtKTsKKyAgQVNTRVJUX0VRKFNJR0FMUk0sIGluZm8tPnNpX3NpZ25vKTsKKyAgQVNTRVJUX0VRKFNJX1FVRVVFLCBpbmZvLT5zaV9jb2RlKTsKKyAgQVNTRVJUX0VRKDEsIGluZm8tPnNpX3ZhbHVlLnNpdmFsX2ludCk7CisgICsrZ19zaWdxdWV1ZV9zaWduYWxfaGFuZGxlcl9jYWxsX2NvdW50OworfQorCitURVNUKHNpZ25hbCwgc2lncXVldWUpIHsKKyAgU2NvcGVkU2lnbmFsSGFuZGxlciBzc2goU0lHQUxSTSwgU2lncXVldWVTaWduYWxIYW5kbGVyLCBTQV9TSUdJTkZPKTsKKyAgc2lndmFsX3Qgc2lndmFsOworICBzaWd2YWwuc2l2YWxfaW50ID0gMTsKKyAgZXJybm8gPSAwOworICBBU1NFUlRfRVEoMCwgc2lncXVldWUoZ2V0cGlkKCksIFNJR0FMUk0sIHNpZ3ZhbCkpOworICBBU1NFUlRfRVEoMCwgZXJybm8pOworICBBU1NFUlRfRVEoMSwgZ19zaWdxdWV1ZV9zaWduYWxfaGFuZGxlcl9jYWxsX2NvdW50KTsKK30KKworVEVTVChzaWduYWwsIHNpZ3dhaXRpbmZvKSB7CisgIC8vIEJsb2NrIFNJR0FMUk0uCisgIHNpZ3NldF90IGp1c3RfU0lHQUxSTTsKKyAgc2lnZW1wdHlzZXQoJmp1c3RfU0lHQUxSTSk7CisgIHNpZ2FkZHNldCgmanVzdF9TSUdBTFJNLCBTSUdBTFJNKTsKKyAgc2lnc2V0X3Qgb3JpZ2luYWxfc2V0OworICBBU1NFUlRfRVEoMCwgc2lncHJvY21hc2soU0lHX0JMT0NLLCAmanVzdF9TSUdBTFJNLCAmb3JpZ2luYWxfc2V0KSk7CisKKyAgLy8gUmFpc2UgU0lHQUxSTS4KKyAgc2lndmFsX3Qgc2lndmFsOworICBzaWd2YWwuc2l2YWxfaW50ID0gMTsKKyAgQVNTRVJUX0VRKDAsIHNpZ3F1ZXVlKGdldHBpZCgpLCBTSUdBTFJNLCBzaWd2YWwpKTsKKworICAvLyBHZXQgcGVuZGluZyBTSUdBTFJNLgorICBzaWdpbmZvX3QgaW5mbzsKKyAgZXJybm8gPSAwOworICBBU1NFUlRfRVEoU0lHQUxSTSwgc2lnd2FpdGluZm8oJmp1c3RfU0lHQUxSTSwgJmluZm8pKTsKKyAgQVNTRVJUX0VRKDAsIGVycm5vKTsKKyAgQVNTRVJUX0VRKFNJR0FMUk0sIGluZm8uc2lfc2lnbm8pOworICBBU1NFUlRfRVEoMSwgaW5mby5zaV92YWx1ZS5zaXZhbF9pbnQpOworCisgIEFTU0VSVF9FUSgwLCBzaWdwcm9jbWFzayhTSUdfU0VUTUFTSywgJm9yaWdpbmFsX3NldCwgTlVMTCkpOworfQorCitURVNUKHNpZ25hbCwgc2lndGltZWR3YWl0KSB7CisgIC8vIEJsb2NrIFNJR0FMUk0uCisgIHNpZ3NldF90IGp1c3RfU0lHQUxSTTsKKyAgc2lnZW1wdHlzZXQoJmp1c3RfU0lHQUxSTSk7CisgIHNpZ2FkZHNldCgmanVzdF9TSUdBTFJNLCBTSUdBTFJNKTsKKyAgc2lnc2V0X3Qgb3JpZ2luYWxfc2V0OworICBBU1NFUlRfRVEoMCwgc2lncHJvY21hc2soU0lHX0JMT0NLLCAmanVzdF9TSUdBTFJNLCAmb3JpZ2luYWxfc2V0KSk7CisKKyAgLy8gUmFpc2UgU0lHQUxSTS4KKyAgc2lndmFsX3Qgc2lndmFsOworICBzaWd2YWwuc2l2YWxfaW50ID0gMTsKKyAgQVNTRVJUX0VRKDAsIHNpZ3F1ZXVlKGdldHBpZCgpLCBTSUdBTFJNLCBzaWd2YWwpKTsKKworICAvLyBHZXQgcGVuZGluZyBTSUdBTFJNLgorICBzaWdpbmZvX3QgaW5mbzsKKyAgc3RydWN0IHRpbWVzcGVjIHRpbWVvdXQ7CisgIHRpbWVvdXQudHZfc2VjID0gMjsKKyAgdGltZW91dC50dl9uc2VjID0gMDsKKyAgZXJybm8gPSAwOworICBBU1NFUlRfRVEoU0lHQUxSTSwgc2lndGltZWR3YWl0KCZqdXN0X1NJR0FMUk0sICZpbmZvLCAmdGltZW91dCkpOworICBBU1NFUlRfRVEoMCwgZXJybm8pOworCisgIEFTU0VSVF9FUSgwLCBzaWdwcm9jbWFzayhTSUdfU0VUTUFTSywgJm9yaWdpbmFsX3NldCwgTlVMTCkpOworfQorCitzdGF0aWMgaW50NjRfdCBOYW5vVGltZSgpIHsKKyAgc3RydWN0IHRpbWVzcGVjIHQ7CisgIHQudHZfc2VjID0gdC50dl9uc2VjID0gMDsKKyAgY2xvY2tfZ2V0dGltZShDTE9DS19NT05PVE9OSUMsICZ0KTsKKyAgcmV0dXJuIHN0YXRpY19jYXN0PGludDY0X3Q+KHQudHZfc2VjKSAqIDEwMDAwMDAwMDBMTCArIHQudHZfbnNlYzsKK30KKworVEVTVChzaWduYWwsIHNpZ3RpbWVkd2FpdF90aW1lb3V0KSB7CisgIC8vIEJsb2NrIFNJR0FMUk0uCisgIHNpZ3NldF90IGp1c3RfU0lHQUxSTTsKKyAgc2lnZW1wdHlzZXQoJmp1c3RfU0lHQUxSTSk7CisgIHNpZ2FkZHNldCgmanVzdF9TSUdBTFJNLCBTSUdBTFJNKTsKKyAgc2lnc2V0X3Qgb3JpZ2luYWxfc2V0OworICBBU1NFUlRfRVEoMCwgc2lncHJvY21hc2soU0lHX0JMT0NLLCAmanVzdF9TSUdBTFJNLCAmb3JpZ2luYWxfc2V0KSk7CisKKyAgLy8gV2FpdCB0aW1lb3V0LgorICBpbnQ2NF90IHN0YXJ0X3RpbWUgPSBOYW5vVGltZSgpOworICBzaWdpbmZvX3QgaW5mbzsKKyAgc3RydWN0IHRpbWVzcGVjIHRpbWVvdXQ7CisgIHRpbWVvdXQudHZfc2VjID0gMDsKKyAgdGltZW91dC50dl9uc2VjID0gMTAwMDAwMDsKKyAgZXJybm8gPSAwOworICBBU1NFUlRfRVEoLTEsIHNpZ3RpbWVkd2FpdCgmanVzdF9TSUdBTFJNLCAmaW5mbywgJnRpbWVvdXQpKTsKKyAgQVNTRVJUX0VRKEVBR0FJTiwgZXJybm8pOworICBBU1NFUlRfR0UoTmFub1RpbWUoKSAtIHN0YXJ0X3RpbWUsIDEwMDAwMDApOworCisgIEFTU0VSVF9FUSgwLCBzaWdwcm9jbWFzayhTSUdfU0VUTUFTSywgJm9yaWdpbmFsX3NldCwgTlVMTCkpOworfQpkaWZmIC0tZ2l0IGEvdGVzdHMvc3RhY2tfcHJvdGVjdG9yX3Rlc3QuY3BwIGIvdGVzdHMvc3RhY2tfcHJvdGVjdG9yX3Rlc3QuY3BwCmluZGV4IGZlYTI0ZDguLjIyMjg1ZDEgMTAwNjQ0Ci0tLSBhL3Rlc3RzL3N0YWNrX3Byb3RlY3Rvcl90ZXN0LmNwcAorKysgYi90ZXN0cy9zdGFja19wcm90ZWN0b3JfdGVzdC5jcHAKQEAgLTE5LDE4ICsxOSwxNSBAQAogICovCiAKICNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgorI2luY2x1ZGUgIkJpb25pY0RlYXRoVGVzdC5oIgogCiAjaW5jbHVkZSA8cHRocmVhZC5oPgogI2luY2x1ZGUgPHN0ZGludC5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+Ci0jaW5jbHVkZSA8c3lzL3N5c2NhbGwuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4KICNpbmNsdWRlIDxzZXQ+CiAKLSNpZiBkZWZpbmVkKF9fR0xJQkNfXykKLS8vIGdsaWJjIGRvZXNuJ3QgZXhwb3NlIGdldHRpZCgyKS4KLXBpZF90IGdldHRpZCgpIHsgcmV0dXJuIHN5c2NhbGwoX19OUl9nZXR0aWQpOyB9Ci0jZW5kaWYgLy8gX19HTElCQ19fCitleHRlcm4gIkMiIHBpZF90IGdldHRpZCgpOwogCiAvLyBGb3IgeDg2LCBiaW9uaWMgYW5kIGdsaWJjIGhhdmUgcGVyLXRocmVhZCBzdGFjayBndWFyZCB2YWx1ZXMgKGFsbCBpZGVudGljYWwpLgogI2lmIGRlZmluZWQoX19pMzg2X18pCkBAIC0xMDUsMTAgKzEwMiwxNiBAQAogICogVGhpcyBtdXN0IGJlIG1hcmtlZCB3aXRoICJfX2F0dHJpYnV0ZV9fICgobm9pbmxpbmUpKSIsIHRvIGVuc3VyZSB0aGUKICAqIGNvbXBpbGVyIGdlbmVyYXRlcyB0aGUgcHJvcGVyIHN0YWNrIGd1YXJkcyBhcm91bmQgdGhpcyBmdW5jdGlvbi4KICAqLworc3RhdGljIGNoYXIqIGR1bW15X2J1ZjsKKwogX19hdHRyaWJ1dGVfXyAoKG5vaW5saW5lKSkKIHN0YXRpYyB2b2lkIGRvX21vZGlmeV9zdGFja19jaGtfZ3VhcmQoKSB7CisgIGNoYXIgYnVmWzEyOF07CisgIC8vIFN0b3JlIGxvY2FsIGFycmF5J3MgYWRkcmVzcyB0byBnbG9iYWwgdmFyaWFibGUgdG8gZm9yY2UgY29tcGlsZXIgdG8gZ2VuZXJhdGUgc3RhY2sgZ3VhcmRzLgorICBkdW1teV9idWYgPSBidWY7CiAgIF9fc3RhY2tfY2hrX2d1YXJkID0gMHgxMjM0NTY3ODsKIH0KKwogI2VuZGlmCiAKIFRFU1Qoc3RhY2tfcHJvdGVjdG9yLCBnbG9iYWxfZ3VhcmQpIHsKQEAgLTEyMCw5ICsxMjMsMTAgQEAKICNlbmRpZiAvLyBURVNUX1NUQUNLX0NIS19HVUFSRAogfQogCi1URVNUKHN0YWNrX3Byb3RlY3Rvcl9EZWF0aFRlc3QsIG1vZGlmeV9zdGFja19wcm90ZWN0b3IpIHsKK2NsYXNzIHN0YWNrX3Byb3RlY3Rvcl9EZWF0aFRlc3QgOiBwdWJsaWMgQmlvbmljRGVhdGhUZXN0IHt9OworCitURVNUX0Yoc3RhY2tfcHJvdGVjdG9yX0RlYXRoVGVzdCwgbW9kaWZ5X3N0YWNrX3Byb3RlY3RvcikgewogI2lmIGRlZmluZWQoVEVTVF9TVEFDS19DSEtfR1VBUkQpCi0gIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKICAgQVNTRVJUX0VYSVQoZG9fbW9kaWZ5X3N0YWNrX2Noa19ndWFyZCgpLCB0ZXN0aW5nOjpLaWxsZWRCeVNpZ25hbChTSUdBQlJUKSwgIiIpOwogI2Vsc2UgLy8gVEVTVF9TVEFDS19DSEtfR1VBUkQKICAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7CmRpZmYgLS1naXQgYS90ZXN0cy9zdGFja191bndpbmRpbmdfdGVzdC5jcHAgYi90ZXN0cy9zdGFja191bndpbmRpbmdfdGVzdC5jcHAKaW5kZXggM2ZjNDVjNS4uZDFiMzQwMiAxMDA2NDQKLS0tIGEvdGVzdHMvc3RhY2tfdW53aW5kaW5nX3Rlc3QuY3BwCisrKyBiL3Rlc3RzL3N0YWNrX3Vud2luZGluZ190ZXN0LmNwcApAQCAtNzMsMzMgKzczLDQ3IEBACiAgIEFTU0VSVF9FUShjb3VudCArIDEsIGRlZXBlcl9jb3VudCk7CiB9CiAKLXN0YXRpYyBpbnQga2lsbGVyX2NvdW50ID0gMDsKLXN0YXRpYyBpbnQgaGFuZGxlcl9jb3VudCA9IDA7Ci1zdGF0aWMgaW50IGhhbmRsZXJfb25lX2RlZXBlcl9jb3VudCA9IDA7CitzdHJ1Y3QgVW53aW5kRGF0YSB7CisgIHZvbGF0aWxlIGJvb2wgc2lnbmFsX2hhbmRsZXJfY29tcGxldGUgPSBmYWxzZTsKKyAgaW50IGV4cGVjdGVkX2ZyYW1lX2NvdW50ID0gMDsKKyAgaW50IGhhbmRsZXJfZnJhbWVfY291bnQgPSAwOworICBpbnQgaGFuZGxlcl9vbmVfZGVlcGVyX2ZyYW1lX2NvdW50ID0gMDsKK307CisKK3N0YXRpYyBVbndpbmREYXRhIGdfdW53aW5kX2RhdGE7CiAKIHN0YXRpYyB2b2lkIG5vaW5saW5lIFVud2luZFNpZ25hbEhhbmRsZXIoaW50KSB7Ci0gIF9VbndpbmRfQmFja3RyYWNlKEZyYW1lQ291bnRlciwgJmhhbmRsZXJfY291bnQpOwotICBBU1NFUlRfR1QoaGFuZGxlcl9jb3VudCwga2lsbGVyX2NvdW50KTsKKyAgX1Vud2luZF9CYWNrdHJhY2UoRnJhbWVDb3VudGVyLCAmZ191bndpbmRfZGF0YS5oYW5kbGVyX2ZyYW1lX2NvdW50KTsKIAotICBoYW5kbGVyX29uZV9kZWVwZXJfY291bnQgPSB1bndpbmRfb25lX2ZyYW1lX2RlZXBlcigpOwotICBBU1NFUlRfRVEoaGFuZGxlcl9jb3VudCArIDEsIGhhbmRsZXJfb25lX2RlZXBlcl9jb3VudCk7CisgIGdfdW53aW5kX2RhdGEuaGFuZGxlcl9vbmVfZGVlcGVyX2ZyYW1lX2NvdW50ID0gdW53aW5kX29uZV9mcmFtZV9kZWVwZXIoKTsKKyAgZ191bndpbmRfZGF0YS5zaWduYWxfaGFuZGxlcl9jb21wbGV0ZSA9IHRydWU7Cit9CisKK3N0YXRpYyB2b2lkIHZlcmlmeV91bndpbmRfZGF0YShjb25zdCBVbndpbmREYXRhJiB1bndpbmRfZGF0YSkgeworICBFWFBFQ1RfR1QodW53aW5kX2RhdGEuaGFuZGxlcl9mcmFtZV9jb3VudCwgdW53aW5kX2RhdGEuZXhwZWN0ZWRfZnJhbWVfY291bnQpOworICBFWFBFQ1RfRVEodW53aW5kX2RhdGEuaGFuZGxlcl9mcmFtZV9jb3VudCArIDEsIHVud2luZF9kYXRhLmhhbmRsZXJfb25lX2RlZXBlcl9mcmFtZV9jb3VudCk7CiB9CiAKIFRFU1Qoc3RhY2tfdW53aW5kaW5nLCB1bndpbmRfdGhyb3VnaF9zaWduYWxfZnJhbWUpIHsKLSAga2lsbGVyX2NvdW50ID0gaGFuZGxlcl9jb3VudCA9IGhhbmRsZXJfb25lX2RlZXBlcl9jb3VudCA9IDA7CisgIGdfdW53aW5kX2RhdGEgPSB7fTsKICAgU2NvcGVkU2lnbmFsSGFuZGxlciBzc2goU0lHVVNSMSwgVW53aW5kU2lnbmFsSGFuZGxlcik7CiAKLSAgX1Vud2luZF9CYWNrdHJhY2UoRnJhbWVDb3VudGVyLCAma2lsbGVyX2NvdW50KTsKKyAgX1Vud2luZF9CYWNrdHJhY2UoRnJhbWVDb3VudGVyLCAmZ191bndpbmRfZGF0YS5leHBlY3RlZF9mcmFtZV9jb3VudCk7CiAKICAgQVNTRVJUX0VRKDAsIGtpbGwoZ2V0cGlkKCksIFNJR1VTUjEpKTsKKyAgd2hpbGUgKCFnX3Vud2luZF9kYXRhLnNpZ25hbF9oYW5kbGVyX2NvbXBsZXRlKSB7fQorCisgIHZlcmlmeV91bndpbmRfZGF0YShnX3Vud2luZF9kYXRhKTsKIH0KIAogLy8gT24gTFAzMiwgdGhlIFNBX1NJR0lORk8gZmxhZyBnZXRzIHlvdSBfX3Jlc3RvcmVfcnQgaW5zdGVhZCBvZiBfX3Jlc3RvcmUuCiBURVNUKHN0YWNrX3Vud2luZGluZywgdW53aW5kX3Rocm91Z2hfc2lnbmFsX2ZyYW1lX1NBX1NJR0lORk8pIHsKLSAga2lsbGVyX2NvdW50ID0gaGFuZGxlcl9jb3VudCA9IGhhbmRsZXJfb25lX2RlZXBlcl9jb3VudCA9IDA7CisgIGdfdW53aW5kX2RhdGEgPSB7fTsKICAgU2NvcGVkU2lnbmFsSGFuZGxlciBzc2goU0lHVVNSMSwgVW53aW5kU2lnbmFsSGFuZGxlciwgU0FfU0lHSU5GTyk7CiAKLSAgX1Vud2luZF9CYWNrdHJhY2UoRnJhbWVDb3VudGVyLCAma2lsbGVyX2NvdW50KTsKLQorICBfVW53aW5kX0JhY2t0cmFjZShGcmFtZUNvdW50ZXIsICZnX3Vud2luZF9kYXRhLmV4cGVjdGVkX2ZyYW1lX2NvdW50KTsKICAgQVNTRVJUX0VRKDAsIGtpbGwoZ2V0cGlkKCksIFNJR1VTUjEpKTsKKyAgd2hpbGUgKCFnX3Vud2luZF9kYXRhLnNpZ25hbF9oYW5kbGVyX2NvbXBsZXRlKSB7fQorCisgIHZlcmlmeV91bndpbmRfZGF0YShnX3Vud2luZF9kYXRhKTsKIH0KZGlmZiAtLWdpdCBhL3Rlc3RzL3N0ZGF0b21pY190ZXN0LmNwcCBiL3Rlc3RzL3N0ZGF0b21pY190ZXN0LmNwcAppbmRleCBiN2ZiMTliLi5lYjAzMGJmIDEwMDY0NAotLS0gYS90ZXN0cy9zdGRhdG9taWNfdGVzdC5jcHAKKysrIGIvdGVzdHMvc3RkYXRvbWljX3Rlc3QuY3BwCkBAIC0xNCw4ICsxNCwxMCBAQAogICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCiAgKi8KIAotI2luY2x1ZGUgPHN0ZGF0b21pYy5oPgogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CisvLyBGb29sIHN0ZGF0b21pYy5oIGludG8gbm90IHVzaW5nIDxhdG9taWM+LgorI3VuZGVmIF9VU0lOR19MSUJDWFgKKyNpbmNsdWRlIDxzdGRhdG9taWMuaD4KICNpbmNsdWRlIDxwdGhyZWFkLmg+CiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAKZGlmZiAtLWdpdCBhL3Rlc3RzL3N0ZGlvX2V4dF90ZXN0LmNwcCBiL3Rlc3RzL3N0ZGlvX2V4dF90ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jOTVjYmJkCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvc3RkaW9fZXh0X3Rlc3QuY3BwCkBAIC0wLDAgKzEsMTQyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI2luY2x1ZGUgPHN0ZGlvX2V4dC5oPgorCisjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlIDxtYXRoLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHdjaGFyLmg+CisjaW5jbHVkZSA8bG9jYWxlLmg+CisKKyNpbmNsdWRlICJUZW1wb3JhcnlGaWxlLmgiCisKK1RFU1Qoc3RkaW9fZXh0LCBfX2ZidWZzaXplKSB7CisgIEZJTEUqIGZwID0gZm9wZW4oIi9wcm9jL3ZlcnNpb24iLCAiciIpOworCisgIC8vIEluaXRpYWxseSwgdGhlcmUncyBubyBidWZmZXIgaW4gY2FzZSB0aGUgZmlyc3QgdGhpbmcgeW91IGRvIGlzIGRpc2FibGUgYnVmZmVyaW5nLgorICBBU1NFUlRfRVEoMFUsIF9fZmJ1ZnNpemUoZnApKTsKKworICAvLyBBIHJlYWQgZm9yY2VzIGEgYnVmZmVyIHRvIGJlIGNyZWF0ZWQuCisgIGNoYXIgYnVmWzEyOF07CisgIGZnZXRzKGJ1Ziwgc2l6ZW9mKGJ1ZiksIGZwKTsKKyAgQVNTRVJUX0VRKDEwMjRVLCBfX2ZidWZzaXplKGZwKSk7CisKKyAgQVNTRVJUX0VRKDAsIHNldHZidWYoZnAsIGJ1ZiwgX0lPRkJGLCAxKSk7CisgIEFTU0VSVF9FUSgxVSwgX19mYnVmc2l6ZShmcCkpOworCisgIEFTU0VSVF9FUSgwLCBzZXR2YnVmKGZwLCBidWYsIF9JT0ZCRiwgOCkpOworICBBU1NFUlRfRVEoOFUsIF9fZmJ1ZnNpemUoZnApKTsKKworICBmY2xvc2UoZnApOworfQorCitURVNUKHN0ZGlvX2V4dCwgX19mbGJmKSB7CisgIEZJTEUqIGZwID0gZm9wZW4oIi9wcm9jL3ZlcnNpb24iLCAiciIpOworCisgIEFTU0VSVF9GQUxTRShfX2ZsYmYoZnApKTsKKworICBjaGFyIGJ1ZlsxMjhdOworICBBU1NFUlRfRVEoMCwgc2V0dmJ1ZihmcCwgYnVmLCBfSU9MQkYsIHNpemVvZihidWYpKSk7CisKKyAgQVNTRVJUX1RSVUUoX19mbGJmKGZwKSk7CisKKyAgZmNsb3NlKGZwKTsKK30KKworVEVTVChzdGRpb19leHQsIF9fZnBlbmRpbmcpIHsKKyAgRklMRSogZnAgPSBmb3BlbigiL2Rldi9udWxsIiwgInciKTsKKyAgQVNTRVJUX0VRKDBVLCBfX2ZwZW5kaW5nKGZwKSk7CisgIEFTU0VSVF9FUSgneCcsIGZwdXRjKCd4JywgZnApKTsKKyAgQVNTRVJUX0VRKDFVLCBfX2ZwZW5kaW5nKGZwKSk7CisgIEFTU0VSVF9FUSgneScsIGZwdXRjKCd5JywgZnApKTsKKyAgQVNTRVJUX0VRKDJVLCBfX2ZwZW5kaW5nKGZwKSk7CisgIGZmbHVzaChmcCk7CisgIEFTU0VSVF9FUSgwVSwgX19mcGVuZGluZyhmcCkpOworICBmY2xvc2UoZnApOworfQorCitURVNUKHN0ZGlvX2V4dCwgX19mcHVyZ2UpIHsKKyAgRklMRSogZnAgPSB0bXBmaWxlKCk7CisKKyAgQVNTRVJUX0VRKCdhJywgZnB1dGMoJ2EnLCBmcCkpOworICBBU1NFUlRfRVEoMVUsIF9fZnBlbmRpbmcoZnApKTsKKyAgX19mcHVyZ2UoZnApOworICBBU1NFUlRfRVEoMFUsIF9fZnBlbmRpbmcoZnApKTsKKworICBBU1NFUlRfRVEoJ2InLCBmcHV0YygnYicsIGZwKSk7CisgIEFTU0VSVF9FUSgnXG4nLCBmcHV0YygnXG4nLCBmcCkpOworICBBU1NFUlRfRVEoMlUsIF9fZnBlbmRpbmcoZnApKTsKKworICByZXdpbmQoZnApOworCisgIGNoYXIgYnVmWzE2XTsKKyAgY2hhciogcyA9IGZnZXRzKGJ1Ziwgc2l6ZW9mKGJ1ZiksIGZwKTsKKyAgQVNTRVJUX1RSVUUocyAhPSBOVUxMKTsKKyAgQVNTRVJUX1NUUkVRKCJiXG4iLCBzKTsKKworICBmY2xvc2UoZnApOworfQorCitURVNUKHN0ZGlvX2V4dCwgX2ZsdXNobGJmKSB7CisgIEZJTEUqIGZwID0gZm9wZW4oIi9kZXYvbnVsbCIsICJ3Iik7CisKKyAgY2hhciBidWZbMTI4XTsKKyAgQVNTRVJUX0VRKDAsIHNldHZidWYoZnAsIGJ1ZiwgX0lPTEJGLCBzaXplb2YoYnVmKSkpOworCisgIEFTU0VSVF9FUSgnYScsIGZwdXRjKCdhJywgZnApKTsKKyAgQVNTRVJUX0VRKDFVLCBfX2ZwZW5kaW5nKGZwKSk7CisKKyAgX2ZsdXNobGJmKCk7CisKKyAgQVNTRVJUX0VRKDBVLCBfX2ZwZW5kaW5nKGZwKSk7CisKKyAgZmNsb3NlKGZwKTsKK30KKworVEVTVChzdGRpb19leHQsIF9fZnJlYWRhYmxlX19md3JpdGFibGUpIHsKKyAgRklMRSogZnAgPSBmb3BlbigiL2Rldi9udWxsIiwgInIiKTsKKyAgQVNTRVJUX1RSVUUoX19mcmVhZGFibGUoZnApKTsKKyAgQVNTRVJUX0ZBTFNFKF9fZndyaXRhYmxlKGZwKSk7CisgIGZjbG9zZShmcCk7CisKKyAgZnAgPSBmb3BlbigiL2Rldi9udWxsIiwgInciKTsKKyAgQVNTRVJUX0ZBTFNFKF9fZnJlYWRhYmxlKGZwKSk7CisgIEFTU0VSVF9UUlVFKF9fZndyaXRhYmxlKGZwKSk7CisgIGZjbG9zZShmcCk7CisKKyAgZnAgPSBmb3BlbigiL2Rldi9udWxsIiwgIncrIik7CisgIEFTU0VSVF9UUlVFKF9fZnJlYWRhYmxlKGZwKSk7CisgIEFTU0VSVF9UUlVFKF9fZndyaXRhYmxlKGZwKSk7CisgIGZjbG9zZShmcCk7Cit9CisKK1RFU1Qoc3RkaW9fZXh0LCBfX2ZzZXRsb2NraW5nKSB7CisgIEZJTEUqIGZwID0gZm9wZW4oIi9wcm9jL3ZlcnNpb24iLCAiciIpOworICBBU1NFUlRfRVEoRlNFVExPQ0tJTkdfSU5URVJOQUwsIF9fZnNldGxvY2tpbmcoZnAsIEZTRVRMT0NLSU5HX1FVRVJZKSk7CisgIEFTU0VSVF9FUShGU0VUTE9DS0lOR19JTlRFUk5BTCwgX19mc2V0bG9ja2luZyhmcCwgRlNFVExPQ0tJTkdfQllDQUxMRVIpKTsKKyAgQVNTRVJUX0VRKEZTRVRMT0NLSU5HX0JZQ0FMTEVSLCBfX2ZzZXRsb2NraW5nKGZwLCBGU0VUTE9DS0lOR19RVUVSWSkpOworICBBU1NFUlRfRVEoRlNFVExPQ0tJTkdfQllDQUxMRVIsIF9fZnNldGxvY2tpbmcoZnAsIEZTRVRMT0NLSU5HX0lOVEVSTkFMKSk7CisgIEFTU0VSVF9FUShGU0VUTE9DS0lOR19JTlRFUk5BTCwgX19mc2V0bG9ja2luZyhmcCwgRlNFVExPQ0tJTkdfUVVFUlkpKTsKKyAgZmNsb3NlKGZwKTsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL3N0ZGlvX3Rlc3QuY3BwIGIvdGVzdHMvc3RkaW9fdGVzdC5jcHAKaW5kZXggYmJhNzQ0YS4uNjI2NzdjZCAxMDA2NDQKLS0tIGEvdGVzdHMvc3RkaW9fdGVzdC5jcHAKKysrIGIvdGVzdHMvc3RkaW9fdGVzdC5jcHAKQEAgLTI3LDYgKzI3LDggQEAKICNpbmNsdWRlIDx3Y2hhci5oPgogI2luY2x1ZGUgPGxvY2FsZS5oPgogCisjaW5jbHVkZSA8dmVjdG9yPgorCiAjaW5jbHVkZSAiVGVtcG9yYXJ5RmlsZS5oIgogCiBURVNUKHN0ZGlvLCBmbG9ja2ZpbGVfMTgyMDg1Njhfc3RkZXJyKSB7CkBAIC03Nyw3ICs3OSw3IEBACiAgIGludCByYyA9IGRwcmludGYodGYuZmQsICJoZWxsb1xuIik7CiAgIEFTU0VSVF9FUShyYywgNik7CiAKLSAgbHNlZWsodGYuZmQsIFNFRUtfU0VULCAwKTsKKyAgbHNlZWsodGYuZmQsIDAsIFNFRUtfU0VUKTsKICAgRklMRSogdGZpbGUgPSBmZG9wZW4odGYuZmQsICJyIik7CiAgIEFTU0VSVF9UUlVFKHRmaWxlICE9IE5VTEwpOwogCkBAIC0xMDcsNyArMTA5LDcgQEAKICAgICBBU1NFUlRfRkFMU0UoZmVvZihmcCkpOwogICAgIEFTU0VSVF9FUShnZXRkZWxpbSgmd29yZF9yZWFkLCAmYWxsb2NhdGVkX2xlbmd0aCwgJyAnLCBmcCksIHN0YXRpY19jYXN0PGludD4oc3RybGVuKGV4cGVjdGVkW2ldKSkpOwogICAgIEFTU0VSVF9HRShhbGxvY2F0ZWRfbGVuZ3RoLCBzdHJsZW4oZXhwZWN0ZWRbaV0pKTsKLSAgICBBU1NFUlRfU1RSRVEod29yZF9yZWFkLCBleHBlY3RlZFtpXSk7CisgICAgQVNTRVJUX1NUUkVRKGV4cGVjdGVkW2ldLCB3b3JkX3JlYWQpOwogICB9CiAgIC8vIFRoZSBsYXN0IHJlYWQgc2hvdWxkIGhhdmUgc2V0IHRoZSBlbmQtb2YtZmlsZSBpbmRpY2F0b3IgZm9yIHRoZSBzdHJlYW0uCiAgIEFTU0VSVF9UUlVFKGZlb2YoZnApKTsKQEAgLTE0OSw2ICsxNTEsMTUgQEAKICAgZmNsb3NlKGZwKTsKIH0KIAorVEVTVChzdGRpbywgZ2V0ZGVsaW1fZGlyZWN0b3J5KSB7CisgIEZJTEUqIGZwID0gZm9wZW4oIi9wcm9jIiwgInIiKTsKKyAgQVNTRVJUX1RSVUUoZnAgIT0gTlVMTCk7CisgIGNoYXIqIHdvcmRfcmVhZDsKKyAgc2l6ZV90IGFsbG9jYXRlZF9sZW5ndGg7CisgIEFTU0VSVF9FUSgtMSwgZ2V0ZGVsaW0oJndvcmRfcmVhZCwgJmFsbG9jYXRlZF9sZW5ndGgsICcgJywgZnApKTsKKyAgZmNsb3NlKGZwKTsKK30KKwogVEVTVChzdGRpbywgZ2V0bGluZSkgewogICBGSUxFKiBmcCA9IHRtcGZpbGUoKTsKICAgQVNTRVJUX1RSVUUoZnAgIT0gTlVMTCk7CkBAIC0xNzEsNyArMTgyLDcgQEAKICAgd2hpbGUgKChyZWFkX2NoYXJfY291bnQgPSBnZXRsaW5lKCZsaW5lX3JlYWQsICZhbGxvY2F0ZWRfbGVuZ3RoLCBmcCkpICE9IC0xKSB7CiAgICAgQVNTRVJUX0VRKHJlYWRfY2hhcl9jb3VudCwgc3RhdGljX2Nhc3Q8aW50PihzdHJsZW4obGluZV93cml0dGVuKSkpOwogICAgIEFTU0VSVF9HRShhbGxvY2F0ZWRfbGVuZ3RoLCBzdHJsZW4obGluZV93cml0dGVuKSk7Ci0gICAgQVNTRVJUX1NUUkVRKGxpbmVfcmVhZCwgbGluZV93cml0dGVuKTsKKyAgICBBU1NFUlRfU1RSRVEobGluZV93cml0dGVuLCBsaW5lX3JlYWQpOwogICAgICsrcmVhZF9saW5lX2NvdW50OwogICB9CiAgIEFTU0VSVF9FUShyZWFkX2xpbmVfY291bnQsIGxpbmVfY291bnQpOwpAQCAtMzY0LDIyICszNzUsNTIgQEAKICAgRVhQRUNUX1NUUkVRKCJwcmludF9tZV90d2ljZSBwcmludF9tZV90d2ljZSIsIGJ1Zik7CiB9CiAKLVRFU1Qoc3RkaW8sIHNucHJpbnRmX2Zfc3BlY2lhbCkgewotICBjaGFyIGJ1ZltCVUZTSVpdOwotICBzbnByaW50ZihidWYsIHNpemVvZihidWYpLCAiJWYiLCBuYW5mKCIiKSk7Ci0gIEVYUEVDVF9TVFJDQVNFRVEoIk5hTiIsIGJ1Zik7Cit0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KK3ZvaWQgQ2hlY2tJbmZOYW4oaW50IHNucHJpbnRmX2ZuKFQqLCBzaXplX3QsIGNvbnN0IFQqLCAuLi4pLAorICAgICAgICAgICAgICAgICBjb25zdCBUKiBmbXQsIGNvbnN0IFQqIGZtdF9wbHVzLAorICAgICAgICAgICAgICAgICBjb25zdCBUKiBtaW51c19pbmYsIGNvbnN0IFQqIGluZl8sIGNvbnN0IFQqIHBsdXNfaW5mLAorICAgICAgICAgICAgICAgICBjb25zdCBUKiBtaW51c19uYW4sIGNvbnN0IFQqIG5hbl8sIGNvbnN0IFQqIHBsdXNfbmFuKSB7CisgIFQgYnVmW0JVRlNJWl07CiAKLSAgc25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwgIiVmIiwgSFVHRV9WQUxGKTsKLSAgRVhQRUNUX1NUUkNBU0VFUSgiSW5mIiwgYnVmKTsKKyAgc25wcmludGZfZm4oYnVmLCBzaXplb2YoYnVmKSwgZm10LCBuYW4oIiIpKTsKKyAgRVhQRUNUX1NUUkVRKG5hbl8sIGJ1ZikgPDwgZm10OworICBzbnByaW50Zl9mbihidWYsIHNpemVvZihidWYpLCBmbXQsIC1uYW4oIiIpKTsKKyAgRVhQRUNUX1NUUkVRKG1pbnVzX25hbiwgYnVmKSA8PCBmbXQ7CisgIHNucHJpbnRmX2ZuKGJ1Ziwgc2l6ZW9mKGJ1ZiksIGZtdF9wbHVzLCBuYW4oIiIpKTsKKyAgRVhQRUNUX1NUUkVRKHBsdXNfbmFuLCBidWYpIDw8IGZtdF9wbHVzOworICBzbnByaW50Zl9mbihidWYsIHNpemVvZihidWYpLCBmbXRfcGx1cywgLW5hbigiIikpOworICBFWFBFQ1RfU1RSRVEobWludXNfbmFuLCBidWYpIDw8IGZtdF9wbHVzOworCisgIHNucHJpbnRmX2ZuKGJ1Ziwgc2l6ZW9mKGJ1ZiksIGZtdCwgSFVHRV9WQUwpOworICBFWFBFQ1RfU1RSRVEoaW5mXywgYnVmKSA8PCBmbXQ7CisgIHNucHJpbnRmX2ZuKGJ1Ziwgc2l6ZW9mKGJ1ZiksIGZtdCwgLUhVR0VfVkFMKTsKKyAgRVhQRUNUX1NUUkVRKG1pbnVzX2luZiwgYnVmKSA8PCBmbXQ7CisgIHNucHJpbnRmX2ZuKGJ1Ziwgc2l6ZW9mKGJ1ZiksIGZtdF9wbHVzLCBIVUdFX1ZBTCk7CisgIEVYUEVDVF9TVFJFUShwbHVzX2luZiwgYnVmKSA8PCBmbXRfcGx1czsKKyAgc25wcmludGZfZm4oYnVmLCBzaXplb2YoYnVmKSwgZm10X3BsdXMsIC1IVUdFX1ZBTCk7CisgIEVYUEVDVF9TVFJFUShtaW51c19pbmYsIGJ1ZikgPDwgZm10X3BsdXM7CiB9CiAKLVRFU1Qoc3RkaW8sIHNucHJpbnRmX2dfc3BlY2lhbCkgewotICBjaGFyIGJ1ZltCVUZTSVpdOwotICBzbnByaW50ZihidWYsIHNpemVvZihidWYpLCAiJWciLCBuYW4oIiIpKTsKLSAgRVhQRUNUX1NUUkNBU0VFUSgiTmFOIiwgYnVmKTsKK1RFU1Qoc3RkaW8sIHNucHJpbnRmX2luZl9uYW4pIHsKKyAgQ2hlY2tJbmZOYW4oc25wcmludGYsICIlYSIsICIlK2EiLCAiLWluZiIsICJpbmYiLCAiK2luZiIsICItbmFuIiwgIm5hbiIsICIrbmFuIik7CisgIENoZWNrSW5mTmFuKHNucHJpbnRmLCAiJUEiLCAiJStBIiwgIi1JTkYiLCAiSU5GIiwgIitJTkYiLCAiLU5BTiIsICJOQU4iLCAiK05BTiIpOworICBDaGVja0luZk5hbihzbnByaW50ZiwgIiVlIiwgIiUrZSIsICItaW5mIiwgImluZiIsICIraW5mIiwgIi1uYW4iLCAibmFuIiwgIituYW4iKTsKKyAgQ2hlY2tJbmZOYW4oc25wcmludGYsICIlRSIsICIlK0UiLCAiLUlORiIsICJJTkYiLCAiK0lORiIsICItTkFOIiwgIk5BTiIsICIrTkFOIik7CisgIENoZWNrSW5mTmFuKHNucHJpbnRmLCAiJWYiLCAiJStmIiwgIi1pbmYiLCAiaW5mIiwgIitpbmYiLCAiLW5hbiIsICJuYW4iLCAiK25hbiIpOworICBDaGVja0luZk5hbihzbnByaW50ZiwgIiVGIiwgIiUrRiIsICItSU5GIiwgIklORiIsICIrSU5GIiwgIi1OQU4iLCAiTkFOIiwgIitOQU4iKTsKKyAgQ2hlY2tJbmZOYW4oc25wcmludGYsICIlZyIsICIlK2ciLCAiLWluZiIsICJpbmYiLCAiK2luZiIsICItbmFuIiwgIm5hbiIsICIrbmFuIik7CisgIENoZWNrSW5mTmFuKHNucHJpbnRmLCAiJUciLCAiJStHIiwgIi1JTkYiLCAiSU5GIiwgIitJTkYiLCAiLU5BTiIsICJOQU4iLCAiK05BTiIpOworfQogCi0gIHNucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksICIlZyIsIEhVR0VfVkFMKTsKLSAgRVhQRUNUX1NUUkNBU0VFUSgiSW5mIiwgYnVmKTsKK1RFU1Qoc3RkaW8sIHdzcHJpbnRmX2luZl9uYW4pIHsKKyAgQ2hlY2tJbmZOYW4oc3dwcmludGYsIEwiJWEiLCBMIiUrYSIsIEwiLWluZiIsIEwiaW5mIiwgTCIraW5mIiwgTCItbmFuIiwgTCJuYW4iLCBMIituYW4iKTsKKyAgQ2hlY2tJbmZOYW4oc3dwcmludGYsIEwiJUEiLCBMIiUrQSIsIEwiLUlORiIsIEwiSU5GIiwgTCIrSU5GIiwgTCItTkFOIiwgTCJOQU4iLCBMIitOQU4iKTsKKyAgQ2hlY2tJbmZOYW4oc3dwcmludGYsIEwiJWUiLCBMIiUrZSIsIEwiLWluZiIsIEwiaW5mIiwgTCIraW5mIiwgTCItbmFuIiwgTCJuYW4iLCBMIituYW4iKTsKKyAgQ2hlY2tJbmZOYW4oc3dwcmludGYsIEwiJUUiLCBMIiUrRSIsIEwiLUlORiIsIEwiSU5GIiwgTCIrSU5GIiwgTCItTkFOIiwgTCJOQU4iLCBMIitOQU4iKTsKKyAgQ2hlY2tJbmZOYW4oc3dwcmludGYsIEwiJWYiLCBMIiUrZiIsIEwiLWluZiIsIEwiaW5mIiwgTCIraW5mIiwgTCItbmFuIiwgTCJuYW4iLCBMIituYW4iKTsKKyAgQ2hlY2tJbmZOYW4oc3dwcmludGYsIEwiJUYiLCBMIiUrRiIsIEwiLUlORiIsIEwiSU5GIiwgTCIrSU5GIiwgTCItTkFOIiwgTCJOQU4iLCBMIitOQU4iKTsKKyAgQ2hlY2tJbmZOYW4oc3dwcmludGYsIEwiJWciLCBMIiUrZyIsIEwiLWluZiIsIEwiaW5mIiwgTCIraW5mIiwgTCItbmFuIiwgTCJuYW4iLCBMIituYW4iKTsKKyAgQ2hlY2tJbmZOYW4oc3dwcmludGYsIEwiJUciLCBMIiUrRyIsIEwiLUlORiIsIEwiSU5GIiwgTCIrSU5GIiwgTCItTkFOIiwgTCJOQU4iLCBMIitOQU4iKTsKIH0KIAogVEVTVChzdGRpbywgc25wcmludGZfZF9JTlRfTUFYKSB7CkBAIC00MzksOCArNDgwLDIyIEBACiBURVNUKHN0ZGlvLCBzbnByaW50Zl9uZWdhdGl2ZV96ZXJvXzUwODQyOTIpIHsKICAgY2hhciBidWZbQlVGU0laXTsKIAorICBzbnByaW50ZihidWYsIHNpemVvZihidWYpLCAiJWUiLCAtMC4wKTsKKyAgRVhQRUNUX1NUUkVRKCItMC4wMDAwMDBlKzAwIiwgYnVmKTsKKyAgc25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwgIiVFIiwgLTAuMCk7CisgIEVYUEVDVF9TVFJFUSgiLTAuMDAwMDAwRSswMCIsIGJ1Zik7CiAgIHNucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksICIlZiIsIC0wLjApOwogICBFWFBFQ1RfU1RSRVEoIi0wLjAwMDAwMCIsIGJ1Zik7CisgIHNucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksICIlRiIsIC0wLjApOworICBFWFBFQ1RfU1RSRVEoIi0wLjAwMDAwMCIsIGJ1Zik7CisgIHNucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksICIlZyIsIC0wLjApOworICBFWFBFQ1RfU1RSRVEoIi0wIiwgYnVmKTsKKyAgc25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwgIiVHIiwgLTAuMCk7CisgIEVYUEVDVF9TVFJFUSgiLTAiLCBidWYpOworICBzbnByaW50ZihidWYsIHNpemVvZihidWYpLCAiJWEiLCAtMC4wKTsKKyAgRVhQRUNUX1NUUkVRKCItMHgwcCswIiwgYnVmKTsKKyAgc25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwgIiVBIiwgLTAuMCk7CisgIEVYUEVDVF9TVFJFUSgiLTBYMFArMCIsIGJ1Zik7CiB9CiAKIFRFU1Qoc3RkaW8sIHNucHJpbnRmX3V0ZjhfMTU0Mzk1NTQpIHsKQEAgLTY5NSw2ICs3NTAsMTI1IEBACiAgIGZjbG9zZShmcCk7CiB9CiAKK1RFU1Qoc3RkaW8sIGZtZW1vcGVuKSB7CisgIGNoYXIgYnVmWzE2XTsKKyAgbWVtc2V0KGJ1ZiwgMCwgc2l6ZW9mKGJ1ZikpOworICBGSUxFKiBmcCA9IGZtZW1vcGVuKGJ1Ziwgc2l6ZW9mKGJ1ZiksICJyKyIpOworICBBU1NFUlRfRVEoJzwnLCBmcHV0YygnPCcsIGZwKSk7CisgIEFTU0VSVF9ORShFT0YsIGZwdXRzKCJhYmM+XG4iLCBmcCkpOworICBmZmx1c2goZnApOworCisgIEFTU0VSVF9TVFJFUSgiPGFiYz5cbiIsIGJ1Zik7CisKKyAgcmV3aW5kKGZwKTsKKworICBjaGFyIGxpbmVbMTZdOworICBjaGFyKiBzID0gZmdldHMobGluZSwgc2l6ZW9mKGxpbmUpLCBmcCk7CisgIEFTU0VSVF9UUlVFKHMgIT0gTlVMTCk7CisgIEFTU0VSVF9TVFJFUSgiPGFiYz5cbiIsIHMpOworCisgIGZjbG9zZShmcCk7Cit9CisKK1RFU1Qoc3RkaW8sIGZtZW1vcGVuX05VTEwpIHsKKyAgRklMRSogZnAgPSBmbWVtb3BlbihudWxscHRyLCAxMjgsICJyKyIpOworICBBU1NFUlRfTkUoRU9GLCBmcHV0cygieHl6XG4iLCBmcCkpOworCisgIHJld2luZChmcCk7CisKKyAgY2hhciBsaW5lWzE2XTsKKyAgY2hhciogcyA9IGZnZXRzKGxpbmUsIHNpemVvZihsaW5lKSwgZnApOworICBBU1NFUlRfVFJVRShzICE9IE5VTEwpOworICBBU1NFUlRfU1RSRVEoInh5elxuIiwgcyk7CisKKyAgZmNsb3NlKGZwKTsKK30KKworVEVTVChzdGRpbywgZm1lbW9wZW5fRUlOVkFMKSB7CisgIGNoYXIgYnVmWzE2XTsKKworICAvLyBJbnZhbGlkIHNpemUuCisgIGVycm5vID0gMDsKKyAgQVNTRVJUX0VRKG51bGxwdHIsIGZtZW1vcGVuKGJ1ZiwgMCwgInIrIikpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisKKyAgLy8gTm8gJysnIHdpdGggTlVMTCBidWZmZXIuCisgIGVycm5vID0gMDsKKyAgQVNTRVJUX0VRKG51bGxwdHIsIGZtZW1vcGVuKG51bGxwdHIsIDAsICJyIikpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7Cit9CisKK1RFU1Qoc3RkaW8sIG9wZW5fbWVtc3RyZWFtKSB7CisgIGNoYXIqIHAgPSBudWxscHRyOworICBzaXplX3Qgc2l6ZSA9IDA7CisgIEZJTEUqIGZwID0gb3Blbl9tZW1zdHJlYW0oJnAsICZzaXplKTsKKyAgQVNTRVJUX05FKEVPRiwgZnB1dHMoImhlbGxvLCB3b3JsZCEiLCBmcCkpOworICBmY2xvc2UoZnApOworCisgIEFTU0VSVF9TVFJFUSgiaGVsbG8sIHdvcmxkISIsIHApOworICBBU1NFUlRfRVEoc3RybGVuKCJoZWxsbywgd29ybGQhIiksIHNpemUpOworICBmcmVlKHApOworfQorCitURVNUKHN0ZGlvLCBvcGVuX21lbXN0cmVhbV9FSU5WQUwpIHsKKyNpZiBkZWZpbmVkKF9fQklPTklDX18pCisgIGNoYXIqIHA7CisgIHNpemVfdCBzaXplOworCisgIC8vIEludmFsaWQgYnVmZmVyLgorICBlcnJubyA9IDA7CisgIEFTU0VSVF9FUShudWxscHRyLCBvcGVuX21lbXN0cmVhbShudWxscHRyLCAmc2l6ZSkpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisKKyAgLy8gSW52YWxpZCBzaXplLgorICBlcnJubyA9IDA7CisgIEFTU0VSVF9FUShudWxscHRyLCBvcGVuX21lbXN0cmVhbSgmcCwgbnVsbHB0cikpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisjZWxzZQorICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKKyNlbmRpZgorfQorCitURVNUKHN0ZGlvLCBmZG9wZW5fQ0xPRVhFQykgeworICBpbnQgZmQgPSBvcGVuKCIvcHJvYy92ZXJzaW9uIiwgT19SRE9OTFkpOworICBBU1NFUlRfVFJVRShmZCAhPSAtMSk7CisKKyAgLy8gVGhpcyBmZCBkb2Vzbid0IGhhdmUgT19DTE9FWEVDLi4uCisgIGludCBmbGFncyA9IGZjbnRsKGZkLCBGX0dFVEZEKTsKKyAgQVNTRVJUX1RSVUUoZmxhZ3MgIT0gLTEpOworICBBU1NFUlRfRVEoMCwgZmxhZ3MgJiBGRF9DTE9FWEVDKTsKKworICBGSUxFKiBmcCA9IGZkb3BlbihmZCwgInJlIik7CisgIEFTU0VSVF9UUlVFKGZwICE9IE5VTEwpOworCisgIC8vIC4uLmJ1dCB0aGUgbmV3IG9uZSBkb2VzLgorICBmbGFncyA9IGZjbnRsKGZpbGVubyhmcCksIEZfR0VURkQpOworICBBU1NFUlRfVFJVRShmbGFncyAhPSAtMSk7CisgIEFTU0VSVF9FUShGRF9DTE9FWEVDLCBmbGFncyAmIEZEX0NMT0VYRUMpOworCisgIGZjbG9zZShmcCk7CisgIGNsb3NlKGZkKTsKK30KKworVEVTVChzdGRpbywgZnJlb3Blbl9DTE9FWEVDKSB7CisgIEZJTEUqIGZwID0gZm9wZW4oIi9wcm9jL3ZlcnNpb24iLCAiciIpOworICBBU1NFUlRfVFJVRShmcCAhPSBOVUxMKTsKKworICAvLyBUaGlzIEZJTEUqIGRvZXNuJ3QgaGF2ZSBPX0NMT0VYRUMuLi4KKyAgaW50IGZsYWdzID0gZmNudGwoZmlsZW5vKGZwKSwgRl9HRVRGRCk7CisgIEFTU0VSVF9UUlVFKGZsYWdzICE9IC0xKTsKKyAgQVNTRVJUX0VRKDAsIGZsYWdzICYgRkRfQ0xPRVhFQyk7CisKKyAgZnAgPSBmcmVvcGVuKCIvcHJvYy92ZXJzaW9uIiwgInJlIiwgZnApOworCisgIC8vIC4uLmJ1dCB0aGUgbmV3IG9uZSBkb2VzLgorICBmbGFncyA9IGZjbnRsKGZpbGVubyhmcCksIEZfR0VURkQpOworICBBU1NFUlRfVFJVRShmbGFncyAhPSAtMSk7CisgIEFTU0VSVF9FUShGRF9DTE9FWEVDLCBmbGFncyAmIEZEX0NMT0VYRUMpOworCisgIGZjbG9zZShmcCk7Cit9CisKIC8vIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvYW5kcm9pZC9pc3N1ZXMvZGV0YWlsP2lkPTgxMTU1CiAvLyBodHRwOi8vYi8xODU1NjYwNwogVEVTVChzdGRpbywgZnJlYWRfdW5idWZmZXJlZF9wYXRob2xvZ2ljYWxfcGVyZm9ybWFuY2UpIHsKQEAgLTcwOSw3ICs4ODMsNyBAQAogCiAgIHRpbWVfdCB0MCA9IHRpbWUoTlVMTCk7CiAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgMTAyNDsgKytpKSB7Ci0gICAgZnJlYWQoYnVmLCA2NCoxMDI0LCAxLCBmcCk7CisgICAgQVNTRVJUX0VRKDFVLCBmcmVhZChidWYsIDY0KjEwMjQsIDEsIGZwKSk7CiAgIH0KICAgdGltZV90IHQxID0gdGltZShOVUxMKTsKIApAQCAtNzI1LDMgKzg5OSwxMTYgQEAKICAgICBBU1NFUlRfRVEoJ1x4ZmYnLCBidWZbaV0pOwogICB9CiB9CisKK1RFU1Qoc3RkaW8sIGZyZWFkX0VPRikgeworICBzdGQ6OnN0cmluZyBkaWdpdHMoIjAxMjM0NTY3ODkiKTsKKyAgRklMRSogZnAgPSBmbWVtb3BlbigmZGlnaXRzWzBdLCBkaWdpdHMuc2l6ZSgpLCAiciIpOworCisgIC8vIFRyeSB0byByZWFkIHRvbyBtdWNoLCBidXQgbGl0dGxlIGVub3VnaCB0aGF0IGl0IHN0aWxsIGZpdHMgaW4gdGhlIEZJTEUncyBpbnRlcm5hbCBidWZmZXIuCisgIGNoYXIgYnVmMVs0ICogNF07CisgIG1lbXNldChidWYxLCAwLCBzaXplb2YoYnVmMSkpOworICBBU1NFUlRfRVEoMlUsIGZyZWFkKGJ1ZjEsIDQsIDQsIGZwKSk7CisgIEFTU0VSVF9TVFJFUSgiMDEyMzQ1Njc4OSIsIGJ1ZjEpOworICBBU1NFUlRfVFJVRShmZW9mKGZwKSk7CisKKyAgcmV3aW5kKGZwKTsKKworICAvLyBUcnkgdG8gcmVhZCB3YXkgdG9vIG11Y2ggc28gc3RkaW8gdHJpZXMgdG8gcmVhZCBtb3JlIGRpcmVjdCBmcm9tIHRoZSBzdHJlYW0uCisgIGNoYXIgYnVmMls0ICogNDA5Nl07CisgIG1lbXNldChidWYyLCAwLCBzaXplb2YoYnVmMikpOworICBBU1NFUlRfRVEoMlUsIGZyZWFkKGJ1ZjIsIDQsIDQwOTYsIGZwKSk7CisgIEFTU0VSVF9TVFJFUSgiMDEyMzQ1Njc4OSIsIGJ1ZjIpOworICBBU1NFUlRfVFJVRShmZW9mKGZwKSk7CisKKyAgZmNsb3NlKGZwKTsKK30KKworc3RhdGljIHZvaWQgdGVzdF9mcmVhZF9mcm9tX3dyaXRlX29ubHlfc3RyZWFtKHNpemVfdCBuKSB7CisgIEZJTEUqIGZwID0gZm9wZW4oIi9kZXYvbnVsbCIsICJ3Iik7CisgIHN0ZDo6dmVjdG9yPGNoYXI+IGJ1ZihuLCAwKTsKKyAgZXJybm8gPSAwOworICBBU1NFUlRfRVEoMFUsIGZyZWFkKCZidWZbMF0sIG4sIDEsIGZwKSk7CisgIEFTU0VSVF9FUShFQkFERiwgZXJybm8pOworICBBU1NFUlRfVFJVRShmZXJyb3IoZnApKTsKKyAgQVNTRVJUX0ZBTFNFKGZlb2YoZnApKTsKKyAgZmNsb3NlKGZwKTsKK30KKworVEVTVChzdGRpbywgZnJlYWRfZnJvbV93cml0ZV9vbmx5X3N0cmVhbV9zbG93X3BhdGgpIHsKKyAgdGVzdF9mcmVhZF9mcm9tX3dyaXRlX29ubHlfc3RyZWFtKDEpOworfQorCitURVNUKHN0ZGlvLCBmcmVhZF9mcm9tX3dyaXRlX29ubHlfc3RyZWFtX2Zhc3RfcGF0aCkgeworICB0ZXN0X2ZyZWFkX2Zyb21fd3JpdGVfb25seV9zdHJlYW0oNjQqMTAyNCk7Cit9CisKK3N0YXRpYyB2b2lkIHRlc3RfZndyaXRlX2FmdGVyX2ZyZWFkKHNpemVfdCBuKSB7CisgIFRlbXBvcmFyeUZpbGUgdGY7CisKKyAgRklMRSogZnAgPSBmZG9wZW4odGYuZmQsICJ3KyIpOworICBBU1NFUlRfRVEoMVUsIGZ3cml0ZSgiMSIsIDEsIDEsIGZwKSk7CisgIGZmbHVzaChmcCk7CisKKyAgLy8gV2UndmUgZmx1c2hlZCBidXQgbm90IHJld291bmQsIHNvIHRoZXJlJ3Mgbm90aGluZyB0byByZWFkLgorICBzdGQ6OnZlY3RvcjxjaGFyPiBidWYobiwgMCk7CisgIEFTU0VSVF9FUSgwVSwgZnJlYWQoJmJ1ZlswXSwgMSwgYnVmLnNpemUoKSwgZnApKTsKKyAgQVNTRVJUX1RSVUUoZmVvZihmcCkpOworCisgIC8vIEJ1dCBoaXR0aW5nIEVPRiBkb2Vzbid0IHByZXZlbnQgdXMgZnJvbSB3cml0aW5nLi4uCisgIGVycm5vID0gMDsKKyAgQVNTRVJUX0VRKDFVLCBmd3JpdGUoIjIiLCAxLCAxLCBmcCkpIDw8IGVycm5vOworCisgIC8vIEFuZCBpZiB3ZSByZXdpbmQsIGV2ZXJ5dGhpbmcncyB0aGVyZS4KKyAgcmV3aW5kKGZwKTsKKyAgQVNTRVJUX0VRKDJVLCBmcmVhZCgmYnVmWzBdLCAxLCBidWYuc2l6ZSgpLCBmcCkpOworICBBU1NFUlRfRVEoJzEnLCBidWZbMF0pOworICBBU1NFUlRfRVEoJzInLCBidWZbMV0pOworCisgIGZjbG9zZShmcCk7Cit9CisKK1RFU1Qoc3RkaW8sIGZ3cml0ZV9hZnRlcl9mcmVhZF9zbG93X3BhdGgpIHsKKyAgdGVzdF9md3JpdGVfYWZ0ZXJfZnJlYWQoMTYpOworfQorCitURVNUKHN0ZGlvLCBmd3JpdGVfYWZ0ZXJfZnJlYWRfZmFzdF9wYXRoKSB7CisgIHRlc3RfZndyaXRlX2FmdGVyX2ZyZWFkKDY0KjEwMjQpOworfQorCisvLyBodHRwOi8vYi8xOTE3MjUxNAorVEVTVChzdGRpbywgZnJlYWRfYWZ0ZXJfZnNlZWspIHsKKyAgVGVtcG9yYXJ5RmlsZSB0ZjsKKworICBGSUxFKiBmcCA9IGZvcGVuKHRmLmZpbGVuYW1lLCAidysiKTsKKyAgQVNTRVJUX1RSVUUoZnAgIT0gbnVsbHB0cik7CisKKyAgY2hhciBmaWxlX2RhdGFbMTIyODhdOworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IDEyMjg4OyBpKyspIHsKKyAgICBmaWxlX2RhdGFbaV0gPSBpOworICB9CisgIEFTU0VSVF9FUSgxMjI4OFUsIGZ3cml0ZShmaWxlX2RhdGEsIDEsIDEyMjg4LCBmcCkpOworICBmY2xvc2UoZnApOworCisgIGZwID0gZm9wZW4odGYuZmlsZW5hbWUsICJyIik7CisgIEFTU0VSVF9UUlVFKGZwICE9IG51bGxwdHIpOworCisgIGNoYXIgYnVmZmVyWzgxOTJdOworICBzaXplX3QgY3VyX2xvY2F0aW9uID0gMDsKKyAgLy8gU21hbGwgcmVhZCB0byBwb3B1bGF0ZSBpbnRlcm5hbCBidWZmZXIuCisgIEFTU0VSVF9FUSgxMDBVLCBmcmVhZChidWZmZXIsIDEsIDEwMCwgZnApKTsKKyAgQVNTRVJUX0VRKG1lbWNtcChmaWxlX2RhdGEsIGJ1ZmZlciwgMTAwKSwgMCk7CisKKyAgY3VyX2xvY2F0aW9uID0gc3RhdGljX2Nhc3Q8c2l6ZV90PihmdGVsbChmcCkpOworICAvLyBMYXJnZSByZWFkIHRvIGZvcmNlIHJlYWRpbmcgaW50byB0aGUgdXNlciBzdXBwbGllZCBidWZmZXIgYW5kIGJ5cGFzc2luZworICAvLyB0aGUgaW50ZXJuYWwgYnVmZmVyLgorICBBU1NFUlRfRVEoODE5MlUsIGZyZWFkKGJ1ZmZlciwgMSwgODE5MiwgZnApKTsKKyAgQVNTRVJUX0VRKG1lbWNtcChmaWxlX2RhdGErY3VyX2xvY2F0aW9uLCBidWZmZXIsIDgxOTIpLCAwKTsKKworICAvLyBTbWFsbCBiYWNrd2FyZHMgc2VlayB0byB2ZXJpZnkgZnNlZWsgZG9lcyBub3QgcmV1c2UgdGhlIGludGVybmFsIGJ1ZmZlci4KKyAgQVNTRVJUX0VRKDAsIGZzZWVrKGZwLCAtMjIsIFNFRUtfQ1VSKSk7CisgIGN1cl9sb2NhdGlvbiA9IHN0YXRpY19jYXN0PHNpemVfdD4oZnRlbGwoZnApKTsKKyAgQVNTRVJUX0VRKDIyVSwgZnJlYWQoYnVmZmVyLCAxLCAyMiwgZnApKTsKKyAgQVNTRVJUX0VRKG1lbWNtcChmaWxlX2RhdGErY3VyX2xvY2F0aW9uLCBidWZmZXIsIDIyKSwgMCk7CisKKyAgZmNsb3NlKGZwKTsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL3N0ZGxpYl90ZXN0LmNwcCBiL3Rlc3RzL3N0ZGxpYl90ZXN0LmNwcAppbmRleCA1NTNmMDE4Li4wNTBmNWE3IDEwMDY0NAotLS0gYS90ZXN0cy9zdGRsaWJfdGVzdC5jcHAKKysrIGIvdGVzdHMvc3RkbGliX3Rlc3QuY3BwCkBAIC0xNSw2ICsxNSw3IEBACiAgKi8KIAogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CisjaW5jbHVkZSAiQmlvbmljRGVhdGhUZXN0LmgiCiAjaW5jbHVkZSAiVGVtcG9yYXJ5RmlsZS5oIgogCiAjaW5jbHVkZSA8ZXJybm8uaD4KQEAgLTI3LDEyICsyOCw1NCBAQAogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgogI2luY2x1ZGUgPHN5cy93YWl0Lmg+CiAKKy8vIFRoZSByYW5kb20gbnVtYmVyIGdlbmVyYXRvciB0ZXN0cyBhbGwgc2V0IHRoZSBzZWVkLCBnZXQgZm91ciB2YWx1ZXMsIHJlc2V0IHRoZSBzZWVkIGFuZCBjaGVjaworLy8gdGhhdCB0aGV5IGdldCB0aGUgZmlyc3QgdHdvIHZhbHVlcyByZXBlYXRlZCwgYW5kIHRoZW4gcmVzZXQgdGhlIHNlZWQgYW5kIGNoZWNrIHR3byBtb3JlIHZhbHVlcworLy8gdG8gcnVsZSBvdXQgdGhlIHBvc3NpYmlsaXR5IHRoYXQgd2UncmUganVzdCBnb2luZyByb3VuZCBhIGN5Y2xlIG9mIGZvdXIgdmFsdWVzLgorLy8gVE9ETzogZmFjdG9yIHRoaXMgb3V0LgorCiBURVNUKHN0ZGxpYiwgZHJhbmQ0OCkgewogICBzcmFuZDQ4KDB4MDEwMjAzMDQpOwogICBFWFBFQ1RfRE9VQkxFX0VRKDAuNjU2MTkyOTkxOTU2MjM1MjYsIGRyYW5kNDgoKSk7CiAgIEVYUEVDVF9ET1VCTEVfRVEoMC4xODUyMjU5NzIyOTc3Mjk0MSwgZHJhbmQ0OCgpKTsKICAgRVhQRUNUX0RPVUJMRV9FUSgwLjQyMDE1MDg3MDcyODQ0NTM3LCBkcmFuZDQ4KCkpOwogICBFWFBFQ1RfRE9VQkxFX0VRKDAuMDYxNjM3NzgzMDQ3Mzk1MDg5LCBkcmFuZDQ4KCkpOworICBzcmFuZDQ4KDB4MDEwMjAzMDQpOworICBFWFBFQ1RfRE9VQkxFX0VRKDAuNjU2MTkyOTkxOTU2MjM1MjYsIGRyYW5kNDgoKSk7CisgIEVYUEVDVF9ET1VCTEVfRVEoMC4xODUyMjU5NzIyOTc3Mjk0MSwgZHJhbmQ0OCgpKTsKKyAgc3JhbmQ0OCgweDAxMDIwMzA0KTsKKyAgRVhQRUNUX0RPVUJMRV9FUSgwLjY1NjE5Mjk5MTk1NjIzNTI2LCBkcmFuZDQ4KCkpOworICBFWFBFQ1RfRE9VQkxFX0VRKDAuMTg1MjI1OTcyMjk3NzI5NDEsIGRyYW5kNDgoKSk7Cit9CisKK1RFU1Qoc3RkbGliLCBlcmFuZDQ4KSB7CisgIGNvbnN0IHVuc2lnbmVkIHNob3J0IHNlZWRbM10gPSB7IDB4MzMwZSwgMHhhYmNkLCAweDEyMzQgfTsKKyAgdW5zaWduZWQgc2hvcnQgeHN1YmlbM107CisgIG1lbWNweSh4c3ViaSwgc2VlZCwgc2l6ZW9mKHNlZWQpKTsKKyAgRVhQRUNUX0RPVUJMRV9FUSgwLjM5NjQ2NDc3Mzc2MDI3NTM0LCBlcmFuZDQ4KHhzdWJpKSk7CisgIEVYUEVDVF9ET1VCTEVfRVEoMC44NDA0ODUzNjk0MTE0MjUxNSwgZXJhbmQ0OCh4c3ViaSkpOworICBFWFBFQ1RfRE9VQkxFX0VRKDAuMzUzMzM2MDk3MjQ1MjQzNTEsIGVyYW5kNDgoeHN1YmkpKTsKKyAgRVhQRUNUX0RPVUJMRV9FUSgwLjQ0NjU4MzQzNDc5NjU0NDA1LCBlcmFuZDQ4KHhzdWJpKSk7CisgIG1lbWNweSh4c3ViaSwgc2VlZCwgc2l6ZW9mKHNlZWQpKTsKKyAgRVhQRUNUX0RPVUJMRV9FUSgwLjM5NjQ2NDc3Mzc2MDI3NTM0LCBlcmFuZDQ4KHhzdWJpKSk7CisgIEVYUEVDVF9ET1VCTEVfRVEoMC44NDA0ODUzNjk0MTE0MjUxNSwgZXJhbmQ0OCh4c3ViaSkpOworICBtZW1jcHkoeHN1YmksIHNlZWQsIHNpemVvZihzZWVkKSk7CisgIEVYUEVDVF9ET1VCTEVfRVEoMC4zOTY0NjQ3NzM3NjAyNzUzNCwgZXJhbmQ0OCh4c3ViaSkpOworICBFWFBFQ1RfRE9VQkxFX0VRKDAuODQwNDg1MzY5NDExNDI1MTUsIGVyYW5kNDgoeHN1YmkpKTsKK30KKworVEVTVChzdGRsaWIsIGxjb25nNDgpIHsKKyAgdW5zaWduZWQgc2hvcnQgcFs3XSA9IHsgMHgwMTAyLCAweDAzMDQsIDB4MDUwNiwgMHgwNzA4LCAweDA5MGEsIDB4MGIwYywgMHgwZDBlIH07CisgIGxjb25nNDgocCk7CisgIEVYUEVDVF9FUSgxNTMxMzg5OTgxLCBscmFuZDQ4KCkpOworICBFWFBFQ1RfRVEoMTU5ODgwMTUzMywgbHJhbmQ0OCgpKTsKKyAgRVhQRUNUX0VRKDIwODA1MzQ4NTMsIGxyYW5kNDgoKSk7CisgIEVYUEVDVF9FUSgxMTAyNDg4ODk3LCBscmFuZDQ4KCkpOworICBsY29uZzQ4KHApOworICBFWFBFQ1RfRVEoMTUzMTM4OTk4MSwgbHJhbmQ0OCgpKTsKKyAgRVhQRUNUX0VRKDE1OTg4MDE1MzMsIGxyYW5kNDgoKSk7CisgIGxjb25nNDgocCk7CisgIEVYUEVDVF9FUSgxNTMxMzg5OTgxLCBscmFuZDQ4KCkpOworICBFWFBFQ1RfRVEoMTU5ODgwMTUzMywgbHJhbmQ0OCgpKTsKIH0KIAogVEVTVChzdGRsaWIsIGxyYW5kNDgpIHsKQEAgLTQxLDYgKzg0LDEyIEBACiAgIEVYUEVDVF9FUSgzOTc3Njk3NDYsIGxyYW5kNDgoKSk7CiAgIEVYUEVDVF9FUSg5MDIyNjcxMjQsIGxyYW5kNDgoKSk7CiAgIEVYUEVDVF9FUSgxMzIzNjYxMzEsIGxyYW5kNDgoKSk7CisgIHNyYW5kNDgoMHgwMTAyMDMwNCk7CisgIEVYUEVDVF9FUSgxNDA5MTYzNzIwLCBscmFuZDQ4KCkpOworICBFWFBFQ1RfRVEoMzk3NzY5NzQ2LCBscmFuZDQ4KCkpOworICBzcmFuZDQ4KDB4MDEwMjAzMDQpOworICBFWFBFQ1RfRVEoMTQwOTE2MzcyMCwgbHJhbmQ0OCgpKTsKKyAgRVhQRUNUX0VRKDM5Nzc2OTc0NiwgbHJhbmQ0OCgpKTsKIH0KIAogVEVTVChzdGRsaWIsIHJhbmRvbSkgewpAQCAtNDksNiArOTgsMTIgQEAKICAgRVhQRUNUX0VRKDEzOTk4NjUxMTcsIHJhbmRvbSgpKTsKICAgRVhQRUNUX0VRKDIwMzI2NDMyODMsIHJhbmRvbSgpKTsKICAgRVhQRUNUX0VRKDU3MTMyOTIxNiwgcmFuZG9tKCkpOworICBzcmFuZG9tKDB4MDEwMjAzMDQpOworICBFWFBFQ1RfRVEoNTU0MzY3MzUsIHJhbmRvbSgpKTsKKyAgRVhQRUNUX0VRKDEzOTk4NjUxMTcsIHJhbmRvbSgpKTsKKyAgc3JhbmRvbSgweDAxMDIwMzA0KTsKKyAgRVhQRUNUX0VRKDU1NDM2NzM1LCByYW5kb20oKSk7CisgIEVYUEVDVF9FUSgxMzk5ODY1MTE3LCByYW5kb20oKSk7CiB9CiAKIFRFU1Qoc3RkbGliLCByYW5kKSB7CkBAIC01Nyw2ICsxMTIsMTIgQEAKICAgRVhQRUNUX0VRKDEzOTk4NjUxMTcsIHJhbmQoKSk7CiAgIEVYUEVDVF9FUSgyMDMyNjQzMjgzLCByYW5kKCkpOwogICBFWFBFQ1RfRVEoNTcxMzI5MjE2LCByYW5kKCkpOworICBzcmFuZCgweDAxMDIwMzA0KTsKKyAgRVhQRUNUX0VRKDU1NDM2NzM1LCByYW5kKCkpOworICBFWFBFQ1RfRVEoMTM5OTg2NTExNywgcmFuZCgpKTsKKyAgc3JhbmQoMHgwMTAyMDMwNCk7CisgIEVYUEVDVF9FUSg1NTQzNjczNSwgcmFuZCgpKTsKKyAgRVhQRUNUX0VRKDEzOTk4NjUxMTcsIHJhbmQoKSk7CiB9CiAKIFRFU1Qoc3RkbGliLCBtcmFuZDQ4KSB7CkBAIC02NSw2ICsxMjYsMTIgQEAKICAgRVhQRUNUX0VRKDc5NTUzOTQ5MywgbXJhbmQ0OCgpKTsKICAgRVhQRUNUX0VRKDE4MDQ1MzQyNDksIG1yYW5kNDgoKSk7CiAgIEVYUEVDVF9FUSgyNjQ3MzIyNjIsIG1yYW5kNDgoKSk7CisgIHNyYW5kNDgoMHgwMTAyMDMwNCk7CisgIEVYUEVDVF9FUSgtMTQ3NjYzOTg1NiwgbXJhbmQ0OCgpKTsKKyAgRVhQRUNUX0VRKDc5NTUzOTQ5MywgbXJhbmQ0OCgpKTsKKyAgc3JhbmQ0OCgweDAxMDIwMzA0KTsKKyAgRVhQRUNUX0VRKC0xNDc2NjM5ODU2LCBtcmFuZDQ4KCkpOworICBFWFBFQ1RfRVEoNzk1NTM5NDkzLCBtcmFuZDQ4KCkpOwogfQogCiBURVNUKHN0ZGxpYiwgcG9zaXhfbWVtYWxpZ24pIHsKQEAgLTk5LDYgKzE2NiwxOCBAQAogICBBU1NFUlRfRVEoRU5PRU5ULCBlcnJubyk7CiB9CiAKK1RFU1Qoc3RkbGliLCByZWFscGF0aF9fY29tcG9uZW50X2FmdGVyX25vbl9kaXJlY3RvcnkpIHsKKyAgZXJybm8gPSAwOworICBjaGFyKiBwID0gcmVhbHBhdGgoIi9kZXYvbnVsbC8uIiwgTlVMTCk7CisgIEFTU0VSVF9UUlVFKHAgPT0gTlVMTCk7CisgIEFTU0VSVF9FUShFTk9URElSLCBlcnJubyk7CisKKyAgZXJybm8gPSAwOworICBwID0gcmVhbHBhdGgoIi9kZXYvbnVsbC8uLiIsIE5VTEwpOworICBBU1NFUlRfVFJVRShwID09IE5VTEwpOworICBBU1NFUlRfRVEoRU5PVERJUiwgZXJybm8pOworfQorCiBURVNUKHN0ZGxpYiwgcmVhbHBhdGgpIHsKICAgLy8gR2V0IHRoZSBuYW1lIG9mIHRoaXMgZXhlY3V0YWJsZS4KICAgY2hhciBleGVjdXRhYmxlX3BhdGhbUEFUSF9NQVhdOwpAQCAtMTU2LDI1ICsyMzUsNDEgQEAKIAogLy8gRXZlbiB0aG91Z2ggdGhpcyBpc24ndCByZWFsbHkgYSBkZWF0aCB0ZXN0LCB3ZSBoYXZlIHRvIHNheSAiRGVhdGhUZXN0IiBoZXJlIHNvIGd0ZXN0IGtub3dzIHRvCiAvLyBydW4gdGhpcyB0ZXN0ICh3aGljaCBleGl0cyBub3JtYWxseSkgaW4gaXRzIG93biBwcm9jZXNzLgotVEVTVChzdGRsaWJfRGVhdGhUZXN0LCBnZXRlbnZfYWZ0ZXJfbWFpbl90aHJlYWRfZXhpdHMpIHsKKworY2xhc3Mgc3RkbGliX0RlYXRoVGVzdCA6IHB1YmxpYyBCaW9uaWNEZWF0aFRlc3Qge307CisKK1RFU1RfRihzdGRsaWJfRGVhdGhUZXN0LCBnZXRlbnZfYWZ0ZXJfbWFpbl90aHJlYWRfZXhpdHMpIHsKICAgLy8gaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9hbmRyb2lkL2lzc3Vlcy9kZXRhaWw/aWQ9NTc0MjEKLSAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOwogICBBU1NFUlRfRVhJVChUZXN0QnVnNTc0MjFfbWFpbigpLCA6OnRlc3Rpbmc6OkV4aXRlZFdpdGhDb2RlKDApLCAiIik7CiB9CiAKK1RFU1Qoc3RkbGliLCBta29zdGVtcDY0KSB7CisgIFRlbXBvcmFyeUZpbGUgdGYoW10oY2hhciogcGF0aCkgeyByZXR1cm4gbWtvc3RlbXA2NChwYXRoLCBPX0NMT0VYRUMpOyB9KTsKKyAgaW50IGZsYWdzID0gZmNudGwodGYuZmQsIEZfR0VURkQpOworICBBU1NFUlRfVFJVRShmbGFncyAhPSAtMSk7CisgIEFTU0VSVF9FUShGRF9DTE9FWEVDLCBmbGFncyAmIEZEX0NMT0VYRUMpOworfQorCitURVNUKHN0ZGxpYiwgbWtvc3RlbXApIHsKKyAgVGVtcG9yYXJ5RmlsZSB0ZihbXShjaGFyKiBwYXRoKSB7IHJldHVybiBta29zdGVtcChwYXRoLCBPX0NMT0VYRUMpOyB9KTsKKyAgaW50IGZsYWdzID0gZmNudGwodGYuZmQsIEZfR0VURkQpOworICBBU1NFUlRfVFJVRShmbGFncyAhPSAtMSk7CisgIEFTU0VSVF9FUShGRF9DTE9FWEVDLCBmbGFncyAmIEZEX0NMT0VYRUMpOworfQorCitURVNUKHN0ZGxpYiwgbWtzdGVtcDY0KSB7CisgIFRlbXBvcmFyeUZpbGUgdGYobWtzdGVtcDY0KTsKKyAgc3RydWN0IHN0YXQ2NCBzYjsKKyAgQVNTRVJUX0VRKDAsIGZzdGF0NjQodGYuZmQsICZzYikpOworICBBU1NFUlRfRVEoT19MQVJHRUZJTEUsIGZjbnRsKHRmLmZkLCBGX0dFVEZMKSAmIE9fTEFSR0VGSUxFKTsKK30KKwogVEVTVChzdGRsaWIsIG1rc3RlbXApIHsKICAgVGVtcG9yYXJ5RmlsZSB0ZjsKICAgc3RydWN0IHN0YXQgc2I7CiAgIEFTU0VSVF9FUSgwLCBmc3RhdCh0Zi5mZCwgJnNiKSk7CiB9CiAKLVRFU1Qoc3RkbGliLCBta3N0ZW1wNjQpIHsKLSAgR2VuZXJpY1RlbXBvcmFyeUZpbGU8bWtzdGVtcDY0PiB0ZjsKLSAgc3RydWN0IHN0YXQ2NCBzYjsKLSAgQVNTRVJUX0VRKDAsIGZzdGF0NjQodGYuZmQsICZzYikpOwotICBBU1NFUlRfRVEoT19MQVJHRUZJTEUsIGZjbnRsKHRmLmZkLCBGX0dFVEZMKSAmIE9fTEFSR0VGSUxFKTsKLX0KLQogVEVTVChzdGRsaWIsIHN5c3RlbSkgewogICBpbnQgc3RhdHVzOwogCkBAIC0yMDMsNiArMjk4LDIzIEBACiAgIEFTU0VSVF9ET1VCTEVfRVEoMS4yMywgc3RydG9sZCgiMS4yMyIsIE5VTEwpKTsKIH0KIAorVEVTVChzdGRsaWIsIHN0cnRvZl8yMjA2NzAxKSB7CisgIEFTU0VSVF9FUSgwLjBmLCBzdHJ0b2YoIjcuMDA2NDkyMzIxNjI0MDg1MzU0NjE4NjQ3OTE2NDQ5NWUtNDYiLCBOVUxMKSk7CisgIEFTU0VSVF9FUSgxLjRlLTQ1Ziwgc3RydG9mKCI3LjAwNjQ5MjMyMTYyNDA4NTM1NDYxODY0NzkxNjQ0OTZlLTQ2IiwgTlVMTCkpOworfQorCitURVNUKHN0ZGxpYiwgc3RydG9kX2xhcmdlc3Rfc3Vibm9ybWFsKSB7CisgIC8vIFRoaXMgdmFsdWUgaGFzIGJlZW4ga25vd24gdG8gY2F1c2UgamF2YWMgYW5kIGphdmEgdG8gaW5maW5pdGUgbG9vcC4KKyAgLy8gaHR0cDovL3d3dy5leHBsb3JpbmdiaW5hcnkuY29tL2phdmEtaGFuZ3Mtd2hlbi1jb252ZXJ0aW5nLTItMjI1MDczODU4NTA3MjAxMmUtMzA4LworICBBU1NFUlRfRVEoMi4yMjUwNzM4NTg1MDcyMDE0ZS0zMDgsIHN0cnRvZCgiMi4yMjUwNzM4NTg1MDcyMDEyZS0zMDgiLCBOVUxMKSk7CisgIEFTU0VSVF9FUSgyLjIyNTA3Mzg1ODUwNzIwMTRlLTMwOCwgc3RydG9kKCIwLjAwMDIyMjUwNzM4NTg1MDcyMDEyZS0zMDQiLCBOVUxMKSk7CisgIEFTU0VSVF9FUSgyLjIyNTA3Mzg1ODUwNzIwMTRlLTMwOCwgc3RydG9kKCIwMDAwMDAwMi4yMjUwNzM4NTg1MDcyMDEyZS0zMDgiLCBOVUxMKSk7CisgIEFTU0VSVF9FUSgyLjIyNTA3Mzg1ODUwNzIwMTRlLTMwOCwgc3RydG9kKCIyLjIyNTA3Mzg1ODUwNzIwMTIwMDAwMGUtMzA4IiwgTlVMTCkpOworICBBU1NFUlRfRVEoMi4yMjUwNzM4NTg1MDcyMDE0ZS0zMDgsIHN0cnRvZCgiMi4yMjUwNzM4NTg1MDcyMDEyZS0wMDMwOCIsIE5VTEwpKTsKKyAgQVNTRVJUX0VRKDIuMjI1MDczODU4NTA3MjAxNGUtMzA4LCBzdHJ0b2QoIjIuMjI1MDczODU4NTA3MjAxMjk5NzgwMDFlLTMwOCIsIE5VTEwpKTsKKyAgQVNTRVJUX0VRKC0yLjIyNTA3Mzg1ODUwNzIwMTRlLTMwOCwgc3RydG9kKCItMi4yMjUwNzM4NTg1MDcyMDEyZS0zMDgiLCBOVUxMKSk7Cit9CisKIFRFU1Qoc3RkbGliLCBxdWlja19leGl0KSB7CiAgIHBpZF90IHBpZCA9IGZvcmsoKTsKICAgQVNTRVJUX05FKC0xLCBwaWQpIDw8IHN0cmVycm9yKGVycm5vKTsKQEAgLTM2MSwzICs0NzMsNTEgQEAKICAgQVNTRVJUX0VRKEVOT1RUWSwgZXJybm8pOwogICBjbG9zZShmZCk7CiB9CisKK1RFU1Qoc3RkbGliLCBzdHJ0b2xfRUlOVkFMKSB7CisgIGVycm5vID0gMDsKKyAgc3RydG9sKCIxMjMiLCBOVUxMLCAtMSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyAgZXJybm8gPSAwOworICBzdHJ0b2woIjEyMyIsIE5VTEwsIDEpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgc3RydG9sKCIxMjMiLCBOVUxMLCAzNyk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKK30KKworVEVTVChzdGRsaWIsIHN0cnRvbGxfRUlOVkFMKSB7CisgIGVycm5vID0gMDsKKyAgc3RydG9sbCgiMTIzIiwgTlVMTCwgLTEpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgc3RydG9sbCgiMTIzIiwgTlVMTCwgMSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyAgZXJybm8gPSAwOworICBzdHJ0b2xsKCIxMjMiLCBOVUxMLCAzNyk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKK30KKworVEVTVChzdGRsaWIsIHN0cnRvdWxfRUlOVkFMKSB7CisgIGVycm5vID0gMDsKKyAgc3RydG91bCgiMTIzIiwgTlVMTCwgLTEpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgc3RydG91bCgiMTIzIiwgTlVMTCwgMSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyAgZXJybm8gPSAwOworICBzdHJ0b3VsKCIxMjMiLCBOVUxMLCAzNyk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKK30KKworVEVTVChzdGRsaWIsIHN0cnRvdWxsX0VJTlZBTCkgeworICBlcnJubyA9IDA7CisgIHN0cnRvdWxsKCIxMjMiLCBOVUxMLCAtMSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyAgZXJybm8gPSAwOworICBzdHJ0b3VsbCgiMTIzIiwgTlVMTCwgMSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyAgZXJybm8gPSAwOworICBzdHJ0b3VsbCgiMTIzIiwgTlVMTCwgMzcpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9zdHJpbmdfcG9zaXhfc3RyZXJyb3Jfcl90ZXN0LmNwcCBiL3Rlc3RzL3N0cmluZ19wb3NpeF9zdHJlcnJvcl9yX3Rlc3QuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFlM2I0MWEKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy9zdHJpbmdfcG9zaXhfc3RyZXJyb3Jfcl90ZXN0LmNwcApAQCAtMCwwICsxLDY0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyAqCisgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKKyAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoKKyAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisgKgorICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisgKi8KKworI3VuZGVmIF9HTlVfU09VUkNFCisjaW5jbHVkZSA8ZmVhdHVyZXMuaD4gLy8gR2V0IF9fQklPTklDX18gb3IgX19HTElCQ19fIHNvIHdlIGNhbiB0ZWxsIHdoYXQgd2UncmUgdXNpbmcuCisKKyNpZiBkZWZpbmVkKF9fR0xJQkNfXykKKworLy8gQXQgdGhlIHRpbWUgb2Ygd3JpdGluZywgbGliY3h4IC0tIHdoaWNoIGlzIGRyYWdnZWQgaW4gYnkgZ3Rlc3QgLS0gYXNzdW1lcworLy8gZGVjbGFyYXRpb25zIGZyb20gZ2xpYmMgb2YgdGhpbmdzIHRoYXQgYXJlbid0IGF2YWlsYWJsZSB3aXRob3V0IF9fVVNFX0dOVS4KKy8vIFRoaXMgbWVhbnMgd2UgY2FuJ3QgZXZlbiBidWlsZCB0aGlzIHRlc3QgKHdoaWNoIGlzIGEgcHJvYmxlbSBiZWNhdXNlIHRoYXQKKy8vIG1lYW5zIGl0IGRvZXNuJ3QgZ2V0IGluY2x1ZGVkIGluIENUUykuCisvLyBGb3IgZ2xpYmMgMi4xNSwgdGhlIHN5bWJvbHMgaW4gcXVlc3Rpb24gYXJlOgorLy8gICBhdF9xdWlja19leGl0LCBxdWlja19leGl0LCB2YXNwcmludGYsIHN0cnRvbGxfbCwgc3RydG91bGxfbCwgYW5kIHN0cnRvbGRfbC4KKworIyBpZiBfX0dMSUJDX1BSRVJFUSgyLCAxOSkKKyMgIGVycm9yIGNoZWNrIHdoZXRoZXIgd2UgY2FuIGJ1aWxkIHRoaXMgbm93Li4uCisjIGVuZGlmCisKKyNlbHNlCisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KKworVEVTVChzdHJpbmcsIHBvc2l4X3N0cmVycm9yX3IpIHsKKyAgY2hhciBidWZbMjU2XTsKKworICAvLyBWYWxpZC4KKyAgQVNTRVJUX0VRKDAsIHN0cmVycm9yX3IoMCwgYnVmLCBzaXplb2YoYnVmKSkpOworICBBU1NFUlRfU1RSRVEoIlN1Y2Nlc3MiLCBidWYpOworICBBU1NFUlRfRVEoMCwgc3RyZXJyb3JfcigxLCBidWYsIHNpemVvZihidWYpKSk7CisgIEFTU0VSVF9TVFJFUSgiT3BlcmF0aW9uIG5vdCBwZXJtaXR0ZWQiLCBidWYpOworCisgIC8vIEludmFsaWQuCisgIEFTU0VSVF9FUSgwLCBzdHJlcnJvcl9yKC0xLCBidWYsIHNpemVvZihidWYpKSk7CisgIEFTU0VSVF9TVFJFUSgiVW5rbm93biBlcnJvciAtMSIsIGJ1Zik7CisgIEFTU0VSVF9FUSgwLCBzdHJlcnJvcl9yKDEyMzQsIGJ1Ziwgc2l6ZW9mKGJ1ZikpKTsKKyAgQVNTRVJUX1NUUkVRKCJVbmtub3duIGVycm9yIDEyMzQiLCBidWYpOworCisgIC8vIEJ1ZmZlciB0b28gc21hbGwuCisgIGVycm5vID0gMDsKKyAgbWVtc2V0KGJ1ZiwgMCwgc2l6ZW9mKGJ1ZikpOworICBBU1NFUlRfRVEoLTEsIHN0cmVycm9yX3IoNDU2NywgYnVmLCAyKSk7CisgIEFTU0VSVF9TVFJFUSgiVSIsIGJ1Zik7CisgIC8vIFRoZSBQT1NJWCBzdHJlcnJvcl9yIHNldHMgZXJybm8gdG8gRVJBTkdFICh0aGUgR05VIG9uZSBkb2Vzbid0KS4KKyAgQVNTRVJUX0VRKEVSQU5HRSwgZXJybm8pOworfQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL3Rlc3RzL3N0cmluZ190ZXN0LmNwcCBiL3Rlc3RzL3N0cmluZ190ZXN0LmNwcAppbmRleCBmMWFjOWRkLi4xZDYzYzc2IDEwMDY0NAotLS0gYS90ZXN0cy9zdHJpbmdfdGVzdC5jcHAKKysrIGIvdGVzdHMvc3RyaW5nX3Rlc3QuY3BwCkBAIC0xNCwxNSArMTQsMjIgQEAKICAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgogICovCiAKLSNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgorI2RlZmluZSBfR05VX1NPVVJDRSAxCiAKLSNpbmNsdWRlIDxlcnJuby5oPgotI2luY2x1ZGUgPG1hbGxvYy5oPgotI2luY2x1ZGUgPG1hdGguaD4KICNpbmNsdWRlIDxzdHJpbmcuaD4KIAorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KKyNpbmNsdWRlIDxtYWxsb2MuaD4KKyNpbmNsdWRlIDxtYXRoLmg+CisKICNpbmNsdWRlICJidWZmZXJfdGVzdHMuaCIKIAorI2lmIGRlZmluZWQoX19CSU9OSUNfXykKKyNkZWZpbmUgU1RSTENQWV9TVVBQT1JURUQKKyNkZWZpbmUgU1RSTENBVF9TVVBQT1JURUQKKyNlbmRpZgorCiAjZGVmaW5lIEtCIDEwMjQKICNkZWZpbmUgU01BTEwgMSpLQgogI2RlZmluZSBNRURJVU0gNCpLQgpAQCAtNjgsMzIgKzc1LDM4IEBACiAKICAgQVNTRVJUX1NUUkVRKCJVbmtub3duIGVycm9yIDEwMDEiLCBzdHJlcnJvcjEwMDEpOwogI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKKyAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiU2tpcHBpbmcgdGVzdCwgcmVxdWlyZXMgYSB0aHJlYWQgc2FmZSBzdHJlcnJvci4iOwogI2VuZGlmIC8vIF9fQklPTklDX18KIH0KIAotVEVTVChzdHJpbmcsIHN0cmVycm9yX3IpIHsKLSNpZiBkZWZpbmVkKF9fQklPTklDX18pIC8vIGdsaWJjJ3Mgc3RyZXJyb3JfciBkb2Vzbid0IGV2ZW4gaGF2ZSB0aGUgc2FtZSBzaWduYXR1cmUgYXMgdGhlIFBPU0lYIG9uZS4KK1RFU1Qoc3RyaW5nLCBnbnVfc3RyZXJyb3JfcikgewogICBjaGFyIGJ1ZlsyNTZdOwogCisgIC8vIE5vdGUgdGhhdCBnbGliYyBkb2Vzbid0IG5lY2Vzc2FyaWx5IHdyaXRlIGludG8gdGhlIGJ1ZmZlci4KKwogICAvLyBWYWxpZC4KLSAgQVNTRVJUX0VRKDAsIHN0cmVycm9yX3IoMCwgYnVmLCBzaXplb2YoYnVmKSkpOworICBBU1NFUlRfU1RSRVEoIlN1Y2Nlc3MiLCBzdHJlcnJvcl9yKDAsIGJ1Ziwgc2l6ZW9mKGJ1ZikpKTsKKyNpZiBkZWZpbmVkKF9fQklPTklDX18pCiAgIEFTU0VSVF9TVFJFUSgiU3VjY2VzcyIsIGJ1Zik7Ci0gIEFTU0VSVF9FUSgwLCBzdHJlcnJvcl9yKDEsIGJ1Ziwgc2l6ZW9mKGJ1ZikpKTsKKyNlbmRpZgorICBBU1NFUlRfU1RSRVEoIk9wZXJhdGlvbiBub3QgcGVybWl0dGVkIiwgc3RyZXJyb3JfcigxLCBidWYsIHNpemVvZihidWYpKSk7CisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQogICBBU1NFUlRfU1RSRVEoIk9wZXJhdGlvbiBub3QgcGVybWl0dGVkIiwgYnVmKTsKKyNlbmRpZgogCiAgIC8vIEludmFsaWQuCi0gIEFTU0VSVF9FUSgwLCBzdHJlcnJvcl9yKC0xLCBidWYsIHNpemVvZihidWYpKSk7CisgIEFTU0VSVF9TVFJFUSgiVW5rbm93biBlcnJvciAtMSIsIHN0cmVycm9yX3IoLTEsIGJ1Ziwgc2l6ZW9mKGJ1ZikpKTsKICAgQVNTRVJUX1NUUkVRKCJVbmtub3duIGVycm9yIC0xIiwgYnVmKTsKLSAgQVNTRVJUX0VRKDAsIHN0cmVycm9yX3IoMTIzNCwgYnVmLCBzaXplb2YoYnVmKSkpOworICBBU1NFUlRfU1RSRVEoIlVua25vd24gZXJyb3IgMTIzNCIsIHN0cmVycm9yX3IoMTIzNCwgYnVmLCBzaXplb2YoYnVmKSkpOwogICBBU1NFUlRfU1RSRVEoIlVua25vd24gZXJyb3IgMTIzNCIsIGJ1Zik7CiAKICAgLy8gQnVmZmVyIHRvbyBzbWFsbC4KLSAgQVNTRVJUX0VRKC0xLCBzdHJlcnJvcl9yKDAsIGJ1ZiwgMikpOwotICBBU1NFUlRfRVEoRVJBTkdFLCBlcnJubyk7Ci0jZWxzZSAvLyBfX0JJT05JQ19fCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwotI2VuZGlmIC8vIF9fQklPTklDX18KKyAgZXJybm8gPSAwOworICBtZW1zZXQoYnVmLCAwLCBzaXplb2YoYnVmKSk7CisgIEFTU0VSVF9FUShidWYsIHN0cmVycm9yX3IoNDU2NywgYnVmLCAyKSk7CisgIEFTU0VSVF9TVFJFUSgiVSIsIGJ1Zik7CisgIC8vIFRoZSBHTlUgc3RyZXJyb3JfciBkb2Vzbid0IHNldCBlcnJubyAodGhlIFBPU0lYIG9uZSBzZXRzIGl0IHRvIEVSQU5HRSkuCisgIEFTU0VSVF9FUSgwLCBlcnJubyk7CiB9CiAKIFRFU1Qoc3RyaW5nLCBzdHJzaWduYWwpIHsKQEAgLTEyOSw4ICsxNDIsNyBAQAogICBBU1NFUlRfU1RSRVEoIlVua25vd24gc2lnbmFsIDEwMDEiLCBzdHJzaWduYWwxMDAxKTsKIH0KIAotLy8gVE9ETzogd2hlcmUgZGlkIHRoZXNlIG51bWJlcnMgY29tZSBmcm9tPwotI2RlZmluZSBQT1NfSVRFUiAgICAxMAorLy8gVE9ETzogd2hlcmUgZGlkIHRoaXMgbnVtYmVyIGNvbWUgZnJvbT8KICNkZWZpbmUgSVRFUiAgICAgICAgNTAwCiAKIC8vIEZvciBldmVyeSBsZW5ndGggd2Ugd2FudCB0byB0ZXN0LCB2YXJ5IGFuZCBjaGFuZ2UgYWxpZ25tZW50CkBAIC0xMzksOCArMTUxLDkgQEAKIC8vIFRoZXNlIHRlc3RzIGNvbnRyaWJ1dGVkIGJ5IEludGVsIENvcnBvcmF0aW9uLgogLy8gVE9ETzogbWFrZSB0aGVzZSB0ZXN0cyBtb3JlIGludGVudGlvbi1yZXZlYWxpbmcgYW5kIGxlc3MgcmFuZG9tLgogdGVtcGxhdGU8Y2xhc3MgQ2hhcmFjdGVyPgotc3RydWN0IFN0cmluZ1Rlc3RTdGF0ZSB7Ci0gIFN0cmluZ1Rlc3RTdGF0ZShzaXplX3QgTUFYX0xFTikgOiBNQVhfTEVOKE1BWF9MRU4pIHsKK2NsYXNzIFN0cmluZ1Rlc3RTdGF0ZSB7CisgcHVibGljOgorICBTdHJpbmdUZXN0U3RhdGUoc2l6ZV90IE1BWF9MRU4pIDogTUFYX0xFTihNQVhfTEVOKSwgYWxpZ24xX2luZGV4XygwKSwgYWxpZ24yX2luZGV4XygwKSB7CiAgICAgaW50IG1heF9hbGlnbm1lbnQgPSA2NDsKIAogICAgIC8vIFRPRE86IGZpeCB0aGUgdGVzdHMgdG8gbm90IHNvbWV0aW1lcyB1c2UgdHdpY2UgdGhlaXIgc3BlY2lmaWVkICJNQVhfTEVOIi4KQEAgLTE1OSwxNSArMTcyLDMwIEBACiAgICAgZnJlZShnbG9iX3B0cjIpOwogICB9CiAKLSAgdm9pZCBOZXdJdGVyYXRpb24oKSB7Ci0gICAgaW50IGFsaWdubWVudHNbXSA9IHsgMjQsIDMyLCAxNiwgNDgsIDEsIDIsIDMsIDAsIDUsIDExIH07Ci0gICAgaW50IHVzYWJsZV9hbGlnbm1lbnRzID0gMTA7Ci0gICAgaW50IGFsaWduMSA9IGFsaWdubWVudHNbcmFuZG9tKCkgJSAodXNhYmxlX2FsaWdubWVudHMgLSAxKV07Ci0gICAgaW50IGFsaWduMiA9IGFsaWdubWVudHNbcmFuZG9tKCkgJSAodXNhYmxlX2FsaWdubWVudHMgLSAxKV07CisgIHZvaWQgQmVnaW5JdGVyYXRpb25zKCkgeworICAgIGFsaWduMV9pbmRleF8gPSAwOworICAgIGFsaWduMl9pbmRleF8gPSAwOwogCi0gICAgcHRyID0gZ2xvYl9wdHIgKyBhbGlnbjE7Ci0gICAgcHRyMSA9IGdsb2JfcHRyMSArIGFsaWduMTsKLSAgICBwdHIyID0gZ2xvYl9wdHIyICsgYWxpZ24yOworICAgIFJlc2V0UG9pbnRlcnMoKTsKKyAgfQorCisgIGJvb2wgSGFzTmV4dEl0ZXJhdGlvbigpIHsKKyAgICByZXR1cm4gKGFsaWduMV9pbmRleF8gIT0gKGFsaWdubWVudHNfc2l6ZSAtIDEpIHx8IGFsaWduMl9pbmRleF8gIT0gKGFsaWdubWVudHNfc2l6ZSAtIDEpKTsKKyAgfQorCisgIHZvaWQgTmV4dEl0ZXJhdGlvbigpIHsKKyAgICBpZiAoYWxpZ24xX2luZGV4XyA9PSAoYWxpZ25tZW50c19zaXplIC0gMSkgJiYgYWxpZ24yX2luZGV4XyA9PSAoYWxpZ25tZW50c19zaXplIC0gMSkpIHsKKyAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoYWxpZ24xX2luZGV4XyA9PSAoYWxpZ25tZW50c19zaXplIC0gMSkpIHsKKyAgICAgIGFsaWduMV9pbmRleF8gPSAwOworICAgICAgYWxpZ24yX2luZGV4XysrOworICAgIH0gZWxzZSB7CisgICAgICBhbGlnbjFfaW5kZXhfKys7CisgICAgfQorCisgICAgUmVzZXRQb2ludGVycygpOwogICB9CiAKICAgY29uc3Qgc2l6ZV90IE1BWF9MRU47CkBAIC0xNzYsNyArMjA0LDEwIEBACiAgIHNpemVfdCBsZW5bSVRFUiArIDFdOwogCiAgcHJpdmF0ZToKKyAgc3RhdGljIHNpemVfdCBhbGlnbm1lbnRzW107CisgIHN0YXRpYyBzaXplX3QgYWxpZ25tZW50c19zaXplOwogICBDaGFyYWN0ZXIgKmdsb2JfcHRyLCAqZ2xvYl9wdHIxLCAqZ2xvYl9wdHIyOworICBzaXplX3QgYWxpZ24xX2luZGV4XywgYWxpZ24yX2luZGV4XzsKIAogICAvLyBDYWxjdWxhdGUgaW5wdXQgbGVuZ3RocyBhbmQgZmlsbCBzdGF0ZS5sZW4gd2l0aCB0aGVtLgogICAvLyBUZXN0IHNtYWxsIGxlbmd0aHMgd2l0aCBtb3JlIGRlbnNpdHkgdGhhbiBiaWcgb25lcy4gTWFudWFsbHkgcHVzaApAQCAtMTkzLDE5ICsyMjQsMzMgQEAKICAgICB9CiAgICAgbGVuW24rK10gPSBNQVhfTEVOOwogICB9CisKKyAgdm9pZCBSZXNldFBvaW50ZXJzKCkgeworICAgIGlmIChhbGlnbjFfaW5kZXhfID09IGFsaWdubWVudHNfc2l6ZSB8fCBhbGlnbjJfaW5kZXhfID09IGFsaWdubWVudHNfc2l6ZSkgeworICAgICAgcHRyID0gcHRyMSA9IHB0cjIgPSBudWxscHRyOworICAgIH0gZWxzZSB7CisgICAgICBwdHIgPSBnbG9iX3B0ciArIGFsaWdubWVudHNbYWxpZ24xX2luZGV4X107CisgICAgICBwdHIxID0gZ2xvYl9wdHIxICsgYWxpZ25tZW50c1thbGlnbjFfaW5kZXhfXTsKKyAgICAgIHB0cjIgPSBnbG9iX3B0cjIgKyBhbGlnbm1lbnRzW2FsaWduMl9pbmRleF9dOworICAgIH0KKyAgfQogfTsKIAordGVtcGxhdGU8Y2xhc3MgQ2hhcmFjdGVyPgorc2l6ZV90IFN0cmluZ1Rlc3RTdGF0ZTxDaGFyYWN0ZXI+OjphbGlnbm1lbnRzW10gPSB7IDI0LCAzMiwgMTYsIDQ4LCAwLCAxLCAyLCAzLCA0LCA1LCA2LCA3LCAxMSB9OworCit0ZW1wbGF0ZTxjbGFzcyBDaGFyYWN0ZXI+CitzaXplX3QgU3RyaW5nVGVzdFN0YXRlPENoYXJhY3Rlcj46OmFsaWdubWVudHNfc2l6ZSA9IHNpemVvZihhbGlnbm1lbnRzKS9zaXplb2Yoc2l6ZV90KTsKKwogVEVTVChzdHJpbmcsIHN0cmNhdCkgewogICBTdHJpbmdUZXN0U3RhdGU8Y2hhcj4gc3RhdGUoU01BTEwpOwogICBmb3IgKHNpemVfdCBpID0gMTsgaSA8IHN0YXRlLm47IGkrKykgewotICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgUE9TX0lURVI7IGorKykgewotICAgICAgc3RhdGUuTmV3SXRlcmF0aW9uKCk7Ci0KKyAgICBmb3IgKHN0YXRlLkJlZ2luSXRlcmF0aW9ucygpOyBzdGF0ZS5IYXNOZXh0SXRlcmF0aW9uKCk7IHN0YXRlLk5leHRJdGVyYXRpb24oKSkgewogICAgICAgbWVtc2V0KHN0YXRlLnB0cjIsICdcMicsIHN0YXRlLk1BWF9MRU4pOwogICAgICAgc3RhdGUucHRyMltzdGF0ZS5NQVhfTEVOIC0gMV0gPSAnXDAnOwogICAgICAgbWVtY3B5KHN0YXRlLnB0ciwgc3RhdGUucHRyMiwgMiAqIHN0YXRlLk1BWF9MRU4pOwogCi0gICAgICBtZW1zZXQoc3RhdGUucHRyMSwgcmFuZG9tKCkgJiAyNTUsIHN0YXRlLmxlbltpXSk7CisgICAgICBtZW1zZXQoc3RhdGUucHRyMSwgJ0wnLCBzdGF0ZS5sZW5baV0pOwogICAgICAgc3RhdGUucHRyMVtyYW5kb20oKSAlIHN0YXRlLmxlbltpXV0gPSAnXDAnOwogICAgICAgc3RhdGUucHRyMVtzdGF0ZS5sZW5baV0gLSAxXSA9ICdcMCc7CiAKQEAgLTM3OCwxMyArNDIzLDExIEBACiB9CiAKIFRFU1Qoc3RyaW5nLCBzdHJjaHIpIHsKLSAgaW50IHNlZWtfY2hhciA9IHJhbmRvbSgpICYgMjU1OworICBpbnQgc2Vla19jaGFyID0gJ1InOwogCiAgIFN0cmluZ1Rlc3RTdGF0ZTxjaGFyPiBzdGF0ZShTTUFMTCk7CiAgIGZvciAoc2l6ZV90IGkgPSAxOyBpIDwgc3RhdGUubjsgaSsrKSB7Ci0gICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBQT1NfSVRFUjsgaisrKSB7Ci0gICAgICBzdGF0ZS5OZXdJdGVyYXRpb24oKTsKLQorICAgIGZvciAoc3RhdGUuQmVnaW5JdGVyYXRpb25zKCk7IHN0YXRlLkhhc05leHRJdGVyYXRpb24oKTsgc3RhdGUuTmV4dEl0ZXJhdGlvbigpKSB7CiAgICAgICBpZiAofnNlZWtfY2hhciA+IDApIHsKICAgICAgICAgbWVtc2V0KHN0YXRlLnB0cjEsIH5zZWVrX2NoYXIsIHN0YXRlLmxlbltpXSk7CiAgICAgICB9IGVsc2UgewpAQCAtNDEzLDkgKzQ1Niw3IEBACiBURVNUKHN0cmluZywgc3RyY21wKSB7CiAgIFN0cmluZ1Rlc3RTdGF0ZTxjaGFyPiBzdGF0ZShTTUFMTCk7CiAgIGZvciAoc2l6ZV90IGkgPSAxOyBpIDwgc3RhdGUubjsgaSsrKSB7Ci0gICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBQT1NfSVRFUjsgaisrKSB7Ci0gICAgICBzdGF0ZS5OZXdJdGVyYXRpb24oKTsKLQorICAgIGZvciAoc3RhdGUuQmVnaW5JdGVyYXRpb25zKCk7IHN0YXRlLkhhc05leHRJdGVyYXRpb24oKTsgc3RhdGUuTmV4dEl0ZXJhdGlvbigpKSB7CiAgICAgICBtZW1zZXQoc3RhdGUucHRyMSwgJ3YnLCBzdGF0ZS5NQVhfTEVOKTsKICAgICAgIG1lbXNldChzdGF0ZS5wdHIyLCAnbicsIHN0YXRlLk1BWF9MRU4pOwogICAgICAgc3RhdGUucHRyMVtzdGF0ZS5sZW5baV0gLSAxXSA9ICdcMCc7CkBAIC00NDksOSArNDkwLDcgQEAKIAogVEVTVChzdHJpbmcsIHN0cGNweSkgewogICBTdHJpbmdUZXN0U3RhdGU8Y2hhcj4gc3RhdGUoU01BTEwpOwotICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IFBPU19JVEVSOyBqKyspIHsKLSAgICBzdGF0ZS5OZXdJdGVyYXRpb24oKTsKLQorICBmb3IgKHN0YXRlLkJlZ2luSXRlcmF0aW9ucygpOyBzdGF0ZS5IYXNOZXh0SXRlcmF0aW9uKCk7IHN0YXRlLk5leHRJdGVyYXRpb24oKSkgewogICAgIHNpemVfdCBwb3MgPSByYW5kb20oKSAlIHN0YXRlLk1BWF9MRU47CiAKICAgICBtZW1zZXQoc3RhdGUucHRyMSwgJ1wyJywgcG9zKTsKQEAgLTQ3NSw5ICs1MTQsNyBAQAogCiBURVNUKHN0cmluZywgc3RyY3B5KSB7CiAgIFN0cmluZ1Rlc3RTdGF0ZTxjaGFyPiBzdGF0ZShTTUFMTCk7Ci0gIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgUE9TX0lURVI7IGorKykgewotICAgIHN0YXRlLk5ld0l0ZXJhdGlvbigpOwotCisgIGZvciAoc3RhdGUuQmVnaW5JdGVyYXRpb25zKCk7IHN0YXRlLkhhc05leHRJdGVyYXRpb24oKTsgc3RhdGUuTmV4dEl0ZXJhdGlvbigpKSB7CiAgICAgc2l6ZV90IHBvcyA9IHJhbmRvbSgpICUgc3RhdGUuTUFYX0xFTjsKIAogICAgIG1lbXNldChzdGF0ZS5wdHIxLCAnXDInLCBwb3MpOwpAQCAtNTAwLDEyICs1MzcsMTAgQEAKIH0KIAogVEVTVChzdHJpbmcsIHN0cmxjYXQpIHsKLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCisjaWYgZGVmaW5lZChTVFJMQ0FUX1NVUFBPUlRFRCkKICAgU3RyaW5nVGVzdFN0YXRlPGNoYXI+IHN0YXRlKFNNQUxMKTsKICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzdGF0ZS5uOyBpKyspIHsKLSAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IFBPU19JVEVSOyBqKyspIHsKLSAgICAgIHN0YXRlLk5ld0l0ZXJhdGlvbigpOwotCisgICAgZm9yIChzdGF0ZS5CZWdpbkl0ZXJhdGlvbnMoKTsgc3RhdGUuSGFzTmV4dEl0ZXJhdGlvbigpOyBzdGF0ZS5OZXh0SXRlcmF0aW9uKCkpIHsKICAgICAgIG1lbXNldChzdGF0ZS5wdHIyLCAnXDInLCBzdGF0ZS5NQVhfTEVOICsgc3RhdGUubGVuW2ldKTsKICAgICAgIHN0YXRlLnB0cjJbc3RhdGUuTUFYX0xFTiAtIDFdID0gJ1wwJzsKICAgICAgIG1lbWNweShzdGF0ZS5wdHIsIHN0YXRlLnB0cjIsIHN0YXRlLk1BWF9MRU4gKyBzdGF0ZS5sZW5baV0pOwpAQCAtNTI1LDIxICs1NjAsMTYgQEAKICAgICAgIEFTU0VSVF9UUlVFKG1lbWNtcChzdGF0ZS5wdHIsIHN0YXRlLnB0cjIsIHN0YXRlLk1BWF9MRU4gKyBzdGF0ZS5sZW5baV0pID09IDApOwogICAgIH0KICAgfQotI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCisjZWxzZQorICBHVEVTVF9MT0dfKElORk8pIDw8ICJTa2lwcGluZyB0ZXN0LCBzdHJsY2F0IG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBwbGF0Zm9ybS4iOworI2VuZGlmCiB9CiAKIFRFU1Qoc3RyaW5nLCBzdHJsY3B5KSB7Ci0jaWYgZGVmaW5lZChfX0JJT05JQ19fKQorI2lmIGRlZmluZWQoU1RSTENQWV9TVVBQT1JURUQpCiAgIFN0cmluZ1Rlc3RTdGF0ZTxjaGFyPiBzdGF0ZShTTUFMTCk7Ci0gIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgUE9TX0lURVI7IGorKykgewotICAgIHN0YXRlLk5ld0l0ZXJhdGlvbigpOwotCi0gICAgaW50IHJhbmQgPSByYW5kb20oKSAmIDI1NTsKLSAgICBpZiAocmFuZCA8IDEpIHsKLSAgICAgIHJhbmQgPSAxOwotICAgIH0KKyAgZm9yIChzdGF0ZS5CZWdpbkl0ZXJhdGlvbnMoKTsgc3RhdGUuSGFzTmV4dEl0ZXJhdGlvbigpOyBzdGF0ZS5OZXh0SXRlcmF0aW9uKCkpIHsKKyAgICBpbnQgcmFuZCA9ICdPJzsKICAgICBtZW1zZXQoc3RhdGUucHRyMSwgcmFuZCwgc3RhdGUuTUFYX0xFTik7CiAKICAgICBzaXplX3QgcG9zID0gcmFuZG9tKCkgJSBzdGF0ZS5NQVhfTEVOOwpAQCAtNTQ4LDcgKzU3OCw3IEBACiAgICAgfQogICAgIG1lbWNweShzdGF0ZS5wdHIsIHN0YXRlLnB0cjEsIHN0YXRlLk1BWF9MRU4pOwogCi0gICAgbWVtc2V0KHN0YXRlLnB0cjIsIHJhbmRvbSgpICYgMjU1LCBzdGF0ZS5NQVhfTEVOKTsKKyAgICBtZW1zZXQoc3RhdGUucHRyMiwgJ0knLCBzdGF0ZS5NQVhfTEVOKTsKICAgICBtZW1jcHkoc3RhdGUucHRyICsgc3RhdGUuTUFYX0xFTiwgc3RhdGUucHRyMiwgc3RhdGUuTUFYX0xFTik7CiAKICAgICBpZiAocG9zID4gc3RhdGUuTUFYX0xFTiAtIDEpIHsKQEAgLTU2MiwyMiArNTkyLDIwIEBACiAgICAgQVNTRVJUX0ZBTFNFKChtZW1jbXAoc3RhdGUucHRyMSwgc3RhdGUucHRyLCBzdGF0ZS5NQVhfTEVOKSAhPSAwKSB8fAogICAgICAgICAgICAgICAgICAobWVtY21wKHN0YXRlLnB0cjIsIHN0YXRlLnB0ciArIHN0YXRlLk1BWF9MRU4sIHN0YXRlLk1BWF9MRU4pICE9IDApKTsKICAgfQotI2Vsc2UgLy8gX19CSU9OSUNfXwotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKLSNlbmRpZiAvLyBfX0JJT05JQ19fCisjZWxzZQorICBHVEVTVF9MT0dfKElORk8pIDw8ICJTa2lwcGluZyB0ZXN0LCBzdHJsY3B5IG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBwbGF0Zm9ybS4iOworI2VuZGlmCiB9CiAKIFRFU1Qoc3RyaW5nLCBzdHJuY2F0KSB7CiAgIFN0cmluZ1Rlc3RTdGF0ZTxjaGFyPiBzdGF0ZShTTUFMTCk7CiAgIGZvciAoc2l6ZV90IGkgPSAxOyBpIDwgc3RhdGUubjsgaSsrKSB7Ci0gICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBQT1NfSVRFUjsgaisrKSB7Ci0gICAgICBzdGF0ZS5OZXdJdGVyYXRpb24oKTsKLQorICAgIGZvciAoc3RhdGUuQmVnaW5JdGVyYXRpb25zKCk7IHN0YXRlLkhhc05leHRJdGVyYXRpb24oKTsgc3RhdGUuTmV4dEl0ZXJhdGlvbigpKSB7CiAgICAgICBtZW1zZXQoc3RhdGUucHRyMiwgJ1wyJywgc3RhdGUuTUFYX0xFTik7CiAgICAgICBzdGF0ZS5wdHIyW3N0YXRlLk1BWF9MRU4gLSAxXSA9ICdcMCc7CiAgICAgICBtZW1jcHkoc3RhdGUucHRyLCBzdGF0ZS5wdHIyLCAyICogc3RhdGUuTUFYX0xFTik7CiAKLSAgICAgIG1lbXNldChzdGF0ZS5wdHIxLCByYW5kb20oKSAmIDI1NSwgc3RhdGUubGVuW2ldKTsKKyAgICAgIG1lbXNldChzdGF0ZS5wdHIxLCAnSScsIHN0YXRlLmxlbltpXSk7CiAgICAgICBzdGF0ZS5wdHIxW3JhbmRvbSgpICUgc3RhdGUubGVuW2ldXSA9ICdcMCc7CiAgICAgICBzdGF0ZS5wdHIxW3N0YXRlLmxlbltpXSAtIDFdID0gJ1wwJzsKIApAQCAtNTk2LDkgKzYyNCw3IEBACiBURVNUKHN0cmluZywgc3RybmNtcCkgewogICBTdHJpbmdUZXN0U3RhdGU8Y2hhcj4gc3RhdGUoU01BTEwpOwogICBmb3IgKHNpemVfdCBpID0gMTsgaSA8IHN0YXRlLm47IGkrKykgewotICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgUE9TX0lURVI7IGorKykgewotICAgICAgc3RhdGUuTmV3SXRlcmF0aW9uKCk7Ci0KKyAgICBmb3IgKHN0YXRlLkJlZ2luSXRlcmF0aW9ucygpOyBzdGF0ZS5IYXNOZXh0SXRlcmF0aW9uKCk7IHN0YXRlLk5leHRJdGVyYXRpb24oKSkgewogICAgICAgbWVtc2V0KHN0YXRlLnB0cjEsICd2Jywgc3RhdGUuTUFYX0xFTik7CiAgICAgICBtZW1zZXQoc3RhdGUucHRyMiwgJ24nLCBzdGF0ZS5NQVhfTEVOKTsKICAgICAgIHN0YXRlLnB0cjFbc3RhdGUubGVuW2ldIC0gMV0gPSAnXDAnOwpAQCAtNjMyLDEyICs2NTgsOCBAQAogCiBURVNUKHN0cmluZywgc3RwbmNweSkgewogICBTdHJpbmdUZXN0U3RhdGU8Y2hhcj4gc3RhdGUoU01BTEwpOwotICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IElURVI7IGorKykgewotICAgIHN0YXRlLk5ld0l0ZXJhdGlvbigpOwotCi0gICAgLy8gQ2hvb3NlIGEgcmFuZG9tIHZhbHVlIHRvIGZpbGwgdGhlIHN0cmluZywgZXhjZXB0IFwwIChzdHJpbmcgdGVybWluYXRvciksCi0gICAgLy8gb3IgXDEgKGd1YXJhbnRlZXMgaXQncyBkaWZmZXJlbnQgZnJvbSBhbnl0aGluZyBpbiBwdHIyKS4KLSAgICBtZW1zZXQoc3RhdGUucHRyMSwgKHJhbmRvbSgpICUgMjU0KSArIDIsIHN0YXRlLk1BWF9MRU4pOworICBmb3IgKHN0YXRlLkJlZ2luSXRlcmF0aW9ucygpOyBzdGF0ZS5IYXNOZXh0SXRlcmF0aW9uKCk7IHN0YXRlLk5leHRJdGVyYXRpb24oKSkgeworICAgIG1lbXNldChzdGF0ZS5wdHIxLCAnSicsIHN0YXRlLk1BWF9MRU4pOwogICAgIC8vIENob29zZSBhIHJhbmRvbSBzaXplIGZvciBvdXIgc3JjIGJ1ZmZlci4KICAgICBzaXplX3QgcHRyMV9sZW4gPSByYW5kb20oKSAlIHN0YXRlLk1BWF9MRU47CiAgICAgc3RhdGUucHRyMVtwdHIxX2xlbl0gPSAnXDAnOwpAQCAtNjcxLDEyICs2OTMsMTAgQEAKIAogVEVTVChzdHJpbmcsIHN0cm5jcHkpIHsKICAgU3RyaW5nVGVzdFN0YXRlPGNoYXI+IHN0YXRlKFNNQUxMKTsKLSAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBJVEVSOyBqKyspIHsKLSAgICBzdGF0ZS5OZXdJdGVyYXRpb24oKTsKLQorICBmb3IgKHN0YXRlLkJlZ2luSXRlcmF0aW9ucygpOyBzdGF0ZS5IYXNOZXh0SXRlcmF0aW9uKCk7IHN0YXRlLk5leHRJdGVyYXRpb24oKSkgewogICAgIC8vIENob29zZSBhIHJhbmRvbSB2YWx1ZSB0byBmaWxsIHRoZSBzdHJpbmcsIGV4Y2VwdCBcMCAoc3RyaW5nIHRlcm1pbmF0b3IpLAogICAgIC8vIG9yIFwxIChndWFyYW50ZWVzIGl0J3MgZGlmZmVyZW50IGZyb20gYW55dGhpbmcgaW4gcHRyMikuCi0gICAgbWVtc2V0KHN0YXRlLnB0cjEsIChyYW5kb20oKSAlIDI1NCkgKyAyLCBzdGF0ZS5NQVhfTEVOKTsKKyAgICBtZW1zZXQoc3RhdGUucHRyMSwgJ0snLCBzdGF0ZS5NQVhfTEVOKTsKICAgICAvLyBDaG9vc2UgYSByYW5kb20gc2l6ZSBmb3Igb3VyIHNyYyBidWZmZXIuCiAgICAgc2l6ZV90IHB0cjFfbGVuID0gcmFuZG9tKCkgJSBzdGF0ZS5NQVhfTEVOOwogICAgIHN0YXRlLnB0cjFbcHRyMV9sZW5dID0gJ1wwJzsKQEAgLTcwOSwxMiArNzI5LDEwIEBACiB9CiAKIFRFU1Qoc3RyaW5nLCBzdHJyY2hyKSB7Ci0gIGludCBzZWVrX2NoYXIgPSByYW5kb20oKSAmIDI1NTsKKyAgaW50IHNlZWtfY2hhciA9ICdNJzsKICAgU3RyaW5nVGVzdFN0YXRlPGNoYXI+IHN0YXRlKFNNQUxMKTsKICAgZm9yIChzaXplX3QgaSA9IDE7IGkgPCBzdGF0ZS5uOyBpKyspIHsKLSAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IFBPU19JVEVSOyBqKyspIHsKLSAgICAgIHN0YXRlLk5ld0l0ZXJhdGlvbigpOwotCisgICAgZm9yIChzdGF0ZS5CZWdpbkl0ZXJhdGlvbnMoKTsgc3RhdGUuSGFzTmV4dEl0ZXJhdGlvbigpOyBzdGF0ZS5OZXh0SXRlcmF0aW9uKCkpIHsKICAgICAgIGlmICh+c2Vla19jaGFyID4gMCkgewogICAgICAgICBtZW1zZXQoc3RhdGUucHRyMSwgfnNlZWtfY2hhciwgc3RhdGUubGVuW2ldKTsKICAgICAgIH0gZWxzZSB7CkBAIC03NDEsMTIgKzc1OSwxMCBAQAogfQogCiBURVNUKHN0cmluZywgbWVtY2hyKSB7Ci0gIGludCBzZWVrX2NoYXIgPSByYW5kb20oKSAmIDI1NTsKKyAgaW50IHNlZWtfY2hhciA9ICdOJzsKICAgU3RyaW5nVGVzdFN0YXRlPGNoYXI+IHN0YXRlKFNNQUxMKTsKICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzdGF0ZS5uOyBpKyspIHsKLSAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IFBPU19JVEVSOyBqKyspIHsKLSAgICAgIHN0YXRlLk5ld0l0ZXJhdGlvbigpOwotCisgICAgZm9yIChzdGF0ZS5CZWdpbkl0ZXJhdGlvbnMoKTsgc3RhdGUuSGFzTmV4dEl0ZXJhdGlvbigpOyBzdGF0ZS5OZXh0SXRlcmF0aW9uKCkpIHsKICAgICAgIG1lbXNldChzdGF0ZS5wdHIxLCB+c2Vla19jaGFyLCBzdGF0ZS5sZW5baV0pOwogCiAgICAgICBzaXplX3QgcG9zID0gcmFuZG9tKCkgJSBzdGF0ZS5NQVhfTEVOOwpAQCAtNzcyLDEyICs3ODgsMTAgQEAKIH0KIAogVEVTVChzdHJpbmcsIG1lbXJjaHIpIHsKLSAgaW50IHNlZWtfY2hhciA9IHJhbmRvbSgpICYgMjU1OworICBpbnQgc2Vla19jaGFyID0gJ1AnOwogICBTdHJpbmdUZXN0U3RhdGU8Y2hhcj4gc3RhdGUoU01BTEwpOwogICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHN0YXRlLm47IGkrKykgewotICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgUE9TX0lURVI7IGorKykgewotICAgICAgc3RhdGUuTmV3SXRlcmF0aW9uKCk7Ci0KKyAgICBmb3IgKHN0YXRlLkJlZ2luSXRlcmF0aW9ucygpOyBzdGF0ZS5IYXNOZXh0SXRlcmF0aW9uKCk7IHN0YXRlLk5leHRJdGVyYXRpb24oKSkgewogICAgICAgbWVtc2V0KHN0YXRlLnB0cjEsIH5zZWVrX2NoYXIsIHN0YXRlLmxlbltpXSk7CiAKICAgICAgIHNpemVfdCBwb3MgPSByYW5kb20oKSAlIHN0YXRlLk1BWF9MRU47CkBAIC03OTcsMTEgKzgxMSw5IEBACiBURVNUKHN0cmluZywgbWVtY21wKSB7CiAgIFN0cmluZ1Rlc3RTdGF0ZTxjaGFyPiBzdGF0ZShTTUFMTCk7CiAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3RhdGUubjsgaSsrKSB7Ci0gICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBQT1NfSVRFUjsgaisrKSB7Ci0gICAgICBzdGF0ZS5OZXdJdGVyYXRpb24oKTsKLQotICAgICAgaW50IGMxID0gcmFuZG9tKCkgJiAweGZmOwotICAgICAgaW50IGMyID0gcmFuZG9tKCkgJiAweGZmOworICAgIGZvciAoc3RhdGUuQmVnaW5JdGVyYXRpb25zKCk7IHN0YXRlLkhhc05leHRJdGVyYXRpb24oKTsgc3RhdGUuTmV4dEl0ZXJhdGlvbigpKSB7CisgICAgICBpbnQgYzEgPSAnQSc7CisgICAgICBpbnQgYzIgPSAnTic7CiAgICAgICBtZW1zZXQoc3RhdGUucHRyMSwgYzEsIHN0YXRlLk1BWF9MRU4pOwogICAgICAgbWVtc2V0KHN0YXRlLnB0cjIsIGMxLCBzdGF0ZS5NQVhfTEVOKTsKIApAQCAtODIwLDkgKzgzMiw3IEBACiAgIFN0cmluZ1Rlc3RTdGF0ZTx3Y2hhcl90PiBzdGF0ZShTTUFMTCk7CiAKICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzdGF0ZS5uOyBpKyspIHsKLSAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IFBPU19JVEVSOyBqKyspIHsKLSAgICAgIHN0YXRlLk5ld0l0ZXJhdGlvbigpOwotCisgICAgZm9yIChzdGF0ZS5CZWdpbkl0ZXJhdGlvbnMoKTsgc3RhdGUuSGFzTmV4dEl0ZXJhdGlvbigpOyBzdGF0ZS5OZXh0SXRlcmF0aW9uKCkpIHsKICAgICAgIGxvbmcgbG9uZyBtYXNrID0gKChsb25nIGxvbmcpIDEgPDwgOCAqIHNpemVvZih3Y2hhcl90KSkgLSAxOwogICAgICAgaW50IGMxID0gcmFuZCgpICYgbWFzazsKICAgICAgIGludCBjMiA9IHJhbmQoKSAmIG1hc2s7CkBAIC04NDIsMTEgKzg1Miw5IEBACiAKIFRFU1Qoc3RyaW5nLCBtZW1jcHkpIHsKICAgU3RyaW5nVGVzdFN0YXRlPGNoYXI+IHN0YXRlKExBUkdFKTsKLSAgaW50IHJhbmQgPSByYW5kb20oKSAmIDI1NTsKKyAgaW50IHJhbmQgPSA0OwogICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHN0YXRlLm4gLSAxOyBpKyspIHsKLSAgICBmb3IgKHNpemVfdCBqID0gMDsgaiA8IFBPU19JVEVSOyBqKyspIHsKLSAgICAgIHN0YXRlLk5ld0l0ZXJhdGlvbigpOwotCisgICAgZm9yIChzdGF0ZS5CZWdpbkl0ZXJhdGlvbnMoKTsgc3RhdGUuSGFzTmV4dEl0ZXJhdGlvbigpOyBzdGF0ZS5OZXh0SXRlcmF0aW9uKCkpIHsKICAgICAgIHNpemVfdCBwb3MgPSByYW5kb20oKSAlIChzdGF0ZS5NQVhfTEVOIC0gc3RhdGUubGVuW2ldKTsKIAogICAgICAgbWVtc2V0KHN0YXRlLnB0cjEsIHJhbmQsIHN0YXRlLmxlbltpXSk7CkBAIC04NjQsMTEgKzg3Miw5IEBACiAKIFRFU1Qoc3RyaW5nLCBtZW1zZXQpIHsKICAgU3RyaW5nVGVzdFN0YXRlPGNoYXI+IHN0YXRlKExBUkdFKTsKLSAgY2hhciBjaCA9IHJhbmRvbSAoKSAmIDI1NTsKKyAgY2hhciBjaCA9ICdQJzsKICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzdGF0ZS5uIC0gMTsgaSsrKSB7Ci0gICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBQT1NfSVRFUjsgaisrKSB7Ci0gICAgICBzdGF0ZS5OZXdJdGVyYXRpb24oKTsKLQorICAgIGZvciAoc3RhdGUuQmVnaW5JdGVyYXRpb25zKCk7IHN0YXRlLkhhc05leHRJdGVyYXRpb24oKTsgc3RhdGUuTmV4dEl0ZXJhdGlvbigpKSB7CiAgICAgICBtZW1zZXQoc3RhdGUucHRyMSwgfmNoLCBzdGF0ZS5NQVhfTEVOKTsKICAgICAgIG1lbWNweShzdGF0ZS5wdHIyLCBzdGF0ZS5wdHIxLCBzdGF0ZS5NQVhfTEVOKTsKIApAQCAtODg3LDE0ICs4OTMsMTIgQEAKIFRFU1Qoc3RyaW5nLCBtZW1tb3ZlKSB7CiAgIFN0cmluZ1Rlc3RTdGF0ZTxjaGFyPiBzdGF0ZShMQVJHRSk7CiAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3RhdGUubiAtIDE7IGkrKykgewotICAgIGZvciAoc2l6ZV90IGogPSAwOyBqIDwgUE9TX0lURVI7IGorKykgewotICAgICAgc3RhdGUuTmV3SXRlcmF0aW9uKCk7Ci0KLSAgICAgIG1lbXNldChzdGF0ZS5wdHIxLCByYW5kb20oKSAmIDI1NSwgMiAqIHN0YXRlLk1BWF9MRU4pOworICAgIGZvciAoc3RhdGUuQmVnaW5JdGVyYXRpb25zKCk7IHN0YXRlLkhhc05leHRJdGVyYXRpb24oKTsgc3RhdGUuTmV4dEl0ZXJhdGlvbigpKSB7CisgICAgICBtZW1zZXQoc3RhdGUucHRyMSwgJ1EnLCAyICogc3RhdGUuTUFYX0xFTik7CiAKICAgICAgIHNpemVfdCBwb3MgPSByYW5kb20oKSAlIChzdGF0ZS5NQVhfTEVOIC0gc3RhdGUubGVuW2ldKTsKIAotICAgICAgbWVtc2V0KHN0YXRlLnB0cjEsIHJhbmRvbSgpICYgMjU1LCBzdGF0ZS5sZW5baV0pOworICAgICAgbWVtc2V0KHN0YXRlLnB0cjEsICdSJywgc3RhdGUubGVuW2ldKTsKICAgICAgIG1lbWNweShzdGF0ZS5wdHIyLCBzdGF0ZS5wdHIxLCAyICogc3RhdGUuTUFYX0xFTik7CiAgICAgICBtZW1jcHkoc3RhdGUucHRyLCBzdGF0ZS5wdHIxLCBzdGF0ZS5sZW5baV0pOwogICAgICAgbWVtY3B5KHN0YXRlLnB0cjEgKyBwb3MsIHN0YXRlLnB0ciwgc3RhdGUubGVuW2ldKTsKQEAgLTkyMCw4ICs5MjQsOCBAQAogCiAgIGZvciAoaW50IGkgPSAwOyBpIDwgNTsgaSsrKSB7CiAgICAgY2hhciogcHRyMiA9IGdsb2JfcHRyMiArIGFsaWdubWVudHNbaV07Ci0gICAgbWVtc2V0KHB0cjEsIHJhbmRvbSgpICYgMjU1LCAyICogbGVuKTsKLSAgICBtZW1zZXQocHRyMSwgcmFuZG9tKCkgJiAyNTUsIGxlbik7CisgICAgbWVtc2V0KHB0cjEsICdTJywgMiAqIGxlbik7CisgICAgbWVtc2V0KHB0cjEsICdUJywgbGVuKTsKICAgICBtZW1jcHkocHRyMiwgcHRyMSwgMiAqIGxlbik7CiAgICAgbWVtY3B5KHB0ciwgcHRyMSwgbGVuKTsKICAgICBtZW1jcHkocHRyMSArIHBvcywgcHRyLCBsZW4pOwpAQCAtOTg3LDExICs5OTEsOSBAQAogVEVTVChzdHJpbmcsIGJjb3B5KSB7CiAgIFN0cmluZ1Rlc3RTdGF0ZTxjaGFyPiBzdGF0ZShMQVJHRSk7CiAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3RhdGUubjsgaSsrKSB7Ci0gICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBQT1NfSVRFUjsgaisrKSB7Ci0gICAgICBzdGF0ZS5OZXdJdGVyYXRpb24oKTsKLQotICAgICAgbWVtc2V0KHN0YXRlLnB0cjEsIHJhbmRvbSgpICYgMjU1LCBzdGF0ZS5NQVhfTEVOKTsKLSAgICAgIG1lbXNldChzdGF0ZS5wdHIxICsgc3RhdGUuTUFYX0xFTiwgcmFuZG9tKCkgJiAyNTUsIHN0YXRlLk1BWF9MRU4pOworICAgIGZvciAoc3RhdGUuQmVnaW5JdGVyYXRpb25zKCk7IHN0YXRlLkhhc05leHRJdGVyYXRpb24oKTsgc3RhdGUuTmV4dEl0ZXJhdGlvbigpKSB7CisgICAgICBtZW1zZXQoc3RhdGUucHRyMSwgJzQnLCBzdGF0ZS5NQVhfTEVOKTsKKyAgICAgIG1lbXNldChzdGF0ZS5wdHIxICsgc3RhdGUuTUFYX0xFTiwgJ2EnLCBzdGF0ZS5NQVhfTEVOKTsKICAgICAgIG1lbWNweShzdGF0ZS5wdHIyLCBzdGF0ZS5wdHIxLCAyICogc3RhdGUuTUFYX0xFTik7CiAKICAgICAgIHNpemVfdCBzdGFydCA9IHJhbmRvbSgpICUgKDIgKiBzdGF0ZS5NQVhfTEVOIC0gc3RhdGUubGVuW2ldKTsKQEAgLTEwMDUsMTAgKzEwMDcsOCBAQAogCiBURVNUKHN0cmluZywgYnplcm8pIHsKICAgU3RyaW5nVGVzdFN0YXRlPGNoYXI+IHN0YXRlKExBUkdFKTsKLSAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBJVEVSOyBqKyspIHsKLSAgICBzdGF0ZS5OZXdJdGVyYXRpb24oKTsKLQotICAgIG1lbXNldChzdGF0ZS5wdHIxLCByYW5kb20oKSAmIDI1NSwgc3RhdGUuTUFYX0xFTik7CisgIGZvciAoc3RhdGUuQmVnaW5JdGVyYXRpb25zKCk7IHN0YXRlLkhhc05leHRJdGVyYXRpb24oKTsgc3RhdGUuTmV4dEl0ZXJhdGlvbigpKSB7CisgICAgbWVtc2V0KHN0YXRlLnB0cjEsICdSJywgc3RhdGUuTUFYX0xFTik7CiAKICAgICBzaXplX3Qgc3RhcnQgPSByYW5kb20oKSAlIHN0YXRlLk1BWF9MRU47CiAgICAgc2l6ZV90IGVuZCA9IHN0YXJ0ICsgcmFuZG9tKCkgJSAoc3RhdGUuTUFYX0xFTiAtIHN0YXJ0KTsKQEAgLTExMDUsNiArMTEwNSwzNiBAQAogICBSdW5TcmNEc3RCdWZmZXJPdmVycmVhZFRlc3QoRG9TdHJjcHlUZXN0KTsKIH0KIAorI2lmIGRlZmluZWQoU1RSTENQWV9TVVBQT1JURUQpCitzdGF0aWMgdm9pZCBEb1N0cmxjcHlUZXN0KHVpbnQ4X3QqIHNyYywgdWludDhfdCogZHN0LCBzaXplX3QgbGVuKSB7CisgIGlmIChsZW4gPj0gMSkgeworICAgIG1lbXNldChzcmMsICgzMiArIChsZW4gJSA5NikpLCBsZW4gLSAxKTsKKyAgICBzcmNbbGVuLTFdID0gJ1wwJzsKKyAgICBtZW1zZXQoZHN0LCAwLCBsZW4pOworICAgIEFTU0VSVF9FUShsZW4tMSwgc3RybGNweShyZWludGVycHJldF9jYXN0PGNoYXIqPihkc3QpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWludGVycHJldF9jYXN0PGNoYXIqPihzcmMpLCBsZW4pKTsKKyAgICBBU1NFUlRfVFJVRShtZW1jbXAoc3JjLCBkc3QsIGxlbikgPT0gMCk7CisgIH0KK30KKyNlbmRpZgorCitURVNUKHN0cmluZywgc3RybGNweV9hbGlnbikgeworI2lmIGRlZmluZWQoU1RSTENQWV9TVVBQT1JURUQpCisgIFJ1blNyY0RzdEJ1ZmZlckFsaWduVGVzdChMQVJHRSwgRG9TdHJsY3B5VGVzdCk7CisjZWxzZQorICBHVEVTVF9MT0dfKElORk8pIDw8ICJTa2lwcGluZyB0ZXN0LCBzdHJsY3B5IG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBwbGF0Zm9ybS4iOworI2VuZGlmCit9CisKK1RFU1Qoc3RyaW5nLCBzdHJsY3B5X292ZXJyZWFkKSB7CisjaWYgZGVmaW5lZChTVFJMQ1BZX1NVUFBPUlRFRCkKKyAgUnVuU3JjRHN0QnVmZmVyT3ZlcnJlYWRUZXN0KERvU3RybGNweVRlc3QpOworI2Vsc2UKKyAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiU2tpcHBpbmcgdGVzdCwgc3RybGNweSBub3Qgc3VwcG9ydGVkIG9uIHRoaXMgcGxhdGZvcm0uIjsKKyNlbmRpZgorfQorCisKIHN0YXRpYyB2b2lkIERvU3RwY3B5VGVzdCh1aW50OF90KiBzcmMsIHVpbnQ4X3QqIGRzdCwgc2l6ZV90IGxlbikgewogICBpZiAobGVuID49IDEpIHsKICAgICBtZW1zZXQoc3JjLCAoMzIgKyAobGVuICUgOTYpKSwgbGVuIC0gMSk7CkBAIC0xMTc3LDYgKzEyMDcsNTUgQEAKICAgUnVuU3JjRHN0QnVmZmVyT3ZlcnJlYWRUZXN0KERvU3RyY2F0VGVzdCk7CiB9CiAKKyNpZiBkZWZpbmVkKFNUUkxDQVRfU1VQUE9SVEVEKQorc3RhdGljIHZvaWQgRG9TdHJsY2F0VGVzdCh1aW50OF90KiBzcmMsIHVpbnQ4X3QqIGRzdCwgc2l6ZV90IGxlbikgeworICBpZiAobGVuID49IDEpIHsKKyAgICBpbnQgdmFsdWUgPSAzMiArIChsZW4gJSA5Nik7CisgICAgbWVtc2V0KHNyYywgdmFsdWUsIGxlbiAtIDEpOworICAgIHNyY1tsZW4tMV0gPSAnXDAnOworCisgICAgaWYgKGxlbiA+PSBTVFJDQVRfRFNUX0xFTikgeworICAgICAgLy8gQ3JlYXRlIGEgc21hbGwgYnVmZmVyIGZvciBkb2luZyBxdWljayBjb21wYXJlcyBpbiBlYWNoIGxvb3AuCisgICAgICB1aW50OF90IGNtcF9idWZbU1RSQ0FUX0RTVF9MRU5dOworICAgICAgLy8gTWFrZSBzdXJlIGRzdCBzdHJpbmcgY29udGFpbnMgYSBkaWZmZXJlbnQgdmFsdWUgdGhlbiB0aGUgc3JjIHN0cmluZy4KKyAgICAgIGludCB2YWx1ZTIgPSAzMiArICh2YWx1ZSArIDIpICUgOTY7CisgICAgICBtZW1zZXQoY21wX2J1ZiwgdmFsdWUyLCBzaXplb2YoY21wX2J1ZikpOworCisgICAgICBmb3IgKHNpemVfdCBpID0gMTsgaSA8PSBTVFJDQVRfRFNUX0xFTjsgaSsrKSB7CisgICAgICAgIG1lbXNldChkc3QsIHZhbHVlMiwgaS0xKTsKKyAgICAgICAgbWVtc2V0KGRzdCtpLTEsIDAsIGxlbi1pKTsKKyAgICAgICAgc3JjW2xlbi1pXSA9ICdcMCc7CisgICAgICAgIEFTU0VSVF9FUShsZW4tMSwgc3RybGNhdChyZWludGVycHJldF9jYXN0PGNoYXIqPihkc3QpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxjaGFyKj4oc3JjKSwgbGVuKSk7CisgICAgICAgIEFTU0VSVF9UUlVFKG1lbWNtcChkc3QsIGNtcF9idWYsIGktMSkgPT0gMCk7CisgICAgICAgIEFTU0VSVF9UUlVFKG1lbWNtcChzcmMsIGRzdCtpLTEsIGxlbi1pKzEpID09IDApOworICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICBkc3RbMF0gPSAnXDAnOworICAgICAgQVNTRVJUX0VRKGxlbi0xLCBzdHJsY2F0KHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KGRzdCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxjaGFyKj4oc3JjKSwgbGVuKSk7CisgICAgICBBU1NFUlRfVFJVRShtZW1jbXAoc3JjLCBkc3QsIGxlbikgPT0gMCk7CisgICAgfQorICB9Cit9CisjZW5kaWYKKworVEVTVChzdHJpbmcsIHN0cmxjYXRfYWxpZ24pIHsKKyNpZiBkZWZpbmVkKFNUUkxDQVRfU1VQUE9SVEVEKQorICBSdW5TcmNEc3RCdWZmZXJBbGlnblRlc3QoTUVESVVNLCBEb1N0cmxjYXRUZXN0LCBMYXJnZVNldEluY3JlbWVudCk7CisjZWxzZQorICBHVEVTVF9MT0dfKElORk8pIDw8ICJTa2lwcGluZyB0ZXN0LCBzdHJsY2F0IG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBwbGF0Zm9ybS4iOworI2VuZGlmCit9CisKK1RFU1Qoc3RyaW5nLCBzdHJsY2F0X292ZXJyZWFkKSB7CisjaWYgZGVmaW5lZChTVFJMQ0FUX1NVUFBPUlRFRCkKKyAgUnVuU3JjRHN0QnVmZmVyT3ZlcnJlYWRUZXN0KERvU3RybGNhdFRlc3QpOworI2Vsc2UKKyAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiU2tpcHBpbmcgdGVzdCwgc3RybGNhdCBub3Qgc3VwcG9ydGVkIG9uIHRoaXMgcGxhdGZvcm0uIjsKKyNlbmRpZgorfQorCiBzdGF0aWMgdm9pZCBEb1N0cmNtcFRlc3QodWludDhfdCogYnVmMSwgdWludDhfdCogYnVmMiwgc2l6ZV90IGxlbikgewogICBpZiAobGVuID49IDEpIHsKICAgICBtZW1zZXQoYnVmMSwgKDMyICsgKGxlbiAlIDk2KSksIGxlbiAtIDEpOwpAQCAtMTI4NywzICsxMzY2LDM3IEBACiBURVNUKHN0cmluZywgc3RyY2hyX292ZXJyZWFkKSB7CiAgIFJ1blNpbmdsZUJ1ZmZlck92ZXJyZWFkVGVzdChEb1N0cmNoclRlc3QpOwogfQorCitzdGF0aWMgdm9pZCBUZXN0QmFzZW5hbWUoY29uc3QgY2hhciogaW4sIGNvbnN0IGNoYXIqIGV4cGVjdGVkX291dCkgeworICBlcnJubyA9IDA7CisgIGNvbnN0IGNoYXIqIG91dCA9IGJhc2VuYW1lKGluKTsKKyAgQVNTRVJUX1NUUkVRKGV4cGVjdGVkX291dCwgb3V0KSA8PCBpbjsKKyAgQVNTRVJUX0VRKDAsIGVycm5vKSA8PCBpbjsKK30KKworVEVTVChzdHJpbmcsIF9fZ251X2Jhc2VuYW1lKSB7CisgIFRlc3RCYXNlbmFtZSgiIiwgIiIpOworICBUZXN0QmFzZW5hbWUoIi91c3IvbGliIiwgImxpYiIpOworICBUZXN0QmFzZW5hbWUoIi91c3IvIiwgIiIpOworICBUZXN0QmFzZW5hbWUoInVzciIsICJ1c3IiKTsKKyAgVGVzdEJhc2VuYW1lKCIvIiwgIiIpOworICBUZXN0QmFzZW5hbWUoIi4iLCAiLiIpOworICBUZXN0QmFzZW5hbWUoIi4uIiwgIi4uIik7CisgIFRlc3RCYXNlbmFtZSgiLy8vIiwgIiIpOworICBUZXN0QmFzZW5hbWUoIi8vdXNyLy9saWIvLyIsICIiKTsKK30KKworVEVTVChzdHJpbmcsIHN0cm5sZW5fMTQ3MDQ4KSB7CisgIC8vIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvYW5kcm9pZC9pc3N1ZXMvZGV0YWlsP2lkPTE0NzA0OAorICBjaGFyIHN0YWNrX3NyY1s2NF0gPSB7MH07CisgIEVYUEVDVF9FUSgwVSwgc3RybmxlbihzdGFja19zcmMsIDEwMjQqMTAyNCoxMDI0KSk7CisgIGNoYXIqIGhlYXBfc3JjID0gbmV3IGNoYXJbMV07CisgICpoZWFwX3NyYyA9ICdcMCc7CisgIEVYUEVDVF9FUSgwVSwgc3RybmxlbihoZWFwX3NyYywgMTAyNCoxMDI0KjEwMjQpKTsKKyAgZGVsZXRlW10gaGVhcF9zcmM7Cit9CisKK1RFU1Qoc3RyaW5nLCBtZW1wY3B5KSB7CisgIGNoYXIgZHN0WzZdOworICBBU1NFUlRfRVEoJmRzdFs0XSwgcmVpbnRlcnByZXRfY2FzdDxjaGFyKj4obWVtcGNweShkc3QsICJoZWxsbyIsIDQpKSk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy9zdHJpbmdzX3Rlc3QuY3BwIGIvdGVzdHMvc3RyaW5nc190ZXN0LmNwcAppbmRleCA1MjAwODU5Li44MjNhYTRmIDEwMDY0NAotLS0gYS90ZXN0cy9zdHJpbmdzX3Rlc3QuY3BwCisrKyBiL3Rlc3RzL3N0cmluZ3NfdGVzdC5jcHAKQEAgLTE3LDYgKzE3LDcgQEAKICNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgogCiAjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxsb2NhbGUuaD4KICNpbmNsdWRlIDxzdHJpbmdzLmg+CiAKIFRFU1Qoc3RyaW5ncywgZmZzKSB7CkBAIC0zMCwzICszMSwzMyBAQAogICBBU1NFUlRfRVEoMjcsIGZmcygweDA0MDAwMDAwKSk7CiAgIEFTU0VSVF9FUSgzMiwgZmZzKDB4ODAwMDAwMDApKTsKIH0KKworVEVTVChzdHJpbmdzLCBzdHJjYXNlY21wKSB7CisgIEFTU0VSVF9FUSgwLCBzdHJjYXNlY21wKCJoZWxsbyIsICJIRUxMTyIpKTsKKyAgQVNTRVJUX0xUKHN0cmNhc2VjbXAoImhlbGxvMSIsICJoZWxsbzIiKSwgMCk7CisgIEFTU0VSVF9HVChzdHJjYXNlY21wKCJoZWxsbzIiLCAiaGVsbG8xIiksIDApOworfQorCitURVNUKHN0cmluZ3MsIHN0cmNhc2VjbXBfbCkgeworICBsb2NhbGVfdCBsID0gbmV3bG9jYWxlKExDX0FMTCwgIkMiLCAwKTsKKyAgQVNTRVJUX0VRKDAsIHN0cmNhc2VjbXBfbCgiaGVsbG8iLCAiSEVMTE8iLCBsKSk7CisgIEFTU0VSVF9MVChzdHJjYXNlY21wX2woImhlbGxvMSIsICJoZWxsbzIiLCBsKSwgMCk7CisgIEFTU0VSVF9HVChzdHJjYXNlY21wX2woImhlbGxvMiIsICJoZWxsbzEiLCBsKSwgMCk7CisgIGZyZWVsb2NhbGUobCk7Cit9CisKK1RFU1Qoc3RyaW5ncywgc3RybmNhc2VjbXApIHsKKyAgQVNTRVJUX0VRKDAsIHN0cm5jYXNlY21wKCJoZWxsbyIsICJIRUxMTyIsIDMpKTsKKyAgQVNTRVJUX0VRKDAsIHN0cm5jYXNlY21wKCJhYmNYWCIsICJBQkNZWSIsIDMpKTsKKyAgQVNTRVJUX0xUKHN0cm5jYXNlY21wKCJoZWxsbzEiLCAiaGVsbG8yIiwgNiksIDApOworICBBU1NFUlRfR1Qoc3RybmNhc2VjbXAoImhlbGxvMiIsICJoZWxsbzEiLCA2KSwgMCk7Cit9CisKK1RFU1Qoc3RyaW5ncywgc3RybmNhc2VjbXBfbCkgeworICBsb2NhbGVfdCBsID0gbmV3bG9jYWxlKExDX0FMTCwgIkMiLCAwKTsKKyAgQVNTRVJUX0VRKDAsIHN0cm5jYXNlY21wX2woImhlbGxvIiwgIkhFTExPIiwgMywgbCkpOworICBBU1NFUlRfRVEoMCwgc3RybmNhc2VjbXBfbCgiYWJjWFgiLCAiQUJDWVkiLCAzLCBsKSk7CisgIEFTU0VSVF9MVChzdHJuY2FzZWNtcF9sKCJoZWxsbzEiLCAiaGVsbG8yIiwgNiwgbCksIDApOworICBBU1NFUlRfR1Qoc3RybmNhc2VjbXBfbCgiaGVsbG8yIiwgImhlbGxvMSIsIDYsIGwpLCAwKTsKKyAgZnJlZWxvY2FsZShsKTsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL3N0dWJzX3Rlc3QuY3BwIGIvdGVzdHMvc3R1YnNfdGVzdC5jcHAKaW5kZXggOWIwYzIzMS4uODlkNjdjYiAxMDA2NDQKLS0tIGEvdGVzdHMvc3R1YnNfdGVzdC5jcHAKKysrIGIvdGVzdHMvc3R1YnNfdGVzdC5jcHAKQEAgLTE2LDk4ICsxNiwyNDYgQEAKIAogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CiAKLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDxzeXMvY2RlZnMuaD4KKy8vIEJlbG93IGFyZSB0aGUgaGVhZGVyIGZpbGVzIHdlIHdhbnQgdG8gdGVzdC4KKyNpbmNsdWRlIDxncnAuaD4KICNpbmNsdWRlIDxwd2QuaD4KKwogI2luY2x1ZGUgPGVycm5vLmg+CiAjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+CiAKLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCi0jZGVmaW5lIENIRUNLX0dFVFBXTkFNX0ZPUih1c2VybmFtZSwgdWlkLCB1aWRfdHlwZSkgXAotICAgIFNDT1BFRF9UUkFDRSh1c2VybmFtZSk7IFwKLSAgICBBU1NFUlRfTk9fRkFUQUxfRkFJTFVSRShjaGVja19nZXRwd25hbSh1c2VybmFtZSwgdWlkLCB1aWRfdHlwZSkpOwotCi10eXBlZGVmIGVudW0geworZW51bSB1aWRfdHlwZV90IHsKICAgVFlQRV9TWVNURU0sCiAgIFRZUEVfQVBQCi19IHVpZF90eXBlX3Q7Cit9OwogCi1zdGF0aWMgdm9pZCBjaGVja19nZXRwd25hbShjb25zdCBjaGFyKiB1c2VybmFtZSwgdWlkX3QgdWlkLCB1aWRfdHlwZV90IHVpZF90eXBlKSB7Ci0gIGVycm5vID0gMDsKLSAgcGFzc3dkKiBwd2QgPSBnZXRwd3VpZCh1aWQpOworI2lmIGRlZmluZWQoX19CSU9OSUNfXykKKworc3RhdGljIHZvaWQgY2hlY2tfcGFzc3dkKGNvbnN0IHBhc3N3ZCogcHdkLCBjb25zdCBjaGFyKiB1c2VybmFtZSwgdWlkX3QgdWlkLCB1aWRfdHlwZV90IHVpZF90eXBlKSB7CiAgIEFTU0VSVF9UUlVFKHB3ZCAhPSBOVUxMKTsKLSAgQVNTRVJUX0VRKDAsIGVycm5vKTsKLSAgRVhQRUNUX1NUUkVRKHVzZXJuYW1lLCBwd2QtPnB3X25hbWUpOwotICBFWFBFQ1RfRVEodWlkLCBwd2QtPnB3X3VpZCk7Ci0gIEVYUEVDVF9FUSh1aWQsIHB3ZC0+cHdfZ2lkKTsKKyAgQVNTRVJUX1NUUkVRKHVzZXJuYW1lLCBwd2QtPnB3X25hbWUpOworICBBU1NFUlRfRVEodWlkLCBwd2QtPnB3X3VpZCk7CisgIEFTU0VSVF9FUSh1aWQsIHB3ZC0+cHdfZ2lkKTsKICAgQVNTRVJUX0VRKE5VTEwsIHB3ZC0+cHdfcGFzc3dkKTsKICNpZmRlZiBfX0xQNjRfXwogICBBU1NFUlRfRVEoTlVMTCwgcHdkLT5wd19nZWNvcyk7CiAjZW5kaWYKIAogICBpZiAodWlkX3R5cGUgPT0gVFlQRV9TWVNURU0pIHsKLSAgICBFWFBFQ1RfU1RSRVEoIi8iLCBwd2QtPnB3X2Rpcik7Ci0gIH0gZWxzZSBpZiAodWlkX3R5cGUgPT0gVFlQRV9BUFApIHsKLSAgICBFWFBFQ1RfU1RSRVEoIi9kYXRhIiwgcHdkLT5wd19kaXIpOworICAgIEFTU0VSVF9TVFJFUSgiLyIsIHB3ZC0+cHdfZGlyKTsKKyAgfSBlbHNlIHsKKyAgICBBU1NFUlRfU1RSRVEoIi9kYXRhIiwgcHdkLT5wd19kaXIpOwogICB9Ci0KLSAgRVhQRUNUX1NUUkVRKCIvc3lzdGVtL2Jpbi9zaCIsIHB3ZC0+cHdfc2hlbGwpOworICBBU1NFUlRfU1RSRVEoIi9zeXN0ZW0vYmluL3NoIiwgcHdkLT5wd19zaGVsbCk7CiB9Ci0jZWxzZQotI2RlZmluZSBDSEVDS19HRVRQV05BTV9GT1IodXNlcm5hbWUsIHVpZCwgdWlkX3R5cGUpIFwKLSAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7CisKK3N0YXRpYyB2b2lkIGNoZWNrX2dldHB3dWlkKGNvbnN0IGNoYXIqIHVzZXJuYW1lLCB1aWRfdCB1aWQsIHVpZF90eXBlX3QgdWlkX3R5cGUpIHsKKyAgZXJybm8gPSAwOworICBwYXNzd2QqIHB3ZCA9IGdldHB3dWlkKHVpZCk7CisgIEFTU0VSVF9FUSgwLCBlcnJubyk7CisgIFNDT1BFRF9UUkFDRSgiZ2V0cHd1aWQiKTsKKyAgY2hlY2tfcGFzc3dkKHB3ZCwgdXNlcm5hbWUsIHVpZCwgdWlkX3R5cGUpOworfQorCitzdGF0aWMgdm9pZCBjaGVja19nZXRwd25hbShjb25zdCBjaGFyKiB1c2VybmFtZSwgdWlkX3QgdWlkLCB1aWRfdHlwZV90IHVpZF90eXBlKSB7CisgIGVycm5vID0gMDsKKyAgcGFzc3dkKiBwd2QgPSBnZXRwd25hbSh1c2VybmFtZSk7CisgIEFTU0VSVF9FUSgwLCBlcnJubyk7CisgIFNDT1BFRF9UUkFDRSgiZ2V0cHduYW0iKTsKKyAgY2hlY2tfcGFzc3dkKHB3ZCwgdXNlcm5hbWUsIHVpZCwgdWlkX3R5cGUpOworfQorCitzdGF0aWMgdm9pZCBjaGVja19nZXRwd3VpZF9yKGNvbnN0IGNoYXIqIHVzZXJuYW1lLCB1aWRfdCB1aWQsIHVpZF90eXBlX3QgdWlkX3R5cGUpIHsKKyAgcGFzc3dkIHB3ZF9zdG9yYWdlOworICBjaGFyIGJ1Zls1MTJdOworICBpbnQgcmVzdWx0OworCisgIGVycm5vID0gMDsKKyAgcGFzc3dkKiBwd2QgPSBOVUxMOworICByZXN1bHQgPSBnZXRwd3VpZF9yKHVpZCwgJnB3ZF9zdG9yYWdlLCBidWYsIHNpemVvZihidWYpLCAmcHdkKTsKKyAgQVNTRVJUX0VRKDAsIHJlc3VsdCk7CisgIEFTU0VSVF9FUSgwLCBlcnJubyk7CisgIFNDT1BFRF9UUkFDRSgiZ2V0cHd1aWRfciIpOworICBjaGVja19wYXNzd2QocHdkLCB1c2VybmFtZSwgdWlkLCB1aWRfdHlwZSk7Cit9CisKK3N0YXRpYyB2b2lkIGNoZWNrX2dldHB3bmFtX3IoY29uc3QgY2hhciogdXNlcm5hbWUsIHVpZF90IHVpZCwgdWlkX3R5cGVfdCB1aWRfdHlwZSkgeworICBwYXNzd2QgcHdkX3N0b3JhZ2U7CisgIGNoYXIgYnVmWzUxMl07CisgIGludCByZXN1bHQ7CisKKyAgZXJybm8gPSAwOworICBwYXNzd2QqIHB3ZCA9IE5VTEw7CisgIHJlc3VsdCA9IGdldHB3bmFtX3IodXNlcm5hbWUsICZwd2Rfc3RvcmFnZSwgYnVmLCBzaXplb2YoYnVmKSwgJnB3ZCk7CisgIEFTU0VSVF9FUSgwLCByZXN1bHQpOworICBBU1NFUlRfRVEoMCwgZXJybm8pOworICBTQ09QRURfVFJBQ0UoImdldHB3bmFtX3IiKTsKKyAgY2hlY2tfcGFzc3dkKHB3ZCwgdXNlcm5hbWUsIHVpZCwgdWlkX3R5cGUpOworfQorCitzdGF0aWMgdm9pZCBjaGVja19nZXRfcGFzc3dkKGNvbnN0IGNoYXIqIHVzZXJuYW1lLCB1aWRfdCB1aWQsIHVpZF90eXBlX3QgdWlkX3R5cGUpIHsKKyAgY2hlY2tfZ2V0cHd1aWQodXNlcm5hbWUsIHVpZCwgdWlkX3R5cGUpOworICBjaGVja19nZXRwd25hbSh1c2VybmFtZSwgdWlkLCB1aWRfdHlwZSk7CisgIGNoZWNrX2dldHB3dWlkX3IodXNlcm5hbWUsIHVpZCwgdWlkX3R5cGUpOworICBjaGVja19nZXRwd25hbV9yKHVzZXJuYW1lLCB1aWQsIHVpZF90eXBlKTsKK30KKworI2Vsc2UgLy8gIWRlZmluZWQoX19CSU9OSUNfXykKKworc3RhdGljIHZvaWQgY2hlY2tfZ2V0X3Bhc3N3ZChjb25zdCBjaGFyKiAvKiB1c2VybmFtZSAqLywgdWlkX3QgLyogdWlkICovLCB1aWRfdHlwZV90IC8qIHVpZF90eXBlICovKSB7CisgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBpcyBhYm91dCB1aWQvdXNlcm5hbWUgdHJhbnNsYXRpb24gZm9yIEFuZHJvaWQsIHdoaWNoIGRvZXMgbm90aGluZyBvbiBsaWJjIG90aGVyIHRoYW4gYmlvbmljLlxuIjsKK30KKwogI2VuZGlmCiAKIFRFU1QoZ2V0cHduYW0sIHN5c3RlbV9pZF9yb290KSB7Ci0gIENIRUNLX0dFVFBXTkFNX0ZPUigicm9vdCIsIDAsIFRZUEVfU1lTVEVNKTsKKyAgY2hlY2tfZ2V0X3Bhc3N3ZCgicm9vdCIsIDAsIFRZUEVfU1lTVEVNKTsKIH0KIAogVEVTVChnZXRwd25hbSwgc3lzdGVtX2lkX3N5c3RlbSkgewotICBDSEVDS19HRVRQV05BTV9GT1IoInN5c3RlbSIsIDEwMDAsIFRZUEVfU1lTVEVNKTsKKyAgY2hlY2tfZ2V0X3Bhc3N3ZCgic3lzdGVtIiwgMTAwMCwgVFlQRV9TWVNURU0pOwogfQogCiBURVNUKGdldHB3bmFtLCBhcHBfaWRfcmFkaW8pIHsKLSAgQ0hFQ0tfR0VUUFdOQU1fRk9SKCJyYWRpbyIsIDEwMDEsIFRZUEVfU1lTVEVNKTsKKyAgY2hlY2tfZ2V0X3Bhc3N3ZCgicmFkaW8iLCAxMDAxLCBUWVBFX1NZU1RFTSk7CiB9CiAKIFRFU1QoZ2V0cHduYW0sIGFwcF9pZF9ub2JvZHkpIHsKLSAgQ0hFQ0tfR0VUUFdOQU1fRk9SKCJub2JvZHkiLCA5OTk5LCBUWVBFX1NZU1RFTSk7Ci19Ci0KLVRFU1QoZ2V0cHduYW0sIGFwcF9pZF9hbGxfYTApIHsKLSAgQ0hFQ0tfR0VUUFdOQU1fRk9SKCJhbGxfYTAiLCA1MDAwMCwgVFlQRV9BUFApOwotfQotCi1URVNUKGdldHB3bmFtLCBhcHBfaWRfdTFfYTQwMDAwKSB7Ci0gIENIRUNLX0dFVFBXTkFNX0ZPUigidTFfYTQwMDAwIiwgMTUwMDAwLCBUWVBFX0FQUCk7CisgIGNoZWNrX2dldF9wYXNzd2QoIm5vYm9keSIsIDk5OTksIFRZUEVfU1lTVEVNKTsKIH0KIAogVEVTVChnZXRwd25hbSwgYXBwX2lkX3UwX2EwKSB7Ci0gIENIRUNLX0dFVFBXTkFNX0ZPUigidTBfYTAiLCAxMDAwMCwgVFlQRV9BUFApOworICBjaGVja19nZXRfcGFzc3dkKCJ1MF9hMCIsIDEwMDAwLCBUWVBFX0FQUCk7CiB9CiAKIFRFU1QoZ2V0cHduYW0sIGFwcF9pZF91MF9hMTIzNCkgewotICBDSEVDS19HRVRQV05BTV9GT1IoInUwX2ExMjM0IiwgMTEyMzQsIFRZUEVfQVBQKTsKKyAgY2hlY2tfZ2V0X3Bhc3N3ZCgidTBfYTEyMzQiLCAxMTIzNCwgVFlQRV9BUFApOwogfQogCi1URVNUKGdldHB3bmFtLCBhcHBfaWRfdTBfYTk5OTkpIHsKLSAgQ0hFQ0tfR0VUUFdOQU1fRk9SKCJ1MF9hOTk5OSIsIDE5OTk5LCBUWVBFX0FQUCk7CisvLyBUZXN0IHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gdWlkIGFuZCBzaGFyZWQgZ2lkLgorVEVTVChnZXRwd25hbSwgYXBwX2lkX3UwX2E0OTk5OSkgeworICBjaGVja19nZXRfcGFzc3dkKCJ1MF9hNDk5OTkiLCA1OTk5OSwgVFlQRV9BUFApOwogfQogCi0vLyBub25zZW5zaWNhbCwgYnV0IGV4cGVjdGVkCitURVNUKGdldHB3bmFtLCBhcHBfaWRfdTBfaTEpIHsKKyAgY2hlY2tfZ2V0X3Bhc3N3ZCgidTBfaTEiLCA5OTAwMSwgVFlQRV9BUFApOworfQorCiBURVNUKGdldHB3bmFtLCBhcHBfaWRfdTFfcm9vdCkgewotICBDSEVDS19HRVRQV05BTV9GT1IoInUxX3Jvb3QiLCAxMDAwMDAsIFRZUEVfU1lTVEVNKTsKKyAgY2hlY2tfZ2V0X3Bhc3N3ZCgidTFfcm9vdCIsIDEwMDAwMCwgVFlQRV9TWVNURU0pOwogfQogCiBURVNUKGdldHB3bmFtLCBhcHBfaWRfdTFfcmFkaW8pIHsKLSAgQ0hFQ0tfR0VUUFdOQU1fRk9SKCJ1MV9yYWRpbyIsIDEwMTAwMSwgVFlQRV9TWVNURU0pOworICBjaGVja19nZXRfcGFzc3dkKCJ1MV9yYWRpbyIsIDEwMTAwMSwgVFlQRV9TWVNURU0pOwogfQogCiBURVNUKGdldHB3bmFtLCBhcHBfaWRfdTFfYTApIHsKLSAgQ0hFQ0tfR0VUUFdOQU1fRk9SKCJ1MV9hMCIsIDExMDAwMCwgVFlQRV9BUFApOworICBjaGVja19nZXRfcGFzc3dkKCJ1MV9hMCIsIDExMDAwMCwgVFlQRV9BUFApOworfQorCitURVNUKGdldHB3bmFtLCBhcHBfaWRfdTFfYTQwMDAwKSB7CisgIGNoZWNrX2dldF9wYXNzd2QoInUxX2E0MDAwMCIsIDE1MDAwMCwgVFlQRV9BUFApOwogfQogCiBURVNUKGdldHB3bmFtLCBhcHBfaWRfdTFfaTApIHsKLSAgQ0hFQ0tfR0VUUFdOQU1fRk9SKCJ1MV9pMCIsIDE5OTAwMCwgVFlQRV9BUFApOworICBjaGVja19nZXRfcGFzc3dkKCJ1MV9pMCIsIDE5OTAwMCwgVFlQRV9BUFApOworfQorCisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorCitzdGF0aWMgdm9pZCBjaGVja19ncm91cChjb25zdCBncm91cCogZ3JwLCBjb25zdCBjaGFyKiBncm91cF9uYW1lLCBnaWRfdCBnaWQpIHsKKyAgQVNTRVJUX1RSVUUoZ3JwICE9IE5VTEwpOworICBBU1NFUlRfU1RSRVEoZ3JvdXBfbmFtZSwgZ3JwLT5ncl9uYW1lKTsKKyAgQVNTRVJUX0VRKGdpZCwgZ3JwLT5ncl9naWQpOworICBBU1NFUlRfVFJVRShncnAtPmdyX21lbSAhPSBOVUxMKTsKKyAgQVNTRVJUX1NUUkVRKGdyb3VwX25hbWUsIGdycC0+Z3JfbWVtWzBdKTsKKyAgQVNTRVJUX1RSVUUoZ3JwLT5ncl9tZW1bMV0gPT0gTlVMTCk7Cit9CisKK3N0YXRpYyB2b2lkIGNoZWNrX2dldGdyZ2lkKGNvbnN0IGNoYXIqIGdyb3VwX25hbWUsIGdpZF90IGdpZCkgeworICBlcnJubyA9IDA7CisgIGdyb3VwKiBncnAgPSBnZXRncmdpZChnaWQpOworICBBU1NFUlRfRVEoMCwgZXJybm8pOworICBTQ09QRURfVFJBQ0UoImdldGdyZ2lkIik7CisgIGNoZWNrX2dyb3VwKGdycCwgZ3JvdXBfbmFtZSwgZ2lkKTsKK30KKworc3RhdGljIHZvaWQgY2hlY2tfZ2V0Z3JuYW0oY29uc3QgY2hhciogZ3JvdXBfbmFtZSwgZ2lkX3QgZ2lkKSB7CisgIGVycm5vID0gMDsKKyAgZ3JvdXAqIGdycCA9IGdldGdybmFtKGdyb3VwX25hbWUpOworICBBU1NFUlRfRVEoMCwgZXJybm8pOworICBTQ09QRURfVFJBQ0UoImdldGdybmFtIik7CisgIGNoZWNrX2dyb3VwKGdycCwgZ3JvdXBfbmFtZSwgZ2lkKTsKK30KKworc3RhdGljIHZvaWQgY2hlY2tfZ2V0X2dyb3VwKGNvbnN0IGNoYXIqIGdyb3VwX25hbWUsIGdpZF90IGdpZCkgeworICBjaGVja19nZXRncmdpZChncm91cF9uYW1lLCBnaWQpOworICBjaGVja19nZXRncm5hbShncm91cF9uYW1lLCBnaWQpOworfQorCisjZWxzZSAvLyAhZGVmaW5lZChfX0JJT05JQ19fKQorCitzdGF0aWMgdm9pZCBjaGVja19nZXRfZ3JvdXAoY29uc3QgY2hhciogLyogZ3JvdXBfbmFtZSAqLywgZ2lkX3QgLyogZ2lkICovKSB7CisgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBpcyBhYm91dCBnaWQvZ3JvdXBfbmFtZSB0cmFuc2xhdGlvbiBmb3IgQW5kcm9pZCwgd2hpY2ggZG9lcyBub3RoaW5nIG9uIGxpYmMgb3RoZXIgdGhhbiBiaW9uaWMuXG4iOworfQorCisjZW5kaWYKKworVEVTVChnZXRncm5hbSwgc3lzdGVtX2lkX3Jvb3QpIHsKKyAgY2hlY2tfZ2V0X2dyb3VwKCJyb290IiwgMCk7Cit9CisKK1RFU1QoZ2V0Z3JuYW0sIHN5c3RlbV9pZF9zeXN0ZW0pIHsKKyAgY2hlY2tfZ2V0X2dyb3VwKCJzeXN0ZW0iLCAxMDAwKTsKK30KKworVEVTVChnZXRncm5hbSwgYXBwX2lkX3JhZGlvKSB7CisgIGNoZWNrX2dldF9ncm91cCgicmFkaW8iLCAxMDAxKTsKK30KKworVEVTVChnZXRncm5hbSwgYXBwX2lkX25vYm9keSkgeworICBjaGVja19nZXRfZ3JvdXAoIm5vYm9keSIsIDk5OTkpOworfQorCitURVNUKGdldGdybmFtLCBhcHBfaWRfdTBfYTApIHsKKyAgY2hlY2tfZ2V0X2dyb3VwKCJ1MF9hMCIsIDEwMDAwKTsKK30KKworVEVTVChnZXRncm5hbSwgYXBwX2lkX3UwX2ExMjM0KSB7CisgIGNoZWNrX2dldF9ncm91cCgidTBfYTEyMzQiLCAxMTIzNCk7Cit9CisKK1RFU1QoZ2V0Z3JuYW0sIGFwcF9pZF91MF9hOTk5OSkgeworICBjaGVja19nZXRfZ3JvdXAoInUwX2E5OTk5IiwgMTk5OTkpOworfQorCisvLyBUZXN0IHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gdWlkIGFuZCBzaGFyZWQgZ2lkLgorVEVTVChnZXRncm5hbSwgYXBwX2lkX2FsbF9hOTk5OSkgeworICBjaGVja19nZXRfZ3JvdXAoImFsbF9hOTk5OSIsIDU5OTk5KTsKK30KKworVEVTVChnZXRncm5hbSwgYXBwX2lkX3UwX2kxKSB7CisgIGNoZWNrX2dldF9ncm91cCgidTBfaTEiLCA5OTAwMSk7Cit9CisKK1RFU1QoZ2V0Z3JuYW0sIGFwcF9pZF91MV9yb290KSB7CisgIGNoZWNrX2dldF9ncm91cCgidTFfcm9vdCIsIDEwMDAwMCk7Cit9CisKK1RFU1QoZ2V0Z3JuYW0sIGFwcF9pZF91MV9yYWRpbykgeworICBjaGVja19nZXRfZ3JvdXAoInUxX3JhZGlvIiwgMTAxMDAxKTsKK30KKworVEVTVChnZXRncm5hbSwgYXBwX2lkX3UxX2EwKSB7CisgIGNoZWNrX2dldF9ncm91cCgidTFfYTAiLCAxMTAwMDApOworfQorCitURVNUKGdldGdybmFtLCBhcHBfaWRfdTFfYTQwMDAwKSB7CisgIGNoZWNrX2dldF9ncm91cCgidTFfYTQwMDAwIiwgMTUwMDAwKTsKK30KKworVEVTVChnZXRncm5hbSwgYXBwX2lkX3UxX2kwKSB7CisgIGNoZWNrX2dldF9ncm91cCgidTFfaTAiLCAxOTkwMDApOwogfQpkaWZmIC0tZ2l0IGEvdGVzdHMvc3lzX21tYW5fdGVzdC5jcHAgYi90ZXN0cy9zeXNfbW1hbl90ZXN0LmNwcAppbmRleCA3NWNjZmEzLi5iMGU0MGZkIDEwMDY0NAotLS0gYS90ZXN0cy9zeXNfbW1hbl90ZXN0LmNwcAorKysgYi90ZXN0cy9zeXNfbW1hbl90ZXN0LmNwcApAQCAtMTcyLDMgKzE3Miw0NiBAQAogICBBU1NFUlRfU1RSRVEoTkVXUEFHRTJfTVNHLCBidWYpOwogICBBU1NFUlRfU1RSRVEoRU5EX01TRywgYnVmK3BhZ2VzaXplLXNpemVvZihFTkRfTVNHKSk7CiB9CisKK1RFU1Qoc3lzX21tYW4sIHBvc2l4X21hZHZpc2UpIHsKKyAgVGVtcG9yYXJ5RmlsZSB0ZW1wZmlsZTsKKyAgc2l6ZV90IHBhZ2VzaXplID0gc3lzY29uZihfU0NfUEFHRVNJWkUpOworICBjaGFyIGJ1ZltwYWdlc2l6ZV07CisKKyAgLy8gUHJlcGFyZSBlbnZpcm9ubWVudC4KKyAgQVNTRVJUX0VRKHN0YXRpY19jYXN0PHNzaXplX3Q+KHBhZ2VzaXplKSwgd3JpdGUodGVtcGZpbGUuZmQsIGJ1ZiwgcGFnZXNpemUpKTsKKyAgdm9pZCogbWFwID0gbW1hcChOVUxMLCBwYWdlc2l6ZSwgUFJPVF9SRUFEIHwgUFJPVF9XUklURSwgTUFQX1NIQVJFRCwgdGVtcGZpbGUuZmQsIDApOworICBBU1NFUlRfTkUoTUFQX0ZBSUxFRCwgbWFwKTsKKworICAvLyBWZXJpZnkgZGlmZmVyZW50IG9wdGlvbnMgb2YgcG9zaXhfbWFkdmlzZS4KKyAgQVNTRVJUX0VRKDAsIHBvc2l4X21hZHZpc2UobWFwLCBwYWdlc2l6ZSwgUE9TSVhfTUFEVl9OT1JNQUwpKTsKKyAgQVNTRVJUX0VRKDAsIHBvc2l4X21hZHZpc2UobWFwLCBwYWdlc2l6ZSwgUE9TSVhfTUFEVl9TRVFVRU5USUFMKSk7CisgIEFTU0VSVF9FUSgwLCBwb3NpeF9tYWR2aXNlKG1hcCwgcGFnZXNpemUsIFBPU0lYX01BRFZfUkFORE9NKSk7CisgIEFTU0VSVF9FUSgwLCBwb3NpeF9tYWR2aXNlKG1hcCwgcGFnZXNpemUsIFBPU0lYX01BRFZfV0lMTE5FRUQpKTsKKworICBBU1NFUlRfRVEoMCwgbXVubWFwKG1hcCwgcGFnZXNpemUpKTsKK30KKworLy8gVmVyaWZ5IHRoYXQgbWVtb3J5IGNhbiBzdGlsbCBhY2Nlc3MgYWZ0ZXIgcG9zaXhfbWFkdmlzZShQT1NJWF9NQURWX0RPTlRORUVEKS4KKy8vIFdlIHNob3VsZCB0ZXN0IG9uIE1BUF9BTk9OWU1PVVMgbWVtb3J5IHRvIHZlcmlmeSB3aGV0aGVyIHRoZSBtZW1vcnkgaXMgZGlzY2FyZGVkLAorLy8gYmVjYXVzZSB0aGUgY29udGVudCBvZiBub24gTUFQX0FOT05ZTU9VUyBtZW1vcnkgY2FuIGJlIHJlcmVhZCBmcm9tIGZpbGUuCitURVNUKHN5c19tbWFuLCBwb3NpeF9tYWR2aXNlX1BPU0lYX01BRFZfRE9OVE5FRUQpIHsKKyAgc2l6ZV90IHBhZ2VzaXplID0gc3lzY29uZihfU0NfUEFHRVNJWkUpOworCisgIHZvaWQqIG1hcCA9IG1tYXAoTlVMTCwgcGFnZXNpemUsIFBST1RfUkVBRCB8IFBST1RfV1JJVEUsIE1BUF9QUklWQVRFIHwgTUFQX0FOT05ZTU9VUywgLTEsIDApOworICBBU1NFUlRfTkUoTUFQX0ZBSUxFRCwgbWFwKTsKKworICBpbnQqIGludF9wdHIgPSByZWludGVycHJldF9jYXN0PGludCo+KG1hcCk7CisgIGZvciAoaW50IGkgPSAwOyBpIDwgc3RhdGljX2Nhc3Q8aW50PihwYWdlc2l6ZSAvIHNpemVvZihpbnQpKTsgKytpKSB7CisgICAgKmludF9wdHIrKyA9IGk7CisgIH0KKworICBBU1NFUlRfRVEoMCwgcG9zaXhfbWFkdmlzZShtYXAsIHBhZ2VzaXplLCBQT1NJWF9NQURWX0RPTlRORUVEKSk7CisKKyAgaW50X3B0ciA9IHJlaW50ZXJwcmV0X2Nhc3Q8aW50Kj4obWFwKTsKKyAgZm9yIChpbnQgaSA9IDA7IGkgPCBzdGF0aWNfY2FzdDxpbnQ+KHBhZ2VzaXplIC8gc2l6ZW9mKGludCkpOyArK2kpIHsKKyAgICBBU1NFUlRfRVEoaSwgKmludF9wdHIrKyk7CisgIH0KKworICBBU1NFUlRfRVEoMCwgbXVubWFwKG1hcCwgcGFnZXNpemUpKTsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL3N5c19wZXJzb25hbGl0eV90ZXN0LmNwcCBiL3Rlc3RzL3N5c19wZXJzb25hbGl0eV90ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NWEwMjNkCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvc3lzX3BlcnNvbmFsaXR5X3Rlc3QuY3BwCkBAIC0wLDAgKzEsMzMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaW5jbHVkZSA8Z3Rlc3QvZ3Rlc3QuaD4KKworI2luY2x1ZGUgPHN5cy9wZXJzb25hbGl0eS5oPgorCitURVNUKHN5c19wZXJzb25hbGl0eSwgY3VycmVudF9wZXJzb25hKSB7CisgIGludCBwZXJzb25hID0gcGVyc29uYWxpdHkoMHhmZmZmZmZmZik7CisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorI2lmIGRlZmluZWQoX19MUDY0X18pCisgIEFTU0VSVF9FUShQRVJfTElOVVgsIHBlcnNvbmEpOworI2Vsc2UKKyAgQVNTRVJUX0VRKFBFUl9MSU5VWDMyLCBwZXJzb25hKTsKKyNlbmRpZgorI2Vsc2UKKyAgLy8gR0xJQkMgZG9lcyBub3Qgc2V0IHBlcnNvbmEgcHJpb3IgcHJvY2VzcyBzdGFydHVwIC0gaXQgaXMgYWx3YXlzIFBFUl9MSU5VWDsKKyAgQVNTRVJUX0VRKFBFUl9MSU5VWCwgcGVyc29uYSk7CisjZW5kaWYKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL3N5c19yZXNvdXJjZV90ZXN0LmNwcCBiL3Rlc3RzL3N5c19yZXNvdXJjZV90ZXN0LmNwcAppbmRleCBkNmQ5OWEwLi44Y2VmYzY1IDEwMDY0NAotLS0gYS90ZXN0cy9zeXNfcmVzb3VyY2VfdGVzdC5jcHAKKysrIGIvdGVzdHMvc3lzX3Jlc291cmNlX3Rlc3QuY3BwCkBAIC0xNCwyMiArMTQsMTEgQEAKICAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgogICovCiAKLSNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgotCiAjaW5jbHVkZSA8c3lzL3Jlc291cmNlLmg+CiAKLSNpZiBkZWZpbmVkKF9fR0xJQkNfXykKLS8qIFRoZSBob3N0IGdsaWJjIHdlJ3JlIGN1cnJlbnRseSBidWlsZGluZyB3aXRoIGRvZXNuJ3QgaGF2ZSBwcmxpbWl0NjQgeWV0LiAqLwotc3RhdGljIGludCBwcmxpbWl0NjQocGlkX3QsIGludCByZXNvdXJjZSwgY29uc3Qgc3RydWN0IHJsaW1pdDY0KiBuZXdfbGltaXQsIHN0cnVjdCBybGltaXQ2NCogb2xkX2xpbWl0KSB7Ci0gIGlmIChuZXdfbGltaXQgIT0gTlVMTCkgewotICAgIHJldHVybiBzZXRybGltaXQ2NChyZXNvdXJjZSwgbmV3X2xpbWl0KTsKLSAgfSBlbHNlIHsKLSAgICByZXR1cm4gZ2V0cmxpbWl0NjQocmVzb3VyY2UsIG9sZF9saW1pdCk7Ci0gIH0KLX0KLSNlbmRpZgorI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CiAKLVRFU1Qoc3lzX3Jlc291cmNlLCBzbW9rZSkgeworVEVTVChzeXNfcmVzb3VyY2UsIHJsaW1pdF9zdHJ1Y3Rfc2l6ZSkgewogI2lmIGRlZmluZWQoX19MUDY0X18pIHx8IGRlZmluZWQoX19HTElCQ19fKQogICBBU1NFUlRfRVEoc2l6ZW9mKHJsaW1pdCksIHNpemVvZihybGltaXQ2NCkpOwogICBBU1NFUlRfRVEoOFUsIHNpemVvZihybGltX3QpKTsKQEAgLTM3LDUxICsyNiw3NSBAQAogICBBU1NFUlRfTkUoc2l6ZW9mKHJsaW1pdCksIHNpemVvZihybGltaXQ2NCkpOwogICBBU1NFUlRfRVEoNFUsIHNpemVvZihybGltX3QpKTsKICNlbmRpZgorfQogCi0gIC8vIFJlYWQgd2l0aCBnZXRybGltaXQsIGdldHJsaW1pdDY0LCBhbmQgcHJsaW1pdDY0LgotICAvLyAocHJsaW1pdCBpcyBwcmxpbWl0NjQgb24gTFA2NCBhbmQgdW5pbXBsZW1lbnRlZCBvbiAzMi1iaXQuKQotICBybGltaXQgbDMyOwotICBybGltaXQ2NCBsNjQ7Ci0gIHJsaW1pdDY0IHByX2w2NDsKLSAgQVNTRVJUX0VRKDAsIGdldHJsaW1pdChSTElNSVRfQ09SRSwgJmwzMikpOwotICBBU1NFUlRfRVEoMCwgZ2V0cmxpbWl0NjQoUkxJTUlUX0NPUkUsICZsNjQpKTsKLSAgQVNTRVJUX0VRKDAsIHBybGltaXQ2NCgwLCBSTElNSVRfQ09SRSwgTlVMTCwgJnByX2w2NCkpOwotICBBU1NFUlRfRVEobDY0LnJsaW1fY3VyLCBsMzIucmxpbV9jdXIpOwotICBBU1NFUlRfRVEobDY0LnJsaW1fY3VyLCBwcl9sNjQucmxpbV9jdXIpOwotICBBU1NFUlRfRVEobDY0LnJsaW1fbWF4LCBwcl9sNjQucmxpbV9tYXgpOwotICBpZiAobDY0LnJsaW1fbWF4ID09IFJMSU02NF9JTkZJTklUWSkgewotICAgIEFTU0VSVF9FUShSTElNX0lORklOSVRZLCBsMzIucmxpbV9tYXgpOwotICB9IGVsc2UgewotICAgIEFTU0VSVF9FUShsNjQucmxpbV9tYXgsIGwzMi5ybGltX21heCk7CitjbGFzcyBTeXNSZXNvdXJjZVRlc3QgOiBwdWJsaWMgOjp0ZXN0aW5nOjpUZXN0IHsKKyBwcm90ZWN0ZWQ6CisgIHZpcnR1YWwgdm9pZCBTZXRVcCgpIHsKKyAgICBBU1NFUlRfRVEoMCwgZ2V0cmxpbWl0KFJMSU1JVF9DT1JFLCAmbDMyXykpOworICAgIEFTU0VSVF9FUSgwLCBnZXRybGltaXQ2NChSTElNSVRfQ09SRSwgJmw2NF8pKTsKKyAgICBBU1NFUlRfRVEoMCwgcHJsaW1pdDY0KDAsIFJMSU1JVF9DT1JFLCBOVUxMLCAmcHJfbDY0XykpOwogICB9CiAKLSAgLy8gV3JpdGUgd2l0aCBzZXRybGltaXQgYW5kIHJlYWQgYmFjayB3aXRoIGV2ZXJ5dGhpbmcuCi0gIGwzMi5ybGltX2N1ciA9IDEyMzsKLSAgQVNTRVJUX0VRKDAsIHNldHJsaW1pdChSTElNSVRfQ09SRSwgJmwzMikpOwotICBBU1NFUlRfRVEoMCwgZ2V0cmxpbWl0KFJMSU1JVF9DT1JFLCAmbDMyKSk7Ci0gIEFTU0VSVF9FUSgwLCBnZXRybGltaXQ2NChSTElNSVRfQ09SRSwgJmw2NCkpOwotICBBU1NFUlRfRVEoMCwgcHJsaW1pdDY0KDAsIFJMSU1JVF9DT1JFLCBOVUxMLCAmcHJfbDY0KSk7Ci0gIEFTU0VSVF9FUSgxMjNVLCBsMzIucmxpbV9jdXIpOwotICBBU1NFUlRfRVEobDY0LnJsaW1fY3VyLCBsMzIucmxpbV9jdXIpOwotICBBU1NFUlRfRVEobDY0LnJsaW1fY3VyLCBwcl9sNjQucmxpbV9jdXIpOworICB2b2lkIENoZWNrUmVzb3VyY2VMaW1pdHMoKTsKIAotICAvLyBXcml0ZSB3aXRoIHNldHJsaW1pdDY0IGFuZCByZWFkIGJhY2sgd2l0aCBldmVyeXRoaW5nLgotICBsNjQucmxpbV9jdXIgPSA0NTY7Ci0gIEFTU0VSVF9FUSgwLCBzZXRybGltaXQ2NChSTElNSVRfQ09SRSwgJmw2NCkpOwotICBBU1NFUlRfRVEoMCwgZ2V0cmxpbWl0KFJMSU1JVF9DT1JFLCAmbDMyKSk7Ci0gIEFTU0VSVF9FUSgwLCBnZXRybGltaXQ2NChSTElNSVRfQ09SRSwgJmw2NCkpOwotICBBU1NFUlRfRVEoMCwgcHJsaW1pdDY0KDAsIFJMSU1JVF9DT1JFLCBOVUxMLCAmcHJfbDY0KSk7Ci0gIEFTU0VSVF9FUSg0NTZVLCBsMzIucmxpbV9jdXIpOwotICBBU1NFUlRfRVEobDY0LnJsaW1fY3VyLCBsMzIucmxpbV9jdXIpOwotICBBU1NFUlRfRVEobDY0LnJsaW1fY3VyLCBwcl9sNjQucmxpbV9jdXIpOworIHByb3RlY3RlZDoKKyAgcmxpbWl0IGwzMl87CisgIHJsaW1pdDY0IGw2NF87CisgIHJsaW1pdDY0IHByX2w2NF87Cit9OwogCi0gIC8vIFdyaXRlIHdpdGggcHJsaW1pdDY0IGFuZCByZWFkIGJhY2sgd2l0aCBldmVyeXRoaW5nLgotICBsNjQucmxpbV9jdXIgPSA3ODk7Ci0gIEFTU0VSVF9FUSgwLCBwcmxpbWl0NjQoMCwgUkxJTUlUX0NPUkUsICZsNjQsIE5VTEwpKTsKLSAgQVNTRVJUX0VRKDAsIGdldHJsaW1pdChSTElNSVRfQ09SRSwgJmwzMikpOwotICBBU1NFUlRfRVEoMCwgZ2V0cmxpbWl0NjQoUkxJTUlUX0NPUkUsICZsNjQpKTsKLSAgQVNTRVJUX0VRKDAsIHBybGltaXQ2NCgwLCBSTElNSVRfQ09SRSwgTlVMTCwgJnByX2w2NCkpOwotICBBU1NFUlRfRVEoNzg5VSwgbDMyLnJsaW1fY3VyKTsKLSAgQVNTRVJUX0VRKGw2NC5ybGltX2N1ciwgbDMyLnJsaW1fY3VyKTsKLSAgQVNTRVJUX0VRKGw2NC5ybGltX2N1ciwgcHJfbDY0LnJsaW1fY3VyKTsKK3ZvaWQgU3lzUmVzb3VyY2VUZXN0OjpDaGVja1Jlc291cmNlTGltaXRzKCkgeworICBBU1NFUlRfRVEoMCwgZ2V0cmxpbWl0KFJMSU1JVF9DT1JFLCAmbDMyXykpOworICBBU1NFUlRfRVEoMCwgZ2V0cmxpbWl0NjQoUkxJTUlUX0NPUkUsICZsNjRfKSk7CisgIEFTU0VSVF9FUSgwLCBwcmxpbWl0NjQoMCwgUkxJTUlUX0NPUkUsIE5VTEwsICZwcl9sNjRfKSk7CisgIEFTU0VSVF9FUShsNjRfLnJsaW1fY3VyLCBwcl9sNjRfLnJsaW1fY3VyKTsKKyAgaWYgKGw2NF8ucmxpbV9jdXIgPT0gUkxJTTY0X0lORklOSVRZKSB7CisgICAgQVNTRVJUX0VRKFJMSU1fSU5GSU5JVFksIGwzMl8ucmxpbV9jdXIpOworICB9IGVsc2UgeworICAgIEFTU0VSVF9FUShsNjRfLnJsaW1fY3VyLCBsMzJfLnJsaW1fY3VyKTsKKyAgfQorCisgIEFTU0VSVF9FUShsNjRfLnJsaW1fbWF4LCBwcl9sNjRfLnJsaW1fbWF4KTsKKyAgaWYgKGw2NF8ucmxpbV9tYXggPT0gUkxJTTY0X0lORklOSVRZKSB7CisgICAgQVNTRVJUX0VRKFJMSU1fSU5GSU5JVFksIGwzMl8ucmxpbV9tYXgpOworICB9IGVsc2UgeworICAgIEFTU0VSVF9FUShsNjRfLnJsaW1fbWF4LCBsMzJfLnJsaW1fbWF4KTsKKyAgfQorfQorCisvLyBGb3JjZSBybGltX21heCB0byBiZSBiaWdnZXIgdGhhbiBhIGNvbnN0YW50IHNvIHdlIGNhbiBjb250aW51ZSBmb2xsb3dpbmcgdGVzdC4KKy8vIENoYW5nZSByZXNvdXJjZSBsaW1pdCBzZXR0aW5nIHdpdGggInVsaW1pdCAtSGMiIGluIHRoZSBzaGVsbCBpZiB0aGlzIHRlc3QgZmFpbHMuCitURVNUX0YoU3lzUmVzb3VyY2VUZXN0LCBSTElNSVRfQ09SRV9ybGltX21heF9ub3RfemVybykgeworICBBU1NFUlRfVFJVRShsMzJfLnJsaW1fbWF4ID09IFJMSU1fSU5GSU5JVFkgfHwgbDMyXy5ybGltX21heCA+PSA0NTZVKSA8PAorICAgICJSTElNSVRfQ09SRSBybGltX21heCA9ICIgPDwgbDMyXy5ybGltX21heDsKK30KKworVEVTVF9GKFN5c1Jlc291cmNlVGVzdCwgZ2V0X3Jlc291cmNlX2xpbWl0X2VxdWFsKSB7CisgIENoZWNrUmVzb3VyY2VMaW1pdHMoKTsKK30KKworVEVTVF9GKFN5c1Jlc291cmNlVGVzdCwgc2V0cmxpbWl0KSB7CisgIGwzMl8ucmxpbV9jdXIgPSAxMjNVOworICBBU1NFUlRfRVEoMCwgc2V0cmxpbWl0KFJMSU1JVF9DT1JFLCAmbDMyXykpOworICBDaGVja1Jlc291cmNlTGltaXRzKCk7CisgIEFTU0VSVF9FUSgxMjNVLCBsMzJfLnJsaW1fY3VyKTsKK30KKworVEVTVF9GKFN5c1Jlc291cmNlVGVzdCwgc2V0cmxpbWl0NjQpIHsKKyAgbDY0Xy5ybGltX2N1ciA9IDQ1NlU7CisgIEFTU0VSVF9FUSgwLCBzZXRybGltaXQ2NChSTElNSVRfQ09SRSwgJmw2NF8pKTsKKyAgQ2hlY2tSZXNvdXJjZUxpbWl0cygpOworICBBU1NFUlRfRVEoNDU2VSwgbDY0Xy5ybGltX2N1cik7Cit9CisKK1RFU1RfRihTeXNSZXNvdXJjZVRlc3QsIHBybGltaXQ2NCkgeworICBwcl9sNjRfLnJsaW1fY3VyID0gcHJfbDY0Xy5ybGltX21heDsKKyAgQVNTRVJUX0VRKDAsIHBybGltaXQ2NCgwLCBSTElNSVRfQ09SRSwgJnByX2w2NF8sIE5VTEwpKTsKKyAgQ2hlY2tSZXNvdXJjZUxpbWl0cygpOworICBBU1NFUlRfRVEocHJfbDY0Xy5ybGltX21heCwgcHJfbDY0Xy5ybGltX2N1cik7Cit9CisKK1RFU1RfRihTeXNSZXNvdXJjZVRlc3QsIHBybGltaXQpIHsKKyAgLy8gcHJsaW1pdCBpcyBwcmxpbWl0NjQgb24gTFA2NCBhbmQgdW5pbXBsZW1lbnRlZCBvbiAzMi1iaXQuIFNvIHdlIG9ubHkgdGVzdCBwcmxpbWl0NjQuCiB9CmRpZmYgLS1naXQgYS90ZXN0cy9zeXNfc29ja2V0X3Rlc3QuY3BwIGIvdGVzdHMvc3lzX3NvY2tldF90ZXN0LmNwcAppbmRleCAwYmRlMDI0Li44ZjVhZmFjIDEwMDY0NAotLS0gYS90ZXN0cy9zeXNfc29ja2V0X3Rlc3QuY3BwCisrKyBiL3Rlc3RzL3N5c19zb2NrZXRfdGVzdC5jcHAKQEAgLTIyLDI4ICsyMiwxNiBAQAogI2luY2x1ZGUgPHN5cy91bi5oPgogI2luY2x1ZGUgPGZjbnRsLmg+CiAKLSNpZiBkZWZpbmVkKF9fQklPTklDX18pCi0gICNkZWZpbmUgQUNDRVBUNF9TVVBQT1JURUQgMQotICAjZGVmaW5lIFJFQ1ZNTVNHX1NVUFBPUlRFRCAxCi0gICNkZWZpbmUgU0VORE1NU0dfU1VQUE9SVEVEIDEKLSNlbGlmIGRlZmluZWQoX19HTElCQ19QUkVSRVEpCi0gICNpZiBfX0dMSUJDX1BSRVJFUSgyLCA5KQotICAgICNkZWZpbmUgQUNDRVBUNF9TVVBQT1JURUQgMQotICAjZW5kaWYKLSAgI2lmIF9fR0xJQkNfUFJFUkVRKDIsIDEyKQotICAgICNkZWZpbmUgUkVDVk1NU0dfU1VQUE9SVEVEIDEKLSAgI2VuZGlmCi0gICNpZiBfX0dMSUJDX1BSRVJFUSgyLCAxNCkKLSAgICAjZGVmaW5lIFNFTkRNTVNHX1NVUFBPUlRFRCAxCi0gICNlbmRpZgotI2VuZGlmCi0KLSNpZiBkZWZpbmVkKEFDQ0VQVDRfU1VQUE9SVEVEKSB8fCBkZWZpbmVkKFJFQ1ZNTVNHX1NVUFBPUlRFRCkgfHwgZGVmaW5lZChTRU5ETU1TR19TVVBQT1JURUQpCi0KLSNkZWZpbmUgU09DS19QQVRIICJ0ZXN0Igorc3RydWN0IENvbm5lY3REYXRhIHsKKyAgYm9vbCAoKmNhbGxiYWNrX2ZuKShpbnQpOworICBjb25zdCBjaGFyKiBzb2NrX3BhdGg7CisgIENvbm5lY3REYXRhKGJvb2wgKCpjYWxsYmFja19mdW5jKShpbnQpLCBjb25zdCBjaGFyKiBzb2NrZXRfcGF0aCkKKyAgIDogY2FsbGJhY2tfZm4oY2FsbGJhY2tfZnVuYyksIHNvY2tfcGF0aChzb2NrZXRfcGF0aCkge30KK307CiAKIHN0YXRpYyB2b2lkKiBDb25uZWN0Rm4odm9pZCogZGF0YSkgewotICBib29sICgqY2FsbGJhY2tfZm4pKGludCkgPSByZWludGVycHJldF9jYXN0PGJvb2wgKCopKGludCk+KGRhdGEpOworICBDb25uZWN0RGF0YSogcGRhdGEgPSByZWludGVycHJldF9jYXN0PENvbm5lY3REYXRhKj4oZGF0YSk7CisgIGJvb2wgKCpjYWxsYmFja19mbikoaW50KSA9IHBkYXRhLT5jYWxsYmFja19mbjsKICAgdm9pZCogcmV0dXJuX3ZhbHVlID0gTlVMTDsKIAogICBpbnQgZmQgPSBzb2NrZXQoUEZfVU5JWCwgU09DS19TRVFQQUNLRVQgfCBTT0NLX0NMT0VYRUMgfCBTT0NLX05PTkJMT0NLLCAwKTsKQEAgLTU2LDcgKzQ0LDcgQEAKICAgbWVtc2V0KCZhZGRyLCAwLCBzaXplb2YoYWRkcikpOwogICBhZGRyLnN1bl9mYW1pbHkgPSBBRl9VTklYOwogICBhZGRyLnN1bl9wYXRoWzBdID0gJ1wwJzsKLSAgc3RyY3B5KGFkZHIuc3VuX3BhdGggKyAxLCBTT0NLX1BBVEgpOworICBzdHJjcHkoYWRkci5zdW5fcGF0aCArIDEsIHBkYXRhLT5zb2NrX3BhdGgpOwogCiAgIGlmIChjb25uZWN0KGZkLCByZWludGVycHJldF9jYXN0PHN0cnVjdCBzb2NrYWRkcio+KCZhZGRyKSwgc2l6ZW9mKGFkZHIpKSA8IDApIHsKICAgICBHVEVTVF9MT0dfKEVSUk9SKSA8PCAiY29ubmVjdCBjYWxsIGZhaWxlZDogIiA8PCBzdHJlcnJvcihlcnJubyk7CkBAIC03Miw3ICs2MCw3IEBACiB9CiAKIHN0YXRpYyB2b2lkIFJ1blRlc3Qodm9pZCAoKnRlc3RfZm4pKHN0cnVjdCBzb2NrYWRkcl91biosIGludCksCi0gICAgICAgICAgICAgICAgICAgIGJvb2wgKCpjYWxsYmFja19mbikoaW50IGZkKSkgeworICAgICAgICAgICAgICAgICAgICBib29sICgqY2FsbGJhY2tfZm4pKGludCBmZCksIGNvbnN0IGNoYXIqIHNvY2tfcGF0aCkgewogICBpbnQgZmQgPSBzb2NrZXQoUEZfVU5JWCwgU09DS19TRVFQQUNLRVQsIDApOwogICBBU1NFUlRfTkUoZmQsIC0xKSA8PCBzdHJlcnJvcihlcnJubyk7CiAKQEAgLTgwLDE0ICs2OCwxNiBAQAogICBtZW1zZXQoJmFkZHIsIDAsIHNpemVvZihhZGRyKSk7CiAgIGFkZHIuc3VuX2ZhbWlseSA9IEFGX1VOSVg7CiAgIGFkZHIuc3VuX3BhdGhbMF0gPSAnXDAnOwotICBzdHJjcHkoYWRkci5zdW5fcGF0aCArIDEsIFNPQ0tfUEFUSCk7CisgIHN0cmNweShhZGRyLnN1bl9wYXRoICsgMSwgc29ja19wYXRoKTsKIAogICBBU1NFUlRfTkUoLTEsIGJpbmQoZmQsIHJlaW50ZXJwcmV0X2Nhc3Q8c3RydWN0IHNvY2thZGRyKj4oJmFkZHIpLCBzaXplb2YoYWRkcikpKSA8PCBzdHJlcnJvcihlcnJubyk7CiAKICAgQVNTRVJUX05FKC0xLCBsaXN0ZW4oZmQsIDEpKSA8PCBzdHJlcnJvcihlcnJubyk7CiAKKyAgQ29ubmVjdERhdGEgY29ubmVjdF9kYXRhKGNhbGxiYWNrX2ZuLCBzb2NrX3BhdGgpOworCiAgIHB0aHJlYWRfdCB0aHJlYWQ7Ci0gIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2NyZWF0ZSgmdGhyZWFkLCBOVUxMLCBDb25uZWN0Rm4sIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGNhbGxiYWNrX2ZuKSkpOworICBBU1NFUlRfRVEoMCwgcHRocmVhZF9jcmVhdGUoJnRocmVhZCwgTlVMTCwgQ29ubmVjdEZuLCAmY29ubmVjdF9kYXRhKSk7CiAKICAgZmRfc2V0IHJlYWRfc2V0OwogICBGRF9aRVJPKCZyZWFkX3NldCk7CkBAIC0xMDUsMTggKzk1LDEyIEBACiAKICAgY2xvc2UoZmQpOwogfQotI2VuZGlmCiAKIFRFU1Qoc3lzX3NvY2tldCwgYWNjZXB0NF9lcnJvcikgewotI2lmIGRlZmluZWQoQUNDRVBUNF9TVVBQT1JURUQpCiAgIEFTU0VSVF9FUSgtMSwgYWNjZXB0NCgtMSwgTlVMTCwgTlVMTCwgMCkpOwogICBBU1NFUlRfRVEoRUJBREYsIGVycm5vKTsKLSNlbHNlCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwotI2VuZGlmCiB9CiAKLSNpZiBkZWZpbmVkKEFDQ0VQVDRfU1VQUE9SVEVEKQogc3RhdGljIHZvaWQgVGVzdEFjY2VwdDQoc3RydWN0IHNvY2thZGRyX3VuKiBhZGRyLCBpbnQgZmQpIHsKICAgc29ja2xlbl90IGxlbiA9IHNpemVvZigqYWRkcik7CiAgIGludCBmZF9hY2MgPSBhY2NlcHQ0KGZkLCByZWludGVycHJldF9jYXN0PHN0cnVjdCBzb2NrYWRkcio+KGFkZHIpLCAmbGVuLCBTT0NLX0NMT0VYRUMpOwpAQCAtMTI3LDE3ICsxMTEsMTEgQEAKIAogICBjbG9zZShmZF9hY2MpOwogfQotI2VuZGlmCiAKIFRFU1Qoc3lzX3NvY2tldCwgYWNjZXB0NF9zbW9rZSkgewotI2lmIGRlZmluZWQoQUNDRVBUNF9TVVBQT1JURUQpCi0gIFJ1blRlc3QoVGVzdEFjY2VwdDQsIE5VTEwpOwotI2Vsc2UKLSAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7Ci0jZW5kaWYKKyAgUnVuVGVzdChUZXN0QWNjZXB0NCwgTlVMTCwgInRlc3RfYWNjZXB0Iik7CiB9CiAKLSNpZiBkZWZpbmVkKFJFQ1ZNTVNHX1NVUFBPUlRFRCkKIGNvbnN0IGNoYXIqIGdfUmVjdk1zZ3NbXSA9IHsKICAgIlJFQ1ZNTVNHX09ORSIsCiAgICJSRUNWTU1TR19UV08iLApAQCAtMTg4LDI2ICsxNjYsMTYgQEAKIAogICBjbG9zZShmZF9hY2MpOwogfQotI2VuZGlmCiAKIFRFU1Qoc3lzX3NvY2tldCwgcmVjdm1tc2dfc21va2UpIHsKLSNpZiBkZWZpbmVkKFJFQ1ZNTVNHX1NVUFBPUlRFRCkKLSAgUnVuVGVzdChUZXN0UmVjdk1Nc2csIFNlbmRNdWx0aXBsZSk7Ci0jZWxzZQotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKLSNlbmRpZgorICBSdW5UZXN0KFRlc3RSZWN2TU1zZywgU2VuZE11bHRpcGxlLCAidGVzdF9yZXZtbXNnIik7CiB9CiAKIFRFU1Qoc3lzX3NvY2tldCwgcmVjdm1tc2dfZXJyb3IpIHsKLSNpZiBkZWZpbmVkKFJFQ1ZNTVNHX1NVUFBPUlRFRCkKICAgQVNTRVJUX0VRKC0xLCByZWN2bW1zZygtMSwgTlVMTCwgMCwgMCwgTlVMTCkpOwogICBBU1NFUlRfRVEoRUJBREYsIGVycm5vKTsKLSNlbHNlCi0gIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOwotI2VuZGlmCiB9CiAKLSNpZiBkZWZpbmVkKFNFTkRNTVNHX1NVUFBPUlRFRCkKIGNvbnN0IGNoYXIqIGdfU2VuZE1zZ3NbXSA9IHsKICAgIk1TR19PTkUiLAogICAiTVNHX1RXTyIsCkBAIC0yNTYsMjEgKzIyNCwxMiBAQAogCiAgIGNsb3NlKGZkX2FjYyk7CiB9Ci0jZW5kaWYKIAogVEVTVChzeXNfc29ja2V0LCBzZW5kbW1zZ19zbW9rZSkgewotI2lmIGRlZmluZWQoU0VORE1NU0dfU1VQUE9SVEVEKQotICBSdW5UZXN0KFRlc3RTZW5kTU1zZywgU2VuZE1Nc2cpOwotI2Vsc2UKLSAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IGRvZXMgbm90aGluZy5cbiI7Ci0jZW5kaWYKKyAgUnVuVGVzdChUZXN0U2VuZE1Nc2csIFNlbmRNTXNnLCAidGVzdF9zZW5kbW1zZyIpOwogfQogCiBURVNUKHN5c19zb2NrZXQsIHNlbmRtbXNnX2Vycm9yKSB7Ci0jaWYgZGVmaW5lZChTRU5ETU1TR19TVVBQT1JURUQpCiAgIEFTU0VSVF9FUSgtMSwgc2VuZG1tc2coLTEsIE5VTEwsIDAsIDApKTsKICAgQVNTRVJUX0VRKEVCQURGLCBlcnJubyk7Ci0jZWxzZQotICBHVEVTVF9MT0dfKElORk8pIDw8ICJUaGlzIHRlc3QgZG9lcyBub3RoaW5nLlxuIjsKLSNlbmRpZgogfQpkaWZmIC0tZ2l0IGEvdGVzdHMvc3lzX3N0YXRfdGVzdC5jcHAgYi90ZXN0cy9zeXNfc3RhdF90ZXN0LmNwcAppbmRleCA2NDA0OWFiLi43YzM4N2JhIDEwMDY0NAotLS0gYS90ZXN0cy9zeXNfc3RhdF90ZXN0LmNwcAorKysgYi90ZXN0cy9zeXNfc3RhdF90ZXN0LmNwcApAQCAtNTUsNiArNTUsMTggQEAKICAgQVNTRVJUX0VRKEVCQURGLCBlcnJubyk7CiB9CiAKK1RFU1Qoc3lzX3N0YXQsIG1rZmlmb19mYWlsdXJlKSB7CisgIGVycm5vID0gMDsKKyAgQVNTRVJUX0VRKC0xLCBta2ZpZm8oIi8iLCAwNjY2KSk7CisgIEFTU0VSVF9FUShFRVhJU1QsIGVycm5vKTsKK30KKworVEVTVChzeXNfc3RhdCwgbWtmaWZvYXRfZmFpbHVyZSkgeworICBlcnJubyA9IDA7CisgIEFTU0VSVF9FUSgtMSwgbWtmaWZvYXQoLTIsICJ4IiwgMDY2NikpOworICBBU1NFUlRfRVEoRUJBREYsIGVycm5vKTsKK30KKwogVEVTVChzeXNfc3RhdCwgbWtmaWZvKSB7CiAgIGlmIChnZXR1aWQoKSA9PSAwKSB7CiAgICAgLy8gUmFjeSBidXQgcHJvYmFibHkgc3VmZmljaWVudCB3YXkgdG8gZ2V0IGEgc3VpdGFibGUgZmlsZW5hbWUuCkBAIC03MCw2ICs4Miw3IEBACiAgICAgQVNTRVJUX1RSVUUoU19JU0ZJRk8oc2Iuc3RfbW9kZSkpOwogICAgIHVubGluayhwYXRoLmNfc3RyKCkpOwogICB9IGVsc2UgeworICAgIC8vIFNFTGludXggcG9saWN5IGZvcmJpZHMgdXMgZnJvbSBjcmVhdGluZyBGSUZPcy4gaHR0cDovL2IvMTc2NDY3MDIuCiAgICAgR1RFU1RfTE9HXyhJTkZPKSA8PCAiVGhpcyB0ZXN0IG9ubHkgcGVyZm9ybXMgYSB0ZXN0IHdoZW4gcnVuIGFzIHJvb3QuIjsKICAgfQogfQpAQCAtODIsMyArOTUsMTkzIEBACiAgIEFTU0VSVF9FUSgwLCBmc3RhdDY0KGZkLCAmc2IpKTsKICAgY2xvc2UoZmQpOwogfQorCitURVNUKHN5c19zdGF0LCBmY2htb2RhdF9FRkFVTFRfZmlsZSkgeworICBBU1NFUlRfRVEoLTEsIGZjaG1vZGF0KEFUX0ZEQ1dELCAoY2hhciAqKSAweDEsIDA3NTEsIDApKTsKKyAgQVNTRVJUX0VRKEVGQVVMVCwgZXJybm8pOworfQorCitURVNUKHN5c19zdGF0LCBmY2htb2RhdF9BVF9TWU1MSU5LX05PRk9MTE9XX0VGQVVMVF9maWxlKSB7CisgIEFTU0VSVF9FUSgtMSwgZmNobW9kYXQoQVRfRkRDV0QsIChjaGFyICopIDB4MSwgMDc1MSwgQVRfU1lNTElOS19OT0ZPTExPVykpOworI2lmIGRlZmluZWQoX19CSU9OSUNfXykKKyAgQVNTRVJUX0VRKEVGQVVMVCwgZXJybm8pOworI2Vsc2UKKyAgLy8gZ2xpYmMgMi4xOSBkb2VzIG5vdCBpbXBsZW1lbnQgQVRfU1lNTElOS19OT0ZPTExPVyBhbmQgYWx3YXlzCisgIC8vIHJldHVybnMgRU5PVFNVUAorICBBU1NFUlRfRVEoRU5PVFNVUCwgZXJybm8pOworI2VuZGlmCit9CisKK1RFU1Qoc3lzX3N0YXQsIGZjaG1vZGF0X2JhZF9mbGFncykgeworICBBU1NFUlRfRVEoLTEsIGZjaG1vZGF0KEFUX0ZEQ1dELCAiL2JsYWgiLCAwNzUxLCB+QVRfU1lNTElOS19OT0ZPTExPVykpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7Cit9CisKK1RFU1Qoc3lzX3N0YXQsIGZjaG1vZGF0X2JhZF9mbGFnc19BTEwpIHsKKyAgQVNTRVJUX0VRKC0xLCBmY2htb2RhdChBVF9GRENXRCwgIi9ibGFoIiwgMDc1MSwgfjApKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworfQorCitURVNUKHN5c19zdGF0LCBmY2htb2RhdF9ub25leGlzdGFudF9maWxlKSB7CisgIEFTU0VSVF9FUSgtMSwgZmNobW9kYXQoQVRfRkRDV0QsICIvYmxhaCIsIDA3NTEsIDApKTsKKyAgQVNTRVJUX0VRKEVOT0VOVCwgZXJybm8pOworfQorCitURVNUKHN5c19zdGF0LCBmY2htb2RhdF9BVF9TWU1MSU5LX05PRk9MTE9XX25vbmV4aXN0YW50X2ZpbGUpIHsKKyAgQVNTRVJUX0VRKC0xLCBmY2htb2RhdChBVF9GRENXRCwgIi9ibGFoIiwgMDc1MSwgQVRfU1lNTElOS19OT0ZPTExPVykpOworI2lmIGRlZmluZWQoX19CSU9OSUNfXykKKyAgQVNTRVJUX0VRKEVOT0VOVCwgZXJybm8pOworI2Vsc2UKKyAgLy8gZ2xpYmMgMi4xOSBkb2VzIG5vdCBpbXBsZW1lbnQgQVRfU1lNTElOS19OT0ZPTExPVyBhbmQgYWx3YXlzCisgIC8vIHJldHVybnMgRU5PVFNVUAorICBBU1NFUlRfRVEoRU5PVFNVUCwgZXJybm8pOworI2VuZGlmCit9CisKK3N0YXRpYyB2b2lkIEFzc2VydEZpbGVNb2RlRXF1YWxzKG1vZGVfdCBleHBlY3RlZF9tb2RlLCBjb25zdCBjaGFyKiBmaWxlbmFtZSkgeworICBzdHJ1Y3Qgc3RhdCBzYjsKKyAgQVNTRVJUX0VRKDAsIHN0YXQoZmlsZW5hbWUsICZzYikpOworICBtb2RlX3QgbWFzayA9IFNfSVJXWFUgfCBTX0lSV1hHIHwgU19JUldYTzsKKyAgQVNTRVJUX0VRKGV4cGVjdGVkX21vZGUgJiBtYXNrLCBzdGF0aWNfY2FzdDxtb2RlX3Q+KHNiLnN0X21vZGUpICYgbWFzayk7Cit9CisKK1RFU1Qoc3lzX3N0YXQsIGZjaG1vZGF0X2ZpbGUpIHsKKyAgVGVtcG9yYXJ5RmlsZSB0ZjsKKworICBBU1NFUlRfRVEoMCwgZmNobW9kYXQoQVRfRkRDV0QsIHRmLmZpbGVuYW1lLCAwNzUxLCAwKSk7CisgIEFzc2VydEZpbGVNb2RlRXF1YWxzKDA3NTEsIHRmLmZpbGVuYW1lKTsKK30KKworVEVTVChzeXNfc3RhdCwgZmNobW9kYXRfQVRfU1lNTElOS19OT0ZPTExPV19maWxlKSB7CisgIFRlbXBvcmFyeUZpbGUgdGY7CisgIGVycm5vID0gMDsKKyAgaW50IHJlc3VsdCA9IGZjaG1vZGF0KEFUX0ZEQ1dELCB0Zi5maWxlbmFtZSwgMDc1MSwgQVRfU1lNTElOS19OT0ZPTExPVyk7CisKKyNpZiBkZWZpbmVkKF9fQklPTklDX18pCisgIEFTU0VSVF9FUSgwLCByZXN1bHQpOworICBBU1NFUlRfRVEoMCwgZXJybm8pOworICBBc3NlcnRGaWxlTW9kZUVxdWFscygwNzUxLCB0Zi5maWxlbmFtZSk7CisjZWxzZQorICAvLyBnbGliYyAyLjE5IGRvZXMgbm90IGltcGxlbWVudCBBVF9TWU1MSU5LX05PRk9MTE9XIGFuZCBhbHdheXMKKyAgLy8gcmV0dXJucyBFTk9UU1VQCisgIEFTU0VSVF9FUSgtMSwgcmVzdWx0KTsKKyAgQVNTRVJUX0VRKEVOT1RTVVAsIGVycm5vKTsKKyNlbmRpZgorfQorCitURVNUKHN5c19zdGF0LCBmY2htb2RhdF9zeW1saW5rKSB7CisgIFRlbXBvcmFyeUZpbGUgdGY7CisgIGNoYXIgbGlua25hbWVbMjU1XTsKKworICBzbnByaW50ZihsaW5rbmFtZSwgc2l6ZW9mKGxpbmtuYW1lKSwgIiVzLmxpbmsiLCB0Zi5maWxlbmFtZSk7CisKKyAgQVNTRVJUX0VRKDAsIHN5bWxpbmsodGYuZmlsZW5hbWUsIGxpbmtuYW1lKSk7CisgIEFTU0VSVF9FUSgwLCBmY2htb2RhdChBVF9GRENXRCwgbGlua25hbWUsIDA3NTEsIDApKTsKKyAgQXNzZXJ0RmlsZU1vZGVFcXVhbHMoMDc1MSwgdGYuZmlsZW5hbWUpOworICB1bmxpbmsobGlua25hbWUpOworfQorCitURVNUKHN5c19zdGF0LCBmY2htb2RhdF9kYW5nbGluZ19zeW1saW5rKSB7CisgIFRlbXBvcmFyeUZpbGUgdGY7CisgIGNoYXIgbGlua25hbWVbMjU1XTsKKyAgY2hhciB0YXJnZXRbMjU1XTsKKworICBzbnByaW50ZihsaW5rbmFtZSwgc2l6ZW9mKGxpbmtuYW1lKSwgIiVzLmxpbmsiLCB0Zi5maWxlbmFtZSk7CisgIHNucHJpbnRmKHRhcmdldCwgc2l6ZW9mKHRhcmdldCksICIlcy5kb2Vzbm90ZXhpc3QiLCB0Zi5maWxlbmFtZSk7CisKKyAgQVNTRVJUX0VRKDAsIHN5bWxpbmsodGFyZ2V0LCBsaW5rbmFtZSkpOworICBBU1NFUlRfRVEoLTEsIGZjaG1vZGF0KEFUX0ZEQ1dELCBsaW5rbmFtZSwgMDc1MSwgMCkpOworICBBU1NFUlRfRVEoRU5PRU5ULCBlcnJubyk7CisgIHVubGluayhsaW5rbmFtZSk7Cit9CisKK3N0YXRpYyB2b2lkIEFzc2VydFN5bWxpbmtNb2RlRXF1YWxzKG1vZGVfdCBleHBlY3RlZF9tb2RlLCBjb25zdCBjaGFyKiBsaW5rbmFtZSkgeworICBzdHJ1Y3Qgc3RhdCBzYjsKKyAgQVNTRVJUX0VRKDAsIGZzdGF0YXQoQVRfRkRDV0QsIGxpbmtuYW1lLCAmc2IsIEFUX1NZTUxJTktfTk9GT0xMT1cpKTsKKyAgbW9kZV90IG1hc2sgPSBTX0lSV1hVIHwgU19JUldYRyB8IFNfSVJXWE87CisgIEFTU0VSVF9FUShleHBlY3RlZF9tb2RlICYgbWFzaywgc3RhdGljX2Nhc3Q8bW9kZV90PihzYi5zdF9tb2RlKSAmIG1hc2spOworfQorCitURVNUKHN5c19zdGF0LCBmY2htb2RhdF9BVF9TWU1MSU5LX05PRk9MTE9XX3dpdGhfc3ltbGluaykgeworICBUZW1wb3JhcnlGaWxlIHRmOworICBzdHJ1Y3Qgc3RhdCB0Zl9zYjsKKyAgQVNTRVJUX0VRKDAsIHN0YXQodGYuZmlsZW5hbWUsICZ0Zl9zYikpOworCisgIGNoYXIgbGlua25hbWVbMjU1XTsKKyAgc25wcmludGYobGlua25hbWUsIHNpemVvZihsaW5rbmFtZSksICIlcy5saW5rIiwgdGYuZmlsZW5hbWUpOworCisgIEFTU0VSVF9FUSgwLCBzeW1saW5rKHRmLmZpbGVuYW1lLCBsaW5rbmFtZSkpOworICBpbnQgcmVzdWx0ID0gZmNobW9kYXQoQVRfRkRDV0QsIGxpbmtuYW1lLCAwNzUxLCBBVF9TWU1MSU5LX05PRk9MTE9XKTsKKyAgLy8gSXQgZGVwZW5kcyBvbiB0aGUga2VybmVsIHdoZXRoZXIgY2htb2Qgb3BlcmF0aW9uIG9uIHN5bWxpbmsgaXMgYWxsb3dlZC4KKyAgaWYgKHJlc3VsdCA9PSAwKSB7CisgICAgQXNzZXJ0U3ltbGlua01vZGVFcXVhbHMoMDc1MSwgbGlua25hbWUpOworICB9IGVsc2UgeworICAgIEFTU0VSVF9FUSgtMSwgcmVzdWx0KTsKKyAgICBBU1NFUlRfRVEoRU5PVFNVUCwgZXJybm8pOworICB9CisKKyAgLy8gVGFyZ2V0IGZpbGUgbW9kZSBzaG91bGRuJ3QgYmUgbW9kaWZpZWQuCisgIEFzc2VydEZpbGVNb2RlRXF1YWxzKHRmX3NiLnN0X21vZGUsIHRmLmZpbGVuYW1lKTsKKyAgdW5saW5rKGxpbmtuYW1lKTsKK30KKworVEVTVChzeXNfc3RhdCwgZmNobW9kYXRfQVRfU1lNTElOS19OT0ZPTExPV193aXRoX2RhbmdsaW5nX3N5bWxpbmspIHsKKyAgVGVtcG9yYXJ5RmlsZSB0ZjsKKworICBjaGFyIGxpbmtuYW1lWzI1NV07CisgIGNoYXIgdGFyZ2V0WzI1NV07CisgIHNucHJpbnRmKGxpbmtuYW1lLCBzaXplb2YobGlua25hbWUpLCAiJXMubGluayIsIHRmLmZpbGVuYW1lKTsKKyAgc25wcmludGYodGFyZ2V0LCBzaXplb2YodGFyZ2V0KSwgIiVzLmRvZXNub3RleGlzdCIsIHRmLmZpbGVuYW1lKTsKKworICBBU1NFUlRfRVEoMCwgc3ltbGluayh0YXJnZXQsIGxpbmtuYW1lKSk7CisgIGludCByZXN1bHQgPSBmY2htb2RhdChBVF9GRENXRCwgbGlua25hbWUsIDA3NTEsIEFUX1NZTUxJTktfTk9GT0xMT1cpOworICAvLyBJdCBkZXBlbmRzIG9uIHRoZSBrZXJuZWwgd2hldGhlciBjaG1vZCBvcGVyYXRpb24gb24gc3ltbGluayBpcyBhbGxvd2VkLgorICBpZiAocmVzdWx0ID09IDApIHsKKyAgICBBc3NlcnRTeW1saW5rTW9kZUVxdWFscygwNzUxLCBsaW5rbmFtZSk7CisgIH0gZWxzZSB7CisgICAgQVNTRVJUX0VRKC0xLCByZXN1bHQpOworICAgIEFTU0VSVF9FUShFTk9UU1VQLCBlcnJubyk7CisgIH0KKworICB1bmxpbmsobGlua25hbWUpOworfQorCitURVNUKHN5c19zdGF0LCBmYWNjZXNzYXRfRUlOVkFMKSB7CisgIEFTU0VSVF9FUSgtMSwgZmFjY2Vzc2F0KEFUX0ZEQ1dELCAiL2Rldi9udWxsIiwgRl9PSywgfkFUX1NZTUxJTktfTk9GT0xMT1cpKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworI2lmIGRlZmluZWQoX19CSU9OSUNfXykKKyAgQVNTRVJUX0VRKC0xLCBmYWNjZXNzYXQoQVRfRkRDV0QsICIvZGV2L251bGwiLCB+KFJfT0sgfCBXX09LIHwgWF9PSyksIDApKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworI2Vsc2UKKyAgQVNTRVJUX0VRKDAsIGZhY2Nlc3NhdChBVF9GRENXRCwgIi9kZXYvbnVsbCIsIH4oUl9PSyB8IFdfT0sgfCBYX09LKSwgQVRfU1lNTElOS19OT0ZPTExPVykpOworICBBU1NFUlRfRVEoLTEsIGZhY2Nlc3NhdChBVF9GRENXRCwgIi9kZXYvbnVsbCIsIH4oUl9PSyB8IFdfT0sgfCBYX09LKSwgMCkpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisjZW5kaWYKK30KKworVEVTVChzeXNfc3RhdCwgZmFjY2Vzc2F0X0FUX1NZTUxJTktfTk9GT0xMT1dfRUlOVkFMKSB7CisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorICAvLyBBbmRyb2lkIGRvZXNuJ3Qgc3VwcG9ydCBBVF9TWU1MSU5LX05PRk9MTE9XCisgIEFTU0VSVF9FUSgtMSwgZmFjY2Vzc2F0KEFUX0ZEQ1dELCAiL2Rldi9udWxsIiwgRl9PSywgQVRfU1lNTElOS19OT0ZPTExPVykpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisjZWxzZQorICBBU1NFUlRfRVEoMCwgZmFjY2Vzc2F0KEFUX0ZEQ1dELCAiL2Rldi9udWxsIiwgRl9PSywgQVRfU1lNTElOS19OT0ZPTExPVykpOworI2VuZGlmCit9CisKK1RFU1Qoc3lzX3N0YXQsIGZhY2Nlc3NhdF9kZXZfbnVsbCkgeworICBBU1NFUlRfRVEoMCwgZmFjY2Vzc2F0KEFUX0ZEQ1dELCAiL2Rldi9udWxsIiwgRl9PSywgMCkpOworICBBU1NFUlRfRVEoMCwgZmFjY2Vzc2F0KEFUX0ZEQ1dELCAiL2Rldi9udWxsIiwgUl9PSywgMCkpOworICBBU1NFUlRfRVEoMCwgZmFjY2Vzc2F0KEFUX0ZEQ1dELCAiL2Rldi9udWxsIiwgV19PSywgMCkpOworICBBU1NFUlRfRVEoMCwgZmFjY2Vzc2F0KEFUX0ZEQ1dELCAiL2Rldi9udWxsIiwgUl9PS3xXX09LLCAwKSk7Cit9CisKK1RFU1Qoc3lzX3N0YXQsIGZhY2Nlc3NhdF9ub25leGlzdGFudCkgeworICBBU1NFUlRfRVEoLTEsIGZhY2Nlc3NhdChBVF9GRENXRCwgIi9ibGFoIiwgRl9PSywgQVRfU1lNTElOS19OT0ZPTExPVykpOworI2lmIGRlZmluZWQoX19CSU9OSUNfXykKKyAgLy8gQW5kcm9pZCBkb2Vzbid0IHN1cHBvcnQgQVRfU1lNTElOS19OT0ZPTExPVworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisjZWxzZQorICBBU1NFUlRfRVEoRU5PRU5ULCBlcnJubyk7CisjZW5kaWYKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL3N5c19zdGF0dmZzX3Rlc3QuY3BwIGIvdGVzdHMvc3lzX3N0YXR2ZnNfdGVzdC5jcHAKaW5kZXggNmIxOWUxMy4uYmZmOWUyMCAxMDA2NDQKLS0tIGEvdGVzdHMvc3lzX3N0YXR2ZnNfdGVzdC5jcHAKKysrIGIvdGVzdHMvc3lzX3N0YXR2ZnNfdGVzdC5jcHAKQEAgLTMwLDYgKzMwLDExIEBACiAgIEVYUEVDVF9FUSgwVSwgc2IuZl9mZnJlZSk7CiAgIEVYUEVDVF9FUSgwVSwgc2IuZl9mc2lkKTsKICAgRVhQRUNUX0VRKDI1NVUsIHNiLmZfbmFtZW1heCk7CisKKyAgLy8gVGhlIGtlcm5lbCBzZXRzIGEgcHJpdmF0ZSBiaXQgdG8gaW5kaWNhdGUgdGhhdCBmX2ZsYWdzIGlzIHZhbGlkLgorICAvLyBUaGlzIGZsYWcgaXMgbm90IHN1cHBvc2VkIHRvIGJlIGV4cG9zZWQgdG8gbGliYyBjbGllbnRzLgorICBzdGF0aWMgY29uc3QgdWludDMyX3QgU1RfVkFMSUQgPSAweDAwMjA7CisgIEVYUEVDVF9UUlVFKChzYi5mX2ZsYWcgJiBTVF9WQUxJRCkgPT0gMCkgPDwgc2IuZl9mbGFnOwogfQogCiBURVNUKHN5c19zdGF0dmZzLCBzdGF0dmZzKSB7CkBAIC01MSw2ICs1Niw3IEBACiAgIGNsb3NlKGZkKTsKICAgQ2hlY2soc2IpOwogfQorCiBURVNUKHN5c19zdGF0dmZzLCBmc3RhdHZmczY0KSB7CiAgIHN0cnVjdCBzdGF0dmZzNjQgc2I7CiAgIGludCBmZCA9IG9wZW4oIi9wcm9jIiwgT19SRE9OTFkpOwpkaWZmIC0tZ2l0IGEvdGVzdHMvc3lzX3N5c2luZm9fdGVzdC5jcHAgYi90ZXN0cy9zeXNfc3lzaW5mb190ZXN0LmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMDBlMTNmCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvc3lzX3N5c2luZm9fdGVzdC5jcHAKQEAgLTAsMCArMSwzMyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgorCisjaW5jbHVkZSA8c3lzL3N5c2luZm8uaD4KKworVEVTVChzeXNfc3lzaW5mbywgc21va2UpIHsKKyAgaW50IG5wcm9jZXNzb3IgPSBnZXRfbnByb2NzKCk7CisgIEFTU0VSVF9HVChucHJvY2Vzc29yLCAwKTsKKworICBpbnQgbnByb2Nlc3Nvcl9jb25mID0gZ2V0X25wcm9jc19jb25mKCk7CisgIEFTU0VSVF9HRShucHJvY2Vzc29yX2NvbmYsIG5wcm9jZXNzb3IpOworCisgIGxvbmcgYXZhaWxfcGh5c19wYWdlcyA9IGdldF9hdnBoeXNfcGFnZXMoKTsKKyAgQVNTRVJUX0dUKGF2YWlsX3BoeXNfcGFnZXMsIDApOworCisgIGxvbmcgcGh5c19wYWdlcyA9IGdldF9waHlzX3BhZ2VzKCk7CisgIEFTU0VSVF9HRShwaHlzX3BhZ2VzLCBhdmFpbF9waHlzX3BhZ2VzKTsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL3N5c192ZnNfdGVzdC5jcHAgYi90ZXN0cy9zeXNfdmZzX3Rlc3QuY3BwCmluZGV4IDRiMDU2NjAuLmE1MjE5NjcgMTAwNjQ0Ci0tLSBhL3Rlc3RzL3N5c192ZnNfdGVzdC5jcHAKKysrIGIvdGVzdHMvc3lzX3Zmc190ZXN0LmNwcApAQCAtMzEsNiArMzEsMTEgQEAKICAgRVhQRUNUX0VRKDAsIHNiLmZfZnNpZC5fX3ZhbFswXSk7CiAgIEVYUEVDVF9FUSgwLCBzYi5mX2ZzaWQuX192YWxbMV0pOwogICBFWFBFQ1RfRVEoMjU1LCBzdGF0aWNfY2FzdDxpbnQ+KHNiLmZfbmFtZWxlbikpOworCisgIC8vIFRoZSBrZXJuZWwgc2V0cyBhIHByaXZhdGUgYml0IHRvIGluZGljYXRlIHRoYXQgZl9mbGFncyBpcyB2YWxpZC4KKyAgLy8gVGhpcyBmbGFnIGlzIG5vdCBzdXBwb3NlZCB0byBiZSBleHBvc2VkIHRvIGxpYmMgY2xpZW50cy4KKyAgc3RhdGljIGNvbnN0IHVpbnQzMl90IFNUX1ZBTElEID0gMHgwMDIwOworICBFWFBFQ1RfVFJVRSgoc2IuZl9mbGFncyAmIFNUX1ZBTElEKSA9PSAwKSA8PCBzYi5mX2ZsYWdzOwogfQogCiBURVNUKHN5c192ZnMsIHN0YXRmcykgewpAQCAtNTIsNiArNTcsNyBAQAogICBjbG9zZShmZCk7CiAgIENoZWNrKHNiKTsKIH0KKwogVEVTVChzeXNfdmZzLCBmc3RhdGZzNjQpIHsKICAgc3RydWN0IHN0YXRmczY0IHNiOwogICBpbnQgZmQgPSBvcGVuKCIvcHJvYyIsIE9fUkRPTkxZKTsKZGlmZiAtLWdpdCBhL3Rlc3RzL3N5c3RlbV9wcm9wZXJ0aWVzX3Rlc3QuY3BwIGIvdGVzdHMvc3lzdGVtX3Byb3BlcnRpZXNfdGVzdC5jcHAKaW5kZXggYmZkNTg1NC4uYzdiZmVlNiAxMDA2NDQKLS0tIGEvdGVzdHMvc3lzdGVtX3Byb3BlcnRpZXNfdGVzdC5jcHAKKysrIGIvdGVzdHMvc3lzdGVtX3Byb3BlcnRpZXNfdGVzdC5jcHAKQEAgLTE1LDggKzE1LDEwIEBACiAgKi8KIAogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+Ci0jaW5jbHVkZSA8c3lzL3dhaXQuaD4KKyNpbmNsdWRlICJCaW9uaWNEZWF0aFRlc3QuaCIKKwogI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3lzL3dhaXQuaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4KICNpbmNsdWRlIDxzdHJpbmc+CiAKQEAgLTM5OCw5ICs0MDAsMTAgQEAKICAgICAgICAgIFdURVJNU0lHKGV4aXRfc3RhdHVzKSA9PSBTSUdBQlJUKTsKIH0KIAotVEVTVChwcm9wZXJ0aWVzX0RlYXRoVGVzdCwgcmVhZF9vbmx5KSB7CitjbGFzcyBwcm9wZXJ0aWVzX0RlYXRoVGVzdCA6IHB1YmxpYyBCaW9uaWNEZWF0aFRlc3Qge307CisKK1RFU1RfRihwcm9wZXJ0aWVzX0RlYXRoVGVzdCwgcmVhZF9vbmx5KSB7CiAjaWYgZGVmaW5lZChfX0JJT05JQ19fKQotICA6OnRlc3Rpbmc6OkZMQUdTX2d0ZXN0X2RlYXRoX3Rlc3Rfc3R5bGUgPSAidGhyZWFkc2FmZSI7CiAKICAgLy8gVGhpcyB0ZXN0IG9ubHkgbWFrZXMgc2Vuc2UgaWYgd2UncmUgdGFsa2luZyB0byB0aGUgcmVhbCBzeXN0ZW0gcHJvcGVydHkgc2VydmljZS4KICAgc3RydWN0IHN0YXQgc2I7CmRpZmYgLS1naXQgYS90ZXN0cy90aW1lX3Rlc3QuY3BwIGIvdGVzdHMvdGltZV90ZXN0LmNwcAppbmRleCA5ODgwZDJjLi5jMzdkZjM2IDEwMDY0NAotLS0gYS90ZXN0cy90aW1lX3Rlc3QuY3BwCisrKyBiL3Rlc3RzL3RpbWVfdGVzdC5jcHAKQEAgLTE3LDE2ICsxNywxOSBAQAogI2luY2x1ZGUgPHRpbWUuaD4KIAogI2luY2x1ZGUgPGVycm5vLmg+Ci0jaW5jbHVkZSA8ZmVhdHVyZXMuaD4KICNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgogI2luY2x1ZGUgPHB0aHJlYWQuaD4KICNpbmNsdWRlIDxzaWduYWwuaD4KICNpbmNsdWRlIDxzeXMvc3lzY2FsbC5oPgogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgogI2luY2x1ZGUgPHN5cy93YWl0Lmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8YXRvbWljPgogCiAjaW5jbHVkZSAiU2NvcGVkU2lnbmFsSGFuZGxlci5oIgogCisjaW5jbHVkZSAicHJpdmF0ZS9iaW9uaWNfY29uc3RhbnRzLmgiCisKIFRFU1QodGltZSwgZ210aW1lKSB7CiAgIHRpbWVfdCB0ID0gMDsKICAgdG0qIGJyb2tlbl9kb3duID0gZ210aW1lKCZ0KTsKQEAgLTcwLDYgKzczLDMwIEBACiAgIEFTU0VSVF9FUSgwLCBwdGhyZWFkX2pvaW4odCwgJnJlc3VsdCkpOwogfQogCitURVNUKHRpbWUsIG1rdGltZV9lbXB0eV9UWikgeworICAvLyB0emNvZGUgdXNlZCB0byBoYXZlIGEgYnVnIHdoZXJlIGl0IGRpZG4ndCByZWluaXRpYWxpemUgc29tZSBpbnRlcm5hbCBzdGF0ZS4KKworICAvLyBDaG9vc2UgYSB0aW1lIHdoZXJlIERTVCBpcyBzZXQuCisgIHN0cnVjdCB0bSB0OworICBtZW1zZXQoJnQsIDAsIHNpemVvZih0bSkpOworICB0LnRtX3llYXIgPSAxOTgwIC0gMTkwMDsKKyAgdC50bV9tb24gPSA2OworICB0LnRtX21kYXkgPSAyOworCisgIHNldGVudigiVFoiLCAiQW1lcmljYS9Mb3NfQW5nZWxlcyIsIDEpOworICB0enNldCgpOworICBBU1NFUlRfRVEoc3RhdGljX2Nhc3Q8dGltZV90PigzMzEzNzI4MDBVKSwgbWt0aW1lKCZ0KSk7CisKKyAgbWVtc2V0KCZ0LCAwLCBzaXplb2YodG0pKTsKKyAgdC50bV95ZWFyID0gMTk4MCAtIDE5MDA7CisgIHQudG1fbW9uID0gNjsKKyAgdC50bV9tZGF5ID0gMjsKKworICBzZXRlbnYoIlRaIiwgIiIsIDEpOyAvLyBJbXBsaWVzIFVUQy4KKyAgdHpzZXQoKTsKKyAgQVNTRVJUX0VRKHN0YXRpY19jYXN0PHRpbWVfdD4oMzMxMzQ0MDAwVSksIG1rdGltZSgmdCkpOworfQorCiBURVNUKHRpbWUsIG1rdGltZV8xMDMxMDkyOSkgewogICBzdHJ1Y3QgdG0gdDsKICAgbWVtc2V0KCZ0LCAwLCBzaXplb2YodG0pKTsKQEAgLTE3MSw3ICsxOTgsNyBAQAogICBBU1NFUlRfRVEoMCwgdGltZXJfZGVsZXRlKHRpbWVyX2lkKSk7CiB9CiAKLXN0YXRpYyBpbnQgdGltZXJfY3JlYXRlX1NJR0VWX1NJR05BTF9zaWduYWxfaGFuZGxlcl9pbnZvY2F0aW9uX2NvdW50ID0gMDsKK3N0YXRpYyBpbnQgdGltZXJfY3JlYXRlX1NJR0VWX1NJR05BTF9zaWduYWxfaGFuZGxlcl9pbnZvY2F0aW9uX2NvdW50Owogc3RhdGljIHZvaWQgdGltZXJfY3JlYXRlX1NJR0VWX1NJR05BTF9zaWduYWxfaGFuZGxlcihpbnQgc2lnbmFsX251bWJlcikgewogICArK3RpbWVyX2NyZWF0ZV9TSUdFVl9TSUdOQUxfc2lnbmFsX2hhbmRsZXJfaW52b2NhdGlvbl9jb3VudDsKICAgQVNTRVJUX0VRKFNJR1VTUjEsIHNpZ25hbF9udW1iZXIpOwpAQCAtMTg2LDYgKzIxMyw3IEBACiAgIHRpbWVyX3QgdGltZXJfaWQ7CiAgIEFTU0VSVF9FUSgwLCB0aW1lcl9jcmVhdGUoQ0xPQ0tfTU9OT1RPTklDLCAmc2UsICZ0aW1lcl9pZCkpOwogCisgIHRpbWVyX2NyZWF0ZV9TSUdFVl9TSUdOQUxfc2lnbmFsX2hhbmRsZXJfaW52b2NhdGlvbl9jb3VudCA9IDA7CiAgIFNjb3BlZFNpZ25hbEhhbmRsZXIgc3NoKFNJR1VTUjEsIHRpbWVyX2NyZWF0ZV9TSUdFVl9TSUdOQUxfc2lnbmFsX2hhbmRsZXIpOwogCiAgIEFTU0VSVF9FUSgwLCB0aW1lcl9jcmVhdGVfU0lHRVZfU0lHTkFMX3NpZ25hbF9oYW5kbGVyX2ludm9jYXRpb25fY291bnQpOwpAQCAtMjAyLDI1ICsyMzAsMjYgQEAKIH0KIAogc3RydWN0IENvdW50ZXIgewotICB2b2xhdGlsZSBpbnQgdmFsdWU7CisgcHJpdmF0ZToKKyAgc3RkOjphdG9taWM8aW50PiB2YWx1ZTsKICAgdGltZXJfdCB0aW1lcl9pZDsKICAgc2lnZXZlbnRfdCBzZTsKICAgYm9vbCB0aW1lcl92YWxpZDsKIAotICBDb3VudGVyKHZvaWQgKCpmbikoc2lndmFsX3QpKSA6IHZhbHVlKDApLCB0aW1lcl92YWxpZChmYWxzZSkgewotICAgIG1lbXNldCgmc2UsIDAsIHNpemVvZihzZSkpOwotICAgIHNlLnNpZ2V2X25vdGlmeSA9IFNJR0VWX1RIUkVBRDsKLSAgICBzZS5zaWdldl9ub3RpZnlfZnVuY3Rpb24gPSBmbjsKLSAgICBzZS5zaWdldl92YWx1ZS5zaXZhbF9wdHIgPSB0aGlzOwotICAgIENyZWF0ZSgpOwotICB9Ci0KICAgdm9pZCBDcmVhdGUoKSB7CiAgICAgQVNTRVJUX0ZBTFNFKHRpbWVyX3ZhbGlkKTsKICAgICBBU1NFUlRfRVEoMCwgdGltZXJfY3JlYXRlKENMT0NLX1JFQUxUSU1FLCAmc2UsICZ0aW1lcl9pZCkpOwogICAgIHRpbWVyX3ZhbGlkID0gdHJ1ZTsKICAgfQogCisgcHVibGljOgorICBDb3VudGVyKHZvaWQgKCpmbikoc2lndmFsX3QpKSA6IHZhbHVlKDApLCB0aW1lcl92YWxpZChmYWxzZSkgeworICAgIG1lbXNldCgmc2UsIDAsIHNpemVvZihzZSkpOworICAgIHNlLnNpZ2V2X25vdGlmeSA9IFNJR0VWX1RIUkVBRDsKKyAgICBzZS5zaWdldl9ub3RpZnlfZnVuY3Rpb24gPSBmbjsKKyAgICBzZS5zaWdldl92YWx1ZS5zaXZhbF9wdHIgPSB0aGlzOworICAgIENyZWF0ZSgpOworICB9CiAgIHZvaWQgRGVsZXRlVGltZXIoKSB7CiAgICAgQVNTRVJUX1RSVUUodGltZXJfdmFsaWQpOwogICAgIEFTU0VSVF9FUSgwLCB0aW1lcl9kZWxldGUodGltZXJfaWQpKTsKQEAgLTIzMywxMiArMjYyLDE2IEBACiAgICAgfQogICB9CiAKKyAgaW50IFZhbHVlKCkgY29uc3QgeworICAgIHJldHVybiB2YWx1ZTsKKyAgfQorCiAgIHZvaWQgU2V0VGltZSh0aW1lX3QgdmFsdWVfcywgdGltZV90IHZhbHVlX25zLCB0aW1lX3QgaW50ZXJ2YWxfcywgdGltZV90IGludGVydmFsX25zKSB7CiAgICAgOjpTZXRUaW1lKHRpbWVyX2lkLCB2YWx1ZV9zLCB2YWx1ZV9ucywgaW50ZXJ2YWxfcywgaW50ZXJ2YWxfbnMpOwogICB9CiAKICAgYm9vbCBWYWx1ZVVwZGF0ZWQoKSB7Ci0gICAgdm9sYXRpbGUgaW50IGN1cnJlbnRfdmFsdWUgPSB2YWx1ZTsKKyAgICBpbnQgY3VycmVudF92YWx1ZSA9IHZhbHVlOwogICAgIHRpbWVfdCBzdGFydCA9IHRpbWUoTlVMTCk7CiAgICAgd2hpbGUgKGN1cnJlbnRfdmFsdWUgPT0gdmFsdWUgJiYgKHRpbWUoTlVMTCkgLSBzdGFydCkgPCA1KSB7CiAgICAgfQpAQCAtMjYxLDMwICsyOTQsMjkgQEAKIAogVEVTVCh0aW1lLCB0aW1lcl9zZXR0aW1lXzApIHsKICAgQ291bnRlciBjb3VudGVyKENvdW50ZXI6OkNvdW50QW5kRGlzYXJtTm90aWZ5RnVuY3Rpb24pOwotICBBU1NFUlRfVFJVRShjb3VudGVyLnRpbWVyX3ZhbGlkKTsKLQotICBBU1NFUlRfRVEoMCwgY291bnRlci52YWx1ZSk7CisgIEFTU0VSVF9FUSgwLCBjb3VudGVyLlZhbHVlKCkpOwogCiAgIGNvdW50ZXIuU2V0VGltZSgwLCAxLCAxLCAwKTsKICAgdXNsZWVwKDUwMDAwMCk7CiAKICAgLy8gVGhlIGNvdW50IHNob3VsZCBqdXN0IGJlIDEgYmVjYXVzZSB3ZSBkaXNhcm1lZCB0aGUgdGltZXIgdGhlIGZpcnN0IHRpbWUgaXQgZmlyZWQuCi0gIEFTU0VSVF9FUSgxLCBjb3VudGVyLnZhbHVlKTsKKyAgQVNTRVJUX0VRKDEsIGNvdW50ZXIuVmFsdWUoKSk7CiB9CiAKIFRFU1QodGltZSwgdGltZXJfc2V0dGltZV9yZXBlYXRzKSB7CiAgIENvdW50ZXIgY291bnRlcihDb3VudGVyOjpDb3VudE5vdGlmeUZ1bmN0aW9uKTsKLSAgQVNTRVJUX1RSVUUoY291bnRlci50aW1lcl92YWxpZCk7Ci0KLSAgQVNTRVJUX0VRKDAsIGNvdW50ZXIudmFsdWUpOworICBBU1NFUlRfRVEoMCwgY291bnRlci5WYWx1ZSgpKTsKIAogICBjb3VudGVyLlNldFRpbWUoMCwgMSwgMCwgMTApOwogICBBU1NFUlRfVFJVRShjb3VudGVyLlZhbHVlVXBkYXRlZCgpKTsKICAgQVNTRVJUX1RSVUUoY291bnRlci5WYWx1ZVVwZGF0ZWQoKSk7CiAgIEFTU0VSVF9UUlVFKGNvdW50ZXIuVmFsdWVVcGRhdGVkKCkpOworICBjb3VudGVyLkRlbGV0ZVRpbWVyKCk7CisgIC8vIEFkZCBhIHNsZWVwIGFzIG90aGVyIHRocmVhZHMgbWF5IGJlIGNhbGxpbmcgdGhlIGNhbGxiYWNrIGZ1bmN0aW9uIHdoZW4gdGhlIHRpbWVyIGlzIGRlbGV0ZWQuCisgIHVzbGVlcCg1MDAwMDApOwogfQogCi1zdGF0aWMgaW50IHRpbWVyX2NyZWF0ZV9OVUxMX3NpZ25hbF9oYW5kbGVyX2ludm9jYXRpb25fY291bnQgPSAwOworc3RhdGljIGludCB0aW1lcl9jcmVhdGVfTlVMTF9zaWduYWxfaGFuZGxlcl9pbnZvY2F0aW9uX2NvdW50Owogc3RhdGljIHZvaWQgdGltZXJfY3JlYXRlX05VTExfc2lnbmFsX2hhbmRsZXIoaW50IHNpZ25hbF9udW1iZXIpIHsKICAgKyt0aW1lcl9jcmVhdGVfTlVMTF9zaWduYWxfaGFuZGxlcl9pbnZvY2F0aW9uX2NvdW50OwogICBBU1NFUlRfRVEoU0lHQUxSTSwgc2lnbmFsX251bWJlcik7CkBAIC0yOTUsNiArMzI3LDcgQEAKICAgdGltZXJfdCB0aW1lcl9pZDsKICAgQVNTRVJUX0VRKDAsIHRpbWVyX2NyZWF0ZShDTE9DS19NT05PVE9OSUMsIE5VTEwsICZ0aW1lcl9pZCkpOwogCisgIHRpbWVyX2NyZWF0ZV9OVUxMX3NpZ25hbF9oYW5kbGVyX2ludm9jYXRpb25fY291bnQgPSAwOwogICBTY29wZWRTaWduYWxIYW5kbGVyIHNzaChTSUdBTFJNLCB0aW1lcl9jcmVhdGVfTlVMTF9zaWduYWxfaGFuZGxlcik7CiAKICAgQVNTRVJUX0VRKDAsIHRpbWVyX2NyZWF0ZV9OVUxMX3NpZ25hbF9oYW5kbGVyX2ludm9jYXRpb25fY291bnQpOwpAQCAtMzQxLDIyICszNzQsNTkgQEAKIAogVEVTVCh0aW1lLCB0aW1lcl9jcmVhdGVfbXVsdGlwbGUpIHsKICAgQ291bnRlciBjb3VudGVyMShDb3VudGVyOjpDb3VudE5vdGlmeUZ1bmN0aW9uKTsKLSAgQVNTRVJUX1RSVUUoY291bnRlcjEudGltZXJfdmFsaWQpOwogICBDb3VudGVyIGNvdW50ZXIyKENvdW50ZXI6OkNvdW50Tm90aWZ5RnVuY3Rpb24pOwotICBBU1NFUlRfVFJVRShjb3VudGVyMi50aW1lcl92YWxpZCk7CiAgIENvdW50ZXIgY291bnRlcjMoQ291bnRlcjo6Q291bnROb3RpZnlGdW5jdGlvbik7Ci0gIEFTU0VSVF9UUlVFKGNvdW50ZXIzLnRpbWVyX3ZhbGlkKTsKIAotICBBU1NFUlRfRVEoMCwgY291bnRlcjEudmFsdWUpOwotICBBU1NFUlRfRVEoMCwgY291bnRlcjIudmFsdWUpOwotICBBU1NFUlRfRVEoMCwgY291bnRlcjMudmFsdWUpOworICBBU1NFUlRfRVEoMCwgY291bnRlcjEuVmFsdWUoKSk7CisgIEFTU0VSVF9FUSgwLCBjb3VudGVyMi5WYWx1ZSgpKTsKKyAgQVNTRVJUX0VRKDAsIGNvdW50ZXIzLlZhbHVlKCkpOwogCiAgIGNvdW50ZXIyLlNldFRpbWUoMCwgMSwgMCwgMCk7CiAgIHVzbGVlcCg1MDAwMDApOwogCi0gIEVYUEVDVF9FUSgwLCBjb3VudGVyMS52YWx1ZSk7Ci0gIEVYUEVDVF9FUSgxLCBjb3VudGVyMi52YWx1ZSk7Ci0gIEVYUEVDVF9FUSgwLCBjb3VudGVyMy52YWx1ZSk7CisgIEVYUEVDVF9FUSgwLCBjb3VudGVyMS5WYWx1ZSgpKTsKKyAgRVhQRUNUX0VRKDEsIGNvdW50ZXIyLlZhbHVlKCkpOworICBFWFBFQ1RfRVEoMCwgY291bnRlcjMuVmFsdWUoKSk7Cit9CisKKy8vIFRlc3QgdG8gdmVyaWZ5IHRoYXQgZGlzYXJtaW5nIGEgcmVwZWF0YWJsZSB0aW1lciBkaXNhYmxlcyB0aGUgY2FsbGJhY2tzLgorVEVTVCh0aW1lLCB0aW1lcl9kaXNhcm1fdGVybWluYXRlcykgeworICBDb3VudGVyIGNvdW50ZXIoQ291bnRlcjo6Q291bnROb3RpZnlGdW5jdGlvbik7CisgIEFTU0VSVF9FUSgwLCBjb3VudGVyLlZhbHVlKCkpOworCisgIGNvdW50ZXIuU2V0VGltZSgwLCAxLCAwLCAxKTsKKyAgQVNTRVJUX1RSVUUoY291bnRlci5WYWx1ZVVwZGF0ZWQoKSk7CisgIEFTU0VSVF9UUlVFKGNvdW50ZXIuVmFsdWVVcGRhdGVkKCkpOworICBBU1NFUlRfVFJVRShjb3VudGVyLlZhbHVlVXBkYXRlZCgpKTsKKworICBjb3VudGVyLlNldFRpbWUoMCwgMCwgMCwgMCk7CisgIC8vIEFkZCBhIHNsZWVwIGFzIHRoZSBrZXJuZWwgbWF5IGhhdmUgcGVuZGluZyBldmVudHMgd2hlbiB0aGUgdGltZXIgaXMgZGlzYXJtZWQuCisgIHVzbGVlcCg1MDAwMDApOworICBpbnQgdmFsdWUgPSBjb3VudGVyLlZhbHVlKCk7CisgIHVzbGVlcCg1MDAwMDApOworCisgIC8vIFZlcmlmeSB0aGUgY291bnRlciBoYXMgbm90IGJlZW4gaW5jcmVtZW50ZWQuCisgIEFTU0VSVF9FUSh2YWx1ZSwgY291bnRlci5WYWx1ZSgpKTsKK30KKworLy8gVGVzdCB0byB2ZXJpZnkgdGhhdCBkZWxldGluZyBhIHJlcGVhdGFibGUgdGltZXIgZGlzYWJsZXMgdGhlIGNhbGxiYWNrcy4KK1RFU1QodGltZSwgdGltZXJfZGVsZXRlX3Rlcm1pbmF0ZXMpIHsKKyAgQ291bnRlciBjb3VudGVyKENvdW50ZXI6OkNvdW50Tm90aWZ5RnVuY3Rpb24pOworICBBU1NFUlRfRVEoMCwgY291bnRlci5WYWx1ZSgpKTsKKworICBjb3VudGVyLlNldFRpbWUoMCwgMSwgMCwgMSk7CisgIEFTU0VSVF9UUlVFKGNvdW50ZXIuVmFsdWVVcGRhdGVkKCkpOworICBBU1NFUlRfVFJVRShjb3VudGVyLlZhbHVlVXBkYXRlZCgpKTsKKyAgQVNTRVJUX1RSVUUoY291bnRlci5WYWx1ZVVwZGF0ZWQoKSk7CisKKyAgY291bnRlci5EZWxldGVUaW1lcigpOworICAvLyBBZGQgYSBzbGVlcCBhcyBvdGhlciB0aHJlYWRzIG1heSBiZSBjYWxsaW5nIHRoZSBjYWxsYmFjayBmdW5jdGlvbiB3aGVuIHRoZSB0aW1lciBpcyBkZWxldGVkLgorICB1c2xlZXAoNTAwMDAwKTsKKyAgaW50IHZhbHVlID0gY291bnRlci5WYWx1ZSgpOworICB1c2xlZXAoNTAwMDAwKTsKKworICAvLyBWZXJpZnkgdGhlIGNvdW50ZXIgaGFzIG5vdCBiZWVuIGluY3JlbWVudGVkLgorICBBU1NFUlRfRVEodmFsdWUsIGNvdW50ZXIuVmFsdWUoKSk7CiB9CiAKIHN0cnVjdCBUaW1lckRlbGV0ZURhdGEgewpAQCAtNDE3LDcgKzQ4Nyw3IEBACiAgIHRzMi50dl9uc2VjIC09IHRzMS50dl9uc2VjOwogICBpZiAodHMyLnR2X25zZWMgPCAwKSB7CiAgICAgLS10czIudHZfc2VjOwotICAgIHRzMi50dl9uc2VjICs9IDEwMDAwMDAwMDA7CisgICAgdHMyLnR2X25zZWMgKz0gTlNfUEVSX1M7CiAgIH0KIAogICAvLyBTaG91bGQgYmUgbGVzcyB0aGFuIChhIHZlcnkgZ2VuZXJvdXMsIHRvIHRyeSB0byBhdm9pZCBmbGFraW5lc3MpIDEwMDAwMDBucy4KQEAgLTQyNSw0NCArNDk1LDUxIEBACiAgIEFTU0VSVF9MVCh0czIudHZfbnNlYywgMTAwMDAwMCk7CiB9CiAKLS8vIFRlc3QgdG8gdmVyaWZ5IHRoYXQgZGlzYXJtaW5nIGEgcmVwZWF0YWJsZSB0aW1lciBkaXNhYmxlcyB0aGUKLS8vIGNhbGxiYWNrcy4KLVRFU1QodGltZSwgdGltZXJfZGlzYXJtX3Rlcm1pbmF0ZXMpIHsKLSAgQ291bnRlciBjb3VudGVyKENvdW50ZXI6OkNvdW50Tm90aWZ5RnVuY3Rpb24pOwotICBBU1NFUlRfVFJVRShjb3VudGVyLnRpbWVyX3ZhbGlkKTsKLQotICBBU1NFUlRfRVEoMCwgY291bnRlci52YWx1ZSk7Ci0KLSAgY291bnRlci5TZXRUaW1lKDAsIDEsIDAsIDEpOwotICBBU1NFUlRfVFJVRShjb3VudGVyLlZhbHVlVXBkYXRlZCgpKTsKLSAgQVNTRVJUX1RSVUUoY291bnRlci5WYWx1ZVVwZGF0ZWQoKSk7Ci0gIEFTU0VSVF9UUlVFKGNvdW50ZXIuVmFsdWVVcGRhdGVkKCkpOwotCi0gIGNvdW50ZXIuU2V0VGltZSgwLCAwLCAxLCAwKTsKLSAgdm9sYXRpbGUgaW50IHZhbHVlID0gY291bnRlci52YWx1ZTsKLSAgdXNsZWVwKDUwMDAwMCk7Ci0KLSAgLy8gVmVyaWZ5IHRoZSBjb3VudGVyIGhhcyBub3QgYmVlbiBpbmNyZW1lbnRlZC4KLSAgQVNTRVJUX0VRKHZhbHVlLCBjb3VudGVyLnZhbHVlKTsKK1RFU1QodGltZSwgY2xvY2spIHsKKyAgLy8gY2xvY2soMykgaXMgaGFyZCB0byB0ZXN0LCBidXQgYSAxcyBzbGVlcCBzaG91bGQgY29zdCBsZXNzIHRoYW4gMW1zLgorICBjbG9ja190IHQwID0gY2xvY2soKTsKKyAgc2xlZXAoMSk7CisgIGNsb2NrX3QgdDEgPSBjbG9jaygpOworICBBU1NFUlRfTFQodDEgLSB0MCwgQ0xPQ0tTX1BFUl9TRUMgLyAxMDAwKTsKIH0KIAotLy8gVGVzdCB0byB2ZXJpZnkgdGhhdCBkZWxldGluZyBhIHJlcGVhdGFibGUgdGltZXIgZGlzYWJsZXMgdGhlCi0vLyBjYWxsYmFja3MuCi1URVNUKHRpbWUsIHRpbWVyX2RlbGV0ZV90ZXJtaW5hdGVzKSB7Ci0gIENvdW50ZXIgY291bnRlcihDb3VudGVyOjpDb3VudE5vdGlmeUZ1bmN0aW9uKTsKLSAgQVNTRVJUX1RSVUUoY291bnRlci50aW1lcl92YWxpZCk7CitwaWRfdCBHZXRJbnZhbGlkUGlkKCkgeworICBGSUxFKiBmcCA9IGZvcGVuKCIvcHJvYy9zeXMva2VybmVsL3BpZF9tYXgiLCAiciIpOworICBsb25nIHBpZF9tYXg7CisgIGZzY2FuZihmcCwgIiVsZCIsICZwaWRfbWF4KTsKKyAgcGlkX3QgaW52YWxpZF9waWQgPSBzdGF0aWNfY2FzdDxwaWRfdD4ocGlkX21heCArIDEpOworICBmY2xvc2UoZnApOworICByZXR1cm4gaW52YWxpZF9waWQ7Cit9CiAKLSAgQVNTRVJUX0VRKDAsIGNvdW50ZXIudmFsdWUpOworVEVTVCh0aW1lLCBjbG9ja19nZXRjcHVjbG9ja2lkKSB7CisgIC8vIEZvciBjdXJyZW50IHByb2Nlc3MuCisgIGNsb2NraWRfdCBjbG9ja2lkOworICBBU1NFUlRfRVEoMCwgY2xvY2tfZ2V0Y3B1Y2xvY2tpZChnZXRwaWQoKSwgJmNsb2NraWQpKTsKIAotICBjb3VudGVyLlNldFRpbWUoMCwgMSwgMCwgMSk7Ci0gIEFTU0VSVF9UUlVFKGNvdW50ZXIuVmFsdWVVcGRhdGVkKCkpOwotICBBU1NFUlRfVFJVRShjb3VudGVyLlZhbHVlVXBkYXRlZCgpKTsKLSAgQVNTRVJUX1RSVUUoY291bnRlci5WYWx1ZVVwZGF0ZWQoKSk7CisgIHRpbWVzcGVjIHRzOworICBBU1NFUlRfRVEoMCwgY2xvY2tfZ2V0dGltZShjbG9ja2lkLCAmdHMpKTsKIAotICBjb3VudGVyLkRlbGV0ZVRpbWVyKCk7Ci0gIHZvbGF0aWxlIGludCB2YWx1ZSA9IGNvdW50ZXIudmFsdWU7Ci0gIHVzbGVlcCg1MDAwMDApOworICAvLyBGb3IgcGFyZW50IHByb2Nlc3MuCisgIEFTU0VSVF9FUSgwLCBjbG9ja19nZXRjcHVjbG9ja2lkKGdldHBwaWQoKSwgJmNsb2NraWQpKTsKKyAgQVNTRVJUX0VRKDAsIGNsb2NrX2dldHRpbWUoY2xvY2tpZCwgJnRzKSk7CiAKLSAgLy8gVmVyaWZ5IHRoZSBjb3VudGVyIGhhcyBub3QgYmVlbiBpbmNyZW1lbnRlZC4KLSAgQVNTRVJUX0VRKHZhbHVlLCBjb3VudGVyLnZhbHVlKTsKKyAgLy8gRm9yIGludmFsaWQgcHJvY2Vzcy4KKyAgLy8gV2UgY2FuJ3QgdXNlIC0xIGZvciBpbnZhbGlkIHBpZCBoZXJlLCBiZWNhdXNlIGNsb2NrX2dldGNwdWNsb2NraWQoKSBjYW4ndCBkZXRlY3QgaXQuCisgIGVycm5vID0gMDsKKyAgQVNTRVJUX0VRKEVTUkNILCBjbG9ja19nZXRjcHVjbG9ja2lkKEdldEludmFsaWRQaWQoKSwgJmNsb2NraWQpKTsKKyAgQVNTRVJUX0VRKDAsIGVycm5vKTsKK30KKworVEVTVCh0aW1lLCBjbG9ja19zZXR0aW1lKSB7CisgIGVycm5vID0gMDsKKyAgdGltZXNwZWMgdHM7CisgIEFTU0VSVF9FUSgtMSwgY2xvY2tfc2V0dGltZSgtMSwgJnRzKSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKK30KKworVEVTVCh0aW1lLCBjbG9ja19uYW5vc2xlZXApIHsKKyAgdGltZXNwZWMgaW47CisgIHRpbWVzcGVjIG91dDsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgY2xvY2tfbmFub3NsZWVwKC0xLCAwLCAmaW4sICZvdXQpKTsKIH0KZGlmZiAtLWdpdCBhL3Rlc3RzL3VjaGFyX3Rlc3QuY3BwIGIvdGVzdHMvdWNoYXJfdGVzdC5jcHAKaW5kZXggZWNhM2M1ZS4uYzg4N2Y4YSAxMDA2NDQKLS0tIGEvdGVzdHMvdWNoYXJfdGVzdC5jcHAKKysrIGIvdGVzdHMvdWNoYXJfdGVzdC5jcHAKQEAgLTE5LDcgKzE5LDYgQEAKICNpZiBkZWZpbmVkKF9fQklPTklDX18pCiAjZGVmaW5lIEhBVkVfVUNIQVIgMQogI2VsaWYgZGVmaW5lZChfX0dMSUJDX18pCi0jaW5jbHVkZSA8ZmVhdHVyZXMuaD4KICNkZWZpbmUgSEFWRV9VQ0hBUiBfX0dMSUJDX1BSRVJFUSgyLCAxNikKICNlbmRpZgogCmRpZmYgLS1naXQgYS90ZXN0cy91bmlzdGRfdGVzdC5jcHAgYi90ZXN0cy91bmlzdGRfdGVzdC5jcHAKaW5kZXggODE5NWVhOC4uZjU0YTQ2MSAxMDA2NDQKLS0tIGEvdGVzdHMvdW5pc3RkX3Rlc3QuY3BwCisrKyBiL3Rlc3RzL3VuaXN0ZF90ZXN0LmNwcApAQCAtMTUsNiArMTUsNyBAQAogICovCiAKICNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgorI2luY2x1ZGUgIkJpb25pY0RlYXRoVGVzdC5oIgogI2luY2x1ZGUgIlNjb3BlZFNpZ25hbEhhbmRsZXIuaCIKICNpbmNsdWRlICJUZW1wb3JhcnlGaWxlLmgiCiAKQEAgLTIyLDE0ICsyMywxMiBAQAogI2luY2x1ZGUgPGZjbnRsLmg+CiAjaW5jbHVkZSA8bGltaXRzLmg+CiAjaW5jbHVkZSA8c3RkaW50Lmg+Ci0jaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CiAjaW5jbHVkZSA8c3lzL3N5c2NhbGwuaD4KICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvdXRzbmFtZS5oPgogI2luY2x1ZGUgPHN5cy93YWl0Lmg+Ci0KLVRFU1QodW5pc3RkLCBzeXNjb25mX1NDX01PTk9UT05JQ19DTE9DSykgewotICBBU1NFUlRfR1Qoc3lzY29uZihfU0NfTU9OT1RPTklDX0NMT0NLKSwgMCk7Ci19CisjaW5jbHVkZSA8dW5pc3RkLmg+CiAKIHN0YXRpYyB2b2lkKiBnZXRfYnJrKCkgewogICByZXR1cm4gc2JyaygwKTsKQEAgLTI0Nyw4ICsyNDYsNiBAQAogfQogCiBURVNUKHVuaXN0ZCwgdW5zZXRlbnZfRUlOVkFMKSB7Ci0gIEVYUEVDVF9FUSgtMSwgdW5zZXRlbnYoTlVMTCkpOwotICBFWFBFQ1RfRVEoRUlOVkFMLCBlcnJubyk7CiAgIEVYUEVDVF9FUSgtMSwgdW5zZXRlbnYoIiIpKTsKICAgRVhQRUNUX0VRKEVJTlZBTCwgZXJybm8pOwogICBFWFBFQ1RfRVEoLTEsIHVuc2V0ZW52KCJhPWIiKSk7CkBAIC00NjIsMyArNDU5LDM2NCBAQAogICBBU1NFUlRfRVEoMCwgcHRocmVhZF9qb2luKHQsICZyZXN1bHQpKTsKICAgQVNTRVJUX0VRKE5VTEwsIHJlc3VsdCk7CiB9CisKK2NsYXNzIHVuaXN0ZF9EZWF0aFRlc3QgOiBwdWJsaWMgQmlvbmljRGVhdGhUZXN0IHt9OworCitURVNUX0YodW5pc3RkX0RlYXRoVGVzdCwgYWJvcnQpIHsKKyAgQVNTRVJUX0VYSVQoYWJvcnQoKSwgdGVzdGluZzo6S2lsbGVkQnlTaWduYWwoU0lHQUJSVCksICIiKTsKK30KKworVEVTVCh1bmlzdGQsIHNldGhvc3RuYW1lKSB7CisgIC8vIFRoZSBwZXJtaXNzaW9ucyBjaGVjayBoYXBwZW5zIGJlZm9yZSB0aGUgYXJndW1lbnQgY2hlY2ssIHNvIHRoaXMgd2lsbAorICAvLyBmYWlsIGZvciBhIGRpZmZlcmVudCByZWFzb24gaWYgeW91J3JlIHJ1bm5pbmcgYXMgcm9vdCB0aGFuIGlmIHlvdSdyZQorICAvLyBub3QsIGJ1dCBpdCdsbCBmYWlsIGVpdGhlciB3YXkuIENoZWNraW5nIHRoYXQgd2UgaGF2ZSB0aGUgc3ltYm9sIGlzIGFib3V0CisgIC8vIGFsbCB3ZSBjYW4gZG8gZm9yIHNldGhvc3RuYW1lKDIpLgorICBBU1NFUlRfRVEoLTEsIHNldGhvc3RuYW1lKCIiLCAtMSkpOworfQorCitURVNUKHVuaXN0ZCwgZ2V0aG9zdG5hbWUpIHsKKyAgY2hhciBob3N0bmFtZVtIT1NUX05BTUVfTUFYICsgMV07CisgIG1lbXNldChob3N0bmFtZSwgMCwgc2l6ZW9mKGhvc3RuYW1lKSk7CisKKyAgLy8gQ2FuIHdlIGdldCB0aGUgaG9zdG5hbWUgd2l0aCBhIGJpZyBidWZmZXI/CisgIEFTU0VSVF9FUSgwLCBnZXRob3N0bmFtZShob3N0bmFtZSwgSE9TVF9OQU1FX01BWCkpOworCisgIC8vIENhbiB3ZSBnZXQgdGhlIGhvc3RuYW1lIHdpdGggYSByaWdodC1zaXplZCBidWZmZXI/CisgIGVycm5vID0gMDsKKyAgQVNTRVJUX0VRKDAsIGdldGhvc3RuYW1lKGhvc3RuYW1lLCBzdHJsZW4oaG9zdG5hbWUpICsgMSkpOworCisgIC8vIERvZXMgdW5hbWUoMikgYWdyZWU/CisgIHV0c25hbWUgYnVmOworICBBU1NFUlRfRVEoMCwgdW5hbWUoJmJ1ZikpOworICBBU1NFUlRfRVEoMCwgc3RybmNtcChob3N0bmFtZSwgYnVmLm5vZGVuYW1lLCBTWVNfTk1MTikpOworICBBU1NFUlRfR1Qoc3RybGVuKGhvc3RuYW1lKSwgMFUpOworCisgIC8vIERvIHdlIGNvcnJlY3RseSBkZXRlY3QgdHJ1bmNhdGlvbj8KKyAgZXJybm8gPSAwOworICBBU1NFUlRfRVEoLTEsIGdldGhvc3RuYW1lKGhvc3RuYW1lLCBzdHJsZW4oaG9zdG5hbWUpKSk7CisgIEFTU0VSVF9FUShFTkFNRVRPT0xPTkcsIGVycm5vKTsKK30KKworVEVTVCh1bmlzdGQsIHBhdGhjb25mX2ZwYXRoY29uZikgeworICBUZW1wb3JhcnlGaWxlIHRmOworICBsb25nIHJjID0gMEw7CisgIC8vIEFzIGEgZmlsZSBzeXN0ZW0ncyBibG9jayBzaXplIGlzIGFsd2F5cyBwb3dlciBvZiAyLCB0aGUgY29uZmlndXJlIHZhbHVlcworICAvLyBmb3IgQUxMT0MgYW5kIFhGRVIgc2hvdWxkIGJlIHBvd2VyIG9mIDIgYXMgd2VsbC4KKyAgcmMgPSBwYXRoY29uZih0Zi5maWxlbmFtZSwgX1BDX0FMTE9DX1NJWkVfTUlOKTsKKyAgQVNTRVJUX1RSVUUocmMgPiAwICYmIHBvd2Vyb2YyKHJjKSk7CisgIHJjID0gcGF0aGNvbmYodGYuZmlsZW5hbWUsIF9QQ19SRUNfTUlOX1hGRVJfU0laRSk7CisgIEFTU0VSVF9UUlVFKHJjID4gMCAmJiBwb3dlcm9mMihyYykpOworICByYyA9IHBhdGhjb25mKHRmLmZpbGVuYW1lLCBfUENfUkVDX1hGRVJfQUxJR04pOworICBBU1NFUlRfVFJVRShyYyA+IDAgJiYgcG93ZXJvZjIocmMpKTsKKworICByYyA9IGZwYXRoY29uZih0Zi5mZCwgX1BDX0FMTE9DX1NJWkVfTUlOKTsKKyAgQVNTRVJUX1RSVUUocmMgPiAwICYmIHBvd2Vyb2YyKHJjKSk7CisgIHJjID0gZnBhdGhjb25mKHRmLmZkLCBfUENfUkVDX01JTl9YRkVSX1NJWkUpOworICBBU1NFUlRfVFJVRShyYyA+IDAgJiYgcG93ZXJvZjIocmMpKTsKKyAgcmMgPSBmcGF0aGNvbmYodGYuZmQsIF9QQ19SRUNfWEZFUl9BTElHTik7CisgIEFTU0VSVF9UUlVFKHJjID4gMCAmJiBwb3dlcm9mMihyYykpOworfQorCisKK1RFU1QodW5pc3RkLCBfUE9TSVhfbWFjcm9zX3Ntb2tlKSB7CisgIC8vIE1ha2UgYSB0aWdodCB2ZXJpZmljYXRpb24gb2YgX1BPU0lYXyogLyBfUE9TSVgyXyogLyBfWE9QRU5fKiBtYWNyb3MsIHRvIHByZXZlbnQgY2hhbmdlIGJ5IG1pc3Rha2UuCisgIC8vIFZlcmlmeSBhY2NvcmRpbmcgdG8gUE9TSVguMS0yMDA4LgorICBFWFBFQ1RfRVEoMjAwODA5TCwgX1BPU0lYX1ZFUlNJT04pOworCisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX0FEVklTT1JZX0lORk8pOworICBFWFBFQ1RfR1QoX1BPU0lYX0FJT19MSVNUSU9fTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9BSU9fTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9BUkdfTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9DSElMRF9NQVgsIDApOworICBFWFBFQ1RfTkUoX1BPU0lYX0NIT1dOX1JFU1RSSUNURUQsIC0xKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfQ0xPQ0tfU0VMRUNUSU9OKTsKKyAgRVhQRUNUX0VRKDAsIF9QT1NJWF9DUFVUSU1FKTsgICAgICAgICAgICAgLy8gVXNlIHN5c2NvbmYgdG8gZGV0ZWN0IHN1cHBvcnQgYXQgcnVudGltZS4KKyAgRVhQRUNUX0dUKF9QT1NJWF9ERUxBWVRJTUVSX01BWCwgMCk7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX0ZTWU5DKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9IT1NUX05BTUVfTUFYLCAwKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfSVBWNik7CisgIEVYUEVDVF9HVChfUE9TSVhfSk9CX0NPTlRST0wsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX0xJTktfTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9MT0dJTl9OQU1FX01BWCwgMCk7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX01BUFBFRF9GSUxFUyk7CisgIEVYUEVDVF9HVChfUE9TSVhfTUFYX0NBTk9OLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9NQVhfSU5QVVQsIDApOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9NRU1MT0NLKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfTUVNTE9DS19SQU5HRSk7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX01FTU9SWV9QUk9URUNUSU9OKTsKKyAgRVhQRUNUX0VRKDAsIF9QT1NJWF9NT05PVE9OSUNfQ0xPQ0spOworICBFWFBFQ1RfR1QoX1BPU0lYX01RX09QRU5fTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9NUV9QUklPX01BWCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVhfTkFNRV9NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX05HUk9VUFNfTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9OT19UUlVOQywgMCk7CisgIEVYUEVDVF9HVChfUE9TSVhfT1BFTl9NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX1BBVEhfTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9QSVBFX0JVRiwgMCk7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX1BSSU9SSVRZX1NDSEVEVUxJTkcpOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9SQVdfU09DS0VUUyk7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX1JFQURFUl9XUklURVJfTE9DS1MpOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9SRUFMVElNRV9TSUdOQUxTKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9SRUdFWFAsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX1JFX0RVUF9NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX1NBVkVEX0lEUywgMCk7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX1NFTUFQSE9SRVMpOworICBFWFBFQ1RfR1QoX1BPU0lYX1NFTV9OU0VNU19NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX1NFTV9WQUxVRV9NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX1NIRUxMLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWF9TSUdRVUVVRV9NQVgsIDApOworICBFWFBFQ1RfRVEoLTEsIF9QT1NJWF9TUE9SQURJQ19TRVJWRVIpOworICBFWFBFQ1RfR1QoX1BPU0lYX1NTSVpFX01BWCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVhfU1RSRUFNX01BWCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVhfU1lNTElOS19NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYX1NZTUxPT1BfTUFYLCAwKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfU1lOQ0hST05JWkVEX0lPKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfVEhSRUFEUyk7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX1RIUkVBRF9BVFRSX1NUQUNLQUREUik7CisgIEVYUEVDVF9FUShfUE9TSVhfVkVSU0lPTiwgX1BPU0lYX1RIUkVBRF9BVFRSX1NUQUNLU0laRSk7CisgIEVYUEVDVF9FUSgwLCBfUE9TSVhfVEhSRUFEX0NQVVRJTUUpOyAgICAgICAvLyBVc2Ugc3lzY29uZiB0byBkZXRlY3Qgc3VwcG9ydCBhdCBydW50aW1lLgorICBFWFBFQ1RfR1QoX1BPU0lYX1RIUkVBRF9ERVNUUlVDVE9SX0lURVJBVElPTlMsIDApOworICBFWFBFQ1RfRVEoX1BPU0lYX1RIUkVBRF9LRVlTX01BWCwgMTI4KTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfVEhSRUFEX1BSSU9SSVRZX1NDSEVEVUxJTkcpOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9USFJFQURfUFJJT19JTkhFUklUKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfVEhSRUFEX1BSSU9fUFJPVEVDVCk7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYX1RIUkVBRF9ST0JVU1RfUFJJT19QUk9URUNUKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfVEhSRUFEX1NBRkVfRlVOQ1RJT05TKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfVEhSRUFEX1NQT1JBRElDX1NFUlZFUik7CisgIEVYUEVDVF9HVChfUE9TSVhfVEhSRUFEX1RIUkVBRFNfTUFYLCAwKTsKKyAgRVhQRUNUX0VRKF9QT1NJWF9WRVJTSU9OLCBfUE9TSVhfVElNRU9VVFMpOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWF9USU1FUlMpOworICBFWFBFQ1RfR1QoX1BPU0lYX1RJTUVSX01BWCwgMCk7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYX1RSQUNFKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfVFJBQ0VfRVZFTlRfRklMVEVSKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfVFJBQ0VfSU5IRVJJVCk7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYX1RSQUNFX0xPRyk7CisgIEVYUEVDVF9HVChfUE9TSVhfVFRZX05BTUVfTUFYLCAwKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfVFlQRURfTUVNT1JZX09CSkVDVFMpOworICBFWFBFQ1RfR1QoX1BPU0lYX1RaTkFNRV9NQVgsIDApOworICBFWFBFQ1RfTkUoLTEsIF9QT1NJWF9WRElTQUJMRSk7CisKKyAgRVhQRUNUX0dUKF9QT1NJWDJfQkNfQkFTRV9NQVgsIDApOworICBFWFBFQ1RfR1QoX1BPU0lYMl9CQ19ESU1fTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWDJfQkNfU0NBTEVfTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWDJfQkNfU1RSSU5HX01BWCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVgyX0NIQVJDTEFTU19OQU1FX01BWCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVgyX0NPTExfV0VJR0hUU19NQVgsIDApOworICBFWFBFQ1RfRVEoX1BPU0lYX1ZFUlNJT04sIF9QT1NJWDJfQ19CSU5EKTsKKyAgRVhQRUNUX0dUKF9QT1NJWDJfRVhQUl9ORVNUX01BWCwgMCk7CisgIEVYUEVDVF9HVChfUE9TSVgyX0xJTkVfTUFYLCAwKTsKKyAgRVhQRUNUX0dUKF9QT1NJWDJfUkVfRFVQX01BWCwgMCk7CisKKyAgRVhQRUNUX0VRKDcwMCwgX1hPUEVOX1ZFUlNJT04pOworICBFWFBFQ1RfR1QoX1hPUEVOX0lPVl9NQVgsIDApOworICBFWFBFQ1RfR1QoX1hPUEVOX1VOSVgsIDApOworCisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorICAvLyBUaGVzZSB0ZXN0cyBvbmx5IHBhc3Mgb24gYmlvbmljLCBhcyBiaW9uaWMgYW5kIGdsaWJjIGhhcyBkaWZmZXJlbnQgc3VwcG9ydCBvbiB0aGVzZSBtYWNyb3MuCisgIC8vIE1hY3JvcyBsaWtlIF9QT1NJWF9BU1lOQ0hST05PVVNfSU8gYXJlIG5vdCBzdXBwb3J0ZWQgb24gYmlvbmljIHlldC4KKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfQVNZTkNIUk9OT1VTX0lPKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfQkFSUklFUlMpOworICBFWFBFQ1RfRVEoLTEsIF9QT1NJWF9NRVNTQUdFX1BBU1NJTkcpOworICBFWFBFQ1RfRVEoLTEsIF9QT1NJWF9QUklPUklUSVpFRF9JTyk7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYX1NIQVJFRF9NRU1PUllfT0JKRUNUUyk7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYX1NQQVdOKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVhfU1BJTl9MT0NLUyk7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYX1RIUkVBRF9QUk9DRVNTX1NIQVJFRCk7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYX1RIUkVBRF9ST0JVU1RfUFJJT19JTkhFUklUKTsKKworICBFWFBFQ1RfRVEoLTEsIF9QT1NJWDJfVkVSU0lPTik7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYMl9DSEFSX1RFUk0pOworICBFWFBFQ1RfRVEoLTEsIF9QT1NJWDJfQ19ERVYpOworICBFWFBFQ1RfRVEoLTEsIF9QT1NJWDJfTE9DQUxFREVGKTsKKyAgRVhQRUNUX0VRKC0xLCBfUE9TSVgyX1NXX0RFVik7CisgIEVYUEVDVF9FUSgtMSwgX1BPU0lYMl9VUEUpOworCisgIEVYUEVDVF9FUSgtMSwgX1hPUEVOX0VOSF9JMThOKTsKKyAgRVhQRUNUX0VRKC0xLCBfWE9QRU5fQ1JZUFQpOworICBFWFBFQ1RfRVEoLTEsIF9YT1BFTl9MRUdBQ1kpOworICBFWFBFQ1RfRVEoLTEsIF9YT1BFTl9SRUFMVElNRSk7CisgIEVYUEVDVF9FUSgtMSwgX1hPUEVOX1JFQUxUSU1FX1RIUkVBRFMpOworICBFWFBFQ1RfRVEoLTEsIF9YT1BFTl9TSE0pOworCisjZW5kaWYgLy8gZGVmaW5lZChfX0JJT05JQ19fKQorfQorCisjZGVmaW5lIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKG5hbWUpIFZlcmlmeVN5c2NvbmYobmFtZSwgI25hbWUsIFtdKGxvbmcgdil7cmV0dXJuIHYgPT0gLTE7fSkKKworLy8gc3lzY29uZigpIG1lYW5zIHVubGltaXRlZCB3aGVuIGl0IHJldHVybnMgLTEgd2l0aCBlcnJubyB1bmNoYW5nZWQuCisjZGVmaW5lIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKG5hbWUpIFwKKyAgVmVyaWZ5U3lzY29uZihuYW1lLCAjbmFtZSwgW10obG9uZyB2KXtyZXR1cm4gKHYgPiAwIHx8IHYgPT0gLTEpO30pCisKKyNkZWZpbmUgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihuYW1lKSBcCisgIFZlcmlmeVN5c2NvbmYobmFtZSwgI25hbWUsIFtdKGxvbmcgdil7cmV0dXJuIHYgPT0gX1BPU0lYX1ZFUlNJT047fSkKKworc3RhdGljIHZvaWQgVmVyaWZ5U3lzY29uZihpbnQgb3B0aW9uLCBjb25zdCBjaGFyICpvcHRpb25fbmFtZSwgYm9vbCAoKnZlcmlmeSkobG9uZykpIHsKKyAgZXJybm8gPSAwOworICBsb25nIHJldCA9IHN5c2NvbmYob3B0aW9uKTsKKyAgRVhQRUNUX1RSVUUoMCA9PSBlcnJubyAmJiB2ZXJpZnkocmV0KSkgPDwgIm5hbWUgPSAiIDw8IG9wdGlvbl9uYW1lIDw8ICIsIHJldCA9ICIKKyAgICAgIDw8IHJldCA8PCIsIEVycm9yIE1lc3NhZ2U6ICIgPDwgc3RyZXJyb3IoZXJybm8pOworfQorCitURVNUKHVuaXN0ZCwgc3lzY29uZikgeworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19BRFZJU09SWV9JTkZPKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX0FSR19NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfQkNfQkFTRV9NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfQkNfRElNX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19CQ19TQ0FMRV9NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfQ0hJTERfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX0NMS19UQ0spOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfQ09MTF9XRUlHSFRTX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX0NQVVRJTUUpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfRVhQUl9ORVNUX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19MSU5FX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19OR1JPVVBTX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19PUEVOX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19QQVNTX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDXzJfQ19CSU5EKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDXzJfRk9SVF9ERVYpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfMl9GT1JUX1JVTik7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ18yX1VQRSk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19KT0JfQ09OVFJPTCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19TQVZFRF9JRFMpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19WRVJTSU9OKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1JFX0RVUF9NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfU1RSRUFNX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19UWk5BTUVfTUFYKTsKKyAgVmVyaWZ5U3lzY29uZihfU0NfWE9QRU5fVkVSU0lPTiwgIl9TQ19YT1BFTl9WRVJTSU9OIiwgW10obG9uZyB2KXtyZXR1cm4gdiA9PSBfWE9QRU5fVkVSU0lPTjt9KTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX0FURVhJVF9NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfSU9WX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19QQUdFU0laRSk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19QQUdFX1NJWkUpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfWE9QRU5fVU5JWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19BSU9fTElTVElPX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19BSU9fTUFYKTsKKyAgVmVyaWZ5U3lzY29uZihfU0NfQUlPX1BSSU9fREVMVEFfTUFYLCAiX1NDX0FJT19QUklPX0RFTFRBX01BWCIsIFtdKGxvbmcgdil7cmV0dXJuIHYgPj0gMDt9KTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX0RFTEFZVElNRVJfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX01RX09QRU5fTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX01RX1BSSU9fTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1JUU0lHX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19TRU1fTlNFTVNfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1NFTV9WQUxVRV9NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfVElNRVJfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfRlNZTkMpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19NQVBQRURfRklMRVMpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19NRU1MT0NLKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfTUVNTE9DS19SQU5HRSk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX01FTU9SWV9QUk9URUNUSU9OKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfUFJJT1JJVFlfU0NIRURVTElORyk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX1JFQUxUSU1FX1NJR05BTFMpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19TRU1BUEhPUkVTKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfU1lOQ0hST05JWkVEX0lPKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfVElNRVJTKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX0dFVEdSX1JfU0laRV9NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfR0VUUFdfUl9TSVpFX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19MT0dJTl9OQU1FX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19USFJFQURfREVTVFJVQ1RPUl9JVEVSQVRJT05TKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1RIUkVBRF9LRVlTX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19USFJFQURfU1RBQ0tfTUlOKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1RIUkVBRF9USFJFQURTX01BWCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19UVFlfTkFNRV9NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19USFJFQURTKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfVEhSRUFEX0FUVFJfU1RBQ0tBRERSKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfVEhSRUFEX0FUVFJfU1RBQ0tTSVpFKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfVEhSRUFEX1BSSU9SSVRZX1NDSEVEVUxJTkcpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19USFJFQURfUFJJT19JTkhFUklUKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfVEhSRUFEX1BSSU9fUFJPVEVDVCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lYX1ZFUlNJT04oX1NDX1RIUkVBRF9TQUZFX0ZVTkNUSU9OUyk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19OUFJPQ0VTU09SU19DT05GKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX05QUk9DRVNTT1JTX09OTE4pOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfUEhZU19QQUdFUyk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19BVlBIWVNfUEFHRVMpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19NT05PVE9OSUNfQ0xPQ0spOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfMl9QQlMpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfMl9QQlNfQUNDT1VOVElORyk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ18yX1BCU19DSEVDS1BPSU5UKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDXzJfUEJTX0xPQ0FURSk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ18yX1BCU19NRVNTQUdFKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDXzJfUEJTX1RSQUNLKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfQ0xPQ0tfU0VMRUNUSU9OKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX0hPU1RfTkFNRV9NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19JUFY2KTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfUkFXX1NPQ0tFVFMpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19SRUFERVJfV1JJVEVSX0xPQ0tTKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1JFR0VYUCk7CisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19TSEVMTCk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19TUE9SQURJQ19TRVJWRVIpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfU1lNTE9PUF9NQVgpOworICBWRVJJRllfU1lTQ09ORl9QT1NJWF9WRVJTSU9OKF9TQ19USFJFQURfQ1BVVElNRSk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19USFJFQURfU1BPUkFESUNfU0VSVkVSKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVhfVkVSU0lPTihfU0NfVElNRU9VVFMpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVFJBQ0UpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVFJBQ0VfRVZFTlRfRklMVEVSKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1RSQUNFX0VWRU5UX05BTUVfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1RSQUNFX0lOSEVSSVQpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVFJBQ0VfTE9HKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1RSQUNFX05BTUVfTUFYKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1RSQUNFX1NZU19NQVgpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVFJBQ0VfVVNFUl9FVkVOVF9NQVgpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVFlQRURfTUVNT1JZX09CSkVDVFMpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfWE9QRU5fU1RSRUFNUyk7CisKKyNpZiBkZWZpbmVkKF9fTFA2NF9fKQorICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVjdfSUxQMzJfT0ZGMzIpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVjdfSUxQMzJfT0ZGQklHKTsKKyAgVkVSSUZZX1NZU0NPTkZfUE9TSVRJVkUoX1NDX1Y3X0xQNjRfT0ZGNjQpOworICBWRVJJRllfU1lTQ09ORl9QT1NJVElWRShfU0NfVjdfTFBCSUdfT0ZGQklHKTsKKyNlbHNlCisgIFZFUklGWV9TWVNDT05GX1BPU0lUSVZFKF9TQ19WN19JTFAzMl9PRkYzMik7CisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorICAvLyBiaW9uaWMgZG9lcyBub3Qgc3VwcG9ydCA2NCBiaXRzIG9mZl90IHR5cGUgb24gMzJiaXQgbWFjaGluZS4KKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1Y3X0lMUDMyX09GRkJJRyk7CisjZW5kaWYKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1Y3X0xQNjRfT0ZGNjQpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVjdfTFBCSUdfT0ZGQklHKTsKKyNlbmRpZgorCisjaWYgZGVmaW5lZChfX0JJT05JQ19fKQorICAvLyBUZXN0cyBjYW4gb25seSBydW4gb24gYmlvbmljLCBhcyBiaW9uaWMgYW5kIGdsaWJjIGhhdmUgZGlmZmVyZW50IHN1cHBvcnQgZm9yIHRoZXNlIG9wdGlvbnMuCisgIC8vIEJlbG93IG9wdGlvbnMgYXJlIG5vdCBzdXBwb3J0ZWQgb24gYmlvbmljIHlldC4KKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX0FTWU5DSFJPTk9VU19JTyk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19CQVJSSUVSUyk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19NRVNTQUdFX1BBU1NJTkcpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfUFJJT1JJVElaRURfSU8pOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfU0hBUkVEX01FTU9SWV9PQkpFQ1RTKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1NQQVdOKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1NQSU5fTE9DS1MpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfVEhSRUFEX1BST0NFU1NfU0hBUkVEKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1RIUkVBRF9ST0JVU1RfUFJJT19JTkhFUklUKTsKKyAgVkVSSUZZX1NZU0NPTkZfTk9UX1NVUFBPUlQoX1NDX1RIUkVBRF9ST0JVU1RfUFJJT19QUk9URUNUKTsKKworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfMl9DX0RFVik7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ18yX0NIQVJfVEVSTSk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ18yX0xPQ0FMRURFRik7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ18yX1NXX0RFVik7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ18yX1ZFUlNJT04pOworCisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19YT1BFTl9DUllQVCk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19YT1BFTl9FTkhfSTE4Tik7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19YT1BFTl9MRUdBQ1kpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfWE9QRU5fUkVBTFRJTUUpOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfWE9QRU5fUkVBTFRJTUVfVEhSRUFEUyk7CisgIFZFUklGWV9TWVNDT05GX05PVF9TVVBQT1JUKF9TQ19YT1BFTl9TSE0pOworICBWRVJJRllfU1lTQ09ORl9OT1RfU1VQUE9SVChfU0NfWE9QRU5fVVVDUCk7CisjZW5kaWYgLy8gZGVmaW5lZChfX0JJT05JQ19fKQorfQorCitURVNUKHVuaXN0ZCwgZHVwMl9zYW1lKSB7CisgIC8vIFBPU0lYIHNheXMgb2YgZHVwMjoKKyAgLy8gSWYgZmlsZGVzMiBpcyBhbHJlYWR5IGEgdmFsaWQgb3BlbiBmaWxlIGRlc2NyaXB0b3IgLi4uCisgIC8vIFthbmRdIGZpbGRlcyBpcyBlcXVhbCB0byBmaWxkZXMyIC4uLiBkdXAyKCkgc2hhbGwgcmV0dXJuCisgIC8vIGZpbGRlczIgd2l0aG91dCBjbG9zaW5nIGl0LgorICAvLyBUaGlzIGlzbid0IHRydWUgb2YgZHVwMygyKSwgc28gd2UgbmVlZCB0byBtYW51YWxseSBpbXBsZW1lbnQgdGhhdC4KKworICAvLyBFcXVhbCBhbmQgdmFsaWQuCisgIGludCBmZCA9IG9wZW4oIi9wcm9jL3ZlcnNpb24iLCBPX1JET05MWSk7CisgIEFTU0VSVF9UUlVFKGZkICE9IC0xKTsKKyAgQVNTRVJUX0VRKGZkLCBkdXAyKGZkLCBmZCkpOworICBBU1NFUlRfRVEoMCwgY2xvc2UoZmQpKTsgLy8gQ2hlY2sgdGhhdCBkdXAyIGRpZG4ndCBjbG9zZSBmZC4KKworICAvLyBFcXVhbCwgYnV0IGludmFsaWQuCisgIGVycm5vID0gMDsKKyAgQVNTRVJUX0VRKC0xLCBkdXAyKGZkLCBmZCkpOworICBBU1NFUlRfRVEoRUJBREYsIGVycm5vKTsKK30KZGlmZiAtLWdpdCBhL3Rlc3RzL3V0aWxzLmggYi90ZXN0cy91dGlscy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZkMDEyYTMKLS0tIC9kZXYvbnVsbAorKysgYi90ZXN0cy91dGlscy5oCkBAIC0wLDAgKzEsODQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorICoKKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisgKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAiQVMgSVMiIEJBU0lTLAorICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyAqLworCisjaWZuZGVmIF9fVEVTVF9VVElMU19ICisjZGVmaW5lIF9fVEVTVF9VVElMU19ICisjaW5jbHVkZSA8aW50dHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvbW1hbi5oPgorCisjaW5jbHVkZSAicHJpdmF0ZS9TY29wZUd1YXJkLmgiCisKK3N0cnVjdCBtYXBfcmVjb3JkIHsKKyAgdWludHB0cl90IGFkZHJfc3RhcnQ7CisgIHVpbnRwdHJfdCBhZGRyX2VuZDsKKworICBpbnQgcGVybXM7CisKKyAgc2l6ZV90IG9mZnNldDsKKworICBkZXZfdCBkZXZpY2U7CisgIGlub190IGlub2RlOworCisgIHN0ZDo6c3RyaW5nIHBhdGhuYW1lOworfTsKKworY2xhc3MgTWFwcyB7CisgcHVibGljOgorICBzdGF0aWMgYm9vbCBwYXJzZV9tYXBzKHN0ZDo6dmVjdG9yPG1hcF9yZWNvcmQ+KiBtYXBzKSB7CisgICAgY2hhciBwYXRoWzY0XTsKKyAgICBzbnByaW50ZihwYXRoLCBzaXplb2YocGF0aCksICIvcHJvYy9zZWxmL3Rhc2svJWQvbWFwcyIsIGdldHBpZCgpKTsKKyAgICBGSUxFKiBmcCA9IGZvcGVuKHBhdGgsICJyZSIpOworICAgIGlmIChmcCA9PSBudWxscHRyKSB7CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgYXV0byBmcF9ndWFyZCA9IG1ha2Vfc2NvcGVfZ3VhcmQoWyZdKCkgeworICAgICAgZmNsb3NlKGZwKTsKKyAgICB9KTsKKworICAgIGNoYXIgbGluZVtCVUZTSVpdOworICAgIHdoaWxlIChmZ2V0cyhsaW5lLCBzaXplb2YobGluZSksIGZwKSAhPSBudWxscHRyKSB7CisgICAgICBtYXBfcmVjb3JkIHJlY29yZDsKKyAgICAgIHVpbnQzMl90IGRldl9tYWpvciwgZGV2X21pbm9yOworICAgICAgY2hhciBwYXRoc3RyW0JVRlNJWl07CisgICAgICBjaGFyIHByb3RbNV07IC8vIHNpemVvZigicnd4cCIpCisgICAgICBpZiAoc3NjYW5mKGxpbmUsICIlIiBTQ054UFRSICItJSIgU0NOeFBUUiAiICU0cyAlIiBTQ054UFRSICIgJXg6JXggJWx1ICVzIiwKKyAgICAgICAgICAgICZyZWNvcmQuYWRkcl9zdGFydCwgJnJlY29yZC5hZGRyX2VuZCwgcHJvdCwgJnJlY29yZC5vZmZzZXQsCisgICAgICAgICAgICAmZGV2X21ham9yLCAmZGV2X21pbm9yLCAmcmVjb3JkLmlub2RlLCBwYXRoc3RyKSA9PSA4KSB7CisgICAgICAgIHJlY29yZC5wZXJtcyA9IDA7CisgICAgICAgIGlmIChwcm90WzBdID09ICdyJykgeworICAgICAgICAgIHJlY29yZC5wZXJtcyB8PSBQUk9UX1JFQUQ7CisgICAgICAgIH0KKyAgICAgICAgaWYgKHByb3RbMV0gPT0gJ3cnKSB7CisgICAgICAgICAgcmVjb3JkLnBlcm1zIHw9IFBST1RfV1JJVEU7CisgICAgICAgIH0KKyAgICAgICAgaWYgKHByb3RbMl0gPT0gJ3gnKSB7CisgICAgICAgICAgcmVjb3JkLnBlcm1zIHw9IFBST1RfRVhFQzsKKyAgICAgICAgfQorCisgICAgICAgIC8vIFRPRE86IHBhcnNlIHNoYXJlZC9wcml2YXRlPworCisgICAgICAgIHJlY29yZC5kZXZpY2UgPSBtYWtlZGV2KGRldl9tYWpvciwgZGV2X21pbm9yKTsKKyAgICAgICAgcmVjb3JkLnBhdGhuYW1lID0gcGF0aHN0cjsKKyAgICAgICAgbWFwcy0+cHVzaF9iYWNrKHJlY29yZCk7CisgICAgICB9CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7CisgIH0KK307CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvdGVzdHMvdXRtcF90ZXN0LmNwcCBiL3Rlc3RzL3V0bXBfdGVzdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjYxMTEwZAotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3RzL3V0bXBfdGVzdC5jcHAKQEAgLTAsMCArMSwyNSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxNCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisgKgorICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyAqCisgKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorICoKKyAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisKKyNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgorCisjaW5jbHVkZSA8dXRtcC5oPgorCitURVNUKHV0bXAsIGxvZ2luX3R0eSkgeworICAvLyBsb2dpbl90dHkgaXMgdGVzdGVkIGluZGlyZWN0bHkgYnkgdGhlIG9wZW5wdHkgYW5kIGZvcmtwdHkgdGVzdHMuCisgIC8vIFRoaXMgdGVzdCBqdXN0IGNoZWNrcyB0aGF0IHdlJ3JlIGV4cG9ydGluZyB0aGUgc3ltYm9sIGluZGVwZW5kZW50bHkuCisgIEFTU0VSVF9FUSgtMSwgbG9naW5fdHR5KC0xKSk7Cit9CmRpZmYgLS1naXQgYS90ZXN0cy93Y2hhcl90ZXN0LmNwcCBiL3Rlc3RzL3djaGFyX3Rlc3QuY3BwCmluZGV4IGQwMmM0YmYuLmU4NmQ1NmQgMTAwNjQ0Ci0tLSBhL3Rlc3RzL3djaGFyX3Rlc3QuY3BwCisrKyBiL3Rlc3RzL3djaGFyX3Rlc3QuY3BwCkBAIC0yMiw2ICsyMiw4IEBACiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8d2NoYXIuaD4KIAorI2RlZmluZSBOVU1fV0NIQVJTKG51bV9ieXRlcykgKG51bV9ieXRlcy9zaXplb2Yod2NoYXJfdCkpCisKIFRFU1Qod2NoYXIsIHNpemVvZl93Y2hhcl90KSB7CiAgIEVYUEVDVF9FUSg0VSwgc2l6ZW9mKHdjaGFyX3QpKTsKICAgRVhQRUNUX0VRKDRVLCBzaXplb2Yod2ludF90KSk7CkBAIC0yMzIsNiArMjM0LDExIEBACiAgIEFTU0VSVF9FUShOVUxMLCB3Y3NzdHIoaGF5c3RhY2ssIGJhZF9uZWVkbGUpKTsKIH0KIAorVEVTVCh3Y2hhciwgd2Nzc3RyXzgwMTk5KSB7CisgIC8vIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvYW5kcm9pZC9pc3N1ZXMvZGV0YWlsP2lkPTgwMTk5CisgIEFTU0VSVF9UUlVFKHdjc3N0cihMInJvbXJvbSIsIEwicm9tIikgIT0gTlVMTCk7Cit9CisKIFRFU1Qod2NoYXIsIG1idG93YykgewogICB3Y2hhcl90IG91dFs4XTsKIApAQCAtMzQzLDcgKzM1MCw3IEBACiAgIC8vIENoZWNrIHRoYXQgdmFsaWQgaGFzIGFkdmFuY2VkIHRvIHRoZSBuZXh0IHVucmVhZCBjaGFyYWN0ZXIuCiAgIEFTU0VSVF9FUSgnZScsICp2YWxpZCk7CiAKLSAgd21lbXNldChvdXQsIEwneCcsIHNpemVvZihvdXQpIC8gc2l6ZW9mKHdjaGFyX3QpKTsKKyAgd21lbXNldChvdXQsIEwneCcsIE5VTV9XQ0hBUlMoc2l6ZW9mKG91dCkpKTsKICAgQVNTRVJUX0VRKDJVLCBtYnNydG93Y3Mob3V0LCAmdmFsaWQsIDQsIHBzKSk7CiAgIEFTU0VSVF9FUShMJ2UnLCBvdXRbMF0pOwogICBBU1NFUlRfRVEoTCdmJywgb3V0WzFdKTsKQEAgLTQ1MCwxNyArNDU3LDg1IEBACiAgIEVYUEVDVF9TVFJFUShMIlN1biBNYXIgMTAgMDA6MDA6MDAgMjEwMCIsIGJ1Zik7CiB9CiAKLVRFU1Qod2NoYXIsIHdtZW1tb3ZlKSB7CitURVNUKHdjaGFyLCB3bWVtbW92ZV9zbW9rZSkgewogICBjb25zdCB3Y2hhcl90IGNvbnN0X3dzdHJbXSA9IEwiVGhpcyBpcyBhIHRlc3Qgb2Ygc29tZXRoaW5nIG9yIG90aGVyLi4uLi4iOwotICB3Y2hhcl90KiB3c3RyID0gbmV3IHdjaGFyX3Rbc2l6ZW9mKGNvbnN0X3dzdHIpXTsKKyAgd2NoYXJfdCB3c3RyW05VTV9XQ0hBUlMoc2l6ZW9mKGNvbnN0X3dzdHIpKV07CiAKLSAgd21lbW1vdmUod3N0ciwgY29uc3Rfd3N0ciwgc2l6ZW9mKGNvbnN0X3dzdHIpL3NpemVvZih3Y2hhcl90KSk7CisgIEVYUEVDVF9FUSh3c3RyLCB3bWVtbW92ZSh3c3RyLCBjb25zdF93c3RyLCBOVU1fV0NIQVJTKHNpemVvZihjb25zdF93c3RyKSkpKTsKICAgRVhQRUNUX1NUUkVRKGNvbnN0X3dzdHIsIHdzdHIpOwogCi0gIHdtZW1tb3ZlKHdzdHIrNSwgd3N0ciwgc2l6ZW9mKGNvbnN0X3dzdHIpL3NpemVvZih3Y2hhcl90KSAtIDYpOworICBFWFBFQ1RfRVEod3N0cis1LCB3bWVtbW92ZSh3c3RyKzUsIHdzdHIsIE5VTV9XQ0hBUlMoc2l6ZW9mKGNvbnN0X3dzdHIpKSAtIDYpKTsKICAgRVhQRUNUX1NUUkVRKEwiVGhpcyBUaGlzIGlzIGEgdGVzdCBvZiBzb21ldGhpbmcgb3Igb3RoZXIiLCB3c3RyKTsKIH0KIAorVEVTVCh3Y2hhciwgd21lbWNweV9zbW9rZSkgeworICBjb25zdCB3Y2hhcl90IHNyY1tdID0gTCJTb3VyY2Ugc3RyaW5nIjsKKyAgd2NoYXJfdCBkc3RbTlVNX1dDSEFSUyhzaXplb2Yoc3JjKSldOworCisgIEVYUEVDVF9FUShkc3QsIHdtZW1jcHkoZHN0LCBzcmMsIE5VTV9XQ0hBUlMoc2l6ZW9mKHNyYykpKSk7CisgIEVYUEVDVF9TVFJFUShkc3QsIHNyYyk7Cit9CisKK1RFU1Qod2NoYXIsIHdjcGNweV9zbW9rZSkgeworICBjb25zdCB3Y2hhcl90IHNyY1tdID0gTCJTb3VyY2Ugc3RyaW5nIjsKKyAgd2NoYXJfdCBkc3RbTlVNX1dDSEFSUyhzaXplb2Yoc3JjKSldOworCisgIEVYUEVDVF9FUShkc3QgKyBOVU1fV0NIQVJTKHNpemVvZihzcmMpKSAtIDEsIHdjcGNweShkc3QsIHNyYykpOworICBFWFBFQ1RfU1RSRVEoZHN0LCBzcmMpOworfQorCitURVNUKHdjaGFyLCB3Y3BuY3B5X3Ntb2tlKSB7CisgIGNvbnN0IHdjaGFyX3Qgc3JjW10gPSBMIlNvdXJjZSBzdHJpbmciOworICB3Y2hhcl90IGRzdFtOVU1fV0NIQVJTKHNpemVvZihzcmMpKSArIDVdOworCisgIHNpemVfdCBzcmNfbGVuID0gTlVNX1dDSEFSUyhzaXplb2Yoc3JjKSkgLSAxOworICBFWFBFQ1RfRVEoZHN0ICsgc3JjX2xlbiwgd2NwbmNweShkc3QsIHNyYywgc3JjX2xlbiArIDEpKTsKKyAgRVhQRUNUX1NUUkVRKGRzdCwgc3JjKTsKKworICBFWFBFQ1RfRVEoZHN0ICsgNiwgd2NwbmNweShkc3QsIHNyYywgNikpOworICBkc3RbNl0gPSBMJ1wwJzsKKyAgRVhQRUNUX1NUUkVRKGRzdCwgTCJTb3VyY2UiKTsKKworICB3bWVtc2V0KGRzdCwgTCd4JywgTlVNX1dDSEFSUyhzaXplb2YoZHN0KSkpOworICBFWFBFQ1RfRVEoZHN0ICsgc3JjX2xlbiwgd2NwbmNweShkc3QsIHNyYywgc3JjX2xlbiArIDQpKTsKKyAgRVhQRUNUX1NUUkVRKGRzdCwgc3JjKTsKKyAgRVhQRUNUX0VRKGRzdFtzcmNfbGVuXSwgTCdcMCcpOworICBFWFBFQ1RfRVEoZHN0W3NyY19sZW4rMV0sIEwnXDAnKTsKKyAgRVhQRUNUX0VRKGRzdFtzcmNfbGVuKzJdLCBMJ1wwJyk7CisgIEVYUEVDVF9FUShkc3Rbc3JjX2xlbiszXSwgTCdcMCcpOworICBFWFBFQ1RfRVEoZHN0W3NyY19sZW4rNF0sIEwneCcpOworfQorCitURVNUKHdjaGFyLCB3Y3NjcHlfc21va2UpIHsKKyAgY29uc3Qgd2NoYXJfdCBzcmNbXSA9IEwiU291cmNlIHN0cmluZyI7CisgIHdjaGFyX3QgZHN0W05VTV9XQ0hBUlMoc2l6ZW9mKHNyYykpXTsKKworICBFWFBFQ1RfRVEoZHN0LCB3Y3NjcHkoZHN0LCBzcmMpKTsKKyAgRVhQRUNUX1NUUkVRKHNyYywgZHN0KTsKK30KKworVEVTVCh3Y2hhciwgd2NzbmNweV9zbW9rZSkgeworICBjb25zdCB3Y2hhcl90IHNyY1tdID0gTCJTb3VyY2Ugc3RyaW5nIjsKKyAgd2NoYXJfdCBkc3RbTlVNX1dDSEFSUyhzaXplb2Yoc3JjKSkgKyA1XTsKKworICBzaXplX3Qgc3JjX2xlbiA9IE5VTV9XQ0hBUlMoc2l6ZW9mKHNyYykpIC0gMTsKKyAgRVhQRUNUX0VRKGRzdCwgd2NzbmNweShkc3QsIHNyYywgc3JjX2xlbiArIDEpKTsKKyAgRVhQRUNUX1NUUkVRKGRzdCwgc3JjKTsKKworICBFWFBFQ1RfRVEoZHN0LCB3Y3NuY3B5KGRzdCwgc3JjLCA2KSk7CisgIGRzdFs2XSA9IEwnXDAnOworICBFWFBFQ1RfU1RSRVEoZHN0LCBMIlNvdXJjZSIpOworCisgIHdtZW1zZXQoZHN0LCBMJ3gnLCBOVU1fV0NIQVJTKHNpemVvZihkc3QpKSk7CisgIEVYUEVDVF9FUShkc3QsIHdjc25jcHkoZHN0LCBzcmMsIHNyY19sZW4gKyA0KSk7CisgIEVYUEVDVF9TVFJFUShkc3QsIHNyYyk7CisgIEVYUEVDVF9FUShkc3Rbc3JjX2xlbl0sIEwnXDAnKTsKKyAgRVhQRUNUX0VRKGRzdFtzcmNfbGVuKzFdLCBMJ1wwJyk7CisgIEVYUEVDVF9FUShkc3Rbc3JjX2xlbisyXSwgTCdcMCcpOworICBFWFBFQ1RfRVEoZHN0W3NyY19sZW4rM10sIEwnXDAnKTsKKyAgRVhQRUNUX0VRKGRzdFtzcmNfbGVuKzRdLCBMJ3gnKTsKK30KKwogVEVTVCh3Y2hhciwgbWJydG93Y18xNTQzOTU1NCkgewogICAvLyBodHRwOi8vYi8xNTQzOTU1NAogICBBU1NFUlRfU1RSRVEoIkMuVVRGLTgiLCBzZXRsb2NhbGUoTENfQ1RZUEUsICJDLlVURi04IikpOwpAQCAtNDg5LDMgKzU2NCwxMTEgQEAKICAgRVhQRUNUX0VRKDRVLCBuKTsKICAgRVhQRUNUX0VRKEwn8KStoicsIHdjKTsKIH0KKworVEVTVCh3Y2hhciwgb3Blbl93bWVtc3RyZWFtKSB7CisgIHdjaGFyX3QqIHAgPSBudWxscHRyOworICBzaXplX3Qgc2l6ZSA9IDA7CisgIEZJTEUqIGZwID0gb3Blbl93bWVtc3RyZWFtKCZwLCAmc2l6ZSk7CisgIEFTU0VSVF9ORShFT0YsIGZwdXR3cyhMImhlbGxvLCB3b3JsZCEiLCBmcCkpOworICBmY2xvc2UoZnApOworCisgIEFTU0VSVF9TVFJFUShMImhlbGxvLCB3b3JsZCEiLCBwKTsKKyAgQVNTRVJUX0VRKHdjc2xlbihMImhlbGxvLCB3b3JsZCEiKSwgc2l6ZSk7CisgIGZyZWUocCk7Cit9CisKK1RFU1Qoc3RkaW8sIG9wZW5fd21lbXN0cmVhbV9FSU5WQUwpIHsKKyNpZiBkZWZpbmVkKF9fQklPTklDX18pCisgIHdjaGFyX3QqIHA7CisgIHNpemVfdCBzaXplOworCisgIC8vIEludmFsaWQgYnVmZmVyLgorICBlcnJubyA9IDA7CisgIEFTU0VSVF9FUShudWxscHRyLCBvcGVuX3dtZW1zdHJlYW0obnVsbHB0ciwgJnNpemUpKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworCisgIC8vIEludmFsaWQgc2l6ZS4KKyAgZXJybm8gPSAwOworICBBU1NFUlRfRVEobnVsbHB0ciwgb3Blbl93bWVtc3RyZWFtKCZwLCBudWxscHRyKSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyNlbHNlCisgIEdURVNUX0xPR18oSU5GTykgPDwgIlRoaXMgdGVzdCBkb2VzIG5vdGhpbmcuXG4iOworI2VuZGlmCit9CisKK1RFU1Qod2NoYXIsIHdjc3RvbF9FSU5WQUwpIHsKKyAgZXJybm8gPSAwOworICB3Y3N0b2woTCIxMjMiLCBOVUxMLCAtMSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyAgZXJybm8gPSAwOworICB3Y3N0b2woTCIxMjMiLCBOVUxMLCAxKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworICBlcnJubyA9IDA7CisgIHdjc3RvbChMIjEyMyIsIE5VTEwsIDM3KTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworfQorCitURVNUKHdjaGFyLCB3Y3N0b2xsX0VJTlZBTCkgeworICBlcnJubyA9IDA7CisgIHdjc3RvbGwoTCIxMjMiLCBOVUxMLCAtMSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyAgZXJybm8gPSAwOworICB3Y3N0b2xsKEwiMTIzIiwgTlVMTCwgMSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyAgZXJybm8gPSAwOworICB3Y3N0b2xsKEwiMTIzIiwgTlVMTCwgMzcpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7Cit9CisKK1RFU1Qod2NoYXIsIHdjc3RvdWxfRUlOVkFMKSB7CisgIGVycm5vID0gMDsKKyAgd2NzdG91bChMIjEyMyIsIE5VTEwsIC0xKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworICBlcnJubyA9IDA7CisgIHdjc3RvdWwoTCIxMjMiLCBOVUxMLCAxKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworICBlcnJubyA9IDA7CisgIHdjc3RvdWwoTCIxMjMiLCBOVUxMLCAzNyk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKK30KKworVEVTVCh3Y2hhciwgd2NzdG91bGxfRUlOVkFMKSB7CisgIGVycm5vID0gMDsKKyAgd2NzdG91bGwoTCIxMjMiLCBOVUxMLCAtMSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKKyAgZXJybm8gPSAwOworICB3Y3N0b3VsbChMIjEyMyIsIE5VTEwsIDEpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgd2NzdG91bGwoTCIxMjMiLCBOVUxMLCAzNyk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKK30KKworVEVTVCh3Y2hhciwgd2NzdG9sbF9sX0VJTlZBTCkgeworICBlcnJubyA9IDA7CisgIHdjc3RvbGxfbChMIjEyMyIsIE5VTEwsIC0xLCBMQ19HTE9CQUxfTE9DQUxFKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworICBlcnJubyA9IDA7CisgIHdjc3RvbGxfbChMIjEyMyIsIE5VTEwsIDEsIExDX0dMT0JBTF9MT0NBTEUpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7CisgIGVycm5vID0gMDsKKyAgd2NzdG9sbF9sKEwiMTIzIiwgTlVMTCwgMzcsIExDX0dMT0JBTF9MT0NBTEUpOworICBBU1NFUlRfRVEoRUlOVkFMLCBlcnJubyk7Cit9CisKK1RFU1Qod2NoYXIsIHdjc3RvdWxsX2xfRUlOVkFMKSB7CisgIGVycm5vID0gMDsKKyAgd2NzdG91bGxfbChMIjEyMyIsIE5VTEwsIC0xLCBMQ19HTE9CQUxfTE9DQUxFKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworICBlcnJubyA9IDA7CisgIHdjc3RvdWxsX2woTCIxMjMiLCBOVUxMLCAxLCBMQ19HTE9CQUxfTE9DQUxFKTsKKyAgQVNTRVJUX0VRKEVJTlZBTCwgZXJybm8pOworICBlcnJubyA9IDA7CisgIHdjc3RvdWxsX2woTCIxMjMiLCBOVUxMLCAzNywgTENfR0xPQkFMX0xPQ0FMRSk7CisgIEFTU0VSVF9FUShFSU5WQUwsIGVycm5vKTsKK30KKworVEVTVCh3Y2hhciwgd21lbXBjcHkpIHsKKyAgd2NoYXJfdCBkc3RbNl07CisgIEFTU0VSVF9FUSgmZHN0WzRdLCB3bWVtcGNweShkc3QsIEwiaGVsbG8iLCA0KSk7Cit9CmRpZmYgLS1naXQgYS90b29scy9BbmRyb2lkLm1rIGIvdG9vbHMvQW5kcm9pZC5tawpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZGQ2NmZlCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvQW5kcm9pZC5tawpAQCAtMCwwICsxLDE5IEBACisjCisjIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisjCisjIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGljZW5zZSIpOworIyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisjIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorIworIyAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorIworIyBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisjIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisjIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorIyBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisjIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorIworCitMT0NBTF9QQVRIIDo9ICQoY2FsbCBteS1kaXIpCisKK2luY2x1ZGUgJChjYWxsIGFsbC1zdWJkaXItbWFrZWZpbGVzKQpkaWZmIC0tZ2l0IGEvdG9vbHMvYmlvbmljYmIvLmdpdGlnbm9yZSBiL3Rvb2xzL2Jpb25pY2JiLy5naXRpZ25vcmUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDBmZjA2NAotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL2Jpb25pY2JiLy5naXRpZ25vcmUKQEAgLTAsMCArMSw1OCBAQAorY29uZmlnLnB5CisqLmpzb24KK29hdXRoLnN0b3JhZ2UKKworIyBCeXRlLWNvbXBpbGVkIC8gb3B0aW1pemVkIC8gRExMIGZpbGVzCitfX3B5Y2FjaGVfXy8KKyoucHlbY29kXQorCisjIEMgZXh0ZW5zaW9ucworKi5zbworCisjIERpc3RyaWJ1dGlvbiAvIHBhY2thZ2luZworLlB5dGhvbgorZW52LworYnVpbGQvCitkZXZlbG9wLWVnZ3MvCitkaXN0LworZG93bmxvYWRzLworZWdncy8KK2xpYi8KK2xpYjY0LworcGFydHMvCitzZGlzdC8KK3Zhci8KKyouZWdnLWluZm8vCisuaW5zdGFsbGVkLmNmZworKi5lZ2cKKworIyBQeUluc3RhbGxlcgorIyAgVXN1YWxseSB0aGVzZSBmaWxlcyBhcmUgd3JpdHRlbiBieSBhIHB5dGhvbiBzY3JpcHQgZnJvbSBhIHRlbXBsYXRlCisjICBiZWZvcmUgUHlJbnN0YWxsZXIgYnVpbGRzIHRoZSBleGUsIHNvIGFzIHRvIGluamVjdCBkYXRlL290aGVyIGluZm9zIGludG8gaXQuCisqLm1hbmlmZXN0CisqLnNwZWMKKworIyBJbnN0YWxsZXIgbG9ncworcGlwLWxvZy50eHQKK3BpcC1kZWxldGUtdGhpcy1kaXJlY3RvcnkudHh0CisKKyMgVW5pdCB0ZXN0IC8gY292ZXJhZ2UgcmVwb3J0cworaHRtbGNvdi8KKy50b3gvCisuY292ZXJhZ2UKKy5jYWNoZQorbm9zZXRlc3RzLnhtbAorY292ZXJhZ2UueG1sCisKKyMgVHJhbnNsYXRpb25zCisqLm1vCisqLnBvdAorCisjIERqYW5nbyBzdHVmZjoKKyoubG9nCisKKyMgU3BoaW54IGRvY3VtZW50YXRpb24KK2RvY3MvX2J1aWxkLworCisjIFB5QnVpbGRlcgordGFyZ2V0LwpkaWZmIC0tZ2l0IGEvdG9vbHMvYmlvbmljYmIvUkVBRE1FLm1kIGIvdG9vbHMvYmlvbmljYmIvUkVBRE1FLm1kCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEyODU5ODQKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9iaW9uaWNiYi9SRUFETUUubWQKQEAgLTAsMCArMSw4OSBAQAorYmlvbmljYmIKKz09PT09PT09CisKK1RoZSBiaW9uaWMgYnVpbGRib3QgY29udGFpbnMgdHdvIHNlcnZpY2VzOiBhIGdtYWlsIHBvbGxpbmcgc2VydmljZSwgYW5kIGEgd2ViCitzZXJ2aWNlIHRoYXQgaW50ZXJhY3RzIHdpdGggZ2Vycml0LgorCitEZXBlbmRlbmNpZXMKKy0tLS0tLS0tLS0tLQorCisgKiBQeXRob24gMi43CisgKiBbQWR2YW5jZWQgUHl0aG9uIFNjaGVkdWxlcl0oaHR0cHM6Ly9hcHNjaGVkdWxlci5yZWFkdGhlZG9jcy5vcmcvZW4vbGF0ZXN0LykKKyAqIFtGbGFza10oaHR0cDovL2ZsYXNrLnBvY29vLm9yZy8pCisgKiBbR29vZ2xlIEFQSSBDbGllbnQgTGlicmFyeV0oaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vYXBpLWNsaWVudC1saWJyYXJ5L3B5dGhvbi9zdGFydC9pbnN0YWxsYXRpb24pCisgKiBbamVua2luc2FwaV0oaHR0cHM6Ly9weXBpLnB5dGhvbi5vcmcvcHlwaS9qZW5raW5zYXBpKQorICogW1JlcXVlc3RzXShodHRwOi8vZG9jcy5weXRob24tcmVxdWVzdHMub3JnL2VuL2xhdGVzdC8pCisKK1NldHVwCistLS0tLQorCitDcmVhdGUgYSBgY29uZmlnLnB5YCBpbiB0aGUgc2FtZSBkaXJlY3RvcnkgYXMgdGhlIHNvdXJjZXMuIFRoZSBzdHJ1Y3R1cmUgb2YgdGhlCitjb25maWd1cmF0aW9uIGZpbGUgaXMgYXMgZm9sbG93czoKKworYGBgcHl0aG9uCitjbGllbnRfc2VjcmV0X2ZpbGUgPSAnQ0xJRU5UX1NFQ1JFVF9GSUxFLmpzb24nCitidWlsZF9saXN0ZW5lcl91cmwgPSAnQlVJTERfTElTVEVORVJfVVJMJworamVua2luc191cmwgPSAnSkVOS0lOU19VUkwnCitqZW5raW5zX2NyZWRlbnRpYWxzID0geworICAgICd1c2VybmFtZSc6ICdKRU5LSU5TX1VTRVJOQU1FJywKKyAgICAncGFzc3dvcmQnOiAnSkVOS0lOU19QQVNTV09SRCcsCit9CitgYGAKKworVGhlIGNsaWVudCBzZWNyZXQgZmlsZSBjb21lcyBmcm9tIHRoZSBHbWFpbCBBUEkgcGFnZSBvZiB0aGUgW0dvb2dsZSBEZXZlbG9wZXJzCitDb25zb2xlXShodHRwczovL2NvbnNvbGUuZGV2ZWxvcGVycy5nb29nbGUuY29tLykuIFRoZSBKZW5raW5zIGNyZWRlbnRpYWxzIGFyZQorZm9yIGEgSmVua2lucyBhY2NvdW50IHRoYXQgaGFzIHRoZSBhcHByb3ByaWF0ZSBwZXJtaXNzaW9ucyB0byBsYXVuY2ggdGhlIGpvYnMKK3RoZSBidWlsZGJvdCB3aWxsIHVzZS4KKworWW91IHdpbGwgYWxzbyBuZWVkIHRvIGFkZCB0aGUgSFRUUCBwYXNzd29yZCBmb3IgdGhlIGJ1aWxkYm90J3MgR2Vycml0IGFjY291bnQgdG8KK2B+Ly5uZXRyY2AuIFRoZSBIVFRQIHBhc3N3b3JkIGNhbiBiZSBvYnRhaW5lZCBmcm9tIHRoZSBbR2Vycml0IEhUVFAgcGFzc3dvcmQKK3NldHRpbmdzXShodHRwczovL2FuZHJvaWQtcmV2aWV3Lmdvb2dsZXNvdXJjZS5jb20vIy9zZXR0aW5ncy9odHRwLXBhc3N3b3JkKS4KKworVG8gbGF1bmNoIHRoZSBzZXJ2aWNlczoKKworYGBgYmFzaAorJCBweXRob24gYnVpbGRfbGlzdGVuZXIucHkgPmJ1aWxkLmxvZyAyPiYxICYKKyQgcHl0aG9uIGdtYWlsX2xpc3RlbmVyLnB5ID5tYWlsLmxvZyAyPiYxICYKK2BgYAorCitUaGUgbWFpbCBsaXN0ZW5lciB3aWxsIGRpcmVjdCB5b3VyIGJyb3dzZXIgdG8gYW4gYXV0aGVudGljYXRpb24gcGFnZSBmb3IgdGhlCitHbWFpbCBBUEkuCisKK2dtYWlsXF9saXN0ZW5lci5weQorLS0tLS0tLS0tLS0tLS0tLS0tCisKK0Jpb25pY2JiIHBvbGxzIGEgZ21haWwgYWNjb3VudCB0byBmaW5kIGNoYW5nZXMgdGhhdCBuZWVkIHRvIGJlIGJ1aWx0LiBUaGUgZ21haWwKK2FjY291bnQgbmVlZHMgdG8gaGF2ZSBhIGdlcnJpdCBhY2NvdW50IHNldCB1cCB3aXRoIHByb2plY3Qgd2F0Y2hlcyBvbiBhbnl0aGluZworaXQgZmluZHMgaW50ZXJlc3RpbmcuIFRoaXMgaXMgYSByYXRoZXIgdWdseSBoYWNrLCBidXQgaXQgc2VlbXMgdG8gYmUgdGhlCitzaW1wbGVzdCBvcHRpb24gYXZhaWxhYmxlLgorCitHZXJyaXQgZG9lcyBvZmZlciBhIHN0cmVhbWluZyBub3RpZmljYXRpb24gc2VydmljZSB0aGF0IHdvdWxkIGJlIF9mYXJfIGJldHRlciwKK2J1dCBpdCBpcyBvbmx5IGF2YWlsYWJsZSBvdmVyIGFuIFNTSCBjb25lY3Rpb24gdG8gZ2Vycml0LCBhbmQgdGhlIEFPU1AgZ2Vycml0Citkb2VzIG5vdCBzdXBwb3J0IHRoaXMgY29ubmVjdGlvbi4KKworQW5vdGhlciBvcHRpb24gd291bGQgYmUgcG9sbGluZyBnZXJyaXQgaXRzZWxmLCBidXQgd2UnZCBoYXZlIHRvIHByb2Nlc3MgZWFjaAorY2hhbmdlIGV2ZXJ5IHRpbWUgdG8gc2VlIGlmIGl0IHNob3VsZCBiZSBidWlsdCwgd2hlcmVhcyBwcm9qZWN0IHdhdGNoZXMgYWxsb3cgdXMKK3RvIHRyZWF0IHRoZXNlIGFzIHNlbWktcHVzaCBub3RpZmljYXRpb25zICh3ZSBzdGlsbCBoYXZlIHRvIHBvbGwgZ21haWwpLgorCitPbmUgZHJhd2JhY2sgdG8gdGhpcyBhcHByb2FjaCBpcyB0aGF0IGl0J3MgYSBoYXNzbGUgdG8gc2V0IHVwIHRoZSBwcm9qZWN0Cit3YXRjaGVzIGZvciBhIGxhcmdlIG51bWJlciBvZiBwcm9qZWN0cy4gU2luY2UgYmlvbmljYmIgaXMgb25seSBpbnRlcmVzdGVkIGluIGEKK3NtYWxsIHN1YnNldCBvZiBwcm9qZWN0cywgdGhpcyBpcyBhIG5vbi1pc3N1ZS4KKworSWYgdGhlIGJ1aWxkYm90IGhhcyBhcHBsaWVkIFZlcmlmaWVkLTEgdG8gYSBwYXRjaHNldCwgdGhlIHVzZXIgbWF5IGFkZCB0aGVpciBvd24KK1ZlcmlmaWVkKzEgdG8gdGhlIGNoYW5nZSBhbmQgdGhlIGJ1aWxkYm90IHdpbGwgcmVtb3ZlIGl0cyByZWplY3Rpb24gdGhlIG5leHQKK3RpbWUgdGhlIHNlcnZpY2VzIHBvbGxzIChieSBkZWZhdWx0LCBldmVyeSBmaXZlIG1pbnV0ZXMpLgorCitUaGUgc2VydmljZSB3aWxsIGFsc28gbGlzdGVuIGZvciB0aGUgZm9sbG93aW5nIGNvbW1hbmRzOgorCisgKiBgYmlvbmljYmI6Y2xlYW5gOiBTb21ldGhpbmcgaXMgdmVyeSBicm9rZW4gYW5kIHRoZSBidWlsZGJvdCdzIG91dHB1dAorICAgZGlyZWN0b3J5IG5lZWRzIHRvIGJlIG51a2VkLgorICogYGJpb25pY2JiOnJldHJ5YDogU29tZXRoaW5nIHdlbnQgd3JvbmcgYW5kIHRoZSBidWlsZGJvdCBzaG91bGQgcmV0cnkgdGhlCisgICBidWlsZC4KKworYnVpbGRcX2xpc3RlbmVyLnB5CistLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIGJ1aWxkIGxpc3RlbmVyIHNlcnZpY2UgcmVzcG9uZHMgdG8gSFRUUCBQT1NUIGV2ZW50cyBzZW50IGZyb20gSmVua2lucyBhbmQKK3VwZGF0ZXMgQ0xzIGFjY29yZGluZ2x5LiBUaGUgb25seSBvdGhlciBBUEkgZW5kcG9pbnQgaXMgYC9kcm9wLXJlamVjdGlvbmAsIHdoaWNoCit3aWxsIHJlbW92ZSBhIFZlcmlmaWVkLTEgZnJvbSBhIHByZXZpb3VzbHkgcmVqZWN0ZWQgcGF0Y2hzZXQuIFRoZSBhY3R1YWxseQoraW52b2NhdGlvbiBvZiB0aGlzIGlzIGhhbmRsZWQgYnkgdGhlIGdtYWlsIGxpc3RlbmVyLgpkaWZmIC0tZ2l0IGEvdG9vbHMvYmlvbmljYmIvYmlvbmljYmIucHkgYi90b29scy9iaW9uaWNiYi9iaW9uaWNiYi5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNzg2YjI3Ci0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvYmlvbmljYmIvYmlvbmljYmIucHkKQEAgLTAsMCArMSwxMzQgQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbjIKKyMKKyMgQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyMKKyMgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICdMaWNlbnNlJyk7CisjIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyMgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisjCisjICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisjCisjIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gJ0FTIElTJyBCQVNJUywKKyMgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisjIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisjCitpbXBvcnQganNvbgoraW1wb3J0IGxvZ2dpbmcKK2ltcG9ydCBvcworCitmcm9tIGFwc2NoZWR1bGVyLnNjaGVkdWxlcnMuYmFja2dyb3VuZCBpbXBvcnQgQmFja2dyb3VuZFNjaGVkdWxlcgorZnJvbSBmbGFzayBpbXBvcnQgRmxhc2ssIHJlcXVlc3QKK2ltcG9ydCByZXF1ZXN0cworCitpbXBvcnQgZ2Vycml0CitpbXBvcnQgdGFza3MKKworYXBwID0gRmxhc2soX19uYW1lX18pCisKKworZGVmIGdlcnJpdF91cmwoZW5kcG9pbnQpOgorICAgIGdlcnJpdF9iYXNlX3VybCA9ICdodHRwczovL2FuZHJvaWQtcmV2aWV3Lmdvb2dsZXNvdXJjZS5jb20nCisgICAgcmV0dXJuIGdlcnJpdF9iYXNlX3VybCArIGVuZHBvaW50CisKKworQGFwcC5yb3V0ZSgnLycsIG1ldGhvZHM9WydQT1NUJ10pCitkZWYgaGFuZGxlX2J1aWxkX21lc3NhZ2UoKToKKyAgICByZXN1bHQgPSBqc29uLmxvYWRzKHJlcXVlc3QuZGF0YSkKKworICAgIG5hbWUgPSByZXN1bHRbJ25hbWUnXQorICAgIG51bWJlciA9IHJlc3VsdFsnYnVpbGQnXVsnbnVtYmVyJ10KKyAgICBzdGF0dXMgPSByZXN1bHRbJ2J1aWxkJ11bJ3N0YXR1cyddCisgICAgZ29fdXJsID0gJ2h0dHA6Ly9nby9iaW9uaWNiYi8nICsgcmVzdWx0WydidWlsZCddWyd1cmwnXQorICAgIGZ1bGxfdXJsID0gcmVzdWx0WydidWlsZCddWydmdWxsX3VybCddCisgICAgcGFyYW1zID0gcmVzdWx0WydidWlsZCddWydwYXJhbWV0ZXJzJ10KKyAgICBjaGFuZ2VfaWQgPSBwYXJhbXNbJ0NIQU5HRV9JRCddCisgICAgcmVmID0gcGFyYW1zWydSRUYnXQorICAgIHBhdGNoX3NldCA9IHJlZi5zcGxpdCgnLycpWy0xXQorCisgICAgbG9nZ2luZy5kZWJ1ZygnJXMgIyVzICVzOiAlcycsIG5hbWUsIG51bWJlciwgc3RhdHVzLCBmdWxsX3VybCkKKworICAgICMgYmlvbmljLWxpbnQgaXMgYWx3YXlzIGJyb2tlbiwgc28gd2UgZG9uJ3Qgd2FudCB0byByZWplY3QgY2hhbmdlcyBmb3IKKyAgICAjIHRob3NlIGZhaWx1cmVzIHVudGlsIHdlIGNsZWFuIHRoaW5ncyB1cC4KKyAgICBpZiBuYW1lID09ICdiaW9uaWMtcHJlc3VibWl0JzoKKyAgICAgICAgbWVzc2FnZV9saW5lcyA9IFsne30gI3t9IGNoZWNrYnVpbGQge306IHt9Jy5mb3JtYXQoCisgICAgICAgICAgICBuYW1lLCBudW1iZXIsIHN0YXR1cywgZ29fdXJsKV0KKyAgICAgICAgaWYgc3RhdHVzID09ICdGQUlMVVJFJzoKKyAgICAgICAgICAgIG1lc3NhZ2VfbGluZXMgKz0gWydJZiB5b3UgYmVsaWV2ZSB0aGlzIFZlcmlmaWVkLTEgd2FzIGluIGVycm9yLCAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnKzEgdGhlIGNoYW5nZSBhbmQgYmlvbmljYmIgd2lsbCByZW1vdmUgdGhlIC0xICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzaG9ydGx5LiddCisKKyAgICAgICAgcmVxdWVzdF9kYXRhID0geworICAgICAgICAgICAgJ21lc3NhZ2UnOiAnXG4nLmpvaW4obWVzc2FnZV9saW5lcykKKyAgICAgICAgfQorCisgICAgICAgIGxhYmVsID0gJ1ZlcmlmaWVkJworICAgICAgICBpZiBzdGF0dXMgPT0gJ0ZBSUxVUkUnOgorICAgICAgICAgICAgcmVxdWVzdF9kYXRhWydsYWJlbHMnXSA9IHtsYWJlbDogLTF9CisgICAgICAgIGVsaWYgc3RhdHVzID09ICdTVUNDRVNTJzoKKyAgICAgICAgICAgIHJlcXVlc3RfZGF0YVsnbGFiZWxzJ10gPSB7bGFiZWw6ICsxfQorCisgICAgICAgIHVybCA9IGdlcnJpdF91cmwoJy9hL2NoYW5nZXMve30vcmV2aXNpb25zL3t9L3JldmlldycuZm9ybWF0KGNoYW5nZV9pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0Y2hfc2V0KSkKKworICAgICAgICBoZWFkZXJzID0geydDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PVVURi04J30KKyAgICAgICAgbG9nZ2luZy5kZWJ1ZygnUE9TVCAlczogJXMnLCB1cmwsIHJlcXVlc3RfZGF0YSkKKyAgICAgICAgcmVxdWVzdHMucG9zdCh1cmwsIGhlYWRlcnM9aGVhZGVycywganNvbj1yZXF1ZXN0X2RhdGEpCisgICAgZWxpZiBuYW1lID09ICdjbGVhbi1iaW9uaWMtcHJlc3VibWl0JzoKKyAgICAgICAgcmVxdWVzdF9kYXRhID0geydtZXNzYWdlJzogJ291dC8gZGlyZWN0b3J5IHJlbW92ZWQnfQorICAgICAgICB1cmwgPSBnZXJyaXRfdXJsKCcvYS9jaGFuZ2VzL3t9L3JldmlzaW9ucy97fS9yZXZpZXcnLmZvcm1hdChjaGFuZ2VfaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGNoX3NldCkpCisgICAgICAgIGhlYWRlcnMgPSB7J0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9VVRGLTgnfQorICAgICAgICBsb2dnaW5nLmRlYnVnKCdQT1NUICVzOiAlcycsIHVybCwgcmVxdWVzdF9kYXRhKQorICAgICAgICByZXF1ZXN0cy5wb3N0KHVybCwgaGVhZGVycz1oZWFkZXJzLCBqc29uPXJlcXVlc3RfZGF0YSkKKyAgICBlbGlmIG5hbWUgPT0gJ2Jpb25pYy1saW50JzoKKyAgICAgICAgbG9nZ2luZy53YXJuaW5nKCdSZXN1bHQgZm9yIGJpb25pYy1saW50IGlnbm9yZWQnKQorICAgIGVsc2U6CisgICAgICAgIGxvZ2dpbmcuZXJyb3IoJ1Vua25vd24gcHJvamVjdDogJXMnLCBuYW1lKQorICAgIHJldHVybiAnJworCisKK0BhcHAucm91dGUoJy9kcm9wLXJlamVjdGlvbicsIG1ldGhvZHM9WydQT1NUJ10pCitkZWYgZHJvcF9yZWplY3Rpb24oKToKKyAgICByZXZpc2lvbl9pbmZvID0ganNvbi5sb2FkcyhyZXF1ZXN0LmRhdGEpCisKKyAgICBjaGFuZ2VfaWQgPSByZXZpc2lvbl9pbmZvWydjaGFuZ2VpZCddCisgICAgcGF0Y2hfc2V0ID0gcmV2aXNpb25faW5mb1sncGF0Y2hzZXQnXQorCisgICAgYmJfZW1haWwgPSAnYmlvbmljYmJAYW5kcm9pZC5jb20nCisgICAgbGFiZWxzID0gZ2Vycml0LmdldF9sYWJlbHMoY2hhbmdlX2lkLCBwYXRjaF9zZXQpCisgICAgaWYgYmJfZW1haWwgaW4gbGFiZWxzWydWZXJpZmllZCddOgorICAgICAgICBiYl9yZXZpZXcgPSBsYWJlbHNbJ1ZlcmlmaWVkJ11bYmJfZW1haWxdCisgICAgZWxzZToKKyAgICAgICAgYmJfcmV2aWV3ID0gMAorCisgICAgaWYgYmJfcmV2aWV3ID49IDA6CisgICAgICAgIGxvZ2dpbmcuaW5mbygnTm8gcmVqZWN0aW9uIHRvIGRyb3A6ICVzICVzJywgY2hhbmdlX2lkLCBwYXRjaF9zZXQpCisgICAgICAgIHJldHVybiAnJworCisgICAgbG9nZ2luZy5pbmZvKCdEcm9wcGluZyByZWplY3Rpb246ICVzICVzJywgY2hhbmdlX2lkLCBwYXRjaF9zZXQpCisKKyAgICByZXF1ZXN0X2RhdGEgPSB7J2xhYmVscyc6IHsnVmVyaWZpZWQnOiAwfX0KKyAgICB1cmwgPSBnZXJyaXRfdXJsKCcvYS9jaGFuZ2VzL3t9L3JldmlzaW9ucy97fS9yZXZpZXcnLmZvcm1hdChjaGFuZ2VfaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0Y2hfc2V0KSkKKyAgICBoZWFkZXJzID0geydDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PVVURi04J30KKyAgICBsb2dnaW5nLmRlYnVnKCdQT1NUICVzOiAlcycsIHVybCwgcmVxdWVzdF9kYXRhKQorICAgIHJlcXVlc3RzLnBvc3QodXJsLCBoZWFkZXJzPWhlYWRlcnMsIGpzb249cmVxdWVzdF9kYXRhKQorICAgIHJldHVybiAnJworCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgbG9nZ2luZy5iYXNpY0NvbmZpZyhsZXZlbD1sb2dnaW5nLklORk8pCisgICAgbG9nZ2VyID0gbG9nZ2luZy5nZXRMb2dnZXIoKQorICAgIGZoID0gbG9nZ2luZy5GaWxlSGFuZGxlcignYmlvbmljYmIubG9nJykKKyAgICBmaC5zZXRMZXZlbChsb2dnaW5nLklORk8pCisgICAgbG9nZ2VyLmFkZEhhbmRsZXIoZmgpCisKKyAgICAjIFByZXZlbnQgdGhlIGpvYiBmcm9tIGJlaW5nIHJlc2NoZWR1bGVkIGJ5IHRoZSByZWxvYWRlci4KKyAgICBpZiBvcy5lbnZpcm9uLmdldCgnV0VSS1pFVUdfUlVOX01BSU4nKSA9PSAndHJ1ZSc6CisgICAgICAgIHNjaGVkdWxlciA9IEJhY2tncm91bmRTY2hlZHVsZXIoKQorICAgICAgICBzY2hlZHVsZXIuc3RhcnQoKQorICAgICAgICBzY2hlZHVsZXIuYWRkX2pvYih0YXNrcy5nZXRfYW5kX3Byb2Nlc3Nfam9icywgJ2ludGVydmFsJywgbWludXRlcz01KQorCisgICAgYXBwLnJ1bihob3N0PScwLjAuMC4wJywgZGVidWc9VHJ1ZSkKZGlmZiAtLWdpdCBhL3Rvb2xzL2Jpb25pY2JiL2dlcnJpdC5weSBiL3Rvb2xzL2Jpb25pY2JiL2dlcnJpdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45YzYyYzZhCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvYmlvbmljYmIvZ2Vycml0LnB5CkBAIC0wLDAgKzEsODAgQEAKKyMKKyMgQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyMKKyMgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICdMaWNlbnNlJyk7CisjIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyMgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisjCisjICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisjCisjIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gJ0FTIElTJyBCQVNJUywKKyMgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisjIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisjCitpbXBvcnQganNvbgoraW1wb3J0IHJlcXVlc3RzCisKKworY2xhc3MgR2Vycml0RXJyb3IoUnVudGltZUVycm9yKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgY29kZSwgdXJsKToKKyAgICAgICAgc2VsZi5jb2RlID0gY29kZQorICAgICAgICBzZWxmLnVybCA9IHVybAorICAgICAgICBzdXBlcihHZXJyaXRFcnJvciwgc2VsZikuX19pbml0X18oJ0Vycm9yIHt9OiB7fScuZm9ybWF0KGNvZGUsIHVybCkpCisKKworZGVmIGdldF9jb21taXQoY2hhbmdlX2lkLCByZXZpc2lvbik6CisgICAgcmV0dXJuIGpzb24ubG9hZHMoCisgICAgICAgIGNhbGwoJy9jaGFuZ2VzL3t9L3JldmlzaW9ucy97fS9jb21taXQnLmZvcm1hdChjaGFuZ2VfaWQsIHJldmlzaW9uKSkpCisKKworZGVmIGdldF9maWxlc19mb3JfcmV2aXNpb24oY2hhbmdlX2lkLCByZXZpc2lvbik6CisgICAgcmV0dXJuIGpzb24ubG9hZHMoCisgICAgICAgIGNhbGwoJy9jaGFuZ2VzL3t9L3JldmlzaW9ucy97fS9maWxlcycuZm9ybWF0KAorICAgICAgICAgICAgY2hhbmdlX2lkLCByZXZpc2lvbikpKS5rZXlzKCkKKworCitkZWYgY2FsbChlbmRwb2ludCwgbWV0aG9kPSdHRVQnKToKKyAgICBpZiBtZXRob2QgIT0gJ0dFVCc6CisgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IoJ0N1cnJlbnRseSBvbmx5IEhUVFAgR0VUIGlzIHN1cHBvcnRlZC4nKQorICAgIGdlcnJpdF91cmwgPSAnaHR0cHM6Ly9hbmRyb2lkLXJldmlldy5nb29nbGVzb3VyY2UuY29tJworICAgIHVybCA9IGdlcnJpdF91cmwgKyBlbmRwb2ludAorICAgIHJlc3BvbnNlID0gcmVxdWVzdHMuZ2V0KHVybCkKKyAgICBpZiByZXNwb25zZS5zdGF0dXNfY29kZSAhPSAyMDA6CisgICAgICAgIHJhaXNlIEdlcnJpdEVycm9yKHJlc3BvbnNlLnN0YXR1c19jb2RlLCB1cmwpCisgICAgcmV0dXJuIHJlc3BvbnNlLnRleHRbNTpdCisKKworZGVmIHJlZl9mb3JfY2hhbmdlKGNoYW5nZV9pZCk6CisgICAgZW5kcG9pbnQgPSAnL2NoYW5nZXMve30vZGV0YWlsP289Q1VSUkVOVF9SRVZJU0lPTicuZm9ybWF0KGNoYW5nZV9pZCkKKyAgICBjaGFuZ2UgPSBqc29uLmxvYWRzKGNhbGwoZW5kcG9pbnQpKQorICAgIGNvbW1pdCA9IGNoYW5nZVsnY3VycmVudF9yZXZpc2lvbiddCisgICAgcmV0dXJuIGNoYW5nZVsncmV2aXNpb25zJ11bY29tbWl0XVsnZmV0Y2gnXVsnaHR0cCddWydyZWYnXQorCisKK2RlZiBnZXRfbGFiZWxzKGNoYW5nZV9pZCwgcGF0Y2hfc2V0KToKKyAgICAiIiJSZXR1cm5zIGxhYmVscyBhdHRhY2hlZCB0byBhIHJldmlzaW9uLgorCisgICAgUmV0dXJuZWQgZGF0YSBpcyBpbiB0aGUgZm9sbG93aW5nIGZvcm1hdDoKKyAgICB7CisgICAgICAgICdDb2RlLVJldmlldyc6IHsKKyAgICAgICAgICAgIDxlbWFpbD46IDx2YWx1ZT4sCisgICAgICAgICAgICAuLi4KKyAgICAgICAgfSwKKyAgICAgICAgJ1ZlcmlmaWVkJzogeworICAgICAgICAgICAgPGVtYWlsPjogPHZhbHVlPiwKKyAgICAgICAgICAgIC4uLgorICAgICAgICB9CisgICAgfQorICAgICIiIgorICAgIGRldGFpbHMgPSBqc29uLmxvYWRzKGNhbGwoJy9jaGFuZ2VzL3t9L3JldmlzaW9ucy97fS9yZXZpZXcnLmZvcm1hdCgKKyAgICAgICAgY2hhbmdlX2lkLCBwYXRjaF9zZXQpKSkKKyAgICBsYWJlbHMgPSB7J0NvZGUtUmV2aWV3Jzoge30sICdWZXJpZmllZCc6IHt9fQorICAgIGZvciByZXZpZXcgaW4gZGV0YWlsc1snbGFiZWxzJ11bJ0NvZGUtUmV2aWV3J11bJ2FsbCddOgorICAgICAgICBpZiAndmFsdWUnIGluIHJldmlldyBhbmQgJ2VtYWlsJyBpbiByZXZpZXc6CisgICAgICAgICAgICBsYWJlbHNbJ0NvZGUtUmV2aWV3J11bcmV2aWV3WydlbWFpbCddXSA9IGludChyZXZpZXdbJ3ZhbHVlJ10pCisgICAgZm9yIHJldmlldyBpbiBkZXRhaWxzWydsYWJlbHMnXVsnVmVyaWZpZWQnXVsnYWxsJ106CisgICAgICAgIGlmICd2YWx1ZScgaW4gcmV2aWV3IGFuZCAnZW1haWwnIGluIHJldmlldzoKKyAgICAgICAgICAgIGxhYmVsc1snVmVyaWZpZWQnXVtyZXZpZXdbJ2VtYWlsJ11dID0gaW50KHJldmlld1sndmFsdWUnXSkKKyAgICByZXR1cm4gbGFiZWxzCmRpZmYgLS1naXQgYS90b29scy9iaW9uaWNiYi9nbWFpbC5weSBiL3Rvb2xzL2Jpb25pY2JiL2dtYWlsLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYwODhhZDYKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9iaW9uaWNiYi9nbWFpbC5weQpAQCAtMCwwICsxLDcxIEBACisjCisjIENvcHlyaWdodCAoQykgMjAxNSBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0CisjCisjIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAnTGljZW5zZScpOworIyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisjIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorIworIyAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAorIworIyBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisjIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICdBUyBJUycgQkFTSVMsCisjIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgorIyBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisjIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorIworaW1wb3J0IGJhc2U2NAoraW1wb3J0IGh0dHBsaWIyCisKK2ltcG9ydCBjb25maWcKKworCitkZWYgZ2V0X2JvZHkobXNnKToKKyAgICBpZiAnYXR0YWNobWVudElkJyBpbiBtc2dbJ3BheWxvYWQnXVsnYm9keSddOgorICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yKCdIYW5kbGluZyBvZiBtZXNzYWdlcyBjb250YWluZWQgaW4gJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhdHRhY2htZW50cyBub3QgeWV0IGltcGxlbWVudGVkLicpCisgICAgYjY0X2JvZHkgPSBtc2dbJ3BheWxvYWQnXVsnYm9keSddWydkYXRhJ10KKyAgICByZXR1cm4gYmFzZTY0LnVybHNhZmVfYjY0ZGVjb2RlKGI2NF9ib2R5LmVuY29kZSgnQVNDSUknKSkKKworCitkZWYgYnVpbGRfc2VydmljZSgpOgorICAgIGZyb20gYXBpY2xpZW50LmRpc2NvdmVyeSBpbXBvcnQgYnVpbGQKKyAgICBmcm9tIG9hdXRoMmNsaWVudC5jbGllbnQgaW1wb3J0IGZsb3dfZnJvbV9jbGllbnRzZWNyZXRzCisgICAgZnJvbSBvYXV0aDJjbGllbnQuZmlsZSBpbXBvcnQgU3RvcmFnZQorICAgIGZyb20gb2F1dGgyY2xpZW50LnRvb2xzIGltcG9ydCBydW4KKworICAgIE9BVVRIX1NDT1BFID0gJ2h0dHBzOi8vd3d3Lmdvb2dsZWFwaXMuY29tL2F1dGgvZ21haWwubW9kaWZ5JworICAgIFNUT1JBR0UgPSBTdG9yYWdlKCdvYXV0aC5zdG9yYWdlJykKKworICAgICMgU3RhcnQgdGhlIE9BdXRoIGZsb3cgdG8gcmV0cmlldmUgY3JlZGVudGlhbHMKKyAgICBmbG93ID0gZmxvd19mcm9tX2NsaWVudHNlY3JldHMoY29uZmlnLmNsaWVudF9zZWNyZXRfZmlsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NvcGU9T0FVVEhfU0NPUEUpCisgICAgaHR0cCA9IGh0dHBsaWIyLkh0dHAoKQorCisgICAgIyBUcnkgdG8gcmV0cmlldmUgY3JlZGVudGlhbHMgZnJvbSBzdG9yYWdlIG9yIHJ1biB0aGUgZmxvdyB0byBnZW5lcmF0ZSB0aGVtCisgICAgY3JlZGVudGlhbHMgPSBTVE9SQUdFLmdldCgpCisgICAgaWYgY3JlZGVudGlhbHMgaXMgTm9uZSBvciBjcmVkZW50aWFscy5pbnZhbGlkOgorICAgICAgICBjcmVkZW50aWFscyA9IHJ1bihmbG93LCBTVE9SQUdFLCBodHRwPWh0dHApCisKKyAgICBodHRwID0gY3JlZGVudGlhbHMuYXV0aG9yaXplKGh0dHApCisgICAgcmV0dXJuIGJ1aWxkKCdnbWFpbCcsICd2MScsIGh0dHA9aHR0cCkKKworCitkZWYgZ2V0X2dlcnJpdF9sYWJlbChsYWJlbHMpOgorICAgIGZvciBsYWJlbCBpbiBsYWJlbHM6CisgICAgICAgIGlmIGxhYmVsWyduYW1lJ10gPT0gJ2dlcnJpdCc6CisgICAgICAgICAgICByZXR1cm4gbGFiZWxbJ2lkJ10KKyAgICByZXR1cm4gTm9uZQorCisKK2RlZiBnZXRfYWxsX21lc3NhZ2VzKHNlcnZpY2UsIGxhYmVsKToKKyAgICBtc2dzID0gW10KKyAgICByZXNwb25zZSA9IHNlcnZpY2UudXNlcnMoKS5tZXNzYWdlcygpLmxpc3QoCisgICAgICAgIHVzZXJJZD0nbWUnLCBsYWJlbElkcz1sYWJlbCkuZXhlY3V0ZSgpCisgICAgaWYgJ21lc3NhZ2VzJyBpbiByZXNwb25zZToKKyAgICAgICAgbXNncy5leHRlbmQocmVzcG9uc2VbJ21lc3NhZ2VzJ10pCisgICAgd2hpbGUgJ25leHRQYWdlVG9rZW4nIGluIHJlc3BvbnNlOgorICAgICAgICBwYWdlX3Rva2VuID0gcmVzcG9uc2VbJ25leHRQYWdlVG9rZW4nXQorICAgICAgICByZXNwb25zZSA9IHNlcnZpY2UudXNlcnMoKS5tZXNzYWdlcygpLmxpc3QoCisgICAgICAgICAgICB1c2VySWQ9J21lJywgcGFnZVRva2VuPXBhZ2VfdG9rZW4pLmV4ZWN1dGUoKQorICAgICAgICBtc2dzLmV4dGVuZChyZXNwb25zZVsnbWVzc2FnZXMnXSkKKyAgICByZXR1cm4gbXNncwpkaWZmIC0tZ2l0IGEvdG9vbHMvYmlvbmljYmIvcHJlc3VibWl0LnB5IGIvdG9vbHMvYmlvbmljYmIvcHJlc3VibWl0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNjNmYzY2MKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9iaW9uaWNiYi9wcmVzdWJtaXQucHkKQEAgLTAsMCArMSwyMDMgQEAKKyMKKyMgQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyMKKyMgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICdMaWNlbnNlJyk7CisjIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyMgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisjCisjICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisjCisjIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gJ0FTIElTJyBCQVNJUywKKyMgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisjIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisjCitmcm9tIF9fZnV0dXJlX18gaW1wb3J0IGFic29sdXRlX2ltcG9ydAorCitpbXBvcnQganNvbgoraW1wb3J0IGxvZ2dpbmcKK2ltcG9ydCBvcy5wYXRoCitpbXBvcnQgcmUKK2ltcG9ydCByZXF1ZXN0cworCitpbXBvcnQgamVua2luc2FwaQorCitpbXBvcnQgZ2Vycml0CisKK2ltcG9ydCBjb25maWcKKworCitkZWYgaXNfdW50cnVzdGVkX2NvbW1pdHRlcihjaGFuZ2VfaWQsIHBhdGNoX3NldCk6CisgICAgIyBUT0RPKGRhbmFsYmVydCk6IE5lZWRzIHRvIGJlIGJhc2VkIG9uIHRoZSBhY2NvdW50IHRoYXQgbWFkZSB0aGUgY29tbWVudC4KKyAgICBjb21taXQgPSBnZXJyaXQuZ2V0X2NvbW1pdChjaGFuZ2VfaWQsIHBhdGNoX3NldCkKKyAgICBjb21taXR0ZXIgPSBjb21taXRbJ2NvbW1pdHRlciddWydlbWFpbCddCisgICAgcmV0dXJuIG5vdCBjb21taXR0ZXIuZW5kc3dpdGgoJ0Bnb29nbGUuY29tJykKKworCitkZWYgY29udGFpbnNfY2xlYW5zcGVjKGNoYW5nZV9pZCwgcGF0Y2hfc2V0KToKKyAgICBmaWxlcyA9IGdlcnJpdC5nZXRfZmlsZXNfZm9yX3JldmlzaW9uKGNoYW5nZV9pZCwgcGF0Y2hfc2V0KQorICAgIHJldHVybiAnQ2xlYW5TcGVjLm1rJyBpbiBbb3MucGF0aC5iYXNlbmFtZShmKSBmb3IgZiBpbiBmaWxlc10KKworCitkZWYgY29udGFpbnNfYmlvbmljYmIoY2hhbmdlX2lkLCBwYXRjaF9zZXQpOgorICAgIGZpbGVzID0gZ2Vycml0LmdldF9maWxlc19mb3JfcmV2aXNpb24oY2hhbmdlX2lkLCBwYXRjaF9zZXQpCisgICAgcmV0dXJuIGFueSgndG9vbHMvYmlvbmljYmInIGluIGYgZm9yIGYgaW4gZmlsZXMpCisKKworZGVmIHNob3VsZF9za2lwX2J1aWxkKGluZm8pOgorICAgIGlmIGluZm9bJ01lc3NhZ2VUeXBlJ10gbm90IGluICgnbmV3Y2hhbmdlJywgJ25ld3BhdGNoc2V0JywgJ2NvbW1lbnQnKToKKyAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignc2hvdWxkX3NraXBfYnVpbGQoKSBpcyBvbmx5IHZhbGlkIGZvciBuZXcgJworICAgICAgICAgICAgICAgICAgICAgICAgICdjaGFuZ2VzLCBwYXRjaCBzZXRzLCBhbmQgY29tbWl0cy4nKQorCisgICAgY2hhbmdlX2lkID0gaW5mb1snQ2hhbmdlLUlkJ10KKyAgICBwYXRjaF9zZXQgPSBpbmZvWydQYXRjaFNldCddCisKKyAgICBjaGVja3MgPSBbCisgICAgICAgIGlzX3VudHJ1c3RlZF9jb21taXR0ZXIsCisgICAgICAgIGNvbnRhaW5zX2NsZWFuc3BlYywKKyAgICAgICAgY29udGFpbnNfYmlvbmljYmIsCisgICAgXQorICAgIGZvciBjaGVjayBpbiBjaGVja3M6CisgICAgICAgIGlmIGNoZWNrKGNoYW5nZV9pZCwgcGF0Y2hfc2V0KToKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgcmV0dXJuIEZhbHNlCisKKworZGVmIGNsZWFuX3Byb2plY3QoZHJ5X3J1bik6CisgICAgdXNlcm5hbWUgPSBjb25maWcuamVua2luc19jcmVkZW50aWFsc1sndXNlcm5hbWUnXQorICAgIHBhc3N3b3JkID0gY29uZmlnLmplbmtpbnNfY3JlZGVudGlhbHNbJ3Bhc3N3b3JkJ10KKyAgICBqZW5raW5zX3VybCA9IGNvbmZpZy5qZW5raW5zX3VybAorICAgIGplbmtpbnMgPSBqZW5raW5zYXBpLmFwaS5KZW5raW5zKGplbmtpbnNfdXJsLCB1c2VybmFtZSwgcGFzc3dvcmQpCisKKyAgICBidWlsZCA9ICdjbGVhbi1iaW9uaWMtcHJlc3VibWl0JworICAgIGlmIGJ1aWxkIGluIGplbmtpbnM6CisgICAgICAgIGlmIG5vdCBkcnlfcnVuOgorICAgICAgICAgICAgam9iID0gamVua2luc1tidWlsZF0uaW52b2tlKCkKKyAgICAgICAgICAgIHVybCA9IGpvYi5nZXRfYnVpbGQoKS5iYXNldXJsCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB1cmwgPSAnRFJZX1JVTl9VUkwnCisgICAgICAgIGxvZ2dpbmcuaW5mbygnQ2xlYW5pbmc6ICVzICVzJywgYnVpbGQsIHVybCkKKyAgICBlbHNlOgorICAgICAgICBsb2dnaW5nLmVycm9yKCdGYWlsZWQgdG8gY2xlYW46IGNvdWxkIG5vdCBmaW5kIHByb2plY3QgJXMnLCBidWlsZCkKKyAgICByZXR1cm4gVHJ1ZQorCisKK2RlZiBidWlsZF9wcm9qZWN0KGdlcnJpdF9pbmZvLCBkcnlfcnVuLCBsdW5jaF90YXJnZXQ9Tm9uZSk6CisgICAgcHJvamVjdF90b19qZW5raW5zX21hcCA9IHsKKyAgICAgICAgJ3BsYXRmb3JtL2Jpb25pYyc6ICdiaW9uaWMtcHJlc3VibWl0JywKKyAgICAgICAgJ3BsYXRmb3JtL2J1aWxkJzogJ2Jpb25pYy1wcmVzdWJtaXQnLAorICAgICAgICAncGxhdGZvcm0vZXh0ZXJuYWwvamVtYWxsb2MnOiAnYmlvbmljLXByZXN1Ym1pdCcsCisgICAgICAgICdwbGF0Zm9ybS9leHRlcm5hbC9saWJjeHgnOiAnYmlvbmljLXByZXN1Ym1pdCcsCisgICAgICAgICdwbGF0Zm9ybS9leHRlcm5hbC9saWJjeHhhYmknOiAnYmlvbmljLXByZXN1Ym1pdCcsCisgICAgICAgICdwbGF0Zm9ybS9leHRlcm5hbC9jb21waWxlci1ydCc6ICdiaW9uaWMtcHJlc3VibWl0JywKKyAgICB9CisKKyAgICB1c2VybmFtZSA9IGNvbmZpZy5qZW5raW5zX2NyZWRlbnRpYWxzWyd1c2VybmFtZSddCisgICAgcGFzc3dvcmQgPSBjb25maWcuamVua2luc19jcmVkZW50aWFsc1sncGFzc3dvcmQnXQorICAgIGplbmtpbnNfdXJsID0gY29uZmlnLmplbmtpbnNfdXJsCisgICAgamVua2lucyA9IGplbmtpbnNhcGkuYXBpLkplbmtpbnMoamVua2luc191cmwsIHVzZXJuYW1lLCBwYXNzd29yZCkKKworICAgIHByb2plY3QgPSBnZXJyaXRfaW5mb1snUHJvamVjdCddCisgICAgY2hhbmdlX2lkID0gZ2Vycml0X2luZm9bJ0NoYW5nZS1JZCddCisgICAgaWYgcHJvamVjdCBpbiBwcm9qZWN0X3RvX2plbmtpbnNfbWFwOgorICAgICAgICBidWlsZCA9IHByb2plY3RfdG9famVua2luc19tYXBbcHJvamVjdF0KKyAgICBlbHNlOgorICAgICAgICBidWlsZCA9ICdiaW9uaWMtcHJlc3VibWl0JworCisgICAgaWYgYnVpbGQgaW4gamVua2luczoKKyAgICAgICAgcHJvamVjdF9wYXRoID0gJy8nLmpvaW4ocHJvamVjdC5zcGxpdCgnLycpWzE6XSkKKyAgICAgICAgaWYgbm90IHByb2plY3RfcGF0aDoKKyAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcignYm9ndXMgcHJvamVjdDoge30nLmZvcm1hdChwcm9qZWN0KSkKKyAgICAgICAgaWYgcHJvamVjdF9wYXRoLnN0YXJ0c3dpdGgoJ3BsYXRmb3JtLycpOgorICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCdCYWQgcHJvamVjdCBtYXBwaW5nOiB7fSA9PiB7fScuZm9ybWF0KAorICAgICAgICAgICAgICAgIHByb2plY3QsIHByb2plY3RfcGF0aCkpCisgICAgICAgIHJlZiA9IGdlcnJpdC5yZWZfZm9yX2NoYW5nZShjaGFuZ2VfaWQpCisgICAgICAgIHBhcmFtcyA9IHsKKyAgICAgICAgICAgICdSRUYnOiByZWYsCisgICAgICAgICAgICAnQ0hBTkdFX0lEJzogY2hhbmdlX2lkLAorICAgICAgICAgICAgJ1BST0pFQ1QnOiBwcm9qZWN0X3BhdGgKKyAgICAgICAgfQorICAgICAgICBpZiBsdW5jaF90YXJnZXQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBwYXJhbXNbJ0xVTkNIX1RBUkdFVCddID0gbHVuY2hfdGFyZ2V0CisgICAgICAgIGlmIG5vdCBkcnlfcnVuOgorICAgICAgICAgICAgXyA9IGplbmtpbnNbYnVpbGRdLmludm9rZShidWlsZF9wYXJhbXM9cGFyYW1zKQorICAgICAgICAgICAgIyBodHRwczovL2lzc3Vlcy5qZW5raW5zLWNpLm9yZy9icm93c2UvSkVOS0lOUy0yNzI1NgorICAgICAgICAgICAgIyB1cmwgPSBqb2IuZ2V0X2J1aWxkKCkuYmFzZXVybAorICAgICAgICAgICAgdXJsID0gJ1VSTCBVTkFWQUlMQUJMRScKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHVybCA9ICdEUllfUlVOX1VSTCcKKyAgICAgICAgbG9nZ2luZy5pbmZvKCdCdWlsZGluZzogJXMgPT4gJXMgJXMgJXMnLCBwcm9qZWN0LCBidWlsZCwgdXJsLAorICAgICAgICAgICAgICAgICAgICAgY2hhbmdlX2lkKQorICAgIGVsc2U6CisgICAgICAgIGxvZ2dpbmcuZXJyb3IoJ1Vua25vd24gYnVpbGQ6ICVzID0+ICVzICVzJywgcHJvamVjdCwgYnVpbGQsIGNoYW5nZV9pZCkKKyAgICByZXR1cm4gVHJ1ZQorCisKK2RlZiBoYW5kbGVfY2hhbmdlKGdlcnJpdF9pbmZvLCBfLCBkcnlfcnVuKToKKyAgICBpZiBzaG91bGRfc2tpcF9idWlsZChnZXJyaXRfaW5mbyk6CisgICAgICAgIHJldHVybiBUcnVlCisgICAgcmV0dXJuIGJ1aWxkX3Byb2plY3QoZ2Vycml0X2luZm8sIGRyeV9ydW4pCisKKworZGVmIGRyb3BfcmVqZWN0aW9uKGdlcnJpdF9pbmZvLCBkcnlfcnVuKToKKyAgICByZXF1ZXN0X2RhdGEgPSB7CisgICAgICAgICdjaGFuZ2VpZCc6IGdlcnJpdF9pbmZvWydDaGFuZ2UtSWQnXSwKKyAgICAgICAgJ3BhdGNoc2V0JzogZ2Vycml0X2luZm9bJ1BhdGNoU2V0J10KKyAgICB9CisgICAgdXJsID0gJ3t9L3t9Jy5mb3JtYXQoY29uZmlnLmJ1aWxkX2xpc3RlbmVyX3VybCwgJ2Ryb3AtcmVqZWN0aW9uJykKKyAgICBoZWFkZXJzID0geydDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PVVURi04J30KKyAgICBpZiBub3QgZHJ5X3J1bjoKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmVxdWVzdHMucG9zdCh1cmwsIGhlYWRlcnM9aGVhZGVycywgZGF0YT1qc29uLmR1bXBzKHJlcXVlc3RfZGF0YSkpCisgICAgICAgIGV4Y2VwdCByZXF1ZXN0cy5leGNlcHRpb25zLkNvbm5lY3Rpb25FcnJvciBhcyBleDoKKyAgICAgICAgICAgIGxvZ2dpbmcuZXJyb3IoJ0ZhaWxlZCB0byBkcm9wIHJlamVjdGlvbjogJXMnLCBleCkKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgIGxvZ2dpbmcuaW5mbygnRHJvcHBlZCByZWplY3Rpb246ICVzJywgZ2Vycml0X2luZm9bJ0NoYW5nZS1JZCddKQorICAgIHJldHVybiBUcnVlCisKKworZGVmIGhhbmRsZV9jb21tZW50KGdlcnJpdF9pbmZvLCBib2R5LCBkcnlfcnVuKToKKyAgICBpZiAnVmVyaWZpZWQrMScgaW4gYm9keToKKyAgICAgICAgZHJvcF9yZWplY3Rpb24oZ2Vycml0X2luZm8sIGRyeV9ydW4pCisKKyAgICBpZiBzaG91bGRfc2tpcF9idWlsZChnZXJyaXRfaW5mbyk6CisgICAgICAgIHJldHVybiBUcnVlCisKKyAgICBjb21tYW5kX21hcCA9IHsKKyAgICAgICAgJ2NsZWFuJzogbGFtYmRhOiBjbGVhbl9wcm9qZWN0KGRyeV9ydW4pLAorICAgICAgICAncmV0cnknOiBsYW1iZGE6IGJ1aWxkX3Byb2plY3QoZ2Vycml0X2luZm8sIGRyeV9ydW4pLAorCisgICAgICAgICdhcm0nOiBsYW1iZGE6IGJ1aWxkX3Byb2plY3QoZ2Vycml0X2luZm8sIGRyeV9ydW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHVuY2hfdGFyZ2V0PSdhb3NwX2FybS1lbmcnKSwKKyAgICAgICAgJ2FhcmNoNjQnOiBsYW1iZGE6IGJ1aWxkX3Byb2plY3QoZ2Vycml0X2luZm8sIGRyeV9ydW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGx1bmNoX3RhcmdldD0nYW9zcF9hcm02NC1lbmcnKSwKKyAgICAgICAgJ21pcHMnOiBsYW1iZGE6IGJ1aWxkX3Byb2plY3QoZ2Vycml0X2luZm8sIGRyeV9ydW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGx1bmNoX3RhcmdldD0nYW9zcF9taXBzLWVuZycpLAorICAgICAgICAnbWlwczY0JzogbGFtYmRhOiBidWlsZF9wcm9qZWN0KGdlcnJpdF9pbmZvLCBkcnlfcnVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGx1bmNoX3RhcmdldD0nYW9zcF9taXBzNjQtZW5nJyksCisgICAgICAgICd4ODYnOiBsYW1iZGE6IGJ1aWxkX3Byb2plY3QoZ2Vycml0X2luZm8sIGRyeV9ydW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHVuY2hfdGFyZ2V0PSdhb3NwX3g4Ni1lbmcnKSwKKyAgICAgICAgJ3g4Nl82NCc6IGxhbWJkYTogYnVpbGRfcHJvamVjdChnZXJyaXRfaW5mbywgZHJ5X3J1biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsdW5jaF90YXJnZXQ9J2Fvc3BfeDg2XzY0LWVuZycpLAorICAgIH0KKworICAgIGRlZiBoYW5kbGVfdW5rbm93bl9jb21tYW5kKCk6CisgICAgICAgIHBhc3MgICAgIyBUT0RPKGRhbmFsYmVydCk6IHNob3VsZCBjb21wbGFpbiB0byB0aGUgY29tbWVudGVyLgorCisgICAgY29tbWFuZHMgPSBbbWF0Y2guZ3JvdXAoMSkuc3RyaXAoKSBmb3IgbWF0Y2ggaW4KKyAgICAgICAgICAgICAgICByZS5maW5kaXRlcihyJ15iaW9uaWNiYjpccyooLispJCcsIGJvZHksIGZsYWdzPXJlLk1VTFRJTElORSldCisKKyAgICBmb3IgY29tbWFuZCBpbiBjb21tYW5kczoKKyAgICAgICAgaWYgY29tbWFuZCBpbiBjb21tYW5kX21hcDoKKyAgICAgICAgICAgIGNvbW1hbmRfbWFwW2NvbW1hbmRdKCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGhhbmRsZV91bmtub3duX2NvbW1hbmQoKQorCisgICAgcmV0dXJuIFRydWUKKworCitkZWYgc2tpcF9oYW5kbGVyKGdlcnJpdF9pbmZvLCBfLCBfXyk6CisgICAgbG9nZ2luZy5pbmZvKCdTa2lwcGluZyAlczogJXMnLCBnZXJyaXRfaW5mb1snTWVzc2FnZVR5cGUnXSwKKyAgICAgICAgICAgICAgICAgZ2Vycml0X2luZm9bJ0NoYW5nZS1JZCddKQorICAgIHJldHVybiBUcnVlCmRpZmYgLS1naXQgYS90b29scy9iaW9uaWNiYi90YXNrcy5weSBiL3Rvb2xzL2Jpb25pY2JiL3Rhc2tzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRjMzlhOTgKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9iaW9uaWNiYi90YXNrcy5weQpAQCAtMCwwICsxLDEwOCBAQAorIworIyBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEFuZHJvaWQgT3BlbiBTb3VyY2UgUHJvamVjdAorIworIyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgJ0xpY2Vuc2UnKTsKKyMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgorIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKKyMKKyMgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyMKKyMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQorIyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiAnQVMgSVMnIEJBU0lTLAorIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KKyMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAorIyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KKyMKK2ltcG9ydCBodHRwbGliCitpbXBvcnQgaHR0cGxpYjIKK2ltcG9ydCBsb2dnaW5nCitpbXBvcnQgcmUKK2ltcG9ydCBzb2NrZXQKKworaW1wb3J0IGFwaWNsaWVudC5lcnJvcnMKKworaW1wb3J0IGdlcnJpdAoraW1wb3J0IGdtYWlsCitpbXBvcnQgcHJlc3VibWl0CisKKworZGVmIGdldF9nZXJyaXRfaW5mbyhib2R5KToKKyAgICBpbmZvID0ge30KKyAgICBnZXJyaXRfcGF0dGVybiA9IHInXkdlcnJpdC0oXFMrKTogKC4rKSQnCisgICAgZm9yIG1hdGNoIGluIHJlLmZpbmRpdGVyKGdlcnJpdF9wYXR0ZXJuLCBib2R5LCBmbGFncz1yZS5NVUxUSUxJTkUpOgorICAgICAgICBpbmZvW21hdGNoLmdyb3VwKDEpXSA9IG1hdGNoLmdyb3VwKDIpLnN0cmlwKCkKKyAgICByZXR1cm4gaW5mbworCisKK2RlZiBwcm9jZXNzX21lc3NhZ2UobXNnLCBkcnlfcnVuKToKKyAgICB0cnk6CisgICAgICAgIGJvZHkgPSBnbWFpbC5nZXRfYm9keShtc2cpCisgICAgICAgIGdlcnJpdF9pbmZvID0gZ2V0X2dlcnJpdF9pbmZvKGJvZHkpCisgICAgICAgIGlmIG5vdCBnZXJyaXRfaW5mbzoKKyAgICAgICAgICAgIGxvZ2dpbmcuZmF0YWwoJ05vIEdlcnJpdCBpbmZvIGZvdW5kOiAlcycsIG1zZy5zdWJqZWN0KQorICAgICAgICBtc2dfdHlwZSA9IGdlcnJpdF9pbmZvWydNZXNzYWdlVHlwZSddCisgICAgICAgIGhhbmRsZXJzID0geworICAgICAgICAgICAgJ2NvbW1lbnQnOiBwcmVzdWJtaXQuaGFuZGxlX2NvbW1lbnQsCisgICAgICAgICAgICAnbmV3Y2hhbmdlJzogcHJlc3VibWl0LmhhbmRsZV9jaGFuZ2UsCisgICAgICAgICAgICAnbmV3cGF0Y2hzZXQnOiBwcmVzdWJtaXQuaGFuZGxlX2NoYW5nZSwKKworICAgICAgICAgICAgJ2FiYW5kb24nOiBwcmVzdWJtaXQuc2tpcF9oYW5kbGVyLAorICAgICAgICAgICAgJ21lcmdlLWZhaWxlZCc6IHByZXN1Ym1pdC5za2lwX2hhbmRsZXIsCisgICAgICAgICAgICAnbWVyZ2VkJzogcHJlc3VibWl0LnNraXBfaGFuZGxlciwKKyAgICAgICAgICAgICdyZXN0b3JlJzogcHJlc3VibWl0LnNraXBfaGFuZGxlciwKKyAgICAgICAgICAgICdyZXZlcnQnOiBwcmVzdWJtaXQuc2tpcF9oYW5kbGVyLAorICAgICAgICB9CisKKyAgICAgICAgbWVzc2FnZV90eXBlID0gZ2Vycml0X2luZm9bJ01lc3NhZ2VUeXBlJ10KKyAgICAgICAgaWYgbWVzc2FnZV90eXBlIGluIGhhbmRsZXJzOgorICAgICAgICAgICAgcmV0dXJuIGhhbmRsZXJzW21lc3NhZ2VfdHlwZV0oZ2Vycml0X2luZm8sIGJvZHksIGRyeV9ydW4pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnaW5nLndhcm5pbmcoJ01lc3NhZ2VUeXBlICVzIHVuaGFuZGxlZC4nLCBtc2dfdHlwZSkKKyAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgZXhjZXB0IE5vdEltcGxlbWVudGVkRXJyb3IgYXMgZXg6CisgICAgICAgIGxvZ2dpbmcuZXJyb3IoIiVzIiwgZXgpCisgICAgICAgIHJldHVybiBGYWxzZQorICAgIGV4Y2VwdCBnZXJyaXQuR2Vycml0RXJyb3IgYXMgZXg6CisgICAgICAgIGNoYW5nZV9pZCA9IGdlcnJpdF9pbmZvWydDaGFuZ2UtSWQnXQorICAgICAgICBsb2dnaW5nLmVycm9yKCdHZXJyaXQgZXJyb3IgKCVkKTogJXMgJXMnLCBleC5jb2RlLCBjaGFuZ2VfaWQsIGV4LnVybCkKKyAgICAgICAgcmV0dXJuIGV4LmNvZGUgPT0gNDA0CisKKworZGVmIGdldF9hbmRfcHJvY2Vzc19qb2JzKCk6CisgICAgZHJ5X3J1biA9IEZhbHNlCisKKyAgICBnbWFpbF9zZXJ2aWNlID0gZ21haWwuYnVpbGRfc2VydmljZSgpCisgICAgbXNnX3NlcnZpY2UgPSBnbWFpbF9zZXJ2aWNlLnVzZXJzKCkubWVzc2FnZXMoKQorCisgICAgIyBXZSBydW4gaW4gYSBsb29wIGJlY2F1c2Ugc29tZSBvZiB0aGUgZXhjZXB0aW9ucyB0aHJvd24gaGVyZSBtZWFuIHdlIGp1c3QKKyAgICAjIG5lZWQgdG8gcmV0cnkuIEZvciBlcnJvcnMgd2hlcmUgd2Ugc2hvdWxkIGJhY2sgb2ZmICh0eXBpY2FsbHkgYW55IGdtYWlsCisgICAgIyBBUEkgZXhjZXB0aW9ucyksIHByb2Nlc3NfY2hhbmdlcyBjYXRjaGVzIHRoZSBlcnJvciBhbmQgcmV0dXJucyBub3JtYWxseS4KKyAgICB3aGlsZSBUcnVlOgorICAgICAgICB0cnk6CisgICAgICAgICAgICBwcm9jZXNzX2NoYW5nZXMoZ21haWxfc2VydmljZSwgbXNnX3NlcnZpY2UsIGRyeV9ydW4pCisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgZXhjZXB0IGh0dHBsaWIuQmFkU3RhdHVzTGluZToKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgZXhjZXB0IGh0dHBsaWIyLlNlcnZlck5vdEZvdW5kRXJyb3I6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3I6CisgICAgICAgICAgICBwYXNzCisKKworZGVmIHByb2Nlc3NfY2hhbmdlcyhnbWFpbF9zZXJ2aWNlLCBtc2dfc2VydmljZSwgZHJ5X3J1bik6CisgICAgdHJ5OgorICAgICAgICBsYWJlbHMgPSBnbWFpbF9zZXJ2aWNlLnVzZXJzKCkubGFiZWxzKCkubGlzdCh1c2VySWQ9J21lJykuZXhlY3V0ZSgpCisgICAgICAgIGlmIG5vdCBsYWJlbHNbJ2xhYmVscyddOgorICAgICAgICAgICAgbG9nZ2luZy5lcnJvcignQ291bGQgbm90IHJldHJpZXZlIEdtYWlsIGxhYmVscycpCisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgbGFiZWxfaWQgPSBnbWFpbC5nZXRfZ2Vycml0X2xhYmVsKGxhYmVsc1snbGFiZWxzJ10pCisgICAgICAgIGlmIG5vdCBsYWJlbF9pZDoKKyAgICAgICAgICAgIGxvZ2dpbmcuZXJyb3IoJ0NvdWxkIG5vdCBmaW5kIGdlcnJpdCBsYWJlbCcpCisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBmb3IgbXNnIGluIGdtYWlsLmdldF9hbGxfbWVzc2FnZXMoZ21haWxfc2VydmljZSwgbGFiZWxfaWQpOgorICAgICAgICAgICAgbXNnID0gbXNnX3NlcnZpY2UuZ2V0KHVzZXJJZD0nbWUnLCBpZD1tc2dbJ2lkJ10pLmV4ZWN1dGUoKQorICAgICAgICAgICAgaWYgcHJvY2Vzc19tZXNzYWdlKG1zZywgZHJ5X3J1bikgYW5kIG5vdCBkcnlfcnVuOgorICAgICAgICAgICAgICAgIG1zZ19zZXJ2aWNlLnRyYXNoKHVzZXJJZD0nbWUnLCBpZD1tc2dbJ2lkJ10pLmV4ZWN1dGUoKQorICAgIGV4Y2VwdCBhcGljbGllbnQuZXJyb3JzLkh0dHBFcnJvciBhcyBleDoKKyAgICAgICAgbG9nZ2luZy5lcnJvcignQVBJIENsaWVudCBIVFRQIGVycm9yOiAlcycsIGV4KQpkaWZmIC0tZ2l0IGEvdG9vbHMvYmlvbmljYmIvdGVzdF90YXNrcy5weSBiL3Rvb2xzL2Jpb25pY2JiL3Rlc3RfdGFza3MucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjM2Y2JhZAotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL2Jpb25pY2JiL3Rlc3RfdGFza3MucHkKQEAgLTAsMCArMSw5NCBAQAoraW1wb3J0IG1vY2sKK2ltcG9ydCB1bml0dGVzdAorCitpbXBvcnQgcHJlc3VibWl0CisKKworY2xhc3MgVGVzdFNob3VsZFNraXBCdWlsZCh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgQG1vY2sucGF0Y2goJ3ByZXN1Ym1pdC5jb250YWluc19iaW9uaWNiYicpCisgICAgQG1vY2sucGF0Y2goJ3ByZXN1Ym1pdC5jb250YWluc19jbGVhbnNwZWMnKQorICAgIEBtb2NrLnBhdGNoKCdnZXJyaXQuZ2V0X2NvbW1pdCcpCisgICAgZGVmIHRlc3RfYWNjZXB0c19nb29nbGVycyhzZWxmLCBtb2NrX2NvbW1pdCwgKm90aGVyX2NoZWNrcyk6CisgICAgICAgIG1vY2tfY29tbWl0LnJldHVybl92YWx1ZSA9IHsKKyAgICAgICAgICAgICdjb21taXR0ZXInOiB7J2VtYWlsJzogJ2dvb2dsZXJAZ29vZ2xlLmNvbSd9CisgICAgICAgIH0KKworICAgICAgICBmb3Igb3RoZXJfY2hlY2sgaW4gb3RoZXJfY2hlY2tzOgorICAgICAgICAgICAgb3RoZXJfY2hlY2sucmV0dXJuX3ZhbHVlID0gRmFsc2UKKworICAgICAgICBmb3IgbWVzc2FnZV90eXBlIGluICgnbmV3Y2hhbmdlJywgJ25ld3BhdGNoc2V0JywgJ2NvbW1lbnQnKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UocHJlc3VibWl0LnNob3VsZF9za2lwX2J1aWxkKHsKKyAgICAgICAgICAgICAgICAnTWVzc2FnZVR5cGUnOiBtZXNzYWdlX3R5cGUsCisgICAgICAgICAgICAgICAgJ0NoYW5nZS1JZCc6ICcnLAorICAgICAgICAgICAgICAgICdQYXRjaFNldCc6ICcnLAorICAgICAgICAgICAgfSkpCisKKyAgICBAbW9jay5wYXRjaCgncHJlc3VibWl0LmNvbnRhaW5zX2Jpb25pY2JiJykKKyAgICBAbW9jay5wYXRjaCgncHJlc3VibWl0LmNvbnRhaW5zX2NsZWFuc3BlYycpCisgICAgQG1vY2sucGF0Y2goJ2dlcnJpdC5nZXRfY29tbWl0JykKKyAgICBkZWYgdGVzdF9yZWplY3RzX2dvb2dsaXNoX2RvbWFpbnMoc2VsZiwgbW9ja19jb21taXQsICpvdGhlcl9jaGVja3MpOgorICAgICAgICBtb2NrX2NvbW1pdC5yZXR1cm5fdmFsdWUgPSB7CisgICAgICAgICAgICAnY29tbWl0dGVyJzogeydlbWFpbCc6ICdmYWtlZ29vZ2xlckBnb29nbGUuY29tLmZha2UuY29tJ30KKyAgICAgICAgfQorCisgICAgICAgIGZvciBvdGhlcl9jaGVjayBpbiBvdGhlcl9jaGVja3M6CisgICAgICAgICAgICBvdGhlcl9jaGVjay5yZXR1cm5fdmFsdWUgPSBGYWxzZQorCisgICAgICAgIGZvciBtZXNzYWdlX3R5cGUgaW4gKCduZXdjaGFuZ2UnLCAnbmV3cGF0Y2hzZXQnLCAnY29tbWVudCcpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHByZXN1Ym1pdC5zaG91bGRfc2tpcF9idWlsZCh7CisgICAgICAgICAgICAgICAgJ01lc3NhZ2VUeXBlJzogbWVzc2FnZV90eXBlLAorICAgICAgICAgICAgICAgICdDaGFuZ2UtSWQnOiAnJywKKyAgICAgICAgICAgICAgICAnUGF0Y2hTZXQnOiAnJywKKyAgICAgICAgICAgIH0pKQorCisgICAgQG1vY2sucGF0Y2goJ3ByZXN1Ym1pdC5jb250YWluc19iaW9uaWNiYicpCisgICAgQG1vY2sucGF0Y2goJ3ByZXN1Ym1pdC5jb250YWluc19jbGVhbnNwZWMnKQorICAgIEBtb2NrLnBhdGNoKCdnZXJyaXQuZ2V0X2NvbW1pdCcpCisgICAgZGVmIHRlc3RfcmVqZWN0c19ub25fZ29vZ2xlcnMoc2VsZiwgbW9ja19jb21taXQsICpvdGhlcl9jaGVja3MpOgorICAgICAgICBtb2NrX2NvbW1pdC5yZXR1cm5fdmFsdWUgPSB7CisgICAgICAgICAgICAnY29tbWl0dGVyJzogeydlbWFpbCc6ICdqb2huZG9lQGV4YW1wbGUuY29tJ30KKyAgICAgICAgfQorCisgICAgICAgIGZvciBvdGhlcl9jaGVjayBpbiBvdGhlcl9jaGVja3M6CisgICAgICAgICAgICBvdGhlcl9jaGVjay5yZXR1cm5fdmFsdWUgPSBGYWxzZQorCisgICAgICAgIGZvciBtZXNzYWdlX3R5cGUgaW4gKCduZXdjaGFuZ2UnLCAnbmV3cGF0Y2hzZXQnLCAnY29tbWVudCcpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHByZXN1Ym1pdC5zaG91bGRfc2tpcF9idWlsZCh7CisgICAgICAgICAgICAgICAgJ01lc3NhZ2VUeXBlJzogbWVzc2FnZV90eXBlLAorICAgICAgICAgICAgICAgICdDaGFuZ2UtSWQnOiAnJywKKyAgICAgICAgICAgICAgICAnUGF0Y2hTZXQnOiAnJywKKyAgICAgICAgICAgIH0pKQorCisgICAgQG1vY2sucGF0Y2goJ3ByZXN1Ym1pdC5jb250YWluc19iaW9uaWNiYicpCisgICAgQG1vY2sucGF0Y2goJ3ByZXN1Ym1pdC5pc191bnRydXN0ZWRfY29tbWl0dGVyJykKKyAgICBAbW9jay5wYXRjaCgnZ2Vycml0LmdldF9maWxlc19mb3JfcmV2aXNpb24nKQorICAgIGRlZiB0ZXN0X3NraXBzX2NsZWFuc3BlY3Moc2VsZiwgbW9ja19maWxlcywgKm90aGVyX2NoZWNrcyk6CisgICAgICAgIG1vY2tfZmlsZXMucmV0dXJuX3ZhbHVlID0gWydmb28vQ2xlYW5TcGVjLm1rJ10KKyAgICAgICAgZm9yIG90aGVyX2NoZWNrIGluIG90aGVyX2NoZWNrczoKKyAgICAgICAgICAgIG90aGVyX2NoZWNrLnJldHVybl92YWx1ZSA9IEZhbHNlCisKKyAgICAgICAgZm9yIG1lc3NhZ2VfdHlwZSBpbiAoJ25ld2NoYW5nZScsICduZXdwYXRjaHNldCcsICdjb21tZW50Jyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUocHJlc3VibWl0LnNob3VsZF9za2lwX2J1aWxkKHsKKyAgICAgICAgICAgICAgICAnTWVzc2FnZVR5cGUnOiBtZXNzYWdlX3R5cGUsCisgICAgICAgICAgICAgICAgJ0NoYW5nZS1JZCc6ICcnLAorICAgICAgICAgICAgICAgICdQYXRjaFNldCc6ICcnLAorICAgICAgICAgICAgfSkpCisKKyAgICBAbW9jay5wYXRjaCgncHJlc3VibWl0LmNvbnRhaW5zX2NsZWFuc3BlYycpCisgICAgQG1vY2sucGF0Y2goJ3ByZXN1Ym1pdC5pc191bnRydXN0ZWRfY29tbWl0dGVyJykKKyAgICBAbW9jay5wYXRjaCgnZ2Vycml0LmdldF9maWxlc19mb3JfcmV2aXNpb24nKQorICAgIGRlZiB0ZXN0X3NraXBzX2Jpb25pY2JiKHNlbGYsIG1vY2tfZmlsZXMsICpvdGhlcl9jaGVja3MpOgorICAgICAgICBtb2NrX2ZpbGVzLnJldHVybl92YWx1ZSA9IFsndG9vbHMvYmlvbmljYmIvY29tbW9uLnNoJ10KKyAgICAgICAgZm9yIG90aGVyX2NoZWNrIGluIG90aGVyX2NoZWNrczoKKyAgICAgICAgICAgIG90aGVyX2NoZWNrLnJldHVybl92YWx1ZSA9IEZhbHNlCisKKyAgICAgICAgZm9yIG1lc3NhZ2VfdHlwZSBpbiAoJ25ld2NoYW5nZScsICduZXdwYXRjaHNldCcsICdjb21tZW50Jyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUocHJlc3VibWl0LnNob3VsZF9za2lwX2J1aWxkKHsKKyAgICAgICAgICAgICAgICAnTWVzc2FnZVR5cGUnOiBtZXNzYWdlX3R5cGUsCisgICAgICAgICAgICAgICAgJ0NoYW5nZS1JZCc6ICcnLAorICAgICAgICAgICAgICAgICdQYXRjaFNldCc6ICcnLAorICAgICAgICAgICAgfSkpCisKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKCkKZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL0FuZHJvaWQubWsgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9BbmRyb2lkLm1rCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc1ZGJhNzEKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9BbmRyb2lkLm1rCkBAIC0wLDAgKzEsOTcgQEAKKyMKKyMgQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBBbmRyb2lkIE9wZW4gU291cmNlIFByb2plY3QKKyMKKyMgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisjIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KKyMgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CisjCisjICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCisjCisjIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKKyMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyMgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisjIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKKyMgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCisjCisKK2NvbW1vbl9jcHBmbGFncyA6PSAtV2FsbCAtV2V4dHJhIC1XdW51c2VkIC1XZXJyb3IgLVdvbGQtc3R5bGUtY2FzdAorCitMT0NBTF9QQVRIIDo9ICQoY2FsbCBteS1kaXIpCisKK2luY2x1ZGUgJChDTEVBUl9WQVJTKQorCitMT0NBTF9DUFBfRVhURU5TSU9OIDo9IC5jYworCitMT0NBTF9TUkNfRklMRVMgOj0gXAorICBzcmMvZGVidWcuY2MgXAorICBzcmMvZGVsdGFfZW5jb2Rlci5jYyBcCisgIHNyYy9lbGZfZmlsZS5jYyBcCisgIHNyYy9wYWNrZXIuY2MgXAorICBzcmMvc2xlYjEyOC5jYyBcCisKK0xPQ0FMX1NUQVRJQ19MSUJSQVJJRVMgOj0gbGliZWxmCitMT0NBTF9DX0lOQ0xVREVTIDo9IGV4dGVybmFsL2VsZnV0aWxzL3NyYy9saWJlbGYKK0xPQ0FMX01PRFVMRSA6PSBsaWJfcmVsb2NhdGlvbl9wYWNrZXIKKworTE9DQUxfQ1BQRkxBR1MgOj0gJChjb21tb25fY3BwZmxhZ3MpCisKK0xPQ0FMX0FERElUSU9OQUxfREVQRU5ERU5DSUVTIDo9ICQoTE9DQUxfUEFUSCkvQW5kcm9pZC5taworCitpbmNsdWRlICQoQlVJTERfSE9TVF9TVEFUSUNfTElCUkFSWSkKKworaW5jbHVkZSAkKENMRUFSX1ZBUlMpCisKK0xPQ0FMX0NQUF9FWFRFTlNJT04gOj0gLmNjCisKK0xPQ0FMX1NSQ19GSUxFUyA6PSBzcmMvbWFpbi5jYworTE9DQUxfU1RBVElDX0xJQlJBUklFUyA6PSBsaWJfcmVsb2NhdGlvbl9wYWNrZXIgbGliZWxmCisKKyMgU3RhdGljYWxseSBsaW5raW5nIGxpYmMrKyB0byBtYWtlIGl0IHdvcmsgZnJvbSBwcmVidWlsdHMKK0xPQ0FMX0NYWF9TVEwgOj0gbGliYysrX3N0YXRpYworTE9DQUxfQ19JTkNMVURFUyA6PSBleHRlcm5hbC9lbGZ1dGlscy9zcmMvbGliZWxmIGxpYm5hdGl2ZWhlbHBlci9pbmNsdWRlCisKK0xPQ0FMX01PRFVMRSA6PSByZWxvY2F0aW9uX3BhY2tlcgorCitMT0NBTF9DUFBGTEFHUyA6PSAkKGNvbW1vbl9jcHBmbGFncykKKworTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChMT0NBTF9QQVRIKS9BbmRyb2lkLm1rCisKK2luY2x1ZGUgJChCVUlMRF9IT1NUX0VYRUNVVEFCTEUpCisKK2luY2x1ZGUgJChDTEVBUl9WQVJTKQorCitMT0NBTF9DUFBfRVhURU5TSU9OIDo9IC5jYworCitMT0NBTF9TUkNfRklMRVMgOj0gXAorICBzcmMvZGVidWdfdW5pdHRlc3QuY2MgXAorICBzcmMvZGVsdGFfZW5jb2Rlcl91bml0dGVzdC5jYyBcCisgIHNyYy9lbGZfZmlsZV91bml0dGVzdC5jYyBcCisgIHNyYy9zbGViMTI4X3VuaXR0ZXN0LmNjIFwKKyAgc3JjL3BhY2tlcl91bml0dGVzdC5jYyBcCisKK0xPQ0FMX1NUQVRJQ19MSUJSQVJJRVMgOj0gbGliX3JlbG9jYXRpb25fcGFja2VyIGxpYmVsZgorTE9DQUxfQ19JTkNMVURFUyA6PSBleHRlcm5hbC9lbGZ1dGlscy9zcmMvbGliZWxmCisKK0xPQ0FMX0NQUEZMQUdTIDo9ICQoY29tbW9uX2NwcGZsYWdzKQorCitMT0NBTF9NT0RVTEUgOj0gcmVsb2NhdGlvbl9wYWNrZXJfdW5pdF90ZXN0cworTE9DQUxfQURESVRJT05BTF9ERVBFTkRFTkNJRVMgOj0gJChMT0NBTF9QQVRIKS9BbmRyb2lkLm1rCisKK2luY2x1ZGUgJChCVUlMRF9IT1NUX05BVElWRV9URVNUKQorCisjICQoMSkgbGlicmFyeSBuYW1lCitkZWZpbmUgY29weS10ZXN0LWxpYnJhcnkKK2luY2x1ZGUgJChDTEVBUl9WQVJTKQorTE9DQUxfSVNfSE9TVF9NT0RVTEUgOj0gdHJ1ZQorTE9DQUxfTU9EVUxFIDo9ICQoMSkKK0xPQ0FMX01PRFVMRV9DTEFTUyA6PSBTSEFSRURfTElCUkFSSUVTCitMT0NBTF9NT0RVTEVfUEFUSCA6PSAkKEhPU1RfT1VUX0VYRUNVVEFCTEVTKQorTE9DQUxfU1RSSVBfTU9EVUxFIDo9IGZhbHNlCitMT0NBTF9TUkNfRklMRVMgOj0gdGVzdF9kYXRhLyQoMSkKK2luY2x1ZGUgJChCVUlMRF9QUkVCVUlMVCkKK2VuZGVmCisKKyQoZXZhbCAkKGNhbGwgY29weS10ZXN0LWxpYnJhcnksZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTMyLnNvKSkKKyQoZXZhbCAkKGNhbGwgY29weS10ZXN0LWxpYnJhcnksZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTMyX3BhY2tlZC5zbykpCiskKGV2YWwgJChjYWxsIGNvcHktdGVzdC1saWJyYXJ5LGVsZl9maWxlX3VuaXR0ZXN0X3JlbG9jc19hcm02NC5zbykpCiskKGV2YWwgJChjYWxsIGNvcHktdGVzdC1saWJyYXJ5LGVsZl9maWxlX3VuaXR0ZXN0X3JlbG9jc19hcm02NF9wYWNrZWQuc28pKQpkaWZmIC0tZ2l0IGEvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvTElDRU5TRSBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL0xJQ0VOU0UKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTcyYmIyZQotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL0xJQ0VOU0UKQEAgLTAsMCArMSwyNyBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLworLy8gUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisvLyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisvLyBtZXQ6CisvLworLy8gICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorLy8gbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorLy8gICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisvLyBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisvLyBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisvLyBkaXN0cmlidXRpb24uCisvLyAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKy8vIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisvLyB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorLy8KKy8vIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKy8vICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisvLyBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKy8vIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisvLyBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKy8vIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKy8vIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorLy8gREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisvLyBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisvLyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKy8vIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZGVidWcuY2MgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZGVidWcuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjlkN2FiMAotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWJ1Zy5jYwpAQCAtMCwwICsxLDU1IEBACisvLyBDb3B5cmlnaHQgMjAxNCBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKyNpbmNsdWRlICJkZWJ1Zy5oIgorCisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8aW9zdHJlYW0+CisjaW5jbHVkZSA8c3RyaW5nPgorCituYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIgeworCisvLyBDb25zdHJ1Y3QgYSBuZXcgbWVzc2FnZSBsb2dnZXIuICBQcmludHMgaWYgbGV2ZWwgaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvCisvLyB0aGUgbGV2ZWwgc2V0IHdpdGggU2V0VmVyYm9zZSgpIGFuZCBwcmVkaWNhdGUgaXMgdHJ1ZS4KK0xvZ2dlcjo6TG9nZ2VyKFNldmVyaXR5IHNldmVyaXR5LCBpbnQgbGV2ZWwsIGJvb2wgcHJlZGljYXRlKSB7CisgIHNldmVyaXR5XyA9IHNldmVyaXR5OworICBsZXZlbF8gPSBsZXZlbDsKKyAgcHJlZGljYXRlXyA9IHByZWRpY2F0ZTsKK30KKworLy8gT24gZGVzdHJ1Y3Rpb24sIGZsdXNoIGFuZCBwcmludCB0aGUgc3RyaW5ncyBhY2N1bXVsYXRlZC4gIEFib3J0IGlmIEZBVEFMLgorTG9nZ2VyOjp+TG9nZ2VyKCkgeworICBpZiAocHJlZGljYXRlXykgeworICAgIGlmIChsZXZlbF8gPD0gbWF4X2xldmVsXykgeworICAgICAgc3RkOjpvc3RyZWFtKiBsb2cgPSBzZXZlcml0eV8gPT0gSU5GTyA/IGluZm9fc3RyZWFtXyA6IGVycm9yX3N0cmVhbV87CisgICAgICBzdGQ6OnN0cmluZyB0YWc7CisgICAgICBzd2l0Y2ggKHNldmVyaXR5XykgeworICAgICAgICBjYXNlIElORk86IHRhZyA9ICJJTkZPIjsgYnJlYWs7CisgICAgICAgIGNhc2UgV0FSTklORzogdGFnID0gIldBUk5JTkciOyBicmVhazsKKyAgICAgICAgY2FzZSBFUlJPUjogdGFnID0gIkVSUk9SIjsgYnJlYWs7CisgICAgICAgIGNhc2UgRkFUQUw6IHRhZyA9ICJGQVRBTCI7IGJyZWFrOworICAgICAgfQorICAgICAgc3RyZWFtXy5mbHVzaCgpOworICAgICAgKmxvZyA8PCB0YWcgPDwgIjogIiA8PCBzdHJlYW1fLnN0cigpIDw8IHN0ZDo6ZW5kbDsKKyAgICB9CisgICAgaWYgKHNldmVyaXR5XyA9PSBGQVRBTCkKKyAgICAgIGFib3J0KCk7CisgIH0KK30KKworLy8gUmVzZXQgdG8gaW5pdGlhbCBzdGF0ZS4KK3ZvaWQgTG9nZ2VyOjpSZXNldCgpIHsKKyAgbWF4X2xldmVsXyA9IC0xOworICBpbmZvX3N0cmVhbV8gPSAmc3RkOjpjb3V0OworICBlcnJvcl9zdHJlYW1fID0gJnN0ZDo6Y2VycjsKK30KKworLy8gVmVyYm9zaXR5LiAgTm90IHRocmVhZC1zYWZlLgoraW50IExvZ2dlcjo6bWF4X2xldmVsXyA9IC0xOworCisvLyBMb2dnaW5nIHN0cmVhbXMuICBOb3QgdGhyZWFkLXNhZmUuCitzdGQ6Om9zdHJlYW0qIExvZ2dlcjo6aW5mb19zdHJlYW1fID0gJnN0ZDo6Y291dDsKK3N0ZDo6b3N0cmVhbSogTG9nZ2VyOjplcnJvcl9zdHJlYW1fID0gJnN0ZDo6Y2VycjsKKworfSAgLy8gbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZGVidWcuaCBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWJ1Zy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ4YmU2YzEKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZGVidWcuaApAQCAtMCwwICsxLDExNSBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvLyBMb2dnaW5nIGFuZCBjaGVja3MuICBBdm9pZHMgYSBkZXBlbmRlbmN5IG9uIGJhc2UuCisvLworLy8gTE9HKHRhZykgcHJpbnRzIG1lc3NhZ2VzLiAgVGFncyBhcmUgSU5GTywgV0FSTklORywgRVJST1IgYW5kIEZBVEFMLgorLy8gSU5GTyBwcmludHMgdG8gc3Rkb3V0LCB0aGUgb3RoZXJzIHRvIHN0ZGVyci4gIEZBVEFMIGFib3J0cyBhZnRlciBwcmludGluZy4KKy8vCisvLyBMT0dfSUYodGFnLCBwcmVkaWNhdGUpIGxvZ3MgaWYgcHJlZGljYXRlIGV2YWx1YXRlcyB0byB0cnVlLCBlbHNlIHNpbGVudC4KKy8vCisvLyBWTE9HKGxldmVsKSBsb2dzIElORk8gbWVzc2FnZXMgd2hlcmUgbGV2ZWwgaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHRoZQorLy8gdmVyYm9zaXR5IGxldmVsIHNldCB3aXRoIFNldFZlcmJvc2UoKS4KKy8vCisvLyBWTE9HX0lGKGxldmVsLCBwcmVkaWNhdGUpIGxvZ3MgSU5GTyBpZiBwcmVkaWNhdGUgZXZhbHVhdGVzIHRvIHRydWUsCisvLyBlbHNlIHNpbGVudC4KKy8vCisvLyBDSEVDSyhwcmVkaWNhdGUpIGxvZ3MgYSBGQVRBTCBlcnJvciBpZiBwcmVkaWNhdGUgaXMgZmFsc2UuCisvLyBOT1RSRUFDSEVEKCkgYWx3YXlzIGFib3J0cy4KKy8vIExvZyBzdHJlYW1zIGNhbiBiZSBjaGFuZ2VkIHdpdGggU2V0U3RyZWFtcygpLiAgTG9nZ2luZyBpcyBub3QgdGhyZWFkLXNhZmUuCisvLworCisjaWZuZGVmIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19ERUJVR19IXworI2RlZmluZSBUT09MU19SRUxPQ0FUSU9OX1BBQ0tFUl9TUkNfREVCVUdfSF8KKworI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPG9zdHJlYW0+CisjaW5jbHVkZSA8c3N0cmVhbT4KKworbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyIHsKKworY2xhc3MgTG9nZ2VyIHsKKyBwdWJsaWM6CisgIGVudW0gU2V2ZXJpdHkge0lORk8gPSAwLCBXQVJOSU5HLCBFUlJPUiwgRkFUQUx9OworCisgIC8vIENvbnN0cnVjdCBhIG5ldyBtZXNzYWdlIGxvZ2dlci4gIFByaW50cyBpZiBsZXZlbCBpcyBsZXNzIHRoYW4gb3IKKyAgLy8gZXF1YWwgdG8gdGhlIGxldmVsIHNldCB3aXRoIFNldFZlcmJvc2UoKSBhbmQgcHJlZGljYXRlIGlzIHRydWUuCisgIC8vIHxzZXZlcml0eXwgaXMgYW4gZW51bWVyYXRlZCBzZXZlcml0eS4KKyAgLy8gfGxldmVsfCBpcyB0aGUgdmVyYm9zaXR5IGxldmVsLgorICAvLyB8cHJlZGljYXRlfCBjb250cm9scyBpZiB0aGUgbG9nZ2VyIHByaW50cyBvciBpcyBzaWxlbnQuCisgIExvZ2dlcihTZXZlcml0eSBzZXZlcml0eSwgaW50IGxldmVsLCBib29sIHByZWRpY2F0ZSk7CisKKyAgLy8gT24gZGVzdHJ1Y3Rpb24sIGZsdXNoIGFuZCBwcmludCB0aGUgc3RyaW5ncyBhY2N1bXVsYXRlZCBpbiBzdHJlYW1fLgorICB+TG9nZ2VyKCk7CisKKyAgLy8gUmV0dXJuIHRoZSBzdHJlYW0gZm9yIHRoaXMgbG9nZ2VyLgorICBzdGQ6Om9zdHJlYW0mIEdldFN0cmVhbSgpIHsgcmV0dXJuIHN0cmVhbV87IH0KKworICAvLyBTZXQgdmVyYm9zaXR5IGxldmVsLiAgTWVzc2FnZXMgd2l0aCBhIGxldmVsIGxlc3MgdGhhbiBvciBlcXVhbCB0bworICAvLyB0aGlzIGxldmVsIGFyZSBwcmludGVkLCBvdGhlcnMgYXJlIGRpc2NhcmRlZC4gIFN0YXRpYywgbm90IHRocmVhZC1zYWZlLgorICBzdGF0aWMgdm9pZCBTZXRWZXJib3NlKGludCBsZXZlbCkgeyBtYXhfbGV2ZWxfID0gbGV2ZWw7IH0KKworICAvLyBTZXQgaW5mbyBhbmQgZXJyb3IgbG9nZ2luZyBzdHJlYW1zLiAgU3RhdGljLCBub3QgdGhyZWFkLXNhZmUuCisgIHN0YXRpYyB2b2lkIFNldFN0cmVhbXMoc3RkOjpvc3RyZWFtKiBpbmZvX3N0cmVhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzdGQ6Om9zdHJlYW0qIGVycm9yX3N0cmVhbSkgeworICAgIGluZm9fc3RyZWFtXyA9IGluZm9fc3RyZWFtOworICAgIGVycm9yX3N0cmVhbV8gPSBlcnJvcl9zdHJlYW07CisgIH0KKworICAvLyBSZXNldCB0byBpbml0aWFsIHN0YXRlLgorICBzdGF0aWMgdm9pZCBSZXNldCgpOworCisgcHJpdmF0ZToKKyAgLy8gTWVzc2FnZSBzZXZlcml0eSwgdmVyYm9zaXR5IGxldmVsLCBhbmQgcHJlZGljYXRlLgorICBTZXZlcml0eSBzZXZlcml0eV87CisgIGludCBsZXZlbF87CisgIGJvb2wgcHJlZGljYXRlXzsKKworICAvLyBTdHJpbmcgc3RyZWFtLCBhY2N1bXVsYXRlcyBtZXNzYWdlIHRleHQuCisgIHN0ZDo6b3N0cmluZ3N0cmVhbSBzdHJlYW1fOworCisgIC8vIFZlcmJvc2l0eSBmb3IgSU5GTyBtZXNzYWdlcy4gIE5vdCB0aHJlYWQtc2FmZS4KKyAgc3RhdGljIGludCBtYXhfbGV2ZWxfOworCisgIC8vIExvZ2dpbmcgc3RyZWFtcy4gIE5vdCB0aHJlYWQtc2FmZS4KKyAgc3RhdGljIHN0ZDo6b3N0cmVhbSogaW5mb19zdHJlYW1fOworICBzdGF0aWMgc3RkOjpvc3RyZWFtKiBlcnJvcl9zdHJlYW1fOworfTsKKworfSAgLy8gbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyCisKKy8vIE1ha2UgbG9nZ2luZyBzZXZlcml0aWVzIHZpc2libGUgZ2xvYmFsbHkuCit0eXBlZGVmIHJlbG9jYXRpb25fcGFja2VyOjpMb2dnZXI6OlNldmVyaXR5IExvZ1NldmVyaXR5OwordXNpbmcgTG9nU2V2ZXJpdHk6OklORk87Cit1c2luZyBMb2dTZXZlcml0eTo6V0FSTklORzsKK3VzaW5nIExvZ1NldmVyaXR5OjpFUlJPUjsKK3VzaW5nIExvZ1NldmVyaXR5OjpGQVRBTDsKKworLy8gTE9HKHNldmVyaXR5KSBwcmludHMgYSBtZXNzYWdlIHdpdGggdGhlIGdpdmVuIHNldmVyaXR5LCBhbmQgYWJvcnRzIGlmCisvLyBzZXZlcml0eSBpcyBGQVRBTC4gIExPR19JRihzZXZlcml0eSwgcHJlZGljYXRlKSBkb2VzIHRoZSBzYW1lIGJ1dCBvbmx5IGlmCisvLyBwcmVkaWNhdGUgaXMgdHJ1ZS4gIElOVF9NSU4gaXMgZ3VhcmFudGVlZCB0byBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8KKy8vIGFueSB2ZXJib3NpdHkgbGV2ZWwuCisjZGVmaW5lIExPRyhzZXZlcml0eSkgXAorICAgIChyZWxvY2F0aW9uX3BhY2tlcjo6TG9nZ2VyKHNldmVyaXR5LCBJTlRfTUlOLCB0cnVlKS5HZXRTdHJlYW0oKSkKKyNkZWZpbmUgTE9HX0lGKHNldmVyaXR5LCBwcmVkaWNhdGUpIFwKKyAgICAocmVsb2NhdGlvbl9wYWNrZXI6OkxvZ2dlcihzZXZlcml0eSwgSU5UX01JTiwgKHByZWRpY2F0ZSkpLkdldFN0cmVhbSgpKQorCisvLyBWTE9HKGxldmVsKSBwcmludHMgaXRzIG1lc3NhZ2UgYXMgSU5GTyBpZiBsZXZlbCBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8KKy8vIHRoZSBjdXJyZW50IHZlcmJvc2l0eSBsZXZlbC4KKyNkZWZpbmUgVkxPRyhsZXZlbCkgXAorICAgIChyZWxvY2F0aW9uX3BhY2tlcjo6TG9nZ2VyKElORk8sIChsZXZlbCksIHRydWUpLkdldFN0cmVhbSgpKQorI2RlZmluZSBWTE9HX0lGKGxldmVsLCBwcmVkaWNhdGUpIFwKKyAgICAocmVsb2NhdGlvbl9wYWNrZXI6OkxvZ2dlcihJTkZPLCAobGV2ZWwpLCAocHJlZGljYXRlKSkuR2V0U3RyZWFtKCkpCisKKy8vIENIRUNLKHByZWRpY2F0ZSkgZmFpbHMgd2l0aCBhIEZBVEFMIGxvZyBtZXNzYWdlIGlmIHByZWRpY2F0ZSBpcyBmYWxzZS4KKyNkZWZpbmUgQ0hFQ0socHJlZGljYXRlKSAoTE9HX0lGKEZBVEFMLCAhKHByZWRpY2F0ZSkpIFwKKyAgICA8PCBfX0ZJTEVfXyA8PCAiOiIgPDwgX19MSU5FX18gPDwgIjogIiBcCisgICAgPDwgX19GVU5DVElPTl9fIDw8ICI6IENIRUNLICciICNwcmVkaWNhdGUgIicgZmFpbGVkIikKKworLy8gTk9UUkVBQ0hFRCgpIGFsd2F5cyBmYWlscyB3aXRoIGEgRkFUQUwgbG9nIG1lc3NhZ2UuCisjZGVmaW5lIE5PVFJFQUNIRUQoXykgKExPRyhGQVRBTCkgXAorICAgIDw8IF9fRklMRV9fIDw8ICI6IiA8PCBfX0xJTkVfXyA8PCAiOiAiIFwKKyAgICA8PCBfX0ZVTkNUSU9OX18gPDwgIjogTk9UUkVBQ0hFRCgpIGhpdCIpCisKKyNlbmRpZiAgLy8gVE9PTFNfUkVMT0NBVElPTl9QQUNLRVJfU1JDX0RFQlVHX0hfCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZGVidWdfdW5pdHRlc3QuY2MgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZGVidWdfdW5pdHRlc3QuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjMxZTJhZQotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWJ1Z191bml0dGVzdC5jYwpAQCAtMCwwICsxLDEyMiBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisjaW5jbHVkZSAiZGVidWcuaCIKKworI2luY2x1ZGUgPHNzdHJlYW0+CisjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3QuaCIKKworbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyIHsKKworVEVTVChEZWJ1ZywgTG9nKSB7CisgIExvZ2dlcjo6UmVzZXQoKTsKKyAgc3RkOjpvc3RyaW5nc3RyZWFtIGluZm87CisgIHN0ZDo6b3N0cmluZ3N0cmVhbSBlcnJvcjsKKyAgTG9nZ2VyOjpTZXRTdHJlYW1zKCZpbmZvLCAmZXJyb3IpOworCisgIExPRyhJTkZPKSA8PCAiSU5GTyBsb2cgbWVzc2FnZSI7CisgIExPRyhXQVJOSU5HKSA8PCAiV0FSTklORyBsb2cgbWVzc2FnZSI7CisgIExPRyhFUlJPUikgPDwgIkVSUk9SIGxvZyBtZXNzYWdlIjsKKworICBFWFBFQ1RfRVEoIklORk86IElORk8gbG9nIG1lc3NhZ2VcbiIsIGluZm8uc3RyKCkpOworICBFWFBFQ1RfRVEoIldBUk5JTkc6IFdBUk5JTkcgbG9nIG1lc3NhZ2VcbiIKKyAgICAgICAgICAgICJFUlJPUjogRVJST1IgbG9nIG1lc3NhZ2VcbiIsIGVycm9yLnN0cigpKTsKKyAgTG9nZ2VyOjpSZXNldCgpOworfQorCitURVNUKERlYnVnLCBMb2dJZikgeworICBMb2dnZXI6OlJlc2V0KCk7CisgIHN0ZDo6b3N0cmluZ3N0cmVhbSBpbmZvOworICBzdGQ6Om9zdHJpbmdzdHJlYW0gZXJyb3I7CisgIExvZ2dlcjo6U2V0U3RyZWFtcygmaW5mbywgJmVycm9yKTsKKworICBMT0dfSUYoSU5GTywgdHJ1ZSkgPDwgIklORk8gbG9nIG1lc3NhZ2UiOworICBMT0dfSUYoSU5GTywgZmFsc2UpIDw8ICJJTkZPIGxvZyBtZXNzYWdlLCBTSE9VTEQgTk9UIFBSSU5UIjsKKyAgTE9HX0lGKFdBUk5JTkcsIHRydWUpIDw8ICJXQVJOSU5HIGxvZyBtZXNzYWdlIjsKKyAgTE9HX0lGKFdBUk5JTkcsIGZhbHNlKSA8PCAiV0FSTklORyBsb2cgbWVzc2FnZSwgU0hPVUxEIE5PVCBQUklOVCI7CisgIExPR19JRihFUlJPUiwgdHJ1ZSkgPDwgIkVSUk9SIGxvZyBtZXNzYWdlIjsKKyAgTE9HX0lGKEVSUk9SLCBmYWxzZSkgPDwgIkVSUk9SIGxvZyBtZXNzYWdlLCBTSE9VTEQgTk9UIFBSSU5UIjsKKyAgTE9HX0lGKEZBVEFMLCBmYWxzZSkgPDwgIkZBVEFMIGxvZyBtZXNzYWdlLCBTSE9VTEQgTk9UIFBSSU5UIjsKKworICBFWFBFQ1RfRVEoIklORk86IElORk8gbG9nIG1lc3NhZ2VcbiIsIGluZm8uc3RyKCkpOworICBFWFBFQ1RfRVEoIldBUk5JTkc6IFdBUk5JTkcgbG9nIG1lc3NhZ2VcbiIKKyAgICAgICAgICAgICJFUlJPUjogRVJST1IgbG9nIG1lc3NhZ2VcbiIsIGVycm9yLnN0cigpKTsKKyAgTG9nZ2VyOjpSZXNldCgpOworfQorCitURVNUKERlYnVnLCBWbG9nKSB7CisgIExvZ2dlcjo6UmVzZXQoKTsKKyAgc3RkOjpvc3RyaW5nc3RyZWFtIGluZm87CisgIHN0ZDo6b3N0cmluZ3N0cmVhbSBlcnJvcjsKKyAgTG9nZ2VyOjpTZXRTdHJlYW1zKCZpbmZvLCAmZXJyb3IpOworCisgIFZMT0coMCkgPDwgIlZMT0cgMCBJTkZPIGxvZyBtZXNzYWdlLCBTSE9VTEQgTk9UIFBSSU5UIjsKKyAgVkxPRygxKSA8PCAiVkxPRyAxIElORk8gbG9nIG1lc3NhZ2UsIFNIT1VMRCBOT1QgUFJJTlQiOworICBWTE9HKDIpIDw8ICJWTE9HIDIgSU5GTyBsb2cgbWVzc2FnZSwgU0hPVUxEIE5PVCBQUklOVCI7CisKKyAgRVhQRUNUX0VRKCIiLCBpbmZvLnN0cigpKTsKKyAgRVhQRUNUX0VRKCIiLCBlcnJvci5zdHIoKSk7CisKKyAgTG9nZ2VyOjpTZXRWZXJib3NlKDEpOworCisgIFZMT0coMCkgPDwgIlZMT0cgMCBJTkZPIGxvZyBtZXNzYWdlIjsKKyAgVkxPRygxKSA8PCAiVkxPRyAxIElORk8gbG9nIG1lc3NhZ2UiOworICBWTE9HKDIpIDw8ICJWTE9HIDIgSU5GTyBsb2cgbWVzc2FnZSwgU0hPVUxEIE5PVCBQUklOVCI7CisKKyAgRVhQRUNUX0VRKCJJTkZPOiBWTE9HIDAgSU5GTyBsb2cgbWVzc2FnZVxuIgorICAgICAgICAgICAgIklORk86IFZMT0cgMSBJTkZPIGxvZyBtZXNzYWdlXG4iLCBpbmZvLnN0cigpKTsKKyAgRVhQRUNUX0VRKCIiLCBlcnJvci5zdHIoKSk7CisgIExvZ2dlcjo6UmVzZXQoKTsKK30KKworVEVTVChEZWJ1ZywgVmxvZ0lmKSB7CisgIExvZ2dlcjo6UmVzZXQoKTsKKyAgc3RkOjpvc3RyaW5nc3RyZWFtIGluZm87CisgIHN0ZDo6b3N0cmluZ3N0cmVhbSBlcnJvcjsKKyAgTG9nZ2VyOjpTZXRTdHJlYW1zKCZpbmZvLCAmZXJyb3IpOworCisgIFZMT0dfSUYoMCwgdHJ1ZSkgPDwgIlZMT0cgMCBJTkZPIGxvZyBtZXNzYWdlLCBTSE9VTEQgTk9UIFBSSU5UIjsKKyAgVkxPR19JRigxLCB0cnVlKSA8PCAiVkxPRyAxIElORk8gbG9nIG1lc3NhZ2UsIFNIT1VMRCBOT1QgUFJJTlQiOworICBWTE9HX0lGKDIsIHRydWUpIDw8ICJWTE9HIDIgSU5GTyBsb2cgbWVzc2FnZSwgU0hPVUxEIE5PVCBQUklOVCI7CisKKyAgRVhQRUNUX0VRKCIiLCBpbmZvLnN0cigpKTsKKyAgRVhQRUNUX0VRKCIiLCBlcnJvci5zdHIoKSk7CisKKyAgTG9nZ2VyOjpTZXRWZXJib3NlKDEpOworCisgIFZMT0dfSUYoMCwgdHJ1ZSkgPDwgIlZMT0cgMCBJTkZPIGxvZyBtZXNzYWdlIjsKKyAgVkxPR19JRigwLCBmYWxzZSkgPDwgIlZMT0cgMCBJTkZPIGxvZyBtZXNzYWdlLCBTSE9VTEQgTk9UIFBSSU5UIjsKKyAgVkxPR19JRigxLCB0cnVlKSA8PCAiVkxPRyAxIElORk8gbG9nIG1lc3NhZ2UiOworICBWTE9HX0lGKDEsIGZhbHNlKSA8PCAiVkxPRyAxIElORk8gbG9nIG1lc3NhZ2UsIFNIT1VMRCBOT1QgUFJJTlQiOworICBWTE9HX0lGKDIsIHRydWUpIDw8ICJWTE9HIDIgSU5GTyBsb2cgbWVzc2FnZSwgU0hPVUxEIE5PVCBQUklOVCI7CisgIFZMT0dfSUYoMiwgZmFsc2UpIDw8ICJWTE9HIDIgSU5GTyBsb2cgbWVzc2FnZSwgU0hPVUxEIE5PVCBQUklOVCI7CisKKyAgRVhQRUNUX0VRKCJJTkZPOiBWTE9HIDAgSU5GTyBsb2cgbWVzc2FnZVxuIgorICAgICAgICAgICAgIklORk86IFZMT0cgMSBJTkZPIGxvZyBtZXNzYWdlXG4iLCBpbmZvLnN0cigpKTsKKyAgRVhQRUNUX0VRKCIiLCBlcnJvci5zdHIoKSk7CisgIExvZ2dlcjo6UmVzZXQoKTsKK30KKworVEVTVChEZWJ1Z0RlYXRoVGVzdCwgRmF0YWwpIHsKKyAgOjp0ZXN0aW5nOjpGTEFHU19ndGVzdF9kZWF0aF90ZXN0X3N0eWxlID0gInRocmVhZHNhZmUiOworICBMb2dnZXI6OlJlc2V0KCk7CisgIEVYUEVDVF9ERUFUSChMT0coRkFUQUwpIDw8ICJGQVRBTCBsb2cgbWVzc2FnZSIsICJGQVRBTDogRkFUQUwgbG9nIG1lc3NhZ2UiKTsKKyAgRVhQRUNUX0RFQVRIKAorICAgICAgTE9HX0lGKEZBVEFMLCB0cnVlKSA8PCAiRkFUQUwgbG9nIG1lc3NhZ2UiLCAiRkFUQUw6IEZBVEFMIGxvZyBtZXNzYWdlIik7Cit9CisKK1RFU1QoRGVidWdEZWF0aFRlc3QsIENoZWNrKSB7CisgIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKKyAgTG9nZ2VyOjpSZXNldCgpOworICBDSEVDSygwID09IDApOworICBFWFBFQ1RfREVBVEgoQ0hFQ0soMCA9PSAxKSwgIkZBVEFMOiAuKjouKjogLio6IENIRUNLICcwID09IDEnIGZhaWxlZCIpOworfQorCitURVNUKERlYnVnRGVhdGhUZXN0LCBOb3RSZWFjaGVkKSB7CisgIDo6dGVzdGluZzo6RkxBR1NfZ3Rlc3RfZGVhdGhfdGVzdF9zdHlsZSA9ICJ0aHJlYWRzYWZlIjsKKyAgTG9nZ2VyOjpSZXNldCgpOworICBFWFBFQ1RfREVBVEgoTk9UUkVBQ0hFRCgpLCAiRkFUQUw6IC4qOi4qOiAuKjogTk9UUkVBQ0hFRFxcKFxcKSBoaXQiKTsKK30KKworfSAgLy8gbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZGVsdGFfZW5jb2Rlci5jYyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWx0YV9lbmNvZGVyLmNjCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgzNDlkN2MKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZGVsdGFfZW5jb2Rlci5jYwpAQCAtMCwwICsxLDMwNyBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisjaW5jbHVkZSAiZGVsdGFfZW5jb2Rlci5oIgorCisjaW5jbHVkZSA8dmVjdG9yPgorCisjaW5jbHVkZSAiZGVidWcuaCIKKworc3RhdGljIGNvbnN0ZXhwciB1aW50MzJfdCBSRUxPQ0FUSU9OX0dST1VQRURfQllfSU5GT19GTEFHID0gMTsKK3N0YXRpYyBjb25zdGV4cHIgdWludDMyX3QgUkVMT0NBVElPTl9HUk9VUEVEX0JZX09GRlNFVF9ERUxUQV9GTEFHID0gMjsKK3N0YXRpYyBjb25zdGV4cHIgdWludDMyX3QgUkVMT0NBVElPTl9HUk9VUEVEX0JZX0FEREVORF9GTEFHID0gNDsKK3N0YXRpYyBjb25zdGV4cHIgdWludDMyX3QgUkVMT0NBVElPTl9HUk9VUF9IQVNfQURERU5EX0ZMQUcgPSA4OworCitzdGF0aWMgYm9vbCBpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfaW5mbyh1aW50NjRfdCBmbGFncykgeworICByZXR1cm4gKGZsYWdzICYgUkVMT0NBVElPTl9HUk9VUEVEX0JZX0lORk9fRkxBRykgIT0gMDsKK30KKworc3RhdGljIGJvb2wgaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X29mZnNldF9kZWx0YSh1aW50NjRfdCBmbGFncykgeworICByZXR1cm4gKGZsYWdzICYgUkVMT0NBVElPTl9HUk9VUEVEX0JZX09GRlNFVF9ERUxUQV9GTEFHKSAhPSAwOworfQorCitzdGF0aWMgYm9vbCBpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfYWRkZW5kKHVpbnQ2NF90IGZsYWdzKSB7CisgIHJldHVybiAoZmxhZ3MgJiBSRUxPQ0FUSU9OX0dST1VQRURfQllfQURERU5EX0ZMQUcpICE9IDA7Cit9CisKK3N0YXRpYyBib29sIGlzX3JlbG9jYXRpb25fZ3JvdXBfaGFzX2FkZGVuZCh1aW50NjRfdCBmbGFncykgeworICByZXR1cm4gKGZsYWdzICYgUkVMT0NBVElPTl9HUk9VUF9IQVNfQURERU5EX0ZMQUcpICE9IDA7Cit9CisKK25hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlciB7CisKKy8vIEVuY29kZSByZWxvY2F0aW9ucyBpbnRvIGEgZGVsdGEgZW5jb2RlZCAocGFja2VkKSByZXByZXNlbnRhdGlvbi4KK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+Cit2b2lkIFJlbG9jYXRpb25EZWx0YUNvZGVjPEVMRj46OkVuY29kZShjb25zdCBzdGQ6OnZlY3RvcjxFbGZSZWxhPiYgcmVsb2NhdGlvbnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGQ6OnZlY3RvcjxFbGZBZGRyPiogcGFja2VkKSB7CisgIGlmIChyZWxvY2F0aW9ucy5zaXplKCkgPT0gMCkKKyAgICByZXR1cm47CisKKyAgLy8gU3RhcnQgd2l0aCB0aGUgcmVsb2NhdGlvbiBjb3VudCwgdGhlbiBhcHBlbmQgZ3JvdXBzCisgIC8vIFRPRE8oZGltaXRyeSk6IHdlIG1pZ2h0IHdhbnQgdG8gbW92ZSBpdCB0byBEVF9BTkRST0lEX1JFTENPVU5UIHNlY3Rpb24KKyAgcGFja2VkLT5wdXNoX2JhY2soc3RhdGljX2Nhc3Q8RWxmQWRkcj4ocmVsb2NhdGlvbnMuc2l6ZSgpKSk7CisKKyAgLy8gbGV0cyB3cml0ZSBzdGFydGluZyBvZmZzZXQgKG9mZnNldCBvZiB0aGUgZmlyc3QgcmVsb2MgLSBmaXJzdCBkZWx0YSkKKyAgRWxmQWRkciBzdGFydF9vZmZzZXQgPSByZWxvY2F0aW9ucy5zaXplKCkgPiAxID8KKyAgICAgIHJlbG9jYXRpb25zWzBdLnJfb2Zmc2V0IC0gKHJlbG9jYXRpb25zWzFdLnJfb2Zmc2V0IC0gcmVsb2NhdGlvbnNbMF0ucl9vZmZzZXQpIDoKKyAgICAgIHJlbG9jYXRpb25zWzBdLnJfb2Zmc2V0OworCisgIHBhY2tlZC0+cHVzaF9iYWNrKHN0YXJ0X29mZnNldCk7CisKKyAgLy8gdGhpcyBvbmUgaXMgdXNlZCB0byBjYWxjdWxhdGUgZGVsdGEKKyAgRWxmQWRkciBwcmV2aW91c19hZGRlbmQgPSAwOworICBFbGZBZGRyIHByZXZpb3VzX29mZnNldCA9IHN0YXJ0X29mZnNldDsKKworICBmb3IgKHNpemVfdCBncm91cF9zdGFydCA9IDA7IGdyb3VwX3N0YXJ0IDwgcmVsb2NhdGlvbnMuc2l6ZSgpOyApIHsKKyAgICBFbGZBZGRyIGdyb3VwX2ZsYWdzID0gMDsKKyAgICBFbGZBZGRyIGdyb3VwX29mZnNldF9kZWx0YSA9IDA7CisgICAgRWxmQWRkciBncm91cF9hZGRlbmQgPSAwOworICAgIEVsZkFkZHIgZ3JvdXBfaW5mbyA9IDA7CisKKyAgICBFbGZBZGRyIGdyb3VwX3NpemUgPSAwOworCisgICAgRGV0ZWN0R3JvdXAocmVsb2NhdGlvbnMsIGdyb3VwX3N0YXJ0LCBwcmV2aW91c19vZmZzZXQsICZncm91cF9zaXplLCAmZ3JvdXBfZmxhZ3MsCisgICAgICAgICZncm91cF9vZmZzZXRfZGVsdGEsICZncm91cF9pbmZvLCAmZ3JvdXBfYWRkZW5kKTsKKworICAgIC8vIHdyaXRlIHRoZSBncm91cCBoZWFkZXIKKyAgICBwYWNrZWQtPnB1c2hfYmFjayhncm91cF9zaXplKTsKKyAgICBwYWNrZWQtPnB1c2hfYmFjayhncm91cF9mbGFncyk7CisKKyAgICBpZiAoaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X29mZnNldF9kZWx0YShncm91cF9mbGFncykpIHsKKyAgICAgIHBhY2tlZC0+cHVzaF9iYWNrKGdyb3VwX29mZnNldF9kZWx0YSk7CisgICAgfQorCisgICAgaWYgKGlzX3JlbG9jYXRpb25fZ3JvdXBlZF9ieV9pbmZvKGdyb3VwX2ZsYWdzKSkgeworICAgICAgcGFja2VkLT5wdXNoX2JhY2soZ3JvdXBfaW5mbyk7CisgICAgfQorCisgICAgaWYgKGlzX3JlbG9jYXRpb25fZ3JvdXBfaGFzX2FkZGVuZChncm91cF9mbGFncykgJiYKKyAgICAgICAgaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X2FkZGVuZChncm91cF9mbGFncykpIHsKKyAgICAgIHBhY2tlZC0+cHVzaF9iYWNrKGdyb3VwX2FkZGVuZCAtIHByZXZpb3VzX2FkZGVuZCk7CisgICAgICBwcmV2aW91c19hZGRlbmQgPSBncm91cF9hZGRlbmQ7CisgICAgfQorCisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzdGF0aWNfY2FzdDxzaXplX3Q+KGdyb3VwX3NpemUpOyArK2kpIHsKKyAgICAgIENIRUNLKChncm91cF9zdGFydCArIGkpIDwgcmVsb2NhdGlvbnMuc2l6ZSgpKTsKKyAgICAgIGNvbnN0IEVsZlJlbGEqIHJlbG9jYXRpb24gPSAmcmVsb2NhdGlvbnNbZ3JvdXBfc3RhcnQgKyBpXTsKKworICAgICAgaWYgKCFpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfb2Zmc2V0X2RlbHRhKGdyb3VwX2ZsYWdzKSkgeworICAgICAgICBwYWNrZWQtPnB1c2hfYmFjayhyZWxvY2F0aW9uLT5yX29mZnNldCAtIHByZXZpb3VzX29mZnNldCk7CisgICAgICB9CisgICAgICBwcmV2aW91c19vZmZzZXQgPSByZWxvY2F0aW9uLT5yX29mZnNldDsKKworICAgICAgaWYgKCFpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfaW5mbyhncm91cF9mbGFncykpIHsKKyAgICAgICAgcGFja2VkLT5wdXNoX2JhY2socmVsb2NhdGlvbi0+cl9pbmZvKTsKKyAgICAgIH0KKworICAgICAgaWYgKGlzX3JlbG9jYXRpb25fZ3JvdXBfaGFzX2FkZGVuZChncm91cF9mbGFncykgJiYKKyAgICAgICAgICAhaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X2FkZGVuZChncm91cF9mbGFncykpIHsKKyAgICAgICAgcGFja2VkLT5wdXNoX2JhY2socmVsb2NhdGlvbi0+cl9hZGRlbmQgLSBwcmV2aW91c19hZGRlbmQpOworICAgICAgICBwcmV2aW91c19hZGRlbmQgPSByZWxvY2F0aW9uLT5yX2FkZGVuZDsKKyAgICAgIH0KKyAgICB9CisKKyAgICAvLyBJZiB0aGUgcmVsb2NhdGlvbiBncm91cCBkb2VzIG5vdCBoYXZlIGFuIGFkZGVuZCAtIHJlc2V0IGl0IHRvIDAKKyAgICAvLyB0byBzaW1wbGlmeSBhZGRlbmQgY29tcHV0YXRpb24gZm9yIHRoZSBncm91cCBmb2xsb3dpbmcgdGhpcyBvbmUuCisgICAgaWYgKCFpc19yZWxvY2F0aW9uX2dyb3VwX2hhc19hZGRlbmQoZ3JvdXBfZmxhZ3MpKSB7CisgICAgICBwcmV2aW91c19hZGRlbmQgPSAwOworICAgIH0KKworICAgIGdyb3VwX3N0YXJ0ICs9IGdyb3VwX3NpemU7CisgIH0KK30KKworLy8gRGVjb2RlIHJlbG9jYXRpb25zIGZyb20gYSBkZWx0YSBlbmNvZGVkIChwYWNrZWQpIHJlcHJlc2VudGF0aW9uLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3ZvaWQgUmVsb2NhdGlvbkRlbHRhQ29kZWM8RUxGPjo6RGVjb2RlKGNvbnN0IHN0ZDo6dmVjdG9yPEVsZkFkZHI+JiBwYWNrZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGQ6OnZlY3RvcjxFbGZSZWxhPiogcmVsb2NhdGlvbnMpIHsKKyAgaWYgKHBhY2tlZC5zaXplKCkgPCA1KSB7CisgICAgcmV0dXJuOworICB9CisKKyAgc2l6ZV90IG5keCA9IDA7CisgIEVsZkFkZHIgY3VycmVudF9jb3VudCA9IDA7CisgIEVsZkFkZHIgdG90YWxfY291bnQgPSBwYWNrZWRbbmR4KytdOworCisgIEVsZkFkZHIgb2Zmc2V0ID0gcGFja2VkW25keCsrXTsKKyAgRWxmQWRkciBpbmZvID0gMDsKKyAgRWxmQWRkciBhZGRlbmQgPSAwOworCisgIHdoaWxlKGN1cnJlbnRfY291bnQgPCB0b3RhbF9jb3VudCkgeworICAgIC8vIHJlYWQgZ3JvdXAKKyAgICBFbGZBZGRyIGdyb3VwX3NpemUgPSBwYWNrZWRbbmR4KytdOworICAgIEVsZkFkZHIgZ3JvdXBfZmxhZ3MgPSBwYWNrZWRbbmR4KytdOworICAgIEVsZkFkZHIgZ3JvdXBfb2Zmc2V0X2RlbHRhID0gMDsKKworICAgIGlmIChpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfb2Zmc2V0X2RlbHRhKGdyb3VwX2ZsYWdzKSkgeworICAgICAgZ3JvdXBfb2Zmc2V0X2RlbHRhID0gcGFja2VkW25keCsrXTsKKyAgICB9CisKKyAgICBpZiAoaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X2luZm8oZ3JvdXBfZmxhZ3MpKSB7CisgICAgICBpbmZvID0gcGFja2VkW25keCsrXTsKKyAgICB9CisKKyAgICBpZiAoaXNfcmVsb2NhdGlvbl9ncm91cF9oYXNfYWRkZW5kKGdyb3VwX2ZsYWdzKSAmJgorICAgICAgICBpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfYWRkZW5kKGdyb3VwX2ZsYWdzKSkgeworICAgICAgYWRkZW5kICs9IHBhY2tlZFtuZHgrK107CisgICAgfQorCisgICAgLy8gbm93IHJlYWQgbm90IGdyb3VwZWQgaW5mbworICAgIGZvciAoRWxmQWRkciBpID0gMDsgaTxncm91cF9zaXplOyArK2kpIHsKKyAgICAgIGlmIChpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfb2Zmc2V0X2RlbHRhKGdyb3VwX2ZsYWdzKSkgeworICAgICAgICBvZmZzZXQgKz0gZ3JvdXBfb2Zmc2V0X2RlbHRhOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgb2Zmc2V0ICs9IHBhY2tlZFtuZHgrK107CisgICAgICB9CisKKyAgICAgIGlmICghaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X2luZm8oZ3JvdXBfZmxhZ3MpKSB7CisgICAgICAgIGluZm8gPSBwYWNrZWRbbmR4KytdOworICAgICAgfQorCisgICAgICBpZiAoaXNfcmVsb2NhdGlvbl9ncm91cF9oYXNfYWRkZW5kKGdyb3VwX2ZsYWdzKSAmJgorICAgICAgICAgICFpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfYWRkZW5kKGdyb3VwX2ZsYWdzKSkgeworICAgICAgICBhZGRlbmQgKz0gcGFja2VkW25keCsrXTsKKyAgICAgIH0KKworICAgICAgRWxmUmVsYSByZWxvYzsKKyAgICAgIHJlbG9jLnJfb2Zmc2V0ID0gb2Zmc2V0OworICAgICAgcmVsb2Mucl9pbmZvID0gaW5mbzsKKyAgICAgIHJlbG9jLnJfYWRkZW5kID0gaXNfcmVsb2NhdGlvbl9ncm91cF9oYXNfYWRkZW5kKGdyb3VwX2ZsYWdzKSA/IGFkZGVuZCA6IDA7CisgICAgICByZWxvY2F0aW9ucy0+cHVzaF9iYWNrKHJlbG9jKTsKKyAgICB9CisKKyAgICBpZiAoIWlzX3JlbG9jYXRpb25fZ3JvdXBfaGFzX2FkZGVuZChncm91cF9mbGFncykpIHsKKyAgICAgIGFkZGVuZCA9IDA7CisgICAgfQorCisgICAgY3VycmVudF9jb3VudCArPSBncm91cF9zaXplOworICB9Cit9CisKKy8vIFRoaXMgZnVuY3Rpb24gZGV0ZWN0cyBhIHdheSB0byBncm91cCByZWxvY19vbmUgYW5kIHJlbG9jX3R3bywgc2V0cyB1cCBncm91cF9mbGFncworLy8gYW5kIGluaXRpYWxpemVzIHZhbHVlcyBmb3IgY29ycmVzcG9uZGluZyBncm91cF8gZmllbGRzLiBGb3IgZXhhbXBsZSBpZiByZWxvY2F0aW9ucworLy8gY2FuIGJlIGdyb3VwZWQgYnkgcl9pbmZvIHRoZSBmdW5jdGlvbiB3aWxsIHNldCBncm91cF9pbmZvIHZhcmlhYmxlLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3ZvaWQgUmVsb2NhdGlvbkRlbHRhQ29kZWM8RUxGPjo6RGV0ZWN0R3JvdXBGaWVsZHMoY29uc3QgRWxmUmVsYSYgcmVsb2Nfb25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBFbGZSZWxhJiByZWxvY190d28sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZkFkZHIgY3VycmVudF9vZmZzZXRfZGVsdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZkFkZHIqIGdyb3VwX2ZsYWdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZBZGRyKiBncm91cF9vZmZzZXRfZGVsdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZkFkZHIqIGdyb3VwX2luZm8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZkFkZHIqIGdyb3VwX2FkZGVuZCkgeworICAqZ3JvdXBfZmxhZ3MgPSAwOworCisgIGNvbnN0IEVsZkFkZHIgb2Zmc2V0X2RlbHRhID0gc3RhdGljX2Nhc3Q8RWxmQWRkcj4ocmVsb2NfdHdvLnJfb2Zmc2V0KSAtCisgICAgICBzdGF0aWNfY2FzdDxFbGZBZGRyPihyZWxvY19vbmUucl9vZmZzZXQpOworCisgIGlmIChvZmZzZXRfZGVsdGEgPT0gY3VycmVudF9vZmZzZXRfZGVsdGEpIHsKKyAgICAqZ3JvdXBfZmxhZ3MgfD0gUkVMT0NBVElPTl9HUk9VUEVEX0JZX09GRlNFVF9ERUxUQV9GTEFHOworICAgIGlmIChncm91cF9vZmZzZXRfZGVsdGEgIT0gbnVsbHB0cikgeworICAgICAgKmdyb3VwX29mZnNldF9kZWx0YSA9IGN1cnJlbnRfb2Zmc2V0X2RlbHRhOworICAgIH0KKyAgfQorCisgIGlmIChyZWxvY19vbmUucl9pbmZvID09IHJlbG9jX3R3by5yX2luZm8pIHsKKyAgICAqZ3JvdXBfZmxhZ3MgfD0gUkVMT0NBVElPTl9HUk9VUEVEX0JZX0lORk9fRkxBRzsKKyAgICBpZiAoZ3JvdXBfaW5mbyAhPSBudWxscHRyKSB7CisgICAgICAqZ3JvdXBfaW5mbyA9IHJlbG9jX29uZS5yX2luZm87CisgICAgfQorICB9CisKKyAgaWYgKHJlbG9jX29uZS5yX2FkZGVuZCAhPSAwIHx8IHJlbG9jX3R3by5yX2FkZGVuZCAhPSAwKSB7CisgICAgKmdyb3VwX2ZsYWdzIHw9IFJFTE9DQVRJT05fR1JPVVBfSEFTX0FEREVORF9GTEFHOworICAgIGlmIChyZWxvY19vbmUucl9hZGRlbmQgPT0gcmVsb2NfdHdvLnJfYWRkZW5kKSB7CisgICAgICAqZ3JvdXBfZmxhZ3MgfD0gUkVMT0NBVElPTl9HUk9VUEVEX0JZX0FEREVORF9GTEFHOworICAgICAgaWYgKGdyb3VwX2FkZGVuZCAhPSBudWxscHRyKSB7CisgICAgICAgICpncm91cF9hZGRlbmQgPSByZWxvY19vbmUucl9hZGRlbmQ7CisgICAgICB9CisgICAgfQorICB9Cit9CisKKy8vIFRoaXMgZnVuY3Rpb24gaXMgdXNlZCB0byBkZXRlY3QgaWYgdGhlcmUgaXMgYmV0dGVyIGdyb3VwIGF2YWlsYWJsZQorLy8gZHVyaW5nIFJlbG9jYXRpb25EZWx0YUNvZGVjPEVMRj46OkRldGVjdEdyb3VwIHByb2Nlc3NpbmcuCisvLyBDdXJyZW50IGltcGxlbWVudGF0aW9uIHByZWZlcnMgaGF2aW5nIGdyb3VwcyB3aXRob3V0IGFkZGVuZCAoPT0gemVybyBhZGRlbmQpCisvLyB0byBhbnkgb3RoZXIgZ3JvdXBzIGZpZWxkIHdpdGggdGhlIHJhdGlvIDM6MS4gVGhpcyBpcyBiZWNhdXNlIGFkZGVuZCB0ZW5kcworLy8gdG8gYmUgbW9yZSB1bmV2ZW5seSBkaXN0cmlidXRlZCB0aGFuIG90aGVyIGZpZWxkcy4KK3N0YXRpYyB1aW50MzJfdCBncm91cF93ZWlnaHQodWludDY0X3QgZmxhZ3MpIHsKKyAgdWludDMyX3Qgd2VpZ2h0ID0gMDsKKyAgaWYgKCFpc19yZWxvY2F0aW9uX2dyb3VwX2hhc19hZGRlbmQoZmxhZ3MpKSB7CisgICAgd2VpZ2h0ICs9IDM7CisgIH0gZWxzZSBpZiAoaXNfcmVsb2NhdGlvbl9ncm91cGVkX2J5X2FkZGVuZChmbGFncykpIHsKKyAgICB3ZWlnaHQgKz0gMTsKKyAgfQorCisgIGlmIChpc19yZWxvY2F0aW9uX2dyb3VwZWRfYnlfb2Zmc2V0X2RlbHRhKGZsYWdzKSkgeworICAgIHdlaWdodCArPSAxOworICB9CisKKyAgaWYgKGlzX3JlbG9jYXRpb25fZ3JvdXBlZF9ieV9pbmZvKGZsYWdzKSkgeworICAgIHdlaWdodCArPSAxOworICB9CisKKyAgcmV0dXJuIHdlaWdodDsKK30KKwordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3ZvaWQgUmVsb2NhdGlvbkRlbHRhQ29kZWM8RUxGPjo6RGV0ZWN0R3JvdXAoY29uc3Qgc3RkOjp2ZWN0b3I8RWxmUmVsYT4mIHJlbG9jYXRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGdyb3VwX3N0YXJ0c193aXRoLCBFbGZBZGRyIHByZXZpb3VzX29mZnNldCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsZkFkZHIqIGdyb3VwX3NpemUsIEVsZkFkZHIqIGdyb3VwX2ZsYWdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxmQWRkciogZ3JvdXBfb2Zmc2V0X2RlbHRhLCBFbGZBZGRyKiBncm91cF9pbmZvLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxmQWRkciogZ3JvdXBfYWRkZW5kKSB7CisgIENIRUNLKGdyb3VwX3N0YXJ0c193aXRoIDwgcmVsb2NhdGlvbnMuc2l6ZSgpKTsKKyAgQ0hFQ0soZ3JvdXBfZmxhZ3MgIT0gbnVsbHB0cik7CisKKyAgY29uc3QgRWxmUmVsYSYgcmVsb2Nfb25lID0gcmVsb2NhdGlvbnNbZ3JvdXBfc3RhcnRzX3dpdGgrK107CisgIGlmIChncm91cF9zdGFydHNfd2l0aCA9PSByZWxvY2F0aW9ucy5zaXplKCkpIHsKKyAgICAqZ3JvdXBfZmxhZ3MgPSByZWxvY19vbmUucl9hZGRlbmQgPT0gMCA/IDAgOiBSRUxPQ0FUSU9OX0dST1VQX0hBU19BRERFTkRfRkxBRzsKKyAgICAqZ3JvdXBfc2l6ZSA9IDE7CisgICAgcmV0dXJuOworICB9CisKKyAgY29uc3QgRWxmQWRkciBvZmZzZXRfZGVsdGEgPSByZWxvY19vbmUucl9vZmZzZXQgLSBwcmV2aW91c19vZmZzZXQ7CisKKyAgLy8gZGV0ZWN0IGdyb3VwX2ZsYWdzCisgIERldGVjdEdyb3VwRmllbGRzKHJlbG9jX29uZSwgcmVsb2NhdGlvbnNbZ3JvdXBfc3RhcnRzX3dpdGhdLCBvZmZzZXRfZGVsdGEsIGdyb3VwX2ZsYWdzLAorICAgICAgZ3JvdXBfb2Zmc2V0X2RlbHRhLCBncm91cF9pbmZvLCBncm91cF9hZGRlbmQpOworCisgIGlmIChncm91cF9zdGFydHNfd2l0aCArIDEgPT0gcmVsb2NhdGlvbnMuc2l6ZSgpKSB7CisgICAgKmdyb3VwX3NpemUgPSAyOworICAgIHJldHVybjsKKyAgfQorCisgIEVsZkFkZHIgY250ID0gMTsKKyAgZm9yIChzaXplX3QgaSA9IGdyb3VwX3N0YXJ0c193aXRoOyBpIDwgcmVsb2NhdGlvbnMuc2l6ZSgpIC0gMTsgKytpKSB7CisgICAgRWxmQWRkciBjYW5kaWRhdGVfZmxhZ3M7CisgICAgLy8gY2hlY2sgaWYgbmV4dCBncm91cCAocmVsb2NfY3VycmVudDsgcmVsb2NfbmV4dCkgaGFzIGJldHRlciBncm91cGVkX2J5IGZsYWdzCisgICAgRGV0ZWN0R3JvdXBGaWVsZHMocmVsb2NhdGlvbnNbaV0sIHJlbG9jYXRpb25zW2krMV0sIG9mZnNldF9kZWx0YSwgJmNhbmRpZGF0ZV9mbGFncywKKyAgICAgICAgbnVsbHB0ciwgbnVsbHB0ciwgbnVsbHB0cik7CisKKyAgICBpZiAoZ3JvdXBfd2VpZ2h0KCpncm91cF9mbGFncykgPCBncm91cF93ZWlnaHQoY2FuZGlkYXRlX2ZsYWdzKSkgeworICAgICAgYnJlYWs7CisgICAgfQorICAgIGNudCsrOworCisgICAgaWYgKGNhbmRpZGF0ZV9mbGFncyAhPSAqZ3JvdXBfZmxhZ3MpIHsKKyAgICAgIGJyZWFrOworICAgIH0KKworICAgIGlmIChpICsgMSA9PSByZWxvY2F0aW9ucy5zaXplKCkgLSAxKSB7IC8vIGxhc3Qgb25lCisgICAgICBjbnQrKzsKKyAgICB9CisgIH0KKworICAvLyBpZiBhcyBhIHJlc3VsdCBvZiBjaGVja2luZyBjYW5kaWRhdGVzIHdlIGVuZGVkIHVwIHdpdGggY250ID09IDEKKyAgLy8gcmVzZXQgZmxhZ3MgdG8gdGhlIGRlZmF1bHQgc3RhdGUKKyAgaWYgKGNudCA9PSAxKSB7CisgICAgKmdyb3VwX2ZsYWdzID0gcmVsb2Nfb25lLnJfYWRkZW5kID09IDAgPyAwIDogUkVMT0NBVElPTl9HUk9VUF9IQVNfQURERU5EX0ZMQUc7CisgIH0KKworICAqZ3JvdXBfc2l6ZSA9IGNudDsKK30KKwordGVtcGxhdGUgY2xhc3MgUmVsb2NhdGlvbkRlbHRhQ29kZWM8RUxGMzJfdHJhaXRzPjsKK3RlbXBsYXRlIGNsYXNzIFJlbG9jYXRpb25EZWx0YUNvZGVjPEVMRjY0X3RyYWl0cz47CisKK30gIC8vIG5hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlcgpkaWZmIC0tZ2l0IGEvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL2RlbHRhX2VuY29kZXIuaCBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWx0YV9lbmNvZGVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDZjMzI0YwotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWx0YV9lbmNvZGVyLmgKQEAgLTAsMCArMSwxMzIgQEAKKy8vIENvcHlyaWdodCAyMDE0IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLy8gRGVsdGEgZW5jb2RlIGFuZCBkZWNvZGUgUkVML1JFTEEgc2VjdGlvbiBvZiBlbGYgZmlsZS4KKy8vCisvLyBUaGUgZW5jb2RlZCBkYXRhIGZvcm1hdCBpcyBzZXF1ZW5jZSBvZiBlbGVtZW50cyBvZiBFbGZBZGRyIHR5cGUgKHVuc2lnbmVkIGxvbmcpOgorLy8KKy8vIFswMF0gcmVsb2NhdGlvbl9jb3VudCAtIHRoZSB0b3RhbCBjb3VudCBvZiByZWxvY2F0aW9ucworLy8gWzAxXSBpbml0aWFsIHJfb2Zmc2V0IC0gdGhpcyBpcyBpbml0aWFsIHJfb2Zmc2V0IGZvciB0aGUKKy8vICAgICAgICAgICAgICAgICAgICAgICAgIHJlbG9jYXRpb24gdGFibGUuCisvLyBmb2xsb3dlZCBieSBncm91cCBzdHJ1Y3R1cmVzOgorLy8gWzAyXSBncm91cAorLy8gLi4uCisvLyBbbm5dIGdyb3VwCisKKy8vIHRoZSBnZW5lcmFsaXplZCBmb3JtYXQgb2YgdGhlIGdyb3VwIGlzICghIC0gYWx3YXlzIHByZXNlbnQgPyAtIGRlcGVuZHMgb24gZ3JvdXBfZmxhZ3MpOgorLy8gLS0tLS0tLS0tLS0tLS0KKy8vICEgZ3JvdXBfc2l6ZQorLy8gISBncm91cF9mbGFncworLy8gPyBncm91cF9yX29mZnNldF9kZWx0YSB3aGVuIFJFTE9DQVRJT05fR1JPVVBFRF9CWV9PRkZTRVRfREVMVEEgZmxhZyBpcyBzZXQKKy8vID8gZ3JvdXBfcl9pbmZvIHdoZW4gUkVMT0NBVElPTl9HUk9VUEVEX0JZX0lORk8gZmxhZyBpcyBzZXQKKy8vID8gZ3JvdXBfcl9hZGRlbmRfZ3JvdXBfZGVsdGEgd2hlbiBSRUxPQ0FUSU9OX0dST1VQX0hBU19BRERFTkQgYW5kIFJFTE9DQVRJT05fR1JPVVBFRF9CWV9BRERFTkQKKy8vICAgZmxhZyBpcyBzZXQKKy8vCisvLyBUaGUgZ3JvdXAgZGVzY3JpcHRpb24gaXMgZm9sbG93ZWQgYnkgaW5kaXZpZHVhbCByZWxvY2F0aW9ucy4KKy8vIHBsZWFzZSBub3RlIHRoYXQgdGhlcmUgaXMgYSBjYXNlIHdoZW4gaW5kaXZpZHVhbCByZWxvY2F0aW9uCisvLyBzZWN0aW9uIGNvdWxkIGJlIGVtcHR5IC0gdGhhdCBpcyBpZiBldmVyeSBmaWVsZCBlbmRzIHVwIGdyb3VwZWQuCisvLworLy8gVGhlIGZvcm1hdCBmb3IgaW5kaXZpZHVhbCByZWxvY2F0aW9ucyBzZWN0aW9uIGlzOgorLy8gPyByX29mZnNldF9kZWx0YSAtIHdoZW4gUkVMT0NBVElPTl9HUk9VUEVEX0JZX09GRlNFVF9ERUxUQSBpcyBub3Qgc2V0CisvLyA/IHJfaW5mbyAtIHdoZW4gUkVMT0NBVElPTl9HUk9VUEVEX0JZX0lORk8gZmxhZyBpcyBub3Qgc2V0CisvLyA/IHJfYWRkZW5kX2RlbHRhIC0gUkVMT0NBVElPTl9HUk9VUF9IQVNfQURERU5EIGlzIHNldCBhbmQgUkVMT0NBVElPTl9HUk9VUEVEX0JZX0FEREVORCBpcyBub3Qgc2V0CisvLworLy8gRm9yIGV4YW1wbGUgbGV0cyBwYWNrIHRoZSBmb2xsb3dpbmcgcmVsb2NhdGlvbnM6CisvLworLy8gUmVsb2NhdGlvbiBzZWN0aW9uICcucmVsYS5keW4nIGF0IG9mZnNldCAweGJmNTggY29udGFpbnMgOTM5IGVudHJpZXM6CisvLyAgICAgT2Zmc2V0ICAgICAgICAgICAgIEluZm8gICAgICAgICAgICAgVHlwZSAgICAgICAgICAgICAgIFN5bWJvbCdzIFZhbHVlICBTeW1ib2wncyBOYW1lICsgQWRkZW5kCisvLyAgICAgMDAwMDAwMDAwMDBhMjE3OCAgMDAwMDAwMDAwMDAwMDQwMyBSX0FBUkNINjRfUkVMQVRJVkUgICAgICAgICAgICAgICAgICAgICAgICAxNzdhOAorLy8gICAgIDAwMDAwMDAwMDAwYTIxODAgIDAwMDAwMDAwMDAwMDA0MDMgUl9BQVJDSDY0X1JFTEFUSVZFICAgICAgICAgICAgICAgICAgICAgICAgMTc3Y2MKKy8vICAgICAwMDAwMDAwMDAwMGEyMTg4ICAwMDAwMDAwMDAwMDAwNDAzIFJfQUFSQ0g2NF9SRUxBVElWRSAgICAgICAgICAgICAgICAgICAgICAgIDE3N2UwCisvLyAgICAgMDAwMDAwMDAwMDBhMjE5MCAgMDAwMDAwMDAwMDAwMDQwMyBSX0FBUkNINjRfUkVMQVRJVkUgICAgICAgICAgICAgICAgICAgICAgICAxNzdmNAorLy8gICAgIDAwMDAwMDAwMDAwYTIxOTggIDAwMDAwMDAwMDAwMDA0MDMgUl9BQVJDSDY0X1JFTEFUSVZFICAgICAgICAgICAgICAgICAgICAgICAgMTc4MDQKKy8vICAgICAwMDAwMDAwMDAwMGEyMWEwICAwMDAwMDAwMDAwMDAwNDAzIFJfQUFSQ0g2NF9SRUxBVElWRSAgICAgICAgICAgICAgICAgICAgICAgIDE3ODE4CisvLyAgICAgMDAwMDAwMDAwMDBhMjFhOCAgMDAwMDAwMDAwMDAwMDQwMyBSX0FBUkNINjRfUkVMQVRJVkUgICAgICAgICAgICAgICAgICAgICAgICAxNzgyYworLy8gICAgIDAwMDAwMDAwMDAwYTIxYjAgIDAwMDAwMDAwMDAwMDA0MDMgUl9BQVJDSDY0X1JFTEFUSVZFICAgICAgICAgICAgICAgICAgICAgICAgMTc4NDAKKy8vICAgICAwMDAwMDAwMDAwMGEyMWI4ICAwMDAwMDAwMDAwMDAwNDAzIFJfQUFSQ0g2NF9SRUxBVElWRSAgICAgICAgICAgICAgICAgICAgICAgIDE3ODU0CisvLyAgICAgMDAwMDAwMDAwMDBhMjFjMCAgMDAwMDAwMDAwMDAwMDQwMyBSX0FBUkNINjRfUkVMQVRJVkUgICAgICAgICAgICAgICAgICAgICAgICAxNzg2OAorLy8gICAgIDAwMDAwMDAwMDAwYTIxYzggIDAwMDAwMDAwMDAwMDA0MDMgUl9BQVJDSDY0X1JFTEFUSVZFICAgICAgICAgICAgICAgICAgICAgICAgMTc4N2MKKy8vICAgICAwMDAwMDAwMDAwMGEyMWQwICAwMDAwMDAwMDAwMDAwNDAzIFJfQUFSQ0g2NF9SRUxBVElWRSAgICAgICAgICAgICAgICAgICAgICAgIDE3ODkwCisvLyAgICAgMDAwMDAwMDAwMDBhMjFkOCAgMDAwMDAwMDAwMDAwMDQwMyBSX0FBUkNINjRfUkVMQVRJVkUgICAgICAgICAgICAgICAgICAgICAgICAxNzhhNAorLy8gICAgIDAwMDAwMDAwMDAwYTIxZTggIDAwMDAwMDAwMDAwMDA0MDMgUl9BQVJDSDY0X1JFTEFUSVZFICAgICAgICAgICAgICAgICAgICAgICAgMTc4YjgKKy8vCisvLyBUaGUgaGVhZGVyIGlzIGdvaW5nIHRvIGJlCisvLyBbMDBdIDE0ICAgICAgICAgICAgICAgICA8LSBjb3VudAorLy8gWzAxXSAweDAwMDAwMDAwMDAwYTIxNzAgPC0gaW5pdGlhbCByZWxvY2F0aW9uIChmaXJzdCByZWxvY2F0aW9uIC0gZGVsdGEsCisvLyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGUgZGVsdGEgaXMgOCBpbiB0aGlzIGNhc2UpCisvLyAtLSBzdGFydGluZyB0aGUgZmlyc3QgYW5kIG9ubHkgZ3JvdXAKKy8vIFswM10gMTQgICAgICAgICAgICAgICAgIDwtIGdyb3VwIHNpemUKKy8vIFswM10gMHhiICAgICAgICAgICAgICAgIDwtIGZsYWdzIFJFTE9DQVRJT05fR1JPVVBfSEFTX0FEREVORCB8IFJFTE9DQVRJT05fR1JPVVBFRF9CWV9PRkZTRVRfREVMVEEKKy8vICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgUkVMT0NBVElPTl9HUk9VUEVEX0JZX0lORk8KKy8vIFswNF0gOCAgICAgICAgICAgICAgICAgIDwtIG9mZnNldCBkZWx0YQorLy8gWzA1XSAweDQwMyAgICAgICAgICAgICAgPC0gcl9pbmZvCisvLyAtLSBlbmQgb2YgZ3JvdXAgZGVmaW5pdGlvbiwgc3RhcnRpbmcgbGlzdCBvZiByX2FkZGVuZCBkZWx0YXMKKy8vIFswNl0gMHgxNzdhOAorLy8gWzA3XSAweDI0ICAgICAgICAgICAgICAgPSAxNzdjYyAtIDE3N2E4CisvLyBbMDhdIDB4MTQgICAgICAgICAgICAgICA9IDE3N2UwIC0gMTc3Y2MKKy8vIFswOV0gMHgxNCAgICAgICAgICAgICAgID0gMTc3ZjQgLSAxNzdlMAorLy8gWzEwXSAweDEwICAgICAgICAgICAgICAgPSAxNzgwNCAtIDE3N2Y0CisvLyBbMTFdIDB4MTQgICAgICAgICAgICAgICA9IDE3ODE4IC0gMTc4MDQKKy8vIFsxMl0gMHgxNCAgICAgICAgICAgICAgID0gMTc4MmMgLSAxNzgxOAorLy8gWzEzXSAweDE0ICAgICAgICAgICAgICAgPSAxNzg0MCAtIDE3ODJjCisvLyBbMTRdIDB4MTQgICAgICAgICAgICAgICA9IDE3ODU0IC0gMTc4NDAKKy8vIFsxNV0gMHgxNCAgICAgICAgICAgICAgID0gMTc4NjggLSAxNzg1NAorLy8gWzE2XSAweDE0ICAgICAgICAgICAgICAgPSAxNzg3YyAtIDE3ODY4CisvLyBbMTddIDB4MTQgICAgICAgICAgICAgICA9IDE3ODkwIC0gMTc4N2MKKy8vIFsxOF0gMHgxNCAgICAgICAgICAgICAgID0gMTc4YTQgLSAxNzg5MAorLy8gWzE5XSAweDE0ICAgICAgICAgICAgICAgPSAxNzhiOCAtIDE3OGE0CisvLyAtLSB0aGUgZW5kLgorCisvLyBUT0RPIChkaW1pdHJ5KTogY29uc2lkZXIgdXNpbmcgcl9hZGRlbmRfZ3JvdXBfZGVsdGEgaW4gdGhlIHdheSB3ZSB1c2UgZ3JvdXAgb2Zmc2V0IGRlbHRhLCBpdCBjYW4KKy8vICAgICAgICAgICAgICAgICBzYXZlIHVzIG1vcmUgYnl0ZXMuLi4KKworLy8gVGhlIGlucHV0IGVuZHMgd2hlbiBzdW0oZ3JvdXBfc2l6ZSkgPT0gcmVsb2NhdGlvbl9jb3VudAorCisjaWZuZGVmIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19ERUxUQV9FTkNPREVSX0hfCisjZGVmaW5lIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19ERUxUQV9FTkNPREVSX0hfCisKKyNpbmNsdWRlIDx2ZWN0b3I+CisKKyNpbmNsdWRlICJlbGYuaCIKKyNpbmNsdWRlICJlbGZfdHJhaXRzLmgiCisKK25hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlciB7CisKKy8vIEEgUmVsb2NhdGlvbkRlbHRhQ29kZWMgcGFja3MgdmVjdG9ycyBvZiByZWxhdGl2ZSByZWxvY2F0aW9ucyB3aXRoCisvLyBhZGRlbmRzIGludG8gbW9yZSBjb21wYWN0IGZvcm1zLCBhbmQgdW5wYWNrcyB0aGVtIHRvIHJlcHJvZHVjZSB0aGUKKy8vIHByZS1wYWNrZWQgZGF0YS4KK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+CitjbGFzcyBSZWxvY2F0aW9uRGVsdGFDb2RlYyB7CisgcHVibGljOgorICB0eXBlZGVmIHR5cGVuYW1lIEVMRjo6QWRkciBFbGZBZGRyOworICB0eXBlZGVmIHR5cGVuYW1lIEVMRjo6UmVsYSBFbGZSZWxhOworCisgIC8vIEVuY29kZSByZWxvY2F0aW9ucyB3aXRoIGFkZGVuZHMgaW50byBhIG1vcmUgY29tcGFjdCBmb3JtLgorICAvLyB8cmVsb2NhdGlvbnN8IGlzIGEgdmVjdG9yIG9mIHJlbGF0aXZlIHJlbG9jYXRpb24gd2l0aCBhZGRlbmQgc3RydWN0cy4KKyAgLy8gfHBhY2tlZHwgaXMgdGhlIHZlY3RvciBvZiBwYWNrZWQgd29yZHMgaW50byB3aGljaCByZWxvY2F0aW9ucyBhcmUgcGFja2VkLgorICBzdGF0aWMgdm9pZCBFbmNvZGUoY29uc3Qgc3RkOjp2ZWN0b3I8RWxmUmVsYT4mIHJlbG9jYXRpb25zLAorICAgICAgICAgICAgICAgICAgICAgc3RkOjp2ZWN0b3I8RWxmQWRkcj4qIHBhY2tlZCk7CisKKyAgLy8gRGVjb2RlIHJlbGF0aXZlIHJlbG9jYXRpb25zIHdpdGggYWRkZW5kcyBmcm9tIHRoZWlyIG1vcmUgY29tcGFjdCBmb3JtLgorICAvLyB8cGFja2VkfCBpcyB0aGUgdmVjdG9yIG9mIHBhY2tlZCByZWxvY2F0aW9ucy4KKyAgLy8gfHJlbG9jYXRpb25zfCBpcyBhIHZlY3RvciBvZiB1bnBhY2tlZCByZWxhdGl2ZSByZWxvY2F0aW9ucy4KKyAgc3RhdGljIHZvaWQgRGVjb2RlKGNvbnN0IHN0ZDo6dmVjdG9yPEVsZkFkZHI+JiBwYWNrZWQsCisgICAgICAgICAgICAgICAgICAgICBzdGQ6OnZlY3RvcjxFbGZSZWxhPiogcmVsb2NhdGlvbnMpOworCisgcHJpdmF0ZToKKyAgc3RhdGljIHZvaWQgRGV0ZWN0R3JvdXAoY29uc3Qgc3RkOjp2ZWN0b3I8RWxmUmVsYT4mIHJlbG9jYXRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgZ3JvdXBfc3RhcnRzX3dpdGgsIEVsZkFkZHIgcHJldmlvdXNfb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZBZGRyKiBncm91cF9zaXplLCBFbGZBZGRyKiBncm91cF9mbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgRWxmQWRkciogZ3JvdXBfb2Zmc2V0X2RlbHRhLCBFbGZBZGRyKiBncm91cF9pbmZvLAorICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZBZGRyKiBncm91cF9hZGRlbmQpOworCisgIHN0YXRpYyB2b2lkIERldGVjdEdyb3VwRmllbGRzKGNvbnN0IEVsZlJlbGEmIHJlbG9jX29uZSwgY29uc3QgRWxmUmVsYSYgcmVsb2NfdHdvLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZBZGRyIGN1cnJlbnRfb2Zmc2V0X2RlbHRhLCBFbGZBZGRyKiBncm91cF9mbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxmQWRkciogZ3JvdXBfb2Zmc2V0X2RlbHRhLCBFbGZBZGRyKiBncm91cF9pbmZvLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbGZBZGRyKiBncm91cF9hZGRlbmQpOworfTsKKworfSAgLy8gbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyCisKKyNlbmRpZiAgLy8gVE9PTFNfUkVMT0NBVElPTl9QQUNLRVJfU1JDX0RFTFRBX0VOQ09ERVJfSF8KZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWx0YV9lbmNvZGVyX3VuaXR0ZXN0LmNjIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL2RlbHRhX2VuY29kZXJfdW5pdHRlc3QuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDZkOWM5NgotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9kZWx0YV9lbmNvZGVyX3VuaXR0ZXN0LmNjCkBAIC0wLDAgKzEsMjIzIEBACisvLyBDb3B5cmlnaHQgMjAxNCBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKyNpbmNsdWRlICJkZWx0YV9lbmNvZGVyLmgiCisKKyNpbmNsdWRlIDx2ZWN0b3I+CisjaW5jbHVkZSAiZWxmLmgiCisjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3QuaCIKKworbmFtZXNwYWNlIHsKKwordGVtcGxhdGUgPHR5cGVuYW1lIFQ+Cit2b2lkIEFkZFJlbG9jYXRpb24odWludDMyX3QgYWRkciwKKyAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpbmZvLAorICAgICAgICAgICAgICAgICAgIGludDMyX3QgYWRkZW5kLAorICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPFQ+KiByZWxvY2F0aW9ucykgeworICBUIHJlbG9jYXRpb247CisgIHJlbG9jYXRpb24ucl9vZmZzZXQgPSBhZGRyOworICByZWxvY2F0aW9uLnJfaW5mbyA9IGluZm87CisgIHJlbG9jYXRpb24ucl9hZGRlbmQgPSBhZGRlbmQ7CisgIHJlbG9jYXRpb25zLT5wdXNoX2JhY2socmVsb2NhdGlvbik7Cit9CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBUPgorYm9vbCBDaGVja1JlbG9jYXRpb24odWludDMyX3QgYWRkciwKKyAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGluZm8sCisgICAgICAgICAgICAgICAgICAgICBpbnQzMl90IGFkZGVuZCwKKyAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFQmIHJlbG9jYXRpb24pIHsKKyAgcmV0dXJuIHJlbG9jYXRpb24ucl9vZmZzZXQgPT0gYWRkciAmJgorICAgICAgcmVsb2NhdGlvbi5yX2luZm8gPT0gaW5mbyAmJgorICAgICAgcmVsb2NhdGlvbi5yX2FkZGVuZCA9PSBhZGRlbmQ7Cit9CisKK30gIC8vIG5hbWVzcGFjZQorCituYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIgeworCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorc3RhdGljIHZvaWQgZW5jb2RlKCkgeworICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OlJlbGE+IHJlbG9jYXRpb25zOworICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OkFkZHI+IHBhY2tlZDsKKworICBSZWxvY2F0aW9uRGVsdGFDb2RlYzxFTEY+IGNvZGVjOworCisgIGNvZGVjLkVuY29kZShyZWxvY2F0aW9ucywgJnBhY2tlZCk7CisKKyAgQVNTRVJUX0VRKDBVLCBwYWNrZWQuc2l6ZSgpKTsKKworICAvLyBJbml0aWFsIHJlbG9jYXRpb24uCisgIEFkZFJlbG9jYXRpb24oMHhmMDBkMDAwMCwgMTFVLCAxMDAwMCwgJnJlbG9jYXRpb25zKTsKKworICBjb2RlYy5FbmNvZGUocmVsb2NhdGlvbnMsICZwYWNrZWQpOworCisgIC8vIHNpemUgb2YgcmVsb2MgdGFibGUsIHNpemUgb2YgZ3JvdXAsIGZsYWdzLCAzIGZpZWxkcywgemVybworICBFWFBFQ1RfRVEoN1UsIHBhY2tlZC5zaXplKCkpOworICAvLyBPbmUgcGFpciBwcmVzZW50LgorICBzaXplX3QgbmR4ID0gMDsKKyAgRVhQRUNUX0VRKDFVLCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKDB4ZjAwZDAwMDAsIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoMVUsIHBhY2tlZFtuZHgrK10pOyAvLyBncm91cF9zaXplCisgIEVYUEVDVF9FUSg4VSwgcGFja2VkW25keCsrXSk7IC8vIGZsYWdzCisgIC8vIERlbHRhIGZyb20gdGhlIG5ldXRyYWwgZWxlbWVudCBpcyB6ZXJvCisgIEVYUEVDVF9FUSgwVSwgcGFja2VkW25keCsrXSk7IC8vIG9mZnNldF9kZWx0YQorICBFWFBFQ1RfRVEoMTFVLCBwYWNrZWRbbmR4KytdKTsgLy8gaW5mbworICBFWFBFQ1RfRVEoMTAwMDBVLCBwYWNrZWRbbmR4KytdKTsgLy8gYWRkZW5kX2RlbHRhCisKKyAgLy8gQWRkIGEgc2Vjb25kIHJlbG9jYXRpb24sIDQgYnl0ZSBvZmZzZXQgZGVsdGEsIDEyIGJ5dGUgYWRkZW5kIGRlbHRhLgorICAvLyBzYW1lIGluZm8KKyAgQWRkUmVsb2NhdGlvbigweGYwMGQwMDA0LCAxMVUsIDEwMDEyLCAmcmVsb2NhdGlvbnMpOworCisgIHBhY2tlZC5jbGVhcigpOworICBjb2RlYy5FbmNvZGUocmVsb2NhdGlvbnMsICZwYWNrZWQpOworCisgIG5keCA9IDA7CisgIEVYUEVDVF9FUSg4VSwgcGFja2VkLnNpemUoKSk7CisKKyAgRVhQRUNUX0VRKDJVLCBwYWNrZWRbbmR4KytdKTsgLy8gcmVsb2NzIGNvdW50CisgIEVYUEVDVF9FUSgweGYwMGNmZmZjLCBwYWNrZWRbbmR4KytdKTsgLy8gaW5pdGlhbCBvZmZzZXQKKyAgRVhQRUNUX0VRKDJVLCBwYWNrZWRbbmR4KytdKTsgLy8gZ3JvdXAgY291bnQKKyAgRVhQRUNUX0VRKDExVSwgcGFja2VkW25keCsrXSk7IC8vIGZsYWdzCisgIEVYUEVDVF9FUSg0VSwgcGFja2VkW25keCsrXSk7IC8vIGdyb3VwIG9mZnNldCBkZWx0YQorICBFWFBFQ1RfRVEoMTFVLCBwYWNrZWRbbmR4KytdKTsgLy8gaW5mbworCisgIEVYUEVDVF9FUSgxMDAwMFUsIHBhY2tlZFtuZHgrK10pOyAvLyBhZGRlbmQgZGVsdGEKKyAgRVhQRUNUX0VRKDEyVSwgcGFja2VkW25keCsrXSk7IC8vIGFkZGVuZCBkZWx0YQorCisgIC8vIEFkZCBhIHRoaXJkIHJlbG9jYXRpb24sIDQgYnl0ZSBvZmZzZXQgZGVsdGEsIDEyIGJ5dGUgYWRkZW5kIGRlbHRhLgorICAvLyBkaWZmZXJlbnQgaW5mbworICBBZGRSZWxvY2F0aW9uKDB4ZjAwZDAwMDgsIDQxVSwgMTAwMjQsICZyZWxvY2F0aW9ucyk7CisKKyAgLy8gQWRkIHRocmVlIG1vcmUgcmVsb2NhdGlvbnMsIDggYnl0ZSBvZmZzZXQgZGVsdGFzLCAtMjQgYnl0ZSBhZGRlbmQgZGVsdGFzLgorICBBZGRSZWxvY2F0aW9uKDB4ZjAwZDAwMTAsIDQyVSwgMTAwMDAsICZyZWxvY2F0aW9ucyk7CisgIEFkZFJlbG9jYXRpb24oMHhmMDBkMDAxOCwgNDJVLCA5OTc2LCAmcmVsb2NhdGlvbnMpOworICBBZGRSZWxvY2F0aW9uKDB4ZjAwZDAwMjAsIDQyVSwgOTk1MiwgJnJlbG9jYXRpb25zKTsKKworICBBZGRSZWxvY2F0aW9uKDB4ZjAwZDIwMjgsIDEwNDJVLCAwLCAmcmVsb2NhdGlvbnMpOworICBBZGRSZWxvY2F0aW9uKDB4ZjAwZDIwMzAsIDM0NDJVLCAwLCAmcmVsb2NhdGlvbnMpOworCisgIHBhY2tlZC5jbGVhcigpOworICBjb2RlYy5FbmNvZGUocmVsb2NhdGlvbnMsICZwYWNrZWQpOworCisgIG5keCA9IDA7CisgIEVYUEVDVF9FUSgyNlUsIHBhY2tlZC5zaXplKCkpOworICAvLyBUb3RhbCBudW1iZXIgb2YgcmVsb2NzCisgIEVYUEVDVF9FUSg4VSwgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUSgweGYwMGNmZmZjLCBwYWNrZWRbbmR4KytdKTsKKyAgLy8gMiBpbiBmaXJzdCBncm91cAorICBFWFBFQ1RfRVEoMlUsIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoMTFVLCBwYWNrZWRbbmR4KytdKTsgLy9mbGFncworICBFWFBFQ1RfRVEoNFUsIHBhY2tlZFtuZHgrK10pOyAvLyBncm91cCBvZmZzZXQgZGVsdGEKKyAgRVhQRUNUX0VRKDExVSwgcGFja2VkW25keCsrXSk7IC8vIGluZm8KKworICAvLyBJbml0aWFsIHJlbG9jYXRpb24uCisgIEVYUEVDVF9FUSgxMDAwMFUsIHBhY2tlZFtuZHgrK10pOyAvLyBhZGRlbmQgZGVsdGEKKyAgLy8gVHdvIHJlbG9jYXRpb25zLCA0IGJ5dGUgb2Zmc2V0IGRlbHRhcywgMTIgYnl0ZSBhZGRlbmQgZGVsdGFzLgorICBFWFBFQ1RfRVEoMTJVLCBwYWNrZWRbbmR4KytdKTsgLy8gYWRkZW5kIGRlbHRhCisKKyAgLy8gc2Vjb25kIGdyb3VwIGhhcyBvbmx5IG9uZSByZWxvYworICBFWFBFQ1RfRVEoMVUsIHBhY2tlZFtuZHgrK10pOyAvLyBjb3VudAorICBFWFBFQ1RfRVEoOFUsIHBhY2tlZFtuZHgrK10pOyAvLyBmbGFncworCisgIEVYUEVDVF9FUSg0VSwgcGFja2VkW25keCsrXSk7IC8vIG9mZnNldCBkZWx0YQorICBFWFBFQ1RfRVEoNDFVLCBwYWNrZWRbbmR4KytdKTsgLy8gaW5mbworICBFWFBFQ1RfRVEoMTJVLCBwYWNrZWRbbmR4KytdKTsgLy8gYWRkZW5kIGRlbHRhCisKKyAgLy8gbmV4dCAtIDMgcmVsb2NzIGdyb3VwZWQgYnkgaW5mbworICBFWFBFQ1RfRVEoM1UsIHBhY2tlZFtuZHgrK10pOyAvLyBjb3VudAorICBFWFBFQ1RfRVEoMTFVLCBwYWNrZWRbbmR4KytdKTsgLy8gZmxhZ3MKKyAgRVhQRUNUX0VRKDhVLCBwYWNrZWRbbmR4KytdKTsgLy8gZ3JvdXAgb2Zmc2V0IGRlbHRhCisgIEVYUEVDVF9FUSg0MlUsIHBhY2tlZFtuZHgrK10pOyAvLyBpbmZvCisgIC8vIFRocmVlIHJlbG9jYXRpb25zLCA4IGJ5dGUgb2Zmc2V0IGRlbHRhcywgLTI0IGJ5dGUgYWRkZW5kIGRlbHRhcy4KKyAgRVhQRUNUX0VRKHN0YXRpY19jYXN0PHR5cGVuYW1lIEVMRjo6QWRkcj4oLTI0KSwgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUShzdGF0aWNfY2FzdDx0eXBlbmFtZSBFTEY6OkFkZHI+KC0yNCksIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoc3RhdGljX2Nhc3Q8dHlwZW5hbWUgRUxGOjpBZGRyPigtMjQpLCBwYWNrZWRbbmR4KytdKTsKKworICAvLyBhbmQgbGFzdCAtIDIgcmVsb2NhdGlvbnMgd2l0aG91dCBhZGRlbmQKKyAgRVhQRUNUX0VRKDJVLCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKDBVLCBwYWNrZWRbbmR4KytdKTsgLy8gZmxhZ3MKKyAgLy8gb2Zmc2V0X2RlbHRhcyBhbmQgcl9pbmZvcyBmb3IgbmV4dCAyIHJlbG9jYXRpb25zCisgIEVYUEVDVF9FUSgweDIwMDhVLCBwYWNrZWRbbmR4KytdKTsgLy8gb2Zmc2V0IGRlbHRhCisgIEVYUEVDVF9FUSgxMDQyVSwgcGFja2VkW25keCsrXSk7IC8vIHJfaW5mbworICBFWFBFQ1RfRVEoMHg4VSwgcGFja2VkW25keCsrXSk7IC8vIG9mZnNldCBkZWx0YQorICBFWFBFQ1RfRVEoMzQ0MlUsIHBhY2tlZFtuZHgrK10pOyAvLyByX2luZm8KKworICBFWFBFQ1RfRVEocGFja2VkLnNpemUoKSwgbmR4KTsKK30KKworVEVTVChEZWx0YSwgRW5jb2RlMzIpIHsKKyAgZW5jb2RlPEVMRjMyX3RyYWl0cz4oKTsKK30KKworVEVTVChEZWx0YSwgRW5jb2RlNjQpIHsKKyAgZW5jb2RlPEVMRjY0X3RyYWl0cz4oKTsKK30KKwordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3N0YXRpYyB2b2lkIGRlY29kZSgpIHsKKyAgc3RkOjp2ZWN0b3I8dHlwZW5hbWUgRUxGOjpBZGRyPiBwYWNrZWQ7CisgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsYT4gcmVsb2NhdGlvbnM7CisKKyAgUmVsb2NhdGlvbkRlbHRhQ29kZWM8RUxGPiBjb2RlYzsKKyAgY29kZWMuRGVjb2RlKHBhY2tlZCwgJnJlbG9jYXRpb25zKTsKKworICBFWFBFQ1RfRVEoMFUsIHJlbG9jYXRpb25zLnNpemUoKSk7CisKKyAgLy8gU2l4IHBhaXJzLgorICBwYWNrZWQucHVzaF9iYWNrKDZVKTsgLy8gY291bnQKKyAgcGFja2VkLnB1c2hfYmFjaygweGMwZGRmZmZjKTsgLy8gYmFzZSBvZmZzZXQKKyAgcGFja2VkLnB1c2hfYmFjaygzVSk7IC8vIGdyb3VwIGNvdW50CisgIHBhY2tlZC5wdXNoX2JhY2soMTFVKTsgLy8gZmxhZ3MKKyAgcGFja2VkLnB1c2hfYmFjayg0VSk7IC8vIG9mZnNldCBkZWx0YQorICBwYWNrZWQucHVzaF9iYWNrKDExVSk7IC8vIGluZm8KKyAgLy8gSW5pdGlhbCByZWxvY2F0aW9uLgorICBwYWNrZWQucHVzaF9iYWNrKDEwMDAwVSk7CisgIC8vIFR3byByZWxvY2F0aW9ucywgNCBieXRlIG9mZnNldCBkZWx0YXMsIDEyIGJ5dGUgYWRkZW5kIGRlbHRhcy4KKyAgcGFja2VkLnB1c2hfYmFjaygxMlUpOyAvLyBhZGRlbmQKKyAgcGFja2VkLnB1c2hfYmFjaygxMlUpOyAvLyBhZGRlbmQKKworICAvLyBUaHJlZSByZWxvY2F0aW9ucywgOCBieXRlIG9mZnNldCBkZWx0YXMsIC0yNCBieXRlIGFkZGVuZCBkZWx0YXMuCisgIHBhY2tlZC5wdXNoX2JhY2soMVUpOyAvLyBncm91cCBjb3VudAorICBwYWNrZWQucHVzaF9iYWNrKDlVKTsgLy8gZmxhZ3MKKyAgcGFja2VkLnB1c2hfYmFjaygxMVUpOyAvLyBpbmZvCisKKyAgcGFja2VkLnB1c2hfYmFjayg4VSk7CisgIHBhY2tlZC5wdXNoX2JhY2soc3RhdGljX2Nhc3Q8dHlwZW5hbWUgRUxGOjpBZGRyPigtMjQpKTsKKyAgLy8gbmV4dCBncm91cCB3aXRoIDIgcmVsb2NzCisgIHBhY2tlZC5wdXNoX2JhY2soMlUpOyAvLyBncm91cCBjb3VudAorICBwYWNrZWQucHVzaF9iYWNrKDExVSk7IC8vIGZsYWdzCisgIHBhY2tlZC5wdXNoX2JhY2soOFUpOyAvLyBvZmZzZXQKKyAgcGFja2VkLnB1c2hfYmFjayg0MlUpOyAvLyBpbmZvCisKKyAgcGFja2VkLnB1c2hfYmFjayhzdGF0aWNfY2FzdDx0eXBlbmFtZSBFTEY6OkFkZHI+KC0yNCkpOyAvLyBhZGRlbmQKKyAgcGFja2VkLnB1c2hfYmFjayhzdGF0aWNfY2FzdDx0eXBlbmFtZSBFTEY6OkFkZHI+KC0yNCkpOyAvLyBhZGRlbmQKKworICByZWxvY2F0aW9ucy5jbGVhcigpOworICBjb2RlYy5EZWNvZGUocGFja2VkLCAmcmVsb2NhdGlvbnMpOworCisgIEVYUEVDVF9FUSg2VSwgcmVsb2NhdGlvbnMuc2l6ZSgpKTsKKyAgLy8gSW5pdGlhbCByZWxvY2F0aW9uLgorICBFWFBFQ1RfVFJVRShDaGVja1JlbG9jYXRpb24oMHhjMGRlMDAwMCwgMTFVLCAxMDAwMCwgcmVsb2NhdGlvbnNbMF0pKTsKKyAgLy8gVHdvIHJlbG9jYXRpb25zLCA0IGJ5dGUgb2Zmc2V0IGRlbHRhcywgMTIgYnl0ZSBhZGRlbmQgZGVsdGFzLgorICBFWFBFQ1RfVFJVRShDaGVja1JlbG9jYXRpb24oMHhjMGRlMDAwNCwgMTFVLCAxMDAxMiwgcmVsb2NhdGlvbnNbMV0pKTsKKyAgRVhQRUNUX1RSVUUoQ2hlY2tSZWxvY2F0aW9uKDB4YzBkZTAwMDgsIDExVSwgMTAwMjQsIHJlbG9jYXRpb25zWzJdKSk7CisgIC8vIFRocmVlIHJlbG9jYXRpb25zLCA4IGJ5dGUgb2Zmc2V0IGRlbHRhcywgLTI0IGJ5dGUgYWRkZW5kIGRlbHRhcy4KKyAgRVhQRUNUX1RSVUUoQ2hlY2tSZWxvY2F0aW9uKDB4YzBkZTAwMTAsIDExVSwgMTAwMDAsIHJlbG9jYXRpb25zWzNdKSk7CisgIEVYUEVDVF9UUlVFKENoZWNrUmVsb2NhdGlvbigweGMwZGUwMDE4LCA0MlUsIDk5NzYsIHJlbG9jYXRpb25zWzRdKSk7CisgIEVYUEVDVF9UUlVFKENoZWNrUmVsb2NhdGlvbigweGMwZGUwMDIwLCA0MlUsIDk5NTIsIHJlbG9jYXRpb25zWzVdKSk7Cit9CisKK1RFU1QoRGVsdGEsIERlY29kZTMyKSB7CisgIGRlY29kZTxFTEYzMl90cmFpdHM+KCk7Cit9CisKK1RFU1QoRGVsdGEsIERlY29kZTY0KSB7CisgIGRlY29kZTxFTEY2NF90cmFpdHM+KCk7Cit9CisKKy8vIFRPRE8gKGRpbWl0cnkpOiBhZGQgbW9yZSB0ZXN0cyAoZml4IGJ5IDE5IEphbnVhcnkgMjAzOCAwMzoxNDowNyBVVEMpCisvLyBUT0RPIChkaW10aXJ5KTogMS4gSW5jb3JyZWN0IHBhY2tlZCBhcnJheSBmb3IgZGVjb2RlCisvLyBUT0RPIChkaW10aXJ5KTogMi4gVHJ5IHRvIGNhdGNoIHNpdHVhdGlvbiB3aGVyZSBpdCBpcyBsaWtlbHkgdG8gZ2V0IHNlcmllcyBvZiBncm91cHMgd2l0aCBzaXplIDEKKworfSAgLy8gbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZWxmX2ZpbGUuY2MgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZWxmX2ZpbGUuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDA2YmQ2MwotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9lbGZfZmlsZS5jYwpAQCAtMCwwICsxLDkxMyBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvLyBJbXBsZW1lbnRhdGlvbiBub3RlczoKKy8vCisvLyBXZSBuZWVkIHRvIHJlbW92ZSBhIHBpZWNlIGZyb20gdGhlIEVMRiBzaGFyZWQgbGlicmFyeS4gIEhvd2V2ZXIsIHdlIGFsc28KKy8vIHdhbnQgdG8gYXZvaWQgZml4aW5nIERXQVJGIGNmaSBkYXRhIGFuZCByZWxhdGl2ZSByZWxvY2F0aW9uIGFkZHJlc3Nlcy4KKy8vIFNvIGFmdGVyIHBhY2tpbmcgd2Ugc2hpZnQgb2ZmZXRzIGFuZCBzdGFydGluZyBhZGRyZXNzIG9mIHRoZSBSWCBzZWdtZW50CisvLyB3aGlsZSBwcmVzZXJ2aW5nIGNvZGUvZGF0YSB2YWRkcnMgbG9jYXRpb24uCisvLyBUaGlzIHJlcXVpcmVzIHNvbWUgZml4dXBzIGZvciBzeW10YWIvaGFzaC9nbnVfaGFzaCBkeW5hbWljIHNlY3Rpb24gYWRkcmVzc2VzLgorCisjaW5jbHVkZSAiZWxmX2ZpbGUuaCIKKworI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPGFsZ29yaXRobT4KKyNpbmNsdWRlIDxzdHJpbmc+CisjaW5jbHVkZSA8dmVjdG9yPgorCisjaW5jbHVkZSAiZGVidWcuaCIKKyNpbmNsdWRlICJlbGZfdHJhaXRzLmgiCisjaW5jbHVkZSAibGliZWxmLmgiCisjaW5jbHVkZSAicGFja2VyLmgiCisKK25hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlciB7CisKKy8vIE91dC1vZi1iYW5kIGR5bmFtaWMgdGFncyB1c2VkIHRvIGluZGljYXRlIHRoZSBvZmZzZXQgYW5kIHNpemUgb2YgdGhlCisvLyBhbmRyb2lkIHBhY2tlZCByZWxvY2F0aW9ucyBzZWN0aW9uLgorc3RhdGljIGNvbnN0ZXhwciBpbnQzMl90IERUX0FORFJPSURfUkVMID0gRFRfTE9PUyArIDI7CitzdGF0aWMgY29uc3RleHByIGludDMyX3QgRFRfQU5EUk9JRF9SRUxTWiA9IERUX0xPT1MgKyAzOworCitzdGF0aWMgY29uc3RleHByIGludDMyX3QgRFRfQU5EUk9JRF9SRUxBID0gRFRfTE9PUyArIDQ7CitzdGF0aWMgY29uc3RleHByIGludDMyX3QgRFRfQU5EUk9JRF9SRUxBU1ogPSBEVF9MT09TICsgNTsKKworc3RhdGljIGNvbnN0ZXhwciB1aW50MzJfdCBTSFRfQU5EUk9JRF9SRUwgPSBTSFRfTE9PUyArIDE7CitzdGF0aWMgY29uc3RleHByIHVpbnQzMl90IFNIVF9BTkRST0lEX1JFTEEgPSBTSFRfTE9PUyArIDI7CisKK3N0YXRpYyBjb25zdCBzaXplX3Qga1BhZ2VTaXplID0gNDA5NjsKKworLy8gQWxpZ25tZW50IHRvIHByZXNlcnZlLCBpbiBieXRlcy4gIFRoaXMgbXVzdCBiZSBhdCBsZWFzdCBhcyBsYXJnZSBhcyB0aGUKKy8vIGxhcmdlc3QgZF9hbGlnbiBhbmQgc2hfYWRkcmFsaWduIHZhbHVlcyBmb3VuZCBpbiB0aGUgbG9hZGVkIGZpbGUuCisvLyBPdXQgb2YgY2F1dGlvbiBmb3IgUkVMUk8gcGFnZSBhbGlnbm1lbnQsIHdlIHByZXNlcnZlIHRvIGEgY29tcGxldGUgdGFyZ2V0CisvLyBwYWdlLiAgU2VlIGh0dHA6Ly93d3cuYWlycy5jb20vYmxvZy9hcmNoaXZlcy8xODkuCitzdGF0aWMgY29uc3Qgc2l6ZV90IGtQcmVzZXJ2ZUFsaWdubWVudCA9IGtQYWdlU2l6ZTsKKworLy8gR2V0IHNlY3Rpb24gZGF0YS4gIENoZWNrcyB0aGF0IHRoZSBzZWN0aW9uIGhhcyBleGFjdGx5IG9uZSBkYXRhIGVudHJ5LAorLy8gc28gdGhhdCB0aGUgc2VjdGlvbiBzaXplIGFuZCB0aGUgZGF0YSBzaXplIGFyZSB0aGUgc2FtZS4gIFRydWUgaW4KKy8vIHByYWN0aWNlIGZvciBhbGwgc2VjdGlvbnMgd2UgcmVzaXplIHdoZW4gcGFja2luZyBvciB1bnBhY2tpbmcuICBEb25lCisvLyBieSBlbnN1cmluZyB0aGF0IGEgY2FsbCB0byBlbGZfZ2V0ZGF0YShzZWN0aW9uLCBkYXRhKSByZXR1cm5zIE5VTEwgYXMKKy8vIHRoZSBuZXh0IGRhdGEgZW50cnkuCitzdGF0aWMgRWxmX0RhdGEqIEdldFNlY3Rpb25EYXRhKEVsZl9TY24qIHNlY3Rpb24pIHsKKyAgRWxmX0RhdGEqIGRhdGEgPSBlbGZfZ2V0ZGF0YShzZWN0aW9uLCBOVUxMKTsKKyAgQ0hFQ0soZGF0YSAmJiBlbGZfZ2V0ZGF0YShzZWN0aW9uLCBkYXRhKSA9PSBOVUxMKTsKKyAgcmV0dXJuIGRhdGE7Cit9CisKKy8vIFJld3JpdGUgc2VjdGlvbiBkYXRhLiAgQWxsb2NhdGVzIG5ldyBkYXRhIGFuZCBtYWtlcyBpdCB0aGUgZGF0YSBlbGVtZW50J3MKKy8vIGJ1ZmZlci4gIFJlbGllcyBvbiBwcm9ncmFtIGV4aXQgdG8gZnJlZSBhbGxvY2F0ZWQgZGF0YS4KK3N0YXRpYyB2b2lkIFJld3JpdGVTZWN0aW9uRGF0YShFbGZfU2NuKiBzZWN0aW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZvaWQqIHNlY3Rpb25fZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3Qgc2l6ZSkgeworICBFbGZfRGF0YSogZGF0YSA9IEdldFNlY3Rpb25EYXRhKHNlY3Rpb24pOworICBDSEVDSyhzaXplID09IGRhdGEtPmRfc2l6ZSk7CisgIHVpbnQ4X3QqIGFyZWEgPSBuZXcgdWludDhfdFtzaXplXTsKKyAgbWVtY3B5KGFyZWEsIHNlY3Rpb25fZGF0YSwgc2l6ZSk7CisgIGRhdGEtPmRfYnVmID0gYXJlYTsKK30KKworLy8gVmVyYm9zZSBFTEYgaGVhZGVyIGxvZ2dpbmcuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRWhkcj4KK3N0YXRpYyB2b2lkIFZlcmJvc2VMb2dFbGZIZWFkZXIoY29uc3QgRWhkciogZWxmX2hlYWRlcikgeworICBWTE9HKDEpIDw8ICJlX3Bob2ZmID0gIiA8PCBlbGZfaGVhZGVyLT5lX3Bob2ZmOworICBWTE9HKDEpIDw8ICJlX3Nob2ZmID0gIiA8PCBlbGZfaGVhZGVyLT5lX3Nob2ZmOworICBWTE9HKDEpIDw8ICJlX2Voc2l6ZSA9ICIgPDwgZWxmX2hlYWRlci0+ZV9laHNpemU7CisgIFZMT0coMSkgPDwgImVfcGhlbnRzaXplID0gIiA8PCBlbGZfaGVhZGVyLT5lX3BoZW50c2l6ZTsKKyAgVkxPRygxKSA8PCAiZV9waG51bSA9ICIgPDwgZWxmX2hlYWRlci0+ZV9waG51bTsKKyAgVkxPRygxKSA8PCAiZV9zaG51bSA9ICIgPDwgZWxmX2hlYWRlci0+ZV9zaG51bTsKKyAgVkxPRygxKSA8PCAiZV9zaHN0cm5keCA9ICIgPDwgZWxmX2hlYWRlci0+ZV9zaHN0cm5keDsKK30KKworLy8gVmVyYm9zZSBFTEYgcHJvZ3JhbSBoZWFkZXIgbG9nZ2luZy4KK3RlbXBsYXRlIDx0eXBlbmFtZSBQaGRyPgorc3RhdGljIHZvaWQgVmVyYm9zZUxvZ1Byb2dyYW1IZWFkZXIoc2l6ZV90IHByb2dyYW1faGVhZGVyX2luZGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBQaGRyKiBwcm9ncmFtX2hlYWRlcikgeworICBzdGQ6OnN0cmluZyB0eXBlOworICBzd2l0Y2ggKHByb2dyYW1faGVhZGVyLT5wX3R5cGUpIHsKKyAgICBjYXNlIFBUX05VTEw6IHR5cGUgPSAiTlVMTCI7IGJyZWFrOworICAgIGNhc2UgUFRfTE9BRDogdHlwZSA9ICJMT0FEIjsgYnJlYWs7CisgICAgY2FzZSBQVF9EWU5BTUlDOiB0eXBlID0gIkRZTkFNSUMiOyBicmVhazsKKyAgICBjYXNlIFBUX0lOVEVSUDogdHlwZSA9ICJJTlRFUlAiOyBicmVhazsKKyAgICBjYXNlIFBUX1BIRFI6IHR5cGUgPSAiUEhEUiI7IGJyZWFrOworICAgIGNhc2UgUFRfR05VX1JFTFJPOiB0eXBlID0gIkdOVV9SRUxSTyI7IGJyZWFrOworICAgIGNhc2UgUFRfR05VX1NUQUNLOiB0eXBlID0gIkdOVV9TVEFDSyI7IGJyZWFrOworICAgIGNhc2UgUFRfQVJNX0VYSURYOiB0eXBlID0gIkVYSURYIjsgYnJlYWs7CisgICAgZGVmYXVsdDogdHlwZSA9ICIoT1RIRVIpIjsgYnJlYWs7CisgIH0KKyAgVkxPRygxKSA8PCAicGhkclsiIDw8IHByb2dyYW1faGVhZGVyX2luZGV4IDw8ICJdIDogIiA8PCB0eXBlOworICBWTE9HKDEpIDw8ICIgIHBfb2Zmc2V0ID0gIiA8PCBwcm9ncmFtX2hlYWRlci0+cF9vZmZzZXQ7CisgIFZMT0coMSkgPDwgIiAgcF92YWRkciA9ICIgPDwgcHJvZ3JhbV9oZWFkZXItPnBfdmFkZHI7CisgIFZMT0coMSkgPDwgIiAgcF9wYWRkciA9ICIgPDwgcHJvZ3JhbV9oZWFkZXItPnBfcGFkZHI7CisgIFZMT0coMSkgPDwgIiAgcF9maWxlc3ogPSAiIDw8IHByb2dyYW1faGVhZGVyLT5wX2ZpbGVzejsKKyAgVkxPRygxKSA8PCAiICBwX21lbXN6ID0gIiA8PCBwcm9ncmFtX2hlYWRlci0+cF9tZW1zejsKKyAgVkxPRygxKSA8PCAiICBwX2ZsYWdzID0gIiA8PCBwcm9ncmFtX2hlYWRlci0+cF9mbGFnczsKKyAgVkxPRygxKSA8PCAiICBwX2FsaWduID0gIiA8PCBwcm9ncmFtX2hlYWRlci0+cF9hbGlnbjsKK30KKworLy8gVmVyYm9zZSBFTEYgc2VjdGlvbiBoZWFkZXIgbG9nZ2luZy4KK3RlbXBsYXRlIDx0eXBlbmFtZSBTaGRyPgorc3RhdGljIHZvaWQgVmVyYm9zZUxvZ1NlY3Rpb25IZWFkZXIoY29uc3Qgc3RkOjpzdHJpbmcmIHNlY3Rpb25fbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgU2hkciogc2VjdGlvbl9oZWFkZXIpIHsKKyAgVkxPRygxKSA8PCAic2VjdGlvbiAiIDw8IHNlY3Rpb25fbmFtZTsKKyAgVkxPRygxKSA8PCAiICBzaF9hZGRyID0gIiA8PCBzZWN0aW9uX2hlYWRlci0+c2hfYWRkcjsKKyAgVkxPRygxKSA8PCAiICBzaF9vZmZzZXQgPSAiIDw8IHNlY3Rpb25faGVhZGVyLT5zaF9vZmZzZXQ7CisgIFZMT0coMSkgPDwgIiAgc2hfc2l6ZSA9ICIgPDwgc2VjdGlvbl9oZWFkZXItPnNoX3NpemU7CisgIFZMT0coMSkgPDwgIiAgc2hfZW50c2l6ZSA9ICIgPDwgc2VjdGlvbl9oZWFkZXItPnNoX2VudHNpemU7CisgIFZMT0coMSkgPDwgIiAgc2hfYWRkcmFsaWduID0gIiA8PCBzZWN0aW9uX2hlYWRlci0+c2hfYWRkcmFsaWduOworfQorCisvLyBWZXJib3NlIEVMRiBzZWN0aW9uIGRhdGEgbG9nZ2luZy4KK3N0YXRpYyB2b2lkIFZlcmJvc2VMb2dTZWN0aW9uRGF0YShjb25zdCBFbGZfRGF0YSogZGF0YSkgeworICBWTE9HKDEpIDw8ICIgIGRhdGEiOworICBWTE9HKDEpIDw8ICIgICAgZF9idWYgPSAiIDw8IGRhdGEtPmRfYnVmOworICBWTE9HKDEpIDw8ICIgICAgZF9vZmYgPSAiIDw8IGRhdGEtPmRfb2ZmOworICBWTE9HKDEpIDw8ICIgICAgZF9zaXplID0gIiA8PCBkYXRhLT5kX3NpemU7CisgIFZMT0coMSkgPDwgIiAgICBkX2FsaWduID0gIiA8PCBkYXRhLT5kX2FsaWduOworfQorCisvLyBMb2FkIHRoZSBjb21wbGV0ZSBFTEYgZmlsZSBpbnRvIGEgbWVtb3J5IGltYWdlIGluIGxpYmVsZiwgYW5kIGlkZW50aWZ5CisvLyB0aGUgLnJlbC5keW4gb3IgLnJlbGEuZHluLCAuZHluYW1pYywgYW5kIC5hbmRyb2lkLnJlbC5keW4gb3IKKy8vIC5hbmRyb2lkLnJlbGEuZHluIHNlY3Rpb25zLiAgTm8tb3AgaWYgdGhlIEVMRiBmaWxlIGhhcyBhbHJlYWR5IGJlZW4gbG9hZGVkLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK2Jvb2wgRWxmRmlsZTxFTEY+OjpMb2FkKCkgeworICBpZiAoZWxmXykKKyAgICByZXR1cm4gdHJ1ZTsKKworICBFbGYqIGVsZiA9IGVsZl9iZWdpbihmZF8sIEVMRl9DX1JEV1IsIE5VTEwpOworICBDSEVDSyhlbGYpOworCisgIGlmIChlbGZfa2luZChlbGYpICE9IEVMRl9LX0VMRikgeworICAgIExPRyhFUlJPUikgPDwgIkZpbGUgbm90IGluIEVMRiBmb3JtYXQiOworICAgIHJldHVybiBmYWxzZTsKKyAgfQorCisgIGF1dG8gZWxmX2hlYWRlciA9IEVMRjo6Z2V0ZWhkcihlbGYpOworICBpZiAoIWVsZl9oZWFkZXIpIHsKKyAgICBMT0coRVJST1IpIDw8ICJGYWlsZWQgdG8gbG9hZCBFTEYgaGVhZGVyOiAiIDw8IGVsZl9lcnJtc2coZWxmX2Vycm5vKCkpOworICAgIHJldHVybiBmYWxzZTsKKyAgfQorCisgIGlmIChlbGZfaGVhZGVyLT5lX3R5cGUgIT0gRVRfRFlOKSB7CisgICAgTE9HKEVSUk9SKSA8PCAiRUxGIGZpbGUgaXMgbm90IGEgc2hhcmVkIG9iamVjdCI7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisKKyAgLy8gUmVxdWlyZSB0aGF0IG91ciBlbmRpYW5uZXNzIG1hdGNoZXMgdGhhdCBvZiB0aGUgdGFyZ2V0LCBhbmQgdGhhdCBib3RoCisgIC8vIGFyZSBsaXR0bGUtZW5kaWFuLiAgU2FmZSBmb3IgYWxsIGN1cnJlbnQgYnVpbGQvdGFyZ2V0IGNvbWJpbmF0aW9ucy4KKyAgY29uc3QgaW50IGVuZGlhbiA9IGVsZl9oZWFkZXItPmVfaWRlbnRbRUlfREFUQV07CisgIENIRUNLKGVuZGlhbiA9PSBFTEZEQVRBMkxTQik7CisgIENIRUNLKF9fQllURV9PUkRFUl9fID09IF9fT1JERVJfTElUVExFX0VORElBTl9fKTsKKworICBjb25zdCBpbnQgZmlsZV9jbGFzcyA9IGVsZl9oZWFkZXItPmVfaWRlbnRbRUlfQ0xBU1NdOworICBWTE9HKDEpIDw8ICJlbmRpYW4gPSAiIDw8IGVuZGlhbiA8PCAiLCBmaWxlIGNsYXNzID0gIiA8PCBmaWxlX2NsYXNzOworICBWZXJib3NlTG9nRWxmSGVhZGVyKGVsZl9oZWFkZXIpOworCisgIGF1dG8gZWxmX3Byb2dyYW1faGVhZGVyID0gRUxGOjpnZXRwaGRyKGVsZik7CisgIENIRUNLKGVsZl9wcm9ncmFtX2hlYWRlciAhPSBudWxscHRyKTsKKworICBjb25zdCB0eXBlbmFtZSBFTEY6OlBoZHIqIGR5bmFtaWNfcHJvZ3JhbV9oZWFkZXIgPSBOVUxMOworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGVsZl9oZWFkZXItPmVfcGhudW07ICsraSkgeworICAgIGF1dG8gcHJvZ3JhbV9oZWFkZXIgPSAmZWxmX3Byb2dyYW1faGVhZGVyW2ldOworICAgIFZlcmJvc2VMb2dQcm9ncmFtSGVhZGVyKGksIHByb2dyYW1faGVhZGVyKTsKKworICAgIGlmIChwcm9ncmFtX2hlYWRlci0+cF90eXBlID09IFBUX0RZTkFNSUMpIHsKKyAgICAgIENIRUNLKGR5bmFtaWNfcHJvZ3JhbV9oZWFkZXIgPT0gTlVMTCk7CisgICAgICBkeW5hbWljX3Byb2dyYW1faGVhZGVyID0gcHJvZ3JhbV9oZWFkZXI7CisgICAgfQorICB9CisgIENIRUNLKGR5bmFtaWNfcHJvZ3JhbV9oZWFkZXIgIT0gbnVsbHB0cik7CisKKyAgc2l6ZV90IHN0cmluZ19pbmRleDsKKyAgZWxmX2dldHNoZHJzdHJuZHgoZWxmLCAmc3RyaW5nX2luZGV4KTsKKworICAvLyBOb3RlcyBvZiB0aGUgZHluYW1pYyByZWxvY2F0aW9ucywgcGFja2VkIHJlbG9jYXRpb25zLCBhbmQgLmR5bmFtaWMKKyAgLy8gc2VjdGlvbnMuICBGb3VuZCB3aGlsZSBpdGVyYXRpbmcgc2VjdGlvbnMsIGFuZCBsYXRlciBzdG9yZWQgaW4gY2xhc3MKKyAgLy8gYXR0cmlidXRlcy4KKyAgRWxmX1NjbiogZm91bmRfcmVsb2NhdGlvbnNfc2VjdGlvbiA9IG51bGxwdHI7CisgIEVsZl9TY24qIGZvdW5kX2R5bmFtaWNfc2VjdGlvbiA9IG51bGxwdHI7CisKKyAgLy8gTm90ZXMgb2YgcmVsb2NhdGlvbiBzZWN0aW9uIHR5cGVzIHNlZW4uICBXZSByZXF1aXJlIG9uZSBvciB0aGUgb3RoZXIgb2YKKyAgLy8gdGhlc2U7IGJvdGggaXMgdW5zdXBwb3J0ZWQuCisgIGJvb2wgaGFzX3JlbF9yZWxvY2F0aW9ucyA9IGZhbHNlOworICBib29sIGhhc19yZWxhX3JlbG9jYXRpb25zID0gZmFsc2U7CisgIGJvb2wgaGFzX2FuZHJvaWRfcmVsb2NhdGlvbnMgPSBmYWxzZTsKKworICBFbGZfU2NuKiBzZWN0aW9uID0gTlVMTDsKKyAgd2hpbGUgKChzZWN0aW9uID0gZWxmX25leHRzY24oZWxmLCBzZWN0aW9uKSkgIT0gbnVsbHB0cikgeworICAgIGF1dG8gc2VjdGlvbl9oZWFkZXIgPSBFTEY6OmdldHNoZHIoc2VjdGlvbik7CisgICAgc3RkOjpzdHJpbmcgbmFtZSA9IGVsZl9zdHJwdHIoZWxmLCBzdHJpbmdfaW5kZXgsIHNlY3Rpb25faGVhZGVyLT5zaF9uYW1lKTsKKyAgICBWZXJib3NlTG9nU2VjdGlvbkhlYWRlcihuYW1lLCBzZWN0aW9uX2hlYWRlcik7CisKKyAgICAvLyBOb3RlIHJlbG9jYXRpb24gc2VjdGlvbiB0eXBlcy4KKyAgICBpZiAoc2VjdGlvbl9oZWFkZXItPnNoX3R5cGUgPT0gU0hUX1JFTCB8fCBzZWN0aW9uX2hlYWRlci0+c2hfdHlwZSA9PSBTSFRfQU5EUk9JRF9SRUwpIHsKKyAgICAgIGhhc19yZWxfcmVsb2NhdGlvbnMgPSB0cnVlOworICAgIH0KKyAgICBpZiAoc2VjdGlvbl9oZWFkZXItPnNoX3R5cGUgPT0gU0hUX1JFTEEgfHwgc2VjdGlvbl9oZWFkZXItPnNoX3R5cGUgPT0gU0hUX0FORFJPSURfUkVMQSkgeworICAgICAgaGFzX3JlbGFfcmVsb2NhdGlvbnMgPSB0cnVlOworICAgIH0KKworICAgIC8vIE5vdGUgc3BlY2lhbCBzZWN0aW9ucyBhcyB3ZSBlbmNvdW50ZXIgdGhlbS4KKyAgICBpZiAoKG5hbWUgPT0gIi5yZWwuZHluIiB8fCBuYW1lID09ICIucmVsYS5keW4iKSAmJgorICAgICAgICBzZWN0aW9uX2hlYWRlci0+c2hfc2l6ZSA+IDApIHsKKyAgICAgIGZvdW5kX3JlbG9jYXRpb25zX3NlY3Rpb24gPSBzZWN0aW9uOworCisgICAgICAvLyBOb3RlIGlmIHJlbG9jYXRpb24gc2VjdGlvbiBpcyBhbHJlYWR5IHBhY2tlZAorICAgICAgaGFzX2FuZHJvaWRfcmVsb2NhdGlvbnMgPQorICAgICAgICAgIHNlY3Rpb25faGVhZGVyLT5zaF90eXBlID09IFNIVF9BTkRST0lEX1JFTCB8fAorICAgICAgICAgIHNlY3Rpb25faGVhZGVyLT5zaF90eXBlID09IFNIVF9BTkRST0lEX1JFTEE7CisgICAgfQorCisgICAgaWYgKHNlY3Rpb25faGVhZGVyLT5zaF9vZmZzZXQgPT0gZHluYW1pY19wcm9ncmFtX2hlYWRlci0+cF9vZmZzZXQpIHsKKyAgICAgIGZvdW5kX2R5bmFtaWNfc2VjdGlvbiA9IHNlY3Rpb247CisgICAgfQorCisgICAgLy8gRW5zdXJlIHdlIHByZXNlcnZlIGFsaWdubWVudCwgcmVwZWF0ZWQgbGF0ZXIgZm9yIHRoZSBkYXRhIGJsb2NrKHMpLgorICAgIENIRUNLKHNlY3Rpb25faGVhZGVyLT5zaF9hZGRyYWxpZ24gPD0ga1ByZXNlcnZlQWxpZ25tZW50KTsKKworICAgIEVsZl9EYXRhKiBkYXRhID0gTlVMTDsKKyAgICB3aGlsZSAoKGRhdGEgPSBlbGZfZ2V0ZGF0YShzZWN0aW9uLCBkYXRhKSkgIT0gTlVMTCkgeworICAgICAgQ0hFQ0soZGF0YS0+ZF9hbGlnbiA8PSBrUHJlc2VydmVBbGlnbm1lbnQpOworICAgICAgVmVyYm9zZUxvZ1NlY3Rpb25EYXRhKGRhdGEpOworICAgIH0KKyAgfQorCisgIC8vIExvYWRpbmcgZmFpbGVkIGlmIHdlIGRpZCBub3QgZmluZCB0aGUgcmVxdWlyZWQgc3BlY2lhbCBzZWN0aW9ucy4KKyAgaWYgKCFmb3VuZF9yZWxvY2F0aW9uc19zZWN0aW9uKSB7CisgICAgTE9HKEVSUk9SKSA8PCAiTWlzc2luZyBvciBlbXB0eSAucmVsLmR5biBvciAucmVsYS5keW4gc2VjdGlvbiI7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisgIGlmICghZm91bmRfZHluYW1pY19zZWN0aW9uKSB7CisgICAgTE9HKEVSUk9SKSA8PCAiTWlzc2luZyAuZHluYW1pYyBzZWN0aW9uIjsKKyAgICByZXR1cm4gZmFsc2U7CisgIH0KKworICAvLyBMb2FkaW5nIGZhaWxlZCBpZiB3ZSBjb3VsZCBub3QgaWRlbnRpZnkgdGhlIHJlbG9jYXRpb25zIHR5cGUuCisgIGlmICghaGFzX3JlbF9yZWxvY2F0aW9ucyAmJiAhaGFzX3JlbGFfcmVsb2NhdGlvbnMpIHsKKyAgICBMT0coRVJST1IpIDw8ICJObyByZWxvY2F0aW9ucyBzZWN0aW9ucyBmb3VuZCI7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisgIGlmIChoYXNfcmVsX3JlbG9jYXRpb25zICYmIGhhc19yZWxhX3JlbG9jYXRpb25zKSB7CisgICAgTE9HKEVSUk9SKSA8PCAiTXVsdGlwbGUgcmVsb2NhdGlvbnMgc2VjdGlvbnMgd2l0aCBkaWZmZXJlbnQgdHlwZXMgZm91bmQsICIKKyAgICAgICAgICAgICAgIDw8ICJub3QgY3VycmVudGx5IHN1cHBvcnRlZCI7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisKKyAgZWxmXyA9IGVsZjsKKyAgcmVsb2NhdGlvbnNfc2VjdGlvbl8gPSBmb3VuZF9yZWxvY2F0aW9uc19zZWN0aW9uOworICBkeW5hbWljX3NlY3Rpb25fID0gZm91bmRfZHluYW1pY19zZWN0aW9uOworICByZWxvY2F0aW9uc190eXBlXyA9IGhhc19yZWxfcmVsb2NhdGlvbnMgPyBSRUwgOiBSRUxBOworICBoYXNfYW5kcm9pZF9yZWxvY2F0aW9uc18gPSBoYXNfYW5kcm9pZF9yZWxvY2F0aW9uczsKKyAgcmV0dXJuIHRydWU7Cit9CisKKy8vIEhlbHBlciBmb3IgUmVzaXplU2VjdGlvbigpLiAgQWRqdXN0IHRoZSBtYWluIEVMRiBoZWFkZXIgZm9yIHRoZSBob2xlLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3N0YXRpYyB2b2lkIEFkanVzdEVsZkhlYWRlckZvckhvbGUodHlwZW5hbWUgRUxGOjpFaGRyKiBlbGZfaGVhZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBFTEY6Ok9mZiBob2xlX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzc2l6ZV90IGhvbGVfc2l6ZSkgeworICBpZiAoZWxmX2hlYWRlci0+ZV9waG9mZiA+IGhvbGVfc3RhcnQpIHsKKyAgICBlbGZfaGVhZGVyLT5lX3Bob2ZmICs9IGhvbGVfc2l6ZTsKKyAgICBWTE9HKDEpIDw8ICJlX3Bob2ZmIGFkanVzdGVkIHRvICIgPDwgZWxmX2hlYWRlci0+ZV9waG9mZjsKKyAgfQorICBpZiAoZWxmX2hlYWRlci0+ZV9zaG9mZiA+IGhvbGVfc3RhcnQpIHsKKyAgICBlbGZfaGVhZGVyLT5lX3Nob2ZmICs9IGhvbGVfc2l6ZTsKKyAgICBWTE9HKDEpIDw8ICJlX3Nob2ZmIGFkanVzdGVkIHRvICIgPDwgZWxmX2hlYWRlci0+ZV9zaG9mZjsKKyAgfQorfQorCisvLyBIZWxwZXIgZm9yIFJlc2l6ZVNlY3Rpb24oKS4gIEFkanVzdCBhbGwgc2VjdGlvbiBoZWFkZXJzIGZvciB0aGUgaG9sZS4KK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+CitzdGF0aWMgdm9pZCBBZGp1c3RTZWN0aW9uSGVhZGVyc0ZvckhvbGUoRWxmKiBlbGYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZW5hbWUgRUxGOjpPZmYgaG9sZV9zdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzc2l6ZV90IGhvbGVfc2l6ZSkgeworICBzaXplX3Qgc3RyaW5nX2luZGV4OworICBlbGZfZ2V0c2hkcnN0cm5keChlbGYsICZzdHJpbmdfaW5kZXgpOworCisgIEVsZl9TY24qIHNlY3Rpb24gPSBOVUxMOworICB3aGlsZSAoKHNlY3Rpb24gPSBlbGZfbmV4dHNjbihlbGYsIHNlY3Rpb24pKSAhPSBOVUxMKSB7CisgICAgYXV0byBzZWN0aW9uX2hlYWRlciA9IEVMRjo6Z2V0c2hkcihzZWN0aW9uKTsKKyAgICBzdGQ6OnN0cmluZyBuYW1lID0gZWxmX3N0cnB0cihlbGYsIHN0cmluZ19pbmRleCwgc2VjdGlvbl9oZWFkZXItPnNoX25hbWUpOworCisgICAgaWYgKHNlY3Rpb25faGVhZGVyLT5zaF9vZmZzZXQgPiBob2xlX3N0YXJ0KSB7CisgICAgICBzZWN0aW9uX2hlYWRlci0+c2hfb2Zmc2V0ICs9IGhvbGVfc2l6ZTsKKyAgICAgIFZMT0coMSkgPDwgInNlY3Rpb24gIiA8PCBuYW1lCisgICAgICAgICAgICAgIDw8ICIgc2hfb2Zmc2V0IGFkanVzdGVkIHRvICIgPDwgc2VjdGlvbl9oZWFkZXItPnNoX29mZnNldDsKKyAgICB9IGVsc2UgeworICAgICAgc2VjdGlvbl9oZWFkZXItPnNoX2FkZHIgLT0gaG9sZV9zaXplOworICAgICAgVkxPRygxKSA8PCAic2VjdGlvbiAiIDw8IG5hbWUKKyAgICAgICAgICAgICAgPDwgIiBzaF9hZGRyIGFkanVzdGVkIHRvICIgPDwgc2VjdGlvbl9oZWFkZXItPnNoX2FkZHI7CisgICAgfQorICB9Cit9CisKKy8vIEhlbHBlciBmb3IgUmVzaXplU2VjdGlvbigpLiAgQWRqdXN0IHRoZSBvZmZzZXRzIG9mIGFueSBwcm9ncmFtIGhlYWRlcnMKKy8vIHRoYXQgaGF2ZSBvZmZzZXRzIGN1cnJlbnRseSBiZXlvbmQgdGhlIGhvbGUgc3RhcnQuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorc3RhdGljIHZvaWQgQWRqdXN0UHJvZ3JhbUhlYWRlck9mZnNldHModHlwZW5hbWUgRUxGOjpQaGRyKiBwcm9ncmFtX2hlYWRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgY291bnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBFTEY6Ok9mZiBob2xlX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3NpemVfdCBob2xlX3NpemUpIHsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7CisgICAgdHlwZW5hbWUgRUxGOjpQaGRyKiBwcm9ncmFtX2hlYWRlciA9ICZwcm9ncmFtX2hlYWRlcnNbaV07CisKKyAgICBpZiAocHJvZ3JhbV9oZWFkZXItPnBfb2Zmc2V0ID4gaG9sZV9zdGFydCkgeworICAgICAgLy8gVGhlIGhvbGUgc3RhcnQgaXMgcGFzdCB0aGlzIHNlZ21lbnQsIHNvIGFkanVzdCBvZmZzZXQuCisgICAgICBwcm9ncmFtX2hlYWRlci0+cF9vZmZzZXQgKz0gaG9sZV9zaXplOworICAgICAgVkxPRygxKSA8PCAicGhkclsiIDw8IGkKKyAgICAgICAgICAgICAgPDwgIl0gcF9vZmZzZXQgYWRqdXN0ZWQgdG8gIjw8IHByb2dyYW1faGVhZGVyLT5wX29mZnNldDsKKyAgICB9IGVsc2UgeworICAgICAgcHJvZ3JhbV9oZWFkZXItPnBfdmFkZHIgLT0gaG9sZV9zaXplOworICAgICAgcHJvZ3JhbV9oZWFkZXItPnBfcGFkZHIgLT0gaG9sZV9zaXplOworICAgICAgaWYgKHByb2dyYW1faGVhZGVyLT5wX2FsaWduID4ga1BhZ2VTaXplKSB7CisgICAgICAgIHByb2dyYW1faGVhZGVyLT5wX2FsaWduID0ga1BhZ2VTaXplOworICAgICAgfQorICAgICAgVkxPRygxKSA8PCAicGhkclsiIDw8IGkKKyAgICAgICAgICAgICAgPDwgIl0gcF92YWRkciBhZGp1c3RlZCB0byAiPDwgcHJvZ3JhbV9oZWFkZXItPnBfdmFkZHIKKyAgICAgICAgICAgICAgPDwgIjsgcF9wYWRkciBhZGp1c3RlZCB0byAiPDwgcHJvZ3JhbV9oZWFkZXItPnBfcGFkZHIKKyAgICAgICAgICAgICAgPDwgIjsgcF9hbGlnbiBhZGp1c3RlZCB0byAiPDwgcHJvZ3JhbV9oZWFkZXItPnBfYWxpZ247CisgICAgfQorICB9Cit9CisKKy8vIEhlbHBlciBmb3IgUmVzaXplU2VjdGlvbigpLiAgRmluZCB0aGUgZmlyc3QgbG9hZGFibGUgc2VnbWVudCBpbiB0aGUKKy8vIGZpbGUuICBXZSBleHBlY3QgaXQgdG8gbWFwIGZyb20gZmlsZSBvZmZzZXQgemVyby4KK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+CitzdGF0aWMgdHlwZW5hbWUgRUxGOjpQaGRyKiBGaW5kTG9hZFNlZ21lbnRGb3JIb2xlKHR5cGVuYW1lIEVMRjo6UGhkciogcHJvZ3JhbV9oZWFkZXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgY291bnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVuYW1lIEVMRjo6T2ZmIGhvbGVfc3RhcnQpIHsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBjb3VudDsgKytpKSB7CisgICAgdHlwZW5hbWUgRUxGOjpQaGRyKiBwcm9ncmFtX2hlYWRlciA9ICZwcm9ncmFtX2hlYWRlcnNbaV07CisKKyAgICBpZiAocHJvZ3JhbV9oZWFkZXItPnBfdHlwZSA9PSBQVF9MT0FEICYmCisgICAgICAgIHByb2dyYW1faGVhZGVyLT5wX29mZnNldCA8PSBob2xlX3N0YXJ0ICYmCisgICAgICAgIChwcm9ncmFtX2hlYWRlci0+cF9vZmZzZXQgKyBwcm9ncmFtX2hlYWRlci0+cF9maWxlc3opID49IGhvbGVfc3RhcnQgKSB7CisgICAgICByZXR1cm4gcHJvZ3JhbV9oZWFkZXI7CisgICAgfQorICB9CisgIExPRyhGQVRBTCkgPDwgIkNhbm5vdCBsb2NhdGUgYSBMT0FEIHNlZ21lbnQgd2l0aCBob2xlX3N0YXJ0PTB4IiA8PCBzdGQ6OmhleCA8PCBob2xlX3N0YXJ0OworICBOT1RSRUFDSEVEKCk7CisKKyAgcmV0dXJuIG51bGxwdHI7Cit9CisKKy8vIEhlbHBlciBmb3IgUmVzaXplU2VjdGlvbigpLiAgUmV3cml0ZSBwcm9ncmFtIGhlYWRlcnMuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorc3RhdGljIHZvaWQgUmV3cml0ZVByb2dyYW1IZWFkZXJzRm9ySG9sZShFbGYqIGVsZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZW5hbWUgRUxGOjpPZmYgaG9sZV9zdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3NpemVfdCBob2xlX3NpemUpIHsKKyAgY29uc3QgdHlwZW5hbWUgRUxGOjpFaGRyKiBlbGZfaGVhZGVyID0gRUxGOjpnZXRlaGRyKGVsZik7CisgIENIRUNLKGVsZl9oZWFkZXIpOworCisgIHR5cGVuYW1lIEVMRjo6UGhkciogZWxmX3Byb2dyYW1faGVhZGVyID0gRUxGOjpnZXRwaGRyKGVsZik7CisgIENIRUNLKGVsZl9wcm9ncmFtX2hlYWRlcik7CisKKyAgY29uc3Qgc2l6ZV90IHByb2dyYW1faGVhZGVyX2NvdW50ID0gZWxmX2hlYWRlci0+ZV9waG51bTsKKworICAvLyBMb2NhdGUgdGhlIHNlZ21lbnQgdGhhdCB3ZSBjYW4gb3ZlcndyaXRlIHRvIGZvcm0gdGhlIG5ldyBMT0FEIGVudHJ5LAorICAvLyBhbmQgdGhlIHNlZ21lbnQgdGhhdCB3ZSBhcmUgZ29pbmcgdG8gc3BsaXQgaW50byB0d28gcGFydHMuCisgIHR5cGVuYW1lIEVMRjo6UGhkciogdGFyZ2V0X2xvYWRfaGVhZGVyID0KKyAgICAgIEZpbmRMb2FkU2VnbWVudEZvckhvbGU8RUxGPihlbGZfcHJvZ3JhbV9oZWFkZXIsIHByb2dyYW1faGVhZGVyX2NvdW50LCBob2xlX3N0YXJ0KTsKKworICBWTE9HKDEpIDw8ICJwaGRyWyIgPDwgdGFyZ2V0X2xvYWRfaGVhZGVyIC0gZWxmX3Byb2dyYW1faGVhZGVyIDw8ICJdIGFkanVzdCI7CisgIC8vIEFkanVzdCBQVF9MT0FEIHByb2dyYW0gaGVhZGVyIG1lbXN6IGFuZCBmaWxlc3oKKyAgdGFyZ2V0X2xvYWRfaGVhZGVyLT5wX2ZpbGVzeiArPSBob2xlX3NpemU7CisgIHRhcmdldF9sb2FkX2hlYWRlci0+cF9tZW1zeiArPSBob2xlX3NpemU7CisKKyAgLy8gQWRqdXN0IHRoZSBvZmZzZXRzIGFuZCBwX3ZhZGRycworICBBZGp1c3RQcm9ncmFtSGVhZGVyT2Zmc2V0czxFTEY+KGVsZl9wcm9ncmFtX2hlYWRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9ncmFtX2hlYWRlcl9jb3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBob2xlX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhvbGVfc2l6ZSk7Cit9CisKKy8vIEhlbHBlciBmb3IgUmVzaXplU2VjdGlvbigpLiAgTG9jYXRlIGFuZCByZXR1cm4gdGhlIGR5bmFtaWMgc2VjdGlvbi4KK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+CitzdGF0aWMgRWxmX1NjbiogR2V0RHluYW1pY1NlY3Rpb24oRWxmKiBlbGYpIHsKKyAgY29uc3QgdHlwZW5hbWUgRUxGOjpFaGRyKiBlbGZfaGVhZGVyID0gRUxGOjpnZXRlaGRyKGVsZik7CisgIENIRUNLKGVsZl9oZWFkZXIpOworCisgIGNvbnN0IHR5cGVuYW1lIEVMRjo6UGhkciogZWxmX3Byb2dyYW1faGVhZGVyID0gRUxGOjpnZXRwaGRyKGVsZik7CisgIENIRUNLKGVsZl9wcm9ncmFtX2hlYWRlcik7CisKKyAgLy8gRmluZCB0aGUgcHJvZ3JhbSBoZWFkZXIgdGhhdCBkZXNjcmliZXMgdGhlIGR5bmFtaWMgc2VjdGlvbi4KKyAgY29uc3QgdHlwZW5hbWUgRUxGOjpQaGRyKiBkeW5hbWljX3Byb2dyYW1faGVhZGVyID0gTlVMTDsKKyAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBlbGZfaGVhZGVyLT5lX3BobnVtOyArK2kpIHsKKyAgICBjb25zdCB0eXBlbmFtZSBFTEY6OlBoZHIqIHByb2dyYW1faGVhZGVyID0gJmVsZl9wcm9ncmFtX2hlYWRlcltpXTsKKworICAgIGlmIChwcm9ncmFtX2hlYWRlci0+cF90eXBlID09IFBUX0RZTkFNSUMpIHsKKyAgICAgIGR5bmFtaWNfcHJvZ3JhbV9oZWFkZXIgPSBwcm9ncmFtX2hlYWRlcjsKKyAgICB9CisgIH0KKyAgQ0hFQ0soZHluYW1pY19wcm9ncmFtX2hlYWRlcik7CisKKyAgLy8gTm93IGZpbmQgdGhlIHNlY3Rpb24gd2l0aCB0aGUgc2FtZSBvZmZzZXQgYXMgdGhpcyBwcm9ncmFtIGhlYWRlci4KKyAgRWxmX1NjbiogZHluYW1pY19zZWN0aW9uID0gTlVMTDsKKyAgRWxmX1Njbiogc2VjdGlvbiA9IE5VTEw7CisgIHdoaWxlICgoc2VjdGlvbiA9IGVsZl9uZXh0c2NuKGVsZiwgc2VjdGlvbikpICE9IE5VTEwpIHsKKyAgICB0eXBlbmFtZSBFTEY6OlNoZHIqIHNlY3Rpb25faGVhZGVyID0gRUxGOjpnZXRzaGRyKHNlY3Rpb24pOworCisgICAgaWYgKHNlY3Rpb25faGVhZGVyLT5zaF9vZmZzZXQgPT0gZHluYW1pY19wcm9ncmFtX2hlYWRlci0+cF9vZmZzZXQpIHsKKyAgICAgIGR5bmFtaWNfc2VjdGlvbiA9IHNlY3Rpb247CisgICAgfQorICB9CisgIENIRUNLKGR5bmFtaWNfc2VjdGlvbiAhPSBOVUxMKTsKKworICByZXR1cm4gZHluYW1pY19zZWN0aW9uOworfQorCisvLyBIZWxwZXIgZm9yIFJlc2l6ZVNlY3Rpb24oKS4gIEFkanVzdCB0aGUgLmR5bmFtaWMgc2VjdGlvbiBmb3IgdGhlIGhvbGUuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgordm9pZCBFbGZGaWxlPEVMRj46OkFkanVzdER5bmFtaWNTZWN0aW9uRm9ySG9sZShFbGZfU2NuKiBkeW5hbWljX3NlY3Rpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVuYW1lIEVMRjo6T2ZmIGhvbGVfc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNzaXplX3QgaG9sZV9zaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxvY2F0aW9uc190eXBlX3QgcmVsb2NhdGlvbnNfdHlwZSkgeworICBDSEVDSyhyZWxvY2F0aW9uc190eXBlICE9IE5PTkUpOworICBFbGZfRGF0YSogZGF0YSA9IEdldFNlY3Rpb25EYXRhKGR5bmFtaWNfc2VjdGlvbik7CisKKyAgYXV0byBkeW5hbWljX2Jhc2UgPSByZWludGVycHJldF9jYXN0PHR5cGVuYW1lIEVMRjo6RHluKj4oZGF0YS0+ZF9idWYpOworICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OkR5bj4gZHluYW1pY3MoCisgICAgICBkeW5hbWljX2Jhc2UsCisgICAgICBkeW5hbWljX2Jhc2UgKyBkYXRhLT5kX3NpemUgLyBzaXplb2YoZHluYW1pY3NbMF0pKTsKKworICBpZiAoaG9sZV9zaXplID4gMCkgeyAvLyBleHBhbmRpbmcKKyAgICBob2xlX3N0YXJ0ICs9IGhvbGVfc2l6ZTsKKyAgfQorCisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZHluYW1pY3Muc2l6ZSgpOyArK2kpIHsKKyAgICB0eXBlbmFtZSBFTEY6OkR5biogZHluYW1pYyA9ICZkeW5hbWljc1tpXTsKKyAgICBjb25zdCB0eXBlbmFtZSBFTEY6OlN3b3JkIHRhZyA9IGR5bmFtaWMtPmRfdGFnOworCisgICAgLy8gQW55IHRhZ3MgdGhhdCBob2xkIG9mZnNldHMgYXJlIGFkanVzdG1lbnQgY2FuZGlkYXRlcy4KKyAgICBjb25zdCBib29sIGlzX2FkanVzdGFibGUgPSAodGFnID09IERUX1BMVEdPVCB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWcgPT0gRFRfSEFTSCB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWcgPT0gRFRfR05VX0hBU0ggfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnID09IERUX1NUUlRBQiB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWcgPT0gRFRfU1lNVEFCIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyA9PSBEVF9SRUxBIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyA9PSBEVF9JTklUIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyA9PSBEVF9GSU5JIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyA9PSBEVF9SRUwgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnID09IERUX0pNUFJFTCB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWcgPT0gRFRfSU5JVF9BUlJBWSB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWcgPT0gRFRfRklOSV9BUlJBWSB8fAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWcgPT0gRFRfVkVSU1lNIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyA9PSBEVF9WRVJORUVEIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyA9PSBEVF9WRVJERUYgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnID09IERUX0FORFJPSURfUkVMfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnID09IERUX0FORFJPSURfUkVMQSk7CisKKyAgICBpZiAoaXNfYWRqdXN0YWJsZSAmJiBkeW5hbWljLT5kX3VuLmRfcHRyIDw9IGhvbGVfc3RhcnQpIHsKKyAgICAgIGR5bmFtaWMtPmRfdW4uZF9wdHIgLT0gaG9sZV9zaXplOworICAgICAgVkxPRygxKSA8PCAiZHluYW1pY1siIDw8IGkgPDwgIl0gIiA8PCBkeW5hbWljLT5kX3RhZworICAgICAgICAgICAgICA8PCAiIGRfcHRyIGFkanVzdGVkIHRvICIgPDwgZHluYW1pYy0+ZF91bi5kX3B0cjsKKyAgICB9CisKKyAgICAvLyBEVF9SRUxTWiBvciBEVF9SRUxBU1ogaW5kaWNhdGUgdGhlIG92ZXJhbGwgc2l6ZSBvZiByZWxvY2F0aW9ucy4KKyAgICAvLyBPbmx5IG9uZSB3aWxsIGJlIHByZXNlbnQuICBBZGp1c3QgYnkgaG9sZSBzaXplLgorICAgIGlmICh0YWcgPT0gRFRfUkVMU1ogfHwgdGFnID09IERUX1JFTEFTWiB8fCB0YWcgPT0gRFRfQU5EUk9JRF9SRUxTWiB8fCB0YWcgPT0gRFRfQU5EUk9JRF9SRUxBU1opIHsKKyAgICAgIGR5bmFtaWMtPmRfdW4uZF92YWwgKz0gaG9sZV9zaXplOworICAgICAgVkxPRygxKSA8PCAiZHluYW1pY1siIDw8IGkgPDwgIl0gIiA8PCBkeW5hbWljLT5kX3RhZworICAgICAgICAgICAgICA8PCAiIGRfdmFsIGFkanVzdGVkIHRvICIgPDwgZHluYW1pYy0+ZF91bi5kX3ZhbDsKKyAgICB9CisKKyAgICAvLyBTcGVjaWFsIGNhc2U6IERUX01JUFNfUkxEX01BUDIgc3RvcmVzIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gZHluYW1pYworICAgIC8vIGVudHJ5IGFkZHJlc3MgYW5kIHRoZSBhZGRyZXNzIG9mIHRoZSBfcl9kZWJ1ZyAodXNlZCBieSBHREIpCisgICAgLy8gc2luY2UgdGhlIGR5bmFtaWMgc2VjdGlvbiBhbmQgdGFyZ2V0IGFkZHJlc3MgYXJlIG9uIHRoZQorICAgIC8vIGRpZmZlcmVudCBzaWRlcyBvZiB0aGUgaG9sZSBpdCBuZWVkcyB0byBiZSBhZGp1c3RlZCBhY2NvcmRpbmdseQorICAgIGlmICh0YWcgPT0gRFRfTUlQU19STERfTUFQMikgeworICAgICAgZHluYW1pYy0+ZF91bi5kX3ZhbCArPSBob2xlX3NpemU7CisgICAgICBWTE9HKDEpIDw8ICJkeW5hbWljWyIgPDwgaSA8PCAiXSAiIDw8IGR5bmFtaWMtPmRfdGFnCisgICAgICAgICAgICAgIDw8ICIgZF92YWwgYWRqdXN0ZWQgdG8gIiA8PCBkeW5hbWljLT5kX3VuLmRfdmFsOworICAgIH0KKworICAgIC8vIElnbm9yZSBEVF9SRUxDT1VOVCBhbmQgRFRfUkVMQUNPVU5UOiAoMSkgbm9ib2R5IHVzZXMgdGhlbSBhbmQKKyAgICAvLyB0ZWNobmljYWxseSAoMikgdGhlIHJlbGF0aXZlIHJlbG9jYXRpb24gY291bnQgaXMgbm90IGNoYW5nZWQuCisKKyAgICAvLyBEVF9SRUxFTlQgYW5kIERUX1JFTEFFTlQgZG9uJ3QgY2hhbmdlLCBpZ25vcmUgdGhlbSBhcyB3ZWxsLgorICB9CisKKyAgdm9pZCogc2VjdGlvbl9kYXRhID0gJmR5bmFtaWNzWzBdOworICBzaXplX3QgYnl0ZXMgPSBkeW5hbWljcy5zaXplKCkgKiBzaXplb2YoZHluYW1pY3NbMF0pOworICBSZXdyaXRlU2VjdGlvbkRhdGEoZHluYW1pY19zZWN0aW9uLCBzZWN0aW9uX2RhdGEsIGJ5dGVzKTsKK30KKworLy8gUmVzaXplIGEgc2VjdGlvbi4gIElmIHRoZSBuZXcgc2l6ZSBpcyBsYXJnZXIgdGhhbiB0aGUgY3VycmVudCBzaXplLCBvcGVuCisvLyB1cCBhIGhvbGUgYnkgaW5jcmVhc2luZyBmaWxlIG9mZnNldHMgdGhhdCBjb21lIGFmdGVyIHRoZSBob2xlLiAgSWYgc21hbGxlcgorLy8gdGhhbiB0aGUgY3VycmVudCBzaXplLCByZW1vdmUgdGhlIGhvbGUgYnkgZGVjcmVhc2luZyB0aG9zZSBvZmZzZXRzLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3ZvaWQgRWxmRmlsZTxFTEY+OjpSZXNpemVTZWN0aW9uKEVsZiogZWxmLCBFbGZfU2NuKiBzZWN0aW9uLCBzaXplX3QgbmV3X3NpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBFTEY6OldvcmQgbmV3X3NoX3R5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxvY2F0aW9uc190eXBlX3QgcmVsb2NhdGlvbnNfdHlwZSkgeworCisgIHNpemVfdCBzdHJpbmdfaW5kZXg7CisgIGVsZl9nZXRzaGRyc3RybmR4KGVsZiwgJnN0cmluZ19pbmRleCk7CisgIGF1dG8gc2VjdGlvbl9oZWFkZXIgPSBFTEY6OmdldHNoZHIoc2VjdGlvbik7CisgIHN0ZDo6c3RyaW5nIG5hbWUgPSBlbGZfc3RycHRyKGVsZiwgc3RyaW5nX2luZGV4LCBzZWN0aW9uX2hlYWRlci0+c2hfbmFtZSk7CisKKyAgaWYgKHNlY3Rpb25faGVhZGVyLT5zaF9zaXplID09IG5ld19zaXplKSB7CisgICAgcmV0dXJuOworICB9CisKKyAgLy8gUmVxdWlyZSB0aGF0IHRoZSBzZWN0aW9uIHNpemUgYW5kIHRoZSBkYXRhIHNpemUgYXJlIHRoZSBzYW1lLiAgVHJ1ZQorICAvLyBpbiBwcmFjdGljZSBmb3IgYWxsIHNlY3Rpb25zIHdlIHJlc2l6ZSB3aGVuIHBhY2tpbmcgb3IgdW5wYWNraW5nLgorICBFbGZfRGF0YSogZGF0YSA9IEdldFNlY3Rpb25EYXRhKHNlY3Rpb24pOworICBDSEVDSyhkYXRhLT5kX29mZiA9PSAwICYmIGRhdGEtPmRfc2l6ZSA9PSBzZWN0aW9uX2hlYWRlci0+c2hfc2l6ZSk7CisKKyAgLy8gUmVxdWlyZSB0aGF0IHRoZSBzZWN0aW9uIGlzIG5vdCB6ZXJvLWxlbmd0aCAodGhhdCBpcywgaGFzIGFsbG9jYXRlZAorICAvLyBkYXRhIHRoYXQgd2UgY2FuIHZhbGlkbHkgZXhwYW5kKS4KKyAgQ0hFQ0soZGF0YS0+ZF9zaXplICYmIGRhdGEtPmRfYnVmKTsKKworICBjb25zdCBhdXRvIGhvbGVfc3RhcnQgPSBzZWN0aW9uX2hlYWRlci0+c2hfb2Zmc2V0OworICBjb25zdCBzc2l6ZV90IGhvbGVfc2l6ZSA9IG5ld19zaXplIC0gZGF0YS0+ZF9zaXplOworCisgIFZMT0dfSUYoMSwgKGhvbGVfc2l6ZSA+IDApKSA8PCAiZXhwYW5kIHNlY3Rpb24gKCIgPDwgbmFtZSA8PCAiKSBzaXplOiAiIDw8CisgICAgICBkYXRhLT5kX3NpemUgPDwgIiAtPiAiIDw8IChkYXRhLT5kX3NpemUgKyBob2xlX3NpemUpOworICBWTE9HX0lGKDEsIChob2xlX3NpemUgPCAwKSkgPDwgInNocmluayBzZWN0aW9uICgiIDw8IG5hbWUgPDwgIikgc2l6ZTogIiA8PAorICAgICAgZGF0YS0+ZF9zaXplIDw8ICIgLT4gIiA8PCAoZGF0YS0+ZF9zaXplICsgaG9sZV9zaXplKTsKKworICAvLyBsaWJlbGYgb3ZlcnJpZGVzIHNoX2VudHNpemUgZm9yIGtub3duIHNoX3R5cGVzLCBzbyBpdCBkb2VzIG5vdCBtYXR0ZXIgd2hhdCB3ZSBzZXQKKyAgLy8gZm9yIFNIVF9SRUwvU0hUX1JFTEEuCisgIHR5cGVuYW1lIEVMRjo6WHdvcmQgbmV3X2VudHNpemUgPQorICAgICAgKG5ld19zaF90eXBlID09IFNIVF9BTkRST0lEX1JFTCB8fCBuZXdfc2hfdHlwZSA9PSBTSFRfQU5EUk9JRF9SRUxBKSA/IDEgOiAwOworCisgIFZMT0coMSkgPDwgIlVwZGF0ZSBzZWN0aW9uICgiIDw8IG5hbWUgPDwgIikgZW50cnkgc2l6ZTogIiA8PAorICAgICAgc2VjdGlvbl9oZWFkZXItPnNoX2VudHNpemUgPDwgIiAtPiAiIDw8IG5ld19lbnRzaXplOworCisgIC8vIFJlc2l6ZSB0aGUgZGF0YSBhbmQgdGhlIHNlY3Rpb24gaGVhZGVyLgorICBkYXRhLT5kX3NpemUgKz0gaG9sZV9zaXplOworICBzZWN0aW9uX2hlYWRlci0+c2hfc2l6ZSArPSBob2xlX3NpemU7CisgIHNlY3Rpb25faGVhZGVyLT5zaF9lbnRzaXplID0gbmV3X2VudHNpemU7CisgIHNlY3Rpb25faGVhZGVyLT5zaF90eXBlID0gbmV3X3NoX3R5cGU7CisKKyAgLy8gQWRkIHRoZSBob2xlIHNpemUgdG8gYWxsIG9mZnNldHMgaW4gdGhlIEVMRiBmaWxlIHRoYXQgYXJlIGFmdGVyIHRoZQorICAvLyBzdGFydCBvZiB0aGUgaG9sZS4gIElmIHRoZSBob2xlIHNpemUgaXMgcG9zaXRpdmUgd2UgYXJlIGV4cGFuZGluZyB0aGUKKyAgLy8gc2VjdGlvbiB0byBjcmVhdGUgYSBuZXcgaG9sZTsgaWYgbmVnYXRpdmUsIHdlIGFyZSBjbG9zaW5nIHVwIGEgaG9sZS4KKworICAvLyBTdGFydCB3aXRoIHRoZSBtYWluIEVMRiBoZWFkZXIuCisgIHR5cGVuYW1lIEVMRjo6RWhkciogZWxmX2hlYWRlciA9IEVMRjo6Z2V0ZWhkcihlbGYpOworICBBZGp1c3RFbGZIZWFkZXJGb3JIb2xlPEVMRj4oZWxmX2hlYWRlciwgaG9sZV9zdGFydCwgaG9sZV9zaXplKTsKKworICAvLyBBZGp1c3QgYWxsIHNlY3Rpb24gaGVhZGVycy4KKyAgQWRqdXN0U2VjdGlvbkhlYWRlcnNGb3JIb2xlPEVMRj4oZWxmLCBob2xlX3N0YXJ0LCBob2xlX3NpemUpOworCisgIC8vIFJld3JpdGUgdGhlIHByb2dyYW0gaGVhZGVycyB0byBlaXRoZXIgc3BsaXQgb3IgY29hbGVzY2Ugc2VnbWVudHMsCisgIC8vIGFuZCBhZGp1c3QgZHluYW1pYyBlbnRyaWVzIHRvIG1hdGNoLgorICBSZXdyaXRlUHJvZ3JhbUhlYWRlcnNGb3JIb2xlPEVMRj4oZWxmLCBob2xlX3N0YXJ0LCBob2xlX3NpemUpOworCisgIEVsZl9TY24qIGR5bmFtaWNfc2VjdGlvbiA9IEdldER5bmFtaWNTZWN0aW9uPEVMRj4oZWxmKTsKKyAgQWRqdXN0RHluYW1pY1NlY3Rpb25Gb3JIb2xlKGR5bmFtaWNfc2VjdGlvbiwgaG9sZV9zdGFydCwgaG9sZV9zaXplLCByZWxvY2F0aW9uc190eXBlKTsKK30KKworLy8gRmluZCB0aGUgZmlyc3Qgc2xvdCBpbiBhIGR5bmFtaWNzIGFycmF5IHdpdGggdGhlIGdpdmVuIHRhZy4gIFRoZSBhcnJheQorLy8gYWx3YXlzIGVuZHMgd2l0aCBhIGZyZWUgKHVudXNlZCkgZWxlbWVudCwgYW5kIHdoaWNoIHdlIGV4Y2x1ZGUgZnJvbSB0aGUKKy8vIHNlYXJjaC4gIFJldHVybnMgZHluYW1pY3MtPnNpemUoKSBpZiBub3QgZm91bmQuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorc3RhdGljIHNpemVfdCBGaW5kRHluYW1pY0VudHJ5KHR5cGVuYW1lIEVMRjo6U3dvcmQgdGFnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6RHluPiogZHluYW1pY3MpIHsKKyAgLy8gTG9vcCB1bnRpbCB0aGUgcGVudWx0aW1hdGUgZW50cnkuICBXZSBleGNsdWRlIHRoZSBlbmQgc2VudGluZWwuCisgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZHluYW1pY3MtPnNpemUoKSAtIDE7ICsraSkgeworICAgIGlmIChkeW5hbWljcy0+YXQoaSkuZF90YWcgPT0gdGFnKSB7CisgICAgICByZXR1cm4gaTsKKyAgICB9CisgIH0KKworICAvLyBUaGUgdGFnIHdhcyBub3QgZm91bmQuCisgIHJldHVybiBkeW5hbWljcy0+c2l6ZSgpOworfQorCisvLyBSZXBsYWNlIGR5bmFtaWMgZW50cnkuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorc3RhdGljIHZvaWQgUmVwbGFjZUR5bmFtaWNFbnRyeSh0eXBlbmFtZSBFTEY6OlN3b3JkIHRhZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdHlwZW5hbWUgRUxGOjpEeW4mIGR5biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkOjp2ZWN0b3I8dHlwZW5hbWUgRUxGOjpEeW4+KiBkeW5hbWljcykgeworICBjb25zdCBzaXplX3Qgc2xvdCA9IEZpbmREeW5hbWljRW50cnk8RUxGPih0YWcsIGR5bmFtaWNzKTsKKyAgaWYgKHNsb3QgPT0gZHluYW1pY3MtPnNpemUoKSkgeworICAgIExPRyhGQVRBTCkgPDwgIkR5bmFtaWMgc2xvdCBpcyBub3QgZm91bmQgZm9yIHRhZz0iIDw8IHRhZzsKKyAgfQorCisgIC8vIFJlcGxhY2UgdGhpcyBlbnRyeSB3aXRoIHRoZSBvbmUgc3VwcGxpZWQuCisgIGR5bmFtaWNzLT5hdChzbG90KSA9IGR5bjsKKyAgVkxPRygxKSA8PCAiZHluYW1pY1siIDw8IHNsb3QgPDwgIl0gb3ZlcndyaXR0ZW4gd2l0aCAiIDw8IGR5bi5kX3RhZzsKK30KKworLy8gUmVtb3ZlIHJlbGF0aXZlIGVudHJpZXMgZnJvbSBkeW5hbWljIHJlbG9jYXRpb25zIGFuZCB3cml0ZSBhcyBwYWNrZWQKKy8vIGRhdGEgaW50byBhbmRyb2lkIHBhY2tlZCByZWxvY2F0aW9ucy4KK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+Citib29sIEVsZkZpbGU8RUxGPjo6UGFja1JlbG9jYXRpb25zKCkgeworICAvLyBMb2FkIHRoZSBFTEYgZmlsZSBpbnRvIGxpYmVsZi4KKyAgaWYgKCFMb2FkKCkpIHsKKyAgICBMT0coRVJST1IpIDw8ICJGYWlsZWQgdG8gbG9hZCBhcyBFTEYiOworICAgIHJldHVybiBmYWxzZTsKKyAgfQorCisgIC8vIFJldHJpZXZlIHRoZSBjdXJyZW50IGR5bmFtaWMgcmVsb2NhdGlvbnMgc2VjdGlvbiBkYXRhLgorICBFbGZfRGF0YSogZGF0YSA9IEdldFNlY3Rpb25EYXRhKHJlbG9jYXRpb25zX3NlY3Rpb25fKTsKKyAgLy8gd2UgYWx3YXlzIHBhY2sgcmVsYSwgYmVjYXVzZSBwYWNrZWQgZm9ybWF0IGlzIHByZXR0eSBtdWNoIHRoZSBzYW1lCisgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsYT4gcmVsb2NhdGlvbnM7CisKKyAgaWYgKHJlbG9jYXRpb25zX3R5cGVfID09IFJFTCkgeworICAgIC8vIENvbnZlcnQgZGF0YSB0byBhIHZlY3RvciBvZiByZWxvY2F0aW9ucy4KKyAgICBjb25zdCB0eXBlbmFtZSBFTEY6OlJlbCogcmVsb2NhdGlvbnNfYmFzZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8dHlwZW5hbWUgRUxGOjpSZWwqPihkYXRhLT5kX2J1Zik7CisgICAgQ29udmVydFJlbEFycmF5VG9SZWxhVmVjdG9yKHJlbG9jYXRpb25zX2Jhc2UsCisgICAgICAgIGRhdGEtPmRfc2l6ZSAvIHNpemVvZih0eXBlbmFtZSBFTEY6OlJlbCksICZyZWxvY2F0aW9ucyk7CisgICAgVkxPRygxKSA8PCAiUmVsb2NhdGlvbnMgICA6IFJFTCI7CisgIH0gZWxzZSBpZiAocmVsb2NhdGlvbnNfdHlwZV8gPT0gUkVMQSkgeworICAgIC8vIENvbnZlcnQgZGF0YSB0byBhIHZlY3RvciBvZiByZWxvY2F0aW9ucyB3aXRoIGFkZGVuZHMuCisgICAgY29uc3QgdHlwZW5hbWUgRUxGOjpSZWxhKiByZWxvY2F0aW9uc19iYXNlID0gcmVpbnRlcnByZXRfY2FzdDx0eXBlbmFtZSBFTEY6OlJlbGEqPihkYXRhLT5kX2J1Zik7CisgICAgcmVsb2NhdGlvbnMgPSBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OlJlbGE+KAorICAgICAgICByZWxvY2F0aW9uc19iYXNlLAorICAgICAgICByZWxvY2F0aW9uc19iYXNlICsgZGF0YS0+ZF9zaXplIC8gc2l6ZW9mKHJlbG9jYXRpb25zWzBdKSk7CisKKyAgICBWTE9HKDEpIDw8ICJSZWxvY2F0aW9ucyAgIDogUkVMQSI7CisgIH0gZWxzZSB7CisgICAgTk9UUkVBQ0hFRCgpOworICB9CisKKyAgcmV0dXJuIFBhY2tUeXBlZFJlbG9jYXRpb25zKCZyZWxvY2F0aW9ucyk7Cit9CisKKy8vIEhlbHBlciBmb3IgUGFja1JlbG9jYXRpb25zKCkuICBSZWwgdHlwZSBpcyBvbmUgb2YgRUxGOjpSZWwgb3IgRUxGOjpSZWxhLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK2Jvb2wgRWxmRmlsZTxFTEY+OjpQYWNrVHlwZWRSZWxvY2F0aW9ucyhzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OlJlbGE+KiByZWxvY2F0aW9ucykgeworICB0eXBlZGVmIHR5cGVuYW1lIEVMRjo6UmVsYSBSZWxhOworCisgIGlmIChoYXNfYW5kcm9pZF9yZWxvY2F0aW9uc18pIHsKKyAgICBMT0coSU5GTykgPDwgIlJlbG9jYXRpb24gdGFibGUgaXMgYWxyZWFkeSBwYWNrZWQiOworICAgIHJldHVybiB0cnVlOworICB9CisKKyAgLy8gSWYgbm8gcmVsb2NhdGlvbnMgdGhlbiB3ZSBoYXZlIG5vdGhpbmcgcGFja2FibGUuICBQZXJoYXBzCisgIC8vIHRoZSBzaGFyZWQgb2JqZWN0IGhhcyBhbHJlYWR5IGJlZW4gcGFja2VkPworICBpZiAocmVsb2NhdGlvbnMtPmVtcHR5KCkpIHsKKyAgICBMT0coRVJST1IpIDw8ICJObyByZWxvY2F0aW9ucyBmb3VuZCI7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisKKyAgY29uc3Qgc2l6ZV90IHJlbF9zaXplID0KKyAgICAgIHJlbG9jYXRpb25zX3R5cGVfID09IFJFTEEgPyBzaXplb2YodHlwZW5hbWUgRUxGOjpSZWxhKSA6IHNpemVvZih0eXBlbmFtZSBFTEY6OlJlbCk7CisgIGNvbnN0IHNpemVfdCBpbml0aWFsX2J5dGVzID0gcmVsb2NhdGlvbnMtPnNpemUoKSAqIHJlbF9zaXplOworCisgIFZMT0coMSkgPDwgIlVucGFja2VkICAgICAgICAgICAgICAgICAgIDogIiA8PCBpbml0aWFsX2J5dGVzIDw8ICIgYnl0ZXMiOworICBzdGQ6OnZlY3Rvcjx1aW50OF90PiBwYWNrZWQ7CisgIFJlbG9jYXRpb25QYWNrZXI8RUxGPiBwYWNrZXI7CisKKyAgLy8gUGFjayByZWxvY2F0aW9uczogZHJ5IHJ1biB0byBlc3RpbWF0ZSBtZW1vcnkgc2F2aW5ncy4KKyAgcGFja2VyLlBhY2tSZWxvY2F0aW9ucygqcmVsb2NhdGlvbnMsICZwYWNrZWQpOworICBjb25zdCBzaXplX3QgcGFja2VkX2J5dGVzX2VzdGltYXRlID0gcGFja2VkLnNpemUoKSAqIHNpemVvZihwYWNrZWRbMF0pOworICBWTE9HKDEpIDw8ICJQYWNrZWQgICAgICAgICAobm8gcGFkZGluZyk6ICIgPDwgcGFja2VkX2J5dGVzX2VzdGltYXRlIDw8ICIgYnl0ZXMiOworCisgIGlmIChwYWNrZWQuZW1wdHkoKSkgeworICAgIExPRyhJTkZPKSA8PCAiVG9vIGZldyByZWxvY2F0aW9ucyB0byBwYWNrIjsKKyAgICByZXR1cm4gdHJ1ZTsKKyAgfQorCisgIC8vIFByZS1jYWxjdWxhdGUgdGhlIHNpemUgb2YgdGhlIGhvbGUgd2Ugd2lsbCBjbG9zZSB1cCB3aGVuIHdlIHJld3JpdGUKKyAgLy8gZHluYW1pYyByZWxvY2F0aW9ucy4gIFdlIGhhdmUgdG8gYWRqdXN0IHJlbG9jYXRpb24gYWRkcmVzc2VzIHRvCisgIC8vIGFjY291bnQgZm9yIHRoaXMuCisgIHR5cGVuYW1lIEVMRjo6U2hkciogc2VjdGlvbl9oZWFkZXIgPSBFTEY6OmdldHNoZHIocmVsb2NhdGlvbnNfc2VjdGlvbl8pOworICBzc2l6ZV90IGhvbGVfc2l6ZSA9IGluaXRpYWxfYnl0ZXMgLSBwYWNrZWRfYnl0ZXNfZXN0aW1hdGU7CisKKyAgLy8gaG9sZV9zaXplIG5lZWRzIHRvIGJlIHBhZ2VfYWxpZ25lZC4KKyAgaG9sZV9zaXplIC09IGhvbGVfc2l6ZSAlIGtQcmVzZXJ2ZUFsaWdubWVudDsKKworICBMT0coSU5GTykgPDwgIkNvbXBhY3Rpb24gICAgICAgICAgICAgICAgIDogIiA8PCBob2xlX3NpemUgPDwgIiBieXRlcyI7CisKKyAgLy8gQWRqdXN0aW5nIGZvciBhbGlnbm1lbnQgbWF5IGhhdmUgcmVtb3ZlZCBhbnkgcGFja2luZyBiZW5lZml0LgorICBpZiAoaG9sZV9zaXplID09IDApIHsKKyAgICBMT0coSU5GTykgPDwgIlRvbyBmZXcgcmVsb2NhdGlvbnMgdG8gcGFjayBhZnRlciBhbGlnbm1lbnQiOworICAgIHJldHVybiB0cnVlOworICB9CisKKyAgaWYgKGhvbGVfc2l6ZSA8PSAwKSB7CisgICAgTE9HKElORk8pIDw8ICJQYWNraW5nIHJlbG9jYXRpb25zIHNhdmVzIG5vIHNwYWNlIjsKKyAgICByZXR1cm4gdHJ1ZTsKKyAgfQorCisgIHNpemVfdCBkYXRhX3BhZGRpbmdfYnl0ZXMgPSBpc19wYWRkaW5nX3JlbG9jYXRpb25zXyA/CisgICAgICBpbml0aWFsX2J5dGVzIC0gcGFja2VkX2J5dGVzX2VzdGltYXRlIDoKKyAgICAgIGluaXRpYWxfYnl0ZXMgLSBob2xlX3NpemUgLSBwYWNrZWRfYnl0ZXNfZXN0aW1hdGU7CisKKyAgLy8gcGFkIGRhdGEKKyAgc3RkOjp2ZWN0b3I8dWludDhfdD4gcGFkZGluZyhkYXRhX3BhZGRpbmdfYnl0ZXMsIDApOworICBwYWNrZWQuaW5zZXJ0KHBhY2tlZC5lbmQoKSwgcGFkZGluZy5iZWdpbigpLCBwYWRkaW5nLmVuZCgpKTsKKworICBjb25zdCB2b2lkKiBwYWNrZWRfZGF0YSA9ICZwYWNrZWRbMF07CisKKyAgLy8gUnVuIGEgbG9vcGJhY2sgc2VsZi10ZXN0IGFzIGEgY2hlY2sgdGhhdCBwYWNraW5nIGlzIGxvc3NsZXNzLgorICBzdGQ6OnZlY3RvcjxSZWxhPiB1bnBhY2tlZDsKKyAgcGFja2VyLlVucGFja1JlbG9jYXRpb25zKHBhY2tlZCwgJnVucGFja2VkKTsKKyAgQ0hFQ0sodW5wYWNrZWQuc2l6ZSgpID09IHJlbG9jYXRpb25zLT5zaXplKCkpOworICBDSEVDSyghbWVtY21wKCZ1bnBhY2tlZFswXSwKKyAgICAgICAgICAgICAgICAmcmVsb2NhdGlvbnMtPmF0KDApLAorICAgICAgICAgICAgICAgIHVucGFja2VkLnNpemUoKSAqIHNpemVvZih1bnBhY2tlZFswXSkpKTsKKworICAvLyBSZXdyaXRlIHRoZSBjdXJyZW50IGR5bmFtaWMgcmVsb2NhdGlvbnMgc2VjdGlvbiB3aXRoIHBhY2tlZCBvbmUgdGhlbiBzaHJpbmsgaXQgdG8gc2l6ZS4KKyAgY29uc3Qgc2l6ZV90IGJ5dGVzID0gcGFja2VkLnNpemUoKSAqIHNpemVvZihwYWNrZWRbMF0pOworICBSZXNpemVTZWN0aW9uKGVsZl8sIHJlbG9jYXRpb25zX3NlY3Rpb25fLCBieXRlcywKKyAgICAgIHJlbG9jYXRpb25zX3R5cGVfID09IFJFTCA/IFNIVF9BTkRST0lEX1JFTCA6IFNIVF9BTkRST0lEX1JFTEEsIHJlbG9jYXRpb25zX3R5cGVfKTsKKyAgUmV3cml0ZVNlY3Rpb25EYXRhKHJlbG9jYXRpb25zX3NlY3Rpb25fLCBwYWNrZWRfZGF0YSwgYnl0ZXMpOworCisgIC8vIFRPRE8gKGRpbWl0cnkpOiBmaXggc3RyaW5nIHRhYmxlIGFuZCByZXBsYWNlIC5yZWwuZHluL3BsdCB3aXRoIC5hbmRyb2lkLnJlbC5keW4vcGx0CisKKyAgLy8gUmV3cml0ZSAuZHluYW1pYyBhbmQgcmVuYW1lIHJlbG9jYXRpb24gdGFncyBkZXNjcmliaW5nIHRoZSBwYWNrZWQgYW5kcm9pZAorICAvLyByZWxvY2F0aW9ucy4KKyAgRWxmX0RhdGEqIGRhdGEgPSBHZXRTZWN0aW9uRGF0YShkeW5hbWljX3NlY3Rpb25fKTsKKyAgY29uc3QgdHlwZW5hbWUgRUxGOjpEeW4qIGR5bmFtaWNfYmFzZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8dHlwZW5hbWUgRUxGOjpEeW4qPihkYXRhLT5kX2J1Zik7CisgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6RHluPiBkeW5hbWljcygKKyAgICAgIGR5bmFtaWNfYmFzZSwKKyAgICAgIGR5bmFtaWNfYmFzZSArIGRhdGEtPmRfc2l6ZSAvIHNpemVvZihkeW5hbWljc1swXSkpOworICBzZWN0aW9uX2hlYWRlciA9IEVMRjo6Z2V0c2hkcihyZWxvY2F0aW9uc19zZWN0aW9uXyk7CisgIHsKKyAgICB0eXBlbmFtZSBFTEY6OkR5biBkeW47CisgICAgZHluLmRfdGFnID0gcmVsb2NhdGlvbnNfdHlwZV8gPT0gUkVMID8gRFRfQU5EUk9JRF9SRUwgOiBEVF9BTkRST0lEX1JFTEE7CisgICAgZHluLmRfdW4uZF9wdHIgPSBzZWN0aW9uX2hlYWRlci0+c2hfYWRkcjsKKyAgICBSZXBsYWNlRHluYW1pY0VudHJ5PEVMRj4ocmVsb2NhdGlvbnNfdHlwZV8gPT0gUkVMID8gRFRfUkVMIDogRFRfUkVMQSwgZHluLCAmZHluYW1pY3MpOworICB9CisgIHsKKyAgICB0eXBlbmFtZSBFTEY6OkR5biBkeW47CisgICAgZHluLmRfdGFnID0gcmVsb2NhdGlvbnNfdHlwZV8gPT0gUkVMID8gRFRfQU5EUk9JRF9SRUxTWiA6IERUX0FORFJPSURfUkVMQVNaOworICAgIGR5bi5kX3VuLmRfdmFsID0gc2VjdGlvbl9oZWFkZXItPnNoX3NpemU7CisgICAgUmVwbGFjZUR5bmFtaWNFbnRyeTxFTEY+KHJlbG9jYXRpb25zX3R5cGVfID09IFJFTCA/IERUX1JFTFNaIDogRFRfUkVMQVNaLCBkeW4sICZkeW5hbWljcyk7CisgIH0KKworICBjb25zdCB2b2lkKiBkeW5hbWljc19kYXRhID0gJmR5bmFtaWNzWzBdOworICBjb25zdCBzaXplX3QgZHluYW1pY3NfYnl0ZXMgPSBkeW5hbWljcy5zaXplKCkgKiBzaXplb2YoZHluYW1pY3NbMF0pOworICBSZXdyaXRlU2VjdGlvbkRhdGEoZHluYW1pY19zZWN0aW9uXywgZHluYW1pY3NfZGF0YSwgZHluYW1pY3NfYnl0ZXMpOworCisgIEZsdXNoKCk7CisgIHJldHVybiB0cnVlOworfQorCisvLyBGaW5kIHBhY2tlZCByZWxhdGl2ZSByZWxvY2F0aW9ucyBpbiB0aGUgcGFja2VkIGFuZHJvaWQgcmVsb2NhdGlvbnMKKy8vIHNlY3Rpb24sIHVucGFjayB0aGVtLCBhbmQgcmV3cml0ZSB0aGUgZHluYW1pYyByZWxvY2F0aW9ucyBzZWN0aW9uIHRvCisvLyBjb250YWluIHVucGFja2VkIGRhdGEuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorYm9vbCBFbGZGaWxlPEVMRj46OlVucGFja1JlbG9jYXRpb25zKCkgeworICAvLyBMb2FkIHRoZSBFTEYgZmlsZSBpbnRvIGxpYmVsZi4KKyAgaWYgKCFMb2FkKCkpIHsKKyAgICBMT0coRVJST1IpIDw8ICJGYWlsZWQgdG8gbG9hZCBhcyBFTEYiOworICAgIHJldHVybiBmYWxzZTsKKyAgfQorCisgIHR5cGVuYW1lIEVMRjo6U2hkciogc2VjdGlvbl9oZWFkZXIgPSBFTEY6OmdldHNoZHIocmVsb2NhdGlvbnNfc2VjdGlvbl8pOworICAvLyBSZXRyaWV2ZSB0aGUgY3VycmVudCBwYWNrZWQgYW5kcm9pZCByZWxvY2F0aW9ucyBzZWN0aW9uIGRhdGEuCisgIEVsZl9EYXRhKiBkYXRhID0gR2V0U2VjdGlvbkRhdGEocmVsb2NhdGlvbnNfc2VjdGlvbl8pOworCisgIC8vIENvbnZlcnQgZGF0YSB0byBhIHZlY3RvciBvZiBieXRlcy4KKyAgY29uc3QgdWludDhfdCogcGFja2VkX2Jhc2UgPSByZWludGVycHJldF9jYXN0PHVpbnQ4X3QqPihkYXRhLT5kX2J1Zik7CisgIHN0ZDo6dmVjdG9yPHVpbnQ4X3Q+IHBhY2tlZCgKKyAgICAgIHBhY2tlZF9iYXNlLAorICAgICAgcGFja2VkX2Jhc2UgKyBkYXRhLT5kX3NpemUgLyBzaXplb2YocGFja2VkWzBdKSk7CisKKyAgaWYgKChzZWN0aW9uX2hlYWRlci0+c2hfdHlwZSA9PSBTSFRfQU5EUk9JRF9SRUxBIHx8IHNlY3Rpb25faGVhZGVyLT5zaF90eXBlID09IFNIVF9BTkRST0lEX1JFTCkgJiYKKyAgICAgIHBhY2tlZC5zaXplKCkgPiAzICYmCisgICAgICBwYWNrZWRbMF0gPT0gJ0EnICYmCisgICAgICBwYWNrZWRbMV0gPT0gJ1AnICYmCisgICAgICBwYWNrZWRbMl0gPT0gJ1MnICYmCisgICAgICBwYWNrZWRbM10gPT0gJzInKSB7CisgICAgTE9HKElORk8pIDw8ICJSZWxvY2F0aW9ucyAgIDogIiA8PCAocmVsb2NhdGlvbnNfdHlwZV8gPT0gUkVMID8gIlJFTCIgOiAiUkVMQSIpOworICB9IGVsc2UgeworICAgIExPRyhFUlJPUikgPDwgIlBhY2tlZCByZWxvY2F0aW9ucyBub3QgZm91bmQgKG5vdCBwYWNrZWQ/KSI7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisKKyAgcmV0dXJuIFVucGFja1R5cGVkUmVsb2NhdGlvbnMocGFja2VkKTsKK30KKworLy8gSGVscGVyIGZvciBVbnBhY2tSZWxvY2F0aW9ucygpLiAgUmVsIHR5cGUgaXMgb25lIG9mIEVMRjo6UmVsIG9yIEVMRjo6UmVsYS4KK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+Citib29sIEVsZkZpbGU8RUxGPjo6VW5wYWNrVHlwZWRSZWxvY2F0aW9ucyhjb25zdCBzdGQ6OnZlY3Rvcjx1aW50OF90PiYgcGFja2VkKSB7CisgIC8vIFVucGFjayB0aGUgZGF0YSB0byByZS1tYXRlcmlhbGl6ZSB0aGUgcmVsYXRpdmUgcmVsb2NhdGlvbnMuCisgIGNvbnN0IHNpemVfdCBwYWNrZWRfYnl0ZXMgPSBwYWNrZWQuc2l6ZSgpICogc2l6ZW9mKHBhY2tlZFswXSk7CisgIExPRyhJTkZPKSA8PCAiUGFja2VkICAgICAgICAgICA6ICIgPDwgcGFja2VkX2J5dGVzIDw8ICIgYnl0ZXMiOworICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OlJlbGE+IHVucGFja2VkX3JlbG9jYXRpb25zOworICBSZWxvY2F0aW9uUGFja2VyPEVMRj4gcGFja2VyOworICBwYWNrZXIuVW5wYWNrUmVsb2NhdGlvbnMocGFja2VkLCAmdW5wYWNrZWRfcmVsb2NhdGlvbnMpOworCisgIGNvbnN0IHNpemVfdCByZWxvY2F0aW9uX2VudHJ5X3NpemUgPQorICAgICAgcmVsb2NhdGlvbnNfdHlwZV8gPT0gUkVMID8gc2l6ZW9mKHR5cGVuYW1lIEVMRjo6UmVsKSA6IHNpemVvZih0eXBlbmFtZSBFTEY6OlJlbGEpOworICBjb25zdCBzaXplX3QgdW5wYWNrZWRfYnl0ZXMgPSB1bnBhY2tlZF9yZWxvY2F0aW9ucy5zaXplKCkgKiByZWxvY2F0aW9uX2VudHJ5X3NpemU7CisgIExPRyhJTkZPKSA8PCAiVW5wYWNrZWQgICAgICAgICA6ICIgPDwgdW5wYWNrZWRfYnl0ZXMgPDwgIiBieXRlcyI7CisKKyAgLy8gUmV0cmlldmUgdGhlIGN1cnJlbnQgZHluYW1pYyByZWxvY2F0aW9ucyBzZWN0aW9uIGRhdGEuCisgIEVsZl9EYXRhKiBkYXRhID0gR2V0U2VjdGlvbkRhdGEocmVsb2NhdGlvbnNfc2VjdGlvbl8pOworCisgIExPRyhJTkZPKSA8PCAiUmVsb2NhdGlvbnMgICAgICA6ICIgPDwgdW5wYWNrZWRfcmVsb2NhdGlvbnMuc2l6ZSgpIDw8ICIgZW50cmllcyI7CisKKyAgLy8gSWYgd2UgZm91bmQgdGhlIHNhbWUgbnVtYmVyIG9mIG51bGwgcmVsb2NhdGlvbiBlbnRyaWVzIGluIHRoZSBkeW5hbWljCisgIC8vIHJlbG9jYXRpb25zIHNlY3Rpb24gYXMgd2UgaG9sZCBhcyB1bnBhY2tlZCByZWxhdGl2ZSByZWxvY2F0aW9ucywgdGhlbgorICAvLyB0aGlzIGlzIGEgcGFkZGVkIGZpbGUuCisKKyAgY29uc3QgYm9vbCBpc19wYWRkZWQgPSBwYWNrZWRfYnl0ZXMgPT0gdW5wYWNrZWRfYnl0ZXM7CisKKyAgLy8gVW5sZXNzIHBhZGRlZCwgcHJlLWFwcGx5IHJlbGF0aXZlIHJlbG9jYXRpb25zIHRvIGFjY291bnQgZm9yIHRoZQorICAvLyBob2xlLCBhbmQgcHJlLWFkanVzdCBhbGwgcmVsb2NhdGlvbiBvZmZzZXRzIGFjY29yZGluZ2x5LgorICB0eXBlbmFtZSBFTEY6OlNoZHIqIHNlY3Rpb25faGVhZGVyID0gRUxGOjpnZXRzaGRyKHJlbG9jYXRpb25zX3NlY3Rpb25fKTsKKworICBpZiAoIWlzX3BhZGRlZCkgeworICAgIExPRyhJTkZPKSA8PCAiRXhwYW5zaW9uICAgICA6ICIgPDwgdW5wYWNrZWRfYnl0ZXMgLSBwYWNrZWRfYnl0ZXMgPDwgIiBieXRlcyI7CisgIH0KKworICAvLyBSZXdyaXRlIHRoZSBjdXJyZW50IGR5bmFtaWMgcmVsb2NhdGlvbnMgc2VjdGlvbiB3aXRoIHVucGFja2VkIHZlcnNpb24gb2YKKyAgLy8gcmVsb2NhdGlvbnMuCisgIGNvbnN0IHZvaWQqIHNlY3Rpb25fZGF0YSA9IG51bGxwdHI7CisgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsPiB1bnBhY2tlZF9yZWxfcmVsb2NhdGlvbnM7CisgIGlmIChyZWxvY2F0aW9uc190eXBlXyA9PSBSRUxBKSB7CisgICAgc2VjdGlvbl9kYXRhID0gJnVucGFja2VkX3JlbG9jYXRpb25zWzBdOworICB9IGVsc2UgaWYgKHJlbG9jYXRpb25zX3R5cGVfID09IFJFTCkgeworICAgIENvbnZlcnRSZWxhVmVjdG9yVG9SZWxWZWN0b3IodW5wYWNrZWRfcmVsb2NhdGlvbnMsICZ1bnBhY2tlZF9yZWxfcmVsb2NhdGlvbnMpOworICAgIHNlY3Rpb25fZGF0YSA9ICZ1bnBhY2tlZF9yZWxfcmVsb2NhdGlvbnNbMF07CisgIH0gZWxzZSB7CisgICAgTk9UUkVBQ0hFRCgpOworICB9CisKKyAgUmVzaXplU2VjdGlvbihlbGZfLCByZWxvY2F0aW9uc19zZWN0aW9uXywgdW5wYWNrZWRfYnl0ZXMsCisgICAgICByZWxvY2F0aW9uc190eXBlXyA9PSBSRUwgPyBTSFRfUkVMIDogU0hUX1JFTEEsIHJlbG9jYXRpb25zX3R5cGVfKTsKKyAgUmV3cml0ZVNlY3Rpb25EYXRhKHJlbG9jYXRpb25zX3NlY3Rpb25fLCBzZWN0aW9uX2RhdGEsIHVucGFja2VkX2J5dGVzKTsKKworICAvLyBSZXdyaXRlIC5keW5hbWljIHRvIHJlbW92ZSB0d28gdGFncyBkZXNjcmliaW5nIHBhY2tlZCBhbmRyb2lkIHJlbG9jYXRpb25zLgorICBkYXRhID0gR2V0U2VjdGlvbkRhdGEoZHluYW1pY19zZWN0aW9uXyk7CisgIGNvbnN0IHR5cGVuYW1lIEVMRjo6RHluKiBkeW5hbWljX2Jhc2UgPSByZWludGVycHJldF9jYXN0PHR5cGVuYW1lIEVMRjo6RHluKj4oZGF0YS0+ZF9idWYpOworICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OkR5bj4gZHluYW1pY3MoCisgICAgICBkeW5hbWljX2Jhc2UsCisgICAgICBkeW5hbWljX2Jhc2UgKyBkYXRhLT5kX3NpemUgLyBzaXplb2YoZHluYW1pY3NbMF0pKTsKKyAgeworICAgIHR5cGVuYW1lIEVMRjo6RHluIGR5bjsKKyAgICBkeW4uZF90YWcgPSByZWxvY2F0aW9uc190eXBlXyA9PSBSRUwgPyBEVF9SRUwgOiBEVF9SRUxBOworICAgIGR5bi5kX3VuLmRfcHRyID0gc2VjdGlvbl9oZWFkZXItPnNoX2FkZHI7CisgICAgUmVwbGFjZUR5bmFtaWNFbnRyeTxFTEY+KHJlbG9jYXRpb25zX3R5cGVfID09IFJFTCA/IERUX0FORFJPSURfUkVMIDogRFRfQU5EUk9JRF9SRUxBLAorICAgICAgICBkeW4sICZkeW5hbWljcyk7CisgIH0KKworICB7CisgICAgdHlwZW5hbWUgRUxGOjpEeW4gZHluOworICAgIGR5bi5kX3RhZyA9IHJlbG9jYXRpb25zX3R5cGVfID09IFJFTCA/IERUX1JFTFNaIDogRFRfUkVMQVNaOworICAgIGR5bi5kX3VuLmRfdmFsID0gc2VjdGlvbl9oZWFkZXItPnNoX3NpemU7CisgICAgUmVwbGFjZUR5bmFtaWNFbnRyeTxFTEY+KHJlbG9jYXRpb25zX3R5cGVfID09IFJFTCA/IERUX0FORFJPSURfUkVMU1ogOiBEVF9BTkRST0lEX1JFTEFTWiwKKyAgICAgICAgZHluLCAmZHluYW1pY3MpOworICB9CisKKyAgY29uc3Qgdm9pZCogZHluYW1pY3NfZGF0YSA9ICZkeW5hbWljc1swXTsKKyAgY29uc3Qgc2l6ZV90IGR5bmFtaWNzX2J5dGVzID0gZHluYW1pY3Muc2l6ZSgpICogc2l6ZW9mKGR5bmFtaWNzWzBdKTsKKyAgUmV3cml0ZVNlY3Rpb25EYXRhKGR5bmFtaWNfc2VjdGlvbl8sIGR5bmFtaWNzX2RhdGEsIGR5bmFtaWNzX2J5dGVzKTsKKworICBGbHVzaCgpOworICByZXR1cm4gdHJ1ZTsKK30KKworLy8gRmx1c2ggcmV3cml0dGVuIHNoYXJlZCBvYmplY3QgZmlsZSBkYXRhLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3ZvaWQgRWxmRmlsZTxFTEY+OjpGbHVzaCgpIHsKKyAgLy8gRmxhZyBhbGwgRUxGIGRhdGEgaGVsZCBpbiBtZW1vcnkgYXMgbmVlZGluZyB0byBiZSB3cml0dGVuIGJhY2sgdG8gdGhlCisgIC8vIGZpbGUsIGFuZCB0ZWxsIGxpYmVsZiB0aGF0IHdlIGhhdmUgY29udHJvbGxlZCB0aGUgZmlsZSBsYXlvdXQuCisgIGVsZl9mbGFnZWxmKGVsZl8sIEVMRl9DX1NFVCwgRUxGX0ZfRElSVFkpOworICBlbGZfZmxhZ2VsZihlbGZfLCBFTEZfQ19TRVQsIEVMRl9GX0xBWU9VVCk7CisKKyAgLy8gV3JpdGUgRUxGIGRhdGEgYmFjayB0byBkaXNrLgorICBjb25zdCBvZmZfdCBmaWxlX2J5dGVzID0gZWxmX3VwZGF0ZShlbGZfLCBFTEZfQ19XUklURSk7CisgIGlmIChmaWxlX2J5dGVzID09IC0xKSB7CisgICAgTE9HKEVSUk9SKSA8PCAiZWxmX3VwZGF0ZSBmYWlsZWQ6ICIgPDwgZWxmX2Vycm1zZyhlbGZfZXJybm8oKSk7CisgIH0KKworICBDSEVDSyhmaWxlX2J5dGVzID4gMCk7CisgIFZMT0coMSkgPDwgImVsZl91cGRhdGUgcmV0dXJuZWQ6ICIgPDwgZmlsZV9ieXRlczsKKworICAvLyBDbGVhbiB1cCBsaWJlbGYsIGFuZCB0cnVuY2F0ZSB0aGUgb3V0cHV0IGZpbGUgdG8gdGhlIG51bWJlciBvZiBieXRlcworICAvLyB3cml0dGVuIGJ5IGVsZl91cGRhdGUoKS4KKyAgZWxmX2VuZChlbGZfKTsKKyAgZWxmXyA9IE5VTEw7CisgIGNvbnN0IGludCB0cnVuY2F0ZSA9IGZ0cnVuY2F0ZShmZF8sIGZpbGVfYnl0ZXMpOworICBDSEVDSyh0cnVuY2F0ZSA9PSAwKTsKK30KKwordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3ZvaWQgRWxmRmlsZTxFTEY+OjpDb252ZXJ0UmVsQXJyYXlUb1JlbGFWZWN0b3IoY29uc3QgdHlwZW5hbWUgRUxGOjpSZWwqIHJlbF9hcnJheSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IHJlbF9hcnJheV9zaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OlJlbGE+KiByZWxhX3ZlY3RvcikgeworICBmb3IgKHNpemVfdCBpID0gMDsgaTxyZWxfYXJyYXlfc2l6ZTsgKytpKSB7CisgICAgdHlwZW5hbWUgRUxGOjpSZWxhIHJlbGE7CisgICAgcmVsYS5yX29mZnNldCA9IHJlbF9hcnJheVtpXS5yX29mZnNldDsKKyAgICByZWxhLnJfaW5mbyA9IHJlbF9hcnJheVtpXS5yX2luZm87CisgICAgcmVsYS5yX2FkZGVuZCA9IDA7CisgICAgcmVsYV92ZWN0b3ItPnB1c2hfYmFjayhyZWxhKTsKKyAgfQorfQorCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgordm9pZCBFbGZGaWxlPEVMRj46OkNvbnZlcnRSZWxhVmVjdG9yVG9SZWxWZWN0b3IoY29uc3Qgc3RkOjp2ZWN0b3I8dHlwZW5hbWUgRUxGOjpSZWxhPiYgcmVsYV92ZWN0b3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OlJlbD4qIHJlbF92ZWN0b3IpIHsKKyAgZm9yIChhdXRvIHJlbGEgOiByZWxhX3ZlY3RvcikgeworICAgIHR5cGVuYW1lIEVMRjo6UmVsIHJlbDsKKyAgICByZWwucl9vZmZzZXQgPSByZWxhLnJfb2Zmc2V0OworICAgIHJlbC5yX2luZm8gPSByZWxhLnJfaW5mbzsKKyAgICBDSEVDSyhyZWxhLnJfYWRkZW5kID09IDApOworICAgIHJlbF92ZWN0b3ItPnB1c2hfYmFjayhyZWwpOworICB9Cit9CisKK3RlbXBsYXRlIGNsYXNzIEVsZkZpbGU8RUxGMzJfdHJhaXRzPjsKK3RlbXBsYXRlIGNsYXNzIEVsZkZpbGU8RUxGNjRfdHJhaXRzPjsKKworfSAgLy8gbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZWxmX2ZpbGUuaCBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9lbGZfZmlsZS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ2YWNjNzYKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZWxmX2ZpbGUuaApAQCAtMCwwICsxLDEyMSBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvLyBFTEYgc2hhcmVkIG9iamVjdCBmaWxlIHVwZGF0ZXMgaGFuZGxlci4KKy8vCisvLyBQcm92aWRlcyBmdW5jdGlvbnMgdG8gcGFjayByZWxvY2F0aW9ucyBpbiB0aGUgLnJlbC5keW4gb3IgLnJlbGEuZHluCisvLyBzZWN0aW9ucywgYW5kIHVucGFjayB0byByZXR1cm4gdGhlIGZpbGUgdG8gaXRzIHByZS1wYWNrZWQgc3RhdGUuCisvLworLy8gU2V0UGFkZGluZygpIGNhdXNlcyBQYWNrUmVsb2NhdGlvbnMoKSB0byBwYWQgLnJlbC5keW4gb3IgLnJlbGEuZHluIHdpdGgKKy8vIE5PTkUtdHlwZSBlbnRyaWVzIHJhdGhlciB0aGFuIGN1dHRpbmcgYSBob2xlIG91dCBvZiB0aGUgc2hhcmVkIG9iamVjdAorLy8gZmlsZS4gIFRoaXMga2VlcHMgYWxsIGxvYWQgYWRkcmVzc2VzIGFuZCBvZmZzZXRzIGNvbnN0YW50LCBhbmQgZW5hYmxlcworLy8gZWFzaWVyIGRlYnVnZ2luZyBhbmQgdGVzdGluZy4KKy8vCisvLyBBIHBhY2tlZCBzaGFyZWQgb2JqZWN0IGZpbGUgaXMgc2hvcnRlciB0aGFuIGl0cyBub24tcGFja2VkIG9yaWdpbmFsLgorLy8gVW5wYWNraW5nIGEgcGFja2VkIGZpbGUgcmVzdG9yZXMgdGhlIGZpbGUgdG8gaXRzIG5vbi1wYWNrZWQgc3RhdGUuCisKKyNpZm5kZWYgVE9PTFNfUkVMT0NBVElPTl9QQUNLRVJfU1JDX0VMRl9GSUxFX0hfCisjZGVmaW5lIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19FTEZfRklMRV9IXworCisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8dmVjdG9yPgorCisjaW5jbHVkZSAiZWxmLmgiCisjaW5jbHVkZSAibGliZWxmLmgiCisjaW5jbHVkZSAicGFja2VyLmgiCisKK25hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlciB7CisKKy8vIEFuIEVsZkZpbGUgcmVhZHMgc2hhcmVkIG9iamVjdHMsIGFuZCBzaHV0dGxlcyByZWxhdGl2ZSByZWxvY2F0aW9ucworLy8gYmV0d2VlbiAucmVsLmR5biBvciAucmVsYS5keW4gYW5kIC5hbmRyb2lkLnJlbC5keW4gb3IgLmFuZHJvaWQucmVsYS5keW4KKy8vIHNlY3Rpb25zLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK2NsYXNzIEVsZkZpbGUgeworIHB1YmxpYzoKKyAgZXhwbGljaXQgRWxmRmlsZShpbnQgZmQpCisgICAgICA6IGZkXyhmZCksIGlzX3BhZGRpbmdfcmVsb2NhdGlvbnNfKGZhbHNlKSwgZWxmXyhOVUxMKSwKKyAgICAgICAgcmVsb2NhdGlvbnNfc2VjdGlvbl8oTlVMTCksIGR5bmFtaWNfc2VjdGlvbl8oTlVMTCksCisgICAgICAgIHJlbG9jYXRpb25zX3R5cGVfKE5PTkUpLCBoYXNfYW5kcm9pZF9yZWxvY2F0aW9uc18oZmFsc2UpIHt9CisgIH5FbGZGaWxlKCkge30KKworICAvLyBTZXQgcGFkZGluZyBtb2RlLiAgV2hlbiBwYWRkaW5nLCBQYWNrUmVsb2NhdGlvbnMoKSB3aWxsIG5vdCBzaHJpbmsKKyAgLy8gdGhlIC5yZWwuZHluIG9yIC5yZWxhLmR5biBzZWN0aW9uLCBidXQgaW5zdGVhZCByZXBsYWNlIHJlbGF0aXZlIHdpdGgKKyAgLy8gTk9ORS10eXBlIGVudHJpZXMuCisgIC8vIHxmbGFnfCBpcyB0cnVlIHRvIHBhZCAucmVsLmR5biBvciAucmVsYS5keW4sIGZhbHNlIHRvIHNocmluayBpdC4KKyAgaW5saW5lIHZvaWQgU2V0UGFkZGluZyhib29sIGZsYWcpIHsgaXNfcGFkZGluZ19yZWxvY2F0aW9uc18gPSBmbGFnOyB9CisKKyAgLy8gVHJhbnNmZXIgcmVsYXRpdmUgcmVsb2NhdGlvbnMgZnJvbSAucmVsLmR5biBvciAucmVsYS5keW4gdG8gYSBwYWNrZWQKKyAgLy8gcmVwcmVzZW50YXRpb24gaW4gLmFuZHJvaWQucmVsLmR5biBvciAuYW5kcm9pZC5yZWxhLmR5bi4gIFJldHVybnMgdHJ1ZQorICAvLyBvbiBzdWNjZXNzLgorICBib29sIFBhY2tSZWxvY2F0aW9ucygpOworCisgIC8vIFRyYW5zZmVyIHJlbGF0aXZlIHJlbG9jYXRpb25zIGZyb20gYSBwYWNrZWQgcmVwcmVzZW50YXRpb24gaW4KKyAgLy8gLmFuZHJvaWQucmVsLmR5biBvciAuYW5kcm9pZC5yZWxhLmR5biB0byAucmVsLmR5biBvciAucmVsYS5keW4uICBSZXR1cm5zCisgIC8vIHRydWUgb24gc3VjY2Vzcy4KKyAgYm9vbCBVbnBhY2tSZWxvY2F0aW9ucygpOworCisgcHJpdmF0ZToKKyAgZW51bSByZWxvY2F0aW9uc190eXBlX3QgeworICAgIE5PTkUgPSAwLCBSRUwsIFJFTEEKKyAgfTsKKworICAvLyBMb2FkIGEgbmV3IEVsZkZpbGUgZnJvbSBhIGZpbGVkZXNjcmlwdG9yLiAgSWYgZmx1c2hpbmcsIHRoZSBmaWxlIG11c3QKKyAgLy8gYmUgb3BlbiBmb3IgcmVhZC93cml0ZS4gIFJldHVybnMgdHJ1ZSBvbiBzdWNjZXNzZnVsIEVMRiBmaWxlIGxvYWQuCisgIC8vIHxmZHwgaXMgYW4gb3BlbiBmaWxlIGRlc2NyaXB0b3IgZm9yIHRoZSBzaGFyZWQgb2JqZWN0LgorICBib29sIExvYWQoKTsKKworICAvLyBUZW1wbGF0ZWQgcGFja2VyLCBoZWxwZXIgZm9yIFBhY2tSZWxvY2F0aW9ucygpLiAgUmVsIHR5cGUgaXMgb25lIG9mCisgIC8vIEVMRjo6UmVsIG9yIEVMRjo6UmVsYS4KKyAgYm9vbCBQYWNrVHlwZWRSZWxvY2F0aW9ucyhzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OlJlbGE+KiByZWxvY2F0aW9ucyk7CisKKyAgLy8gVGVtcGxhdGVkIHVucGFja2VyLCBoZWxwZXIgZm9yIFVucGFja1JlbG9jYXRpb25zKCkuICBSZWwgdHlwZSBpcyBvbmUgb2YKKyAgLy8gRUxGOjpSZWwgb3IgRUxGOjpSZWxhLgorICBib29sIFVucGFja1R5cGVkUmVsb2NhdGlvbnMoY29uc3Qgc3RkOjp2ZWN0b3I8dWludDhfdD4mIHBhY2tlZCk7CisKKyAgLy8gV3JpdGUgRUxGIGZpbGUgY2hhbmdlcy4KKyAgdm9pZCBGbHVzaCgpOworCisgIHZvaWQgQWRqdXN0UmVsYXRpdmVSZWxvY2F0aW9uVGFyZ2V0cyh0eXBlbmFtZSBFTEY6Ok9mZiBob2xlX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3NpemVfdCBob2xlX3NpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OlJlbGE+KiByZWxvY2F0aW9ucyk7CisKKyAgc3RhdGljIHZvaWQgUmVzaXplU2VjdGlvbihFbGYqIGVsZiwgRWxmX1Njbiogc2VjdGlvbiwgc2l6ZV90IG5ld19zaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVuYW1lIEVMRjo6V29yZCBuZXdfc2hfdHlwZSwgcmVsb2NhdGlvbnNfdHlwZV90IHJlbG9jYXRpb25zX3R5cGUpOworCisgIHN0YXRpYyB2b2lkIEFkanVzdER5bmFtaWNTZWN0aW9uRm9ySG9sZShFbGZfU2NuKiBkeW5hbWljX3NlY3Rpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBFTEY6Ok9mZiBob2xlX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3NpemVfdCBob2xlX3NpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxvY2F0aW9uc190eXBlX3QgcmVsb2NhdGlvbnNfdHlwZSk7CisKKyAgc3RhdGljIHZvaWQgQ29udmVydFJlbEFycmF5VG9SZWxhVmVjdG9yKGNvbnN0IHR5cGVuYW1lIEVMRjo6UmVsKiByZWxfYXJyYXksIHNpemVfdCByZWxfYXJyYXlfc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsYT4qIHJlbGFfdmVjdG9yKTsKKworICBzdGF0aWMgdm9pZCBDb252ZXJ0UmVsYVZlY3RvclRvUmVsVmVjdG9yKGNvbnN0IHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsYT4mIHJlbGFfdmVjdG9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsPiogcmVsX3ZlY3Rvcik7CisKKworICAvLyBGaWxlIGRlc2NyaXB0b3Igb3BlbmVkIG9uIHRoZSBzaGFyZWQgb2JqZWN0LgorICBpbnQgZmRfOworCisgIC8vIElmIHNldCwgcGFkIHJhdGhlciB0aGFuIHNocmluayAucmVsLmR5biBvciAucmVsYS5keW4uICBQcmltYXJpbHkgZm9yCisgIC8vIGRlYnVnZ2luZywgYWxsb3dzIHBhY2tpbmcgdG8gYmUgY2hlY2tlZCB3aXRob3V0IGFmZmVjdGluZyBsb2FkIGFkZHJlc3Nlcy4KKyAgYm9vbCBpc19wYWRkaW5nX3JlbG9jYXRpb25zXzsKKworICAvLyBMaWJlbGYgaGFuZGxlLCBhc3NpZ25lZCBieSBMb2FkKCkuCisgIEVsZiogZWxmXzsKKworICAvLyBTZWN0aW9ucyB0aGF0IHdlIG1hbmlwdWxhdGUsIGFzc2lnbmVkIGJ5IExvYWQoKS4KKyAgRWxmX1NjbiogcmVsb2NhdGlvbnNfc2VjdGlvbl87CisgIEVsZl9TY24qIGR5bmFtaWNfc2VjdGlvbl87CisKKyAgLy8gUmVsb2NhdGlvbiB0eXBlIGZvdW5kLCBhc3NpZ25lZCBieSBMb2FkKCkuCisgIHJlbG9jYXRpb25zX3R5cGVfdCByZWxvY2F0aW9uc190eXBlXzsKKworICAvLyBFbGYtZmlsZSBoYXMgYW5kcm9pZCByZWxvY2F0aW9ucyBzZWN0aW9uCisgIGJvb2wgaGFzX2FuZHJvaWRfcmVsb2NhdGlvbnNfOworfTsKKworfSAgLy8gbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyCisKKyNlbmRpZiAgLy8gVE9PTFNfUkVMT0NBVElPTl9QQUNLRVJfU1JDX0VMRl9GSUxFX0hfCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZWxmX2ZpbGVfdW5pdHRlc3QuY2MgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvZWxmX2ZpbGVfdW5pdHRlc3QuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzJmNzk2OAotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9lbGZfZmlsZV91bml0dGVzdC5jYwpAQCAtMCwwICsxLDE5NCBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisjaW5jbHVkZSAiZWxmX2ZpbGUuaCIKKworI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RyaW5nPgorI2luY2x1ZGUgPHZlY3Rvcj4KKyNpbmNsdWRlICJkZWJ1Zy5oIgorI2luY2x1ZGUgImVsZl90cmFpdHMuaCIKKyNpbmNsdWRlICJndGVzdC9ndGVzdC5oIgorCituYW1lc3BhY2UgeworCit2b2lkIEdldERhdGFGaWxlUGF0aChjb25zdCBjaGFyKiBuYW1lLCBzdGQ6OnN0cmluZyogcGF0aCkgeworICBzdGQ6OnN0cmluZyBkYXRhX2RpcjsKKworICBjb25zdCBjaGFyKiBiaW5kaXIgPSBnZXRlbnYoImJpbmRpciIpOworICBpZiAoYmluZGlyKSB7CisgICAgZGF0YV9kaXIgPSBzdGQ6OnN0cmluZyhiaW5kaXIpOworICB9IGVsc2UgeworICAgIGNoYXIgcGF0aFtQQVRIX01BWF07CisgICAgbWVtc2V0KHBhdGgsIDAsIHNpemVvZihwYXRoKSk7CisgICAgQVNTRVJUX05FKC0xLCByZWFkbGluaygiL3Byb2Mvc2VsZi9leGUiLCBwYXRoLCBzaXplb2YocGF0aCkgLSAxKSk7CisKKyAgICBkYXRhX2RpciA9IHN0ZDo6c3RyaW5nKHBhdGgpOworICAgIHNpemVfdCBwb3MgPSBkYXRhX2Rpci5yZmluZCgnLycpOworICAgIEFTU0VSVF9ORShzdGQ6OnN0cmluZzo6bnBvcywgcG9zKTsKKworICAgIGRhdGFfZGlyLmVyYXNlKHBvcyk7CisgIH0KKworICAqcGF0aCA9IGRhdGFfZGlyICsgIi8iICsgbmFtZTsKK30KKwordm9pZCBPcGVuUmVsb2NzVGVzdEZpbGUoY29uc3QgY2hhciogbmFtZSwgRklMRSoqIHN0cmVhbSkgeworICBzdGQ6OnN0cmluZyBwYXRoOworICBHZXREYXRhRmlsZVBhdGgobmFtZSwgJnBhdGgpOworCisgIEZJTEUqIHRlc3RmaWxlID0gZm9wZW4ocGF0aC5jX3N0cigpLCAicmIiKTsKKyAgQVNTRVJUX0ZBTFNFKHRlc3RmaWxlID09IE5VTEwpIDw8ICJFcnJvciBvcGVuaW5nICciIDw8IHBhdGggPDwgIiciOworCisgIEZJTEUqIHRlbXBvcmFyeSA9IHRtcGZpbGUoKTsKKyAgQVNTRVJUX0ZBTFNFKHRlbXBvcmFyeSA9PSBOVUxMKTsKKworICBzdGF0aWMgY29uc3Qgc2l6ZV90IGJ1ZmZlcl9zaXplID0gNDA5NjsKKyAgdW5zaWduZWQgY2hhciBidWZmZXJbYnVmZmVyX3NpemVdOworCisgIHNpemVfdCBieXRlczsKKyAgZG8geworICAgIGJ5dGVzID0gZnJlYWQoYnVmZmVyLCAxLCBzaXplb2YoYnVmZmVyKSwgdGVzdGZpbGUpOworICAgIEFTU0VSVF9FUShieXRlcywgZndyaXRlKGJ1ZmZlciwgMSwgYnl0ZXMsIHRlbXBvcmFyeSkpOworICB9IHdoaWxlIChieXRlcyA+IDApOworCisgIEFTU0VSVF9FUSgwLCBmY2xvc2UodGVzdGZpbGUpKTsKKyAgQVNTRVJUX0VRKDAsIGZzZWVrKHRlbXBvcmFyeSwgMCwgU0VFS19TRVQpKTsKKyAgQVNTRVJUX0VRKDAsIGxzZWVrKGZpbGVubyh0ZW1wb3JhcnkpLCAwLCBTRUVLX1NFVCkpOworCisgICpzdHJlYW0gPSB0ZW1wb3Jhcnk7Cit9CisKK3ZvaWQgT3BlblJlbG9jc1Rlc3RGaWxlcyhjb25zdCBzdGQ6OnN0cmluZyYgYXJjaCwgRklMRSoqIHJlbG9jc19zbywgRklMRSoqIHBhY2tlZF9yZWxvY3Nfc28pIHsKKyAgY29uc3Qgc3RkOjpzdHJpbmcgYmFzZSA9IHN0ZDo6c3RyaW5nKCJlbGZfZmlsZV91bml0dGVzdF9yZWxvY3NfIikgKyBhcmNoOworICBjb25zdCBzdGQ6OnN0cmluZyByZWxvY3MgPSBiYXNlICsgIi5zbyI7CisgIGNvbnN0IHN0ZDo6c3RyaW5nIHBhY2tlZF9yZWxvY3MgPSBiYXNlICsgIl9wYWNrZWQuc28iOworCisgIE9wZW5SZWxvY3NUZXN0RmlsZShyZWxvY3MuY19zdHIoKSwgcmVsb2NzX3NvKTsKKyAgT3BlblJlbG9jc1Rlc3RGaWxlKHBhY2tlZF9yZWxvY3MuY19zdHIoKSwgcGFja2VkX3JlbG9jc19zbyk7Cit9CisKK3ZvaWQgQ2xvc2VSZWxvY3NUZXN0RmlsZShGSUxFKiB0ZW1wb3JhcnkpIHsKKyAgZmNsb3NlKHRlbXBvcmFyeSk7Cit9CisKK3ZvaWQgQ2xvc2VSZWxvY3NUZXN0RmlsZXMoRklMRSogcmVsb2NzX3NvLCBGSUxFKiBwYWNrZWRfcmVsb2NzX3NvKSB7CisgIENsb3NlUmVsb2NzVGVzdEZpbGUocmVsb2NzX3NvKTsKKyAgQ2xvc2VSZWxvY3NUZXN0RmlsZShwYWNrZWRfcmVsb2NzX3NvKTsKK30KKwordm9pZCBDaGVja0ZpbGVDb250ZW50c0VxdWFsKEZJTEUqIGZpcnN0LCBGSUxFKiBzZWNvbmQpIHsKKyAgQVNTRVJUX0VRKDAsIGZzZWVrKGZpcnN0LCAwLCBTRUVLX1NFVCkpOworICBBU1NFUlRfRVEoMCwgZnNlZWsoc2Vjb25kLCAwLCBTRUVLX1NFVCkpOworCisgIHN0YXRpYyBjb25zdCBzaXplX3QgYnVmZmVyX3NpemUgPSA0MDk2OworICB1bnNpZ25lZCBjaGFyIGZpcnN0X2J1ZmZlcltidWZmZXJfc2l6ZV07CisgIHVuc2lnbmVkIGNoYXIgc2Vjb25kX2J1ZmZlcltidWZmZXJfc2l6ZV07CisKKyAgZG8geworICAgIHNpemVfdCBmaXJzdF9yZWFkID0gZnJlYWQoZmlyc3RfYnVmZmVyLCAxLCBzaXplb2YoZmlyc3RfYnVmZmVyKSwgZmlyc3QpOworICAgIHNpemVfdCBzZWNvbmRfcmVhZCA9IGZyZWFkKHNlY29uZF9idWZmZXIsIDEsIHNpemVvZihzZWNvbmRfYnVmZmVyKSwgc2Vjb25kKTsKKworICAgIEVYUEVDVF9FUShmaXJzdF9yZWFkLCBzZWNvbmRfcmVhZCk7CisgICAgRVhQRUNUX0VRKDAsIG1lbWNtcChmaXJzdF9idWZmZXIsIHNlY29uZF9idWZmZXIsIGZpcnN0X3JlYWQpKTsKKyAgfSB3aGlsZSAoIWZlb2YoZmlyc3QpICYmICFmZW9mKHNlY29uZCkpOworCisgIEVYUEVDVF9UUlVFKGZlb2YoZmlyc3QpICYmIGZlb2Yoc2Vjb25kKSk7Cit9CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+CitzdGF0aWMgdm9pZCBQcm9jZXNzVW5wYWNrKEZJTEUqIHJlbG9jc19zbywgRklMRSogcGFja2VkX3JlbG9jc19zbykgeworICByZWxvY2F0aW9uX3BhY2tlcjo6RWxmRmlsZTxFTEY+IGVsZl9maWxlKGZpbGVubyhwYWNrZWRfcmVsb2NzX3NvKSk7CisKKyAgLy8gRW5zdXJlIHBhY2tpbmcgYWxyZWFkeSBwYWNrZWQgZWxmLWZpbGUgZG9lcyBub3QgZmFpbCB0aGUgYnVpbGQuCisgIEVYUEVDVF9UUlVFKGVsZl9maWxlLlBhY2tSZWxvY2F0aW9ucygpKTsKKworICAvLyBVbnBhY2sgZ29sZGVuIHJlbG9jYXRpb25zLCBhbmQgY2hlY2sgZmlsZXMgYXJlIG5vdyBpZGVudGljYWwuCisgIEVYUEVDVF9UUlVFKGVsZl9maWxlLlVucGFja1JlbG9jYXRpb25zKCkpOworICBDaGVja0ZpbGVDb250ZW50c0VxdWFsKHBhY2tlZF9yZWxvY3Nfc28sIHJlbG9jc19zbyk7CisKKyAgQ2xvc2VSZWxvY3NUZXN0RmlsZXMocmVsb2NzX3NvLCBwYWNrZWRfcmVsb2NzX3NvKTsKK30KKworc3RhdGljIHZvaWQgUnVuVW5wYWNrUmVsb2NhdGlvbnNUZXN0Rm9yKGNvbnN0IHN0ZDo6c3RyaW5nJiBhcmNoKSB7CisgIEFTU0VSVF9ORShzdGF0aWNfY2FzdDx1aW50MzJfdD4oRVZfTk9ORSksIGVsZl92ZXJzaW9uKEVWX0NVUlJFTlQpKTsKKworICBGSUxFKiByZWxvY3Nfc28gPSBOVUxMOworICBGSUxFKiBwYWNrZWRfcmVsb2NzX3NvID0gTlVMTDsKKyAgT3BlblJlbG9jc1Rlc3RGaWxlcyhhcmNoLCAmcmVsb2NzX3NvLCAmcGFja2VkX3JlbG9jc19zbyk7CisKKyAgaWYgKHJlbG9jc19zbyAhPSBOVUxMICYmIHBhY2tlZF9yZWxvY3Nfc28gIT0gTlVMTCkgeworICAgIC8vIGxldHMgZGV0ZWN0IGVsZiBjbGFzcworICAgIEFTU0VSVF9FUSgwLCBmc2VlayhyZWxvY3Nfc28sIEVJX0NMQVNTLCBTRUVLX1NFVCkpCisgICAgICAgIDw8ICJJbnZhbGlkIGZpbGUgbGVuZ3RoOiAiIDw8IHN0cmVycm9yKGVycm5vKTsKKyAgICB1aW50OF90IGVsZl9jbGFzcyA9IDA7CisgICAgQVNTRVJUX0VRKDFVLCBmcmVhZCgmZWxmX2NsYXNzLCAxLCAxLCByZWxvY3Nfc28pKTsKKyAgICBBU1NFUlRfRVEoMCwgZnNlZWsocmVsb2NzX3NvLCAwLCBTRUVLX1NFVCkpOworICAgIGlmIChlbGZfY2xhc3MgPT0gRUxGQ0xBU1MzMikgeworICAgICAgUHJvY2Vzc1VucGFjazxFTEYzMl90cmFpdHM+KHJlbG9jc19zbywgcGFja2VkX3JlbG9jc19zbyk7CisgICAgfSBlbHNlIHsKKyAgICAgIFByb2Nlc3NVbnBhY2s8RUxGNjRfdHJhaXRzPihyZWxvY3Nfc28sIHBhY2tlZF9yZWxvY3Nfc28pOworICAgIH0KKyAgfQorfQorCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorc3RhdGljIHZvaWQgUHJvY2Vzc1BhY2soRklMRSogcmVsb2NzX3NvLCBGSUxFKiBwYWNrZWRfcmVsb2NzX3NvKSB7CisgIHJlbG9jYXRpb25fcGFja2VyOjpFbGZGaWxlPEVMRj4gZWxmX2ZpbGUoZmlsZW5vKHJlbG9jc19zbykpOworCisgIC8vIEVuc3VyZSB1bnBhY2tpbmcgZmFpbHMgKG5vdCBwYWNrZWQpLgorICBFWFBFQ1RfRkFMU0UoZWxmX2ZpbGUuVW5wYWNrUmVsb2NhdGlvbnMoKSk7CisKKyAgLy8gUGFjayByZWxvY2F0aW9ucywgYW5kIGNoZWNrIGZpbGVzIGFyZSBub3cgaWRlbnRpY2FsLgorICBFWFBFQ1RfVFJVRShlbGZfZmlsZS5QYWNrUmVsb2NhdGlvbnMoKSk7CisgIENoZWNrRmlsZUNvbnRlbnRzRXF1YWwocmVsb2NzX3NvLCBwYWNrZWRfcmVsb2NzX3NvKTsKKworICBDbG9zZVJlbG9jc1Rlc3RGaWxlcyhyZWxvY3Nfc28sIHBhY2tlZF9yZWxvY3Nfc28pOworfQorCitzdGF0aWMgdm9pZCBSdW5QYWNrUmVsb2NhdGlvbnNUZXN0Rm9yKGNvbnN0IHN0ZDo6c3RyaW5nJiBhcmNoKSB7CisgIEFTU0VSVF9ORShzdGF0aWNfY2FzdDx1aW50MzJfdD4oRVZfTk9ORSksIGVsZl92ZXJzaW9uKEVWX0NVUlJFTlQpKTsKKworICBGSUxFKiByZWxvY3Nfc28gPSBOVUxMOworICBGSUxFKiBwYWNrZWRfcmVsb2NzX3NvID0gTlVMTDsKKyAgT3BlblJlbG9jc1Rlc3RGaWxlcyhhcmNoLCAmcmVsb2NzX3NvLCAmcGFja2VkX3JlbG9jc19zbyk7CisKKyAgaWYgKHJlbG9jc19zbyAhPSBOVUxMICYmIHBhY2tlZF9yZWxvY3Nfc28gIT0gTlVMTCkgeworICAgIC8vIGxldHMgZGV0ZWN0IGVsZiBjbGFzcworICAgIEFTU0VSVF9FUSgwLCBmc2VlayhwYWNrZWRfcmVsb2NzX3NvLCBFSV9DTEFTUywgU0VFS19TRVQpKQorICAgICAgICA8PCAiSW52YWxpZCBmaWxlIGxlbmd0aDogIiA8PCBzdHJlcnJvcihlcnJubyk7CisgICAgdWludDhfdCBlbGZfY2xhc3MgPSAwOworICAgIEFTU0VSVF9FUSgxVSwgZnJlYWQoJmVsZl9jbGFzcywgMSwgMSwgcGFja2VkX3JlbG9jc19zbykpOworICAgIGZzZWVrKHBhY2tlZF9yZWxvY3Nfc28sIDAsIFNFRUtfU0VUKTsKKyAgICBpZiAoZWxmX2NsYXNzID09IEVMRkNMQVNTMzIpIHsKKyAgICAgIFByb2Nlc3NQYWNrPEVMRjMyX3RyYWl0cz4ocmVsb2NzX3NvLCBwYWNrZWRfcmVsb2NzX3NvKTsKKyAgICB9IGVsc2UgeworICAgICAgUHJvY2Vzc1BhY2s8RUxGNjRfdHJhaXRzPihyZWxvY3Nfc28sIHBhY2tlZF9yZWxvY3Nfc28pOworICAgIH0KKyAgfQorfQorCit9ICAvLyBuYW1lc3BhY2UKKworbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyIHsKKworVEVTVChFbGZGaWxlLCBQYWNrUmVsb2NhdGlvbnNBcm0zMikgeworICBSdW5QYWNrUmVsb2NhdGlvbnNUZXN0Rm9yKCJhcm0zMiIpOworfQorCitURVNUKEVsZkZpbGUsIFBhY2tSZWxvY2F0aW9uc0FybTY0KSB7CisgIFJ1blBhY2tSZWxvY2F0aW9uc1Rlc3RGb3IoImFybTY0Iik7Cit9CisKK1RFU1QoRWxmRmlsZSwgVW5wYWNrUmVsb2NhdGlvbnNBcm0zMikgeworICBSdW5VbnBhY2tSZWxvY2F0aW9uc1Rlc3RGb3IoImFybTMyIik7Cit9CisKK1RFU1QoRWxmRmlsZSwgVW5wYWNrUmVsb2NhdGlvbnNBcm02NCkgeworICBSdW5VbnBhY2tSZWxvY2F0aW9uc1Rlc3RGb3IoImFybTY0Iik7Cit9CisKK30gIC8vIG5hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlcgpkaWZmIC0tZ2l0IGEvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL2VsZl90cmFpdHMuaCBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9lbGZfdHJhaXRzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWM5MzhmYQotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9lbGZfdHJhaXRzLmgKQEAgLTAsMCArMSw2OCBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvLyBUYXJnZXQtc3BlY2lmaWMgRUxGIHR5cGUgdHJhaXRzLgorCisjaWZuZGVmIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19FTEZfVFJBSVRTX0hfCisjZGVmaW5lIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19FTEZfVFJBSVRTX0hfCisKKyNpbmNsdWRlICJlbGYuaCIKKyNpbmNsdWRlICJsaWJlbGYuaCIKKworI2lmICFkZWZpbmVkKERUX01JUFNfUkxEX01BUDIpCisjZGVmaW5lIERUX01JUFNfUkxEX01BUDIgMHg3MDAwMDAzNQorI2VuZGlmCisKKy8vIEVMRiBpcyBhIHRyYWl0cyBzdHJ1Y3R1cmUgdXNlZCB0byBwcm92aWRlIGNvbnZlbmllbnQgYWxpYXNlcyBmb3IKKy8vIDMyLzY0IGJpdCBFbGYgdHlwZXMgYW5kIGZ1bmN0aW9ucywgZGVwZW5kaW5nIG9uIHRoZSB0YXJnZXQgZmlsZS4KKworc3RydWN0IEVMRjMyX3RyYWl0cyB7CisgIHR5cGVkZWYgRWxmMzJfQWRkciBBZGRyOworICB0eXBlZGVmIEVsZjMyX0R5biBEeW47CisgIHR5cGVkZWYgRWxmMzJfRWhkciBFaGRyOworICB0eXBlZGVmIEVsZjMyX09mZiBPZmY7CisgIHR5cGVkZWYgRWxmMzJfUGhkciBQaGRyOworICB0eXBlZGVmIEVsZjMyX1JlbCBSZWw7CisgIHR5cGVkZWYgRWxmMzJfUmVsYSBSZWxhOworICB0eXBlZGVmIEVsZjMyX1NoZHIgU2hkcjsKKyAgdHlwZWRlZiBFbGYzMl9Td29yZCBTd29yZDsKKyAgdHlwZWRlZiBFbGYzMl9TeHdvcmQgU3h3b3JkOworICB0eXBlZGVmIEVsZjMyX1N5bSBTeW07CisgIHR5cGVkZWYgRWxmMzJfV29yZCBXb3JkOworICB0eXBlZGVmIEVsZjMyX1h3b3JkIFh3b3JkOworICB0eXBlZGVmIEVsZjMyX0hhbGYgSGFsZjsKKworICBzdGF0aWMgaW5saW5lIEVoZHIqIGdldGVoZHIoRWxmKiBlbGYpIHsgcmV0dXJuIGVsZjMyX2dldGVoZHIoZWxmKTsgfQorICBzdGF0aWMgaW5saW5lIFBoZHIqIGdldHBoZHIoRWxmKiBlbGYpIHsgcmV0dXJuIGVsZjMyX2dldHBoZHIoZWxmKTsgfQorICBzdGF0aWMgaW5saW5lIFNoZHIqIGdldHNoZHIoRWxmX1Njbiogc2NuKSB7IHJldHVybiBlbGYzMl9nZXRzaGRyKHNjbik7IH0KKyAgc3RhdGljIGlubGluZSBXb3JkIGVsZl9yX3R5cGUoV29yZCBpbmZvKSB7IHJldHVybiBFTEYzMl9SX1RZUEUoaW5mbyk7IH0KKyAgc3RhdGljIGlubGluZSBpbnQgZWxmX3N0X3R5cGUodWludDhfdCBpbmZvKSB7IHJldHVybiBFTEYzMl9TVF9UWVBFKGluZm8pOyB9CisgIHN0YXRpYyBpbmxpbmUgV29yZCBlbGZfcl9zeW0oV29yZCBpbmZvKSB7IHJldHVybiBFTEYzMl9SX1NZTShpbmZvKTsgfQorfTsKKworc3RydWN0IEVMRjY0X3RyYWl0cyB7CisgIHR5cGVkZWYgRWxmNjRfQWRkciBBZGRyOworICB0eXBlZGVmIEVsZjY0X0R5biBEeW47CisgIHR5cGVkZWYgRWxmNjRfRWhkciBFaGRyOworICB0eXBlZGVmIEVsZjY0X09mZiBPZmY7CisgIHR5cGVkZWYgRWxmNjRfUGhkciBQaGRyOworICB0eXBlZGVmIEVsZjY0X1JlbCBSZWw7CisgIHR5cGVkZWYgRWxmNjRfUmVsYSBSZWxhOworICB0eXBlZGVmIEVsZjY0X1NoZHIgU2hkcjsKKyAgdHlwZWRlZiBFbGY2NF9Td29yZCBTd29yZDsKKyAgdHlwZWRlZiBFbGY2NF9TeHdvcmQgU3h3b3JkOworICB0eXBlZGVmIEVsZjY0X1N5bSBTeW07CisgIHR5cGVkZWYgRWxmNjRfV29yZCBXb3JkOworICB0eXBlZGVmIEVsZjY0X1h3b3JkIFh3b3JkOworICB0eXBlZGVmIEVsZjY0X0hhbGYgSGFsZjsKKworICBzdGF0aWMgaW5saW5lIEVoZHIqIGdldGVoZHIoRWxmKiBlbGYpIHsgcmV0dXJuIGVsZjY0X2dldGVoZHIoZWxmKTsgfQorICBzdGF0aWMgaW5saW5lIFBoZHIqIGdldHBoZHIoRWxmKiBlbGYpIHsgcmV0dXJuIGVsZjY0X2dldHBoZHIoZWxmKTsgfQorICBzdGF0aWMgaW5saW5lIFNoZHIqIGdldHNoZHIoRWxmX1Njbiogc2NuKSB7IHJldHVybiBlbGY2NF9nZXRzaGRyKHNjbik7IH0KKyAgc3RhdGljIGlubGluZSBYd29yZCBlbGZfcl90eXBlKFh3b3JkIGluZm8pIHsgcmV0dXJuIEVMRjY0X1JfVFlQRShpbmZvKTsgfQorICBzdGF0aWMgaW5saW5lIGludCBlbGZfc3RfdHlwZSh1aW50OF90IGluZm8pIHsgcmV0dXJuIEVMRjY0X1NUX1RZUEUoaW5mbyk7IH0KKyAgc3RhdGljIGlubGluZSBXb3JkIGVsZl9yX3N5bShYd29yZCBpbmZvKSB7IHJldHVybiBFTEY2NF9SX1NZTShpbmZvKTsgfQorfTsKKworI2VuZGlmICAvLyBUT09MU19SRUxPQ0FUSU9OX1BBQ0tFUl9TUkNfRUxGX1RSQUlUU19IXwpkaWZmIC0tZ2l0IGEvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL21haW4uY2MgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvbWFpbi5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZTlkZTZkCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL21haW4uY2MKQEAgLTAsMCArMSwxNTAgQEAKKy8vIENvcHlyaWdodCAyMDE0IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLy8gVG9vbCB0byBwYWNrIGFuZCB1bnBhY2sgcmVsYXRpdmUgcmVsb2NhdGlvbnMgaW4gYSBzaGFyZWQgbGlicmFyeS4KKy8vCisvLyBJbnZva2Ugd2l0aCAtdiB0byB0cmFjZSBhY3Rpb25zIHRha2VuIHdoZW4gcGFja2luZyBvciB1bnBhY2tpbmcuCisvLyBJbnZva2Ugd2l0aCAtcCB0byBwYWQgcmVtb3ZlZCByZWxvY2F0aW9ucyB3aXRoIFJfKl9OT05FLiAgU3VwcHJlc3NlcworLy8gc2hyaW5raW5nIG9mIC5yZWwuZHluLgorLy8gU2VlIFByaW50VXNhZ2UoKSBiZWxvdyBmb3IgZnVsbCB1c2FnZSBkZXRhaWxzLgorLy8KKy8vIE5PVEU6IEJyZWFrcyB3aXRoIGxpYmVsZiAwLjE1Miwgd2hpY2ggaXMgYnVnZ3kuICBsaWJlbGYgMC4xNTggd29ya3MuCisKKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8Z2V0b3B0Lmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdHJpbmc+CisKKyNpbmNsdWRlICJkZWJ1Zy5oIgorI2luY2x1ZGUgImVsZl9maWxlLmgiCisjaW5jbHVkZSAiZWxmX3RyYWl0cy5oIgorI2luY2x1ZGUgImxpYmVsZi5oIgorCisjaW5jbHVkZSAibmF0aXZlaGVscGVyL1Njb3BlZEZkLmgiCisKK3N0YXRpYyB2b2lkIFByaW50VXNhZ2UoY29uc3QgY2hhciogYXJndjApIHsKKyAgc3RkOjpzdHJpbmcgdGVtcG9yYXJ5ID0gYXJndjA7CisgIGNvbnN0IHNpemVfdCBsYXN0X3NsYXNoID0gdGVtcG9yYXJ5LmZpbmRfbGFzdF9vZigiLyIpOworICBpZiAobGFzdF9zbGFzaCAhPSB0ZW1wb3JhcnkubnBvcykgeworICAgIHRlbXBvcmFyeS5lcmFzZSgwLCBsYXN0X3NsYXNoICsgMSk7CisgIH0KKyAgY29uc3QgY2hhciogYmFzZW5hbWUgPSB0ZW1wb3JhcnkuY19zdHIoKTsKKworICBwcmludGYoCisgICAgICAiVXNhZ2U6ICVzIFstdV0gWy12XSBbLXBdIGZpbGVcblxuIgorICAgICAgIlBhY2sgb3IgdW5wYWNrIHJlbGF0aXZlIHJlbG9jYXRpb25zIGluIGEgc2hhcmVkIGxpYnJhcnkuXG5cbiIKKyAgICAgICIgIC11LCAtLXVucGFjayAgIHVucGFjayBwcmV2aW91c2x5IHBhY2tlZCByZWxhdGl2ZSByZWxvY2F0aW9uc1xuIgorICAgICAgIiAgLXYsIC0tdmVyYm9zZSAgdHJhY2Ugb2JqZWN0IGZpbGUgbW9kaWZpY2F0aW9ucyAoZm9yIGRlYnVnZ2luZylcbiIKKyAgICAgICIgIC1wLCAtLXBhZCAgICAgIGRvIG5vdCBzaHJpbmsgcmVsb2NhdGlvbnMsIGJ1dCBwYWQgKGZvciBkZWJ1Z2dpbmcpXG5cbiIsCisgICAgICBiYXNlbmFtZSk7CisKKyAgcHJpbnRmKAorICAgICAgIkRlYnVnIHNlY3Rpb25zIGFyZSBub3QgaGFuZGxlZCwgc28gcGFja2luZyBzaG91bGQgbm90IGJlIHVzZWQgb25cbiIKKyAgICAgICJzaGFyZWQgbGlicmFyaWVzIGNvbXBpbGVkIGZvciBkZWJ1Z2dpbmcgb3Igb3RoZXJ3aXNlIHVuc3RyaXBwZWQuXG4iKTsKK30KKworaW50IG1haW4oaW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSkgeworICBib29sIGlzX3VucGFja2luZyA9IGZhbHNlOworICBib29sIGlzX3ZlcmJvc2UgPSBmYWxzZTsKKyAgYm9vbCBpc19wYWRkaW5nID0gZmFsc2U7CisKKyAgc3RhdGljIGNvbnN0IG9wdGlvbiBvcHRpb25zW10gPSB7CisgICAgeyJ1bnBhY2siLCAwLCAwLCAndSd9LCB7InZlcmJvc2UiLCAwLCAwLCAndid9LCB7InBhZCIsIDAsIDAsICdwJ30sCisgICAgeyJoZWxwIiwgMCwgMCwgJ2gnfSwge05VTEwsIDAsIDAsIDB9CisgIH07CisgIGJvb2wgaGFzX29wdGlvbnMgPSB0cnVlOworICB3aGlsZSAoaGFzX29wdGlvbnMpIHsKKyAgICBpbnQgYyA9IGdldG9wdF9sb25nKGFyZ2MsIGFyZ3YsICJ1dnBoIiwgb3B0aW9ucywgTlVMTCk7CisgICAgc3dpdGNoIChjKSB7CisgICAgICBjYXNlICd1JzoKKyAgICAgICAgaXNfdW5wYWNraW5nID0gdHJ1ZTsKKyAgICAgICAgYnJlYWs7CisgICAgICBjYXNlICd2JzoKKyAgICAgICAgaXNfdmVyYm9zZSA9IHRydWU7CisgICAgICAgIGJyZWFrOworICAgICAgY2FzZSAncCc6CisgICAgICAgIGlzX3BhZGRpbmcgPSB0cnVlOworICAgICAgICBicmVhazsKKyAgICAgIGNhc2UgJ2gnOgorICAgICAgICBQcmludFVzYWdlKGFyZ3ZbMF0pOworICAgICAgICByZXR1cm4gMDsKKyAgICAgIGNhc2UgJz8nOgorICAgICAgICBMT0coSU5GTykgPDwgIlRyeSAnIiA8PCBhcmd2WzBdIDw8ICIgLS1oZWxwJyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iOworICAgICAgICByZXR1cm4gMTsKKyAgICAgIGNhc2UgLTE6CisgICAgICAgIGhhc19vcHRpb25zID0gZmFsc2U7CisgICAgICAgIGJyZWFrOworICAgICAgZGVmYXVsdDoKKyAgICAgICAgTk9UUkVBQ0hFRCgpOworICAgICAgICByZXR1cm4gMTsKKyAgICB9CisgIH0KKyAgaWYgKG9wdGluZCAhPSBhcmdjIC0gMSkgeworICAgIExPRyhJTkZPKSA8PCAiVHJ5ICciIDw8IGFyZ3ZbMF0gPDwgIiAtLWhlbHAnIGZvciBtb3JlIGluZm9ybWF0aW9uLiI7CisgICAgcmV0dXJuIDE7CisgIH0KKworICBpZiAoZWxmX3ZlcnNpb24oRVZfQ1VSUkVOVCkgPT0gRVZfTk9ORSkgeworICAgIExPRyhXQVJOSU5HKSA8PCAiRWxmIExpYnJhcnkgaXMgb3V0IG9mIGRhdGUhIjsKKyAgfQorCisgIGNvbnN0IGNoYXIqIGZpbGUgPSBhcmd2W2FyZ2MgLSAxXTsKKyAgU2NvcGVkRmQgZmQob3BlbihmaWxlLCBPX1JEV1IpKTsKKyAgaWYgKGZkLmdldCgpID09IC0xKSB7CisgICAgTE9HKEVSUk9SKSA8PCBmaWxlIDw8ICI6ICIgPDwgc3RyZXJyb3IoZXJybm8pOworICAgIHJldHVybiAxOworICB9CisKKyAgaWYgKGlzX3ZlcmJvc2UpCisgICAgcmVsb2NhdGlvbl9wYWNrZXI6OkxvZ2dlcjo6U2V0VmVyYm9zZSgxKTsKKworICAvLyBXZSBuZWVkIHRvIGRldGVjdCBlbGYgY2xhc3MgaW4gb3JkZXIgdG8gY3JlYXRlCisgIC8vIGNvcnJlY3QgaW1wbGVtZW50YXRpb24KKyAgdWludDhfdCBlX2lkZW50W0VJX05JREVOVF07CisgIGlmIChURU1QX0ZBSUxVUkVfUkVUUlkocmVhZChmZC5nZXQoKSwgZV9pZGVudCwgRUlfTklERU5UKSAhPSBFSV9OSURFTlQpKSB7CisgICAgTE9HKEVSUk9SKSA8PCBmaWxlIDw8ICI6IGZhaWxlZCB0byByZWFkIGVsZiBoZWFkZXI6IiA8PCBzdHJlcnJvcihlcnJubyk7CisgICAgcmV0dXJuIDE7CisgIH0KKworICBpZiAoVEVNUF9GQUlMVVJFX1JFVFJZKGxzZWVrKGZkLmdldCgpLCAwLCBTRUVLX1NFVCkpICE9IDApIHsKKyAgICBMT0coRVJST1IpIDw8IGZpbGUgPDwgIjogbHNlZWsgdG8gMCBmYWlsZWQ6IiA8PCBzdHJlcnJvcihlcnJubyk7CisgICAgcmV0dXJuIDE7CisgIH0KKworICBib29sIHN0YXR1cyA9IGZhbHNlOworCisgIGlmIChlX2lkZW50W0VJX0NMQVNTXSA9PSBFTEZDTEFTUzMyKSB7CisgICAgcmVsb2NhdGlvbl9wYWNrZXI6OkVsZkZpbGU8RUxGMzJfdHJhaXRzPiBlbGZfZmlsZShmZC5nZXQoKSk7CisgICAgZWxmX2ZpbGUuU2V0UGFkZGluZyhpc19wYWRkaW5nKTsKKworICAgIGlmIChpc191bnBhY2tpbmcpIHsKKyAgICAgIHN0YXR1cyA9IGVsZl9maWxlLlVucGFja1JlbG9jYXRpb25zKCk7CisgICAgfSBlbHNlIHsKKyAgICAgIHN0YXR1cyA9IGVsZl9maWxlLlBhY2tSZWxvY2F0aW9ucygpOworICAgIH0KKyAgfSBlbHNlIGlmIChlX2lkZW50W0VJX0NMQVNTXSA9PSBFTEZDTEFTUzY0KSB7CisgICAgcmVsb2NhdGlvbl9wYWNrZXI6OkVsZkZpbGU8RUxGNjRfdHJhaXRzPiBlbGZfZmlsZShmZC5nZXQoKSk7CisgICAgZWxmX2ZpbGUuU2V0UGFkZGluZyhpc19wYWRkaW5nKTsKKworICAgIGlmIChpc191bnBhY2tpbmcpIHsKKyAgICAgIHN0YXR1cyA9IGVsZl9maWxlLlVucGFja1JlbG9jYXRpb25zKCk7CisgICAgfSBlbHNlIHsKKyAgICAgIHN0YXR1cyA9IGVsZl9maWxlLlBhY2tSZWxvY2F0aW9ucygpOworICAgIH0KKyAgfSBlbHNlIHsKKyAgICBMT0coRVJST1IpIDw8IGZpbGUgPDwgIjogdW5rbm93biBFTEZDTEFTUzogIiA8PCBlX2lkZW50W0VJX0NMQVNTXTsKKyAgICByZXR1cm4gMTsKKyAgfQorCisgIGlmICghc3RhdHVzKSB7CisgICAgTE9HKEVSUk9SKSA8PCBmaWxlIDw8ICI6IGZhaWxlZCB0byBwYWNrL3VucGFjayBmaWxlIjsKKyAgICByZXR1cm4gMTsKKyAgfQorCisgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3BhY2tlci5jYyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9wYWNrZXIuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDMzNjExZgotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9wYWNrZXIuY2MKQEAgLTAsMCArMSw2NyBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisjaW5jbHVkZSAicGFja2VyLmgiCisKKyNpbmNsdWRlIDx2ZWN0b3I+CisKKyNpbmNsdWRlICJkZWJ1Zy5oIgorI2luY2x1ZGUgImRlbHRhX2VuY29kZXIuaCIKKyNpbmNsdWRlICJlbGZfdHJhaXRzLmgiCisjaW5jbHVkZSAic2xlYjEyOC5oIgorCituYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIgeworCisvLyBQYWNrIHJlbG9jYXRpb25zIGludG8gYSBncm91cCBlbmNvZGVkIHBhY2tlZCByZXByZXNlbnRhdGlvbi4KK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+Cit2b2lkIFJlbG9jYXRpb25QYWNrZXI8RUxGPjo6UGFja1JlbG9jYXRpb25zKGNvbnN0IHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsYT4mIHJlbG9jYXRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGQ6OnZlY3Rvcjx1aW50OF90PiogcGFja2VkKSB7CisgIC8vIFJ1bi1sZW5ndGggZW5jb2RlLgorICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OkFkZHI+IHBhY2tlZF93b3JkczsKKyAgUmVsb2NhdGlvbkRlbHRhQ29kZWM8RUxGPiBjb2RlYzsKKyAgY29kZWMuRW5jb2RlKHJlbG9jYXRpb25zLCAmcGFja2VkX3dvcmRzKTsKKworICAvLyBJZiBpbnN1ZmZpY2llbnQgZGF0YSBkbyBub3RoaW5nLgorICBpZiAocGFja2VkX3dvcmRzLmVtcHR5KCkpCisgICAgcmV0dXJuOworCisgIFNsZWIxMjhFbmNvZGVyPHR5cGVuYW1lIEVMRjo6QWRkcj4gc2xlYjEyOF9lbmNvZGVyOworCisgIHN0ZDo6dmVjdG9yPHVpbnQ4X3Q+IHNsZWIxMjhfcGFja2VkOworCisgIHNsZWIxMjhfZW5jb2Rlci5FbnF1ZXVlQWxsKHBhY2tlZF93b3Jkcyk7CisgIHNsZWIxMjhfZW5jb2Rlci5HZXRFbmNvZGluZygmc2xlYjEyOF9wYWNrZWQpOworCisgIHBhY2tlZC0+cHVzaF9iYWNrKCdBJyk7CisgIHBhY2tlZC0+cHVzaF9iYWNrKCdQJyk7CisgIHBhY2tlZC0+cHVzaF9iYWNrKCdTJyk7CisgIHBhY2tlZC0+cHVzaF9iYWNrKCcyJyk7CisgIHBhY2tlZC0+aW5zZXJ0KHBhY2tlZC0+ZW5kKCksIHNsZWIxMjhfcGFja2VkLmJlZ2luKCksIHNsZWIxMjhfcGFja2VkLmVuZCgpKTsKK30KKworLy8gVW5wYWNrIHJlbGF0aXZlIHJlbG9jYXRpb25zIGZyb20gYSBydW4tbGVuZ3RoIGVuY29kZWQgcGFja2VkCisvLyByZXByZXNlbnRhdGlvbi4KK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+Cit2b2lkIFJlbG9jYXRpb25QYWNrZXI8RUxGPjo6VW5wYWNrUmVsb2NhdGlvbnMoCisgICAgY29uc3Qgc3RkOjp2ZWN0b3I8dWludDhfdD4mIHBhY2tlZCwKKyAgICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OlJlbGE+KiByZWxvY2F0aW9ucykgeworCisgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6QWRkcj4gcGFja2VkX3dvcmRzOworICBDSEVDSyhwYWNrZWQuc2l6ZSgpID4gNCAmJgorICAgICAgICBwYWNrZWRbMF0gPT0gJ0EnICYmCisgICAgICAgIHBhY2tlZFsxXSA9PSAnUCcgJiYKKyAgICAgICAgcGFja2VkWzJdID09ICdTJyAmJgorICAgICAgICBwYWNrZWRbM10gPT0gJzInKTsKKworICBTbGViMTI4RGVjb2Rlcjx0eXBlbmFtZSBFTEY6OkFkZHI+IGRlY29kZXIocGFja2VkLCA0KTsKKyAgZGVjb2Rlci5EZXF1ZXVlQWxsKCZwYWNrZWRfd29yZHMpOworCisgIFJlbG9jYXRpb25EZWx0YUNvZGVjPEVMRj4gY29kZWM7CisgIGNvZGVjLkRlY29kZShwYWNrZWRfd29yZHMsIHJlbG9jYXRpb25zKTsKK30KKwordGVtcGxhdGUgY2xhc3MgUmVsb2NhdGlvblBhY2tlcjxFTEYzMl90cmFpdHM+OwordGVtcGxhdGUgY2xhc3MgUmVsb2NhdGlvblBhY2tlcjxFTEY2NF90cmFpdHM+OworCit9ICAvLyBuYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIKZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9wYWNrZXIuaCBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9wYWNrZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42M2Y1MGUyCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3BhY2tlci5oCkBAIC0wLDAgKzEsMzcgQEAKKy8vIENvcHlyaWdodCAyMDE0IFRoZSBDaHJvbWl1bSBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKworLy8gUGFjayByZWxhdGl2ZSByZWxvY2F0aW9ucyBpbnRvIGEgbW9yZSBjb21wYWN0IGZvcm0uCisKKyNpZm5kZWYgVE9PTFNfUkVMT0NBVElPTl9QQUNLRVJfU1JDX1BBQ0tFUl9IXworI2RlZmluZSBUT09MU19SRUxPQ0FUSU9OX1BBQ0tFUl9TUkNfUEFDS0VSX0hfCisKKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDx2ZWN0b3I+CisKKyNpbmNsdWRlICJlbGYuaCIKKworbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyIHsKKworLy8gQSBSZWxvY2F0aW9uUGFja2VyIHBhY2tzIHZlY3RvcnMgb2YgcmVsb2NhdGlvbnMgaW50byBtb3JlCisvLyBjb21wYWN0IGZvcm1zLCBhbmQgdW5wYWNrcyB0aGVtIHRvIHJlcHJvZHVjZSB0aGUgcHJlLXBhY2tlZCBkYXRhLgordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK2NsYXNzIFJlbG9jYXRpb25QYWNrZXIgeworIHB1YmxpYzoKKyAgLy8gUGFjayByZWxvY2F0aW9ucyBpbnRvIGEgbW9yZSBjb21wYWN0IGZvcm0uCisgIC8vIHxyZWxvY2F0aW9uc3wgaXMgYSB2ZWN0b3Igb2YgcmVsb2NhdGlvbiBzdHJ1Y3RzLgorICAvLyB8cGFja2VkfCBpcyB0aGUgdmVjdG9yIG9mIHBhY2tlZCBieXRlcyBpbnRvIHdoaWNoIHJlbG9jYXRpb25zIGFyZSBwYWNrZWQuCisgIHN0YXRpYyB2b2lkIFBhY2tSZWxvY2F0aW9ucyhjb25zdCBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OlJlbGE+JiByZWxvY2F0aW9ucywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPHVpbnQ4X3Q+KiBwYWNrZWQpOworCisgIC8vIFVucGFjayByZWxvY2F0aW9ucyBmcm9tIHRoZWlyIG1vcmUgY29tcGFjdCBmb3JtLgorICAvLyB8cGFja2VkfCBpcyB0aGUgdmVjdG9yIG9mIHBhY2tlZCByZWxvY2F0aW9ucy4KKyAgLy8gfHJlbG9jYXRpb25zfCBpcyBhIHZlY3RvciBvZiB1bnBhY2tlZCByZWxvY2F0aW9uIHN0cnVjdHMuCisgIHN0YXRpYyB2b2lkIFVucGFja1JlbG9jYXRpb25zKGNvbnN0IHN0ZDo6dmVjdG9yPHVpbnQ4X3Q+JiBwYWNrZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsYT4qIHJlbG9jYXRpb25zKTsKK307CisKK30gIC8vIG5hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlcgorCisjZW5kaWYgIC8vIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19QQUNLRVJfSF8KZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9wYWNrZXJfdW5pdHRlc3QuY2MgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvcGFja2VyX3VuaXR0ZXN0LmNjCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQyNGI5MmMKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvcGFja2VyX3VuaXR0ZXN0LmNjCkBAIC0wLDAgKzEsMzAwIEBACisvLyBDb3B5cmlnaHQgMjAxNCBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKyNpbmNsdWRlICJwYWNrZXIuaCIKKworI2luY2x1ZGUgPHZlY3Rvcj4KKyNpbmNsdWRlICJlbGYuaCIKKyNpbmNsdWRlICJlbGZfdHJhaXRzLmgiCisjaW5jbHVkZSAiZ3Rlc3QvZ3Rlc3QuaCIKKworCit0ZW1wbGF0ZSA8dHlwZW5hbWUgRUxGPgorc3RhdGljIHZvaWQgQWRkUmVsb2NhdGlvbih0eXBlbmFtZSBFTEY6OkFkZHIgYWRkciwKKyAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBFTEY6Olh3b3JkIGluZm8sCisgICAgICAgICAgICAgICAgICAgdHlwZW5hbWUgRUxGOjpTeHdvcmQgYWRkZW5kLAorICAgICAgICAgICAgICAgICAgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsYT4qIHJlbG9jYXRpb25zKSB7CisgIHR5cGVuYW1lIEVMRjo6UmVsYSByZWxvY2F0aW9uOworICByZWxvY2F0aW9uLnJfb2Zmc2V0ID0gYWRkcjsKKyAgcmVsb2NhdGlvbi5yX2luZm8gPSBpbmZvOworICByZWxvY2F0aW9uLnJfYWRkZW5kID0gYWRkZW5kOworCisgIHJlbG9jYXRpb25zLT5wdXNoX2JhY2socmVsb2NhdGlvbik7Cit9CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+CitzdGF0aWMgYm9vbCBDaGVja1JlbG9jYXRpb24odHlwZW5hbWUgRUxGOjpBZGRyIGFkZHIsCisgICAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBFTEY6Olh3b3JkIGluZm8sCisgICAgICAgICAgICAgICAgICAgICB0eXBlbmFtZSBFTEY6OlN4d29yZCBhZGRlbmQsCisgICAgICAgICAgICAgICAgICAgICBjb25zdCB0eXBlbmFtZSBFTEY6OlJlbGEmIHJlbG9jYXRpb24pIHsKKyAgcmV0dXJuIHJlbG9jYXRpb24ucl9vZmZzZXQgPT0gYWRkciAmJgorICAgICAgcmVsb2NhdGlvbi5yX2luZm8gPT0gaW5mbyAmJgorICAgICAgcmVsb2NhdGlvbi5yX2FkZGVuZCA9PSBhZGRlbmQ7Cit9CisKK25hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlciB7CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+CitzdGF0aWMgdm9pZCBEb1BhY2tOb0FkZGVuZCgpIHsKKyAgc3RkOjp2ZWN0b3I8dHlwZW5hbWUgRUxGOjpSZWxhPiByZWxvY2F0aW9uczsKKyAgc3RkOjp2ZWN0b3I8dWludDhfdD4gcGFja2VkOworICBib29sIGlzXzMyID0gc2l6ZW9mKHR5cGVuYW1lIEVMRjo6QWRkcikgPT0gNDsKKyAgLy8gSW5pdGlhbCByZWxvY2F0aW9uLgorICBBZGRSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAwMCwgMHgxMSwgMCwgJnJlbG9jYXRpb25zKTsKKyAgLy8gVHdvIG1vcmUgcmVsb2NhdGlvbnMsIDQgYnl0ZSBkZWx0YXMuCisgIEFkZFJlbG9jYXRpb248RUxGPigweGQxY2UwMDA0LCAweDExLCAwLCAmcmVsb2NhdGlvbnMpOworICBBZGRSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAwOCwgMHgxMSwgMCwgJnJlbG9jYXRpb25zKTsKKyAgLy8gVGhyZWUgbW9yZSByZWxvY2F0aW9ucywgOCBieXRlIGRlbHRhcy4KKyAgQWRkUmVsb2NhdGlvbjxFTEY+KDB4ZDFjZTAwMTAsIDB4MTEsIDAsICZyZWxvY2F0aW9ucyk7CisgIEFkZFJlbG9jYXRpb248RUxGPigweGQxY2UwMDE4LCAweDExLCAwLCAmcmVsb2NhdGlvbnMpOworICBBZGRSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAyMCwgMHgxMSwgMCwgJnJlbG9jYXRpb25zKTsKKworICBSZWxvY2F0aW9uUGFja2VyPEVMRj4gcGFja2VyOworCisgIHBhY2tlZC5jbGVhcigpOworICBwYWNrZXIuUGFja1JlbG9jYXRpb25zKHJlbG9jYXRpb25zLCAmcGFja2VkKTsKKworICBBU1NFUlRfRVEoMThVLCBwYWNrZWQuc2l6ZSgpKTsKKyAgLy8gSWRlbnRpZmllci4KKyAgc2l6ZV90IG5keCA9IDA7CisgIEVYUEVDVF9FUSgnQScsIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoJ1AnLCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKCdTJywgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUSgnMicsIHBhY2tlZFtuZHgrK10pOworICAvLyByZWxvY2F0aW9uIGNvdW50CisgIEVYUEVDVF9FUSg2LCBwYWNrZWRbbmR4KytdKTsKKyAgLy8gYmFzZSByZWxvY2F0aW9uID0gMHhkMWNkZmZmYyAtPiBmYywgZmYsIGI3LCA4ZSwgN2QvMGQgKDMyLzY0Yml0KQorICBFWFBFQ1RfRVEoMHhmYywgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUSgweGZmLCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKDB4YjcsIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoMHg4ZSwgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUShpc18zMiA/IDB4N2QgOiAweDBkLCBwYWNrZWRbbmR4KytdKTsKKyAgLy8gZmlyc3QgZ3JvdXAKKyAgRVhQRUNUX0VRKDMsIHBhY2tlZFtuZHgrK10pOyAgLy8gc2l6ZQorICBFWFBFQ1RfRVEoMywgcGFja2VkW25keCsrXSk7IC8vIGZsYWdzCisgIEVYUEVDVF9FUSg0LCBwYWNrZWRbbmR4KytdKTsgLy8gcl9vZmZzZXRfZGVsdGEKKyAgRVhQRUNUX0VRKDB4MTEsIHBhY2tlZFtuZHgrK10pOyAvLyByX2luZm8KKyAgLy8gc2Vjb25kIGdyb3VwCisgIEVYUEVDVF9FUSgzLCBwYWNrZWRbbmR4KytdKTsgIC8vIHNpemUKKyAgRVhQRUNUX0VRKDMsIHBhY2tlZFtuZHgrK10pOyAvLyBmbGFncworICBFWFBFQ1RfRVEoOCwgcGFja2VkW25keCsrXSk7IC8vIHJfb2Zmc2V0X2RlbHRhCisgIEVYUEVDVF9FUSgweDExLCBwYWNrZWRbbmR4KytdKTsgLy8gcl9pbmZvCisKKyAgRVhQRUNUX0VRKG5keCwgcGFja2VkLnNpemUoKSk7Cit9CisKK1RFU1QoUGFja2VyLCBQYWNrTm9BZGRlbmQzMikgeworICBEb1BhY2tOb0FkZGVuZDxFTEYzMl90cmFpdHM+KCk7Cit9CisKK1RFU1QoUGFja2VyLCBQYWNrTm9BZGRlbmQ2NCkgeworICBEb1BhY2tOb0FkZGVuZDxFTEY2NF90cmFpdHM+KCk7Cit9CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+CitzdGF0aWMgdm9pZCBEb1VucGFja05vQWRkZW5kKCkgeworICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OlJlbGE+IHJlbG9jYXRpb25zOworICBzdGQ6OnZlY3Rvcjx1aW50OF90PiBwYWNrZWQ7CisgIGJvb2wgaXNfMzIgPSBzaXplb2YodHlwZW5hbWUgRUxGOjpBZGRyKSA9PSA0OworICBwYWNrZWQucHVzaF9iYWNrKCdBJyk7CisgIHBhY2tlZC5wdXNoX2JhY2soJ1AnKTsKKyAgcGFja2VkLnB1c2hfYmFjaygnUycpOworICBwYWNrZWQucHVzaF9iYWNrKCcyJyk7CisgIC8vIHJlbG9jYXRpb24gY291bnQKKyAgcGFja2VkLnB1c2hfYmFjayg2KTsKKyAgLy8gYmFzZSByZWxvY2F0aW9uID0gMHhkMWNkZmZmYyAtPiBmYywgZmYsIGI3LCA4ZSwgN2QvMGQgKDMyLzY0Yml0KQorICBwYWNrZWQucHVzaF9iYWNrKDB4ZmMpOworICBwYWNrZWQucHVzaF9iYWNrKDB4ZmYpOworICBwYWNrZWQucHVzaF9iYWNrKDB4YjcpOworICBwYWNrZWQucHVzaF9iYWNrKDB4OGUpOworICBwYWNrZWQucHVzaF9iYWNrKGlzXzMyID8gMHg3ZCA6IDB4MGQpOworICAvLyBmaXJzdCBncm91cAorICBwYWNrZWQucHVzaF9iYWNrKDMpOyAgLy8gc2l6ZQorICBwYWNrZWQucHVzaF9iYWNrKDMpOyAvLyBmbGFncworICBwYWNrZWQucHVzaF9iYWNrKDQpOyAvLyByX29mZnNldF9kZWx0YQorICBwYWNrZWQucHVzaF9iYWNrKDB4MTEpOyAvLyByX2luZm8KKyAgLy8gc2Vjb25kIGdyb3VwCisgIHBhY2tlZC5wdXNoX2JhY2soMyk7ICAvLyBzaXplCisgIHBhY2tlZC5wdXNoX2JhY2soMyk7IC8vIGZsYWdzCisgIHBhY2tlZC5wdXNoX2JhY2soOCk7IC8vIHJfb2Zmc2V0X2RlbHRhCisgIHBhY2tlZC5wdXNoX2JhY2soMHgxMSk7IC8vIHJfaW5mbworCisgIFJlbG9jYXRpb25QYWNrZXI8RUxGPiBwYWNrZXI7CisgIHBhY2tlci5VbnBhY2tSZWxvY2F0aW9ucyhwYWNrZWQsICZyZWxvY2F0aW9ucyk7CisKKyAgc2l6ZV90IG5keCA9IDA7CisgIEVYUEVDVF9FUSg2VSwgcmVsb2NhdGlvbnMuc2l6ZSgpKTsKKyAgRVhQRUNUX1RSVUUoQ2hlY2tSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAwMCwgMHgxMSwgMCwgcmVsb2NhdGlvbnNbbmR4KytdKSk7CisgIEVYUEVDVF9UUlVFKENoZWNrUmVsb2NhdGlvbjxFTEY+KDB4ZDFjZTAwMDQsIDB4MTEsIDAsIHJlbG9jYXRpb25zW25keCsrXSkpOworICBFWFBFQ1RfVFJVRShDaGVja1JlbG9jYXRpb248RUxGPigweGQxY2UwMDA4LCAweDExLCAwLCByZWxvY2F0aW9uc1tuZHgrK10pKTsKKworICBFWFBFQ1RfVFJVRShDaGVja1JlbG9jYXRpb248RUxGPigweGQxY2UwMDEwLCAweDExLCAwLCByZWxvY2F0aW9uc1tuZHgrK10pKTsKKyAgRVhQRUNUX1RSVUUoQ2hlY2tSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAxOCwgMHgxMSwgMCwgcmVsb2NhdGlvbnNbbmR4KytdKSk7CisgIEVYUEVDVF9UUlVFKENoZWNrUmVsb2NhdGlvbjxFTEY+KDB4ZDFjZTAwMjAsIDB4MTEsIDAsIHJlbG9jYXRpb25zW25keCsrXSkpOworCisgIEVYUEVDVF9FUShuZHgsIHJlbG9jYXRpb25zLnNpemUoKSk7Cit9CisKK1RFU1QoUGFja2VyLCBVbnBhY2tOb0FkZGVuZDMyKSB7CisgIERvVW5wYWNrTm9BZGRlbmQ8RUxGMzJfdHJhaXRzPigpOworfQorCitURVNUKFBhY2tlciwgVW5wYWNrTm9BZGRlbmQ2NCkgeworICBEb1VucGFja05vQWRkZW5kPEVMRjY0X3RyYWl0cz4oKTsKK30KKwordGVtcGxhdGUgPHR5cGVuYW1lIEVMRj4KK3N0YXRpYyB2b2lkIERvUGFja1dpdGhBZGRlbmQoKSB7CisgIHN0ZDo6dmVjdG9yPHR5cGVuYW1lIEVMRjo6UmVsYT4gcmVsb2NhdGlvbnM7CisKKyAgLy8gSW5pdGlhbCByZWxvY2F0aW9uLgorICBBZGRSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAwMCwgMHgwMSwgMTAwMjQsICZyZWxvY2F0aW9ucyk7CisgIC8vIFR3byBtb3JlIHJlbG9jYXRpb25zLCA0IGJ5dGUgb2Zmc2V0IGRlbHRhcywgMTIgYnl0ZSBhZGRlbmQgZGVsdGFzLgorICBBZGRSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAwNCwgMHgwMSwgMTAwMTIsICZyZWxvY2F0aW9ucyk7CisgIEFkZFJlbG9jYXRpb248RUxGPigweGQxY2UwMDA4LCAweDAxLCAxMDAyNCwgJnJlbG9jYXRpb25zKTsKKyAgLy8gVGhyZWUgbW9yZSByZWxvY2F0aW9ucywgOCBieXRlIGRlbHRhcywgLTI0IGJ5dGUgYWRkZW5kIGRlbHRhcy4KKyAgQWRkUmVsb2NhdGlvbjxFTEY+KDB4ZDFjZTAwMTAsIDB4MDEsIDEwMDAwLCAmcmVsb2NhdGlvbnMpOworICBBZGRSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAxOCwgMHgwMSwgOTk3NiwgJnJlbG9jYXRpb25zKTsKKyAgQWRkUmVsb2NhdGlvbjxFTEY+KDB4ZDFjZTAwMjAsIDB4MDEsIDk5NTIsICZyZWxvY2F0aW9ucyk7CisKKyAgc3RkOjp2ZWN0b3I8dWludDhfdD4gcGFja2VkOworCisgIFJlbG9jYXRpb25QYWNrZXI8RUxGPiBwYWNrZXI7CisKKyAgcGFja2VkLmNsZWFyKCk7CisgIHBhY2tlci5QYWNrUmVsb2NhdGlvbnMocmVsb2NhdGlvbnMsICZwYWNrZWQpOworCisgIEVYUEVDVF9FUSgyNlUsIHBhY2tlZC5zaXplKCkpOworICBzaXplX3QgbmR4ID0gMDsKKyAgLy8gSWRlbnRpZmllci4KKyAgRVhQRUNUX0VRKCdBJywgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUSgnUCcsIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoJ1MnLCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKCcyJywgcGFja2VkW25keCsrXSk7CisgIC8vIFJlbG9jYXRpb24gY291bnQKKyAgRVhQRUNUX0VRKDZVLCBwYWNrZWRbbmR4KytdKTsKKyAgLy8gYmFzZSByZWxvY2F0aW9uID0gMHhkMWNkZmZmYyAtPiBmYywgZmYsIGI3LCA4ZSwgMGQvN2QgKGRlcGVuZGluZyBvbiBFTEY6OkFkZHIpCisgIEVYUEVDVF9FUSgweGZjLCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKDB4ZmYsIHBhY2tlZFtuZHgrK10pOworICBFWFBFQ1RfRVEoMHhiNywgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUSgweDhlLCBwYWNrZWRbbmR4KytdKTsKKyAgaWYgKHNpemVvZih0eXBlbmFtZSBFTEY6OkFkZHIpID09IDgpIHsKKyAgICAvLyBwb3NpdGl2ZSBmb3IgdWludDY0X3QKKyAgICBFWFBFQ1RfRVEoMHgwZCwgcGFja2VkW25keCsrXSk7CisgIH0gZWxzZSB7CisgICAgLy8gbmVnYXRpdmUgZm9yIHVpbnQzMl90CisgICAgRVhQRUNUX0VRKDB4N2QsIHBhY2tlZFtuZHgrK10pOworICB9CisgIC8vIGdyb3VwIDEKKyAgRVhQRUNUX0VRKDB4MDMsIHBhY2tlZFtuZHgrK10pOyAvLyBzaXplCisgIEVYUEVDVF9FUSgweDBiLCBwYWNrZWRbbmR4KytdKTsgLy8gZmxhZ3MKKyAgRVhQRUNUX0VRKDB4MDQsIHBhY2tlZFtuZHgrK10pOyAvLyByX29mZnNldF9kZWx0YQorICBFWFBFQ1RfRVEoMHgwMSwgcGFja2VkW25keCsrXSk7IC8vIHJfaW5mbworICAvLyBncm91cCAxIC0gYWRkZW5kIDE6IDEwMDI0ID0gMHhhOCwgMHhjZSwgMHg4MAorICBFWFBFQ1RfRVEoMHhhOCwgcGFja2VkW25keCsrXSk7CisgIEVYUEVDVF9FUSgweGNlLCBwYWNrZWRbbmR4KytdKTsKKyAgRVhQRUNUX0VRKDB4MDAsIHBhY2tlZFtuZHgrK10pOworICAvLyBncm91cCAxIC0gYWRkZW5kIDI6IC0xMiA9IDB4NzQKKyAgRVhQRUNUX0VRKDB4NzQsIHBhY2tlZFtuZHgrK10pOworICAvLyBncm91cCAxIC0gYWRkZW5kIDM6ICsxMiA9IDB4MGMKKyAgRVhQRUNUX0VRKDB4MGMsIHBhY2tlZFtuZHgrK10pOworCisgIC8vIGdyb3VwIDIKKyAgRVhQRUNUX0VRKDB4MDMsIHBhY2tlZFtuZHgrK10pOyAvLyBzaXplCisgIEVYUEVDVF9FUSgweDBiLCBwYWNrZWRbbmR4KytdKTsgLy8gZmxhZ3MKKyAgRVhQRUNUX0VRKDB4MDgsIHBhY2tlZFtuZHgrK10pOyAvLyByX29mZnNldF9kZWx0YQorICBFWFBFQ1RfRVEoMHgwMSwgcGFja2VkW25keCsrXSk7IC8vIHJfaW5mbworCisgIC8vIGdyb3VwIDIgLSBhZGRlbmQgMTogLTI0ID0gMHg2OAorICBFWFBFQ1RfRVEoMHg2OCwgcGFja2VkW25keCsrXSk7CisgIC8vIGdyb3VwIDIgLSBhZGRlbmQgMjogLTI0ID0gMHg2OAorICBFWFBFQ1RfRVEoMHg2OCwgcGFja2VkW25keCsrXSk7CisgIC8vIGdyb3VwIDIgLSBhZGRlbmQgMzogLTI0ID0gMHg2OAorICBFWFBFQ1RfRVEoMHg2OCwgcGFja2VkW25keCsrXSk7CisKKyAgRVhQRUNUX0VRKG5keCwgcGFja2VkLnNpemUoKSk7Cit9CisKK1RFU1QoUGFja2VyLCBQYWNrV2l0aEFkZGVuZCkgeworICBEb1BhY2tXaXRoQWRkZW5kPEVMRjMyX3RyYWl0cz4oKTsKKyAgRG9QYWNrV2l0aEFkZGVuZDxFTEY2NF90cmFpdHM+KCk7Cit9CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBFTEY+CitzdGF0aWMgdm9pZCBEb1VucGFja1dpdGhBZGRlbmQoKSB7CisgIHN0ZDo6dmVjdG9yPHVpbnQ4X3Q+IHBhY2tlZDsKKyAgLy8gSWRlbnRpZmllci4KKyAgcGFja2VkLnB1c2hfYmFjaygnQScpOworICBwYWNrZWQucHVzaF9iYWNrKCdQJyk7CisgIHBhY2tlZC5wdXNoX2JhY2soJ1MnKTsKKyAgcGFja2VkLnB1c2hfYmFjaygnMicpOworICAvLyBSZWxvY2F0aW9uIGNvdW50CisgIHBhY2tlZC5wdXNoX2JhY2soNlUpOworICAvLyBiYXNlIHJlbG9jYXRpb24gPSAweGQxY2RmZmZjIC0+IGZjLCBmZiwgYjcsIDhlLCAwZAorICBwYWNrZWQucHVzaF9iYWNrKDB4ZmMpOworICBwYWNrZWQucHVzaF9iYWNrKDB4ZmYpOworICBwYWNrZWQucHVzaF9iYWNrKDB4YjcpOworICBwYWNrZWQucHVzaF9iYWNrKDB4OGUpOworICBpZiAoc2l6ZW9mKHR5cGVuYW1lIEVMRjo6QWRkcikgPT0gOCkgeworICAgIC8vIHBvc2l0aXZlIGZvciB1aW50NjRfdAorICAgIHBhY2tlZC5wdXNoX2JhY2soMHgwZCk7CisgIH0gZWxzZSB7CisgICAgLy8gbmVnYXRpdmUgZm9yIHVpbnQzMl90CisgICAgcGFja2VkLnB1c2hfYmFjaygweDdkKTsKKyAgfQorICAvLyBncm91cCAxCisgIHBhY2tlZC5wdXNoX2JhY2soMHgwMyk7IC8vIHNpemUKKyAgcGFja2VkLnB1c2hfYmFjaygweDBiKTsgLy8gZmxhZ3MKKyAgcGFja2VkLnB1c2hfYmFjaygweDA0KTsgLy8gcl9vZmZzZXRfZGVsdGEKKyAgcGFja2VkLnB1c2hfYmFjaygweDAxKTsgLy8gcl9pbmZvCisgIC8vIGdyb3VwIDEgLSBhZGRlbmQgMTogMTAwMjQgPSAweGE4LCAweGNlLCAweDgwCisgIHBhY2tlZC5wdXNoX2JhY2soMHhhOCk7CisgIHBhY2tlZC5wdXNoX2JhY2soMHhjZSk7CisgIHBhY2tlZC5wdXNoX2JhY2soMHgwMCk7CisgIC8vIGdyb3VwIDEgLSBhZGRlbmQgMjogLTEyID0gMHg3NAorICBwYWNrZWQucHVzaF9iYWNrKDB4NzQpOworICAvLyBncm91cCAxIC0gYWRkZW5kIDM6ICsxMiA9IDB4MGMKKyAgcGFja2VkLnB1c2hfYmFjaygweDBjKTsKKworICAvLyBncm91cCAyCisgIHBhY2tlZC5wdXNoX2JhY2soMHgwMyk7IC8vIHNpemUKKyAgcGFja2VkLnB1c2hfYmFjaygweDBiKTsgLy8gZmxhZ3MKKyAgcGFja2VkLnB1c2hfYmFjaygweDA4KTsgLy8gcl9vZmZzZXRfZGVsdGEKKyAgcGFja2VkLnB1c2hfYmFjaygweDAxKTsgLy8gcl9pbmZvCisKKyAgLy8gZ3JvdXAgMiAtIGFkZGVuZCAxOiAtMjQgPSAweDY4CisgIHBhY2tlZC5wdXNoX2JhY2soMHg2OCk7CisgIC8vIGdyb3VwIDIgLSBhZGRlbmQgMjogLTI0ID0gMHg2OAorICBwYWNrZWQucHVzaF9iYWNrKDB4NjgpOworICAvLyBncm91cCAyIC0gYWRkZW5kIDM6IC0yNCA9IDB4NjgKKyAgcGFja2VkLnB1c2hfYmFjaygweDY4KTsKKworICBzdGQ6OnZlY3Rvcjx0eXBlbmFtZSBFTEY6OlJlbGE+IHJlbG9jYXRpb25zOworCisgIFJlbG9jYXRpb25QYWNrZXI8RUxGPiBwYWNrZXI7CisKKyAgcmVsb2NhdGlvbnMuY2xlYXIoKTsKKyAgcGFja2VyLlVucGFja1JlbG9jYXRpb25zKHBhY2tlZCwgJnJlbG9jYXRpb25zKTsKKworICBFWFBFQ1RfRVEoNlUsIHJlbG9jYXRpb25zLnNpemUoKSk7CisgIHNpemVfdCBuZHggPSAwOworICAvLyBJbml0aWFsIHJlbG9jYXRpb24uCisgIEVYUEVDVF9UUlVFKENoZWNrUmVsb2NhdGlvbjxFTEY+KDB4ZDFjZTAwMDAsIDB4MDEsIDEwMDI0LCByZWxvY2F0aW9uc1tuZHgrK10pKTsKKyAgLy8gVHdvIG1vcmUgcmVsb2NhdGlvbnMsIDQgYnl0ZSBvZmZzZXQgZGVsdGFzLCAxMiBieXRlIGFkZGVuZCBkZWx0YXMuCisgIEVYUEVDVF9UUlVFKENoZWNrUmVsb2NhdGlvbjxFTEY+KDB4ZDFjZTAwMDQsIDB4MDEsIDEwMDEyLCByZWxvY2F0aW9uc1tuZHgrK10pKTsKKyAgRVhQRUNUX1RSVUUoQ2hlY2tSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAwOCwgMHgwMSwgMTAwMjQsIHJlbG9jYXRpb25zW25keCsrXSkpOworICAvLyBUaHJlZSBtb3JlIHJlbG9jYXRpb25zLCA4IGJ5dGUgb2Zmc2V0IGRlbHRhcywgLTI0IGJ5dGUgYWRkZW5kIGRlbHRhcy4KKyAgRVhQRUNUX1RSVUUoQ2hlY2tSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAxMCwgMHgwMSwgMTAwMDAsIHJlbG9jYXRpb25zW25keCsrXSkpOworICBFWFBFQ1RfVFJVRShDaGVja1JlbG9jYXRpb248RUxGPigweGQxY2UwMDE4LCAweDAxLCA5OTc2LCByZWxvY2F0aW9uc1tuZHgrK10pKTsKKyAgRVhQRUNUX1RSVUUoQ2hlY2tSZWxvY2F0aW9uPEVMRj4oMHhkMWNlMDAyMCwgMHgwMSwgOTk1MiwgcmVsb2NhdGlvbnNbbmR4KytdKSk7CisKKyAgRVhQRUNUX0VRKG5keCwgcmVsb2NhdGlvbnMuc2l6ZSgpKTsKK30KKworVEVTVChQYWNrZXIsIFVucGFja1dpdGhBZGRlbmQpIHsKKyAgRG9VbnBhY2tXaXRoQWRkZW5kPEVMRjMyX3RyYWl0cz4oKTsKKyAgRG9VbnBhY2tXaXRoQWRkZW5kPEVMRjY0X3RyYWl0cz4oKTsKK30KKworfSAgLy8gbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvc2xlYjEyOC5jYyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9zbGViMTI4LmNjCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEyYzIxZTMKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci9zcmMvc2xlYjEyOC5jYwpAQCAtMCwwICsxLDEzMSBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisjaW5jbHVkZSAic2xlYjEyOC5oIgorCisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8c3RkaW50Lmg+CisjaW5jbHVkZSA8dmVjdG9yPgorCisjaW5jbHVkZSAiZWxmX3RyYWl0cy5oIgorCituYW1lc3BhY2UgeworCit0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KK2NsYXNzIHVpbnRfdHJhaXRzIHt9OworCit0ZW1wbGF0ZSA8PgorY2xhc3MgdWludF90cmFpdHM8dWludDY0X3Q+IHsKKyBwdWJsaWM6CisgIHR5cGVkZWYgaW50NjRfdCBpbnRfdDsKK307CisKK3RlbXBsYXRlIDw+CitjbGFzcyB1aW50X3RyYWl0czx1aW50MzJfdD4geworIHB1YmxpYzoKKyAgdHlwZWRlZiBpbnQzMl90IGludF90OworfTsKKworfQorCituYW1lc3BhY2UgcmVsb2NhdGlvbl9wYWNrZXIgeworCisvLyBFbXB0eSBjb25zdHJ1Y3RvciBhbmQgZGVzdHJ1Y3RvciB0byBzaWxlbmNlIGNocm9taXVtLXN0eWxlLgordGVtcGxhdGUgPHR5cGVuYW1lIHVpbnRfdD4KK1NsZWIxMjhFbmNvZGVyPHVpbnRfdD46OlNsZWIxMjhFbmNvZGVyKCkgeyB9CisKK3RlbXBsYXRlIDx0eXBlbmFtZSB1aW50X3Q+CitTbGViMTI4RW5jb2Rlcjx1aW50X3Q+Ojp+U2xlYjEyOEVuY29kZXIoKSB7IH0KKworLy8gQWRkIGEgc2luZ2xlIHZhbHVlIHRvIHRoZSBlbmNvZGluZy4gIFZhbHVlcyBhcmUgZW5jb2RlZCB3aXRoIHZhcmlhYmxlCisvLyBsZW5ndGguICBUaGUgbGVhc3Qgc2lnbmlmaWNhbnQgNyBiaXRzIG9mIGVhY2ggYnl0ZSBob2xkIDcgYml0cyBvZiBkYXRhLAorLy8gYW5kIHRoZSBtb3N0IHNpZ25pZmljYW50IGJpdCBpcyBzZXQgb24gZWFjaCBieXRlIGV4Y2VwdCB0aGUgbGFzdC4gIFRoZQorLy8gdmFsdWUgaXMgc2lnbiBleHRlbmRlZCB1cCB0byBhIG11bHRpcGxlIG9mIDcgYml0cyAoZW5zdXJpbmcgdGhhdCB0aGUKKy8vIG1vc3Qgc2lnbmlmaWNhbnQgYml0IGlzIHplcm8gZm9yIGEgcG9zaXRpdmUgbnVtYmVyIGFuZCBvbmUgZm9yIGEKKy8vIG5lZ2F0aXZlIG51bWJlcikuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgdWludF90Pgordm9pZCBTbGViMTI4RW5jb2Rlcjx1aW50X3Q+OjpFbnF1ZXVlKHVpbnRfdCB2YWx1ZSkgeworICB0eXBlZGVmIHR5cGVuYW1lIHVpbnRfdHJhaXRzPHVpbnRfdD46OmludF90IGludF90OworICBzdGF0aWMgY29uc3Qgc2l6ZV90IHNpemUgPSBDSEFSX0JJVCAqIHNpemVvZih2YWx1ZSk7CisKKyAgYm9vbCBtb3JlID0gdHJ1ZTsKKyAgY29uc3QgYm9vbCBuZWdhdGl2ZSA9IHN0YXRpY19jYXN0PGludF90Pih2YWx1ZSkgPCAwOworCisgIHdoaWxlIChtb3JlKSB7CisgICAgdWludDhfdCBieXRlID0gdmFsdWUgJiAxMjc7CisgICAgdmFsdWUgPj49IDc7CisKKyAgICAvLyBTaWduIGV4dGVuZCBpZiBlbmNvZGluZyBhIC12ZSB2YWx1ZS4KKyAgICBpZiAobmVnYXRpdmUpCisgICAgICB2YWx1ZSB8PSAtKHN0YXRpY19jYXN0PHVpbnRfdD4oMSkgPDwgKHNpemUgLSA3KSk7CisKKyAgICAvLyBUaGUgc2lnbiBiaXQgb2YgYnl0ZSBpcyBzZWNvbmQgaGlnaCBvcmRlciBiaXQuCisgICAgY29uc3QgYm9vbCBzaWduX2JpdCA9IGJ5dGUgJiA2NDsKKyAgICBpZiAoKHZhbHVlID09IDAgJiYgIXNpZ25fYml0KSB8fCAodmFsdWUgPT0gc3RhdGljX2Nhc3Q8dWludF90PigtMSkgJiYgc2lnbl9iaXQpKQorICAgICAgbW9yZSA9IGZhbHNlOworICAgIGVsc2UKKyAgICAgIGJ5dGUgfD0gMTI4OworICAgIGVuY29kaW5nXy5wdXNoX2JhY2soYnl0ZSk7CisgIH0KK30KKworLy8gQWRkIGEgdmVjdG9yIG9mIHZhbHVlcyB0byB0aGUgZW5jb2RpbmcuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgdWludF90Pgordm9pZCBTbGViMTI4RW5jb2Rlcjx1aW50X3Q+OjpFbnF1ZXVlQWxsKGNvbnN0IHN0ZDo6dmVjdG9yPHVpbnRfdD4mIHZhbHVlcykgeworICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHZhbHVlcy5zaXplKCk7ICsraSkgeworICAgIEVucXVldWUodmFsdWVzW2ldKTsKKyAgfQorfQorCisvLyBDcmVhdGUgYSBuZXcgZGVjb2RlciBmb3IgdGhlIGdpdmVuIGVuY29kZWQgc3RyZWFtLgordGVtcGxhdGUgPHR5cGVuYW1lIHVpbnRfdD4KK1NsZWIxMjhEZWNvZGVyPHVpbnRfdD46OlNsZWIxMjhEZWNvZGVyKGNvbnN0IHN0ZDo6dmVjdG9yPHVpbnQ4X3Q+JiBlbmNvZGluZywgc2l6ZV90IHN0YXJ0X3dpdGgpIHsKKyAgZW5jb2RpbmdfID0gZW5jb2Rpbmc7CisgIGN1cnNvcl8gPSBzdGFydF93aXRoOworfQorCisvLyBFbXB0eSBkZXN0cnVjdG9yIHRvIHNpbGVuY2UgY2hyb21pdW0tc3R5bGUuCit0ZW1wbGF0ZSA8dHlwZW5hbWUgdWludF90PgorU2xlYjEyOERlY29kZXI8dWludF90Pjo6flNsZWIxMjhEZWNvZGVyKCkgeyB9CisKKy8vIERlY29kZSBhbmQgcmV0cmlldmUgYSBzaW5nbGUgdmFsdWUgZnJvbSB0aGUgZW5jb2RpbmcuICBDb25zdW1lIGJ5dGVzCisvLyB1bnRpbCBvbmUgd2l0aG91dCBpdHMgbW9zdCBzaWduaWZpY2FudCBiaXQgaXMgZm91bmQsIGFuZCByZS1mb3JtIHRoZQorLy8gdmFsdWUgZnJvbSB0aGUgNyBiaXQgZmllbGRzIG9mIHRoZSBieXRlcyBjb25zdW1lZC4KK3RlbXBsYXRlIDx0eXBlbmFtZSB1aW50X3Q+Cit1aW50X3QgU2xlYjEyOERlY29kZXI8dWludF90Pjo6RGVxdWV1ZSgpIHsKKyAgdWludF90IHZhbHVlID0gMDsKKyAgc3RhdGljIGNvbnN0IHNpemVfdCBzaXplID0gQ0hBUl9CSVQgKiBzaXplb2YodmFsdWUpOworCisgIHNpemVfdCBzaGlmdCA9IDA7CisgIHVpbnQ4X3QgYnl0ZTsKKworICAvLyBMb29wIHVudGlsIHdlIHJlYWNoIGEgYnl0ZSB3aXRoIGl0cyBoaWdoIG9yZGVyIGJpdCBjbGVhci4KKyAgZG8geworICAgIGJ5dGUgPSBlbmNvZGluZ19bY3Vyc29yXysrXTsKKyAgICB2YWx1ZSB8PSAoc3RhdGljX2Nhc3Q8dWludF90PihieXRlICYgMTI3KSA8PCBzaGlmdCk7CisgICAgc2hpZnQgKz0gNzsKKyAgfSB3aGlsZSAoYnl0ZSAmIDEyOCk7CisKKyAgLy8gVGhlIHNpZ24gYml0IGlzIHNlY29uZCBoaWdoIG9yZGVyIGJpdCBvZiB0aGUgZmluYWwgYnl0ZSBkZWNvZGVkLgorICAvLyBTaWduIGV4dGVuZCBpZiB2YWx1ZSBpcyAtdmUgYW5kIHdlIGRpZCBub3Qgc2hpZnQgYWxsIG9mIGl0LgorICBpZiAoc2hpZnQgPCBzaXplICYmIChieXRlICYgNjQpKQorICAgIHZhbHVlIHw9IC0oc3RhdGljX2Nhc3Q8dWludF90PigxKSA8PCBzaGlmdCk7CisKKyAgcmV0dXJuIHN0YXRpY19jYXN0PHVpbnRfdD4odmFsdWUpOworfQorCisvLyBEZWNvZGUgYW5kIHJldHJpZXZlIGFsbCByZW1haW5pbmcgdmFsdWVzIGZyb20gdGhlIGVuY29kaW5nLgordGVtcGxhdGUgPHR5cGVuYW1lIHVpbnRfdD4KK3ZvaWQgU2xlYjEyOERlY29kZXI8dWludF90Pjo6RGVxdWV1ZUFsbChzdGQ6OnZlY3Rvcjx1aW50X3Q+KiB2YWx1ZXMpIHsKKyAgd2hpbGUgKGN1cnNvcl8gPCBlbmNvZGluZ18uc2l6ZSgpKSB7CisgICAgdmFsdWVzLT5wdXNoX2JhY2soRGVxdWV1ZSgpKTsKKyAgfQorfQorCit0ZW1wbGF0ZSBjbGFzcyBTbGViMTI4RW5jb2Rlcjx1aW50MzJfdD47Cit0ZW1wbGF0ZSBjbGFzcyBTbGViMTI4RW5jb2Rlcjx1aW50NjRfdD47Cit0ZW1wbGF0ZSBjbGFzcyBTbGViMTI4RGVjb2Rlcjx1aW50MzJfdD47Cit0ZW1wbGF0ZSBjbGFzcyBTbGViMTI4RGVjb2Rlcjx1aW50NjRfdD47CisKK30gIC8vIG5hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlcgpkaWZmIC0tZ2l0IGEvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3NsZWIxMjguaCBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9zbGViMTI4LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2E2M2Y2NgotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9zbGViMTI4LmgKQEAgLTAsMCArMSw3NiBAQAorLy8gQ29weXJpZ2h0IDIwMTQgVGhlIENocm9taXVtIEF1dGhvcnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorCisvLyBTTEVCMTI4IGVuY29kZXIgYW5kIGRlY29kZXIgZm9yIHBhY2tlZCByZWxhdGl2ZSByZWxvY2F0aW9ucy4KKy8vCisvLyBQYWNrZWQgcmVsb2NhdGlvbnMgY29uc2lzdCBvZiBhIGxhcmdlIG51bWJlciBvZiByZWxhdGl2ZWx5IHNtYWxsCisvLyBpbnRlZ2VyIHZhbHVlcy4gIEVuY29kaW5nIHRoZXNlIGFzIExFQjEyOCBzYXZlcyBzcGFjZS4KKy8vCisvLyBGb3IgbW9yZSBvbiBMRUIxMjggc2VlIGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvTEVCMTI4LgorCisjaWZuZGVmIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19TTEVCMTI4X0hfCisjZGVmaW5lIFRPT0xTX1JFTE9DQVRJT05fUEFDS0VSX1NSQ19TTEVCMTI4X0hfCisKKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDx2ZWN0b3I+CisKKyNpbmNsdWRlICJlbGZfdHJhaXRzLmgiCisKK25hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlciB7CisKKy8vIEVuY29kZSBwYWNrZWQgd29yZHMgYXMgYSBzaWduZWQgTEVCMTI4IGJ5dGUgc3RyZWFtLgordGVtcGxhdGU8dHlwZW5hbWUgaW50X3Q+CitjbGFzcyBTbGViMTI4RW5jb2RlciB7CisgcHVibGljOgorICAvLyBFeHBsaWNpdCAoYnV0IGVtcHR5KSBjb25zdHJ1Y3RvciBhbmQgZGVzdHJ1Y3RvciwgZm9yIGNocm9taXVtLXN0eWxlLgorICBTbGViMTI4RW5jb2RlcigpOworICB+U2xlYjEyOEVuY29kZXIoKTsKKworICAvLyBBZGQgYSB2YWx1ZSB0byB0aGUgZW5jb2Rpbmcgc3RyZWFtLgorICAvLyB8dmFsdWV8IGlzIHRoZSBzaWduZWQgaW50IHRvIGFkZC4KKyAgdm9pZCBFbnF1ZXVlKGludF90IHZhbHVlKTsKKworICAvLyBBZGQgYSB2ZWN0b3Igb2YgdmFsdWVzIHRvIHRoZSBlbmNvZGluZyBzdHJlYW0uCisgIC8vIHx2YWx1ZXN8IGlzIHRoZSB2ZWN0b3Igb2Ygc2lnbmVkIGludHMgdG8gYWRkLgorICB2b2lkIEVucXVldWVBbGwoY29uc3Qgc3RkOjp2ZWN0b3I8aW50X3Q+JiB2YWx1ZXMpOworCisgIC8vIFJldHJpZXZlIHRoZSBlbmNvZGVkIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB2YWx1ZXMuCisgIC8vIHxlbmNvZGluZ3wgaXMgdGhlIHJldHVybmVkIHZlY3RvciBvZiBlbmNvZGVkIGRhdGEuCisgIHZvaWQgR2V0RW5jb2Rpbmcoc3RkOjp2ZWN0b3I8dWludDhfdD4qIGVuY29kaW5nKSB7ICplbmNvZGluZyA9IGVuY29kaW5nXzsgfQorCisgcHJpdmF0ZToKKyAgLy8gR3Jvd2FibGUgdmVjdG9yIGhvbGRpbmcgdGhlIGVuY29kZWQgTEVCMTI4IHN0cmVhbS4KKyAgc3RkOjp2ZWN0b3I8dWludDhfdD4gZW5jb2RpbmdfOworfTsKKworLy8gRGVjb2RlIGEgTEVCMTI4IGJ5dGUgc3RyZWFtIHRvIHByb2R1Y2UgcGFja2VkIHdvcmRzLgordGVtcGxhdGUgPHR5cGVuYW1lIGludF90PgorY2xhc3MgU2xlYjEyOERlY29kZXIgeworIHB1YmxpYzoKKyAgLy8gQ3JlYXRlIGEgbmV3IGRlY29kZXIgZm9yIHRoZSBnaXZlbiBlbmNvZGVkIHN0cmVhbS4KKyAgLy8gfGVuY29kaW5nfCBpcyB0aGUgdmVjdG9yIG9mIGVuY29kZWQgZGF0YS4KKyAgZXhwbGljaXQgU2xlYjEyOERlY29kZXIoY29uc3Qgc3RkOjp2ZWN0b3I8dWludDhfdD4mIGVuY29kaW5nLCBzaXplX3Qgc3RhcnRfd2l0aCk7CisKKyAgLy8gRXhwbGljaXQgKGJ1dCBlbXB0eSkgZGVzdHJ1Y3RvciwgZm9yIGNocm9taXVtLXN0eWxlLgorICB+U2xlYjEyOERlY29kZXIoKTsKKworICAvLyBSZXRyaWV2ZSB0aGUgbmV4dCB2YWx1ZSBmcm9tIHRoZSBlbmNvZGVkIHN0cmVhbS4KKyAgaW50X3QgRGVxdWV1ZSgpOworCisgIC8vIFJldHJpZXZlIGFsbCByZW1haW5pbmcgdmFsdWVzIGZyb20gdGhlIGVuY29kZWQgc3RyZWFtLgorICAvLyB8dmFsdWVzfCBpcyB0aGUgdmVjdG9yIG9mIGRlY29kZWQgZGF0YS4KKyAgdm9pZCBEZXF1ZXVlQWxsKHN0ZDo6dmVjdG9yPGludF90PiogdmFsdWVzKTsKKworIHByaXZhdGU6CisgIC8vIEVuY29kZWQgTEVCMTI4IHN0cmVhbS4KKyAgc3RkOjp2ZWN0b3I8dWludDhfdD4gZW5jb2RpbmdfOworCisgIC8vIEN1cnNvciBpbmRpY2F0aW5nIHRoZSBjdXJyZW50IHN0cmVhbSByZXRyaWV2YWwgcG9pbnQuCisgIHNpemVfdCBjdXJzb3JfOworfTsKKworfSAgLy8gbmFtZXNwYWNlIHJlbG9jYXRpb25fcGFja2VyCisKKyNlbmRpZiAgLy8gVE9PTFNfUkVMT0NBVElPTl9QQUNLRVJfU1JDX1NMRUIxMjhfSF8KZGlmZiAtLWdpdCBhL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9zbGViMTI4X3VuaXR0ZXN0LmNjIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvc3JjL3NsZWIxMjhfdW5pdHRlc3QuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDlhNTUzYwotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3NyYy9zbGViMTI4X3VuaXR0ZXN0LmNjCkBAIC0wLDAgKzEsMTY2IEBACisvLyBDb3B5cmlnaHQgMjAxNCBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKyNpbmNsdWRlICJzbGViMTI4LmgiCisKKyNpbmNsdWRlIDx2ZWN0b3I+CisjaW5jbHVkZSAiZWxmX3RyYWl0cy5oIgorI2luY2x1ZGUgImd0ZXN0L2d0ZXN0LmgiCisKK25hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlciB7CisKK1RFU1QoU2xlYjEyOCwgRW5jb2RlcjY0KSB7CisgIHN0ZDo6dmVjdG9yPHVpbnQ2NF90PiB2YWx1ZXM7CisgIHZhbHVlcy5wdXNoX2JhY2soNjI0NDg1VSk7CisgIHZhbHVlcy5wdXNoX2JhY2soMFUpOworICB2YWx1ZXMucHVzaF9iYWNrKDFVKTsKKyAgdmFsdWVzLnB1c2hfYmFjayg2M1UpOworICB2YWx1ZXMucHVzaF9iYWNrKDY0VSk7CisgIHZhbHVlcy5wdXNoX2JhY2soc3RhdGljX2Nhc3Q8dWludDY0X3Q+KC0xKSk7CisgIHZhbHVlcy5wdXNoX2JhY2soc3RhdGljX2Nhc3Q8dWludDY0X3Q+KC02MjQ0ODUpKTsKKworICBTbGViMTI4RW5jb2Rlcjx1aW50NjRfdD4gZW5jb2RlcjsKKyAgZW5jb2Rlci5FbnF1ZXVlQWxsKHZhbHVlcyk7CisKKyAgZW5jb2Rlci5FbnF1ZXVlKDIxNDc0ODM2NDdVKTsKKyAgZW5jb2Rlci5FbnF1ZXVlKHN0YXRpY19jYXN0PHVpbnQ2NF90PigtMjE0NzQ4MzY0OCkpOworICBlbmNvZGVyLkVucXVldWUoOTIyMzM3MjAzNjg1NDc3NTgwN1VMTCk7CisgIGVuY29kZXIuRW5xdWV1ZShzdGF0aWNfY2FzdDx1aW50NjRfdD4oLTkyMjMzNzIwMzY4NTQ3NzU4MDdMTCAtIDEpKTsKKworICBzdGQ6OnZlY3Rvcjx1aW50OF90PiBlbmNvZGluZzsKKyAgZW5jb2Rlci5HZXRFbmNvZGluZygmZW5jb2RpbmcpOworCisgIEVYUEVDVF9FUSg0MnUsIGVuY29kaW5nLnNpemUoKSk7CisgIC8vIDYyNDQ4NQorICBFWFBFQ1RfRVEoMHhlNSwgZW5jb2RpbmdbMF0pOworICBFWFBFQ1RfRVEoMHg4ZSwgZW5jb2RpbmdbMV0pOworICBFWFBFQ1RfRVEoMHgyNiwgZW5jb2RpbmdbMl0pOworICAvLyAwCisgIEVYUEVDVF9FUSgweDAwLCBlbmNvZGluZ1szXSk7CisgIC8vIDEKKyAgRVhQRUNUX0VRKDB4MDEsIGVuY29kaW5nWzRdKTsKKyAgLy8gNjMKKyAgRVhQRUNUX0VRKDB4M2YsIGVuY29kaW5nWzVdKTsKKyAgLy8gNjQKKyAgRVhQRUNUX0VRKDB4YzAsIGVuY29kaW5nWzZdKTsKKyAgRVhQRUNUX0VRKDB4MDAsIGVuY29kaW5nWzddKTsKKyAgLy8gLTEKKyAgRVhQRUNUX0VRKDB4N2YsIGVuY29kaW5nWzhdKTsKKyAgLy8gLTYyNDQ4NQorICBFWFBFQ1RfRVEoMHg5YiwgZW5jb2RpbmdbOV0pOworICBFWFBFQ1RfRVEoMHhmMSwgZW5jb2RpbmdbMTBdKTsKKyAgRVhQRUNUX0VRKDB4NTksIGVuY29kaW5nWzExXSk7CisgIC8vIDIxNDc0ODM2NDcKKyAgRVhQRUNUX0VRKDB4ZmYsIGVuY29kaW5nWzEyXSk7CisgIEVYUEVDVF9FUSgweGZmLCBlbmNvZGluZ1sxM10pOworICBFWFBFQ1RfRVEoMHhmZiwgZW5jb2RpbmdbMTRdKTsKKyAgRVhQRUNUX0VRKDB4ZmYsIGVuY29kaW5nWzE1XSk7CisgIEVYUEVDVF9FUSgweDA3LCBlbmNvZGluZ1sxNl0pOworICAvLyAtMjE0NzQ4MzY0OAorICBFWFBFQ1RfRVEoMHg4MCwgZW5jb2RpbmdbMTddKTsKKyAgRVhQRUNUX0VRKDB4ODAsIGVuY29kaW5nWzE4XSk7CisgIEVYUEVDVF9FUSgweDgwLCBlbmNvZGluZ1sxOV0pOworICBFWFBFQ1RfRVEoMHg4MCwgZW5jb2RpbmdbMjBdKTsKKyAgRVhQRUNUX0VRKDB4NzgsIGVuY29kaW5nWzIxXSk7CisgIC8vIDkyMjMzNzIwMzY4NTQ3NzU4MDcKKyAgRVhQRUNUX0VRKDB4ZmYsIGVuY29kaW5nWzIyXSk7CisgIEVYUEVDVF9FUSgweGZmLCBlbmNvZGluZ1syM10pOworICBFWFBFQ1RfRVEoMHhmZiwgZW5jb2RpbmdbMjRdKTsKKyAgRVhQRUNUX0VRKDB4ZmYsIGVuY29kaW5nWzI1XSk7CisgIEVYUEVDVF9FUSgweGZmLCBlbmNvZGluZ1syNl0pOworICBFWFBFQ1RfRVEoMHhmZiwgZW5jb2RpbmdbMjddKTsKKyAgRVhQRUNUX0VRKDB4ZmYsIGVuY29kaW5nWzI4XSk7CisgIEVYUEVDVF9FUSgweGZmLCBlbmNvZGluZ1syOV0pOworICBFWFBFQ1RfRVEoMHhmZiwgZW5jb2RpbmdbMzBdKTsKKyAgRVhQRUNUX0VRKDB4MDAsIGVuY29kaW5nWzMxXSk7CisgIC8vIC05MjIzMzcyMDM2ODU0Nzc1ODA4CisgIEVYUEVDVF9FUSgweDgwLCBlbmNvZGluZ1szMl0pOworICBFWFBFQ1RfRVEoMHg4MCwgZW5jb2RpbmdbMzNdKTsKKyAgRVhQRUNUX0VRKDB4ODAsIGVuY29kaW5nWzM0XSk7CisgIEVYUEVDVF9FUSgweDgwLCBlbmNvZGluZ1szNV0pOworICBFWFBFQ1RfRVEoMHg4MCwgZW5jb2RpbmdbMzZdKTsKKyAgRVhQRUNUX0VRKDB4ODAsIGVuY29kaW5nWzM3XSk7CisgIEVYUEVDVF9FUSgweDgwLCBlbmNvZGluZ1szOF0pOworICBFWFBFQ1RfRVEoMHg4MCwgZW5jb2RpbmdbMzldKTsKKyAgRVhQRUNUX0VRKDB4ODAsIGVuY29kaW5nWzQwXSk7CisgIEVYUEVDVF9FUSgweDdmLCBlbmNvZGluZ1s0MV0pOworfQorCitURVNUKFNsZWIxMjgsIERlY29kZXIpIHsKKyAgc3RkOjp2ZWN0b3I8dWludDhfdD4gZW5jb2Rpbmc7CisgIC8vIDYyNDQ4NQorICBlbmNvZGluZy5wdXNoX2JhY2soMHhlNSk7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDhlKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4MjYpOworICAvLyAwCisgIGVuY29kaW5nLnB1c2hfYmFjaygweDAwKTsKKyAgLy8gMQorICBlbmNvZGluZy5wdXNoX2JhY2soMHgwMSk7CisgIC8vIDYzCisgIGVuY29kaW5nLnB1c2hfYmFjaygweDNmKTsKKyAgLy8gNjQKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4YzApOworICBlbmNvZGluZy5wdXNoX2JhY2soMHgwMCk7CisgIC8vIC0xCisgIGVuY29kaW5nLnB1c2hfYmFjaygweDdmKTsKKyAgLy8gLTYyNDQ4NQorICBlbmNvZGluZy5wdXNoX2JhY2soMHg5Yik7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweGYxKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4NTkpOworICAvLyAyMTQ3NDgzNjQ3CisgIGVuY29kaW5nLnB1c2hfYmFjaygweGZmKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ZmYpOworICBlbmNvZGluZy5wdXNoX2JhY2soMHhmZik7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweGZmKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4MDcpOworICAvLyAtMjE0NzQ4MzY0OAorICBlbmNvZGluZy5wdXNoX2JhY2soMHg4MCk7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDgwKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ODApOworICBlbmNvZGluZy5wdXNoX2JhY2soMHg4MCk7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDc4KTsKKyAgLy8gOTIyMzM3MjAzNjg1NDc3NTgwNworICBlbmNvZGluZy5wdXNoX2JhY2soMHhmZik7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweGZmKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ZmYpOworICBlbmNvZGluZy5wdXNoX2JhY2soMHhmZik7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweGZmKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ZmYpOworICBlbmNvZGluZy5wdXNoX2JhY2soMHhmZik7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweGZmKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ZmYpOworICBlbmNvZGluZy5wdXNoX2JhY2soMHgwMCk7CisgIC8vIC05MjIzMzcyMDM2ODU0Nzc1ODA4CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDgwKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ODApOworICBlbmNvZGluZy5wdXNoX2JhY2soMHg4MCk7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDgwKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ODApOworICBlbmNvZGluZy5wdXNoX2JhY2soMHg4MCk7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDgwKTsKKyAgZW5jb2RpbmcucHVzaF9iYWNrKDB4ODApOworICBlbmNvZGluZy5wdXNoX2JhY2soMHg4MCk7CisgIGVuY29kaW5nLnB1c2hfYmFjaygweDdmKTsKKworICBTbGViMTI4RGVjb2Rlcjx1aW50NjRfdD4gZGVjb2RlcihlbmNvZGluZywgMCk7CisKKyAgRVhQRUNUX0VRKDYyNDQ4NVUsIGRlY29kZXIuRGVxdWV1ZSgpKTsKKworICBzdGQ6OnZlY3Rvcjx1aW50NjRfdD4gZGVxdWV1ZWQ7CisgIGRlY29kZXIuRGVxdWV1ZUFsbCgmZGVxdWV1ZWQpOworCisgIEVYUEVDVF9FUSgxMFUsIGRlcXVldWVkLnNpemUoKSk7CisgIEVYUEVDVF9FUSgwVSwgZGVxdWV1ZWRbMF0pOworICBFWFBFQ1RfRVEoMVUsIGRlcXVldWVkWzFdKTsKKyAgRVhQRUNUX0VRKDYzVSwgZGVxdWV1ZWRbMl0pOworICBFWFBFQ1RfRVEoNjRVLCBkZXF1ZXVlZFszXSk7CisgIEVYUEVDVF9FUShzdGF0aWNfY2FzdDx1aW50NjRfdD4oLTEpLCBkZXF1ZXVlZFs0XSk7CisgIEVYUEVDVF9FUShzdGF0aWNfY2FzdDx1aW50NjRfdD4oLTYyNDQ4NSksIGRlcXVldWVkWzVdKTsKKyAgRVhQRUNUX0VRKDIxNDc0ODM2NDdVLCBkZXF1ZXVlZFs2XSk7CisgIEVYUEVDVF9FUShzdGF0aWNfY2FzdDx1aW50NjRfdD4oLTIxNDc0ODM2NDgpLCBkZXF1ZXVlZFs3XSk7CisgIEVYUEVDVF9FUSg5MjIzMzcyMDM2ODU0Nzc1ODA3VUxMLCBkZXF1ZXVlZFs4XSk7CisgIEVYUEVDVF9FUShzdGF0aWNfY2FzdDx1aW50NjRfdD4oLTkyMjMzNzIwMzY4NTQ3NzU4MDdMTCAtIDEpLCBkZXF1ZXVlZFs5XSk7Cit9CisKK30gIC8vIG5hbWVzcGFjZSByZWxvY2F0aW9uX3BhY2tlcgpkaWZmIC0tZ2l0IGEvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvdGVzdF9kYXRhL2VsZl9maWxlX3VuaXR0ZXN0X3JlbG9jcy5jYyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3Rlc3RfZGF0YS9lbGZfZmlsZV91bml0dGVzdF9yZWxvY3MuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWUxZmE3NAotLS0gL2Rldi9udWxsCisrKyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3Rlc3RfZGF0YS9lbGZfZmlsZV91bml0dGVzdF9yZWxvY3MuY2MKQEAgLTAsMCArMSwxMDE0IEBACisvLyBDb3B5cmlnaHQgMjAxNCBUaGUgQ2hyb21pdW0gQXV0aG9ycy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisKKy8vIFRlc3QgZGF0YSBmb3IgcGFja2luZy91bnBhY2tpbmcuICBXaGVuIGNvbXBpbGVkLCBjcmVhdGVzIGEgcnVuIG9mCisvLyByZWxhdGl2ZSByZWxvY2F0aW9ucy4KKy8vCisvLyBTZWUgZ2VuZXJhdGVfZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzLnNoIGZvciBpbnN0cnVjdGlvbnMgb24gaG93IHRvIGJ1aWxkCisvLyB1bml0IHRlc3QgZGF0YSBmcm9tIHRoaXMgc291cmNlIGZpbGUuCisKK2NvbnN0IGludCBpID0gMDsKKworLy8gR2VuZXJhdG9yOgorLy8gcHl0aG9uIC1jICdmb3IgaSBpbiB4cmFuZ2UoMCwxMDAwKTpwcmludCJjb25zdCB2b2lkKiBwb2ludGVyXyVkID0gJmk7IiVpJworY29uc3Qgdm9pZCogcG9pbnRlcl8wID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzExID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzczID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEwMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMDEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTAyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEwMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMDQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTA1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEwNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMDcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTA4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEwOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTExID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzExMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTE0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzExNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTE3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzExOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTIwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEyMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTIzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEyNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTI2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEyNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTI5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEzMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTMyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEzMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTM1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEzNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xMzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTM4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzEzOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNDAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTQxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE0MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNDMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTQ0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE0NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNDYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTQ3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE0OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNDkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTUwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE1MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTUzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE1NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTU2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE1NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTU5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE2MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTYyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE2MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTY1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE2NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTY4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE2OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTcxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE3MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTc0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE3NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTc3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE3OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xNzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTgwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE4MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xODIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTgzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE4NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xODUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTg2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE4NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xODggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTg5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE5MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xOTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTkyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE5MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xOTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTk1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE5NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8xOTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMTk4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzE5OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMDAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjAxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIwMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMDMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjA0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIwNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMDYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjA3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIwOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMDkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjEwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIxMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjEzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIxNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjE2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIxNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjE5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIyMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjIyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIyMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjI1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIyNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjI4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIyOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjMxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIzMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjM0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIzNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjM3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzIzOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yMzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjQwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI0MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNDIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjQzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI0NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNDUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjQ2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI0NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNDggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjQ5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI1MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjUyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI1MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjU1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI1NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjU4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI1OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjYxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI2MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjY0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI2NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjY3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI2OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjcwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI3MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjczID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI3NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjc2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI3NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yNzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjc5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI4MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yODEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjgyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI4MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yODQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjg1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI4NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yODcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjg4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI4OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yOTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjkxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI5MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yOTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjk0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI5NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yOTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMjk3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzI5OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8yOTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzAwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMwMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMDIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzAzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMwNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMDUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzA2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMwNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMDggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzA5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMxMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzEyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMxMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzE1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMxNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzE4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMxOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzIxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMyMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzI0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMyNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzI3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMyOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzMwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMzMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzMzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMzNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzM2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzMzNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zMzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzM5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM0MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNDEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzQyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM0MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNDQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzQ1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM0NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNDcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzQ4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM0OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzUxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM1MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzU0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM1NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzU3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM1OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzYwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM2MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzYzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM2NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzY2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM2NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzY5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM3MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzcyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM3MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzc1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM3NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zNzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzc4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM3OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zODAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzgxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM4MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zODMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzg0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM4NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zODYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzg3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM4OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zODkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzkwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM5MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zOTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzkzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM5NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zOTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzk2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzM5NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl8zOTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfMzk5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQwMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MDEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDAyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQwMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MDQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDA1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQwNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MDcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDA4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQwOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDExID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQxMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDE0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQxNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDE3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQxOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDIwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQyMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDIzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQyNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDI2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQyNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDI5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQzMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDMyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQzMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDM1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQzNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80MzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDM4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQzOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NDAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDQxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ0MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NDMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDQ0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ0NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NDYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDQ3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ0OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NDkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDUwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ1MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDUzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ1NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDU2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ1NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDU5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ2MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDYyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ2MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDY1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ2NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDY4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ2OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDcxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ3MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDc0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ3NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDc3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ3OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80NzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDgwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ4MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80ODIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDgzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ4NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80ODUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDg2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ4NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80ODggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDg5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ5MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80OTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDkyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ5MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80OTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDk1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ5NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl80OTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNDk4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzQ5OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MDAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTAxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUwMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MDMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTA0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUwNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MDYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTA3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUwOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MDkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTEwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUxMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTEzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUxNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTE2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUxNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTE5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUyMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTIyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUyMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTI1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUyNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTI4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUyOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTMxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUzMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTM0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUzNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTM3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzUzOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81MzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTQwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU0MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NDIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTQzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU0NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NDUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTQ2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU0NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NDggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTQ5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU1MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTUyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU1MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTU1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU1NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTU4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU1OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTYxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU2MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTY0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU2NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTY3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU2OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTcwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU3MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTczID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU3NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTc2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU3NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81NzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTc5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU4MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81ODEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTgyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU4MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81ODQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTg1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU4NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81ODcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTg4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU4OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81OTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTkxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU5MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81OTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTk0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU5NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81OTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNTk3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzU5OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl81OTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjAwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYwMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MDIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjAzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYwNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MDUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjA2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYwNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MDggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjA5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYxMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjEyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYxMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjE1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYxNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjE4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYxOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjIxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYyMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjI0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYyNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjI3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYyOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjMwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYzMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjMzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYzNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjM2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzYzNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82MzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjM5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY0MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NDEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjQyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY0MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NDQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjQ1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY0NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NDcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjQ4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY0OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjUxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY1MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjU0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY1NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjU3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY1OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjYwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY2MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjYzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY2NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjY2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY2NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjY5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY3MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjcyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY3MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjc1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY3NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82NzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjc4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY3OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82ODAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjgxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY4MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82ODMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjg0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY4NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82ODYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjg3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY4OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82ODkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjkwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY5MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82OTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjkzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY5NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82OTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjk2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzY5NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl82OTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNjk5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcwMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MDEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzAyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcwMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MDQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzA1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcwNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MDcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzA4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcwOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzExID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcxMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzE0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcxNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzE3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcxOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzIwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcyMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzIzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcyNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzI2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzcyNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzI5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzczMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzMyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzczMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzM1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzczNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83MzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzM4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzczOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NDAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzQxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc0MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NDMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzQ0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc0NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NDYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzQ3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc0OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NDkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzUwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc1MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzUzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc1NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzU2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc1NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzU5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc2MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzYyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc2MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzY1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc2NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzY4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc2OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzcxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc3MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzc0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc3NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzc3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc3OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83NzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzgwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc4MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83ODIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzgzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc4NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83ODUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzg2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc4NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83ODggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzg5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc5MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83OTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzkyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc5MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83OTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzk1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc5NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl83OTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfNzk4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzc5OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MDAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODAxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgwMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MDMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODA0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgwNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MDYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODA3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgwOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MDkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODEwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgxMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODEzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgxNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODE2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgxNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODE5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgyMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MjEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODIyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgyMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MjQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODI1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgyNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MjcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODI4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgyOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MzAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODMxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgzMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MzMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODM0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgzNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MzYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODM3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzgzOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84MzkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODQwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg0MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NDIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODQzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg0NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NDUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODQ2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg0NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NDggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODQ5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg1MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODUyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg1MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODU1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg1NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODU4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg1OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODYxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg2MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODY0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg2NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODY3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg2OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODcwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg3MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODczID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg3NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODc2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg3NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84NzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODc5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg4MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84ODEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODgyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg4MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84ODQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODg1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg4NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84ODcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODg4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg4OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84OTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODkxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg5MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84OTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODk0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg5NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84OTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfODk3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzg5OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl84OTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTAwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkwMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MDIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTAzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkwNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MDUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTA2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkwNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MDggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTA5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkxMCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MTEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTEyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkxMyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MTQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTE1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkxNiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MTcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTE4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkxOSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MjAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTIxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkyMiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MjMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTI0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkyNSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MjYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTI3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkyOCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MjkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTMwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkzMSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MzIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTMzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkzNCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MzUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTM2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzkzNyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85MzggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTM5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk0MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NDEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTQyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk0MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NDQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTQ1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk0NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NDcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTQ4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk0OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NTAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTUxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk1MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NTMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTU0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk1NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NTYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTU3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk1OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NTkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTYwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk2MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NjIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTYzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk2NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NjUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTY2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk2NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NjggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTY5ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk3MCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NzEgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTcyID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk3MyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NzQgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTc1ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk3NiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85NzcgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTc4ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk3OSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85ODAgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTgxID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk4MiA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85ODMgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTg0ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk4NSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85ODYgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTg3ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk4OCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85ODkgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTkwID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk5MSA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85OTIgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTkzID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk5NCA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85OTUgPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTk2ID0gJmk7Citjb25zdCB2b2lkKiBwb2ludGVyXzk5NyA9ICZpOworY29uc3Qgdm9pZCogcG9pbnRlcl85OTggPSAmaTsKK2NvbnN0IHZvaWQqIHBvaW50ZXJfOTk5ID0gJmk7CmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci90ZXN0X2RhdGEvZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTMyLnNvIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvdGVzdF9kYXRhL2VsZl9maWxlX3VuaXR0ZXN0X3JlbG9jc19hcm0zMi5zbwpuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi42Y2U2ZDBjCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvdGVzdF9kYXRhL2VsZl9maWxlX3VuaXR0ZXN0X3JlbG9jc19hcm0zMi5zbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci90ZXN0X2RhdGEvZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTMyX3BhY2tlZC5zbyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3Rlc3RfZGF0YS9lbGZfZmlsZV91bml0dGVzdF9yZWxvY3NfYXJtMzJfcGFja2VkLnNvCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjZhYzJlZWYKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci90ZXN0X2RhdGEvZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTMyX3BhY2tlZC5zbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci90ZXN0X2RhdGEvZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTY0LnNvIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvdGVzdF9kYXRhL2VsZl9maWxlX3VuaXR0ZXN0X3JlbG9jc19hcm02NC5zbwpuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi45NDViNDUwCi0tLSAvZGV2L251bGwKKysrIGIvdG9vbHMvcmVsb2NhdGlvbl9wYWNrZXIvdGVzdF9kYXRhL2VsZl9maWxlX3VuaXR0ZXN0X3JlbG9jc19hcm02NC5zbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS90b29scy9yZWxvY2F0aW9uX3BhY2tlci90ZXN0X2RhdGEvZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTY0X3BhY2tlZC5zbyBiL3Rvb2xzL3JlbG9jYXRpb25fcGFja2VyL3Rlc3RfZGF0YS9lbGZfZmlsZV91bml0dGVzdF9yZWxvY3NfYXJtNjRfcGFja2VkLnNvCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLmVkODVjZTEKLS0tIC9kZXYvbnVsbAorKysgYi90b29scy9yZWxvY2F0aW9uX3BhY2tlci90ZXN0X2RhdGEvZWxmX2ZpbGVfdW5pdHRlc3RfcmVsb2NzX2FybTY0X3BhY2tlZC5zbwpCaW5hcnkgZmlsZXMgZGlmZmVyCg==